From c26105b6843b76d6e8657856a12ac6262e63c86d Mon Sep 17 00:00:00 2001 From: chenpei Date: Sun, 24 Aug 2025 11:16:01 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9D=E5=A7=8B=E6=8F=90=E4=BA=A4=EF=BC=9AJm?= =?UTF-8?q?alCloud=E5=85=AC=E5=85=B1=E7=A9=BA=E9=97=B4=E7=89=88=E6=94=B9?= =?UTF-8?q?=E9=80=A0=E5=AE=8C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 改造为公共空间模式,所有用户共享文件 - 移除用户文件隔离机制 - 保持前端API兼容性 - 更新配置文件和文档 - 创建完整启动脚本工具链 --- .env-example | 9 + .github/release-drafter.yml | 39 + .github/workflows/build.yml | 59 + .github/workflows/build_jdk_ffmpeg.yml | 48 + .github/workflows/build_jmalcloud_base.yml | 38 + .github/workflows/merge-manifests.yml | 41 + .github/workflows/pushAliyun.yml | 86 + .github/workflows/release-drafter.yml | 18 + .github/workflows/test-build.yml | 59 + .github/workflows/test-native-build.yml | 66 + .gitignore | 39 + Dockerfile | 51 + LICENSE | 21 + README.md | 134 + docker-compose.base-aliyun-beijing.yml | 51 + docker-compose.base-aliyun-guangzhou.yml | 51 + docker-compose.base.proxy.yml | 51 + docker-compose.base.yml | 57 + docker-compose.example.yml | 44 + docker-entrypoint.sh | 37 + jc.sh | 335 + pom.xml | 475 + release-www.sh | 25 + .../jmal/clouddisk/JmalCloudApplication.java | 34 + .../clouddisk/acpect/LogOperatingAspect.java | 108 + .../clouddisk/acpect/PermissionAspect.java | 87 + .../clouddisk/annotation/AnnoManageUtil.java | 58 + .../clouddisk/annotation/LogOperatingFun.java | 25 + .../clouddisk/annotation/OperationType.java | 26 + .../jmal/clouddisk/annotation/Permission.java | 26 + .../clouddisk/config/EncryptionConfig.java | 27 + .../config/EncryptionKeyProvider.java | 130 + .../jmal/clouddisk/config/ErrorConfig.java | 22 + .../jmal/clouddisk/config/FileProperties.java | 208 + .../clouddisk/config/GlobalCorsConfig.java | 13 + .../jmal/clouddisk/config/JacksonConfig.java | 33 + .../clouddisk/config/MongoClientConfig.java | 68 + ...mcatServletWebServerFactoryCustomizer.java | 26 + .../com/jmal/clouddisk/config/TotpConfig.java | 48 + .../com/jmal/clouddisk/config/WebConfig.java | 103 + .../com/jmal/clouddisk/config/WebFilter.java | 35 + .../config/YamlPropertyLoaderFactory.java | 36 + .../controller/ArticlesController.java | 436 + .../controller/FileViewController.java | 54 + .../controller/record/LoginResponse.java | 3 + .../controller/record/MfaSetupResponse.java | 3 + .../controller/record/MfaVerifyRequest.java | 3 + .../controller/rest/AuthController.java | 79 + .../controller/rest/CategoryController.java | 96 + .../rest/CloudSettingController.java | 207 + .../controller/rest/DirectLinkController.java | 45 + .../controller/rest/FileController.java | 490 + .../rest/FileVersionController.java | 100 + .../rest/HealthCheckController.java | 18 + .../controller/rest/LogController.java | 41 + .../rest/LuceneSearchController.java | 56 + .../controller/rest/MarkDownController.java | 136 + .../controller/rest/MenuController.java | 96 + .../controller/rest/MfaController.java | 82 + .../controller/rest/OcrController.java | 39 + .../controller/rest/RoleController.java | 71 + .../controller/rest/ShareController.java | 309 + .../controller/rest/TagController.java | 89 + .../controller/rest/UserController.java | 104 + .../rest/UserSettingController.java | 57 + .../controller/rest/VideoController.java | 79 + .../rest/WebsiteSettingController.java | 61 + .../clouddisk/controller/sse/Message.java | 13 + .../controller/sse/SseController.java | 179 + .../clouddisk/exception/CheckedFunction.java | 7 + .../clouddisk/exception/CommonException.java | 56 + .../exception/CommonExceptionHandler.java | 100 + .../com/jmal/clouddisk/exception/Either.java | 70 + .../clouddisk/exception/ExceptionType.java | 142 + .../jmal/clouddisk/ftp/FTPServerConfig.java | 57 + .../ftp/MyPropertiesUserManager.java | 476 + .../interceptor/AuthInterceptor.java | 339 + .../interceptor/DirectFileInterceptor.java | 74 + .../interceptor/FileInterceptor.java | 481 + .../HeaderLocaleChangeInterceptor.java | 25 + .../interceptor/PreFileInterceptor.java | 123 + .../interceptor/ShareFileInterceptor.java | 113 + .../jmal/clouddisk/listener/FileListener.java | 345 + .../jmal/clouddisk/listener/FileMonitor.java | 227 + .../jmal/clouddisk/lucene/EtagService.java | 553 + .../jmal/clouddisk/lucene/IndexStatus.java | 29 + .../jmal/clouddisk/lucene/LuceneConfig.java | 192 + .../jmal/clouddisk/lucene/LuceneService.java | 698 + .../clouddisk/lucene/ReadContentService.java | 326 + .../lucene/RebuildIndexTaskService.java | 649 + .../clouddisk/lucene/SearchFileService.java | 589 + .../jmal/clouddisk/lucene/TaskProgress.java | 42 + .../clouddisk/lucene/TaskProgressService.java | 117 + .../com/jmal/clouddisk/lucene/TaskType.java | 24 + .../jmal/clouddisk/media/FFMPEGCommand.java | 320 + .../com/jmal/clouddisk/media/FFMPEGUtils.java | 126 + .../com/jmal/clouddisk/media/HeifUtils.java | 122 + .../jmal/clouddisk/media/TranscodeConfig.java | 124 + .../jmal/clouddisk/media/TranscodeStatus.java | 29 + .../com/jmal/clouddisk/media/VideoInfo.java | 83 + .../com/jmal/clouddisk/media/VideoInfoDO.java | 46 + .../jmal/clouddisk/media/VideoInfoUtil.java | 46 + .../clouddisk/media/VideoProcessService.java | 733 + .../com/jmal/clouddisk/model/ArchivesVO.java | 43 + .../com/jmal/clouddisk/model/ArticleDTO.java | 53 + .../jmal/clouddisk/model/ArticleParamDTO.java | 71 + .../com/jmal/clouddisk/model/ArticleVO.java | 31 + .../jmal/clouddisk/model/ArticlesQueryVO.java | 20 + .../com/jmal/clouddisk/model/CategoryDO.java | 67 + .../com/jmal/clouddisk/model/CategoryDTO.java | 91 + .../jmal/clouddisk/model/CloudSettingDO.java | 21 + .../jmal/clouddisk/model/CloudSettingDTO.java | 23 + .../com/jmal/clouddisk/model/CommentDO.java | 93 + .../com/jmal/clouddisk/model/DirectLink.java | 38 + .../com/jmal/clouddisk/model/EditTagDTO.java | 24 + .../com/jmal/clouddisk/model/ExifInfo.java | 103 + .../com/jmal/clouddisk/model/FileBase.java | 73 + .../jmal/clouddisk/model/FileDocument.java | 286 + .../com/jmal/clouddisk/model/FileIndex.java | 64 + .../com/jmal/clouddisk/model/FileIntroVO.java | 117 + .../com/jmal/clouddisk/model/FileType.java | 28 + .../com/jmal/clouddisk/model/GridFSBO.java | 27 + .../jmal/clouddisk/model/HeartwingsDO.java | 44 + .../jmal/clouddisk/model/LdapConfigDO.java | 71 + .../jmal/clouddisk/model/LdapConfigDTO.java | 62 + .../jmal/clouddisk/model/LogOperation.java | 185 + .../jmal/clouddisk/model/LogOperationDTO.java | 79 + .../clouddisk/model/MarkdownBaseFile.java | 52 + .../com/jmal/clouddisk/model/MarkdownVO.java | 25 + .../com/jmal/clouddisk/model/Metadata.java | 16 + .../java/com/jmal/clouddisk/model/Music.java | 26 + .../clouddisk/model/OperationPermission.java | 13 + .../jmal/clouddisk/model/OperationTips.java | 23 + .../java/com/jmal/clouddisk/model/Page.java | 129 + .../com/jmal/clouddisk/model/ShareDO.java | 74 + .../com/jmal/clouddisk/model/ShareVO.java | 41 + .../com/jmal/clouddisk/model/SharerDTO.java | 29 + .../java/com/jmal/clouddisk/model/Tag.java | 12 + .../java/com/jmal/clouddisk/model/TagDO.java | 72 + .../java/com/jmal/clouddisk/model/TagDTO.java | 59 + .../java/com/jmal/clouddisk/model/Trash.java | 91 + .../clouddisk/model/UploadApiParamDTO.java | 305 + .../jmal/clouddisk/model/UploadImageDTO.java | 24 + .../jmal/clouddisk/model/UploadResponse.java | 44 + .../java/com/jmal/clouddisk/model/Urlset.java | 47 + .../clouddisk/model/UserAccessTokenDO.java | 35 + .../clouddisk/model/UserAccessTokenDTO.java | 38 + .../com/jmal/clouddisk/model/UserTokenDO.java | 20 + .../clouddisk/model/WebsiteSettingDO.java | 98 + .../clouddisk/model/WebsiteSettingDTO.java | 136 + .../clouddisk/model/query/QueryBaseDTO.java | 22 + .../clouddisk/model/query/QueryMenuDTO.java | 25 + .../clouddisk/model/query/QueryRoleDTO.java | 23 + .../clouddisk/model/query/QueryUserDTO.java | 21 + .../jmal/clouddisk/model/query/SearchDTO.java | 174 + .../model/query/SearchOptionHistoryDO.java | 132 + .../clouddisk/model/rbac/ConsumerBase.java | 15 + .../jmal/clouddisk/model/rbac/ConsumerDO.java | 57 + .../clouddisk/model/rbac/ConsumerDTO.java | 77 + .../com/jmal/clouddisk/model/rbac/MenuDO.java | 65 + .../jmal/clouddisk/model/rbac/MenuDTO.java | 75 + .../com/jmal/clouddisk/model/rbac/RoleDO.java | 46 + .../jmal/clouddisk/model/rbac/RoleDTO.java | 36 + .../model/rbac/UserLoginContext.java | 20 + .../jmal/clouddisk/ocr/CommonOcrService.java | 79 + .../com/jmal/clouddisk/ocr/IOcrService.java | 13 + .../com/jmal/clouddisk/ocr/OcrConfig.java | 55 + .../com/jmal/clouddisk/ocr/OcrEngine.java | 15 + .../clouddisk/ocr/OcrLiteOnnxService.java | 99 + .../com/jmal/clouddisk/ocr/OcrService.java | 162 + .../clouddisk/ocr/TesseractOcrConfig.java | 36 + .../jmal/clouddisk/ocr/TesseractService.java | 55 + .../clouddisk/office/OfficeConfigService.java | 106 + .../clouddisk/office/OfficeController.java | 81 + .../jmal/clouddisk/office/OfficeHistory.java | 17 + .../clouddisk/office/callbacks/Callback.java | 33 + .../office/callbacks/CallbackHandler.java | 33 + .../clouddisk/office/callbacks/Status.java | 40 + .../implementations/EditCallback.java | 26 + .../implementations/EditNothingCallback.java | 26 + .../implementations/ForceSaveCallback.java | 26 + .../implementations/SaveCallback.java | 97 + .../jmal/clouddisk/office/model/Action.java | 15 + .../office/model/OfficeConfigDO.java | 39 + .../office/model/OfficeConfigDTO.java | 63 + .../jmal/clouddisk/office/model/Track.java | 113 + .../clouddisk/office/model/enums/Action.java | 22 + .../jmal/clouddisk/oss/AbstractOssObject.java | 26 + .../jmal/clouddisk/oss/BaseOssService.java | 566 + .../com/jmal/clouddisk/oss/BucketInfo.java | 22 + .../java/com/jmal/clouddisk/oss/FileInfo.java | 90 + .../com/jmal/clouddisk/oss/IOssService.java | 252 + .../jmal/clouddisk/oss/OssConfigService.java | 305 + .../jmal/clouddisk/oss/OssInputStream.java | 24 + .../com/jmal/clouddisk/oss/PlatformOSS.java | 34 + .../jmal/clouddisk/oss/S3ObjectSummary.java | 27 + .../jmal/clouddisk/oss/TempFileObject.java | 68 + .../clouddisk/oss/aliyun/AliyunOssObject.java | 67 + .../oss/aliyun/AliyunOssService.java | 557 + .../jmal/clouddisk/oss/minio/MinIOObject.java | 72 + .../clouddisk/oss/minio/MinIOService.java | 537 + .../jmal/clouddisk/oss/minio/MinIoClient.java | 206 + .../oss/tencent/TencentOssObject.java | 67 + .../oss/tencent/TencentOssService.java | 563 + .../jmal/clouddisk/oss/web/OssController.java | 61 + .../jmal/clouddisk/oss/web/STSObjectVO.java | 16 + .../oss/web/WebOssCommonService.java | 143 + .../oss/web/WebOssCopyFileService.java | 408 + .../jmal/clouddisk/oss/web/WebOssService.java | 840 + .../clouddisk/oss/web/model/OssConfigDO.java | 53 + .../clouddisk/oss/web/model/OssConfigDTO.java | 58 + .../jmal/clouddisk/repository/DataSource.java | 21 + .../jmal/clouddisk/repository/IAuthDAO.java | 59 + .../repository/impl/AuthDAOImpl.java | 108 + .../com/jmal/clouddisk/service/Constants.java | 98 + .../jmal/clouddisk/service/IAuthService.java | 70 + .../jmal/clouddisk/service/IFileService.java | 454 + .../service/IFileVersionService.java | 134 + .../clouddisk/service/IMarkdownService.java | 143 + .../jmal/clouddisk/service/IShareService.java | 160 + .../jmal/clouddisk/service/IUserService.java | 203 + .../service/impl/AuthServiceImpl.java | 290 + .../service/impl/CategoryService.java | 378 + .../service/impl/CommonFileService.java | 1317 ++ .../service/impl/DirectLinkService.java | 118 + .../service/impl/FileServiceImpl.java | 2338 +++ .../service/impl/FileVersionServiceImpl.java | 482 + .../clouddisk/service/impl/LogService.java | 456 + .../service/impl/MarkdownServiceImpl.java | 765 + .../clouddisk/service/impl/MenuService.java | 297 + .../service/impl/MultipartUpload.java | 328 + .../clouddisk/service/impl/RoleService.java | 322 + .../service/impl/SettingService.java | 387 + .../service/impl/ShareServiceImpl.java | 819 + .../clouddisk/service/impl/TagService.java | 324 + .../clouddisk/service/impl/TotpService.java | 87 + .../service/impl/UserLoginHolder.java | 67 + .../service/impl/UserServiceImpl.java | 639 + .../jmal/clouddisk/swagger/OpenApiConfig.java | 41 + .../jmal/clouddisk/util/AudioFileUtils.java | 102 + .../com/jmal/clouddisk/util/CaffeineUtil.java | 309 + .../java/com/jmal/clouddisk/util/CalcMd5.java | 84 + .../jmal/clouddisk/util/CompressUtils.java | 263 + .../com/jmal/clouddisk/util/FFMPEGUtils.java | 80 + .../jmal/clouddisk/util/FastImageInfo.java | 154 + .../clouddisk/util/FileContentTypeUtils.java | 782 + .../jmal/clouddisk/util/FileContentUtil.java | 112 + .../jmal/clouddisk/util/FileNameUtils.java | 25 + .../com/jmal/clouddisk/util/HashUtil.java | 26 + .../util/HybridThrottleExecutor.java | 137 + .../jmal/clouddisk/util/ImageExifUtil.java | 141 + .../com/jmal/clouddisk/util/MapUtils.java | 29 + .../com/jmal/clouddisk/util/MessageUtil.java | 41 + .../com/jmal/clouddisk/util/MongoUtil.java | 101 + .../com/jmal/clouddisk/util/MyFileUtils.java | 174 + .../com/jmal/clouddisk/util/PasswordHash.java | 207 + .../jmal/clouddisk/util/ResponseResult.java | 23 + .../com/jmal/clouddisk/util/ResultUtil.java | 99 + .../clouddisk/util/ShortSignedIdUtil.java | 123 + .../com/jmal/clouddisk/util/StringUtil.java | 24 + .../com/jmal/clouddisk/util/SystemUtil.java | 104 + .../jmal/clouddisk/util/TesseractUtil.java | 75 + .../jmal/clouddisk/util/ThrottleExecutor.java | 51 + .../com/jmal/clouddisk/util/TimeUntils.java | 65 + .../com/jmal/clouddisk/util/TokenUtil.java | 83 + .../clouddisk/util/UrlEncodingChecker.java | 56 + .../clouddisk/webdav/BasicAuthenticator.java | 258 + .../clouddisk/webdav/MyDirResourceSet.java | 24 + .../com/jmal/clouddisk/webdav/MyRealm.java | 138 + .../jmal/clouddisk/webdav/MyStandardRoot.java | 27 + .../clouddisk/webdav/MyWebdavServlet.java | 236 + .../clouddisk/webdav/WebdavAuthenticator.java | 81 + .../jmal/clouddisk/webdav/WebdavConfig.java | 108 + .../jmal/clouddisk/webdav/WebdavMethod.java | 44 + .../jmal/clouddisk/webdav/WebdavServlet.java | 2534 +++ .../webdav/resource/FileResourceSet.java | 172 + .../webdav/resource/LocalFileResource.java | 273 + .../webdav/resource/OssFileResource.java | 279 + ...itional-spring-configuration-metadata.json | 8 + src/main/resources/application-prod.yml | 18 + src/main/resources/application-test.yml | 18 + src/main/resources/application.yml | 50 + src/main/resources/banner.txt | 10 + src/main/resources/db/menu.json | 798 + src/main/resources/db/role.json | 323 + src/main/resources/file.yml | 64 + src/main/resources/i18n/messages.properties | 77 + .../resources/i18n/messages_en_US.properties | 77 + .../resources/i18n/messages_zh_CN.properties | 76 + src/main/resources/logback.xml | 138 + .../static/articles/css/dark/index-2.15.0.css | 225 + .../static/articles/css/independent.css | 4 + .../articles/css/light/index-2.15.0.css | 1344 ++ .../resources/static/articles/favicon.ico | Bin 0 -> 2118 bytes .../font-awesome/free-6.4.2/css/all.min.css | 9 + .../free-6.4.2/webfonts/fa-brands-400.ttf | Bin 0 -> 189684 bytes .../free-6.4.2/webfonts/fa-brands-400.woff2 | Bin 0 -> 109808 bytes .../free-6.4.2/webfonts/fa-regular-400.ttf | Bin 0 -> 63348 bytes .../free-6.4.2/webfonts/fa-regular-400.woff2 | Bin 0 -> 24488 bytes .../free-6.4.2/webfonts/fa-solid-900.ttf | Bin 0 -> 394668 bytes .../free-6.4.2/webfonts/fa-solid-900.woff2 | Bin 0 -> 150020 bytes .../webfonts/fa-v4compatibility.ttf | Bin 0 -> 10172 bytes .../webfonts/fa-v4compatibility.woff2 | Bin 0 -> 4568 bytes .../resources/static/articles/img/beian.png | Bin 0 -> 19256 bytes .../articles/js/echarts-wordcloud.min.js | 8 + .../static/articles/js/echarts.min.js | 21 + .../articles/js/font_2024484_qwtkvngfp5b.js | 1 + .../static/articles/js/jquery-3.5.1.min.js | 2 + .../static/articles/js/jquery.pjax.js | 903 + .../static/articles/layui/css/layui.css | 2 + .../articles/layui/css/layui.mobile.css | 2 + .../articles/layui/css/modules/code.css | 2 + .../css/modules/laydate/default/laydate.css | 2 + .../css/modules/layer/default/icon-ext.png | Bin 0 -> 5911 bytes .../layui/css/modules/layer/default/icon.png | Bin 0 -> 11493 bytes .../layui/css/modules/layer/default/layer.css | 2 + .../css/modules/layer/default/loading-0.gif | Bin 0 -> 5793 bytes .../css/modules/layer/default/loading-1.gif | Bin 0 -> 701 bytes .../css/modules/layer/default/loading-2.gif | Bin 0 -> 1787 bytes .../static/articles/layui/font/iconfont.eot | Bin 0 -> 46684 bytes .../static/articles/layui/font/iconfont.svg | 554 + .../static/articles/layui/font/iconfont.ttf | Bin 0 -> 46508 bytes .../static/articles/layui/font/iconfont.woff | Bin 0 -> 30628 bytes .../static/articles/layui/font/iconfont.woff2 | Bin 0 -> 25964 bytes .../static/articles/layui/images/face/0.gif | Bin 0 -> 2689 bytes .../static/articles/layui/images/face/1.gif | Bin 0 -> 5514 bytes .../static/articles/layui/images/face/10.gif | Bin 0 -> 2797 bytes .../static/articles/layui/images/face/11.gif | Bin 0 -> 4121 bytes .../static/articles/layui/images/face/12.gif | Bin 0 -> 3361 bytes .../static/articles/layui/images/face/13.gif | Bin 0 -> 7425 bytes .../static/articles/layui/images/face/14.gif | Bin 0 -> 2375 bytes .../static/articles/layui/images/face/15.gif | Bin 0 -> 1793 bytes .../static/articles/layui/images/face/16.gif | Bin 0 -> 6721 bytes .../static/articles/layui/images/face/17.gif | Bin 0 -> 4439 bytes .../static/articles/layui/images/face/18.gif | Bin 0 -> 3017 bytes .../static/articles/layui/images/face/19.gif | Bin 0 -> 3040 bytes .../static/articles/layui/images/face/2.gif | Bin 0 -> 3222 bytes .../static/articles/layui/images/face/20.gif | Bin 0 -> 5144 bytes .../static/articles/layui/images/face/21.gif | Bin 0 -> 5191 bytes .../static/articles/layui/images/face/22.gif | Bin 0 -> 9823 bytes .../static/articles/layui/images/face/23.gif | Bin 0 -> 3792 bytes .../static/articles/layui/images/face/24.gif | Bin 0 -> 8096 bytes .../static/articles/layui/images/face/25.gif | Bin 0 -> 3127 bytes .../static/articles/layui/images/face/26.gif | Bin 0 -> 3291 bytes .../static/articles/layui/images/face/27.gif | Bin 0 -> 4377 bytes .../static/articles/layui/images/face/28.gif | Bin 0 -> 2793 bytes .../static/articles/layui/images/face/29.gif | Bin 0 -> 4854 bytes .../static/articles/layui/images/face/3.gif | Bin 0 -> 4017 bytes .../static/articles/layui/images/face/30.gif | Bin 0 -> 2555 bytes .../static/articles/layui/images/face/31.gif | Bin 0 -> 2002 bytes .../static/articles/layui/images/face/32.gif | Bin 0 -> 3481 bytes .../static/articles/layui/images/face/33.gif | Bin 0 -> 2454 bytes .../static/articles/layui/images/face/34.gif | Bin 0 -> 3700 bytes .../static/articles/layui/images/face/35.gif | Bin 0 -> 1800 bytes .../static/articles/layui/images/face/36.gif | Bin 0 -> 2331 bytes .../static/articles/layui/images/face/37.gif | Bin 0 -> 1513 bytes .../static/articles/layui/images/face/38.gif | Bin 0 -> 3615 bytes .../static/articles/layui/images/face/39.gif | Bin 0 -> 6495 bytes .../static/articles/layui/images/face/4.gif | Bin 0 -> 5689 bytes .../static/articles/layui/images/face/40.gif | Bin 0 -> 3154 bytes .../static/articles/layui/images/face/41.gif | Bin 0 -> 3644 bytes .../static/articles/layui/images/face/42.gif | Bin 0 -> 5305 bytes .../static/articles/layui/images/face/43.gif | Bin 0 -> 2674 bytes .../static/articles/layui/images/face/44.gif | Bin 0 -> 4126 bytes .../static/articles/layui/images/face/45.gif | Bin 0 -> 3417 bytes .../static/articles/layui/images/face/46.gif | Bin 0 -> 3007 bytes .../static/articles/layui/images/face/47.gif | Bin 0 -> 2333 bytes .../static/articles/layui/images/face/48.gif | Bin 0 -> 2689 bytes .../static/articles/layui/images/face/49.gif | Bin 0 -> 2315 bytes .../static/articles/layui/images/face/5.gif | Bin 0 -> 4567 bytes .../static/articles/layui/images/face/50.gif | Bin 0 -> 5866 bytes .../static/articles/layui/images/face/51.gif | Bin 0 -> 2785 bytes .../static/articles/layui/images/face/52.gif | Bin 0 -> 777 bytes .../static/articles/layui/images/face/53.gif | Bin 0 -> 2127 bytes .../static/articles/layui/images/face/54.gif | Bin 0 -> 2196 bytes .../static/articles/layui/images/face/55.gif | Bin 0 -> 1971 bytes .../static/articles/layui/images/face/56.gif | Bin 0 -> 2034 bytes .../static/articles/layui/images/face/57.gif | Bin 0 -> 2705 bytes .../static/articles/layui/images/face/58.gif | Bin 0 -> 2258 bytes .../static/articles/layui/images/face/59.gif | Bin 0 -> 10311 bytes .../static/articles/layui/images/face/6.gif | Bin 0 -> 2213 bytes .../static/articles/layui/images/face/60.gif | Bin 0 -> 3245 bytes .../static/articles/layui/images/face/61.gif | Bin 0 -> 2495 bytes .../static/articles/layui/images/face/62.gif | Bin 0 -> 2017 bytes .../static/articles/layui/images/face/63.gif | Bin 0 -> 5871 bytes .../static/articles/layui/images/face/64.gif | Bin 0 -> 6448 bytes .../static/articles/layui/images/face/65.gif | Bin 0 -> 3576 bytes .../static/articles/layui/images/face/66.gif | Bin 0 -> 3029 bytes .../static/articles/layui/images/face/67.gif | Bin 0 -> 2701 bytes .../static/articles/layui/images/face/68.gif | Bin 0 -> 1424 bytes .../static/articles/layui/images/face/69.gif | Bin 0 -> 2431 bytes .../static/articles/layui/images/face/7.gif | Bin 0 -> 3398 bytes .../static/articles/layui/images/face/70.gif | Bin 0 -> 4590 bytes .../static/articles/layui/images/face/71.gif | Bin 0 -> 5304 bytes .../static/articles/layui/images/face/8.gif | Bin 0 -> 4050 bytes .../static/articles/layui/images/face/9.gif | Bin 0 -> 4221 bytes .../articles/layui/lay/modules/carousel.js | 2 + .../static/articles/layui/lay/modules/code.js | 2 + .../articles/layui/lay/modules/colorpicker.js | 2 + .../articles/layui/lay/modules/element.js | 2 + .../static/articles/layui/lay/modules/flow.js | 2 + .../static/articles/layui/lay/modules/form.js | 2 + .../articles/layui/lay/modules/jquery.js | 5 + .../articles/layui/lay/modules/laydate.js | 2 + .../articles/layui/lay/modules/layedit.js | 2 + .../articles/layui/lay/modules/layer.js | 2 + .../articles/layui/lay/modules/laypage.js | 2 + .../articles/layui/lay/modules/laytpl.js | 2 + .../articles/layui/lay/modules/mobile.js | 2 + .../static/articles/layui/lay/modules/rate.js | 2 + .../articles/layui/lay/modules/slider.js | 2 + .../articles/layui/lay/modules/table.js | 2 + .../articles/layui/lay/modules/transfer.js | 2 + .../static/articles/layui/lay/modules/tree.js | 2 + .../articles/layui/lay/modules/upload.js | 2 + .../static/articles/layui/lay/modules/util.js | 2 + .../static/articles/layui/layui.all.js | 5 + .../resources/static/articles/layui/layui.js | 2 + src/main/resources/static/articles/robots.txt | 3 + .../dist/css/content-theme/ant-design.css | 210 + .../dist/css/content-theme/custom-dark.css | 520 + .../dist/css/content-theme/custom-light.css | 512 + .../dist/css/content-theme/dark.css | 123 + .../dist/css/content-theme/light.css | 101 + .../dist/css/content-theme/wechat.css | 94 + .../vditor@3.11.1/dist/images/emoji/b3log.png | Bin 0 -> 4773 bytes .../dist/images/emoji/chainbook.png | Bin 0 -> 3663 bytes .../vditor@3.11.1/dist/images/emoji/doge.png | Bin 0 -> 3291 bytes .../dist/images/emoji/hacpai.png | Bin 0 -> 1587 bytes .../vditor@3.11.1/dist/images/emoji/huaji.gif | Bin 0 -> 13662 bytes .../vditor@3.11.1/dist/images/emoji/latke.png | Bin 0 -> 3264 bytes .../dist/images/emoji/liandi.png | Bin 0 -> 1587 bytes .../vditor@3.11.1/dist/images/emoji/lute.png | Bin 0 -> 1052 bytes .../dist/images/emoji/octocat.png | Bin 0 -> 3738 bytes .../vditor@3.11.1/dist/images/emoji/pipe.png | Bin 0 -> 2247 bytes .../dist/images/emoji/siyuan.png | Bin 0 -> 1153 bytes .../vditor@3.11.1/dist/images/emoji/solo.png | Bin 0 -> 3890 bytes .../vditor@3.11.1/dist/images/emoji/sym.png | Bin 0 -> 3267 bytes .../dist/images/emoji/trollface.png | Bin 0 -> 4901 bytes .../dist/images/emoji/vditor.png | Bin 0 -> 2177 bytes .../vditor@3.11.1/dist/images/emoji/wide.png | Bin 0 -> 5128 bytes .../dist/images/emoji/wulian.png | Bin 0 -> 8469 bytes .../vditor@3.11.1/dist/images/img-loading.svg | 1 + .../vditor@3.11.1/dist/images/logo.png | Bin 0 -> 2050 bytes .../articles/vditor@3.11.1/dist/index.css | 1823 ++ .../articles/vditor@3.11.1/dist/index.d.ts | 82 + .../articles/vditor@3.11.1/dist/index.js | 15888 ++++++++++++++++ .../articles/vditor@3.11.1/dist/index.min.js | 1 + .../dist/js/abcjs/abcjs_basic.min.js | 3 + .../dist/js/echarts/echarts.min.js | 45 + .../dist/js/flowchart.js/flowchart.min.js | 8 + .../dist/js/graphviz/full.render.js | 90 + .../vditor@3.11.1/dist/js/graphviz/viz.js | 333 + .../dist/js/highlight.js/LICENSE | 29 + .../dist/js/highlight.js/highlight.min.js | 3835 ++++ .../js/highlight.js/styles/a11y-dark.min.css | 7 + .../js/highlight.js/styles/a11y-light.min.css | 7 + .../dist/js/highlight.js/styles/agate.min.css | 20 + .../highlight.js/styles/an-old-hope.min.css | 9 + .../highlight.js/styles/androidstudio.min.css | 1 + .../js/highlight.js/styles/ant-design.min.css | 84 + .../highlight.js/styles/arduino-light.min.css | 1 + .../dist/js/highlight.js/styles/arta.min.css | 1 + .../js/highlight.js/styles/ascetic.min.css | 1 + .../styles/atom-one-dark-reasonable.min.css | 1 + .../highlight.js/styles/atom-one-dark.min.css | 1 + .../styles/atom-one-light.min.css | 1 + .../highlight.js/styles/base16/3024.min.css | 7 + .../highlight.js/styles/base16/apathy.min.css | 7 + .../styles/base16/apprentice.min.css | 7 + .../highlight.js/styles/base16/ashes.min.css | 7 + .../styles/base16/atelier-cave-light.min.css | 7 + .../styles/base16/atelier-cave.min.css | 7 + .../styles/base16/atelier-dune-light.min.css | 7 + .../styles/base16/atelier-dune.min.css | 7 + .../base16/atelier-estuary-light.min.css | 7 + .../styles/base16/atelier-estuary.min.css | 7 + .../base16/atelier-forest-light.min.css | 7 + .../styles/base16/atelier-forest.min.css | 7 + .../styles/base16/atelier-heath-light.min.css | 7 + .../styles/base16/atelier-heath.min.css | 7 + .../base16/atelier-lakeside-light.min.css | 7 + .../styles/base16/atelier-lakeside.min.css | 7 + .../base16/atelier-plateau-light.min.css | 7 + .../styles/base16/atelier-plateau.min.css | 7 + .../base16/atelier-savanna-light.min.css | 7 + .../styles/base16/atelier-savanna.min.css | 7 + .../base16/atelier-seaside-light.min.css | 7 + .../styles/base16/atelier-seaside.min.css | 7 + .../base16/atelier-sulphurpool-light.min.css | 7 + .../styles/base16/atelier-sulphurpool.min.css | 7 + .../highlight.js/styles/base16/atlas.min.css | 7 + .../highlight.js/styles/base16/bespin.min.css | 7 + .../styles/base16/black-metal-bathory.min.css | 7 + .../styles/base16/black-metal-burzum.min.css | 7 + .../base16/black-metal-dark-funeral.min.css | 7 + .../base16/black-metal-gorgoroth.min.css | 7 + .../base16/black-metal-immortal.min.css | 7 + .../styles/base16/black-metal-khold.min.css | 7 + .../styles/base16/black-metal-marduk.min.css | 7 + .../styles/base16/black-metal-mayhem.min.css | 7 + .../styles/base16/black-metal-nile.min.css | 7 + .../styles/base16/black-metal-venom.min.css | 7 + .../styles/base16/black-metal.min.css | 7 + .../highlight.js/styles/base16/brewer.min.css | 7 + .../highlight.js/styles/base16/bright.min.css | 7 + .../styles/base16/brogrammer.min.css | 7 + .../styles/base16/brush-trees-dark.min.css | 7 + .../styles/base16/brush-trees.min.css | 7 + .../highlight.js/styles/base16/chalk.min.css | 7 + .../highlight.js/styles/base16/circus.min.css | 7 + .../styles/base16/classic-dark.min.css | 7 + .../styles/base16/classic-light.min.css | 7 + .../styles/base16/codeschool.min.css | 7 + .../highlight.js/styles/base16/colors.min.css | 7 + .../styles/base16/cupcake.min.css | 7 + .../styles/base16/cupertino.min.css | 7 + .../styles/base16/danqing.min.css | 7 + .../styles/base16/darcula.min.css | 7 + .../styles/base16/dark-violet.min.css | 7 + .../styles/base16/darkmoss.min.css | 7 + .../styles/base16/darktooth.min.css | 7 + .../highlight.js/styles/base16/decaf.min.css | 7 + .../styles/base16/default-dark.min.css | 7 + .../styles/base16/default-light.min.css | 7 + .../styles/base16/dirtysea.min.css | 7 + .../styles/base16/dracula.min.css | 7 + .../styles/base16/edge-dark.min.css | 7 + .../styles/base16/edge-light.min.css | 7 + .../styles/base16/eighties.min.css | 7 + .../highlight.js/styles/base16/embers.min.css | 7 + .../styles/base16/equilibrium-dark.min.css | 7 + .../base16/equilibrium-gray-dark.min.css | 7 + .../base16/equilibrium-gray-light.min.css | 7 + .../styles/base16/equilibrium-light.min.css | 7 + .../styles/base16/espresso.min.css | 7 + .../styles/base16/eva-dim.min.css | 7 + .../js/highlight.js/styles/base16/eva.min.css | 7 + .../highlight.js/styles/base16/flat.min.css | 7 + .../highlight.js/styles/base16/framer.min.css | 7 + .../styles/base16/fruit-soda.min.css | 7 + .../styles/base16/gigavolt.min.css | 7 + .../highlight.js/styles/base16/github.min.css | 7 + .../styles/base16/google-dark.min.css | 7 + .../styles/base16/google-light.min.css | 7 + .../styles/base16/grayscale-dark.min.css | 7 + .../styles/base16/grayscale-light.min.css | 7 + .../styles/base16/green-screen.min.css | 7 + .../styles/base16/gruvbox-dark-hard.min.css | 7 + .../styles/base16/gruvbox-dark-medium.min.css | 7 + .../styles/base16/gruvbox-dark-pale.min.css | 7 + .../styles/base16/gruvbox-dark-soft.min.css | 7 + .../styles/base16/gruvbox-light-hard.min.css | 7 + .../base16/gruvbox-light-medium.min.css | 7 + .../styles/base16/gruvbox-light-soft.min.css | 7 + .../styles/base16/hardcore.min.css | 7 + .../styles/base16/harmonic16-dark.min.css | 7 + .../styles/base16/harmonic16-light.min.css | 7 + .../styles/base16/heetch-dark.min.css | 7 + .../styles/base16/heetch-light.min.css | 7 + .../highlight.js/styles/base16/helios.min.css | 7 + .../styles/base16/hopscotch.min.css | 7 + .../styles/base16/horizon-dark.min.css | 7 + .../styles/base16/horizon-light.min.css | 7 + .../styles/base16/humanoid-dark.min.css | 7 + .../styles/base16/humanoid-light.min.css | 7 + .../styles/base16/ia-dark.min.css | 7 + .../styles/base16/ia-light.min.css | 7 + .../styles/base16/icy-dark.min.css | 7 + .../styles/base16/ir-black.min.css | 7 + .../styles/base16/isotope.min.css | 7 + .../highlight.js/styles/base16/kimber.min.css | 7 + .../styles/base16/london-tube.min.css | 7 + .../styles/base16/macintosh.min.css | 7 + .../styles/base16/marrakesh.min.css | 7 + .../styles/base16/materia.min.css | 7 + .../styles/base16/material-darker.min.css | 7 + .../styles/base16/material-lighter.min.css | 7 + .../styles/base16/material-palenight.min.css | 7 + .../styles/base16/material-vivid.min.css | 7 + .../styles/base16/material.min.css | 7 + .../styles/base16/mellow-purple.min.css | 7 + .../styles/base16/mexico-light.min.css | 7 + .../highlight.js/styles/base16/mocha.min.css | 7 + .../styles/base16/monokai.min.css | 7 + .../highlight.js/styles/base16/nebula.min.css | 7 + .../highlight.js/styles/base16/nord.min.css | 7 + .../highlight.js/styles/base16/nova.min.css | 7 + .../highlight.js/styles/base16/ocean.min.css | 7 + .../styles/base16/oceanicnext.min.css | 7 + .../styles/base16/one-light.min.css | 7 + .../styles/base16/onedark.min.css | 7 + .../styles/base16/outrun-dark.min.css | 7 + .../styles/base16/papercolor-dark.min.css | 7 + .../styles/base16/papercolor-light.min.css | 7 + .../styles/base16/paraiso.min.css | 7 + .../highlight.js/styles/base16/pasque.min.css | 7 + .../js/highlight.js/styles/base16/phd.min.css | 7 + .../highlight.js/styles/base16/pico.min.css | 7 + .../js/highlight.js/styles/base16/pop.min.css | 7 + .../highlight.js/styles/base16/porple.min.css | 7 + .../highlight.js/styles/base16/qualia.min.css | 7 + .../styles/base16/railscasts.min.css | 7 + .../styles/base16/rebecca.min.css | 7 + .../styles/base16/ros-pine-dawn.min.css | 7 + .../styles/base16/ros-pine-moon.min.css | 7 + .../styles/base16/ros-pine.min.css | 7 + .../styles/base16/sagelight.min.css | 7 + .../styles/base16/sandcastle.min.css | 7 + .../styles/base16/seti-ui.min.css | 7 + .../styles/base16/shapeshifter.min.css | 7 + .../styles/base16/silk-dark.min.css | 7 + .../styles/base16/silk-light.min.css | 7 + .../highlight.js/styles/base16/snazzy.min.css | 7 + .../styles/base16/solar-flare-light.min.css | 7 + .../styles/base16/solar-flare.min.css | 7 + .../styles/base16/solarized-dark.min.css | 7 + .../styles/base16/solarized-light.min.css | 7 + .../styles/base16/spacemacs.min.css | 7 + .../styles/base16/summercamp.min.css | 7 + .../styles/base16/summerfruit-dark.min.css | 7 + .../styles/base16/summerfruit-light.min.css | 7 + .../synth-midnight-terminal-dark.min.css | 7 + .../synth-midnight-terminal-light.min.css | 7 + .../highlight.js/styles/base16/tango.min.css | 7 + .../highlight.js/styles/base16/tender.min.css | 7 + .../styles/base16/tomorrow-night.min.css | 7 + .../styles/base16/tomorrow.min.css | 7 + .../styles/base16/twilight.min.css | 7 + .../styles/base16/unikitty-dark.min.css | 7 + .../styles/base16/unikitty-light.min.css | 7 + .../highlight.js/styles/base16/vulcan.min.css | 7 + .../styles/base16/windows-10-light.min.css | 7 + .../styles/base16/windows-10.min.css | 7 + .../styles/base16/windows-95-light.min.css | 7 + .../styles/base16/windows-95.min.css | 7 + .../windows-high-contrast-light.min.css | 7 + .../base16/windows-high-contrast.min.css | 7 + .../styles/base16/windows-nt-light.min.css | 7 + .../styles/base16/windows-nt.min.css | 7 + .../styles/base16/woodland.min.css | 7 + .../styles/base16/xcode-dusk.min.css | 7 + .../styles/base16/zenburn.min.css | 7 + .../highlight.js/styles/brown-paper.min.css | 1 + .../js/highlight.js/styles/brown-papersq.png | Bin 0 -> 18198 bytes .../highlight.js/styles/codepen-embed.min.css | 1 + .../highlight.js/styles/color-brewer.min.css | 1 + .../dist/js/highlight.js/styles/dark.min.css | 1 + .../js/highlight.js/styles/default.min.css | 9 + .../js/highlight.js/styles/devibeans.min.css | 7 + .../dist/js/highlight.js/styles/docco.min.css | 1 + .../dist/js/highlight.js/styles/far.min.css | 1 + .../js/highlight.js/styles/felipec.min.css | 7 + .../js/highlight.js/styles/foundation.min.css | 1 + .../styles/github-dark-dimmed.min.css | 9 + .../highlight.js/styles/github-dark.min.css | 10 + .../js/highlight.js/styles/github.min.css | 10 + .../dist/js/highlight.js/styles/gml.min.css | 1 + .../js/highlight.js/styles/googlecode.min.css | 1 + .../highlight.js/styles/gradient-dark.min.css | 1 + .../styles/gradient-light.min.css | 1 + .../js/highlight.js/styles/grayscale.min.css | 1 + .../js/highlight.js/styles/hybrid.min.css | 1 + .../dist/js/highlight.js/styles/idea.min.css | 1 + .../styles/intellij-light.min.css | 1 + .../js/highlight.js/styles/ir-black.min.css | 1 + .../styles/isbl-editor-dark.min.css | 1 + .../styles/isbl-editor-light.min.css | 1 + .../highlight.js/styles/kimbie-dark.min.css | 1 + .../highlight.js/styles/kimbie-light.min.css | 1 + .../js/highlight.js/styles/lightfair.min.css | 1 + .../js/highlight.js/styles/lioshi.min.css | 1 + .../js/highlight.js/styles/magula.min.css | 1 + .../js/highlight.js/styles/mono-blue.min.css | 1 + .../styles/monokai-sublime.min.css | 1 + .../js/highlight.js/styles/monokai.min.css | 1 + .../js/highlight.js/styles/night-owl.min.css | 1 + .../js/highlight.js/styles/nnfx-dark.min.css | 10 + .../js/highlight.js/styles/nnfx-light.min.css | 10 + .../dist/js/highlight.js/styles/nord.min.css | 1 + .../js/highlight.js/styles/obsidian.min.css | 1 + .../styles/panda-syntax-dark.min.css | 1 + .../styles/panda-syntax-light.min.css | 1 + .../highlight.js/styles/paraiso-dark.min.css | 1 + .../highlight.js/styles/paraiso-light.min.css | 1 + .../dist/js/highlight.js/styles/pojoaque.jpg | Bin 0 -> 1186 bytes .../js/highlight.js/styles/pojoaque.min.css | 1 + .../js/highlight.js/styles/purebasic.min.css | 1 + .../styles/qtcreator-dark.min.css | 1 + .../styles/qtcreator-light.min.css | 1 + .../js/highlight.js/styles/rainbow.min.css | 1 + .../js/highlight.js/styles/routeros.min.css | 1 + .../highlight.js/styles/school-book.min.css | 1 + .../styles/shades-of-purple.min.css | 1 + .../js/highlight.js/styles/srcery.min.css | 1 + .../styles/stackoverflow-dark.min.css | 13 + .../styles/stackoverflow-light.min.css | 13 + .../js/highlight.js/styles/sunburst.min.css | 1 + .../styles/tokyo-night-dark.min.css | 8 + .../styles/tokyo-night-light.min.css | 8 + .../styles/tomorrow-night-blue.min.css | 1 + .../styles/tomorrow-night-bright.min.css | 1 + .../dist/js/highlight.js/styles/vs.min.css | 1 + .../js/highlight.js/styles/vs2015.min.css | 1 + .../dist/js/highlight.js/styles/xcode.min.css | 1 + .../dist/js/highlight.js/styles/xt256.min.css | 1 + .../dist/js/highlight.js/third-languages.js | 135 + .../vditor@3.11.1/dist/js/i18n/de_DE.js | 86 + .../vditor@3.11.1/dist/js/i18n/en_US.js | 86 + .../vditor@3.11.1/dist/js/i18n/fr_FR.js | 86 + .../vditor@3.11.1/dist/js/i18n/ja_JP.js | 86 + .../vditor@3.11.1/dist/js/i18n/ko_KR.js | 86 + .../vditor@3.11.1/dist/js/i18n/pt_BR.js | 86 + .../vditor@3.11.1/dist/js/i18n/ru_RU.js | 86 + .../vditor@3.11.1/dist/js/i18n/sv_SE.js | 86 + .../vditor@3.11.1/dist/js/i18n/zh_CN.js | 86 + .../vditor@3.11.1/dist/js/i18n/zh_TW.js | 86 + .../vditor@3.11.1/dist/js/icons/ant.js | 174 + .../vditor@3.11.1/dist/js/icons/material.js | 195 + .../dist/js/katex/fonts/KaTeX_AMS-Regular.ttf | Bin 0 -> 63632 bytes .../js/katex/fonts/KaTeX_AMS-Regular.woff | Bin 0 -> 33516 bytes .../js/katex/fonts/KaTeX_AMS-Regular.woff2 | Bin 0 -> 28076 bytes .../js/katex/fonts/KaTeX_Caligraphic-Bold.ttf | Bin 0 -> 12368 bytes .../katex/fonts/KaTeX_Caligraphic-Bold.woff | Bin 0 -> 7716 bytes .../katex/fonts/KaTeX_Caligraphic-Bold.woff2 | Bin 0 -> 6912 bytes .../katex/fonts/KaTeX_Caligraphic-Regular.ttf | Bin 0 -> 12344 bytes .../fonts/KaTeX_Caligraphic-Regular.woff | Bin 0 -> 7656 bytes .../fonts/KaTeX_Caligraphic-Regular.woff2 | Bin 0 -> 6908 bytes .../js/katex/fonts/KaTeX_Fraktur-Bold.ttf | Bin 0 -> 19584 bytes .../js/katex/fonts/KaTeX_Fraktur-Bold.woff | Bin 0 -> 13296 bytes .../js/katex/fonts/KaTeX_Fraktur-Bold.woff2 | Bin 0 -> 11348 bytes .../js/katex/fonts/KaTeX_Fraktur-Regular.ttf | Bin 0 -> 19572 bytes .../js/katex/fonts/KaTeX_Fraktur-Regular.woff | Bin 0 -> 13208 bytes .../katex/fonts/KaTeX_Fraktur-Regular.woff2 | Bin 0 -> 11316 bytes .../dist/js/katex/fonts/KaTeX_Main-Bold.ttf | Bin 0 -> 51336 bytes .../dist/js/katex/fonts/KaTeX_Main-Bold.woff | Bin 0 -> 29912 bytes .../dist/js/katex/fonts/KaTeX_Main-Bold.woff2 | Bin 0 -> 25324 bytes .../js/katex/fonts/KaTeX_Main-BoldItalic.ttf | Bin 0 -> 32968 bytes .../js/katex/fonts/KaTeX_Main-BoldItalic.woff | Bin 0 -> 19412 bytes .../katex/fonts/KaTeX_Main-BoldItalic.woff2 | Bin 0 -> 16780 bytes .../dist/js/katex/fonts/KaTeX_Main-Italic.ttf | Bin 0 -> 33580 bytes .../js/katex/fonts/KaTeX_Main-Italic.woff | Bin 0 -> 19676 bytes .../js/katex/fonts/KaTeX_Main-Italic.woff2 | Bin 0 -> 16988 bytes .../js/katex/fonts/KaTeX_Main-Regular.ttf | Bin 0 -> 53580 bytes .../js/katex/fonts/KaTeX_Main-Regular.woff | Bin 0 -> 30772 bytes .../js/katex/fonts/KaTeX_Main-Regular.woff2 | Bin 0 -> 26272 bytes .../js/katex/fonts/KaTeX_Math-BoldItalic.ttf | Bin 0 -> 31196 bytes .../js/katex/fonts/KaTeX_Math-BoldItalic.woff | Bin 0 -> 18668 bytes .../katex/fonts/KaTeX_Math-BoldItalic.woff2 | Bin 0 -> 16400 bytes .../dist/js/katex/fonts/KaTeX_Math-Italic.ttf | Bin 0 -> 31308 bytes .../js/katex/fonts/KaTeX_Math-Italic.woff | Bin 0 -> 18748 bytes .../js/katex/fonts/KaTeX_Math-Italic.woff2 | Bin 0 -> 16440 bytes .../js/katex/fonts/KaTeX_SansSerif-Bold.ttf | Bin 0 -> 24504 bytes .../js/katex/fonts/KaTeX_SansSerif-Bold.woff | Bin 0 -> 14408 bytes .../js/katex/fonts/KaTeX_SansSerif-Bold.woff2 | Bin 0 -> 12216 bytes .../js/katex/fonts/KaTeX_SansSerif-Italic.ttf | Bin 0 -> 22364 bytes .../katex/fonts/KaTeX_SansSerif-Italic.woff | Bin 0 -> 14112 bytes .../katex/fonts/KaTeX_SansSerif-Italic.woff2 | Bin 0 -> 12028 bytes .../katex/fonts/KaTeX_SansSerif-Regular.ttf | Bin 0 -> 19436 bytes .../katex/fonts/KaTeX_SansSerif-Regular.woff | Bin 0 -> 12316 bytes .../katex/fonts/KaTeX_SansSerif-Regular.woff2 | Bin 0 -> 10344 bytes .../js/katex/fonts/KaTeX_Script-Regular.ttf | Bin 0 -> 16648 bytes .../js/katex/fonts/KaTeX_Script-Regular.woff | Bin 0 -> 10588 bytes .../js/katex/fonts/KaTeX_Script-Regular.woff2 | Bin 0 -> 9644 bytes .../js/katex/fonts/KaTeX_Size1-Regular.ttf | Bin 0 -> 12228 bytes .../js/katex/fonts/KaTeX_Size1-Regular.woff | Bin 0 -> 6496 bytes .../js/katex/fonts/KaTeX_Size1-Regular.woff2 | Bin 0 -> 5468 bytes .../js/katex/fonts/KaTeX_Size2-Regular.ttf | Bin 0 -> 11508 bytes .../js/katex/fonts/KaTeX_Size2-Regular.woff | Bin 0 -> 6188 bytes .../js/katex/fonts/KaTeX_Size2-Regular.woff2 | Bin 0 -> 5208 bytes .../js/katex/fonts/KaTeX_Size3-Regular.ttf | Bin 0 -> 7588 bytes .../js/katex/fonts/KaTeX_Size3-Regular.woff | Bin 0 -> 4420 bytes .../js/katex/fonts/KaTeX_Size3-Regular.woff2 | Bin 0 -> 3624 bytes .../js/katex/fonts/KaTeX_Size4-Regular.ttf | Bin 0 -> 10364 bytes .../js/katex/fonts/KaTeX_Size4-Regular.woff | Bin 0 -> 5980 bytes .../js/katex/fonts/KaTeX_Size4-Regular.woff2 | Bin 0 -> 4928 bytes .../katex/fonts/KaTeX_Typewriter-Regular.ttf | Bin 0 -> 27556 bytes .../katex/fonts/KaTeX_Typewriter-Regular.woff | Bin 0 -> 16028 bytes .../fonts/KaTeX_Typewriter-Regular.woff2 | Bin 0 -> 13568 bytes .../vditor@3.11.1/dist/js/katex/katex.min.css | 1 + .../vditor@3.11.1/dist/js/katex/katex.min.js | 1 + .../vditor@3.11.1/dist/js/katex/mhchem.min.js | 1 + .../vditor@3.11.1/dist/js/lute/lute.min.js | 71 + .../dist/js/markmap/katex.min.css | 1 + .../dist/js/markmap/markmap.min.js | 8251 ++++++++ .../vditor@3.11.1/dist/js/markmap/prism.css | 140 + .../vditor@3.11.1/dist/js/mathjax/LICENSE | 202 + .../dist/js/mathjax/a11y/assistive-mml.js | 1 + .../dist/js/mathjax/a11y/complexity.js | 1 + .../dist/js/mathjax/a11y/explorer.js | 1 + .../dist/js/mathjax/a11y/semantic-enrich.js | 1 + .../dist/js/mathjax/input/asciimath.js | 1 + .../dist/js/mathjax/input/mml.js | 1 + .../dist/js/mathjax/input/mml/entities.js | 1 + .../dist/js/mathjax/input/tex-base.js | 1 + .../dist/js/mathjax/input/tex-full.js | 1 + .../dist/js/mathjax/input/tex.js | 1 + .../js/mathjax/input/tex/extensions/action.js | 1 + .../input/tex/extensions/all-packages.js | 1 + .../js/mathjax/input/tex/extensions/ams.js | 1 + .../js/mathjax/input/tex/extensions/amscd.js | 1 + .../mathjax/input/tex/extensions/autoload.js | 1 + .../js/mathjax/input/tex/extensions/bbox.js | 1 + .../input/tex/extensions/boldsymbol.js | 1 + .../js/mathjax/input/tex/extensions/braket.js | 1 + .../input/tex/extensions/bussproofs.js | 1 + .../js/mathjax/input/tex/extensions/cancel.js | 1 + .../js/mathjax/input/tex/extensions/color.js | 1 + .../mathjax/input/tex/extensions/colorV2.js | 1 + .../input/tex/extensions/configMacros.js | 1 + .../mathjax/input/tex/extensions/enclose.js | 1 + .../mathjax/input/tex/extensions/extpfeil.js | 1 + .../js/mathjax/input/tex/extensions/html.js | 1 + .../js/mathjax/input/tex/extensions/mhchem.js | 1 + .../input/tex/extensions/newcommand.js | 1 + .../mathjax/input/tex/extensions/noerrors.js | 1 + .../input/tex/extensions/noundefined.js | 1 + .../mathjax/input/tex/extensions/physics.js | 1 + .../mathjax/input/tex/extensions/require.js | 1 + .../mathjax/input/tex/extensions/tagFormat.js | 1 + .../input/tex/extensions/textmacros.js | 1 + .../mathjax/input/tex/extensions/unicode.js | 1 + .../js/mathjax/input/tex/extensions/verb.js | 1 + .../dist/js/mathjax/sre/mathmaps/de.js | 104 + .../dist/js/mathjax/sre/mathmaps/en.js | 110 + .../dist/js/mathjax/sre/mathmaps/es.js | 104 + .../dist/js/mathjax/sre/mathmaps/fr.js | 104 + .../js/mathjax/sre/mathmaps/mathmaps_ie.js | 518 + .../dist/js/mathjax/sre/mathmaps/nemeth.js | 104 + .../dist/js/mathjax/sre/sre-node.js | 11 + .../dist/js/mathjax/sre/sre_browser.js | 1633 ++ .../dist/js/mathjax/tex-svg-full.js | 1 + .../dist/js/mermaid/mermaid.min.js | 2607 +++ .../dist/js/plantuml/plantuml-encoder.min.js | 1 + .../js/smiles-drawer/smiles-drawer.min.js | 71 + .../articles/vditor@3.11.1/dist/method.d.ts | 51 + .../articles/vditor@3.11.1/dist/method.js | 2667 +++ .../articles/vditor@3.11.1/dist/method.min.js | 1 + .../vditor@3.11.1/dist/ts/constants.d.ts | 45 + .../vditor@3.11.1/dist/ts/devtools/index.d.ts | 7 + .../vditor@3.11.1/dist/ts/export/index.d.ts | 4 + .../vditor@3.11.1/dist/ts/hint/index.d.ts | 14 + .../dist/ts/ir/expandMarker.d.ts | 1 + .../dist/ts/ir/highlightToolbarIR.d.ts | 1 + .../vditor@3.11.1/dist/ts/ir/index.d.ts | 13 + .../vditor@3.11.1/dist/ts/ir/input.d.ts | 1 + .../vditor@3.11.1/dist/ts/ir/process.d.ts | 8 + .../dist/ts/ir/processKeydown.d.ts | 1 + .../dist/ts/markdown/SMILESRender.d.ts | 1 + .../dist/ts/markdown/abcRender.d.ts | 1 + .../dist/ts/markdown/adapterRender.d.ts | 41 + .../dist/ts/markdown/anchorRender.d.ts | 1 + .../dist/ts/markdown/chartRender.d.ts | 1 + .../dist/ts/markdown/codeRender.d.ts | 1 + .../dist/ts/markdown/flowchartRender.d.ts | 1 + .../dist/ts/markdown/getHTML.d.ts | 1 + .../dist/ts/markdown/getMarkdown.d.ts | 1 + .../dist/ts/markdown/graphvizRender.d.ts | 1 + .../dist/ts/markdown/highlightRender.d.ts | 1 + .../dist/ts/markdown/lazyLoadImageRender.d.ts | 6 + .../dist/ts/markdown/markmapRender.d.ts | 1 + .../dist/ts/markdown/mathRender.d.ts | 9 + .../dist/ts/markdown/mediaRender.d.ts | 1 + .../dist/ts/markdown/mermaidRender.d.ts | 1 + .../dist/ts/markdown/mindmapRender.d.ts | 1 + .../dist/ts/markdown/outlineRender.d.ts | 1 + .../dist/ts/markdown/plantumlRender.d.ts | 1 + .../dist/ts/markdown/previewRender.d.ts | 2 + .../dist/ts/markdown/setLute.d.ts | 1 + .../dist/ts/markdown/speechRender.d.ts | 6 + .../vditor@3.11.1/dist/ts/outline/index.d.ts | 7 + .../vditor@3.11.1/dist/ts/preview/image.d.ts | 1 + .../vditor@3.11.1/dist/ts/preview/index.d.ts | 10 + .../vditor@3.11.1/dist/ts/resize/index.d.ts | 6 + .../dist/ts/sv/combineFootnote.d.ts | 6 + .../vditor@3.11.1/dist/ts/sv/index.d.ts | 13 + .../vditor@3.11.1/dist/ts/sv/inputEvent.d.ts | 1 + .../vditor@3.11.1/dist/ts/sv/process.d.ts | 11 + .../dist/ts/sv/processKeydown.d.ts | 1 + .../vditor@3.11.1/dist/ts/tip/index.d.ts | 6 + .../vditor@3.11.1/dist/ts/toolbar/Both.d.ts | 5 + .../vditor@3.11.1/dist/ts/toolbar/Br.d.ts | 4 + .../dist/ts/toolbar/CodeTheme.d.ts | 6 + .../dist/ts/toolbar/ContentTheme.d.ts | 6 + .../dist/ts/toolbar/Counter.d.ts | 6 + .../vditor@3.11.1/dist/ts/toolbar/Custom.d.ts | 5 + .../dist/ts/toolbar/Devtools.d.ts | 5 + .../dist/ts/toolbar/Divider.d.ts | 4 + .../dist/ts/toolbar/EditMode.d.ts | 8 + .../vditor@3.11.1/dist/ts/toolbar/Emoji.d.ts | 7 + .../vditor@3.11.1/dist/ts/toolbar/Export.d.ts | 6 + .../dist/ts/toolbar/Fullscreen.d.ts | 6 + .../dist/ts/toolbar/Headings.d.ts | 7 + .../vditor@3.11.1/dist/ts/toolbar/Help.d.ts | 5 + .../vditor@3.11.1/dist/ts/toolbar/Indent.d.ts | 5 + .../vditor@3.11.1/dist/ts/toolbar/Info.d.ts | 5 + .../dist/ts/toolbar/InsertAfter.d.ts | 5 + .../dist/ts/toolbar/InsertBefore.d.ts | 5 + .../dist/ts/toolbar/MenuItem.d.ts | 5 + .../dist/ts/toolbar/Outdent.d.ts | 5 + .../dist/ts/toolbar/Outline.d.ts | 5 + .../dist/ts/toolbar/Preview.d.ts | 6 + .../vditor@3.11.1/dist/ts/toolbar/Record.d.ts | 6 + .../vditor@3.11.1/dist/ts/toolbar/Redo.d.ts | 5 + .../vditor@3.11.1/dist/ts/toolbar/Undo.d.ts | 5 + .../vditor@3.11.1/dist/ts/toolbar/Upload.d.ts | 6 + .../vditor@3.11.1/dist/ts/toolbar/index.d.ts | 10 + .../dist/ts/toolbar/setToolbar.d.ts | 20 + .../vditor@3.11.1/dist/ts/ui/initUI.d.ts | 4 + .../dist/ts/ui/setCodeTheme.d.ts | 1 + .../dist/ts/ui/setContentTheme.d.ts | 1 + .../dist/ts/ui/setPreviewMode.d.ts | 1 + .../vditor@3.11.1/dist/ts/ui/setTheme.d.ts | 1 + .../vditor@3.11.1/dist/ts/undo/index.d.ts | 19 + .../dist/ts/upload/getElement.d.ts | 1 + .../vditor@3.11.1/dist/ts/upload/index.d.ts | 8 + .../dist/ts/upload/setHeaders.d.ts | 1 + .../vditor@3.11.1/dist/ts/util/Options.d.ts | 8 + .../dist/ts/util/RecordMedia.d.ts | 18 + .../vditor@3.11.1/dist/ts/util/addScript.d.ts | 2 + .../vditor@3.11.1/dist/ts/util/addStyle.d.ts | 1 + .../dist/ts/util/code160to32.d.ts | 1 + .../dist/ts/util/compatibility.d.ts | 7 + .../dist/ts/util/editorCommonEvent.d.ts | 9 + .../dist/ts/util/fixBrowserBehavior.d.ts | 39 + .../vditor@3.11.1/dist/ts/util/function.d.ts | 3 + .../dist/ts/util/getSelectText.d.ts | 1 + .../dist/ts/util/hasClosest.d.ts | 9 + .../dist/ts/util/hasClosestByHeadings.d.ts | 2 + .../dist/ts/util/highlightToolbar.d.ts | 1 + .../vditor@3.11.1/dist/ts/util/hotKey.d.ts | 1 + .../vditor@3.11.1/dist/ts/util/log.d.ts | 1 + .../vditor@3.11.1/dist/ts/util/merge.d.ts | 1 + .../dist/ts/util/processCode.d.ts | 2 + .../vditor@3.11.1/dist/ts/util/selection.d.ts | 14 + .../vditor@3.11.1/dist/ts/util/toc.d.ts | 5 + .../dist/ts/wysiwyg/afterRenderEvent.d.ts | 5 + .../ts/wysiwyg/highlightToolbarWYSIWYG.d.ts | 4 + .../vditor@3.11.1/dist/ts/wysiwyg/index.d.ts | 22 + .../dist/ts/wysiwyg/inlineTag.d.ts | 10 + .../vditor@3.11.1/dist/ts/wysiwyg/input.d.ts | 1 + .../dist/ts/wysiwyg/processKeydown.d.ts | 2 + .../dist/ts/wysiwyg/renderDomByMd.d.ts | 5 + .../dist/ts/wysiwyg/setHeading.d.ts | 2 + .../dist/ts/wysiwyg/showCode.d.ts | 1 + .../dist/ts/wysiwyg/toolbarEvent.d.ts | 1 + .../vditor@3.11.1/dist/types/index.d.ts | 892 + .../static/articles/viewerjs/viewer.min.css | 9 + .../static/articles/viewerjs/viewer.min.js | 10 + src/main/resources/static/banner.txt | 10 + src/main/resources/templates/404.html | 138 + src/main/resources/templates/archives.html | 141 + src/main/resources/templates/article.html | 690 + .../resources/templates/articles-query.html | 105 + src/main/resources/templates/articles.html | 183 + src/main/resources/templates/categories.html | 143 + .../templates/component/article-tail.html | 25 + .../templates/component/article-top.html | 99 + .../templates/component/articles-list.html | 113 + .../templates/component/common-js.html | 144 + .../resources/templates/component/footer.html | 13 + .../resources/templates/component/head.html | 24 + .../templates/component/sidebar.html | 159 + src/main/resources/templates/index.html | 132 + src/main/resources/templates/tags.html | 107 + .../com/jmal/clouddisk/ConcurrencyText.java | 36 + .../com/jmal/clouddisk/EpubCoverTest.java | 94 + .../com/jmal/clouddisk/ExportSysDBText.java | 59 + .../java/com/jmal/clouddisk/FileSorter.java | 192 + .../com/jmal/clouddisk/FileWatchMonitor.java | 49 + .../java/com/jmal/clouddisk/GridFSTest.java | 38 + .../com/jmal/clouddisk/InitSysDBText.java | 38 + .../java/com/jmal/clouddisk/PdfCoverTest.java | 41 + .../java/com/jmal/clouddisk/RBACText.java | 24 + .../java/com/jmal/clouddisk/StdRandom.java | 82 + src/test/java/com/jmal/clouddisk/Test.java | 96 + .../com/jmal/clouddisk/UpdateJDKTest.java | 48 + .../java/com/jmal/clouddisk/WebpTest.java | 40 + .../com/jmal/clouddisk/WordCoverTest.java | 87 + .../clouddisk/ip2region/Ip2regionTest.java | 115 + .../jmal/clouddisk/lucene/ExcelSaxReader.java | 23 + .../com/jmal/clouddisk/lucene/IndexFiles.java | 201 + .../clouddisk/lucene/LargeExcelSaxReader.java | 62 + .../com/jmal/clouddisk/lucene/ReadExcel.java | 30 + .../jmal/clouddisk/lucene/ReadPDFTest.java | 52 + .../com/jmal/clouddisk/lucene/ReadPPTX.java | 31 + .../com/jmal/clouddisk/lucene/ReadWord.java | 26 + .../jmal/clouddisk/lucene/SheetHandler.java | 19 + .../com/jmal/clouddisk/mongodb/RegexTest.java | 65 + .../com/jmal/clouddisk/oss/AliyunOSSTest.java | 80 + .../jmal/clouddisk/oss/TencentOSSTest.java | 73 + tess4j/datapath/chi_sim.traineddata | Bin 0 -> 2469156 bytes upload.sh | 318 + 993 files changed, 96104 insertions(+) create mode 100644 .env-example create mode 100644 .github/release-drafter.yml create mode 100644 .github/workflows/build.yml create mode 100644 .github/workflows/build_jdk_ffmpeg.yml create mode 100644 .github/workflows/build_jmalcloud_base.yml create mode 100644 .github/workflows/merge-manifests.yml create mode 100644 .github/workflows/pushAliyun.yml create mode 100644 .github/workflows/release-drafter.yml create mode 100644 .github/workflows/test-build.yml create mode 100644 .github/workflows/test-native-build.yml create mode 100644 .gitignore create mode 100644 Dockerfile create mode 100644 LICENSE create mode 100644 README.md create mode 100644 docker-compose.base-aliyun-beijing.yml create mode 100644 docker-compose.base-aliyun-guangzhou.yml create mode 100644 docker-compose.base.proxy.yml create mode 100644 docker-compose.base.yml create mode 100644 docker-compose.example.yml create mode 100644 docker-entrypoint.sh create mode 100755 jc.sh create mode 100644 pom.xml create mode 100644 release-www.sh create mode 100644 src/main/java/com/jmal/clouddisk/JmalCloudApplication.java create mode 100644 src/main/java/com/jmal/clouddisk/acpect/LogOperatingAspect.java create mode 100644 src/main/java/com/jmal/clouddisk/acpect/PermissionAspect.java create mode 100644 src/main/java/com/jmal/clouddisk/annotation/AnnoManageUtil.java create mode 100644 src/main/java/com/jmal/clouddisk/annotation/LogOperatingFun.java create mode 100644 src/main/java/com/jmal/clouddisk/annotation/OperationType.java create mode 100644 src/main/java/com/jmal/clouddisk/annotation/Permission.java create mode 100644 src/main/java/com/jmal/clouddisk/config/EncryptionConfig.java create mode 100644 src/main/java/com/jmal/clouddisk/config/EncryptionKeyProvider.java create mode 100644 src/main/java/com/jmal/clouddisk/config/ErrorConfig.java create mode 100644 src/main/java/com/jmal/clouddisk/config/FileProperties.java create mode 100644 src/main/java/com/jmal/clouddisk/config/GlobalCorsConfig.java create mode 100644 src/main/java/com/jmal/clouddisk/config/JacksonConfig.java create mode 100644 src/main/java/com/jmal/clouddisk/config/MongoClientConfig.java create mode 100644 src/main/java/com/jmal/clouddisk/config/MyTomcatServletWebServerFactoryCustomizer.java create mode 100644 src/main/java/com/jmal/clouddisk/config/TotpConfig.java create mode 100644 src/main/java/com/jmal/clouddisk/config/WebConfig.java create mode 100644 src/main/java/com/jmal/clouddisk/config/WebFilter.java create mode 100644 src/main/java/com/jmal/clouddisk/config/YamlPropertyLoaderFactory.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/ArticlesController.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/FileViewController.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/record/LoginResponse.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/record/MfaSetupResponse.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/record/MfaVerifyRequest.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/rest/AuthController.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/rest/CategoryController.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/rest/CloudSettingController.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/rest/DirectLinkController.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/rest/FileController.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/rest/FileVersionController.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/rest/HealthCheckController.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/rest/LogController.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/rest/LuceneSearchController.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/rest/MarkDownController.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/rest/MenuController.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/rest/MfaController.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/rest/OcrController.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/rest/RoleController.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/rest/ShareController.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/rest/TagController.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/rest/UserController.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/rest/UserSettingController.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/rest/VideoController.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/rest/WebsiteSettingController.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/sse/Message.java create mode 100644 src/main/java/com/jmal/clouddisk/controller/sse/SseController.java create mode 100644 src/main/java/com/jmal/clouddisk/exception/CheckedFunction.java create mode 100644 src/main/java/com/jmal/clouddisk/exception/CommonException.java create mode 100644 src/main/java/com/jmal/clouddisk/exception/CommonExceptionHandler.java create mode 100644 src/main/java/com/jmal/clouddisk/exception/Either.java create mode 100644 src/main/java/com/jmal/clouddisk/exception/ExceptionType.java create mode 100644 src/main/java/com/jmal/clouddisk/ftp/FTPServerConfig.java create mode 100644 src/main/java/com/jmal/clouddisk/ftp/MyPropertiesUserManager.java create mode 100644 src/main/java/com/jmal/clouddisk/interceptor/AuthInterceptor.java create mode 100644 src/main/java/com/jmal/clouddisk/interceptor/DirectFileInterceptor.java create mode 100644 src/main/java/com/jmal/clouddisk/interceptor/FileInterceptor.java create mode 100644 src/main/java/com/jmal/clouddisk/interceptor/HeaderLocaleChangeInterceptor.java create mode 100644 src/main/java/com/jmal/clouddisk/interceptor/PreFileInterceptor.java create mode 100644 src/main/java/com/jmal/clouddisk/interceptor/ShareFileInterceptor.java create mode 100644 src/main/java/com/jmal/clouddisk/listener/FileListener.java create mode 100644 src/main/java/com/jmal/clouddisk/listener/FileMonitor.java create mode 100644 src/main/java/com/jmal/clouddisk/lucene/EtagService.java create mode 100644 src/main/java/com/jmal/clouddisk/lucene/IndexStatus.java create mode 100644 src/main/java/com/jmal/clouddisk/lucene/LuceneConfig.java create mode 100644 src/main/java/com/jmal/clouddisk/lucene/LuceneService.java create mode 100644 src/main/java/com/jmal/clouddisk/lucene/ReadContentService.java create mode 100644 src/main/java/com/jmal/clouddisk/lucene/RebuildIndexTaskService.java create mode 100644 src/main/java/com/jmal/clouddisk/lucene/SearchFileService.java create mode 100644 src/main/java/com/jmal/clouddisk/lucene/TaskProgress.java create mode 100644 src/main/java/com/jmal/clouddisk/lucene/TaskProgressService.java create mode 100644 src/main/java/com/jmal/clouddisk/lucene/TaskType.java create mode 100644 src/main/java/com/jmal/clouddisk/media/FFMPEGCommand.java create mode 100644 src/main/java/com/jmal/clouddisk/media/FFMPEGUtils.java create mode 100644 src/main/java/com/jmal/clouddisk/media/HeifUtils.java create mode 100644 src/main/java/com/jmal/clouddisk/media/TranscodeConfig.java create mode 100644 src/main/java/com/jmal/clouddisk/media/TranscodeStatus.java create mode 100644 src/main/java/com/jmal/clouddisk/media/VideoInfo.java create mode 100644 src/main/java/com/jmal/clouddisk/media/VideoInfoDO.java create mode 100644 src/main/java/com/jmal/clouddisk/media/VideoInfoUtil.java create mode 100644 src/main/java/com/jmal/clouddisk/media/VideoProcessService.java create mode 100644 src/main/java/com/jmal/clouddisk/model/ArchivesVO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/ArticleDTO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/ArticleParamDTO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/ArticleVO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/ArticlesQueryVO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/CategoryDO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/CategoryDTO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/CloudSettingDO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/CloudSettingDTO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/CommentDO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/DirectLink.java create mode 100644 src/main/java/com/jmal/clouddisk/model/EditTagDTO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/ExifInfo.java create mode 100644 src/main/java/com/jmal/clouddisk/model/FileBase.java create mode 100644 src/main/java/com/jmal/clouddisk/model/FileDocument.java create mode 100644 src/main/java/com/jmal/clouddisk/model/FileIndex.java create mode 100644 src/main/java/com/jmal/clouddisk/model/FileIntroVO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/FileType.java create mode 100644 src/main/java/com/jmal/clouddisk/model/GridFSBO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/HeartwingsDO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/LdapConfigDO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/LdapConfigDTO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/LogOperation.java create mode 100644 src/main/java/com/jmal/clouddisk/model/LogOperationDTO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/MarkdownBaseFile.java create mode 100644 src/main/java/com/jmal/clouddisk/model/MarkdownVO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/Metadata.java create mode 100644 src/main/java/com/jmal/clouddisk/model/Music.java create mode 100644 src/main/java/com/jmal/clouddisk/model/OperationPermission.java create mode 100644 src/main/java/com/jmal/clouddisk/model/OperationTips.java create mode 100644 src/main/java/com/jmal/clouddisk/model/Page.java create mode 100644 src/main/java/com/jmal/clouddisk/model/ShareDO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/ShareVO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/SharerDTO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/Tag.java create mode 100644 src/main/java/com/jmal/clouddisk/model/TagDO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/TagDTO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/Trash.java create mode 100644 src/main/java/com/jmal/clouddisk/model/UploadApiParamDTO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/UploadImageDTO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/UploadResponse.java create mode 100644 src/main/java/com/jmal/clouddisk/model/Urlset.java create mode 100644 src/main/java/com/jmal/clouddisk/model/UserAccessTokenDO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/UserAccessTokenDTO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/UserTokenDO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/WebsiteSettingDO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/WebsiteSettingDTO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/query/QueryBaseDTO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/query/QueryMenuDTO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/query/QueryRoleDTO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/query/QueryUserDTO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/query/SearchDTO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/query/SearchOptionHistoryDO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/rbac/ConsumerBase.java create mode 100644 src/main/java/com/jmal/clouddisk/model/rbac/ConsumerDO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/rbac/ConsumerDTO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/rbac/MenuDO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/rbac/MenuDTO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/rbac/RoleDO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/rbac/RoleDTO.java create mode 100644 src/main/java/com/jmal/clouddisk/model/rbac/UserLoginContext.java create mode 100644 src/main/java/com/jmal/clouddisk/ocr/CommonOcrService.java create mode 100644 src/main/java/com/jmal/clouddisk/ocr/IOcrService.java create mode 100644 src/main/java/com/jmal/clouddisk/ocr/OcrConfig.java create mode 100644 src/main/java/com/jmal/clouddisk/ocr/OcrEngine.java create mode 100644 src/main/java/com/jmal/clouddisk/ocr/OcrLiteOnnxService.java create mode 100644 src/main/java/com/jmal/clouddisk/ocr/OcrService.java create mode 100644 src/main/java/com/jmal/clouddisk/ocr/TesseractOcrConfig.java create mode 100644 src/main/java/com/jmal/clouddisk/ocr/TesseractService.java create mode 100644 src/main/java/com/jmal/clouddisk/office/OfficeConfigService.java create mode 100644 src/main/java/com/jmal/clouddisk/office/OfficeController.java create mode 100644 src/main/java/com/jmal/clouddisk/office/OfficeHistory.java create mode 100644 src/main/java/com/jmal/clouddisk/office/callbacks/Callback.java create mode 100644 src/main/java/com/jmal/clouddisk/office/callbacks/CallbackHandler.java create mode 100644 src/main/java/com/jmal/clouddisk/office/callbacks/Status.java create mode 100644 src/main/java/com/jmal/clouddisk/office/callbacks/implementations/EditCallback.java create mode 100644 src/main/java/com/jmal/clouddisk/office/callbacks/implementations/EditNothingCallback.java create mode 100644 src/main/java/com/jmal/clouddisk/office/callbacks/implementations/ForceSaveCallback.java create mode 100644 src/main/java/com/jmal/clouddisk/office/callbacks/implementations/SaveCallback.java create mode 100644 src/main/java/com/jmal/clouddisk/office/model/Action.java create mode 100644 src/main/java/com/jmal/clouddisk/office/model/OfficeConfigDO.java create mode 100644 src/main/java/com/jmal/clouddisk/office/model/OfficeConfigDTO.java create mode 100644 src/main/java/com/jmal/clouddisk/office/model/Track.java create mode 100644 src/main/java/com/jmal/clouddisk/office/model/enums/Action.java create mode 100644 src/main/java/com/jmal/clouddisk/oss/AbstractOssObject.java create mode 100644 src/main/java/com/jmal/clouddisk/oss/BaseOssService.java create mode 100644 src/main/java/com/jmal/clouddisk/oss/BucketInfo.java create mode 100644 src/main/java/com/jmal/clouddisk/oss/FileInfo.java create mode 100644 src/main/java/com/jmal/clouddisk/oss/IOssService.java create mode 100644 src/main/java/com/jmal/clouddisk/oss/OssConfigService.java create mode 100644 src/main/java/com/jmal/clouddisk/oss/OssInputStream.java create mode 100644 src/main/java/com/jmal/clouddisk/oss/PlatformOSS.java create mode 100644 src/main/java/com/jmal/clouddisk/oss/S3ObjectSummary.java create mode 100644 src/main/java/com/jmal/clouddisk/oss/TempFileObject.java create mode 100644 src/main/java/com/jmal/clouddisk/oss/aliyun/AliyunOssObject.java create mode 100644 src/main/java/com/jmal/clouddisk/oss/aliyun/AliyunOssService.java create mode 100644 src/main/java/com/jmal/clouddisk/oss/minio/MinIOObject.java create mode 100644 src/main/java/com/jmal/clouddisk/oss/minio/MinIOService.java create mode 100644 src/main/java/com/jmal/clouddisk/oss/minio/MinIoClient.java create mode 100644 src/main/java/com/jmal/clouddisk/oss/tencent/TencentOssObject.java create mode 100644 src/main/java/com/jmal/clouddisk/oss/tencent/TencentOssService.java create mode 100644 src/main/java/com/jmal/clouddisk/oss/web/OssController.java create mode 100644 src/main/java/com/jmal/clouddisk/oss/web/STSObjectVO.java create mode 100644 src/main/java/com/jmal/clouddisk/oss/web/WebOssCommonService.java create mode 100644 src/main/java/com/jmal/clouddisk/oss/web/WebOssCopyFileService.java create mode 100644 src/main/java/com/jmal/clouddisk/oss/web/WebOssService.java create mode 100644 src/main/java/com/jmal/clouddisk/oss/web/model/OssConfigDO.java create mode 100644 src/main/java/com/jmal/clouddisk/oss/web/model/OssConfigDTO.java create mode 100644 src/main/java/com/jmal/clouddisk/repository/DataSource.java create mode 100644 src/main/java/com/jmal/clouddisk/repository/IAuthDAO.java create mode 100644 src/main/java/com/jmal/clouddisk/repository/impl/AuthDAOImpl.java create mode 100644 src/main/java/com/jmal/clouddisk/service/Constants.java create mode 100644 src/main/java/com/jmal/clouddisk/service/IAuthService.java create mode 100644 src/main/java/com/jmal/clouddisk/service/IFileService.java create mode 100644 src/main/java/com/jmal/clouddisk/service/IFileVersionService.java create mode 100644 src/main/java/com/jmal/clouddisk/service/IMarkdownService.java create mode 100644 src/main/java/com/jmal/clouddisk/service/IShareService.java create mode 100644 src/main/java/com/jmal/clouddisk/service/IUserService.java create mode 100644 src/main/java/com/jmal/clouddisk/service/impl/AuthServiceImpl.java create mode 100644 src/main/java/com/jmal/clouddisk/service/impl/CategoryService.java create mode 100644 src/main/java/com/jmal/clouddisk/service/impl/CommonFileService.java create mode 100644 src/main/java/com/jmal/clouddisk/service/impl/DirectLinkService.java create mode 100644 src/main/java/com/jmal/clouddisk/service/impl/FileServiceImpl.java create mode 100644 src/main/java/com/jmal/clouddisk/service/impl/FileVersionServiceImpl.java create mode 100644 src/main/java/com/jmal/clouddisk/service/impl/LogService.java create mode 100644 src/main/java/com/jmal/clouddisk/service/impl/MarkdownServiceImpl.java create mode 100644 src/main/java/com/jmal/clouddisk/service/impl/MenuService.java create mode 100644 src/main/java/com/jmal/clouddisk/service/impl/MultipartUpload.java create mode 100644 src/main/java/com/jmal/clouddisk/service/impl/RoleService.java create mode 100644 src/main/java/com/jmal/clouddisk/service/impl/SettingService.java create mode 100644 src/main/java/com/jmal/clouddisk/service/impl/ShareServiceImpl.java create mode 100644 src/main/java/com/jmal/clouddisk/service/impl/TagService.java create mode 100644 src/main/java/com/jmal/clouddisk/service/impl/TotpService.java create mode 100644 src/main/java/com/jmal/clouddisk/service/impl/UserLoginHolder.java create mode 100644 src/main/java/com/jmal/clouddisk/service/impl/UserServiceImpl.java create mode 100644 src/main/java/com/jmal/clouddisk/swagger/OpenApiConfig.java create mode 100644 src/main/java/com/jmal/clouddisk/util/AudioFileUtils.java create mode 100644 src/main/java/com/jmal/clouddisk/util/CaffeineUtil.java create mode 100644 src/main/java/com/jmal/clouddisk/util/CalcMd5.java create mode 100644 src/main/java/com/jmal/clouddisk/util/CompressUtils.java create mode 100644 src/main/java/com/jmal/clouddisk/util/FFMPEGUtils.java create mode 100644 src/main/java/com/jmal/clouddisk/util/FastImageInfo.java create mode 100644 src/main/java/com/jmal/clouddisk/util/FileContentTypeUtils.java create mode 100644 src/main/java/com/jmal/clouddisk/util/FileContentUtil.java create mode 100644 src/main/java/com/jmal/clouddisk/util/FileNameUtils.java create mode 100644 src/main/java/com/jmal/clouddisk/util/HashUtil.java create mode 100644 src/main/java/com/jmal/clouddisk/util/HybridThrottleExecutor.java create mode 100644 src/main/java/com/jmal/clouddisk/util/ImageExifUtil.java create mode 100644 src/main/java/com/jmal/clouddisk/util/MapUtils.java create mode 100644 src/main/java/com/jmal/clouddisk/util/MessageUtil.java create mode 100644 src/main/java/com/jmal/clouddisk/util/MongoUtil.java create mode 100644 src/main/java/com/jmal/clouddisk/util/MyFileUtils.java create mode 100644 src/main/java/com/jmal/clouddisk/util/PasswordHash.java create mode 100644 src/main/java/com/jmal/clouddisk/util/ResponseResult.java create mode 100644 src/main/java/com/jmal/clouddisk/util/ResultUtil.java create mode 100644 src/main/java/com/jmal/clouddisk/util/ShortSignedIdUtil.java create mode 100644 src/main/java/com/jmal/clouddisk/util/StringUtil.java create mode 100644 src/main/java/com/jmal/clouddisk/util/SystemUtil.java create mode 100644 src/main/java/com/jmal/clouddisk/util/TesseractUtil.java create mode 100644 src/main/java/com/jmal/clouddisk/util/ThrottleExecutor.java create mode 100644 src/main/java/com/jmal/clouddisk/util/TimeUntils.java create mode 100644 src/main/java/com/jmal/clouddisk/util/TokenUtil.java create mode 100644 src/main/java/com/jmal/clouddisk/util/UrlEncodingChecker.java create mode 100644 src/main/java/com/jmal/clouddisk/webdav/BasicAuthenticator.java create mode 100644 src/main/java/com/jmal/clouddisk/webdav/MyDirResourceSet.java create mode 100644 src/main/java/com/jmal/clouddisk/webdav/MyRealm.java create mode 100644 src/main/java/com/jmal/clouddisk/webdav/MyStandardRoot.java create mode 100644 src/main/java/com/jmal/clouddisk/webdav/MyWebdavServlet.java create mode 100644 src/main/java/com/jmal/clouddisk/webdav/WebdavAuthenticator.java create mode 100644 src/main/java/com/jmal/clouddisk/webdav/WebdavConfig.java create mode 100644 src/main/java/com/jmal/clouddisk/webdav/WebdavMethod.java create mode 100644 src/main/java/com/jmal/clouddisk/webdav/WebdavServlet.java create mode 100644 src/main/java/com/jmal/clouddisk/webdav/resource/FileResourceSet.java create mode 100644 src/main/java/com/jmal/clouddisk/webdav/resource/LocalFileResource.java create mode 100644 src/main/java/com/jmal/clouddisk/webdav/resource/OssFileResource.java create mode 100644 src/main/resources/META-INF/additional-spring-configuration-metadata.json create mode 100644 src/main/resources/application-prod.yml create mode 100644 src/main/resources/application-test.yml create mode 100644 src/main/resources/application.yml create mode 100644 src/main/resources/banner.txt create mode 100644 src/main/resources/db/menu.json create mode 100644 src/main/resources/db/role.json create mode 100644 src/main/resources/file.yml create mode 100644 src/main/resources/i18n/messages.properties create mode 100644 src/main/resources/i18n/messages_en_US.properties create mode 100644 src/main/resources/i18n/messages_zh_CN.properties create mode 100644 src/main/resources/logback.xml create mode 100644 src/main/resources/static/articles/css/dark/index-2.15.0.css create mode 100644 src/main/resources/static/articles/css/independent.css create mode 100644 src/main/resources/static/articles/css/light/index-2.15.0.css create mode 100644 src/main/resources/static/articles/favicon.ico create mode 100644 src/main/resources/static/articles/font-awesome/free-6.4.2/css/all.min.css create mode 100644 src/main/resources/static/articles/font-awesome/free-6.4.2/webfonts/fa-brands-400.ttf create mode 100644 src/main/resources/static/articles/font-awesome/free-6.4.2/webfonts/fa-brands-400.woff2 create mode 100644 src/main/resources/static/articles/font-awesome/free-6.4.2/webfonts/fa-regular-400.ttf create mode 100644 src/main/resources/static/articles/font-awesome/free-6.4.2/webfonts/fa-regular-400.woff2 create mode 100644 src/main/resources/static/articles/font-awesome/free-6.4.2/webfonts/fa-solid-900.ttf create mode 100644 src/main/resources/static/articles/font-awesome/free-6.4.2/webfonts/fa-solid-900.woff2 create mode 100644 src/main/resources/static/articles/font-awesome/free-6.4.2/webfonts/fa-v4compatibility.ttf create mode 100644 src/main/resources/static/articles/font-awesome/free-6.4.2/webfonts/fa-v4compatibility.woff2 create mode 100644 src/main/resources/static/articles/img/beian.png create mode 100644 src/main/resources/static/articles/js/echarts-wordcloud.min.js create mode 100644 src/main/resources/static/articles/js/echarts.min.js create mode 100644 src/main/resources/static/articles/js/font_2024484_qwtkvngfp5b.js create mode 100644 src/main/resources/static/articles/js/jquery-3.5.1.min.js create mode 100644 src/main/resources/static/articles/js/jquery.pjax.js create mode 100644 src/main/resources/static/articles/layui/css/layui.css create mode 100644 src/main/resources/static/articles/layui/css/layui.mobile.css create mode 100644 src/main/resources/static/articles/layui/css/modules/code.css create mode 100644 src/main/resources/static/articles/layui/css/modules/laydate/default/laydate.css create mode 100644 src/main/resources/static/articles/layui/css/modules/layer/default/icon-ext.png create mode 100644 src/main/resources/static/articles/layui/css/modules/layer/default/icon.png create mode 100644 src/main/resources/static/articles/layui/css/modules/layer/default/layer.css create mode 100644 src/main/resources/static/articles/layui/css/modules/layer/default/loading-0.gif create mode 100644 src/main/resources/static/articles/layui/css/modules/layer/default/loading-1.gif create mode 100644 src/main/resources/static/articles/layui/css/modules/layer/default/loading-2.gif create mode 100644 src/main/resources/static/articles/layui/font/iconfont.eot create mode 100644 src/main/resources/static/articles/layui/font/iconfont.svg create mode 100644 src/main/resources/static/articles/layui/font/iconfont.ttf create mode 100644 src/main/resources/static/articles/layui/font/iconfont.woff create mode 100644 src/main/resources/static/articles/layui/font/iconfont.woff2 create mode 100644 src/main/resources/static/articles/layui/images/face/0.gif create mode 100644 src/main/resources/static/articles/layui/images/face/1.gif create mode 100644 src/main/resources/static/articles/layui/images/face/10.gif create mode 100644 src/main/resources/static/articles/layui/images/face/11.gif create mode 100644 src/main/resources/static/articles/layui/images/face/12.gif create mode 100644 src/main/resources/static/articles/layui/images/face/13.gif create mode 100644 src/main/resources/static/articles/layui/images/face/14.gif create mode 100644 src/main/resources/static/articles/layui/images/face/15.gif create mode 100644 src/main/resources/static/articles/layui/images/face/16.gif create mode 100644 src/main/resources/static/articles/layui/images/face/17.gif create mode 100644 src/main/resources/static/articles/layui/images/face/18.gif create mode 100644 src/main/resources/static/articles/layui/images/face/19.gif create mode 100644 src/main/resources/static/articles/layui/images/face/2.gif create mode 100644 src/main/resources/static/articles/layui/images/face/20.gif create mode 100644 src/main/resources/static/articles/layui/images/face/21.gif create mode 100644 src/main/resources/static/articles/layui/images/face/22.gif create mode 100644 src/main/resources/static/articles/layui/images/face/23.gif create mode 100644 src/main/resources/static/articles/layui/images/face/24.gif create mode 100644 src/main/resources/static/articles/layui/images/face/25.gif create mode 100644 src/main/resources/static/articles/layui/images/face/26.gif create mode 100644 src/main/resources/static/articles/layui/images/face/27.gif create mode 100644 src/main/resources/static/articles/layui/images/face/28.gif create mode 100644 src/main/resources/static/articles/layui/images/face/29.gif create mode 100644 src/main/resources/static/articles/layui/images/face/3.gif create mode 100644 src/main/resources/static/articles/layui/images/face/30.gif create mode 100644 src/main/resources/static/articles/layui/images/face/31.gif create mode 100644 src/main/resources/static/articles/layui/images/face/32.gif create mode 100644 src/main/resources/static/articles/layui/images/face/33.gif create mode 100644 src/main/resources/static/articles/layui/images/face/34.gif create mode 100644 src/main/resources/static/articles/layui/images/face/35.gif create mode 100644 src/main/resources/static/articles/layui/images/face/36.gif create mode 100644 src/main/resources/static/articles/layui/images/face/37.gif create mode 100644 src/main/resources/static/articles/layui/images/face/38.gif create mode 100644 src/main/resources/static/articles/layui/images/face/39.gif create mode 100644 src/main/resources/static/articles/layui/images/face/4.gif create mode 100644 src/main/resources/static/articles/layui/images/face/40.gif create mode 100644 src/main/resources/static/articles/layui/images/face/41.gif create mode 100644 src/main/resources/static/articles/layui/images/face/42.gif create mode 100644 src/main/resources/static/articles/layui/images/face/43.gif create mode 100644 src/main/resources/static/articles/layui/images/face/44.gif create mode 100644 src/main/resources/static/articles/layui/images/face/45.gif create mode 100644 src/main/resources/static/articles/layui/images/face/46.gif create mode 100644 src/main/resources/static/articles/layui/images/face/47.gif create mode 100644 src/main/resources/static/articles/layui/images/face/48.gif create mode 100644 src/main/resources/static/articles/layui/images/face/49.gif create mode 100644 src/main/resources/static/articles/layui/images/face/5.gif create mode 100644 src/main/resources/static/articles/layui/images/face/50.gif create mode 100644 src/main/resources/static/articles/layui/images/face/51.gif create mode 100644 src/main/resources/static/articles/layui/images/face/52.gif create mode 100644 src/main/resources/static/articles/layui/images/face/53.gif create mode 100644 src/main/resources/static/articles/layui/images/face/54.gif create mode 100644 src/main/resources/static/articles/layui/images/face/55.gif create mode 100644 src/main/resources/static/articles/layui/images/face/56.gif create mode 100644 src/main/resources/static/articles/layui/images/face/57.gif create mode 100644 src/main/resources/static/articles/layui/images/face/58.gif create mode 100644 src/main/resources/static/articles/layui/images/face/59.gif create mode 100644 src/main/resources/static/articles/layui/images/face/6.gif create mode 100644 src/main/resources/static/articles/layui/images/face/60.gif create mode 100644 src/main/resources/static/articles/layui/images/face/61.gif create mode 100644 src/main/resources/static/articles/layui/images/face/62.gif create mode 100644 src/main/resources/static/articles/layui/images/face/63.gif create mode 100644 src/main/resources/static/articles/layui/images/face/64.gif create mode 100644 src/main/resources/static/articles/layui/images/face/65.gif create mode 100644 src/main/resources/static/articles/layui/images/face/66.gif create mode 100644 src/main/resources/static/articles/layui/images/face/67.gif create mode 100644 src/main/resources/static/articles/layui/images/face/68.gif create mode 100644 src/main/resources/static/articles/layui/images/face/69.gif create mode 100644 src/main/resources/static/articles/layui/images/face/7.gif create mode 100644 src/main/resources/static/articles/layui/images/face/70.gif create mode 100644 src/main/resources/static/articles/layui/images/face/71.gif create mode 100644 src/main/resources/static/articles/layui/images/face/8.gif create mode 100644 src/main/resources/static/articles/layui/images/face/9.gif create mode 100644 src/main/resources/static/articles/layui/lay/modules/carousel.js create mode 100644 src/main/resources/static/articles/layui/lay/modules/code.js create mode 100644 src/main/resources/static/articles/layui/lay/modules/colorpicker.js create mode 100644 src/main/resources/static/articles/layui/lay/modules/element.js create mode 100644 src/main/resources/static/articles/layui/lay/modules/flow.js create mode 100644 src/main/resources/static/articles/layui/lay/modules/form.js create mode 100644 src/main/resources/static/articles/layui/lay/modules/jquery.js create mode 100644 src/main/resources/static/articles/layui/lay/modules/laydate.js create mode 100644 src/main/resources/static/articles/layui/lay/modules/layedit.js create mode 100644 src/main/resources/static/articles/layui/lay/modules/layer.js create mode 100644 src/main/resources/static/articles/layui/lay/modules/laypage.js create mode 100644 src/main/resources/static/articles/layui/lay/modules/laytpl.js create mode 100644 src/main/resources/static/articles/layui/lay/modules/mobile.js create mode 100644 src/main/resources/static/articles/layui/lay/modules/rate.js create mode 100644 src/main/resources/static/articles/layui/lay/modules/slider.js create mode 100644 src/main/resources/static/articles/layui/lay/modules/table.js create mode 100644 src/main/resources/static/articles/layui/lay/modules/transfer.js create mode 100644 src/main/resources/static/articles/layui/lay/modules/tree.js create mode 100644 src/main/resources/static/articles/layui/lay/modules/upload.js create mode 100644 src/main/resources/static/articles/layui/lay/modules/util.js create mode 100644 src/main/resources/static/articles/layui/layui.all.js create mode 100644 src/main/resources/static/articles/layui/layui.js create mode 100644 src/main/resources/static/articles/robots.txt create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/css/content-theme/ant-design.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/css/content-theme/custom-dark.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/css/content-theme/custom-light.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/css/content-theme/dark.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/css/content-theme/light.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/css/content-theme/wechat.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/b3log.png create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/chainbook.png create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/doge.png create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/hacpai.png create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/huaji.gif create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/latke.png create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/liandi.png create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/lute.png create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/octocat.png create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/pipe.png create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/siyuan.png create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/solo.png create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/sym.png create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/trollface.png create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/vditor.png create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/wide.png create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/wulian.png create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/images/img-loading.svg create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/images/logo.png create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/index.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/index.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/index.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/index.min.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/abcjs/abcjs_basic.min.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/echarts/echarts.min.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/flowchart.js/flowchart.min.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/graphviz/full.render.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/graphviz/viz.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/LICENSE create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/highlight.min.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/a11y-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/a11y-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/agate.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/an-old-hope.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/androidstudio.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/ant-design.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/arduino-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/arta.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/ascetic.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/atom-one-dark-reasonable.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/atom-one-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/atom-one-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/3024.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/apathy.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/apprentice.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ashes.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-cave-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-cave.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-dune-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-dune.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-estuary-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-estuary.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-forest-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-forest.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-heath-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-heath.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-lakeside-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-lakeside.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-plateau-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-plateau.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-savanna-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-savanna.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-seaside-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-seaside.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-sulphurpool-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-sulphurpool.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atlas.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/bespin.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-bathory.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-burzum.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-dark-funeral.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-gorgoroth.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-immortal.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-khold.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-marduk.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-mayhem.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-nile.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-venom.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/brewer.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/bright.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/brogrammer.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/brush-trees-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/brush-trees.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/chalk.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/circus.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/classic-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/classic-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/codeschool.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/colors.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/cupcake.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/cupertino.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/danqing.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/darcula.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/dark-violet.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/darkmoss.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/darktooth.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/decaf.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/default-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/default-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/dirtysea.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/dracula.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/edge-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/edge-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/eighties.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/embers.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/equilibrium-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/equilibrium-gray-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/equilibrium-gray-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/equilibrium-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/espresso.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/eva-dim.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/eva.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/flat.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/framer.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/fruit-soda.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gigavolt.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/github.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/google-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/google-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/grayscale-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/grayscale-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/green-screen.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-dark-hard.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-dark-medium.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-dark-pale.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-dark-soft.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-light-hard.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-light-medium.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-light-soft.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/hardcore.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/harmonic16-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/harmonic16-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/heetch-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/heetch-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/helios.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/hopscotch.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/horizon-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/horizon-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/humanoid-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/humanoid-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ia-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ia-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/icy-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ir-black.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/isotope.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/kimber.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/london-tube.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/macintosh.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/marrakesh.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/materia.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/material-darker.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/material-lighter.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/material-palenight.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/material-vivid.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/material.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/mellow-purple.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/mexico-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/mocha.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/monokai.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/nebula.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/nord.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/nova.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ocean.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/oceanicnext.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/one-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/onedark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/outrun-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/papercolor-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/papercolor-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/paraiso.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/pasque.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/phd.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/pico.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/pop.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/porple.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/qualia.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/railscasts.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/rebecca.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ros-pine-dawn.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ros-pine-moon.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ros-pine.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/sagelight.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/sandcastle.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/seti-ui.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/shapeshifter.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/silk-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/silk-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/snazzy.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/solar-flare-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/solar-flare.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/solarized-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/solarized-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/spacemacs.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/summercamp.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/summerfruit-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/summerfruit-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/synth-midnight-terminal-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/synth-midnight-terminal-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/tango.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/tender.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/tomorrow-night.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/tomorrow.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/twilight.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/unikitty-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/unikitty-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/vulcan.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-10-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-10.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-95-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-95.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-high-contrast-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-high-contrast.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-nt-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-nt.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/woodland.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/xcode-dusk.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/zenburn.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/brown-paper.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/brown-papersq.png create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/codepen-embed.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/color-brewer.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/default.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/devibeans.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/docco.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/far.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/felipec.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/foundation.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/github-dark-dimmed.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/github-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/github.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/gml.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/googlecode.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/gradient-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/gradient-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/grayscale.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/hybrid.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/idea.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/intellij-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/ir-black.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/isbl-editor-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/isbl-editor-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/kimbie-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/kimbie-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/lightfair.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/lioshi.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/magula.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/mono-blue.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/monokai-sublime.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/monokai.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/night-owl.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/nnfx-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/nnfx-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/nord.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/obsidian.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/panda-syntax-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/panda-syntax-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/paraiso-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/paraiso-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/pojoaque.jpg create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/pojoaque.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/purebasic.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/qtcreator-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/qtcreator-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/rainbow.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/routeros.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/school-book.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/shades-of-purple.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/srcery.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/stackoverflow-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/stackoverflow-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/sunburst.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/tokyo-night-dark.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/tokyo-night-light.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/tomorrow-night-blue.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/tomorrow-night-bright.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/vs.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/vs2015.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/xcode.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/xt256.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/third-languages.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/de_DE.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/en_US.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/fr_FR.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/ja_JP.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/ko_KR.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/pt_BR.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/ru_RU.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/sv_SE.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/zh_CN.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/zh_TW.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/icons/ant.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/icons/material.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_AMS-Regular.ttf create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_AMS-Regular.woff create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_AMS-Regular.woff2 create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Caligraphic-Bold.ttf create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Caligraphic-Bold.woff create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Caligraphic-Bold.woff2 create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Caligraphic-Regular.ttf create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Caligraphic-Regular.woff create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Caligraphic-Regular.woff2 create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Fraktur-Bold.ttf create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Fraktur-Bold.woff create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Fraktur-Bold.woff2 create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Fraktur-Regular.ttf create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Fraktur-Regular.woff create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Fraktur-Regular.woff2 create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Bold.ttf create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Bold.woff create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Bold.woff2 create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-BoldItalic.ttf create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-BoldItalic.woff create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-BoldItalic.woff2 create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Italic.ttf create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Italic.woff create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Italic.woff2 create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Regular.ttf create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Regular.woff create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Regular.woff2 create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Math-BoldItalic.ttf create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Math-BoldItalic.woff create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Math-BoldItalic.woff2 create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Math-Italic.ttf create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Math-Italic.woff create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Math-Italic.woff2 create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Bold.ttf create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Bold.woff create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Bold.woff2 create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Italic.ttf create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Italic.woff create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Italic.woff2 create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Regular.ttf create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Regular.woff create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Regular.woff2 create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Script-Regular.ttf create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Script-Regular.woff create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Script-Regular.woff2 create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size1-Regular.ttf create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size1-Regular.woff create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size1-Regular.woff2 create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size2-Regular.ttf create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size2-Regular.woff create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size2-Regular.woff2 create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size3-Regular.ttf create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size3-Regular.woff create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size3-Regular.woff2 create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size4-Regular.ttf create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size4-Regular.woff create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size4-Regular.woff2 create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Typewriter-Regular.ttf create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Typewriter-Regular.woff create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Typewriter-Regular.woff2 create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/katex.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/katex.min.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/mhchem.min.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/lute/lute.min.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/markmap/katex.min.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/markmap/markmap.min.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/markmap/prism.css create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/LICENSE create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/a11y/assistive-mml.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/a11y/complexity.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/a11y/explorer.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/a11y/semantic-enrich.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/asciimath.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/mml.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/mml/entities.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex-base.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex-full.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/action.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/all-packages.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/ams.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/amscd.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/autoload.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/bbox.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/boldsymbol.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/braket.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/bussproofs.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/cancel.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/color.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/colorV2.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/configMacros.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/enclose.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/extpfeil.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/html.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/mhchem.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/newcommand.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/noerrors.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/noundefined.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/physics.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/require.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/tagFormat.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/textmacros.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/unicode.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/verb.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/sre/mathmaps/de.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/sre/mathmaps/en.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/sre/mathmaps/es.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/sre/mathmaps/fr.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/sre/mathmaps/mathmaps_ie.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/sre/mathmaps/nemeth.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/sre/sre-node.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/sre/sre_browser.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/tex-svg-full.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/mermaid/mermaid.min.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/plantuml/plantuml-encoder.min.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/js/smiles-drawer/smiles-drawer.min.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/method.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/method.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/method.min.js create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/constants.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/devtools/index.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/export/index.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/hint/index.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/ir/expandMarker.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/ir/highlightToolbarIR.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/ir/index.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/ir/input.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/ir/process.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/ir/processKeydown.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/SMILESRender.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/abcRender.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/adapterRender.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/anchorRender.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/chartRender.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/codeRender.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/flowchartRender.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/getHTML.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/getMarkdown.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/graphvizRender.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/highlightRender.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/lazyLoadImageRender.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/markmapRender.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/mathRender.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/mediaRender.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/mermaidRender.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/mindmapRender.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/outlineRender.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/plantumlRender.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/previewRender.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/setLute.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/speechRender.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/outline/index.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/preview/image.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/preview/index.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/resize/index.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/sv/combineFootnote.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/sv/index.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/sv/inputEvent.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/sv/process.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/sv/processKeydown.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/tip/index.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Both.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Br.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/CodeTheme.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/ContentTheme.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Counter.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Custom.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Devtools.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Divider.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/EditMode.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Emoji.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Export.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Fullscreen.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Headings.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Help.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Indent.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Info.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/InsertAfter.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/InsertBefore.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/MenuItem.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Outdent.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Outline.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Preview.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Record.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Redo.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Undo.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Upload.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/index.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/setToolbar.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/ui/initUI.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/ui/setCodeTheme.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/ui/setContentTheme.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/ui/setPreviewMode.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/ui/setTheme.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/undo/index.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/upload/getElement.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/upload/index.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/upload/setHeaders.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/Options.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/RecordMedia.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/addScript.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/addStyle.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/code160to32.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/compatibility.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/editorCommonEvent.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/fixBrowserBehavior.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/function.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/getSelectText.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/hasClosest.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/hasClosestByHeadings.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/highlightToolbar.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/hotKey.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/log.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/merge.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/processCode.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/selection.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/toc.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/afterRenderEvent.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/highlightToolbarWYSIWYG.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/index.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/inlineTag.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/input.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/processKeydown.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/renderDomByMd.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/setHeading.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/showCode.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/toolbarEvent.d.ts create mode 100644 src/main/resources/static/articles/vditor@3.11.1/dist/types/index.d.ts create mode 100644 src/main/resources/static/articles/viewerjs/viewer.min.css create mode 100644 src/main/resources/static/articles/viewerjs/viewer.min.js create mode 100644 src/main/resources/static/banner.txt create mode 100644 src/main/resources/templates/404.html create mode 100644 src/main/resources/templates/archives.html create mode 100644 src/main/resources/templates/article.html create mode 100644 src/main/resources/templates/articles-query.html create mode 100644 src/main/resources/templates/articles.html create mode 100644 src/main/resources/templates/categories.html create mode 100644 src/main/resources/templates/component/article-tail.html create mode 100644 src/main/resources/templates/component/article-top.html create mode 100644 src/main/resources/templates/component/articles-list.html create mode 100644 src/main/resources/templates/component/common-js.html create mode 100644 src/main/resources/templates/component/footer.html create mode 100644 src/main/resources/templates/component/head.html create mode 100644 src/main/resources/templates/component/sidebar.html create mode 100644 src/main/resources/templates/index.html create mode 100644 src/main/resources/templates/tags.html create mode 100644 src/test/java/com/jmal/clouddisk/ConcurrencyText.java create mode 100644 src/test/java/com/jmal/clouddisk/EpubCoverTest.java create mode 100644 src/test/java/com/jmal/clouddisk/ExportSysDBText.java create mode 100644 src/test/java/com/jmal/clouddisk/FileSorter.java create mode 100644 src/test/java/com/jmal/clouddisk/FileWatchMonitor.java create mode 100644 src/test/java/com/jmal/clouddisk/GridFSTest.java create mode 100644 src/test/java/com/jmal/clouddisk/InitSysDBText.java create mode 100644 src/test/java/com/jmal/clouddisk/PdfCoverTest.java create mode 100644 src/test/java/com/jmal/clouddisk/RBACText.java create mode 100644 src/test/java/com/jmal/clouddisk/StdRandom.java create mode 100644 src/test/java/com/jmal/clouddisk/Test.java create mode 100644 src/test/java/com/jmal/clouddisk/UpdateJDKTest.java create mode 100644 src/test/java/com/jmal/clouddisk/WebpTest.java create mode 100644 src/test/java/com/jmal/clouddisk/WordCoverTest.java create mode 100644 src/test/java/com/jmal/clouddisk/ip2region/Ip2regionTest.java create mode 100644 src/test/java/com/jmal/clouddisk/lucene/ExcelSaxReader.java create mode 100644 src/test/java/com/jmal/clouddisk/lucene/IndexFiles.java create mode 100644 src/test/java/com/jmal/clouddisk/lucene/LargeExcelSaxReader.java create mode 100644 src/test/java/com/jmal/clouddisk/lucene/ReadExcel.java create mode 100644 src/test/java/com/jmal/clouddisk/lucene/ReadPDFTest.java create mode 100644 src/test/java/com/jmal/clouddisk/lucene/ReadPPTX.java create mode 100644 src/test/java/com/jmal/clouddisk/lucene/ReadWord.java create mode 100644 src/test/java/com/jmal/clouddisk/lucene/SheetHandler.java create mode 100644 src/test/java/com/jmal/clouddisk/mongodb/RegexTest.java create mode 100644 src/test/java/com/jmal/clouddisk/oss/AliyunOSSTest.java create mode 100644 src/test/java/com/jmal/clouddisk/oss/TencentOSSTest.java create mode 100644 tess4j/datapath/chi_sim.traineddata create mode 100644 upload.sh diff --git a/.env-example b/.env-example new file mode 100644 index 0000000..f2a228d --- /dev/null +++ b/.env-example @@ -0,0 +1,9 @@ +APP_PORT=7070 +BLOG_PORT=7071 +SERVER_PORT=7072 +FTP_SERVER_PORT=7073 +CONTAINER_NAME_PREFIX=jmalcloud +RESOURCE_DB_PATH=./docker/jmalcloud/mongodb +RESOURCE_FILE_PATH=./docker/jmalcloud/files +OFFICE_IMAGE_VERSION=7.0.0.132 +DRAWIO_IMAGE_VERSION=20.2.3 diff --git a/.github/release-drafter.yml b/.github/release-drafter.yml new file mode 100644 index 0000000..0db8940 --- /dev/null +++ b/.github/release-drafter.yml @@ -0,0 +1,39 @@ +# .github/release-drafter.yml +name-template: 'v$NEXT_PATCH_VERSION' +tag-template: 'v$NEXT_PATCH_VERSION' +categories: + - title: '新功能 ✨' + labels: + - 'feature' + - title: '修复 🐛' + labels: + - 'bug' + - title: '优化 ⚡️' + labels: + - 'improvement' +change-template: '- $TITLE (#$NUMBER)' +no-changes-template: '- No changes' +template: | + + [docker-docker.yml](https://github.com/jamebal/jmal-cloud-server/blob/master/docker-compose.base.yml) + + #### 更新前备份数据库 + + ```shell + docker exec -it jmalcloud_mongodb mongodump -d jmalcloud -o /dump/$PREVIOUS_TAG --gzip --quiet + ``` + + ```shell + docker-compose pull && docker-compose up -d --remove-orphans + ``` + + #### 清理旧镜像 + ```shell + docker rmi $(docker images --filter "dangling=true" | grep "jmalcloud" | awk '{print $3}') + ``` + + ## Changes in this release: + + $CHANGES + + **Full Changelog**: [$PREVIOUS_TAG...v$NEXT_PATCH_VERSION](https://github.com/jamebal/jmal-cloud-server/compare/$PREVIOUS_TAG...v$NEXT_PATCH_VERSION) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..c60d52b --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,59 @@ +name: Build jmalcloud Docker Image + +on: + workflow_dispatch: + release: + types: [published] + tags: [v*] + +jobs: + build-and-push: + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Set up JDK 17 + uses: actions/setup-java@v4 + with: + distribution: 'temurin' + java-version: '17' + cache: 'maven' + + - name: Build with Maven + run: mvn clean package -DskipTests + + - name: Extract project version from pom.xml + run: | + VERSION=$(mvn -q -Dexec.executable=echo -Dexec.args='${project.version}' --non-recursive exec:exec) + echo "PROJECT_VERSION=$VERSION" >> $GITHUB_ENV + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Login to Docker Hub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_PASSWORD }} + + - name: Login to GitHub Container Registry + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ secrets.GHCR_IO_USERNAME }} + password: ${{ secrets.GHCR_IO_TOKEN }} + + - name: Build and push Docker image + uses: docker/build-push-action@v5 + with: + context: . + file: ./Dockerfile + push: true + tags: | + jmal/jmalcloud:${{ env.PROJECT_VERSION }},jmal/jmalcloud:latest + ghcr.io/${{ secrets.GHCR_IO_USERNAME }}/jmalcloud:${{ env.PROJECT_VERSION }},ghcr.io/${{ secrets.GHCR_IO_USERNAME }}/jmalcloud:latest + platforms: linux/amd64,linux/arm64 + build-args: | + VERSION=${{ env.PROJECT_VERSION }} diff --git a/.github/workflows/build_jdk_ffmpeg.yml b/.github/workflows/build_jdk_ffmpeg.yml new file mode 100644 index 0000000..cdbe30b --- /dev/null +++ b/.github/workflows/build_jdk_ffmpeg.yml @@ -0,0 +1,48 @@ +name: Build jdk21_ffmpeg Docker Image + +on: + workflow_dispatch: + +jobs: + build-and-push: + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Set up JDK 21 + uses: actions/setup-java@v4 + with: + distribution: 'temurin' + java-version: '21' + cache: 'maven' + + - name: Build with Maven + run: mvn clean package -DskipTests + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Login to Docker Hub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_PASSWORD }} + + - name: Login to GitHub Container Registry + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ secrets.GHCR_IO_USERNAME }} + password: ${{ secrets.GHCR_IO_TOKEN }} + + - name: Build and push Docker image + uses: docker/build-push-action@v5 + with: + context: . + file: docker/Dockerfile + push: true + tags: | + jmal/jdk21_ffmpeg:latest + ghcr.io/${{ secrets.GHCR_IO_USERNAME }}/jdk21_ffmpeg:latest + platforms: linux/amd64,linux/arm64 diff --git a/.github/workflows/build_jmalcloud_base.yml b/.github/workflows/build_jmalcloud_base.yml new file mode 100644 index 0000000..53e0aee --- /dev/null +++ b/.github/workflows/build_jmalcloud_base.yml @@ -0,0 +1,38 @@ +name: Build jmalcloud Base Docker Image + +on: + workflow_dispatch: + +jobs: + build-and-push: + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Login to Docker Hub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_PASSWORD }} + + - name: Login to GitHub Container Registry + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ secrets.GHCR_IO_USERNAME }} + password: ${{ secrets.GHCR_IO_TOKEN }} + + - name: Build and push Docker image + uses: docker/build-push-action@v5 + with: + context: . + file: docker/Dockerfile + push: true + tags: | + jmal/jmalcloud_base:latest + ghcr.io/${{ secrets.GHCR_IO_USERNAME }}/jmalcloud_base:latest + platforms: linux/amd64,linux/arm64 diff --git a/.github/workflows/merge-manifests.yml b/.github/workflows/merge-manifests.yml new file mode 100644 index 0000000..10fe997 --- /dev/null +++ b/.github/workflows/merge-manifests.yml @@ -0,0 +1,41 @@ +name: merge manifests + +on: + push: + branches: + - 'master' + workflow_dispatch: + +jobs: + + merge-manifests: + # 等待所有架构的构建都完成后再运行 + runs-on: ubuntu-latest # 合并操作不耗资源,用哪个都行 + + steps: + - name: Login to Docker Hub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_PASSWORD }} + + - name: Login to GitHub Container Registry + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ secrets.GHCR_IO_USERNAME }} + password: ${{ secrets.GHCR_IO_TOKEN }} + + - name: Create and push Docker Hub manifest + run: | + docker manifest create jmal/jmalcloud_native:test \ + --amend jmal/jmalcloud_native:test-amd64 \ + --amend jmal/jmalcloud_native:test-arm64 + docker manifest push jmal/jmalcloud_native:test + + - name: Create and push GHCR manifest + run: | + docker manifest create ghcr.io/${{ secrets.GHCR_IO_USERNAME }}/jmalcloud_native:test \ + --amend ghcr.io/${{ secrets.GHCR_IO_USERNAME }}/jmalcloud_native:test-amd64 \ + --amend ghcr.io/${{ secrets.GHCR_IO_USERNAME }}/jmalcloud_native:test-arm64 + docker manifest push ghcr.io/${{ secrets.GHCR_IO_USERNAME }}/jmalcloud_native:test diff --git a/.github/workflows/pushAliyun.yml b/.github/workflows/pushAliyun.yml new file mode 100644 index 0000000..f981478 --- /dev/null +++ b/.github/workflows/pushAliyun.yml @@ -0,0 +1,86 @@ +name: Build and Push Docker Image to Aliyun + +on: + workflow_dispatch: + release: + types: [ published ] + tags: [ v* ] + +jobs: + build_and_push: + runs-on: ubuntu-latest + strategy: + matrix: + arch: + - amd64 + - arm64 + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Set up JDK 21 + uses: actions/setup-java@v4 + with: + distribution: 'temurin' + java-version: '21' + cache: 'maven' + + - name: Build with Maven + run: mvn clean package -DskipTests + + - name: Extract project version from pom.xml + run: | + VERSION=$(mvn -q -Dexec.executable=echo -Dexec.args='${project.version}' --non-recursive exec:exec) + echo "PROJECT_VERSION=$VERSION" >> $GITHUB_ENV + + - name: Set up QEMU + uses: docker/setup-qemu-action@v3 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Log in to Aliyun Container Registry guangzhou + uses: docker/login-action@v3 + with: + registry: registry.cn-guangzhou.aliyuncs.com + username: ${{ secrets.ALIYUN_DOCKER_USERNAME }} + password: ${{ secrets.ALIYUN_DOCKER_PASSWORD }} + + - name: Log in to Aliyun Container Registry beijing + uses: docker/login-action@v3 + with: + registry: registry.cn-beijing.aliyuncs.com + username: ${{ secrets.ALIYUN_DOCKER_USERNAME }} + password: ${{ secrets.ALIYUN_DOCKER_PASSWORD }} + + - name: Set tag for amd64 + if: matrix.arch == 'amd64' + run: | + echo "TAG_LATEST_0=registry.cn-guangzhou.aliyuncs.com/jmalcloud/jmalcloud:latest" >> $GITHUB_ENV + echo "TAG_VERSION_0=registry.cn-guangzhou.aliyuncs.com/jmalcloud/jmalcloud:${{ env.PROJECT_VERSION }}" >> $GITHUB_ENV + echo "TAG_LATEST_1=registry.cn-beijing.aliyuncs.com/jmalcloud/jmalcloud:latest" >> $GITHUB_ENV + echo "TAG_VERSION_1=registry.cn-beijing.aliyuncs.com/jmalcloud/jmalcloud:${{ env.PROJECT_VERSION }}" >> $GITHUB_ENV + + - name: Set tag for non-amd64 + if: matrix.arch != 'amd64' + run: | + echo "TAG_LATEST_0=registry.cn-guangzhou.aliyuncs.com/jmalcloud/jmalcloud:latest-${{ matrix.arch }}" >> $GITHUB_ENV + echo "TAG_VERSION_0=registry.cn-guangzhou.aliyuncs.com/jmalcloud/jmalcloud:${{ env.PROJECT_VERSION }}-${{ matrix.arch }}" >> $GITHUB_ENV + echo "TAG_LATEST_1=registry.cn-beijing.aliyuncs.com/jmalcloud/jmalcloud:latest-${{ matrix.arch }}" >> $GITHUB_ENV + echo "TAG_VERSION_1=registry.cn-beijing.aliyuncs.com/jmalcloud/jmalcloud:${{ env.PROJECT_VERSION }}-${{ matrix.arch }}" >> $GITHUB_ENV + + - name: Build and push Docker image + uses: docker/build-push-action@v5 + with: + context: . + file: ./Dockerfile + platforms: linux/${{ matrix.arch }} + push: true + tags: | + ${{ env.TAG_LATEST_0 }} + ${{ env.TAG_VERSION_0 }} + ${{ env.TAG_LATEST_1 }} + ${{ env.TAG_VERSION_1 }} + build-args: | + VERSION=${{ env.PROJECT_VERSION }} diff --git a/.github/workflows/release-drafter.yml b/.github/workflows/release-drafter.yml new file mode 100644 index 0000000..ddac03a --- /dev/null +++ b/.github/workflows/release-drafter.yml @@ -0,0 +1,18 @@ +# .github/workflows/release-drafter.yml +name: Release Drafter + +on: + push: + branches: + - master + +jobs: + update_release_draft: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: release-drafter/release-drafter@v5 + with: + config-name: release-drafter.yml + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/test-build.yml b/.github/workflows/test-build.yml new file mode 100644 index 0000000..c1a7bcc --- /dev/null +++ b/.github/workflows/test-build.yml @@ -0,0 +1,59 @@ +name: Build test + +on: + push: + branches: + - 'master' + workflow_dispatch: + +jobs: + build-and-push: + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Set up JDK 21 + uses: actions/setup-java@v4 + with: + distribution: 'temurin' + java-version: '21' + cache: 'maven' + + - name: Build with Maven + run: mvn clean package -DskipTests + + - name: Extract project version from pom.xml + run: | + VERSION=$(mvn -q -Dexec.executable=echo -Dexec.args='${project.version}' --non-recursive exec:exec) + echo "PROJECT_VERSION=$VERSION" >> $GITHUB_ENV + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Login to Docker Hub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_PASSWORD }} + + - name: Login to GitHub Container Registry + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ secrets.GHCR_IO_USERNAME }} + password: ${{ secrets.GHCR_IO_TOKEN }} + + - name: Build and push Docker image to multiple registries + uses: docker/build-push-action@v5 + with: + context: . + file: ./Dockerfile + push: true + tags: | + jmal/jmalcloud:test + ghcr.io/${{ secrets.GHCR_IO_USERNAME }}/jmalcloud:test + platforms: linux/amd64,linux/arm64 + build-args: | + VERSION=${{ env.PROJECT_VERSION }} diff --git a/.github/workflows/test-native-build.yml b/.github/workflows/test-native-build.yml new file mode 100644 index 0000000..c3b811d --- /dev/null +++ b/.github/workflows/test-native-build.yml @@ -0,0 +1,66 @@ +name: Build test native + +on: + push: + branches: + - 'master' + workflow_dispatch: + +jobs: + build-and-push: + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Extract project version from pom.xml + id: project_version # 给步骤一个id以便后续引用 + run: | + VERSION=$(mvn -q -Dexec.executable=echo -Dexec.args='${project.version}' --non-recursive exec:exec) + echo "PROJECT_VERSION=$VERSION" >> $GITHUB_ENV + echo "version=$VERSION" >> "$GITHUB_OUTPUT" # 使用 GITHUB_OUTPUT 在步骤间传递值 + + # ------------------- 阶段二: 使用 GraalVM 构建 Native Image ------------------- + - name: Set up GraalVM for Native Image + uses: graalvm/setup-graalvm@v1 + with: + java-version: '24' # GraalVM 24.x 基于 JDK 24 + distribution: 'graalvm' + version: '24' # 指定使用 GraalVM 24.x + github-token: ${{ secrets.GITHUB_TOKEN }} + cache: 'maven' # GraalVM action 也支持缓存 Maven 依赖 + + - name: Build Native Image with Maven + run: mvn clean package -Pnative -DskipTests + # -Pnative 激活 pom.xml 中为 native image 定义的 profile + # native:compile 是 GraalVM 插件提供的编译目标 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Login to Docker Hub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_PASSWORD }} + + - name: Login to GitHub Container Registry + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ secrets.GHCR_IO_USERNAME }} + password: ${{ secrets.GHCR_IO_TOKEN }} + + - name: Build and push Docker image to multiple registries + uses: docker/build-push-action@v5 + with: + context: . + file: ./Dockerfile.native + push: true + tags: | + jmal/jmalcloud:test + ghcr.io/${{ secrets.GHCR_IO_USERNAME }}/jmalcloud:test + platforms: linux/amd64,linux/arm64 + build-args: | + VERSION=${{ env.PROJECT_VERSION }} diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..b8c68f0 --- /dev/null +++ b/.gitignore @@ -0,0 +1,39 @@ +## myproject +push.sh +update.sh +HELP.md +.env +/log/ +/lucene/ +/docker/ +target/ +!.mvn/wrapper/maven-wrapper.jar +!**/src/main/** +!**/src/test/** + +### STS ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ + +### VS Code ### +.vscode/ +src/main/resources/application-dev.yml diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..6b62901 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,51 @@ +FROM ghcr.io/jamebal/jdk21_ffmpeg:latest + +ARG VERSION + +ENV MONGODB_URI "mongodb://mongo:27017/jmalcloud" +ENV RUN_ENVIRONMENT prod +ENV JVM_OPTS "" +ENV LOG_LEVEL warn + +# 是否开启精确搜索 +ENV EXACT_SEARCH false +ENV NGRAM_MAX_CONTENT_LENGTH_MB "5" +ENV NGRAM_MIN_SIZE "2" +ENV NGRAM_MAX_SIZE "6" + +ENV FILE_MONITOR true +ENV MONITOR_IGNORE_FILE_PREFIX ".DS_Store,._" +ENV FILE_ROOT_DIR /jmalcloud/files +ENV TESS4J_DATA_PATH /jmalcloud/tess4j/datapath + +ADD target/clouddisk-${VERSION}.jar /usr/local/ + +VOLUME /jmalcloud/ + +# 设置支持的平台 +ARG TARGETPLATFORM +RUN echo "Building for platform: $TARGETPLATFORM" +LABEL org.label-schema.build.multi-platform=true +ENV PLATFORM=$TARGETPLATFORM +ENV VERSION=${VERSION} + +# 将 Linux/arm64/v8 架构设置为默认平台 +# 如果需要,可以根据需要更改此设置 +ENV DOCKER_DEFAULT_PLATFORM=linux/amd64,linux/arm64 + +COPY docker-entrypoint.sh /docker-entrypoint.sh + +RUN apt-get update && \ + apt-get install -y gosu && \ + chmod +x /docker-entrypoint.sh && \ + rm -rf /var/lib/apt/lists/* + +EXPOSE 8088 + +# FTP Server +EXPOSE 8089 + +HEALTHCHECK --interval=30s --timeout=3s --start-period=60s --retries=3 \ + CMD curl -f http://localhost:8088/public/health > /dev/null || exit 1 + +ENTRYPOINT ["/docker-entrypoint.sh"] diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..d144b2a --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2022 jmal + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..ff02508 --- /dev/null +++ b/README.md @@ -0,0 +1,134 @@ +# JmalCloud 公共空间版 - 个人网盘服务端 + +> 基于 [JmalCloud](https://github.com/jamebal/jmal-cloud-view) 改造的公共空间版本 + +## 🚀 项目简介 + +这是一个基于原版 JmalCloud 改造的**公共空间版本**,将原来的用户独立文件空间模式改为**所有用户共享同一文件空间**的模式。 + +### 📋 主要变更 + +- ✅ **公共文件空间**:所有用户登录后看到相同的文件列表 +- ✅ **统一存储**:文件存储在统一的公共目录中,不再按用户分离 +- ✅ **共享操作**:任何用户都可以上传、下载、删除、重命名所有文件 +- ✅ **保留认证**:用户登录验证和基本权限控制仍然有效 +- ✅ **元数据保留**:文件的创建者信息仍保存在数据库中 + +## 🔧 核心改造内容 + +### 后端修改 +1. **文件存储路径统一化** - 移除用户名路径组件 +2. **数据库查询去用户化** - 移除 userId 过滤条件 +3. **文件操作公共化** - 所有文件操作适配公共空间 +4. **用户目录管理适配** - 不再创建用户专属目录 + +### 前端兼容性 +- ✅ **无需修改** - 前端代码完全兼容,无需任何变更 +- ✅ **API向后兼容** - 保持原有接口参数,仅后端逻辑调整 + +## 🎯 适用场景 + +- **家庭网盘** - 家庭成员共享文件存储空间 +- **小团队协作** - 团队内部文件共享和协作 +- **企业内网盘** - 企业内部公共文件存储 +- **学校/机构** - 教学资源共享平台 + +## ⚠️ 重要注意事项 + +### 数据迁移 +```bash +# 需要手动将现有用户文件迁移到公共目录 +# 原来的结构: /rootDir/user1/file1.txt +# 现在的结构: /rootDir/file1.txt +``` + +### 安全考虑 +- **文件安全性**:所有登录用户都能访问所有文件 +- **权限控制**:需要在应用层面控制用户访问权限 +- **数据备份**:建议在使用前备份原始数据 + +## 🔄 从原版迁移 + +1. **备份数据** + ```bash + # 备份原有文件和数据库 + cp -r /your/original/files /backup/location + ``` + +2. **部署改造版** + ```bash + # 部署修改后的代码 + # 使用相同的配置文件和数据库 + ``` + +3. **文件迁移** + ```bash + # 将用户目录中的文件移动到公共根目录 + # 注意处理文件名冲突 + ``` + +## 📁 文件结构对比 + +### 改造前 +``` +/rootDir/ +├── user1/ +│ ├── file1.txt +│ └── folder1/ +└── user2/ + ├── file2.txt + └── folder2/ +``` + +### 改造后 +``` +/rootDir/ +├── file1.txt +├── file2.txt +├── folder1/ +└── folder2/ +``` + +## 🛠️ 部署说明 + +### 环境要求 +- Java 21+ +- MongoDB 4.4+ +- Maven 3.6+ + +### 构建和运行 +```bash +# 构建项目 +mvn clean package -DskipTests + +# 运行 +java -jar target/clouddisk-*.jar +``` + +### Docker 部署 +```bash +# 使用提供的 docker-compose.yml +docker-compose up -d +``` + +## 📝 变更日志 + +### v2.15.0-public-space +- 改造为公共空间模式 +- 移除用户文件隔离机制 +- 统一文件存储路径 +- 保持前端API兼容性 + +## 🤝 贡献 + +如果你发现问题或有改进建议,欢迎提交 Issue 或 Pull Request。 + +## 📄 许可 + +[MIT](https://github.com/jamebal/jmal-cloud-view/blob/master/LICENSE) license. + +Copyright (c) 2023-present jmal + +--- + +> **免责声明**: 这是基于开源项目 JmalCloud 的自定义改造版本,使用前请仔细评估安全性和适用性。原作者不对此改造版本承担责任。 \ No newline at end of file diff --git a/docker-compose.base-aliyun-beijing.yml b/docker-compose.base-aliyun-beijing.yml new file mode 100644 index 0000000..088e75f --- /dev/null +++ b/docker-compose.base-aliyun-beijing.yml @@ -0,0 +1,51 @@ +services: + mongo: + container_name: jmalcloud_mongodb + image: registry.cn-beijing.aliyuncs.com/jmalcloud/mongo:4.4 + environment: + TZ: "Asia/Shanghai" + volumes: + - ./docker/jmalcloud/mongodb/data/db:/data/db + - ./docker/jmalcloud/mongodb/backup:/dump + restart: unless-stopped + healthcheck: + test: ["CMD", "mongo", "--eval", "db.adminCommand('ping')"] + interval: 10s + timeout: 5s + retries: 3 + command: --wiredTigerCacheSizeGB 0.5 + + jmalcloud: + container_name: jmalcloud_server + image: registry.cn-beijing.aliyuncs.com/jmalcloud/jmalcloud:latest + environment: + MONGODB_URI: "mongodb://mongo:27017/jmalcloud" + TZ: "Asia/Shanghai" + JVM_OPTS: "-Xms256m -Xmx1024m" + volumes: + - ./docker/jmalcloud/files:/jmalcloud/files/ + restart: unless-stopped + depends_on: + mongo: + condition: service_healthy + + nginx: + container_name: jmalcloud_nginx + image: registry.cn-beijing.aliyuncs.com/jmalcloud/jmalcloud-nginx:latest + ports: + - 7070:80 + - 7071:8089 + environment: + TZ: "Asia/Shanghai" + links: + - jmalcloud + - office + restart: unless-stopped + + office: # Optional + container_name: jmalcloud_office + image: registry.cn-beijing.aliyuncs.com/jmalcloud/onlyoffice_documentserver:8.0.1 + environment: + TZ: "Asia/Shanghai" + JWT_SECRET: "my_secret" + restart: unless-stopped diff --git a/docker-compose.base-aliyun-guangzhou.yml b/docker-compose.base-aliyun-guangzhou.yml new file mode 100644 index 0000000..6179d4b --- /dev/null +++ b/docker-compose.base-aliyun-guangzhou.yml @@ -0,0 +1,51 @@ +services: + mongo: + container_name: jmalcloud_mongodb + image: registry.cn-guangzhou.aliyuncs.com/jmalcloud/mongo:4.4 + environment: + TZ: "Asia/Shanghai" + volumes: + - ./docker/jmalcloud/mongodb/data/db:/data/db + - ./docker/jmalcloud/mongodb/backup:/dump + restart: unless-stopped + healthcheck: + test: ["CMD", "mongo", "--eval", "db.adminCommand('ping')"] + interval: 10s + timeout: 5s + retries: 3 + command: --wiredTigerCacheSizeGB 0.5 + + jmalcloud: + container_name: jmalcloud_server + image: registry.cn-guangzhou.aliyuncs.com/jmalcloud/jmalcloud:latest + environment: + MONGODB_URI: "mongodb://mongo:27017/jmalcloud" + TZ: "Asia/Shanghai" + JVM_OPTS: "-Xms256m -Xmx1024m" + volumes: + - ./docker/jmalcloud/files:/jmalcloud/files/ + restart: unless-stopped + depends_on: + mongo: + condition: service_healthy + + nginx: + container_name: jmalcloud_nginx + image: registry.cn-guangzhou.aliyuncs.com/jmalcloud/jmalcloud-nginx:latest + ports: + - 7070:80 + - 7071:8089 + environment: + TZ: "Asia/Shanghai" + links: + - jmalcloud + - office + restart: unless-stopped + + office: # Optional + container_name: jmalcloud_office + image: registry.cn-guangzhou.aliyuncs.com/jmalcloud/onlyoffice_documentserver:8.0.1 + environment: + TZ: "Asia/Shanghai" + JWT_SECRET: "my_secret" + restart: unless-stopped diff --git a/docker-compose.base.proxy.yml b/docker-compose.base.proxy.yml new file mode 100644 index 0000000..0c63690 --- /dev/null +++ b/docker-compose.base.proxy.yml @@ -0,0 +1,51 @@ +services: + mongo: + container_name: jmalcloud_mongodb + image: docker.jmalx.com/mongo:4.4 + environment: + TZ: "Asia/Shanghai" + volumes: + - ./docker/jmalcloud/mongodb/data/db:/data/db + - ./docker/jmalcloud/mongodb/backup:/dump + restart: unless-stopped + healthcheck: + test: ["CMD", "mongo", "--eval", "db.adminCommand('ping')"] + interval: 10s + timeout: 5s + retries: 3 + command: --wiredTigerCacheSizeGB 0.5 + + jmalcloud: + container_name: jmalcloud_server + image: docker.jmalx.com/jmal/jmalcloud:latest + environment: + MONGODB_URI: "mongodb://mongo:27017/jmalcloud" + TZ: "Asia/Shanghai" + JVM_OPTS: "-Xms256m -Xmx1024m" + volumes: + - ./docker/jmalcloud/files:/jmalcloud/files/ + restart: unless-stopped + depends_on: + mongo: + condition: service_healthy + + nginx: + container_name: jmalcloud_nginx + image: docker.jmalx.com/jmal/jmalcloud-nginx:latest + ports: + - 7070:80 + - 7071:8089 + environment: + TZ: "Asia/Shanghai" + links: + - jmalcloud + - office + restart: unless-stopped + + office: # Optional + container_name: jmalcloud_office + image: docker.jmalx.com/onlyoffice/documentserver:8.0.1 + environment: + TZ: "Asia/Shanghai" + JWT_SECRET: "my_secret" + restart: unless-stopped diff --git a/docker-compose.base.yml b/docker-compose.base.yml new file mode 100644 index 0000000..b21b65d --- /dev/null +++ b/docker-compose.base.yml @@ -0,0 +1,57 @@ +services: + mongo: + container_name: jmalcloud_mongodb + image: mongo:7.0 + environment: + TZ: "Asia/Shanghai" + volumes: + - ./docker/jmalcloud/mongodb/data/db:/data/db + - ./docker/jmalcloud/mongodb/backup:/dump + restart: unless-stopped + healthcheck: + test: ["CMD", "mongosh", "--eval", "db.adminCommand('ping')"] + interval: 10s + timeout: 5s + retries: 3 + command: --wiredTigerCacheSizeGB 0.5 + + jmalcloud: + container_name: jmalcloud_server + image: jmal/jmalcloud:latest + environment: + MONGODB_URI: "mongodb://mongo:27017/jmalcloud" + TZ: "Asia/Shanghai" + JVM_OPTS: "-Xms512m -Xmx4g" + #EXACT_SEARCH: false + #PUID: 0 + #PGID: 0 + # 如果为空系统会自动生成(位置在/jmalcloud/files/.env)(openssl rand -hex 32) + ENCRYPTION_SECRET_KEY: "" + # 如果为空系统会自动生成(位置在/jmalcloud/files/.env)(openssl rand -hex 16) + ENCRYPTION_SALT: "" + volumes: + - ./docker/jmalcloud/files:/jmalcloud/files/ + restart: unless-stopped + ports: + - 7072:8088 + + nginx: + container_name: jmalcloud_nginx + image: jmal/jmalcloud-nginx:latest + ports: + - 7070:80 + - 7071:8089 + environment: + TZ: "Asia/Shanghai" + restart: unless-stopped + links: + - jmalcloud + - office + + office: # Optional + container_name: jmalcloud_office + image: onlyoffice/documentserver:9.0 + environment: + TZ: "Asia/Shanghai" + JWT_SECRET: "my_secret" + restart: unless-stopped diff --git a/docker-compose.example.yml b/docker-compose.example.yml new file mode 100644 index 0000000..7d4f07d --- /dev/null +++ b/docker-compose.example.yml @@ -0,0 +1,44 @@ +services: + mongo: + container_name: ${CONTAINER_NAME_PREFIX}_mongodb + image: mongo:4.4 + environment: + TZ: Asia/Shanghai + volumes: + - ${RESOURCE_DB_PATH}/data/db:/data/db + - ${RESOURCE_DB_PATH}/custom:/etc/mongo + - ${RESOURCE_DB_PATH}/backup:/dump + restart: unless-stopped + command: --wiredTigerCacheSizeGB 0.5 + jmalcloud: + container_name: ${CONTAINER_NAME_PREFIX}_server + image: ghcr.io/jamebal/jmalcloud:latest + environment: + MONGODB_URI: mongodb://mongo:27017/jmalcloud + TZ: Asia/Shanghai + ports: + - ${SERVER_PORT}:8088 + volumes: + - ${RESOURCE_FILE_PATH}:/jmalcloud/files/ + restart: unless-stopped + nginx: + container_name: ${CONTAINER_NAME_PREFIX}_nginx + image: ghcr.io/jamebal/jmalcloud-nginx:latest + ports: + - ${APP_PORT}:80 + - ${BLOG_PORT}:8089 + environment: + TZ: Asia/Shanghai + links: + - jmalcloud + - office + restart: unless-stopped + office: + container_name: ${CONTAINER_NAME_PREFIX}_office + image: onlyoffice/documentserver:${OFFICE_IMAGE_VERSION} + environment: + TZ: Asia/Shanghai + JWT_ENABLED: false + ALLOW_PRIVATE_IP_ADDRESS: true + restart: unless-stopped +networks: {} diff --git a/docker-entrypoint.sh b/docker-entrypoint.sh new file mode 100644 index 0000000..9dd3d59 --- /dev/null +++ b/docker-entrypoint.sh @@ -0,0 +1,37 @@ +#!/bin/bash +set -e + +USER_UID=${PUID:-0} +USER_GID=${PGID:-0} +TZ=${TZ:-Asia/Shanghai} + +mkdir -p /log + +chown ${USER_UID}:${USER_GID} /jmalcloud + +chown -R ${USER_UID}:${USER_GID} /jmalcloud/models +chown -R ${USER_UID}:${USER_GID} /jmalcloud/tess4j +chown ${USER_UID}:${USER_GID} /jmalcloud/ip2region.xdb +chown -R ${USER_UID}:${USER_GID} /usr/local/mxcad +chown ${USER_UID}:${USER_GID} /usr/local/clouddisk-${VERSION}.jar +chown -R ${USER_UID}:${USER_GID} /usr/local/clouddisk-lib +chown -R ${USER_UID}:${USER_GID} log + +exec gosu ${USER_UID}:${USER_GID} java ${JVM_OPTS} \ + -Duser.timezone=${TZ} \ + -Dfile.encoding=UTF-8 \ + -Dloader.path=/usr/local/clouddisk-lib \ + -jar /usr/local/clouddisk-${VERSION}.jar \ + --spring.profiles.active=${RUN_ENVIRONMENT} \ + --spring.data.mongodb.uri=${MONGODB_URI} \ + --tess4j.data-path=${TESS4J_DATA_PATH} \ + --file.exactSearch=${EXACT_SEARCH} \ + --file.ngramMaxContentLengthMB=${NGRAM_MAX_CONTENT_LENGTH_MB} \ + --file.ngramMinSize=${NGRAM_MIN_SIZE} \ + --file.ngramMaxSize=${NGRAM_MAX_SIZE} \ + --file.monitor=${FILE_MONITOR} \ + --file.rootDir=${FILE_ROOT_DIR} \ + --file.monitorIgnoreFilePrefix=${MONITOR_IGNORE_FILE_PREFIX} \ + --logging.level.root=${LOG_LEVEL} \ + --file.ip2region-db-path=/jmalcloud/ip2region.xdb \ + --file.ocr-lite-onnx-model-path=/jmalcloud/models diff --git a/jc.sh b/jc.sh new file mode 100755 index 0000000..13435b1 --- /dev/null +++ b/jc.sh @@ -0,0 +1,335 @@ +#!/bin/bash + +#fonts color +Green="\033[32m" +Red="\033[31m" +Font="\033[0m" + +#notification information +OK="${Green}[OK]${Font}" +Error="${Red}[错误]${Font}" + +cur_path="$(pwd)" +cur_arg=$@ +COMPOSE="docker-compose" + +check_docker() { + docker --version &>/dev/null + if [ $? -ne 0 ]; then + echo -e "${Error} ${Red}未安装 Docker!${Font}" + exit 1 + fi + if ! docker ps > /dev/null 2>&1; then + echo -e "${Error} ${Red}请确保您有操作docker的权限。${Font}" + exit 1 + fi + docker-compose version &>/dev/null + if [ $? -ne 0 ]; then + docker compose version &>/dev/null + if [ $? -ne 0 ]; then + echo -e "${Error} ${Red}未安装 Docker-compose!${Font}" + exit 1 + fi + COMPOSE="docker compose" + fi + if [[ -n $($COMPOSE version | grep -E "\sv*1") ]]; then + $COMPOSE version + echo -e "${Error} ${Red}Docker-compose 的版本太低了,请升级到 v2+!${Font}" + exit 1 + fi + if [ ! -f docker-compose.yml ]; then + cp docker-compose.example.yml docker-compose.yml + fi +} + +run_exec() { + local container=$1 + local cmd=$2 + local name="$(env_get CONTAINER_NAME_PREFIX)_$container" + if [ -z "$name" ]; then + echo -e "${Error} ${Red}没有找到 $container 容器!${Font}" + exit 1 + fi + docker exec -it "$name" /bin/sh -c "$cmd" +} + +judge() { + if [[ 0 -eq $? ]]; then + echo -e "${OK} ${Green}$1 完成${Font}" + sleep 1 + else + echo -e "${Error} ${Red}$1 失败${Font}" + exit 1 + fi +} + +rand() { + local min=$1 + local max=$(($2 - $min + 1)) + local num=$(($RANDOM + 1000000000)) + echo $(($num % $max + $min)) +} + +local_ipv4() { + local ip="127.0.0.1" + if [[ $(uname) == 'Linux' ]]; then + ip=$(ip a | grep inet | grep -v 127.0.0.1 | grep -v inet6 | awk '{print $2}' | tr -d "addr:" | head -n 1) + fi + if [[ $(uname) == 'Darwin' ]]; then + ip=$(ifconfig -a | grep inet | grep -v 127.0.0.1 | grep -v inet6 | awk '{print $2}' | tr -d "addr:" | head -n 1) + fi + echo "${ip%/*}" +} + +env_get() { + local key=$1 + local value=$(cat ${cur_path}/.env | grep "^$key=" | awk -F '=' '{print $2}') + echo "$value" +} + +env_set() { + local key=$1 + local val=$2 + local exist=$(cat ${cur_path}/.env | grep "^$key=") + if [ -z "$exist" ]; then + echo "$key=$val" >>$cur_path/.env + else + if [[ $(uname) == 'Linux' ]]; then + sed -i "/^${key}=/c\\${key}=${val}" ${cur_path}/.env + fi + if [ $? -ne 0 ]; then + echo -e "${Error} ${Red}设置env参数失败!${Font}" + exit 1 + fi + fi +} + +arg_get() { + local find="n" + local value="" + for var in $cur_arg; do + if [[ "$find" == "y" ]]; then + if [[ ! $var =~ "--" ]]; then + value=$var + fi + break + fi + if [[ "--$1" == "$var" ]] || [[ "-$1" == "$var" ]]; then + find="y" + value="yes" + fi + done + echo $value +} + +run_mongo() { + if [ "$1" = "dump" ]; then + # 备份数据库 + mkdir -p ${cur_path}/docker/mongodb/backup + run_exec mongodb "mongodump -d jmalcloud -o /dump --gzip --quiet" + judge "备份数据库" + elif [ "$1" = "restore" ]; then + # 恢复数据库 + run_exec mongodb "mongorestore --gzip --nsInclude=jmalcloud.* --dir /dump/jmalcloud --quiet" + judge "恢复数据库" + fi +} + +help() { + echo " + Usage: install.sh COMMAND [OPTIONS] + + Options: + --port 网盘端口,默认7070 + --blog_port 博客端口,默认7071 + --server_port 服务端口,默认7072(API地址: http://127.0.0.1:7072/public/api) + --prefix 容器名称前缀,默认为jmalcloud + + Management Commands: + init,install 安装 + uninstall 卸载 + pull 拉取最新的的程序和镜像 + update 更新 + start 启动 + stop 停止 + restart 重启 + mongo 执行容器 mongodb 容器内的命令 example: ./jc.sh mongo mongostat + nginx 执行容器 nginx 容器内的命令 example: ./jc.sh nginx nginx -v + dump 备份数据库 + restore 恢复数据库 + reinstall 卸载后再安装 + reset-password 重置初始管理员的密码 +" +} + +env_init() { + env_set OFFICE_IMAGE_VERSION "8.0.1" + env_set APP_PORT 7070 + env_set BLOG_PORT 7071 + env_set SERVER_PORT 7072 + env_set FTP_SERVER_PORT 7073 + env_set CONTAINER_NAME_PREFIX "jmalcloud" + local file_ptah=$(cat ${cur_path}/.env | grep "^RESOURCE_DB_PATH=") + if [ -z "$file_ptah" ]; then + env_set RESOURCE_DB_PATH "$cur_path/docker/jmalcloud/mongodb" + fi + local db_ptah=$(cat ${cur_path}/.env | grep "^RESOURCE_FILE_PATH=") + if [ -z "$db_ptah" ]; then + env_set RESOURCE_FILE_PATH "$cur_path/docker/jmalcloud/files" + fi +} + +before_start() { + [[ "$(arg_get port)" -gt 0 ]] && env_set APP_PORT "$(arg_get port)" + [[ "$(arg_get blog_port)" -gt 0 ]] && env_set BLOG_PORT "$(arg_get blog_port)" + [[ "$(arg_get server_port)" -gt 0 ]] && env_set SERVER_PORT "$(arg_get server_port)" + [[ "$(arg_get ftp_server_port)" -gt 0 ]] && env_set FTP_SERVER_PORT "$(arg_get ftp_server_port)" + [[ "$(arg_get prefix)" -gt 0 ]] && env_set CONTAINER_NAME_PREFIX "$(arg_get prefix)" +} + +install() { + # 启动容器 + before_start + $COMPOSE up -d + # 检测服务是否启动 + check_run "安装" +} + +uninstall() { + read -rp "确定要卸载(含:删除容器、所有文件、数据库、日志)吗?(y/n): " uninstall + [[ -z ${uninstall} ]] && uninstall="N" + case $uninstall in + [yY][eE][sS] | [yY]) + echo -e "${Red} 开始卸载... ${Font}" + ;; + *) + echo -e "${OK} ${Green} 终止卸载 ${Font}" + exit 2 + ;; + esac + $COMPOSE down + rm -rf "./docker" + echo -e "${OK} ${Green} 卸载完成 ${Font}" +} + +check_run() { + spin=('\' '|' '/' '-') + server_url="http://$(local_ipv4):$(env_get BLOG_PORT)" + for ((i = 0; i <= 350; i++)); do + url_status=$(curl -s -m 5 -IL "$server_url" | grep 200) + if [ "$url_status" != "" ]; then + echo -ne " \r" + echo -e "${OK} ${Green}$1完成${Font}" + echo "网盘地址: http://$(local_ipv4):$(env_get APP_PORT)" + echo "博客地址: $server_url" + echo "API 地址: http://$(local_ipv4):$(env_get SERVER_PORT)/public/api" + break + else + echo -n "正在启动服务, 请稍等... ${spin[$((i % 4))]}" + echo -n -e \\r + sleep 0.2 + fi + done + url_status=$(curl -s -m 5 -IL $server_url | grep 200) + if [ "$url_status" == "" ]; then + echo -e "${Error} ${Red}$1失败,反馈给开发者: https://github.com/jamebal/jmal-cloud-view/issues${Font}" + fi +} + +pull() { + git fetch --all + git reset --hard origin/$(git branch | sed -n -e 's/^\* \(.*\)/\1/p') + git pull origin master + $COMPOSE pull +} + +backup_and_install() { + local container_mongodb="$(env_get CONTAINER_NAME_PREFIX)_mongodb" + if docker ps --format '{{.Names}}' | grep -q "$container_mongodb"; then + run_mongo "dump" + run_exec nginx "nginx -s reload" + install + else + install + fi +} + +reset_password() { + local container_server="$(env_get CONTAINER_NAME_PREFIX)_server" + echo -e "正在重置密码..." + docker restart "$container_server" > /dev/null 2>&1 + run_exec mongodb "mongo jmalcloud --eval \"db.getCollection('user').update({ 'creator': true }, {\\\$set: { 'password': '1000:c5b705ea13a1221f5e59110947ed806f8a978e955fbd2ed6:22508de12228c34a235454a0caf3bcaa5552858543258e56' }}, { 'multi': false, 'upsert': false })\" > /dev/null 2>&1" + check_run "重置" + echo -e "${OK} ${Green}重置后的密码为:jmalcloud${Font}" +} + +######################################################################################################## +check_docker +env_init + +if [ $# -gt 0 ]; then + if [[ "$1" == "init" ]] || [[ "$1" == "install" ]]; then + shift 1 + install + elif [[ "$1" == "pull" ]]; then + shift 1 + pull + elif [[ "$1" == "update" ]]; then + shift 1 + backup_and_install + elif [[ "$1" == "uninstall" ]]; then + shift 1 + uninstall + elif [[ "$1" == "reinstall" ]]; then + + shift 1 + uninstall + sleep 3 + install + elif [[ "$1" == "reset-password" ]]; then + shift 1 + reset_password + elif [[ "$1" == "port" ]]; then + shift 1 + env_set APP_PORT "$1" + before_start + $COMPOSE up -d + check_run "修改" + elif [[ "$1" == "nginx" ]]; then + shift 1 + e="$@" && run_exec nginx "$e" + elif [[ "$1" == "mongo" ]]; then + shift 1 + e="$@" && run_exec mongodb "$e" + elif [[ "$1" == "dump" ]]; then + shift 1 + run_mongo "dump" + elif [[ "$1" == "restore" ]]; then + shift 1 + run_mongo "restore" + elif [[ "$1" == "start" ]]; then + shift 1 + # 启动容器 + before_start + $COMPOSE start "$@" + elif [[ "$1" == "stop" ]]; then + shift 1 + $COMPOSE stop "$@" + elif [[ "$1" == "restart" ]]; then + shift 1 + $COMPOSE stop "$@" + # 启动容器 + before_start + $COMPOSE start "$@" + # 检测服务是否启动 + check_run "启动" + else + if [[ "$1" == "-h" ]] || [[ "$1" == "--help" ]] || [[ "$1" == "man" ]]; then + help + else + echo "$1 is not a support parameter." + fi + fi +else + help +fi diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..46fe238 --- /dev/null +++ b/pom.xml @@ -0,0 +1,475 @@ + + + 4.0.0 + + org.springframework.boot + spring-boot-starter-parent + 3.5.3 + + + com.jmal + clouddisk + 2.15.0 + clouddisk + Cloud Disk + jar + + + 21 + 3.0.0 + UTF-8 + 10.2.2 + 3.5.3 + + + + + openkm + https://maven.openkm.com/ + + + e-iceblue + https://repo.e-iceblue.cn/repository/maven-public/ + + + + + + + com.google.zxing + core + ${zxing.version} + + + com.google.zxing + javase + ${zxing.version} + + + + + + + + org.apache.lucene + lucene-backward-codecs + ${lucene.version} + + + + org.apache.lucene + lucene-core + ${lucene.version} + + + + org.apache.lucene + lucene-queryparser + ${lucene.version} + + + + org.apache.lucene + lucene-analysis-common + ${lucene.version} + + + + org.apache.lucene + lucene-highlighter + ${lucene.version} + + + + org.apache.lucene + lucene-analysis-smartcn + ${lucene.version} + + + org.apache.lucene + lucene-expressions + ${lucene.version} + + + io.github.cdimascio + dotenv-java + 3.2.0 + + + + org.springframework.security + spring-security-crypto + + + + dev.samstevens.totp + totp + 1.7.1 + + + + org.springframework.boot + spring-boot-starter-data-mongodb + + + org.springframework.boot + spring-boot-starter-logging + + + org.slf4j + slf4j-simple + + + + + org.springframework.boot + spring-boot-starter-web + + + commons-logging + commons-logging + + + + + org.springframework.boot + spring-boot-starter-data-ldap + + + org.springframework.boot + spring-boot-configuration-processor + true + + + org.springframework.boot + spring-boot-starter-thymeleaf + + + org.springframework.boot + spring-boot-starter-validation + + + org.springframework.boot + spring-boot-starter-aop + + + + com.github.gotson + webp-imageio + 0.2.2 + + + + com.github.albfernandez + juniversalchardet + 2.5.0 + + + + net.sourceforge.tess4j + tess4j + 5.13.0 + + + commons-logging + commons-logging + + + + + + + org.reflections + reflections + 0.10.2 + + + + + com.alibaba + fastjson + 2.0.47 + + + + + net.coobird + thumbnailator + 0.4.20 + + + + + org + jaudiotagger + 2.0.3 + + + + + com.drewnoakes + metadata-extractor + 2.19.0 + + + + + org.apache.ant + ant + 1.10.11 + + + org.apache.commons + commons-compress + 1.26.1 + + + + + org.springdoc + springdoc-openapi-starter-webmvc-ui + 2.8.6 + + + com.fasterxml.jackson.module + jackson-module-kotlin + + + + + com.fasterxml.jackson.module + jackson-module-kotlin + + + + io.reactivex.rxjava3 + rxjava + 3.1.8 + + + + + org.projectlombok + lombok + true + + + + + org.apache.ftpserver + ftpserver-core + 1.2.1 + + + org.apache.ftpserver + ftplet-api + 1.2.0 + + + cn.hutool + hutool-all + 5.8.25 + + + org.apache.poi + poi + 5.4.1 + + + org.apache.poi + poi-ooxml + 5.4.1 + + + org.apache.poi + poi-scratchpad + 5.4.1 + + + commons-io + commons-io + 2.16.1 + + + io.methvin + directory-watcher + 0.18.0 + + + e-iceblue + spire.doc.free + 5.2.0 + + + org.glassfish.jaxb + jaxb-runtime + provided + + + org.apache.tika + tika-core + 2.9.2 + + + nl.siegmann.epublib + epublib-core + 3.1 + + + org.slf4j + slf4j-simple + + + + + org.jsoup + jsoup + 1.18.1 + + + org.xhtmlrenderer + flying-saucer-pdf + 9.9.0 + + + com.github.jai-imageio + jai-imageio-core + 1.4.0 + + + com.github.jai-imageio + jai-imageio-jpeg2000 + 1.4.0 + + + com.itextpdf + html2pdf + 5.0.5 + + + + com.fasterxml.jackson.dataformat + jackson-dataformat-xml + + + + + com.auth0 + java-jwt + 3.18.2 + + + + + org.springframework.boot + spring-boot-starter-websocket + + + + + org.springframework.boot + spring-boot-starter-cache + + + com.github.ben-manes.caffeine + caffeine + 2.8.0 + + + io.projectreactor + reactor-core + 3.2.12.RELEASE + + + com.github.oshi + oshi-core + 6.2.2 + + + + org.lionsoul + ip2region + 2.7.0 + + + + io.minio + minio + 8.5.13 + + + + com.aliyun.oss + aliyun-sdk-oss + 3.17.4 + + + commons-logging + commons-logging + + + + + + com.qcloud + cos_api + 5.6.247 + + + commons-logging + commons-logging + + + + + + org.springframework.boot + spring-boot-starter-test + test + + + org.apache.maven + maven-model + 3.9.1 + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + com.jmal.clouddisk.JmalCloudApplication + true + ZIP + + + nothing + nothing + + + + + + + org.apache.maven.plugins + maven-dependency-plugin + + + copy-dependencies + package + + copy-dependencies + + ${project.build.directory}/lib + + + + + + + + + diff --git a/release-www.sh b/release-www.sh new file mode 100644 index 0000000..aa654f7 --- /dev/null +++ b/release-www.sh @@ -0,0 +1,25 @@ +#!/bin/bash +# version +if [ -n "$1" ]; then + echo "version: $1" +else + echo "需要带上版本号, 例如 sh release-www.sh 2.5.1" + exit +fi +version=$1 + +# jmal-cloud-view Directory location +view_dir="/Users/jmal/studio/myProject/github/jmal-cloud-view" +# jmal-cloud-server Directory location +server_dir="/Users/jmal/studio/myProject/github/jmal-cloud-server" + +# build jmal-cloud-view +cd $view_dir || exit +echo "location: ${view_dir} " +if [ ! -f "dist-$version.tar" ]; then + npm run build:prod + tar -czf "dist-$version.tar" dist +fi +echo "current $(pwd)" +echo "copy dist-$version.tar to $server_dir/www/releases/dist-latest.tar" +cp "dist-$version.tar" $server_dir"/www/releases/dist-latest.tar" diff --git a/src/main/java/com/jmal/clouddisk/JmalCloudApplication.java b/src/main/java/com/jmal/clouddisk/JmalCloudApplication.java new file mode 100644 index 0000000..3646822 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/JmalCloudApplication.java @@ -0,0 +1,34 @@ +package com.jmal.clouddisk; + +import cn.hutool.crypto.SecureUtil; +import com.jmal.clouddisk.util.TesseractUtil; +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.cache.annotation.EnableCaching; +import org.springframework.scheduling.annotation.EnableScheduling; + +/** + * ClouddiskApplication + * + * @author jmal + */ +@SpringBootApplication +@EnableCaching +@EnableScheduling +@Slf4j +public class JmalCloudApplication { + + public static void main(String[] args) { + SecureUtil.disableBouncyCastle(); + SpringApplication application = new SpringApplication(JmalCloudApplication.class); + // 允许循环引用 + application.setAllowCircularReferences(true); + + // dev环境下设置tesseract的lib路径 + TesseractUtil.setTesseractLibPath(); + + application.run(args); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/acpect/LogOperatingAspect.java b/src/main/java/com/jmal/clouddisk/acpect/LogOperatingAspect.java new file mode 100644 index 0000000..7b602a3 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/acpect/LogOperatingAspect.java @@ -0,0 +1,108 @@ +package com.jmal.clouddisk.acpect; + +import cn.hutool.core.text.CharSequenceUtil; +import com.jmal.clouddisk.annotation.LogOperatingFun; +import com.jmal.clouddisk.model.LogOperation; +import com.jmal.clouddisk.model.rbac.ConsumerDTO; +import com.jmal.clouddisk.service.impl.LogService; +import com.jmal.clouddisk.service.impl.UserLoginHolder; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.RequiredArgsConstructor; +import org.aspectj.lang.ProceedingJoinPoint; +import org.aspectj.lang.annotation.Around; +import org.aspectj.lang.annotation.Aspect; +import org.aspectj.lang.annotation.Pointcut; +import org.aspectj.lang.reflect.MethodSignature; +import org.springframework.stereotype.Component; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import java.lang.reflect.Method; + +/*** + * @Description 操作日志切面现实 + * @author jmal + **/ +@Aspect +@Component +@RequiredArgsConstructor +public class LogOperatingAspect { + + private final UserLoginHolder userLoginHolder; + + private final LogService logService; + + /** + * 切入点 + **/ + @Pointcut("@annotation(com.jmal.clouddisk.annotation.LogOperatingFun)") + public void addAdvice() { + } + + /** + * 日志切面拦截器,用来记录每个请求端日志 + * 根据LogOperatingFun注解判判断是否记录日志 + * 如果LogOperatingFun注解没有value值,者使用swagger的ApiOperation注解的值 + */ + @Around("addAdvice()") + public Object interceptor(ProceedingJoinPoint joinPoint) throws Throwable { + String username = userLoginHolder.getUsername(); + long time = System.currentTimeMillis(); + // 执行方法 + Object result = joinPoint.proceed(); + // 执行耗时 + long timeConsuming = System.currentTimeMillis() - time; + // 接收到请求,记录请求内容 + ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); + if (attributes != null) { + LogOperation logOperation = new LogOperation(); + logOperation.setTime(timeConsuming); + logOperation.setUsername(username); + parserLog(joinPoint, result, attributes, logOperation); + } + return result; + } + + /*** + * 解析日志 + */ + private void parserLog(ProceedingJoinPoint joinPoint, Object result, ServletRequestAttributes attributes, LogOperation logOperation) { + // 获取类/方法上的操作日志注解 + MethodSignature methodSignature = ((MethodSignature) joinPoint.getSignature()); + //获取method对象 + Method method = methodSignature.getMethod(); + LogOperatingFun logOperatingFun = method.getAnnotation(LogOperatingFun.class); + // swagger的ApiOperation注解, 用来获取操作说明 + Operation apiOperation = method.getAnnotation(Operation.class); + // swagger的Api注解, 用来获取操作模块 + @SuppressWarnings("unchecked") + Tag api = (Tag) joinPoint.getSourceLocation().getWithinType().getAnnotation(Tag.class); + if(api != null){ + logOperation.setOperationModule(api.name()); + } + // 操作功能 + String operationFun = logOperatingFun.value(); + if(CharSequenceUtil.isBlank(operationFun)){ + operationFun = apiOperation.summary(); + } + logOperation.setOperationFun(operationFun); + String logType = logOperatingFun.logType().name(); + logOperation.setType(logType); + // 不记录浏览日志 + if(LogOperation.Type.BROWSE.name().equals(logType)){ + return; + } + if(LogOperation.Type.LOGIN.name().equals(logType)){ + // 登录日志 + for (Object arg : joinPoint.getArgs()) { + if (arg instanceof ConsumerDTO consumerDTO) { + logOperation.setUsername(consumerDTO.getUsername()); + break; + } + } + } + // 添加日志 + logService.addLogBefore(logOperation, result, attributes.getRequest(), attributes.getResponse()); + } +} diff --git a/src/main/java/com/jmal/clouddisk/acpect/PermissionAspect.java b/src/main/java/com/jmal/clouddisk/acpect/PermissionAspect.java new file mode 100644 index 0000000..1bc97b2 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/acpect/PermissionAspect.java @@ -0,0 +1,87 @@ +package com.jmal.clouddisk.acpect; + +import cn.hutool.core.text.CharSequenceUtil; +import com.jmal.clouddisk.annotation.Permission; +import com.jmal.clouddisk.exception.ExceptionType; +import com.jmal.clouddisk.service.impl.UserLoginHolder; +import com.jmal.clouddisk.service.impl.UserServiceImpl; +import com.jmal.clouddisk.util.CaffeineUtil; +import com.jmal.clouddisk.util.ResultUtil; +import org.aspectj.lang.ProceedingJoinPoint; +import org.aspectj.lang.annotation.Around; +import org.aspectj.lang.annotation.Aspect; +import org.aspectj.lang.annotation.Pointcut; +import org.aspectj.lang.reflect.MethodSignature; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + + +import java.lang.reflect.Method; +import java.util.List; + +/** + * @Description 授权切面 + * @blame jmal + * @Date 2021/1/8 8:38 下午 + */ +@Aspect +@Component +public class PermissionAspect { + + @Autowired + private UserLoginHolder userLoginHolder; + + @Autowired + private UserServiceImpl userService; + + @Pointcut("@annotation(com.jmal.clouddisk.annotation.Permission)") + public void privilege() { + } + + @Around("privilege()") + public Object before(ProceedingJoinPoint joinPoint) throws Throwable { + MethodSignature methodSignature = (MethodSignature) joinPoint.getSignature(); + Method targetMethod = methodSignature.getMethod(); + final Permission permission = privilegeParse(targetMethod); + if (permission == null) { + // 方法上没有权限注解, 直接调用方法 + return joinPoint.proceed(); + } + boolean onlyCreator = permission.onlyCreator(); + if (onlyCreator) { + // 只有创建者才有权限 + if (userService.getIsCreator(userLoginHolder.getUserId())) { + return joinPoint.proceed(); + } else { + return ResultUtil.error(ExceptionType.PERMISSION_DENIED); + } + } + String authority = permission.value(); + if (CharSequenceUtil.isBlank(authority)) { + // 方法上没有权限注解, 直接调用方法 + return joinPoint.proceed(); + } + // 上传前检查空间是否够用 + if ("cloud:file:upload".equals(authority) && CaffeineUtil.spaceFull(userLoginHolder.getUserId())) { + return ResultUtil.error(ExceptionType.SPACE_FULL); + } + // 获取当前身份的权限 + List authorities = userLoginHolder.getAuthorities(); + if (authorities != null && authorities.contains(authority)) { + return joinPoint.proceed(); + } + return ResultUtil.error(ExceptionType.PERMISSION_DENIED); + } + + /*** + * 解析权限注解 + * @param method Method + * @return Permission + */ + public static Permission privilegeParse(Method method) { + if (method.isAnnotationPresent(Permission.class)) { + return method.getAnnotation(Permission.class); + } + return null; + } +} diff --git a/src/main/java/com/jmal/clouddisk/annotation/AnnoManageUtil.java b/src/main/java/com/jmal/clouddisk/annotation/AnnoManageUtil.java new file mode 100644 index 0000000..3187df6 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/annotation/AnnoManageUtil.java @@ -0,0 +1,58 @@ +package com.jmal.clouddisk.annotation; + +import cn.hutool.core.text.CharSequenceUtil; +import jakarta.annotation.PostConstruct; +import org.reflections.Reflections; +import org.springframework.stereotype.Component; +import org.springframework.web.bind.annotation.RestController; + +import java.lang.reflect.Method; +import java.util.ArrayList; +import java.util.List; +import java.util.Set; + +/** + * @Description 注解工具 + * @blame jmal + * @Date 2021/1/8 8:38 下午 + */ +@Component +public class AnnoManageUtil { + + /*** + * 权限标识列表 + */ + public static final List AUTHORITIES = new ArrayList<>(); + + /** + * 通过反射获取所有的权限标识 + * + * @return + */ + @PostConstruct + public void getAllAuthorities() { + Reflections reflections = new Reflections("com.jmal.clouddisk.controller", "com.jmal.clouddisk.oss.web"); + Set> classesList = reflections.getTypesAnnotatedWith(RestController.class); + List arrayList = new ArrayList<>(); + for (Class classes : classesList) { + //得到该类下面的所有方法 + Method[] methods = classes.getDeclaredMethods(); + for (Method method : methods) { + //得到该类下面的Permission注解 + Permission permission = method.getAnnotation(Permission.class); + if(permission == null){ + continue; + } + if(CharSequenceUtil.isBlank(permission.value())){ + continue; + } + if(arrayList.contains(permission.value())){ + continue; + } + arrayList.add(permission.value()); + } + } + AUTHORITIES.addAll(arrayList.stream().sorted().toList()); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/annotation/LogOperatingFun.java b/src/main/java/com/jmal/clouddisk/annotation/LogOperatingFun.java new file mode 100644 index 0000000..b9bfcc6 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/annotation/LogOperatingFun.java @@ -0,0 +1,25 @@ +package com.jmal.clouddisk.annotation; + + + +import com.jmal.clouddisk.model.LogOperation; + +import java.lang.annotation.*; + +/** + * 操作方法日志注解 + * @author jmal + */ +@Documented +@Target({ElementType.METHOD, ElementType.TYPE}) +@Retention(RetentionPolicy.RUNTIME) +public @interface LogOperatingFun { + /** + * 操作功能 + */ + String value() default ""; + /*** + * 日志类型 + */ + LogOperation.Type logType() default LogOperation.Type.OPERATION; +} diff --git a/src/main/java/com/jmal/clouddisk/annotation/OperationType.java b/src/main/java/com/jmal/clouddisk/annotation/OperationType.java new file mode 100644 index 0000000..4063e48 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/annotation/OperationType.java @@ -0,0 +1,26 @@ +package com.jmal.clouddisk.annotation; + +/** + * OperationType 数据操作类型枚举 + * + * @author jmal + */ + +public enum OperationType { + /*** + * 添加 + */ + create, + /*** + * 查询 + */ + read, + /*** + * 更新 + */ + update, + /*** + * 删除 + */ + delete +} diff --git a/src/main/java/com/jmal/clouddisk/annotation/Permission.java b/src/main/java/com/jmal/clouddisk/annotation/Permission.java new file mode 100644 index 0000000..6f194b3 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/annotation/Permission.java @@ -0,0 +1,26 @@ +package com.jmal.clouddisk.annotation; + + + +import java.lang.annotation.*; + +/** + * 操作日志注解 + * @author jmal + */ +@Documented +@Retention(RetentionPolicy.RUNTIME) +@Target(ElementType.METHOD) +public @interface Permission { + + /*** + * @return 权限标识 + */ + String value() default ""; + + /*** + * @return 只有网盘创建者才能通过 + */ + boolean onlyCreator() default false; + +} diff --git a/src/main/java/com/jmal/clouddisk/config/EncryptionConfig.java b/src/main/java/com/jmal/clouddisk/config/EncryptionConfig.java new file mode 100644 index 0000000..87e5302 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/config/EncryptionConfig.java @@ -0,0 +1,27 @@ +package com.jmal.clouddisk.config; + +import cn.hutool.core.util.HexUtil; +import lombok.RequiredArgsConstructor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.security.crypto.encrypt.Encryptors; +import org.springframework.security.crypto.encrypt.TextEncryptor; + +import java.nio.charset.StandardCharsets; + +@Configuration +@RequiredArgsConstructor +public class EncryptionConfig { + + private final EncryptionKeyProvider encryptionKeyProvider; + + @Bean + public TextEncryptor textEncryptor() { + String secretKey = encryptionKeyProvider.getSecretKey(); + String salt = encryptionKeyProvider.getSalt(); + if (!HexUtil.isHexNumber(salt)) { + salt = HexUtil.encodeHexStr(salt.getBytes(StandardCharsets.UTF_8)); + } + return Encryptors.text(secretKey, salt); + } +} diff --git a/src/main/java/com/jmal/clouddisk/config/EncryptionKeyProvider.java b/src/main/java/com/jmal/clouddisk/config/EncryptionKeyProvider.java new file mode 100644 index 0000000..0fb7abf --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/config/EncryptionKeyProvider.java @@ -0,0 +1,130 @@ +package com.jmal.clouddisk.config; + +import io.github.cdimascio.dotenv.Dotenv; +import jakarta.annotation.PostConstruct; +import lombok.Getter; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.env.Environment; +import org.springframework.stereotype.Component; + +import java.io.IOException; +import java.io.PrintWriter; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.security.SecureRandom; +import java.util.HexFormat; + +@Component +@RequiredArgsConstructor +@Getter +@Slf4j +public class EncryptionKeyProvider { + + private static final String SECRET_KEY_NAME = "ENCRYPTION_SECRET_KEY"; + private static final String SALT_NAME = "ENCRYPTION_SALT"; + + private final FileProperties fileProperties; + private final Environment environment; + + private String secretKey; + private String salt; + + @PostConstruct + public void init() throws IOException { + // 步骤 1: 优先从环境变量加载 + boolean loadedFromEnv = loadKeysFromEnvironment(); + + // 步骤 2: 如果环境变量没有提供密钥,则回退到文件系统 + if (!loadedFromEnv) { + log.info("Encryption keys not found in environment variables. Checking for .env file..."); + loadKeysFromFileSystem(); + } + + // 步骤 3: 最终验证,确保密钥已成功加载 + if (this.secretKey == null || this.secretKey.isBlank() || this.salt == null || this.salt.isBlank()) { + throw new IllegalStateException("Failed to load or generate encryption keys from any source (environment, .env file). Application cannot start securely."); + } + + log.info("Encryption keys loaded successfully."); + } + + /** + * 尝试从环境变量加载密钥。 + * @return 如果成功从环境变量加载了两个密钥,则返回 true。 + */ + private boolean loadKeysFromEnvironment() { + String envSecretKey = environment.getProperty(SECRET_KEY_NAME); + String envSalt = environment.getProperty(SALT_NAME); + + if (envSecretKey != null && !envSecretKey.isBlank() && envSalt != null && !envSalt.isBlank()) { + log.info("Found {} and {} in environment variables. Using them for encryption.", SECRET_KEY_NAME, SALT_NAME); + this.secretKey = envSecretKey; + this.salt = envSalt; + return true; + } + return false; + } + + /** + * 从 .env 文件加载或创建密钥。 + */ + private void loadKeysFromFileSystem() throws IOException { + Path envPath = Paths.get(fileProperties.getRootDir(), ".env"); + + if (Files.exists(envPath)) { + log.info("Found existing .env file at [{}]. Loading keys from file.", envPath); + loadKeysFromDotenv(envPath.getParent().toString()); + } else { + log.warn("`.env` file not found at [{}]. Generating new encryption keys and saving to file. THIS IS A SECURITY-SENSITIVE EVENT.", envPath); + createNewEnvFileAndSetKeys(envPath); + } + } + + private void loadKeysFromDotenv(String directory) { + Dotenv dotenv = Dotenv.configure().directory(directory).load(); + this.secretKey = dotenv.get(SECRET_KEY_NAME); + this.salt = dotenv.get(SALT_NAME); + } + + private void createNewEnvFileAndSetKeys(Path envPath) throws IOException { + // 生成安全的随机密钥和盐 + String newSecretKey = generateRandomHexString(32); + String newSalt = generateRandomHexString(16); + + Files.createDirectories(envPath.getParent()); + + try (PrintWriter writer = new PrintWriter(envPath.toFile(), StandardCharsets.UTF_8)) { + writer.println("# 该文件由应用程序在首次运行时自动生成。"); + writer.println("# ======================================================================="); + writer.println("# !! 警告:这是一个极其敏感的安全配置文件,请勿随意修改或删除 !!"); + writer.println("#"); + writer.println("# 更改或丢失此文件中的密钥 (" + SECRET_KEY_NAME + " 或 " + SALT_NAME + ") 将导致:"); + writer.println("# 1. 所有已启用MFA(两步验证)的用户将无法登录,需要重置MFA。"); + writer.println("# 2. 已添加的OSS(对象存储)将无法使用, 需要重新添加。"); + writer.println("#"); + writer.println("# 请务必在安全的位置备份此文件。"); + writer.println("# ======================================================================="); + writer.println(); + writer.println("# 如果您希望通过环境变量来覆盖这些值,请设置名为 " + SECRET_KEY_NAME + " 和 " + SALT_NAME + " 的环境变量。"); + writer.println(); + writer.println(SECRET_KEY_NAME + "=" + newSecretKey); + writer.println(SALT_NAME + "=" + newSalt); + } + + log.info("Successfully created and populated new .env file at [{}].", envPath); + + // 将新生成的密钥加载到当前实例中 + this.secretKey = newSecretKey; + this.salt = newSalt; + } + + private String generateRandomHexString(int byteLength) { + SecureRandom random = new SecureRandom(); + byte[] bytes = new byte[byteLength]; + random.nextBytes(bytes); + return HexFormat.of().formatHex(bytes); + } +} diff --git a/src/main/java/com/jmal/clouddisk/config/ErrorConfig.java b/src/main/java/com/jmal/clouddisk/config/ErrorConfig.java new file mode 100644 index 0000000..100e46e --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/config/ErrorConfig.java @@ -0,0 +1,22 @@ +package com.jmal.clouddisk.config; + +import org.springframework.boot.web.server.ErrorPage; +import org.springframework.boot.web.server.ErrorPageRegistrar; +import org.springframework.boot.web.server.ErrorPageRegistry; +import org.springframework.http.HttpStatus; +import org.springframework.stereotype.Component; + +/** + * @author jmal + * @Description 错误页 + * @Date 2020/12/16 3:39 下午 + */ +@Component +public class ErrorConfig implements ErrorPageRegistrar { + @Override + public void registerErrorPages(ErrorPageRegistry registry) { + ErrorPage[] errorPages = new ErrorPage[1]; + errorPages[0] = new ErrorPage(HttpStatus.NOT_FOUND, "/public/404"); + registry.addErrorPages(errorPages); + } +} diff --git a/src/main/java/com/jmal/clouddisk/config/FileProperties.java b/src/main/java/com/jmal/clouddisk/config/FileProperties.java new file mode 100644 index 0000000..3fd3ec2 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/config/FileProperties.java @@ -0,0 +1,208 @@ +package com.jmal.clouddisk.config; + +import cn.hutool.core.io.file.PathUtil; +import cn.hutool.core.util.StrUtil; +import com.jmal.clouddisk.lucene.LuceneService; +import lombok.Data; +import lombok.extern.slf4j.Slf4j; +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.context.annotation.PropertySource; +import org.springframework.stereotype.Component; + +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +/** + * @Description 文件存储配置类 + * @Author jmal + * @Date 2020-03-24 11:15 + */ +@Data +@Component +@PropertySource(value = "classpath:file.yml", factory = YamlPropertyLoaderFactory.class) +@ConfigurationProperties(prefix = "file") +@Slf4j +public class FileProperties { + /*** + * 文件存储根目录 文件监控目录 + */ + private String rootDir = System.getProperty("user.dir"); + /*** + * 断点续传的临时文件目录名称 位于rootDir下,文件监控扫描忽略的目录 + */ + private String chunkFileDir = "chunkFileTemp"; + /** + * 视频转码后的缓存目录, 位于 ${chunkFileDir}/${username}/${videoTranscodeCache} + */ + private String videoTranscodeCache = "videoTranscodeCache"; + /** + * 回收站目录, 位于 ${chunkFileDir}/${username}/${jmalcloudTrashDir} + */ + private String jmalcloudTrashDir = ".jmalcloudTrash"; + /** + * lucene索引存储目录 + */ + private String luceneIndexDir = "luceneIndex"; + /*** + * 用户头像默认存储路径 + */ + private String userImgDir = "/Image/usr/"; + /*** + * markdown类型文件(文章)默认存储的位置 + */ + private String documentDir = "/Document/"; + /*** + * markdown类型文件(文章)里图片默认存储的位置 + */ + private String documentImgDir = "/Image/Document/"; + /** + * FTP server 端口号 + */ + private Integer ftpServerPort = 8089; + /*** + * 默认分隔符 + */ + private String separator = "/"; + /*** + * 文本编辑器支持的文本类型 + */ + private List simText = new ArrayList<>(); + /*** + * 文档类型 + */ + private List document = new ArrayList<>(); + /*** + * 是否开启文件监控(默认开启) + * 开启文件监控会监控 ${rootDir} 目录下文件的变化 + */ + private Boolean monitor = true; + /*** + * 文件监控扫描时间间隔(秒) + */ + private Long timeInterval = 10L; + /** + * 文件监控忽略的文件前缀 + */ + private List monitorIgnoreFilePrefix; + /** + * webDAV协议前缀 + */ + private String webDavPrefix; + /*** + * ip2region-path + */ + private String ip2regionDbPath; + + /** + * ocr-lite-onnx模型路径 + */ + private String ocrLiteONNXModelPath; + + /** + * 是否开启精确搜索 + */ + private Boolean exactSearch = false; + + /** + * ngram最大内容长度 + */ + private Double ngramMaxContentLengthMB = 5.0; + /** + * ngram最小长度 + */ + private Integer ngramMinSize = 2; + /** + * ngram最大长度 + */ + private Integer ngramMaxSize = 6; + + public void setIp2regionDbPath(String path) { + Path dbPath = Paths.get(path); + if (!PathUtil.exists(dbPath, true)) { + log.error("Error: Invalid ip2region.xdb file"); + ip2regionDbPath = null; + return; + } + this.ip2regionDbPath = path; + } + + private static final long GIGABYTE = 1024L * 1024 * 1024; + private static final double NGRAM_THRESHOLD_MB = 3.0; + private static final int MAX_MEMORY_GB = 4; + private static final double ONE_GB_CONFIG = 0.1; + private static final double TWO_GB_CONFIG = 1.0; + private static final double THREE_GB_CONFIG = 2.0; + + public int getNgramMaxContentLength() { + double effectiveNgramMaxContentLengthMB = determineEffectiveNGramLength(); + return (int) (effectiveNgramMaxContentLengthMB * LuceneService.BYTES_PER_MB); + } + + private double determineEffectiveNGramLength() { + // 当可用内存小于4G,需要设置更小的ngramMaxContentLengthMB + long maxMemory = Runtime.getRuntime().maxMemory(); + double effectiveNgramMaxContentLengthMB = this.ngramMaxContentLengthMB; + if (maxMemory < MAX_MEMORY_GB * GIGABYTE && effectiveNgramMaxContentLengthMB >= NGRAM_THRESHOLD_MB) { + if (maxMemory < GIGABYTE) { + effectiveNgramMaxContentLengthMB = ONE_GB_CONFIG; + } else if (maxMemory < 2 * GIGABYTE) { + effectiveNgramMaxContentLengthMB = TWO_GB_CONFIG; + } else { + effectiveNgramMaxContentLengthMB = THREE_GB_CONFIG; + } + } + return effectiveNgramMaxContentLengthMB; + } + + public void setMonitorIgnoreFilePrefix(String monitorIgnoreFilePrefix) { + if (monitorIgnoreFilePrefix != null && !monitorIgnoreFilePrefix.isEmpty()) { + this.monitorIgnoreFilePrefix = Arrays.asList(monitorIgnoreFilePrefix.split(",")); + } else { + this.monitorIgnoreFilePrefix = new ArrayList<>(); + } + } + + public String getWebDavPrefixPath() { + return "/" + webDavPrefix; + } + + public String getRootDir() { + return Paths.get(rootDir).toString(); + } + + public String getUserImgDir() { + return Paths.get(userImgDir).toString(); + } + + public String getDocumentImgDir() { + return Paths.get(documentImgDir).toString(); + } + + public String getDocumentDir() { + return Paths.get(documentDir).toString(); + } + + /** + * 判断用户名是否不允许使用 + * + * @param username 用户名 + * @return true: 不允许使用 + */ + public boolean notAllowUsername(String username) { + if (StrUtil.isBlank(username)) { + return false; + } + if (getChunkFileDir().equals(username)) { + return true; + } + if (getLuceneIndexDir().equals(username)) { + return true; + } + return username.startsWith("log-"); + } + + +} diff --git a/src/main/java/com/jmal/clouddisk/config/GlobalCorsConfig.java b/src/main/java/com/jmal/clouddisk/config/GlobalCorsConfig.java new file mode 100644 index 0000000..322233d --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/config/GlobalCorsConfig.java @@ -0,0 +1,13 @@ +package com.jmal.clouddisk.config; + +import org.springframework.context.annotation.Configuration; + +/** + * GlobalCorsConfig + * + * @author jmal + */ +@Configuration +public class GlobalCorsConfig { + +} diff --git a/src/main/java/com/jmal/clouddisk/config/JacksonConfig.java b/src/main/java/com/jmal/clouddisk/config/JacksonConfig.java new file mode 100644 index 0000000..92c3436 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/config/JacksonConfig.java @@ -0,0 +1,33 @@ +package com.jmal.clouddisk.config; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.databind.ObjectMapper; +import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Primary; +import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder; + +/** + * @Description: 去掉返回值中为null的字段 + * @author jmal + */ + +@Configuration +public class JacksonConfig { + @Bean + @Primary + @ConditionalOnMissingBean(ObjectMapper.class) + public ObjectMapper jacksonObjectMapper(Jackson2ObjectMapperBuilder builder) { + ObjectMapper objectMapper = builder.createXmlMapper(false).build(); + //通过该方法对mapper对象进行设置,所有序列化的对象都将按改规则进行系列化,属性为NULL 不序列化 + objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL); + return objectMapper; + } + +//Include.Include.ALWAYS 默认 +//Include.NON_DEFAULT 属性为默认值不序列化 +//nclude.NON_EMPTY 属性为 空("") 或者为 NULL 都不序列化 +//Include.NON_NULL 属性为NULL 不序列化 + +} diff --git a/src/main/java/com/jmal/clouddisk/config/MongoClientConfig.java b/src/main/java/com/jmal/clouddisk/config/MongoClientConfig.java new file mode 100644 index 0000000..7ebe1cf --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/config/MongoClientConfig.java @@ -0,0 +1,68 @@ +package com.jmal.clouddisk.config; + +import com.mongodb.ConnectionString; +import com.mongodb.MongoClientSettings; +import com.mongodb.client.MongoClient; +import com.mongodb.client.MongoClients; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.jetbrains.annotations.NotNull; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.core.env.Environment; +import org.springframework.data.mongodb.config.AbstractMongoClientConfiguration; +import org.springframework.data.mongodb.core.MongoTemplate; + +import java.util.Objects; + + +@Configuration +@Slf4j +@RequiredArgsConstructor +public class MongoClientConfig extends AbstractMongoClientConfiguration { + + private final Environment env; + + @NotNull + @Override + protected String getDatabaseName() { + String mongoURI = env.getProperty("spring.data.mongodb.uri"); + if (mongoURI != null && !mongoURI.isBlank()) { + try { + return Objects.requireNonNull(new ConnectionString(mongoURI).getDatabase()); + } catch (Exception e) { + log.error("Invalid MongoDB URI", e); + } + } + return "jmalcloud"; + } + + @Override + public boolean autoIndexCreation() { + return true; + } + + @NotNull + @Bean + @Override + public MongoClient mongoClient() { + String mongoURI = env.getProperty("spring.data.mongodb.uri"); + if (mongoURI != null && !mongoURI.isBlank()) { + try { + ConnectionString connectionString = new ConnectionString(mongoURI); + MongoClientSettings mongoClientSettings = MongoClientSettings.builder() + .applyConnectionString(connectionString) + .build(); + return MongoClients.create(mongoClientSettings); + } catch (Exception e) { + log.error("Failed to create MongoClient", e); + } + } + return MongoClients.create(); + } + + @Bean + public MongoTemplate mongoTemplate() { + return new MongoTemplate(mongoClient(), getDatabaseName()); + } +} diff --git a/src/main/java/com/jmal/clouddisk/config/MyTomcatServletWebServerFactoryCustomizer.java b/src/main/java/com/jmal/clouddisk/config/MyTomcatServletWebServerFactoryCustomizer.java new file mode 100644 index 0000000..13101cd --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/config/MyTomcatServletWebServerFactoryCustomizer.java @@ -0,0 +1,26 @@ +package com.jmal.clouddisk.config; + +import org.springframework.boot.autoconfigure.web.ServerProperties; +import org.springframework.boot.autoconfigure.web.servlet.TomcatServletWebServerFactoryCustomizer; +import org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory; +import org.springframework.stereotype.Component; + +/** + * @author jmal + */ +@Component +public class MyTomcatServletWebServerFactoryCustomizer extends TomcatServletWebServerFactoryCustomizer { + + public MyTomcatServletWebServerFactoryCustomizer(ServerProperties serverProperties) { + super(serverProperties); + } + + @Override + public void customize(TomcatServletWebServerFactory factory) { + super.customize(factory); + factory.addConnectorCustomizers(connector -> { + connector.setProperty("relaxedPathChars", "|{}[]"); + connector.setProperty("relaxedQueryChars", "|{}[]"); + }); + } +} diff --git a/src/main/java/com/jmal/clouddisk/config/TotpConfig.java b/src/main/java/com/jmal/clouddisk/config/TotpConfig.java new file mode 100644 index 0000000..adb1a3e --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/config/TotpConfig.java @@ -0,0 +1,48 @@ +package com.jmal.clouddisk.config; + +import dev.samstevens.totp.code.*; +import dev.samstevens.totp.qr.QrGenerator; +import dev.samstevens.totp.qr.ZxingPngQrGenerator; +import dev.samstevens.totp.secret.DefaultSecretGenerator; +import dev.samstevens.totp.secret.SecretGenerator; +import dev.samstevens.totp.time.SystemTimeProvider; +import dev.samstevens.totp.time.TimeProvider; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class TotpConfig { + + @Bean + public SecretGenerator secretGenerator() { + // 用于生成新的MFA密钥 + return new DefaultSecretGenerator(64); + } + + @Bean + public TimeProvider timeProvider() { + // 提供当前时间,用于TOTP计算 + return new SystemTimeProvider(); + } + + @Bean + public CodeGenerator codeGenerator() { + // TOTP代码生成器,使用标准SHA1算法,6位数字,30秒周期 + return new DefaultCodeGenerator(HashingAlgorithm.SHA1, 6); + } + + @Bean + public CodeVerifier codeVerifier(TimeProvider timeProvider, CodeGenerator codeGenerator) { + // 代码验证器 + DefaultCodeVerifier verifier = new DefaultCodeVerifier(codeGenerator, timeProvider); + // 关键:设置容错窗口,允许客户端和服务器之间有轻微的时间偏差 + // 1 表示允许前后一个时间周期(即前后30秒)的代码也有效 + verifier.setAllowedTimePeriodDiscrepancy(1); + return verifier; + } + + @Bean + public QrGenerator qrGenerator() { + return new ZxingPngQrGenerator(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/config/WebConfig.java b/src/main/java/com/jmal/clouddisk/config/WebConfig.java new file mode 100644 index 0000000..45ee30d --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/config/WebConfig.java @@ -0,0 +1,103 @@ +package com.jmal.clouddisk.config; + +import com.jmal.clouddisk.interceptor.*; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.jetbrains.annotations.NotNull; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.core.task.AsyncTaskExecutor; +import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; +import org.springframework.web.servlet.LocaleResolver; +import org.springframework.web.servlet.config.annotation.*; +import org.springframework.web.servlet.i18n.CookieLocaleResolver; + +import java.io.File; +import java.util.Locale; + +/** + * WebConfig + * + * @author jmal + */ +@Configuration +@Slf4j +@RequiredArgsConstructor +public class WebConfig implements WebMvcConfigurer { + + private final FileProperties fileProperties; + + private final AuthInterceptor authInterceptor; + + private final FileInterceptor fileInterceptor; + + private final ShareFileInterceptor shareFileInterceptor; + + private final DirectFileInterceptor directFileInterceptor; + + private final PreFileInterceptor preFileInterceptor; + + /** + * 注册拦截器 + */ + @Override + public void addInterceptors(InterceptorRegistry registry) { + registry.addInterceptor(localeChangeInterceptor()); + + registry.addInterceptor(authInterceptor).addPathPatterns("/**"). + excludePathPatterns("/", "/login/**", "/public/**", "/articles/**", "/error/**", "/file/**" , "/pre-file/**" , "/share-file/**", "/direct-file/**" , "/files/**","/swagger-ui/**"); + + registry.addInterceptor(fileInterceptor).addPathPatterns("/file/**").addPathPatterns("/files/**"); + + registry.addInterceptor(shareFileInterceptor).addPathPatterns("/share-file/{fileId}/{token}/**"); + + registry.addInterceptor(directFileInterceptor).addPathPatterns("/direct-file/{mark}/{filename}"); + + registry.addInterceptor(preFileInterceptor).addPathPatterns("/pre-file/{fileId}/**"); + } + + @Override + public void addResourceHandlers(ResourceHandlerRegistry registry) { + registry.addResourceHandler("/file/**") + .addResourceLocations("file:" + fileProperties.getRootDir() + File.separator); + log.info("静态资源目录:{}", fileProperties.getRootDir() + File.separator); + } + + public AsyncTaskExecutor taskExecutor() { + ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor(); + executor.setCorePoolSize(10); + executor.setMaxPoolSize(50); + executor.setQueueCapacity(100); + executor.setThreadNamePrefix("Custom-Executor-"); + executor.initialize(); + return executor; + } + + @Override + public void addCorsMappings(CorsRegistry registry) { + registry.addMapping("/**") + .allowedOrigins("*") + .allowedMethods("*") + .allowedHeaders("*"); + } + + @Override + public void configureAsyncSupport(@NotNull AsyncSupportConfigurer configurer) { + configurer.setTaskExecutor(taskExecutor()); + // configurer.setDefaultTimeout(3000); + WebMvcConfigurer.super.configureAsyncSupport(configurer); + } + + @Bean + public LocaleResolver localeResolver() { + CookieLocaleResolver resolver = new CookieLocaleResolver("locale"); + resolver.setDefaultLocale(Locale.US); + return resolver; + } + + @Bean + public HeaderLocaleChangeInterceptor localeChangeInterceptor() { + return new HeaderLocaleChangeInterceptor(); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/config/WebFilter.java b/src/main/java/com/jmal/clouddisk/config/WebFilter.java new file mode 100644 index 0000000..b6a8e83 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/config/WebFilter.java @@ -0,0 +1,35 @@ +package com.jmal.clouddisk.config; + +import jakarta.servlet.*; +import jakarta.servlet.http.HttpServletRequest; +import org.springframework.context.annotation.Lazy; +import org.springframework.stereotype.Component; + +import java.io.IOException; +import java.util.regex.Pattern; + +/** + * @author jmal + * @Description 路径过滤器 + * @Date 2020/10/20 4:12 下午 + */ +@Component +@Lazy +public class WebFilter implements Filter { + + public static final String API = "/api"; + public static final Pattern COMPILE = Pattern.compile(API); + + @Override + public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { + HttpServletRequest httpRequest = (HttpServletRequest) request; + String uri = httpRequest.getRequestURI(); + if (uri.startsWith(API)) { + uri = COMPILE.matcher(uri).replaceFirst(""); + httpRequest.getRequestDispatcher(uri).forward(request, response); + return; + } + chain.doFilter(request, response); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/config/YamlPropertyLoaderFactory.java b/src/main/java/com/jmal/clouddisk/config/YamlPropertyLoaderFactory.java new file mode 100644 index 0000000..fa77185 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/config/YamlPropertyLoaderFactory.java @@ -0,0 +1,36 @@ +package com.jmal.clouddisk.config; + +import org.springframework.boot.env.YamlPropertySourceLoader; +import org.springframework.core.env.PropertySource; +import org.springframework.core.io.support.DefaultPropertySourceFactory; +import org.springframework.core.io.support.EncodedResource; +import org.springframework.lang.Nullable; + +import java.io.IOException; +import java.util.List; + +/** + * yml 资源加载工厂类 + * + * @author jmal + */ +public class YamlPropertyLoaderFactory extends DefaultPropertySourceFactory { + + + @Override + public PropertySource createPropertySource(@Nullable String name, EncodedResource resource) throws IOException { + + if (null == resource) { + super.createPropertySource(name, resource); + } + if (resource == null) { + throw new RuntimeException("请配置 file.yml"); + } + List> sourceList = new YamlPropertySourceLoader().load(resource.getResource().getFilename(), resource.getResource()); + if(sourceList.size() < 1){ + throw new RuntimeException("请配置 file.yml"); + } + return sourceList.get(0); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/controller/ArticlesController.java b/src/main/java/com/jmal/clouddisk/controller/ArticlesController.java new file mode 100644 index 0000000..1619905 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/ArticlesController.java @@ -0,0 +1,436 @@ +package com.jmal.clouddisk.controller; + +import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.core.util.BooleanUtil; +import cn.hutool.core.util.ReUtil; +import cn.hutool.core.util.StrUtil; +import com.jmal.clouddisk.annotation.LogOperatingFun; +import com.jmal.clouddisk.model.*; +import com.jmal.clouddisk.service.IMarkdownService; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.service.impl.CategoryService; +import com.jmal.clouddisk.service.impl.LogService; +import com.jmal.clouddisk.service.impl.SettingService; +import com.jmal.clouddisk.service.impl.TagService; +import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.servlet.http.Cookie; +import jakarta.servlet.http.HttpServletRequest; +import lombok.RequiredArgsConstructor; +import org.jsoup.Jsoup; +import org.jsoup.nodes.Document; +import org.jsoup.nodes.Element; +import org.jsoup.select.Elements; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.*; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author jmal + * @Description 文章页面 + * @Date 2020/11/16 5:41 下午 + */ +@Controller +@Tag(name = "文章") +@RequiredArgsConstructor +public class ArticlesController { + + private final SettingService settingService; + + private final CategoryService categoryService; + + private final TagService tagService; + + private final IMarkdownService fileService; + + private final LogService logService; + + private final IUserService userService; + + private static final String X_PJAX = "X-PJAX"; + private static final String X_PJAX_TRUE = "true"; + + @RequestMapping("/public/404") + @LogOperatingFun(value = "404", logType = LogOperation.Type.ARTICLE) + public String notFind(HttpServletRequest request, Model map) { + boolean isPjax = pjaxMap(request, map, "404"); + map.addAttribute("titleName", "页面没有找到"); + return isPjax ? "404" : "index"; + } + + @GetMapping(value = "/articles/sitemap.xml", produces = {"application/xml;charset=UTF-8"}) + @LogOperatingFun(value = "sitemap.xml", logType = LogOperation.Type.ARTICLE) + @ResponseBody + public Urlset sitemapXml() { + return fileService.getSitemapXml(); + } + + @GetMapping(value = "/articles/sitemap.txt", produces = {"text/plain;charset=UTF-8"}) + @LogOperatingFun(value = "sitemap.txt", logType = LogOperation.Type.ARTICLE) + @ResponseBody + public String sitemapTxt() { + return fileService.getSitemapTxt(); + } + + @GetMapping("/") + public String redirectToArticles() { + return "redirect:/public/api"; + } + + @GetMapping("/articles") + @LogOperatingFun(value = "文章列表", logType = LogOperation.Type.ARTICLE) + public String index(HttpServletRequest request, Model map) { + map.addAttribute("mark", "articles"); + boolean isPjax = isPjax(request); + WebsiteSettingDTO websiteSettingDTO; + if (!isPjax) { + websiteSettingDTO = getSetting(request, map); + } else { + websiteSettingDTO = settingService.getWebsiteSetting(); + map.addAttribute("setting", settingService.getWebsiteSetting()); + } + map.addAttribute("titleName", websiteSettingDTO.getSiteName()); + int page = 1, pageSize = 10; + String pIndex = request.getParameter("page"); + if (!CharSequenceUtil.isBlank(pIndex)) { + page = Integer.parseInt(pIndex); + } + map.addAttribute("articlesData", fileService.getArticles(page, pageSize)); + return isPjax ? "articles" : "index"; + } + + @GetMapping("/articles/o/{slug}") + @LogOperatingFun(value = "独立页面", logType = LogOperation.Type.ARTICLE) + public String alonePage(HttpServletRequest request, @PathVariable String slug, Model map) { + String url = "/articles/o/" + slug; + long visits = logService.getVisitsByUrl(url); + map.addAttribute("visits", visits); + map.addAttribute("url", url); + return articlePage(request, slug, map); + } + + @GetMapping("/articles/s/{slug}") + @LogOperatingFun(value = "文章", logType = LogOperation.Type.ARTICLE) + public String article(HttpServletRequest request, @PathVariable String slug, Model map) { + String url = "/articles/s/" + slug; + long visits = logService.getVisitsByUrl(url); + map.addAttribute("visits", visits); + map.addAttribute("url", url); + return articlePage(request, slug, map); + } + + private String articlePage(HttpServletRequest request, String slug, Model map) { + boolean isPjax = pjaxMap(request, map, "article"); + ArticleVO articleVO = fileService.getMarkDownContentBySlug(slug); + if (articleVO == null || !BooleanUtil.isTrue(articleVO.getRelease())) { + return notFind(request, map); + } + Cookie[] cookies = request.getCookies(); + if (cookies != null) { + for (Cookie cookie : cookies) { + if ("consumerId".equals(cookie.getName())) { + articleVO.setEditable(true); + } + } + } + map.addAttribute("keywords", setKeywords(articleVO)); + map.addAttribute("description", setDescription(articleVO)); + + modifyHtml(map, articleVO); + + map.addAttribute("markdown", articleVO); + + map.addAttribute("titleName", articleVO.getName()); + return isPjax ? "article" : "index"; + } + + private static void modifyHtml(Model map, ArticleVO articleVO) { + // 使用 Jsoup 解析 HTML 内容, 使用parseBodyFragment 避免 Jsoup 自动添加 和 标签 + Document document = Jsoup.parseBodyFragment(articleVO.getHtml()); + + // 关闭 "Pretty Print"(美化排版) 避免 Jsoup 自动格式化 HTML + document.outputSettings().prettyPrint(false); + + // 遍历所有 h 标签(h1, h2, h3, h4, h5, h6) + for (int i = 1; i <= 6; i++) { + Elements headers = document.select("h" + i); + for (Element header : headers) { + if (!header.hasAttr("id")) { + String textContent = header.text(); + // 将非字母数字字符替换为下划线 + String idValue = "header-" + textContent.replaceAll("[^a-zA-Z0-9一-龥\\s]", "").trim().replaceAll("\\s+", "_"); + header.attr("id", idValue); + } + } + } + + // default img + String cover = articleVO.getCover(); + if (StrUtil.isBlank(cover)) { + Object object = map.getAttribute("setting"); + if (object instanceof WebsiteSettingDTO settingDTO) { + cover = settingDTO.getBackgroundSite(); + } + } + + // 遍历所有 img 标签 + Elements images = document.select("img"); + for (Element img : images) { + if (img.hasAttr("src")) { + String srcValue = img.attr("src"); + img.attr("data-src", srcValue); + img.addClass("lazy"); + img.attr("src", cover); + } + } + // 获取修改后的 HTML 内容 + String modifiedHtmlContent = document.body().html(); + articleVO.setHtml(modifiedHtmlContent); + } + + private String setDescription(ArticleVO articleVO) { + if (articleVO.getHtml() == null) { + return articleVO.getName(); + } + return articleVO.getHtml().substring(0, Math.min(articleVO.getHtml().length(), 500)).replaceAll("<[^>]*>",""); + } + + private String setKeywords(ArticleVO articleVO) { + StringBuilder stringBuilder = new StringBuilder(); + List list = articleVO.getTags(); + if (list != null && !list.isEmpty()) { + for (int i = 0; i < list.size(); i++) { + if (i != 0) { + stringBuilder.append(", "); + } + stringBuilder.append(list.get(i).getName()); + } + } + return stringBuilder.toString(); + } + + @GetMapping("/articles/categories") + @LogOperatingFun(value = "文章分类", logType = LogOperation.Type.ARTICLE) + public String categories(HttpServletRequest request, Model map) { + boolean isPjax = pjaxMap(request, map, "categories"); + map.addAttribute("titleName", "分类"); + map.addAttribute("categories", categoryService.list(null, null)); + return isPjax ? "categories" : "index"; + } + + @GetMapping("/articles/archives") + @LogOperatingFun(value = "文章归档", logType = LogOperation.Type.ARTICLE) + public String archives(HttpServletRequest request, Model map) { + boolean isPjax = pjaxMap(request, map, "archives"); + map.addAttribute("titleName", "归档"); + int page = 1, pageSize = 100; + String pIndex = request.getParameter("page"); + if (!CharSequenceUtil.isBlank(pIndex)) { + page = Integer.parseInt(pIndex); + } + map.addAttribute("articlesData", fileService.getArchives(page, pageSize)); + return isPjax ? "archives" : "index"; + } + + @GetMapping("/articles/categories/{categorySlugName}") + @LogOperatingFun(value = "文章分类", logType = LogOperation.Type.ARTICLE) + public String getCategoryByName(HttpServletRequest request, Model map, @PathVariable String categorySlugName) { + boolean isPjax = pjaxMap(request, map, "articles-query"); + if (CharSequenceUtil.isBlank(categorySlugName)) { + return notFind(request, map); + } + String categoryId = null; + if (!CharSequenceUtil.isBlank(categorySlugName)) { + CategoryDO categoryDO = categoryService.getCategoryInfoBySlug(null, categorySlugName); + if (categoryDO == null) { + return notFind(request, map); + } + ArticlesQueryVO query = categoryDO.toArticlesQuery(); + map.addAttribute("titleName", query.getName()); + map.addAttribute("query", query); + categoryId = categoryDO.getId(); + } + int page = 1, pageSize = 10; + String pIndex = request.getParameter("page"); + if (!CharSequenceUtil.isBlank(pIndex)) { + page = Integer.parseInt(pIndex); + } + map.addAttribute("articlesData", fileService.getArticlesByCategoryId(page, pageSize, categoryId)); + return isPjax ? "articles-query" : "index"; + } + + @GetMapping("/articles/tags") + @LogOperatingFun(value = "文章标签", logType = LogOperation.Type.ARTICLE) + public String tags(HttpServletRequest request, Model map) { + boolean isPjax = pjaxMap(request, map, "tags"); + map.addAttribute("titleName", "标签"); + map.addAttribute("tags", tagService.listTagsOfArticle()); + return isPjax ? "tags" : "index"; + } + + @GetMapping("/articles/tags/{tagSlugName}") + @LogOperatingFun(value = "文章标签", logType = LogOperation.Type.ARTICLE) + public String getTagByName(HttpServletRequest request, Model map, @PathVariable String tagSlugName) { + boolean isPjax = pjaxMap(request, map, "articles-query"); + if (CharSequenceUtil.isBlank(tagSlugName)) { + return notFind(request, map); + } + String tagId = null; + if (!CharSequenceUtil.isBlank(tagSlugName)) { + TagDO tag = tagService.getTagInfoBySlug(null, tagSlugName); + if (tag == null) { + return notFind(request, map); + } + ArticlesQueryVO query = tag.toArticlesQuery(); + map.addAttribute("titleName", query.getName()); + map.addAttribute("query", query); + tagId = tag.getId(); + } + int page = 1, pageSize = 10; + String pIndex = request.getParameter("page"); + if (!CharSequenceUtil.isBlank(pIndex)) { + page = Integer.parseInt(pIndex); + } + map.addAttribute("articlesData", fileService.getArticlesByTagId(page, pageSize, tagId)); + return isPjax ? "articles-query" : "index"; + } + + @GetMapping("/articles/search") + @LogOperatingFun(value = "文章搜索", logType = LogOperation.Type.ARTICLE) + public String search(HttpServletRequest request, Model map, @RequestParam String keyword) { + boolean isPjax = pjaxMap(request, map, "articles-query"); + int page = 1, pageSize = 10; + String pIndex = request.getParameter("page"); + if (!CharSequenceUtil.isBlank(pIndex)) { + page = Integer.parseInt(pIndex); + } + ArticlesQueryVO query = new ArticlesQueryVO(); + Page> articles = fileService.getArticlesByKeyword(page, pageSize, keyword); + if (!articles.isEmpty()) { + MarkdownVO markdownVO = articles.getData().get(0); + query.setBackground(markdownVO.getCover()); + } + query.setName("包含关键字 " + keyword + " 的文章"); + map.addAttribute("titleName", query.getName()); + map.addAttribute("query", query); + map.addAttribute("articlesData", articles); + return isPjax ? "articles-query" : "index"; + } + + @GetMapping("/articles/author/{username}") + @LogOperatingFun(value = "文章作者", logType = LogOperation.Type.ARTICLE) + public String author(HttpServletRequest request, Model map, @PathVariable String username) { + boolean isPjax = pjaxMap(request, map, "articles-query"); + String userId = userService.getUserIdByShowName(username); + if (CharSequenceUtil.isBlank(userId)) { + return notFind(request, map); + } + int page = 1, pageSize = 10; + String pIndex = request.getParameter("page"); + if (!CharSequenceUtil.isBlank(pIndex)) { + page = Integer.parseInt(pIndex); + } + ArticlesQueryVO query = new ArticlesQueryVO(); + Page> articles = fileService.getArticlesByAuthor(page, pageSize, userId); + if (!articles.isEmpty()) { + MarkdownVO markdownVO = articles.getData().get(0); + query.setBackground(markdownVO.getCover()); + } + query.setName(username + " 发布的文章"); + map.addAttribute("titleName", query.getName()); + map.addAttribute("query", query); + map.addAttribute("articlesData", articles); + return isPjax ? "articles-query" : "index"; + } + + private WebsiteSettingDTO getSetting(HttpServletRequest request, Model map) { + WebsiteSettingDTO websiteSettingDTO = getWebsiteSetting(); + setOperatingButtonList(websiteSettingDTO); + List markdownVOList = fileService.getAlonePages(); + map.addAttribute("alonePages", markdownVOList); + map.addAttribute("setting", websiteSettingDTO); + int alonePageShowIndex = 4 - websiteSettingDTO.getAlonePages().size(); + if (markdownVOList.size() > alonePageShowIndex) { + markdownVOList = markdownVOList.subList(0, alonePageShowIndex); + } + map.addAttribute("showAlonePages", markdownVOList); + map.addAttribute("darkTheme", darkTheme(request)); + return websiteSettingDTO; + } + + /*** + * 解析设置里的文本为操作按钮列表 + * @param websiteSettingDTO userSettingDTO + */ + private void setOperatingButtonList(WebsiteSettingDTO websiteSettingDTO) { + if (websiteSettingDTO != null && !CharSequenceUtil.isBlank(websiteSettingDTO.getOperatingButtons())) { + String operatingButtons = websiteSettingDTO.getOperatingButtons(); + List operatingButtonList = new ArrayList<>(); + for (String button : operatingButtons.split("[\\n]")) { + WebsiteSettingDTO.OperatingButton operatingButton = new WebsiteSettingDTO.OperatingButton(); + int splitIndex = button.indexOf(":"); + String label = button.substring(0, splitIndex); + String title = ReUtil.getGroup0("[^><]+(?=<\\/i>)", label); + if (CharSequenceUtil.isBlank(title)) { + title = ""; + } + operatingButton.setTitle(title); + operatingButton.setStyle(ReUtil.getGroup0("[^=\"<]+(?=\">)", label)); + operatingButton.setUrl(button.substring(splitIndex + 1)); + operatingButtonList.add(operatingButton); + } + websiteSettingDTO.setOperatingButtonList(operatingButtonList); + } + } + + private boolean darkTheme(HttpServletRequest request) { + Cookie[] cookies = request.getCookies(); + if (cookies != null) { + for (Cookie cookie : cookies) { + if ("jmal-theme".equals(cookie.getName())) { + if ("dark".equals(cookie.getValue())) { + return true; + } + } + } + } + return false; + } + + /*** + * 判断请求是否为pjax + * @param request HttpServletRequest + * @return boolean + */ + private boolean isPjax(HttpServletRequest request) { + return X_PJAX_TRUE.equals(request.getHeader(X_PJAX)); + } + + private boolean pjaxMap(HttpServletRequest request, Model map, String viewName) { + boolean isPjax = isPjax(request); + if (!isPjax) { + getSetting(request, map); + } else { + map.addAttribute("setting", getWebsiteSetting()); + } + map.addAttribute("mark", viewName); + return isPjax; + } + + private WebsiteSettingDTO getWebsiteSetting() { + WebsiteSettingDTO websiteSettingDTO = settingService.getWebsiteSetting(); + if (StrUtil.isNotBlank(websiteSettingDTO.getSiteUrl())) { + String siteUrl = websiteSettingDTO.getSiteUrl(); + if (siteUrl.endsWith("/")) { + siteUrl = siteUrl.substring(0, siteUrl.length() - 1); + websiteSettingDTO.setSiteUrl(siteUrl); + } + } + return websiteSettingDTO; + } + +} + + diff --git a/src/main/java/com/jmal/clouddisk/controller/FileViewController.java b/src/main/java/com/jmal/clouddisk/controller/FileViewController.java new file mode 100644 index 0000000..5bce831 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/FileViewController.java @@ -0,0 +1,54 @@ +package com.jmal.clouddisk.controller; + +import com.jmal.clouddisk.annotation.LogOperatingFun; +import com.jmal.clouddisk.model.LogOperation; +import com.jmal.clouddisk.service.IFileService; +import com.jmal.clouddisk.service.IShareService; +import com.jmal.clouddisk.util.ResultUtil; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestParam; + +/** + * @author jmal + * @Description 文件资源管理 + * @Date 2020/10/19 3:55 下午 + */ +@Tag(name = "文件资源管理") +@Controller +public class FileViewController { + + @Autowired + private IFileService fileService; + + @Autowired + IShareService shareService; + + @Operation(summary = "预览文档里的图片") + @GetMapping("/public/view") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public String imageRelativePath(@RequestParam String relativePath,@RequestParam String userId) { + ResultUtil.checkParamIsNull(relativePath,userId); + return fileService.publicViewFile(relativePath, userId); + } + + @Operation(summary = "分享:预览文件") + @GetMapping("/public/s/preview/{filename}") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public String publicPreview(@RequestParam String fileId, @RequestParam String shareId, @RequestParam String shareToken) { + shareService.validShare(shareToken, shareId); + return fileService.viewFile(fileId, fileId, shareToken, "preview"); + } + + @Operation(summary = "分享:下载单个文件") + @GetMapping("/public/s/download/{filename}") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public String publicDownload(@RequestParam String fileId, @RequestParam String shareId, @RequestParam String shareToken) { + shareService.validShare(shareToken, shareId); + return fileService.viewFile(fileId, fileId, shareToken, "download"); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/controller/record/LoginResponse.java b/src/main/java/com/jmal/clouddisk/controller/record/LoginResponse.java new file mode 100644 index 0000000..08c0e39 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/record/LoginResponse.java @@ -0,0 +1,3 @@ +package com.jmal.clouddisk.controller.record; + +public record LoginResponse(String token, boolean mfaRequired, String mfaToken) {} diff --git a/src/main/java/com/jmal/clouddisk/controller/record/MfaSetupResponse.java b/src/main/java/com/jmal/clouddisk/controller/record/MfaSetupResponse.java new file mode 100644 index 0000000..da944de --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/record/MfaSetupResponse.java @@ -0,0 +1,3 @@ +package com.jmal.clouddisk.controller.record; + +public record MfaSetupResponse(Boolean mfaEnable, String secret, String qrCodeImageUri) {} diff --git a/src/main/java/com/jmal/clouddisk/controller/record/MfaVerifyRequest.java b/src/main/java/com/jmal/clouddisk/controller/record/MfaVerifyRequest.java new file mode 100644 index 0000000..dd49b6f --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/record/MfaVerifyRequest.java @@ -0,0 +1,3 @@ +package com.jmal.clouddisk.controller.record; + +public record MfaVerifyRequest(String secret, String code) {} diff --git a/src/main/java/com/jmal/clouddisk/controller/rest/AuthController.java b/src/main/java/com/jmal/clouddisk/controller/rest/AuthController.java new file mode 100644 index 0000000..1a9249a --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/rest/AuthController.java @@ -0,0 +1,79 @@ +package com.jmal.clouddisk.controller.rest; + +import com.jmal.clouddisk.annotation.LogOperatingFun; +import com.jmal.clouddisk.annotation.Permission; +import com.jmal.clouddisk.interceptor.AuthInterceptor; +import com.jmal.clouddisk.model.LogOperation; +import com.jmal.clouddisk.model.rbac.ConsumerDTO; +import com.jmal.clouddisk.service.IAuthService; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.util.ResponseResult; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +/** + * 登录、登出、验证 + * + * @author jmal + */ +@RestController +@Tag(name = "登录认证") +public class AuthController { + + @Autowired + IAuthService authService; + + @Autowired + IUserService userService; + + @Operation(summary = "登录") + @LogOperatingFun(logType = LogOperation.Type.LOGIN) + @PostMapping("/login") + public ResponseResult login(HttpServletRequest request, HttpServletResponse response, @RequestBody ConsumerDTO consumerDTO) { + return authService.login(request, response, consumerDTO); + } + + @Operation(summary = "验证TOTP") + @LogOperatingFun(logType = LogOperation.Type.LOGIN) + @PostMapping("/public/verify-totp") + public ResponseResult verifyTotp(HttpServletRequest request, HttpServletResponse response, @RequestBody ConsumerDTO consumerDTO) { + return authService.verifyTotp(request, response, consumerDTO); + } + + @Operation(summary = "校验旧密码") + @PostMapping("/valid-old-pass") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + @Permission("sys:user:list") + public ResponseResult validOldPass(@RequestBody ConsumerDTO consumerDTO) { + return authService.validOldPass(consumerDTO.getId(), consumerDTO.getPassword()); + } + + @Operation(summary = "登出") + @GetMapping("/logout") + @LogOperatingFun + public ResponseResult logout(HttpServletRequest request, HttpServletResponse response) { + String token = request.getHeader(AuthInterceptor.JMAL_TOKEN); + return authService.logout(token, response); + } + + @Operation(summary = "是否有用户") + @GetMapping("/public/has_user") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult hasUser() { + return userService.hasUser(); + } + + @Operation(summary = "初始化创建管理员") + @PostMapping("/public/initialization") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult initialization(ConsumerDTO consumer) { + return userService.initialization(consumer); + } +} diff --git a/src/main/java/com/jmal/clouddisk/controller/rest/CategoryController.java b/src/main/java/com/jmal/clouddisk/controller/rest/CategoryController.java new file mode 100644 index 0000000..a59bd44 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/rest/CategoryController.java @@ -0,0 +1,96 @@ +package com.jmal.clouddisk.controller.rest; + +import com.jmal.clouddisk.annotation.LogOperatingFun; +import com.jmal.clouddisk.annotation.Permission; +import com.jmal.clouddisk.model.CategoryDO; +import com.jmal.clouddisk.model.CategoryDTO; +import com.jmal.clouddisk.model.LogOperation; +import com.jmal.clouddisk.service.impl.CategoryService; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.Arrays; +import java.util.List; + +/** + * @author jmal + * @Description 分类管理 + * @Date 2020/10/26 5:47 下午 + */ +@RestController +@Tag(name = "分类管理") +public class CategoryController { + + @Autowired + private CategoryService categoryService; + + @Operation(summary = "分类列表") + @GetMapping("/category/list") + @Permission("website:set:list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult> list(String userId, String parentCategoryId) { + return ResultUtil.success(categoryService.list(userId, parentCategoryId)); + } + + @Operation(summary = "分类树") + @GetMapping("/category/tree") + @Permission("website:set:list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult> tree(String userId) { + return ResultUtil.success(categoryService.tree(userId, false)); + } + + @Operation(summary = "分类信息") + @GetMapping("/category/info") + @Permission("website:set:list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult categoryInfo(@RequestParam String categoryId) { + CategoryDTO categoryDTO = new CategoryDTO(); + CategoryDO categoryDO = categoryService.getCategoryInfo(categoryId); + if(categoryDO != null){ + BeanUtils.copyProperties(categoryDO, categoryDTO); + } + return ResultUtil.success(categoryDTO); + } + + @Operation(summary = "添加分类") + @PostMapping("/category/add") + @LogOperatingFun + @Permission("website:set:add") + public ResponseResult add(@RequestParam String name, @ModelAttribute @Validated CategoryDTO categoryDTO) { + categoryDTO.setName(name); + return categoryService.add(categoryDTO); + } + + @Operation(summary = "更新分类") + @PutMapping("/category/update") + @Permission("website:set:update") + public ResponseResult update(@RequestParam String name, @ModelAttribute CategoryDTO categoryDTO) { + categoryDTO.setName(name); + return categoryService.update(categoryDTO); + } + + @Operation(summary = "设置默认分类") + @PutMapping("/category/setDefault") + @LogOperatingFun + @Permission("website:set:update") + public ResponseResult setDefault(@RequestParam String categoryId) { + return categoryService.setDefault(categoryId); + } + + @Operation(summary = "删除分类") + @DeleteMapping("/category/delete") + @LogOperatingFun + @Permission("website:set:delete") + public ResponseResult delete(@RequestParam String[] categoryIds) { + List categoryList = Arrays.asList(categoryIds); + categoryService.delete(categoryList); + return ResultUtil.success(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/controller/rest/CloudSettingController.java b/src/main/java/com/jmal/clouddisk/controller/rest/CloudSettingController.java new file mode 100644 index 0000000..d9f10dc --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/rest/CloudSettingController.java @@ -0,0 +1,207 @@ +package com.jmal.clouddisk.controller.rest; + +import com.jmal.clouddisk.annotation.LogOperatingFun; +import com.jmal.clouddisk.annotation.Permission; +import com.jmal.clouddisk.lucene.RebuildIndexTaskService; +import com.jmal.clouddisk.lucene.TaskProgress; +import com.jmal.clouddisk.lucene.TaskProgressService; +import com.jmal.clouddisk.model.LdapConfigDTO; +import com.jmal.clouddisk.model.LogOperation; +import com.jmal.clouddisk.model.WebsiteSettingDTO; +import com.jmal.clouddisk.ocr.OcrConfig; +import com.jmal.clouddisk.ocr.OcrService; +import com.jmal.clouddisk.service.IAuthService; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.service.impl.SettingService; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import com.jmal.clouddisk.media.TranscodeConfig; +import com.jmal.clouddisk.media.VideoProcessService; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.RequiredArgsConstructor; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; + +import java.util.List; +import java.util.Map; + +@RestController +@Tag(name = "网盘设置") +@RequiredArgsConstructor +public class CloudSettingController { + + private final SettingService settingService; + + private final TaskProgressService taskProgressService; + + private final IUserService userService; + + private final IAuthService authService; + + private final RebuildIndexTaskService rebuildIndexTaskService; + + private final VideoProcessService videoProcessService; + + private final OcrService ocrService; + + @Operation(summary = "重建索引-用户") + @GetMapping("/user/setting/sync") + @Permission(value = "cloud:file:upload") + @LogOperatingFun + public ResponseResult userSync(@RequestParam String username, String path) { + return rebuildIndexTaskService.sync(username, path, true); + } + + @Operation(summary = "重建索引-全盘") + @GetMapping("/cloud/setting/sync") + @Permission(value = "cloud:set:sync") + @LogOperatingFun + public ResponseResult sync(@RequestParam String username) { + return rebuildIndexTaskService.sync(username, null, true); + } + + @Operation(summary = "重新计算文件夹大小") + @GetMapping("/cloud/setting/recalculateFolderSize") + @Permission(value = "cloud:set:sync") + @LogOperatingFun + public ResponseResult recalculateFolderSize() { + return settingService.recalculateFolderSize(); + } + + @Operation(summary = "获取视频转码配置") + @GetMapping("/cloud/setting/transcode/config") + @Permission(value = "cloud:set:sync") + public ResponseResult getTranscodeConfig() { + return ResultUtil.success(videoProcessService.getTranscodeConfig()); + } + + @Operation(summary = "修改视频转码配置") + @PutMapping("/cloud/setting/transcode/config") + @Permission(value = "cloud:set:sync") + public ResponseResult setTranscodeConfig(@RequestBody @Validated TranscodeConfig transcodeConfig) { + return ResultUtil.success(videoProcessService.setTranscodeConfig(transcodeConfig)); + } + + @Operation(summary = "获取ocr配置") + @GetMapping("/cloud/setting/ocr/config") + @Permission(value = "cloud:set:sync") + public ResponseResult getOcrConfig() { + return ResultUtil.success(ocrService.getOcrConfig()); + } + + @Operation(summary = "修改ocr配置") + @PutMapping("/cloud/setting/ocr/config") + @Permission(value = "cloud:set:sync") + public ResponseResult setOcrConfig(@RequestBody @Validated OcrConfig ocrConfig) { + return ResultUtil.success(ocrService.setOcrConfig(ocrConfig)); + } + + @Operation(summary = "取消转码任务") + @PutMapping("/cloud/setting/transcode/cancel-task") + @Permission(value = "cloud:set:sync") + public ResponseResult cancelTranscodeTask() { + videoProcessService.cancelTranscodeTask(); + return ResultUtil.success(); + } + + @Operation(summary = "是否正在同步") + @GetMapping("/user/setting/isSync") + public ResponseResult> isSync() { + return ResultUtil.success(rebuildIndexTaskService.isSync()); + } + + @Operation(summary = "上传网盘logo") + @PostMapping("/user/setting/upload_logo") + @Permission(value = "cloud:set:sync") + @LogOperatingFun + public ResponseResult uploadLogo(MultipartFile file) { + return settingService.uploadLogo(file); + } + + @Operation(summary = "修改网盘名称") + @PutMapping("/user/setting/update_netdisk_name") + @Permission(value = "cloud:set:sync") + @LogOperatingFun + public ResponseResult updateNetdiskName(@RequestParam String netdiskName) { + return settingService.updateNetdiskName(netdiskName); + } + + @Operation(summary = "重置角色菜单") + @PutMapping("/user/setting/resetMenuAndRole") + @Permission(onlyCreator = true) + @LogOperatingFun + public ResponseResult resetMenuAndRole() { + settingService.resetMenuAndRole(); + return ResultUtil.success(); + } + + @Operation(summary = "获取是否禁用webp状态") + @GetMapping("/user/setting/get/webp") + @Permission("sys:user:list") + public ResponseResult getDisabledWebp(@RequestParam String userId) { + return ResultUtil.success(userService.getDisabledWebp(userId)); + } + + @Operation(summary = "是否禁用webp(默认开启)") + @PutMapping("/user/setting/disabled/webp") + @Permission("sys:user:update") + @LogOperatingFun + public ResponseResult disabledWebp(@RequestParam String userId, @RequestParam Boolean disabled) { + userService.disabledWebp(userId, disabled); + return ResultUtil.success(); + } + + @Operation(summary = "加载ldap配置") + @GetMapping("/ldap/config") + public ResponseResult loadLdapConfig() { + return ResultUtil.success(authService.loadLdapConfig()); + } + + @Operation(summary = "ldap配置") + @LogOperatingFun(logType = LogOperation.Type.OPERATION) + @PutMapping("/ldap/config") + @Permission(value = "cloud:set:sync") + public ResponseResult updateLdapConfig(@RequestBody LdapConfigDTO ldapConfigDTO) { + return authService.updateLdapConfig(ldapConfigDTO); + } + + @Operation(summary = "测试ldap配置") + @PutMapping("/ldap/test-config") + @Permission(value = "cloud:set:sync") + public ResponseResult testLdapConfig(@RequestBody LdapConfigDTO ldapConfigDTO) { + authService.testLdapConfig(ldapConfigDTO); + return ResultUtil.success(); + } + + @Operation(summary = "获取预览配置") + @GetMapping("/cloud/setting/preview/config") + public ResponseResult getPreviewConfig() { + return ResultUtil.success(settingService.getPreviewConfig()); + } + + @Operation(summary = "更新预览配置") + @LogOperatingFun(logType = LogOperation.Type.OPERATION) + @PutMapping("/cloud/setting/preview/config") + @Permission(value = "cloud:set:sync") + public ResponseResult updatePreviewConfig(@RequestBody WebsiteSettingDTO websiteSettingDTO) { + settingService.updatePreviewConfig(websiteSettingDTO); + return ResultUtil.success(); + } + + @Operation(summary = "加载任务进度") + @GetMapping("/cloud/task/progress") + @Permission(value = "cloud:file:upload") + public ResponseResult> getTaskProgress() { + return ResultUtil.success(taskProgressService.getTaskProgressList()); + } + + @Operation(summary = "加载转码状态") + @GetMapping("/cloud/transcode/status") + @Permission(value = "cloud:file:upload") + public ResponseResult> getTranscodeStatus() { + return ResultUtil.success(videoProcessService.getTranscodeStatus()); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/controller/rest/DirectLinkController.java b/src/main/java/com/jmal/clouddisk/controller/rest/DirectLinkController.java new file mode 100644 index 0000000..59cda89 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/rest/DirectLinkController.java @@ -0,0 +1,45 @@ +package com.jmal.clouddisk.controller.rest; + +import com.jmal.clouddisk.annotation.LogOperatingFun; +import com.jmal.clouddisk.annotation.Permission; +import com.jmal.clouddisk.service.impl.DirectLinkService; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +@RestController +@Tag(name = "直链管理") +@RequestMapping("direct-link") +@RequiredArgsConstructor +public class DirectLinkController { + + private final DirectLinkService directLinkService; + + @Operation(summary = "创建直链") + @PostMapping("/create") + @Permission(value = "cloud:file:upload") + @LogOperatingFun + public ResponseResult createDirectLink(@RequestParam String fileId) { + return ResultUtil.success(directLinkService.createDirectLink(fileId)); + } + + @Operation(summary = "重置直链") + @PutMapping("/reset") + @Permission(value = "cloud:file:upload") + @LogOperatingFun + public ResponseResult resetDirectLink(@RequestParam String fileId) { + return ResultUtil.success(directLinkService.resetDirectLink(fileId)); + } + + @Operation(summary = "重置所有直链") + @DeleteMapping("/reset-all") + @Permission(value = "cloud:file:upload") + @LogOperatingFun + public ResponseResult resetAllDirectLink(@RequestParam String fileId) { + return ResultUtil.success(directLinkService.resetAllDirectLink(fileId)); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/controller/rest/FileController.java b/src/main/java/com/jmal/clouddisk/controller/rest/FileController.java new file mode 100644 index 0000000..6744a41 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/rest/FileController.java @@ -0,0 +1,490 @@ +package com.jmal.clouddisk.controller.rest; + +import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.core.util.BooleanUtil; +import com.jmal.clouddisk.annotation.LogOperatingFun; +import com.jmal.clouddisk.annotation.Permission; +import com.jmal.clouddisk.exception.CommonException; +import com.jmal.clouddisk.exception.ExceptionType; +import com.jmal.clouddisk.model.*; +import com.jmal.clouddisk.oss.web.WebOssCommonService; +import com.jmal.clouddisk.oss.web.WebOssService; +import com.jmal.clouddisk.service.Constants; +import com.jmal.clouddisk.service.IFileService; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.service.impl.UserLoginHolder; +import com.jmal.clouddisk.util.CaffeineUtil; +import com.jmal.clouddisk.util.FileNameUtils; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import lombok.RequiredArgsConstructor; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.servlet.mvc.method.annotation.StreamingResponseBody; + +import java.io.IOException; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.Arrays; +import java.util.List; +import java.util.Optional; + + +/** + * @author jmal + * @Description 云文件管理控制器 + * @Author jmal + * @Date 2020-01-27 12:59 + */ +@Tag(name = "文件管理") +@RestController +@RequiredArgsConstructor +public class FileController { + + private final IFileService fileService; + + private final WebOssService webOssService; + + private final UserLoginHolder userLoginHolder; + + private final IUserService userService; + + @Operation(summary = "根据id获取文件信息") + @GetMapping("/file_info") + @Permission("cloud:file:list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult getFileById(@RequestParam String id) { + return ResultUtil.success(fileService.getById(id)); + } + + @Operation(summary = "文件列表") + @GetMapping("/list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult list(UploadApiParamDTO upload) { + return fileService.listFiles(upload); + } + + @Operation(summary = "查找下级目录") + @GetMapping("/query-file-tree") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult queryFileTree(UploadApiParamDTO upload, String fileId) { + return fileService.queryFileTree(upload, fileId); + } + + @Operation(summary = "搜索文件") + @GetMapping("/search-file") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult> searchFile(UploadApiParamDTO upload, String keyword) { + return fileService.searchFile(upload, keyword); + } + + @Operation(summary = "搜索文件并打开文件夹") + @GetMapping("/search-file-open") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult searchFileAndOpenDir(UploadApiParamDTO upload, String id, String folder) { + return fileService.searchFileAndOpenDir(upload, id, folder); + } + + @Operation(summary = "图片上传(Typora自定义命令上传图片接口)") + @PostMapping("/img-upload") + @LogOperatingFun + @Permission("cloud:file:upload") + public String imgUpload(HttpServletRequest request, MultipartFile file) { + if (file == null) { + throw new CommonException(ExceptionType.MISSING_PARAMETERS.getCode(), "缺少文件参数, file"); + } + String filepath = request.getHeader(Constants.FILE_PATH); + if (CharSequenceUtil.isBlank(filepath)) { + throw new CommonException(ExceptionType.MISSING_PARAMETERS.getCode(), "headers里缺少参数, filepath: 远程目标文件夹, 例如: '/Image/Typora/Public/Images'"); + } + String baseUrl = request.getHeader("baseurl"); + if (CharSequenceUtil.isBlank(baseUrl)) { + throw new CommonException(ExceptionType.MISSING_PARAMETERS.getCode(), "headers里缺少参数, baseUrl: 远程服务器地址, 例如: 'https://www.jmal.top/api'"); + } + return fileService.imgUpload(baseUrl, filepath, file); + } + + @Operation(summary = "文件上传") + @PostMapping("upload") + @Permission("cloud:file:upload") + public ResponseResult uploadPost(UploadApiParamDTO upload) throws IOException { + return fileService.upload(upload); + } + + @Operation(summary = "文件夹上传") + @PostMapping("upload-folder") + @Permission("cloud:file:upload") + public ResponseResult uploadFolder(UploadApiParamDTO upload) { + return fileService.uploadFolder(upload); + } + + @Operation(summary = "新建文件夹") + @PostMapping("new_folder") + @Permission("cloud:file:upload") + public ResponseResult newFolder(UploadApiParamDTO upload) { + return fileService.newFolder(upload); + } + + @Operation(summary = "检查文件/分片是否存在") + @GetMapping("upload") + @Permission("cloud:file:upload") + public ResponseResult checkUpload(UploadApiParamDTO upload) throws IOException { + return fileService.checkChunkUploaded(upload); + } + + @Operation(summary = "检查文件是否存在") + @PostMapping("checkExist") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + @Permission("cloud:file:upload") + public ResponseResult checkFileExist(@RequestBody UploadApiParamDTO upload) throws IOException { + return fileService.checkChunkUploaded(upload); + } + + @Operation(summary = "合并文件") + @PostMapping("merge") + @Permission("cloud:file:upload") + public ResponseResult merge(UploadApiParamDTO upload) throws IOException { + return fileService.merge(upload); + } + + @Operation(summary = "读取simText文件") + @GetMapping("/preview/text") + @Permission("cloud:file:list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult previewText(@RequestParam String id, @RequestParam String path, @RequestParam String fileName, Boolean content) { + String ossPath = CaffeineUtil.getOssPath(Paths.get(id)); + if (ossPath != null) { + Path prePth = Paths.get(WebOssCommonService.getUsernameByOssPath(ossPath), path, fileName); + return ResultUtil.success(webOssService.readToText(ossPath, prePth, content)); + } + return ResultUtil.success(fileService.getById(id, content)); + } + + @Operation(summary = "流式读取simText文件") + @GetMapping("/preview/text/stream") + @Permission("cloud:file:list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseEntity previewTextStream(@RequestParam String id, @RequestParam String path, @RequestParam String fileName) { + String ossPath = CaffeineUtil.getOssPath(Paths.get(id)); + StreamingResponseBody responseBody; + if (ossPath != null) { + Path prePth = Paths.get(WebOssCommonService.getUsernameByOssPath(ossPath), path, fileName); + responseBody = webOssService.readToTextStream(ossPath, prePth); + } else { + responseBody = fileService.getStreamById(id); + } + return new ResponseEntity<>(responseBody, HttpStatus.OK); + } + + @Operation(summary = "根据path读取simText文件") + @GetMapping("/preview/path/text") + @Permission("cloud:file:list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult previewTextByPath(@RequestParam String path, @RequestParam String username) { + Path prePth = Paths.get(username, path); + String ossPath = CaffeineUtil.getOssPath(prePth); + if (ossPath != null) { + return ResultUtil.success(webOssService.readToText(ossPath, prePth, false)); + } + return ResultUtil.success(fileService.previewTextByPath(FileNameUtils.safeDecode(path), username)); + } + + @Operation(summary = "根据path流式读取simText文件") + @GetMapping("/preview/path/text/stream") + @Permission("cloud:file:list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseEntity previewTextByPathStream(@RequestParam String path, @RequestParam String username) { + Path prePth = Paths.get(username, path); + String ossPath = CaffeineUtil.getOssPath(prePth); + StreamingResponseBody responseBody; + if (ossPath != null) { + responseBody = webOssService.readToTextStream(ossPath, prePth); + } else { + responseBody = fileService.previewTextByPathStream(FileNameUtils.safeDecode(path), username); + } + return new ResponseEntity<>(responseBody, HttpStatus.OK); + } + + @Operation(summary = "是否允许下载") + @GetMapping("/isAllowDownload") + @Permission("cloud:file:download") + public ResponseResult isAllowDownload(@RequestParam List fileIds) { + return fileService.isAllowDownload(fileIds); + } + + @Operation(summary = "是否允许批量下载") + @GetMapping("/isAllowPackageDownload") + @Permission("cloud:file:packageDownload") + public ResponseResult isAllowPackageDownload(@RequestParam List fileIds) { + return fileService.isAllowDownload(fileIds); + } + + @Operation(summary = "打包下载") + @GetMapping("/packageDownload") + @Permission("cloud:file:packageDownload") + @LogOperatingFun + public void packageDownload(HttpServletRequest request, HttpServletResponse response, @RequestParam String[] fileIds) { + if (fileIds != null && fileIds.length > 0) { + List fileIdList = Arrays.asList(fileIds); + fileService.packageDownload(request, response, fileIdList); + } else { + throw new CommonException(ExceptionType.MISSING_PARAMETERS.getCode(), ExceptionType.MISSING_PARAMETERS.getMsg()); + } + } + + @Operation(summary = "获取dwg文件对应的mxweb文件") + @GetMapping("/view/mxweb/{fileId}") + @Permission("cloud:file:list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseEntity getMxweb(@PathVariable String fileId) { + Optional file = fileService.getMxweb(fileId); + return file.map(fileService::getObjectResponseEntity).orElseGet(() -> ResponseEntity.status(HttpStatus.NOT_FOUND).body("找不到该文件")); + } + + @Operation(summary = "显示缩略图") + @GetMapping("/view/thumbnail") + @Permission("cloud:file:list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseEntity thumbnail(@RequestParam String id, Boolean showCover) { + String ossPath = CaffeineUtil.getOssPath(Paths.get(id)); + if (ossPath != null) { + return webOssService.thumbnail(ossPath, id); + } + Optional file = fileService.thumbnail(id, showCover); + return file.map(fileService::getObjectResponseEntity).orElseGet(() -> ResponseEntity.status(HttpStatus.NOT_FOUND).body("找不到该文件")); + } + + @Operation(summary = "显示缩略图") + @GetMapping("/view/thumbnail/user/{username}") + @Permission("cloud:file:list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseEntity thumbnailByUsername(@PathVariable String username, Boolean showCover) { + String avatar = userService.getAvatarByUsername(username); + return thumbnail(avatar, showCover); + } + + @Operation(summary = "显示缩略图") + @GetMapping("/view/thumbnail/{filename}") + @Permission("cloud:file:list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseEntity thumbnailName(@RequestParam String id, Boolean showCover) { + return thumbnail(id, showCover); + } + + @Operation(summary = "显示缩略图(媒体封面)") + @GetMapping("/view/cover") + @Permission("cloud:file:list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseEntity coverOfMedia(String id, String name) { + ResultUtil.checkParamIsNull(id, name); + Optional file = fileService.coverOfMedia(id, name); + return file.map(fileService::getObjectResponseEntity).orElseGet(() -> ResponseEntity.status(HttpStatus.NOT_FOUND).body("找不到该文件")); + } + + @Operation(summary = "收藏文件或文件夹") + @PostMapping("/favorite") + @LogOperatingFun + @Permission("cloud:file:update") + public ResponseResult favorite(@RequestParam String[] fileIds) { + if (fileIds != null && fileIds.length > 0) { + List list = Arrays.asList(fileIds); + return fileService.favorite(list); + } else { + throw new CommonException(ExceptionType.MISSING_PARAMETERS.getCode(), ExceptionType.MISSING_PARAMETERS.getMsg()); + } + } + + @Operation(summary = "设置文件标签") + @PostMapping("/setTag") + @LogOperatingFun + @Permission("cloud:file:update") + public ResponseResult setTag(@RequestBody @Validated EditTagDTO editTagDTO) { + return fileService.setTag(editTagDTO); + } + + @Operation(summary = "设置文件标签颜色") + @PutMapping("/updateTag") + @LogOperatingFun + @Permission("cloud:file:update") + public ResponseResult updateTag(@RequestParam String tagId, @RequestParam String name, @RequestParam String color) { + return fileService.setTag(tagId, name, color); + } + + @Operation(summary = "删除文件标签") + @DeleteMapping("/deleteTag") + @LogOperatingFun + @Permission("cloud:file:update") + public ResponseResult deleteTag(@RequestParam String tagId) { + return fileService.deleteTag(tagId); + } + + @Operation(summary = "设为公共文件") + @PutMapping("/setPublic") + @LogOperatingFun + @Permission("cloud:file:update") + public ResponseResult setPublic(@RequestParam String fileId) { + fileService.setPublic(fileId); + return ResultUtil.success(); + } + + @Operation(summary = "取消收藏") + @PostMapping("/unFavorite") + @LogOperatingFun + @Permission("cloud:file:update") + public ResponseResult unFavorite(@RequestParam String[] fileIds) { + if (fileIds != null && fileIds.length > 0) { + List list = Arrays.asList(fileIds); + return fileService.unFavorite(list); + } else { + throw new CommonException(ExceptionType.MISSING_PARAMETERS.getCode(), ExceptionType.MISSING_PARAMETERS.getMsg()); + } + } + + @Operation(summary = "删除文件") + @DeleteMapping("/delete") + @Permission("cloud:file:delete") + public ResponseResult delete(@RequestParam String username, @RequestParam String[] fileIds, @RequestParam String currentDirectory, Boolean sweep) { + if (fileIds != null && fileIds.length > 0) { + List list = Arrays.asList(fileIds); + return fileService.delete(username, currentDirectory, list, userLoginHolder.getUsername(), BooleanUtil.isTrue(sweep)); + } else { + throw new CommonException(ExceptionType.MISSING_PARAMETERS.getCode(), ExceptionType.MISSING_PARAMETERS.getMsg()); + } + } + + @Operation(summary = "放回原处") + @PostMapping("/restore") + @Permission("cloud:file:upload") + public ResponseResult restore(@RequestParam String[] fileIds) { + if (fileIds != null && fileIds.length > 0) { + List list = Arrays.asList(fileIds); + return fileService.restore(list, userLoginHolder.getUsername()); + } else { + throw new CommonException(ExceptionType.MISSING_PARAMETERS.getCode(), ExceptionType.MISSING_PARAMETERS.getMsg()); + } + } + + @Operation(summary = "彻底删除") + @DeleteMapping("/sweep") + @Permission("cloud:file:delete") + public ResponseResult sweep(@RequestParam String[] fileIds) { + if (fileIds != null && fileIds.length > 0) { + List list = Arrays.asList(fileIds); + return fileService.sweep(list, userLoginHolder.getUsername()); + } else { + throw new CommonException(ExceptionType.MISSING_PARAMETERS.getCode(), ExceptionType.MISSING_PARAMETERS.getMsg()); + } + } + + @Operation(summary = "清空回收站") + @DeleteMapping("/clear-trash") + @LogOperatingFun + @Permission("cloud:file:delete") + public ResponseResult clearTrash() { + return fileService.clearTrash(userLoginHolder.getUsername()); + } + + @Operation(summary = "重命名") + @GetMapping("/rename") + @LogOperatingFun + @Permission("cloud:file:update") + public ResponseResult rename(@RequestParam String newFileName, @RequestParam String username, @RequestParam String id, String folder) { + return fileService.rename(FileNameUtils.safeDecode(newFileName), username, id, folder); + } + + @Operation(summary = "移动或复制前检查目标目录是否存在要移动或复制的文件") + @GetMapping("/check-move-copy") + @Permission("cloud:file:update") + public ResponseResult> checkMoveOrCopy(UploadApiParamDTO upload, @RequestParam String[] froms, String to) throws IOException { + if (froms != null && froms.length > 0) { + List list = Arrays.asList(froms); + return fileService.checkMoveOrCopy(upload, list, to); + } else { + throw new CommonException(ExceptionType.MISSING_PARAMETERS.getCode(), ExceptionType.MISSING_PARAMETERS.getMsg()); + } + } + + @Operation(summary = "移动文件/文件夹") + @GetMapping("/move") + @Permission("cloud:file:update") + public ResponseResult move(UploadApiParamDTO upload, @RequestParam String[] froms, String to) throws IOException { + if (froms != null && froms.length > 0) { + List list = Arrays.asList(froms); + return fileService.move(upload, list, to); + } else { + throw new CommonException(ExceptionType.MISSING_PARAMETERS.getCode(), ExceptionType.MISSING_PARAMETERS.getMsg()); + } + } + + @Operation(summary = "复制文件/文件夹") + @GetMapping("/copy") + @Permission("cloud:file:update") + public ResponseResult copy(UploadApiParamDTO upload, @RequestParam String[] froms, String to) throws IOException { + if (froms != null && froms.length > 0) { + List list = Arrays.asList(froms); + return fileService.copy(upload, list, to); + } else { + throw new CommonException(ExceptionType.MISSING_PARAMETERS.getCode(), ExceptionType.MISSING_PARAMETERS.getMsg()); + } + } + + @Operation(summary = "创建副本") + @GetMapping("/duplicate") + @Permission("cloud:file:update") + public ResponseResult duplicate(@RequestParam String fileId, @RequestParam String newFilename) { + return fileService.duplicate(fileId, newFilename); + } + + @Operation(summary = "解压zip文件") + @GetMapping("/unzip") + @Permission("cloud:file:update") + public ResponseResult unzip(@RequestParam String fileId, String destFileId) { + return fileService.unzip(fileId, destFileId); + } + + @Operation(summary = "获取目录下的文件") + @GetMapping("/listfiles") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult listFiles(@RequestParam String path, @RequestParam String username, Boolean tempDir) { + Boolean dir = tempDir; + if (dir == null) { + dir = false; + } + return fileService.listFiles(FileNameUtils.safeDecode(path), username, dir); + } + + @Operation(summary = "获取上级文件列表") + @GetMapping("/upper-level-list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult upperLevelList(@RequestParam String path, @RequestParam String username) { + return fileService.upperLevelList(FileNameUtils.safeDecode(path), username); + } + + @Operation(summary = "根据path删除文件/文件夹") + @DeleteMapping("/delFile") + @Permission("cloud:file:delete") + public ResponseResult delFile(@RequestParam String path, @RequestParam String username) { + return fileService.delFile(FileNameUtils.safeDecode(path), username); + } + + @Operation(summary = "根据path重命名") + @GetMapping("/rename/path") + @Permission("cloud:file:update") + public ResponseResult renameByPath(@RequestParam String newFileName, @RequestParam String username, @RequestParam String path) { + return fileService.renameByPath(FileNameUtils.safeDecode(newFileName), username, FileNameUtils.safeDecode(path)); + } + + @Operation(summary = "根据path添加文件/文件夹") + @PostMapping("/addfile") + @Permission("cloud:file:upload") + public ResponseResult addFile(@RequestParam String fileName, @RequestParam Boolean isFolder, @RequestParam String username, @RequestParam String parentPath, String folder) { + return fileService.addFile(FileNameUtils.safeDecode(fileName), isFolder, username, FileNameUtils.safeDecode(parentPath), folder); + } +} diff --git a/src/main/java/com/jmal/clouddisk/controller/rest/FileVersionController.java b/src/main/java/com/jmal/clouddisk/controller/rest/FileVersionController.java new file mode 100644 index 0000000..410ca27 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/rest/FileVersionController.java @@ -0,0 +1,100 @@ +package com.jmal.clouddisk.controller.rest; + +import com.jmal.clouddisk.annotation.LogOperatingFun; +import com.jmal.clouddisk.annotation.Permission; +import com.jmal.clouddisk.model.GridFSBO; +import com.jmal.clouddisk.model.LogOperation; +import com.jmal.clouddisk.office.OfficeHistory; +import com.jmal.clouddisk.service.IFileVersionService; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.RequiredArgsConstructor; +import org.springframework.core.io.InputStreamResource; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.servlet.mvc.method.annotation.StreamingResponseBody; + +import java.util.List; + +/** + * @author jmal + * @Description 文件历史版本 + * @date 2023/5/10 16:56 + */ +@Tag(name = "文件历史版本") +@RequestMapping("history") +@RestController +@RequiredArgsConstructor +public class FileVersionController { + + private final IFileVersionService fileVersionService; + + @Operation(summary = "历史文件列表(根据fileId)") + @GetMapping("/list") + @Permission("cloud:file:list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult> list(String fileId, @RequestParam Integer pageSize, @RequestParam Integer pageIndex) { + return fileVersionService.listFileVersion(fileId, pageSize, pageIndex); + } + + @Operation(summary = "office历史文件列表(根据fileId)") + @GetMapping("/office/list") + @Permission("cloud:file:list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult> officeList(String fileId, @RequestParam Integer pageSize, @RequestParam Integer pageIndex) { + return fileVersionService.officeListFileVersion(fileId, pageSize, pageIndex); + } + + @Operation(summary = "历史文件列表(根据filepath)") + @GetMapping("/path/list") + @Permission("cloud:file:list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult> listByPath(@RequestParam String path, @RequestParam Integer pageSize, @RequestParam Integer pageIndex) { + return fileVersionService.listFileVersionByPath(path, pageSize, pageIndex); + } + + @Operation(summary = "读取历史文件") + @GetMapping("/preview/file") + @Permission("cloud:file:list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseEntity readHistoryFile(@RequestParam String id) { + return fileVersionService.readHistoryFile(id); + } + + @Operation(summary = "读取历史simText文件") + @GetMapping("/preview/text") + @Permission("cloud:file:list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult previewText(@RequestParam String id) { + return ResultUtil.success(fileVersionService.getFileById(id)); + } + + @Operation(summary = "恢复该历史版本") + @PutMapping("/recovery") + @Permission("cloud:file:update") + @LogOperatingFun(logType = LogOperation.Type.OPERATION) + public ResponseResult recovery(@RequestParam String id) { + return ResultUtil.success(fileVersionService.recovery(id)); + } + + @Operation(summary = "删除该历史版本") + @DeleteMapping("/delete") + @Permission("cloud:file:delete") + @LogOperatingFun(logType = LogOperation.Type.OPERATION) + public ResponseResult delete(@RequestParam String id) { + fileVersionService.deleteOne(id); + return ResultUtil.success(); + } + + @Operation(summary = "流式读取历史simText文件") + @GetMapping("/preview/text/stream") + @Permission("cloud:file:list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseEntity previewTextStream(@RequestParam String id) { + return new ResponseEntity<>(fileVersionService.getStreamFileById(id), HttpStatus.OK); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/controller/rest/HealthCheckController.java b/src/main/java/com/jmal/clouddisk/controller/rest/HealthCheckController.java new file mode 100644 index 0000000..ccbe85a --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/rest/HealthCheckController.java @@ -0,0 +1,18 @@ +package com.jmal.clouddisk.controller.rest; + +import io.swagger.v3.oas.annotations.tags.Tag; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@Tag(name = "健康检查") +public class HealthCheckController { + + @GetMapping("/public/health") + public ResponseEntity healthCheck() { + return new ResponseEntity<>("UP", HttpStatus.OK); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/controller/rest/LogController.java b/src/main/java/com/jmal/clouddisk/controller/rest/LogController.java new file mode 100644 index 0000000..2f75a27 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/rest/LogController.java @@ -0,0 +1,41 @@ +package com.jmal.clouddisk.controller.rest; + +import com.jmal.clouddisk.annotation.Permission; +import com.jmal.clouddisk.model.LogOperation; +import com.jmal.clouddisk.model.LogOperationDTO; +import com.jmal.clouddisk.service.impl.LogService; +import com.jmal.clouddisk.util.ResponseResult; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + * @author jmal + * @Description 日志管理 + * @Date 2021/2/8 2:12 下午 + */ +@RestController +@RequestMapping("log") +@Tag(name = "日志") +@RequiredArgsConstructor +public class LogController { + + private final LogService logService; + + @Operation(summary = "查询日志") + @GetMapping("/list") + @Permission("sys:log:list") + public ResponseResult> list(@ModelAttribute LogOperationDTO logOperationDTO) { + return logService.list(logOperationDTO); + } + + @Operation(summary = "查询文件操作记录") + @GetMapping("/getFileOperationHistory") + public ResponseResult> getFileOperationHistory(@ModelAttribute LogOperationDTO logOperationDTO, @RequestParam String fileId) { + return logService.getFileOperationHistory(logOperationDTO, fileId); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/controller/rest/LuceneSearchController.java b/src/main/java/com/jmal/clouddisk/controller/rest/LuceneSearchController.java new file mode 100644 index 0000000..2fb2011 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/rest/LuceneSearchController.java @@ -0,0 +1,56 @@ +package com.jmal.clouddisk.controller.rest; + +import com.jmal.clouddisk.lucene.SearchFileService; +import com.jmal.clouddisk.model.FileIntroVO; +import com.jmal.clouddisk.model.query.SearchDTO; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.RequiredArgsConstructor; +import org.apache.lucene.queryparser.classic.ParseException; +import org.apache.lucene.search.highlight.InvalidTokenOffsetsException; +import org.springframework.web.bind.annotation.*; + +import java.io.IOException; +import java.util.List; + +/** + * @author jmal + * @Description 全文搜索 + * @Date 2021/4/27 5:17 下午 + */ +@RestController +@RequestMapping("/search") +@Tag(name = "全文搜索") +@RequiredArgsConstructor +public class LuceneSearchController { + + private final SearchFileService searchFileService; + + @Operation(summary = "搜索") + @GetMapping("/") + public ResponseResult> list(SearchDTO searchDTO) throws IOException, ParseException, InvalidTokenOffsetsException { + return searchFileService.searchFile(searchDTO); + } + + @Operation(summary = "最近搜索记录") + @GetMapping("/recentlySearchHistory") + public ResponseResult> recentlySearchHistory(String keyword) { + return ResultUtil.success(searchFileService.recentlySearchHistory(keyword)); + } + + @Operation(summary = "删除搜索记录") + @DeleteMapping("/deleteSearchHistory") + public ResponseResult deleteSearchHistory(String id) { + searchFileService.deleteSearchHistory(id); + return ResultUtil.success(); + } + + @Operation(summary = "删除所有搜索记录") + @DeleteMapping("/deleteAllSearchHistory") + public ResponseResult deleteAllSearchHistory() { + searchFileService.deleteAllSearchHistory(); + return ResultUtil.success(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/controller/rest/MarkDownController.java b/src/main/java/com/jmal/clouddisk/controller/rest/MarkDownController.java new file mode 100644 index 0000000..596600e --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/rest/MarkDownController.java @@ -0,0 +1,136 @@ +package com.jmal.clouddisk.controller.rest; + +import cn.hutool.core.text.CharSequenceUtil; +import com.jmal.clouddisk.annotation.LogOperatingFun; +import com.jmal.clouddisk.annotation.Permission; +import com.jmal.clouddisk.model.*; +import com.jmal.clouddisk.oss.web.WebOssService; +import com.jmal.clouddisk.service.IFileService; +import com.jmal.clouddisk.service.IMarkdownService; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.util.CaffeineUtil; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.servlet.http.HttpServletRequest; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.Arrays; + +/** + * @author jmal + * @Description markdown + */ +@Controller +@Tag(name = "markdown管理") +@RestController +public class MarkDownController { + + @Autowired + private IMarkdownService markdownService; + + @Autowired + private WebOssService webOssService; + + @Autowired + private IFileService fileService; + + @Autowired + private IUserService userService; + + @Operation(summary = "获取markdown内容") + @GetMapping("/markdown/p") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult getMarkDownContent(ArticleDTO articleDTO, Integer pageIndex, Integer pageSize) { + articleDTO.setPageIndex(pageIndex); + articleDTO.setPageSize(pageSize); + if (CharSequenceUtil.isBlank(articleDTO.getMark())) { + return markdownService.getMarkdownList(articleDTO); + } else { + return markdownService.getMarkDownOne(articleDTO); + } + } + + @Operation(summary = "编辑文档(根据fileId)") + @PostMapping("/markdown/edit") + @Permission("cloud:file:update") + @LogOperatingFun(logType = LogOperation.Type.OPERATION) + public ResponseResult editMarkdown(@RequestBody @Validated ArticleParamDTO upload) { + return markdownService.editMarkdown(upload); + } + + @Operation(summary = "修改文档排序") + @PostMapping("/markdown/sort") + @Permission("cloud:file:update") + @LogOperatingFun + public ResponseResult sortMarkdown(@RequestBody String[] fileIdList) { + return markdownService.sortMarkdown(Arrays.asList(fileIdList)); + } + + @Operation(summary = "删除草稿") + @DeleteMapping("/markdown/deleteDraft") + @Permission("cloud:file:delete") + @LogOperatingFun(logType = LogOperation.Type.OPERATION) + public ResponseResult deleteDraft(@RequestParam String fileId, @RequestParam String username) { + return markdownService.deleteDraft(fileId, username); + } + + @Operation(summary = "编辑文档(根据path)") + @PostMapping("/markdown/edit1") + @Permission("cloud:file:update") + public ResponseResult editTextByPath(@RequestBody UploadApiParamDTO upload) { + ResultUtil.checkParamIsNull(upload.getUsername(), upload.getUserId(), upload.getRelativePath(), upload.getContentText()); + if (!CharSequenceUtil.isBlank(upload.getMountFileId())) { + FileDocument fileDocument = fileService.getById(upload.getMountFileId()); + upload.setUserId(fileDocument.getUserId()); + upload.setUsername(userService.getUserNameById(fileDocument.getUserId())); + upload.setRelativePath(fileDocument.getPath() + fileDocument.getName()); + upload.setOperationPermissionList(fileDocument.getOperationPermissionList()); + } + Path prePth = Paths.get(upload.getUsername(), upload.getRelativePath()); + String ossPath = CaffeineUtil.getOssPath(prePth); + if (ossPath != null) { + webOssService.putObjectText(ossPath, prePth, upload.getContentText()); + return ResultUtil.success(); + } + return markdownService.editTextByPath(upload); + } + + @Operation(summary = "上传文档里的图片") + @PostMapping("/upload-markdown-image") + @Permission("cloud:file:upload") + public ResponseResult uploadMarkdownImage(UploadImageDTO upload) { + if(CharSequenceUtil.isBlank(upload.getUserId()) || CharSequenceUtil.isBlank(upload.getUsername())) { + return ResultUtil.warning("参数里缺少 userId 或 username"); + } + return markdownService.uploadMarkdownImage(upload); + } + + @Operation(summary = "上传文档里链接图片") + @PostMapping("/upload-markdown-link-image") + @Permission("cloud:file:upload") + @LogOperatingFun + public ResponseResult uploadMarkdownLinkImage(HttpServletRequest request, @RequestBody UploadImageDTO uploadImageDTO) { + String userId = uploadImageDTO.getUserId(); + String username = uploadImageDTO.getUsername(); + if(CharSequenceUtil.isBlank(userId)){ + userId = request.getHeader("userId"); + uploadImageDTO.setUserId(userId); + } + if(CharSequenceUtil.isBlank(username)){ + username = request.getHeader("username"); + uploadImageDTO.setUsername(username); + } + if(CharSequenceUtil.isBlank(userId) || CharSequenceUtil.isBlank(username)) { + return ResultUtil.warning("请求头里或参数里必须含有userId和username"); + } + return markdownService.uploadMarkdownLinkImage(uploadImageDTO); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/controller/rest/MenuController.java b/src/main/java/com/jmal/clouddisk/controller/rest/MenuController.java new file mode 100644 index 0000000..edbd24a --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/rest/MenuController.java @@ -0,0 +1,96 @@ +package com.jmal.clouddisk.controller.rest; + +import com.jmal.clouddisk.annotation.AnnoManageUtil; +import com.jmal.clouddisk.annotation.LogOperatingFun; +import com.jmal.clouddisk.annotation.Permission; +import com.jmal.clouddisk.model.LogOperation; +import com.jmal.clouddisk.model.query.QueryMenuDTO; +import com.jmal.clouddisk.model.rbac.MenuDO; +import com.jmal.clouddisk.model.rbac.MenuDTO; +import com.jmal.clouddisk.service.impl.MenuService; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.Arrays; +import java.util.List; + +/** + * @author jmal + * @Description 菜单管理 + * @Date 2021/1/7 7:44 下午 + */ +@RestController +@RequestMapping("menu") +@Tag(name = "菜单管理") +public class MenuController { + + @Autowired + private MenuService menuService; + + @Operation(summary = "菜单树") + @GetMapping("/tree") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult> tree(String name, QueryMenuDTO queryDTO) { + queryDTO.setName(name); + return ResultUtil.success(menuService.tree(queryDTO)); + } + + @Operation(summary = "菜单信息") + @GetMapping("/info") + @Permission("sys:menu:list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult info(@RequestParam String menuId) { + MenuDTO menuDTO = new MenuDTO(); + MenuDO menuDO = menuService.getMenuInfo(menuId); + if(menuDO != null){ + BeanUtils.copyProperties(menuDO, menuDTO); + } + return ResultUtil.success(menuDTO); + } + + @Operation(summary = "权限标识列表") + @GetMapping("/authorities") + @Permission("sys:menu:list") + public ResponseResult> authorities() { + return ResultUtil.success(AnnoManageUtil.AUTHORITIES); + } + + @Operation(summary = "添加菜单") + @PostMapping("/add") + @LogOperatingFun + @Permission("sys:menu:add") + public ResponseResult add(@RequestParam String name, @ModelAttribute @Validated MenuDTO menuDTO) { + menuDTO.setName(name); + return menuService.add(menuDTO); + } + + @Operation(summary = "更新菜单") + @PutMapping("/update") + @LogOperatingFun + @Permission("sys:menu:update") + public ResponseResult update(@RequestParam String name, @ModelAttribute MenuDTO menuDTO) { + menuDTO.setName(name); + if(menuDTO.getId() == null){ + return ResultUtil.warning("缺少参数menuId"); + } + return menuService.update(menuDTO); + } + + @Operation(summary = "删除菜单") + @DeleteMapping("/delete") + @LogOperatingFun + @Permission("sys:menu:delete") + public ResponseResult delete(@RequestParam String[] menuIds) { + List categoryList = Arrays.asList(menuIds); + menuService.delete(categoryList); + return ResultUtil.success(); + } + + +} diff --git a/src/main/java/com/jmal/clouddisk/controller/rest/MfaController.java b/src/main/java/com/jmal/clouddisk/controller/rest/MfaController.java new file mode 100644 index 0000000..44f84b4 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/rest/MfaController.java @@ -0,0 +1,82 @@ +package com.jmal.clouddisk.controller.rest; + +import com.jmal.clouddisk.annotation.Permission; +import com.jmal.clouddisk.controller.record.MfaSetupResponse; +import com.jmal.clouddisk.controller.record.MfaVerifyRequest; +import com.jmal.clouddisk.exception.CommonException; +import com.jmal.clouddisk.exception.ExceptionType; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.service.impl.TotpService; +import com.jmal.clouddisk.service.impl.UserLoginHolder; +import com.jmal.clouddisk.util.MessageUtil; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequiredArgsConstructor +@RequestMapping("/mfa") +@Tag(name = "两步验证") +public class MfaController { + + private final TotpService totpService; + private final IUserService userService; + private final UserLoginHolder userLoginHolder; + private final MessageUtil messageUtil; + + @PostMapping("/setup") + @Permission("sys:user:update") + @Operation(summary = "准备开启两步验证") + public ResponseResult initiateMfaSetup() { + if (userService.isMfaEnabled(userLoginHolder.getUsername())) { + return ResultUtil.success(new MfaSetupResponse(true, null, null)); + } + final String secret = totpService.generateNewSecret(); + final String qrCodeUri = totpService.generateQrCodeImageUri(secret, userLoginHolder.getUsername()); + return ResultUtil.success(new MfaSetupResponse(false, secret, qrCodeUri)); + } + + @PostMapping("/enable") + @Permission("sys:user:update") + @Operation(summary = "验证并开启两步验证") + public ResponseResult verifyAndEnableMfa(@RequestBody MfaVerifyRequest request) { + if (userService.isMfaEnabled(userLoginHolder.getUsername())) { + throw new CommonException(ExceptionType.EXISTING_RESOURCES.getCode(), "MFA已启用"); + } + + // 使用前端传回的secret和用户输入的code进行验证 + if (!totpService.isRawCodeValid(request.secret(), request.code())) { + return ResultUtil.error(messageUtil.getMessage("login.mfaError")); + } + + // 验证成功!将密钥与用户绑定并启用MFA + userService.enableMfa(userLoginHolder.getUserId(), request.secret()); + + return ResultUtil.success(); + } + + @PostMapping("/disable") + @Permission("sys:user:update") + @Operation(summary = "验证并禁用两步验证") + public ResponseResult verifyDisableMfa(@RequestBody MfaVerifyRequest request) { + if (!userService.isMfaEnabled(userLoginHolder.getUsername())) { + throw new CommonException(ExceptionType.EXISTING_RESOURCES.getCode(), "MFA未启用"); + } + + // 对用户输入的code进行验证 + if (totpService.isCodeInvalid(request.code(), userLoginHolder.getUsername())) { + return ResultUtil.error(messageUtil.getMessage("login.mfaError")); + } + + // 验证成功!禁用MFA + userService.disableMfa(userLoginHolder.getUserId()); + + return ResultUtil.success(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/controller/rest/OcrController.java b/src/main/java/com/jmal/clouddisk/controller/rest/OcrController.java new file mode 100644 index 0000000..21a155d --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/rest/OcrController.java @@ -0,0 +1,39 @@ +package com.jmal.clouddisk.controller.rest; + +import cn.hutool.core.date.TimeInterval; +import cn.hutool.core.io.FileUtil; +import cn.hutool.http.HttpUtil; +import com.jmal.clouddisk.ocr.OcrService; +import com.jmal.clouddisk.service.impl.UserLoginHolder; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequiredArgsConstructor +@Tag(name = "OCR") +@Slf4j +public class OcrController { + + private final OcrService ocrService; + private final UserLoginHolder userLoginHolder; + + @GetMapping("/ocr") + public String performOcr(@RequestParam String fileUrl) { + String tempImagePath = ocrService.generateOrcTempImagePath(userLoginHolder.getUsername()); + try { + HttpUtil.downloadFile(fileUrl, tempImagePath); + TimeInterval timeInterval = new TimeInterval(); + timeInterval.start(); + String str = ocrService.doOCR(tempImagePath, null, "tesseract"); + log.info("OCR time consuming: {}", timeInterval.intervalMs()); + return str; + } finally { + // 删除临时文件 + FileUtil.del(tempImagePath); + } + } +} diff --git a/src/main/java/com/jmal/clouddisk/controller/rest/RoleController.java b/src/main/java/com/jmal/clouddisk/controller/rest/RoleController.java new file mode 100644 index 0000000..5912bdb --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/rest/RoleController.java @@ -0,0 +1,71 @@ +package com.jmal.clouddisk.controller.rest; + +import com.jmal.clouddisk.annotation.LogOperatingFun; +import com.jmal.clouddisk.annotation.Permission; +import com.jmal.clouddisk.model.LogOperation; +import com.jmal.clouddisk.model.query.QueryRoleDTO; +import com.jmal.clouddisk.model.rbac.RoleDTO; +import com.jmal.clouddisk.service.impl.RoleService; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Operation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + * @Description 角色管理 + * @blame jmal + * @Date 2021/1/7 7:44 下午 + */ +@RestController +@RequestMapping("role") +@Tag(name = "角色管理") +public class RoleController { + + @Autowired + private RoleService roleService; + + @Operation(summary = "角色列表") + @GetMapping("/list") + @Permission("sys:role:list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult> list(String name, @ModelAttribute QueryRoleDTO queryRoleDTO) { + queryRoleDTO.setName(name); + return roleService.list(queryRoleDTO); + } + + @Operation(summary = "添加角色") + @PostMapping("/add") + @LogOperatingFun + @Permission("sys:role:add") + public ResponseResult add(@RequestParam String name, @ModelAttribute @Validated RoleDTO roleDTO) { + roleDTO.setName(name); + return roleService.add(roleDTO); + } + + @Operation(summary = "修改角色") + @PutMapping("/update") + @LogOperatingFun + @Permission("sys:role:update") + public ResponseResult update(@RequestParam String name, @RequestBody @ModelAttribute @Validated RoleDTO roleDTO) { + roleDTO.setName(name); + if (roleDTO.getId() == null) { + return ResultUtil.warning("缺少参数roleId"); + } + return roleService.update(roleDTO); + } + + @Operation(summary = "删除角色") + @DeleteMapping("/delete") + @LogOperatingFun + @Permission("sys:role:delete") + public ResponseResult delete(@RequestParam String[] roleIds) { + roleService.delete(roleIds); + return ResultUtil.success(); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/controller/rest/ShareController.java b/src/main/java/com/jmal/clouddisk/controller/rest/ShareController.java new file mode 100644 index 0000000..d8b244d --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/rest/ShareController.java @@ -0,0 +1,309 @@ +package com.jmal.clouddisk.controller.rest; + +import com.jmal.clouddisk.annotation.LogOperatingFun; +import com.jmal.clouddisk.annotation.Permission; +import com.jmal.clouddisk.exception.CommonException; +import com.jmal.clouddisk.exception.ExceptionType; +import com.jmal.clouddisk.interceptor.FileInterceptor; +import com.jmal.clouddisk.model.*; +import com.jmal.clouddisk.model.rbac.ConsumerDO; +import com.jmal.clouddisk.oss.web.WebOssService; +import com.jmal.clouddisk.service.Constants; +import com.jmal.clouddisk.service.IFileService; +import com.jmal.clouddisk.service.IShareService; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.util.CaffeineUtil; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import lombok.RequiredArgsConstructor; +import org.springframework.http.HttpHeaders; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.servlet.mvc.method.annotation.StreamingResponseBody; + +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.*; + +/** + * @Description share + * @Author jmal + * @Date 2020-03-17 16:22 + */ +@Tag(name = "文件分享") +@RestController +@RequiredArgsConstructor +public class ShareController { + + public static final String SHARE_EXPIRED = "该分享已过期"; + + private final IShareService shareService; + + private final IFileService fileService; + + private final IUserService userService; + + private final FileInterceptor fileInterceptor; + + private final WebOssService webOssService; + + @Operation(summary = "该分享已失效") + @GetMapping("/public/s/invalid") + public String invalid() { + return "该分享已失效"; + } + + @Operation(summary = "生成分享链接") + @PostMapping("/share/generate") + @Permission("cloud:file:update") + @LogOperatingFun + public ResponseResult generateLink(@RequestBody ShareDO share) { + ResultUtil.checkParamIsNull(share.getFileId(), share.getUserId()); + return shareService.generateLink(share); + } + + @Operation(summary = "生成shareToken") + @GetMapping("/share/generate/share-token") + @Permission("cloud:file:list") + public ResponseResult generateShareToken(@RequestParam String fileId) { + return shareService.generateShareToken(fileId); + } + + @Operation(summary = "获取分享信息") + @GetMapping("/get/share") + @Permission("cloud:file:list") + @LogOperatingFun + public ResponseResult getShare(@RequestParam String shareId) { + return ResultUtil.success(shareService.getShare(shareId)); + } + + @Operation(summary = "获取分享信息") + @GetMapping("/get/share/by/fileId") + @Permission("cloud:file:list") + @LogOperatingFun + public ResponseResult getShareByFileId(@RequestParam String fileId) { + return ResultUtil.success(shareService.getShareByFileId(fileId)); + } + + @Operation(summary = "是否含有子分享") + @GetMapping("/share/has-sub-share") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult hasSubShare(@RequestParam List shareIds) { + return ResultUtil.success(shareService.hasSubShare(shareIds)); + } + + @Operation(summary = "文件夹下是否含有子分享") + @GetMapping("/share/folder-sub-share") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult folderSubShare(@RequestParam String fileId) { + return ResultUtil.success(shareService.folderSubShare(fileId)); + } + + @Operation(summary = "取消分享") + @DeleteMapping("/share/cancel") + @Permission("cloud:file:delete") + @LogOperatingFun + public ResponseResult cancelShare(@RequestParam String[] shareId) { + return shareService.cancelShare(shareId); + } + + @Operation(summary = "分享列表") + @GetMapping("/share/list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult shareList(UploadApiParamDTO upload) { + return shareService.shareList(upload); + } + + @Operation(summary = "挂载文件夹") + @PutMapping("/share/mount-folder") + @Permission("cloud:file:upload") + public ResponseResult mountFile(@RequestBody UploadApiParamDTO upload) { + shareService.mountFile(upload); + return ResultUtil.success(); + } + + @Operation(summary = "验证提取码") + @PostMapping("/public/valid-share-code") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult validShareCode(@RequestBody Map body) { + String shareId = body.get(Constants.SHARE_ID); + String shareCode = body.get("shareCode"); + ResultUtil.checkParamIsNull(shareId, shareCode); + return shareService.validShareCode(shareId, shareCode); + } + + @Operation(summary = "访问分享链接") + @GetMapping("/public/access-share") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult accessShare(HttpServletRequest request, @RequestParam String share, Integer pageIndex, Integer pageSize, Boolean showFolderSize) { + ShareDO shareDO = shareService.getShare(share); + shareService.validShare(request.getHeader(Constants.SHARE_TOKEN), shareDO); + return shareService.accessShare(shareDO, pageIndex, pageSize, showFolderSize); + } + + @Operation(summary = "获取分享者信息") + @GetMapping("/public/get/sharer") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult getSharer(@RequestParam String shareId) { + return shareService.getSharer(shareId); + } + + @Operation(summary = "访问分享链接里的目录") + @GetMapping("public/access-share/open") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult accessShareOpenDir(HttpServletRequest request, @RequestParam String share, @RequestParam String fileId, Integer pageIndex, Integer pageSize, Boolean showFolderSize) { + ShareDO shareDO = shareService.getShare(share); + shareService.validShare(request.getHeader(Constants.SHARE_TOKEN), shareDO); + return shareService.accessShareOpenDir(shareDO, fileId, pageIndex, pageSize, showFolderSize); + } + + @Operation(summary = "打包下载") + @GetMapping("/public/s/packageDownload") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public void publicPackageDownload(HttpServletRequest request, HttpServletResponse response, @RequestParam String shareId, @RequestParam String[] fileIds) { + shareService.validShare(request.getParameter(Constants.SHARE_TOKEN), shareId); + if (fileIds != null && fileIds.length > 0) { + List fileIdList = Arrays.asList(fileIds); + fileService.publicPackageDownload(request, response, fileIdList); + } else { + throw new CommonException(ExceptionType.MISSING_PARAMETERS.getCode(), ExceptionType.MISSING_PARAMETERS.getMsg()); + } + } + + @Operation(summary = "打包下载") + @GetMapping("/public/s/{fileId}/packageDownload/{filename}") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public void publicPackageDownloadOne(HttpServletRequest request, HttpServletResponse response, @PathVariable String fileId, @PathVariable String filename) { + FileDocument fileDocument = fileService.getById(fileId); + if (fileInterceptor.isNotAllowAccess(fileDocument, request)) { + return; + } + List fileIdList = Collections.singletonList(fileId); + fileService.publicPackageDownload(request, response, fileIdList); + } + + @Operation(summary = "显示缩略图") + @GetMapping("/articles/s/view/thumbnail") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseEntity articlesThumbnail(String id, Boolean showCover) { + return thumbnail(id, showCover, null); + } + + @Operation(summary = "显示缩略图") + @GetMapping("/public/s/view/thumbnail") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseEntity publicThumbnail(String id, Boolean showCover, HttpServletRequest request) { + return thumbnail(id, showCover, request); + } + + @Operation(summary = "获取dwg文件对应的mxweb文件") + @GetMapping("/public/s/view/mxweb/{fileId}/{shareId}") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseEntity publicGetMxweb(HttpServletRequest request, @PathVariable String shareId, @PathVariable String fileId) { + validShare(request, shareId); + Optional file = fileService.getMxweb(fileId); + return file.map(fileService::getObjectResponseEntity).orElseGet(() -> ResponseEntity.status(HttpStatus.NOT_FOUND).body("找不到该文件")); + } + + @Operation(summary = "显示缩略图") + @GetMapping("/public/s/view/thumbnail/{filename}") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseEntity publicThumbnailName(String id, Boolean showCover, HttpServletRequest request) { + return publicThumbnail(id, showCover, request); + } + + @Operation(summary = "显示缩略图(媒体封面)") + @GetMapping("/public/s/view/cover") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseEntity coverOfMedia(String id, String name) { + ResultUtil.checkParamIsNull(id, name); + Optional file = fileService.coverOfMedia(id, name); + return file.map(fileService::getObjectResponseEntity).orElseGet(() -> ResponseEntity.status(HttpStatus.NOT_FOUND).body("找不到该文件")); + } + + private ResponseEntity thumbnail(String id, Boolean showCover, HttpServletRequest request) { + ResultUtil.checkParamIsNull(id); + Optional file = fileService.thumbnail(id, showCover); + if (fileInterceptor.isNotAllowAccess(file.orElse(null), request)) { + return null; + } + String ossPath = CaffeineUtil.getOssPath(Paths.get(id)); + if (ossPath != null) { + return webOssService.thumbnail(ossPath, id); + } + return file.>map(fileDocument -> + ResponseEntity.ok() + .header(HttpHeaders.CONTENT_TYPE, fileDocument.getContentType()) + .header(HttpHeaders.CONNECTION, "close") + .header(HttpHeaders.CONTENT_LENGTH, String.valueOf(fileDocument.getContent().length)) + .header(HttpHeaders.CONTENT_ENCODING, "utf-8") + .header(HttpHeaders.CACHE_CONTROL, "public, max-age=604800") + .body(fileDocument.getContent())).orElseGet(() -> ResponseEntity.status(HttpStatus.NOT_FOUND).body("找不到该文件")); + } + + @Operation(summary = "读取simText文件") + @GetMapping("/public/s/preview/text") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult preview(HttpServletRequest request, @RequestParam String shareId, @RequestParam String fileId, Boolean content) { + validShare(request, shareId); + Path prePth = Paths.get(fileId); + String ossPath = CaffeineUtil.getOssPath(prePth); + if (ossPath != null) { + return ResultUtil.success(webOssService.readToText(ossPath, prePth, content)); + } + return ResultUtil.success(fileService.getById(fileId, content)); + } + + @Operation(summary = "流式读取simText文件") + @GetMapping("/public/s/preview/text/stream") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseEntity previewTextStream(HttpServletRequest request, @RequestParam String shareId, @RequestParam String fileId) { + validShare(request, shareId); + Path prePth = Paths.get(fileId); + String ossPath = CaffeineUtil.getOssPath(prePth); + StreamingResponseBody responseBody; + if (ossPath != null) { + responseBody = webOssService.readToTextStream(ossPath, prePth); + } else { + responseBody = fileService.getStreamById(fileId); + } + return new ResponseEntity<>(responseBody, HttpStatus.OK); + } + + private void validShare(HttpServletRequest request, String shareId) { + ShareDO shareDO = shareService.getShare(shareId); + shareService.validShare(request.getHeader(Constants.SHARE_TOKEN), shareDO); + ConsumerDO consumer = userService.userInfoById(shareDO.getUserId()); + if (consumer == null) { + throw new CommonException(ExceptionType.WARNING.getCode(), SHARE_EXPIRED); + } + } + + @Operation(summary = "根据id获取分享的文件信息") + @GetMapping("/public/file_info") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult getFileById(HttpServletRequest request, @RequestParam String fileId, @RequestParam String shareId) { + shareService.validShare(request.getHeader(Constants.SHARE_TOKEN), shareId); + return ResultUtil.success(fileService.getById(fileId)); + } + + @Operation(summary = "挂用户获取分享文件信息") + @GetMapping("/mount/file_info") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult> getMountFileInfo(@RequestParam String fileId, @RequestParam String fileUserId) { + return ResultUtil.success(shareService.getMountFileInfo(fileId, fileUserId)); + } + + @Operation(summary = "挂用户获取目录Id") + @GetMapping("/mount/folder/id") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult getMountFolderId(@RequestParam String otherFileId, @RequestParam String fileUsername, @RequestParam String path) { + return ResultUtil.success(shareService.getMountFolderId(path, fileUsername, otherFileId)); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/controller/rest/TagController.java b/src/main/java/com/jmal/clouddisk/controller/rest/TagController.java new file mode 100644 index 0000000..e4f3500 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/rest/TagController.java @@ -0,0 +1,89 @@ +package com.jmal.clouddisk.controller.rest; + +import com.jmal.clouddisk.annotation.LogOperatingFun; +import com.jmal.clouddisk.annotation.Permission; +import com.jmal.clouddisk.model.LogOperation; +import com.jmal.clouddisk.model.TagDO; +import com.jmal.clouddisk.model.TagDTO; +import com.jmal.clouddisk.service.impl.TagService; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.Arrays; +import java.util.List; + +/** + * @author jmal + * @Description 标签管理 + * @Date 2020/12/02 6:47 下午 + */ +@RestController +@Tag(name = "标签管理") +public class TagController { + + @Autowired + private TagService tagService; + + @Operation(summary = "标签列表") + @GetMapping("/tag/list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult> list(String userId) { + return ResultUtil.success(tagService.list(userId)); + } + + @Operation(summary = "标签信息") + @GetMapping("/tag/info") + @Permission("website:set:list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult tagInfo(@RequestParam String tagId) { + TagDTO tagDTO = new TagDTO(); + TagDO tag = tagService.getTagInfo(tagId); + if(tag != null){ + BeanUtils.copyProperties(tag, tagDTO); + } + return ResultUtil.success(tagDTO); + } + + @Operation(summary = "添加标签") + @PostMapping("/tag/add") + @Permission("website:set:add") + @LogOperatingFun + public ResponseResult add(@RequestParam String name, @ModelAttribute @Validated TagDTO tagDTO) { + tagDTO.setName(name); + return tagService.add(tagDTO); + } + + @Operation(summary = "更新标签") + @PutMapping("/tag/update") + @Permission("website:set:update") + @LogOperatingFun + public ResponseResult update(@RequestParam String name, @ModelAttribute @Validated TagDTO tagDTO) { + tagDTO.setName(name); + return tagService.update(tagDTO); + } + + @Operation(summary = "删除标签") + @DeleteMapping("/tag/delete") + @Permission("website:set:delete") + @LogOperatingFun + public ResponseResult delete(@RequestParam String[] tagIds) { + List tagIdList = Arrays.asList(tagIds); + tagService.delete(tagIdList); + return ResultUtil.success(); + } + + @Operation(summary = "修改标签排序") + @PostMapping("/tag/sort") + @LogOperatingFun + @Permission("cloud:file:update") + public ResponseResult updateTagSort(@RequestBody List tagIdList) { + tagService.updateTagSort(tagIdList); + return ResultUtil.success(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/controller/rest/UserController.java b/src/main/java/com/jmal/clouddisk/controller/rest/UserController.java new file mode 100644 index 0000000..939d993 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/rest/UserController.java @@ -0,0 +1,104 @@ +package com.jmal.clouddisk.controller.rest; + +import com.jmal.clouddisk.annotation.LogOperatingFun; +import com.jmal.clouddisk.annotation.Permission; +import com.jmal.clouddisk.model.LogOperation; +import com.jmal.clouddisk.model.query.QueryUserDTO; +import com.jmal.clouddisk.model.rbac.ConsumerDO; +import com.jmal.clouddisk.model.rbac.ConsumerDTO; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; + +import java.util.Arrays; +import java.util.List; + +/** + * @author jmal + * @Description ConsumerController + */ +@RestController +@RequestMapping("user") +@Tag(name = "用户管理") +public class UserController { + + @Autowired + IUserService service; + + @Operation(summary = "添加用户") + @PostMapping("/add") + @Permission("sys:user:add") + @LogOperatingFun + public ResponseResult add(@Validated ConsumerDTO consumerDTO) { + service.add(consumerDTO); + return ResultUtil.success(); + } + + @Operation(summary = "删除用户") + @DeleteMapping("/delete") + @Permission("sys:user:delete") + @LogOperatingFun + public ResponseResult delete(@RequestParam String[] ids) { + List idList = Arrays.asList(ids); + return service.delete(idList); + } + + @Operation(summary = "修改用户") + @PutMapping("/update") + @Permission("sys:user:update") + @LogOperatingFun + public ResponseResult update(ConsumerDTO consumerDTO, MultipartFile blobAvatar) { + return service.update(consumerDTO, blobAvatar); + } + + @Operation(summary = "修改用户密码") + @PutMapping("/update-pass") + @Permission("sys:user:update") + @LogOperatingFun + public ResponseResult updatePass(ConsumerDO consumer) { + return service.updatePass(consumer); + } + + @Operation(summary = "重置密码") + @PutMapping("/reset-pass") + @Permission(value = "sys:user:update") + @LogOperatingFun + public ResponseResult resetPass(ConsumerDO consumer) { + return service.resetPass(consumer); + } + + @Operation(summary = "用户信息(自己)") + @GetMapping("/info") + public ResponseResult consumerInfo() { + return service.info(); + } + + @Operation(summary = "用户信息") + @GetMapping("/userInfo") + @Permission("sys:user:list") + public ResponseResult consumerInfo(@RequestParam String id) { + return service.userInfo(id); + } + + @Operation(summary = "获取用户名") + @GetMapping("/username") + @Permission("cloud:file:list") + public ResponseResult getUsernameByUserId(@RequestParam String userId) { + return ResultUtil.success(service.getUserNameById(userId)); + } + + @Operation(summary = "用户信息列表") + @GetMapping("/userList") + @Permission("sys:user:list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult> consumerList(QueryUserDTO queryDTO) { + return service.userList(queryDTO); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/controller/rest/UserSettingController.java b/src/main/java/com/jmal/clouddisk/controller/rest/UserSettingController.java new file mode 100644 index 0000000..0f659e8 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/rest/UserSettingController.java @@ -0,0 +1,57 @@ +package com.jmal.clouddisk.controller.rest; + +import com.jmal.clouddisk.annotation.LogOperatingFun; +import com.jmal.clouddisk.annotation.Permission; +import com.jmal.clouddisk.model.LogOperation; +import com.jmal.clouddisk.model.UserAccessTokenDTO; +import com.jmal.clouddisk.service.impl.SettingService; +import com.jmal.clouddisk.service.impl.UserLoginHolder; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + * @author jmal + * @Description 用户设置 + * @Date 2020/12/24 11:21 上午 + */ +@RestController +@Tag(name = "用户设置") +@RequiredArgsConstructor +public class UserSettingController { + + private final SettingService settingService; + + private final UserLoginHolder userLoginHolder; + + @Operation(summary = "生成accessToken") + @PutMapping("/user/setting/generateAccessToken") + @Permission("sys:user:update") + @LogOperatingFun + ResponseResult generateAccessToken(@RequestParam String tokenName) { + return settingService.generateAccessToken(userLoginHolder.getUsername(), tokenName); + } + + @Operation(summary = "accessToken列表") + @GetMapping("/user/setting/accessTokenList") + @Permission("sys:user:list") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + ResponseResult> accessTokenList() { + return settingService.accessTokenList(userLoginHolder.getUsername()); + } + + @Operation(summary = "删除accessToken") + @DeleteMapping("/user/setting/deleteAccessToken") + @Permission("sys:user:delete") + @LogOperatingFun + ResponseResult deleteAccessToken(@RequestParam String id) { + settingService.deleteAccessToken(id); + return ResultUtil.success(); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/controller/rest/VideoController.java b/src/main/java/com/jmal/clouddisk/controller/rest/VideoController.java new file mode 100644 index 0000000..415f0b5 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/rest/VideoController.java @@ -0,0 +1,79 @@ +package com.jmal.clouddisk.controller.rest; + +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.service.IShareService; +import com.jmal.clouddisk.util.FileContentTypeUtils; +import com.jmal.clouddisk.util.MyFileUtils; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.RequiredArgsConstructor; +import org.jetbrains.annotations.NotNull; +import org.springframework.core.io.UrlResource; +import org.springframework.http.HttpHeaders; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RestController; + +import java.io.IOException; +import java.net.MalformedURLException; +import java.nio.file.Path; +import java.nio.file.Paths; + +@Tag(name = "视频播放") +@RestController +@RequiredArgsConstructor +public class VideoController { + + private final FileProperties fileProperties; + + private final IShareService shareService; + + + @GetMapping("/video/hls/{username}/{fileId}.m3u8") + public ResponseEntity m3u8(@PathVariable String username, @PathVariable String fileId) throws IOException { + return getUrlResourceResponseEntity(username, fileId, fileId + ".m3u8"); + } + + private @NotNull ResponseEntity getUrlResourceResponseEntity(String username, String fileId, String suffix) throws MalformedURLException { + Path txtPath = Paths.get(fileProperties.getRootDir(), fileProperties.getChunkFileDir(), username, fileProperties.getVideoTranscodeCache(), fileId, suffix); + UrlResource videoResource = new UrlResource(txtPath.toUri()); + return ResponseEntity.ok() + .header(HttpHeaders.CONTENT_TYPE, FileContentTypeUtils.getContentType(MyFileUtils.extName(suffix))) + .header(HttpHeaders.CACHE_CONTROL, "max-age=600") + .body(videoResource); + } + + @GetMapping("/video/hls/{username}/{fileId}.vtt") + public ResponseEntity vtt(@PathVariable String username, @PathVariable String fileId) throws IOException { + return getUrlResourceResponseEntity(username, fileId, fileId + ".vtt"); + } + + @GetMapping("/video/hls/{username}/{fileId}-vtt.jpg") + public ResponseEntity vttPNG(@PathVariable String username, @PathVariable String fileId) throws IOException { + return getUrlResourceResponseEntity(username, fileId, fileId + "-vtt.jpg"); + } + + @GetMapping("/video/hls/{username}/{fileId}-{index}.ts") + public ResponseEntity ts(@PathVariable String username, @PathVariable String fileId, @PathVariable String index) throws IOException { + return getUrlResourceResponseEntity(username, fileId, fileId + "-" + index + ".ts"); + } + + @GetMapping("/public/video/hls/{shareId}/{shareToken}/{username}/{fileId}.m3u8") + public ResponseEntity publicM3u8(@PathVariable String username, @PathVariable String fileId, @PathVariable String shareId, @PathVariable String shareToken) throws IOException { + shareService.validShare(shareToken, shareId); + return m3u8(username, fileId); + } + + @GetMapping("/public/video/hls/{shareId}/{shareToken}/{username}/{fileId}.vtt") + public ResponseEntity publicVtt(@PathVariable String username, @PathVariable String fileId, @PathVariable String shareId, @PathVariable String shareToken) throws IOException { + shareService.validShare(shareToken, shareId); + return vtt(username, fileId); + } + + @GetMapping("/public/video/hls/{shareId}/{shareToken}/{username}/{fileId}-{index}.ts") + public ResponseEntity publicTs(@PathVariable String username, @PathVariable String fileId, @PathVariable String index, @PathVariable String shareId, @PathVariable String shareToken) throws IOException { + shareService.validShare(shareToken, shareId); + return ts(username, fileId, index); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/controller/rest/WebsiteSettingController.java b/src/main/java/com/jmal/clouddisk/controller/rest/WebsiteSettingController.java new file mode 100644 index 0000000..8669118 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/rest/WebsiteSettingController.java @@ -0,0 +1,61 @@ +package com.jmal.clouddisk.controller.rest; + +import com.jmal.clouddisk.annotation.LogOperatingFun; +import com.jmal.clouddisk.annotation.Permission; +import com.jmal.clouddisk.model.HeartwingsDO; +import com.jmal.clouddisk.model.LogOperation; +import com.jmal.clouddisk.model.WebsiteSettingDO; +import com.jmal.clouddisk.model.WebsiteSettingDTO; +import com.jmal.clouddisk.service.impl.SettingService; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + * @author jmal + * @Description 网站设置 + * @Date 2020/10/28 5:29 下午 + */ +@RestController +@Tag(name = "网站设置") +@RequiredArgsConstructor +public class WebsiteSettingController { + + private final SettingService settingService; + + @Operation(summary = "获取网站设置") + @GetMapping("/website/setting") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult getWebsiteSetting() { + return ResultUtil.success(settingService.getWebsiteSetting()); + } + + @Operation(summary = "获取网站备案信息") + @GetMapping("/public/website/record") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult getWebsiteRecord() { + return ResultUtil.success(settingService.getWebsiteRecord()); + } + + @Operation(summary = "获取网站心语记录") + @GetMapping("/website/heartwings") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + public ResponseResult> getWebsiteHeartwings(@RequestParam Integer page, @RequestParam Integer pageSize, @RequestParam String order) { + return settingService.getWebsiteHeartwings(page, pageSize, order); + } + + @Operation(summary = "更新网站设置") + @PutMapping("/website/setting/update") + @Permission("website:set:update") + @LogOperatingFun + public ResponseResult update(@RequestBody WebsiteSettingDO websiteSettingDO) { + return settingService.websiteUpdate(websiteSettingDO); + } + +} + diff --git a/src/main/java/com/jmal/clouddisk/controller/sse/Message.java b/src/main/java/com/jmal/clouddisk/controller/sse/Message.java new file mode 100644 index 0000000..7c90cbc --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/sse/Message.java @@ -0,0 +1,13 @@ +package com.jmal.clouddisk.controller.sse; + +import lombok.Getter; +import lombok.Setter; + +@Getter +@Setter +public class Message { + private String username; + private Object body; + private String url; + private Long space; +} diff --git a/src/main/java/com/jmal/clouddisk/controller/sse/SseController.java b/src/main/java/com/jmal/clouddisk/controller/sse/SseController.java new file mode 100644 index 0000000..d6a2f5b --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/controller/sse/SseController.java @@ -0,0 +1,179 @@ +package com.jmal.clouddisk.controller.sse; + +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.extern.slf4j.Slf4j; +import org.jetbrains.annotations.NotNull; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.servlet.mvc.method.annotation.SseEmitter; + +import java.io.IOException; +import java.util.Map; +import java.util.Set; +import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.CopyOnWriteArraySet; + +@RestController +@Slf4j +@Tag(name = "SSE") +public class SseController { + + private static final long SSE_TIMEOUT = 30 * 60 * 1000L; // 30分钟 + private static final int MAX_CONNECTIONS_PER_USER = 128; + + /** + * SseEmitter 容器 + * key: uuid (客户端唯一标识) + * value: SseEmitter + */ + private final Map emitters = new ConcurrentHashMap<>(); + + /** + * 用户连接映射 + * key: username + * value: 该用户所有连接的 uuid 集合 + */ + private final Map> userConnections = new ConcurrentHashMap<>(); + + /** + * uuid到用户的反向映射,用于高效清理 + * key: uuid + * value: username + */ + private final Map uuidToUser = new ConcurrentHashMap<>(); + + @GetMapping(value = "/events", produces = "text/event-stream") + public SseEmitter events(@RequestParam String username, @RequestParam String uuid) { + // 使用 computeIfAbsent 保证原子性操作,为用户创建连接集合 + Set uuids = userConnections.computeIfAbsent(username, k -> new CopyOnWriteArraySet<>()); + + // 检查用户连接数是否超限 + if (uuids.size() >= MAX_CONNECTIONS_PER_USER) { + log.warn("User '{}' has reached the maximum connection limit ({})", username, MAX_CONNECTIONS_PER_USER); + // 可以返回一个立即完成的 SseEmitter 并携带错误信息 + SseEmitter errorEmitter = new SseEmitter(); + try { + errorEmitter.send(SseEmitter.event().name("error").data("Connection limit exceeded")); + errorEmitter.complete(); + } catch (IOException e) { + // ignore + } + return errorEmitter; + } + + SseEmitter emitter = getSseEmitter(uuid); + + // 存储连接信息 + uuids.add(uuid); + uuidToUser.put(uuid, username); + emitters.put(uuid, emitter); + + log.debug("Client connected: user='{}', uuid='{}'. Total connections for user: {}", username, uuid, uuids.size()); + + // 连接成功后可以立即发送一条欢迎消息 + try { + emitter.send(SseEmitter.event().name("connected").data("Connection established")); + } catch (IOException e) { + log.debug("Failed to send initial connection message to {}: {}", uuid, e.getMessage()); + this.removeClient(uuid); + } + + return emitter; + } + + @NotNull + private SseEmitter getSseEmitter(String uuid) { + SseEmitter emitter = new SseEmitter(SSE_TIMEOUT); + + // 注册回调,统一处理连接关闭的所有情况(完成、超时、错误) + emitter.onCompletion(() -> { + log.debug("SseEmitter completed for uuid: {}", uuid); + this.removeClient(uuid); + }); + emitter.onTimeout(() -> { + log.debug("SseEmitter timed out for uuid: {}", uuid); + // SseEmitter 超时会自动触发 onCompletion,所以这里只需要日志记录,无需重复调用 removeClient + // 如果希望超时后立即完成,可以调用 emitter.complete(),它会触发 onCompletion + }); + emitter.onError(throwable -> { + log.debug("SseEmitter error for uuid: {}. Error: {}", uuid, throwable.getMessage()); + // onError 发生后,Spring 也会确保 onCompletion 被调用,因此也无需重复调用 removeClient + }); + return emitter; + } + + @PostMapping("/send") + public void sendEvent(@RequestBody Message message) { + String username = message.getUsername(); + Set uuids = userConnections.get(username); + if (uuids != null && !uuids.isEmpty()) { + // 遍历时复制集合,防止在发送过程中集合被修改 + for (String uuid : Set.copyOf(uuids)) { + sendMessage(uuid, message); + } + } + } + + private void sendMessage(String uuid, Object message) { + SseEmitter emitter = emitters.get(uuid); + if (emitter != null) { + try { + emitter.send(SseEmitter.event().data(message)); + } catch (Exception e) { + // 发送失败,不需要手动清理,因为 onError 和 onCompletion 回调会处理 + log.debug("Failed to send message to client {}. It might be disconnected. Error: {}", uuid, e.getMessage()); + } + } + } + + /** + * 统一的客户端移除方法,保证线程安全和数据一致性 + * @param uuid 客户端唯一标识 + */ + private void removeClient(String uuid) { + // 1. 移除 emitter + emitters.remove(uuid); + + // 2. 移除 uuid 到 username 的映射 + String username = uuidToUser.remove(uuid); + + // 3. 从用户的连接集合中移除 uuid + if (username != null) { + Set uuids = userConnections.get(username); + if (uuids != null) { + uuids.remove(uuid); + // 4. 如果用户已无任何连接,则从 userConnections 中移除该用户 + if (uuids.isEmpty()) { + userConnections.remove(username); + log.debug("User '{}' has no active connections, removed from tracking.", username); + } + } + } + log.debug("Client disconnected and cleaned up: uuid='{}'", uuid); + } + + + /** + * 每30秒发送一次心跳,以保持连接活跃并检测断开的客户端 + */ + @Scheduled(fixedRate = 30000) + public void heartbeat() { + if (emitters.isEmpty()) { + return; + } + log.trace("Sending heartbeat to {} clients...", emitters.size()); + // 遍历所有 emitter 发送心跳 + for (Map.Entry entry : emitters.entrySet()) { + String uuid = entry.getKey(); + SseEmitter emitter = entry.getValue(); + try { + // 发送一个 SSE 注释行,这不会在客户端触发 "message" 事件 + emitter.send(SseEmitter.event().comment("heartbeat")); + } catch (Exception e) { + // 发送失败意味着客户端已断开 + // 无需在此处执行清理,SseEmitter 的 onError/onCompletion 回调会负责 + log.debug("Heartbeat failed for client {}, will be removed by callbacks.", uuid); + } + } + } +} diff --git a/src/main/java/com/jmal/clouddisk/exception/CheckedFunction.java b/src/main/java/com/jmal/clouddisk/exception/CheckedFunction.java new file mode 100644 index 0000000..a092090 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/exception/CheckedFunction.java @@ -0,0 +1,7 @@ +package com.jmal.clouddisk.exception; + + +@FunctionalInterface +public interface CheckedFunction { + R apply(T t) throws Exception; +} diff --git a/src/main/java/com/jmal/clouddisk/exception/CommonException.java b/src/main/java/com/jmal/clouddisk/exception/CommonException.java new file mode 100644 index 0000000..3fe3d75 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/exception/CommonException.java @@ -0,0 +1,56 @@ +package com.jmal.clouddisk.exception; + +import lombok.Getter; +import org.springframework.data.annotation.Transient; + +import java.io.Serial; + +/** + * @Description 通用异常处理类 + * @Author jmal + * @Date 2019-08-15 10:54 + * @author jmal + */ +@Getter +public class CommonException extends RuntimeException { + + /** + * + */ + @Serial + private static final long serialVersionUID = 1L; + private final int code; + private final String msg; + + @Transient + private final Object data; + + public CommonException(int code, String msg) { + this.code = code; + this.msg = msg; + this.data = null; + } + + public CommonException(ExceptionType type, Object data) { + this.code = type.getCode(); + this.msg = type.getMsg(); + this.data = data; + } + + public CommonException(ExceptionType type) { + this.code = type.getCode(); + this.msg = type.getMsg(); + this.data = null; + } + + public CommonException(String msg) { + this.code = -1; + this.msg = msg; + this.data = null; + } + + public String getMessage() { + return msg; + } + +} diff --git a/src/main/java/com/jmal/clouddisk/exception/CommonExceptionHandler.java b/src/main/java/com/jmal/clouddisk/exception/CommonExceptionHandler.java new file mode 100644 index 0000000..9ad5e40 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/exception/CommonExceptionHandler.java @@ -0,0 +1,100 @@ +package com.jmal.clouddisk.exception; + +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import lombok.extern.slf4j.Slf4j; +import org.apache.catalina.connector.ClientAbortException; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.BindException; +import org.springframework.web.ErrorResponse; +import org.springframework.web.ErrorResponseException; +import org.springframework.web.bind.MethodArgumentNotValidException; +import org.springframework.web.bind.MissingServletRequestParameterException; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.ResponseStatus; +import org.springframework.web.context.request.async.AsyncRequestNotUsableException; +import org.springframework.web.context.request.async.AsyncRequestTimeoutException; +import org.springframework.web.servlet.resource.NoResourceFoundException; + +import java.io.IOException; + + +/** + * 统一异常处理 + * + * @author jmal + */ +@ControllerAdvice +@Slf4j +public class CommonExceptionHandler { + + + @ExceptionHandler(IOException.class) + public ResponseEntity handleIOException(IOException e) { + if ("Broken pipe".equals(e.getMessage())) { + // 不记录日志或仅记录简要信息 + return ResponseEntity.status(HttpStatus.NO_CONTENT).build(); + } + // 记录其他I/O异常 + log.error("Unhandled IOException: {}", e.getMessage(), e); + return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(e.getMessage()); + } + + @ExceptionHandler(AsyncRequestNotUsableException.class) + public ResponseEntity handleAsyncRequestNotUsableException(IOException e) { + return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(e.getMessage()); + } + + @ExceptionHandler(AsyncRequestTimeoutException.class) + public ResponseEntity handleAsyncRequestTimeoutException() { + return ResponseEntity.status(HttpStatus.NO_CONTENT).build(); + } + + @ExceptionHandler(ClientAbortException.class) + public ResponseEntity handleClientAbortException() { + return ResponseEntity.status(HttpStatus.NO_CONTENT).build(); + } + + @ExceptionHandler(Exception.class) + @ResponseBody + public ResponseResult exceptionHandler(Exception e) { + return ResultUtil.error(ExceptionType.SYSTEM_ERROR.getCode(), e.getMessage()); + } + + @ExceptionHandler(CommonException.class) + @ResponseBody + public ResponseResult exceptionHandler(CommonException e) { + if (e.getCode() == 0) { + return ResultUtil.success(e.getData()); + } + return ResultUtil.error(e.getCode(), e.getMsg()); + } + + @ExceptionHandler(MissingServletRequestParameterException.class) + @ResponseBody + public ResponseResult exceptionHandler(MissingServletRequestParameterException e) { + return ResultUtil.error(ExceptionType.MISSING_PARAMETERS.getCode(), "缺少参数%s".formatted(e.getParameterName())); + } + + @ExceptionHandler(MethodArgumentNotValidException.class) + @ResponseBody + public ResponseResult exceptionHandler(MethodArgumentNotValidException e) { + return ResultUtil.error(ExceptionType.MISSING_PARAMETERS.getCode(), e.getBindingResult().getAllErrors().get(0).getDefaultMessage()); + } + + @ExceptionHandler(BindException.class) + @ResponseBody + public ResponseResult exceptionHandler(BindException e) { + return ResultUtil.error(ExceptionType.MISSING_PARAMETERS.getCode(), e.getBindingResult().getAllErrors().get(0).getDefaultMessage()); + } + + @ExceptionHandler(NoResourceFoundException.class) + @ResponseBody + @ResponseStatus(HttpStatus.NOT_FOUND) + public ErrorResponse handleNoResourceException() { + return new ErrorResponseException(HttpStatus.NOT_FOUND); + } +} diff --git a/src/main/java/com/jmal/clouddisk/exception/Either.java b/src/main/java/com/jmal/clouddisk/exception/Either.java new file mode 100644 index 0000000..852c892 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/exception/Either.java @@ -0,0 +1,70 @@ +package com.jmal.clouddisk.exception; + +import java.util.Optional; +import java.util.function.Function; + +public class Either { + private final L left; + private final R right; + + private Either(L left, R right) { + this.left = left; + this.right = right; + } + + public static Function wrap(CheckedFunction checkedFunction) { + return t -> { + try { + return checkedFunction.apply(t); + } catch (Exception e) { + throw new RuntimeException(e); + } + }; + } + + public static Either Left(L value) { + return new Either(value, null); + } + + public static Either Right(R value) { + return new Either(null, value); + } + + public Optional getLeft() { + return Optional.ofNullable(left); + } + + public Optional getRight() { + return Optional.ofNullable(right); + } + + public boolean isLeft() { + return left != null; + } + + public boolean isRight() { + return right != null; + } + + public Optional mapLeft(Function mapper) { + if (isLeft()) { + return Optional.of(mapper.apply(left)); + } + return Optional.empty(); + } + + public Optional mapRight(Function mapper) { + if (isRight()) { + return Optional.of(mapper.apply(right)); + } + return Optional.empty(); + } + + @Override + public String toString() { + if (isLeft()) { + return "Left(" + left + ")"; + } + return "Right(" + right + ")"; + } +} \ No newline at end of file diff --git a/src/main/java/com/jmal/clouddisk/exception/ExceptionType.java b/src/main/java/com/jmal/clouddisk/exception/ExceptionType.java new file mode 100644 index 0000000..478da46 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/exception/ExceptionType.java @@ -0,0 +1,142 @@ +package com.jmal.clouddisk.exception; + +/** + * @Description 异常枚举 + * @Date 2019-08-16 14:20 + * @author jmal + */ +public enum ExceptionType { + + + /*** + * 警告 + */ + WARNING(-2, ""), + /*** + * 其他异常 + */ + SYSTEM_ERROR(-1, "其他异常"), + /*** + * 成功 + */ + SYSTEM_SUCCESS(0, "true"), + /*** + * 缺少参数 + */ + MISSING_PARAMETERS(1, "缺少参数"), + /*** + * 时间格式不正确 + */ + INCORRECT_DATE(2, "时间格式不正确"), + /*** + * 缺少Header + */ + MISSING_HEADERS(3, "缺少Header"), + /*** + * 该资源已存在 + */ + EXISTING_RESOURCES(4, "该资源已存在"), + /*** + * 未登录或登录超时 + */ + LOGIN_EXCEPTION(5, "未登录或登录超时"), + /*** + * 分享码错误 + */ + SHARE_CODE_EXCEPTION(6, "分享码错误"), + /*** + * 未验证分享码 + */ + SHARE_CODE_VALID(21, "未验证分享码"), + /*** + * 文件不存在 + */ + FILE_NOT_FIND(7, "文件不存在"), + + /** + * 没有权限 + */ + PERMISSION_DENIED(8, "没有权限"), + + /** + * 自定义异常 + */ + CUSTOM_EXCEPTION(9, "自定义异常"), + + /** + * 参数值不对 + */ + PARAMETERS_VALUE(10, "参数值不对"), + + /** + * 参数值不对 + */ + OFFLINE(11, "离线"), + + /** + * 用户不存在 + */ + USER_NOT_FIND(12, "用户不存在"), + + /*** + * 目录不存在 + */ + DIR_NOT_FIND(13, "目录不存在"), + + /*** + * 解压失败 + */ + FAIL_DECOMPRESS(14, "解压失败"), + + /*** + * 无法识别的文件 + */ + UNRECOGNIZED_FILE(15, "无法识别的文件"), + + /*** + * 合并文件失败 + */ + FAIL_MERGE_FILE(16, "合并文件失败"), + + /*** + * 删除文件失败 + */ + FAIL_DELETE_FILE(17, "删除文件失败"), + + /*** + * 上传文件失败 + */ + FAIL_UPLOAD_FILE(18, "上传文件失败"), + + /*** + * 禁止访问 + */ + ACCESS_FORBIDDEN(19, "禁止访问"), + + /*** + * 空间已满 + */ + SPACE_FULL(20, "空间已满"), + + /*** + * 资源被锁定 + */ + LOCKED_RESOURCES(21, "该资源被锁定"); + + + public int getCode() { + return code; + } + + public String getMsg() { + return msg; + } + + private final int code; + private final String msg; + + ExceptionType(int code, String msg) { + this.code = code; + this.msg = msg; + } +} diff --git a/src/main/java/com/jmal/clouddisk/ftp/FTPServerConfig.java b/src/main/java/com/jmal/clouddisk/ftp/FTPServerConfig.java new file mode 100644 index 0000000..6ce9508 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/ftp/FTPServerConfig.java @@ -0,0 +1,57 @@ +package com.jmal.clouddisk.ftp; + +import cn.hutool.extra.ftp.SimpleFtpServer; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.model.rbac.ConsumerDTO; +import com.jmal.clouddisk.service.IUserService; +import jakarta.annotation.PostConstruct; +import lombok.extern.slf4j.Slf4j; +import org.apache.ftpserver.usermanager.impl.BaseUser; +import org.springframework.stereotype.Component; + +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.List; + +/** + * @author jmal + * @Description FTPServer 配置 + * @date 2023/2/21 17:17 + */ +@Component +@Slf4j +public class FTPServerConfig { + + private final FileProperties fileProperties; + + private final IUserService userService; + + private final MyPropertiesUserManager myPropertiesUserManager; + + public FTPServerConfig(FileProperties fileProperties, IUserService userService, MyPropertiesUserManager myPropertiesUserManager) { + this.fileProperties = fileProperties; + this.userService = userService; + this.myPropertiesUserManager = myPropertiesUserManager; + } + + @PostConstruct + public void startFTPServer() { + + List userList = userService.userListAll(); + + SimpleFtpServer ftpServer = SimpleFtpServer.create(); + ftpServer.setUserManager(myPropertiesUserManager); + ftpServer.setPort(fileProperties.getFtpServerPort()); + + userList.forEach(consumerDTO -> { + BaseUser user = new BaseUser(); + user.setName(consumerDTO.getUsername()); + Path path = Paths.get(fileProperties.getRootDir(), consumerDTO.getUsername()); + user.setHomeDirectory(path.toString()); + ftpServer.addUser(user); + }); + ftpServer.start(); + log.info("FTP server port: {}", fileProperties.getFtpServerPort()); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/ftp/MyPropertiesUserManager.java b/src/main/java/com/jmal/clouddisk/ftp/MyPropertiesUserManager.java new file mode 100644 index 0000000..37d38bd --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/ftp/MyPropertiesUserManager.java @@ -0,0 +1,476 @@ + +package com.jmal.clouddisk.ftp; + +import com.jmal.clouddisk.service.impl.UserServiceImpl; +import com.jmal.clouddisk.util.PasswordHash; +import lombok.extern.slf4j.Slf4j; +import org.apache.ftpserver.FtpServerConfigurationException; +import org.apache.ftpserver.ftplet.*; +import org.apache.ftpserver.usermanager.AnonymousAuthentication; +import org.apache.ftpserver.usermanager.Md5PasswordEncryptor; +import org.apache.ftpserver.usermanager.PropertiesUserManagerFactory; +import org.apache.ftpserver.usermanager.UsernamePasswordAuthentication; +import org.apache.ftpserver.usermanager.impl.*; +import org.apache.ftpserver.util.BaseProperties; +import org.apache.ftpserver.util.IoUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import java.io.*; +import java.net.URL; +import java.util.*; + +/** + * Internal class, do not use directly. + * + *

Properties file based UserManager implementation. We use + * user.properties file to store user data.

+ * + *

The file will use the following properties for storing users:

+ * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
PropertyDocumentation
ftpserver.user.{username}.homedirectoryPath to the home directory for the user, based on the file system implementation used
ftpserver.user.{username}.userpasswordThe password for the user. Can be in clear text, MD5 hash or salted SHA hash based on the + * configuration on the user manager + *
ftpserver.user.{username}.enableflagtrue if the user is enabled, false otherwise
ftpserver.user.{username}.writepermissiontrue if the user is allowed to upload files and create directories, false otherwise
ftpserver.user.{username}.idletimeThe number of seconds the user is allowed to be idle before disconnected. + * 0 disables the idle timeout + *
ftpserver.user.{username}.maxloginnumberThe maximum number of concurrent logins by the user. 0 disables the check.
ftpserver.user.{username}.maxloginperipThe maximum number of concurrent logins from the same IP address by the user. 0 disables the check.
ftpserver.user.{username}.uploadrateThe maximum number of bytes per second the user is allowed to upload files. 0 disables the check.
ftpserver.user.{username}.downloadrateThe maximum number of bytes per second the user is allowed to download files. 0 disables the check.
+ * + *

Example:

+ *
+ * ftpserver.user.admin.homedirectory=/ftproot
+ * ftpserver.user.admin.userpassword=admin
+ * ftpserver.user.admin.enableflag=true
+ * ftpserver.user.admin.writepermission=true
+ * ftpserver.user.admin.idletime=0
+ * ftpserver.user.admin.maxloginnumber=0
+ * ftpserver.user.admin.maxloginperip=0
+ * ftpserver.user.admin.uploadrate=0
+ * ftpserver.user.admin.downloadrate=0
+ * 
+ * + * @author Apache MINA Project + */ +@Component +@Slf4j +public class MyPropertiesUserManager extends AbstractUserManager { + + private final static String PREFIX = "ftpserver.user."; + + private BaseProperties userDataProp; + + private File userDataFile; + + private URL userUrl; + + @Autowired + private UserServiceImpl userService; + + /** + * Internal constructor, do not use directly. Use {@link PropertiesUserManagerFactory} instead. + */ + public MyPropertiesUserManager() { + super("admin", new Md5PasswordEncryptor()); + userDataProp = new BaseProperties(); + } + + private void loadFromFile(File userDataFile) { + try { + userDataProp = new BaseProperties(); + + if (userDataFile != null) { + log.debug("File configured, will try loading"); + + if (userDataFile.exists()) { + this.userDataFile = userDataFile; + + log.debug("File found on file system"); + FileInputStream fis = null; + try { + fis = new FileInputStream(userDataFile); + userDataProp.load(fis); + } finally { + IoUtils.close(fis); + } + } else { + // try loading it from the classpath + log + .debug("File not found on file system, try loading from classpath"); + + InputStream is = getClass().getClassLoader() + .getResourceAsStream(userDataFile.getPath()); + + if (is != null) { + try { + userDataProp.load(is); + } finally { + IoUtils.close(is); + } + } else { + throw new FtpServerConfigurationException( + "User data file specified but could not be located, " + + "neither on the file system or in the classpath: " + + userDataFile.getPath()); + } + } + } + } catch (IOException e) { + throw new FtpServerConfigurationException( + "Error loading user data file : " + userDataFile, e); + } + } + + private void loadFromUrl(URL userDataPath) { + try { + userDataProp = new BaseProperties(); + + if (userDataPath != null) { + log.debug("URL configured, will try loading"); + + userUrl = userDataPath; + InputStream is = null; + + is = userDataPath.openStream(); + + try { + userDataProp.load(is); + } finally { + IoUtils.close(is); + } + } + } catch (IOException e) { + throw new FtpServerConfigurationException( + "Error loading user data resource : " + userDataPath, e); + } + } + + /** + * Reloads the contents of the user.properties file. This allows any manual modifications to the file to be recognised by the running server. + */ + public void refresh() { + synchronized (userDataProp) { + if (userDataFile != null) { + log.debug("Refreshing user manager using file: " + + userDataFile.getAbsolutePath()); + loadFromFile(userDataFile); + + } else { + //file is null, must have been created using URL + log.debug("Refreshing user manager using URL: " + + userUrl.toString()); + loadFromUrl(userUrl); + } + } + } + + /** + * Retrive the file backing this user manager + * + * @return The file + */ + public File getFile() { + return userDataFile; + } + + /** + * Save user data. Store the properties. + */ + public synchronized void save(User usr) throws FtpException { + // null value check + if (usr.getName() == null) { + throw new NullPointerException("User name is null."); + } + String thisPrefix = PREFIX + usr.getName() + '.'; + + // set other properties + userDataProp.setProperty(thisPrefix + ATTR_PASSWORD, getPassword(usr)); + + String home = usr.getHomeDirectory(); + if (home == null) { + home = "/"; + } + userDataProp.setProperty(thisPrefix + ATTR_HOME, home); + userDataProp.setProperty(thisPrefix + ATTR_ENABLE, usr.getEnabled()); + userDataProp.setProperty(thisPrefix + ATTR_WRITE_PERM, usr + .authorize(new WriteRequest()) != null); + userDataProp.setProperty(thisPrefix + ATTR_MAX_IDLE_TIME, usr + .getMaxIdleTime()); + + TransferRateRequest transferRateRequest = new TransferRateRequest(); + transferRateRequest = (TransferRateRequest) usr + .authorize(transferRateRequest); + + if (transferRateRequest != null) { + userDataProp.setProperty(thisPrefix + ATTR_MAX_UPLOAD_RATE, + transferRateRequest.getMaxUploadRate()); + userDataProp.setProperty(thisPrefix + ATTR_MAX_DOWNLOAD_RATE, + transferRateRequest.getMaxDownloadRate()); + } else { + userDataProp.remove(thisPrefix + ATTR_MAX_UPLOAD_RATE); + userDataProp.remove(thisPrefix + ATTR_MAX_DOWNLOAD_RATE); + } + + // request that always will succeed + ConcurrentLoginRequest concurrentLoginRequest = new ConcurrentLoginRequest( + 0, 0); + concurrentLoginRequest = (ConcurrentLoginRequest) usr + .authorize(concurrentLoginRequest); + + if (concurrentLoginRequest != null) { + userDataProp.setProperty(thisPrefix + ATTR_MAX_LOGIN_NUMBER, + concurrentLoginRequest.getMaxConcurrentLogins()); + userDataProp.setProperty(thisPrefix + ATTR_MAX_LOGIN_PER_IP, + concurrentLoginRequest.getMaxConcurrentLoginsPerIP()); + } else { + userDataProp.remove(thisPrefix + ATTR_MAX_LOGIN_NUMBER); + userDataProp.remove(thisPrefix + ATTR_MAX_LOGIN_PER_IP); + } + + saveUserData(); + } + + /** + * @throws FtpException + */ + private void saveUserData() throws FtpException { + if (userDataFile == null) { + return; + } + + File dir = userDataFile.getAbsoluteFile().getParentFile(); + if (dir != null && !dir.exists() && !dir.mkdirs()) { + String dirName = dir.getAbsolutePath(); + throw new FtpServerConfigurationException( + "Cannot create directory for user data file : " + dirName); + } + + // save user data + FileOutputStream fos = null; + try { + fos = new FileOutputStream(userDataFile); + userDataProp.store(fos, "Generated file - don't edit (please)"); + } catch (IOException ex) { + log.error("Failed saving user data", ex); + throw new FtpException("Failed saving user data", ex); + } finally { + IoUtils.close(fos); + } + } + + /** + * Delete an user. Removes all this user entries from the properties. After + * removing the corresponding from the properties, save the data. + */ + public void delete(String usrName) throws FtpException { + // remove entries from properties + String thisPrefix = PREFIX + usrName + '.'; + Enumeration propNames = userDataProp.propertyNames(); + ArrayList remKeys = new ArrayList(); + while (propNames.hasMoreElements()) { + String thisKey = propNames.nextElement().toString(); + if (thisKey.startsWith(thisPrefix)) { + remKeys.add(thisKey); + } + } + Iterator remKeysIt = remKeys.iterator(); + while (remKeysIt.hasNext()) { + userDataProp.remove(remKeysIt.next()); + } + + saveUserData(); + } + + /** + * Get user password. Returns the encrypted value. + * + *
+     * If the password value is not null
+     *    password = new password
+     * else
+     *   if user does exist
+     *     password = old password
+     *   else
+     *     password = ""
+     * 
+ */ + private String getPassword(User usr) { + String name = usr.getName(); + String password = usr.getPassword(); + + if (password != null) { + password = getPasswordEncryptor().encrypt(password); + } else { + String blankPassword = getPasswordEncryptor().encrypt(""); + + if (doesExist(name)) { + String key = PREFIX + name + '.' + ATTR_PASSWORD; + password = userDataProp.getProperty(key, blankPassword); + } else { + password = blankPassword; + } + } + return password; + } + + /** + * Get all user names. + */ + public String[] getAllUserNames() { + // get all user names + String suffix = '.' + ATTR_HOME; + ArrayList ulst = new ArrayList(); + Enumeration allKeys = userDataProp.propertyNames(); + int prefixlen = PREFIX.length(); + int suffixlen = suffix.length(); + while (allKeys.hasMoreElements()) { + String key = (String) allKeys.nextElement(); + if (key.endsWith(suffix)) { + String name = key.substring(prefixlen); + int endIndex = name.length() - suffixlen; + name = name.substring(0, endIndex); + ulst.add(name); + } + } + + Collections.sort(ulst); + return ulst.toArray(new String[0]); + } + + /** + * Load user data. + */ + public User getUserByName(String userName) { + if (!doesExist(userName)) { + return null; + } + + String baseKey = PREFIX + userName + '.'; + BaseUser user = new BaseUser(); + user.setName(userName); + user.setEnabled(userDataProp.getBoolean(baseKey + ATTR_ENABLE, true)); + user.setHomeDirectory(userDataProp + .getProperty(baseKey + ATTR_HOME, "/")); + + List authorities = new ArrayList(); + + if (userDataProp.getBoolean(baseKey + ATTR_WRITE_PERM, false)) { + authorities.add(new WritePermission()); + } + + int maxLogin = userDataProp.getInteger(baseKey + ATTR_MAX_LOGIN_NUMBER, + 0); + int maxLoginPerIP = userDataProp.getInteger(baseKey + + ATTR_MAX_LOGIN_PER_IP, 0); + + authorities.add(new ConcurrentLoginPermission(maxLogin, maxLoginPerIP)); + + int uploadRate = userDataProp.getInteger( + baseKey + ATTR_MAX_UPLOAD_RATE, 0); + int downloadRate = userDataProp.getInteger(baseKey + + ATTR_MAX_DOWNLOAD_RATE, 0); + + authorities.add(new TransferRatePermission(downloadRate, uploadRate)); + + user.setAuthorities(authorities); + + user.setMaxIdleTime(userDataProp.getInteger(baseKey + + ATTR_MAX_IDLE_TIME, 0)); + + return user; + } + + /** + * User existance check + */ + public boolean doesExist(String name) { + String key = PREFIX + name + '.' + ATTR_HOME; + return userDataProp.containsKey(key); + } + + /** + * User authenticate method + */ + public User authenticate(Authentication authentication) + throws AuthenticationFailedException { + if (authentication instanceof UsernamePasswordAuthentication path) { + + String user = path.getUsername(); + String password = path.getPassword(); + + if (user == null) { + throw new AuthenticationFailedException("Authentication failed"); + } + + if (password == null) { + password = ""; + } + + String hashPassword = userService.getHashPasswordUserName(user); + + if (PasswordHash.validatePassword(password, hashPassword)) { + return getUserByName(user); + } else { + throw new AuthenticationFailedException("Authentication failed"); + } + + } else if (authentication instanceof AnonymousAuthentication) { + if (doesExist("anonymous")) { + return getUserByName("anonymous"); + } else { + throw new AuthenticationFailedException("Authentication failed"); + } + } else { + throw new IllegalArgumentException( + "Authentication not supported by this user manager"); + } + } + + /** + * Close the user manager - remove existing entries. + */ + public synchronized void dispose() { + if (userDataProp != null) { + userDataProp.clear(); + userDataProp = null; + } + } + +} diff --git a/src/main/java/com/jmal/clouddisk/interceptor/AuthInterceptor.java b/src/main/java/com/jmal/clouddisk/interceptor/AuthInterceptor.java new file mode 100644 index 0000000..93a6d61 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/interceptor/AuthInterceptor.java @@ -0,0 +1,339 @@ +package com.jmal.clouddisk.interceptor; + +import cn.hutool.core.text.CharSequenceUtil; +import com.alibaba.fastjson2.JSON; +import com.jmal.clouddisk.exception.ExceptionType; +import com.jmal.clouddisk.model.UserAccessTokenDO; +import com.jmal.clouddisk.model.rbac.UserLoginContext; +import com.jmal.clouddisk.repository.IAuthDAO; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.service.impl.UserServiceImpl; +import com.jmal.clouddisk.util.CaffeineUtil; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import com.jmal.clouddisk.util.TokenUtil; +import io.reactivex.rxjava3.core.Completable; +import io.reactivex.rxjava3.schedulers.Schedulers; +import jakarta.servlet.ServletOutputStream; +import jakarta.servlet.http.Cookie; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import lombok.extern.slf4j.Slf4j; +import org.jetbrains.annotations.NotNull; +import org.springframework.stereotype.Component; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; +import org.springframework.web.servlet.HandlerInterceptor; + +import java.io.IOException; +import java.time.LocalDateTime; +import java.util.List; + +/** + * @author jmal + * @Description 鉴权拦截器 + * @Date 2020-01-31 22:04 + */ +@Slf4j +@Component +public class AuthInterceptor implements HandlerInterceptor { + + public static final String JMAL_TOKEN = "jmal-token"; + + public static final String REMEMBER_NAME = "rememberName"; + + public static final String NAME_HEADER = "name"; + + public static final String ACCESS_TOKEN = "access-token"; + + public static final String REFRESH_TOKEN = "refresh-token"; + + private static final int TWO_HOURS_IN_SECONDS = 2 * 60 * 60; // 7200 + + private static final int SECONDS_IN_DAY = 24 * 60 * 60; // 86400 + private static final int NINETY_DAYS_IN_SECONDS = 90 * SECONDS_IN_DAY; // 7776000 + + private final IAuthDAO authDAO; + + private final UserServiceImpl userService; + + public AuthInterceptor(IAuthDAO authDAO, UserServiceImpl userService) { + this.authDAO = authDAO; + this.userService = userService; + } + + @Override + public boolean preHandle(@NotNull HttpServletRequest request, @NotNull HttpServletResponse response, @NotNull Object handler) { + // 身份认证 + String username = getUserNameByHeader(request, response); + if (!CharSequenceUtil.isBlank(username)) { + // jmal-token 身份认证通过, 设置该身份的权限 + setAuthorities(username); + return true; + } + returnJson(response); + return false; + } + + /*** + * 根据header获取用户名 + * @param request request + * @return 用户名 + */ + public String getUserNameByHeader(HttpServletRequest request, HttpServletResponse response) { + String name = request.getHeader(NAME_HEADER); + String jmalToken = request.getHeader(JMAL_TOKEN); + if (CharSequenceUtil.isBlank(jmalToken)) { + jmalToken = request.getParameter(JMAL_TOKEN); + } + if (CharSequenceUtil.isBlank(name)) { + name = request.getParameter(NAME_HEADER); + } + if (CharSequenceUtil.isBlank(name)) { + name = request.getParameter(IUserService.USERNAME); + } + if (CharSequenceUtil.isBlank(jmalToken)) { + jmalToken = getCookie(request, JMAL_TOKEN); + } + if (CharSequenceUtil.isBlank(name)) { + name = getCookie(request, IUserService.USERNAME); + } + if (CharSequenceUtil.isBlank(jmalToken)) { + String refreshToken = getCookie(request, REFRESH_TOKEN); + if (CharSequenceUtil.isNotBlank(refreshToken)) { + // 自动续token + return renewJmalToken(request, response, refreshToken); + } + return getUserNameByAccessToken(request); + } + return getUserNameByJmalToken(request, response, jmalToken, name); + } + + /*** + * jmal-token 身份认证通过, 设置该身份的权限 + * @param username username + */ + public void setAuthorities(String username) { + List authorities = CaffeineUtil.getAuthoritiesCache(username); + if (authorities == null || authorities.isEmpty()) { + authorities = userService.getAuthorities(username); + CaffeineUtil.setAuthoritiesCache(username, authorities); + } + setAuthorities(username, authorities); + } + + /*** + * 设置用户登录信息 + * access-token, jmal-token 通用 + * @param username username + * @param authorities 权限标示列表 + */ + private void setAuthorities(String username, List authorities) { + ServletRequestAttributes requestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); + if (requestAttributes != null) { + String userId = CaffeineUtil.getUserIdCache(username); + if (CharSequenceUtil.isBlank(userId)) { + userId = userService.getUserIdByUserName(username); + CaffeineUtil.setUserIdCache(username, userId); + } + UserLoginContext userLoginContext = new UserLoginContext(); + userLoginContext.setAuthorities(authorities); + userLoginContext.setUserId(userId); + userLoginContext.setUsername(username); + requestAttributes.setAttribute("user", userLoginContext, 0); + } + } + + /*** + * 根据access-token获取用户名 + * @param request request + * @return 用户名 + */ + public String getUserNameByAccessToken(HttpServletRequest request) { + String token = request.getHeader(ACCESS_TOKEN); + if (CharSequenceUtil.isBlank(token)) { + token = request.getParameter(ACCESS_TOKEN); + } + if (CharSequenceUtil.isBlank(token)) { + return null; + } + UserAccessTokenDO userAccessTokenDO = authDAO.getUserNameByAccessToken(token); + if (userAccessTokenDO == null) { + return null; + } + String username = userAccessTokenDO.getUsername(); + if (CharSequenceUtil.isBlank(username)) { + return null; + } + // access-token 认证通过 设置该身份的权限 + Completable.fromAction(() -> authDAO.updateAccessToken(username, userAccessTokenDO.getAccessToken())) + .subscribeOn(Schedulers.io()) + .subscribe(); + setAuthorities(username); + return userAccessTokenDO.getUsername(); + } + + /** + * 根据jmal-token获取用户名 + * + * @param request HttpServletRequest + * @param response HttpServletResponse + * @param jmalToken jmal-token + * @param name username + * @return username + */ + public String getUserNameByJmalToken(HttpServletRequest request, HttpServletResponse response, String jmalToken, String name) { + if (!CharSequenceUtil.isBlank(jmalToken) && !CharSequenceUtil.isBlank(name)) { + String hashPassword = userService.getHashPasswordUserName(name); + if (hashPassword == null) { + return null; + } + String username = TokenUtil.getTokenKey(jmalToken, hashPassword); + if (username == null && request != null) { + String refreshToken = getCookie(request, REFRESH_TOKEN); + if (CharSequenceUtil.isBlank(refreshToken)) { + return null; + } + // 自动续token + username = renewJmalToken(request, response, name, hashPassword, refreshToken); + } + if (name.equals(username)) { + return username; + } + return null; + } + return null; + } + + /** + * 自动续token + */ + private String renewJmalToken(HttpServletRequest request, HttpServletResponse response, String name, String hashPassword, String refreshToken) { + String username = TokenUtil.getTokenKey(refreshToken, hashPassword); + if (name.equals(username)) { + boolean rememberMe = Boolean.parseBoolean(getCookie(request, REMEMBER_NAME)); + String jmalToken = generateJmalToken(hashPassword, username); + setRefreshCookie(request, response, hashPassword, username, rememberMe, jmalToken); + return username; + } + return null; + } + + private String renewJmalToken(HttpServletRequest request, HttpServletResponse response, String refreshToken) { + String username = TokenUtil.getUsername(refreshToken); + if (CharSequenceUtil.isBlank(username)) { + return null; + } + String hashPassword = userService.getHashPasswordUserName(username); + if (CharSequenceUtil.isBlank(hashPassword)) { + return null; + } + return renewJmalToken(request, response, username, hashPassword, refreshToken); + } + + private static void setJmalTokenCookie(HttpServletRequest request, HttpServletResponse response, String username, String jmalToken) { + + addHttpOnlyCookie(request, response, JMAL_TOKEN, jmalToken, TWO_HOURS_IN_SECONDS); + addHttpOnlyCookie(request, response, IUserService.USERNAME, username, TWO_HOURS_IN_SECONDS); + + response.addHeader(JMAL_TOKEN, jmalToken); + } + + /** + * 生成jmal-token + * + * @param hashPassword hashPassword + * @param username username + * @return jmal-token + */ + public static String generateJmalToken(String hashPassword, String username) { + LocalDateTime jmalTokenExpiration = LocalDateTime.now(); + // jmal-token 期限为2小时 + jmalTokenExpiration = jmalTokenExpiration.plusSeconds(TWO_HOURS_IN_SECONDS); + return TokenUtil.createToken(username, hashPassword, jmalTokenExpiration); + } + + /** + * 设置 refreshToken + * + * @param request HttpServletRequest + * @param response HttpServletResponse + * @param hashPassword hashPassword + * @param username username + * @param rememberMe rememberMe + */ + public static void setRefreshCookie(HttpServletRequest request, HttpServletResponse response, String hashPassword, String username, boolean rememberMe, String jmalToken) { + LocalDateTime refreshTokenExpiration = LocalDateTime.now(); + // 如果用户勾选了记住我, refreshToken期限为90天, 否则为1天 + int refreshMaxAge = rememberMe ? NINETY_DAYS_IN_SECONDS : SECONDS_IN_DAY; + refreshTokenExpiration = refreshTokenExpiration.plusSeconds(refreshMaxAge); + + addHttpOnlyCookie(request, response, REFRESH_TOKEN, TokenUtil.createToken(username, hashPassword, refreshTokenExpiration), refreshMaxAge); + addHttpOnlyCookie(request, response, REMEMBER_NAME, String.valueOf(rememberMe), refreshMaxAge); + + setJmalTokenCookie(request, response, username, jmalToken); + } + + private static void addHttpOnlyCookie(HttpServletRequest request, HttpServletResponse response, String name, String value, int maxAge) { + + String scheme = request.getHeader("X-Forwarded-Proto"); + if (CharSequenceUtil.isNotBlank(scheme)) { + scheme = scheme.split(",")[0].trim(); + } else { + scheme = request.getScheme(); + } + boolean isHttps = "https".equalsIgnoreCase(scheme); + + Cookie cookie = new Cookie(name, value); + cookie.setMaxAge(maxAge); + cookie.setHttpOnly(true); + cookie.setPath("/"); + cookie.setSecure(isHttps); + // SameSite + cookie.setAttribute("SameSite", "Strict"); + response.addCookie(cookie); + } + + public static void removeCookies(HttpServletResponse response, String ...keys) { + for (String key : keys) { + Cookie cookie = new Cookie(key, null); + cookie.setMaxAge(0); + cookie.setPath("/"); + response.addCookie(cookie); + } + } + + public static String getCookie(HttpServletRequest request, String name) { + Cookie[] cookies = request.getCookies(); + if (cookies != null) { + for (Cookie cookie : cookies) { + if (cookie.getName().equals(name)) { + return cookie.getValue(); + } + } + } + return null; + } + + private void returnJson(HttpServletResponse response) { + response.setCharacterEncoding("UTF-8"); + response.setContentType("application/json; charset=utf-8"); + ServletOutputStream out = null; + try { + out = response.getOutputStream(); + ResponseResult result = ResultUtil.error(ExceptionType.LOGIN_EXCEPTION.getCode(), ExceptionType.LOGIN_EXCEPTION.getMsg()); + out.write(JSON.toJSONString(result).getBytes()); + removeCookies(response, IUserService.USERNAME, AuthInterceptor.JMAL_TOKEN); + } catch (IOException e) { + log.error(e.getMessage(), e); + } finally { + try { + if (out != null) { + out.flush(); + } + } catch (IOException e) { + log.error(e.getMessage(), e); + } + } + } +} diff --git a/src/main/java/com/jmal/clouddisk/interceptor/DirectFileInterceptor.java b/src/main/java/com/jmal/clouddisk/interceptor/DirectFileInterceptor.java new file mode 100644 index 0000000..380a9d3 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/interceptor/DirectFileInterceptor.java @@ -0,0 +1,74 @@ +package com.jmal.clouddisk.interceptor; + +import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.core.util.BooleanUtil; +import com.jmal.clouddisk.model.FileDocument; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.service.impl.DirectLinkService; +import com.jmal.clouddisk.service.impl.FileServiceImpl; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.jetbrains.annotations.NotNull; +import org.springframework.stereotype.Component; +import org.springframework.web.servlet.HandlerInterceptor; + +import java.util.List; + +/** + * @author jmal + * @Description + */ +@Slf4j +@Component +@RequiredArgsConstructor +public class DirectFileInterceptor implements HandlerInterceptor { + + private final DirectLinkService directLinkService; + + private final PreFileInterceptor preFileInterceptor; + + private final FileServiceImpl fileService; + + private final IUserService userService; + + @Override + public boolean preHandle(@NotNull HttpServletRequest request, @NotNull HttpServletResponse response, @NotNull Object handler) { + String uri = request.getRequestURI(); + String[] pathSegments = uri.split("/"); + + // 验证路径格式 + if (pathSegments.length != 4 || !"direct-file".equals(pathSegments[1])) { + response.setStatus(HttpServletResponse.SC_BAD_REQUEST); + return false; + } + String mark = pathSegments[2]; + String fileId = directLinkService.getFileIdByMark(mark); + if (CharSequenceUtil.isBlank(fileId)) { + response.setStatus(HttpServletResponse.SC_BAD_REQUEST); + return false; + } + FileDocument fileDocument = preFileInterceptor.getFileDocument(response, fileId); + if (fileDocument == null) { + response.setStatus(HttpServletResponse.SC_BAD_REQUEST); + return false; + } + if (BooleanUtil.isTrue(fileDocument.getIsFolder())) { + // 打包下载 + String username = userService.getUserNameById(fileDocument.getUserId()); + List authorities = userService.getAuthorities(username); + if (!authorities.contains("cloud:file:packageDownload")) { + response.setStatus(HttpServletResponse.SC_BAD_REQUEST); + return false; + } + fileService.packageDownload(request, response, List.of(fileId), username); + return false; + } + // 构造内部路径 + preFileInterceptor.internalFilePath(request, response, fileDocument); + // 阻止原始请求继续处理 + return false; + } + +} diff --git a/src/main/java/com/jmal/clouddisk/interceptor/FileInterceptor.java b/src/main/java/com/jmal/clouddisk/interceptor/FileInterceptor.java new file mode 100644 index 0000000..9a635ec --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/interceptor/FileInterceptor.java @@ -0,0 +1,481 @@ +package com.jmal.clouddisk.interceptor; + +import cn.hutool.core.convert.Convert; +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.net.URLDecoder; +import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.core.util.BooleanUtil; +import cn.hutool.core.util.URLUtil; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.model.FileDocument; +import com.jmal.clouddisk.oss.web.WebOssService; +import com.jmal.clouddisk.service.IFileService; +import com.jmal.clouddisk.util.CaffeineUtil; +import com.jmal.clouddisk.util.FileContentTypeUtils; +import com.jmal.clouddisk.util.MyFileUtils; +import com.jmal.clouddisk.util.UrlEncodingChecker; +import com.luciad.imageio.webp.WebPWriteParam; +import jakarta.servlet.ServletOutputStream; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import net.coobird.thumbnailator.Thumbnails; +import net.coobird.thumbnailator.tasks.UnsupportedFormatException; +import org.jetbrains.annotations.NotNull; +import org.springframework.http.HttpHeaders; +import org.springframework.stereotype.Component; +import org.springframework.web.servlet.HandlerInterceptor; +import org.springframework.web.servlet.HandlerMapping; + +import javax.imageio.*; +import javax.imageio.stream.FileCacheImageOutputStream; +import javax.imageio.stream.ImageInputStream; +import java.awt.image.BufferedImage; +import java.io.ByteArrayOutputStream; +import java.io.File; +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.Iterator; + +/** + * @author jmal + * @Description 文件鉴权拦截器 + * @Date 2020-01-31 22:04 + */ +@Slf4j +@Component +@RequiredArgsConstructor +public class FileInterceptor implements HandlerInterceptor { + + /*** + * 下载操作 + */ + private static final String DOWNLOAD = "download"; + /** + * 预览 + */ + private static final String PREVIEW = "preview"; + /*** + * 剪裁图片 + */ + private static final String CROP = "crop"; + /*** + * 缩略图 + */ + private static final String THUMBNAIL = "thumbnail"; + /*** + * webp + */ + private static final String WEBP = "webp"; + /*** + * 操作参数 + */ + private static final String OPERATION = "o"; + /*** + * fileId参数 + */ + private static final String SHARE_KEY = "shareKey"; + /*** + * 路径最小层级 + */ + private static final int MIN_COUNT = 2; + + private final FileProperties fileProperties; + + private final IFileService fileService; + + private final AuthInterceptor authInterceptor; + + private final ShareFileInterceptor shareFileInterceptor; + + private final WebOssService webOssService; + + @Override + public boolean preHandle(@NotNull HttpServletRequest request, @NotNull HttpServletResponse response, @NotNull Object handler) { + if (internalValid(request, response)) return true; + + if (fileAuthError(request, response)) { + response.setStatus(HttpServletResponse.SC_FORBIDDEN); + return false; + } + Path path = Paths.get(request.getRequestURI()); + String filename = getDownloadFilename(request, path); + String operation = request.getParameter(OPERATION); + + if (!CharSequenceUtil.isBlank(operation)) { + switch (operation) { + case DOWNLOAD -> { + response.setHeader(HttpHeaders.CONTENT_DISPOSITION, "attachment;filename=\"" + filename + "\""); + if (downloadOssFile(request, response, filename, path)) return false; + } + case PREVIEW -> { + if (previewOssFile(request, response, path)) return false; + } + case CROP -> handleCrop(request, response); + case THUMBNAIL -> thumbnail(request, response); + case WEBP -> webp(request, response); + default -> { + return true; + } + } + } else { + return !previewOssFile(request, response, path); + } + setHeader(request, response); + return true; + } + + private void setHeader(@NotNull HttpServletRequest request, @NotNull HttpServletResponse response) { + FileDocument fileDocument = getFileDocument(Paths.get(URLDecoder.decode(request.getRequestURI(), StandardCharsets.UTF_8))); + String contentType = fileDocument.getContentType(); + if (CharSequenceUtil.isNotBlank(contentType) && contentType.contains("/")) { + response.setHeader(HttpHeaders.CONTENT_TYPE, fileDocument.getContentType()); + } + if (fileDocument.getEtag() != null) { + response.setHeader(HttpHeaders.ETAG, "\"" + fileDocument.getEtag() + "\""); + } + setCacheControl(request, response); + } + + /** + * 获取下载文件名, 适配不同的浏览器 + * + * @param request request + * @param path path + * @return filename + */ + private static String getDownloadFilename(HttpServletRequest request, Path path) { + String filename = String.valueOf(path.getFileName()); + return getFilename(request, filename); + } + + private static String getFilename(HttpServletRequest request, String filename) { + if (UrlEncodingChecker.isUrlEncoded(filename)) { + filename = URLUtil.decode(filename, StandardCharsets.UTF_8); + } + + String gecko = "Gecko"; + String webKit = "WebKit"; + String userAgent = request.getHeader("User-Agent"); + if (userAgent.contains(gecko) || userAgent.contains(webKit)) { + filename = new String(filename.getBytes(StandardCharsets.UTF_8), StandardCharsets.ISO_8859_1); + } else { + filename = URLUtil.encode(filename, StandardCharsets.UTF_8); + } + return filename; + } + + public static void main(String[] args) { + System.out.println(URLUtil.encode("未命名文件 副本.txt", StandardCharsets.UTF_8)); + } + + private boolean internalValid(@NotNull HttpServletRequest request, @NotNull HttpServletResponse response) { + String requestId = (String) request.getAttribute("requestId"); + String internalToken = (String) request.getAttribute("internalToken"); + + if (CharSequenceUtil.isNotBlank(requestId) && CharSequenceUtil.isNotBlank(internalToken)) { + if (!PreFileInterceptor.isValidInternalTokenCache(requestId, internalToken)) { + response.setStatus(HttpServletResponse.SC_FORBIDDEN); + } + Path path = Paths.get(request.getRequestURI()); + String filename = getDownloadFilename(request, path); + if (downloadOssFile(request, response, filename, path)) return false; + setHeader(request, response); + return true; + } + return false; + } + + private boolean downloadOssFile(@NotNull HttpServletRequest request, @NotNull HttpServletResponse response, String filename, Path path) { + Path prePth = path.subpath(1, path.getNameCount()); + String ossPath = CaffeineUtil.getOssPath(prePth); + if (ossPath != null) { + webOssService.download(ossPath, prePth, request, response, filename); + return true; + } + return false; + } + + private void setCacheControl(@NotNull HttpServletRequest request, @NotNull HttpServletResponse response) { + File file = getFileByRequest(request); + if (MyFileUtils.checkNoCacheFile(file)) { + response.setHeader(HttpHeaders.CACHE_CONTROL, "max-age=300"); + } else { + response.setHeader(HttpHeaders.CACHE_CONTROL, "max-age=2592000"); + } + } + + /** + * 预览oss文件 + */ + private boolean previewOssFile(@NotNull HttpServletRequest request, @NotNull HttpServletResponse response, Path path) { + Path prePth = path.subpath(1, path.getNameCount()); + String ossPath = CaffeineUtil.getOssPath(prePth); + if (CharSequenceUtil.isNotBlank(ossPath)) { + webOssService.download(ossPath, prePth, request, response, null); + return true; + } + return false; + } + + /*** + * 文件鉴权是否失败 + * 当有shareKey参数时说明是分享文件的访问 + * shareKey 代表一个分享的文件或文件夹 + * 判断当前uri所属的文件是否为该分享的文件或其子文件 + * @return true 鉴权失败,false 鉴权成功 + */ + private boolean fileAuthError(HttpServletRequest request, HttpServletResponse response) { + String path = (String) request.getAttribute(HandlerMapping.PATH_WITHIN_HANDLER_MAPPING_ATTRIBUTE); + request.setAttribute(HandlerMapping.PATH_WITHIN_HANDLER_MAPPING_ATTRIBUTE, URLDecoder.decode(path, StandardCharsets.UTF_8)); + Path uriPath = Paths.get(URLDecoder.decode(request.getRequestURI(), StandardCharsets.UTF_8)); + String shareKey = request.getParameter(SHARE_KEY); + if (!CharSequenceUtil.isBlank(shareKey)) { + return validShareFile(request, uriPath, shareKey); + } else { + String username = authInterceptor.getUserNameByHeader(request, response); + if (!CharSequenceUtil.isBlank(username)) { + authInterceptor.setAuthorities(username); + } + int nameCount = uriPath.getNameCount(); + if (nameCount < MIN_COUNT) { + return true; + } + if (nameCount == MIN_COUNT && path.startsWith("logo")) { + return false; + } + if (!CharSequenceUtil.isBlank(username) && username.equals(uriPath.getName(1).toString())) { + return false; + } + return isNotAllowAccess(getFileDocument(uriPath), request); + } + } + + private boolean validShareFile(HttpServletRequest request, Path uriPath, String shareKey) { + FileDocument fileDocument = fileService.getById(shareKey); + if (!isNotAllowAccess(fileDocument, request)) { + // 判断当前uri所属的文件是否为已分享的文件或其子文件 + FileDocument thisFile = getFileDocument(uriPath); + if (thisFile.getPath().equals(fileDocument.getPath())) { + return false; + } + if (Boolean.TRUE.equals(fileDocument.getIsFolder())) { + String parentPath = fileDocument.getPath() + fileDocument.getName(); + return !thisFile.getPath().startsWith(parentPath); + } + } + return true; + } + + /*** + * 判断文件是否不允许访问 + * 如果为公共文件,或者分享有效期内的文件,则允许访问 + * @return true 不允许访问,false 允许访问 + */ + public boolean isNotAllowAccess(FileDocument fileDocument, HttpServletRequest request) { + if (fileDocument == null) { + return true; + } + if (BooleanUtil.isTrue(fileDocument.getIsPublic())) { + return false; + } + // 分享文件 + if (BooleanUtil.isTrue(fileDocument.getIsShare())) { + return shareFileInterceptor.validShareFile(fileDocument, null, request); + } + return true; + } + + private void webp(HttpServletRequest request, HttpServletResponse response) { + Path uriPath = Paths.get(URLDecoder.decode(request.getRequestURI(), StandardCharsets.UTF_8)); + uriPath = uriPath.subpath(1, uriPath.getNameCount()); + try { + File file = Paths.get(fileProperties.getRootDir(), uriPath.toString()).toFile(); + // 从某处获取图像进行编码 + BufferedImage image = ImageIO.read(file); + + // 获取一个WebP ImageWriter实例 + ImageWriter writer = ImageIO.getImageWritersByMIMEType("image/webp").next(); + responseHeader(response, file.getName() + ".webp", new byte[1]); + // 配置编码参数 + WebPWriteParam writeParam = new WebPWriteParam(writer.getLocale()); + writeParam.setCompressionMode(ImageWriteParam.MODE_DEFAULT); + // 在ImageWriter上配置输出 + FileCacheImageOutputStream output = new FileCacheImageOutputStream(response.getOutputStream(), null); + writer.setOutput(output); + // 编码 + writer.write(null, new IIOImage(image, null, null), writeParam); + } catch (IOException e) { + log.error(e.getMessage(), e); + } + + } + + private void thumbnail(HttpServletRequest request, HttpServletResponse response) { + Path uriPath = Paths.get(URLDecoder.decode(request.getRequestURI(), StandardCharsets.UTF_8)); + if (uriPath.getNameCount() < MIN_COUNT) { + return; + } + FileDocument fileDocument = getFileDocument(uriPath, false); + Path relativePath = uriPath.subpath(1, uriPath.getNameCount()); + if (fileDocument != null) { + if (fileDocument.getContent() == null) { + File file = Paths.get(fileProperties.getRootDir(), relativePath.toString()).toFile(); + if (file.exists()) { + fileDocument.setContent(FileUtil.readBytes(file)); + } + } + responseWritImage(response, fileDocument.getName(), fileDocument.getContent()); + } + } + + private FileDocument getFileDocument(Path uriPath, boolean excludeContent) { + String username = uriPath.getName(1).toString(); + String path = File.separator; + if (uriPath.getNameCount() > MIN_COUNT + 1) { + path = File.separator + uriPath.subpath(MIN_COUNT, uriPath.getNameCount()).getParent().toString() + File.separator; + } + String name = uriPath.getFileName().toString(); + return fileService.getFileDocumentByPathAndName(path, name, username, excludeContent); + } + + private FileDocument getFileDocument(Path uriPath) { + return getFileDocument(uriPath, true); + } + + private void handleCrop(HttpServletRequest request, HttpServletResponse response) { + File file = getFileByRequest(request); + String q = request.getParameter("q"); + String w = request.getParameter("w"); + String h = request.getParameter("h"); + byte[] img = imageCrop(file, q, w, h); + if (img.length > 0) { + responseWritImage(response, file.getName(), img); + } + } + + private @NotNull File getFileByRequest(HttpServletRequest request) { + Path uriPath = Paths.get(URLDecoder.decode(request.getRequestURI(), StandardCharsets.UTF_8)); + uriPath = uriPath.subpath(1, uriPath.getNameCount()); + return Paths.get(fileProperties.getRootDir(), uriPath.toString()).toFile(); + } + + private void responseWritImage(HttpServletResponse response, String fileName, byte[] img) { + responseHeader(response, fileName, img); + try (ServletOutputStream outputStream = response.getOutputStream()) { + outputStream.write(img); + } catch (IOException e) { + log.error(e.getMessage(), e); + } + } + + private void responseHeader(HttpServletResponse response, String fileName, byte[] img) { + if (!CharSequenceUtil.isBlank(fileName)) { + response.setHeader(HttpHeaders.CONTENT_TYPE, FileContentTypeUtils.getContentType(MyFileUtils.extName(fileName))); + } + if (img != null) { + response.setHeader(HttpHeaders.CONTENT_LENGTH, String.valueOf(img.length)); + } + response.setHeader(HttpHeaders.CONNECTION, "close"); + response.setHeader(HttpHeaders.CONTENT_ENCODING, "utf-8"); + response.setHeader(HttpHeaders.CACHE_CONTROL, "max-age=2592000"); + } + + /** + * 剪裁图片 + * + * @param srcFile 源文件 + * @param q 剪裁后的质量 + * @param w 剪裁后的宽度 + * @param h 剪裁后的高度 + * @return 剪裁后的文件 + */ + public static byte[] imageCrop(File srcFile, String q, String w, String h) { + ByteArrayOutputStream out = null; + ImageInputStream iis = null; + try { + // 使用ImageInputStream来处理大文件 + iis = ImageIO.createImageInputStream(srcFile); + Iterator readers = ImageIO.getImageReaders(iis); + if (!readers.hasNext()) { + return new byte[0]; + } + ImageReader reader = readers.next(); + reader.setInput(iis, true); + + // 获取图像元数据 + BufferedImage bim = reader.read(0); + if (bim == null) { + return new byte[0]; + } + + int srcWidth = bim.getWidth(); + int srcHeight = bim.getHeight(); + + // 处理质量参数 + double quality = parseQuality(q); + int width = parseDimension(w); + int height = parseDimension(h); + + Thumbnails.Builder thumbnail = Thumbnails.of(bim) + .outputFormat("jpg") // 指定输出格式 + .outputQuality(quality); + + if (width > 0 && srcWidth > width) { + if (height <= 0 || srcHeight <= height) { + height = (int) (width / (double) srcWidth * srcHeight); + height = height == 0 ? width : height; + } + thumbnail.size(width, height); + } else { + // 宽高均小,指定原大小 + thumbnail.size(srcWidth, srcHeight); + } + + out = new ByteArrayOutputStream(); + thumbnail.toOutputStream(out); + return out.toByteArray(); + } catch (UnsupportedFormatException e) { + log.warn(e.getMessage(), e); + } catch (IOException e) { + log.error(e.getMessage(), e); + } finally { + if (out != null) { + try { + out.close(); + } catch (IOException e) { + log.error("Error closing ByteArrayOutputStream", e); + } + } + if (iis != null) { + try { + iis.close(); + } catch (IOException e) { + log.error("Error closing ImageInputStream", e); + } + } + } + return new byte[0]; + } + + private static double parseQuality(String q) { + try { + double quality = Convert.toDouble(q, 0.8); + return (quality >= 0 && quality <= 1) ? quality : 0.8; + } catch (NumberFormatException e) { + return 0.8; + } + } + + private static int parseDimension(String dim) { + try { + return Convert.toInt(dim, -1); + } catch (NumberFormatException e) { + return -1; + } + } + +} diff --git a/src/main/java/com/jmal/clouddisk/interceptor/HeaderLocaleChangeInterceptor.java b/src/main/java/com/jmal/clouddisk/interceptor/HeaderLocaleChangeInterceptor.java new file mode 100644 index 0000000..1453afb --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/interceptor/HeaderLocaleChangeInterceptor.java @@ -0,0 +1,25 @@ +package com.jmal.clouddisk.interceptor; + +import cn.hutool.core.util.StrUtil; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.jetbrains.annotations.NotNull; +import org.springframework.context.i18n.LocaleContextHolder; +import org.springframework.web.servlet.i18n.LocaleChangeInterceptor; + +import java.util.Locale; + +public class HeaderLocaleChangeInterceptor extends LocaleChangeInterceptor { + + @Override + public boolean preHandle(HttpServletRequest request, @NotNull HttpServletResponse response, @NotNull Object handler) { + String lang = request.getHeader("lang"); + if (StrUtil.isNotBlank(lang) && lang.indexOf("_") > 0) { + Locale locale = Locale.forLanguageTag(lang.replace("_", "-")); + LocaleContextHolder.setLocale(locale); + } else { + LocaleContextHolder.setLocale(Locale.US); + } + return true; + } +} diff --git a/src/main/java/com/jmal/clouddisk/interceptor/PreFileInterceptor.java b/src/main/java/com/jmal/clouddisk/interceptor/PreFileInterceptor.java new file mode 100644 index 0000000..c864f8a --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/interceptor/PreFileInterceptor.java @@ -0,0 +1,123 @@ +package com.jmal.clouddisk.interceptor; + +import cn.hutool.core.lang.UUID; +import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.crypto.digest.DigestUtil; +import com.github.benmanes.caffeine.cache.Cache; +import com.github.benmanes.caffeine.cache.Caffeine; +import com.jmal.clouddisk.model.FileDocument; +import com.jmal.clouddisk.service.IFileService; +import com.jmal.clouddisk.service.IUserService; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.jetbrains.annotations.NotNull; +import org.springframework.stereotype.Component; +import org.springframework.web.servlet.HandlerInterceptor; + +import java.io.IOException; +import java.util.concurrent.TimeUnit; + +/** + * @author jmal + * @Description + */ +@Slf4j +@Component +@RequiredArgsConstructor +public class PreFileInterceptor implements HandlerInterceptor { + + private final IFileService fileService; + + private final IUserService userService; + + private static final Cache INTERNAL_TOKEN_CACHE = Caffeine.newBuilder().expireAfterWrite(5, TimeUnit.SECONDS).build(); + + private static void setInternalTokenCache(String requestId, String token) { + INTERNAL_TOKEN_CACHE.put(requestId, token); + } + + public static boolean isValidInternalTokenCache(String requestId, String token) { + if (CharSequenceUtil.isBlank(token)) { + return false; + } + String cachedToken = INTERNAL_TOKEN_CACHE.getIfPresent(requestId); + boolean isValid = token.equals(cachedToken); + INTERNAL_TOKEN_CACHE.invalidate(requestId); + return isValid; + } + + + @Override + public boolean preHandle(@NotNull HttpServletRequest request, @NotNull HttpServletResponse response, @NotNull Object handler) { + String uri = request.getRequestURI(); + String[] pathSegments = uri.split("/"); + + // 验证路径格式 + if (pathSegments.length != 4 || !"pre-file".equals(pathSegments[1])) { + response.setStatus(HttpServletResponse.SC_BAD_REQUEST); + return false; + } + String fileId = pathSegments[2]; + FileDocument fileDocument = getFileDocument(response, fileId); + if (fileDocument == null) { + return false; + } + + // 构造内部路径 + internalFilePath(request, response, fileDocument); + + // 阻止原始请求继续处理 + return false; + } + + public void internalFilePath(HttpServletRequest request, HttpServletResponse response, FileDocument fileDocument) { + setInternal(request, fileDocument.getId()); + String internalFilePath = constructInternalFilePath(fileDocument); + try { + request.setAttribute("forward", true); + request.getRequestDispatcher(internalFilePath).forward(request, response); + } catch (Exception e) { + handleForwardException(response, internalFilePath, e); + } + } + + private static void setInternal(HttpServletRequest request, String fileId) { + // 生成临时 token + String requestId = UUID.fastUUID().toString(true) + fileId; + String internalToken = DigestUtil.sha256Hex(requestId + System.currentTimeMillis()); + request.setAttribute("requestId", requestId); + request.setAttribute("internalToken", internalToken); + setInternalTokenCache(requestId, internalToken); + } + + public FileDocument getFileDocument(HttpServletResponse response, String fileId) { + if (CharSequenceUtil.isBlank(fileId)) { + response.setStatus(HttpServletResponse.SC_BAD_REQUEST); + return null; + } + FileDocument fileDocument = fileService.getById(fileId); + if (fileDocument == null) { + response.setStatus(HttpServletResponse.SC_NOT_FOUND); + return null; + } + return fileDocument; + } + + private String constructInternalFilePath(FileDocument fileDocument) { + return "/file/" + userService.getUserNameById(fileDocument.getUserId()) + fileDocument.getPath() + fileDocument.getName(); + } + + private static void handleForwardException(HttpServletResponse response, String internalFilePath, Exception e) { + log.error("Failed to forward request to {}", internalFilePath, e); + response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR); + try { + response.getWriter().write("Internal server error"); + } catch (IOException ioException) { + log.error("Failed to write response", ioException); + } + } + + +} diff --git a/src/main/java/com/jmal/clouddisk/interceptor/ShareFileInterceptor.java b/src/main/java/com/jmal/clouddisk/interceptor/ShareFileInterceptor.java new file mode 100644 index 0000000..bf3f463 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/interceptor/ShareFileInterceptor.java @@ -0,0 +1,113 @@ +package com.jmal.clouddisk.interceptor; + +import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.core.util.BooleanUtil; +import com.jmal.clouddisk.model.FileDocument; +import com.jmal.clouddisk.model.ShareDO; +import com.jmal.clouddisk.service.Constants; +import com.jmal.clouddisk.service.IShareService; +import com.jmal.clouddisk.service.impl.UserLoginHolder; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.jetbrains.annotations.NotNull; +import org.springframework.stereotype.Component; +import org.springframework.web.servlet.HandlerInterceptor; + +/** + * @author jmal + * @Description + */ +@Slf4j +@Component +@RequiredArgsConstructor +public class ShareFileInterceptor implements HandlerInterceptor { + + private final IShareService shareService; + + private final PreFileInterceptor preFileInterceptor; + + private final UserLoginHolder userLoginHolder; + + @Override + public boolean preHandle(@NotNull HttpServletRequest request, @NotNull HttpServletResponse response, @NotNull Object handler) { + String uri = request.getRequestURI(); + String[] pathSegments = uri.split("/"); + + // 验证路径格式 + if (pathSegments.length < 4 || !"share-file".equals(pathSegments[1])) { + response.setStatus(HttpServletResponse.SC_BAD_REQUEST); + return false; + } + String shareToken = null; + if (pathSegments.length == 5) { + shareToken = pathSegments[3]; + } + + String fileId = pathSegments[2]; + FileDocument fileDocument = preFileInterceptor.getFileDocument(response, fileId); + if (fileDocument == null) { + return false; + } + + // 验证权限 + if (isNotAllowAccess(fileDocument, shareToken, request)) { + return false; + } + + // 构造内部路径 + preFileInterceptor.internalFilePath(request, response, fileDocument); + + // 阻止原始请求继续处理 + return false; + } + + private boolean isNotAllowAccess(FileDocument fileDocument, String shareToken, HttpServletRequest request) { + if (BooleanUtil.isTrue(fileDocument.getIsShare())) { + return validShareFile(fileDocument, shareToken, request); + } + return true; + } + + public boolean validShareFile(FileDocument fileDocument, String shareToken, HttpServletRequest request) { + if (System.currentTimeMillis() >= fileDocument.getExpiresAt()) { + // 过期了 + return true; + } + if (fileDocument.getShareId() == null) { + // 未分享 + return true; + } + ShareDO shareDO = shareService.getShare(fileDocument.getShareId()); + if (shareDO == null) { + // 分享不存在 + return true; + } + if (BooleanUtil.isFalse(shareDO.getIsPrivacy())) { + return false; + } + if (request == null) { + // 未登录 + return true; + } + if (CharSequenceUtil.isBlank(shareToken)) { + // 判断是否为挂载文件 + String userId = userLoginHolder.getUserId(); + if (CharSequenceUtil.isNotBlank(userId)) { + return !shareService.existsMountFile(shareDO.getFileId(), userId); + } + shareToken = request.getHeader(Constants.SHARE_TOKEN); + if (CharSequenceUtil.isBlank(shareToken)) { + shareToken = request.getParameter(Constants.SHARE_TOKEN); + } + } + if (CharSequenceUtil.isBlank(shareToken)) { + // 未携带share-token + return true; + } + shareService.validShare(shareToken, shareDO.getId()); + return false; + } + +} diff --git a/src/main/java/com/jmal/clouddisk/listener/FileListener.java b/src/main/java/com/jmal/clouddisk/listener/FileListener.java new file mode 100644 index 0000000..36a8cf1 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/listener/FileListener.java @@ -0,0 +1,345 @@ +package com.jmal.clouddisk.listener; + +import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.core.thread.ThreadUtil; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.lucene.RebuildIndexTaskService; +import com.jmal.clouddisk.service.IFileService; +import io.methvin.watcher.DirectoryChangeEvent; +import io.methvin.watcher.DirectoryChangeListener; +import jakarta.annotation.PostConstruct; +import jakarta.annotation.PreDestroy; +import lombok.Getter; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +import java.io.File; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.time.Duration; +import java.time.Instant; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.concurrent.*; +import java.util.concurrent.atomic.AtomicBoolean; +import java.util.concurrent.atomic.AtomicInteger; + +@Slf4j +@Service +@RequiredArgsConstructor +public class FileListener implements DirectoryChangeListener { + + private final FileProperties fileProperties; + private final IFileService fileService; + private final RebuildIndexTaskService rebuildIndexTaskService; + + /** + * 需要过滤掉的目录列表 + */ + @Getter + private final Set filterDirSet = new CopyOnWriteArraySet<>(); + + // 使用ConcurrentHashMap存储最新事件,确保每个路径只有一个最新事件 + private final Map eventMap = new ConcurrentHashMap<>(); + + // 处理队列 - 用于实际处理事件的工作队列 + private final BlockingQueue processingQueue = new LinkedBlockingQueue<>(100000); + + // 负载检测 + private final AtomicInteger eventBurstCounter = new AtomicInteger(0); + private final AtomicBoolean highLoadDetected = new AtomicBoolean(false); + private final AtomicBoolean scanningInProgress = new AtomicBoolean(false); + private volatile Instant lastBurstTime = Instant.now(); + private static final int EVENT_BURST_THRESHOLD = 5000; // 单位时间内事件数阈值 + private static final Duration BURST_WINDOW = Duration.ofSeconds(10); // 事件计数窗口 + private static final Duration IDLE_THRESHOLD = Duration.ofSeconds(30); // 闲置时间阈值 + + private final ScheduledExecutorService scheduler = ThreadUtil.createScheduledExecutor(2); + + private final ExecutorService processExecutor = ThreadUtil.newFixedExecutor(Runtime.getRuntime().availableProcessors(), 10000, "file-process-thread", true); + + @PostConstruct + public void init() { + // 定期将事件从Map转移到处理队列 + scheduler.scheduleAtFixedRate(this::transferEventsToQueue, 200, 200, TimeUnit.MILLISECONDS); + + // 启动消费者线程 + startConsumerThreads(); + + // 定期检查是否需要执行全盘扫描 + scheduler.scheduleAtFixedRate(this::checkAndStartScan, 10, 10, TimeUnit.SECONDS); + + // 定期重置事件计数器 + scheduler.scheduleAtFixedRate(() -> { + eventBurstCounter.set(0); + // 如果高负载标志已设置且已经过了一段闲置期,则进行一次全盘扫描 + if (highLoadDetected.get() && + Duration.between(lastBurstTime, Instant.now()).compareTo(IDLE_THRESHOLD) > 0) { + checkAndStartScan(); + } + }, BURST_WINDOW.toSeconds(), BURST_WINDOW.toSeconds(), TimeUnit.SECONDS); + } + + private void checkAndStartScan() { + // 如果检测到高负载并且当前没有扫描正在进行中,且处理队列基本为空(系统闲置) + if (highLoadDetected.get() && !scanningInProgress.get() && processingQueue.size() < 10) { + highLoadDetected.set(false); // 重置高负载标志 + startIncrementalScan(); + } + } + + private void startIncrementalScan() { + if (!scanningInProgress.compareAndSet(false, true)) { + return; // 已有扫描任务在运行 + } + // 延时执行,确保当前处理队列中的事件都被处理完 + rebuildIndexTaskService.doSync(null, null, false); + rebuildIndexTaskService.onSyncComplete(() -> { + log.info("执行增量文件扫描,确保100%处理..."); + rebuildIndexTaskService.doSync(null, null, false); + + rebuildIndexTaskService.onSyncComplete(() -> { + scanningInProgress.set(false); + log.info("增量文件扫描完成,已添加到处理队列。"); + }); + }); + } + + private void transferEventsToQueue() { + if (eventMap.isEmpty()) { + return; + } + + List eventsToProcess = new ArrayList<>(); + // 原子地将事件从map中取出,避免竞态条件 + for (Path key : eventMap.keySet()) { + DirectoryChangeEvent event = eventMap.remove(key); + if (event != null) { + eventsToProcess.add(event); + } + } + + if (eventsToProcess.isEmpty()) { + return; + } + + // 转移到处理队列 + int transferCount = 0; + for (DirectoryChangeEvent event : eventsToProcess) { + boolean offered = processingQueue.offer(event); + if (!offered) { + log.error("处理队列已满,无法添加事件: {}, 路径: {}", event.eventType(), event.path()); + // 放回原Map以便下次尝试 + eventMap.put(event.path(), event); + } else { + transferCount++; + } + } + + if (transferCount > 0) { + log.debug("转移了{}个事件到处理队列,当前队列大小: {}", transferCount, processingQueue.size()); + } + } + + private void startConsumerThreads() { + int processors = Runtime.getRuntime().availableProcessors(); + for (int i = 0; i < processors; i++) { + processExecutor.submit(this::processQueueItems); + } + } + + private void processQueueItems() { + while (!Thread.currentThread().isInterrupted()) { + try { + DirectoryChangeEvent event = processingQueue.poll(100, TimeUnit.MILLISECONDS); + if (event != null) { + try { + processEvent(event); + } catch (Exception e) { + log.error("处理事件失败: {}, 路径: {}", event.eventType(), event.path(), e); + } + } + } catch (InterruptedException e) { + Thread.currentThread().interrupt(); + break; + } + } + } + + public void addFilterDir(Path path) { + filterDirSet.add(path); + } + + public void removeFilterDir(Path path) { + filterDirSet.remove(path); + } + + public boolean containsFilterDir(Path path) { + return filterDirSet.contains(path); + } + + @Override + public void onEvent(DirectoryChangeEvent directoryChangeEvent) { + Path eventPath = directoryChangeEvent.path(); + DirectoryChangeEvent.EventType eventType = directoryChangeEvent.eventType(); + + // 增加事件计数器,检测高负载 + int currentCount = eventBurstCounter.incrementAndGet(); + lastBurstTime = Instant.now(); + if (currentCount > EVENT_BURST_THRESHOLD) { + highLoadDetected.set(true); + log.warn("检测到高事件负载: {}事件/{}秒,标记为需要增量扫描", currentCount, BURST_WINDOW.getSeconds()); + } + + // 检查是否为忽略路径 + if (filterDirSet.stream().anyMatch(eventPath::startsWith)) { + log.debug("忽略事件: {}, 路径: {}", eventType, eventPath); + return; + } + + if (fileProperties.getMonitorIgnoreFilePrefix().stream().anyMatch(eventPath.getFileName()::startsWith)) { + log.debug("忽略文件:{}", eventPath.toFile().getAbsolutePath()); + return; + } + + log.debug("接收到事件: {}, 路径: {}", eventType, eventPath); + + // 将事件放入Map + eventMap.put(eventPath, directoryChangeEvent); + } + + private void processEvent(DirectoryChangeEvent directoryChangeEvent) { + Path eventPath = directoryChangeEvent.path(); + DirectoryChangeEvent.EventType eventType = directoryChangeEvent.eventType(); + File file = eventPath.toFile(); + switch (eventType) { + case CREATE: + onFileCreate(file); + break; + case MODIFY: + onFileChange(file); + break; + case DELETE: + onFileDelete(file); + break; + default: + break; + } + } + + /** + * 文件创建执行 + * + * @param file 文件 + */ + public void onFileCreate(File file) { + try { + String username = ownerOfChangeFile(file); + if (CharSequenceUtil.isBlank(username)) { + return; + } + fileService.createFile(username, file); + log.info("用户:{},新建文件:{}", username, file.getAbsolutePath()); + } catch (Exception e) { + log.error("新建文件后续操作失败, {}", file.getAbsolutePath(), e); + } + } + + /** + * 文件创建修改 + * + * @param file 文件 + */ + public void onFileChange(File file) { + try { + String username = ownerOfChangeFile(file); + if (CharSequenceUtil.isBlank(username)) { + return; + } + fileService.updateFile(username, file); + log.info("用户:{},修改文件:{}", username, file.getAbsolutePath()); + } catch (Exception e) { + log.error("修改文件后续操作失败, fileAbsolutePath: {}", file.getAbsolutePath(), e); + } + } + + /** + * 文件删除 + * + * @param file 文件 + */ + public void onFileDelete(File file) { + try { + String username = ownerOfChangeFile(file); + if (CharSequenceUtil.isBlank(username)) { + return; + } + fileService.deleteFile(username, file); + log.info("用户:{},删除文件:{}", username, file.getAbsolutePath()); + } catch (Exception e) { + log.error("删除文件后续操作失败, fileAbsolutePath: {}", file.getAbsolutePath(), e); + } + } + + /** + * 判断变化的文件属于哪个用户 + * + * @return username + */ + private String ownerOfChangeFile(File file) { + String username = null; + try { + int rootPathCount = Paths.get(fileProperties.getRootDir()).getNameCount(); + if (file.toPath().getNameCount() == rootPathCount + 1) { + return null; + } + username = file.toPath().subpath(rootPathCount, rootPathCount + 1).toString(); + } catch (Exception e) { + log.error("解析路径失败, fileAbsolutePath: {}", file.getAbsolutePath(), e); + } + return username; + } + + @Override + public boolean isWatching() { + return DirectoryChangeListener.super.isWatching(); + } + + @Override + public void onIdle(int i) { + DirectoryChangeListener.super.onIdle(i); + } + + @Override + public void onException(Exception e) { + DirectoryChangeListener.super.onException(e); + } + + @PreDestroy + public void shutdown() { + scheduler.shutdown(); + processExecutor.shutdown(); + try { + // 等待处理线程池在指定时间内完成任务 + if (!processExecutor.awaitTermination(1, TimeUnit.SECONDS)) { + processExecutor.shutdownNow(); + } + } catch (InterruptedException e) { + processExecutor.shutdownNow(); + Thread.currentThread().interrupt(); + } + + try { + // 等待调度器在指定时间内完成任务 + if (!scheduler.awaitTermination(1, TimeUnit.SECONDS)) { + scheduler.shutdownNow(); + } + } catch (InterruptedException e) { + scheduler.shutdownNow(); + Thread.currentThread().interrupt(); + } + } +} diff --git a/src/main/java/com/jmal/clouddisk/listener/FileMonitor.java b/src/main/java/com/jmal/clouddisk/listener/FileMonitor.java new file mode 100644 index 0000000..f7076e7 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/listener/FileMonitor.java @@ -0,0 +1,227 @@ +package com.jmal.clouddisk.listener; + +import cn.hutool.core.date.DateUnit; +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.io.file.PathUtil; +import cn.hutool.core.text.CharSequenceUtil; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.model.FileDocument; +import com.jmal.clouddisk.service.IFileService; +import com.jmal.clouddisk.util.SystemUtil; +import io.methvin.watcher.DirectoryWatcher; +import jakarta.annotation.PostConstruct; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.beans.factory.config.BeanDefinition; +import org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider; +import org.springframework.context.event.ContextRefreshedEvent; +import org.springframework.context.event.EventListener; +import org.springframework.core.type.filter.AnnotationTypeFilter; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.index.IndexOperations; +import org.springframework.data.mongodb.core.index.MongoPersistentEntityIndexResolver; +import org.springframework.data.mongodb.core.mapping.Document; +import org.springframework.data.mongodb.core.mapping.MongoMappingContext; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Service; + +import java.io.File; +import java.io.IOException; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.Objects; + +/** + * @Description 启动时开启文件目录监控 + * @Date 2020-02-21 14:54 + * @author jmal + */ +@Service +@Slf4j +@RequiredArgsConstructor +public class FileMonitor { + + final FileProperties fileProperties; + + final MongoTemplate mongoTemplate; + + final IFileService fileService; + + final FileListener fileListener; + + @Value("${version}") + private String version; + + private String newVersion = null; + + private DirectoryWatcher watcher; + + @EventListener(ContextRefreshedEvent.class) + public void initIndicesAfterStartup() { + // 1. 获取映射上下文,这一步不变 + MongoMappingContext mappingContext = (MongoMappingContext) mongoTemplate.getConverter().getMappingContext(); + + // 2. 创建索引解析器,这一步不变 + MongoPersistentEntityIndexResolver resolver = new MongoPersistentEntityIndexResolver(mappingContext); + + // 3. 使用 Spring 的类路径扫描器自动发现所有 @Document 注解的类 + ClassPathScanningCandidateComponentProvider provider = new ClassPathScanningCandidateComponentProvider(false); + provider.addIncludeFilter(new AnnotationTypeFilter(Document.class)); + + // 替换为你的实体类所在的包名 + String basePackage = "com.jmal.clouddisk.model"; + + for (BeanDefinition beanDefinition : provider.findCandidateComponents(basePackage)) { + try { + Class entityClass = Class.forName(beanDefinition.getBeanClassName()); + // 获取对应实体类的 IndexOperations + IndexOperations indexOps = mongoTemplate.indexOps(entityClass); + resolver.resolveIndexFor(entityClass).forEach(indexOps::createIndex); + } catch (ClassNotFoundException e) { + // 处理异常 + log.error("Error loading class: {}", e.getMessage(), e); + } + } + } + + @PostConstruct + public void init() throws IOException { + // 检测新版本 + newVersion = SystemUtil.getNewVersion(); + // 判断是否开启文件监控 + if (Boolean.FALSE.equals(fileProperties.getMonitor())) { + return; + } + // 忽略目录 + fileListener.addFilterDir(Paths.get(fileProperties.getRootDir(), fileProperties.getChunkFileDir())); + fileListener.addFilterDir(Paths.get(fileProperties.getRootDir(), fileProperties.getLuceneIndexDir())); + + // 开启文件监控 + newDirectoryWatcher(); + } + + private void newDirectoryWatcher() throws IOException { + Path rootDir = Paths.get(fileProperties.getRootDir()); + PathUtil.mkdir(rootDir); + this.watcher = DirectoryWatcher.builder() + .path(rootDir) + .listener(fileListener) + .logger(log) + .fileHashing(false) + .build(); + watcher.watchAsync(); + log.info("\r\n文件监控服务已开启, 监控目录: {}, 忽略目录: {}", rootDir, fileListener.getFilterDirSet()); + } + + private void reloadDirectoryWatcher() { + try { + watcher.close(); + newDirectoryWatcher(); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + } + + /** + * 在过滤器里添加路径 + * @param path 需要过滤掉的路径 + */ + public void addDirFilter(String path) { + Path filepath = Paths.get(fileProperties.getRootDir(), path); + fileListener.addFilterDir(filepath); + String username = Paths.get(path).getParent().getFileName().toString(); + fileService.createFile(username, filepath.toFile()); + reloadDirectoryWatcher(); + } + + /** + * 需要移除的路径 + * @param path 需要移除的路径 + */ + public void removeDirFilter(String path) { + Path filepath = Paths.get(fileProperties.getRootDir(), path); + if (fileListener.containsFilterDir(filepath)) { + fileListener.removeFilterDir(filepath); + String username = Paths.get(path).getParent().getFileName().toString(); + fileService.deleteFile(username, Paths.get(fileProperties.getRootDir(), path).toFile()); + reloadDirectoryWatcher(); + } + } + + /** + *

定时清理临时目录

+ * 每天凌晨2点执行
+ * 1.清理临时目录中3天前的文件
+ * 2.清理视频转码缓存目录中的无效文件
+ * 3.清理回收站中30天前的文件
+ */ + @Scheduled(cron = "0 0 2 * * ?") + private void cleanTempDir() { + // 临时目录 + Path tempPath = Paths.get(fileProperties.getRootDir(), fileProperties.getChunkFileDir()); + for (File username : FileUtil.ls(tempPath.toString())) { + if (username.isDirectory()) { + for (File file : FileUtil.ls(username.getAbsolutePath())) { + clearUserCache(file); + } + } + } + } + + /** + * 清理用户缓存文件 + * @param file 需要清理的文件 + */ + private void clearUserCache(File file) { + // 是否为三天前的文件 + boolean sevenDayAgo = file.lastModified() < (System.currentTimeMillis() - DateUnit.DAY.getMillis() * 3); + // 是否为视频转码缓存目录 + boolean videoCache = fileProperties.getVideoTranscodeCache().equals(file.getName()) || fileProperties.getLuceneIndexDir().equals(file.getParentFile().getName()); + // 回收站 + boolean trash = fileProperties.getJmalcloudTrashDir().equals(file.getName()); + if (videoCache || trash) { + clearVideoCache(file, videoCache); + return; + } + if (sevenDayAgo) { + FileUtil.del(file); + } + } + + /** + * 清理视频转码缓存目录 + * @param file 需要清理的文件 + * @param videoCache 是否为视频转码缓存目录 + */ + private void clearVideoCache(File file, boolean videoCache) { + if (videoCache && file.listFiles() != null) { + for (File f : Objects.requireNonNull(file.listFiles())) { + FileDocument fileDocument = fileService.getById(f.getName()); + if (fileDocument == null || f.isFile()) { + FileUtil.del(f); + log.info("删除视频转码缓存文件: {}", f.getAbsolutePath()); + } + } + } + } + + public String hasNewVersion() { + if (CharSequenceUtil.isBlank(newVersion)) { + return null; + } + // 判断是否有新版本, 比较newVersion和version + if (newVersion.compareTo("v" + version) > 0) { + return newVersion; + } + return null; + } + + /** + * 每3小时检查一次版本 + */ + @Scheduled(cron = "0 0 0/3 * * ?") + private void getNewVersion() { + newVersion = SystemUtil.getNewVersion(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/lucene/EtagService.java b/src/main/java/com/jmal/clouddisk/lucene/EtagService.java new file mode 100644 index 0000000..d8dbab9 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/lucene/EtagService.java @@ -0,0 +1,553 @@ +package com.jmal.clouddisk.lucene; + +import cn.hutool.core.convert.Convert; +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.core.thread.ThreadUtil; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.ReUtil; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.model.FileDocument; +import com.jmal.clouddisk.service.Constants; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.service.impl.FileServiceImpl; +import com.jmal.clouddisk.util.HashUtil; +import com.mongodb.client.AggregateIterable; +import com.mongodb.client.result.UpdateResult; +import jakarta.annotation.PostConstruct; +import jakarta.annotation.PreDestroy; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.bson.Document; +import org.bson.conversions.Bson; +import org.springframework.dao.DataAccessException; +import org.springframework.data.domain.Sort; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.data.mongodb.core.query.Update; +import org.springframework.stereotype.Service; + +import java.io.File; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.Arrays; +import java.util.Comparator; +import java.util.List; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.atomic.AtomicBoolean; + +import static com.jmal.clouddisk.service.IUserService.USER_ID; +import static com.mongodb.client.model.Accumulators.sum; +import static com.mongodb.client.model.Aggregates.group; +import static com.mongodb.client.model.Aggregates.match; +import static com.mongodb.client.model.Filters.*; + +/** + * EtagService + * 文件和文件夹的 ETag 更新逻辑 + * 异步处理文件变化和删除的 ETag 更新 + * 后台 Worker 处理标记为需要更新 ETag 的文件夹 + * ETag 计算和更新的内部方法 + */ +@Service +@RequiredArgsConstructor +@Slf4j +public class EtagService { + + private final MongoTemplate mongoTemplate; + + private final FileProperties fileProperties; + + private final IUserService userService; + + private static final String EMPTY_FOLDER_ETAG_BASE_STRING = "EMPTY_FOLDER_REPRESENTATION_MONGO_V2"; + private static final int MAX_ETAG_UPDATE_ATTEMPTS = 5; // 最大失败重试次数 + + private final AtomicBoolean processingScheduled = new AtomicBoolean(false); + + /** + * 处理文件夹Etag的线程池 + */ + private ExecutorService executorMarkedFoldersService; + + @PostConstruct + public void init() { + if (executorMarkedFoldersService == null) { + executorMarkedFoldersService = ThreadUtil.newFixedExecutor(1, 1, "EtagWorker-", false); + } + ThreadUtil.execute(() -> { + Query queryNoEtagQuery = new Query(); + queryNoEtagQuery.addCriteria(Criteria.where(Constants.ETAG).exists(false).and(Constants.IS_FOLDER).is(true)); + long countOfFoldersWithoutEtag = mongoTemplate.count(queryNoEtagQuery, FileDocument.class); + if (countOfFoldersWithoutEtag > 0) { + log.info("{} folders found without ETag. Marking them for ETag calculation.", countOfFoldersWithoutEtag); + Update update = new Update().set(Constants.NEEDS_ETAG_UPDATE_FIELD, true).currentDate(Constants.LAST_ETAG_UPDATE_REQUEST_AT_FIELD); + mongoTemplate.updateMulti(queryNoEtagQuery, update, FileDocument.class); + } + processRootFolderFiles(); + log.info("Initial ETag setup finished. Ensuring ETag processing worker is active if needed."); + ensureProcessingMarkedFolders(); + }); + } + + /** + * 统计文件夹的大小 + */ + public long getFolderSize(String collectionName, String userId, String path) { + List list = Arrays.asList(match(and(eq(USER_ID, userId), eq(Constants.IS_FOLDER, false), regex("path", "^" + ReUtil.escape(path)))), group(null, sum(Constants.TOTAL_SIZE, "$size"))); + AggregateIterable result = mongoTemplate.getCollection(collectionName).aggregate(list); + long totalSize = 0; + Document doc = result.first(); + if (doc != null) { + totalSize = Convert.toLong(doc.get(Constants.TOTAL_SIZE), 0L); + } + return totalSize; + } + + /** + * 当文件内容发生变化(上传/修改/重命名/删除等)时调用。 + * 立即更新文件的ETag,并异步标记其父文件夹需要更新ETag。 + * + * @param file 发生变化的文件 + */ + public void updateFileEtagAsync(String username, File file) { + if (!FileUtil.exist(file)) { + return; + } + if (FileUtil.isFile(file)) { + updateFileEtagAndMarkParentAsync(username, file); + } + } + + /** + * 确保 ETag 处理任务已调度或正在运行。 + * 如果当前没有任务在执行或计划执行,则提交一个新任务到执行器。 + * 这个方法是幂等的,多次调用(如果任务已调度)不会产生副作用。 + */ + private void ensureProcessingMarkedFolders() { + // 使用 compareAndSet 来原子性地检查并设置标志 + // 如果 processingScheduled 为 false,则将其设置为 true 并执行提交逻辑 + if (processingScheduled.compareAndSet(false, true)) { + log.debug("ETag processing task for marked folders is being scheduled."); + executorMarkedFoldersService.execute(() -> { + String workerId = "markedFoldersWorker-" + Thread.currentThread().getName(); + try { + // 调用实际的循环处理逻辑 + processMarkedFoldersLoop(workerId); + } finally { + // 当任务完成(无论是正常结束还是异常结束)后, + // 将标志重置为 false,允许后续的 ensureProcessingMarkedFolders 调用再次调度任务。 + processingScheduled.set(false); + log.debug("[Worker {}] ETag processing task finished. Resetting schedule flag.", workerId); + + // 关键:检查在本次处理运行期间是否有新的文件夹被标记 + // 如果有,则再次尝试调度,确保它们得到处理 + if (hasMoreMarkedFoldersInDb()) { + log.debug("[Worker {}] New folders were marked during or after the last processing run. Re-triggering ETag processing.", workerId); + ensureProcessingMarkedFolders(); + } else { + log.debug("[Worker {}] No more marked folders found after processing run. ETag worker will rest until new marks.", workerId); + } + } + }); + } else { + // 如果 processingScheduled 已经是 true,说明任务已在队列中或正在运行 + log.debug("ETag processing task is already scheduled or running. This trigger call is a no-op."); + } + } + + /** + * 检查数据库中是否还有需要更新ETag的文件夹。 + */ + private boolean hasMoreMarkedFoldersInDb() { + Query query = Query.query(Criteria.where(Constants.NEEDS_ETAG_UPDATE_FIELD).is(true).and(Constants.IS_FOLDER).is(true)); + query.limit(1); // 只需要知道是否存在,不需要完整计数 + return mongoTemplate.exists(query, FileDocument.class); + } + + /** + * 当文件内容发生变化(上传新版本/修改)时调用。 + * 立即更新文件的ETag,并异步标记其父文件夹需要更新ETag。 + * + * @param file 发生变化的文件 + */ + private String updateFileEtagAndMarkParentAsync(String username, File file) { + try { + if (!FileUtil.exist(file) || !FileUtil.isFile(file)) { + return null; + } + String newEtag = HashUtil.sha256(file); + + String fileName = file.getName(); + String relativePath = getDbPath(username, file); + if (relativePath == null) { + return null; + } + String userId = userService.getUserIdByUserName(username); + Query query = getQueryByPath(userId, relativePath, fileName); + query.fields().include(Constants.ETAG); + FileDocument currentFileDoc = mongoTemplate.findOne(query, FileDocument.class); + String oldEtag = (currentFileDoc != null) ? currentFileDoc.getEtag() : null; + + if (!ObjectUtil.equals(newEtag, oldEtag)) { + Update update = new Update().set(Constants.ETAG, newEtag); + // 如果有版本控制字段,这里也应该更新 + mongoTemplate.updateFirst(query, update, FileDocument.class); + log.debug("File ETag updated for {}: {} -> {}", relativePath + fileName, oldEtag, newEtag); + + // 标记父文件夹需要更新ETag + markFolderForEtagUpdate(userId, relativePath); + } else { + log.debug("File ETag for {} did not change or calculation failed.", file.getAbsoluteFile()); + } + return newEtag; + } catch (Exception e) { + log.error("Error updating file ETag for {}: {}", file.getAbsoluteFile(), e.getMessage(), e); + } + return null; + } + + /** + * 获取改文件在数据库中的路径(PATH_FIELD)字段的值 + * + * @param username 用户名 + * @param physicalFile 文件 + */ + private String getDbPath(String username, File physicalFile) { + Path physicalPath = physicalFile.toPath(); + Path userRootPath = Paths.get(fileProperties.getRootDir(), username); + + if (!physicalPath.startsWith(userRootPath)) { + return null; + } + + Path relativeNioPath = userRootPath.relativize(physicalPath); + + if (relativeNioPath.toString().isEmpty()) { + return null; + } + + if (relativeNioPath.getNameCount() <= 1 || relativeNioPath.getParent() == null) { + return "/"; + } + return "/" + relativeNioPath.getParent().toString().replace(File.separatorChar, '/') + "/"; + } + + /** + * 当新文件夹创建或重命名时调用。 + * 立即设置新文件夹的初始ETag,并异步标记其父文件夹需要更新ETag。 + * + * @param username 用户名 + * @param physicalNewFolder 新创建的文件夹的完整路径 + */ + public void handleNewFolderCreationAsync(String username, File physicalNewFolder) { + if (!FileUtil.exist(physicalNewFolder) || !FileUtil.isDirectory(physicalNewFolder)) { + return; + } + String fileName = physicalNewFolder.getName(); + String relativePath = getDbPath(username, physicalNewFolder); + if (relativePath == null) { + return; + } + try { + String userId = userService.getUserIdByUserName(username); + + // 查询当前文件夹下是否有内容, 由于是异步处理,刚创建的文件夹可能还没来得及设置etag, 其下就有新文件了, 所有需要查询一次 + String currentFolderNormalizedPath = relativePath + fileName + "/"; + Query childrenQuery = Query.query(Criteria.where(Constants.PATH_FIELD).is(currentFolderNormalizedPath)); + childrenQuery.addCriteria(Criteria.where(IUserService.USER_ID).is(userId)); + boolean hasChildren = mongoTemplate.exists(childrenQuery, FileDocument.class); + if (!hasChildren) { + // 如果没有内容,则设置初始ETag + String initialEtag = HashUtil.sha256(EMPTY_FOLDER_ETAG_BASE_STRING); + Query query = getQueryByPath(userId, relativePath, fileName); + Update update = new Update().set(Constants.ETAG, initialEtag).set(Constants.NEEDS_ETAG_UPDATE_FIELD, false); + mongoTemplate.updateFirst(query, update, FileDocument.class); + log.info("Initial ETag set for new folder {}: {}", relativePath, initialEtag); + } + // 标记父文件夹需要更新ETag + markFolderForEtagUpdate(userService.getUserIdByUserName(username), relativePath); + } catch (DataAccessException e) { + log.error("Database error setting initial ETag for folder {}: {}", relativePath, e.getMessage(), e); + } + } + + /** + * 通过 userId 和 dbPath 还有filename 可获取到唯一的文件/文件夹 + * + * @param userId 用户id + * @param dbPath dbPath + * @param filename 文件名 + */ + private static Query getQueryByPath(String userId, String dbPath, String filename) { + Query query = Query.query(Criteria.where(IUserService.USER_ID).is(userId)); + query.addCriteria(Criteria.where(Constants.PATH_FIELD).is(dbPath)); + query.addCriteria(Criteria.where(Constants.FILENAME_FIELD).is(filename)); + return query; + } + + /** + * 当文件或文件夹被删除时调用。 + * 异步标记其原父文件夹需要更新ETag。 + * + * @param username 用户名 + * @param file 被删除的文件 + */ + public void handleItemDeletionAsync(String username, File file) { + log.debug("Handling ETag update for parent of deleted item: {}", file.getAbsoluteFile()); + String relativePath = getDbPath(username, file); + if (relativePath == null) { + return; + } + + // 标记父文件夹需要更新ETag + markFolderForEtagUpdate(userService.getUserIdByUserName(username), relativePath); + } + + /** + * 处理根目录下文件的ETag + */ + private void processRootFolderFiles() { + boolean run = true; + while (run) { + Query findQuery = Query.query(Criteria.where(Constants.ETAG).exists(false).and(Constants.IS_FOLDER).is(false).and(Constants.PATH_FIELD).is("/")).limit(16); + findQuery.fields().include(Constants.PATH_FIELD, Constants.FILENAME_FIELD, IUserService.USER_ID, Constants.ETAG); + long count = mongoTemplate.count(findQuery, FileDocument.class); + if (count == 0) { + run = false; + } + + // 获取根目录下所有的文件 + List tasks = mongoTemplate.find(findQuery, FileDocument.class); + + if (tasks.isEmpty()) { + continue; + } + log.debug("Found {} files marked for ETag update. Processing...", tasks.size()); + for (FileDocument fileDoc : tasks) { + String username = userService.getUserNameById(fileDoc.getUserId()); + Path path = Paths.get(fileProperties.getRootDir(), username, fileDoc.getPath(), fileDoc.getName()); + + if (Files.exists(path)) { + updateFileEtagAndMarkParentAsync(username, path.toFile()); + } + } + } + } + + /** + * 实际处理标记为需要更新ETag的文件夹的循环。 + * 此方法由 ensureProcessingMarkedFolders 提交的任务在 EtagWorker 线程中执行。 + * + * @param workerId 当前worker的唯一标识 + */ + private void processMarkedFoldersLoop(String workerId) { + boolean run = true; + while (run && !Thread.currentThread().isInterrupted()) { + Query findQuery = Query.query(Criteria.where(Constants.NEEDS_ETAG_UPDATE_FIELD).is(true).and(Constants.IS_FOLDER).is(true)).with(Sort.by(Sort.Direction.ASC, Constants.LAST_ETAG_UPDATE_REQUEST_AT_FIELD)).limit(16); + findQuery.fields().include(Constants.PATH_FIELD, Constants.FILENAME_FIELD, IUserService.USER_ID, Constants.ETAG, "_id"); + + + List tasks = mongoTemplate.find(findQuery, FileDocument.class); + + if (tasks.isEmpty()) { + run = false; + continue; + } + log.debug("[Worker {}] Found {} folders marked for ETag update. Processing...", workerId, tasks.size()); + + for (FileDocument folderDoc : tasks) { + if (Thread.currentThread().isInterrupted()) { + log.warn("[Worker {}] ETag processing loop was interrupted.", workerId); + run = false; // 尊重中断信号 + break; + } + + String folderPath = folderDoc.getPath(); + String docId = folderDoc.getId(); + String userId = folderDoc.getUserId(); + log.debug("[Worker {}] Processing ETag for folder: {} (ID: {})", workerId, folderPath, docId); + + try { + boolean etagActuallyChanged = calculateAndUpdateSingleFolderEtagInternal(folderDoc, workerId); + + Query clearMarkQuery = Query.query(Criteria.where("_id").is(docId)); + Update clearMarkUpdate = new Update().set(Constants.NEEDS_ETAG_UPDATE_FIELD, false).unset(Constants.ETAG_UPDATE_FAILED_ATTEMPTS_FIELD).unset(Constants.LAST_ETAG_UPDATE_ERROR_FIELD); + mongoTemplate.updateFirst(clearMarkQuery, clearMarkUpdate, FileDocument.class); + log.debug("[Worker {}] Cleared ETag update mark for folder: {}", workerId, folderPath + folderDoc.getName()); + + if (etagActuallyChanged) { + // 如果ETag变化了,标记其父文件夹 + markFolderForEtagUpdate(userId, folderPath); + } + } catch (Exception e) { + log.error("[Worker {}] Critical error processing ETag for folder {}: {}", workerId, folderPath, e.getMessage(), e); + handleProcessingError(docId, folderPath, e, workerId); + } + } + log.debug("[Worker {}] Finished processing batch of {} folders.", workerId, tasks.size()); + } + log.debug("[Worker {}] ETag processing loop finished or paused.", workerId); + } + + /** + * 标记指定文件夹需要ETag更新 + * + * @param userId 用户ID + * @param currentFolderPath 当前文件夹路径 + */ + private void markFolderForEtagUpdate(String userId, String currentFolderPath) { + String parentFolderPath = getParentDbPath(currentFolderPath); + if (parentFolderPath == null) { + return; + } + String folderName = Paths.get(currentFolderPath).getFileName().toString(); + Query query = getQueryByPath(userId, parentFolderPath, folderName); + Update update = new Update().set(Constants.NEEDS_ETAG_UPDATE_FIELD, true).currentDate(Constants.LAST_ETAG_UPDATE_REQUEST_AT_FIELD); + + try { + UpdateResult result = mongoTemplate.updateFirst(query, update, FileDocument.class); + if (result.getModifiedCount() > 0 || result.getMatchedCount() > 0) { // 即使已经是true也更新时间戳 + log.debug("Marked folder for ETag update: {}", currentFolderPath); + ensureProcessingMarkedFolders(); + } else { + log.debug("Folder not found to mark for ETag update: {}", currentFolderPath); + } + } catch (DataAccessException e) { + log.error("DB error marking folder for ETag update {}: {}", currentFolderPath, e.getMessage(), e); + } + } + + /** + * 内部方法:计算并更新单个文件夹的ETag。 + * 被 processMarkedFolders 调用。 + * + * @return true 如果ETag实际发生了变化并被更新 + */ + private boolean calculateAndUpdateSingleFolderEtagInternal(FileDocument folderDoc, String workerId) { + String folderPath = folderDoc.getPath(); + String oldEtag = folderDoc.getEtag(); + String userId = folderDoc.getUserId(); + String newCalculatedEtag; + + String currentFolderNormalizedPath = folderDoc.getPath() + folderDoc.getName() + "/"; + Query childrenQuery = Query.query(Criteria.where(Constants.PATH_FIELD).is(currentFolderNormalizedPath)); + childrenQuery.addCriteria(Criteria.where(IUserService.USER_ID).is(userId)); + childrenQuery.fields().include(Constants.FILENAME_FIELD).include(Constants.ETAG).include(Constants.IS_FOLDER).include(IUserService.USER_ID).include(Constants.PATH_FIELD); + List children = mongoTemplate.find(childrenQuery, FileDocument.class); + long folderSize = 0; + if (children.isEmpty()) { + newCalculatedEtag = HashUtil.sha256(EMPTY_FOLDER_ETAG_BASE_STRING); + } else { + List childRepresentations = children.stream().sorted(Comparator.comparing(FileDocument::getName)) // 按名称排序 + .map(child -> formatChildRepresentation(workerId, child)).toList(); + StringBuilder combinedRepresentation = new StringBuilder(); + for (String rep : childRepresentations) { + if (rep == null) { + return false; + } + if (!rep.isBlank()) { + combinedRepresentation.append(rep).append(";"); + } + } + newCalculatedEtag = HashUtil.sha256(combinedRepresentation.toString()); + + // 计算文件夹大小 + folderSize = getFolderSize(FileServiceImpl.COLLECTION_NAME, userId, currentFolderNormalizedPath); + } + + if (!newCalculatedEtag.equals(oldEtag)) { + Query updateQuery = Query.query(Criteria.where("_id").is(folderDoc.getId())); + // 如果使用乐观锁,这里也需要检查版本号 + // query.addCriteria(Criteria.where("_version").is(folderDoc.getVersion())); + Update update = new Update().set(Constants.ETAG, newCalculatedEtag); + // 更新文件夹大小 + update.set(Constants.SIZE, folderSize); + // update.inc("_version", 1); + UpdateResult result = mongoTemplate.updateFirst(updateQuery, update, FileDocument.class); + + if (result.getModifiedCount() > 0) { + log.debug("[Worker {}] Folder ETag updated for {}: {} -> {}", workerId, folderPath + folderDoc.getName(), oldEtag, newCalculatedEtag); + return true; + } else { + // 可能在计算和写入之间,该文档被其他worker处理了(如果ETag已更新为相同值)或版本冲突 + log.warn("[Worker {}] Folder ETag for {} was calculated as {} (old: {}), but DB update reported no modification. Possible race condition or already up-to-date.", workerId, folderPath, newCalculatedEtag, oldEtag); + return false; // 没有实际修改数据库 + } + } + log.debug("[Worker {}] Folder ETag for {} did not change (calculated: {}, current: {}).", workerId, folderPath, newCalculatedEtag, oldEtag); + return false; + } + + private void handleProcessingError(String docId, String folderPath, Exception e, String workerId) { + Query query = Query.query(Criteria.where("_id").is(docId)); + FileDocument failedDoc = mongoTemplate.findOne(query, FileDocument.class); + int attempts = (failedDoc != null && failedDoc.getEtagUpdateFailedAttempts() != null) ? failedDoc.getEtagUpdateFailedAttempts() + 1 : 1; + + Update update = new Update().set(Constants.LAST_ETAG_UPDATE_ERROR_FIELD, e.getMessage().substring(0, Math.min(e.getMessage().length(), 1000))) // 限制错误信息长度 + .set(Constants.ETAG_UPDATE_FAILED_ATTEMPTS_FIELD, attempts); + + if (attempts >= MAX_ETAG_UPDATE_ATTEMPTS) { + update.set(Constants.NEEDS_ETAG_UPDATE_FIELD, false); // 停止重试 + log.error("[Worker {}] Folder {} ETag update failed after {} attempts. Giving up.", workerId, folderPath, attempts); + } else { + // 可以选择让它下次被重新拾取 (needsEtagUpdate 保持 true) + log.warn("[Worker {}] Folder {} ETag update failed (attempt {}). Will retry.", workerId, folderPath, attempts); + } + mongoTemplate.updateFirst(query, update, FileDocument.class); + } + + private static String getParentDbPath(String currentFolderPath) { + if (CharSequenceUtil.isBlank(currentFolderPath) || currentFolderPath.equals("/")) { + return null; // 根目录没有父目录,或者已经是根 + } + // 确保路径以 "/" 开头和结尾 + if (!currentFolderPath.endsWith("/") || !currentFolderPath.startsWith("/")) { + return null; + } + + // 移除尾部的斜杠以便找到倒数第二个斜杠 + String pathWithoutTrailingSlash = currentFolderPath.substring(0, currentFolderPath.length() - 1); + int lastSlashIndex = pathWithoutTrailingSlash.lastIndexOf('/'); + + if (lastSlashIndex < 0) { // 例如 "folder/" 这种情况,父路径是 "/" + return "/"; + } + if (lastSlashIndex == 0) { // 例如 "/folder/", 父路径是 "/" + return "/"; + } + // 例如 "/A/B/", pathWithoutTrailingSlash = "/A/B", lastSlashIndex 在 A 后面 + // substring(0, lastSlashIndex + 1) 会得到 "/A/" + return pathWithoutTrailingSlash.substring(0, lastSlashIndex + 1); + } + + private String formatChildRepresentation(String workerId, FileDocument child) { + if (child.getEtag() == null) { + String username = userService.getUserNameById(child.getUserId()); + Path path = Paths.get(fileProperties.getRootDir(), username, child.getPath(), child.getName()); + if (Files.exists(path)) { + // 只对文件执行此操作 + if (!child.getIsFolder()) { + return updateFileEtagAndMarkParentAsync(username, path.toFile()); + } else { + // 子文件夹ETag为null,父文件夹本次计算中止 + return null; + } + } else { + log.warn("[Worker {}] File {} does not exist. Skipping.", workerId, path); + return ""; + } + } + return child.getName() + ":" + child.getEtag(); + } + + @PreDestroy + public void cleanup() { + if (executorMarkedFoldersService != null) { + executorMarkedFoldersService.shutdown(); + } + } + +} diff --git a/src/main/java/com/jmal/clouddisk/lucene/IndexStatus.java b/src/main/java/com/jmal/clouddisk/lucene/IndexStatus.java new file mode 100644 index 0000000..398556c --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/lucene/IndexStatus.java @@ -0,0 +1,29 @@ +package com.jmal.clouddisk.lucene; + +import lombok.Getter; + +/** + * 索引状态 + */ +@Getter +public enum IndexStatus { + /** + * 未索引,待索引 + */ + NOT_INDEX(0), + /** + * 正在进行索引 + */ + INDEXING(1), + /** + * 已完成索引 + */ + INDEXED(2); + + private final int status; + + IndexStatus(int status) { + this.status = status; + } + +} diff --git a/src/main/java/com/jmal/clouddisk/lucene/LuceneConfig.java b/src/main/java/com/jmal/clouddisk/lucene/LuceneConfig.java new file mode 100644 index 0000000..9665aa1 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/lucene/LuceneConfig.java @@ -0,0 +1,192 @@ +package com.jmal.clouddisk.lucene; + +import com.jmal.clouddisk.config.FileProperties; +import jakarta.annotation.PreDestroy; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.apache.lucene.analysis.Analyzer; +import org.apache.lucene.analysis.LowerCaseFilter; +import org.apache.lucene.analysis.TokenStream; +import org.apache.lucene.analysis.Tokenizer; +import org.apache.lucene.analysis.cn.smart.SmartChineseAnalyzer; +import org.apache.lucene.analysis.core.KeywordTokenizer; +import org.apache.lucene.analysis.miscellaneous.PerFieldAnalyzerWrapper; +import org.apache.lucene.analysis.ngram.NGramTokenFilter; +import org.apache.lucene.index.IndexWriter; +import org.apache.lucene.index.IndexWriterConfig; +import org.apache.lucene.search.ControlledRealTimeReopenThread; +import org.apache.lucene.search.IndexSearcher; +import org.apache.lucene.search.SearcherFactory; +import org.apache.lucene.search.SearcherManager; +import org.apache.lucene.store.Directory; +import org.apache.lucene.store.FSDirectory; +import org.springframework.beans.factory.annotation.Qualifier; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +import java.io.IOException; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.HashMap; +import java.util.Map; + +/** + * @author jmal + * @Description Lucene Config + * @Date 2021/4/27 4:09 下午 + */ +@Configuration +@RequiredArgsConstructor +@Slf4j +public class LuceneConfig { + + private final FileProperties fileProperties; + + private ControlledRealTimeReopenThread controlledRealTimeReopenThread; + private IndexWriter indexWriterInstance; // 用于存储 IndexWriter Bean 的实例 + private SearcherManager searcherManagerInstance; // 用于存储 SearcherManager Bean 的实例 + + public static final boolean IGNORE_CASE_FOR_NGRAM = true; // 是否忽略大小写 (可调) + + /** + * 创建一个 Analyzer 实例 + */ + @Bean + public Analyzer analyzer() { + return new SmartChineseAnalyzer(); + } + + private Path getIndexDir() { + return Paths.get(fileProperties.getRootDir(), fileProperties.getLuceneIndexDir()); + } + + /** + * 索引位置 + */ + @Bean + public Directory luceneDirectory() throws IOException { + return FSDirectory.open(getIndexDir()); + } + + /** + * 创建一个用于精确子串匹配的 N-Gram Analyzer 实例 + * 策略: KeywordTokenizer -> LowerCaseFilter (可选) -> NGramTokenFilter + */ + @Bean("ngramAnalyzer") // 给它一个不同的名字,以便注入 + public Analyzer ngramAnalyzer() { + return new Analyzer() { + @Override + protected TokenStreamComponents createComponents(String fieldName) { + Tokenizer tokenizer = new KeywordTokenizer(); // 将整个代码段视为一个token + TokenStream stream = tokenizer; + + if (IGNORE_CASE_FOR_NGRAM) { + stream = new LowerCaseFilter(stream); // 转换为小写 + } + + // 从这个 (可能已小写的) 大 Token 中生成 N-Grams + stream = new NGramTokenFilter(stream, fileProperties.getNgramMinSize(), fileProperties.getNgramMaxSize(), false); + + return new TokenStreamComponents(tokenizer, stream); + } + }; + } + + /** + * 创建一个用于处理精确子串查询词的 Analyzer 实例 + * 策略: KeywordTokenizer -> LowerCaseFilter (可选) + * 查询词不应该被N-Gram分解 + */ + @Bean("keywordLowercaseAnalyzer") + public Analyzer keywordLowercaseAnalyzer() { + return new Analyzer() { + @Override + protected TokenStreamComponents createComponents(String fieldName) { + Tokenizer tokenizer = new KeywordTokenizer(); + TokenStream stream = tokenizer; + if (IGNORE_CASE_FOR_NGRAM) { // 与 ngramAnalyzer 的大小写策略保持一致 + stream = new LowerCaseFilter(stream); + } + return new TokenStreamComponents(tokenizer, stream); + } + }; + } + + @Bean + public IndexWriter indexWriter(Directory directory, Analyzer analyzer, // 注入默认的 SmartChineseAnalyzer (确保bean名为 "analyzer") + @Qualifier("ngramAnalyzer") Analyzer ngramAnalyzer // 注入 ngramAnalyzer + ) throws IOException { + Map analyzerPerField = new HashMap<>(); + analyzerPerField.put(LuceneService.FIELD_CONTENT_NGRAM, ngramAnalyzer); + analyzerPerField.put(LuceneService.FIELD_FILENAME_NGRAM, ngramAnalyzer); + analyzerPerField.put(LuceneService.FIELD_TAG_NAME_NGRAM, ngramAnalyzer); + // 如果其他字段也需要特定分析器,在这里添加 + + // PerFieldAnalyzerWrapper 允许为特定字段指定分析器,其他字段使用默认分析器 + PerFieldAnalyzerWrapper wrapperAnalyzer = new PerFieldAnalyzerWrapper(analyzer, analyzerPerField); + + IndexWriterConfig indexWriterConfig = new IndexWriterConfig(wrapperAnalyzer); + indexWriterConfig.setOpenMode(IndexWriterConfig.OpenMode.CREATE_OR_APPEND); + this.indexWriterInstance = new IndexWriter(directory, indexWriterConfig); + return this.indexWriterInstance; + } + + /** + * SearcherManager管理 + * + * @return SearcherManager + */ + @Bean + public SearcherManager searcherManager(IndexWriter indexWriter) throws IOException { + this.searcherManagerInstance = new SearcherManager(indexWriter, false, false, new SearcherFactory()); + controlledRealTimeReopenThread = new ControlledRealTimeReopenThread<>(indexWriter, searcherManagerInstance, + 5.0, 0.025); + controlledRealTimeReopenThread.setDaemon(true); + //线程名称 + controlledRealTimeReopenThread.setName("NRTReopenThread"); + // 开启线程 + controlledRealTimeReopenThread.start(); + return searcherManagerInstance; + } + + @PreDestroy + public void destroy() { + log.info("Shutting down Lucene components..."); + + // 1. 关闭 NRT Reopen 线程 (它会尝试关闭 SearcherManager) + if (this.controlledRealTimeReopenThread != null) { + try { + log.debug("Closing ControlledRealTimeReopenThread..."); + this.controlledRealTimeReopenThread.close(); // 这个close()会等待线程结束 + log.info("ControlledRealTimeReopenThread closed."); + } catch (Exception e) { // InterruptedException or IOException + log.error("Error closing ControlledRealTimeReopenThread: {}", e.getMessage(), e); + } + } + + // 2. SearcherManager 可能已经被 cRTReopenThead 关闭,但作为保险再检查一次 + // 实际上,SearcherManager.close() 也会关闭它内部的 IndexReader, + // 但通常不会关闭外部传入的 IndexWriter。 + if (this.searcherManagerInstance != null) { + // SearcherManager 的 close() 通常由 cRTReopenThead.close() 间接触发, + // 但如果 cRTReopenThead 未成功初始化或启动,这里可以作为后备。 + // 然而,重复关闭可能导致问题,所以最好依赖 cRTReopenThead 的关闭。 + // 如果 cRTReopenThead.close() 确保了 SearcherManager 关闭,这里可以不显式调用。 + log.debug("SearcherManager should have been closed by NRTReopenThread."); + } + + // 3. 最重要:关闭 IndexWriter + // 这会提交任何挂起的更改,释放写锁,并关闭文件句柄。 + if (this.indexWriterInstance != null && this.indexWriterInstance.isOpen()) { + try { + log.info("Closing IndexWriter..."); + this.indexWriterInstance.close(); + log.info("IndexWriter closed."); + } catch (IOException e) { + log.error("Error closing IndexWriter: {}", e.getMessage(), e); + } + } + log.info("Lucene components shutdown complete."); + } +} + diff --git a/src/main/java/com/jmal/clouddisk/lucene/LuceneService.java b/src/main/java/com/jmal/clouddisk/lucene/LuceneService.java new file mode 100644 index 0000000..6a08e6e --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/lucene/LuceneService.java @@ -0,0 +1,698 @@ +package com.jmal.clouddisk.lucene; + +import cn.hutool.core.io.CharsetDetector; +import cn.hutool.core.io.FileTypeUtil; +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.core.thread.ThreadUtil; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.model.FileIndex; +import com.jmal.clouddisk.model.FileIntroVO; +import com.jmal.clouddisk.model.Tag; +import com.jmal.clouddisk.service.Constants; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.service.impl.CommonFileService; +import com.jmal.clouddisk.util.FileContentTypeUtils; +import com.jmal.clouddisk.util.HashUtil; +import com.jmal.clouddisk.util.MyFileUtils; +import com.mongodb.client.AggregateIterable; +import jakarta.annotation.PostConstruct; +import jakarta.annotation.PreDestroy; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.apache.lucene.document.*; +import org.apache.lucene.index.IndexWriter; +import org.apache.lucene.index.Term; +import org.mozilla.universalchardet.UniversalDetector; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.data.mongodb.core.query.Update; +import org.springframework.stereotype.Service; + +import java.io.*; +import java.nio.charset.Charset; +import java.nio.charset.StandardCharsets; +import java.nio.charset.UnsupportedCharsetException; +import java.nio.file.Files; +import java.nio.file.Paths; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.concurrent.*; +import java.util.concurrent.atomic.AtomicBoolean; + +import static com.jmal.clouddisk.service.impl.CommonFileService.COLLECTION_NAME; + +/** + * @author jmal + *

+ * 优化索引 + * indexWriter.forceMerge(1); + * indexWriter.commit(); + * @Description LuceneService + * @Date 2021/4/27 4:44 下午 + */ +@Service +@Slf4j +@RequiredArgsConstructor +public class LuceneService { + + private final FileProperties fileProperties; + private final MongoTemplate mongoTemplate; + private final IndexWriter indexWriter; + private final IUserService userService; + private final ReadContentService readContentService; + private final RebuildIndexTaskService rebuildIndexTaskService; + private final SearchFileService searchFileService; + private final EtagService esTagService; + + public static final String MONGO_INDEX_FIELD = "index"; + + /** + * 创建索引线程池 + */ + private ExecutorService executorCreateIndexService; + /** + * 更新索引内容线程池 + */ + private ExecutorService executorUpdateContentIndexService; + /** + * 更新大文件索引内容线程池 + */ + private ExecutorService executorUpdateBigContentIndexService; + + /** + * 定时任务线程池 + */ + ScheduledExecutorService scheduler; + + /** + * 新建索引文件缓冲队列大小 + */ + private static final int CREATE_INDEX_QUEUE_SIZE = 40960; + + /** + * 新建索引文件缓冲队列 + */ + private ArrayBlockingQueue indexFileQueue; + + /** + * 新建索引文件内容缓冲队列 + */ + private ArrayBlockingQueue indexFileContentQueue; + + private final AtomicBoolean processingUnIndexedScheduled = new AtomicBoolean(false); + + public static final String FIELD_CONTENT_NGRAM = "content_ngram"; + public static final String FIELD_FILENAME_NGRAM = "filename_ngram"; + public static final String FIELD_TAG_NAME_NGRAM = "tagName_ngram"; + + public static final String FIELD_CONTENT_FUZZY = "content"; + public static final String FIELD_FILENAME_FUZZY = "filename"; + public static final String FIELD_TAG_NAME_FUZZY = "tagName"; + + // 定义分段大小 + private static final int CHUNK_SIZE_CHARS = 1024; // 例如,每 1KB 左右一个块,或者按行数 + private static final int CHUNK_OVERLAP_CHARS = 7; // 段落间的重叠字符数,防止边界切割问题 (NGramTokenFilter本身可能处理部分边界,但显式重叠更保险) + + public static final int BYTES_PER_MB = 1024 * 1024; + private static final long MEMORY_PER_SMALL_THREAD_MB = 500; + private static final long MEMORY_PER_BIG_THREAD_MB = 4096; + + @PostConstruct + public void init() { + if (executorCreateIndexService == null) { + int processors = Runtime.getRuntime().availableProcessors() - 2; + executorCreateIndexService = ThreadUtil.newFixedExecutor(Math.max(processors, 3), 100, "createIndexFileTask", true); + } + // 获取jvm可用内存 + long maxMemory = Runtime.getRuntime().maxMemory(); + if (executorUpdateContentIndexService == null) { + // 获取可用处理器数量 + int smallProcessors = Runtime.getRuntime().availableProcessors() - 3; + // 设置线程数, 假设每个线程占用内存为500M + int maxSmallProcessors = Math.toIntExact((maxMemory / BYTES_PER_MB) / MEMORY_PER_SMALL_THREAD_MB); + if (smallProcessors > maxSmallProcessors) { + smallProcessors = maxSmallProcessors; + } + smallProcessors = Math.max(smallProcessors, 1); + executorUpdateContentIndexService = ThreadUtil.newFixedExecutor(smallProcessors, 20, "updateContentIndexTask", true); + } + if (executorUpdateBigContentIndexService == null) { + // 设置线程数, 假设每个线程占用内存为4G + int bigProcessors = Math.toIntExact((maxMemory / BYTES_PER_MB) / MEMORY_PER_BIG_THREAD_MB); + bigProcessors = Math.max(bigProcessors, 1); + executorUpdateBigContentIndexService = ThreadUtil.newFixedExecutor(bigProcessors, 100, "updateBigContentIndexTask", true); + } + log.info("NGRAM_MAX_CONTENT_LENGTH_MB:{}, NGRAM_MIN_SIZE: {}, ngramMaxSize: {}", fileProperties.getNgramMaxContentLengthMB(), fileProperties.getNgramMinSize(), fileProperties.getNgramMaxSize()); + } + + /** + * 推送至新建索引文件缓存队列 + * + * @param fileId fileId + */ + public void pushCreateIndexQueue(String fileId) { + if (CharSequenceUtil.isBlank(fileId)) { + return; + } + try { + getIndexFileQueue().put(fileId); + } catch (InterruptedException e) { + log.error("推送新建索引队列失败, fileId: {}, {}", fileId, e.getMessage(), e); + Thread.currentThread().interrupt(); + } + } + + /** + * 推送至新建索引文件缓存队列 + * + * @param fileId fileId + */ + public void pushCreateIndexContentQueue(String fileId) { + if (CharSequenceUtil.isBlank(fileId)) { + return; + } + try { + getIndexFileContentQueue().put(fileId); + } catch (InterruptedException e) { + log.error("推送新建索引内容队列失败, fileId: {}, {}", fileId, e.getMessage(), e); + Thread.currentThread().interrupt(); + } + } + + private ArrayBlockingQueue getIndexFileQueue() { + if (indexFileQueue == null) { + indexFileQueue = new ArrayBlockingQueue<>(CREATE_INDEX_QUEUE_SIZE); + if (scheduler == null) { + scheduler = new ScheduledThreadPoolExecutor(1, ThreadUtil.createThreadFactory("luceneScheduler")); + } + createIndexFileTask(); + } + return indexFileQueue; + } + + private ArrayBlockingQueue getIndexFileContentQueue() { + if (indexFileContentQueue == null) { + indexFileContentQueue = new ArrayBlockingQueue<>(CREATE_INDEX_QUEUE_SIZE); + } + return indexFileContentQueue; + } + + /** + * 新建索引文件任务 + */ + private void createIndexFileTask() { + getIndexFileQueue(); + getIndexFileContentQueue(); + scheduler.scheduleAtFixedRate(() -> { + try { + List fileIdList = new ArrayList<>(indexFileQueue.size()); + List toBeIndexedFileIdList = new ArrayList<>(indexFileContentQueue.size()); + executorCreateIndexService.execute(() -> { + // 添加待索引标记 + indexFileContentQueue.drainTo(toBeIndexedFileIdList); + addToBeIndexedFlagOfDoc(toBeIndexedFileIdList); + + // 添加不带文件内容的索引 + indexFileQueue.drainTo(fileIdList); + if (!fileIdList.isEmpty()) { + createIndexFiles(fileIdList); + } + }); + // 更新任务进度 + rebuildIndexTaskService.updateTaskProgress(); + } catch (Exception e) { + log.error("创建索引失败", e); + } + }, 0, 1000, TimeUnit.MILLISECONDS); + } + + /** + * 创建索引 + * + * @param fileIdList fileIdList + */ + private void createIndexFiles(List fileIdList) { + // 提取出fileIdList + List fileIntroVOList = searchFileService.getFileIntroVOs(fileIdList); + for (FileIntroVO fileIntroVO : fileIntroVOList) { + rebuildIndexTaskService.incrementNotIndexTaskSize(); + updateIndex(false, fileIntroVO); + } + rebuildIndexTaskService.removeDeletedFlag(fileIdList); + } + + private void updateIndex(boolean readContent, FileIntroVO fileIntroVO) { + try { + File file = getFileByFileIntroVO(fileIntroVO); + boolean isContent = checkFileContent(file); + if (!readContent && isContent) { + pushCreateIndexContentQueue(fileIntroVO.getId()); + } + if (!readContent && !isContent) { + rebuildIndexTaskService.incrementIndexedTaskSize(); + } + FileIndex fileIndex = new FileIndex(file, fileIntroVO); + fileIndex.setTagName(getTagName(fileIntroVO)); + setFileIndex(fileIndex); + if (readContent) { + String sha256 = HashUtil.sha256(file); + try (StringWriter contentWriter = new StringWriter()) { + readFileContent(file, fileIntroVO.getId(), contentWriter); + String fullContent = contentWriter.toString(); + + if (CharSequenceUtil.isBlank(fullContent)) { + updateIndexStatus(fileIntroVO, IndexStatus.INDEXED); + return; + } + // 调用改造后的 updateIndexDocument + updateIndexDocument(indexWriter, fileIndex, fullContent, fileIndex.getFileIndexHash(sha256)); + startProcessFilesToBeIndexed(); + } + } else { + updateIndexDocument(indexWriter, fileIndex, null, fileIndex.getFileIndexHash(null)); + } + log.debug("添加索引, filepath: {}", file.getAbsoluteFile()); + } catch (Exception e) { + log.warn("updateIndexError: {}", e.getMessage(), e); + } finally { + updateIndexStatus(fileIntroVO, IndexStatus.INDEXED); + if (readContent) { + rebuildIndexTaskService.incrementIndexedTaskSize(); + } + } + } + + /** + * 更新索引状态 + * + * @param fileIntroVO fileIntroVO + * @param indexStatus IndexStatus + */ + private void updateIndexStatus(FileIntroVO fileIntroVO, IndexStatus indexStatus) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(fileIntroVO.getId())); + Update update = new Update(); + update.set(MONGO_INDEX_FIELD, indexStatus.getStatus()); + mongoTemplate.updateFirst(query, update, COLLECTION_NAME); + + // set etag + String username = userService.getUserNameById(fileIntroVO.getUserId()); + esTagService.updateFileEtagAsync(username, getFileByFileIntroVO(fileIntroVO)); + } + + private File getFileByFileIntroVO(FileIntroVO fileIntroVO) { + String username = userService.getUserNameById(fileIntroVO.getUserId()); + return Paths.get(fileProperties.getRootDir(), username, fileIntroVO.getPath(), fileIntroVO.getName()).toFile(); + } + + private String getTagName(FileIntroVO fileIntroVO) { + if (fileIntroVO != null && fileIntroVO.getTags() != null && !fileIntroVO.getTags().isEmpty()) { + return fileIntroVO.getTags().stream().map(Tag::getName).reduce((a, b) -> a + " " + b).orElse(""); + } + return null; + } + + /** + * 构建FileIndex + * + * @param fileIndex FileIndex + */ + public void setFileIndex(FileIndex fileIndex) { + File file = fileIndex.getFile(); + if (!FileUtil.exist(fileIndex.getFile())) { + return; + } + fileIndex.setIsFolder(file.isDirectory()); + fileIndex.setName(file.getName()); + try { + fileIndex.setModified(Files.getLastModifiedTime(file.toPath()).toMillis()); + } catch (IOException e) { + log.error("获取文件修改时间失败, file: {}, {}", file.getAbsolutePath(), e.getMessage(), e); + } + fileIndex.setSize(file.length()); + setType(file, fileIndex); + } + + private void setType(File file, FileIndex fileIndex) { + String fileName = file.getName(); + String suffix = MyFileUtils.extName(fileName); + fileIndex.setType(Constants.OTHER); + if (CharSequenceUtil.isBlank(suffix)) { + fileIndex.setType(Constants.OTHER); + return; + } + String contentType = FileContentTypeUtils.getContentType(suffix); + if (CharSequenceUtil.isBlank(contentType)) { + fileIndex.setType(Constants.OTHER); + return; + } + if (contentType.startsWith(Constants.CONTENT_TYPE_IMAGE)) { + fileIndex.setType(Constants.CONTENT_TYPE_IMAGE); + } + if (contentType.startsWith(Constants.VIDEO)) { + fileIndex.setType(Constants.VIDEO); + } + if (contentType.startsWith(Constants.AUDIO)) { + fileIndex.setType(Constants.AUDIO); + } + if (fileProperties.getDocument().contains(suffix)) { + fileIndex.setType(Constants.DOCUMENT); + } + } + + private void readFileContent(File file, String fileId, Writer writer) { + String charset = null; + try { + if (file == null || !file.isFile() || file.length() < 1) { + return; + } + String type = FileTypeUtil.getType(file).toLowerCase(); + switch (type) { + case "pdf" -> readContentService.readPdfContent(file, fileId, writer); + case "dwg" -> readContentService.dwg2mxweb(file, fileId); + case "epub" -> readContentService.readEpubContent(file, fileId, writer); + case "ppt", "pptx" -> readContentService.readPPTContent(file, writer); + case "doc", "docx" -> readContentService.readWordContent(file, writer); + case "xls", "xlsx" -> readContentService.readExcelContent(file, writer); + default -> { + if (fileProperties.getSimText().contains(type)) { + charset = UniversalDetector.detectCharset(file); + if (CharSequenceUtil.isBlank(charset)) { + charset = String.valueOf(CharsetDetector.detect(file, StandardCharsets.UTF_8)); + } + if (CharSequenceUtil.isBlank(charset)) { + return; + } + // 对于纯文本,可以流式读取 + try (Reader reader = new InputStreamReader(new FileInputStream(file), Charset.forName(charset))) { + reader.transferTo(writer); + } + } else { + String contentType = CommonFileService.getContentType(file, FileContentTypeUtils.getContentType(file, MyFileUtils.extName(file.getName()))); + if (contentType.contains("charset=utf-8")) { + try (Reader reader = new InputStreamReader(new FileInputStream(file), StandardCharsets.UTF_8)) { + reader.transferTo(writer); + } + } + } + } + } + } catch (UnsupportedCharsetException unsupportedCharsetException) { + log.warn("不支持的字符集, charset: {}, file: {}, {}", file.getAbsolutePath(), charset, unsupportedCharsetException.getMessage()); + } catch (Exception e) { + log.error("读取文件内容失败, file: {}, {}", file.getAbsolutePath(), e.getMessage(), e); + } + } + + private boolean checkFileContent(File file) { + try { + if (file == null) { + return false; + } + if (!file.isFile() || file.length() < 1) { + return false; + } + String type = FileTypeUtil.getType(file).toLowerCase(); + if (MyFileUtils.hasContentFile(type)) { + return true; + } + if (fileProperties.getSimText().contains(type)) { + return true; + } + return MyFileUtils.hasCharset(file); + } catch (Exception e) { + return false; + } + } + + + public void deleteIndexDocuments(List fileIds) { + try { + for (String fileId : fileIds) { + Term term = new Term("id", fileId); + indexWriter.deleteDocuments(term); + } + indexWriter.commit(); + } catch (IOException e) { + log.error("删除索引失败, fileIds: {}, {}", fileIds, e.getMessage(), e); + } + } + + /** + * 添加/更新索引 + * + * @param indexWriter indexWriter + * @param fileIndex FileIndex + * @param fullContent fullContent + * @param fileIndexHash fileIndexHash 唯一索引标识 + */ + public void updateIndexDocument(IndexWriter indexWriter, FileIndex fileIndex, String fullContent, String fileIndexHash) { + String fileId = fileIndex.getFileId(); + try { + if (searchFileService.existsSha256(fileIndexHash)) { + return; + } + String fileName = (fileIndex.getName() == null ? "" : fileIndex.getName()) + " " + fileIndex.getRemark(); + String tagName = fileIndex.getTagName(); + Boolean isFolder = fileIndex.getIsFolder(); + Boolean isFavorite = fileIndex.getIsFavorite(); + String path = fileIndex.getPath(); + Document newDocument = new Document(); + newDocument.add(new StringField("id", fileId, Field.Store.YES)); + newDocument.add(new StringField(IUserService.USER_ID, fileIndex.getUserId(), Field.Store.NO)); + + newDocument.add(new StringField(Constants.ETAG, fileIndexHash, Field.Store.NO)); + + if (fileIndex.getType() != null) { + newDocument.add(new StringField("type", fileIndex.getType(), Field.Store.NO)); + } + if (CharSequenceUtil.isNotBlank(fileName)) { + newDocument.add(new Field(FIELD_FILENAME_NGRAM, fileName, TextField.TYPE_NOT_STORED)); + newDocument.add(new TextField(FIELD_FILENAME_FUZZY, fileName, Field.Store.NO)); + } + if (isFolder != null) { + newDocument.add(new IntPoint(Constants.IS_FOLDER, isFolder ? 1 : 0)); + } + if (isFavorite != null) { + newDocument.add(new IntPoint(Constants.IS_FAVORITE, isFavorite ? 1 : 0)); + } + if (path != null) { + newDocument.add(new StringField(Constants.PATH_FIELD, path, Field.Store.NO)); + } + if (CharSequenceUtil.isNotBlank(tagName)) { + newDocument.add(new Field(FIELD_TAG_NAME_NGRAM, tagName, TextField.TYPE_NOT_STORED)); + newDocument.add(new TextField(FIELD_TAG_NAME_FUZZY, tagName, Field.Store.NO)); + } + if (CharSequenceUtil.isNotBlank(fullContent)) { + newDocument.add(new TextField(FIELD_CONTENT_FUZZY, fullContent, Field.Store.NO)); + } + if (CharSequenceUtil.isNotBlank(fullContent) && fileProperties.getExactSearch()) { + String contentForNgram; + // 将完整内容字符串转换为内存中的输入流 + try (InputStream contentStream = new ByteArrayInputStream(fullContent.getBytes(StandardCharsets.UTF_8))) { + // 调用内存高效的流式截断方法 + contentForNgram = getContentForNgram(contentStream, fileIndex); + } catch (IOException e) { + log.error("Error creating ByteArrayInputStream: {}", e.getMessage(), e); + return; + } + + if (CharSequenceUtil.isNotBlank(contentForNgram)) { + List chunks = segmentContent(contentForNgram); + for (String chunk : chunks) { + if (CharSequenceUtil.isNotBlank(chunk)) { + newDocument.add(new Field(FIELD_CONTENT_NGRAM, chunk, TextField.TYPE_NOT_STORED)); + } + } + } + } + + if (fileIndex.getModified() != null) { + newDocument.add(new NumericDocValuesField("modified", fileIndex.getModified())); + } + if (fileIndex.getSize() != null) { + newDocument.add(new NumericDocValuesField("size", fileIndex.getSize())); + } + indexWriter.updateDocument(new Term("id", fileId), newDocument); + } catch (IOException e) { + log.error("更新索引失败, fileId: {}, {}", fileId, e.getMessage(), e); + } + } + + /** + * 从输入流中高效地截取用于N-Gram的内容,避免OOM。 + * + * @param contentStream 内容的输入流 + * @param fileIndex 文件元数据,用于日志记录 + * @return 截断后的UTF-8字符串 + * @throws IOException 读取流异常 + */ + private String getContentForNgram(InputStream contentStream, FileIndex fileIndex) throws IOException { + int maxContentLengthInBytes = fileProperties.getNgramMaxContentLength(); + byte[] buffer = new byte[8192]; // 8KB的读取缓冲区 + int bytesRead; + + // 使用 ByteArrayOutputStream 来存储截取的结果 + try (ByteArrayOutputStream baos = new ByteArrayOutputStream(maxContentLengthInBytes)) { + while ((bytesRead = contentStream.read(buffer)) != -1) { + int remainingCapacity = maxContentLengthInBytes - baos.size(); + if (bytesRead > remainingCapacity) { + baos.write(buffer, 0, remainingCapacity); + log.warn("内容已截断以进行N-Gram索引(截断至 {} 字节), 文件大小: {}MB 文件: {}", maxContentLengthInBytes, fileIndex.getSize() / BYTES_PER_MB, Paths.get(fileIndex.getPath(), fileIndex.getName())); + break; // 已达到上限 + } + baos.write(buffer, 0, bytesRead); + } + + byte[] contentBytes = baos.toByteArray(); + + // 进行UTF-8字符边界检查,防止乱码 + int effectiveLength = contentBytes.length; + while (effectiveLength > 0 && (contentBytes[effectiveLength - 1] & 0xC0) == 0x80) { + effectiveLength--; + } + + if (effectiveLength == 0) { + return ""; + } + + return new String(contentBytes, 0, effectiveLength, StandardCharsets.UTF_8); + } + } + + private List segmentContent(String content) { + List chunks = new ArrayList<>(); + if (content == null || content.isEmpty()) { + return chunks; + } + int length = content.length(); + if (length <= CHUNK_SIZE_CHARS) { // 如果内容本身小于或等于块大小,则作为一个块 + chunks.add(content); + return chunks; + } + + // 确保步进大于0 + int step = CHUNK_SIZE_CHARS - CHUNK_OVERLAP_CHARS; + + for (int i = 0; i < length; i += step) { + int end = Math.min(i + CHUNK_SIZE_CHARS, length); + chunks.add(content.substring(i, end)); + if (end == length) { + break; // 已到达内容末尾 + } + } + return chunks; + } + + public FileIntroVO getFileIntroVO(String fileId) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(fileId)); + query.fields().include("id", "name", "userId", "path", "isFolder", "isFavorite", "remark", "tags", "etag", "size"); + return mongoTemplate.findOne(query, FileIntroVO.class, COLLECTION_NAME); + } + + /** + * 添加待索引标记 + */ + private void addToBeIndexedFlagOfDoc(List fielIdList) { + if (fielIdList.isEmpty()) { + return; + } + Query query = new Query(); + query.addCriteria(Criteria.where("_id").in(fielIdList)); + Update update = new Update(); + update.set(MONGO_INDEX_FIELD, IndexStatus.NOT_INDEX.getStatus()); + mongoTemplate.updateMulti(query, update, COLLECTION_NAME); + // 添加待索引标记 + startProcessFilesToBeIndexed(); + } + + /** + * 处理待索引文件 + */ + public void processFilesToBeIndexed() throws IOException { + boolean run = true; + log.debug("开始处理待索引文件"); + while (run) { + if (!hasUnIndexFile()) { + log.debug("待索引文件处理完成"); + rebuildIndexTaskService.rebuildingIndexCompleted(); + indexWriter.commit(); + run = false; + } + List pipeline = Arrays.asList(new org.bson.Document("$match", new org.bson.Document(MONGO_INDEX_FIELD, IndexStatus.NOT_INDEX.getStatus())), new org.bson.Document("$project", new org.bson.Document("_id", 1)), new org.bson.Document("$limit", 8)); + AggregateIterable aggregateIterable = mongoTemplate.getCollection(COLLECTION_NAME).aggregate(pipeline); + for (org.bson.Document document : aggregateIterable) { + String fileId = document.getObjectId("_id").toHexString(); + FileIntroVO fileIntroVO = getFileIntroVO(fileId); + if (fileIntroVO != null) { + // 处理待索引文件 + updateIndexStatus(fileIntroVO, IndexStatus.INDEXING); + processFileThreaded(fileIntroVO); + } + } + } + } + + /** + * 是否存在待索引文件 + */ + private boolean hasUnIndexFile() { + Query query = new Query(); + query.addCriteria(Criteria.where(MONGO_INDEX_FIELD).is(IndexStatus.NOT_INDEX.getStatus())); + long count = mongoTemplate.count(query, COLLECTION_NAME); + return count > 0; + } + + private void processFileThreaded(FileIntroVO fileIntroVO) { + long size = fileIntroVO.getSize(); + + if (RebuildIndexTaskService.isSyncFile()) { + // 单线程处理 + updateIndex(true, fileIntroVO); + } else { + // 根据文件大小选择多线程处理 + if (size > 10 * 1024 * 1024) { + // 大文件,使用特定线程池处理 + executorUpdateBigContentIndexService.execute(() -> updateIndex(true, fileIntroVO)); + } else { + // 小文件,使用普通线程池处理 + executorUpdateContentIndexService.execute(() -> updateIndex(true, fileIntroVO)); + } + } + } + + private void startProcessFilesToBeIndexed() { + if (processingUnIndexedScheduled.compareAndSet(false, true)) { + executorCreateIndexService.execute(() -> { + try { + processFilesToBeIndexed(); + } catch (IOException e) { + log.error("处理待索引文件内容失败", e); + } finally { + processingUnIndexedScheduled.set(false); + } + }); + } + } + + @PreDestroy + public void destroy() { + if (executorCreateIndexService != null) { + executorCreateIndexService.shutdown(); + } + if (executorUpdateContentIndexService != null) { + executorUpdateContentIndexService.shutdown(); + } + if (executorUpdateBigContentIndexService != null) { + executorUpdateBigContentIndexService.shutdown(); + } + if (scheduler != null) { + scheduler.shutdown(); + } + } + +} diff --git a/src/main/java/com/jmal/clouddisk/lucene/ReadContentService.java b/src/main/java/com/jmal/clouddisk/lucene/ReadContentService.java new file mode 100644 index 0000000..c6ccc37 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/lucene/ReadContentService.java @@ -0,0 +1,326 @@ +package com.jmal.clouddisk.lucene; + +import cn.hutool.core.text.CharSequenceUtil; +import com.jmal.clouddisk.media.VideoProcessService; +import com.jmal.clouddisk.ocr.OcrService; +import com.jmal.clouddisk.service.Constants; +import com.jmal.clouddisk.service.impl.CommonFileService; +import com.jmal.clouddisk.util.FileContentUtil; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import nl.siegmann.epublib.domain.Book; +import nl.siegmann.epublib.domain.Resource; +import nl.siegmann.epublib.domain.Spine; +import nl.siegmann.epublib.epub.EpubReader; +import org.apache.pdfbox.Loader; +import org.apache.pdfbox.cos.COSName; +import org.apache.pdfbox.io.RandomAccessReadBufferedFile; +import org.apache.pdfbox.pdmodel.PDDocument; +import org.apache.pdfbox.pdmodel.PDPage; +import org.apache.pdfbox.pdmodel.PDResources; +import org.apache.pdfbox.pdmodel.graphics.PDXObject; +import org.apache.pdfbox.pdmodel.graphics.image.PDImageXObject; +import org.apache.pdfbox.rendering.PDFRenderer; +import org.apache.pdfbox.text.PDFTextStripper; +import org.apache.poi.hslf.usermodel.HSLFShape; +import org.apache.poi.hslf.usermodel.HSLFSlide; +import org.apache.poi.hslf.usermodel.HSLFSlideShow; +import org.apache.poi.hslf.usermodel.HSLFTextShape; +import org.apache.poi.hssf.usermodel.HSSFWorkbook; +import org.apache.poi.hwpf.HWPFDocument; +import org.apache.poi.hwpf.extractor.WordExtractor; +import org.apache.poi.openxml4j.exceptions.OLE2NotOfficeXmlFileException; +import org.apache.poi.poifs.filesystem.POIFSFileSystem; +import org.apache.poi.ss.usermodel.*; +import org.apache.poi.xslf.usermodel.XMLSlideShow; +import org.apache.poi.xslf.usermodel.XSLFShape; +import org.apache.poi.xslf.usermodel.XSLFSlide; +import org.apache.poi.xslf.usermodel.XSLFTextShape; +import org.apache.poi.xssf.usermodel.XSSFWorkbook; +import org.apache.poi.xwpf.usermodel.*; +import org.jsoup.Jsoup; +import org.jsoup.nodes.Document; +import org.springframework.stereotype.Service; + +import java.io.*; +import java.nio.charset.StandardCharsets; +import java.nio.file.Path; +import java.util.regex.Pattern; + +@Service +@RequiredArgsConstructor +@Slf4j +public class ReadContentService { + + private final OcrService ocrService; + + public final CommonFileService commonFileService; + + public final VideoProcessService videoProcessService; + + /** + * 将 DWG 文件转换为 MXWeb 文件 + * + * @param file 文件 + * @param fileId 文件 ID + */ + public void dwg2mxweb(File file, String fileId) { + String username = commonFileService.getUsernameByAbsolutePath(Path.of(file.getAbsolutePath())); + // 生成封面图像 + if (CharSequenceUtil.isNotBlank(fileId)) { + String outputName = file.getName() + Constants.MXWEB_SUFFIX; + FileContentUtil.dwgConvert(file.getAbsolutePath(), videoProcessService.getVideoCacheDir(username, fileId), outputName); + } + } + + public static boolean checkPageContent(PDDocument document, int pageIndex) throws IOException { + PDPage page = document.getPage(pageIndex); // 获取页面 + if (page == null) { + return false; + } + // 检查是否含有图片 + PDResources resources = page.getResources(); + if (resources == null) { + return false; + } + for (COSName xObjectName : resources.getXObjectNames()) { + PDXObject xObject = resources.getXObject(xObjectName); + if (xObject instanceof PDImageXObject) { + // 如果找到至少一张图片,则可以提前退出 + return true; + } + } + return false; + } + + public void readPdfContent(File file, String fileId, Writer writer) { + try (PDDocument document = Loader.loadPDF(new RandomAccessReadBufferedFile(file))) { + String username = commonFileService.getUsernameByAbsolutePath(Path.of(file.getAbsolutePath())); + + // 生成封面图像 + if (CharSequenceUtil.isNotBlank(fileId)) { + File coverFile = FileContentUtil.pdfCoverImage(file, document, videoProcessService.getVideoCacheDir(username, fileId)); + commonFileService.updateCoverFileDocument(fileId, coverFile); + } + + PDFRenderer pdfRenderer = new PDFRenderer(document); + PDFTextStripper pdfStripper = new PDFTextStripper(); + + for (int pageIndex = 0; pageIndex < document.getNumberOfPages(); pageIndex++) { // 使用 0-based 索引 + readPdfOfPage(file, pageIndex, pdfStripper, document, writer, pdfRenderer, username); + } + } catch (IOException e) { + FileContentUtil.readFailed(file, e); + } + } + + private void readPdfOfPage(File file, int pageIndex, PDFTextStripper pdfStripper, PDDocument document, Writer writer, PDFRenderer pdfRenderer, String username) { + try { + int pageNumber = pageIndex + 1; + pdfStripper.setStartPage(pageNumber); // PDFTextStripper 使用 1-based 索引 + pdfStripper.setEndPage(pageNumber); + String text = pdfStripper.getText(document).trim(); + + // 如果页面包含文字,添加提取的文字 + if (!text.isEmpty()) { + writer.write(text); + } + // 如果页面包含图片或没有文字,则进行 OCR + if ((checkPageContent(document, pageIndex) || text.isEmpty()) && Boolean.TRUE.equals(ocrService.getOcrConfig().getEnable())) { + String ocrText = ocrService.extractPageWithOCR(file, pdfRenderer, pageIndex, document.getNumberOfPages(), username); + if (CharSequenceUtil.isNotBlank(ocrText)) { + writer.write(ocrText); + } + } + } catch (IOException e) { + log.error("提取文字失败, {}, 页数: {}", file.getName(), pageIndex, e); + } catch (Exception e) { + log.error("提取文字失败1, {}, 页数: {}", file.getName(), pageIndex, e); + } + } + + public void readEpubContent(File file, String fileId, Writer writer) { + try (InputStream fileInputStream = new FileInputStream(file)) { + // 打开 EPUB 文件 + EpubReader epubReader = new EpubReader(); + Book book = epubReader.readEpub(fileInputStream); + + // 生成封面图像 + String username = commonFileService.getUsernameByAbsolutePath(Path.of(file.getAbsolutePath())); + if (CharSequenceUtil.isNotBlank(fileId)) { + File coverFile = FileContentUtil.epubCoverImage(book, videoProcessService.getVideoCacheDir(username, fileId)); + commonFileService.updateCoverFileDocument(fileId, coverFile); + } + + // 获取章节内容 + Spine spine = book.getSpine(); + for (int i = 0; i < spine.size(); i++) { + Resource resource = spine.getResource(i); + InputStream is = resource.getInputStream(); + byte[] bytes = is.readAllBytes(); + String htmlContent = new String(bytes, StandardCharsets.UTF_8); + // 使用 JSoup 解析 HTML 并提取纯文本 + Document document = Jsoup.parse(htmlContent); + String textContent = document.text(); + writer.write(textContent); + is.close(); + } + } catch (IOException e) { + FileContentUtil.readFailed(file, e); + } + } + + public void readPPTContent(File file, Writer writer) { + String fileName = file.getName().toLowerCase(); + + try (FileInputStream fis = new FileInputStream(file)) { + if (fileName.endsWith(".pptx")) { + // 读取 .pptx 文件 + try (XMLSlideShow pptx = new XMLSlideShow(fis)) { + readSlides(pptx.getSlides(), writer); + } + } else if (fileName.endsWith(".ppt")) { + // 读取 .ppt 文件 + try (HSLFSlideShow ppt = new HSLFSlideShow(fis)) { + readSlides(ppt.getSlides(), writer); + } + } else { + throw new IllegalArgumentException("Unsupported file format: " + fileName); + } + } catch (IOException e) { + FileContentUtil.readFailed(file, e); + } + } + + // 通用方法读取幻灯片中的文本内容 + private void readSlides(Iterable slides, Writer writer) throws IOException { + for (Object slide : slides) { + if (slide instanceof XSLFSlide xslfSlide) { + for (XSLFShape shape : xslfSlide.getShapes()) { + if (shape instanceof XSLFTextShape textShape) { + writer.write(textShape.getText()); + writer.write(" "); + } + } + } else if (slide instanceof HSLFSlide hslfSlide) { + for (HSLFShape shape : hslfSlide.getShapes()) { + if (shape instanceof HSLFTextShape textShape) { + writer.write(textShape.getText()); + writer.write(" "); + } + } + } + } + } + + public void readWordContent(File file, Writer writer) { + try (FileInputStream fis = new FileInputStream(file)) { + try { + // 读取 DOCX 文件 + XWPFDocument document = new XWPFDocument(fis); + + // 1. 读取段落 + for (XWPFParagraph paragraph : document.getParagraphs()) { + writer.write(paragraph.getText()); + writer.write("\n"); + } + + // 2. 读取表格 + for (XWPFTable table : document.getTables()) { + for (XWPFTableRow row : table.getRows()) { + for (XWPFTableCell cell : row.getTableCells()) { + writer.write(cell.getText()); + writer.write("\t"); + } + writer.write("\n"); + } + } + + // 3. 读取页眉 + for (XWPFHeader header : document.getHeaderList()) { + writer.write(header.getText()); + writer.write("\n"); + } + + // 4. 读取页脚 + for (XWPFFooter footer : document.getFooterList()) { + writer.write(footer.getText()); + writer.write("\n"); + } + } catch (OLE2NotOfficeXmlFileException e) { + // 读取 DOC 文件 + try (FileInputStream fis2 = new FileInputStream(file); + POIFSFileSystem poifs = new POIFSFileSystem(fis2); + HWPFDocument doc = new HWPFDocument(poifs)) { + WordExtractor extractor = new WordExtractor(doc); + writer.write(extractor.getText()); + } + } + } catch (IOException e) { + FileContentUtil.readFailed(file, e); + } + } + + // 匹配包含至少一个中文或英文字符的字符串 + private static final Pattern TEXT_PATTERN = Pattern.compile(".*[a-zA-Z一-龥]+.*"); + + public void readExcelContent(File file, Writer writer) { + try (FileInputStream fis = new FileInputStream(file)) { + try (Workbook workbook = createWorkbook(file, fis)) { + for (Sheet sheet : workbook) { + readSheetContent(sheet, writer); + } + } + } catch (IOException e) { + FileContentUtil.readFailed(file, e); + } catch (IllegalArgumentException e) { + log.warn("Unsupported file format: {}", file.getName()); + } + } + + private Workbook createWorkbook(File file, FileInputStream fis) throws IOException { + if (file.getName().endsWith(".xlsx")) { + return new XSSFWorkbook(fis); + } else if (file.getName().endsWith(".xls")) { + return new HSSFWorkbook(fis); + } else { + throw new IllegalArgumentException("Unsupported file format"); + } + } + + private void readSheetContent(Sheet sheet, Writer writer) throws IOException { + for (Row row : sheet) { + for (Cell cell : row) { + String cellValue = getCellValueAsString(cell); + // 包含至少一个中文或英文字符 + if (TEXT_PATTERN.matcher(cellValue).matches()) { + writer.write(cellValue); + writer.write(" "); + } + } + } + } + + private String getCellValueAsString(Cell cell) { + if (cell == null) { + return ""; + } + switch (cell.getCellType()) { + case STRING: + return cell.getStringCellValue(); + case BOOLEAN: + return Boolean.toString(cell.getBooleanCellValue()); + case NUMERIC: + if (DateUtil.isCellDateFormatted(cell)) { + return cell.getDateCellValue().toString(); + } else { + return Double.toString(cell.getNumericCellValue()); + } + case FORMULA: + return cell.getCellFormula(); + case BLANK: + default: + return ""; + } + } +} diff --git a/src/main/java/com/jmal/clouddisk/lucene/RebuildIndexTaskService.java b/src/main/java/com/jmal/clouddisk/lucene/RebuildIndexTaskService.java new file mode 100644 index 0000000..b14d194 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/lucene/RebuildIndexTaskService.java @@ -0,0 +1,649 @@ +package com.jmal.clouddisk.lucene; + +import cn.hutool.core.date.TimeInterval; +import cn.hutool.core.thread.ThreadUtil; +import cn.hutool.core.util.NumberUtil; +import cn.hutool.core.util.ReUtil; +import cn.hutool.core.util.StrUtil; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.model.FileDocument; +import com.jmal.clouddisk.ocr.OcrService; +import com.jmal.clouddisk.service.impl.CommonFileService; +import com.jmal.clouddisk.service.impl.MenuService; +import com.jmal.clouddisk.service.impl.RoleService; +import com.jmal.clouddisk.service.impl.UserServiceImpl; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import com.jmal.clouddisk.util.ThrottleExecutor; +import jakarta.annotation.PostConstruct; +import jakarta.annotation.PreDestroy; +import lombok.Getter; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.apache.lucene.index.IndexWriter; +import org.apache.lucene.index.Term; +import org.apache.lucene.search.PrefixQuery; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.data.mongodb.core.query.Update; +import org.springframework.stereotype.Service; + +import java.io.IOException; +import java.math.RoundingMode; +import java.nio.file.*; +import java.nio.file.attribute.BasicFileAttributes; +import java.util.*; +import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.CopyOnWriteArraySet; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicInteger; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.locks.ReentrantLock; + +/** + *

重建索引任务

+ * 重建索引分为两个步骤
+ * 1. 同步文件到数据库
+ * 2. 创建文件内容索引
+ */ +@Service +@Slf4j +@RequiredArgsConstructor +public class RebuildIndexTaskService { + + private final IndexWriter indexWriter; + + private final MenuService menuService; + + private final RoleService roleService; + + private final UserServiceImpl userService; + + private final FileProperties fileProperties; + + private final CommonFileService commonFileService; + + private final MongoTemplate mongoTemplate; + + private ExecutorService syncFileVisitorService; + + private SyncFileVisitor syncFileVisitor; + + private double totalCount; + + private final OcrService ocrService; + + /** + * 接收消息的用户 + */ + private static final Set RECIPIENT = new CopyOnWriteArraySet<>(); + + private static final String MSG_SYNCED = "synced"; + + /** + * 待索引任务总数 + */ + private static final AtomicInteger NOT_INDEX_TASK_SIZE = new AtomicInteger(0); + /** + * 完成索引任务数 + */ + private static final AtomicInteger INDEXED_TASK_SIZE = new AtomicInteger(0); + + /** + * 同步文件操作锁, 防止重复操作 + */ + private static final ReentrantLock SYNC_FILE_LOCK = new ReentrantLock(); + + private Runnable syncCompleteCallback; + + /** + * 进度百分比 + */ + private static final Map PERCENT_MAP = new ConcurrentHashMap<>(2); + /** + * 同步进度 + */ + private static final String SYNC_PERCENT = "syncPercent"; + /** + * 索引进度 + */ + private static final String INDEXING_PERCENT = "indexingPercent"; + + private ThrottleExecutor throttleExecutor; + + private Timer DELAY_DELETE_TAG_TIMER; + + private final ReentrantLock deleteDocWithDeleteFlagLock = new ReentrantLock(); + + @PostConstruct + public void init() { + // 启动时检测是否存在菜单,不存在则初始化 + if (!menuService.existsMenu()) { + menuService.initMenus(); + roleService.initRoles(); + } + // 启动时检测是否存在lucene索引,不存在则初始化 + if (!checkIndexExists()) { + doSync(userService.getCreatorUsername(), null, true); + } + // 重置索引状态 + resetIndexStatus(); + } + + private void getSyncFileVisitorService() { + int processors = Runtime.getRuntime().availableProcessors() - 4; + if (syncFileVisitorService == null || syncFileVisitorService.isShutdown()) { + syncFileVisitorService = ThreadUtil.newFixedExecutor(Math.max(processors, 2), 1, "syncFileVisitor", true); + } + } + + public void doSync(String username, String path, boolean isDelIndex) { + if (isSyncFile() || isIndexing()) { + return; + } + if (StrUtil.isBlank(username)) { + username = userService.getCreatorUsername(); + } + setPercentMap(0d, 0d); + String finalUsername = username; + ThreadUtil.execute(() -> { + if (!SYNC_FILE_LOCK.tryLock()) { + return; + } + try { + Path canPath; + if (StrUtil.isBlank(path)) { + canPath = Paths.get(fileProperties.getRootDir()); + } else { + canPath = Paths.get(path); + } + if (!Files.exists(canPath)) { + return; + } + getSyncFileVisitorService(); + rebuildingIndex(finalUsername, canPath, isDelIndex); + } finally { + SYNC_FILE_LOCK.unlock(); + setPercentMap(100d, 100d); + pushMessage(); + } + }); + } + + /** + * 重建索引 + * + * @param recipient 接收消息的用户 + * @param path 要扫描的路径 + * @param isDelIndex 是否删除索引 + */ + private void rebuildingIndex(String recipient, Path path, boolean isDelIndex) { + TimeInterval timeInterval = new TimeInterval(); + try { + getRecipient(recipient); + restIndexedTasks(); + if (DELAY_DELETE_TAG_TIMER != null) { + DELAY_DELETE_TAG_TIMER.cancel(); + } + Set fileVisitOptions = EnumSet.noneOf(FileVisitOption.class); + fileVisitOptions.add(FileVisitOption.FOLLOW_LINKS); + // 先移除删除标记, 以免因为扫描路径的不同导致删除标记未移除 + removeDeletedFlag(null); + // 添加删除标记, 扫描完后如果标记还在则删除 + addDeleteFlagOfDoc(path, isDelIndex); + // 重置索引状态 + resetIndexStatus(); + FileCountVisitor fileCountVisitor = new FileCountVisitor(); + Files.walkFileTree(path, fileVisitOptions, Integer.MAX_VALUE, fileCountVisitor); + totalCount = fileCountVisitor.getCount(); + log.info("path: {}, 开始同步, 文件数: {}", path, totalCount); + timeInterval.start(); + if (syncFileVisitor == null) { + syncFileVisitor = new SyncFileVisitor(totalCount); + } + Files.walkFileTree(path, fileVisitOptions, Integer.MAX_VALUE, syncFileVisitor); + // 等待线程池里所有任务完成 + waitTaskCompleted(); + deleteDocWithDeleteFlag(); + } catch (IOException e) { + log.error("{}{}", e.getMessage(), path, e); + } finally { + setPercentMap(100d, getIndexedPercentValue()); + syncFileVisitor = null; + log.info("同步完成, 耗时: {}s", timeInterval.intervalSecond()); + } + } + + /** + * 删除path下的所有索引 + * @param path path + */ + private void deleteAllIndex(String path) { + if (StrUtil.isBlank(path)) { + path = "/"; + } + // 查询path下的所有索引 + Term prefixTerm = new Term("path", path); + PrefixQuery prefixQuery = new PrefixQuery(prefixTerm); + try { + indexWriter.deleteDocuments(prefixQuery); + indexWriter.commit(); + } catch (IOException e) { + log.error(e.getMessage(), e); + } + } + + private void waitTaskCompleted() { + try { + log.info("等待同步文件完成"); + syncFileVisitorService.shutdown(); + // 等待线程池里所有任务完成 + if (!syncFileVisitorService.awaitTermination(10, TimeUnit.MINUTES)) { + log.warn("同步文件超时, 尝试强制停止所有任务"); + // 移除删除标记, 以免误删索引 + removeDeletedFlag(null); + syncFileVisitorService.shutdownNow(); + } + } catch (InterruptedException e) { + syncFileVisitorService.shutdownNow(); + Thread.currentThread().interrupt(); + } + } + + private String getRecipient(String username) { + if (StrUtil.isNotBlank(username)) { + RECIPIENT.clear(); + RECIPIENT.add(username); + } + return RECIPIENT.stream().findFirst().orElse(username); + } + + private void deleteDocWithDeleteFlag() { + DELAY_DELETE_TAG_TIMER = new Timer(); + DELAY_DELETE_TAG_TIMER.schedule(new TimerTask() { + @Override + public void run() { + if (!deleteDocWithDeleteFlagLock.tryLock()) { + return; + } + try { + commonFileService.deleteDocWithDeleteFlag(); + } finally { + deleteDocWithDeleteFlagLock.unlock(); + } + } + }, 10000); + } + + public void onSyncComplete(Runnable callback) { + this.syncCompleteCallback = callback; + } + + public void rebuildingIndexCompleted() { + if (!hasUnIndexedTasks() && NOT_INDEX_TASK_SIZE.get() > 0) { + setPercentMap(100d, 100d); + log.debug("重建索引完成, INDEXED_TASK_SIZE, {}, NOT_INDEX_TASK_SIZE: {}", INDEXED_TASK_SIZE, NOT_INDEX_TASK_SIZE); + restIndexedTasks(); + pushMessage(); + if (syncCompleteCallback != null) { + syncCompleteCallback.run(); + } + } + } + + private void restIndexedTasks() { + NOT_INDEX_TASK_SIZE.set(0); + INDEXED_TASK_SIZE.set(0); + totalCount = 0; + } + + /** + * 增加待索引任务数 + */ + public void incrementNotIndexTaskSize() { + NOT_INDEX_TASK_SIZE.incrementAndGet(); + } + + /** + * 增加已索引任务数 + */ + public void incrementIndexedTaskSize() { + INDEXED_TASK_SIZE.incrementAndGet(); + delayResetIndex(); + } + + public void delayResetIndex() { + synchronized (RebuildIndexTaskService.class) { + if (throttleExecutor == null) { + throttleExecutor = new ThrottleExecutor(10000); + } + } + throttleExecutor.schedule(this::rebuildingIndexCompleted); + } + + private void updatePercent() { + setPercentMap(null, null); + pushMessage(); + } + + /** + * 是否正在同步文件 + */ + public static boolean isSyncFile() { + return SYNC_FILE_LOCK.isLocked(); + } + + /** + * 是否正在创建索引 + */ + public static boolean isIndexing() { + return NOT_INDEX_TASK_SIZE.get() > 0; + } + + /** + * 把文件同步到数据库 + * @param username 用户名 + * @param path 文件相对路径 + * @param isDelIndex 是否删除索引 + */ + public ResponseResult sync(String username, String path, boolean isDelIndex) { + if (StrUtil.isNotBlank(path)) { + path = Paths.get(fileProperties.getRootDir(), username, path).toString(); + } + doSync(username, path, isDelIndex); + return ResultUtil.success(); + } + + /** + * 是否正在同步中 + */ + public Map isSync() { + if (PERCENT_MAP.isEmpty()) { + setPercentMap(100d, 100d); + } + return PERCENT_MAP; + } + + /** + * 更新任务进度, 用于前端显示 + */ + public void updateTaskProgress() { + if (!isSyncFile() && !isIndexing()) { + return; + } + if (getRecipient(null) == null) { + getRecipient(userService.getCreatorUsername()); + } + // 更新进度 + updatePercent(); + } + + /** + * 获取同步进度 + */ + private double getSyncPercent() { + if (syncFileVisitor == null) { + return PERCENT_MAP.getOrDefault(SYNC_PERCENT, 100d); + } + return syncFileVisitor.getPercent(); + } + + /** + * 获取索引进度 + */ + private double getIndexedPercent() { + if (NOT_INDEX_TASK_SIZE.get() == 0 || isSyncFile()) { + return 100; + } + return getIndexedPercentValue(); + } + + private double getIndexedPercentValue() { + if (totalCount == 0) { + return 0; + } + return NumberUtil.round((double) INDEXED_TASK_SIZE.get() / totalCount * 100, 2, RoundingMode.DOWN).doubleValue(); + } + + private class SyncFileVisitor extends SimpleFileVisitor { + + @Getter + public final double totalCount; + + private final AtomicInteger processCount; + + public SyncFileVisitor(double totalCount) { + this.totalCount = totalCount; + this.processCount = new AtomicInteger(0); + } + + public double getPercent() { + return NumberUtil.round(processCount.get() / totalCount * 100, 2).doubleValue(); + } + + @NotNull + @Override + public FileVisitResult visitFileFailed(@NotNull Path file, @NotNull IOException exc) throws IOException { + log.error(exc.getMessage(), exc); + return super.visitFileFailed(file, exc); + } + + @NotNull + @Override + public FileVisitResult preVisitDirectory(@NotNull Path dir, @NotNull BasicFileAttributes attrs) throws IOException { + // 跳过临时文件目录 + FileVisitResult skipTempDirectory = skipTempDirectory(dir); + if (skipTempDirectory != null) return skipTempDirectory; + String username = commonFileService.getUsernameByAbsolutePath(dir); + processCount.incrementAndGet(); + if (StrUtil.isBlank(username)) { + return super.visitFile(dir, attrs); + } + processFile(dir, username); + return super.preVisitDirectory(dir, attrs); + } + + @NotNull + @Override + public FileVisitResult visitFile(Path file, @NotNull BasicFileAttributes attrs) throws IOException { + // 判断文件名是否在monitorIgnoreFilePrefix中 + if (fileProperties.getMonitorIgnoreFilePrefix().stream().anyMatch(file.getFileName()::startsWith)) { + log.debug("忽略文件:{}", file.getFileName()); + return super.visitFile(file, attrs); + } + processCount.incrementAndGet(); + String username = commonFileService.getUsernameByAbsolutePath(file); + if (StrUtil.isBlank(username)) { + return super.visitFile(file, attrs); + } + processFile(file, username); + return super.visitFile(file, attrs); + } + + private void processFile(Path file, String username) { + // 使用 RxJava 执行异步文件创建 + syncFileVisitorService.execute(() -> createFile(username, file)); + } + + private void createFile(String username, Path file) { + try { + commonFileService.createFile(username, file.toFile(), null, null); + } catch (Exception e) { + log.error("createFile error {}{}", e.getMessage(), file, e); + Query query = new Query(); + query.fields().include("_id"); + FileDocument fileDocument = commonFileService.getFileDocument(username, file.toFile().getAbsolutePath(), query); + if (fileDocument != null) { + // 需要移除删除标记 + removeDeletedFlag(Collections.singletonList(fileDocument.getId())); + } + } + } + } + + private void setPercentMap(Double syncPercent, Double indexingPercent) { + if (syncPercent == null) { + syncPercent = getSyncPercent(); + } + if (indexingPercent == null) { + indexingPercent = getIndexedPercent(); + } + PERCENT_MAP.put(SYNC_PERCENT, syncPercent); + PERCENT_MAP.put(INDEXING_PERCENT, indexingPercent); + if (syncPercent >= 100 && indexingPercent >= 100) { + ocrService.setMaxConcurrentRequests(ocrService.getOcrConfig().getMaxTasks()); + } + } + + private void pushMessage() { + commonFileService.pushMessage(getRecipient(null), PERCENT_MAP, RebuildIndexTaskService.MSG_SYNCED); + log.debug("索引进度: {}, isSyncFile: {}, INDEXED_TASK_SIZE, {}, NOT_INDEX_TASK_SIZE: {}", PERCENT_MAP, isSyncFile(), INDEXED_TASK_SIZE.get(), NOT_INDEX_TASK_SIZE.get()); + } + + private class FileCountVisitor extends SimpleFileVisitor { + private final AtomicLong count = new AtomicLong(0); + + public long getCount() { + return count.get(); + } + + @NotNull + @Override + public FileVisitResult preVisitDirectory(@NotNull Path dir, @NotNull BasicFileAttributes attrs) throws IOException { + // 跳过临时文件目录 + FileVisitResult skipTempDirectory = skipTempDirectory(dir); + if (skipTempDirectory != null) return skipTempDirectory; + String username = commonFileService.getUsernameByAbsolutePath(dir); + count.addAndGet(1); + if (StrUtil.isBlank(username)) { + return super.visitFile(dir, attrs); + } + return super.preVisitDirectory(dir, attrs); + } + + @NotNull + @Override + public FileVisitResult visitFile(@NotNull Path file, @NotNull BasicFileAttributes attrs) throws IOException { + count.addAndGet(1); + return super.visitFile(file, attrs); + } + } + + private @Nullable FileVisitResult skipTempDirectory(Path dir) { + // 跳过临时文件目录 + if (dir.toFile().getName().equals(fileProperties.getChunkFileDir())) { + return FileVisitResult.SKIP_SUBTREE; + } + // 跳过lucene索引目录 + if (dir.toFile().getName().equals(fileProperties.getLuceneIndexDir())) { + return FileVisitResult.SKIP_SUBTREE; + } + return null; + } + + public boolean checkIndexExists() { + org.springframework.data.mongodb.core.query.Query query = new org.springframework.data.mongodb.core.query.Query(); + query.addCriteria(Criteria.where("ossFolder").exists(true)); + long count = mongoTemplate.count(query, CommonFileService.COLLECTION_NAME); + long indexCount = indexWriter.getDocStats().numDocs; + return indexCount > count; + } + + /** + * 重置索引状态, 将正在索引的文件状态重置为未索引 + */ + public void resetIndexStatus() { + org.springframework.data.mongodb.core.query.Query query = new org.springframework.data.mongodb.core.query.Query(); + query.addCriteria(Criteria.where(LuceneService.MONGO_INDEX_FIELD).lte(IndexStatus.INDEXING.getStatus())); + Update update = new Update(); + update.unset(LuceneService.MONGO_INDEX_FIELD); + mongoTemplate.updateMulti(query, update, CommonFileService.COLLECTION_NAME); + } + + /** + * 检查是否有未索引或正在索引的任务 + */ + public boolean hasUnIndexedTasks() { + org.springframework.data.mongodb.core.query.Query query = new org.springframework.data.mongodb.core.query.Query(); + query.addCriteria(Criteria.where(LuceneService.MONGO_INDEX_FIELD).lte(IndexStatus.INDEXING.getStatus())); + long count = mongoTemplate.count(query, CommonFileService.COLLECTION_NAME); + return count > 0; + } + + /** + * 添加删除标记 + */ + private void addDeleteFlagOfDoc(Path filepath, boolean isDelIndex) { + if (filepath == null) { + return; + } + if (Files.notExists(filepath)) { + return; + } + if (filepath.toFile().isFile()) { + return; + } + String username = commonFileService.getUsernameByAbsolutePath(filepath); + String userId = null; + String path = null; + if (StrUtil.isNotBlank(username)) { + userId = userService.getUserIdByUserName(username); + Path relativePath = Paths.get(fileProperties.getRootDir(), username).relativize(filepath); + if (relativePath.getNameCount() > 0) { + path = "/" + relativePath + "/"; + } else { + path = "/"; + } + } + org.springframework.data.mongodb.core.query.Query query = new org.springframework.data.mongodb.core.query.Query(); + query.addCriteria(Criteria.where("alonePage").exists(false)); + query.addCriteria(Criteria.where("release").exists(false)); + query.addCriteria(Criteria.where("mountFileId").exists(false)); + if (StrUtil.isNotBlank(userId)) { + query.addCriteria(Criteria.where("userId").is(userId)); + } + if (StrUtil.isNotBlank(path)) { + query.addCriteria(Criteria.where("path").regex("^" + ReUtil.escape(path))); + } + Update update = new Update(); + // 添加删除标记用于在之后删除 + update.set("delete", 1); + mongoTemplate.updateMulti(query, update, CommonFileService.COLLECTION_NAME); + if (isDelIndex) { + // 删除索引 + deleteAllIndex(path); + } + } + + /** + * 移除删除标记 + * + * @param fileIdList fileIdList + */ + public void removeDeletedFlag(List fileIdList) { + org.springframework.data.mongodb.core.query.Query query = new org.springframework.data.mongodb.core.query.Query(); + if (fileIdList == null || fileIdList.isEmpty()) { + query.addCriteria(Criteria.where("delete").is(1)); + } else { + query.addCriteria(Criteria.where("_id").in(fileIdList).and("delete").is(1)); + } + Update update = new Update(); + update.unset("delete"); + mongoTemplate.updateMulti(query, update, CommonFileService.COLLECTION_NAME); + } + + @PreDestroy + public void destroy() { + if (syncFileVisitorService != null) { + syncFileVisitorService.shutdown(); + } + if (throttleExecutor != null) { + throttleExecutor.shutdown(); + } + } + +} diff --git a/src/main/java/com/jmal/clouddisk/lucene/SearchFileService.java b/src/main/java/com/jmal/clouddisk/lucene/SearchFileService.java new file mode 100644 index 0000000..2b48017 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/lucene/SearchFileService.java @@ -0,0 +1,589 @@ +package com.jmal.clouddisk.lucene; + +import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.core.util.BooleanUtil; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.exception.CommonException; +import com.jmal.clouddisk.exception.ExceptionType; +import com.jmal.clouddisk.model.FileDocument; +import com.jmal.clouddisk.model.FileIntroVO; +import com.jmal.clouddisk.model.TagDO; +import com.jmal.clouddisk.model.query.SearchDTO; +import com.jmal.clouddisk.model.query.SearchOptionHistoryDO; +import com.jmal.clouddisk.service.Constants; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.service.impl.TagService; +import com.jmal.clouddisk.service.impl.UserLoginHolder; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import com.jmal.clouddisk.util.TimeUntils; +import com.mongodb.client.AggregateIterable; +import io.reactivex.rxjava3.core.Completable; +import io.reactivex.rxjava3.schedulers.Schedulers; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.apache.lucene.analysis.Analyzer; +import org.apache.lucene.document.Document; +import org.apache.lucene.document.IntPoint; +import org.apache.lucene.document.NumericDocValuesField; +import org.apache.lucene.index.StoredFields; +import org.apache.lucene.index.Term; +import org.apache.lucene.queryparser.classic.ParseException; +import org.apache.lucene.queryparser.classic.QueryParser; +import org.apache.lucene.search.*; +import org.bson.types.ObjectId; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.stereotype.Service; + +import java.io.IOException; +import java.util.*; + +import static com.jmal.clouddisk.lucene.LuceneService.FIELD_TAG_NAME_FUZZY; +import static com.jmal.clouddisk.service.impl.CommonFileService.COLLECTION_NAME; + +@Service +@RequiredArgsConstructor +@Slf4j +public class SearchFileService { + + private final Analyzer analyzer; + private final FileProperties fileProperties; + private final SearcherManager searcherManager; + private final UserLoginHolder userLoginHolder; + private final TagService tagService; + private final MongoTemplate mongoTemplate; + private final IUserService userService; + + public boolean existsSha256(String fileIndexHash) { + IndexSearcher indexSearcher = null; + try { + searcherManager.maybeRefresh(); + indexSearcher = searcherManager.acquire(); + Term term = new Term(Constants.ETAG, fileIndexHash); + Query query = new TermQuery(term); + TopDocs topDocs = indexSearcher.search(query, 1); + return topDocs.totalHits.value() > 0; + } catch (IOException e) { + log.error("检查 {} 是否存在失败", Constants.ETAG, e); + } finally { + if (indexSearcher != null) { + try { + searcherManager.release(indexSearcher); + } catch (IOException e) { + log.error("释放搜索器失败", e); + } + } + } + return false; + } + + public ResponseResult> searchFile(SearchDTO searchDTO) { + String keyword = searchDTO.getKeyword(); + if (keyword == null || keyword.trim().isEmpty() || searchDTO.getUserId() == null) { + return ResultUtil.success(Collections.emptyList()); + } + ResponseResult> result = ResultUtil.genResult(); + IndexSearcher indexSearcher = null; + try { + beforeQuery(searchDTO); + if (!searchDTO.getUserId().equals(userLoginHolder.getUserId())) { + Map props = new HashMap<>(); + props.put("fileUsername", userService.getUserNameById(searchDTO.getUserId())); + result.setProps(props); + } + + int pageNum = searchDTO.getPage(); + int pageSize = searchDTO.getPageSize(); + searcherManager.maybeRefresh(); + List seenIds = new ArrayList<>(); + indexSearcher = searcherManager.acquire(); + Query query = getQuery(searchDTO); + Sort sort = getSort(searchDTO); + ScoreDoc lastScoreDoc = null; + if (pageNum > 1) { + int totalHitsToSkip = (pageNum - 1) * pageSize; + TopDocs topDocs = indexSearcher.search(query, totalHitsToSkip, sort); + if (topDocs.scoreDocs.length == totalHitsToSkip) { + lastScoreDoc = topDocs.scoreDocs[totalHitsToSkip - 1]; + } + } + int count = indexSearcher.count(query); + TopDocs topDocs = indexSearcher.searchAfter(lastScoreDoc, query, pageSize, sort); + StoredFields storedFields = indexSearcher.storedFields(); + for (ScoreDoc hit : topDocs.scoreDocs) { + Document doc = storedFields.document(hit.doc); + String id = doc.get("id"); + seenIds.add(id); + } + List fileIntroVOList = getFileIntroVOs(seenIds); + long now = System.currentTimeMillis(); + fileIntroVOList.forEach(fileIntroVO -> { + long updateMilli = TimeUntils.getMilli(fileIntroVO.getUpdateDate()); + fileIntroVO.setAgoTime(now - updateMilli); + }); + result.setData(fileIntroVOList); + result.setCount(count); + + String userId = userLoginHolder.getUserId(); + // 添加搜索历史 + Completable.fromAction(() -> addSearchHistory(userId, searchDTO)).subscribeOn(Schedulers.io()).subscribe(); + + return result; + } catch (IOException | ParseException | java.lang.IllegalArgumentException e) { + log.error("搜索失败", e); + return result.setData(Collections.emptyList()).setCount(0); + } finally { + if (indexSearcher != null) { + try { + searcherManager.release(indexSearcher); + } catch (IOException e) { + log.error("释放搜索器失败", e); + } + } + } + } + + /** + * 添加搜索历史 + * + * @param searchUserId searchUserId + * @param searchDTO searchDTO + */ + private void addSearchHistory(String searchUserId, SearchDTO searchDTO) { + if (CharSequenceUtil.isBlank(searchUserId) || searchDTO == null) { + return; + } + SearchOptionHistoryDO searchOptionHistoryDO = searchDTO.toSearchOptionDO(); + searchOptionHistoryDO.setSearchTime(System.currentTimeMillis()); + searchOptionHistoryDO.setSearchUserId(searchUserId); + org.springframework.data.mongodb.core.query.Query query = new org.springframework.data.mongodb.core.query.Query(); + query.addCriteria(Criteria.where("keyword").is(searchDTO.getKeyword())); + query.addCriteria(Criteria.where("searchUserId").is(searchUserId)); + // 删除重复的搜索记录 + mongoTemplate.remove(query, SearchOptionHistoryDO.class); + + // 删除一个月之前的搜索记录 + org.springframework.data.mongodb.core.query.Query query1 = new org.springframework.data.mongodb.core.query.Query(); + query1.addCriteria(Criteria.where("searchUserId").is(searchUserId)); + query1.addCriteria(Criteria.where("searchTime").lt(System.currentTimeMillis() - 30 * 24 * 60 * 60 * 1000L)); + mongoTemplate.remove(query1, SearchOptionHistoryDO.class); + + // 插入搜索记录 + mongoTemplate.insert(searchOptionHistoryDO); + } + + public List recentlySearchHistory(String keyword) { + // 最近6条搜索记录 + org.springframework.data.mongodb.core.query.Query query = new org.springframework.data.mongodb.core.query.Query(); + query.addCriteria(Criteria.where("searchUserId").is(userLoginHolder.getUserId())); + if (CharSequenceUtil.isNotBlank(keyword)) { + query.addCriteria(Criteria.where("keyword").regex(keyword)); + } + query.with(org.springframework.data.domain.Sort.by(org.springframework.data.domain.Sort.Direction.DESC, "searchTime")); + query.limit(6); + List searchOptionHistoryDOList = mongoTemplate.find(query, SearchOptionHistoryDO.class); + return searchOptionHistoryDOList.stream().map(SearchOptionHistoryDO::toSearchDTO).toList(); + } + + public void deleteSearchHistory(String id) { + if (CharSequenceUtil.isBlank(id)) { + throw new CommonException(ExceptionType.MISSING_PARAMETERS); + } + org.springframework.data.mongodb.core.query.Query query = new org.springframework.data.mongodb.core.query.Query(); + query.addCriteria(Criteria.where("_id").is(id)); + mongoTemplate.remove(query, SearchOptionHistoryDO.class); + } + + public void deleteAllSearchHistory() { + String userId = userLoginHolder.getUserId(); + if (CharSequenceUtil.isBlank(userId)) { + throw new CommonException(ExceptionType.MISSING_PARAMETERS); + } + org.springframework.data.mongodb.core.query.Query query = new org.springframework.data.mongodb.core.query.Query(); + query.addCriteria(Criteria.where(IUserService.USER_ID).is(userId)); + mongoTemplate.remove(query, SearchOptionHistoryDO.class); + } + + /** + * 获取排序规则 + * + * @param searchDTO searchDTO + * @return Sort + */ + private static Sort getSort(SearchDTO searchDTO) { + // 如果 searchDTO 为 null,返回默认相关度倒序排序 + if (searchDTO == null) { + return Sort.RELEVANCE; + } + + String sortProp = searchDTO.getSortProp(); + String sortOrder = searchDTO.getSortOrder(); + + // 如果排序属性或顺序为空,默认按相关度倒序排序 + if (CharSequenceUtil.isBlank(sortProp) || CharSequenceUtil.isBlank(sortOrder)) { + return Sort.RELEVANCE; + } + + // 确定排序方向 + boolean reverse = "descending".equalsIgnoreCase(sortOrder); + + // 根据排序属性创建对应的 SortField + SortField sortField; + switch (sortProp.toLowerCase()) { + case "updatedate": + sortField = new SortField("modified", SortField.Type.LONG, reverse); + break; + case "size": + sortField = new SortField("size", SortField.Type.LONG, reverse); + break; + case "name": // 显式支持相关度排序 + // 注意:FIELD_SCORE 本身是降序的,如果要求升序需要特殊处理 + return reverse ? Sort.RELEVANCE : new Sort(new SortField(null, SortField.Type.SCORE, true)); + default: + // 对于不支持的排序字段,默认按相关度倒序 + return Sort.RELEVANCE; + } + + return new Sort(sortField); + } + + /** + * 构建查询器 + * + * @param searchDTO searchDTO + * @return Query + * @throws ParseException ParseException + */ + private Query getQuery(SearchDTO searchDTO) throws ParseException { + // 精确搜索时,通常不希望对用户输入做过多改动 + String exactKeyword = searchDTO.getKeyword().toLowerCase(); + + // 模糊搜索将关键字中的特殊字符转义 + String fuzzyKeyword = QueryParser.escape(searchDTO.getKeyword().toLowerCase().trim()); + + // filename 和 tag Name 进行 NGram 匹配 + BooleanQuery.Builder nameAndTagQueryBuilder = new BooleanQuery.Builder(); + if (BooleanUtil.isTrue(searchDTO.getIncludeFileName())) { + BooleanQuery.Builder filenameBooleanQueryBuilder = getBooleanQueryFieldBuilder(LuceneService.FIELD_FILENAME_NGRAM, LuceneService.FIELD_FILENAME_FUZZY, exactKeyword, fuzzyKeyword, searchDTO); + nameAndTagQueryBuilder.add(filenameBooleanQueryBuilder.build(), BooleanClause.Occur.SHOULD); + } + if (BooleanUtil.isTrue(searchDTO.getIncludeTagName())) { + BooleanQuery.Builder tagNameBooleanQueryBuilder = getBooleanQueryFieldBuilder(LuceneService.FIELD_TAG_NAME_NGRAM, FIELD_TAG_NAME_FUZZY, exactKeyword, fuzzyKeyword, searchDTO); + nameAndTagQueryBuilder.add(tagNameBooleanQueryBuilder.build(), BooleanClause.Occur.SHOULD); + } + + Query boostQuery = new BoostQuery(nameAndTagQueryBuilder.build(), 3.0f); + + Query contentQuery = null; + if (BooleanUtil.isTrue(searchDTO.getIncludeFileContent())) { + BooleanQuery.Builder contentBooleanQueryBuilder = getBooleanQueryFieldBuilder(LuceneService.FIELD_CONTENT_NGRAM, LuceneService.FIELD_CONTENT_FUZZY, exactKeyword, fuzzyKeyword, searchDTO); + contentQuery = contentBooleanQueryBuilder.build(); + } + + // 如果keyword中有空格,将其拆分为多个关键字,这多个关键字之间是OR关系,在name或tag字段 + Query nameAndTagQuery = null; + if (!BooleanUtil.isTrue(searchDTO.getExactSearch())) { + nameAndTagQuery = getMultipleKeywordsQuery(searchDTO, exactKeyword); + } + + // 将正则表达式查询、短语查询和分词匹配查询组合成一个查询(OR关系) + BooleanQuery.Builder combinedQueryBuilder = new BooleanQuery.Builder().add(boostQuery, BooleanClause.Occur.SHOULD); + if (contentQuery != null) { + combinedQueryBuilder.add(contentQuery, BooleanClause.Occur.SHOULD); + } + + if (nameAndTagQuery != null) { + combinedQueryBuilder.add(nameAndTagQuery, BooleanClause.Occur.SHOULD); + } + + // 其他通用搜索选项 + BooleanQuery otherQuery = getOtherOption(searchDTO); + + BooleanQuery combinedQuery = combinedQueryBuilder.build(); + + // 创建最终查询(AND关系) + BooleanQuery.Builder fileQueryBuilder = new BooleanQuery.Builder().add(new TermQuery(new Term(IUserService.USER_ID, searchDTO.getSearchUserId())), BooleanClause.Occur.MUST); + + if (!combinedQuery.clauses().isEmpty()) { + fileQueryBuilder.add(combinedQuery, BooleanClause.Occur.MUST); + } + + if (!otherQuery.clauses().isEmpty()) { + fileQueryBuilder.add(otherQuery, BooleanClause.Occur.MUST); + } + + // 添加其他不通用查询条件 + otherQueryParams(searchDTO, fileQueryBuilder); + + // or 挂载点查询 + Query mountQuery = getMountQueryBuilder(searchDTO, combinedQuery, otherQuery); + + // 构建最终查询 + BooleanQuery.Builder finalQueryBuilder = new BooleanQuery.Builder(); + + // 是否仅搜索挂载文件 + if (!searchDTO.onlySearchMount()) { + finalQueryBuilder.add(fileQueryBuilder.build(), BooleanClause.Occur.SHOULD); + } + + // 是否搜索挂载文件 + if (mountQuery != null) { + finalQueryBuilder.add(mountQuery, BooleanClause.Occur.SHOULD); + } + + return finalQueryBuilder.build(); + } + + /** + * 创建字段查询 + * 如果开启了精准搜索配置,且根据参数exactSearch为true,则创建精确查询;否则创建模糊查询 + * 如果禁用精准搜索配置,则为“content”以外的字段(“filename”和“tagName”)创建模糊查询和精准查询, 两种查询使用OR组合 + * 由于精确搜索配置导致前端没有exactSearch参数,默认使用NGram分词器索引“filename”和“tagName”或模糊查询组合查询将会有更好的效果”对于未来的维护者来说将非常有益 + * + * @param fieldNameExact 精准查询字段名 + * @param fieldNameFuzzy 模糊查询字段名 + * @param exactKeyword 精准查询关键字 + * @param fuzzyKeyword 模糊查询关键字 + * @param searchDTO 查询参数 + */ + private BooleanQuery.Builder getBooleanQueryFieldBuilder(String fieldNameExact, String fieldNameFuzzy, String exactKeyword, String fuzzyKeyword, SearchDTO searchDTO) throws ParseException { + BooleanQuery.Builder booleanQueryFieldBuilder = new BooleanQuery.Builder(); + Query fuzzyQuery = null; + Query exactQuery = null; + if (fileProperties.getExactSearch()) { + exactQuery = getExactQuery(fieldNameExact, exactKeyword); + if (!BooleanUtil.isTrue(searchDTO.getExactSearch())) { + fuzzyQuery = getFuzzyQuery(fieldNameFuzzy, fuzzyKeyword); + } + } else { + if (LuceneService.FIELD_CONTENT_FUZZY.equals(fieldNameFuzzy)) { + fuzzyQuery = getFuzzyQuery(fieldNameFuzzy, fuzzyKeyword); + } else { + fuzzyQuery = getFuzzyQuery(fieldNameFuzzy, fuzzyKeyword); + exactQuery = getExactQuery(fieldNameExact, exactKeyword); + } + } + if (fuzzyQuery != null) { + booleanQueryFieldBuilder.add(fuzzyQuery, BooleanClause.Occur.SHOULD); + } + if (exactQuery != null) { + booleanQueryFieldBuilder.add(exactQuery, BooleanClause.Occur.SHOULD); + } + return booleanQueryFieldBuilder; + } + + private Query getMultipleKeywordsQuery(SearchDTO searchDTO, String exactKeyword) { + if (exactKeyword.contains(" ") && (BooleanUtil.isTrue(searchDTO.getIncludeFileName()) || BooleanUtil.isTrue(searchDTO.getIncludeTagName()))) { + BooleanQuery.Builder nameAndTagMultipleWordsQueryBuilder = new BooleanQuery.Builder(); + for (String key : exactKeyword.split(" ")) { + + if (BooleanUtil.isTrue(searchDTO.getIncludeFileName())) { + Query filenameQuery = getExactQuery(LuceneService.FIELD_FILENAME_NGRAM, key); + nameAndTagMultipleWordsQueryBuilder.add(filenameQuery, BooleanClause.Occur.SHOULD); + } + if (BooleanUtil.isTrue(searchDTO.getIncludeTagName())) { + Query tagNameQuery = getExactQuery(LuceneService.FIELD_TAG_NAME_NGRAM, key); + nameAndTagMultipleWordsQueryBuilder.add(tagNameQuery, BooleanClause.Occur.SHOULD); + } + + } + return nameAndTagMultipleWordsQueryBuilder.build(); + } + return null; + } + + private Query getFuzzyQuery(String fieldNameFuzzy, String fuzzyKeyword) throws ParseException { + Query contentQuery; + QueryParser contentParser = new QueryParser(fieldNameFuzzy, analyzer); + contentParser.setDefaultOperator(QueryParser.Operator.AND); + contentQuery = contentParser.parse(QueryParser.escape(fuzzyKeyword.trim())); + return contentQuery; + } + + private Query getExactQuery(String fieldName, String exactSearchTerm) { + Query contentQuery; + if (CharSequenceUtil.isBlank(exactSearchTerm)) { + contentQuery = new MatchNoDocsQuery(); + } else if (exactSearchTerm.length() <= fileProperties.getNgramMaxSize()) { + Term term = new Term(fieldName, exactSearchTerm); + contentQuery = new TermQuery(term); + } else { + // 如果用户输入长度大于 maxGramSize,则分解查询字符串 + BooleanQuery.Builder decomposedQueryBuilder = new BooleanQuery.Builder(); + boolean hasValidSubTerms = false; + + // 生成重叠的、长度为 maxGram 的子串 + // 滑动窗口:从索引 0 开始,每次取长度为 maxGram 的子串,然后窗口向右移动一个字符 + for (int i = 0; i <= exactSearchTerm.length() - fileProperties.getNgramMaxSize(); i++) { + String subTerm = exactSearchTerm.substring(i, i + fileProperties.getNgramMaxSize()); + if (CharSequenceUtil.isNotBlank(subTerm)) { // 理论上 subTerm 不会为空,但作为防御 + decomposedQueryBuilder.add(new TermQuery(new Term(fieldName, subTerm)), BooleanClause.Occur.MUST); + hasValidSubTerms = true; + } + } + if (hasValidSubTerms) { + contentQuery = decomposedQueryBuilder.build(); + log.debug("{} 精确子串搜索 (长查询分解后): {}", fieldName, contentQuery.toString()); + } else { + // 如果分解后没有有效的子查询(例如,原始字符串非常特殊或maxGram设置不当导致无法分解) + // 虽然理论上 exactSearchTerm.length() > maxGram 应该总能分解出至少一个,但作为防御 + contentQuery = new MatchNoDocsQuery(); + } + } + return contentQuery; + } + + private static BooleanQuery getOtherOption(SearchDTO searchDTO) { + BooleanQuery.Builder otherOptionBuilder = new BooleanQuery.Builder(); + // 文件类型 + if (CharSequenceUtil.isNotBlank(searchDTO.getType())) { + otherOptionBuilder.add(new TermQuery(new Term("type", searchDTO.getType())), BooleanClause.Occur.MUST); + } + + // 是否文件夹 + if (searchDTO.getIsFolder() != null) { + otherOptionBuilder.add(IntPoint.newExactQuery("isFolder", searchDTO.getIsFolder() ? 1 : 0), BooleanClause.Occur.MUST); + } + + // 更新时间范围查询 + if (searchDTO.getModifyStart() != null || searchDTO.getModifyEnd() != null) { + long start = searchDTO.getModifyStart() != null ? searchDTO.getModifyStart() : Long.MIN_VALUE; + long end = searchDTO.getModifyEnd() != null ? searchDTO.getModifyEnd() : Long.MAX_VALUE; + otherOptionBuilder.add(NumericDocValuesField.newSlowRangeQuery("modified", start, end), BooleanClause.Occur.MUST); + } + + // 文件大小范围查询 + if (searchDTO.getSizeMin() != null || searchDTO.getSizeMax() != null) { + long minSize = searchDTO.getSizeMin() != null ? searchDTO.getSizeMin() : Long.MIN_VALUE; + long maxSize = searchDTO.getSizeMax() != null ? searchDTO.getSizeMax() : Long.MAX_VALUE; + otherOptionBuilder.add(NumericDocValuesField.newSlowRangeQuery("size", minSize, maxSize), BooleanClause.Occur.MUST); + } + return otherOptionBuilder.build(); + } + + /** + * 获取挂载点查询 + * + * @param searchDTO searchDTO + * @param combinedQuery 共用查询 + * @return mountQueryBuilder + */ + private BooleanQuery getMountQueryBuilder(SearchDTO searchDTO, BooleanQuery combinedQuery, BooleanQuery otherQuery) { + BooleanQuery.Builder mountQueryBuilder; + if (BooleanUtil.isTrue(searchDTO.getSearchMount()) || searchDTO.onlySearchMount()) { + mountQueryBuilder = new BooleanQuery.Builder(); + org.springframework.data.mongodb.core.query.Query query = new org.springframework.data.mongodb.core.query.Query(); + query.addCriteria(Criteria.where("userId").is(searchDTO.getUserId())); + query.addCriteria(Criteria.where("mountFileId").exists(true)); + query.fields().exclude("content"); + query.fields().exclude("video"); + query.fields().exclude("music"); + query.fields().exclude("contentText"); + query.fields().exclude("exif"); + List fileDocumentList = mongoTemplate.find(query, FileDocument.class); + fileDocumentList.parallelStream().forEach(fileDocument -> { + BooleanQuery.Builder mountQueryBuilderItem = new BooleanQuery.Builder(); + org.springframework.data.mongodb.core.query.Query query1 = new org.springframework.data.mongodb.core.query.Query(); + query1.fields().include("userId"); + query1.fields().include("path"); + query1.fields().include("name"); + FileDocument fileBase = mongoTemplate.findById(fileDocument.getMountFileId(), FileDocument.class); + if (fileBase != null) { + // userId + mountQueryBuilderItem.add(new TermQuery(new Term(IUserService.USER_ID, fileBase.getUserId())), BooleanClause.Occur.MUST); + // path + mountQueryBuilderItem.add(getPathQueryBuilder(fileBase.getPath() + fileBase.getName()), BooleanClause.Occur.MUST); + // other + mountQueryBuilderItem.add(combinedQuery, BooleanClause.Occur.MUST); + if (!otherQuery.clauses().isEmpty()) { + mountQueryBuilderItem.add(otherQuery, BooleanClause.Occur.MUST); + } + } + mountQueryBuilder.add(mountQueryBuilderItem.build(), BooleanClause.Occur.SHOULD); + }); + } else { + mountQueryBuilder = null; + } + return mountQueryBuilder == null ? null : mountQueryBuilder.build(); + } + + /** + * 查询前置处理 + * + * @param searchDTO searchDTO + */ + private void beforeQuery(SearchDTO searchDTO) { + String folder = searchDTO.getFolder(); + if (CharSequenceUtil.isNotBlank(folder)) { + // 挂载点查询 + org.springframework.data.mongodb.core.query.Query query = new org.springframework.data.mongodb.core.query.Query(); + query.addCriteria(Criteria.where("_id").is(folder)); + FileDocument fileDocument = mongoTemplate.findOne(query, FileDocument.class); + if (fileDocument != null && BooleanUtil.isFalse(searchDTO.getSearchOverall())) { + searchDTO.setCurrentDirectory(fileDocument.getPath() + fileDocument.getName()); + searchDTO.setMountUserId(fileDocument.getUserId()); + } + } + } + + + private void otherQueryParams(SearchDTO searchDTO, BooleanQuery.Builder builder) { + boolean queryPath = CharSequenceUtil.isNotBlank(searchDTO.getCurrentDirectory()) && searchDTO.getCurrentDirectory().length() > 1; + + if (queryPath) { + builder.add(getPathQueryBuilder(searchDTO.getCurrentDirectory()), BooleanClause.Occur.MUST); + } + + // 标签 + if (searchDTO.getTagId() != null) { + TagDO tagDO = tagService.getTagInfo(searchDTO.getTagId()); + if (tagDO != null) { + builder.add(new TermQuery(new Term(FIELD_TAG_NAME_FUZZY, tagDO.getName())), BooleanClause.Occur.MUST); + } + } + + // 是否收藏 + if (searchDTO.getIsFavorite() != null && !queryPath) { + builder.add(IntPoint.newExactQuery(Constants.IS_FAVORITE, searchDTO.getIsFavorite() ? 1 : 0), BooleanClause.Occur.MUST); + } + } + + private static BooleanQuery getPathQueryBuilder(String path) { + // 检查path最后一个字符是否有/, 如果没有,则添加 + path = path.endsWith("/") ? path : path + "/"; + BooleanQuery.Builder pathQueryBuilder = new BooleanQuery.Builder(); + Term pathTerm = new Term("path", path); + PrefixQuery prefixQuery = new PrefixQuery(pathTerm); + pathQueryBuilder.add(new TermQuery(pathTerm), BooleanClause.Occur.SHOULD); + pathQueryBuilder.add(prefixQuery, BooleanClause.Occur.SHOULD); + return pathQueryBuilder.build(); + } + + public List getFileIntroVOs(List fileIdList) { + List objectIds = fileIdList.stream() + .filter(ObjectId::isValid) + .map(ObjectId::new) + .toList(); + List pipeline = Arrays.asList(new org.bson.Document("$match", + new org.bson.Document("_id", + new org.bson.Document("$in", objectIds))), + new org.bson.Document("$project", new org.bson.Document("order", 0L).append("contentText", 0L).append("content", 0L)), + new org.bson.Document("$addFields", + new org.bson.Document("order", + new org.bson.Document("$indexOfArray", Arrays.asList(objectIds, "$_id")))), + new org.bson.Document("$sort", + new org.bson.Document("order", 1L)) + ); + + AggregateIterable aggregateIterable = mongoTemplate.getCollection(COLLECTION_NAME).aggregate(pipeline); + + List results = new ArrayList<>(); + for (org.bson.Document document : aggregateIterable) { + FileIntroVO fileIntroVO = mongoTemplate.getConverter().read(FileIntroVO.class, document); + results.add(fileIntroVO); + } + return results; + } + +} diff --git a/src/main/java/com/jmal/clouddisk/lucene/TaskProgress.java b/src/main/java/com/jmal/clouddisk/lucene/TaskProgress.java new file mode 100644 index 0000000..6e16b90 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/lucene/TaskProgress.java @@ -0,0 +1,42 @@ +package com.jmal.clouddisk.lucene; + +import lombok.Data; + +@Data +public class TaskProgress { + /** + * 任务id + */ + private String taskId; + /** + * 任务类型 + */ + private TaskType taskType; + /** + * 任务类型 taskType.getType() + */ + private String type; + /** + * 任务名称 + */ + private String name; + /** + * 文件路径 + */ + private String path; + /** + * 任务状态 + */ + private String progress; + private String username; + + public TaskProgress(String taskId, String username, TaskType taskType, String name, String progress) { + this.taskId = taskId; + this.username = username; + this.taskType = taskType; + this.type = taskType.getType(); + this.name = name; + this.progress = progress; + } + +} diff --git a/src/main/java/com/jmal/clouddisk/lucene/TaskProgressService.java b/src/main/java/com/jmal/clouddisk/lucene/TaskProgressService.java new file mode 100644 index 0000000..14e11d1 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/lucene/TaskProgressService.java @@ -0,0 +1,117 @@ +package com.jmal.clouddisk.lucene; + +import cn.hutool.crypto.SecureUtil; +import com.jmal.clouddisk.service.impl.CommonFileService; +import com.jmal.clouddisk.service.impl.UserServiceImpl; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +import java.io.File; +import java.util.List; +import java.util.Map; +import java.util.concurrent.ConcurrentSkipListMap; + +@Service +@RequiredArgsConstructor +@Slf4j +public class TaskProgressService { + + private final CommonFileService commonFileService; + + private final UserServiceImpl userService; + + private final static Map TASK_PROGRESS_MAP = new ConcurrentSkipListMap<>(); + + private final static String MSG_TASK_PROGRESS = "taskProgress"; + + private final static String MSG_TRANSCODE_STATUS = "transcodeStatus"; + + private String defaultUsername; + + public List getTaskProgressList() { + return List.copyOf(TASK_PROGRESS_MAP.values()); + } + + /** + * 更新转码状态 + * @param transcodeStatus 转码状态 + */ + public void pushTranscodeStatus(Map transcodeStatus) { + commonFileService.pushMessage(getDefaultUsername(), transcodeStatus, MSG_TRANSCODE_STATUS); + } + + /** + * 添加任务进度 + * @param file 文件 + * @param taskType 任务类型 + * @param progress 进度 + */ + public void addTaskProgress(File file, TaskType taskType, String progress) { + getDefaultUsername(); + String taskId = getTaskId(file); + TaskProgress taskProgress; + if (checkTaskProgress(taskId)) { + taskProgress = getTaskProgress(taskId); + taskProgress.setProgress(progress); + } else { + String username = commonFileService.getUsernameByAbsolutePath(file.toPath()); + if (username == null) { + return; + } + taskProgress = new TaskProgress(taskId, username, taskType, file.getName(), progress); + taskProgress.setPath(commonFileService.getRelativePath(username, file.getAbsolutePath(), file.getName())); + } + addTaskProgress(taskProgress); + } + + /** + * 移除任务进度 + * @param file 文件 + */ + public void removeTaskProgress(File file) { + String taskId = getTaskId(file); + removeTaskProgress(taskId); + } + + private String getDefaultUsername() { + if (defaultUsername == null) { + defaultUsername = userService.getCreatorUsername(); + } + return defaultUsername; + } + + private static String getTaskId(File file) { + return SecureUtil.md5(file.getAbsoluteFile().toString()); + } + + private void removeTaskProgress(String taskId) { + if (checkTaskProgress(taskId)) { + TaskProgress taskProgress = getTaskProgress(taskId); + taskProgress.setProgress(null); + pushMessage(taskProgress); + TASK_PROGRESS_MAP.remove(taskId); + } + } + + private void addTaskProgress(TaskProgress taskProgress) { + TASK_PROGRESS_MAP.put(taskProgress.getTaskId(), taskProgress); + pushMessage(taskProgress); + } + + private boolean checkTaskProgress(String taskId) { + return TASK_PROGRESS_MAP.containsKey(taskId); + } + + private TaskProgress getTaskProgress(String taskId) { + return TASK_PROGRESS_MAP.get(taskId); + } + + private void pushMessage(TaskProgress taskProgress) { + if (!taskProgress.getUsername().equals(defaultUsername)) { + commonFileService.pushMessage(defaultUsername, taskProgress, MSG_TASK_PROGRESS); + } + commonFileService.pushMessage(taskProgress.getUsername(), taskProgress, MSG_TASK_PROGRESS); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/lucene/TaskType.java b/src/main/java/com/jmal/clouddisk/lucene/TaskType.java new file mode 100644 index 0000000..3e546b3 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/lucene/TaskType.java @@ -0,0 +1,24 @@ +package com.jmal.clouddisk.lucene; + +import lombok.Getter; + +/** + * 任务类型 + */ +@Getter +public enum TaskType { + /** + * OCR识别 + */ + OCR("OCR识别"), + /** + * 视频转码 + */ + TRANSCODE_VIDEO("视频转码"); + + private final String type; + + TaskType(String type) { + this.type = type; + } +} diff --git a/src/main/java/com/jmal/clouddisk/media/FFMPEGCommand.java b/src/main/java/com/jmal/clouddisk/media/FFMPEGCommand.java new file mode 100644 index 0000000..a5d59e4 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/media/FFMPEGCommand.java @@ -0,0 +1,320 @@ +package com.jmal.clouddisk.media; + +import cn.hutool.core.convert.Convert; +import cn.hutool.core.util.NumberUtil; +import com.alibaba.fastjson2.JSON; +import com.alibaba.fastjson2.JSONArray; +import com.alibaba.fastjson2.JSONObject; +import com.jmal.clouddisk.service.Constants; +import lombok.extern.slf4j.Slf4j; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.stream.Collectors; + +import static com.jmal.clouddisk.util.FFMPEGUtils.printErrorInfo; + +@Slf4j +public class FFMPEGCommand { + + /** + * 缩略图宽度 + */ + static final int thumbnailWidth = 192; + /** + * 获取视频的分辨率和码率信息 + * + * @param videoPath 视频路径 + * @return 视频信息 + */ + static VideoInfo getVideoInfo(String videoPath) { + try { + ProcessBuilder processBuilder = new ProcessBuilder( + "ffprobe", "-v", "error", "-select_streams", "v:0", "-show_format", "-show_streams", "-of", "json", videoPath); + Process process = processBuilder.start(); + try (InputStream inputStream = process.getInputStream(); + BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream))) { + String json = reader.lines().collect(Collectors.joining()); + JSONObject jsonObject = JSON.parseObject(json); + + // 获取视频格式信息 + JSONObject formatObject = jsonObject.getJSONObject("format"); + String format = formatObject.getString("format_name"); + + // 获取视频时长 + int duration = Convert.toInt(formatObject.get("duration")); + + // 获取视频流信息 + JSONArray streamsArray = jsonObject.getJSONArray("streams"); + if (!streamsArray.isEmpty()) { + JSONObject streamObject = streamsArray.getJSONObject(0); + int width = streamObject.getIntValue("width"); + int height = streamObject.getIntValue("height"); + int rotation = 0; + if (streamObject.containsKey("side_data_list")) { + for (int i = 0; i < streamObject.getJSONArray("side_data_list").size(); i++) { + JSONObject sideData = streamObject.getJSONArray("side_data_list").getJSONObject(i); + if (sideData.containsKey("rotation")) { + rotation = sideData.getIntValue("rotation"); + break; + } + } + } + // 转换rotation + + // 获取视频帧率信息 + String frameRateStr = streamObject.getString("r_frame_rate"); + double frameRate = parseFrameRate(frameRateStr); + + int bitrate = streamObject.getIntValue("bit_rate"); // bps + return new VideoInfo(videoPath, width, height, format, bitrate, duration, Math.abs(rotation), frameRate); + } + } + + int exitCode = process.waitFor(); + if (exitCode != 0) { + printErrorInfo(processBuilder, process); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } + return new VideoInfo(); + } + + /** + * 解析帧率字符串 + * + * @param frameRateStr 帧率字符串(形如 "30000/1001") + * @return 帧率 + */ + static double parseFrameRate(String frameRateStr) { + if (frameRateStr != null && frameRateStr.contains("/")) { + String[] parts = frameRateStr.split("/"); + if (parts.length == 2) { + try { + double numerator = Double.parseDouble(parts[0]); + double denominator = Double.parseDouble(parts[1]); + return NumberUtil.round(numerator / denominator, 2).doubleValue(); + } catch (NumberFormatException e) { + log.error("Failed to parse frame rate: {}", frameRateStr, e); + } + } + } + return 0.0; + } + + /** + * 合并缩略图 + * @param inputPattern 输入文件名格式 + * @param outputImage 输出图片 + * @param columns 列数 + * @param rows 行数 + * @return ProcessBuilder + */ + static ProcessBuilder mergeVTT(String inputPattern, String outputImage, int columns, int rows) { + ProcessBuilder processBuilder = new ProcessBuilder( + Constants.FFMPEG, + "-y", + "-i", inputPattern, + "-filter_complex", String.format("tile=%dx%d", columns, rows), + outputImage + ); + processBuilder.redirectErrorStream(true); + return processBuilder; + } + + /** + * 获取视频封面 + * @param videoPath 视频路径 + * @param outputPath 输出路径 + * @param videoDuration 视频时长 + * @return ProcessBuilder + */ + static ProcessBuilder getVideoCoverProcessBuilder(String videoPath, String outputPath, int videoDuration) { + int targetTimestamp = (int) (videoDuration * 0.1); + String formattedTimestamp = VideoInfoUtil.formatTimestamp(targetTimestamp, false); + log.debug("\r\nvideoPath: {}, formattedTimestamp: {}", videoPath, formattedTimestamp); + ProcessBuilder processBuilder = new ProcessBuilder( + Constants.FFMPEG, + "-y", + "-ss", formattedTimestamp, + "-i", videoPath, + "-vf", String.format("scale=%s:-2", thumbnailWidth), + "-frames:v", "1", + outputPath + ); + processBuilder.redirectErrorStream(true); + return processBuilder; + } + + static ProcessBuilder useVideotoolbox(String fileId, Path fileAbsolutePath, int bitrate, int height, String videoCacheDir, String outputPath, int vttInterval, String thumbnailPattern, double frameRate) { + return new ProcessBuilder( + Constants.FFMPEG, + "-hwaccel", "videotoolbox", + "-i", fileAbsolutePath.toString(), + "-c:v", "h264_videotoolbox", + "-profile:v", "main", + "-pix_fmt", "yuv420p", + "-level", "4.0", + "-start_number", "0", + "-hls_time", "10", + "-hls_list_size", "0", + "-vf", "scale=-2:" + height, + "-b:v", Convert.toStr(bitrate), + "-preset", "medium", + "-g", "48", + "-sc_threshold", "0", + "-r", String.format("%.2f", frameRate), + "-f", "hls", + "-hls_segment_filename", Paths.get(videoCacheDir, fileId + "-%03d.ts").toString(), + outputPath, + "-vf", String.format("scale=%s:-2,fps=1/%d", thumbnailWidth, vttInterval), + thumbnailPattern + ); + } + + static ProcessBuilder cpuTranscoding(String fileId, Path fileAbsolutePath, int bitrate, int height, String videoCacheDir, String outputPath, int vttInterval, String thumbnailPattern, double frameRate) { + + return new ProcessBuilder( + Constants.FFMPEG, + "-i", fileAbsolutePath.toString(), + "-profile:v", "main", + "-pix_fmt", "yuv420p", + "-level", "4.0", + "-start_number", "0", + "-hls_time", "10", + "-hls_list_size", "0", + "-vf", "scale=-2:" + height, + "-b:v", Convert.toStr(bitrate), + "-preset", "medium", + "-g", "48", + "-sc_threshold", "0", + "-r", String.format("%.2f", frameRate), + "-f", "hls", + "-hls_segment_filename", Paths.get(videoCacheDir, fileId + "-%03d.ts").toString(), + outputPath, + "-vf", String.format("scale=%s:-2,fps=1/%d", thumbnailWidth, vttInterval), + thumbnailPattern + ); + } + + static ProcessBuilder useNvencCuda(String fileId, Path fileAbsolutePath, int bitrate, int height, String videoCacheDir, String outputPath, double frameRate) { + // 使用CUDA硬件加速和NVENC编码器 + return new ProcessBuilder( + Constants.FFMPEG, + "-init_hw_device", "cuda=cu:0", + "-filter_hw_device", "cu", + "-hwaccel", "cuda", + "-hwaccel_output_format", "cuda", + "-threads", "1", + "-autorotate", "0", + "-i", fileAbsolutePath.toString(), + "-autoscale", "0", + "-map_metadata", "-1", + "-map_chapters", "-1", + "-threads", "0", + "-map", "0:0", + "-map", "0:1", + "-map", "-0:s", + "-codec:v:0", "h264_nvenc", + "-preset", "p1", + "-b:v", Convert.toStr(bitrate), + "-maxrate", Convert.toStr(bitrate), + "-bufsize", "5643118", + "-g:v:0", "180", + "-keyint_min:v:0", "180", + "-vf", "setparams=color_primaries=bt709:color_trc=bt709:colorspace=bt709,scale_cuda=-2:" + height + ":format=yuv420p", + "-codec:a:0", "copy", + "-copyts", + "-avoid_negative_ts", "disabled", + "-max_muxing_queue_size", "2048", + "-r", String.format("%.2f", frameRate), + "-f", "hls", + "-max_delay", "5000000", + "-hls_time", "3", + "-hls_segment_type", "mpegts", + "-start_number", "0", + "-y", + "-hls_segment_filename", Paths.get(videoCacheDir, fileId + "-%03d.ts").toString(), + "-hls_playlist_type", "vod", + "-hls_list_size", "0", + outputPath + ); + } + static ProcessBuilder useNvencCudaVtt(Path fileAbsolutePath, int vttInterval, String thumbnailPattern) { + // 使用CUDA硬件加速和NVENC编码器 + return new ProcessBuilder( + Constants.FFMPEG, + "-init_hw_device", "cuda=cu:0", + "-filter_hw_device", "cu", + "-i", fileAbsolutePath.toString(), + "-y", + "-vf", String.format("scale=%s:-2,fps=1/%d", thumbnailWidth, vttInterval), + "-vsync", "vfr", + thumbnailPattern + ); + } + + /** + * 检测是否装有Mac Apple Silicon + */ + static boolean checkMacAppleSilicon() { + try { + Process process = Runtime.getRuntime().exec("ffmpeg -hwaccels"); + BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream())); + String line; + while ((line = reader.readLine()) != null) { + if (line.contains("videotoolbox")) { + return true; + } + } + } catch (IOException e) { + return false; + } + return false; + } + + /** + * 检测是否装有NVIDIA显卡驱动 + */ + static boolean checkNvidiaDrive() { + try { + Process process = Runtime.getRuntime().exec("nvidia-smi"); + BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream())); + String line; + while ((line = reader.readLine()) != null) { + if (line.contains("Version")) { + return true; + } + } + } catch (IOException e) { + return false; + } + return false; + } + + /** + * 检查是否没有ffmpeg + * @return true: 没有ffmpeg + */ + public static boolean hasNoFFmpeg() { + try { + Process process = Runtime.getRuntime().exec("ffmpeg -version"); + BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream())); + String line; + while ((line = reader.readLine()) != null) { + if (line.contains("ffmpeg version")) { + return false; + } + } + return true; + } catch (IOException e) { + log.error(e.getMessage(), e); + } + return true; + } +} diff --git a/src/main/java/com/jmal/clouddisk/media/FFMPEGUtils.java b/src/main/java/com/jmal/clouddisk/media/FFMPEGUtils.java new file mode 100644 index 0000000..981c4dd --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/media/FFMPEGUtils.java @@ -0,0 +1,126 @@ +package com.jmal.clouddisk.media; + +import cn.hutool.core.util.BooleanUtil; +import cn.hutool.core.util.NumberUtil; +import lombok.extern.slf4j.Slf4j; + +import java.io.BufferedWriter; +import java.io.FileWriter; +import java.io.IOException; + +@Slf4j +public class FFMPEGUtils { + + /** + * h5播放器支持的视频格式 + */ + private static final String[] WEB_SUPPORTED_FORMATS = {"mp4", "webm", "ogg", "flv", "hls", "mkv"}; + + /** + * 获取VTT文件间隔 + * + * @param videoInfo 视频信息 + * @param vttThumbnailCount 期望的缩略图数量 + * @return VTT文件间隔 + */ + static int getVttInterval(VideoInfo videoInfo, Integer vttThumbnailCount) { + // 期望的缩略图数量默认为60张 + int videoDuration = videoInfo.getDuration(); + // 计算缩略图间隔 + if (videoDuration <= vttThumbnailCount) { + return 1; + } + return videoDuration / vttThumbnailCount; + } + + /** + * 生成VTT文件 + * @param videoInfo 视频信息 + * @param interval 缩略图间隔 + * @param vttFilePath VTT文件路径 + * @param thumbnailImagePath 最终缩略图路径 + */ + static void generateVTT(VideoInfo videoInfo, int interval, String vttFilePath, String thumbnailImagePath, int columns) { + try (BufferedWriter writer = new BufferedWriter(new FileWriter(vttFilePath))) { + writer.write("WEBVTT\n\n"); + int expectedThumbnails = videoInfo.getDuration() / interval; + for (int i = 0; i < expectedThumbnails; i++) { + String startTime = VideoInfoUtil.formatTimestamp(i * interval, true); + String endTime = VideoInfoUtil.formatTimestamp((i + 1) * interval, true); + + int column = i % columns; + int row = i / columns; + int thumbWidth = FFMPEGCommand.thumbnailWidth; + double tHeight = (double) videoInfo.getHeight() / ((double) videoInfo.getWidth() / FFMPEGCommand.thumbnailWidth); + int thumbHeight = (int) Math.floor(tHeight); + int x = column * thumbWidth; + int y = row * thumbHeight; + + writer.write(String.format("%s --> %s\n", startTime, endTime)); + writer.write(String.format("%s#xywh=%d,%d,%d,%d\n\n", thumbnailImagePath, x, y, thumbWidth, thumbHeight)); + } + } catch (IOException e) { + log.warn(e.getMessage(), e); + } + } + + /** + * 判断是否需要转码 + * + * @param videoInfo 视频信息 + * @return 是否需要转码 + */ + static boolean needTranscode(VideoInfo videoInfo, TranscodeConfig transcodeConfig) { + if (BooleanUtil.isFalse(transcodeConfig.getEnable())) { + return false; + } + // 判断视频码率、高度、帧率是否满足转码条件 + boolean bitrateCond = videoInfo.getBitrate() > 0 && videoInfo.getBitrate() <= transcodeConfig.getBitrateCond(); + boolean heightCond = videoInfo.getHeight() > 0 && videoInfo.getHeight() <= transcodeConfig.getHeightCond(); + boolean frameRateCond = videoInfo.getFrameRate() > 0 && videoInfo.getFrameRate() <= transcodeConfig.getFrameRateCond(); + if (bitrateCond && heightCond && frameRateCond) { + // 都不满足, 则判断视频格式是否为HTML5 Video Player支持的格式, 不支持则需要转码 + return !isSupportedFormat(videoInfo.getFormat()); + } + return true; + } + + /** + * 判断视频格式是否为HTML5 Video Player支持的格式 + * + * @param format 视频格式 + * @return 是否支持 + */ + static boolean isSupportedFormat(String format) { + // HTML5 Video Player支持的视频格式 + String[] formatList = format.split(","); + for (String f : formatList) { + for (String supportedFormat : WEB_SUPPORTED_FORMATS) { + if (f.trim().equalsIgnoreCase(supportedFormat)) { + return true; + } + } + } + return false; + } + + /** + * 获取转码进度 + * @param videoDuration 视频时长 + * @param line 命令输出信息 + * @return 转码进度 + */ + static double getProgressStr(int videoDuration, String line) { + String[] parts = line.split("time=")[1].split(" ")[0].split(":"); + int hours = Integer.parseInt(parts[0]); + int minutes = Integer.parseInt(parts[1]); + int seconds = Integer.parseInt(parts[2].split("\\.")[0]); + int totalSeconds = hours * 3600 + minutes * 60 + seconds; + // 计算转码进度百分比 + double progress = (double) totalSeconds / videoDuration * 100; + if (progress > 100) { + progress = 100; + } + return NumberUtil.round(progress, 2).doubleValue(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/media/HeifUtils.java b/src/main/java/com/jmal/clouddisk/media/HeifUtils.java new file mode 100644 index 0000000..3370d1f --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/media/HeifUtils.java @@ -0,0 +1,122 @@ +package com.jmal.clouddisk.media; + +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.io.file.PathUtil; +import com.jmal.clouddisk.service.Constants; +import lombok.extern.slf4j.Slf4j; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +import static com.jmal.clouddisk.util.FFMPEGUtils.getWaitingForResults; + +@Slf4j +public class HeifUtils { + + /** + * 将heic转换为jpg + */ + public static String heifConvert(String inputPath, Path outputParentPath) { + if (!checkHeif()) { + return null; + } + Path filepath = Paths.get(inputPath + ".jpg"); + String outputPath = Paths.get(outputParentPath.toString(), filepath.getFileName().toString()).toString(); + if (FileUtil.exist(outputPath)) { + return outputPath; + } + try { + ProcessBuilder processBuilder = heifConvert(inputPath, outputPath); + Process process = processBuilder.start(); + StringBuilder output = printProcessInfo(process); + outputPath = getWaitingForResults(outputPath, processBuilder, process); + + delAuxiliaryImagePath(output); + + // 打印命令 用空格连接 + String command = String.join(" ", processBuilder.command()); + log.info("heif-convert 执行成功, command: \r\n{}", command); + + if (outputPath != null) { + PathUtil.move(Path.of(outputPath), filepath, true); + return filepath.toString(); + } + } catch (InterruptedException e) { + log.error(e.getMessage(), e); + return null; + } catch (IOException e) { + log.error(e.getMessage(), e); + } + return null; + } + + /** + * 删除辅助图像文件 + * @param output process输出 + */ + private static void delAuxiliaryImagePath(StringBuilder output) { + // 解析输出,查找辅助图像文件名, 并删除 + String auxiliaryImagePath = null; + Pattern pattern = Pattern.compile("Auxiliary image written to (.+)"); + Matcher matcher = pattern.matcher(output.toString()); + if (matcher.find()) { + auxiliaryImagePath = matcher.group(1); + } + if (auxiliaryImagePath != null) { + FileUtil.del(auxiliaryImagePath); + } + } + + /** + * 将heic转换为jpg + * @param filepath heic文件绝对路径 + * @return ProcessBuilder + */ + private static ProcessBuilder heifConvert(String filepath, String outputPath) { + ProcessBuilder processBuilder = new ProcessBuilder( + Constants.HEIF_CONVERT, + filepath, + outputPath + ); + processBuilder.redirectErrorStream(true); + return processBuilder; + } + + public static StringBuilder printProcessInfo(Process process) throws IOException { + StringBuilder output = new StringBuilder(); + try (InputStream inputStream = process.getInputStream(); + BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream))) { + String line; + while ((line = reader.readLine()) != null) { + output.append(line).append("\n"); + } + } + return output; + } + + /** + * 检查是否安装了heif-convert + */ + private static boolean checkHeif() { + try { + Process process = Runtime.getRuntime().exec(Constants.HEIF_CONVERT); + BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream())); + String line; + while ((line = reader.readLine()) != null) { + if (line.contains("output")) { + return true; + } + } + return true; + } catch (IOException e) { + log.error(e.getMessage(), e); + } + return false; + } +} diff --git a/src/main/java/com/jmal/clouddisk/media/TranscodeConfig.java b/src/main/java/com/jmal/clouddisk/media/TranscodeConfig.java new file mode 100644 index 0000000..ea6e994 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/media/TranscodeConfig.java @@ -0,0 +1,124 @@ +package com.jmal.clouddisk.media; + +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.Max; +import jakarta.validation.constraints.Min; +import lombok.Data; +import org.springframework.data.mongodb.core.mapping.Document; + +/** + * 转码配置 + */ +@Data +@Document(collection = "transcodeConfig") +@Valid +@Schema +public class TranscodeConfig { + + @Schema(description = "是否启用转码, 默认开启") + private Boolean enable; + + @Max(value = 8, message = "最大任务数不能超过8") + @Min(value = 1, message = "最大任务数不能小于1") + @Schema(description = "最大任务数, 最多同时处理的转码任务数, 默认为1") + private Integer maxThreads; + + @Max(value = 1000000, message = "码率不能超过 1000000 kbps") + @Min(value = 100, message = "码率不能低于 100 kbps") + @Schema(description = "转码条件: 视频码率(kbps), 默认 2500 kbps, 小于该值则不转码") + private Integer bitrateCond; + + @Max(value = 10000, message = "高度不能超过 10000") + @Min(value = 100, message = "高度不能低于 100") + @Schema(description = "转码条件: 视频高度(视频宽度, 默认随高度等比例缩放), 默认 720, 小于该值则不转码") + private Integer heightCond; + + @Max(value = 120, message = "目标帧率不能超过 120") + @Min(value = 1, message = "目标帧率不能低于 1") + @Schema(description = "转码条件: 视频帧率, 默认 30 fps, 小于该值则不转码") + private Integer frameRateCond; + + @Max(value = 1000000, message = "码率不能超过 1000000 kbps") + @Min(value = 100, message = "码率不能低于 100 kbps") + @Schema(description = "转码后的视频码率(kbps), 默认 2500 kbps") + private Integer bitrate; + + @Max(value = 10000, message = "高度不能超过 10000") + @Min(value = 100, message = "高度不能低于 100") + @Schema(description = "转码后的视频高度(视频宽度, 默认随高度等比例缩放), 默认 720") + private Integer height; + + @Max(value = 120, message = "目标帧率不能超过 120") + @Min(value = 1, message = "目标帧率不能低于 1") + @Schema(description = "转码后的视频帧率, 默认 30 fps") + private Double frameRate; + + @Max(value = 256, message = "缩略图数量超过 256") + @Min(value = 1, message = "缩略图数量不能低于 1") + @Schema(description = "vtt缩略图数量, 默认 60 张") + private Integer vttThumbnailCount; + + @Schema(description = "是否重新转码, 转码参数变化后对已经转码过的视频重新转码, 默认开启") + private Boolean isReTranscode; + + public Boolean getEnable() { + if (enable == null) + return true; + return enable; + } + + public Integer getHeight() { + if (height == null) + return 720; + return height; + } + + public Integer getBitrate() { + if (bitrate == null) + return 2500; + return bitrate; + } + + public Double getFrameRate() { + if (frameRate == null) + return 30.0; + return frameRate; + } + + public Integer getMaxThreads() { + if (maxThreads == null) + return 1; + return maxThreads; + } + + public Integer getBitrateCond() { + if (bitrateCond == null) + return 2500; + return bitrateCond; + } + + public Integer getHeightCond() { + if (heightCond == null) + return 720; + return heightCond; + } + + public Integer getFrameRateCond() { + if (frameRateCond == null) + return 30; + return frameRateCond; + } + + public Integer getVttThumbnailCount() { + if (vttThumbnailCount == null) + return 60; + return vttThumbnailCount; + } + + public Boolean getIsReTranscode() { + if (isReTranscode == null) + return true; + return isReTranscode; + } +} diff --git a/src/main/java/com/jmal/clouddisk/media/TranscodeStatus.java b/src/main/java/com/jmal/clouddisk/media/TranscodeStatus.java new file mode 100644 index 0000000..a7337d1 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/media/TranscodeStatus.java @@ -0,0 +1,29 @@ +package com.jmal.clouddisk.media; + +import lombok.Getter; + +/** + * 转码状态 + */ +@Getter +public enum TranscodeStatus { + /** + * 待转码 + */ + NOT_TRANSCODE(0), + /** + * 正在进行转码 + */ + TRANSCODING(1), + /** + * 已完成转码 + */ + TRANSCENDED(2); + + private final int status; + + TranscodeStatus(int status) { + this.status = status; + } + +} diff --git a/src/main/java/com/jmal/clouddisk/media/VideoInfo.java b/src/main/java/com/jmal/clouddisk/media/VideoInfo.java new file mode 100644 index 0000000..2e9531f --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/media/VideoInfo.java @@ -0,0 +1,83 @@ +package com.jmal.clouddisk.media; + +import cn.hutool.core.util.StrUtil; +import lombok.Data; +import lombok.extern.slf4j.Slf4j; + +@Data +@Slf4j +public class VideoInfo { + private Integer width; + private Integer height; + private Integer bitrate; + private String format; + private Double frameRate; + private Integer duration; + private String covertPath; + /** + * 视频旋转角度 + */ + private Integer rotation; + + /** + * 转码后的视频高度 + */ + private Integer toHeight; + /** + * 转码后的视频码率 + */ + private Integer toBitrate; + /** + * 转码后的视频帧率 + */ + private Double toFrameRate; + + public VideoInfo() { + this.width = 0; + this.height = 0; + this.frameRate = 0.0; + this.format = ""; + this.bitrate = 0; + this.duration = 0; + } + + public VideoInfo(String videoPath, int width, int height, String format, int bitrate, int duration, int rotation, double frameRate) { + if (rotation == 90 || rotation == 270) { + this.width = height; + this.height = width; + } else { + this.width = width; + this.height = height; + } + this.format = format; + this.bitrate = bitrate; + this.duration = duration; + this.frameRate = frameRate; + this.rotation = rotation; + log.debug("\r\nvideoPath: {}, width: {}, height: {}, format: {}, bitrate: {}, duration: {}", videoPath, width, height, format, bitrate, duration); + } + + public VideoInfoDO toVideoInfoDO() { + VideoInfoDO videoInfoDO = new VideoInfoDO(); + if (this.bitrate > 0) { + videoInfoDO.setBitrateNum(this.bitrate); + videoInfoDO.setBitrate(VideoInfoUtil.convertBitrateToReadableFormat(this.bitrate)); + } + if (StrUtil.isNotBlank(this.format)) { + videoInfoDO.setFormat(this.format); + } + if (this.duration > 0) { + videoInfoDO.setDurationNum(this.duration); + videoInfoDO.setDuration(VideoInfoUtil.formatTimestamp(this.duration, false)); + } + if (this.height > 0 && this.width > 0) { + videoInfoDO.setHeight(this.height); + videoInfoDO.setWidth(this.width); + } + if (this.frameRate > 0) { + videoInfoDO.setFrameRate(this.frameRate); + } + return videoInfoDO; + } + +} diff --git a/src/main/java/com/jmal/clouddisk/media/VideoInfoDO.java b/src/main/java/com/jmal/clouddisk/media/VideoInfoDO.java new file mode 100644 index 0000000..c669dbe --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/media/VideoInfoDO.java @@ -0,0 +1,46 @@ +package com.jmal.clouddisk.media; + +import lombok.Data; + +@Data +public class VideoInfoDO { + private Integer width; + private Integer height; + /** + * 视频码率 + */ + private String bitrate; + /** + * 视频码率数值 + */ + private Integer bitrateNum; + /** + * 视频格式 + */ + private String format; + /** + * 视频帧率 + */ + private Double frameRate; + /** + * 视频时长 + */ + private String duration; + /** + * 视频时长数值(秒) + */ + private Integer durationNum; + + /** + * 转码后的视频高度 + */ + private Integer toHeight; + /** + * 转码后的视频码率 + */ + private Integer toBitrate; + /** + * 转码后的视频帧率 + */ + private Double toFrameRate; +} diff --git a/src/main/java/com/jmal/clouddisk/media/VideoInfoUtil.java b/src/main/java/com/jmal/clouddisk/media/VideoInfoUtil.java new file mode 100644 index 0000000..379c356 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/media/VideoInfoUtil.java @@ -0,0 +1,46 @@ +package com.jmal.clouddisk.media; + +public class VideoInfoUtil { + + /** + * 将比特率转换为可读的格式 + * @param bitrate 比特率 + * @return 可读的比特率格式 + */ + public static String convertBitrateToReadableFormat(long bitrate) { + if (bitrate < 1000) { + return bitrate + " bps"; + } else if (bitrate < 1000000) { + return String.format("%.2f Kbps", bitrate / 1000.0); + } else { + return String.format("%.2f Mbps", bitrate / 1000000.0); + } + } + + /** + * 将视频时长换为可读的格式 + * @param timestamp 视频时长(秒) + * @param milliseconds 是否包含毫秒 + * @return 可读的视频时长格式 + */ + public static String formatTimestamp(int timestamp, boolean milliseconds) { + int hours = timestamp / 3600; + int minutes = (timestamp % 3600) / 60; + int seconds = timestamp % 60; + if (milliseconds) { + return String.format("%02d:%02d:%02d.000", hours, minutes, seconds); + } else { + return String.format("%02d:%02d:%02d", hours, minutes, seconds); + } + } + + public static void main(String[] args) { + long bitrate = 200000; // 示例比特率 + String readableBitrate = convertBitrateToReadableFormat(bitrate); + System.out.println("可读的比特率格式为: " + readableBitrate); + int duration = 3600; // 示例视频时长 + String readableDuration = formatTimestamp(duration, false); + System.out.println("可读的视频时长格式为: " + readableDuration); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/media/VideoProcessService.java b/src/main/java/com/jmal/clouddisk/media/VideoProcessService.java new file mode 100644 index 0000000..ae41144 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/media/VideoProcessService.java @@ -0,0 +1,733 @@ +package com.jmal.clouddisk.media; + +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.thread.ThreadUtil; +import cn.hutool.core.util.BooleanUtil; +import cn.hutool.core.util.ObjectUtil; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.lucene.TaskProgressService; +import com.jmal.clouddisk.lucene.TaskType; +import com.jmal.clouddisk.model.FileDocument; +import com.jmal.clouddisk.oss.IOssService; +import com.jmal.clouddisk.oss.OssConfigService; +import com.jmal.clouddisk.oss.web.WebOssService; +import com.jmal.clouddisk.service.Constants; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.service.impl.CommonFileService; +import com.jmal.clouddisk.util.CaffeineUtil; +import com.mongodb.client.AggregateIterable; +import com.mongodb.client.result.UpdateResult; +import jakarta.annotation.PostConstruct; +import jakarta.annotation.PreDestroy; +import jakarta.annotation.Resource; +import lombok.extern.slf4j.Slf4j; +import org.bson.Document; +import org.bson.conversions.Bson; +import org.jetbrains.annotations.NotNull; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.data.mongodb.core.query.Update; +import org.springframework.stereotype.Service; + +import java.io.*; +import java.net.URL; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.*; +import java.util.concurrent.*; +import java.util.concurrent.atomic.AtomicInteger; +import java.util.concurrent.locks.ReentrantLock; + +import static com.jmal.clouddisk.util.FFMPEGUtils.*; + +@Service +@Lazy +@Slf4j +public class VideoProcessService { + + @Autowired + private FileProperties fileProperties; + + @Autowired + private IUserService userService; + + @Autowired + private CommonFileService commonFileService; + + @Autowired + private TaskProgressService taskProgressService; + + @Resource + MongoTemplate mongoTemplate; + + /** + * 视频转码线程池 + */ + private ExecutorService videoTranscodingService; + + /** + * 视频转码任务 + */ + private final static Map> videoTranscodingTasks = new ConcurrentHashMap<>(); + private final static Set processesTasks = new CopyOnWriteArraySet<>(); + + /** + * 添加转码任务线程池 + */ + private ExecutorService addTranscodingTaskService; + + /** + * 正在转码的视频文件数 + */ + private final static AtomicInteger transcodingCount = new AtomicInteger(0); + + /** + * 等待转码的视频文件数 + */ + private final static AtomicInteger waitingTranscodingCount = new AtomicInteger(0); + + /** + * 处理待转码文件锁, 防止多次处理 + */ + private final ReentrantLock toBeTranscodeLock = new ReentrantLock(); + + private final static String TRANSCODE_VIDEO = "transcodeVideo"; + + @PostConstruct + public void init() { + getVideoTranscodingService(); + addTranscodingTaskService = ThreadUtil.newFixedExecutor(8, 40960, "addTranscodingTask", true); + } + + private void getVideoTranscodingService() { + TranscodeConfig transcodeConfig = getTranscodeConfig(); + int processors = transcodeConfig.getMaxThreads(); + synchronized (this) { + if (videoTranscodingService == null) { + createExecutor(processors); + return; + } + } + if (videoTranscodingService.isShutdown()) { + createExecutor(processors); + } else { + try { + videoTranscodingService.shutdown(); + if (!videoTranscodingService.awaitTermination(180, TimeUnit.MINUTES)) { + log.warn("等待转码超时, 尝试强制停止所有转码任务"); + videoTranscodingService.shutdownNow(); + } + } catch (InterruptedException e) { + videoTranscodingService.shutdownNow(); + Thread.currentThread().interrupt(); + } + createExecutor(processors); + } + } + + private void createExecutor(int processors) { + waitingTranscodingCount.set(0); + transcodingCount.set(0); + videoTranscodingService = ThreadUtil.newFixedExecutor(processors, 1, "videoTranscoding", true); + } + + /** + * 取消转码任务 + */ + public void cancelTranscodeTask() { + // 修改所有未转码的视频文件状态 + Query query = new Query(); + query.addCriteria(Criteria.where(TRANSCODE_VIDEO).is(TranscodeStatus.NOT_TRANSCODE.getStatus())); + Update update = new Update(); + update.unset(TRANSCODE_VIDEO); + mongoTemplate.updateMulti(query, update, CommonFileService.COLLECTION_NAME); + // 取消process任务 + processesTasks.forEach(p -> { + if (p.isAlive()) { + p.destroy(); + } + }); + processesTasks.clear(); + + // 取消转码任务 + videoTranscodingTasks.forEach((fileId, future) -> { + if (!future.isDone()) { + future.cancel(true); + } + }); + videoTranscodingTasks.clear(); + videoTranscodingService.shutdownNow(); + getVideoTranscodingService(); + // 等待 waitingTranscodingCount < 0 且 transcodingCount < 0 + while (waitingTranscodingCount.get() > 0 || transcodingCount.get() > 0) { + try { + TimeUnit.MILLISECONDS.sleep(50); + } catch (InterruptedException e) { + log.error(e.getMessage(), e); + Thread.currentThread().interrupt(); + } + } + // 更新转码状态 + taskProgressService.pushTranscodeStatus(getTranscodeStatus()); + } + + /** + * 设置转码配置 + * + * @param config TranscodeConfig + */ + public long setTranscodeConfig(TranscodeConfig config) { + if (config == null) { + return 0; + } + Query query = new Query(); + TranscodeConfig tc = mongoTemplate.findOne(query, TranscodeConfig.class); + if (tc == null) { + mongoTemplate.save(config); + } else { + Update update = getTranscodeConfigUpdate(config); + mongoTemplate.updateFirst(query, update, TranscodeConfig.class); + if (!ObjectUtil.equals(tc.getMaxThreads(), config.getMaxThreads())) { + // 重新加载转码线程池 + addTranscodingTaskService.execute(this::getVideoTranscodingService); + } + // 检查是否需要重新转码 + if (BooleanUtil.isTrue(config.getIsReTranscode())) { + // 检查转码参数是否变化 + return checkTranscodeConfigChange(config); + } + } + return 0; + } + + /** + * 检查转码参数是否变化 + * + * @param config 新参数 + */ + private long checkTranscodeConfigChange(TranscodeConfig config) { + // 更新所有视频文件的转码状态 + List fileIdList = getTranscodeConfigQuery(config); + Query query = new Query(); + query.addCriteria(Criteria.where("_id").in(fileIdList)); + Update update = new Update(); + update.set(TRANSCODE_VIDEO, TranscodeStatus.NOT_TRANSCODE.getStatus()); + UpdateResult updateResult = mongoTemplate.updateMulti(query, update, CommonFileService.COLLECTION_NAME); + if (updateResult.getModifiedCount() > 0) { + log.info("需要重新转码的数量: {}", updateResult.getModifiedCount()); + createExecutor(config.getMaxThreads()); + // 重新转码 + startProcessFilesToBeIndexed(); + return updateResult.getModifiedCount(); + } + return 0; + } + + private List getTranscodeConfigQuery(TranscodeConfig config) { + List pipeline = Arrays.asList(new Document("$match", + new Document("video", + new Document("$exists", true))), + new Document("$match", + new Document("$or", Arrays.asList( + new Document("video.height", + new Document("$exists", false)), + new Document("video.height", + new Document("$gt", config.getHeightCond())), + new Document("video.bitrateNum", + new Document("$gt", config.getBitrateCond() * 1000)), + new Document("video.frameRate", + new Document("$gt", config.getFrameRateCond()))))), + new Document("$match", + new Document("$or", Arrays.asList(new Document("video.toHeight", + new Document("$ne", config.getHeight())), + new Document("video.toBitrate", + new Document("$ne", config.getBitrate())), + new Document("video.toFrameRate", + new Document("$ne", config.getFrameRate()))))), + new Document("$project", + new Document("_id", 1L))); + List fileIdList = new ArrayList<>(); + AggregateIterable aggregateIterable = mongoTemplate.getCollection(CommonFileService.COLLECTION_NAME).aggregate(pipeline); + for (org.bson.Document document : aggregateIterable) { + String fileId = document.getObjectId("_id").toHexString(); + fileIdList.add(fileId); + } + return fileIdList; + } + + private static @NotNull Update getTranscodeConfigUpdate(TranscodeConfig config) { + Update update = new Update(); + update.set("enable", config.getEnable()); + update.set("maxThreads", config.getMaxThreads()); + update.set("bitrate", config.getBitrate()); + update.set("height", config.getHeight()); + update.set("frameRate", config.getFrameRate()); + update.set("bitrateCond", config.getBitrateCond()); + update.set("heightCond", config.getHeightCond()); + update.set("frameRateCond", config.getFrameRateCond()); + update.set("vttThumbnailCount", config.getVttThumbnailCount()); + update.set("isReTranscode", config.getIsReTranscode()); + return update; + } + + public TranscodeConfig getTranscodeConfig() { + Query query = new Query(); + TranscodeConfig config = mongoTemplate.findOne(query, TranscodeConfig.class); + if (config == null) { + config = new TranscodeConfig(); + } + return config; + } + + /** + * 设置转码状态 + * + * @param fileId fileId + * @param transcodeStatus TranscodeStatus + */ + private void updateTranscodeVideo(String fileId, TranscodeStatus transcodeStatus) { + // 设置未转码标记 + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(fileId)); + Update update = new Update(); + if (transcodeStatus == TranscodeStatus.TRANSCENDED) { + update.unset(TRANSCODE_VIDEO); + } else { + update.set(TRANSCODE_VIDEO, transcodeStatus.getStatus()); + } + mongoTemplate.updateFirst(query, update, CommonFileService.COLLECTION_NAME); + } + + public Map getTranscodeStatus() { + return Map.of("waitingTranscodingCount", waitingTranscodingCount.get(), "transcodingCount", transcodingCount.get()); + } + + /** + * 处理待转码文件 + */ + public void processingToBeTranscode() { + boolean run = true; + log.debug("开始处理待转码文件"); + while (run) { + Query query = new Query(); + query.addCriteria(Criteria.where(TRANSCODE_VIDEO).is(TranscodeStatus.NOT_TRANSCODE.getStatus())); + long count = mongoTemplate.count(query, CommonFileService.COLLECTION_NAME); + // 更新待转码文件数量 + waitingTranscodingCount.set((int) count); + // 更新转码状态 + taskProgressService.pushTranscodeStatus(getTranscodeStatus()); + if (count == 0) { + log.debug("待转码文件处理完成"); + run = false; + } + query.limit(1); + List fileDocumentList = mongoTemplate.find(query, FileDocument.class, CommonFileService.COLLECTION_NAME); + for (FileDocument fileDocument : fileDocumentList) { + String fileId = fileDocument.getId(); + String username = userService.getUserNameById(fileDocument.getUserId()); + String relativePath = fileDocument.getPath(); + String fileName = fileDocument.getName(); + updateTranscodeVideo(fileId, TranscodeStatus.TRANSCODING); + Future videoTranscodingTask = videoTranscodingService.submit(() -> doConvertToM3U8(fileId, username, relativePath, fileName)); + videoTranscodingTasks.put(fileId, videoTranscodingTask); + } + } + } + + private void startProcessFilesToBeIndexed() { + addTranscodingTaskService.execute(() -> { + if (!toBeTranscodeLock.tryLock()) { + return; + } + try { + processingToBeTranscode(); + } finally { + toBeTranscodeLock.unlock(); + } + }); + } + + public void convertToM3U8(String fileId) { + addTranscodingTaskService.execute(() -> { + try { + TimeUnit.SECONDS.sleep(5); + } catch (InterruptedException e) { + log.error(e.getMessage(), e); + } + updateTranscodeVideo(fileId, TranscodeStatus.NOT_TRANSCODE); + startProcessFilesToBeIndexed(); + }); + } + + /** + * 转码视频 + * + * @param fileId fileId + * @param username username + * @param relativePath relativePath + * @param fileName fileName + */ + private void doConvertToM3U8(String fileId, String username, String relativePath, String fileName) { + try { + // 更新正在转码的视频文件数 + transcodingCount.incrementAndGet(); + waitingTranscodingCount.decrementAndGet(); + // 更新转码状态 + taskProgressService.pushTranscodeStatus(getTranscodeStatus()); + // 开始转码 + videoToM3U8(fileId, username, relativePath, fileName, false); + } catch (InterruptedException e) { + log.error(e.getMessage(), e); + Thread.currentThread().interrupt(); + } catch (IOException e) { + log.error(e.getMessage(), e); + } finally { + // 更新正在转码的视频文件数 + transcodingCount.decrementAndGet(); + // 更新转码状态 + taskProgressService.pushTranscodeStatus(getTranscodeStatus()); + updateTranscodeVideo(fileId, TranscodeStatus.TRANSCENDED); + videoTranscodingTasks.remove(fileId); + } + } + + public void deleteVideoCacheByIds(String username, List fileIds) { + fileIds.forEach(fileId -> deleteVideoCacheById(username, fileId)); + } + + public void deleteVideoCacheById(String username, String fileId) { + String videoCacheDir = getVideoCacheDir(username, fileId); + if (FileUtil.exist(videoCacheDir)) { + FileUtil.del(videoCacheDir); + } + } + + public VideoInfo getVideoInfo(File videoFile) { + VideoInfo videoInfo = new VideoInfo(); + if (FFMPEGCommand.hasNoFFmpeg()) { + return videoInfo; + } + if (!videoFile.exists()) { + return videoInfo; + } + videoInfo = FFMPEGCommand.getVideoInfo(videoFile.getAbsolutePath()); + return videoInfo; + } + + public VideoInfo getVideoCover(String fileId, String username, String relativePath, String fileName) { + VideoInfo videoInfo = new VideoInfo(); + if (FFMPEGCommand.hasNoFFmpeg()) { + return videoInfo; + } + Path prePath = Paths.get(username, relativePath, fileName); + String ossPath = CaffeineUtil.getOssPath(prePath); + Path fileAbsolutePath = Paths.get(fileProperties.getRootDir(), username, relativePath, fileName); + String videoCacheDir = getVideoCacheDir(username, ""); + // 判断fileId是否为path, 如果为path则取最后一个 + if (fileId.contains("/")) { + fileId = fileId.substring(fileId.lastIndexOf("/") + 1); + } + String outputPath = Paths.get(videoCacheDir, fileId + ".png").toString(); + videoInfo.setCovertPath(outputPath); + if (FileUtil.exist(outputPath)) { + return videoInfo; + } + try { + String videoPath = fileAbsolutePath.toString(); + if (ossPath != null) { + IOssService ossService = OssConfigService.getOssStorageService(ossPath); + String objectName = WebOssService.getObjectName(prePath, ossPath, false); + URL url = ossService.getPresignedObjectUrl(objectName, 60); + if (url != null) { + videoPath = url.toString(); + } + } + if (FileUtil.exist(outputPath)) { + return videoInfo; + } + videoInfo = FFMPEGCommand.getVideoInfo(videoPath); + videoInfo.setCovertPath(outputPath); + int videoDuration = videoInfo.getDuration(); + ProcessBuilder processBuilder = FFMPEGCommand.getVideoCoverProcessBuilder(videoPath, outputPath, videoDuration); + printSuccessInfo(processBuilder); + // 等待处理结果 + Process process = processBuilder.start(); + outputPath = getWaitingForResults(outputPath, processBuilder, process); + if (outputPath != null) { + return videoInfo; + } + } catch (InterruptedException e) { + log.error(e.getMessage(), e); + return videoInfo; + } catch (IOException e) { + log.error(e.getMessage(), e); + } + return videoInfo; + } + + /** + * 获取视频文件缓存目录 + * + * @param username username + * @param fileId fileId + * @return 视频文件缓存目录 + */ + public String getVideoCacheDir(String username, String fileId) { + // 视频文件缓存目录 + String videoCacheDir = Paths.get(fileProperties.getRootDir(), fileProperties.getChunkFileDir(), username, fileProperties.getVideoTranscodeCache(), fileId).toString(); + if (!FileUtil.exist(videoCacheDir)) { + FileUtil.mkdir(videoCacheDir); + } + return videoCacheDir; + } + + private void videoToM3U8(String fileId, String username, String relativePath, String fileName, boolean onlyCPU) throws IOException, InterruptedException { + TranscodeConfig transcodeConfig = getTranscodeConfig(); + if (BooleanUtil.isFalse(transcodeConfig.getEnable())) { + return; + } + Path fileAbsolutePath = Paths.get(fileProperties.getRootDir(), username, relativePath, fileName); + // 视频文件缓存目录 + String videoCacheDir = getVideoCacheDir(username, fileId); + if (FFMPEGCommand.hasNoFFmpeg()) { + return; + } + String outputPath = Paths.get(videoCacheDir, fileId + ".m3u8").toString(); + if (FileUtil.exist(outputPath) && !checkTranscodeChange(fileId, transcodeConfig)) { + return; + } + // 获取原始视频的分辨率和码率信息 + VideoInfo videoInfo = FFMPEGCommand.getVideoInfo(fileAbsolutePath.toString()); + // 判断是否需要转码 + if (!FFMPEGUtils.needTranscode(videoInfo, transcodeConfig)) { + return; + } + // 如果视频的码率小于配置码率,则使用视频的原始码率 + int SD_VIDEO_BITRATE = transcodeConfig.getBitrate() * 1000; + int bitrate = SD_VIDEO_BITRATE; + if (videoInfo.getBitrate() < SD_VIDEO_BITRATE && videoInfo.getBitrate() > 0) { + bitrate = videoInfo.getBitrate(); + } + // 如果视频的高度小于配置高度,则使用视频的原始高度 + int targetHeight = transcodeConfig.getHeight(); + if (videoInfo.getHeight() < targetHeight) { + targetHeight = videoInfo.getHeight(); + } + // 如果视频的帧率小于配置帧率,则使用视频的原始帧率 + double frameRate = transcodeConfig.getFrameRate(); + if (videoInfo.getFrameRate() < frameRate) { + frameRate = videoInfo.getFrameRate(); + } + + // 计算缩略图间隔 + int vttInterval = FFMPEGUtils.getVttInterval(videoInfo, transcodeConfig.getVttThumbnailCount()); + Path vttPath = Paths.get(videoCacheDir, "vtt"); + if (!Files.exists(vttPath)) { + FileUtil.mkdir(vttPath); + } + String thumbnailPattern = Paths.get(vttPath.toString(), "thumb_%03d.png").toString(); + + ProcessBuilder processBuilder = FFMPEGCommand.cpuTranscoding(fileId, fileAbsolutePath, bitrate, targetHeight, videoCacheDir, outputPath, vttInterval, thumbnailPattern, frameRate); + if (!onlyCPU && FFMPEGCommand.checkNvidiaDrive()) { + log.info("use NVENC hardware acceleration"); + processBuilder = FFMPEGCommand.useNvencCuda(fileId, fileAbsolutePath, bitrate, targetHeight, videoCacheDir, outputPath, frameRate); + generateVttOfNvidia(fileAbsolutePath, vttInterval, thumbnailPattern, videoInfo); + } + if (!onlyCPU && FFMPEGCommand.checkMacAppleSilicon()) { + log.info("use videotoolbox hardware acceleration"); + processBuilder = FFMPEGCommand.useVideotoolbox(fileId, fileAbsolutePath, bitrate, targetHeight, videoCacheDir, outputPath, vttInterval, thumbnailPattern, frameRate); + } + processBuilder.redirectErrorStream(true); + Process process = processBuilder.start(); + processesTasks.add(process); + boolean pushMessage = false; + // 第一个ts文件 + String firstTS = fileId + "-001.ts"; + try (InputStream inputStream = process.getInputStream(); + BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream))) { + // 读取命令的输出信息 + String line; + while ((line = reader.readLine()) != null) { + // 处理命令的输出信息,例如打印到控制台 + if (line.contains("Error")) { + log.error(line); + } + if (line.contains(firstTS)) { + // 开始转码 + // log.info("开始转码: {}", fileName); + startConvert(username, relativePath, fileName, fileId, transcodeConfig); + pushMessage = true; + } + transcodingProgress(fileAbsolutePath, videoInfo.getDuration(), line, ""); + } + + // 生成vtt缩略图 + generateVtt(fileId, videoCacheDir, videoInfo, vttInterval, thumbnailPattern); + + int exitCode = process.waitFor(); + if (exitCode == 0) { + printSuccessInfo(processBuilder); + log.info("转码成功: {}, onlyCPU: {}", fileName, onlyCPU); + if (BooleanUtil.isFalse(pushMessage)) { + startConvert(username, relativePath, fileName, fileId, transcodeConfig); + } + } else { + if (!onlyCPU) { + videoToM3U8(fileId, username, relativePath, fileName, true); + } + printErrorInfo(processBuilder, process); + } + + } catch (InterruptedException exception) { + log.warn("转码被中断: {}", fileName); + Thread.currentThread().interrupt(); + } finally { + taskProgressService.removeTaskProgress(fileAbsolutePath.toFile()); + processesTasks.remove(process); + } + } + + private void generateVttOfNvidia(Path fileAbsolutePath, int vttInterval, String thumbnailPattern, VideoInfo videoInfo) throws IOException { + // 生成vtt缩略图, nvidia加速时要单独生成vtt缩略图 + taskProgressService.addTaskProgress(fileAbsolutePath.toFile(), TaskType.TRANSCODE_VIDEO, "vtt生成中..."); + ProcessBuilder processBuilder = FFMPEGCommand.useNvencCudaVtt(fileAbsolutePath, vttInterval, thumbnailPattern); + processBuilder.redirectErrorStream(true); + Process process = processBuilder.start(); + processesTasks.add(process); + // 第一个ts文件 + try (InputStream inputStream = process.getInputStream(); + BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream))) { + // 读取命令的输出信息 + String line; + while ((line = reader.readLine()) != null) { + // 处理命令的输出信息,例如打印到控制台 + if (line.contains("Error")) { + log.error(line); + } + transcodingProgress(fileAbsolutePath, videoInfo.getDuration(), line, "vtt—"); + } + int exitCode = process.waitFor(); + if (exitCode == 0) { + printSuccessInfo(processBuilder); + } else { + printErrorInfo(processBuilder, process); + } + } catch (InterruptedException exception) { + log.warn("生成vtt缩略图被中断: {}", fileAbsolutePath.getFileName()); + Thread.currentThread().interrupt(); + } finally { + processesTasks.remove(process); + } + } + + /** + * 检查转码参数是否变化 + * + * @param fileId 文件id + * @param config 转码配置 + * @return 是否变化 + */ + private boolean checkTranscodeChange(String fileId, TranscodeConfig config) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(fileId)); + FileDocument fileDocument = mongoTemplate.findOne(query, FileDocument.class); + if (fileDocument == null) { + return true; + } + VideoInfoDO videoInfo = fileDocument.getVideo(); + if (videoInfo == null) { + return true; + } + return !Objects.equals(videoInfo.getToHeight(), config.getHeight()) || !Objects.equals(videoInfo.getToBitrate(), config.getBitrate()) || !Objects.equals(videoInfo.getToFrameRate(), config.getFrameRate()); + } + + private void generateVtt(String fileId, String videoCacheDir, VideoInfo videoInfo, int vttInterval, String thumbnailPattern) throws InterruptedException, IOException { + String vttFilePath = Paths.get(videoCacheDir, fileId + ".vtt").toString(); + int columns = 10; // 合并图像的列数 + int rows = (int) Math.ceil((double) videoInfo.getDuration() / vttInterval / columns); + String thumbnailImagePath = Paths.get(videoCacheDir, fileId + "-vtt.jpg").toString(); + ProcessBuilder processBuilder = FFMPEGCommand.mergeVTT(thumbnailPattern, thumbnailImagePath, columns, rows); + // 等待处理结果 + Process process = processBuilder.start(); + processesTasks.add(process); + try { + String outputPath = getWaitingForResults(thumbnailImagePath, processBuilder, process); + if (outputPath != null) { + log.info("生成vtt缩略图成功: {}", fileId); + printSuccessInfo(processBuilder); + FFMPEGUtils.generateVTT(videoInfo, vttInterval, vttFilePath, String.format("%s-vtt.jpg", fileId), columns); + // 删除vtt临时文件 + Path vttPath = Paths.get(videoCacheDir, "vtt"); + FileUtil.del(vttPath); + } else { + log.error("生成vtt缩略图失败: {}", fileId); + } + } catch (InterruptedException e) { + Thread.currentThread().interrupt(); + } finally { + processesTasks.remove(process); + } + } + + /** + * 解析转码进度 0 + * + * @param fileAbsolutePath 视频文件绝对路径 + * @param videoDuration 视频时长 + * @param line 命令输出信息 + */ + private void transcodingProgress(Path fileAbsolutePath, int videoDuration, String line, String desc) { + // 解析转码进度 + if (line.contains("time=")) { + try { + if (line.contains(":")) { + double progress = FFMPEGUtils.getProgressStr(videoDuration, line); + log.debug("{}, 转码进度: {}%", fileAbsolutePath.getFileName(), progress); + taskProgressService.addTaskProgress(fileAbsolutePath.toFile(), TaskType.TRANSCODE_VIDEO, desc + progress + "%"); + } + } catch (Exception e) { + log.warn(e.getMessage(), e); + } + } + } + + private void startConvert(String username, String relativePath, String fileName, String fileId, TranscodeConfig transcodeConfig) { + Query query = new Query(); + String userId = userService.getUserIdByUserName(username); + query.addCriteria(Criteria.where(IUserService.USER_ID).is(userId)); + query.addCriteria(Criteria.where("path").is(relativePath)); + query.addCriteria(Criteria.where("name").is(fileName)); + Update update = new Update(); + String m3u8 = Paths.get(username, fileId + ".m3u8").toString(); + update.set("m3u8", m3u8); + String vtt = Paths.get(username, fileId + ".vtt").toString(); + update.set("vtt", vtt); + + update.set("video.toHeight", transcodeConfig.getHeight()); + update.set("video.toBitrate", transcodeConfig.getBitrate()); + update.set("video.toFrameRate", transcodeConfig.getFrameRate()); + + FileDocument fileDocument = mongoTemplate.findOne(query, FileDocument.class); + if (fileDocument == null) { + return; + } + mongoTemplate.upsert(query, update, FileDocument.class); + fileDocument.setM3u8(m3u8); + commonFileService.pushMessage(username, fileDocument, Constants.UPDATE_FILE); + } + + @PreDestroy + private void destroy() { + if (videoTranscodingService != null) { + videoTranscodingService.shutdown(); + } + if (addTranscodingTaskService != null) { + addTranscodingTaskService.shutdown(); + } + } + +} diff --git a/src/main/java/com/jmal/clouddisk/model/ArchivesVO.java b/src/main/java/com/jmal/clouddisk/model/ArchivesVO.java new file mode 100644 index 0000000..f3553f5 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/ArchivesVO.java @@ -0,0 +1,43 @@ +package com.jmal.clouddisk.model; + +import com.jmal.clouddisk.util.TimeUntils; +import lombok.Data; + +import java.time.LocalDateTime; +import java.util.Date; + +/** + * @Description 归档展示 + * @blame jmal + * @Date 2020/11/15 7:33 下午 + */ +@Data +public class ArchivesVO { + + /*** + * 归档id + */ + private String id; + /*** + * 归档名称 + */ + private String name; + /*** + * 显示时间 + */ + private Date date; + /*** + * 归档缩略名 + */ + private String slug; + + public String date(){ + LocalDateTime localDateTime = date.toInstant().atZone(TimeUntils.ZONE_ID).toLocalDateTime(); + return localDateTime.format(TimeUntils.DATE_MONTH); + } + + public String dateTime(){ + LocalDateTime localDateTime = date.toInstant().atZone(TimeUntils.ZONE_ID).toLocalDateTime(); + return localDateTime.format(TimeUntils.DATE_DAY); + } +} diff --git a/src/main/java/com/jmal/clouddisk/model/ArticleDTO.java b/src/main/java/com/jmal/clouddisk/model/ArticleDTO.java new file mode 100644 index 0000000..7e4beac --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/ArticleDTO.java @@ -0,0 +1,53 @@ +package com.jmal.clouddisk.model; + +import io.swagger.v3.oas.annotations.media.Schema; + +import lombok.Data; + +import jakarta.validation.Valid; + +/** + * @author jmal + * @Description 文章DTO + * @Date 2020/11/26 11:13 上午 + */ +@Data +@Schema +@Valid +public class ArticleDTO { + + @Schema(name = "mark", title = "文章id") + String mark; + + @Schema(name = "userId", title = "用户Id") + String userId; + + @Schema(name = "isRelease", title = "是否发布") + Boolean isRelease; + + @Schema(name = "isAlonePage", title = "是否为独立页面") + Boolean isAlonePage; + + @Schema(name = "isDraft", title = "是否为草稿") + Boolean isDraft; + + @Schema(name = "keyword", title = "关键字") + String keyword; + + @Schema(name = "categoryIds", title = "分类id集合") + String[] categoryIds; + + @Schema(name = "tagIds", title = "标签id集合") + String[] tagIds; + + @Schema(name = "sortableProp", title = "排序字段") + String sortableProp; + + @Schema(name = "order", title = "排序的顺序") + String order; + + @Schema(hidden = true, name = "pageIndex", title = "当前页数") + Integer pageIndex; + @Schema(hidden = true, name = "pageSize", title = "每页条数") + Integer pageSize; +} diff --git a/src/main/java/com/jmal/clouddisk/model/ArticleParamDTO.java b/src/main/java/com/jmal/clouddisk/model/ArticleParamDTO.java new file mode 100644 index 0000000..7cc65a9 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/ArticleParamDTO.java @@ -0,0 +1,71 @@ +package com.jmal.clouddisk.model; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jmal.clouddisk.util.FileNameUtils; +import io.swagger.v3.oas.annotations.media.Schema; + +import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; + +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; +import java.time.LocalDateTime; + +/** + * @author jmal + * @Description 文章(添加/修改)DTO + * @Date 2020/12/9 10:23 上午 + */ +@Schema +@Data +@Valid +public class ArticleParamDTO { + + @NotNull(message = "userId不能为空") + String userId; + @NotNull(message = "username不能为空") + String username; + @NotNull(message = "filename不能为空") + String filename; + String fileId; + @NotNull(message = "contentText不能为空") + @Schema(name = "contentText", title = "markdown内容", requiredMode = Schema.RequiredMode.REQUIRED) + String contentText; + @Schema(name = "html", title = "html内容") + String html; + @Schema(name = "currentDirectory", title = "当前目录,用户的网盘目录,如果为空则为'/'") + String currentDirectory; + @Schema(name = "updateDate", title = "更新时间") + LocalDateTime updateDate; + @Schema(name = "isAlonePage", title = "是否为独立页面") + Boolean isAlonePage; + @Schema(name = "pageSort", title = "页面顺序") + Integer pageSort; + @Schema(name = "isDraft", title = "是否为草稿") + Boolean isDraft; + @Schema(name = "isRelease", title = "是否发布") + Boolean isRelease; + @Schema(name = "cover", title = "文章封面") + String cover; + @Schema(name = "cover", title = "文章缩略名") + String slug; + @Schema(name = "categoryIds", title = "分类Id集合") + String[] categoryIds; + @Schema(name = "tagNames", title = "标签名称集合") + String[] tagNames; + @Schema(name = "uploadDate", title = "更新时间") + @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime uploadDate; + + public String getFilename() { + return FileNameUtils.safeDecode(filename); + } + + public String getCurrentDirectory() { + if (currentDirectory == null || "undefined".equals(currentDirectory)) { + return null; + } + return FileNameUtils.safeDecode(currentDirectory); + } +} diff --git a/src/main/java/com/jmal/clouddisk/model/ArticleVO.java b/src/main/java/com/jmal/clouddisk/model/ArticleVO.java new file mode 100644 index 0000000..2d0023a --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/ArticleVO.java @@ -0,0 +1,31 @@ +package com.jmal.clouddisk.model; + +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * @Description 文章展示 + * @blame jmal + * @Date 2020/11/15 7:33 下午 + */ +@Data +@EqualsAndHashCode(callSuper = true) +public class ArticleVO extends MarkdownBaseFile { + /*** + * 文件内容 + */ + private String contentText; + /*** + * html内容 + */ + private String html; + /*** + * 是否为独立页,适用于文档类型 + */ + private Boolean alonePage; + /*** + * 是否可编辑 + */ + private Boolean editable; + +} diff --git a/src/main/java/com/jmal/clouddisk/model/ArticlesQueryVO.java b/src/main/java/com/jmal/clouddisk/model/ArticlesQueryVO.java new file mode 100644 index 0000000..e126e28 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/ArticlesQueryVO.java @@ -0,0 +1,20 @@ +package com.jmal.clouddisk.model; + +import lombok.Data; + +/** + * @author jmal + * @Description 文章查询页简要信息 + * @Date 2020/12/16 3:12 下午 + */ + @Data +public class ArticlesQueryVO { + /*** + * 文章标题名 + */ + String name; + /*** + * 文章背景 + */ + String background; +} diff --git a/src/main/java/com/jmal/clouddisk/model/CategoryDO.java b/src/main/java/com/jmal/clouddisk/model/CategoryDO.java new file mode 100644 index 0000000..c26f809 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/CategoryDO.java @@ -0,0 +1,67 @@ +package com.jmal.clouddisk.model; + +import lombok.Data; +import org.springframework.data.annotation.Id; + +import java.text.Collator; +import java.util.Comparator; + +/** + * @author jmal + * @Description 类别(自定类别) + * @Date 2020/10/26 4:19 下午 + */ +@Data +public class CategoryDO implements Comparable { + @Id + private String id; + /*** + * 用户Id + */ + private String userId; + /*** + * 分类名称 + */ + private String name; + /*** + * 缩略名,默认为name + */ + private String slug; + /*** + * 父级分类Id + */ + private String parentCategoryId; + /*** + * 是否为默认分类 + */ + private Boolean isDefault; + /*** + * 分类描述 + */ + private String desc; + /*** + * 分类背景 + */ + String categoryBackground; + /*** + * 按分类名称排序 + * @param categoryDO Category + * @return int + */ + @Override + public int compareTo(CategoryDO categoryDO) { + Comparator cmp = Collator.getInstance(java.util.Locale.CHINA); + return cmp.compare(getName(), categoryDO.getName()); + } + + /*** + * 按类别显示的文章查询页简要信息 + * @return 文章查询页简要信息 + */ + public ArticlesQueryVO toArticlesQuery(){ + ArticlesQueryVO articlesQueryVO = new ArticlesQueryVO(); + articlesQueryVO.setBackground(categoryBackground); + articlesQueryVO.setName("分类 - "+name); + return articlesQueryVO; + } +} diff --git a/src/main/java/com/jmal/clouddisk/model/CategoryDTO.java b/src/main/java/com/jmal/clouddisk/model/CategoryDTO.java new file mode 100644 index 0000000..53d67d3 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/CategoryDTO.java @@ -0,0 +1,91 @@ +package com.jmal.clouddisk.model; + +import io.swagger.v3.oas.annotations.media.Schema; + +import lombok.Data; +import org.springframework.data.annotation.Id; + +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; +import java.text.Collator; +import java.util.Comparator; +import java.util.List; + +/** + * @Description 文件类别DTO + * @Author jmal + * @Date 2020/10/27 10:48 下午 + */ +@Data +@Schema +@Valid +public class CategoryDTO implements Comparable { + + @Id + @Schema(hidden = true) + private String id; + + @Schema(name = "userId", title = "用户id") + private String userId; + + @NotNull(message = "分类名称不能为空") + @Schema(name = "name", title = "分类名称", example = "新建分类", requiredMode = Schema.RequiredMode.REQUIRED) + private String name; + + /*** + * 缩略名,默认为name + */ + @Schema(name = "slug", title = "分类缩略名") + private String slug; + /*** + * 父级分类Id + */ + @Schema(name = "parentCategoryId", title = "父级分类Id") + private String parentCategoryId; + /*** + * 子分类数 + */ + @Schema(hidden = true) + private Integer subCategorySize; + /*** + * 是否为默认分类 + */ + @Schema(hidden = true) + private Boolean isDefault; + /*** + * 分类描述 + */ + @Schema(name = "desc", title = "分类描述") + private String desc; + /*** + * 文章数 + */ + @Schema(hidden = true) + private Integer articleNum; + /*** + * 文章总数 + */ + @Schema(hidden = true) + private Integer value; + /*** + * 子分类 + */ + @Schema(hidden = true) + private List children; + + @Schema(name = "categoryBackground", title = "分类背景") + String categoryBackground; + + @Schema(hidden = true, name = "categoryIdsList", title = "分类Id列表") + private List> categoryIdsList; + /*** + * 按照分类名称来排序 + * @param categoryDTO CategoryDTO + * @return int + */ + @Override + public int compareTo(CategoryDTO categoryDTO) { + Comparator cmp = Collator.getInstance(java.util.Locale.CHINA); + return cmp.compare(getName(), categoryDTO.getName()); + } +} diff --git a/src/main/java/com/jmal/clouddisk/model/CloudSettingDO.java b/src/main/java/com/jmal/clouddisk/model/CloudSettingDO.java new file mode 100644 index 0000000..d17c244 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/CloudSettingDO.java @@ -0,0 +1,21 @@ +package com.jmal.clouddisk.model; + +import lombok.Data; + + +/** + * @author jmal + * @Description 网盘设置 + * @Date 2022/03/26 2:45 下午 + */ +@Data +public class CloudSettingDO { + /** + * 网盘名称 + */ + private String cloudName; + /** + * 网盘logo + */ + private byte[] logo; +} diff --git a/src/main/java/com/jmal/clouddisk/model/CloudSettingDTO.java b/src/main/java/com/jmal/clouddisk/model/CloudSettingDTO.java new file mode 100644 index 0000000..8e64990 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/CloudSettingDTO.java @@ -0,0 +1,23 @@ +package com.jmal.clouddisk.model; + +import lombok.Data; +import org.springframework.web.multipart.MultipartFile; + +/** + * @author jmal + * @Description 网盘设置DTO + * @Date 2022/03/26 2:45 下午 + */ +@Data +public class CloudSettingDTO { + /** + * 网盘名称 + */ + private String cloudName; + /** + * 网盘logo + */ + private byte[] logo; + + private MultipartFile file; +} diff --git a/src/main/java/com/jmal/clouddisk/model/CommentDO.java b/src/main/java/com/jmal/clouddisk/model/CommentDO.java new file mode 100644 index 0000000..892a90b --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/CommentDO.java @@ -0,0 +1,93 @@ +package com.jmal.clouddisk.model; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import org.springframework.data.annotation.Id; +import org.springframework.format.annotation.DateTimeFormat; +import org.springframework.validation.annotation.Validated; + +import jakarta.validation.constraints.Email; +import jakarta.validation.constraints.NotNull; +import java.time.LocalDateTime; + +/** + * @Description 评论 + * @Author jmal + * @Date 2020-04-02 10:25 + */ +@Data +@Validated +public class CommentDO { + @Id + String id; + + /*** + * 文件Id + */ + String fileId; + + /*** + * 评论者邮箱 必填 + */ + @Email(message = "邮箱格式不正确") + String senderEmail; + + /*** + * 评论者 + */ + @NotNull(message = "名称不能为空") + String sender; + + /*** + * 评论内容 + */ + @NotNull(message = "内容不能为空") + String content; + + /*** + * 评论时间 + */ + @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + LocalDateTime date; + + /*** + * 评论更新时间 当该评论有新回复时会更新该时间 + */ + @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + LocalDateTime updateDate; + + /*** + * 评论楼层 + */ + @NotNull(message = "评论楼层不能为空") + Integer floor; + + /*** + * 评论父层 + */ + Integer parentFloor; + + /*** + * 评论者Id 如果未登录则为空 + */ + String senderId; + + /*** + * 接收者 + */ + @NotNull(message = "接收者不能为空") + String receiver; + + /*** + * 接收者Id 如果该接收者评论时未登录则为空 + */ + String receiverId; + + /*** + * 接收者邮箱 + */ + @Email(message = "邮箱格式不正确") + String receiverEmail; +} diff --git a/src/main/java/com/jmal/clouddisk/model/DirectLink.java b/src/main/java/com/jmal/clouddisk/model/DirectLink.java new file mode 100644 index 0000000..0afffcb --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/DirectLink.java @@ -0,0 +1,38 @@ +package com.jmal.clouddisk.model; + +import com.alibaba.fastjson.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jmal.clouddisk.service.impl.DirectLinkService; +import lombok.Data; +import org.springframework.data.mongodb.core.index.CompoundIndex; +import org.springframework.data.mongodb.core.index.CompoundIndexes; +import org.springframework.data.mongodb.core.mapping.Document; +import org.springframework.format.annotation.DateTimeFormat; + +import java.time.LocalDateTime; + +@Data +@Document(collection = DirectLinkService.COLLECTION_NAME) +@CompoundIndexes({ + @CompoundIndex(name = "mark_1", def = "{'mark': 1}"), + @CompoundIndex(name = "fileId_1", def = "{'fileId': 1}"), + +}) +public class DirectLink { + String id; + + String fileId; + + String userId; + + String mark; + + @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss") + @JSONField(format = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + LocalDateTime updateDate; + + Long downloads; + + +} diff --git a/src/main/java/com/jmal/clouddisk/model/EditTagDTO.java b/src/main/java/com/jmal/clouddisk/model/EditTagDTO.java new file mode 100644 index 0000000..1645c66 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/EditTagDTO.java @@ -0,0 +1,24 @@ +package com.jmal.clouddisk.model; + +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; +import lombok.Data; + +import java.util.List; + +@Data +@Schema +@Valid +public class EditTagDTO { + @NotNull(message = "文件id列表不能为空") + @Schema(description = "要修改的文件id列表") + List fileIds; + + @NotNull(message = "标签列表不能为空") + @Schema(description = "于文件id列表相关联的标签列表") + List tagList; + + @Schema(description = "要额外删除的标签id列表") + List removeTagIds; +} diff --git a/src/main/java/com/jmal/clouddisk/model/ExifInfo.java b/src/main/java/com/jmal/clouddisk/model/ExifInfo.java new file mode 100644 index 0000000..374590e --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/ExifInfo.java @@ -0,0 +1,103 @@ +package com.jmal.clouddisk.model; + +import com.alibaba.fastjson.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; + +import java.time.LocalDateTime; + +/** + * 照片EXIF信息 + */ +@Data +public class ExifInfo { + /** + * 设备制造商 + */ + private String make; + /** + * 设备型号 + */ + private String model; + /** + * 分辨率 + */ + private String resolution; + /** + * 内容创作者 + */ + private String software; + /** + * 内容创建时间 + */ + @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss") + @JSONField(format = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime dateTimeOriginal; + /** + * 光圈值 + */ + private Double aperture; + /** + * 光圈数 + */ + private String fNumber; + /** + * 曝光时间 + */ + private Double exposureTime; + /** + * ISO感光度 + */ + private Integer isoEquivalent; + /** + * 曝光程序 + */ + private String exposureProgram; + /** + * 测光模式 + */ + private String meteringMode; + /** + * 白平衡 + */ + private String whiteBalanceMode; + /** + * 焦距 + */ + private Double focalLength; + /** + * 闪光灯 + */ + private String flash; + /** + * 经度 + */ + private Double longitude; + /** + * 纬度 + */ + private Double latitude; + + public String toString() { + return "ExifInfo{" + + "make='" + make + '\'' + + ", model='" + model + '\'' + + ", resolution='" + resolution + '\'' + + ", software='" + software + '\'' + + ", dateTimeOriginal=" + dateTimeOriginal + + ", aperture=" + aperture + + ", fNumber='" + fNumber + '\'' + + ", exposureTime=" + exposureTime + + ", isoEquivalent=" + isoEquivalent + + ", exposureProgram='" + exposureProgram + '\'' + + ", meteringMode='" + meteringMode + '\'' + + ", whiteBalanceMode='" + whiteBalanceMode + '\'' + + ", focalLength=" + focalLength + + ", flash='" + flash + '\'' + + ", longitude=" + longitude + + ", latitude=" + latitude + + '}'; + } +} diff --git a/src/main/java/com/jmal/clouddisk/model/FileBase.java b/src/main/java/com/jmal/clouddisk/model/FileBase.java new file mode 100644 index 0000000..006e469 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/FileBase.java @@ -0,0 +1,73 @@ +package com.jmal.clouddisk.model; + +import com.alibaba.fastjson.annotation.JSONField; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jmal.clouddisk.util.TimeUntils; +import lombok.Data; +import org.springframework.data.annotation.Id; +import org.springframework.format.annotation.DateTimeFormat; + +import java.time.LocalDateTime; + +/** + * @author jmal + * @Description 文件模型基类 + * @Date 2020/11/12 2:05 下午 + */ +@Data +public class FileBase { + + @Id + String id; + /*** + * 是否为文件夹 + */ + private Boolean isFolder; + /*** + * 文件名称 + */ + private String name; + /*** + * 文件MD5值 + */ + private String md5; + /*** + * 文件大小 + */ + private long size; + /*** + * 文件类型 + */ + private String contentType; + /*** + * 上传时间 + */ + @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss") + @JSONField(format = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime uploadDate; + /*** + * 修改时间 + */ + @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss") + @JSONField(format = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime updateDate; + + /*** + * 格式化文件更新时间 + * @return yyyy 年 MM 月 dd 日 HH:mm:ss + */ + public String updateTime(){ + return updateDate.format(TimeUntils.UPDATE_FORMAT_TIME); + } + + /*** + * 格式化文件上传时间 + * @return yyyy 年 MM 月 dd 日 + */ + public String uploadTime(){ + return uploadDate.format(TimeUntils.UPLOAD_FORMAT_TIME); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/model/FileDocument.java b/src/main/java/com/jmal/clouddisk/model/FileDocument.java new file mode 100644 index 0000000..6792b10 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/FileDocument.java @@ -0,0 +1,286 @@ +package com.jmal.clouddisk.model; + +import com.jmal.clouddisk.media.VideoInfoDO; +import com.jmal.clouddisk.service.impl.FileServiceImpl; +import lombok.Data; +import org.springframework.data.mongodb.core.index.CompoundIndex; +import org.springframework.data.mongodb.core.index.CompoundIndexes; +import org.springframework.data.mongodb.core.mapping.Document; + +import java.time.LocalDateTime; +import java.util.List; +import java.util.Objects; + +/** + * FileDocument 文件模型 + * + * @author jmal + */ +@Data +@Document(collection = FileServiceImpl.COLLECTION_NAME) +@CompoundIndexes({ + @CompoundIndex(name = "name_1", def = "{'name': 1}"), + @CompoundIndex(name = "size_1", def = "{'size': 1}"), + @CompoundIndex(name = "updateDate_1", def = "{'updateDate': 1}"), + @CompoundIndex(name = "path_name", def = "{'path': 1, 'name': 1}"), + @CompoundIndex(name = "user_md5_path", def = "{'userId': 1,'md5': 1, 'path': 1}"), + @CompoundIndex(name = "user_path", def = "{'userId': 1, 'path': 1}"), + @CompoundIndex(name = "user_path_name", def = "{'userId': 1, 'path': 1, 'name': 1}"), + @CompoundIndex(name = "user_isFolder_path", def = "{'userId': 1, 'isFolder': 1, 'path': 1}"), + @CompoundIndex(name = "user_isFolder_path_name", def = "{'userId': 1, 'isFolder': 1, 'path': 1, 'name': 1}"), + @CompoundIndex(name = "user_isFolder", def = "{'userId': 1, 'isFolder': 1}"), + @CompoundIndex(name = "user_isFavorite", def = "{'userId': 1, 'isFavorite': 1}"), + @CompoundIndex(name = "user_contentType", def = "{'userId': 1, 'contentType': 1}"), + @CompoundIndex(name = "doc_tags", def = "{'tags.tagId': 1}"), + @CompoundIndex(name = "process_marked_folders", def = "{ 'needsEtagUpdate': 1, 'isFolder': 1, 'lastEtagUpdateRequestAt': 1 }"), +}) +public class FileDocument extends FileBase { + private String userId; + private String username; + /*** + * 文件头像/缩略图 + */ + private String avatar; + /*** + * 文件路径(根路径为"/") + */ + private String path; + private String rootPath; + /*** + * updateDate 距离现在的时间 + */ + private Long agoTime; + /*** + * 显示大小 + */ + private String showSize; + /*** + * 图片的宽度 + */ + private String w; + /*** + * 图片的高度 + */ + private String h; + /*** + * 文件内容 + */ + private byte[] content; + + /*** + * 文件内容 + */ + private String contentText; + /** + * 文件编码 + */ + private String decoder; + /*** + * html内容 + */ + private String html; + /*** + * 文件后缀名 + */ + private String suffix; + /*** + * 文件描述 + */ + private String description; + /*** + * 是否收藏 + */ + private Boolean isFavorite; + /** + * oss目录名称 + */ + private String ossFolder; + /** + * oss平台类型 + */ + private String ossPlatform; + /*** + * 是否公共文件 + */ + private Boolean isPublic; + /*** + * 是否分享 + */ + private Boolean isShare; + /*** + * 是否分享 + */ + private Boolean isPrivacy; + private String extractionCode; + /*** + * shareId + */ + private String shareId; + /*** + * shareBase + */ + private Boolean shareBase; + private Boolean subShare; + /*** + * 分享有效期 + */ + private Long expiresAt; + /*** + * 音乐 + */ + private Music music; + /** + * 照片exif信息 + */ + private ExifInfo exif; + /** + * 视频信息 + */ + private VideoInfoDO video; + /** + * 媒体封面 + */ + private String mediaCover; + /** + * m3u8文件路径(相对路径) + */ + private String m3u8; + /** + * vtt文件路径(相对路径) + */ + private String vtt; + /*** + * 是否发布,适用于文档类型 + */ + private Boolean release; + /*** + * 是否为独立页,适用于文档类型 + */ + private Boolean alonePage; + /*** + * 独立页排序 + */ + private Integer pageSort; + /*** + * 是否有草稿(FileDocument对象转String) + */ + private String draft; + /*** + * 封面 + */ + private String cover; + /*** + * 缩略名 + */ + private String slug; + /*** + * 分类Id集合 + */ + private String[] categoryIds; + /*** + * 标签Id集合 + */ + private String[] tagIds; + + /** + * 标签集合 + */ + private List tags; + + /** + * 挂载的文件id + */ + private String mountFileId; + + /** + * 删除标记 0:未删除 1:已删除 + */ + private Integer delete; + + private Boolean move; + + /** + * 是否显示封面, 缩略图保存在content中 + */ + private Boolean showCover; + + /** + * 备注, 主要用于全文检索 + */ + private String remark; + + /** + * 操作权限 + */ + private List operationPermissionList; + + /** + * 文件的 ETag + */ + private String etag; + + /** + * ETag 更新失败次数 + */ + private Integer etagUpdateFailedAttempts; + + /** + * 是否需要更新 ETag + */ + private Boolean needsEtagUpdate; + + /** + * 最后Etag更新请求时间 + */ + private LocalDateTime lastEtagUpdateRequestAt; + + /** + * 最后Etag更新错误 + */ + private String lastEtagUpdateError; + + @Override + public boolean equals(Object obj) { + if (obj == null) { + return false; + } + if (getClass() != obj.getClass()) { + return false; + } + final FileBase other = (FileBase) obj; + return Objects.equals(this.id, other.id); + } + + @Override + public int hashCode() { + int hash = 7; + hash = 89 * hash + (this.id != null ? this.id.hashCode() : 0); + return hash; + } + + public Trash toTrash(boolean hidden, boolean move) { + Trash trash = new Trash(); + trash.setId(this.getId()); + trash.setName(this.getName()); + trash.setPath(this.getPath()); + trash.setUserId(this.getUserId()); + trash.setH(this.getH()); + trash.setW(this.getW()); + trash.setSuffix(this.getSuffix()); + trash.setIsFolder(this.getIsFolder()); + trash.setContent(this.getContent()); + trash.setExif(this.getExif()); + trash.setMusic(this.getMusic()); + trash.setVideo(this.getVideo()); + trash.setContentType(this.getContentType()); + trash.setSize(this.getSize()); + trash.setUploadDate(this.getUploadDate()); + trash.setUpdateDate(this.getUpdateDate()); + trash.setMd5(this.getMd5()); + trash.setM3u8(this.getM3u8()); + trash.setVtt(this.getVtt()); + trash.setHidden(hidden); + trash.setMove(move); + return trash; + } +} diff --git a/src/main/java/com/jmal/clouddisk/model/FileIndex.java b/src/main/java/com/jmal/clouddisk/model/FileIndex.java new file mode 100644 index 0000000..8c22391 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/FileIndex.java @@ -0,0 +1,64 @@ +package com.jmal.clouddisk.model; + +import com.jmal.clouddisk.util.HashUtil; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.io.File; + +/** + * 创建文件索引需要的内容 + */ +@Data +@Accessors(chain = true) +public class FileIndex { + + public FileIndex(File file, FileIntroVO fileIntroVO) { + this.file = file; + this.userId = fileIntroVO.getUserId(); + this.fileId = fileIntroVO.getId(); + this.path = fileIntroVO.getPath(); + this.isFolder = fileIntroVO.getIsFolder(); + this.isFavorite = fileIntroVO.getIsFavorite(); + this.remark = fileIntroVO.getRemark(); + } + + + private String userId; + private String username; + private File file; + private String fileId; + private String name; + private String path; + private String type; + private String tagName; + private Long modified; + private Long size; + private Boolean isFolder; + private Boolean isFavorite; + private String remark; + + /** + * 获取文件ID的哈希值, 用于唯一索引标识, 用于避免重复索引 + * @param fileSha256 文件的SHA-256哈希值 + */ + public String getFileIndexHash(String fileSha256) { + String delimiter = "|"; + String hashSource = + safe(fileId) + delimiter + + safe(userId) + delimiter + + safe(path) + delimiter + + safe(name) + delimiter + + safe(tagName) + delimiter + + isFavorite + delimiter + + safe(remark) + delimiter + + modified + delimiter + + size + delimiter + + safe(fileSha256); + return HashUtil.sha256(hashSource); + } + + private String safe(String value) { + return value == null ? "" : value; + } +} diff --git a/src/main/java/com/jmal/clouddisk/model/FileIntroVO.java b/src/main/java/com/jmal/clouddisk/model/FileIntroVO.java new file mode 100644 index 0000000..8fda395 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/FileIntroVO.java @@ -0,0 +1,117 @@ +package com.jmal.clouddisk.model; + +import com.jmal.clouddisk.media.VideoInfoDO; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.util.List; + +/** + * @author jmal + * @Description 文件简介 + * @Date 2020/11/12 1:54 下午 + */ +@Data +@EqualsAndHashCode(callSuper = true) +public class FileIntroVO extends FileBase { + private String userId; + private String username; + /*** + * 文件路径(根路径为"/") + */ + private String path; + /*** + * updateDate 距离现在的时间 + */ + private Long agoTime; + /*** + * 显示大小 + */ + private String showSize; + /*** + * 文件后缀名 + */ + private String suffix; + /*** + * 是否收藏 + */ + private Boolean isFavorite; + /*** + * 是否分享 + */ + private Boolean isShare; + /** + * oss目录名称 + */ + private String ossFolder; + /** + * oss平台类型 + */ + private String ossPlatform; + /*** + * 是否为私密链接 + */ + private Boolean isPrivacy; + + private String contentText; + + private Boolean shareBase; + private Boolean subShare; + /*** + * 分享有效期 + */ + private Long expiresAt; + /** + * music + */ + private Music music; + /** + * 照片exif信息 + */ + private ExifInfo exif; + /** + * 视频信息 + */ + private VideoInfoDO video; + /** + * 媒体封面 + */ + private String mediaCover; + /** + * m3u8文件路径(相对路径) + */ + private String m3u8; + /*** + * 图片的宽度 + */ + private String w; + /*** + * 图片的高度 + */ + private String h; + /*** + * 封面 + */ + private String cover; + /*** + * 是否显示封面, 缩略图保存在content中 + */ + private Boolean showCover; + /** + * 挂载的文件id + */ + private String mountFileId; + private List tags; + /** + * 备注, 主要用于全文检索 + */ + private String remark; + /** + * 操作权限 + */ + private List operationPermissionList; + /** + * 文件的etag + */ + private String etag; +} diff --git a/src/main/java/com/jmal/clouddisk/model/FileType.java b/src/main/java/com/jmal/clouddisk/model/FileType.java new file mode 100644 index 0000000..167c245 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/FileType.java @@ -0,0 +1,28 @@ +package com.jmal.clouddisk.model; + +/** + * @Description 文件类型 + * @Author jmal + */ +public enum FileType { + /*** + * 音频 + */ + audio, + /*** + * 视频 + */ + video, + /*** + * 图片 + */ + image, + /*** + * 文本 + */ + text, + /*** + * 文档 + */ + document; +} diff --git a/src/main/java/com/jmal/clouddisk/model/GridFSBO.java b/src/main/java/com/jmal/clouddisk/model/GridFSBO.java new file mode 100644 index 0000000..7291fb1 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/GridFSBO.java @@ -0,0 +1,27 @@ +package com.jmal.clouddisk.model; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @author jmal + * @Description GridFSDO + * @date 2023/5/10 16:43 + */ +@Data +public class GridFSBO { + + String id; + + String filename; + + long length; + + @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss") + LocalDateTime uploadDate; + + Metadata metadata; + +} diff --git a/src/main/java/com/jmal/clouddisk/model/HeartwingsDO.java b/src/main/java/com/jmal/clouddisk/model/HeartwingsDO.java new file mode 100644 index 0000000..c0fc64b --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/HeartwingsDO.java @@ -0,0 +1,44 @@ +package com.jmal.clouddisk.model; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import org.springframework.data.mongodb.core.index.CompoundIndex; +import org.springframework.data.mongodb.core.index.CompoundIndexes; +import org.springframework.data.mongodb.core.mapping.Document; +import org.springframework.format.annotation.DateTimeFormat; + +import java.time.LocalDateTime; + +/** + * @author jmal + * @Description 心语记录 + * @Date 2021/3/1 10:19 上午 + */ +@Data +@Document(collection = "heartwings") +@CompoundIndexes({ + @CompoundIndex(name = "createTime_1", def = "{'createTime': 1}"), +}) +public class HeartwingsDO { + + private String id; + + /*** + * 创建者 userId + */ + private String creator; + + /*** + * 创建者 username + */ + private String username; + + /*** + * 心语 + */ + private String heartwings; + + @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime createTime; +} diff --git a/src/main/java/com/jmal/clouddisk/model/LdapConfigDO.java b/src/main/java/com/jmal/clouddisk/model/LdapConfigDO.java new file mode 100644 index 0000000..4705ffc --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/LdapConfigDO.java @@ -0,0 +1,71 @@ +package com.jmal.clouddisk.model; + +import lombok.Data; +import org.springframework.data.mongodb.core.mapping.Document; +import org.springframework.security.crypto.encrypt.TextEncryptor; + +import java.util.List; + +/** + * @author jmal + * @Description LdapDO + * @date 2023/5/8 18:00 + */ +@Data +@Document(collection = "ldapConfig") +public class LdapConfigDO { + String id; + /** + * 是否启用 + */ + Boolean enable; + /** + * ldap服务器 + */ + String ldapServer; + /** + * 默认角色 + */ + List defaultRoleList; + /** + * 管理账号密码 + */ + String password; + /** + * baseDN + */ + String baseDN; + /** + * User DN + */ + String userDN; + /** + * LDAP服务器中对应个人用户名的字段 + */ + String loginName; + + String userId; + + public LdapConfigDTO toLdapConfigDTO(TextEncryptor textEncryptor) { + LdapConfigDTO ldapConfigDTO = new LdapConfigDTO(); + ldapConfigDTO.setEnable(this.enable); + ldapConfigDTO.setLdapServer(this.ldapServer); + ldapConfigDTO.setDefaultRoleList(this.defaultRoleList); + ldapConfigDTO.setPassword(textEncryptor.decrypt(this.password)); + ldapConfigDTO.setBaseDN(this.baseDN); + ldapConfigDTO.setUserDN(this.userDN); + ldapConfigDTO.setLoginName(this.loginName); + return ldapConfigDTO; + } + + public LdapConfigDTO toLdapConfigDTO() { + LdapConfigDTO ldapConfigDTO = new LdapConfigDTO(); + ldapConfigDTO.setEnable(this.enable); + ldapConfigDTO.setLdapServer(this.ldapServer); + ldapConfigDTO.setDefaultRoleList(this.defaultRoleList); + ldapConfigDTO.setBaseDN(this.baseDN); + ldapConfigDTO.setUserDN(this.userDN); + ldapConfigDTO.setLoginName(this.loginName); + return ldapConfigDTO; + } +} diff --git a/src/main/java/com/jmal/clouddisk/model/LdapConfigDTO.java b/src/main/java/com/jmal/clouddisk/model/LdapConfigDTO.java new file mode 100644 index 0000000..b9d3c74 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/LdapConfigDTO.java @@ -0,0 +1,62 @@ +package com.jmal.clouddisk.model; + +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; +import lombok.Data; +import org.springframework.security.crypto.encrypt.TextEncryptor; + +import java.util.List; + +/** + * @author jmal + * @Description LdapDO + * @date 2023/5/8 18:00 + */ +@Data +@Schema +@Valid +public class LdapConfigDTO { + + @Schema(name = "enable", title = "是否启用", example = "true") + Boolean enable; + + @NotNull(message = "ldap服务器不能为空") + @Schema(name = "ldapServer", title = "ldap服务器", example = "localhost:8389") + String ldapServer; + + @NotNull(message = "默认角色不能为空") + @Schema(name = "defaultRoleList", title = "默认角色") + List defaultRoleList; + + @NotNull(message = "账号密码不能为空") + @Schema(name = "password", title = "账号密码", example = "password") + String password; + + @NotNull(message = "Base DN不能为空") + @Schema(name = "baseDN", title = "Base DN", example = "dc=tes,dc=com") + String baseDN; + + @NotNull(message = "User DN不能为空") + @Schema(name = "userDN", title = "User DN", example = "cn=admin,dc=tes,dc=com") + String userDN; + + @NotNull(message = "登录名不能为空") + @Schema(name = "loginName", title = "登录名", example = "uid") + String loginName; + + public LdapConfigDO toLdapConfigDO(String userId, TextEncryptor textEncryptor) { + LdapConfigDO ldapConfigDO = new LdapConfigDO(); + ldapConfigDO.setId("6458f8c5bb943e3cf1db5f29"); + ldapConfigDO.setEnable(this.enable); + ldapConfigDO.setLdapServer(this.ldapServer); + ldapConfigDO.setDefaultRoleList(this.defaultRoleList); + ldapConfigDO.setPassword(textEncryptor.encrypt(password)); + ldapConfigDO.setBaseDN(this.baseDN); + ldapConfigDO.setUserDN(this.userDN); + ldapConfigDO.setLoginName(this.loginName); + ldapConfigDO.setUserId(userId); + return ldapConfigDO; + } + +} diff --git a/src/main/java/com/jmal/clouddisk/model/LogOperation.java b/src/main/java/com/jmal/clouddisk/model/LogOperation.java new file mode 100644 index 0000000..299e199 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/LogOperation.java @@ -0,0 +1,185 @@ +package com.jmal.clouddisk.model; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import org.springframework.data.mongodb.core.index.CompoundIndex; +import org.springframework.data.mongodb.core.mapping.Document; + +import java.time.LocalDateTime; + +/** + * @Description 操作日志 + * @author jmal + */ +@Data +@Document(collection = "log") +@CompoundIndex(name = "createTime_1", def = "{'createTime': 1}") +@CompoundIndex(name = "time_1", def = "{'time': 1}") +@CompoundIndex(name = "username_1", def = "{'username': 1}") +@CompoundIndex(name = "showName_1", def = "{'showName': 1}") +@CompoundIndex(name = "ip_1", def = "{'ip': 1}") +@CompoundIndex(name = "cityIp_1", def = "{'cityIp': 1}") +@CompoundIndex(name = "url_1", def = "{'url': 1}") +@CompoundIndex(name = "status_1", def = "{'status': 1}") +@CompoundIndex(name = "operationModule_1", def = "{'operationModule': 1}") +@CompoundIndex(name = "operationFun_1", def = "{'operationFun': 1}") +@CompoundIndex(name = "deviceModel_1", def = "{'deviceModel': 1}") +@CompoundIndex(name = "operatingSystem_1", def = "{'operatingSystem': 1}") +@CompoundIndex(name = "type_1", def = "{'type': 1}") +@CompoundIndex(name = "type_createTime_1", def = "{'type': 1, 'createTime': 1}") +@CompoundIndex(name = "type_username_1", def = "{'type': 1, 'username': 1}") +@CompoundIndex(name = "type_username_createTime_1", def = "{'type': 1, 'username': 1, 'createTime': 1}") +@CompoundIndex(name = "fileUserId_type_1", def = "{'fileUserId': 1, 'type': 1}") +public class LogOperation { + private String id; + /*** + * 账号 + */ + private String username; + /*** + * 用户名 + */ + private String showName; + /*** + * ip地址 + */ + private String ip; + /*** + * 操作模块 + */ + private String operationModule; + /*** + * 操作功能 + */ + private String operationFun; + /*** + * 请求地址 + */ + private String url; + /*** + * 请求方式 + */ + private String method; + /*** + * 设备型号 + */ + private String deviceModel; + /*** + * 操作系统 + */ + private String operatingSystem; + /*** + * 浏览器 + */ + private String browser; + /*** + * 耗时 + */ + private Long time; + /*** + * 状态 + */ + private Integer status; + /*** + * 操作时间 + */ + @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss") + private LocalDateTime createTime; + /*** + * 备注 + */ + private String remarks; + /*** + * 日志类型 + */ + private String type; + + private IpInfo ipInfo; + + /** + * 文件路径 + */ + private String filepath; + + /** + * 文件所属用户 + */ + private String fileUserId; + + @Data + public static class IpInfo { + /*** + * 国家 + */ + private String country; + /*** + * 区域 + */ + private String area; + /*** + * 省份 + */ + private String province; + /*** + * 城市 + */ + private String city; + /*** + * 运营商 + */ + private String operators; + } + + /*** + * 日志类型 + */ + public enum Type { + /*** + * 登录日志 + */ + LOGIN, + /*** + * 浏览日志 + */ + BROWSE, + /*** + * 系统操作日志 + */ + OPERATION, + /*** + * 文件操作日志 + */ + OPERATION_FILE, + /*** + * 文章访问日志 + */ + ARTICLE, + /*** + * webdav + */ + WEBDAV + } + + public LogOperation clone() { + LogOperation logOperation = new LogOperation(); + logOperation.setUsername(this.username); + logOperation.setShowName(this.showName); + logOperation.setIp(this.ip); + logOperation.setOperationModule(this.operationModule); + logOperation.setOperationFun(this.operationFun); + logOperation.setUrl(this.url); + logOperation.setMethod(this.method); + logOperation.setDeviceModel(this.deviceModel); + logOperation.setOperatingSystem(this.operatingSystem); + logOperation.setBrowser(this.browser); + logOperation.setTime(this.time); + logOperation.setStatus(this.status); + logOperation.setCreateTime(this.createTime); + logOperation.setRemarks(this.remarks); + logOperation.setType(this.type); + logOperation.setIpInfo(this.ipInfo); + logOperation.setFilepath(this.filepath); + logOperation.setFileUserId(this.fileUserId); + return logOperation; + } +} diff --git a/src/main/java/com/jmal/clouddisk/model/LogOperationDTO.java b/src/main/java/com/jmal/clouddisk/model/LogOperationDTO.java new file mode 100644 index 0000000..abc227f --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/LogOperationDTO.java @@ -0,0 +1,79 @@ +package com.jmal.clouddisk.model; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.v3.oas.annotations.media.Schema; + +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @author jmal + * @Description 操作日志传输对象 + * @Date 2021/2/8 2:16 下午 + */ +@Data +@Schema +public class LogOperationDTO { + /*** + * 页数 + */ + @Schema(name = "page", title = "页数", example = "1") + private Integer page; + /** + * 每页条数 + */ + @Schema(name = "pageSize", title = "每页条数", example = "10") + private Integer pageSize; + /** + * 账号 + */ + private String username; + /** + * 用户名 + */ + private String showName; + /** + * avatar + */ + private String avatar; + /** + * 排除账号 + */ + private String excludeUsername; + /** + * ip + */ + private String ip; + /** + * 日志类型 + */ + private String type; + /** + * 要查询的排序参数 + */ + private String sortProp; + /** + * 要查询的排序顺序 + */ + private String sortOrder; + /** + * 开始时间 + */ + private Long startTime; + /** + * 结束时间 + */ + private Long endTime; + + /** + * 操作时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy年MM月dd日 HH:mm:ss") + private LocalDateTime createTime; + + /** + * 操作功能 + */ + private String operationFun; +} diff --git a/src/main/java/com/jmal/clouddisk/model/MarkdownBaseFile.java b/src/main/java/com/jmal/clouddisk/model/MarkdownBaseFile.java new file mode 100644 index 0000000..742bd8f --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/MarkdownBaseFile.java @@ -0,0 +1,52 @@ +package com.jmal.clouddisk.model; + +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.util.List; + +/** + * @author jmal + * @Description MarkdownBaseFile + * @date 2023/5/10 13:54 + */ +@Data +@EqualsAndHashCode(callSuper = true) +public class MarkdownBaseFile extends FileBase { + + private String username; + /*** + * 是否发布,适用于文档类型 + */ + private Boolean release; + /*** + * 封面 + */ + private String cover; + /*** + * 用户头像 + */ + private String avatar; + /*** + * 缩略名 + */ + private String slug; + /*** + * 分类Id集合 + */ + private String[] categoryIds; + + /*** + * 分类集合 + */ + private List categories; + /*** + * 标签Id集合 + */ + private String[] tagIds; + /*** + * 标签集合 + */ + private List tags; + +} diff --git a/src/main/java/com/jmal/clouddisk/model/MarkdownVO.java b/src/main/java/com/jmal/clouddisk/model/MarkdownVO.java new file mode 100644 index 0000000..0e5e39e --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/MarkdownVO.java @@ -0,0 +1,25 @@ +package com.jmal.clouddisk.model; + +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * @Description 文档 + * @blame jmal + * @Date 2020/11/15 7:33 下午 + */ +@Data +@EqualsAndHashCode(callSuper = true) +public class MarkdownVO extends MarkdownBaseFile { + + private String userId; + /*** + * updateDate 距离现在的时间 + */ + private Long agoTime; + /*** + * 是否有草稿 + */ + private Boolean draft; + +} diff --git a/src/main/java/com/jmal/clouddisk/model/Metadata.java b/src/main/java/com/jmal/clouddisk/model/Metadata.java new file mode 100644 index 0000000..bf6c10f --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/Metadata.java @@ -0,0 +1,16 @@ +package com.jmal.clouddisk.model; + +import lombok.Data; + +@Data +public class Metadata { + String filepath; + String filename; + String time; + String compression; + /** + * 操作人(username) + */ + String operator; + Long size; +} diff --git a/src/main/java/com/jmal/clouddisk/model/Music.java b/src/main/java/com/jmal/clouddisk/model/Music.java new file mode 100644 index 0000000..1a45e9f --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/Music.java @@ -0,0 +1,26 @@ +package com.jmal.clouddisk.model; + +import lombok.Data; + +/** + * @author jmal + */ +@Data +public class Music { + /*** + * 歌名 + */ + String songName; + /*** + * 歌手 + */ + String singer; + /*** + * 专辑 + */ + String album; + /*** + * 封面 + */ + String coverBase64; +} diff --git a/src/main/java/com/jmal/clouddisk/model/OperationPermission.java b/src/main/java/com/jmal/clouddisk/model/OperationPermission.java new file mode 100644 index 0000000..9f80fc0 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/OperationPermission.java @@ -0,0 +1,13 @@ +package com.jmal.clouddisk.model; + +/** + * @author jmal + * @Description 文件操作权限 + * @date 2023/8/10 15:19 + */ +public enum OperationPermission { + DOWNLOAD, + UPLOAD, + DELETE, + PUT; +} diff --git a/src/main/java/com/jmal/clouddisk/model/OperationTips.java b/src/main/java/com/jmal/clouddisk/model/OperationTips.java new file mode 100644 index 0000000..e62f8a7 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/OperationTips.java @@ -0,0 +1,23 @@ +package com.jmal.clouddisk.model; + +import lombok.Builder; +import lombok.Data; +import lombok.experimental.Accessors; + +@Data +@Accessors(chain = true) +@Builder +public class OperationTips { + /** + * 操作结果说明 + */ + String msg; + /** + * 操作结果状态 + */ + Boolean success; + /** + * 操作 + */ + String operation; +} diff --git a/src/main/java/com/jmal/clouddisk/model/Page.java b/src/main/java/com/jmal/clouddisk/model/Page.java new file mode 100644 index 0000000..fcde10a --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/Page.java @@ -0,0 +1,129 @@ +package com.jmal.clouddisk.model; +import cn.hutool.core.util.PageUtil; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.util.ArrayList; + +/** + * @author jmal + * @Description 分页数据结果集 + * @Date 2020/11/18 10:32 上午 + */ +@EqualsAndHashCode(callSuper = true) +@Data +public class Page extends ArrayList { + + public static final int DEFAULT_PAGE_SIZE = 10; + + /** + * 页码,0表示第一页 + */ + private int page; + /** + * 每页结果数 + */ + private int pageSize; + /** + * 总页数 + */ + private int totalPage; + /** + * 总数 + */ + private int total; + + private T data; + + //---------------------------------------------------------- Constructor start + + /** + * 构造 + */ + public Page() { + this(0, DEFAULT_PAGE_SIZE); + } + + /** + * 构造 + * + * @param page 页码,0表示第一页 + * @param pageSize 每页结果数 + */ + public Page(int page, int pageSize) { + super(pageSize <= 0 ? DEFAULT_PAGE_SIZE : pageSize); + + this.page = Math.max(page, 0); + this.pageSize = pageSize <= 0 ? DEFAULT_PAGE_SIZE : pageSize; + } + + /** + * 构造 + * + * @param page 页码,0表示第一页 + * @param pageSize 每页结果数 + * @param total 结果总数 + */ + public Page(int page, int pageSize, int total) { + this(page, pageSize); + + this.total = total; + this.totalPage = PageUtil.totalPage(total, pageSize); + } + + /** + * 构造 + * + * @param total 结果总数 + */ + public Page(int total) { + this(0, total); + + this.total = total; + this.totalPage = PageUtil.totalPage(total, pageSize); + } + //---------------------------------------------------------- Constructor end + + /** + * @return 是否第一页 + */ + public boolean isFirst() { + return this.page == 0; + } + + /** + * @return 是否最后一页 + */ + public boolean isLast() { + return this.page >= (this.totalPage - 1); + } + + /** + * @return 当前页码 + */ + public int getCurrentPage() { + return this.page + 1; + } + + /** + * 分页彩虹算法
+ * 来自:https://github.com/iceroot/iceroot/blob/master/src/main/java/com/icexxx/util/IceUtil.java
+ * 通过传入的信息,生成一个分页列表显示 + * @return 分页条 + */ + public int[] rainbow() { + return rainbow(5); + } + + /** + * 分页彩虹算法
+ * 来自:https://github.com/iceroot/iceroot/blob/master/src/main/java/com/icexxx/util/IceUtil.java
+ * 通过传入的信息,生成一个分页列表显示 + * @param displayCount 每屏展示的页数 + * @return 分页条 + */ + public int[] rainbow(int displayCount) { + return PageUtil.rainbow(this.page + 1, this.totalPage, displayCount); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/model/ShareDO.java b/src/main/java/com/jmal/clouddisk/model/ShareDO.java new file mode 100644 index 0000000..40288cf --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/ShareDO.java @@ -0,0 +1,74 @@ +package com.jmal.clouddisk.model; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jmal.clouddisk.service.impl.ShareServiceImpl; +import lombok.Data; +import org.springframework.data.annotation.Id; +import org.springframework.data.mongodb.core.mapping.Document; +import org.springframework.format.annotation.DateTimeFormat; + +import java.time.LocalDateTime; +import java.util.List; + +/** + * @Description 文件分享模型 + * @Author jmal + * @Date 2020-03-17 16:28 + */ +@Data +@Document(collection = ShareServiceImpl.COLLECTION_NAME) +public class ShareDO { + @Id + private String id; + /** + * 父级分享Id + */ + private String fatherShareId; + private String shortId; + private Boolean shareBase; + /** + * 链接拥有者 + */ + private String userId; + /** + * 文件Id + */ + private String fileId; + /** + * 文件名 + */ + private String fileName; + /** + * 文件类型 + */ + private String contentType; + /** + * 是否为文件夹 + */ + private Boolean isFolder; + /** + * 创建时间 + */ + @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime createDate; + /** + * 过期时间 + */ + @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm") + private LocalDateTime expireDate; + /** + * 是否为私密链接 + */ + private Boolean isPrivacy; + /** + * 提取码 + */ + private String extractionCode; + /** + * 操作权限 + */ + private List operationPermissionList; + +} diff --git a/src/main/java/com/jmal/clouddisk/model/ShareVO.java b/src/main/java/com/jmal/clouddisk/model/ShareVO.java new file mode 100644 index 0000000..ba72801 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/ShareVO.java @@ -0,0 +1,41 @@ +package com.jmal.clouddisk.model; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; + +import java.time.LocalDateTime; +import java.util.List; + +/** + * @Description 文件分享模型 + * @Author jmal + * @Date 2020-03-17 16:28 + */ +@Data +public class ShareVO { + private String shareId; + private String shortId; + /*** + * 提取码 + */ + private String extractionCode; + + private Boolean isPrivacy; + + private String userId; + + private String fileName; + + private Boolean shareBase; + private Boolean subShare; + + private Boolean isFolder; + private String contentType; + @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm") + private LocalDateTime expireDate; + + private List operationPermissionList; + +} diff --git a/src/main/java/com/jmal/clouddisk/model/SharerDTO.java b/src/main/java/com/jmal/clouddisk/model/SharerDTO.java new file mode 100644 index 0000000..004aeda --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/SharerDTO.java @@ -0,0 +1,29 @@ +package com.jmal.clouddisk.model; + +import io.swagger.v3.oas.annotations.media.Schema; + +import lombok.Data; + +/** + * @author jmal + * @Description 分享者信息 + * @Date 2021/4/6 4:25 下午 + */ +@Data +@Schema +public class SharerDTO { + String shareId; + String userId; + @Schema(name = "avatar", title = "头像链接") + String avatar; + @Schema(name = "showName", title = "昵称") + String showName; + @Schema(name = "username", title = "用户名") + String username; + @Schema(name = "netdiskLogo", title = "网盘logo文件名", hidden = true) + String netdiskLogo; + @Schema(name = "netdiskName", title = "网盘名称", hidden = true) + String netdiskName; + @Schema(name = "iframe", title = "iframe配置", hidden = true) + String iframe; +} diff --git a/src/main/java/com/jmal/clouddisk/model/Tag.java b/src/main/java/com/jmal/clouddisk/model/Tag.java new file mode 100644 index 0000000..6a3e15e --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/Tag.java @@ -0,0 +1,12 @@ +package com.jmal.clouddisk.model; + +import lombok.Data; +import org.springframework.data.annotation.TypeAlias; + +@Data +@TypeAlias("") +public class Tag { + String tagId; + String name; + String color; +} diff --git a/src/main/java/com/jmal/clouddisk/model/TagDO.java b/src/main/java/com/jmal/clouddisk/model/TagDO.java new file mode 100644 index 0000000..722d684 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/TagDO.java @@ -0,0 +1,72 @@ +package com.jmal.clouddisk.model; + +import lombok.Data; +import org.jetbrains.annotations.NotNull; +import org.springframework.data.annotation.Id; + +import java.text.Collator; +import java.util.Comparator; + +/** + * @author jmal + * @Description 标签 + * @Date 2020/10/26 4:30 下午 + */ +@Data +public class TagDO implements Comparable { + @Id + private String id; + + private String userId; + /** + * 标签名称 + */ + private String name; + /** + * 标签缩略名,默认为name + */ + private String slug; + /** + * 标签颜色,十六进制字符串,例如#00000000 + */ + private String color; + /** + * 标签背景图 + */ + String tagBackground; + /** + * 排序 + */ + Integer sort; + + public ArticlesQueryVO toArticlesQuery() { + ArticlesQueryVO articlesQueryVO = new ArticlesQueryVO(); + articlesQueryVO.setBackground(tagBackground); + articlesQueryVO.setName("标签 - " + name); + return articlesQueryVO; + } + + public TagDTO toTagDTO() { + TagDTO tagDTO = new TagDTO(); + tagDTO.setId(id); + tagDTO.setUserId(userId); + tagDTO.setName(name); + tagDTO.setSlug(slug); + tagDTO.setTagBackground(tagBackground); + tagDTO.setColor(color); + return tagDTO; + } + + @Override + public int compareTo(@org.jetbrains.annotations.NotNull TagDO tagDO) { + if (this.sort == null || tagDO.sort == null) { + return sort(tagDO); + } + return this.sort - tagDO.sort; + } + + private int sort(@NotNull TagDO tagDO) { + Comparator cmp = Collator.getInstance(java.util.Locale.CHINA); + return cmp.compare(getName(), tagDO.getName()); + } +} diff --git a/src/main/java/com/jmal/clouddisk/model/TagDTO.java b/src/main/java/com/jmal/clouddisk/model/TagDTO.java new file mode 100644 index 0000000..390700a --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/TagDTO.java @@ -0,0 +1,59 @@ +package com.jmal.clouddisk.model; + +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; +import lombok.Data; +import org.springframework.data.annotation.Id; + +import java.text.Collator; +import java.util.Comparator; + +/** + * @author jmal + * @Description 标签 + * @Date 2020/10/26 4:30 下午 + */ +@Data +@Schema +@Valid +public class TagDTO implements Comparable { + + @Id + @Schema(hidden = true) + private String id; + + @Schema(name = "userId", title = "用户Id") + private String userId; + + @NotNull(message = "标签名称不能为空") + @Schema(name = "name", title = "标签名称") + private String name; + + @Schema(name = "slug", title = "缩略名(默认为name)") + private String slug; + + @Schema(name = "tagBackground", title = "标签背景") + String tagBackground; + + @Schema(hidden = true, name = "articleNum", title = "文章数") + Long articleNum; + + @Schema(hidden = true, name = "color", title = "标签字体颜色") + String color; + + @Schema(hidden = true, name = "fontSize", title = "标签字体大小") + Long fontSize; + + @Schema(hidden = true, name = "sort", title = "排序") + Integer sort; + + @Override + public int compareTo(@org.jetbrains.annotations.NotNull TagDTO tagDTO) { + if (this.sort == null || tagDTO.sort == null) { + Comparator cmp = Collator.getInstance(java.util.Locale.CHINA); + return cmp.compare(getName(), tagDTO.getName()); + } + return this.sort - tagDTO.sort; + } +} diff --git a/src/main/java/com/jmal/clouddisk/model/Trash.java b/src/main/java/com/jmal/clouddisk/model/Trash.java new file mode 100644 index 0000000..7fbe513 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/Trash.java @@ -0,0 +1,91 @@ +package com.jmal.clouddisk.model; + +import com.jmal.clouddisk.service.impl.FileServiceImpl; +import com.jmal.clouddisk.media.VideoInfoDO; +import lombok.Data; +import org.springframework.data.mongodb.core.index.CompoundIndex; +import org.springframework.data.mongodb.core.index.CompoundIndexes; +import org.springframework.data.mongodb.core.mapping.Document; + +import java.util.Objects; + +/** + * Trash 文件模型 + * + * @author jmal + */ +@Data +@Document(collection = FileServiceImpl.TRASH_COLLECTION_NAME) +@CompoundIndexes({ + @CompoundIndex(name = "name_1", def = "{'name': 1}"), + @CompoundIndex(name = "size_1", def = "{'size': 1}"), + @CompoundIndex(name = "updateDate_1", def = "{'updateDate': 1}"), + @CompoundIndex(name = "hidden_1", def = "{'hidden': 1}"), +}) +public class Trash extends FileBase { + private String userId; + private String path; + /** + * 图片的宽度 + */ + private String w; + /** + * 图片的高度 + */ + private String h; + /** + * 文件内容 + */ + private byte[] content; + /*** + * 文件后缀名 + */ + private String suffix; + /** + * 音乐 + */ + private Music music; + /** + * 照片exif信息 + */ + private ExifInfo exif; + /** + * 视频信息 + */ + private VideoInfoDO video; + /** + * m3u8文件路径(相对路径) + */ + private String m3u8; + /** + * vtt文件路径(相对路径) + */ + private String vtt; + /** + * 是否隐藏显示 + */ + private Boolean hidden; + /** + * 是否移动到回收站, 从原位置移动到jmalcloudTrashDir + */ + private Boolean move; + + @Override + public boolean equals(Object obj) { + if (obj == null) { + return false; + } + if (getClass() != obj.getClass()) { + return false; + } + final FileBase other = (FileBase) obj; + return Objects.equals(this.id, other.id); + } + + @Override + public int hashCode() { + int hash = 7; + hash = 89 * hash + (this.id != null ? this.id.hashCode() : 0); + return hash; + } +} diff --git a/src/main/java/com/jmal/clouddisk/model/UploadApiParamDTO.java b/src/main/java/com/jmal/clouddisk/model/UploadApiParamDTO.java new file mode 100644 index 0000000..872d27f --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/UploadApiParamDTO.java @@ -0,0 +1,305 @@ +package com.jmal.clouddisk.model; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jmal.clouddisk.util.FileNameUtils; +import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; +import org.springframework.web.multipart.MultipartFile; + +import java.io.File; +import java.io.InputStream; +import java.time.LocalDateTime; +import java.util.List; +import java.util.Map; + +/** + * @Description UploadApiParam + * @Author jmal + * @Date 2020-01-27 14:50 + * @author jmal + */ +@Data +public class UploadApiParamDTO { + /*** + * 当前是第几个分片 + */ + Integer chunkNumber; + /*** + * 分片大小 + */ + Integer chunkSize; + /*** + * 当前分片大小 + */ + Integer currentChunkSize; + /*** + * 文件总大小 + */ + Long totalSize; + /*** + * 文件唯一标识MD5 + */ + String identifier; + /*** + * 文件或文件夹名 + */ + String filename; + /** + * 文件最后修改时间 + */ + Long lastModified; + /*** + * 文件Id + */ + String fileId; + /*** + * 相对路径,上传文件夹是会用到 + */ + String relativePath; + /*** + * 总分片大小 + */ + Integer totalChunks; + MultipartFile file; + + List filenames; + + InputStream inputStream; + + /*** + * 所有的文件都存在这 + */ + String rootPath; + + /*** + * 用户名 + */ + String username; + String userId; + + String shareId; + + /*** + * 当前目录,用户的网盘目录,如果为空则为"/" + */ + String currentDirectory; + + /** + * 目录fileId + */ + String folder; + Map props; + /** + * 文件id + */ + String mountFileId; + + /*** + * 当前目录,用户的实际磁盘目录 + */ + String currentAbsoluteDirectory; + + /*** + * 是否是文件夹 + */ + Boolean isFolder; + /** + * 是否只显示文件夹 + */ + Boolean justShowFolder; + /** + * path后面是否加上文件名 + */ + Boolean pathAttachFileName; + /*** + * 当isFolder=true时 生效,是否是根目录 + */ + Boolean isRoot; + /*** + * 当isFolder=true时 生效,folderPath为文件夹路径 + */ + String folderPath; + /*** + * 文件名后缀 + */ + String suffix; + /*** + * 文件类型 + */ + String contentType; + /*** + * 要查询的文件类型 + */ + String queryFileType; + /*** + * 文件文本 + */ + String contentText; + /*** + * 要查询的页数 + */ + Integer pageIndex; + /*** + * 要查询的每页条数 + */ + Integer pageSize; + /*** + * 要查询的排序参数 + */ + String sortableProp; + /*** + * 要查询的排序顺序 + */ + String order; + /** + * 是否显示文件夹大小 + */ + Boolean showFolderSize; + /*** + * 是否为草稿 + */ + Boolean isDraft; + /*** + * 是否已发布 + */ + Boolean isRelease; + /** + * 是否收藏 + */ + Boolean isFavorite; + /** + * 是否为挂载目录 + */ + Boolean isMount; + /** + * tagId + */ + String tagId; + /** + * 是否在回收站 + */ + Boolean isTrash; + /*** + * 封面 + */ + String cover; + /*** + * 缩略名 + */ + String slug; + /*** + * 分类Id集合 + */ + String[] categoryIds; + /*** + * 标签名称集合 + */ + String[] tagNames; + /** + * 操作权限 + */ + List operationPermissionList; + /** + * 隐藏挂载的文件 + */ + Boolean hideMountFile; + + /** + * 是否覆盖, 用于移动或复制文件 + */ + Boolean isOverride; + + /** + * 移动或复制文件的目标路径 + */ + String targetPath; + + /** + * 修改时间范围开始 + */ + Long queryModifyStart; + + /** + * 修改时间范围结束 + */ + Long queryModifyEnd; + + /** + * 文件大小范围最小 + */ + Long querySizeMin; + + /** + * 文件大小范围最大 + */ + Long querySizeMax; + + /** + * 是否搜索挂载盘 + */ + Boolean searchMount; + + /** + * 是否全盘搜索(用户根目录) + */ + Boolean searchOverall; + + /** + * 是否精确匹配 + */ + Boolean exactSearch; + + /** + * 是否包含标签名称 + */ + Boolean includeTagName; + + /** + * 是否包含文件名 + */ + Boolean includeFileName; + + /** + * 是否包含文件内容 + */ + Boolean includeFileContent; + + @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime uploadDate; + + public String getFilename() { + return FileNameUtils.safeDecode(filename); + } + + public String getRelativePath() { + if (File.separator.equals("\\")) { + // Windows 系统 + relativePath = relativePath.replace("/", "\\"); + } + return FileNameUtils.safeDecode(relativePath); + } + + public String getCurrentDirectory() { + if (currentDirectory == null || "undefined".equals(currentDirectory)) { + return File.separator; + } + if (File.separator.equals("\\")) { + // Windows 系统 + currentDirectory = currentDirectory.replace("/", "\\"); + } + return FileNameUtils.safeDecode(currentDirectory); + } + + public String getFolderPath() { + if (folderPath == null || "undefined".equals(folderPath)) { + return ""; + } + if (File.separator.equals("\\")) { + // Windows 系统 + folderPath = folderPath.replace("/", "\\"); + } + return FileNameUtils.safeDecode(folderPath); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/model/UploadImageDTO.java b/src/main/java/com/jmal/clouddisk/model/UploadImageDTO.java new file mode 100644 index 0000000..6d675d7 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/UploadImageDTO.java @@ -0,0 +1,24 @@ +package com.jmal.clouddisk.model; + +import lombok.Data; +import org.springframework.web.multipart.MultipartFile; + +/** + * @author jmal + * @Description 图片上传传输对象 + * @Date 2020/11/16 11:12 上午 + */ +@Data +public class UploadImageDTO { + String username; + String userId; + /** + * markdown文件id + */ + String fileId; + /** + * 远程url图像 + */ + String url; + MultipartFile[] files; +} diff --git a/src/main/java/com/jmal/clouddisk/model/UploadResponse.java b/src/main/java/com/jmal/clouddisk/model/UploadResponse.java new file mode 100644 index 0000000..7dfe5e2 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/UploadResponse.java @@ -0,0 +1,44 @@ +package com.jmal.clouddisk.model; + +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * @Description UploadResponse + * @Author jmal + * @Date 2020-01-27 17:04 + * @author jmal + */ +@Data +public class UploadResponse { + + /*** + * 服务是否已经存在该文件,通过文件的md5校验 + */ + boolean pass; + /** + * 已存在 + */ + boolean exist; + /*** + * 代表这些分片是已经上传过的了 + */ + List resume; + /*** + * 是否上传完成 + */ + boolean upload; + /*** + * 上传后是合并完成 + */ + boolean merge; + + public UploadResponse() { + this.pass = false; + this.upload = false; + this.merge = false; + this.resume = new ArrayList<>(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/model/Urlset.java b/src/main/java/com/jmal/clouddisk/model/Urlset.java new file mode 100644 index 0000000..fd4dee0 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/Urlset.java @@ -0,0 +1,47 @@ +package com.jmal.clouddisk.model; + +import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper; +import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; +import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement; +import lombok.Data; +import java.util.ArrayList; +import java.util.List; + +/** + * @author jmal + * @Description sitemap xml + * @Date 2021/02/25 4:26 下午 + */ + +@JacksonXmlRootElement(localName = "urlset") +@Data +public class Urlset { + + @JacksonXmlElementWrapper(useWrapping = false) + private List url = new ArrayList<>(); + + @JacksonXmlRootElement(localName = "url") + @Data + public static class Url { + /*** + * 必填标签,这是具体某一个链接的定义入口,每一条数据都要用和包含在里面,这是必须的 + */ + @JacksonXmlProperty(localName = "loc") + private String loc; + /*** + * 可以不提交该标签,用来指定该链接的最后更新时间 + */ + @JacksonXmlProperty(localName = "lastmod") + private String lastmod; + /*** + * 可以不提交该标签,用这个标签告诉此链接可能会出现的更新频率 + */ + @JacksonXmlProperty(localName = "changefreq") + private String changefreq; + /*** + * 可以不提交该标签,用来指定此链接相对于其他链接的优先权比值,此值定于0.0-1.0之间 + */ + @JacksonXmlProperty(localName = "priority") + private String priority; + } +} \ No newline at end of file diff --git a/src/main/java/com/jmal/clouddisk/model/UserAccessTokenDO.java b/src/main/java/com/jmal/clouddisk/model/UserAccessTokenDO.java new file mode 100644 index 0000000..c0e5362 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/UserAccessTokenDO.java @@ -0,0 +1,35 @@ +package com.jmal.clouddisk.model; + +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @Description 用户授权码 + * @Author jmal + * @Date 2020/9/30 10:34 上午 + */ +@Data +public class UserAccessTokenDO { + String id; + /*** + * 授权码名称 + */ + private String name; + /*** + * 用户账号 + */ + private String username; + /*** + * 用户授权码 + */ + private String accessToken; + /*** + * 创建时间 + */ + LocalDateTime createTime; + /*** + * 最近活动时间 + */ + LocalDateTime lastActiveTime; +} diff --git a/src/main/java/com/jmal/clouddisk/model/UserAccessTokenDTO.java b/src/main/java/com/jmal/clouddisk/model/UserAccessTokenDTO.java new file mode 100644 index 0000000..b1e96e7 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/UserAccessTokenDTO.java @@ -0,0 +1,38 @@ +package com.jmal.clouddisk.model; + +import com.fasterxml.jackson.annotation.JsonFormat; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @Description 用户授权码 + * @Author jmal + * @Date 2020/9/30 10:34 上午 + */ +@Data +public class UserAccessTokenDTO { + String id; + /*** + * 授权码名称 + */ + private String name; + /*** + * 用户账号 + */ + private String username; + /*** + * 创建时间 + */ + @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss") + @Schema(hidden = true) + LocalDateTime createTime; + /*** + * 最近活动时间 + */ + @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss") + @Schema(hidden = true) + LocalDateTime lastActiveTime; +} diff --git a/src/main/java/com/jmal/clouddisk/model/UserTokenDO.java b/src/main/java/com/jmal/clouddisk/model/UserTokenDO.java new file mode 100644 index 0000000..607f1a0 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/UserTokenDO.java @@ -0,0 +1,20 @@ +package com.jmal.clouddisk.model; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * @Description userToken + * 用来存储用户登录后的信息 + * @Author jmal + * @Date 2020/9/30 10:34 上午 + */ +@Data +@Accessors(chain = true) +public class UserTokenDO { + private String username; + /*** + * 最后一次访问的时间戳 + */ + private long timestamp; +} diff --git a/src/main/java/com/jmal/clouddisk/model/WebsiteSettingDO.java b/src/main/java/com/jmal/clouddisk/model/WebsiteSettingDO.java new file mode 100644 index 0000000..69da421 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/WebsiteSettingDO.java @@ -0,0 +1,98 @@ +package com.jmal.clouddisk.model; + +import lombok.Data; + +import java.util.List; + +/** + * @author jmal + * @Description 网站设置 + * @Date 2020/11/5 2:45 下午 + */ +@Data +public class WebsiteSettingDO { + + /*** + * 站点背景大图 + */ + String backgroundSite; + /*** + * 首页大图内文字 / 心语 + */ + String backgroundTextSite; + /*** + * 首页大图内描述 + */ + String backgroundDescSite; + /*** + * 网盘logo文件名 + */ + String netdiskLogo; + /*** + * 网盘名称 + */ + String netdiskName; + /*** + * 站点地址 + */ + String siteUrl; + /*** + * 网站 图标 + */ + String siteIco; + /*** + * 网站 Logo + */ + String siteLogo; + /*** + * 站点名称 + */ + String siteName; + /*** + * 需要显示的独立页面 + */ + List alonePages; + /*** + * 操作按钮 + */ + String operatingButtons; + /*** + * 分类页面背景 + */ + String categoryBackground; + /*** + * 归档页面背景 + */ + String archiveBackground; + /*** + * 标签页面背景 + */ + String tagBackground; + /*** + * 版权信息 + */ + String copyright; + /*** + * 备案许可号 + */ + String recordPermissionNum; + /** + * 公网备案号 + */ + String networkRecordNumber; + + /** + * 公网备案号 展示文本 + */ + String networkRecordNumberStr; + + /** + * 页脚html + */ + String footerHtml; + + /** + * iframe预览配置 + */ + String iframe; +} diff --git a/src/main/java/com/jmal/clouddisk/model/WebsiteSettingDTO.java b/src/main/java/com/jmal/clouddisk/model/WebsiteSettingDTO.java new file mode 100644 index 0000000..3fd7e0c --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/WebsiteSettingDTO.java @@ -0,0 +1,136 @@ +package com.jmal.clouddisk.model; + +import cn.hutool.core.util.StrUtil; +import lombok.Data; + +import java.util.List; + +/** + * @author jmal + * @Description 网站设置DTO + * @Date 2020/11/5 3:58 下午 + */ +@Data +public class WebsiteSettingDTO { + String userId; + /*** + * 用户头像 + */ + String avatar; + /*** + * 站点背景大图 + */ + String backgroundSite; + /*** + * 首页大图内文字 + */ + String backgroundTextSite; + /*** + * 首页大图内描述 + */ + String backgroundDescSite; + /*** + * 网盘logo文件名 + */ + String netdiskLogo; + /*** + * 网盘名称 + */ + String netdiskName; + /*** + * 站点地址 + */ + String siteUrl; + /*** + * 网站 图标 + */ + String siteIco; + /*** + * 网站 Logo + */ + String siteLogo; + /*** + * 站点名称 + */ + String siteName; + /*** + * 需要显示的独立页面 + */ + List alonePages; + /*** + * 操作按钮(原始字符串) + */ + String operatingButtons; + /*** + * 分类页面背景 + */ + String categoryBackground; + /*** + * 归档页面背景 + */ + String archiveBackground; + /*** + * 标签页面背景 + */ + String tagBackground; + /*** + * 操作按钮对象集合 + */ + List operatingButtonList; + + /*** + * 版权信息 + */ + String copyright; + /*** + * 备案许可号 + */ + String recordPermissionNum; + + /** + * 公网备案号 + */ + String networkRecordNumber; + + /** + * 公网备案号 展示文本 + */ + String networkRecordNumberStr; + + /** + * 页脚html + */ + String footerHtml; + + /** + * iframe预览配置 + */ + String iframe; + + Boolean exactSearch; + + @Data + public static class OperatingButton { + /*** + * 按钮名称 + */ + String title; + /*** + * 按钮图标class + */ + String style; + /*** + * 点击按钮后跳转的地址 + */ + String url; + } + + public boolean isShowAlonePage(String page){ + return alonePages.contains(page); + } + + public boolean isShowBeian(){ + return !StrUtil.isBlank(networkRecordNumberStr); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/model/query/QueryBaseDTO.java b/src/main/java/com/jmal/clouddisk/model/query/QueryBaseDTO.java new file mode 100644 index 0000000..3deb30b --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/query/QueryBaseDTO.java @@ -0,0 +1,22 @@ +package com.jmal.clouddisk.model.query; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +/** + * @author jmal + * @Description 查询条件基类 + * @Date 2021/1/10 2:03 下午 + */ +@Data +@Schema +public class QueryBaseDTO { + @Schema(name = "page", title = "当前页") + Integer page; + @Schema(name = "pageSize", title = "每页条数") + Integer pageSize; + @Schema(name = "sortProp", title = "要排序字段") + String sortProp; + @Schema(name = "sortProp", title = "要排序顺序(descending|ascending)") + String sortOrder; +} diff --git a/src/main/java/com/jmal/clouddisk/model/query/QueryMenuDTO.java b/src/main/java/com/jmal/clouddisk/model/query/QueryMenuDTO.java new file mode 100644 index 0000000..e6d3056 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/query/QueryMenuDTO.java @@ -0,0 +1,25 @@ +package com.jmal.clouddisk.model.query; + +import io.swagger.v3.oas.annotations.media.Schema; + +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * @author jmal + * @Description 菜单查询条件 + * @Date 2021/1/10 2:03 下午 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@Schema +public class QueryMenuDTO extends QueryBaseDTO { + @Schema(name = "name", title = "菜单名称") + String name; + @Schema(name = "code", title = "菜单地址") + String path; + @Schema(name = "roleId", title = "角色Id") + String roleId; + @Schema(name = "userId", title = "userId") + String userId; +} diff --git a/src/main/java/com/jmal/clouddisk/model/query/QueryRoleDTO.java b/src/main/java/com/jmal/clouddisk/model/query/QueryRoleDTO.java new file mode 100644 index 0000000..3e4f5f3 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/query/QueryRoleDTO.java @@ -0,0 +1,23 @@ +package com.jmal.clouddisk.model.query; + +import io.swagger.v3.oas.annotations.media.Schema; + +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * @author jmal + * @Description 角色查询条件 + * @Date 2021/1/10 2:03 下午 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@Schema +public class QueryRoleDTO extends QueryBaseDTO { + @Schema(name = "name", title = "角色名称") + String name; + @Schema(name = "code", title = "角色标识") + String code; + @Schema(name = "remarks", title = "备注") + String remarks; +} diff --git a/src/main/java/com/jmal/clouddisk/model/query/QueryUserDTO.java b/src/main/java/com/jmal/clouddisk/model/query/QueryUserDTO.java new file mode 100644 index 0000000..e764c9b --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/query/QueryUserDTO.java @@ -0,0 +1,21 @@ +package com.jmal.clouddisk.model.query; + +import io.swagger.v3.oas.annotations.media.Schema; + +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * @author jmal + * @Description 用户查询条件 + * @Date 2021/1/10 2:03 下午 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@Schema +public class QueryUserDTO extends QueryBaseDTO { + @Schema(name = "username", title = "用户账号") + String username; + @Schema(name = "showName", title = "用户名") + String showName; +} diff --git a/src/main/java/com/jmal/clouddisk/model/query/SearchDTO.java b/src/main/java/com/jmal/clouddisk/model/query/SearchDTO.java new file mode 100644 index 0000000..977b126 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/query/SearchDTO.java @@ -0,0 +1,174 @@ +package com.jmal.clouddisk.model.query; + +import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.core.util.BooleanUtil; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Builder; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * @author jmal + * @Description Lucene search param + * @Date 2021/4/27 5:22 下午 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@Builder +@Schema +public class SearchDTO extends QueryBaseDTO { + + String id; + + String userId; + /** + * 挂载盘用户id + */ + String mountUserId; + /** + * 要查询的关键字 + */ + String keyword; + /** + * 要查询的文件类型 + */ + String type; + /** + * 当前目录 + */ + String currentDirectory; + /** + * 是否是文件夹 + */ + Boolean isFolder; + /** + * 是否是收藏 + */ + Boolean isFavorite; + /** + * 是否挂载 + */ + Boolean isMount; + /** + * tagId + */ + String tagId; + /** + * 查询的文件夹 + */ + String folder; + + /** + * 修改时间范围开始 + */ + Long modifyStart; + + /** + * 修改时间范围结束 + */ + Long modifyEnd; + + /** + * 文件大小范围最小 + */ + Long sizeMin; + + /** + * 文件大小范围最大 + */ + Long sizeMax; + + /** + * 是否搜索挂载盘 + */ + Boolean searchMount; + + /** + * 是否全盘搜索(用户根目录) + */ + Boolean searchOverall; + + /** + * 是否精确匹配 + */ + Boolean exactSearch; + + /** + * 是否包含标签名称 + */ + Boolean includeTagName; + + /** + * 是否包含文件名 + */ + Boolean includeFileName; + + /** + * 是否包含文件内容 + */ + Boolean includeFileContent; + + public String getSearchUserId() { + if (CharSequenceUtil.isEmpty(mountUserId)) { + return userId; + } + return isSearchMountSubFolder() ? mountUserId : userId; + } + + /** + * 是否搜索挂载子目录 + */ + public boolean isSearchMountSubFolder() { + if (BooleanUtil.isTrue(searchMount)) { + return false; + } + String path = getCurrentDirectory(); + return CharSequenceUtil.isNotEmpty(folder) && !"/".equals(path); + } + + /** + * 是否只搜索所有挂载盘 + */ + public boolean onlySearchMount() { + return BooleanUtil.isTrue(isMount) && !isSearchMountSubFolder(); + } + + public String getCurrentDirectory() { + if (BooleanUtil.isTrue(searchOverall)) { + return null; + } + return currentDirectory; + } + + public String getTagId() { + String path = getCurrentDirectory(); + if (CharSequenceUtil.isNotEmpty(path) && !"/".equals(path)) { + return null; + } + return tagId; + } + + public SearchOptionHistoryDO toSearchOptionDO() { + SearchOptionHistoryDO.SearchOptionHistoryDOBuilder builder = SearchOptionHistoryDO.builder(); + builder.id(id) + .userId(userId) + .keyword(keyword) + .type(type) + .currentDirectory(currentDirectory) + .isFolder(isFolder) + .isFavorite(isFavorite) + .tagId(tagId) + .folder(folder) + .modifyStart(modifyStart) + .modifyEnd(modifyEnd) + .sizeMin(sizeMin) + .sizeMax(sizeMax) + .searchMount(searchMount) + .searchOverall(searchOverall) + .exactSearch(exactSearch) + .includeTagName(includeTagName) + .includeFileName(includeFileName) + .includeFileContent(includeFileContent); + return builder.build(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/model/query/SearchOptionHistoryDO.java b/src/main/java/com/jmal/clouddisk/model/query/SearchOptionHistoryDO.java new file mode 100644 index 0000000..fc9bb38 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/query/SearchOptionHistoryDO.java @@ -0,0 +1,132 @@ +package com.jmal.clouddisk.model.query; + +import lombok.Builder; +import lombok.Data; +import lombok.EqualsAndHashCode; +import org.springframework.data.mongodb.core.mapping.Document; + +/** + * @author jmal + * @Description Lucene search param + */ +@EqualsAndHashCode(callSuper = true) +@Data +@Builder +@Document(collection = "searchOptionHistory") +public class SearchOptionHistoryDO extends QueryBaseDTO { + + String id; + + /** + * 搜索时间 + */ + Long searchTime; + /** + * 执行搜索操作的用户id + */ + String searchUserId; + + String userId; + /** + * 要查询的关键字 + */ + String keyword; + /** + * 要查询的文件类型 + */ + String type; + /** + * 当前目录 + */ + String currentDirectory; + /** + * 是否是文件夹 + */ + Boolean isFolder; + /** + * 是否是收藏 + */ + Boolean isFavorite; + /** + * tagId + */ + String tagId; + /** + * 查询的文件夹 + */ + String folder; + + /** + * 修改时间范围开始 + */ + Long modifyStart; + + /** + * 修改时间范围结束 + */ + Long modifyEnd; + + /** + * 文件大小范围最小 + */ + Long sizeMin; + + /** + * 文件大小范围最大 + */ + Long sizeMax; + + /** + * 是否搜索挂载盘 + */ + Boolean searchMount; + + /** + * 是否全盘搜索(用户根目录) + */ + Boolean searchOverall; + + /** + * 是否精确匹配 + */ + Boolean exactSearch; + + /** + * 是否包含标签名称 + */ + Boolean includeTagName; + + /** + * 是否包含文件名 + */ + Boolean includeFileName; + + /** + * 是否包含文件内容 + */ + Boolean includeFileContent; + + public SearchDTO toSearchDTO() { + SearchDTO.SearchDTOBuilder builder = SearchDTO.builder(); + builder.id(id) + .userId(userId) + .keyword(keyword) + .type(type) + .currentDirectory(currentDirectory) + .isFolder(isFolder) + .isFavorite(isFavorite) + .tagId(tagId) + .folder(folder) + .modifyStart(modifyStart) + .modifyEnd(modifyEnd) + .sizeMin(sizeMin) + .sizeMax(sizeMax) + .searchMount(searchMount) + .searchOverall(searchOverall) + .exactSearch(exactSearch) + .includeTagName(includeTagName) + .includeFileName(includeFileName) + .includeFileContent(includeFileContent); + return builder.build(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/model/rbac/ConsumerBase.java b/src/main/java/com/jmal/clouddisk/model/rbac/ConsumerBase.java new file mode 100644 index 0000000..6c16ca0 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/rbac/ConsumerBase.java @@ -0,0 +1,15 @@ +package com.jmal.clouddisk.model.rbac; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +/** + * @Description ConsumerBase + * @blame jmal + * @Date 2022/8/20 23:21 + */ +@Data +public class ConsumerBase { + @Schema(name = "password", title = "密码", example = "123456") + String password; +} diff --git a/src/main/java/com/jmal/clouddisk/model/rbac/ConsumerDO.java b/src/main/java/com/jmal/clouddisk/model/rbac/ConsumerDO.java new file mode 100644 index 0000000..32b325a --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/rbac/ConsumerDO.java @@ -0,0 +1,57 @@ +package com.jmal.clouddisk.model.rbac; + +import com.jmal.clouddisk.service.Constants; +import com.jmal.clouddisk.service.impl.UserServiceImpl; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import lombok.EqualsAndHashCode; +import org.springframework.data.mongodb.core.index.Indexed; +import org.springframework.data.mongodb.core.mapping.Document; + +import java.time.LocalDateTime; +import java.util.List; + +/** + * @Description 用户模型 + * @author jmal + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Schema +@Document(collection = UserServiceImpl.COLLECTION_NAME) +public class ConsumerDO extends ConsumerBase { + String id; + @Schema(name = "username", title = "用户名", example = "admin") + @Indexed + String username; + @Indexed + @Schema(name = "showName", title = "显示用户名", example = "管理员1") + String showName; + @Schema(title = "头像", example = "https://wpimg.wallstcn.com/f778738c-e4f8-4870-b634-56703b4acafe.gif") + String avatar; + @Schema(name = "slogan", title = "标语") + String slogan; + @Schema(name = "introduction", title = "简介") + String introduction; + @Schema(name = "webpDisabled", title = "是否禁用webp") + Boolean webpDisabled; + @Schema(name = "roles", title = "角色Id集合") + List roles; + @Schema(name = "quota", title = "默认配额, 10G", example = "10") + Integer quota; + @Schema(name = "takeUpSpace", title = "已使用的空间") + Long takeUpSpace; + @Schema(name = Constants.CREATE_TIME, title = "创建时间") + LocalDateTime createTime; + @Schema(name = "updateTime", title = "修改时间", hidden = true) + LocalDateTime updateTime; + @Schema(name = "creator", title = "网盘创建者", hidden = true) + Boolean creator; + + @Schema(name = "mfaEnabled", title = "mfa_enabled") + Boolean mfaEnabled; + + @Schema(name = "mfaSecret", title = "encrypted_mfa_secret") + String mfaSecret; + +} diff --git a/src/main/java/com/jmal/clouddisk/model/rbac/ConsumerDTO.java b/src/main/java/com/jmal/clouddisk/model/rbac/ConsumerDTO.java new file mode 100644 index 0000000..d733da2 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/rbac/ConsumerDTO.java @@ -0,0 +1,77 @@ +package com.jmal.clouddisk.model.rbac; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jmal.clouddisk.service.Constants; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import lombok.EqualsAndHashCode; +import org.springframework.data.annotation.Id; + +import jakarta.validation.Valid; +import jakarta.validation.constraints.Max; +import jakarta.validation.constraints.NotNull; +import java.time.LocalDateTime; +import java.util.List; + +/** + * @Description 用户模型传输对象 + * @author jmal + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Schema +@Valid +public class ConsumerDTO extends ConsumerBase { + @Id + String id; + @NotNull(message = "用户账号不能为空") + @Schema(name = "username", title = "用户账号", example = "admin", requiredMode = Schema.RequiredMode.REQUIRED) + String username; + @NotNull(message = "用户名不能为空") + @Schema(name = "showName", title = "用户名", example = "管理员1", requiredMode = Schema.RequiredMode.REQUIRED) + String showName; + @Schema(name = "avatar", title = "头像") + String avatar; + @Schema(name = "slogan", title = "标语") + String slogan; + @Schema(name = "introduction", title = "简介") + String introduction; + @Schema(name = "webpDisabled", title = "是否禁用webp") + Boolean webpDisabled; + @Schema(name = "roles", title = "角色Id集合") + List roles; + @Schema(name = "roleList", title = "角色集合", hidden = true) + List roleList; + @Max(value = 1073741824, message = "配额过大") + @Schema(name = "quota", title = "默认配额, 10G", example = "10") + Integer quota; + @Schema(name = "takeUpSpace", title = "已使用的空间") + Long takeUpSpace; + @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss") + @Schema(name = Constants.CREATE_TIME, title = "创建时间", hidden = true) + LocalDateTime createTime; + @Schema(name = "netdiskLogo", title = "网盘logo文件名", hidden = true) + String netdiskLogo; + @Schema(name = "netdiskName", title = "网盘名称", hidden = true) + String netdiskName; + + @Schema(name = "rememberMe", title = "记住我", hidden = true) + Boolean rememberMe; + + @Schema(name = "newVersion", title = "新版本", hidden = true) + String newVersion; + + @Schema(name = "iframe", title = "iframe", hidden = true) + String iframe; + + @Schema(name = "exactSearch", title = "exactSearch", hidden = true) + Boolean exactSearch; + + @Schema(name = "mfaToken", title = "mfaToken", hidden = true) + String mfaToken; + + @Schema(name = "mfaCode", title = "mfaCode", hidden = true) + String mfaCode; + + +} diff --git a/src/main/java/com/jmal/clouddisk/model/rbac/MenuDO.java b/src/main/java/com/jmal/clouddisk/model/rbac/MenuDO.java new file mode 100644 index 0000000..c7ae895 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/rbac/MenuDO.java @@ -0,0 +1,65 @@ +package com.jmal.clouddisk.model.rbac; + +import com.jmal.clouddisk.service.impl.MenuService; +import lombok.Data; +import org.springframework.data.mongodb.core.mapping.Document; + +import java.time.LocalDateTime; + +/** + * @author jmal + * @Description 菜单模型 + * @Date 2021/1/7 8:53 下午 + */ +@Data +@Document(collection = MenuService.COLLECTION_NAME) +public class MenuDO { + /*** + * 主键 + */ + String id; + /*** + * 父级菜单Id + */ + String parentId; + /*** + * 菜单名称 + */ + String name; + /*** + * 权限标识 + */ + String authority; + /*** + * 路由地址 + */ + String path; + /*** + * 组件路径 + */ + String component; + /*** + * 菜单图标 + */ + String icon; + /*** + * 排序号 + */ + Integer sortNumber; + /*** + * 菜单类型 0:菜单,1:按钮 + */ + Integer menuType; + /*** + * 是否隐藏 + */ + Boolean hide; + /*** + * 创建时间 + */ + LocalDateTime createTime; + /*** + * 修改时间 + */ + LocalDateTime updateTime; +} diff --git a/src/main/java/com/jmal/clouddisk/model/rbac/MenuDTO.java b/src/main/java/com/jmal/clouddisk/model/rbac/MenuDTO.java new file mode 100644 index 0000000..16bcefa --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/rbac/MenuDTO.java @@ -0,0 +1,75 @@ +package com.jmal.clouddisk.model.rbac; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.v3.oas.annotations.media.Schema; + +import lombok.Data; + +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; +import java.time.LocalDateTime; +import java.util.List; + +/** + * @Description 菜单传输对象 + * @blame jmal + * @Date 2021/1/7 8:53 下午 + */ +@Data +@Valid +@Schema +public class MenuDTO implements Comparable{ + /*** + * 主键 + */ + String id; + @Schema(name = "parentId", title = "父级菜单Id") + String parentId; + @NotNull(message = "菜单名称不能为空") + @Schema(name = "name", title = "菜单名称", requiredMode = Schema.RequiredMode.REQUIRED) + String name; + @Schema(name = "authority", title = "权限标识") + String authority; + @Schema(name = "path", title = "路由地址") + String path; + @Schema(name = "component", title = "组件路径") + String component; + @Schema(name = "icon", title = "菜单图标") + String icon; + @NotNull(message = "排序号不能为空") + @Schema(name = "sortNumber", title = "排序号", requiredMode = Schema.RequiredMode.REQUIRED) + Integer sortNumber; + @NotNull(message = "菜单类型不能为空") + @Schema(name = "menuType", title = "菜单类型 0:菜单,1:按钮", requiredMode = Schema.RequiredMode.REQUIRED) + Integer menuType; + @NotNull(message = "是否隐藏不能为空") + @Schema(name = "hide", title = "是否隐藏", requiredMode = Schema.RequiredMode.REQUIRED) + Boolean hide; + /*** + * 子菜单 + */ + @Schema(hidden = true) + private List children; + /*** + * 角色是否拥有该菜单 + */ + @Schema(hidden = true) + private Boolean checked; + /*** + * 创建时间 + */ + @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss") + @Schema(hidden = true) + LocalDateTime createTime; + /*** + * 修改时间 + */ + @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss") + @Schema(hidden = true) + LocalDateTime updateTime; + + @Override + public int compareTo(MenuDTO o) { + return this.getSortNumber().compareTo(o.getSortNumber()); + } +} diff --git a/src/main/java/com/jmal/clouddisk/model/rbac/RoleDO.java b/src/main/java/com/jmal/clouddisk/model/rbac/RoleDO.java new file mode 100644 index 0000000..6430e62 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/rbac/RoleDO.java @@ -0,0 +1,46 @@ +package com.jmal.clouddisk.model.rbac; + +import com.jmal.clouddisk.service.impl.RoleService; +import lombok.Data; +import org.springframework.data.mongodb.core.mapping.Document; + +import java.time.LocalDateTime; +import java.util.List; + +/** + * @Description 角色模型 + * @blame jmal + * @Date 2021/1/7 7:41 下午 + */ +@Data +@Document(collection = RoleService.COLLECTION_NAME) +public class RoleDO { + /*** + * 主键 + */ + String id; + /*** + * 角色名称 + */ + String name; + /*** + * 角色标识 + */ + String code; + /*** + * 备注 + */ + String remarks; + /*** + * 菜单Id列表 + */ + List menuIds; + /*** + * 创建时间 + */ + LocalDateTime createTime; + /*** + * 修改时间 + */ + LocalDateTime updateTime; +} diff --git a/src/main/java/com/jmal/clouddisk/model/rbac/RoleDTO.java b/src/main/java/com/jmal/clouddisk/model/rbac/RoleDTO.java new file mode 100644 index 0000000..b83d9af --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/rbac/RoleDTO.java @@ -0,0 +1,36 @@ +package com.jmal.clouddisk.model.rbac; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jmal.clouddisk.service.Constants; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; +import java.time.LocalDateTime; +import java.util.List; + +/** + * @Description 角色传输对象 + * @Author jmal + * @Date 2021/1/7 7:41 下午 + */ +@Data +@Valid +@Schema +public class RoleDTO { + String id; + @NotNull(message = "角色名称不能为空") + @Schema(name = "name", title = "角色名称", requiredMode = Schema.RequiredMode.REQUIRED) + String name; + @NotNull(message = "角色标识不能为空") + @Schema(name = "code", title = "角色标识", requiredMode = Schema.RequiredMode.REQUIRED) + String code; + @Schema(name = "remarks", title = "备注") + String remarks; + @Schema(name = "menuIds", title = "菜单id列表") + List menuIds; + @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss") + @Schema(name = Constants.CREATE_TIME, title = "创建时间", hidden = true) + LocalDateTime createTime; +} diff --git a/src/main/java/com/jmal/clouddisk/model/rbac/UserLoginContext.java b/src/main/java/com/jmal/clouddisk/model/rbac/UserLoginContext.java new file mode 100644 index 0000000..38af501 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/model/rbac/UserLoginContext.java @@ -0,0 +1,20 @@ +package com.jmal.clouddisk.model.rbac; + +import lombok.Data; + +import java.util.List; + +/** + * @Description 用户登录信息 + * @blame jmal + * @Date 2021/1/9 2:13 下午 + */ +@Data +public class UserLoginContext { + String userId; + String username; + /*** + * 用户权限信息 + */ + List authorities; +} diff --git a/src/main/java/com/jmal/clouddisk/ocr/CommonOcrService.java b/src/main/java/com/jmal/clouddisk/ocr/CommonOcrService.java new file mode 100644 index 0000000..b120832 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/ocr/CommonOcrService.java @@ -0,0 +1,79 @@ +package com.jmal.clouddisk.ocr; + +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.lang.ObjectId; +import cn.hutool.core.util.StrUtil; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.media.FFMPEGCommand; +import com.jmal.clouddisk.service.Constants; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +import java.io.IOException; +import java.nio.file.Path; +import java.nio.file.Paths; + +import static com.jmal.clouddisk.util.FFMPEGUtils.getWaitingForResults; + +@Service +@Slf4j +@RequiredArgsConstructor +public class CommonOcrService { + + private final FileProperties fileProperties; + + /** + * 生成一个临时的图片路径 + */ + public String generateOrcTempImagePath(String username) { + Path tempPath; + if (StrUtil.isBlank(username)) { + tempPath = Paths.get(fileProperties.getRootDir(), fileProperties.getChunkFileDir()); + } else { + tempPath = Paths.get(fileProperties.getRootDir(), fileProperties.getChunkFileDir(), username); + } + if (!FileUtil.exist(tempPath.toString())) { + FileUtil.mkdir(tempPath.toString()); + } + return Paths.get(tempPath.toString(), ObjectId.next(true) + "_temp_ocr.png").toString(); + } + + /** + * 获取OCR识别之前预处理的图片, 使其更易识别 + * 使用ffmpeg调整灰度和对比度 + * @param inputPath 原始图片路径 + * @return 预处理后的图片路径 + */ + public static String getPreprocessedOCRImage(String inputPath, String outputPath) { + if (FFMPEGCommand.hasNoFFmpeg()) { + return outputPath; + } + if (FileUtil.exist(outputPath)) { + return outputPath; + } + try { + ProcessBuilder processBuilder = getPreOCRImageProcessBuilder(inputPath, outputPath); + Process process = processBuilder.start(); + return getWaitingForResults(outputPath, processBuilder, process); + } catch (InterruptedException e) { + log.error(e.getMessage(), e); + return null; + } catch (IOException e) { + log.error(e.getMessage(), e); + } + return null; + } + + private static ProcessBuilder getPreOCRImageProcessBuilder(String inputPath, String outputPath) { + ProcessBuilder processBuilder = new ProcessBuilder( + Constants.FFMPEG, + "-i", inputPath, + "-vf", "format=gray,eq=contrast=1.5:brightness=0.1", + outputPath + ); + processBuilder.redirectErrorStream(true); + return processBuilder; + } + +} diff --git a/src/main/java/com/jmal/clouddisk/ocr/IOcrService.java b/src/main/java/com/jmal/clouddisk/ocr/IOcrService.java new file mode 100644 index 0000000..1313f60 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/ocr/IOcrService.java @@ -0,0 +1,13 @@ +package com.jmal.clouddisk.ocr; + +public interface IOcrService { + + /** + * 执行OCR识别 + * @param imagePath 图片路径 + * @param tempImagePath 临时图片路径, 用于存放预处理后的图片 + * @return 识别结果 + */ + String doOCR(String imagePath, String tempImagePath); + +} diff --git a/src/main/java/com/jmal/clouddisk/ocr/OcrConfig.java b/src/main/java/com/jmal/clouddisk/ocr/OcrConfig.java new file mode 100644 index 0000000..998805d --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/ocr/OcrConfig.java @@ -0,0 +1,55 @@ +package com.jmal.clouddisk.ocr; + +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.Max; +import jakarta.validation.constraints.Min; +import lombok.Data; +import org.springframework.data.mongodb.core.mapping.Document; + +/** + * OCR配置 + */ +@Data +@Document(collection = "ocrConfig") +@Valid +@Schema +public class OcrConfig { + + @Schema(description = "是否启用orc, 默认开启") + private Boolean enable; + + @Max(value = 8, message = "最大任务数不能超过8") + @Min(value = 1, message = "最大任务数不能小于1") + @Schema(description = "最大任务数, 最多同时处理的ocr任务数, 默认为1") + private Integer maxTasks; + + @Schema(description = "ocr引擎, 默认tesseract") + private String ocrEngine; + + public Boolean getEnable() { + if (enable == null) + return true; + return enable; + } + + public String getOcrEngine() { + if (ocrEngine == null) + return OcrEngine.TESSERACT.getOcrEngineName(); + return ocrEngine; + } + + public void setOcrEngine(String ocrEngine) { + if (ocrEngine == null) + return; + if (!OcrEngine.TESSERACT.getOcrEngineName().equals(ocrEngine) && !OcrEngine.OCR_LITE_ONNX.getOcrEngineName().equals(ocrEngine)) + return; + this.ocrEngine = ocrEngine; + } + + public Integer getMaxTasks() { + if (maxTasks == null) + return 1; + return maxTasks; + } +} diff --git a/src/main/java/com/jmal/clouddisk/ocr/OcrEngine.java b/src/main/java/com/jmal/clouddisk/ocr/OcrEngine.java new file mode 100644 index 0000000..a82ed6c --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/ocr/OcrEngine.java @@ -0,0 +1,15 @@ +package com.jmal.clouddisk.ocr; + +import lombok.Getter; + +@Getter +public enum OcrEngine { + OCR_LITE_ONNX("ocrLiteOnnx"), + TESSERACT("tesseract"); + + private final String ocrEngineName; + + OcrEngine(String ocrEngineName) { + this.ocrEngineName = ocrEngineName; + } +} diff --git a/src/main/java/com/jmal/clouddisk/ocr/OcrLiteOnnxService.java b/src/main/java/com/jmal/clouddisk/ocr/OcrLiteOnnxService.java new file mode 100644 index 0000000..0ac93da --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/ocr/OcrLiteOnnxService.java @@ -0,0 +1,99 @@ +package com.jmal.clouddisk.ocr; + +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.text.CharSequenceUtil; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.media.FFMPEGCommand; +import com.jmal.clouddisk.service.Constants; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +import java.io.IOException; + +import static com.jmal.clouddisk.util.FFMPEGUtils.getWaitingForResults; + + +@Service("ocrLiteOnnx") +@RequiredArgsConstructor +@Slf4j +public class OcrLiteOnnxService implements IOcrService { + + public final FileProperties fileProperties; + + @Override + public String doOCR(String imagePath, String tempImagePath) { + if (CharSequenceUtil.isBlank(imagePath)) { + return ""; + } + String resultTxtPath = null; + try { + resultTxtPath = getResultText(imagePath, imagePath + "-result.txt"); + if (!FileUtil.isFile(resultTxtPath)) { + return ""; + } + return FileUtil.readUtf8String(resultTxtPath); + } catch (Exception e) { + log.warn("Error while performing OCR: {}", e.getMessage(), e); + } finally { + FileUtil.del(tempImagePath); + if (FileUtil.isFile(resultTxtPath)) { + FileUtil.del(resultTxtPath); + } + } + return ""; + } + + /** + * 获取OCR识别结果 + * @param inputPath 输入图片路径 + * @param outputPath 输出文件路径 + * @return String + */ + public String getResultText(String inputPath, String outputPath) { + if (FFMPEGCommand.hasNoFFmpeg()) { + return outputPath; + } + if (FileUtil.exist(outputPath)) { + return outputPath; + } + try { + ProcessBuilder processBuilder = getOcrLiteOnnxProcessBuilder(inputPath); + Process process = processBuilder.start(); + return getWaitingForResults(outputPath, processBuilder, process, 60); + } catch (InterruptedException e) { + log.error(e.getMessage(), e); + Thread.currentThread().interrupt(); + } catch (IOException e) { + log.error(e.getMessage(), e); + } + return null; + } + + /** + * 使用ocr_lite_onnx进行OCR识别 + * @param inputPath 输入图片路径 + * @return ProcessBuilder + */ + private ProcessBuilder getOcrLiteOnnxProcessBuilder(String inputPath) { + ProcessBuilder processBuilder = new ProcessBuilder( + Constants.OCR_LITE_ONNX, + "--models", fileProperties.getOcrLiteONNXModelPath(), + "--det", "dbnet.onnx", + "--rec", "crnn_lite_lstm.onnx", + "--keys", "keys.txt", + "--image", inputPath, + "--numThread", "1", + "--padding", "40", + "--maxSideLen", "2048", + "--boxScoreThresh", "0.6", + "--boxThresh", "0.3", + "--unClipRatio", "2.0", + "--doAngle", "0", + "--mostAngle", "0", + "--outputResultImg", "0" + ); + processBuilder.redirectErrorStream(true); + return processBuilder; + } +} diff --git a/src/main/java/com/jmal/clouddisk/ocr/OcrService.java b/src/main/java/com/jmal/clouddisk/ocr/OcrService.java new file mode 100644 index 0000000..ded4aa7 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/ocr/OcrService.java @@ -0,0 +1,162 @@ +package com.jmal.clouddisk.ocr; + +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.text.CharSequenceUtil; +import com.github.benmanes.caffeine.cache.Cache; +import com.github.benmanes.caffeine.cache.Caffeine; +import com.jmal.clouddisk.exception.CommonException; +import com.jmal.clouddisk.exception.ExceptionType; +import com.jmal.clouddisk.lucene.TaskProgressService; +import com.jmal.clouddisk.lucene.TaskType; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.apache.pdfbox.rendering.ImageType; +import org.apache.pdfbox.rendering.PDFRenderer; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.data.mongodb.core.query.Update; +import org.springframework.stereotype.Service; + +import javax.imageio.ImageIO; +import java.awt.image.BufferedImage; +import java.io.File; +import java.util.Map; +import java.util.concurrent.Semaphore; + +@Service +@RequiredArgsConstructor +@Slf4j +public class OcrService { + + private final Map ocrServiceMap; + + private final CommonOcrService commonOcrService; + + private final TaskProgressService taskProgressService; + + private final MongoTemplate mongoTemplate; + + // 初始设置为1个并发请求 + private final Semaphore semaphore = new Semaphore(1); + + private final Cache ocrConfigCache = Caffeine.newBuilder().build(); + + /** + * 提取PDF页面并使用OCR识别 + * @param pdfRenderer PDFRenderer + * @param pageIndex 页码 + * @param username 用户名 + * @return 识别结果 + */ + public String extractPageWithOCR(File file, PDFRenderer pdfRenderer, int pageIndex, int totalPages, String username) { + try { + + taskProgressService.addTaskProgress(file, TaskType.OCR, pageIndex + 1 + "/" + totalPages + " - 等待识别"); + + // 获取许可,如果没有可用许可则会阻塞 + semaphore.acquire(); + + taskProgressService.addTaskProgress(file, TaskType.OCR, pageIndex + 1 + "/" + totalPages + " - 识别中..."); + + BufferedImage pageImage = pdfRenderer.renderImage(pageIndex, 4, ImageType.GRAY); + String tempImageFile = generateOrcTempImagePath(username); + ImageIO.write(pageImage, "png", new File(tempImageFile)); + try { + // 使用 OCR 识别页面内容 + return doOCR(tempImageFile, generateOrcTempImagePath(username), null); + } finally { + FileUtil.del(tempImageFile); + taskProgressService.removeTaskProgress(file); + // 释放许可 + semaphore.release(); + } + } catch (InterruptedException e) { + log.error(e.getMessage(), e); + Thread.currentThread().interrupt(); + } catch (Exception e) { + log.error("Error processing page {}", pageIndex + 1, e); + } + return ""; + } + + public String doOCR(String imagePath, String tempImagePath, String ocrEngine) { + OcrConfig config = getOcrConfig(); + if (Boolean.FALSE.equals(config.getEnable())) { + return ""; + } + if (CharSequenceUtil.isBlank(ocrEngine)) { + ocrEngine = config.getOcrEngine(); + } + IOcrService ocrService = ocrServiceMap.get(ocrEngine); + if (ocrService == null) { + throw new IllegalArgumentException("Unknown OCR engine: " + ocrEngine); + } + return ocrService.doOCR(imagePath, tempImagePath); + } + + /** + * 动态调整并发数量 + */ + public void setMaxConcurrentRequests(int maxConcurrentRequests) { + int currentPermits = semaphore.availablePermits(); + if (maxConcurrentRequests > currentPermits) { + semaphore.release(maxConcurrentRequests - currentPermits); + } else if (maxConcurrentRequests < currentPermits) { + // 清空所有许可并重新设置 + semaphore.drainPermits(); + semaphore.release(maxConcurrentRequests); + } + } + + public OcrConfig getOcrConfig() { + return ocrConfigCache.get("ocrConfig", key -> { + OcrConfig config = mongoTemplate.findOne(new Query(), OcrConfig.class); + if (config != null) { + setMaxConcurrentRequests(config.getMaxTasks()); + return config; + } + return new OcrConfig(); + }); + } + + private static Update getOcrConfigUpdate(OcrConfig config) { + Update update = new Update(); + update.set("enable", config.getEnable()); + update.set("maxTasks", config.getMaxTasks()); + update.set("ocrEngine", config.getOcrEngine()); + return update; + } + + /** + * 设置Ocr配置 + * + * @param config OcrConfig + */ + public long setOcrConfig(OcrConfig config) { + if (config == null) { + throw new CommonException(ExceptionType.PARAMETERS_VALUE); + } + Query query = new Query(); + OcrConfig ocrConfig = mongoTemplate.findOne(query, OcrConfig.class); + if (ocrConfig == null) { + mongoTemplate.save(config); + } else { + Update update = getOcrConfigUpdate(config); + mongoTemplate.updateFirst(query, update, OcrConfig.class); + if (!semaphore.hasQueuedThreads() && semaphore.availablePermits() == ocrConfig.getMaxTasks()) { + semaphore.drainPermits(); + semaphore.release(config.getMaxTasks()); + } + } + ocrConfigCache.put("ocrConfig", config); + return 0; + } + + /** + * 生成一个临时的图片路径 + */ + public String generateOrcTempImagePath(String username) { + return commonOcrService.generateOrcTempImagePath(username); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/ocr/TesseractOcrConfig.java b/src/main/java/com/jmal/clouddisk/ocr/TesseractOcrConfig.java new file mode 100644 index 0000000..ec1e9e2 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/ocr/TesseractOcrConfig.java @@ -0,0 +1,36 @@ +package com.jmal.clouddisk.ocr; + +import lombok.Data; +import lombok.extern.slf4j.Slf4j; +import net.sourceforge.tess4j.ITessAPI; +import net.sourceforge.tess4j.Tesseract; +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.stereotype.Component; + +@Data +@Component +@Configuration +@ConfigurationProperties(prefix = "tess4j") +@Slf4j +public class TesseractOcrConfig { + + private String dataPath; + + @Bean + public ThreadLocal tesseractThreadLocal() { + // 设置 Tess4J 的日志级别 + return ThreadLocal.withInitial(() -> { + Tesseract tesseract = new Tesseract(); + // 设置数据文件夹路径 + tesseract.setDatapath(dataPath); + // 设置为中文简体 + tesseract.setLanguage("chi_sim"); + tesseract.setOcrEngineMode(ITessAPI.TessOcrEngineMode.OEM_LSTM_ONLY); + tesseract.setPageSegMode(ITessAPI.TessPageSegMode.PSM_AUTO); + return tesseract; + }); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/ocr/TesseractService.java b/src/main/java/com/jmal/clouddisk/ocr/TesseractService.java new file mode 100644 index 0000000..7c30d2c --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/ocr/TesseractService.java @@ -0,0 +1,55 @@ +package com.jmal.clouddisk.ocr; + +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.text.CharSequenceUtil; +import jakarta.annotation.PreDestroy; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import net.sourceforge.tess4j.ITesseract; +import net.sourceforge.tess4j.Tesseract; +import org.springframework.context.annotation.Primary; +import org.springframework.stereotype.Service; + +import java.io.File; + + +@Service("tesseract") +@RequiredArgsConstructor +@Slf4j +@Primary +public class TesseractService implements IOcrService { + + private final ThreadLocal tesseractThreadLocal; + + private final CommonOcrService commonOcrService; + + @Override + public String doOCR(String imagePath, String tempImagePath) { + if (CharSequenceUtil.isBlank(imagePath)) { + return ""; + } + try { + if (CharSequenceUtil.isBlank(tempImagePath)) { + tempImagePath = commonOcrService.generateOrcTempImagePath(null); + } + // 预处理后的图片 + String preprocessedOCRImage = CommonOcrService.getPreprocessedOCRImage(imagePath, tempImagePath); + if (CharSequenceUtil.isBlank(preprocessedOCRImage)) { + return ""; + } + File imageFile = new File(preprocessedOCRImage); + ITesseract tesseract = tesseractThreadLocal.get(); + return tesseract.doOCR(imageFile); + } catch (Exception e) { + log.warn("Error while performing OCR: {}", e.getMessage(), e); + } finally { + FileUtil.del(tempImagePath); + } + return ""; + } + + @PreDestroy + public void unload() { + tesseractThreadLocal.remove(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/office/OfficeConfigService.java b/src/main/java/com/jmal/clouddisk/office/OfficeConfigService.java new file mode 100644 index 0000000..cbe09bc --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/office/OfficeConfigService.java @@ -0,0 +1,106 @@ +package com.jmal.clouddisk.office; + +import cn.hutool.core.codec.Base62; +import cn.hutool.core.util.BooleanUtil; +import cn.hutool.core.util.StrUtil; +import cn.hutool.crypto.KeyUtil; +import cn.hutool.crypto.symmetric.SymmetricAlgorithm; +import cn.hutool.jwt.JWT; +import cn.hutool.jwt.signers.JWTSigner; +import cn.hutool.jwt.signers.JWTSignerUtil; +import com.jmal.clouddisk.office.model.OfficeConfigDO; +import com.jmal.clouddisk.office.model.OfficeConfigDTO; +import lombok.RequiredArgsConstructor; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.data.mongodb.core.query.Update; +import org.springframework.stereotype.Service; + +import java.util.Map; + +@Service +@RequiredArgsConstructor +public class OfficeConfigService { + + public final static String VO_KEY = "****************"; + + private final MongoTemplate mongoTemplate; + + private volatile OfficeConfigDTO officeConfigDTO; + + private OfficeConfigDTO getOfficeConfigCache() { + if (officeConfigDTO == null) { + synchronized (this) { + if (officeConfigDTO == null) { + OfficeConfigDO officeConfigDO = mongoTemplate.findOne(new Query(), OfficeConfigDO.class); + if (officeConfigDO == null) { + officeConfigDTO = new OfficeConfigDTO(); + } else { + officeConfigDTO = officeConfigDO.toOfficeConfigCache(); + } + } + } + } + return officeConfigDTO; + } + + public String createOfficeToken(final Map payloadClaims) { + String secret = officeConfigDTO.getSecret(); + if (StrUtil.isBlank(secret)) { + return ""; + } + final JWTSigner signer = JWTSignerUtil.hs256(secret.getBytes()); + JWT jwt = JWT.create().addPayloads(payloadClaims); + return jwt.sign(signer); + } + + public OfficeConfigDTO getOfficeConfig() { + OfficeConfigDTO officeConfigDTO = getOfficeConfigCache(); + OfficeConfigDTO officeConfigVO = new OfficeConfigDTO(); + officeConfigVO.setDocumentServer(officeConfigDTO.getDocumentServer()); + officeConfigVO.setCallbackServer(officeConfigDTO.getCallbackServer()); + officeConfigVO.setTokenEnabled(officeConfigDTO.isTokenEnabled()); + officeConfigVO.setFormat(officeConfigDTO.getFormat()); + if (StrUtil.isNotBlank(officeConfigDTO.getSecret())) { + officeConfigVO.setSecret(VO_KEY); + } + return officeConfigVO; + } + + public void setOfficeConfig(OfficeConfigDTO officeConfigDTO) { + OfficeConfigDO officeConfigDO = officeConfigDTO.toOfficeConfigDO(); + Query query = new Query(); + Update update = new Update() + .set("documentServer", officeConfigDO.getDocumentServer()) + .set("callbackServer", officeConfigDO.getCallbackServer()) + .set("tokenEnabled", officeConfigDO.getTokenEnabled()) + .set("format", officeConfigDO.getFormat()); + if (!VO_KEY.equals(officeConfigDTO.getSecret())) { + update.set("encrypted", officeConfigDO.getEncrypted()); + update.set("key", officeConfigDO.getKey()); + } + mongoTemplate.upsert(query, update, OfficeConfigDO.class); + + // 重置缓存的密钥,使其在下次访问时重新加载 + synchronized (this) { + this.officeConfigDTO.setDocumentServer(officeConfigDTO.getDocumentServer()); + this.officeConfigDTO.setCallbackServer(officeConfigDTO.getCallbackServer()); + this.officeConfigDTO.setFormat(officeConfigDTO.getFormat()); + this.officeConfigDTO.setTokenEnabled(StrUtil.isNotBlank(officeConfigDTO.getSecret())); + if (VO_KEY.equals(officeConfigDTO.getSecret())) { + return; + } + if (BooleanUtil.isTrue(this.officeConfigDTO.isTokenEnabled())) { + this.officeConfigDTO.setSecret(officeConfigDTO.getSecret()); + } else { + this.officeConfigDTO.setSecret(null); + } + } + } + + public static String generateKey() { + byte[] keyBytes = KeyUtil.generateKey(SymmetricAlgorithm.AES.getValue(), 256).getEncoded(); + String base62Key = Base62.encode(keyBytes); + return base62Key.length() > 32 ? base62Key.substring(0, 32) : base62Key; + } +} diff --git a/src/main/java/com/jmal/clouddisk/office/OfficeController.java b/src/main/java/com/jmal/clouddisk/office/OfficeController.java new file mode 100644 index 0000000..a497024 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/office/OfficeController.java @@ -0,0 +1,81 @@ +package com.jmal.clouddisk.office; + +import com.jmal.clouddisk.annotation.Permission; +import com.jmal.clouddisk.office.callbacks.CallbackHandler; +import com.jmal.clouddisk.office.model.OfficeConfigDTO; +import com.jmal.clouddisk.office.model.Track; +import com.jmal.clouddisk.service.Constants; +import com.jmal.clouddisk.service.impl.ShareServiceImpl; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.Map; + +/** + * @author jmal + * @Description office文件管理 + * @date 2022/8/11 16:29 + */ +@Tag(name = "office文件管理") +@Slf4j +@RestController +@RequiredArgsConstructor +public class OfficeController { + + private final CallbackHandler callbackHandler; + + private final ShareServiceImpl shareService; + + private final OfficeConfigService officeConfigService; + + @Operation(summary = "office 回调") + @PostMapping("/office/track") + @Permission("cloud:file:list") + public String track(@RequestParam(Constants.FILE_ID) String fileId, @RequestBody Track body) { + body.setFileId(fileId); + int error = callbackHandler.handle(body); + return "{\"error\":" + error + "}"; + } + + @Operation(summary = "signature") + @PostMapping("/office/signature") + public ResponseResult signature(@RequestBody Map config) { + return ResultUtil.success(officeConfigService.createOfficeToken(config)); + } + + @Operation(summary = "获取office配置") + @GetMapping("/office/config") + @Permission(value = "cloud:file:list") + public ResponseResult getOfficeConfig() { + return ResultUtil.success(officeConfigService.getOfficeConfig()); + } + + @Operation(summary = "更新office配置") + @PutMapping("/office/config") + @Permission(value = "cloud:set:sync") + public ResponseResult putOfficeConfig(@RequestBody @Validated OfficeConfigDTO officeConfigDTO) { + officeConfigService.setOfficeConfig(officeConfigDTO); + return ResultUtil.success(); + } + + @Operation(summary = "public signature") + @PostMapping("/public/office/signature") + public ResponseResult signaturePublic(@RequestBody Map config, @RequestParam String shareId, String shareToken) { + shareService.validShare(shareToken, shareId); + return ResultUtil.success(officeConfigService.createOfficeToken(config)); + } + + @Operation(summary = "获取public office配置") + @GetMapping("/public/office/config") + public ResponseResult getPublicOfficeConfig(@RequestParam String shareId, String shareToken) { + shareService.validShare(shareToken, shareId); + return ResultUtil.success(officeConfigService.getOfficeConfig()); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/office/OfficeHistory.java b/src/main/java/com/jmal/clouddisk/office/OfficeHistory.java new file mode 100644 index 0000000..91a87df --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/office/OfficeHistory.java @@ -0,0 +1,17 @@ +package com.jmal.clouddisk.office; + +import lombok.Data; + +@Data +public class OfficeHistory { + private String created; + private String key; + private User user; + private String version; + + @Data + public static class User { + private String id; + private String name; + } +} diff --git a/src/main/java/com/jmal/clouddisk/office/callbacks/Callback.java b/src/main/java/com/jmal/clouddisk/office/callbacks/Callback.java new file mode 100644 index 0000000..5007abb --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/office/callbacks/Callback.java @@ -0,0 +1,33 @@ +package com.jmal.clouddisk.office.callbacks; + +import com.jmal.clouddisk.office.model.Track; +import org.springframework.beans.factory.annotation.Autowired; + +/** + * @author jmal + * @Description OnlyOfficeService Callback + * @date 2022/8/11 16:29 + */ +public interface Callback { + /** + * 处理回调 + * @param body body + * @return 返回码 + */ + int handle(Track body); + + /** + * 获取文档状态 + * @return Status + */ + int getStatus(); + + /** + * 注册一个回调处理程序 + * @param callbackHandler CallbackHandler + */ + @Autowired + default void selfRegistration(CallbackHandler callbackHandler){ + callbackHandler.register(getStatus(), this); + } +} diff --git a/src/main/java/com/jmal/clouddisk/office/callbacks/CallbackHandler.java b/src/main/java/com/jmal/clouddisk/office/callbacks/CallbackHandler.java new file mode 100644 index 0000000..3402c5a --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/office/callbacks/CallbackHandler.java @@ -0,0 +1,33 @@ +package com.jmal.clouddisk.office.callbacks; + +import com.jmal.clouddisk.office.model.Track; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; +import java.util.HashMap; +import java.util.Map; + +/** + * @author jmal + * @Description CallbackHandler + * @date 2022/8/11 16:29 + */ +@Service +@Slf4j +public class CallbackHandler { + + private final Map callbackHandlers = new HashMap<>(); + + public void register(int code, Callback callback){ + // 注册一个回调处理程序 + callbackHandlers.put(code, callback); + } + + public int handle(Track body){ + Callback callback = callbackHandlers.get(body.getStatus()); + if (callback == null){ + log.warn("Callback status "+body.getStatus()+" is not supported yet"); + return 0; + } + return callback.handle(body); + } +} diff --git a/src/main/java/com/jmal/clouddisk/office/callbacks/Status.java b/src/main/java/com/jmal/clouddisk/office/callbacks/Status.java new file mode 100644 index 0000000..fbb472e --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/office/callbacks/Status.java @@ -0,0 +1,40 @@ +package com.jmal.clouddisk.office.callbacks; + +/** + * @author jmal + * @Description 文件状态 + * @date 2022/8/11 16:29 + */ +public enum Status { + /** + * 正在编辑文件 + */ + EDITING(1), + /** + * 文件已准备好保存 + */ + SAVE(2), + /** + * 发生文件保存错误 + */ + CORRUPTED(3), + /** + * 退出编辑但是什么都没做 + */ + EDIT_NOTHING(4), + /** + * 正在编辑文档,但保存了当前文档状态 + */ + MUST_FORCE_SAVE(6), + /** + * 强制保存文档时发生错误 + */ + CORRUPTED_FORCE_SAVE(7); + private final int code; + Status(int code){ + this.code = code; + } + public int getCode(){ + return this.code; + } +} diff --git a/src/main/java/com/jmal/clouddisk/office/callbacks/implementations/EditCallback.java b/src/main/java/com/jmal/clouddisk/office/callbacks/implementations/EditCallback.java new file mode 100644 index 0000000..bc35ae1 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/office/callbacks/implementations/EditCallback.java @@ -0,0 +1,26 @@ +package com.jmal.clouddisk.office.callbacks.implementations; + +import com.jmal.clouddisk.office.callbacks.Callback; +import com.jmal.clouddisk.office.callbacks.Status; +import com.jmal.clouddisk.office.model.Track; +import org.springframework.stereotype.Component; + +/** + * @author jmal + * @Description 在编辑文档时处理回调 + * @date 2022/8/11 16:29 + */ +@Component +public class EditCallback implements Callback { + + @Override + public int handle(Track body) { + return 0; + } + + @Override + public int getStatus() { + // 1 -文件正在编辑中 + return Status.EDITING.getCode(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/office/callbacks/implementations/EditNothingCallback.java b/src/main/java/com/jmal/clouddisk/office/callbacks/implementations/EditNothingCallback.java new file mode 100644 index 0000000..368f830 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/office/callbacks/implementations/EditNothingCallback.java @@ -0,0 +1,26 @@ +package com.jmal.clouddisk.office.callbacks.implementations; + +import com.jmal.clouddisk.office.callbacks.Callback; +import com.jmal.clouddisk.office.callbacks.Status; +import com.jmal.clouddisk.office.model.Track; +import org.springframework.stereotype.Component; + +/** + * @author jmal + * @Description 在编辑文档时处理回调 + * @date 2022/8/11 16:29 + */ +@Component +public class EditNothingCallback implements Callback { + + @Override + public int handle(Track body) { + return 0; + } + + @Override + public int getStatus() { + // 4 - 退出正在编辑的文件 + return Status.EDIT_NOTHING.getCode(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/office/callbacks/implementations/ForceSaveCallback.java b/src/main/java/com/jmal/clouddisk/office/callbacks/implementations/ForceSaveCallback.java new file mode 100644 index 0000000..0590308 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/office/callbacks/implementations/ForceSaveCallback.java @@ -0,0 +1,26 @@ +package com.jmal.clouddisk.office.callbacks.implementations; + +import com.jmal.clouddisk.office.callbacks.Callback; +import com.jmal.clouddisk.office.callbacks.Status; +import com.jmal.clouddisk.office.model.Track; +import org.springframework.stereotype.Component; + +/** + * @author jmal + * @Description 执行强制保存请求时处理回调 + * @date 2022/8/11 16:29 + */ +@Component +public class ForceSaveCallback implements Callback { + + @Override + public int handle(Track body) { + return 0; + } + + @Override + public int getStatus() { + // 6 -正在编辑文档,但保存了当前文档状态 + return Status.MUST_FORCE_SAVE.getCode(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/office/callbacks/implementations/SaveCallback.java b/src/main/java/com/jmal/clouddisk/office/callbacks/implementations/SaveCallback.java new file mode 100644 index 0000000..37ae36b --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/office/callbacks/implementations/SaveCallback.java @@ -0,0 +1,97 @@ +package com.jmal.clouddisk.office.callbacks.implementations; + +import cn.hutool.http.HttpUtil; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.model.FileDocument; +import com.jmal.clouddisk.model.OperationPermission; +import com.jmal.clouddisk.office.callbacks.Callback; +import com.jmal.clouddisk.office.callbacks.Status; +import com.jmal.clouddisk.office.model.Track; +import com.jmal.clouddisk.service.Constants; +import com.jmal.clouddisk.service.IFileVersionService; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.service.impl.CommonFileService; +import com.jmal.clouddisk.service.impl.LogService; +import com.jmal.clouddisk.service.impl.UserLoginHolder; +import com.jmal.clouddisk.util.TimeUntils; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.stereotype.Component; + +import java.nio.file.Path; +import java.nio.file.Paths; +import java.time.LocalDateTime; +import java.util.List; + +/** + * @author jmal + * @Description 在执行保存请求时处理回调 + * @date 2022/8/11 16:29 + */ +@Component +@Slf4j +@RequiredArgsConstructor +public class SaveCallback implements Callback { + + private final FileProperties fileProperties; + + private final UserLoginHolder userLoginHolder; + + private final MongoTemplate mongoTemplate; + + private final CommonFileService commonFileService; + + private final LogService logService; + + private final IUserService userService; + + private final IFileVersionService fileVersionService; + + @Override + public int handle(Track body) { + int result = 0; + try { + + FileDocument fileDocument = mongoTemplate.findById(body.getFileId(), FileDocument.class, CommonFileService.COLLECTION_NAME); + if (fileDocument == null) { + return 1; + } + + // 检查权限 + String userId = fileDocument.getUserId(); + String fileUsername = userService.getUserNameById(userId); + List operationPermissionList = fileDocument.getOperationPermissionList(); + commonFileService.checkPermissionUserId(userId, operationPermissionList, OperationPermission.PUT); + + Path path = Paths.get(fileProperties.getRootDir(), fileUsername, fileDocument.getPath(), fileDocument.getName()); + + // 下载最新的文件 + long size = HttpUtil.downloadFile(body.getUrl(), path.toString()); + String md5 = size + "/" + fileDocument.getName(); + LocalDateTime updateDate = LocalDateTime.now(TimeUntils.ZONE_ID); + // 推送修改文件的通知 + fileDocument.setSize(size); + fileDocument.setUpdateDate(updateDate); + fileDocument.setMd5(md5); + // 修改文件日志 + logService.asyncAddLogFileOperation(fileUsername, Paths.get(fileDocument.getPath(), fileDocument.getName()).toString(), "修改文件"); + commonFileService.pushMessage(userLoginHolder.getUsername(), fileDocument, Constants.UPDATE_FILE); + + // 修改文件之后保存历史版本 + String relativePath = Paths.get(fileDocument.getPath(), fileDocument.getName()).toString(); + fileVersionService.saveFileVersion(fileUsername, relativePath, userId); + + } catch (Exception e) { + log.error(e.getMessage(), e); + return 1; + } + return result; + } + + @Override + public int getStatus() { + // 2 - 文件已准备好保存 + return Status.SAVE.getCode(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/office/model/Action.java b/src/main/java/com/jmal/clouddisk/office/model/Action.java new file mode 100644 index 0000000..fa91a32 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/office/model/Action.java @@ -0,0 +1,15 @@ +package com.jmal.clouddisk.office.model; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; + +@Getter +@Setter +@AllArgsConstructor +@NoArgsConstructor +public class Action { + private String userid; + private com.jmal.clouddisk.office.model.enums.Action type; +} diff --git a/src/main/java/com/jmal/clouddisk/office/model/OfficeConfigDO.java b/src/main/java/com/jmal/clouddisk/office/model/OfficeConfigDO.java new file mode 100644 index 0000000..4516ce0 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/office/model/OfficeConfigDO.java @@ -0,0 +1,39 @@ +package com.jmal.clouddisk.office.model; + +import cn.hutool.crypto.symmetric.SymmetricAlgorithm; +import cn.hutool.crypto.symmetric.SymmetricCrypto; +import lombok.Data; +import org.springframework.data.mongodb.core.mapping.Document; + +import java.util.List; + +@Data +@Document(collection = "officeConfig") +public class OfficeConfigDO { + + private String documentServer; + + private String callbackServer; + + private String encrypted; + + private String key; + + private Boolean tokenEnabled; + + private List format; + + public OfficeConfigDTO toOfficeConfigCache() { + OfficeConfigDTO officeConfigDTO = new OfficeConfigDTO(); + officeConfigDTO.setDocumentServer(this.documentServer); + officeConfigDTO.setCallbackServer(this.callbackServer); + officeConfigDTO.setFormat(this.format); + officeConfigDTO.setTokenEnabled(this.tokenEnabled); + if (this.tokenEnabled && this.encrypted != null && this.key != null) { + SymmetricCrypto symmetricCrypto = new SymmetricCrypto(SymmetricAlgorithm.AES, this.key.getBytes()); + String secret = symmetricCrypto.decryptStr(this.encrypted); + officeConfigDTO.setSecret(secret); + } + return officeConfigDTO; + } +} diff --git a/src/main/java/com/jmal/clouddisk/office/model/OfficeConfigDTO.java b/src/main/java/com/jmal/clouddisk/office/model/OfficeConfigDTO.java new file mode 100644 index 0000000..9408b52 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/office/model/OfficeConfigDTO.java @@ -0,0 +1,63 @@ +package com.jmal.clouddisk.office.model; + +import cn.hutool.core.util.StrUtil; +import cn.hutool.crypto.symmetric.SymmetricAlgorithm; +import cn.hutool.crypto.symmetric.SymmetricCrypto; +import com.jmal.clouddisk.office.OfficeConfigService; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.Valid; +import jakarta.validation.constraints.Pattern; +import lombok.Data; + +import java.util.List; + +@Data +@Valid +public class OfficeConfigDTO { + + @Pattern( + regexp = "^(https?://)([\\w.-]+)(:[0-9]+)?(/.*)?$|^$", + message = "文档服务器地址格式不正确" + ) + @Schema(name = "documentServer", title = "文档服务器地址", example = "http://localhost:8082/office/word") + private String documentServer; + + @Schema(name = "secret", title = "密钥") + private String secret; + + @Pattern( + regexp = "^(https?://)([\\w.-]+)(:[0-9]+)?(/.*)?$|^$", + message = "回调服务地址格式不正确" + ) + @Schema(name = "callbackServer", title = "回调服务地址") + private String callbackServer; + + @Schema(name = "tokenEnabled", title = "是否启用token", hidden = true) + public boolean tokenEnabled; + + @Schema(name = "format", title = "默认关联的文件格式") + private List format; + + public OfficeConfigDO toOfficeConfigDO() { + OfficeConfigDO officeConfigDO = new OfficeConfigDO(); + officeConfigDO.setDocumentServer(this.documentServer); + officeConfigDO.setCallbackServer(this.callbackServer); + officeConfigDO.setFormat(this.format); + boolean tokenEnabled = StrUtil.isNotBlank(this.secret); + officeConfigDO.setTokenEnabled(tokenEnabled); + if (OfficeConfigService.VO_KEY.equals(this.secret)) { + return officeConfigDO; + } + if (tokenEnabled) { + String key = OfficeConfigService.generateKey(); + String encrypted = new SymmetricCrypto(SymmetricAlgorithm.AES, key.getBytes()).encryptHex(this.secret); + officeConfigDO.setKey(key); + officeConfigDO.setEncrypted(encrypted); + } else { + officeConfigDO.setKey(null); + officeConfigDO.setEncrypted(null); + } + return officeConfigDO; + } +} + diff --git a/src/main/java/com/jmal/clouddisk/office/model/Track.java b/src/main/java/com/jmal/clouddisk/office/model/Track.java new file mode 100644 index 0000000..86d64f9 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/office/model/Track.java @@ -0,0 +1,113 @@ +package com.jmal.clouddisk.office.model; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import java.util.List; + +/** + * @author jmal + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class Track { + + /** + * 定义用户对文档进行操作时接收的对象数组。 + *

+ * type 字段的值可以是以下值: + *

    + *
  • 0 - 用户断开文档协同编辑;
  • + *
  • 1 - 新用户连接到文档协同编辑;
  • + *
  • 2 - 用户点击强制保存按钮。
  • + *
+ * userid 字段的值是用户标识符。 + * 类型:对象数组 + */ + private List actions; + + /** + * 定义了包含文档编辑数据的文件链接,用于跟踪和显示文档的更改历史。 + * 仅当状态值等于 2、3、6 或 7 时,此链接才存在。 + * 该文件必须已保存,并且其地址必须通过 {@code setHistoryData} 方法作为 {@code changesUrl} 参数发送, + * 以便显示与特定文档版本对应的更改。 + */ + private String changesurl; + + /** + * 定义从{@code url}参数指定链接下载的文档的文件类型。 + * 默认情况下,文件类型为OOXML。但如果服务器设置{@code assemblyFormatAsOrigin}被启用,文件将以其原始格式保存。 + */ + private String filetype; + + /** + * 强制保存类型。 + * 定义强制保存请求执行时的发起方类型或触发方式。 + *

+ * 可选值如下: + *

    + *
  • 0: 强制保存请求发送至命令服务。
  • + *
  • 1: 每次执行保存操作时触发(例如点击保存按钮)。此选项仅在 {@code forcesave} 选项为 {@code true} 时可用。
  • + *
  • 2: 通过定时器触发,设置来源于服务器配置。
  • + *
  • 3: 每次表单提交时触发(例如点击“完成并提交”按钮)。
  • + *
+ *

+ * 注意: 此字段仅在 {@code status} 值为 6 或 7 时有效。 + */ + private Integer forcesavetype; + + /** + * 定义编辑文档标识符。 + */ + private String key; + + /** + * 文档的当前状态。 + * 可选值: + *

    + *
  • 1 - 文档正在编辑中;
  • + *
  • 2 - 文档已准备好保存;
  • + *
  • 3 - 文档保存时发生错误;
  • + *
  • 4 - 文档已关闭且未做任何更改;
  • + *
  • 6 - 文档正在编辑中,但当前状态已保存;
  • + *
  • 7 - 强制保存文档时发生错误。
  • + *
+ */ + private Integer status; + + /** + * 定义了指向已编辑文档的链接,该链接将随文档一同保存到文档存储服务。 + * 仅当状态值等于2、3、6或7时,此链接才存在。 + * 类型:字符串。 + */ + private String url; + + /** + * 表示发送给命令服务的自定义信息,用于 forcesave 和 info 命令,当请求中存在时。 + */ + private String userdata; + + /** + * 定义了打开文档进行编辑的用户标识符列表。 + * 当文档被修改时,此字段将返回最后编辑文档的用户标识符(适用于状态2和状态6的回复)。 + *

+ * 类型:字符串数组。 + * 必需参数。 + *

+ * 服务器存储所有回调URL,并根据执行操作的用户选择使用哪个回调URL。 + * 自版本5.5起,callbackUrl根据请求状态选择。 + * 从版本4.4到版本5.5,callbackUrl使用最后加入协同编辑的用户。 + * 在版本4.4之前,协同编辑时,callbackUrl使用第一个打开文件进行编辑的用户。 + *

+ * 自版本7.0起,callbackUrl使用同一用户的最后一个标签页。 + * 在版本7.0之前,使用第一个用户标签页的callbackUrl。 + */ + private List users; + + private String token; + + private String lastsave; + private Boolean notmodified; + private String fileId; +} diff --git a/src/main/java/com/jmal/clouddisk/office/model/enums/Action.java b/src/main/java/com/jmal/clouddisk/office/model/enums/Action.java new file mode 100644 index 0000000..bdd29cd --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/office/model/enums/Action.java @@ -0,0 +1,22 @@ +package com.jmal.clouddisk.office.model.enums; + +import com.fasterxml.jackson.annotation.JsonProperty; + +public enum Action { + @JsonProperty("edit") + edit, + @JsonProperty("review") + review, + @JsonProperty("view") + view, + @JsonProperty("embedded") + embedded, + @JsonProperty("filter") + filter, + @JsonProperty("comment") + comment, + @JsonProperty("fillForms") + fillForms, + @JsonProperty("blockcontent") + blockcontent; +} diff --git a/src/main/java/com/jmal/clouddisk/oss/AbstractOssObject.java b/src/main/java/com/jmal/clouddisk/oss/AbstractOssObject.java new file mode 100644 index 0000000..3391fef --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/oss/AbstractOssObject.java @@ -0,0 +1,26 @@ +package com.jmal.clouddisk.oss; + +import java.io.Closeable; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.io.InputStream; + +/** + * @author jmal + * @Description AbstractOssObject + * @date 2023/3/29 12:03 + */ +public abstract class AbstractOssObject implements Closeable { + + public abstract InputStream getInputStream() throws FileNotFoundException; + + public abstract void closeObject() throws IOException; + + public abstract String getKey(); + + public abstract IOssService getOssService(); + + public abstract FileInfo getFileInfo(); + + public abstract long getContentLength(); +} diff --git a/src/main/java/com/jmal/clouddisk/oss/BaseOssService.java b/src/main/java/com/jmal/clouddisk/oss/BaseOssService.java new file mode 100644 index 0000000..d69d82d --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/oss/BaseOssService.java @@ -0,0 +1,566 @@ +package com.jmal.clouddisk.oss; + +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.io.file.PathUtil; +import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.core.thread.ThreadUtil; +import com.github.benmanes.caffeine.cache.Cache; +import com.github.benmanes.caffeine.cache.Caffeine; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.exception.CommonException; +import com.jmal.clouddisk.exception.ExceptionType; +import com.jmal.clouddisk.oss.web.model.OssConfigDTO; +import com.jmal.clouddisk.util.FileContentTypeUtils; +import com.jmal.clouddisk.webdav.MyWebdavServlet; +import lombok.extern.slf4j.Slf4j; + +import java.io.File; +import java.io.IOException; +import java.io.InputStream; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.nio.file.StandardCopyOption; +import java.util.*; +import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.CopyOnWriteArraySet; +import java.util.concurrent.ScheduledThreadPoolExecutor; +import java.util.concurrent.TimeUnit; +import java.util.stream.Collectors; + +/** + * @author jmal + * @Description OssStorageBase + * @date 2023/4/3 16:33 + */ +@Slf4j +public class BaseOssService { + + private final FileProperties fileProperties; + /** + * 目录下文件名列表缓存
+ * key: objectName
+ * value: object下的文件名列表
+ */ + private final Cache> fileInfoListCache; + /** + * object缓存
+ * key: objectName
+ * value: FileInfo
+ */ + private final Cache fileInfoCache; + /** + * 临时文件缓存
+ * key: objectName
+ * value: 临时文件绝对路径
+ */ + private final Cache tempFileCache; + /** + * 临时文件列表缓存
+ * key: objectName
+ * value: object下的文件名列表
+ */ + private final Cache> tempFileListCache; + + /** + * 等待上传文件的缓存
+ * key: objectName
+ * value: 临时文件绝对路径
+ */ + private final Cache waitingUploadCache; + + private final Map updateIdCache = new ConcurrentHashMap<>(); + + private final Set objectNameLock = new CopyOnWriteArraySet<>(); + + private final String bucketName; + + private final IOssService ossService; + + public BaseOssService(IOssService ossService, String bucketName, FileProperties fileProperties, ScheduledThreadPoolExecutor scheduledThreadPoolExecutor, OssConfigDTO ossConfigDTO) { + this.ossService = ossService; + this.bucketName = bucketName; + this.fileProperties = fileProperties; + scheduledThreadPoolExecutor.scheduleWithFixedDelay(this::checkUpload, 1, 1, TimeUnit.SECONDS); + this.fileInfoListCache = Caffeine.newBuilder().initialCapacity(128).maximumSize(1024).expireAfterWrite(5, TimeUnit.SECONDS).build(); + this.fileInfoCache = Caffeine.newBuilder().initialCapacity(128).maximumSize(1024).expireAfterWrite(5, TimeUnit.SECONDS).build(); + this.tempFileCache = Caffeine.newBuilder().build(); + this.tempFileListCache = Caffeine.newBuilder().build(); + this.waitingUploadCache = Caffeine.newBuilder().build(); + log.info("{}配置加载成功, bucket: {}, username: {}, {}", ossService.getPlatform().getValue(), bucketName, ossConfigDTO.getUsername(), ossService.hashCode()); + } + + public String getUploadId(String objectName) { + String uploadId; + if (updateIdCache.containsKey(objectName)) { + uploadId = updateIdCache.get(objectName); + } else { + uploadId = ossService.initiateMultipartUpload(objectName); + updateIdCache.put(objectName, uploadId); + } + return uploadId; + } + + public void setUpdateIdCache(String objectName, String uploadId) { + updateIdCache.put(objectName, uploadId); + } + + /** + * 根据objectName获取FileInfo + * @param objectName objectName + * @return FileInfo + */ + public FileInfo getFileInfo(String objectName) { + FileInfo fileInfo = getFileInfoCache(objectName); + if (fileInfo == null) { + String path = getObjectParentName(objectName); + refresh(path); + } + fileInfo = getFileInfoCache(objectName); + if (fileInfo == null) { + refresh(objectName); + } + fileInfo = getFileInfoCache(objectName); + return fileInfo; + } + + public boolean delete(String objectName) { + if (isLock(objectName)) { + throw new CommonException(ExceptionType.LOCKED_RESOURCES); + } + boolean deleted; + deleteTempFileCache(objectName); + if (objectName.endsWith("/")) { + // 删除目录 + deleted = ossService.deleteDir(objectName); + } else { + // 删除文件 + deleted = ossService.deleteObject(objectName); + } + if (deleted) { + onDeleteSuccess(objectName); + } + return deleted; + } + + public boolean mkdir(String objectName) { + if (isLock(objectName)) { + throw new CommonException(ExceptionType.LOCKED_RESOURCES); + } + FileInfo fileInfo = ossService.newFolder(objectName); + if (fileInfo != null) { + onMkdirSuccess(objectName, fileInfo); + } + return fileInfo != null; + } + + /** + * 上传对象到临时文件 + * @param inputStream 网络输入流 + * @param ossPath oss路径前缀, 例如:/username/aliyunoss + * @param objectName objectName + * @return 写入临时文件是否成功 + */ + public boolean writeTempFile(InputStream inputStream, String ossPath, String objectName) { + if (isLock(objectName)) { + throw new CommonException(ExceptionType.LOCKED_RESOURCES); + } + // 临时文件绝对路径 + Path tempFileAbsolutePath = Paths.get(fileProperties.getRootDir(), ossPath, objectName); + try { + if (tempFileAbsolutePath.getNameCount() > 1) { + Path parentPath = tempFileAbsolutePath.getParent(); + if (!Files.exists(parentPath)) { + PathUtil.mkdir(parentPath); + } + } + Files.copy(inputStream, tempFileAbsolutePath, StandardCopyOption.REPLACE_EXISTING); + setTempFileCache(objectName, tempFileAbsolutePath); + setWaitingUploadCache(objectName, tempFileAbsolutePath); + // 稍后执行真正的上传, 在 checkUpload 方法里 + return true; + } catch (IOException e) { + log.warn(e.getMessage(), e); + return false; + } + } + + /** + * 获取文件名列表 + * @param objectName objectName + * @return object下的文件名列表 + */ + public List getFileNameList(String objectName) { + List fileInfoList = getFileInfoListCache(objectName); + List fileNameList = fileInfoList.stream().map(FileInfo::getName).collect(Collectors.toList()); + fileNameList = getTmepFileNameList(objectName, fileNameList); + return fileNameList; + } + + public List getFileInfoListCache(String objectName) { + return fileInfoListCache.get(objectName, key -> { + List fileInfos = ossService.getFileInfoList(objectName); + if (fileInfos != null && !fileInfos.isEmpty()) { + for (FileInfo fileInfo : fileInfos) { + setFileInfoCache(fileInfo.getKey(), fileInfo); + } + } + return fileInfos; + }); + } + + public AbstractOssObject getObject(String objectName) { + Path path = getTempFileCache(objectName); + if (path != null) { + return new TempFileObject(path.toFile(), objectName, bucketName, ossService); + } + printOperation(ossService.getPlatform().getKey(), "getObject", objectName); + return ossService.getAbstractOssObject(objectName); + } + + /** + * 删除临时文件缓存 + * @param objectName objectName + */ + private void deleteTempFileCache(String objectName) { + Path path = getTempFileCache(objectName); + if (path != null) { + clearTempFileCache(objectName); + } + } + + /** + * 删除oss文件成功后,要干的事 + * @param objectName objectName + */ + private void onDeleteSuccess(String objectName) { + log.info("delete success: {}", objectName); + FileInfo fileInfo = getFileInfoCache(objectName); + if (fileInfo != null) { + clearFileCache(objectName); + clearFileListCache(objectName); + } + } + + private void clearFileListCache(String objectName) { + Path objectNamePath = Paths.get(objectName); + if (objectNamePath.getNameCount() > 1) { + String pathObjectName = objectNamePath.getParent().toString() + MyWebdavServlet.PATH_DELIMITER; + fileInfoListCache.invalidate(pathObjectName); + for (String key : fileInfoListCache.asMap().keySet()) { + if (key.startsWith(objectName)) { + fileInfoListCache.invalidate(key); + } + } + } else { + fileInfoListCache.invalidate(objectName); + fileInfoListCache.invalidate(""); + } + } + + private void clearFileCache(String objectName) { + if (objectName.endsWith("/")) { + fileInfoCache.invalidate(objectName.substring(0,objectName.length() - 1)); + for (String key : fileInfoCache.asMap().keySet()) { + if (key.startsWith(objectName)) { + fileInfoCache.invalidate(key); + } + } + } else { + fileInfoCache.invalidate(objectName); + } + } + + /** + * 上传至oos成功后,要干的事 + * @param objectName objectName + * @param tempFileAbsolutePath 临时文件绝对路径 + */ + public void onUploadSuccess(String objectName, Path tempFileAbsolutePath) { + clearTempFileCache(objectName); + setFileInfoCache(objectName, newFileInfo(objectName, tempFileAbsolutePath.toFile())); + clearFileListCache(objectName); + removeWaitingUploadCache(objectName); + printSuccess(objectName); + } + + /** + * 上传至oos成功后,要干的事 + * @param objectName objectName + * @param fileSize 文件大小 + */ + public void onUploadSuccess(String objectName, Long fileSize) { + clearTempFileCache(objectName); + setFileInfoCache(objectName, newFileInfo(objectName, fileSize)); + clearFileListCache(objectName); + removeWaitingUploadCache(objectName); + printSuccess(objectName); + } + + private static void printSuccess(String objectName) { + log.info("upload success: {}", objectName); + } + + /** + * 在oss创建目录成功后,要干的事 + * @param objectName objectName + * @param fileInfo FileInfo + */ + private void onMkdirSuccess(String objectName, FileInfo fileInfo) { + log.info("mkdir success: {}", objectName); + setFileInfoCache(objectName, fileInfo); + clearFileListCache(objectName); + } + + /** + * 刷新缓存 + * @param objectName objectName + */ + private void refresh(String objectName) { + if (objectName.equals("/")) { + getFileNameList(objectName); + } else { + if (objectName.length() > 1) { + getFileNameList(objectName + "/"); + } else { + getFileNameList(objectName); + } + } + } + + /** + * 获取临时文件名列表 + * @param objectName objectName + * @param fileNameList object下的文件名列表 + * @return object下的文件名列表 + object下的临时文件名列表 + */ + private List getTmepFileNameList(String objectName, List fileNameList) { + if (fileNameList == null) { + fileNameList = new ArrayList<>(); + } + String objectParentName = objectName; + if (objectParentName.endsWith("/")) { + objectParentName = objectParentName.substring(0, objectParentName.length() - 1); + } + Set nameList = getTempFileListCache(objectParentName); + if (nameList != null) { + fileNameList.addAll(nameList); + } + return fileNameList; + } + + /** + *

检查是否有需要上传的文件

+ * 有等待上传的文件且文件的最后修改时间大于5秒就上传
+ * 该方法每秒执行一次
+ */ + private void checkUpload() { + getWaitingUploadCacheMap().forEach((objectName, tempFileAbsolutePath) -> { + long lastModified = tempFileAbsolutePath.toFile().lastModified(); + // 临时文件的最后修改时间大于5秒就上传 + if ((System.currentTimeMillis() - lastModified) > 5000) { + removeWaitingUploadCache(objectName); + ThreadUtil.execute(() -> ossService.uploadFile(tempFileAbsolutePath, objectName)); + } + }); + } + + public void addFileInfoList(String objectName, List fileInfoList, S3ObjectSummary s3ObjectSummary) { + if (!s3ObjectSummary.getKey().equals(objectName)) { + FileInfo fileInfo = getFileInfo(s3ObjectSummary); + fileInfoList.add(fileInfo); + } else { + FileInfo fileInfo = getFileInfoCache(objectName); + if (fileInfo == null) { + setFileInfoCache(objectName, newFileInfo(objectName)); + } + } + } + + public FileInfo getFileInfo(S3ObjectSummary objectSummary) { + FileInfo fileInfo = new FileInfo(); + fileInfo.setSize(objectSummary.getSize()); + fileInfo.setKey(objectSummary.getKey()); + fileInfo.setETag(objectSummary.getETag()); + fileInfo.setLastModified(objectSummary.getLastModified()); + fileInfo.setBucketName(objectSummary.getBucketName()); + return fileInfo; + } + + public FileInfo newFileInfo(String objectName) { + return newFileInfo(objectName, bucketName); + } + + public static FileInfo newFileInfo(String objectName, String bucketName) { + FileInfo fileInfo = new FileInfo(); + fileInfo.setSize(0); + fileInfo.setKey(objectName); + fileInfo.setLastModified(new Date()); + fileInfo.setBucketName(bucketName); + return fileInfo; + } + + public FileInfo newFileInfo(String objectName, File file) { + return newFileInfo(objectName, bucketName, file); + } + + public static FileInfo newFileInfo(String objectName, String bucketName, File file) { + FileInfo fileInfo = new FileInfo(); + fileInfo.setSize(file.length()); + fileInfo.setKey(objectName); + fileInfo.setLastModified(new Date(file.lastModified())); + fileInfo.setBucketName(bucketName); + return fileInfo; + } + + private FileInfo newFileInfo(String objectName, Long fileSize) { + FileInfo fileInfo = new FileInfo(); + fileInfo.setSize(fileSize); + fileInfo.setKey(objectName); + fileInfo.setLastModified(new Date()); + fileInfo.setBucketName(bucketName); + return fileInfo; + } + + /** + * 获取object的父级object + * @param objectName objectName + * @return 父级objectName, 结尾不带"/" + */ + private String getObjectParentName(String objectName) { + Path path = Paths.get(objectName); + String objectParentName = ""; + if (path.getNameCount() > 1) { + objectParentName = path.getParent().toString(); + } + return objectParentName; + } + + private void setFileInfoCache(String key, FileInfo fileInfo) { + if (key.length() > 1 && key.endsWith("/")) { + key = key.substring(0, key.length() - 1); + } + fileInfoCache.put(key, fileInfo); + } + + private FileInfo getFileInfoCache(String key) { + if (key.length() > 1 && key.endsWith("/")) { + key = key.substring(0, key.length() - 1); + } + FileInfo fileInfo = fileInfoCache.getIfPresent(key); + if (fileInfo == null) { + Path path = getTempFileCache(key); + if (path != null) { + fileInfo = newFileInfo(key, path.toFile()); + } + } + return fileInfo; + } + + public void printOperation(String platform, String operation, String objectName) { + log.info("{}, {}, {}", platform, operation, objectName); + } + + /** + * 设置临时文件缓存 + * @param objectName objectName + * @param tempFileAbsolutePath 临时文件绝对路径 + */ + private void setTempFileCache(String objectName, Path tempFileAbsolutePath) { + tempFileCache.put(objectName, tempFileAbsolutePath); + // setTempFileListCache + String objectParentName = getObjectParentName(objectName); + Set fileNameList = getTempFileListCache(objectParentName); + if (fileNameList == null) { + fileNameList = new HashSet<>(); + } + fileNameList.add(tempFileAbsolutePath.getFileName().toString()); + setTempFileListCache(objectParentName, fileNameList); + } + + + /** + * 清理临时文件缓存 + * @param objectName objectName + */ + private void clearTempFileCache(String objectName) { + Path path = getTempFileCache(objectName); + if (path != null) { + tempFileCache.invalidate(objectName); + try { + // 删除临时文件 + Files.delete(path); + } catch (IOException e) { + log.warn(e.getMessage(), e); + } + } + String objectParentName = getObjectParentName(objectName); + Set fileNameList = getTempFileListCache(objectParentName); + if (fileNameList != null) { + String objectFileName = Paths.get(objectName).getFileName().toString(); + if (fileNameList.contains(objectFileName)) { + fileNameList.remove(objectFileName); + setTempFileListCache(objectParentName, fileNameList); + } + if (fileNameList.isEmpty()) { + tempFileListCache.invalidate(objectParentName); + } + } + } + + private Set getTempFileListCache(String objectParentName) { + return tempFileListCache.getIfPresent(objectParentName); + } + + private void setTempFileListCache(String objectParentName, Set fileNameList) { + tempFileListCache.put(objectParentName, fileNameList); + } + + private Path getTempFileCache(String objectName) { + return tempFileCache.getIfPresent(objectName); + } + + private void setWaitingUploadCache(String objectName, Path tempFileAbsolutePath) { + waitingUploadCache.put(objectName, tempFileAbsolutePath); + } + + private Map getWaitingUploadCacheMap() { + return waitingUploadCache.asMap(); + } + + private void removeWaitingUploadCache(String objectName) { + waitingUploadCache.invalidate(objectName); + } + + public void setObjectNameLock(String objectName) { + objectNameLock.add(objectName); + } + + public void removeObjectNameLock(String objectName) { + objectNameLock.remove(objectName); + } + + public boolean isLock(String objectName) { + if (objectNameLock.contains(objectName)) { + return true; + } + return objectNameLock.stream().anyMatch(objectName::startsWith); + } + + public String getContentType(String objectName) { + String contentType = FileContentTypeUtils.getContentType(FileUtil.getSuffix(objectName)); + if (CharSequenceUtil.isBlank(contentType)) { + contentType = "application/octet-stream"; + } + return contentType; + } + + public void clearCache(String objectName) { + clearFileCache(objectName); + clearFileListCache(objectName); + } + + public void closePrint() { + log.info("platform: {}, bucketName: {} shutdown... {}", this.ossService.getPlatform().getValue(), bucketName, this.ossService.hashCode()); + } +} diff --git a/src/main/java/com/jmal/clouddisk/oss/BucketInfo.java b/src/main/java/com/jmal/clouddisk/oss/BucketInfo.java new file mode 100644 index 0000000..0a33428 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/oss/BucketInfo.java @@ -0,0 +1,22 @@ +package com.jmal.clouddisk.oss; + +import com.jmal.clouddisk.webdav.MyWebdavServlet; +import lombok.Data; + +/** + * @author jmal + * @Description OSS BucketInfo + * @date 2023/3/29 13:49 + */ +@Data +public class BucketInfo { + String bucketName; + String folderName; + String username; + PlatformOSS platform; + + public String getWebPathPrefix() { + return MyWebdavServlet.getPathDelimiter(username, folderName); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/oss/FileInfo.java b/src/main/java/com/jmal/clouddisk/oss/FileInfo.java new file mode 100644 index 0000000..15bad54 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/oss/FileInfo.java @@ -0,0 +1,90 @@ +package com.jmal.clouddisk.oss; + +import cn.hutool.core.date.LocalDateTimeUtil; +import com.jmal.clouddisk.model.FileDocument; +import com.jmal.clouddisk.model.FileIntroVO; +import com.jmal.clouddisk.oss.web.WebOssCommonService; +import com.jmal.clouddisk.util.CaffeineUtil; +import com.jmal.clouddisk.util.FileContentTypeUtils; +import com.jmal.clouddisk.util.MyFileUtils; +import lombok.Data; + +import java.nio.file.Path; +import java.nio.file.Paths; +import java.time.LocalDateTime; +import java.util.Date; + +@Data +public class FileInfo { + private String bucketName; + private String key; + private String eTag; + private long size; + private Date lastModified; + + public FileInfo() { + } + + public FileInfo(String key, String eTag, long size, Date lastModified) { + this.key = key; + this.eTag = eTag; + this.size = size; + this.lastModified = lastModified; + } + + public String getName() { + Path path = Paths.get(key); + return path.getFileName().toString(); + } + + public boolean isFolder() { + return key.endsWith("/"); + } + + public FileIntroVO toFileIntroVO(String ossPath, String userId) { + BucketInfo bucketInfo = CaffeineUtil.getOssDiameterPrefixCache(ossPath); + String username = Paths.get(ossPath).subpath(0, 1).toString(); + String rootName = bucketInfo.getFolderName(); + FileIntroVO fileIntroVO = new FileIntroVO(); + String fileName = getName(); + fileIntroVO.setId(WebOssCommonService.getFileId(rootName, key, username)); + fileIntroVO.setUsername(username); + fileIntroVO.setIsFavorite(false); + fileIntroVO.setIsFolder(isFolder()); + fileIntroVO.setName(fileName); + fileIntroVO.setPath(WebOssCommonService.getPath(key, rootName)); + fileIntroVO.setSize(size); + String suffix = MyFileUtils.extName(fileName); + fileIntroVO.setSuffix(suffix); + fileIntroVO.setMd5(eTag); + fileIntroVO.setContentType(FileContentTypeUtils.getContentType(suffix)); + if (lastModified != null) { + LocalDateTime updateTime = LocalDateTimeUtil.of(lastModified); + fileIntroVO.setAgoTime(System.currentTimeMillis() - lastModified.getTime()); + fileIntroVO.setUploadDate(updateTime); + fileIntroVO.setUpdateDate(updateTime); + } + fileIntroVO.setUserId(userId); + return fileIntroVO; + } + + public FileDocument toFileDocument(String ossPath, String userId) { + FileDocument fileDocument = new FileDocument(); + FileIntroVO fileIntroVO = toFileIntroVO(ossPath, userId); + fileDocument.setAgoTime(fileIntroVO.getAgoTime()); + fileDocument.setId(fileIntroVO.getId()); + fileDocument.setUsername(fileDocument.getUsername()); + fileDocument.setIsFavorite(fileIntroVO.getIsFavorite()); + fileDocument.setIsFolder(fileIntroVO.getIsFolder()); + fileDocument.setName(fileIntroVO.getName()); + fileDocument.setPath(fileIntroVO.getPath()); + fileDocument.setSize(fileIntroVO.getSize()); + fileDocument.setSuffix(fileIntroVO.getSuffix()); + fileDocument.setMd5(fileIntroVO.getMd5()); + fileDocument.setContentType(fileIntroVO.getContentType()); + fileDocument.setUploadDate(fileIntroVO.getUploadDate()); + fileDocument.setUpdateDate(fileIntroVO.getUpdateDate()); + fileDocument.setUserId(userId); + return fileDocument; + } +} diff --git a/src/main/java/com/jmal/clouddisk/oss/IOssService.java b/src/main/java/com/jmal/clouddisk/oss/IOssService.java new file mode 100644 index 0000000..cfaf21a --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/oss/IOssService.java @@ -0,0 +1,252 @@ +package com.jmal.clouddisk.oss; + +import java.io.File; +import java.io.InputStream; +import java.net.URL; +import java.nio.file.Path; +import java.util.List; +import java.util.concurrent.CopyOnWriteArrayList; + +/** + * @author jmal + * @Description oss 存储接口 + * @date 2023/3/29 11:48 + */ +public interface IOssService { + + PlatformOSS getPlatform(); + + /** + * Webdav 获取FileInfo + * @param objectName object key + * @return FileInfo + */ + FileInfo getFileInfo(String objectName); + + /** + * Webdav 删除文件 + * @param objectName object key + * @return 是否删除成功 + */ + boolean delete(String objectName); + + /** + * Webdav 创建文件夹 + * @param objectName object key + * @return 是否创建成功 + */ + boolean mkdir(String objectName); + + /** + * Webdav 上传文件 + * @param inputStream 文件输入流 + * @param ossPath ossPath + * @param objectName object key + * @return 是否上传成功 + */ + boolean write(InputStream inputStream, String ossPath, String objectName); + + /** + * Webdav 列出当前文件夹下的所有文件和文件夹 + * @param objectName object key + * @return 文件名称列表(包含文件夹) + */ + String[] list(String objectName); + + /** + * Webdav 获取文件对象(有时是下载) + * @param objectName object key + * @return AbstractOssObject + */ + AbstractOssObject getObjectCache(String objectName); + + + /** + * 获取 AbstractOssObject + * @param objectName object key + * @return AbstractOssObject + */ + AbstractOssObject getAbstractOssObject(String objectName); + + /** + * 获取 AbstractOssObject + * @param objectName object key + * @param rangeStart rangeStart 分段 + * @param rangeEnd rangeEnd 分段 + * @return AbstractOssObject + */ + AbstractOssObject getAbstractOssObject(String objectName, Long rangeStart, Long rangeEnd); + + /** + * 删除文件 + * @param objectName object key + */ + boolean deleteObject(String objectName); + + /** + * 删除文件夹 + * @param objectName object key + */ + boolean deleteDir(String objectName); + + /** + * 从缓存中获取objectName下的所有文件夹和文件 + * @param objectName object key + * @return List + */ + List getFileInfoListCache(String objectName); + + /** + * 获取objectName下的所有文件夹和文件 + * @param objectName object key + * @return List + */ + List getFileInfoList(String objectName); + + /** + * 列举所有包含指定前缀的所有文件 + * @param objectName objectName + * @return objectNameList + */ + List getAllObjectsWithPrefix(String objectName); + + /** + * 创建文件夹 + * @param objectName object key + */ + FileInfo newFolder(String objectName); + + /** + * 上传文件到 OSS + * @param tempFileAbsolutePath 临时文件的绝对路径 + * @param objectName object key + */ + void uploadFile(Path tempFileAbsolutePath, String objectName); + + /** + * 上传文件到 OSS + * @param inputStream inputStream + * @param objectName object key + */ + void uploadFile(InputStream inputStream, String objectName, long inputStreamLength); + + /** + * 检查Bucket是否存在,并且验证配置是否可用,用于创建OSS配置时使用 + */ + boolean doesBucketExist(); + + /** + * 判断对象是否存在 + */ + boolean doesObjectExist(String objectName); + + /** + * 获取分片上传事件的唯一标识 + * @param objectName objectName + * @return uploadId + */ + String getUploadId(String objectName); + + /** + * 初始化分片上传事件 + * @param objectName objectName + * @return uploadId + */ + String initiateMultipartUpload(String objectName); + + /** + * 获取分片号列表 + * @param objectName objectName + * @param uploadId uploadId + * @return 分片号列表 + */ + CopyOnWriteArrayList getListParts(String objectName, String uploadId); + + /** + * 上传分片 + * @param inputStream 输入流 + * @param objectName objectName + * @param partSize 分片大小 + * @param partNumber 分片编号 + * @param uploadId uploadId + * @return 分片是否上传成功 + */ + boolean uploadPart(InputStream inputStream, String objectName, int partSize, int partNumber, String uploadId); + + /** + * 取消分片上传 + * @param objectName objectName + * @param uploadId uploadId + */ + void abortMultipartUpload(String objectName, String uploadId); + + /** + * 完成分片上传(合并分片) + * + * @param objectName objectName + * @param uploadId uploadId + * @param fileTotalSize 文件总大小 + */ + void completeMultipartUpload(String objectName, String uploadId, Long fileTotalSize); + + /** + * 获取缩略图, 指定目标图片宽度为 Width,高度等比缩放 + * @param objectName objectName + * @param file 临时文件 + * @param width 图片宽度 + */ + FileInfo getThumbnail(String objectName, File file, int width); + + /** + * 生成预签名URL + * + * @param objectName objectName + * @param expiryTime 过期时间(秒) + * @return 预签名URL + */ + URL getPresignedObjectUrl(String objectName, int expiryTime); + + /** + * 拷贝对象(相同Bucket之间拷贝) + * + * @param sourceKey 源objectName + * @param destinationKey 目标objectName + * @return 复制成功的objectName列表 + */ + List copyObject(String sourceKey, String destinationKey); + + /** + * 拷贝对象(不同Bucket之间拷贝) + * + * @param sourceBucketName 源Bucket + * @param sourceKey 源objectName + * @param destinationBucketName 目标Bucket + * @param destinationKey 目标objectName + * @return 复制成功的objectName列表 + */ + List copyObject(String sourceBucketName, String sourceKey, String destinationBucketName, String destinationKey); + + /** + * 锁对象 + * @param objectName objectName + */ + void lock(String objectName); + + /** + * 解锁对象 + * @param objectName objectName + */ + void unlock(String objectName); + + /** + * 清除缓存 objectName 及以下的所有缓存 + * @param objectName objectName + */ + void clearCache(String objectName); + + /** + * 关闭需要关闭的一切 + */ + void close(); + +} diff --git a/src/main/java/com/jmal/clouddisk/oss/OssConfigService.java b/src/main/java/com/jmal/clouddisk/oss/OssConfigService.java new file mode 100644 index 0000000..3825026 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/oss/OssConfigService.java @@ -0,0 +1,305 @@ +package com.jmal.clouddisk.oss; + +import cn.hutool.core.io.file.PathUtil; +import cn.hutool.core.thread.ThreadUtil; +import cn.hutool.core.util.ReUtil; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.exception.CommonException; +import com.jmal.clouddisk.exception.ExceptionType; +import com.jmal.clouddisk.listener.FileMonitor; +import com.jmal.clouddisk.model.FileDocument; +import com.jmal.clouddisk.model.rbac.ConsumerDO; +import com.jmal.clouddisk.oss.aliyun.AliyunOssService; +import com.jmal.clouddisk.oss.minio.MinIOService; +import com.jmal.clouddisk.oss.tencent.TencentOssService; +import com.jmal.clouddisk.oss.web.model.OssConfigDO; +import com.jmal.clouddisk.oss.web.model.OssConfigDTO; +import com.jmal.clouddisk.service.impl.UserServiceImpl; +import com.jmal.clouddisk.util.CaffeineUtil; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import com.jmal.clouddisk.webdav.MyWebdavServlet; +import jakarta.annotation.PostConstruct; +import jakarta.annotation.PreDestroy; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.data.mongodb.core.query.Update; +import org.springframework.security.crypto.encrypt.TextEncryptor; +import org.springframework.stereotype.Service; + +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.List; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; + +/** + * @author jmal + * @Description OssConfig + * @date 2023/4/4 15:13 + */ +@Service +@Slf4j +@RequiredArgsConstructor +public class OssConfigService { + + public static final String COLLECTION_NAME = "OssConfig"; + private static final Map OSS_SERVICE_MAP = new ConcurrentHashMap<>(); + private final UserServiceImpl userService; + + private final FileProperties fileProperties; + + private final FileMonitor fileMonitor; + + private final MongoTemplate mongoTemplate; + + private final TextEncryptor textEncryptor; + + + @PostConstruct + public void init() { + // load config + ThreadUtil.execute(() -> { + List ossConfigDOList = mongoTemplate.findAll(OssConfigDO.class); + for (OssConfigDO ossConfigDO : ossConfigDOList) { + String userId = ossConfigDO.getUserId(); + ConsumerDO consumerDO = userService.userInfoById(userId); + if (consumerDO == null) { + continue; + } + OssConfigDTO ossConfigDTO = ossConfigDO.toOssConfigDTO(textEncryptor); + ossConfigDTO.setUsername(consumerDO.getUsername()); + IOssService ossService = null; + try { + ossService = newOssService(fileProperties, ossConfigDO.getPlatform(), ossConfigDTO); + if (ossService != null) { + setBucketInfoCache(ossConfigDO.getPlatform(), ossConfigDTO, ossService); + } + } catch (Exception e) { + log.error("{} 配置加载失败!", ossConfigDO.getPlatform().getValue()); + log.error(e.getMessage(), e); + if (ossService != null) { + ossService.close(); + } + } + } + }); + } + + public void setOssServiceMap(String key, IOssService ossService) { + OSS_SERVICE_MAP.put(key, ossService); + } + + public static IOssService getOssStorageService(String ossPath) { + BucketInfo bucketInfo = CaffeineUtil.getOssDiameterPrefixCache(ossPath); + return OssConfigService.getOssServiceValue(bucketInfo.getWebPathPrefix()); + } + + public static String getObjectName(String path, String ossPath) { + Path prePath = Paths.get(path); + String name = ""; + if (prePath.getNameCount() > 2) { + name = path.substring(ossPath.length() + 1); + if (!name.endsWith("/")) { + name = name + "/"; + } + } + return name; + } + + private static IOssService getOssServiceValue(String key) { + return OSS_SERVICE_MAP.get(key); + } + + private void setBucketInfoCache(PlatformOSS platformOSS, OssConfigDTO ossConfigDTO, IOssService ossService) { + BucketInfo bucketInfo = new BucketInfo(); + bucketInfo.setPlatform(platformOSS); + bucketInfo.setBucketName(ossConfigDTO.getBucket()); + bucketInfo.setUsername(ossConfigDTO.getUsername()); + bucketInfo.setFolderName(ossConfigDTO.getFolderName()); + String webPathPrefix = bucketInfo.getWebPathPrefix(); + // 销毁掉之前的IOssService + destroyOssService(webPathPrefix); + // setOssDiameterPrefixCache + CaffeineUtil.setOssDiameterPrefixCache(webPathPrefix, bucketInfo); + // setOssService + setOssServiceMap(webPathPrefix, ossService); + fileMonitor.addDirFilter(webPathPrefix); + } + + private void destroyOssService(String key) { + CaffeineUtil.removeOssDiameterPrefixCache(key); + if (OSS_SERVICE_MAP.containsKey(key)) { + // 销毁掉之前的IOssService + getOssServiceValue(key).close(); + } + OSS_SERVICE_MAP.remove(key); + // 移除webPathPrefix的文件夹的 过滤器 + fileMonitor.removeDirFilter(key); + } + + /** + * 创建IOssService对象 + * @param fileProperties FileProperties + * @param platformOSS PlatformOSS + * @param ossConfigDTO OssConfigDTO + * @return IOssService 对象 + */ + private static IOssService newOssService(FileProperties fileProperties, PlatformOSS platformOSS, OssConfigDTO ossConfigDTO) { + IOssService ossService = null; + switch (platformOSS) { + case ALIYUN -> ossService = new AliyunOssService(fileProperties, ossConfigDTO); + case TENCENT -> ossService = new TencentOssService(fileProperties, ossConfigDTO); + case MINIO -> ossService = new MinIOService(fileProperties, ossConfigDTO); + } + return ossService; + } + + @PreDestroy + public void destroy() { + OSS_SERVICE_MAP.values().forEach(IOssService::close); + } + + public void putOssConfig(OssConfigDTO ossConfigDTO) { + IOssService ossService = null; + String userId = ossConfigDTO.getUserId(); + ConsumerDO consumerDO = userService.getUserInfoById(userId); + if (consumerDO == null) { + throw new CommonException(ExceptionType.PARAMETERS_VALUE.getCode(), "无效参数 userId"); + } + ossConfigDTO.setUsername(consumerDO.getUsername()); + Query query = new Query(); + // 销毁旧配置 + destroyOldConfig(ossConfigDTO, userId, consumerDO, query); + + // 配置转换 DTO -> DO + OssConfigDO ossConfigDO = ossConfigDTO.toOssConfigDO(textEncryptor); + + String configErr = "配置有误 或者 Access Key 没有权限"; + try { + // 检查配置可用性 + ossService = newOssService(fileProperties, ossConfigDO.getPlatform(), ossConfigDTO); + if (ossService == null) { + throw new CommonException(ExceptionType.WARNING.getCode(), configErr); + } + boolean doesBucketExist = ossService.doesBucketExist(); + if (!doesBucketExist) { + ossService.close(); + throw new CommonException(ExceptionType.WARNING.getCode(), "Bucket 不存在"); + } else { + // 更新配置 + updateOssConfig(ossConfigDTO, ossService, query, ossConfigDO); + } + } catch (Exception e) { + log.warn(e.getMessage()); + if (ossService != null) { + ossService.close(); + } + throw new CommonException(ExceptionType.WARNING.getCode(), configErr); + } + } + + /** + * 销毁旧配置 + */ + private void destroyOldConfig(OssConfigDTO ossConfigDTO, String userId, ConsumerDO consumerDO, Query query) { + query.addCriteria(Criteria.where("userId").is(userId)); + query.addCriteria(Criteria.where("endpoint").is(ossConfigDTO.getEndpoint())); + query.addCriteria(Criteria.where("bucket").is(ossConfigDTO.getBucket())); + query.addCriteria(Criteria.where("platform").is(PlatformOSS.getPlatform(ossConfigDTO.getPlatform()))); + // 检查目录是否存在 + boolean existFolder = existFolderName(consumerDO.getUsername(), ossConfigDTO.getFolderName()); + // 旧配置 + OssConfigDO oldOssConfigDO = mongoTemplate.findOne(query, OssConfigDO.class); + if (oldOssConfigDO != null) { + String webPathPrefix = MyWebdavServlet.getPathDelimiter(ossConfigDTO.getUsername(), oldOssConfigDO.getFolderName()); + if (!oldOssConfigDO.getFolderName().equals(ossConfigDTO.getFolderName())) { + // 修改了目录名 + // 修改了目录名 + Path oldPath = Paths.get(fileProperties.getRootDir(), ossConfigDTO.getUsername(), oldOssConfigDO.getFolderName()); + PathUtil.del(oldPath); + fileMonitor.removeDirFilter(webPathPrefix); + if (existFolder) { + throw new CommonException(ExceptionType.WARNING.getCode(), "目录已存在: " + ossConfigDTO.getFolderName()); + } + } + // 销毁 old OssService + destroyOssService(webPathPrefix); + if (ossConfigDTO.getAccessKey().contains("*")) { + ossConfigDTO.setAccessKey(textEncryptor.decrypt(oldOssConfigDO.getAccessKey())); + } + if (ossConfigDTO.getSecretKey().contains("*")) { + ossConfigDTO.setSecretKey(textEncryptor.decrypt(oldOssConfigDO.getSecretKey())); + } + } + if (existFolder && oldOssConfigDO == null) { + throw new CommonException(ExceptionType.WARNING.getCode(), "目录已存在: " + ossConfigDTO.getFolderName()); + } + + } + + /** + * 更新配置 + */ + private void updateOssConfig(OssConfigDTO ossConfigDTO, IOssService ossService, Query query, OssConfigDO ossConfigDO) { + // mkdir + Path path = Paths.get(fileProperties.getRootDir(), ossConfigDTO.getUsername(), ossConfigDTO.getFolderName()); + PathUtil.mkdir(path); + setBucketInfoCache(ossConfigDO.getPlatform(), ossConfigDTO, ossService); + Update update = new Update(); + update.set("platform", ossConfigDO.getPlatform()); + update.set("folderName", ossConfigDO.getFolderName()); + update.set("accessKey", ossConfigDO.getAccessKey()); + update.set("secretKey", ossConfigDO.getSecretKey()); + update.set("endpoint", ossConfigDO.getEndpoint()); + update.set("region", ossConfigDO.getRegion()); + update.set("bucket", ossConfigDO.getBucket()); + update.set("userId", ossConfigDO.getUserId()); + mongoTemplate.upsert(query, update, COLLECTION_NAME); + } + + /** + * 判断目录是否存在 + * + * @param username username + * @param folderName 目录名 + */ + private boolean existFolderName(String username, String folderName) { + Path path = Paths.get(fileProperties.getRootDir(), username, folderName); + return PathUtil.exists(path, false); + } + + /** + * OSS配置列表 + */ + public ResponseResult ossConfigList() { + List ossConfigDOList = mongoTemplate.findAll(OssConfigDO.class); + List ossConfigDTOList = ossConfigDOList.stream().map(OssConfigDO::toOssConfigDTO).toList(); + return ResultUtil.success(ossConfigDTOList); + } + + /** + * 删除OSS配置 + * @param id ossConfigId + */ + public ResponseResult deleteOssConfig(String id) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(id)); + OssConfigDO ossConfigDO = mongoTemplate.findAndRemove(query, OssConfigDO.class); + if (ossConfigDO != null) { + // 销毁IOssService + String username = userService.getUserNameById(ossConfigDO.getUserId()); + String key = MyWebdavServlet.getPathDelimiter(username, ossConfigDO.getFolderName()); + destroyOssService(key); + // 删除相关缓存 + Query removeQuery = new Query(); + removeQuery.addCriteria(Criteria.where("_id").regex("^" + ReUtil.escape(Paths.get(username, ossConfigDO.getFolderName()) + "/"))); + mongoTemplate.remove(removeQuery, FileDocument.class); + PathUtil.del(Paths.get(fileProperties.getRootDir(), key)); + } + return ResultUtil.success(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/oss/OssInputStream.java b/src/main/java/com/jmal/clouddisk/oss/OssInputStream.java new file mode 100644 index 0000000..a17eed8 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/oss/OssInputStream.java @@ -0,0 +1,24 @@ +package com.jmal.clouddisk.oss; + +import lombok.Getter; +import lombok.Setter; + +import java.io.InputStream; +import java.util.zip.CheckedInputStream; +import java.util.zip.Checksum; + +/** + * @author jmal + * @Description OssInputStream + * @date 2023/3/28 16:32 + */ +public class OssInputStream extends CheckedInputStream { + + @Getter + @Setter + private AbstractOssObject abstractOssObject; + + public OssInputStream(InputStream in, Checksum checksum) { + super(in, checksum); + } +} diff --git a/src/main/java/com/jmal/clouddisk/oss/PlatformOSS.java b/src/main/java/com/jmal/clouddisk/oss/PlatformOSS.java new file mode 100644 index 0000000..fbb6b6b --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/oss/PlatformOSS.java @@ -0,0 +1,34 @@ +package com.jmal.clouddisk.oss; + +import lombok.Getter; + +/** + * @author jmal + * @Description platform + * @date 2023/3/29 14:00 + */ +public enum PlatformOSS { + ALIYUN("aliyun", "阿里云OSS"), + TENCENT("tencent", "腾讯云OSS"), + MINIO("minio", "S3兼容"); + + @Getter + private final String key; + @Getter + private final String value; + + PlatformOSS(String key, String value) { + this.key = key; + this.value = value; + } + + public static PlatformOSS getPlatform(String key) { + for (PlatformOSS platformOSS : values()) { + if (platformOSS.getKey().equals(key)) { + return platformOSS; + } + } + return ALIYUN; + } + +} diff --git a/src/main/java/com/jmal/clouddisk/oss/S3ObjectSummary.java b/src/main/java/com/jmal/clouddisk/oss/S3ObjectSummary.java new file mode 100644 index 0000000..456be03 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/oss/S3ObjectSummary.java @@ -0,0 +1,27 @@ +package com.jmal.clouddisk.oss; + +import lombok.Data; + +import java.util.Date; + +/** + * @author jmal + * @Description S3ObjectSummary + * @date 2023/4/6 11:08 + */ +@Data +public class S3ObjectSummary { + private String bucketName; + private String key; + private String eTag; + private long size; + private Date lastModified; + + public S3ObjectSummary(long size, String key, String eTag, Date lastModified, String bucketName) { + this.size = size; + this.key = key; + this.eTag = eTag; + this.lastModified = lastModified; + this.bucketName = bucketName; + } +} diff --git a/src/main/java/com/jmal/clouddisk/oss/TempFileObject.java b/src/main/java/com/jmal/clouddisk/oss/TempFileObject.java new file mode 100644 index 0000000..010088b --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/oss/TempFileObject.java @@ -0,0 +1,68 @@ +package com.jmal.clouddisk.oss; + +import java.io.*; +import java.util.Date; + +/** + * @author jmal + * @Description TempFileObject + * @date 2023/4/3 14:03 + */ +public class TempFileObject extends AbstractOssObject { + + private final File tempFile; + + private final String objectName; + + private final String bucketName; + + private final IOssService ossService; + + public TempFileObject(File file, String objectName, String bucketName, IOssService ossService) { + this.tempFile = file; + this.objectName = objectName; + this.bucketName = bucketName; + this.ossService = ossService; + } + + @Override + public InputStream getInputStream() throws FileNotFoundException { + return new FileInputStream(this.tempFile); + } + + @Override + public void closeObject() { + // none + } + + @Override + public String getKey() { + return this.objectName; + } + + @Override + public IOssService getOssService() { + return this.ossService; + } + + @Override + public FileInfo getFileInfo() { + FileInfo fileInfo = new FileInfo(); + fileInfo.setSize(this.tempFile.length()); + fileInfo.setKey(this.objectName); + fileInfo.setLastModified(new Date(tempFile.lastModified())); + fileInfo.setETag(String.valueOf(tempFile.hashCode())); + fileInfo.setBucketName(this.bucketName); + return fileInfo; + } + + @Override + public long getContentLength() { + return tempFile.length(); + } + + @Override + public void close() throws IOException { + closeObject(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/oss/aliyun/AliyunOssObject.java b/src/main/java/com/jmal/clouddisk/oss/aliyun/AliyunOssObject.java new file mode 100644 index 0000000..db32797 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/oss/aliyun/AliyunOssObject.java @@ -0,0 +1,67 @@ +package com.jmal.clouddisk.oss.aliyun; + +import com.aliyun.oss.model.OSSObject; +import com.jmal.clouddisk.oss.AbstractOssObject; +import com.jmal.clouddisk.oss.FileInfo; +import com.jmal.clouddisk.oss.IOssService; + +import java.io.IOException; +import java.io.InputStream; + +/** + * @author jmal + * @Description AliyunOssObject + * @date 2023/3/29 12:06 + */ +public class AliyunOssObject extends AbstractOssObject { + + private final OSSObject ossObject; + + private final IOssService ossService; + + public AliyunOssObject(OSSObject ossObject, IOssService ossService) { + this.ossObject = ossObject; + this.ossService = ossService; + } + + @Override + public InputStream getInputStream() { + return this.ossObject.getObjectContent(); + } + + @Override + public void closeObject() throws IOException { + this.ossObject.forcedClose(); + } + + @Override + public String getKey() { + return this.ossObject.getKey(); + } + + @Override + public IOssService getOssService() { + return this.ossService; + } + + @Override + public FileInfo getFileInfo() { + FileInfo fileInfo = new FileInfo(); + fileInfo.setSize(this.ossObject.getObjectMetadata().getContentLength()); + fileInfo.setKey(this.ossObject.getKey()); + fileInfo.setLastModified(this.ossObject.getObjectMetadata().getLastModified()); + fileInfo.setETag(this.ossObject.getObjectMetadata().getETag()); + fileInfo.setBucketName(this.ossObject.getBucketName()); + return fileInfo; + } + + @Override + public long getContentLength() { + return this.ossObject.getObjectMetadata().getContentLength(); + } + + @Override + public void close() throws IOException { + closeObject(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/oss/aliyun/AliyunOssService.java b/src/main/java/com/jmal/clouddisk/oss/aliyun/AliyunOssService.java new file mode 100644 index 0000000..573a589 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/oss/aliyun/AliyunOssService.java @@ -0,0 +1,557 @@ +package com.jmal.clouddisk.oss.aliyun; + +import cn.hutool.core.io.file.PathUtil; +import cn.hutool.core.thread.ThreadUtil; +import com.aliyun.oss.ClientException; +import com.aliyun.oss.OSS; +import com.aliyun.oss.OSSClientBuilder; +import com.aliyun.oss.OSSException; +import com.aliyun.oss.model.*; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.oss.*; +import com.jmal.clouddisk.oss.web.model.OssConfigDTO; +import lombok.extern.slf4j.Slf4j; + +import java.io.ByteArrayInputStream; +import java.io.File; +import java.io.InputStream; +import java.net.URL; +import java.nio.file.Path; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.concurrent.CopyOnWriteArrayList; +import java.util.concurrent.ScheduledThreadPoolExecutor; + +@Slf4j +public class AliyunOssService implements IOssService { + + private final String bucketName; + + private final OSS ossClient; + + private final BaseOssService baseOssService; + + private final ScheduledThreadPoolExecutor scheduledThreadPoolExecutor; + + public AliyunOssService(FileProperties fileProperties, OssConfigDTO ossConfigDTO) { + String endpoint = ossConfigDTO.getEndpoint(); + String accessKeyId = ossConfigDTO.getAccessKey(); + String accessKeySecret = ossConfigDTO.getSecretKey(); + this.bucketName = ossConfigDTO.getBucket(); + // 创建OSSClient实例。 + this.ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); + scheduledThreadPoolExecutor = ThreadUtil.createScheduledExecutor(1); + this.baseOssService = new BaseOssService(this, bucketName, fileProperties, scheduledThreadPoolExecutor, ossConfigDTO); + ThreadUtil.execute(this::getMultipartUploads); + } + + @Override + public PlatformOSS getPlatform() { + return PlatformOSS.ALIYUN; + } + + @Override + public FileInfo getFileInfo(String objectName) { + return baseOssService.getFileInfo(objectName); + } + + @Override + public boolean delete(String objectName) { + return baseOssService.delete(objectName); + } + + @Override + public boolean mkdir(String objectName) { + return baseOssService.mkdir(objectName); + } + + @Override + public boolean write(InputStream inputStream, String ossPath, String objectName) { + return baseOssService.writeTempFile(inputStream, ossPath, objectName); + } + + @Override + public String[] list(String objectName) { + return baseOssService.getFileNameList(objectName).toArray(new String[0]); + } + + @Override + public AbstractOssObject getObjectCache(String objectName) { + return baseOssService.getObject(objectName); + } + + @Override + public AbstractOssObject getAbstractOssObject(String objectName) { + return getAbstractOssObject(objectName, null, null); + } + + @Override + public AbstractOssObject getAbstractOssObject(String objectName, Long rangeStart, Long rangeEnd) { + OSSObject ossObject = null; + try { + GetObjectRequest getObjectRequest = new GetObjectRequest(bucketName, objectName); + if (rangeStart != null && rangeEnd != null) { + getObjectRequest.setRange(rangeStart, rangeEnd); + } + ossObject = this.ossClient.getObject(getObjectRequest); + } catch (Exception e) { + log.warn(e.getMessage()); + } + if (ossObject == null) { + return null; + } + return new AliyunOssObject(ossObject, this); + } + + + @Override + public boolean deleteObject(String objectName) { + try { + baseOssService.printOperation(getPlatform().getKey(), "deleteObject", objectName); + ossClient.deleteObject(bucketName, objectName); + } catch (Exception e) { + log.error(e.getMessage(), e); + return false; + } + return true; + } + + @Override + public boolean deleteDir(String objectName) { + try { + baseOssService.printOperation(getPlatform().getKey(), "deleteDir", objectName); + // 删除目录及目录下的所有文件。 + String nextMarker = null; + ObjectListing objectListing; + do { + ListObjectsRequest listObjectsRequest = new ListObjectsRequest(bucketName) + .withPrefix(objectName) + .withMarker(nextMarker); + + objectListing = ossClient.listObjects(listObjectsRequest); + if (!objectListing.getObjectSummaries().isEmpty()) { + List keys = new ArrayList<>(); + for (OSSObjectSummary s : objectListing.getObjectSummaries()) { + keys.add(s.getKey()); + } + DeleteObjectsRequest deleteObjectsRequest = new DeleteObjectsRequest(bucketName).withKeys(keys).withEncodingType("url"); + ossClient.deleteObjects(deleteObjectsRequest); + } + nextMarker = objectListing.getNextMarker(); + } while (objectListing.isTruncated()); + return true; + } catch (OSSException oe) { + log.error(oe.getMessage(), oe); + } catch (ClientException ce) { + log.error(ce.getMessage(), ce); + } + return false; + } + + @Override + public List getFileInfoList(String objectName) { + List fileInfoList = new ArrayList<>(); + try { + // 构造ListObjectsRequest请求。 + ListObjectsRequest listObjectsRequest = new ListObjectsRequest(bucketName); + + // 设置正斜线(/)为文件夹的分隔符。 + listObjectsRequest.setDelimiter("/"); + + // 列出fun目录下的所有文件和文件夹。 + listObjectsRequest.setPrefix(objectName); + baseOssService.printOperation(getPlatform().getKey(), "getFileInfoList", objectName); + ObjectListing listing = ossClient.listObjects(listObjectsRequest); + + // 对象列表 + for (OSSObjectSummary objectSummary : listing.getObjectSummaries()) { + S3ObjectSummary s3ObjectSummary = new S3ObjectSummary(objectSummary.getSize(), objectSummary.getKey(), objectSummary.getETag(), objectSummary.getLastModified(), objectSummary.getBucketName()); + baseOssService.addFileInfoList(objectName, fileInfoList, s3ObjectSummary); + } + // 子目录 + for (String commonPrefix : listing.getCommonPrefixes()) { + fileInfoList.add(baseOssService.newFileInfo(commonPrefix)); + } + } catch (OSSException oe) { + log.error(oe.getMessage(), oe); + } catch (ClientException ce) { + log.error(ce.getMessage(), ce); + } + return fileInfoList; + } + + @Override + public List getAllObjectsWithPrefix(String objectName) { + // 列举所有包含指定前缀的所有文件 + String nextMarker = null; + ObjectListing objectListing; + List fileInfoList = new ArrayList<>(); + try { + do { + ListObjectsRequest listObjectsRequest = new ListObjectsRequest(bucketName).withPrefix(objectName).withMarker(nextMarker); + objectListing = ossClient.listObjects(listObjectsRequest); + if (!objectListing.getObjectSummaries().isEmpty()) { + objectListing.getObjectSummaries().forEach(ossObjectSummary -> fileInfoList.add(new FileInfo(ossObjectSummary.getKey(), ossObjectSummary.getETag(), ossObjectSummary.getSize(), ossObjectSummary.getLastModified()))); + } + nextMarker = objectListing.getNextMarker(); + } while (objectListing.isTruncated()); + } catch (OSSException oe) { + log.error(oe.getMessage(), oe); + } catch (ClientException ce) { + log.error(ce.getMessage(), ce); + } + return fileInfoList; + } + + @Override + public List getFileInfoListCache(String objectName) { + return baseOssService.getFileInfoListCache(objectName); + } + + @Override + public boolean doesBucketExist() { + boolean exist; + exist = this.ossClient.doesBucketExist(bucketName); + if (exist) { + this.ossClient.getBucketStat(bucketName); + } + return exist; + } + + public String getUploadId(String objectName) { + return baseOssService.getUploadId(objectName); + } + + @Override + public String initiateMultipartUpload(String objectName) { + // 创建InitiateMultipartUploadRequest对象。 + InitiateMultipartUploadRequest request = new InitiateMultipartUploadRequest(bucketName, objectName); + // 初始化分片。 + InitiateMultipartUploadResult uploadResult = ossClient.initiateMultipartUpload(request); + // 返回uploadId,它是分片上传事件的唯一标识。您可以根据该uploadId发起相关的操作,例如取消分片上传、查询分片上传等。 + return uploadResult.getUploadId(); + } + + private void getMultipartUploads() { + try { + // 列举分片上传事件。 + MultipartUploadListing multipartUploadListing; + ListMultipartUploadsRequest listMultipartUploadsRequest = new ListMultipartUploadsRequest(bucketName); + // 设置每页列举的分片上传事件个数。 + listMultipartUploadsRequest.setMaxUploads(50); + do { + multipartUploadListing = ossClient.listMultipartUploads(listMultipartUploadsRequest); + for (MultipartUpload multipartUpload : multipartUploadListing.getMultipartUploads()) { + log.info("{}, 碎片文件: objectName: {}, uploadId: {}", getPlatform().getValue(), multipartUpload.getKey(), multipartUpload.getUploadId()); + baseOssService.setUpdateIdCache(multipartUpload.getKey(), multipartUpload.getUploadId()); + } + listMultipartUploadsRequest.setKeyMarker(multipartUploadListing.getNextKeyMarker()); + listMultipartUploadsRequest.setUploadIdMarker(multipartUploadListing.getNextUploadIdMarker()); + } while (multipartUploadListing.isTruncated()); + } catch (OSSException oe) { + log.error(oe.getMessage(), oe); + } catch (ClientException ce) { + log.error(ce.getMessage(), ce); + } + } + + @Override + public boolean doesObjectExist(String objectName) { + return this.ossClient.doesObjectExist(bucketName, objectName); + } + + @Override + public CopyOnWriteArrayList getListParts(String objectName, String uploadId) { + return new CopyOnWriteArrayList<>(getPartETagList(objectName, uploadId).stream().map(PartETag::getPartNumber).toList()); + } + + private List getPartETagList(String objectName, String uploadId) { + List listParts = new ArrayList<>(); + try { + // 列举所有已上传的分片。 + PartListing partListing; + ListPartsRequest listPartsRequest = new ListPartsRequest(bucketName, objectName, uploadId); + do { + partListing = ossClient.listParts(listPartsRequest); + for (PartSummary part : partListing.getParts()) { + listParts.add(new PartETag(part.getPartNumber(), part.getETag())); + } + // 指定List的起始位置,只有分片号大于此参数值的分片会被列出。 + listPartsRequest.setPartNumberMarker(partListing.getNextPartNumberMarker()); + } while (partListing.isTruncated()); + } catch (OSSException oe) { + log.error(oe.getMessage(), oe); + } catch (ClientException ce) { + log.error(ce.getMessage(), ce); + } + return listParts; + } + + @Override + public boolean uploadPart(InputStream inputStream, String objectName, int partSize, int partNumber, String uploadId) { + UploadPartRequest uploadPartRequest = new UploadPartRequest(); + uploadPartRequest.setBucketName(bucketName); + uploadPartRequest.setKey(objectName); + uploadPartRequest.setUploadId(uploadId); + // 设置上传的分片流。 + uploadPartRequest.setInputStream(inputStream); + // 设置分片大小。除了最后一个分片没有大小限制,其他的分片最小为100 KB。 + uploadPartRequest.setPartSize(partSize); + // 设置分片号。每一个上传的分片都有一个分片号,取值范围是1~10000,如果超出此范围,OSS将返回InvalidArgument错误码。 + uploadPartRequest.setPartNumber(partNumber); + // 每个分片不需要按顺序上传,甚至可以在不同客户端上传,OSS会按照分片号排序组成完整的文件。 + try { + this.ossClient.uploadPart(uploadPartRequest); + return true; + } catch (OSSException oe) { + log.error(oe.getMessage(), oe); + } catch (ClientException ce) { + log.error(ce.getMessage(), ce); + } + return false; + } + + @Override + public void abortMultipartUpload(String objectName, String uploadId) { + try { + // 取消分片上传。 + AbortMultipartUploadRequest abortMultipartUploadRequest = new AbortMultipartUploadRequest(bucketName, objectName, uploadId); + ossClient.abortMultipartUpload(abortMultipartUploadRequest); + } catch (OSSException oe) { + log.error(oe.getMessage(), oe); + } catch (ClientException ce) { + log.error(ce.getMessage(), ce); + } + } + + @Override + public void completeMultipartUpload(String objectName, String uploadId, Long totalSize) { + baseOssService.printOperation(getPlatform().getKey(), "completeMultipartUpload", objectName); + List partETags = getPartETagList(objectName, uploadId); + // 创建CompleteMultipartUploadRequest对象。 + // 在执行完成分片上传操作时,需要提供所有有效的partETags。OSS收到提交的partETags后,会逐一验证每个分片的有效性。当所有的数据分片验证通过后,OSS将把这些分片组合成一个完整的文件。 + CompleteMultipartUploadRequest completeMultipartUploadRequest = + new CompleteMultipartUploadRequest(bucketName, objectName, uploadId, partETags); + // 完成分片上传。 + ossClient.completeMultipartUpload(completeMultipartUploadRequest); + baseOssService.onUploadSuccess(objectName, totalSize); + } + + @Override + public FileInfo getThumbnail(String objectName, File file, int width) { + try { + // 将图片缩放为固定宽高100 px。 + String style = "image/resize,m_mfit,w_" + width; + GetObjectRequest request = new GetObjectRequest(bucketName, objectName); + request.setProcess(style); + // 将处理后的图片命名为example-resize.jpg并保存到本地。 + // 如果未指定本地路径只填写了本地文件名称(例如example-resize.jpg),则文件默认保存到示例程序所属项目对应本地路径中。 + ossClient.getObject(request, file); + return baseOssService.getFileInfo(objectName); + } catch (OSSException oe) { + log.error(oe.getMessage(), oe); + } catch (ClientException ce) { + log.error(ce.getMessage(), ce); + } + return null; + } + + @Override + public FileInfo newFolder(String objectName) { + baseOssService.printOperation(getPlatform().getKey(), "mkdir", objectName); + if (!objectName.endsWith("/")) { + objectName = objectName + "/"; + } + try { + String content = ""; + // 创建PutObjectRequest对象。 + PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, objectName, new ByteArrayInputStream(content.getBytes())); + // 上传字符串 + ossClient.putObject(putObjectRequest); + return baseOssService.newFileInfo(objectName); + } catch (OSSException oe) { + log.error(oe.getMessage(), oe); + } catch (ClientException ce) { + log.error(ce.getMessage(), ce); + } + return null; + } + + @Override + public void uploadFile(Path tempFileAbsolutePath, String objectName) { + executeUpload(tempFileAbsolutePath, objectName); + } + + private void executeUpload(Path tempFileAbsolutePath, String objectName) { + try { + if (!PathUtil.exists(tempFileAbsolutePath, false)) { + return; + } + baseOssService.printOperation(getPlatform().getKey(), "upload", objectName); + // 创建PutObjectRequest对象。 + PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, objectName, tempFileAbsolutePath.toFile()); + // 设置该属性可以返回response。如果不设置,则返回的response为空。 + putObjectRequest.setProcess("true"); + // 创建PutObject请求。 + PutObjectResult putObjectResult = this.ossClient.putObject(putObjectRequest); + if (putObjectResult.getResponse().getStatusCode() == 200) { + // 上传成功 + baseOssService.onUploadSuccess(objectName, tempFileAbsolutePath); + } + } catch (OSSException oe) { + log.error(oe.getMessage(), oe); + } catch (ClientException ce) { + log.error(ce.getMessage(), ce); + } + } + + @Override + public void uploadFile(InputStream inputStream, String objectName, long inputStreamLength) { + try { + baseOssService.printOperation(getPlatform().getKey(), "uploadFile inputStream", objectName); + ObjectMetadata objectMetadata = new ObjectMetadata(); + objectMetadata.setContentLength(inputStreamLength); + // 创建PutObjectRequest对象。 + PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, objectName, inputStream, objectMetadata ); + // 创建PutObject请求。 + ossClient.putObject(putObjectRequest); + baseOssService.onUploadSuccess(objectName, inputStreamLength); + } catch (OSSException oe) { + log.error(oe.getMessage(), oe); + } catch (ClientException ce) { + log.error(ce.getMessage(), ce); + } + } + + public List copyObject(String sourceKey, String destinationKey) { + return copyObject(bucketName, sourceKey, bucketName, destinationKey); + } + + public List copyObject(String sourceBucketName, String sourceKey, String destinationBucketName, String destinationKey) { + baseOssService.setObjectNameLock(sourceBucketName); + baseOssService.setObjectNameLock(destinationBucketName); + List copiedList = new ArrayList<>(); + try { + if (sourceKey.endsWith("/")) { + // 复制文件夹 + // 列举所有包含指定前缀的文件并copy + String nextMarker = null; + ObjectListing objectListing; + do { + ListObjectsRequest listObjectsRequest = new ListObjectsRequest(sourceBucketName).withPrefix(sourceKey).withMarker(nextMarker); + objectListing = ossClient.listObjects(listObjectsRequest); + if (!objectListing.getObjectSummaries().isEmpty()) { + objectListing.getObjectSummaries().parallelStream().forEach(ossObjectSummary -> { + String destKey = destinationKey + ossObjectSummary.getKey().substring(sourceKey.length()); + copyObjectFile(ossObjectSummary.getBucketName(), ossObjectSummary.getKey(), destinationBucketName, destKey); + copiedList.add(destKey); + }); + } + nextMarker = objectListing.getNextMarker(); + } while (objectListing.isTruncated()); + } else { + // 复制文件 + copyObjectFile(sourceBucketName, sourceKey, destinationBucketName, destinationKey); + copiedList.add(destinationKey); + } + return copiedList; + } catch (OSSException oe) { + log.error(oe.getMessage(), oe); + } catch (ClientException ce) { + log.error(ce.getMessage(), ce); + } finally { + baseOssService.removeObjectNameLock(sourceBucketName); + baseOssService.removeObjectNameLock(destinationBucketName); + } + return copiedList; + } + + private void copyObjectFile(String sourceBucketName, String sourceKey, String destinationBucketName, String destinationKey) { + baseOssService.printOperation(getPlatform().getKey(), "copyObject start" + "destinationKey: " + destinationKey, "sourceKey:" + sourceKey); + ObjectMetadata objectMetadata = ossClient.getObjectMetadata(sourceBucketName, sourceKey); + // 获取被拷贝文件的大小。 + long contentLength = objectMetadata.getContentLength(); + + if (contentLength < 1024 * 1024 * 10L) { + // 小文件执行普通拷贝 + ossClient.copyObject(sourceBucketName, sourceKey, destinationBucketName, destinationKey); + } + + // 设置分片大小为10 MB。单位为字节。 + long partSize = 1024 * 1024 * 10L; + + // 计算分片总数。 + int partCount = (int) (contentLength / partSize); + if (contentLength % partSize != 0) { + partCount++; + } + + // 初始化拷贝任务。可以通过InitiateMultipartUploadRequest指定目标文件元信息。 + InitiateMultipartUploadRequest initiateMultipartUploadRequest = new InitiateMultipartUploadRequest(destinationBucketName, destinationKey); + InitiateMultipartUploadResult initiateMultipartUploadResult = ossClient.initiateMultipartUpload(initiateMultipartUploadRequest); + String uploadId = initiateMultipartUploadResult.getUploadId(); + + // 分片拷贝。 + List partETags = new ArrayList<>(); + for (int i = 0; i < partCount; i++) { + // 计算每个分片的大小。 + long skipBytes = partSize * i; + long size = Math.min(partSize, contentLength - skipBytes); + // 创建UploadPartCopyRequest。可以通过UploadPartCopyRequest指定限定条件。 + UploadPartCopyRequest uploadPartCopyRequest = new UploadPartCopyRequest(sourceBucketName, sourceKey, destinationBucketName, destinationKey); + uploadPartCopyRequest.setUploadId(uploadId); + uploadPartCopyRequest.setPartSize(size); + uploadPartCopyRequest.setBeginIndex(skipBytes); + uploadPartCopyRequest.setPartNumber(i + 1); + UploadPartCopyResult uploadPartCopyResult = ossClient.uploadPartCopy(uploadPartCopyRequest); + // 将返回的分片ETag保存到partETags中。 + partETags.add(uploadPartCopyResult.getPartETag()); + } + // 提交分片拷贝任务。 + CompleteMultipartUploadRequest completeMultipartUploadRequest = new CompleteMultipartUploadRequest( + destinationBucketName, destinationKey, uploadId, partETags); + ossClient.completeMultipartUpload(completeMultipartUploadRequest); + baseOssService.printOperation(getPlatform().getKey(), "copyObject complete" + "destinationKey: " + destinationKey, "sourceKey:" + sourceKey); + } + + @Override + public URL getPresignedObjectUrl(String objectName, int expiryTime) { + try { + Date expirationDate = new Date(System.currentTimeMillis() + expiryTime * 1000L); + // 生成以GET方法访问的签名URL,访客可以直接通过浏览器访问相关内容。 + return ossClient.generatePresignedUrl(bucketName, objectName, expirationDate); + } catch (OSSException oe) { + log.error(oe.getMessage(), oe); + } catch (ClientException ce) { + log.error(ce.getMessage(), ce); + } + return null; + } + + @Override + public void clearCache(String objectName) { + baseOssService.clearCache(objectName); + } + + @Override + public void lock(String objectName) { + baseOssService.setObjectNameLock(objectName); + } + + @Override + public void unlock(String objectName) { + baseOssService.removeObjectNameLock(objectName); + } + + @Override + public void close() { + baseOssService.closePrint(); + if (this.ossClient != null) { + this.ossClient.shutdown(); + } + if (scheduledThreadPoolExecutor != null) { + scheduledThreadPoolExecutor.shutdown(); + } + } +} diff --git a/src/main/java/com/jmal/clouddisk/oss/minio/MinIOObject.java b/src/main/java/com/jmal/clouddisk/oss/minio/MinIOObject.java new file mode 100644 index 0000000..b6c610c --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/oss/minio/MinIOObject.java @@ -0,0 +1,72 @@ +package com.jmal.clouddisk.oss.minio; + +import com.jmal.clouddisk.oss.AbstractOssObject; +import com.jmal.clouddisk.oss.FileInfo; +import com.jmal.clouddisk.oss.IOssService; +import io.minio.GetObjectResponse; +import io.minio.StatObjectResponse; + +import java.io.FileNotFoundException; +import java.io.IOException; +import java.io.InputStream; +import java.util.Date; + +/** + * @author jmal + * @Description MinIOOssObject + * @date 2023/4/23 16:33 + */ +public class MinIOObject extends AbstractOssObject { + + private final StatObjectResponse statObjectResponse; + private final GetObjectResponse getObjectResponse; + + private final IOssService ossService; + + public MinIOObject(StatObjectResponse statObjectResponse, GetObjectResponse getObjectResponse, IOssService ossService) { + this.statObjectResponse = statObjectResponse; + this.getObjectResponse = getObjectResponse; + this.ossService = ossService; + } + + @Override + public InputStream getInputStream() throws FileNotFoundException { + return getObjectResponse; + } + + @Override + public void closeObject() throws IOException { + this.getObjectResponse.close(); + } + + @Override + public IOssService getOssService() { + return this.ossService; + } + + @Override + public String getKey() { + return this.statObjectResponse.object(); + } + + @Override + public FileInfo getFileInfo() { + FileInfo fileInfo = new FileInfo(); + fileInfo.setSize(this.statObjectResponse.size()); + fileInfo.setKey(this.statObjectResponse.object()); + fileInfo.setLastModified(Date.from(this.statObjectResponse.lastModified().toInstant())); + fileInfo.setETag(this.statObjectResponse.etag()); + fileInfo.setBucketName(this.statObjectResponse.bucket()); + return fileInfo; + } + + @Override + public long getContentLength() { + return this.statObjectResponse.size(); + } + + @Override + public void close() throws IOException { + closeObject(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/oss/minio/MinIOService.java b/src/main/java/com/jmal/clouddisk/oss/minio/MinIOService.java new file mode 100644 index 0000000..52613d5 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/oss/minio/MinIOService.java @@ -0,0 +1,537 @@ +package com.jmal.clouddisk.oss.minio; + +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.io.file.PathUtil; +import cn.hutool.core.thread.ThreadUtil; +import cn.hutool.core.util.BooleanUtil; +import com.google.common.collect.HashMultimap; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.interceptor.FileInterceptor; +import com.jmal.clouddisk.oss.*; +import com.jmal.clouddisk.oss.web.model.OssConfigDTO; +import io.minio.*; +import io.minio.errors.*; +import io.minio.http.Method; +import io.minio.messages.DeleteError; +import io.minio.messages.DeleteObject; +import io.minio.messages.Item; +import io.minio.messages.Part; +import lombok.extern.slf4j.Slf4j; +import org.jetbrains.annotations.NotNull; + +import java.io.*; +import java.net.URL; +import java.nio.file.Path; +import java.security.InvalidKeyException; +import java.security.NoSuchAlgorithmException; +import java.util.*; +import java.util.concurrent.CopyOnWriteArrayList; +import java.util.concurrent.ExecutionException; +import java.util.concurrent.ScheduledThreadPoolExecutor; +import java.util.stream.Collectors; + +/** + * @author jmal + * @Description MinIOService + * @date 2023/4/23 16:36 + */ +@Slf4j +public class MinIOService implements IOssService { + + private final String bucketName; + + private final MinIoClient minIoClient; + + private final BaseOssService baseOssService; + + private final ScheduledThreadPoolExecutor scheduledThreadPoolExecutor; + + public MinIOService(FileProperties fileProperties, OssConfigDTO ossConfigDTO) { + String endpoint = ossConfigDTO.getEndpoint(); + String region = ossConfigDTO.getRegion(); + String accessKeyId = ossConfigDTO.getAccessKey(); + String accessKeySecret = ossConfigDTO.getSecretKey(); + this.bucketName = ossConfigDTO.getBucket(); + // 创建ossClient实例。 + this.minIoClient = new MinIoClient(MinioAsyncClient.builder() + .endpoint(endpoint) + .region(region) + .credentials(accessKeyId, accessKeySecret) + .build()); + scheduledThreadPoolExecutor = ThreadUtil.createScheduledExecutor(1); + this.baseOssService = new BaseOssService(this, bucketName, fileProperties, scheduledThreadPoolExecutor, ossConfigDTO); + ThreadUtil.execute(this::getMultipartUploads); + } + + @Override + public PlatformOSS getPlatform() { + return PlatformOSS.MINIO; + } + + @Override + public FileInfo getFileInfo(String objectName) { + return baseOssService.getFileInfo(objectName); + } + + @Override + public boolean delete(String objectName) { + return baseOssService.delete(objectName); + } + + @Override + public boolean mkdir(String objectName) { + return baseOssService.mkdir(objectName); + } + + @Override + public boolean write(InputStream inputStream, String ossPath, String objectName) { + return baseOssService.writeTempFile(inputStream, ossPath, objectName); + } + + @Override + public String[] list(String objectName) { + return baseOssService.getFileNameList(objectName).toArray(new String[0]); + } + + @Override + public AbstractOssObject getObjectCache(String objectName) { + return baseOssService.getObject(objectName); + } + + @Override + public AbstractOssObject getAbstractOssObject(String objectName) { + return getAbstractOssObject(objectName, null, null); + } + + @Override + public AbstractOssObject getAbstractOssObject(String objectName, Long rangeStart, Long rangeEnd) { + MinIOObject ossObject = null; + try { + StatObjectResponse statObjectResponse = this.minIoClient.statObject(bucketName, objectName); + GetObjectResponse getObjectResponse = this.minIoClient.getObject(bucketName, objectName, rangeStart, rangeEnd); + ossObject = new MinIOObject(statObjectResponse, getObjectResponse, this); + } catch (Exception e) { + log.error(e.getMessage()); + } + return ossObject; + } + + @Override + public boolean deleteObject(String objectName) { + try { + baseOssService.printOperation(getPlatform().getKey(), "deleteObject", objectName); + doDeleteObject(objectName); + } catch (Exception e) { + log.error(e.getMessage(), e); + return false; + } + return true; + } + + private void doDeleteObject(String objectName) throws InsufficientDataException, IOException, NoSuchAlgorithmException, InvalidKeyException, XmlParserException, InternalException, ServerException, ErrorResponseException, InvalidResponseException { + this.minIoClient.removeObject(bucketName, objectName); + } + + @Override + public boolean deleteDir(String objectName) { + boolean deleted = true; + try { + baseOssService.printOperation(getPlatform().getKey(), "deleteDir", objectName); + ListObjectsArgs listObjectsArgs = ListObjectsArgs.builder().bucket(bucketName).prefix(objectName).recursive(true).includeVersions(true).build(); + Iterable> results1 = this.minIoClient.listObjects(listObjectsArgs); + List objects = new LinkedList<>(); + for (Result result : results1) { + Item item = result.get(); + objects.add(new DeleteObject(item.objectName(), item.versionId())); + } + RemoveObjectsArgs removeObjectsArgs = RemoveObjectsArgs.builder().bucket(bucketName).objects(objects).build(); + Iterable> results = this.minIoClient.removeObjects(removeObjectsArgs); + for (Result result : results) { + DeleteError error = result.get(); + deleted = false; + log.error("Error in deleting object {}; {}", error.objectName(), error.message()); + } + } catch (Exception e) { + deleted = false; + log.error(e.getMessage(), e); + } + return deleted; + } + + @Override + public List getFileInfoListCache(String objectName) { + return baseOssService.getFileInfoListCache(objectName); + } + + @Override + public List getFileInfoList(String objectName) { + List fileInfoList = new ArrayList<>(); + try { + ListObjectsArgs listObjectsArgs = ListObjectsArgs.builder().bucket(bucketName).prefix(objectName).delimiter("/").recursive(false).includeVersions(false).build(); + Iterable> results = this.minIoClient.listObjects(listObjectsArgs); + for (Result result : results) { + Item item = result.get(); + if (item == null) { + continue; + } + Date lastModified = null; + if (BooleanUtil.isFalse(item.isDir())) { + lastModified = Date.from(item.lastModified().toInstant()); + } + S3ObjectSummary s3ObjectSummary = new S3ObjectSummary(item.size(), item.objectName(), item.etag(), lastModified, bucketName); + baseOssService.addFileInfoList(objectName, fileInfoList, s3ObjectSummary); + if (item.isDir()) { + String key = item.objectName(); + if (fileInfoList.stream().noneMatch(fileInfo -> key.equals(fileInfo.getKey()))) { + fileInfoList.add(baseOssService.newFileInfo(key)); + } + } + fileInfoList = setLastModified(fileInfoList); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } + return fileInfoList; + } + + @NotNull + private List setLastModified(List fileInfoList) { + fileInfoList = fileInfoList.parallelStream().peek(fileInfo -> { + if (fileInfo.getLastModified() == null) { + Date date = new Date(0); + try { + date = getLastModified(fileInfo.getKey()); + } catch (Exception e) { + log.warn("getLastModified Failed: {}, key: {}", e.getMessage(), fileInfo.getKey()); + } + fileInfo.setLastModified(date); + } + }).collect(Collectors.toList()); + return fileInfoList; + } + + @Override + public List getAllObjectsWithPrefix(String objectName) { + List fileInfoList = new ArrayList<>(); + try { + ListObjectsArgs listObjectsArgs = ListObjectsArgs.builder().bucket(bucketName).prefix(objectName).recursive(true).includeVersions(false).build(); + Iterable> results = this.minIoClient.listObjects(listObjectsArgs); + for (Result result : results) { + Item item = result.get(); + if (item == null) { + continue; + } + Date lastModified = Date.from(item.lastModified().toInstant()); + S3ObjectSummary s3ObjectSummary = new S3ObjectSummary(item.size(), item.objectName(), item.etag(), lastModified, bucketName); + fileInfoList.add(baseOssService.getFileInfo(s3ObjectSummary)); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } + return fileInfoList; + } + + private Date getLastModified(String objectName) throws ServerException, InsufficientDataException, ErrorResponseException, IOException, NoSuchAlgorithmException, InvalidKeyException, InvalidResponseException, XmlParserException, InternalException { + StatObjectResponse statObjectResponse = this.minIoClient.statObject(bucketName, objectName); + return Date.from(statObjectResponse.lastModified().toInstant()); + } + + @Override + public FileInfo newFolder(String objectName) { + baseOssService.printOperation(getPlatform().getKey(), "mkdir", objectName); + if (!objectName.endsWith("/")) { + objectName = objectName + "/"; + } + try { + // 上传字符串 + this.minIoClient.putObject2( + PutObjectArgs.builder().bucket(bucketName).object(objectName).stream( + new ByteArrayInputStream(new byte[]{}), 0, -1) + .build()); + return baseOssService.newFileInfo(objectName); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + return null; + } + + @Override + public void uploadFile(Path tempFileAbsolutePath, String objectName) { + try { + if (!PathUtil.exists(tempFileAbsolutePath, false)) { + return; + } + File file = tempFileAbsolutePath.toFile(); + baseOssService.printOperation(getPlatform().getKey(), "upload", objectName); + ObjectWriteResponse objectWriteResponse; + try (InputStream inputStream = new FileInputStream(file)) { + PutObjectArgs putObjectArgs = getPutObjectArgs(inputStream, objectName, tempFileAbsolutePath.toFile().length()); + objectWriteResponse = this.minIoClient.putObject2(putObjectArgs); + } + if (objectWriteResponse != null && objectWriteResponse.etag() != null) { + baseOssService.onUploadSuccess(objectName, tempFileAbsolutePath); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } + } + + @Override + public void uploadFile(InputStream inputStream, String objectName, long inputStreamLength) { + try { + baseOssService.printOperation(getPlatform().getKey(), "uploadFile inputStream", objectName); + ObjectWriteResponse objectWriteResponse; + PutObjectArgs putObjectArgs = getPutObjectArgs(inputStream, objectName, inputStreamLength); + objectWriteResponse = this.minIoClient.putObject2(putObjectArgs); + if (objectWriteResponse != null && objectWriteResponse.etag() != null) { + // 上传成功 + baseOssService.onUploadSuccess(objectName, inputStreamLength); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } + } + + private PutObjectArgs getPutObjectArgs(InputStream inputStream, String objectName, long inputStreamLength) { + String contentType = baseOssService.getContentType(objectName); + PutObjectArgs putObjectArgs; + if (inputStreamLength >= 5 * 1024 * 1024) { + putObjectArgs = PutObjectArgs.builder().bucket(bucketName).object(objectName).stream( + inputStream, -1, inputStreamLength) + .contentType(contentType) + .build(); + } else { + putObjectArgs = PutObjectArgs.builder().bucket(bucketName).object(objectName).stream( + inputStream, inputStreamLength, -1) + .contentType(contentType) + .build(); + } + return putObjectArgs; + } + + @Override + public boolean doesBucketExist() { + boolean exist = false; + try { + exist = this.minIoClient.bucketExists(bucketName); + }catch (Exception e) { + log.error(e.getMessage(), e); + } + return exist; + } + + @Override + public boolean doesObjectExist(String objectName) { + try { + StatObjectResponse statObjectResponse = this.minIoClient.statObject(bucketName, objectName); + if (statObjectResponse == null) { + return false; + } + if (!statObjectResponse.deleteMarker()) { + return true; + } + } catch (Exception e) { + // ignore + } + return false; + } + + @Override + public String getUploadId(String objectName) { + return baseOssService.getUploadId(objectName); + } + + @Override + public String initiateMultipartUpload(String objectName) { + String uploadId = null; + try { + String contentType = baseOssService.getContentType(objectName); + HashMultimap headers = HashMultimap.create(); + headers.put("Content-Type", contentType); + uploadId = this.minIoClient.initMultiPartUpload(bucketName, null, objectName, headers); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + return uploadId; + } + + @Override + public CopyOnWriteArrayList getListParts(String objectName, String uploadId) { + return new CopyOnWriteArrayList<>(getPartsList(objectName, uploadId).stream().map(Part::partNumber).toList()); + } + + private List getPartsList(String objectName, String uploadId) { + List listParts = new ArrayList<>(); + try { + int maxParts = 1000; + int partNumberMarker = 0; + boolean isTruncated; + + do { + ListPartsResponse partResult = this.minIoClient.listMultipart(bucketName, null, objectName, maxParts, partNumberMarker, uploadId); + List currentParts = partResult.result().partList(); + + if (currentParts.isEmpty()) { + return Collections.emptyList(); + } + + listParts.addAll(currentParts); + isTruncated = partResult.result().isTruncated(); + + if (isTruncated) { + partNumberMarker = currentParts.get(currentParts.size() - 1).partNumber(); + } + } while (isTruncated); + + } catch (Exception e) { + log.error("Error listing parts for object: {}, uploadId: {}. Exception: {}", objectName, uploadId, e.getMessage(), e); + return Collections.emptyList(); + } + return listParts; + } + + + + + private void getMultipartUploads() { + } + + @Override + public boolean uploadPart(InputStream inputStream, String objectName, int partSize, int partNumber, String uploadId) { + try { + UploadPartResponse uploadPartResponse = this.minIoClient.uploadPart(bucketName, null, objectName, inputStream, partSize, uploadId, partNumber); + if (uploadPartResponse != null && uploadId.equals(uploadPartResponse.uploadId())) { + return true; + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } + return false; + } + + @Override + public void abortMultipartUpload(String objectName, String uploadId) { + try { + this.minIoClient.abortMultipartUpload(bucketName, null, objectName, uploadId); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + } + + @Override + public void completeMultipartUpload(String objectName, String uploadId, Long fileTotalSize) { + try { + List partList = getPartsList(objectName, uploadId); + Part[] parts = partList.toArray(new Part[0]); + this.minIoClient.mergeMultipartUpload(bucketName, null, objectName, uploadId, parts); + baseOssService.onUploadSuccess(objectName, fileTotalSize); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + } + + @Override + public FileInfo getThumbnail(String objectName, File file, int width) { + try { + this.minIoClient.downloadObject(bucketName, objectName, file); + byte[] bytes = FileInterceptor.imageCrop(file, "80", String.valueOf(width), null); + FileUtil.writeBytes(bytes, file); + return baseOssService.getFileInfo(objectName); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + return null; + } + + @Override + public List copyObject(String sourceKey, String destinationKey) { + return copyObject(bucketName, sourceKey, bucketName, destinationKey); + } + + @Override + public List copyObject(String sourceBucketName, String sourceKey, String destinationBucketName, String destinationKey) { + baseOssService.setObjectNameLock(sourceBucketName); + baseOssService.setObjectNameLock(destinationBucketName); + List copiedList = new ArrayList<>(); + try { + if (sourceKey.endsWith("/")) { + // 复制文件夹 + ListObjectsArgs listObjectsArgs = ListObjectsArgs.builder().bucket(sourceBucketName).prefix(sourceKey).recursive(true).build(); + Iterable> results1 = this.minIoClient.listObjects(listObjectsArgs); + for (Result result : results1) { + Item item = result.get(); + String destKey = destinationKey + item.objectName().substring(sourceKey.length()); + copyObjectFile(sourceBucketName, item.objectName(), destinationBucketName, destKey); + copiedList.add(destKey); + } + } else { + // 复制文件 + copyObjectFile(sourceBucketName, sourceKey, destinationBucketName, destinationKey); + copiedList.add(destinationKey); + } + return copiedList; + } catch (InterruptedException e) { + log.error(e.getMessage(), e); + Thread.currentThread().interrupt(); + } catch (Exception e) { + log.error(e.getMessage(), e); + } finally { + baseOssService.removeObjectNameLock(sourceBucketName); + baseOssService.removeObjectNameLock(destinationBucketName); + } + return copiedList; + } + + private void copyObjectFile(String sourceBucketName, String sourceKey, String destinationBucketName, String destinationKey) throws InsufficientDataException, IOException, NoSuchAlgorithmException, InvalidKeyException, XmlParserException, InternalException, ExecutionException, InterruptedException { + baseOssService.printOperation(getPlatform().getKey(), "copyObject start" + "destinationKey: " + destinationKey, "sourceKey:" + sourceKey); + this.minIoClient.copyObject( + CopyObjectArgs.builder() + .bucket(destinationBucketName) + .object(destinationKey) + .source(CopySource.builder() + .bucket(sourceBucketName) + .object(sourceKey) + .build()).build()).get(); + baseOssService.printOperation(getPlatform().getKey(), "copyObject complete" + "destinationKey: " + destinationKey, "sourceKey:" + sourceKey); + } + + @Override + public URL getPresignedObjectUrl(String objectName, int expiryTime) { + try { + String url = this.minIoClient.getPresignedObjectUrl( + GetPresignedObjectUrlArgs.builder() + .method(Method.GET) + .bucket(bucketName) + .object(objectName) + .expiry(expiryTime) + .build()); + return new URL(url); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + return null; + } + + @Override + public void lock(String objectName) { + baseOssService.setObjectNameLock(objectName); + } + + @Override + public void unlock(String objectName) { + baseOssService.removeObjectNameLock(objectName); + } + + @Override + public void clearCache(String objectName) { + baseOssService.clearCache(objectName); + } + + @Override + public void close() { + baseOssService.closePrint(); + if (scheduledThreadPoolExecutor != null) { + scheduledThreadPoolExecutor.shutdown(); + } + } +} diff --git a/src/main/java/com/jmal/clouddisk/oss/minio/MinIoClient.java b/src/main/java/com/jmal/clouddisk/oss/minio/MinIoClient.java new file mode 100644 index 0000000..c7ba129 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/oss/minio/MinIoClient.java @@ -0,0 +1,206 @@ +package com.jmal.clouddisk.oss.minio; + +import com.google.common.collect.Multimap; +import io.minio.*; +import io.minio.errors.*; +import io.minio.messages.Part; +import lombok.extern.slf4j.Slf4j; + +import java.io.File; +import java.io.IOException; +import java.security.InvalidKeyException; +import java.security.NoSuchAlgorithmException; +import java.util.concurrent.CompletableFuture; +import java.util.concurrent.ExecutionException; + +/** + * @author jmal + * @Description MinIoClient + * @date 2023/4/24 14:24 + */ +@Slf4j +public class MinIoClient extends MinioAsyncClient { + protected MinIoClient(MinioAsyncClient client) { + super(client); + } + + public boolean bucketExists(String bucketName) + throws ErrorResponseException, InsufficientDataException, InternalException, + InvalidKeyException, InvalidResponseException, IOException, NoSuchAlgorithmException, + ServerException, XmlParserException { + try { + BucketExistsArgs bucketExistsArgs = BucketExistsArgs.builder().bucket(bucketName).build(); + return super.bucketExists(bucketExistsArgs).get(); + } catch (InterruptedException e) { + log.error(e.getMessage(), e); + Thread.currentThread().interrupt(); + } catch (ExecutionException e) { + throwEncapsulatedException(e); + } + return false; + } + + public StatObjectResponse statObject(String bucketName, String objectName) + throws ErrorResponseException, InsufficientDataException, InternalException, + InvalidKeyException, InvalidResponseException, IOException, NoSuchAlgorithmException, + ServerException, XmlParserException { + try { + StatObjectArgs args = StatObjectArgs.builder().bucket(bucketName).object(objectName).build(); + return super.statObject(args).get(); + } catch (InterruptedException e) { + log.error(e.getMessage(), e); + Thread.currentThread().interrupt(); + } catch (ExecutionException e) { + throwEncapsulatedException(e); + } + return null; + } + + public GetObjectResponse getObject(String bucketName, String objectName, Long rangeStart, Long rangeEnd) + throws ErrorResponseException, InsufficientDataException, InternalException, + InvalidKeyException, InvalidResponseException, IOException, NoSuchAlgorithmException, + ServerException, XmlParserException { + try { + GetObjectArgs objectArgs; + if (rangeStart != null && rangeEnd != null) { + long contentLength = rangeEnd - rangeStart + 1; + objectArgs = GetObjectArgs + .builder() + .bucket(bucketName) + .object(objectName) + .offset(rangeStart) + .length(contentLength) + .build(); + } else { + objectArgs = GetObjectArgs + .builder() + .bucket(bucketName) + .object(objectName) + .build(); + } + return super.getObject(objectArgs).get(); + } catch (InterruptedException e) { + log.error(e.getMessage(), e); + Thread.currentThread().interrupt(); + } catch (ExecutionException e) { + throwEncapsulatedException(e); + } + return null; + } + + public void downloadObject(String bucketName, String objectName, File file) + throws ErrorResponseException, InsufficientDataException, InternalException, + InvalidKeyException, InvalidResponseException, IOException, NoSuchAlgorithmException, + ServerException, XmlParserException { + try { + DownloadObjectArgs downloadObjectArgs = DownloadObjectArgs.builder().bucket(bucketName).object(objectName).filename(file.getAbsolutePath()).build(); + super.downloadObject(downloadObjectArgs).get(); + } catch (InterruptedException e) { + log.error(e.getMessage(), e); + Thread.currentThread().interrupt(); + } catch (ExecutionException e) { + throwEncapsulatedException(e); + } + } + + public void removeObject(String bucketName, String objectName) + throws ErrorResponseException, InsufficientDataException, InternalException, + InvalidKeyException, InvalidResponseException, IOException, NoSuchAlgorithmException, + ServerException, XmlParserException { + try { + RemoveObjectArgs removeObjectArgs = RemoveObjectArgs.builder().bucket(bucketName).object(objectName).build(); + super.removeObject(removeObjectArgs).get(); + } catch (InterruptedException e) { + log.error(e.getMessage(), e); + Thread.currentThread().interrupt(); + } catch (ExecutionException e) { + throwEncapsulatedException(e); + } + } + + public ObjectWriteResponse putObject2(PutObjectArgs args) + throws ErrorResponseException, InsufficientDataException, InternalException, + InvalidKeyException, InvalidResponseException, IOException, NoSuchAlgorithmException, + ServerException, XmlParserException { + try { + return super.putObject(args).get(); + } catch (InterruptedException e) { + log.error(e.getMessage(), e); + Thread.currentThread().interrupt(); + } catch (ExecutionException e) { + throwEncapsulatedException(e); + } + return null; + } + + public String initMultiPartUpload(String bucket, String region, String object, Multimap headers) throws InsufficientDataException, NoSuchAlgorithmException, IOException, InvalidKeyException, XmlParserException, InternalException, ServerException, ErrorResponseException, InvalidResponseException { + try { + CompletableFuture response = super.createMultipartUploadAsync(bucket, region, object, headers, null); + return response.get().result().uploadId(); + } catch (InterruptedException e) { + log.error(e.getMessage(), e); + Thread.currentThread().interrupt(); + } catch (ExecutionException e) { + throwEncapsulatedException(e); + } + return null; + } + + public void mergeMultipartUpload(String bucketName, String region, String objectName, String uploadId, Part[] parts) throws InsufficientDataException, IOException, NoSuchAlgorithmException, InvalidKeyException, XmlParserException, InternalException, ServerException, ErrorResponseException, InvalidResponseException { + try { + this.completeMultipartUploadAsync( + bucketName, + region, + objectName, + uploadId, + parts, + null, + null).get(); + } catch (InterruptedException e) { + log.error(e.getMessage(), e); + Thread.currentThread().interrupt(); + } catch (ExecutionException e) { + throwEncapsulatedException(e); + } + } + + public ListPartsResponse listMultipart(String bucketName, String region, String objectName, Integer maxParts, Integer partNumberMarker, String uploadId) throws ServerException, InsufficientDataException, ErrorResponseException, IOException, NoSuchAlgorithmException, InvalidKeyException, InvalidResponseException, XmlParserException, InternalException { + try { + CompletableFuture listPartsResponse = listPartsAsync(bucketName, region, objectName, maxParts, partNumberMarker, uploadId, null, null); + return listPartsResponse.get(); + } catch (InterruptedException e) { + log.error(e.getMessage(), e); + Thread.currentThread().interrupt(); + } catch (ExecutionException e) { + throwEncapsulatedException(e); + } + return null; + } + + public void abortMultipartUpload(String bucketName, String region, String objectName, String uploadId) throws ServerException, InsufficientDataException, ErrorResponseException, IOException, NoSuchAlgorithmException, InvalidKeyException, InvalidResponseException, XmlParserException, InternalException { + try { + CompletableFuture abortMultipartUploadAsync = abortMultipartUploadAsync(bucketName, region, objectName, uploadId, null, null); + abortMultipartUploadAsync.get(); + } catch (InterruptedException e) { + log.error(e.getMessage(), e); + Thread.currentThread().interrupt(); + } catch (ExecutionException e) { + throwEncapsulatedException(e); + } + } + + public UploadPartResponse uploadPart(String bucketName, String region, String objectName, Object data, long length, String uploadId, int partNumber) throws ServerException, InsufficientDataException, ErrorResponseException, IOException, NoSuchAlgorithmException, InvalidKeyException, InvalidResponseException, XmlParserException, InternalException { + try { + CompletableFuture uploadPartResponse = uploadPartAsync(bucketName, region, objectName, data, length, uploadId, partNumber, null, null); + return uploadPartResponse.get(); + } catch (InterruptedException e) { + log.error(e.getMessage(), e); + Thread.currentThread().interrupt(); + } catch (ExecutionException e) { + throwEncapsulatedException(e); + } + return null; + } + + +} diff --git a/src/main/java/com/jmal/clouddisk/oss/tencent/TencentOssObject.java b/src/main/java/com/jmal/clouddisk/oss/tencent/TencentOssObject.java new file mode 100644 index 0000000..aeb528d --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/oss/tencent/TencentOssObject.java @@ -0,0 +1,67 @@ +package com.jmal.clouddisk.oss.tencent; + +import com.jmal.clouddisk.oss.AbstractOssObject; +import com.jmal.clouddisk.oss.FileInfo; +import com.jmal.clouddisk.oss.IOssService; +import com.qcloud.cos.model.COSObject; + +import java.io.IOException; +import java.io.InputStream; + +/** + * @author jmal + * @Description TencentOssObject + * @date 2023/3/29 12:06 + */ +public class TencentOssObject extends AbstractOssObject { + + private final COSObject cosObject; + + private final IOssService ossService; + + public TencentOssObject(COSObject cosObject, IOssService ossService) { + this.cosObject = cosObject; + this.ossService = ossService; + } + + @Override + public InputStream getInputStream() { + return this.cosObject.getObjectContent(); + } + + @Override + public void closeObject() throws IOException { + this.cosObject.close(); + } + + @Override + public String getKey() { + return this.cosObject.getKey(); + } + + @Override + public IOssService getOssService() { + return this.ossService; + } + + @Override + public FileInfo getFileInfo() { + FileInfo fileInfo = new FileInfo(); + fileInfo.setSize(this.cosObject.getObjectMetadata().getContentLength()); + fileInfo.setKey(this.cosObject.getKey()); + fileInfo.setLastModified(this.cosObject.getObjectMetadata().getLastModified()); + fileInfo.setETag(this.cosObject.getObjectMetadata().getETag()); + fileInfo.setBucketName(this.cosObject.getBucketName()); + return fileInfo; + } + + @Override + public long getContentLength() { + return this.cosObject.getObjectMetadata().getContentLength(); + } + + @Override + public void close() throws IOException { + closeObject(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/oss/tencent/TencentOssService.java b/src/main/java/com/jmal/clouddisk/oss/tencent/TencentOssService.java new file mode 100644 index 0000000..d8bfbf5 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/oss/tencent/TencentOssService.java @@ -0,0 +1,563 @@ +package com.jmal.clouddisk.oss.tencent; + +import cn.hutool.core.io.file.PathUtil; +import cn.hutool.core.thread.ThreadUtil; +import com.aliyun.oss.ClientException; +import com.aliyun.oss.OSSException; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.oss.*; +import com.jmal.clouddisk.oss.web.model.OssConfigDTO; +import com.qcloud.cos.COSClient; +import com.qcloud.cos.ClientConfig; +import com.qcloud.cos.auth.BasicCOSCredentials; +import com.qcloud.cos.auth.COSCredentials; +import com.qcloud.cos.exception.CosClientException; +import com.qcloud.cos.http.HttpMethodName; +import com.qcloud.cos.http.HttpProtocol; +import com.qcloud.cos.model.*; +import com.qcloud.cos.region.Region; +import com.qcloud.cos.transfer.Copy; +import com.qcloud.cos.transfer.TransferManager; +import com.qcloud.cos.transfer.TransferManagerConfiguration; +import lombok.extern.slf4j.Slf4j; + +import java.io.ByteArrayInputStream; +import java.io.File; +import java.io.InputStream; +import java.net.URL; +import java.nio.file.Path; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.concurrent.CopyOnWriteArrayList; +import java.util.concurrent.ScheduledThreadPoolExecutor; + +@Slf4j +public class TencentOssService implements IOssService { + + private final String bucketName; + + private final COSClient cosClient; + + private final BaseOssService baseOssService; + + private final Region region; + + private final TransferManager transferManager; + + private final ScheduledThreadPoolExecutor scheduledThreadPoolExecutor; + + public TencentOssService(FileProperties fileProperties, OssConfigDTO ossConfigDTO) { + // 创建COSClient实例。 + String accessKeyId = ossConfigDTO.getAccessKey(); + String accessKeySecret = ossConfigDTO.getSecretKey(); + this.region = new Region(ossConfigDTO.getRegion()); + this.bucketName = ossConfigDTO.getBucket(); + COSCredentials cred = new BasicCOSCredentials(accessKeyId, accessKeySecret); + ClientConfig clientConfig = new ClientConfig(region); + clientConfig.setHttpProtocol(HttpProtocol.https); + this.cosClient = new COSClient(cred, clientConfig); + scheduledThreadPoolExecutor = ThreadUtil.createScheduledExecutor(1); + this.baseOssService = new BaseOssService(this, bucketName, fileProperties, scheduledThreadPoolExecutor, ossConfigDTO); + ThreadUtil.execute(this::getMultipartUploads); + this.transferManager = new TransferManager(cosClient); + createTransferManager(); + } + + // 创建 TransferManager 实例,这个实例用来后续调用高级接口 + private void createTransferManager() { + // 创建一个 COSClient 实例,这是访问 COS 服务的基础实例。 + // 这里创建的 cosClient 是以复制的目的端信息为基础的 + // 自定义线程池大小,建议在客户端与 COS 网络充足(例如使用腾讯云的 CVM,同地域上传 COS)的情况下,设置成16或32即可,可较充分的利用网络资源 + // 对于使用公网传输且网络带宽质量不高的情况,建议减小该值,避免因网速过慢,造成请求超时。 + // 传入一个 threadpool, 若不传入线程池,默认 TransferManager 中会生成一个单线程的线程池。 + // 设置高级接口的配置项 + // 分块复制阈值和分块大小分别为 5MB 和 1MB + TransferManagerConfiguration transferManagerConfiguration = new TransferManagerConfiguration(); + transferManagerConfiguration.setMultipartCopyThreshold(5L * 1024L * 1024L); + transferManagerConfiguration.setMultipartCopyPartSize(1024L * 1024L); + this.transferManager.setConfiguration(transferManagerConfiguration); + } + + @Override + public PlatformOSS getPlatform() { + return PlatformOSS.TENCENT; + } + + @Override + public FileInfo getFileInfo(String objectName) { + return baseOssService.getFileInfo(objectName); + } + + @Override + public boolean delete(String objectName) { + return baseOssService.delete(objectName); + } + + @Override + public boolean mkdir(String objectName) { + return baseOssService.mkdir(objectName); + } + + @Override + public boolean write(InputStream inputStream, String ossPath, String objectName) { + return baseOssService.writeTempFile(inputStream, ossPath, objectName); + } + + @Override + public String[] list(String objectName) { + return baseOssService.getFileNameList(objectName).toArray(new String[0]); + } + + @Override + public AbstractOssObject getObjectCache(String objectName) { + return baseOssService.getObject(objectName); + } + + @Override + public AbstractOssObject getAbstractOssObject(String objectName) { + return getAbstractOssObject(objectName, null, null); + } + + @Override + public AbstractOssObject getAbstractOssObject(String objectName, Long rangeStart, Long rangeEnd) { + COSObject ossObject = null; + try { + GetObjectRequest getObjectRequest = new GetObjectRequest(bucketName, objectName); + if (rangeStart != null && rangeEnd != null) { + getObjectRequest.setRange(rangeStart, rangeEnd); + } + ossObject = this.cosClient.getObject(getObjectRequest); + } catch (Exception e) { + log.warn(e.getMessage()); + } + if (ossObject == null) { + return null; + } + return new TencentOssObject(ossObject, this); + } + + @Override + public boolean deleteObject(String objectName) { + try { + baseOssService.printOperation(getPlatform().getKey(), "deleteObject", objectName); + cosClient.deleteObject(bucketName, objectName); + } catch (Exception e) { + log.error(e.getMessage(), e); + return false; + } + return true; + } + + @Override + public boolean deleteDir(String objectName) { + try { + ListObjectsRequest listObjectsRequest = new ListObjectsRequest(); + // 设置 bucket 名称 + listObjectsRequest.setBucketName(bucketName); + // prefix 表示列出的对象名以 prefix 为前缀 + // 这里填要列出的目录的相对 bucket 的路径 + listObjectsRequest.setPrefix(objectName); + // 设置最大遍历出多少个对象, 一次 listobject 最大支持1000 + listObjectsRequest.setMaxKeys(1000); + // 保存每次列出的结果 + ObjectListing objectListing; + do { + objectListing = cosClient.listObjects(listObjectsRequest); + // 这里保存列出的对象列表 + List cosObjectSummaries = objectListing.getObjectSummaries(); + ArrayList delObjects = new ArrayList<>(); + for (COSObjectSummary cosObjectSummary : cosObjectSummaries) { + delObjects.add(new DeleteObjectsRequest.KeyVersion(cosObjectSummary.getKey())); + } + DeleteObjectsRequest deleteObjectsRequest = new DeleteObjectsRequest(bucketName); + deleteObjectsRequest.setKeys(delObjects); + cosClient.deleteObjects(deleteObjectsRequest); + // 标记下一次开始的位置 + String nextMarker = objectListing.getNextMarker(); + listObjectsRequest.setMarker(nextMarker); + } while (objectListing.isTruncated()); + return true; + } catch (CosClientException e) { + log.error(e.getMessage(), e); + } + return false; + } + + @Override + public List getFileInfoList(String objectName) { + List fileInfoList = new ArrayList<>(); + try { + baseOssService.printOperation(getPlatform().getKey(), "getFileInfoList", objectName); + ListObjectsRequest listObjectsRequest = new ListObjectsRequest(); + // 设置 bucket 名称 + listObjectsRequest.setBucketName(bucketName); + // prefix 表示列出的对象名以 prefix 为前缀 + // 这里填要列出的目录的相对 bucket 的路径 + listObjectsRequest.setPrefix(objectName); + // delimiter 表示目录的截断符, 例如:设置为 / 则表示对象名遇到 / 就当做一级目录) + listObjectsRequest.setDelimiter("/"); + // 设置最大遍历出多少个对象, 一次 listobject 最大支持1000 + listObjectsRequest.setMaxKeys(1000); + // 保存每次列出的结果 + ObjectListing objectListing; + do { + objectListing = cosClient.listObjects(listObjectsRequest); + // 对象列表 + List cosObjectSummaries = objectListing.getObjectSummaries(); + for (COSObjectSummary objectSummary : cosObjectSummaries) { + S3ObjectSummary s3ObjectSummary = new S3ObjectSummary(objectSummary.getSize(), objectSummary.getKey(), objectSummary.getETag(), objectSummary.getLastModified(), objectSummary.getBucketName()); + baseOssService.addFileInfoList(objectName, fileInfoList, s3ObjectSummary); + } + // 子目录 + for (String commonPrefix : objectListing.getCommonPrefixes()) { + fileInfoList.add(baseOssService.newFileInfo(commonPrefix)); + } + // 标记下一次开始的位置 + String nextMarker = objectListing.getNextMarker(); + listObjectsRequest.setMarker(nextMarker); + } while (objectListing.isTruncated()); + } catch (CosClientException e) { + log.error(e.getMessage(), e); + } + return fileInfoList; + } + + @Override + public List getAllObjectsWithPrefix(String objectName) { + // 列举所有包含指定前缀的所有文件 + List fileInfoList = new ArrayList<>(); + try { + ListObjectsRequest listObjectsRequest = new ListObjectsRequest(); + // 设置 bucket 名称 + listObjectsRequest.setBucketName(bucketName); + // prefix 表示列出的对象名以 prefix 为前缀 + // 这里填要列出的目录的相对 bucket 的路径 + listObjectsRequest.setPrefix(objectName); + // 设置最大遍历出多少个对象, 一次 listObject 最大支持1000 + listObjectsRequest.setMaxKeys(1000); + // 保存每次列出的结果 + ObjectListing objectListing; + do { + objectListing = cosClient.listObjects(listObjectsRequest); + // 这里保存列出的对象列表 + List cosObjectSummaries = objectListing.getObjectSummaries(); + cosObjectSummaries.parallelStream().forEach(cosObjectSummary -> fileInfoList.add(new FileInfo(cosObjectSummary.getKey(), cosObjectSummary.getETag(), cosObjectSummary.getSize(), cosObjectSummary.getLastModified()))); + // 标记下一次开始的位置 + String nextMarker = objectListing.getNextMarker(); + listObjectsRequest.setMarker(nextMarker); + } while (objectListing.isTruncated()); + } catch (OSSException oe) { + log.error(oe.getMessage(), oe); + } catch (ClientException ce) { + log.error(ce.getMessage(), ce); + } + return fileInfoList; + } + + @Override + public List getFileInfoListCache(String objectName) { + return baseOssService.getFileInfoListCache(objectName); + } + + @Override + public boolean doesBucketExist() { + boolean exist; + exist = this.cosClient.doesBucketExist(bucketName); + if (exist) { + this.cosClient.getBucketAcl(bucketName); + } + return exist; + } + + @Override + public boolean doesObjectExist(String objectName) { + return this.cosClient.doesObjectExist(bucketName, objectName); + } + + @Override + public String getUploadId(String objectName) { + return baseOssService.getUploadId(objectName); + } + + @Override + public String initiateMultipartUpload(String objectName) { + InitiateMultipartUploadRequest request = new InitiateMultipartUploadRequest(bucketName, objectName); + // 分块上传的过程中,仅能通过初始化分块指定文件上传之后的 metadata + // 需要的头部可以在这里指定 + ObjectMetadata objectMetadata = new ObjectMetadata(); + request.setObjectMetadata(objectMetadata); + InitiateMultipartUploadResult initResult = cosClient.initiateMultipartUpload(request); + // 获取 uploadId + return initResult.getUploadId(); + } + + private void getMultipartUploads() { + try { + ListMultipartUploadsRequest listMultipartUploadsRequest = new ListMultipartUploadsRequest(bucketName); + // 每次请求最多列出多少个 + listMultipartUploadsRequest.setMaxUploads(100); + MultipartUploadListing multipartUploadListing; + do { + multipartUploadListing = cosClient.listMultipartUploads(listMultipartUploadsRequest); + List multipartUploads = multipartUploadListing.getMultipartUploads(); + for (MultipartUpload mUpload : multipartUploads) { + log.info("{}, 碎片文件: objectName: {}, uploadId: {}", getPlatform().getValue(), mUpload.getKey(), mUpload.getUploadId()); + baseOssService.setUpdateIdCache(mUpload.getKey(), mUpload.getUploadId()); + } + listMultipartUploadsRequest.setKeyMarker(multipartUploadListing.getNextKeyMarker()); + listMultipartUploadsRequest.setUploadIdMarker(multipartUploadListing.getNextUploadIdMarker()); + } while (multipartUploadListing.isTruncated()); + } catch (CosClientException e) { + log.error(e.getMessage(), e); + } + } + + @Override + public CopyOnWriteArrayList getListParts(String objectName, String uploadId) { + return new CopyOnWriteArrayList<>(getPartETagList(objectName, uploadId).stream().map(PartETag::getPartNumber).toList()); + } + + private List getPartETagList(String objectName, String uploadId) { + List partETagList = new ArrayList<>(); + try { + PartListing partListing; + ListPartsRequest listPartsRequest = new ListPartsRequest(bucketName, objectName, uploadId); + do { + partListing = cosClient.listParts(listPartsRequest); + for (PartSummary partSummary : partListing.getParts()) { + partETagList.add(new PartETag(partSummary.getPartNumber(), partSummary.getETag())); + } + listPartsRequest.setPartNumberMarker(partListing.getNextPartNumberMarker()); + } while (partListing.isTruncated()); + } catch (CosClientException e) { + log.error(e.getMessage(), e); + } + return partETagList; + } + + @Override + public boolean uploadPart(InputStream inputStream, String objectName, int partSize, int partNumber, String uploadId) { + UploadPartRequest uploadPartRequest = new UploadPartRequest(); + uploadPartRequest.setBucketName(bucketName); + uploadPartRequest.setKey(objectName); + uploadPartRequest.setUploadId(uploadId); + uploadPartRequest.setInputStream(inputStream); + // 设置分块的长度 + uploadPartRequest.setPartSize(partSize); + // 设置要上传的分块编号 + uploadPartRequest.setPartNumber(partNumber); + try { + this.cosClient.uploadPart(uploadPartRequest); + return true; + } catch (CosClientException e) { + log.error(e.getMessage(), e); + } + return false; + } + + @Override + public void abortMultipartUpload(String objectName, String uploadId) { + AbortMultipartUploadRequest abortMultipartUploadRequest = new AbortMultipartUploadRequest(bucketName, objectName, uploadId); + try { + cosClient.abortMultipartUpload(abortMultipartUploadRequest); + } catch (CosClientException e) { + log.error(e.getMessage(), e); + } + } + + public void completeMultipartUpload(String objectName, String uploadId, Long totalSize) { + baseOssService.printOperation(getPlatform().getKey(), "completeMultipartUpload", objectName); + // 查询已上传的分片 + List partETags = getPartETagList(objectName, uploadId); + // 完成分片上传 + CompleteMultipartUploadRequest completeMultipartUploadRequest = new CompleteMultipartUploadRequest(bucketName, objectName, uploadId, partETags); + cosClient.completeMultipartUpload(completeMultipartUploadRequest); + baseOssService.onUploadSuccess(objectName, totalSize); + } + + @Override + public FileInfo getThumbnail(String objectName, File file, int width) { + try { + GetObjectRequest request = new GetObjectRequest(bucketName, objectName); + // 指定目标图片宽度为 Width,高度等比缩放 + String rule = "imageMogr2/thumbnail/" + width + "x"; + request.putCustomQueryParameter(rule, null); + cosClient.getObject(request, file); + return baseOssService.getFileInfo(objectName); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + return null; + } + + @Override + public List copyObject(String sourceKey, String destinationKey) { + return copyObject(bucketName, sourceKey, bucketName, destinationKey); + } + + @Override + public List copyObject(String sourceBucketName, String sourceKey, String destinationBucketName, String destinationKey) { + baseOssService.setObjectNameLock(sourceBucketName); + baseOssService.setObjectNameLock(destinationBucketName); + List copiedList = new ArrayList<>(); + try { + if (sourceKey.endsWith("/")) { + // 复制文件夹 + ListObjectsRequest listObjectsRequest = new ListObjectsRequest(); + // 设置 bucket 名称 + listObjectsRequest.setBucketName(bucketName); + // prefix 表示列出的对象名以 prefix 为前缀 + // 这里填要列出的目录的相对 bucket 的路径 + listObjectsRequest.setPrefix(sourceKey); + // 设置最大遍历出多少个对象, 一次 listobject 最大支持1000 + listObjectsRequest.setMaxKeys(1000); + // 保存每次列出的结果 + ObjectListing objectListing; + do { + objectListing = cosClient.listObjects(listObjectsRequest); + // 这里保存列出的对象列表 + List cosObjectSummaries = objectListing.getObjectSummaries(); + cosObjectSummaries.parallelStream().forEach(cosObjectSummary -> { + String destKey = destinationKey + cosObjectSummary.getKey().substring(sourceKey.length()); + try { + copyObjectFile(cosObjectSummary.getBucketName(), cosObjectSummary.getKey(), destinationBucketName, destKey); + copiedList.add(destKey); + } catch (InterruptedException e) { + log.error(e.getMessage(), e); + Thread.currentThread().interrupt(); + } + }); + // 标记下一次开始的位置 + String nextMarker = objectListing.getNextMarker(); + listObjectsRequest.setMarker(nextMarker); + } while (objectListing.isTruncated()); + } else { + // 复制文件 + copyObjectFile(sourceBucketName, sourceKey, destinationBucketName, destinationKey); + copiedList.add(destinationKey); + } + return copiedList; + } catch (CosClientException e) { + log.error(e.getMessage(), e); + } catch (InterruptedException e) { + log.error(e.getMessage(), e); + Thread.currentThread().interrupt(); + } finally { + baseOssService.removeObjectNameLock(sourceBucketName); + baseOssService.removeObjectNameLock(destinationBucketName); + } + return copiedList; + } + + public void copyObjectFile(String sourceBucketName, String sourceKey, String destinationBucketName, String destinationKey) throws InterruptedException { + CopyObjectRequest copyObjectRequest = new CopyObjectRequest(region, sourceBucketName, sourceKey, destinationBucketName, destinationKey); + baseOssService.printOperation(getPlatform().getKey(), "copyObject start" + "destinationKey: " + destinationKey, "sourceKey:" + sourceKey); + Copy copy = transferManager.copy(copyObjectRequest); + // 高级接口会返回一个异步结果 Copy + // 可同步的调用 waitForCopyResult 等待复制结束, 成功返回 CopyResult, 失败抛出异常 + copy.waitForCopyResult(); + } + + @Override + public FileInfo newFolder(String objectName) { + baseOssService.printOperation(getPlatform().getKey(), "mkdir", objectName); + if (!objectName.endsWith("/")) { + objectName = objectName + "/"; + } + try { + // 这里创建一个空的 ByteArrayInputStream 来作为示例 + InputStream inputStream = new ByteArrayInputStream(new byte[0]); + ObjectMetadata objectMetadata = new ObjectMetadata(); + objectMetadata.setContentLength(0); + PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, objectName, inputStream, objectMetadata); + cosClient.putObject(putObjectRequest); + return baseOssService.newFileInfo(objectName); + } catch (CosClientException e) { + log.error(e.getMessage(), e); + } + return null; + } + + @Override + public void uploadFile(Path tempFileAbsolutePath, String objectName) { + executeUpload(tempFileAbsolutePath, objectName); + } + + private void executeUpload(Path tempFileAbsolutePath, String objectName) { + try { + if (!PathUtil.exists(tempFileAbsolutePath, false)) { + return; + } + baseOssService.printOperation(getPlatform().getKey(), "upload", objectName); + // 创建PutObjectRequest对象。 + PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, objectName, tempFileAbsolutePath.toFile()); + // 创建PutObject请求。 + PutObjectResult putObjectResult = this.cosClient.putObject(putObjectRequest); + if (putObjectResult.getRequestId() != null) { + // 上传成功 + baseOssService.onUploadSuccess(objectName, tempFileAbsolutePath); + } + } catch (CosClientException e) { + log.error(e.getMessage(), e); + } + } + + @Override + public void uploadFile(InputStream inputStream, String objectName, long inputStreamLength) { + baseOssService.printOperation(getPlatform().getKey(), "uploadFile inputStream", objectName); + ObjectMetadata objectMetadata = new ObjectMetadata(); + // 上传的流如果能够获取准确的流长度,则推荐一定填写 content-length + // 如果确实没办法获取到,则下面这行可以省略,但同时高级接口也没办法使用分块上传了 + objectMetadata.setContentLength(inputStreamLength); + PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, objectName, inputStream, objectMetadata); + putObjectRequest.setStorageClass(StorageClass.Standard); + try { + cosClient.putObject(putObjectRequest); + baseOssService.onUploadSuccess(objectName, inputStreamLength); + } catch (CosClientException e) { + log.error(e.getMessage(), e); + } + } + + @Override + public URL getPresignedObjectUrl(String objectName, int expiryTime) { + try { + // 设置签名过期时间(可选), 若未进行设置则默认使用 ClientConfig 中的签名过期时间(1小时) + // 这里设置签名在半个小时后过期 + Date expirationDate = new Date(System.currentTimeMillis() + expiryTime * 1000L); + // 请求的 HTTP 方法,上传请求用 PUT,下载请求用 GET,删除请求用 DELETE + HttpMethodName method = HttpMethodName.GET; + return cosClient.generatePresignedUrl(bucketName, objectName, expirationDate, method); + } catch (CosClientException e) { + log.error(e.getMessage(), e); + } + return null; + } + + @Override + public void clearCache(String objectName) { + baseOssService.clearCache(objectName); + } + + @Override + public void lock(String objectName) { + baseOssService.setObjectNameLock(objectName); + } + + @Override + public void unlock(String objectName) { + baseOssService.removeObjectNameLock(objectName); + } + + @Override + public void close() { + baseOssService.closePrint(); + if (this.cosClient != null) { + this.cosClient.shutdown(); + } + if (scheduledThreadPoolExecutor != null) { + scheduledThreadPoolExecutor.shutdown(); + } + } +} diff --git a/src/main/java/com/jmal/clouddisk/oss/web/OssController.java b/src/main/java/com/jmal/clouddisk/oss/web/OssController.java new file mode 100644 index 0000000..c41d6db --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/oss/web/OssController.java @@ -0,0 +1,61 @@ +package com.jmal.clouddisk.oss.web; + +import com.jmal.clouddisk.annotation.LogOperatingFun; +import com.jmal.clouddisk.annotation.Permission; +import com.jmal.clouddisk.model.LogOperation; +import com.jmal.clouddisk.oss.OssConfigService; +import com.jmal.clouddisk.oss.web.model.OssConfigDTO; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +import jakarta.validation.Valid; +import java.util.List; +import java.util.Map; + +@RestController +@RequestMapping("oss") +@Tag(name = "OSS管理") +@RequiredArgsConstructor +public class OssController { + + private final OssConfigService ossConfigService; + + public final WebOssService webOssService; + + @Operation(summary = "获取支持的平台的列表") + @LogOperatingFun(logType = LogOperation.Type.BROWSE) + @GetMapping("getPlatformList") + public ResponseResult>> getPlatformList() { + return ResultUtil.success(webOssService.getPlatformList()); + } + + @Operation(summary = "OSS配置列表") + @LogOperatingFun(logType = LogOperation.Type.OPERATION) + @GetMapping("ossConfigList") + @Permission(value = "cloud:oss:get") + public ResponseResult ossConfigList() { + return ossConfigService.ossConfigList(); + } + + @Operation(summary = "新增/修改OSS配置") + @LogOperatingFun(logType = LogOperation.Type.OPERATION) + @PutMapping("putOssConfig") + @Permission(value = "cloud:oss:put") + public ResponseResult putOssConfig(@Valid @RequestBody OssConfigDTO ossConfigDTO) { + ossConfigService.putOssConfig(ossConfigDTO); + return ResultUtil.success(); + } + + @Operation(summary = "删除OSS配置") + @LogOperatingFun(logType = LogOperation.Type.OPERATION) + @DeleteMapping("deleteOssConfig") + @Permission(value = "cloud:oss:delete") + public ResponseResult deleteOssConfig(@RequestParam String id) { + return ossConfigService.deleteOssConfig(id); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/oss/web/STSObjectVO.java b/src/main/java/com/jmal/clouddisk/oss/web/STSObjectVO.java new file mode 100644 index 0000000..057d901 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/oss/web/STSObjectVO.java @@ -0,0 +1,16 @@ +package com.jmal.clouddisk.oss.web; + +import lombok.Data; + +/** + * @author jmal + * @Description STS + * @date 2023/4/4 16:00 + */ +@Data +public class STSObjectVO { + private String accessKeyId; + private String accessKeySecret; + private String securityToken; + private String expiration; +} diff --git a/src/main/java/com/jmal/clouddisk/oss/web/WebOssCommonService.java b/src/main/java/com/jmal/clouddisk/oss/web/WebOssCommonService.java new file mode 100644 index 0000000..2d53b2a --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/oss/web/WebOssCommonService.java @@ -0,0 +1,143 @@ +package com.jmal.clouddisk.oss.web; + +import cn.hutool.core.convert.Convert; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.model.FileDocument; +import com.jmal.clouddisk.model.FileIntroVO; +import com.jmal.clouddisk.model.OperationPermission; +import com.jmal.clouddisk.oss.BaseOssService; +import com.jmal.clouddisk.oss.BucketInfo; +import com.jmal.clouddisk.oss.FileInfo; +import com.jmal.clouddisk.service.Constants; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.service.impl.CommonFileService; +import com.jmal.clouddisk.util.CaffeineUtil; +import com.jmal.clouddisk.webdav.MyWebdavServlet; +import org.bson.Document; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Update; +import org.springframework.stereotype.Service; + +import java.nio.file.Path; +import java.nio.file.Paths; +import java.time.LocalDateTime; + +/** + * @author jmal + * @Description WebOssCommonService + * @date 2023/4/14 10:22 + */ +@Service +public class WebOssCommonService { + + @Autowired + MongoTemplate mongoTemplate; + + @Autowired + FileProperties fileProperties; + + @Autowired + IUserService userService; + + @Autowired + CommonFileService commonFileService; + + public void notifyCreateFile(String username, String objectName, String ossRootFolderName) { + FileIntroVO fileIntroVO = new FileIntroVO(); + fileIntroVO.setPath(getPathByObjectName(ossRootFolderName, objectName)); + fileIntroVO.setName(Paths.get(objectName).getFileName().toString()); + commonFileService.pushMessage(username, fileIntroVO, Constants.CREATE_FILE); + } + + public void notifyUpdateFile(String ossPath, String objectName, long size) { + FileIntroVO fileIntroVO = new FileIntroVO(); + String username = getUsernameByOssPath(ossPath); + String id = getFileId(getOssRootFolderName(ossPath), objectName, username); + fileIntroVO.setId(id); + fileIntroVO.setSize(size); + fileIntroVO.setUpdateDate(LocalDateTime.now()); + commonFileService.pushMessage(username, fileIntroVO, Constants.UPDATE_FILE); + } + + public void notifyDeleteFile(String ossPath, String objectName) { + String username = getUsernameByOssPath(ossPath); + String id = getFileId(getOssRootFolderName(ossPath), objectName, username); + String filename = Paths.get(objectName).getFileName().toString(); + String path = id.substring(username.length(), id.length() - filename.length()); + commonFileService.pushMessage(username, path, Constants.DELETE_FILE); + } + + public static String getFileId(String rootName, String objectName, String username) { + boolean isFolder = objectName.endsWith("/"); + return Paths.get(username, rootName, objectName) + (isFolder ? MyWebdavServlet.PATH_DELIMITER : ""); + } + + public static String getPathByObjectName(String ossRootFolderName, String objectName) { + String path = MyWebdavServlet.PATH_DELIMITER; + Path filePath = Paths.get(ossRootFolderName, objectName); + if (filePath.getNameCount() > 1) { + path += filePath.getParent().toString() + MyWebdavServlet.PATH_DELIMITER; + } + return path; + } + + public static String getUsernameByOssPath(String ossPath) { + return Paths.get(ossPath).subpath(0, 1).toString(); + } + + public static String getOssRootFolderName(String ossPath) { + return CaffeineUtil.getOssDiameterPrefixCache(ossPath).getFolderName(); + } + + public static String getPath(String objectName, String rootName) { + String path; + Path keyPath = Paths.get(objectName); + if (keyPath.getNameCount() > 1) { + path = MyWebdavServlet.PATH_DELIMITER + Paths.get(rootName, objectName).getParent().toString() + MyWebdavServlet.PATH_DELIMITER; + } else { + path = MyWebdavServlet.PATH_DELIMITER + rootName + MyWebdavServlet.PATH_DELIMITER; + } + return path; + } + + private FileDocument getFileDocument(String ossPathTo, String objectName) { + BucketInfo bucketInfo = CaffeineUtil.getOssDiameterPrefixCache(ossPathTo); + FileInfo fileInfo = BaseOssService.newFileInfo(objectName, bucketInfo.getBucketName()); + String username = getUsernameByOssPath(ossPathTo); + return fileInfo.toFileDocument(ossPathTo, userService.getUserIdByUserName(username)); + } + + public void afterUploadComplete(String objectName, String ossPath, FileDocument fileDocument) { + if (fileDocument == null) { + fileDocument = getFileDocument(ossPath, objectName); + } + String rootName = getOssRootFolderName(ossPath); + Update update = new Update(); + commonFileService.checkShareBase(update, getPath(objectName, rootName)); + Document updateObject = update.getUpdateObject(); + if (updateObject.get("$set") != null) { + Document document = updateObject.get("$set", Document.class); + if (document.get(Constants.IS_SHARE) != null) { + fileDocument.setIsShare(document.getBoolean(Constants.IS_SHARE)); + } + if (document.get(Constants.SHARE_ID) != null) { + fileDocument.setShareId(document.getString(Constants.SHARE_ID)); + } + if (document.get(Constants.EXPIRES_AT) != null) { + fileDocument.setExpiresAt(document.getLong(Constants.EXPIRES_AT)); + } + if (document.get(Constants.IS_PRIVACY) != null) { + fileDocument.setIsPrivacy(document.getBoolean(Constants.IS_PRIVACY)); + } + if (document.get(Constants.EXTRACTION_CODE) != null) { + fileDocument.setExtractionCode(document.getString(Constants.EXTRACTION_CODE)); + } + if (document.get(Constants.OPERATION_PERMISSION_LIST) != null) { + fileDocument.setOperationPermissionList(Convert.toList(OperationPermission.class, document.get(Constants.OPERATION_PERMISSION_LIST))); + } + } + mongoTemplate.save(fileDocument); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/oss/web/WebOssCopyFileService.java b/src/main/java/com/jmal/clouddisk/oss/web/WebOssCopyFileService.java new file mode 100644 index 0000000..0a95fc4 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/oss/web/WebOssCopyFileService.java @@ -0,0 +1,408 @@ +package com.jmal.clouddisk.oss.web; + +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.io.file.PathUtil; +import com.jmal.clouddisk.exception.CommonException; +import com.jmal.clouddisk.exception.ExceptionType; +import com.jmal.clouddisk.model.FileDocument; +import com.jmal.clouddisk.oss.*; +import com.jmal.clouddisk.service.Constants; +import com.jmal.clouddisk.service.impl.CommonFileService; +import com.jmal.clouddisk.util.CaffeineUtil; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import com.jmal.clouddisk.webdav.MyWebdavServlet; +import io.reactivex.rxjava3.core.Completable; +import io.reactivex.rxjava3.schedulers.Schedulers; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.io.file.SimplePathVisitor; +import org.springframework.stereotype.Service; + +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStream; +import java.nio.file.FileVisitResult; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.nio.file.attribute.BasicFileAttributes; +import java.util.List; +import java.util.concurrent.TimeUnit; + +@Service +@Slf4j +public class WebOssCopyFileService extends WebOssCommonService { + + /** + * 从 oss 复制 到 oss + * + * @param ossPathFrom 源ossPath + * @param sourceObjectNamePath 源objectPath + * @param ossPathTo 目标ossPath + * @param destinationObjectNamePath 目标objectPath + * @param isMove 是否为移动操作 + */ + public ResponseResult copyOssToOss(String ossPathFrom, String sourceObjectNamePath, String ossPathTo, String destinationObjectNamePath, boolean isMove) { + + IOssService ossServiceFrom = OssConfigService.getOssStorageService(ossPathFrom); + IOssService ossServiceTo = OssConfigService.getOssStorageService(ossPathTo); + + BucketInfo bucketInfoFrom = CaffeineUtil.getOssDiameterPrefixCache(ossPathFrom); + BucketInfo bucketInfoTo = CaffeineUtil.getOssDiameterPrefixCache(ossPathTo); + + String objectNameFrom = sourceObjectNamePath.substring(ossPathFrom.length()); + + boolean isFolder = objectNameFrom.endsWith("/"); + String objectNameTo; + Path objectNameFromPath = Paths.get(objectNameFrom); + objectNameTo = destinationObjectNamePath.substring(ossPathTo.length()) + objectNameFromPath.getFileName(); + if (objectNameFrom.isEmpty()) { + isFolder = true; + objectNameTo = destinationObjectNamePath.substring(ossPathTo.length()) + Paths.get(ossPathFrom).getFileName().toString(); + } + if (isFolder) { + objectNameTo += MyWebdavServlet.PATH_DELIMITER; + } + + // 判断目标文件/夹是否存在 + if (ossServiceTo.doesObjectExist(objectNameTo)) { + return ResultUtil.warning(Constants.COPY_EXISTS_FILE); + } + + if (ossServiceFrom.getPlatform() == ossServiceTo.getPlatform()) { + // 同平台间复制 + List copiedList = ossServiceFrom.copyObject(bucketInfoFrom.getBucketName(), objectNameFrom, bucketInfoTo.getBucketName(), objectNameTo); + for (String objectName : copiedList) { + afterUploadComplete(objectName, ossPathTo, null); + } + if (copiedList.isEmpty()) { + throw new CommonException(ExceptionType.SYSTEM_ERROR.getCode(), "复制失败"); + } + } else { + if (isFolder) { + // 复制文件夹 + copyDir(ossServiceFrom, ossServiceTo, objectNameFrom, objectNameTo, ossPathTo); + } else { + // 复制文件 + copyFile(ossServiceFrom, ossServiceTo, objectNameFrom, objectNameTo, ossPathTo); + } + } + String finalObjectNameTo = objectNameTo; + // 复制成功 + ossServiceTo.clearCache(finalObjectNameTo); + notifyCreateFile(getUsernameByOssPath(ossPathTo), finalObjectNameTo, getOssRootFolderName(ossPathTo)); + String operation = isMove ? "移动" : "复制"; + Path fromPath = Paths.get(getOssRootFolderName(ossPathFrom), objectNameFrom); + Path toPath = Paths.get(getOssRootFolderName(ossPathTo), finalObjectNameTo); + commonFileService.pushMessageOperationFileSuccess(fromPath.toString(), toPath.toString(), getUsernameByOssPath(ossPathFrom), operation); + return ResultUtil.success(); + } + + /** + * 不同oss平台间的文件夹复制 + * 复制完成需要解锁 源objectName + * + * @param ossServiceFrom 源ossService + * @param ossServiceTo 目标ossService + * @param objectNameFrom 源objectName + * @param objectNameTo 目标objectName + * @param ossPathTo 目标ossPath + */ + private void copyDir(IOssService ossServiceFrom, IOssService ossServiceTo, String objectNameFrom, String objectNameTo, String ossPathTo) { + // 锁对象 + ossServiceFrom.lock(objectNameFrom); + try { + // 首先在目标oss创建文件夹 + if (ossServiceTo.mkdir(objectNameTo)) { + // 列出源objectName下的所有文件/文件夹 + List fileInfoList = ossServiceFrom.getAllObjectsWithPrefix(objectNameFrom); + // 先创建文件夹 + fileInfoList.stream().filter(FileInfo::isFolder).parallel().forEach(fileInfo -> { + String relativePath = fileInfo.getKey().substring(objectNameFrom.length()); + // 目标objectName + String destObjectName = objectNameTo + relativePath; + ossServiceTo.mkdir(destObjectName); + afterUploadComplete(destObjectName, ossPathTo, null); + }); + // 再复制文件 + fileInfoList.stream().filter(fileInfo -> !fileInfo.isFolder()).parallel().forEach(fileInfo -> { + String relativePath = fileInfo.getKey().substring(objectNameFrom.length()); + // 目标objectName + String destObjectName = objectNameTo + relativePath; + try (AbstractOssObject abstractOssObject = ossServiceFrom.getAbstractOssObject(fileInfo.getKey()); + InputStream inputStream = abstractOssObject.getInputStream()) { + // 上传文件 + ossServiceTo.uploadFile(inputStream, destObjectName, abstractOssObject.getContentLength()); + afterUploadComplete(destObjectName, ossPathTo, null); + } catch (Exception e) { + throw new CommonException(ExceptionType.SYSTEM_ERROR.getCode(), e.getMessage()); + } + }); + } + } catch (Exception e) { + throw new CommonException(ExceptionType.SYSTEM_ERROR.getCode(), e.getMessage()); + } finally { + // 解锁对象 + ossServiceFrom.unlock(objectNameFrom); + } + } + + /** + * 不同oss平台间的文件复制 + * 复制完成需要解锁 源objectName + * + * @param ossServiceFrom 源ossService + * @param ossServiceTo 目标ossService + * @param objectNameFrom 源objectName + * @param objectNameTo 目标objectName + * @param ossPathTo 目标ossPath + */ + private void copyFile(IOssService ossServiceFrom, IOssService ossServiceTo, String objectNameFrom, String objectNameTo, String ossPathTo) { + // 锁对象 + ossServiceFrom.lock(objectNameFrom); + try (AbstractOssObject abstractOssObject = ossServiceFrom.getAbstractOssObject(objectNameFrom); + InputStream inputStream = abstractOssObject.getInputStream()) { + // 上传文件 + ossServiceTo.uploadFile(inputStream, objectNameTo, abstractOssObject.getContentLength()); + afterUploadComplete(objectNameTo, ossPathTo, null); + } catch (Exception e) { + throw new CommonException(ExceptionType.SYSTEM_ERROR.getCode(), e.getMessage()); + } finally { + // 解锁对象 + ossServiceFrom.unlock(objectNameFrom); + } + } + + /** + * 从oss复制文件/夹到本地存储 + * + * @param ossPathFrom 源ossPath + * @param sourceObjectNamePath 源objectPath + * @param fileId 目标文件fileId + * @param isMove 是否为移动操作 + */ + public ResponseResult copyOssToLocal(String ossPathFrom, String sourceObjectNamePath, String fileId, boolean isMove) { + IOssService ossServiceFrom = OssConfigService.getOssStorageService(ossPathFrom); + String objectNameFrom = sourceObjectNamePath.substring(ossPathFrom.length()); + boolean isFolder = objectNameFrom.endsWith("/"); + + FileDocument destFileDocument; + if (Constants.REGION_DEFAULT.equals(fileId)) { + // 根目录 + destFileDocument = new FileDocument(); + destFileDocument.setName(""); + destFileDocument.setPath("/"); + } else { + destFileDocument = mongoTemplate.findById(fileId, FileDocument.class); + if (destFileDocument == null) { + throw new CommonException(ExceptionType.DIR_NOT_FIND); + } + } + destFileDocument.setUsername(getUsernameByOssPath(ossPathFrom)); + if (isFolder) { + // 复制文件夹 + copyDir(ossServiceFrom, objectNameFrom, destFileDocument); + } else { + // 复制文件 + copyFile(ossServiceFrom, objectNameFrom, destFileDocument); + } + String operation = isMove ? "移动" : "复制"; + Path fromPath = Paths.get(getOssRootFolderName(ossPathFrom), objectNameFrom); + Path toPath = Paths.get(destFileDocument.getPath(), destFileDocument.getName(), Paths.get(objectNameFrom).getFileName().toString()); + commonFileService.pushMessageOperationFileSuccess(fromPath.toString(), toPath.toString(), destFileDocument.getUsername(), operation); + return ResultUtil.success(); + } + + /** + * 从oss复制文件夹到本地 + * + * @param ossServiceFrom 源ossService + * @param objectNameFrom 源objectName + * @param destFileDocument 目标fileDocument + */ + private void copyDir(IOssService ossServiceFrom, String objectNameFrom, FileDocument destFileDocument) { + // 锁对象 + ossServiceFrom.lock(objectNameFrom); + try { + String destDir = Paths.get(fileProperties.getRootDir(), destFileDocument.getUsername(), destFileDocument.getPath(), destFileDocument.getName()).toString(); + String destDirPath = Paths.get(destDir, Paths.get(objectNameFrom).getFileName().toString()).toString(); + // 首先创建文件夹 + FileUtil.mkdir(destDirPath); + // 列出源objectName下的所有文件/文件夹 + List fileInfoList = ossServiceFrom.getAllObjectsWithPrefix(objectNameFrom); + // 先创建文件夹 + fileInfoList.stream().filter(FileInfo::isFolder).parallel().forEach(fileInfo -> { + String relativePath = fileInfo.getKey().substring(objectNameFrom.length()); + // 目标目录 + Path destPath = Paths.get(destDirPath, relativePath); + PathUtil.mkdir(destPath); + commonFileService.createFile(destFileDocument.getUsername(), destPath.toFile(), null, null); + }); + // 再复制文件 + fileInfoList.stream().filter(fileInfo -> !fileInfo.isFolder()).parallel().forEach(fileInfo -> { + String relativePath = fileInfo.getKey().substring(objectNameFrom.length()); + // 目标objectName + try (AbstractOssObject abstractOssObject = ossServiceFrom.getAbstractOssObject(fileInfo.getKey()); + InputStream inputStream = abstractOssObject.getInputStream()) { + // 目标文件 + File destFile = Paths.get(destDirPath, relativePath).toFile(); + FileUtil.writeFromStream(inputStream, destFile); + commonFileService.createFile(destFileDocument.getUsername(), destFile, null, null); + } catch (Exception e) { + throw new CommonException(ExceptionType.SYSTEM_ERROR.getCode(), e.getMessage()); + } + }); + } catch (Exception e) { + throw new CommonException(ExceptionType.SYSTEM_ERROR.getCode(), e.getMessage()); + } finally { + // 解锁对象 + ossServiceFrom.unlock(objectNameFrom); + } + } + + /** + * 从oss复制文件到本地 + * + * @param ossServiceFrom 源ossService + * @param objectNameFrom 源objectName + * @param destFileDocument 目标fileDocument + */ + private void copyFile(IOssService ossServiceFrom, String objectNameFrom, FileDocument destFileDocument) { + // 锁对象 + ossServiceFrom.lock(objectNameFrom); + try (AbstractOssObject abstractOssObject = ossServiceFrom.getAbstractOssObject(objectNameFrom); + InputStream inputStream = abstractOssObject.getInputStream()) { + // 上传文件 + Path destPath = Paths.get(fileProperties.getRootDir(), destFileDocument.getUsername(), destFileDocument.getPath(), destFileDocument.getName()); + PathUtil.mkdir(destPath); + // 目标文件 + File destFile = Paths.get(destPath.toString(), Paths.get(objectNameFrom).getFileName().toString()).toFile(); + FileUtil.writeFromStream(inputStream, destFile); + commonFileService.createFile(destFileDocument.getUsername(), destFile, null, null); + } catch (Exception e) { + throw new CommonException(ExceptionType.SYSTEM_ERROR.getCode(), e.getMessage()); + } finally { + // 解锁对象 + ossServiceFrom.unlock(objectNameFrom); + } + } + + /** + * 从本地存储复制文件/夹到oss + * + * @param ossPathTo 目标ossPath + * @param fileId 源fileId + * @param destObjectNamePath 目标objectNamePath + * @param isMove 是否为移动操作 + */ + public ResponseResult copyLocalToOss(String ossPathTo, String fileId, String destObjectNamePath, boolean isMove) { + IOssService ossServiceTo = OssConfigService.getOssStorageService(ossPathTo); + FileDocument fromFileDocument = mongoTemplate.findById(fileId, FileDocument.class); + if (fromFileDocument == null) { + throw new CommonException(ExceptionType.FILE_NOT_FIND); + } + boolean isFolder = fromFileDocument.getIsFolder(); + fromFileDocument.setUsername(getUsernameByOssPath(ossPathTo)); + // 目标objectName + String objectNameTo = destObjectNamePath.substring(ossPathTo.length()) + fromFileDocument.getName(); + // 判断目标文件/夹是否存在 + if (ossServiceTo.doesObjectExist(objectNameTo)) { + return ResultUtil.warning(Constants.COPY_EXISTS_FILE); + } + if (isFolder) { + // 复制文件夹 + copyDir(fromFileDocument, ossServiceTo, objectNameTo, ossPathTo); + } else { + // 复制文件 + copyFile(fromFileDocument, ossServiceTo, objectNameTo, ossPathTo); + } + if (isMove) { + // 删除源文件 + Path fromPathFile = Paths.get(fileProperties.getRootDir(), fromFileDocument.getUsername(), fromFileDocument.getPath(), fromFileDocument.getName()); + FileUtil.del(fromPathFile); + } + Completable.fromAction(() -> { + TimeUnit.SECONDS.sleep(1); + notifyCreateFile(fromFileDocument.getUsername(), objectNameTo, getOssRootFolderName(ossPathTo)); + Path fromPath = Paths.get(fromFileDocument.getPath(), fromFileDocument.getName()); + Path toPath = Paths.get(getOssRootFolderName(ossPathTo), objectNameTo); + commonFileService.pushMessageOperationFileSuccess(fromPath.toString(), toPath.toString(), fromFileDocument.getUsername(), isMove ? "移动" : "复制"); + }) + .subscribeOn(Schedulers.io()) + .subscribe(); + return ResultUtil.success(); + } + + /** + * 从本地复制文件夹到oss + * + * @param fromFileDocument 源FileDocument + * @param ossServiceTo 目标ossService + * @param objectNameTo 目标objectName + * @param ossPathTo 目标ossPath + */ + private void copyDir(FileDocument fromFileDocument, IOssService ossServiceTo, String objectNameTo, String ossPathTo) { + // 锁文件 + CommonFileService.lockFile(fromFileDocument); + Path fromPath = Paths.get(fileProperties.getRootDir(), fromFileDocument.getUsername(), fromFileDocument.getPath(), fromFileDocument.getName()); + try { + // 首先在目标oss创建文件夹 + if (ossServiceTo.mkdir(objectNameTo)) { + // 遍历fromPath下的所有目录和文件上传至目标oss + PathUtil.walkFiles(fromPath, new SimplePathVisitor() { + @Override + public FileVisitResult preVisitDirectory(Path dir, BasicFileAttributes attrs) throws IOException { + if (!dir.equals(fromPath)) { + String objectName = objectNameTo + dir.toString().substring(fromPath.toString().length()); + ossServiceTo.mkdir(objectName); + afterUploadComplete(objectName, ossPathTo, null); + } + return super.preVisitDirectory(dir, attrs); + } + + @Override + public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException { + String objectName = objectNameTo + file.toString().substring(fromPath.toString().length()); + File fromFile = file.toFile(); + try (InputStream inputStream = new FileInputStream(fromFile)) { + ossServiceTo.uploadFile(inputStream, objectName, fromFile.length()); + afterUploadComplete(objectName, ossPathTo, null); + } catch (Exception e) { + throw new CommonException(ExceptionType.SYSTEM_ERROR.getCode(), e.getMessage()); + } + return super.visitFile(file, attrs); + } + }); + } + } catch (Exception e) { + throw new CommonException(ExceptionType.SYSTEM_ERROR.getCode(), e.getMessage()); + } finally { + // 解锁文件 + CommonFileService.unLockFile(fromFileDocument); + } + } + + /** + * 从本地复制文件到oss + * + * @param fromFileDocument 源FileDocument + * @param ossServiceTo 目标ossService + * @param objectNameTo 目标objectName + * @param ossPathTo 目标ossPath + */ + private void copyFile(FileDocument fromFileDocument, IOssService ossServiceTo, String objectNameTo, String ossPathTo) { + // 锁文件 + CommonFileService.lockFile(fromFileDocument); + // 上传文件 + File fromFile = Paths.get(fileProperties.getRootDir(), fromFileDocument.getUsername(), fromFileDocument.getPath(), fromFileDocument.getName()).toFile(); + try (InputStream intStream = new FileInputStream(fromFile)) { + ossServiceTo.uploadFile(intStream, objectNameTo, fromFile.length()); + afterUploadComplete(objectNameTo, ossPathTo, null); + } catch (Exception e) { + throw new CommonException(ExceptionType.SYSTEM_ERROR.getCode(), e.getMessage()); + } finally { + // 解锁文件 + CommonFileService.unLockFile(fromFileDocument); + } + } +} diff --git a/src/main/java/com/jmal/clouddisk/oss/web/WebOssService.java b/src/main/java/com/jmal/clouddisk/oss/web/WebOssService.java new file mode 100644 index 0000000..96fc574 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/oss/web/WebOssService.java @@ -0,0 +1,840 @@ +package com.jmal.clouddisk.oss.web; + +import cn.hutool.core.convert.Convert; +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.io.IORuntimeException; +import cn.hutool.core.io.IoUtil; +import cn.hutool.core.io.file.PathUtil; +import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.core.util.BooleanUtil; +import cn.hutool.core.util.ReUtil; +import cn.hutool.crypto.SecureUtil; +import com.github.benmanes.caffeine.cache.Cache; +import com.github.benmanes.caffeine.cache.Caffeine; +import com.jmal.clouddisk.exception.CommonException; +import com.jmal.clouddisk.exception.ExceptionType; +import com.jmal.clouddisk.model.*; +import com.jmal.clouddisk.oss.*; +import com.jmal.clouddisk.service.Constants; +import com.jmal.clouddisk.service.IFileVersionService; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.service.impl.UserLoginHolder; +import com.jmal.clouddisk.util.*; +import com.jmal.clouddisk.webdav.MyWebdavServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.apache.catalina.connector.ClientAbortException; +import org.bson.Document; +import org.jetbrains.annotations.NotNull; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.data.mongodb.core.query.Update; +import org.springframework.http.HttpHeaders; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.servlet.mvc.method.annotation.StreamingResponseBody; + +import java.io.*; +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.*; +import java.util.concurrent.CopyOnWriteArrayList; + +@Service +@Slf4j +@RequiredArgsConstructor +public class WebOssService extends WebOssCommonService { + + + private final IFileVersionService fileVersionService; + + private final UserLoginHolder userLoginHolder; + + /*** + * 断点恢复上传缓存(已上传的分片缓存) + * key: uploadId + * value: 已上传的分片号列表 + */ + private static final Cache> LIST_PARTS_CACHE = Caffeine.newBuilder().build(); + + public List> getPlatformList() { + List> maps = new ArrayList<>(PlatformOSS.values().length); + for (PlatformOSS platformOSS : PlatformOSS.values()) { + Map map = new HashMap<>(2); + map.put("value", platformOSS.getKey()); + map.put("label", platformOSS.getValue()); + maps.add(map); + } + return maps; + } + + public static String getObjectName(Path prePath, String ossPath, boolean isFolder) { + String name = ""; + int ossPathCount = Paths.get(ossPath).getNameCount(); + if (prePath.getNameCount() > ossPathCount) { + name = prePath.subpath(ossPathCount, prePath.getNameCount()).toString(); + if (!name.endsWith("/") && isFolder) { + name = name + "/"; + } + } + return FileNameUtils.safeDecode(name); + } + + public ResponseResult searchFileAndOpenOssFolder(Path prePth, UploadApiParamDTO upload) { + String ossPath = CaffeineUtil.getOssPath(prePth); + commonFileService.pushMessage(upload.getUsername(), Constants.OSS_CHUNK_SIZE, Constants.UPLOADER_CHUNK_SIZE); + if (ossPath == null) { + return ResultUtil.success().setData(new ArrayList<>(0)).setCode(0); + } + return getOssFileList(ossPath, prePth, upload); + } + + public ResponseResult getOssFileList(String ossPath, Path prePth, UploadApiParamDTO upload) { + ResponseResult result = ResultUtil.genResult(); + result.setData(Collections.emptyList()); + result.setCount(0); + List fileIntroVOList; + IOssService ossService = OssConfigService.getOssStorageService(ossPath); + String objectName = getObjectName(prePth, ossPath, true); + List list = ossService.getFileInfoListCache(objectName); + if (!list.isEmpty()) { + String userId = null; + if (upload != null) { + userId = upload.getUserId(); + } + if (CharSequenceUtil.isNotBlank(userId)) { + userId = userService.getUserIdByUserName(getUsernameByOssPath(ossPath)); + } + + // 过滤条件 + list = filterOther(upload, list); + result.setCount(list.size()); + + // 设置附加属性 + fileIntroVOList = setAdditionalAttributes(ossPath, upload, list, objectName, userId); + + // 排序 + fileIntroVOList = getSortFileList(upload, fileIntroVOList); + // 分页 + if (upload != null && upload.getPageIndex() != null && upload.getPageSize() != null) { + fileIntroVOList = getPageFileList(fileIntroVOList, upload.getPageSize(), upload.getPageIndex()); + } + result.setData(fileIntroVOList); + } + return result; + } + + /** + * 设置附加属性 + * @param ossPath ossPath + * @param upload upload + * @param list list + * @param objectName objectName + * @param finalUserId finalUserId + */ + @NotNull + private List setAdditionalAttributes(String ossPath, UploadApiParamDTO upload, List list, String objectName, String finalUserId) { + List fileIntroVOList; + // 检测上级目录是否有分享属性 + Document shareBaseDocument = commonFileService.getShareBaseDocument(getPath(list.get(0).getKey(), getOssRootFolderName(ossPath))); + + List fileDocumentList = getFileDocuments(ossPath, objectName); + + // 删除fileDocumentList里面有而fileIntroVOList没有的数据 + List fileDocumentIds = fileDocumentList.stream().map(fileDocument -> fileDocument.getId().substring(ossPath.length())).toList(); + List fileIntroVOIds = list.stream().map(FileInfo::getKey).toList(); + List deleteIds = fileDocumentIds.stream().filter(id -> !fileIntroVOIds.contains(id)).toList(); + if (!deleteIds.isEmpty()) { + Query query = new Query(); + query.addCriteria(Criteria.where("id").in(deleteIds)); + mongoTemplate.remove(query, FileDocument.class); + } + + // 添加fileIntroVOList里有而fileDocumentList里没有的列表 + List listToBeAdded = new ArrayList<>(); + + // 配置属性 + fileIntroVOList = list.stream().map(fileInfo -> { + FileIntroVO fileIntroVO = fileInfo.toFileIntroVO(ossPath, finalUserId); + if (upload != null && BooleanUtil.isTrue(upload.getPathAttachFileName())) { + fileIntroVO.setPath(fileIntroVO.getPath() + fileIntroVO.getName()); + } + // 设置文件的额外属性:分享属性和收藏属性 + FileDocument fileDocument = fileDocumentList.stream().filter(f -> f.getId().equals(fileIntroVO.getId())).findFirst().orElse(null); + if (shareBaseDocument != null) { + fileIntroVO.setIsPrivacy(Convert.toBool(shareBaseDocument.get(Constants.IS_PRIVACY), null)); + fileIntroVO.setExpiresAt(Convert.toLong(shareBaseDocument.get(Constants.EXPIRES_AT), null)); + fileIntroVO.setIsShare(true); + if (shareBaseDocument.get(Constants.OPERATION_PERMISSION_LIST) != null) { + List operationPermissionList = Convert.toList(OperationPermission.class, shareBaseDocument.get(Constants.OPERATION_PERMISSION_LIST)); + fileIntroVO.setOperationPermissionList(operationPermissionList); + } + if (fileDocument == null) { + FileDocument fileDocumentToBeAdded = fileInfo.toFileDocument(ossPath, finalUserId); + fileDocumentToBeAdded.setIsPrivacy(fileIntroVO.getIsPrivacy()); + fileDocumentToBeAdded.setExpiresAt(fileIntroVO.getExpiresAt()); + fileDocumentToBeAdded.setIsShare(fileIntroVO.getIsShare()); + fileDocumentToBeAdded.setOperationPermissionList(fileIntroVO.getOperationPermissionList()); + fileDocumentToBeAdded.setExtractionCode(Convert.toStr(shareBaseDocument.getString(Constants.EXTRACTION_CODE), null)); + fileDocumentToBeAdded.setShareId(Convert.toStr(shareBaseDocument.getString(Constants.SHARE_ID), null)); + listToBeAdded.add(fileDocumentToBeAdded); + } + } + if (fileDocument != null) { + fileIntroVO.setIsFavorite(fileDocument.getIsFavorite()); + fileIntroVO.setIsPrivacy(fileDocument.getIsPrivacy()); + fileIntroVO.setShareBase(fileDocument.getShareBase()); + fileIntroVO.setExpiresAt(fileDocument.getExpiresAt()); + fileIntroVO.setIsShare(fileDocument.getIsShare()); + fileIntroVO.setOperationPermissionList(fileDocument.getOperationPermissionList()); + } + return fileIntroVO; + }).toList(); + + // 添加fileIntroVOList里有而fileDocumentList里没有的列表 + if (!listToBeAdded.isEmpty()) { + mongoTemplate.insertAll(listToBeAdded); + } + return fileIntroVOList; + } + + /** + * 查询object目录下是否有额外属性,有就返回List + * + * @param ossPath ossPath + * @param objectName objectName必须为目录 + * @return List + */ + private List getFileDocuments(String ossPath, String objectName) { + if (!objectName.isEmpty() && !objectName.endsWith("/")) { + return new ArrayList<>(); + } + Query query = new Query(); + String parentName = Paths.get(objectName).getFileName().toString(); + String path = getPath(objectName, getOssRootFolderName(ossPath)); + if (!parentName.isEmpty()) { + path += parentName + MyWebdavServlet.PATH_DELIMITER; + } + query.addCriteria(Criteria.where("path").is(path)); + return mongoTemplate.find(query, FileDocument.class); + } + + private static List filterOther(UploadApiParamDTO upload, List fileInfoList) { + if (upload != null && BooleanUtil.isTrue(upload.getJustShowFolder())) { + // 只显示文件夹 + return fileInfoList.stream().filter(FileInfo::isFolder).toList(); + } + return fileInfoList; + } + + private List getSortFileList(UploadApiParamDTO upload, List fileIntroVOList) { + if (upload == null) { + return fileIntroVOList; + } + String order = upload.getOrder(); + if (!CharSequenceUtil.isBlank(order)) { + String sortableProp = upload.getSortableProp(); + // 按文件大小排序 + if ("size".equals(sortableProp)) { + if ("descending".equals(order)) { + // 倒序 + fileIntroVOList = fileIntroVOList.stream().sorted(commonFileService::compareBySizeDesc).toList(); + } else { + // 正序 + fileIntroVOList = fileIntroVOList.stream().sorted(commonFileService::compareBySize).toList(); + } + } + // 按文件最近修改时间排序 + if (Constants.UPDATE_DATE.equals(sortableProp)) { + if ("descending".equals(order)) { + // 倒序 + fileIntroVOList = fileIntroVOList.stream().sorted(commonFileService::compareByUpdateDateDesc).toList(); + } else { + // 正序 + fileIntroVOList = fileIntroVOList.stream().sorted(commonFileService::compareByUpdateDate).toList(); + } + } + } + // 默认按文件排序 + fileIntroVOList = commonFileService.sortByFileName(upload, fileIntroVOList, order); + return fileIntroVOList; + } + + public List getPageFileList(List fileIntroVOList, int pageSize, int pageIndex) { + List pageList = new ArrayList<>(); + int startIndex = (pageIndex - 1) * pageSize; + int endIndex = Math.min(startIndex + pageSize, fileIntroVOList.size()); + for (int i = startIndex; i < endIndex; i++) { + pageList.add(fileIntroVOList.get(i)); + } + return pageList; + } + + public Optional readToText(String ossPath, Path prePth, Boolean content) { + IOssService ossService = OssConfigService.getOssStorageService(ossPath); + String objectName = getObjectName(prePth, ossPath, false); + try (AbstractOssObject abstractOssObject = ossService.getAbstractOssObject(objectName); + InputStream inputStream = abstractOssObject.getInputStream()) { + FileIntroVO fileIntroVO = new FileIntroVO(); + FileInfo fileInfo = abstractOssObject.getFileInfo(); + if (fileInfo != null && inputStream != null) { + String userId = userService.getUserIdByUserName(getUsernameByOssPath(ossPath)); + fileIntroVO = fileInfo.toFileIntroVO(ossPath, userId); + if (BooleanUtil.isTrue(content)) { + String context = IoUtil.read(inputStream, StandardCharsets.UTF_8); + fileIntroVO.setContentText(context); + } + } + return Optional.of(fileIntroVO); + } catch (IOException e) { + log.error(e.getMessage(), e); + } + return Optional.empty(); + } + + public StreamingResponseBody readToTextStream(String ossPath, Path prePth) { + IOssService ossService = OssConfigService.getOssStorageService(ossPath); + String objectName = getObjectName(prePth, ossPath, false); + return outputStream -> { + try (AbstractOssObject abstractOssObject = ossService.getAbstractOssObject(objectName); + InputStream inputStream = abstractOssObject.getInputStream(); + InputStreamReader inputStreamReader = new InputStreamReader(inputStream, StandardCharsets.UTF_8); + BufferedReader bufferedReader = new BufferedReader(inputStreamReader)) { + String line; + while ((line = bufferedReader.readLine()) != null) { + outputStream.write(line.getBytes(StandardCharsets.UTF_8)); + outputStream.write("\n".getBytes(StandardCharsets.UTF_8)); + outputStream.flush(); + } + } catch (IOException e) { + log.error(e.getMessage(), e); + } + }; + } + + public UploadResponse checkExist(String ossPath, Path prePth) { + UploadResponse uploadResponse = new UploadResponse(); + IOssService ossService = OssConfigService.getOssStorageService(ossPath); + String objectName = getObjectName(prePth, ossPath, false); + if (ossService.doesObjectExist(objectName)) { + // 对象已存在 + uploadResponse.setPass(true); + uploadResponse.setExist(true); + return uploadResponse; + } + return uploadResponse; + } + + public UploadResponse checkChunk(String ossPath, Path prePth, UploadApiParamDTO upload) { + UploadResponse uploadResponse = new UploadResponse(); + IOssService ossService = OssConfigService.getOssStorageService(ossPath); + String objectName = getObjectName(prePth, ossPath, false); + String uploadId = ossService.getUploadId(objectName); + // 已上传的分片号 + List chunks = LIST_PARTS_CACHE.get(uploadId, key -> ossService.getListParts(objectName, uploadId)); + // 返回已存在的分片 + uploadResponse.setResume(chunks); + assert chunks != null; + if (upload.getTotalChunks() == chunks.size()) { + // 文件不存在,并且已经上传了所有的分片,则合并保存文件 + ossService.completeMultipartUpload(objectName, uploadId, upload.getTotalSize()); + // 清除缓存 + removeListPartsCache(uploadId); + notifyCreateFile(upload.getUsername(), objectName, getOssRootFolderName(ossPath)); + FileDocument fileDocument = getFileDocumentByOssPath(ossPath, upload, objectName); + afterUploadComplete(objectName, ossPath, fileDocument); + } + uploadResponse.setUpload(true); + return uploadResponse; + } + + private static FileDocument getFileDocumentByOssPath(String ossPath, UploadApiParamDTO upload, String objectName) { + FileInfo fileInfo = new FileInfo(objectName, upload.getIdentifier(), upload.getTotalSize(), new Date()); + return fileInfo.toFileDocument(ossPath, upload.getUserId()); + } + + public UploadResponse mergeFile(String ossPath, Path prePth, UploadApiParamDTO upload) { + UploadResponse uploadResponse = new UploadResponse(); + + IOssService ossService = OssConfigService.getOssStorageService(ossPath); + String objectName = getObjectName(prePth, ossPath, false); + String uploadId = ossService.getUploadId(objectName); + ossService.completeMultipartUpload(objectName, ossService.getUploadId(objectName), upload.getTotalSize()); + // 清除缓存 + removeListPartsCache(uploadId); + notifyCreateFile(upload.getUsername(), objectName, getOssRootFolderName(ossPath)); + FileDocument fileDocument = getFileDocumentByOssPath(ossPath, upload, objectName); + afterUploadComplete(objectName, ossPath, fileDocument); + uploadResponse.setUpload(true); + return uploadResponse; + } + + /** + * 清除分片缓存 + * + * @param uploadId uploadId + */ + private static void removeListPartsCache(String uploadId) { + LIST_PARTS_CACHE.invalidate(uploadId); + } + + public UploadResponse upload(String ossPath, Path prePth, UploadApiParamDTO upload) throws IOException { + UploadResponse uploadResponse = new UploadResponse(); + + IOssService ossService = OssConfigService.getOssStorageService(ossPath); + String objectName = getObjectName(prePth, ossPath, false); + + int currentChunkSize = upload.getCurrentChunkSize(); + long totalSize = upload.getTotalSize(); + MultipartFile file = upload.getFile(); + if (currentChunkSize == totalSize) { + // 没有分片,直接存 + try (InputStream inputStream = file.getInputStream()) { + ossService.uploadFile(inputStream, objectName, currentChunkSize); + } + notifyCreateFile(upload.getUsername(), objectName, getOssRootFolderName(ossPath)); + FileDocument fileDocument = getFileDocumentByOssPath(ossPath, upload, objectName); + afterUploadComplete(objectName, ossPath, fileDocument); + } else { + // 上传分片 + String uploadId = ossService.getUploadId(objectName); + + // 已上传的分片号列表 + CopyOnWriteArrayList chunks = LIST_PARTS_CACHE.get(uploadId, key -> ossService.getListParts(objectName, uploadId)); + + // 上传本次的分片 + boolean success = ossService.uploadPart(file.getInputStream(), objectName, currentChunkSize, upload.getChunkNumber(), uploadId); + if (!success) { + // 上传分片失败 + uploadResponse.setUpload(false); + return uploadResponse; + } + + // 加入缓存 + if (chunks != null) { + chunks.add(upload.getChunkNumber()); + LIST_PARTS_CACHE.put(uploadId, chunks); + // 检测是否已经上传完了所有分片,上传完了则需要合并 + if (chunks.size() == upload.getTotalChunks()) { + uploadResponse.setMerge(true); + } + } + } + uploadResponse.setUpload(true); + return uploadResponse; + } + + public String mkdir(String ossPath, Path prePth) { + IOssService ossService = OssConfigService.getOssStorageService(ossPath); + String objectName = getObjectName(prePth, ossPath, true); + ossService.mkdir(objectName); + String username = getUsernameByOssPath(ossPath); + notifyCreateFile(username, objectName, getOssRootFolderName(ossPath)); + afterUploadComplete(objectName, ossPath, null); + return ossPath.substring(1) + MyWebdavServlet.PATH_DELIMITER + objectName; + } + + public void rename(String ossPath, String pathName, String newFileName, String operator) { + boolean isFolder = pathName.endsWith("/"); + IOssService ossService = OssConfigService.getOssStorageService(ossPath); + String objectName = pathName.substring(ossPath.length()); + Path newFilePath = Paths.get(Paths.get(pathName).getParent().toString(), newFileName); + String destinationObjectName; + if (!isFolder) { + destinationObjectName = getObjectName(newFilePath, ossPath, false); + } else { + destinationObjectName = getObjectName(newFilePath, ossPath, true); + } + // 复制 + List copiedList = ossService.copyObject(objectName, destinationObjectName); + if (!copiedList.isEmpty()) { + // 删除 + ossService.delete(objectName); + } else { + throw new CommonException(ExceptionType.SYSTEM_ERROR.getCode(), "重命名失败"); + } + // 修改历史文件中的filename + String username = getUsernameByOssPath(ossPath); + String sourceFileId = getFileId(getOssRootFolderName(ossPath), objectName, username); + String destinationFileId = getFileId(getOssRootFolderName(ossPath), destinationObjectName, username); + fileVersionService.rename(sourceFileId, destinationFileId); + // 通知文件创建成功 + notifyCreateFile(getUsernameByOssPath(ossPath), objectName, getOssRootFolderName(ossPath)); + String rootFolderName = getOssRootFolderName(ossPath); + Path fromPath = Paths.get(rootFolderName, objectName); + Path toPath = Paths.get(rootFolderName, destinationObjectName); + commonFileService.pushMessageOperationFileSuccess(fromPath.toString(), toPath.toString(), operator, "重命名"); + renameAfter(ossPath, pathName, isFolder, objectName, newFilePath); + } + + private void renameAfter(String ossPath, String pathName, boolean isFolder, String objectName, Path newFilePath) { + // 删除临时文件,如果有的话 + deleteTemp(ossPath, objectName); + // 检查该目录是否有其他依赖的缓存等等。。 + Query query = new Query(); + query.addCriteria(Criteria.where("_id").regex("^" + pathName)); + List fileDocumentList = mongoTemplate.findAllAndRemove(query, FileDocument.class); + String newFullPathName = newFilePath.toString(); + if (isFolder) { + newFullPathName += MyWebdavServlet.PATH_DELIMITER; + } + // 修改关联的分享文件 + String username = getUsernameByOssPath(ossPath); + String newPathName = newFullPathName.substring(username.length()); + String oldPath = pathName.substring(username.length()); + List newList = new ArrayList<>(); + for (FileDocument fileDocument : fileDocumentList) { + String oldId = fileDocument.getId(); + String newId = CharSequenceUtil.replace(oldId, pathName, newFullPathName); + String newPath = CharSequenceUtil.replace(fileDocument.getPath(), oldPath, newPathName); + fileDocument.setId(newId); + fileDocument.setPath(newPath); + if (pathName.endsWith(oldId)) { + fileDocument.setName(newFilePath.getFileName().toString()); + } + newList.add(fileDocument); + } + if (!newList.isEmpty()) { + mongoTemplate.insertAll(newList); + } + // 修改关联的分享配置 + Query shareQuery = new Query(); + shareQuery.addCriteria(Criteria.where(Constants.FILE_ID).regex("^" + pathName)); + List shareDOList = mongoTemplate.findAllAndRemove(shareQuery, ShareDO.class); + List newShareDOList = new ArrayList<>(); + for (ShareDO shareDO : shareDOList) { + String oldFileId = shareDO.getFileId(); + String newFileId = CharSequenceUtil.replace(oldFileId, pathName, newFullPathName); + shareDO.setFileId(newFileId); + if (pathName.endsWith(oldFileId)) { + shareDO.setFileName(newFilePath.getFileName().toString()); + } + newShareDOList.add(shareDO); + } + if (!newShareDOList.isEmpty()) { + mongoTemplate.insertAll(newShareDOList); + } + // 修改关联的挂载文件 + Query mountQuery = new Query(); + mountQuery.addCriteria(Criteria.where("mountFileId").regex("^" + pathName)); + List mountFileDocumentList = mongoTemplate.findAllAndRemove(mountQuery, FileDocument.class); + List newMountFileDocumentList = new ArrayList<>(); + for (FileDocument fileDocument : mountFileDocumentList) { + String oldMountFileId = fileDocument.getMountFileId(); + String newMountFileId = CharSequenceUtil.replace(oldMountFileId, pathName, newFullPathName); + fileDocument.setMountFileId(newMountFileId); + if (pathName.endsWith(oldMountFileId)) { + fileDocument.setName(newFilePath.getFileName().toString()); + } + newMountFileDocumentList.add(fileDocument); + } + if (!newMountFileDocumentList.isEmpty()) { + mongoTemplate.insertAll(newMountFileDocumentList); + } + } + + /** + * 删除临时文件,如果有的话 + * + * @param ossPath ossPath + * @param objectName objectName + */ + private void deleteTemp(String ossPath, String objectName) { + Path tempFilePath = Paths.get(fileProperties.getRootDir(), ossPath, objectName); + if (Files.exists(tempFilePath)) { + PathUtil.del(tempFilePath); + } + } + + public void delete(String ossPath, List pathNameList) { + IOssService ossService = OssConfigService.getOssStorageService(ossPath); + for (String pathName : pathNameList) { + String objectName = pathName.substring(ossPath.length()); + // 删除对象 + if (ossService.delete(objectName)) { + // 删除文件历史版本,如果有的话 + deleteHistory(ossPath, objectName); + notifyDeleteFile(ossPath, objectName); + // 删除临时文件,如果有的话 + deleteTemp(ossPath, objectName); + // 删除依赖,如果有的话 + Query query = new Query(); + query.addCriteria(Criteria.where("_id").regex("^" + ReUtil.escape(pathName))); + List fileDocumentList = mongoTemplate.findAllAndRemove(query, FileDocument.class); + Query shareQuery = new Query(); + List fileIds = fileDocumentList.stream().map(FileBase::getId).toList(); + shareQuery.addCriteria(Criteria.where(Constants.FILE_ID).in(fileIds)); + mongoTemplate.remove(shareQuery, ShareDO.class); + } + } + } + + private void deleteHistory(String ossPath, String objectName) { + String username = getUsernameByOssPath(ossPath); + String fileId = getFileId(getOssRootFolderName(ossPath), objectName, username); + fileVersionService.deleteAll(fileId); + } + + public ResponseEntity thumbnail(String ossPath, String pathName) { + Optional file = Optional.empty(); + FileDocument fileDocument = mongoTemplate.findById(pathName, FileDocument.class); + if (fileDocument != null && fileDocument.getContent() != null) { + file = Optional.of(fileDocument); + } else { + IOssService ossService = OssConfigService.getOssStorageService(ossPath); + String objectName = pathName.substring(ossPath.length()); + String tempFileName = SecureUtil.md5(pathName) + Paths.get(pathName).getFileName(); + File tempFile = Paths.get(fileProperties.getRootDir(), fileProperties.getChunkFileDir(), tempFileName).toFile(); + try { + FileInfo fileInfo = ossService.getThumbnail(objectName, tempFile, 256); + String username = getUsernameByOssPath(ossPath); + FileDocument thumbnailDoc = fileInfo.toFileDocument(ossPath, userService.getUserIdByUserName(username)); + thumbnailDoc.setContent(FileUtil.readBytes(tempFile)); + if (fileDocument != null) { + Query query = new Query().addCriteria(Criteria.where("_id").is(pathName)); + Update update = new Update(); + update.set("content", thumbnailDoc.getContent()); + mongoTemplate.upsert(query, update, FileDocument.class); + } else { + mongoTemplate.save(thumbnailDoc); + } + if (thumbnailDoc.getContent() != null) { + file = Optional.of(thumbnailDoc); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } finally { + if (tempFile.exists()) { + FileUtil.del(tempFile); + } + } + } + return file.map(commonFileService::getObjectResponseEntity).orElseGet(() -> ResponseEntity.status(HttpStatus.NOT_FOUND).body("找不到该文件")); + } + + public FileIntroVO addFile(String ossPath, Boolean isFolder, Path prePth) { + IOssService ossService = OssConfigService.getOssStorageService(ossPath); + String objectName = getObjectName(prePth, ossPath, isFolder); + Path tempFileAbsolutePath = Paths.get(fileProperties.getRootDir(), prePth.toString()); + if (ossService.doesObjectExist(objectName)) { + throw new CommonException(ExceptionType.WARNING.getCode(), "该文件已存在"); + } + FileInfo fileInfo; + BucketInfo bucketInfo = CaffeineUtil.getOssDiameterPrefixCache(ossPath); + Path path = Paths.get(ossPath); + try { + if (BooleanUtil.isTrue(isFolder)) { + ossService.mkdir(objectName); + fileInfo = BaseOssService.newFileInfo(objectName, bucketInfo.getBucketName()); + } else { + Path tempFileAbsoluteFolderPath = tempFileAbsolutePath.getParent(); + PathUtil.mkdir(tempFileAbsoluteFolderPath); + if (!Files.exists(tempFileAbsolutePath)) { + Files.createFile(tempFileAbsolutePath); + } + ossService.uploadFile(tempFileAbsolutePath, objectName); + fileInfo = BaseOssService.newFileInfo(objectName, bucketInfo.getBucketName(), tempFileAbsolutePath.toFile()); + Files.delete(tempFileAbsolutePath); + } + notifyCreateFile(path.subpath(0, 1).toString(), objectName, bucketInfo.getFolderName()); + String username = getUsernameByOssPath(ossPath); + FileDocument fileDocument = fileInfo.toFileDocument(ossPath, userService.getUserIdByUserName(username)); + afterUploadComplete(objectName, ossPath, fileDocument); + } catch (IOException e) { + log.error(e.getMessage(), e); + throw new CommonException(ExceptionType.SYSTEM_ERROR.getCode(), "新建文件失败"); + } + String userId = userService.getUserIdByUserName(path.subpath(0, 1).toString()); + return fileInfo.toFileIntroVO(ossPath, userId); + } + + public void putObjectText(String ossPath, Path prePth, String contentText) { + IOssService ossService = OssConfigService.getOssStorageService(ossPath); + String objectName = getObjectName(prePth, ossPath, false); + + try (AbstractOssObject abstractOssObject = ossService.getAbstractOssObject(objectName)) { + // 修改文件之前保存历史版本 + String username = getUsernameByOssPath(ossPath); + if (!username.equals(userLoginHolder.getUsername())) { + throw new CommonException(ExceptionType.PERMISSION_DENIED); + } + String fileId = getFileId(getOssRootFolderName(ossPath), objectName, username); + fileVersionService.saveFileVersion(abstractOssObject, fileId); + } catch (IOException e) { + log.error(e.getMessage(), e); + } + + InputStream inputStream = new ByteArrayInputStream(CharSequenceUtil.bytes(contentText, StandardCharsets.UTF_8)); + ossService.write(inputStream, ossPath, objectName); + notifyUpdateFile(ossPath, objectName, contentText.length()); + } + + public void download(String ossPath, Path prePth, HttpServletRequest request, HttpServletResponse response, String downloadFilename) { + IOssService ossService = OssConfigService.getOssStorageService(ossPath); + String objectName = getObjectName(prePth, ossPath, false); + try (AbstractOssObject abstractOssObject = ossService.getAbstractOssObject(objectName); + InputStream inputStream = abstractOssObject.getInputStream(); + InputStream inStream = new BufferedInputStream(inputStream, 2048); + OutputStream outputStream = response.getOutputStream()) { + FileInfo fileInfo = ossService.getFileInfo(objectName); + String encodedFilename = URLEncoder.encode(fileInfo.getName(), StandardCharsets.UTF_8); + if (CharSequenceUtil.isNotBlank(downloadFilename)) { + response.setHeader(HttpHeaders.CONTENT_DISPOSITION, "attachment;filename=\"" + downloadFilename + "\""); + } + String suffix = FileUtil.getSuffix(encodedFilename); + // 设置响应头 + response.setContentType(FileContentTypeUtils.getContentType(suffix)); + long fileSize = abstractOssObject.getContentLength(); + String range = request.getHeader(HttpHeaders.RANGE); + if (CharSequenceUtil.isNotBlank(range)) { + // 处理 Range 请求 + handlerRange(response, ossService, objectName, outputStream, fileSize, range); + } else { + response.setStatus(HttpServletResponse.SC_OK); + response.setContentLengthLong(fileSize); + IoUtil.copy(inStream, outputStream); + } + } catch (ClientAbortException ignored) { + // ignored error + } catch (IOException e) { + log.error(e.getMessage()); + } + } + + /** + * 处理 Range 请求 + * + * @param response HttpServletResponse + * @param ossService IOssService + * @param objectName objectName + * @param outputStream response OutputStream + * @param fileSize 文件总大小 + * @param range header range 的 值 + */ + private void handlerRange(HttpServletResponse response, IOssService ossService, String objectName, OutputStream outputStream, long fileSize, String range) { + long[] ranges = parseRange(range, fileSize); + long start = ranges[0]; + long end = ranges[1] == -1 ? fileSize - 1 : ranges[1]; + try (AbstractOssObject rangeObject = ossService.getAbstractOssObject(objectName, start, end); + InputStream rangeIn = rangeObject.getInputStream()) { + response.setStatus(HttpServletResponse.SC_PARTIAL_CONTENT); + String contentRange = "bytes " + start + "-" + end + "/" + fileSize; + response.setHeader(HttpHeaders.CONTENT_RANGE, contentRange); + long length = end - start + 1; + response.setContentLengthLong(length); + IoUtil.copy(rangeIn, outputStream); + } catch (ClientAbortException | IORuntimeException ignored) { + // ignored error + } catch (Exception e) { + log.error(e.getMessage(), e); + } + } + + private long[] parseRange(String range, long contentLength) { + String[] parts = range.substring("bytes=".length()).split("-"); + long start = parseLong(parts[0], 0L); + long end = parseLong(parts.length > 1 ? parts[1] : "", contentLength - 1); + if (end < start) { + end = start; + } + return new long[]{start, end}; + } + + private long parseLong(String value, long defaultValue) { + if (value == null || value.isEmpty()) { + return defaultValue; + } + try { + return Long.parseLong(value); + } catch (NumberFormatException e) { + return defaultValue; + } + } + + public FileDocument getFileDocumentByOssPath(String ossPath, String pathName) { + IOssService ossService = OssConfigService.getOssStorageService(ossPath); + String objectName = pathName.substring(ossPath.length()); + try (AbstractOssObject abstractOssObject = ossService.getAbstractOssObject(objectName)) { + if (abstractOssObject == null) { + return null; + } + FileInfo fileInfo = abstractOssObject.getFileInfo(); + String username = getUsernameByOssPath(ossPath); + String userId = userService.getUserIdByUserName(username); + return fileInfo.toFileDocument(ossPath, userId); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + return null; + } + + /** + * 设置ossPath所关联的FileDocument + * + * @param userId userId + * @param fileId fileId 例如: jmal/tencent/新建文件夹/屏幕录制.2020-03-04 16_36_03.gif + * @param objectName objectName + * @param ossPath ossPath 例如: /jmal/tencent + * @param ossRootPath ossRootPath 例如: tencent + */ + public void setOssPath(String userId, String fileId, String objectName, String ossPath, boolean ossRootPath) { + if (objectName.endsWith("/") || objectName.isEmpty()) { + // 设置其下的所有文件 + IOssService ossService = OssConfigService.getOssStorageService(ossPath); + List fileDocumentListOld = removeOssPathFile(userId, fileId, ossPath, ossRootPath, false); + + List list = ossService.getAllObjectsWithPrefix(objectName); + List fileDocumentList = list.parallelStream().map(fileInfo -> fileInfo.toFileDocument(ossPath, userId)).toList(); + fileDocumentListOld.addAll(fileDocumentList); + List newFileDocumentList = fileDocumentListOld.stream().distinct().toList(); + // 插入oss目录下的共享文件 + mongoTemplate.insertAll(newFileDocumentList); + } + } + + /** + * 删除ossPath所关联的FileDocument + * + * @param userId userId + * @param fileId fileId 例如: jmal/tencent/新建文件夹/屏幕录制.2020-03-04 16_36_03.gif + * @param ossPath ossPath 例如: /jmal/tencent + * @param ossRootPath ossRootPath 例如: tencent + * @param unSetShare 移除 share 属性 + */ + public List removeOssPathFile(String userId, String fileId, String ossPath, boolean ossRootPath, boolean unSetShare) { + Query query = new Query(); + query.addCriteria(Criteria.where(IUserService.USER_ID).is(userId)); + String path; + if (ossRootPath) { + path = ossPath.substring(1); + } else { + path = fileId; + } + query.addCriteria(Criteria.where("_id").regex("^" + ReUtil.escape(path))); + List fileDocumentList = mongoTemplate.findAllAndRemove(query, FileDocument.class); + List list = new ArrayList<>(); + for (FileDocument fileDocument : fileDocumentList) { + if (unSetShare) { + // 移除 share 属性 + fileDocument.setIsShare(null); + fileDocument.setIsPrivacy(null); + fileDocument.setExpiresAt(null); + fileDocument.setExtractionCode(null); + fileDocument.setShareBase(null); + } + // 如果 favorite 和 share 属性都没有了就过滤掉 + if (BooleanUtil.isFalse(fileDocument.getIsFavorite()) && fileDocument.getIsShare() == null) { + continue; + } + list.add(fileDocument); + } + return list; + } +} diff --git a/src/main/java/com/jmal/clouddisk/oss/web/model/OssConfigDO.java b/src/main/java/com/jmal/clouddisk/oss/web/model/OssConfigDO.java new file mode 100644 index 0000000..d555e85 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/oss/web/model/OssConfigDO.java @@ -0,0 +1,53 @@ +package com.jmal.clouddisk.oss.web.model; + +import com.jmal.clouddisk.oss.OssConfigService; +import com.jmal.clouddisk.oss.PlatformOSS; +import lombok.Data; +import org.springframework.data.mongodb.core.index.CompoundIndex; +import org.springframework.data.mongodb.core.mapping.Document; +import org.springframework.security.crypto.encrypt.TextEncryptor; + +/** + * @author jmal + * @Description oss 配置 + * @date 2023/4/4 16:08 + */ +@Data +@Document(collection = OssConfigService.COLLECTION_NAME) +@CompoundIndex(name = "userId_1", def = "{'userId': 1}") +public class OssConfigDO { + private String id; + private PlatformOSS platform; + private String folderName; + private String endpoint; + private String accessKey; + private String secretKey; + private String region; + private String bucket; + private String userId; + + public OssConfigDTO toOssConfigDTO(TextEncryptor textEncryptor) { + OssConfigDTO ossConfigDTO = new OssConfigDTO(); + ossConfigDTO.setEndpoint(this.endpoint); + ossConfigDTO.setBucket(this.bucket); + ossConfigDTO.setFolderName(this.folderName); + ossConfigDTO.setPlatform(this.platform.name()); + ossConfigDTO.setRegion(this.region); + ossConfigDTO.setUserId(this.userId); + ossConfigDTO.setAccessKey(textEncryptor.decrypt(accessKey)); + ossConfigDTO.setSecretKey(textEncryptor.decrypt(secretKey)); + return ossConfigDTO; + } + + public OssConfigDTO toOssConfigDTO() { + OssConfigDTO ossConfigDTO = new OssConfigDTO(); + ossConfigDTO.setId(this.id); + ossConfigDTO.setEndpoint(this.endpoint); + ossConfigDTO.setBucket(this.bucket); + ossConfigDTO.setFolderName(this.folderName); + ossConfigDTO.setPlatform(this.platform.getKey()); + ossConfigDTO.setRegion(this.region); + ossConfigDTO.setUserId(this.userId); + return ossConfigDTO; + } +} diff --git a/src/main/java/com/jmal/clouddisk/oss/web/model/OssConfigDTO.java b/src/main/java/com/jmal/clouddisk/oss/web/model/OssConfigDTO.java new file mode 100644 index 0000000..c6457d6 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/oss/web/model/OssConfigDTO.java @@ -0,0 +1,58 @@ +package com.jmal.clouddisk.oss.web.model; + +import com.jmal.clouddisk.oss.PlatformOSS; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotNull; +import lombok.Data; +import org.springframework.security.crypto.encrypt.TextEncryptor; + +/** + * @author jmal + * @Description oss 配置 + * @date 2023/4/4 16:14 + */ +@Data +@Schema +public class OssConfigDTO { + + @NotNull(message = "platform 不能为空") + @Schema(name = "platform", title = "platform", requiredMode = Schema.RequiredMode.REQUIRED, example = "aliyun") + private String platform; + @NotNull(message = "folderName 不能为空") + @Schema(name = "folderName", title = "folderName", requiredMode = Schema.RequiredMode.REQUIRED, example = "aliyunoss") + private String folderName; + @NotNull(message = "endpoint 不能为空") + @Schema(name = "endpoint", title = "endpoint", requiredMode = Schema.RequiredMode.REQUIRED) + private String endpoint; + @NotNull(message = "accessKey 不能为空") + @Schema(name = "accessKey", title = "accessKey", requiredMode = Schema.RequiredMode.REQUIRED, example = " ") + private String accessKey; + @NotNull(message = "secretKey 不能为空") + @Schema(name = "secretKey", title = "secretKey", requiredMode = Schema.RequiredMode.REQUIRED, example = " ") + private String secretKey; + @Schema(name = "region", title = "region", example = "region") + private String region; + @NotNull(message = "bucket 不能为空") + @Schema(name = "bucket", title = "bucket", requiredMode = Schema.RequiredMode.REQUIRED, example = "bucket name") + private String bucket; + @NotNull(message = "userId 不能为空") + @Schema(name = "userId", title = "userId", requiredMode = Schema.RequiredMode.REQUIRED, example = "60388f6ca45a48cbb3248f7e") + private String userId; + @Schema(hidden = true) + private String username; + @Schema(hidden = true) + private String id; + + public OssConfigDO toOssConfigDO(TextEncryptor textEncryptor) { + OssConfigDO ossConfigDO = new OssConfigDO(); + ossConfigDO.setEndpoint(this.endpoint); + ossConfigDO.setPlatform(PlatformOSS.getPlatform(this.platform)); + ossConfigDO.setFolderName(this.folderName); + ossConfigDO.setBucket(this.bucket); + ossConfigDO.setRegion(this.region); + ossConfigDO.setUserId(this.userId); + ossConfigDO.setAccessKey(textEncryptor.encrypt(accessKey)); + ossConfigDO.setSecretKey(textEncryptor.encrypt(secretKey)); + return ossConfigDO; + } +} diff --git a/src/main/java/com/jmal/clouddisk/repository/DataSource.java b/src/main/java/com/jmal/clouddisk/repository/DataSource.java new file mode 100644 index 0000000..d7d8221 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/repository/DataSource.java @@ -0,0 +1,21 @@ +package com.jmal.clouddisk.repository; + +/*** + * @Description 数据源 + * @author jmal + * @Date 2020/10/13 10:49 上午 + */ +public enum DataSource { + /** + * mysql + */ + mysql, + /** + * h2 + */ + h2, + /** + * mongodb + */ + mongodb +} diff --git a/src/main/java/com/jmal/clouddisk/repository/IAuthDAO.java b/src/main/java/com/jmal/clouddisk/repository/IAuthDAO.java new file mode 100644 index 0000000..4ab8d14 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/repository/IAuthDAO.java @@ -0,0 +1,59 @@ +package com.jmal.clouddisk.repository; + +import com.jmal.clouddisk.model.UserAccessTokenDO; +import com.jmal.clouddisk.model.UserAccessTokenDTO; +import com.jmal.clouddisk.model.rbac.ConsumerDO; + +import java.util.List; + +/** + * IAuthDAO + * @author jmal + */ +public interface IAuthDAO { + + /** + * 数据源 + * @return DataSource + */ + DataSource getDataSource(); + + /*** + * 根据AccessToken获取用户名 + * @param accessToken accessToken + * @return UserAccessTokenDO + */ + UserAccessTokenDO getUserNameByAccessToken(String accessToken); + + /*** + * 创建accessToken + * @param userAccessTokenDO userAccessTokenDO + */ + void generateAccessToken(UserAccessTokenDO userAccessTokenDO); + + /*** + * 删除用户的token + * @param userList userList + */ + void deleteAllByUser(List userList); + + /*** + * accessToken列表 + * @param username 用户名 + * @return List + */ + List accessTokenList(String username); + + /** + * 更新accessToken最近访问时间 + * @param username 用户名 + * @param token token + */ + void updateAccessToken(String username, String token); + + /*** + * 删除accessToken + * @param id accessTokenId + */ + void deleteAccessToken(String id); +} diff --git a/src/main/java/com/jmal/clouddisk/repository/impl/AuthDAOImpl.java b/src/main/java/com/jmal/clouddisk/repository/impl/AuthDAOImpl.java new file mode 100644 index 0000000..29d7e3a --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/repository/impl/AuthDAOImpl.java @@ -0,0 +1,108 @@ +package com.jmal.clouddisk.repository.impl; + +import cn.hutool.core.text.CharSequenceUtil; +import com.jmal.clouddisk.exception.CommonException; +import com.jmal.clouddisk.exception.ExceptionType; +import com.jmal.clouddisk.model.UserAccessTokenDO; +import com.jmal.clouddisk.model.UserAccessTokenDTO; +import com.jmal.clouddisk.model.rbac.ConsumerDO; +import com.jmal.clouddisk.repository.DataSource; +import com.jmal.clouddisk.repository.IAuthDAO; +import com.jmal.clouddisk.util.TimeUntils; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.data.mongodb.core.query.Update; +import org.springframework.stereotype.Repository; + +import java.time.LocalDateTime; +import java.util.List; +import java.util.stream.Collectors; + +/** + * @Description 用户认证 + * @author jmal + * @Date 2020/10/13 10:49 上午 + */ +@Repository +public class AuthDAOImpl implements IAuthDAO { + + private static final String USERNAME = "username"; + + private static final String ACCESS_TOKEN = "accessToken"; + + private static final String ACCESS_TOKEN_COLLECTION_NAME = "access_token"; + + @Autowired + private MongoTemplate mongoTemplate; + + @Override + public DataSource getDataSource() { + return DataSource.mongodb; + } + + @Override + public UserAccessTokenDO getUserNameByAccessToken(String accessToken) { + Query query = new Query(); + query.addCriteria(Criteria.where(ACCESS_TOKEN).is(accessToken)); + return mongoTemplate.findOne(query, UserAccessTokenDO.class, ACCESS_TOKEN_COLLECTION_NAME); + } + + @Override + public void generateAccessToken(UserAccessTokenDO userAccessTokenDO) { + if(CharSequenceUtil.isBlank(userAccessTokenDO.getName())){ + throw new CommonException(ExceptionType.MISSING_PARAMETERS.getCode(), ExceptionType.MISSING_PARAMETERS.getMsg()); + } + Query query = new Query(); + query.addCriteria(Criteria.where("name").is(userAccessTokenDO.getName())); + if(mongoTemplate.exists(query, ACCESS_TOKEN_COLLECTION_NAME)){ + throw new CommonException(ExceptionType.EXISTING_RESOURCES.getCode(), "该名称已存在"); + } + userAccessTokenDO.setCreateTime(LocalDateTime.now(TimeUntils.ZONE_ID)); + mongoTemplate.save(userAccessTokenDO, ACCESS_TOKEN_COLLECTION_NAME); + } + + @Override + public void deleteAllByUser(List userList) { + if(userList == null || userList.isEmpty()){ + return; + } + userList.forEach(user -> { + String username = user.getUsername(); + Query query = new Query(); + query.addCriteria(Criteria.where(USERNAME).is(username)); + mongoTemplate.remove(query, ACCESS_TOKEN_COLLECTION_NAME); + }); + } + + @Override + public List accessTokenList(String username) { + Query query = new Query(); + query.addCriteria(Criteria.where(USERNAME).is(username)); + List userAccessTokenDOList = mongoTemplate.find(query, UserAccessTokenDO.class, ACCESS_TOKEN_COLLECTION_NAME); + return userAccessTokenDOList.stream().map(userAccessTokenDO -> { + UserAccessTokenDTO userAccessTokenDTO = new UserAccessTokenDTO(); + BeanUtils.copyProperties(userAccessTokenDO, userAccessTokenDTO); + return userAccessTokenDTO; + }).collect(Collectors.toList()); + } + + @Override + public void updateAccessToken(String username, String token) { + Query query = new Query(); + query.addCriteria(Criteria.where(USERNAME).is(username)); + query.addCriteria(Criteria.where(ACCESS_TOKEN).is(token)); + Update update = new Update(); + update.set("lastActiveTime", LocalDateTime.now(TimeUntils.ZONE_ID)); + mongoTemplate.upsert(query, update,ACCESS_TOKEN_COLLECTION_NAME); + } + + @Override + public void deleteAccessToken(String id) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(id)); + mongoTemplate.remove(query, ACCESS_TOKEN_COLLECTION_NAME); + } +} diff --git a/src/main/java/com/jmal/clouddisk/service/Constants.java b/src/main/java/com/jmal/clouddisk/service/Constants.java new file mode 100644 index 0000000..54473bf --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/service/Constants.java @@ -0,0 +1,98 @@ +package com.jmal.clouddisk.service; + +public class Constants { + + public static final String NEEDS_ETAG_UPDATE_FIELD = "needsEtagUpdate"; + public static final String LAST_ETAG_UPDATE_REQUEST_AT_FIELD = "lastEtagUpdateRequestAt"; + public static final String ETAG_UPDATE_FAILED_ATTEMPTS_FIELD = "etagUpdateFailedAttempts"; + public static final String LAST_ETAG_UPDATE_ERROR_FIELD = "lastEtagUpdateError"; + + private Constants() { } + + public static final String CONTENT_TYPE = "contentType"; + public static final String SUFFIX = "suffix"; + public static final String RELEASE = "release"; + public static final String ALONE_PAGE = "alonePage"; + public static final String DRAFT = "draft"; + public static final String IS_FOLDER = "isFolder"; + public static final String IS_FAVORITE = "isFavorite"; + public static final String TAG_IDS = "tagIds"; + public static final String TOTAL_SIZE = "totalSize"; //totalSize + public static final String ETAG = "etag"; + public static final String PATH_FIELD = "path"; + public static final String FILENAME_FIELD = "name"; + + + public static final String REGION_DEFAULT = "0"; + public static final String EXTRACTION_CODE = "extractionCode"; + public static final String IS_PRIVACY = "isPrivacy"; + public static final String EXPIRE_DATE = "expireDate"; + public static final String OPERATION_PERMISSION_LIST = "operationPermissionList"; + public static final String SHARE_ID = "shareId"; + public static final String FATHER_SHARE_ID = "fatherShareId"; + public static final String SHORT_ID = "shortId"; + public static final String IS_SHARE = "isShare"; + public static final String SHARE_BASE = "shareBase"; + public static final String SUB_SHARE = "subShare"; + + public static final String EXPIRES_AT = "expiresAt"; + + public static final String SHARE_TOKEN = "share-token"; + + public static final String LINK_FAILED = "该链接已失效"; + + public static final String AUDIO = "audio"; + public static final String VIDEO = "video"; + + public static final String FFMPEG = "ffmpeg"; + + public static final String OCR_LITE_ONNX = "OcrLiteOnnx"; + + public static final String HEIF_CONVERT = "heif-convert"; + + public static final String DOCUMENT = "document"; + + public static final String OTHER = "other"; + + public static final String CONTENT_TYPE_IMAGE = "image"; + public static final String CONTENT_TYPE_MARK_DOWN = "text/markdown"; + public static final String CONTENT_TYPE_WEBP = "image/webp"; + public static final String SUFFIX_WEBP = "webp"; + public static final String POINT_SUFFIX_WEBP = ".webp"; + + public static final String CREATE_TIME = "createTime"; + public static final String UPLOAD_DATE = "uploadDate"; + + public static final String UPDATE_DATE = "updateDate"; + + public static final String COPY_EXISTS_FILE = "所选目录已存在该文件/夹!"; + + public static final String UNKNOWN_ERROR = "未知错误"; + + public static final String FILE_PATH = "filepath"; + + public static final String FILENAME = "filename"; + + public static final String FILE_ID = "fileId"; + + public static final String SIZE = "size"; + + public static final String DELETE_FILE = "deleteFile"; + + public static final String UPDATE_FILE = "updateFile"; + + public static final String CREATE_FILE = "createFile"; + + public static final String OPERATION_FILE = "operationFile"; + + public static final String OPERATION_TIPS = "operationTips"; + + public static final String UPLOADER_CHUNK_SIZE = "uploaderChunkSize"; + + public static final int OSS_CHUNK_SIZE = 5 * 1024 * 1024; + + public static final int LOCAL_CHUNK_SIZE = 1024 * 1024; + + public static final String MXWEB_SUFFIX = ".mxweb"; + +} diff --git a/src/main/java/com/jmal/clouddisk/service/IAuthService.java b/src/main/java/com/jmal/clouddisk/service/IAuthService.java new file mode 100644 index 0000000..f1cae91 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/service/IAuthService.java @@ -0,0 +1,70 @@ +package com.jmal.clouddisk.service; + +import com.jmal.clouddisk.model.LdapConfigDTO; +import com.jmal.clouddisk.model.rbac.ConsumerDTO; +import com.jmal.clouddisk.util.ResponseResult; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.ldap.core.LdapTemplate; + +/** + * IAuthService + * + * @author jmal + */ +public interface IAuthService { + + /** + * 登录 + * @param request HttpServletRequest + * @param response HttpServletResponse + * @param userDTO ConsumerDTO + * @return ResponseResult + */ + ResponseResult login(HttpServletRequest request, HttpServletResponse response, ConsumerDTO userDTO); + + /** + * 验证TOTP码 + * @param request HttpServletRequest + * @param response HttpServletResponse + * @param consumerDTO ConsumerDTO + * @return ResponseResult + */ + ResponseResult verifyTotp(HttpServletRequest request, HttpServletResponse response, ConsumerDTO consumerDTO); + + /** + * 登出 + * @param token token + * @param response HttpServletResponse + * @return ResponseResult + */ + ResponseResult logout(String token, HttpServletResponse response); + + /** + * 检验旧密码 + * @param userId userId + * @param password password + * @return ResponseResult + */ + ResponseResult validOldPass(String userId, String password); + + /** + * 更新ldap配置 + * @param ldapConfigDTO ldapConfigDTO + * @return ResponseResult + */ + ResponseResult updateLdapConfig(LdapConfigDTO ldapConfigDTO); + + /** + * 测试ldap连接配置 + * @param ldapConfigDTO ldapConfigDTO + * @return ResponseResult + */ + LdapTemplate testLdapConfig(LdapConfigDTO ldapConfigDTO); + + /** + * 获取ldap配置 + * @return LdapConfigDTO + */ + LdapConfigDTO loadLdapConfig(); +} diff --git a/src/main/java/com/jmal/clouddisk/service/IFileService.java b/src/main/java/com/jmal/clouddisk/service/IFileService.java new file mode 100644 index 0000000..7c23539 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/service/IFileService.java @@ -0,0 +1,454 @@ +package com.jmal.clouddisk.service; + +import com.jmal.clouddisk.exception.CommonException; +import com.jmal.clouddisk.model.*; +import com.jmal.clouddisk.model.rbac.ConsumerDO; +import com.jmal.clouddisk.util.ResponseResult; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.http.ResponseEntity; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.servlet.mvc.method.annotation.StreamingResponseBody; + +import java.io.File; +import java.io.IOException; +import java.util.List; +import java.util.Optional; + +/** + * IFileService + * + * @author jmal + */ +public interface IFileService { + + /** + * 获取文件信息 + * @param id 文件id + * @return FileDocument + */ + Optional getById(String id, Boolean content); + + /** + * 流式读取文本文件 + * @param id 文件id + * @return StreamingResponseBody + */ + StreamingResponseBody getStreamById(String id); + + FileDocument getFileDocumentByPathAndName(String path, String name, String username); + + FileDocument getFileDocumentByPathAndName(String path, String name, String username, boolean excludeContent); + + /** + * 根据path读取simText文件 + * @param path 文件路径 + * @param username 用户名 + * @return FileDocument + * + */ + FileDocument previewTextByPath(String path, String username); + + /** + * 根据path流式读取simText文件 + * @param path 文件路径 + * @param username 用户名 + * @return StreamingResponseBody + */ + StreamingResponseBody previewTextByPathStream(String path, String username); + + /** + * 查找下级目录 + * @param upload 上传参数 + * @param fileId 文件id + * @return ResponseResult + */ + ResponseResult queryFileTree(UploadApiParamDTO upload, String fileId); + + /** + * 上传图片 + * @param file 文件 + * @param baseUrl baseUrl + * @param filepath 文件要存放的相对路径 + * @return String + */ + String imgUpload(String baseUrl, String filepath, MultipartFile file); + + /** + * 上传文件 + * @param upload 上传参数 + * @return ResponseResult + * @throws IOException IOException + */ + ResponseResult upload(UploadApiParamDTO upload) throws IOException; + + /** + * 上传文件夹 + * @param upload 上传参数 + * @return ResponseResult + * @throws CommonException CommonException + */ + ResponseResult uploadFolder(UploadApiParamDTO upload); + + /** + * 新建文件夹 + * @param upload 上传参数 + * @return ResponseResult + * @throws CommonException CommonException + */ + ResponseResult newFolder(UploadApiParamDTO upload); + + /** + * 检查文件/分片是否存在 + * @param upload 上传参数 + * @return ResponseResult + * @throws IOException IOException + */ + ResponseResult checkChunkUploaded(UploadApiParamDTO upload) throws IOException; + + /** + * 合并文件 + * @param upload 上传参数 + * @return ResponseResult + * @throws IOException IOException + */ + ResponseResult merge(UploadApiParamDTO upload) throws IOException; + + /** + * 文件列表 + * @param upload 上传参数 + * @return ResponseResult + */ + ResponseResult listFiles(UploadApiParamDTO upload); + + /** + * 用户占用空间 + * @param userId 用户id + * @return long + */ + long takeUpSpace(String userId); + + /** + * 搜索文件 + * @param upload 上传参数 + * @param keyword 关键字 + * @return ResponseResult + */ + ResponseResult> searchFile(UploadApiParamDTO upload, String keyword); + + /** + * 搜索文件并打开文件夹 + * @param upload 上传参数 + * @param id 文件id + * @param folder 父级文件夹fileId + * @return ResponseResult + */ + ResponseResult searchFileAndOpenDir(UploadApiParamDTO upload, String id, String folder); + + /** + * 收藏文件或文件夹 + * @param fileIds 文件id + * @return ResponseResult + */ + ResponseResult favorite(List fileIds); + + /** + * 取消收藏 + * @param fileIds 文件id + * @return ResponseResult + */ + ResponseResult unFavorite(List fileIds); + + /** + * 删除 + * @param username 用户名 + * @param currentDirectory 当前目录 + * @param fileIds 文件id + * @param operator 操作者 + * @param sweep 是否彻底删除 + * @return ResponseResult + */ + ResponseResult delete(String username, String currentDirectory, List fileIds, String operator, boolean sweep); + + /** + * 显示缩略图 + * + * @param id fileId + * @param showCover 是否显示封面 + * @return FileDocument + */ + Optional thumbnail(String id, Boolean showCover); + + /** + * 获取dwg文件对应的mxweb文件 + * @param id fileId + * @return FileDocument + */ + Optional getMxweb(String id); + + /** + * 显示缩略图(媒体文件封面) + * @param id fileId + * @param username username + * @return FileDocument + */ + Optional coverOfMedia(String id, String username); + + ResponseEntity getObjectResponseEntity(FileDocument fileDocument); + + /** + * 分享里的打包下载 + * @param request 请求 + * @param response 响应 + * @param fileIdList 文件id列表 + */ + void publicPackageDownload(HttpServletRequest request, HttpServletResponse response, List fileIdList); + + /** + * 打包下载 + * @param request 请求 + * @param response 响应 + * @param fileIdList 文件id列表 + */ + void packageDownload(HttpServletRequest request, HttpServletResponse response, List fileIdList); + + /** + * 重名名 + * @param newFileName 新文件名 + * @param username 用户名 + * @param id 文件id + * folder 父级文件夹fileId + * @return ResponseResult + */ + ResponseResult rename(String newFileName, String username, String id, String folder); + + /** + * 移动或复制前检查目标目录是否存在要移动或复制的文件 + * @param upload 上传参数 + * @param froms 从哪里来 + * @param to 要到哪里去 + * @return ResponseResult + */ + ResponseResult> checkMoveOrCopy(UploadApiParamDTO upload, List froms, String to) throws IOException; + + /** + * 移动文件/文件夹 + * @param upload 上传参数 + * @param froms 从哪里移动 + * @param to 移动到哪里 + * @return ResponseResult + */ + ResponseResult move(UploadApiParamDTO upload, List froms, String to) throws IOException; + + /** + * 复制文件/文件夹 + * @param upload 上传参数 + * @param froms 从哪里复制 + * @param to 复制到哪里 + * @return ResponseResult + */ + ResponseResult copy(UploadApiParamDTO upload, List froms, String to) throws IOException; + + /** + * 上传用户图片 + * @param upload 上传参数 + * @return String + */ + String uploadConsumerImage(UploadApiParamDTO upload); + + /** + * 根据文件Id获取文件信息 + * @param fileId 文件Id + * @return FileDocument + */ + FileDocument getById(String fileId); + + FileDocument getById(String fileId, boolean excludeContent); + + /** + * 创建文件/文件夹(mongodb) + * @param username 用户名 + * @param file 文件/文件夹 + * @return 文件/文件夹id + */ + String createFile(String username, File file); + + /** + * 修改文件/文件夹 + * + * @param username 用户名 + * @param file 文件/文件夹 + */ + void updateFile(String username, File file); + + /** + * 删除文件/文件夹(mongodb) + * @param username 用户名 + * @param file 文件/文件夹 + */ + void deleteFile(String username, File file); + + /** + * 解压zip文件 + * @param fileId 文件id + * @param destFileId 目标文件id + * @return ResponseResult + */ + ResponseResult unzip(String fileId, String destFileId); + + /** + * 获取目录下的文件 + * @param path 文件目录路径 + * @param username 用户名 + * @param tempDir 是否为零时目录 + * @return ResponseResult + */ + ResponseResult listFiles(String path, String username, boolean tempDir); + + /** + * 获取上级文件列表 + * @param path 文件目录路径 + * @param username 用户名 + * @return ResponseResult + */ + ResponseResult upperLevelList(String path, String username); + + /** + * 根据path删除文件/文件夹 + * @param path 文件/文件夹路径 + * @param username 用户名 + * @return ResponseResult + */ + ResponseResult delFile(String path, String username); + + /** + * 根据path重命名 + * @param newFileName 新文件名 + * @param username 用户名 + * @param path 文件/文件夹路径 + * @return ResponseResult + */ + ResponseResult renameByPath(String newFileName, String username, String path); + + /** + * 根据path添加文件 + * @param fileName 文件名 + * @param isFolder 是否为文件夹 + * @param username 用户名 + * @param parentPath 父目录路径 + * @param folder 父级文件夹fileId + * @return ResponseResult + */ + ResponseResult addFile(String fileName, Boolean isFolder, String username, String parentPath, String folder); + + /** + * 下载、预览文件 + * @param shareKey 分享文件id + * @param fileId 当前文件Id + * @param operation 操作(下载、预览等操作) + * @return forward路径 + */ + String viewFile(String shareKey, String fileId, String shareToken, String operation); + + /** + * 预览文档里的图片 + * @param relativePath 相对路径 + * @param userId 用户id + * @return forward路径 + */ + String publicViewFile(String relativePath, String userId); + + /*** + * 删除用户的所有文件 + * @param userList 用户列表 + */ + void deleteAllByUser(List userList); + + /*** + * 设置文件为分享文件 + * @param file FileDocument + * @param expiresAt 过期时间 + * @param share share + */ + void setShareFile(FileDocument file, long expiresAt, ShareDO share); + + /*** + * 取消文件的分享状态 + * @param file FileDocument + */ + void unsetShareFile(FileDocument file); + + /*** + * 设为公共文件 + * @param fileId 文件Id + */ + void setPublic(String fileId); + + /** + * 根据文件Id列表获取文件列表 + * @param fileIdList 文件Id列表 + * @return 文件列表 + */ + List listByIds(List fileIdList); + + /** + * 创建副本 + * @param fileId 文件id + * @param newFilename 新文件名(包含后缀) + * @return ResponseResult + */ + ResponseResult duplicate(String fileId, String newFilename); + + /** + * 设置标签 + * @param editTagDTO EditTagDTO + * @return ResponseResult + */ + ResponseResult setTag(EditTagDTO editTagDTO); + + /** + * 修改标签颜色或名称 + * @param tagId 标签id + * @param tagName 标签名 + * @param color 标签颜色 + * @return ResponseResult + */ + ResponseResult setTag(String tagId, String tagName, String color); + + /** + * 删除文件标签 + * @param tagId 标签id + * @return ResponseResult + */ + ResponseResult deleteTag(String tagId); + + /** + * 返回原处 + * @param fileIds 文件id列表 + * @param username 用户名 + * @return ResponseResult + */ + ResponseResult restore(List fileIds, String username); + + /** + * 清空回收站 + * @param username 用户名 + * @return ResponseResult + */ + ResponseResult clearTrash(String username); + + /** + * 彻底删除 + * @param fileIds 文件id列表 + * @param username 用户名 + * @return ResponseResult + */ + ResponseResult sweep(List fileIds, String username); + + /** + * 是否允许下载 + * @param fileIds 文件id列表 + * @return ResponseResult + */ + ResponseResult isAllowDownload(List fileIds); +} diff --git a/src/main/java/com/jmal/clouddisk/service/IFileVersionService.java b/src/main/java/com/jmal/clouddisk/service/IFileVersionService.java new file mode 100644 index 0000000..64655c5 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/service/IFileVersionService.java @@ -0,0 +1,134 @@ +package com.jmal.clouddisk.service; + +import com.jmal.clouddisk.model.FileDocument; +import com.jmal.clouddisk.model.GridFSBO; +import com.jmal.clouddisk.office.OfficeHistory; +import com.jmal.clouddisk.oss.AbstractOssObject; +import com.jmal.clouddisk.util.ResponseResult; +import org.springframework.core.io.InputStreamResource; +import org.springframework.http.ResponseEntity; +import org.springframework.web.servlet.mvc.method.annotation.StreamingResponseBody; + +import java.io.File; +import java.io.IOException; +import java.io.InputStream; +import java.util.List; + +/** + * @author jmal + * @Description 文件版本管理 + * @date 2023/5/9 17:52 + */ +public interface IFileVersionService { + + /** + * 保存当前文件为历史文件 + * @param fileUsername 文件所属用户 + * @param relativePath 文件的相对路径 + * @param userId userId + */ + void saveFileVersion(String fileUsername, String relativePath, String userId); + + /** + * 保存当前文件为历史文件 + * @param fileUsername 文件所属用户 + * @param file file 操作的文件 + * @param operator 操作用户 + */ + void asyncSaveFileVersion(String fileUsername, File file, String operator); + + /** + * 保存当前文件为历史文件 + * + * @param abstractOssObject AbstractOssObject + * @param fileId fileId + */ + void saveFileVersion(AbstractOssObject abstractOssObject, String fileId); + + /** + * 读取文件 + * @param id GridFSId + * @return InputStream + */ + InputStream readFileVersion(String id) throws IOException; + + /** + * 列出文件的历史版本 + * @param fileId 文件id + * @param pageSize 每页条数 + * @param pageIndex 页数 + * @return ResponseResult> + */ + ResponseResult> listFileVersion(String fileId, Integer pageSize, Integer pageIndex); + + /** + * 列出文件历史版本(用于office) + * @param fileId 文件id + * @param pageSize 每页条数 + * @param pageIndex 页数 + * @return ResponseResult> + */ + ResponseResult> officeListFileVersion(String fileId, Integer pageSize, Integer pageIndex); + + /** + * 列出文件的历史版本(根据filepath) + * @param path 文件相对路径 + * @param pageSize 每页条数 + * @param pageIndex 页数 + * @return ResponseResult> + */ + ResponseResult> listFileVersionByPath(String path, Integer pageSize, Integer pageIndex); + + /** + * 获取历史文件信息 + * @param gridFSId gridFSId + * @return FileDocument + */ + FileDocument getFileById(String gridFSId); + + /** + * 流式读取历史simText文件 + * @param gridFSId gridFSId + * @return StreamingResponseBody + */ + StreamingResponseBody getStreamFileById(String gridFSId); + + /** + * 删除fileId的所有历史文件 + * @param fileIds 文件id列表 + */ + void deleteAll(List fileIds); + + /** + * 删除该文件的所有历史文件 + * @param fileId 文件id列表 + */ + void deleteAll(String fileId); + + /** + * 删除指定的历史文件 + * @param id 历史文件id + */ + void deleteOne(String id); + + /** + * 重命名后的需要修改历史文件中 filename + * @param sourceFileId 修改前的filename + * @param destinationFileId 修改后的filename + */ + void rename(String sourceFileId, String destinationFileId); + + /** + * 恢复该历史版本 + * + * @param gridFSId gridFSId + */ + Long recovery(String gridFSId); + + /** + * readHistoryFile + * @param id 历史文件id + * @return ResponseEntity + */ + ResponseEntity readHistoryFile(String id); +} diff --git a/src/main/java/com/jmal/clouddisk/service/IMarkdownService.java b/src/main/java/com/jmal/clouddisk/service/IMarkdownService.java new file mode 100644 index 0000000..9b51c88 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/service/IMarkdownService.java @@ -0,0 +1,143 @@ +package com.jmal.clouddisk.service; + +import com.jmal.clouddisk.model.*; +import com.jmal.clouddisk.util.ResponseResult; + +import java.util.List; + +/** + * @author jmal + * @Description 文档 + * @Date 2020/12/11 4:36 下午 + */ +public interface IMarkdownService { + /*** + * 获取markdown + * @param articleDTO + * @return + */ + ResponseResult getMarkDownOne(ArticleDTO articleDTO); + + /*** + * 获取markdown列表 + * @param articleDTO + * @return + */ + ResponseResult> getMarkdownList(ArticleDTO articleDTO); + + /*** + * 获取文章列表 + * @param page page + * @param pageSize pageSize + * @return Page + */ + Page> getArticles(Integer page, Integer pageSize); + /*** + * 获取已发布文章的完整url + */ + Urlset getSitemapXml(); + /*** + * 获取已发布文章的完整url + */ + String getSitemapTxt(); + + /*** + * 获取独立页面列表 + * @return + */ + List getAlonePages(); + + /*** + * 获取文章列表(根据分类) + * @param page page + * @param pageSize pageSize + * @param categoryId categoryId + * @return Page + */ + Page> getArticlesByCategoryId(Integer page, Integer pageSize, String categoryId); + + /*** + * 获取文章列表(根据标签) + * @param page page + * @param pageSize pageSize + * @param tagId tagId + * @return Page + */ + Page> getArticlesByTagId(int page, int pageSize, String tagId); + + /*** + * 获取文章列表(根据关键字) + * @param page page + * @param pageSize pageSize + * @param keyword keyword + * @return Page + */ + Page> getArticlesByKeyword(int page, int pageSize, String keyword); + + /*** + * 获取文章列表(根据作者) + * @param page page + * @param pageSize pageSize + * @return Page + */ + Page> getArticlesByAuthor(int page, int pageSize, String userId); + + /*** + * 归档 + * @param page page + * @param pageSize pageSize + * @return Page + */ + Page getArchives(Integer page, Integer pageSize); + + /*** + * 根据缩略名获取markdown内容 + * @param slug + * @return + */ + ArticleVO getMarkDownContentBySlug(String slug); + + /*** + * 修改文档排序 + * @param fileId + * @return + */ + ResponseResult sortMarkdown(List fileId); + + /*** + * 编辑文档 + * @param upload + * @return + */ + ResponseResult editMarkdown(ArticleParamDTO upload); + + /*** + * 删除草稿 + * @param fileId fileId + * @param username username + * @return ResponseResult + */ + ResponseResult deleteDraft(String fileId, String username); + + /*** + * 编辑文档(根据path) + * @param upload + * @return + */ + ResponseResult editTextByPath(UploadApiParamDTO upload); + + /*** + * 上传文档里的图片 + * @param upload + * @return + */ + ResponseResult uploadMarkdownImage(UploadImageDTO upload); + + /*** + * 上传文档里链接图片 + * @param uploadImageDTO UploadImageDTO + * @return + */ + ResponseResult uploadMarkdownLinkImage(UploadImageDTO uploadImageDTO); + +} diff --git a/src/main/java/com/jmal/clouddisk/service/IShareService.java b/src/main/java/com/jmal/clouddisk/service/IShareService.java new file mode 100644 index 0000000..f3517c7 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/service/IShareService.java @@ -0,0 +1,160 @@ +package com.jmal.clouddisk.service; + +import com.jmal.clouddisk.model.ShareDO; +import com.jmal.clouddisk.model.SharerDTO; +import com.jmal.clouddisk.model.UploadApiParamDTO; +import com.jmal.clouddisk.model.rbac.ConsumerDO; +import com.jmal.clouddisk.util.ResponseResult; + +import java.util.List; +import java.util.Map; + +/** + * @Description IShareService + * @Author jmal + * @Date 2020-03-17 16:21 + */ +public interface IShareService { + + /** + * 生成分享链接 + * @param share ShareDO + * @return ResponseResult + */ + ResponseResult generateLink(ShareDO share); + + /** + * 访问分享链接 + * @param shareDO ShareDO + * @param pageIndex pageIndex + * @param pageSize pageSize + * @param showFolderSize 是否显示文件夹大小 + * @return 文件列表 + */ + ResponseResult accessShare(ShareDO shareDO, Integer pageIndex, Integer pageSize, Boolean showFolderSize); + + /** + * 获取分享信息 + * @param share 分享链接 + * @return ShareDO + */ + ShareDO getShare(String share); + + /** + * 获取分享信息 + * @param fileId 文件id + * @return ShareDO + */ + ShareDO getShareByFileId(String fileId); + + /** + * 打开目录 + * @param share ShareDO + * @param fileId fileId + * @param pageIndex pageIndex + * @param pageSize pageSize + * @param showFolderSize 是否显示文件夹大小 + * @return ResponseResult + */ + ResponseResult accessShareOpenDir(ShareDO share, String fileId, Integer pageIndex, Integer pageSize, Boolean showFolderSize); + + /** + * 获取分享列表 + * @param upload UploadApiParamDTO + * @return List + */ + List getShareList(UploadApiParamDTO upload); + + /** + * 分享列表 + * @param upload UploadApiParamDTO + * @return ResponseResult + */ + ResponseResult shareList(UploadApiParamDTO upload); + + /** + * 取消分享 + * @param shareIdList shareIdList + * @return ResponseResult + */ + ResponseResult cancelShare(String[] shareIdList); + + /** + * 删除关联分享 + * @param userList userList + */ + void deleteAllByUser(List userList); + + /*** + * 获取分享者信息 + * @param shareId shareId + * @return ResponseResult + */ + ResponseResult getSharer(String shareId); + + /** + * 验证提取码 + * @param shareId shareId + * @param shareCode 提取码 + * @return ResponseResult + */ + ResponseResult validShareCode(String shareId, String shareCode); + + /** + * 是否有子分享 + * @param shareIdList shareIdList + * @return Object + */ + boolean hasSubShare(List shareIdList); + + /** + * 文件夹下是否有子分享 + * @param fileId 文件夹id + * @return Boolean + */ + boolean folderSubShare(String fileId); + + void validShareCode(String shareToken, ShareDO shareDO); + + void validShare(String shareToken, ShareDO shareDO); + + void validShare(String shareToken, String shareId); + + /** + * 挂载文件 + * @param upload UploadApiParamDTO + */ + void mountFile(UploadApiParamDTO upload); + + /** + * 生成分享token + * @param fileId fileId + * @return ResponseResult + */ + ResponseResult generateShareToken(String fileId); + + /** + * 获取挂载文件信息 + * @param fileId fileId + * @param fileUserId fileUserId + * @return ResponseResult + */ + Map getMountFileInfo(String fileId, String fileUserId); + + /** + * 获取挂载文件夹id + * @param path 需要查询的路径 + * @param fileUsername 文件拥有者 + * @param otherFileId 其他文件id(用于查询基础分享文件夹) + * @return 文件夹id + */ + String getMountFolderId(String path, String fileUsername, String otherFileId); + + /** + * 判断是否是挂载文件 + * @param mountFileId fileId + * @param userId userId + */ + boolean existsMountFile(String mountFileId, String userId); + +} diff --git a/src/main/java/com/jmal/clouddisk/service/IUserService.java b/src/main/java/com/jmal/clouddisk/service/IUserService.java new file mode 100644 index 0000000..1838cd9 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/service/IUserService.java @@ -0,0 +1,203 @@ +package com.jmal.clouddisk.service; + +import com.jmal.clouddisk.model.query.QueryUserDTO; +import com.jmal.clouddisk.model.rbac.ConsumerDO; +import com.jmal.clouddisk.model.rbac.ConsumerDTO; +import com.jmal.clouddisk.util.ResponseResult; +import org.springframework.web.multipart.MultipartFile; + +import java.util.List; + +/** + * IConsumerService + * + * @author jmal + */ +public interface IUserService { + String USER_ID = "userId"; + String USERNAME = "username"; + String SHOW_NAME = "showName"; + /*** + * 添加用户 + * @param consumerDTO ConsumerDTO + * @return ResponseResult + */ + ConsumerDO add(ConsumerDTO consumerDTO); + + /*** + * 删除用户 + * @param idList userId列表 + * @return ResponseResult + */ + ResponseResult delete(List idList); + + /*** + * 修改用户 + * @param consumerDTO ConsumerDTO + * @param blobAvatar MultipartFile + * @return ResponseResult + */ + ResponseResult update(ConsumerDTO consumerDTO, MultipartFile blobAvatar); + + /*** + * 用户信息 + * @param userId userId + * @return ResponseResult + */ + ResponseResult userInfo(String userId); + + /*** + * 用户信息 + * @return ResponseResult + */ + ResponseResult info(); + + /*** + * 用户信息 + * @param consumerId userId + * @return ResponseResult + */ + ConsumerDO userInfoById(String consumerId); + + /*** + * 用户列表 + * @param queryDTO 查询用户的条件 + * @return ResponseResult + */ + ResponseResult> userList(QueryUserDTO queryDTO); + + /*** + * 所有用户列表 + * @return 用户列表 + */ + List userListAll(); + + /*** + * 修改用户密码 + * @param consumer ConsumerDO + * @return ResponseResult + */ + ResponseResult updatePass(ConsumerDO consumer); + + /*** + * 重置密码 + * @param consumer ConsumerDO + * @return ResponseResult + */ + ResponseResult resetPass(ConsumerDO consumer); + + /*** + * 获取用户userId + * @param username username + * @return userId + */ + String getUserIdByUserName(String username); + + /** + * 获取用户头像 + * @param username username + * @return 头像的文件id + */ + String getAvatarByUsername(String username); + + /*** + * 是否有用户 + * @return ResponseResult + */ + ResponseResult hasUser(); + + /*** + * 初始化创建管理员 + * @param consumer ConsumerDTO + * @return ResponseResult + */ + ResponseResult initialization(ConsumerDTO consumer); + + /*** + * 获取用户名 + * @param userId userId + * @return 用户名 + */ + String getUserNameById(String userId); + + /*** + * 是否禁用webp(默认开启) + * @param userId userId + * @param disabled disabled + */ + void disabledWebp(String userId, Boolean disabled); + + /*** + * 获取是否禁用webp状态 + * @param userId userId + * @return disabled + */ + boolean getDisabledWebp(String userId); + + /*** + * 获取该用户的权限信息 + * @param username username + * @return 用户权限列表 + */ + List getAuthorities(String username); + + /*** + * 获取该用户的菜单信息 + * @param userId userId + * @return 用户菜单Id列表 + */ + List getMenuIdList(String userId); + + /*** + * 根据角色获取用户名列表 + * @param roleId 角色Id + * @return 用户名列表 + */ + List getUserNameListByRole(String roleId); + + /*** + * 根据角色获取用户名列表 + * @param rolesIds 角色Id列表 + * @return 用户名列表 + */ + List getUserNameListByRole(List rolesIds); + + /*** + * 判断该用户是否为创建者 + * @param userId userId + */ + boolean getIsCreator(String userId); + + /*** + * 获取用户userId + * @param showName 用户名 + * @return userId + */ + String getUserIdByShowName(String showName); + + /** + * 根据id获取用户信息 + * @param userId userId + * @return 用户信息 + */ + ConsumerDO getUserInfoById(String userId); + + /** + * 根据username获取用户信息 + * @param username username + * @return 用户信息 + */ + ConsumerDO getUserInfoByUsername(String username); + + /** + * 是否开启mfa + * @param username username + * @return 是否开启MFA + */ + boolean isMfaEnabled(String username); + + void enableMfa(String userId, String secret); + + void disableMfa(String userId); + +} diff --git a/src/main/java/com/jmal/clouddisk/service/impl/AuthServiceImpl.java b/src/main/java/com/jmal/clouddisk/service/impl/AuthServiceImpl.java new file mode 100644 index 0000000..75bd18e --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/service/impl/AuthServiceImpl.java @@ -0,0 +1,290 @@ +package com.jmal.clouddisk.service.impl; + +import cn.hutool.core.date.LocalDateTimeUtil; +import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.core.util.BooleanUtil; +import com.jmal.clouddisk.controller.record.LoginResponse; +import com.jmal.clouddisk.exception.CommonException; +import com.jmal.clouddisk.exception.ExceptionType; +import com.jmal.clouddisk.interceptor.AuthInterceptor; +import com.jmal.clouddisk.model.LdapConfigDO; +import com.jmal.clouddisk.model.LdapConfigDTO; +import com.jmal.clouddisk.model.rbac.ConsumerDO; +import com.jmal.clouddisk.model.rbac.ConsumerDTO; +import com.jmal.clouddisk.service.IAuthService; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.util.*; +import jakarta.annotation.PostConstruct; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import lombok.RequiredArgsConstructor; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.ldap.AuthenticationException; +import org.springframework.ldap.CommunicationException; +import org.springframework.ldap.core.AttributesMapper; +import org.springframework.ldap.core.LdapTemplate; +import org.springframework.ldap.core.support.LdapContextSource; +import org.springframework.ldap.query.LdapQuery; +import org.springframework.ldap.query.LdapQueryBuilder; +import org.springframework.security.crypto.encrypt.TextEncryptor; +import org.springframework.stereotype.Service; + +import java.util.HashMap; +import java.util.Map; +import java.util.regex.Pattern; + +/** + * @author jmal + * @Description AuthServiceImpl + * @Date 2020-01-25 18:52 + */ +@Service +@RequiredArgsConstructor +public class AuthServiceImpl implements IAuthService { + + private final MongoTemplate mongoTemplate; + + private LdapTemplate ldapTemplate; + + private Boolean ldapEnable = false; + + private String ldapLoginName = "uid"; + + private final UserLoginHolder userLoginHolder; + + private final UserServiceImpl userService; + + private final MessageUtil messageUtil; + + private final TotpService totpService; + + private final TextEncryptor textEncryptor; + + public String loginError() { + return messageUtil.getMessage("login.error"); + } + + @PostConstruct + private void init() { + LdapConfigDO ldapConfigDO = mongoTemplate.findOne(new Query(), LdapConfigDO.class); + if (ldapConfigDO != null) { + ConsumerDO consumerDO = userService.getUserInfoById(ldapConfigDO.getUserId()); + LdapConfigDTO ldapConfigDTO = ldapConfigDO.toLdapConfigDTO(textEncryptor); + LdapContextSource ldapContextSource = loadLdapConfig(ldapConfigDTO); + ldapTemplate = new LdapTemplate(ldapContextSource); + ldapEnable = ldapConfigDTO.getEnable(); + ldapLoginName = ldapConfigDO.getLoginName(); + } + } + + private static LdapContextSource loadLdapConfig(LdapConfigDTO ldapConfigDTO) { + if (isNotValidDn(ldapConfigDTO.getBaseDN())) { + throw new CommonException(ExceptionType.WARNING.getCode(), "BaseDN格式错误, 应为 dc=xxx,dc=xxx"); + } + if (isNotValidDn(ldapConfigDTO.getUserDN())) { + throw new CommonException(ExceptionType.WARNING.getCode(), "账号格式错误, 应为 cn=xxx,ou=xxx,dc=xxx 或者 uid=xxx,ou=xxx,dc=xxx"); + } + LdapContextSource contextSource = new LdapContextSource(); + contextSource.setUrl("ldap://" + ldapConfigDTO.getLdapServer()); + contextSource.setUserDn(ldapConfigDTO.getUserDN()); + contextSource.setPassword(ldapConfigDTO.getPassword()); + contextSource.setBase(ldapConfigDTO.getBaseDN()); + contextSource.afterPropertiesSet(); + return contextSource; + } + + @Override + public ResponseResult login(HttpServletRequest request, HttpServletResponse response, ConsumerDTO consumerDTO) { + String password = consumerDTO.getPassword(); + ConsumerDO consumerDO = userService.getUserInfoByUsername(consumerDTO.getUsername()); + if (consumerDO == null) { + if (ldapTemplate != null && BooleanUtil.isTrue(ldapEnable)) { + // ldap登录 + return ldapLogin(request, response, consumerDTO); + } + return ResultUtil.error(loginError()); + } else { + String hashPassword = consumerDO.getPassword(); + if (!CharSequenceUtil.isBlank(password) && PasswordHash.validatePassword(password, hashPassword)) { + // 密码正确, 检查MFA状态 + if (BooleanUtil.isTrue(consumerDO.getMfaEnabled())) { + // 需要MFA验证。生成一个短期的、有范围的“预授权Token” + String mfaToken = TokenUtil.createToken(consumerDTO.getUsername(), hashPassword, LocalDateTimeUtil.now().plusMinutes(5)); + return ResultUtil.success(new LoginResponse(null, true, mfaToken)); + } else { + // 无需MFA,直接登录成功 + return loginValidSuccess(request, response, consumerDTO, consumerDO); + } + } + } + return ResultUtil.error(loginError()); + } + + @Override + public ResponseResult verifyTotp(HttpServletRequest request, HttpServletResponse response, ConsumerDTO consumerDTO) { + // 验证预授权Token + String hashPassword = userService.getHashPasswordUserName(consumerDTO.getUsername()); + String username = TokenUtil.getTokenKey(consumerDTO.getMfaToken(), hashPassword); + if (CharSequenceUtil.isBlank(username) || !consumerDTO.getUsername().equals(username)) { + return ResultUtil.error(messageUtil.getMessage("login.mfaError")); + } + // 验证TOTP码 + if (totpService.isCodeInvalid(consumerDTO.getMfaCode(), consumerDTO.getUsername())) { + return ResultUtil.error(messageUtil.getMessage("login.mfaError")); + } + ConsumerDO consumerDO = userService.getUserInfoByUsername(consumerDTO.getUsername()); + return loginValidSuccess(request, response, consumerDTO, consumerDO); + } + + private static ResponseResult loginValidSuccess(HttpServletRequest request, HttpServletResponse response, ConsumerDTO userDTO, ConsumerDO consumerDO) { + Map map = new HashMap<>(3); + String username = userDTO.getUsername(); + String hashPassword = consumerDO.getPassword(); + boolean rememberMe = BooleanUtil.isTrue(userDTO.getRememberMe()); + String jmalToken = AuthInterceptor.generateJmalToken(hashPassword, username); + map.put(AuthInterceptor.JMAL_TOKEN, jmalToken); + map.put(IUserService.USERNAME, username); + map.put(IUserService.USER_ID, consumerDO.getId()); + AuthInterceptor.setRefreshCookie(request, response, hashPassword, username, rememberMe, jmalToken); + return ResultUtil.success(map); + } + + private ResponseResult ldapLogin(HttpServletRequest request, HttpServletResponse response, ConsumerDTO consumerDTO) { + try { + LdapQuery query = LdapQueryBuilder.query().where(ldapLoginName).is(consumerDTO.getUsername()); + ldapTemplate.authenticate(query, consumerDTO.getPassword()); + } catch (Exception e) { + return ResultUtil.error(loginError()); + } + LdapConfigDO ldapConfigDO = mongoTemplate.findOne(new Query(), LdapConfigDO.class); + if (ldapConfigDO != null) { + // 创建账号 + consumerDTO.setRoles(ldapConfigDO.getDefaultRoleList()); + consumerDTO.setShowName(consumerDTO.getUsername()); + ConsumerDO consumerDO = userService.add(consumerDTO); + return loginValidSuccess(request, response, consumerDTO, consumerDO); + } + return ResultUtil.error(loginError()); + } + + /** + * 验证LDAP DN(Distinguished Name)字符串是否有效 + * + * @param dn 要验证的DN字符串 + * @return 如果DN无效,则为true;否则为false + */ + public static boolean isNotValidDn(String dn) { + if (dn == null || dn.trim().isEmpty()) { + return true; + } + return !VALID_DN_PATTERN.matcher(dn.trim().toLowerCase()).matches(); + } + + // 静态常量定义正则表达式,只允许逗号分隔 + private static final Pattern VALID_DN_PATTERN = Pattern.compile( + "^(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]*[a-zA-Z0-9])\\.)*([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\\-]*[A-Za-z0-9])$|^(uid|cn|ou|dc|o|l|st|c)=([^,]*),(uid|cn|ou|dc|o|l|st|c)=([^,]*)((,(uid|cn|ou|dc|o|l|st|c)=([^,]*))*)(,)?$" + ); + + @Override + public ResponseResult logout(String token, HttpServletResponse response) { + String username = userLoginHolder.getUsername(); + CaffeineUtil.removeAuthoritiesCache(username); + CaffeineUtil.removeUserIdCache(username); + AuthInterceptor.removeCookies(response, IUserService.USERNAME, AuthInterceptor.JMAL_TOKEN, AuthInterceptor.REFRESH_TOKEN, AuthInterceptor.REMEMBER_NAME); + return ResultUtil.success(); + } + + @Override + public ResponseResult validOldPass(String userId, String password) { + ConsumerDO user = mongoTemplate.findById(userId, ConsumerDO.class, UserServiceImpl.COLLECTION_NAME); + if (user == null) { + return ResultUtil.warning(loginError()); + } else { + String userPassword = user.getPassword(); + if (!CharSequenceUtil.isBlank(password) && PasswordHash.validatePassword(password, userPassword)) { + return ResultUtil.success(); + } + } + return ResultUtil.warning(loginError()); + } + + @Override + public ResponseResult updateLdapConfig(LdapConfigDTO ldapConfigDTO) { + // 先测试连接 + this.ldapTemplate = testLdapConfig(ldapConfigDTO); + // 判断操作用户是否为网盘创建者 + String userId = userLoginHolder.getUserId(); + ConsumerDO consumerDO = userService.userInfoById(userId); + if (BooleanUtil.isFalse(consumerDO.getCreator())) { + throw new CommonException(ExceptionType.PERMISSION_DENIED); + } + LdapConfigDO ldapConfigDO = ldapConfigDTO.toLdapConfigDO(consumerDO.getId(), textEncryptor); + mongoTemplate.save(ldapConfigDO); + // 重新加载ldap配置 + init(); + return ResultUtil.success(); + } + + @Override + public LdapTemplate testLdapConfig(LdapConfigDTO ldapConfigDTO) { + LdapContextSource ldapContextSource = loadLdapConfig(ldapConfigDTO); + LdapTemplate testLdapTemplate = new LdapTemplate(ldapContextSource); + try { + // 使用基本查询,以检查LDAP服务器是否可用 + testLdapTemplate.search( + LdapQueryBuilder.query().where("objectClass").is("*"), + (AttributesMapper) attributes -> attributes.get("objectClass").get().toString()); + return testLdapTemplate; + } catch (CommunicationException e) { + throw new CommonException(ExceptionType.WARNING.getCode(), "地址错误: 请检查LDAP服务器地址"); + } catch (AuthenticationException e) { + throw new CommonException(ExceptionType.WARNING.getCode(), "认证失败: 请检查 Base DN 或 密码"); + } catch (Exception e) { + throw new CommonException(ExceptionType.WARNING.getCode(), "配置有误: " + e.getMessage()); + } + } + + @Override + public LdapConfigDTO loadLdapConfig() { + LdapConfigDO ldapConfigDO = mongoTemplate.findOne(new Query(), LdapConfigDO.class); + if (ldapConfigDO == null) { + return null; + } + return ldapConfigDO.toLdapConfigDTO(); + } +} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/main/java/com/jmal/clouddisk/service/impl/CategoryService.java b/src/main/java/com/jmal/clouddisk/service/impl/CategoryService.java new file mode 100644 index 0000000..c3b1f0a --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/service/impl/CategoryService.java @@ -0,0 +1,378 @@ +package com.jmal.clouddisk.service.impl; + +import cn.hutool.core.convert.Convert; +import cn.hutool.core.text.CharSequenceUtil; +import com.jmal.clouddisk.model.CategoryDO; +import com.jmal.clouddisk.model.CategoryDTO; +import com.jmal.clouddisk.service.Constants; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.util.MongoUtil; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.data.mongodb.core.query.Update; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +/** + * @author jmal + * @Description 分类管理 + * @Date 2020/10/26 5:51 下午 + */ +@Service +public class CategoryService { + + @Autowired + private MongoTemplate mongoTemplate; + + private static final String COLLECTION_NAME = "category"; + + /*** + * 分类列表 + * @param userId 用户id + * @return 一级分类列表 + */ + public List list(String userId, String parentId) { + List categoryTreeList = tree(userId, true); + return getSubCategoryList(parentId, categoryTreeList); + } + + /*** + * 根据分类树查询某个分类的子分类 + * @param parentCategoryId 父分类id + * @param categoryTreeList 分类数 + * @return 分类列表 + */ + private List getSubCategoryList(String parentCategoryId, List categoryTreeList) { + List categoryDTOList = new ArrayList<>(); + if (CharSequenceUtil.isBlank(parentCategoryId)) { + return categoryTreeList; + } + for (CategoryDTO categoryDTO : categoryTreeList) { + if (categoryDTO.getChildren() == null) { + continue; + } + if (parentCategoryId.equals(categoryDTO.getId())) { + categoryDTOList.addAll(categoryDTO.getChildren()); + } else { + categoryDTOList.addAll(getSubCategoryList(parentCategoryId, categoryDTO.getChildren())); + } + } + return categoryDTOList; + } + + /*** + * 获取分类的文章数 + * @param categoryDTO categoryDTO + */ + private void getCategoryArticlesNum(CategoryDTO categoryDTO) { + Query query = new Query(); + query.addCriteria(Criteria.where("categoryIds").is(categoryDTO.getId())); + query.addCriteria(Criteria.where(Constants.RELEASE).is(true)); + long count = mongoTemplate.count(query, FileServiceImpl.COLLECTION_NAME); + categoryDTO.setArticleNum(Convert.toInt(count)); + categoryDTO.setValue(Convert.toInt(count)); + } + + /*** + * 分类树 + * @param userId 用户id + * @param statArticleNum 是否统计文章数 + * @return 分类树结构 + */ + public List tree(String userId, boolean statArticleNum) { + Query query = new Query(); + if(!CharSequenceUtil.isBlank(userId)){ + query.addCriteria(Criteria.where(IUserService.USER_ID).is(userId)); + } else { + query.addCriteria(Criteria.where(IUserService.USER_ID).exists(false)); + } + List categoryDOList = mongoTemplate.find(query, CategoryDO.class, COLLECTION_NAME); + List categoryDTOList = categoryDOList.parallelStream().map(category -> { + CategoryDTO categoryDTO = new CategoryDTO(); + BeanUtils.copyProperties(category, categoryDTO); + if (statArticleNum) { + getCategoryArticlesNum(categoryDTO); + } + return categoryDTO; + }).collect(Collectors.toList()); + Map articleNumMap = null; + if (statArticleNum) { + articleNumMap = new HashMap<>(16); + } + List categoryTreeList = getSubCategory(null, categoryDTOList); + getArticleNum(articleNumMap, categoryTreeList, null); + setArticleNum(articleNumMap, categoryTreeList); + return categoryTreeList; + } + + /** + * 查找分类的子集 + * + * @param parentCategoryId 父分类id + * @param categoryDTOList 分类列表 + * @return 分类列表 + */ + private List getSubCategory(String parentCategoryId, List categoryDTOList) { + List categoryTreeList = new ArrayList<>(); + List categoryList; + if (CharSequenceUtil.isBlank(parentCategoryId)) { + categoryList = categoryDTOList.stream().filter(category -> CharSequenceUtil.isBlank(category.getParentCategoryId())).sorted().collect(Collectors.toList()); + } else { + categoryList = categoryDTOList.stream().filter(category -> parentCategoryId.equals(category.getParentCategoryId())).collect(Collectors.toList()); + } + categoryList.forEach(subCategory -> { + List subList = getSubCategory(subCategory.getId(), categoryDTOList); + if (!subList.isEmpty()) { + subCategory.setChildren(subList); + } + categoryTreeList.add(subCategory); + }); + return categoryTreeList; + } + + /** + *

获取文章数

+ *
把每个分类的文章数存到articleNumMap里 + *
articleNumMap => key:分类id , value:文章数 + * @param articleNumMap 每个分类的文章数 + * @param categoryTreeList 分类树 + * @param categoryId 分类id + * @return 分类树 + */ + private int getArticleNum(Map articleNumMap, List categoryTreeList, String categoryId) { + int count = 0; + if (articleNumMap == null || categoryTreeList == null) { + return count; + } + for (CategoryDTO category : categoryTreeList) { + count += category.getArticleNum(); + int curCnt = getArticleNum(articleNumMap, category.getChildren(), category.getId()); + articleNumMap.put(category.getId(), curCnt); + count += curCnt; + } + if(!CharSequenceUtil.isBlank(categoryId)){ + articleNumMap.put(categoryId, count); + } + return count; + } + + /** + *

设置文章数

+ *
把articleNumMap里的文章数取出来放到categoryTreeList里 + * @param articleNumMap 每个分类的文章数 + * @param categoryTreeList 分类树 + * @return 分类树 + */ + private List setArticleNum(Map articleNumMap, List categoryTreeList){ + if(articleNumMap == null || categoryTreeList == null){ + return categoryTreeList; + } + categoryTreeList = categoryTreeList.stream().peek(category -> { + if (articleNumMap.containsKey(category.getId())){ + if(category.getChildren() == null || category.getChildren().isEmpty()){ + category.setValue(category.getValue()); + } + category.setValue(articleNumMap.get(category.getId()) + category.getValue()); + } + List subList = category.getChildren(); + if(subList != null && !subList.isEmpty()){ + category.setChildren(setArticleNum(articleNumMap, subList)); + } + }).collect(Collectors.toList()); + return categoryTreeList; + } + + /*** + * 根据id查询分类列表 + * @param categoryIds 分类id集合 + * @return 分类列表 + */ + public List getCategoryListByIds(Object[] categoryIds) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").in(categoryIds)); + return mongoTemplate.find(query, CategoryDO.class, COLLECTION_NAME); + } + + /*** + * 获取分类信息 + * @param userId 用户id + * @param categoryName 分类名称 + * @return 一个分类信息 + */ + public CategoryDO getCategoryInfo(String userId, String categoryName) { + Query query = new Query(); + if (!CharSequenceUtil.isBlank(userId)) { + query.addCriteria(Criteria.where(IUserService.USER_ID).is(userId)); + } else { + query.addCriteria(Criteria.where(IUserService.USER_ID).exists(false)); + } + query.addCriteria(Criteria.where("name").is(categoryName)); + return mongoTemplate.findOne(query, CategoryDO.class, COLLECTION_NAME); + } + + /*** + * 获取分类信息 + * @param userId 用户id + * @param categorySlugName 分类缩略名 + * @return 一个分类信息 + */ + public CategoryDO getCategoryInfoBySlug(String userId, String categorySlugName) { + Query query = new Query(); + if (!CharSequenceUtil.isBlank(userId)) { + query.addCriteria(Criteria.where(IUserService.USER_ID).is(userId)); + } else { + query.addCriteria(Criteria.where(IUserService.USER_ID).exists(false)); + } + query.addCriteria(Criteria.where("slug").is(categorySlugName)); + CategoryDO categoryDO = mongoTemplate.findOne(query, CategoryDO.class, COLLECTION_NAME); + if(categoryDO == null){ + categoryDO = getCategoryInfo(userId, categorySlugName); + } + return categoryDO; + } + + /*** + * 通过Id获取分类信息 + * @param categoryId 分类id + * @return 一个分类信息 + */ + public CategoryDO getCategoryInfo(String categoryId) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(categoryId)); + return mongoTemplate.findOne(query, CategoryDO.class, COLLECTION_NAME); + } + + /*** + * 添加分类 + * @param categoryDTO 参数对象 + * @return ResponseResult + */ + public ResponseResult add(CategoryDTO categoryDTO) { + if (getCategoryInfo(categoryDTO.getUserId(), categoryDTO.getName()) != null) { + return ResultUtil.warning("该分类名称已存在"); + } + if (!CharSequenceUtil.isBlank(categoryDTO.getParentCategoryId())) { + CategoryDO parentCategoryDO = getCategoryInfo(categoryDTO.getParentCategoryId()); + if (parentCategoryDO == null) { + return ResultUtil.warning("该父分类不存在"); + } + } + categoryDTO.setSlug(getSlug(categoryDTO)); + CategoryDO categoryDO = new CategoryDO(); + BeanUtils.copyProperties(categoryDTO, categoryDO); + categoryDO.setId(null); + mongoTemplate.save(categoryDO, COLLECTION_NAME); + return ResultUtil.success(); + } + + /*** + * 更新分类 + * @param categoryDTO 参数对象 + * @return ResponseResult + */ + public ResponseResult update(CategoryDTO categoryDTO) { + CategoryDO categoryDO1 = getCategoryInfo(categoryDTO.getId()); + if (categoryDO1 == null) { + return ResultUtil.warning("该分类不存在"); + } + Query query1 = new Query(); + query1.addCriteria(Criteria.where("_id").nin(categoryDTO.getId())); + query1.addCriteria(Criteria.where("name").is(categoryDTO.getName())); + if(mongoTemplate.exists(query1, COLLECTION_NAME)){ + return ResultUtil.warning("该分类名称已存在"); + } + categoryDTO.setSlug(getSlug(categoryDTO)); + CategoryDO categoryDO = new CategoryDO(); + BeanUtils.copyProperties(categoryDTO, categoryDO); + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(categoryDTO.getId())); + Update update = MongoUtil.getUpdate(categoryDO); + mongoTemplate.upsert(query, update, COLLECTION_NAME); + return ResultUtil.success(); + } + + private String getSlug(CategoryDTO categoryDTO) { + Query query = new Query(); + String slug = categoryDTO.getSlug(); + if (CharSequenceUtil.isBlank(slug)) { + return categoryDTO.getName(); + } + String id = categoryDTO.getId(); + if (id != null) { + query.addCriteria(Criteria.where("_id").nin(id)); + } + query.addCriteria(Criteria.where("slug").is(slug)); + if (mongoTemplate.exists(query, COLLECTION_NAME)) { + return slug + "-1"; + } + return slug; + } + + /*** + * 设置默认分类 + * @param categoryId categoryId + * @return ResponseResult + */ + public ResponseResult setDefault(String categoryId) { + Query query2 = new Query(); + query2.addCriteria(Criteria.where("isDefault").is(true)); + Update update2 = new Update(); + update2.set("isDefault", false); + mongoTemplate.updateMulti(query2, update2, COLLECTION_NAME); + Query query1 = new Query(); + query1.addCriteria(Criteria.where("_id").is(categoryId)); + Update update1 = new Update(); + update1.set("isDefault", true); + mongoTemplate.upsert(query1, update1, COLLECTION_NAME); + return ResultUtil.success(); + } + + /*** + * 删除分类及其子分类下的所有分类及文章 + * @param categoryIdList 分类id列表 + */ + public void delete(List categoryIdList) { + List categoryIds = findLoopCategory(true, categoryIdList); + // 删除所有关联的分类 + Query query = new Query(); + query.addCriteria(Criteria.where("_id").in(categoryIds)); + mongoTemplate.remove(query, COLLECTION_NAME); + // 删除所有关联的文章 + // Query query1 = new Query(); + // query.addCriteria(Criteria.where("categoryIds").in(categoryIds)); + // Console.log(categoryIds); + //mongoTemplate.remove(query1, FileServiceImpl.COLLECTION_NAME); + } + + /*** + * 递归查找分类id及其子分类id列表 + * @param firstCategory 是否是第一次查找 + * @param categoryIdList 分类id列表 + */ + private List findLoopCategory(boolean firstCategory, List categoryIdList) { + final List categoryIds = new ArrayList<>(); + Query query = new Query(); + if (firstCategory) { + query.addCriteria(Criteria.where("_id").in(categoryIdList)); + } else { + query.addCriteria(Criteria.where("parentCategoryId").in(categoryIdList)); + categoryIds.addAll(categoryIdList); + } + List categoryIdList1 = mongoTemplate.find(query, CategoryDO.class, COLLECTION_NAME).stream().map(CategoryDO::getId).collect(Collectors.toList()); + if (categoryIdList1.size() > 0) { + categoryIds.addAll(findLoopCategory(false, categoryIdList1)); + } + return categoryIds; + } + +} diff --git a/src/main/java/com/jmal/clouddisk/service/impl/CommonFileService.java b/src/main/java/com/jmal/clouddisk/service/impl/CommonFileService.java new file mode 100644 index 0000000..b50e93b --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/service/impl/CommonFileService.java @@ -0,0 +1,1317 @@ +package com.jmal.clouddisk.service.impl; + +import cn.hutool.core.convert.Convert; +import cn.hutool.core.date.LocalDateTimeUtil; +import cn.hutool.core.io.CharsetDetector; +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.io.file.PathUtil; +import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.core.util.BooleanUtil; +import cn.hutool.core.util.ReUtil; +import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson2.JSONObject; +import com.github.benmanes.caffeine.cache.Cache; +import com.github.benmanes.caffeine.cache.Caffeine; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.controller.sse.Message; +import com.jmal.clouddisk.controller.sse.SseController; +import com.jmal.clouddisk.exception.CommonException; +import com.jmal.clouddisk.exception.ExceptionType; +import com.jmal.clouddisk.lucene.EtagService; +import com.jmal.clouddisk.lucene.LuceneService; +import com.jmal.clouddisk.lucene.RebuildIndexTaskService; +import com.jmal.clouddisk.media.HeifUtils; +import com.jmal.clouddisk.media.VideoInfo; +import com.jmal.clouddisk.media.VideoInfoDO; +import com.jmal.clouddisk.media.VideoProcessService; +import com.jmal.clouddisk.model.*; +import com.jmal.clouddisk.model.rbac.ConsumerDO; +import com.jmal.clouddisk.oss.OssConfigService; +import com.jmal.clouddisk.service.Constants; +import com.jmal.clouddisk.service.IFileVersionService; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.util.*; +import com.jmal.clouddisk.webdav.MyWebdavServlet; +import com.luciad.imageio.webp.WebPWriteParam; +import com.mongodb.client.AggregateIterable; +import com.mongodb.client.MongoCursor; +import com.mongodb.client.result.UpdateResult; +import io.reactivex.rxjava3.core.Completable; +import io.reactivex.rxjava3.core.Single; +import io.reactivex.rxjava3.schedulers.Schedulers; +import jakarta.validation.constraints.NotNull; +import lombok.extern.slf4j.Slf4j; +import net.coobird.thumbnailator.Thumbnails; +import net.coobird.thumbnailator.tasks.UnsupportedFormatException; +import org.bson.BsonNull; +import org.bson.Document; +import org.bson.conversions.Bson; +import org.bson.types.ObjectId; +import org.jetbrains.annotations.Nullable; +import org.mozilla.universalchardet.UniversalDetector; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.data.mongodb.core.query.Update; +import org.springframework.http.HttpHeaders; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.stereotype.Service; + +import javax.imageio.IIOImage; +import javax.imageio.ImageIO; +import javax.imageio.ImageWriteParam; +import javax.imageio.ImageWriter; +import javax.imageio.stream.FileImageOutputStream; +import java.awt.image.BufferedImage; +import java.io.ByteArrayOutputStream; +import java.io.File; +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.LinkOption; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.nio.file.attribute.FileTime; +import java.text.Collator; +import java.time.Instant; +import java.time.LocalDateTime; +import java.util.*; +import java.util.concurrent.CopyOnWriteArraySet; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +import static com.jmal.clouddisk.service.Constants.UPDATE_DATE; +import static com.jmal.clouddisk.service.Constants.UPLOAD_DATE; +import static com.jmal.clouddisk.service.IUserService.USER_ID; +import static com.mongodb.client.model.Accumulators.sum; +import static com.mongodb.client.model.Aggregates.group; +import static com.mongodb.client.model.Aggregates.match; +import static com.mongodb.client.model.Filters.and; +import static com.mongodb.client.model.Filters.eq; + +/** + * @author jmal + * @Description CommonFileService + * @date 2023/4/7 17:27 + */ +@Service +@Slf4j +public class CommonFileService { + + @Autowired + UserLoginHolder userLoginHolder; + + @Autowired + IUserService userService; + + public static final String COLLECTION_NAME = "fileDocument"; + + public static final String TRASH_COLLECTION_NAME = "trash"; + + @Autowired + MongoTemplate mongoTemplate; + + @Autowired + FileProperties fileProperties; + + @Autowired + private SseController sseController; + + @Autowired + private VideoProcessService videoProcessService; + + @Autowired + private IFileVersionService fileVersionService; + + @Autowired + public LuceneService luceneService; + + @Autowired + EtagService etagService; + + private final Cache> throttleExecutorCache = Caffeine.newBuilder().build(); + + private final Cache userSpaceCache = Caffeine.newBuilder().expireAfterWrite(1, TimeUnit.SECONDS).build(); + + /** + * 上传文件夹的写入锁缓存 + */ + private final Cache uploadFileLockCache = CaffeineUtil.getUploadFileLockCache(); + + protected static final Set FILE_PATH_LOCK = new CopyOnWriteArraySet<>(); + + public ResponseEntity getObjectResponseEntity(FileDocument fileDocument) { + if (fileDocument != null) { + return ResponseEntity.ok().header(HttpHeaders.CONTENT_TYPE, fileDocument.getContentType()).header(HttpHeaders.CONNECTION, "close").header(HttpHeaders.CONTENT_LENGTH, String.valueOf(fileDocument.getContent() != null ? fileDocument.getContent().length : 0)).header(HttpHeaders.CONTENT_ENCODING, "utf-8").header(HttpHeaders.CACHE_CONTROL, "public, max-age=604800").body(fileDocument.getContent()); + } else { + return ResponseEntity.status(HttpStatus.NOT_FOUND).body("找不到该文件"); + } + } + + + /*** + * 用户当前目录(跨平台) + * @param currentDirectory 当前目录 + * @return 用户当前目录 + */ + public String getUserDirectory(String currentDirectory) { + if (CharSequenceUtil.isBlank(currentDirectory)) { + currentDirectory = fileProperties.getSeparator(); + } else { + if (!currentDirectory.endsWith(fileProperties.getSeparator())) { + currentDirectory += fileProperties.getSeparator(); + } + } + return currentDirectory; + } + + /*** + * 用户磁盘目录 + * @param upload UploadApiParamDTO + * @return 目录路径 + */ + public String getUserDirectoryFilePath(UploadApiParamDTO upload) { + String currentDirectory = upload.getCurrentDirectory(); + if (CharSequenceUtil.isBlank(currentDirectory)) { + currentDirectory = fileProperties.getSeparator(); + } + Path path; + if (Boolean.TRUE.equals(upload.getIsFolder())) { + path = Paths.get(currentDirectory, upload.getFolderPath(), upload.getFilename()); + } else { + path = Paths.get(currentDirectory, upload.getRelativePath()); + } + return path.toString(); + } + + /** + * 是否存在该文件 + * + * @param path 文件的相对路径 + * @param userId userId 用户Id + * @param filenames 文件名列表 + * @return FileDocument + */ + FileDocument exist(String path, String userId, List filenames) { + Query query = new Query(); + query.addCriteria(Criteria.where(IUserService.USER_ID).is(userId)); + query.addCriteria(Criteria.where("path").is(path)); + query.addCriteria(Criteria.where("name").in(filenames)); + return mongoTemplate.findOne(query, FileDocument.class, COLLECTION_NAME); + } + + /** + * 是否存在该文件 + * + * @param path 文件的相对路径 + * @param userId userId + * @param md5 md5 + * @return FileDocument + */ + FileDocument getByMd5(String path, String userId, String md5) { + Query query = new Query(); + query.addCriteria(Criteria.where(IUserService.USER_ID).is(userId)); + query.addCriteria(Criteria.where("md5").is(md5)); + query.addCriteria(Criteria.where("path").is(path)); + return mongoTemplate.findOne(query, FileDocument.class, COLLECTION_NAME); + } + + /** + * 获取文件信息 + * + * @param path 文件的相对路径 + * @param filename 文件名称 + * @param userId userId + * @return FileDocument + */ + public FileDocument getFileDocumentByPath(String path, String filename, String userId) { + return getFileDocumentByPath(path, filename, userId, true); + } + + /** + * 获取文件信息 + * + * @param path 文件的相对路径 + * @param filename 文件名称 + * @param userId userId + * @return FileDocument + */ + public FileDocument getFileDocumentByPath(String path, String filename, String userId, boolean excludeContent) { + Query query = getQuery(path, filename, userId); + if (excludeContent) { + query.fields().exclude("content"); + } + query.fields().exclude("contentText"); + return mongoTemplate.findOne(query, FileDocument.class, COLLECTION_NAME); + } + + public static Query getQuery(FileDocument fileDocument) { + return getQuery(fileDocument.getPath(), fileDocument.getName(), fileDocument.getUserId()); + } + + public static Query getQuery(String path, String name, String userId) { + Query query = new Query(); + query.addCriteria(Criteria.where(IUserService.USER_ID).is(userId)); + query.addCriteria(Criteria.where("name").is(name)); + query.addCriteria(Criteria.where("path").is(path)); + return query; + } + + /** + * 获取文件路径(含用户名)获取文件信息 + * + * @param filepath 文件的相对路径(以username开头) + * @param userId userId + * @return FileDocument + */ + public FileDocument getFileDocumentByPath(String filepath, String userId) { + Path relativePath = Paths.get(filepath); + String filename = relativePath.getFileName().toString(); + String path = File.separator; + if (relativePath.getNameCount() > 2) { + path += relativePath.subpath(1, relativePath.getNameCount() - 1) + File.separator; + } + return getFileDocumentByPath(path, filename, userId); + } + + /*** + * 如果文件夹不存在,则创建 + * @param docPaths 文件夹path + * @param username username + * @param userId userId + */ + public void upsertFolder(@NotNull Path docPaths, @NotNull String username, @NotNull String userId) { + // 修改为公共目录,不再按用户分离 + File dir = Paths.get(fileProperties.getRootDir(), docPaths.toString()).toFile(); + if (!dir.exists()) { + StringBuilder parentPath = new StringBuilder(); + for (int i = 0; i < docPaths.getNameCount(); i++) { + String name = docPaths.getName(i).toString(); + UploadApiParamDTO uploadApiParamDTO = new UploadApiParamDTO(); + uploadApiParamDTO.setIsFolder(true); + uploadApiParamDTO.setFilename(name); + uploadApiParamDTO.setUsername(username); + uploadApiParamDTO.setUserId(userId); + if (i > 0) { + uploadApiParamDTO.setCurrentDirectory(parentPath.toString()); + } + createFolder(uploadApiParamDTO); + parentPath.append("/").append(name); + } + } + } + + public void createFolder(UploadApiParamDTO upload) { + // 新建文件夹 + String userDirectoryFilePath = getUserDirectoryFilePath(upload); + //没有分片,直接存 - 修改为公共目录,不再包含用户名 + File dir = new File(fileProperties.getRootDir() + File.separator + userDirectoryFilePath); + if (!dir.exists()) { + FileUtil.mkdir(dir); + } + // 保存文件夹信息 + createFile(upload.getUsername(), dir, null, null); + } + + /*** + * 创建文件索引 + * @param username 用户名 + * @param file File + * @param userId 用户Id + * @param isPublic 是否为公共文件 + * @return fileId + */ + public String createFile(String username, File file, String userId, Boolean isPublic) { + if (CaffeineUtil.hasUploadFileCache(file.getAbsolutePath())) { + return null; + } + if (CharSequenceUtil.isBlank(username)) { + return null; + } + if (CharSequenceUtil.isBlank(userId)) { + userId = userService.getUserIdByUserName(username); + if (CharSequenceUtil.isBlank(userId)) { + return null; + } + } + String fileName = file.getName(); + String suffix = MyFileUtils.extName(fileName); + String contentType = getContentType(file, FileContentTypeUtils.getContentType(file, suffix)); + if (contentType.startsWith(Constants.CONTENT_TYPE_IMAGE)) { + // 换成webp格式的图片 + file = replaceWebp(userId, file, username); + if (file == null) { + return null; + } + } + + String fileAbsolutePath = file.getAbsolutePath(); + Lock lock = uploadFileLockCache.get(fileAbsolutePath, key -> new ReentrantLock()); + if (lock != null) { + lock.lock(); + } + UpdateResult updateResult = null; + ObjectId objectId = new ObjectId(); + String fileId = objectId.toHexString(); + try { + String relativePath = getRelativePath(username, fileAbsolutePath, fileName); + if (relativePath == null) return null; + Query query = new Query(); + FileDocument fileExists = getFileDocument(userId, fileName, relativePath, query); + if (fileExists != null) { + // 添加文件索引 + // 获取tagName + Update update = new Update(); + updateExifInfo(file, fileExists, contentType, suffix, update); + updateVideoInfo(file, fileExists, contentType, update); + updateOtherInfo(fileExists, contentType, suffix, update); + updateLastModifiedTime(file, fileExists, update); + if (!update.getUpdateObject().isEmpty()) { + mongoTemplate.updateFirst(query, update, COLLECTION_NAME); + } + luceneService.pushCreateIndexQueue(fileExists.getId()); + return fileExists.getId(); + } + Update update = new Update(); + // 设置创建时间和修改时间 + update.set(UPLOAD_DATE, LocalDateTime.now(TimeUntils.ZONE_ID)); + update.set(UPDATE_DATE, getFileLastModifiedTime(file)); + update.set("_id", objectId); + update.set(IUserService.USER_ID, userId); + update.set("name", fileName); + update.set("path", relativePath); + update.set(Constants.IS_FOLDER, file.isDirectory()); + update.set(Constants.IS_FAVORITE, false); + if (isPublic != null) { + update.set("isPublic", true); + } + if (file.isFile()) { + setFileConfig(fileId, username, file, fileName, suffix, contentType, relativePath, update); + } else { + // 检查目录是否为OSS目录 + checkOSSPath(username, relativePath, fileName, update); + } + // 检查该文件的上级目录是否有已经分享的目录 + checkShareBase(update, relativePath); + updateResult = mongoTemplate.upsert(query, update, COLLECTION_NAME); + pushMessage(username, update.getUpdateObject(), Constants.CREATE_FILE); + // 添加文件索引 + luceneService.pushCreateIndexQueue(fileId); + if (file.isDirectory()) { + etagService.handleNewFolderCreationAsync(username, file); + } + } catch (Exception e) { + log.error("{} file: {}", e.getMessage(), file.getAbsoluteFile(), e); + } finally { + if (lock != null) { + lock.unlock(); + uploadFileLockCache.invalidate(fileAbsolutePath); + } + } + if (updateResult != null && null != updateResult.getUpsertedId()) { + return updateResult.getUpsertedId().asObjectId().getValue().toHexString(); + } + return fileId; + } + + /** + * 统计文件夹的大小 + */ + public long getFolderSize(String collectionName, String userId, String path) { + return etagService.getFolderSize(collectionName, userId, path); + } + + /** + * 修改文件的最后修改时间 + * + * @param file 文件 + * @param fileExists FileDocument + * @param update Update + */ + private void updateLastModifiedTime(File file, FileDocument fileExists, Update update) { + LocalDateTime lastModifiedTime = getFileLastModifiedTime(file); + // 判断 fileExists.getUpdateDate() 和 lastModifiedTime是否在1ms内 + if (fileExists.getUpdateDate() != null && lastModifiedTime.isEqual(fileExists.getUpdateDate())) { + update.set(UPDATE_DATE, lastModifiedTime); + } + } + + /** + * 设置文件的最后修改时间 + * + * @param filePath 文件路径 + * @param lastModified 最后修改时间 + * @throws IOException IO异常 + */ + public static void setLastModifiedTime(Path filePath, Long lastModified) throws IOException { + if (lastModified == null) { + return; + } + Instant instant = Instant.ofEpochMilli(lastModified); + FileTime fileTime = FileTime.from(instant); + Files.setLastModifiedTime(filePath, fileTime); + } + + private void updateOtherInfo(FileDocument fileExists, String contentType, String suffix, Update update) { + if (!contentType.equals(fileExists.getContentType())) { + update.set(Constants.CONTENT_TYPE, contentType); + } + if (CharSequenceUtil.isNotBlank(suffix) && !suffix.equals(fileExists.getSuffix())) { + update.set(Constants.SUFFIX, suffix); + } + } + + public String getRelativePath(String username, String fileAbsolutePath, String fileName) { + int startIndex = fileProperties.getRootDir().length() + username.length() + 1; + int endIndex = fileAbsolutePath.length() - fileName.length(); + if (startIndex >= endIndex) { + return null; + } + return fileAbsolutePath.substring(startIndex, endIndex); + } + + /** + * 更新文档的Exif信息 + * + * @param file 文件 + * @param fileExists 文件信息 + * @param contentType 文件类型 + * @param suffix 文件后缀 + */ + private void updateExifInfo(File file, FileDocument fileExists, String contentType, String suffix, Update update) { + if (!ImageExifUtil.isImageType(contentType, suffix)) { + return; + } + if (fileExists.getExif() == null || RebuildIndexTaskService.isSyncFile()) { + // 更新图片Exif信息 + update.set("exif", ImageExifUtil.getExif(file)); + } + } + + private void updateVideoInfo(File file, FileDocument fileExists, String contentType, Update update) { + if (!contentType.contains(Constants.VIDEO)) { + return; + } + if (fileExists.getVideo() == null || RebuildIndexTaskService.isSyncFile()) { + VideoInfo videoInfo = videoProcessService.getVideoInfo(file); + VideoInfoDO videoInfoDO = videoInfo.toVideoInfoDO(); + update.set("video.bitrate", videoInfoDO.getBitrate()); + update.set("video.bitrateNum", videoInfoDO.getBitrateNum()); + update.set("video.format", videoInfoDO.getFormat()); + update.set("video.duration", videoInfoDO.getDuration()); + update.set("video.durationNum", videoInfoDO.getDurationNum()); + update.set("video.width", videoInfoDO.getWidth()); + update.set("video.height", videoInfoDO.getHeight()); + update.set("video.frameRate", videoInfoDO.getFrameRate()); + } + } + + public static LocalDateTime getFileLastModifiedTime(File file) { + try { + Map attributes = Files.readAttributes(file.toPath(), "lastModifiedTime,creationTime", LinkOption.NOFOLLOW_LINKS); + FileTime lastModifiedTime = (FileTime) attributes.get("lastModifiedTime"); + return LocalDateTimeUtil.of(lastModifiedTime.toInstant()); + } catch (IOException e) { + return LocalDateTime.now(TimeUntils.ZONE_ID); + } + } + + public FileDocument getFileDocument(String userId, String fileName, String relativePath, Query query) { + query.addCriteria(Criteria.where(IUserService.USER_ID).is(userId)); + query.addCriteria(Criteria.where("path").is(relativePath)); + query.addCriteria(Criteria.where("name").is(fileName)); + // 文件是否存在 + return mongoTemplate.findOne(query, FileDocument.class, COLLECTION_NAME); + } + + public FileDocument getFileDocument(String username, String fileAbsolutePath, Query query) { + String userId = userService.getUserIdByUserName(username); + if (CharSequenceUtil.isBlank(userId)) { + return null; + } + File file = new File(fileAbsolutePath); + if (!file.exists()) { + return null; + } + String fileName = file.getName(); + // 修改为公共目录,不再包含用户名路径组件 + String relativePath = fileAbsolutePath.substring(fileProperties.getRootDir().length(), fileAbsolutePath.length() - fileName.length()); + return getFileDocument(userId, fileName, relativePath, query); + } + + public FileDocument getFileDocument(String userId, String fileName, String relativePath) { + Query query = new Query(); + // 文件是否存在 + return getFileDocument(userId, fileName, relativePath, query); + } + + private File replaceWebp(String userId, File file, String username) { + String suffix = FileUtil.getSuffix(file).toLowerCase(); + // 判断是否为heic格式 + if ("heic".equals(suffix)) { + String output = HeifUtils.heifConvert(file.getAbsolutePath(), Paths.get(fileProperties.getRootDir(), fileProperties.getChunkFileDir(), username)); + if (output != null) { + FileUtil.del(file); + return null; + } + } + + if (userService.getDisabledWebp(userId) || ("ico".equals(suffix))) { + return file; + } + if (Constants.SUFFIX_WEBP.equals(suffix)) { + return file; + } + File outputFile = new File(file.getPath() + Constants.POINT_SUFFIX_WEBP); + // 从某处获取图像进行编码 + BufferedImage image; + try { + image = ImageIO.read(file); + if (image == null) { + return file; + } + imageFileToWebp(outputFile, image); + FileUtil.del(file); + } catch (IOException e) { + log.error(e.getMessage(), e); + return file; + } + return outputFile; + } + + public void imageFileToWebp(File outputFile, BufferedImage image) throws IOException { + // 获取一个WebP ImageWriter实例 + ImageWriter writer = ImageIO.getImageWritersByMIMEType(Constants.CONTENT_TYPE_WEBP).next(); + // 配置编码参数 + WebPWriteParam writeParam = new WebPWriteParam(writer.getLocale()); + writeParam.setCompressionMode(ImageWriteParam.MODE_DEFAULT); + // 在ImageWriter上配置输出 + writer.setOutput(new FileImageOutputStream(outputFile)); + // 编码 + writer.write(null, new IIOImage(image, null, null), writeParam); + } + + private void setFileConfig(String fileId, String username, File file, String fileName, String suffix, String contentType, String relativePath, Update update) { + try { + long size = file.length(); + update.set("size", size); + update.set("md5", size + relativePath + fileName); + update.set(Constants.CONTENT_TYPE, contentType); + update.set(Constants.SUFFIX, suffix); + if (contentType.contains(Constants.AUDIO)) { + setMusic(file, update); + } + if (contentType.contains(Constants.VIDEO)) { + setMediaCover(fileId, username, fileName, relativePath, update); + } + if (ImageExifUtil.isImageType(contentType, suffix)) { + // 处理图片 + processImage(file, update); + } + if (contentType.contains(Constants.CONTENT_TYPE_MARK_DOWN) || "md".equals(suffix)) { + // 写入markdown内容 + String markDownContent = FileUtil.readString(file, MyFileUtils.getFileCharset(file)); + update.set("contentText", markDownContent); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } + } + + private void processImage(File file, Update update) { + // 获取图片尺寸 + FastImageInfo imageInfo = new FastImageInfo(file); + if (imageInfo.getWidth() > 0 && imageInfo.getHeight() > 0) { + update.set("w", imageInfo.getWidth()); + update.set("h", imageInfo.getHeight()); + } + // 获取图片Exif信息 + update.set("exif", ImageExifUtil.getExif(file)); + // 生成缩略图 + generateThumbnail(file, update); + } + + public static String getContentType(File file, String contentType) { + try { + if (MyFileUtils.hasCharset(file)) { + String charset = UniversalDetector.detectCharset(file); + if (StrUtil.isNotBlank(charset)) { + if (StandardCharsets.UTF_8.name().equals(charset)) { + if (FileContentTypeUtils.DEFAULT_CONTENT_TYPE.equals(contentType)) { + contentType = "text/plan;charset=utf-8"; + } else { + contentType = contentType + ";charset=utf-8"; + } + } else { + if (file.length() < FileContentTypeUtils.MAX_DETECT_FILE_SIZE && CharsetDetector.detect(file).equals(StandardCharsets.UTF_8)) { + if (FileContentTypeUtils.DEFAULT_CONTENT_TYPE.equals(contentType)) { + contentType = "text/plan;charset=utf-8"; + } else { + contentType = contentType + ";charset=utf-8"; + } + } else { + contentType = contentType + ";charset=" + charset; + } + } + } + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } + return contentType; + } + + private static void setMusic(File file, Update update) { + Music music = AudioFileUtils.readAudio(file); + if (update == null) { + update = new Update(); + } + update.set("music", music); + } + + private void setMediaCover(String fileId, String username, String fileName, String relativePath, Update update) { + VideoInfo videoInfo = videoProcessService.getVideoCover(fileId, username, relativePath, fileName); + String coverPath = videoInfo.getCovertPath(); + log.debug("\r\ncoverPath:{}", coverPath); + if (!CharSequenceUtil.isBlank(coverPath)) { + if (update == null) { + update = new Update(); + } + update.set("content", PathUtil.readBytes(Paths.get(coverPath))); + update.set("video", videoInfo.toVideoInfoDO()); + videoProcessService.convertToM3U8(fileId); + update.set("mediaCover", true); + FileUtil.del(coverPath); + } else { + update.set("mediaCover", false); + } + } + + /** + * 生成缩略图 + * + * @param file File + * @param update org.springframework.data.mongodb.core.query.UpdateDefinition + */ + private void generateThumbnail(File file, Update update) { + try (ByteArrayOutputStream out = new ByteArrayOutputStream()) { + Thumbnails.Builder thumbnail = Thumbnails.of(file); + thumbnail.size(256, 256); + thumbnail.toOutputStream(out); + update.set("content", out.toByteArray()); + } catch (UnsupportedFormatException e) { + log.warn("{}{}", e.getMessage(), file.getAbsolutePath()); + } catch (Exception e) { + log.error("{}{}", e.getMessage(), file.getAbsolutePath()); + } catch (Throwable e) { + log.error(e.getMessage()); + } + } + + public void pushMessage(String username, Object message, String url) { + Completable.fromAction(() -> pushMessageSync(username, message, url)).subscribeOn(Schedulers.io()).subscribe(); + } + + /** + * 给用户推送消息 + * + * @param username username + * @param message message + * @param url url + */ + public void pushMessageSync(String username, Object message, String url) { + if (timelyPush(username, message, url)) return; + if (Constants.CREATE_FILE.equals(url) || Constants.DELETE_FILE.equals(url)) { + Map throttleExecutorMap = throttleExecutorCache.get(username, key -> new HashMap<>(8)); + if (throttleExecutorMap != null) { + ThrottleExecutor throttleExecutor = throttleExecutorMap.get(url); + if (throttleExecutor == null) { + throttleExecutor = new ThrottleExecutor(300); + throttleExecutorMap.put(url, throttleExecutor); + } + throttleExecutor.schedule(() -> pushMsg(username, message, url)); + } + } else { + pushMsg(username, message, url); + } + } + + private boolean timelyPush(String username, Object message, String url) { + if (Constants.CREATE_FILE.equals(url)) { + if (message instanceof Document setDoc) { + Object set = setDoc.get("$set"); + if (set instanceof Document doc) { + doc.remove("content"); + Boolean isFolder = doc.getBoolean(Constants.IS_FOLDER); + if (Boolean.TRUE.equals(isFolder)) { + pushMsg(username, message, url); + return true; + } + } + } + } + return false; + } + + private void pushMsg(String username, Object message, String url) { + Message msg = new Message(); + String userId = userLoginHolder.getUserId(); + if (CharSequenceUtil.isBlank(userId)) { + userId = userService.getUserIdByUserName(username); + } + if (!CharSequenceUtil.isBlank(userId)) { + long takeUpSpace = occupiedSpace(userId); + msg.setSpace(takeUpSpace); + } + if (message == null) { + message = new Document(); + } + if (message instanceof FileDocument fileDocument) { + fileDocument.setContent(null); + fileDocument.setMusic(null); + fileDocument.setContentText(null); + } + msg.setUrl(url); + msg.setUsername(username); + msg.setBody(message); + sseController.sendEvent(msg); + } + + public void pushMessageOperationFileError(String username, String message, String operation) { + JSONObject msg = new JSONObject(); + msg.put("code", -1); + msg.put("msg", message); + msg.put("operation", operation); + pushMessage(username, msg, Constants.OPERATION_FILE); + } + + public void pushMessageOperationFileSuccess(String fromPath, String toPath, String username, String operation) { + JSONObject msg = new JSONObject(); + msg.put("code", 0); + msg.put("from", fromPath); + msg.put("to", toPath); + msg.put("operation", operation); + pushMessage(username, msg, Constants.OPERATION_FILE); + } + + public long occupiedSpace(String userId) { + Long space = userSpaceCache.get(userId, key -> calculateTotalOccupiedSpace(userId).blockingGet()); + if (space == null) { + space = 0L; + } + ConsumerDO consumerDO = userService.userInfoById(userId); + if (consumerDO != null && consumerDO.getQuota() != null) { + if (space >= consumerDO.getQuota() * 1024L * 1024L * 1024L) { + // 空间已满 + CaffeineUtil.setSpaceFull(userId); + } else { + if (CaffeineUtil.spaceFull(userId)) { + CaffeineUtil.removeSpaceFull(userId); + } + } + } + return space; + } + + public Single calculateTotalOccupiedSpace(String userId) { + Single space1Single = getOccupiedSpaceAsync(userId, COLLECTION_NAME); + Single space2Single = getOccupiedSpaceAsync(userId, TRASH_COLLECTION_NAME); + return Single.zip(space1Single, space2Single, Long::sum); + } + + public Single getOccupiedSpaceAsync(String userId, String collectionName) { + return Single.fromCallable(() -> getOccupiedSpace(userId, collectionName)).subscribeOn(Schedulers.io()).doOnError(e -> log.error(e.getMessage(), e)); + } + + public long getOccupiedSpace(String userId, String collectionName) { + Long space = 0L; + List list = Arrays.asList(match(and(eq(IUserService.USER_ID, userId), eq(Constants.IS_FOLDER, false))), group(new BsonNull(), sum(Constants.TOTAL_SIZE, "$size"))); + AggregateIterable aggregateIterable = mongoTemplate.getCollection(collectionName).aggregate(list); + Document doc = aggregateIterable.first(); + if (doc != null) { + space = Convert.toLong(doc.get(Constants.TOTAL_SIZE), 0L); + } + return space; + } + + /** + * 检查目录是否为OSS目录 + * + * @param username username + * @param relativePath relativePath + * @param fileName fileName + * @param update Update + */ + private static void checkOSSPath(String username, String relativePath, String fileName, Update update) { + if (!MyWebdavServlet.PATH_DELIMITER.equals(relativePath)) { + return; + } + Path prePath = Paths.get(username, relativePath, fileName); + String ossPath = CaffeineUtil.getOssPath(prePath); + if (ossPath != null) { + update.set("ossFolder", CaffeineUtil.getOssDiameterPrefixCache(ossPath).getFolderName()); + update.set("ossPlatform", OssConfigService.getOssStorageService(ossPath).getPlatform().getValue()); + } + } + + public void checkShareBase(Update update, String relativePath) { + Document shareDocument = getShareBaseDocument(relativePath); + if (shareDocument == null) { + return; + } + Long expiresAt = Convert.toLong(shareDocument.get(Constants.EXPIRES_AT), null); + if (expiresAt == null) { + return; + } + String shareId = Convert.toStr(shareDocument.get(Constants.SHARE_ID), null); + if (shareId == null) { + return; + } + Boolean isPrivacy = Convert.toBool(shareDocument.get(Constants.IS_PRIVACY), null); + if (isPrivacy == null) { + return; + } + String extractionCode = Convert.toStr(shareDocument.get(Constants.EXTRACTION_CODE), null); + if (isPrivacy && extractionCode == null) { + return; + } + List operationPermissionList = new ArrayList<>(); + if (shareDocument.get(Constants.OPERATION_PERMISSION_LIST) != null) { + operationPermissionList = Convert.toList(OperationPermission.class, shareDocument.get(Constants.OPERATION_PERMISSION_LIST)); + } + setShareAttribute(update, expiresAt, shareId, isPrivacy, extractionCode, operationPermissionList); + } + + @Nullable + public Document getShareBaseDocument(String relativePath) { + if (CharSequenceUtil.isBlank(relativePath)) { + return null; + } + Path path = Paths.get(relativePath); + StringBuilder pathStr = new StringBuilder("/"); + List documentList = new ArrayList<>(path.getNameCount()); + for (int i = 0; i < path.getNameCount(); i++) { + String filename = path.getName(i).toString(); + if (i > 0) { + pathStr.append("/"); + } + Document document = new Document("path", pathStr.toString()).append("name", filename); + documentList.add(document); + pathStr.append(filename); + } + if (documentList.isEmpty()) { + return null; + } + List list = Arrays.asList(new Document("$match", new Document("$or", documentList)), new Document("$match", new Document(Constants.SHARE_BASE, true))); + AggregateIterable result = mongoTemplate.getCollection(COLLECTION_NAME).aggregate(list); + Document shareDocument = null; + try (MongoCursor mongoCursor = result.iterator()) { + while (mongoCursor.hasNext()) { + shareDocument = mongoCursor.next(); + } + } + return shareDocument; + } + + /*** + * 设置共享属性 + * @param fileDocument FileDocument + * @param expiresAt 过期时间 + * @param query 查询条件 + */ + void setShareAttribute(FileDocument fileDocument, long expiresAt, ShareDO share, Query query) { + Update update = new Update(); + setShareAttribute(update, expiresAt, share.getId(), share.getIsPrivacy(), share.getExtractionCode(), share.getOperationPermissionList()); + mongoTemplate.updateMulti(query, update, COLLECTION_NAME); + // 修改第一个文件/文件夹 + updateShareFirst(fileDocument, update, true); + } + + private void updateShareFirst(FileDocument fileDocument, Update update, boolean share) { + if (share) { + update.set(Constants.SHARE_BASE, true); + } else { + update.unset(Constants.SHARE_BASE); + } + Query query1 = new Query(); + query1.addCriteria(Criteria.where("_id").is(fileDocument.getId())); + mongoTemplate.updateFirst(query1, update, COLLECTION_NAME); + } + + /** + * 设置共享属性 + * + * @param expiresAt 过期时间 + * @param shareId shareId + * @param isPrivacy isPrivacy + * @param extractionCode extractionCode + */ + private static void setShareAttribute(Update update, long expiresAt, String shareId, Boolean isPrivacy, String extractionCode, List operationPermissionListList) { + update.set(Constants.IS_SHARE, true); + update.set(Constants.SHARE_ID, shareId); + update.set(Constants.EXPIRES_AT, expiresAt); + update.set(Constants.IS_PRIVACY, isPrivacy); + if (operationPermissionListList != null) { + update.set(Constants.OPERATION_PERMISSION_LIST, operationPermissionListList); + } + if (BooleanUtil.isTrue(isPrivacy)) { + update.set(Constants.EXTRACTION_CODE, extractionCode); + } else { + update.unset(Constants.EXTRACTION_CODE); + } + } + + /** + * 通过文件的绝对路径获取用户名 + * + * @param absolutePath 绝对路径 + * @return 用户名 + */ + public String getUsernameByAbsolutePath(Path absolutePath) { + if (absolutePath == null) { + return null; + } + Path parentPath = Paths.get(fileProperties.getRootDir()); + if (absolutePath.startsWith(parentPath)) { + Path relativePath = parentPath.relativize(absolutePath); + if (relativePath.getNameCount() > 1) { + return relativePath.getName(0).toString(); + } + } + return null; + } + + /*** + * 解除共享属性 + * @param fileDocument FileDocument + * @param query 查询条件 + */ + void unsetShareAttribute(FileDocument fileDocument, Query query) { + Update update = new Update(); + update.unset(Constants.SHARE_ID); + update.unset(Constants.IS_SHARE); + update.unset(Constants.SUB_SHARE); + update.unset(Constants.EXPIRES_AT); + update.unset(Constants.IS_PRIVACY); + update.unset(Constants.OPERATION_PERMISSION_LIST); + update.unset(Constants.EXTRACTION_CODE); + mongoTemplate.updateMulti(query, update, COLLECTION_NAME); + // 修改第一个文件/文件夹 + updateShareFirst(fileDocument, update, false); + } + + public void checkPermissionUsername(String username, String currentUsername, List operationPermissionList, OperationPermission operationPermission) { + if (!username.equals(currentUsername) && noPermission(operationPermissionList, operationPermission)) { + throw new CommonException(ExceptionType.PERMISSION_DENIED); + } + } + + public void checkPermissionUsername(String username, List operationPermissionList, OperationPermission operationPermission) { + if (!username.equals(userLoginHolder.getUsername()) && noPermission(operationPermissionList, operationPermission)) { + throw new CommonException(ExceptionType.PERMISSION_DENIED); + } + } + + public void checkPermissionUserId(String userId, List operationPermissionList, OperationPermission operationPermission) { + if (!userId.equals(userLoginHolder.getUserId()) && noPermission(operationPermissionList, operationPermission)) { + throw new CommonException(ExceptionType.PERMISSION_DENIED); + } + } + + private static boolean noPermission(List operationPermissionList, OperationPermission operationPermission) { + return operationPermissionList == null || !operationPermissionList.contains(operationPermission); + } + + public void deleteDependencies(String username, List fileIds, boolean sweep) { + if (sweep) { + // delete history version + fileVersionService.deleteAll(fileIds); + // delete video cache + videoProcessService.deleteVideoCacheByIds(username, fileIds); + } + // delete share + Query shareQuery = new Query(); + shareQuery.addCriteria(Criteria.where(Constants.FILE_ID).in(fileIds)); + mongoTemplate.remove(shareQuery, ShareDO.class); + // delete index + luceneService.deleteIndexDocuments(fileIds); + } + + public Query getAllByFolderQuery(FileDocument fileDocument) { + Query query1 = new Query(); + query1.addCriteria(Criteria.where(USER_ID).is(fileDocument.getUserId())); + query1.addCriteria(Criteria.where("path").regex("^" + ReUtil.escape(fileDocument.getPath() + fileDocument.getName() + "/"))); + return query1; + } + + public void deleteFile(String username, File file) { + String fileAbsolutePath = file.getAbsolutePath(); + String fileName = file.getName(); + // 修改为公共目录,不再包含用户名路径组件 + String relativePath = fileAbsolutePath.substring(fileProperties.getRootDir().length(), fileAbsolutePath.length() - fileName.length()); + String userId = userService.getUserIdByUserName(username); + if (CharSequenceUtil.isBlank(userId)) { + return; + } + Query query = new Query(); + // 文件是否存在 + FileDocument fileDocument = getFileDocument(userId, fileName, relativePath, query); + if (fileDocument != null) { + deleteDependencies(username, Collections.singletonList(fileDocument.getId()), false); + mongoTemplate.remove(query, COLLECTION_NAME); + if (BooleanUtil.isTrue(fileDocument.getIsFolder())) { + // 删除文件夹及其下的所有文件 + mongoTemplate.remove(getAllByFolderQuery(fileDocument), FileDocument.class); + luceneService.deleteIndexDocuments(Collections.singletonList(fileDocument.getId())); + } + } + pushMessage(username, relativePath, Constants.DELETE_FILE); + } + + public void modifyFile(String username, File file) { + // 判断文件是否存在 + if (!file.exists()) { + return; + } + String fileAbsolutePath = file.getAbsolutePath(); + String fileName = file.getName(); + String relativePath = fileAbsolutePath.substring(fileProperties.getRootDir().length() + username.length() + 1, fileAbsolutePath.length() - fileName.length()); + String userId = userService.getUserIdByUserName(username); + if (CharSequenceUtil.isBlank(userId)) { + return; + } + Query query = new Query(); + // 文件是否存在 + FileDocument fileDocument = getFileDocument(userId, fileName, relativePath, query); + + String suffix = MyFileUtils.extName(file.getName()); + String contentType = FileContentTypeUtils.getContentType(file, suffix); + // 文件是否存在 + if (fileDocument != null) { + Update update = new Update(); + update.set("size", file.length()); + update.set("md5", file.length() + "/" + fileDocument.getName()); + update.set(Constants.SUFFIX, suffix); + String fileContentType = getContentType(file, contentType); + update.set(Constants.CONTENT_TYPE, fileContentType); + LocalDateTime updateTime = getFileLastModifiedTime(file); + update.set(UPDATE_DATE, updateTime); + // 如果size相同,不更新,且更新时间在1秒内,则不更新 + if (TimeUntils.isWithinOneSecond(fileDocument.getUpdateDate(), updateTime)) { + return; + } + UpdateResult updateResult = mongoTemplate.upsert(query, update, COLLECTION_NAME); + fileDocument.setSize(file.length()); + fileDocument.setUpdateDate(updateTime); + if (contentType.contains(Constants.CONTENT_TYPE_MARK_DOWN) || "md".equals(suffix)) { + // 写入markdown内容 + String markDownContent = FileUtil.readString(file, MyFileUtils.getFileCharset(file)); + update.set("contentText", markDownContent); + } + pushMessage(username, fileDocument, Constants.UPDATE_FILE); + if (updateResult.getModifiedCount() > 0) { + luceneService.pushCreateIndexQueue(fileDocument.getId()); + } + // 判断文件类型中是否包含utf-8 + if (fileContentType.contains("utf-8") || fileContentType.contains("office")) { + // 修改文件之后保存历史版本 + fileVersionService.saveFileVersion(username, Paths.get(relativePath, file.getName()).toString(), userId); + } + } else { + createFile(username, file, userId, null); + } + } + + public List sortByFileName(UploadApiParamDTO upload, List fileIntroVOList, String order) { + // 按文件名排序 + if (CharSequenceUtil.isBlank(order)) { + fileIntroVOList = fileIntroVOList.stream().sorted(this::compareByFileName).toList(); + } + if (!CharSequenceUtil.isBlank(order) && "name".equals(upload.getSortableProp())) { + fileIntroVOList = fileIntroVOList.stream().sorted(this::compareByFileName).toList(); + if ("descending".equals(order)) { + fileIntroVOList = fileIntroVOList.stream().sorted(this::desc).toList(); + } + } + return fileIntroVOList; + } + + public int desc(FileBase f1, FileBase f2) { + return -1; + } + + /*** + * 根据文件名排序 + * @param f1 f1 + * @param f2 f2 + */ + public int compareByFileName(FileBase f1, FileBase f2) { + if (Boolean.TRUE.equals(f1.getIsFolder()) && !f2.getIsFolder()) { + return -1; + } else if (f1.getIsFolder() && f2.getIsFolder()) { + return compareByName(f1, f2); + } else if (!f1.getIsFolder() && Boolean.TRUE.equals(f2.getIsFolder())) { + return 1; + } else { + return compareByName(f1, f2); + } + } + + public int compareByName(FileBase f1, FileBase f2) { + Comparator cmp = Collator.getInstance(java.util.Locale.CHINA); + return cmp.compare(f1.getName(), f2.getName()); + } + + /** + * 按文件大小倒叙排列 + */ + public int compareBySizeDesc(FileBase f1, FileBase f2) { + return f2.getSize() - f1.getSize() > 0 ? 1 : -1; + } + + /** + * 按文件大小正叙排列 + */ + public int compareBySize(FileBase f1, FileBase f2) { + return f1.getSize() - f2.getSize() > 0 ? 1 : -1; + } + + /** + * 按最近修改时间倒叙排列 + */ + public int compareByUpdateDateDesc(FileBase f1, FileBase f2) { + return f1.getUpdateDate().compareTo(f2.getUpdateDate()); + } + + /** + * 按最近修改时间正叙排列 + */ + public int compareByUpdateDate(FileBase f1, FileBase f2) { + return f2.getUpdateDate().compareTo(f1.getUpdateDate()); + } + + public static boolean isLock(FileDocument fileDocument) { + String filePath = getLockFilePath(fileDocument); + // 完全匹配 + return isLock(filePath); + } + + public static boolean isLock(File file, String rootDir, String username) { + String filePath = getLockFilePath(file, rootDir, username); + return isLock(filePath); + } + + public static void lockFile(FileDocument fileDocument) { + String filePath = getLockFilePath(fileDocument); + CommonFileService.FILE_PATH_LOCK.add(getLockFilePath(fileDocument)); + log.info("lock file path: {}", filePath); + } + + public static void unLockFile(FileDocument fileDocument) { + CommonFileService.FILE_PATH_LOCK.remove(getLockFilePath(fileDocument)); + } + + private static boolean isLock(String filePath) { + // 完全匹配 + if (CommonFileService.FILE_PATH_LOCK.contains(filePath)) { + return true; + } + // 前缀匹配 + return CommonFileService.FILE_PATH_LOCK.stream().anyMatch(filePath::startsWith); + } + + private static String getLockFilePath(FileDocument fileDocument) { + return fileDocument.getPath() + fileDocument.getName() + (Boolean.TRUE.equals(fileDocument.getIsFolder()) ? MyWebdavServlet.PATH_DELIMITER : ""); + } + + private static String getLockFilePath(File file, String rooDir, String username) { + Path absolutePath = file.toPath(); + Path relativePath = absolutePath.subpath(Paths.get(rooDir, username).getNameCount(), absolutePath.getNameCount()); + return MyWebdavServlet.PATH_DELIMITER + relativePath + (file.isDirectory() ? MyWebdavServlet.PATH_DELIMITER : ""); + } + + public static void setPage(Integer pageSize, Integer pageIndex, Query query) { + if (pageSize == null) { + pageSize = 10; + } + if (pageIndex == null) { + pageIndex = 1; + } + long skip = (long) (pageIndex - 1) * pageSize; + query.skip(skip); + query.limit(pageSize); + } + + /** + * 删除有删除标记的文档 + */ + public void deleteDocWithDeleteFlag() { + try { + boolean run = true; + log.debug("开始删除有删除标记的文档"); + while (run) { + Query query = new Query(); + query.addCriteria(Criteria.where("delete").is(1)); + long count = mongoTemplate.count(query, CommonFileService.COLLECTION_NAME); + if (count == 0) { + run = false; + } + List pipeline = Arrays.asList(new org.bson.Document("$match", new org.bson.Document("delete", 1)), new org.bson.Document("$project", new org.bson.Document("_id", 1).append("name", 1).append("path", 1).append("userId", 1)), new org.bson.Document("$sort", new org.bson.Document("isFolder", 1L)), new org.bson.Document("$limit", 1)); + AggregateIterable aggregateIterable = mongoTemplate.getCollection(CommonFileService.COLLECTION_NAME).aggregate(pipeline); + for (org.bson.Document document : aggregateIterable) { + Object ObjectId = document.get("_id"); + String fileId = null; + if (ObjectId instanceof ObjectId) { + fileId = document.getObjectId("_id").toHexString(); + } + if (ObjectId instanceof String) { + fileId = document.getString("_id"); + } + String userId = document.getString("userId"); + String username = userService.getUserNameById(userId); + String name = document.getString("name"); + String path = document.getString("path"); + File file = new File(Paths.get(fileProperties.getRootDir(), username, path, name).toString()); + if (!file.exists() || fileProperties.getMonitorIgnoreFilePrefix().stream().anyMatch(file.getName()::startsWith)) { + deleteFile(username, file); + log.info("删除不存在的文档: {}", file.getAbsolutePath()); + } else { + if (fileId != null) { + Query removeDeletequery = new Query(); + removeDeletequery.addCriteria(Criteria.where("_id").in(fileId).and("delete").is(1)); + Update update = new Update(); + update.unset("delete"); + UpdateResult result = mongoTemplate.updateMulti(removeDeletequery, update, CommonFileService.COLLECTION_NAME); + if (result.getModifiedCount() == 0) { + log.warn("Failed to unset delete flag for file: {}", file.getAbsolutePath()); + } + } + } + } + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } + } + + /** + * 更新文件封面 + * + * @param fileId 文件Id + * @param coverFile 封面文件 + */ + public void updateCoverFileDocument(String fileId, File coverFile) { + if (coverFile == null || !coverFile.exists()) { + return; + } + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(new ObjectId(fileId))); + Update update = new Update(); + generateThumbnail(coverFile, update); + update.set("showCover", true); + mongoTemplate.updateFirst(query, update, COLLECTION_NAME); + } +} diff --git a/src/main/java/com/jmal/clouddisk/service/impl/DirectLinkService.java b/src/main/java/com/jmal/clouddisk/service/impl/DirectLinkService.java new file mode 100644 index 0000000..05eaaa9 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/service/impl/DirectLinkService.java @@ -0,0 +1,118 @@ +package com.jmal.clouddisk.service.impl; + +import cn.hutool.core.codec.Base64; +import com.jmal.clouddisk.exception.CommonException; +import com.jmal.clouddisk.exception.ExceptionType; +import com.jmal.clouddisk.model.DirectLink; +import com.jmal.clouddisk.model.FileDocument; +import com.jmal.clouddisk.service.Constants; +import com.jmal.clouddisk.service.IUserService; +import io.reactivex.rxjava3.core.Single; +import io.reactivex.rxjava3.schedulers.Schedulers; +import lombok.RequiredArgsConstructor; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.data.mongodb.core.query.Update; +import org.springframework.stereotype.Service; + +import java.security.SecureRandom; +import java.time.LocalDateTime; + +@RequiredArgsConstructor +@Service +public class DirectLinkService { + + public static final String COLLECTION_NAME = "direct_links"; + public static final String MARK = "mark"; + private final FileServiceImpl fileService; + private final UserLoginHolder userLoginHolder; + private final MongoTemplate mongoTemplate; + + public String createDirectLink(String fileId) { + String userId = userLoginHolder.getUserId(); + checkOwnership(fileId, userId); + DirectLink directLink = getDirectLink(fileId); + if (directLink != null) { + return directLink.getMark(); + } + String mark = generateMark(); + Single.create(emitter -> upsertDirectLink(fileId, mark, userId)).subscribeOn(Schedulers.io()).subscribe(); + return mark; + } + + public String resetDirectLink(String fileId) { + String userId = userLoginHolder.getUserId(); + checkOwnership(fileId, userId); + String mark = generateMark(); + Single.create(emitter -> upsertDirectLink(fileId, mark, userId)).subscribeOn(Schedulers.io()).subscribe(); + return mark; + } + + public String resetAllDirectLink(String fileId) { + checkOwnership(fileId, userLoginHolder.getUserId()); + Query query = new Query(); + query.addCriteria(Criteria.where(IUserService.USER_ID).is(userLoginHolder.getUserId())); + mongoTemplate.remove(query, COLLECTION_NAME); + return resetDirectLink(fileId); + } + + public String getFileIdByMark(String mark) { + Query query = new Query(); + query.addCriteria(Criteria.where(MARK).is(mark)); + DirectLink directLink = mongoTemplate.findOne(query, DirectLink.class, COLLECTION_NAME); + if (directLink == null) { + return null; + } + return directLink.getFileId(); + } + + private void upsertDirectLink(String fileId, String mark, String userId) { + Query query = new Query(); + query.addCriteria(Criteria.where(Constants.FILE_ID).is(fileId)); + Update update = new Update(); + update.set(MARK, mark); + update.set(Constants.FILE_ID, fileId); + update.set(IUserService.USER_ID, userId); + update.set(Constants.UPDATE_DATE, LocalDateTime.now()); + mongoTemplate.upsert(query, update, COLLECTION_NAME); + } + + private String generateMark() { + String mark; + while (true) { + mark = Base64.encodeUrlSafe(new SecureRandom().generateSeed(12)); + if (!isExistsMark(mark)) { + return mark; + } + } + } + + private boolean isExistsMark(String mark) { + Query query = new Query(); + query.addCriteria(Criteria.where(MARK).is(mark)); + return mongoTemplate.exists(query, DirectLink.class, COLLECTION_NAME); + } + + private DirectLink getDirectLink(String fileId) { + Query query = new Query(); + query.addCriteria(Criteria.where(Constants.FILE_ID).is(fileId)); + return mongoTemplate.findOne(query, DirectLink.class, COLLECTION_NAME); + } + + /** + * 检查文件所有权 + * @param fileId 文件id + * @param userId 用户id + */ + private void checkOwnership(String fileId, String userId) { + FileDocument fileDocument = fileService.getById(fileId); + if (fileDocument == null) { + throw new CommonException(ExceptionType.MISSING_PARAMETERS); + } + if (!fileDocument.getUserId().equals(userId)) { + throw new CommonException(ExceptionType.PERMISSION_DENIED); + } + } + +} diff --git a/src/main/java/com/jmal/clouddisk/service/impl/FileServiceImpl.java b/src/main/java/com/jmal/clouddisk/service/impl/FileServiceImpl.java new file mode 100644 index 0000000..483f64d --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/service/impl/FileServiceImpl.java @@ -0,0 +1,2338 @@ +package com.jmal.clouddisk.service.impl; + +import cn.hutool.core.codec.Base64; +import cn.hutool.core.convert.Convert; +import cn.hutool.core.date.DatePattern; +import cn.hutool.core.date.LocalDateTimeUtil; +import cn.hutool.core.io.FileTypeUtil; +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.io.file.PathUtil; +import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.core.thread.ThreadUtil; +import cn.hutool.core.util.BooleanUtil; +import cn.hutool.core.util.ReUtil; +import cn.hutool.core.util.StrUtil; +import cn.hutool.crypto.SecureUtil; +import cn.hutool.crypto.symmetric.AES; +import com.jmal.clouddisk.exception.CommonException; +import com.jmal.clouddisk.exception.ExceptionType; +import com.jmal.clouddisk.interceptor.AuthInterceptor; +import com.jmal.clouddisk.lucene.SearchFileService; +import com.jmal.clouddisk.media.VideoInfo; +import com.jmal.clouddisk.media.VideoProcessService; +import com.jmal.clouddisk.model.*; +import com.jmal.clouddisk.model.query.SearchDTO; +import com.jmal.clouddisk.model.rbac.ConsumerDO; +import com.jmal.clouddisk.oss.web.WebOssCommonService; +import com.jmal.clouddisk.oss.web.WebOssCopyFileService; +import com.jmal.clouddisk.oss.web.WebOssService; +import com.jmal.clouddisk.service.Constants; +import com.jmal.clouddisk.service.IFileService; +import com.jmal.clouddisk.util.*; +import com.jmal.clouddisk.webdav.MyWebdavServlet; +import io.reactivex.rxjava3.core.Single; +import io.reactivex.rxjava3.schedulers.Schedulers; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import lombok.extern.slf4j.Slf4j; +import org.apache.catalina.connector.ClientAbortException; +import org.apache.commons.compress.utils.Lists; +import org.apache.tika.mime.MimeType; +import org.apache.tika.mime.MimeTypeException; +import org.apache.tika.mime.MimeTypes; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.mozilla.universalchardet.ReaderFactory; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.domain.Sort; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.data.mongodb.core.query.Update; +import org.springframework.http.HttpHeaders; +import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.servlet.mvc.method.annotation.StreamingResponseBody; + +import javax.imageio.ImageIO; +import java.awt.image.BufferedImage; +import java.io.BufferedReader; +import java.io.File; +import java.io.IOException; +import java.net.URLEncoder; +import java.nio.charset.Charset; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; +import java.util.*; + +import static com.jmal.clouddisk.service.IUserService.USER_ID; + + +/** + * @author jmal + * @Description 文件管理 + * @Author jmal + * @Date 2020-01-14 13:05 + */ +@Service +@Slf4j +public class FileServiceImpl extends CommonFileService implements IFileService { + + @Autowired + MultipartUpload multipartUpload; + + @Autowired + WebOssService webOssService; + + @Autowired + WebOssCopyFileService webOssCopyFileService; + + @Autowired + VideoProcessService videoProcessService; + + @Autowired + TagService tagService; + + @Autowired + private SearchFileService searchFileService; + + private static final AES aes = SecureUtil.aes(); + + @Autowired + private LogService logService; + + @Override + public ResponseResult listFiles(UploadApiParamDTO upload) throws CommonException { + ResponseResult result = ResultUtil.genResult(); + Path path = Paths.get(upload.getUsername(), upload.getCurrentDirectory()); + String ossPath = CaffeineUtil.getOssPath(path); + if (ossPath != null) { + return webOssService.searchFileAndOpenOssFolder(path, upload); + } + String currentDirectory = getUserDirectory(upload.getCurrentDirectory()); + + if (!CharSequenceUtil.isBlank(upload.getFolder()) && checkMountParam(upload, currentDirectory)) { + return listFiles(upload); + } + + Criteria criteria; + String queryFileType = upload.getQueryFileType(); + if (!CharSequenceUtil.isBlank(queryFileType)) { + criteria = switch (upload.getQueryFileType()) { + case Constants.AUDIO -> Criteria.where(Constants.CONTENT_TYPE).regex("^" + Constants.AUDIO); + case Constants.VIDEO -> Criteria.where(Constants.CONTENT_TYPE).regex("^" + Constants.VIDEO); + case Constants.CONTENT_TYPE_IMAGE -> Criteria.where(Constants.CONTENT_TYPE).regex("^image"); + case "text" -> Criteria.where(Constants.SUFFIX).in(fileProperties.getSimText()); + case Constants.DOCUMENT -> Criteria.where(Constants.SUFFIX).in(fileProperties.getDocument()); + case "trash" -> new Criteria(); + default -> Criteria.where("path").is(currentDirectory); + }; + } else { + criteria = getOtherCriteria(upload, currentDirectory); + } + List list = getFileDocuments(upload, criteria); + result.setData(list); + result.setCount(getFileDocumentsCount(upload, criteria)); + if (upload.getProps() != null) { + result.setProps(upload.getProps()); + } + return result; + } + + private static Criteria getOtherCriteria(UploadApiParamDTO upload, String currentDirectory) { + Criteria criteria; + criteria = Criteria.where("path").is(currentDirectory); + if (currentDirectory.length() < 2) { + Boolean isFolder = upload.getIsFolder(); + if (isFolder != null) { + criteria = Criteria.where(Constants.IS_FOLDER).is(isFolder); + } + if (BooleanUtil.isTrue(upload.getIsFavorite())) { + criteria = Criteria.where(Constants.IS_FAVORITE).is(upload.getIsFavorite()); + } + if (BooleanUtil.isTrue(upload.getIsMount())) { + criteria = Criteria.where("mountFileId").exists(true); + } + String tagId = upload.getTagId(); + if (CharSequenceUtil.isNotBlank(tagId)) { + criteria = Criteria.where("tags.tagId").is(tagId); + } + } + return criteria; + } + + /** + * 查看是否有挂载文件 + * + * @param upload 上传参数 + * @param currentDirectory 当前目录 + * @return 是否有挂载文件 + */ + private boolean checkMountParam(UploadApiParamDTO upload, String currentDirectory) { + if (!CharSequenceUtil.isBlank(currentDirectory)) { + Path currentDirectoryPath = Paths.get(currentDirectory); + if (currentDirectoryPath.getFileName() == null) { + return false; + } + String fileId = upload.getFolder(); + FileDocument fileDocument = getById(fileId); + if (fileDocument != null) { + upload.setUserId(fileDocument.getUserId()); + Map props = new HashMap<>(2); + String username = userService.getUserNameById(fileDocument.getUserId()); + props.put("fileUsername", username); + upload.setProps(props); + upload.setUsername(username); + upload.setCurrentDirectory(fileDocument.getPath() + fileDocument.getName()); + upload.setFolder(null); + return true; + } + } + return false; + } + + @Override + public long takeUpSpace(String userId) throws CommonException { + return occupiedSpace(userId); + } + + /*** + * 通过查询条件获取文件数 + * @param upload UploadApiParamDTO + * @param criteriaList criteriaList + * @return 文件数 + */ + private long getFileDocumentsCount(UploadApiParamDTO upload, Criteria... criteriaList) { + Query query = new Query(); + query.addCriteria(Criteria.where(USER_ID).is(upload.getUserId())); + for (Criteria criteria : criteriaList) { + query.addCriteria(criteria); + } + String collectionName = BooleanUtil.isTrue(upload.getIsTrash()) ? TRASH_COLLECTION_NAME : COLLECTION_NAME; + if (TRASH_COLLECTION_NAME.equals(collectionName)) { + query.addCriteria(Criteria.where("hidden").is(false)); + } + return mongoTemplate.count(query, collectionName); + } + + private List getFileDocuments(UploadApiParamDTO upload, Criteria... criteriaList) { + List fileIntroVOList; + Query query = getQuery(upload, criteriaList); + String order = listByPage(upload, query); + if (!CharSequenceUtil.isBlank(order)) { + String sortableProp = upload.getSortableProp(); + Sort.Direction direction = Sort.Direction.ASC; + if ("descending".equals(order)) { + direction = Sort.Direction.DESC; + } + query.with(Sort.by(direction, sortableProp)); + } else { + query.with(Sort.by(Sort.Direction.DESC, Constants.IS_FOLDER)); + } + query.fields().exclude("content").exclude("music.coverBase64").exclude("contentText"); + String collectionName = BooleanUtil.isTrue(upload.getIsTrash()) ? TRASH_COLLECTION_NAME : COLLECTION_NAME; + if (TRASH_COLLECTION_NAME.equals(collectionName)) { + query.addCriteria(Criteria.where("hidden").is(false)); + } + List list = mongoTemplate.find(query, FileDocument.class, collectionName); + long now = System.currentTimeMillis(); + fileIntroVOList = list.parallelStream().map(fileDocument -> { + LocalDateTime updateDate = fileDocument.getUpdateDate(); + long update = TimeUntils.getMilli(updateDate); + fileDocument.setAgoTime(now - update); + if (showFolderSize(upload, fileDocument)) { + String path = fileDocument.getPath() + fileDocument.getName() + File.separator; + long size = getFolderSize(collectionName, fileDocument.getUserId(), path); + fileDocument.setSize(size); + } + FileIntroVO fileIntroVO = new FileIntroVO(); + BeanUtils.copyProperties(fileDocument, fileIntroVO); + return fileIntroVO; + }).toList(); + pushConfigInfo(upload); + return sortByFileName(upload, fileIntroVOList, order); + } + + /** + * 是否显示文件夹大小 + * + * @param upload UploadApiParamDTO + * @param fileDocument FileDocument + */ + private static boolean showFolderSize(UploadApiParamDTO upload, FileDocument fileDocument) { + return BooleanUtil.isTrue(fileDocument.getIsFolder()) && BooleanUtil.isTrue(upload.getShowFolderSize()); + } + + private void pushConfigInfo(UploadApiParamDTO upload) { + pushMessage(upload.getUsername(), Constants.LOCAL_CHUNK_SIZE, Constants.UPLOADER_CHUNK_SIZE); + } + + /*** + * 设置分页条件 + * @return 排序条件 + */ + public static String listByPage(UploadApiParamDTO upload, Query query) { + Integer pageSize = upload.getPageSize(); + Integer pageIndex = upload.getPageIndex(); + if (pageSize != null && pageIndex != null) { + long skip = (pageIndex - 1L) * pageSize; + query.skip(skip); + query.limit(pageSize); + } + return upload.getOrder(); + } + + private List getDirDocuments(UploadApiParamDTO upload, Criteria... criteriaList) { + Query query = getQuery(upload, criteriaList); + query.addCriteria(Criteria.where(Constants.IS_FOLDER).is(true)); + List list = mongoTemplate.find(query, FileDocument.class, COLLECTION_NAME); + // 按文件名排序 + list.sort(this::compareByFileName); + return list; + } + + private Query getQuery(UploadApiParamDTO upload, Criteria[] criteriaList) { + // 修改为公共空间:移除用户ID隔离条件 + // String userId = upload.getUserId(); + // if (CharSequenceUtil.isBlank(userId)) { + // throw new CommonException(ExceptionType.MISSING_PARAMETERS.getCode(), ExceptionType.MISSING_PARAMETERS.getMsg() + USER_ID); + // } + Query query = new Query(); + // 注释掉用户隔离条件:所有用户现在共享同一个文件空间 + // query.addCriteria(Criteria.where(USER_ID).is(userId)); + for (Criteria criteria : criteriaList) { + query.addCriteria(criteria); + } + return query; + } + + @Override + public ResponseResult> searchFile(UploadApiParamDTO upload, String keyword) throws CommonException { + SearchDTO.SearchDTOBuilder builder = SearchDTO.builder(); + builder.keyword(keyword) // 直接在builder上调用方法,而不是在searchDTO上调用set + .userId(userLoginHolder.getUserId()) + .currentDirectory(upload.getCurrentDirectory()) + .isFolder(upload.getIsFolder()) + .type(upload.getQueryFileType()) + .isFavorite(upload.getIsFavorite()) + .isMount(upload.getIsMount()) + .tagId(upload.getTagId()) + .folder(upload.getFolder()) + .modifyStart(upload.getQueryModifyStart()) + .modifyEnd(upload.getQueryModifyEnd()) + .sizeMin(upload.getQuerySizeMin()) + .sizeMax(upload.getQuerySizeMax()) + .searchMount(upload.getSearchMount()) + .searchOverall(upload.getSearchOverall()) + .exactSearch(upload.getExactSearch()) + .includeTagName(Convert.toBool(upload.getIncludeTagName(), true)) + .includeFileName(Convert.toBool(upload.getIncludeFileName(), true)) + .includeFileContent(Convert.toBool(upload.getIncludeFileContent(), true)) + .build(); + SearchDTO searchDTO = builder.build(); + searchDTO.setPage(upload.getPageIndex()); + searchDTO.setPageSize(upload.getPageSize()); + searchDTO.setSortProp(upload.getSortableProp()); + searchDTO.setSortOrder(upload.getOrder()); + return searchFileService.searchFile(searchDTO); + } + + private ResponseResult getCountResponseResult(UploadApiParamDTO upload, ResponseResult result, Criteria... criteriaList) { + List list = getFileDocuments(upload, criteriaList); + result.setData(list); + result.setCount(getFileDocumentsCount(upload, criteriaList)); + return result; + } + + @Override + public ResponseResult searchFileAndOpenDir(UploadApiParamDTO upload, String id, String folder) throws CommonException { + ResponseResult result = ResultUtil.genResult(); + + setMountAttributes(upload, id, folder); + + // 判断是否为ossPath + Path path = Paths.get(upload.getUsername(), upload.getCurrentDirectory()); + String ossPath = CaffeineUtil.getOssPath(path); + if (ossPath != null) { + return webOssService.searchFileAndOpenOssFolder(path, upload); + } + FileDocument fileDocument = mongoTemplate.findById(id, FileDocument.class, COLLECTION_NAME); + if (fileDocument == null) { + return ResultUtil.error(ExceptionType.FILE_NOT_FIND); + } + if (!fileDocument.getUserId().equals(userLoginHolder.getUserId())) { + Map props = new HashMap<>(2); + String username = userService.getUserNameById(fileDocument.getUserId()); + props.put("fileUsername", username); + result.setProps(props); + } + String currentDirectory = getUserDirectory(fileDocument.getPath() + fileDocument.getName()); + + // 判断是否为ossPath + path = Paths.get(upload.getUsername(), currentDirectory); + ossPath = CaffeineUtil.getOssPath(path); + if (ossPath != null) { + return webOssService.searchFileAndOpenOssFolder(path, upload); + } + + Criteria criteria = Criteria.where("path").is(currentDirectory); + upload.setUserId(fileDocument.getUserId()); + return getCountResponseResult(upload, result, criteria); + } + + /** + * 设置挂载属性 + */ + private static void setMountAttributes(UploadApiParamDTO upload, String id, String folder) { + if (CharSequenceUtil.isNotBlank(folder)) { + Path path = Paths.get(folder); + String username = path.subpath(0, 1).toString(); + String ossPath = CaffeineUtil.getOssPath(Paths.get(id)); + if (ossPath != null) { + upload.setCurrentDirectory(path.subpath(1, path.getNameCount()).toString()); + } + upload.setUsername(username); + } + } + + private FileDocument getFileDocumentById(String fileId, boolean excludeContent) { + if (CharSequenceUtil.isBlank(fileId) || Constants.REGION_DEFAULT.equals(fileId)) { + return null; + } + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(fileId)); + if (excludeContent) { + query.fields().exclude("content"); + } + query.fields().exclude("contentText"); + return mongoTemplate.findOne(query, FileDocument.class, COLLECTION_NAME); + } + + private FileDocument getOriginalFileDocumentById(String fileId) { + FileDocument fileDocument = getFileDocumentById(fileId, true); + if (fileDocument != null && fileDocument.getMountFileId() != null) { + fileDocument = getFileDocumentById(fileDocument.getMountFileId(), true); + } + return fileDocument; + } + + /** + * 获取文件的相对路径 + * + * @param fileDocument FileDocument + * @return 相对路径 + */ + private String getRelativePath(FileDocument fileDocument) { + if (fileDocument == null) { + return getUserDirectory(null); + } + if (Boolean.TRUE.equals(fileDocument.getIsFolder())) { + return getUserDirectory(fileDocument.getPath() + fileDocument.getName()); + } + String currentDirectory = fileDocument.getPath() + fileDocument.getName(); + return currentDirectory.replaceAll(fileProperties.getSeparator(), File.separator); + } + + /*** + * 获取用户的绝对目录 + * @param username username + */ + private String getUserDir(String username) { + // 修改为公共目录,不再按用户分离 + return Paths.get(fileProperties.getRootDir()).toString(); + } + + + @Override + public ResponseResult queryFileTree(UploadApiParamDTO upload, String fileId) { + // 设置是否只显示文件夹 + upload.setJustShowFolder(true); + if (!CharSequenceUtil.isBlank(fileId) && BooleanUtil.isFalse(upload.getHideMountFile())) { + Path path = Paths.get(fileId); + String ossPath = CaffeineUtil.getOssPath(path); + if (ossPath != null) { + return webOssService.searchFileAndOpenOssFolder(path, upload); + } + } + + String currentDirectory = getUserDirectory(null); + if (!CharSequenceUtil.isBlank(fileId)) { + FileDocument fileDocument = getById(fileId); + if (fileDocument != null) { + if (fileDocument.getOssFolder() != null && BooleanUtil.isFalse(upload.getHideMountFile())) { + Path path = Paths.get(upload.getUsername(), fileDocument.getOssFolder()); + String ossPath = CaffeineUtil.getOssPath(path); + if (ossPath != null) { + return webOssService.searchFileAndOpenOssFolder(path, upload); + } + } + if (!fileDocument.getUserId().equals(userLoginHolder.getUserId())) { + upload.setUserId(fileDocument.getUserId()); + upload.setUsername(userService.getUserNameById(fileDocument.getUserId())); + } + currentDirectory = getUserDirectory(fileDocument.getPath() + fileDocument.getName()); + } + } + Criteria criteria = Criteria.where("path").is(currentDirectory); + List list = getDirDocuments(upload, criteria); + if (BooleanUtil.isTrue(upload.getHideMountFile())) { + list = list.stream().filter(fileDocument -> fileDocument.getMountFileId() == null).toList(); + } + return ResultUtil.success(list); + } + + @Override + public String imgUpload(String baseUrl, String filepath, MultipartFile file) { + String username = userLoginHolder.getUsername(); + String fileName = file.getOriginalFilename(); + // 修改为公共目录,不再按用户分离 + Path path = Paths.get(fileProperties.getRootDir(), filepath, fileName); + try { + File newFile = path.toFile(); + FileUtil.writeFromStream(file.getInputStream(), newFile); + loopCreateDir(username, Paths.get(fileProperties.getRootDir()).getNameCount(), path); + if (!userService.getDisabledWebp(userLoginHolder.getUserId()) && (!"ico".equals(FileUtil.getSuffix(newFile)))) { + fileName += Constants.POINT_SUFFIX_WEBP; + } + uploadFile(username, newFile); + // 修改为公共空间路径,不再包含用户名 + return baseUrl + Paths.get("/file", filepath, fileName); + } catch (IOException e) { + throw new CommonException(ExceptionType.FAIL_UPLOAD_FILE.getCode(), ExceptionType.FAIL_UPLOAD_FILE.getMsg()); + } + } + + /*** + * 递归创建父级目录(数据库层面) + * @param username username + * @param path path + */ + private void loopCreateDir(String username, int rootPathCount, Path path) { + createFile(username, path.toFile(), userLoginHolder.getUserId(), true); + if (path.getNameCount() > rootPathCount + 1) { + loopCreateDir(username, rootPathCount, path.getParent()); + } + } + + @Override + public Optional getById(String id, Boolean content) { + FileDocument fileDocument = mongoTemplate.findById(id, FileDocument.class, COLLECTION_NAME); + if (fileDocument != null) { + String currentDirectory = getUserDirectory(fileDocument.getPath()); + String username = userService.getUserNameById(fileDocument.getUserId()); + Path filepath = Paths.get(fileProperties.getRootDir(), username, currentDirectory, fileDocument.getName()); + if (Files.exists(filepath)) { + File file = filepath.toFile(); + if (MyFileUtils.hasCharset(file)) { + Charset charset = MyFileUtils.getFileCharset(file); + fileDocument.setDecoder(charset.name()); + if (BooleanUtil.isTrue(content)) { + fileDocument.setContentText(FileUtil.readString(file, charset)); + } + } + } + return Optional.of(fileDocument); + } + return Optional.empty(); + } + + @Override + public StreamingResponseBody getStreamById(String id) { + FileDocument fileDocument = mongoTemplate.findById(id, FileDocument.class, COLLECTION_NAME); + if (fileDocument != null) { + String currentDirectory = getUserDirectory(fileDocument.getPath()); + String username = userService.getUserNameById(fileDocument.getUserId()); + Path filepath = Paths.get(fileProperties.getRootDir(), username, currentDirectory, fileDocument.getName()); + if (Files.exists(filepath)) { + File file = filepath.toFile(); + return getStreamingResponseBody(file); + } + } + return outputStream -> { + }; + } + + @Override + public FileDocument getFileDocumentByPathAndName(String path, String name, String username) { + return getFileDocumentByPathAndName(path, name, username, true); + } + + @Override + public FileDocument getFileDocumentByPathAndName(String path, String name, String username, boolean excludeContent) { + String userId = userService.getUserIdByUserName(username); + if (userId == null) { + return null; + } + return getFileDocumentByPath(path, name, userId, excludeContent); + } + + @Override + public FileDocument previewTextByPath(String filePath, String username) throws CommonException { + Path path = Paths.get(fileProperties.getRootDir(), username, filePath); + File file = path.toFile(); + if (!file.exists()) { + throw new CommonException(ExceptionType.FILE_NOT_FIND); + } + FileDocument fileDocument = new FileDocument(); + if (MyFileUtils.hasCharset(file)) { + fileDocument.setDecoder(MyFileUtils.getFileCharset(file).name()); + } + Path path1 = path.subpath(0, path.getNameCount() - 1); + int rootCount = Paths.get(fileProperties.getRootDir(), username).getNameCount(); + int path1Count = path1.getNameCount(); + String resPath = "/"; + if (rootCount < path1Count) { + resPath = path1.subpath(rootCount, path1Count).toString(); + } + fileDocument.setPath(resPath); + fileDocument.setName(file.getName()); + fileDocument.setIsFolder(file.isDirectory()); + return fileDocument; + } + + @Override + public StreamingResponseBody previewTextByPathStream(String filePath, String username) { + Path path = Paths.get(fileProperties.getRootDir(), username, filePath); + File file = path.toFile(); + if (!file.exists()) { + throw new CommonException(ExceptionType.FILE_NOT_FIND); + } + return getStreamingResponseBody(file); + } + + @NotNull + private static StreamingResponseBody getStreamingResponseBody(File file) { + return outputStream -> { + try (BufferedReader bufferedReader = ReaderFactory.createBufferedReader(file)) { + // 判断file是否为log文件 + boolean logFile = file.length() > 0 && FileTypeUtil.getType(file).equalsIgnoreCase("log"); + String line; + while ((line = bufferedReader.readLine()) != null) { + if (logFile) { + String processedLine = removeAnsiCodes(line); + outputStream.write(processedLine.getBytes()); + } else { + outputStream.write(line.getBytes()); + } + outputStream.write("\n".getBytes()); + outputStream.flush(); + } + } catch (ClientAbortException ignored) { + // ignored + } catch (IOException e) { + log.error(e.getMessage(), e); + } + }; + } + + private static String removeAnsiCodes(String text) { + return text.replaceAll("\\033\\[[;\\d]*[^\\x40-\\x7E]*[a-zA-Z]?", ""); + } + + @Override + public Optional thumbnail(String id, Boolean showCover) { + FileDocument fileDocument = mongoTemplate.findById(id, FileDocument.class, COLLECTION_NAME); + if (fileDocument != null) { + + String username = userService.getUserNameById(fileDocument.getUserId()); + + if (BooleanUtil.isTrue(showCover) && BooleanUtil.isTrue(fileDocument.getShowCover())) { + File file = FileContentUtil.getCoverPath(videoProcessService.getVideoCacheDir(username, id)); + if (file.exists()) { + fileDocument.setContent(FileUtil.readBytes(file)); + return Optional.of(fileDocument); + } + } + if (fileDocument.getContent() == null) { + String currentDirectory = getUserDirectory(fileDocument.getPath()); + File file = new File(fileProperties.getRootDir() + File.separator + username + currentDirectory + fileDocument.getName()); + if (file.exists()) { + fileDocument.setContent(FileUtil.readBytes(file)); + } + } + return Optional.of(fileDocument); + } + return Optional.empty(); + } + + @Override + public Optional getMxweb(String id) { + FileDocument fileDocument = mongoTemplate.findById(id, FileDocument.class, COLLECTION_NAME); + if (fileDocument != null) { + String username = userService.getUserNameById(fileDocument.getUserId()); + File file = Paths.get(videoProcessService.getVideoCacheDir(username, id), fileDocument.getName() + Constants.MXWEB_SUFFIX).toFile(); + if (file.exists()) { + fileDocument.setContent(FileUtil.readBytes(file)); + return Optional.of(fileDocument); + } + } + return Optional.empty(); + } + + @Override + public Optional coverOfMedia(String id, String username) throws CommonException { + FileDocument fileDocument = getFileDocumentById(id, false); + if (fileDocument != null && fileDocument.getContent() != null) { + return Optional.of(fileDocument); + } + if (Boolean.TRUE.equals(CaffeineUtil.hasThumbnailRequestCache(id))) { + return Optional.empty(); + } else { + CaffeineUtil.setThumbnailRequestCache(id); + } + String ossPath = CaffeineUtil.getOssPath(Paths.get(id)); + if (ossPath != null) { + // S3存储 + if (fileDocument == null) { + FileDocument ossFileDocument = webOssService.getFileDocumentByOssPath(ossPath, id); + setMediaCover(id, username, ossFileDocument, false); + fileDocument = ossFileDocument; + } else { + setMediaCover(id, username, fileDocument, true); + } + } else { + // 本地储存 + if (fileDocument != null) { + setMediaCover(id, username, fileDocument, true); + } else { + return Optional.empty(); + } + } + return Optional.of(fileDocument); + } + + private void setMediaCover(String id, String username, FileDocument fileDocument, boolean hasOldFileDocument) { + String contentType = fileDocument.getContentType(); + if (contentType.contains(Constants.VIDEO)) { + // 视频文件 + Query query = new Query().addCriteria(Criteria.where("_id").is(id)); + VideoInfo videoInfo = videoProcessService.getVideoCover(id, username, fileDocument.getPath(), fileDocument.getName()); + String imagePath = videoInfo.getCovertPath(); + if (!CharSequenceUtil.isBlank(imagePath)) { + fileDocument.setContent(FileUtil.readBytes(imagePath)); + if (hasOldFileDocument) { + Update update = new Update(); + update.set("content", fileDocument.getContent()); + mongoTemplate.upsert(query, update, FileDocument.class); + } else { + mongoTemplate.save(fileDocument); + } + } else { + Update update = new Update(); + update.set("mediaCover", false); + mongoTemplate.updateFirst(query, update, FileDocument.class); + } + if (imagePath != null && FileUtil.exist(imagePath)) { + FileUtil.del(imagePath); + } + } else { + // 音频文件 + String base64 = Optional.of(fileDocument).map(FileDocument::getMusic).map(Music::getCoverBase64).orElse(""); + fileDocument.setContent(Base64.decode(base64)); + } + fileDocument.setContentType("image/png"); + fileDocument.setName("cover"); + } + + @Override + public void publicPackageDownload(HttpServletRequest request, HttpServletResponse response, List fileIdList) { + packageDownload(request, response, fileIdList, null); + } + + @Override + public void packageDownload(HttpServletRequest request, HttpServletResponse response, List fileIdList) { + String username = request.getParameter(AuthInterceptor.NAME_HEADER); + packageDownload(request, response, fileIdList, username); + } + + public void packageDownload(HttpServletRequest request, HttpServletResponse response, List fileIdList, String username) { + FileDocument fileDocument = getFileInfoBeforeDownload(fileIdList, username); + if (fileDocument == null) { + return; + } + //响应头的设置 + response.reset(); + response.setCharacterEncoding("utf-8"); + response.setContentType("multipart/form-data"); + //设置压缩包的名字 + setDownloadName(request, response, fileDocument.getName() + ".zip"); + + Query query = new Query(); + query.addCriteria(Criteria.where("_id").in(fileIdList)); + List fileDocuments = mongoTemplate.find(query, FileDocument.class, COLLECTION_NAME); + // 选中的文件 + List selectFileList = fileDocuments.stream().map(fileDoc -> { + String fileUsername = userService.getUserNameById(fileDoc.getUserId()); + return Paths.get(fileProperties.getRootDir(), fileUsername, fileDoc.getPath(), fileDoc.getName()); + }).toList(); + // 压缩传输 + try { + CompressUtils.compress(selectFileList, response.getOutputStream()); + } catch (IOException e) { + log.error(e.getMessage(), e); + } + } + + /*** + * 对下载的文件名转码 解决不同浏览器压缩包名字含有中文时乱码的问题 + * @param request HttpServletRequest + * @param downloadName downloadName + */ + private void setDownloadName(HttpServletRequest request, HttpServletResponse response, String downloadName) { + //获取浏览器名(IE/Chrome/firefox)目前主流的四大浏览器内核Trident(IE)、Gecko(Firefox内核)、WebKit(Safari内核,Chrome内核原型,开源)以及Presto(Opera前内核) (已废弃) + String gecko = "Gecko"; + String webKit = "WebKit"; + String userAgent = request.getHeader("User-Agent"); + if (userAgent.contains(gecko) || userAgent.contains(webKit)) { + downloadName = new String(downloadName.getBytes(StandardCharsets.UTF_8), StandardCharsets.ISO_8859_1); + } else { + downloadName = URLEncoder.encode(downloadName, StandardCharsets.UTF_8); + } + response.setHeader(HttpHeaders.CONTENT_DISPOSITION, "attachment;filename=\"" + downloadName + "\""); + } + + /** + * 打包下载之前要干的事 + * + * @param fileIds fileIds + * @param username username + */ + private FileDocument getFileInfoBeforeDownload(List fileIds, String username) throws CommonException { + String fileId = fileIds.get(0); + // 判断是否为ossPath + Path path = Paths.get(fileId); + String ossPath = CaffeineUtil.getOssPath(path); + if (ossPath != null) { + throw new CommonException(ExceptionType.WARNING.getCode(), "暂不支持打包下载"); + } + Query query = new Query(); + query.addCriteria(Criteria.where("_id").in(fileId)); + FileDocument fileDocument = mongoTemplate.findOne(query, FileDocument.class, COLLECTION_NAME); + if (fileDocument == null) { + return null; + } + if (CharSequenceUtil.isBlank(username)) { + fileDocument.setUsername(userService.getUserNameById(fileDocument.getUserId())); + } + int size = fileIds.size(); + if (size > 0) { + String currentDirectory = getUserDirectory(fileDocument.getPath()); + String startPath = File.separator + username + currentDirectory; + String filename = fileDocument.getName(); + if (size > 1) { + filename = "download"; + } + String filePath = startPath + filename; + if (size == 1 && !fileDocument.getIsFolder()) { + // 单个文件 + fileDocument.setPath(filePath); + } else { + fileDocument.setName(filename); + } + return fileDocument; + } + return fileDocument; + } + + @Override + public ResponseResult rename(String newFileName, String username, String id, String folder) { + // 判断是否为ossPath + List operationPermissionList = null; + if (CharSequenceUtil.isNotBlank(folder)) { + FileDocument fileDocument = getById(folder); + String userId = fileDocument.getUserId(); + username = userService.getUserNameById(userId); + operationPermissionList = fileDocument.getOperationPermissionList(); + } + checkPermissionUsername(username, operationPermissionList, OperationPermission.PUT); + String finalUsername = username; + String operator = userLoginHolder.getUsername(); + LogOperation logOperation = logService.getLogOperation(); + ThreadUtil.execute(() -> { + try { + String ossPath = CaffeineUtil.getOssPath(Paths.get(id)); + if (ossPath != null) { + // oss 重命名 + webOssService.rename(ossPath, id, newFileName, operator); + return; + } + renameFile(newFileName, finalUsername, id, operator, logOperation); + } catch (CommonException e) { + pushMessageOperationFileError(finalUsername, Convert.toStr(e.getMsg(), Constants.UNKNOWN_ERROR), "重命名"); + } catch (Exception e) { + pushMessageOperationFileError(finalUsername, Convert.toStr(e.getMessage(), Constants.UNKNOWN_ERROR), "重命名"); + } + }); + return ResultUtil.success(); + } + + private void renameFile(String newFileName, String username, String id, String operator, LogOperation logOperation) { + FileDocument fileDocument = mongoTemplate.findById(id, FileDocument.class, COLLECTION_NAME); + Path fromPath; + Path toPath; + if (fileDocument != null) { + // 判断是否为ossPath根目录 + if (fileDocument.getOssFolder() != null) { + throw new CommonException(ExceptionType.LOCKED_RESOURCES.getCode(), "请在oss管理中修改目录名称"); + } + if (CommonFileService.isLock(fileDocument)) { + throw new CommonException(ExceptionType.LOCKED_RESOURCES); + } + String currentDirectory = getUserDirectory(fileDocument.getPath()); + fromPath = Paths.get(currentDirectory, fileDocument.getName()); + toPath = Paths.get(currentDirectory, newFileName); + String filePath = fileProperties.getRootDir() + File.separator + username + currentDirectory; + File file = new File(filePath + fileDocument.getName()); + if (Boolean.TRUE.equals(fileDocument.getIsFolder())) { + Query query = new Query(); + String searchPath = currentDirectory + fileDocument.getName(); + String newPath = currentDirectory + newFileName; + query.addCriteria(Criteria.where(USER_ID).is(userService.getUserIdByUserName(username))); + query.addCriteria(Criteria.where("path").regex("^" + ReUtil.escape(searchPath + "/"))); + List documentList = mongoTemplate.find(query, FileDocument.class, COLLECTION_NAME); + // 修改该文件夹下的所有文件的path + documentList.parallelStream().forEach(rep -> { + String path = rep.getPath(); + String newFilePath = replaceStart(path, searchPath, newPath); + Update update = new Update(); + update.set("path", newFilePath); + Query query1 = new Query(); + query1.addCriteria(Criteria.where("_id").is(rep.getId())); + mongoTemplate.upsert(query1, update, COLLECTION_NAME); + luceneService.pushCreateIndexQueue(rep.getId()); + }); + } + if (renameFileError(newFileName, id, filePath, file)) { + pushMessageOperationFileError(operator, "重命名失败", "重命名"); + return; + } + String oldName = fileDocument.getName(); + fileDocument.setName(newFileName); + pushMessage(operator, fileDocument, Constants.CREATE_FILE); + + // 记录日志 + logService.syncAddLogFileOperation(logOperation, username, Paths.get(fileDocument.getPath(), fileDocument.getName()).toString(), "重命名, 从\"" + oldName + "\"到\"" + newFileName + "\""); + + } else { + pushMessageOperationFileError(operator, "重命名失败", "重命名"); + return; + } + pushMessageOperationFileSuccess(fromPath.toString(), toPath.toString(), operator, "重命名"); + afterRenameFile(id, newFileName); + } + + /** + * 重命名文件后修改关联配置 + * + * @param fileId fileId + * @param newFileName newFileName + */ + private void afterRenameFile(String fileId, String newFileName) { + // 修改关联的分享配置 + Query shareQuery = new Query(); + shareQuery.addCriteria(Criteria.where("fileId").is(fileId)); + Update shareUpdate = new Update(); + shareUpdate.set("fileName", newFileName); + mongoTemplate.updateMulti(shareQuery, shareUpdate, ShareDO.class); + // 修改关联的挂载配置 + Query mountQuery = new Query(); + mountQuery.addCriteria(Criteria.where("mountFileId").is(fileId)); + Update mountUpdate = new Update(); + mountUpdate.set("name", newFileName); + mongoTemplate.updateMulti(mountQuery, mountUpdate, FileDocument.class); + luceneService.pushCreateIndexQueue(fileId); + } + + @Override + public ResponseResult> checkMoveOrCopy(UploadApiParamDTO upload, List froms, String to) { + if (CharSequenceUtil.isBlank(to) && CharSequenceUtil.isBlank(upload.getTargetPath())) { + throw new CommonException(ExceptionType.MISSING_PARAMETERS); + } + List fromFilenameList = getFromFilenameList(froms); + + String ossPathTo = getPreOssPath(upload, to); + if (ossPathTo != null) { + return ResultUtil.success(); + } + + FileDocument toFileDocument = getToFileDocument(upload, to); + if (toFileDocument == null) { + return ResultUtil.error(ExceptionType.FILE_NOT_FIND); + } + String toPath = getRelativePath(toFileDocument); + Query query = new Query(); + query.addCriteria(Criteria.where(USER_ID).is(toFileDocument.getUserId())); + query.addCriteria(Criteria.where("path").is(toPath)); + query.addCriteria(Criteria.where("name").in(fromFilenameList)); + List fileDocuments = mongoTemplate.find(query, FileDocument.class, COLLECTION_NAME); + // 只保留name, path, suffix + fileDocuments.forEach(fileDocument -> { + fileDocument.setIsShare(null); + fileDocument.setShareId(null); + fileDocument.setShareBase(null); + fileDocument.setIsFavorite(null); + fileDocument.setTags(null); + fileDocument.setMountFileId(null); + fileDocument.setOssFolder(null); + }); + return ResultUtil.success(fileDocuments).setCount(fileDocuments.size()); + } + + @Nullable + private static String getPreOssPath(UploadApiParamDTO upload, String to) { + Path prePath; + if (!CharSequenceUtil.isBlank(to)) { + prePath = Paths.get(to); + } else { + prePath = Paths.get(upload.getUsername(), upload.getTargetPath()); + } + return CaffeineUtil.getOssPath(prePath); + } + + private List getFromFilenameList(List froms) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").in(froms)); + query.fields().include("name"); + return mongoTemplate.find(query, FileDocument.class, COLLECTION_NAME).stream().map(FileDocument::getName).toList(); + } + + @Override + public ResponseResult move(UploadApiParamDTO upload, List froms, String to) throws IOException { + // 复制 + upload.setUserId(userLoginHolder.getUserId()); + upload.setUsername(userLoginHolder.getUsername()); + LogOperation logOperation = logService.getLogOperation(); + ThreadUtil.execute(() -> { + try { + String currentDirectory = getOssFileCurrentDirectory(upload, froms); + String fromFileIdOne = froms.get(0); + FileDocument formFileDocument = getOriginalFileDocumentById(fromFileIdOne); + if (formFileDocument == null) { + String ossPathFormOne = CaffeineUtil.getOssPath(Paths.get(fromFileIdOne)); + if (ossPathFormOne != null) { + // 移动 + move(upload, froms, to, currentDirectory, logOperation); + } + return; + } + String formUsername = userService.getUserNameById(formFileDocument.getUserId()); + if (!upload.getUsername().equals(formUsername)) { + checkPermissionUsername(formUsername, formFileDocument.getOperationPermissionList(), OperationPermission.DELETE); + } + // 移动 + move(upload, froms, to, currentDirectory, logOperation); + } catch (CommonException e) { + if (e.getCode() != -3) { + pushMessageOperationFileError(upload.getUsername(), Convert.toStr(e.getMsg(), Constants.UNKNOWN_ERROR), "移动"); + } + } catch (Exception e) { + pushMessageOperationFileError(upload.getUsername(), Convert.toStr(e.getMessage(), Constants.UNKNOWN_ERROR), "移动"); + } + }); + return ResultUtil.success(); + } + + private void move(UploadApiParamDTO upload, List froms, String to, String currentDirectory, LogOperation logOperation) { + // 复制 + getCopyResult(upload, froms, to, true, logOperation); + // 删除 + deleteOnlyDoc(upload.getUsername(), currentDirectory, froms, upload.getUsername()); + } + + private String getOssFileCurrentDirectory(UploadApiParamDTO upload, List froms) { + String currentDirectory = "/"; + String from = froms.get(0); + FileDocument fileDocumentFrom = getFileDocumentById(from, true); + if (fileDocumentFrom != null && fileDocumentFrom.getOssFolder() != null) { + from = upload.getUsername() + MyWebdavServlet.PATH_DELIMITER + fileDocumentFrom.getOssFolder() + MyWebdavServlet.PATH_DELIMITER; + } + Path fromPath = Paths.get(from); + if (CaffeineUtil.getOssPath(fromPath) != null) { + currentDirectory = fromPath.toString().substring(upload.getUsername().length()); + } + return currentDirectory; + } + + private void getCopyResult(UploadApiParamDTO upload, List froms, String to, boolean move, LogOperation logOperation) { + for (String from : froms) { + ResponseResult result; + try { + result = copyOrMove(upload, from, to, move, logOperation); + } catch (CommonException e) { + throw e; + } catch (Exception e) { + throw new CommonException(ExceptionType.SYSTEM_ERROR); + } + if (result != null && result.getCode() != 0) { + throw new CommonException(result.getCode(), Convert.toStr(result.getMessage(), Constants.UNKNOWN_ERROR)); + } + } + } + + @Override + public ResponseResult copy(UploadApiParamDTO upload, List froms, String to) throws IOException { + // 复制 + upload.setUserId(userLoginHolder.getUserId()); + upload.setUsername(userLoginHolder.getUsername()); + LogOperation logOperation = logService.getLogOperation(); + ThreadUtil.execute(() -> { + try { + // 复制成功 + getCopyResult(upload, froms, to, false, logOperation); + } catch (CommonException e) { + pushMessageOperationFileError(upload.getUsername(), Convert.toStr(e.getMsg(), Constants.UNKNOWN_ERROR), "复制"); + } catch (Exception e) { + pushMessageOperationFileError(upload.getUsername(), Convert.toStr(e.getMessage(), Constants.UNKNOWN_ERROR), "复制"); + } + }); + return ResultUtil.success(); + } + + @Override + public String uploadConsumerImage(UploadApiParamDTO upload) throws CommonException { + MultipartFile multipartFile = upload.getFile(); + String username = upload.getUsername(); + String userId = upload.getUserId(); + String fileName = upload.getFilename(); + MimeTypes allTypes = MimeTypes.getDefaultMimeTypes(); + MimeType mimeType; + try { + mimeType = allTypes.forName(multipartFile.getContentType()); + fileName += mimeType.getExtension(); + } catch (MimeTypeException e) { + log.error(e.getMessage(), e); + } + Path userImagePaths = Paths.get(fileProperties.getUserImgDir()); + // userImagePaths 不存在则新建 + upsertFolder(userImagePaths, username, userId); + File newFile; + try { + if (userService.getDisabledWebp(userId) || ("ico".equals(FileUtil.getSuffix(fileName)))) { + newFile = Paths.get(fileProperties.getRootDir(), username, userImagePaths.toString(), fileName).toFile(); + FileUtil.writeFromStream(multipartFile.getInputStream(), newFile); + } else { + fileName = fileName + Constants.POINT_SUFFIX_WEBP; + newFile = Paths.get(fileProperties.getRootDir(), username, userImagePaths.toString(), fileName).toFile(); + BufferedImage image = ImageIO.read(multipartFile.getInputStream()); + imageFileToWebp(newFile, image); + } + } catch (IOException e) { + throw new CommonException(2, "上传失败"); + } + return createFile(username, newFile, userId, true); + } + + @Override + public FileDocument getById(String fileId) { + return getById(fileId, true); + } + + @Override + public FileDocument getById(String fileId, boolean excludeContent) { + FileDocument fileDocument = getFileDocumentById(fileId, excludeContent); + if (fileDocument != null) { + return fileDocument; + } + String ossPath = CaffeineUtil.getOssPath(Paths.get(fileId)); + if (ossPath != null) { + return webOssService.getFileDocumentByOssPath(ossPath, fileId); + } + return null; + } + + @Override + public List listByIds(List fileIdList) { + return mongoTemplate.find(Query.query(Criteria.where("_id").in(fileIdList)), FileDocument.class, COLLECTION_NAME); + } + + @Override + public String createFile(String username, File file) { + return createFile(username, file, null, null); + } + + private String uploadFile(String username, File file) { + CaffeineUtil.setUploadFileCache(file.getAbsolutePath()); + return createFile(username, file, null, null); + } + + @Override + public void updateFile(String username, File file) { + modifyFile(username, file); + } + + @Override + public void deleteFile(String username, File file) { + String fileAbsolutePath = file.getAbsolutePath(); + String fileName = file.getName(); + // 修改为公共目录,不再包含用户名路径组件 + String relativePath = fileAbsolutePath.substring(fileProperties.getRootDir().length(), fileAbsolutePath.length() - fileName.length()); + String userId = userService.getUserIdByUserName(username); + if (CharSequenceUtil.isBlank(userId)) { + return; + } + Query query = new Query(); + // 文件是否存在 + FileDocument fileDocument = getFileDocument(userId, fileName, relativePath, query); + if (fileDocument != null) { + deleteDependencies(username, Collections.singletonList(fileDocument.getId()), false); + mongoTemplate.remove(query, COLLECTION_NAME); + if (BooleanUtil.isTrue(fileDocument.getIsFolder())) { + // 删除文件夹及其下的所有文件 + mongoTemplate.remove(getAllByFolderQuery(fileDocument), FileDocument.class); + luceneService.deleteIndexDocuments(Collections.singletonList(fileDocument.getId())); + } + } + + // update parent folder etag + etagService.handleItemDeletionAsync(username, file); + + pushMessage(username, relativePath, Constants.DELETE_FILE); + } + + @Override + public ResponseResult unzip(String fileId, String destFileId) throws CommonException { + try { + String ossPath = CaffeineUtil.getOssPath(Paths.get(fileId)); + if (ossPath != null) { + return ResultUtil.warning("暂不支持解压!"); + } + FileDocument fileDocument = getById(fileId); + if (fileDocument == null) { + throw new CommonException(ExceptionType.FILE_NOT_FIND); + } + String username = userService.getUserNameById(fileDocument.getUserId()); + if (CharSequenceUtil.isBlank(username)) { + throw new CommonException(ExceptionType.USER_NOT_FIND); + } + String filePath = getFilePathByFileId(username, fileDocument); + String destDir; + boolean isWrite = false; + String desc = ""; + if (CharSequenceUtil.isBlank(destFileId)) { + // 没有目标目录, 则预览解压到临时目录 + destDir = Paths.get(fileProperties.getRootDir(), fileProperties.getChunkFileDir(), username, fileDocument.getName()).toString(); + } else { + if (fileId.equals(destFileId)) { + // 解压到当前文件夹 + destDir = filePath.substring(0, filePath.length() - MyFileUtils.extName(new File(filePath)).length() - 1); + desc = "解压文件, 目标目录: " + Paths.get(fileDocument.getPath()); + } else { + // 其他目录 + FileDocument dest = getById(destFileId); + if (dest != null) { + destDir = getFilePathByFileId(username, dest); + desc = "解压文件, 目标目录: " + Paths.get(dest.getPath()); + } else { + destDir = Paths.get(fileProperties.getRootDir(), username).toString(); + desc = "解压文件, 目标目录: /"; + } + } + isWrite = true; + } + CompressUtils.decompress(filePath, destDir, isWrite); + if (isWrite) { + logService.asyncAddLogFileOperation(username, Paths.get(fileDocument.getPath(), fileDocument.getName()).toString(), desc); + } + return ResultUtil.success(listFile(username, destDir, !isWrite)); + } catch (CommonException e) { + return ResultUtil.warning(e.getMessage()); + } catch (Exception e) { + return ResultUtil.error("解压失败!"); + } + } + + @Override + public ResponseResult listFiles(String path, String username, boolean tempDir) { + Path prePth = Paths.get(username, path); + String ossPath = CaffeineUtil.getOssPath(prePth); + if (ossPath != null) { + UploadApiParamDTO uploadApiParamDTO = new UploadApiParamDTO(); + uploadApiParamDTO.setPathAttachFileName(true); + uploadApiParamDTO.setUsername(username); + return webOssService.searchFileAndOpenOssFolder(prePth, uploadApiParamDTO); + } + String dirPath; + if (tempDir) { + dirPath = Paths.get(fileProperties.getRootDir(), fileProperties.getChunkFileDir(), username, path).toString(); + return ResultUtil.success(listFile(username, dirPath, true)); + } else { + return ResultUtil.success(listFile(path, userLoginHolder.getUserId())); + } + } + + @Override + public ResponseResult upperLevelList(String path, String username) { + Path currentPath = Paths.get(path); + String upperLevel = path; + if (currentPath.getParent() != null) { + upperLevel = currentPath.getParent().toString(); + } + return ResultUtil.success(listFile(upperLevel, userLoginHolder.getUserId())); + } + + private List listFile(String path, String userId) { + if (!path.endsWith(File.separator)) { + path += File.separator; + } + Query query = new Query(); + query.addCriteria(Criteria.where("path").is(path)); + query.addCriteria(Criteria.where(USER_ID).is(userId)); + List fileDocuments = mongoTemplate.find(query, FileDocument.class); + return fileDocuments.stream().map(fileDocument -> { + FileIntroVO fileIntroVO = new FileIntroVO(); + fileIntroVO.setId(fileDocument.getId()); + fileIntroVO.setName(fileDocument.getName()); + fileIntroVO.setSuffix(fileDocument.getSuffix()); + fileIntroVO.setContentType(fileDocument.getContentType()); + if (fileDocument.getPath().equals(File.separator)) { + fileIntroVO.setPath(File.separator + fileDocument.getName()); + } else { + fileIntroVO.setPath(Paths.get(fileDocument.getPath(), fileDocument.getName()).toString()); + } + fileIntroVO.setIsFolder(fileDocument.getIsFolder()); + return fileIntroVO; + }).sorted(this::compareByFileName).toList(); + } + + @Override + public ResponseResult delFile(String path, String username) throws CommonException { + Path p = Paths.get(fileProperties.getRootDir(), username, path); + if (CommonFileService.isLock(p.toFile(), fileProperties.getRootDir(), username)) { + throw new CommonException(ExceptionType.LOCKED_RESOURCES); + } + PathUtil.del(p); + // 文件操作日志 + logService.asyncAddLogFileOperation(username, path, "彻底删除文件"); + deleteFile(username, p.toFile()); + return ResultUtil.success(); + } + + @Override + public ResponseResult renameByPath(String newFileName, String username, String path) { + Path path1 = Paths.get(fileProperties.getRootDir(), username, path); + if (!Files.exists(path1)) { + return ResultUtil.error("修改失败,path参数有误!"); + } + String userId = userService.getUserIdByUserName(username); + if (CharSequenceUtil.isBlank(userId)) { + return ResultUtil.error("修改失败,userId参数有误!"); + } + File file = path1.toFile(); + + if (CommonFileService.isLock(file, fileProperties.getRootDir(), username)) { + throw new CommonException(ExceptionType.LOCKED_RESOURCES); + } + + String fileAbsolutePath = file.getAbsolutePath(); + String fileName = file.getName(); + String relativePath = fileAbsolutePath.substring(fileProperties.getRootDir().length() + username.length() + 1, fileAbsolutePath.length() - fileName.length()); + FileDocument fileDocument = getFileDocument(userId, fileName, relativePath); + if (fileDocument == null) { + return ResultUtil.error("修改失败!"); + } + return rename(newFileName, username, fileDocument.getId(), null); + } + + @Override + public ResponseResult addFile(String fileName, Boolean isFolder, String username, String parentPath, String folder) { + List operationPermissionList = null; + if (CharSequenceUtil.isNotBlank(folder)) { + FileDocument fileDocument = getById(folder); + username = userService.getUserNameById(fileDocument.getUserId()); + parentPath = fileDocument.getPath() + fileDocument.getName(); + operationPermissionList = fileDocument.getOperationPermissionList(); + } + checkPermissionUsername(username, operationPermissionList, OperationPermission.UPLOAD); + Path prePth = Paths.get(username, parentPath, fileName); + String ossPath = CaffeineUtil.getOssPath(prePth); + if (ossPath != null) { + return ResultUtil.success(webOssService.addFile(ossPath, isFolder, prePth)); + } + + String userId = userService.getUserIdByUserName(username); + if (CharSequenceUtil.isBlank(userId)) { + return ResultUtil.error("不存在的用户"); + } + // 修改为公共目录,不再按用户分离 + Path path = Paths.get(fileProperties.getRootDir(), parentPath, fileName); + if (Files.exists(path)) { + return ResultUtil.warning("该文件已存在"); + } + try { + if (BooleanUtil.isTrue(isFolder)) { + PathUtil.mkdir(path); + } else { + Files.createFile(path); + } + } catch (IOException e) { + log.error(e.getMessage(), e); + return ResultUtil.error("新建文件失败"); + } + // 修改为公共目录,不再包含用户名路径组件 + String resPath = path.subpath(Paths.get(fileProperties.getRootDir()).getNameCount(), path.getNameCount()).toString(); + FileIntroVO fileIntroVO = new FileIntroVO(); + fileIntroVO.setName(fileName); + fileIntroVO.setUserId(userId); + fileIntroVO.setPath(resPath); + fileIntroVO.setIsFolder(isFolder); + fileIntroVO.setSuffix(MyFileUtils.extName(fileName)); + String fileId = uploadFile(username, path.toFile()); + fileIntroVO.setId(fileId); + // 文件操作日志 + logService.syncAddLogFileOperation(username, Paths.get(parentPath, fileName).toString(), "新建文件" + (BooleanUtil.isTrue(isFolder) ? "夹" : "")); + return ResultUtil.success(fileIntroVO); + } + + @Override + public String viewFile(String shareKey, String fileId, String shareToken, String operation) { + FileDocument fileDocument = getById(fileId); + if (fileDocument == null) { + throw new CommonException(ExceptionType.FILE_NOT_FIND.getCode(), ExceptionType.FILE_NOT_FIND.getMsg()); + } + String username = userService.getUserNameById(fileDocument.getUserId()); + String relativepath = org.apache.catalina.util.URLEncoder.DEFAULT.encode(fileDocument.getPath() + fileDocument.getName(), StandardCharsets.UTF_8); + StringBuilder sb = StrUtil.builder().append("forward:/file/").append(username).append(relativepath).append("?shareKey=").append(org.apache.catalina.util.URLEncoder.DEFAULT.encode(shareKey, StandardCharsets.UTF_8)).append("&o=").append(operation); + if (!CharSequenceUtil.isBlank(shareToken)) { + sb.append("&share-token=").append(shareToken); + } + return sb.toString(); + } + + @Override + public String publicViewFile(String relativePath, String userId) { + String username = userService.getUserNameById(userId); + String userDirectory = aes.decryptStr(relativePath); + return "forward:/file/" + username + userDirectory; + } + + @Override + public void deleteAllByUser(List userList) { + if (userList == null || userList.isEmpty()) { + return; + } + userList.forEach(user -> { + String username = user.getUsername(); + String userId = user.getId(); + PathUtil.del(Paths.get(fileProperties.getRootDir(), username)); + Query query = new Query(); + query.addCriteria(Criteria.where(USER_ID).in(userId)); + mongoTemplate.remove(query, COLLECTION_NAME); + }); + } + + @Override + public void setShareFile(FileDocument file, long expiresAt, ShareDO share) { + if (file == null) { + return; + } + Query query = new Query(); + if (Boolean.TRUE.equals(file.getIsFolder())) { + // 共享文件夹及其下的所有文件 + query.addCriteria(Criteria.where(USER_ID).is(userLoginHolder.getUserId())); + query.addCriteria(Criteria.where("path").regex("^" + ReUtil.escape(file.getPath() + file.getName() + "/"))); + // 设置共享属性 + setShareAttribute(file, expiresAt, share, query); + // 修改文件夹下已经共享的文件 + query.addCriteria(Criteria.where(Constants.SHARE_BASE).is(true)); + Update update = new Update(); + update.unset(Constants.SHARE_BASE); + update.set(Constants.SUB_SHARE, true); + mongoTemplate.updateMulti(query, update, COLLECTION_NAME); + } else { + query.addCriteria(Criteria.where("_id").is(file.getId())); + // 设置共享属性 + setShareAttribute(file, expiresAt, share, query); + } + } + + @Override + public void unsetShareFile(FileDocument file) { + if (file == null) { + return; + } + Query query = new Query(); + Path path = Paths.get(file.getId()); + String ossPath = CaffeineUtil.getOssPath(path); + if (ossPath != null) { + query.addCriteria(Criteria.where("_id").is(file.getId())); + mongoTemplate.remove(query, COLLECTION_NAME); + return; + } + if (Boolean.TRUE.equals(file.getIsFolder())) { + // 解除共享文件夹及其下的所有文件 + query.addCriteria(Criteria.where(USER_ID).is(userLoginHolder.getUserId())); + query.addCriteria(Criteria.where("path").regex("^" + ReUtil.escape(file.getPath() + file.getName() + "/"))); + // 解除共享属性 + unsetShareAttribute(file, query); + } else { + query.addCriteria(Criteria.where("_id").is(file.getId())); + // 解除共享属性 + unsetShareAttribute(file, query); + } + } + + @Override + public void setPublic(String fileId) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(fileId)); + Update update = new Update(); + update.set("isPublic", true); + mongoTemplate.updateFirst(query, update, COLLECTION_NAME); + } + + /*** + * 获取目录下的文件 + * @param username username + * @param dirPath dirPath + * @param tempDir tempDir + */ + private List listFile(String username, String dirPath, boolean tempDir) { + File dir = new File(dirPath); + if (!dir.exists()) { + throw new CommonException(ExceptionType.FILE_NOT_FIND); + } + File[] fileList = dir.listFiles(); + if (fileList == null) { + return Lists.newArrayList(); + } + return Arrays.stream(fileList).map(file -> { + FileIntroVO fileDocument = new FileIntroVO(); + String filename = file.getName(); + String suffix = MyFileUtils.extName(filename); + boolean isFolder = file.isDirectory(); + fileDocument.setName(filename); + fileDocument.setIsFolder(isFolder); + fileDocument.setSuffix(suffix); + String contentType = FileContentTypeUtils.getContentType(suffix); + fileDocument.setContentType(contentType); + String path; + Path dirPaths = Paths.get(file.getPath()); + if (tempDir) { + path = dirPaths.subpath(Paths.get(fileProperties.getRootDir(), fileProperties.getChunkFileDir(), username).getNameCount(), dirPaths.getNameCount()).toString(); + } else { + path = dirPaths.subpath(Paths.get(fileProperties.getRootDir(), username).getNameCount(), dirPaths.getNameCount()).toString(); + } + fileDocument.setPath(path); + return fileDocument; + }).sorted(this::compareByFileName).toList(); + } + + /*** + * 根据username 和 fileDocument 获取FilePath + * @param username username + * @param fileDocument FileDocument + */ + private String getFilePathByFileId(String username, FileDocument fileDocument) throws CommonException { + StringBuilder sb = new StringBuilder(); + // 修改为公共目录,不再包含用户名 + sb.append(fileProperties.getRootDir()).append(getUserDirectory(fileDocument.getPath())).append(fileDocument.getName()); + Path path = Paths.get(sb.toString()); + if (!Files.exists(path)) { + throw new CommonException(ExceptionType.DIR_NOT_FIND); + } + + return sb.toString(); + } + + /** + * 根据fileDocument 获取 File + * + * @param fileDocument FileDocument + */ + private File getFileByFileDocument(FileDocument fileDocument) throws CommonException { + return getFileByFileDocument(userService.getUserNameById(fileDocument.getUserId()), fileDocument); + } + + /** + * 根据fileDocument 获取 File + * + * @param username username + * @param fileDocument FileDocument + */ + private File getFileByFileDocument(String username, FileDocument fileDocument) throws CommonException { + // 修改为公共目录,不再按用户分离 + Path path = Paths.get(fileProperties.getRootDir(), fileDocument.getPath(), fileDocument.getName()); + if (!Files.exists(path)) { + throw new CommonException(ExceptionType.DIR_NOT_FIND); + } + return path.toFile(); + } + + @Override + public ResponseResult duplicate(String fileId, String newFilename) { + Path prePth = Paths.get(fileId); + String ossPath = CaffeineUtil.getOssPath(prePth); + if (ossPath != null) { + // oss文件 + String to = prePth.getParent().resolve(newFilename).toString(); + String objectNameFrom = fileId.substring(ossPath.length()); + if (objectNameFrom.endsWith("/")) { + return folderDuplicateDisallowed(); + } + return webOssCopyFileService.copyOssToOss(ossPath, fileId, ossPath, to, false); + } + FileDocument fileDocument = getFileDocumentById(fileId, true); + if (fileDocument == null) { + return ResultUtil.error("文件不存在"); + } + if (BooleanUtil.isTrue(fileDocument.getIsFolder())) { + return folderDuplicateDisallowed(); + } + String username = userService.getUserNameById(fileDocument.getUserId()); + String path = getRelativePath(fileDocument); + Path fromFilePath = Paths.get(getUserDir(username), path); + String toParentPath = Paths.get(path).getParent().toString(); + Path toFilePath = Paths.get(getUserDir(username), toParentPath, newFilename); + // 复制文件 + PathUtil.copyFile(fromFilePath, toFilePath); + // 文件操作日志 + logService.syncAddLogFileOperation(username, Paths.get(toParentPath, newFilename).toString(), "创建副本, 源文件: \"" + path + "\""); + // 保存文件信息 + uploadFile(username, toFilePath.toFile()); + return ResultUtil.success(); + } + + @Override + public ResponseResult setTag(EditTagDTO editTagDTO) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").in(editTagDTO.getFileIds())); + Update update = new Update(); + String userId = userLoginHolder.getUserId(); + if (editTagDTO.getRemoveTagIds() == null || editTagDTO.getRemoveTagIds().isEmpty()) { + log.debug("修改标签, fileIds: {}, tagList: {}", editTagDTO.getFileIds(), editTagDTO.getTagList()); + editTagDTO.getFileIds().forEach(fileId -> luceneService.pushCreateIndexQueue(fileId)); + } else { + // 删除标签并修改相关文件 + deleteTgs(editTagDTO.getRemoveTagIds()); + } + + // 使用mongoTemplate.getConverter().convertToMongoType, 避免生成_class + update.set("tags", mongoTemplate.getConverter().convertToMongoType(tagService.getTagIdsByTagDTOList(editTagDTO.getTagList(), userId))); + update.set(Constants.UPDATE_DATE, LocalDateTime.now(TimeUntils.ZONE_ID)); + mongoTemplate.updateMulti(query, update, COLLECTION_NAME); + + // 推送消息 + pushMessage(userLoginHolder.getUsername(), tagService.list(userId), "updateTags"); + + return ResultUtil.success(); + } + + @Override + public ResponseResult setTag(String tagId, String tagName, String color) { + TagDO tagDO = tagService.getTagInfo(tagId); + if (tagDO == null) { + return ResultUtil.error("标签不存在"); + } + TagDTO tagDTO = tagDO.toTagDTO(); + if (CharSequenceUtil.isNotBlank(tagName)) { + tagDTO.setName(tagName); + } + if (CharSequenceUtil.isNotBlank(color)) { + tagDTO.setColor(color); + } + tagService.update(tagDTO); + List tagList = List.of(tagDTO); + EditTagDTO editTagDTO = new EditTagDTO(); + editTagDTO.setTagList(tagList); + editTagDTO.setFileIds(getFileIdListByTagId(tagId)); + setTag(editTagDTO); + return ResultUtil.success(); + } + + @Override + public ResponseResult deleteTag(String tagId) { + deleteTgs(List.of(tagId)); + pushMessage(userLoginHolder.getUsername(), tagService.list(userLoginHolder.getUserId()), "updateTags"); + return ResultUtil.success(); + } + + private List getFileIdListByTagId(String tagId) { + Query query = new Query(); + query.addCriteria(Criteria.where("tags.tagId").is(tagId)); + query.fields().include("_id"); + List fileDocumentList = mongoTemplate.find(query, FileDocument.class, COLLECTION_NAME); + if (fileDocumentList.isEmpty()) { + return Lists.newArrayList(); + } + return new ArrayList<>(fileDocumentList.stream().map(FileDocument::getId).toList()); + } + + /** + * 删除标签并修改相关文件 + * + * @param removeTagIds removeTagIds + */ + private void deleteTgs(List removeTagIds) { + tagService.delete(removeTagIds); + Query query = new Query(); + query.addCriteria(Criteria.where("tags.tagId").in(removeTagIds)); + List fileDocumentList = mongoTemplate.find(query, FileDocument.class, COLLECTION_NAME); + fileDocumentList.parallelStream().forEach(fileDocument -> { + List tagList = fileDocument.getTags(); + tagList.removeIf(tagDTO -> removeTagIds.contains(tagDTO.getTagId())); + Update update = new Update(); + update.set("tags", mongoTemplate.getConverter().convertToMongoType(tagList)); + mongoTemplate.updateMulti(query, update, COLLECTION_NAME); + luceneService.pushCreateIndexQueue(fileDocument.getId()); + }); + } + + @NotNull + private static ResponseResult folderDuplicateDisallowed() { + return ResultUtil.error("文件夹不支持创建副本"); + } + + /** + * 复制文件 + * + * @param upload UploadApiParamDTO + * @param from 来源文件id + * @param to 目标文件id + */ + private ResponseResult copyOrMove(UploadApiParamDTO upload, String from, String to, boolean move, LogOperation logOperation) { + FileDocument formFileDocument = getOriginalFileDocumentById(from); + String fromPath = getRelativePath(formFileDocument); + FileDocument toFileDocument = getToFileDocument(upload, to); + + if (CharSequenceUtil.isNotBlank(to) || CharSequenceUtil.isNotBlank(upload.getTargetPath())) { + if (CharSequenceUtil.isBlank(to)) { + to = MyWebdavServlet.PATH_DELIMITER + upload.getUsername() + upload.getTargetPath() + MyWebdavServlet.PATH_DELIMITER; + } + ResponseResult result = ossCopy(formFileDocument, toFileDocument, from, to, move); + if (result != null) { + return result; + } + } + + String toPath = getRelativePath(toFileDocument); + + if (formFileDocument != null) { + + String formUsername = userService.getUserNameById(formFileDocument.getUserId()); + String fromFilePath = getUserDir(formUsername) + fromPath; + + if (CommonFileService.isLock(formFileDocument)) { + throw new CommonException(ExceptionType.LOCKED_RESOURCES); + } + Path pathFrom = Paths.get(formFileDocument.getPath(), formFileDocument.getName()); + if (toFileDocument != null) { + String toUsername = userService.getUserNameById(toFileDocument.getUserId()); + if (!upload.getUsername().equals(toUsername)) { + checkPermissionUsername(toUsername, toFileDocument.getOperationPermissionList(), OperationPermission.UPLOAD); + } + String toFilePath = Paths.get(getUserDir(toUsername), toPath).toString(); + Path pathTo = Paths.get(toFileDocument.getPath(), toFileDocument.getName()); + formFileDocument.setUserId(toFileDocument.getUserId()); + + if (Paths.get(toFilePath).equals(Paths.get(fromFilePath).getParent())) { + return ResultUtil.ignore("相同位置"); + } + + boolean isOverride = BooleanUtil.isTrue(upload.getIsOverride()); + if (move) { + FileUtil.move(new File(fromFilePath), new File(toFilePath), isOverride); + } else { + FileUtil.copy(fromFilePath, toFilePath, isOverride); + } + String operation = move ? "移动" : "复制"; + if (isOverride) { + // 文件操作日志 + String fromUserDesc = formUsername.equals(toUsername) ? "" : ", 源用户: \"" + formUsername + "\""; + String filepath = Paths.get(toFileDocument.getPath(), toFileDocument.getName(), formFileDocument.getName()).toString(); + logService.syncAddLogFileOperation(logOperation, toUsername, filepath, operation + "文件, 源文件: \"" + fromPath + "\"" + fromUserDesc); + if (!formUsername.equals(toUsername)) { + LogOperation newLogOperation = logOperation.clone(); + logService.syncAddLogFileOperation(newLogOperation, formUsername, fromPath, "文件被" + operation + ", 目标文件: \"" + filepath + "\", 目标用户: \"" + toUsername + "\""); + } + // 复制成功 + pushMessageOperationFileSuccess(pathFrom.toString(), pathTo.toString(), upload.getUsername(), operation); + } + return ResultUtil.success(); + } + } + return ResultUtil.error("复制失败"); + } + + private FileDocument getToFileDocument(UploadApiParamDTO upload, String to) { + if (CharSequenceUtil.isBlank(to)) { + if (CharSequenceUtil.isBlank(upload.getTargetPath())) { + throw new CommonException(ExceptionType.WARNING.getCode(), "目标文件夹不能为空"); + } + String username = userService.getUserNameById(upload.getUserId()); + FileDocument fileDocument = getFileDocument(username, Paths.get(fileProperties.getRootDir(), username, upload.getTargetPath()).toString(), new Query()); + if (fileDocument == null) { + if (getPreOssPath(upload, to) != null) { + return null; + } + throw new CommonException(ExceptionType.WARNING.getCode(), "目标文件夹不存在"); + } + return fileDocument; + } else { + FileDocument toFileDocument; + if (Constants.REGION_DEFAULT.equals(to)) { + // 复制到根目录 + toFileDocument = new FileDocument(); + toFileDocument.setPath("/"); + toFileDocument.setName(""); + toFileDocument.setUserId(upload.getUserId()); + } else { + toFileDocument = getOriginalFileDocumentById(to); + } + return toFileDocument; + } + } + + private void saveFileDocument(FileDocument fileDocument) { + File file = getFileByFileDocument(fileDocument); + String username = userService.getUserNameById(fileDocument.getUserId()); + uploadFile(username, file); + } + + private ResponseResult ossCopy(FileDocument fileDocumentFrom, FileDocument fileDocumentTo, String from, String to, boolean isMove) { + if (fileDocumentFrom != null && fileDocumentFrom.getOssFolder() != null) { + if (isMove) { + throw new CommonException("不能移动oss根目录"); + } + String formUsername = userService.getUserNameById(fileDocumentFrom.getUserId()); + from = formUsername + MyWebdavServlet.PATH_DELIMITER + fileDocumentFrom.getOssFolder() + MyWebdavServlet.PATH_DELIMITER; + } + if (fileDocumentTo != null && !Constants.REGION_DEFAULT.equals(to)) { + to = fileDocumentTo.getId(); + } + if (fileDocumentTo != null && fileDocumentTo.getOssFolder() != null) { + String toUsername = userService.getUserNameById(fileDocumentTo.getUserId()); + to = toUsername + MyWebdavServlet.PATH_DELIMITER + fileDocumentTo.getOssFolder() + MyWebdavServlet.PATH_DELIMITER; + } + Path prePathFrom = Paths.get(from); + Path prePathTo = Paths.get(to); + String ossPathFrom = CaffeineUtil.getOssPath(prePathFrom); + String ossPathTo = CaffeineUtil.getOssPath(prePathTo); + if (ossPathFrom != null) { + if (ossPathTo != null) { + // 从 oss 复制 到 oss + return webOssCopyFileService.copyOssToOss(ossPathFrom, from, ossPathTo, to, isMove); + } else { + // 从 oss 复制到 本地存储 + return webOssCopyFileService.copyOssToLocal(ossPathFrom, from, to, isMove); + } + } else { + if (ossPathTo != null) { + // 从 本地存储 复制 到 oss + return webOssCopyFileService.copyLocalToOss(ossPathTo, from, to, isMove); + } + } + return null; + } + + private static String replaceStart(String str, CharSequence searchStr, CharSequence replacement) { + return replacement + str.substring(searchStr.length()); + } + + private boolean renameFileError(String newFileName, String fileId, String filePath, File file) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(fileId)); + Update update = new Update(); + update.set("name", newFileName); + update.set(Constants.SUFFIX, MyFileUtils.extName(newFileName)); + mongoTemplate.upsert(query, update, COLLECTION_NAME); + boolean isRename = false; + try { + isRename = file.renameTo(new File(filePath + newFileName)); + } finally { + if (!isRename) { + update.set("name", file.getName()); + update.set(Constants.SUFFIX, MyFileUtils.extName(file.getName())); + mongoTemplate.upsert(query, update, COLLECTION_NAME); + } + } + return !isRename; + } + + /** + * 上传文件 + * + * @param upload UploadApiParamDTO + * @return ResponseResult + */ + @Override + public ResponseResult upload(UploadApiParamDTO upload) throws IOException { + setMountInfo(upload); + + checkPermissionUsername(upload.getUsername(), upload.getOperationPermissionList(), OperationPermission.UPLOAD); + + UploadResponse uploadResponse = new UploadResponse(); + + Path prePth = Paths.get(upload.getUsername(), upload.getCurrentDirectory(), upload.getRelativePath()); + String ossPath = CaffeineUtil.getOssPath(prePth); + if (ossPath != null) { + return ResultUtil.success(webOssService.upload(ossPath, prePth, upload)); + } + + int currentChunkSize = upload.getCurrentChunkSize(); + long totalSize = upload.getTotalSize(); + String filename = upload.getFilename(); + String md5 = upload.getIdentifier(); + MultipartFile file = upload.getFile(); + //用户磁盘目录 + String userDirectoryFilePath = getUserDirectoryFilePath(upload); + + // 修改为公共目录,不再按用户分离 + File chunkFile = Paths.get(fileProperties.getRootDir(), userDirectoryFilePath).toFile(); + if (CommonFileService.isLock(chunkFile, fileProperties.getRootDir(), upload.getUsername())) { + throw new CommonException(ExceptionType.LOCKED_RESOURCES); + } + + if (currentChunkSize == totalSize) { + // 没有分片,直接存 + // 保存文件信息 + upload.setInputStream(file.getInputStream()); + upload.setContentType(file.getContentType()); + upload.setSuffix(MyFileUtils.extName(filename)); + FileUtil.writeFromStream(file.getInputStream(), chunkFile); + // 设置文件最后修改时间 + CommonFileService.setLastModifiedTime(chunkFile.toPath(), upload.getLastModified()); + uploadFile(upload.getUsername(), chunkFile); + uploadResponse.setUpload(true); + // 文件操作日志 + logService.syncAddLogFileOperation(upload.getUsername(), userDirectoryFilePath, "上传文件"); + } else { + // 上传分片 + multipartUpload.uploadChunkFile(upload, uploadResponse, md5, file); + } + return ResultUtil.success(uploadResponse); + } + + @Override + public ResponseResult uploadFolder(UploadApiParamDTO upload) throws CommonException { + setMountInfo(upload); + checkPermissionUsername(upload.getUsername(), upload.getOperationPermissionList(), OperationPermission.UPLOAD); + Path prePth = Paths.get(upload.getUsername(), upload.getCurrentDirectory(), upload.getFolderPath(), upload.getFilename()); + String ossPath = CaffeineUtil.getOssPath(prePth); + if (ossPath != null) { + webOssService.mkdir(ossPath, prePth); + return ResultUtil.success(); + } + createFolder(upload); + // 文件操作日志 + logService.syncAddLogFileOperation(upload.getUsername(), getUserDirectoryFilePath(upload), "上传文件夹"); + return ResultUtil.success(); + } + + private void setMountInfo(UploadApiParamDTO upload) { + if (CharSequenceUtil.isNotBlank(upload.getFolder())) { + FileDocument document = getById(upload.getFolder()); + String userId = document.getUserId(); + upload.setUserId(userId); + upload.setUsername(userService.getUserNameById(userId)); + upload.setOperationPermissionList(document.getOperationPermissionList()); + upload.setCurrentDirectory(document.getPath() + document.getName()); + } + } + + @Override + public ResponseResult newFolder(UploadApiParamDTO upload) throws CommonException { + setMountInfo(upload); + checkPermissionUsername(upload.getUsername(), upload.getOperationPermissionList(), OperationPermission.UPLOAD); + Path prePth = Paths.get(upload.getUsername(), upload.getCurrentDirectory(), upload.getFilename()); + String ossPath = CaffeineUtil.getOssPath(prePth); + if (ossPath != null) { + return ResultUtil.success(webOssService.mkdir(ossPath, prePth)); + } + + LocalDateTime date = LocalDateTime.now(TimeUntils.ZONE_ID); + // 新建文件夹 + String userDirectoryFilePath = getUserDirectoryFilePath(upload); + // 修改为公共目录,不再包含用户名 + File dir = new File(fileProperties.getRootDir() + File.separator + userDirectoryFilePath); + + FileDocument fileDocument = new FileDocument(); + fileDocument.setIsFolder(true); + fileDocument.setName(upload.getFilename()); + + String path = getUserDirectory(upload.getCurrentDirectory()); + fileDocument.setPath(path); + + fileDocument.setUserId(upload.getUserId()); + fileDocument.setUploadDate(date); + fileDocument.setUpdateDate(date); + if (!dir.exists()) { + FileUtil.mkdir(dir); + } + // 文件操作日志 + logService.syncAddLogFileOperation(upload.getUsername(), getUserDirectoryFilePath(upload), "创建文件夹"); + return ResultUtil.success(uploadFile(upload.getUsername(), dir)); + } + + @Override + public ResponseResult checkChunkUploaded(UploadApiParamDTO upload) throws IOException { + setMountInfo(upload); + return ResultUtil.success(multipartUpload.checkChunk(upload)); + } + + @Override + public ResponseResult merge(UploadApiParamDTO upload) throws IOException { + setMountInfo(upload); + return ResultUtil.success(multipartUpload.mergeFile(upload)); + } + + @Override + public ResponseResult favorite(List fileIds) throws CommonException { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").in(fileIds)); + Update update = new Update(); + fileIds.forEach(fileId -> checkOssPath(fileId, true)); + update.set(Constants.IS_FAVORITE, true); + mongoTemplate.updateMulti(query, update, COLLECTION_NAME); + fileIds.forEach(fileId -> luceneService.pushCreateIndexQueue(fileId)); + return ResultUtil.success(); + } + + private void checkOssPath(String fileId, boolean favorite) { + Path path = Paths.get(fileId); + String ossPath = CaffeineUtil.getOssPath(path); + if (ossPath != null) { + // oss 文件 或 目录 + + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(fileId)); + if (!mongoTemplate.exists(query, FileDocument.class)) { + FileDocument fileDocument = getById(fileId); + fileDocument.setIsFavorite(true); + saveFileDocument(fileDocument); + } + + String objectName = fileId.substring(ossPath.length()); + String username = WebOssCommonService.getUsernameByOssPath(ossPath); + String userId = userService.getUserIdByUserName(username); + if (favorite) { + // 设置 favorite 属性 + webOssService.setOssPath(userId, fileId, objectName, ossPath, false); + } else { + // 移除 favorite 属性 + List fileDocumentList = webOssService.removeOssPathFile(userId, fileId, ossPath, true, false); + mongoTemplate.insertAll(fileDocumentList); + } + return; + } + FileDocument fileDocument = getFileDocumentById(fileId, true); + if (fileDocument != null && fileDocument.getOssFolder() != null) { + // oss根目录 + String userId = fileDocument.getUserId(); + Path path1 = Paths.get(userService.getUserNameById(userId), fileDocument.getOssFolder()); + String ossPath1 = CaffeineUtil.getOssPath(path1); + if (ossPath1 != null) { + String objectName = WebOssService.getObjectName(path1, ossPath1, true); + if (favorite) { + // 设置 favorite 属性 + webOssService.setOssPath(userId, null, objectName, ossPath1, true); + } else { + // 移除 favorite 属性 + List fileDocumentList = webOssService.removeOssPathFile(userId, null, ossPath1, true, false); + mongoTemplate.insertAll(fileDocumentList); + } + } + } + } + + @Override + public ResponseResult unFavorite(List fileIds) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").in(fileIds)); + Update update = new Update(); + fileIds.forEach(fileId -> checkOssPath(fileId, false)); + update.set(Constants.IS_FAVORITE, false); + mongoTemplate.updateMulti(query, update, COLLECTION_NAME); + fileIds.forEach(fileId -> luceneService.pushCreateIndexQueue(fileId)); + return ResultUtil.success(); + } + + /** + * 仅删除文件基本信息, 不删除实际文件, 一般用于移动操作 + * + * @param username username + * @param fileIds fileIds + */ + public void deleteOnlyDoc(String username, String currentDirectory, List fileIds, String operator) { + username = deleteOss(username, currentDirectory, fileIds, operator); + if (username == null) { + return; + } + Query query = new Query(); + query.addCriteria(Criteria.where("_id").in(fileIds)); + List fileDocuments = mongoTemplate.findAllAndRemove(query, FileDocument.class, COLLECTION_NAME); + for (FileDocument fileDocument : fileDocuments) { + // 删除文件夹及其下的所有文件 + List delFileDocumentList = mongoTemplate.findAllAndRemove(getAllByFolderQuery(fileDocument), FileDocument.class, COLLECTION_NAME); + // 提取出delFileDocumentList中文件id + List delFileIds = delFileDocumentList.stream().map(FileDocument::getId).toList(); + deleteDependencies(username, delFileIds, false); + pushMessage(username, fileDocument.getPath(), Constants.DELETE_FILE); + } + } + + @Override + public ResponseResult delete(String username, String currentDirectory, List fileIds, String operator, boolean sweep) { + username = deleteOss(username, currentDirectory, fileIds, operator); + if (username == null) { + return ResultUtil.success(); + } + Query query = new Query(); + query.addCriteria(Criteria.where("_id").in(fileIds)); + List fileDocuments = mongoTemplate.find(query, FileDocument.class, COLLECTION_NAME); + boolean isDel = false; + for (FileDocument fileDocument : fileDocuments) { + if (fileDocument.getOssFolder() != null) { + throw new CommonException("不能删除oss根目录"); + } + if (CommonFileService.isLock(fileDocument)) { + throw new CommonException(ExceptionType.LOCKED_RESOURCES); + } + if (sweep) { + String currentDirectory1 = getUserDirectory(fileDocument.getPath()); + String filePath = fileProperties.getRootDir() + File.separator + username + currentDirectory1 + fileDocument.getName(); + File file = new File(filePath); + isDel = FileUtil.del(file); + } else { + if (BooleanUtil.isFalse(fileDocument.getIsFolder())) { + isDel = true; + } + } + isDel = delFolder(username, sweep, fileDocument, isDel); + pushMessage(username, fileDocument.getPath(), Constants.DELETE_FILE); + deleteFileLog(isDel, username, sweep, fileDocument); + } + delDependencies(username, fileIds, sweep, isDel, query); + return ResultUtil.success(); + } + + private void delDependencies(String username, List fileIds, boolean sweep, boolean isDel, Query query) { + OperationTips operationTips = OperationTips.builder().operation(sweep ? "删除" : "移动到回收站").build(); + if (isDel) { + if (sweep) { + mongoTemplate.remove(query, COLLECTION_NAME); + } else { + List delFileDocumentList = mongoTemplate.findAllAndRemove(query, FileDocument.class, COLLECTION_NAME); + // 移动到回收站 + moveToTrash(username, delFileDocumentList, false); + } + deleteDependencies(username, fileIds, sweep); + operationTips.setSuccess(true); + } else { + operationTips.setSuccess(false); + } + pushMessage(username, operationTips, Constants.OPERATION_TIPS); + } + + private boolean delFolder(String username, boolean sweep, FileDocument fileDocument, boolean isDel) { + if (Boolean.TRUE.equals(fileDocument.getIsFolder())) { + // 删除文件夹及其下的所有文件 + List delFileDocumentList = mongoTemplate.findAllAndRemove(getAllByFolderQuery(fileDocument), FileDocument.class, COLLECTION_NAME); + if (!sweep) { + // 移动到回收站 + moveToTrash(username, delFileDocumentList, true); + } + // 提取出delFileDocumentList中文件id + List delFileIds = delFileDocumentList.stream().map(FileDocument::getId).toList(); + deleteDependencies(username, delFileIds, sweep); + isDel = true; + } + return isDel; + } + + /** + * 删除文件日志 + * + * @param logOperation logOperation + * @param isDel isDel + * @param username username + * @param sweep sweep + * @param fileDocument fileDocument + */ + private void deleteFileLog(LogOperation logOperation, boolean isDel, String username, boolean sweep, FileDocument fileDocument) { + if (!isDel) { + return; + } + String filepath = ""; + String folder = "文件"; + if (fileDocument != null) { + filepath = Paths.get(fileDocument.getPath(), fileDocument.getName()).toString(); + folder = Boolean.TRUE.equals(fileDocument.getIsFolder()) ? "文件夹" : "文件"; + } + String desc = logOperation.getOperationFun(); + if (CharSequenceUtil.isBlank(desc)) { + desc = sweep ? "彻底删除" + folder : "移动到回收站"; + } + logService.asyncAddLogFileOperation(logOperation, username, filepath, desc); + } + + private void deleteFileLog(boolean isDel, String username, boolean sweep, FileDocument fileDocument) { + deleteFileLog(logService.getLogOperation(), isDel, username, sweep, fileDocument); + } + + private String deleteOss(String username, String currentDirectory, List fileIds, String operator) { + FileDocument doc = getById(fileIds.get(0)); + List operationPermissionList = null; + if (doc != null) { + username = userService.getUserNameById(doc.getUserId()); + currentDirectory = doc.getPath(); + operationPermissionList = doc.getOperationPermissionList(); + } + checkPermissionUsername(username, operator, operationPermissionList, OperationPermission.DELETE); + Path prePth = Paths.get(username, currentDirectory); + String ossPath = CaffeineUtil.getOssPath(prePth); + if (ossPath != null) { + deleteDependencies(username, fileIds, true); + webOssService.delete(ossPath, fileIds); + return null; + } + return username; + } + + @Override + public ResponseResult restore(List fileIds, String username) { + LogOperation logOperation = logService.getLogOperation(); + logOperation.setOperationFun("从回收站还原文件"); + Single.create(emitter -> { + restoreFile(username, fileIds, logOperation); + OperationTips operationTips = OperationTips.builder().success(true).operation("还原").build(); + pushMessage(username, operationTips, Constants.OPERATION_TIPS); + }).subscribeOn(Schedulers.io()).subscribe(); + return ResultUtil.success(); + } + + @Override + public ResponseResult sweep(List fileIds, String username) { + LogOperation logOperation = logService.getLogOperation(); + Single.create(emitter -> { + Query query = new Query(Criteria.where("_id").in(fileIds)); + deleteDependencies(username, fileIds, true); + deleteTrash(username, query, logOperation); + OperationTips operationTips = OperationTips.builder().success(true).operation("删除").build(); + pushMessage(username, operationTips, Constants.OPERATION_TIPS); + }).subscribeOn(Schedulers.io()).subscribe(); + return ResultUtil.success(); + } + + @Override + public ResponseResult isAllowDownload(List fileIds) { + if (fileIds.isEmpty()) { + return ResultUtil.error("文件不存在"); + } + LogOperation logOperation = logService.getLogOperation(); + Single.create(emitter -> { + // 文件操作日志 + FileDocument fileDocument = getById(fileIds.get(0)); + if (fileDocument == null) { + return; + } + String fileUsername = userService.getUserNameById(fileDocument.getUserId()); + String desc; + if (fileIds.size() > 1) { + desc = fileDocument.getPath() + fileDocument.getName() + ",等" + fileIds.size() + "个文件"; + } else { + desc = fileDocument.getPath() + fileDocument.getName(); + } + logService.asyncAddLogFileOperation(logOperation, fileUsername, desc, "下载文件"); + }).subscribeOn(Schedulers.io()).subscribe(); + return ResultUtil.success(true); + } + + @Override + public ResponseResult clearTrash(String username) { + LogOperation logOperation = logService.getLogOperation(); + logOperation.setOperationFun("清空回收站"); + Single.create(emitter -> { + Query query = new Query(); + query.fields().include("_id"); + List trashList = mongoTemplate.findAllAndRemove(new Query(), Trash.class, TRASH_COLLECTION_NAME); + // trashList 转为 fileIds + List fileIds = trashList.stream().map(Trash::getId).toList(); + deleteDependencies(username, fileIds, true); + Path trashPath = Paths.get(fileProperties.getRootDir(), fileProperties.getChunkFileDir(), username, fileProperties.getJmalcloudTrashDir()); + PathUtil.del(trashPath); + deleteFileLog(logOperation, true, username, true, null); + OperationTips operationTips = OperationTips.builder().success(true).operation("清空回收站").build(); + pushMessage(username, operationTips, Constants.OPERATION_TIPS); + }).subscribeOn(Schedulers.io()).subscribe(); + return ResultUtil.success(); + } + + private void deleteTrash(String username, Query query, LogOperation logOperation) { + List fileDocumentList = mongoTemplate.findAllAndRemove(query, FileDocument.class, TRASH_COLLECTION_NAME); + // 删除文件 + fileDocumentList.forEach(trashFileDocument -> { + Path path = Paths.get(fileProperties.getRootDir(), username, trashFileDocument.getPath(), trashFileDocument.getName()); + PathUtil.del(path); + Path trashFilePath = getTrashFilePath(username, trashFileDocument); + PathUtil.del(trashFilePath); + deleteFileLog(logOperation, true, username, true, trashFileDocument); + }); + } + + private void moveToTrash(String username, List delFileDocumentList, boolean hidden) { + List trashList = delFileDocumentList.parallelStream().map(fileDocument -> { + if (!hidden) { + doMoveFileToTrash(username, fileDocument); + } + return fileDocument.toTrash(hidden, true); + }).toList(); + mongoTemplate.insert(trashList, TRASH_COLLECTION_NAME); + } + + /** + * 移动文件到回收站 + * + * @param username username + * @param fileDocument fileDocument + */ + private void doMoveFileToTrash(String username, FileDocument fileDocument) { + Path sourceAbsolutePath; + try { + sourceAbsolutePath = getFileByFileDocument(username, fileDocument).toPath(); + } catch (CommonException e) { + return; + } + Path trashFilePath = getTrashFilePath(username, fileDocument); + PathUtil.move(sourceAbsolutePath, trashFilePath, true); + } + + private Path getTrashFilePath(String username, FileDocument fileDocument) { + return Paths.get(fileProperties.getRootDir(), fileProperties.getChunkFileDir(), username, fileProperties.getJmalcloudTrashDir(), fileDocument.getId() + fileDocument.getName()); + } + + public void restoreFile(String username, List trashFileIdList, LogOperation logOperation) { + trashFileIdList.forEach(trashFileId -> { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(trashFileId)); + FileDocument trashFileDocument = mongoTemplate.findAndRemove(query, FileDocument.class, TRASH_COLLECTION_NAME); + if (trashFileDocument != null) { + if (BooleanUtil.isTrue(trashFileDocument.getMove())) { + // 从回收站移动到原位置 + Path trashFilePath = getTrashFilePath(username, trashFileDocument); + Path sourceFilePath = Paths.get(fileProperties.getRootDir(), username, trashFileDocument.getPath(), trashFileDocument.getName()); + if (PathUtil.exists(sourceFilePath, true)) { + // 加一个时间后缀 + String timePrefix = LocalDateTimeUtil.now().format(DateTimeFormatter.ofPattern(DatePattern.PURE_DATETIME_PATTERN)); + sourceFilePath = Paths.get(fileProperties.getRootDir(), username, trashFileDocument.getPath(), timePrefix + "_" + trashFileDocument.getName()); + } + mongoTemplate.insert(trashFileDocument, COLLECTION_NAME); + PathUtil.move(trashFilePath, sourceFilePath, false); + } else { + // 老版本还原 + if (BooleanUtil.isTrue(trashFileDocument.getIsFolder())) { + List trashList1 = mongoTemplate.findAllAndRemove(getAllByFolderQuery(trashFileDocument), FileDocument.class, TRASH_COLLECTION_NAME); + mongoTemplate.insert(trashList1, COLLECTION_NAME); + } else { + mongoTemplate.insert(trashFileDocument, COLLECTION_NAME); + } + } + deleteFileLog(logOperation, true, username, true, trashFileDocument); + } + }); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/service/impl/FileVersionServiceImpl.java b/src/main/java/com/jmal/clouddisk/service/impl/FileVersionServiceImpl.java new file mode 100644 index 0000000..0488091 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/service/impl/FileVersionServiceImpl.java @@ -0,0 +1,482 @@ +package com.jmal.clouddisk.service.impl; + +import cn.hutool.core.date.DatePattern; +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.date.LocalDateTimeUtil; +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.text.CharSequenceUtil; +import com.github.benmanes.caffeine.cache.Cache; +import com.github.benmanes.caffeine.cache.Caffeine; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.exception.CommonException; +import com.jmal.clouddisk.exception.ExceptionType; +import com.jmal.clouddisk.lucene.LuceneService; +import com.jmal.clouddisk.model.FileDocument; +import com.jmal.clouddisk.model.GridFSBO; +import com.jmal.clouddisk.model.Metadata; +import com.jmal.clouddisk.office.OfficeHistory; +import com.jmal.clouddisk.oss.AbstractOssObject; +import com.jmal.clouddisk.oss.web.WebOssService; +import com.jmal.clouddisk.service.Constants; +import com.jmal.clouddisk.service.IFileService; +import com.jmal.clouddisk.service.IFileVersionService; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.util.CaffeineUtil; +import com.jmal.clouddisk.util.FileNameUtils; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import com.mongodb.client.gridfs.model.GridFSFile; +import io.reactivex.rxjava3.core.Completable; +import io.reactivex.rxjava3.schedulers.Schedulers; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.apache.catalina.connector.ClientAbortException; +import org.apache.commons.io.IOUtils; +import org.bson.Document; +import org.jetbrains.annotations.NotNull; +import org.mozilla.universalchardet.UniversalDetector; +import org.springframework.core.io.InputStreamResource; +import org.springframework.data.domain.Sort; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.data.mongodb.core.query.Update; +import org.springframework.data.mongodb.gridfs.GridFsResource; +import org.springframework.data.mongodb.gridfs.GridFsTemplate; +import org.springframework.http.HttpHeaders; +import org.springframework.http.MediaType; +import org.springframework.http.ResponseEntity; +import org.springframework.stereotype.Service; +import org.springframework.web.servlet.mvc.method.annotation.StreamingResponseBody; + +import java.io.*; +import java.nio.charset.Charset; +import java.nio.charset.StandardCharsets; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.time.LocalDateTime; +import java.time.ZoneId; +import java.time.format.DateTimeFormatter; +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.TimeUnit; +import java.util.zip.GZIPInputStream; +import java.util.zip.GZIPOutputStream; + +import static com.jmal.clouddisk.service.Constants.UPDATE_DATE; + +/** + * @author jmal + * @Description 文件版本管理 + * @date 2023/5/9 17:53 + */ +@Slf4j +@RequiredArgsConstructor +@Service +public class FileVersionServiceImpl implements IFileVersionService { + + private static final String COLLECTION_NAME = "fs.files"; + + private final CommonFileService commonFileService; + + private final GridFsTemplate gridFsTemplate; + + private final MongoTemplate mongoTemplate; + + private final FileProperties fileProperties; + + private final IFileService fileService; + + private final UserLoginHolder userLoginHolder; + + private final IUserService userService; + + private final LuceneService luceneService; + + private final Cache fileLocks = Caffeine.newBuilder() + .expireAfterAccess(10, TimeUnit.MINUTES) // 例如:10分钟不访问就过期 + .maximumSize(10_000) // 例如:最多缓存10000个文件路径的锁 + .build(); + + @Override + public void saveFileVersion(String fileUsername, String relativePath, String userId) { + saveFileVersion(fileUsername, relativePath, userId, userLoginHolder.getUsername()); + } + + private void saveFileVersion(String fileUsername, String relativePath, String userId, String operator) { + File file = new File(Paths.get(fileProperties.getRootDir(), fileUsername, relativePath).toString()); + String filepath = Paths.get(fileUsername, relativePath).toString(); + Object lock = fileLocks.get(filepath, k -> new Object()); + if (lock != null) { + synchronized (lock) { + if (CaffeineUtil.hasFileHistoryCache(filepath)) { + return; + } + FileDocument fileDocument = commonFileService.getFileDocumentByPath(filepath, userId); + long size = file.length(); + String updateDate = fileDocument.getUpdateDate().format(DateTimeFormatter.ofPattern(DatePattern.NORM_DATETIME_PATTERN)); + Metadata metadata = setMetadata(size, filepath, file.getName(), updateDate, operator); + if (metadata == null) return; + try (InputStream inputStream = new FileInputStream(file); + InputStream gzipInputStream = gzipCompress(inputStream, metadata)) { + gridFsTemplate.store(gzipInputStream, fileDocument.getId(), metadata); + CaffeineUtil.setFileHistoryCache(filepath); + } catch (IOException e) { + log.error(e.getMessage(), e); + } + } + } + } + + @Override + public void asyncSaveFileVersion(String fileUsername, File file, String operator) { + Path physicalPath = file.toPath(); + Path userRootPath = Paths.get(fileProperties.getRootDir(), fileUsername); + Path relativeNioPath = userRootPath.relativize(physicalPath); + Completable.fromAction(() -> saveFileVersion(fileUsername, relativeNioPath.toString(), userService.getUserIdByUserName(fileUsername), operator)).subscribeOn(Schedulers.io()).subscribe(); + } + + + @Override + public void saveFileVersion(AbstractOssObject abstractOssObject, String fileId) { + Object lock = fileLocks.get(fileId, k -> new Object()); + if (lock != null) { + synchronized (lock) { + if (CaffeineUtil.hasFileHistoryCache(fileId)) { + return; + } + long size = abstractOssObject.getContentLength(); + String filename = Paths.get(abstractOssObject.getKey()).getFileName().toString(); + String updateDate = DateUtil.format(abstractOssObject.getFileInfo().getLastModified(), DateTimeFormatter.ofPattern(DatePattern.NORM_DATETIME_PATTERN)); + Metadata metadata = setMetadata(size, fileId, filename, updateDate, userLoginHolder.getUsername()); + if (metadata == null) return; + try (InputStream inputStream = abstractOssObject.getInputStream(); + InputStream gzipInputStream = gzipCompress(inputStream, metadata)) { + gridFsTemplate.store(gzipInputStream, fileId, metadata); + CaffeineUtil.setFileHistoryCache(fileId); + } catch (IOException e) { + log.error(e.getMessage(), e); + } + } + } + } + + /** + * 设置历史文件自定义元数据 + * + * @param size 文件大小 + * @param filepath filepath(以username开头) + * @param filename filename + * @param updateDate 文件最后修改时间 + */ + private static Metadata setMetadata(long size, String filepath, String filename, String updateDate, String username) { + Metadata metadata = new Metadata(); + metadata.setFilepath(filepath); + metadata.setFilename(filename); + metadata.setTime(updateDate); + metadata.setSize(size); + metadata.setOperator(username); + if (size == 0) { + // 无内容,不用存历史版本 + return null; + } + if (size >= 1024) { + metadata.setCompression("gzip"); + } + return metadata; + } + + /** + * 读取文件 + * + * @param gridFSId GridFSId + * @return InputStream + */ + public InputStream readFileVersion(String gridFSId) throws IOException { + GridFSFile gridFSFile = getGridFSFile(gridFSId); + return getInputStream(gridFSFile); + } + + private InputStream getInputStream(GridFSFile gridFSFile) throws IOException { + GridFsResource gridFsResource = gridFsTemplate.getResource(gridFSFile); + return gzipDecompress(gridFsResource.getInputStream(), gridFSFile.getMetadata()); + } + + @NotNull + private GridFSFile getGridFSFile(String gridFSId) { + Query query = getQueryOfId(gridFSId); + return gridFsTemplate.findOne(query); + } + + @NotNull + private static Query getQueryOfId(String gridFSId) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(gridFSId)); + return query; + } + + public ResponseResult> listFileVersion(String fileId, Integer pageSize, Integer pageIndex) { + List gridFSBOList = new ArrayList<>(); + Query query = new Query(); + query.addCriteria(Criteria.where(Constants.FILENAME).is(fileId)); + long count = mongoTemplate.count(query, COLLECTION_NAME); + if (count == 0) { + return ResultUtil.success(gridFSBOList).setCount(0); + } + CommonFileService.setPage(pageSize, pageIndex, query); + query.with(Sort.by(Sort.Direction.DESC, Constants.UPLOAD_DATE)); + gridFSBOList = mongoTemplate.find(query, GridFSBO.class, COLLECTION_NAME); + return ResultUtil.success(gridFSBOList).setCount(count); + } + + public ResponseResult> officeListFileVersion(String path, Integer pageSize, Integer pageIndex) { + ResponseResult> result = listFileVersion(path, pageSize, pageIndex); + List officeHistoryList = result.getData().stream().map(gridFSBO -> { + OfficeHistory officeHistory = new OfficeHistory(); + officeHistory.setCreated(gridFSBO.getMetadata().getTime()); + officeHistory.setKey(gridFSBO.getId()); + // 将时间设置为版本号, 格式转换为MM-dd + officeHistory.setVersion(gridFSBO.getUploadDate().format(DateTimeFormatter.ofPattern("MM-dd"))); + OfficeHistory.User user = new OfficeHistory.User(); + String username = gridFSBO.getMetadata().getOperator(); + if (CharSequenceUtil.isBlank(username)) { + username = "Unknown"; + } + user.setId(username); + user.setName(username); + officeHistory.setUser(user); + return officeHistory; + }).toList(); + return ResultUtil.success(officeHistoryList).setCount(result.getCount()); + } + + @Override + public ResponseResult> listFileVersionByPath(String path, Integer pageSize, Integer pageIndex) { + String fileId = null; + String username = userLoginHolder.getUsername(); + Path prePth = Paths.get(username, path); + String ossPath = CaffeineUtil.getOssPath(prePth); + if (ossPath != null) { + fileId = WebOssService.getObjectName(prePth, ossPath, false); + } else { + Path filePath = Paths.get(FileNameUtils.safeDecode(path)); + String relativePath = File.separator; + if (filePath.getNameCount() > 1) { + relativePath += filePath.subpath(0, filePath.getNameCount() - 1) + File.separator; + } + String userId = userLoginHolder.getUserId(); + FileDocument fileDocument = commonFileService.getFileDocumentByPath(relativePath, filePath.getFileName().toString(), userId); + if (fileDocument == null) { + return ResultUtil.success(new ArrayList<>()); + } + if (fileDocument.getId() != null) { + fileId = fileDocument.getId(); + } + } + if (CharSequenceUtil.isBlank(fileId)) { + return ResultUtil.success(new ArrayList<>()); + } + return listFileVersion(fileId, pageSize, pageIndex); + } + + @Override + public FileDocument getFileById(String gridFSId) { + GridFSFile gridFSFile = getGridFSFile(gridFSId); + if (gridFSFile.getMetadata() == null) { + return null; + } + String fileId = gridFSFile.getFilename(); + FileDocument fileDocument = fileService.getById(fileId); + if (fileDocument == null) { + return null; + } + fileDocument.setSize(gridFSFile.getLength()); + fileDocument.setName(gridFSFile.getMetadata().getString(Constants.FILENAME)); + Charset charset = getCharset(gridFSFile); + try (InputStream inputStream = getInputStream(gridFSFile)) { + String content = IOUtils.toString(inputStream, charset); + fileDocument.setContentText(content); + } catch (IOException e) { + log.error(e.getMessage(), e); + } + return fileDocument; + } + + private Charset getCharset(GridFSFile gridFSFile) { + Charset charset = StandardCharsets.UTF_8; + try (InputStream inputStream = getInputStream(gridFSFile)) { + charset = Charset.forName(UniversalDetector.detectCharset(inputStream)); + } catch (Exception e) { + return charset; + } + return charset; + } + + @Override + public StreamingResponseBody getStreamFileById(String gridFSId) { + return outputStream -> { + GridFSFile gridFSFile = getGridFSFile(gridFSId); + Charset charset = getCharset(gridFSFile); + try (InputStream inputStream = getInputStream(gridFSFile); + InputStreamReader inputStreamReader = new InputStreamReader(inputStream, charset); + BufferedReader bufferedReader = new BufferedReader(inputStreamReader)) { + String line; + while ((line = bufferedReader.readLine()) != null) { + outputStream.write(line.getBytes()); + outputStream.write("\n".getBytes()); + outputStream.flush(); + } + } catch (ClientAbortException ignored) { + // ignored + } catch (IOException e) { + log.error(e.getMessage(), e); + } + }; + } + + @Override + public void deleteAll(List fileIds) { + try { + Query query = new Query(); + query.addCriteria(Criteria.where(Constants.FILENAME).in(fileIds)); + gridFsTemplate.delete(query); + } catch (Exception e) { + // ignore + } + } + + @Override + public void deleteAll(String fileId) { + try { + Query query = new Query(); + query.addCriteria(Criteria.where(Constants.FILENAME).is(fileId)); + gridFsTemplate.delete(query); + } catch (Exception e) { + // ignore + } + } + + @Override + public void deleteOne(String id) { + try { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(id)); + gridFsTemplate.delete(query); + } catch (Exception e) { + // ignore + } + } + + @Override + public void rename(String sourceFileId, String destinationFileId) { + Query query = new Query(); + query.addCriteria(Criteria.where(Constants.FILENAME).is(sourceFileId)); + Update update = new Update(); + update.set(Constants.FILENAME, destinationFileId); + mongoTemplate.updateMulti(query, update, COLLECTION_NAME); + } + + @Override + public Long recovery(String gridFSId) { + GridFSFile gridFSFile = getGridFSFile(gridFSId); + if (gridFSFile.getMetadata() == null) { + throw new CommonException(ExceptionType.FILE_NOT_FIND); + } + String fileId = gridFSFile.getFilename(); + String filename = gridFSFile.getMetadata().getString(Constants.FILENAME); + FileDocument fileDocument = fileService.getById(fileId); + if (fileDocument == null) { + throw new CommonException(ExceptionType.FILE_NOT_FIND); + } + String username = userLoginHolder.getUsername(); + if (CharSequenceUtil.isBlank(username)) { + throw new CommonException(ExceptionType.LOGIN_EXCEPTION); + } + File file = Paths.get(fileProperties.getRootDir(), username, fileDocument.getPath(), filename).toFile(); + if (!file.exists()) { + throw new CommonException(ExceptionType.FILE_NOT_FIND); + } + if (CommonFileService.isLock(file, fileProperties.getRootDir(), username)) { + throw new CommonException(ExceptionType.LOCKED_RESOURCES); + } + LocalDateTime time = LocalDateTimeUtil.now(); + try (InputStream inputStream = getInputStream(gridFSFile)) { + FileUtil.writeFromStream(inputStream, file); + Query query = new Query().addCriteria(Criteria.where("_id").is(fileId)); + Update update = new Update(); + update.set(UPDATE_DATE, time); + mongoTemplate.updateFirst(query, update, FileDocument.class); + luceneService.pushCreateIndexQueue(fileId); + } catch (IOException e) { + log.error(e.getMessage(), e); + } + return time.atZone(ZoneId.systemDefault()).toInstant().toEpochMilli(); + } + + @Override + public ResponseEntity readHistoryFile(String gridFSId) { + GridFSFile gridFSFile = getGridFSFile(gridFSId); + if (gridFSFile.getMetadata() == null) { + return ResponseEntity.notFound().build(); + } + try (InputStream inputStream = getInputStream(gridFSFile)) { + HttpHeaders headers = new HttpHeaders(); + return ResponseEntity.ok() + .headers(headers) + .contentType(MediaType.parseMediaType("application/octet-stream")) + .body(new InputStreamResource(inputStream)); + } catch (IOException e) { + log.error(e.getMessage(), e); + } + return ResponseEntity.notFound().build(); + } + + /** + * gzip压缩 + * + * @param inputStream 原始 inputStream + * @param metadata 自定义元数据 + * @return 压缩后的 inputStream + */ + public static InputStream gzipCompress(InputStream inputStream, Metadata metadata) { + if (metadata != null && !"gzip".equals(metadata.getCompression())) { + return inputStream; + } + ByteArrayOutputStream out = new ByteArrayOutputStream(); + try (GZIPOutputStream gzipOut = new GZIPOutputStream(out)) { + byte[] buffer = new byte[1024]; + int len; + while ((len = inputStream.read(buffer)) > 0) { + gzipOut.write(buffer, 0, len); + } + } catch (IOException e) { + log.error(e.getMessage(), e); + } + return new ByteArrayInputStream(out.toByteArray()); + } + + /** + * gzip解压 + * + * @param inputStream 压缩后的 inputStream + * @param metadata 自定义元数据 + * @return 解压后的 inputStream + */ + public static InputStream gzipDecompress(InputStream inputStream, Document metadata) { + if (metadata != null && !"gzip".equals(metadata.get("compression"))) { + return inputStream; + } + ByteArrayOutputStream out = new ByteArrayOutputStream(); + try (GZIPInputStream gzipIn = new GZIPInputStream(inputStream)) { + byte[] buffer = new byte[1024]; + int len; + while ((len = gzipIn.read(buffer)) > 0) { + out.write(buffer, 0, len); + } + } catch (IOException e) { + log.error(e.getMessage(), e); + } + return new ByteArrayInputStream(out.toByteArray()); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/service/impl/LogService.java b/src/main/java/com/jmal/clouddisk/service/impl/LogService.java new file mode 100644 index 0000000..07ff54e --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/service/impl/LogService.java @@ -0,0 +1,456 @@ +package com.jmal.clouddisk.service.impl; + +import cn.hutool.core.net.URLDecoder; +import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.core.thread.ThreadUtil; +import cn.hutool.http.useragent.UserAgent; +import cn.hutool.http.useragent.UserAgentUtil; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.model.FileDocument; +import com.jmal.clouddisk.model.LogOperation; +import com.jmal.clouddisk.model.LogOperationDTO; +import com.jmal.clouddisk.model.rbac.ConsumerDO; +import com.jmal.clouddisk.service.Constants; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import com.jmal.clouddisk.util.TimeUntils; +import io.reactivex.rxjava3.core.Completable; +import io.reactivex.rxjava3.schedulers.Schedulers; +import jakarta.annotation.PostConstruct; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import lombok.extern.slf4j.Slf4j; +import org.lionsoul.ip2region.xdb.Searcher; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.domain.Sort; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.stereotype.Service; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import java.nio.charset.StandardCharsets; +import java.time.LocalDateTime; +import java.util.Collections; +import java.util.List; +import java.util.regex.Pattern; +import java.util.stream.Collectors; + +/** + * @author jmal + * @Description 日志服务 + * @Date 2021/2/5 5:43 下午 + */ +@Service +@Slf4j +public class LogService { + + private static final int REGION_LENGTH = 5; + + @Autowired + private MongoTemplate mongoTemplate; + + @Autowired + private UserLoginHolder userLoginHolder; + + @Autowired + private UserServiceImpl userService; + + @Autowired + private FileProperties fileProperties; + + private Searcher ipSearcher = null; + + @PostConstruct + public void initIpDbSearcher() { + String ip2regionDbPath = fileProperties.getIp2regionDbPath(); + byte[] vIndex; + try { + vIndex = Searcher.loadVectorIndexFromFile(ip2regionDbPath); + } catch (Exception e) { + log.error("failed to load vector index from {}\n", ip2regionDbPath, e); + return; + } + try { + ipSearcher = Searcher.newWithVectorIndex(ip2regionDbPath, vIndex); + } catch (Exception e) { + log.error("failed to create vectorIndex cached searcher with {}\n", ip2regionDbPath, e); + } + } + + /*** + * 存储操作日志前 + * @param logOperation 操作日志 包含参数:(time,username,operationModule,operationFun,type) + * @param result 操作方法返回值 + * @param request HttpServletRequest + * @param response HttpServletResponse + */ + @SuppressWarnings("unchecked") + public void addLogBefore(LogOperation logOperation, Object result, HttpServletRequest request, HttpServletResponse response) { + // 用户 + String username = logOperation.getUsername(); + if (!CharSequenceUtil.isBlank(username)) { + logOperation.setShowName(userService.getShowNameByUserUsername(username)); + } + logOperation = getLogOperation(request, logOperation); + // 返回结果 + logOperation.setStatus(0); + ResponseResult responseResult; + if (result == null) { + setStatus(logOperation, response); + } else { + try { + responseResult = (ResponseResult) result; + logOperation.setStatus(responseResult.getCode()); + if (responseResult.getCode() != 0) { + logOperation.setRemarks(responseResult.getMessage().toString()); + } + } catch (Exception e) { + setStatus(logOperation, response); + } + } + asyncAddLog(logOperation); + } + + public LogOperation getLogOperation() { + ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); + if (attributes == null) { + return new LogOperation(); + } + HttpServletRequest request = attributes.getRequest(); + return getLogOperation(request, null); + } + + public LogOperation getLogOperation(HttpServletRequest request, LogOperation logOperation) { + if (logOperation == null) { + logOperation = new LogOperation(); + // 用户 + String username = userLoginHolder.getUsername(); + if (!CharSequenceUtil.isBlank(username)) { + logOperation.setShowName(userService.getShowNameByUserUsername(username)); + } + logOperation.setUsername(username); + } + // UserAgent + UserAgent userAgent = UserAgentUtil.parse(request.getHeader("User-Agent")); + if (userAgent != null) { + logOperation.setOperatingSystem(userAgent.getOs().getName()); + logOperation.setDeviceModel(userAgent.getPlatform().getName()); + logOperation.setBrowser(userAgent.getBrowser().getName() + userAgent.getVersion()); + } + // 请求地址 + logOperation.setUrl(URLDecoder.decode(request.getRequestURI(), StandardCharsets.UTF_8)); + // 请求方式 + logOperation.setMethod(request.getMethod()); + // 客户端ip + String ip = getIpAddress(request); + logOperation.setIp(ip); + setIpInfo(logOperation, ip); + return logOperation; + } + + private String getIpAddress(HttpServletRequest request) { + String ip = request.getRemoteHost(); + if (CharSequenceUtil.isNotBlank(ip)) { + return ip; + } + ip = request.getHeader("x-forwarded-for"); + if (!CharSequenceUtil.isBlank(ip) && (ip.contains(","))) { + // 多次反向代理后会有多个ip值,第一个ip才是真实ip + ip = ip.split(",")[0]; + } + if (CharSequenceUtil.isBlank(ip)) { + ip = request.getHeader("X-real-ip"); + } + if (CharSequenceUtil.isBlank(ip)) { + ip = request.getHeader("Proxy-Client-IP"); + } + if (CharSequenceUtil.isBlank(ip)) { + ip = request.getHeader("WL-Proxy-Client-IP"); + } + if (CharSequenceUtil.isBlank(ip)) { + ip = request.getHeader("HTTP_CLIENT_IP"); + } + if (CharSequenceUtil.isBlank(ip)) { + ip = request.getHeader("HTTP_X_FORWARDED_FOR"); + } + if (CharSequenceUtil.isBlank(ip)) { + ip = request.getHeader("X-Real-IP"); + } + return ip; + } + + /*** + * 设置IP详细信息 + * @param logOperation LogOperation + */ + private void setIpInfo(LogOperation logOperation, String ip) { + if (ipSearcher != null && !CharSequenceUtil.isBlank(ip)) { + try { + String region = ipSearcher.search(ip); + if (!CharSequenceUtil.isBlank(region)) { + logOperation.setIpInfo(region2IpInfo(region)); + } + } catch (Exception ignored) { + // log + } + } + } + + /*** + * 解析IP区域信息 + */ + public LogOperation.IpInfo region2IpInfo(String region) { + LogOperation.IpInfo ipInfo = new LogOperation.IpInfo(); + String[] r = region.split("\\|"); + if (r.length != REGION_LENGTH) return ipInfo; + String country = r[0]; + if (!Constants.REGION_DEFAULT.equals(country)) { + ipInfo.setCountry(country); + } + String area = r[1]; + if (!Constants.REGION_DEFAULT.equals(area)) { + ipInfo.setArea(area); + } + String province = r[2]; + if (!Constants.REGION_DEFAULT.equals(province)) { + ipInfo.setProvince(province); + } + String city = r[3]; + if (!Constants.REGION_DEFAULT.equals(city)) { + ipInfo.setCity(city); + } + String operators = r[4]; + if (!Constants.REGION_DEFAULT.equals(operators)) { + ipInfo.setOperators(operators); + } + return ipInfo; + } + + private void setStatus(LogOperation logOperation, HttpServletResponse response) { + if (response != null) { + int status = response.getStatus(); + if (status >= HttpServletResponse.SC_BAD_REQUEST) { + logOperation.setStatus(-1); + } + logOperation.setRemarks(String.valueOf(status)); + } + } + + /** + * 添加文件操作日志(异步) + * @param logOperation 日志 + * @param fileUsername 文件所属用户CommonFileService + * @param filepath 文件路径 + * @param desc 描述 + */ + public void asyncAddLogFileOperation(LogOperation logOperation, String fileUsername, String filepath, String desc) { + Completable.fromAction(() -> addLogFileOperation(logOperation, fileUsername, filepath, desc)).subscribeOn(Schedulers.io()).subscribe(); + } + + /** + * 添加文件操作日志(同步) + * @param logOperation 日志 + * @param fileUsername 文件所属用户CommonFileService + * @param filepath 文件路径 + * @param desc 描述 + */ + public void syncAddLogFileOperation(LogOperation logOperation, String fileUsername, String filepath, String desc) { + addLogFileOperation(logOperation, fileUsername, filepath, desc); + } + + private void addLogFileOperation(LogOperation logOperation, String fileUsername, String filepath, String desc) { + String fileUserId = userService.getUserIdByUserName(fileUsername); + logOperation.setFileUserId(fileUserId); + String affiliated = !fileUsername.equals(logOperation.getUsername()) ? ", 所属用户: \"" + fileUsername + "\"" : ""; + // 判断filepath开头是否为/, 不是则添加/ + if (!filepath.startsWith("/")) { + filepath = "/" + filepath; + } + logOperation.setFilepath(filepath + affiliated); + logOperation.setOperationFun(desc); + logOperation.setType(LogOperation.Type.OPERATION_FILE.name()); + logOperation.setStatus(0); + logOperation.setOperationModule("文件管理"); + addLog(logOperation); + } + + /** + * 添加文件操作日志(异步) + * @param fileUsername 文件所属用户 + * @param filepath 文件路径 + * @param desc 描述 + */ + public void asyncAddLogFileOperation(String fileUsername, String filepath, String desc) { + asyncAddLogFileOperation(getLogOperation(), fileUsername, filepath, desc); + } + + /** + * 添加文件操作日志(同步) + * @param fileUsername 文件所属用户 + * @param filepath 文件路径 + * @param desc 描述 + */ + public void syncAddLogFileOperation(String fileUsername, String filepath, String desc) { + syncAddLogFileOperation(getLogOperation(), fileUsername, filepath, desc); + } + + public void asyncAddLog(LogOperation logOperation) { + ThreadUtil.execute(() -> { + logOperation.setCreateTime(LocalDateTime.now(TimeUntils.ZONE_ID)); + mongoTemplate.save(logOperation); + }); + } + + public void addLog(LogOperation logOperation) { + logOperation.setCreateTime(LocalDateTime.now(TimeUntils.ZONE_ID)); + mongoTemplate.save(logOperation); + } + + public ResponseResult> list(LogOperationDTO logOperationDTO) { + Query query = getQuery(logOperationDTO); + long count = mongoTemplate.count(query, LogOperation.class); + List logOperationList = getLogList(logOperationDTO, query); + return ResultUtil.success(logOperationList).setCount(count); + } + + public ResponseResult> getFileOperationHistory(LogOperationDTO logOperationDTO, String fileId) { + List logOperationDTOList; + Query query = getFileOperationHistoryQuery(fileId); + if (query == null) { + logOperationDTOList = Collections.emptyList(); + return ResultUtil.success(logOperationDTOList).setCount(0); + } + long count = mongoTemplate.count(query, LogOperation.class); + List logOperationList = getLogList(logOperationDTO, query); + // 加入userId + logOperationDTOList = logOperationList.parallelStream().map(logOperation -> { + LogOperationDTO fileOperationLog = new LogOperationDTO(); + fileOperationLog.setShowName(userService.getShowNameByUserUsername(logOperation.getUsername())); + fileOperationLog.setAvatar(userService.getAvatarByUsername(logOperation.getUsername())); + fileOperationLog.setCreateTime(logOperation.getCreateTime()); + fileOperationLog.setOperationFun(logOperation.getOperationFun()); + return fileOperationLog; + }).collect(Collectors.toList()); + return ResultUtil.success(logOperationDTOList).setCount(count); + } + + private Query getFileOperationHistoryQuery(String fileId) { + Query fileQuery = new Query(); + fileQuery.addCriteria(Criteria.where("_id").is(fileId)); + fileQuery.fields().include("name", "path", "userId"); + FileDocument fileDocument = mongoTemplate.findOne(fileQuery, FileDocument.class); + if (fileDocument == null) { + return null; + } + String fileUserId = fileDocument.getUserId(); + String requestUserId = userLoginHolder.getUserId(); + // 构造 filepath + String filepath = fileDocument.getPath() + fileDocument.getName(); + // 构造第二个 filepath(去掉开头的斜杠,模拟 "新建文件夹/新建文件夹/新建文件夹/未命名文件.txt") + String filepathWithoutSlash = fileDocument.getPath().replaceFirst("^/", "") + fileDocument.getName(); + + Query query = new Query(); + query.addCriteria(Criteria.where("fileUserId").is(fileUserId)); + // 创建 $or 条件 + Criteria orCriteria = new Criteria().orOperator( + Criteria.where("filepath").is(filepath), // filepath 精确匹配第一个路径 + Criteria.where("filepath").regex("^" + Pattern.quote(filepath)), // filepath 正则匹配(以 filepath 开头) + Criteria.where("filepath").is(filepathWithoutSlash), // filepath 精确匹配第二个路径(无开头的斜杠) + Criteria.where("operationFun").regex(Pattern.quote(filepath) + "\"$") // operationFun 正则匹配(以 filepath+" 结尾) + ); + if (!fileUserId.equals(requestUserId)) { + // 如果文件不是自己则只能看自己的操作 + query.addCriteria(Criteria.where("username").is(userService.getUserNameById(requestUserId))); + } + query.addCriteria(orCriteria); + query.addCriteria(Criteria.where("type").is(LogOperation.Type.OPERATION_FILE.name())); + query.with(Sort.by(Sort.Direction.DESC, "createTime")); + return query; + } + + /*** + * 日志列表 + * @param logOperationDTO 查询条件 + */ + private List getLogList(LogOperationDTO logOperationDTO, Query query) { + setPage(logOperationDTO, query); + setSort(logOperationDTO, query); + return mongoTemplate.find(query, LogOperation.class); + } + + /*** + * 解析查询条件 + * @param logOperationDTO 查询条件 + * @return Query(mongodb的查询条件) + */ + private Query getQuery(LogOperationDTO logOperationDTO) { + Query query = new Query(); + String excludeUsername = logOperationDTO.getExcludeUsername(); + String username = logOperationDTO.getUsername(); + if (!CharSequenceUtil.isBlank(excludeUsername) && CharSequenceUtil.isBlank(username)) { + query.addCriteria(Criteria.where("username").nin(userLoginHolder.getUsername())); + } + if (!CharSequenceUtil.isBlank(username)) { + query.addCriteria(Criteria.where("username").is(username)); + } + String ip = logOperationDTO.getIp(); + if (!CharSequenceUtil.isBlank(ip)) { + query.addCriteria(Criteria.where("ip").is(ip)); + } + String type = logOperationDTO.getType(); + if (!CharSequenceUtil.isBlank(type)) { + query.addCriteria(Criteria.where("type").is(type)); + } + ConsumerDO consumerDO = userService.getUserInfoByUsername(userLoginHolder.getUsername()); + if ((consumerDO.getCreator() == null || !consumerDO.getCreator()) && LogOperation.Type.OPERATION_FILE.name().equals(logOperationDTO.getType())) { + query.addCriteria(Criteria.where("fileUserId").is(userLoginHolder.getUserId())); + } + Long startTime = logOperationDTO.getStartTime(); + Long endTime = logOperationDTO.getEndTime(); + if (startTime != null && endTime != null) { + LocalDateTime s = TimeUntils.getLocalDateTime(startTime); + LocalDateTime e = TimeUntils.getLocalDateTime(endTime); + query.addCriteria(Criteria.where(Constants.CREATE_TIME).gte(s).lte(e)); + } + return query; + } + + /*** + * 设置排序 + */ + private void setSort(LogOperationDTO logOperationDTO, Query query) { + String sortableProp = logOperationDTO.getSortProp(); + String order = logOperationDTO.getSortOrder(); + if (CharSequenceUtil.isBlank(sortableProp) || CharSequenceUtil.isBlank(order)) { + query.with(Sort.by(Sort.Direction.DESC, Constants.CREATE_TIME)); + return; + } + Sort.Direction direction = Sort.Direction.ASC; + if ("descending".equals(order)) { + direction = Sort.Direction.DESC; + } + query.with(Sort.by(direction, sortableProp)); + } + + /*** + * 设置分页条件 + */ + public void setPage(LogOperationDTO logOperationDTO, Query query) { + Integer pageSize = logOperationDTO.getPageSize(); + Integer pageIndex = logOperationDTO.getPage(); + CommonFileService.setPage(pageSize, pageIndex, query); + } + + /*** + * 获取url的访问次数 + * @param url url + * @return 访问次数 + */ + public long getVisitsByUrl(String url) { + Query query = new Query(); + query.addCriteria(Criteria.where("url").is(url)); + return mongoTemplate.count(query, LogOperation.class); + } +} diff --git a/src/main/java/com/jmal/clouddisk/service/impl/MarkdownServiceImpl.java b/src/main/java/com/jmal/clouddisk/service/impl/MarkdownServiceImpl.java new file mode 100644 index 0000000..56d50c7 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/service/impl/MarkdownServiceImpl.java @@ -0,0 +1,765 @@ +package com.jmal.clouddisk.service.impl; + +import cn.hutool.core.convert.Convert; +import cn.hutool.core.date.LocalDateTimeUtil; +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.io.file.PathUtil; +import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.core.util.ReUtil; +import cn.hutool.core.util.StrUtil; +import cn.hutool.http.HttpException; +import cn.hutool.http.HttpRequest; +import cn.hutool.http.HttpResponse; +import com.alibaba.fastjson.JSON; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.exception.CommonException; +import com.jmal.clouddisk.exception.Either; +import com.jmal.clouddisk.exception.ExceptionType; +import com.jmal.clouddisk.lucene.LuceneService; +import com.jmal.clouddisk.model.*; +import com.jmal.clouddisk.model.rbac.ConsumerDO; +import com.jmal.clouddisk.service.*; +import com.jmal.clouddisk.util.*; +import com.mongodb.client.AggregateIterable; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.bson.Document; +import org.bson.conversions.Bson; +import org.jetbrains.annotations.NotNull; +import org.springframework.beans.BeanUtils; +import org.springframework.data.domain.Sort; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.data.mongodb.core.query.Update; +import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; + +import javax.imageio.ImageIO; +import java.awt.image.BufferedImage; +import java.io.File; +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.time.LocalDateTime; +import java.util.*; + +import static com.mongodb.client.model.Aggregates.limit; +import static com.mongodb.client.model.Aggregates.skip; + +/** + * @author jmal + * @Description 文档管理 + * @Date 2020/12/11 4:35 下午 + */ +@Service +@Slf4j +@RequiredArgsConstructor +public class MarkdownServiceImpl implements IMarkdownService { + + private final MongoTemplate mongoTemplate; + + private final IUserService userService; + + private final FileProperties fileProperties; + + private final CategoryService categoryService; + + private final SettingService settingService; + + private final TagService tagService; + + private final CommonFileService commonFileService; + + private final IFileService fileService; + + private final IFileVersionService fileVersionService; + + private final LuceneService luceneService; + + private final LogService logService; + private final UserLoginHolder userLoginHolder; + + + @Override + public ResponseResult getMarkDownOne(ArticleDTO articleDTO) { + String mark = articleDTO.getMark(); + if (CharSequenceUtil.isBlank(mark)) { + return ResultUtil.success(new FileDocument()); + } + FileDocument fileDocument = mongoTemplate.findById(mark, FileDocument.class, CommonFileService.COLLECTION_NAME); + if (fileDocument != null) { + String username = userService.userInfoById(fileDocument.getUserId()).getUsername(); + fileDocument.setUsername(username); + String currentDirectory = commonFileService.getUserDirectory(fileDocument.getPath()); + // 修改为公共目录,不再按用户分离 + File file = Paths.get(fileProperties.getRootDir(), currentDirectory, fileDocument.getName()).toFile(); + String content = FileUtil.readString(file, MyFileUtils.getFileCharset(file)); + fileDocument.setContentText(content); + } + return ResultUtil.success(fileDocument); + } + + @Override + public Page> getArticles(Integer page, Integer pageSize) { + ArticleDTO articleDTO = new ArticleDTO(); + articleDTO.setPageIndex(page); + articleDTO.setPageSize(pageSize); + return getArticles(articleDTO); + } + + @Override + public Urlset getSitemapXml() { + String siteUrl = getSiteUrl(); + List fileDocumentList = getArticlesUrl(); + Urlset urlset = new Urlset(); + List urlList = new ArrayList<>(); + fileDocumentList.forEach(fileDocument -> { + Urlset.Url url = new Urlset.Url(); + String prefix = "/s/"; + if (fileDocument.getAlonePage() != null && fileDocument.getAlonePage()) { + prefix = "/o/"; + } + String slug = fileDocument.getSlug(); + if (CharSequenceUtil.isBlank(slug)) { + slug = fileDocument.getId(); + } + url.setLoc(siteUrl + prefix + slug); + url.setLastmod(LocalDateTimeUtil.format(fileDocument.getUpdateDate(), "yyyy-MM-dd")); + urlList.add(url); + }); + urlset.setUrl(urlList); + return urlset; + } + + @Override + public String getSitemapTxt() { + String siteUrl = getSiteUrl(); + List fileDocumentList = getArticlesUrl(); + StringBuilder stringBuilder = new StringBuilder(); + fileDocumentList.forEach(fileDocument -> { + stringBuilder.append(siteUrl); + if (fileDocument.getAlonePage() != null && fileDocument.getAlonePage()) { + stringBuilder.append("/o/"); + } else { + stringBuilder.append("/s/"); + } + String slug = fileDocument.getSlug(); + if (CharSequenceUtil.isBlank(slug)) { + stringBuilder.append(fileDocument.getId()); + } else { + stringBuilder.append(slug); + } + stringBuilder.append("\r\n"); + }); + return stringBuilder.toString(); + } + + private String getSiteUrl() { + String siteUrl = settingService.getWebsiteSetting().getSiteUrl(); + if (siteUrl.endsWith("/")) { + siteUrl = siteUrl.substring(0, siteUrl.length() - 1); + } + return siteUrl; + } + + private List getArticlesUrl() { + Query query = new Query(); + // 查询条件 + query.skip(0).limit(5000); + query.addCriteria(Criteria.where(Constants.SUFFIX).is("md")); + query.addCriteria(Criteria.where(Constants.RELEASE).is(true)); + return mongoTemplate.find(query, FileDocument.class, CommonFileService.COLLECTION_NAME); + } + + @Override + public List getAlonePages() { + ArticleDTO articleDTO = new ArticleDTO(); + articleDTO.setIsAlonePage(true); + return getMarkdownList(articleDTO).getData(); + } + + private Page> getArticles(ArticleDTO articleDTO) { + articleDTO.setIsRelease(true); + ResponseResult> responseResult = getMarkdownList(articleDTO); + Page> pageResult = new Page<>(articleDTO.getPageIndex() - 1, articleDTO.getPageSize(), Convert.toInt(responseResult.getCount())); + pageResult.setData(responseResult.getData()); + return pageResult; + } + + @Override + public Page> getArticlesByCategoryId(Integer page, Integer pageSize, String categoryId) { + ArticleDTO articleDTO = new ArticleDTO(); + articleDTO.setPageIndex(page); + articleDTO.setPageSize(pageSize); + if (!CharSequenceUtil.isBlank(categoryId)) { + articleDTO.setCategoryIds(new String[]{categoryId}); + } + return getArticles(articleDTO); + } + + @Override + public Page> getArticlesByTagId(int page, int pageSize, String tagId) { + ArticleDTO articleDTO = new ArticleDTO(); + articleDTO.setPageIndex(page); + articleDTO.setPageSize(pageSize); + if (!CharSequenceUtil.isBlank(tagId)) { + articleDTO.setTagIds(new String[]{tagId}); + } + return getArticles(articleDTO); + } + + @Override + public Page> getArticlesByKeyword(int page, int pageSize, String keyword) { + ArticleDTO articleDTO = new ArticleDTO(); + articleDTO.setPageIndex(page); + articleDTO.setPageSize(pageSize); + articleDTO.setKeyword(keyword); + return getArticles(articleDTO); + } + + @Override + public Page> getArticlesByAuthor(int page, int pageSize, String userId) { + ArticleDTO articleDTO = new ArticleDTO(); + articleDTO.setPageIndex(page); + articleDTO.setPageSize(pageSize); + articleDTO.setUserId(userId); + return getArticles(articleDTO); + } + + @Override + public Page getArchives(Integer page, Integer pageSize) { + boolean pagination = false; + int skip = 0; + int limit = 10; + if (page != null && pageSize != null) { + skip = (page - 1) * pageSize; + limit = pageSize; + pagination = true; + } + Query query = new Query(); + query.addCriteria(Criteria.where(Constants.RELEASE).is(true)); + long count = mongoTemplate.count(query, CommonFileService.COLLECTION_NAME); + List list = new ArrayList<>(Arrays.asList(new Document("$match", + new Document(Constants.RELEASE, true) + .append(Constants.ALONE_PAGE, + new Document("$exists", false))), + new Document("$sort", + new Document(Constants.UPLOAD_DATE, -1L)), + new Document("$project", + new Document("date", "$uploadDate") + .append("day", + new Document("$dateToString", + new Document("format", "%Y-%m") + .append("date", "$uploadDate"))) + .append("name", 1L) + .append("slug", 1L)))); + if (pagination) { + list.add(skip(skip)); + list.add(limit(limit)); + } + Map> resultMap = new LinkedHashMap<>(); + AggregateIterable aggregateIterable = mongoTemplate.getCollection(CommonFileService.COLLECTION_NAME).aggregate(list); + for (Document doc : aggregateIterable) { + String day = doc.getString("day"); + List aList; + if (resultMap.containsKey(day)) { + aList = resultMap.get(day); + } else { + aList = new ArrayList<>(); + } + ArchivesVO archivesVO = new ArchivesVO(); + String name = doc.getString("name"); + archivesVO.setName(name.substring(0, name.length() - 3)); + Date time = doc.get("date", Date.class); + archivesVO.setDate(time); + archivesVO.setId(doc.getObjectId("_id").toHexString()); + archivesVO.setSlug(doc.getString("slug")); + aList.add(archivesVO); + resultMap.put(day, aList); + } + if (page == null) { + page = 1; + } + if (pageSize == null) { + pageSize = 10; + } + Page pageResult; + if (pagination) { + pageResult = new Page<>(page - 1, pageSize, Convert.toInt(count)); + } else { + pageResult = new Page<>(Convert.toInt(count)); + } + pageResult.setData(resultMap.values()); + return pageResult; + } + + @Override + public ArticleVO getMarkDownContentBySlug(String slug) { + FileDocument fileDocument; + if (CharSequenceUtil.isBlank(slug)) { + return null; + } + Query query = new Query(); + query.addCriteria(Criteria.where("slug").is(slug)); + fileDocument = mongoTemplate.findOne(query, FileDocument.class, CommonFileService.COLLECTION_NAME); + if (fileDocument == null) { + fileDocument = mongoTemplate.findById(slug, FileDocument.class, CommonFileService.COLLECTION_NAME); + } + if (fileDocument == null) { + return null; + } + String username = userService.userInfoById(fileDocument.getUserId()).getShowName(); + fileDocument.setUsername(username); + String filename = fileDocument.getName(); + fileDocument.setName(filename.substring(0, filename.length() - fileDocument.getSuffix().length() - 1)); + ArticleVO articleVO = new ArticleVO(); + BeanUtils.copyProperties(fileDocument, articleVO); + setOtherProperties(articleVO); + return articleVO; + } + + private void setOtherProperties(MarkdownBaseFile markdownBaseFile) { + if (markdownBaseFile.getCategoryIds() != null) { + List categories = categoryService.getCategoryListByIds(markdownBaseFile.getCategoryIds()); + markdownBaseFile.setCategories(categories); + } + if (markdownBaseFile.getTagIds() != null) { + List tags = tagService.getTagListByIds(markdownBaseFile.getTagIds()); + markdownBaseFile.setTags(tags); + } + } + + @Override + public ResponseResult sortMarkdown(List fileIdList) { + List list = new ArrayList<>(); + for (int i = 0; i < fileIdList.size(); i++) { + FileDocument fileDocument = new FileDocument(); + fileDocument.setPageSort(i); + fileDocument.setId(fileIdList.get(i)); + list.add(fileDocument); + } + list.parallelStream().forEach(doc -> { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(doc.getId())); + Update update = new Update(); + update.set("pageSort", doc.getPageSort()); + mongoTemplate.updateFirst(query, update, CommonFileService.COLLECTION_NAME); + }); + return ResultUtil.success(); + } + + /*** + * 文档列表 + * @return List + */ + @Override + public ResponseResult> getMarkdownList(ArticleDTO articleDTO) { + int skip = 0; + int limit = 0; + long count = 0; + Integer pageIndex = articleDTO.getPageIndex(); + Integer pageSize = articleDTO.getPageSize(); + if (pageIndex != null && pageSize != null) { + skip = (pageIndex - 1) * pageSize; + limit = pageSize; + } + Query query = new Query(); + // 查询条件 + boolean isDraft; + isDraft = setProperty(articleDTO, query); + if (limit > 0) { + count = mongoTemplate.count(query, CommonFileService.COLLECTION_NAME); + } + // 排序 + if (!CharSequenceUtil.isBlank(articleDTO.getSortableProp()) && !CharSequenceUtil.isBlank(articleDTO.getOrder())) { + if ("descending".equals(articleDTO.getOrder())) { + query.with(Sort.by(Sort.Direction.DESC, articleDTO.getSortableProp())); + } else { + query.with(Sort.by(Sort.Direction.ASC, articleDTO.getSortableProp())); + } + } else { + query.with(Sort.by(Sort.Direction.DESC, Constants.UPLOAD_DATE)); + } + query.skip(skip); + if (limit > 0) { + query.limit(limit); + } + List fileDocumentList = mongoTemplate.find(query, FileDocument.class, CommonFileService.COLLECTION_NAME); + List markdownVOList; + boolean finalIsDraft = isDraft; + markdownVOList = fileDocumentList.parallelStream().map(Either.wrap(fileDocument -> getMarkdownVO(fileDocument, finalIsDraft))).toList(); + ResponseResult> result = ResultUtil.success(markdownVOList); + result.setCount(count); + return result; + } + + private static boolean setProperty(ArticleDTO articleDTO, Query query) { + boolean isDraft = false; + query.addCriteria(Criteria.where(Constants.SUFFIX).is("md")); + query.addCriteria(Criteria.where("path").regex("^" + ReUtil.escape("/Document/"))); + if (!CharSequenceUtil.isBlank(articleDTO.getUserId())) { + query.addCriteria(Criteria.where(IUserService.USER_ID).is(articleDTO.getUserId())); + } + if (articleDTO.getIsRelease() != null && articleDTO.getIsRelease()) { + query.addCriteria(Criteria.where(Constants.RELEASE).is(true)); + } + if (articleDTO.getIsAlonePage() != null && articleDTO.getIsAlonePage()) { + query.addCriteria(Criteria.where(Constants.ALONE_PAGE).exists(true)); + query.with(Sort.by(Sort.Direction.ASC, "pageSort")); + } else { + query.addCriteria(Criteria.where(Constants.ALONE_PAGE).exists(false)); + } + if (articleDTO.getIsDraft() != null && articleDTO.getIsDraft()) { + isDraft = true; + query.addCriteria(Criteria.where(Constants.DRAFT).exists(true)); + } + if (articleDTO.getCategoryIds() != null && articleDTO.getCategoryIds().length > 0) { + query.addCriteria(Criteria.where("categoryIds").in((Object[]) articleDTO.getCategoryIds())); + } + if (articleDTO.getTagIds() != null && articleDTO.getTagIds().length > 0) { + query.addCriteria(Criteria.where(Constants.TAG_IDS).in((Object[]) articleDTO.getTagIds())); + } + if (!CharSequenceUtil.isBlank(articleDTO.getKeyword())) { + query.addCriteria(Criteria.where("contentText").regex(articleDTO.getKeyword(), "i")); + } + return isDraft; + } + + private MarkdownVO getMarkdownVO(FileDocument fileDocument, boolean isDraft) { + MarkdownVO markdownVO = new MarkdownVO(); + if (isDraft) { + markdownVO = JSON.parseObject(fileDocument.getDraft(), MarkdownVO.class); + markdownVO.setId(fileDocument.getId()); + } else { + BeanUtils.copyProperties(getFileDocument(fileDocument), markdownVO); + } + if (!CharSequenceUtil.isBlank(fileDocument.getDraft())) { + markdownVO.setDraft(true); + } + setOtherProperties(markdownVO); + String username = userService.userInfoById(fileDocument.getUserId()).getShowName(); + markdownVO.setUsername(username); + return markdownVO; + } + + /*** + * 修改fileDocument + * 去掉文件名后缀 + * 添加用户头像 + * @param fileDocument FileDocument + */ + private FileDocument getFileDocument(FileDocument fileDocument) { + ConsumerDO user = userService.userInfoById(fileDocument.getUserId()); + String avatar = user.getAvatar(); + fileDocument.setUsername(user.getUsername()); + fileDocument.setContentText(null); + String filename = fileDocument.getName(); + fileDocument.setName(filename.substring(0, filename.length() - fileDocument.getSuffix().length() - 1)); + fileDocument.setAvatar(avatar); + return fileDocument; + } + + @Override + public ResponseResult editMarkdown(ArticleParamDTO upload) { + // 参数判断 + Query query1 = new Query(); + query1.addCriteria(Criteria.where("_id").nin(upload.getFileId())); + query1.addCriteria(Criteria.where("name").is(upload.getFilename())); + if (mongoTemplate.exists(query1, CommonFileService.COLLECTION_NAME)) { + return ResultUtil.warning("该标题已存在"); + } + boolean isDraft = false; + boolean isUpdate = false; + LocalDateTime nowDate = LocalDateTime.now(TimeUntils.ZONE_ID); + LocalDateTime uploadDate = nowDate; + if (upload.getUploadDate() != null) { + uploadDate = upload.getUploadDate(); + } + FileDocument fileDocument = new FileDocument(); + Query query = new Query(); + if (upload.getFileId() != null) { + // 修改 + isUpdate = true; + query.addCriteria(Criteria.where("_id").is(upload.getFileId())); + fileDocument = mongoTemplate.findById(upload.getFileId(), FileDocument.class, CommonFileService.COLLECTION_NAME); + if (fileDocument == null) { + return ResultUtil.warning("该文档不存在"); + } + if (CommonFileService.isLock(fileDocument)) { + throw new CommonException(ExceptionType.LOCKED_RESOURCES); + } + } + String filename = upload.getFilename(); + // 同步文档文件 + String currentDirectory = syncDocFile(upload, uploadDate, fileDocument, filename); + fileDocument.setSuffix(MyFileUtils.extName(filename)); + fileDocument.setUserId(upload.getUserId()); + fileDocument.setUpdateDate(nowDate); + fileDocument.setPath(currentDirectory); + fileDocument.setSize(upload.getContentText().length()); + fileDocument.setContentType(Constants.CONTENT_TYPE_MARK_DOWN); + fileDocument.setMd5(CalcMd5.getMd5(filename + upload.getContentText())); + fileDocument.setUploadDate(uploadDate); + fileDocument.setName(filename); + fileDocument.setCover(upload.getCover()); + fileDocument.setSlug(getSlug(upload)); + fileDocument.setCategoryIds(upload.getCategoryIds()); + fileDocument.setTagIds(tagService.getTagIdsByNames(upload.getTagNames())); + fileDocument.setIsFolder(false); + Update update = getUpdate(upload, isDraft, isUpdate, fileDocument); + String fileId = upload.getFileId(); + if (!isUpdate) { + FileDocument saved = mongoTemplate.save(fileDocument, CommonFileService.COLLECTION_NAME); + upload.setFileId(saved.getId()); + query.addCriteria(Criteria.where("_id").is(saved.getId())); + fileId = saved.getId(); + } + mongoTemplate.upsert(query, update, CommonFileService.COLLECTION_NAME); + luceneService.pushCreateIndexQueue(fileId); + return ResultUtil.success(upload.getFileId()); + } + + @NotNull + private static Update getUpdate(ArticleParamDTO upload, boolean isDraft, boolean isUpdate, FileDocument fileDocument) { + if (upload.getIsAlonePage() != null && upload.getIsAlonePage()) { + fileDocument.setAlonePage(true); + } + if (upload.getPageSort() != null) { + fileDocument.setPageSort(upload.getPageSort()); + } + if (Boolean.TRUE.equals(upload.getIsDraft())) { + isDraft = true; + } else { + fileDocument.setRelease(true); + fileDocument.setContentText(upload.getContentText()); + fileDocument.setHtml(upload.getHtml()); + } + if (!isDraft) { + fileDocument.setDraft(null); + } + Update update = MongoUtil.getUpdate(fileDocument); + if (isDraft) { + // 保存草稿 + if (isUpdate && !StrUtil.isBlankIfStr(upload.getIsRelease())) { + update = new Update(); + } + fileDocument.setContentText(upload.getContentText()); + fileDocument.setDraft(null); + update.set(Constants.DRAFT, JSON.toJSONStringWithDateFormat(fileDocument, "yyyy-MM-dd HH:mm:ss")); + } else { + if (upload.getFileId() != null) { + update.unset(Constants.DRAFT); + } + } + return update; + } + + /*** + * 同步文档文件 + * @param upload ArticleParamDTO + * @param uploadDate 发布日期 + * @param fileDocument FileDocument + * @param filename filename + * @return currentDirectory + */ + private String syncDocFile(ArticleParamDTO upload, LocalDateTime uploadDate, FileDocument fileDocument, String filename) { + String currentDirectory; + if (!CharSequenceUtil.isBlank(upload.getCurrentDirectory())) { + currentDirectory = commonFileService.getUserDirectory(upload.getCurrentDirectory()); + } else { + Path docPaths = Paths.get(fileProperties.getDocumentDir(), TimeUntils.getFileTimeStrOfMonth(uploadDate)); + // docImagePaths 不存在则新建 + commonFileService.upsertFolder(docPaths, upload.getUsername(), upload.getUserId()); + currentDirectory = commonFileService.getUserDirectory(docPaths.toString()); + } + // 文档为草稿时,文件名使用草稿的文件名 + if (!StrUtil.isBlankIfStr(upload.getIsDraft()) && upload.getIsDraft() && !CharSequenceUtil.isBlank(fileDocument.getName())) { + filename = fileDocument.getName(); + } + File file = Paths.get(fileProperties.getRootDir(), upload.getUsername(), currentDirectory, filename).toFile(); + FileUtil.writeString(upload.getContentText(), file, StandardCharsets.UTF_8); + // 当有文件名或文件路径改变的话则把历史文件删掉 + // 文件名是否改变 + boolean isChangeFileName = !CharSequenceUtil.isBlank(fileDocument.getName()) && !filename.equals(fileDocument.getName()); + // 文件路径是否改变 + boolean isChangePath = !CharSequenceUtil.isBlank(fileDocument.getPath()) && !currentDirectory.equals(fileDocument.getPath()); + if (isChangeFileName || isChangePath) { + Path oldPath = Paths.get(fileProperties.getRootDir(), upload.getUsername(), fileDocument.getPath(), fileDocument.getName()); + if (Files.exists(oldPath)) { + PathUtil.del(oldPath); + } + } + return currentDirectory; + } + + @Override + public ResponseResult deleteDraft(String fileId, String username) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(fileId)); + FileDocument fileDocument = mongoTemplate.findOne(query, FileDocument.class, CommonFileService.COLLECTION_NAME); + if (fileDocument == null || fileDocument.getDraft() == null) { + return ResultUtil.success(); + } + FileDocument draft = JSON.parseObject(fileDocument.getDraft(), FileDocument.class); + File draftFile = Paths.get(fileProperties.getRootDir(), username, draft.getPath(), draft.getName()).toFile(); + FileUtil.del(draftFile); + + File file = Paths.get(fileProperties.getRootDir(), username, fileDocument.getPath(), fileDocument.getName()).toFile(); + FileUtil.writeString(fileDocument.getContentText(), file, StandardCharsets.UTF_8); + Update update = new Update(); + update.unset(Constants.DRAFT); + mongoTemplate.upsert(query, update, CommonFileService.COLLECTION_NAME); + return ResultUtil.success(); + } + + private String getSlug(ArticleParamDTO upload) { + Query query = new Query(); + String slug = upload.getSlug(); + if (CharSequenceUtil.isBlank(slug)) { + return upload.getFilename(); + } + String fileId = upload.getFileId(); + if (fileId != null) { + query.addCriteria(Criteria.where("_id").nin(fileId)); + } + query.addCriteria(Criteria.where("slug").is(slug)); + if (mongoTemplate.exists(query, CommonFileService.COLLECTION_NAME)) { + return slug + "-1"; + } + return slug; + } + + @Override + public ResponseResult editTextByPath(UploadApiParamDTO upload) { + File file = new File(Paths.get(fileProperties.getRootDir(), upload.getUsername(), upload.getRelativePath()).toString()); + if (!file.exists()) { + throw new CommonException(ExceptionType.FILE_NOT_FIND); + } + if (CommonFileService.isLock(file, fileProperties.getRootDir(), upload.getUsername())) { + throw new CommonException(ExceptionType.LOCKED_RESOURCES); + } + String userId = upload.getUserId(); + commonFileService.checkPermissionUserId(userId, upload.getOperationPermissionList(), OperationPermission.PUT); + FileUtil.writeString(upload.getContentText(), file, StandardCharsets.UTF_8); + // 文件操作日志 + logService.asyncAddLogFileOperation(upload.getUsername(), upload.getRelativePath(), "修改文件"); + // 修改文件之后保存历史版本 + fileVersionService.asyncSaveFileVersion(upload.getUsername(), file, userLoginHolder.getUsername()); + return ResultUtil.success(); + } + + @Override + public ResponseResult uploadMarkdownImage(UploadImageDTO upload) throws CommonException { + List> list = new ArrayList<>(); + MultipartFile[] multipartFiles = upload.getFiles(); + if (multipartFiles != null) { + for (MultipartFile multipartFile : multipartFiles) { + list.add(uploadImage(upload, multipartFile)); + } + } + return ResultUtil.success(list); + } + + @Override + public ResponseResult uploadMarkdownLinkImage(UploadImageDTO upload) { + if (CharSequenceUtil.isBlank(upload.getUrl())) { + return ResultUtil.warning("url不能为空"); + } + Map map = new HashMap<>(2); + String username = upload.getUsername(); + String userId = upload.getUserId(); + Path docImagePaths = getDocImagePaths(upload); + // docImagePaths 不存在则新建 + commonFileService.upsertFolder(docImagePaths, username, userId); + File newFile; + try (HttpResponse response = HttpRequest.get(upload.getUrl()).setFollowRedirects(true).executeAsync()) { + if (!response.isOk()) { + throw new HttpException("Server response error with status code: [{}]", response.getStatus()); + } + File destFile = Paths.get(fileProperties.getRootDir(), username, docImagePaths.toString()).toFile(); + final File outFile = response.completeFileNameFromHeader(destFile); + if (!outFile.getName().endsWith(Constants.POINT_SUFFIX_WEBP)) { + newFile = new File(outFile.getPath() + Constants.POINT_SUFFIX_WEBP); + } else { + newFile = new File(outFile.getPath()); + } + BufferedImage image = ImageIO.read(response.bodyStream()); + commonFileService.imageFileToWebp(newFile, image); + } catch (IOException e) { + log.error(e.getMessage(), e); + throw new CommonException(2, "上传失败"); + } + String fileId = commonFileService.createFile(username, newFile, userId, true); + map.put(Constants.FILE_ID, fileId); + String filepath = org.apache.catalina.util.URLEncoder.DEFAULT.encode("/file/" + Paths.get(username, docImagePaths.toString(), newFile.getName()), StandardCharsets.UTF_8); + map.put("url", filepath); + map.put("originalURL", upload.getUrl()); + map.put(Constants.FILENAME, newFile.getName()); + map.put(Constants.FILE_PATH, filepath); + return ResultUtil.success(map); + } + + /*** + * 上传成功后返回文件名和路径 + * @param upload UploadImageDTO + * @param multipartFile MultipartFile + * @return + * { + * "filename1": "filepath1", + * "filename2": "filepath2" + * } + */ + private Map uploadImage(UploadImageDTO upload, MultipartFile multipartFile) { + Map map = new HashMap<>(2); + String fileName = TimeUntils.getFileTimeStrOfDay() + multipartFile.getOriginalFilename(); + + Path docImagePaths = getDocImagePaths(upload); + + String username = upload.getUsername(); + String userId = upload.getUserId(); + // docImagePaths 不存在则新建 + commonFileService.upsertFolder(docImagePaths, username, userId); + File newFile; + try { + if (userService.getDisabledWebp(userId) || ("ico".equals(FileUtil.getSuffix(fileName)))) { + newFile = Paths.get(fileProperties.getRootDir(), username, docImagePaths.toString(), fileName).toFile(); + FileUtil.writeFromStream(multipartFile.getInputStream(), newFile); + } else { + if (!fileName.endsWith(Constants.POINT_SUFFIX_WEBP)) { + fileName = fileName + Constants.POINT_SUFFIX_WEBP; + } + newFile = Paths.get(fileProperties.getRootDir(), username, docImagePaths.toString(), fileName).toFile(); + BufferedImage image = ImageIO.read(multipartFile.getInputStream()); + commonFileService.imageFileToWebp(newFile, image); + } + } catch (IOException e) { + throw new CommonException(2, "上传失败"); + } + String fileId = commonFileService.createFile(username, newFile, userId, true); + map.put(Constants.FILE_ID, fileId); + String filepath = org.apache.catalina.util.URLEncoder.DEFAULT.encode("/file/" + Paths.get(username, docImagePaths.toString(), fileName), StandardCharsets.UTF_8); + map.put(Constants.FILENAME, fileName); + map.put(Constants.FILE_PATH, filepath); + return map; + } + + @NotNull + private Path getDocImagePaths(UploadImageDTO upload) { + Path docImagePaths; + String markdownFileId = upload.getFileId(); + if (CharSequenceUtil.isNotBlank(markdownFileId) && !"undefined".equals(markdownFileId)) { + FileDocument fileDocument = fileService.getById(markdownFileId); + if (fileDocument == null) { + throw new CommonException(ExceptionType.FILE_NOT_FIND); + } + docImagePaths = Paths.get(fileDocument.getPath()); + } else { + docImagePaths = Paths.get(fileProperties.getDocumentImgDir(), TimeUntils.getFileTimeStrOfMonth()); + } + return docImagePaths; + } + +} diff --git a/src/main/java/com/jmal/clouddisk/service/impl/MenuService.java b/src/main/java/com/jmal/clouddisk/service/impl/MenuService.java new file mode 100644 index 0000000..2dd3f59 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/service/impl/MenuService.java @@ -0,0 +1,297 @@ +package com.jmal.clouddisk.service.impl; + +import cn.hutool.core.date.TimeInterval; +import cn.hutool.core.io.IoUtil; +import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.core.thread.ThreadUtil; +import com.alibaba.fastjson2.JSON; +import com.jmal.clouddisk.model.query.QueryMenuDTO; +import com.jmal.clouddisk.model.rbac.MenuDO; +import com.jmal.clouddisk.model.rbac.MenuDTO; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.util.*; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.i18n.LocaleContextHolder; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.data.mongodb.core.query.Update; +import org.springframework.stereotype.Service; + +import java.io.InputStream; +import java.nio.charset.StandardCharsets; +import java.time.LocalDateTime; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; +import java.util.Locale; + +/** + * @Description 菜单管理 + * @blame jmal + * @Date 2021/1/7 7:45 下午 + */ +@Service +@Slf4j +public class MenuService { + + public static final String COLLECTION_NAME = "menu"; + + @Autowired + private RoleService roleService; + + @Autowired + private IUserService userService; + + @Autowired + private MongoTemplate mongoTemplate; + + @Autowired + private MessageUtil messageUtil; + + /*** + * 菜单树 + * @param queryDTO QueryMenuDTO + * @return 菜单数列表 + */ + public List tree(QueryMenuDTO queryDTO) { + Query query = new Query(); + if(!CharSequenceUtil.isBlank(queryDTO.getName())){ + query.addCriteria(Criteria.where("name").regex(queryDTO.getName(), "i")); + } + List menuIdList = null; + if(!CharSequenceUtil.isBlank(queryDTO.getUserId())){ + menuIdList = userService.getMenuIdList(queryDTO.getUserId()); + } + if(!CharSequenceUtil.isBlank(queryDTO.getRoleId())) { + if(menuIdList != null){ + menuIdList.addAll(roleService.getMenuIdList(queryDTO.getRoleId())); + } else { + menuIdList = roleService.getMenuIdList(queryDTO.getRoleId()); + } + } + if(menuIdList != null){ + query.addCriteria(Criteria.where("_id").in(menuIdList)); + } + if(!CharSequenceUtil.isBlank(queryDTO.getPath())){ + query.addCriteria(Criteria.where("path").regex(queryDTO.getPath(), "i")); + query.addCriteria(Criteria.where("component").regex(queryDTO.getPath(), "i")); + } + List menuDOList = mongoTemplate.find(query, MenuDO.class, COLLECTION_NAME); + Locale locale = LocaleContextHolder.getLocale(); + List menuDTOList = menuDOList.parallelStream().map(menuDO -> { + MenuDTO menuDTO = new MenuDTO(); + BeanUtils.copyProperties(menuDO, menuDTO); + menuDTO.setName(messageUtil.getMessage(menuDO.getName(), locale)); + return menuDTO; + }).toList(); + return getSubMenu(null, menuDTOList); + } + + /** + * 查找子菜单 + * + * @param parentId 父菜单id + * @param menuDTOList 菜单列表 + * @return 菜单列表 + */ + private List getSubMenu(String parentId, List menuDTOList) { + List menuDTOTreeList = new ArrayList<>(); + List menuList; + if (CharSequenceUtil.isBlank(parentId)) { + menuList = menuDTOList.stream().filter(menuDTO -> + CharSequenceUtil.isBlank(menuDTO.getParentId())).sorted().toList(); + } else { + menuList = menuDTOList.stream().filter(menuDTO -> parentId.equals(menuDTO.getParentId())).sorted().toList(); + } + menuList.forEach(subCategory -> { + List subList = getSubMenu(subCategory.getId(), menuDTOList); + if (!subList.isEmpty()) { + subCategory.setChildren(subList); + } + menuDTOTreeList.add(subCategory); + }); + return menuDTOTreeList; + } + + /*** + * 通过菜单Id获取菜单 + * @param menuId 菜单Id + * @return 一个菜单信息 + */ + public MenuDO getMenuInfo(String menuId) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(menuId)); + return mongoTemplate.findOne(query, MenuDO.class, COLLECTION_NAME); + } + + /*** + * 菜单名是否存在 + * @param name name + * @return boolean + */ + private boolean existsMenuName(String name){ + Query query = new Query(); + query.addCriteria(Criteria.where("name").is(name)); + return mongoTemplate.exists(query, COLLECTION_NAME); + } + + /*** + * 添加菜单 + * @param menuDTO menuDTO + * @return ResponseResult + */ + public ResponseResult add(MenuDTO menuDTO) { + if (existsMenuName(menuDTO.getName())) { + return ResultUtil.warning("该菜单名称已存在"); + } + if (!CharSequenceUtil.isBlank(menuDTO.getParentId())) { + MenuDO menuDO = getMenuInfo(menuDTO.getParentId()); + if (menuDO == null) { + return ResultUtil.warning("该父分级菜单不存在"); + } + } + MenuDO menuDO = new MenuDO(); + BeanUtils.copyProperties(menuDTO, menuDO); + menuDO.setId(null); + LocalDateTime dateNow = LocalDateTime.now(TimeUntils.ZONE_ID); + menuDO.setCreateTime(dateNow); + menuDO.setUpdateTime(dateNow); + mongoTemplate.save(menuDO, COLLECTION_NAME); + return ResultUtil.success(); + } + + /*** + * 更新菜单 + * @param menuDTO menuDTO + * @return ResponseResult + */ + public ResponseResult update(MenuDTO menuDTO) { + if (getMenuInfo(menuDTO.getId()) == null) { + return ResultUtil.warning("该菜单不存在"); + } + Query query1 = new Query(); + query1.addCriteria(Criteria.where("_id").nin(menuDTO.getId())); + query1.addCriteria(Criteria.where("name").is(menuDTO.getName())); + if(mongoTemplate.exists(query1, COLLECTION_NAME)){ + return ResultUtil.warning("该菜单名称已存在"); + } + MenuDO menuDO = new MenuDO(); + BeanUtils.copyProperties(menuDTO, menuDO); + menuDO.setUpdateTime(LocalDateTime.now(TimeUntils.ZONE_ID)); + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(menuDTO.getId())); + Update update = MongoUtil.getUpdate(menuDO); + mongoTemplate.upsert(query, update, COLLECTION_NAME); + return ResultUtil.success(); + } + + /*** + * 删除菜单及其下的所有子菜单 + * @param menuIdList 菜单Id列表 + */ + public void delete(List menuIdList) { + List menuIds = findLoopMenu(true, menuIdList); + // 删除所有关联的菜单 + Query query = new Query(); + query.addCriteria(Criteria.where("_id").in(menuIds)); + mongoTemplate.remove(query, COLLECTION_NAME); + } + + /*** + * 递归查找菜单id及其子菜单id列表 + * @param firstFind 是否是第一次查找 + * @param menuIdList 菜单Id列表 + */ + private List findLoopMenu(boolean firstFind, List menuIdList) { + final List menuIds = new ArrayList<>(); + Query query = new Query(); + if (firstFind) { + query.addCriteria(Criteria.where("_id").in(menuIdList)); + } else { + query.addCriteria(Criteria.where("parentId").in(menuIdList)); + menuIds.addAll(menuIdList); + } + List menuIdList1 = mongoTemplate.find(query, MenuDO.class, COLLECTION_NAME).stream().map(MenuDO::getId).toList(); + if (!menuIdList1.isEmpty()) { + menuIds.addAll(findLoopMenu(false, menuIdList1)); + } + return menuIds; + } + + /*** + * 获取权限列表 + * @param menuIdList 菜单id列表 + * @return 权限列表 + */ + public List getAuthorities(List menuIdList) { + List authorities = new ArrayList<>(); + Query query = new Query(); + query.addCriteria(Criteria.where("_id").in(menuIdList)); + List menuDOList = mongoTemplate.find(query, MenuDO.class, COLLECTION_NAME); + menuDOList.forEach(menuDO -> { + if(!CharSequenceUtil.isBlank(menuDO.getAuthority())){ + authorities.add(menuDO.getAuthority()); + } + }); + return authorities; + } + + /*** + * 初始化菜单数据 + */ + public void initMenus() { + ThreadUtil.execute(() -> { + TimeInterval timeInterval = new TimeInterval(); + List menuDOList = getMenuDOListByConfigJSON(); + if (menuDOList.isEmpty()) return; + menuDOList.parallelStream().forEach(menuDO -> { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(menuDO.getId())); + boolean exists = mongoTemplate.exists(query, COLLECTION_NAME); + if (!exists) { + mongoTemplate.insert(menuDO); + } + }); + log.info("更新菜单, 耗时:{}ms", timeInterval.intervalMs()); + }); + } + + /** + * 从配置文件读取菜单数据 + */ + private static List getMenuDOListByConfigJSON() { + InputStream inputStream = Thread.currentThread().getContextClassLoader().getResourceAsStream("db/menu.json"); + if(inputStream == null){ + return Collections.emptyList(); + } + String json = new String(IoUtil.readBytes(inputStream), StandardCharsets.UTF_8); + return JSON.parseArray(json,MenuDO.class); + } + + /*** + * 获取所有菜单 + * @return List + */ + public List getAllMenus() { + return mongoTemplate.findAll(MenuDO.class, COLLECTION_NAME); + } + + /*** + * 获取所有菜单Id + * @return List + */ + public List getAllMenuIdList() { + List menuDOList = getAllMenus(); + return menuDOList.stream().map(MenuDO::getId).toList(); + } + + /*** + * 是否存在菜单 + */ + public boolean existsMenu(){ + return mongoTemplate.exists(new Query(), COLLECTION_NAME); + } +} diff --git a/src/main/java/com/jmal/clouddisk/service/impl/MultipartUpload.java b/src/main/java/com/jmal/clouddisk/service/impl/MultipartUpload.java new file mode 100644 index 0000000..50fc4ff --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/service/impl/MultipartUpload.java @@ -0,0 +1,328 @@ +package com.jmal.clouddisk.service.impl; + +import cn.hutool.core.convert.Convert; +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.io.file.PathUtil; +import com.github.benmanes.caffeine.cache.Cache; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.exception.CommonException; +import com.jmal.clouddisk.exception.ExceptionType; +import com.jmal.clouddisk.model.FileDocument; +import com.jmal.clouddisk.model.UploadApiParamDTO; +import com.jmal.clouddisk.model.UploadResponse; +import com.jmal.clouddisk.oss.web.WebOssService; +import com.jmal.clouddisk.util.CaffeineUtil; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; + +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; +import java.nio.ByteBuffer; +import java.nio.channels.FileChannel; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.List; +import java.util.concurrent.CopyOnWriteArrayList; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +/** + * @author jmal + * @Description 分片上传 + * @date 2023/4/7 17:20 + */ +@Service +@Slf4j +public class MultipartUpload { + + @Autowired + private FileProperties fileProperties; + + @Autowired + private CommonFileService commonFileService; + + @Autowired + private WebOssService webOssService; + + @Autowired + private LogService logService; + + /*** + * 断点恢复上传缓存(已上传的缓存) + */ + private static final Cache> resumeCache = CaffeineUtil.getResumeCache(); + /*** + * 上传大文件是需要分片上传,再合并 + * 已写入(合并)的分片缓存 + */ + private static final Cache> writtenCache = CaffeineUtil.getWrittenCache(); + /*** + * 未写入(合并)的分片缓存 + */ + private static final Cache> unWrittenCache = CaffeineUtil.getUnWrittenCacheCache(); + /*** + * 合并文件的写入锁缓存 + */ + private static final Cache chunkWriteLockCache = CaffeineUtil.getChunkWriteLockCache(); + + /** + * 上传分片文件 + * + * @param upload UploadApiParamDTO + * @param uploadResponse UploadResponse + * @param md5 md5 + * @param file MultipartFile + */ + public void uploadChunkFile(UploadApiParamDTO upload, UploadResponse uploadResponse, String md5, MultipartFile file) throws IOException { + // 多个分片 + // 落地保存文件 + // 这时保存的每个块, 块先存好, 后续会调合并接口, 将所有块合成一个大文件 + // 保存在用户的tmp目录下 + File chunkFile = Paths.get(fileProperties.getRootDir(), fileProperties.getChunkFileDir(), upload.getUsername(), md5, Convert.toStr(upload.getChunkNumber())).toFile(); + FileUtil.writeFromStream(file.getInputStream(), chunkFile); + setResumeCache(upload); + uploadResponse.setUpload(true); + // 追加分片 + appendChunkFile(upload); + // 检测是否已经上传完了所有分片,上传完了则需要合并 + if (checkIsNeedMerge(upload)) { + uploadResponse.setMerge(true); + } + } + + /** + * 合并文件 + * + * @param upload UploadApiParamDTO + */ + public UploadResponse mergeFile(UploadApiParamDTO upload) throws IOException { + UploadResponse uploadResponse = new UploadResponse(); + Path prePth = Paths.get(upload.getUsername(), upload.getCurrentDirectory(), upload.getFilename()); + String ossPath = CaffeineUtil.getOssPath(prePth); + if (ossPath != null) { + return webOssService.mergeFile(ossPath, prePth, upload); + } + + String md5 = upload.getIdentifier(); + Path file = Paths.get(fileProperties.getRootDir(), fileProperties.getChunkFileDir(), upload.getUsername(), upload.getFilename()); + Path outputFile = Paths.get(fileProperties.getRootDir(), upload.getUsername(), commonFileService.getUserDirectoryFilePath(upload)); + // 清除缓存 + resumeCache.invalidate(md5); + writtenCache.invalidate(md5); + unWrittenCache.invalidate(md5); + chunkWriteLockCache.invalidate(md5); + Path chunkDir = Paths.get(fileProperties.getRootDir(), fileProperties.getChunkFileDir(), upload.getUsername(), md5); + PathUtil.del(chunkDir); + if (!Files.exists(outputFile)) { + Files.createFile(outputFile); + } + PathUtil.move(file, outputFile, true); + + // 设置文件最后修改时间 + CommonFileService.setLastModifiedTime(outputFile, upload.getLastModified()); + uploadResponse.setUpload(true); + CaffeineUtil.setUploadFileCache(outputFile.toFile().getAbsolutePath()); + commonFileService.createFile(upload.getUsername(), outputFile.toFile(), null, null); + + // 文件操作日志 + logService.syncAddLogFileOperation(upload.getUsername(), commonFileService.getUserDirectoryFilePath(upload), "上传文件"); + + return uploadResponse; + } + + /*** + * 合并文件追加分片 + * @param upload UploadApiParamDTO + */ + private void appendChunkFile(UploadApiParamDTO upload) { + int chunkNumber = upload.getChunkNumber(); + String md5 = upload.getIdentifier(); + // 未写入的分片 + CopyOnWriteArrayList unWrittenChunks = unWrittenCache.get(md5, key -> new CopyOnWriteArrayList<>()); + if (unWrittenChunks != null && !unWrittenChunks.contains(chunkNumber)) { + unWrittenChunks.add(chunkNumber); + unWrittenCache.put(md5, unWrittenChunks); + } + // 已写入的分片 + CopyOnWriteArrayList writtenChunks = writtenCache.get(md5, key -> new CopyOnWriteArrayList<>()); + Path filePath = Paths.get(fileProperties.getRootDir(), fileProperties.getChunkFileDir(), upload.getUsername(), upload.getFilename()); + if (unWrittenChunks == null || writtenChunks == null) { + return; + } + Lock lock = chunkWriteLockCache.get(md5, key -> new ReentrantLock()); + if (lock != null) { + lock.lock(); + } + try { + if (Files.exists(filePath) && !writtenChunks.isEmpty()) { + // 继续追加 + unWrittenChunks.forEach(unWrittenChunk -> appendFile(upload, unWrittenChunks, writtenChunks)); + } else { + // 首次写入 + if (Files.exists(filePath)) { + Files.delete(filePath); + } + appendFile(upload, unWrittenChunks, writtenChunks); + } + } catch (Exception e) { + throw new CommonException(ExceptionType.FAIL_MERGE_FILE); + } finally { + if (lock != null) { + lock.unlock(); + } + } + } + + public UploadResponse checkChunk(UploadApiParamDTO upload) throws IOException { + + boolean checkExist = upload.getFilenames() != null && !upload.getFilenames().isEmpty(); + if (checkExist) { + for (String filename : upload.getFilenames()) { + Path prePth = Paths.get(upload.getUsername(), upload.getCurrentDirectory(), filename); + String ossPath = CaffeineUtil.getOssPath(prePth); + if (ossPath != null) { + return webOssService.checkExist(ossPath, prePth); + } + } + } else { + Path prePth = Paths.get(upload.getUsername(), upload.getCurrentDirectory(), upload.getFilename()); + String ossPath = CaffeineUtil.getOssPath(prePth); + if (ossPath != null) { + return webOssService.checkChunk(ossPath, prePth, upload); + } + } + UploadResponse uploadResponse = new UploadResponse(); + + String path = commonFileService.getUserDirectory(upload.getCurrentDirectory()); + if (checkExist) { + // 将upload.getFiles()中的filename提取出来 + FileDocument fileDocument = commonFileService.exist(path, upload.getUserId(), upload.getFilenames()); + if (fileDocument != null) { + // 文件已存在 + uploadResponse.setPass(true); + uploadResponse.setExist(true); + return uploadResponse; + } + } else { + String md5 = upload.getIdentifier(); + String relativePath = upload.getRelativePath(); + path += relativePath.substring(0, relativePath.length() - upload.getFilename().length()); + + FileDocument fileDocument = commonFileService.getByMd5(path, upload.getUserId(), md5); + if (fileDocument != null) { + // 文件已存在 + uploadResponse.setPass(true); + } else { + int totalChunks = upload.getTotalChunks(); + List chunks = resumeCache.get(md5, key -> createResumeCache(upload)); + // 返回已存在的分片 + uploadResponse.setResume(chunks); + assert chunks != null; + if (totalChunks == chunks.size()) { + // 文件不存在,并且已经上传了所有的分片,则合并保存文件 + mergeFile(upload); + } + } + } + uploadResponse.setUpload(true); + return uploadResponse; + } + + /*** + * 追加分片操作 + * @param upload UploadApiParamDTO + * @param unWrittenChunks 未写入的分片集合 + * @param writtenChunks 已写入的分片集合 + */ + private void appendFile(UploadApiParamDTO upload, CopyOnWriteArrayList unWrittenChunks, CopyOnWriteArrayList writtenChunks) { + // 需要继续追加分片索引 + int chunk = 1; + if (!writtenChunks.isEmpty()) { + chunk = writtenChunks.get(writtenChunks.size() - 1) + 1; + } + if (!unWrittenChunks.contains(chunk)) { + return; + } + String md5 = upload.getIdentifier(); + // 分片文件 + File chunkFile = Paths.get(fileProperties.getRootDir(), fileProperties.getChunkFileDir(), upload.getUsername(), md5, String.valueOf(chunk)).toFile(); + // 目标文件 + File outputFile = Paths.get(fileProperties.getRootDir(), fileProperties.getChunkFileDir(), upload.getUsername(), upload.getFilename()).toFile(); + long position = outputFile.length(); + try (FileOutputStream fileOutputStream = new FileOutputStream(outputFile, true); + FileChannel outChannel = fileOutputStream.getChannel()) { + ByteBuffer byteBuffer = ByteBuffer.wrap(FileUtil.readBytes(chunkFile)); + int writeLength = outChannel.write(byteBuffer, position); + if (writeLength != chunkFile.length()) { + log.error("writeLength: {}, chunkFileLength: {}", writeLength, chunkFile.length()); + } + writtenChunks.add(chunk); + writtenCache.put(md5, writtenChunks); + unWrittenChunks.remove((Integer) chunk); + unWrittenCache.put(md5, unWrittenChunks); + } catch (IOException e) { + throw new CommonException(ExceptionType.FAIL_MERGE_FILE); + } + } + + /*** + * 缓存已上传的分片 + * @param upload UploadApiParamDTO + */ + private void setResumeCache(UploadApiParamDTO upload) { + int chunkNumber = upload.getChunkNumber(); + String md5 = upload.getIdentifier(); + CopyOnWriteArrayList chunks = resumeCache.get(md5, key -> createResumeCache(upload)); + assert chunks != null; + if (!chunks.contains(chunkNumber)) { + chunks.add(chunkNumber); + resumeCache.put(md5, chunks); + } + } + + /*** + * 获取已经保存的分片索引 + */ + private CopyOnWriteArrayList getSavedChunk(UploadApiParamDTO upload) { + String md5 = upload.getIdentifier(); + return resumeCache.get(md5, key -> createResumeCache(upload)); + } + + /*** + * 检测是否需要合并 + */ + private boolean checkIsNeedMerge(UploadApiParamDTO upload) { + int totalChunks = upload.getTotalChunks(); + CopyOnWriteArrayList chunkList = getSavedChunk(upload); + return totalChunks == chunkList.size(); + } + + /*** + * 读取分片文件是否存在 + * @return 已经保存的分片索引列表 + */ + private CopyOnWriteArrayList createResumeCache(UploadApiParamDTO upload) { + CopyOnWriteArrayList resumeList = new CopyOnWriteArrayList<>(); + String md5 = upload.getIdentifier(); + // 读取tmp分片目录所有文件 + File f = Paths.get(fileProperties.getRootDir(), fileProperties.getChunkFileDir(), upload.getUsername(), md5).toFile(); + if (f.exists()) { + // 排除目录,只要文件 + File[] fileArray = f.listFiles(pathName -> !pathName.isDirectory()); + if (fileArray != null) { + for (File file : fileArray) { + // 分片文件 + int resume = Integer.parseInt(file.getName()); + resumeList.add(resume); + } + } + } + return resumeList; + } + + +} diff --git a/src/main/java/com/jmal/clouddisk/service/impl/RoleService.java b/src/main/java/com/jmal/clouddisk/service/impl/RoleService.java new file mode 100644 index 0000000..9e3a4c0 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/service/impl/RoleService.java @@ -0,0 +1,322 @@ +package com.jmal.clouddisk.service.impl; + +import cn.hutool.core.date.TimeInterval; +import cn.hutool.core.io.IoUtil; +import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.core.thread.ThreadUtil; +import com.alibaba.fastjson2.JSON; +import com.jmal.clouddisk.annotation.AnnoManageUtil; +import com.jmal.clouddisk.model.query.QueryRoleDTO; +import com.jmal.clouddisk.model.rbac.RoleDO; +import com.jmal.clouddisk.model.rbac.RoleDTO; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.util.*; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.data.mongodb.core.query.Update; +import org.springframework.stereotype.Service; + +import java.io.InputStream; +import java.nio.charset.StandardCharsets; +import java.time.LocalDateTime; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; +import java.util.stream.Collectors; + +/** + * @Description 角色管理 + * @blame jmal + * @Date 2021/1/7 7:45 下午 + */ +@Service +@Slf4j +public class RoleService { + + /*** + * 超级管理员, 拥有所有权限 + */ + public static final String ADMINISTRATORS = "Administrators"; + + public static final String COLLECTION_NAME = "role"; + + @Autowired + private MongoTemplate mongoTemplate; + + @Autowired + private MenuService menuService; + + @Autowired + private IUserService userService; + + @Autowired + private MessageUtil messageUtil; + + /*** + * 角色列表 + * @param queryDTO 角色查询条件 + * @return ResponseResult + */ + public ResponseResult> list(QueryRoleDTO queryDTO) { + Query query = new Query(); + long count = mongoTemplate.count(query, COLLECTION_NAME); + MongoUtil.commonQuery(queryDTO, query); + if(!CharSequenceUtil.isBlank(queryDTO.getName())){ + query.addCriteria(Criteria.where("name").regex(queryDTO.getName(), "i")); + } + if(!CharSequenceUtil.isBlank(queryDTO.getCode())){ + query.addCriteria(Criteria.where("code").regex(queryDTO.getCode(), "i")); + } + if(!CharSequenceUtil.isBlank(queryDTO.getRemarks())){ + query.addCriteria(Criteria.where("remarks").regex(queryDTO.getRemarks(), "i")); + } + List roleDTOList = mongoTemplate.find(query, RoleDTO.class, COLLECTION_NAME); + // to i18n + roleDTOList = roleDTOList.stream().peek(roleDTO -> { + roleDTO.setName(messageUtil.getMessage(roleDTO.getName())); + roleDTO.setRemarks(messageUtil.getMessage(roleDTO.getRemarks())); + }).collect(Collectors.toList()); + return ResultUtil.success(roleDTOList).setCount(count); + } + + /*** + * roleCode是否存在 + * @param roleCode 角色标识 + * @return 角色标识是否存在 + */ + private boolean existsRoleCode(String roleCode){ + Query query = new Query(); + query.addCriteria(Criteria.where("code").is(roleCode)); + return mongoTemplate.exists(query, COLLECTION_NAME); + } + + /*** + * roleId是否存在 + * @param roleId roleId + * @return roleId是否存在 + */ + private boolean existsRoleId(String roleId){ + Query query = new Query(); + query.addCriteria(Criteria.where("roleId").is(roleId)); + return mongoTemplate.exists(query, COLLECTION_NAME); + } + + /*** + * 添加角色 + * @param roleDTO 添加角色 + */ + public ResponseResult add(RoleDTO roleDTO) { + if (existsRoleCode(roleDTO.getCode())) { + return ResultUtil.warning("该角色标识已存在"); + } + RoleDO roleDO = new RoleDO(); + BeanUtils.copyProperties(roleDTO, roleDO); + LocalDateTime dateNow = LocalDateTime.now(TimeUntils.ZONE_ID); + roleDO.setCreateTime(dateNow); + roleDO.setUpdateTime(dateNow); + roleDO.setId(null); + mongoTemplate.save(roleDO, COLLECTION_NAME); + return ResultUtil.success(); + } + + /*** + * 更新角色 + * @param roleDTO RoleDTO + */ + public ResponseResult update(RoleDTO roleDTO) { + if (existsRoleId(roleDTO.getId())) { + return ResultUtil.warning("不存在的角色Id"); + } + Query query1 = new Query(); + query1.addCriteria(Criteria.where("_id").nin(roleDTO.getId())); + query1.addCriteria(Criteria.where("code").is(roleDTO.getCode())); + if(mongoTemplate.exists(query1, COLLECTION_NAME)){ + return ResultUtil.warning("该分类标识已存在"); + } + RoleDO roleDO = new RoleDO(); + BeanUtils.copyProperties(roleDTO, roleDO); + roleDO.setUpdateTime(LocalDateTime.now(TimeUntils.ZONE_ID)); + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(roleDO.getId())); + if(roleDO.getMenuIds() != null){ + // 分配权限后更新相关角色用户的权限缓存 + ThreadUtil.execute(() -> updateUserCacheByRole(roleDO)); + } + Update update = MongoUtil.getUpdate(roleDO); + mongoTemplate.upsert(query, update, COLLECTION_NAME); + return ResultUtil.success(); + } + + /*** + * 更新相关角色的用户缓存 + * @param roleDO RoleDO + */ + private void updateUserCacheByRole(RoleDO roleDO) { + if(roleDO.getId() == null){ + return; + } + if(roleDO.getMenuIds() == null || roleDO.getMenuIds().isEmpty()){ + return; + } + // 根据角色获取用户名列表 + List usernameList = userService.getUserNameListByRole(roleDO.getId()); + updateUserCacheByNames(usernameList); + } + + /*** + * 更新相关角色的用户缓存 + * @param usernameList 用户名列表 + */ + private void updateUserCacheByNames(List usernameList) { + usernameList.forEach(username -> { + // 获取该用户最新的权限列表 + List authorities = userService.getAuthorities(username); + if(CaffeineUtil.existsAuthoritiesCache(username)){ + CaffeineUtil.setAuthoritiesCache(username, authorities); + } + }); + } + + /*** + * 更新相关角色的用户缓存 + * @param rolesIds rolesIds + */ + public void updateUserCacheByRole(List rolesIds) { + List usernameList = userService.getUserNameListByRole(rolesIds); + updateUserCacheByNames(usernameList); + } + + /*** + * 删除角色 + * @param roleIds 角色id列表 + */ + public void delete(String[] roleIds) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").in((Object[]) roleIds)); + mongoTemplate.remove(query, COLLECTION_NAME); + } + + /*** + * 获取角色的菜单id列表 + * @param roleId 角色id + * @return 菜单id列表 + */ + public List getMenuIdList(String roleId) { + List menuIdList = new ArrayList<>(); + RoleDO roleDO = mongoTemplate.findById(roleId, RoleDO.class, COLLECTION_NAME); + if(roleDO != null && roleDO.getMenuIds() != null && !roleDO.getMenuIds().isEmpty()){ + menuIdList = roleDO.getMenuIds(); + } + return menuIdList; + } + + /*** + * 根据角色id列表获取菜单id列表 + * @param roleIdList 角色id列表 + * @return 菜单id列表 + */ + public List getMenuIdList(List roleIdList) { + List menuIdList = new ArrayList<>(); + Query query = new Query(); + query.addCriteria(Criteria.where("_id").in(roleIdList)); + List roleDOList = mongoTemplate.find(query, RoleDO.class, COLLECTION_NAME); + List finalMenuIdList = menuIdList; + roleDOList.forEach(roleDO -> finalMenuIdList.addAll(roleDO.getMenuIds())); + // 去重 + menuIdList = menuIdList.stream().distinct().collect(Collectors.toList()); + return menuIdList; + } + + /*** + * 获取权限列表 + * @param roleIdList 角色Id列表 + * @return 权限列表 + */ + public List getAuthorities(List roleIdList) { + List authorities = new ArrayList<>(); + Query query = new Query(); + query.addCriteria(Criteria.where("_id").in(roleIdList)); + List roleDOList = mongoTemplate.find(query, RoleDO.class, COLLECTION_NAME); + if(roleDOList.isEmpty()){ + return authorities; + } + List menuIdList = new ArrayList<>(); + for (RoleDO roleDO : roleDOList) { + // 如果是超级管理员, 直接返回所有权限 + if(ADMINISTRATORS.equals(roleDO.getCode())){ + return AnnoManageUtil.AUTHORITIES; + } + } + roleDOList.forEach(roleDO -> { + if(roleDO.getMenuIds() != null && !roleDO.getMenuIds().isEmpty()){ + menuIdList.addAll(roleDO.getMenuIds()); + } + }); + if(menuIdList.isEmpty()){ + return authorities; + } + return menuService.getAuthorities(menuIdList); + } + + /*** + * 获取角色列表 + * @param roleIds 角色id列表 + */ + public List getRoleList(List roleIds) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").in(roleIds)); + return mongoTemplate.find(query, RoleDTO.class, COLLECTION_NAME); + } + + /*** + * 获取所有角色 + * @return List + */ + public List getAllRoles() { + return mongoTemplate.findAll(RoleDO.class, COLLECTION_NAME); + } + + /*** + * 初始化角色数据 + */ + public void initRoles() { + + TimeInterval timeInterval = new TimeInterval(); + List roleDOList = getRoleDOListByConfigJSON(); + if (roleDOList.isEmpty()) return; + roleDOList.parallelStream().forEach(roleDO -> { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(roleDO.getId())); + boolean exists = mongoTemplate.exists(query, COLLECTION_NAME); + if (!exists) { + mongoTemplate.insert(roleDO); + } + }); + log.info("更新角色, 耗时:{}ms", timeInterval.intervalMs()); + } + + private static List getRoleDOListByConfigJSON() { + InputStream inputStream = Thread.currentThread().getContextClassLoader().getResourceAsStream("db/role.json"); + if(inputStream == null){ + return Collections.emptyList(); + } + String json = new String(IoUtil.readBytes(inputStream), StandardCharsets.UTF_8); + return JSON.parseArray(json, RoleDO.class); + } + + /*** + * 获取roleId + * @param roleCode roleCode + */ + public String getRoleIdByCode(String roleCode) { + Query query = new Query(); + query.addCriteria(Criteria.where("code").is(roleCode)); + RoleDO roleDO = mongoTemplate.findOne(query, RoleDO.class, COLLECTION_NAME); + return roleDO == null ? "" : roleDO.getId(); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/service/impl/SettingService.java b/src/main/java/com/jmal/clouddisk/service/impl/SettingService.java new file mode 100644 index 0000000..d8473d8 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/service/impl/SettingService.java @@ -0,0 +1,387 @@ +package com.jmal.clouddisk.service.impl; + +import cn.hutool.core.date.LocalDateTimeUtil; +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.io.file.PathUtil; +import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.core.thread.ThreadUtil; +import cn.hutool.core.util.NumberUtil; +import cn.hutool.crypto.SecureUtil; +import cn.hutool.crypto.symmetric.AES; +import cn.hutool.crypto.symmetric.SymmetricAlgorithm; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.lucene.EtagService; +import com.jmal.clouddisk.model.*; +import com.jmal.clouddisk.repository.IAuthDAO; +import com.jmal.clouddisk.service.Constants; +import com.jmal.clouddisk.util.*; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.domain.Sort; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.data.mongodb.core.query.Update; +import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; + +import java.io.File; +import java.io.IOException; +import java.nio.file.Paths; +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.atomic.AtomicBoolean; +import java.util.concurrent.atomic.AtomicLong; + +/** + * @author jmal + * @Description 设置 + * @Date 2020/10/28 5:30 下午 + */ +@Service +@Slf4j +public class SettingService { + + @Autowired + FileProperties fileProperties; + + @Autowired + private MongoTemplate mongoTemplate; + + protected static final String COLLECTION_NAME_WEBSITE_SETTING = "websiteSetting"; + + @Autowired + private IAuthDAO authDAO; + + @Autowired + private MenuService menuService; + + @Autowired + private UserServiceImpl userService; + + @Autowired + private RoleService roleService; + + @Autowired + UserLoginHolder userLoginHolder; + + @Autowired + private EtagService etagService; + + @Autowired + CommonFileService commonFileService; + + private final AtomicBoolean calculateFolderSizeScheduled = new AtomicBoolean(false); + + /** + * 已处理的数量 + */ + private final AtomicLong calculateFolderSizeProcessedCount = new AtomicLong(0); + + /** + * 每次处理的延迟时间,单位毫秒 + */ + private final static long THROTTLE_DELAY_MS = 100; + + /** + * 每次处理的文件夹数量 + */ + private final static int FOLDER_BATCH_SIZE = 16; + + /** + * 上传网盘logo + * + * @param file logo文件 + */ + public ResponseResult uploadLogo(MultipartFile file) { + String filename = "logo-" + System.currentTimeMillis() + "." + MyFileUtils.extName(file.getOriginalFilename()); + File dist = new File(fileProperties.getRootDir() + File.separator + filename); + try { + String oldFilename = null; + Query query = new Query(); + WebsiteSettingDO websiteSettingDO = mongoTemplate.findOne(query, WebsiteSettingDO.class, COLLECTION_NAME_WEBSITE_SETTING); + if (websiteSettingDO != null) { + oldFilename = websiteSettingDO.getNetdiskLogo(); + } + // 保存新的logo文件 + FileUtil.writeFromStream(file.getInputStream(), dist); + Update update = new Update(); + update.set("netdiskLogo", filename); + mongoTemplate.upsert(new Query(), update, COLLECTION_NAME_WEBSITE_SETTING); + if (!CharSequenceUtil.isBlank(oldFilename)) { + // 删除之前的logo文件 + PathUtil.del(Paths.get(fileProperties.getRootDir(), oldFilename)); + } + } catch (IOException e) { + log.error(e.getMessage(), e); + return ResultUtil.error("上传网盘logo失败"); + } + return ResultUtil.success(filename); + } + + /** + * 修改网盘名称 + * + * @param netdiskName 网盘名称 + */ + public ResponseResult updateNetdiskName(String netdiskName) { + Query query = new Query(); + Update update = new Update(); + update.set("netdiskName", netdiskName); + mongoTemplate.upsert(query, update, COLLECTION_NAME_WEBSITE_SETTING); + return ResultUtil.success("修改成功"); + } + + /*** + * 更新网站设置 + * @param websiteSettingDO WebsiteSetting + * @return ResponseResult + */ + public ResponseResult websiteUpdate(WebsiteSettingDO websiteSettingDO) { + Query query = new Query(); + Update update = MongoUtil.getUpdate(websiteSettingDO); + // 添加心语记录 + addHeartwings(websiteSettingDO); + mongoTemplate.upsert(query, update, COLLECTION_NAME_WEBSITE_SETTING); + return ResultUtil.success(); + } + + /*** + * 添加心语记录 + * @param websiteSettingDO WebsiteSettingDO + */ + private void addHeartwings(WebsiteSettingDO websiteSettingDO) { + WebsiteSettingDO websiteSettingDO1 = mongoTemplate.findOne(new Query(), WebsiteSettingDO.class, COLLECTION_NAME_WEBSITE_SETTING); + if (websiteSettingDO1 != null) { + String oldHeartwings = websiteSettingDO1.getBackgroundTextSite(); + String heartwings = websiteSettingDO.getBackgroundTextSite(); + if (!CharSequenceUtil.isBlank(oldHeartwings) && !oldHeartwings.equals(heartwings)) { + HeartwingsDO heartwingsDO = new HeartwingsDO(); + heartwingsDO.setCreateTime(LocalDateTimeUtil.now()); + heartwingsDO.setCreator(userLoginHolder.getUserId()); + heartwingsDO.setUsername(userLoginHolder.getUsername()); + heartwingsDO.setHeartwings(heartwings); + mongoTemplate.save(heartwingsDO); + } + } + } + + /** + * 获取网站备案信息 + * + * @return WebsiteSettingDTO + */ + public WebsiteSettingDTO getWebsiteRecord() { + WebsiteSettingDTO websiteSettingDTO = getWebsiteSetting(); + WebsiteSettingDTO websiteSettingDTO1 = new WebsiteSettingDTO(); + websiteSettingDTO1.setCopyright(websiteSettingDTO.getCopyright()); + websiteSettingDTO1.setRecordPermissionNum(websiteSettingDTO.getRecordPermissionNum()); + websiteSettingDTO1.setNetworkRecordNumber(websiteSettingDTO.getNetworkRecordNumber()); + websiteSettingDTO1.setNetworkRecordNumberStr(websiteSettingDTO.getNetworkRecordNumberStr()); + websiteSettingDTO1.setNetdiskName(websiteSettingDTO.getNetdiskName()); + websiteSettingDTO1.setExactSearch(fileProperties.getExactSearch()); + websiteSettingDTO1.setNetdiskLogo(websiteSettingDTO.getNetdiskLogo()); + websiteSettingDTO1.setFooterHtml(websiteSettingDTO.getFooterHtml()); + return websiteSettingDTO1; + } + + /*** + * 获取网站设置 + * @return ResponseResult + */ + public WebsiteSettingDTO getWebsiteSetting() { + WebsiteSettingDTO websiteSettingDTO = new WebsiteSettingDTO(); + Query query = new Query(); + WebsiteSettingDO websiteSettingDO = mongoTemplate.findOne(query, WebsiteSettingDO.class, COLLECTION_NAME_WEBSITE_SETTING); + if (websiteSettingDO != null) { + BeanUtils.copyProperties(websiteSettingDO, websiteSettingDTO); + } + if (websiteSettingDTO.getAlonePages() == null) { + websiteSettingDTO.setAlonePages(new ArrayList<>()); + } + String avatar = userService.getCreatorAvatar(); + if (!CharSequenceUtil.isBlank(avatar)) { + websiteSettingDTO.setAvatar(avatar); + } + return websiteSettingDTO; + } + + public ResponseResult> getWebsiteHeartwings(Integer page, Integer pageSize, String order) { + Query query = new Query(); + long count = mongoTemplate.count(query, HeartwingsDO.class); + query.skip((long) pageSize * (page - 1)); + query.limit(pageSize); + Sort.Direction direction = Sort.Direction.ASC; + if ("descending".equals(order)) { + direction = Sort.Direction.DESC; + } + query.with(Sort.by(direction, Constants.CREATE_TIME)); + return ResultUtil.success(mongoTemplate.find(query, HeartwingsDO.class)).setCount(count); + } + + /*** + * 生成accessToken + * @param username 用户名 + * @param tokenName tokenName + * @return ResponseResult + */ + public ResponseResult generateAccessToken(String username, String tokenName) { + byte[] key = SecureUtil.generateKey(SymmetricAlgorithm.AES.getValue()).getEncoded(); + // 构建 + AES aes = SecureUtil.aes(key); + // 加密为16进制表示 + String accessToken = aes.encryptHex(username); + UserAccessTokenDO userAccessTokenDO = new UserAccessTokenDO(); + userAccessTokenDO.setName(tokenName); + userAccessTokenDO.setUsername(username); + userAccessTokenDO.setAccessToken(accessToken); + authDAO.generateAccessToken(userAccessTokenDO); + return ResultUtil.success(accessToken); + } + + /*** + * accessToken列表 + * @param username 用户名 + * @return List + */ + public ResponseResult> accessTokenList(String username) { + List list = authDAO.accessTokenList(username); + return ResultUtil.success(list); + } + + /*** + * 删除accessToken + * @param id accessTokenId + */ + public void deleteAccessToken(String id) { + authDAO.deleteAccessToken(id); + } + + public void resetMenuAndRole() { + menuService.initMenus(); + roleService.initRoles(); + } + + public WebsiteSettingDTO getPreviewConfig() { + Query query = new Query(); + query.fields().include("iframe"); + WebsiteSettingDTO websiteSettingDTO = mongoTemplate.findOne(new Query(), WebsiteSettingDTO.class, COLLECTION_NAME_WEBSITE_SETTING); + if (websiteSettingDTO == null) { + return new WebsiteSettingDTO(); + } + return websiteSettingDTO; + } + + public synchronized void updatePreviewConfig(WebsiteSettingDTO websiteSettingDTO) { + Update update = new Update(); + update.set("iframe", websiteSettingDTO.getIframe()); + mongoTemplate.upsert(new Query(), update, COLLECTION_NAME_WEBSITE_SETTING); + } + + /** + * 重新计算文件夹大小 + * @return ResponseResult + */ + public ResponseResult recalculateFolderSize() { + if (calculateFolderSizeScheduled.get()) { + return ResultUtil.success(); + } else { + // 确保计算文件夹大小的任务被调度 + ensureProcessCalculateFolderSize(); + } + return ResultUtil.success(); + } + + private void ensureProcessCalculateFolderSize() { + if (calculateFolderSizeScheduled.compareAndSet(false, true)) { + String notifyUsername = userLoginHolder.getUsername(); + ThreadUtil.execute(() -> { + try { + // 清除之前的文件夹大小数据 + clearFolderSizInDb(); + long totalSize = totalSizeNeedUpdateSizeInDb(); + calculateFolderSizeProcessedCount.set(0); + HybridThrottleExecutor hybridThrottleExecutor = new HybridThrottleExecutor(THROTTLE_DELAY_MS); + // 调用实际的循环处理逻辑 + processCalculateFolderSizeLoop(totalSize, hybridThrottleExecutor, notifyUsername); + hybridThrottleExecutor.shutdown(); + } finally { + calculateFolderSizeScheduled.set(false); + // 关键:检查在本次处理运行期间是否有新的文件夹被标记 + // 如果有,则再次尝试调度,确保它们得到处理 + if (hasNeedUpdateSizeInDb()) { + ensureProcessCalculateFolderSize(); + } + } + + }); + } + } + + private void processCalculateFolderSizeLoop(long totalSize, HybridThrottleExecutor hybridThrottleExecutor, String notifyUsername) { + boolean run = true; + while (run && !Thread.currentThread().isInterrupted()) { + // 查询所有需要更新大小的文件夹 + Query query = Query.query(Criteria.where(Constants.IS_FOLDER).is(true).and(Constants.SIZE).exists(false)).limit(FOLDER_BATCH_SIZE); + List tasks = mongoTemplate.find(query, FileDocument.class); + if (tasks.isEmpty()) { + run = false; + continue; + } + for (FileDocument folderDoc : tasks) { + if (Thread.currentThread().isInterrupted()) { + run = false; + break; + } + String currentFolderNormalizedPath = folderDoc.getPath() + folderDoc.getName() + "/"; + try { + // 计算文件夹大小 + long size = etagService.getFolderSize(FileServiceImpl.COLLECTION_NAME, folderDoc.getUserId(), currentFolderNormalizedPath); + // 更新数据库中的大小 + Update update = new Update(); + update.set(Constants.SIZE, size); + mongoTemplate.updateFirst(Query.query(Criteria.where("_id").is(folderDoc.getId())), update, FileDocument.class); + calculateFolderSizeProcessedCount.getAndIncrement(); + // 推送进度 + hybridThrottleExecutor.execute(() -> { + double progress = (totalSize > 0) ? (double) calculateFolderSizeProcessedCount.get() / totalSize * 100 : 100.0; + commonFileService.pushMessage(notifyUsername, NumberUtil.round(progress, 2), "calculateFolderSizeProcessed"); + }); + + } catch (Exception e) { + log.error("计算文件夹大小失败: {}", currentFolderNormalizedPath, e); + } + } + } + } + + /** + * 检查数据库中是否还有需要更新siz的文件夹 + */ + private boolean hasNeedUpdateSizeInDb() { + Query query = Query.query(Criteria.where(Constants.IS_FOLDER).is(true).and(Constants.SIZE).exists(false)); + query.limit(1); // 只需要知道是否存在,不需要完整计数 + return mongoTemplate.exists(query, FileDocument.class); + } + + /** + * 获取需要更新大小的文件夹总数 + * @return long + */ + private long totalSizeNeedUpdateSizeInDb() { + Query query = Query.query(Criteria.where(Constants.IS_FOLDER).is(true).and(Constants.SIZE).exists(false)); + return mongoTemplate.count(query, FileDocument.class); + } + + /** + * 清除数据库中所有文件夹的大小字段 + */ + private void clearFolderSizInDb() { + Query query = Query.query(Criteria.where(Constants.IS_FOLDER).is(true)); + Update update = new Update(); + update.unset(Constants.SIZE); + mongoTemplate.updateMulti(query, update, FileDocument.class); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/service/impl/ShareServiceImpl.java b/src/main/java/com/jmal/clouddisk/service/impl/ShareServiceImpl.java new file mode 100644 index 0000000..2be2d04 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/service/impl/ShareServiceImpl.java @@ -0,0 +1,819 @@ +package com.jmal.clouddisk.service.impl; + +import cn.hutool.core.codec.Base64; +import cn.hutool.core.convert.Convert; +import cn.hutool.core.date.LocalDateTimeUtil; +import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.core.util.BooleanUtil; +import cn.hutool.core.util.RandomUtil; +import cn.hutool.core.util.ReUtil; +import com.jmal.clouddisk.exception.CommonException; +import com.jmal.clouddisk.exception.ExceptionType; +import com.jmal.clouddisk.lucene.LuceneService; +import com.jmal.clouddisk.model.*; +import com.jmal.clouddisk.model.rbac.ConsumerDO; +import com.jmal.clouddisk.oss.web.WebOssService; +import com.jmal.clouddisk.service.Constants; +import com.jmal.clouddisk.service.IFileService; +import com.jmal.clouddisk.service.IShareService; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.util.*; +import com.mongodb.client.result.UpdateResult; +import lombok.RequiredArgsConstructor; +import org.springframework.beans.BeanUtils; +import org.springframework.data.domain.Sort; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.data.mongodb.core.query.Update; +import org.springframework.stereotype.Service; + +import java.io.File; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.time.LocalDateTime; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; +import java.util.Map; + +import static com.jmal.clouddisk.controller.rest.ShareController.SHARE_EXPIRED; +import static com.jmal.clouddisk.service.IUserService.USER_ID; +import static com.jmal.clouddisk.webdav.MyWebdavServlet.PATH_DELIMITER; + +/** + * @Description 分享 + * @Author jmal + * @Date 2020-03-17 16:21 + */ +@Service +@RequiredArgsConstructor +public class ShareServiceImpl implements IShareService { + + public static final String COLLECTION_NAME = "share"; + + private final IFileService fileService; + + private final MongoTemplate mongoTemplate; + + private final UserServiceImpl userService; + + private final WebOssService webOssService; + + private final UserLoginHolder userLoginHolder; + + private final LuceneService luceneService; + + @Override + public ResponseResult generateLink(ShareDO share) { + ShareDO shareDO = findByFileId(share.getFileId()); + share.setCreateDate(LocalDateTime.now(TimeUntils.ZONE_ID)); + FileDocument file = fileService.getById(share.getFileId()); + if (BooleanUtil.isTrue(file.getIsShare()) && !BooleanUtil.isTrue(file.getShareBase())) { + // 设置子分享,继承上级分享 + return subShare(share.getShortId(), file); + } + long expireAt = Long.MAX_VALUE; + if (share.getExpireDate() != null) { + expireAt = TimeUntils.getMilli(share.getExpireDate()); + } + share.setIsFolder(share.getIsFolder()); + if (expireAt < Long.MAX_VALUE) { + share.setExpireDate(LocalDateTimeUtil.of(expireAt)); + } + share.setFileName(file.getName()); + share.setContentType(file.getContentType()); + share.setIsPrivacy(BooleanUtil.isTrue(share.getIsPrivacy())); + + if (shareDO == null) { + if (Boolean.TRUE.equals(share.getIsPrivacy())) { + share.setExtractionCode(generateExtractionCode()); + } + share.setShortId(generateShortId(share)); + shareDO = mongoTemplate.save(share, COLLECTION_NAME); + } else { + setShortId(share, shareDO); + updateShare(share, shareDO, file); + } + file.setShareBase(shareDO.getShareBase()); + + ShareVO shareVO = getShareVO(share, shareDO); + shareVO.setShareBase(true); + // 判断要分享的文件是否为oss文件 + checkOssPath(share, shareDO.getUserId(), file); + + // 修改文件夹下已经分享的文件 + List subShareFileIdList = getSubShare(file); + + // 设置文件的分享属性 + fileService.setShareFile(file, expireAt, share); + + // 修改文件夹下已经分享的文件 + updateSubShare(shareDO, subShareFileIdList); + return ResultUtil.success(shareVO); + } + + private List getSubShare(FileDocument file) { + if (Boolean.TRUE.equals(file.getIsFolder())) { + // 共享文件夹及其下的所有文件 + Query query = getFolderSubShareQuery(file); + List fileDocumentList = mongoTemplate.find(query, FileDocument.class); + if (fileDocumentList.isEmpty()) { + return Collections.emptyList(); + } + return fileDocumentList.stream().map(FileDocument::getId).toList(); + } + return Collections.emptyList(); + } + + private void updateSubShare(ShareDO shareDO, List subShareFileIdList) { + if (subShareFileIdList == null || subShareFileIdList.isEmpty()) { + return; + } + // 修改共享配置 + Query query = new Query(); + query.addCriteria(Criteria.where("fileId").in(subShareFileIdList)); + Update update = new Update(); + update.set(Constants.FATHER_SHARE_ID, shareDO.getId()); + update.set(Constants.IS_PRIVACY, shareDO.getIsPrivacy()); + if (Boolean.TRUE.equals(shareDO.getIsPrivacy())) { + update.set(Constants.EXTRACTION_CODE, shareDO.getExtractionCode()); + } else { + update.unset(Constants.EXTRACTION_CODE); + } + mongoTemplate.updateMulti(query, update, COLLECTION_NAME); + } + + private ResponseResult subShare(String shortId, FileDocument file) { + ShareDO share = new ShareDO(); + ShareDO fatherShare = getShare(file.getShareId()); + if (fatherShare == null) { + throw new CommonException(ExceptionType.WARNING.getCode(), "遇到一点问题, 请稍后再试"); + } + BeanUtils.copyProperties(fatherShare, share); + share.setId(null); + share.setShortId(shortId); + share.setFileId(file.getId()); + + ShareDO shareDO = findByFileId(file.getId()); + + // 创建子分享 + share.setFatherShareId(file.getShareId()); + if (shareDO == null) { + share.setShortId(generateShortId(share)); + share.setCreateDate(LocalDateTime.now(TimeUntils.ZONE_ID)); + share.setIsFolder(share.getIsFolder()); + share.setFileName(file.getName()); + share.setContentType(file.getContentType()); + shareDO = mongoTemplate.save(share, COLLECTION_NAME); + } else { + setShortId(share, shareDO); + updateShare(share, shareDO, file); + } + // 添加subShare属性 + setSubShare(file.getId()); + ShareVO shareVO = getShareVO(share, shareDO); + shareVO.setSubShare(true); + return ResultUtil.success(shareVO); + } + + private static ShareVO getShareVO(ShareDO share, ShareDO shareDO) { + ShareVO shareVO = new ShareVO(); + if (share.getOperationPermissionList() == null) { + shareVO.setOperationPermissionList(shareDO.getOperationPermissionList()); + } else { + shareVO.setOperationPermissionList(share.getOperationPermissionList()); + } + shareVO.setShortId(shareDO.getShortId()); + shareVO.setShareId(shareDO.getId()); + if (Boolean.TRUE.equals(share.getIsPrivacy())) { + shareVO.setExtractionCode(share.getExtractionCode()); + } + return shareVO; + } + + private void setShortId(ShareDO share, ShareDO shareDO) { + if (shareDO.getShortId() == null) { + String shortId = generateShortId(share); + share.setShortId(shortId); + shareDO.setShortId(shortId); + } else { + share.setShortId(shareDO.getShortId()); + } + } + + /** + * 生成5-8位短链接字符串 + * + * @return 链接字符串 + */ + private String generateShortId(ShareDO share) { + if (CharSequenceUtil.isNotBlank(share.getShortId())) { + // 检测是否已经存在 + if (isExistsShareShortId(share.getShortId())) { + throw new CommonException(ExceptionType.WARNING.getCode(), "地址 \"" + share.getShortId() + "\" 已存在"); + } + return share.getShortId(); + } + String shortId = Base64.encodeUrlSafe(Convert.toStr(RandomUtil.randomInt(1000, 1000000))); + if (isExistsShareShortId(shortId)) { + return generateShortId(share); + } + return shortId; + } + + private boolean isExistsShareShortId(String shortId) { + Query query = new Query(); + query.addCriteria(Criteria.where(Constants.SHORT_ID).is(shortId)); + return mongoTemplate.exists(query, ShareDO.class, COLLECTION_NAME); + } + + private void checkOssPath(ShareDO share, String userId, FileDocument file) { + Path path = Paths.get(share.getFileId()); + String ossPath = CaffeineUtil.getOssPath(path); + if (ossPath != null) { + // oss 文件 或 目录 + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(file.getId())); + if (!mongoTemplate.exists(query, FileDocument.class)) { + mongoTemplate.save(file); + } + String objectName = share.getFileId().substring(ossPath.length()); + webOssService.setOssPath(share.getUserId(), share.getFileId(), objectName, ossPath, false); + } + if (file.getOssFolder() != null) { + // oss 根目录 + Path path1 = Paths.get(userService.getUserNameById(userId), file.getOssFolder()); + String ossPath1 = CaffeineUtil.getOssPath(path1); + if (ossPath1 != null) { + String objectName = WebOssService.getObjectName(path1, ossPath1, true); + webOssService.setOssPath(share.getUserId(), null, objectName, ossPath1, true); + } + } + } + + private void updateShare(ShareDO share, ShareDO shareDO, FileDocument file) { + Query query = new Query().addCriteria(Criteria.where(Constants.FILE_ID).is(share.getFileId())); + Update update = new Update(); + update.set("fileName", file.getName()); + update.set(Constants.SHORT_ID, share.getShortId()); + if (share.getExpireDate() != null) { + update.set(Constants.EXPIRE_DATE, share.getExpireDate()); + } else { + update.unset(Constants.EXPIRE_DATE); + } + if (share.getOperationPermissionList() != null) { + update.set(Constants.OPERATION_PERMISSION_LIST, share.getOperationPermissionList()); + } + update.set(Constants.IS_PRIVACY, share.getIsPrivacy()); + if (Boolean.TRUE.equals(share.getIsPrivacy()) && shareDO.getExtractionCode() == null) { + shareDO.setExtractionCode(generateExtractionCode()); + update.set(Constants.EXTRACTION_CODE, shareDO.getExtractionCode()); + } + if (!share.getIsPrivacy() && shareDO.getExtractionCode() != null) { + update.unset(Constants.EXTRACTION_CODE); + } + if (shareDO.getExtractionCode() != null) { + share.setExtractionCode(shareDO.getExtractionCode()); + } + share.setId(shareDO.getId()); + mongoTemplate.updateFirst(query, update, COLLECTION_NAME); + // 更新子分享 + updateSubShare(share, shareDO); + } + + private void updateSubShare(ShareDO share, ShareDO shareDO) { + Query query = new Query(); + query.addCriteria(Criteria.where(Constants.FATHER_SHARE_ID).is(shareDO.getId())); + Update update = new Update(); + if (share.getExpireDate() == null) { + update.unset(Constants.EXPIRE_DATE); + } else { + update.set(Constants.EXPIRE_DATE, share.getExpireDate()); + } + update.set(Constants.IS_PRIVACY, share.getIsPrivacy()); + update.set(Constants.EXTRACTION_CODE, share.getExtractionCode()); + update.set(Constants.OPERATION_PERMISSION_LIST, share.getOperationPermissionList()); + mongoTemplate.updateMulti(query, update, COLLECTION_NAME); + } + + /*** + * 生成提取码 + * @return 提取码 + */ + private String generateExtractionCode() { + return RandomUtil.randomString(4); + } + + @Override + public ResponseResult validShareCode(String shareId, String shareCode) { + ShareDO shareDO = mongoTemplate.findById(shareId, ShareDO.class, COLLECTION_NAME); + if (shareDO == null) { + return ResultUtil.warning(Constants.LINK_FAILED); + } + if (shareCode.equals(shareDO.getExtractionCode())) { + // 验证成功 返回share-token + // share-token有效期为3个小时 + String shareToken = ShortSignedIdUtil.generateToken(shareId, LocalDateTimeUtil.now().plusHours(3)); + return ResultUtil.success(shareToken); + } + return ResultUtil.warning("提取码有误"); + } + + @Override + public boolean hasSubShare(List shareIdList) { + Query query = new Query(); + query.addCriteria(Criteria.where(Constants.FATHER_SHARE_ID).in(shareIdList)); + return mongoTemplate.exists(query, COLLECTION_NAME); + } + + @Override + public boolean folderSubShare(String fileId) { + FileDocument fileDocument = fileService.getById(fileId); + if (fileDocument == null || BooleanUtil.isFalse(fileDocument.getIsFolder())) { + return false; + } + Query query = getFolderSubShareQuery(fileDocument); + return mongoTemplate.exists(query, FileDocument.class); + } + + /** + * 获取文件夹下的子分享的查询条件 + * @param fileDocument 要分享的文件夹 + * @return Query + */ + private static Query getFolderSubShareQuery(FileDocument fileDocument) { + Query query = new Query(); + query.addCriteria(Criteria.where(USER_ID).is(fileDocument.getUserId())); + query.addCriteria(Criteria.where("path").regex("^" + ReUtil.escape(fileDocument.getPath() + fileDocument.getName() + "/"))); + query.addCriteria(Criteria.where(Constants.SHARE_BASE).is(true)); + return query; + } + + public void validShare(String shareToken, String shareId) { + ShareDO shareDO = getShare(shareId); + if (shareDO == null) { + throw new CommonException(ExceptionType.WARNING.getCode(), Constants.LINK_FAILED); + } + validShare(shareToken, shareDO); + } + + @Override + public void mountFile(UploadApiParamDTO upload) { + if (upload.getShareId() == null) { + throw new CommonException(ExceptionType.MISSING_PARAMETERS.getCode(), "缺少参数 shareId"); + } + if (upload.getUserId() == null) { + throw new CommonException(ExceptionType.MISSING_PARAMETERS.getCode(), "缺少参数 userId"); + } + if (upload.getFileId() == null) { + throw new CommonException(ExceptionType.MISSING_PARAMETERS.getCode(), "缺少参数 fileId"); + } + // 从shareId挂载到fileId + ShareDO shareDO = getShare(upload.getShareId()); + if (shareDO == null) { + throw new CommonException(ExceptionType.WARNING.getCode(), Constants.LINK_FAILED); + } + FileDocument fromFileDocument = fileService.getById(shareDO.getFileId()); + if (fromFileDocument == null) { + throw new CommonException(ExceptionType.WARNING.getCode(), "分享文件不存在"); + } + if (BooleanUtil.isFalse(fromFileDocument.getIsFolder())) { + throw new CommonException(ExceptionType.WARNING.getCode(), "该分享不是文件夹"); + } + FileDocument toFileDocument; + if (Constants.REGION_DEFAULT.equals(upload.getFileId())) { + // 挂载到根目录 + toFileDocument = new FileDocument(); + toFileDocument.setPath(""); + toFileDocument.setName(""); + toFileDocument.setIsFolder(true); + } else { + toFileDocument = fileService.getById(upload.getFileId()); + } + + if (toFileDocument == null) { + throw new CommonException(ExceptionType.WARNING.getCode(), "文件不存在"); + } + if (BooleanUtil.isFalse(toFileDocument.getIsFolder())) { + throw new CommonException(ExceptionType.WARNING.getCode(), "只能挂载到文件夹下"); + } + // 判断是否有挂载 + if (existsMountFile(fromFileDocument.getId(), upload.getUserId())) { + throw new CommonException(ExceptionType.WARNING.getCode(), "已经挂载过了"); + } + // 创建文件夹 + FileDocument fileDocument = new FileDocument(); + fileDocument.setIsFolder(true); + fileDocument.setName(fromFileDocument.getName()); + fileDocument.setPath(toFileDocument.getPath() + toFileDocument.getName() + File.separator); + fileDocument.setUserId(upload.getUserId()); + fileDocument.setIsFavorite(false); + fileDocument.setUploadDate(fromFileDocument.getUploadDate()); + fileDocument.setUpdateDate(fromFileDocument.getUpdateDate()); + fileDocument.setMountFileId(fromFileDocument.getId()); + Update update = MongoUtil.getUpdate(fileDocument); + update.set("remark", "挂载 mount"); + Query query = CommonFileService.getQuery(fileDocument); + UpdateResult updateResult = mongoTemplate.upsert(query, update, FileDocument.class); + if (null != updateResult.getUpsertedId()) { + luceneService.pushCreateIndexQueue(updateResult.getUpsertedId().asObjectId().getValue().toHexString()); + } + } + + @Override + public ResponseResult generateShareToken(String fileId) { + FileDocument fileDocument = fileService.getById(fileId); + if (fileDocument == null || fileDocument.getShareId() == null) { + return ResultUtil.warning("文件不存在"); + } + ShareDO shareDO = getShare(fileDocument.getShareId()); + if (shareDO == null || BooleanUtil.isFalse(shareDO.getIsPrivacy())) { + return ResultUtil.warning("分享不存在或不是私密分享"); + } + if (!fileDocument.getUserId().equals(userLoginHolder.getUserId()) && !existsMountFile(shareDO.getFileId(), userLoginHolder.getUserId())) { + return ResultUtil.error(ExceptionType.PERMISSION_DENIED); + } + + String shareToken = ShortSignedIdUtil.generateToken(shareDO.getId(), LocalDateTimeUtil.now().plusHours(3)); + return ResultUtil.success(shareToken); + } + + @Override + public Map getMountFileInfo(String fileId, String fileUserId) { + // 1.获取文件信息 + FileDocument fileDocument = fileService.getById(fileId); + // 2. 获取分享信息 + ShareDO shareDO = getShare(fileDocument.getShareId()); + // 3. 获取基础分享文件信息 + FileDocument shareBaseFile = fileService.getById(shareDO.getFileId()); + // 4.获取挂载信息 + FileDocument mountFile = getMountFile(shareDO.getFileId(), userLoginHolder.getUserId()); + if (mountFile == null) { + throw new CommonException(ExceptionType.WARNING.getCode(), "挂载文件不存在"); + } + // 5.获取文件上父级目录信息 + String parentName = Paths.get(fileDocument.getPath()).toFile().getName(); + String parentPath = Paths.get(fileDocument.getPath()).getParent().toString(); + if (parentPath.length() > 1) { + parentPath = parentPath + PATH_DELIMITER; + } + String fileUsername = userService.getUserNameById(fileUserId); + FileDocument folderInfo = fileService.getFileDocumentByPathAndName(parentPath, parentName, fileUsername); + if (folderInfo == null) { + return Map.of(); + } + String path = mountFile.getPath() + fileDocument.getPath().substring(shareBaseFile.getPath().length()); + String folder = folderInfo.getId(); + return Map.of( + "path", path, + "folder", folder + ); + } + + @Override + public String getMountFolderId(String path, String fileUsername, String otherFileId) { + try { + // 1. 获取其他文件信息 + FileDocument otherFileDocument = fileService.getById(otherFileId); + // 2. 获取分享信息 + ShareDO shareDO = getShare(otherFileDocument.getShareId()); + // 3. 获取基础分享文件信息 + FileDocument shareBaseFile = fileService.getById(shareDO.getFileId()); + // 4. 获取挂载信息 + FileDocument mountFile = getMountFile(shareDO.getFileId(), userLoginHolder.getUserId()); + if (mountFile == null) { + return ""; + } + String folderName = Paths.get(path).toFile().getName(); + String folderPath = shareBaseFile.getPath() + path.substring(mountFile.getPath().length()); + folderPath = folderPath.substring(0, folderPath.length() - folderName.length()); + FileDocument folderInfo = fileService.getFileDocumentByPathAndName(folderPath, folderName, fileUsername); + if (folderInfo == null) { + return ""; + } + return folderInfo.getId(); + } catch (Exception e) { + return ""; + } + } + + public void validShare(String shareToken, ShareDO shareDO) { + if (checkWhetherExpired(shareDO)) { + throw new CommonException(ExceptionType.WARNING.getCode(), SHARE_EXPIRED); + } + validShareCode(shareToken, shareDO); + } + + @Override + public ResponseResult accessShare(ShareDO shareDO, Integer pageIndex, Integer pageSize, Boolean showFolderSize) { + UploadApiParamDTO uploadApiParamDTO = new UploadApiParamDTO(); + uploadApiParamDTO.setPageIndex(pageIndex); + uploadApiParamDTO.setPageSize(pageSize); + uploadApiParamDTO.setUserId(shareDO.getUserId()); + if (Boolean.FALSE.equals(shareDO.getIsFolder())) { + List list = new ArrayList<>(); + FileDocument fileDocument = fileService.getById(shareDO.getFileId()); + if (fileDocument != null) { + list.add(fileDocument); + } + return ResultUtil.success(list); + } + String username = userService.getUserNameById(shareDO.getUserId()); + uploadApiParamDTO.setUsername(username); + uploadApiParamDTO.setCurrentDirectory("/"); + uploadApiParamDTO.setShowFolderSize(showFolderSize); + return fileService.searchFileAndOpenDir(uploadApiParamDTO, shareDO.getFileId(), null); + } + + @Override + public void validShareCode(String shareToken, ShareDO shareDO) { + if (checkWhetherExpired(shareDO)) { + throw new CommonException(ExceptionType.WARNING.getCode(), Constants.LINK_FAILED); + } + // 检查是否为私密链接 + if (BooleanUtil.isTrue(shareDO.getIsPrivacy())) { + ShareVO shareVO = new ShareVO(); + BeanUtils.copyProperties(shareDO, shareVO); + shareVO.setExtractionCode(null); + // 先检查有没有share-token + if (CharSequenceUtil.isBlank(shareToken)) { + String userId = userLoginHolder.getUserId(); + if (CharSequenceUtil.isBlank(userId)) { + shareValidFailed(shareDO); + } + if (existsMountFile(shareDO.getFileId(), userId)) { + return; + } + } + // 再检查share-token是否正确 + ShortSignedIdUtil.VerificationResult result = ShortSignedIdUtil.verifyToken(shareToken); + if (!shareDO.getId().equals(result.getKey()) || !result.isValid()) { + // 验证失败 + shareValidFailed(shareDO); + } + } + } + + /** + * 分享验证失败· + * + * @param shareDO 分享信息 + */ + private static void shareValidFailed(ShareDO shareDO) { + shareDO.setExtractionCode(null); + shareDO.setOperationPermissionList(null); + shareDO.setUserId(null); + shareDO.setFileId(null); + throw new CommonException(ExceptionType.SYSTEM_SUCCESS, shareDO); + } + + @Override + public boolean existsMountFile(String fileId, String userId) { + Query query = getMountQuery(fileId, userId); + return mongoTemplate.exists(query, FileDocument.class); + } + + private FileDocument getMountFile(String fileId, String userId) { + Query query = getMountQuery(fileId, userId); + return mongoTemplate.findOne(query, FileDocument.class); + } + + private static Query getMountQuery(String fileId, String userId) { + Query query = new Query(); + query.addCriteria(Criteria.where("mountFileId").is(fileId)); + query.addCriteria(Criteria.where(IUserService.USER_ID).is(userId)); + return query; + } + + @Override + public ShareDO getShare(String shareId) { + if (MongoUtil.isValidObjectId(shareId)) { + return mongoTemplate.findById(shareId, ShareDO.class, COLLECTION_NAME); + } else { + Query query = new Query(); + query.addCriteria(Criteria.where(Constants.SHORT_ID).is(shareId)); + return mongoTemplate.findOne(query, ShareDO.class, COLLECTION_NAME); + } + } + + @Override + public ShareDO getShareByFileId(String fileId) { + return findByFileId(fileId); + } + + /** + * 检查是否过期 + * + * @param shareDO 分享信息 + * @return 是否过期 true:过期 false:未过期 + */ + private boolean checkWhetherExpired(ShareDO shareDO) { + if (shareDO != null) { + LocalDateTime expireDate = shareDO.getExpireDate(); + if (expireDate == null) { + return false; + } + LocalDateTime now = LocalDateTime.now(TimeUntils.ZONE_ID); + return !expireDate.isAfter(now); + } + return true; + } + + @Override + public ResponseResult accessShareOpenDir(ShareDO shareDO, String fileId, Integer pageIndex, Integer pageSize, Boolean showFolderSize) { + UploadApiParamDTO uploadApiParamDTO = new UploadApiParamDTO(); + uploadApiParamDTO.setUserId(shareDO.getUserId()); + uploadApiParamDTO.setPageIndex(pageIndex); + uploadApiParamDTO.setPageSize(pageSize); + + // 判断是否为ossPath + Path path = Paths.get(fileId); + String ossPath = CaffeineUtil.getOssPath(path); + if (ossPath != null) { + uploadApiParamDTO.setUsername(path.subpath(0, 1).toString()); + uploadApiParamDTO.setCurrentDirectory(path.subpath(1, path.getNameCount()).toString()); + } else { + String username = userService.getUserNameById(shareDO.getUserId()); + uploadApiParamDTO.setUsername(username); + } + uploadApiParamDTO.setShowFolderSize(showFolderSize); + return fileService.searchFileAndOpenDir(uploadApiParamDTO, fileId, null); + } + + @Override + public List getShareList(UploadApiParamDTO upload) { + Query query = new Query(); + query.addCriteria(Criteria.where(IUserService.USER_ID).is(upload.getUserId())); + String order = FileServiceImpl.listByPage(upload, query); + if (CharSequenceUtil.isBlank(order)) { + query.with(Sort.by(Sort.Direction.DESC, "createDate")); + } else { + String sortableProp = upload.getSortableProp(); + Sort.Direction direction = Sort.Direction.ASC; + if ("descending".equals(order)) { + direction = Sort.Direction.DESC; + } + query.with(Sort.by(direction, sortableProp)); + } + List shareDOList = mongoTemplate.find(query, ShareDO.class, COLLECTION_NAME); + // 获取shareDOList中的fileId + List fileIdList = shareDOList.stream().map(ShareDO::getFileId).toList(); + // 查询fileIdList是否存在 + List fileDocumentList = fileService.listByIds(fileIdList); + // 找出shareDOList中的fileId不在fileDocumentList中的数据 + List notExistFileIdList = fileIdList.stream().filter(fileId -> !fileDocumentList.stream().map(FileDocument::getId).toList().contains(fileId)).toList(); + if (notExistFileIdList.isEmpty()) { + return shareDOList; + } + // 删除shareDOList中的fileId不在fileDocumentList中的数据 + mongoTemplate.remove(Query.query(Criteria.where(Constants.FILE_ID).in(notExistFileIdList)), COLLECTION_NAME); + shareDOList.removeIf(shareDO -> notExistFileIdList.contains(shareDO.getFileId())); + return shareDOList; + } + + private ShareDO findByFileId(String fileId) { + Query query = new Query(); + query.addCriteria(Criteria.where(Constants.FILE_ID).is(fileId)); + return mongoTemplate.findOne(query, ShareDO.class, COLLECTION_NAME); + } + + @Override + public ResponseResult shareList(UploadApiParamDTO upload) { + ResponseResult result = ResultUtil.genResult(); + List shareDOList = getShareList(upload); + result.setCount(getShareCount(upload.getUserId())); + result.setData(shareDOList); + return result; + } + + private long getShareCount(String userId) { + Query query = new Query(); + query.addCriteria(Criteria.where("userId").is(userId)); + return mongoTemplate.count(query, COLLECTION_NAME); + } + + @Override + public ResponseResult cancelShare(String[] shareId) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").in((Object[]) shareId)); + List shareDOList = mongoTemplate.findAllAndRemove(query, ShareDO.class, COLLECTION_NAME); + if (!shareDOList.isEmpty()) { + shareDOList.forEach(this::removeShareProperty); + } + return ResultUtil.success(); + } + + /** + * 移除share属性 + * + * @param shareDO ShareDO + */ + private void removeShareProperty(ShareDO shareDO) { + if (shareDO.getFatherShareId() != null) { + // 移除SUB_SHARE + unsetSubShare(shareDO.getFileId()); + return; + } + + // 删除subShare + removeSubSare(shareDO); + + String fileId = shareDO.getFileId(); + FileDocument fileDocument = fileService.getById(shareDO.getFileId()); + if (fileDocument == null) { + return; + } + fileService.unsetShareFile(fileDocument); + Path path = Paths.get(fileId); + String ossPath = CaffeineUtil.getOssPath(path); + if (ossPath != null) { + // 设置 share 属性 + List fileDocumentList = webOssService.removeOssPathFile(shareDO.getUserId(), shareDO.getFileId(), ossPath, false, true); + mongoTemplate.insertAll(fileDocumentList); + } + if (fileDocument.getOssFolder() != null) { + // oss 根目录 + Path path1 = Paths.get(userService.getUserNameById(shareDO.getUserId()), fileDocument.getOssFolder()); + String ossPath1 = CaffeineUtil.getOssPath(path1); + if (ossPath1 != null) { + // 移除 share 属性 + List fileDocumentList = webOssService.removeOssPathFile(shareDO.getUserId(), shareDO.getFileId(), ossPath1, true, true); + mongoTemplate.insertAll(fileDocumentList); + } + } + // 移除挂载文件 + Query query = new Query(); + query.addCriteria(Criteria.where("mountFileId").is(fileId)); + mongoTemplate.remove(query, FileDocument.class); + } + + private void removeSubSare(ShareDO shareDO) { + Query query = new Query(); + query.addCriteria(Criteria.where(Constants.FATHER_SHARE_ID).is(shareDO.getId())); + mongoTemplate.remove(query, ShareDO.class, COLLECTION_NAME); + } + + /** + * 添加subShare属性 + * @param fileId fileId + */ + private void setSubShare(String fileId) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(fileId)); + Update update = new Update(); + update.set(Constants.SUB_SHARE, true); + mongoTemplate.updateFirst(query, update, FileDocument.class); + } + + /** + * 移除subShare属性 + * @param fileId fileId + */ + private void unsetSubShare(String fileId) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(fileId)); + Update update = new Update(); + update.unset(Constants.SUB_SHARE); + mongoTemplate.updateFirst(query, update, FileDocument.class); + } + + @Override + public void deleteAllByUser(List userList) { + if (userList == null || userList.isEmpty()) { + return; + } + userList.forEach(user -> { + String userId = user.getId(); + Query query = new Query(); + query.addCriteria(Criteria.where("userId").in(userId)); + mongoTemplate.remove(query, COLLECTION_NAME); + }); + } + + @Override + public ResponseResult getSharer(String shareId) { + ShareDO shareDO = getShare(shareId); + if (shareDO == null) { + return ResultUtil.success(); + } + String userId = shareDO.getUserId(); + SharerDTO sharerDTO = new SharerDTO(); + sharerDTO.setShareId(shareDO.getId()); + ConsumerDO consumerDO = userService.getUserInfoById(userId); + sharerDTO.setShowName(consumerDO.getShowName()); + sharerDTO.setUsername(consumerDO.getUsername()); + sharerDTO.setUserId(userId); + if (consumerDO.getAvatar() != null) { + sharerDTO.setAvatar(consumerDO.getAvatar()); + } + WebsiteSettingDO websiteSettingDO = mongoTemplate.findOne(new Query(), WebsiteSettingDO.class, SettingService.COLLECTION_NAME_WEBSITE_SETTING); + if (websiteSettingDO != null) { + sharerDTO.setNetdiskName(websiteSettingDO.getNetdiskName()); + sharerDTO.setNetdiskLogo(websiteSettingDO.getNetdiskLogo()); + sharerDTO.setIframe(websiteSettingDO.getIframe()); + } + return ResultUtil.success(sharerDTO); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/service/impl/TagService.java b/src/main/java/com/jmal/clouddisk/service/impl/TagService.java new file mode 100644 index 0000000..0efca31 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/service/impl/TagService.java @@ -0,0 +1,324 @@ +package com.jmal.clouddisk.service.impl; + +import cn.hutool.core.text.CharSequenceUtil; +import com.jmal.clouddisk.model.Tag; +import com.jmal.clouddisk.model.TagDO; +import com.jmal.clouddisk.model.TagDTO; +import com.jmal.clouddisk.service.Constants; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.util.MongoUtil; +import com.jmal.clouddisk.util.ResponseResult; +import com.jmal.clouddisk.util.ResultUtil; +import lombok.RequiredArgsConstructor; +import org.bson.types.ObjectId; +import org.springframework.beans.BeanUtils; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.data.mongodb.core.query.Update; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.stream.Collectors; + +/** + * @author jmal + * @Description 分类管理 + * @Date 2020/10/26 5:51 下午 + */ +@Service +@RequiredArgsConstructor +public class TagService { + + private final MongoTemplate mongoTemplate; + + private static final String COLLECTION_NAME = "tag"; + + + /*** + * 标签列表 + * @param userId userId + * @return List + */ + public List list(String userId) { + Query query = getQueryUserId(userId); + List tagList = mongoTemplate.find(query, TagDO.class, COLLECTION_NAME); + return tagList.parallelStream().map(tag -> { + TagDTO tagDTO = new TagDTO(); + BeanUtils.copyProperties(tag, tagDTO); + return tagDTO; + }).sorted().toList(); + } + + /*** + * 带有文章数的标签列表 + * @return List + */ + public List listTagsOfArticle() { + Query query = getQueryUserId(null); + List tagList = mongoTemplate.find(query, TagDO.class, COLLECTION_NAME); + return tagList.parallelStream().map(tag -> { + TagDTO tagDTO = new TagDTO(); + BeanUtils.copyProperties(tag, tagDTO); + getTagArticlesNum(tagDTO); + tagDTO.setFontSize(Math.round(Math.log(tagDTO.getArticleNum() * 5d) * 10d)); + tagDTO.setColor("rgb(" + Math.round(Math.random() * 100 + 80) + "," + Math.round(Math.random() * 100 + 80) + "," + Math.round(Math.random() * 100 + 80) + ")"); + return tagDTO; + }).filter(tag -> tag.getArticleNum() > 0).sorted().toList(); + } + + /*** + * 获取标签的文章数 + * @param tagDTO tagDTO + */ + private void getTagArticlesNum(TagDTO tagDTO) { + Query query = new Query(); + query.addCriteria(Criteria.where(Constants.TAG_IDS).is(tagDTO.getId())); + query.addCriteria(Criteria.where(Constants.RELEASE).is(true)); + tagDTO.setArticleNum(mongoTemplate.count(query, CommonFileService.COLLECTION_NAME)); + } + + /*** + * 获取查询条件 + * @param userId userId + * @return Query + */ + private Query getQueryUserId(String userId) { + Query query = new Query(); + if (!CharSequenceUtil.isBlank(userId)) { + query.addCriteria(Criteria.where(IUserService.USER_ID).is(userId)); + } else { + query.addCriteria(Criteria.where(IUserService.USER_ID).exists(false)); + } + return query; + } + + /*** + * 获取分类信息 + * @param userId 用户id + * @param tagName 标签名 + * @return 一个分类信息 + */ + public TagDO getTagInfo(String userId, String tagName) { + Query query = getQueryUserId(userId); + query.addCriteria(Criteria.where("name").is(tagName)); + return mongoTemplate.findOne(query, TagDO.class, COLLECTION_NAME); + } + + /*** + * 获取分类信息 + * @param userId 用户id + * @param tagSlugName 标签缩略名 + * @return 一个分类信息 + */ + public TagDO getTagInfoBySlug(String userId, String tagSlugName) { + Query query = getQueryUserId(userId); + query.addCriteria(Criteria.where("slug").is(tagSlugName)); + TagDO tag = mongoTemplate.findOne(query, TagDO.class, COLLECTION_NAME); + if (tag == null) { + tag = getTagInfo(userId, tagSlugName); + } + return tag; + } + + /*** + * 标签信息 + * @param tagId tagId + * @return Tag + */ + public TagDO getTagInfo(String tagId) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(tagId)); + return mongoTemplate.findOne(query, TagDO.class, COLLECTION_NAME); + } + + /*** + * 添加标签 + * @param tagDTO TagDTO + * @return ResponseResult + */ + public ResponseResult add(TagDTO tagDTO) { + if (tagExists(tagDTO)) { + return ResultUtil.warning("该标签名称已存在"); + } + tagDTO.setSlug(getSlug(tagDTO)); + TagDO tag = new TagDO(); + BeanUtils.copyProperties(tagDTO, tag); + tag.setId(null); + mongoTemplate.save(tag, COLLECTION_NAME); + return ResultUtil.success(); + } + + private boolean tagExists(TagDTO tagDTO) { + TagDO tag = getTagInfo(tagDTO.getUserId(), tagDTO.getName()); + return tag != null; + } + + /*** + * 更新标签 + * @param tagDTO TagDTO + * @return ResponseResult + */ + public ResponseResult update(TagDTO tagDTO) { + TagDO tag1 = getTagInfo(tagDTO.getId()); + if (tag1 == null) { + return ResultUtil.warning("该标签不存在"); + } + Query query1 = new Query(); + query1.addCriteria(Criteria.where("_id").nin(tagDTO.getId())); + query1.addCriteria(Criteria.where("name").is(tagDTO.getName())); + if (mongoTemplate.exists(query1, COLLECTION_NAME)) { + return ResultUtil.warning("该标签名称已存在"); + } + tagDTO.setSlug(getSlug(tagDTO)); + TagDO tag = new TagDO(); + BeanUtils.copyProperties(tagDTO, tag); + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(tagDTO.getId())); + Update update = MongoUtil.getUpdate(tag); + mongoTemplate.upsert(query, update, COLLECTION_NAME); + return ResultUtil.success(); + } + + private String getSlug(TagDTO tagDTO) { + Query query = new Query(); + String slug = tagDTO.getSlug(); + if (CharSequenceUtil.isBlank(slug)) { + return tagDTO.getName(); + } + String id = tagDTO.getId(); + if (id != null) { + query.addCriteria(Criteria.where("_id").nin(id)); + } + query.addCriteria(Criteria.where("slug").is(slug)); + if (mongoTemplate.exists(query, COLLECTION_NAME)) { + return slug + "-1"; + } + return slug; + } + + /*** + * 删除标签 + * @param tagIdList tagIdList + */ + public void delete(List tagIdList) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").in(tagIdList)); + mongoTemplate.remove(query, COLLECTION_NAME); + } + + /** + * 根据标签名获取标签Id + * 没有相应的标签名则添加 + * + * @param tagNames 签名集合 + * @return 标签Id集合 + */ + public String[] getTagIdsByNames(String[] tagNames) { + if (tagNames == null) { + return new String[]{}; + } + List tagNameList = Arrays.asList(tagNames); + return tagNameList.parallelStream().map(tagName -> getTagIdByName(tagName, null, null).getTagId()).toArray(String[]::new); + } + + /** + * 根据标签DTO列表获取标签Id + * + * @param tagDTOList 标签DTO列表 + * @param userId 用户id + * @return 标签Id集合 + */ + public List getTagIdsByTagDTOList(List tagDTOList, String userId) { + if (tagDTOList == null) { + return new ArrayList<>(); + } + return tagDTOList.parallelStream().map(tagDTO -> getTagIdByName(tagDTO.getName(), tagDTO.getColor(), userId)).collect(Collectors.toList()); + } + + private Tag getTagIdByName(String tagName, String color, String userId) { + Query query = new Query(); + query.addCriteria(Criteria.where("name").is(tagName)); + TagDO tag = mongoTemplate.findOne(query, TagDO.class, COLLECTION_NAME); + if (tag == null) { + // 添加新标签 + tag = new TagDO(); + tag.setId(new ObjectId().toHexString()); + } else { + boolean tagChange = CharSequenceUtil.isNotBlank(color) && !color.equals(tag.getColor()); + if (CharSequenceUtil.isNotBlank(tagName) && !tagName.equals(tag.getName())) { + tagChange = true; + } + if (tagChange) { + // 更改了标签, 则需修改fileDocument中tags + updateFilDocumentTag(color, tagName, tag); + } + } + if (CharSequenceUtil.isNotBlank(userId)) { + tag.setUserId(userId); + } + if (CharSequenceUtil.isNotBlank(color)) { + tag.setColor(color); + } + tag.setName(tagName); + tag.setSlug(tagName); + mongoTemplate.save(tag, COLLECTION_NAME); + Tag fileDocumentTag = new Tag(); + fileDocumentTag.setTagId(tag.getId()); + fileDocumentTag.setName(tagName); + fileDocumentTag.setColor(tag.getColor()); + return fileDocumentTag; + } + + /** + * 更新fileDocument中tags + * @param color 新的颜色 + * @param tagName 新的标签名 + * @param tag 标签 + */ + private void updateFilDocumentTag(String color, String tagName, TagDO tag) { + Query query1 = new Query(); + query1.addCriteria(Criteria.where("tags.tagId").is(tag.getId())); + Update update = new Update(); + update.set("tags.$.color", color); + update.set("tags.$.name", tagName); + mongoTemplate.updateMulti(query1,update, CommonFileService.COLLECTION_NAME); + } + + /*** + * 根据id查询标签列表 + * @param tagIds 标签id集合 + * @return 标签列表 + */ + public List getTagListByIds(Object[] tagIds) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").in(tagIds)); + return mongoTemplate.find(query, TagDO.class, COLLECTION_NAME); + } + + /** + * 更新标签排序 + * @param tagIdList 标签Id列表 + */ + public void updateTagSort(List tagIdList) { + if (tagIdList == null || tagIdList.isEmpty()) { + return; + } + List tagDTOList = new ArrayList<>(); + for (int i = 0; i < tagIdList.size(); i++) { + TagDTO tagDTO = new TagDTO(); + tagDTO.setSort(i); + tagDTO.setId(tagIdList.get(i)); + tagDTOList.add(tagDTO); + } + tagDTOList.parallelStream().forEach(tagDTO -> { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(tagDTO.getId())); + Update update = new Update(); + update.set("sort", tagDTO.getSort()); + mongoTemplate.updateFirst(query, update, COLLECTION_NAME); + }); + } +} diff --git a/src/main/java/com/jmal/clouddisk/service/impl/TotpService.java b/src/main/java/com/jmal/clouddisk/service/impl/TotpService.java new file mode 100644 index 0000000..b5727db --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/service/impl/TotpService.java @@ -0,0 +1,87 @@ +package com.jmal.clouddisk.service.impl; + +import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.core.util.BooleanUtil; +import com.jmal.clouddisk.exception.CommonException; +import com.jmal.clouddisk.exception.ExceptionType; +import com.jmal.clouddisk.model.WebsiteSettingDTO; +import com.jmal.clouddisk.model.rbac.ConsumerDO; +import com.jmal.clouddisk.service.IUserService; +import dev.samstevens.totp.code.CodeVerifier; +import dev.samstevens.totp.exceptions.QrGenerationException; +import dev.samstevens.totp.qr.QrData; +import dev.samstevens.totp.qr.QrGenerator; +import dev.samstevens.totp.secret.SecretGenerator; +import dev.samstevens.totp.util.Utils; +import lombok.RequiredArgsConstructor; +import org.springframework.security.crypto.encrypt.TextEncryptor; +import org.springframework.stereotype.Service; + +@Service +@RequiredArgsConstructor +public class TotpService { + + private final SecretGenerator secretGenerator; + private final QrGenerator qrGenerator; + private final CodeVerifier codeVerifier; + private final TextEncryptor textEncryptor; + private final IUserService userService; + private final SettingService settingService; + + /** + * 生成一个新的、唯一的MFA密钥。 + */ + public String generateNewSecret() { + return secretGenerator.generate(); + } + + /** + * 为给定的密钥生成二维码图片(作为Base64编码的Data URI)。 + * @param secret MFA密钥 + * @param account 用户的唯一标识,通常是邮箱或用户名 + * @return Base64编码的PNG图片Data URI + */ + public String generateQrCodeImageUri(String secret, String account) { + WebsiteSettingDTO websiteSettingDTO = settingService.getWebsiteSetting(); + QrData data = new QrData.Builder() + .label(account) + .secret(secret) + .issuer(CharSequenceUtil.isBlank(websiteSettingDTO.getNetdiskName()) ? "JmalCloud" : websiteSettingDTO.getNetdiskName()) + .digits(6) + .period(30) + .build(); + try { + byte[] imageData = qrGenerator.generate(data); + return Utils.getDataUriForImage(imageData, qrGenerator.getImageMimeType()); + } catch (QrGenerationException e) { + throw new CommonException(ExceptionType.WARNING.getCode(), "无法生成MFA二维码"); + } + } + + /** + * 验证用户提供的TOTP码是否有效。 + * @param code 用户输入的6位数字码 + * @return 如果验证通过则返回true,否则返回false + */ + public boolean isCodeInvalid(String code, String username) { + ConsumerDO consumerDO = userService.getUserInfoByUsername(username); + if (consumerDO == null) { + return true; + } + if (BooleanUtil.isTrue(consumerDO.getMfaEnabled())) { + String decryptedSecret = textEncryptor.decrypt(consumerDO.getMfaSecret()); + return !codeVerifier.isValidCode(decryptedSecret, code); + } + return true; + } + + /** + * 验证用户提供的TOTP码是否有效。 + * @param decryptedSecret 用户的MFA密钥 + * @param code 用户输入的6位数字码 + * @return 如果验证通过则返回true,否则返回false + */ + public boolean isRawCodeValid(String decryptedSecret, String code) { + return codeVerifier.isValidCode(decryptedSecret, code); + } +} diff --git a/src/main/java/com/jmal/clouddisk/service/impl/UserLoginHolder.java b/src/main/java/com/jmal/clouddisk/service/impl/UserLoginHolder.java new file mode 100644 index 0000000..24f7c96 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/service/impl/UserLoginHolder.java @@ -0,0 +1,67 @@ +package com.jmal.clouddisk.service.impl; + +import com.jmal.clouddisk.model.rbac.UserLoginContext; +import org.springframework.stereotype.Service; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import java.util.ArrayList; +import java.util.List; + +/** + * @Description 用户登录信息 + * @blame jmal + * @Date 2021/1/9 2:13 下午 + */ +@Service +public class UserLoginHolder { + + /*** + * 获取当前用户信息 + * @return UserLoginContext + */ + public UserLoginContext getCurrentUser(){ + ServletRequestAttributes requestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); + if(requestAttributes == null){ + UserLoginContext userLoginContext = new UserLoginContext(); + userLoginContext.setAuthorities(new ArrayList<>()); + return userLoginContext; + } + return getUserLoginContext(requestAttributes); + } + + private UserLoginContext getUserLoginContext(ServletRequestAttributes requestAttributes) { + Object object = requestAttributes.getAttribute("user", 0); + if(object != null){ + return (UserLoginContext) object; + } else { + UserLoginContext userLoginContext = new UserLoginContext(); + userLoginContext.setAuthorities(new ArrayList<>()); + return userLoginContext; + } + } + + /*** + * 获取当前用户权限 + * @return 权限列表 + */ + public List getAuthorities(){ + return getCurrentUser().getAuthorities(); + } + + /*** + * 获取当前用户名 + * @return username + */ + public String getUsername(){ + return getCurrentUser().getUsername(); + } + + /*** + * 获取当前用户Id + * @return userId + */ + public String getUserId(){ + return getCurrentUser().getUserId(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/service/impl/UserServiceImpl.java b/src/main/java/com/jmal/clouddisk/service/impl/UserServiceImpl.java new file mode 100644 index 0000000..513cf64 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/service/impl/UserServiceImpl.java @@ -0,0 +1,639 @@ +package com.jmal.clouddisk.service.impl; + +import cn.hutool.core.io.file.PathUtil; +import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.core.thread.ThreadUtil; +import cn.hutool.core.util.BooleanUtil; +import cn.hutool.core.util.StrUtil; +import com.jmal.clouddisk.annotation.AnnoManageUtil; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.exception.CommonException; +import com.jmal.clouddisk.exception.ExceptionType; +import com.jmal.clouddisk.listener.FileMonitor; +import com.jmal.clouddisk.model.UploadApiParamDTO; +import com.jmal.clouddisk.model.WebsiteSettingDO; +import com.jmal.clouddisk.model.query.QueryUserDTO; +import com.jmal.clouddisk.model.rbac.ConsumerBase; +import com.jmal.clouddisk.model.rbac.ConsumerDO; +import com.jmal.clouddisk.model.rbac.ConsumerDTO; +import com.jmal.clouddisk.repository.IAuthDAO; +import com.jmal.clouddisk.service.IFileService; +import com.jmal.clouddisk.service.IShareService; +import com.jmal.clouddisk.service.IUserService; +import com.jmal.clouddisk.util.*; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.data.mongodb.core.query.Update; +import org.springframework.security.crypto.encrypt.TextEncryptor; +import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; + +import java.nio.file.Paths; +import java.time.LocalDateTime; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +/** + * @author jmal + * @Description UserServiceImpl + */ +@Service +public class UserServiceImpl implements IUserService { + + public static final String COLLECTION_NAME = "user"; + + public static final String ROLES = "roles"; + + @Autowired + private MongoTemplate mongoTemplate; + + @Autowired + private IFileService fileService; + + @Autowired + private IShareService shareService; + + @Autowired + private MenuService menuService; + + @Autowired + private RoleService roleService; + + @Autowired + private IAuthDAO authDAO; + + @Autowired + private FileProperties fileProperties; + + @Autowired + private UserLoginHolder userLoginHolder; + + @Autowired + private FileMonitor fileMonitor; + + @Autowired + private TextEncryptor textEncryptor; + + @Override + public synchronized ConsumerDO add(ConsumerDTO consumerDTO) { + String username = consumerDTO.getUsername(); + if (fileProperties.notAllowUsername(username)) { + throw new CommonException(ExceptionType.WARNING.getCode(), "请使用其他用户名"); + } + ConsumerDO consumerDO; + ConsumerDO user1 = getUserInfoByUsername(username); + if (user1 == null) { + if (consumerDTO.getQuota() == null) { + consumerDTO.setQuota(10); + } + String originalPwd = consumerDTO.getPassword(); + encryption(consumerDTO, originalPwd); + consumerDO = new ConsumerDO(); + BeanUtils.copyProperties(consumerDTO, consumerDO); + consumerDO.setCreateTime(LocalDateTime.now(TimeUntils.ZONE_ID)); + consumerDO.setId(null); + // 新建用户目录 + createUserDir(consumerDO.getUsername()); + consumerDO = mongoTemplate.save(consumerDO, COLLECTION_NAME); + // 更新用户缓存 + CaffeineUtil.setConsumerByUsernameCache(consumerDO.getUsername(), consumerDO); + } else { + throw new CommonException(ExceptionType.WARNING.getCode(), "该用户已存在"); + } + return consumerDO; + } + + /** + * 新建用户目录 + * + * @param username 用户名 + */ + private void createUserDir(String username) { + // 修改为公共空间:不再为每个用户创建独立目录 + // 确保公共根目录存在 + PathUtil.mkdir(Paths.get(fileProperties.getRootDir())); + } + + @Override + public ResponseResult delete(List idList) { + String currentUserId = userLoginHolder.getUserId(); + if (idList.contains(currentUserId)) { + return ResultUtil.warning("不能删除自己"); + } + Query query1 = new Query(); + query1.addCriteria(Criteria.where("_id").in(idList)); + List userList = mongoTemplate.find(query1, ConsumerDO.class, COLLECTION_NAME); + // 过滤掉创建者 + ConsumerDO creator = userList.stream().filter(user -> user.getCreator() != null && user.getCreator()).findAny().orElse(null); + if (creator != null) { + idList = idList.stream().filter(id -> !id.equals(creator.getId())).toList(); + userList.remove(creator); + } + // 删除关联文件 + fileService.deleteAllByUser(userList); + // 删除关联分享 + shareService.deleteAllByUser(userList); + // 删除关联token + authDAO.deleteAllByUser(userList); + // 删除用户缓存 + CaffeineUtil.removeConsumerListByUsernameCache(userList); + Query query = new Query(); + query.addCriteria(Criteria.where("_id").in(idList)); + mongoTemplate.remove(query, COLLECTION_NAME); + return ResultUtil.success(); + } + + @Override + public ResponseResult update(ConsumerDTO user, MultipartFile blobAvatar) { + + String name = user.getUsername(); + if (fileProperties.notAllowUsername(name)) { + return ResultUtil.warning("请使用其他用户名"); + } + + Query query = new Query(); + String userId = user.getId(); + ConsumerDO consumerDO; + if (!CharSequenceUtil.isBlank(userId)) { + query.addCriteria(Criteria.where("_id").is(userId)); + consumerDO = getUserInfoById(userId); + } else { + if (!CharSequenceUtil.isBlank(name)) { + query.addCriteria(Criteria.where(USERNAME).is(name)); + consumerDO = getUserInfoByUsername(name); + } else { + return ResultUtil.success(); + } + } + if (consumerDO == null) { + consumerDO = new ConsumerDO(); + } + Update update = new Update(); + String showName = user.getShowName(); + if (!CharSequenceUtil.isBlank(showName)) { + update.set(SHOW_NAME, showName); + consumerDO.setShowName(showName); + } + Integer quota = user.getQuota(); + if (quota != null) { + update.set("quota", quota); + consumerDO.setQuota(quota); + } + String slogan = user.getSlogan(); + if (!CharSequenceUtil.isBlank(slogan)) { + update.set("slogan", slogan); + consumerDO.setSlogan(slogan); + } + String introduction = user.getIntroduction(); + if (!CharSequenceUtil.isBlank(introduction)) { + update.set("introduction", introduction); + } else { + update.set("introduction", ""); + } + consumerDO.setIntroduction(introduction); + String fileId = ""; + if (!CharSequenceUtil.isBlank(user.getAvatar())) { + fileId = user.getAvatar(); + update.set("avatar", fileId); + consumerDO.setAvatar(fileId); + } + if (user.getRoles() != null) { + update.set(ROLES, user.getRoles()); + consumerDO.setRoles(user.getRoles()); + } + // 设置用户头像 + fileId = setConsumerAvatar(blobAvatar, userId, consumerDO, update, fileId); + LocalDateTime now = LocalDateTime.now(TimeUntils.ZONE_ID); + update.set("updateTime", now); + consumerDO.setUpdateTime(now); + updateConsumer(userId, query, update); + if (user.getRoles() != null) { + // 修改用户角色后更新相关角色用户的权限缓存 + ThreadUtil.execute(() -> roleService.updateUserCacheByRole(user.getRoles())); + } + return ResultUtil.success(fileId); + } + + private String setConsumerAvatar(MultipartFile blobAvatar, String userId, ConsumerDO consumerDO, Update update, String fileId) { + if (blobAvatar != null) { + ConsumerDO consumer = mongoTemplate.findById(userId, ConsumerDO.class, COLLECTION_NAME); + if (consumer != null) { + UploadApiParamDTO upload = new UploadApiParamDTO(); + upload.setUserId(userId); + upload.setUsername(consumer.getUsername()); + upload.setFilename("avatar-" + System.currentTimeMillis()); + upload.setFile(blobAvatar); + fileId = fileService.uploadConsumerImage(upload); + update.set("avatar", fileId); + consumerDO.setAvatar(fileId); + } + } else { + // 设置头像文件为public + fileService.setPublic(fileId); + } + return fileId; + } + + @Override + public ResponseResult userInfo(String id) { + ConsumerDO consumer = mongoTemplate.findById(id, ConsumerDO.class, COLLECTION_NAME); + if (consumer == null) { + return ResultUtil.success(new ConsumerDTO()); + } + ConsumerDTO consumerDTO = new ConsumerDTO(); + BeanUtils.copyProperties(consumer, consumerDTO); + consumerDTO.setTakeUpSpace(fileService.takeUpSpace(consumerDTO.getId())); + consumerDTO.setPassword(null); + if (consumerDTO.getAvatar() == null) { + consumerDTO.setAvatar(""); + } + WebsiteSettingDO websiteSettingDO = mongoTemplate.findOne(new Query(), WebsiteSettingDO.class, SettingService.COLLECTION_NAME_WEBSITE_SETTING); + if (websiteSettingDO != null) { + consumerDTO.setNetdiskName(websiteSettingDO.getNetdiskName()); + consumerDTO.setNetdiskLogo(websiteSettingDO.getNetdiskLogo()); + consumerDTO.setIframe(websiteSettingDO.getIframe()); + consumerDTO.setExactSearch(fileProperties.getExactSearch()); + } + String newVersion = fileMonitor.hasNewVersion(); + if (!StrUtil.isBlank(newVersion)) { + consumerDTO.setNewVersion(newVersion); + } + return ResultUtil.success(consumerDTO); + } + + @Override + public ResponseResult info() { + if (StrUtil.isBlank(userLoginHolder.getUserId())) { + return ResultUtil.success(new ConsumerDTO()); + } + return userInfo(userLoginHolder.getUserId()); + } + + @Override + public ConsumerDO userInfoById(String userId) { + if (CharSequenceUtil.isBlank(userId)) { + return null; + } + return mongoTemplate.findById(userId, ConsumerDO.class, COLLECTION_NAME); + } + + @Override + public ResponseResult> userList(QueryUserDTO queryDTO) { + Query query = new Query(); + long count = mongoTemplate.count(query, COLLECTION_NAME); + MongoUtil.commonQuery(queryDTO, query); + if (!CharSequenceUtil.isBlank(queryDTO.getUsername())) { + query.addCriteria(Criteria.where(USERNAME).regex(queryDTO.getUsername(), "i")); + } + if (!CharSequenceUtil.isBlank(queryDTO.getShowName())) { + query.addCriteria(Criteria.where(SHOW_NAME).regex(queryDTO.getShowName(), "i")); + } + List userList = mongoTemplate.find(query, ConsumerDO.class, COLLECTION_NAME); + List consumerDTOList = userList.parallelStream().map(consumerDO -> { + ConsumerDTO consumerDTO = new ConsumerDTO(); + BeanUtils.copyProperties(consumerDO, consumerDTO); + List roleIds = consumerDO.getRoles(); + if (roleIds != null && !roleIds.isEmpty()) { + consumerDTO.setRoleList(roleService.getRoleList(roleIds)); + } + return consumerDTO; + }).toList(); + return ResultUtil.success(consumerDTOList).setCount(count); + } + + @Override + public List userListAll() { + Query query = new Query(); + List userList = mongoTemplate.find(query, ConsumerDO.class, COLLECTION_NAME); + return userList.parallelStream().map(consumerDO -> { + ConsumerDTO consumerDTO = new ConsumerDTO(); + consumerDTO.setUsername(consumerDO.getUsername()); + return consumerDTO; + }).toList(); + } + + @Override + public ResponseResult updatePass(ConsumerDO consumer) { + String userId = consumer.getId(); + String newPassword = consumer.getPassword(); + if (!CharSequenceUtil.isBlank(userId) && !CharSequenceUtil.isBlank(newPassword)) { + ConsumerDO consumer1 = mongoTemplate.findById(userId, ConsumerDO.class, COLLECTION_NAME); + if (consumer1 != null) { + if (newPassword.equals(consumer1.getPassword())) { + return ResultUtil.warning("新密码不能与旧密码相同!"); + } + updatePwd(userId, newPassword); + return ResultUtil.successMsg("修改成功!"); + } + } + return ResultUtil.warning("修改失败!"); + } + + @Override + public ResponseResult resetPass(ConsumerDO consumer) { + String userId = consumer.getId(); + if (!CharSequenceUtil.isBlank(userId)) { + String originalPwd = "jmalcloud"; + // password 1000:0b69ec810783195a102a73c12d4794c29d06904de2f95da1:37c6a397accb83909dc1d15824b8ffb6010649aad9567e99 + updatePwd(userId, originalPwd); + return ResultUtil.successMsg("重置密码成功!"); + } + return ResultUtil.error("重置失败!"); + } + + private void updatePwd(String userId, String originalPwd) { + if (originalPwd.length() < 8) { + throw new CommonException(ExceptionType.WARNING.getCode(), "密码长度不能少于8位"); + } + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(userId)); + Update update = new Update(); + String password = PasswordHash.createHash(originalPwd); + LocalDateTime now = LocalDateTime.now(TimeUntils.ZONE_ID); + update.set("password", password); + update.set("updateTime", now); + updateConsumer(userId, query, update); + } + + private void updateConsumer(String userId, Query query, Update update) { + mongoTemplate.upsert(query, update, COLLECTION_NAME); + ConsumerDO consumerDO = getUserInfoById(userId); + CaffeineUtil.setConsumerByUsernameCache(consumerDO.getUsername(), consumerDO); + } + + @Override + public String getUserIdByUserName(String username) { + ConsumerDO consumer = getUserInfoByUsername(username); + if (consumer != null) { + return consumer.getId(); + } + return null; + } + + public String getShowNameByUserUsername(String username) { + ConsumerDO consumer = getUserInfoByUsername(username); + if (consumer == null) { + return ""; + } + return consumer.getShowName(); + } + + @Override + public String getAvatarByUsername(String username) { + ConsumerDO consumer = getUserInfoByUsername(username); + if (consumer == null) { + return ""; + } + return consumer.getAvatar(); + } + + public String getHashPasswordUserName(String username) { + if (CharSequenceUtil.isBlank(username)) { + return null; + } + ConsumerDO consumer = getUserInfoByUsername(username); + if (consumer == null) { + return null; + } + return consumer.getPassword(); + } + + @Override + public ResponseResult hasUser() { + Query query = new Query(); + long count = mongoTemplate.count(query, COLLECTION_NAME); + if (count > 0) { + count = 1; + } + return ResultUtil.success(true).setCount(count); + } + + @Override + public synchronized ResponseResult initialization(ConsumerDTO consumerDTO) { + Query query = new Query(); + long count = mongoTemplate.count(query, COLLECTION_NAME); + if (count < 1) { + ConsumerDO user = new ConsumerDO(); + BeanUtils.copyProperties(consumerDTO, user); + // 首先初始化菜单和角色 + menuService.initMenus(); + roleService.initRoles(); + // 再初始化创建者 + String roleId = roleService.getRoleIdByCode(RoleService.ADMINISTRATORS); + user.setRoles(Collections.singletonList(roleId)); + user.setCreator(true); + user.setShowName(user.getUsername()); + user.setQuota((int) (SystemUtil.getFreeSpace() / 2)); + String originalPwd = user.getPassword(); + encryption(user, originalPwd); + user.setCreateTime(LocalDateTime.now(TimeUntils.ZONE_ID)); + user.setId(null); + // 新建用户目录 + createUserDir(user.getUsername()); + mongoTemplate.save(user, COLLECTION_NAME); + } + return ResultUtil.success(); + } + + /** + * 加密 + * + * @param user ConsumerBase + * @param originalPwd 原始密码 + */ + private static void encryption(ConsumerBase user, String originalPwd) { + String password = PasswordHash.createHash(originalPwd); + user.setPassword(password); + } + + @Override + public String getUserNameById(String userId) { + if (!CharSequenceUtil.isBlank(userId)) { + String username = CaffeineUtil.getUsernameCache(userId); + if (CharSequenceUtil.isBlank(username)) { + ConsumerDO consumer = mongoTemplate.findById(userId, ConsumerDO.class, COLLECTION_NAME); + if (consumer != null) { + username = consumer.getUsername(); + CaffeineUtil.setUsernameCache(userId, username); + return username; + } + } else { + return username; + } + } + return ""; + } + + @Override + public void disabledWebp(String userId, Boolean disabled) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(userId)); + Update update = new Update(); + update.set("webpDisabled", disabled); + updateConsumer(userId, query, update); + } + + @Override + public boolean getDisabledWebp(String userId) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(userId)); + ConsumerDO consumer = mongoTemplate.findOne(query, ConsumerDO.class, COLLECTION_NAME); + if (consumer != null && consumer.getWebpDisabled() != null) { + return consumer.getWebpDisabled(); + } + return true; + } + + @Override + public ConsumerDO getUserInfoByUsername(String name) { + ConsumerDO consumer = CaffeineUtil.getConsumerByUsernameCache(name); + if (consumer == null) { + consumer = getUserInfo(name); + if (consumer != null) { + CaffeineUtil.setConsumerByUsernameCache(name, consumer); + } + } + return consumer; + } + + @Override + public boolean isMfaEnabled(String username) { + ConsumerDO consumerDO = getUserInfoByUsername(username); + if (consumerDO == null) { + return false; + } + return BooleanUtil.isTrue(consumerDO.getMfaEnabled()); + } + + @Override + public void enableMfa(String userId, String rawSecret) { + // 加密密钥 + String encryptedSecret = textEncryptor.encrypt(rawSecret); + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(userId)); + Update update = new Update(); + update.set("mfaSecret", encryptedSecret); + update.set("mfaEnabled", true); + updateConsumer(userId, query, update); + } + + @Override + public void disableMfa(String userId) { + Query query = new Query(); + query.addCriteria(Criteria.where("_id").is(userId)); + Update update = new Update(); + update.unset("mfaSecret"); + update.unset("mfaEnabled"); + updateConsumer(userId, query, update); + } + + public ConsumerDO getUserInfoById(String userId) { + return mongoTemplate.findById(userId, ConsumerDO.class, COLLECTION_NAME); + } + + private ConsumerDO getUserInfo(String username) { + Query query = new Query(); + query.addCriteria(Criteria.where(USERNAME).is(username)); + return mongoTemplate.findOne(query, ConsumerDO.class, COLLECTION_NAME); + } + + @Override + public List getAuthorities(String username) { + List authorities = new ArrayList<>(); + ConsumerDO consumerDO = getUserInfoByUsername(username); + if (consumerDO == null) { + return authorities; + } + // 如果是创建者, 直接返回所有权限 + if (consumerDO.getCreator() != null && consumerDO.getCreator()) { + return AnnoManageUtil.AUTHORITIES; + } + List roleIdList = consumerDO.getRoles(); + if (roleIdList == null || roleIdList.isEmpty()) { + return authorities; + } + return roleService.getAuthorities(roleIdList); + } + + @Override + public List getMenuIdList(String userId) { + List menuIdList = new ArrayList<>(); + ConsumerDO consumerDO = mongoTemplate.findById(userId, ConsumerDO.class, COLLECTION_NAME); + if (consumerDO == null || consumerDO.getRoles() == null) { + return menuIdList; + } + if (consumerDO.getCreator() != null && consumerDO.getCreator()) { + // 如果是创建者则返回所有菜单 + return menuService.getAllMenuIdList(); + } + return roleService.getMenuIdList(consumerDO.getRoles()); + } + + @Override + public List getUserNameListByRole(String roleId) { + Query query = new Query(); + query.addCriteria(Criteria.where(ROLES).is(roleId)); + List userList = mongoTemplate.find(query, ConsumerDO.class, COLLECTION_NAME); + return userList.stream().map(ConsumerDO::getUsername).toList(); + } + + @Override + public List getUserNameListByRole(List rolesIds) { + Query query = new Query(); + query.addCriteria(Criteria.where(ROLES).in(rolesIds)); + List userList = mongoTemplate.find(query, ConsumerDO.class, COLLECTION_NAME); + return userList.stream().map(ConsumerDO::getUsername).toList(); + } + + @Override + public boolean getIsCreator(String userId) { + ConsumerDO consumerDO = mongoTemplate.findById(userId, ConsumerDO.class, COLLECTION_NAME); + if (consumerDO == null) { + return false; + } + return consumerDO.getCreator() != null && consumerDO.getCreator(); + } + + @Override + public String getUserIdByShowName(String showName) { + Query query = new Query(); + query.addCriteria(Criteria.where(SHOW_NAME).is(showName)); + ConsumerDO consumerDO = mongoTemplate.findOne(query, ConsumerDO.class, COLLECTION_NAME); + if (consumerDO != null) { + return consumerDO.getId(); + } + return ""; + } + + /** + * 获取创建者的头像 + * @return 头像文件Id + */ + public String getCreatorAvatar() { + Query query = new Query(); + query.addCriteria(Criteria.where("creator").is(true)); + ConsumerDO consumerDO = mongoTemplate.findOne(query, ConsumerDO.class, COLLECTION_NAME); + if (consumerDO == null) { + return null; + } + return consumerDO.getAvatar(); + } + + /** + * 获取创建者的用户名 + * @return 用户名 + */ + public String getCreatorUsername() { + Query query = new Query(); + query.addCriteria(Criteria.where("creator").is(true)); + ConsumerDO consumerDO = mongoTemplate.findOne(query, ConsumerDO.class, COLLECTION_NAME); + if (consumerDO == null) { + return null; + } + return consumerDO.getUsername(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/swagger/OpenApiConfig.java b/src/main/java/com/jmal/clouddisk/swagger/OpenApiConfig.java new file mode 100644 index 0000000..7e40440 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/swagger/OpenApiConfig.java @@ -0,0 +1,41 @@ +package com.jmal.clouddisk.swagger; + +import io.swagger.v3.oas.models.Components; +import io.swagger.v3.oas.models.ExternalDocumentation; +import io.swagger.v3.oas.models.OpenAPI; +import io.swagger.v3.oas.models.headers.Header; +import io.swagger.v3.oas.models.info.Info; +import io.swagger.v3.oas.models.info.License; +import io.swagger.v3.oas.models.media.StringSchema; +import io.swagger.v3.oas.models.parameters.HeaderParameter; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + + + +/** + * @author jmal + * @Description OpenApiConfig + * @Date 2020-01-31 22:04 + */ +@Configuration +public class OpenApiConfig { + + @Bean + public OpenAPI jmalCloudOpenApi(@Value("${version}") String appVersion) { + + //在配置好的配置类中增加此段代码即可 + + return new OpenAPI() + .components(new Components().addHeaders("jmal-token", new Header().description("myHeader2 header")) + .addParameters("myGlobalHeader", new HeaderParameter().required(true).name("jmal-token").description("").schema(new StringSchema()).required(false))) + .info(new Info().title("JmalCloud API") + .description("") + .version(appVersion) + .license(new License().name("MIT license").url("https://github.com/jamebal/jmal-cloud-view/blob/master/LICENSE"))) + .externalDocs(new ExternalDocumentation()); + } + + +} diff --git a/src/main/java/com/jmal/clouddisk/util/AudioFileUtils.java b/src/main/java/com/jmal/clouddisk/util/AudioFileUtils.java new file mode 100644 index 0000000..44b8dd9 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/AudioFileUtils.java @@ -0,0 +1,102 @@ +package com.jmal.clouddisk.util; + +import cn.hutool.core.img.ImgUtil; +import cn.hutool.core.util.StrUtil; +import com.jmal.clouddisk.model.Music; +import lombok.extern.slf4j.Slf4j; +import org.jaudiotagger.audio.AudioFile; +import org.jaudiotagger.audio.AudioFileIO; +import org.jaudiotagger.audio.exceptions.CannotReadException; +import org.jaudiotagger.audio.exceptions.InvalidAudioFrameException; +import org.jaudiotagger.audio.exceptions.ReadOnlyFileException; +import org.jaudiotagger.tag.FieldKey; +import org.jaudiotagger.tag.Tag; +import org.jaudiotagger.tag.TagException; +import org.jaudiotagger.tag.datatype.Artwork; +import org.jaudiotagger.tag.flac.FlacTag; +import org.jaudiotagger.tag.id3.AbstractID3v2Frame; +import org.jaudiotagger.tag.id3.ID3v23Tag; +import org.jaudiotagger.tag.id3.framebody.FrameBodyAPIC; +import org.jaudiotagger.tag.id3.framebody.FrameBodyTALB; +import org.jaudiotagger.tag.id3.framebody.FrameBodyTIT2; +import org.jaudiotagger.tag.id3.framebody.FrameBodyTPE1; + +import java.io.File; +import java.io.IOException; + +/*** + * 读取音频文件信息工具 + * @author jmal + */ +@Slf4j +public class AudioFileUtils { + + private static final String SONGNAME_TAG = "TIT2"; + private static final String SINGER_TAG = "TPE1"; + private static final String ALBUM_TAG = "TALB"; + private static final String COVER_TAG = "APIC"; + + public static Music readAudio(File file) { + Music music = new Music(); + try { + AudioFile audioFile = AudioFileIO.read(file); + Tag audioFileTag = audioFile.getTag(); + if (audioFileTag instanceof FlacTag tag) { + System.out.println(tag.getFirst(FieldKey.TITLE)); + Artwork artwork = tag.getFirstArtwork(); + if (artwork != null) { + String Base64 = ImgUtil.toBase64(ImgUtil.toImage(artwork.getBinaryData()), artwork.getMimeType()); + music.setCoverBase64(Base64); + } + } + if (audioFileTag instanceof ID3v23Tag tag) { + String songName = ""; + String singer = ""; + String album = ""; + if (tag.frameMap != null) { + if (tag.frameMap.get(SONGNAME_TAG) != null) { + // 歌名 + AbstractID3v2Frame frame = (AbstractID3v2Frame) tag.frameMap.get(SONGNAME_TAG); + FrameBodyTIT2 framebodytit2 = (FrameBodyTIT2) frame.getBody(); + songName = framebodytit2.getText(); + if (StrUtil.isEmpty(songName)) { + songName = "未知歌曲"; + } + music.setSongName(songName); + } + if (tag.frameMap.get(SINGER_TAG) != null) { + // 歌手 + AbstractID3v2Frame frame = (AbstractID3v2Frame) tag.frameMap.get(SINGER_TAG); + FrameBodyTPE1 framebodytpe1 = (FrameBodyTPE1) frame.getBody(); + singer = framebodytpe1.getText(); + if (StrUtil.isEmpty(singer)) { + singer = "未知歌手"; + } + music.setSinger(singer); + } + if (tag.frameMap.get(ALBUM_TAG) != null) { + // 专辑 + AbstractID3v2Frame frame = (AbstractID3v2Frame) tag.frameMap.get(ALBUM_TAG); + FrameBodyTALB frameBodyTALB = (FrameBodyTALB) frame.getBody(); + album = frameBodyTALB.getText(); + if (StrUtil.isEmpty(album)) { + album = "未知专辑"; + } + music.setAlbum(album); + } + if (tag.frameMap.get(COVER_TAG) != null) { + // 封面 + AbstractID3v2Frame frame = (AbstractID3v2Frame) tag.frameMap.get(COVER_TAG); + FrameBodyAPIC body4 = (FrameBodyAPIC) frame.getBody(); + String Base64 = cn.hutool.core.codec.Base64.encode(body4.getImageData()); + music.setCoverBase64(Base64); + } + } + } + } catch (CannotReadException | IOException | TagException | ReadOnlyFileException | InvalidAudioFrameException e) { + log.warn(e.getMessage()); + } + return music; + } + +} diff --git a/src/main/java/com/jmal/clouddisk/util/CaffeineUtil.java b/src/main/java/com/jmal/clouddisk/util/CaffeineUtil.java new file mode 100644 index 0000000..44369f8 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/CaffeineUtil.java @@ -0,0 +1,309 @@ +package com.jmal.clouddisk.util; + +import com.github.benmanes.caffeine.cache.Cache; +import com.github.benmanes.caffeine.cache.Caffeine; +import com.jmal.clouddisk.model.rbac.ConsumerDO; +import com.jmal.clouddisk.oss.BucketInfo; +import com.jmal.clouddisk.webdav.MyWebdavServlet; +import jakarta.annotation.PostConstruct; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Component; + +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.List; +import java.util.concurrent.CopyOnWriteArrayList; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.locks.Lock; + +/** + * CaffeineUtil + * + * @author jmal + */ +@Component +@Slf4j +public class CaffeineUtil { + + /** + * 上传文件缓存, 用于判断文件是否刚刚上传, 避免一些重复的操作 + */ + public static final Cache UPLOAD_FILE_CACHE = Caffeine.newBuilder().expireAfterWrite(5, TimeUnit.SECONDS).build(); + + /** + * 文件历史记录缓存, 避免过于频繁的记录文件历史,3分钟内只记录一次 + */ + public static final Cache FILE_HISTORY_CACHE = Caffeine.newBuilder().expireAfterWrite(3, TimeUnit.MINUTES).build(); + + /** + * 缩略图请求缓存 + */ + private static final Cache THUMBNAIL_REQUEST_CACHE = Caffeine.newBuilder().expireAfterWrite(60, TimeUnit.SECONDS).build(); + + /** + * 用户oss存储路径前缀缓存 + * key: 路径前缀,例如:/jmal/aliyunStorage ,其中jmal为用户名,aliyunStorage 为oss存储的挂载文件夹名称,由用户自定义 + * value: BucketInfo + */ + private static final Cache OSS_DIAMETER_PREFIX_CACHE = Caffeine.newBuilder().build(); + + /*** + * 空间已满的用户 + */ + private static final Cache SPACE_FULL = Caffeine.newBuilder().build(); + + /*** + * 用户信息缓存 + * key: username + * value: ConsumerDO 用户信息 + */ + public static final Cache CONSUMER_USERNAME = Caffeine.newBuilder().build(); + + /*** + * 已上传的分片索引 + */ + private static Cache> resumeCache; + + /*** + * 已写入的分片索引 + */ + private static Cache> writtenCache; + + /*** + * 未写入(已上传)的分片索引 + */ + private static Cache> unWrittenCache; + + /*** + * 分片写锁 + */ + private static Cache chunkWriteLockCache; + + /** + * 上传文件锁 + */ + private static Cache uploadFileLockCache; + + /*** + * 用户身份权限缓存 + * key: username + * value: 权限标识列表 + */ + private static final Cache> AUTHORITIES_CACHE = Caffeine.newBuilder().build(); + + /** + * 缓存userId + * key: username + * value: userId + */ + private static final Cache USER_ID_CACHE = Caffeine.newBuilder().build(); + + /** + * 缓存username + * key: userId + * value: username + */ + private static final Cache USERNAME_CACHE = Caffeine.newBuilder().build(); + + public static List getAuthoritiesCache(String username) { + return AUTHORITIES_CACHE.getIfPresent(username); + } + + /*** + * 缓存中是否存在该username的权限 + * @param username username + * @return bool + */ + public static boolean existsAuthoritiesCache(String username) { + return AUTHORITIES_CACHE.getIfPresent(username) != null; + } + + public static void setAuthoritiesCache(String username, List authorities) { + AUTHORITIES_CACHE.put(username, authorities); + } + + public static void removeAuthoritiesCache(String username) { + AUTHORITIES_CACHE.invalidate(username); + } + + public static String getUserIdCache(String username) { + return USER_ID_CACHE.getIfPresent(username); + } + + public static void setUserIdCache(String username, String userId) { + USER_ID_CACHE.put(username, userId); + } + + public static void removeUserIdCache(String username) { + USER_ID_CACHE.invalidate(username); + } + + @PostConstruct + public void initCache(){ + initMyCache(); + } + + public static void initMyCache(){ + if(resumeCache == null){ + resumeCache = Caffeine.newBuilder().build(); + } + if(writtenCache == null){ + writtenCache = Caffeine.newBuilder().build(); + } + if(unWrittenCache == null){ + unWrittenCache = Caffeine.newBuilder().build(); + } + if(chunkWriteLockCache == null){ + chunkWriteLockCache = Caffeine.newBuilder().build(); + } + if(uploadFileLockCache == null) { + uploadFileLockCache = Caffeine.newBuilder().build(); + } + } + + public static Cache> getResumeCache(){ + if(resumeCache == null){ + initMyCache(); + } + return resumeCache; + } + + public static Cache> getWrittenCache(){ + if(writtenCache == null){ + initMyCache(); + } + return writtenCache; + } + + public static Cache> getUnWrittenCacheCache(){ + if(unWrittenCache == null){ + initMyCache(); + } + return unWrittenCache; + } + + public static Cache getChunkWriteLockCache(){ + if(chunkWriteLockCache == null){ + initMyCache(); + } + return chunkWriteLockCache; + } + + public static Cache getUploadFileLockCache(){ + if(uploadFileLockCache == null){ + initMyCache(); + } + return uploadFileLockCache; + } + + public static void setSpaceFull(String userId) { + SPACE_FULL.put(userId, userId); + } + + public static void removeSpaceFull(String userId) { + SPACE_FULL.invalidate(userId); + } + + public static boolean spaceFull(String userId) { + return SPACE_FULL.getIfPresent(userId) != null; + } + + /** + * 根据用户名获取用户信息 + */ + public static ConsumerDO getConsumerByUsernameCache(String username) { + return CONSUMER_USERNAME.getIfPresent(username); + } + + /** + * 更新用户信息 + */ + public static void setConsumerByUsernameCache(String username, ConsumerDO consumerDO) { + CONSUMER_USERNAME.put(username, consumerDO); + } + + /** + * 删除用户信息 + */ + public static void removeConsumerListByUsernameCache(List list) { + list.forEach(consumerDO -> removeConsumerByUsernameCache(consumerDO.getUsername())); + } + + /** + * 删除用户信息 + */ + public static void removeConsumerByUsernameCache(String username) { + CONSUMER_USERNAME.invalidate(username); + } + + + public static void setOssDiameterPrefixCache(String path, BucketInfo bucketInfo) { + OSS_DIAMETER_PREFIX_CACHE.put(path, bucketInfo); + } + + public static BucketInfo getOssDiameterPrefixCache(String path) { + return OSS_DIAMETER_PREFIX_CACHE.getIfPresent(path); + } + + public static void removeOssDiameterPrefixCache(String path) { + OSS_DIAMETER_PREFIX_CACHE.invalidate(path); + } + + /** + * 获取oss path + * @param path url path + * @return oss path + */ + public static String getOssPath(Path path) { + path = Paths.get(FileNameUtils.safeDecode(path.toString())); + String prePath; + if (path.getNameCount() >= 2) { + prePath = MyWebdavServlet.PATH_DELIMITER + path.subpath(0, 2); + } else { + return null; + } + for (String prefixPath : OSS_DIAMETER_PREFIX_CACHE.asMap().keySet()) { + if (prePath.equals(prefixPath)){ + return prefixPath; + } + } + return null; + } + + public static Boolean hasUploadFileCache(String key) { + Long uploadTime = UPLOAD_FILE_CACHE.getIfPresent(key); + if (uploadTime == null) { + return false; + } + return System.currentTimeMillis() - uploadTime > 5; + } + + public static void setUploadFileCache(String key) { + UPLOAD_FILE_CACHE.put(key, System.currentTimeMillis()); + } + + public static Boolean hasThumbnailRequestCache(String id) { + return THUMBNAIL_REQUEST_CACHE.get(id, key -> false); + } + + public static void setThumbnailRequestCache(String id) { + THUMBNAIL_REQUEST_CACHE.put(id, true); + } + + public static String getUsernameCache(String userId) { + return USERNAME_CACHE.getIfPresent(userId); + } + + public static void setUsernameCache(String userId, String username) { + USERNAME_CACHE.put(userId, username); + } + + public static void setFileHistoryCache(String filepath) { + FILE_HISTORY_CACHE.put(filepath, System.currentTimeMillis()); + } + + public static boolean hasFileHistoryCache(String filepath) { + return FILE_HISTORY_CACHE.getIfPresent(filepath) != null; + } + +} diff --git a/src/main/java/com/jmal/clouddisk/util/CalcMd5.java b/src/main/java/com/jmal/clouddisk/util/CalcMd5.java new file mode 100644 index 0000000..3744dfb --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/CalcMd5.java @@ -0,0 +1,84 @@ +package com.jmal.clouddisk.util; + +import java.io.File; +import java.io.IOException; +import java.io.InputStream; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.StandardOpenOption; +import java.security.MessageDigest; +import java.security.NoSuchAlgorithmException; + + +/*** + * 计算文件md5 + * @author jmal + */ +public class CalcMd5 { + + private static MessageDigest md5; + + static { + try { + md5 = MessageDigest.getInstance("MD5"); + } catch (NoSuchAlgorithmException e) { + e.printStackTrace(); + } + } + + private static final char[] HEX_CODE = "0123456789ABCDEF".toCharArray(); + + public static void main(String[] args) { + + long beginTime = System.currentTimeMillis(); + File file = new File("/Users/jmal/temp/filetest/rootpath/jmal/视频/南沙天后宫(1).mp4"); + //File file = new File("E:/拉鲁斯法汉双解词典(12新)/制作文件库/其他/SJ00040936 拉鲁斯法汉双解词典(内文排版).zip"); + String md5 = calcMD5(file); + long endTime = System.currentTimeMillis(); + System.out.println("MD5:" + md5 + "\n 耗时:" + ((endTime - beginTime) / 1000) + "s"); + } + + /** + * 计算文件 MD5 + * @param file + * @return 返回文件的md5字符串,如果计算过程中任务的状态变为取消或暂停,返回null, 如果有其他异常,返回空字符串 + */ + public static String calcMD5(File file) { + try (InputStream stream = Files.newInputStream(file.toPath(), StandardOpenOption.READ)) { + MessageDigest digest = MessageDigest.getInstance("MD5"); + byte[] buf = new byte[8192]; + int len; + while ((len = stream.read(buf)) > 0) { + digest.update(buf, 0, len); + } + return toHexString(digest.digest()); + } catch (IOException | NoSuchAlgorithmException e) { + e.printStackTrace(); + return ""; + } + } + + public static String toHexString(byte[] data) { + StringBuilder r = new StringBuilder(data.length * 2); + for (byte b : data) { + r.append(HEX_CODE[(b >> 4) & 0xF]); + r.append(HEX_CODE[(b & 0xF)]); + } + return r.toString(); + } + + public static String getMd5(String string) { + byte[] bs = md5.digest(string.getBytes(StandardCharsets.UTF_8)); + StringBuilder sb = new StringBuilder(40); + for (byte x : bs) { + if ((x & 0xff) >> 4 == 0) { + sb.append("0").append(Integer.toHexString(x & 0xff)); + } else { + sb.append(Integer.toHexString(x & 0xff)); + } + } + return sb.toString(); + } + + +} diff --git a/src/main/java/com/jmal/clouddisk/util/CompressUtils.java b/src/main/java/com/jmal/clouddisk/util/CompressUtils.java new file mode 100644 index 0000000..944cac2 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/CompressUtils.java @@ -0,0 +1,263 @@ +package com.jmal.clouddisk.util; + +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.io.IoUtil; +import com.jmal.clouddisk.exception.CommonException; +import com.jmal.clouddisk.exception.ExceptionType; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.compress.archivers.ArchiveEntry; +import org.apache.commons.compress.archivers.jar.JarArchiveEntry; +import org.apache.commons.compress.archivers.jar.JarArchiveInputStream; +import org.apache.commons.compress.archivers.tar.TarArchiveEntry; +import org.apache.commons.compress.archivers.tar.TarArchiveInputStream; +import org.apache.commons.compress.compressors.bzip2.BZip2CompressorInputStream; +import org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream; +import org.apache.tools.zip.ZipEntry; +import org.apache.tools.zip.ZipFile; +import org.apache.tools.zip.ZipOutputStream; + +import java.io.*; +import java.nio.file.*; +import java.nio.file.attribute.BasicFileAttributes; +import java.util.Enumeration; +import java.util.List; +import java.util.Objects; + +/** + * 压缩文件夹工具类 + * + * @author jmal + */ +@Slf4j +public class CompressUtils { + + public static void compress(List paths, OutputStream outputStream) { + try (ZipOutputStream zipOut = new ZipOutputStream(outputStream)) { + // 遍历每个路径 + // 遍历每个路径并处理 + for (Path path : paths) { + if (Files.isDirectory(path)) { + // 处理文件夹及其内容 + addDirectoryToZip(path.getParent(), path, zipOut); + } else { + // 直接处理文件 + addToZip(path.getParent(), path, zipOut); + } + } + } catch (IOException e) { + log.warn("压缩文件失败", e); + } + } + + private static void addDirectoryToZip(Path rootDir, Path sourceDir, ZipOutputStream zipOut) throws IOException { + // 遍历文件夹及其子文件夹内容 + Files.walkFileTree(sourceDir, new SimpleFileVisitor<>() { + @Override + public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException { + addToZip(rootDir, file, zipOut); + return FileVisitResult.CONTINUE; + } + + @Override + public FileVisitResult preVisitDirectory(Path dir, BasicFileAttributes attrs) throws IOException { + if (!dir.equals(sourceDir)) { + addToZip(rootDir, dir, zipOut); + } + return FileVisitResult.CONTINUE; + } + }); + } + + private static void addToZip(Path rootDir, Path file, ZipOutputStream zipOut) throws IOException { + String zipEntryName = rootDir.relativize(file).toString().replace("\\", "/"); + if (Files.isDirectory(file)) { + zipEntryName += "/"; + } + ZipEntry zipEntry = new ZipEntry(zipEntryName); + zipOut.putNextEntry(zipEntry); + if (!Files.isDirectory(file)) { + Files.copy(file, zipOut); + } + zipOut.closeEntry(); + } + + public static void decompress(String filePath, String outputDir, boolean isWrite) { + File file = new File(filePath); + if (!file.exists()) { + throw new CommonException(ExceptionType.FILE_NOT_FIND); + } + try { + if (filePath.endsWith(".zip")) { + unZip(file, outputDir, isWrite); + } else if (filePath.endsWith(".tar")) { + decompressTar(file, outputDir, isWrite); + } else if (filePath.endsWith(".7z")) { + decompressSevenZ(file, outputDir, isWrite); + } else if (filePath.endsWith(".rar")) { + decompressRar(file, outputDir, isWrite); + } else if (filePath.endsWith(".jar")) { + decompressJar(file, outputDir, isWrite); + } else if (filePath.endsWith(".tar.gz") || filePath.endsWith(".tgz") || filePath.endsWith(".gz")) { + decompressTarGz(file, outputDir, isWrite); + } else if (filePath.endsWith(".tar.bz2")) { + decompressTarBz2(file, outputDir, isWrite); + } else { + throw new CommonException(ExceptionType.UNRECOGNIZED_FILE); + } + } catch (IOException e) { + log.error(e.getMessage(), e); + throw new CommonException(ExceptionType.FAIL_DECOMPRESS + e.getMessage()); + } + } + + /** + * 解压 .zip 文件 + * + * @param file 要解压的zip文件对象 + * @param outputDir 要解压到某个指定的目录下 + * @param isWrite 是否输出文件 + */ + public static void unZip(File file, String outputDir, boolean isWrite) throws IOException { + ZipFile zipFile = new ZipFile(file, "utf-8"); + //创建输出目录 + createDirectory(outputDir, null); + Enumeration enums = zipFile.getEntries(); + while (enums.hasMoreElements()) { + org.apache.tools.zip.ZipEntry entry = (ZipEntry) enums.nextElement(); + InputStream in = zipFile.getInputStream(entry); + decompress(outputDir, isWrite, in, entry.isDirectory(), entry.getName()); + } + zipFile.close(); + } + + private static void decompress(String outputDir, boolean isWrite, InputStream in, boolean directory, String name) throws FileNotFoundException { + if (directory) { + //创建空目录 + createDirectory(outputDir, name); + } else { + Path parentPath = Paths.get(outputDir, name).getParent(); + if (!Files.exists(parentPath)) { + FileUtil.mkdir(parentPath.toFile()); + } + OutputStream out = new FileOutputStream(outputDir + File.separator + name); + if (isWrite) { + IoUtil.copy(in, out); + } + } + } + + public static void decompressTarGz(File file, String outputDir, boolean isWrite) throws IOException { + TarArchiveInputStream tarIn = new TarArchiveInputStream(new GzipCompressorInputStream(new BufferedInputStream(new FileInputStream(file)))); + //创建输出目录 + createDirectory(outputDir, null); + TarArchiveEntry entry; + while ((entry = tarIn.getNextEntry()) != null) { + decompress(outputDir, isWrite, tarIn, entry); + } + } + + public static void decompressJar(File file, String outputDir, boolean isWrite) throws IOException { + JarArchiveInputStream inputStream = new JarArchiveInputStream(new FileInputStream(file)); + // 创建输出目录 + createDirectory(outputDir, null); + JarArchiveEntry entry; + while (Objects.nonNull(entry = inputStream.getNextEntry())) { + decompress(outputDir, isWrite, inputStream, entry); + } + } + + private static void decompressSevenZ(File sevenZFile, String outputDir, boolean isWrite) throws IOException { + previewNotSupported(sevenZFile, isWrite); + // 创建输出目录 + createDirectory(outputDir, null); + ProcessBuilder processBuilder = new ProcessBuilder(); + processBuilder.command("7z", "x", sevenZFile.getAbsolutePath(), "-o" + outputDir, "-y"); + // 将输出和错误流重定向到空输出流 + executingCommand(processBuilder, "7z"); + } + + private static void previewNotSupported(File sevenZFile, boolean isWrite) { + if (!isWrite) { + // 如果文件超过200M, 提示直接下载 + if (sevenZFile.length() > 200 * 1024 * 1024) { + throw new CommonException(ExceptionType.CUSTOM_EXCEPTION.getCode(), "文件过大, 不支持预览, 请解压或下载后查看"); + } + } + } + + private static void decompressRar(File sevenZFile, String outputDir, boolean isWrite) throws IOException { + previewNotSupported(sevenZFile, isWrite); + // 创建输出目录 + createDirectory(outputDir, null); + ProcessBuilder processBuilder = new ProcessBuilder(); + processBuilder.command("unrar", "x", "-o+", sevenZFile.getAbsolutePath(), outputDir); + executingCommand(processBuilder, "rar"); + } + + private static void executingCommand(ProcessBuilder processBuilder, String type) throws IOException { + // 将输出和错误流重定向到空输出流 + processBuilder.redirectOutput(ProcessBuilder.Redirect.DISCARD); + processBuilder.redirectError(ProcessBuilder.Redirect.DISCARD); + try { + Process process = processBuilder.start(); + int exitCode = process.waitFor(); + if (exitCode != 0) { + throw new RuntimeException("Failed to extract " + type + " file. Exit code: " + exitCode); + } + } catch (InterruptedException e) { + Thread.currentThread().interrupt(); + throw new RuntimeException("Extraction interrupted", e); + } + } + + public static void decompressTar(File file, String outputDir, boolean isWrite) throws IOException { + TarArchiveInputStream inputStream = new TarArchiveInputStream(new FileInputStream(file)); + //创建输出目录 + createDirectory(outputDir, null); + TarArchiveEntry entry; + while (Objects.nonNull(entry = inputStream.getNextEntry())) { + decompress(outputDir, isWrite, inputStream, entry); + } + } + + /** + * 解压缩tar.bz2文件 + * + * @param file 压缩包文件 + * @param outputDir 目标文件夹 + */ + public static void decompressTarBz2(File file, String outputDir, boolean isWrite) throws IOException { + TarArchiveInputStream tarIn = new TarArchiveInputStream(new BZip2CompressorInputStream(new FileInputStream(file))); + createDirectory(outputDir, null); + TarArchiveEntry entry; + while (Objects.nonNull(entry = tarIn.getNextEntry())) { + decompress(outputDir, isWrite, tarIn, entry); + } + } + + private static void decompress(String outputDir, boolean isWrite, InputStream inputStream, ArchiveEntry entry) throws IOException { + //是目录 + decompress(outputDir, isWrite, inputStream, entry.isDirectory(), entry.getName()); + } + + /** + * 创建目录 + * + * @param outputDir 输出目录 + * @param subDir 子目录 + */ + public static void createDirectory(String outputDir, String subDir) { + File file = new File(outputDir); + //子目录不为空 + if (!(subDir == null || subDir.trim().isEmpty())) { + file = new File(outputDir + File.separator + subDir); + } + if (!file.exists()) { + if (!file.getParentFile().exists()) { + FileUtil.mkdir(file.getParentFile()); + } + FileUtil.mkdir(file); + } + } + +} diff --git a/src/main/java/com/jmal/clouddisk/util/FFMPEGUtils.java b/src/main/java/com/jmal/clouddisk/util/FFMPEGUtils.java new file mode 100644 index 0000000..4866628 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/FFMPEGUtils.java @@ -0,0 +1,80 @@ +package com.jmal.clouddisk.util; + +import cn.hutool.core.io.FileUtil; +import lombok.extern.slf4j.Slf4j; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.util.concurrent.TimeUnit; + +@Slf4j +public class FFMPEGUtils { + public static void printErrorInfo(ProcessBuilder processBuilder, Process process) throws IOException { + printErrorInfo(processBuilder); + // 打印process的错误输出 + try (InputStream inputStream = process.getErrorStream(); + BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream))) { + String line; + while ((line = reader.readLine()) != null) { + log.error(line); + } + } + } + + public static void printErrorInfo(ProcessBuilder processBuilder) { + // 打印命令 用空格连接 + String command = String.join(" ", processBuilder.command()); + log.error("命令 执行失败, command: \r\n{}", command); + } + + public static void printSuccessInfo(ProcessBuilder processBuilder) { + // 打印命令 用空格连接 + String command = String.join(" ", processBuilder.command()); + log.info("命令 执行成功, command: \r\n{}", command); + } + + /** + * 等待处理结果 + * @param outputPath 输出文件路径 + * @param processBuilder 处理器 + * @return outputPath + */ + public static String getWaitingForResults(String outputPath, ProcessBuilder processBuilder, Process process) throws IOException, InterruptedException { + return getWaitingForResults(outputPath, processBuilder, process, 12); + } + + public static String getWaitingForResults(String outputPath, ProcessBuilder processBuilder, Process process, int waitSeconds) throws InterruptedException, IOException { + boolean finished = process.waitFor(waitSeconds, TimeUnit.SECONDS); + try { + log.debug("finished: {}", finished); + log.debug("exitValue: {}", process.exitValue()); + if (finished && process.exitValue() == 0) { + if (FileUtil.exist(outputPath)) { + return outputPath; + } else { + log.error("处理完成后输出文件不存在。"); + } + } + } catch (IllegalThreadStateException e) { + log.error(e.getMessage()); + } + if (!finished) { + // 超时后处理 + process.destroy(); // 尝试正常终止 + process.destroyForcibly(); // 强制终止 + log.error("进程超时并被终止。"); + TimeUnit.SECONDS.sleep(2); + printErrorInfo(processBuilder); + } else { + // 进程结束但退出码非0 + printErrorInfo(processBuilder, process); + } + if (FileUtil.exist(outputPath)) { + return outputPath; + } + return null; + } + +} diff --git a/src/main/java/com/jmal/clouddisk/util/FastImageInfo.java b/src/main/java/com/jmal/clouddisk/util/FastImageInfo.java new file mode 100644 index 0000000..6650719 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/FastImageInfo.java @@ -0,0 +1,154 @@ +package com.jmal.clouddisk.util; + +import cn.hutool.core.lang.Console; +import lombok.Data; +import lombok.extern.slf4j.Slf4j; + +import java.io.*; + +/** + * 快速获取图片的分辨率 + */ +@Data +@Slf4j +public class FastImageInfo { + private int height; + private int width; + private String mimeType; + + public FastImageInfo(File file) { + try (InputStream is = new FileInputStream(file)) { + processStream(is); + } catch (IOException e) { + log.warn("获取图片尺寸失败, {}", file); + } + } + + private void processStream(InputStream is) throws IOException { + int c1 = is.read(); + int c2 = is.read(); + int c3 = is.read(); + + mimeType = null; + width = height = -1; + + if (c1 == 'G' && c2 == 'I' && c3 == 'F') { + // GIF + is.skip(3); + width = readInt(is, 2, false); + height = readInt(is, 2, false); + mimeType = "image/gif"; + } else if (c1 == 0xFF && c2 == 0xD8) { + // JPG + while (c3 == 255) { + int marker = is.read(); + int len = readInt(is, 2, true); + if (marker == 192 || marker == 193 || marker == 194) { + is.skip(1); + height = readInt(is, 2, true); + width = readInt(is, 2, true); + mimeType = "image/jpeg"; + break; + } + is.skip(len - 2); + c3 = is.read(); + } + } else if (c1 == 137 && c2 == 80 && c3 == 78) { + // PNG + is.skip(15); + width = readInt(is, 2, true); + is.skip(2); + height = readInt(is, 2, true); + mimeType = "image/png"; + } else if (c1 == 66 && c2 == 77) { + // BMP + is.skip(15); + width = readInt(is, 2, false); + is.skip(2); + height = readInt(is, 2, false); + mimeType = "image/bmp"; + } else if (c1 == 'R' && c2 == 'I' && c3 == 'F') { + // WEBP + byte[] bytes = new byte[1024]; + is.read(bytes, 0 ,27); + width = ((int) bytes[24] & 0xff) << 8 | ((int) bytes[23] & 0xff); + height = ((int) bytes[26] & 0xff) << 8 | ((int) bytes[25] & 0xff); + mimeType = "image/webp"; + } else if (c1 == 'f' && c2 == 't' && c3 == 'y') { + // HEIC/AVIF + is.skip(5); + byte[] bytes = new byte[4]; + is.read(bytes, 0, 4); + String type = new String(bytes); + if ("heic".equals(type) || "avif".equals(type)) { + mimeType = type.equals("heic") ? "image/heic" : "image/avif"; + is.skip(16); + width = readInt(is, 2, true); + is.skip(2); + height = readInt(is, 2, true); + } + } else { + //TIFF + int c4 = is.read(); + if ((c1 == 'M' && c2 == 'M' && c3 == 0 && c4 == 42) || (c1 == 'I' && c2 == 'I' && c3 == 42 && c4 == 0)) { + boolean bigEndian = c1 == 'M'; + int ifd = 0; + int entries; + ifd = readInt(is, 4, bigEndian); + is.skip(ifd - 8); + entries = readInt(is, 2, bigEndian); + for (int i = 1; i <= entries; i++) { + int tag = readInt(is, 2, bigEndian); + int fieldType = readInt(is, 2, bigEndian); + int valOffset; + if ((fieldType == 3 || fieldType == 8)) { + valOffset = readInt(is, 2, bigEndian); + is.skip(2); + } else { + valOffset = readInt(is, 4, bigEndian); + } + if (tag == 256) { + width = valOffset; + } else if (tag == 257) { + height = valOffset; + } + if (width != -1 && height != -1) { + mimeType = "image/tiff"; + break; + } + } + } + } + if (mimeType == null) { + throw new IOException("Unsupported image type"); + } + } + + private int readInt(InputStream is, int noOfBytes, boolean bigEndian) throws IOException { + int ret = 0; + int sv = bigEndian ? ((noOfBytes - 1) * 8) : 0; + int cnt = bigEndian ? -8 : 8; + for (int i = 0; i < noOfBytes; i++) { + ret |= is.read() << sv; + sv += cnt; + } + return ret; + } + + @Override + public String toString() { + return "MIME Type : " + mimeType + "\t Width : " + width + + "\t Height : " + height; + } + + public static void main(String[] args) throws IOException { + long s1 = System.currentTimeMillis(); + String path = "/Users/jmal/Pictures/壁纸/WechatIMG15108.jpeg"; + FastImageInfo imageInfo = new FastImageInfo(new File(path)); + int width = imageInfo.getWidth(); + int height = imageInfo.getHeight(); + Console.log(width," x ", height); + long e1 = System.currentTimeMillis(); + Console.log(e1 - s1 + "ms"); + } +} diff --git a/src/main/java/com/jmal/clouddisk/util/FileContentTypeUtils.java b/src/main/java/com/jmal/clouddisk/util/FileContentTypeUtils.java new file mode 100644 index 0000000..0b3cad7 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/FileContentTypeUtils.java @@ -0,0 +1,782 @@ +package com.jmal.clouddisk.util; + +import org.apache.tika.Tika; + +import java.io.File; +import java.io.InputStream; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.HashMap; +import java.util.Locale; +import java.util.Map; + +/** + * FileCONTENT_TYPE_MAPUtils + * + * @author jmal + */ +public class FileContentTypeUtils { + + private static final String UNSPLASH_MARKER = "crop&w"; + public static final String DEFAULT_CONTENT_TYPE = "application/octet-stream"; + public static final int MAX_DETECT_FILE_SIZE = 128 * 1024 * 1024; + private static final Tika TIKA_INSTANCE = new Tika(); + + private FileContentTypeUtils() { + throw new IllegalStateException("Utility class"); + } + + /** + * 根据文件后缀类型获取文件Content-Type + * + * @param extension 后缀 + * @return 文件Content-Type + */ + public static String getContentType(String extension) { + if (extension == null || extension.isEmpty()) { + return DEFAULT_CONTENT_TYPE; + } + String extLower = extension.toLowerCase(Locale.ROOT); + + if (extLower.contains(UNSPLASH_MARKER)) { + return "image/jpeg"; + } + return CONTENT_TYPE_MAP.getOrDefault(extLower, DEFAULT_CONTENT_TYPE); + } + + /** + * 根据文件后缀类型获取文件Content-Type + * + * @param ext 后缀 + * @return 文件Content-Type + */ + public static String getContentType(File file, String ext) { + if (file == null || !file.isFile()) { + return DEFAULT_CONTENT_TYPE; + } + String contentType = getContentType(ext); + + if (!contentType.equals(DEFAULT_CONTENT_TYPE)) { + return contentType; + } + + // 大于20M的文件返回默认类型 + if (file.length() > MAX_DETECT_FILE_SIZE) { + return contentType; + } + + // 如果通过扩展名得到的是默认类型,尝试使用 Tika 进行内容嗅探 + Path path = file.toPath(); + try (InputStream inputStream = Files.newInputStream(path)) { + String tikaDetectedType = TIKA_INSTANCE.detect(inputStream, file.getName()); + if (tikaDetectedType != null && !tikaDetectedType.isEmpty()) { + return tikaDetectedType; + } + } catch (Exception e) { + return contentType; + } + + return contentType; + } + + private static final Map CONTENT_TYPE_MAP = new HashMap<>(800); + + static { + CONTENT_TYPE_MAP.put("apk", "application/vnd.android.package-archive"); + CONTENT_TYPE_MAP.put("load", "text/html"); + CONTENT_TYPE_MAP.put("123", "application/vnd.lotus-1-2-3"); + CONTENT_TYPE_MAP.put("3ds", "image/x-3ds"); + CONTENT_TYPE_MAP.put("3g2", "video/3gpp"); + CONTENT_TYPE_MAP.put("3ga", "video/3gpp"); + CONTENT_TYPE_MAP.put("3gp", "video/3gpp"); + CONTENT_TYPE_MAP.put("3gpp", "video/3gpp"); + CONTENT_TYPE_MAP.put("602", "application/x-t602"); + CONTENT_TYPE_MAP.put("669", "audio/x-mod"); + CONTENT_TYPE_MAP.put("7z", "application/x-7z-compressed"); + CONTENT_TYPE_MAP.put("a", "application/x-archive"); + CONTENT_TYPE_MAP.put("aac", "audio/mp4"); + CONTENT_TYPE_MAP.put("abw", "application/x-abiword"); + CONTENT_TYPE_MAP.put("abw.crashed", "application/x-abiword"); + CONTENT_TYPE_MAP.put("abw.gz", "application/x-abiword"); + CONTENT_TYPE_MAP.put("ac3", "audio/ac3"); + CONTENT_TYPE_MAP.put("ace", "application/x-ace"); + CONTENT_TYPE_MAP.put("adb", "text/x-adasrc"); + CONTENT_TYPE_MAP.put("ads", "text/x-adasrc"); + CONTENT_TYPE_MAP.put("afm", "application/x-font-afm"); + CONTENT_TYPE_MAP.put("ag", "image/x-applix-graphics"); + CONTENT_TYPE_MAP.put("ai", "application/illustrator"); + CONTENT_TYPE_MAP.put("aif", "audio/x-aiff"); + CONTENT_TYPE_MAP.put("aifc", "audio/x-aiff"); + CONTENT_TYPE_MAP.put("aiff", "audio/x-aiff"); + CONTENT_TYPE_MAP.put("al", "application/x-perl"); + CONTENT_TYPE_MAP.put("alz", "application/x-alz"); + CONTENT_TYPE_MAP.put("amr", "audio/amr"); + CONTENT_TYPE_MAP.put("ani", "application/x-navi-animation"); + CONTENT_TYPE_MAP.put("anim[1-9j]", "video/x-anim"); + CONTENT_TYPE_MAP.put("anx", "application/annodex"); + CONTENT_TYPE_MAP.put("ape", "audio/x-ape"); + CONTENT_TYPE_MAP.put("arj", "application/x-arj"); + CONTENT_TYPE_MAP.put("arw", "image/x-sony-arw"); + CONTENT_TYPE_MAP.put("as", "application/x-applix-spreadsheet"); + CONTENT_TYPE_MAP.put("asc", "text/plain"); + CONTENT_TYPE_MAP.put("asf", "video/x-ms-asf"); + CONTENT_TYPE_MAP.put("asp", "application/x-asp"); + CONTENT_TYPE_MAP.put("ass", "text/x-ssa"); + CONTENT_TYPE_MAP.put("asx", "audio/x-ms-asx"); + CONTENT_TYPE_MAP.put("atom", "application/atom+xml"); + CONTENT_TYPE_MAP.put("au", "audio/basic"); + CONTENT_TYPE_MAP.put("avi", "video/x-msvideo"); + CONTENT_TYPE_MAP.put("aw", "application/x-applix-word"); + CONTENT_TYPE_MAP.put("awb", "audio/amr-wb"); + CONTENT_TYPE_MAP.put("awk", "application/x-awk"); + CONTENT_TYPE_MAP.put("axa", "audio/annodex"); + CONTENT_TYPE_MAP.put("axv", "video/annodex"); + CONTENT_TYPE_MAP.put("bak", "application/x-trash"); + CONTENT_TYPE_MAP.put("bcpio", "application/x-bcpio"); + CONTENT_TYPE_MAP.put("bdf", "application/x-font-bdf"); + CONTENT_TYPE_MAP.put("bib", "text/x-bibtex"); + CONTENT_TYPE_MAP.put("bin", "application/octet-stream"); + CONTENT_TYPE_MAP.put("blend", "application/x-blender"); + CONTENT_TYPE_MAP.put("blender", "application/x-blender"); + CONTENT_TYPE_MAP.put("bmp", "image/bmp"); + CONTENT_TYPE_MAP.put("bz", "application/x-bzip"); + CONTENT_TYPE_MAP.put("bz2", "application/x-bzip"); + CONTENT_TYPE_MAP.put("c", "text/x-csrc"); + CONTENT_TYPE_MAP.put("c++", "text/x-c++src"); + CONTENT_TYPE_MAP.put("cab", "application/vnd.ms-cab-compressed"); + CONTENT_TYPE_MAP.put("cb7", "application/x-cb7"); + CONTENT_TYPE_MAP.put("cbr", "application/x-cbr"); + CONTENT_TYPE_MAP.put("cbt", "application/x-cbt"); + CONTENT_TYPE_MAP.put("cbz", "application/x-cbz"); + CONTENT_TYPE_MAP.put("cc", "text/x-c++src"); + CONTENT_TYPE_MAP.put("cdf", "application/x-netcdf"); + CONTENT_TYPE_MAP.put("cdr", "application/vnd.corel-draw"); + CONTENT_TYPE_MAP.put("cer", "application/x-x509-ca-cert"); + CONTENT_TYPE_MAP.put("cert", "application/x-x509-ca-cert"); + CONTENT_TYPE_MAP.put("cgm", "image/cgm"); + CONTENT_TYPE_MAP.put("chm", "application/x-chm"); + CONTENT_TYPE_MAP.put("chrt", "application/x-kchart"); + CONTENT_TYPE_MAP.put("class", "application/x-java"); + CONTENT_TYPE_MAP.put("cls", "text/x-tex"); + CONTENT_TYPE_MAP.put("cmake", "text/x-cmake"); + CONTENT_TYPE_MAP.put("cpio", "application/x-cpio"); + CONTENT_TYPE_MAP.put("cpio.gz", "application/x-cpio-compressed"); + CONTENT_TYPE_MAP.put("cpp", "text/x-c++src"); + CONTENT_TYPE_MAP.put("cr2", "image/x-canon-cr2"); + CONTENT_TYPE_MAP.put("crt", "application/x-x509-ca-cert"); + CONTENT_TYPE_MAP.put("crw", "image/x-canon-crw"); + CONTENT_TYPE_MAP.put("cs", "text/x-csharp"); + CONTENT_TYPE_MAP.put("csh", "application/x-csh"); + CONTENT_TYPE_MAP.put("css", "text/css"); + CONTENT_TYPE_MAP.put("cssl", "text/css"); + CONTENT_TYPE_MAP.put("csv", "text/csv"); + CONTENT_TYPE_MAP.put("cue", "application/x-cue"); + CONTENT_TYPE_MAP.put("cur", "image/x-win-bitmap"); + CONTENT_TYPE_MAP.put("cxx", "text/x-c++src"); + CONTENT_TYPE_MAP.put("d", "text/x-dsrc"); + CONTENT_TYPE_MAP.put("dar", "application/x-dar"); + CONTENT_TYPE_MAP.put("dbf", "application/x-dbf"); + CONTENT_TYPE_MAP.put("dc", "application/x-dc-rom"); + CONTENT_TYPE_MAP.put("dcl", "text/x-dcl"); + CONTENT_TYPE_MAP.put("dcm", "application/dicom"); + CONTENT_TYPE_MAP.put("dcr", "image/x-kodak-dcr"); + CONTENT_TYPE_MAP.put("dds", "image/x-dds"); + CONTENT_TYPE_MAP.put("deb", "application/x-deb"); + CONTENT_TYPE_MAP.put("der", "application/x-x509-ca-cert"); + CONTENT_TYPE_MAP.put("desktop", "application/x-desktop"); + CONTENT_TYPE_MAP.put("dia", "application/x-dia-diagram"); + CONTENT_TYPE_MAP.put("diff", "text/x-patch"); + CONTENT_TYPE_MAP.put("divx", "video/x-msvideo"); + CONTENT_TYPE_MAP.put("djv", "image/vnd.djvu"); + CONTENT_TYPE_MAP.put("djvu", "image/vnd.djvu"); + CONTENT_TYPE_MAP.put("doc", "application/officedocument-msword"); + CONTENT_TYPE_MAP.put("docbook", "application/docbook+xml"); + CONTENT_TYPE_MAP.put("docm", "application/vnd.openxmlformats-officedocument.wordprocessingml.document"); + CONTENT_TYPE_MAP.put("docx", "application/vnd.openxmlformats-officedocument.wordprocessingml.document"); + CONTENT_TYPE_MAP.put("docxf", "application/vnd.openxmlformats-officeform.document"); + CONTENT_TYPE_MAP.put("dot", "text/vnd.graphviz"); + CONTENT_TYPE_MAP.put("dsl", "text/x-dsl"); + CONTENT_TYPE_MAP.put("dtd", "application/xml-dtd"); + CONTENT_TYPE_MAP.put("dtx", "text/x-tex"); + CONTENT_TYPE_MAP.put("dv", "video/dv"); + CONTENT_TYPE_MAP.put("dvi", "application/x-dvi"); + CONTENT_TYPE_MAP.put("dvi.bz2", "application/x-bzdvi"); + CONTENT_TYPE_MAP.put("dvi.gz", "application/x-gzdvi"); + CONTENT_TYPE_MAP.put("dwg", "application/acad"); + CONTENT_TYPE_MAP.put("dxf", "application/acad"); + CONTENT_TYPE_MAP.put("dwf", "application/acad"); + CONTENT_TYPE_MAP.put("iges", "application/acad"); + CONTENT_TYPE_MAP.put("igs", "application/acad"); + CONTENT_TYPE_MAP.put("dwt", "application/acad"); + CONTENT_TYPE_MAP.put("dng", "application/acad"); + CONTENT_TYPE_MAP.put("e", "text/x-eiffel"); + CONTENT_TYPE_MAP.put("egon", "application/x-egon"); + CONTENT_TYPE_MAP.put("eif", "text/x-eiffel"); + CONTENT_TYPE_MAP.put("el", "text/x-emacs-lisp"); + CONTENT_TYPE_MAP.put("emf", "image/x-emf"); + CONTENT_TYPE_MAP.put("emp", "application/vnd.emusic-emusic_package"); + CONTENT_TYPE_MAP.put("ent", "application/xml-external-parsed-entity"); + CONTENT_TYPE_MAP.put("eps", "image/x-eps"); + CONTENT_TYPE_MAP.put("eps.bz2", "image/x-bzeps"); + CONTENT_TYPE_MAP.put("eps.gz", "image/x-gzeps"); + CONTENT_TYPE_MAP.put("epsf", "image/x-eps"); + CONTENT_TYPE_MAP.put("epsf.bz2", "image/x-bzeps"); + CONTENT_TYPE_MAP.put("epsf.gz", "image/x-gzeps"); + CONTENT_TYPE_MAP.put("epsi", "image/x-eps"); + CONTENT_TYPE_MAP.put("epsi.bz2", "image/x-bzeps"); + CONTENT_TYPE_MAP.put("epsi.gz", "image/x-gzeps"); + CONTENT_TYPE_MAP.put("epub", "application/epub+zip"); + CONTENT_TYPE_MAP.put("erl", "text/x-erlang"); + CONTENT_TYPE_MAP.put("es", "application/ecmascript"); + CONTENT_TYPE_MAP.put("etheme", "application/x-e-theme"); + CONTENT_TYPE_MAP.put("etx", "text/x-setext"); + CONTENT_TYPE_MAP.put("exe", "application/x-ms-dos-executable"); + CONTENT_TYPE_MAP.put("exr", "image/x-exr"); + CONTENT_TYPE_MAP.put("ez", "application/andrew-inset"); + CONTENT_TYPE_MAP.put("f", "text/x-fortran"); + CONTENT_TYPE_MAP.put("f90", "text/x-fortran"); + CONTENT_TYPE_MAP.put("f95", "text/x-fortran"); + CONTENT_TYPE_MAP.put("fb2", "application/x-fictionbook+xml"); + CONTENT_TYPE_MAP.put("fig", "image/x-xfig"); + CONTENT_TYPE_MAP.put("fits", "image/fits"); + CONTENT_TYPE_MAP.put("fl", "application/x-fluid"); + CONTENT_TYPE_MAP.put("flac", "audio/x-flac"); + CONTENT_TYPE_MAP.put("flc", "video/x-flic"); + CONTENT_TYPE_MAP.put("fli", "video/x-flic"); + CONTENT_TYPE_MAP.put("flv", "video/x-flv"); + CONTENT_TYPE_MAP.put("flw", "application/x-kivio"); + CONTENT_TYPE_MAP.put("fo", "text/x-xslfo"); + CONTENT_TYPE_MAP.put("for", "text/x-fortran"); + CONTENT_TYPE_MAP.put("g3", "image/fax-g3"); + CONTENT_TYPE_MAP.put("gb", "application/x-gameboy-rom"); + CONTENT_TYPE_MAP.put("gba", "application/x-gba-rom"); + CONTENT_TYPE_MAP.put("gcrd", "text/directory"); + CONTENT_TYPE_MAP.put("ged", "application/x-gedcom"); + CONTENT_TYPE_MAP.put("gedcom", "application/x-gedcom"); + CONTENT_TYPE_MAP.put("gen", "application/x-genesis-rom"); + CONTENT_TYPE_MAP.put("gf", "application/x-tex-gf"); + CONTENT_TYPE_MAP.put("gg", "application/x-sms-rom"); + CONTENT_TYPE_MAP.put("gif", "image/gif"); + CONTENT_TYPE_MAP.put("glade", "application/x-glade"); + CONTENT_TYPE_MAP.put("gmo", "application/x-gettext-translation"); + CONTENT_TYPE_MAP.put("gnc", "application/x-gnucash"); + CONTENT_TYPE_MAP.put("gnd", "application/gnunet-directory"); + CONTENT_TYPE_MAP.put("gnucash", "application/x-gnucash"); + CONTENT_TYPE_MAP.put("gnumeric", "application/x-gnumeric"); + CONTENT_TYPE_MAP.put("gnuplot", "application/x-gnuplot"); + CONTENT_TYPE_MAP.put("gp", "application/x-gnuplot"); + CONTENT_TYPE_MAP.put("gpg", "application/pgp-encrypted"); + CONTENT_TYPE_MAP.put("gplt", "application/x-gnuplot"); + CONTENT_TYPE_MAP.put("gra", "application/x-graphite"); + CONTENT_TYPE_MAP.put("gsf", "application/x-font-type1"); + CONTENT_TYPE_MAP.put("gsm", "audio/x-gsm"); + CONTENT_TYPE_MAP.put("gtar", "application/x-tar"); + CONTENT_TYPE_MAP.put("gv", "text/vnd.graphviz"); + CONTENT_TYPE_MAP.put("gvp", "text/x-google-video-pointer"); + CONTENT_TYPE_MAP.put("gz", "application/x-gzip"); + CONTENT_TYPE_MAP.put("h", "text/x-chdr"); + CONTENT_TYPE_MAP.put("h++", "text/x-c++hdr"); + CONTENT_TYPE_MAP.put("hdf", "application/x-hdf"); + CONTENT_TYPE_MAP.put("hh", "text/x-c++hdr"); + CONTENT_TYPE_MAP.put("hp", "text/x-c++hdr"); + CONTENT_TYPE_MAP.put("hpgl", "application/vnd.hp-hpgl"); + CONTENT_TYPE_MAP.put("hpp", "text/x-c++hdr"); + CONTENT_TYPE_MAP.put("hs", "text/x-haskell"); + CONTENT_TYPE_MAP.put("htm", "text/html"); + CONTENT_TYPE_MAP.put("html", "text/html"); + CONTENT_TYPE_MAP.put("hwp", "application/x-hwp"); + CONTENT_TYPE_MAP.put("hwt", "application/x-hwt"); + CONTENT_TYPE_MAP.put("hxx", "text/x-c++hdr"); + CONTENT_TYPE_MAP.put("ica", "application/x-ica"); + CONTENT_TYPE_MAP.put("icb", "image/x-tga"); + CONTENT_TYPE_MAP.put("icns", "image/x-icns"); + CONTENT_TYPE_MAP.put("ico", "image/vnd.microsoft.icon"); + CONTENT_TYPE_MAP.put("ics", "text/calendar"); + CONTENT_TYPE_MAP.put("idl", "text/x-idl"); + CONTENT_TYPE_MAP.put("ief", "image/ief"); + CONTENT_TYPE_MAP.put("iff", "image/x-iff"); + CONTENT_TYPE_MAP.put("ilbm", "image/x-ilbm"); + CONTENT_TYPE_MAP.put("ime", "text/x-imelody"); + CONTENT_TYPE_MAP.put("imy", "text/x-imelody"); + CONTENT_TYPE_MAP.put("ins", "text/x-tex"); + CONTENT_TYPE_MAP.put("iptables", "text/x-iptables"); + CONTENT_TYPE_MAP.put("iso", "application/x-cd-image"); + CONTENT_TYPE_MAP.put("iso9660", "application/x-cd-image"); + CONTENT_TYPE_MAP.put("it", "audio/x-it"); + CONTENT_TYPE_MAP.put("j2k", "image/jp2"); + CONTENT_TYPE_MAP.put("jad", "text/vnd.sun.j2me.app-descriptor"); + CONTENT_TYPE_MAP.put("jar", "application/x-java-archive"); + CONTENT_TYPE_MAP.put("java", "text/x-java"); + CONTENT_TYPE_MAP.put("jng", "image/x-jng"); + CONTENT_TYPE_MAP.put("jnlp", "application/x-java-jnlp-file"); + CONTENT_TYPE_MAP.put("jp2", "image/jp2"); + CONTENT_TYPE_MAP.put("jpc", "image/jp2"); + CONTENT_TYPE_MAP.put("jpe", "image/jpeg"); + CONTENT_TYPE_MAP.put("jpeg", "image/jpeg"); + CONTENT_TYPE_MAP.put("jpf", "image/jp2"); + CONTENT_TYPE_MAP.put("jpg", "image/jpeg"); + CONTENT_TYPE_MAP.put("heic", "image/heic"); + CONTENT_TYPE_MAP.put("webp", "image/webp"); + CONTENT_TYPE_MAP.put("avif", "image/avif"); + CONTENT_TYPE_MAP.put("jpr", "application/x-jbuilder-project"); + CONTENT_TYPE_MAP.put("jpx", "image/jp2"); + CONTENT_TYPE_MAP.put("js", "application/javascript"); + CONTENT_TYPE_MAP.put("json", "application/json"); + CONTENT_TYPE_MAP.put("jsonp", "application/jsonp"); + CONTENT_TYPE_MAP.put("k25", "image/x-kodak-k25"); + CONTENT_TYPE_MAP.put("kar", "audio/midi"); + CONTENT_TYPE_MAP.put("karbon", "application/x-karbon"); + CONTENT_TYPE_MAP.put("kdc", "image/x-kodak-kdc"); + CONTENT_TYPE_MAP.put("kdelnk", "application/x-desktop"); + CONTENT_TYPE_MAP.put("kexi", "application/x-kexiproject-sqlite3"); + CONTENT_TYPE_MAP.put("kexic", "application/x-kexi-connectiondata"); + CONTENT_TYPE_MAP.put("kexis", "application/x-kexiproject-shortcut"); + CONTENT_TYPE_MAP.put("kfo", "application/x-kformula"); + CONTENT_TYPE_MAP.put("kil", "application/x-killustrator"); + CONTENT_TYPE_MAP.put("kino", "application/smil"); + CONTENT_TYPE_MAP.put("kml", "application/vnd.google-earth.kml+xml"); + CONTENT_TYPE_MAP.put("kmz", "application/vnd.google-earth.kmz"); + CONTENT_TYPE_MAP.put("kon", "application/x-kontour"); + CONTENT_TYPE_MAP.put("kpm", "application/x-kpovmodeler"); + CONTENT_TYPE_MAP.put("kpr", "application/x-kpresenter"); + CONTENT_TYPE_MAP.put("kpt", "application/x-kpresenter"); + CONTENT_TYPE_MAP.put("kra", "application/x-krita"); + CONTENT_TYPE_MAP.put("ksp", "application/x-kspread"); + CONTENT_TYPE_MAP.put("kud", "application/x-kugar"); + CONTENT_TYPE_MAP.put("kwd", "application/x-kword"); + CONTENT_TYPE_MAP.put("kwt", "application/x-kword"); + CONTENT_TYPE_MAP.put("la", "application/x-shared-library-la"); + CONTENT_TYPE_MAP.put("latex", "text/x-tex"); + CONTENT_TYPE_MAP.put("ldif", "text/x-ldif"); + CONTENT_TYPE_MAP.put("lha", "application/x-lha"); + CONTENT_TYPE_MAP.put("lhs", "text/x-literate-haskell"); + CONTENT_TYPE_MAP.put("lhz", "application/x-lhz"); + CONTENT_TYPE_MAP.put("log", "text/x-log"); + CONTENT_TYPE_MAP.put("ltx", "text/x-tex"); + CONTENT_TYPE_MAP.put("lua", "text/x-lua"); + CONTENT_TYPE_MAP.put("lwo", "image/x-lwo"); + CONTENT_TYPE_MAP.put("lwob", "image/x-lwo"); + CONTENT_TYPE_MAP.put("lws", "image/x-lws"); + CONTENT_TYPE_MAP.put("ly", "text/x-lilypond"); + CONTENT_TYPE_MAP.put("lyx", "application/x-lyx"); + CONTENT_TYPE_MAP.put("lz", "application/x-lzip"); + CONTENT_TYPE_MAP.put("lzh", "application/x-lha"); + CONTENT_TYPE_MAP.put("lzma", "application/x-lzma"); + CONTENT_TYPE_MAP.put("lzo", "application/x-lzop"); + CONTENT_TYPE_MAP.put("m", "text/x-matlab"); + CONTENT_TYPE_MAP.put("m15", "audio/x-mod"); + CONTENT_TYPE_MAP.put("m2t", "video/mpeg"); + CONTENT_TYPE_MAP.put("m3u", "audio/x-mpegurl"); + CONTENT_TYPE_MAP.put("m3u8", "audio/x-mpegurl"); + CONTENT_TYPE_MAP.put("vtt", "audio/x-mpegurl"); + CONTENT_TYPE_MAP.put("m4", "application/x-m4"); + CONTENT_TYPE_MAP.put("m4a", "audio/mp4"); + CONTENT_TYPE_MAP.put("m4b", "audio/x-m4b"); + CONTENT_TYPE_MAP.put("m4v", "video/mp4"); + CONTENT_TYPE_MAP.put("mab", "application/x-markaby"); + CONTENT_TYPE_MAP.put("man", "application/x-troff-man"); + CONTENT_TYPE_MAP.put("mbox", "application/mbox"); + CONTENT_TYPE_MAP.put("md", "text/markdown"); + CONTENT_TYPE_MAP.put("mdb", "application/vnd.ms-access"); + CONTENT_TYPE_MAP.put("mdi", "image/vnd.ms-modi"); + CONTENT_TYPE_MAP.put("me", "text/x-troff-me"); + CONTENT_TYPE_MAP.put("med", "audio/x-mod"); + CONTENT_TYPE_MAP.put("metalink", "application/metalink+xml"); + CONTENT_TYPE_MAP.put("mgp", "application/x-magicpoint"); + CONTENT_TYPE_MAP.put("mid", "audio/midi"); + CONTENT_TYPE_MAP.put("midi", "audio/midi"); + CONTENT_TYPE_MAP.put("mif", "application/x-mif"); + CONTENT_TYPE_MAP.put("minipsf", "audio/x-minipsf"); + CONTENT_TYPE_MAP.put("mka", "audio/x-matroska"); + CONTENT_TYPE_MAP.put("mkv", "video/x-matroska"); + CONTENT_TYPE_MAP.put("ml", "text/x-ocaml"); + CONTENT_TYPE_MAP.put("mli", "text/x-ocaml"); + CONTENT_TYPE_MAP.put("mm", "text/x-troff-mm"); + CONTENT_TYPE_MAP.put("mmf", "application/x-smaf"); + CONTENT_TYPE_MAP.put("mml", "text/mathml"); + CONTENT_TYPE_MAP.put("mng", "video/x-mng"); + CONTENT_TYPE_MAP.put("mo", "application/x-gettext-translation"); + CONTENT_TYPE_MAP.put("mo3", "audio/x-mo3"); + CONTENT_TYPE_MAP.put("moc", "text/x-moc"); + CONTENT_TYPE_MAP.put("mod", "audio/x-mod"); + CONTENT_TYPE_MAP.put("mof", "text/x-mof"); + CONTENT_TYPE_MAP.put("moov", "video/quicktime"); + CONTENT_TYPE_MAP.put("mov", "video/quicktime"); + CONTENT_TYPE_MAP.put("movie", "video/x-sgi-movie"); + CONTENT_TYPE_MAP.put("mp+", "audio/x-musepack"); + CONTENT_TYPE_MAP.put("mp2", "video/mpeg"); + CONTENT_TYPE_MAP.put("mp3", "audio/mpeg"); + CONTENT_TYPE_MAP.put("mp4", "video/mp4"); + CONTENT_TYPE_MAP.put("mpc", "audio/x-musepack"); + CONTENT_TYPE_MAP.put("mpe", "video/mpeg"); + CONTENT_TYPE_MAP.put("mpeg", "video/mpeg"); + CONTENT_TYPE_MAP.put("mpg", "video/mpeg"); + CONTENT_TYPE_MAP.put("mpga", "audio/mpeg"); + CONTENT_TYPE_MAP.put("mpp", "audio/x-musepack"); + CONTENT_TYPE_MAP.put("mrl", "text/x-mrml"); + CONTENT_TYPE_MAP.put("mrml", "text/x-mrml"); + CONTENT_TYPE_MAP.put("mrw", "image/x-minolta-mrw"); + CONTENT_TYPE_MAP.put("ms", "text/x-troff-ms"); + CONTENT_TYPE_MAP.put("msi", "application/x-msi"); + CONTENT_TYPE_MAP.put("msod", "image/x-msod"); + CONTENT_TYPE_MAP.put("msx", "application/x-msx-rom"); + CONTENT_TYPE_MAP.put("mtm", "audio/x-mod"); + CONTENT_TYPE_MAP.put("mup", "text/x-mup"); + CONTENT_TYPE_MAP.put("mxf", "application/mxf"); + CONTENT_TYPE_MAP.put("n64", "application/x-n64-rom"); + CONTENT_TYPE_MAP.put("nb", "application/mathematica"); + CONTENT_TYPE_MAP.put("nc", "application/x-netcdf"); + CONTENT_TYPE_MAP.put("nds", "application/x-nintendo-ds-rom"); + CONTENT_TYPE_MAP.put("nef", "image/x-nikon-nef"); + CONTENT_TYPE_MAP.put("nes", "application/x-nes-rom"); + CONTENT_TYPE_MAP.put("nfo", "text/x-nfo"); + CONTENT_TYPE_MAP.put("not", "text/x-mup"); + CONTENT_TYPE_MAP.put("nsc", "application/x-netshow-channel"); + CONTENT_TYPE_MAP.put("nsv", "video/x-nsv"); + CONTENT_TYPE_MAP.put("o", "application/x-object"); + CONTENT_TYPE_MAP.put("obj", "application/x-tgif"); + CONTENT_TYPE_MAP.put("ocl", "text/x-ocl"); + CONTENT_TYPE_MAP.put("oda", "application/oda"); + CONTENT_TYPE_MAP.put("odb", "application/vnd.oasis.opendocument.database"); + CONTENT_TYPE_MAP.put("odc", "application/vnd.oasis.opendocument.chart"); + CONTENT_TYPE_MAP.put("odf", "application/vnd.oasis.opendocument.formula"); + CONTENT_TYPE_MAP.put("odg", "application/vnd.oasis.opendocument.graphics"); + CONTENT_TYPE_MAP.put("odi", "application/vnd.oasis.opendocument.image"); + CONTENT_TYPE_MAP.put("odm", "application/vnd.oasis.opendocument.text-master"); + CONTENT_TYPE_MAP.put("odp", "application/vnd.oasis.opendocument.presentation"); + CONTENT_TYPE_MAP.put("ods", "application/vnd.oasis.opendocument.spreadsheet"); + CONTENT_TYPE_MAP.put("odt", "application/vnd.oasis.opendocument.text"); + CONTENT_TYPE_MAP.put("oga", "audio/ogg"); + CONTENT_TYPE_MAP.put("ogg", "video/x-theora+ogg"); + CONTENT_TYPE_MAP.put("ogm", "video/x-ogm+ogg"); + CONTENT_TYPE_MAP.put("ogv", "video/ogg"); + CONTENT_TYPE_MAP.put("ogx", "application/ogg"); + CONTENT_TYPE_MAP.put("old", "application/x-trash"); + CONTENT_TYPE_MAP.put("oleo", "application/x-oleo"); + CONTENT_TYPE_MAP.put("opml", "text/x-opml+xml"); + CONTENT_TYPE_MAP.put("ora", "image/openraster"); + CONTENT_TYPE_MAP.put("orf", "image/x-olympus-orf"); + CONTENT_TYPE_MAP.put("otc", "application/vnd.oasis.opendocument.chart-template"); + CONTENT_TYPE_MAP.put("otf", "application/x-font-otf"); + CONTENT_TYPE_MAP.put("otg", "application/vnd.oasis.opendocument.graphics-template"); + CONTENT_TYPE_MAP.put("oth", "application/vnd.oasis.opendocument.text-web"); + CONTENT_TYPE_MAP.put("otp", "application/vnd.oasis.opendocument.presentation-template"); + CONTENT_TYPE_MAP.put("ots", "application/vnd.oasis.opendocument.spreadsheet-template"); + CONTENT_TYPE_MAP.put("ott", "application/vnd.oasis.opendocument.text-template"); + CONTENT_TYPE_MAP.put("owl", "application/rdf+xml"); + CONTENT_TYPE_MAP.put("oxt", "application/vnd.openofficeorg.extension"); + CONTENT_TYPE_MAP.put("p", "text/x-pascal"); + CONTENT_TYPE_MAP.put("p10", "application/pkcs10"); + CONTENT_TYPE_MAP.put("p12", "application/x-pkcs12"); + CONTENT_TYPE_MAP.put("p7b", "application/x-pkcs7-certificates"); + CONTENT_TYPE_MAP.put("p7s", "application/pkcs7-signature"); + CONTENT_TYPE_MAP.put("pack", "application/x-java-pack200"); + CONTENT_TYPE_MAP.put("pak", "application/x-pak"); + CONTENT_TYPE_MAP.put("par2", "application/x-par2"); + CONTENT_TYPE_MAP.put("pas", "text/x-pascal"); + CONTENT_TYPE_MAP.put("patch", "text/x-patch"); + CONTENT_TYPE_MAP.put("pbm", "image/x-portable-bitmap"); + CONTENT_TYPE_MAP.put("pcd", "image/x-photo-cd"); + CONTENT_TYPE_MAP.put("pcf", "application/x-cisco-vpn-settings"); + CONTENT_TYPE_MAP.put("pcf.gz", "application/x-font-pcf"); + CONTENT_TYPE_MAP.put("pcf.z", "application/x-font-pcf"); + CONTENT_TYPE_MAP.put("pcl", "application/vnd.hp-pcl"); + CONTENT_TYPE_MAP.put("pcx", "image/x-pcx"); + CONTENT_TYPE_MAP.put("pdb", "chemical/x-pdb"); + CONTENT_TYPE_MAP.put("pdc", "application/x-aportisdoc"); + CONTENT_TYPE_MAP.put("pdf", "application/pdf"); + CONTENT_TYPE_MAP.put("pdf.bz2", "application/x-bzpdf"); + CONTENT_TYPE_MAP.put("pdf.gz", "application/x-gzpdf"); + CONTENT_TYPE_MAP.put("pef", "image/x-pentax-pef"); + CONTENT_TYPE_MAP.put("pem", "application/x-x509-ca-cert"); + CONTENT_TYPE_MAP.put("perl", "application/x-perl"); + CONTENT_TYPE_MAP.put("pfa", "application/x-font-type1"); + CONTENT_TYPE_MAP.put("pfb", "application/x-font-type1"); + CONTENT_TYPE_MAP.put("pfx", "application/x-pkcs12"); + CONTENT_TYPE_MAP.put("pgm", "image/x-portable-graymap"); + CONTENT_TYPE_MAP.put("pgn", "application/x-chess-pgn"); + CONTENT_TYPE_MAP.put("pgp", "application/pgp-encrypted"); + CONTENT_TYPE_MAP.put("php", "application/x-php"); + CONTENT_TYPE_MAP.put("php3", "application/x-php"); + CONTENT_TYPE_MAP.put("php4", "application/x-php"); + CONTENT_TYPE_MAP.put("pict", "image/x-pict"); + CONTENT_TYPE_MAP.put("pict1", "image/x-pict"); + CONTENT_TYPE_MAP.put("pict2", "image/x-pict"); + CONTENT_TYPE_MAP.put("pickle", "application/python-pickle"); + CONTENT_TYPE_MAP.put("pk", "application/x-tex-pk"); + CONTENT_TYPE_MAP.put("pkipath", "application/pkix-pkipath"); + CONTENT_TYPE_MAP.put("pkr", "application/pgp-keys"); + CONTENT_TYPE_MAP.put("pl", "application/x-perl"); + CONTENT_TYPE_MAP.put("pla", "audio/x-iriver-pla"); + CONTENT_TYPE_MAP.put("pln", "application/x-planperfect"); + CONTENT_TYPE_MAP.put("pls", "audio/x-scpls"); + CONTENT_TYPE_MAP.put("pm", "application/x-perl"); + CONTENT_TYPE_MAP.put("png", "image/png"); + CONTENT_TYPE_MAP.put("pnm", "image/x-portable-anymap"); + CONTENT_TYPE_MAP.put("pntg", "image/x-macpaint"); + CONTENT_TYPE_MAP.put("po", "text/x-gettext-translation"); + CONTENT_TYPE_MAP.put("por", "application/x-spss-por"); + CONTENT_TYPE_MAP.put("pot", "text/x-gettext-translation-template"); + CONTENT_TYPE_MAP.put("ppm", "image/x-portable-pixmap"); + CONTENT_TYPE_MAP.put("pps", "application/vnd.ms-office.powerpoint"); + CONTENT_TYPE_MAP.put("ppt", "application/vnd.ms-office.powerpoint"); + CONTENT_TYPE_MAP.put("pptm", "application/vnd.openxmlformats-officedocument.presentationml.presentation"); + CONTENT_TYPE_MAP.put("pptx", "application/vnd.openxmlformats-officedocument.presentationml.presentation"); + CONTENT_TYPE_MAP.put("ppz", "application/vnd.ms-powerpoint"); + CONTENT_TYPE_MAP.put("prc", "application/x-palm-database"); + CONTENT_TYPE_MAP.put("ps", "application/postscript"); + CONTENT_TYPE_MAP.put("ps.bz2", "application/x-bzpostscript"); + CONTENT_TYPE_MAP.put("ps.gz", "application/x-gzpostscript"); + CONTENT_TYPE_MAP.put("psd", "image/vnd.adobe.photoshop"); + CONTENT_TYPE_MAP.put("psf", "audio/x-psf"); + CONTENT_TYPE_MAP.put("psf.gz", "application/x-gz-font-linux-psf"); + CONTENT_TYPE_MAP.put("psflib", "audio/x-psflib"); + CONTENT_TYPE_MAP.put("psid", "audio/prs.sid"); + CONTENT_TYPE_MAP.put("psw", "application/x-pocket-word"); + CONTENT_TYPE_MAP.put("pw", "application/x-pw"); + CONTENT_TYPE_MAP.put("py", "text/x-python"); + CONTENT_TYPE_MAP.put("pyc", "application/x-python-bytecode"); + CONTENT_TYPE_MAP.put("pyo", "application/x-python-bytecode"); + CONTENT_TYPE_MAP.put("qif", "image/x-quicktime"); + CONTENT_TYPE_MAP.put("qt", "video/quicktime"); + CONTENT_TYPE_MAP.put("qtif", "image/x-quicktime"); + CONTENT_TYPE_MAP.put("qtl", "application/x-quicktime-media-link"); + CONTENT_TYPE_MAP.put("qtvr", "video/quicktime"); + CONTENT_TYPE_MAP.put("ra", "audio/vnd.rn-realaudio"); + CONTENT_TYPE_MAP.put("raf", "image/x-fuji-raf"); + CONTENT_TYPE_MAP.put("ram", "application/ram"); + CONTENT_TYPE_MAP.put("rar", "application/x-rar"); + CONTENT_TYPE_MAP.put("ras", "image/x-cmu-raster"); + CONTENT_TYPE_MAP.put("raw", "image/x-panasonic-raw"); + CONTENT_TYPE_MAP.put("rax", "audio/vnd.rn-realaudio"); + CONTENT_TYPE_MAP.put("rdf", "application/rdf+xml"); + CONTENT_TYPE_MAP.put("rdfs", "application/rdf+xml"); + CONTENT_TYPE_MAP.put("reg", "text/x-ms-regedit"); + CONTENT_TYPE_MAP.put("rej", "application/x-reject"); + CONTENT_TYPE_MAP.put("rgb", "image/x-rgb"); + CONTENT_TYPE_MAP.put("rle", "image/rle"); + CONTENT_TYPE_MAP.put("rm", "application/vnd.rn-realmedia"); + CONTENT_TYPE_MAP.put("rmj", "application/vnd.rn-realmedia"); + CONTENT_TYPE_MAP.put("rmm", "application/vnd.rn-realmedia"); + CONTENT_TYPE_MAP.put("rms", "application/vnd.rn-realmedia"); + CONTENT_TYPE_MAP.put("rmvb", "application/vnd.rn-realmedia"); + CONTENT_TYPE_MAP.put("rmx", "application/vnd.rn-realmedia"); + CONTENT_TYPE_MAP.put("roff", "text/troff"); + CONTENT_TYPE_MAP.put("rp", "image/vnd.rn-realpix"); + CONTENT_TYPE_MAP.put("rpm", "application/x-rpm"); + CONTENT_TYPE_MAP.put("rss", "application/rss+xml"); + CONTENT_TYPE_MAP.put("rt", "text/vnd.rn-realtext"); + CONTENT_TYPE_MAP.put("rtf", "application/rtf"); + CONTENT_TYPE_MAP.put("rtx", "text/richtext"); + CONTENT_TYPE_MAP.put("rv", "video/vnd.rn-realvideo"); + CONTENT_TYPE_MAP.put("rvx", "video/vnd.rn-realvideo"); + CONTENT_TYPE_MAP.put("s3m", "audio/x-s3m"); + CONTENT_TYPE_MAP.put("sam", "application/x-amipro"); + CONTENT_TYPE_MAP.put("sami", "application/x-sami"); + CONTENT_TYPE_MAP.put("sav", "application/x-spss-sav"); + CONTENT_TYPE_MAP.put("scm", "text/x-scheme"); + CONTENT_TYPE_MAP.put("sda", "application/vnd.stardivision.draw"); + CONTENT_TYPE_MAP.put("drawio", "application/vnd.jgraph.mxfile"); + CONTENT_TYPE_MAP.put("sdc", "application/vnd.stardivision.calc"); + CONTENT_TYPE_MAP.put("sdd", "application/vnd.stardivision.impress"); + CONTENT_TYPE_MAP.put("sdp", "application/sdp"); + CONTENT_TYPE_MAP.put("sds", "application/vnd.stardivision.chart"); + CONTENT_TYPE_MAP.put("sdw", "application/vnd.stardivision.writer"); + CONTENT_TYPE_MAP.put("sgf", "application/x-go-sgf"); + CONTENT_TYPE_MAP.put("sgi", "image/x-sgi"); + CONTENT_TYPE_MAP.put("sgl", "application/vnd.stardivision.writer"); + CONTENT_TYPE_MAP.put("sgm", "text/sgml"); + CONTENT_TYPE_MAP.put("sgml", "text/sgml"); + CONTENT_TYPE_MAP.put("sh", "application/x-shellscript"); + CONTENT_TYPE_MAP.put("shar", "application/x-shar"); + CONTENT_TYPE_MAP.put("shn", "application/x-shorten"); + CONTENT_TYPE_MAP.put("siag", "application/x-siag"); + CONTENT_TYPE_MAP.put("sid", "audio/prs.sid"); + CONTENT_TYPE_MAP.put("sik", "application/x-trash"); + CONTENT_TYPE_MAP.put("sis", "application/vnd.symbian.install"); + CONTENT_TYPE_MAP.put("sisx", "x-epoc/x-sisx-app"); + CONTENT_TYPE_MAP.put("sit", "application/x-stuffit"); + CONTENT_TYPE_MAP.put("siv", "application/sieve"); + CONTENT_TYPE_MAP.put("sk", "image/x-skencil"); + CONTENT_TYPE_MAP.put("sk1", "image/x-skencil"); + CONTENT_TYPE_MAP.put("skr", "application/pgp-keys"); + CONTENT_TYPE_MAP.put("slk", "text/spreadsheet"); + CONTENT_TYPE_MAP.put("smaf", "application/x-smaf"); + CONTENT_TYPE_MAP.put("smc", "application/x-snes-rom"); + CONTENT_TYPE_MAP.put("smd", "application/vnd.stardivision.mail"); + CONTENT_TYPE_MAP.put("smf", "application/vnd.stardivision.math"); + CONTENT_TYPE_MAP.put("smi", "application/x-sami"); + CONTENT_TYPE_MAP.put("smil", "application/smil"); + CONTENT_TYPE_MAP.put("sml", "application/smil"); + CONTENT_TYPE_MAP.put("sms", "application/x-sms-rom"); + CONTENT_TYPE_MAP.put("snd", "audio/basic"); + CONTENT_TYPE_MAP.put("so", "application/x-sharedlib"); + CONTENT_TYPE_MAP.put("spc", "application/x-pkcs7-certificates"); + CONTENT_TYPE_MAP.put("spd", "application/x-font-speedo"); + CONTENT_TYPE_MAP.put("spec", "text/x-rpm-spec"); + CONTENT_TYPE_MAP.put("spl", "application/x-shockwave-flash"); + CONTENT_TYPE_MAP.put("spx", "audio/x-speex"); + CONTENT_TYPE_MAP.put("sql", "text/x-sql"); + CONTENT_TYPE_MAP.put("sr2", "image/x-sony-sr2"); + CONTENT_TYPE_MAP.put("src", "application/x-wais-source"); + CONTENT_TYPE_MAP.put("srf", "image/x-sony-srf"); + CONTENT_TYPE_MAP.put("srt", "application/x-subrip"); + CONTENT_TYPE_MAP.put("ssa", "text/x-ssa"); + CONTENT_TYPE_MAP.put("stc", "application/vnd.sun.xml.calc.template"); + CONTENT_TYPE_MAP.put("std", "application/vnd.sun.xml.draw.template"); + CONTENT_TYPE_MAP.put("sti", "application/vnd.sun.xml.impress.template"); + CONTENT_TYPE_MAP.put("stm", "audio/x-stm"); + CONTENT_TYPE_MAP.put("stw", "application/vnd.sun.xml.writer.template"); + CONTENT_TYPE_MAP.put("sty", "text/x-tex"); + CONTENT_TYPE_MAP.put("sub", "text/x-subviewer"); + CONTENT_TYPE_MAP.put("sun", "image/x-sun-raster"); + CONTENT_TYPE_MAP.put("sv4cpio", "application/x-sv4cpio"); + CONTENT_TYPE_MAP.put("sv4crc", "application/x-sv4crc"); + CONTENT_TYPE_MAP.put("svg", "image/svg+xml"); + CONTENT_TYPE_MAP.put("svgz", "image/svg+xml-compressed"); + CONTENT_TYPE_MAP.put("swf", "application/x-shockwave-flash"); + CONTENT_TYPE_MAP.put("sxc", "application/vnd.sun.xml.calc"); + CONTENT_TYPE_MAP.put("sxd", "application/vnd.sun.xml.draw"); + CONTENT_TYPE_MAP.put("sxg", "application/vnd.sun.xml.writer.global"); + CONTENT_TYPE_MAP.put("sxi", "application/vnd.sun.xml.impress"); + CONTENT_TYPE_MAP.put("sxm", "application/vnd.sun.xml.math"); + CONTENT_TYPE_MAP.put("sxw", "application/vnd.sun.xml.writer"); + CONTENT_TYPE_MAP.put("sylk", "text/spreadsheet"); + CONTENT_TYPE_MAP.put("t", "text/troff"); + CONTENT_TYPE_MAP.put("t2t", "text/x-txt2tags"); + CONTENT_TYPE_MAP.put("tar", "application/x-tar"); + CONTENT_TYPE_MAP.put("tar.bz", "application/x-bzip-compressed-tar"); + CONTENT_TYPE_MAP.put("tar.bz2", "application/x-bzip-compressed-tar"); + CONTENT_TYPE_MAP.put("tar.gz", "application/x-compressed-tar"); + CONTENT_TYPE_MAP.put("tar.lzma", "application/x-lzma-compressed-tar"); + CONTENT_TYPE_MAP.put("tar.lzo", "application/x-tzo"); + CONTENT_TYPE_MAP.put("tar.xz", "application/x-xz-compressed-tar"); + CONTENT_TYPE_MAP.put("tar.z", "application/x-tarz"); + CONTENT_TYPE_MAP.put("tbz", "application/x-bzip-compressed-tar"); + CONTENT_TYPE_MAP.put("tbz2", "application/x-bzip-compressed-tar"); + CONTENT_TYPE_MAP.put("tcl", "text/x-tcl"); + CONTENT_TYPE_MAP.put("tex", "text/x-tex"); + CONTENT_TYPE_MAP.put("texi", "text/x-texinfo"); + CONTENT_TYPE_MAP.put("texinfo", "text/x-texinfo"); + CONTENT_TYPE_MAP.put("tga", "image/x-tga"); + CONTENT_TYPE_MAP.put("tgz", "application/x-compressed-tar"); + CONTENT_TYPE_MAP.put("theme", "application/x-theme"); + CONTENT_TYPE_MAP.put("themepack", "application/x-windows-themepack"); + CONTENT_TYPE_MAP.put("tif", "image/tiff"); + CONTENT_TYPE_MAP.put("tiff", "image/tiff"); + CONTENT_TYPE_MAP.put("tk", "text/x-tcl"); + CONTENT_TYPE_MAP.put("tlz", "application/x-lzma-compressed-tar"); + CONTENT_TYPE_MAP.put("tnef", "application/vnd.ms-tnef"); + CONTENT_TYPE_MAP.put("tnf", "application/vnd.ms-tnef"); + CONTENT_TYPE_MAP.put("toc", "application/x-cdrdao-toc"); + CONTENT_TYPE_MAP.put("torrent", "application/x-bittorrent"); + CONTENT_TYPE_MAP.put("tpic", "image/x-tga"); + CONTENT_TYPE_MAP.put("tr", "text/troff"); + CONTENT_TYPE_MAP.put("ts", "application/x-linguist"); + CONTENT_TYPE_MAP.put("tsv", "text/tab-separated-values"); + CONTENT_TYPE_MAP.put("tta", "audio/x-tta"); + CONTENT_TYPE_MAP.put("ttc", "application/x-font-ttf"); + CONTENT_TYPE_MAP.put("ttf", "application/x-font-ttf"); + CONTENT_TYPE_MAP.put("ttx", "application/x-font-ttx"); + CONTENT_TYPE_MAP.put("txt", "text/plain"); + CONTENT_TYPE_MAP.put("txz", "application/x-xz-compressed-tar"); + CONTENT_TYPE_MAP.put("tzo", "application/x-tzo"); + CONTENT_TYPE_MAP.put("ufraw", "application/x-ufraw"); + CONTENT_TYPE_MAP.put("ui", "application/x-designer"); + CONTENT_TYPE_MAP.put("uil", "text/x-uil"); + CONTENT_TYPE_MAP.put("ult", "audio/x-mod"); + CONTENT_TYPE_MAP.put("uni", "audio/x-mod"); + CONTENT_TYPE_MAP.put("uri", "text/x-uri"); + CONTENT_TYPE_MAP.put("url", "text/x-uri"); + CONTENT_TYPE_MAP.put("ustar", "application/x-ustar"); + CONTENT_TYPE_MAP.put("vala", "text/x-vala"); + CONTENT_TYPE_MAP.put("vapi", "text/x-vala"); + CONTENT_TYPE_MAP.put("vcf", "text/directory"); + CONTENT_TYPE_MAP.put("vcs", "text/calendar"); + CONTENT_TYPE_MAP.put("vct", "text/directory"); + CONTENT_TYPE_MAP.put("vda", "image/x-tga"); + CONTENT_TYPE_MAP.put("vhd", "text/x-vhdl"); + CONTENT_TYPE_MAP.put("vhdl", "text/x-vhdl"); + CONTENT_TYPE_MAP.put("viv", "video/vivo"); + CONTENT_TYPE_MAP.put("vivo", "video/vivo"); + CONTENT_TYPE_MAP.put("vlc", "audio/x-mpegurl"); + CONTENT_TYPE_MAP.put("vob", "video/mpeg"); + CONTENT_TYPE_MAP.put("voc", "audio/x-voc"); + CONTENT_TYPE_MAP.put("vor", "application/vnd.stardivision.writer"); + CONTENT_TYPE_MAP.put("vst", "image/x-tga"); + CONTENT_TYPE_MAP.put("wav", "audio/x-wav"); + CONTENT_TYPE_MAP.put("wax", "audio/x-ms-asx"); + CONTENT_TYPE_MAP.put("wb1", "application/x-quattropro"); + CONTENT_TYPE_MAP.put("wb2", "application/x-quattropro"); + CONTENT_TYPE_MAP.put("wb3", "application/x-quattropro"); + CONTENT_TYPE_MAP.put("wbmp", "image/vnd.wap.wbmp"); + CONTENT_TYPE_MAP.put("wcm", "application/vnd.ms-works"); + CONTENT_TYPE_MAP.put("wdb", "application/vnd.ms-works"); + CONTENT_TYPE_MAP.put("webm", "video/webm"); + CONTENT_TYPE_MAP.put("wk1", "application/vnd.lotus-1-2-3"); + CONTENT_TYPE_MAP.put("wk3", "application/vnd.lotus-1-2-3"); + CONTENT_TYPE_MAP.put("wk4", "application/vnd.lotus-1-2-3"); + CONTENT_TYPE_MAP.put("wks", "application/vnd.ms-works"); + CONTENT_TYPE_MAP.put("wma", "audio/x-ms-wma"); + CONTENT_TYPE_MAP.put("wmf", "image/x-wmf"); + CONTENT_TYPE_MAP.put("wml", "text/vnd.wap.wml"); + CONTENT_TYPE_MAP.put("wmls", "text/vnd.wap.wmlscript"); + CONTENT_TYPE_MAP.put("wmv", "video/x-ms-wmv"); + CONTENT_TYPE_MAP.put("wmx", "audio/x-ms-asx"); + CONTENT_TYPE_MAP.put("wp", "application/vnd.wordperfect"); + CONTENT_TYPE_MAP.put("wp4", "application/vnd.wordperfect"); + CONTENT_TYPE_MAP.put("wp5", "application/vnd.wordperfect"); + CONTENT_TYPE_MAP.put("wp6", "application/vnd.wordperfect"); + CONTENT_TYPE_MAP.put("wpd", "application/vnd.wordperfect"); + CONTENT_TYPE_MAP.put("wpg", "application/x-wpg"); + CONTENT_TYPE_MAP.put("wpl", "application/vnd.ms-wpl"); + CONTENT_TYPE_MAP.put("wpp", "application/vnd.wordperfect"); + CONTENT_TYPE_MAP.put("wps", "application/vnd.ms-works"); + CONTENT_TYPE_MAP.put("wri", "application/x-mswrite"); + CONTENT_TYPE_MAP.put("wrl", "model/vrml"); + CONTENT_TYPE_MAP.put("wv", "audio/x-wavpack"); + CONTENT_TYPE_MAP.put("wvc", "audio/x-wavpack-correction"); + CONTENT_TYPE_MAP.put("wvp", "audio/x-wavpack"); + CONTENT_TYPE_MAP.put("wvx", "audio/x-ms-asx"); + CONTENT_TYPE_MAP.put("x3f", "image/x-sigma-x3f"); + CONTENT_TYPE_MAP.put("xac", "application/x-gnucash"); + CONTENT_TYPE_MAP.put("xbel", "application/x-xbel"); + CONTENT_TYPE_MAP.put("xbl", "application/xml"); + CONTENT_TYPE_MAP.put("xbm", "image/x-xbitmap"); + CONTENT_TYPE_MAP.put("xcf", "image/x-xcf"); + CONTENT_TYPE_MAP.put("xcf.bz2", "image/x-compressed-xcf"); + CONTENT_TYPE_MAP.put("xcf.gz", "image/x-compressed-xcf"); + CONTENT_TYPE_MAP.put("xhtml", "application/xhtml+xml"); + CONTENT_TYPE_MAP.put("xi", "audio/x-xi"); + CONTENT_TYPE_MAP.put("xla", "application/vnd.ms-excel"); + CONTENT_TYPE_MAP.put("xlc", "application/vnd.ms-excel"); + CONTENT_TYPE_MAP.put("xld", "application/vnd.ms-excel"); + CONTENT_TYPE_MAP.put("xlf", "application/x-xliff"); + CONTENT_TYPE_MAP.put("xliff", "application/x-xliff"); + CONTENT_TYPE_MAP.put("xll", "application/vnd.ms-excel"); + CONTENT_TYPE_MAP.put("xlm", "application/vnd.ms-excel"); + CONTENT_TYPE_MAP.put("xls", "application/vnd.ms-office-excel"); + CONTENT_TYPE_MAP.put("xlsm", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); + CONTENT_TYPE_MAP.put("xlsx", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); + CONTENT_TYPE_MAP.put("xlt", "application/vnd.ms-excel"); + CONTENT_TYPE_MAP.put("xlw", "application/vnd.ms-excel"); + CONTENT_TYPE_MAP.put("xm", "audio/x-xm"); + CONTENT_TYPE_MAP.put("xmf", "audio/x-xmf"); + CONTENT_TYPE_MAP.put("xmi", "text/x-xmi"); + CONTENT_TYPE_MAP.put("xml", "application/xml"); + CONTENT_TYPE_MAP.put("xpm", "image/x-xpixmap"); + CONTENT_TYPE_MAP.put("xps", "application/vnd.ms-xpsdocument"); + CONTENT_TYPE_MAP.put("xsl", "application/xml"); + CONTENT_TYPE_MAP.put("xslfo", "text/x-xslfo"); + CONTENT_TYPE_MAP.put("xslt", "application/xml"); + CONTENT_TYPE_MAP.put("xspf", "application/xspf+xml"); + CONTENT_TYPE_MAP.put("xul", "application/vnd.mozilla.xul+xml"); + CONTENT_TYPE_MAP.put("xwd", "image/x-xwindowdump"); + CONTENT_TYPE_MAP.put("xyz", "chemical/x-pdb"); + CONTENT_TYPE_MAP.put("xz", "application/x-xz"); + CONTENT_TYPE_MAP.put("w2p", "application/w2p"); + CONTENT_TYPE_MAP.put("z", "application/x-compress"); + CONTENT_TYPE_MAP.put("zabw", "application/x-abiword"); + CONTENT_TYPE_MAP.put("zip", "application/zip"); + } +} diff --git a/src/main/java/com/jmal/clouddisk/util/FileContentUtil.java b/src/main/java/com/jmal/clouddisk/util/FileContentUtil.java new file mode 100644 index 0000000..23369a9 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/FileContentUtil.java @@ -0,0 +1,112 @@ +package com.jmal.clouddisk.util; + +import lombok.extern.slf4j.Slf4j; +import nl.siegmann.epublib.domain.Book; +import nl.siegmann.epublib.domain.Resource; +import org.apache.pdfbox.pdmodel.PDDocument; +import org.apache.pdfbox.rendering.ImageType; +import org.apache.pdfbox.rendering.PDFRenderer; + +import javax.imageio.ImageIO; +import java.awt.image.BufferedImage; +import java.io.*; +import java.nio.file.Paths; +import java.util.ArrayList; +import java.util.List; + +import static com.jmal.clouddisk.util.FFMPEGUtils.getWaitingForResults; + +@Slf4j +public class FileContentUtil { + + private static final String mxcadassemblyPath = "/usr/local/mxcad"; + + public static void readFailed(File file, IOException e) { + log.warn("读取文件内容失败, file: {}, {}", file.getAbsolutePath(), e.getMessage()); + } + + public static File getCoverPath(String outputPath) { + return new File(outputPath, "cover.jpg"); + } + + public static File pdfCoverImage(File file, PDDocument document, String outputPath) { + try { + PDFRenderer pdfRenderer = new PDFRenderer(document); + BufferedImage coverImage = pdfRenderer.renderImageWithDPI(0, 128, ImageType.RGB); + // 将封面图像保存为JPEG文件 + File coverImageFile = getCoverPath(outputPath); + ImageIO.write(coverImage, "JPEG", coverImageFile); + return coverImageFile; + } catch (Throwable e) { + log.warn("PDF 文件封面图像生成失败: {}, file: {}", e.getMessage(), file.getName()); + return null; + } + } + + public static File epubCoverImage(Book book, String outputPath) { + // 获取封面图片 + Resource coverImage = book.getCoverImage(); + if (coverImage != null) { + File coverImageFile = getCoverPath(outputPath); + try (InputStream coverImageInputStream = coverImage.getInputStream(); + OutputStream coverImageOutput = new FileOutputStream(coverImageFile)) { + byte[] buffer = new byte[1024]; + int bytesRead; + while ((bytesRead = coverImageInputStream.read(buffer)) != -1) { + coverImageOutput.write(buffer, 0, bytesRead); + } + return coverImageFile; + } catch (Throwable e) { + log.warn("epub 文件封面图像生成失败: {}", e.getMessage()); + return null; + } + } + log.warn("epub 文件封面图像生成失败: 未找到封面图片"); + return null; + } + + /** + * 将dwg文件转换为mxweb文件的命令 + * + * @param sourceFile dwg文件绝对路径 + * @param outputPath 输出路径 + * @param outputFile 输出文件名 + */ + public static void dwgConvert(String sourceFile, String outputPath, String outputFile) { + if (!Paths.get(mxcadassemblyPath).toFile().exists()) { + return; + } + try { + ProcessBuilder processBuilder = dwgConvertCommand(sourceFile, outputPath, outputFile); + Process process = processBuilder.start(); + outputPath = getWaitingForResults(outputPath, processBuilder, process, 60); + if (outputPath != null) { + log.info("dwg文件转换成功, outputPath: {}", outputPath); + } + } catch (InterruptedException | IOException e) { + log.error(e.getMessage(), e); + } + } + + /** + * 将dwg文件转换为mxweb文件的命令 + * @param sourceFile dwg文件绝对路径 + * @param outPath 输出路径 + * @param outFile 输出文件名 + * @return ProcessBuilder + */ + private static ProcessBuilder dwgConvertCommand(String sourceFile, String outPath, String outFile) { + // 转换文件路径. + String command = "./mxcadassembly"; + // 转换参数。 + String path = "{'srcpath':'" + sourceFile + "','outpath':'" + outPath + "','outname':'" + outFile + "'}"; + ProcessBuilder processBuilder = new ProcessBuilder(); + processBuilder.redirectErrorStream(true); + List commands = new ArrayList<>(); + commands.add(command); + commands.add(path); + processBuilder.command(commands).directory(new File(mxcadassemblyPath)); + processBuilder.redirectErrorStream(true); + return processBuilder; + } +} diff --git a/src/main/java/com/jmal/clouddisk/util/FileNameUtils.java b/src/main/java/com/jmal/clouddisk/util/FileNameUtils.java new file mode 100644 index 0000000..0889f21 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/FileNameUtils.java @@ -0,0 +1,25 @@ +package com.jmal.clouddisk.util; + +import cn.hutool.core.util.URLUtil; + +public class FileNameUtils { + + /** + * 安全地解码一个可能经过URL编码的文件名或路径。 + * 这个方法修复了 java.net.URLDecoder 会错误地将 '+' 转换为空格的问题。 + * 它正确地处理了 '+' 字符,同时解码其他的 %xx 序列。 + * + * @param encodedPath 经过编码的路径字符串 + * @return 解码后的路径字符串 + */ + public static String safeDecode(String encodedPath) { + if (encodedPath == null || encodedPath.isEmpty()) { + return encodedPath; + } + // 这样,URLDecoder在解码时,会把 '%2B' 转换回 '+',而不是转换成空格。 + // 同时,它仍然能正确地将真正的空格编码 '%20' 转换为空格。 + String protectedPath = encodedPath.replace("+", "%2B"); + return URLUtil.decode(protectedPath); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/util/HashUtil.java b/src/main/java/com/jmal/clouddisk/util/HashUtil.java new file mode 100644 index 0000000..d133118 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/HashUtil.java @@ -0,0 +1,26 @@ +package com.jmal.clouddisk.util; + +import com.google.common.hash.HashFunction; +import com.google.common.hash.Hashing; + +import java.io.File; +import java.io.IOException; + +public class HashUtil { + + private static final HashFunction SHA256 = Hashing.sha256(); + + public static String sha256(File file) { + try { + return com.google.common.io.Files.asByteSource(file) + .hash(SHA256) + .toString(); + } catch (IOException e) { + throw new RuntimeException("Error reading file: " + file.getAbsolutePath(), e); + } + } + + public static String sha256(String str) { + return SHA256.hashString(str, java.nio.charset.StandardCharsets.UTF_8).toString(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/util/HybridThrottleExecutor.java b/src/main/java/com/jmal/clouddisk/util/HybridThrottleExecutor.java new file mode 100644 index 0000000..cd88997 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/HybridThrottleExecutor.java @@ -0,0 +1,137 @@ +package com.jmal.clouddisk.util; + +import java.util.concurrent.Executors; +import java.util.concurrent.ScheduledExecutorService; +import java.util.concurrent.ScheduledFuture; +import java.util.concurrent.TimeUnit; + +/** + * 混合节流执行器 + */ +public class HybridThrottleExecutor { + private final ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1); + private ScheduledFuture scheduledFuture; + private final long delay; + private volatile long lastExecuteTime = 0; + private volatile boolean isFirstCall = true; + private volatile Runnable pendingTask = null; + private final Object lock = new Object(); + + public HybridThrottleExecutor(long delay) { + this.delay = delay; + } + + public void execute(Runnable command) { + synchronized (lock) { + long currentTime = System.currentTimeMillis(); + + if (isFirstCall) { + // 第一次调用立即执行 + isFirstCall = false; + lastExecuteTime = currentTime; + scheduler.submit(command); + return; + } + + // 保存最新的任务(确保不丢失) + pendingTask = command; + + // 取消之前的延迟任务 + if (scheduledFuture != null && !scheduledFuture.isDone()) { + scheduledFuture.cancel(false); + } + + long timeSinceLastExecution = currentTime - lastExecuteTime; + + if (timeSinceLastExecution >= delay) { + // 如果距离上次执行已经超过延迟时间,立即执行 + lastExecuteTime = currentTime; + Runnable taskToExecute = pendingTask; + pendingTask = null; + scheduler.submit(taskToExecute); + } else { + // 计算还需要等待的时间 + long remainingDelay = delay - timeSinceLastExecution; + scheduledFuture = scheduler.schedule(() -> { + synchronized (lock) { + if (pendingTask != null) { + lastExecuteTime = System.currentTimeMillis(); + Runnable taskToExecute = pendingTask; + pendingTask = null; + taskToExecute.run(); + } + } + }, remainingDelay, TimeUnit.MILLISECONDS); + } + } + } + + public void cancel() { + synchronized (lock) { + if (scheduledFuture != null && !scheduledFuture.isDone()) { + scheduledFuture.cancel(false); + } + pendingTask = null; + } + } + + public void reset() { + synchronized (lock) { + isFirstCall = true; + lastExecuteTime = 0; + cancel(); + } + } + + public void shutdown() { + scheduler.shutdown(); + } + + public static void main(String[] args) { + HybridThrottleExecutor executor = new HybridThrottleExecutor(500); // 节流时间500毫秒 + + System.out.println("开始测试混合节流,当前时间:" + System.currentTimeMillis()); + + // 测试1: 快速连续调用 + System.out.println("\n=== 测试1: 快速连续调用 ==="); + for (int i = 0; i < 5; i++) { + final int param = i; + System.out.println("提交任务 " + param + ",时间:" + System.currentTimeMillis()); + executor.execute(() -> System.out.println("执行任务 " + param + ",时间:" + System.currentTimeMillis())); + try { + Thread.sleep(100); // 快速调用,间隔小于节流时间 + } catch (InterruptedException e) { + System.err.println("Error occurred: " + e.getMessage()); + } + } + + // 等待一段时间 + try { + Thread.sleep(1000); + } catch (InterruptedException e) { + System.err.println("Error occurred: " + e.getMessage()); + } + + // 测试2: 慢速调用 + System.out.println("\n=== 测试2: 慢速调用(间隔大于节流时间) ==="); + for (int i = 10; i < 13; i++) { + final int param = i; + System.out.println("提交任务 " + param + ",时间:" + System.currentTimeMillis()); + executor.execute(() -> System.out.println("执行任务 " + param + ",时间:" + System.currentTimeMillis())); + try { + Thread.sleep(600); // 慢速调用,间隔大于节流时间 + } catch (InterruptedException e) { + System.err.println("Error occurred: " + e.getMessage()); + } + } + + // 等待所有任务完成 + try { + Thread.sleep(1000); + } catch (InterruptedException e) { + System.err.println("Error occurred: " + e.getMessage()); + } + + executor.shutdown(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/util/ImageExifUtil.java b/src/main/java/com/jmal/clouddisk/util/ImageExifUtil.java new file mode 100644 index 0000000..500b105 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/ImageExifUtil.java @@ -0,0 +1,141 @@ +package com.jmal.clouddisk.util; + +import cn.hutool.core.date.LocalDateTimeUtil; +import cn.hutool.core.util.NumberUtil; +import com.drew.imaging.ImageMetadataReader; +import com.drew.metadata.Metadata; +import com.drew.metadata.exif.ExifIFD0Directory; +import com.drew.metadata.exif.ExifSubIFDDescriptor; +import com.drew.metadata.exif.ExifSubIFDDirectory; +import com.drew.metadata.exif.GpsDirectory; +import com.jmal.clouddisk.model.ExifInfo; +import com.jmal.clouddisk.service.Constants; +import lombok.extern.slf4j.Slf4j; + +import java.io.File; +import java.util.Date; +import java.util.TimeZone; + +@Slf4j +public class ImageExifUtil { + + public static boolean isImageType(String contentType, String suffix) { + return contentType.startsWith(Constants.CONTENT_TYPE_IMAGE) && (!"ico".equals(suffix) && !"svg".equals(suffix)); + } + + public static ExifInfo getExif(File file) { + ExifInfo exifInfo = new ExifInfo(); + if (file == null) { + return exifInfo; + } + if (!file.exists()) { + return exifInfo; + } + try { + Metadata metadata = ImageMetadataReader.readMetadata(file); + // 获取图片基础信息 + ExifIFD0Directory directory = metadata.getFirstDirectoryOfType(ExifIFD0Directory.class); + if (directory != null) { + exifInfo = new ExifInfo(); + // 设备制造商 + if (directory.containsTag(ExifIFD0Directory.TAG_MAKE)) { + exifInfo.setMake(directory.getString(ExifIFD0Directory.TAG_MAKE)); + } + // 设备型号 + if (directory.containsTag(ExifIFD0Directory.TAG_MODEL)) { + exifInfo.setModel(directory.getString(ExifIFD0Directory.TAG_MODEL)); + } + // 分辨率 + if (directory.containsTag(ExifIFD0Directory.TAG_X_RESOLUTION) && directory.containsTag(ExifIFD0Directory.TAG_Y_RESOLUTION)) { + exifInfo.setResolution(directory.getString(ExifIFD0Directory.TAG_X_RESOLUTION) + "x" + directory.getString(ExifIFD0Directory.TAG_Y_RESOLUTION)); + } + // 内容创作者 + if (directory.containsTag(ExifIFD0Directory.TAG_SOFTWARE)) { + exifInfo.setSoftware(directory.getString(ExifIFD0Directory.TAG_SOFTWARE)); + } + } + + // 获取图片的Exif信息 + ExifSubIFDDirectory exifDirectory = metadata.getFirstDirectoryOfType(ExifSubIFDDirectory.class); + if (exifDirectory != null) { + ExifSubIFDDescriptor descriptor = new ExifSubIFDDescriptor(exifDirectory); + // 内容创建时间 + if (exifDirectory.containsTag(ExifSubIFDDirectory.TAG_DATETIME_ORIGINAL)) { + Date date = exifDirectory.getDateOriginal(TimeZone.getDefault()); + if (date != null) { + exifInfo.setDateTimeOriginal(LocalDateTimeUtil.of(date)); + } + } + // 光圈值 + if (exifDirectory.containsTag(ExifSubIFDDirectory.TAG_APERTURE)) { + exifInfo.setAperture(NumberUtil.round(exifDirectory.getDouble(ExifSubIFDDirectory.TAG_APERTURE), 4).doubleValue()); + } + // 光圈数 + if (exifDirectory.containsTag(ExifSubIFDDirectory.TAG_FNUMBER)) { + exifInfo.setFNumber("f/" + exifDirectory.getString(ExifSubIFDDirectory.TAG_FNUMBER)); + } + // 曝光时间 + if (exifDirectory.containsTag(ExifSubIFDDirectory.TAG_EXPOSURE_TIME)) { + exifInfo.setExposureTime(exifDirectory.getDouble(ExifSubIFDDirectory.TAG_EXPOSURE_TIME)); + } + // ISO感光度 + if (exifDirectory.containsTag(ExifSubIFDDirectory.TAG_ISO_EQUIVALENT)) { + exifInfo.setIsoEquivalent(exifDirectory.getInteger(ExifSubIFDDirectory.TAG_ISO_EQUIVALENT)); + } + // 曝光程序 + if (exifDirectory.containsTag(ExifSubIFDDirectory.TAG_EXPOSURE_PROGRAM)) { + exifInfo.setExposureProgram(descriptor.getExposureProgramDescription()); + } + // 测光模式 + if (exifDirectory.containsTag(ExifSubIFDDirectory.TAG_METERING_MODE)) { + exifInfo.setMeteringMode(descriptor.getMeteringModeDescription()); + } + // 白平衡 + if (exifDirectory.containsTag(ExifSubIFDDirectory.TAG_WHITE_BALANCE_MODE)) { + exifInfo.setWhiteBalanceMode(descriptor.getWhiteBalanceModeDescription()); + } + // 焦距 + if (exifDirectory.containsTag(ExifSubIFDDirectory.TAG_FOCAL_LENGTH)) { + exifInfo.setFocalLength(exifDirectory.getDouble(ExifSubIFDDirectory.TAG_FOCAL_LENGTH)); + } + // 闪光灯 + if (exifDirectory.containsTag(ExifSubIFDDirectory.TAG_FLASH)) { + exifInfo.setFlash(getFlashDescription(exifDirectory.getInteger(ExifSubIFDDirectory.TAG_FLASH))); + } + } + // 获取GPS信息 + GpsDirectory gpsDirectory = metadata.getFirstDirectoryOfType(GpsDirectory.class); + if (gpsDirectory != null) { + if (gpsDirectory.getGeoLocation() != null) { + // 经度 + exifInfo.setLongitude(gpsDirectory.getGeoLocation().getLongitude()); + } + if (gpsDirectory.getGeoLocation() != null) { + // 纬度 + exifInfo.setLatitude(gpsDirectory.getGeoLocation().getLatitude()); + } + } + return exifInfo; + } catch (Exception e) { + // 获取图片EXIF信息失败 + log.warn("获取图片EXIF信息失败: {}, {}", e.getMessage(), file); + } + return exifInfo; + } + + /** + * 获取闪光灯描述 + * @param value 闪光灯值 + * @return 闪光灯描述 + */ + public static String getFlashDescription(Integer value) { + if (value == null) + return null; + StringBuilder sb = new StringBuilder(); + if ((value & 0x1) != 0) + sb.append("是"); + else + sb.append("无"); + return sb.toString(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/util/MapUtils.java b/src/main/java/com/jmal/clouddisk/util/MapUtils.java new file mode 100644 index 0000000..0792d26 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/MapUtils.java @@ -0,0 +1,29 @@ +package com.jmal.clouddisk.util; + +import java.util.LinkedHashMap; +import java.util.Map; + +/** + * @Description Map工具类 + * @Date 2019-09-06 10:28 + * @author jmal + */ +public class MapUtils { + + /*** + * 按value值倒序排序 + * @param map + * @param + * @param + * @return + */ + public static > Map sortReverseByValue(Map map) { + Map result = new LinkedHashMap<>(); + + map.entrySet().stream() + .sorted(Map.Entry.comparingByValue() + .reversed()).forEachOrdered(e -> result.put(e.getKey(), e.getValue())); + return result; + } + +} diff --git a/src/main/java/com/jmal/clouddisk/util/MessageUtil.java b/src/main/java/com/jmal/clouddisk/util/MessageUtil.java new file mode 100644 index 0000000..b6d6037 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/MessageUtil.java @@ -0,0 +1,41 @@ +package com.jmal.clouddisk.util; + +import lombok.RequiredArgsConstructor; +import org.springframework.context.MessageSource; +import org.springframework.context.NoSuchMessageException; +import org.springframework.context.i18n.LocaleContextHolder; +import org.springframework.stereotype.Component; + +import java.util.Locale; + +@Component +@RequiredArgsConstructor +public class MessageUtil { + + private final MessageSource messageSource; + + /** + * 获取国际化消息 + * @param messageKey 消息的键 + * @return 国际化消息 + */ + public String getMessage(String messageKey) { + return getMessage(messageKey, LocaleContextHolder.getLocale()); + } + + /** + * 获取国际化消息 + * @param messageKey 消息的键 + * @param locale 语言 + * @return 国际化消息 + */ + public String getMessage(String messageKey, Locale locale) { + String result = messageKey; + try { + result = messageSource.getMessage(messageKey, null, locale); + } catch (NoSuchMessageException ignored) { + } + return result; + } + +} diff --git a/src/main/java/com/jmal/clouddisk/util/MongoUtil.java b/src/main/java/com/jmal/clouddisk/util/MongoUtil.java new file mode 100644 index 0000000..c33a489 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/MongoUtil.java @@ -0,0 +1,101 @@ +package com.jmal.clouddisk.util; + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.text.CharSequenceUtil; +import com.jmal.clouddisk.model.query.QueryBaseDTO; +import org.springframework.data.domain.Sort; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.data.mongodb.core.query.Update; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; + +/** + * @author jmal + * @Description mongodb工具类 + * @Date 2020/10/28 10:55 上午 + */ +public class MongoUtil { + + /*** + * 需要排除的字段 + */ + private static final List DEFAULT_EXCLUDES = Arrays.asList("id", "_id"); + + /** + * 获取mongodb更新对象 + * @param source 源对象 + * @return Update + */ + public static Update getUpdate(Object source) { + return getUpdate(source, DEFAULT_EXCLUDES); + } + + /** + * 获取mongodb更新对象 + * @param source 源对象 + * @param excludeList 要排除的字段列表 + * @return Update + */ + public static Update getUpdate(Object source, List excludeList) { + Update update = new Update(); + Map categoryDTOMap = BeanUtil.beanToMap(source); + for (Map.Entry objectEntry : categoryDTOMap.entrySet()) { + if(excludeList != null && excludeList.contains(objectEntry.getKey())){ + continue; + } + if(objectEntry.getValue() != null){ + update.set(objectEntry.getKey(), objectEntry.getValue()); + } + } + return update; + } + + /*** + * 通用查询条件 + * @param queryBaseDTO 查询条件 + * @param query 查询对象 + */ + public static void commonQuery(QueryBaseDTO queryBaseDTO, Query query) { + if(queryBaseDTO.getPage() != null && queryBaseDTO.getPageSize() != null) { + int skip = (queryBaseDTO.getPage() - 1) * queryBaseDTO.getPageSize(); + query.skip(skip); + query.limit(queryBaseDTO.getPageSize()); + } + if(!CharSequenceUtil.isBlank(queryBaseDTO.getSortProp()) && !CharSequenceUtil.isBlank(queryBaseDTO.getSortOrder())){ + if ("descending".equals(queryBaseDTO.getSortOrder())) { + query.with(Sort.by(Sort.Direction.DESC, queryBaseDTO.getSortProp())); + } else { + query.with(Sort.by(Sort.Direction.ASC, queryBaseDTO.getSortProp())); + } + } + } + + /** + * 检查是否为有效的ObjectId + * @param objectId ObjectId + * @return 是否为有效的ObjectId + */ + public static boolean isValidObjectId(String objectId) { + // 检查长度是否为24个字符 + if (objectId == null || objectId.length() != 24) { + return false; + } + // 检查是否为有效的十六进制字符串 + for (char c : objectId.toCharArray()) { + if (!isHexCharacter(c)) { + return false; + } + } + return true; + } + + // 检查字符是否为有效的十六进制字符 + private static boolean isHexCharacter(char c) { + return (c >= '0' && c <= '9') || + (c >= 'a' && c <= 'f') || + (c >= 'A' && c <= 'F'); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/util/MyFileUtils.java b/src/main/java/com/jmal/clouddisk/util/MyFileUtils.java new file mode 100644 index 0000000..c87c299 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/MyFileUtils.java @@ -0,0 +1,174 @@ +package com.jmal.clouddisk.util; + +import cn.hutool.core.date.TimeInterval; +import cn.hutool.core.io.CharsetDetector; +import cn.hutool.core.io.FileTypeUtil; +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.util.StrUtil; +import cn.hutool.crypto.digest.DigestAlgorithm; +import com.jmal.clouddisk.service.Constants; +import lombok.extern.slf4j.Slf4j; +import org.mozilla.universalchardet.UniversalDetector; + +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.nio.charset.Charset; +import java.nio.charset.StandardCharsets; +import java.security.MessageDigest; +import java.security.NoSuchAlgorithmException; +import java.util.Arrays; +import java.util.List; + +/** + * @author jmal + * @Description 文件工具类 + * @Date 2020-06-16 16:24 + */ +@Slf4j +public class MyFileUtils { + + public static List hasContentTypes = Arrays.asList("pdf", "drawio", "mind", "doc", "docx", "xls", "xlsx", "xlsm", "ppt", "pptx", "csv", "tsv", "dotm", "xlt", "xltm", "dot", "dotx", "xlam", "xla", "pages", "epub", "dwg"); + + private MyFileUtils() { + + } + + public static void main(String[] args) throws IOException, NoSuchAlgorithmException { + System.out.println(extName("file")); + File file1 = new File("/Users/jmal/Downloads/归档.zip"); + File file2 = new File("/Users/jmal/Downloads/归档.zip"); + TimeInterval timer = new TimeInterval(); + System.out.println(hashEquals(file1.getAbsolutePath(), file2.getAbsolutePath())); + System.out.println(timer.interval()); + } + + public static String extName(File file) { + return FileUtil.extName(file.getName()).toLowerCase(); + } + + public static String extName(String fileName) { + return FileUtil.extName(fileName).toLowerCase(); + } + + public static boolean hasCharset(File file) { + try { + if (file == null) { + return false; + } + String suffix = MyFileUtils.extName(file.getName()); + String contentType = FileContentTypeUtils.getContentType(suffix); + if (file.isDirectory()) { + return false; + } + if (contentType.contains(Constants.VIDEO)) { + return false; + } + if (contentType.contains(Constants.CONTENT_TYPE_IMAGE)) { + return false; + } + if (contentType.contains(Constants.AUDIO)) { + return false; + } + if (contentType.contains("zip")) { + return false; + } + if (contentType.contains("rar")) { + return false; + } + if (contentType.contains("7z")) { + return false; + } + if (contentType.contains("tar")) { + return false; + } + if (contentType.contains("gz")) { + return false; + } + if (contentType.contains("bz2")) { + return false; + } + if (contentType.contains("xz")) { + return false; + } + // 大于250M的文件不检查 + if (file.length() > 250 * 1024 * 1024) { + return false; + } + return CharsetDetector.detect(file) != null; + } catch (Exception e) { + return false; + } + } + + /*** + * 获取文件的字符编码 + * @param file 源文件 + * @return 字符编码 + */ + public static Charset getFileCharset(File file) { + try { + String charset = UniversalDetector.detectCharset(file); + return StrUtil.isBlank(charset) ? StandardCharsets.UTF_8 : Charset.forName(charset); + } catch (Exception e) { + return StandardCharsets.UTF_8; + } + } + + public static boolean checkNoCacheFile(File file) { + try { + if (file == null) { + return false; + } + if (!file.isFile()) { + return false; + } + if (file.length() == 0) { + return true; + } + String type = FileTypeUtil.getType(file).toLowerCase(); + if (hasContentFile(type)) return true; + return hasCharset(file); + } catch (Exception e) { + return false; + } + } + + public static boolean hasContentFile(String type) { + return hasContentTypes.contains(type); + } + + public static MessageDigest digest; + + static { + try { + digest = MessageDigest.getInstance(DigestAlgorithm.MD5.getValue()); + } catch (NoSuchAlgorithmException e) { + throw new RuntimeException(e); + } + } + + public static String calculateHash(String filePath) throws IOException { + try (FileInputStream fis = new FileInputStream(filePath)) { + byte[] buffer = new byte[1024]; + int bytesRead; + while ((bytesRead = fis.read(buffer)) != -1) { + digest.update(buffer, 0, bytesRead); + } + } + byte[] hashBytes = digest.digest(); + StringBuilder sb = new StringBuilder(); + for (byte b : hashBytes) { + sb.append(String.format("%02x", b)); + } + return sb.toString(); + } + + public static boolean hashEquals(String filePath1, String filePath2) throws IOException { + String hash1 = calculateHash(filePath1); + String hash2 = calculateHash(filePath2); + return hash1.equals(hash2); + } +} + + diff --git a/src/main/java/com/jmal/clouddisk/util/PasswordHash.java b/src/main/java/com/jmal/clouddisk/util/PasswordHash.java new file mode 100644 index 0000000..335e52a --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/PasswordHash.java @@ -0,0 +1,207 @@ +package com.jmal.clouddisk.util; +/* + Password Hashing With PBKDF2 (http://crackstation.net/hashing-security.htm). + Copyright (c) 2013, Taylor Hornby + All rights reserved. +

+ Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: +

+ 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. +

+ 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +

+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + */ + +import cn.hutool.core.lang.Console; +import cn.hutool.core.util.HexUtil; +import lombok.SneakyThrows; + +import java.security.SecureRandom; +import javax.crypto.spec.PBEKeySpec; +import javax.crypto.SecretKeyFactory; + +/** + * PBKDF2 salted password hashing. + * + * @author: havoc AT defuse.ca + * www: http://crackstation.net/hashing-security.htm + */ +public class PasswordHash { + public static final String PBKDF2_ALGORITHM = "PBKDF2WithHmacSHA1"; + + // The following constants may be changed without breaking existing hashes. + public static final int SALT_BYTE_SIZE = 24; + public static final int HASH_BYTE_SIZE = 24; + public static final int PBKDF2_ITERATIONS = 1000; + + public static final int ITERATION_INDEX = 0; + public static final int SALT_INDEX = 1; + public static final int PBKDF2_INDEX = 2; + + /** + * 返回密码的加盐的PBKDF2散列 + * + * @param password 密码 + * @return 密码的加盐的PBKDF2散列 + */ + public static String createHash(String password) { + return createHash(password.toCharArray()); + } + + /** + * 返回密码的加盐的PBKDF2散列 + * + * @param password 密码 + * @return 密码的加盐的PBKDF2散列 + */ + private static String createHash(char[] password) { + // 生成一个随机的盐 + SecureRandom random = new SecureRandom(); + byte[] salt = new byte[SALT_BYTE_SIZE]; + random.nextBytes(salt); + // 对密码哈希 + byte[] hash = pbkdf2(password, salt, PBKDF2_ITERATIONS, HASH_BYTE_SIZE); + // 格式化 iterations:salt:hash + return PBKDF2_ITERATIONS + ":" + HexUtil.encodeHexStr(salt) + ":" + HexUtil.encodeHexStr(hash); + } + + + + /** + * Validates a password using a hash. + * + * @param password the password to check + * @param correctHash the hash of the valid password + * @return true if the password is correct, false if not + */ + public static boolean validatePassword(String password, String correctHash) { + return validatePassword(password.toCharArray(), correctHash); + } + + /** + * Validates a password using a hash. + * + * @param password the password to check + * @param correctHash the hash of the valid password + * @return true if the password is correct, false if not + */ + private static boolean validatePassword(char[] password, String correctHash) { + // Decode the hash into its parameters + String[] params = correctHash.split(":"); + int iterations = Integer.parseInt(params[ITERATION_INDEX]); + byte[] salt = fromHex(params[SALT_INDEX]); + byte[] hash = fromHex(params[PBKDF2_INDEX]); + // Compute the hash of the provided password, using the same salt, + // iteration count, and hash length + byte[] testHash = pbkdf2(password, salt, iterations, hash.length); + // Compare the hashes in constant time. The password is correct if + // both hashes match. + return slowEquals(hash, testHash); + } + + /** + * Compares two byte arrays in length-constant time. This comparison method + * is used so that password hashes cannot be extracted from an on-line + * system using a timing attack and then attacked off-line. + * + * @param a the first byte array + * @param b the second byte array + * @return true if both byte arrays are the same, false if not + */ + private static boolean slowEquals(byte[] a, byte[] b) { + int diff = a.length ^ b.length; + for (int i = 0; i < a.length && i < b.length; i++) { + diff |= a[i] ^ b[i]; + } + return diff == 0; + } + + /** + * Computes the PBKDF2 hash of a password. + * + * @param password the password to hash. + * @param salt the salt + * @param iterations the iteration count (slowness factor) + * @param bytes the length of the hash to compute in bytes + * @return the PBDKF2 hash of the password + */ + @SneakyThrows + private static byte[] pbkdf2(char[] password, byte[] salt, int iterations, int bytes) { + PBEKeySpec spec = new PBEKeySpec(password, salt, iterations, bytes * 8); + SecretKeyFactory skf = SecretKeyFactory.getInstance(PBKDF2_ALGORITHM); + return skf.generateSecret(spec).getEncoded(); + } + + /** + * Converts a string of hexadecimal characters into a byte array. + * + * @param hex the hex string + * @return the hex string decoded into a byte array + */ + private static byte[] fromHex(String hex) { + byte[] binary = new byte[hex.length() / 2]; + for (int i = 0; i < binary.length; i++) { + binary[i] = (byte) Integer.parseInt(hex.substring(2 * i, 2 * i + 2), 16); + } + return binary; + } + + /** + * Tests PasswordHash + * + * @param args ignored + */ + public static void main(String[] args) { + try { + // Print out 10 hashes + for (int i = 0; i < 10; i++) { + Console.log(PasswordHash.createHash("pqsdfjoiwef!")); + } + + // Test password validation + boolean failure = false; + Console.log("Running tests..."); + for (int i = 0; i < 100; i++) { + String password = "" + i; + String hash = createHash(password); + String secondHash = createHash(password); + if (hash.equals(secondHash)) { + Console.log("FAILURE: TWO HASHES ARE EQUAL!"); + failure = true; + } + String wrongPassword = "" + (i + 1); + if (validatePassword(wrongPassword, hash)) { + Console.log("FAILURE: WRONG PASSWORD ACCEPTED!"); + failure = true; + } + if (!validatePassword(password, hash)) { + Console.log("FAILURE: GOOD PASSWORD NOT ACCEPTED!"); + failure = true; + } + } + if (failure) { + Console.log("TESTS FAILED!"); + } else { + Console.log("TESTS PASSED!"); + } + } catch (Exception ex) { + Console.log("ERROR: " + ex); + } + } + +} diff --git a/src/main/java/com/jmal/clouddisk/util/ResponseResult.java b/src/main/java/com/jmal/clouddisk/util/ResponseResult.java new file mode 100644 index 0000000..10af9c1 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/ResponseResult.java @@ -0,0 +1,23 @@ +package com.jmal.clouddisk.util; + +import lombok.Getter; +import lombok.Setter; +import lombok.experimental.Accessors; + +import java.util.Map; + +/** + * ResponseResult + * + * @author jmal + */ +@Setter +@Getter +@Accessors(chain = true) +public class ResponseResult { + private int code; + private Object message; + private T data; + private Object count; + private Map props; +} diff --git a/src/main/java/com/jmal/clouddisk/util/ResultUtil.java b/src/main/java/com/jmal/clouddisk/util/ResultUtil.java new file mode 100644 index 0000000..63fa066 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/ResultUtil.java @@ -0,0 +1,99 @@ +package com.jmal.clouddisk.util; + +import com.jmal.clouddisk.exception.CommonException; +import com.jmal.clouddisk.exception.ExceptionType; + +/** + * ResultUtil + * + * @author jmal + */ +public class ResultUtil { + + private ResultUtil() { + throw new IllegalStateException("Utility class"); + } + + public static ResponseResult genResult() { + ResponseResult result = new ResponseResult<>(); + result.setCode(0); + result.setMessage(true); + return result; + } + + public static ResponseResult success(T data) { + ResponseResult result = new ResponseResult<>(); + result.setCode(0); + result.setMessage(true); + result.setData(data); + return result; + } + + public static ResponseResult successMsg(String message) { + ResponseResult result = new ResponseResult<>(); + result.setCode(0); + result.setMessage(message); + return result; + } + + public static ResponseResult success() { + ResponseResult result = new ResponseResult<>(); + result.setCode(0); + result.setMessage(true); + return result; + } + + public static ResponseResult error(int code, String msg) { + ResponseResult result = new ResponseResult<>(); + result.setCode(code); + result.setMessage(msg); + return result; + } + + public static ResponseResult error(String msg) { + ResponseResult result = new ResponseResult<>(); + result.setCode(-1); + result.setMessage(msg); + return result; + } + + public static ResponseResult error(ExceptionType exceptionType) { + ResponseResult result = new ResponseResult<>(); + result.setCode(exceptionType.getCode()); + result.setMessage(exceptionType.getMsg()); + return result; + } + + public static ResponseResult warning(String msg) { + ResponseResult result = new ResponseResult<>(); + result.setCode(-2); + result.setMessage(msg); + return result; + } + + public static ResponseResult ignore(String msg) { + ResponseResult result = new ResponseResult<>(); + result.setCode(-3); + result.setMessage(msg); + return result; + } + + /*** + * 检查参数是否为空 + * @param params 参数集合 + */ + public static void checkParamIsNull(Object... params) { + for (Object param : params) { + if (param instanceof String) { + if ("".equals(param) || "null".equals(param)) { + throw new CommonException(ExceptionType.MISSING_PARAMETERS.getCode(), ExceptionType.MISSING_PARAMETERS.getMsg()); + } + } else { + if(param == null){ + throw new CommonException(ExceptionType.MISSING_PARAMETERS.getCode(), ExceptionType.MISSING_PARAMETERS.getMsg()); + } + } + } + } + +} diff --git a/src/main/java/com/jmal/clouddisk/util/ShortSignedIdUtil.java b/src/main/java/com/jmal/clouddisk/util/ShortSignedIdUtil.java new file mode 100644 index 0000000..c00c0c8 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/ShortSignedIdUtil.java @@ -0,0 +1,123 @@ +package com.jmal.clouddisk.util; + +import cn.hutool.crypto.SecureUtil; +import cn.hutool.crypto.symmetric.SymmetricAlgorithm; +import lombok.Getter; +import lombok.extern.slf4j.Slf4j; + +import javax.crypto.Mac; +import javax.crypto.spec.SecretKeySpec; +import java.nio.charset.StandardCharsets; +import java.security.InvalidKeyException; +import java.security.NoSuchAlgorithmException; +import java.time.LocalDateTime; +import java.time.ZoneId; +import java.util.Base64; + +@Slf4j +public class ShortSignedIdUtil { + + private final static byte[] keyBytes = SecureUtil.generateKey(SymmetricAlgorithm.AES.getValue(), 256).getEncoded(); + public static String generateToken(String key, LocalDateTime localDateTime) { + try { + // 压缩 key(短 ID 优先) + String shortKey = key.length() > 10 ? key.replace("-", "") : key; + // 相对时间(分钟级,基于 2025-01-01) + long baseTime = LocalDateTime.of(2025, 1, 1, 0, 0).atZone(ZoneId.systemDefault()).toEpochSecond(); + long expiry = localDateTime.atZone(ZoneId.systemDefault()).toEpochSecond(); + int relativeExpiry = (int) ((expiry - baseTime) / 60); + String data = shortKey + ":" + relativeExpiry; + + byte[] signatureBytes = getSignatureBytes(data); + String signature = Base64.getUrlEncoder().withoutPadding().encodeToString(signatureBytes); + + return data + "." + signature; + } catch (Exception e) { + log.error("Failed to generate signed ID", e); + throw new RuntimeException("Failed to generate signed ID", e); + } + } + + private static byte[] getSignatureBytes(String data) throws NoSuchAlgorithmException, InvalidKeyException { + // HMAC-SHA256 签名 + Mac mac = Mac.getInstance("HmacSHA256"); + mac.init(new SecretKeySpec(keyBytes, "HmacSHA256")); + return mac.doFinal(data.getBytes(StandardCharsets.UTF_8)); + } + + public static VerificationResult verifyToken(String token) { + try { + // 分割 token + String[] parts = token.split("\\."); + if (parts.length != 2) { + return new VerificationResult(false, "Invalid token format"); + } + String data = parts[0]; + String receivedSignature = parts[1]; + + // 验证签名 + byte[] signatureBytes = getSignatureBytes(data); + String expectedSignature = Base64.getUrlEncoder().withoutPadding().encodeToString(signatureBytes); + if (!expectedSignature.equals(receivedSignature)) { + return new VerificationResult(false, "Invalid signature"); + } + + // 解析数据 + String[] dataParts = data.split(":"); + if (dataParts.length != 2) { + return new VerificationResult(false, "Invalid data format"); + } + String shortKey = dataParts[0]; + int relativeExpiry = Integer.parseInt(dataParts[1]); + + // 验证过期时间 + long baseTime = LocalDateTime.of(2025, 1, 1, 0, 0).atZone(ZoneId.systemDefault()).toEpochSecond(); + long expiry = baseTime + ((long) relativeExpiry * 60); + long currentTime = System.currentTimeMillis() / 1000; + if (expiry + 5 < currentTime) { + return new VerificationResult(false, "Token expired"); + } + + return new VerificationResult(true, "Valid", shortKey); + } catch (NumberFormatException e) { + return new VerificationResult(false, "Invalid timestamp"); + } catch (Exception e) { + return new VerificationResult(false, "Verification failed: " + e.getMessage()); + } + } + + // 验证结果类 + @Getter + public static class VerificationResult { + private final boolean valid; + private final String message; + private final String key; + + public VerificationResult(boolean valid, String message) { + this(valid, message, null); + } + + public VerificationResult(boolean valid, String message, String key) { + this.valid = valid; + this.message = message; + this.key = key; + } + + } + + public static void main(String[] args) { + String key = "123"; // 短 key,文件 ID + LocalDateTime expiry = LocalDateTime.now().plusMinutes(15); + + // 生成 token + String token = generateToken(key, expiry); + System.out.println("Token: " + token); + System.out.println("Length: " + token.length()); + + // 验证 + VerificationResult result = verifyToken(token + "1"); + System.out.println("Verified: " + result.isValid()); + System.out.println("Message: " + result.getMessage()); + System.out.println("Key: " + result.getKey()); + } +} diff --git a/src/main/java/com/jmal/clouddisk/util/StringUtil.java b/src/main/java/com/jmal/clouddisk/util/StringUtil.java new file mode 100644 index 0000000..292e32f --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/StringUtil.java @@ -0,0 +1,24 @@ +package com.jmal.clouddisk.util; + +/** + * @author jmal + * @Description StringUtil + * @Date 2021/4/29 2:54 下午 + */ +public class StringUtil { + + public static String escape(String s) { + StringBuilder sb = new StringBuilder(); + + for(int i = 0; i < s.length(); ++i) { + char c = s.charAt(i); + if (c == '\\' || c == '+' || c == '-' || c == '!' || c == '(' || c == ')' || c == ':' || c == '^' || c == '[' || c == ']' || c == '"' || c == '{' || c == '}' || c == '~' || c == '*' || c == '?' || c == '#' || c == '|' || c == '&' || c == '/') { + sb.append('\\'); + } + + sb.append(c); + } + + return sb.toString(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/util/SystemUtil.java b/src/main/java/com/jmal/clouddisk/util/SystemUtil.java new file mode 100644 index 0000000..0c86364 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/SystemUtil.java @@ -0,0 +1,104 @@ +package com.jmal.clouddisk.util; + +import cn.hutool.core.convert.Convert; +import cn.hutool.core.lang.Console; +import cn.hutool.core.util.NumberUtil; +import cn.hutool.http.HttpUtil; +import cn.hutool.system.oshi.CpuInfo; +import cn.hutool.system.oshi.OshiUtil; +import com.alibaba.fastjson2.JSON; +import com.alibaba.fastjson2.JSONObject; +import lombok.extern.slf4j.Slf4j; +import oshi.hardware.GlobalMemory; +import oshi.hardware.HWDiskStore; + +import java.io.File; + +/** + * @author jmal + * @Description 系统信息 + * @date 2022/4/13 14:13 + */ +@Slf4j +public class SystemUtil { + + public static void main(String[] args) throws Exception { + log.info("CPU使用率: {}%", getCpuUsed()); + log.info("内存使用率: {}%", getMemoryUsed()); + log.info("磁盘使用率: {}%", getDiskUsed()); + log.info("磁盘可以用空间: {}G", getFreeSpace()); + for (HWDiskStore diskStore : OshiUtil.getHardware().getDiskStores()) { + Console.log(diskStore.getName(), diskStore.getModel(), diskStore.getSize()/1024/1024/1024+"G", diskStore.getWrites(), diskStore.getReads(), diskStore.getReadBytes()); + } + log.info("最新版本号: {}", getNewVersion()); + } + + /** + * 获取CPU使用率 + */ + public static double getCpuUsed(){ + CpuInfo cpuInfo = OshiUtil.getCpuInfo(); + return cpuInfo.getUsed(); + } + + /** + * 获取内存使用率 + */ + public static double getMemoryUsed(){ + GlobalMemory globalMemory = OshiUtil.getHardware().getMemory(); + return getMemoryUsed(globalMemory); + } + + /** + * 获取内存使用率 + * @param globalMemory GlobalMemory + * @return 获取内存使用率 + */ + private static double getMemoryUsed(GlobalMemory globalMemory){ + return NumberUtil.round((1 - Convert.toDouble(globalMemory.getAvailable()) / globalMemory.getTotal()) * 100, 2).doubleValue(); + } + + /** + * 获取硬盘使用率 + */ + public static double getDiskUsed(){ + File win = new File("/"); + if (win.exists()) { + long total = win.getTotalSpace(); + long freeSpace = win.getFreeSpace(); + return NumberUtil.round((1 - freeSpace/Convert.toDouble(total)) * 100,2).doubleValue(); + } + return 0; + } + + /** + * 获取硬盘可用空间(Gb) + */ + public static long getFreeSpace(){ + File win = new File("/"); + if (win.exists()) { + long freeSpace = win.getFreeSpace(); + return freeSpace/1024/1024/1024; + } + return 0; + } + + /** + * 获取最新版本号 + * @return String + */ + public static String getNewVersion() { + String result; + try { + result = HttpUtil.get("https://api.github.com/repos/jamebal/jmal-cloud-view/releases/latest"); + if (result == null) { + return null; + } + } catch (Exception e) { + log.warn(e.getMessage()); + return null; + } + JSONObject jsonObject = JSON.parseObject(result); + return Convert.toStr(jsonObject.get("tag_name")); + } +} diff --git a/src/main/java/com/jmal/clouddisk/util/TesseractUtil.java b/src/main/java/com/jmal/clouddisk/util/TesseractUtil.java new file mode 100644 index 0000000..dc0e88d --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/TesseractUtil.java @@ -0,0 +1,75 @@ +package com.jmal.clouddisk.util; + +import lombok.extern.slf4j.Slf4j; + +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.Optional; + +@Slf4j +public class TesseractUtil { + public static void setTesseractLibPath() { + String libPath = findTesseractLibPath(); + if (libPath != null) { + System.setProperty("jna.library.path", libPath); + log.info("Set Tesseract lib path: {}", libPath); + } else { + log.warn("Tesseract lib path not found"); + } + } + + private static String findTesseractLibPath() { + // 基础路径 + String basePath = "/opt/homebrew/Cellar/tesseract"; + Path baseDir = Paths.get(basePath); + + // 检查基础目录是否存在 + if (!Files.exists(baseDir)) { + return null; + } + + try { + // 查找最新版本的目录 + Optional latestVersion = Files.list(baseDir) + .filter(Files::isDirectory) + .max((p1, p2) -> { + String v1 = p1.getFileName().toString(); + String v2 = p2.getFileName().toString(); + return compareVersions(v1, v2); + }); + + if (latestVersion.isPresent()) { + Path libPath = latestVersion.get().resolve("lib"); + return Files.exists(libPath) ? libPath.toString() : null; + } + } catch (IOException e) { + log.error("Failed to find Tesseract lib path", e); + } + + return null; + } + + // 版本号比较工具方法 + private static int compareVersions(String v1, String v2) { + String[] parts1 = v1.split("[._]"); + String[] parts2 = v2.split("[._]"); + + int length = Math.min(parts1.length, parts2.length); + for (int i = 0; i < length; i++) { + try { + int num1 = Integer.parseInt(parts1[i]); + int num2 = Integer.parseInt(parts2[i]); + if (num1 != num2) { + return num1 - num2; + } + } catch (NumberFormatException e) { + // 如果解析失败,按字符串比较 + int comp = parts1[i].compareTo(parts2[i]); + if (comp != 0) return comp; + } + } + return parts1.length - parts2.length; + } +} diff --git a/src/main/java/com/jmal/clouddisk/util/ThrottleExecutor.java b/src/main/java/com/jmal/clouddisk/util/ThrottleExecutor.java new file mode 100644 index 0000000..a18f405 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/ThrottleExecutor.java @@ -0,0 +1,51 @@ +package com.jmal.clouddisk.util; + +import lombok.extern.slf4j.Slf4j; + +import java.util.concurrent.*; + +@Slf4j +public class ThrottleExecutor { + private final ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1); + private ScheduledFuture scheduledFuture; + private final long delay; + + public ThrottleExecutor(long delay) { + this.delay = delay; + } + + public void schedule(Runnable command) { + if (scheduledFuture != null && !scheduledFuture.isDone()) { + scheduledFuture.cancel(false); + } + scheduledFuture = scheduler.schedule(command, delay, TimeUnit.MILLISECONDS); + } + + public void cancel() { + if (scheduledFuture != null && !scheduledFuture.isDone()) { + scheduledFuture.cancel(false); + } + } + + public void shutdown() { + scheduler.shutdown(); + } + + public static void main(String[] args) { + ThrottleExecutor throttleExecutor = new ThrottleExecutor(500); // 节流时间500毫秒 + + for (int i = 0; i < 10; i++) { + final int param = i; + throttleExecutor.schedule(() -> { + System.out.println("Executing task with param: " + param); + }); + try { + Thread.sleep(100); // 模拟频繁调用 + } catch (InterruptedException e) { + log.error("Error occurred: ", e); + } + } + + throttleExecutor.shutdown(); + } +} diff --git a/src/main/java/com/jmal/clouddisk/util/TimeUntils.java b/src/main/java/com/jmal/clouddisk/util/TimeUntils.java new file mode 100644 index 0000000..7d075f4 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/TimeUntils.java @@ -0,0 +1,65 @@ +package com.jmal.clouddisk.util; + +import java.time.Instant; +import java.time.LocalDateTime; +import java.time.ZoneId; +import java.time.format.DateTimeFormatter; +import java.time.temporal.ChronoUnit; + +/** + * @Description 时间工具类 + * @Author jmal + * @Date 2019-08-30 14:05 + * @author jmal + */ +public class TimeUntils { + + public static final DateTimeFormatter UPDATE_FORMAT_TIME = DateTimeFormatter.ofPattern("yyyy 年 MM 月 dd 日 HH:mm:ss"); + public static final DateTimeFormatter UPLOAD_FORMAT_TIME = DateTimeFormatter.ofPattern("yyyy 年 MM 月 dd 日"); + + public static final DateTimeFormatter DATE_MONTH = DateTimeFormatter.ofPattern("yyyy 年 MM 月"); + public static final DateTimeFormatter DATE_DAY = DateTimeFormatter.ofPattern("MM-dd"); + + private static final DateTimeFormatter FORMAT_FILE_DAY = DateTimeFormatter.ofPattern("yyyyMMdd"); + private static final DateTimeFormatter FORMAT_FILE_MONTH = DateTimeFormatter.ofPattern("yyyy-MM"); + + public static final ZoneId ZONE_ID = ZoneId.systemDefault(); + + /*** + * yyyyMMdd + */ + public static String getFileTimeStrOfDay() { + return LocalDateTime.now(TimeUntils.ZONE_ID).format(FORMAT_FILE_DAY); + } + + /*** + * yyyy-MM + */ + public static String getFileTimeStrOfMonth() { + return LocalDateTime.now(TimeUntils.ZONE_ID).format(FORMAT_FILE_MONTH); + } + + /*** + * yyyy-MM + */ + public static String getFileTimeStrOfMonth(LocalDateTime dateTime) { + return dateTime.format(FORMAT_FILE_MONTH); + } + + /*** + * 时间戳转LocalDateTime + */ + public static LocalDateTime getLocalDateTime(long timestamp) { + Instant instant = Instant.ofEpochMilli(timestamp); + return LocalDateTime.ofInstant(instant, ZONE_ID); + } + + public static long getMilli(LocalDateTime localDateTime){ + return localDateTime.atZone(ZONE_ID).toInstant().toEpochMilli(); + } + + public static boolean isWithinOneSecond(LocalDateTime time1, LocalDateTime time2) { + long secondsDifference = Math.abs(time1.until(time2, ChronoUnit.SECONDS)); + return secondsDifference < 1; + } +} diff --git a/src/main/java/com/jmal/clouddisk/util/TokenUtil.java b/src/main/java/com/jmal/clouddisk/util/TokenUtil.java new file mode 100644 index 0000000..d6629f1 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/TokenUtil.java @@ -0,0 +1,83 @@ +package com.jmal.clouddisk.util; + + +import cn.hutool.jwt.JWTUtil; +import com.auth0.jwt.JWT; +import com.auth0.jwt.JWTCreator; +import com.auth0.jwt.JWTVerifier; +import com.auth0.jwt.algorithms.Algorithm; +import com.auth0.jwt.interfaces.Claim; +import com.auth0.jwt.interfaces.DecodedJWT; + +import java.nio.charset.StandardCharsets; +import java.time.LocalDateTime; +import java.time.ZoneId; +import java.util.Collections; +import java.util.Date; +import java.util.Map; + +/** + * @author jmal + */ +public class TokenUtil { + + /** + * 生成token + * + * @param key token key + * @param password password + * @param localDataTime 过期时间 + * @return token + */ + public static String createToken(String key, String password, LocalDateTime localDataTime) { + return generateToken(key, password, localDataTime); + } + + private static String generateToken(String key, String password, LocalDateTime localDataTime) { + JWTCreator.Builder builder = JWT.create(); + builder.withClaim("username", key); + if (localDataTime != null) { + builder.withExpiresAt(Date.from(localDataTime.atZone(ZoneId.systemDefault()).toInstant())); + } + byte[] keyBytes = password.getBytes(StandardCharsets.UTF_8); + return builder.sign(Algorithm.HMAC256(keyBytes)); + + } + + public static String getUsername(String token) { + try { + cn.hutool.jwt.JWT jwt = JWTUtil.parseToken(token); + return jwt.getPayload().getClaimsJson().getStr("username"); + } catch (Exception e) { + return null; + } + } + + public static String getTokenKey(String token, String password) { + // 获取username + Map claims = verifyToken(token, password); + if (claims.isEmpty()) { + return null; + } + Claim userNameClaim = claims.get("username"); + if (null == userNameClaim || userNameClaim.asString() == null || "".equals(userNameClaim.asString())) { + return null; + } + return userNameClaim.asString(); + } + + private static Map verifyToken(String token, String password) { + DecodedJWT jwt; + try { + JWTVerifier verifier = JWT.require(Algorithm.HMAC256(password)).build(); + jwt = verifier.verify(token); + } catch (Exception e) { + return Collections.emptyMap(); + } + if (jwt != null) { + return jwt.getClaims(); + } + return Collections.emptyMap(); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/util/UrlEncodingChecker.java b/src/main/java/com/jmal/clouddisk/util/UrlEncodingChecker.java new file mode 100644 index 0000000..1ca156e --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/util/UrlEncodingChecker.java @@ -0,0 +1,56 @@ +package com.jmal.clouddisk.util; + +import cn.hutool.core.util.URLUtil; + +import java.nio.charset.StandardCharsets; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +public class UrlEncodingChecker { + + // 正则表达式:匹配 % 后跟两个十六进制字符 (如 %20, %A1) + private static final Pattern URL_ENCODING_PATTERN = Pattern.compile("%[0-9A-Fa-f]{2}"); + + /** + * 判断字符串是否可能已经过 URL 编码。 + * + * @param str 要检查的字符串 + * @return true 如果字符串可能已编码(包含编码模式且解码后不同),否则 false + */ + public static boolean isUrlEncoded(String str) { + if (str == null || str.isEmpty()) { + return false; // 空字符串不认为是已编码的 + } + + // 步骤1: 检查字符串中是否包含 URL 编码模式 + Matcher matcher = URL_ENCODING_PATTERN.matcher(str); + boolean containsEncoding = matcher.find(); // 如果找到 %XX 模式 + + if (!containsEncoding) { + return false; // 不包含编码模式,直接返回 false + } + + // 步骤2: 尝试解码字符串 + try { + String decodedStr = URLUtil.encode(str, StandardCharsets.UTF_8); + // 如果解码后与原字符串不同,则可能是已编码的 + return !str.equals(decodedStr); + } catch (IllegalArgumentException e) { + // 解码时如果有无效的 % 编码,会抛出这个异常 + return true; // 认为可能是已编码的,但有错误 + } + } + + public static void main(String[] args) { + // 测试示例 + String test1 = "Hello%20World"; // 已编码 + String test2 = "Hello World"; // 未编码 + String test3 = "100%"; // 可能误判,但包含 %,需检查 + String test4 = "%Invalid"; // 无效编码 + + System.out.println(test1 + " is encoded: " + isUrlEncoded(test1)); // true + System.out.println(test2 + " is encoded: " + isUrlEncoded(test2)); // false + System.out.println(test3 + " is encoded: " + isUrlEncoded(test3)); // true (因为解码后不同) + System.out.println(test4 + " is encoded: " + isUrlEncoded(test4)); // true (解码失败) + } +} diff --git a/src/main/java/com/jmal/clouddisk/webdav/BasicAuthenticator.java b/src/main/java/com/jmal/clouddisk/webdav/BasicAuthenticator.java new file mode 100644 index 0000000..a4b39f5 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/webdav/BasicAuthenticator.java @@ -0,0 +1,258 @@ +package com.jmal.clouddisk.webdav; + +import cn.hutool.core.util.StrUtil; +import com.jmal.clouddisk.config.FileProperties; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import lombok.Getter; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.apache.catalina.authenticator.AuthenticatorBase; +import org.apache.catalina.connector.Request; +import org.apache.tomcat.util.buf.ByteChunk; +import org.apache.tomcat.util.buf.MessageBytes; +import org.springframework.stereotype.Component; + +import java.io.IOException; +import java.nio.charset.Charset; +import java.nio.charset.StandardCharsets; +import java.security.Principal; +import java.util.Base64; + +@Component +@Slf4j +@RequiredArgsConstructor +public class BasicAuthenticator extends AuthenticatorBase { + + private Charset charset = StandardCharsets.ISO_8859_1; + private String charsetString = null; + + private final FileProperties fileProperties; + + + public String getCharset() { + return charsetString; + } + + + public void setCharset(String charsetString) { + // Only acceptable options are null, "" or "UTF-8" (case insensitive) + if (charsetString == null || charsetString.isEmpty()) { + charset = StandardCharsets.ISO_8859_1; + } else if ("UTF-8".equalsIgnoreCase(charsetString)) { + charset = StandardCharsets.UTF_8; + } else { + throw new IllegalArgumentException(sm.getString("basicAuthenticator.invalidCharset")); + } + this.charsetString = charsetString; + } + + + public boolean getTrimCredentials() { + return true; + } + + + @Override + protected boolean doAuthenticate(Request request, HttpServletResponse response) throws IOException { + + if (checkForCachedAuthentication(request, response, true)) { + return true; + } + + // Validate any credentials already included with this request + MessageBytes authorization = request.getCoyoteRequest().getMimeHeaders().getValue("authorization"); + + if (authorization != null) { + authorization.toBytes(); + ByteChunk authorizationBC = authorization.getByteChunk(); + BasicCredentials credentials; + try { + credentials = new BasicCredentials(authorizationBC, charset, getTrimCredentials()); + String username = credentials.getUsername(); + String usernameByUri = MyRealm.getUsernameByUri(fileProperties.getWebDavPrefixPath(), request.getRequestURI()); + if (StrUtil.isNotBlank(usernameByUri) && usernameByUri.equals(username)) { + String password = credentials.getPassword(); + Principal principal = context.getRealm().authenticate(username, password); + if (principal != null) { + register(request, response, principal, HttpServletRequest.BASIC_AUTH, username, password); + return true; + } + } + } catch (IllegalArgumentException iae) { + if (log.isDebugEnabled()) { + log.debug(sm.getString("basicAuthenticator.invalidAuthorization", iae.getMessage())); + } + } + } else { + if (WebdavMethod.GET.getCode().equals(request.getMethod())) { + String userAgent = request.getHeader("User-Agent"); + if (userAgent != null && userAgent.contains("Mozilla")) { + notAllowBrowser(response); + return false; + } + } + } + + // the request could not be authenticated, so reissue the challenge + StringBuilder value = new StringBuilder(16); + value.append("Basic realm=\""); + value.append(getRealmName(context)); + value.append('\"'); + if (charsetString != null && !charsetString.isEmpty()) { + value.append(", charset="); + value.append(charsetString); + } + response.setHeader(AUTH_HEADER_NAME, value.toString()); + response.sendError(HttpServletResponse.SC_UNAUTHORIZED); + return false; + + } + + /** + * 不允许浏览器访问webDAV + */ + private void notAllowBrowser(HttpServletResponse resp) throws IOException { + resp.setHeader("Content-type", "text/html;charset=UTF-8"); + resp.getWriter().print("

这是 WebDAV 接口。请使用 WebDAV 客户端访问。


"); + resp.getWriter().println("Windows : 文件资源管理器 或者 RaiDrive
"); + resp.getWriter().println("Mac OS : Finder 或者 Cyberduck
"); + resp.getWriter().println("Android : RS 文件浏览器
"); + resp.getWriter().println("iOS : Documents
"); + resp.getWriter().close(); + } + + + @Override + protected String getAuthMethod() { + return HttpServletRequest.BASIC_AUTH; + } + + + @Override + protected boolean isPreemptiveAuthPossible(Request request) { + MessageBytes authorizationHeader = request.getCoyoteRequest().getMimeHeaders().getValue("authorization"); + return authorizationHeader != null && authorizationHeader.startsWithIgnoreCase("basic ", 0); + } + + + /** + * Parser for an HTTP Authorization header for BASIC authentication as per RFC 2617 section 2, and the Base64 + * encoded credentials as per RFC 2045 section 6.8. + */ + public static class BasicCredentials { + + // the only authentication method supported by this parser + // note: we include single white space as its delimiter + private static final String METHOD = "basic "; + + private final Charset charset; + private final boolean trimCredentials; + private final ByteChunk authorization; + private final int initialOffset; + private int base64blobOffset; + private int base64blobLength; + + /** + * -- GETTER -- + * Trivial accessor. + * + */ + @Getter + private String username = null; + /** + * -- GETTER -- + * Trivial accessor. + * + */ + @Getter + private String password = null; + + /** + * Parse the HTTP Authorization header for BASIC authentication as per RFC 2617 section 2, and the Base64 + * encoded credentials as per RFC 2045 section 6.8. + * + * @param input The header value to parse in-place + * @param charset The character set to use to convert the bytes to a string + * @param trimCredentials Should leading and trailing whitespace be removed from the parsed credentials + * + * @throws IllegalArgumentException If the header does not conform to RFC 2617 + */ + public BasicCredentials(ByteChunk input, Charset charset, boolean trimCredentials) + throws IllegalArgumentException { + authorization = input; + initialOffset = input.getStart(); + this.charset = charset; + this.trimCredentials = trimCredentials; + + parseMethod(); + byte[] decoded = parseBase64(); + parseCredentials(decoded); + } + + /* + * The authorization method string is case-insensitive and must hae at least one space character as a delimiter. + */ + private void parseMethod() throws IllegalArgumentException { + if (authorization.startsWithIgnoreCase(METHOD, 0)) { + // step past the auth method name + base64blobOffset = initialOffset + METHOD.length(); + base64blobLength = authorization.getLength() - METHOD.length(); + } else { + // is this possible, or permitted? + throw new IllegalArgumentException(sm.getString("basicAuthenticator.notBasic")); + } + } + + /* + * Decode the base64-user-pass token, which RFC 2617 states can be longer than the 76 characters per line limit + * defined in RFC 2045. The base64 decoder will ignore embedded line break characters as well as surplus + * surrounding white space. + */ + private byte[] parseBase64() throws IllegalArgumentException { + // 提取需要解码的子数组 + byte[] subArray = new byte[base64blobLength]; + System.arraycopy(authorization.getBuffer(), base64blobOffset, subArray, 0, base64blobLength); + + // 使用Java内置的Base64解码器 + byte[] decoded = Base64.getDecoder().decode(subArray); + // restore original offset + authorization.setStart(initialOffset); + if (decoded == null) { + throw new IllegalArgumentException(sm.getString("basicAuthenticator.notBase64")); + } + return decoded; + } + + /* + * Extract the mandatory username token and separate it from the optional password token. Tolerate surplus + * surrounding white space. + */ + private void parseCredentials(byte[] decoded) throws IllegalArgumentException { + + int colon = -1; + for (int i = 0; i < decoded.length; i++) { + if (decoded[i] == ':') { + colon = i; + break; + } + } + + if (colon < 0) { + username = new String(decoded, charset); + // password will remain null! + } else { + username = new String(decoded, 0, colon, charset); + password = new String(decoded, colon + 1, decoded.length - colon - 1, charset); + // tolerate surplus white space around credentials + if (password.length() > 1 && trimCredentials) { + password = password.trim(); + } + } + // tolerate surplus white space around credentials + if (username.length() > 1 && trimCredentials) { + username = username.trim(); + } + } + } +} diff --git a/src/main/java/com/jmal/clouddisk/webdav/MyDirResourceSet.java b/src/main/java/com/jmal/clouddisk/webdav/MyDirResourceSet.java new file mode 100644 index 0000000..d0b7900 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/webdav/MyDirResourceSet.java @@ -0,0 +1,24 @@ +package com.jmal.clouddisk.webdav; + +import org.apache.catalina.WebResource; +import org.apache.catalina.WebResourceRoot; +import org.apache.catalina.webresources.DirResourceSet; + +public class MyDirResourceSet extends DirResourceSet { + + public MyDirResourceSet(WebResourceRoot root, String base) { + super(root, "/", base, "/"); + } + + @Override + public WebResource getResource(String path) { + checkPath(path); + return super.getResource(path); + } + + @Override + public String[] list(String path) { + checkPath(path); + return super.list(path); + } +} diff --git a/src/main/java/com/jmal/clouddisk/webdav/MyRealm.java b/src/main/java/com/jmal/clouddisk/webdav/MyRealm.java new file mode 100644 index 0000000..4e6c0eb --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/webdav/MyRealm.java @@ -0,0 +1,138 @@ +package com.jmal.clouddisk.webdav; + +import cn.hutool.core.util.StrUtil; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.config.WebFilter; +import com.jmal.clouddisk.service.impl.UserServiceImpl; +import com.jmal.clouddisk.util.CaffeineUtil; +import com.jmal.clouddisk.util.PasswordHash; +import org.apache.catalina.Context; +import org.apache.catalina.connector.Request; +import org.apache.catalina.connector.Response; +import org.apache.catalina.realm.GenericPrincipal; +import org.apache.catalina.realm.RealmBase; +import org.apache.tomcat.util.descriptor.web.SecurityConstraint; +import org.springframework.stereotype.Component; + +import java.nio.file.Path; +import java.nio.file.Paths; +import java.security.Principal; +import java.util.*; + +@Component +public class MyRealm extends RealmBase { + + private final UserServiceImpl userService; + + private final FileProperties fileProperties; + + /** + * 删除资源 Options、Head、Trace、Get、PropFind、PropFind、Mkcol、Put、Post、Copy、Move、Delete。 + */ + private static final List DELETES_METHODS = Arrays.asList(WebdavMethod.GET, WebdavMethod.HEAD, WebdavMethod.TRACE, WebdavMethod.OPTIONS, WebdavMethod.PROPFIND, WebdavMethod.PROPPATCH, WebdavMethod.MKCOL, WebdavMethod.PUT, WebdavMethod.POST, WebdavMethod.COPY, WebdavMethod.MOVE, WebdavMethod.DELETE, WebdavMethod.LOCK, WebdavMethod.UNLOCK); + /** + * 修改资源 Options、Head、Trace、Get、PropFind、PropFind、Mkcol、Put、Post、Copy、Move。 + */ + private static final List UPDATE_METHODS = Arrays.asList(WebdavMethod.GET, WebdavMethod.HEAD, WebdavMethod.TRACE, WebdavMethod.OPTIONS, WebdavMethod.PROPFIND, WebdavMethod.PROPPATCH, WebdavMethod.MKCOL, WebdavMethod.PUT, WebdavMethod.POST, WebdavMethod.COPY, WebdavMethod.MOVE, WebdavMethod.LOCK, WebdavMethod.UNLOCK); + /** + * 创建资源 Options、Head、Trace、Get、PropFind、PropFind、Mkcol、Lock、UnLock、Put、Post。 + */ + private static final List UPLOAD_METHODS = Arrays.asList(WebdavMethod.GET, WebdavMethod.HEAD, WebdavMethod.TRACE, WebdavMethod.OPTIONS, WebdavMethod.PROPFIND, WebdavMethod.PROPPATCH, WebdavMethod.MKCOL, WebdavMethod.PUT, WebdavMethod.POST, WebdavMethod.LOCK, WebdavMethod.UNLOCK); + /** + * 浏览检索资源 Options、Head、Trace、Get、PropFind、PropFind。 + */ + private static final List LIST_METHODS = Arrays.asList(WebdavMethod.GET, WebdavMethod.HEAD, WebdavMethod.TRACE, WebdavMethod.OPTIONS, WebdavMethod.PROPFIND, WebdavMethod.PROPPATCH); + + private static final List DEFAULT_ROLES = List.of("webdav"); + + public MyRealm(UserServiceImpl userService, FileProperties fileProperties) { + this.userService = userService; + this.fileProperties = fileProperties; + } + + @Override + protected String getPassword(String username) { + return null; + } + + @Override + protected Principal getPrincipal(String username) { + return new GenericPrincipal(username, DEFAULT_ROLES); + } + + @Override + public Principal authenticate(String username, String password) { + String hashPassword = userService.getHashPasswordUserName(username); + if (StrUtil.isBlank(hashPassword)) { + return null; + } + boolean valid = PasswordHash.validatePassword(password, hashPassword); + return valid ? getPrincipal(username) : null; + } + + @Override + public boolean hasResourcePermission(Request request, Response response, SecurityConstraint[] constraints, Context context) { + String username = MyRealm.getUsernameByUri(fileProperties.getWebDavPrefixPath(), request.getRequestURI()); + List methods = allowMethods(username); + WebdavMethod method = WebdavMethod.getMethod(request.getMethod()); + return methods.contains(method); + } + + /*** + * 根据webdav uri 获取用户名 + * @param uri uri + * @return username + */ + public static String getUsernameByUri(String webDavPrefixPath, String uri) { + if (uri.startsWith(WebFilter.API)) { + uri = WebFilter.COMPILE.matcher(uri).replaceFirst(""); + } + uri = uri.replaceFirst(webDavPrefixPath, ""); + Path path = Paths.get(uri); + if (path.getNameCount() < 1) { + return null; + } + return path.getName(0).toString(); + } + + /*** + * 根据该用户拥有的权限获取允许访问的方法列表 + * @return 允许访问的方法列表 + */ + public List allowMethods(String username) { + int maxAuthority = maxAuthority(username); + return switch (maxAuthority) { + case 3 -> DELETES_METHODS; + case 2 -> UPDATE_METHODS; + case 1 -> UPLOAD_METHODS; + case 0 -> LIST_METHODS; + default -> new ArrayList<>(0); + }; + } + + /*** + * 用户的最大权限 + * delete > update > upload > list + * 3 > 2 > 1 > 0 + * @return delete/update/upload/list + */ + public int maxAuthority(String username) { + List authorities = CaffeineUtil.getAuthoritiesCache(username); + if (authorities == null) { + authorities = userService.getAuthorities(username); + } + + Map authorityMap = Map.of( + "cloud:file:delete", 3, + "cloud:file:update", 2, + "cloud:file:upload", 1 + ); + + return authorities.stream() + .filter(authority -> authority.startsWith("cloud:file:")) + .map(authorityMap::get) + .filter(Objects::nonNull) + .max(Comparator.comparingInt(Integer::intValue)) + .orElse(0); + } +} diff --git a/src/main/java/com/jmal/clouddisk/webdav/MyStandardRoot.java b/src/main/java/com/jmal/clouddisk/webdav/MyStandardRoot.java new file mode 100644 index 0000000..4171ae9 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/webdav/MyStandardRoot.java @@ -0,0 +1,27 @@ +package com.jmal.clouddisk.webdav; + +import com.jmal.clouddisk.webdav.resource.FileResourceSet; +import org.apache.catalina.Context; +import org.apache.catalina.WebResourceSet; +import org.apache.catalina.webresources.StandardRoot; + +public class MyStandardRoot extends StandardRoot { + public MyStandardRoot(Context context) { + super(context); + } + + @Override + protected WebResourceSet createMainResourceSet() { + FileResourceSet myDirResourceSet = null; + for (WebResourceSet preResource : getPreResources()) { + if (preResource instanceof FileResourceSet myDirResourceSet1) { + myDirResourceSet = myDirResourceSet1; + } + } + if (myDirResourceSet != null) { + return myDirResourceSet; + } + return super.createMainResourceSet(); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/webdav/MyWebdavServlet.java b/src/main/java/com/jmal/clouddisk/webdav/MyWebdavServlet.java new file mode 100644 index 0000000..59748de --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/webdav/MyWebdavServlet.java @@ -0,0 +1,236 @@ +package com.jmal.clouddisk.webdav; + +import cn.hutool.core.lang.Console; +import cn.hutool.core.text.CharSequenceUtil; +import com.github.benmanes.caffeine.cache.Cache; +import com.github.benmanes.caffeine.cache.Caffeine; +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.oss.AbstractOssObject; +import com.jmal.clouddisk.oss.IOssService; +import com.jmal.clouddisk.oss.OssConfigService; +import com.jmal.clouddisk.oss.OssInputStream; +import com.jmal.clouddisk.oss.web.WebOssService; +import com.jmal.clouddisk.service.IFileService; +import com.jmal.clouddisk.util.CaffeineUtil; +import com.jmal.clouddisk.util.FileNameUtils; +import jakarta.servlet.ServletException; +import jakarta.servlet.ServletOutputStream; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import lombok.RequiredArgsConstructor; +import org.apache.catalina.WebResource; +import org.apache.tomcat.util.http.parser.Ranges; +import org.springframework.http.HttpHeaders; +import org.springframework.stereotype.Component; + +import java.io.BufferedInputStream; +import java.io.File; +import java.io.IOException; +import java.io.InputStream; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.concurrent.TimeUnit; + +/** + * @author jmal + * @Description WebdavServlet + * @date 2023/3/27 09:35 + */ +@Component +@RequiredArgsConstructor +public class MyWebdavServlet extends WebdavServlet { + + + private final transient FileProperties fileProperties; + + private final transient IFileService fileService; + + public static final String PATH_DELIMITER = "/"; + + private static final Cache REQUEST_URI_GET_MAP = Caffeine.newBuilder().expireAfterWrite(3L, TimeUnit.SECONDS).build(); + + @Override + protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { + String method = request.getMethod(); + // 过滤掉mac Finder "._" 文件请求 + if (filterMac(request, response, method)) return; + // 过滤掉过于频繁的GET请求, 只针对 oss + if (filterTooManyRequest(request, response, method)) return; + super.service(request, response); + } + + /** + * 过滤掉mac Finder "._" 文件请求 + */ + private static boolean filterMac(HttpServletRequest request, HttpServletResponse response, String method) throws IOException { + if (method.equals(WebdavMethod.PROPFIND.getCode()) || method.equals(WebdavMethod.PUT.getCode())) { + Path path = Paths.get(request.getRequestURI()); + // 过滤掉mac Finder "._" 文件请求 + if (path.getFileName().toString().startsWith("._")) { + response.sendError(404); + return true; + } + } + return false; + } + + /** + * 过滤掉过于频繁的GET请求, 同一文件1秒内相同GET的请求 + * 目前只针对oss 和 mac + */ + private static boolean filterTooManyRequest(HttpServletRequest request, HttpServletResponse response, String method) throws IOException { + String uri = request.getRequestURI(); + Path uriPath = Paths.get(uri); + if (uriPath.getNameCount() > 1) { + String ossPath = CaffeineUtil.getOssPath(uriPath.subpath(1, uriPath.getNameCount())); + if (ossPath == null) { + return false; + } + } + // MAC & OSS & GET + String userAgent = request.getHeader(HttpHeaders.USER_AGENT); + if (!CharSequenceUtil.isBlank(userAgent) && userAgent.contains("Darwin") && method.equals(WebdavMethod.GET.getCode())) { + if (!CharSequenceUtil.isBlank(request.getHeader("If-Range")) || !CharSequenceUtil.isBlank(request.getHeader("Range"))) { + response.sendError(423); + return true; + } + Long time = REQUEST_URI_GET_MAP.getIfPresent(uri); + if (time != null && (System.currentTimeMillis() - time) < 1000) { + response.sendError(423); + return true; + } + REQUEST_URI_GET_MAP.put(uri, System.currentTimeMillis()); + } + return false; + } + + @Override + protected void copy(WebResource resource, long length, ServletOutputStream outStream, Ranges.Entry range) throws IOException { + Path prePath = Paths.get(resource.getWebappPath()); + String ossPath = CaffeineUtil.getOssPath(prePath); + if (ossPath != null) { + long rangeStart = getStart(range, length); + long rangeEnd = getEnd(range, length); + IOssService ossService = OssConfigService.getOssStorageService(ossPath); + String objectName = WebOssService.getObjectName(prePath, ossPath, false); + AbstractOssObject rangeObject = ossService.getAbstractOssObject(objectName, rangeStart, rangeEnd); + super.copy(rangeObject.getInputStream(), outStream); + } else { + super.copy(resource, length, outStream, range); + } + } + + private static long getStart(Ranges.Entry range, long length) { + long start = range.getStart(); + if (start == -1L) { + long end = range.getEnd(); + return end >= length ? 0L : length - end; + } else { + return start; + } + } + + private static long getEnd(Ranges.Entry range, long length) { + long end = range.getEnd(); + return range.getStart() != -1L && end != -1L && end < length ? end : length - 1L; + } + + @Override + protected void copy(InputStream is, ServletOutputStream outStream) throws IOException { + AbstractOssObject abstractOssObject = null; + + if (is instanceof OssInputStream ossInputStream) { + abstractOssObject = ossInputStream.getAbstractOssObject(); + } + + try (InputStream inStream = new BufferedInputStream(is, input)) { + IOException copyException = copyRange(inStream, outStream); + if (copyException != null) { + throw copyException; + } + } finally { + // 确保OSS资源被清理 + if (abstractOssObject != null) { + closeOssObjectQuietly(abstractOssObject); + } + } + } + + private void closeOssObjectQuietly(AbstractOssObject ossObject) { + try { + ossObject.closeObject(); + } catch (IOException e) { + // 静默处理,不影响主流程 + Console.error("Failed to close OSS object: " + e.getMessage()); + } + } + + @Override + protected void doDelete(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + String uri = req.getRequestURI(); + Path uriPath = Paths.get(uri); + if (uriPath.getNameCount() > 1) { + String ossPath = CaffeineUtil.getOssPath(uriPath.subpath(1, uriPath.getNameCount())); + if (ossPath != null && uri.endsWith(ossPath + PATH_DELIMITER)) { + // 禁止删除oss根目录 + sendNotAllowed(req, resp); + return; + } + } + super.doDelete(req, resp); + deleteFile(req, resp); + } + + @Override + protected void doPut(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + super.doPut(req, resp); + createFile(req, resp); + } + + private void deleteFile(HttpServletRequest req, HttpServletResponse resp) { + String uri = FileNameUtils.safeDecode(req.getRequestURI()); + Path uriPath = Paths.get(uri); + if (uriPath.getNameCount() > 1) { + String ossPath = CaffeineUtil.getOssPath(uriPath.subpath(1, uriPath.getNameCount())); + if (ossPath == null && resp.getStatus() == 204) { + // 普通文件 && 删除成功 + String username = uriPath.getName(1).toString(); + String path = uriPath.subpath(1, uriPath.getNameCount()).toString(); + File file = Paths.get(fileProperties.getRootDir(), path).toFile(); + fileService.deleteFile(username, file); + } + } + } + + private void createFile(HttpServletRequest req, HttpServletResponse resp) { + String uri = FileNameUtils.safeDecode(req.getRequestURI()); + Path uriPath = Paths.get(uri); + if (uriPath.getNameCount() > 1) { + String ossPath = CaffeineUtil.getOssPath(uriPath.subpath(1, uriPath.getNameCount())); + if (ossPath == null && resp.getStatus() == 201) { + // 普通文件 && 上传成功 + String username = uriPath.getName(1).toString(); + String path = uriPath.subpath(1, uriPath.getNameCount()).toString(); + File file = Paths.get(fileProperties.getRootDir(), path).toFile(); + fileService.createFile(username, file); + } + } + } + + @Override + protected void doMove(HttpServletRequest req, HttpServletResponse resp) throws IOException { + super.doMove(req, resp); + createFile(req, resp); + } + + @Override + protected void doMkcol(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + super.doMkcol(req, resp); + createFile(req, resp); + } + + public static String getPathDelimiter(String username, String folderName) { + return MyWebdavServlet.PATH_DELIMITER + Paths.get(username, folderName); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/webdav/WebdavAuthenticator.java b/src/main/java/com/jmal/clouddisk/webdav/WebdavAuthenticator.java new file mode 100644 index 0000000..8f37ac8 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/webdav/WebdavAuthenticator.java @@ -0,0 +1,81 @@ +package com.jmal.clouddisk.webdav; + +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.model.LogOperation; +import com.jmal.clouddisk.service.impl.LogService; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.apache.catalina.connector.Request; +import org.springframework.stereotype.Component; + +import java.io.IOException; +import java.net.URI; +import java.net.URISyntaxException; +import java.util.Arrays; +import java.util.List; + +@Component +public class WebdavAuthenticator extends BasicAuthenticator { + + /** + * Post、Copy、Move + */ + private static final List OPERATION_METHODS = Arrays.asList(WebdavMethod.POST.getCode(), WebdavMethod.COPY.getCode(), WebdavMethod.MOVE.getCode()); + + /** + * 不记录日志的方法 Get、PropFind、PropFind、Lock。 + */ + private static final List NO_LOG_METHODS = Arrays.asList(WebdavMethod.GET.getCode(), WebdavMethod.PROPFIND.getCode(), WebdavMethod.LOCK.getCode(), WebdavMethod.UNLOCK.getCode()); + + private final FileProperties fileProperties; + + private final LogService logService; + + public WebdavAuthenticator(FileProperties fileProperties, LogService logService) { + super(fileProperties); + this.fileProperties = fileProperties; + this.logService = logService; + } + + @Override + protected boolean doAuthenticate(Request request, HttpServletResponse response) throws IOException { + long time = System.currentTimeMillis(); + if (OPERATION_METHODS.contains(request.getMethod())) { + setScheme(request); + } + boolean auth = super.doAuthenticate(request, response); + recordLog(request, response, time); + return auth; + } + + private static void setScheme(Request request) { + String destinationHeader = request.getHeader("Destination"); + if (!destinationHeader.isBlank()) { + URI destinationUri; + try { + destinationUri = new URI(destinationHeader); + request.getCoyoteRequest().scheme().setString(destinationUri.getScheme()); + } catch (URISyntaxException ignored) { + + } + } + } + + /** + * 记录webDAV请求日志 + */ + private void recordLog(HttpServletRequest request, HttpServletResponse response, long time) { + if (NO_LOG_METHODS.contains(request.getMethod())) { + return; + } + LogOperation logOperation = new LogOperation(); + logOperation.setTime(System.currentTimeMillis() - time); + String username = MyRealm.getUsernameByUri(fileProperties.getWebDavPrefixPath(), request.getRequestURI()); + logOperation.setUsername(username); + logOperation.setOperationModule("WEBDAV"); + logOperation.setOperationFun("WebDAV请求"); + logOperation.setType(LogOperation.Type.WEBDAV.name()); + logService.addLogBefore(logOperation, null, request, response); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/webdav/WebdavConfig.java b/src/main/java/com/jmal/clouddisk/webdav/WebdavConfig.java new file mode 100644 index 0000000..bfaeec7 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/webdav/WebdavConfig.java @@ -0,0 +1,108 @@ +package com.jmal.clouddisk.webdav; + +import com.jmal.clouddisk.config.FileProperties; +import com.jmal.clouddisk.webdav.resource.FileResourceSet; +import jakarta.servlet.MultipartConfigElement; +import org.apache.tomcat.util.descriptor.web.LoginConfig; +import org.apache.tomcat.util.descriptor.web.SecurityCollection; +import org.apache.tomcat.util.descriptor.web.SecurityConstraint; +import org.springframework.boot.autoconfigure.web.servlet.DispatcherServletPath; +import org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory; +import org.springframework.boot.web.server.WebServerFactoryCustomizer; +import org.springframework.boot.web.servlet.ServletRegistrationBean; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.web.servlet.DispatcherServlet; + + +@Configuration +public class WebdavConfig { + + private final FileProperties fileProperties; + + private final MyRealm myRealm; + + private final WebdavAuthenticator webdavAuthenticator; + + private final MyWebdavServlet myWebdavServlet; + + public WebdavConfig(FileProperties fileProperties, MyRealm myRealm, WebdavAuthenticator webdavAuthenticator, MyWebdavServlet myWebdavServlet) { + this.fileProperties = fileProperties; + this.myRealm = myRealm; + this.webdavAuthenticator = webdavAuthenticator; + this.myWebdavServlet = myWebdavServlet; + } + + /** + * 自定义 DispatcherServlet 的注册,以确保关键应用程序行为。 + *
    + *
  • 确保 DispatcherServlet 处理所有根路径("/")请求。
  • + *
  • 通过设置 loadOnStartup = 1 强制立即初始化,解决初始请求延迟问题。
  • + *
  • 注入并设置 MultipartConfigElement,以确保文件上传功能在不同环境下的稳定性,避免自动配置更改带来的影响。
  • + *
+ * + * @param dispatcherServlet Spring Boot 自动配置的 DispatcherServlet 实例。 + * @param multipartConfig Spring Boot 根据 multipart 属性自动创建的 Multipart 配置。 + * @return DispatcherServlet 的注册 Bean。 + */ + @Bean + public ServletRegistrationBean dispatcherServletRegistration(DispatcherServlet dispatcherServlet, MultipartConfigElement multipartConfig) { + ServletRegistrationBean registration = new ServletRegistrationBean<>(dispatcherServlet); + // 1. 确保处理根路径 + registration.addUrlMappings("/"); + // 2. 确保立即启动,解决第一个请求慢的问题 + registration.setLoadOnStartup(1); + // 3. 确保文件上传功能正常,抵御自动配置变化 + registration.setMultipartConfig(multipartConfig); + return registration; + } + + @Bean + public DispatcherServletPath dispatcherServletPath() { + return () -> "/"; + } + + @Bean + public ServletRegistrationBean webdavServlet() { + ServletRegistrationBean registration = new ServletRegistrationBean<>(myWebdavServlet, fileProperties.getWebDavPrefixPath() + "/*"); + registration.setName("WebDAV servlet"); + registration.setServlet(myWebdavServlet); + registration.setLoadOnStartup(1); + registration.addInitParameter("listings", String.valueOf(true)); + registration.addInitParameter("readonly", String.valueOf(false)); + registration.addInitParameter("debug", String.valueOf(0)); + return registration; + } + + @Bean + public WebServerFactoryCustomizer webServerFactoryCustomizer() { + return factory -> factory.addContextCustomizers(context -> { + // 创建一个新的WebResourceRoot实例 + MyStandardRoot standardRoot = new MyStandardRoot(context); + // 自定义静态资源的位置 + standardRoot.addPreResources(new FileResourceSet(standardRoot, fileProperties.getRootDir())); + // 将新的WebResourceRoot设置为应用程序的资源根目录 + context.setResources(standardRoot); + context.getPipeline().addValve(webdavAuthenticator); + + context.setRealm(myRealm); + + // 设置安全约束 + SecurityCollection securityCollection = new SecurityCollection(); + securityCollection.addPattern(fileProperties.getWebDavPrefixPath() + "/*"); + + SecurityConstraint securityConstraint = new SecurityConstraint(); + securityConstraint.addAuthRole("webdav"); + securityConstraint.addCollection(securityCollection); + + context.addConstraint(securityConstraint); + + // 设置登录配置 + LoginConfig loginConfig = new LoginConfig(); + loginConfig.setAuthMethod("BASIC"); + context.setLoginConfig(loginConfig); + + }); + } + +} diff --git a/src/main/java/com/jmal/clouddisk/webdav/WebdavMethod.java b/src/main/java/com/jmal/clouddisk/webdav/WebdavMethod.java new file mode 100644 index 0000000..9ff818c --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/webdav/WebdavMethod.java @@ -0,0 +1,44 @@ +package com.jmal.clouddisk.webdav; + +public enum WebdavMethod { + HEAD("HEAD", false), + PROPFIND("PROPFIND", false), + PROPPATCH("PROPPATCH", true), + MKCOL("MKCOL", true), + MKCALENDAR("MKCALENDAR", true), + COPY("COPY", true), + MOVE("MOVE", true), + LOCK("LOCK", true), + UNLOCK("UNLOCK", true), + DELETE("DELETE", true), + GET("GET", false), + OPTIONS("OPTIONS", false), + POST("POST", true), + PUT("PUT", true), + TRACE("TRACE", false), + ACL("ACL", true), + CONNECT("CONNECT", true), + CANCELUPLOAD("CANCELUPLOAD", true), + REPORT("REPORT", false); + + public String getCode() { + return code; + } + + public final String code; + public final boolean isWrite; + + WebdavMethod(String code, boolean isWrite) { + this.code = code; + this.isWrite = isWrite; + } + + public static WebdavMethod getMethod(String method) { + for (WebdavMethod webdavMethod : WebdavMethod.values()) { + if (webdavMethod.code.equals(method)) { + return webdavMethod; + } + } + return WebdavMethod.HEAD; + } +} diff --git a/src/main/java/com/jmal/clouddisk/webdav/WebdavServlet.java b/src/main/java/com/jmal/clouddisk/webdav/WebdavServlet.java new file mode 100644 index 0000000..6ae0bd2 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/webdav/WebdavServlet.java @@ -0,0 +1,2534 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.jmal.clouddisk.webdav; + +import jakarta.servlet.DispatcherType; +import jakarta.servlet.RequestDispatcher; +import jakarta.servlet.ServletContext; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.apache.catalina.WebResource; +import org.apache.catalina.connector.RequestFacade; +import org.apache.catalina.servlets.DefaultServlet; +import org.apache.catalina.util.DOMWriter; +import org.apache.catalina.util.XMLWriter; +import org.apache.tomcat.util.buf.HexUtils; +import org.apache.tomcat.util.http.ConcurrentDateFormat; +import org.apache.tomcat.util.http.FastHttpDateFormat; +import org.apache.tomcat.util.http.RequestUtil; +import org.apache.tomcat.util.security.ConcurrentMessageDigest; +import org.w3c.dom.Document; +import org.w3c.dom.Element; +import org.w3c.dom.Node; +import org.w3c.dom.NodeList; +import org.xml.sax.EntityResolver; +import org.xml.sax.InputSource; +import org.xml.sax.SAXException; + +import javax.xml.parsers.DocumentBuilder; +import javax.xml.parsers.DocumentBuilderFactory; +import javax.xml.parsers.ParserConfigurationException; +import java.io.*; +import java.net.URI; +import java.net.URISyntaxException; +import java.nio.charset.StandardCharsets; +import java.util.*; +import java.util.concurrent.ConcurrentHashMap; + +/** + * Servlet which adds support for WebDAV + * level 2. All the basic HTTP requests are handled by the + * DefaultServlet. The WebDAVServlet must not be used as the default servlet (ie mapped to '/') as it will not work in + * this configuration. + *

+ * Mapping a subpath (e.g. /webdav/* to this servlet has the effect of re-mounting the entire web + * application under that sub-path, with WebDAV access to all the resources. The WEB-INF and + * META-INF directories are protected in this re-mounted resource tree. + *

+ * To enable WebDAV for a context add the following to web.xml: + * + *

+ * <servlet>
+ *  <servlet-name>webdav</servlet-name>
+ *  <servlet-class>org.apache.catalina.servlets.WebdavServlet</servlet-class>
+ *    <init-param>
+ *      <param-name>debug</param-name>
+ *      <param-value>0</param-value>
+ *    </init-param>
+ *    <init-param>
+ *      <param-name>listings</param-name>
+ *      <param-value>false</param-value>
+ *    </init-param>
+ *  </servlet>
+ *  <servlet-mapping>
+ *    <servlet-name>webdav</servlet-name>
+ *    <url-pattern>/*</url-pattern>
+ *  </servlet-mapping>
+ * 
+ * + * This will enable read only access. To enable read-write access add: + * + *
+ *  <init-param>
+ *    <param-name>readonly</param-name>
+ *    <param-value>false</param-value>
+ *  </init-param>
+ * 
+ * + * To make the content editable via a different URL, use the following mapping: + * + *
+ *  <servlet-mapping>
+ *    <servlet-name>webdav</servlet-name>
+ *    <url-pattern>/webdavedit/*</url-pattern>
+ *  </servlet-mapping>
+ * 
+ * + * By default access to /WEB-INF and META-INF are not available via WebDAV. To enable access to these URLs, use add: + * + *
+ *  <init-param>
+ *    <param-name>allowSpecialPaths</param-name>
+ *    <param-value>true</param-value>
+ *  </init-param>
+ * 
+ * + * Don't forget to secure access appropriately to the editing URLs, especially if allowSpecialPaths is used. With the + * mapping configuration above, the context will be accessible to normal users as before. Those users with the necessary + * access will be able to edit content available via http://host:port/context/content using + * http://host:port/context/webdavedit/content + * + * @author Remy Maucherat + * + * @see RFC 4918 + */ +public class WebdavServlet extends DefaultServlet { + + @Serial + private static final long serialVersionUID = 1L; + + + // -------------------------------------------------------------- Constants + + private static final String METHOD_PROPFIND = "PROPFIND"; + private static final String METHOD_PROPPATCH = "PROPPATCH"; + private static final String METHOD_MKCOL = "MKCOL"; + private static final String METHOD_COPY = "COPY"; + private static final String METHOD_MOVE = "MOVE"; + private static final String METHOD_LOCK = "LOCK"; + private static final String METHOD_UNLOCK = "UNLOCK"; + + + /** + * PROPFIND - Specify a property mask. + */ + private static final int FIND_BY_PROPERTY = 0; + + + /** + * PROPFIND - Display all properties. + */ + private static final int FIND_ALL_PROP = 1; + + + /** + * PROPFIND - Return property names. + */ + private static final int FIND_PROPERTY_NAMES = 2; + + + /** + * Create a new lock. + */ + private static final int LOCK_CREATION = 0; + + + /** + * Refresh lock. + */ + private static final int LOCK_REFRESH = 1; + + + /** + * Default lock timeout value. + */ + private static final int DEFAULT_TIMEOUT = 3600; + + + /** + * Maximum lock timeout. + */ + private static final int MAX_TIMEOUT = 604800; + + + /** + * Default namespace. + */ + protected static final String DEFAULT_NAMESPACE = "DAV:"; + + + /** + * Simple date format for the creation date ISO representation (partial). + */ + protected static final ConcurrentDateFormat creationDateFormat = + new ConcurrentDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'", Locale.US, TimeZone.getTimeZone("GMT")); + + + // ----------------------------------------------------- Instance Variables + + /** + * Repository of the locks put on single resources. + *

+ * Key : path
+ * Value : LockInfo + */ + private final Map resourceLocks = new ConcurrentHashMap<>(); + + + /** + * Repository of the lock-null resources. + *

+ * Key : path of the collection containing the lock-null resource
+ * Value : List of lock-null resource which are members of the collection. Each element of the List is the path + * associated with the lock-null resource. + */ + private final Map> lockNullResources = new ConcurrentHashMap<>(); + + + /** + * List of the inheritable collection locks. + */ + private final List collectionLocks = Collections.synchronizedList(new ArrayList<>()); + + + /** + * Secret information used to generate reasonably secure lock ids. + */ + private String secret = "catalina"; + + + /** + * Default depth in spec is infinite. Limit depth to 3 by default as infinite depth makes operations very expensive. + */ + private int maxDepth = 3; + + + /** + * Is access allowed via WebDAV to the special paths (/WEB-INF and /META-INF)? + */ + private boolean allowSpecialPaths = false; + + + // --------------------------------------------------------- Public Methods + + /** + * Initialize this servlet. + */ + @Override + public void init() throws ServletException { + + super.init(); + + if (getServletConfig().getInitParameter("secret") != null) { + secret = getServletConfig().getInitParameter("secret"); + } + + if (getServletConfig().getInitParameter("maxDepth") != null) { + maxDepth = Integer.parseInt(getServletConfig().getInitParameter("maxDepth")); + } + + if (getServletConfig().getInitParameter("allowSpecialPaths") != null) { + allowSpecialPaths = Boolean.parseBoolean(getServletConfig().getInitParameter("allowSpecialPaths")); + } + } + + + // ------------------------------------------------------ Protected Methods + + /** + * Return JAXP document builder instance. + * + * @return the document builder + * + * @throws ServletException document builder creation failed (wrapped ParserConfigurationException + * exception) + */ + protected DocumentBuilder getDocumentBuilder() throws ServletException { + DocumentBuilder documentBuilder = null; + DocumentBuilderFactory documentBuilderFactory = null; + try { + documentBuilderFactory = DocumentBuilderFactory.newInstance(); + documentBuilderFactory.setNamespaceAware(true); + documentBuilderFactory.setExpandEntityReferences(false); + documentBuilder = documentBuilderFactory.newDocumentBuilder(); + documentBuilder.setEntityResolver(new WebdavResolver(this.getServletContext())); + } catch (ParserConfigurationException e) { + throw new ServletException(sm.getString("webdavservlet.jaxpfailed")); + } + return documentBuilder; + } + + + /** + * Handles the special WebDAV methods. + */ + @Override + protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + + final String path = getRelativePath(req); + + // Error page check needs to come before special path check since + // custom error pages are often located below WEB-INF so they are + // not directly accessible. + if (req.getDispatcherType() == DispatcherType.ERROR) { + doGet(req, resp); + return; + } + + // Block access to special subdirectories. + // DefaultServlet assumes it services resources from the root of the web app + // and doesn't add any special path protection + // WebdavServlet remounts the webapp under a new path, so this check is + // necessary on all methods (including GET). + if (isSpecialPath(path)) { + resp.sendError(WebdavStatus.SC_NOT_FOUND); + return; + } + + final String method = req.getMethod(); + + if (debug > 0) { + log("[" + method + "] " + path); + } + + switch (method) { + case METHOD_PROPFIND -> doPropfind(req, resp); + case METHOD_PROPPATCH -> doProppatch(req, resp); + case METHOD_MKCOL -> doMkcol(req, resp); + case METHOD_COPY -> doCopy(req, resp); + case METHOD_MOVE -> doMove(req, resp); + case METHOD_LOCK -> doLock(req, resp); + case METHOD_UNLOCK -> doUnlock(req, resp); + default -> + // DefaultServlet processing + super.service(req, resp); + } + } + + + /** + * Checks whether a given path refers to a resource under WEB-INF or META-INF. + * + * @param path the full path of the resource being accessed + * + * @return true if the resource specified is under a special path + */ + private boolean isSpecialPath(final String path) { + return !allowSpecialPaths && (path.toUpperCase(Locale.ENGLISH).startsWith("/WEB-INF") || + path.toUpperCase(Locale.ENGLISH).startsWith("/META-INF")); + } + + + @Override + protected boolean checkIfHeaders(HttpServletRequest request, HttpServletResponse response, WebResource resource) + throws IOException { + + return super.checkIfHeaders(request, response, resource); + + //Checking the WebDAV If header + } + + + /** + * Override the DefaultServlet implementation and only use the PathInfo. If the ServletPath is non-null, it will be + * because the WebDAV servlet has been mapped to a url other than /* to configure editing at different url than + * normal viewing. + * + * @param request The servlet request we are processing + */ + @Override + protected String getRelativePath(HttpServletRequest request) { + return getRelativePath(request, false); + } + + @Override + protected String getRelativePath(HttpServletRequest request, boolean allowEmptyPath) { + String pathInfo; + + if (request.getAttribute(RequestDispatcher.INCLUDE_REQUEST_URI) != null) { + // For includes, get the info from the attributes + pathInfo = (String) request.getAttribute(RequestDispatcher.INCLUDE_PATH_INFO); + } else { + pathInfo = request.getPathInfo(); + } + + StringBuilder result = new StringBuilder(); + if (pathInfo != null) { + result.append(pathInfo); + } + if (result.isEmpty()) { + result.append('/'); + } + + return result.toString(); + } + + + /** + * Determines the prefix for standard directory GET listings. + */ + @Override + protected String getPathPrefix(final HttpServletRequest request) { + // Repeat the servlet path (e.g. /webdav/) in the listing path + String contextPath = request.getContextPath(); + if (request.getServletPath() != null) { + contextPath = contextPath + request.getServletPath(); + } + return contextPath; + } + + + /** + * OPTIONS Method. + * + * @param req The Servlet request + * @param resp The Servlet response + * + * @throws ServletException If an error occurs + * @throws IOException If an IO error occurs + */ + @Override + protected void doOptions(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + resp.addHeader("DAV", "1,2"); + resp.addHeader("Allow", determineMethodsAllowed(req)); + resp.addHeader("MS-Author-Via", "DAV"); + } + + + /** + * PROPFIND Method. + * + * @param req The Servlet request + * @param resp The Servlet response + * + * @throws ServletException If an error occurs + * @throws IOException If an IO error occurs + */ + protected void doPropfind(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + + if (!listings) { + sendNotAllowed(req, resp); + return; + } + + String path = getRelativePath(req); + if (path.length() > 1 && path.endsWith("/")) { + path = path.substring(0, path.length() - 1); + } + + // Properties which are to be displayed. + List properties = null; + // Propfind depth + int depth = maxDepth; + // Propfind type + int type = FIND_ALL_PROP; + + String depthStr = req.getHeader("Depth"); + + if (depthStr == null) { + depth = maxDepth; + } else { + depth = switch (depthStr) { + case "0" -> 0; + case "1" -> 1; + case "infinity" -> maxDepth; + default -> depth; + }; + } + + Node propNode = null; + + if (req.getContentLengthLong() > 0) { + DocumentBuilder documentBuilder = getDocumentBuilder(); + + try { + Document document = documentBuilder.parse(new InputSource(req.getInputStream())); + + // Get the root element of the document + Element rootElement = document.getDocumentElement(); + NodeList childList = rootElement.getChildNodes(); + + for (int i = 0; i < childList.getLength(); i++) { + Node currentNode = childList.item(i); + switch (currentNode.getNodeType()) { + case Node.TEXT_NODE: + break; + case Node.ELEMENT_NODE: + if (currentNode.getNodeName().endsWith("prop")) { + type = FIND_BY_PROPERTY; + propNode = currentNode; + } + if (currentNode.getNodeName().endsWith("propname")) { + type = FIND_PROPERTY_NAMES; + } + if (currentNode.getNodeName().endsWith("allprop")) { + type = FIND_ALL_PROP; + } + break; + } + } + } catch (SAXException | IOException e) { + // Something went wrong - bad request + resp.sendError(WebdavStatus.SC_BAD_REQUEST); + return; + } + } + + if (type == FIND_BY_PROPERTY) { + properties = new ArrayList<>(); + // propNode must be non-null if type == FIND_BY_PROPERTY + @SuppressWarnings("null") + NodeList childList = propNode.getChildNodes(); + + for (int i = 0; i < childList.getLength(); i++) { + Node currentNode = childList.item(i); + switch (currentNode.getNodeType()) { + case Node.TEXT_NODE: + break; + case Node.ELEMENT_NODE: + String nodeName = currentNode.getNodeName(); + String propertyName = null; + if (nodeName.indexOf(':') != -1) { + propertyName = nodeName.substring(nodeName.indexOf(':') + 1); + } else { + propertyName = nodeName; + } + // href is a live property which is handled differently + properties.add(propertyName); + break; + } + } + } + + WebResource resource = resources.getResource(path); + + if (!resource.exists()) { + int slash = path.lastIndexOf('/'); + if (slash != -1) { + String parentPath = path.substring(0, slash); + List currentLockNullResources = lockNullResources.get(parentPath); + if (currentLockNullResources != null) { + for (String lockNullPath : currentLockNullResources) { + if (lockNullPath.equals(path)) { + resp.setStatus(WebdavStatus.SC_MULTI_STATUS); + resp.setContentType("text/xml; charset=UTF-8"); + // Create multistatus object + XMLWriter generatedXML = new XMLWriter(resp.getWriter()); + generatedXML.writeXMLHeader(); + generatedXML.writeElement("D", DEFAULT_NAMESPACE, "multistatus", XMLWriter.OPENING); + parseLockNullProperties(req, generatedXML, lockNullPath, type, properties); + generatedXML.writeElement("D", "multistatus", XMLWriter.CLOSING); + generatedXML.sendData(); + return; + } + } + } + } + } + + if (!resource.exists()) { + resp.sendError(HttpServletResponse.SC_NOT_FOUND); + return; + } + + resp.setStatus(WebdavStatus.SC_MULTI_STATUS); + + resp.setContentType("text/xml; charset=UTF-8"); + + // Create multistatus object + XMLWriter generatedXML = new XMLWriter(resp.getWriter()); + generatedXML.writeXMLHeader(); + + generatedXML.writeElement("D", DEFAULT_NAMESPACE, "multistatus", XMLWriter.OPENING); + + if (depth == 0) { + parseProperties(req, generatedXML, path, type, properties); + } else { + // The stack always contains the object of the current level + Deque stack = new ArrayDeque<>(); + stack.addFirst(path); + + // Stack of the objects one level below + Deque stackBelow = new ArrayDeque<>(); + + while ((!stack.isEmpty()) && (depth >= 0)) { + + String currentPath = stack.remove(); + parseProperties(req, generatedXML, currentPath, type, properties); + + resource = resources.getResource(currentPath); + + if (resource.isDirectory() && (depth > 0)) { + + String[] entries = resources.list(currentPath); + for (String entry : entries) { + String newPath = currentPath; + if (!(newPath.endsWith("/"))) { + newPath += "/"; + } + newPath += entry; + stackBelow.addFirst(newPath); + } + + // Displaying the lock-null resources present in that + // collection + String lockPath = currentPath; + if (lockPath.endsWith("/")) { + lockPath = lockPath.substring(0, lockPath.length() - 1); + } + List currentLockNullResources = lockNullResources.get(lockPath); + if (currentLockNullResources != null) { + for (String lockNullPath : currentLockNullResources) { + parseLockNullProperties(req, generatedXML, lockNullPath, type, properties); + } + } + } + + if (stack.isEmpty()) { + depth--; + stack = stackBelow; + stackBelow = new ArrayDeque<>(); + } + + generatedXML.sendData(); + + } + } + + generatedXML.writeElement("D", "multistatus", XMLWriter.CLOSING); + + generatedXML.sendData(); + + } + + + /** + * PROPPATCH Method. + * + * @param req The Servlet request + * @param resp The Servlet response + * + * @throws IOException If an IO error occurs + */ + protected void doProppatch(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException { + if (readOnly) { + resp.sendError(WebdavStatus.SC_FORBIDDEN, "Read-only mode is enabled."); + return; + } + + if (isLocked(req)) { + resp.sendError(WebdavStatus.SC_LOCKED, "Resource is locked."); + return; + } + + String path = getRelativePath(req); + WebResource resource = resources.getResource(path); + + if (!resource.exists()) { + resp.sendError(WebdavStatus.SC_NOT_FOUND, "Resource not found."); + return; + } + + DocumentBuilder documentBuilder; + Document document; + try { + documentBuilder = getDocumentBuilder(); + document = documentBuilder.parse(new InputSource(req.getInputStream())); + } catch (SAXException | IOException e) { + resp.sendError(WebdavStatus.SC_BAD_REQUEST, "Error parsing XML request body."); + return; + } + + Element rootElement = document.getDocumentElement(); + NodeList setList = rootElement.getElementsByTagName("set"); + NodeList removeList = rootElement.getElementsByTagName("remove"); + + List successfulUpdates = new ArrayList<>(); + + processProppatchOperations(setList, successfulUpdates); + processProppatchOperations(removeList, successfulUpdates); + + if (!successfulUpdates.isEmpty()) { + resp.setStatus(WebdavStatus.SC_OK); + } else { + resp.setStatus(WebdavStatus.SC_MULTI_STATUS); + resp.setContentType("text/xml"); + XMLWriter generatedXML = new XMLWriter(resp.getWriter()); + generatedXML.writeXMLHeader(); + generatedXML.writeElement("D", DEFAULT_NAMESPACE, "multistatus", XMLWriter.OPENING); + generatedXML.writeElement("D", "multistatus", XMLWriter.CLOSING); + generatedXML.sendData(); + } + } + + private void processProppatchOperations(NodeList operationList, + List successfulUpdates) { + for (int i = 0; i < operationList.getLength(); i++) { + Node operationNode = operationList.item(i); + NodeList propList = operationNode.getChildNodes(); + + for (int j = 0; j < propList.getLength(); j++) { + Node propNode = propList.item(j); + if (propNode.getNodeType() == Node.ELEMENT_NODE) { + String propName = propNode.getNodeName(); + successfulUpdates.add(propName); + } + } + } + } + + /** + * MKCOL Method. + * + * @param req The Servlet request + * @param resp The Servlet response + * + * @throws ServletException If an error occurs + * @throws IOException If an IO error occurs + */ + protected void doMkcol(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + + String path = getRelativePath(req); + + WebResource resource = resources.getResource(path); + + // Can't create a collection if a resource already exists at the given + // path + if (resource.exists()) { + sendNotAllowed(req, resp); + return; + } + + if (readOnly) { + resp.sendError(WebdavStatus.SC_FORBIDDEN); + return; + } + + if (isLocked(req)) { + resp.sendError(WebdavStatus.SC_LOCKED); + return; + } + + if (req.getContentLengthLong() > 0) { + DocumentBuilder documentBuilder = getDocumentBuilder(); + try { + // Document document = + documentBuilder.parse(new InputSource(req.getInputStream())); + // Process this request body + resp.sendError(WebdavStatus.SC_NOT_IMPLEMENTED); + return; + + } catch (SAXException saxe) { + // Parse error - assume invalid content + resp.sendError(WebdavStatus.SC_UNSUPPORTED_MEDIA_TYPE); + return; + } + } + + if (resources.mkdir(path)) { + resp.setStatus(WebdavStatus.SC_CREATED); + // Removing any lock-null resource which would be present + lockNullResources.remove(path); + } else { + resp.sendError(WebdavStatus.SC_CONFLICT); + } + } + + + /** + * DELETE Method. + * + * @param req The Servlet request + * @param resp The Servlet response + * + * @throws ServletException If an error occurs + * @throws IOException If an IO error occurs + */ + @Override + protected void doDelete(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + + if (readOnly) { + sendNotAllowed(req, resp); + return; + } + + if (isLocked(req)) { + resp.sendError(WebdavStatus.SC_LOCKED); + return; + } + + deleteResource(req, resp); + } + + + /** + * Process a PUT request for the specified resource. + * + * @param req The servlet request we are processing + * @param resp The servlet response we are creating + * + * @exception IOException if an input/output error occurs + * @exception ServletException if a servlet-specified error occurs + */ + @Override + protected void doPut(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + + if (isLocked(req)) { + resp.sendError(WebdavStatus.SC_LOCKED); + return; + } + + String path = getRelativePath(req); + WebResource resource = resources.getResource(path); + if (resource.isDirectory()) { + sendNotAllowed(req, resp); + return; + } + + super.doPut(req, resp); + + // Removing any lock-null resource which would be present + lockNullResources.remove(path); + } + + + /** + * COPY Method. + * + * @param req The Servlet request + * @param resp The Servlet response + * + * @throws IOException If an IO error occurs + */ + protected void doCopy(HttpServletRequest req, HttpServletResponse resp) throws IOException { + + if (readOnly) { + resp.sendError(WebdavStatus.SC_FORBIDDEN); + return; + } + + copyResource(req, resp); + } + + + /** + * MOVE Method. + * + * @param req The Servlet request + * @param resp The Servlet response + * + * @throws IOException If an IO error occurs + */ + protected void doMove(HttpServletRequest req, HttpServletResponse resp) throws IOException { + + if (readOnly) { + resp.sendError(WebdavStatus.SC_FORBIDDEN); + return; + } + + if (isLocked(req)) { + resp.sendError(WebdavStatus.SC_LOCKED); + return; + } + + String path = getRelativePath(req); + + if (copyResource(req, resp)) { + deleteResource(path, req, resp, false); + } + } + + + /** + * LOCK Method. + * + * @param req The Servlet request + * @param resp The Servlet response + * + * @throws ServletException If an error occurs + * @throws IOException If an IO error occurs + */ + protected void doLock(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + + if (readOnly) { + resp.sendError(WebdavStatus.SC_FORBIDDEN); + return; + } + + if (isLocked(req)) { + resp.sendError(WebdavStatus.SC_LOCKED); + return; + } + + LockInfo lock = new LockInfo(maxDepth); + + // Parsing lock request + + // Parsing depth header + + String depthStr = req.getHeader("Depth"); + + if (depthStr == null) { + lock.depth = maxDepth; + } else { + if (depthStr.equals("0")) { + lock.depth = 0; + } else { + lock.depth = maxDepth; + } + } + + // Parsing timeout header + + int lockDuration = DEFAULT_TIMEOUT; + String lockDurationStr = req.getHeader("Timeout"); + if (lockDurationStr != null) { + int commaPos = lockDurationStr.indexOf(','); + // If multiple timeouts, just use the first + if (commaPos != -1) { + lockDurationStr = lockDurationStr.substring(0, commaPos); + } + if (lockDurationStr.startsWith("Second-")) { + lockDuration = Integer.parseInt(lockDurationStr.substring(7)); + } else { + if (lockDurationStr.equalsIgnoreCase("infinity")) { + lockDuration = MAX_TIMEOUT; + } else { + try { + lockDuration = Integer.parseInt(lockDurationStr); + } catch (NumberFormatException e) { + lockDuration = MAX_TIMEOUT; + } + } + } + if (lockDuration == 0) { + lockDuration = DEFAULT_TIMEOUT; + } + if (lockDuration > MAX_TIMEOUT) { + lockDuration = MAX_TIMEOUT; + } + } + lock.expiresAt = System.currentTimeMillis() + (lockDuration * 1000L); + + int lockRequestType = LOCK_CREATION; + + Node lockInfoNode = null; + + DocumentBuilder documentBuilder = getDocumentBuilder(); + + try { + Document document = documentBuilder.parse(new InputSource(req.getInputStream())); + + // Get the root element of the document + lockInfoNode = document.getDocumentElement(); + } catch (IOException | SAXException e) { + lockRequestType = LOCK_REFRESH; + } + + if (lockInfoNode != null) { + + // Reading lock information + + NodeList childList = lockInfoNode.getChildNodes(); + StringWriter strWriter = null; + DOMWriter domWriter = null; + + Node lockScopeNode = null; + Node lockTypeNode = null; + Node lockOwnerNode = null; + + for (int i = 0; i < childList.getLength(); i++) { + Node currentNode = childList.item(i); + switch (currentNode.getNodeType()) { + case Node.TEXT_NODE: + break; + case Node.ELEMENT_NODE: + String nodeName = currentNode.getNodeName(); + if (nodeName.endsWith("lockscope")) { + lockScopeNode = currentNode; + } + if (nodeName.endsWith("locktype")) { + lockTypeNode = currentNode; + } + if (nodeName.endsWith("owner")) { + lockOwnerNode = currentNode; + } + break; + } + } + + if (lockScopeNode != null) { + + childList = lockScopeNode.getChildNodes(); + for (int i = 0; i < childList.getLength(); i++) { + Node currentNode = childList.item(i); + switch (currentNode.getNodeType()) { + case Node.TEXT_NODE: + break; + case Node.ELEMENT_NODE: + String tempScope = currentNode.getNodeName(); + if (tempScope.indexOf(':') != -1) { + lock.scope = tempScope.substring(tempScope.indexOf(':') + 1); + } else { + lock.scope = tempScope; + } + break; + } + } + + if (lock.scope == null) { + // Bad request + resp.setStatus(WebdavStatus.SC_BAD_REQUEST); + } + + } else { + // Bad request + resp.setStatus(WebdavStatus.SC_BAD_REQUEST); + } + + if (lockTypeNode != null) { + + childList = lockTypeNode.getChildNodes(); + for (int i = 0; i < childList.getLength(); i++) { + Node currentNode = childList.item(i); + switch (currentNode.getNodeType()) { + case Node.TEXT_NODE: + break; + case Node.ELEMENT_NODE: + String tempType = currentNode.getNodeName(); + if (tempType.indexOf(':') != -1) { + lock.type = tempType.substring(tempType.indexOf(':') + 1); + } else { + lock.type = tempType; + } + break; + } + } + + if (lock.type == null) { + // Bad request + resp.setStatus(WebdavStatus.SC_BAD_REQUEST); + } + + } else { + // Bad request + resp.setStatus(WebdavStatus.SC_BAD_REQUEST); + } + + if (lockOwnerNode != null) { + + childList = lockOwnerNode.getChildNodes(); + for (int i = 0; i < childList.getLength(); i++) { + Node currentNode = childList.item(i); + switch (currentNode.getNodeType()) { + case Node.TEXT_NODE: + lock.owner += currentNode.getNodeValue(); + break; + case Node.ELEMENT_NODE: + strWriter = new StringWriter(); + domWriter = new DOMWriter(strWriter); + domWriter.print(currentNode); + lock.owner += strWriter.toString(); + break; + } + } + + if (lock.owner == null) { + // Bad request + resp.setStatus(WebdavStatus.SC_BAD_REQUEST); + } + + } else { + lock.owner = ""; + } + } + + String path = getRelativePath(req); + + lock.path = path; + + WebResource resource = resources.getResource(path); + + if (lockRequestType == LOCK_CREATION) { + + // Generating lock id + String lockTokenStr = req.getServletPath() + "-" + lock.type + "-" + lock.scope + "-" + + req.getUserPrincipal() + "-" + lock.depth + "-" + lock.owner + "-" + lock.tokens + "-" + + lock.expiresAt + "-" + System.currentTimeMillis() + "-" + secret; + String lockToken = HexUtils + .toHexString(ConcurrentMessageDigest.digestMD5(lockTokenStr.getBytes(StandardCharsets.ISO_8859_1))); + + if (resource.isDirectory() && lock.depth == maxDepth) { + + // Locking a collection (and all its member resources) + + // Checking if a child resource of this collection is + // already locked + List lockPaths = new ArrayList<>(); + Iterator collectionLocksIterator = collectionLocks.iterator(); + while (collectionLocksIterator.hasNext()) { + LockInfo currentLock = collectionLocksIterator.next(); + if (currentLock.hasExpired()) { + collectionLocksIterator.remove(); + continue; + } + if (currentLock.path.startsWith(lock.path) && (currentLock.isExclusive() || lock.isExclusive())) { + // A child collection of this collection is locked + lockPaths.add(currentLock.path); + } + } + for (LockInfo currentLock : resourceLocks.values()) { + if (currentLock.hasExpired()) { + resourceLocks.remove(currentLock.path); + continue; + } + if (currentLock.path.startsWith(lock.path) && (currentLock.isExclusive() || lock.isExclusive())) { + // A child resource of this collection is locked + lockPaths.add(currentLock.path); + } + } + + if (!lockPaths.isEmpty()) { + + // One of the child paths was locked + // We generate a multistatus error report + + resp.setStatus(WebdavStatus.SC_CONFLICT); + + XMLWriter generatedXML = new XMLWriter(); + generatedXML.writeXMLHeader(); + + generatedXML.writeElement("D", DEFAULT_NAMESPACE, "multistatus", XMLWriter.OPENING); + + for (String lockPath : lockPaths) { + generatedXML.writeElement("D", "response", XMLWriter.OPENING); + generatedXML.writeElement("D", "href", XMLWriter.OPENING); + generatedXML.writeText(lockPath); + generatedXML.writeElement("D", "href", XMLWriter.CLOSING); + generatedXML.writeElement("D", "status", XMLWriter.OPENING); + generatedXML.writeText("HTTP/1.1 " + WebdavStatus.SC_LOCKED + " "); + generatedXML.writeElement("D", "status", XMLWriter.CLOSING); + generatedXML.writeElement("D", "response", XMLWriter.CLOSING); + } + + generatedXML.writeElement("D", "multistatus", XMLWriter.CLOSING); + + Writer writer = resp.getWriter(); + writer.write(generatedXML.toString()); + writer.close(); + + return; + } + + boolean addLock = true; + + // Checking if there is already a shared lock on this path + for (LockInfo currentLock : collectionLocks) { + if (currentLock.path.equals(lock.path)) { + + if (currentLock.isExclusive()) { + resp.sendError(WebdavStatus.SC_LOCKED); + return; + } else { + if (lock.isExclusive()) { + resp.sendError(WebdavStatus.SC_LOCKED); + return; + } + } + + currentLock.tokens.add(lockToken); + lock = currentLock; + addLock = false; + } + } + + if (addLock) { + lock.tokens.add(lockToken); + collectionLocks.add(lock); + } + + } else { + + // Locking a single resource + + // Retrieving an already existing lock on that resource + LockInfo presentLock = resourceLocks.get(lock.path); + if (presentLock != null) { + + if ((presentLock.isExclusive()) || (lock.isExclusive())) { + // If either lock is exclusive, the lock can't be + // granted + resp.sendError(WebdavStatus.SC_PRECONDITION_FAILED); + return; + } else { + presentLock.tokens.add(lockToken); + lock = presentLock; + } + + } else { + + lock.tokens.add(lockToken); + resourceLocks.put(lock.path, lock); + + // Checking if a resource exists at this path + if (!resource.exists()) { + + // "Creating" a lock-null resource + int slash = lock.path.lastIndexOf('/'); + String parentPath = lock.path.substring(0, slash); + + lockNullResources.computeIfAbsent(parentPath, k -> new ArrayList<>()).add(lock.path); + } + + // Add the Lock-Token header as by RFC 2518 8.10.1 + // - only do this for newly created locks + resp.addHeader("Lock-Token", ""); + } + } + } + + if (lockRequestType == LOCK_REFRESH) { + + String ifHeader = req.getHeader("If"); + if (ifHeader == null) { + ifHeader = ""; + } + + // Checking resource locks + + LockInfo toRenew = resourceLocks.get(path); + + if (toRenew != null) { + // At least one of the tokens of the locks must have been given + for (String token : toRenew.tokens) { + if (ifHeader.contains(token)) { + toRenew.expiresAt = lock.expiresAt; + lock = toRenew; + } + } + } + + // Checking inheritable collection locks + for (LockInfo collecionLock : collectionLocks) { + if (path.equals(collecionLock.path)) { + for (String token : collecionLock.tokens) { + if (ifHeader.contains(token)) { + collecionLock.expiresAt = lock.expiresAt; + lock = collecionLock; + } + } + } + } + } + + // Set the status, then generate the XML response containing + // the lock information + XMLWriter generatedXML = new XMLWriter(); + generatedXML.writeXMLHeader(); + generatedXML.writeElement("D", DEFAULT_NAMESPACE, "prop", XMLWriter.OPENING); + + generatedXML.writeElement("D", "lockdiscovery", XMLWriter.OPENING); + + lock.toXML(generatedXML); + + generatedXML.writeElement("D", "lockdiscovery", XMLWriter.CLOSING); + + generatedXML.writeElement("D", "prop", XMLWriter.CLOSING); + + resp.setStatus(WebdavStatus.SC_OK); + resp.setContentType("text/xml; charset=UTF-8"); + Writer writer = resp.getWriter(); + writer.write(generatedXML.toString()); + writer.close(); + } + + + /** + * UNLOCK Method. + * + * @param req The Servlet request + * @param resp The Servlet response + * + * @throws IOException If an IO error occurs + */ + protected void doUnlock(HttpServletRequest req, HttpServletResponse resp) throws IOException { + + if (readOnly) { + resp.sendError(WebdavStatus.SC_FORBIDDEN); + return; + } + + if (isLocked(req)) { + resp.sendError(WebdavStatus.SC_LOCKED); + return; + } + + String path = getRelativePath(req); + + String lockTokenHeader = req.getHeader("Lock-Token"); + if (lockTokenHeader == null) { + lockTokenHeader = ""; + } + + // Checking resource locks + + LockInfo lock = resourceLocks.get(path); + if (lock != null) { + + // At least one of the tokens of the locks must have been given + Iterator tokenList = lock.tokens.iterator(); + while (tokenList.hasNext()) { + String token = tokenList.next(); + if (lockTokenHeader.contains(token)) { + tokenList.remove(); + } + } + + if (lock.tokens.isEmpty()) { + resourceLocks.remove(path); + // Removing any lock-null resource which would be present + lockNullResources.remove(path); + } + + } + + // Checking inheritable collection locks + Iterator collectionLocksList = collectionLocks.iterator(); + while (collectionLocksList.hasNext()) { + lock = collectionLocksList.next(); + if (path.equals(lock.path)) { + Iterator tokenList = lock.tokens.iterator(); + while (tokenList.hasNext()) { + String token = tokenList.next(); + if (lockTokenHeader.contains(token)) { + tokenList.remove(); + break; + } + } + if (lock.tokens.isEmpty()) { + collectionLocksList.remove(); + // Removing any lock-null resource which would be present + lockNullResources.remove(path); + } + } + } + + resp.setStatus(WebdavStatus.SC_NO_CONTENT); + } + + + // -------------------------------------------------------- Private Methods + + /** + * Check to see if a resource is currently write locked. The method will look at the "If" header to make sure the + * client has give the appropriate lock tokens. + * + * @param req Servlet request + * + * @return true if the resource is locked (and no appropriate lock token has been found for at least + * one of the non-shared locks which are present on the resource). + */ + private boolean isLocked(HttpServletRequest req) { + + String path = getRelativePath(req); + + String ifHeader = req.getHeader("If"); + if (ifHeader == null) { + ifHeader = ""; + } + + String lockTokenHeader = req.getHeader("Lock-Token"); + if (lockTokenHeader == null) { + lockTokenHeader = ""; + } + + return isLocked(path, ifHeader + lockTokenHeader); + } + + + /** + * Check to see if a resource is currently write locked. + * + * @param path Path of the resource + * @param ifHeader "If" HTTP header which was included in the request + * + * @return true if the resource is locked (and no appropriate lock token has been found for at least + * one of the non-shared locks which are present on the resource). + */ + private boolean isLocked(String path, String ifHeader) { + + // Checking resource locks + + LockInfo lock = resourceLocks.get(path); + if ((lock != null) && (lock.hasExpired())) { + resourceLocks.remove(path); + } else if (lock != null) { + + // At least one of the tokens of the locks must have been given + + boolean tokenMatch = false; + for (String token : lock.tokens) { + if (ifHeader.contains(token)) { + tokenMatch = true; + break; + } + } + if (!tokenMatch) { + return true; + } + } + + // Checking inheritable collection locks + Iterator collectionLockList = collectionLocks.iterator(); + while (collectionLockList.hasNext()) { + lock = collectionLockList.next(); + if (lock.hasExpired()) { + collectionLockList.remove(); + } else if (path.startsWith(lock.path)) { + boolean tokenMatch = false; + for (String token : lock.tokens) { + if (ifHeader.contains(token)) { + tokenMatch = true; + break; + } + } + if (!tokenMatch) { + return true; + } + } + } + + return false; + } + + + /** + * Copy a resource. + * + * @param req Servlet request + * @param resp Servlet response + * + * @return boolean true if the copy is successful + * + * @throws IOException If an IO error occurs + */ + private boolean copyResource(HttpServletRequest req, HttpServletResponse resp) throws IOException { + + // Check the source exists + String path = getRelativePath(req); + WebResource source = resources.getResource(path); + if (!source.exists()) { + resp.sendError(WebdavStatus.SC_NOT_FOUND); + return false; + } + + // Parsing destination header + // See RFC 4918 + String destinationHeader = req.getHeader("Destination"); + + if (destinationHeader == null || destinationHeader.isEmpty()) { + resp.sendError(WebdavStatus.SC_BAD_REQUEST); + return false; + } + + URI destinationUri; + try { + destinationUri = new URI(destinationHeader); + } catch (URISyntaxException e) { + resp.sendError(WebdavStatus.SC_BAD_REQUEST); + return false; + } + + String destinationPath = destinationUri.getPath(); + + // Destination isn't allowed to use '.' or '..' segments + if (!destinationPath.equals(RequestUtil.normalize(destinationPath))) { + resp.sendError(WebdavStatus.SC_BAD_REQUEST); + return false; + } + + if (destinationUri.isAbsolute()) { + // Scheme and host need to match + if (!req.getScheme().equals(destinationUri.getScheme()) || + !req.getServerName().equals(destinationUri.getHost())) { + resp.sendError(WebdavStatus.SC_FORBIDDEN); + return false; + } + } + + // Cross-context operations aren't supported + String reqContextPath = req.getContextPath(); + if (!destinationPath.startsWith(reqContextPath + "/")) { + resp.sendError(WebdavStatus.SC_FORBIDDEN); + return false; + } + + // Remove context path & servlet path + destinationPath = destinationPath.substring(reqContextPath.length() + req.getServletPath().length()); + + if (debug > 0) { + log("Dest path :" + destinationPath); + } + + // Check destination path to protect special subdirectories + if (isSpecialPath(destinationPath)) { + resp.sendError(WebdavStatus.SC_FORBIDDEN); + return false; + } + + if (destinationPath.equals(path)) { + resp.sendError(WebdavStatus.SC_FORBIDDEN); + return false; + } + + // Check src / dest are not sub-dirs of each other + if (destinationPath.startsWith(path) && destinationPath.charAt(path.length()) == '/' || + path.startsWith(destinationPath) && path.charAt(destinationPath.length()) == '/') { + resp.sendError(WebdavStatus.SC_FORBIDDEN); + return false; + } + + boolean overwrite = true; + String overwriteHeader = req.getHeader("Overwrite"); + if (overwriteHeader != null) { + overwrite = overwriteHeader.equalsIgnoreCase("T"); + } + + // Overwriting the destination + WebResource destination = resources.getResource(destinationPath); + if (overwrite) { + // Delete destination resource, if it exists + if (destination.exists()) { + if (!deleteResource(destinationPath, req, resp, true)) { + return false; + } + } else { + resp.setStatus(WebdavStatus.SC_CREATED); + } + } else { + // If the destination exists, then it's a conflict + if (destination.exists()) { + resp.sendError(WebdavStatus.SC_PRECONDITION_FAILED); + return false; + } + } + + // Copying source to destination + + Map errorList = new HashMap<>(); + + boolean result = copyResource(errorList, path, destinationPath); + + if ((!result) || (!errorList.isEmpty())) { + if (errorList.size() == 1) { + resp.sendError(errorList.values().iterator().next()); + } else { + sendReport(resp, errorList); + } + return false; + } + + // Copy was successful + if (destination.exists()) { + resp.setStatus(WebdavStatus.SC_NO_CONTENT); + } else { + resp.setStatus(WebdavStatus.SC_CREATED); + } + + // Removing any lock-null resource which would be present at + // the destination path + lockNullResources.remove(destinationPath); + + return true; + } + + + /** + * Copy a collection. + * + * @param errorList Map containing the list of errors which occurred during the copy operation + * @param source Path of the resource to be copied + * @param dest Destination path + * + * @return true if the copy was successful + */ + private boolean copyResource(Map errorList, String source, String dest) { + + if (debug > 1) { + log("Copy: " + source + " To: " + dest); + } + + WebResource sourceResource = resources.getResource(source); + + if (sourceResource.isDirectory()) { + if (!resources.mkdir(dest)) { + WebResource destResource = resources.getResource(dest); + if (!destResource.isDirectory()) { + errorList.put(dest, WebdavStatus.SC_CONFLICT); + return false; + } + } + + String[] entries = resources.list(source); + for (String entry : entries) { + String childDest = dest; + if (!childDest.equals("/")) { + childDest += "/"; + } + childDest += entry; + String childSrc = source; + if (!childSrc.equals("/")) { + childSrc += "/"; + } + childSrc += entry; + copyResource(errorList, childSrc, childDest); + } + } else if (sourceResource.isFile()) { + WebResource destResource = resources.getResource(dest); + if (!destResource.exists() && !destResource.getWebappPath().endsWith("/")) { + int lastSlash = destResource.getWebappPath().lastIndexOf('/'); + if (lastSlash > 0) { + String parent = destResource.getWebappPath().substring(0, lastSlash); + WebResource parentResource = resources.getResource(parent); + if (!parentResource.isDirectory()) { + errorList.put(source, WebdavStatus.SC_CONFLICT); + return false; + } + } + } + // WebDAV Litmus test attempts to copy/move a file over a collection + // Need to remove trailing / from destination to enable test to pass + if (!destResource.exists() && dest.endsWith("/") && dest.length() > 1) { + // Convert destination name from collection (with trailing '/') + // to file (without trailing '/') + dest = dest.substring(0, dest.length() - 1); + } + try (InputStream is = sourceResource.getInputStream()) { + if (!resources.write(dest, is, false)) { + errorList.put(source, WebdavStatus.SC_INTERNAL_SERVER_ERROR); + return false; + } + } catch (IOException e) { + log(sm.getString("webdavservlet.inputstreamclosefail", source), e); + } + } else { + errorList.put(source, WebdavStatus.SC_INTERNAL_SERVER_ERROR); + return false; + } + return true; + } + + + /** + * Delete a resource. + * + * @param req Servlet request + * @param resp Servlet response + * @throws IOException If an IO error occurs + */ + private void deleteResource(HttpServletRequest req, HttpServletResponse resp) throws IOException { + String path = getRelativePath(req); + deleteResource(path, req, resp, true); + } + + + /** + * Delete a resource. + * + * @param path Path of the resource which is to be deleted + * @param req Servlet request + * @param resp Servlet response + * @param setStatus Should the response status be set on successful completion + * + * @return true if the delete is successful + * + * @throws IOException If an IO error occurs + */ + private boolean deleteResource(String path, HttpServletRequest req, HttpServletResponse resp, boolean setStatus) + throws IOException { + + String ifHeader = req.getHeader("If"); + if (ifHeader == null) { + ifHeader = ""; + } + + String lockTokenHeader = req.getHeader("Lock-Token"); + if (lockTokenHeader == null) { + lockTokenHeader = ""; + } + + if (isLocked(path, ifHeader + lockTokenHeader)) { + resp.sendError(WebdavStatus.SC_LOCKED); + return false; + } + + WebResource resource = resources.getResource(path); + + if (!resource.exists()) { + resp.sendError(WebdavStatus.SC_NOT_FOUND); + return false; + } + + if (!resource.isDirectory()) { + if (!resource.delete()) { + resp.sendError(WebdavStatus.SC_INTERNAL_SERVER_ERROR); + return false; + } + } else { + + Map errorList = new HashMap<>(); + + deleteCollection(req, path, errorList); + if (!resource.delete()) { + errorList.put(path, WebdavStatus.SC_INTERNAL_SERVER_ERROR); + } + + if (!errorList.isEmpty()) { + sendReport(resp, errorList); + return false; + } + } + if (setStatus) { + resp.setStatus(WebdavStatus.SC_NO_CONTENT); + } + return true; + } + + + /** + * Deletes a collection. + * + * @param req The Servlet request + * @param path Path to the collection to be deleted + * @param errorList Contains the list of the errors which occurred + */ + private void deleteCollection(HttpServletRequest req, String path, Map errorList) { + + if (debug > 1) { + log("Delete:" + path); + } + + // Prevent deletion of special subdirectories + if (isSpecialPath(path)) { + errorList.put(path, WebdavStatus.SC_FORBIDDEN); + return; + } + + String ifHeader = req.getHeader("If"); + if (ifHeader == null) { + ifHeader = ""; + } + + String lockTokenHeader = req.getHeader("Lock-Token"); + if (lockTokenHeader == null) { + lockTokenHeader = ""; + } + + String[] entries = resources.list(path); + + for (String entry : entries) { + String childName = path; + if (!childName.equals("/")) { + childName += "/"; + } + childName += entry; + + if (isLocked(childName, ifHeader + lockTokenHeader)) { + + errorList.put(childName, WebdavStatus.SC_LOCKED); + + } else { + WebResource childResource = resources.getResource(childName); + if (childResource.isDirectory()) { + deleteCollection(req, childName, errorList); + } + + if (!childResource.delete()) { + if (!childResource.isDirectory()) { + // If it's not a collection, then it's an unknown + // error + errorList.put(childName, WebdavStatus.SC_INTERNAL_SERVER_ERROR); + } + } + } + } + } + + + /** + * Send a multistatus element containing a complete error report to the client. + * + * @param resp Servlet response + * @param errorList List of error to be displayed + * + * @throws IOException If an IO error occurs + */ + private void sendReport(HttpServletResponse resp, Map errorList) + throws IOException { + + resp.setStatus(WebdavStatus.SC_MULTI_STATUS); + + XMLWriter generatedXML = new XMLWriter(); + generatedXML.writeXMLHeader(); + + generatedXML.writeElement("D", DEFAULT_NAMESPACE, "multistatus", XMLWriter.OPENING); + + for (Map.Entry errorEntry : errorList.entrySet()) { + String errorPath = errorEntry.getKey(); + int errorCode = errorEntry.getValue(); + + generatedXML.writeElement("D", "response", XMLWriter.OPENING); + + generatedXML.writeElement("D", "href", XMLWriter.OPENING); + generatedXML.writeText(getServletContext().getContextPath() + errorPath); + generatedXML.writeElement("D", "href", XMLWriter.CLOSING); + + generatedXML.writeElement("D", "status", XMLWriter.OPENING); + generatedXML.writeText("HTTP/1.1 " + errorCode + " "); + generatedXML.writeElement("D", "status", XMLWriter.CLOSING); + + generatedXML.writeElement("D", "response", XMLWriter.CLOSING); + } + + generatedXML.writeElement("D", "multistatus", XMLWriter.CLOSING); + + Writer writer = resp.getWriter(); + writer.write(generatedXML.toString()); + writer.close(); + } + + + /** + * Propfind helper method. + * + * @param req The servlet request + * @param generatedXML XML response to the Propfind request + * @param path Path of the current resource + * @param type Propfind type + * @param properties If the propfind type is find properties by name, then this List contains those properties + */ + private void parseProperties(HttpServletRequest req, XMLWriter generatedXML, String path, int type, + List properties) { + + // Exclude any resource in the /WEB-INF and /META-INF subdirectories + if (isSpecialPath(path)) { + return; + } + + WebResource resource = resources.getResource(path); + if (!resource.exists()) { + // File is in directory listing but doesn't appear to exist + // Broken symlink or odd permission settings? + return; + } + + String href = req.getContextPath() + req.getServletPath(); + if ((href.endsWith("/")) && (path.startsWith("/"))) { + href += path.substring(1); + } else { + href += path; + } + if (resource.isDirectory() && (!href.endsWith("/"))) { + href += "/"; + } + + String rewrittenUrl = rewriteUrl(href); + + generatePropFindResponse(generatedXML, rewrittenUrl, path, type, properties, resource.isFile(), false, + resource.getCreation(), resource.getLastModified(), resource.getContentLength(), + getServletContext().getMimeType(resource.getName()), generateETag(resource)); + } + + + /** + * Propfind helper method. Displays the properties of a lock-null resource. + * + * @param req The servlet request + * @param generatedXML XML response to the Propfind request + * @param path Path of the current resource + * @param type Propfind type + * @param properties If the propfind type is find properties by name, then this List contains those properties + */ + private void parseLockNullProperties(HttpServletRequest req, XMLWriter generatedXML, String path, int type, + List properties) { + + // Exclude any resource in the /WEB-INF and /META-INF subdirectories + if (isSpecialPath(path)) { + return; + } + + // Retrieving the lock associated with the lock-null resource + LockInfo lock = resourceLocks.get(path); + + if (lock == null) { + return; + } + + String absoluteUri = req.getRequestURI(); + String relativePath = getRelativePath(req); + String toAppend = path.substring(relativePath.length()); + if (!toAppend.startsWith("/")) { + toAppend = "/" + toAppend; + } + + String rewrittenUrl = rewriteUrl(RequestUtil.normalize(absoluteUri + toAppend)); + + generatePropFindResponse(generatedXML, rewrittenUrl, path, type, properties, true, true, + lock.creationDate.getTime(), lock.creationDate.getTime(), 0, "", ""); + } + + + private void generatePropFindResponse(XMLWriter generatedXML, String rewrittenUrl, String path, int propFindType, + List properties, boolean isFile, boolean isLockNull, long created, long lastModified, + long contentLength, String contentType, String eTag) { + + generatedXML.writeElement("D", "response", XMLWriter.OPENING); + String status = "HTTP/1.1 " + WebdavStatus.SC_OK + " "; + + // Generating href element + generatedXML.writeElement("D", "href", XMLWriter.OPENING); + generatedXML.writeText(rewrittenUrl); + generatedXML.writeElement("D", "href", XMLWriter.CLOSING); + + String resourceName = path; + int lastSlash = path.lastIndexOf('/'); + if (lastSlash != -1) { + resourceName = resourceName.substring(lastSlash + 1); + } + + switch (propFindType) { + + case FIND_ALL_PROP: + + generatedXML.writeElement("D", "propstat", XMLWriter.OPENING); + generatedXML.writeElement("D", "prop", XMLWriter.OPENING); + + generatedXML.writeProperty("D", "creationdate", getISOCreationDate(created)); + generatedXML.writeElement("D", "displayname", XMLWriter.OPENING); + generatedXML.writeData(resourceName); + generatedXML.writeElement("D", "displayname", XMLWriter.CLOSING); + if (isFile) { + generatedXML.writeProperty("D", "getlastmodified", FastHttpDateFormat.formatDate(lastModified)); + generatedXML.writeProperty("D", "getcontentlength", Long.toString(contentLength)); + if (contentType != null) { + generatedXML.writeProperty("D", "getcontenttype", contentType); + } + generatedXML.writeProperty("D", "getetag", eTag); + if (isLockNull) { + generatedXML.writeElement("D", "resourcetype", XMLWriter.OPENING); + generatedXML.writeElement("D", "lock-null", XMLWriter.NO_CONTENT); + generatedXML.writeElement("D", "resourcetype", XMLWriter.CLOSING); + } else { + generatedXML.writeElement("D", "resourcetype", XMLWriter.NO_CONTENT); + } + } else { + generatedXML.writeProperty("D", "getlastmodified", FastHttpDateFormat.formatDate(lastModified)); + generatedXML.writeElement("D", "resourcetype", XMLWriter.OPENING); + generatedXML.writeElement("D", "collection", XMLWriter.NO_CONTENT); + generatedXML.writeElement("D", "resourcetype", XMLWriter.CLOSING); + } + + generatedXML.writeProperty("D", "source", ""); + + String supportedLocks = "" + "" + + "" + "" + "" + + "" + "" + + ""; + generatedXML.writeElement("D", "supportedlock", XMLWriter.OPENING); + generatedXML.writeRaw(supportedLocks); + generatedXML.writeElement("D", "supportedlock", XMLWriter.CLOSING); + + generateLockDiscovery(path, generatedXML); + + generatedXML.writeElement("D", "prop", XMLWriter.CLOSING); + generatedXML.writeElement("D", "status", XMLWriter.OPENING); + generatedXML.writeText(status); + generatedXML.writeElement("D", "status", XMLWriter.CLOSING); + generatedXML.writeElement("D", "propstat", XMLWriter.CLOSING); + + break; + + case FIND_PROPERTY_NAMES: + + generatedXML.writeElement("D", "propstat", XMLWriter.OPENING); + generatedXML.writeElement("D", "prop", XMLWriter.OPENING); + + generatedXML.writeElement("D", "creationdate", XMLWriter.NO_CONTENT); + generatedXML.writeElement("D", "displayname", XMLWriter.NO_CONTENT); + if (isFile) { + generatedXML.writeElement("D", "getcontentlanguage", XMLWriter.NO_CONTENT); + generatedXML.writeElement("D", "getcontentlength", XMLWriter.NO_CONTENT); + generatedXML.writeElement("D", "getcontenttype", XMLWriter.NO_CONTENT); + generatedXML.writeElement("D", "getetag", XMLWriter.NO_CONTENT); + generatedXML.writeElement("D", "getlastmodified", XMLWriter.NO_CONTENT); + } + generatedXML.writeElement("D", "resourcetype", XMLWriter.NO_CONTENT); + generatedXML.writeElement("D", "source", XMLWriter.NO_CONTENT); + generatedXML.writeElement("D", "lockdiscovery", XMLWriter.NO_CONTENT); + + generatedXML.writeElement("D", "prop", XMLWriter.CLOSING); + generatedXML.writeElement("D", "status", XMLWriter.OPENING); + generatedXML.writeText(status); + generatedXML.writeElement("D", "status", XMLWriter.CLOSING); + generatedXML.writeElement("D", "propstat", XMLWriter.CLOSING); + + break; + + case FIND_BY_PROPERTY: + + List propertiesNotFound = new ArrayList<>(); + + // Parse the list of properties + + generatedXML.writeElement("D", "propstat", XMLWriter.OPENING); + generatedXML.writeElement("D", "prop", XMLWriter.OPENING); + + for (String property : properties) { + if (property.equals("creationdate")) { + generatedXML.writeProperty("D", "creationdate", getISOCreationDate(created)); + } else if (property.equals("displayname")) { + generatedXML.writeElement("D", "displayname", XMLWriter.OPENING); + generatedXML.writeData(resourceName); + generatedXML.writeElement("D", "displayname", XMLWriter.CLOSING); + } else if (property.equals("getcontentlanguage")) { + if (isFile) { + generatedXML.writeElement("D", "getcontentlanguage", XMLWriter.NO_CONTENT); + } else { + propertiesNotFound.add(property); + } + } else if (property.equals("getcontentlength")) { + if (isFile) { + generatedXML.writeProperty("D", "getcontentlength", Long.toString(contentLength)); + } else { + propertiesNotFound.add(property); + } + } else if (property.equals("getcontenttype")) { + if (isFile) { + generatedXML.writeProperty("D", "getcontenttype", contentType); + } else { + propertiesNotFound.add(property); + } + } else if (property.equals("getetag")) { + if (isFile) { + generatedXML.writeProperty("D", "getetag", eTag); + } else { + propertiesNotFound.add(property); + } + } else if (property.equals("getlastmodified")) { + if (isFile) { + generatedXML.writeProperty("D", "getlastmodified", + FastHttpDateFormat.formatDate(lastModified)); + } else { + propertiesNotFound.add(property); + } + } else if (property.equals("resourcetype")) { + if (isFile) { + if (isLockNull) { + generatedXML.writeElement("D", "resourcetype", XMLWriter.OPENING); + generatedXML.writeElement("D", "lock-null", XMLWriter.NO_CONTENT); + generatedXML.writeElement("D", "resourcetype", XMLWriter.CLOSING); + } else { + generatedXML.writeElement("D", "resourcetype", XMLWriter.NO_CONTENT); + } + } else { + generatedXML.writeElement("D", "resourcetype", XMLWriter.OPENING); + generatedXML.writeElement("D", "collection", XMLWriter.NO_CONTENT); + generatedXML.writeElement("D", "resourcetype", XMLWriter.CLOSING); + } + } else if (property.equals("source")) { + generatedXML.writeProperty("D", "source", ""); + } else if (property.equals("supportedlock")) { + supportedLocks = "" + "" + + "" + "" + "" + + "" + "" + + ""; + generatedXML.writeElement("D", "supportedlock", XMLWriter.OPENING); + generatedXML.writeRaw(supportedLocks); + generatedXML.writeElement("D", "supportedlock", XMLWriter.CLOSING); + } else if (property.equals("lockdiscovery")) { + if (!generateLockDiscovery(path, generatedXML)) { + propertiesNotFound.add(property); + } + } else { + propertiesNotFound.add(property); + } + } + + generatedXML.writeElement("D", "prop", XMLWriter.CLOSING); + generatedXML.writeElement("D", "status", XMLWriter.OPENING); + generatedXML.writeText(status); + generatedXML.writeElement("D", "status", XMLWriter.CLOSING); + generatedXML.writeElement("D", "propstat", XMLWriter.CLOSING); + + if (!propertiesNotFound.isEmpty()) { + + status = "HTTP/1.1 " + WebdavStatus.SC_NOT_FOUND + " "; + + generatedXML.writeElement("D", "propstat", XMLWriter.OPENING); + generatedXML.writeElement("D", "prop", XMLWriter.OPENING); + + for (String propertyNotFound : propertiesNotFound) { + generatedXML.writeElement("D", propertyNotFound, XMLWriter.NO_CONTENT); + } + + generatedXML.writeElement("D", "prop", XMLWriter.CLOSING); + generatedXML.writeElement("D", "status", XMLWriter.OPENING); + generatedXML.writeText(status); + generatedXML.writeElement("D", "status", XMLWriter.CLOSING); + generatedXML.writeElement("D", "propstat", XMLWriter.CLOSING); + } + + break; + } + + generatedXML.writeElement("D", "response", XMLWriter.CLOSING); + } + + + /** + * Print the lock discovery information associated with a path. + * + * @param path Path + * @param generatedXML XML data to which the locks info will be appended + * + * @return true if at least one lock was displayed + */ + private boolean generateLockDiscovery(String path, XMLWriter generatedXML) { + + LockInfo resourceLock = resourceLocks.get(path); + + boolean wroteStart = false; + + if (resourceLock != null) { + wroteStart = true; + generatedXML.writeElement("D", "lockdiscovery", XMLWriter.OPENING); + resourceLock.toXML(generatedXML); + } + + for (LockInfo currentLock : collectionLocks) { + if (path.startsWith(currentLock.path)) { + if (!wroteStart) { + wroteStart = true; + generatedXML.writeElement("D", "lockdiscovery", XMLWriter.OPENING); + } + currentLock.toXML(generatedXML); + } + } + + if (wroteStart) { + generatedXML.writeElement("D", "lockdiscovery", XMLWriter.CLOSING); + } else { + return false; + } + + return true; + } + + + /** + * Get creation date in ISO format. + * + * @return the formatted creation date + */ + private String getISOCreationDate(long creationDate) { + return creationDateFormat.format(new Date(creationDate)); + } + + + /** + * Determines the methods normally allowed for the resource. + * + * @param req The Servlet request + * + * @return The allowed HTTP methods + */ + @Override + protected String determineMethodsAllowed(HttpServletRequest req) { + + WebResource resource = resources.getResource(getRelativePath(req)); + + // These methods are always allowed. They may return a 404 (not a 405) + // if the resource does not exist. + StringBuilder methodsAllowed = new StringBuilder("OPTIONS, GET, POST, HEAD"); + + if (!readOnly) { + methodsAllowed.append(", DELETE"); + if (!resource.isDirectory()) { + methodsAllowed.append(", PUT"); + } + } + + // Trace - assume disabled unless we can prove otherwise + if (req instanceof RequestFacade && ((RequestFacade) req).getAllowTrace()) { + methodsAllowed.append(", TRACE"); + } + + methodsAllowed.append(", LOCK, UNLOCK, PROPPATCH, COPY, MOVE"); + + if (listings) { + methodsAllowed.append(", PROPFIND"); + } + + if (!resource.exists()) { + methodsAllowed.append(", MKCOL"); + } + + return methodsAllowed.toString(); + } + + + // -------------------------------------------------- LockInfo Inner Class + + /** + * Holds a lock information. + */ + private static class LockInfo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + LockInfo(int maxDepth) { + this.maxDepth = maxDepth; + } + + + // ------------------------------------------------- Instance Variables + + private final int maxDepth; + + String path = "/"; + String type = "write"; + String scope = "exclusive"; + int depth = 0; + String owner = ""; + List tokens = Collections.synchronizedList(new ArrayList<>()); + long expiresAt = 0; + Date creationDate = new Date(); + + + // ----------------------------------------------------- Public Methods + + /** + * Get a String representation of this lock token. + */ + @Override + public String toString() { + + StringBuilder result = new StringBuilder("Type:"); + result.append(type); + result.append("\nScope:"); + result.append(scope); + result.append("\nDepth:"); + result.append(depth); + result.append("\nOwner:"); + result.append(owner); + result.append("\nExpiration:"); + result.append(FastHttpDateFormat.formatDate(expiresAt)); + for (String token : tokens) { + result.append("\nToken:"); + result.append(token); + } + result.append("\n"); + return result.toString(); + } + + + /** + * @return true if the lock has expired. + */ + public boolean hasExpired() { + return System.currentTimeMillis() > expiresAt; + } + + + /** + * @return true if the lock is exclusive. + */ + public boolean isExclusive() { + return scope.equals("exclusive"); + } + + + /** + * Get an XML representation of this lock token. + * + * @param generatedXML The XML write to which the fragment will be appended + */ + public void toXML(XMLWriter generatedXML) { + + generatedXML.writeElement("D", "activelock", XMLWriter.OPENING); + + generatedXML.writeElement("D", "locktype", XMLWriter.OPENING); + generatedXML.writeElement("D", type, XMLWriter.NO_CONTENT); + generatedXML.writeElement("D", "locktype", XMLWriter.CLOSING); + + generatedXML.writeElement("D", "lockscope", XMLWriter.OPENING); + generatedXML.writeElement("D", scope, XMLWriter.NO_CONTENT); + generatedXML.writeElement("D", "lockscope", XMLWriter.CLOSING); + + generatedXML.writeElement("D", "depth", XMLWriter.OPENING); + if (depth == maxDepth) { + generatedXML.writeText("Infinity"); + } else { + generatedXML.writeText("0"); + } + generatedXML.writeElement("D", "depth", XMLWriter.CLOSING); + + generatedXML.writeElement("D", "owner", XMLWriter.OPENING); + generatedXML.writeText(owner); + generatedXML.writeElement("D", "owner", XMLWriter.CLOSING); + + generatedXML.writeElement("D", "timeout", XMLWriter.OPENING); + long timeout = (expiresAt - System.currentTimeMillis()) / 1000; + generatedXML.writeText("Second-" + timeout); + generatedXML.writeElement("D", "timeout", XMLWriter.CLOSING); + + generatedXML.writeElement("D", "locktoken", XMLWriter.OPENING); + for (String token : tokens) { + generatedXML.writeElement("D", "href", XMLWriter.OPENING); + generatedXML.writeText("opaquelocktoken:" + token); + generatedXML.writeElement("D", "href", XMLWriter.CLOSING); + } + generatedXML.writeElement("D", "locktoken", XMLWriter.CLOSING); + + generatedXML.writeElement("D", "activelock", XMLWriter.CLOSING); + } + } + + + // --------------------------------------------- WebdavResolver Inner Class + /** + * Work around for XML parsers that don't fully respect + * {@link DocumentBuilderFactory#setExpandEntityReferences(boolean)} when called with false. External + * references are filtered out for security reasons. See CVE-2007-5461. + */ + private static class WebdavResolver implements EntityResolver { + private final ServletContext context; + + WebdavResolver(ServletContext theContext) { + context = theContext; + } + + @Override + public InputSource resolveEntity(String publicId, String systemId) { + context.log(sm.getString("webdavservlet.externalEntityIgnored", publicId, systemId)); + return new InputSource(new StringReader("Ignored external entity")); + } + } +} + + +// -------------------------------------------------------- WebdavStatus Class + +/** + * Wraps the HttpServletResponse class to abstract the specific protocol used. To support other protocols we would only + * need to modify this class and the WebDavRetCode classes. + * + * @author Marc Eaddy + */ +class WebdavStatus { + + // ------------------------------------------------------ HTTP Status Codes + + + /** + * Status code (200) indicating the request succeeded normally. + */ + public static final int SC_OK = HttpServletResponse.SC_OK; + + + /** + * Status code (201) indicating the request succeeded and created a new resource on the server. + */ + public static final int SC_CREATED = HttpServletResponse.SC_CREATED; + + + /** + * Status code (202) indicating that a request was accepted for processing, but was not completed. + */ + public static final int SC_ACCEPTED = HttpServletResponse.SC_ACCEPTED; + + + /** + * Status code (204) indicating that the request succeeded but that there was no new information to return. + */ + public static final int SC_NO_CONTENT = HttpServletResponse.SC_NO_CONTENT; + + + /** + * Status code (301) indicating that the resource has permanently moved to a new location, and that future + * references should use a new URI with their requests. + */ + public static final int SC_MOVED_PERMANENTLY = HttpServletResponse.SC_MOVED_PERMANENTLY; + + + /** + * Status code (302) indicating that the resource has temporarily moved to another location, but that future + * references should still use the original URI to access the resource. + */ + public static final int SC_MOVED_TEMPORARILY = HttpServletResponse.SC_MOVED_TEMPORARILY; + + + /** + * Status code (304) indicating that a conditional GET operation found that the resource was available and not + * modified. + */ + public static final int SC_NOT_MODIFIED = HttpServletResponse.SC_NOT_MODIFIED; + + + /** + * Status code (400) indicating the request sent by the client was syntactically incorrect. + */ + public static final int SC_BAD_REQUEST = HttpServletResponse.SC_BAD_REQUEST; + + + /** + * Status code (401) indicating that the request requires HTTP authentication. + */ + public static final int SC_UNAUTHORIZED = HttpServletResponse.SC_UNAUTHORIZED; + + + /** + * Status code (403) indicating the server understood the request but refused to fulfill it. + */ + public static final int SC_FORBIDDEN = HttpServletResponse.SC_FORBIDDEN; + + + /** + * Status code (404) indicating that the requested resource is not available. + */ + public static final int SC_NOT_FOUND = HttpServletResponse.SC_NOT_FOUND; + + + /** + * Status code (500) indicating an error inside the HTTP service which prevented it from fulfilling the request. + */ + public static final int SC_INTERNAL_SERVER_ERROR = HttpServletResponse.SC_INTERNAL_SERVER_ERROR; + + + /** + * Status code (501) indicating the HTTP service does not support the functionality needed to fulfill the request. + */ + public static final int SC_NOT_IMPLEMENTED = HttpServletResponse.SC_NOT_IMPLEMENTED; + + + /** + * Status code (502) indicating that the HTTP server received an invalid response from a server it consulted when + * acting as a proxy or gateway. + */ + public static final int SC_BAD_GATEWAY = HttpServletResponse.SC_BAD_GATEWAY; + + + /** + * Status code (503) indicating that the HTTP service is temporarily overloaded, and unable to handle the request. + */ + public static final int SC_SERVICE_UNAVAILABLE = HttpServletResponse.SC_SERVICE_UNAVAILABLE; + + + /** + * Status code (100) indicating the client may continue with its request. This interim response is used to inform + * the client that the initial part of the request has been received and has not yet been rejected by the server. + */ + public static final int SC_CONTINUE = HttpServletResponse.SC_CONTINUE; + + + /** + * Status code (405) indicating the method specified is not allowed for the resource. + */ + public static final int SC_METHOD_NOT_ALLOWED = HttpServletResponse.SC_METHOD_NOT_ALLOWED; + + + /** + * Status code (409) indicating that the request could not be completed due to a conflict with the current state of + * the resource. + */ + public static final int SC_CONFLICT = HttpServletResponse.SC_CONFLICT; + + + /** + * Status code (412) indicating the precondition given in one or more of the request-header fields evaluated to + * false when it was tested on the server. + */ + public static final int SC_PRECONDITION_FAILED = HttpServletResponse.SC_PRECONDITION_FAILED; + + + /** + * Status code (413) indicating the server is refusing to process a request because the request entity is larger + * than the server is willing or able to process. + */ + public static final int SC_REQUEST_TOO_LONG = HttpServletResponse.SC_REQUEST_ENTITY_TOO_LARGE; + + + /** + * Status code (415) indicating the server is refusing to service the request because the entity of the request is + * in a format not supported by the requested resource for the requested method. + */ + public static final int SC_UNSUPPORTED_MEDIA_TYPE = HttpServletResponse.SC_UNSUPPORTED_MEDIA_TYPE; + + + // -------------------------------------------- Extended WebDav status code + + + /** + * Status code (207) indicating that the response requires providing status for multiple independent operations. + */ + public static final int SC_MULTI_STATUS = 207; + // This one collides with HTTP 1.1 + // "207 Partial Update OK" + + + /** + * Status code (418) indicating the entity body submitted with the PATCH method was not understood by the resource. + */ + public static final int SC_UNPROCESSABLE_ENTITY = 418; + // This one collides with HTTP 1.1 + // "418 Reauthentication Required" + + + /** + * Status code (419) indicating that the resource does not have sufficient space to record the state of the resource + * after the execution of this method. + */ + public static final int SC_INSUFFICIENT_SPACE_ON_RESOURCE = 419; + // This one collides with HTTP 1.1 + // "419 Proxy Reauthentication Required" + + + /** + * Status code (420) indicating the method was not executed on a particular resource within its scope because some + * part of the method's execution failed causing the entire method to be aborted. + */ + public static final int SC_METHOD_FAILURE = 420; + + + /** + * Status code (423) indicating the destination resource of a method is locked, and either the request did not + * contain a valid Lock-Info header, or the Lock-Info header identifies a lock held by another principal. + */ + public static final int SC_LOCKED = 423; +} diff --git a/src/main/java/com/jmal/clouddisk/webdav/resource/FileResourceSet.java b/src/main/java/com/jmal/clouddisk/webdav/resource/FileResourceSet.java new file mode 100644 index 0000000..57e7bf1 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/webdav/resource/FileResourceSet.java @@ -0,0 +1,172 @@ +package com.jmal.clouddisk.webdav.resource; + +import com.jmal.clouddisk.oss.FileInfo; +import com.jmal.clouddisk.oss.OssConfigService; +import com.jmal.clouddisk.util.CaffeineUtil; +import org.apache.catalina.WebResource; +import org.apache.catalina.WebResourceRoot; +import org.apache.catalina.util.ResourceSet; +import org.apache.catalina.webresources.AbstractFileResourceSet; +import org.apache.catalina.webresources.EmptyResource; + +import java.io.File; +import java.io.IOException; +import java.io.InputStream; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.nio.file.StandardCopyOption; +import java.util.Objects; +import java.util.Set; + +/** + * @author jmal + * @Description FileResourceSet + * @date 2023/3/27 11:47 + */ +public class FileResourceSet extends AbstractFileResourceSet { + + + public FileResourceSet(WebResourceRoot root, String base) { + super("/"); + setRoot(root); + setWebAppMount("/"); + setBase(base); + } + + + @Override + public WebResource getResource(String path) { + checkPath(path); + WebResourceRoot root = getRoot(); + File f; + Path prePath = Paths.get(path); + String ossPath = CaffeineUtil.getOssPath(prePath); + if (ossPath != null && prePath.getNameCount() > 2) { + path = path.substring(ossPath.length() + 1); + FileInfo fileInfo = OssConfigService.getOssStorageService(ossPath).getFileInfo(path); + if (fileInfo == null) { + return new EmptyResource(root, path); + } + return new OssFileResource(root, path, fileInfo, isReadOnly(), getManifest(), OssConfigService.getOssStorageService(ossPath)); + } else { + f = file(path, false); + } + if (f == null) { + return new EmptyResource(root, path); + } + if (!f.exists()) { + return new EmptyResource(root, path, f); + } + if (f.isDirectory() && path.charAt(path.length() - 1) != '/') { + path = path + '/'; + } + return new LocalFileResource(root, path, f, isReadOnly(), getManifest()); + } + + @Override + public String[] list(String path) { + checkPath(path); + + File f; + String ossPath = CaffeineUtil.getOssPath(Paths.get(path)); + if (ossPath != null) { + String name = OssConfigService.getObjectName(path, ossPath); + return OssConfigService.getOssStorageService(ossPath).list(name); + } else { + f = file(path, true); + } + + if (f == null) { + return EMPTY_STRING_ARRAY; + } + String[] result = f.list(); + return Objects.requireNonNullElse(result, EMPTY_STRING_ARRAY); + } + + @Override + public Set listWebAppPaths(String path) { + return new ResourceSet<>(); + } + + @Override + public boolean mkdir(String path) { + checkPath(path); + if (isReadOnly()) { + return false; + } + + File f; + String ossPath = CaffeineUtil.getOssPath(Paths.get(path)); + if (ossPath != null) { + String name = OssConfigService.getObjectName(path, ossPath); + return OssConfigService.getOssStorageService(ossPath).mkdir(name); + } else { + f = file(path, false); + } + + if (f == null) { + return false; + } + return f.mkdir(); + } + + @Override + public boolean write(String path, InputStream is, boolean overwrite) { + checkPath(path); + + if (is == null) { + throw new NullPointerException( + sm.getString("dirResourceSet.writeNpe")); + } + + if (isReadOnly()) { + return false; + } + + if (path.endsWith("/")) { + return false; + } + + File dest; + Path prePath = Paths.get(path); + String ossPath = CaffeineUtil.getOssPath(prePath); + if (ossPath != null) { + if (prePath.getNameCount() > 2) { + path = path.substring(ossPath.length() + 1); + } + return OssConfigService.getOssStorageService(ossPath).write(is, ossPath, path); + } else { + dest = file(path, false); + } + + if (dest == null) { + return false; + } + + if (dest.exists() && !overwrite) { + return false; + } + + try { + if (overwrite) { + Files.copy(is, dest.toPath(), StandardCopyOption.REPLACE_EXISTING); + } else { + Files.copy(is, dest.toPath()); + } + } catch (IOException ioe) { + return false; + } + + return true; + } + + @Override + protected void checkType(File file) { + if (!file.isDirectory()) { + throw new IllegalArgumentException(sm.getString("dirResourceSet.notDirectory", + getBase(), File.separator, getInternalPath())); + } + } + +} diff --git a/src/main/java/com/jmal/clouddisk/webdav/resource/LocalFileResource.java b/src/main/java/com/jmal/clouddisk/webdav/resource/LocalFileResource.java new file mode 100644 index 0000000..54a8343 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/webdav/resource/LocalFileResource.java @@ -0,0 +1,273 @@ +package com.jmal.clouddisk.webdav.resource; + +import org.apache.catalina.WebResourceRoot; +import org.apache.catalina.webresources.AbstractResource; +import org.apache.juli.logging.Log; +import org.apache.juli.logging.LogFactory; + +import java.io.*; +import java.net.MalformedURLException; +import java.net.URL; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.attribute.BasicFileAttributes; +import java.security.cert.Certificate; +import java.util.jar.Manifest; + +public class LocalFileResource extends AbstractResource { + + private static final Log log = LogFactory.getLog(LocalFileResource.class); + + private static final boolean PROPERTIES_NEED_CONVERT; + static { + boolean isEBCDIC = false; + try { + String encoding = System.getProperty("file.encoding"); + if (encoding.contains("EBCDIC")) { + isEBCDIC = true; + } + } catch (SecurityException e) { + // Ignore + } + PROPERTIES_NEED_CONVERT = isEBCDIC; + } + + + private final File resource; + private final String name; + private final boolean readOnly; + private final Manifest manifest; + private final boolean needConvert; + + public LocalFileResource(WebResourceRoot root, String webAppPath, + File resource, boolean readOnly, Manifest manifest) { + super(root,webAppPath); + this.resource = resource; + + if (webAppPath.charAt(webAppPath.length() - 1) == '/') { + String realName = resource.getName() + '/'; + if (webAppPath.endsWith(realName)) { + name = resource.getName(); + } else { + // This is the root directory of a mounted ResourceSet + // Need to return the mounted name, not the real name + int endOfName = webAppPath.length() - 1; + name = webAppPath.substring( + webAppPath.lastIndexOf('/', endOfName - 1) + 1, + endOfName); + } + } else { + // Must be a file + name = resource.getName(); + } + + this.readOnly = readOnly; + this.manifest = manifest; + this.needConvert = PROPERTIES_NEED_CONVERT && name.endsWith(".properties"); + } + + @Override + public long getLastModified() { + return resource.lastModified(); + } + + @Override + public boolean exists() { + return resource.exists(); + } + + @Override + public boolean isVirtual() { + return false; + } + + @Override + public boolean isDirectory() { + return resource.isDirectory(); + } + + @Override + public boolean isFile() { + return resource.isFile(); + } + + @Override + public boolean delete() { + if (readOnly) { + return false; + } + return resource.delete(); + } + + @Override + public String getName() { + return name; + } + + @Override + public long getContentLength() { + return getContentLengthInternal(needConvert); + } + + private long getContentLengthInternal(boolean convert) { + if (convert) { + byte[] content = getContent(); + if (content == null) { + return -1; + } else { + return content.length; + } + } + + if (isDirectory()) { + return -1; + } + + return resource.length(); + } + + @Override + public String getCanonicalPath() { + try { + return resource.getCanonicalPath(); + } catch (IOException ioe) { + if (log.isDebugEnabled()) { + log.debug(sm.getString("fileResource.getCanonicalPathFail", + resource.getPath()), ioe); + } + return null; + } + } + + @Override + public boolean canRead() { + return resource.canRead(); + } + + @Override + protected InputStream doGetInputStream() { + if (needConvert) { + byte[] content = getContent(); + if (content == null) { + return null; + } else { + return new ByteArrayInputStream(content); + } + } + try { + return new FileInputStream(resource); + } catch (FileNotFoundException fnfe) { + // Race condition (file has been deleted) - not an error + return null; + } + } + + @Override + public final byte[] getContent() { + // Use internal version to avoid loop when needConvert is true + long len = getContentLengthInternal(false); + + if (len > Integer.MAX_VALUE) { + // Can't create an array that big + throw new ArrayIndexOutOfBoundsException(sm.getString( + "abstractResource.getContentTooLarge", getWebappPath(), + Long.valueOf(len))); + } + + if (len < 0) { + // Content is not applicable here (e.g. is a directory) + return null; + } + + int size = (int) len; + byte[] result = new byte[size]; + + int pos = 0; + try (InputStream is = new FileInputStream(resource)) { + while (pos < size) { + int n = is.read(result, pos, size - pos); + if (n < 0) { + break; + } + pos += n; + } + } catch (IOException ioe) { + if (getLog().isDebugEnabled()) { + getLog().debug(sm.getString("abstractResource.getContentFail", + getWebappPath()), ioe); + } + + } + + if (needConvert) { + // Workaround for certain files on platforms that use + // EBCDIC encoding, when they are read through FileInputStream. + // See commit message of rev.303915 for original details + // https://svn.apache.org/viewvc?view=revision&revision=303915 + String str = new String(result); + try { + result = str.getBytes(StandardCharsets.UTF_8); + } catch (Exception e) { + result = null; + } + } + return result; + } + + + @Override + public long getCreation() { + try { + BasicFileAttributes attrs = Files.readAttributes(resource.toPath(), + BasicFileAttributes.class); + return attrs.creationTime().toMillis(); + } catch (IOException e) { + if (log.isDebugEnabled()) { + log.debug(sm.getString("fileResource.getCreationFail", + resource.getPath()), e); + } + return 0; + } + } + + @Override + public URL getURL() { + if (resource.exists()) { + try { + return resource.toURI().toURL(); + } catch (MalformedURLException e) { + if (log.isDebugEnabled()) { + log.debug(sm.getString("fileResource.getUrlFail", + resource.getPath()), e); + } + return null; + } + } else { + return null; + } + } + + @Override + public URL getCodeBase() { + if (getWebappPath().startsWith("/WEB-INF/classes/") && name.endsWith(".class")) { + return getWebResourceRoot().getResource("/WEB-INF/classes/").getURL(); + } else { + return getURL(); + } + } + + @Override + public Certificate[] getCertificates() { + return null; + } + + @Override + public Manifest getManifest() { + return manifest; + } + + @Override + protected Log getLog() { + return log; + } +} diff --git a/src/main/java/com/jmal/clouddisk/webdav/resource/OssFileResource.java b/src/main/java/com/jmal/clouddisk/webdav/resource/OssFileResource.java new file mode 100644 index 0000000..986a465 --- /dev/null +++ b/src/main/java/com/jmal/clouddisk/webdav/resource/OssFileResource.java @@ -0,0 +1,279 @@ +package com.jmal.clouddisk.webdav.resource; + +import com.jmal.clouddisk.oss.AbstractOssObject; +import com.jmal.clouddisk.oss.FileInfo; +import com.jmal.clouddisk.oss.IOssService; +import com.jmal.clouddisk.oss.OssInputStream; +import org.apache.catalina.WebResourceRoot; +import org.apache.catalina.webresources.AbstractResource; +import org.apache.juli.logging.Log; +import org.apache.juli.logging.LogFactory; + +import java.io.ByteArrayInputStream; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.io.InputStream; +import java.net.MalformedURLException; +import java.net.URL; +import java.nio.charset.StandardCharsets; +import java.security.cert.Certificate; +import java.util.jar.Manifest; +import java.util.zip.CheckedInputStream; + +public class OssFileResource extends AbstractResource { + + private static final Log log = LogFactory.getLog(OssFileResource.class); + + private static final boolean PROPERTIES_NEED_CONVERT; + static { + boolean isEBCDIC = false; + try { + String encoding = System.getProperty("file.encoding"); + if (encoding.contains("EBCDIC")) { + isEBCDIC = true; + } + } catch (SecurityException e) { + // Ignore + } + PROPERTIES_NEED_CONVERT = isEBCDIC; + } + + + private final FileInfo resource; + private final String name; + private final boolean readOnly; + private final Manifest manifest; + private final boolean needConvert; + + private final IOssService ossStorageService; + + public OssFileResource(WebResourceRoot root, String webAppPath, FileInfo resource, boolean readOnly, Manifest manifest, IOssService ossStorageService) { + super(root,webAppPath); + this.ossStorageService = ossStorageService; + this.resource = resource; + if (webAppPath.charAt(webAppPath.length() - 1) == '/') { + String realName = resource.getName() + '/'; + if (webAppPath.endsWith(realName)) { + name = resource.getName(); + } else { + // This is the root directory of a mounted ResourceSet + // Need to return the mounted name, not the real name + int endOfName = webAppPath.length() - 1; + name = webAppPath.substring( + webAppPath.lastIndexOf('/', endOfName - 1) + 1, + endOfName); + } + } else { + // Must be a file + name = resource.getName(); + } + + this.readOnly = readOnly; + this.manifest = manifest; + this.needConvert = PROPERTIES_NEED_CONVERT && name.endsWith(".properties"); + } + + @Override + public long getLastModified() { + if (resource.getLastModified() != null) { + return resource.getLastModified().getTime(); + } + return 0; + } + + @Override + public boolean exists() { + return true; + } + + @Override + public boolean isVirtual() { + return true; + } + + @Override + public boolean isDirectory() { + return resource.getKey().endsWith("/"); + } + + @Override + public boolean isFile() { + return !isDirectory(); + } + + @Override + public boolean delete() { + if (readOnly) { + return false; + } + return ossStorageService.delete(resource.getKey()); + } + + @Override + public String getName() { + return name; + } + + @Override + public long getContentLength() { + return getContentLengthInternal(needConvert); + } + + private long getContentLengthInternal(boolean convert) { + if (convert) { + byte[] content = getContent(); + if (content == null) { + return -1; + } else { + return content.length; + } + } + + if (isDirectory()) { + return -1; + } + return resource.getSize(); + } + + @Override + public String getCanonicalPath() { + return ""; + } + + @Override + public boolean canRead() { + return true; + } + + @Override + protected InputStream doGetInputStream() { + if (needConvert) { + byte[] content = getContent(); + if (content == null) { + return null; + } else { + return new ByteArrayInputStream(content); + } + } + AbstractOssObject object = this.ossStorageService.getObjectCache(resource.getKey()); + if (object == null) { + return null; + } + InputStream inputStream; + try { + inputStream = object.getInputStream(); + } catch (FileNotFoundException e) { + return null; + } + OssInputStream ossInputStream; + if (inputStream instanceof CheckedInputStream checkedInputStream) { + ossInputStream = new OssInputStream(inputStream, checkedInputStream.getChecksum()); + ossInputStream.setAbstractOssObject(object); + } else { + return inputStream; + } + return ossInputStream; + } + + @Override + public final byte[] getContent() { + // Use internal version to avoid loop when needConvert is true + long len = getContentLengthInternal(false); + + if (len > Integer.MAX_VALUE) { + // Can't create an array that big + throw new ArrayIndexOutOfBoundsException(sm.getString( + "abstractResource.getContentTooLarge", getWebappPath(), + Long.valueOf(len))); + } + + if (len < 0) { + // Content is not applicable here (e.g. is a directory) + return null; + } + + int size = (int) len; + byte[] result = new byte[size]; + + int pos = 0; + try (AbstractOssObject object = this.ossStorageService.getObjectCache(resource.getKey())) { + if (object == null) { + return null; + } + InputStream is = object.getInputStream(); + while (pos < size) { + int n = is.read(result, pos, size - pos); + if (n < 0) { + break; + } + pos += n; + } + } catch (IOException ioe) { + if (getLog().isDebugEnabled()) { + getLog().debug(sm.getString("abstractResource.getContentFail", + getWebappPath()), ioe); + } + + } + + if (needConvert) { + // Workaround for certain files on platforms that use + // EBCDIC encoding, when they are read through FileInputStream. + // See commit message of rev.303915 for original details + // https://svn.apache.org/viewvc?view=revision&revision=303915 + String str = new String(result); + try { + result = str.getBytes(StandardCharsets.UTF_8); + } catch (Exception e) { + result = null; + } + } + return result; + } + + + @Override + public long getCreation() { + return getLastModified(); + } + + @Override + public URL getURL() { + try { + return new URL(resource.getKey()); + } catch (MalformedURLException e) { + if (log.isDebugEnabled()) { + log.debug(sm.getString("fileResource.getUrlFail", resource.getKey()), e); + } + return null; + } + } + + @Override + public URL getCodeBase() { + if (getWebappPath().startsWith("/WEB-INF/classes/") && name.endsWith(".class")) { + return getWebResourceRoot().getResource("/WEB-INF/classes/").getURL(); + } else { + return getURL(); + } + } + + @Override + public Certificate[] getCertificates() { + return null; + } + + @Override + public Manifest getManifest() { + return manifest; + } + + @Override + protected Log getLog() { + return log; + } + + public FileInfo getFileInfo() { + return resource; + } +} diff --git a/src/main/resources/META-INF/additional-spring-configuration-metadata.json b/src/main/resources/META-INF/additional-spring-configuration-metadata.json new file mode 100644 index 0000000..2767535 --- /dev/null +++ b/src/main/resources/META-INF/additional-spring-configuration-metadata.json @@ -0,0 +1,8 @@ +{ + "properties": [ + { + "name": "version", + "type": "java.lang.String", + "description": "Edition number." + } +] } diff --git a/src/main/resources/application-prod.yml b/src/main/resources/application-prod.yml new file mode 100644 index 0000000..f7861da --- /dev/null +++ b/src/main/resources/application-prod.yml @@ -0,0 +1,18 @@ +spring: + thymeleaf: # thymeleaf配置,开发环境不启用缓存,正式环境下请启用缓存,提高性能 + cache: true + mode: HTML # thymeleaf对html元素格式要求严格,设置它的mode为HTML,忘记结束标签后不会报错 + data: + mongodb: + uri: mongodb://localhost:27017/jmalcloud + web: + resources: + chain: + cache: true + cache: + cachecontrol: + max-age: 604800 +# 日志级别,生产环境改为warn +logging: + level: + root: warn diff --git a/src/main/resources/application-test.yml b/src/main/resources/application-test.yml new file mode 100644 index 0000000..8ce3fa7 --- /dev/null +++ b/src/main/resources/application-test.yml @@ -0,0 +1,18 @@ +spring: + thymeleaf: # thymeleaf配置,开发环境不启用缓存,正式环境下请启用缓存,提高性能 + cache: true + mode: HTML # thymeleaf对html元素格式要求严格,设置它的mode为HTML,忘记结束标签后不会报错 + data: + mongodb: + uri: mongodb://localhost:27017/jmalcloud + web: + resources: + chain: + cache: true + cache: + cachecontrol: + max-age: 604800 +# 日志级别,生产环境改为warn +logging: + level: + root: info diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml new file mode 100644 index 0000000..0331901 --- /dev/null +++ b/src/main/resources/application.yml @@ -0,0 +1,50 @@ +server: + port: 8088 + servlet: + encoding: + force: true + charset: UTF-8 + enabled: true + forward-headers-strategy: native + shutdown: immediate + tomcat: + max-part-count: 30 + max-part-header-size: 8KB +version: 2.15.0 +tess4j: + data-path: /Users/jmal/studio/myProject/github/jmal-cloud-server/tess4j/datapath +spring: + application: + name: jmalcloud + main: + allow-circular-references: true + profiles: + active: dev + servlet: + multipart: + max-file-size: 50MB + max-request-size: 100MB + cache: + type: caffeine + caffeine: + spec: initialCapacity=100,maximumSize=500,expireAfterWrite=3600s + messages: + basename: i18n/messages + encoding: UTF-8 +springdoc: + packages-to-scan: com.jmal.clouddisk.controller,com.jmal.clouddisk.oss + api-docs: + path: /public/api-docs + version: openapi_3_0 + swagger-ui: + path: /public/api + doc-expansion: none +logging: + level: + nl: + siegmann: + epublib: off + org: + apache: + pdfbox: off + lucene.internal.vectorization.VectorizationProvider: ERROR diff --git a/src/main/resources/banner.txt b/src/main/resources/banner.txt new file mode 100644 index 0000000..15237e7 --- /dev/null +++ b/src/main/resources/banner.txt @@ -0,0 +1,10 @@ + __ .___ ___. ___ __ ______ __ ______ __ __ _______ + | | | \/ | / \ | | / || | / __ \ | | | | | \ + | | | \ / | / ^ \ | | | ,----'| | | | | | | | | | | .--. | +.--. | | | |\/| | / /_\ \ | | | | | | | | | | | | | | | | | | +| `--' | | | | | / _____ \ | `----.| `----.| `----.| `--' | | `--' | | '--' | + \______/ |__| |__| /__/ \__\ |_______| \______||_______| \______/ \______/ |_______/ + +:: jmalcloud :: (v${version}) +:: Spring Boot :: (v${spring-boot.version}) +:: JDK Version :: (v${java.version}) diff --git a/src/main/resources/db/menu.json b/src/main/resources/db/menu.json new file mode 100644 index 0000000..3f8677c --- /dev/null +++ b/src/main/resources/db/menu.json @@ -0,0 +1,798 @@ +[ + { + "authority": "", + "component": "/home/index", + "createTime": 1610364600225, + "hide": false, + "icon": "ziyuan", + "id": "5ffc36b89a2c787ef115f97a", + "menuType": 0, + "name": "menu.home", + "parentId": "", + "path": "/", + "sortNumber": 0, + "updateTime": 1610530002439 + }, + { + "authority": "", + "component": "/recently/index", + "createTime": 1610364632614, + "hide": false, + "icon": "zuijinyuedu", + "id": "5ffc36d89a2c787ef115f97b", + "menuType": 0, + "name": "menu.recently", + "parentId": "", + "path": "/recently", + "sortNumber": 1, + "updateTime": 1610364699931 + }, + { + "authority": "", + "component": "/favorite/index", + "createTime": 1610364739179, + "hide": false, + "icon": "Favoritestarrate", + "id": "5ffc37439a2c787ef115f97c", + "menuType": 0, + "name": "menu.favorite", + "parentId": "", + "path": "/favorite", + "sortNumber": 2, + "updateTime": 1610364748382 + }, + { + "authority": "", + "component": "/share/index", + "createTime": 1610364772443, + "hide": false, + "icon": "gongxiangzhongxin", + "id": "5ffc37649a2c787ef115f97d", + "menuType": 0, + "name": "menu.share", + "parentId": "", + "path": "/share", + "sortNumber": 3, + "updateTime": 1610364779791 + }, + { + "authority": "", + "component": "/fileType/audio", + "createTime": 1610364811353, + "hide": false, + "icon": "file_music", + "id": "5ffc378b9a2c787ef115f97e", + "menuType": 0, + "name": "menu.audio", + "parentId": "", + "path": "/audio", + "sortNumber": 4, + "updateTime": 1610514622979 + }, + { + "authority": "", + "component": "/fileType/video", + "createTime": 1610364833441, + "hide": false, + "icon": "video", + "id": "5ffc37a19a2c787ef115f97f", + "menuType": 0, + "name": "menu.video", + "parentId": "", + "path": "/video", + "sortNumber": 5, + "updateTime": 1610364850664 + }, + { + "authority": "", + "component": "/fileType/image", + "createTime": 1610364891679, + "hide": false, + "icon": "image", + "id": "5ffc37db9a2c787ef115f980", + "menuType": 0, + "name": "menu.image", + "parentId": "", + "path": "/image", + "sortNumber": 6, + "updateTime": 1610364891679 + }, + { + "authority": "", + "component": "/fileType/document", + "createTime": 1672918491000, + "hide": false, + "icon": "document", + "id": "63b79129a7b6db0f8c1f2ad9", + "menuType": 0, + "name": "menu.document", + "parentId": "", + "path": "/document", + "sortNumber": 7, + "updateTime": 1672918491000 + }, + { + "authority": "", + "component": "/setting/sys/cusomerInfo", + "createTime": 1610292024328, + "hide": false, + "icon": "UserSettings", + "id": "5ffb1b38eb9cf770a889b7ea", + "menuType": 2, + "name": "menu.userinfo", + "parentId": "", + "path": "/setting/user", + "sortNumber": 10, + "updateTime": 1611286507257 + }, + { + "authority": "", + "component": "/setting/sys/cusomerManager", + "createTime": 1610292055818, + "hide": false, + "icon": "huaban", + "id": "5ffb1b57eb9cf770a889b7eb", + "menuType": 2, + "name": "menu.managerUser", + "parentId": "6020dec9cfb7a66f628397a8", + "path": "/setting/manager-users", + "sortNumber": 0, + "updateTime": 1612767350455 + }, + { + "authority": "", + "component": "/setting/sys/roleManager", + "createTime": 1610292064390, + "hide": false, + "icon": "role", + "id": "5ffb1b60eb9cf770a889b7ec", + "menuType": 2, + "name": "menu.managerRole", + "parentId": "6020dec9cfb7a66f628397a8", + "path": "/setting/manager-roles", + "sortNumber": 1, + "updateTime": 1612767355583 + }, + { + "authority": "", + "component": "/setting/sys/menuManager", + "createTime": 1610292072477, + "hide": false, + "icon": "menu", + "id": "5ffb1b68eb9cf770a889b7ed", + "menuType": 2, + "name": "menu.managerMenu", + "parentId": "6020dec9cfb7a66f628397a8", + "path": "/setting/manager-menus", + "sortNumber": 2, + "updateTime": 1612767360124 + }, + { + "authority": "", + "component": "", + "createTime": 1610292079959, + "hide": false, + "icon": "wangzhanguanli", + "id": "5ffb1b6feb9cf770a889b7ee", + "menuType": 2, + "name": "menu.managerWebsite", + "parentId": "", + "path": "/setting/website", + "sortNumber": 14, + "updateTime": 1611286489664 + }, + { + "authority": "", + "component": "/setting/cloudManager", + "createTime": 1610292470916, + "hide": false, + "icon": "yunshezhi", + "id": "5ffb1cf6eb9cf770a889b7f3", + "menuType": 2, + "name": "menu.managerCloud", + "parentId": "", + "path": "/setting/cloudManager", + "sortNumber": 15, + "updateTime": 1611461927137 + }, + { + "authority": "", + "component": "/setting/articles/articlePageManager", + "createTime": 1610416695784, + "hide": false, + "icon": "guanlizhuanjiawenzhang", + "id": "5ffd02373d0a062755a22609", + "menuType": 2, + "name": "menu.articles", + "parentId": "5ffb1b6feb9cf770a889b7ee", + "path": "manager-articles", + "sortNumber": 0, + "updateTime": 1611286486332 + }, + { + "authority": "", + "component": "/setting/articles/alonePageManager", + "createTime": 1610416774105, + "hide": false, + "icon": "yemianshezhi", + "id": "5ffd02863d0a062755a2260a", + "menuType": 2, + "name": "menu.alonePage", + "parentId": "5ffb1b6feb9cf770a889b7ee", + "path": "manager-alone-page", + "sortNumber": 1, + "updateTime": 1611286479626 + }, + { + "authority": "", + "component": "/setting/articles/blogManager", + "createTime": 1610418932069, + "hide": false, + "icon": "pifu", + "id": "5ffd0af43d0a062755a2260b", + "menuType": 2, + "name": "menu.appearance", + "parentId": "5ffb1b6feb9cf770a889b7ee", + "path": "manager-blog", + "sortNumber": 2, + "updateTime": 1611286475810 + }, + { + "authority": "", + "component": "/setting/articles/categoryManager", + "createTime": 1610418976313, + "hide": false, + "icon": "fenlei", + "id": "5ffd0b203d0a062755a2260c", + "menuType": 2, + "name": "menu.categories", + "parentId": "5ffb1b6feb9cf770a889b7ee", + "path": "manager-categories", + "sortNumber": 3, + "updateTime": 1611286471732 + }, + { + "authority": "", + "component": "/setting/articles/tagManager", + "createTime": 1610419018537, + "hide": false, + "icon": "biaoqian", + "id": "5ffd0b4a3d0a062755a2260d", + "menuType": 2, + "name": "menu.tags", + "parentId": "5ffb1b6feb9cf770a889b7ee", + "path": "manager-tags", + "sortNumber": 4, + "updateTime": 1611295831043 + }, + { + "authority": "cloud:file:delete", + "component": "", + "createTime": 1610430677512, + "hide": false, + "icon": "", + "id": "5ffd38d529d8463da1186730", + "menuType": 1, + "name": "menu.deleteFile", + "parentId": "", + "path": "", + "sortNumber": 104, + "updateTime": 1610431902154 + }, + { + "authority": "cloud:file:download", + "component": "", + "createTime": 1610430701819, + "hide": false, + "icon": "", + "id": "5ffd38ed29d8463da1186731", + "menuType": 1, + "name": "menu.downloadFile", + "parentId": "", + "path": "", + "sortNumber": 101, + "updateTime": 1610431856157 + }, + { + "authority": "cloud:file:list", + "component": "", + "createTime": 1610430734893, + "hide": false, + "icon": "", + "id": "5ffd390e29d8463da1186732", + "menuType": 1, + "name": "menu.queryFile", + "parentId": "", + "path": "", + "sortNumber": 102, + "updateTime": 1610431867889 + }, + { + "authority": "cloud:file:update", + "component": "", + "createTime": 1610430758660, + "hide": false, + "icon": "", + "id": "5ffd392629d8463da1186733", + "menuType": 1, + "name": "menu.updateFile", + "parentId": "", + "path": "", + "sortNumber": 103, + "updateTime": 1610431881591 + },{ + "authority": "cloud:file:packageDownload", + "component": "", + "createTime": 1749449364061, + "hide": false, + "icon": "", + "id": "6846798fd910ad3d1894e333", + "menuType": 1, + "name": "menu.packageDownload", + "parentId": "", + "path": "", + "sortNumber": 105, + "updateTime": 1749449364061 +}, + { + "authority": "cloud:file:upload", + "component": "", + "createTime": 1610430800571, + "hide": false, + "icon": "", + "id": "5ffd395029d8463da1186734", + "menuType": 1, + "name": "menu.uploadFile", + "path": "", + "sortNumber": 100, + "updateTime": 1610431850844 + }, + { + "authority": "cloud:set:sync", + "component": "", + "createTime": 1610430824706, + "hide": false, + "icon": "", + "id": "5ffd396829d8463da1186735", + "menuType": 1, + "name": "menu.updateCloudSet", + "parentId": "5ffb1cf6eb9cf770a889b7f3", + "path": "", + "sortNumber": 5, + "updateTime": 1610430969332 + }, + { + "authority": "sys:menu:add", + "component": "", + "createTime": 1610430952818, + "hide": false, + "icon": "", + "id": "5ffd39e829d8463da1186736", + "menuType": 1, + "name": "menu.addMenu", + "parentId": "5ffb1b68eb9cf770a889b7ed", + "path": "", + "sortNumber": 1, + "updateTime": 1610431073069 + }, + { + "authority": "sys:menu:delete", + "component": "", + "createTime": 1610431010695, + "hide": false, + "icon": "", + "id": "5ffd3a2229d8463da1186737", + "menuType": 1, + "name": "menu.deleteMenu", + "parentId": "5ffb1b68eb9cf770a889b7ed", + "path": "", + "sortNumber": 3, + "updateTime": 1610431957425 + }, + { + "authority": "sys:menu:list", + "component": "", + "createTime": 1610431027811, + "hide": false, + "icon": "", + "id": "5ffd3a3329d8463da1186738", + "menuType": 1, + "name": "menu.queryMenu", + "parentId": "5ffb1b68eb9cf770a889b7ed", + "path": "", + "sortNumber": 0, + "updateTime": 1610431950026 + }, + { + "authority": "sys:menu:update", + "component": "", + "createTime": 1610431059151, + "hide": false, + "icon": "", + "id": "5ffd3a5329d8463da1186739", + "menuType": 1, + "name": "menu.updateMenu", + "parentId": "5ffb1b68eb9cf770a889b7ed", + "path": "", + "sortNumber": 2, + "updateTime": 1610431953624 + }, + { + "authority": "sys:role:list", + "component": "", + "createTime": 1610431944896, + "hide": false, + "icon": "", + "id": "5ffd3dc829d8463da118673a", + "menuType": 1, + "name": "menu.queryRole", + "parentId": "5ffb1b60eb9cf770a889b7ec", + "path": "", + "sortNumber": 0, + "updateTime": 1610432072397 + }, + { + "authority": "sys:role:add", + "component": "", + "createTime": 1610432042273, + "hide": false, + "icon": "", + "id": "5ffd3e2a29d8463da118673b", + "menuType": 1, + "name": "menu.addRole", + "parentId": "5ffb1b60eb9cf770a889b7ec", + "path": "", + "sortNumber": 1, + "updateTime": 1610432171490 + }, + { + "authority": "sys:role:update", + "component": "", + "createTime": 1610432107846, + "hide": false, + "icon": "", + "id": "5ffd3e6b29d8463da118673c", + "menuType": 1, + "name": "menu.updateRole", + "parentId": "5ffb1b60eb9cf770a889b7ec", + "path": "", + "sortNumber": 2, + "updateTime": 1610432119077 + }, + { + "authority": "sys:role:delete", + "component": "", + "createTime": 1610432156600, + "hide": false, + "icon": "", + "id": "5ffd3e9c29d8463da118673d", + "menuType": 1, + "name": "menu.deleteRole", + "parentId": "5ffb1b60eb9cf770a889b7ec", + "path": "", + "sortNumber": 0, + "updateTime": 1610432156600 + }, + { + "authority": "sys:user:list", + "component": "", + "createTime": 1610432207286, + "hide": false, + "icon": "", + "id": "5ffd3ecf29d8463da118673e", + "menuType": 1, + "name": "menu.queryUser", + "parentId": "5ffb1b57eb9cf770a889b7eb", + "path": "", + "sortNumber": 0, + "updateTime": 1610432207286 + }, + { + "authority": "sys:user:add", + "component": "", + "createTime": 1610432326557, + "hide": false, + "icon": "", + "id": "5ffd3f4629d8463da118673f", + "menuType": 1, + "name": "menu.addUser", + "parentId": "5ffb1b57eb9cf770a889b7eb", + "path": "", + "sortNumber": 1, + "updateTime": 1610432355570 + }, + { + "authority": "sys:user:update", + "component": "", + "createTime": 1610432351486, + "hide": false, + "icon": "", + "id": "5ffd3f5f29d8463da1186740", + "menuType": 1, + "name": "menu.updateUser", + "parentId": "5ffb1b57eb9cf770a889b7eb", + "path": "", + "sortNumber": 2, + "updateTime": 1610432361255 + }, + { + "authority": "sys:user:delete", + "component": "", + "createTime": 1610432377636, + "hide": false, + "icon": "", + "id": "5ffd3f7929d8463da1186741", + "menuType": 1, + "name": "menu.deleteUser", + "parentId": "5ffb1b57eb9cf770a889b7eb", + "path": "", + "sortNumber": 3, + "updateTime": 1610432385217 + }, + { + "authority": "website:set:list", + "component": "", + "createTime": 1610444784999, + "hide": false, + "icon": "", + "id": "5ffd6ff129d84649e3f02cd7", + "menuType": 1, + "name": "menu.queryWebsiteContent", + "parentId": "5ffb1b6feb9cf770a889b7ee", + "path": "", + "sortNumber": 10, + "updateTime": 1610444863204 + }, + { + "authority": "website:set:add", + "component": "", + "createTime": 1610444840793, + "hide": false, + "icon": "", + "id": "5ffd702829d84649e3f02cd8", + "menuType": 1, + "name": "menu.addWebsiteContent", + "parentId": "5ffb1b6feb9cf770a889b7ee", + "path": "", + "sortNumber": 11, + "updateTime": 1610444840793 + }, + { + "authority": "website:set:update", + "component": "", + "createTime": 1610444889425, + "hide": false, + "icon": "", + "id": "5ffd705929d84649e3f02cd9", + "menuType": 1, + "name": "menu.updateWebsiteContent", + "parentId": "5ffb1b6feb9cf770a889b7ee", + "path": "", + "sortNumber": 12, + "updateTime": 1610444889425 + }, + { + "authority": "website:set:delete", + "component": "", + "createTime": 1610444913592, + "hide": false, + "icon": "", + "id": "5ffd707129d84649e3f02cda", + "menuType": 1, + "name": "menu.deleteWebsiteContent", + "parentId": "5ffb1b6feb9cf770a889b7ee", + "path": "", + "sortNumber": 13, + "updateTime": 1611286458837 + }, + { + "authority": "", + "component": "/setting/website/manager-blog", + "createTime": 1611294509422, + "hide": false, + "icon": "pifu", + "id": "600a672db5a9d881713ea266", + "menuType": 3, + "name": "menu.websiteAppearance", + "parentId": "", + "path": "/setting/website/manager-blog", + "sortNumber": 201, + "updateTime": 1611294962760 + }, + { + "authority": "", + "component": "/setting/user", + "createTime": 1611295055637, + "hide": false, + "icon": "shezhi", + "id": "600a694fb5a9d881713ea267", + "menuType": 4, + "name": "menu.basicSettings", + "parentId": "", + "path": "/setting/user", + "sortNumber": 202, + "updateTime": 1611295082041 + }, + { + "authority": "", + "component": "https://github.com/jamebal/jmal-cloud-view", + "createTime": 1611295675482, + "hide": false, + "icon": "widget-github", + "id": "600a6bbbb5a9d881713ea268", + "menuType": 4, + "name": "github", + "parentId": "", + "path": "https://github.com/jamebal/jmal-cloud-view", + "sortNumber": 203, + "updateTime": 1611295675482 + }, + { + "authority": "", + "component": "http://blog/", + "createTime": 1611296098682, + "hide": false, + "icon": "blogger", + "id": "600a6d62b5a9d881713ea269", + "menuType": 3, + "name": "menu.blog", + "parentId": "", + "path": "http://blog/", + "sortNumber": 200, + "updateTime": 1612864189374 + }, + { + "authority": "", + "component": "/setting/authAPP", + "createTime": 1611461359808, + "hide": false, + "icon": "shouquan", + "id": "600cf2ef194ba43988898423", + "menuType": 2, + "name": "menu.authAPP", + "parentId": "", + "path": "/setting/authAPP", + "sortNumber": 17, + "updateTime": 1717766257111 + }, + { + "authority": "", + "component": "", + "createTime": 1612766921955, + "hide": false, + "icon": "file-conf", + "id": "6020dec9cfb7a66f628397a8", + "menuType": 2, + "name": "menu.managerSystem", + "parentId": "", + "path": "/setting/sys", + "sortNumber": 11, + "updateTime": 1612767490855 + }, + { + "authority": "", + "component": "/setting/sys/logLogin", + "createTime": 1612767471077, + "hide": false, + "icon": "file-log", + "id": "6020e0efcfb7a66f628397f5", + "menuType": 2, + "name": "menu.logLogin", + "parentId": "6020dec9cfb7a66f628397a8", + "path": "/setting/log-login", + "sortNumber": 3, + "updateTime": 1612767741226 + }, + { + "authority": "", + "component": "/setting/sys/logOperation", + "createTime": 1612767589900, + "hide": false, + "icon": "wulianwang-", + "id": "6020e165cfb7a66f62839805", + "menuType": 2, + "name": "menu.logOperation", + "parentId": "6020dec9cfb7a66f628397a8", + "path": "/setting/log-operation", + "sortNumber": 4, + "updateTime": 1612858032483 + }, + { + "authority": "", + "component": "/setting/ossManager", + "createTime": 1680744481455, + "hide": false, + "icon": "file-db", + "id": "642e202195d19c039e02d4ff", + "menuType": 2, + "name": "menu.ossManager", + "parentId": "", + "path": "/setting/ossManager", + "sortNumber": 300, + "updateTime": 1680744481455 + }, + { + "authority": "cloud:oss:get", + "component": "", + "createTime": 1680744550330, + "hide": false, + "icon": "", + "id": "642e206695d19c039e02d502", + "menuType": 1, + "name": "menu.queryOSS", + "parentId": "642e202195d19c039e02d4ff", + "path": "", + "sortNumber": 301, + "updateTime": 1680744564271 + }, + { + "authority": "cloud:oss:put", + "component": "", + "createTime": 1680744584541, + "hide": false, + "icon": "", + "id": "642e208895d19c039e02d508", + "menuType": 1, + "name": "menu.updateOSS", + "parentId": "642e202195d19c039e02d4ff", + "path": "", + "sortNumber": 302, + "updateTime": 1680744584541 + }, + { + "authority": "cloud:oss:delete", + "component": "", + "createTime": 1680744601649, + "hide": false, + "icon": "", + "id": "642e209995d19c039e02d50b", + "menuType": 1, + "name": "menu.deleteOSS", + "parentId": "642e202195d19c039e02d4ff", + "path": "", + "sortNumber": 303, + "updateTime": 1680744601649 + }, + { + "authority": "", + "component": "/setting/taskProgress", + "createTime": 1717765938045, + "hide": false, + "icon": "gengxinjindu", + "id": "66630732fc290e06878516f0", + "menuType": 2, + "name": "menu.taskProgress", + "parentId": "", + "path": "/setting/taskProgress", + "sortNumber": 16, + "updateTime": 1717766722975 + }, + { + "authority": "", + "component": "/mount/index", + "createTime": 1744709930702, + "hide": false, + "icon": "guazai", + "id": "67fe292abbce134e261943b0", + "menuType": 0, + "name": "menu.mount", + "parentId": "", + "path": "/mount", + "sortNumber": 8, + "updateTime": 1745820901742 + }, + { + "authority": "", + "component": "/trash/index", + "createTime": 1719912060104, + "hide": false, + "icon": "huishouzhan", + "id": "6683c67cf66d83694bc9fe5c", + "menuType": 0, + "name": "menu.trash", + "parentId": "", + "path": "/trash", + "sortNumber": 9, + "updateTime": 1719912071511 + } +] diff --git a/src/main/resources/db/role.json b/src/main/resources/db/role.json new file mode 100644 index 0000000..b63a133 --- /dev/null +++ b/src/main/resources/db/role.json @@ -0,0 +1,323 @@ +[ + { + "code": "Administrators", + "createTime": 1610419111551, + "id": "5ffd0ba73d0a062755a2260e", + "menuIds": [ + "5ffc36b89a2c787ef115f97a", + "5ffc36d89a2c787ef115f97b", + "5ffc37439a2c787ef115f97c", + "5ffc37649a2c787ef115f97d", + "5ffc378b9a2c787ef115f97e", + "5ffc37a19a2c787ef115f97f", + "5ffc37db9a2c787ef115f980", + "63b79129a7b6db0f8c1f2ad9", + "6683c67cf66d83694bc9fe5c", + "5ffb1b38eb9cf770a889b7ea", + "6020dec9cfb7a66f628397a8", + "5ffb1b57eb9cf770a889b7eb", + "5ffd3ecf29d8463da118673e", + "5ffd3f4629d8463da118673f", + "5ffd3f5f29d8463da1186740", + "5ffd3f7929d8463da1186741", + "5ffb1b60eb9cf770a889b7ec", + "5ffd3dc829d8463da118673a", + "5ffd3e9c29d8463da118673d", + "5ffd3e2a29d8463da118673b", + "5ffd3e6b29d8463da118673c", + "5ffb1b68eb9cf770a889b7ed", + "5ffd3a3329d8463da1186738", + "5ffd39e829d8463da1186736", + "5ffd3a5329d8463da1186739", + "5ffd3a2229d8463da1186737", + "6020e0efcfb7a66f628397f5", + "6020e165cfb7a66f62839805", + "5ffb1b6feb9cf770a889b7ee", + "5ffd02373d0a062755a22609", + "5ffd02863d0a062755a2260a", + "5ffd0af43d0a062755a2260b", + "5ffd0b203d0a062755a2260c", + "5ffd0b4a3d0a062755a2260d", + "5ffd6ff129d84649e3f02cd7", + "5ffd702829d84649e3f02cd8", + "5ffd705929d84649e3f02cd9", + "5ffd707129d84649e3f02cda", + "5ffb1cf6eb9cf770a889b7f3", + "5ffd396829d8463da1186735", + "66630732fc290e06878516f0", + "600cf2ef194ba43988898423", + "5ffd395029d8463da1186734", + "5ffd38ed29d8463da1186731", + "6846798fd910ad3d1894e333", + "5ffd390e29d8463da1186732", + "5ffd392629d8463da1186733", + "5ffd38d529d8463da1186730", + "600a6d62b5a9d881713ea269", + "600a672db5a9d881713ea266", + "600a694fb5a9d881713ea267", + "600a6bbbb5a9d881713ea268", + "642e202195d19c039e02d4ff", + "642e206695d19c039e02d502", + "642e208895d19c039e02d508", + "642e209995d19c039e02d50b" + ], + "name": "role.superAdministrators", + "remarks": "role.superAdministrators", + "updateTime": 1720334128676 + }, + { + "code": "admin", + "createTime": 1610419174778, + "id": "5ffd0be63d0a062755a2260f", + "menuIds": [ + "5ffc36b89a2c787ef115f97a", + "5ffc36d89a2c787ef115f97b", + "5ffc37439a2c787ef115f97c", + "5ffc37649a2c787ef115f97d", + "5ffc378b9a2c787ef115f97e", + "5ffc37a19a2c787ef115f97f", + "5ffc37db9a2c787ef115f980", + "63b79129a7b6db0f8c1f2ad9", + "6683c67cf66d83694bc9fe5c", + "5ffb1b38eb9cf770a889b7ea", + "6020dec9cfb7a66f628397a8", + "5ffb1b57eb9cf770a889b7eb", + "5ffd3ecf29d8463da118673e", + "5ffd3f4629d8463da118673f", + "5ffd3f5f29d8463da1186740", + "5ffd3f7929d8463da1186741", + "5ffb1b6feb9cf770a889b7ee", + "5ffd02373d0a062755a22609", + "5ffd02863d0a062755a2260a", + "5ffd0af43d0a062755a2260b", + "5ffd0b203d0a062755a2260c", + "5ffd0b4a3d0a062755a2260d", + "5ffd6ff129d84649e3f02cd7", + "5ffb1cf6eb9cf770a889b7f3", + "600cf2ef194ba43988898423", + "5ffd395029d8463da1186734", + "5ffd38ed29d8463da1186731", + "6846798fd910ad3d1894e333", + "5ffd390e29d8463da1186732", + "5ffd392629d8463da1186733", + "5ffd38d529d8463da1186730", + "600a6d62b5a9d881713ea269", + "600a672db5a9d881713ea266", + "600a694fb5a9d881713ea267", + "600a6bbbb5a9d881713ea268", + "642e202195d19c039e02d4ff", + "642e206695d19c039e02d502", + "642e208895d19c039e02d508", + "642e209995d19c039e02d50b" + ], + "name": "role.administrators", + "remarks": "role.allMenu_readonly", + "updateTime": 1720334138113 + }, + { + "code": "visitor-website", + "createTime": 1611296544198, + "id": "600a6f20b5a9d881713ea26a", + "menuIds": [ + "5ffc36b89a2c787ef115f97a", + "5ffc36d89a2c787ef115f97b", + "5ffc37439a2c787ef115f97c", + "5ffc37649a2c787ef115f97d", + "5ffc378b9a2c787ef115f97e", + "5ffc37a19a2c787ef115f97f", + "5ffc37db9a2c787ef115f980", + "5ffb1b38eb9cf770a889b7ea", + "5ffd3ecf29d8463da118673e", + "5ffd3dc829d8463da118673a", + "5ffd3a3329d8463da1186738", + "5ffd38ed29d8463da1186731", + "6846798fd910ad3d1894e333", + "5ffd390e29d8463da1186732", + "600a694fb5a9d881713ea267" + ], + "name": "role.websiteVisitors", + "remarks": "role.wpi_ro", + "updateTime": 1611300621152 + }, + { + "code": "editor-website", + "createTime": 1611297433979, + "id": "600a7299ea6b0889efa4ef8c", + "menuIds": [ + "5ffc36b89a2c787ef115f97a", + "5ffc36d89a2c787ef115f97b", + "5ffc37439a2c787ef115f97c", + "5ffc37649a2c787ef115f97d", + "5ffc378b9a2c787ef115f97e", + "5ffc37a19a2c787ef115f97f", + "5ffc37db9a2c787ef115f980", + "6683c67cf66d83694bc9fe5c", + "5ffb1b38eb9cf770a889b7ea", + "5ffd3ecf29d8463da118673e", + "5ffd3f5f29d8463da1186740", + "5ffb1b6feb9cf770a889b7ee", + "5ffd02373d0a062755a22609", + "5ffd02863d0a062755a2260a", + "5ffd0af43d0a062755a2260b", + "5ffd0b203d0a062755a2260c", + "5ffd0b4a3d0a062755a2260d", + "5ffd6ff129d84649e3f02cd7", + "5ffd702829d84649e3f02cd8", + "5ffd705929d84649e3f02cd9", + "5ffd707129d84649e3f02cda", + "5ffb1cf6eb9cf770a889b7f3", + "5ffd396829d8463da1186735", + "600cf2ef194ba43988898423", + "5ffd395029d8463da1186734", + "5ffd38ed29d8463da1186731", + "6846798fd910ad3d1894e333", + "5ffd390e29d8463da1186732", + "5ffd392629d8463da1186733", + "5ffd38d529d8463da1186730", + "600a6d62b5a9d881713ea269", + "600a672db5a9d881713ea266", + "600a694fb5a9d881713ea267", + "600a6bbbb5a9d881713ea268" + ], + "name": "role.websiteEditors", + "remarks": "role.asma_w", + "updateTime": 1720334159599 + }, + { + "code": "admin-website", + "createTime": 1611300408994, + "id": "600a7e39ea6b088b81fae2ed", + "menuIds": [ + "5ffc36b89a2c787ef115f97a", + "5ffc36d89a2c787ef115f97b", + "5ffc37439a2c787ef115f97c", + "5ffc37649a2c787ef115f97d", + "5ffc378b9a2c787ef115f97e", + "5ffc37a19a2c787ef115f97f", + "5ffc37db9a2c787ef115f980", + "63b79129a7b6db0f8c1f2ad9", + "6683c67cf66d83694bc9fe5c", + "5ffb1b38eb9cf770a889b7ea", + "5ffd3ecf29d8463da118673e", + "5ffd3dc829d8463da118673a", + "5ffd3a3329d8463da1186738", + "5ffb1b6feb9cf770a889b7ee", + "5ffd02373d0a062755a22609", + "5ffd02863d0a062755a2260a", + "5ffd0af43d0a062755a2260b", + "5ffd0b203d0a062755a2260c", + "5ffd0b4a3d0a062755a2260d", + "5ffd6ff129d84649e3f02cd7", + "5ffd702829d84649e3f02cd8", + "5ffd705929d84649e3f02cd9", + "5ffd707129d84649e3f02cda", + "5ffd38ed29d8463da1186731", + "6846798fd910ad3d1894e333", + "5ffd390e29d8463da1186732", + "600a6d62b5a9d881713ea269", + "600a672db5a9d881713ea266", + "600a694fb5a9d881713ea267" + ], + "name": "role.websiteAdministrators", + "remarks": "role.wam_ro", + "updateTime": 1720334165458 + }, + { + "code": "visitor", + "createTime": 1611300795660, + "id": "600a7fbbea6b088b81fae2ee", + "menuIds": [ + "5ffc36b89a2c787ef115f97a", + "5ffc36d89a2c787ef115f97b", + "5ffc37439a2c787ef115f97c", + "5ffc37649a2c787ef115f97d", + "5ffc378b9a2c787ef115f97e", + "5ffc37a19a2c787ef115f97f", + "5ffc37db9a2c787ef115f980", + "5ffb1b38eb9cf770a889b7ea", + "5ffd3ecf29d8463da118673e", + "5ffd3dc829d8463da118673a", + "5ffd3a3329d8463da1186738", + "5ffd6ff129d84649e3f02cd7", + "5ffd38ed29d8463da1186731", + "6846798fd910ad3d1894e333", + "5ffd390e29d8463da1186732", + "600a694fb5a9d881713ea267" + ], + "name": "role.visitors", + "remarks": "role.pm_ro", + "updateTime": 1611300921005 + }, + { + "code": "admin-sys", + "createTime": 1611301029952, + "id": "600a80a5ea6b088b81fae2ef", + "menuIds": [ + "5ffc36b89a2c787ef115f97a", + "5ffc36d89a2c787ef115f97b", + "5ffc37439a2c787ef115f97c", + "5ffc37649a2c787ef115f97d", + "5ffc378b9a2c787ef115f97e", + "5ffc37a19a2c787ef115f97f", + "5ffc37db9a2c787ef115f980", + "63b79129a7b6db0f8c1f2ad9", + "5ffb1b38eb9cf770a889b7ea", + "6020dec9cfb7a66f628397a8", + "5ffb1b57eb9cf770a889b7eb", + "5ffd3ecf29d8463da118673e", + "5ffd3f4629d8463da118673f", + "5ffd3f5f29d8463da1186740", + "5ffd3f7929d8463da1186741", + "5ffb1b60eb9cf770a889b7ec", + "5ffd3dc829d8463da118673a", + "5ffd3e9c29d8463da118673d", + "5ffd3e2a29d8463da118673b", + "5ffd3e6b29d8463da118673c", + "5ffb1b68eb9cf770a889b7ed", + "5ffd3a3329d8463da1186738", + "5ffd39e829d8463da1186736", + "5ffd3a5329d8463da1186739", + "5ffd3a2229d8463da1186737", + "6020e0efcfb7a66f628397f5", + "6020e165cfb7a66f62839805", + "5ffb1cf6eb9cf770a889b7f3", + "5ffd396829d8463da1186735", + "600cf2ef194ba43988898423", + "600a694fb5a9d881713ea267" + ], + "name": "role.sysAdministrators", + "remarks": "role.sam_w", + "updateTime": 1613719045841 + }, + { + "code": "general", + "createTime": 1611301660764, + "id": "600a831cea6b088b81fae2f0", + "menuIds": [ + "5ffc36b89a2c787ef115f97a", + "5ffc36d89a2c787ef115f97b", + "5ffc37439a2c787ef115f97c", + "5ffc37649a2c787ef115f97d", + "5ffc378b9a2c787ef115f97e", + "5ffc37a19a2c787ef115f97f", + "5ffc37db9a2c787ef115f980", + "63b79129a7b6db0f8c1f2ad9", + "6683c67cf66d83694bc9fe5c", + "5ffb1b38eb9cf770a889b7ea", + "6020dec9cfb7a66f628397a8", + "5ffd3ecf29d8463da118673e", + "5ffd3f5f29d8463da1186740", + "600cf2ef194ba43988898423", + "5ffd395029d8463da1186734", + "5ffd38ed29d8463da1186731", + "6846798fd910ad3d1894e333", + "5ffd390e29d8463da1186732", + "5ffd392629d8463da1186733", + "5ffd38d529d8463da1186730", + "600a694fb5a9d881713ea267" + ], + "name": "role.generalUsers", + "remarks": "role.gju", + "updateTime": 1720334191182 + } +] diff --git a/src/main/resources/file.yml b/src/main/resources/file.yml new file mode 100644 index 0000000..18434d7 --- /dev/null +++ b/src/main/resources/file.yml @@ -0,0 +1,64 @@ +file: + # 文件存储根目录 文件监控目录 + rootDir: /Users/lanmu/temp/filetest/rootpath + # markdown默认存储的位置 + documentDir: /Document/ + # markdown里图片存储的位置 + documentImgDir: /Image/Document/ + # 断点续传的临时文件目录名称 位于rootDir下,文件监控扫描忽略的目录 + chunkFileDir: ugyuvgbhnouvghjbnk + # 视频转码后的缓存目录, 位于 ${chunkFileDir}/${username}/${videoTranscodeCache} + videoTranscodeCache: videoTranscodeCache + # 回收站目录, 位于 ${chunkFileDir}/${username}/${jmalcloudTrashDir} + jmalcloudTrashDir: .jmalcloudTrash + # lucene索引存储目录 + luceneIndexDir: luceneIndex + # 是否开启文件监控, 默认关闭(开启会损耗性能), 开启的好处在于使用webDAV、FTP等修改文件会自动同步, 如果需要用webDAV建议开启 + monitor: true + # 文件监控扫描时间间隔(秒) + timeInterval: 3 + # 文件监控扫描忽略的文件前缀 + monitorIgnoreFilePrefix: ".DS_Store,._" + # FTP server 端口号 + ftpServerPort: 8089 + # 文本类型 + simText: [ drawio, mind, txt, html, htm, xhtml, css, less, sass, scss, js, ts, jsx, tsx, json, xml, csv, tsv, md, markdown, rst, yaml, yml, ini, toml, cfg, conf, log, bat, cmd, sh, bash, zsh, ps1, py, pyw, pyc, pyo, pyd, rb, erb, pl, pm, t, php, phtml, phps, java, jsp, jspx, jsf, jws, jsp, jtpl, scala, kt, kts, groovy, gvy, gy, gsh, swift, c, cc, cpp, cxx, h, hh, hpp, hxx, cs, csx, vb, fs, fsx, fsi, ml, mli, go, rs, rlib, d, asm, s, sql, pgsql, psql, plpgsql, pls, plb, plsql, sqlite, db, dbf, mdb, accdb, cbl, cob, cpy, tcl, tk, lua, hs, erl, hrl, ex, exs, clj, cljs, edn, lisp, lsp, scm, rkt, ss, sml, v, sv, svh, vhd, vhdl, ino, pde, bsv, f, f90, f95, f03, f08, for, f77, f18, vba, vb, bas, cls, frm, frx, tex, latex, ltx, bib, bbl, sty, cls, dtx, ins, rst, rest, org, asciidoc, adoc, asc, pod, pov, mmd, mn, muse, creole, wiki, dokuwiki, vimwiki, haddock, jsdoc, pydoc, rdoc, yard, doxygen, roxygen2, javadoc, xmldoc, html, xhtml, htm, shtm, shtml, mht, mhtml, hdml, tpl, tmpl, vue, ejs, hbs, haml, pug, jade, slim, mustache, handlebars, nunjucks, liquid, jinja2, jinja, jnj, j2, njk, twig, swig, poi, t4, tt, tt2, tpl, eta, ect, coffee, litcoffee, dart, diff, patch, hs, x, xi, xmi, xaml, kml, wsdl, plist, list, nfo, srt, sub, sbv, vtt, bml, mrl, irl, log, changelog, CHANGELOG, license, LICENCE, LICENSE, copying, COPYING, readme, README, todo, TODO, contributing, CONTRIBUTING, authors, AUTHORS, dockerfile, Dockerfile, code-workspace, jsconfig, tsconfig, jshintrc, jscsrc, eslintrc, eslintignore, babelrc, browserconfig, webmanifest, htaccess, gitlab-ci, travis, circleci, jenkinsfile, prettierrc, stylelintrc, lintstagedrc, commitlintrc ] + # 文档类型 + document: [ "pdf", "doc", "docx", "xlsx", "xls", "xl", "md", "ppt", "pptx", "epub" ] + # webDAV协议前缀 + web-dav-prefix: webDAV + # ip2region.xdb path + ip2region-db-path: /Users/lanmu/Desktop/jmal-cloud-server-master/docker/ip2region.xdb + # OcrLiteOnnxModel path + ocr-lite-onnx-model-path: /Users/lanmu/Desktop/jmal-cloud-server-master/docker/models + + # ------------------------------------------------------------------------------------ + # Lucene 精准搜索 (N-Gram Substring Search) 相关环境变量 + # ------------------------------------------------------------------------------------ + # 精准搜索功能通过N-Gram技术实现对文本内容中精确子串的搜索。 + # 注意:启用此功能会显著增加索引构建时的内存消耗和CPU使用, + # 并且索引文件会占用更多磁盘空间。请仅在确实需要此功能,并且系统资源(特别是JVM内存 -Xmx)充足的情况下开启。 + # 如果禁用,将只进行基于分词的模糊搜索。 + # ------------------------------------------------------------------------------------ + # 是否开启精准搜索 + exactSearch: true + # 如果一个文件的实际文本内容长度超过此值,只有前面这部分长度的内容会被用于N-Gram索引,超出部分将不会被精确搜索覆盖(但仍被模糊搜覆盖)。 + # 影响: + # - 更大的值: + # + 优点: 更多文件内容可以被精确子串搜索到。 + # + 缺点: 显著增加索引构建时的内存消耗、CPU时间和磁盘空间。是导致内存溢出(OOM)的主要风险点之一。 + # - 更小的值: + # + 优点: 节省系统资源,降低OOM风险,加快索引速度。 + # + 缺点: 只有文件内容的前面部分可以被精确子串搜索,超出部分无法精确匹配。 + # 配置建议 (与JVM最大堆内存 -Xmx 密切相关): + # - 这是一个非常敏感的参数,需要根据您的服务器内存 (-Xmx) 和数据特性进行仔细测试和调整。 + # - 对于 -Xmx=2G 的环境,建议从非常小的值开始测试,例如 1MB 到 3MB。 + # - 如果 -Xmx 更大 (例如 8G+),可以谨慎尝试更大的值,如 10M 或 15M, + # - **不推荐**设置非常大的值 (如50MB以上),除非您有极大的内存和特定的需求,并已充分验证。 + # 默认值: "5" + ngramMaxContentLengthMB: 5 + ngramMinSize: 2 + ngramMaxSize: 6 + encryptionSecretKey: ${ENCRYPTION_SECRET_KEY} + encryptionSalt: ${ENCRYPTION_SALT} + diff --git a/src/main/resources/i18n/messages.properties b/src/main/resources/i18n/messages.properties new file mode 100644 index 0000000..afdc830 --- /dev/null +++ b/src/main/resources/i18n/messages.properties @@ -0,0 +1,77 @@ +login.error=Invalid username or password +login.mfaError=Invalid verification code + +# Menu +menu.home=Home +menu.recently=Recently +menu.favorite=Favorite +menu.share=Share +menu.audio=Audio +menu.video=Video +menu.image=Image +menu.document=Document +menu.userinfo=UserInfo +menu.managerUser=User +menu.managerRole=Role +menu.managerMenu=Menu +menu.managerWebsite=Website +menu.managerCloud=Setting +menu.articles=Articles +menu.alonePage=Alone Page +menu.appearance=Appearance +menu.categories=Categories +menu.tags=Tags +menu.deleteFile=Delete File +menu.downloadFile=Download File +menu.packageDownload=Batch download +menu.queryFile=Query File +menu.updateFile=Update File +menu.uploadFile=Upload File +menu.updateCloudSet=Update jmalCloud Setting +menu.addMenu=Add Menu +menu.deleteMenu=Delete Menu +menu.queryMenu=Query Menu +menu.updateMenu=Update Menu +menu.queryRole=Query Role +menu.addRole=Add Role +menu.updateRole=Update Role +menu.deleteRole=Delete Role +menu.queryUser=Query User +menu.addUser=Add User +menu.updateUser=Update User +menu.deleteUser=Delete User +menu.queryWebsiteContent=Query Website Content +menu.addWebsiteContent=Add Website Content +menu.updateWebsiteContent=Update Website Content +menu.deleteWebsiteContent=Delete Website Content +menu.websiteAppearance=Website Appearance +menu.basicSettings=Settings +menu.blog=Blog +menu.authAPP=Auth Apps +menu.managerSystem=SysAdmin +menu.logLogin=Login Log +menu.logOperation=OpLog +menu.ossManager=S3 +menu.queryOSS=Query OSS +menu.updateOSS=Update OSS +menu.deleteOSS=Delete OSS +menu.taskProgress=Task Prog +menu.trash=回收站 +menu.mount=挂载 + +# Role +role.superAdministrators=Super Administrators +role.administrators=Administrators +role.allMenu_readonly=All Menu (Read-Only) +role.websiteVisitors=Website Visitors +role.wpi_ro=Website Personal Information (Read-Only) +role.websiteEditors=Website Editors +role.asma_w=All site menus are writable +role.websiteAdministrators=Website Administrators +role.wam_ro=Website - All Menus (Read-Only) +role.visitors=Visitors +role.pm_ro=Partial menu (read-only) +role.sysAdministrators=Sys Administrators +role.sam_w=System administration menu writable +role.generalUsers=General Users +role.gju=General jmalcloud user diff --git a/src/main/resources/i18n/messages_en_US.properties b/src/main/resources/i18n/messages_en_US.properties new file mode 100644 index 0000000..6d0dac2 --- /dev/null +++ b/src/main/resources/i18n/messages_en_US.properties @@ -0,0 +1,77 @@ +login.error=Invalid username or password +login.mfaError=Invalid verification code + +# Menu +menu.home=Home +menu.recently=Recently +menu.favorite=Favorite +menu.share=Share +menu.audio=Audio +menu.video=Video +menu.image=Image +menu.document=Document +menu.userinfo=UserInfo +menu.managerUser=User +menu.managerRole=Role +menu.managerMenu=Menu +menu.managerWebsite=Website +menu.managerCloud=Setting +menu.articles=Articles +menu.alonePage=Alone Page +menu.appearance=Appearance +menu.categories=Categories +menu.tags=Tags +menu.deleteFile=Delete File +menu.downloadFile=Download File +menu.packageDownload=Batch download +menu.queryFile=Query File +menu.updateFile=Update File +menu.uploadFile=Upload File +menu.updateCloudSet=Update jmalCloud Setting +menu.addMenu=Add Menu +menu.deleteMenu=Delete Menu +menu.queryMenu=Query Menu +menu.updateMenu=Update Menu +menu.queryRole=Query Role +menu.addRole=Add Role +menu.updateRole=Update Role +menu.deleteRole=Delete Role +menu.queryUser=Query User +menu.addUser=Add User +menu.updateUser=Update User +menu.deleteUser=Delete User +menu.queryWebsiteContent=Query Website Content +menu.addWebsiteContent=Add Website Content +menu.updateWebsiteContent=Update Website Content +menu.deleteWebsiteContent=Delete Website Content +menu.websiteAppearance=Website Appearance +menu.basicSettings=Settings +menu.blog=Blog +menu.authAPP=Auth Apps +menu.managerSystem=SysAdmin +menu.logLogin=Login Log +menu.logOperation=OpLog +menu.ossManager=S3 +menu.queryOSS=Query OSS +menu.updateOSS=Update OSS +menu.deleteOSS=Delete OSS +menu.taskProgress=Task Prog +menu.trash=Recycle Bin +menu.mount=Mount + +# Role +role.superAdministrators=Super Administrators +role.administrators=Administrators +role.allMenu_readonly=All Menu (Read-Only) +role.websiteVisitors=Website Visitors +role.wpi_ro=Website Personal Information (Read-Only) +role.websiteEditors=Website Editors +role.asma_w=All site menus are writable +role.websiteAdministrators=Website Administrators +role.wam_ro=Website - All Menus (Read-Only) +role.visitors=Visitors +role.pm_ro=Partial menu (read-only) +role.sysAdministrators=Sys Administrators +role.sam_w=System administration menu writable +role.generalUsers=General Users +role.gju=General jmalcloud user diff --git a/src/main/resources/i18n/messages_zh_CN.properties b/src/main/resources/i18n/messages_zh_CN.properties new file mode 100644 index 0000000..aaef213 --- /dev/null +++ b/src/main/resources/i18n/messages_zh_CN.properties @@ -0,0 +1,76 @@ +login.error=账号或密码错误 +login.mfaError=验证码错误 + +# 菜单 +menu.home=首页 +menu.recently=最近 +menu.favorite=收藏 +menu.share=分享 +menu.audio=音频 +menu.video=视频 +menu.image=图片 +menu.document=文档 +menu.userinfo=用户信息 +menu.managerUser=用户管理 +menu.managerRole=角色管理 +menu.managerMenu=菜单管理 +menu.managerWebsite=网站管理 +menu.managerCloud=网盘管理 +menu.articles=文章 +menu.alonePage=独立页面 +menu.appearance=外观 +menu.categories=分类 +menu.tags=标签 +menu.deleteFile=删除文件 +menu.downloadFile=下载文件 +menu.packageDownload=文件夹/批量下载 +menu.queryFile=查询文件 +menu.updateFile=更新文件 +menu.uploadFile=上传文件 +menu.updateCloudSet=更新网盘设置 +menu.addMenu=添加菜单 +menu.deleteMenu=删除菜单 +menu.queryMenu=查询菜单 +menu.updateMenu=更新菜单 +menu.queryRole=查询角色 +menu.addRole=添加角色 +menu.updateRole=更新角色 +menu.deleteRole=删除角色 +menu.queryUser=查询用户 +menu.addUser=添加用户 +menu.updateUser=更新用户 +menu.deleteUser=删除用户 +menu.queryWebsiteContent=查询网站内容 +menu.addWebsiteContent=添加网站内容 +menu.updateWebsiteContent=更新网站内容 +menu.deleteWebsiteContent=删除网站内容 +menu.websiteAppearance=网站外观 +menu.basicSettings=基础设置 +menu.blog=博客 +menu.authAPP=授权应用 +menu.managerSystem=系统管理 +menu.logLogin=登录日志 +menu.logOperation=操作日志 +menu.ossManager=OSS 管理 +menu.queryOSS=查询 OSS +menu.updateOSS=更新 OSS +menu.deleteOSS=删除 OSS +menu.taskProgress=任务进度 +menu.mount=挂载 + +# 角色 +role.superAdministrators=超级管理员 +role.administrators=管理员 +role.allMenu_readonly=所有菜单(只读) +role.websiteVisitors=网站访客 +role.wpi_ro=网站个人信息(只读) +role.websiteEditors=网站编辑 +role.asma_w=所有站点菜单可写 +role.websiteAdministrators=网站管理员 +role.wam_ro=网站 - 所有菜单(只读) +role.visitors=访客 +role.pm_ro=部分菜单(只读) +role.sysAdministrators=系统管理员 +role.sam_w=系统管理菜单可写 +role.generalUsers=普通用户 +role.gju=普通网盘用户 diff --git a/src/main/resources/logback.xml b/src/main/resources/logback.xml new file mode 100644 index 0000000..1fcb1f1 --- /dev/null +++ b/src/main/resources/logback.xml @@ -0,0 +1,138 @@ + + + + + + + + + logback + + + + + + + + + + + + + + + + + + + + DEBUG + + + ${CONSOLE_LOG_PATTERN} + + UTF-8 + + + + + + + + + + ${log.path}/log_info.log + + + %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + ${log.path}/info/log-info-%d{yyyy-MM-dd}.%i.log + 100MB + + 15 + + + + INFO + ACCEPT + DENY + + + + + + + + ${log.path}/log_warn.log + + + %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + ${log.path}/warn/log-warn-%d{yyyy-MM-dd}.%i.log + 100MB + + 15 + + + + warn + ACCEPT + DENY + + + + + + + + ${log.path}/log_error.log + + + %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + ${log.path}/error/log-error-%d{yyyy-MM-dd}.%i.log + 100MB + + 15 + + + + ERROR + ACCEPT + DENY + + + + + + + + + + + + + + + diff --git a/src/main/resources/static/articles/css/dark/index-2.15.0.css b/src/main/resources/static/articles/css/dark/index-2.15.0.css new file mode 100644 index 0000000..ac6aa30 --- /dev/null +++ b/src/main/resources/static/articles/css/dark/index-2.15.0.css @@ -0,0 +1,225 @@ +body { + background-color: #181c27; + color: #c4c6c9; +} +.layui-timeline-axis { + background-color: #262e38; +} +body::-webkit-scrollbar-thumb { + background-color: #999; + outline: 2px solid #191d27; + border: 2px solid #191d27; +} +body::-webkit-scrollbar-track-piece { + background-color: #191d27; +} + +body::-webkit-scrollbar-track { background: transparent; } +body::-webkit-scrollbar-thumb { background: linear-gradient(135deg, #3b82f6, #8b5cf6); border-radius: 6px; } +body::-webkit-scrollbar-thumb:hover { background: linear-gradient(135deg, #1d4ed8, #7c3aed); } +body::-webkit-scrollbar-corner { background: transparent; } + +/*article-top*/ +#top { + -webkit-box-shadow: 4px -11px 20px #000; + box-shadow: 4px -11px 20px #000; + background-color: #262e3885; +} +#top .navbar a { + color: #d1d5da; + font-family: 'Mirages Custom', 'Merriweather', 'Open Sans', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft Yahei', 'WenQuanYi Micro Hei', 'Segoe UI Emoji', 'Segoe UI Symbol', Helvetica, Arial, sans-serif; +} + +#top .navbar .container-fluid .side-toolbar-list li a { + background: #262e38; + color: #f0f0f0; +} + +#top .navbar .container-fluid .side-toolbar-list li a:hover { + background: #f0f0f0; + color: #262e38; +} + +.navbar-search-container { + background: #262e38; + color: #f0f0f0; +} +.navbar-search-container .search-form input.search { + color: #f0f0f0; +} + +.dropdown-menu { + background-color: #262e38; + -webkit-box-shadow: 0 0.0625rem 0.3125rem 0.0625rem rgba(0,0,0,0.117); + -moz-box-shadow: 0 0.0625rem 0.3125rem 0.0625rem rgba(0,0,0,0.117); + box-shadow: 0 0.0625rem 0.3125rem 0.0625rem rgba(0,0,0,0.117); +} +.dropdown-item>a:hover { + background-color: #374250; +} +.gradient-bg-rev { + background: #b2fefa !important; + background: -webkit-gradient(linear, left top, right top, from(#0052d4), color-stop(#0ed2f7), to(#b2fefa)) !important; + background: linear-gradient(to right, #0052d4, #0ed2f7, #b2fefa) !important; +} + +.scrollbar { + background-color: #50bcb6; +} +/*sidebar*/ +#sidebar-nav { + background: #181c27; + border-right: 1px solid #181c27; +} +#toggle-nav .nav-button { + background: #FFF; + border: 1px solid #3a3b3e; + color: #cfd4de; +} +#sidebar-nav .menu li a { + color: #d1d2da; +} +#sidebar-nav .menu li a:hover { + background: #333; + color: #efefef; +} +@media (max-width: 767.98px) { + #toggle-nav .nav-button { + background-color: #000000a3; + } +} + +/*article-header*/ +.article-header { + color: #d1d5da; + background-color: #191d27; +} +/*article-body*/ +#preview { + background: #252d38; +} +.white-box { + background: #252d38; +} +.shadow { + -webkit-box-shadow: 0 1px 2px 0 rgba(0,0,0,0.1); + box-shadow: 0 1px 2px 0 rgba(0,0,0,0.1); +} +.shadow:hover { + -webkit-box-shadow: 1px 1px 7px 7px rgba(0,0,0,0.1); + box-shadow: 1px 1px 7px 7px rgba(0,0,0,0.1); +} +.post .meta { + color: #d1d5da; +} +.post .meta#header-meta hr{ + background-color: #616161; +} +.post .meta .title a { + color: #d1d5da; +} +.post .meta .new-meta-box .new-meta-item { + color: #d1d5da; +} +.post .meta .new-meta-box .new-meta-item a, .post .meta .new-meta-box .new-meta-item p { + color: #d1d5da; +} + +.back-top { + -webkit-box-shadow: 0 0 6px rgba(0,0,0,.12); + box-shadow: 0 0 6px rgba(0,0,0,.12); + background-color: #262e3885; +} +.show-content { + -webkit-box-shadow: 0 0 6px rgba(0,0,0,.12); + box-shadow: 0 0 6px rgba(0,0,0,.12); + background-color: #262e3885; +} + +.article-body { + background-color: #252d38; + -webkit-box-shadow: rgba(0,0,0,0.1) 0px 2px 12px 0px; + box-shadow: rgba(0,0,0,0.1) 0px 2px 12px 0px; +} +.vditor-reset { + color: #24292e; +} + + +.slimScrollDiv { + background: rgba(31, 41, 55, 0.6); + backdrop-filter: saturate(150%) blur(10px); + border: 1px solid rgba(255, 255, 255, 0.1); + border-radius: 16px; + box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3), 0 0 15px rgba(59, 130, 246, 0.1); +} + +.toc-content > .toc-header { + color: #f9fafb; + border-bottom: 1px solid #374151; +} + +/* 6. 列表项和激活状态样式 - 暗色版 */ +.right-menu > .titleList li { margin: 0; padding: 0; cursor: pointer; line-height: 34px; text-overflow: ellipsis; white-space: nowrap; overflow: hidden; position: relative; transition: all 0.2s ease; } +.right-menu > .titleList li a { display: block; transition: all 0.2s ease; text-overflow: ellipsis; white-space: nowrap; overflow: hidden; font-size: 0.95rem; color: #9ca3af; padding: 0 20px; text-decoration: none; } +.right-menu > .titleList li a:hover { color: #ffffff; } +.right-menu > .titleList li.active a { color: #ffffff; font-weight: 600; } + +/* 7. 滚动条美化 - 暗色版 */ +.right-menu > .titleList::-webkit-scrollbar { width: 8px; height: 8px; } +.right-menu > .titleList::-webkit-scrollbar-track { background: transparent; } +.right-menu > .titleList::-webkit-scrollbar-thumb { background: linear-gradient(135deg, #3b82f6, #8b5cf6); border-radius: 4px; border: 2px solid #1b2332; } +.right-menu > .titleList::-webkit-scrollbar-thumb:hover { background: linear-gradient(135deg, #1d4ed8, #7c3aed); } +.right-menu > .titleList::-webkit-scrollbar-corner { background: transparent; } + +.shadow { + -webkit-box-shadow: 0 0 3px 1px rgba(0,0,0,0.1); + box-shadow: 0 0 3px 1px rgba(0,0,0,0.1); +} +.layui-timeline-title { + color: #d1d2da !important; +} +.archives a { + color: #d1d2da !important; +} +.archives a:hover { + color: #d1d2da; + background: #364151; +} +.archives .time { + color: #d1d2da; + padding-right: .625rem; +} +/*article-footer*/ + +.layui-laypage a, .layui-laypage span { + border: 1px solid #181d27; + background-color: #252d38; + color: #d1d2da; +} +/*article-tail*/ +.article-tail .meta-item .flex-text a:hover { + background-color: #191d27; +} +/*markdown*/ +.article-body .note-update-date { + border-color: #757575; + background: -webkit-gradient(linear, left top, right top, from(#484848), to(#8c8c8c)); + background: linear-gradient(to right, #484848, #8c8c8c); +} +.article-body blockquote { + color: #656565; + background-color: rgba(119,119,119,0.05); + border-left: .2em solid #0052d4 !important; +} +#wrap-mask { + background-color: #262e3885; +} + +#wrap-mask > .boxLoading:before { + background: #000; +} + +#wrap-mask > .boxLoading:after { + background: #2196F3; +} diff --git a/src/main/resources/static/articles/css/independent.css b/src/main/resources/static/articles/css/independent.css new file mode 100644 index 0000000..bd964d7 --- /dev/null +++ b/src/main/resources/static/articles/css/independent.css @@ -0,0 +1,4 @@ +#main_body { + width: 100%; + overflow: hidden; +} \ No newline at end of file diff --git a/src/main/resources/static/articles/css/light/index-2.15.0.css b/src/main/resources/static/articles/css/light/index-2.15.0.css new file mode 100644 index 0000000..daedea1 --- /dev/null +++ b/src/main/resources/static/articles/css/light/index-2.15.0.css @@ -0,0 +1,1344 @@ +body { + overflow-x: hidden; +} +* { + -webkit-box-sizing: border-box; + box-sizing: border-box; + outline: 0; + margin: 0; + padding: 0; +} +ol, ul, dl { + margin-top: 0; + margin-bottom: 1em; +} +ol, ul { + margin: 0; + padding: 0; + list-style: none; +} +ol, ul { + padding-left: 0; +} +*, *:before, *:after { + -webkit-box-sizing: inherit; + box-sizing: inherit; +} +*, *::before, *::after { + -webkit-box-sizing: border-box; + box-sizing: border-box; +} + +a { + color: #1890ff; + text-decoration: none; + background-color: transparent; + outline: none; + cursor: pointer; + -webkit-transition: color 0.3s; + transition: color 0.3s; + -webkit-text-decoration-skip: objects; +} +a, a:focus, a:hover { + cursor: pointer; + color: inherit; + text-decoration: none; +} +.blog-description.font-mono .meta-item-tag { + margin-top: 5px; +} +.blog-description.font-mono a:hover { + color: #69b4f9; +} +.blog-description.font-mono .edit a { + color: #1890ff; +} +hr { + height: 1px; + border: 0; + clear: both; +} +li { + list-style: none; +} + +.icon { + width: 1em; height: 1em; + vertical-align: -0.15em; + fill: currentColor; + overflow: hidden; +} + +body { + height: 100%; + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + text-rendering: optimizeLegibility; + font-family: Helvetica Neue, Helvetica, PingFang SC, Hiragino Sans GB, Microsoft YaHei, Arial, sans-serif; +} +xmp { + font-family: unset; +} + +body::-webkit-scrollbar { + /*滚动条整体样式*/ + width: 12px; + height: 12px; +} +body::-webkit-scrollbar-thumb { + /*滚动条里面小方块*/ + height: 30px; + background-color: #c0c0c0; + -webkit-border-radius: 7px; + outline: 2px solid #fff; + outline-offset: -2px; + border: 2px solid #fff; +} +body::-webkit-scrollbar-track-piece { + background-color: #fff; + -webkit-border-radius: 6px; +} + +html { + font-size: 1rem!important; + height: 100%; + box-sizing: border-box; +} +/*article-top*/ +#top { + padding: .75rem 1rem; + line-height: 2; + text-align: center; + width: 100%; + position: fixed; + top: 0; + z-index: 891; + -webkit-transition: all 450ms ease-in-out; + transition: all 450ms ease-in-out; + -webkit-box-shadow: 4px -11px 20px #000; + box-shadow: 4px -11px 20px #000; + -webkit-backdrop-filter: saturate(180%) blur(20px); + backdrop-filter: saturate(180%) blur(20px); + background-color: #ffffff85; + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + -webkit-transform-style: preserve-3d; + transform-style: preserve-3d; +} +#top .navbar { + display: -webkit-box; + display: -ms-flexbox; + display: flex; +} +#top .navbar .container-fluid { + display: -ms-flexbox; + display: -webkit-box; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -ms-flex-align: center; + -webkit-box-align: center; + align-items: center; + -ms-flex-pack: justify; + -webkit-box-pack: justify; + justify-content: space-between; + width: 100%; + padding-right: 1rem; + padding-left: 1rem; + margin-right: auto; + margin-left: auto; +} +#top .navbar .container-fluid .navbar-collapse { + display: -webkit-box !important; + display: -ms-flexbox !important; + display: flex !important; + -ms-flex-preferred-size: auto; + flex-basis: auto; + -ms-flex-positive: 1; + -webkit-box-flex: 1; + flex-grow: 1; + -ms-flex-align: center; + -webkit-box-align: center; + align-items: center; + line-height: 2; +} +#top .navbar .container-fluid .navbar-nav { + font-size: 1.1rem; + display: -ms-flexbox; + display: -webkit-box !important; + display: flex !important; + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-direction: row; + flex-direction: row; + padding-left: 0; + margin-bottom: 0; + list-style: none; + -ms-flex-wrap: wrap; + flex-wrap: wrap; +} +#top .navbar .container-fluid .navbar-nav .nav-item { + margin: 0 10px; +} +#top .navbar .container-fluid .mr-auto { + margin-right: auto !important; +} +#top .navbar .navbar-brand.text-brand { + padding-top: 0.3125rem; + padding-bottom: 0.3125rem; +} +#top .navbar .navbar-brand { + display: inline-block; + padding: 0; + margin-right: 1rem; + font-size: 1.25rem; + font-weight: 700; + line-height: 1.5; + white-space: nowrap; + max-width: 180px; + overflow: hidden; + text-overflow: ellipsis; +} +#top .navbar a { + color: #000000e6; + font-family: 'Mirages Custom', 'Merriweather', 'Open Sans', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft Yahei', 'WenQuanYi Micro Hei', 'Segoe UI Emoji', 'Segoe UI Symbol', Helvetica, Arial, sans-serif; +} + +.nav-link-label { + margin-left: 0.25rem; +} + +#top .navbar .container-fluid .side-toolbar-list { + text-align: center; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; +} +.side-toolbar-list li { + position: relative; + display: inline-block; + margin: 0 .25rem; +} + +#top .navbar .container-fluid .side-toolbar-list li a { + display: inline-block; + height: 2.75rem; + width: 2.75rem; + line-height: 2.75rem; + border-radius: 100%; + font-size: 1rem; + background: #f0f0f0; + color: #262e38; + vertical-align: middle; + -webkit-transition: 0.3s ease all; + transition: 0.3s ease all; +} + +#top .navbar .container-fluid .side-toolbar-list li a:hover { + background: #262e38; + color: #f0f0f0; +} +.navbar-search-container { + display: inline-block; + height: 2.75rem; + width: 2.75rem; + border-radius: 2.75rem; + line-height: 2.55rem; + background: #f0f0f0; + color: #262e38; + vertical-align: middle; + white-space: nowrap; + overflow: hidden; + -webkit-transition: 0.3s ease all; + transition: 0.3s ease all; + text-align: left; +} + +.navbar-nav.side-toolbar-list .navbar-search-container>a { + text-align: center; + vertical-align: top; +} + +.navbar-search-container .search-form { + display: inline-block; +} + +.navbar-search-container .search-form input.search { + height: 2.375rem; + width: 6.5rem; + border: 0; + background-color: transparent; + font-size: 1rem; + overflow: hidden; + line-height: 1.5; + vertical-align: bottom; +} + +.icon-more { + -webkit-transition: all 150ms ease-in-out; + transition: all 150ms ease-in-out; + transform: rotate(90deg); +} +.dropdown-menu { + position: absolute; + z-index: 1000; + display: none; + float: left; + min-width: 10rem; + padding: 0.5rem 0; + line-height: 2; + color: #212529; + text-align: left; + list-style: none; + background-color: #fff; + background-clip: padding-box; + border-radius: 0.25rem; + -webkit-box-shadow: 0 0.0625rem 0.3125rem 0.0625rem rgba(0,0,0,0.117); + -moz-box-shadow: 0 0.0625rem 0.3125rem 0.0625rem rgba(0,0,0,0.117); + box-shadow: 0 0.0625rem 0.3125rem 0.0625rem rgba(0,0,0,0.117); +} + +.dropdown-item>a { + display: block; + width: 100%; + padding: 0.25rem 1.5rem; + clear: both; + color: #191919; + text-align: inherit; + white-space: nowrap; + background-color: transparent; + border: 0; +} +.dropdown-item>a:hover { + color: #16181b; + text-decoration: none; + background-color: #e4effb; +} + +.dropdown-menu.show { + display: block; +} + +.animateOut { + top: -68px!important; +} + +.gradient-bg-rev { + background: #b2fefa !important; + background: -webkit-gradient(linear, left top, right top, from(#0052d4), color-stop(#0ed2f7), to(#b2fefa)) !important; + background: linear-gradient(to right, #0052d4, #0ed2f7, #b2fefa) !important; +} + +.scrollbar { + margin-top: .75rem; + margin-left: -1rem; + position: fixed; + height: 3px; + width: 10px; + background-color: #50bcb6; + -webkit-transition: width 0.5s ease; + transition: width 0.5s ease; + z-index: 11; +} + +/*sidebar*/ +#toggle-nav { + display: none; + top: .625rem; + left: .625rem; + font-size: .75rem; + position: fixed; + z-index: 899; + -webkit-transition: 0.5s ease all; + transition: 0.5s ease all; +} + +#sidebar-nav { + width: 17.5rem; + height: 100%; + position: fixed; + left: -17.5rem; + top: 0; + bottom: 0; + background: #fafafa; + border-right: 1px solid #efefef; + overflow-y: auto; + overflow-x: hidden; + padding-bottom: 6.25rem; + -webkit-overflow-scrolling: touch; + -ms-overflow-style: -ms-autohiding-scrollbar; + -webkit-transition: 0.5s ease all; + transition: 0.5s ease all; +} +#toggle-nav .nav-button { + display: inline-block; + line-height: 1; + white-space: nowrap; + cursor: pointer; + background: #FFF; + border: 1px solid #DCDFE6; + color: #606266; + -webkit-appearance: none; + text-align: center; + -webkit-box-sizing: border-box; + box-sizing: border-box; + outline: 0; + margin: 0; + -webkit-transition: .1s; + transition: .1s; + font-weight: 500; + font-size: 12px; + padding: 9px 15px; + border-radius: 20px; +} +#sidebar-nav .author { + text-align: center; + padding-top: 2.5rem; + padding-bottom: 2.5rem; + min-width: 12.5rem; +} +#sidebar-nav .author img { + border-radius: 7rem; + width: 7rem; + height: 7rem; +} +#sidebar-nav .menu { + margin-top: 1.875rem; +} +#sidebar-nav .menu li a { + color: #333; + padding: 0.375rem 1.75rem; + position: relative; + line-height: 2.25rem; + display: block; + font-size: 1.25rem; + text-align: center; + font-weight: 300; + -webkit-transition: color 0.2s linear; + transition: color 0.2s linear; +} +#sidebar-nav .menu li a:hover { + background: #efefef; + color: #333; +} + +/*article-header*/ +.article-header { + height: 70vh; + min-height: 12.5px; + position: relative; + display: table; + text-align: center; + overflow: hidden; + color: #fff; + background-color: #2e2e2e; + width: calc(100% - -0.0625rem); + -webkit-transition: 1s ease background-color; + transition: 1s ease background-color; +} +.article-header .article-background { + display: block; + width: 100%; + height: 100%; + background-repeat: no-repeat; + background-size: cover; + background-position: center; + position: absolute; + left: 0; + top: 0; + overflow: hidden; + opacity: 1; + -webkit-transition: 1s ease opacity; + transition: 1s ease opacity; +} +.inner { + display: table-cell; + position: relative; + z-index: 10; + width: 100%; + left: -1px; + vertical-align: middle; + max-width: 710px; + margin: 0 auto; + background-color: #00000040; +} +.blog-title { + padding: 0 35px; + font-size: 2.5rem; + line-height: 1.5; + margin-bottom: .75rem; +} +.typed-cursor { + animation: typed 0.7s infinite; + -webkit-animation: typed 0.7s infinite; +} + +@media not all, screen and (-webkit-min-device-pixel-ratio: 1.5), not all, not all { + .blog-description.font-mono { + font-family: Consolas,Menlo,Monaco,"lucida console","Liberation Mono","Courier New","andale mono",monospaceX,monospace,sans-serif; + font-size: 1rem; + } +} + +@keyframes typed { + 50% { + opacity: 0.0; + } +} + +/*article-body*/ +#body { + overflow: hidden; + -webkit-transition: 0.5s ease all; + transition: 0.5s ease all; +} +.article_l_main { + padding: 0 16px 16px; + margin-top: -80px; + z-index: 10; + overflow: auto; + margin-left: auto; + margin-right: auto; +} +.body-wrapper { + position: relative; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + width: 100%; + max-width: 1320px; + margin: 0 auto; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -webkit-box-pack: justify; + -ms-flex-pack: justify; + justify-content: space-between; + -webkit-box-align: stretch; + -ms-flex-align: stretch; + align-items: stretch; +} +.articles_l_main { + width: 100%; + max-width: 860px; + margin-top: -8rem; + z-index: 10; + margin-left: auto; + margin-right: auto; +} +.l_body { + position: relative; + margin: 16px 16px 0 16px; + min-height: calc(100vh - 70vh); + z-index: 11; +} +.post-list { + position: relative; + margin: 16px auto; + -webkit-column-gap: 16px; + -moz-column-gap: 16px; + column-gap: 16px; +} +.post-wrapper { + margin-bottom: 16px; +} +.post-wrapper { + -webkit-column-break-inside: avoid; + break-inside: avoid-column; +} +.post { + position: relative; + margin: 16px auto; + padding: 20px; + border-radius: 12px; +} +.white-box { + background: #fff; +} +.shadow { + transition: all .5s ease; + -moz-transition: all .5s ease; + -webkit-transition: all .5s ease; + -o-transition: all .5s ease; + -webkit-box-shadow: 0px 1px 6px 1px rgba(0,0,0,0.1); + box-shadow: 0px 1px 6px 1px rgba(0,0,0,0.1); +} +.shadow:hover { + -webkit-box-shadow: 1px 1px 7px 7px rgba(0,0,0,0.1); + box-shadow: 1px 1px 7px 7px rgba(0,0,0,0.1); +} +.post-wrapper .post .meta { + margin-bottom: 16px; +} +.post .meta { + color: rgba(68,68,68,0.65); +} +.post .meta#header-meta { + margin-top: 0; + margin-bottom: 16px; +} +.post .meta#header-meta hr{ + background-color: #e6e6e6; +} +.post-wrapper .post .meta .title { + font-size: 1.375rem; +} +.post .meta .title { + transition: all .1s ease; + -moz-transition: all .1s ease; + -webkit-transition: all .1s ease; + -o-transition: all .1s ease; + margin: 0; +} +.post-wrapper .post .meta .title a { + font-size: 1.375rem; +} +.post .meta .title a { + display: inline; + font-weight: 400; + color: #444; + text-decoration: none; +} +.post .meta .new-meta-box, .post .meta .new-meta-box i, .post .meta .new-meta-box p { + font-size: .875rem; +} +.post .meta .new-meta-box { + transition: all .1s ease; + -moz-transition: all .1s ease; + -webkit-transition: all .1s ease; + -o-transition: all .1s ease; + padding-top: 4px; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -ms-flex-wrap: wrap; + flex-wrap: wrap; +} +.not-link { + display: flex; +} +.post .meta .new-meta-box .new-meta-item { + color: rgba(68,68,68,0.65); + line-height: 1.2; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + padding: 2px; + margin: 0 8px 0 0; + border-radius: 4px; +} +.post .meta .new-meta-box .new-meta-item a { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} +.flex-text { + display: flex; +} +.flex-text a { + padding: 0 4px; +} +.post .meta .new-meta-box .new-meta-item a:hover{ + color: #1890ff; +} +.post .meta .new-meta-box .new-meta-item a, .post .meta .new-meta-box .new-meta-item p { + color: rgba(68,68,68,0.65); + padding-left: 0; + padding: 0 4px; +} +.post .meta .new-meta-box .new-meta-item a img { + height: 1.2em; + width: 1.2em; + margin-right: 5px; + -webkit-transform: translateY(-1px); + transform: translateY(-1px); +} +.post .meta .new-meta-box .author i, .post .meta .new-meta-box .author img { + border-radius: 100%; +} +.post .meta .new-meta-box .new-meta-item a p { + margin: 0; + font-weight: 400; + transition: all .28s ease; + -moz-transition: all .28s ease; + -webkit-transition: all .28s ease; + -o-transition: all .28s ease; +} +.post .meta .new-meta-box .new-meta-item .notlink { + cursor: default; +} +.article p { + text-align: justify; + max-width: 100%; + overflow: auto; +} +.post a img { + display: inline; +} +.article div>img, .article p>img { + display: block; + margin: auto; + border-radius: 5px; +} +.article img { + position: relative; + transition: all .5s ease; + -moz-transition: all .5s ease; + -webkit-transition: all .5s ease; + -o-transition: all .5s ease; +} +.article p>img:hover { + transform: scale(1.05); +} +.article p { + border-radius: 5px; + overflow-x:hidden; overflow-y:hidden; +} +.articles-list { + max-height: 22rem; + min-height: 20rem; +} +.articles-list.loading { + filter: blur(15px); +} +.blog-background { + -o-object-fit: cover; + object-fit: cover; + width: 100%; + height: 100%; +} +.lazyload-container.loaded{ + opacity: 1; +} +.lazyload-container.loading{ + opacity: 0; +} +.lazyload-container { + position: absolute; + left: 0; + top: 0; + display: block; + background: #333; + background-repeat: no-repeat; + background-size: cover; + background-position: center; + background-blend-mode: normal; + width: 100%; + height: 100%; + opacity: 0; + overflow: hidden; + -webkit-filter: blur(35px); + -moz-filter: blur(35px); + -o-filter: blur(35px); + filter: blur(35px); + -ms-filter: progid:DXImageTransform.Microsoft.Blur(PixelRadius=35, MakeShadow=false); + -webkit-transition: 1s ease opacity; + -moz-transition: 1s ease opacity; + -ms-transition: 1s ease opacity; + -o-transition: 1s ease opacity; + transition: 1s ease opacity; +} + +.back-top { + bottom: 1rem; + position: fixed; + width: 40px; + height: 40px; + border-radius: 50%; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + font-size: 20px; + -webkit-box-shadow: 0 0 6px rgba(0,0,0,.12); + box-shadow: 0 0 6px rgba(0,0,0,.12); + transition: all .5s ease; + -moz-transition: all .5s ease; + -webkit-transition: all .5s ease; + -o-transition: all .5s ease; + cursor: pointer; + z-index: 105; + backdrop-filter: saturate(180%) blur(20px); + background-color: #ffffff5c; +} +.show-content { + display: none; + right: 1rem; + bottom: 4.5rem; + position: fixed; + width: 40px; + height: 40px; + border-radius: 50%; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + font-size: 20px; + -webkit-box-shadow: 0 0 6px rgba(0,0,0,.12); + box-shadow: 0 0 6px rgba(0,0,0,.12); + transition: all .5s ease; + -moz-transition: all .5s ease; + -webkit-transition: all .5s ease; + -o-transition: all .5s ease; + cursor: pointer; + z-index: 105; + backdrop-filter: saturate(180%) blur(20px); + background-color: #ffffff5c; +} + +.article-body { + min-height: calc(30vh - 40px); + padding: 20px 35px; + border-radius: 0.5rem; + background-color: #ffffff; + -webkit-box-shadow: rgba(0,0,0,0.1) 0px 2px 12px 0px; + box-shadow: rgba(0,0,0,0.1) 0px 2px 12px 0px; +} +.vditor-reset { + color: #24292e; + -webkit-font-variant-ligatures: no-common-ligatures; + font-variant-ligatures: no-common-ligatures; + font-family: "Helvetica Neue","Luxi Sans","DejaVu Sans","Hiragino Sans GB","Microsoft Yahei",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Segoe UI Symbol","Android Emoji","EmojiSymbols"; + word-wrap: break-word; + overflow: auto; + line-height: 1.5; + font-size: 16px; + word-break: break-word; +} + +.affix { + position: fixed!important; + top: 0px; + width: 240px; +} + +#laypage { + text-align: center; +} + +/* 1. 外层布局容器 */ +.right-bj { + width: 285px; + position: sticky; + top: 80px; + align-self: flex-start; + transition: all 0.5s ease; +} + +/* 2. 主视觉容器 -> Flexbox 布局容器 */ +.slimScrollDiv { + overflow: hidden; + display: flex; + flex-direction: column; + margin-top: 67px; + /* 视觉样式 - 亮色版 */ + background: rgba(255, 255, 255, 0.8); /* 半透明白色背景 */ + backdrop-filter: saturate(150%) blur(10px); + border: 1px solid #e5e7eb; /* 浅灰色边框 */ + border-radius: 16px; + box-shadow: 0 8px 16px rgba(0, 0, 0, 0.08); /* 轻柔的阴影 */ + + max-height: calc(100vh - 160px); + width: 100%; + transition: all 0.5s ease; +} + +/* 3. 目录头部 -> 固定不动的 Flex 项目 */ +.toc-content { + flex-shrink: 0; + position: static; + background: transparent; + box-shadow: none; + backdrop-filter: none; +} + +.toc-content > .toc-header { + padding: 16px 20px; + font-size: 1.1rem; + font-weight: 600; + color: #1f2937; /* 深灰色标题 */ + border-bottom: 1px solid #e5e7eb; /* 浅灰色分割线 */ + display: flex; + align-items: center; +} +.toc-content > .toc-header span { margin-left: 10px; } + +/* 4. 目录列表外层容器 -> 占据所有剩余空间的 Flex 项目 */ +.right-menu { + flex: 1; + min-height: 0; + position: relative; + display: flex; +} + +/* 5. 真正的滚动容器 -> .titleList */ +.right-menu > .titleList { + overflow-y: auto; + flex: 1; + padding: 15px 0; + list-style: none; + margin: 0; + position: relative; +} + +/* 6. 列表项和激活状态样式 - 亮色版 */ +.right-menu > .titleList li { margin: 0; padding: 0; cursor: pointer; line-height: 34px; text-overflow: ellipsis; white-space: nowrap; overflow: hidden; position: relative; transition: all 0.2s ease; } +.right-menu > .titleList li a { display: block; transition: all 0.2s ease; text-overflow: ellipsis; white-space: nowrap; overflow: hidden; font-size: 0.95rem; color: #4b5563; /* 中度灰色 */ padding: 0 20px; text-decoration: none; } +.right-menu > .titleList li a:hover { color: #0969da; /* 悬停时为蓝色 */ } +.right-menu > .titleList li.active a { color: #0969da; font-weight: 600; } + +.h-1 a { padding-left: 20px !important; } +.h-2 a { padding-left: 35px !important; } +.h-3 a { padding-left: 50px !important; font-size: 0.9rem; } +.h-4 a { padding-left: 65px !important; font-size: 0.85rem; } +.h-5 a { padding-left: 80px !important; font-size: 0.8rem; } +.h-6 a { padding-left: 95px !important; font-size: 0.8rem; } + +/* 激活状态的指示器 .j-bj */ +.right-menu > .titleList .j-bj { + background: linear-gradient(107deg, #3b82f6, #8b5cf6); + position: absolute; + left: 0; + top: 15px; + width: 4px; + height: 34px; + border-radius: 2px; + z-index: 1; + transition: top 0.3s cubic-bezier(0.4, 0, 0.2, 1); +} + +/* 7. 滚动条美化 - 亮色版 */ +.right-menu > .titleList::-webkit-scrollbar { width: 8px; height: 8px; } +.right-menu > .titleList::-webkit-scrollbar-track { background: transparent; border-radius: 0 16px 16px 0; } +.right-menu > .titleList::-webkit-scrollbar-thumb { background: #cccccc; border-radius: 4px; border: 2px solid #ffffff; } +.right-menu > .titleList::-webkit-scrollbar-thumb:hover { background: #b3b3b3; } +.right-menu > .titleList::-webkit-scrollbar-corner { background: transparent; } + +.archives .layui-timeline { + max-width: 680px; + margin: 0 auto; +} +.archives .brick { + margin-bottom: .625rem; +} +.archives a { + color: #333 !important; + position: relative; + display: block; + padding: .625rem; + font-style: normal; + line-height: 1.125rem; + font-size: 1rem; + border-radius: 0.25rem; + outline: none !important; + text-decoration: none !important; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} +.archives a:hover { + background: #eee; +} +.archives .time { + color: #555; + padding-right: .625rem; +} + +footer { + position: relative; + bottom: 10px; + padding: 10px 10px 10px 10px; + width: 100%; + margin: 0 auto; + overflow: hidden; + text-align: center; + -webkit-transition: 0.5s ease all; + transition: 0.5s ease all; +} + +/*article-footer*/ +#footer p { + font-size: .8125rem; +} + +#footer .copyright { + color: #444444; + margin-top: 16px; + font-size: .75rem; +} +#footer a { + color: rgba(68,68,68,0.65); + padding: 0; + transition: all .28s ease; + -moz-transition: all .28s ease; + -webkit-transition: all .28s ease; + -o-transition: all .28s ease; +} +/*article-tail*/ +.article-tail hr { + height: 1px; +} +.article-tail .meta-item { + display: flex; + margin-right: 10px; +} +.article-tail .meta-item .icon { + height: 1.5rem !important; + width: 1.5rem !important; + margin-right: 5px; + padding-top: 4px; +} +.article-tail .meta-item .flex-text a { + padding: 2px 6px; + position: unset; + color: unset; +} +.article-tail .meta-item .flex-text a:hover { + background-color: #eee; + border-radius: 5px; + color: #4285f4; +} +/*markdown*/ +#article-title{ + white-space: pre-line; + display: none; +} +.article-body .note-update-date { + padding: 0.75rem; + border-left: 0.35rem solid; + border-radius: 0.25rem; + margin: 1.5rem 0; + border-color: #0052d4; + background: -webkit-gradient(linear, left top, right top, from(#5d9eea), to(#afcafd)); + background: linear-gradient(to right, #5d9eea, #afcafd); +} +.article-body blockquote { + padding: 0.5em 1em !important; + color: #656565; + background-color: rgba(119,119,119,0.05); + border-top-right-radius: 5px; + border-bottom-right-radius: 5px; + border-left: .2em solid #0052d4 !important; +} +.article-body a { + color: #1890ff; + position: relative; + white-space: normal; +} +.article-body a:hover:after { + left: 0; + width: 100%; + -webkit-transition: width 350ms; + -moz-transition: width 350ms; + -ms-transition: width 350ms; + -o-transition: width 350ms; + transition: width 350ms; +} +.article-body a:after { + position: absolute; + bottom: -0.0625rem; + left: 100%; + width: 0; + border-bottom: 0.0625rem solid #1890ff; + content: ""; + -webkit-transition: width 350ms,left 350ms; + -moz-transition: width 350ms,left 350ms; + -ms-transition: width 350ms,left 350ms; + -o-transition: width 350ms,left 350ms; + transition: width 350ms,left 350ms; +} +.vditor-reset iframe.iframe__video { + width: 100%; +} +/*mask*/ +#wrap-mask { + position: fixed; + left: 0; + right: 0; + top: 0; + bottom: 0; + overflow: hidden; + width: 100%; + height: 100%; + z-index: 999; + -webkit-backdrop-filter: saturate(180%) blur(20px); + backdrop-filter: saturate(180%) blur(20px); + background-color: #ffffff85; +} + +#wrap-mask > .boxLoading { + width: 50px; + height: 50px; + margin: auto; + position: absolute; + left: 0; + right: 0; + top: 0; + bottom: 0; +} + +#wrap-mask > .boxLoading:before { + content: ''; + width: 50px; + height: 5px; + background: #000; + opacity: 0.1; + position: absolute; + top: 59px; + left: 0; + border-radius: 50%; + animation: shadow .5s linear infinite; +} + +#wrap-mask > .boxLoading:after { + content: ''; + width: 50px; + height: 50px; + background: #2196F3; + animation: animate .5s linear infinite; + position: absolute; + top: 0; + left: 0; + border-radius: 3px; +} + +@keyframes animate { + 17% { + border-bottom-right-radius: 3px; + } + 25% { + transform: translateY(9px) rotate(22.5deg); + } + 50% { + transform: translateY(18px) scale(1, .9) rotate(45deg); + border-bottom-right-radius: 40px; + } + 75% { + transform: translateY(9px) rotate(67.5deg); + } + 100% { + transform: translateY(0) rotate(90deg); + } +} + +@keyframes shadow { + 0%, 100% { + transform: scale(1, 1); + } + 50% { + transform: scale(1.2, 1); + } +} + +@media (min-width: 576px) { + +} + +@media screen and (max-width: 768px) { + .blog-title { + font-size: 1.75rem; + font-weight: 400; + margin-bottom: .5rem; + } + .cover-wrapper .cover .cover-body { + padding-bottom: 68px; + } + .cover-wrapper .cover .cover-body .title { + font-size: 2rem; + font-weight: 400; + } + .article-header .inner { + padding-bottom: 80px; + } + #top { + display: none; + } + #toggle-nav { + display: block; + } + #toggle-nav .nav-button { + -webkit-backdrop-filter: saturate(180%) blur(2px); + backdrop-filter: saturate(180%) blur(2px); + background-color: #ffffffa3; + } + .article_l_main,.articles_l_main { + width: 100%; + padding: 0; + } + .l_body { + margin: 0; + padding: 0 16px; + } + .articles-list { + max-height: 10rem; + min-height: 10rem; + } + .shadow { + -webkit-box-shadow: 0 0 3px 1px rgba(0,0,0,0.1); + box-shadow: 0 0 3px 1px rgba(0,0,0,0.1); + } + .post .meta { + margin-bottom: 16px + } + + .post .meta .title { + font-size: 1.25rem + } + + .right-bj { + /* 只在桌面端应用 sticky 定位 */ + position: sticky; + width: 240px; + top: 80px; + align-self: flex-start; + transition: all 0.5s ease; + /* 确保在桌面端 z-index 不是很高,避免不必要的覆盖 */ + z-index: 10; + } + + .slimScrollDiv { + position: fixed; + right: 0; + top: unset; + bottom: 8rem; + transform: translateX(100%); + z-index: 1000; + } + + /* 当拥有 .is-visible 类时,滑入屏幕内(显示) */ + .slimScrollDiv.is-visible { + transform: translateX(0); + } + + .back-top { + right: 1rem; + } + .back-top:active { + transform: scale(1.3); + } + .show-content { + display: none; + } + .show-content:active { + transform: scale(1.3); + } + .article_l_main { + width: 100% !important; + } + .article-body { + padding: 20px 16px; + } + .article-body .note-update-date { + font-size: 0.9rem; + } +} + +@media (min-width: 768px){ + +} + +@media (min-width: 992px) { + .navbar>.container-fluid { + max-width: 960px; + } +} +@media (min-width: 1210px) { + .navbar>.container-fluid { + max-width: 1170px; + } +} +@media only screen and (min-width: 1440px){ + .right-bj { + width: 240px; + } + .body-wrapper-offset { + left: 120px; + } +} +@media screen and (max-width:768px) and (max-width:500px) { + .post { + padding: 24px 16px + } +} + +@media (min-width: 768px){ + .slimScrollDiv { + width: 240px; + } + .article_l_main[content=show] { + width: calc(100% - 1 * 240px); + min-width: 500px; + } + .body-wrapper { + max-width: 1200px; + } + .back-top:hover { + transform: scale(1.3); + } +} +@media screen and (min-width: 992px){ + .right-bj. { + width: 240px; + } + .slimScrollDiv { + width: 240px; + } +} + +@media only screen and (min-width: 1200px) { + .right-bj { + width: 240px; + } +} + +@media only screen and (min-width: 1240px){ + .article_l_main[content=show] { + width: calc(100% - 1 * 240px); + } +} + +@media screen and (max-width: 1440px) { + .right-bj { + width: 240px; + } + .slimScrollDiv { + width: 240px; + } +} + +@media only screen and (max-width: 1680px) and (min-width: 1440px){ + .body-wrapper { + max-width: 1200px; + } +} + +img.lazy { + opacity: 1; + filter: blur(20px); + transition: opacity 0.5s ease-out, filter 0.5s ease-out; +} + +img:not(.lazy) { + opacity: 1; + filter: none; +} diff --git a/src/main/resources/static/articles/favicon.ico b/src/main/resources/static/articles/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..e21b4f034cff10ea389a3d6e19130d4252cfc7ad GIT binary patch literal 2118 zcmV-M2)XxCNk&FK2mkyoPAzVsT&ZDO1H|o5r&sjUs=%zd`p`#6 zH}>{DtCL;|ykwQ+Wth+&?P({kAP=S9@=EhCLWqy}&lk*2|0kT;YXBvLdU>EPx6!~x zZbyIsZqI?&+|p56$X9O1uJ<%{Yd>Rm@<(@v*#F=GubliIcJR6bkDYmq^Mq@xvf*_-s|((mv1;lKyEwgrkL@|l@CAn% z#lhzujOO`X$G{UYJ^A?-dEcMZSkmQ)1>256Sj045fBuUB#tm{~MJ ztM~>mHTQj;K2(9hS2TKF97g}BPasTRk*UlEm|r(SljP2@@`N5Y3&YZpZ*|CA4vY6| z5LO&k*S=+2Y)4o>E6S#XxlnOVge^&{pyrr+HoRR1RU4m5HY+QvDfAs1l5R@Q!%5J3 z^x3!WrCeW-8>&|tfBa>JQ#tQ`9bW|;tM*-g>Q>~3;wQ-P&gn8 z1pokW9sr#IDu4ih06vX8mq)*&q9HJKT%+(2iE0Ko57k%@AAldA9v~k;2}#!*NRTYDji-(pTBdiR4W%%a5LX>>Hu!I&kuaX4tq#}fsE8|r zG3h(Mqq97o{sXs4iOqIxir@-Y?e?QWQ)Li2_jS{IWG&{kYK0^-%yq28nKv*1{`{>M z64Bk0Fj2l=1Ql=$yt77C_{?a|)wlpoi?xt*EyR5HgdjI?4!y+l`Wi#$`AJWJQR?uF zOT#^rd&7`*)j~nLc5bW2sZn}N)XvOKtsfVU2V9J|{GK1F-M-~71hC9g*^9#kkV^>W zB+`Y))H_YZvf{t~1@&v5IB&6Cri`oPzKs$%Z|i(2Z@aLQ}|iO-$@yUB$%@PjzXCk`Ep4773aaYnlJb-=u1cRvEw-n`|oo&r;y_ae^ELCNq~YeL(^|dGzLzb}G4tXTB!} zSYzRrow|xmQ$O-zYu5JbW^5{TmMwA(#2A^Y$Y(2-!%i&PR!PkQg@GYjh$!MIqTwGc zWSE9cKAuQ}WJ|)>`?7ih9%qz>y=0N>^9~ybw7sF-O09@#p%2a%@RV=)cYQ~Rs>r-kui=Jf*S@2WE}PHh zivK>E9(W^kG_og?Za{LOyIF*&%6%I-6L7SXjKYX>6+Z6n@hsQ0(dg}s(rk#=NVZM( zk`wHe&ey7GcwYA^kk5qKJ10WS>s?^EDR#+jO<4`}Es}B@ts(9!W7pWz@Nc8u&{+cA zEHf0t+Ka%-DE6&7yK>J+N$hN*R2lWM>6|^d`~&9B6N}6eKk91%_MWt+3La8({gpuE zV1vtZG6+U|2;2kmL4g~**$2zAlwbG%V~*6G*=f?f;TOswzRUC?U2NGAr(z8dmkEqU zK{cElQr%x=Cr!`n4qWs4piT}ydPajGO_&HZV)ukSSND=j0UgoHO51|N%(jo13y={s zND!Y5aQ}|zRHh% zV4iH;;K4GP@14nCY=Yg$fzhpSAdYhOnYvb_fk^UjNI~B{I0G?vuA0bh*|+>zUAz92 z0^vkqPEX37Y(H|l@*&3KwJr~GTT?v%hyuslh0)Cq-9!xlfS zOnaT%(iX5n6tFjji-}!aukI#qa_bI;r9>om6A3*esB4y36z7Q89Jchxcs;EO&A;wd z#`fEtzxD|<3g_kl80n_q!&>p}T>Y!~AAFUN69$D{m5gyR6QDzoBvvK!t4?oD_dlW# z*R>T}1|@Ivg|csQncg{k@TpW&F+v>H&5eEa3q&;M_0)ZqkY1bo89IAH4M?O(sPO8yUeo?rR###D#^0J!KaQUCw| literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/font-awesome/free-6.4.2/css/all.min.css b/src/main/resources/static/articles/font-awesome/free-6.4.2/css/all.min.css new file mode 100644 index 0000000..d949e4f --- /dev/null +++ b/src/main/resources/static/articles/font-awesome/free-6.4.2/css/all.min.css @@ -0,0 +1,9 @@ +/*! + * Font Awesome Free 6.4.2 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + * Copyright 2023 Fonticons, Inc. + */ +.fa{font-family:var(--fa-style-family,"Font Awesome 6 Free");font-weight:var(--fa-style,900)}.fa,.fa-brands,.fa-classic,.fa-regular,.fa-sharp,.fa-solid,.fab,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:var(--fa-display,inline-block);font-style:normal;font-variant:normal;line-height:1;text-rendering:auto}.fa-classic,.fa-regular,.fa-solid,.far,.fas{font-family:"Font Awesome 6 Free"}.fa-brands,.fab{font-family:"Font Awesome 6 Brands"}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.08333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.07143em;vertical-align:.05357em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.04167em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:var(--fa-li-margin,2.5em);padding-left:0}.fa-ul>li{position:relative}.fa-li{left:calc(var(--fa-li-width, 2em)*-1);position:absolute;text-align:center;width:var(--fa-li-width,2em);line-height:inherit}.fa-border{border-radius:var(--fa-border-radius,.1em);border:var(--fa-border-width,.08em) var(--fa-border-style,solid) var(--fa-border-color,#eee);padding:var(--fa-border-padding,.2em .25em .15em)}.fa-pull-left{float:left;margin-right:var(--fa-pull-margin,.3em)}.fa-pull-right{float:right;margin-left:var(--fa-pull-margin,.3em)}.fa-beat{-webkit-animation-name:fa-beat;animation-name:fa-beat;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,ease-in-out);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{-webkit-animation-name:fa-bounce;animation-name:fa-bounce;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{-webkit-animation-name:fa-fade;animation-name:fa-fade;-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade,.fa-fade{-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s)}.fa-beat-fade{-webkit-animation-name:fa-beat-fade;animation-name:fa-beat-fade;-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{-webkit-animation-name:fa-flip;animation-name:fa-flip;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,ease-in-out);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{-webkit-animation-name:fa-shake;animation-name:fa-shake;-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,linear);animation-timing-function:var(--fa-animation-timing,linear)}.fa-shake,.fa-spin{-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal)}.fa-spin{-webkit-animation-name:fa-spin;animation-name:fa-spin;-webkit-animation-duration:var(--fa-animation-duration,2s);animation-duration:var(--fa-animation-duration,2s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,linear);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{-webkit-animation-name:fa-spin;animation-name:fa-spin;-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,steps(8));animation-timing-function:var(--fa-animation-timing,steps(8))}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{-webkit-animation-delay:-1ms;animation-delay:-1ms;-webkit-animation-duration:1ms;animation-duration:1ms;-webkit-animation-iteration-count:1;animation-iteration-count:1;-webkit-transition-delay:0s;transition-delay:0s;-webkit-transition-duration:0s;transition-duration:0s}}@-webkit-keyframes fa-beat{0%,90%{-webkit-transform:scale(1);transform:scale(1)}45%{-webkit-transform:scale(var(--fa-beat-scale,1.25));transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-beat{0%,90%{-webkit-transform:scale(1);transform:scale(1)}45%{-webkit-transform:scale(var(--fa-beat-scale,1.25));transform:scale(var(--fa-beat-scale,1.25))}}@-webkit-keyframes fa-bounce{0%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}10%{-webkit-transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0);transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{-webkit-transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em));transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{-webkit-transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0);transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{-webkit-transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em));transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}to{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}}@keyframes fa-bounce{0%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}10%{-webkit-transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0);transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{-webkit-transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em));transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{-webkit-transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0);transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{-webkit-transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em));transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}to{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}}@-webkit-keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@-webkit-keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(var(--fa-beat-fade-scale,1.125));transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(var(--fa-beat-fade-scale,1.125));transform:scale(var(--fa-beat-fade-scale,1.125))}}@-webkit-keyframes fa-flip{50%{-webkit-transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg));transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-flip{50%{-webkit-transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg));transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@-webkit-keyframes fa-shake{0%{-webkit-transform:rotate(-15deg);transform:rotate(-15deg)}4%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}8%,24%{-webkit-transform:rotate(-18deg);transform:rotate(-18deg)}12%,28%{-webkit-transform:rotate(18deg);transform:rotate(18deg)}16%{-webkit-transform:rotate(-22deg);transform:rotate(-22deg)}20%{-webkit-transform:rotate(22deg);transform:rotate(22deg)}32%{-webkit-transform:rotate(-12deg);transform:rotate(-12deg)}36%{-webkit-transform:rotate(12deg);transform:rotate(12deg)}40%,to{-webkit-transform:rotate(0deg);transform:rotate(0deg)}}@keyframes fa-shake{0%{-webkit-transform:rotate(-15deg);transform:rotate(-15deg)}4%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}8%,24%{-webkit-transform:rotate(-18deg);transform:rotate(-18deg)}12%,28%{-webkit-transform:rotate(18deg);transform:rotate(18deg)}16%{-webkit-transform:rotate(-22deg);transform:rotate(-22deg)}20%{-webkit-transform:rotate(22deg);transform:rotate(22deg)}32%{-webkit-transform:rotate(-12deg);transform:rotate(-12deg)}36%{-webkit-transform:rotate(12deg);transform:rotate(12deg)}40%,to{-webkit-transform:rotate(0deg);transform:rotate(0deg)}}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}.fa-rotate-by{-webkit-transform:rotate(var(--fa-rotate-angle,none));transform:rotate(var(--fa-rotate-angle,none))}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%;z-index:var(--fa-stack-z-index,auto)}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:var(--fa-inverse,#fff)} + +.fa-0:before{content:"\30"}.fa-1:before{content:"\31"}.fa-2:before{content:"\32"}.fa-3:before{content:"\33"}.fa-4:before{content:"\34"}.fa-5:before{content:"\35"}.fa-6:before{content:"\36"}.fa-7:before{content:"\37"}.fa-8:before{content:"\38"}.fa-9:before{content:"\39"}.fa-fill-drip:before{content:"\f576"}.fa-arrows-to-circle:before{content:"\e4bd"}.fa-chevron-circle-right:before,.fa-circle-chevron-right:before{content:"\f138"}.fa-at:before{content:"\40"}.fa-trash-alt:before,.fa-trash-can:before{content:"\f2ed"}.fa-text-height:before{content:"\f034"}.fa-user-times:before,.fa-user-xmark:before{content:"\f235"}.fa-stethoscope:before{content:"\f0f1"}.fa-comment-alt:before,.fa-message:before{content:"\f27a"}.fa-info:before{content:"\f129"}.fa-compress-alt:before,.fa-down-left-and-up-right-to-center:before{content:"\f422"}.fa-explosion:before{content:"\e4e9"}.fa-file-alt:before,.fa-file-lines:before,.fa-file-text:before{content:"\f15c"}.fa-wave-square:before{content:"\f83e"}.fa-ring:before{content:"\f70b"}.fa-building-un:before{content:"\e4d9"}.fa-dice-three:before{content:"\f527"}.fa-calendar-alt:before,.fa-calendar-days:before{content:"\f073"}.fa-anchor-circle-check:before{content:"\e4aa"}.fa-building-circle-arrow-right:before{content:"\e4d1"}.fa-volleyball-ball:before,.fa-volleyball:before{content:"\f45f"}.fa-arrows-up-to-line:before{content:"\e4c2"}.fa-sort-desc:before,.fa-sort-down:before{content:"\f0dd"}.fa-circle-minus:before,.fa-minus-circle:before{content:"\f056"}.fa-door-open:before{content:"\f52b"}.fa-right-from-bracket:before,.fa-sign-out-alt:before{content:"\f2f5"}.fa-atom:before{content:"\f5d2"}.fa-soap:before{content:"\e06e"}.fa-heart-music-camera-bolt:before,.fa-icons:before{content:"\f86d"}.fa-microphone-alt-slash:before,.fa-microphone-lines-slash:before{content:"\f539"}.fa-bridge-circle-check:before{content:"\e4c9"}.fa-pump-medical:before{content:"\e06a"}.fa-fingerprint:before{content:"\f577"}.fa-hand-point-right:before{content:"\f0a4"}.fa-magnifying-glass-location:before,.fa-search-location:before{content:"\f689"}.fa-forward-step:before,.fa-step-forward:before{content:"\f051"}.fa-face-smile-beam:before,.fa-smile-beam:before{content:"\f5b8"}.fa-flag-checkered:before{content:"\f11e"}.fa-football-ball:before,.fa-football:before{content:"\f44e"}.fa-school-circle-exclamation:before{content:"\e56c"}.fa-crop:before{content:"\f125"}.fa-angle-double-down:before,.fa-angles-down:before{content:"\f103"}.fa-users-rectangle:before{content:"\e594"}.fa-people-roof:before{content:"\e537"}.fa-people-line:before{content:"\e534"}.fa-beer-mug-empty:before,.fa-beer:before{content:"\f0fc"}.fa-diagram-predecessor:before{content:"\e477"}.fa-arrow-up-long:before,.fa-long-arrow-up:before{content:"\f176"}.fa-burn:before,.fa-fire-flame-simple:before{content:"\f46a"}.fa-male:before,.fa-person:before{content:"\f183"}.fa-laptop:before{content:"\f109"}.fa-file-csv:before{content:"\f6dd"}.fa-menorah:before{content:"\f676"}.fa-truck-plane:before{content:"\e58f"}.fa-record-vinyl:before{content:"\f8d9"}.fa-face-grin-stars:before,.fa-grin-stars:before{content:"\f587"}.fa-bong:before{content:"\f55c"}.fa-pastafarianism:before,.fa-spaghetti-monster-flying:before{content:"\f67b"}.fa-arrow-down-up-across-line:before{content:"\e4af"}.fa-spoon:before,.fa-utensil-spoon:before{content:"\f2e5"}.fa-jar-wheat:before{content:"\e517"}.fa-envelopes-bulk:before,.fa-mail-bulk:before{content:"\f674"}.fa-file-circle-exclamation:before{content:"\e4eb"}.fa-circle-h:before,.fa-hospital-symbol:before{content:"\f47e"}.fa-pager:before{content:"\f815"}.fa-address-book:before,.fa-contact-book:before{content:"\f2b9"}.fa-strikethrough:before{content:"\f0cc"}.fa-k:before{content:"\4b"}.fa-landmark-flag:before{content:"\e51c"}.fa-pencil-alt:before,.fa-pencil:before{content:"\f303"}.fa-backward:before{content:"\f04a"}.fa-caret-right:before{content:"\f0da"}.fa-comments:before{content:"\f086"}.fa-file-clipboard:before,.fa-paste:before{content:"\f0ea"}.fa-code-pull-request:before{content:"\e13c"}.fa-clipboard-list:before{content:"\f46d"}.fa-truck-loading:before,.fa-truck-ramp-box:before{content:"\f4de"}.fa-user-check:before{content:"\f4fc"}.fa-vial-virus:before{content:"\e597"}.fa-sheet-plastic:before{content:"\e571"}.fa-blog:before{content:"\f781"}.fa-user-ninja:before{content:"\f504"}.fa-person-arrow-up-from-line:before{content:"\e539"}.fa-scroll-torah:before,.fa-torah:before{content:"\f6a0"}.fa-broom-ball:before,.fa-quidditch-broom-ball:before,.fa-quidditch:before{content:"\f458"}.fa-toggle-off:before{content:"\f204"}.fa-archive:before,.fa-box-archive:before{content:"\f187"}.fa-person-drowning:before{content:"\e545"}.fa-arrow-down-9-1:before,.fa-sort-numeric-desc:before,.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-face-grin-tongue-squint:before,.fa-grin-tongue-squint:before{content:"\f58a"}.fa-spray-can:before{content:"\f5bd"}.fa-truck-monster:before{content:"\f63b"}.fa-w:before{content:"\57"}.fa-earth-africa:before,.fa-globe-africa:before{content:"\f57c"}.fa-rainbow:before{content:"\f75b"}.fa-circle-notch:before{content:"\f1ce"}.fa-tablet-alt:before,.fa-tablet-screen-button:before{content:"\f3fa"}.fa-paw:before{content:"\f1b0"}.fa-cloud:before{content:"\f0c2"}.fa-trowel-bricks:before{content:"\e58a"}.fa-face-flushed:before,.fa-flushed:before{content:"\f579"}.fa-hospital-user:before{content:"\f80d"}.fa-tent-arrow-left-right:before{content:"\e57f"}.fa-gavel:before,.fa-legal:before{content:"\f0e3"}.fa-binoculars:before{content:"\f1e5"}.fa-microphone-slash:before{content:"\f131"}.fa-box-tissue:before{content:"\e05b"}.fa-motorcycle:before{content:"\f21c"}.fa-bell-concierge:before,.fa-concierge-bell:before{content:"\f562"}.fa-pen-ruler:before,.fa-pencil-ruler:before{content:"\f5ae"}.fa-people-arrows-left-right:before,.fa-people-arrows:before{content:"\e068"}.fa-mars-and-venus-burst:before{content:"\e523"}.fa-caret-square-right:before,.fa-square-caret-right:before{content:"\f152"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-sun-plant-wilt:before{content:"\e57a"}.fa-toilets-portable:before{content:"\e584"}.fa-hockey-puck:before{content:"\f453"}.fa-table:before{content:"\f0ce"}.fa-magnifying-glass-arrow-right:before{content:"\e521"}.fa-digital-tachograph:before,.fa-tachograph-digital:before{content:"\f566"}.fa-users-slash:before{content:"\e073"}.fa-clover:before{content:"\e139"}.fa-mail-reply:before,.fa-reply:before{content:"\f3e5"}.fa-star-and-crescent:before{content:"\f699"}.fa-house-fire:before{content:"\e50c"}.fa-minus-square:before,.fa-square-minus:before{content:"\f146"}.fa-helicopter:before{content:"\f533"}.fa-compass:before{content:"\f14e"}.fa-caret-square-down:before,.fa-square-caret-down:before{content:"\f150"}.fa-file-circle-question:before{content:"\e4ef"}.fa-laptop-code:before{content:"\f5fc"}.fa-swatchbook:before{content:"\f5c3"}.fa-prescription-bottle:before{content:"\f485"}.fa-bars:before,.fa-navicon:before{content:"\f0c9"}.fa-people-group:before{content:"\e533"}.fa-hourglass-3:before,.fa-hourglass-end:before{content:"\f253"}.fa-heart-broken:before,.fa-heart-crack:before{content:"\f7a9"}.fa-external-link-square-alt:before,.fa-square-up-right:before{content:"\f360"}.fa-face-kiss-beam:before,.fa-kiss-beam:before{content:"\f597"}.fa-film:before{content:"\f008"}.fa-ruler-horizontal:before{content:"\f547"}.fa-people-robbery:before{content:"\e536"}.fa-lightbulb:before{content:"\f0eb"}.fa-caret-left:before{content:"\f0d9"}.fa-circle-exclamation:before,.fa-exclamation-circle:before{content:"\f06a"}.fa-school-circle-xmark:before{content:"\e56d"}.fa-arrow-right-from-bracket:before,.fa-sign-out:before{content:"\f08b"}.fa-chevron-circle-down:before,.fa-circle-chevron-down:before{content:"\f13a"}.fa-unlock-alt:before,.fa-unlock-keyhole:before{content:"\f13e"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-headphones-alt:before,.fa-headphones-simple:before{content:"\f58f"}.fa-sitemap:before{content:"\f0e8"}.fa-circle-dollar-to-slot:before,.fa-donate:before{content:"\f4b9"}.fa-memory:before{content:"\f538"}.fa-road-spikes:before{content:"\e568"}.fa-fire-burner:before{content:"\e4f1"}.fa-flag:before{content:"\f024"}.fa-hanukiah:before{content:"\f6e6"}.fa-feather:before{content:"\f52d"}.fa-volume-down:before,.fa-volume-low:before{content:"\f027"}.fa-comment-slash:before{content:"\f4b3"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-compress:before{content:"\f066"}.fa-wheat-alt:before,.fa-wheat-awn:before{content:"\e2cd"}.fa-ankh:before{content:"\f644"}.fa-hands-holding-child:before{content:"\e4fa"}.fa-asterisk:before{content:"\2a"}.fa-check-square:before,.fa-square-check:before{content:"\f14a"}.fa-peseta-sign:before{content:"\e221"}.fa-header:before,.fa-heading:before{content:"\f1dc"}.fa-ghost:before{content:"\f6e2"}.fa-list-squares:before,.fa-list:before{content:"\f03a"}.fa-phone-square-alt:before,.fa-square-phone-flip:before{content:"\f87b"}.fa-cart-plus:before{content:"\f217"}.fa-gamepad:before{content:"\f11b"}.fa-circle-dot:before,.fa-dot-circle:before{content:"\f192"}.fa-dizzy:before,.fa-face-dizzy:before{content:"\f567"}.fa-egg:before{content:"\f7fb"}.fa-house-medical-circle-xmark:before{content:"\e513"}.fa-campground:before{content:"\f6bb"}.fa-folder-plus:before{content:"\f65e"}.fa-futbol-ball:before,.fa-futbol:before,.fa-soccer-ball:before{content:"\f1e3"}.fa-paint-brush:before,.fa-paintbrush:before{content:"\f1fc"}.fa-lock:before{content:"\f023"}.fa-gas-pump:before{content:"\f52f"}.fa-hot-tub-person:before,.fa-hot-tub:before{content:"\f593"}.fa-map-location:before,.fa-map-marked:before{content:"\f59f"}.fa-house-flood-water:before{content:"\e50e"}.fa-tree:before{content:"\f1bb"}.fa-bridge-lock:before{content:"\e4cc"}.fa-sack-dollar:before{content:"\f81d"}.fa-edit:before,.fa-pen-to-square:before{content:"\f044"}.fa-car-side:before{content:"\f5e4"}.fa-share-alt:before,.fa-share-nodes:before{content:"\f1e0"}.fa-heart-circle-minus:before{content:"\e4ff"}.fa-hourglass-2:before,.fa-hourglass-half:before{content:"\f252"}.fa-microscope:before{content:"\f610"}.fa-sink:before{content:"\e06d"}.fa-bag-shopping:before,.fa-shopping-bag:before{content:"\f290"}.fa-arrow-down-z-a:before,.fa-sort-alpha-desc:before,.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-mitten:before{content:"\f7b5"}.fa-person-rays:before{content:"\e54d"}.fa-users:before{content:"\f0c0"}.fa-eye-slash:before{content:"\f070"}.fa-flask-vial:before{content:"\e4f3"}.fa-hand-paper:before,.fa-hand:before{content:"\f256"}.fa-om:before{content:"\f679"}.fa-worm:before{content:"\e599"}.fa-house-circle-xmark:before{content:"\e50b"}.fa-plug:before{content:"\f1e6"}.fa-chevron-up:before{content:"\f077"}.fa-hand-spock:before{content:"\f259"}.fa-stopwatch:before{content:"\f2f2"}.fa-face-kiss:before,.fa-kiss:before{content:"\f596"}.fa-bridge-circle-xmark:before{content:"\e4cb"}.fa-face-grin-tongue:before,.fa-grin-tongue:before{content:"\f589"}.fa-chess-bishop:before{content:"\f43a"}.fa-face-grin-wink:before,.fa-grin-wink:before{content:"\f58c"}.fa-deaf:before,.fa-deafness:before,.fa-ear-deaf:before,.fa-hard-of-hearing:before{content:"\f2a4"}.fa-road-circle-check:before{content:"\e564"}.fa-dice-five:before{content:"\f523"}.fa-rss-square:before,.fa-square-rss:before{content:"\f143"}.fa-land-mine-on:before{content:"\e51b"}.fa-i-cursor:before{content:"\f246"}.fa-stamp:before{content:"\f5bf"}.fa-stairs:before{content:"\e289"}.fa-i:before{content:"\49"}.fa-hryvnia-sign:before,.fa-hryvnia:before{content:"\f6f2"}.fa-pills:before{content:"\f484"}.fa-face-grin-wide:before,.fa-grin-alt:before{content:"\f581"}.fa-tooth:before{content:"\f5c9"}.fa-v:before{content:"\56"}.fa-bangladeshi-taka-sign:before{content:"\e2e6"}.fa-bicycle:before{content:"\f206"}.fa-rod-asclepius:before,.fa-rod-snake:before,.fa-staff-aesculapius:before,.fa-staff-snake:before{content:"\e579"}.fa-head-side-cough-slash:before{content:"\e062"}.fa-ambulance:before,.fa-truck-medical:before{content:"\f0f9"}.fa-wheat-awn-circle-exclamation:before{content:"\e598"}.fa-snowman:before{content:"\f7d0"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-road-barrier:before{content:"\e562"}.fa-school:before{content:"\f549"}.fa-igloo:before{content:"\f7ae"}.fa-joint:before{content:"\f595"}.fa-angle-right:before{content:"\f105"}.fa-horse:before{content:"\f6f0"}.fa-q:before{content:"\51"}.fa-g:before{content:"\47"}.fa-notes-medical:before{content:"\f481"}.fa-temperature-2:before,.fa-temperature-half:before,.fa-thermometer-2:before,.fa-thermometer-half:before{content:"\f2c9"}.fa-dong-sign:before{content:"\e169"}.fa-capsules:before{content:"\f46b"}.fa-poo-bolt:before,.fa-poo-storm:before{content:"\f75a"}.fa-face-frown-open:before,.fa-frown-open:before{content:"\f57a"}.fa-hand-point-up:before{content:"\f0a6"}.fa-money-bill:before{content:"\f0d6"}.fa-bookmark:before{content:"\f02e"}.fa-align-justify:before{content:"\f039"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-helmet-un:before{content:"\e503"}.fa-bullseye:before{content:"\f140"}.fa-bacon:before{content:"\f7e5"}.fa-hand-point-down:before{content:"\f0a7"}.fa-arrow-up-from-bracket:before{content:"\e09a"}.fa-folder-blank:before,.fa-folder:before{content:"\f07b"}.fa-file-medical-alt:before,.fa-file-waveform:before{content:"\f478"}.fa-radiation:before{content:"\f7b9"}.fa-chart-simple:before{content:"\e473"}.fa-mars-stroke:before{content:"\f229"}.fa-vial:before{content:"\f492"}.fa-dashboard:before,.fa-gauge-med:before,.fa-gauge:before,.fa-tachometer-alt-average:before{content:"\f624"}.fa-magic-wand-sparkles:before,.fa-wand-magic-sparkles:before{content:"\e2ca"}.fa-e:before{content:"\45"}.fa-pen-alt:before,.fa-pen-clip:before{content:"\f305"}.fa-bridge-circle-exclamation:before{content:"\e4ca"}.fa-user:before{content:"\f007"}.fa-school-circle-check:before{content:"\e56b"}.fa-dumpster:before{content:"\f793"}.fa-shuttle-van:before,.fa-van-shuttle:before{content:"\f5b6"}.fa-building-user:before{content:"\e4da"}.fa-caret-square-left:before,.fa-square-caret-left:before{content:"\f191"}.fa-highlighter:before{content:"\f591"}.fa-key:before{content:"\f084"}.fa-bullhorn:before{content:"\f0a1"}.fa-globe:before{content:"\f0ac"}.fa-synagogue:before{content:"\f69b"}.fa-person-half-dress:before{content:"\e548"}.fa-road-bridge:before{content:"\e563"}.fa-location-arrow:before{content:"\f124"}.fa-c:before{content:"\43"}.fa-tablet-button:before{content:"\f10a"}.fa-building-lock:before{content:"\e4d6"}.fa-pizza-slice:before{content:"\f818"}.fa-money-bill-wave:before{content:"\f53a"}.fa-area-chart:before,.fa-chart-area:before{content:"\f1fe"}.fa-house-flag:before{content:"\e50d"}.fa-person-circle-minus:before{content:"\e540"}.fa-ban:before,.fa-cancel:before{content:"\f05e"}.fa-camera-rotate:before{content:"\e0d8"}.fa-air-freshener:before,.fa-spray-can-sparkles:before{content:"\f5d0"}.fa-star:before{content:"\f005"}.fa-repeat:before{content:"\f363"}.fa-cross:before{content:"\f654"}.fa-box:before{content:"\f466"}.fa-venus-mars:before{content:"\f228"}.fa-arrow-pointer:before,.fa-mouse-pointer:before{content:"\f245"}.fa-expand-arrows-alt:before,.fa-maximize:before{content:"\f31e"}.fa-charging-station:before{content:"\f5e7"}.fa-shapes:before,.fa-triangle-circle-square:before{content:"\f61f"}.fa-random:before,.fa-shuffle:before{content:"\f074"}.fa-person-running:before,.fa-running:before{content:"\f70c"}.fa-mobile-retro:before{content:"\e527"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-spider:before{content:"\f717"}.fa-hands-bound:before{content:"\e4f9"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-plane-circle-exclamation:before{content:"\e556"}.fa-x-ray:before{content:"\f497"}.fa-spell-check:before{content:"\f891"}.fa-slash:before{content:"\f715"}.fa-computer-mouse:before,.fa-mouse:before{content:"\f8cc"}.fa-arrow-right-to-bracket:before,.fa-sign-in:before{content:"\f090"}.fa-shop-slash:before,.fa-store-alt-slash:before{content:"\e070"}.fa-server:before{content:"\f233"}.fa-virus-covid-slash:before{content:"\e4a9"}.fa-shop-lock:before{content:"\e4a5"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:"\f251"}.fa-blender-phone:before{content:"\f6b6"}.fa-building-wheat:before{content:"\e4db"}.fa-person-breastfeeding:before{content:"\e53a"}.fa-right-to-bracket:before,.fa-sign-in-alt:before{content:"\f2f6"}.fa-venus:before{content:"\f221"}.fa-passport:before{content:"\f5ab"}.fa-heart-pulse:before,.fa-heartbeat:before{content:"\f21e"}.fa-people-carry-box:before,.fa-people-carry:before{content:"\f4ce"}.fa-temperature-high:before{content:"\f769"}.fa-microchip:before{content:"\f2db"}.fa-crown:before{content:"\f521"}.fa-weight-hanging:before{content:"\f5cd"}.fa-xmarks-lines:before{content:"\e59a"}.fa-file-prescription:before{content:"\f572"}.fa-weight-scale:before,.fa-weight:before{content:"\f496"}.fa-user-friends:before,.fa-user-group:before{content:"\f500"}.fa-arrow-up-a-z:before,.fa-sort-alpha-up:before{content:"\f15e"}.fa-chess-knight:before{content:"\f441"}.fa-face-laugh-squint:before,.fa-laugh-squint:before{content:"\f59b"}.fa-wheelchair:before{content:"\f193"}.fa-arrow-circle-up:before,.fa-circle-arrow-up:before{content:"\f0aa"}.fa-toggle-on:before{content:"\f205"}.fa-person-walking:before,.fa-walking:before{content:"\f554"}.fa-l:before{content:"\4c"}.fa-fire:before{content:"\f06d"}.fa-bed-pulse:before,.fa-procedures:before{content:"\f487"}.fa-shuttle-space:before,.fa-space-shuttle:before{content:"\f197"}.fa-face-laugh:before,.fa-laugh:before{content:"\f599"}.fa-folder-open:before{content:"\f07c"}.fa-heart-circle-plus:before{content:"\e500"}.fa-code-fork:before{content:"\e13b"}.fa-city:before{content:"\f64f"}.fa-microphone-alt:before,.fa-microphone-lines:before{content:"\f3c9"}.fa-pepper-hot:before{content:"\f816"}.fa-unlock:before{content:"\f09c"}.fa-colon-sign:before{content:"\e140"}.fa-headset:before{content:"\f590"}.fa-store-slash:before{content:"\e071"}.fa-road-circle-xmark:before{content:"\e566"}.fa-user-minus:before{content:"\f503"}.fa-mars-stroke-up:before,.fa-mars-stroke-v:before{content:"\f22a"}.fa-champagne-glasses:before,.fa-glass-cheers:before{content:"\f79f"}.fa-clipboard:before{content:"\f328"}.fa-house-circle-exclamation:before{content:"\e50a"}.fa-file-arrow-up:before,.fa-file-upload:before{content:"\f574"}.fa-wifi-3:before,.fa-wifi-strong:before,.fa-wifi:before{content:"\f1eb"}.fa-bath:before,.fa-bathtub:before{content:"\f2cd"}.fa-underline:before{content:"\f0cd"}.fa-user-edit:before,.fa-user-pen:before{content:"\f4ff"}.fa-signature:before{content:"\f5b7"}.fa-stroopwafel:before{content:"\f551"}.fa-bold:before{content:"\f032"}.fa-anchor-lock:before{content:"\e4ad"}.fa-building-ngo:before{content:"\e4d7"}.fa-manat-sign:before{content:"\e1d5"}.fa-not-equal:before{content:"\f53e"}.fa-border-style:before,.fa-border-top-left:before{content:"\f853"}.fa-map-location-dot:before,.fa-map-marked-alt:before{content:"\f5a0"}.fa-jedi:before{content:"\f669"}.fa-poll:before,.fa-square-poll-vertical:before{content:"\f681"}.fa-mug-hot:before{content:"\f7b6"}.fa-battery-car:before,.fa-car-battery:before{content:"\f5df"}.fa-gift:before{content:"\f06b"}.fa-dice-two:before{content:"\f528"}.fa-chess-queen:before{content:"\f445"}.fa-glasses:before{content:"\f530"}.fa-chess-board:before{content:"\f43c"}.fa-building-circle-check:before{content:"\e4d2"}.fa-person-chalkboard:before{content:"\e53d"}.fa-mars-stroke-h:before,.fa-mars-stroke-right:before{content:"\f22b"}.fa-hand-back-fist:before,.fa-hand-rock:before{content:"\f255"}.fa-caret-square-up:before,.fa-square-caret-up:before{content:"\f151"}.fa-cloud-showers-water:before{content:"\e4e4"}.fa-bar-chart:before,.fa-chart-bar:before{content:"\f080"}.fa-hands-bubbles:before,.fa-hands-wash:before{content:"\e05e"}.fa-less-than-equal:before{content:"\f537"}.fa-train:before{content:"\f238"}.fa-eye-low-vision:before,.fa-low-vision:before{content:"\f2a8"}.fa-crow:before{content:"\f520"}.fa-sailboat:before{content:"\e445"}.fa-window-restore:before{content:"\f2d2"}.fa-plus-square:before,.fa-square-plus:before{content:"\f0fe"}.fa-torii-gate:before{content:"\f6a1"}.fa-frog:before{content:"\f52e"}.fa-bucket:before{content:"\e4cf"}.fa-image:before{content:"\f03e"}.fa-microphone:before{content:"\f130"}.fa-cow:before{content:"\f6c8"}.fa-caret-up:before{content:"\f0d8"}.fa-screwdriver:before{content:"\f54a"}.fa-folder-closed:before{content:"\e185"}.fa-house-tsunami:before{content:"\e515"}.fa-square-nfi:before{content:"\e576"}.fa-arrow-up-from-ground-water:before{content:"\e4b5"}.fa-glass-martini-alt:before,.fa-martini-glass:before{content:"\f57b"}.fa-rotate-back:before,.fa-rotate-backward:before,.fa-rotate-left:before,.fa-undo-alt:before{content:"\f2ea"}.fa-columns:before,.fa-table-columns:before{content:"\f0db"}.fa-lemon:before{content:"\f094"}.fa-head-side-mask:before{content:"\e063"}.fa-handshake:before{content:"\f2b5"}.fa-gem:before{content:"\f3a5"}.fa-dolly-box:before,.fa-dolly:before{content:"\f472"}.fa-smoking:before{content:"\f48d"}.fa-compress-arrows-alt:before,.fa-minimize:before{content:"\f78c"}.fa-monument:before{content:"\f5a6"}.fa-snowplow:before{content:"\f7d2"}.fa-angle-double-right:before,.fa-angles-right:before{content:"\f101"}.fa-cannabis:before{content:"\f55f"}.fa-circle-play:before,.fa-play-circle:before{content:"\f144"}.fa-tablets:before{content:"\f490"}.fa-ethernet:before{content:"\f796"}.fa-eur:before,.fa-euro-sign:before,.fa-euro:before{content:"\f153"}.fa-chair:before{content:"\f6c0"}.fa-check-circle:before,.fa-circle-check:before{content:"\f058"}.fa-circle-stop:before,.fa-stop-circle:before{content:"\f28d"}.fa-compass-drafting:before,.fa-drafting-compass:before{content:"\f568"}.fa-plate-wheat:before{content:"\e55a"}.fa-icicles:before{content:"\f7ad"}.fa-person-shelter:before{content:"\e54f"}.fa-neuter:before{content:"\f22c"}.fa-id-badge:before{content:"\f2c1"}.fa-marker:before{content:"\f5a1"}.fa-face-laugh-beam:before,.fa-laugh-beam:before{content:"\f59a"}.fa-helicopter-symbol:before{content:"\e502"}.fa-universal-access:before{content:"\f29a"}.fa-chevron-circle-up:before,.fa-circle-chevron-up:before{content:"\f139"}.fa-lari-sign:before{content:"\e1c8"}.fa-volcano:before{content:"\f770"}.fa-person-walking-dashed-line-arrow-right:before{content:"\e553"}.fa-gbp:before,.fa-pound-sign:before,.fa-sterling-sign:before{content:"\f154"}.fa-viruses:before{content:"\e076"}.fa-square-person-confined:before{content:"\e577"}.fa-user-tie:before{content:"\f508"}.fa-arrow-down-long:before,.fa-long-arrow-down:before{content:"\f175"}.fa-tent-arrow-down-to-line:before{content:"\e57e"}.fa-certificate:before{content:"\f0a3"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-suitcase:before{content:"\f0f2"}.fa-person-skating:before,.fa-skating:before{content:"\f7c5"}.fa-filter-circle-dollar:before,.fa-funnel-dollar:before{content:"\f662"}.fa-camera-retro:before{content:"\f083"}.fa-arrow-circle-down:before,.fa-circle-arrow-down:before{content:"\f0ab"}.fa-arrow-right-to-file:before,.fa-file-import:before{content:"\f56f"}.fa-external-link-square:before,.fa-square-arrow-up-right:before{content:"\f14c"}.fa-box-open:before{content:"\f49e"}.fa-scroll:before{content:"\f70e"}.fa-spa:before{content:"\f5bb"}.fa-location-pin-lock:before{content:"\e51f"}.fa-pause:before{content:"\f04c"}.fa-hill-avalanche:before{content:"\e507"}.fa-temperature-0:before,.fa-temperature-empty:before,.fa-thermometer-0:before,.fa-thermometer-empty:before{content:"\f2cb"}.fa-bomb:before{content:"\f1e2"}.fa-registered:before{content:"\f25d"}.fa-address-card:before,.fa-contact-card:before,.fa-vcard:before{content:"\f2bb"}.fa-balance-scale-right:before,.fa-scale-unbalanced-flip:before{content:"\f516"}.fa-subscript:before{content:"\f12c"}.fa-diamond-turn-right:before,.fa-directions:before{content:"\f5eb"}.fa-burst:before{content:"\e4dc"}.fa-house-laptop:before,.fa-laptop-house:before{content:"\e066"}.fa-face-tired:before,.fa-tired:before{content:"\f5c8"}.fa-money-bills:before{content:"\e1f3"}.fa-smog:before{content:"\f75f"}.fa-crutch:before{content:"\f7f7"}.fa-cloud-arrow-up:before,.fa-cloud-upload-alt:before,.fa-cloud-upload:before{content:"\f0ee"}.fa-palette:before{content:"\f53f"}.fa-arrows-turn-right:before{content:"\e4c0"}.fa-vest:before{content:"\e085"}.fa-ferry:before{content:"\e4ea"}.fa-arrows-down-to-people:before{content:"\e4b9"}.fa-seedling:before,.fa-sprout:before{content:"\f4d8"}.fa-arrows-alt-h:before,.fa-left-right:before{content:"\f337"}.fa-boxes-packing:before{content:"\e4c7"}.fa-arrow-circle-left:before,.fa-circle-arrow-left:before{content:"\f0a8"}.fa-group-arrows-rotate:before{content:"\e4f6"}.fa-bowl-food:before{content:"\e4c6"}.fa-candy-cane:before{content:"\f786"}.fa-arrow-down-wide-short:before,.fa-sort-amount-asc:before,.fa-sort-amount-down:before{content:"\f160"}.fa-cloud-bolt:before,.fa-thunderstorm:before{content:"\f76c"}.fa-remove-format:before,.fa-text-slash:before{content:"\f87d"}.fa-face-smile-wink:before,.fa-smile-wink:before{content:"\f4da"}.fa-file-word:before{content:"\f1c2"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-arrows-h:before,.fa-arrows-left-right:before{content:"\f07e"}.fa-house-lock:before{content:"\e510"}.fa-cloud-arrow-down:before,.fa-cloud-download-alt:before,.fa-cloud-download:before{content:"\f0ed"}.fa-children:before{content:"\e4e1"}.fa-blackboard:before,.fa-chalkboard:before{content:"\f51b"}.fa-user-alt-slash:before,.fa-user-large-slash:before{content:"\f4fa"}.fa-envelope-open:before{content:"\f2b6"}.fa-handshake-alt-slash:before,.fa-handshake-simple-slash:before{content:"\e05f"}.fa-mattress-pillow:before{content:"\e525"}.fa-guarani-sign:before{content:"\e19a"}.fa-arrows-rotate:before,.fa-refresh:before,.fa-sync:before{content:"\f021"}.fa-fire-extinguisher:before{content:"\f134"}.fa-cruzeiro-sign:before{content:"\e152"}.fa-greater-than-equal:before{content:"\f532"}.fa-shield-alt:before,.fa-shield-halved:before{content:"\f3ed"}.fa-atlas:before,.fa-book-atlas:before{content:"\f558"}.fa-virus:before{content:"\e074"}.fa-envelope-circle-check:before{content:"\e4e8"}.fa-layer-group:before{content:"\f5fd"}.fa-arrows-to-dot:before{content:"\e4be"}.fa-archway:before{content:"\f557"}.fa-heart-circle-check:before{content:"\e4fd"}.fa-house-chimney-crack:before,.fa-house-damage:before{content:"\f6f1"}.fa-file-archive:before,.fa-file-zipper:before{content:"\f1c6"}.fa-square:before{content:"\f0c8"}.fa-glass-martini:before,.fa-martini-glass-empty:before{content:"\f000"}.fa-couch:before{content:"\f4b8"}.fa-cedi-sign:before{content:"\e0df"}.fa-italic:before{content:"\f033"}.fa-church:before{content:"\f51d"}.fa-comments-dollar:before{content:"\f653"}.fa-democrat:before{content:"\f747"}.fa-z:before{content:"\5a"}.fa-person-skiing:before,.fa-skiing:before{content:"\f7c9"}.fa-road-lock:before{content:"\e567"}.fa-a:before{content:"\41"}.fa-temperature-arrow-down:before,.fa-temperature-down:before{content:"\e03f"}.fa-feather-alt:before,.fa-feather-pointed:before{content:"\f56b"}.fa-p:before{content:"\50"}.fa-snowflake:before{content:"\f2dc"}.fa-newspaper:before{content:"\f1ea"}.fa-ad:before,.fa-rectangle-ad:before{content:"\f641"}.fa-arrow-circle-right:before,.fa-circle-arrow-right:before{content:"\f0a9"}.fa-filter-circle-xmark:before{content:"\e17b"}.fa-locust:before{content:"\e520"}.fa-sort:before,.fa-unsorted:before{content:"\f0dc"}.fa-list-1-2:before,.fa-list-numeric:before,.fa-list-ol:before{content:"\f0cb"}.fa-person-dress-burst:before{content:"\e544"}.fa-money-check-alt:before,.fa-money-check-dollar:before{content:"\f53d"}.fa-vector-square:before{content:"\f5cb"}.fa-bread-slice:before{content:"\f7ec"}.fa-language:before{content:"\f1ab"}.fa-face-kiss-wink-heart:before,.fa-kiss-wink-heart:before{content:"\f598"}.fa-filter:before{content:"\f0b0"}.fa-question:before{content:"\3f"}.fa-file-signature:before{content:"\f573"}.fa-arrows-alt:before,.fa-up-down-left-right:before{content:"\f0b2"}.fa-house-chimney-user:before{content:"\e065"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-puzzle-piece:before{content:"\f12e"}.fa-money-check:before{content:"\f53c"}.fa-star-half-alt:before,.fa-star-half-stroke:before{content:"\f5c0"}.fa-code:before{content:"\f121"}.fa-glass-whiskey:before,.fa-whiskey-glass:before{content:"\f7a0"}.fa-building-circle-exclamation:before{content:"\e4d3"}.fa-magnifying-glass-chart:before{content:"\e522"}.fa-arrow-up-right-from-square:before,.fa-external-link:before{content:"\f08e"}.fa-cubes-stacked:before{content:"\e4e6"}.fa-krw:before,.fa-won-sign:before,.fa-won:before{content:"\f159"}.fa-virus-covid:before{content:"\e4a8"}.fa-austral-sign:before{content:"\e0a9"}.fa-f:before{content:"\46"}.fa-leaf:before{content:"\f06c"}.fa-road:before{content:"\f018"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-person-circle-plus:before{content:"\e541"}.fa-chart-pie:before,.fa-pie-chart:before{content:"\f200"}.fa-bolt-lightning:before{content:"\e0b7"}.fa-sack-xmark:before{content:"\e56a"}.fa-file-excel:before{content:"\f1c3"}.fa-file-contract:before{content:"\f56c"}.fa-fish-fins:before{content:"\e4f2"}.fa-building-flag:before{content:"\e4d5"}.fa-face-grin-beam:before,.fa-grin-beam:before{content:"\f582"}.fa-object-ungroup:before{content:"\f248"}.fa-poop:before{content:"\f619"}.fa-location-pin:before,.fa-map-marker:before{content:"\f041"}.fa-kaaba:before{content:"\f66b"}.fa-toilet-paper:before{content:"\f71e"}.fa-hard-hat:before,.fa-hat-hard:before,.fa-helmet-safety:before{content:"\f807"}.fa-eject:before{content:"\f052"}.fa-arrow-alt-circle-right:before,.fa-circle-right:before{content:"\f35a"}.fa-plane-circle-check:before{content:"\e555"}.fa-face-rolling-eyes:before,.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-object-group:before{content:"\f247"}.fa-chart-line:before,.fa-line-chart:before{content:"\f201"}.fa-mask-ventilator:before{content:"\e524"}.fa-arrow-right:before{content:"\f061"}.fa-map-signs:before,.fa-signs-post:before{content:"\f277"}.fa-cash-register:before{content:"\f788"}.fa-person-circle-question:before{content:"\e542"}.fa-h:before{content:"\48"}.fa-tarp:before{content:"\e57b"}.fa-screwdriver-wrench:before,.fa-tools:before{content:"\f7d9"}.fa-arrows-to-eye:before{content:"\e4bf"}.fa-plug-circle-bolt:before{content:"\e55b"}.fa-heart:before{content:"\f004"}.fa-mars-and-venus:before{content:"\f224"}.fa-home-user:before,.fa-house-user:before{content:"\e1b0"}.fa-dumpster-fire:before{content:"\f794"}.fa-house-crack:before{content:"\e3b1"}.fa-cocktail:before,.fa-martini-glass-citrus:before{content:"\f561"}.fa-face-surprise:before,.fa-surprise:before{content:"\f5c2"}.fa-bottle-water:before{content:"\e4c5"}.fa-circle-pause:before,.fa-pause-circle:before{content:"\f28b"}.fa-toilet-paper-slash:before{content:"\e072"}.fa-apple-alt:before,.fa-apple-whole:before{content:"\f5d1"}.fa-kitchen-set:before{content:"\e51a"}.fa-r:before{content:"\52"}.fa-temperature-1:before,.fa-temperature-quarter:before,.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:"\f2ca"}.fa-cube:before{content:"\f1b2"}.fa-bitcoin-sign:before{content:"\e0b4"}.fa-shield-dog:before{content:"\e573"}.fa-solar-panel:before{content:"\f5ba"}.fa-lock-open:before{content:"\f3c1"}.fa-elevator:before{content:"\e16d"}.fa-money-bill-transfer:before{content:"\e528"}.fa-money-bill-trend-up:before{content:"\e529"}.fa-house-flood-water-circle-arrow-right:before{content:"\e50f"}.fa-poll-h:before,.fa-square-poll-horizontal:before{content:"\f682"}.fa-circle:before{content:"\f111"}.fa-backward-fast:before,.fa-fast-backward:before{content:"\f049"}.fa-recycle:before{content:"\f1b8"}.fa-user-astronaut:before{content:"\f4fb"}.fa-plane-slash:before{content:"\e069"}.fa-trademark:before{content:"\f25c"}.fa-basketball-ball:before,.fa-basketball:before{content:"\f434"}.fa-satellite-dish:before{content:"\f7c0"}.fa-arrow-alt-circle-up:before,.fa-circle-up:before{content:"\f35b"}.fa-mobile-alt:before,.fa-mobile-screen-button:before{content:"\f3cd"}.fa-volume-high:before,.fa-volume-up:before{content:"\f028"}.fa-users-rays:before{content:"\e593"}.fa-wallet:before{content:"\f555"}.fa-clipboard-check:before{content:"\f46c"}.fa-file-audio:before{content:"\f1c7"}.fa-burger:before,.fa-hamburger:before{content:"\f805"}.fa-wrench:before{content:"\f0ad"}.fa-bugs:before{content:"\e4d0"}.fa-rupee-sign:before,.fa-rupee:before{content:"\f156"}.fa-file-image:before{content:"\f1c5"}.fa-circle-question:before,.fa-question-circle:before{content:"\f059"}.fa-plane-departure:before{content:"\f5b0"}.fa-handshake-slash:before{content:"\e060"}.fa-book-bookmark:before{content:"\e0bb"}.fa-code-branch:before{content:"\f126"}.fa-hat-cowboy:before{content:"\f8c0"}.fa-bridge:before{content:"\e4c8"}.fa-phone-alt:before,.fa-phone-flip:before{content:"\f879"}.fa-truck-front:before{content:"\e2b7"}.fa-cat:before{content:"\f6be"}.fa-anchor-circle-exclamation:before{content:"\e4ab"}.fa-truck-field:before{content:"\e58d"}.fa-route:before{content:"\f4d7"}.fa-clipboard-question:before{content:"\e4e3"}.fa-panorama:before{content:"\e209"}.fa-comment-medical:before{content:"\f7f5"}.fa-teeth-open:before{content:"\f62f"}.fa-file-circle-minus:before{content:"\e4ed"}.fa-tags:before{content:"\f02c"}.fa-wine-glass:before{content:"\f4e3"}.fa-fast-forward:before,.fa-forward-fast:before{content:"\f050"}.fa-face-meh-blank:before,.fa-meh-blank:before{content:"\f5a4"}.fa-parking:before,.fa-square-parking:before{content:"\f540"}.fa-house-signal:before{content:"\e012"}.fa-bars-progress:before,.fa-tasks-alt:before{content:"\f828"}.fa-faucet-drip:before{content:"\e006"}.fa-cart-flatbed:before,.fa-dolly-flatbed:before{content:"\f474"}.fa-ban-smoking:before,.fa-smoking-ban:before{content:"\f54d"}.fa-terminal:before{content:"\f120"}.fa-mobile-button:before{content:"\f10b"}.fa-house-medical-flag:before{content:"\e514"}.fa-basket-shopping:before,.fa-shopping-basket:before{content:"\f291"}.fa-tape:before{content:"\f4db"}.fa-bus-alt:before,.fa-bus-simple:before{content:"\f55e"}.fa-eye:before{content:"\f06e"}.fa-face-sad-cry:before,.fa-sad-cry:before{content:"\f5b3"}.fa-audio-description:before{content:"\f29e"}.fa-person-military-to-person:before{content:"\e54c"}.fa-file-shield:before{content:"\e4f0"}.fa-user-slash:before{content:"\f506"}.fa-pen:before{content:"\f304"}.fa-tower-observation:before{content:"\e586"}.fa-file-code:before{content:"\f1c9"}.fa-signal-5:before,.fa-signal-perfect:before,.fa-signal:before{content:"\f012"}.fa-bus:before{content:"\f207"}.fa-heart-circle-xmark:before{content:"\e501"}.fa-home-lg:before,.fa-house-chimney:before{content:"\e3af"}.fa-window-maximize:before{content:"\f2d0"}.fa-face-frown:before,.fa-frown:before{content:"\f119"}.fa-prescription:before{content:"\f5b1"}.fa-shop:before,.fa-store-alt:before{content:"\f54f"}.fa-floppy-disk:before,.fa-save:before{content:"\f0c7"}.fa-vihara:before{content:"\f6a7"}.fa-balance-scale-left:before,.fa-scale-unbalanced:before{content:"\f515"}.fa-sort-asc:before,.fa-sort-up:before{content:"\f0de"}.fa-comment-dots:before,.fa-commenting:before{content:"\f4ad"}.fa-plant-wilt:before{content:"\e5aa"}.fa-diamond:before{content:"\f219"}.fa-face-grin-squint:before,.fa-grin-squint:before{content:"\f585"}.fa-hand-holding-dollar:before,.fa-hand-holding-usd:before{content:"\f4c0"}.fa-bacterium:before{content:"\e05a"}.fa-hand-pointer:before{content:"\f25a"}.fa-drum-steelpan:before{content:"\f56a"}.fa-hand-scissors:before{content:"\f257"}.fa-hands-praying:before,.fa-praying-hands:before{content:"\f684"}.fa-arrow-right-rotate:before,.fa-arrow-rotate-forward:before,.fa-arrow-rotate-right:before,.fa-redo:before{content:"\f01e"}.fa-biohazard:before{content:"\f780"}.fa-location-crosshairs:before,.fa-location:before{content:"\f601"}.fa-mars-double:before{content:"\f227"}.fa-child-dress:before{content:"\e59c"}.fa-users-between-lines:before{content:"\e591"}.fa-lungs-virus:before{content:"\e067"}.fa-face-grin-tears:before,.fa-grin-tears:before{content:"\f588"}.fa-phone:before{content:"\f095"}.fa-calendar-times:before,.fa-calendar-xmark:before{content:"\f273"}.fa-child-reaching:before{content:"\e59d"}.fa-head-side-virus:before{content:"\e064"}.fa-user-cog:before,.fa-user-gear:before{content:"\f4fe"}.fa-arrow-up-1-9:before,.fa-sort-numeric-up:before{content:"\f163"}.fa-door-closed:before{content:"\f52a"}.fa-shield-virus:before{content:"\e06c"}.fa-dice-six:before{content:"\f526"}.fa-mosquito-net:before{content:"\e52c"}.fa-bridge-water:before{content:"\e4ce"}.fa-person-booth:before{content:"\f756"}.fa-text-width:before{content:"\f035"}.fa-hat-wizard:before{content:"\f6e8"}.fa-pen-fancy:before{content:"\f5ac"}.fa-digging:before,.fa-person-digging:before{content:"\f85e"}.fa-trash:before{content:"\f1f8"}.fa-gauge-simple-med:before,.fa-gauge-simple:before,.fa-tachometer-average:before{content:"\f629"}.fa-book-medical:before{content:"\f7e6"}.fa-poo:before{content:"\f2fe"}.fa-quote-right-alt:before,.fa-quote-right:before{content:"\f10e"}.fa-shirt:before,.fa-t-shirt:before,.fa-tshirt:before{content:"\f553"}.fa-cubes:before{content:"\f1b3"}.fa-divide:before{content:"\f529"}.fa-tenge-sign:before,.fa-tenge:before{content:"\f7d7"}.fa-headphones:before{content:"\f025"}.fa-hands-holding:before{content:"\f4c2"}.fa-hands-clapping:before{content:"\e1a8"}.fa-republican:before{content:"\f75e"}.fa-arrow-left:before{content:"\f060"}.fa-person-circle-xmark:before{content:"\e543"}.fa-ruler:before{content:"\f545"}.fa-align-left:before{content:"\f036"}.fa-dice-d6:before{content:"\f6d1"}.fa-restroom:before{content:"\f7bd"}.fa-j:before{content:"\4a"}.fa-users-viewfinder:before{content:"\e595"}.fa-file-video:before{content:"\f1c8"}.fa-external-link-alt:before,.fa-up-right-from-square:before{content:"\f35d"}.fa-table-cells:before,.fa-th:before{content:"\f00a"}.fa-file-pdf:before{content:"\f1c1"}.fa-bible:before,.fa-book-bible:before{content:"\f647"}.fa-o:before{content:"\4f"}.fa-medkit:before,.fa-suitcase-medical:before{content:"\f0fa"}.fa-user-secret:before{content:"\f21b"}.fa-otter:before{content:"\f700"}.fa-female:before,.fa-person-dress:before{content:"\f182"}.fa-comment-dollar:before{content:"\f651"}.fa-briefcase-clock:before,.fa-business-time:before{content:"\f64a"}.fa-table-cells-large:before,.fa-th-large:before{content:"\f009"}.fa-book-tanakh:before,.fa-tanakh:before{content:"\f827"}.fa-phone-volume:before,.fa-volume-control-phone:before{content:"\f2a0"}.fa-hat-cowboy-side:before{content:"\f8c1"}.fa-clipboard-user:before{content:"\f7f3"}.fa-child:before{content:"\f1ae"}.fa-lira-sign:before{content:"\f195"}.fa-satellite:before{content:"\f7bf"}.fa-plane-lock:before{content:"\e558"}.fa-tag:before{content:"\f02b"}.fa-comment:before{content:"\f075"}.fa-birthday-cake:before,.fa-cake-candles:before,.fa-cake:before{content:"\f1fd"}.fa-envelope:before{content:"\f0e0"}.fa-angle-double-up:before,.fa-angles-up:before{content:"\f102"}.fa-paperclip:before{content:"\f0c6"}.fa-arrow-right-to-city:before{content:"\e4b3"}.fa-ribbon:before{content:"\f4d6"}.fa-lungs:before{content:"\f604"}.fa-arrow-up-9-1:before,.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-litecoin-sign:before{content:"\e1d3"}.fa-border-none:before{content:"\f850"}.fa-circle-nodes:before{content:"\e4e2"}.fa-parachute-box:before{content:"\f4cd"}.fa-indent:before{content:"\f03c"}.fa-truck-field-un:before{content:"\e58e"}.fa-hourglass-empty:before,.fa-hourglass:before{content:"\f254"}.fa-mountain:before{content:"\f6fc"}.fa-user-doctor:before,.fa-user-md:before{content:"\f0f0"}.fa-circle-info:before,.fa-info-circle:before{content:"\f05a"}.fa-cloud-meatball:before{content:"\f73b"}.fa-camera-alt:before,.fa-camera:before{content:"\f030"}.fa-square-virus:before{content:"\e578"}.fa-meteor:before{content:"\f753"}.fa-car-on:before{content:"\e4dd"}.fa-sleigh:before{content:"\f7cc"}.fa-arrow-down-1-9:before,.fa-sort-numeric-asc:before,.fa-sort-numeric-down:before{content:"\f162"}.fa-hand-holding-droplet:before,.fa-hand-holding-water:before{content:"\f4c1"}.fa-water:before{content:"\f773"}.fa-calendar-check:before{content:"\f274"}.fa-braille:before{content:"\f2a1"}.fa-prescription-bottle-alt:before,.fa-prescription-bottle-medical:before{content:"\f486"}.fa-landmark:before{content:"\f66f"}.fa-truck:before{content:"\f0d1"}.fa-crosshairs:before{content:"\f05b"}.fa-person-cane:before{content:"\e53c"}.fa-tent:before{content:"\e57d"}.fa-vest-patches:before{content:"\e086"}.fa-check-double:before{content:"\f560"}.fa-arrow-down-a-z:before,.fa-sort-alpha-asc:before,.fa-sort-alpha-down:before{content:"\f15d"}.fa-money-bill-wheat:before{content:"\e52a"}.fa-cookie:before{content:"\f563"}.fa-arrow-left-rotate:before,.fa-arrow-rotate-back:before,.fa-arrow-rotate-backward:before,.fa-arrow-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-hard-drive:before,.fa-hdd:before{content:"\f0a0"}.fa-face-grin-squint-tears:before,.fa-grin-squint-tears:before{content:"\f586"}.fa-dumbbell:before{content:"\f44b"}.fa-list-alt:before,.fa-rectangle-list:before{content:"\f022"}.fa-tarp-droplet:before{content:"\e57c"}.fa-house-medical-circle-check:before{content:"\e511"}.fa-person-skiing-nordic:before,.fa-skiing-nordic:before{content:"\f7ca"}.fa-calendar-plus:before{content:"\f271"}.fa-plane-arrival:before{content:"\f5af"}.fa-arrow-alt-circle-left:before,.fa-circle-left:before{content:"\f359"}.fa-subway:before,.fa-train-subway:before{content:"\f239"}.fa-chart-gantt:before{content:"\e0e4"}.fa-indian-rupee-sign:before,.fa-indian-rupee:before,.fa-inr:before{content:"\e1bc"}.fa-crop-alt:before,.fa-crop-simple:before{content:"\f565"}.fa-money-bill-1:before,.fa-money-bill-alt:before{content:"\f3d1"}.fa-left-long:before,.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-dna:before{content:"\f471"}.fa-virus-slash:before{content:"\e075"}.fa-minus:before,.fa-subtract:before{content:"\f068"}.fa-chess:before{content:"\f439"}.fa-arrow-left-long:before,.fa-long-arrow-left:before{content:"\f177"}.fa-plug-circle-check:before{content:"\e55c"}.fa-street-view:before{content:"\f21d"}.fa-franc-sign:before{content:"\e18f"}.fa-volume-off:before{content:"\f026"}.fa-american-sign-language-interpreting:before,.fa-asl-interpreting:before,.fa-hands-american-sign-language-interpreting:before,.fa-hands-asl-interpreting:before{content:"\f2a3"}.fa-cog:before,.fa-gear:before{content:"\f013"}.fa-droplet-slash:before,.fa-tint-slash:before{content:"\f5c7"}.fa-mosque:before{content:"\f678"}.fa-mosquito:before{content:"\e52b"}.fa-star-of-david:before{content:"\f69a"}.fa-person-military-rifle:before{content:"\e54b"}.fa-cart-shopping:before,.fa-shopping-cart:before{content:"\f07a"}.fa-vials:before{content:"\f493"}.fa-plug-circle-plus:before{content:"\e55f"}.fa-place-of-worship:before{content:"\f67f"}.fa-grip-vertical:before{content:"\f58e"}.fa-arrow-turn-up:before,.fa-level-up:before{content:"\f148"}.fa-u:before{content:"\55"}.fa-square-root-alt:before,.fa-square-root-variable:before{content:"\f698"}.fa-clock-four:before,.fa-clock:before{content:"\f017"}.fa-backward-step:before,.fa-step-backward:before{content:"\f048"}.fa-pallet:before{content:"\f482"}.fa-faucet:before{content:"\e005"}.fa-baseball-bat-ball:before{content:"\f432"}.fa-s:before{content:"\53"}.fa-timeline:before{content:"\e29c"}.fa-keyboard:before{content:"\f11c"}.fa-caret-down:before{content:"\f0d7"}.fa-clinic-medical:before,.fa-house-chimney-medical:before{content:"\f7f2"}.fa-temperature-3:before,.fa-temperature-three-quarters:before,.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-mobile-android-alt:before,.fa-mobile-screen:before{content:"\f3cf"}.fa-plane-up:before{content:"\e22d"}.fa-piggy-bank:before{content:"\f4d3"}.fa-battery-3:before,.fa-battery-half:before{content:"\f242"}.fa-mountain-city:before{content:"\e52e"}.fa-coins:before{content:"\f51e"}.fa-khanda:before{content:"\f66d"}.fa-sliders-h:before,.fa-sliders:before{content:"\f1de"}.fa-folder-tree:before{content:"\f802"}.fa-network-wired:before{content:"\f6ff"}.fa-map-pin:before{content:"\f276"}.fa-hamsa:before{content:"\f665"}.fa-cent-sign:before{content:"\e3f5"}.fa-flask:before{content:"\f0c3"}.fa-person-pregnant:before{content:"\e31e"}.fa-wand-sparkles:before{content:"\f72b"}.fa-ellipsis-v:before,.fa-ellipsis-vertical:before{content:"\f142"}.fa-ticket:before{content:"\f145"}.fa-power-off:before{content:"\f011"}.fa-long-arrow-alt-right:before,.fa-right-long:before{content:"\f30b"}.fa-flag-usa:before{content:"\f74d"}.fa-laptop-file:before{content:"\e51d"}.fa-teletype:before,.fa-tty:before{content:"\f1e4"}.fa-diagram-next:before{content:"\e476"}.fa-person-rifle:before{content:"\e54e"}.fa-house-medical-circle-exclamation:before{content:"\e512"}.fa-closed-captioning:before{content:"\f20a"}.fa-hiking:before,.fa-person-hiking:before{content:"\f6ec"}.fa-venus-double:before{content:"\f226"}.fa-images:before{content:"\f302"}.fa-calculator:before{content:"\f1ec"}.fa-people-pulling:before{content:"\e535"}.fa-n:before{content:"\4e"}.fa-cable-car:before,.fa-tram:before{content:"\f7da"}.fa-cloud-rain:before{content:"\f73d"}.fa-building-circle-xmark:before{content:"\e4d4"}.fa-ship:before{content:"\f21a"}.fa-arrows-down-to-line:before{content:"\e4b8"}.fa-download:before{content:"\f019"}.fa-face-grin:before,.fa-grin:before{content:"\f580"}.fa-backspace:before,.fa-delete-left:before{content:"\f55a"}.fa-eye-dropper-empty:before,.fa-eye-dropper:before,.fa-eyedropper:before{content:"\f1fb"}.fa-file-circle-check:before{content:"\e5a0"}.fa-forward:before{content:"\f04e"}.fa-mobile-android:before,.fa-mobile-phone:before,.fa-mobile:before{content:"\f3ce"}.fa-face-meh:before,.fa-meh:before{content:"\f11a"}.fa-align-center:before{content:"\f037"}.fa-book-dead:before,.fa-book-skull:before{content:"\f6b7"}.fa-drivers-license:before,.fa-id-card:before{content:"\f2c2"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-heart-circle-exclamation:before{content:"\e4fe"}.fa-home-alt:before,.fa-home-lg-alt:before,.fa-home:before,.fa-house:before{content:"\f015"}.fa-calendar-week:before{content:"\f784"}.fa-laptop-medical:before{content:"\f812"}.fa-b:before{content:"\42"}.fa-file-medical:before{content:"\f477"}.fa-dice-one:before{content:"\f525"}.fa-kiwi-bird:before{content:"\f535"}.fa-arrow-right-arrow-left:before,.fa-exchange:before{content:"\f0ec"}.fa-redo-alt:before,.fa-rotate-forward:before,.fa-rotate-right:before{content:"\f2f9"}.fa-cutlery:before,.fa-utensils:before{content:"\f2e7"}.fa-arrow-up-wide-short:before,.fa-sort-amount-up:before{content:"\f161"}.fa-mill-sign:before{content:"\e1ed"}.fa-bowl-rice:before{content:"\e2eb"}.fa-skull:before{content:"\f54c"}.fa-broadcast-tower:before,.fa-tower-broadcast:before{content:"\f519"}.fa-truck-pickup:before{content:"\f63c"}.fa-long-arrow-alt-up:before,.fa-up-long:before{content:"\f30c"}.fa-stop:before{content:"\f04d"}.fa-code-merge:before{content:"\f387"}.fa-upload:before{content:"\f093"}.fa-hurricane:before{content:"\f751"}.fa-mound:before{content:"\e52d"}.fa-toilet-portable:before{content:"\e583"}.fa-compact-disc:before{content:"\f51f"}.fa-file-arrow-down:before,.fa-file-download:before{content:"\f56d"}.fa-caravan:before{content:"\f8ff"}.fa-shield-cat:before{content:"\e572"}.fa-bolt:before,.fa-zap:before{content:"\f0e7"}.fa-glass-water:before{content:"\e4f4"}.fa-oil-well:before{content:"\e532"}.fa-vault:before{content:"\e2c5"}.fa-mars:before{content:"\f222"}.fa-toilet:before{content:"\f7d8"}.fa-plane-circle-xmark:before{content:"\e557"}.fa-cny:before,.fa-jpy:before,.fa-rmb:before,.fa-yen-sign:before,.fa-yen:before{content:"\f157"}.fa-rouble:before,.fa-rub:before,.fa-ruble-sign:before,.fa-ruble:before{content:"\f158"}.fa-sun:before{content:"\f185"}.fa-guitar:before{content:"\f7a6"}.fa-face-laugh-wink:before,.fa-laugh-wink:before{content:"\f59c"}.fa-horse-head:before{content:"\f7ab"}.fa-bore-hole:before{content:"\e4c3"}.fa-industry:before{content:"\f275"}.fa-arrow-alt-circle-down:before,.fa-circle-down:before{content:"\f358"}.fa-arrows-turn-to-dots:before{content:"\e4c1"}.fa-florin-sign:before{content:"\e184"}.fa-arrow-down-short-wide:before,.fa-sort-amount-desc:before,.fa-sort-amount-down-alt:before{content:"\f884"}.fa-less-than:before{content:"\3c"}.fa-angle-down:before{content:"\f107"}.fa-car-tunnel:before{content:"\e4de"}.fa-head-side-cough:before{content:"\e061"}.fa-grip-lines:before{content:"\f7a4"}.fa-thumbs-down:before{content:"\f165"}.fa-user-lock:before{content:"\f502"}.fa-arrow-right-long:before,.fa-long-arrow-right:before{content:"\f178"}.fa-anchor-circle-xmark:before{content:"\e4ac"}.fa-ellipsis-h:before,.fa-ellipsis:before{content:"\f141"}.fa-chess-pawn:before{content:"\f443"}.fa-first-aid:before,.fa-kit-medical:before{content:"\f479"}.fa-person-through-window:before{content:"\e5a9"}.fa-toolbox:before{content:"\f552"}.fa-hands-holding-circle:before{content:"\e4fb"}.fa-bug:before{content:"\f188"}.fa-credit-card-alt:before,.fa-credit-card:before{content:"\f09d"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-hand-holding-hand:before{content:"\e4f7"}.fa-book-open-reader:before,.fa-book-reader:before{content:"\f5da"}.fa-mountain-sun:before{content:"\e52f"}.fa-arrows-left-right-to-line:before{content:"\e4ba"}.fa-dice-d20:before{content:"\f6cf"}.fa-truck-droplet:before{content:"\e58c"}.fa-file-circle-xmark:before{content:"\e5a1"}.fa-temperature-arrow-up:before,.fa-temperature-up:before{content:"\e040"}.fa-medal:before{content:"\f5a2"}.fa-bed:before{content:"\f236"}.fa-h-square:before,.fa-square-h:before{content:"\f0fd"}.fa-podcast:before{content:"\f2ce"}.fa-temperature-4:before,.fa-temperature-full:before,.fa-thermometer-4:before,.fa-thermometer-full:before{content:"\f2c7"}.fa-bell:before{content:"\f0f3"}.fa-superscript:before{content:"\f12b"}.fa-plug-circle-xmark:before{content:"\e560"}.fa-star-of-life:before{content:"\f621"}.fa-phone-slash:before{content:"\f3dd"}.fa-paint-roller:before{content:"\f5aa"}.fa-hands-helping:before,.fa-handshake-angle:before{content:"\f4c4"}.fa-location-dot:before,.fa-map-marker-alt:before{content:"\f3c5"}.fa-file:before{content:"\f15b"}.fa-greater-than:before{content:"\3e"}.fa-person-swimming:before,.fa-swimmer:before{content:"\f5c4"}.fa-arrow-down:before{content:"\f063"}.fa-droplet:before,.fa-tint:before{content:"\f043"}.fa-eraser:before{content:"\f12d"}.fa-earth-america:before,.fa-earth-americas:before,.fa-earth:before,.fa-globe-americas:before{content:"\f57d"}.fa-person-burst:before{content:"\e53b"}.fa-dove:before{content:"\f4ba"}.fa-battery-0:before,.fa-battery-empty:before{content:"\f244"}.fa-socks:before{content:"\f696"}.fa-inbox:before{content:"\f01c"}.fa-section:before{content:"\e447"}.fa-gauge-high:before,.fa-tachometer-alt-fast:before,.fa-tachometer-alt:before{content:"\f625"}.fa-envelope-open-text:before{content:"\f658"}.fa-hospital-alt:before,.fa-hospital-wide:before,.fa-hospital:before{content:"\f0f8"}.fa-wine-bottle:before{content:"\f72f"}.fa-chess-rook:before{content:"\f447"}.fa-bars-staggered:before,.fa-reorder:before,.fa-stream:before{content:"\f550"}.fa-dharmachakra:before{content:"\f655"}.fa-hotdog:before{content:"\f80f"}.fa-blind:before,.fa-person-walking-with-cane:before{content:"\f29d"}.fa-drum:before{content:"\f569"}.fa-ice-cream:before{content:"\f810"}.fa-heart-circle-bolt:before{content:"\e4fc"}.fa-fax:before{content:"\f1ac"}.fa-paragraph:before{content:"\f1dd"}.fa-check-to-slot:before,.fa-vote-yea:before{content:"\f772"}.fa-star-half:before{content:"\f089"}.fa-boxes-alt:before,.fa-boxes-stacked:before,.fa-boxes:before{content:"\f468"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-assistive-listening-systems:before,.fa-ear-listen:before{content:"\f2a2"}.fa-tree-city:before{content:"\e587"}.fa-play:before{content:"\f04b"}.fa-font:before{content:"\f031"}.fa-rupiah-sign:before{content:"\e23d"}.fa-magnifying-glass:before,.fa-search:before{content:"\f002"}.fa-ping-pong-paddle-ball:before,.fa-table-tennis-paddle-ball:before,.fa-table-tennis:before{content:"\f45d"}.fa-diagnoses:before,.fa-person-dots-from-line:before{content:"\f470"}.fa-trash-can-arrow-up:before,.fa-trash-restore-alt:before{content:"\f82a"}.fa-naira-sign:before{content:"\e1f6"}.fa-cart-arrow-down:before{content:"\f218"}.fa-walkie-talkie:before{content:"\f8ef"}.fa-file-edit:before,.fa-file-pen:before{content:"\f31c"}.fa-receipt:before{content:"\f543"}.fa-pen-square:before,.fa-pencil-square:before,.fa-square-pen:before{content:"\f14b"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-person-circle-exclamation:before{content:"\e53f"}.fa-chevron-down:before{content:"\f078"}.fa-battery-5:before,.fa-battery-full:before,.fa-battery:before{content:"\f240"}.fa-skull-crossbones:before{content:"\f714"}.fa-code-compare:before{content:"\e13a"}.fa-list-dots:before,.fa-list-ul:before{content:"\f0ca"}.fa-school-lock:before{content:"\e56f"}.fa-tower-cell:before{content:"\e585"}.fa-down-long:before,.fa-long-arrow-alt-down:before{content:"\f309"}.fa-ranking-star:before{content:"\e561"}.fa-chess-king:before{content:"\f43f"}.fa-person-harassing:before{content:"\e549"}.fa-brazilian-real-sign:before{content:"\e46c"}.fa-landmark-alt:before,.fa-landmark-dome:before{content:"\f752"}.fa-arrow-up:before{content:"\f062"}.fa-television:before,.fa-tv-alt:before,.fa-tv:before{content:"\f26c"}.fa-shrimp:before{content:"\e448"}.fa-list-check:before,.fa-tasks:before{content:"\f0ae"}.fa-jug-detergent:before{content:"\e519"}.fa-circle-user:before,.fa-user-circle:before{content:"\f2bd"}.fa-user-shield:before{content:"\f505"}.fa-wind:before{content:"\f72e"}.fa-car-burst:before,.fa-car-crash:before{content:"\f5e1"}.fa-y:before{content:"\59"}.fa-person-snowboarding:before,.fa-snowboarding:before{content:"\f7ce"}.fa-shipping-fast:before,.fa-truck-fast:before{content:"\f48b"}.fa-fish:before{content:"\f578"}.fa-user-graduate:before{content:"\f501"}.fa-adjust:before,.fa-circle-half-stroke:before{content:"\f042"}.fa-clapperboard:before{content:"\e131"}.fa-circle-radiation:before,.fa-radiation-alt:before{content:"\f7ba"}.fa-baseball-ball:before,.fa-baseball:before{content:"\f433"}.fa-jet-fighter-up:before{content:"\e518"}.fa-diagram-project:before,.fa-project-diagram:before{content:"\f542"}.fa-copy:before{content:"\f0c5"}.fa-volume-mute:before,.fa-volume-times:before,.fa-volume-xmark:before{content:"\f6a9"}.fa-hand-sparkles:before{content:"\e05d"}.fa-grip-horizontal:before,.fa-grip:before{content:"\f58d"}.fa-share-from-square:before,.fa-share-square:before{content:"\f14d"}.fa-child-combatant:before,.fa-child-rifle:before{content:"\e4e0"}.fa-gun:before{content:"\e19b"}.fa-phone-square:before,.fa-square-phone:before{content:"\f098"}.fa-add:before,.fa-plus:before{content:"\2b"}.fa-expand:before{content:"\f065"}.fa-computer:before{content:"\e4e5"}.fa-close:before,.fa-multiply:before,.fa-remove:before,.fa-times:before,.fa-xmark:before{content:"\f00d"}.fa-arrows-up-down-left-right:before,.fa-arrows:before{content:"\f047"}.fa-chalkboard-teacher:before,.fa-chalkboard-user:before{content:"\f51c"}.fa-peso-sign:before{content:"\e222"}.fa-building-shield:before{content:"\e4d8"}.fa-baby:before{content:"\f77c"}.fa-users-line:before{content:"\e592"}.fa-quote-left-alt:before,.fa-quote-left:before{content:"\f10d"}.fa-tractor:before{content:"\f722"}.fa-trash-arrow-up:before,.fa-trash-restore:before{content:"\f829"}.fa-arrow-down-up-lock:before{content:"\e4b0"}.fa-lines-leaning:before{content:"\e51e"}.fa-ruler-combined:before{content:"\f546"}.fa-copyright:before{content:"\f1f9"}.fa-equals:before{content:"\3d"}.fa-blender:before{content:"\f517"}.fa-teeth:before{content:"\f62e"}.fa-ils:before,.fa-shekel-sign:before,.fa-shekel:before,.fa-sheqel-sign:before,.fa-sheqel:before{content:"\f20b"}.fa-map:before{content:"\f279"}.fa-rocket:before{content:"\f135"}.fa-photo-film:before,.fa-photo-video:before{content:"\f87c"}.fa-folder-minus:before{content:"\f65d"}.fa-store:before{content:"\f54e"}.fa-arrow-trend-up:before{content:"\e098"}.fa-plug-circle-minus:before{content:"\e55e"}.fa-sign-hanging:before,.fa-sign:before{content:"\f4d9"}.fa-bezier-curve:before{content:"\f55b"}.fa-bell-slash:before{content:"\f1f6"}.fa-tablet-android:before,.fa-tablet:before{content:"\f3fb"}.fa-school-flag:before{content:"\e56e"}.fa-fill:before{content:"\f575"}.fa-angle-up:before{content:"\f106"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-holly-berry:before{content:"\f7aa"}.fa-chevron-left:before{content:"\f053"}.fa-bacteria:before{content:"\e059"}.fa-hand-lizard:before{content:"\f258"}.fa-notdef:before{content:"\e1fe"}.fa-disease:before{content:"\f7fa"}.fa-briefcase-medical:before{content:"\f469"}.fa-genderless:before{content:"\f22d"}.fa-chevron-right:before{content:"\f054"}.fa-retweet:before{content:"\f079"}.fa-car-alt:before,.fa-car-rear:before{content:"\f5de"}.fa-pump-soap:before{content:"\e06b"}.fa-video-slash:before{content:"\f4e2"}.fa-battery-2:before,.fa-battery-quarter:before{content:"\f243"}.fa-radio:before{content:"\f8d7"}.fa-baby-carriage:before,.fa-carriage-baby:before{content:"\f77d"}.fa-traffic-light:before{content:"\f637"}.fa-thermometer:before{content:"\f491"}.fa-vr-cardboard:before{content:"\f729"}.fa-hand-middle-finger:before{content:"\f806"}.fa-percent:before,.fa-percentage:before{content:"\25"}.fa-truck-moving:before{content:"\f4df"}.fa-glass-water-droplet:before{content:"\e4f5"}.fa-display:before{content:"\e163"}.fa-face-smile:before,.fa-smile:before{content:"\f118"}.fa-thumb-tack:before,.fa-thumbtack:before{content:"\f08d"}.fa-trophy:before{content:"\f091"}.fa-person-praying:before,.fa-pray:before{content:"\f683"}.fa-hammer:before{content:"\f6e3"}.fa-hand-peace:before{content:"\f25b"}.fa-rotate:before,.fa-sync-alt:before{content:"\f2f1"}.fa-spinner:before{content:"\f110"}.fa-robot:before{content:"\f544"}.fa-peace:before{content:"\f67c"}.fa-cogs:before,.fa-gears:before{content:"\f085"}.fa-warehouse:before{content:"\f494"}.fa-arrow-up-right-dots:before{content:"\e4b7"}.fa-splotch:before{content:"\f5bc"}.fa-face-grin-hearts:before,.fa-grin-hearts:before{content:"\f584"}.fa-dice-four:before{content:"\f524"}.fa-sim-card:before{content:"\f7c4"}.fa-transgender-alt:before,.fa-transgender:before{content:"\f225"}.fa-mercury:before{content:"\f223"}.fa-arrow-turn-down:before,.fa-level-down:before{content:"\f149"}.fa-person-falling-burst:before{content:"\e547"}.fa-award:before{content:"\f559"}.fa-ticket-alt:before,.fa-ticket-simple:before{content:"\f3ff"}.fa-building:before{content:"\f1ad"}.fa-angle-double-left:before,.fa-angles-left:before{content:"\f100"}.fa-qrcode:before{content:"\f029"}.fa-clock-rotate-left:before,.fa-history:before{content:"\f1da"}.fa-face-grin-beam-sweat:before,.fa-grin-beam-sweat:before{content:"\f583"}.fa-arrow-right-from-file:before,.fa-file-export:before{content:"\f56e"}.fa-shield-blank:before,.fa-shield:before{content:"\f132"}.fa-arrow-up-short-wide:before,.fa-sort-amount-up-alt:before{content:"\f885"}.fa-house-medical:before{content:"\e3b2"}.fa-golf-ball-tee:before,.fa-golf-ball:before{content:"\f450"}.fa-chevron-circle-left:before,.fa-circle-chevron-left:before{content:"\f137"}.fa-house-chimney-window:before{content:"\e00d"}.fa-pen-nib:before{content:"\f5ad"}.fa-tent-arrow-turn-left:before{content:"\e580"}.fa-tents:before{content:"\e582"}.fa-magic:before,.fa-wand-magic:before{content:"\f0d0"}.fa-dog:before{content:"\f6d3"}.fa-carrot:before{content:"\f787"}.fa-moon:before{content:"\f186"}.fa-wine-glass-alt:before,.fa-wine-glass-empty:before{content:"\f5ce"}.fa-cheese:before{content:"\f7ef"}.fa-yin-yang:before{content:"\f6ad"}.fa-music:before{content:"\f001"}.fa-code-commit:before{content:"\f386"}.fa-temperature-low:before{content:"\f76b"}.fa-biking:before,.fa-person-biking:before{content:"\f84a"}.fa-broom:before{content:"\f51a"}.fa-shield-heart:before{content:"\e574"}.fa-gopuram:before{content:"\f664"}.fa-earth-oceania:before,.fa-globe-oceania:before{content:"\e47b"}.fa-square-xmark:before,.fa-times-square:before,.fa-xmark-square:before{content:"\f2d3"}.fa-hashtag:before{content:"\23"}.fa-expand-alt:before,.fa-up-right-and-down-left-from-center:before{content:"\f424"}.fa-oil-can:before{content:"\f613"}.fa-t:before{content:"\54"}.fa-hippo:before{content:"\f6ed"}.fa-chart-column:before{content:"\e0e3"}.fa-infinity:before{content:"\f534"}.fa-vial-circle-check:before{content:"\e596"}.fa-person-arrow-down-to-line:before{content:"\e538"}.fa-voicemail:before{content:"\f897"}.fa-fan:before{content:"\f863"}.fa-person-walking-luggage:before{content:"\e554"}.fa-arrows-alt-v:before,.fa-up-down:before{content:"\f338"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-calendar:before{content:"\f133"}.fa-trailer:before{content:"\e041"}.fa-bahai:before,.fa-haykal:before{content:"\f666"}.fa-sd-card:before{content:"\f7c2"}.fa-dragon:before{content:"\f6d5"}.fa-shoe-prints:before{content:"\f54b"}.fa-circle-plus:before,.fa-plus-circle:before{content:"\f055"}.fa-face-grin-tongue-wink:before,.fa-grin-tongue-wink:before{content:"\f58b"}.fa-hand-holding:before{content:"\f4bd"}.fa-plug-circle-exclamation:before{content:"\e55d"}.fa-chain-broken:before,.fa-chain-slash:before,.fa-link-slash:before,.fa-unlink:before{content:"\f127"}.fa-clone:before{content:"\f24d"}.fa-person-walking-arrow-loop-left:before{content:"\e551"}.fa-arrow-up-z-a:before,.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-fire-alt:before,.fa-fire-flame-curved:before{content:"\f7e4"}.fa-tornado:before{content:"\f76f"}.fa-file-circle-plus:before{content:"\e494"}.fa-book-quran:before,.fa-quran:before{content:"\f687"}.fa-anchor:before{content:"\f13d"}.fa-border-all:before{content:"\f84c"}.fa-angry:before,.fa-face-angry:before{content:"\f556"}.fa-cookie-bite:before{content:"\f564"}.fa-arrow-trend-down:before{content:"\e097"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-draw-polygon:before{content:"\f5ee"}.fa-balance-scale:before,.fa-scale-balanced:before{content:"\f24e"}.fa-gauge-simple-high:before,.fa-tachometer-fast:before,.fa-tachometer:before{content:"\f62a"}.fa-shower:before{content:"\f2cc"}.fa-desktop-alt:before,.fa-desktop:before{content:"\f390"}.fa-m:before{content:"\4d"}.fa-table-list:before,.fa-th-list:before{content:"\f00b"}.fa-comment-sms:before,.fa-sms:before{content:"\f7cd"}.fa-book:before{content:"\f02d"}.fa-user-plus:before{content:"\f234"}.fa-check:before{content:"\f00c"}.fa-battery-4:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-house-circle-check:before{content:"\e509"}.fa-angle-left:before{content:"\f104"}.fa-diagram-successor:before{content:"\e47a"}.fa-truck-arrow-right:before{content:"\e58b"}.fa-arrows-split-up-and-left:before{content:"\e4bc"}.fa-fist-raised:before,.fa-hand-fist:before{content:"\f6de"}.fa-cloud-moon:before{content:"\f6c3"}.fa-briefcase:before{content:"\f0b1"}.fa-person-falling:before{content:"\e546"}.fa-image-portrait:before,.fa-portrait:before{content:"\f3e0"}.fa-user-tag:before{content:"\f507"}.fa-rug:before{content:"\e569"}.fa-earth-europe:before,.fa-globe-europe:before{content:"\f7a2"}.fa-cart-flatbed-suitcase:before,.fa-luggage-cart:before{content:"\f59d"}.fa-rectangle-times:before,.fa-rectangle-xmark:before,.fa-times-rectangle:before,.fa-window-close:before{content:"\f410"}.fa-baht-sign:before{content:"\e0ac"}.fa-book-open:before{content:"\f518"}.fa-book-journal-whills:before,.fa-journal-whills:before{content:"\f66a"}.fa-handcuffs:before{content:"\e4f8"}.fa-exclamation-triangle:before,.fa-triangle-exclamation:before,.fa-warning:before{content:"\f071"}.fa-database:before{content:"\f1c0"}.fa-arrow-turn-right:before,.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-bottle-droplet:before{content:"\e4c4"}.fa-mask-face:before{content:"\e1d7"}.fa-hill-rockslide:before{content:"\e508"}.fa-exchange-alt:before,.fa-right-left:before{content:"\f362"}.fa-paper-plane:before{content:"\f1d8"}.fa-road-circle-exclamation:before{content:"\e565"}.fa-dungeon:before{content:"\f6d9"}.fa-align-right:before{content:"\f038"}.fa-money-bill-1-wave:before,.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-life-ring:before{content:"\f1cd"}.fa-hands:before,.fa-sign-language:before,.fa-signing:before{content:"\f2a7"}.fa-calendar-day:before{content:"\f783"}.fa-ladder-water:before,.fa-swimming-pool:before,.fa-water-ladder:before{content:"\f5c5"}.fa-arrows-up-down:before,.fa-arrows-v:before{content:"\f07d"}.fa-face-grimace:before,.fa-grimace:before{content:"\f57f"}.fa-wheelchair-alt:before,.fa-wheelchair-move:before{content:"\e2ce"}.fa-level-down-alt:before,.fa-turn-down:before{content:"\f3be"}.fa-person-walking-arrow-right:before{content:"\e552"}.fa-envelope-square:before,.fa-square-envelope:before{content:"\f199"}.fa-dice:before{content:"\f522"}.fa-bowling-ball:before{content:"\f436"}.fa-brain:before{content:"\f5dc"}.fa-band-aid:before,.fa-bandage:before{content:"\f462"}.fa-calendar-minus:before{content:"\f272"}.fa-circle-xmark:before,.fa-times-circle:before,.fa-xmark-circle:before{content:"\f057"}.fa-gifts:before{content:"\f79c"}.fa-hotel:before{content:"\f594"}.fa-earth-asia:before,.fa-globe-asia:before{content:"\f57e"}.fa-id-card-alt:before,.fa-id-card-clip:before{content:"\f47f"}.fa-magnifying-glass-plus:before,.fa-search-plus:before{content:"\f00e"}.fa-thumbs-up:before{content:"\f164"}.fa-user-clock:before{content:"\f4fd"}.fa-allergies:before,.fa-hand-dots:before{content:"\f461"}.fa-file-invoice:before{content:"\f570"}.fa-window-minimize:before{content:"\f2d1"}.fa-coffee:before,.fa-mug-saucer:before{content:"\f0f4"}.fa-brush:before{content:"\f55d"}.fa-mask:before{content:"\f6fa"}.fa-magnifying-glass-minus:before,.fa-search-minus:before{content:"\f010"}.fa-ruler-vertical:before{content:"\f548"}.fa-user-alt:before,.fa-user-large:before{content:"\f406"}.fa-train-tram:before{content:"\e5b4"}.fa-user-nurse:before{content:"\f82f"}.fa-syringe:before{content:"\f48e"}.fa-cloud-sun:before{content:"\f6c4"}.fa-stopwatch-20:before{content:"\e06f"}.fa-square-full:before{content:"\f45c"}.fa-magnet:before{content:"\f076"}.fa-jar:before{content:"\e516"}.fa-note-sticky:before,.fa-sticky-note:before{content:"\f249"}.fa-bug-slash:before{content:"\e490"}.fa-arrow-up-from-water-pump:before{content:"\e4b6"}.fa-bone:before{content:"\f5d7"}.fa-user-injured:before{content:"\f728"}.fa-face-sad-tear:before,.fa-sad-tear:before{content:"\f5b4"}.fa-plane:before{content:"\f072"}.fa-tent-arrows-down:before{content:"\e581"}.fa-exclamation:before{content:"\21"}.fa-arrows-spin:before{content:"\e4bb"}.fa-print:before{content:"\f02f"}.fa-try:before,.fa-turkish-lira-sign:before,.fa-turkish-lira:before{content:"\e2bb"}.fa-dollar-sign:before,.fa-dollar:before,.fa-usd:before{content:"\24"}.fa-x:before{content:"\58"}.fa-magnifying-glass-dollar:before,.fa-search-dollar:before{content:"\f688"}.fa-users-cog:before,.fa-users-gear:before{content:"\f509"}.fa-person-military-pointing:before{content:"\e54a"}.fa-bank:before,.fa-building-columns:before,.fa-institution:before,.fa-museum:before,.fa-university:before{content:"\f19c"}.fa-umbrella:before{content:"\f0e9"}.fa-trowel:before{content:"\e589"}.fa-d:before{content:"\44"}.fa-stapler:before{content:"\e5af"}.fa-masks-theater:before,.fa-theater-masks:before{content:"\f630"}.fa-kip-sign:before{content:"\e1c4"}.fa-hand-point-left:before{content:"\f0a5"}.fa-handshake-alt:before,.fa-handshake-simple:before{content:"\f4c6"}.fa-fighter-jet:before,.fa-jet-fighter:before{content:"\f0fb"}.fa-share-alt-square:before,.fa-square-share-nodes:before{content:"\f1e1"}.fa-barcode:before{content:"\f02a"}.fa-plus-minus:before{content:"\e43c"}.fa-video-camera:before,.fa-video:before{content:"\f03d"}.fa-graduation-cap:before,.fa-mortar-board:before{content:"\f19d"}.fa-hand-holding-medical:before{content:"\e05c"}.fa-person-circle-check:before{content:"\e53e"}.fa-level-up-alt:before,.fa-turn-up:before{content:"\f3bf"} +.fa-sr-only,.fa-sr-only-focusable:not(:focus),.sr-only,.sr-only-focusable:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}:host,:root{--fa-style-family-brands:"Font Awesome 6 Brands";--fa-font-brands:normal 400 1em/1 "Font Awesome 6 Brands"}@font-face{font-family:"Font Awesome 6 Brands";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.ttf) format("truetype")}.fa-brands,.fab{font-weight:400}.fa-monero:before{content:"\f3d0"}.fa-hooli:before{content:"\f427"}.fa-yelp:before{content:"\f1e9"}.fa-cc-visa:before{content:"\f1f0"}.fa-lastfm:before{content:"\f202"}.fa-shopware:before{content:"\f5b5"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-aws:before{content:"\f375"}.fa-redhat:before{content:"\f7bc"}.fa-yoast:before{content:"\f2b1"}.fa-cloudflare:before{content:"\e07d"}.fa-ups:before{content:"\f7e0"}.fa-wpexplorer:before{content:"\f2de"}.fa-dyalog:before{content:"\f399"}.fa-bity:before{content:"\f37a"}.fa-stackpath:before{content:"\f842"}.fa-buysellads:before{content:"\f20d"}.fa-first-order:before{content:"\f2b0"}.fa-modx:before{content:"\f285"}.fa-guilded:before{content:"\e07e"}.fa-vnv:before{content:"\f40b"}.fa-js-square:before,.fa-square-js:before{content:"\f3b9"}.fa-microsoft:before{content:"\f3ca"}.fa-qq:before{content:"\f1d6"}.fa-orcid:before{content:"\f8d2"}.fa-java:before{content:"\f4e4"}.fa-invision:before{content:"\f7b0"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-centercode:before{content:"\f380"}.fa-glide-g:before{content:"\f2a6"}.fa-drupal:before{content:"\f1a9"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-unity:before{content:"\e049"}.fa-whmcs:before{content:"\f40d"}.fa-rocketchat:before{content:"\f3e8"}.fa-vk:before{content:"\f189"}.fa-untappd:before{content:"\f405"}.fa-mailchimp:before{content:"\f59e"}.fa-css3-alt:before{content:"\f38b"}.fa-reddit-square:before,.fa-square-reddit:before{content:"\f1a2"}.fa-vimeo-v:before{content:"\f27d"}.fa-contao:before{content:"\f26d"}.fa-square-font-awesome:before{content:"\e5ad"}.fa-deskpro:before{content:"\f38f"}.fa-sistrix:before{content:"\f3ee"}.fa-instagram-square:before,.fa-square-instagram:before{content:"\e055"}.fa-battle-net:before{content:"\f835"}.fa-the-red-yeti:before{content:"\f69d"}.fa-hacker-news-square:before,.fa-square-hacker-news:before{content:"\f3af"}.fa-edge:before{content:"\f282"}.fa-threads:before{content:"\e618"}.fa-napster:before{content:"\f3d2"}.fa-snapchat-square:before,.fa-square-snapchat:before{content:"\f2ad"}.fa-google-plus-g:before{content:"\f0d5"}.fa-artstation:before{content:"\f77a"}.fa-markdown:before{content:"\f60f"}.fa-sourcetree:before{content:"\f7d3"}.fa-google-plus:before{content:"\f2b3"}.fa-diaspora:before{content:"\f791"}.fa-foursquare:before{content:"\f180"}.fa-stack-overflow:before{content:"\f16c"}.fa-github-alt:before{content:"\f113"}.fa-phoenix-squadron:before{content:"\f511"}.fa-pagelines:before{content:"\f18c"}.fa-algolia:before{content:"\f36c"}.fa-red-river:before{content:"\f3e3"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-safari:before{content:"\f267"}.fa-google:before{content:"\f1a0"}.fa-font-awesome-alt:before,.fa-square-font-awesome-stroke:before{content:"\f35c"}.fa-atlassian:before{content:"\f77b"}.fa-linkedin-in:before{content:"\f0e1"}.fa-digital-ocean:before{content:"\f391"}.fa-nimblr:before{content:"\f5a8"}.fa-chromecast:before{content:"\f838"}.fa-evernote:before{content:"\f839"}.fa-hacker-news:before{content:"\f1d4"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-adversal:before{content:"\f36a"}.fa-creative-commons:before{content:"\f25e"}.fa-watchman-monitoring:before{content:"\e087"}.fa-fonticons:before{content:"\f280"}.fa-weixin:before{content:"\f1d7"}.fa-shirtsinbulk:before{content:"\f214"}.fa-codepen:before{content:"\f1cb"}.fa-git-alt:before{content:"\f841"}.fa-lyft:before{content:"\f3c3"}.fa-rev:before{content:"\f5b2"}.fa-windows:before{content:"\f17a"}.fa-wizards-of-the-coast:before{content:"\f730"}.fa-square-viadeo:before,.fa-viadeo-square:before{content:"\f2aa"}.fa-meetup:before{content:"\f2e0"}.fa-centos:before{content:"\f789"}.fa-adn:before{content:"\f170"}.fa-cloudsmith:before{content:"\f384"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-dribbble-square:before,.fa-square-dribbble:before{content:"\f397"}.fa-codiepie:before{content:"\f284"}.fa-node:before{content:"\f419"}.fa-mix:before{content:"\f3cb"}.fa-steam:before{content:"\f1b6"}.fa-cc-apple-pay:before{content:"\f416"}.fa-scribd:before{content:"\f28a"}.fa-debian:before{content:"\e60b"}.fa-openid:before{content:"\f19b"}.fa-instalod:before{content:"\e081"}.fa-expeditedssl:before{content:"\f23e"}.fa-sellcast:before{content:"\f2da"}.fa-square-twitter:before,.fa-twitter-square:before{content:"\f081"}.fa-r-project:before{content:"\f4f7"}.fa-delicious:before{content:"\f1a5"}.fa-freebsd:before{content:"\f3a4"}.fa-vuejs:before{content:"\f41f"}.fa-accusoft:before{content:"\f369"}.fa-ioxhost:before{content:"\f208"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-app-store:before{content:"\f36f"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-itunes-note:before{content:"\f3b5"}.fa-golang:before{content:"\e40f"}.fa-kickstarter:before{content:"\f3bb"}.fa-grav:before{content:"\f2d6"}.fa-weibo:before{content:"\f18a"}.fa-uncharted:before{content:"\e084"}.fa-firstdraft:before{content:"\f3a1"}.fa-square-youtube:before,.fa-youtube-square:before{content:"\f431"}.fa-wikipedia-w:before{content:"\f266"}.fa-rendact:before,.fa-wpressr:before{content:"\f3e4"}.fa-angellist:before{content:"\f209"}.fa-galactic-republic:before{content:"\f50c"}.fa-nfc-directional:before{content:"\e530"}.fa-skype:before{content:"\f17e"}.fa-joget:before{content:"\f3b7"}.fa-fedora:before{content:"\f798"}.fa-stripe-s:before{content:"\f42a"}.fa-meta:before{content:"\e49b"}.fa-laravel:before{content:"\f3bd"}.fa-hotjar:before{content:"\f3b1"}.fa-bluetooth-b:before{content:"\f294"}.fa-sticker-mule:before{content:"\f3f7"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-hips:before{content:"\f452"}.fa-behance:before{content:"\f1b4"}.fa-reddit:before{content:"\f1a1"}.fa-discord:before{content:"\f392"}.fa-chrome:before{content:"\f268"}.fa-app-store-ios:before{content:"\f370"}.fa-cc-discover:before{content:"\f1f2"}.fa-wpbeginner:before{content:"\f297"}.fa-confluence:before{content:"\f78d"}.fa-mdb:before{content:"\f8ca"}.fa-dochub:before{content:"\f394"}.fa-accessible-icon:before{content:"\f368"}.fa-ebay:before{content:"\f4f4"}.fa-amazon:before{content:"\f270"}.fa-unsplash:before{content:"\e07c"}.fa-yarn:before{content:"\f7e3"}.fa-square-steam:before,.fa-steam-square:before{content:"\f1b7"}.fa-500px:before{content:"\f26e"}.fa-square-vimeo:before,.fa-vimeo-square:before{content:"\f194"}.fa-asymmetrik:before{content:"\f372"}.fa-font-awesome-flag:before,.fa-font-awesome-logo-full:before,.fa-font-awesome:before{content:"\f2b4"}.fa-gratipay:before{content:"\f184"}.fa-apple:before{content:"\f179"}.fa-hive:before{content:"\e07f"}.fa-gitkraken:before{content:"\f3a6"}.fa-keybase:before{content:"\f4f5"}.fa-apple-pay:before{content:"\f415"}.fa-padlet:before{content:"\e4a0"}.fa-amazon-pay:before{content:"\f42c"}.fa-github-square:before,.fa-square-github:before{content:"\f092"}.fa-stumbleupon:before{content:"\f1a4"}.fa-fedex:before{content:"\f797"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-shopify:before{content:"\e057"}.fa-neos:before{content:"\f612"}.fa-square-threads:before{content:"\e619"}.fa-hackerrank:before{content:"\f5f7"}.fa-researchgate:before{content:"\f4f8"}.fa-swift:before{content:"\f8e1"}.fa-angular:before{content:"\f420"}.fa-speakap:before{content:"\f3f3"}.fa-angrycreative:before{content:"\f36e"}.fa-y-combinator:before{content:"\f23b"}.fa-empire:before{content:"\f1d1"}.fa-envira:before{content:"\f299"}.fa-gitlab-square:before,.fa-square-gitlab:before{content:"\e5ae"}.fa-studiovinari:before{content:"\f3f8"}.fa-pied-piper:before{content:"\f2ae"}.fa-wordpress:before{content:"\f19a"}.fa-product-hunt:before{content:"\f288"}.fa-firefox:before{content:"\f269"}.fa-linode:before{content:"\f2b8"}.fa-goodreads:before{content:"\f3a8"}.fa-odnoklassniki-square:before,.fa-square-odnoklassniki:before{content:"\f264"}.fa-jsfiddle:before{content:"\f1cc"}.fa-sith:before{content:"\f512"}.fa-themeisle:before{content:"\f2b2"}.fa-page4:before{content:"\f3d7"}.fa-hashnode:before{content:"\e499"}.fa-react:before{content:"\f41b"}.fa-cc-paypal:before{content:"\f1f4"}.fa-squarespace:before{content:"\f5be"}.fa-cc-stripe:before{content:"\f1f5"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-bitcoin:before{content:"\f379"}.fa-keycdn:before{content:"\f3ba"}.fa-opera:before{content:"\f26a"}.fa-itch-io:before{content:"\f83a"}.fa-umbraco:before{content:"\f8e8"}.fa-galactic-senate:before{content:"\f50d"}.fa-ubuntu:before{content:"\f7df"}.fa-draft2digital:before{content:"\f396"}.fa-stripe:before{content:"\f429"}.fa-houzz:before{content:"\f27c"}.fa-gg:before{content:"\f260"}.fa-dhl:before{content:"\f790"}.fa-pinterest-square:before,.fa-square-pinterest:before{content:"\f0d3"}.fa-xing:before{content:"\f168"}.fa-blackberry:before{content:"\f37b"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-playstation:before{content:"\f3df"}.fa-quinscape:before{content:"\f459"}.fa-less:before{content:"\f41d"}.fa-blogger-b:before{content:"\f37d"}.fa-opencart:before{content:"\f23d"}.fa-vine:before{content:"\f1ca"}.fa-paypal:before{content:"\f1ed"}.fa-gitlab:before{content:"\f296"}.fa-typo3:before{content:"\f42b"}.fa-reddit-alien:before{content:"\f281"}.fa-yahoo:before{content:"\f19e"}.fa-dailymotion:before{content:"\e052"}.fa-affiliatetheme:before{content:"\f36b"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-bootstrap:before{content:"\f836"}.fa-odnoklassniki:before{content:"\f263"}.fa-nfc-symbol:before{content:"\e531"}.fa-ethereum:before{content:"\f42e"}.fa-speaker-deck:before{content:"\f83c"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-patreon:before{content:"\f3d9"}.fa-avianex:before{content:"\f374"}.fa-ello:before{content:"\f5f1"}.fa-gofore:before{content:"\f3a7"}.fa-bimobject:before{content:"\f378"}.fa-facebook-f:before{content:"\f39e"}.fa-google-plus-square:before,.fa-square-google-plus:before{content:"\f0d4"}.fa-mandalorian:before{content:"\f50f"}.fa-first-order-alt:before{content:"\f50a"}.fa-osi:before{content:"\f41a"}.fa-google-wallet:before{content:"\f1ee"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-periscope:before{content:"\f3da"}.fa-fulcrum:before{content:"\f50b"}.fa-cloudscale:before{content:"\f383"}.fa-forumbee:before{content:"\f211"}.fa-mizuni:before{content:"\f3cc"}.fa-schlix:before{content:"\f3ea"}.fa-square-xing:before,.fa-xing-square:before{content:"\f169"}.fa-bandcamp:before{content:"\f2d5"}.fa-wpforms:before{content:"\f298"}.fa-cloudversify:before{content:"\f385"}.fa-usps:before{content:"\f7e1"}.fa-megaport:before{content:"\f5a3"}.fa-magento:before{content:"\f3c4"}.fa-spotify:before{content:"\f1bc"}.fa-optin-monster:before{content:"\f23c"}.fa-fly:before{content:"\f417"}.fa-aviato:before{content:"\f421"}.fa-itunes:before{content:"\f3b4"}.fa-cuttlefish:before{content:"\f38c"}.fa-blogger:before{content:"\f37c"}.fa-flickr:before{content:"\f16e"}.fa-viber:before{content:"\f409"}.fa-soundcloud:before{content:"\f1be"}.fa-digg:before{content:"\f1a6"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-symfony:before{content:"\f83d"}.fa-maxcdn:before{content:"\f136"}.fa-etsy:before{content:"\f2d7"}.fa-facebook-messenger:before{content:"\f39f"}.fa-audible:before{content:"\f373"}.fa-think-peaks:before{content:"\f731"}.fa-bilibili:before{content:"\e3d9"}.fa-erlang:before{content:"\f39d"}.fa-x-twitter:before{content:"\e61b"}.fa-cotton-bureau:before{content:"\f89e"}.fa-dashcube:before{content:"\f210"}.fa-42-group:before,.fa-innosoft:before{content:"\e080"}.fa-stack-exchange:before{content:"\f18d"}.fa-elementor:before{content:"\f430"}.fa-pied-piper-square:before,.fa-square-pied-piper:before{content:"\e01e"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-palfed:before{content:"\f3d8"}.fa-superpowers:before{content:"\f2dd"}.fa-resolving:before{content:"\f3e7"}.fa-xbox:before{content:"\f412"}.fa-searchengin:before{content:"\f3eb"}.fa-tiktok:before{content:"\e07b"}.fa-facebook-square:before,.fa-square-facebook:before{content:"\f082"}.fa-renren:before{content:"\f18b"}.fa-linux:before{content:"\f17c"}.fa-glide:before{content:"\f2a5"}.fa-linkedin:before{content:"\f08c"}.fa-hubspot:before{content:"\f3b2"}.fa-deploydog:before{content:"\f38e"}.fa-twitch:before{content:"\f1e8"}.fa-ravelry:before{content:"\f2d9"}.fa-mixer:before{content:"\e056"}.fa-lastfm-square:before,.fa-square-lastfm:before{content:"\f203"}.fa-vimeo:before{content:"\f40a"}.fa-mendeley:before{content:"\f7b3"}.fa-uniregistry:before{content:"\f404"}.fa-figma:before{content:"\f799"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-dropbox:before{content:"\f16b"}.fa-instagram:before{content:"\f16d"}.fa-cmplid:before{content:"\e360"}.fa-facebook:before{content:"\f09a"}.fa-gripfire:before{content:"\f3ac"}.fa-jedi-order:before{content:"\f50e"}.fa-uikit:before{content:"\f403"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-phabricator:before{content:"\f3db"}.fa-ussunnah:before{content:"\f407"}.fa-earlybirds:before{content:"\f39a"}.fa-trade-federation:before{content:"\f513"}.fa-autoprefixer:before{content:"\f41c"}.fa-whatsapp:before{content:"\f232"}.fa-slideshare:before{content:"\f1e7"}.fa-google-play:before{content:"\f3ab"}.fa-viadeo:before{content:"\f2a9"}.fa-line:before{content:"\f3c0"}.fa-google-drive:before{content:"\f3aa"}.fa-servicestack:before{content:"\f3ec"}.fa-simplybuilt:before{content:"\f215"}.fa-bitbucket:before{content:"\f171"}.fa-imdb:before{content:"\f2d8"}.fa-deezer:before{content:"\e077"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-jira:before{content:"\f7b1"}.fa-docker:before{content:"\f395"}.fa-screenpal:before{content:"\e570"}.fa-bluetooth:before{content:"\f293"}.fa-gitter:before{content:"\f426"}.fa-d-and-d:before{content:"\f38d"}.fa-microblog:before{content:"\e01a"}.fa-cc-diners-club:before{content:"\f24c"}.fa-gg-circle:before{content:"\f261"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-yandex:before{content:"\f413"}.fa-readme:before{content:"\f4d5"}.fa-html5:before{content:"\f13b"}.fa-sellsy:before{content:"\f213"}.fa-sass:before{content:"\f41e"}.fa-wirsindhandwerk:before,.fa-wsh:before{content:"\e2d0"}.fa-buromobelexperte:before{content:"\f37f"}.fa-salesforce:before{content:"\f83b"}.fa-octopus-deploy:before{content:"\e082"}.fa-medapps:before{content:"\f3c6"}.fa-ns8:before{content:"\f3d5"}.fa-pinterest-p:before{content:"\f231"}.fa-apper:before{content:"\f371"}.fa-fort-awesome:before{content:"\f286"}.fa-waze:before{content:"\f83f"}.fa-cc-jcb:before{content:"\f24b"}.fa-snapchat-ghost:before,.fa-snapchat:before{content:"\f2ab"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-rust:before{content:"\e07a"}.fa-wix:before{content:"\f5cf"}.fa-behance-square:before,.fa-square-behance:before{content:"\f1b5"}.fa-supple:before{content:"\f3f9"}.fa-rebel:before{content:"\f1d0"}.fa-css3:before{content:"\f13c"}.fa-staylinked:before{content:"\f3f5"}.fa-kaggle:before{content:"\f5fa"}.fa-space-awesome:before{content:"\e5ac"}.fa-deviantart:before{content:"\f1bd"}.fa-cpanel:before{content:"\f388"}.fa-goodreads-g:before{content:"\f3a9"}.fa-git-square:before,.fa-square-git:before{content:"\f1d2"}.fa-square-tumblr:before,.fa-tumblr-square:before{content:"\f174"}.fa-trello:before{content:"\f181"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-get-pocket:before{content:"\f265"}.fa-perbyte:before{content:"\e083"}.fa-grunt:before{content:"\f3ad"}.fa-weebly:before{content:"\f5cc"}.fa-connectdevelop:before{content:"\f20e"}.fa-leanpub:before{content:"\f212"}.fa-black-tie:before{content:"\f27e"}.fa-themeco:before{content:"\f5c6"}.fa-python:before{content:"\f3e2"}.fa-android:before{content:"\f17b"}.fa-bots:before{content:"\e340"}.fa-free-code-camp:before{content:"\f2c5"}.fa-hornbill:before{content:"\f592"}.fa-js:before{content:"\f3b8"}.fa-ideal:before{content:"\e013"}.fa-git:before{content:"\f1d3"}.fa-dev:before{content:"\f6cc"}.fa-sketch:before{content:"\f7c6"}.fa-yandex-international:before{content:"\f414"}.fa-cc-amex:before{content:"\f1f3"}.fa-uber:before{content:"\f402"}.fa-github:before{content:"\f09b"}.fa-php:before{content:"\f457"}.fa-alipay:before{content:"\f642"}.fa-youtube:before{content:"\f167"}.fa-skyatlas:before{content:"\f216"}.fa-firefox-browser:before{content:"\e007"}.fa-replyd:before{content:"\f3e6"}.fa-suse:before{content:"\f7d6"}.fa-jenkins:before{content:"\f3b6"}.fa-twitter:before{content:"\f099"}.fa-rockrms:before{content:"\f3e9"}.fa-pinterest:before{content:"\f0d2"}.fa-buffer:before{content:"\f837"}.fa-npm:before{content:"\f3d4"}.fa-yammer:before{content:"\f840"}.fa-btc:before{content:"\f15a"}.fa-dribbble:before{content:"\f17d"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-internet-explorer:before{content:"\f26b"}.fa-stubber:before{content:"\e5c7"}.fa-telegram-plane:before,.fa-telegram:before{content:"\f2c6"}.fa-old-republic:before{content:"\f510"}.fa-odysee:before{content:"\e5c6"}.fa-square-whatsapp:before,.fa-whatsapp-square:before{content:"\f40c"}.fa-node-js:before{content:"\f3d3"}.fa-edge-legacy:before{content:"\e078"}.fa-slack-hash:before,.fa-slack:before{content:"\f198"}.fa-medrt:before{content:"\f3c8"}.fa-usb:before{content:"\f287"}.fa-tumblr:before{content:"\f173"}.fa-vaadin:before{content:"\f408"}.fa-quora:before{content:"\f2c4"}.fa-square-x-twitter:before{content:"\e61a"}.fa-reacteurope:before{content:"\f75d"}.fa-medium-m:before,.fa-medium:before{content:"\f23a"}.fa-amilia:before{content:"\f36d"}.fa-mixcloud:before{content:"\f289"}.fa-flipboard:before{content:"\f44d"}.fa-viacoin:before{content:"\f237"}.fa-critical-role:before{content:"\f6c9"}.fa-sitrox:before{content:"\e44a"}.fa-discourse:before{content:"\f393"}.fa-joomla:before{content:"\f1aa"}.fa-mastodon:before{content:"\f4f6"}.fa-airbnb:before{content:"\f834"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-buy-n-large:before{content:"\f8a6"}.fa-gulp:before{content:"\f3ae"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-strava:before{content:"\f428"}.fa-ember:before{content:"\f423"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-teamspeak:before{content:"\f4f9"}.fa-pushed:before{content:"\f3e1"}.fa-wordpress-simple:before{content:"\f411"}.fa-nutritionix:before{content:"\f3d6"}.fa-wodu:before{content:"\e088"}.fa-google-pay:before{content:"\e079"}.fa-intercom:before{content:"\f7af"}.fa-zhihu:before{content:"\f63f"}.fa-korvue:before{content:"\f42f"}.fa-pix:before{content:"\e43a"}.fa-steam-symbol:before{content:"\f3f6"}:host,:root{--fa-font-regular:normal 400 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype")}.fa-regular,.far{font-weight:400}:host,:root{--fa-style-family-classic:"Font Awesome 6 Free";--fa-font-solid:normal 900 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:900;font-display:block;src:url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")}.fa-solid,.fas{font-weight:900}@font-face{font-family:"Font Awesome 5 Brands";font-display:block;font-weight:400;src:url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.ttf) format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:900;src:url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:400;src:url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype")}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.ttf) format("truetype")}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype");unicode-range:u+f003,u+f006,u+f014,u+f016-f017,u+f01a-f01b,u+f01d,u+f022,u+f03e,u+f044,u+f046,u+f05c-f05d,u+f06e,u+f070,u+f087-f088,u+f08a,u+f094,u+f096-f097,u+f09d,u+f0a0,u+f0a2,u+f0a4-f0a7,u+f0c5,u+f0c7,u+f0e5-f0e6,u+f0eb,u+f0f6-f0f8,u+f10c,u+f114-f115,u+f118-f11a,u+f11c-f11d,u+f133,u+f147,u+f14e,u+f150-f152,u+f185-f186,u+f18e,u+f190-f192,u+f196,u+f1c1-f1c9,u+f1d9,u+f1db,u+f1e3,u+f1ea,u+f1f7,u+f1f9,u+f20a,u+f247-f248,u+f24a,u+f24d,u+f255-f25b,u+f25d,u+f271-f274,u+f278,u+f27b,u+f28c,u+f28e,u+f29c,u+f2b5,u+f2b7,u+f2ba,u+f2bc,u+f2be,u+f2c0-f2c1,u+f2c3,u+f2d0,u+f2d2,u+f2d4,u+f2dc}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-v4compatibility.woff2) format("woff2"),url(../webfonts/fa-v4compatibility.ttf) format("truetype");unicode-range:u+f041,u+f047,u+f065-f066,u+f07d-f07e,u+f080,u+f08b,u+f08e,u+f090,u+f09a,u+f0ac,u+f0ae,u+f0b2,u+f0d0,u+f0d6,u+f0e4,u+f0ec,u+f10a-f10b,u+f123,u+f13e,u+f148-f149,u+f14c,u+f156,u+f15e,u+f160-f161,u+f163,u+f175-f178,u+f195,u+f1f8,u+f219,u+f27a} \ No newline at end of file diff --git a/src/main/resources/static/articles/font-awesome/free-6.4.2/webfonts/fa-brands-400.ttf b/src/main/resources/static/articles/font-awesome/free-6.4.2/webfonts/fa-brands-400.ttf new file mode 100644 index 0000000000000000000000000000000000000000..30f55b7435491ed4c2b11de8ab5e5c7e1e1ed669 GIT binary patch literal 189684 zcmc${34CQmmH1zE-*Vr+@7Z47OY%CMq_eyvFTLi`3pCI`BRe$G4T9{p*a(6^R6tZz zP((n)sK_`YGK|ZNGor?27)No2pFelei3;M3jCPW4x^ojP^SsZ+O=R!Rlblya%!DW?sNTyWMauTV;_B6asgSMAyR;QaSbP|E+PQi|1hPtx8by%s)?-YG?xjpKbs~+}W5Z!Q41ucpxHT#?Wv&-R;8EZ<<@a$8Tl;DTI zdgjQCQr6Uw!$;<nxVv}mce@Ivr-|_ zq`YOy%rwdp(vJ?(JiM29!J0CmQ@6b5*}PXyoIExVZqySZ9y58Ia#d5_iJP*#H+4yP z)VsRsA}!i@ucf|bUgBvW)@Vc0Tbl7^D0u;&-cS7kloy~4r*E^3`lgmbw^dhBgD1%c z84!0h%Sj#7=LN4mlQyN?roOtVSH|h2?`^czXmhC_v_t+xv%Y42!l?e0soN>PU-_hr zsk<50mCbXzNpsp;9+R{~+6o*itIm8er_FIU>tj55>hSSCOqv_Wnek4U_9R`sET~3* zrc5}{=tqPw*@)Y;?=^9$SMoV|O=zBH8g)y$;Ii&O1FwQxKjScUn0m-Zn!$yHEAk0$ zih$&eOWr1sF9|3O2O>?%CZugCzoJh?+9^mrAloe42&G;#=e%puiKKbteWQ#sPcte= znr+p|FXM6g>T8aBsr+)eWd>>MF2RG)fYQ^Ae55y@O`a*9>ndyNlsK?d|4!PutC4?7wMxA}o;*ds zf-Q!Y`k_?Oyqj67BPVz=ZILErO?=A4g=aL=EJM%5<-Dexly%B$t4`i2o~19O@odUd zU(!7Djx?no2WA@Jlx^nMjk=V6%BiD~&nGyOxK#&)o~BmRL7eBX{&^!$gGN^7p^VU- z4_wGNOnIpb{Ip2E#(QUOo%))6GGht{T`lRD3J>i?ptt66rrK8Ke} z8OxNFasLm&l$$a1AF;MkeulQ{@LQ>;&U_Oxj%M3!M?E|5gf@g{J3MHLJ(0O-j@{Hp z`DXt}&rxqgo{6_M+LyTSSiR!e8K=-E>yGypAo|-*3uD zIX~~xq?t8LUfBa$%s6FDD)KqJH%>gwdrfHO#JqFn+AHy98^mQV6<#Vd>F|n0Ws}7X zxPUGvZvP!mkO|K&q&UU1+rF2YzCog`zM(o*x9U@C)wybqx=>xDUZpNpm#9~(OVwrS za&?8eQeCC4RUCmhjU8k;BZ%{W>hAXF4POqF%Iji!%S$j4)TbOO1 zJ%08TvuDlTI(x^@7JvTqFY3S8{fi$y8+~@&vnM=z|Fa)>cKW&D=k`AL*mM8z%iu3t z_P=`nW&7W}|IYpI+5dt4-`)SSx#Zlcxz%&ya~tN)m^*jwlDW&~E}y%4?zMB*% z4yF$F9~?e7e(;!s?>YF;!H*vN_`y#d{OrLm9(?lPQwRU~;M~DO2Y>%!^u@%BlP_+5 z@q;gZ*I zHy?iJ@FR!6aroPZe|Gp+M~*PZovN%>t0A@F|JAuXWA?h)xBiK_9AYjXeeOx-GH2%U zO=d3d-~a6ubGg1Tm#=0nubA7*T)uAZ4Rce><=f0$KEPZ~&wXa@iMemgJw5mQ+`rH5 zXD+RI-+XvJ##|0Fm+R(FWG;8lUo?LebNR;ksrg%(%l9&u_cE6soBwm>@{{wAGnZeR z|L*)x%v@f&aQ(t93vXdA-?4D_!u<;$T=?+9BMYBlF2CBC%Wp83-)1ghAULx0I!e!el6|H5339-cgU zE|1I}`IjR@2i|xf+G2QX&j$d^Atm7*kGwmm~-Ov_neW7(<>tt)X z)!Xv9mcMEFbW2y^mxWIh?kSvFfEOb!&PKl<{dV-J=)KW*M9(!T6H#=sXch3}*k^Pb9Bfp6JAoAVFlaa4RzM@p*uOpv|{AJ`ZV)sPuio7fG z=E!R!dn2!jTphV8a$#goWH)cl2F?O@M9?K8$49nDwnf%O`Xj3&z2V2g9}RyvJRN>0 z{9yQj@crTY!uN*X7rrO_-tgVwcZc7__V~{5o#D5I?+D)>zAb!f_${Q|626(guMb}v zz9#(I@Lu9qhffQi5;0qt9)HnrUZ)YIzxRLR_a6PAen8)@Z`F4;s`(!U`b_z<<&S17cd@^Elvl-7LM2s7rBy~{RSpfmpjuR`YE$j1Llxn~C3tZcdutE& zf>o*)zTBt!)qq-~2H9V)Q8%bN)z{TQ^#`qVP=82;r0W6XMDz0;e>)q%MonFcx*UOG zHDMp%0fvCJfb9Gm09mPVU{3=wgcmk|mCOF_K#owbC6EU$Za{(Xk_NO8zPbUegvk5` z+6XUeKs({(4d@`mGGw4gcx3}*99K0!DB|h{$e3Q!0FhSqHbBPt+6MFx3T+BhfY&u( z72&=H^b%g%0Ktt=w1D8~x(4(UUf+NL!Z$QP==6pL4AR7~1A^PiX$~;Us&cvmCVmES zK-P8zo+V)7?;{RC9cq^O5RmzqO*){cdlvi(s1ZVNC!nf?$2*`#318uW8Y85gS*d@V zkg?3(N}TzgeJgMW@#B>G*`foAI)2XT5Kt#5^^3X#>O{ib4yYZ3KXgEygb^<4fI69Q zodfC=LdpxMorL#0piU+HfCGv?K0EDz0#DB|&gU4P0#DEFbwHg-_$crg>5SpICxL$; zey&o#3_7585kiZ<6k0o9sr|2ZKybJp8WWJY*#9Qr&BXT*-synQ^8WWYAauN+e(tA# zLd*NV4Sbh4G`s(24hTKYF&6?tk8{wFfXwL}bR!`1I0vo;gihzy1G285(>dlsK&0zA z#vmYcI(LZ!tYI}r|L3I7*AQOrfQhp%=BQ8TbPoK?QBG)ZPVxalgLAI~_7T64P~P24 z{3gOFfbpxh5HkM)>Ndi+0q-P!JK;SJsCN+F=K%ag%{>4JPRKX+kOS)7gww!ZkbW28 zXMn#UPQJM(fG-l4v3vt~iugwep9a29{9}aA1OH0=lZ5{c{D%1Bg!_Sm#6Ly&dk5f; zYTg3Cnfe@|5AYNJJHjv!Ax@j~F(5;nw&#Z&5I!^yP0f#x{`Z762NX0kzYf?$`qv4e z@A)0XzeV^;2h=|k?gpS2^)w;0GS3{SZxdbx$XxuGaIXXECxmYVZYKSwgj0af8?-YI zzUSXg{8_^HI3P;h{CffLu6|AUJ_khmn!gu-78SUe2d4r$NC@ucA0d5?@Xvuy5MLmC z)B*MaHUCNAG16Zod>mkI)L}xw9iaY`@N2-6#1{#_3;c-sq1$;G1AW&v;j9B1Trcc$ zKnDmf1+I1avv56e=u77bZvm!=!^0P#vjyl&cM{&=fbJrE2LSEpZo<2P_Y+@D$XFL1 zAkJJZd=P+kbd~VKz{AAH2^seSbfKBI1;(`S1>(mM&N!e?CHyMD*z_w18J~bYosjt! zkhxxHfIfpb^tk|i>N5$MV*z~*A#=R&4DoXb|HT1)F(Grg@GR+<5dIQ)f%xTw(64}g zE#Yq+khQbG+z9Av2oD0kBmO!<@Gbz#)dA?>fQLA^JOJJggo#5(2jW1MIJi6jeh+|4 zk+u$$9nkM31djsh4}?7c_|wqSfs-82(}dtcK!eKzXE~rhLdZA;^hXK5>wpH=2N>Uh z=Scq;A!8IU^*>Ks`u}H29Si^|;(tfj?*P(_I!OBh$TjL9b0#3N#KB`65ZXTY9tZT_ z6F%gCev*)W2x#W%;Kv=%%+FymQ2(E{cS?VBcT5`;iLolJA|7Z(BSMvXjMRekC6VoNWb*= z3F(7?{vjcBB%pt!)S)2&{Al>bq4OQkKOwvUxRLaq65i&3o+W&n1Nvu#?{q+HdWY@; z?k4{)2;UFfPn!15AOw}1t` zAEvJYmX9VrWx%mMK|1{00noBOOyUH<47eG+huS^7^FaCDTM=IAnLUFU>rzZ*Ibbi6 z@NT7oK7h0!GZ5N<4o7v75HN-2*#$hTRICU*2%(ZU{y9wXL%_!&V$zemPttyhI#N$# zTBF|duQ(@s98=zQ%z-@TnCW~SnC94N74R93d0GMb)k@xW;_c6HJT;|M(Ffe8REctB z;$76!-49Slg|MGC`$_93{{XONmr{fDbC7-v@;n>@_9O5;s?;cDWPy#}0T5qHed}m* zJ>@sj+!4^UA|Y?H)p?qTHSbQ51+@M4pSDK`~%XUPT)h z(}znabIIpW2KE9^Ayo11vL7J$--EE90#(%*C?Z~&o)wr?fxZNTkyfV8*1 z5z=Ce@8J1P(%;4NyLTbX(B|DUO1+oz_iP2I_uj)wy`S(t`traiLJsYGkiL9~`1Dgs zeRv1~Cj|UTsfSk~;M@bepcIT!{n>t{KK`Imf6nt`txEmnAC&qlpHiPbU8&Df=CeHi z4P`zD{N3Y9eV*_OwEx8ozyYPc^fjeso>uCs`;__`?fm_fN77dbFZ%kwsrx(h@w;~c`<43Mv{K)v&L7hL51&D3A^ZvDf6ACi^Z_O8uKcNC^SFdx5_F`}IowhWEdn03Jm;z7wH@{)qHB zPucmW*x?>#=~CxG%D?z4R=H29-|b{G8CB{Cd5%1T&{4-y?N-{oUun+|l=eP~@Iji7 zH2?KV2W|y;7rsmB$itj@pRRPAFbPXY-lufxL8Y^IDxIUQ{2!EVp?uqn((OACM7Anj z+@N%c=Poxw2T+Ltw6p3SrF*w4-Mpp zlgV=m_3Z3Y`V7*~FZvF5V1??8z^_fVWn@pUg?|MO5aTRTlNB9SNct)y_tTz z`40#d#BZe^x6UYid%x0erT#kG#r_y%=?=32Q?+-YXApd=D zRQmq=lzxEp4^Zz1Df7W+l>QKXm<}OqP~S&(0G~s^*r4>o#6Px5=|^bq&jtRV^rPf? z^l7C(nN#|)DGtFxN`LAur9TaP_64Q?`e6sh70Jqi&2_7h5fx6Wof1n~T0o`1Yw>7P)~PwCT7 zf1vcwZ&mu2yMVitem(>|$RaKDJz%)_9`np zs;uaDlocnQ-KwmTTUq5PWp(XTR?laY)%$T}^*yYtLBgTk${NlAvr5w zS~hOi%Gp}?cx`yR)|ts>vT?8NwL5z%J(YO<+;c0RKKGodbIz%L`kZqYf2qTflrE+s zVJ)%6S&6N?{r1HJ{F%93hxl`QZ0YsxW=z98m9p^qnN{0)NU9=I!)Rr=r(CkV>3Axe zsgBgf$KtN>+Bogf0s2w*`y&xQKk~Pj4Fv+Btn*h-Iq64~6Kb`%TPIVgq;~$&7Gs{( zGqiPv*g}$->~JQkt2OGUW{HkuGwGD=?bG&(C=Jtm&!jGcf@ZW-=@}cXjjz|W@^X}l zIw)Eze>P&ywaWiD^}g7gJ?TIyQAO)54q2Ln@1u$)ZH zXZ?u`(^ITF6=B|onD=YIzz7&<(<9ZP;mok0Kn6IddnAy@4m~nV(0oI(U`GbLQ4f`e zhRef35d1b#n9WE`QU>+#(8{-@3%;t;Ai{F#p|Er_7>EoGwYO@Q+Y07}T{@G^r81F_ z*BejdQ#og7%wE2b4td-jZzvd!r_-_Fmb_)TT!H+sE0d!@IBa{8$$TnH0X@T?F71=5 z!yw*gheNTb$7@GJ+T-(uB88S>TQV8&xjLO0DZ6aj?+tPK;P!ZIuh-=b1`{zU5Y%2u zOMzBXpiF^=jLo{4GW0s2*yP5BM=L_J+M9N0R@)!|WPvz_t&e)R&hHO|Inbb=66*RP z-BB!d=*D06-xW{COBTO>amERC-QSf=B$8du-y>?}6KhEu`ksQm(KZ@$>yWnXjq2ts z4(jDebjZ0j&cdgcGIt%?Ow$a5-5U&tY}@4uUGuu2%jNZj!oj`HoV*5fId85Bxjdxx?U9tJsnK`f+?ddKpNQ3$$s& z3qb37dhIZTjVx2x0yyu}V_G>qy31+cuA`sy-j_{oWNPq(y5T()FlM-&Pu${HBhx^-Z{YKGIjEiGENwDdMZt(vc=mLj_)!&Ebei3tC5=8WxM z{05R#AJvV;H>u-GgSVDO9G}*)cx-pja@oFcD72>TjBxjEC#>tKB$QQ`cao=L@fl~d z&R@NIxlI}OYT7K(qQk=`^>|H23b8cVUs+hbq|3nHUCOmPl-SX?VbiK!OZUF*(@wib zRN8MxzLeEEn=R?xxekZC+gEF=ch#m1eRnk4PbOnu%#}*nEaPsBUHY+>evGo$tcL{% zA2z*U4y0f3BOy%TMwx6?Wv}30QeJmTvCtB=JZ^W0AKMDI zozjs?X`M=STxv2tM6b<$p_A$8^-@Ag#$#<#z?O3Eyvc5gNgmo*T3;XHBnfI^r!vdj z1+V-Q$mPSHChFY5{Ao?p-4_k`txkP= z&T{&*w~4n{wBT>z&6i%nTQC%Te8n2;RO?q@O~^czPNj#~CZxa3d97trvf>OyI$JE8 z2HP?l^RN6`vj>L!cXux>J!^GeeKHpgXR`TxmYrZZrmv8!QsmLTwOVVdxe_<`4|q=e zbs^*A&J>noN8>f$pvkJpKemfLL3Ta0@R(k}K<}SW6_OcaPIAeUn*~zt`T7+wHNL@x__A)^S}I!q->J-?zL)(&hbh z0EuB*N`Qx$sz1*38nY1BiUFrr~Uz~pFGqS)6L3n26gYYTF zGUbdZ=@ra}o4bn0^gRrW@wudf+Ftx!b4a=_Lt32qFNP#zf|iG%<*KSPCbMrEuH($! z@=iS}TgUiD5rG_1ZwmF4S(fQ{3iUXo*VB$vVl4Gk>fL%y0=|hErNujb@)03T&tVvcEKzokN*RQh_5GI0S20 zQ=7FUnMe@`TChu9(6m;s7$3K+@$pwU-Ppc%U8$sXskCnG_C_4BV4$_D+U#y$(HC~| z@>dGhj}i%|BuVOYFmhB)rq-enF*-Z7;LcQ<^^tdHbE}cEGe--Kj$Smye73-yL<)g8 z91TE3!zx&jv5XIDSF&8o{?wmN`>tPwL=JZgc{`pgdI-Z%)2i!N-?e?azEf1L#o68R zmemm6u|r-WWQTU^;^Ki%eiHIr=7%k;i&0uNGtee$ZzUTPjFz+IvF4^0)ka1zoUS}p zZ!)1N8EHJ;+Gd8mo1f;J-Mg3Qgb@m*O;4M5pr_o{7B3A+(U~Qdw#3S&miGH;@o3OJ ze@=9ydjqmf9oUt)oPUu1vDQLppY z5tfcQW?(Hp{hK!jLL&Azc&N-v&Pa#L>&)Tw$VY;nc(oii8;3k78R729k!oAJ*6nT8 zkx7Gz>D{}VJWxBRG4C4rD5C3&GfjDx>1m8z_AADI)Z8qIqGK!M@a1T|iTGKEif0?F zYr6ToauOUOo;oU6*)}$bX4^|^Y`Liw9Wbpr)%=O}W}NO!zieAyVw|;RTS9@dyv;^$ zbbNS%><6|W*x8C3JV8=PnQh{BeP3VbCa0mhQf$5cO`FbLITvSdl+8z`w|`RaZsJ>a zl_#8TMIza=*RHdiiE|2CHK7$LwrW{s7Meg$>TXiwMr%pZ>=e!DC=1F)-FftGaYQ+- zIe)d9Y2cry zoL-1RylmKM_V*>Upv7L1Hl`?<2&1VoHxAQ~DT|AVK}(}e+&0G8P|kQV4IWui&>9_d zxF)$w504tJto^2rAGMaTyM%jPTV{|oU1PN~zaLn$ay-Y}CfYL!neWcG>C4UX4onaJ zt%Hok!`C~JE4Iu8T^3e~aPXV&G<_&GWJZxiov}B$OrM7FjG6J)DLv!VFzW|>Ekrm-jA7Kq0Kw>40j(I4_8 z4j)cFmC+AeKowdt~KvNDb6TuZHw*V5^zwi~sl($U4= zHRJjrZ*1{vdX-b};#9_ml(=#62hDaez6P(9vE{|D%g9*{w|2#*MyKgx*tJ~T~$JVbO8*OKASsC9=&Ysn)dz>C@==Dbo4s11KVf662wA5eT?$bIb+uCs*y4kkQk8NGa z=o-9hY^a%c&5R5~r_KygP!i8rU26{P3rIvOw<8ljbK_cRgRB8g%U0m8OAUd)hP1G} zD=e=;VFWUem12XvVuQHg)n+lW(oSEM&uME_@5a6Sl(HF(^igv5rktZ+-pAMht4tiwPw*4Ext&t*a` zAC^?DJy`Xme$2O!i{*>_QD%>)jxk<)+@@Bk-Gynlqr(?n!3RXbY-&90AB`Ct`{PYx z%At4RUBsrRm$r(=)ab^7SW&mg3yw`&a4UqcyhjL$3!Y6%kxH8aveV28x!N=|+Z4!W zo%Uy&g1kI8=Y0y_L*dQivZ`7{*O5sRV?j^FB@>+z8Tid_X$r{GB08fOdcyjH@^|qc z^jc(NkGx-;60uoN5%o0cw}h@_OiT42-3s)AmD(;jZKW}&dagdhm(BXlxY|q>W}LhH znXG;4slH6ce;4h9^+WP^@khE#sD1Gn-6O^x$-Ow0w$eJg_^%R7NnMcl3fziawrTT< z8hf#jHs>9N@)5~J z?%*dLZ7%(fepFO@so~L2tmuoQr408tJy@|5o3jV8c30Mk2{gbWf54gF2jo};HN|)P z?fSivF7Lm8uQR##eqY{5jwha2Ic8}`?2?WR=xD2G4cjzZu%dchPx*bJ#b5uyscmsa z9(7tC&DN{q$=Kp&oqiCH>K(*|r-hDuO)uyt(1!43N@CRU7;8u-JCqhu<+nCkmhH;< z&8D)cDyL%Wp)?_I-iw~;m`fbS0?mp2Xz8~Gqm*ifnsrEMY)#Jk5QL2mznQfZj)YV0 zP&}5*V=d6-blRKGvg)y%$se673>FH$KrEW*w|%WG8wUz4E**;&$n9FdU2f-8>XKYqhPrwrq~tKA!6Xsd&O(UDO?!Osb`vv2?nGQXJG4KeR+7 zla2XcH2Hyno^I`GZS8O+k`|keM|(Xs^F&jY)!v>g1k))$h5W&AKHr1I)ZSXF6+5-H zcH-=@a+zzIeuWHWRai$MEHQ1k{%poa`)vG{F9qY^!l<@_E?0G|%)S9pmD3`?*0N*O zbk!iTPp4t$vQ3MgHO9F^HBDR~TPfS+8bN1V1Yqazs}e^e6aG&9<)mG$++2(VGuiew z3nN@=)hVakr`c>H5!>t0|ClX#+uHm31}=!K(ug=0Trtr9$l6-5y}fjTr`?llEw)ZA z9?+p1>UA;Ojn}R?bm)qW8?|1)Ztv;7n5|o^w)Si$80ko(a4i1EJCBQa+oXX5em&U<#TzHaT+eWTT$Zfo%jeecNdt1qsOYJZ_% z_F9WQ?Tg^7RcyA#Vr0%=h1jx;()@+Y7;nYM2ZL|{G1y5`6`N0Wq{CwTwtn{-ZB1^v z;DSw)mV~`M9(UUa`xLA$eeAk4Cx7ns>meJRUgyH4WqXdz!^&+ZhwIF-Q_g2d-_u`wfg2;kVkp*kESet5{ zjYVW@*?o)N2-*)m-1?&{XlR(Dr_UoPnL2Scgis(3t6 z$j9{Y)y|S`+n~3PK*8Dmfwk*LSeb=R#K)I>?} zp1x;|GqN1z zw<2>YjE`UhhLRepF``fBG^#Sn7|nCOeM& zUeD^=xtY)p=amTr-z&w3@k+Mh@K4#mdBp^o>3dx`m5Q<_1$ONM6Om{t6?&7~{fk|@ zkPX5-g{R!^H-%EE7s6Puf$UzCZ3p~WUnXUz(`|z; zNFr)ki9|~>&vrq&fq-xEln&SU z`1bANHFwGH!*3z1t-*3RY&^5^{Uj3f zN24uWnT#tGvidPBuyuITK~%C#cWbLhyDYudh0wrC_(&?}4kE+3A)tWpOslTn0LOCt zm6F{56MJ=8&Q-eEyvNejG16QmWx??;r zubpEB{S<0Yb+mrj`gOr#ZQ>+XzL3wk9`_(8u9dx}vvX|o)~!8#lanLEZoTfA*ygph zwl-J2e$G%=x0_8dn;C6QBqN12gWGCDgPBYqkiD$U_T_Suqrx-QBwtoK2231_Z_}%} zt@lRynXb})!$6H67wjrq>oI-yW|v$VMmY?^T$nXhkT$H`%SLX*AIx3C`k+=}cOx9m zirWS0NJt}N)XDI~Uy5hOoU&_n8NC}9sLR*7<58S-V$7}`i>0&i_O{-RJS-;@$>%%z zTH28dOVL6po(?6kZ${Gj2=?)GE~+!pWH83bYQP^&1w*flXD4%&TnzGyY8{IOB9#i( zaqU0crMnBGZMjqawKpBYq?Sy>7eYGT(F*r%85+_pF$(0{MuI_iBp;6ZePMi9f~h2w zmN+FJIVT9^`GdIsM1${&eSU|u5X)p@lm26jYff_4uIuZc6W#^w@#QMTuGFrN)jRdM z`VxJOzDa*l|Be1CvbV~9~nItAP0S-d4uY)TTVX2pxk z#A;4B32U|4;UyeOqg4=N8#4zz5*xx9jFSW8I3Z(F*ytoSRvU#~nHUBN2?xgtFk(q^Jn!i;>E=n^;9GNU6DltTEa40n)Y4_AB zLV>)MmszJY!!BoGrTh+2z%l#q)F-_%Bar$9H!RLl8@K|GreaeGC7V_1|IFwlEY6+N zQ42v7?++b79dQ>d%d4?s;BtmeSUQgoYejX=tvOE98JFwjTlUc6Q7v0?Uh7H=$Nw+drq!1;UO-)X zna0y@_q}1aue*0uj}IQ>E&6=-yIcc$$Q=lHwdF!fwgad5{5EO}8*fDa%rX%jw$3gx zCYQG`7I5R6XGgRZ30oh~lP;Df3VYy|IH^817ZF}CiDOT2|3lxV9BzE>mfp_Jbiy4h zWADIw%=aN3VH=V9|K888;YOj>e8gZ0rxy7Bzd|Xa`)^>BIb?Q@LTO_%**E_SjJp2& z2u=U@=!j{2IYN4q6)wjUWejIxfwRV4y6kpiVvh$n#AW|&L7V|kR@lr3@lQuw9;&1Euj_?gY*vXRKyRo=88jrR5?;q<$Rj`c{qJwO>B*Z+UR7s5 z+>Q2kp73X9p-V3(wdewjfzBh|$q zPY8$OoxQ#7?baC+sYD{M_y=G2IgxZapDUo5z}-&uYCU!G#6+=PE=QuecwC{Ur+=a& zok#`)`CMgnM~BsiY_E{lu(>GaDyE8f{~T-f$a0A-E#25yDm7f@Mo_nfS(i}UJSHL; z0C^`f1=E%tEM*>LU)Am@5I6NEkb}>T#@TO+*00fevq2XrJl@g>-m}@dip-m}CeZrJ zKh=8apUjK?iu`$oG_8N~6ZuQDU4Kbp^2hP@EgCwCqZ@aD%Q*9Hh@CB5e#;(F(3=>p z#s#gqUTka6WHIB0vYGa_;^NFSKYF(DxOs4m*1N^Y#=LFhl`PYZINnri1~-F8Bwcjj z-+@O*=2h8h&C`v1h0!H>|G(`+*B*HN^H05S?Y>tRpIUqV(=Yt^pTDIMhP4Xg<2{dU zVGo$^!9TesG|jJ}ceCdJWj3U;XvYcsv+v z@95ut%rUKD%N2%7bJ>oPWo1eomW6$n?I+;(p;yErQMSflJRad#B^3(=z0eeLSPUsF zfdm%{M{Ub3ekCxwpzXe>t)rv6zrVk;6iKzUAKTT_(Gm>yw09&kutN)XCCq{Nn4}AZ zbewaGxZmYTrjp5Yp)-%<8IQpoBZ-9H7qtV)SWJ5|*@RC#mMx2$1E{l*D%T;GYz{$m zihfmBJHQ*9MOHauM5JAgJ9ebFAi!9R;(~%C+_Bs#N}W00>=cVY!;EMu(8KH2 zat}5mKU(~GXHNWObDg@q8JkQb3yVK5h?93gw-esf%>K~}!;vgY{y{=S=qsPu;>@(Yw(V3}KIrV!CI@$Z9Y@KGIxRMdv04=K$^n?_I+&uH#x^i;(032GAKGGbaY#UwkHY1>H?hPxuV zR0K)aDf_6)a)q>Y?TH>w#^ZSve_gOT*FLS^Z@Es;o@fN-cY=i+=D8S2#JU(p>hDH8 zN(98xP+hEYhX+2L9h-iab4_7{pbU3;qO5l(kxi9(@B0)m!dDBRI^Yh)KoKktT} zmkowc!6D7DhSqrRt!64?)SoVYs=KYNXP~F0z1*f-y9V3i;!la<8|SAj;k9jVBIUt4 z17~_ToNvW!8fnReOU3q>Z6h_?Q8p0XJ%Rl&TfpZBlX8nL`FnbjffFaQN(QT$JFa8ITRZ~&dy^odI_*Ga16K?J`f!RbJD$Fc3Y>zK2; z!I$v78GJ-%mh35{{{L|Q%cZLDrGIMdadGa4SI2BDIF)$1Vvm*MTt%y%cA7r^6|Z>X z8&3b$KNa^59&^l~-ucY&$3L_9{u^)9moXL}u!H%(ob#Ou7MfG}Ld{j`qw+11TFHhp z8CE4u`i7SomS)(p-BZDaAr#TzKf>%Wze4~*4rU=h6Ho;O8%v1H!-jsASC7Ndpsel^ z2mNDaP1UgOiNqq-6laZQXsw5pl^Qn7Pe_S`N@>i7m6o|tMI+Kz=@~K+<%ZLy_^`-B zY14v_il+VuVEu?mS&S?hIj;12{4Q^P15 zhxq|g%N?<}P9~Fjw@WtC6trun;LdcwiUQh>>b?Yrb-zz-l6Rk?r~LD?F?W?x$t!iJ z56)ifwARxm?b;sCxdR^YaSH@I16Dd!Ds>dG=A?@qrBW(wU6I3~KAOv-u*9-)r%X(D zSXee)-l*-4M8e4e+`{q)v=u@Ww4}}$2M#UVSkN00F(Or8*4FKGgRZpGnXIqg>v4Gv z?+8IV`}kJa1RgS{a^i4{x(~{6rop-WQblnXub3-u5Qb32e~Ap~kGb zPFWgaU#wLfUd)N2=BB3Et^~_i(q%m%bcr+~DvpuH#*px&0%7o&nM{FUGB2k&d)~1A z*Sy6dShe`MRgk~L+VZ%W;EHhk*(XZCHtx%}t;$z)z#mzhiQtfn8N5!Y7Z0=Z`Tfxd zb`6{s179+aktpOx9!|o~ZmE33skYGfWThpq3pmT5z;D~;#|jzo6?FdCsCczRzasTX zsju|;BV0+83STBL{92s~oeG}z@P(`!)q9aqjTFFeZ86abcUjWM*J1)28Y`EKU;q{c zmE*$7$n1rz1i+E-IY+HudhaPgnXpPUuQDfQ&4*Nh4kW3gKWg<>d}=)_>A^#;F~aj=G6Y)6Z=q26xWH_+bilN*+%~X}rHDA9Q&ar(q@9+N;^_Upr{x??TeM=R_{^Kv|PmVENC!`GnLM`^f7ZT~7R5O&2T^x40`+niFnM%!6zs7j-H6Eg#SYTeYaDz zUAabyk}YJ2@p5F+;wTrMF4Wk8*9hJzgowEYw+LKVZjFJ|*ntsPjQCca4+KxjbVT>$ zIPtzP(4O6q4hD8)Isz9;!k%bH=A?Vmu^pjkBy>_V)4e{ES>K(Bo)n5kgF9mB;<{{h zUGW2c|4C`RCzH7_v*QGx@1)G0Y<5rPq#e@~@Z}0ZxnpBDnB)@wsoVf5DSoE|>4<9vbSt zqZzV+l}dSjN~Hq4DSgySGToiaEoW$q?KiBWd-*Ehc6APGNbZ}-@-YT#vmRI-tO;q@ ztQy2XQAtElkl$f$1vSNJ5x<4*f#IwpVwY@8?~*)hO|`X-4U|g#MH>~BBR4%<#*W?I zp>w(3-mz{TT8hQWNN+D4U;GgF?s6T40@xHx6_4>X7$VSDycuZsZoHwA zm-`8Yi+T@TwP*E7VAINOe*0^5((m=S&e$#E;0z3!l{I)0yzvX11NZ5ZkR}bk6W+)a zjWd%Y!^|cdLaL4BXtoELT{*p%ZQa>8pakc*i_6d?IqXel-esN~9?M}@3b_r!aR^lE zGTs1ETgHZ}jOW;x9K0C?gF{_mmoP~=D&Zi7o$>zhxVl8p>k{#Sny7&$tiM3*OyFUI`q}v5jWkfk zVwx^XT++=S!nU&}*6=Zi;-<+H$U_}@i`qFXarL|0UjEPxo-OH!-&-9$Lz+4 zcrcmHSc8(ziM&+pauv?;Y}k0#S;v*K*#O(u6_(C)cJ}lXOBu_a2U!@1B zi$0n<78j+0bZ4o%r?bTUT7xISm<+-)`FkqJW#&i5Chu-YZ(Vo%@msd6!bob6YF$)d z!?Zje*Px4k9uG*e3TJsXY&!F-kSwN{wZ!tP;m3`Kv*mUCN%39gPe8Ax>{aE z=AO4h(9oWoQa0AWuzp*}KUwPREKQ07#NUYAgb%0hk<(ypBOKQ89fE%f1tvTBne>|+ z^4|Y3-WNvDgm{l{w|8J-V&mk*!~j}>@2|PHj2QOtwzJms_jPf76OM&vlH{4(_|iOQ z4E6Vy$rJRmLHbnm$WwX_e&fR`Gp082McDJ@Q~(; zX526%*+8UBeBZx zziDF>OY2i&@mww*bN=Q^-s@edWT~`z_2A&@zRprI<+|QmDz8~nUOdd_7I4Z-Tl#7X z4Gf*kdP7SYRnnWmj+w&aE1&Tee%;xL!zT{oejCpqmb~Tl`eLaTY#517eQswQn@3A3 z7DplsBolEyy3wisB4s%>{`*o#=+1c^Yu2ppEf&R6QY`kaUbCj7o$c$}X{^L_BBddF zGln&elYYR{{EUnzP|DsB4CS(jc&7bEe>{mOPWm0~p-?+oWHy=%B$9D@;>Wcr5*G*wQ5{^MC8|##(@(DPkvpJT9#*dLyFjS$95N|ide^{lds-_3t~*Zg7m#;#_9;Z3BmbhmjNf<)8?4ex?qOl=Qpq+?RZ zB6}~Vc|}n&IuhCqbYL_iW2UI3^_v!FS`+-V>ZR*=Lq2beRS^sF6O9G}(M&YTVO%8Q zq-3K0pv9pMXGsZlJ32|aTTWQNQtK`537c|^-V z&%@A2f#IsiSDYPH5k)96$W7#>j|z!b8b`_UMWU1YX;}Wj5!-KUYwi|2((wTe$!7GH znoGFu__mBsZcI#@4;U?1VXFP|K29%$*SdD?a`qj0aPQNFmO{MBM=n3F6>%V z4*&l*{r2=$pt96oX7WI*L3$ zxMl}#72N?l5kPQ*KhYj%WWho!ywewrwzl$d6jz2baDQA*`g6FQ$RIBemwG7oq;0#a z{R8Fh&R90fAj5tfAJZ+le1J~C$*~qt&7-G=%K06i{iGk14c)gZR#0L>avMsCo zdRUaW>qe3ZT>cw3(N|$ka!G5hn{YOflV#T`Y12Z5$D9n00wl>1a76&-_3+!)*?jOJ&WTwp zm1@hkb9yki`1tC^kKQ>5Q(cjxwXIx=J&~ih82)BgL!ct+|Dn zN=L zK4wGCHHSMx*BDxc$15@{v-WJSJToE|6KNUeiI~XW{9?>YdpYq&cTAyYl|hTt&4MXa zGLp&y=4wY{0kiqn1aYEiW_j;?EoBIyp;RuF*XmJcwbCC}l(}lKtI?R3>N7SB4n+xmm4-Q) z1ZphNA)|oHXSEm?431W$^P;~wmtMeQb_lGIj#QM9u}Kz~12M9J1O75AbWczKPqIgc zOT$=StCSlXW(Il~uj!9OzyggWGwJa%8e&z1CK)4@U%9Siul|{8Jxz;v(%e)re^&U^u<@a&m?X~S7erMhoJj#QypC#zRP-S*0HZ<0v zhjTIwn}Y-SU@W}BX~<{c9PCCEjv(0E;iymB?A5%=r$%~L=TJGM9y<<$BZiF@$0&bL zv&zG$Y+UD)J5sb8L{Y(9AH<(h2W*WCSIC2IAqS?o^Xfd8%}fP0YM{sC6Sg3#mDCBZ zBPYy5n&rt0-;SkxVTII))i*Ri#Jo8(K8rAb6<&_E#_0`XgL21k#l`s# zRZM)CY}?ac&@NoKdO>Z}FW)WTz6_px0d5hntqtb$QH@G2)WQ@%m&lP)So*p{@XC)r z7W8`~KHVCP`f)(?@Wl^pJ?()mJUWoUAKYaH*$~;F7=pb@MkvI^LFnRd1Kba@Wmdgh zXl06hy0?(a;8>|7tJu?&h#a$ z6P<#fxZtLfCxbf2JZw-`6>D48me&m57|xm}sXU9|xQseJ>DE9TXk$x)KY}(6$Jle= z&*ddeW?83MocU!t+PEuQ+IU_JK{A$2_2@cev^~O?2*WXtJL5wZovXG zxAzXN$rkNGqAVubO`AHqbZaaT=hHncF-}WE(R>ca2<<|x(l|PyejKayR)2uAM-GC* ztm>ojT5_!5FNar;oh?^zn8uF*qbu%T)t5zu?!EMe3r;+9@HN+7xaE|=p1){)wD9u7 zIQ_a0UwGjy_n&+2AAa^T)<6s2U3{MJE{5d)9N_qJxiMGORZi;Lj(gykLbG|-+%YrPdt0uZHsT$Cog_V^qytiE-l_uFHa$!VMkBtsbDItiMcUT zg90|9&kJ4i-KN>7$VsURoG}>@H!kYKx%cWkv z30iDRWRt#hDiKM(JSzTdV0B+>tJbZp;ZO>en26`u4mjD1C!+0%gbP`Rd-R@QHf;G) z5%CsVmTd=lSkm6tYjeMZ#bEUCA?N5mo31v!z|1`|eOL3=)Y~Q}bw1yhj&qL9cT4rQ z;JUXpE_Y2gFIU~Sy|yMVe&-uQ!RX-j`rZL!liI3j^<;T%fHtqSHfG{ z`mYt*@h|BMDf~8G-|$I$01u8wWn{uBUczf!C390#1T-;X^H=msTq}gpLP~~bIF1)G zVxcsgER5kF<2+Iu3NntehY+5$1GYx1BbXm6QVQ`ei4YRxHbfF(qRVHei zInr(KA8haH2zPe0A)v3ay~mkPxoVtp`{nzfNRX|q6}(6~*0$w_+T??v{q4*_(N1)y z-Qi*udezEzlCSfX!MZ{`1%x?le9s2U_}EQb{+ z->i@tOQMR>Rd(335Pim6jzu~Fxkle|h@7QjGw#?v-ygxTP?k2%}EKId=se@ z*8xJvdU0$*!2};JafkXlJ1ws#1TFa!xxCfhS?u6T&#@3Iz{R(Tk&6n2HtZvb9c!S_ z&eFu%WA8x>=PmBX&g!u`#oEDoVz!-EuBv0l5P_2Qg^()75Pgfab?fDrrV2Xj4rci% zg2$WTx(fm~vMcv>TfDh|l}a9quR+M0NEBR=u#0tqqGr1aiG(+VC(=+hgYFb8cejQ4 z2uGn_KjT=wRM4Rp|E$rpco>+qW0gfz7vO3UiwAaKXijklQRew-XwJxAh+x8^oL^%X z5KeBe4<#;nf{?~6nk`_7&GGD%tB71GbYRZBg@TRx?l9JdWim^%hGKilh%TsHUbucV zwYH4t)7Q6o=jz^YILB%RUmCs5)800=rj1QClj%%y_s;F%Ah(zd!vqEIUN075g#Y9E z`k0sHh0q}PU^sy@c_!lyv5)unZJy-B+v@Mz*w)e-a(UfB)EgIHrit}+6fND_GEnX4 zzyUIhb9Y<1=!(Z$;&|a`=Dsb2=_uN|Y2(h7>uAOPeTl-KUzV)7wkensJp4B?C|iob zAef{IC>%LODg*Dhc#v9&OI60cg~=O(^otNN$U{qtMw5a(YxU~Qr}VClgz-!>*c0Tn zfjp5&GU-yHiM#~<;83K`%jIy(b&$OAJmp9liK7l;fXR62-P_X09w`!x&P|5c9W2b+GQyQ5yjNtk@J*B$j|A^#6 zUeaNiJBJ!1D*A_6AdEf%g+`p=E z`b4iB)Iy}vC%saNlfx>f&q#5vI{*ANS=>lCppXkl9OUS?pN}eBDq|Tv|6I)%fl6DE zMwIUBmA4%+4uLwP#NwmxX+h%T8{X~r@G{AHkX2c=>0$bW=u4kw!Bt#s=6`y;j$WBB zHG?COE@kngyN&+GULv+hFFocL+nbX?G(p)t=%+}V$XI;z!VF4=V}vx;4Y3C2YJ9(e z6z7Y%QqVY3{GH#IN@DWyCsXKaJytSR?pod3gI4eEkuSHU(z@5?Pfc zqRT)xSLWCmu-L@92S)0{xjb?$8VBEPNZCFt&#`=Vq+aE72`p&C@5s$}9QraDtP*&5 zXEJ>?scU83!jlwVF3~s2|JvAH7Jl8QQN7AQMK}m^`K>*p9JR)VH|$w|+J-$F2K2s- z-Cdy}&q54I```GI6R=zNui5Y~OK*AyI|Iqf{agtrt zy>IVxs?MpLt4`${I;ZOD>Y47D>Fya#&;)6MMw%Io63RjdkibNF2m*tVM2_MjBQQ3P zAdmqO41VL`p=+}t|~g+uLV zbSGs-2D0-hjvM2HX?HM39caY+`lX&){oYqo$9(s^F1hhoOdSqxd^)b)#gX28`Q_J+ zO-^2atanW0hzGy>E9l$X+)Rd+o}D@jE8?6DftB_I}LTuVgvz6?6VU=2(B1T!6nM)?;5P*enoD|3~*&~5K8Z~-n?P&T)t_E<3D_Tqf{V(p3K< z#N4-i&+grOKw2$LJ6Zd=qW%Vgxg6vRhPv+GZs%h#R4CxP6pdG&QIvmkjHm5j2ZRk= zUV7ZfXwWZhqUd{(`;oin-sI->Ymms;@%GT)+o4u=etu%YG$$tJ=d-PlS7u`@+Gkt8 z@dr?E?b*7WQ?8JYWH{M!#c2hH`v+T2rJP0Qak7=N^W-B(d4{g7|LgRFlz1($(q-zy zV@9G0AzN~@p_a7CAt!%N62o~x+G{^zWa9;2U@h#yDK+VhtOf0Z+IZU7UFYDUX~- z(z~NTHgpYm4$Vv=FWvt+9Xs$Eju4&hBs0)cbJZHUWp!@&UQKKGNOk!BHWQPX$#*-9>swiunT|) z!;RQSck6lO{9ne;zj=_U3;=|*YMZuLO;zbfqo{p?=5 zYvY(yb8pkPoJQXn+B&X;luo9V4W2q3TavoEKVN(G+S80`wZ*Qu@$GLf*MFy8R@ob# zb84$8uyy(P_rABVfLyb{=19J6f;>=Rsg%x{)J|^7ebgH@J#C^nc=veXYH!%wqaudd zm{R3ii|@}Vh#lz%8#kh^hSYCGJsVHH4Uj&M0Dr-GwZxo<&k*bf(o)|H+3R&pM=AFt zwC2Jx$D9WntQg7~31_RtU@qTWu2w^#8NUinCliK>?(?hT_-Xtnz*%857#U``5c(v# zMzvOWb6`&pGNM{7ru=s+|1rP1FAo)$7+-5XYbd|ZYx%wYY&}FSQ|y>NNd#LjvPABM zFljvfBDG`lnSQTh5Wi&lg3&2I)-R8W^TLZyz$VmGtL^TLC(9-LPf$6a`(c))GlgO@S1DT`%AvuM?G&Lv zPD6C-foOSoY5{t(5m4UYyF0@2*Lh_P4!+*UWx$%mY|YtS?T&4%a)@1THE>mK{d>!Cn!$TTp>Tz~A8#yg zKX`Eaazp1JpI47D4x|>wo8Wc(^2k&8+iz13s?TuGDd=6apHDyqb;)?^N*rjGNInQ6 z!b5@-$aLWjo0BNJyj z!GDsOb?l0PD%c5Wv^KkOnm(jnb27`wI_X_0z#ifYu%$17N@HvH;DgiRDR5tX?RAqQ zaTK~8IEV`;91M5aGtK51IVGD42w||59M0k3`t|hdAAAB%uJ;o23gt`w1kS}e_fq&T zoI+N|^&iR7g)7jN-Z=J9eTKYoR_JzQUKgwa@^AAfT$3Ox0IFM#FehkL6Y;_idb0iu z=t&uWLvT&Iq(dqB|#=X3{2M@N1+~f$b%O4No1rNF;y)z#jgQLkk+vNn_>42$ zP6nw0=e3F9BrIprYS5EoF7rN9K>t^()aHQ`AP z6AJ?7>?0^0#zh}h=N)0_m{U2BP$aV zgvDIBLR`>HrxTe>CPaW6h#2jI|0)4;0XY)#%cVyt7A>n2@rWPDnlv`J2`{)UKiC8g z;87^lvQmE~i!7^+zo)Ij0yI$LEhm|bsAxQ%G0a@4BUNUgN1nF?6?YfydoBF^a z>pMehmYE5Wve3)$<|@(brzMOWkAW+7W<+C?Pqeoh*{aWMUH;ItVNXo-eSz(zqM0@F zg{6YySl#*g&fj?*r*NoG#ezy@>ScjlyN>yN+h=Fyt>Vqz`B^H|unH2ZThAk*De z%eJ%Grh1&2Z8LhYb@_!$hXDInDJp8^?5vf|W@edUfD6I`RIks1#8mSb2VY?nc)S_> zDx;%Q+fRI?0RVxr8DLrLmOnT)wwN6Di#wba5j#WH%UZoX`^bxJw5`CtB7wC;AL<6W4IAorJ%nSfBpTNd^q|UYeiXc+ z%KYJcqfSSUCPO5MWqwfe-{ z(~i*CdJvG+%50~! zipSfN>9lU6-&fC9zmE^|QhJ?e`)Tc!b=|JqHPa@Rk|ZG`-G!-65}la3Xgz5Vno?do zE9Nv=?BTfvWUO{?{7>@5ao7ud-?yt+q?hsVj^{wBsoB`}7@&ze#7}ZYUo6kph#m-V zbw)f!4U_0!;kNpHxcDL)N1{k)L-`I=Yq-G>88R9CbX8rt!iZ0XlLkt$AI1~}gy}QW zslCXo<9KLrGhMLv3ut(I26xCUEr{KyJHQ19iYd3jqZJns8LUznL^~;Uv5Y}FF&(3% z)NgD&3O)npXe_HPA1?i&kvlFXA@`LtaNs# zPSwW8wL!T7F((kzjpws5J3lbo`2qc$T-zouzGgQ7cX8=}P9^iQbYTr1VhNPw&$o{0 zt;=`6;03rAv*|>F*hwNxq6J7R-?NX?AH3&1#Fi8EFv!B7-L*nYKSHm$WxTZ{i&bAE z_J|%!8M*}hhZpTA7l=|JDv|Bz!3K;#zU)d*;<_C@!eH%Vy9)Fz$W6Sh6B7p$2PY<+ zUs*BLMd!@UIt2P=>Daj<3lJfvi`L<>aYMc8+4meC>bBK#+54(XnM+HhTs9gZl@i2` zXSbT0y9yaiw;?z11Ng2NxU;K~&#!>z)#bBywICS>w7RK9h{#pBRauEb3XoKmNT=wI@>#ZGjkFG((WMe`kHmMZ6!lBCV4FUzr#Dvbg8n}Nm0+ynWCPHG zo97qj=7?(9w`7Q6q?SO}0wq zFtkcBV3Nti_}Ic_kxHdjL2ZeYN);gL;gbQ>kx*Jtk->D$Z+U$3ry@ymqycb|_wxJ-1q@jE^D!;@-sY#plWZQD+dt@S3Vl~AZ!ne459WqoW^o!+($5^Uw1 zSX-~{K6?%E^M^J*rAo!l=&dAt*U26to3w5%lQW*r%J4|q|vv)K@I4giNz7lkF2T*OV0OeUH{SyQRybShOWn4ta1Hw5xG?X)4$g1aN= zBOe~()wN6pPKXvX`?jrZNzX_EpT#Gz)uMQL^;03$8(0PfM#Ur0-eJ^wwRBJZwPeyM zDP4K0lTZ&al_jry6uMgV(8i7W@65*E>5qJKPo|Vioj#pPmNL#2S3K{EE544Sy~Lc0 zpWtaSD5W!z<R;+H?fxu*$Va7vw7A#K8*tI@Yq@U6`!=7|B5X>Z# z;g+A_Q6L90hJ0V2e-;n#JExDG=%y13#e#|wBf<@!JpJoZ$*C%nf?*#q)h><4cuMCu zMe&h#$qKv@E~1x@JUED#>FbsYCSoUyUmL?7k+=s#{b{;yzl>~wB zdAfzL^QOgW4FgaeGf_|Cm{EXO)bbTe(=#O>;F2W3YE-1dGqn_0cfZ22VI>Q!JcMo; zR&QD@Ra$kW);`DnYqNsH$Wa3B;!1lEWpuH(zD~&jG~BJr&c;9FyYs6vqlemLY?5mf z3@+-}yM!^Zeg4Or&TwIPwdB97_~AZ}+0K?f?}vfsv6luym8mZkXJ=QIrf=S=t!!Ps z$XWFj$ebX$|Bo3*Z+00dTDldb1@%~wJ{<4I37^opGfv-8u|21j5cs{`iGH1%Z?~5B zeCjo=^61|AhCf#IkB)9z9PI=r0);}WQ!M(_iQ2}w`-|y>J>f4Wua`L}iVyCm*cvwS zj;LwU)G+09Y$XH#wb8Ca$ zw6=R@`}WBR6Q0erxpEl}y!-#r^M&WGuZzEN(<(D|tx2Z+_}<-&>5 z9Qcq;!XtMZQb{gDB!YWk7wxaw=IYbtVo_Ok2Wk$wH710FZ{%6XRWE2~9Fm!?&HcCt zGM4&sW3uC)VrT<9z@a$3^=h{+zc%V`bmL3Ze__+8y~ArHyA6LdZ+ThKYAr2MuEfZA zt^6fu8%%s2PpZ*?niQYR@Zb-SGb86Q=eM@p*5$E4);toDjR4e`67IG59+a`QN-htxqncODaYO#2aCZ#-=;>&b9t^z`y$+B9ug7Z@OAKAzFhl^vs_xT12FRl1pY zctX5h5qxKhe9L)!cCbJU3r9S0w9jwJx!r^e-5#QyxRWkX4R)v?2anX6WL*U8lfG# z(=D8yuE4^aj;WUqqK}oCU|>eRpT!uaH)&bNJ^yd80BK!s=fVvRZU6$#ZpRUJI9DHK z1LR&~bLb7>-L&feR^&R);;yJK=-zPh`;D#v`T-9HJtAkE9DXn1Puus|z1p==sm|<; z#r9=M{_+L)Z;wSGF9cUtDNjEl9qE$ItsZs_+{zYPaYn8g#uV)jmMhf0VR#A>? zZkA1Ox>)Lfz_c2q*>(kiDIO2rB-Y^eDZBxAAaP0RiYK5%qmQ1~f3J{PXNc9*t~eRV z)FiR25I9QQ$Qmrqao!$P=O5)y+F5u4tKe*|Ln8=kt+tNOZc^Lhf-ix!5y6{o0q@cu zrR;Fp9(+inu{C-f`6u7^jvc#Cu!m#3-*>E1`A2zY#mg7?QK?V<+o9K;J^Q*(7RP?Z z`xtMZy&jbFHZI0gU8)Iuos zpVH|HPQ7rZybz8`2L{LwZ^<622F7;thRGp`0Ux}W4EQ7w&05`|c<6r#biFz9gH$r= z7!UD*Z|d?qY;xtd@o;Pq5tpEweRt%qN1ht_vCK-^A5|gsmR4c@mD_B0kiUc^Bpe}F zWp}Q`O)B>*uLf$aJ3_FxfC2UGbk7uB3sObhmbN|&;x+>qnf66$=)oqtF`{TKX-p1< zhUUJrOaTE#n!ur5F(abJ71WE!8eVR=R!-nnI(G-ad`~=+?n`!c?||nr10JhW5iUwz zIvJLO{7gb+`20Q;qeh0^>*3+^`>hTxeBAPc27;L9H&1~cq7Y0ZT%Fry15Ls;mnbKE z#cIX(9krZoG?p0B2wM{D0)DJDD^At4I7|m90WlBQ>7eQnLq?Pb$w`z%I*tcQ*?JRe zt!lMaC-z`?a0no@VPg(@eP&Du6{%lDG837eRz&BrE3*}i*j}GM9*ehX5PIM!_*%$3 zlFd~25ygOVnSDro`cpw6dC!x8Iu%H9U?D^ent1k@R;g%2gg`mhB+~>8KmugzsSI8z zrl5!wrp%6$4Rd|C8<&rVofLpBS;wjGs_bayfxt)4$cWhGz2Qb z21%?~2aC;6k!1R?WW0u=0Sjx7^BA_B%lQ$`l)b?_sf<>0rd}=)z=_ao2`*^5U}oRB zBhvi2O z6vrD4W3hMq*wT{6Xf(z@LDdG4rqUo}JStx_5b}c$o4R~F8O;+_iB?jCTau~bz2sGT z$OKF*1GJ?jf{9ohKLJ$Ra1_I9Q7RVlh0(dW-N!jJ)#p9l-E(uJ-wOh*l{gs=gp^Tm zh{#QP%=xz(tx*yY!|^&XnRvR8O5TpY*OPaWJL33?!TQI8aR89YXil`IQ-r!Twsa8x zZo|L%vXPG<4Yh47(4Ixd)iecH?G9f(R&|`eR{`WD?Z->|_EWZlg2XTu@gM`Zt(#n$ zor*o8m=0cu6m1>XJEC>>r9tH=>^5V_*7_w+iuUg45VD?ZWz1&eY=alNf6j@;J@eC( zz^@7P-8k9CrAmK}rYw}caQIb|$Z;U2aIPRYBa>5cCqf*K?7*0Z%3Y~&F6-cOCdz2j z>G1U7PMErpxM4IJolF;sc`x9DJX%RK;+&Z5gr(Sq6$z3n6j0I0$%xqG@mQXUPNZbz zQUt0zBulr{jj~T9k_k^tMJdF|+2zvo-ccfdd7`kH7fo7R8rP=JHZ`~4iN&44xsVE} za5l%ay_@4E5fomS)u$$J9NtKVv6U9jfHXloX7;AIILjn%HaOhOf|n|2a=36fO=AdI z8!4u-CbRFzNYGeSFT%G}fG27kzdo@GEq&WISZ8TwNXP}qDNl*=LNXO=Y1?SYr0h;~ z@{rsiCNmzxgxnTw%rt&9tE#n`k9=&t*)rDNdms~q3^sk)@#9xu!jiD2Zh7;Ym#Wnr z%Q(#%jU87PcUrM{e5d-n`hwM4@ZA09>D~fH^~U>i*~LrJHxc5=A|{Ui!wp6+9}N7j zM&r@#qa8*_dwEB*rLK$=deK%WkGPygPFdDJG7wpEUh-lYpM$<<6zg&i99RF1WZanx(1fk~j!_q0xz~@!FEP z%PhX(V)Oi?M~+N1@<8KrXU-N3Ox+mkuC9Rqiv*Al6g8+%VKL9sbMklab6Y*6vn|f*mrvS-lzKL%AHNM;t|_=*>Kq zE7w+?YjKX|%c;}}T}(S)=t!}SolpwJq*hR~>3t==?x^3B)2A5}`+fobFVOxG4-6K*4{3HRdq`a57d+R%H z2YFEs7V;F^|rS{zHj8v*RVF@9?{Y#dcB>UYa|+PU0PS-LMZW?C zk2FwKI;8uZ{zACEH~Xoy?z0B=ZnC^Hz1|`)0}q$HbH~bJzz7$hUQn~UR;i~7e!&2a z=2UJx45FlBTiY(bYz=kG!j&KGtszdK*)~(pZnAE?%~SAtXa|~2C_yS7B7*CtD*FBC zX(|z8GBKy@a6%pORBa#G5a~4fU?^+FH*24tC#m8*cDvx2F^j}yVa+vqeGzn;d(^e53~lv7j#6 z)nR1Coz$s#2l>FCANk{vKSz>MCZo};X@_p>6(kFKC1Ib{cvYYfKeHD&e#o$BZF2OO$A3;qq1qhpZa&Dv0mNIP-W4sDT3D(W%3t5i0X8M422(e$`82 z5evn$=rD2oWt~6}A)@-mcXhB|Dh?@Yk&B{Vq3$V*4#?N|NqwqH z`LWecdky^FFnc^~;3i=!F4*4wh}UqeH_1`oWbIT|ztJR**!~5&J(pTTvacxn4Qmp) zUwea1@Y{OJZb2XIehb%W-|sHp&$LW8Wp4fTVlz}QSY>F=tKVnH-mWy9quzQfu=6-+42h!_aX+O>)AK8&hv@jxd3+S-H3qpjQq}s=jMOov z+cLb|sw@mG=*_Vtae1L6bo#*jdrqhCq$Q=mc6$6{DXsqHA3~vj2n5{!Pkrq0wUgH# z{@9oM{V%haIl@oI{j91F`Fsyqp@)LDEZD(^Le}+ncX!=#%dYO-54BpC{+)cdU%VUl z4_8Thn&Qncw&S~+h5zyq+LU1FpgG&_{DL^7hLg0Uh)Eed@{%cBPvSDch|dCTTLb;w z)vio+H`BZ6o$b!1b5B1p_mJ+P28w{JA4udadIIN=r|cfpR=;H2Sjo|`x%t^K29s$_ zcRD1l3R6L;*lN^+!Fv7bt4GTvDB5H7ba8TJ2jx0Dqn%N6cM;0=QiSxfdK;w}2W)zD zeqo{2#Q2;D1WQ+WlL-{&7EoVIP=)_?e3PDdQ|-Cj{2*r^GRC#|f^L1h}i@IWEl2Yd?xaO6196 zl@0p<5Z1oTjv#heCHgMZUD{})$|N7$yjk~A_4F6AXQQq4I9K~nYF~eeTxlx4_Z23K z*E^llwLZxX$G73fS}if3LpFp#gmel5$SI}KBup~}Jx(;*2I?7>Xe}afwAu8i_1({1 zqSEHJZF^T17Mh5yW|J=I;1)B;9L9^A3Jt{Xnb?PoM))^1v`V8{4BQU2=kL-XA<(83G!`6SE2E-91L%?RNK)i)i!TI}{{CG6V1@HIMCBP|WiVt=TfNRJ;n!}I_X^bHCezp|%m zDGc=&v3G6JM`(MF$q5(x`ZO%cC;5-4<6CydN0t)iIUXSYIje%8b$NES9PQ8iIIjZU4;>kr9WUZ`Q05+%BsW+NQvsj$P?-QF2 zXE%Ok7b}&b9ghU4%QfeZ#-AUajzQfs141%sX4SUnR5&}>B^uiJiR>gFOEVnd^;=^} zTbFR*L3c=Z>2V$5E(c1$h{j5$0Fo_fnuKH6=cXX#rG4;% zh@Nc~a|*YH+BIad88X-WEz`AV7Yd$1n%YP?Dikqy?-9JpIQ|3*xJ4mf@;O(8y$c8@ zco{;bXa7xh5#^)ZMDM9up0H_5I*AvG&@(K!$`D~b>mDPOG|gnnc%v8~QXE}}40yl9 zaWa`{%V)QXfn+FvBZh7@l@;oS2z|#N$i^wyVR&y7{-1-EN(Cq_2X=W!4lSoRO0?3m zKF)TGZTuF${0VdO1H^H+v$z_v9)y{iq*3N}yrQLyqY1>K< zRGV*+ph!bL@}-0GpC`b~?(QhHr5s5ISVRWNa3nq;WliQJ8A9xizC^a1l!PW=l@uE{ z)Bo;eu!>41XH6w=ff~sS?%V#I289E5!``V0M$uAQy9{bjlk6QxL|RNq-8^QlKM%Om z@5|q3d*GCTwhdVL3FS-eLPj>_@2OI&32xHsbqb-d*;eK@SYN{7vZ|w-CK995(ReTr zO!#qdam@W4!0|-H1Q{A@7sKYas4L|4MDbmTL)HH}L-?M>g+xBUjQ|jsP=AdB!8=#` zU7uO~nQAsr_5OPlTu$S5T(7EW#-cSRlm>u3c0IIoL9Zu(4ss!XCWOW`l8o2lH6dh_ zm!rcry1gA~G8)ZBzuH($|7GR!RvFSinF*mN{x*!?1NN@ zZq2+d`Dvfy-VUI@4G@q$nog89w`X$ca(B`#-HY#Og$@(Uy~WLTknQD#d8R&1fhGb? zp?ox+@K}{8@80YyAfv7+LdcT-u`vQd6JMEKKbUH)^0zTV<`4CPn`Vd(D z46H+%DM?Hoel38~-b}HO#W4~JJJ|)iC)q&g^p2f|v17-XP$0{Sg{)BZFlNK>(Raah zxcL0TRD`{aTb_6132;kXu&o~;(oqkojyy}T?|DpJ76$BDvewmk+@17<+I3{Be&=ah zb)WW0y^4}P{lx>v`+dVWl-%RBifEOVF+IKSR#L+p5+0B)zR(+BZG>!7{2A&IV|I4; z{^@Cht@g{aUW}GeME=T0aK!7Az3#ZM$o4Dkwvq!L?Jn05zbK38^@&N#WK-A))6mS{hZ&e#7p`iA8EUI)LBx6J&2gZ z8c55I*ajRxEHc;z?ev$1ZnwPDk;p%|`EfuK@_vhMk=%F>UODM5K_Wec%L!1`s)YhE zBJ{&Tp<090;j#k4C{zIrn)jG>s5b$U@rg(@9BPsiQxp~#7-|XtH=7cr8lTwLY=+n_Nl9=6wk=}Y6cqnz z4#m=#`HF7qEaUJ;w6)}M#{`8W^^H67XG8JP@Al(N-{3FfHTC*-`}R)fL)YJP{ozk^ z4jkx1IE#UA2kv4n2_7TU!g}5{#Qg1I2f{D2?g@sX_l=f7 zr1{TK|IkyWB6;9jUVp&%8A<+nf=COQSIF~`U;Yg>gdZVq;&SoKOP}VKGFR<89*%O;6@5tuTlY~p- z&1N?gq<*XCUobnZWSvrRB^!pMxa5rnS0yw`Q9GN|r^R*~$Ga!}?qH!<%+szRbq~rF z_myb3r)O}oiwE${CitWUY$A%!-_ocXc=IAE65d4}KJhp2fX^i+eZYf^e+pON!`iRb zB2#H3DI$$W3Zh6#Ez2V(6u}EcP{ND)LxYE|zj8-=yYv2jDU=L^!fCHDdp79ZS-KTx zYR&7L?R7f#3j^);wmbjb6FlWpDeC}91{B>>Yo`u$XGdGDMyr!Z958~%Zd;h0o3yVw zdiI(dZ#{eV$R3CV{d*6+=1tQJ3%$E;)_T@c#wynu<>}0i^wD|mVrJ4;)u7|`HJ|lG zgC^d7!+p7mQP)c6TkjW7p=tn6lCmvgk3ZT@UdQ#j{ zH9DS5I_B*e5MUt{lqZAVq(^L&}?u6)+M0@_V%B2k8uK-9hYMdPP{RAkkRc})7RiB{6rGJS2(h@^ZTLu!YYG}JqK03s) zVF}j^{wZj!Ei8De2fg)Nn-pDMAZQsK!nrM2T5SE^> zZ3OwdT$$bjx}Eg!aIBIGlGq-2o!%_4fO=0VOVVl$DoR02DXo<1;+%Hdtv9dRlCI25 zFxPXsvOn#i?R!^3xkw@Pw?uj+3qWoB2|-wLE?*2lSo!V%;=tkEfp)==A4ivMEK_|00&bZ3EF8|{rx2P6`f+7j>);3F z+QGHd86Qv}Arg&I){>`7jx2{07Up??-8I2eMMB+$C>CfTI)iK-S4)2?WNi6}#wZ4gi%pQn|k zF{wZZlEX`rdLn#_ix9r`1mEh9K5q*$!oh~oq+=d5YoWcfzskr;XDAS6tJSu&3IplE8@`I zgWmXI71_A!x>Hx}+?CiEx1$1K^85cilnZ}Ik2(All2(i~tfzS-_J5!B8%X$8+5WF^$w$0%|LK>Rw;mArp+$mSd!7N2x7x zY~x?K$9k<&30-F|TGYD&b+`F^h4)T!mX8u)1E1h%p%Rz*kf2Hi%UMKDhdC4n5aB(V z-mbMasi=9l{dA}A<*9*u>oK-QBVA?w&o}@w1)I#?Oww>}AJ~9{pj9+Gjhe)s@blu7@Uec2_4u zwNxirz0iEJgw?dV`uPt5$(Iw|GrjM?%*_7%)4Pw4k6m7Su;x@V|Kr9RZ+!67sRwV| zUwrVv;$_p*;6R6c-3KDHN^2aXr@wCGp^?W&zCQAV)(i(kz?dVp=y%LJwZXE?K^Ip; z1g0^eP_R?FOt7eiC>afLcgsv5QwtenY4_U&1_cIDN4#@%eLZbS``2}gr_eE7+{f^M zgfK6DKV37!k~G zyU*h3&uU{8vJ&`BVrEk6Jdw6LrLIVN{Sk?y8|5g0=C~Ax9$m#xYJl_hBoLe;+yIH; zqnEWG7#<=`2KeS7NLJK`h#{Cg`WQ1NNT?XcQ?b)rQjAa0FQ<$szq3Zch~cnNyr+aP z_0<;>%&(6MV(?~I?F*OzQ+~)VCCMpSmhdAgofoI^4Oa`451#{~D${@$}sZ6}kJ@*w46?UA;Fgs5EtYQc?I#hJDGaHP_u#___&i!=30_??h&{(VZ}@ zB=K77QequHGq;TgU`a{~N)J6j#NfPxBGc9o4Qw*v4ft_|CXX*glW^KLs)inMA~NS3 z#$L}R{ztC8%`lV$h@uacupz;j!LDp8;*d}BXpo+sZ(XCny>XP~ z3+g}SJkTC6{k$t495iE z2%$?@lBw z;)-q4(|Hgqe82IeHCR#D_>oSj8n-r{ctV!+KULi`HVy@zrM;bwZ~=j*N@T@Iey z8Tr!5J^fR5$mS&e(wB^P}n%nJy_-FLio9B@7 z5?zUgh;K$>Del9Ot96};dT$1?yT4pVhciixMNXs60Erc&0G=|+Rz@Ne17biy+nh*J z{u{Iue4kXb6nb2%#}qMj>8b9#*bt3|84L*1HJ;ocz{lE0;m!!g>W~8k6kI~W?Ewcf z#)dzXNJM~|TaQn!O_9NcOFIHt3P%Tf37L*B5V674rBcjE!k*ywC;nPOf=5E`pa}PpzH{!Hb*ebjStbCNlY{ zNd_w0#bZg4&C#W8)bFNaT~*8H0(YQd!a*J=mCF^t|JF4tG*d7*brTs0Dh`EmG4?gm z=JGioF`iV?ad7t7>I-v@GhP!{Y!sI%Ge3MOeyQRnN;E-u8kE@|*nTJs`XPjqA}F|L zJm4wJ8t%omg8ovu)vDeLXdMqCv;A-!x-!eeFIvTW5_c4#8hs3Z-@8Fd%K6KVrmJ4by1A%K7R`r zzP*EQbzyJS=i9)>-IJ4(YO2d@y`&aAW_Q|<6?;`<^@cA6GeLFy^5d6Vm+i4$5r2VU zY&UK={v!Viw*9u}<${zu`1bCt_h8p{7gts;8*4VlkHzn>(GH(;M!ibDzy9j>)wjI_ zo$mDA2^f1MRWz>FiNmBD)9PDSnx3$69RW3QS>Q`Ejq8Pb>uQ`Eo@=QhV4i|LjG@P< zgQ@VeRN1)J428`9^U$Fa5a4uo0nNM)WV3PFSh)IT>N~60{>!5WS32q=yKh#1fM#^^ z#8t<+PrT3<*USYg+#|lG^L<%PD#nisbGP|yrIDWR>K6KU8$;9#p(JN11 zD;r#UZ3u75)yFeCc3hHXLVxb{%zGcYjN4_rFo!3R%O6KB$C;U!m1I8BQdg$we%y8^ za2?Uo^HbVssC|FY$q7^=*ZJ?VaP!CE(-K(~xnGjPx=*RAh>di9*d|Iuq^Pa_k6Sms z&KL|oINa{#8sF|gfA|~phxdclER2kbFL@9<6J=8_q%{=$axHW?Strt39BCc-pw**3 ztzIh6cX#HpXD_*=q27=#yzuDJdNN->cI@tG)>@gJsZEm*7fF>pp<53fY81+iwbhev z%;$H`cgrPZH80tF&F>eIjble&SWMr2{CNG}+f%iyX z;mQy!U-He)(Pm@#G)5Fi8SO(PC?l7?*w?^bvT>z3Clo6e9hoJP9aE+yQEW`sp*d^q z*-@{F2A5`LmTF~$T?UrlatGo zA#4B{l)c)ON<$s}1*9ZC_&kh+niy9bpM;TUY)nC|cD63cu%YT3k4(YuLj+f)H+~fL z`%3~#3_p#q@$NuAT`4oOj=V`DyG;$bu5NJD4tW|f!C_=D!O}PA8R_o- zyAMXuW6aF%Tb`VXW-Co6tIQfH5=OnTpzd8D@IbE`-}smjt}s?2l`wTsBNfs2`FHxl z+AEE4N!FIa#-AsW`(~+X(`al%lgnls1a8XZ<^twB>lPr>3VxUfUidCK;9auxTG{ip zvh;{7Jt9lrmv6s6LLTSHFTX~g{F08H1+l-9$nF9dtOnmrfSlV zZRB0}vOX~Kp^=Y{d~)Qmk!M*kRUZ)=X z-Jx9RxM>cZS-|$O42W?;b%CItD4n=OLkUbi%&=HK?boZZ`~e8WBhiozNyuYSao2}Q62Wy!oAk0W0QVhf85{Lw* zSRN1iBeQ{Upu*=i6$sVkq-AaW+4#%)zk=`lGwMimE?jm_-IYLnAr7LbZNv{DdQrI2 z;5krS62v6Y`NZWwKKvE+kJl$^>gdMpH{77!x$(-ACvo-tL`^I&zq%HvJraC3|E~20^w3@BII^`!-yu&awIEsLtHq_&rJO zR)@02#$RJJmWo8CNdGC87}n4H%%yVu9_*l3fM%4q(7?PAX~Mj&m$JGEwWc8;zWn~vfVMGfJB8P(c6H$?#yW_K%9D3o?|+T3bF zQr~~A3-O83Zq3cMS_UTh*f^g<=%i9Ek}8;%m%71tN15PoC%n^n}dQ^5D0&kZy^A??EIr zpIz}S?{4KX-Ad9e^gOSHedC*#uRyYyrlUv#0g+^*)7i05!~93BPSulG{ldQN@CXbX zH6TrJT=CUAQJy@dnn^RqK2dhlaW)0za|a3s02MQas{y<(#YKSn5& z0@_fjk&Y9S+M4;X@rgz{Ej~VToVqgP{&M(IX=-Zb(B!1HpIyB@2O9Ps8pEBHv?koo z5GatRu0ymYswbdzw<8RkRyM6boJ$&lmu@VLR&bYCPfcGYW(`I{sUSC8+kLW>(Fd09 z)^4a*uAkXCKab8(s=Rn^o2Ugo2R>g}MnSdwFyLpBK_@Iu-ti zWGWs*EA$r%NphU=jo5*V)Mya7;`(#Wp$Eu}hg3oBZ#W|J<*$#>*MBBjygIjf^qQlq zv$L0kkKJCs23aEg~NvzWEb~6h-3f2f!SGO_@1CL)Y=*dr{Vjs4bIaB9i{L-ayq{zUKL$+Wx`;xQTvR6I@$1%JSeSa*Ld#i_jN|&nH3Bcc|irTSa@RIV42h@B+yJB+^HCP*}Lx zO)f*bb5`MxvMOrBB;o!DXoz)>qk=tKcNAP+@^O z<{VA7_FA3PT#ql@gJtmFa(+GxJX0wfJ(w-I2QE|YNDi1bMf}K0sQdJn?(Tfa6J;CM z14bLleaIuy%_%$U$BQK-&^Xq+`^i=FtWXo~ zWgVvVledB1FXNsn)c~a>%ASuF7T4F8EpOf#ZDxYPd*U(iFo&QkB5KS$WKw;WxFw-^ ziS&w9j`dpec}WKMQ|;IC6O`nXs60kCn=M8^`q3yrQew}Sg1biHL9}^sQ2|q5Pd{2jhs~N=7bU8vTPRj12(kK?1)Ty9@ojh=}dL_ehkloN+g-d(jGWYjVL16 z^hcwxev9gc)a%U8wA;0?H;u%UH2Xl-Niy3ZOgSQD%cYn%-ly@UrFl&IWAA%kZw0_3 zGv|(eptrnj1`m|aU^^sj)VQ4sqM~d_;d~1wv(6ViIk>YUdzUtzgvdgiQ(?S(OcPe{ zyBYBXI%Kb=@S0aoJohMl4gq%&iM*n~3Ts+1+G&{XBx2Q%qv zO-d(a(zR+j^9ghV+jb&Mx8&Q)bPC`0B6mi`E#*(8J$Qk_5>)rXdn_=0ikbsCNzok$ z0Sf&FEeA9>7!a6-;M1GMVl-ALVy%B1XbJ5Yg>=n?cL2t!^)!qlrVX5&-Z@o`my6j| znY3#ZvS<7RQngSyQJIoX<^h8O16Hb#vmk^dQjnn7JO$a~S@rU!cxj8x<&EEiUOYkt zJ{sSLJrj6Te2c|!*l)$45|8G|VE!plRDz96<@8&hy_>DrmK!BdiVijoO4OoDkX0qT zBw9E6OXJtoZ!=>x1XbP=8M+CGK;Timmo>QWwEZV@K|>Aj*&QuYL^8UV2pgHBrIPvx zp-w^@B#i?a*l?i??q}6}$CW1`{)W(}Qoi)S{V#2|BauccKi=9`sni?y+FLiCb`Rhl z4Cfx+rE#CXSSD#+8Ifo{UvG@HE8APmIP>iYo|Qq~Qyg1+1tj@dyrgftn9jhJx^mb- zVP)PCe+7b^=}SH!N#)J;O?1+DVMs+;z*B*rlx>8{xkrkjOd}$nwNOSryRD(yKr1HD zs|^}T#|-q=Y_Ao?#?Mc$teED?%IV?z^{P-D8^gW;VIyf~WkSWW_+umX^B5I+`S)|> zVIcWE>V6f|-^Jmhhw`JbH3ewv^6J8ZP`xfJtX^1B@7Q`)Is1KbRylhCq3$b;Nxsrx z`I~a)2Z)iz9(coj9?yN^6r4>5Dt><@0C6clQB_dSl18;rf5xfxMYuUEPod*HOrL9! z#c~uRAeinJWz*&Xp~*xBZ96ZGm}AbCT5R$XeedE>hX&nKD-beKqeJL!h$C6z((aSN zSKYJRS=HeSo-WUPQJ+RQFcy32(UQmyq?E@Kwgcl}VIsazm~suo<`D`vUlfz@;%x{L zZ?RO&B4c)h(Ul*owcFC3rDD5NZeyYu^;+k1W}|F0NY%{ecD@|S|8G`J24k8q0aVKu zWv_dFJStTLBSkDJ{91F7xYtiSqe&q=2LzHJ0>H+)kOwov26L{gY$C+>=Fkrou4<1 z`T0vns~VV;s$O1k7b-u$SP1`*&m5H$gns|%nWNj6jbd?ns;8d6^+0mqjUR=Jg(h+} z^u!aPVzJpQ6v^YcSQusFI*M6deiep{>MdN=o0x#>L2$-HIZ)*OPm&=u(zm$_05cMh zBWNM_FzgKTPWS0wx?Y0|Uw589zFilCGz#N;tB*t<^yrKQtXlDBRy zuN?jRIJHD3;idpUBe|hO^5!O}g4Nuz9=0ATObph4i~62ROS|_{=(!5FYJcg{y-O1L z-`HVp+kVBdZC#$b_ufV}bog+gmpyXuInBZ1;e)Sy<$u6G@rHZv zZDxaq59fQiBL|JaV)pRCd++6XE#e#7mDGtm$Xqh;IgxEJ=sv=xCH+8VJ)N{L{2;2f z!^(lhV~L$Hm~W)(N!MXC=}JS|hSeTdGG<8HP9Gv+3bA;)!3;1A|u z-?FT5G)y?x-A-nSG zJTAzLxG3wxcd(E`!ng??yH1uizJ=qdUUy?k`u!7xxG7gGx*LYSX<3wBp>%gRMH>N^ zkIt5oKo>(Zz(HbRp~Ina&DPU!y6c~L7CH0vTTdbTol&k|u5%J`z&`SVJn5 zLe)mK56%`-k`p;Ad~$r{(|%gDfk4QEmzN}AX;i1awF|d5{2tKzg|GFEHE>yqs=zA^xX^8rjFV&!yXVXq z=fhTDW0|GE0a&CyL?1w(u|PkB z5um~Ff~wTh48T@;nK?R2Vw&+Xo8;+p>i&?~PPJB#AK&-YMsw$iQpb)SKc1m)kuqe4 zamd9Yg+gsR?U|%KFqLDez~6-3CU>0qw;b3 zSw#EO;+s6l#z;x$@Lx(*fSX6|9(gSq?ZZU-zeuG2nS(uwxI!e= zidKY;kH@CjL;Rwu@~pe+Ok7aVL-%#kW{vK^Wn@Je_UIj>#7M z8-4nb1QKFKF{5n`d<}=iOKOlTYN&Phptjnr4{PXewjT7(NAG#Gq4ygcWAhx!{&@RN zbxb{r?)*s$JDP)Xv2xT?!_&*U`h_b6(8BHFT0t-8;>Ka5Rw`8sQFGda~Zp`VnQah8VG^_d5u+<~FV{urvf+Uz9} z501F`Y2f|DrK>%hsK&CT+$Fa!71K6<#B=ksAMshZKS8Dr6pOIOEKq|=uS+I_PG&*8 zC%GJs4p}=lGt-KOGKu2MbQ@X&6c4;Wv2c*yX4>V-Xl7!3Y$|SK;Z5+7Tp6b(iaWT! zg~O3rCE`EQ2Vz`o{SkM{v;GV=b>F03A08}*11Und!N`q`;LyP>(ugG5W22=p2nTcZ zSQHR1MjeF?NTo=ocTLYw`p+!Zx7FwEL?X3)T^ONGZ`-c5^-FA9$3C7=%+`2Ngok=y zFAO?A&k7MHFFkvS1Z_8xB8X*$_O0_S8}oS7_LJQOueV!lx2F1&d#<;v^~D|(&#stI z*YBR}-&_T}F;U=Wf~9JY4CF*leE_5W=&?(%aLPLjPrcUf?{=HdTq$qdO*AzVpPgA- zo0*Nn8)gG_hOQOk}r&nO=k1C!lldG z^Dl)!5{i9wfFz^j#x>!5zA@cw`u)v&aEgqN;THMU<1ymOR9M2tXr+p!hN>pB+4NF4 zJYjYht}K>H(StXXMn{{ov6$_1pw@*ZbMGWx>Rh+hYSq8ksZ`TBWi%QG?;Ll*0^?tT zfQbGO&BpM%k)woP?de#>kO~{0I$ce_kpO6|6+*)ZhJvYf4Q=fW=E{P* z<%1q`ZeqO7KI#>$N#^F4`YXu%cy*zap=eSd7b+GG8~_H1ZxdUge8;wcKdQHNpKzp|a(2^xCUW9|bbZ$mlCD3NMw<0~lT@yvxu%V>G zYX_K1(mvM=GmMO({bo3HTdf}0Qvaxg4^rtuAx#-bNGB#I@yK-g{kBli z;oA=xfuD#Y*YG~27T4B@=~1d3 z)g6k3u{oUh9;|rasH4nMnMf)%qzX-$te=i~5`v_G`OkTQs zbTklfoMkQ*M?+FoX7-VAiUC0A>fl|f-6xLEJs308u=nooFx^FX5K~tHxJVxmc>&lLB zd*#80jXe^~7bL?W>%`4B ze85b>Fr4ilh2Y;0(|>EE^8*J3AH$qir9`Rn3D&@X8uxA8<< zx7B&`)R|qKqHQOlk%YILjz%i^LUJLLN+jA8eq?H|oxQ}P+G{WTwF9Nx{tg&E3ZfNZ zF83aKeWAE(GFyWQ;kl+k2>>ngIRC@+1dbuq;`XNE2MlkTPzZX?d7S9bDtB>`a2t+IuVAI7 z6eMrY-OP0Cj-0)(i>&J__%{mP(!R!?;F95;e2pZfLd2pD6~GL2Rs2#=%{lvW!yC)^ z?MjuJj-Dd+V3B%S5`4cOa%jYZ(E`b9dUJWhcbC~p?JVxQG~00hB1Lp4`Vn)GK)USSVI<1R2s9vn2v(&N#D z2UDc9iGIF%plFfk%4B)EJlW2W#ih>^mm$+ok2}%+vEo&@JBaa7P(7XvUhgw2NBdEy zDAiFYWV^C_>h$soMRsvuM~WMNGH{Iy93EeO&1*>t4*47R#g zres|x76-M1YuoomZ#xF2%gK@^vo5OD2!}a~RI)6@Jj_2pm%Wq? zu&u={$7gftFJL>Uy&yJ2hiJ{!;yseCjoX6lX;&ikyOj3ROYfH!MAdDe@iMarj(4C@ zx&EO!uQn(oa4r#kj?&jDiWyK~DN&POvTOf|ZQCJ`hRmoB&WuDtV`1UQwysky;{k~o ziFEVK@^*k&oo!3go>AaO>WE5YXLc6zolM4zrl)86GZT3G0XMy`4M4O$&rhoXD@Kq? z%(&aKl&mod6GcetH@-SGK3Yod-G6peM1D=hrlxw6MZ#C1c(XNLDGK^0E%Oa!a|dnl z4fS1oqhVqq`;iec9ZKv1S<&n24kAr5ylJ^X;PrM#H0sB3Yc~Kwz{!(-*qRRbl!XX)W&zG|8?Wkldt^O|B`+3#Ct!|zV3Aoe&IW% z?S~%x#x~tvQXBA}=sV&QIVUnzXCR7sq|uCncT@&Syoj0tj6FmZiQS9fR>+RFd}%LI<{s&Ioq5qcx;G$tIQ-m9~+{ob1W4Wpim^ zUX)^V8GSgD=M*LrS*!mPf|)G{^MVg@7X7bKNhX+CgW;Pj_&+7COS)h=pAhMRTQo^_ zQJGM2%h3t&Fl&d)5daLqu<8RRIptC3y(ZBg!`n>fz{x2c!qf*ZP(`Z(`MF|OtfF#? zT8R$0hRGFJMlF$m7pH+Y$5=GH$fRMNz7SFgyqS)N%QPkKRCgFMD4#hJ z!BAuJbMJH#8iP@{m#Q>-_mXDyY4t2Fo^#NtwO%s6x0TJQAF|=4?9tjfI=3$4+sLY) zUn;wZ+#Ifp%(2Tlg`zZZV?vp2mv^NCMn-u>B+fBdt%cD5H5+B@CE&krxxRj3bnJJ!|pgXbi6;D~P{AR=W0IpWqSO54#N;jc3*D%)Y&olWEhK zZx@z!k2dP2QD~$wSQ9wxvubCqEuA8nZa^VjxaRWJT4P6)LLj|PwN{4h-}1))u+%-& zh6TeRQG0*3(@dpWxd3JmIuOZ-dBDxdWI3Otv@?p_Ej_pHqFh`a7aSzNsH z9S@D+JnHAvfAG%Mt6$x^)BT~B&1+WL`1C72_*-|jU;XO#oxkycSG;25!Hvf^HXh_X znQWf^Jag_RWq%u>XoV80ouC3e`+8Q!B4l4v>}ILu$mF7l_mrc4Jwh*ZPKd)0G)Bzo zXICLV);}!loCB7RZKkQOYN;mMI=d8V=Lh2B8H z1-`ZMTW`IQw#{!tKAX+;=Im@%$&9kIv(2?u6Oua2=k`v%=tU>@a{1xm&n_(d$CdSs zg}JS*#UK92N8aA;_lZqPr7A*@tX2E{?%A_vUWoT)iXqT;0Y>5ufy|iOKm^~GH8jLgIstcPf!avYjMYJvc0Lv z3)K1^5p&b6(Ri|DE~k?D!ynEIOQv96#S*xc*lYIo9>Hl1hUQgabNCO}@k#7Fdhn&s z@wwyR(VaUUc)+~r@P~mon4ZP*@P}3UhK-FIO!)AJb@o31uss~Ue`)Eu>B=7s21n$9 z#>@d6npJ?{I%!*kc&-tR5%e2={b31YdOFOJ@8-sp!x}v^AG~-QJecQRteuM`yPKQG z!5PXW3%6EcQ3u}vOxJ$DzuqJ2GnOdVssx<@C3?aVG@ZWvEw*>$23JeJt%HIsR{k9Mei7htC&2Z}=!W|J!rf zC=Z}V0QEF{bp9?b&q6`2HHB%+j zA0PW7W>R_TQ;CkHk(Z%G7v)ni39v)nQ6)$_L={XbVOl*C79Gw1l?w80m8shF4LAug zt}+U#Ms2IeM>jZ#P1yX17X@s)0FNE=5_pYl?~aDW!k~{PHtNJnWkrkN2NlBmFuBF&JAlJ5A z%PWg#dp#3A1!N;A!DtNB1~F%L)}Nz*yR^LBNs~$(j41#_k@w{o>E3bnEWYu+Pd<=Q zF%qQ@m*{^kH2l-ln+H8Z&M|Zth6t85E9pR1w?<`~3gs#{uSme5>Jw!bWrNxpO|)mC zhJ5L7)Y90l!^X0XlFk%omk54#I|;O&d!a{+d{|?#YHe+!)s&L#Br()?{*vShbl6_Bjf?egcGTJ8h{R(uG(zEJ1{;|PydejYxD7$ z@0xkqj!)+HDfLwy1z+~ad7l9rd?)<6`jg}$mPhHg`dRQjx>wTmWLsCY4tM0OE>G`a zmnaB1Q(e_6I);-AO>V2{+*&`_o;=vb6taIp7p#n-GFL8pWny9A6xWLwyzEPficB7I zZFBPYp82m406fqXIbGD8(#fIr4B<56CCD)=mIQGuUFa?>bPH*)55$^~Y&L-tJP;}9 z3Q_N2D30Vit^@9SChXya42gg`hco$H5d_2_#tm=kVivHph>&|Q4rMc>M~ig9Q$WKS zPUmKscu5LW#^*hmn$1aJ?8TBf@HInYIdS8io%2H3P#D+s1fx$=IZsV^O}JE^pD&lf z0ESv+B1a-ICcJo<;$BWUuW{oZGZDltrUFBl5J%8$8YNZ$1v^i43n{h$flOu-nB}sm zJR3xlnJP~1por;pxEp|aH4^TT8!a2b(V9JY2!oqvBCgUNVKU~|MJFA`wl3+DLiogF zg$9QQH#>C*FL;FoKoAv*j;6y`dsg#NAG>#nVo^wC(hkw+P1Eq|1xiPp>~R zmkux26mD5F2f-2!Jx2f60056Ro+cE4v{vBB;mVSZ6WJj)002YW$%TMnoHDs8=oi#9 z|4uAKKL8?^9pPLI5Bs{Gih)ZbR{?_Gx2YrO?EKLb&N|48XPyedKwq6O$WNe7PwT0D{LGYCE67v?`Y^D%;9aIeE|Z3d2;c>>dp&KoN$~ICtj$fIUe_x3=X?D ztj=S$D6~Q5b!xQ>+}u0-g(i-p9GV+!tgfz^kH(MBPS4Zwj=fZ7<17+`<2PZpQq9H- zs*4L73PL>mj%u$r(xLpy`SU=V%f~wm&-2UhJW;sC7ZU6K5We^`W9zTL&zSrkyvmV( zI=BMCj{IXd9r4mf{+SCjn;-e_`8ndwt(z)3#O;wyzzx8drk$&GHXNmX7i(d;RA?^e zQ=5B<$iX$nTyqdf>}{s<%gq8ARHOk9mCO0YaxS%@5@%H+oY>n)<(3=yvP%4cKDjUG z^JzW;uNMaXbomGGuxIQ~uIW#&Ik{^xth-)&dUDsvHSJxGmS{aabLo=dKmMjS{new7 z{?*GL`SK(DZ3_B8Xa&=ym23VzGUw0YBe*G#n*yLIA}OL304IvZs5=0gG9fh_(~j)` zkqCDjzu@PH3fx2%g;l!ym%N{A(o>7YrR2~W#;c=0JG)pPKsJ(@&T=0oH8-D|-`{xX z((lL7Q?7aY#=Nlr^iK1)W>IAnh@>3+7MbwOvDe=4vi0>+DcuIMrBW#xyzQ2jUhzTW zzxVL>Ga)cbGx;*Yz3}QTTN^-X=5_Eb{}cI}{ta=DpPTthMnjN;RiqXUVz?a+;`?}u zo)~9dQ2cW6FK$9>8X{%>`36D+gW2?tir&2MlINU}+S+YUb+ixS-@ovf^&v5ja|ncC+&vmwlBYmMf-Qy@l-aJY5- zXk#6ASV8{4%1l;nsw~WJUAG8`02b{YfpU7rsGc*H#fFy8yYWh8X|+vk;Ceh&D;2{f zyc{0J@xqHll{w{!#%P2qQYqFJ6bzb|=|5Pa@?b&NF^dOI1H8hbO(GszNc9$H7Ge(;*y-uky4T!51i=lIGaugWwHKjShzG$9DTYdQbxhy)CPNR{{wL1ke z=yW<5zEMSxacqZ(f>-JMUY|iL9b=$xK~o&yV`;2vm_U6rk`#+$_lPY+(wo>p1ML{2 zy@3}IUpplAy6Dp{C*vK)4tYeD8|89COA;H@we*RPFOV@O9RzRlTP|esd0UqL)B&md zvBOUg)q_c1wioXJp9fZAUyNx1rw|Pv{<}%!_oZNoQU&%wha=%sD8xG@n9qKJ`AnK& zAW}(SRUXMSZU4y&ZU1=7lAf0^rk2@O)Wj)c9ywu}BlwS(W?nsaL+Ly2`L@}GcBxs) zoq_wg88!fm+RCg`^^TkHU{I{$-(gNayk8r>Z+&U>y`9X<>#3X1?GP?BX5>~HH+A#< z-1SS;vqSFsz*nOuUSVKqzm;{RZy8PLTiI5*tx)NE(LFHl26am#phLxR!!y5#qjWUa zC{oGJiQ~82e4NM-^0(}s%#_Q6xk3@6=VPRf>#dfPL=NB~oykAqx{tip&F$gLL}v%d zWc|h4ip1G@(b@Gi(AG$fAqoMEduTR zD!Hl#`CPxPz+`j}$~98)7v_(-@SUFXvo%;|FSCEoL#I-TzV3HMqs@)suuH$0#z)nJ z)`T|n`KXXTJ%n10O0nNb?b`kX)2W)Y#{h`4`z*PF=9Zo}sq7mxs3Ctfnf63&&xxbM|^@sND`H9mA(|2@z%*xXh}W*TrT~_qm%Q|^+g!$a2}42 z2hIZhlWt(tcAa{&jGq&T!$r6$q(~SXskRs*AidXW6~>ZZanY@U$AV-Tk3~|jYlQZr z<9Gc$2n;1*%!YEznAC*FK#NDJm0rJ|&F53)BJ(d9T7r4|61KOO(I=-ve~5iB7}@*^ zAzbZ?V1fDHHnDAVGQZjRT-JZTL~pZHViUA{5@BE|wf$_g0i_TY_~a<&WMw@wcinmC zBcv!*wg@KYj&*A?lWO0;+5}9xp(3CgS6=qHOYtH5IzFP9vjOqnn!OH z4woPFKvrs`&^OSmklftxhaXfxGEmCYY(B%@i&}0$+N%-MdBO0$}$a$K} z&P6?PB2w(#qg;M59^}G(%KVD?aV(Q%ERxdSzjo$*Gf!Bn`(_E*3J%QcS-g3skd|XT z1sE(aF;@8`5Wlf}TK9~`oeY@kKKvR(BhV)?dEq#ThCt)Y(o#S#g9Ln<0y$)7ruBks zZ)mzGwuW}7gLZv#mc zeV=(p0f+h6;oIK!u6JE``d#1)u|gd#(9n30Ipkc49;H{OfsV62ad(uLn5ChhPN4*Yr&-MI#yhMPZpn>3E0 z0@2Tm)_|U;p8g{FVLt)p`CIA5Qwm6hOuxVdLIu?h5z8^D15ap|S|DIJ)PVLY^`E*d z8oz*;J@c3BDd_nK2chBCEz4pJxFxV!{#uV3iI-yWQf;=G&3QN{GajXN%4bW3Vm=XnrzyzXGP_*RVWMf?Cd}#3!f%eq4sAqUT}g-TZx_`{wiQ z8bHCBEVvvhAcz*gd%bj~SSk6+Q3kL?t(4EEaw*7))NgeAObnO^>1zw+$}HnY+N^;+ zJs!`!-2j6VNDP-T(daXc*9b)wmB_tT?h@FOydw3~Q=TF+1&O znt|yj(dT4ez{2@f2sST0Je

2P)_s*k^L4o2|`nlt-f>02$G2A`cL9QYnoAgei%H zc;qH3LLL)?c%lSBRQ1NQ827G}f|5Ea#F;@ME*4H@Ny7PrZgcd8y7l4bxKeQz0Ib<8 zs&L2Coyuij8uw5t7wjv~jRs$gg%xao&iY6pJbu|J44eD;u|l7nk<-fb|J4E$#s{ z=a?syB_y%Fetuy%YTOlN>&nJo>jdln^fJLE zzl%%V_0g9+_#oMFn`!S&T#okj>K&X;D67~w#u5KyVbW*_zBKwo zsPSohRWI=ny`aV?2UL*R!Y059PEtSO5(*yU8*J&9n{n6am&;9NDLq8+-P{pB7kt&% z{PMOxed-4wJ+gzl?~7xJ!qp;qC#*G7x0`rtE)~z}pS()w?vF15Z3<-js4e zXnR7*5mUS&AD(k-Dw@dXKT`0#cCDFgcTmWfR;OD|1CWE`N2Qp}&6n2KmbY=MZF!N( zxp0;_LbDU;c3}kY8zg0hd?mcNa(5t_g|UZXPfcTBOQ0JfmYb|N4scZ-$}qBeO7tKO z00lOQkCI7dEmHBJ0N^NRrjvdpOz>|Z8^Xc9xFBZOQ<;R5par1LpmHFw1qJJ8u& zM;4wpPNhN=3FtQAO-Ki(5e@$b8)LhPI))fIl6k0y;W&F#U$brdk3I67`I!n9X6RWi zQMoVpX|RuQ^`x&L8o)&Rm0YTrf|{q(*iXyo@qkxK6%)wVWS0OcDW1^&Paa;LA|9B7 z=~^3=(Bb8YUgvY=D+O3J>Jai=y-?@U+8YG@?koV3mPwxhks|%0N3W@CAAS&Ba=+gl&5h5_ zlk;LUm$Q7uH}GM7jG6CVwEm#~jMh{|(=XiCL|wyDUq#*$4-j-dxP`0E2DU0yNA?R} zC(dq7ZjICWB%_07r$E~nvEk&f=U0NOVL;uPJ`3@hZ zdOZXxoVOdT)=+2Q;_ivnRU8|j9`er- ztbFWxaraOaf}$h{)BRDlrzDEOe&TvYx(U+7Ig@;tGsuQTG}o^NgW$t6za(x@mG>;` zdw3YkV>H238K)YRBq+Diptq~Bg0*Q)Q`gqOBR*P}Ww2o1hW)nCPbe7*xw6_y=N&!M zSHSe7;0`k&stC<_x~$bqP`4P@*%fphib!49Gk{L_aDP)!-i*~Dq{6CLFXu3sSdhM1tN4nueVvW$8IGO6P?PimI z#AKxBhZR-{mQi!Z;U8iQ4-vcqE^o1T&E`4~C~l~9-kSY0<}Z4tv9U>%ykBXx)4d2G zRS;#m1TcaoD<`-}lON^#V zbKmhBu0K9VVo=^ejktf~-hRJt%gss+CG&Hw%EmfL$`rmo=*lRo8-Q9Db7W8^fD-ymFU*qxIp!>HY|PK)d{kpm z@PKy)iwo@tVc>8_8S+iSs;sU&xY1r6%I-$kX`$2UnkUGm6vj8givx?TU_~a5?hvO~ zG6<%7J+ML(gkk{I2l}0Smbx)ZVK;T{ye%ZvnP>E*0RCn`E-6=Y?(CgmdJnGzfd*pkZ zw>WPB)y^~sY=9yfzW-Z}O&TP0KQ zGEUAkqq%S$*SPa13(?NWnjQlG%()&x)8f4ogXAamBf1$yr|P zWk$|m&KN7{Z!^7doF5A`Ao?9U*W|xe{ z4?%m>{=~9DQat8Ad@IK4YAre+eNMeX!Bwcnu1p6C6d4Aom_icv7CVz(5~V@3fo_~^EFH;Nv6YxvlM@f9!h9rt+w zbpC_0w|CFo`+LrGY0hUe(M0Y?uymzm_kTk_mxyMvU+!k2@m$R-?8_0LiykYp(ruQ? z#X_`w3gF+Ac^+l`-yglWZlZXPsSczFZp@Cgigz^Lrn*dktdE)XIAr_5PO45Idf=Ph4MpP0niAqgW&wN#7SQ{abHy0fv#6pJ{FW0|$ zh%_JdvgNquOSqR=e`nG zjFEq>SWY6-<9TxKqkGhpRHZq+eY=c*zB6nU^^N=|46=kah}YXPrNM=wPX7KqfdViQiG4?>=?6gDLmK?4`j*=?E31j zypT<@VR!Okl6C3uEu$SH-p(T%0)DNBmw~-M__bB?IqZy=mT|ucoxgb7?jP3L+ntpx zfY^K8Z#jF@%@;0gn)Uh9XKuOW^y!6c;qP~ze3HKl4M0Jw)dj2<@x*z8)mIumvd-#v zZh>LjzScDN2XLDG{;7P1p=jISDR^4RIYh_>+HO~ZWJirq5QpS?Je)L{V}Az*fN4%r zDUBlm7R{#l^}{Ed`10?DbJ?ajc4hT=`wf1foS)yy9#0oa*A`;02)EpH7B}ZuC3GK^ zX9~sU;lFJL2&zr9rM1JKNge&NS9^6&v7|%Jc1^^M??Ou&Xd`M!j(0&4f4N1S6(Q zU2drl@L2lFgMjNu=V1+Jk{o%!U@o+%k2(-sebimI^P%2GBY`79^`lYM1PVr$-D!&x zoTa<`JP~KYBS(uCs|+(RndMSFJ^+lq%*?_Z53LCk0@JD%oI9}uQZiFPjfg}ROaDxQ zz#fb!t2Xch(bZ~din_QSc5SSsIQV&s^K!8q69tZ;P*|7|&jzQBRA3x)CxF4k?x(Bx$SH*{QXk7F|SJq+3f zzj}Q zwLmcnxwjj#p3=4*m_BNX5b$Wc*PD&R3ACx=AbQjWwKj9DM&)y89ozsdK|RSrCICl7 zH_-Iul}3{IaZDTyh2uTh3n0i;aW`2WIECWbT$^O(=HS4Di=|5LESjwYW}oUxNpKsb zl`2|5^Mtf~M^8R{8n+xc$b9cFZtzJ9Wq;bVu z5Yg$VQ^uS_J&Y&YqscbU@jRT`d)-X7mOzP+;3pOvc+6EyVq}P;(er3c=`^VxYH2qy z3xCf~k7V$8H{|P){b;S0N4?>OioPF;dF3+xJwP$#3I+G_QD=vv>%A&`^>Sp1@flbo3t#?Xwy_?tf_V)KSNXnEtbH^R0m00EhbgyZzkx1|bdZEf?^&oZ1=i|qyL zmRH$4vJN7FCGe`-Ng3-pak8FG5&J&AkXC0vN_A^IhZsOe^yM2PP{! zSJvKjWsQB46YLnB$|OE{1RkFGAam&sS)x!x^77VC10A#NGQOR1Y(OxIN~F8M-e&Qw zP(o9Tg0`rNOM|Virc7L9qJ~@85b;zmJBIZsfs# z@=45vH#Sb6-q;AYZM3g3FCZd?s2e5~BE@`=eTywpPb|nchB+=@iYP-tv{3>C%b0&; zs$dXGk%(hKG;*IxVV}`%B5e8n&Lwzjb~0PV0bt`9F5b!<7I#MQ*B)`H81wr5+wPp7 z3;mM9nbAdqVx?J>QJq_Mld1j+=6)ZSLH2~oSwA9q1M%_b{IE51BiZg}h`oh(u?=K@ zRiQy8A{Sw&5Q*S&=2vhVD+=L=fjQS0 zgi`7DM!A$di?6z#I@xG+<7;c{>&ew#6+5Ci{A?&5>$QmnXOPFDtwq$#ZuD~IrVS<; zeAi-bHhby-10K5C#2=?ru}q-;#(dLSsT{9(fH`Xm zqaNcd^fK`$bv6|3krQwQ+U^yU3nZ{6a&lYDoeJl^<-kk2XZ+$e9xJK}6BBT)SL zd?~J3X4YO_zGk{K!)O~6zTr3?2dfmn^&%`oLjGfk)C=+Z484{$T{Q8RNBujFt{+}H zdO=;7I^ln!=a15Bkt@C4XnVZrhc~R$GLe|6m7rc=mYkVCJ@%)6y8G3qX9g{TM1TZu z4X&@NG=9zbpZ~H?N*$OUdLO|4~^wn)i z2S}Yu;|>AY#wP>n4t|$3IYHl}j6W%_Zbu7fD_EmFkiT&1wY^YW3aR6U$W0SOCJJ6z z?~SjnGR5kK)1x22#(HuN84tLtMBJ|&%XPYgL4DCjL7!59bMj*0O6SK1epZ|V+HWbFiENSBTXcS1MTB8yD`#BlX?a!k~P_erG z`H+bc{ce9=YvMJd|a|sjemP&vE zXIt%7o*bZPjd5&iR;%e`lnDbzSU-h7uTSJj7m$a1u{&&(@S;d1=N_Is2v0LNeG(?F z>64h~y;VI)6+)V@^719*Ta5CS&ymcaOZG-)GeR{Po0qIv5B-~y#;ns?n0V4$YCfrCH@W1fm`9vr(H%J5VQG*x9 z|M>52CUpHcb9lHH3YAElwpPRu#w+dS32`Un%iLH1g)EDX4M?u9uklmx++2~+1yoW| zj>UAXm*I@;L^@0(ZW$H%b`G|mlUEzSX+)#hvk0btis)+M-)Z9alZ_M!2?v*A$*(8; zd4iEmEy~R1_R>UWxhP9?p^(8Thy)iI3_Dv&c-4)5cPyTHz%#vlbUN9SK} z!cDjvA_T}(K?s+r&*|61OM$)yN8%^o`0Fz>vsi8l9gIxtn;EleHd|h@4Zqe|+Z8%sm)Dd^q#r zSU4aN{`t~9MLQ-01`Kj5*Fc)obph4%H_+sE`DY^WhvP5>?UQ$PGE6Cs6Km?eUW84{ zr=rMN8_7j>qeM_ZPz*jPaGu5W*uuuGZR>z;?gvFsF>$344`M}7_+sncA*RY+f*SG& zhvXmji_2RW6MMc=EXtyjxq&SMmA8*# zk8@ee+S?;yJWJe+SC~Km@Tm4R*b@Y7b0xi)+~x(6rl?(BH6qQZeOoF?7uWj_ISCGy z$y;p{9Hm`#LAJQgaCAF~0b*S-fAO|o*iA*!QG7h$&k_8v;-hGaV*|mtOkl|EM9M=? z{d+mT0Di1;?FnOvfeJiXJ`^VJtC(_<5Hmk!O0#V=VCdrOm8F(R%ZoVQs17_ikGr8H z5tqjNRYh)Uz~|O8grWjfkw`EtkU6$r=enUmfg6VL4A09eT)Zl_s``KgXmy+;em0j( zk>J)z3ay-nKuhjOCx__a5tt9&MiJj-G*9AoT`UEhjJcAi9$aG(4{#I*xRhfZwn#gO z6cqI<%_`;_@F=k`x2p)`fUO+9HJUCJ;<$H^w+}EC={KSolv+~kaUrsFaaH_fnA`Ah zN|OOlj5hiP0#-BFBhdMTNydkK?T~v?N;JnS?#M zAqEmHm0YockZckK0(XnNV76bY`|WSdQC>LyguL(!;T*FrhAjI)roO_B@=2ODl&&+& zK=pC_>eg+$^T-iZgZV^JYRrh+C?sZ^9po=s(JPg5*}4>&q<>tGd0E`M>J=#hp~`fN zN)p4*Y;8z{ahSBi_!`9&nuB{$8iN|eWC5jrh-|q9&X#<>Gi!>0+uDCrbc9zJR~BoSMi5 zDs(2=mrA0uWKhH42uU#l5J>w&CP>h9dUHR?L3QVAR3m?8fQWwCCV1l}NFAncjo+!WV|#DMe3NxfqE4<;^n$^uxg$}RQM znMavs6iK2XAE?52AS>GtjUY>uWo$WE!UFd{P--B{p^X(e3Ol#`oR-zMZ*AeTk()=4 zUCOd@Kx6=30>SThY;LkIyTHM6wphxaK6=nxLo-@cXs`r??i(v1-`&do}QW9M9a4PFrS{eax=T8xHkYA2K!ckNaz9a6LuPCb}+7t7Fe9%r9lK6_s!|!h?a~EH5 zHKDp(=eIyGC0{l@36JPo7-!K+br>a#?a2m!${)|adGUIXrDdd4%mpUI)ZOp}fF;nO zZZqMMg?2O9J9cL4vDkMXM3RYoE_pD-CR&CY4<#ar0raH64b4vj{nmQwqhpkWkR>s+ z$!s=-S+iPO{5=%?ju+{~w;ZU^?+YQruj>>-y{W_ss|L^9#rBy#D%?6>~q(zVI_(PbJX2jYeCy z<1jZ{{rY|Pb+6ys+xytD`GtISwsva&_N~zf^%^-rnmenjWI(^)tgKvr{heRC?>@De zJ5zo7Dd*+zaLPXcKA#!#P}107x@HzJ-S}bvN92LB)w;7*+9p=ciZ{BKZ_!2@M z2qMNr^nyEXzl}U7RYRPriAfy>Jt1(O36M)N5^BDwt{d~2A2|FQWY8)uc02<1%|Ir7 z#`c8oy-c08kYTRI@LDY*{LI?Aq!zwZ6kiux!8kDUP2c-Z_BS`dRr-^Co0C3B5brdq z7m-Q&q(d0=v5F3MFiJKW8ykCWx4X22ngRiRb8|09UVr#RvUtO6cUn}-Kt4B*G5%cQ zoZ8SQIIx)GN1@Uw%8l-PIcWtQ;OziQc5gU{kW(nU&Mawm!DT zh+`Doyz*mDHZM8D=jJnK9=E@ylq?mC;eI-f0zQ-O9o~dHK>gSwZ@%M>d6McCnATH= z#unuq{{H=m6aRK^?*~qtxNwrsgD7C#UOk>JHyV|gLkf!CneD9y(9gER4BJ@!g#A!f z{a-ZeDQMOc%mpXW^Sl%(1A=7R&$b>dsMmoo>226=X9Ihj?O?Fl<6fsU_B~hZzdE=V zm~x?g0W_Yqt_D}~%u|ouU1_%~RU#hULb2c9TB=qPdBDpW6{0v&Wi*u07Lfy?VzC+y z9a~t0+c38xz6^#d!%DDYl%>$(m|Keo2`eP1|CF%UwbYuql0Iw z#J&QAQwrFk7UbVtUyc%9%tjhD`IjoBlAMaiJ`kygRym{=duI-;(TXzpkyR)&md-thpxu$K`C(VCC*3Qhd zY1fUJ-<pseVY5{qKOMI^?tf!!1PMQ{SA zm|b{UOe%4=fUkMv^Q9aS_Bi;bVc9~zEoeQd>3&Q<+A#Z3eEQ1|W0udYt>LRjAOmbO z&X)?ir$2zDlZvITS);2YLGMf|E`VSGj}l9ma!`P0a*g|dV=aP{m}zLv#4Jos4R~^b zforqv`nJI3cp?EE!U{+Cu!WbAbFAli1v0{n8ujq6h#dY`-*0!5@>?gG2jwijark|0 zAw}Rj4+lW}x;eHjeBi_3 zS0Om?-dF!Wj06;a7$OuSR7;T%Xt*U5z`_&$Dn>tLs5xti&5?B;kx+t|wY}m8e;+`f z`COVTD+Ia#R1`NAjH-sbJ$=D_@?s>rK)!)=#un&~fWA4T8xhZ(D@33LsmzDlK+id3 zLL=&479MIPhK2liIGl$M2<5;iP$*jH4!wLN+y;JyW>GEb)ycw-D!huE^Ri53S#t+!Q#sg{Su%i)dG)pDn4Sh!@&;)l z6NfB?Z@%t=(AuuO_M1L%9hg+95qpUH z$v5T?x!-%R5be#}#OwzK9P?RZQx2Fm$Bw6a@7T%ALk3d&DC>P>6Xs0$c3_r*d^YBTk z^cDiV39V=H-UKg!F0ZbkueIFTjwnKk z{D5&J_}aOi`U$>D4Z|0`C~Mls7IFf=h!ZFQZ7~$4EXyh&A%ngAYEA!}R>vnjUulD5 zKE-s}CR>zKSuQS>D?6=TlSy)Y&1Y|L2e!(Jt>idMm=Ebb?X0mb_2dS>Bz9ztU+vM> zx-bdWg8kZK_v;u(v~JH~Vhc*Jh1Gg;CVPXUj8@KDmn(t*4D`FTzQHKoP-05}Pq#Kv z_HL^b7HE%omjVC1iuI`LDSiJp4JYUm`8=>C~f|eB`gAoT1J}KDQxF=O{1IS zYvDRf>ly(QeTXFP1~0GP8*LsQoRY419+h$}r)Ge_Gh8fVi?XkF*WC zFPc(NPnV$2&;PLk-sG^;n4d?+W9&?KOqS1BSOu0XBFb++&t7Wh2I|t_Xz*+GQ%83^ zbA36UF1F^Z@1y;hYZcRa(Z*{Qy2Au(~q6pu54;cryc!VIjFOa{skOu z@H;&L=I5Co#~IaXh}ZhWNHrO(J>&OT=U6pxa8(}EZUuLJ#z~g`akDE;WY_Fg@MD~d zrw;$oFSK&8@QqCgL5&;3v0STAIj{PvJ!XGv!Ee~SI3)O4tEh!DS%(|o-c1v(O-iWT zV}N>Dn*UWWX&y(y?#`TL#eSej97y$ zw!reNH(E{NugL@EVR$8XZY26^jTUb8Amh~6%zQWsntiz}m25GZSl+p3ZxSlPau!6% z`#lt1$waEvs>2pWFf8Zuv3iaxrrWK?dh=D_UXWy7EqdE(iBf#c*aIO?!bzjlO6n3^G~HIXL}5GI4Qh(*a~+ zmmtsBrt-9ohWh{(<-+JiQ3(4;w<0DDe8AyKdHpZ|oc=z>L7ZPV!B~#(cDu&e+`5=Z zK5+WL$)Q{h=TW@upSmfLy6Kdh)ALW_M^=R?qOY09`xR8096MDFGaPUIR zify#}VF72HACIf|#Hz*k058H&GE*83gUnFFVJSmEMLIQz7pt**s^gvW2OFCW9yioJ zcI@0;2M48xL+-a`E?juU#**%_wsZ5rsnIC(gU0+|Xf!%?aP!XEhhQ9)R?t}u9;=K~ zhWs*~Lhthg8tpYWLI7Hi7)dAnZ7TmriAOWx+E9Xqi>~)jB@efb4F|>yhR1g1_D|o9 zUP=g^XrI%d@!OGz$DyRmvW^UEmqr5K}B%7mZ zO?q-vZOe2UFWIThcB0O#@rr|fe;{$DFqJDR$-6n3QTy^%o@4^K_g-Us(Imi;v&_-DdXi z&noYEkI5c><2@$xUh%3`WTLN8Z!YnvMJpMN!is{=$hc%8i?j}=eDvSZk1^6>^dQa+ zHG;GZ607C;Nce#eL(>`MOK5=G>%6~)j>@mqTK!rT5SMnN(P;Mv%WRc;#bOejK&Xnm zTqq%+qh8AtMyLe=*8_g9(Q0QsGALwIDW0xK0s*KvLnNWhu+46FWYe!ACp)yw+i9D5 z;(G3f3cMY^@rzg@-elh4^qei{gmbg=0_P#ZQs0R@ExX&UAt42R6&mXNQ$@@ZOg59A z&D220=E!7w3{Ma14!=wdYe;BdFvH*v0g2;E!(dD>I?DbyAVD++N=Yk{afhJ#86Dh0 zeg=}M<&&XbwVQZx>)09`QA;Y|4iHycl1Nk8xFmmT&eAhbezHE<2Sd#o#5tm;K^ zf(NtrVjm6@ssTMYY7*owL_OLgC@%X^a4?v?0<}42iy-}|3QD#2NH`tRvy$&jII7Y-R%3KQ2z_zDY)jnj(c5 z=o0{62uU3M7R5p(Vno=Y3^&FH8PIqkd~;?Z0G&uiQ4D%$y>!{&2Bc!ftd26lEs!t* z*HDKon?65q7tz3y`k#M}20eH2IJnWTXuURUfREfA{q)yaM`NGmgj~9)XZX}swf;*Sc z1R{xj5Z42cKZrt)?>D7vbjYsc0bwQkFAg#^DDh|Pz%7P39V0RL*YZe6#Yq+Kkk=d# zW?lhMn}oMa2mtR8g-|Dz6gJ8?9=)Fl8}7JY__0Fs7B!wWcpSC3So zL{+PUrnm@YO$=ppoU>_8!6TA)7+5Imq-p^~(H!zA?dN%k2o0C5gM_>YlyEkb7Zetr zg~`P}amGF;6P1^?FgR!f;jU5oioFVZaiV(#3rv8&00(fyAvw*Qhd&f=!y5x#@Nr%( z!Zbq%M;|UP2rA!0txZkqsTnh#o;X6l6bM_S_z9%|8ej)-VDxGR4+;VXg;2?2WqdVl z1Vu)&HJ6UoqzHyaVE#!o$=k+FDwQTMWD1CrzPA?r0f1`5RZ?Bjfs2hrr5lcC$-?1- zu1}YY08QijPDPF_+4!}MB8(GqMZ6j=nE@0M02$I2ay$74D8DsX5G?4 zTZX9yPO!_osqfIzLzUr6NDIHB`1aTizJ%Hao|80=T?jtMq*@Y#K7sJYe=#V_FC=|( zwK7{$Vo_4WUst|*A7A&~ks3=XsGtlpk=;9);?{b?+tW)~=S5k4xb=tyr1>g%(1stV zm`lXp@q%bmZC!1x{b3^(KwmwZB!>na?n3c)wq$v90nFTl}J}COn?XQr;eAQ zfG({f3@NroNhmRc(H-@Xl$UN+H` z6EO;qY#R7B$VD{D67x^84#b9RFmdoadKzKqF&Sd| zu`eqM6iImm9L1O&M3p7*L}F>VwegM=l@$e`EocVyXW^Lu2!@;ks}*0t^NrUe^$=7( zL^Z&fGV8I2>oX6E1hD}Pu`?zf%$mdWaPPzfMG#L+u77wl%2j0j0HwEUPR>*RnnUeH zRE5YGM`Y0={>n(oL4-L1!X&~xH>Bf*>8<)ohd=Q*3VJcx{pZ26`0g*aZXGm1IM579 z=C4NY;&TI4{QAzzU-7SwVWY?B7iAh6|7#x0%I}wve=Z}peC~Ok$^}RZLnN`>UGXW_ zEXpWCHO#N&YZycj1dV-^>ijayAPYUzF`R%MmEkuTzEaoo)tjW@$x7nl$NRP3rpzR00if`0k%Jw)6z>ZFb|Z*&WVS!9OL zAVn*oeo9qBVLuegz)1W~rx8^ZIUGA$a>AceP}+3B{-{2`3?!t_s-LN2+B zIZQM**MPlwL`W853L-dO5-g-#RLHAzHHxcWB_YY2p&cwxc3y52iXk4gkjMG85Hhb1 z6DD-{O?oDX0zQ`X!uaegK{<>G+~#VtvxrZ)meRp&A*M%`Nkrnkhq4}2K;2Lu=3NG@ zAICe(HdinPK_zw2_(qPx?gNVj)<&oMd@= zrs!+np`ykgZ@Q8|x8<=Md?)TJWAiFvq1)}2nMYQ984`KB(_GN%Nq+5iyLENVTs}QN zS0R5E$-K8t&&~UlY_VG1KKz{$*;cM@2ZeaPsl0ujC=Pk%7k!W3CP8B&Ol^(EcB-=C zlhqSWHJ{87wg=L+wA5p(=j@CpSb=&g?a%>}7@69J=b_z9CbOW*lR~SrG9C=j;x&ny zAmp@2j4AHTcsP#g;CF&#l=jQk@(ylg^20A~1fUL$>GJD?-Q~^(mV2p8xo9M^Aw08V z8vudsr<%Y*TYjhsWlf|TFamkcQxXjuc9tSYLC-nck{KbsHt*)jQf-A3n%EFCM)& zbx#94{S_OFg4Zd%kvbMtq*nNfx3JP4T+*bjizHaUe29@=bvP++ORK*5A_>znle5`I z2^Z8l`C8tdTm(xY1KI@sqWId!G+n{@dP|Foiv+;vdex|{j zSI?A6xKJ}qdDK86i<2*g8jgER$lcD(xP=Qd8e#CZRcx6^7_&(zn-e7wU{Ej;ZZziS z=DL7Ykgp&e12ZxIt=F7yHkmoGeGC8eYw(sY0psAYng0xCKn-Y~ErNM2nirezF^`*{ zG{0f~gZa7>a(2+Yyx4iz`F83pke*d_bU0fL6VF}t1l2VCMc*>fREgvV-|4aG((aWH zK_{qDSXS86=~0@vK=4sIB!9Q!X8kBn+0F)vHT0ZwKm{-Y_`9_AHJ;1=YuVB8Q;x z_T8n)V!kZ{HAIWB)RnsHkbk{`dg+k53&^EzPK-5B*xXcC_U!92@%x0(Z|Drn%PPga zMm+b`Kp#CB70j_QhtbLCz4>yF$rmpMJ)O?B-+<58(ZJTFM&h`(byrFw221;Fn{DF! zCk=IkbMyeZ;qb% z6sYEboj@2xkYo51Nxqx;74GL>@c{S$%#WICb99be9lIV{{fQXHU z6KH$m7Uce?z39p@*cq5_e^&B&owMAF+B&gu#2Rd`(q8>vbW0hsWhNGKiK zPE#Y~e&gL7cAz`*V!+}M;S%oOjvE)2Y}j&GbPw^FjBYV$G!(M&H?U7>nc9K)N8#ms z3dWTMe?Wmna(U zn03R)3;AJ{F&Q;k)D_I}3?YelRJ`MGfJDMngZO3=D*)J$Hd0So3E2vvtTG2xRTZdd zYyDPd7k{RD7j@kj_CsNawcHk?Z* zNsr@1)A)RO2}$MBaREceTJ#+J2)E(2l%quVb<#j!NYH}O1B#1wXDrirfN6$>XX<)! z0$WfnMbKCg;$^C_XuTo5YBEZQk&C_-(jinEFOpxCk`g_Rw1~Vo&J`idsR1wdBp5cI z!jiN>4%N5AVp#T8ge#zcS12S-Re=sBAZNjT1f+<^4l6QQN~$yYT6(A}pdx2d;|swQ zPd^$8;37C%l-F{1?C+uYpp<#*{xzqL9qadHaXo>>>iF&;Sl?=K9#TAWKb^(lImhF< z3}g873po-7))A>3(?1xHuq>Qj*tq@nn|G_VSbBMReZBsvyzl#vOyd*_NciNafx$q# z9j)Ll{;?H$M%KK4&}{7vqR@F@slsk4CNpAocabxABwJj!FxToGUD-n(ThHpzx%)V#lggT z`t#^BK1F=YshPXUJ^bz&6dkA3B5FH}#Sn-&;?fudR?Rrjh7Rx0a2%E<)N(l*6$q0Y z5BLTKpdCdchD@NK^aqw{q1m~bM_m%O%Y}%#5gRMqE-`Ka$6*H;_pz{zs&<`qaB}71 z${a}XX8pvOEqq1Ll99xr2r5*eSTPS^w_lcLb0)#W4cW!vn=BItrc^%s^|-UbuuB1T zS;C*qU9M3`b_s;0S6ayw2{jQuwQshsW_04TYbvPQOxw5%T#<)D#>E$-1gxF+k88)S-NIW;zAfAf$dF74Ie6#X z(y;V!B7+ZkIJ0zOX;@yT+^p;{GQq@_)zlJkos*~Wp2qIwERMXW_Po-GEiLbzm^{|F z+jZX3%WZAtdU_gM8syIr_?k$@Eox+jJF3B)23|)^ms4fBqI#lU)AU(8<87&hD1`Sy zz*G{PX||uc2R|uxt0+5lF~{qjRALhXT-N8{F%l_Uz?a(ATyg(YP@jZNEc;NEWUBD5 zv5qAY{=$uH5qX+8bv%(uCm7@TgQ1lZpR#hIJh#Qv>p@F7X|Is{_NWm$Dev=)2Yr93 z)aon4`=C`Uy|&P7R;m^>%af0`$`NyN7=^Ahj7uoNs&=z6E}%Rx7;W zn~DLncIVOaV9t8TX8$jGomZnFc=OB$7#UB@d}QWhGoOGy$nCScy@s+Mb^p2$Wr*BI zK`x~a&aL*hVLWsO#P`c*lemN}N_Mw{!o}Vi24l_+Fk^YG7U7dc>zb--?riE6g9K-T zb>AapH_b3EjB@xN<8@2I7o27(i2Z%7w1Knit^sNrgl#Z4NvXQMYPLb091-ZmR%sm& zJ7ZoN3f(Wdeye`&4~1T;W$0JMKpAs6bZ^KUzU9_iFMf2jv(o)v0JG$CPxRJ1?z#2E z*-w1ea%Z)>66Nr9t6g)Wj+wFRj_ryuuUz@9$r>*3)18N(3_Gte<~2_EmD_IU5n~=$ zSzS$kp;r9-?BSbVP6XlX|1mjfE4{qFz0y7Z&^V?_63$y8!m6ad4d$w@5=6KPm zK<`=ugXuUJKd+v_m1IyVVsu``Wrqcrg}9}XPu8M?jCx)AG&|T0u-Z0IB-(+0y0J;) z#`ZXhsI1ZoBTU@y}nsAN;?=)MiJAzch#Q4H>&e=A72fIosQ}+_Jp|2Jqsw8H|y%5C8(R zv#n-n?jJ6OoQ<_mXtK~s=%PzXbrv)ucV$C+cn$@wq~Ol9@4;u^MfZEp>4indSzI{1 zJ3k-CRtFX~^E!-P&iDPLb=AG}@d@ULH_fEb#NW#!#E!o>lYbl^R(2!$ovhqy;gfk?Uif zM7LCN4!;bqVs1jmJX_CXLg3-0qQkj9*vCS zO3%9qx0#!y7Q4~)A9!6N@w#^q-UAyJH6;w2u6r)&krZ+6e?>XvSRa_rGVbGe!jYNT z%Z)t7-Pm`%5gYzEH!7LW9(?G>%)uZ1(P!K3Q}^9>${YZkWM=NU$1Vs*_=9}j%=Dk0 z8ISFPI+V`wG855d8-;h<4B1?GcP326y84r9Vxk>T#VG=Nk}OoU8_bBH&;rsXjBkGj zce{}kk^ZK4WIebf*M6g;RK{*oe(^nWm2c@JiZEGXBFW@B(>amjI(7S9Ztjb@>oB`0GB{HAb-2u#xb zRa;xVo&l6>t5vPd7V)ow!6o#_w%3zR3*M*-s@1jNTFp>Xa)PnleZs?{Pf`U3A#|!p zs@Kk&;$lXYVcgMP$VIS!=)nv#D45JpXzG`^jIzcGx=)%zzZ`wNv%Paiy?O4~|Igc- zz)5zOb-#7asdG;4`>9j=zVyCT*V5h7Jv}`$naNBNCX;oBEEBRq!j?otfe!GG8HzbN0Md9idjc7oxB0=x#@~YS6RpGtwOL4!?|5RmqLK4E~bMNiyu0D0@ ztpD@>KmTX>J-=sEuWOp{k6uzKT|MaQ+U$Y7!^?r_>gAUm*^5ROW64q~we{yBN7q(X z>g3qR=4`t$vvY9cE=*&R!g-r{=561{CvM!^gD+wqx2c`j+q?0$In%%Fqz^}?;IYJc)m3|*IgJ5msc%w<~7fA+{sx*c3kkYPkHo2dNli68gKS9OTN#4 z{_m&1+M}Q6hmW8CJcExh^A#|u=fTTjTX?Oj6iL-$($>%VRQKr)KRS#7hy@*q;sUwB znFW=)tjA6`KmL&tDoe2Z&jq1tEB|a6B{EdLzlaD5m2v_>50`%5d;ZFheH&c_YaHzK8}ZarH9H+=N#|q4hq>1D||wlFwW3`P2#}swK|x`n2PuCyTWe zZ{Y=sCO?{}VH1f5C;2pS&Chv@pWCb@p7s{U|Dtq3&qj_(OSUn1F>et8WQGr&w!HPc z2#=>^ON^+eox7(#9343_8rJW*>#p%v9{C_z)V|&lJ-Is+{AjH?Mkw>2F z%K4*#LOH6Q1iBUnkzoh*tO6OLC=&lfL1Q%x?tCZTGi%GS(8{{n zoKr44w=Gn=#>(pM?&_-Ett|9<^MBOa-CYZXFuNB+;WG;hk*%#0C$=`D3k!wZ+-Ni! z&gTlB2b=38DW`#5OdvJzcE8CdDwgVjtkW~CpRlxUn;>bnP{g+?~aL@`iwb2q*=Nr;c{!Ics10ZN|$d=&f)jD?)PBNogQ2^$#`2O9(_6Vhvx? zHAVg?>yEG30568vM8^v(}z14J{=0~ zAP2-t!IZpg7?115#|`;igCSZoDQ~a$sWqKiNv9u|Uwo>M2Se}6IPAU;@Z3@tkY5a}GAx+z?P$C9!TCl>U zr2S?dCK8Z8CT+Z{?`k!qLllok8KgWYemop)r;bQ#_Uop~S0ri5qfVIolh6DyR%%*p z{Pg)p_1*Eg^Sia$qvv;bpMHV`7I(>Ptks^Voj-T({G+w={9{2l9(+6GvF@RXWqk9# zYkUv+zRUMv-_Q6y?)xp~B($xb!U^y^Rv8RKo}8M_)il+V2!VQF5K4&L;)ypWCOazG zRC{q4- z(Sg)z zX}Ee-Cp7@y6(KUcTCZ2N0tib&;0`d$g7zT?n>z-tU%(NV4E4X$AP8M8HrrtpSZh0E zSgDVpQJy0+1&un|Y{babVJX&X$1cUo3!hTLS|%Zf(iJKD|Jo`S4(1ELz#duP^ME-4 z4-^V=Vd(5_G_gi=h0kg7vD;h~1SYIbCsUagnQx9G#p4_&S6CDxaBTNt(3C-(5cH6a z=abHyqE01V1df&z_(NR`>m*T&9B^-_Kfu-@6e4qCH8TD7cN3w3KXi4#_|apG^L|1_K4;o|!h~38Zj+zQ9w`Mq0hLu&@Ga zXRQwMFu8l~+%B{4`0oJ1fMj{$_v0`8wfF7+dmH66GqioxRolXNym!-0d*~L1kTaHB*Bhl}U0W$N>g~Js z-{;;|qy9Q^x}1hhFpDPd!z;v2yS` zfr$@v*a1V@`e;SFymDasir1{vE0y}n<6#n2s3CY~B~nRR1uJ=!x@O|Glv0;4HW_** zlVcXL;h`F#&qdMY-pKqX&4WDfs5R{sH3xBbs01>-2$)oEkv}!Ifba`SRi+!!iqYj{ zlA#%xse}O-5JFZ^v&su8;S_HkQxlXbwc>cQ6k&Jv)ZU_3D>Xw;mJ0>_la%yK8~$Pf z;aVy!pwk)P*tl6hB87B3Tib>gO34BECNBY?K-IUOxkcOIt(Cdrqbi{7MZ%d{vzbc+E%Ap5EB0p^^>o@kFk?r8 zej}G#TU%YtFj2u^b`3+!_%q@+0?4lZ8F=~*dPqTqiBKfM_I*rbiB{*md0VzhF~dk4^u5zK_tZs-KGbgU3Zm z`Ya2++oQUpV`m+#2e^slE>~7jfGpG>qJ}H00<&<`o%0n@476gLTY|L|J{k@q^_yiN zsJT|=*WqNYYXkZe!8HBbELnOkdG*Dk$kLt8RTrx&L zA~K*g2o8vc#=Ca*lC#UT$iG0eeamnJ!HXRThpYG>Q8#?Cw>+kM z`Y_F|o`QTc7&e4P$kTqLhbyyEGNptKLP!zhd8snJ9LeA@N#Kj;Nm)>tD&#d(o2Y}T z2Q58D?Z!cz=^@D(R1QFOv<4vsbtd+fY&Es{kl{ub;+I#mKY_eWt`@!vj9Gbgn%xxw z0YHwGCg$}mxeoO$h#hrT1GfzaOJu-{ zBhav{Zn5MRs@3IYt1Xr7#rC6`JMKm+IWt@NPSS7?vEkpT*Xxq)!A^R#({AE9q*lAB zLsG-miMW7Kf~5@9oIgvIsU*5Tc=S}NG_$tWmV@fW`az*S>$*yItWPOF4+%nQzVX{55%cBnGpJ12!u$-N@cTA z3e+%<*d`T2NQS_7mvbxie8Hq%52KtZBAJ}wE=vFd2ny1KaKaj)@rSfjk_xygH32^= zunb9909!>ui~%BwJp~V?Q-lN-ojVfFc%_40B<2fKH zP6>2T*YR=6A%Sp#`0^)h%Y9U?#|o0qBz{|}z^CH5e-@~SACg=cbz=b&BO3kT9c<@N zotbM8Lz{yjgeB(w*ZMAcL;-#4#AJ4pAQzLq3OYVBById>szWBbO2eYxN)JasGTNkP zBZ`L*!ppEG*kyI~EwZ?@&wPI&11u|cTVt-;XjW!Bt#*DhkG4~;ER3IQ zh~dZV{Nkqx4_CBDq@q`* zS{;ot8RxAb_>xFiS{XFGy^^c(JW~xm1F!{;X^$|2mtdk;X4dslY*+4*!DhK>Zs(xR z$7O9GRd~%#&$UI87?Y_MP_RAZmbLGHS{ISKa4Jw{+(bdEfM6+PdT>>3Uu}PoBu#I(U7Rm%*F)wuslUFHcuYF0SF@V1e8jKpn-qB|({Bc6Mbe!$sZw zC{bgwxPDN4MN(n(b$2U>H`JmVYjxDryT8{>3*8xnWNw=Slx*2b{=O{C@hhcth75oA z4ks3+=_vV5?_~?r0+Q~BdVsfxLFjVuG~4GQQke8o#}e*mhpJD07Ra860l28mY&24bM)*F z#$wKhj`f(lU06ll3R^#Wzn>U6vDgo0b#78JfsXUHZ;f2H-~v2*r{MdJ7xZaM_d_M( z<;^FuB*V~~Exj3qxkHUbHTa0@snIAi%9^*&q-V$&m9_l$j`+;p-nJJRKl@$CAI(x6 z4U9l8KA=Nx5d=;ac!T$w14@L-a0gVWDW|3RoIO3Fnv;@s9|X# z>WHOn>|{#auX3_rCe86pa3RSgeVG(4xj;pErefIB{xSob^)=L5`&Pt*(oNJLP+>qd zuqK|krnt!DE9O~I1b7;>KAw7oCYA@GIux3_8fD8kZJKIp+_$nuq~>G`=h-W?-6yDL z0+C2-@XW%SgErVaCeBhzx2=#J^xqFokD`qM?JDqv3=85W5UR%$jRbt9k*ulp=w-2p zb&6C<+Y-t$i=TbVwTn)m&h&=@+)TgotRyQp?qV(t20?M!CKNb`HS%ZMjdTV)uX`*& zp(dW7I-+2>IQngT2+|QuPU7LuyuKVos%{{iB%G=sX1E@Q1Z7a1q^k*fM)lJ;4mTUZ zK9`leJjWN6yCD^BfK3ehWAV->N}sBoJ+$ZiWdU<;9oJtAjlsF`FG4HhFS(;*UiVa; z<&SYx{v`3DST{lL?cik_S_~8H>Rp1IdT6OVTPF$DDi#~j_Nj&!#hV!9;|CtRlu}D3 z{`x2M9c-~AtbTp$k+*RV4X#?G>huvxVm)gnk6As`-u^Xm7fmk?#nYx&OoyIKld_w9 zo~Ut1S=Cp#d9g6SVDTLRWIofMq)9}a%Q~%uw-Hq(7Uu?o@mG2OSjX*tAr3_mh1Ib% z`1G&~Kgrs#)ykIO+Hx5W7Dj}>*YooaM6pdd+_h4+)q*31Y^6eB{67{K&|&hz;$MmN zbmP$8t+(zSGUWdkIiQ^C`QN#OQL9)WP1}hB?+Z#^bdr>m^}W6IN~y%agDVf9V%(uL zd!g8xU0Ry`*GMK27LHC_bqh12-MKkkpPSp=ou5;(e7{T_yr4`>HU=;0-& zagk{Jt-8-E#D4hfYpAv0p1k^+v+qSA34Z{C$2AItxc~O&7dzt{9!xUT+FnrDwPMry9M(duJB3#!`1-wpD7DTXweOmalK7nyIT(xm4~% zIbK4QYDDUbp-!;96=iPcZ+%afZDjFf@E z+eI&%?Ii#_7=Gc%U~uGWEe^9iYQNjw5?-cmXGQ`=luOhvDlm`l>>v&!u-z8!hCRi zh{77la4Zg!1;s{UG3*D!UKRG@xoX8+w-y%mdfiYa9%l%WJCRApvJ|tI@__2-YVJo* z5#L7~#ODOhfcM5r`@v>a4TK-gYnAKg4;|VVrN*y^h{SI$*H-lT)z$7y?3{ba(Nm`e ze@Au0wca7K(}o4{2S!&U8_l(~-B(_9_1ap%(=)vJPU<)K%r72jxE*u2{I1J-2&s_t45yT}XIqv&EuJpTyAw4+D7KACJeN z7^E7diyMLOOf-`eo|HI-BSyyPl54I#c))M&$x-peFf&;O!G=s`?N4THsR!XW-5@q9 zSsOMzjGPh7yX0I(o-@W-Y9<2F0?U$Kv>L6NtZC91TLx|BX zyfa3;;4oN3Y!bliqL_niw5mEER|RX?VJhO?ixJBv+MD&CwCqjGJVNz(>uSro$+myM z3M|^@A94OqF>8MoHO>A5+noQX9Uwo{+K>%zHmw^1)(2%n>;3wVoBjpMIwXtSxov*PvgUr&G`na3L)q{K%Q|jakCv5Pv3rmzMaHY zIqAERPip?>4yN!67vRIHgtd9-tOg^=15{6y=j*acoIcE<(;gys-&MN8gkM@TVcAqV zg7#fxk>m?0vR4Xu$PCtTVXnT?@8;@NqWYV+xaDJdt+ujC$oD_kvOpS$QAqPFp$*Jf z68!G4v-TvkzjfGWc&6D}9hx#NCP%w)?3G$ge@R_7NTti}-QAdR2de~kvHExs?v5~p zMybU>QV2F`4K9*o@o|o`@2KjzKcVmP+@Tc_4Wq|>d0`E?L(fm|W$)26qLI?grIFA# zc~>u`n6jkWWU>|L!W-fMas{^K^i_~jj0t_5Ggz){~$a^sQ1Yi3YzC+_ zK1mLl;1?LN67&tA!b?^55c)KL$T^*jd1|L`<`8M>PD2_JWFMOhCJY-5q`a4;6{>WFZpvDtn4K!yCPI8a< zW4R)^L0C1VE)j`gVg@v(0qj;0jh0i*_?1t5F?+(oy+PVb=iZk;t53u zo08%qmnhdxGl&JGJY|0565hZ>h}t+Qm7Rnq2up+OVB0{@0Vd0Tl6xGeKeqO027_2VjllQ z{}($QD7EEv4}k{_;|2=OLEQ!{-F3a!vc`g-sZoktED7ytv(O!#N(Mr-6g@#4?}u+3 zWo^gKoEgR66#wbdKX%_8U#-6J-Ko{3PtM;Har~Wf1n3DGG}+P%R~%{QBT_F?D*1Jb z6!$t|Mwfa=bE!e-4XJzH+&OV;Cw29=k8TMj+u^()@&f{G{D{y#if{WInqHT9q%gAG z?>i3yWd-3sR)~2euSn!nh^Q%Cjgcc!OEDa#C>}NJ ziC&;Bq0I_hSHv6y+(1`kH%w87TprPhzHS}k6k0Ncwr))>&Z9?lZEXn@##bMMm;BC1xY54z=n(@9 z#^RcGAYjMHU__?UQzIeDDh2}N3du+EDBz#}HsaY@0y(V38;N*9*9%=C!IPNg2A_d) zsL!#;h8FAu;(A&SLi}?u&<(_lv;otE5euvbwxmbm;FP||0C{}1UITB0BC=Sgs#m!w zdI@8!USGpql&CMxXd*jY^Z2wbhHv=9Fqs?u!JhHD|89UZB}d8OIC-=+!}#-b+6~q?My5o zM@8;i#O@cs!mRs7m&${W!Y8z#mk6BlsyxtC+hhPZ+EZOCW1IwRV zK5*vFJ2Uqh)_103$(QT;tMGf=dC||0y-L?#PKM@W<@gW&&s1#u=ke74E-U^`TMY%q zKaGU5f9;(jzwe8s`|?E%zFh4$Bc#|G{tdVw5>1%PB1e!0XA~dBy*#gNYQR3k6H^ig z$BNRVP^P@u7hRCw$*c=mx$t3v>G1+cY$ZJKa0+yxbZnq6c+oAkXK$e|7hF3OIZEHi zz{D;nvVE_q4x$`6-buRJd#XudmgIxt5`1sesZs+s7^f5;rB(T=Ubpe zpZ2buS{;zOW!F>jCzHAm(xj75#$opp2VtqWs!l;xEQeRHE+${nHxL;7%VlsN=L|Ws zT!>$idfChz|CcABh=V4H{U}_h>sxU|hCdP8cMh-a%O|zJ(tZ?7dXFmZzwG-R-)DVa z^!?*>9uUbbt)`yCBsxcJ3klGBZXXyE_#PEk^eWsx;5`QrEh+_$P3X33tClLJ%VzVs zav}CXgfcjX_>!vHmL>;7dN4Z(#jWVp!go*nQ@%z?+tPWQLswMH>HC(h0+0gnnw-nB z=MD5f(d*cYn5rsEz_HNrWH#aK&wOzAf8g$`H4;>JM;q|vOqMrBERTnPK6>k$o9n$2 zbHe`Rx1`CUNBgi%nw?fB{FnN3o*YqUD{v*r{Z_`N7$XW^FhJ=k(arEBBVNghMu|fi z$B&FoWa(Cd9B2%77d1!@#q>Z(AP8VDa7X%9d2l2HpoDNHfWak*3D6Dg>n8tyac@Y0 zk6L3mJalL{Ysp(vd_$+A*UFlnB?%2(? zjBKVHy3_RAEjmcnSxrvmgg5@dRwzYeVv*CevhJ6N1J`cF86bR+M{djVFbpSyFW9;L z2rG$&R&T9gLxF&Z!!r=)u7fEjc=&M8p+sna;+15aN3}po>!Eq-*$4wK(>_Si8Pry( zorQ-M-TPo$)c!HQ^X&!q6!T}8Mj~&Rqc4EZI=i=zf*K1t!8P~oRJ|y z-eGA0KfJ77R^K%nJWVocUBdQNpH);CjZkFbQ&o(W`AcovJgc{h>fA z?}TmbU17?gW6o4Yw>OrSW@b|B_^AbKKoRal5*PtPBOEDLM(4J7ivP5fqhKs{2HF~t zn{xFSxOzDcLWNjlEQrv%@=DvPquW@+y=IW{A-e#%*K56_1oiQpKJ}mjBJa2 zLlGFZRozpjiDgaLk7*QEvIW~n&*nVh1L(axPh@z61dr9jNc|R8F>W!mb$_JJTmX(S z9L_hjcRuH4S{toCthO79Z#60t>pI7!G|=L=L0x$BM+G zf{roqc-Xi^45(zxG;&PbD5@x$LfatAu=dHjfA*Qj52UlF+w+GPDPpsDo8)(M z4YHTrjcZLzA~{-jh_ljD!`KsaEVfdd>_jK7E5{sz%$3PyOXIt$c2Hl|v?oeNCR9c^ zA`-K9B%KM6|B}I|Wpzcu0}<#M!cHb&m&1-;{#H^qh0*{E*86{adFbzE2C-zf>qO_G zS&AyehMA5z7+77WACI?NZe%XvTK=$MCUch7BA*_{lf_P{6pW%c=}FU~dYi3Pogg$h za&`wn>371U+Hp|<2L>kKe#MAml*@(_DM19SGf}tMNyOLP8B5Nb zT}#HBoosA2p6Rw?iSW=CgLL@^cL4}$v%<9I8e;I%7cb4ms z@XFRsZ>@q{@@kR&GBJiDU>x3rZ6ZROyH+onl$Utq<)ttWSmR225+!E3*)+FIT+!-f zP82NfFsfl~Yw{giplGUc-kiy^bg(eh;fC71b#MfB89pb{eYXJO*luo)v<=J5I=OuO zmkbn3W@59(j5v`&;=T;RucLgabF_E1Qs@axLTYCs8_u@dOU10qvqX{k8ITU79N}ILxph=d zkoKKYxsZ(nlSzl_!8->JG#hw|tV~HaW=EsdIwJ#iY$;|POXHaOa5xe)f)3WNR`r{u z7_tccf%*-;F}i62e~6Eo2}5aXnrBN(l9G^aO8e4w_%I&6ZucC9xHdm`@bqwLsoccH zCPib)5B~ON6ZmgV&CZN{zfF%Q6b^3Z^4b?UzUN0>;`pF$-M-Po>tQ&}x4wFK`lj`7 z>+SxSHupDLcKqQFv#rhF0d#`HR4Y9IzVEc}RpcZhBhyw>9)8w#1;k);fnA=d8h;)O zDc7f5C-PK1C0KgEiUcK_%3tU`Zd_NAIn9LMcbVz&#E5%KbZPd+y~%rwY-wbX>R7P z)bw1NQp#vg%hGt40VXi=1LV+gEFtuzDgx0B{5XLO34i`@P>fjCGXDoc4?#FU{lT)7 zUO20FguW(iBr}D!rq`TM<_?DhylhMN;}Y}x%c1t)6t$sNI4B@t`~lJ5d$xWc7xg+E zp**SRNemJKxxmBFXb__k3xWvEi6NWCmt>HsGsr|D4=q#rfpjE6z~f=ib?W{y{~oDc zdF8DHDU*8RE}oa)S0rCU>I~(5hkREM1DM3^g#|_pA6nldd{}d3#-b&8$@JrmDFSnN zIM*&<#~E;j5~iMLO%9cQCZNT%aIgLhtc7DFog_?<0E414)v&}NKo5p`Vv%bEV#|F>&$G`GZ3(HIOnSOt% z)owe9<)sDM2;=E%{|j03fNzT#=hg67z1#QwzTfcusqY`ioNAJucRBW6v2#= zH`vbdR74BFJn?!pHi?RNFuDe45@ZoLQVokDSa_1xx^3~Jf%5V$MMd7Z7*4MMMr6`* z8Im9gkqVozt@o|0?aL)PHWWmSrY#INJ=uL_8>ciI?Y}(^w|`HLD%z*oV~vy*wkC%F zl~psv%2Q-BKO^i29a8u~`#E%`kX}FBL34BbpM* zB%{TUQtEBN+o(C+x+!D&jc?Vk<^@0VN7|RQ$M81aj@%KC(KJpkLPmzfL~L~Avk08& zdif6j-w-ke&s|Ix76Bvg-Z7?oOph=TT><}r17|PU+MMY|Vsmq+qh_&SM&O%HWhfKq z;DrpkF+i36@JzFj6?BWEnf2PXiEB|eK@DZyYPFIhf8U((V+3gaL8BiEG;z8fJv|y3 zAG>pJFB-_@S5^#g?h0-eg?C#9l)hf z)y>T{r1go{pO<$8d5BCQ z^72kCU&wc|itoHFxggQSFMOjm<~vF}+1@ox56L(5EIHovcC`;F2RlrnPNrO`1Ning zt5qi>Wid!Ko0Y8VLUB&fmReTEsa6?^XzVsQ+myM(-;Z6tfWZQb)ZE)kIU$}E?%R4J z<674JfdCjC@br~z4&)43GDVcSsLM~393@%K=5kqC{v|XC42D1;25iaBId<^QL=1&L zet$GysK{7xGmSb52MCLtZ8geqhL_WXeJ~ym-Jh?fl2Cp#*z3)VYnl*S%1<=$0M*T1 zx5Su9H)U@>WsO3(H3N1_FhH)``91-QF|J95^!{V;gJxf>V{3tckXUjR1Yx9FrSy|w z#4?V{Tm)TMFgRbSuuZs3v>MLaB7`=PT5W;xuE#KWsB0a+2A8K5C>Fb@L`Dft**_)O z$IQa8`E3LM_;H=1aG8j}gysa`8V+|T8k`GzlJ;|K^7<#NklF5(NjNY*4_QF)^cAMrhUY0h7@KD?N z;1&7T=dbwDnOS}IYV8%Fk7PbDUi(Psk+k;MxOU~0+SB8oeCu16tBH-!a-td>iI3ms z8*uDP(T>l;{P&x_KWDu9+EPOhVtOX+0opM=(^YSn8C?k$X9e4&=+MQ_KBSMM6pQElE zFbP?4+!n8(z?Pm$Ky%Y7CXzf8g|mP~4g4a8X}m_=!)P=ye%RJd?%$83mW;*Ji#XQP zz{Ycs-um^wgT+^ej#eEFEs)}bcQT!#IPn zuS^@oyGqUiVIC@~hs`Z5_VesW0v$V2OOzcktmF(@E*h3IX#NHWt4L1&KFOiej0PFa zh?>YZJoHiYv~JhQrYK9&qP|HTN}0W?UY5Cn{`NJmFY9QkS8I2}d-+a@=^h07FWrMD zgjglY%Cgu@6EUp%nu^gXx#_J}@4`We#bs@93zI3AkL+$snL^n`HuI{;u*K>+x+<@! zTSoeiI*BD~5mJ-TlNZ49)_LDg`kJygWQ}~5OQloE1$fiL{`CV1cd?ax;}G%Rn1BYn zJ}X{)08T5W?c>CVxro=^)R-TC9XlL2MwI&A~Ne7fYKb*Vn077H>6sAPSi< z*fRvgw_2TBDV2k<(Z(*+kg$f zp(?BdjKh|Qmu98KLIzaGY$UbVC??1?gp#$o!FppLvZHVph5c4K#p4oYLt2nLv?4SAd*ZMv zT7Zf(Y%Lu|TdLpSx8kI0rc*9^StLt2*8D>h{^S0A_YOYt5$*h$Gvo8x`P!#HJ^rFrm$*g( z9NA;U_zgULWStCqU3+M!-C^3mHDfo^zj9fp(|NM?*kiRTRtv8xuDtaZU;5I2JTd;q zm%U8OjQ@RaPiu)>!%OJ9o_TbJIXX;rS=UzscYcTOzxn=^W6FVsZnF!&Go&e8nk`)6 zxcG!fiv^FS2v>%RWIrRE7^2Fjqy&LO1r8+C#P!5L^^h!Tf>RP>X!nPb-^4qdy~;^N zpb;&B({e@;rozK3_{a>PPsX~4rjB6Jn6Q~9nRY2KCO#|va5Zw;)qS728oY}az8|V1 z2r9YHB2z5~lXMzxvw3%VJ)PXyNiL?lnb-1fF}ZVPJpM}A+ez7$Q`w+JlQaKDkK|f!QUnBfW`RXxw!`) zymfy5&Iiw(d(eOW{QdXeABprXT~`k(+K&(jC*rFP@Cc3QhbQ=B#6BW(JExP@ib6OLwj5}#C< zndycuWzjisBFj6yPfZP?*ztMA`(`pt(9vXuW}Pf~Tfi)#wh_8P>124}WeSty(n;0y zLU>TRsEQm-jwCBMG2tWCGrdF5{kc+gdUlrG2`>AlkNOms^mIwF=QN``L?m7hK&<^|6(0_NO` zfQb*Qtu=y`wn+g~Nk$DunN&pTBJ(W^MUUB5gF3;2MNXt66LNrRhnxvHDw7mFoiDMW zaI<2AAz!gfB6cL>0wa<+3ONj>LFn5tO28Q5(ZM;i~p_n8&Bts{PYlJDCyN*T6NCYkm zWK=30L-jDRS8EVel6Y%jo3`8a8kjE8w*^xr9C$Kcp@%Txpvc19f-^c62e6n*1-Vr- zkk1Lvj9gzJo}dDb-b_>TR~lIibB>ghI}7rOF&${8L>F?il%b{B^rZ0q=s7nozCLM2 z+8RF?q%b^Oj*67PN33r`ZDA{*zY#EVG!>~-G|wB^jObf5E0buvP&D3|MI?suSQ6kZ z$n(bg$Yt02G(t-VP*JpQ#W zk1x}HQU1RCWyQI8m72EQWL#wNx_PBx@%IXphME>F` zEFvRSUXsS*0l^rllW{Bp1CW;p3*-yRC}SKXraSN=p_5%1POE*j%%K>YOh5>iZXd_2 zQq;*mfHp`bK+Enk^nso2KbMji`_9yM*jt?67oYJxolI&YJ?d5$wTG!rfTtFQk3gin zxp`u9vr3U{v9}m43?ORL$4Rxg@Y#rTQ4Z-hJU8R+>9&Tkv6#g}gTH}(JGU7MW|Nr) zE?hgJ6)P~I=3})|G0GrS2fX+MSuQ*GDUk@?fzMHC7=tYp*5midrRDP|z1r(v z^{P)6SB21v;ettqZpsfX8-dse$Ob2lEXX&<3E0yAXT?EUo$jLh=P2Za-5E!D%;&l% z%3xgL)oj^deq;pF8Pc5@4x=~zxWI3zoIiq-1G=Ojhe3o zhW!@b%fT7G1Ee9@tV+Kb4Exe$`gAwf;|L(Gpcq+)wlg%>5x}ZXivFScMYDtDITU#> z9SGw{vAWVZ<#0qqIGn}m-T%0VYqjec$HBDmNFk_q7qozzC%ui(SuPX@iW?`P1~K{Og#~Rn_^yluW6g$MmM4Y#0*ZYaGm-gR@@FI z`>Q3^hl;u!UZc`lkS%=7#fp63eBLgqQfA7hi3*U+l5 zndGF6J<5eigUgEd>&x{{yK(H;_3P_o48uuRuS!~9Jf3UK&9+Zod3HEZ7gn$1!USMe zrvh2>ZMZP!<}O<au(zW_HK^1?A;pW5|R7Kt*bKC2p3E=xYE+mKsn5GI4;YI+ai8A(sRBnAhiGjX(z zOJo#5NOG41uhv&ZHmVy`%9&7PaR70P$O9A%qO^xX-HK2ilG8F#za+vZFDwpq8PfN8 z;U4g=K+Y@|%fZ))o6A^|j6_mBL@48`QRnjP7+K-n4127RiRit6wea$8LG7+U!g5d< zW^9I^QFfD8pO~IHE_-kf4J;P6o7_H~j&&V5EXR>cQhUgD%uZArl$f4?E<630L3%?t zyuDYeEkj{@^-K7~n&p1GL+X))&(O*9v)wBXF~NVp?<7UW@*^d`DAg?{cd=24h4fIQ zCJqk2e;Io9JjIe3lHn>9Ge5&7;8rX$Dq_c&t0AL?CKmGxbyJ=4SAZ(0$s}mtY z{V0=Lg=GzUHvHK90N4rU0p+)v91-nE0(Dx08OqS!fG?7hR}#v3VT9^L=HPg$CL@9d zV(VCWQ=MBT1-Ss$k=z*ktSqQs?NSD`ZI!?ihp3R0ut6J5WF-W&lv8pkh1{YIM=CRovHB_f{< zhR&R&`PoO)Zu3K~K_E~tBTwtQ_ye*;0*`~@`GS@uRQd)+>pChv{hbMD(r2ZIVkXo5 zRLNX#T+ulv-JH$ZN$H7oR_rTCGzEOUPyr)*_CXLn0+g5I@RBcFk;AeT7R+Qc z_ViFvce8`GSqPuSiYSxR$jbdg5zKu@k%+zV2Q zR!JapGNiprlXqrrvD4HGApwyfSx)3g$uPxy;$5Y{Ok{y1DwCV4B$N^aVyb3Do;|b2 zdjCy~mJDMgSWL#W_uDq_bOPwuq^6!wx6M2kR^|`Uxf2pd=f@AkNxBMNF*_SJjeJhJ z9MB|;23;%D+axy`r#F<-+MA7d99>>IhJnt`2nUixM<%ij*8pQ(e22kcJP}~nz?~Ii zL4P;AfQ(^q6#1~!-7H{;2_QgAk+CUV)spD{JN^E>V_9crrdSyDFltCo;j#utYE6hk zITOMn>(;6ZUDL3FYm~o)$1jDqPmYkLh9OQg9APrHsNTUH{3j+OC~ur^&|yU*2sIRh z7-t3_#a808lyhV4NhX8w&~w3ga=Ia*Q}jlFeu`L+CAspn9XPmy_6k;+Pgjez=tB5S zGP3^;>?ODsSdANl>pp`^PKf_xc=9g!%#zG4twyg=t{V|>7P&>Y{;WJaihU7tv9NWr znLN#@E2psxYcj$h?hz z5#QjiYaf93tb~5*)9Nysp9Ky#N$u@{CQB0->l2OB9vDAfAUH&+ih_0w$tX+t@t>UA zdG(c__|V?DC$4{;_5t~F{P^@s?U?Lv-Tn7J_~7_o?!EVc2b3>|+?%gyzYe=gm2=M$ zpS!?f;teGw3%YVi`0qLSmd+aL%&1gz zd2Dal6W2yQSFIRE6(Gd^b(Ja){6b!e)IIR3JW}X@SF-NlXr`*l9cRv-0e_+jG5&%q z!o8#7r~&=W@D+ur&3QXo-gkq4KsWWOae<@ii`=GGirs9G=%O;nVO~WdA}G;SuwT3q zT_(oIM17)Sg{V4w%Ojo;dntkK>0bavJy%(~Bk)pwSuY1s!B(Y?J6PK)p2SI%a3!Y3 zc6^du#h`BfFJso=_vU=7=;~?_^~Y*7FiEvU(I{zu8Om=)LRQYLGPH}OZU)oAFl&8C zxa)0_g5qvIlhFK$WWWrJznaYD7=FgAp06*H1Ep0f%LP0}u!6wg0b$2`#h?|_mLvt3 zaJ7bE{H|gAMk-7lFMa&?hVhW1yWY+H=R=yl}v3fv& z`x^;rA`_3#q|YOev+nH2kq&3la@wV8Mf+$foiBPEBSkpQw6AbtEPqbSWk|oa`O9I0 z-o-fU-mHKW&%JVmuZlaWX$4oEzF9RtZV z>nY+6wVx>Lq*U8Xi82J#uvH*>ag>5-BSP?v_SSZEOSZ|(kt5gbUp{mE(z$sJ zi1Ve#&+K2m0|H2wv`6q5aKV0C8;;|ADjm;|(iW>7tN%({U?301upS`bT7543`UFYDQodKI9B||POC*5qPv%K8tWI<_6m)>8%QFsiAoWEy*np0_b zWD*~FY5_NRAQA5*GTB6xiPzH4edHDUw=`njmPnllwRQdj?)qi25sx7tWgyVGak@^% z5N+xz%Z~NlLz6XFAnMs{XhZebloc~ElBD~C?VE44rD9UMHGk>iqTIhfqt)ue;gO?~ z!>Xy}qs=C&vvvh?gus+ZB&~#*nxx`=5yW-71N(LxPB5d_JB|WwEw1n1_lPWu%&_@MEuU-XPe{r*QUde`2Qg%U5DrAX+1IMEm-pG~uazt;OW{<2|E zu-e6r)-GQ7cKJe9Za-@a#%w^RvFRINIJ_#36Q z@JDuJ$f>rYhoDO<=_^49LhWiaO5Yd)^`4Gz2^a8%CuCK3<48CGIh;~n`L8x$H}442 zBjseyg;N1VRaxn)S-K(TR~vXqt0=nDXE_uSQNEtU@l_{fdo7C}2nSB3)u?AmA##Q& z^X)d=c6(>LcdZ>_7%#5DtP{{FBM$#GDVXj1{5h%#1_EUUHI8vYrjmyTVmZBz5Z#I4 z&!|aST9Q&r!6j;1=uUNOYh$xW2riV07E6(E^Ul*(cDwnfsra(8(vQb#S-0$xCGv~g z2X`0a@wt`3pxecv8SBk2RI63w3!oR0ehx;0Z&!9Kp)GVq+ZNxV5r-NQi>?-rAH*f8BQpV@WihK1D^9xIu>y zke5P%57p%OT=S#Eg(s7vGyu)h)wW8Pmw{m1ff0U3v(acakBvq(L~FA#8tok!jT&_{ zh1zIz{OpLd(~Zq*uRO42=o=f?jqiB<>t!#D_k&ILe1le}RNEydMnm{Nv^u+7a+uv4 z+M=OrvAd+n2g0-tGTVwZ+ZD zx`FT6oGnr#y3?sNvRYm|RiH*Q^Y74;$?bVJ9O@!g>iC|h{V3+A8QdrouiZQ#@uUmw zbqRS)_t0X~5#imU*F0WJBt0-5@qVW#4n9Ezq74m((sm+sfgWTgW2xKh(Ubd43Hs7f zo+Py8lZ+TTk>CWoU%7NN6s8MBIJ-9*HL*q1?OwaFsfQ2wUAGu&HW%jHkPRF!n@$H_ zdfv!nAfm*^y4-)PWSCC1lnT4u1Fe8{Wv$gLmx7w~1?wSNu0dZrJV`*TR)?b#-eVeX z8ylO~G^^zb3TU*l1|>pl39%6ll}8$;0(1z!k*-977OwQ*G6wH#DBNDkAbRPj8`qWc zwA{sQw?R#vt6y~6DaZx!E=ZxKk@R7+KXf6aB0Y%QTB-!nPA}9(jDlm*M!`3iHm%*= z?L$`zZ$ziFas8$-v^od(=G~dS(&^0n+!1MwfN-(CU~AM$qi!VC9gSKo3e&lOe!eqh z<$9_6&xNk-wVG8Nj@){!xOh>YSwJ%zyx=JNddZ;7)w1vfedWc9gqwbmAC>3%;sn8W z&(EKlo8uYnmj_3QHGSjWjfUV(B1_8DQeuJb-1 z*jkVA{}Mm7{Ys@=lFCOd+()reG8N^M;gU0keM~JTypW|Pr5Y&yCxHgH^_(ey5pbOFx3W@56=qw{j=NRQt~>lLo)^cH+k#QB$n+7O&hEfYM;bjU;?w5 zS-XzAN}7DvCelqr^F@z>4*`^dTh%a07wjf?4{ja)fz?a2*S?lgwe4=Jzqt5KjF3Mx zE};d`FHpfE2_TxgIbaIC^1>`oEpHMOj(6tM^J$TF`^S;6V0?2eVvBk%kykZ> zrkJB{PkAJiwtzJZDyV07U%X6s72zY-jjxs{w}K+ES8X&xJH~pN=SVnIs-Ub{>9y6& zH_<2`nRRfxYfS6a;@Zp%xkb*#QYy7P1L3z{TUcFvRy+K}H`xyE0HcB0lOozPtLuyq zcs!&SC5D}YBcX{ONLr`6zM5q+l}-fah}lkX6r}g@*~#?PS`b})FF7#+d1hoGkGw;p zvZA!fkq6>+;OKbnIpvG)X3DvX01*cP`Xnq8_|5~HJwT&)p#vdtj$_s9ID_ST!e+|p z8w3~2c3|+BG}jkn*aG6EhY(O0{Md&-0sl}1<3%fUebiU`o&#J6(B5cdbJsS4w?ysi z0`aNZjR1uNMi?0$N6m-WDi%F>b6AU9S4mcIUb7Qda%KYue&90v%T5U?8pyni^?;a; z-atGE&+)03iC_9zbJ}^|!{6+a1v9{8ptzoF_3kb2e;2M{#Npad97wQaJny?CISSTB z>X2a7*q3~> zPmWe)0Cglog&Y)BE?COFvea)nLz%x`bbH@UNGAIBh&I63484Q@zc#Cdhxa^o&pqEn zBR!}^KPJZ+XpvtAkRBb}cY8#idH?l4^g~~FzdPLTwcq6Za!U?Qfz94j2my>+1^( z#`OO{3&d_q$8*)Hv6N4dER9Dd`Unk zej-#r1aWsLj$IC>-vmq~oLQi%vcKW4&fq3JM39_xxOyH7v8H9)l-sef&MRG)gmH7b z)Vg(ize`Lp>ShTn#FsB;CbA!4L^B#U8*V+PW?nO5e(&lNap;e5XI@#gpb7bVxjv7zx77(rmOUx$$yB3 zct{}#GRy$GYZ<3igE|BJVG2M|xa^dvARjC-)}qA5ex7(xz;}+8{sG?yC5wm1g6Mtx zs#vx3sE#czF`2(;afRHViQG(IqTp4T#rQ<{L)w?^WDij6(s+CVtvpm|V)BV+*6!K_ zyTurnZ0!O2Apu>BiIP9osaa6I`+ssY(e zdccLQ49aLbPT01_bVsc+Cs@cVA|+ioHeon0DDt(GTRe1VyTG$yA5gR52*SSkHD8=u<;%r-w|T+?0?K8o}owA%%kX|nRxr*SeY(NDF0lg z_)P2s{OCU?u;qk?e*;&Fw~Wf*y6f9>9lE1vWwk=V(zchD@fglms}kHl2~iZ}Zsaei zotN=*#hhx5VsBI~BV7~?CAv~7M#5lY2#JIv#nMVJxH;OGn~(Fn6IyW3h$=(+ z=xn!Zyy@ON39g~?!GmQ|5CZvotGOYSW3yT@!(huo2sm_Wp8fx{ew4PVU^AUY`uN(D z_UfuWE-^QOwGO~Vijn9+&4=R6R{{ljgd18$0E0(br|HOlSHSq5$eFsG zy+c=?KD38-O+UPM*KMu(%xezMy1DV9v9oj2ja%S&jsR*QT>#D10WahrCG<~=uk1^) za5a&jW*|uHA{3hbT=5ITg?XXHDHP@xhL^7QqdVJX@Z`P4W@|P!f|#&YJ9@GPI)WaK zM=CQnpH88|J(;Z5W;z&Cqyl9nym6^*Sw@z=Bfg}k6?di|X?%z8US_6bJz2+Vsw4x1 zG}3Fq^&AH!ILE)pSGQ594dr^BD?9TW!hLxZx1IeY{XiS54+C z*xn?2&a%CLEvQG5ii+qJ(AI*uWiZEuI9S|YI7f9VB}am}L>%~aGMkCSU2=;kgPjsy z6NDbOguHOHRE6=9zdve+A}vkpcmd$?&(o{o$t7)xv=zoTEfIfZTu@7>p@3~&*bvRO z0|mj`L&0c`Q-cx|MF}YZ?7K)wi~?g663#`)-SEmNza_YCeUaEkAFuRJ(Q*Q2Q}GOL zRc_YnBmAF?7~x- z(UT`{COW*m^)AQmw6+f%J9gNw|Bx1)U0keg?G0~7!nQ~cw{*J_h?6r0K$C2_xL^N{ ze5qrT*F%jas+nO2=%FZ?XCfTs5k(>8pR+?v0fB@-_aLjum;gBwibzQqe}IB!b}+0_ z?!KYDfAi94q1aGY$5j%5vv-$`RMa_s{KlI$H$bQ9flUAVP95KCL#5Hwjq!cSnCtdl zekb&~hP84am-1VwL4qC>fP~#|!Izb=BCq4sDr`pZP--5`W~rKSrs|?)&~wle*7e zBI@v9AfEqPZ7?{ze|dXtwL)3ca%FXGd;juTA^|vn&QAaTiWNJtop6RNH(xUG14sPD zg4-Ho6FVnj*5#*xTVHWui=v;XP}D3HvaO+$*gg@pueeInPG7F{&*%1_<-Y#XCYSm9 zUw?7lg^o|{zd*UrAIZDk31ik3S4}QyC;7}pM`KWZs4b=!efn}PdMA+`G_!>w1u*2I z5u?b_JUHwwvcLdY5*IG`v<;i0jJZDlp;m-G5%l`9cCOWIUY+UnGPAR%nyuE=b8}9w z=V+ych52v$)aK@={+N2kET3Im{A2m(6P*4t_EI0_vLkS7-Vgr%tswBfTUfH(7wA-z z7^$Z+dpHzNR5YPR7H=q;u#2NdvI}jl5wl7H1hz|G@uorXn_^bcwYu~#@cqd7UZ-1E zin?$H$U*qzBHT?rqBHam_5%t_Kd)Q$(E2*+Q+0j)(1oSaQaiP)Qrd3Rp>H8Y3 zEHBS1hi%j8THOv$zj@2+m~dX;SMtK6B1kwVCjrx|MFQ* z@qdR=2-C=3g&ZdCo5n;4M@UkRMabQWx@NEtG~(e>G}O|JT|;YyqNQ-$V6Ev=CqP)c z;x+u{rE=3SX6EJ!u{71k=9+GfgijzuIk!1iDuvRq!ra^p(?q#Ma2FZ|$v#a^|AQJ0 zK?SDXp}K=-&wIZw5u?aV4aJ#jiPH?VSk#UsN=~|h3V{+)NoUI1BgN$A=IK1zh)Q>t zbhD(JKfSpLh{~`^ArL*OBwB1H3t{+dy3=TM(zC?GQDMR{D8ch)sANH&iQZLVBJxu$ zw2&nWP!dEE6h4?NWed6hPxVTr4!_B{{nsz|5qRbfxDRquruPs=jXA7`QxG;eRWv^u zy6QmXMCy`8sXQjMLQunKK*szfdf<-R?pm;UuGV*z{R`Mn@^dIR+ zhz6N^cx`J=Uzy)BHzDzcs2fCQ)puxy{HJHgL3ybj-U03-8m7f}%B*L3ia6}D5nV-l z_aX*WT+f8V>9pPfWWqW1Cg5_Q5L(5AB!)X;zUEWz;6d1iF{1=$O0k5@!GpO5)3y*k znPwH(I}FMGCaRSSn5BcsMh$m^gJX?=XOJPYxOkcW^2J3_QZ?AUPwe#jwfcOw3;W1! zZ>`x(rC^sUlaGI3e!g6S>MxaAqr9t*jWS$XK7MSpAt?f6oNXLCwz4z~23J~ZAnT&B zQh9#<0M)%KwR(x2n$5M|E`i`qcfMZh_jkx{S=36!R;yGbtW;{XAm3X|lIm{y%FHbv zmZzhATKjKMY8FK1gL3yWcqOAmlK03wQQYjFAfcTHUD3*=rM*YT_>*VDu=SpUQW^Q) zk?+NLkw_U!{1=Zl!D8iA60bCaU&i!0MN!xnJ(TmoEUc7Ib!P7wudj-A&lYkH*-Kv1 zZM^x%JCDmct`(D#lrXg|+k5hWBU5#S@5QFz%H%54mC5Xa4keo_-VCIXauX5tM>dJ? zRdK}23B21?q%}&{rN?%Zh*eGDH3-|tO>(o|rFj^7Ik9@F8wMIe(-0WSDCSP~rm*jY zJDK!ybqevtsXG)KTX6n}1v!y$^m(sIgUHQz8If`zHc)M)o*XU4^N?pJu_(UeYdh0i zUj_566nc(_-s=1V8m%I}&_Tnw!qA~kO_LU#GvXC5&8}VwN zaS+J`;IqY87Ua5IBb#yE>S`JJ0=yRyAQwhLFdDx_4v*Xb7$;6a3OAc`Dgqvp+mx;O zj)PlCGMl~oHZUqHawPde0<@EJ=*MKm^oR6dZ}B<+Tz1Ml6n2w|^=PA>`hN&}4|r+P zy3V(&s;jDV&N-a!J~{R2)8|d|hKX;OJi`q0GE9I;Fac+V0VO!73_;w>5ClP#1q>^) zaPpAQC9CYVBpOC{+{Z7-vc_{?sK}UtDbu5iT@mm@z}91 zuBOQAl+87)=1PHZ_be4+vYtSY;g^XCgFGK9(o4hq;JE;zk4J2Lnn@*)RO<=rhpL8f zZzLa64``(m!QYyG!MR{BmOvyzIBmFwW2v3D zK5GAibFK5^&ey~8l-wSZe}+_W$Xx(#Gg?oeBX|S4iV|}3*5?7>){|V@Kpxy@p|yDH z^8%Ee1ywRo2igo6KKmCu5B>vaKl=>8A)-NCf9C(?K%9uIBY4#OGXU`h!p$0L8cs)m zt`Zta!gxW-cmdY(hyWRwMgiQ^+&+?w3v_}WAaH&0t;8VmgW`>at^uezmXGDdz6#43 z3}-;_3>(RPn6W)jm+;=a3w+}}C0xoIa`!vlbM(NsFsOM80zt0N6`ZR%&fo3ZV2O zB92@!5qKh?6YLcV@Nl44oDe6I*{OgQW_NM}Qfe!aYpujFiWjgq2o^{!Jb)P_!)qp?G%ba?ZR1l&CLt_{Y>f;#p-f z^jdZYP!Du7p3dZFNZs)XP?j)$Mvxj_B#rjMwiJ925`_=6^7^8+8b_hw;3@iHVzd}c zh@Omg(=EB+X*Td*@pFdo(s)o!%p-t0*b?MtIve(xaC0q{>GYTk2*)e|^;3)#;!^^S zfSoDmA<=^A?Dt_zMtuE|d|O-q2cO6w&oO0+RGf}Ws?Md+&+ zCp3gQQmv*o71BuSq%Nu=l|{bJi^dWhM&B9@^C;709dRHY)s(hAslxo>i5bP^S*4{| zgY-jyivJ@LdnJm-H##h=Zf*)b@cVtxR2J8hy+krk1RU6N@$FPj6(Dh;_gFlw!Npc0 zj<;vfmXC9SQSlJ!7+iTOIo8+)u=lf7lDenR14}i?IxX$ z2Mn9FpGQ%<8WZ!Nqv-^zUtL4Rz>`%!W=*b}$)Q*^3kTXVZk%d)GO-7O&7cYtok?qt zp*Af?H?JP4H)1*nqo~MH1lki%LIWWWF@MpWLzQDn)JV1XJ720nd**5fkXr#KW;fVp>>&q+0nXxAF>KE{4nu7H~1j0cyr9K@hpa^Bcqg zKo5%>J_(&@_7-Zn9Lg}Y)a=28`DZO~zvD^uuP z|IYr(^4jY1!r;`p57cioTP+u#xJi#t|HSzz7qg1RZadk0yIshYh}gWmFg4`7d2NTL5QtRxxk(z@(dUi&G?|*C7QFBTv?g0HX|(p zugKxCzYaxpIA7RVJKb-D!@a>Jt6S{}2?nlb9gs)@4-naP20Ggwu@5d|^a&H_A#2mS zH01~H-I4j}LmBxx0fi#kLNtje5A?Y+$;Vu-8@l4i6|T$2D-!2xweyKr9QZ9g2WP&r zJzQ8AZU>+JdaYLP2cOpa|Am|8l{gMHz4*d?y8FV7+#Ztu?z5kP7y5+p?UYvj1!$s` z8~2@|4~9M#`dsL@=;QyNb`1JY>tQAhnXSG&mP6!Zkv%guyklHNuxaRzeY-kOP5~DyWSK(8aYoI^8l?981e(5!k9|({ z$f?PWjIG<9oyn<#$M5}>_YR)eyy>R5oxZXD>cU%p_UUUA*eKZvys~zp$q3R-%TNAj zk|_E*h(2CSAS<=v#q>Ll?~u|{xv<7N#}6LgansJr7vJ}5Z;P*wMy=2MSZTU@)%l}G zo#^UgCvLj&=}nyfkDk9gZdWSdWHFt!KJi?dl>H{HolH)inoQ*I({4{Dr%oa`<@of* z4eOu&)JA`;^65`kuB+@_UaWX-r4Y^K5Dp|sAVYSWH@FE7QVBQq{Fs80mkZJCN7dT# ziR0rj4#HNeJsuxFF;*{ra{Q@JZ{IL({|FM()(s~Ym#qDp)y__H@6(?;o*y5&jxN~0 zTC9Y@%rL%Ns4P>ZaML+kG=v_V$`j6zP{mszth5jV;wa{ON{s|##8B6bA0ZGh> ztZ}NzM)@+*o2yf?H9()Tz*8W*W-sX$!7aW=K(MquCAZoL-My~_X}$t&273B=A=Nr3 z@~0e>1p?Wedcf2?Y$%Nz>)5QfIo~_cb!4l%QbhllRgE0qZDm0RvG>>s^-bV34& zipbf$NC$tuwf+Dg2)UA|VjtM@6X{~{4&p=-Atz2UIfgW0c?E0>&lDEmJaYAQ5|v=T zVA(bM!~bfza5y_FC!MrKYzpPx8icM7JsJ9lB2x&3f}8_!2rF-H6ebNH@1g_&d86_1 z=Lnf^A0GPx56bQ0cLVK#E6mS5LsOh@B}m%6C}1&SY(o&RK}u6c#V36UH&m^88!5I~ z=hNU*dr38&bIR3xHkPa{q|e&2290Fe_>54m|^|keYiguTEmX?R-pUH9p&rYwkR}9mc$u)x zSz;JmNl<1z6D?I5Vyv{jah3(Y+V5qHWoZ7c*nmboo$fs)H#s^0Ig8ShU}i+jEt_Yj zFbin((y3alzp!G3_rFzHUAf=AL+wW#*T%n{00>>y;TP3Mh{fzZ8}UFwc$t zCa~8!D@Fl9I7*gX1TLve3LP!c#r_NGV^&$`nNmLZ9K8fCmdId5v&0ReN402au-Q;!B9fj(50>!$y5la9VUNnrLD8LA=(^!U71| zwYuOE%YJv=3{a6xqAE^UZAk7i)$cR=V46KT2u43e-<)h9epl_zzApvPl`_(Iy zE9>iP>tzfCYT4|i*ld?hO4kgs*(5@3zMUi&L%R&5dDP7z?{EqPir8s)i1ZxA;ia&1 z{XJHMjMFqFj|)3|WwVq*riDEM3`Ma-lw7fVVaB@v4MZpG6nq<W94Gp{RZ<=q``3^}aY*EUCs)iry2``p>>v2AaU&mI~KYHhzIZflzxw$7d9d;jxf_?=>LOHj<-j+v-t^Xc9IdThdg&^Of0q`IJ@n8GyA#{qJ9P6GKT^nKebzMCi6d$e}|w;*K2tB4e(+TAwAa)-Q&JMAr$q58nlCzb6l>br;^OK~-?Cn0QSVUR zdTi%zXMNM4_M+==ecSRmE=kvD@!W2&%Wfs_BH-oAmPND*<2dNF^CW=*bK1KMePGx8 z*T^T{5^BOD-x#`|HDnMNdIN#^G{Kj)r=H?l3_z=o{X zLN(nU3I$Wg)XY{=oqEJ8UV;)SJ@1_D9&hi-&XfW(fHeF}oechk6=q+x1r z2p|EeS{5V8sG&*<&4S<=kQbBe0oni`FEc1EL=ok$`H zXfH3f;rL12_OF<3|LJxRac-NyIEh7;JG|DSQtzm(6>$Im0QZlH?{>kL39vlUw0 z6z!Vk*{;*%o1N!~VZgNnO)dCo$1t1af&o=Q+Opjd7KvJ<+zncjb{BS3x7-myz^KEb8DemQ-`vZ}2gunK~u6L6xwj+^!B9%YX z`XLv=v}Du&2yA#gu%Szww2+C#Nu^9wS2L6q$>8)Seh`LpIxdoFN11Hw8@~15^75z5 z+Y1F4;$;3=(w1Ms|FJi|fDh~SqP_ROcp>-Tx{mh0_{yuVe&rXhzWR&KgAY6)Tgkbc zFG*zJrisW&47yR#?`Nmu@?<(@cBYg3c-pt}5W_`(>{#P$KkKxuEPAmYzvIE@-M#qG zt8Te#|I(|zbo0(N`=8pm?%LB=En2%bUiU|Dx$3GD?|s2>>rYxA`>x~r+t!Eo$CJO` z|NO}MmHqOOdmjD6iS_mUE38lM|EhKD7w)x6lUJE|lN*f3^&>ONXRv5SSAV}&`~6?Z<$mU8Ubxgnbq98WId;72Dzq`2 z7v7Z(f*i!Hv)d?pe6at*NtmoSGV^340q+UvY@0MgAcQEXyi!MuhEc22Ndf*NS7I3e zyM-PfvJ~6`UPw!;JNaGY!i`(#-*89!LpfUoy<%uiQ zQ6WY#?$N4s)&-!fD4={9RV46OMUu;zP^ zx_^dz3jfKz+P==d$9|dpX8XPNPuRa@|CvM1*+E&oqU&15yfqksaT-S~VRJGNyHf^o zVXAIp@`cGU;mY4d`b6{WQb3*AvU0lSn}IjBaCa! zHR?h_E~6pN?y~og6mOY2c@R`>L3y-ILw7;fW04#EAcPj2o$QVLsm#~lR)-@@jg)w3 zJQ)~Sz&7|&$deQ}*M#CUE z7!pB-!kjTzIERXYc5Y9(Dn77ZzGw`%SseK&9Q!=T$4Xsy@T?vOQyoAJ1FiJdm4N%* zrH4C+8mWzpAI7vBT_%H63L2}Tx>%-f+&nR!=f^P>2a1l$WEg=3W7=!mom#S1n?@w}3+l|YW3*X>78I#*DT_(i05leL6h!d6*U4@L?cPlvlL z=#YqOXX5!ZmJ3bdF{GRV5yxZer(W>FULdY6$Y+5F%8K4T)2>MDsfiF&dokV^HDbg6g(dRAe{AN~}bJ zO8A9jlJLpv>@jP#hD@G0AfY7;Ej`1qf}zf&8yYorl?(@rgj)h5BBHA_)mWLy*XxsP zZbP}pFujOJQeMo16kbAxkf~U8#n1Av@J^<~slNabwuNMUoOk4iiVQZ46Rn(D@RV|i zBZ}0KMq~GZB$0TU{u**dtmPEBkg;C0Qwb1o@-hs=Jul-BaTF6FGHzn7CX!awqD9a# zC=AgpvR#b*ahTS0d2mXWyl1mmUUjibb#d?6DC(SWAU`~H%WK`GcjWI2mE0So5Ko{652<10fK zdoSjY6)9mgu#|#v7Clu;6O1lXuXO5lT4*EHf`6l4Yy=R>-GpIF8s`kAE=leIkz6c< z`-p*-!4YmD>TbC3K3wLxQM6c*NR`xf&{7WkE*6n2fo)9uu_BHkg?B4`9t~vKOuXNt#{HXI`=cCZ5pib(5Au*#z05+z8-*W*wXUlz5f8$b6 z>!=42A*w|h!_9!cBkhtb?|C957UtY&4K<6#6x^E)v1zBktf1XuPOVoEpoHKerAXp%eN@=uPg!o`Gc|%}|Mje?6 zMe0gvOtsBXw0E$q?e7M&9Zs!1BM)PmNc!6!|O9?fqaYb@`BlBSD{ z6i;Cyi;f;0yy=g|f%x+*MS1}@yJg5ltrXS@&-4vFt3^4|3gBK{fu5&y5z-x308Nct zRA${`fhznjV#hMAhFY56q&Y>V;Q4<-FqGw$P6shXwAWo+Y&BeGX}m3Mj}vV*2g|*# z7rpDQcGTpW0cPjYzg-LTj9fQNmwZA(td(jL1Ab8U&h7(ELp?s6XhSM&QI0BP*?sdZi)X;5^Zy;Y1GwDvi zfVA#oH9!&5fzVmM)XMuk9K(Re6Xv9hnpppp}+Q78N&Xqo zO&GgrO`Tkb)o=X~L?q&NxIGM6K%oG=L)Zwl=m)FCt5!P0PKV&_kB&0vGdfP#!i;>S`dUUk&C$rXP8OiY!^*nyy^Sbu@%W6F!J8mv5H&95_ITU#-bFR#_HYmPqiM7~9p$)iyPQPQ*UkBml| zY!TKl42pV?VxpLgSi6wTxwkMBUWXn?`N6is44QS3)-TT^jwEex8(0Uh1T11|;{f8I z9I;qWh6G}zQcyx1t|Q2W`h)<0AhYCm7I-JyUQd6)%;3kA8)DGEV zp204{dmtEU?$K#;w==*3>0t(h!N408{|A|tYu~d9=o)1SMnJM{=n?AoEH9a00qJH+ zF~l6<{2|JbQ-{T)@#p(p#!zr65^3!J1(l#zEah@s_H#MxyTy8FJIZX_Ugu#*So7J6 z_n!!thGb5iz-}E&=u8Hd&GzyA3F8+4N$!*P?$^ZQFa*~98ckwQ(pLNrybS4CkluuD zL&iBE=f@%Jc7NE|SboN;TODf`iO)UOW7hXuZ?pcb^-=40t*=@8_E`2uhW|Ih3vk^K z>qO;F!_r8oVRL3jLyUmQ4)T_g6hsnD5Gn~d56BGaqY&VaKFCO-dwq|D9Y6p=ec%oR z22&wH54?r=0znK^0Tj$G>^$O5oVaAHSss;i22rhIZS zKsgXKpmLad-74e^X*cZeB3&&}(Jl?xrc20kg&(&(zIO?Txr_4{9W_bf4Jwml!8AMg z#wn$3_0XasyY1@{9w~=tJET{coT!1h9V0>M6$|rYS}U5+v{#0B8y3!^yLitrMCfKG zhCFOqWBr;U|3;=b+R|M}z-it=9j!0L39=6j8FN5z#Ilc2%oIi{qB?1i5297j26bvk z_Y{I;h<;e3PdD4<`I3<^usjoIb|auOwTvc)Kpjt}T#*3U+``i~89R-csE5sQ&}dVE zrd+OphS;Sgwcc5)cn zU;9=mzhOg@)<~NQ<_nNP+$vquEdcy@*8hLIq!Z2c+9Z$5G}3F@Hv50iHUnt*F#})S zEPhzr#g1l=u%!Y25DHKXNR7>=1W8gKr$~h+u>l*It;BN#z7RljLHkLiC;){J9??(s zEQ%dkqJL}uk3nCEoD=aq#r8;1_qP> zv&Rh4Bbj+|+RUK{Iv%M0F^zI3qIE!6=qsO+LM`HWxj{gcr;_MHEzemGK`Dtoj5gC9 zCMrxw1{}&=jGI-NMQBj~Ib;e#sbacFlZ)q2_*W3Ro6l=ld}NFWKBK4n;m|*YXWY+N z-bhOdJqjofDvWV)a_SMW80ZYT5*E-}bU8^vljzlv$YwN?Puv{6Q`ZUY%#G@TdO@-- z$Xq0O*bs7;^l5XwMFM@^M(BjeDF^6LOk@)UaL^S{$O1FQUBRI&;GpjqTMuB3K#2*+ zD+NXo5COM`%FhGRY*##L!*}2!` z?bc(+HI`smZrPpE&-pb~ustA=st5xkkc8|{pbSlQnuH<6$rZy>%p!lnU6^45_# z7yQOe1TZh}wcEpcm zYOq~#s?nI6%w*V8(Egxv6l4)>U!uQK$MO&>BM>_V{LEQ~_1JD=!$^bz%uS)u4c!*c zF`P1Xh*M`FcImU|fUVH8p}*A2`f)w=kI?!YCLe17y)kQmi1iLuAs9Xw-zJ`#&7sso zt`vzLts_#3rc-!8y3i&(6~p6F1x|sdvX)Td`NS28$4FDHr$*z2V!jZw?s=9+UVJd# zKIn^~8(xD4&>C^g-V}N-{yx7$iL0#FS|7K5%X$`}^0xgv`*Hhe`;*Q&=Vs@2=e5oc zIX~k3r0ltby%=YWvG2+rStA_G5B6OKZ_H-NE25`ib;3IbLq5{Y`U~dK2tR^J7OFP1 z2?7G+O96i42zdi5Sr;_71)c*LVKCcpn~iuwe61Ams$f&}eh)k_Fb2E7fL za2*%TGsy}oCwE^DP_Qk}2er~H<7tBNw9fQL!7AJumyMdih%*$5S6%kEChR1XUbK%b zs2=s91E7b@+bAQHv=H+wX+p-F6?&ZpL&qIxK#-)M8sW;0v@ZyYwzvAbK8D_Cfj7}U z<0t~MrjgK9MN=aL4xV>NQ1p;sWt&+TNnxfjr=w6HfxtsOgO-6xgU~@GG#mD*N)W9q zs36FYJ)KC10xify5{$^#U@;+PmVC9)jJqxmi54BmjYepFXx>DkisDd(3C5#@j9B+g zNwR4AD98E&Y8wJ;l&J%C9_QJ!sye8c#{iy&Q`*OxV6ycSYJ~m=ON^%#F)^1lyB<>9 zBCH?dI3!Ni)|C0%LM4fhgvdq_pb}isV1`%pD@Uqay+iK8V5^ql$V|9z)JbTnCR188 z9ho4YEHTr(5vw-1nTi6j97TdQqdQ~-5rYVvs5G@BL74)*_@@}3S_u3u2SvDyp0m7b z;xS7%CcPpzjRw%wTAL^dH9g$HnlKBM1)_UZvq->zE>@+Cq8UEKSzKqTG%6aZKC(^3 zcTC5W8vX!mgb-J-A)2(V7jnX>VPk1)YYReXYjb01wLwC8+xifK0pOjyRy}L`-ZN*H zm%;FxhYokG-9x0BkG<=(M6T(^GZSEATTUt7P{OpUc^>X9*4M8}N zOA9ygL^Y)Vo{n7L9dudd1-&S&3FE2fDvFN2!_E{04>nXb0x?;L*G2LG-(awzPSyJVo*)oKuL*-C~xQmT{V|FQ7|_J94m-HAU0M60xuB~5`4gjL(yXX5BUk@ z1Z^6NC(*B9=n@nZWed<%HQoSXOhgpTz!(kbegs?}Lkj~ihChx=45Ft=gF!q8C1apl zHZcQyeC@)iWx5FcqUWpiMk%L;qGpWaXv#wn)1XuWkA&4aC^hMQVolUostC%A;eyg( zV2B6cpfC~_%ovFwhMx1RI&ur?vLLJx#)uR|=IZDc|Tbc~TW?e`T~mNxb@xTR%xp^;cBcYVk%+DF1TLfc6TQcYy@i=+`w zTH!kqsjOm@I$8HfIg4!+WH)QdsFu8Fuh?mK2D?X&)=6Y~Kg>2``c||AUMb#O?X)9_ znB_HFYv(V!bU4H!xp(E2-}PG#$>PlvKrV*8V-o$?s7Y;K6q~5Rds()a_F>eYPWk5` zJ5#M<34f#1(Du?R*(}DRN8^suH>oMVKkju-_^XUC!({s?aSl6pC7EYA(!IrR;_ub2A7p zff2wKQ>o!2)O@%*4FVgOrcjVNo`-X%9UI2k;_hXPBx!zbO|HB!GAPRYkg3WL{v6?vi|Q8yIHsibv8Dtz#goTi7OZafjN?2ib~!rI_+^K$W>gs*vWzgS z-7a(zK*q_e3X|DC6K87>HiMn*R#)gSW(S19CWR^!%~@zTJ5+{-UV?`9<;y*o_OVAT z=biC1k8#~^-rCvw!k>3O|IW@6zux`x(GTBY-M#;SW!<^|>;Gl{gVsB_zZP=1|Csg5 zM8(R74wJpdWZEf>+|;1zQw-FeyRO#`vaj6 zv=%~&k&mbWipw08{eDkkpphpf7#fYDN6J+cDIlpK)EDSlYLPzn>L!`+s0c;}4G@HYugbxTQxfUT%1nv+JF7XkU;4LgBYh!kk!r`* zk`gjB*%@tOciHzyc~Rb`6l5hMzu6yMeDqGge4#JCxGvow6Y1johI!-EG`c`ay3M{v z0nokjdTj-*>6c69u~=qfDdjU0i<0x8 z0-#+XYs?ix&#ErSg^{sCG@41th)ijJ7A$gRlBBy!5D4a}A~1LY#1b@-JYhte={`gJ znI};PN+Q)x&p3wl3dj=4^GwOzi?xYZDeJ6yquMUgFnWx!bQ~!xq=aiM5}L+b>Sr+f z=xQ&H(bONwpIeK|O#M`0ptj(F8PxHPZtgK3m{=8w9(8a6XJb6=|05d=HqZ9GW9(jx zJ}{!W9Xt+IBya_!%Mi#!|L*lEqDRC*(C~DnaCn(rmVp-oF0o?~eZ<*^?9*!jfKrQ) zJQNU&x=D}~QiL3@*AYvnhGZGF%Qy3ik78v^ zOlEcddFCYb5-BEz9V1Gv&lwLz_2Iu|bHolIBkaN=!JBIJWYR{Yl3HGwZfthSkPu3z zv)k$7vRrL8$zjDG_59oS|1DHZwz0CZwXsnEd)CV< z%K*cewKY4xy|IxeIzXemP%ed$qlBZZLV#t|TUhX`fYMmBy0@2fRyTaD`H4`75p|Y>HoPV1NUAC5%YZrQjBT!7xW=SXvr`ySe2X55c=gP*BbsvK{{ub4ObjehvZ;v&fz(j(U$GPz*n zZtqw$e74tPdBi=&dYHyO6uZ+{+)+v*{RLYiKy752}3=M|95CCx_o%?K@-*HR%Gj^X=?$;SX4%_8(fZV-+X5$cem z5tg)rbt=PBD!P#Y-kF}AAG+ZlvJV`*hmkP3HP~;3eAqAK@vwJlnY8yPI_GH61pJ+ z*xf*^x{_{N%_INeCo?Tl2`@pbC;s%Y$FDqFx9+Q3eTcdfS4zQDT>I>24Q`#wr&37Y zLdHvtS|!T>egg2|Zvk+r`9YEwuLVe9UJ}e1aNV=^9|Zgcy(q?R za9}uAJ;I10sMNS=7~^fe_M!bH5ACQ5+-bq|A6kX_xY( z*OVg!NVYhpOp#2axFBQ0OJZG}vwH1wPh7ngTaCxp_L}i0_x7HQU;AMDF24A&|GMsN zne(0NtYg=-Z%dzV|J>D`wI6)wT-Q3*KA*m=ea(Ycw~w7$d*<9jUs{XDSErAh&)n9% z&U#_{>IeCYJsFEVx%U<7ovy}qFQWDhra)YyjU<_7+w!zk&r1 z?So(_kl>WeF4~|75OP&1!Xd`MPW& z6&Z&U_<*(^KOGcUNJdY2iJdIrEEXeCWB`w*d~ASIySV+Wjad16$>>RFb(Kgi5<)Eb zDA6&9sK1*^uC6Y6*vCQ7hu&^K8Tt$4CVstp~vVkxy4TAX-`OMqEM#kgdF9YUSK^T)ss>naeYu=JA3cfLV=51h| z5glvn%rCC$7!ujkJ{F)UI|F^2fo z0G;4h$a8L8|=6}Yk@2Z}3{S0kzhbOFQqQ#l@tNt!&e&rB{Um0q#;E;7EAQfV&+ z(61(^M<3eSl8<}4m03n{W8DmVua*+lZ`&iu$KKwd zL+g9n+k0=W4cFHfYqjCp`cmzKM=_e+Jj*yR0?jz#T1%DM(l1^ei48JYkF=$%RDz9z z6cW|y(QLuWZ_P%G#B8`!{ZzZxSZysmVR4I;WXri3g(QpQirwhaapu9-}YJ0rs7>a7C1tXNoZF^-e15MjNx zw~rs+9yb-%tBIriN64UPS+_9bEtFoY5Jl0DcV9Av=ko&kPXglfyXA7Yo6mQVbScm* zt0-(ebFiA(F}WB&a=eXAm6gq~a%HDN6z)L*w4KZslL>3UN?jmBh=|0_E)pKewm_|z z?xU;DhV2|S*`CWfo5!ITk}v%Xp3W}~y#hO6GgfB#1bnLJGg9!Z!FJOo)<5>BoMBAh z^0DuoARE{UXf*9|7)D7B(BK3ym}g^0;#ejX$iQ#GKtt%MJa{q%nZER)CDH0jOSXR4 z!y2OWrA6fDI;H;)oN5FVLftym$>-|!>}SKS=kj-3b#pOaCz<8EVB^%OyDuJFcj^JE ze5cXaF~^l#mn5K{ozm$$bNM>eJ$a%IIl`g&yc4oShXkF-HI7>+`Prb*>t07I)QHzX zOU!l21u#jFwfsDLH)MQ74|v06)nUwW(AD6dOP;tuZxb9JJb&;Q2#*35oeK0GJDatp zZ>g!!QVDdHi`ERo+te;N*E`NOKS1X-H0*bxSHnRft1J{#g--PHXsOxA<_M=LeF448Wf!dXQ}MSw;87f-F(j>7^{+96 zrD7iZPGI0j^S%xo_5c@*ZnnO#S|z<_7)V*ac42YglJjvT6Jv{Fy3-_UE#t*MJjq|e zll0|vd;w%ZXs{M$Z~BWnAN|$Z7)e3vTYok=cKP8~A3c&t42XkDn$c!s@BYyu(d6XA zxS2@&)j3{Ypwy999X&$c&Y)DIIlX^zWXS@SQmNE!DiyRNlms_Dim&fW)ehebKa*gF zIe?m)68&a*0yFqGjntgY7OiMOol`S)JX_N9a-1CqI19MK^#y#BZ+};z*&!!vrc#{} z4JApihfF#VkEL??&J-j9E6{0|5EdkotpSl`(v`|^P^*y)BEPrmheOK2<@EY3 zOg1z7zhQOQF1c*osCUTA6jZC5>q|>`9i_8S0a!NY!1vD5()wn#3h@vtBY9P1 zvxSkItFpO4KZrcpALP(^74oA@b}12WCK~`D0zDO}I+v?)AmmPN1m^Kw%;Vcb?+^VP zvZ|r=W`2Lr`UUGV*6&$=flUAbXa^&4dI&bbD2CWXU#>UDEPRFr@h9JAa5cdE7d7I# zG}6cXA0Vw#N@Q9n^o}-l^&)2)_sm-+DZpBwk-4oI?W>vt#lj3%dyqPz9$8 z0m@d!zsx2Qnor~|RGm24!NH>J1$YmZdNf)oA)PDWq+hPA8iu4_==@_ zd1x1BT!rt?q)V?t9cSY=DFZnS0jVGTH)=JM?8yc%;Q@ z#7<15OQiyqXQ>Rz+2y|B4f00x%}XE^2CVM zLUHVsN~Lnr>PiVIk&%Mfqcp=Il96Shh#6$*m7V@cq#0y7q_{Uvb!iO}DgE|X z8?0{H*v}2B$hD2?wBi&935Far=l)WL*w=PVtliysxKC~xYjL5RGJCwkWPWL9s1j*LHN39IIrU4I1Y}ZDOVu|4jIp3PL-EQ}5 zwOTGjgt{nn+TX#~hdE9lJ1c~$#2x9uCm^u!2S~x(Q9ti=H>|RghjSzb)Bw?j+ihF< zM*h5ajrFo8-{9|mHGck&zuRhDf9yw}`pRugxOdzBtK2uf&T8&|dF9@xtycB>U-EeB z?XUmY(*8eK>03{IkT36hlezD@{pPo)e)z`ES!5x#Lq%}shrykd(C7dSB)2&PjaYL{ zg%u{mVF7X)MBy<9)`xMXeI9|}>=Ej~f5Ec7HNt;zAXQn##cN4Hr1g z_#BlopJNU$Kxq0Z7Py(frDNPA?~kIx-E zw7_SHYm&a}jCuDrecd7!&QuM~F?Dbi6Dtsy!75*hjutn;O=q#jXb~e8m3*SHeK|ew zD+LTH5q+cxYXYE__>|phz$@E5MkaESd35smO7&2!)yk}Uo;T>F)9lnOQZJIQK9$|7 z6H{4&CBQPK<@ojjEc_FlHty^(qM)JAsZ<;yM-daYhE@z`25ZC#os5v23hFLlJs&s> z+$OG1G_q<%>$QzoAz#X8M{f8~p;Aec7BXEWZ6a!j)_sfCN^eb8!$Th7wCA6Ii&PPP=6Epr)(Rgtv!mM`4JQ zJ&m&~vOyyKos?U?k=OXpbo2OAt4NTqL2meX=#A_UgX`Jt!E~BAoXryRGczP)v1rz& ztO!s(G=cmq!TN+-Fv|1YDP9!?D33Y8p_QPO!ZMoDqlyugSo+gbI7o|#^;6OV~TPjnf^qjgNtROeqq*t;E25i z(&t2}I8S4cD3T9%7S(khcIH+W2wN$~x-Y`|;bv`%n=lSMa{1*aPi|WGE-l}3>+;ey zx7~K*Z+42v2jLm2m1GA)E0IYI$F;J3%A>N)W}3KHV(f?P2YpHf-}I-$<@@hjh_UGX zfAhc}o*53htZl119Gv+>5T4fW9VXGO%b@;LgXZ zHCVa9FPUD7OE;izBo7*Z9_RFix;8^ryr}0AM=*bP^Va7HWl^ZJMG0AyAjCv6rN9gj z0M5%UFA*)NyR?IF?Ni|^uYB2Xd1rHY=Xht~Tc@^Pu_ZJ5FiIYv#?sPJUW<#i^;4I9 zp@lTp!GcQAh!+kQQV2-{1ZftOjsvcNz0U2tgMkcIE~oTt4WW2OE}0@j&TD~!mxOIhy`np)nokoch+~$o zkkWzo$a-@vTUd%Et5qewhZZ!3n-F5`x`=#1AO)e-u;aq76vI&uYpjgyD||drR2=>q zKpd5)MK~r##IpO?210+_YduGv>TAOlf?HvO7*BX9tQWA}!pRug5I-AW5grdHDV0oz z1W|DeBzy}$7rz{-RZ}t7&t(gQb%_?O`-mcfc_a%3tAjZ1ds;FssW~A{1+Ve%$z}6V zh(tvFSRP_!Mo|ZY2ounc$0008FJPR)Z5<{bvsgC=8^tDk{=q=62anHUZsO7Ju-z>d z+{_?L>wpaw|17_1quJ%+gi)MKpn7g@$zF9uP4q`ryLB3W9??76_bhC6=m#Qw%D1T+> zM{ryP5f9$nX|?Lxo?9;WmZ6cDulhSbgJo8>@se z!t2yd6<4inv$36NHb$$>W^B9BBnV14e0F1Dm5c-F)rF1IjD7p$+A2Y}n$4xvy@?%e zG)AdTXE^L^!rEfCkWN={8M*Azt!lNBc;izDrjXYZ3Y`abh$S-_4zPboEUrb-ybOjD z^wgka(W-M>g6E^VeJMEjSJ|Oo4*gF-D+7*Z`$J<9Y$QzE`2hi^QPRc$na%{O5JOr5%)lHm0Dvk-h} zs%MCWBjg-11tY-)?K01$EqPg*?Ur}dBm^nAiF#^-^g8?!I`SYNtpA)RQ7G87R}(i* z9=pLIKa(v~GX=jI&t-u2M|yZ*mroK}$wKjuPg*QF+Dwr>tI}(e^e&3_rqt^_zu5!= zCs(iOhF4uDogTj@O{y>CWyvpPGVyrJ3D6JJqkg~AsWk0eQMfpr zBCu+{;QOud<(qLFdWq&kEVaEO#BQ^WEU%R9`r=xHnC;LMhR?OXpWsi#Z({E!qF$rZ z?ZdR$r7uI6g_DIsZl{|gF?wy3_0sivp<=~ayG7S7l@_t&hUN=fWI`ufDH#QlIm>Sp zbHsozZpl60Vl^*S)-Y}G)74u2C3_3C4i+=vJsgH|FhS*?g;UIvJ@4bB9%uMqt?l7D zeEV9nnar*ppIA;K2%uZJ_KX!hL=gGB?N&3{1||v&aREApw#T8D7FG{6EEMD;gnvL8 zc{fQ_gK{Qe$3Jk0R8t8sir5MG3IExz*oWBfKDGyE(DWfsMG-Pae61B})>oHBC~*_- zfK)Nu4lE8SIyL=DaSzEeCmKy5Lp_>`SXS0G*7A5|+xi3s%OJCKW&aaZCJkadIT~SN zi!W5VYF%~U-0$6eH(MDmHO`evquBNi)&Gi_Pxnf)hm7{k!_$#=d}2W+q0{>>-QAFU%nUa^;#Pdu|injw-R-LSiB zTTdnvxf3V$e`h7ZdS1>YlKan`K+|;dvXUSiUs<-^Nd}^JhdXz7Sv!oY#khVi<60$W z*_+`%M8`t#;yq+oPGZ49B}m1YKcEEG(xQFp2@*$I+cUBWo%Zz0^gy6YLR76dDeGB# zfG@xl{?G;>QG;2ex+(CR64(^r)cyWrr0;Z3f>jCZtS}@X=z6VEw$sHz{Cb!K zav8Ga31ev;h0e9?M{xRxHSufyd=s3*h7~P9;%N->5v<1Y6pY21sY*pY7wu${EG$(l z@^~<=41-JweLa*-9*h@{_m1uE_IlPH$|BsWBjx`}+6X|F?P66)L`buzt-oguj-u6i z2NvElF3>Cijh=)R^KW6`iPpw}Z*6G3nKK3yxQ=>HgUWv}(3$}=s+t|C54i&Kh<7=d z0Q_KPMwRk5GdP^+enX;Opcue)V7@6)ag?{XG@Tf9b5*Wfl5b>A3TyPtMZ9s-NMsSf zrjqFY&B+|Un2+4n^744Px0n5aT&JCnlVMQ=UpT#T=FFMX%ZlEBaRg`c&<5~8#a?a+ zelNAUN`$OLFOwzH1;5LkOqQ6+OWAC@%y~j_Wi!3ookB5!CJxH8;4~u&74kj;dnbzI zERw@$u_%4|bAIFDnW$9*BhsguO+3P#^5H{!dwCEdF;?=2_6{E^Ii8Oxk&NJ)yNC@i zwk1Iqlxlw?nOKua2dPCQQm!bYbu7M?NN)7|_NHAZBrQUBVDe#slTgbk1}M5rbYgJ?c(q7Ksm`MGY18tX$c@&p)yHQ4&CTb<`@DLbEHF1h3 zfatMZWEr>@?80xtNpc5|@G)iQ$>xob!Dz>DOaZON9lUwC@-3UeQ5)gJG-PZZ2~K+c zgw!>&KJhU6M2F{)O_D@pn-EzVcbx^r79{3Xv@YgK59X5!1vu%PVYC7h9G&^+!vOA* z?`v^9^#8tw^gM3ANvuQgFULEM|C%+3J{qfU>;JL0HczGd3mc`C)#a7^F_xdRoq+^v zZyX(VH#@ajdUJKP(X_txO)PA15tO(&IAL%>K1yq)Ehy6SUD&)N8O{La#HchaCm5$`xeaJ{5S{!N6bwK# zZFrb8@vN@CD{>8D5U|j?Y;iGBhojsilSFnaI#?KwyGx5Bq?y)c52;HHCHlg`b|*+s z!vdr?stGpPP80o+BLEle#Cy!jlGKXdbW#3g8WNBAd;vqzzo1)Tg_y8sN zX|+qYNIc0sp6^erta+ZSc{Tdxd5~b{c{(|J;9(7g%x@WOMvXX$Rw{-W7NJBK7T&s1 z$~qQU0o!)L22&9M9G)oPVMW3E-in}$ z_Oa}(*teoTP@BrSNM|J9#(;*Bzw>ClTvqIea=HF`oHGy-yrEFgNrklL*OCf4s;O>GYd=#E!N~rQW-_6(Y7mC9o_79BGO4{GI3QT-JGIbIk5|C6kyd zl}Pkg?!CW9VhMB;$}jUx^2^jh?}0`%=rw@w0mz{nf`5|08*4}o`)az8@yvKXaf;@g z&Qp}J31s*HXrp1$Xc4u}ROE{;o)u(}=H%C$;!;tbY``5y0CD}IycIeqy*POMR8Gn} zCf9C2YFQof4dZUgfaFI^D`6_iL^&8K08=CzMy$d@W9c9jB1~1pPnOEjcrsaW;I%qf z)jN?ias0K-(SwEyL|%Y6SZFqpyXQ;gY|bf&1a`ym=N1#c)ym+oC}pVA?yR5~j4Hu3 zs6Uq?_9|I!2g7bvPM}R>)0lnmP*jRYEgKtWn4xq8dtySD)+#WVaJq5qR`W1CHlaL= z8C+H?$T86P!J+Jwa4cfeMwC-a>lN!bXz6c))7QwZb30aC-v^&!OaU~ATD=fxBj(8< zI%b3cpOMELY2e}3jf6$BbzxS)#+nGyvSA3JDGE%#M8*+}0D@XazNm9ibDDNDk32FE zSy+D?Yqc+-Gj%0mj5Hc>lbK?T^m>O@NL!t$2=;`t$Bv%4_UO^{lOTyizEs-UJbH4n zE0@`Le0c;3T1iG^YVXA>mBPOxhbq2UW#{E&=)fI3RT*FH$d?L)V9C_AGA6GBa?7Ik;2yMgj|pGg1V#=9s8W2-dw5#39<$5&|E)Z{Az!v1^P@M7f8dqwh*7t?GD1M4?c91ieR^eTDJ@pf?pz8%}&DI_J1;De!6<5TWy!cNXyUuQ1TC(^5bZ6xT zyL_ruE$^gySGDb!d(%yx4)Se zef7y#`C03)!4H>&&Z0kgQRq>4^rx63gDIdkS+$~u^)|a*$WTOkkrN_D4PrE)U$B6& zDXWhoiSr2z%i-?GS1L*Y9W%rJ2x#I9i%?p22L^(Ga?Lpru2L~hRRL0>-_MPAuD4Hb zurI6YxrK%PLUz5%kBu|dJ=3Xm=d|TiM(=Kx zT(RhRe3ZO*G$Q?eq)tFMo%AuKywG@MSf`#c@ookMt z7z_j;PaMDI;PK5rc=b~o3Tz08-9;-7K&;o!zqeCbh(`vsPWru{&bXer0D)3^!Q}q^ z&s0-Y3?UVQ0v45b zMKo5@q70~>J^_EsSZTwuQnkou!ZTCCAMFU=iKD{7YHBRs_~nhVu~o0WRtv8u*Or$5 zY;%*ivWO_aRwazJ*vNzsFFN0dJ06Z_JL`e>hmBbpnI>RFATZ$Lk-%bf(0S&%>#n}~ znJ1oj1{%3g*j&eoGyL{@*}q-#epzR7MI1G)XP^#J-41KEBS=ip{fDZ=AjR5^!DP+2 z7wEh=nFN=KsdbzcLszu_=oeO!f?oe3<>vs?=y|Z^a}Kb#|pp4uGdN($k_kGdJg5<{=0soOz>X?0JgvO8+NBX zS|&XeeSyxI!QU%PE-Ks^G%^o zAve&g9lT7jWIe^{D>4`(GDA3A3Us@_IH5w;2)(KpPEGHJL z9!9K>3$bf0ptzaW!7RgOy3ml2vGWF8xO(8hWaIlQg?J_IU9Nd76~!l|I~pw{Qk_;i zzB(LQ$Gbf-^Mlc-w{YkXmPPDxG6^x{jJXdUP#($}IN)Ei5W#qa_s9$(Lk0qb1u%$U zi)FKE40eO5FpjYS_SnF2e+TD8L={*mGs>X)XAiETi^tO|o`&pdwWr}}y9Egbk!|?c za0iB#K#s9eqZz~LnxTiw3wMm)rz!D^T4~cO4ptQ$@Bi&mr6PCjICSL__H?B@^M3?i5E1?VKVkYB<=2eU>Q6;iv6#Ick?j>fBGr9{P;R}J}TaBN|7_CvE{#xV2; zvttK)_&=E)hYyr-;WLY~^B!aU*z7olU&fWQ<9MhX`qb<=W1_qU&&rzmk*0@5rR>t|D|Fay&yMX-%KoLNVcY`L@Jtm?nwk%u4eoP5PSk3I6xJ)PaosYma6_{EPs@192=d*G3WJJad*`sUW5 z2~5MJv-oXAp9qQ^?(DAbtZy&fbpJh_SKM>==&{a2k39Bx=Vgz)?Bx&M^=RjT7g5V& z_dMRA*3RRPJo4a6A9#FS^~|2Q8$56AhI{T)`EPr|yfK~G#Y_Lc&aMMmmZU7-`e&wl z!o4r-+Xdk$URlC>V!y|RM_2?|7LcSIqDZdpuI{co)m{Cns%NIJAUUWcMUW^GB#B56 z5d@T+Bp!mWAUTK#0)k}xs%Pfz-MzaUjxS7y>8bet-}n91-Br47jm!(TeLOj_z5mj} zx!PWI>Qsh=`LZe}6J7oyiAG)V@j|Y~geh)gd*fofo+QwfdZWa48!s(wN=i&G?es%okq&mA?Di?M6oWvtUC-K`8AiAQ< z+m|H9V~7^tm&ng{C9JVmZ!{YUWit3i!pVKjDph}#L+vc2(kcASx|%uE zbbqg$>}p(IA-}6i^I#udv7`}tdENT(MjxBw&(AK!J+3SH<44&+1Hdah4Y0L=WvBgf z(ijHABv_bBWD~R4dH#=in_2#CaIj$7?$5m+^4lwQvV_8&7Rr zo1M$9gOShcvFo$r>;z(f8(>}Xh@E7ou)g4V?0n4Gb0Is8k;fZj%>%a3D^XHQ^HWKUv$iaD#F zj2VZX!k&sZP@cw~&Yr=Z$)3fYja5RP1LgQ!_B{4{_5$|T?1k(_?8WRQ?4@}6_GMTB z`sKKL`wI3-_A2&j=#JN5F3Zg?5*r=?CtCw?49gg z?A`1=?7dj>{C({G>;vqB>_hCsm;>`8?4#^s?Bkd@`xESw>{9kA_Gv79{2BIH_Br-> z_67Du_9gaZ_7(P3%*gOH+==}<-jVqR`zGFn`WE{(`wn8N@3QZKQNNG7Za-u{Vn4=e zY(K?YG#frf$IvonDfTldV|aXoDWEXh6XvTrM288BR$>{OV_5m-9J(4^oqma~LDwX_ zP)NUm`3!!Qw&~aC+H@{mhptQ4qwCXgIzhiqH=y63h)&We+zL7mb9Y`q7t(3E5oT<< z3Eh+~qMOlg(#`1>^jmaGx|nW7m(Z>0HgsG1ZMq%Zp6-Bm@a}~5;eMCyj5Xr!LU*OR z(cS4Dm;v0$J6dIUX^9z~C)$IxTxkFX-$pU~sz@$>|GB0ULn zj{X@vnf{!fLQkc?z+6*Lr)OZrx@Xa|=`ZOy^jGv;dLBKWUVt_1UPv#Z7t>4VrSv!S zGWuJ3IsF~If?i3lqF2-3(`)D-=(Y5Z^g4PyR+M-Hy^-ET|4jcvZ>G10jx6^nUsPeULsxAI9ox}AJb3h zr}VSl2J}DlB5ntZMWT4g9au9gxGfydC#hE8w8+Z5x-w55DPe8o3SI@`Ov9Dk%#Gkq znC{&F$1@LS(uhniqS)xU6=on)!PTggiP5pr`B95}jEHI}Qhe07qN${7Cn=YzEwwNG zk<~S_vZ#aM<)D-cVM1HzT4rsK3b8B9M5MWhl*oC~j&rSZg;aUlH;r|HlT)Xs!=|#e zLQ{+rrJFQEQ;0Bcq)J8FFXT)NFFZfWjc)2;mzUD%A)Pn~2OFiLR=N#Qz_@i{)Kp2q zjT7myId@4>@+vAd3a*W;^8Q?>O;Bl8dw(~k>IT2@G2Shvn{@5EW_ z;;;HxHFj&=-`J1x$vUe@R^w%I5mzoK`65ZHLE%bux}R8kK`(Ym*y;u~7ySh~Zn8?+ z?}w?;b*vYMV06he(omO~((}=t6$Y7-$<*|CT8(1q;wG62SXxuY%B(B7JR0!2RwA6k z4B!MIEWv1*4p7WyF-(n&<5-D-owl_YXSy-VQUuNjrSuRM?<6dlX4Ao3$XEwPRQNZl zc`lHKKqqxYgu}ziaq0M& z&VoUpDx#@%6(!OnN=){h8l}iPk-D+{ROb2CWeyzG^`U)7zU5QXz%qj!txLtjSfH4R zSR2ghaA2L_<+|+ML1=3LK-P{^F@sGyINaFkrb;{a?axs6FoBPtM#CMO$rMg9Fd`Nz z5M>QN8Lv%6x*iN+QlKdSW|f%REhkV0I7Qc_bmmNe9rXLy!ZC$~bBn;+W>WN9p=x+w z>z!+5XmhUMk71HTGimu2wk1cAO~Oq&!BHx0;w{Es!Ar3iVY^Jh?^$PnbODgaW#zin zmq(%0ivr=w$akbt(zAKrXJM)#8avUl3QG8EQ*O2qB9~ZJ z9O$;CYbQIb^VJ=CV?v$XrdZUt71h3tA4xO$#E`RRBP{LlQ}N(8S-czSe|hsgQPHs7sD0b3{Wz| zk9HtZ;ddyX(gyH`CUjg6PT%l`^&$X0?rI={ZgzK3Yq(1^8^zvXA}7VjgQgD`?dH-Y zfFe>>CTMZi=xk8jeS~&PV97UZjql^GJ14kR2X|&;oGEfbAF~tWj>!A~1 zUC{C{2D14xeH_jD!r8Vj%QOygB$R1~-YOGhII#_Sr`F&@i~8>MO(}$H>T9k#e}Deo zW%N`W=1Bq!lYphjcgzsSjn$bO^3+HFTpi+B2112q=_(a+1!|QXJ?+nK!K+NWHpCHZ z9SOrMw)XZSsjY`=Va6QH3i35_8uBLfd4}A>kXZEi+ye4T9q+&!Lx8_`mp-=bxU(Mc zsA)s5Z*oxNY8%Bz;s!RVfluCDpdQ8^fq)ul%B3W+30Ldg5=6M!*-baF0il!B$XyLR zb$LP?CyjGTWYQL48lml@6sYWFN~%F$!cJj@TR>;&xQcWFYzRAGGPuqI6qrT?sZPMR zegkOSN)6B4`K#Zot!PbALE3WEX)L$_kVuolG>sQ7<28Fn*;#wLC3;E##mu;~xGv?+ zs5+O5GI?ab*Z2yB-mqeuj!@#M;Zsq8pm32G!7kHIk9Z4R?nU|L%34vp**??dEhtmg z9tZ}xf&cX}kW;T!!+r_?IzlK#1@IlnP-wTqO^C+uv=d0zfLbTZO$0F~!W~gfLH~mt z4Je`=J6c)ljt!=wg|?VXp$I_6=vuS2Z$Fxb(3;*0`kt`+s?A(jg1#%KL!c}S&JM6O zZmEpDN%w#nK`D13hXcT+Fgk>Dd(;iRD@HrESJh>&vNxGj4Xo5lLb(`tQE(yHN@XGq zYYq*ep%jGi{auSmUGUh*#6$Vfy3mjUiztKd3J8Sh1md_w@qJPOL~kL|pl)4(6aavc zZ)OilUPc&b2CzwrFRWHz;(Tm6X!ht6`dtrPHYt=`Oe_p0DPRk-+C&U6lW=0MSV9Ya zGjai*7ktX=G0wJVAn3%+P5`XLEe_DGAnvkJP&W?VsF9^deIN;>RUagXzyYM-CTK4M z07b%Wh|WjTro+bCrmA=m%s2-n4QA3`-vNGaR?XISz9zuIyeJcUWKT08UIKMOB0>%Z zEgVfO&R%YyFwr4k#!ioWKv_l|o8Z2^gI=cEzVEZ1wi5b;CvKBB2rCd7`9P-cqprRM z_YG!^*zp3f8+r^p+&DcDpmyWw0a<~ofM)?}$7kGcK!d~OCb9$9*7}0+lGVK4@WSM> zqoKz{BbqXpYJ;3cz@gHcpjk_?l@=aB*+Tk4%OEPMZLcos(U}I8pK!<)?}w%6@1Owt zbsqZt*cw^a6d%Ry!E;q|wFB2xNhF#pJ-t(3Nebz~b9H+41F6Rl`XTzf)++E{u_ z4jLPIRowZ952e?{y+q4KCD46Ga}LD<4~gKCO$=3jc<&4V7-@`mAeEMkKS89L0>ll7 zY*Q;Z_3AfA)@a}{4e?3UM<7}pft>+sfF)2<-pG&5waQ>xP)IR%;1!%37TQz@V-eOP zXio|_%dkWoUPBZGmGtpY&xqO3$Ln+G>Q$80#i@uhVS|Z=`WCTjdvm$yLnY|(5~nfr zKMkflN05SsGE>A)RlgG8=-omVO@RDi=9@?a6-lF3IJpIlg~kBm8Lh;j6){G!XmyqL zAf3<7d?;bt2v&}v`zQzc*|X0Y@(_)DTyJVxZ`JyDkEJb_X&qIR+l! zKkeiNMoZv|7*}wCg(OZ29~zkif<=hFZNThJ4E$?) zO>O&)#Yf9c6>w?dDjxgJLm?rJM~Kc*8^h}$Zn6w?y;Ra(s0|Tln2!2IqkR$-52+E4ee9Mq11&AOAAf>ftamWB7)(HTBtA6vKjOaS4-2LDTAR5joaKmGFCAAkMxpa1=3VC)WvWjn6t8=n9A>)(A&>#D&gsD22IDzHW#{!vzi z7{NF3i0nn2su9@P0f@UDh$tOlBsq1DC6Mp0|LS~d0IbNJAa=ijZjyls9_`?p_W_i4 z=bmhOksWlDlFgod2&aC{n;Fdr(1J0^;C#gFk4{QX0$y-a^~7r6m>a_n+sjX`TDt|Ns4%>Q_})>aO3NtGcSXx={lS zStub1NhqyC0!2nbGR|!q#bIQ$!Zu2d$dUChnYCGOJL5Ip!69QgB(04zma$jUKv-+l zO2!?7dn}KB2{SdxlmC5L+PkOw#@YV1WbE1)yLLAA|D5}B@m^*{=w)>;vZ}Gj>c%3g z8;h)NEV3HR>h9sM1~8)r$oTp=wel8XAIAcUxjOzZZK)h~gvnqkY5(U58Nd!>ELf@z5Zwx?-?O1R3uFW|L{ z;Y|iS2FWJj%=&$zoMVdP7#0MhQBA~I|BpW&wcQlLjx89CbS4NSk|{p#{Il`U{OWIn z`ab|16Mz3>{Poq=omz2#hxStcalpwCS9hSc{%8Fsy{OLl@mHwNf3Et;MFu!;gwXQj zN%>N4AO*6M90P27e`mkZ#3i7l5=>W1fq$P(`|i0jj;?xLj;1(_T$==0l1G6~5DS?4 zpW;9aIkDw!;wXsef_vB09mrf&AGYxd|64+@?e~M)13O;T&bnULR-HZex?e48LZm#j z@=2c=3LWA|smc4z+9%b9ve#3}xj-SKkmYlNNTHx(>6vzNsC)2IJXHN$L$5-9JWtw* ze7dSHT4ff6mVCNAiGn9T!d2C|Rz5f8S+)1GNj2nkXtkg(FVWY^k1|AQF?jp}OOhvT zqNDM~9LQ(4GNj-oD~SH8c;Qz-FD$u-j{hGu?V!6dJFn1qm+D_FlvQoqbTil` z-U3TL1{`njxmaY06c+wPzXvuHRulgpg# z!(cd!fRQi?M#C6zKsZFeSQrQ6VFFBqNiZ3v6e(AvLy?X}Iu+?sWW5<+W-zmxxy@!~ zd$Wr<&s^mEANeY(ZdBi>&(TJ7_2}l&o1?cz?}{lGP`J<1dS#K&7e87gx1hHT2Gs4D;=Ptbc{~WIl4p-=nMTI zlY8=bp3bv)J}=^xypgx?PTt37_&VR>d;EYO@*{r6ulO7Px~canM#ZXMc1F9TUCyp-*R$8yJM6voA^VJd-o9Z!u%Fp4ZM3!h z+hw@YyXv^=ySBTYxSqMb>2kW4o~q~T#d^73tvBn_`mDaDALzIGgLdjDcP)2)_YU^~ z_Y?OUx6>W(@c=+RC;-KwEY!5;&rK(DqPZ}uY>Xr3Sj>aikl3trVOxXZ7czWR&vQ%AWgy6b#P=`lS&JzqT^J@4U%9g??L-rRY!=FOBRDNj@$ zXP!HGZsl%~Yf7$=oXI)I<*bu4Q%?UJmvUUpaW+T6?6KL8W?z@RUG_!*0ETING~O7` zj19(8qkHMQ?NyD607e!7BLu(*Hi7_*K*QJYF}&nIsil%EQCc!iM#)d|y?h|=$~yq^ zf;=Nn$`b%`om?eX$T>1xI^-BRT8@(aWk1;$Kz0R?T>xZD*&IMNlTBqKSzVTt#bq&Z zLhKd0#V)Z!Y!h3=X0b_Z5bMP{u~w`WE5!-`v0N+@i^U?bK+G5O#9RO|Q_KJm6U2BC zA;N_NK#Ue0M4LQhcg*e(y&XLZk&B)N0ElLy!KgRtj2fb9l#SAng!S;#@PqKZ@cHoB z@Ye9=a4F1%+2H@+vA_mL1qTNE1$zg32D=1H!D28K39cgbaPiCn|O^OJpKk2Baw7VneuAXkB$Q}W!M!8tCKnxhg! zGM~O$8E^Y}*v;4ef2PKmuYMOICE?e zIBRSOID2duIA?4GICpFmIB#qWIDc#$xZqPKU|_0(6b$THK?Mf(Lf-71KIhk){DFNF zPIGIjAPsS*f=P(W6-+_gT){NN?G?;GynO|;5brS{a}e(h@xH)3#OFeMiOn~N&%@*S z;sh+um;a{?!DMz>=h zL+OsBI||!=cS@?THQiZ#Y(sY;-Nkrr>)xV!7qfo%ehtx& zMN%KT5la$FVbzayQ-#6AMiurXw(HX_C$=Yc#H=4XCFEN>6T4xxE%qSx#GxO1om=Q2 zVsBy}984TY9EL-QBZwn$G;s_K;8@~B;#3?*oI@2(CN3DjDa1v@#W(GkDlF5++EZ%jcBA_wCE zas)XN50PWZad?EBKu(Fr$oa_mupK!+xd5Ie7e$-&Jh=q93|=5tCRf3$*N;X zmaE1la%*yDyhZLx?uL)aJyIW^l82CotznzUBgmuhC3y^a5_;rWX#j)Bv&nPt19>hD zUxF4*!$y zk{{6;`6>AsZ8-S_RkV@RCVko{Y6ogxnYO47pbn)?Lmf^XL7Ry>nmU#?3w1);#x^^3 zGIcs_4(d$meA>L!h15l~`Ke2(%V`TzS5nvPHa1b$QFqanpzfg_r7cfAkp^gMQcqLQ z(AJ`!ql&f;_57F@r~%r#)JxPWwDqVrXn?jM^%nIBZ6oS)+GN|7`jYC=wxb59A89*L zKT}29llrB?DO3&6_M(2H{-W(o{ZCum@arHRNR5f5q^6|S#7a_oQdeRFsXM91j>}KI zQbimf^%=lFq`ssP#6i*&s))0snH6!4G_NAglNMCO1=3ps#6{AVq_2oeq^}8M4E_!2 zPvQ!>1-TP(KY4Jf(1ARnLPzr03hl|0Dl{VRuZX9}rz_%V@`Z|chJ3Xmo+aO`i08<6 zD&l$a!xixY`RTEEkz5fkkzc8Zm&w0X#4F@d5wDW}s)*O9+E&EtR2?ef4XOzh@g~*e zig=6a)By1|)pJzO6Yo&HNEPuO)rSMb`;_675yS_SB{V>ML|IN*L3~WvL>2KVWm`pj zM%lH6@i}ELWgqbcXgrXELR>Iu}7iT|ljQ$>S@)R!w7G@^dKqCsQo*DD${q5iC*K~w5) zKU;%lBHhFq`HfIx{(m&q#-kc)s-?F2Fd_Q2_a1^Oa#^WBR;j9nWi>9Vexec;2q|Pg z%d-ZMzTgSI< z`B9VFVU)92{MOwzoqqE4gj~adgrrAEIL*gdI*=j`B9#=As+&LDcdw{<>RQ%KP7GYfGiIYMp1|Z>%wFA^aRIPkO#?QgoKG2CmxEbtV)%r#6vMr zNgPSB0hzr(Aw{0$*#T0zz(JnPrd7F*iZ)YLWf!uj((iYrgn7earscR&Qe#i9@vHGi zs`^=L`B_DLBffz}Z2zh&C34h-IZ{cg>V>)LN}V>^!o|@M0dY@{F~Tu<4I$w~jgvMe z#b}(2RiY9pq}WC#^}SEh#blhQq_&t8GLEE32YGfLqjWS*$65ZPQe#~umBDV6ZDTxY zu^m-e&8AgZEL_8&3?oPClv$>`J?gB0acb4a42h~oiE9fH)EZIU+Lst0Y&2tAyhE{+YuU4_mp({-ezx^!&c(}eVFXu58@%~r1+ zhNjN?u3;F4n=&a4VcU+)HBAb^gk{xyO-Rpz(52%xTfLPqG#bd%Z56R+5s=>!#zFhOs>U z?8Mwy4QsV<^~paai6?)~bFI@89AQDu+n4Y@MhXu$P8pJrZdT<1?!&6=!c+qvyN2U||^UJ1$GcY|F9rD_5oM*cM~r^4l?8 zd;6u&_m)@Vmd%*F{0`lo0>nT44?Kf+l668532YnjU?x(@J`^03=Mfq@rg^r38HiNo zoldi#ca~f~o~n|D5)<@1{)9OpVZ1!wSZP@eH^4o_2_-xAzH2Vqt-}OVz;#k7G#x>Fv~L!4!G+8fdZ;@)*A;4 z_mMGz4>HG5Xc*>PcWm3DOm>%l`YjICb2x6+91C)WkZ|C^t(&vy z0aVZ@nFj6SR-HPL_te+N`(D%d06jj|vb|^g z?8rXZ|5(?9kWn1Pqw#3$VSTbZ%PSShv4~MzX765A788}IB>o2jFfGS6-Zi9d_^mm! zF+Zp~PNEtOl{ilB)OeZY*oFa^-@dU6fO=!crOhqv_J3|BJys>nV-elD4P4GG`iV*; z+X+lmA@1%Pq-N^+iEi7r&6xPvUj)|O@_c`JWHTnDW81jLFkHfT=XJ?B@(3Zw@^O}@ zVyy^-6mbR+KjAdb^0G3e&I;pYRgA`?@y&wSXcwb#I$CGZKw192!w9RxvR4jQfwbS-|9bfx2$c&IMQsZP(M+c#Egi^#x7k*hqUmL~fke${6=f>Ur$iWbKABhUTNF5{GuOc*XIT%!%ZysKt-_S3Y4Eta?BOL=Kt1Np5+Sjb&~talG3ug zPk3uy+ua)sfWcsI_gZ>>tF^whvRX8G_eM{5WP58`miNs;;({YumiOIPmUg(iG?c7+ zFvIry{l_@WQ@UZe_qdxEa9>%{WAMoN8b88%(3nEun!+so!PPEQ8`>i5UjMjK7Dw2cxcTg z4i9xDd4vUOwbo)`=^pLXVVSnu!C+JlS8;q~&ZS(u{J_ zxm%9w<8$Z6+uP%F=f+0vl=4@63Zq(e419b}=~^jmgE~p&c|B z9-NnJ=htd2%$LX5b`f8=zYY1M5YEy`M=a(* zW*U#>)af3dTDrbZ`$;TFr65T)jq}|}47|8q5PrZr@iDFajSc%|8@{M_My?Cv!iC4= zaf(OIn}A{3j=6b&!&st;)pVz6x97U*k=;EipbMdu;W(xV7;CtBpCc^DIw3=ioH$R> zrq>6a4vTX0^XP**aZdv$9yLIYk)RTnd&H)=%j1>DI?;Q^llAP!DUMUywShoPE(N(N zL^%vdUgPKpLRqBHWbsBsbp5t^CKMH-G%lvP;;)2b}ca}6U-lQJbhQ-Nyr zG)Pk@JQcn{4HuaMPMp8Wqa*B$|0+~Q@?t7fhH2W4`H{1I%DMO@y6spNW%^fqDPB6o zo91HshXB`O0?m_V6hCuWV0j1A{!9^?7>k8io`(#OUY5 za?uJPQ`Il`INtQjE1*(mmwpGq&l$A!QA zS*(rOzDJ2JJe*(tVO^^eo!@ITNTH=vPTFkRjpOqyRU*dVeCGWHsgsT2Fp1-2INV5G z{0Z8f>1=<0Htn?W+Hn{s!|cqN>}vVCkj43;=yp2YqBwsCuG7(}8#hUYn-Hxjce3j| zRp#7J<5#7w=5Tn%=ZBPoIW*^rl2G$%{Nz~W&2ioOSnmB>*}K*st-~=z4qh_|o;Ghb+f2 zbijJ>Of?S={qeyqSxWPv^SkEdhnhQM_&it1$TOtoq4SW24!zPz*c&gJkOMQSKd{!Q zgRZTgf9k2Ho*JkGNYubbdB^t9d-t?_CA=wEP0yZRU!x}rBx*2F36BvSU_qYSGSD|u zYBWxKHQj{XMZvRKo~7C7A4W|`(;y#>uK=W&P&ujUIGU2OypoxGUWYS{JMA5cMysjn zt|Q#N>S|bTL>i}X2!w~la-;!7VdU)gZu5?FujlSnSFJd)9Vr;MEXRx@Q`2^Pc-U!0 zhH2DXNW=8}c4u{7Pi&@3Nde8a97kxJG6*TC?!F~8ZLX9JjhB4EjuebBPP<**^Ig5& zNN9W?j_Lq2$DyDBb0!uGcOhQh#iU64#p;mzRE|95C%QeyOwTn8fMi;o9*V7DLcJ4E zuCRmx^Svj&DLBF>;;bvmS_^_Z1IdKUa+XzP71_2ezVM4c@>yFLajY*it~vOa#x-a8 z3)pouu4%SyFONbX#F1^=S{*fdfPiHQREQM=_0|mj4*j7)Op}YXo!j zfWguE@i9_#5iF#pVOZhKI$?7P$9VhO4aYGpK>zBmHXg`F;6DA;UyYYpg>}F7Yb`)G z9LM^$Z=e44ulqXl@utjg|292pWcj!iX>UAU=56e=r#rT7GOB;rs|@;Koifw59sSlV zyvJlz*B#sbgZHb`%kKSuVB3zaQ)d3ykCD1kJkTP{XivpJc48hGy1o48&noA&m&cKz z+lW8QG|mK}zx;mhHe?WbxWh19LMX9Me-{6ZA0v#sg^+Nx3ym3?PShwi2lZ(>#`~E< z3KglSNQ%k6Hs~bU1YfZtUu!W_Ln8V62szI3tQwW$Nxq3dw~R8+^6B^sacDTM6LCB6 z!-jHzG>%0>Q2;o2W`cTiyV=xD->Yp(eWi7NtJz}ky+WE6EX#Ebz~r3idKODia0bV6 z{J`L#==H1W$`h9_c~Unx=37xvlV^J9CP~yv6N-2+7{CIhlmf6o6Xoj~r;V+xYzVfp z(q*-f!ZI}oP3k&@$tmr0!lo5R2Bk18r_soK&y!cGs@DhI-Fak|raFj0dZ#Be$AZ|z zCv8%aOXS()5%PTUVnS@TxQvJuv$Rqyo5rXiQnMm1hO^)X;v!K(rg2eL4Me-M zv9Wc-T?5wK8!y}1{Knm?*XazNt#!2eN^j+8`9HAVGM@vrT3Nm9|NsAG=g$NCdrv)} z`w}hM?x@6ayRqwH`I)bLmaB1`<(hZ)@v9g5ecQgDZfxNjv9)#k%qj(TfBP-`}PTrc_qw9nz%WH5l*+}horO!o0baXic>&6Q586*oPp zo3&bm!C=D1ql@$Lh!H|S$mubTaU4?(s}c`l8`%M7GOlK27fBmp8&Xxd6#4SZ*H#s) zSswq-J)Gar_#x-_{OVm)yP-kcbJwr_>RtB;Xg4%^*RSIFXF1=Ybcge^PrUKp&ps*W z4%MF0uzmK8Z#=sV?J14!Q1Rs1e}Cf>gb+4f7g!?+IZMbeOQ{afwF`zpKVa!B1o`snJFXDc^7n9jeFlH6mBhAX*>TeJUB}+}e&IM#;<&CG+mVUw%maq?nvlYAo~)ocx?d6pu)`I#J~gESLkOGR-M z1F%G*l4?>+3V(z(>5S=YIxF)mmjfThGgwy$A}NZ5UhgHONUMJMjG(rRV47zsi=;?J zI!FikAkSvmY&x4()2b}WVp2?K!%~tsiX(ZFy0&Wedhq<@rjfYyMkF*%#PzzH7@94; zLD0@^<;_MMnTEz|wR&CE9k*T|JZNj0Vb~U+3H|ZqB63~Vjc|DUXavob+-)|SO*da@ z0yz)w|DxAxD%(vH-&=3MO-1!a!`{ChKOUcPow};mYc;MJW)wFD_4<2Z*@n(FM+)(A z*Nqx%`g?Gbw`*QVI>&rp(>3UE9_JX_~YrrD-TViDVqN zw^`zQ9;LNfcNj(%JTEXc&STrMD66YUWSYKZ`U%%?1G+19YPxuY0WeK{d3TqU<+W>N z#RrDo1su@rG<7It%oLj&J3D92uql3k*Er{_6G_ofbFLXHxfH!_kNufz8J^c#O%i6? zbQ6XFDMW1Pwv!B3Rx~h*UB*F8L;KpO&Mn(yoDgCXLO|zuGug8gghX-HujG{Egba&W zI*W@LD`u%y%u@9~FE3`PEN1Dfn5Focn{SEb`I|T2fAi)CzWLtw=FMNZ{(@`Qmj8PF zJFh?JmG^>#P|`g8Mf@Fph%hoCq#BRLnyz}OdvG_pDyEb0=#w8+G=KX6W{AuLtz|vrAX5WE%$ulQGBMpZb?}t9F~s=Z}t7ha4JL z$#kU_y3MoOSF6!>l9;A?Nn7gm`oWY4LdXFQZG=>DAtc$+S&hr8 zEJ{_idqSvf4R)GaeOb;}0T0lph>O`Ymm(F0zg0|BBoR^Dte8}j*?u1@1s!{tqY@R# zN~U?LWKq3zmj_-P`@R%H`hKi}PJ6xEXt+t@HX7ZHRtFRVuQ>=}J9JFbjT^4#x^dk@ z;)RxP>bhxok!62gpbqMJ-3QwFwRm& zzI-+hSzb-wcN;d%cYH*HZDi>_4B9?_kfuIcETgfIAF4+2Ocz3?FMUU;97xecBuB9| z9U$@`;;4%xmO>?6MDh1$E7WA1C{w*u93W9L3P!QI4<>4|*t5X_CTcWRNijJoyz;*GL zH1U!Hhd$C1lrqtrncUX6bU|H*egp^1GyvT&pAIxGbqk(t0fuQhmd$@*<3gQlg16TD z{kX=h6bPA=`X}JR0bCb9XK>EB;R5c@yNm^Wvy?q8Z&;uG=F@F6-T(ypTv2xa9AZz; zfmoNGC#85U?+d7t2DMZ$25FeIWJo!$X?kGlh5^%TxsJZ> zq49I&H&!{f49*`gm1*iQ9H$oAj?gLFwi}!`^tu|Z*~0gIW_Uuw|4T3qxF6P~E^o#t zSN_zswg?#x@;IU*NgwNYrzlBwy!b(}&*LGhaD1g|uZ+f{QQ8+;y|KAf)RV+>T~8%- z<+_hhYoojRZ~6C3*Vn_qw)1>4KD(t7@tD+Q6xCH6N?q5(uz@Ent7u0cgisP23@wR8 z$T05DinutBG%j$woPXsve&aX(@uxq1^XAXri~%0Ipv<$p8l=L5DUBv7iN*HcmWN118*$tTaC;iX2mhW@0Q?`5 zFx1`P+=YwtdM%E_n$)$mRucfjw{b9G8sSSBr!a(R)+Q97yokfl;GoYiXjomH9WhEN zXVi7$0R?b*&}}p?I^gWJXg78pFiI(B@Z8v-01JXLT?GNr2*Hoy zh-8GIAE`toN>sYq)9n?@Xgb59JHB7$_|fIF9Vh6ouXj51!JVj9Gnb#$hmX2(+^9Dj zal|?96~NJ5J3GC3nz|l(&uV7b=1w=Rg_hZ<=V!WIy0J+J;e?!?P=W>VNsr9PZGN&X z9mFz>bluabRCs_87xHZX{V(h@~w6e}6U$v!3rn9gK6h^0_b)^KH>rQk;ZJ^BIw zcpAuo%fPFEOGBogzIUHKygTo{L|*~WOTa4t;HUl^_*bY206z@?fBNSD@MnJpoQ!qw zlK{TCS6=sYsZT%>vPuYoN&LuNObhcY)l`+s{wV8Wb@H?^@3lLLvTfT|NvGXg9xoP) z1x~VlfJ@tFfy3poTtBl|EEbE~#xTd(?MwS4=E~C(d8*hyLkx z%iqJ+8~*-R|K;_sdr|LKcc1*tfBBQ&_%-B&fH4gz_?4bg+yy9lF=`72Io8<%9#&-+wi~S(5tWJ0H+Qo}24rLDKR$X-mlqQ2NrIzDx zN=-vIP2YDtjWR0;T#M1jw=E$6Na0JvtA%l7JD#N6v27csX-WRPcDFm++}!LB+^F5T zZ8ht*EGz4D!^AK^13;6y;5=?NF>2_Zxygm>s`5k)r1oZLakkO{<^Z*QI^mlOqwN)&4p3$i@RLt@w)tjeCS zKT%063t122y}gF(xNiNUiS_?@`B(kA0#v<^&hr@@)WYWSubN@47Bo~T;CjAF3N`RB%cRINDcW#=OuUdi06Y3jSXpJckcp~< zOjKEAxhlOXZ%y+om*0+!R8mYj5A)*3KhWRKD6>Idf4in7n)ZB6OBm&hy$<*QWzUA@ zxs1|hQ)WPW0i}$-fP)&tn9?|=G@eiVkPdcBY0N*bzA!1wA74~G7AS2vg@ zn9bN86|WW40cHHb%Xk+yZV6}{p!C)Th0)a59rVebb%QGkT_dw~CAqBqeHl$pg z^6p#KyY>@(>Z$zG-^7358PX)1iLp` z!oc;;_V&(b<4o_T2Yo|x|5MO&=O4#2>*6-ff#vf$TU)b!w`NfYDFl~y>5MVWb*W)c z*VPzfIuAD*%`jRWE`Q`Rk_#aPsMTvUo;ZJj6McPYFQ!LO#3OxDklV;3z`L=}@)?(LHcih&&>cxkLgb&3>%FJ8FJ9cnJ%4)r`kyX8 z@Yc8DC7B|JBjgTxgqM;w$;pJ=OP)twLB5Xs1|iiz&Y0GWI733>fZJ=OGRtRWl_(** zEp+nUjGgMn&4sK#8U4T^!I#s5*p(&6i5d=ekMI@3LoEywiYSQ~11FE#D4EzL9m)6}+T91RBDUK~YnuR9n- zF@0Ix^L?+beBbv~0N)3EA6+U!;_YO)WP z!iFPWSZSm2Xq*ZUg)FLcn5Cm}I*@D>M`|=K$|{_WSt>jX@HKxlUhDiUAB~ZUW!1NM zmX5|+Ro-u=!h=-8Muqb+^1q_M`%EEtOE%uesRfSr4Vo>pW%#u=#rrf^_X2cXLsGnC z+AXjNwyx2~`MQQDeso=PT|N39L$$8qiTP!NEk9`j>%E#Jts<=27%9G{2fZ$exDsn@-uBc|a0BL2R0@O4&J`%=L|e$R1hzaUauOh52e1<+0=E7 zZ}gR}8NHpe*+A2}gK{%#SWGMz6cY3)2+&t=PhXtAIRy;eGzF(ov|*Ud#@2<6o=(w<+LpPc%T{w^y0&SW zO@D<$g8`~jv|#``Z2?rLRIdS))h$aiwrYW|TTZkFfDne4WS`=g_@qy6Bcv)7SL9Uo zDJBP0Y$Mx1P0mUO9`Z>Si7HR_-YSVB4=EPx%T$l|5?%b4Y2BH0z30^JVcl-+ezhac z1e$s#?5g+Iy4~7+RyRER{=hz?Tc&>23WpnExG@Z^v$|zzXY8Q2F2s88BZ_i1fcwJm z{_xC=vV1nYPl)@%vuCWcDu8;{TCa7xwRP*Prk$~1z1Hp4))7Jk@dl$qB%^?D6J&Yd z@DSvo^w-acg^(ZQ*>C;b?0_sUSM_RniG1o#aj2G;$?V|o;P9Xv4DcZy3`#s0l(VT- z2S|gV1O4SL7Gw?uoREFu$O4JQnYBjl>%MUuzj-(w58r(M5ktKZMfG~U9z~5>4T1$u z5XWzRSFN^?XbA?cWd=px6!aHz~dkYQ^)Q6+ZZ5@iqY7#k_A5qUUwp$gKqbxLen^FHk;@0I7^ceF1)hJNEdb>;~J#HD(6*NiIB4qRFWV` zRd#{Hg3jJR7Ky6rCypDcN*2i*nEuw+bNThJSEM(9diRYV>n(nAo=B99+}V8ZV^m_w z2NvKEwAn9%`W-ss#Iguy`gf=RQw?T6p1$%GX&rWFhm8m3|MQ9a7S1wCvDka-li(># zBA4z(2qA{h(IFhcAv%j*iGB<;ScJ0(iI6kSQsD9=)kI9Pi3syh_-$Y^AQa&R;xo}r zvf4GePOu2Jj@oe8(OJeVO<`J@ZdlR0rRf}j-Po5Bt zvYOGJ=%@WN3vZY+|Azykv*s}n{xm)hL zZ*O;B>-eF@4&toTF&^z``6EgtLP+C^w7GTLZKon3RG{!Y3}L^YB)ura5}`mbsU_*+ zVw%)Gu$~QOGXQ{~9}Sa!6r7O|fWU!h{Fr)@*3O59)0j;FUJ)E$zu|`c{ke39HV+s- z(7-^kB#{vzBO*zd0&d(UZEjz_?bJ#CbjTAqs{hGi4CDl*5}|av(I2)5l_&uq@%S>1 zvvEv-oFoz@K*&y`KWGz)QmU%Xe2JNBQBbs%q-Euck`hHI7|%Fc(t&FM$)YsmjA!Iju7nV8dnj0%{S6>X9dNVl)M}1> z@9Ciyv6m6wi=u^v(P&|@A9+4`8H?hTm3a1F5cmXw0K*HgA7C8#_~p$wZZ=q0Hx1u6 zje5u$f7|a9Syog<;WCu~6U>-w`%TUqw-0yp9hdQ@Z#$Bts-Ek}q~C`h@-g-UjDx?g zIkxTW(pKErU0GR}@AVwVaeBS^g_V_V2cYvC0l|KN!G{2j!>)ux{c%--5;7$<5^vV@ znxGi=LH22Ll52@5>UMO!(~Tlwd8+Fv_2vxZg7y0dHlY-dE zgCxnFxQK(;nOii-10Dx?ac}RS*XzNxgI=%KJM5JVvD@qI?j9bYYrS6Y-fMt*y&m*t z2fZFF8SL)v@)Pd@j=lju2_Hv3x`Yr=&Qgf7jR}p&&2*^sIO4FvF=A2`<>6Q>YMAdpMiH18Lt>$c z*)@pCo?Aj5_8}N!=)AH$V!VD~j0u5dP`Dhzenligp*#`FTmiVY8ssYqe)1{W*Y3gO zuDi&JiqNN^(QG*RJO&K&xzlJiq}NrWZrzhrbPU~yox%n%Sd?)TN*2}Es!JtNrEknFheJjv8pppK{j*+02m>bHy935LJR=zf)_MHA!E>3 zkNDj7>@$Q=ObErGQ-UcWnEVwcK*%M>AwARJiXwNqwvDfVL?lclOt7R<001G(NHJgu ztTDi7~PwJgzvV3AhIIKG#P;}o9nzg!$Dfyw_xgc#ZT_cjAk@s=i399WqYBGkwbw(oq(Og(e2w{wA zrswL8txO-$-1{gdlwd+$jfsRYC1j2OA-Jb&py_%|=!T{nddHGfl>(NyEWx}z_JvVO z2qi#?E^6OHxQ3<(RicAJ?9o&Zk6)#?UO(lI8WItgKke)->)bFx$23ga_uKUj^m?P& zXBTcx2)B%SJy`1WTkSZqKP+0dBg>kpX#m#txZ8u(*9dyOQN9F}m|N-lJIF%8(II>e z4v`JN0>2Oc0{@FS?%+ARgg5X>dRG`*K)X%doQ zITK+q&ZZ(1lQrfCp-9p-NO&k%mIOW?e$UIC@r;Qi9k1bOkrYgfgOHa+!hJr@SdbPr z({UE%U7BKPHYJ=ir`b4zvfPRAC1RY3F&m@3EJ6`h;^+dOGxc`nq*#Npnq*}<&M@3T zr&Y$MS(HVApO5o#kp(PB(r};H8RxPzNxd*A<4HEj1xwSb+=pc~2{_}^c$`JWv|`*} z1IGOwC@Y?%S(1kp<0ObH^3)BRPO~K4f$|R3hB4WZ|1QT-V_|Nakxz#JS7Ct%WPK2dkiz_5^{uU}T`sE()`fgkm5eG`xp# z&d1<7ICoWA07>RKj+`?vErnqu31Cb~b@4Xd3j#@uTNOrW8b&%SiahsR0%&JvhKMss zf^nm@OOybZ2Jltmbm1gW)^!z&tE$uLcuYt)1MrefZ!1WVW~9LwG&mg?A*5@W*kSAr z!5PUjxcNLnYPy)YT7G(b~H!xXdOf?(?7C(d&2-@EH%mgv! zg1AOe1n`V!v>_nRbL$hpS;QGQkClm;CV*RG2@Kps5K=;LMp6r|l>j&({d%_9T#CX% zvd$Ecj1jDcvc^CQ?i!;Q6P)1V!Y>RM6Nx(2p!2KTmC}1Mj$Uvi49$J=yWiG)60REc9Fi4<=x=IMv2n7ja z2{S&2F|J@+t^>^eQDqY6G7!R4N#a*VDah>8J-vcP15se*AXo6N7lr{S~c z7W4o@!w9kPWAtL)8oeecM%oRJOQqRM5@}h<5Og;Q-U-iC$E<&_E5xe3q>BvB00z9| z>XgR$o$y$d0c6!<@c3%Wm{-H4%a<2ZfOPTljcJV#Sq+)j7!6uo0`HbD2Grxe(W@nF3E z=_5pp*Pk@cCIHWt_u5F~ogujc8;#Kjk7oyUPoXfMrzvyTRAtKs3 zHRu8Kh9^%AJ-Nxv_WD|@*=((4O^aa0ENVF2nipVjolf9luKD2E!cSmV!uYhQ>BO)l z8p;ZQrkMcOHnGTNA6&m>HM~Zn9>dD~>C^M07184jHwK8K?d|>mTDI#LrqZ-S47ydX z*%k(3DH>qkZUa6Ea9mM41j~wIFcv#-ub*2JA>m8Dz9vds#3_%fG#6FQ(^%xYr{gsm z<{y2zB^iS}Y@J^&7 z2O-Ee_$GtoB=+FxQy>1~+n@ZlQ{VgPcRln}eeVAkj^Lf2{ik=m>qr0W>8EFJg>$pd z>+X&&KxdA|WWGv%l1}nT6{SfUR!N#{!N~3w!d7NiiYms-%3?Z*?2w;ibc1kyVRLOs zmPb)&JIu5~%Q75OmO-w^(Y)k&y|ybnIq+T6I~|X^?_XY6Y_$MdEkpM)kzA(^GANem zxK_t?NgN6QU($quW#6RKzFjf$;M+H#h>N^HmFuAxhwmpvkTb!cB^!r#DyIf|%gzqe z>x+S7LsuvYoY2vsj8*4nbVxy4Gvup$K^Z*RpxY{b=@=d;1Y?@SwLHRRhpe2O4|8 zqup2Tpw(V_F+vC_2pwHNrp6QKCA_pR;fK+8qfa6PoI6V*wWga8|Iw>}UQtitC;@9- zghJ}A2M9LiRdXO@y;DPvr z@s~6FN$x@rb`Th*|4JP|ZHo|t4H%ei+t?36AKSLh0Am}%u+52VnL1Zw&?v>SB&qVS zCX6#LjcCWm>2hq7{Sm@2q*%$8-T*QmxecX-1$w- zOxi9LdH!)b;GP$gF@Th048@+ugZ8oKlZ<%cG6pV$F~~t-q?k_j4^HnqIs%T4?mRu% zPtM4m!HyaBL)!DHvody%2IQQZ+;gaBM0wuP8|nDzL@tFezD5u5frPX z^0ToiO2pHY5xP`wv2FPGs3y1Fc*WCqdH#K;JDrX-HuR@uiM(^j5Y(s54MKl#crw@- z`r~207-Cn+yKBIwtPG%Bfe7;Ze(j#&+0Y15Od%MyCqgnd&tX=9U|P`hKs1ST&uH*YFVmg zcYY_h1Q!@W7w5IWp@0w&H{N*r?S$jw2NF=6WSQ35BdKEezMJHQ$GyYxn56KC$Rw>c z4aTFP??sVkh?u7oqPWxPM?iA_@ewedoL;!|tB5foM$BalV2sAZI0NJ45ixdZ#T|bFqwfe7!5ByhKJ8N4$_I4>Ui0+To-2%{7+e)5)wCm z5A$pYpx%x37UdKrZov<-|E;y=ObVzlOfOUwXn+64i}v;dzf`Dkr({Zset&b^>j6bR zNlxISm83}m#f7qM&n0e=#~ZZv<4jD?$K&6^u1H}D(EN~gjH-TCgm*8qo~}3^@B@`rR>#u=A2p`OODMwvxKfjb&INM z)~n5mT^u%5UiFfB7qh?atw!^>3ClvPD0O zUhiNvZS9Uvh;uq-g`qc5=CIqrBP$r7?~vm=4!ylT1P5qUpiaA0?1Dqt$wyJn_Y^tX9?P>gpew?!|lxnT7_! zWypgr^udMQGc&$Cme8ix&r?lYnp)d-s$pH_rw=1dif^8|s< zLkmVvG9c1zPjWaQP=R8ly*bZ+Sdo2Ck!8j6Wd#!K`SD<3J|URWWN~pg^aGgZgz~6f zuP-gnr}cWh&ncDXU>96(5QdC}LWE2TMeKP(MA2Y8h~iMd1y4~F#q$(JQM{Kru8Xnj zI*#W8xSo?wmWQ?-b0~q>_HcQ!o7L*JrkS$rtBTKMQ`79anC#|Jtrnwy9S{N(pjL|( z!;s4WG7rPW3S7@wKXUdKmN0@>q5z>`T$O3E2qgAm5_>55eQN>y%6(HJ%XYST-^PW_ z`!<*1sjcBaA4~sgtIF(eAe{XTg!jVI%H}uxu?OD)TtgD7A=Cs>d3`AsxdmA~g1iem z5T`ju@y9+E&kkVvob(yvet3Y5Nm;P(*Z*09YqO`OQ+V4!_P%EGOk!Ev?;fN6v&eP0 zhHQj@@U+Ug*nxg^yY+B=_ZvUypO>F{qc?ljhO^r2^A3CfuFc+g%PsfJFD>17zBrE% zLG~l*^R%x}(hVGS#x0hC^xHFbP)GK$6s5*TI?ZW?RXS6VHo3P9?Wi zb3FjhtJNKeNGxczgAhQ3t#%;MU-7pWT$kQ_7S7!aFa<)K-_r?(_2c{d$8i{}u810c zJ^;q5R{dABqBsdu~sjxT!((dpI%U{ULI z#ZY@W18pd}otnTPYTb_b`gh-YzK-c{8xM4vpT%UTS+O0M#A#CHlP**|6CsbI5$y4U zYy(36-MHp7W%ZarPXH`Q<}r;g|KU6Dl#F9KyNaFuRj%$C^dHD#JJYfLiZePk&VJAT zf4`3PA0+LK@6oZ25F!X2UH5;FCP8as(Oig=9T;c(gWN7l?9(#FpC==;|65T=)}`u- zEcNhMlK=3LJ)(?cX^(8WLgFKZ3_bVaIw-f53Mdu1q2w4!P6?O1gQj1cOb0<7d!>|4L3#L%%zJLFI~KN@#5^SE?v5K@mnrlEYp{+ z$G3+ZU58g|1(O!?P!pkHnnLIt6FlXDa8dC%$VI=1gMJZ1{4?^;Y<#%>A?Zu@7kj;z z_U`}cSJT;F&%q;eZ<$Z$UvtnsP%aHGf?m5;`+>Q+mtDJt5Rwo&vY+;KP>jat3VJu% z)Ah4AFa$VW%~XshDG#Pt7p7?vCvg-3c}6j%BWEGKVw6wDgCA!O$z` zhJY~))5;qT21CD0hX7-v<3~|T;aq7&{h(vGuCv_e1pPVh9r-~0Z^R+r_N}sBAAbDv z^m;)6KV8STuF0IsTB}Nj06Sp^e#!6U006_Z@&|*#(EsK(4*|Y|`;Tljo%qzx(ko4h z{pY32Xd-=%T8<0gI<4mY!!|!&xSSU90>25a(_BH<3W~+T+>nty)oG6^>lsMJ27yN z(}WP-W$>s0%wusfR#H&G`N*>dXthS;?)&WRu81e&aRl>rm`4mgx8u4V1LSor9fus} zg?e&OH>`O@LOM*d+0kFTK2}8^+0ymp$;cxrii##pF%VFF*8|LHLE7-kCi1mn6jHU zAACnaROF21=l?rrEH8)(By&bgO18Lk?b@XUladjeU!B#8uBm!<^(&|-=>MW${-_W_ zytvzau@FK$T3xz$-+dP^RXXJ87Jd}BuDLYWmpI?){Jir~XuKX@h97sFG+QmOzM}KR zOil7)wOpxXvzRx_#d5Q)W^924#VVcEi}j*Q0NmuxhX?A@<@pqFia8#pq>`0;aYSCI zTyd-r!Llq8SV&Q8+iYtVzY5i?p8oZ>P z(#tWFnC5!gS%bX6)0vqyi*2o~SO0_j3I;i1BRD!;kuA7eI5M@9D~n@bB@c^oSt|6e zT&&31gBouTyWteN_0nvwb;2Z6e1%WXpCFi6hi9IbPgaBhgLX!3v3j)RzL8Wde zq)-9pi4-=LTna9HBFTB#Y8ORYamg6t!V+o4IpfmxY$jc+6iMv~=DNO*OmNP%R>Idp zgzy=+))Hf!6Uz$5BoCExtrbdfA&u)=#jUkMaNoL&0iqjOmtxKV(H;!@AeQGzQ52q# zL;_&k0*Q5933x^kREQTGFm97LFj8>>2qc9UM@BG!7{?s|2sGOT4}7Te|D-(lh5+nO z%QOuT#&JQc-S6iYYAUnSEj%?I#qCbN+Yw4IL13PgQUb2dT}uGzNbm?i{=40rwTU{B z=3IGhg0m=UMc@EgZJ?Cpa9!8ffS8hstd)TD(}d0#3BWQ~MqtACBymGbaHg~t=Re$L zup0-uPH zu&r({)^S`=uhlZjL}8jF!e~G66j7+NsPrNvoF|^Aby^bTajInKmr*DSMN%kI%J*!n z&|};HMo0ky0fK3Q;S3-^I*xMm3%`bs<3mozshy2;oAZeCtn(Jffy8OqK-qMOjth~A zP*b%waLktFMU^^?olvbeMT2L<)1~MNHX5%rV-^pD#dc7Ree*7-Z$Bn=aL{ObvEO4Y z>U2-LWhqz7W&QV}EW7tNjj_Yw(I?xhS06F@;(XrO&?E7|!S%wrw7zgU|2VA4SJSCd zt=0}cWNel8w$uAb2$>a~PFuBPt5wXaiSm4}8q3LKo^p=mtj>QSmh^Zik|f^UJ-YbV zcU9AAdFkLFETozmcW>{aQj#4`ciOg!8KDL6d8-p}kwHFx*^KKd#ivw13Bl-t zULQ1`>>iBA1f|2+YU`%Ei#on(({a= z$QTW3ds1)^=_oolOp`Ed`_{l$Qlj*Qlpq<$v%@_1#~1z_-in`dcAR^W*(-CezzgDP zzSx$_1$+=KH_f&d8sf@^-sCMKPwP6z&h69l#X5&bx(!#T^J|;!m0N5d zKqa)?m;;K*Df_?|oPV$tg+Lg!@X*wm{X1$u>S_fj?LO)${fk<84;SV>>?w`s5k@T* zMt9%!9jkcnD2&1g=Re?7p7Pw)T5I?Gt)9|adGB4LelKo9|7Nn|EI1O&=plMkAdab7 zUQA`7GWGE`{#x?wpZJLyXyr-b`bpy3G|5Zow)$%F*I)N_wkQ%$3O|7F3+W|AVR;-M zHg)c-mAS#BFxlF+HnsFD9idfagR`5J`pjD)=4fR)Z)^Uri0{3Oi}K*$zU01xgR=0A z=Fy6ZyfrVgOwVN;w|iNpH!9D2@`1g5!e>5Ot!}8-UmFa>XWq;5yx(uvhijHuuXUTQ zOZOqmZqE^NIsixTapa&WI*IN=FF>zCPv^Avcu0Q^OOuL35nZp0b4K~3nq*UA)p?Z! z)D>L)ASKLxq}|8pW;0DVvG{0a!KkunLT;5u`c*P{DNo@8lCHZBA$BTiDmP7XSY}zb z3;4!-d07YpOA>+YICiPNFG*Y5kGzwutn3||nkqCGwtyTAlHJe{rE+`#xGwxb0wO+uiQKW0IRME{d8u`-P5S zsA{9$Y8r;D)N7p%r9=&NN~jv@2IdMSvf{`21dXH7vq(qvE2PM{2tmsVkEMYpz)uTs z>74yK%+2quV!XC?$NaHkvDel0UU#Y3`-#2zIk;nO4dYc17mw}r_pjc)zi)qZ_Bm*` z(z)??E^W2pw*KC+iyyW3_wT;Cj}Rbq^hj5QtFcN5r&7bm2R?3dM0f|6>G z$QNN4!nb_#5fU+JR^ZE>Qoupb?RL9?58d%-L)Wvp`DW1Wv^!xr7=(dhaS}y?Sl)>G zrU3w0gqqgf)O1zBU|XHeiWEitKH&z`YH7OsripD+sw%KOhygSeL%W?T0KQj-O!7Q; zun6G$8-ee)n#A;63}HANu81V*bTQU78T-Czna9Eq@cfXt9_JB42vOu79m1#K5Lw7a zb(A1f^#h-?Mc_porO6iV7yY2<7yV$^XPmX6pB^XIg^zk}%e(EfE!TsO&K~?fxO4Uw zMXx8G+j=T&d;T4F_+C2{moB~F(xsmV&ufQa+w*e$9gUCHBaPjzRW0JUP_=B6wYBroTTn5!IBzlz zCJ_#GCD334#8oLI2kJDBi#Qg?q!}3GG{0h0&FAwb^CIfl)W!6^)r)YqY52Zj02qcp zsuj%j4Rhoh<|5u`x#~+MdVlNz*Wsi8a(sH-%igORVtq{RbBLoG(0Oz>dO3P8LQR@) zy{x3l1YvY7pEP?txzJz6IGYHcGcGFO5(s{a&5X*btgO63iDU#-7=%`oL6QX>n1h#x zj}zXI!lvGd-+rj<^#NQsPb>fjtEvqE8<$pBMs1n7u7_oiNpN=5_lXP&c&_WZ9w;D_ z;7kZ$z}t4)-C+c9?8^Yov2nWvP~U=n-ypbn4SLdM2L=58$Y z6CRpZKBcXHfm=SX-r%J01;he7o*vGG|u3=mh7po`&NQN87Kll1! zXYS-AR_vZKH@8;KrP`v}Y!1^_ONNX6*}*fdz~zfd$GZ<9f~=$K@UL(Uapa>KLLN_J z!E;YA&VU~7r!$k`R_}d0z55wGv5iJ6j=^zidsiR53i&(U@!xmAg*W3UZZ!-$ zsX5NSf8!f@bUyj3@K^BMfrjVB1W(Qds(9cqaXau=c=y;7!@bwVL&x?<>+4I41TQWf z%Q_v)B+vXE{o&{D?cq^gHr_e5K*{{V$^E4zY|7l*yX@8wlCFh7MlqJ$?#B?S)Po1d z&RNJ^ZY5O(jHgf~Kob`^jDH9S4i|6*a|OpULG_D%QD7{TiYr#eq+Rn5)E-)4XgJDXSNlnEp%NiCVG$A%3TzAOZ=)tk z&<1)wLc_3Q@~g6$&_WvtpLf5glHb0dvP#k_<`r?U9pf_xN#$(-mo<6kt*tHZNjNBnn$>2k zj`7^w=GNRC0I4(9ewa$GD^W^KlhU$|alM9Rt~GI8<1((*@mJhle~Uh&HtCbbbrAc^i)en42camdo^MtJ zJT2N@tmBL7`wN--fnR7z#%*k;JA-ww9e^P0cEbQ7f$bky`r;H3I5w=SK-xYJ_Vaqa zjj?@Y#RjmSNS?kh=n7R0Y4F}IctS50OuE+4SrG0B)NV=NO$m6Bv^_FfAPKWh<6v`EJEjU%`hF{Js=M-fWVl1v_pgS?2_ zUh`&{-ANZY1Zx2=*l|IX2XT?+L0klR5EtjqKb?2GFn|91(@&r8cK`1D`KO=GyWLk# zr_(9;pZVW2Z@hZ-jh|`F|Jxg{UY&2v|J!HYc=hUw^Zd+bK7%BLj;@arGfmV&8QMp; zBjkBh`B4fXxF--14}3Zg9Jd@=!eHV!xNjU(MVO0enkA_l2?`6ARayLsq8J+InxQC# z#+YU(2xixB{J5#s{P%hMgzNWQXL+jI-w^~|Nn%FWnHp9v2*9y573guQY4$!nPC-*` zN7cT|_5FVR41}T|i4c@uRdcD{7xJ(`8kY2pb|p}h6UWhxdf^sbz%55Pg>#2) zpE)0OKIS-4Q)Za2sa6&(fMzOEf4)d`#%>Csl(bDuR2x_`tukH&D&Ls9ZMCt@n5KX0 zP!m)1g$dgmGk4ZM8U?y`_Xlr?u&3yV_jghtTzyt|NZXo4zM=lZPVc?Gz z7gQ{mlp+}%QSsaHS_Sl21 zVssag2$BS7g~t62Mu4~_r9QG5@gR-?mj%I*B?_q}fbwN&&XnxMNo$f7o)l8H0~vW> zKMdgfvyZ9@PHwA06_`{>@P00Z@W8njr#E+sJ-k()$uLYNJ^5|4Gdoqn&|>FzET zw>^4#%D3A`xVUYx*!@e_CveUF&t){dm$M7U$h8eFF!0r%cb{ z6yO4}8z*TD+BujWXK8(^{$%dVdD!`6=eyW95PZ#)qs^&28)A5h#|6!-o^6JhM~71= zp3PLbtufjg6D0@N$k0Ug5%TCNU?MxIVcb+_+FIAM6KX?5&#-4RYih~S!7dvoCFk*S z0dd?eqnIy`52G-&*1r01=KF#v8D>(d%=bU@P~}BYNH+{!i{S7mE`uwffq2yPXn|5NURF`05vvD3sE<@1q(vh$FT+s(nu~rF?gn&6BkV zpMIY2=TfTFw1+TBVzxcVSu}`-cj3jzLQOP83+Ony5usdImd7c?+p6gZ@-pRSd=Ux} z7kP`@77ybh4?4TlWoF`LTj#lHo)$t8|J4|J{n7V-axxg=V;{aDv~0r&ZoY8gQi;K~ z>+r}s-?`fBZEXxV?0# z9~TWx{pUFT?D|}aAxSp221B^bkrlklc(=f~KnNj@kRGT2M=q+NWi&y1=x&56mcADF zbH^7U$S0L>zgmW55YLM^;L{WvM}W{DwB! zA+5K#WWCk=?74G`aRVH;e&^Mu@52Wix8L(T0N3kJ?1(6e62U_sY2qog&KnY476RIB z_;83@DUW&H3sPNewp8`dFxzG?3;_I~*Y|uFDO7?8FiFQMwSz<%I*sm-oO+p}MD?xX zMHPR9!Hnjy!Ac&TkWy9OWSVeai}AElaw+B5L|hD!lwY}uWy!wn*si!o^1MdJ_b>8y z*{IP>=b8=JsQFK;CyqZf!r#Q~lU>CPd{0qi#rM6Q#UzParuFG&P=ePCPH^;1Gp1o0 ze(Y90&L%gfHQNq??q;(wKi7bST{s7q!Km)v-4)u)InZ6M$a3KOz9P#8vrNlkjJ?iv znhn==-A2=Kt^KRx+=O93yXlGgY^%yNOGc<`bnwt=ZE4SHc1$2jAuhEs&SD;l8aFk9 zK*xHxB=rzPeWGDiKKcWHg)zzOxSlJ^vh2B@E4NLC@-InqvdlPOU!u4np124MX=_L)Q)WPRlTv&bi`xp2uaGJ33>M2`9iX z{qGzb_*NL!YXG(SFsav9JDvw%T4MOE!`ilQfMeI|z|p6u*KG$Z&~?w#b@;LpouBg? zC_`t_!!%mm8wOejJ1|YEzuvHwZ%3@Im;)|`n zBWLfSO^NCNU|QIuQkNPg>=9@wiURj6V}x){W|EY1`Y#w$j5`&RWlCu?@X-PeA6|e7AwZsFJ03;? z30`KKEKRDGkU{?aC=3C@Fq-|Y!M_OSlmaUmr64h&6j-yA^E>45*a=Ec93uc^S$gaQ z1)wJ$lWNlIj!V+<*Gc!1I3^^HNeFmtmEg5C3>rDUN66lBg2~C_lpa4xo`jouX{PYG zUQd>HKQCbm08989*3=Qf1QWv7zgxnBz3sRp9e*3!23ExbP%-~+8ABLG{ZPOr@V6Y} z0Q}fnILN@>wa)<9{<|1Z{>(lDVEfN-gb)IRj{Y1D;3H^)&@f;zZHpLPv*~CvXf2)Iz;6(uqbW zM+nl)EW_+Txdqb^2%Z*kz|)EgUWl|3K^07}VNnTQrBwj`@i)5uH>x@{*!54Iy=Up3 zv!DF&s`~Lyp1mhLckbM|u*~wq@(c$pM zzj#r;^T;#P>2&(cZ`yCOC4}%g9H23}ioQGNkduU5R9Qj7nZd+k;A;(J6Mz2LPdRj{@s%DM|Xt0-eQ*D4J?ainQcbk|*TowlM_b`-RhHn-|ElFp@bWWQyqO53D7iV}<^N~K_KGMx?w z1hhp}Yu_$;ZoTf=fo)rQw_THYz1Ad{QZ6yc3<41v2H+^}B{dOxo~Ij{CTap>LKQ+u zFR$qu{Y}D|5CcF>q{DvS|5ywF0GqvD&*%1>5I$fc z&xH*|Nz)xo3KtfVTWXdC;8>w!SxVRtjfSQNgit~WQG6~l?zxRP@WXDqVd;|OHNuc_ zA7e@+Ns^WwB?ub`0n(4Y3jYevp~n%Dk~B-wEUC(>tftu{V4QI#+*TUnth}uJBu;f} zgE6F+uE0qtxaqO)F=J;rtkcCpLcuwGWI@IOPF1VDF5ph50v3jnv{KLa`84GM<}xUb zi`$;At12ulnUsQN+0YJj!yv?WeBZJXDj9}l0mT^R1_KIv`_Es6C|+ATxjCH<0O(*a z$tMC71vlDlKLAhFda7xH@Lb3z!t=1JsnAnQ3ya~f6JSsk7$j*F2O)*}%JP*bj~~Yf zAqAmvZoY}SXa#MdGw2cYI`kfN$Rh^s3!0C!5*4YEbXui;fI%oKw?4}gsWej*QCbmE zR%w~*h&n}CLCUybKms}qtXY=L23i9ry0Uu=lacaJ@GxLp>=!wiaHwXLq}5YHN?6PI z5#xa`cql3ix(BGNQs_C(#(3PZ70sR7mi|^Kpb9424SFDTu)ZD|(=b#-9UM~7~&DE9V>f(w~5zfWq*OsJq7^Q?TiZs)GDO905O;^ubU zFig`h>ekd%b_v;4+^JQ5|G-;`M_R41VjA{}QJei6Z*{vZ?wD$}zMd(T^DV}TZJ5fa z-69^T!J4&f)HZ9g^x41ID@89td!(4go1QlZR!jWheDis#=^S(@+fqgw>)Gcecgb%E zP1p6X;V-$;J|X+%6``){nm8T<;C*>AZleYop;Zqi?-@29I?LGficOQW+yNG3Oq9hm z9Xct=;9eibkp(b|i29ELCRhNQhwDz%8wHcJ5^1yrF%R>Q2VorXAg_>53Qe;jFXC~= zifIuu9!&C*13#SMLz*IF8C$k(1F%*d>NNp7Xf`Tux&Nmy!q^cIW?{QUurEM2$^LNw z-&^2ZR$Rw20c3H>kfwwZ9b=u)(+}~M#2^{q8tyS_5WFPZ7y3HCIx>|KLKK-jg?*0@ z&&O{~l)ghw2oZ)WOy)^T_4FanN;ez=M=d3RfC0v~VuL41ygnl)?vu!DVT_eHYeUN3 zE*0Q6_7TTdSUS!N|AQR7*V%I}I`=p)cV6eb*KyKHjif5diHjF277BRuNU5szly8w- ztXe4p#1mvjNmXt%$?QdQnpG}WWnRzf?P^(GwoGjjEw+DwL9%L!6w1f_p$02ZA_+U$9eEJNVm> zqOf`c7_h^la9nyhXV`lMq;&AWy!Pu(%hF11wJD0`8ytt6_6xW0+FS|2 z?T*7#4C9ranN$r}B_%o17jQ)*NgHV!mkaGFVpiYn`%L$`TQ>|xWfX#X-NCZeQt!ET zaNv7g?Ruhc-D+obv7Qmyty#Sn5(`d`kGnn4$;n;w5C~rR&_hkH)gnY;YZ8RX=AOHs z!pCSjJ#89a%HZVqXfOck`r`3;5{8z1U$|Mex4XXU`GW{fE0j z;z=nKgqjy$fWOJKq)r@*=%%H^xkMBytMDVrT4Q{#6UGUb!_m%8n(pk3hLR_7*ztU0 ztW^S$RN8XE>e=Hju4^W^)k;PXJ>TjPrUnK`LA*C`zRk@s|y%kY5+q z8U*#KLeRRMqLfO^6ma3T*{;aC9NN@tu3VLrfX}ohXtwt}+B8J>r?(5)>l-8K`1r2Z zl|bofF#E@x_l2%8#<(q@g>R$z{I*3X<2_S(qzj1Jg4ayQyxvrA)$;SrD65n{a-X+?tFJIo>C1~{LWv@SONvV~T z6esi>x~4dP;THZMZpHmJo^?K*!HcQ|a3WfGL?%_5RlZ*p-c zS8n<@_|29D--3m#7n5p|t4)OP(Y$iJRr$}V-uCXqNfLLytVkB^xNnm1{q+3nGT$cx zxl+jPLs=Y;N8K(M;~d@YXdK7si@H(>Z#dtrJDg2orZdjl_3Xsx7S0YCW^vSNN0IL6 zCR$Nk5<8 zvp3ZBx4+^YuXx}G>jxgV{RwRF)LY*2mfwHo{3o7y<~!j0*L$vALz3sEaSNZGqo`x) z+~z#yI1MvI$4gl#H<+ub+K-cEQ8rRk+X-e$mf@9H0qPxFPgy*G?SNiKUOtTxG}Y+gAkh zOz3%hz^t+VQ5dU#Jm5U}h*b)r?U3WV@aOmpe4Df5Jmfe{%e|J$4lvuK+h*CsmctxG zvKgl7>jmT_p`?pzJ77}o;1&o+wQW>J{Y~~Bj^RIQgyr3*uNK^hoHA&W<_&=&$ zk-=v-xH{v|fn!&0$j5WTVLVJ-_Xez;e{4F=miXm{*L+I!_-i2$(LIX5G6}k&OiO?_s~%Gou_N~CdOK|b}8?Hi1<9KH^OLZ7JHEO|V%{XKeDUVpoN zWoI#^rey9y%^fV>U7xGZy)6ns_$rn3TF3P?T@L{`R{}?3cDv`f@Jz33vCRcaUQ72|mli=s9$UV}-1;y;w1MHwr`87rb}oF&;b zn`YB|oK3TF{+N|bf^jwu_&Cp&yaJ1H7G-ge7n#UY&o@p>=c1k@GGgDW1sgAjrU;|c zJXF9jgRj<`*=nh>d^Ow5R$Guqk#3x@WoNPy4k=|}zS^t^!#P_WdKGJ6tsyp5 zzAD$7c|BiDHuGw}m@MX1R>?(HQ>|>3t(J9XH_Q6WXew1#`C?P9_9HSr&t}4G)$upL z>CDIZue+`V?7Iw7=r`I$tKWbJ6)t+<`_Akg=wP?Lv{yCQR(qG~U3_%2*=*j6KuKn# z(3*KJX)xcCKGIyrK&-jmC0_wjN~T>4@-(27WX5%|)A?rkzSbJr@Sy8#7r35@7kxW; zNh@Q7Am&P?xOH8?a}8HY-q6Z*0oPS}LP9XD1?RM@m1~JyS85FsB=Mj*0Op_|aO~C> z_p2Sx_q=Jff3e=htdb^S-TImZv_ZjPJ9q%%_W_@}GDrI*7k6uv^V@DeDM598=}m{% zt{oj+yLR|M0B9xnRPa3KLhu{~7iGW&l7ys~c07&-x8upWTyQA~)+my(a$ObsV15fo zLe8`lfGW7=(_90j6U|5{$#@WQrleqG60SK9Le8|9Lhxy>0n%ZrIS-b!*7pekuesDq z`wjdw&IRY3i-#`NH6agScVTg1p(`MrTSrK5gY!9Rp=Gp&cF}qC5PB_orrn6XAEDvY zgni&5BYK@ra&V?~d@kZN4&pSYOtelAr=rSvJc1wvCmnMSzf24pfop*TO+gBN(ryrk zH7~8goX5OF<}#kgMGh=}Cd+DQFn<{q(-g~=Bw2FPy+vS{{t~6OX@b}ALu{`uw_C0D z@`*5X2XdTxhG7_Z1$TAoWjD6oynf|a4zOI9& ziQ~2n-wWpK$$PKdzP;nl7Pv*J#TDiM^t$mqASrkA+ksHmqjA4~-gM2-JYQ88FOp|+ z4tj>cJd<JI=YVel<6#Px&2mj2f7=fu;Nr3tb=AJnZ`U1@=D~sskQzPAsT4W`&L0( zNqG<#?{Y>~@i-0QA{RcBhBIWkBk>4$o{ry$zBf6}{jGE7_kOwC+ir>8^uV)=+5Ub$ zzmOk4o-bTY)7igWc*QF&+SeU=1|Bk-sg@5_rgAcyr%9VFKc)InDceHL^SwY(Q9>~aN ztdM;ZdI-G{eH1;1eja@d;Yz@OTX7Wd9L?12&)b(;ueg%p}ip`Ezcwt}7YhFz({8 zPsFq8r;&%CEX3;t6DH;mLZc@b*BL=b^?SX-2(DQh>OFhS~hph4(? z#hfhLy~a{T9hZ2L%wl~m30!Hgl+g!v^P}eMeRUW`F2KJ(v7WG$5V4pedO9OSDIxs% zjKYkH)a664h-ToYvcha3mw~b78g$F>^QeMFLqwzyxw`U z^BK-pJI-{bRst?O*ROw8vq^{vsbsww_=q`c&a%vB)r_{6ZK`D8CXXe{*fja7oTW)n>I(o2H!Axmuu{VsKJC*I)zf+SG|2P(`xFJ+PPcE{xxjK;vF%>V^*p!583Ke* zh7p`Y=Mbt=pEDjMfUOFEF;7qhgBA>IdU|-CETS@~N9KK}P3!6EPrSg7yPgL@*jn&h zlSq0L-&pngfV;g^Vgmwm3v@%hbD`74_@u(yjsvi{6ox7#PN#kDSUfafh`j>9m>jV=uMSpuFr-f#gkS@wGXzTelh-6VlDIr%1x4HF}T z5sFjPKA(go&qbnyrCt+bSZrBDzBx*4m~?x>y1`G)U0?{f4w^R0h{oLZyGB7E6Rc=@ z!!=A@_d?y!EvtJD!}-j0HH^7owuS(j=19^KfbTWd*bq1C03o5Z0E>f(a9|7mJh*OC zmV2%XrWrLX8&m~)!@c;WD+EMs-bM4?fp16>0jwr%U4t5$r8_JYA;w{0#=UrL_0rnPN&}*(8ndsnj}LCn{wf0&*z9Xx3o#BSW}tU`e!)z2 z2kQcdAuf9~?!C0ShN0CO;V{Ia{==)GIt`8xL(4~p@NPIn+vpbbFnT5W8u~+o*de5R z>^vT}A{8Vo>+A&C<{t!S7-m7xn)AEIL+y-{-| z*Prrsh-DViwMK)& zFtRR;mn1=`l>E@)^`pr+_KXRX=esVLF-lo&1Etd>%UqWOLKss5f&-qPcwy)vVl3%) z@*H5yi+jCJ$G41(?Y`2uT)2jD;6KH~;cyUVK>%uZ#*?%#O$h{}Gs!p@Q_?m4 z!E`$MbVe}NSjHU3ahT)0@KM~t^A2-b&d71nvbu^mpzh&yQL$B1u0DG3_`ydzlZW^E z%WuB?nYXr{!QS)F-=%WtIR6>!pZ~!#&*)FKIe6hCw8RIUJDq!-N1RtXZ*kt{yvO-e z=QEwpcfQ>DYUcyacRJtie9-v`=jWYYbN-|AyUrgw|L8c=db^pOAgUy&X4OPes;pG) zA&ifM)MBl$3oQ5u#iYt1qC0c(Fn?7oK1^rQi-5Q z%VNB|coj&3r&Yj3T#cX-TvUR`sTYzYyr(>^Ql3_M9E!5ad7AU8%mpukO7OG@<~E26 zk&K|od7LLH8@}gPobfd0JCO4#u7uAEO$FZhmMBi&*Ox^19!q}DP#1$ zyOO&edl|)W$BSIU2;$bl*U4|3Idc)iINvD&?!_46JMi?bhewoxefk#brp*+-fB#|lDP7kt zU%dT1JAbO>zy#nyp!A{JUxi=3wMhYJSuzZzf9mFN=hEVZt4VU^_T|g&#&;2bJMN(X z^qzZk4sh3naBJ&C-~xXBeE{M2+zhF!69^;k=ny_-n`sUZg19e-K(Fs`n9pjF!>T;~q8jg5cl?!w z|MAKG2oB+6$V5#vhYE!3XMS0+Uh{^HKh&$Fm=l&&DEv%POV2aLpxv3|+x6Pj6DMML zOVE7bt+z&ABRYTnMOKY%jz|5Kv?xu#L-j|`oQa#A_}K2{w>BEvlf2UgHaKze?jLJ< z@%dX{*a}{B;X?F($#Or-HhJAQSIc*Gn(?`_k7@Ms-d>ClvaAFMui=|a;$(1Ri2p8q&7ZE|^_I3e8m;y_olbXo zw6!p|@ugvZy1KczxVbv*4PjyX)LNFUo!VYljI!y*($dB>i{frKSsjg5lWsSLTmKu{ zEtwmDU07Uz*=Ot;%+Ev3hN}_aZWlu|`|f3^1(2o?%>K$!ly+NDEQFAR*wJAN1_ zD4xP=rg4O!QD2yS5*u9;W3y}ED`0j_nCQ7<$w%LYjrO_THt=t{-l_2jLmaR90JU1I z=~kyRn8qPK|h2(gPuiSMn8gn z0{t}ldGt#ydE$4_AE9p|R0Zq>Ra)UGs{lUCque7_x?|%YuRg1?tHH!t-xcM+3Gwyy zvdRV{V07%pNjcmc>wh+7X_a|H2Gca*<95%|ILM{Eh=*~I6Gv1I;i=QFL%-+;5;@6O z6$iPHCcG{)C)$fm@ zXcR@y^!xYBoWVW){@bHy_Hj)+8AT^Wr2SyqV$x8D{B#VqZHF$#GB8zBWD=m+Tz737 zutjZVzmE23wr=rC^+&X*w z{`=wmvsYif4Cd@#U~yyPb$zw}-P#BHYX3HEum9cAr!-9yk)~-Vx5G&(LhyfZfNE#~ zZ6X9b_euK&+23>@gO}li5`}?awOXDyBe+!v#}FL8`M4(YAC|fHc#YsX{8Sy2+U$!h z55B&m)$%;gYyH-wTCh1dkhwNDr*RqAW?!gbT!S+;Jo`iN+;%I~fo-+%?-waUUf(YU zqWAz_g&x7NI3!5}T@Y^ z(sn&frYZpQo6YuCngF=&sMmv+=G`9PWSEVILyWt<`Gsx|bj`y=#h^0Iq?YXf%%#Wn z=H~&=&rg?nJxrp06k(7gFcn2nC%rC!qADCflUb-~I2mrKngs362q6Rr9sN8Uz*o=( zggk!18M=xqkLCx2$LEgY*%%BmU)EHn#{40-saLn8X05>DIL0 z15jk&k37S~nhqdDD6lGVO;Jo6=Mn8`no1{l%r7j)LBM4oWTDwyHeFXypxs_x9-UcQLIk0s z>u|`;I9NeXai3Q&YKm839>S@oYKN&2@Ty7_#1TQi#Q3hHH*u~*u+3B!#R&~ZW=D2# z9UU+89g)QF>b*O+CzDPa+TE9AYul5&(*f7%eJo$(Cq3E%TujfMDJx8h;@m@$X-Zt8 z5+hWuxvoXIB4}5CExOOB<%8E4og33fm3t*#&5KCX?;W{6*d7 z?AO}mxw+o#hoDZ~<9xX|H!Ywn&zvi!_^pI9EOCi*!X(W!n~YIYl0cDFS<(q`0IF%8 z@7NSTX*NBLV2n9eLy2HOxLNuj9xS_w5X3xAV-W}W=Z~rKBHn6}<{S=oZ@v50-SPN@ zasH7jR~|WU9v_bnn`INO9UgwmxHtaV*T%i^x6Hn_yPJz9Qt<)2WSn`x67PS7l%Yje z&<`s_G2#LGeDQ3aW1Qz_&rD~XfnHi~H0o*6U?DU&`F2B56ovZwI`9&lPtTs6=J?AG ztl{zah8xCX`~$nNw0P{;;u3V>g>D%|4npAcoj$2z&iDvo5#$9N&UWGOx6bufIMbKo zvu%IBuf0d;-FKQs^UinPeHW@Bbo6U@7e0r+1N|WS3i^5Uo9Iu_KLUUSJ;-4fUIK50 zYw$VvS@<3J6ZkhQ;~HMT>j(`?o}?vD(rFy=ginjfnfk4Wc*LVLiOZ@K#pJ}~6+X`W zQ`_T>yFxGk6@CU(ILgMg{9qzN5%Gv8AUqp|BFuw?Cvg%mo`}zk5B0;Up=eG=P?8Do zxLO6r!R3ZBw8_yVA7_$BD)S6^qH)p;{Th@BbpUd`i}4DZOkytF{N4?8n%^@NX&CI8 z%9<#ft2RfcemH<+pRY4P9 zy^Z5>HK5~N96$$!D&{(PGbe`;r(__PO^qj|()4W(Zz-0~3$|xFkiV+}$Z$PZM#LCV>}o0VpjC#zGTDVXUpa ze?OF~fIN?lwFpDkBtlA~LM}yU0BW^bz3_X#H|(`qE#O`v&oBnj7NJrgW@5&e)w1Ps z#-(7Ml;=-_G3^7?7KRa&4y3k>vDnO|lAZ^pBL1OKkpp=#8WlN^7o&Gb;aNaP5e8d; z+bA*&K(Bv~jbkf7N#eQye?yWI0Md~Ve8+P^!o(4iN$LSP&r47!0cOHbOQ{r~s=8jD z%w}U>Zuk4aou}u25X3RTSl_rV7gD-^R0JWYEIJV=iaj1it-pj+ z+LgpeX={NWcBSOPb**O&D2{_d5hLL%CE;4#4Y`()65JKcSZhpTy-d2o8i0`pCb)6K zFbI5K3&u2Ko)B!Ob-;N52qO~D*db~GXb*z>#57|(8ILoQef{sddBgw~S6i zfe`TGIA$h5zXbt?!T4K?d^FArpvcFgy!gQ&Nt7ys9!N$pW1L5!+%mz_)WBppUjcp; zX(MzLg+l;V2TEoxKnMi^2Bc)<+719>jP3M#VbtwaQvHChHC!9E;+TmrN(8@=XT+Hj zM2v7WiU+;cH7S8{tRx_9HueU|@Q46#sYp)H>(53-)`8yO{>hn+aW{}haqbcIqNt<`PTwOVV&xG;eq&_0xut|ZQc z(wZFRI4}GOeFnbMiJi*1-EpRwTF7cr&o=8u$1qRW zyc2%eBm$-KVqcryV31{?AnbG|)!uA)ak>-7JlrJq>EVr?6X&vXkMmOJJuE)Os{!@5}&Lr7J$s@~L*qDz8ak3$oR*o|2oS5|csi7n#P zdb0ZX)0ZzZcKPzt(?wo^Zf|d|*M&|rXfPNI=y&X66n#9R|1v)gZa6m_Uy5k?mr`tP z7+PC}1YN+j^?EoQ4%h2zbBEylNB-oeFJES#dopx;dtD9a?w%h6{=ZKQzZnrl?~Q=y zy>lt+h5p_g{u69qxScKb}&r<6l`QcBaln=V9j!&Zj%hbhBJ7 ztNG|a&(ki!Yc8r5lPV9{Tqb~BQ&d?wh;VZ{6Rl=j&o;Jc=`|;p&Bm`MV^hxR&2}@Z zw}+y$&J!R$*cSpG;BoFNyAQ?#?fEL;3_jpL2fu`Oir;ksBt@^^Yvl#be2?Kr$Fo_l z3-o)ldN7+zh$iFuCs{S1iUjYpuY5}4dA~Vgen2@Y76c5z?!JF(98R+wK~I9vX)l6U z7=+QzEDWK0sgQLoMcRA1&mdcU!cCoAs(y738}NV+T?45EOq2O)Bheo?HN-05SGN(3 z2bD^ykKMOi5G|JX-Md^8EtmK1j_z}*K6+?4bG^floAF;ozw*q(O+(Z)4?pwp#Y@!d z9UpD*)}6fp-nU%P`9J!-?#@oH=Y8ZOUaz;a)9v}V+a~`iIe(V6+lQW9Z-7mE`1JN- zaj{+pEQMqXZJ^8OQG}4UbWDCt3(ynZ;|Wdd`^i_J<{K(VOtzojUdFx+0CLv3%p+jJ)rU}@xvPH**fn$Dl^+A9)ydZezx(U zhaYL2nI0T?_2p-u%_|xyM_+~i#<;*ecPyJlqH}mgl1nDJ+o%KwXl*!uvg|dliEH}V zv(2J*?xqI@-)`yIn_m5D42qMyl_8%6!xP52|bcJ`*%yao}(jt*fxSLEbP z=&IhS(S`6F*)`5M!n(Tyy@mqyl0@nOBZr>sL=oCW$To!230l_&9K4`j_kuG9W42{= zSI$_r#ki@cjc(xA>p@*nRmn1asMnX48g<_?nW8H7f5(GiRSgGt`fz)2cQhw^p}`mq z&RCYsnBHAE$hIk3qw8bF49hTFok|uqbc}TaTN2e>!?1q28V&)5!>Sq#0fvLB>AJ4l zB=)21FvObHPOdlaTkgfB>$M(u=$-~4P+d!iF9xc;07koolNv`DT1cc36X6c9Pia== z2y1OR%JezVG{WW1`>`KYnBx6oO?Ra|&bLO&PMPcHDN$?Wu}l$O=}}RK#$g>&}}t<1Vt_ z;Edkjy)7tLgN(j1}2XG;J8fI2RfJf)C*B==lf%q9|?&iORQn8pVyM zPSU@_vlG|NqD{fENt*Cgu(%bM#k3d{Gy-PTOArcg{mTK7;e&Zgv73WI*F5ify$)~& z@n9IMp$NXqc5I33npG1*xB!U5I~4T3{Vu?Y&QF=Wl=MQXvCqv+-^1u zol-CjV9aQXdQ0v18f`);F>vRVO1InhER#aRVGK-srK*FKyjhIeXa#Md8_^Z?FnSSs z19}g-hCYdY1br3#GWr8szsJKqmugP6Xp`J5+$xqORa%vIo`z81Fsafk>mRMPF8`Zs zxz?z7R(2ue87pX3c_<(OwP*!(cJp5GQe+{ovYY$zlWH@pgD@>CLd6Cwc{5qqg>3&^ zcXgF*IGgev5QU~%XIGr0$G#2ll2dmKHaTDas6~>1jg(lN5Pm-=oMA>d!2s(VfO7zT z6CngRU?Ne>FxzEJlO!hTl&%4{IZW(lZf~2RKnSrICfwrWZcaES3{#0<*xPZyVgIMb zOS}Gwp7`ujpN+Sb{W!;YQGkCcc>>PA6uw0J8Ah5#?b*BX6!ro_NCbP*))Uo~U)rfG zP8KNDB_>H4W8eO&_jAMEX5UOOK=qh!?iy^>CTQc?Rh5cdWWRf!cLmw6(0_r`ZVvQ>$DMeOfNje_EI2&iv zA}Pk%xJZg|F^;EcF^#81l6`K=##vHKNeK;;X480@j*D@Y6ytPUjMHg4E}~+ZCaZ@@ zHcqF`FiVQ0NT=yIoyOy0Jc6hgX9*VueCRQ#F65zFlu>+1M10KG$T+(Zt7N$Y<7}Ky zsvON?&J|&ky2)Bq1`oPE$S1Xfq5(Zt_(5nw`@+ZBw1EEtEQPh)1SarM#bxVhhO9EC z8tTN^_@;aE2gARon1&)tRACq!9H^wV089ykVj8jO zCi8Rcc}0opk!?{`1(S*CMzrIH>!FQ~!LqA$wJ;6D`2pxS5 z{s|6Ij5g57RxSWUZ+fX91QVL<*Hr<2~Sv!}{fXDoJ@O87@~#$M0iouPnOV z7H^B;zWt@@;a(JX7n{vybFml2y~1%_w}6k6&COfSpNIm#vxRBYud4mF^4^fm&g?}V zK>jcrkQgM7d`!+9SC{OzhxVi0Tk2h++wP# zs+#M8-NnQL_}m@6;H|3f^@lpQElt<_q_6An7P2{AdqnS`BwJjFRMmu6nX2m5C#%&a zrQr0Y?a(xtTGw068*XUSWta27uXmoerYhD?j@1X~9sMGF9KM7eK(9paMu!Mhoh+X0 z>Z}lAiF_rn-zI7xP{v4mfKyLdFwR2affY`=B(*rm+^Hn!9xp8wB_gpTc^(Rh3SeZO zhPBdAWMLNO(_qpszLU4$6Xa9Jk1$a0tIHAg1tp?x+ z&1PU?0+22(^^+v6ssv=20(Nz*{)>bGuyh^DW5>p049T!8CzHl5P|Az>xmHu>n95ul zm*rea{$%ac$@Mi48wOa%b}wEyMHPiV3j`#J2{9$gF#(B5lH(H2C6`f#F{X@Bmr)%* zs!9?e7|TZUYT9T5w3_o-yKPcK2QZAej_Zb|?~g=ZNUWEZWtt=)D-2{zlpj%mNt7@N zo-P3vmu}pjn^RRGHh@w^!5(9_rAYv?%$8J@%i8RVC8Y}s=M@af?UNk#xuQtVmoP{G zgqRZL7z2~I<1)^v%P0p7j7csdI!1^hc61%S0@u(YT0zF0F%$_Z8o&p_N7Wh0&I_5jC&#f3VvEoBv( zCWcylcQ1}^G(8VDB!(gIeIMgytNCWOynL=$SZsH6iSF9@Jk0ZxC+;+rIbBf+Wt=k8 z)G$yigJBrDWl9)h3EHw!uTQEVP?UjUS@J4aR`{Nv-6pu#O?fQK*tQys-InUQsy1Rx zpZ{*H(InuxHDNQ1F+eR0VV>H!#<|8lUtuVfjU|a;0FWd@H#oawI!D*xvv3V52o3rC z6$&IL2LG`SzW}n2zW9A`_}Hb{Om@=$C;RDP9*Qc<-)o`)lV})NflM^@we65xxpOCN zaqe2CD|G_P>^7R-RQFvsX<-}&VgKq03dyk-zVwE6{dAf_&@_xz5Mb%do0_eirCOg- z_4x$fju1x3j_vA5HVNQqmF8Ta)^x(w)w_0gpW8iVzy4y(e&ouP=PqAckb`q$z*(K&f+agtc(=!ukhUzvZjtA_6Q1GRr~%;N zw_;4BdIQT(l3{QfgQoUbgZxXK@aHqkIv>QCkUF5g>^O42rnXutqR2bC4u8ihE;xy< zVgjs)GN(W+U*w}V{As2{fvV|nSH+*wXMqx#^A7J4A;)!5E%f~p!*jx_&bMv{O|uy{F{}~SNo2pX}axbIs_reZGiFMXB$$Yzwg_qZDnTyY4dxZNExDGE+@=prEOYTiWOxXJtHI z1COP!6*D=8vyDuOotMD*12+7p%^fI3$j6zVjo091JEt$Mt+(3{5Aw=$K>{03r{~sk z(dj4vHg}b_56F=AZp;P09lTV>E#nYi#6Obnx0obJj@C%B-rD+E z5xTq^R;%cT50kBhTXq)~02UT@Z(Q8yuB@zXO|nkA-N`0fo8xik-vJ8gc9-sZ|B3lI z6>1I)hPzMPuXj%nys)sdqi8!CHyWGc<5mFe_7wlaqdDeBI21v;12GpB9|oebAg?$) zIDGovi(eNXzHnvsyDR@QyYlr{|Ie@1zJBq;-=Ez3#&`Vi@3hy?yyL5D=TF={I)s0K zL%m3JfY30GLJX5dh&&o)dMe>joHq@3#8IEdQS!dFIO0WFz^b+dQJnB#!>;Ko6E{a# zZV&PziHE*HaPJM6v>|5&1Bn3sx=CRGv?&c~iw?02cmtc3sipy?5|_EGD7vnIX=0E8 zWIT|X6eh|B+NAJh+-x+O_{%_N*J+E=7JU!UrX)2fT$6gwQrhcL+Uqf#5IP(L*e1mo zVh4JfvUcm%o3jd&Ms-~Gukgv!v zu~D<@xw@)q#zV|=8=YIdEYfMX9^=f{bgvNv9f=u3LNRB>vc%Bnn3|?)22@m{S124x zqyWIuAgI?|7n=M2V-@5kG#lNTZG*6^!0&YYz_J8U)TK?`AQ1-35}{?|zU$WNK`arB zODyGrn$b~;N`Ag_gCR1gSw@aBSk;;AR|n0IrCl8f@2-j_-pP#7&Hwci*zxkGHJ3EGyDpztd7x zCOJRd&d($%2;pNmT}ubPKdh@f@Ec7p#JIuQ;CY>f7jU(~*batK+B{{(o(rm4Zwv=< z6d;5s>Kz@zH8?~B@jI)H^HlIE<#{s$o-rU6(Wro6W-PA!hfRPwuT`Ma_BA!82RJ-D zJivFA#s1!f3r9ztHahLYqYIBOm-yxvecHX!@O zhhO>?j}PDUrs3o4t6sUcTrQW(pMC8&{nq27H@#`}_^-VGwXa>idijmZ<*V_hGk%>M z{DiZ1oGIsI!bdu6N5OPd!!0dZcxebn^2jL=4JfC_#5d zo;Sf8HY2H&9Btl!iR*{|lYT;QO1N9V`TO3-IRk;X_zBwG-|OH-yDbjz*6u@{z5QLg zQg->mNAZt%-kCWE&Nd&JTUZKvCJbe0LIC)oT!e8oU2UqowDZGb?RK$G)s?DMT}j3JXqs1>RSd8_S5Xb|%KO#L1CCq1mz;lf;`yGJ z;th%CPa(`FoSnVJ3P9iu0_Xqlo_p@O$KAf`+V6b$!yo?eW7pobee6}Q!aL8uI`zCc z@2%&h=Uno&OlX+Qr zWki`cQ_k{524Ya%{;aEIJsX|#O%FfP??bVNJ9ipyvRYl7=UMEf54DV@VU|Wj<<8Ec zViXv+=(H11J{(-a^G&n2fTyQBiGJiRkS2CeuU7YO?mTuGQxavrKW6M?u_!|;byCkN zqNCm2J|>l5&v{dPXJ;Tv)N>A^@T0*{6jT|n){<16LxsU|P@1_5piat49sH!IL!P&6 z{tZkUra`fi2By*V(!bMZcqjB4tmQ)VOUA&s0&d%OyX-N7AY0@N#wbD%sL1FbXir;h z!-;rz==wr4;K29y_a!I@qO#TUIO03TD2MzR8HS8N5fP%O+q+Jzt`8n1uuI0KN}l&f zN`W{I+hIt({x~y!1O_n2A!mfkd*)&1b&g|XCxU!-f7F3che+zl-p%*bC2!f9;K2XH z2|k&t8VDAiF)4hF((Noug#cGB^?I8N^(;%LJ2x08!!&>Ul^c`M+}|z;nB8LVl+HDKDe!_Ag*@1 zpsWl7!C;J`ZnxZRm0*WQn{nWAMxIszBt#elK6~u8+gwIv*`ChoOlsp6xx*ax!Y%wP zZaK=ivdhI@mkfk7+;oxdQbNGk7>5G9PDFDze_~Rz*GMk zhOB!yPGUB8F`J$7w;(0Jn09Br91cL!>E(8d*}>?M`JAzBbuvGhS9?mOY5C?LP19Cx zr0{mevhY~Zc%iw_oBO72Zy_#)azf~t%18g_d=5-Cl@Zx7rC8HHy8Kz$d)>|8Yw>c9r;Gqmf{cSTyvWzg@?^=2H69$8I zmMRLvSy>`Yhr=k85=kd>U2<^;%~~Z?=((JCdRY+1iDj@^UTAoJ=y|S*{GbgJ>>JUy zRn_e1cr+&E2NIq3bX>NiKOF4r^j&v(6n499Om-eQZnvjt%v5hO>3<~!CI})a^Dq>y zp9GdOrPB6bP?T`U@n86D{15z)^V!Y|jx(Lrvuak)>Y1Jj?_ps&F;SyT(q`XFDw$7e zrG9nG({O+4ovE^Dmd~VbezRt~S|V7PYPQWrLEb8fr&`WvX+P_kosk3i4vj)@>9$|# zOU^5ot75aBMpgGBCYZ_=Sp!H4g#|aXHec;Rr10OR3-vFeNg}zs?jeQZfi%kPO9=uq z#tYKP{{AElJY$$JG}d>OkpV)`Vv-2NWHM$HX&DL?M4X_cc8D;EGh;nFx1Hu$lSN2E z$q8V@qEN{|PGZj}#YGTzJ}37+5qBYkfdJZ zrl}kGNis-c0PQ4k?JgAnk*R|Nr45GWf4?KqBH zD1fQXqZ+uxU8R&54hP^&*5|kVRgjK@JaU{Z&RmXz5(;ncoOq`@^TXj>38`}z)AUYG z#@)-+x;fQw0%0l3vmGb^NN==8Gk}HIUGGYO;{c9KVFvp)HVQmKW7*(ZW?% z;G~)_PHV0gRjYH=nXQ94XRG_-=J~Bonx<(7*B(cl3*!R%D@@$=Y#^2Py)^ZFtz=+5 zm$B=kuWJN1T)3dZSA59i4B%wA!FYxmpU&nDG*$ zf_^{HI`Ir+TuALn0>krZ+S%pc{1=7cTP_hX&LlVqA*2)_)3t=lT!a9U#9h~AfR_l# z0I_f=BB@(j}rxm!5p`(j~%0s}4cS<$Wi6 zt)fUr?RG?+&fStRb^hanD5B-^zTN5aFyR&}f|8s%lPse^D&Ho4R+ReFZsIQ`#s zEi3YLaFqC~Ggn@_9k~6PbkA0Pax_Tug1fHk@}fxkN3p*=bLF+$fZMML_iX9MNByKI zxa7$nsBeI{N!km z=H+r_&F}4r_q*e|d@VlJy&k^c+`I|r=1u#~cmC76-t|wfdCQ-?HIM)k{fOQSL@Utm45jC9H(rT`oYku`E#qq2tm0YS z6zZ9uRzEt(Gi2GJH?yR_B(&?lyX~MiO;gVc$45J1z*!RSU0FVN^A9ZjBnR;ty?pnUJ}@U`EB^1bJO5OS3BFexrMj&+b*nll^E zV6|E85sV!Pw5Gdm#d(I8dq9{YRaOnvP;AC4muV!nCVu*O<6n#vlW5DFB8OE8WP8ggF0Mqr;GM$QGI~ z)MlyMM6LGTxXW`T=l#JRr3q1z(t?tdC{1VqL;rCspX5H!+TUB>b8rATNRrCL+xb4) zY)7oeNy2Qab$Bw0xmZ}glV>9LJiJazrKC<7OP}x8b(!V48TrNlV+HQZvDQz40>X4v zlC)Yy(dta6{XT_S5f~|9y%9>nC?b-&9@~gBhQn(beo&Oz2SUBwvl9lc>$<_~2fe-h z{eB-vUAG|D_m(fDMCmAHl#QM}PnM2e&;PcgULS0=zN_6{Uq0U7A370C-RFh9S$**8 z{oxQa+3f8>aK7DX*6R)&oB==WH=G9v1SVxXl&%U^F40V`%Bx?OhcMveca8hKIF939 ze>|_od4Fsa_j_+A%lMt|B#eg5KkQW1PNgjW82OSo>i5Uvem{yw;}k_P9v20IpnYK7 z?RbngRMk#Z<$+-K7M^$R#JEYJ9RhjMHdv74bGX2b$3ht{2)KEwTW1V3S>6KN^6WUz z%A>*Hs9zNQqru>)*X{O>27{wANy4-sZcO^dQIUp8GJRf|#K6>?hCi@Cefej;(3vDuj%;@-nsPyY7EfoKQKvl;(HGr$00|(@KJq@Smj)H zoT*kNBnXZR9yBMb%?YMYnhA|ssv<8Yt64K^4nQ-QA~H!Oh~*h$n)x?@QmAuA~#Il!q{8h%HlI?EojoI>&4TX4Y1ihb=zW|Wnm{y zfHW-%d$9-uP~PH5(o*0XzX|xJt5e5u9N{p>p)=fcdd|?PoYy#?Wr`@?>Ho6BgZ~;hW!X%C~i$GxZyE(6j zI1_$3j6(Q+w;u||{o8Q;y?7}Tf+GwM0Ngp^hBXf3`7>U;DD&4>=M~pNK2_YqyZWMAJ zdtMkavW&q-X@(>CwIzQ|=qcAVjOB>myt7PFAp`^XiDAAcn~W!uvICDX*J$G^tr;U7 zrU|3VI_|KZbNgGRPQqL&#<&o+7Afo(2S51z7N%9RDrIl!{KsGXv#87hWFdCGpa_ZT4^PC@Qyo9PsgVTPnnnMgMc%U7%e1pWTguFtt4U88x*;Q z)^Qd^hDiY2C4%c34{oQ^;?gZ!%(PmCU`%+{NIxNBBoIZcOiUQ%z7UMZ-EI$BsVL2? zY`3bNUX&z$k!4CoPTg&8a>-6bMpv=k>~;hCQ`FPzo8?Mb2?eU3&$}G$v$~p;`4%@; zqFKpYsw@u(x#p~%)ysNP=h-Dp5#T18YQ>*;{PDMF)pjjF)^wF7wtMZ`?YD3Fr4%U% z%C)U8^w|?grIcVDE$|U^2wcewS-L!WYA=c+A&OV4Znxj}8F-t(rHp5nFJC#^ON8X0 zw%&SOW&=!w<)}ef!hSo*n7+2{u;saNw5wI=dH}w-j*|oH;akr7D1HIo;&7*M4rKTn zyw&+K=Xu9zs?93D3ODoX)p@m9Wo0p>4I)hPy#&-D+vJI(Fk3NCy;_ubwK%oTl_yPR z8xG-9O;tho=%0&Rc=aM*9C>-1DXHdaz8KFJvwXbjMB{lrzW^aMA1YqgvwHmW&dv>U zG7NHmcuWAlz0=l4;QHT}3#q(=N|RoFAAWJdg;YuiBj5AJx%Ndc8l1UH~CTF%X#E6+4ON=3eG5+~Y-@yGT$~*X+ zj(}mw`KM|r!BgBcO4?4Hk{thqkKljegU;)nPj;MXDVV;slZuLgu2fG&R9Kx04W-fH z+^(}Mm#gd&maFaPUiVjWy_q-j#b&nA*W+iFs5Yy7TjGCsb|}H-#^#;wAc~b@98m-? zN}@c?604&i3w&&9Tg8QELN`py&LGRAVhke?u~ykB!$3)bl!+fI@c%=73yd+DQuo~B zuKqv>>n6#l z*Q#~oPIYiF!f`ilUAcPo%AF_2lEQHC#FeX8uDR9;y}gTPr{sl<*j9L9ZUSpUpDdC(*_H9M>IOQwewEX?^Vt~oWmX#3O6@&v!CVXGesb*FDE4iH zC^lXa88`U_Puaj#*2g=2;+_ZY)npBrHT00L-O$%=C{v|Ioq;zR_W=yYlOn)4PC%_J ziudxx{AjbgOG71FcZ$f2GL1kPEhU(>Zp^_Iplsvg28-#u!qrle!NL~^ovFoR?>o|_X9J$RA_c$-( z*q}F(%qYvV#XM?AbG=!g$!D%0t=P|emnaB|Ff2mX4O_9Fxz>hKYZ+SW7GYTY#Q80f271JWUSvDD*8*d(3&lx> zKzPe~5qAOb^@Kd~0WHCRX9bi3AMw{BlEj{Wbem8L@8RX(kQTW5T6oKGSS-!H-;G<& z#<|ORiQ`ON%`Mn8s>r3PM;hByy}gS1YKO+Uy0sx>81x;{CDEbxmg&W;sUshad&hAJ*-a7WA3Zvl6x5&~gB^`yq z4QXuf^~)_<1Od*!iCXQQok_jh+_twTRlOUxEjIob-NgHxBj=^g*E-I0Q_qVX7C!Du zvjEZjmGv$2xdG$io|VFZ)4D_1XR0qf2h1u*)C^@`qU=B-Sk6mE#bn&iQg@AuFS*&) zxUtg8it+ehIjc!<;j(VG*JV&IrFJ`y@Vr$@@oulzBcb&a&IZHX-Qj>qrDN4;cRC7z zl17XthbPk={&g&L4fT4x9(RpV7j(O$q!yE^+7Telzz>fuUphJ#jJv*X*<(p<~-=U$@xm>+nk?vM&OOW znYgQ-S5*|6EjG)&9j59wK2t}#)og2#nFspSc%-GaZZI|jicOftg?f*dlbTzX6lOTF z-qM@&s=5&)J=0=REzr3Dk7k)!UMN}Nug@>VQc4-)mlG+aOwK=2v^%bF5o(`t*ELtJ zTAIa~%Y=?1U)V92>(bpB4#jU72>^eev##yRIOLWWjy(Ei~; zXxbu)d%az7o`M()v5xwKuxtgbb`nCK{|TU7FX1$Ku4@TtGQ{&z#^;~Bt)(USoJ7i> z4V7y9f|&9H-xtG<+v)6iz84Hfk_%#rx&X

(0wGwLXB2naKMKgASi>6$6=JG#)$u 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/font-awesome/free-6.4.2/webfonts/fa-regular-400.ttf b/src/main/resources/static/articles/font-awesome/free-6.4.2/webfonts/fa-regular-400.ttf new file mode 100644 index 0000000000000000000000000000000000000000..c79589d83dd5569afad3a4bf7dd96d97cfd52e57 GIT binary patch literal 63348 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/font-awesome/free-6.4.2/webfonts/fa-regular-400.woff2 b/src/main/resources/static/articles/font-awesome/free-6.4.2/webfonts/fa-regular-400.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..059a94e2fd7a6144d1496157ce0c21e39fcde121 GIT binary patch literal 24488 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 Lgti_09|HpbvH4-J literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/font-awesome/free-6.4.2/webfonts/fa-solid-900.ttf b/src/main/resources/static/articles/font-awesome/free-6.4.2/webfonts/fa-solid-900.ttf new file mode 100644 index 0000000000000000000000000000000000000000..e479fb29349a12b564516c40aa529276c6c5e12d GIT binary patch literal 394668 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 B77+jd literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/font-awesome/free-6.4.2/webfonts/fa-solid-900.woff2 b/src/main/resources/static/articles/font-awesome/free-6.4.2/webfonts/fa-solid-900.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..88b0367aae421f51483c07ad7ae3ebc5251e48e5 GIT binary patch literal 150020 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

N{f}=hJyVz~&Ig83lmY%4(j$SFN&j#sZXv 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 DT5c?X literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/font-awesome/free-6.4.2/webfonts/fa-v4compatibility.ttf b/src/main/resources/static/articles/font-awesome/free-6.4.2/webfonts/fa-v4compatibility.ttf new file mode 100644 index 0000000000000000000000000000000000000000..ba6cb258e0f33ffddffd24b18d7162a32cb9a6da GIT binary patch literal 10172 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 N-3nCBrc#A%{vU!|PjCPL literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/font-awesome/free-6.4.2/webfonts/fa-v4compatibility.woff2 b/src/main/resources/static/articles/font-awesome/free-6.4.2/webfonts/fa-v4compatibility.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..23b1c47ba29581512bbffdf82a9d88fb898faee6 GIT binary patch literal 4568 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/js/echarts-wordcloud.min.js b/src/main/resources/static/articles/js/echarts-wordcloud.min.js new file mode 100644 index 0000000..859813c --- /dev/null +++ b/src/main/resources/static/articles/js/echarts-wordcloud.min.js @@ -0,0 +1,8 @@ +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(require("echarts")):"function"==typeof define&&define.amd?define(["echarts"],e):"object"==typeof exports?exports["echarts-wordcloud"]=e(require("echarts")):t["echarts-wordcloud"]=e(t.echarts)}(this,function(t){return function(t){function e(n){if(r[n])return r[n].exports;var i=r[n]={i:n,l:!1,exports:{}};return t[n].call(i.exports,i,i.exports,e),i.l=!0,i.exports}var r={};return e.m=t,e.c=r,e.d=function(t,r,n){e.o(t,r)||Object.defineProperty(t,r,{configurable:!1,enumerable:!0,get:n})},e.n=function(t){var r=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(r,"a",r),r},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="",e(e.s=25)}([function(t,e){function r(t,e){G[t]=e}function n(t){if(null==t||"object"!=typeof t)return t;var e=t,r=W.call(t);if("[object Array]"===r){e=[];for(var i=0,a=t.length;i1e-10&&(i.width+=a/s,i.height+=a/s,i.x-=a/s/2,i.y-=a/s/2)}return i}return t},contain:function(t,e){var r=this.transformCoordToLocal(t,e),n=this.getBoundingRect(),i=this.style;if(t=r[0],e=r[1],n.contain(t,e)){var a=this.path.data;if(i.hasStroke()){var o=i.lineWidth,l=i.strokeNoScale?this.getLineScale():1;if(l>1e-10&&(i.hasFill()||(o=Math.max(o,this.strokeContainThreshold)),s.containStroke(a,o/l,t,e)))return!0}if(i.hasFill())return s.contain(a,t,e)}return!1},dirty:function(t){null==t&&(t=!0),t&&(this.__dirtyPath=t,this._rect=null),this.__dirty=!0,this.__zr&&this.__zr.refresh(),this.__clipTarget&&this.__clipTarget.dirty()},animateShape:function(t){return this.animate("shape",t)},attrKV:function(t,e){"shape"===t?(this.setShape(e),this.__dirtyPath=!0,this._rect=null):i.prototype.attrKV.call(this,t,e)},setShape:function(t,e){var r=this.shape;if(r){if(a.isObject(t))for(var n in t)t.hasOwnProperty(n)&&(r[n]=t[n]);else r[t]=e;this.dirty(!0)}return this},getLineScale:function(){var t=this.transform;return t&&u(t[0]-1)>1e-10&&u(t[3]-1)>1e-10?Math.sqrt(u(t[0]*t[3]-t[2]*t[1])):1}},n.extend=function(t){var e=function(e){n.call(this,e),t.style&&this.style.extendFrom(t.style,!1);var r=t.shape;if(r){this.shape=this.shape||{};var i=this.shape;for(var a in r)!i.hasOwnProperty(a)&&r.hasOwnProperty(a)&&(i[a]=r[a])}t.init&&t.init.call(this,e)};a.inherits(e,n);for(var r in t)"style"!==r&&"shape"!==r&&(e.prototype[r]=t[r]);return e},a.inherits(n,i);var f=n;t.exports=f},function(t,e){function r(t,e){var r=new S(2);return null==t&&(t=0),null==e&&(e=0),r[0]=t,r[1]=e,r}function n(t,e){return t[0]=e[0],t[1]=e[1],t}function i(t){var e=new S(2);return e[0]=t[0],e[1]=t[1],e}function a(t,e,r){return t[0]=e,t[1]=r,t}function o(t,e,r){return t[0]=e[0]+r[0],t[1]=e[1]+r[1],t}function s(t,e,r,n){return t[0]=e[0]+r[0]*n,t[1]=e[1]+r[1]*n,t}function l(t,e,r){return t[0]=e[0]-r[0],t[1]=e[1]-r[1],t}function h(t){return Math.sqrt(u(t))}function u(t){return t[0]*t[0]+t[1]*t[1]}function c(t,e,r){return t[0]=e[0]*r[0],t[1]=e[1]*r[1],t}function f(t,e,r){return t[0]=e[0]/r[0],t[1]=e[1]/r[1],t}function d(t,e){return t[0]*e[0]+t[1]*e[1]}function v(t,e,r){return t[0]=e[0]*r,t[1]=e[1]*r,t}function g(t,e){var r=h(e);return 0===r?(t[0]=0,t[1]=0):(t[0]=e[0]/r,t[1]=e[1]/r),t}function p(t,e){return Math.sqrt((t[0]-e[0])*(t[0]-e[0])+(t[1]-e[1])*(t[1]-e[1]))}function m(t,e){return(t[0]-e[0])*(t[0]-e[0])+(t[1]-e[1])*(t[1]-e[1])}function x(t,e){return t[0]=-e[0],t[1]=-e[1],t}function y(t,e,r,n){return t[0]=e[0]+n*(r[0]-e[0]),t[1]=e[1]+n*(r[1]-e[1]),t}function w(t,e,r){var n=e[0],i=e[1];return t[0]=r[0]*n+r[2]*i+r[4],t[1]=r[1]*n+r[3]*i+r[5],t}function _(t,e,r){return t[0]=Math.min(e[0],r[0]),t[1]=Math.min(e[1],r[1]),t}function b(t,e,r){return t[0]=Math.max(e[0],r[0]),t[1]=Math.max(e[1],r[1]),t}var S="undefined"==typeof Float32Array?Array:Float32Array,M=h,T=u,k=p,C=m;e.create=r,e.copy=n,e.clone=i,e.set=a,e.add=o,e.scaleAndAdd=s,e.sub=l,e.len=h,e.length=M,e.lenSquare=u,e.lengthSquare=T,e.mul=c,e.div=f,e.dot=d,e.scale=v,e.normalize=g,e.distance=p,e.dist=k,e.distanceSquare=m,e.distSquare=C,e.negate=x,e.lerp=y,e.applyTransform=w,e.min=_,e.max=b},function(t,e,r){function n(t,e,r,n){r<0&&(t+=r,r=-r),n<0&&(e+=n,n=-n),this.x=t,this.y=e,this.width=r,this.height=n}var i=r(2),a=r(8),o=i.applyTransform,s=Math.min,l=Math.max;n.prototype={constructor:n,union:function(t){var e=s(t.x,this.x),r=s(t.y,this.y);this.width=l(t.x+t.width,this.x+this.width)-e,this.height=l(t.y+t.height,this.y+this.height)-r,this.x=e,this.y=r},applyTransform:function(){var t=[],e=[],r=[],n=[];return function(i){if(i){t[0]=r[0]=this.x,t[1]=n[1]=this.y,e[0]=n[0]=this.x+this.width,e[1]=r[1]=this.y+this.height,o(t,t,i),o(e,e,i),o(r,r,i),o(n,n,i),this.x=s(t[0],e[0],r[0],n[0]),this.y=s(t[1],e[1],r[1],n[1]);var a=l(t[0],e[0],r[0],n[0]),h=l(t[1],e[1],r[1],n[1]);this.width=a-this.x,this.height=h-this.y}}}(),calculateTransform:function(t){var e=this,r=t.width/e.width,n=t.height/e.height,i=a.create();return a.translate(i,i,[-e.x,-e.y]),a.scale(i,i,[r,n]),a.translate(i,i,[t.x,t.y]),i},intersect:function(t){if(!t)return!1;t instanceof n||(t=n.create(t));var e=this,r=e.x,i=e.x+e.width,a=e.y,o=e.y+e.height,s=t.x,l=t.x+t.width,h=t.y,u=t.y+t.height;return!(i=r.x&&t<=r.x+r.width&&e>=r.y&&e<=r.y+r.height},clone:function(){return new n(this.x,this.y,this.width,this.height)},copy:function(t){this.x=t.x,this.y=t.y,this.width=t.width,this.height=t.height},plain:function(){return{x:this.x,y:this.y,width:this.width,height:this.height}}},n.create=function(t){return new n(t.x,t.y,t.width,t.height)};var h=n;t.exports=h},function(t,e,r){function n(t){return t>-b&&tb||t<-b}function a(t,e,r,n,i){var a=1-i;return a*a*(a*t+3*i*e)+i*i*(i*n+3*a*r)}function o(t,e,r,n,i){var a=1-i;return 3*(((e-t)*a+2*(r-e)*i)*a+(n-r)*i*i)}function s(t,e,r,i,a,o){var s=i+3*(e-r)-t,l=3*(r-2*e+t),h=3*(e-t),u=t-a,c=l*l-3*s*h,f=l*h-9*s*u,d=h*h-3*l*u,v=0;if(n(c)&&n(f))if(n(l))o[0]=0;else{var g=-h/l;g>=0&&g<=1&&(o[v++]=g)}else{var p=f*f-4*c*d;if(n(p)){var m=f/c,g=-l/s+m,x=-m/2;g>=0&&g<=1&&(o[v++]=g),x>=0&&x<=1&&(o[v++]=x)}else if(p>0){var y=_(p),b=c*l+1.5*s*(-f+y),S=c*l+1.5*s*(-f-y);b=b<0?-w(-b,T):w(b,T),S=S<0?-w(-S,T):w(S,T);var g=(-l-(b+S))/(3*s);g>=0&&g<=1&&(o[v++]=g)}else{var k=(2*c*l-3*s*f)/(2*_(c*c*c)),C=Math.acos(k)/3,P=_(c),I=Math.cos(C),g=(-l-2*P*I)/(3*s),x=(-l+P*(I+M*Math.sin(C)))/(3*s),A=(-l+P*(I-M*Math.sin(C)))/(3*s);g>=0&&g<=1&&(o[v++]=g),x>=0&&x<=1&&(o[v++]=x),A>=0&&A<=1&&(o[v++]=A)}}return v}function l(t,e,r,a,o){var s=6*r-12*e+6*t,l=9*e+3*a-3*t-9*r,h=3*e-3*t,u=0;if(n(l)){if(i(s)){var c=-h/s;c>=0&&c<=1&&(o[u++]=c)}}else{var f=s*s-4*l*h;if(n(f))o[0]=-s/(2*l);else if(f>0){var d=_(f),c=(-s+d)/(2*l),v=(-s-d)/(2*l);c>=0&&c<=1&&(o[u++]=c),v>=0&&v<=1&&(o[u++]=v)}}return u}function h(t,e,r,n,i,a){var o=(e-t)*i+t,s=(r-e)*i+e,l=(n-r)*i+r,h=(s-o)*i+o,u=(l-s)*i+s,c=(u-h)*i+h;a[0]=t,a[1]=o,a[2]=h,a[3]=c,a[4]=c,a[5]=u,a[6]=l,a[7]=n}function u(t,e,r,n,i,o,s,l,h,u,c){var f,d,v,g,p,m=.005,x=1/0;k[0]=h,k[1]=u;for(var w=0;w<1;w+=.05)C[0]=a(t,r,i,s,w),C[1]=a(e,n,o,l,w),(g=y(k,C))=0&&g=0&&c<=1&&(o[u++]=c)}}else{var f=l*l-4*s*h;if(n(f)){var c=-l/(2*s);c>=0&&c<=1&&(o[u++]=c)}else if(f>0){var d=_(f),c=(-l+d)/(2*s),v=(-l-d)/(2*s);c>=0&&c<=1&&(o[u++]=c),v>=0&&v<=1&&(o[u++]=v)}}return u}function v(t,e,r){var n=t+r-2*e;return 0===n?.5:(t-e)/n}function g(t,e,r,n,i){var a=(e-t)*n+t,o=(r-e)*n+e,s=(o-a)*n+a;i[0]=t,i[1]=a,i[2]=s,i[3]=s,i[4]=o,i[5]=r}function p(t,e,r,n,i,a,o,s,l){var h,u=.005,f=1/0;k[0]=o,k[1]=s;for(var d=0;d<1;d+=.05){C[0]=c(t,r,i,d),C[1]=c(e,n,a,d);var v=y(k,C);v=0&&vA&&(I=0,P={}),I++,P[r]=i,i}function a(t,e,r,n,i,a,l){return a?s(t,e,r,n,i,a,l):o(t,e,r,n,i,l)}function o(t,e,r,n,a,o){var s=m(t,e,a,o),u=i(t,e);a&&(u+=a[1]+a[3]);var c=s.outerHeight,f=l(0,u,r),d=h(0,c,n),v=new _(f,d,u,c);return v.lineHeight=s.lineHeight,v}function s(t,e,r,n,i,a,o){var s=x(t,{rich:a,truncate:o,font:e,textAlign:r,textPadding:i}),u=s.outerWidth,c=s.outerHeight,f=l(0,u,r),d=h(0,c,n);return new _(f,d,u,c)}function l(t,e,r){return"right"===r?t-=e:"center"===r&&(t-=e/2),t}function h(t,e,r){return"middle"===r?t-=e/2:"bottom"===r&&(t-=e),t}function u(t,e,r){var n=e.x,i=e.y,a=e.height,o=e.width,s=a/2,l="left",h="top";switch(t){case"left":n-=r,i+=s,l="right",h="middle";break;case"right":n+=r+o,i+=s,h="middle";break;case"top":n+=o/2,i-=r,l="center",h="bottom";break;case"bottom":n+=o/2,i+=a+r,l="center";break;case"inside":n+=o/2,i+=s,l="center",h="middle";break;case"insideLeft":n+=r,i+=s,h="middle";break;case"insideRight":n+=o-r,i+=s,l="right",h="middle";break;case"insideTop":n+=o/2,i+=r,l="center";break;case"insideBottom":n+=o/2,i+=a-r,l="center",h="bottom";break;case"insideTopLeft":n+=r,i+=r;break;case"insideTopRight":n+=o-r,i+=r,l="right";break;case"insideBottomLeft":n+=r,i+=a-r,h="bottom";break;case"insideBottomRight":n+=o-r,i+=a-r,l="right",h="bottom"}return{x:n,y:i,textAlign:l,textVerticalAlign:h}}function c(t,e,r,n,i){if(!e)return"";var a=(t+"").split("\n");i=f(e,r,n,i);for(var o=0,s=a.length;o=o;l++)s-=o;var h=i(r);return h>s&&(r="",h=0),s=t-h,n.ellipsis=r,n.ellipsisWidth=h,n.contentWidth=s,n.containerWidth=t,n}function d(t,e){var r=e.containerWidth,n=e.font,a=e.contentWidth;if(!r)return"";var o=i(t,n);if(o<=r)return t;for(var s=0;;s++){if(o<=a||s>=e.maxIterations){t+=e.ellipsis;break}var l=0===s?v(t,a,e.ascCharWidth,e.cnCharWidth):o>0?Math.floor(t.length*a/o):0;t=t.substr(0,l),o=i(t,n)}return""===t&&(t=e.placeholder),t}function v(t,e,r,n){for(var i=0,a=0,o=t.length;al)t="",a=[];else if(null!=h)for(var u=f(h-(r?r[1]+r[3]:0),e,n.ellipsis,{minChar:n.minChar,placeholder:n.placeholder}),c=0,v=a.length;ca&&y(r,t.substring(a,o)),y(r,n[2],n[1]),a=O.lastIndex}ap)return{lines:[],width:0,height:0};M.textWidth=i(M.text,I);var D=T.textWidth,L=null==D||"auto"===D;if("string"==typeof D&&"%"===D.charAt(D.length-1))M.percentWidth=D,u.push(M),D=0;else{if(L){D=M.textWidth;var F=T.textBackgroundColor,R=F&&F.image;R&&(R=b.findExistImage(R),b.isImageReady(R)&&(D=Math.max(D,R.width*A/R.height)))}var B=P?P[1]+P[3]:0;D+=B;var z=null!=v?v-_:null;null!=z&&zthis._ux||y(e-this._yi)>this._uy||this._len<5;return this.addData(h.L,t,e),this._ctx&&r&&(this._needsDash()?this._dashedLineTo(t,e):this._ctx.lineTo(t,e)),r&&(this._xi=t,this._yi=e),this},bezierCurveTo:function(t,e,r,n,i,a){return this.addData(h.C,t,e,r,n,i,a),this._ctx&&(this._needsDash()?this._dashedBezierTo(t,e,r,n,i,a):this._ctx.bezierCurveTo(t,e,r,n,i,a)),this._xi=i,this._yi=a,this},quadraticCurveTo:function(t,e,r,n){return this.addData(h.Q,t,e,r,n),this._ctx&&(this._needsDash()?this._dashedQuadraticTo(t,e,r,n):this._ctx.quadraticCurveTo(t,e,r,n)),this._xi=r,this._yi=n,this},arc:function(t,e,r,n,i,a){return this.addData(h.A,t,e,r,r,n,i-n,0,a?0:1),this._ctx&&this._ctx.arc(t,e,r,n,i,a),this._xi=p(i)*r+t,this._yi=m(i)*r+t,this},arcTo:function(t,e,r,n,i){return this._ctx&&this._ctx.arcTo(t,e,r,n,i),this},rect:function(t,e,r,n){return this._ctx&&this._ctx.rect(t,e,r,n),this.addData(h.R,t,e,r,n),this},closePath:function(){this.addData(h.Z);var t=this._ctx,e=this._x0,r=this._y0;return t&&(this._needsDash()&&this._dashedLineTo(e,r),t.closePath()),this._xi=e,this._yi=r,this},fill:function(t){t&&t.fill(),this.toStatic()},stroke:function(t){t&&t.stroke(),this.toStatic()},setLineDash:function(t){if(t instanceof Array){this._lineDash=t,this._dashIdx=0;for(var e=0,r=0;re.length&&(this._expandData(),e=this.data);for(var r=0;r0&&d<=t||u<0&&d>=t||0==u&&(c>0&&p<=e||c<0&&p>=e);)n=this._dashIdx,r=o[n],d+=u*r,p+=c*r,this._dashIdx=(n+1)%m,u>0&&dl||c>0&&ph||s[n%2?"moveTo":"lineTo"](u>=0?v(d,t):g(d,t),c>=0?v(p,e):g(p,e));u=d-t,c=p-e,this._dashOffset=-x(u*u+c*c)},_dashedBezierTo:function(t,e,r,i,a,o){var s,l,h,u,c,f=this._dashSum,d=this._dashOffset,v=this._lineDash,g=this._ctx,p=this._xi,m=this._yi,y=n.cubicAt,w=0,_=this._dashIdx,b=v.length,S=0;for(d<0&&(d=f+d),d%=f,s=0;s<1;s+=.1)l=y(p,t,r,a,s+.1)-y(p,t,r,a,s),h=y(m,e,i,o,s+.1)-y(m,e,i,o,s),w+=x(l*l+h*h);for(;_d);_++);for(s=(S-d)/w;s<=1;)u=y(p,t,r,a,s),c=y(m,e,i,o,s),_%2?g.moveTo(u,c):g.lineTo(u,c),s+=v[_]/w,_=(_+1)%b;_%2!=0&&g.lineTo(a,o),l=a-u,h=o-c,this._dashOffset=-x(l*l+h*h)},_dashedQuadraticTo:function(t,e,r,n){var i=r,a=n;r=(r+2*t)/3,n=(n+2*e)/3,t=(this._xi+2*t)/3,e=(this._yi+2*e)/3,this._dashedBezierTo(t,e,r,n,i,a)},toStatic:function(){var t=this.data;t instanceof Array&&(t.length=this._len,w&&(this.data=new Float32Array(t)))},getBoundingRect:function(){u[0]=u[1]=f[0]=f[1]=Number.MAX_VALUE,c[0]=c[1]=d[0]=d[1]=-Number.MAX_VALUE;for(var t=this.data,e=0,r=0,n=0,s=0,l=0;ll||y(o-i)>u||f===c-1)&&(t.lineTo(a,o),n=a,i=o);break;case h.C:t.bezierCurveTo(s[f++],s[f++],s[f++],s[f++],s[f++],s[f++]),n=s[f-2],i=s[f-1];break;case h.Q:t.quadraticCurveTo(s[f++],s[f++],s[f++],s[f++]),n=s[f-2],i=s[f-1];break;case h.A:var v=s[f++],g=s[f++],x=s[f++],w=s[f++],_=s[f++],b=s[f++],S=s[f++],M=s[f++],T=x>w?x:w,k=x>w?1:x/w,C=x>w?w/x:1,P=Math.abs(x-w)>.001,I=_+b;P?(t.translate(v,g),t.rotate(S),t.scale(k,C),t.arc(0,0,T,_,I,1-M),t.scale(1/k,1/C),t.rotate(-S),t.translate(-v,-g)):t.arc(v,g,T,_,I,1-M),1==f&&(e=p(_)*x+v,r=m(_)*w+g),n=p(I)*x+v,i=m(I)*w+g;break;case h.R:e=n=s[f],r=i=s[f+1],t.rect(s[f++],s[f++],s[f++],s[f++]);break;case h.Z:t.closePath(),n=e,i=r}}}},_.CMD=h;var b=_;t.exports=b},function(e,r){e.exports=t},function(t,e){function r(){var t=new u(6);return n(t),t}function n(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t[4]=0,t[5]=0,t}function i(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t}function a(t,e,r){var n=e[0]*r[0]+e[2]*r[1],i=e[1]*r[0]+e[3]*r[1],a=e[0]*r[2]+e[2]*r[3],o=e[1]*r[2]+e[3]*r[3],s=e[0]*r[4]+e[2]*r[5]+e[4],l=e[1]*r[4]+e[3]*r[5]+e[5];return t[0]=n,t[1]=i,t[2]=a,t[3]=o,t[4]=s,t[5]=l,t}function o(t,e,r){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4]+r[0],t[5]=e[5]+r[1],t}function s(t,e,r){var n=e[0],i=e[2],a=e[4],o=e[1],s=e[3],l=e[5],h=Math.sin(r),u=Math.cos(r);return t[0]=n*u+o*h,t[1]=-n*h+o*u,t[2]=i*u+s*h,t[3]=-i*h+u*s,t[4]=u*a+h*l,t[5]=u*l-h*a,t}function l(t,e,r){var n=r[0],i=r[1];return t[0]=e[0]*n,t[1]=e[1]*i,t[2]=e[2]*n,t[3]=e[3]*i,t[4]=e[4]*n,t[5]=e[5]*i,t}function h(t,e){var r=e[0],n=e[2],i=e[4],a=e[1],o=e[3],s=e[5],l=r*o-a*n;return l?(l=1/l,t[0]=o*l,t[1]=-a*l,t[2]=-n*l,t[3]=r*l,t[4]=(n*s-o*i)*l,t[5]=(a*i-r*s)*l,t):null}var u="undefined"==typeof Float32Array?Array:Float32Array;e.create=r,e.identity=n,e.copy=i,e.mul=a,e.translate=o,e.rotate=s,e.scale=l,e.invert=h},function(t,e,r){function n(t){return t.replace(/^\s+/,"").replace(/\s+$/,"")}function i(t,e,r,n){var i=e[1]-e[0],a=r[1]-r[0];if(0===i)return 0===a?r[0]:(r[0]+r[1])/2;if(n)if(i>0){if(t<=e[0])return r[0];if(t>=e[1])return r[1]}else{if(t>=e[0])return r[0];if(t<=e[1])return r[1]}else{if(t===e[0])return r[0];if(t===e[1])return r[1]}return(t-e[0])/i*a+r[0]}function a(t,e){switch(t){case"center":case"middle":t="50%";break;case"left":case"top":t="0%";break;case"right":case"bottom":t="100%"}return"string"==typeof t?n(t).match(/%$/)?parseFloat(t)/100*e:parseFloat(t):null==t?NaN:+t}function o(t,e,r){return null==e&&(e=10),e=Math.min(Math.max(0,e),20),t=(+t).toFixed(e),r?t:+t}function s(t){return t.sort(function(t,e){return t-e}),t}function l(t){if(t=+t,isNaN(t))return 0;for(var e=1,r=0;Math.round(t*e)/e!==t;)e*=10,r++;return r}function h(t){var e=t.toString(),r=e.indexOf("e");if(r>0){var n=+e.slice(r+1);return n<0?-n:0}var i=e.indexOf(".");return i<0?0:e.length-1-i}function u(t,e){var r=Math.log,n=Math.LN10,i=Math.floor(r(t[1]-t[0])/n),a=Math.round(r(Math.abs(e[1]-e[0]))/n),o=Math.min(Math.max(-i+a,0),20);return isFinite(o)?o:20}function c(t,e,r){if(!t[e])return 0;var n=w.reduce(t,function(t,e){return t+(isNaN(e)?0:e)},0);if(0===n)return 0;for(var i=Math.pow(10,r),a=w.map(t,function(t){return(isNaN(t)?0:t)/n*i*100}),o=100*i,s=w.map(a,function(t){return Math.floor(t)}),l=w.reduce(s,function(t,e){return t+e},0),h=w.map(a,function(t,e){return t-s[e]});lu&&(u=h[f],c=f);++s[c],h[c]=0,++l}return s[e]/i}function f(t){var e=2*Math.PI;return(t%e+e)%e}function d(t){return t>-_&&t<_}function v(t){if(t instanceof Date)return t;if("string"==typeof t){var e=b.exec(t);if(!e)return new Date(NaN);if(e[8]){var r=+e[4]||0;return"Z"!==e[8].toUpperCase()&&(r-=e[8].slice(0,3)),new Date(Date.UTC(+e[1],+(e[2]||1)-1,+e[3]||1,r,+(e[5]||0),+e[6]||0,+e[7]||0))}return new Date(+e[1],+(e[2]||1)-1,+e[3]||1,+e[4]||0,+(e[5]||0),+e[6]||0,+e[7]||0)}return null==t?new Date(NaN):new Date(Math.round(t))}function g(t){return Math.pow(10,p(t))}function p(t){return Math.floor(Math.log(t)/Math.LN10)}function m(t,e){var r,n=p(t),i=Math.pow(10,n),a=t/i;return r=e?a<1.5?1:a<2.5?2:a<4?3:a<7?5:10:a<1?1:a<2?2:a<3?3:a<5?5:10,t=r*i,n>=-20?+t.toFixed(n<0?-n:0):t}function x(t){function e(t,r,n){return t.interval[n]=0}var w=r(0),_=1e-4,b=/^(?:(\d{4})(?:[-\/](\d{1,2})(?:[-\/](\d{1,2})(?:[T ](\d{1,2})(?::(\d\d)(?::(\d\d)(?:[.,](\d+))?)?)?(Z|[\+\-]\d\d:?\d\d)?)?)?)?)?$/;e.linearMap=i,e.parsePercent=a,e.round=o,e.asc=s,e.getPrecision=l,e.getPrecisionSafe=h,e.getPixelPrecision=u,e.getPercentWithPrecision=c,e.MAX_SAFE_INTEGER=9007199254740991,e.remRadian=f,e.isRadianAroundZero=d,e.parseDate=v,e.quantity=g,e.nice=m,e.reformIntervals=x,e.isNumeric=y},function(t,e,r){function n(t){if("string"==typeof t){var e=l.get(t);return e&&e.image}return t}function i(t,e,r,n,i){if(t){if("string"==typeof t){if(e&&e.__zrImageSrc===t||!r)return e;var s=l.get(t),h={hostEl:r,cb:n,cbPayload:i};return s?(e=s.image,!o(e)&&s.pending.push(h)):(!e&&(e=new Image),e.onload=a,l.put(t,e.__cachedImgObj={image:e,pending:[h]}),e.src=e.__zrImageSrc=t),e}return t}return e}function a(){var t=this.__cachedImgObj;this.onload=this.__cachedImgObj=null;for(var e=0;e=0||n&&i.indexOf(n,s)<0)){var l=e.getShallow(s);null!=l&&(a[t[o][0]]=l)}}return a}}var i=r(0);t.exports=n},function(t,e,r){function n(t){t=t||{},o.call(this,t);for(var e in t)t.hasOwnProperty(e)&&"style"!==e&&(this[e]=t[e]);this.style=new a(t.style,this),this._rect=null,this.__clipPaths=[]}var i=r(0),a=r(40),o=r(16),s=r(48);n.prototype={constructor:n,type:"displayable",__dirty:!0,invisible:!1,z:0,z2:0,zlevel:0,draggable:!1,dragging:!1,silent:!1,culling:!1,cursor:"pointer",rectHover:!1,progressive:-1,beforeBrush:function(t){},afterBrush:function(t){},brush:function(t,e){},getBoundingRect:function(){},contain:function(t,e){return this.rectContain(t,e)},traverse:function(t,e){t.call(e,this)},rectContain:function(t,e){var r=this.transformCoordToLocal(t,e);return this.getBoundingRect().contain(r[0],r[1])},dirty:function(){this.__dirty=!0,this._rect=null,this.__zr&&this.__zr.refresh()},animateStyle:function(t){return this.animate("style",t)},attrKV:function(t,e){"style"!==t?o.prototype.attrKV.call(this,t,e):this.style.set(e)},setStyle:function(t,e){return this.style.set(t,e),this.dirty(!1),this},useStyle:function(t){return this.style=new a(t,this),this.dirty(!1),this}},i.inherits(n,o),i.mixin(n,s);var l=n;t.exports=l},function(t,e,r){function n(t){return isNaN(t)?"-":(t=(t+"").split("."),t[0].replace(/(\d{1,3})(?=(?:\d{3})+(?!\d))/g,"$1,")+(t.length>1?"."+t[1]:""))}function i(t,e){return t=(t||"").toLowerCase().replace(/-(.)/g,function(t,e){return e.toUpperCase()}),e&&t&&(t=t.charAt(0).toUpperCase()+t.slice(1)),t}function a(t){return String(t).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function o(t,e,r){c.isArray(e)||(e=[e]);var n=e.length;if(!n)return"";for(var i=e[0].$vars||[],o=0;o':""}function h(t,e,r){"week"!==t&&"month"!==t&&"quarter"!==t&&"half-year"!==t&&"year"!==t||(t="MM-dd\nyyyy");var n=d.parseDate(e),i=r?"UTC":"",a=n["get"+i+"FullYear"](),o=n["get"+i+"Month"]()+1,s=n["get"+i+"Date"](),l=n["get"+i+"Hours"](),h=n["get"+i+"Minutes"](),u=n["get"+i+"Seconds"]();return t=t.replace("MM",m(o)).replace("M",o).replace("yyyy",a).replace("yy",a%100).replace("dd",m(s)).replace("d",s).replace("hh",m(l)).replace("h",l).replace("mm",m(h)).replace("m",h).replace("ss",m(u)).replace("s",u)}function u(t){return t?t.charAt(0).toUpperCase()+t.substr(1):t}var c=r(0),f=r(5),d=r(9),v=c.normalizeCssArray,g=["a","b","c","d","e","f","g"],p=function(t,e){return"{"+t+(null==e?"":e)+"}"},m=function(t){return t<10?"0"+t:t},x=f.truncateText,y=f.getBoundingRect;e.addCommas=n,e.toCamelCase=i,e.normalizeCssArray=v,e.encodeHTML=a,e.formatTpl=o,e.formatTplSimple=s,e.getTooltipMarker=l,e.formatTime=h,e.capitalFirst=u,e.truncateText=x,e.getTextRect=y},function(t,e){var r=function(){this.head=null,this.tail=null,this._len=0},n=r.prototype;n.insert=function(t){var e=new i(t);return this.insertEntry(e),e},n.insertEntry=function(t){this.head?(this.tail.next=t,t.prev=this.tail,t.next=null,this.tail=t):this.head=this.tail=t,this._len++},n.remove=function(t){var e=t.prev,r=t.next;e?e.next=r:this.head=r,r?r.prev=e:this.tail=e,t.next=t.prev=null,this._len--},n.len=function(){return this._len},n.clear=function(){this.head=this.tail=null,this._len=0};var i=function(t){this.value=t,this.next,this.prev},a=function(t){this._list=new r,this._map={},this._maxSize=t||10,this._lastRemovedEntry=null},o=a.prototype;o.put=function(t,e){var r=this._list,n=this._map,a=null;if(null==n[t]){var o=r.len(),s=this._lastRemovedEntry;if(o>=this._maxSize&&o>0){var l=r.head;r.remove(l),delete n[l.key],a=l.value,this._lastRemovedEntry=l}s?s.value=e:s=new i(e),s.key=t,r.insertEntry(s),n[t]=s}return a},o.get=function(t){var e=this._map[t],r=this._list;if(null!=e)return e!==r.tail&&(r.remove(e),r.insertEntry(e)),e.value},o.clear=function(){this._list.clear(),this._map={}};var s=a;t.exports=s},function(t,e){var r={};r="undefined"==typeof navigator?{browser:{},os:{},node:!0,canvasSupported:!0,svgSupported:!0}:function(t){var e={},r={},n=t.match(/Firefox\/([\d.]+)/),i=t.match(/MSIE\s([\d.]+)/)||t.match(/Trident\/.+?rv:(([\d.]+))/),a=t.match(/Edge\/([\d.]+)/),o=/micromessenger/i.test(t);return n&&(r.firefox=!0,r.version=n[1]),i&&(r.ie=!0,r.version=i[1]),a&&(r.edge=!0,r.version=a[1]),o&&(r.weChat=!0),{browser:r,os:e,node:!1,canvasSupported:!!document.createElement("canvas").getContext,svgSupported:"undefined"!=typeof SVGRect,touchEventsSupported:"ontouchstart"in window&&!r.ie&&!r.edge,pointerEventsSupported:"onpointerdown"in window&&(r.edge||r.ie&&r.version>=11)}}(navigator.userAgent);var n=r;t.exports=n},function(t,e,r){var n=r(41),i=r(42),a=r(17),o=r(43),s=r(0),l=function(t){a.call(this,t),i.call(this,t),o.call(this,t),this.id=t.id||n()};l.prototype={type:"element",name:"",__zr:null,ignore:!1,clipPath:null,drift:function(t,e){switch(this.draggable){case"horizontal":e=0;break;case"vertical":t=0}var r=this.transform;r||(r=this.transform=[1,0,0,1,0,0]),r[4]+=t,r[5]+=e,this.decomposeTransform(),this.dirty(!1)},beforeUpdate:function(){},afterUpdate:function(){},update:function(){this.updateTransform()},traverse:function(t,e){},attrKV:function(t,e){if("position"===t||"scale"===t||"origin"===t){if(e){var r=this[t];r||(r=this[t]=[]),r[0]=e[0],r[1]=e[1]}}else this[t]=e},hide:function(){this.ignore=!0,this.__zr&&this.__zr.refresh()},show:function(){this.ignore=!1,this.__zr&&this.__zr.refresh()},attr:function(t,e){if("string"==typeof t)this.attrKV(t,e);else if(s.isObject(t))for(var r in t)t.hasOwnProperty(r)&&this.attrKV(r,t[r]);return this.dirty(!1),this},setClipPath:function(t){var e=this.__zr;e&&t.addSelfToZr(e),this.clipPath&&this.clipPath!==t&&this.removeClipPath(),this.clipPath=t,t.__zr=e,t.__clipTarget=this,this.dirty(!1)},removeClipPath:function(){var t=this.clipPath;t&&(t.__zr&&t.removeSelfFromZr(t.__zr),t.__zr=null,t.__clipTarget=null,this.clipPath=null,this.dirty(!1))},addSelfToZr:function(t){this.__zr=t;var e=this.animators;if(e)for(var r=0;rs||t<-s}var i=r(8),a=r(2),o=i.identity,s=5e-5,l=function(t){t=t||{},t.position||(this.position=[0,0]),null==t.rotation&&(this.rotation=0),t.scale||(this.scale=[1,1]),this.origin=this.origin||null},h=l.prototype;h.transform=null,h.needLocalTransform=function(){return n(this.rotation)||n(this.position[0])||n(this.position[1])||n(this.scale[0]-1)||n(this.scale[1]-1)},h.updateTransform=function(){var t=this.parent,e=t&&t.transform,r=this.needLocalTransform(),n=this.transform;if(!r&&!e)return void(n&&o(n));n=n||i.create(),r?this.getLocalTransform(n):o(n),e&&(r?i.mul(n,t.transform,n):i.copy(n,t.transform)),this.transform=n,this.invTransform=this.invTransform||i.create(),i.invert(this.invTransform,n)},h.getLocalTransform=function(t){return l.getLocalTransform(this,t)},h.setTransform=function(t){var e=this.transform,r=t.dpr||1;e?t.setTransform(r*e[0],r*e[1],r*e[2],r*e[3],r*e[4],r*e[5]):t.setTransform(r,0,0,r,0,0)},h.restoreTransform=function(t){var e=t.dpr||1;t.setTransform(e,0,0,e,0,0)};var u=[];h.decomposeTransform=function(){if(this.transform){var t=this.parent,e=this.transform;t&&t.transform&&(i.mul(u,t.invTransform,e),e=u);var r=e[0]*e[0]+e[1]*e[1],a=e[2]*e[2]+e[3]*e[3],o=this.position,s=this.scale;n(r-1)&&(r=Math.sqrt(r)),n(a-1)&&(a=Math.sqrt(a)),e[0]<0&&(r=-r),e[3]<0&&(a=-a),o[0]=e[4],o[1]=e[5],s[0]=r,s[1]=a,this.rotation=Math.atan2(-e[1]/a,e[0]/r)}},h.getGlobalScale=function(){var t=this.transform;if(!t)return[1,1];var e=Math.sqrt(t[0]*t[0]+t[1]*t[1]),r=Math.sqrt(t[2]*t[2]+t[3]*t[3]);return t[0]<0&&(e=-e),t[3]<0&&(r=-r),[e,r]},h.transformCoordToLocal=function(t,e){var r=[t,e],n=this.invTransform;return n&&a.applyTransform(r,r,n),r},h.transformCoordToGlobal=function(t,e){var r=[t,e],n=this.transform;return n&&a.applyTransform(r,r,n),r},l.getLocalTransform=function(t,e){e=e||[],o(e);var r=t.origin,n=t.scale||[1,1],a=t.rotation||0,s=t.position||[0,0];return r&&(e[4]-=r[0],e[5]-=r[1]),i.scale(e,e,n),a&&i.rotate(e,e,a),r&&(e[4]+=r[0],e[5]+=r[1]),e[4]+=s[0],e[5]+=s[1],e};var c=l;t.exports=c},function(t,e,r){function n(t){return t=Math.round(t),t<0?0:t>255?255:t}function i(t){return t=Math.round(t),t<0?0:t>360?360:t}function a(t){return t<0?0:t>1?1:t}function o(t){return n(t.length&&"%"===t.charAt(t.length-1)?parseFloat(t)/100*255:parseInt(t,10))}function s(t){return a(t.length&&"%"===t.charAt(t.length-1)?parseFloat(t)/100:parseFloat(t))}function l(t,e,r){return r<0?r+=1:r>1&&(r-=1),6*r<1?t+(e-t)*r*6:2*r<1?e:3*r<2?t+(e-t)*(2/3-r)*6:t}function h(t,e,r){return t+(e-t)*r}function u(t,e,r,n,i){return t[0]=e,t[1]=r,t[2]=n,t[3]=i,t}function c(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t}function f(t,e){k&&c(k,e),k=T.put(t,k||e.slice())}function d(t,e){if(t){e=e||[];var r=T.get(t);if(r)return c(e,r);t+="";var n=t.replace(/ /g,"").toLowerCase();if(n in M)return c(e,M[n]),f(t,e),e;if("#"!==n.charAt(0)){var i=n.indexOf("("),a=n.indexOf(")");if(-1!==i&&a+1===n.length){var l=n.substr(0,i),h=n.substr(i+1,a-(i+1)).split(","),d=1;switch(l){case"rgba":if(4!==h.length)return void u(e,0,0,0,1);d=s(h.pop());case"rgb":return 3!==h.length?void u(e,0,0,0,1):(u(e,o(h[0]),o(h[1]),o(h[2]),d),f(t,e),e);case"hsla":return 4!==h.length?void u(e,0,0,0,1):(h[3]=s(h[3]),v(h,e),f(t,e),e);case"hsl":return 3!==h.length?void u(e,0,0,0,1):(v(h,e),f(t,e),e);default:return}}u(e,0,0,0,1)}else{if(4===n.length){var g=parseInt(n.substr(1),16);return g>=0&&g<=4095?(u(e,(3840&g)>>4|(3840&g)>>8,240&g|(240&g)>>4,15&g|(15&g)<<4,1),f(t,e),e):void u(e,0,0,0,1)}if(7===n.length){var g=parseInt(n.substr(1),16);return g>=0&&g<=16777215?(u(e,(16711680&g)>>16,(65280&g)>>8,255&g,1),f(t,e),e):void u(e,0,0,0,1)}}}}function v(t,e){var r=(parseFloat(t[0])%360+360)%360/360,i=s(t[1]),a=s(t[2]),o=a<=.5?a*(i+1):a+i-a*i,h=2*a-o;return e=e||[],u(e,n(255*l(h,o,r+1/3)),n(255*l(h,o,r)),n(255*l(h,o,r-1/3)),1),4===t.length&&(e[3]=t[3]),e}function g(t){if(t){var e,r,n=t[0]/255,i=t[1]/255,a=t[2]/255,o=Math.min(n,i,a),s=Math.max(n,i,a),l=s-o,h=(s+o)/2;if(0===l)e=0,r=0;else{r=h<.5?l/(s+o):l/(2-s-o);var u=((s-n)/6+l/2)/l,c=((s-i)/6+l/2)/l,f=((s-a)/6+l/2)/l;n===s?e=f-c:i===s?e=1/3+u-f:a===s&&(e=2/3+c-u),e<0&&(e+=1),e>1&&(e-=1)}var d=[360*e,r,h];return null!=t[3]&&d.push(t[3]),d}}function p(t,e){var r=d(t);if(r){for(var n=0;n<3;n++)r[n]=e<0?r[n]*(1-e)|0:(255-r[n])*e+r[n]|0;return b(r,4===r.length?"rgba":"rgb")}}function m(t){var e=d(t);if(e)return((1<<24)+(e[0]<<16)+(e[1]<<8)+ +e[2]).toString(16).slice(1)}function x(t,e,r){if(e&&e.length&&t>=0&&t<=1){r=r||[];var i=t*(e.length-1),o=Math.floor(i),s=Math.ceil(i),l=e[o],u=e[s],c=i-o;return r[0]=n(h(l[0],u[0],c)),r[1]=n(h(l[1],u[1],c)),r[2]=n(h(l[2],u[2],c)),r[3]=a(h(l[3],u[3],c)),r}}function y(t,e,r){if(e&&e.length&&t>=0&&t<=1){var i=t*(e.length-1),o=Math.floor(i),s=Math.ceil(i),l=d(e[o]),u=d(e[s]),c=i-o,f=b([n(h(l[0],u[0],c)),n(h(l[1],u[1],c)),n(h(l[2],u[2],c)),a(h(l[3],u[3],c))],"rgba");return r?{color:f,leftIndex:o,rightIndex:s,value:i}:f}}function w(t,e,r,n){if(t=d(t))return t=g(t),null!=e&&(t[0]=i(e)),null!=r&&(t[1]=s(r)),null!=n&&(t[2]=s(n)),b(v(t),"rgba")}function _(t,e){if((t=d(t))&&null!=e)return t[3]=a(e),b(t,"rgba")}function b(t,e){if(t&&t.length){var r=t[0]+","+t[1]+","+t[2];return"rgba"!==e&&"hsva"!==e&&"hsla"!==e||(r+=","+t[3]),e+"("+r+")"}}var S=r(14),M={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]},T=new S(20),k=null,C=x,P=y;e.parse=d,e.lift=p,e.toHex=m,e.fastLerp=x,e.fastMapToColor=C,e.lerp=y,e.mapToColor=P,e.modifyHSL=w,e.modifyAlpha=_,e.stringify=b},function(t,e){var r=1;"undefined"!=typeof window&&(r=Math.max(window.devicePixelRatio||1,1));var n=r;e.debugMode=0,e.devicePixelRatio=n},function(t,e,r){function n(t){return i(t),M(t.rich,i),t}function i(t){if(t){t.font=P.makeFont(t);var e=t.textAlign;"middle"===e&&(e="center"),t.textAlign=null==e||O[e]?e:"left";var r=t.textVerticalAlign||t.textBaseline;"center"===r&&(r="middle"),t.textVerticalAlign=null==r||D[r]?r:"top";t.textPadding&&(t.textPadding=T(t.textPadding))}}function a(t,e,r,n,i){n.rich?s(t,e,r,n,i):o(t,e,r,n,i)}function o(t,e,r,n,i){var a=g(e,"font",n.font||P.DEFAULT_FONT),o=n.textPadding,s=t.__textCotentBlock;s&&!t.__dirty||(s=t.__textCotentBlock=P.parsePlainText(r,a,o,n.truncate));var l=s.outerHeight,u=s.lines,d=s.lineHeight,x=v(l,n,i),w=x.baseX,_=x.baseY,b=x.textAlign,S=x.textVerticalAlign;h(e,n,i,w,_);var M=P.adjustTextY(_,l,S),T=w,k=M,C=c(n);if(C||o){var I=P.getWidth(r,a),A=I;o&&(A+=o[1]+o[3]);var O=P.adjustTextX(w,A,b);C&&f(t,e,n,O,M,A,l),o&&(T=y(w,b,o),k+=o[0])}g(e,"textAlign",b||"left"),g(e,"textBaseline","middle"),g(e,"shadowBlur",n.textShadowBlur||0),g(e,"shadowColor",n.textShadowColor||"transparent"),g(e,"shadowOffsetX",n.textShadowOffsetX||0),g(e,"shadowOffsetY",n.textShadowOffsetY||0),k+=d/2;var D=n.textStrokeWidth,L=p(n.textStroke,D),F=m(n.textFill);L&&(g(e,"lineWidth",D),g(e,"strokeStyle",L)),F&&g(e,"fillStyle",F);for(var R=0;R=0&&(T=C[R],"right"===T.textAlign);)u(t,e,T,n,A,b,F,"right"),O-=T.width,F-=T.width,R--;for(L+=(a-(L-_)-(S-F)-O)/2;D<=R;)T=C[D],u(t,e,T,n,A,b,L+T.width/2,"center"),L+=T.width,D++;b+=A}}function h(t,e,r,n,i){if(r&&e.textRotation){var a=e.textOrigin;"center"===a?(n=r.width/2+r.x,i=r.height/2+r.y):a&&(n=a[0]+r.x,i=a[1]+r.y),t.translate(n,i),t.rotate(-e.textRotation),t.translate(-n,-i)}}function u(t,e,r,n,i,a,o,s){var l=n.rich[r.styleName]||{},h=r.textVerticalAlign,u=a+i/2;"top"===h?u=a+r.height/2:"bottom"===h&&(u=a+i-r.height/2),!r.isLineHolder&&c(l)&&f(t,e,l,"right"===s?o-r.width:"center"===s?o-r.width/2:o,u-r.height/2,r.width,r.height);var d=r.textPadding;d&&(o=y(o,s,d),u-=r.height/2-d[2]-r.textHeight/2),g(e,"shadowBlur",S(l.textShadowBlur,n.textShadowBlur,0)),g(e,"shadowColor",l.textShadowColor||n.textShadowColor||"transparent"),g(e,"shadowOffsetX",S(l.textShadowOffsetX,n.textShadowOffsetX,0)),g(e,"shadowOffsetY",S(l.textShadowOffsetY,n.textShadowOffsetY,0)),g(e,"textAlign",s),g(e,"textBaseline","middle"),g(e,"font",r.font||P.DEFAULT_FONT);var v=p(l.textStroke||n.textStroke,w),x=m(l.textFill||n.textFill),w=b(l.textStrokeWidth,n.textStrokeWidth);v&&(g(e,"lineWidth",w),g(e,"strokeStyle",v),e.strokeText(r.text,o,u)),x&&(g(e,"fillStyle",x),e.fillText(r.text,o,u))}function c(t){return t.textBackgroundColor||t.textBorderWidth&&t.textBorderColor}function f(t,e,r,n,i,a,o){var s=r.textBackgroundColor,l=r.textBorderWidth,h=r.textBorderColor,u=k(s);if(g(e,"shadowBlur",r.textBoxShadowBlur||0),g(e,"shadowColor",r.textBoxShadowColor||"transparent"),g(e,"shadowOffsetX",r.textBoxShadowOffsetX||0),g(e,"shadowOffsetY",r.textBoxShadowOffsetY||0),u||l&&h){e.beginPath();var c=r.textBorderRadius;c?I.buildPath(e,{x:n,y:i,width:a,height:o,r:c}):e.rect(n,i,a,o),e.closePath()}if(u)g(e,"fillStyle",s),e.fill();else if(C(s)){var f=s.image;f=A.createOrUpdateImage(f,null,t,d,s),f&&A.isImageReady(f)&&e.drawImage(f,n,i,a,o)}l&&h&&(g(e,"lineWidth",l),g(e,"strokeStyle",h),e.stroke())}function d(t,e){e.image=t}function v(t,e,r){var n=e.x||0,i=e.y||0,a=e.textAlign,o=e.textVerticalAlign;if(r){var s=e.textPosition;if(s instanceof Array)n=r.x+x(s[0],r.width),i=r.y+x(s[1],r.height);else{var l=P.adjustTextPositionOnRect(s,r,e.textDistance);n=l.x,i=l.y,a=a||l.textAlign,o=o||l.textVerticalAlign}var h=e.textOffset;h&&(n+=h[0],i+=h[1])}return{baseX:n,baseY:i,textAlign:a,textVerticalAlign:o}}function g(t,e,r){return t[e]=r,t[e]}function p(t,e){return null==t||e<=0||"transparent"===t||"none"===t?null:t.image||t.colorStops?"#000":t}function m(t){return null==t||"none"===t?null:t.image||t.colorStops?"#000":t}function x(t,e){return"string"==typeof t?t.lastIndexOf("%")>=0?parseFloat(t)/100*e:parseFloat(t):t}function y(t,e,r){return"right"===e?t-r[1]:"center"===e?t+r[3]/2-r[1]/2:t+r[3]}function w(t,e){return null!=t&&(t||e.textBackgroundColor||e.textBorderWidth&&e.textBorderColor||e.textPadding)}var _=r(0),b=_.retrieve2,S=_.retrieve3,M=_.each,T=_.normalizeCssArray,k=_.isString,C=_.isObject,P=r(5),I=r(21),A=r(10),O={left:1,right:1,center:1},D={top:1,bottom:1,middle:1};e.normalizeTextStyle=n,e.renderText=a,e.getStroke=p,e.getFill=m,e.needDrawText=w},function(t,e){function r(t,e){var r,n,i,a,o=e.x,s=e.y,l=e.width,h=e.height,u=e.r;l<0&&(o+=l,l=-l),h<0&&(s+=h,h=-h),"number"==typeof u?r=n=i=a=u:u instanceof Array?1===u.length?r=n=i=a=u[0]:2===u.length?(r=i=u[0],n=a=u[1]):3===u.length?(r=u[0],n=a=u[1],i=u[2]):(r=u[0],n=u[1],i=u[2],a=u[3]):r=n=i=a=0;var c;r+n>l&&(c=r+n,r*=l/c,n*=l/c),i+a>l&&(c=i+a,i*=l/c,a*=l/c),n+i>h&&(c=n+i,n*=h/c,i*=h/c),r+a>h&&(c=r+a,r*=h/c,a*=h/c),t.moveTo(o+r,s),t.lineTo(o+l-n,s),0!==n&&t.quadraticCurveTo(o+l,s,o+l,s+n),t.lineTo(o+l,s+h-i),0!==i&&t.quadraticCurveTo(o+l,s+h,o+l-i,s+h),t.lineTo(o+a,s+h),0!==a&&t.quadraticCurveTo(o,s+h,o,s+h-a),t.lineTo(o,s+r),0!==r&&t.quadraticCurveTo(o,s,o+r,s)}e.buildPath=r},function(t,e){function r(t){return t%=n,t<0&&(t+=n),t}var n=2*Math.PI;e.normalizeRadian=r},function(t,e,r){function n(t,e,r){var n=e.points,o=e.smooth;if(n&&n.length>=2){if(o&&"spline"!==o){var s=a(n,o,r,e.smoothConstraint);t.moveTo(n[0][0],n[0][1]);for(var l=n.length,h=0;h<(r?l:l-1);h++){var u=s[2*h],c=s[2*h+1],f=n[(h+1)%l];t.bezierCurveTo(u[0],u[1],c[0],c[1],f[0],f[1])}}else{"spline"===o&&(n=i(n,r)),t.moveTo(n[0][0],n[0][1]);for(var h=1,d=n.length;h128){var l=r.data[o]+r.data[o+1]+r.data[o+2];i+=l,++a}}for(var h=i/a,o=0;oh?(n.data[o]=0,n.data[o+1]=0,n.data[o+2]=0,n.data[o+3]=0):(n.data[o]=255,n.data[o+1]=255,n.data[o+2]=255,n.data[o+3]=255)}e.putImageData(n,0,0)}var i=r(7),a=r(27);r(28),r(77);var o=r(78);if(!o.isSupported)throw new Error("Sorry your browser not support wordCloud");i.registerLayout(function(t,e){t.eachSeriesByType("wordCloud",function(r){function s(t){var e=t.detail.item;t.detail.drawn&&r.layoutInstance.ondraw&&(t.detail.drawn.gx+=l.x/m,t.detail.drawn.gy+=l.y/m,r.layoutInstance.ondraw(e[0],e[1],e[2],t.detail.drawn))}var l=a.getLayoutRect(r.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()}),h=r.getData(),u=document.createElement("canvas");u.width=l.width,u.height=l.height;var c=u.getContext("2d"),f=r.get("maskImage");if(f)try{c.drawImage(f,0,0,u.width,u.height),n(u)}catch(t){console.error("Invalid mask image"),console.error(t.toString())}var d=r.get("sizeRange"),v=r.get("rotationRange"),g=h.getDataExtent("value"),p=Math.PI/180,m=r.get("gridSize");o(u,{list:h.mapArray("value",function(t,e){var r=h.getItemModel(e);return[h.getName(e),r.get("textStyle.normal.textSize",!0)||i.number.linearMap(t,g,d),e]}).sort(function(t,e){return e[1]-t[1]}),fontFamily:r.get("textStyle.normal.fontFamily")||r.get("textStyle.emphasis.fontFamily")||t.get("textStyle.fontFamily"),fontWeight:r.get("textStyle.normal.fontWeight")||r.get("textStyle.emphasis.fontWeight")||t.get("textStyle.fontWeight"),gridSize:m,ellipticity:l.height/l.width,minRotation:v[0]*p,maxRotation:v[1]*p,clearCanvas:!f,rotateRatio:1,rotationStep:r.get("rotationStep")*p,drawOutOfBound:r.get("drawOutOfBound"),shuffle:!1,shape:r.get("shape")}),u.addEventListener("wordclouddrawn",s),r.layoutInstance&&r.layoutInstance.dispose(),r.layoutInstance={ondraw:null,dispose:function(){u.removeEventListener("wordclouddrawn",s),u.addEventListener("wordclouddrawn",function(t){t.preventDefault()})}}})}),i.registerPreprocessor(function(t){function e(t){t&&i.util.each(n,function(e){t.hasOwnProperty(e)&&(t["text"+i.format.capitalFirst(e)]=t[e])})}var r=(t||{}).series;!i.util.isArray(r)&&(r=r?[r]:[]);var n=["shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY"];i.util.each(r,function(t){if(t&&"wordCloud"===t.type){var r=t.textStyle||{};e(r.normal),e(r.emphasis)}})})},function(t,e,r){function n(t,e,r,n,i){var a=0,o=0;null==n&&(n=1/0),null==i&&(i=1/0);var s=0;e.eachChild(function(l,h){var u,c,f=l.position,d=l.getBoundingRect(),v=e.childAt(h+1),g=v&&v.getBoundingRect();if("horizontal"===t){var p=d.width+(g?-g.x+d.x:0);u=a+p,u>n||l.newline?(a=0,u=p,o+=s+r,s=d.height):s=Math.max(s,d.height)}else{var m=d.height+(g?-g.y+d.y:0);c=o+m,c>i||l.newline?(a+=s+r,o=0,c=m,s=d.width):s=Math.max(s,d.width)}l.newline||(f[0]=a,f[1]=o,"horizontal"===t?a=u+r:o=c+r)})}function i(t,e,r){var n=e.width,i=e.height,a=v(t.x,n),o=v(t.y,i),s=v(t.x2,n),l=v(t.y2,i);return(isNaN(a)||isNaN(parseFloat(t.x)))&&(a=0),(isNaN(s)||isNaN(parseFloat(t.x2)))&&(s=n),(isNaN(o)||isNaN(parseFloat(t.y)))&&(o=0),(isNaN(l)||isNaN(parseFloat(t.y2)))&&(l=i),r=g.normalizeCssArray(r||0),{width:Math.max(s-a-r[1]-r[3],0),height:Math.max(l-o-r[0]-r[2],0)}}function a(t,e,r){r=g.normalizeCssArray(r||0);var n=e.width,i=e.height,a=v(t.left,n),o=v(t.top,i),s=v(t.right,n),l=v(t.bottom,i),h=v(t.width,n),u=v(t.height,i),c=r[2]+r[0],d=r[1]+r[3],p=t.aspect;switch(isNaN(h)&&(h=n-s-d-a),isNaN(u)&&(u=i-l-c-o),null!=p&&(isNaN(h)&&isNaN(u)&&(p>n/i?h=.8*n:u=.8*i),isNaN(h)&&(h=p*u),isNaN(u)&&(u=h/p)),isNaN(a)&&(a=n-s-h-d),isNaN(o)&&(o=i-l-u-c),t.left||t.right){case"center":a=n/2-h/2-r[3];break;case"right":a=n-h-d}switch(t.top||t.bottom){case"middle":case"center":o=i/2-u/2-r[0];break;case"bottom":o=i-u-c}a=a||0,o=o||0,isNaN(h)&&(h=n-d-a-(s||0)),isNaN(u)&&(u=i-c-o-(l||0));var m=new f(a+r[3],o+r[0],h,u);return m.margin=r,m}function o(t,e,r,n,i){var o=!i||!i.hv||i.hv[0],s=!i||!i.hv||i.hv[1],l=i&&i.boundingMode||"all";if(o||s){var h;if("raw"===l)h="group"===t.type?new f(0,0,+e.width||0,+e.height||0):t.getBoundingRect();else if(h=t.getBoundingRect(),t.needLocalTransform()){var u=t.getLocalTransform();h=h.clone(),h.applyTransform(u)}e=a(c.defaults({width:h.width,height:h.height},e),r,n);var d=t.position,v=o?e.x-h.x:0,g=s?e.y-h.y:0;t.attr("position","raw"===l?[v,g]:[d[0]+v,d[1]+g])}}function s(t,e){return null!=t[x[e][0]]||null!=t[x[e][1]]&&null!=t[x[e][2]]}function l(t,e,r){function n(r,n){var o={},l=0,h={},u=0;if(p(r,function(e){h[e]=t[e]}),p(r,function(t){i(e,t)&&(o[t]=h[t]=e[t]),a(o,t)&&l++,a(h,t)&&u++}),s[n])return a(e,r[1])?h[r[2]]=null:a(e,r[2])&&(h[r[1]]=null),h;if(2!==u&&l){if(l>=2)return o;for(var c=0;c=r.length&&r.push({option:t})}}),r}function u(t){var e=y.createHashMap();S(t,function(t,r){var n=t.exist;n&&e.set(n.id,t)}),S(t,function(t,r){var n=t.option;y.assert(!n||null==n.id||!e.get(n.id)||e.get(n.id)===t,"id duplicates: "+(n&&n.id)),n&&null!=n.id&&e.set(n.id,t),!t.keyInfo&&(t.keyInfo={})}),S(t,function(t,r){var n=t.exist,i=t.option,a=t.keyInfo;if(M(i)){if(a.name=null!=i.name?i.name+"":n?n.name:"\0-",n)a.id=n.id;else if(null!=i.id)a.id=i.id+"";else{var o=0;do{a.id="\0"+a.name+"\0"+o++}while(e.get(a.id))}e.set(a.id,t)}})}function c(t){return M(t)&&t.id&&0===(t.id+"").indexOf("\0_ec_\0")}function f(t,e){function r(t,e,r){for(var i=0,a=t.length;i=0)&&(n={textFill:null,textStroke:t.textStroke,textStrokeWidth:t.textStrokeWidth},t.textFill="#fff",null==t.textStroke&&(t.textStroke=r.autoColor,null==t.textStrokeWidth&&(t.textStrokeWidth=2))),n}function L(t){var e=t.insideRollback;e&&(t.textFill=e.textFill,t.textStroke=e.textStroke,t.textStrokeWidth=e.textStrokeWidth)}function F(t,e){var r=e||e.getModel("textStyle");return[t.fontStyle||r&&r.getShallow("fontStyle")||"",t.fontWeight||r&&r.getShallow("fontWeight")||"",(t.fontSize||r&&r.getShallow("fontSize")||12)+"px",t.fontFamily||r&&r.getShallow("fontFamily")||"sans-serif"].join(" ")}function R(t,e,r,n,i,a){if("function"==typeof i&&(a=i,i=null),n&&n.isAnimationEnabled()){var o=t?"Update":"",s=n.getShallow("animationDuration"+o),l=n.getShallow("animationEasing"+o),h=n.getShallow("animationDelay"+o);"function"==typeof h&&(h=h(i,n.getAnimationDelayParams?n.getAnimationDelayParams(e,i):null)),"function"==typeof s&&(s=s(i)),s>0?e.animateTo(r,s,h||0,l,a,!!a):(e.stopAnimation(),e.attr(r),a&&a())}else e.stopAnimation(),e.attr(r),a&&a()}function B(t,e,r,n,i){R(!0,t,e,r,n,i)}function z(t,e,r,n,i){R(!1,t,e,r,n,i)}function N(t,e){for(var r=U.identity([]);t&&t!==e;)U.mul(r,t.getLocalTransform(),r),t=t.parent;return r}function E(t,e,r){return e&&!Y.isArrayLike(e)&&(e=Q.getLocalTransform(e)),r&&(e=U.invert([],e)),$.applyTransform([],t,e)}function W(t,e,r){var n=0===e[4]||0===e[5]||0===e[0]?1:Math.abs(2*e[4]/e[0]),i=0===e[4]||0===e[5]||0===e[2]?1:Math.abs(2*e[4]/e[2]),a=["left"===t?-n:"right"===t?n:0,"top"===t?-i:"bottom"===t?i:0];return a=E(a,e,r),Math.abs(a[0])>Math.abs(a[1])?a[0]>0?"right":"left":a[1]>0?"bottom":"top"}function q(t,e,r,n){function i(t){var e={position:$.clone(t.position),rotation:t.rotation};return t.shape&&(e.shape=Y.extend({},t.shape)),e}if(t&&e){var a=function(t){var e={};return t.traverse(function(t){!t.isGroup&&t.anid&&(e[t.anid]=t)}),e}(t);e.traverse(function(t){if(!t.isGroup&&t.anid){var e=a[t.anid];if(e){var n=i(t);t.attr(i(e)),B(t,n,r,t.dataIndex)}}})}}function H(t,e){return Y.map(t,function(t){var r=t[0];r=gt(r,e.x),r=pt(r,e.x+e.width);var n=t[1];return n=gt(n,e.y),n=pt(n,e.y+e.height),[r,n]})}function j(t,e){var r=gt(t.x,e.x),n=pt(t.x+t.width,e.x+e.width),i=gt(t.y,e.y),a=pt(t.y+t.height,e.y+e.height);if(n>=r&&a>=i)return{x:r,y:i,width:n-r,height:a-i}}function X(t,e,r){e=Y.extend({rectHover:!0},e);var n=e.style={strokeNoScale:!0};if(r=r||{x:-1,y:-1,width:2,height:2},t)return 0===t.indexOf("image://")?(n.image=t.slice(8),Y.defaults(n,r),new K(e)):a(t.replace("path://",""),e,r,"center")}var Y=r(0),V=r(39),G=r(18),U=r(8),$=r(2),Z=r(1),Q=r(17),K=r(58);e.Image=K;var J=r(59);e.Group=J;var tt=r(60);e.Text=tt;var et=r(61);e.Circle=et;var rt=r(62);e.Sector=rt;var nt=r(64);e.Ring=nt;var it=r(65);e.Polygon=it;var at=r(68);e.Polyline=at;var ot=r(69);e.Rect=ot;var st=r(70);e.Line=st;var lt=r(71);e.BezierCurve=lt;var ht=r(72);e.Arc=ht;var ut=r(73);e.CompoundPath=ut;var ct=r(74);e.LinearGradient=ct;var ft=r(75);e.RadialGradient=ft;var dt=r(3);e.BoundingRect=dt;var vt=Math.round,gt=Math.max,pt=Math.min,mt={},xt=V.mergePath;e.extendShape=n,e.extendPath=i,e.makePath=a,e.makeImage=o,e.mergePath=xt,e.resizePath=l,e.subPixelOptimizeLine=h,e.subPixelOptimizeRect=u,e.subPixelOptimize=c,e.setHoverStyle=M,e.setLabelStyle=T,e.setTextStyle=k,e.setText=C,e.getFont=F,e.updateProps=B,e.initProps=z,e.getTransform=N,e.applyTransform=E,e.transformDirection=W,e.groupTransition=q,e.clipPointsByRect=H,e.clipRectByRect=j,e.createIcon=X},function(t,e,r){function n(t,e,r,n,i,a,o,s,l,h,u){var c=l*(p/180),f=g(c)*(t-r)/2+v(c)*(e-n)/2,m=-1*v(c)*(t-r)/2+g(c)*(e-n)/2,w=f*f/(o*o)+m*m/(s*s);w>1&&(o*=d(w),s*=d(w));var _=(i===a?-1:1)*d((o*o*(s*s)-o*o*(m*m)-s*s*(f*f))/(o*o*(m*m)+s*s*(f*f)))||0,b=_*o*m/s,S=_*-s*f/o,M=(t+r)/2+g(c)*b-v(c)*S,T=(e+n)/2+v(c)*b+g(c)*S,k=y([1,0],[(f-b)/o,(m-S)/s]),C=[(f-b)/o,(m-S)/s],P=[(-1*f-b)/o,(-1*m-S)/s],I=y(C,P);x(C,P)<=-1&&(I=p),x(C,P)>=1&&(I=0),0===a&&I>0&&(I-=2*p),1===a&&I<0&&(I+=2*p),u.addData(h,M,T,o,s,k,I,c,a)}function i(t){if(!t)return[];var e,r=t.replace(/-/g," -").replace(/ /g," ").replace(/ /g,",").replace(/,,/g,",");for(e=0;e0&&""===p[0]&&p.shift();for(var m=0;m0},extendFrom:function(t,e){if(t)for(var r in t)!t.hasOwnProperty(r)||!0!==e&&(!1===e?this.hasOwnProperty(r):null==t[r])||(this[r]=t[r])},set:function(t,e){"string"==typeof t?this[t]=e:this.extendFrom(t,!0)},clone:function(){var t=new this.constructor;return t.extendFrom(this,!0),t},getGradient:function(t,e,i){for(var a="radial"===e.type?n:r,o=a(t,e,i),s=e.colorStops,l=0;l3&&(e=r.call(e,1));for(var i=this._$handlers[t],a=i.length,o=0;o4&&(e=r.call(e,1,e.length-1));for(var i=e[e.length-1],a=this._$handlers[t],o=a.length,s=0;s0&&this.animate(t,!1).when(null==n?500:n,a).delay(i||0),this}};var f=c;t.exports=f},function(t,e,r){function n(t,e){return t[e]}function i(t,e,r){t[e]=r}function a(t,e,r){return(e-t)*r+t}function o(t,e,r){return r>.5?e:t}function s(t,e,r,n,i){var o=t.length;if(1==i)for(var s=0;si)t.length=i;else for(var a=n;a=0&&!(P[r]<=e);r--);r=Math.min(r,_-2)}else{for(r=H;r<_&&!(P[r]>e);r++);r=Math.min(r-1,_-2)}H=r,j=e;var n=P[r+1]-P[r];if(0!==n)if(z=(e-P[r])/n,w)if(E=I[r],N=I[0===r?r:r-1],W=I[r>_-2?_-1:r+1],q=I[r>_-3?_-1:r+2],M)u(N,E,W,q,z,z*z,z*z*z,g(t,i),C);else{var l;if(T)l=u(N,E,W,q,z,z*z,z*z*z,X,1),l=d(X);else{if(k)return o(E,W,z);l=c(N,E,W,q,z,z*z,z*z*z)}x(t,i,l)}else if(M)s(I[r],I[r+1],z,g(t,i),C);else{var l;if(T)s(I[r],I[r+1],z,X,1),l=d(X);else{if(k)return o(I[r],I[r+1],z);l=a(I[r],I[r+1],z)}x(t,i,l)}},V=new p({target:t._target,life:b,loop:t._loop,delay:t._delay,onframe:Y,ondestroy:r});return e&&"spline"!==e&&(V.easing=e),V}}}var p=r(45),m=r(18),x=r(0),y=x.isArrayLike,w=Array.prototype.slice,_=function(t,e,r,a){this._tracks={},this._target=t,this._loop=e||!1,this._getter=r||n,this._setter=a||i,this._clipCount=0,this._delay=0,this._doneList=[],this._onframeList=[],this._clipList=[]};_.prototype={when:function(t,e){var r=this._tracks;for(var n in e)if(e.hasOwnProperty(n)){if(!r[n]){r[n]=[];var i=this._getter(this._target,n);if(null==i)continue;0!==t&&r[n].push({time:0,value:f(i)})}r[n].push({time:t,value:e[n]})}return this},during:function(t){return this._onframeList.push(t),this},pause:function(){for(var t=0;t1&&(a=function(){for(var t in arguments)console.log(arguments[t])});var o=a;t.exports=o},function(t,e,r){var n=r(20),i=r(3),a=new i,o=function(){};o.prototype={constructor:o,drawRectText:function(t,e){var r=this.style;e=r.textRect||e,this.__dirty&&n.normalizeTextStyle(r,!0);var i=r.text;if(null!=i&&(i+=""),n.needDrawText(i,r)){t.save();var o=this.transform;r.transformText?this.setTransform(t):o&&(a.copy(e),a.applyTransform(o),e=a),n.renderText(this,t,i,r,e),t.restore()}}};var s=o;t.exports=s},function(t,e,r){function n(t,e,r){if(0!==t.length){var n,i=t[0],a=i[0],o=i[0],s=i[1],l=i[1];for(n=1;n1e-4)return s[0]=t-r,s[1]=e-n,h[0]=t+r,void(h[1]=e+n);if(g[0]=d(i)*r+t,g[1]=f(i)*n+e,p[0]=d(a)*r+t,p[1]=f(a)*n+e,u(s,g,p),c(h,g,p),i%=v,i<0&&(i+=v),a%=v,a<0&&(a+=v),i>a&&!o?a+=v:ii&&(m[0]=d(w)*r+t,m[1]=f(w)*n+e,u(s,m,s),c(h,m,h))}var l=r(2),h=r(4),u=Math.min,c=Math.max,f=Math.sin,d=Math.cos,v=2*Math.PI,g=l.create(),p=l.create(),m=l.create(),x=[],y=[];e.fromPoints=n,e.fromLine=i,e.fromCubic=a,e.fromQuadratic=o,e.fromArc=s},function(t,e,r){function n(t,e){return Math.abs(t-e)e&&u>n&&u>o&&u>l||u1&&i(),f=x.cubicAt(e,n,o,l,M[0]),g>1&&(d=x.cubicAt(e,n,o,l,M[1]))),2==g?me&&s>n&&s>a||s=0&&h<=1){for(var u=0,c=x.quadraticAt(e,n,a,h),f=0;fr||s<-r)return 0;var l=Math.sqrt(r*r-s*s);S[0]=-l,S[1]=l;var h=Math.abs(n-i);if(h<1e-4)return 0;if(h%_<1e-4){n=0,i=_;var u=a?1:-1;return o>=S[0]+t&&o<=S[1]+t?u:0}if(a){var l=n;n=m(i),i=m(l)}else n=m(n),i=m(i);n>i&&(i+=_);for(var c=0,f=0;f<2;f++){var d=S[f];if(d+t>o){var v=Math.atan2(s,d),u=a?1:-1;v<0&&(v=_+v),(v>=n&&v<=i||v+_>=n&&v+_<=i)&&(v>Math.PI/2&&v<1.5*Math.PI&&(u=-u),c+=u)}}return c}function l(t,e,r,i,l){for(var h=0,u=0,c=0,p=0,m=0,x=0;x1&&(r||(h+=y(u,c,p,m,i,l))),1==x&&(u=t[x],c=t[x+1],p=u,m=c),_){case w.M:p=t[x++],m=t[x++],u=p,c=m;break;case w.L:if(r){if(f.containStroke(u,c,t[x],t[x+1],e,i,l))return!0}else h+=y(u,c,t[x],t[x+1],i,l)||0;u=t[x++],c=t[x++];break;case w.C:if(r){if(d.containStroke(u,c,t[x++],t[x++],t[x++],t[x++],t[x],t[x+1],e,i,l))return!0}else h+=a(u,c,t[x++],t[x++],t[x++],t[x++],t[x],t[x+1],i,l)||0;u=t[x++],c=t[x++];break;case w.Q:if(r){if(v.containStroke(u,c,t[x++],t[x++],t[x],t[x+1],e,i,l))return!0}else h+=o(u,c,t[x++],t[x++],t[x],t[x+1],i,l)||0;u=t[x++],c=t[x++];break;case w.A:var b=t[x++],S=t[x++],M=t[x++],T=t[x++],k=t[x++],C=t[x++],P=(t[x++],1-t[x++]),I=Math.cos(k)*M+b,A=Math.sin(k)*T+S;x>1?h+=y(u,c,I,A,i,l):(p=I,m=A);var O=(i-b)*T/M+b;if(r){if(g.containStroke(b,S,T,k,k+C,P,e,O,l))return!0}else h+=s(b,S,T,k,k+C,P,O,l);u=Math.cos(k+C)*M+b,c=Math.sin(k+C)*T+S;break;case w.R:p=u=t[x++],m=c=t[x++];var D=t[x++],L=t[x++],I=p+D,A=m+L;if(r){if(f.containStroke(p,m,I,m,e,i,l)||f.containStroke(I,m,I,A,e,i,l)||f.containStroke(I,A,p,A,e,i,l)||f.containStroke(p,A,p,m,e,i,l))return!0}else h+=y(I,m,I,A,i,l),h+=y(p,A,p,m,i,l);break;case w.Z:if(r){if(f.containStroke(u,c,p,m,e,i,l))return!0}else h+=y(u,c,p,m,i,l);u=p,c=m}}return r||n(c,m)||(h+=y(u,c,p,m,i,l)||0),0!==h}function h(t,e,r){return l(t,0,!1,e,r)}function u(t,e,r,n){return l(t,e,!0,r,n)}var c=r(6),f=r(51),d=r(52),v=r(53),g=r(54),p=r(22),m=p.normalizeRadian,x=r(4),y=r(55),w=c.CMD,_=2*Math.PI,b=1e-4,S=[-1,-1,-1],M=[-1,-1];e.contain=h,e.containStroke=u},function(t,e){function r(t,e,r,n,i,a,o){if(0===i)return!1;var s=i,l=0,h=t;if(o>e+s&&o>n+s||ot+s&&a>r+s||ae+f&&c>n+f&&c>o+f&&c>l+f||ct+f&&u>r+f&&u>a+f&&u>s+f||ue+u&&h>n+u&&h>o+u||ht+u&&l>r+u&&l>i+u||lr||f+ci&&(i+=o);var v=Math.atan2(u,h);return v<0&&(v+=o),v>=n&&v<=i||v+o>=n&&v+o<=i}var i=r(22),a=i.normalizeRadian,o=2*Math.PI;e.containStroke=n},function(t,e){function r(t,e,r,n,i,a){if(a>e&&a>n||ai?o:0}t.exports=r},function(t,e){var r=function(t,e){this.image=t,this.repeat=e,this.type="pattern"};r.prototype.getCanvasPattern=function(t){return t.createPattern(this.image,this.repeat||"repeat")};var n=r;t.exports=n},function(t,e,r){function n(t,e){var r,n,i,a,c,f,d=t.data,v=s.M,g=s.C,p=s.L,m=s.R,x=s.A,y=s.Q;for(i=0,a=0;i=0&&(r.splice(n,0,t),this._doAdd(t))}return this},_doAdd:function(t){t.parent&&t.parent.remove(t),t.parent=this;var e=this.__storage,r=this.__zr;e&&e!==t.__storage&&(e.addToStorage(t),t instanceof o&&t.addChildrenToStorage(e)),r&&r.refresh()},remove:function(t){var e=this.__zr,r=this.__storage,i=this._children,a=n.indexOf(i,t);return a<0?this:(i.splice(a,1),t.parent=null,r&&(r.delFromStorage(t),t instanceof o&&t.delChildrenFromStorage(r)),e&&e.refresh(),this)},removeAll:function(){var t,e,r=this._children,n=this.__storage;for(e=0;e=11?function(){var e,r=this.__clipPaths,n=this.style;if(r)for(var i=0;ir-2?r-1:d+1],c=t[d>r-3?r-1:d+2]);var p=v*v,m=v*p;i.push([n(h[0],g[0],u[0],c[0],v,p,m),n(h[1],g[1],u[1],c[1],v,p,m)])}return i}var a=r(2),o=a.distance;t.exports=i},function(t,e,r){function n(t,e,r,n){var i,f,d,v,g=[],p=[],m=[],x=[];if(n){d=[1/0,1/0],v=[-1/0,-1/0];for(var y=0,w=t.length;y=0?1/(Math.cos(2*Math.PI/10-e)+3.07768*Math.sin(2*Math.PI/10-e)):1/(Math.cos(e)+3.07768*Math.sin(e))}}n.gridSize=Math.max(Math.floor(n.gridSize),4);var h,u,c,f,d,v,g,p=n.gridSize,m=p-n.maskGapWidth,x=Math.abs(n.maxRotation-n.minRotation),y=Math.min(n.maxRotation,n.minRotation),w=n.rotationStep;switch(n.color){case"random-dark":g=function(){return r(10,50)};break;case"random-light":g=function(){return r(50,90)};break;default:"function"==typeof n.color&&(g=n.color)}var _=null;"function"==typeof n.classes&&(_=n.classes);var b,S=!1,M=[],T=function(t){var e,r,n=t.currentTarget,i=n.getBoundingClientRect();t.touches?(e=t.touches[0].clientX,r=t.touches[0].clientY):(e=t.clientX,r=t.clientY);var a=e-i.left,o=r-i.top,s=Math.floor(a*(n.width/i.width||1)/p),l=Math.floor(o*(n.height/i.height||1)/p);return M[s][l]},k=function(t){var e=T(t);if(b!==e){if(b=e,!e)return void n.hover(void 0,void 0,t);n.hover(e.item,e.dimension,t)}},C=function(t){var e=T(t);e&&(n.click(e.item,e.dimension,t),t.preventDefault())},P=[],I=function(t){if(P[t])return P[t];var e=8*t,r=e,i=[];for(0===t&&i.push([f[0],f[1],0]);r--;){var a=1;"circle"!==n.shape&&(a=n.shape(r/e*2*Math.PI)),i.push([f[0]+t*a*Math.cos(-r/e*2*Math.PI),f[1]+t*a*Math.sin(-r/e*2*Math.PI)*n.ellipticity,r/e*2*Math.PI])}return P[t]=i,i},A=function(){return n.abortThreshold>0&&(new Date).getTime()-v>n.abortThreshold},O=function(){return 0===n.rotateRatio?0:Math.random()>n.rotateRatio?0:0===x?y:y+Math.round(Math.random()*x/w)*w},D=function(t,e,r){var i=n.weightFactor(e);if(i<=n.minSize)return!1;var a=1;iP[1]&&(P[1]=C),SP[2]&&(P[2]=S);break t}}return{mu:a,occupied:k,bounds:P,gw:y,gh:x,fillTextOffsetX:g,fillTextOffsetY:m,fillTextWidth:h,fillTextHeight:u,fontSize:i}},L=function(t,e,r,i,a){for(var o=a.length;o--;){var s=t+a[o][0],l=e+a[o][1];if(s>=u||l>=c||s<0||l<0){if(!n.drawOutOfBound)return!1}else if(!h[s][l])return!1}return!0},F=function(e,r,i,a,o,s,l,h,u){var c,f=i.fontSize;c=g?g(a,o,f,s,l):n.color;var d;d=_?_(a,o,f,s,l):n.classes;var v=i.bounds;v[3],v[0],v[1],v[3],v[2],v[0],t.forEach(function(t){if(t.getContext){var o=t.getContext("2d"),s=i.mu;o.save(),o.scale(1/s,1/s),o.font=n.fontWeight+" "+(f*s).toString(10)+"px "+n.fontFamily,o.fillStyle=c,o.translate((e+i.gw/2)*p*s,(r+i.gh/2)*p*s),0!==h&&o.rotate(-h),o.textBaseline="middle",o.fillText(a,i.fillTextOffsetX*s,(i.fillTextOffsetY+.5*f)*s),o.restore()}else{var l=document.createElement("span"),v="";v="rotate("+-h/Math.PI*180+"deg) ",1!==i.mu&&(v+="translateX(-"+i.fillTextWidth/4+"px) scale("+1/i.mu+")");var g={position:"absolute",display:"block",font:n.fontWeight+" "+f*i.mu+"px "+n.fontFamily,left:(e+i.gw/2)*p+i.fillTextOffsetX+"px",top:(r+i.gh/2)*p+i.fillTextOffsetY+"px",width:i.fillTextWidth+"px",height:i.fillTextHeight+"px",lineHeight:f+"px",whiteSpace:"nowrap",transform:v,webkitTransform:v,msTransform:v,transformOrigin:"50% 40%",webkitTransformOrigin:"50% 40%",msTransformOrigin:"50% 40%"};c&&(g.color=c),l.textContent=a;for(var m in g)l.style[m]=g[m];if(u)for(var x in u)l.setAttribute(x,u[x]);d&&(l.className+=d),t.appendChild(l)}})},R=function(e,r,n,i,a){if(!(e>=u||r>=c||e<0||r<0)){if(h[e][r]=!1,n){t[0].getContext("2d").fillRect(e*p,r*p,m,m)}S&&(M[e][r]={item:a,dimension:i})}},B=function(e,r,i,a,o,s){var l,h=o.occupied,f=n.drawMask;f&&(l=t[0].getContext("2d"),l.save(),l.fillStyle=n.maskColor);var d;if(S){var v=o.bounds;d={x:(e+v[3])*p,y:(r+v[0])*p,w:(v[1]-v[3]+1)*p,h:(v[2]-v[0]+1)*p}}for(var g=h.length;g--;){var m=e+h[g][0],x=r+h[g][1];m>=u||x>=c||m<0||x<0||R(m,x,f,d,s)}f&&l.restore()},z=function(t){var e,r,i;Array.isArray(t)?(e=t[0],r=t[1]):(e=t.word,r=t.weight,i=t.attributes);var a=O(),o=D(e,r,a);if(!o)return!1;if(A())return!1;if(!n.drawOutOfBound){var l=o.bounds;if(l[1]-l[3]+1>u||l[2]-l[0]+1>c)return!1}for(var h=d+1;h--;){var f=I(d-h);n.shuffle&&(f=[].concat(f),s(f));for(var v=0;v=n.list.length)return w(P),N("wordcloudstop",!1),void _("wordcloudstart",T);v=(new Date).getTime();var e=z(n.list[o]),r=!N("wordclouddrawn",!0,{item:n.list[o],drawn:e});if(A()||r)return w(P),n.abort(),N("wordcloudabort",!1),N("wordcloudstop",!1),void _("wordcloudstart",T);o++,P=y(t,n.wait)},n.wait)}}()}};l.isSupported=a,l.minFontSize=o,n=[],void 0!==(i=function(){return l}.apply(e,n))&&(t.exports=i)}()}])}); \ No newline at end of file diff --git a/src/main/resources/static/articles/js/echarts.min.js b/src/main/resources/static/articles/js/echarts.min.js new file mode 100644 index 0000000..8ed6acf --- /dev/null +++ b/src/main/resources/static/articles/js/echarts.min.js @@ -0,0 +1,21 @@ + +/* +* Licensed to the Apache Software Foundation (ASF) under one +* or more contributor license agreements. See the NOTICE file +* distributed with this work for additional information +* regarding copyright ownership. The ASF licenses this file +* to you under the Apache License, Version 2.0 (the +* "License"); you may not use this file except in compliance +* with the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. See the License for the +* specific language governing permissions and limitations +* under the License. +*/ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e(t.echarts={})}(this,function(t){"use strict";function e(t,e){"createCanvas"===t&&(m_=null),p_[t]=e}function i(t){if(null==t||"object"!=typeof t)return t;var e=t,n=s_.call(t);if("[object Array]"===n){if(!O(t)){e=[];for(var o=0,a=t.length;oN_||t<-N_}function vt(t){this._target=t.target,this._life=t.life||1e3,this._delay=t.delay||0,this._initialized=!1,this.loop=null!=t.loop&&t.loop,this.gap=t.gap||0,this.easing=t.easing||"Linear",this.onframe=t.onframe,this.ondestroy=t.ondestroy,this.onrestart=t.onrestart,this._pausedTime=0,this._paused=!1}function yt(t){return(t=Math.round(t))<0?0:t>255?255:t}function xt(t){return(t=Math.round(t))<0?0:t>360?360:t}function _t(t){return t<0?0:t>1?1:t}function wt(t){return yt(t.length&&"%"===t.charAt(t.length-1)?parseFloat(t)/100*255:parseInt(t,10))}function bt(t){return _t(t.length&&"%"===t.charAt(t.length-1)?parseFloat(t)/100:parseFloat(t))}function St(t,e,i){return i<0?i+=1:i>1&&(i-=1),6*i<1?t+(e-t)*i*6:2*i<1?e:3*i<2?t+(e-t)*(2/3-i)*6:t}function Mt(t,e,i){return t+(e-t)*i}function It(t,e,i,n,o){return t[0]=e,t[1]=i,t[2]=n,t[3]=o,t}function Tt(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t}function Dt(t,e){U_&&Tt(U_,e),U_=Z_.put(t,U_||e.slice())}function At(t,e){if(t){e=e||[];var i=Z_.get(t);if(i)return Tt(e,i);var n=(t+="").replace(/ /g,"").toLowerCase();if(n in H_)return Tt(e,H_[n]),Dt(t,e),e;if("#"!==n.charAt(0)){var o=n.indexOf("("),a=n.indexOf(")");if(-1!==o&&a+1===n.length){var r=n.substr(0,o),s=n.substr(o+1,a-(o+1)).split(","),l=1;switch(r){case"rgba":if(4!==s.length)return void It(e,0,0,0,1);l=bt(s.pop());case"rgb":return 3!==s.length?void It(e,0,0,0,1):(It(e,wt(s[0]),wt(s[1]),wt(s[2]),l),Dt(t,e),e);case"hsla":return 4!==s.length?void It(e,0,0,0,1):(s[3]=bt(s[3]),Ct(s,e),Dt(t,e),e);case"hsl":return 3!==s.length?void It(e,0,0,0,1):(Ct(s,e),Dt(t,e),e);default:return}}It(e,0,0,0,1)}else{if(4===n.length)return(u=parseInt(n.substr(1),16))>=0&&u<=4095?(It(e,(3840&u)>>4|(3840&u)>>8,240&u|(240&u)>>4,15&u|(15&u)<<4,1),Dt(t,e),e):void It(e,0,0,0,1);if(7===n.length){var u=parseInt(n.substr(1),16);return u>=0&&u<=16777215?(It(e,(16711680&u)>>16,(65280&u)>>8,255&u,1),Dt(t,e),e):void It(e,0,0,0,1)}}}}function Ct(t,e){var i=(parseFloat(t[0])%360+360)%360/360,n=bt(t[1]),o=bt(t[2]),a=o<=.5?o*(n+1):o+n-o*n,r=2*o-a;return e=e||[],It(e,yt(255*St(r,a,i+1/3)),yt(255*St(r,a,i)),yt(255*St(r,a,i-1/3)),1),4===t.length&&(e[3]=t[3]),e}function Lt(t){if(t){var e,i,n=t[0]/255,o=t[1]/255,a=t[2]/255,r=Math.min(n,o,a),s=Math.max(n,o,a),l=s-r,u=(s+r)/2;if(0===l)e=0,i=0;else{i=u<.5?l/(s+r):l/(2-s-r);var h=((s-n)/6+l/2)/l,c=((s-o)/6+l/2)/l,d=((s-a)/6+l/2)/l;n===s?e=d-c:o===s?e=1/3+h-d:a===s&&(e=2/3+c-h),e<0&&(e+=1),e>1&&(e-=1)}var f=[360*e,i,u];return null!=t[3]&&f.push(t[3]),f}}function kt(t,e){var i=At(t);if(i){for(var n=0;n<3;n++)i[n]=e<0?i[n]*(1-e)|0:(255-i[n])*e+i[n]|0,i[n]>255?i[n]=255:t[n]<0&&(i[n]=0);return zt(i,4===i.length?"rgba":"rgb")}}function Pt(t){var e=At(t);if(e)return((1<<24)+(e[0]<<16)+(e[1]<<8)+ +e[2]).toString(16).slice(1)}function Nt(t,e,i){if(e&&e.length&&t>=0&&t<=1){i=i||[];var n=t*(e.length-1),o=Math.floor(n),a=Math.ceil(n),r=e[o],s=e[a],l=n-o;return i[0]=yt(Mt(r[0],s[0],l)),i[1]=yt(Mt(r[1],s[1],l)),i[2]=yt(Mt(r[2],s[2],l)),i[3]=_t(Mt(r[3],s[3],l)),i}}function Ot(t,e,i){if(e&&e.length&&t>=0&&t<=1){var n=t*(e.length-1),o=Math.floor(n),a=Math.ceil(n),r=At(e[o]),s=At(e[a]),l=n-o,u=zt([yt(Mt(r[0],s[0],l)),yt(Mt(r[1],s[1],l)),yt(Mt(r[2],s[2],l)),_t(Mt(r[3],s[3],l))],"rgba");return i?{color:u,leftIndex:o,rightIndex:a,value:n}:u}}function Et(t,e,i,n){if(t=At(t))return t=Lt(t),null!=e&&(t[0]=xt(e)),null!=i&&(t[1]=bt(i)),null!=n&&(t[2]=bt(n)),zt(Ct(t),"rgba")}function Rt(t,e){if((t=At(t))&&null!=e)return t[3]=_t(e),zt(t,"rgba")}function zt(t,e){if(t&&t.length){var i=t[0]+","+t[1]+","+t[2];return"rgba"!==e&&"hsva"!==e&&"hsla"!==e||(i+=","+t[3]),e+"("+i+")"}}function Bt(t,e){return t[e]}function Vt(t,e,i){t[e]=i}function Gt(t,e,i){return(e-t)*i+t}function Wt(t,e,i){return i>.5?e:t}function Ft(t,e,i,n,o){var a=t.length;if(1==o)for(s=0;so)t.length=o;else for(r=n;r=0&&!(m[i]<=e);i--);i=Math.min(i,u-2)}else{for(i=L;ie);i++);i=Math.min(i-1,u-2)}L=i,k=e;var n=m[i+1]-m[i];if(0!==n)if(I=(e-m[i])/n,l)if(D=v[i],T=v[0===i?i:i-1],A=v[i>u-2?u-1:i+1],C=v[i>u-3?u-1:i+2],d)Ut(T,D,A,C,I,I*I,I*I*I,r(t,o),g);else{if(f)a=Ut(T,D,A,C,I,I*I,I*I*I,P,1),a=Yt(P);else{if(p)return Wt(D,A,I);a=Xt(T,D,A,C,I,I*I,I*I*I)}s(t,o,a)}else if(d)Ft(v[i],v[i+1],I,r(t,o),g);else{var a;if(f)Ft(v[i],v[i+1],I,P,1),a=Yt(P);else{if(p)return Wt(v[i],v[i+1],I);a=Gt(v[i],v[i+1],I)}s(t,o,a)}},ondestroy:i});return e&&"spline"!==e&&(N.easing=e),N}}}function $t(t,e,i,n){i<0&&(t+=i,i=-i),n<0&&(e+=n,n=-n),this.x=t,this.y=e,this.width=i,this.height=n}function Jt(t){for(var e=0;t>=sw;)e|=1&t,t>>=1;return t+e}function Qt(t,e,i,n){var o=e+1;if(o===i)return 1;if(n(t[o++],t[e])<0){for(;o=0;)o++;return o-e}function te(t,e,i){for(i--;e>>1])<0?l=a:s=a+1;var u=n-s;switch(u){case 3:t[s+3]=t[s+2];case 2:t[s+2]=t[s+1];case 1:t[s+1]=t[s];break;default:for(;u>0;)t[s+u]=t[s+u-1],u--}t[s]=r}}function ie(t,e,i,n,o,a){var r=0,s=0,l=1;if(a(t,e[i+o])>0){for(s=n-o;l0;)r=l,(l=1+(l<<1))<=0&&(l=s);l>s&&(l=s),r+=o,l+=o}else{for(s=o+1;ls&&(l=s);var u=r;r=o-l,l=o-u}for(r++;r>>1);a(t,e[i+h])>0?r=h+1:l=h}return l}function ne(t,e,i,n,o,a){var r=0,s=0,l=1;if(a(t,e[i+o])<0){for(s=o+1;ls&&(l=s);var u=r;r=o-l,l=o-u}else{for(s=n-o;l=0;)r=l,(l=1+(l<<1))<=0&&(l=s);l>s&&(l=s),r+=o,l+=o}for(r++;r>>1);a(t,e[i+h])<0?l=h:r=h+1}return l}function oe(t,e){function i(i){var s=a[i],u=r[i],h=a[i+1],c=r[i+1];r[i]=u+c,i===l-3&&(a[i+1]=a[i+2],r[i+1]=r[i+2]),l--;var d=ne(t[h],t,s,u,0,e);s+=d,0!==(u-=d)&&0!==(c=ie(t[s+u-1],t,h,c,c-1,e))&&(u<=c?n(s,u,h,c):o(s,u,h,c))}function n(i,n,o,a){var r=0;for(r=0;r=lw||f>=lw);if(p)break;g<0&&(g=0),g+=2}if((s=g)<1&&(s=1),1===n){for(r=0;r=0;r--)t[f+r]=t[d+r];if(0===n){v=!0;break}}if(t[c--]=u[h--],1==--a){v=!0;break}if(0!=(m=a-ie(t[l],u,0,a,a-1,e))){for(a-=m,f=(c-=m)+1,d=(h-=m)+1,r=0;r=lw||m>=lw);if(v)break;p<0&&(p=0),p+=2}if((s=p)<1&&(s=1),1===a){for(f=(c-=n)+1,d=(l-=n)+1,r=n-1;r>=0;r--)t[f+r]=t[d+r];t[c]=u[h]}else{if(0===a)throw new Error;for(d=c-(a-1),r=0;r=0;r--)t[f+r]=t[d+r];t[c]=u[h]}else for(d=c-(a-1),r=0;r1;){var t=l-2;if(t>=1&&r[t-1]<=r[t]+r[t+1]||t>=2&&r[t-2]<=r[t]+r[t-1])r[t-1]r[t+1])break;i(t)}},this.forceMergeRuns=function(){for(;l>1;){var t=l-2;t>0&&r[t-1]s&&(l=s),ee(t,i,i+l,i+a,e),a=l}r.pushRun(i,a),r.mergeRuns(),o-=a,i+=a}while(0!==o);r.forceMergeRuns()}}function re(t,e){return t.zlevel===e.zlevel?t.z===e.z?t.z2-e.z2:t.z-e.z:t.zlevel-e.zlevel}function se(t,e,i){var n=null==e.x?0:e.x,o=null==e.x2?1:e.x2,a=null==e.y?0:e.y,r=null==e.y2?0:e.y2;return e.global||(n=n*i.width+i.x,o=o*i.width+i.x,a=a*i.height+i.y,r=r*i.height+i.y),n=isNaN(n)?0:n,o=isNaN(o)?1:o,a=isNaN(a)?0:a,r=isNaN(r)?0:r,t.createLinearGradient(n,a,o,r)}function le(t,e,i){var n=i.width,o=i.height,a=Math.min(n,o),r=null==e.x?.5:e.x,s=null==e.y?.5:e.y,l=null==e.r?.5:e.r;return e.global||(r=r*n+i.x,s=s*o+i.y,l*=a),t.createRadialGradient(r,s,0,r,s,l)}function ue(){return!1}function he(t,e,i){var n=g_(),o=e.getWidth(),a=e.getHeight(),r=n.style;return r&&(r.position="absolute",r.left=0,r.top=0,r.width=o+"px",r.height=a+"px",n.setAttribute("data-zr-dom-id",t)),n.width=o*i,n.height=a*i,n}function ce(t){if("string"==typeof t){var e=_w.get(t);return e&&e.image}return t}function de(t,e,i,n,o){if(t){if("string"==typeof t){if(e&&e.__zrImageSrc===t||!i)return e;var a=_w.get(t),r={hostEl:i,cb:n,cbPayload:o};return a?!pe(e=a.image)&&a.pending.push(r):(!e&&(e=new Image),e.onload=fe,_w.put(t,e.__cachedImgObj={image:e,pending:[r]}),e.src=e.__zrImageSrc=t),e}return t}return e}function fe(){var t=this.__cachedImgObj;this.onload=this.__cachedImgObj=null;for(var e=0;eSw&&(bw=0,ww={}),bw++,ww[i]=o,o}function me(t,e,i,n,o,a,r){return a?ye(t,e,i,n,o,a,r):ve(t,e,i,n,o,r)}function ve(t,e,i,n,o,a){var r=Ae(t,e,o,a),s=ge(t,e);o&&(s+=o[1]+o[3]);var l=r.outerHeight,u=new $t(xe(0,s,i),_e(0,l,n),s,l);return u.lineHeight=r.lineHeight,u}function ye(t,e,i,n,o,a,r){var s=Ce(t,{rich:a,truncate:r,font:e,textAlign:i,textPadding:o}),l=s.outerWidth,u=s.outerHeight;return new $t(xe(0,l,i),_e(0,u,n),l,u)}function xe(t,e,i){return"right"===i?t-=e:"center"===i&&(t-=e/2),t}function _e(t,e,i){return"middle"===i?t-=e/2:"bottom"===i&&(t-=e),t}function we(t,e,i){var n=e.x,o=e.y,a=e.height,r=e.width,s=a/2,l="left",u="top";switch(t){case"left":n-=i,o+=s,l="right",u="middle";break;case"right":n+=i+r,o+=s,u="middle";break;case"top":n+=r/2,o-=i,l="center",u="bottom";break;case"bottom":n+=r/2,o+=a+i,l="center";break;case"inside":n+=r/2,o+=s,l="center",u="middle";break;case"insideLeft":n+=i,o+=s,u="middle";break;case"insideRight":n+=r-i,o+=s,l="right",u="middle";break;case"insideTop":n+=r/2,o+=i,l="center";break;case"insideBottom":n+=r/2,o+=a-i,l="center",u="bottom";break;case"insideTopLeft":n+=i,o+=i;break;case"insideTopRight":n+=r-i,o+=i,l="right";break;case"insideBottomLeft":n+=i,o+=a-i,u="bottom";break;case"insideBottomRight":n+=r-i,o+=a-i,l="right",u="bottom"}return{x:n,y:o,textAlign:l,textVerticalAlign:u}}function be(t,e,i,n,o){if(!e)return"";var a=(t+"").split("\n");o=Se(e,i,n,o);for(var r=0,s=a.length;r=r;l++)s-=r;var u=ge(i);return u>s&&(i="",u=0),s=t-u,n.ellipsis=i,n.ellipsisWidth=u,n.contentWidth=s,n.containerWidth=t,n}function Me(t,e){var i=e.containerWidth,n=e.font,o=e.contentWidth;if(!i)return"";var a=ge(t,n);if(a<=i)return t;for(var r=0;;r++){if(a<=o||r>=e.maxIterations){t+=e.ellipsis;break}var s=0===r?Ie(t,o,e.ascCharWidth,e.cnCharWidth):a>0?Math.floor(t.length*o/a):0;a=ge(t=t.substr(0,s),n)}return""===t&&(t=e.placeholder),t}function Ie(t,e,i,n){for(var o=0,a=0,r=t.length;al)t="",a=[];else if(null!=u)for(var h=Se(u-(i?i[1]+i[3]:0),e,n.ellipsis,{minChar:n.minChar,placeholder:n.placeholder}),c=0,d=a.length;co&&Le(i,t.substring(o,a)),Le(i,n[2],n[1]),o=Mw.lastIndex}of)return{lines:[],width:0,height:0};k.textWidth=ge(k.text,_);var b=y.textWidth,S=null==b||"auto"===b;if("string"==typeof b&&"%"===b.charAt(b.length-1))k.percentWidth=b,u.push(k),b=0;else{if(S){b=k.textWidth;var M=y.textBackgroundColor,I=M&&M.image;I&&pe(I=ce(I))&&(b=Math.max(b,I.width*w/I.height))}var T=x?x[1]+x[3]:0;b+=T;var C=null!=d?d-m:null;null!=C&&Cl&&(i*=l/(c=i+n),n*=l/c),o+a>l&&(o*=l/(c=o+a),a*=l/c),n+o>u&&(n*=u/(c=n+o),o*=u/c),i+a>u&&(i*=u/(c=i+a),a*=u/c),t.moveTo(r+i,s),t.lineTo(r+l-n,s),0!==n&&t.arc(r+l-n,s+n,n,-Math.PI/2,0),t.lineTo(r+l,s+u-o),0!==o&&t.arc(r+l-o,s+u-o,o,0,Math.PI/2),t.lineTo(r+a,s+u),0!==a&&t.arc(r+a,s+u-a,a,Math.PI/2,Math.PI),t.lineTo(r,s+i),0!==i&&t.arc(r+i,s+i,i,Math.PI,1.5*Math.PI)}function Ne(t){return Oe(t),d(t.rich,Oe),t}function Oe(t){if(t){t.font=ke(t);var e=t.textAlign;"middle"===e&&(e="center"),t.textAlign=null==e||Dw[e]?e:"left";var i=t.textVerticalAlign||t.textBaseline;"center"===i&&(i="middle"),t.textVerticalAlign=null==i||Aw[i]?i:"top",t.textPadding&&(t.textPadding=L(t.textPadding))}}function Ee(t,e,i,n,o){n.rich?ze(t,e,i,n,o):Re(t,e,i,n,o)}function Re(t,e,i,n,o){var a=Ue(e,"font",n.font||Iw),r=n.textPadding,s=t.__textCotentBlock;s&&!t.__dirty||(s=t.__textCotentBlock=Ae(i,a,r,n.truncate));var l=s.outerHeight,u=s.lines,h=s.lineHeight,c=Ze(l,n,o),d=c.baseX,f=c.baseY,p=c.textAlign,g=c.textVerticalAlign;Ve(e,n,o,d,f);var m=_e(f,l,g),v=d,y=m,x=We(n);if(x||r){var _=ge(i,a);r&&(_+=r[1]+r[3]);var w=xe(d,_,p);x&&Fe(t,e,n,w,m,_,l),r&&(v=qe(d,p,r),y+=r[0])}Ue(e,"textAlign",p||"left"),Ue(e,"textBaseline","middle"),Ue(e,"shadowBlur",n.textShadowBlur||0),Ue(e,"shadowColor",n.textShadowColor||"transparent"),Ue(e,"shadowOffsetX",n.textShadowOffsetX||0),Ue(e,"shadowOffsetY",n.textShadowOffsetY||0),y+=h/2;var b=n.textStrokeWidth,S=Xe(n.textStroke,b),M=je(n.textFill);S&&(Ue(e,"lineWidth",b),Ue(e,"strokeStyle",S)),M&&Ue(e,"fillStyle",M);for(var I=0;I=0&&"right"===(_=b[C]).textAlign;)Ge(t,e,_,n,M,v,A,"right"),I-=_.width,A-=_.width,C--;for(D+=(a-(D-m)-(y-A)-I)/2;T<=C;)Ge(t,e,_=b[T],n,M,v,D+_.width/2,"center"),D+=_.width,T++;v+=M}}function Ve(t,e,i,n,o){if(i&&e.textRotation){var a=e.textOrigin;"center"===a?(n=i.width/2+i.x,o=i.height/2+i.y):a&&(n=a[0]+i.x,o=a[1]+i.y),t.translate(n,o),t.rotate(-e.textRotation),t.translate(-n,-o)}}function Ge(t,e,i,n,o,a,r,s){var l=n.rich[i.styleName]||{},u=i.textVerticalAlign,h=a+o/2;"top"===u?h=a+i.height/2:"bottom"===u&&(h=a+o-i.height/2),!i.isLineHolder&&We(l)&&Fe(t,e,l,"right"===s?r-i.width:"center"===s?r-i.width/2:r,h-i.height/2,i.width,i.height);var c=i.textPadding;c&&(r=qe(r,s,c),h-=i.height/2-c[2]-i.textHeight/2),Ue(e,"shadowBlur",A(l.textShadowBlur,n.textShadowBlur,0)),Ue(e,"shadowColor",l.textShadowColor||n.textShadowColor||"transparent"),Ue(e,"shadowOffsetX",A(l.textShadowOffsetX,n.textShadowOffsetX,0)),Ue(e,"shadowOffsetY",A(l.textShadowOffsetY,n.textShadowOffsetY,0)),Ue(e,"textAlign",s),Ue(e,"textBaseline","middle"),Ue(e,"font",i.font||Iw);var d=Xe(l.textStroke||n.textStroke,p),f=je(l.textFill||n.textFill),p=D(l.textStrokeWidth,n.textStrokeWidth);d&&(Ue(e,"lineWidth",p),Ue(e,"strokeStyle",d),e.strokeText(i.text,r,h)),f&&(Ue(e,"fillStyle",f),e.fillText(i.text,r,h))}function We(t){return t.textBackgroundColor||t.textBorderWidth&&t.textBorderColor}function Fe(t,e,i,n,o,a,r){var s=i.textBackgroundColor,l=i.textBorderWidth,u=i.textBorderColor,h=_(s);if(Ue(e,"shadowBlur",i.textBoxShadowBlur||0),Ue(e,"shadowColor",i.textBoxShadowColor||"transparent"),Ue(e,"shadowOffsetX",i.textBoxShadowOffsetX||0),Ue(e,"shadowOffsetY",i.textBoxShadowOffsetY||0),h||l&&u){e.beginPath();var c=i.textBorderRadius;c?Pe(e,{x:n,y:o,width:a,height:r,r:c}):e.rect(n,o,a,r),e.closePath()}if(h)Ue(e,"fillStyle",s),e.fill();else if(w(s)){var d=s.image;(d=de(d,null,t,He,s))&&pe(d)&&e.drawImage(d,n,o,a,r)}l&&u&&(Ue(e,"lineWidth",l),Ue(e,"strokeStyle",u),e.stroke())}function He(t,e){e.image=t}function Ze(t,e,i){var n=e.x||0,o=e.y||0,a=e.textAlign,r=e.textVerticalAlign;if(i){var s=e.textPosition;if(s instanceof Array)n=i.x+Ye(s[0],i.width),o=i.y+Ye(s[1],i.height);else{var l=we(s,i,e.textDistance);n=l.x,o=l.y,a=a||l.textAlign,r=r||l.textVerticalAlign}var u=e.textOffset;u&&(n+=u[0],o+=u[1])}return{baseX:n,baseY:o,textAlign:a,textVerticalAlign:r}}function Ue(t,e,i){return t[e]=cw(t,e,i),t[e]}function Xe(t,e){return null==t||e<=0||"transparent"===t||"none"===t?null:t.image||t.colorStops?"#000":t}function je(t){return null==t||"none"===t?null:t.image||t.colorStops?"#000":t}function Ye(t,e){return"string"==typeof t?t.lastIndexOf("%")>=0?parseFloat(t)/100*e:parseFloat(t):t}function qe(t,e,i){return"right"===e?t-i[1]:"center"===e?t+i[3]/2-i[1]/2:t+i[3]}function Ke(t,e){return null!=t&&(t||e.textBackgroundColor||e.textBorderWidth&&e.textBorderColor||e.textPadding)}function $e(t){t=t||{},iw.call(this,t);for(var e in t)t.hasOwnProperty(e)&&"style"!==e&&(this[e]=t[e]);this.style=new fw(t.style,this),this._rect=null,this.__clipPaths=[]}function Je(t){$e.call(this,t)}function Qe(t){return parseInt(t,10)}function ti(t){return!!t&&(!!t.__builtin__||"function"==typeof t.resize&&"function"==typeof t.refresh)}function ei(t,e,i){return kw.copy(t.getBoundingRect()),t.transform&&kw.applyTransform(t.transform),Pw.width=e,Pw.height=i,!kw.intersect(Pw)}function ii(t,e){if(t==e)return!1;if(!t||!e||t.length!==e.length)return!0;for(var i=0;i=0){var o="touchend"!=n?e.targetTouches[0]:e.changedTouches[0];o&&ri(t,o,e,i)}else ri(t,e,e,i),e.zrDelta=e.wheelDelta?e.wheelDelta/120:-(e.detail||0)/3;var a=e.button;return null==e.which&&void 0!==a&&Ew.test(e.type)&&(e.which=1&a?1:2&a?3:4&a?2:0),e}function ui(t,e,i){Ow?t.addEventListener(e,i):t.attachEvent("on"+e,i)}function hi(t,e,i){Ow?t.removeEventListener(e,i):t.detachEvent("on"+e,i)}function ci(t){return t.which>1}function di(t){var e=t[1][0]-t[0][0],i=t[1][1]-t[0][1];return Math.sqrt(e*e+i*i)}function fi(t){return[(t[0][0]+t[1][0])/2,(t[0][1]+t[1][1])/2]}function pi(t){return"mousewheel"===t&&o_.browser.firefox?"DOMMouseScroll":t}function gi(t,e,i){var n=t._gestureMgr;"start"===i&&n.clear();var o=n.recognize(e,t.handler.findHover(e.zrX,e.zrY,null).target,t.dom);if("end"===i&&n.clear(),o){var a=o.type;e.gestureEvent=a,t.handler.dispatchToElement({target:o.target},a,o.event)}}function mi(t){t._touching=!0,clearTimeout(t._touchTimer),t._touchTimer=setTimeout(function(){t._touching=!1},700)}function vi(t){var e=t.pointerType;return"pen"===e||"touch"===e}function yi(t){function e(t,e){return function(){if(!e._touching)return t.apply(e,arguments)}}d(Ww,function(e){t._handlers[e]=m(Zw[e],t)}),d(Hw,function(e){t._handlers[e]=m(Zw[e],t)}),d(Gw,function(i){t._handlers[i]=e(Zw[i],t)})}function xi(t){function e(e,i){d(e,function(e){ui(t,pi(e),i._handlers[e])},i)}T_.call(this),this.dom=t,this._touching=!1,this._touchTimer,this._gestureMgr=new Bw,this._handlers={},yi(this),o_.pointerEventsSupported?e(Hw,this):(o_.touchEventsSupported&&e(Ww,this),e(Gw,this))}function _i(t,e){var i=new qw(i_(),t,e);return Yw[i.id]=i,i}function wi(t,e){jw[t]=e}function bi(t){delete Yw[t]}function Si(t){return t instanceof Array?t:null==t?[]:[t]}function Mi(t,e,i){if(t){t[e]=t[e]||{},t.emphasis=t.emphasis||{},t.emphasis[e]=t.emphasis[e]||{};for(var n=0,o=i.length;n=i.length&&i.push({option:t})}}),i}function Ai(t){var e=R();$w(t,function(t,i){var n=t.exist;n&&e.set(n.id,t)}),$w(t,function(t,i){var n=t.option;k(!n||null==n.id||!e.get(n.id)||e.get(n.id)===t,"id duplicates: "+(n&&n.id)),n&&null!=n.id&&e.set(n.id,t),!t.keyInfo&&(t.keyInfo={})}),$w(t,function(t,i){var n=t.exist,o=t.option,a=t.keyInfo;if(Jw(o)){if(a.name=null!=o.name?o.name+"":n?n.name:tb+i,n)a.id=n.id;else if(null!=o.id)a.id=o.id+"";else{var r=0;do{a.id="\0"+a.name+"\0"+r++}while(e.get(a.id))}e.set(a.id,t)}})}function Ci(t){var e=t.name;return!(!e||!e.indexOf(tb))}function Li(t){return Jw(t)&&t.id&&0===(t.id+"").indexOf("\0_ec_\0")}function ki(t,e){function i(t,e,i){for(var n=0,o=t.length;n-fb&&tfb||t<-fb}function ji(t,e,i,n,o){var a=1-o;return a*a*(a*t+3*o*e)+o*o*(o*n+3*a*i)}function Yi(t,e,i,n,o){var a=1-o;return 3*(((e-t)*a+2*(i-e)*o)*a+(n-i)*o*o)}function qi(t,e,i,n,o,a){var r=n+3*(e-i)-t,s=3*(i-2*e+t),l=3*(e-t),u=t-o,h=s*s-3*r*l,c=s*l-9*r*u,d=l*l-3*s*u,f=0;if(Ui(h)&&Ui(c))Ui(s)?a[0]=0:(M=-l/s)>=0&&M<=1&&(a[f++]=M);else{var p=c*c-4*h*d;if(Ui(p)){var g=c/h,m=-g/2;(M=-s/r+g)>=0&&M<=1&&(a[f++]=M),m>=0&&m<=1&&(a[f++]=m)}else if(p>0){var v=db(p),y=h*s+1.5*r*(-c+v),x=h*s+1.5*r*(-c-v);(M=(-s-((y=y<0?-cb(-y,mb):cb(y,mb))+(x=x<0?-cb(-x,mb):cb(x,mb))))/(3*r))>=0&&M<=1&&(a[f++]=M)}else{var _=(2*h*s-3*r*c)/(2*db(h*h*h)),w=Math.acos(_)/3,b=db(h),S=Math.cos(w),M=(-s-2*b*S)/(3*r),m=(-s+b*(S+gb*Math.sin(w)))/(3*r),I=(-s+b*(S-gb*Math.sin(w)))/(3*r);M>=0&&M<=1&&(a[f++]=M),m>=0&&m<=1&&(a[f++]=m),I>=0&&I<=1&&(a[f++]=I)}}return f}function Ki(t,e,i,n,o){var a=6*i-12*e+6*t,r=9*e+3*n-3*t-9*i,s=3*e-3*t,l=0;if(Ui(r))Xi(a)&&(c=-s/a)>=0&&c<=1&&(o[l++]=c);else{var u=a*a-4*r*s;if(Ui(u))o[0]=-a/(2*r);else if(u>0){var h=db(u),c=(-a+h)/(2*r),d=(-a-h)/(2*r);c>=0&&c<=1&&(o[l++]=c),d>=0&&d<=1&&(o[l++]=d)}}return l}function $i(t,e,i,n,o,a){var r=(e-t)*o+t,s=(i-e)*o+e,l=(n-i)*o+i,u=(s-r)*o+r,h=(l-s)*o+s,c=(h-u)*o+u;a[0]=t,a[1]=r,a[2]=u,a[3]=c,a[4]=c,a[5]=h,a[6]=l,a[7]=n}function Ji(t,e,i,n,o,a,r,s,l,u,h){var c,d,f,p,g,m=.005,v=1/0;vb[0]=l,vb[1]=u;for(var y=0;y<1;y+=.05)yb[0]=ji(t,i,o,r,y),yb[1]=ji(e,n,a,s,y),(p=S_(vb,yb))=0&&p=0&&c<=1&&(o[l++]=c);else{var u=r*r-4*a*s;if(Ui(u))(c=-r/(2*a))>=0&&c<=1&&(o[l++]=c);else if(u>0){var h=db(u),c=(-r+h)/(2*a),d=(-r-h)/(2*a);c>=0&&c<=1&&(o[l++]=c),d>=0&&d<=1&&(o[l++]=d)}}return l}function nn(t,e,i){var n=t+i-2*e;return 0===n?.5:(t-e)/n}function on(t,e,i,n,o){var a=(e-t)*n+t,r=(i-e)*n+e,s=(r-a)*n+a;o[0]=t,o[1]=a,o[2]=s,o[3]=s,o[4]=r,o[5]=i}function an(t,e,i,n,o,a,r,s,l){var u,h=.005,c=1/0;vb[0]=r,vb[1]=s;for(var d=0;d<1;d+=.05)yb[0]=Qi(t,i,o,d),yb[1]=Qi(e,n,a,d),(m=S_(vb,yb))=0&&m1e-4)return s[0]=t-i,s[1]=e-n,l[0]=t+i,void(l[1]=e+n);if(Ib[0]=Sb(o)*i+t,Ib[1]=bb(o)*n+e,Tb[0]=Sb(a)*i+t,Tb[1]=bb(a)*n+e,u(s,Ib,Tb),h(l,Ib,Tb),(o%=Mb)<0&&(o+=Mb),(a%=Mb)<0&&(a+=Mb),o>a&&!r?a+=Mb:oo&&(Db[0]=Sb(f)*i+t,Db[1]=bb(f)*n+e,u(s,Db,s),h(l,Db,l))}function cn(t,e,i,n,o,a,r){if(0===o)return!1;var s=o,l=0,u=t;if(r>e+s&&r>n+s||rt+s&&a>i+s||ae+c&&h>n+c&&h>a+c&&h>s+c||ht+c&&u>i+c&&u>o+c&&u>r+c||ue+u&&l>n+u&&l>a+u||lt+u&&s>i+u&&s>o+u||si||h+uo&&(o+=Zb);var d=Math.atan2(l,s);return d<0&&(d+=Zb),d>=n&&d<=o||d+Zb>=n&&d+Zb<=o}function mn(t,e,i,n,o,a){if(a>e&&a>n||ao?r:0}function vn(t,e){return Math.abs(t-e)e&&u>n&&u>a&&u>s||u1&&yn(),c=ji(e,n,a,s,qb[0]),p>1&&(d=ji(e,n,a,s,qb[1]))),2==p?me&&s>n&&s>a||s=0&&u<=1){for(var h=0,c=Qi(e,n,a,u),d=0;di||s<-i)return 0;u=Math.sqrt(i*i-s*s);Yb[0]=-u,Yb[1]=u;var l=Math.abs(n-o);if(l<1e-4)return 0;if(l%Xb<1e-4){n=0,o=Xb;p=a?1:-1;return r>=Yb[0]+t&&r<=Yb[1]+t?p:0}if(a){var u=n;n=pn(o),o=pn(u)}else n=pn(n),o=pn(o);n>o&&(o+=Xb);for(var h=0,c=0;c<2;c++){var d=Yb[c];if(d+t>r){var f=Math.atan2(s,d),p=a?1:-1;f<0&&(f=Xb+f),(f>=n&&f<=o||f+Xb>=n&&f+Xb<=o)&&(f>Math.PI/2&&f<1.5*Math.PI&&(p=-p),h+=p)}}return h}function bn(t,e,i,n,o){for(var a=0,r=0,s=0,l=0,u=0,h=0;h1&&(i||(a+=mn(r,s,l,u,n,o))),1==h&&(l=r=t[h],u=s=t[h+1]),c){case Ub.M:r=l=t[h++],s=u=t[h++];break;case Ub.L:if(i){if(cn(r,s,t[h],t[h+1],e,n,o))return!0}else a+=mn(r,s,t[h],t[h+1],n,o)||0;r=t[h++],s=t[h++];break;case Ub.C:if(i){if(dn(r,s,t[h++],t[h++],t[h++],t[h++],t[h],t[h+1],e,n,o))return!0}else a+=xn(r,s,t[h++],t[h++],t[h++],t[h++],t[h],t[h+1],n,o)||0;r=t[h++],s=t[h++];break;case Ub.Q:if(i){if(fn(r,s,t[h++],t[h++],t[h],t[h+1],e,n,o))return!0}else a+=_n(r,s,t[h++],t[h++],t[h],t[h+1],n,o)||0;r=t[h++],s=t[h++];break;case Ub.A:var d=t[h++],f=t[h++],p=t[h++],g=t[h++],m=t[h++],v=t[h++],y=(t[h++],1-t[h++]),x=Math.cos(m)*p+d,_=Math.sin(m)*g+f;h>1?a+=mn(r,s,x,_,n,o):(l=x,u=_);var w=(n-d)*g/p+d;if(i){if(gn(d,f,g,m,m+v,y,e,w,o))return!0}else a+=wn(d,f,g,m,m+v,y,w,o);r=Math.cos(m+v)*p+d,s=Math.sin(m+v)*g+f;break;case Ub.R:l=r=t[h++],u=s=t[h++];var x=l+t[h++],_=u+t[h++];if(i){if(cn(l,u,x,u,e,n,o)||cn(x,u,x,_,e,n,o)||cn(x,_,l,_,e,n,o)||cn(l,_,l,u,e,n,o))return!0}else a+=mn(x,u,x,_,n,o),a+=mn(l,_,l,u,n,o);break;case Ub.Z:if(i){if(cn(r,s,l,u,e,n,o))return!0}else a+=mn(r,s,l,u,n,o);r=l,s=u}}return i||vn(s,u)||(a+=mn(r,s,l,u,n,o)||0),0!==a}function Sn(t,e,i){return bn(t,0,!1,e,i)}function Mn(t,e,i,n){return bn(t,e,!0,i,n)}function In(t){$e.call(this,t),this.path=null}function Tn(t,e,i,n,o,a,r,s,l,u,h){var c=l*(lS/180),d=sS(c)*(t-i)/2+rS(c)*(e-n)/2,f=-1*rS(c)*(t-i)/2+sS(c)*(e-n)/2,p=d*d/(r*r)+f*f/(s*s);p>1&&(r*=aS(p),s*=aS(p));var g=(o===a?-1:1)*aS((r*r*(s*s)-r*r*(f*f)-s*s*(d*d))/(r*r*(f*f)+s*s*(d*d)))||0,m=g*r*f/s,v=g*-s*d/r,y=(t+i)/2+sS(c)*m-rS(c)*v,x=(e+n)/2+rS(c)*m+sS(c)*v,_=cS([1,0],[(d-m)/r,(f-v)/s]),w=[(d-m)/r,(f-v)/s],b=[(-1*d-m)/r,(-1*f-v)/s],S=cS(w,b);hS(w,b)<=-1&&(S=lS),hS(w,b)>=1&&(S=0),0===a&&S>0&&(S-=2*lS),1===a&&S<0&&(S+=2*lS),h.addData(u,y,x,r,s,_,S,c,a)}function Dn(t){if(!t)return[];var e,i=t.replace(/-/g," -").replace(/ /g," ").replace(/ /g,",").replace(/,,/g,",");for(e=0;e0&&""===f[0]&&f.shift();for(var p=0;p=2){if(o&&"spline"!==o){var a=xS(n,o,i,e.smoothConstraint);t.moveTo(n[0][0],n[0][1]);for(var r=n.length,s=0;s<(i?r:r-1);s++){var l=a[2*s],u=a[2*s+1],h=n[(s+1)%r];t.bezierCurveTo(l[0],l[1],u[0],u[1],h[0],h[1])}}else{"spline"===o&&(n=yS(n,i)),t.moveTo(n[0][0],n[0][1]);for(var s=1,c=n.length;s=0)&&(n={textFill:null,textStroke:t.textStroke,textStrokeWidth:t.textStrokeWidth},t.textFill="#fff",null==t.textStroke&&(t.textStroke=i.autoColor,null==t.textStrokeWidth&&(t.textStrokeWidth=2))),n}function uo(t){var e=t.insideRollback;e&&(t.textFill=e.textFill,t.textStroke=e.textStroke,t.textStrokeWidth=e.textStrokeWidth)}function ho(t,e){var i=e||e.getModel("textStyle");return P([t.fontStyle||i&&i.getShallow("fontStyle")||"",t.fontWeight||i&&i.getShallow("fontWeight")||"",(t.fontSize||i&&i.getShallow("fontSize")||12)+"px",t.fontFamily||i&&i.getShallow("fontFamily")||"sans-serif"].join(" "))}function co(t,e,i,n,o,a){if("function"==typeof o&&(a=o,o=null),n&&n.isAnimationEnabled()){var r=t?"Update":"",s=n.getShallow("animationDuration"+r),l=n.getShallow("animationEasing"+r),u=n.getShallow("animationDelay"+r);"function"==typeof u&&(u=u(o,n.getAnimationDelayParams?n.getAnimationDelayParams(e,o):null)),"function"==typeof s&&(s=s(o)),s>0?e.animateTo(i,s,u||0,l,a,!!a):(e.stopAnimation(),e.attr(i),a&&a())}else e.stopAnimation(),e.attr(i),a&&a()}function fo(t,e,i,n,o){co(!0,t,e,i,n,o)}function po(t,e,i,n,o){co(!1,t,e,i,n,o)}function go(t,e){for(var i=lt([]);t&&t!==e;)ht(i,t.getLocalTransform(),i),t=t.parent;return i}function mo(t,e,i){return e&&!c(e)&&(e=O_.getLocalTransform(e)),i&&(e=pt([],e)),Q([],t,e)}function vo(t,e,i){var n=0===e[4]||0===e[5]||0===e[0]?1:Math.abs(2*e[4]/e[0]),o=0===e[4]||0===e[5]||0===e[2]?1:Math.abs(2*e[4]/e[2]),a=["left"===t?-n:"right"===t?n:0,"top"===t?-o:"bottom"===t?o:0];return a=mo(a,e,i),Math.abs(a[0])>Math.abs(a[1])?a[0]>0?"right":"left":a[1]>0?"bottom":"top"}function yo(t,e,i,n){function o(t){var e={position:W(t.position),rotation:t.rotation};return t.shape&&(e.shape=a({},t.shape)),e}if(t&&e){var r=function(t){var e={};return t.traverse(function(t){!t.isGroup&&t.anid&&(e[t.anid]=t)}),e}(t);e.traverse(function(t){if(!t.isGroup&&t.anid){var e=r[t.anid];if(e){var n=o(t);t.attr(o(e)),fo(t,n,i,t.dataIndex)}}})}}function xo(t,e){return f(t,function(t){var i=t[0];i=NS(i,e.x),i=OS(i,e.x+e.width);var n=t[1];return n=NS(n,e.y),n=OS(n,e.y+e.height),[i,n]})}function _o(t,e,i){var n=(e=a({rectHover:!0},e)).style={strokeNoScale:!0};if(i=i||{x:-1,y:-1,width:2,height:2},t)return 0===t.indexOf("image://")?(n.image=t.slice(8),r(n,i),new Je(e)):Rn(t.replace("path://",""),e,i,"center")}function wo(t,e,i){this.parentModel=e,this.ecModel=i,this.option=t}function bo(t,e,i){for(var n=0;n0){if(t<=e[0])return i[0];if(t>=e[1])return i[1]}else{if(t>=e[0])return i[0];if(t<=e[1])return i[1]}else{if(t===e[0])return i[0];if(t===e[1])return i[1]}return(t-e[0])/o*a+i[0]}function Do(t,e){switch(t){case"center":case"middle":t="50%";break;case"left":case"top":t="0%";break;case"right":case"bottom":t="100%"}return"string"==typeof t?Io(t).match(/%$/)?parseFloat(t)/100*e:parseFloat(t):null==t?NaN:+t}function Ao(t,e,i){return null==e&&(e=10),e=Math.min(Math.max(0,e),20),t=(+t).toFixed(e),i?t:+t}function Co(t){return t.sort(function(t,e){return t-e}),t}function Lo(t){if(t=+t,isNaN(t))return 0;for(var e=1,i=0;Math.round(t*e)/e!==t;)e*=10,i++;return i}function ko(t){var e=t.toString(),i=e.indexOf("e");if(i>0){var n=+e.slice(i+1);return n<0?-n:0}var o=e.indexOf(".");return o<0?0:e.length-1-o}function Po(t,e){var i=Math.log,n=Math.LN10,o=Math.floor(i(t[1]-t[0])/n),a=Math.round(i(Math.abs(e[1]-e[0]))/n),r=Math.min(Math.max(-o+a,0),20);return isFinite(r)?r:20}function No(t,e,i){if(!t[e])return 0;var n=p(t,function(t,e){return t+(isNaN(e)?0:e)},0);if(0===n)return 0;for(var o=Math.pow(10,i),a=f(t,function(t){return(isNaN(t)?0:t)/n*o*100}),r=100*o,s=f(a,function(t){return Math.floor(t)}),l=p(s,function(t,e){return t+e},0),u=f(a,function(t,e){return t-s[e]});lh&&(h=u[d],c=d);++s[c],u[c]=0,++l}return s[e]/o}function Oo(t){var e=2*Math.PI;return(t%e+e)%e}function Eo(t){return t>-US&&t=-20?+t.toFixed(n<0?-n:0):t}function Go(t){function e(t,i,n){return t.interval[n]=0}function Fo(t){return isNaN(t)?"-":(t=(t+"").split("."))[0].replace(/(\d{1,3})(?=(?:\d{3})+(?!\d))/g,"$1,")+(t.length>1?"."+t[1]:"")}function Ho(t,e){return t=(t||"").toLowerCase().replace(/-(.)/g,function(t,e){return e.toUpperCase()}),e&&t&&(t=t.charAt(0).toUpperCase()+t.slice(1)),t}function Zo(t){return null==t?"":(t+"").replace(KS,function(t,e){return $S[e]})}function Uo(t,e,i){y(e)||(e=[e]);var n=e.length;if(!n)return"";for(var o=e[0].$vars||[],a=0;a':'':""}function Yo(t,e){return t+="","0000".substr(0,e-t.length)+t}function qo(t,e,i){"week"!==t&&"month"!==t&&"quarter"!==t&&"half-year"!==t&&"year"!==t||(t="MM-dd\nyyyy");var n=Ro(e),o=i?"UTC":"",a=n["get"+o+"FullYear"](),r=n["get"+o+"Month"]()+1,s=n["get"+o+"Date"](),l=n["get"+o+"Hours"](),u=n["get"+o+"Minutes"](),h=n["get"+o+"Seconds"](),c=n["get"+o+"Milliseconds"]();return t=t.replace("MM",Yo(r,2)).replace("M",r).replace("yyyy",a).replace("yy",a%100).replace("dd",Yo(s,2)).replace("d",s).replace("hh",Yo(l,2)).replace("h",l).replace("mm",Yo(u,2)).replace("m",u).replace("ss",Yo(h,2)).replace("s",h).replace("SSS",Yo(c,3))}function Ko(t){return t?t.charAt(0).toUpperCase()+t.substr(1):t}function $o(t,e,i,n,o){var a=0,r=0;null==n&&(n=1/0),null==o&&(o=1/0);var s=0;e.eachChild(function(l,u){var h,c,d=l.position,f=l.getBoundingRect(),p=e.childAt(u+1),g=p&&p.getBoundingRect();if("horizontal"===t){var m=f.width+(g?-g.x+f.x:0);(h=a+m)>n||l.newline?(a=0,h=m,r+=s+i,s=f.height):s=Math.max(s,f.height)}else{var v=f.height+(g?-g.y+f.y:0);(c=r+v)>o||l.newline?(a+=s+i,r=0,c=v,s=f.width):s=Math.max(s,f.width)}l.newline||(d[0]=a,d[1]=r,"horizontal"===t?a=h+i:r=c+i)})}function Jo(t,e,i){var n=e.width,o=e.height,a=Do(t.x,n),r=Do(t.y,o),s=Do(t.x2,n),l=Do(t.y2,o);return(isNaN(a)||isNaN(parseFloat(t.x)))&&(a=0),(isNaN(s)||isNaN(parseFloat(t.x2)))&&(s=n),(isNaN(r)||isNaN(parseFloat(t.y)))&&(r=0),(isNaN(l)||isNaN(parseFloat(t.y2)))&&(l=o),i=qS(i||0),{width:Math.max(s-a-i[1]-i[3],0),height:Math.max(l-r-i[0]-i[2],0)}}function Qo(t,e,i){i=qS(i||0);var n=e.width,o=e.height,a=Do(t.left,n),r=Do(t.top,o),s=Do(t.right,n),l=Do(t.bottom,o),u=Do(t.width,n),h=Do(t.height,o),c=i[2]+i[0],d=i[1]+i[3],f=t.aspect;switch(isNaN(u)&&(u=n-s-d-a),isNaN(h)&&(h=o-l-c-r),null!=f&&(isNaN(u)&&isNaN(h)&&(f>n/o?u=.8*n:h=.8*o),isNaN(u)&&(u=f*h),isNaN(h)&&(h=u/f)),isNaN(a)&&(a=n-s-u-d),isNaN(r)&&(r=o-l-h-c),t.left||t.right){case"center":a=n/2-u/2-i[3];break;case"right":a=n-u-d}switch(t.top||t.bottom){case"middle":case"center":r=o/2-h/2-i[0];break;case"bottom":r=o-h-c}a=a||0,r=r||0,isNaN(u)&&(u=n-d-a-(s||0)),isNaN(h)&&(h=o-c-r-(l||0));var p=new $t(a+i[3],r+i[0],u,h);return p.margin=i,p}function ta(t,e,i,n,o){var a=!o||!o.hv||o.hv[0],s=!o||!o.hv||o.hv[1],l=o&&o.boundingMode||"all";if(a||s){var u;if("raw"===l)u="group"===t.type?new $t(0,0,+e.width||0,+e.height||0):t.getBoundingRect();else if(u=t.getBoundingRect(),t.needLocalTransform()){var h=t.getLocalTransform();(u=u.clone()).applyTransform(h)}e=Qo(r({width:u.width,height:u.height},e),i,n);var c=t.position,d=a?e.x-u.x:0,f=s?e.y-u.y:0;t.attr("position","raw"===l?[d,f]:[c[0]+d,c[1]+f])}}function ea(t,e){return null!=t[aM[e][0]]||null!=t[aM[e][1]]&&null!=t[aM[e][2]]}function ia(t,e,i){function n(i,n){var r={},l=0,u={},h=0;if(nM(i,function(e){u[e]=t[e]}),nM(i,function(t){o(e,t)&&(r[t]=u[t]=e[t]),a(r,t)&&l++,a(u,t)&&h++}),s[n])return a(e,i[1])?u[i[2]]=null:a(e,i[2])&&(u[i[1]]=null),u;if(2!==h&&l){if(l>=2)return r;for(var c=0;ce)return t[n];return t[i-1]}function ra(t){var e=t.get("coordinateSystem"),i={coordSysName:e,coordSysDims:[],axisMap:R(),categoryAxisMap:R()},n=pM[e];if(n)return n(t,i,i.axisMap,i.categoryAxisMap),i}function sa(t){return"category"===t.get("type")}function la(t){this.fromDataset=t.fromDataset,this.data=t.data||(t.sourceFormat===yM?{}:[]),this.sourceFormat=t.sourceFormat||xM,this.seriesLayoutBy=t.seriesLayoutBy||wM,this.dimensionsDefine=t.dimensionsDefine,this.encodeDefine=t.encodeDefine&&R(t.encodeDefine),this.startIndex=t.startIndex||0,this.dimensionsDetectCount=t.dimensionsDetectCount}function ua(t){var e=t.option.source,i=xM;if(S(e))i=_M;else if(y(e))for(var n=0,o=e.length;n=e:"max"===i?t<=e:t===e}function Oa(t,e){return t.join(",")===e.join(",")}function Ea(t,e){AM(e=e||{},function(e,i){if(null!=e){var n=t[i];if(uM.hasClass(i)){e=Si(e);var o=Di(n=Si(n),e);t[i]=LM(o,function(t){return t.option&&t.exist?kM(t.exist,t.option,!0):t.exist||t.option})}else t[i]=kM(n,e,!0)}})}function Ra(t){var e=t&&t.itemStyle;if(e)for(var i=0,o=EM.length;i=0;p--){var g=t[p];if(s||(d=g.data.rawIndexOf(g.stackedByDimension,c)),d>=0){var m=g.data.getByRawIndex(g.stackResultDimension,d);if(h>=0&&m>0||h<=0&&m<0){h+=m,f=m;break}}}return n[0]=h,n[1]=f,n});r.hostModel.setData(l),e.data=l})}function Ya(t,e){la.isInstance(t)||(t=la.seriesDataToSource(t)),this._source=t;var i=this._data=t.data,n=t.sourceFormat;n===_M&&(this._offset=0,this._dimSize=e,this._data=i),a(this,WM[n===mM?n+"_"+t.seriesLayoutBy:n])}function qa(){return this._data.length}function Ka(t){return this._data[t]}function $a(t){for(var e=0;ee.outputData.count()&&e.model.getRawData().cloneShallow(e.outputData)}function dr(t,e){d(t.CHANGABLE_METHODS,function(i){t.wrapMethod(i,v(fr,e))})}function fr(t){var e=pr(t);e&&e.setOutputEnd(this.count())}function pr(t){var e=(t.ecModel||{}).scheduler,i=e&&e.getPipeline(t.uid);if(i){var n=i.currentTask;if(n){var o=n.agentStubMap;o&&(n=o.get(t.uid))}return n}}function gr(){this.group=new rw,this.uid=Mo("viewChart"),this.renderTask=nr({plan:yr,reset:xr}),this.renderTask.context={view:this}}function mr(t,e){if(t&&(t.trigger(e),"group"===t.type))for(var i=0;i=0?n():c=setTimeout(n,-a),u=o};return d.clear=function(){c&&(clearTimeout(c),c=null)},d.debounceNextCall=function(t){l=t},d}function wr(t,e,i,n){var o=t[e];if(o){var a=o[nI]||o,r=o[aI];if(o[oI]!==i||r!==n){if(null==i||!n)return t[e]=a;(o=t[e]=_r(a,i,"debounce"===n))[nI]=a,o[aI]=n,o[oI]=i}return o}}function br(t,e){var i=t[e];i&&i[nI]&&(t[e]=i[nI])}function Sr(t,e,i,n){this.ecInstance=t,this.api=e,this.unfinished;var i=this._dataProcessorHandlers=i.slice(),n=this._visualHandlers=n.slice();this._allHandlers=i.concat(n),this._stageTaskMap=R()}function Mr(t,e,i,n,o){function a(t,e){return t.setDirty&&(!t.dirtyMap||t.dirtyMap.get(e.__pipeline.id))}o=o||{};var r;d(e,function(e,s){if(!o.visualType||o.visualType===e.visualType){var l=t._stageTaskMap.get(e.uid),u=l.seriesTaskMap,h=l.overallTask;if(h){var c,d=h.agentStubMap;d.each(function(t){a(o,t)&&(t.dirty(),c=!0)}),c&&h.dirty(),cI(h,n);var f=t.getPerformArgs(h,o.block);d.each(function(t){t.perform(f)}),r|=h.perform(f)}else u&&u.each(function(s,l){a(o,s)&&s.dirty();var u=t.getPerformArgs(s,o.block);u.skip=!e.performRawSeries&&i.isSeriesFiltered(s.context.model),cI(s,n),r|=s.perform(u)})}}),t.unfinished|=r}function Ir(t,e,i,n,o){function a(i){var a=i.uid,s=r.get(a)||r.set(a,nr({plan:kr,reset:Pr,count:Or}));s.context={model:i,ecModel:n,api:o,useClearVisual:e.isVisual&&!e.isLayout,plan:e.plan,reset:e.reset,scheduler:t},Er(t,i,s)}var r=i.seriesTaskMap||(i.seriesTaskMap=R()),s=e.seriesType,l=e.getTargetSeries;e.createOnAllSeries?n.eachRawSeries(a):s?n.eachRawSeriesByType(s,a):l&&l(n,o).each(a);var u=t._pipelineMap;r.each(function(t,e){u.get(e)||(t.dispose(),r.removeKey(e))})}function Tr(t,e,i,n,o){function a(e){var i=e.uid,n=s.get(i);n||(n=s.set(i,nr({reset:Ar,onDirty:Lr})),r.dirty()),n.context={model:e,overallProgress:h,modifyOutputEnd:c},n.agent=r,n.__block=h,Er(t,e,n)}var r=i.overallTask=i.overallTask||nr({reset:Dr});r.context={ecModel:n,api:o,overallReset:e.overallReset,scheduler:t};var s=r.agentStubMap=r.agentStubMap||R(),l=e.seriesType,u=e.getTargetSeries,h=!0,c=e.modifyOutputEnd;l?n.eachRawSeriesByType(l,a):u?u(n,o).each(a):(h=!1,d(n.getSeries(),a));var f=t._pipelineMap;s.each(function(t,e){f.get(e)||(t.dispose(),r.dirty(),s.removeKey(e))})}function Dr(t){t.overallReset(t.ecModel,t.api,t.payload)}function Ar(t,e){return t.overallProgress&&Cr}function Cr(){this.agent.dirty(),this.getDownstream().dirty()}function Lr(){this.agent&&this.agent.dirty()}function kr(t){return t.plan&&t.plan(t.model,t.ecModel,t.api,t.payload)}function Pr(t){t.useClearVisual&&t.data.clearAllVisual();var e=t.resetDefines=Si(t.reset(t.model,t.ecModel,t.api,t.payload));return e.length>1?f(e,function(t,e){return Nr(e)}):dI}function Nr(t){return function(e,i){var n=i.data,o=i.resetDefines[t];if(o&&o.dataEach)for(var a=e.start;ae.get("hoverLayerThreshold")&&!o_.node&&i.traverse(function(t){t.isGroup||(t.useHoverLayer=!0)})}function is(t,e){var i=t.get("blendMode")||null;e.group.traverse(function(t){t.isGroup||t.style.blend!==i&&t.setStyle("blend",i),t.eachPendingDisplayable&&t.eachPendingDisplayable(function(t){t.setStyle("blend",i)})})}function ns(t,e){var i=t.get("z"),n=t.get("zlevel");e.group.traverse(function(t){"group"!==t.type&&(null!=i&&(t.z=i),null!=n&&(t.zlevel=n))})}function os(t){var e=t._coordSysMgr;return a(new Aa(t),{getCoordinateSystems:m(e.getCoordinateSystems,e),getComponentByElement:function(e){for(;e;){var i=e.__ecComponentInfo;if(null!=i)return t._model.getComponent(i.mainType,i.index);e=e.parent}}})}function as(t){function e(t,e){for(var n=0;n65535?iT:nT}function Cs(t){var e=t.constructor;return e===Array?t.slice():new e(t)}function Ls(t,e){d(oT.concat(e.__wrappedMethods||[]),function(i){e.hasOwnProperty(i)&&(t[i]=e[i])}),t.__wrappedMethods=e.__wrappedMethods,d(aT,function(n){t[n]=i(e[n])}),t._calculationInfo=a(e._calculationInfo)}function ks(t){var e=t._invertedIndicesMap;d(e,function(i,n){var o=t._dimensionInfos[n].ordinalMeta;if(o){i=e[n]=new iT(o.categories.length);for(a=0;a=0?this._indices[t]:-1}function Es(t,e){var i=t._idList[e];return null==i&&(i=Ps(t,t._idDimIdx,e)),null==i&&(i=tT+e),i}function Rs(t){return y(t)||(t=[t]),t}function zs(t,e){var i=t.dimensions,n=new rT(f(i,t.getDimensionInfo,t),t.hostModel);Ls(n,t);for(var o=n._storage={},a=t._storage,r=0;r=0?(o[s]=Bs(a[s]),n._rawExtent[s]=Vs(),n._extent[s]=null):o[s]=a[s])}return n}function Bs(t){for(var e=new Array(t.length),i=0;in&&(r=o.interval=n);var s=o.intervalPrecision=Qs(r);return el(o.niceTickExtent=[fT(Math.ceil(t[0]/r)*r,s),fT(Math.floor(t[1]/r)*r,s)],t),o}function Qs(t){return ko(t)+2}function tl(t,e,i){t[e]=Math.max(Math.min(t[e],i[1]),i[0])}function el(t,e){!isFinite(t[0])&&(t[0]=e[0]),!isFinite(t[1])&&(t[1]=e[1]),tl(t,0,e),tl(t,1,e),t[0]>t[1]&&(t[0]=t[1])}function il(t,e,i,n){var o=[];if(!t)return o;e[0]1e4)return[];return e[1]>(o.length?o[o.length-1]:i[1])&&o.push(e[1]),o}function nl(t){return t.get("stack")||mT+t.seriesIndex}function ol(t){return t.dim+t.index}function al(t){var e=[],i=t.axis;if("category"===i.type){for(var n=i.getBandWidth(),o=0;o=0?"p":"n",b=m;p&&(o[r][_]||(o[r][_]={p:m,n:m}),b=o[r][_][w]);var S,M,I,T;if(g)S=b,M=(D=i.dataToPoint([x,_]))[1]+l,I=D[0]-m,T=u,Math.abs(I)=0||i?e.toGlobalCoord(e.dataToCoord(0)):e.getGlobalExtent()[0]}function pl(t,e){return AT(t,DT(e))}function gl(t,e){var i,n,o,a=t.type,r=e.getMin(),s=e.getMax(),l=null!=r,u=null!=s,h=t.getExtent();"ordinal"===a?i=e.getCategories().length:(y(n=e.get("boundaryGap"))||(n=[n||0,n||0]),"boolean"==typeof n[0]&&(n=[0,0]),n[0]=Do(n[0],1),n[1]=Do(n[1],1),o=h[1]-h[0]||Math.abs(h[0])),null==r&&(r="ordinal"===a?i?0:NaN:h[0]-n[0]*o),null==s&&(s="ordinal"===a?i?i-1:NaN:h[1]+n[1]*o),"dataMin"===r?r=h[0]:"function"==typeof r&&(r=r({min:h[0],max:h[1]})),"dataMax"===s?s=h[1]:"function"==typeof s&&(s=s({min:h[0],max:h[1]})),(null==r||!isFinite(r))&&(r=NaN),(null==s||!isFinite(s))&&(s=NaN),t.setBlank(I(r)||I(s)||"ordinal"===a&&!t.getOrdinalMeta().categories.length),e.getNeedCrossZero()&&(r>0&&s>0&&!l&&(r=0),r<0&&s<0&&!u&&(s=0));var c=e.ecModel;if(c&&"time"===a){var f,p=rl("bar",c);if(d(p,function(t){f|=t.getBaseAxis()===e.axis}),f){var g=sl(p),m=ml(r,s,e,g);r=m.min,s=m.max}}return[r,s]}function ml(t,e,i,n){var o=i.axis.getExtent(),a=o[1]-o[0],r=ul(n,i.axis);if(void 0===r)return{min:t,max:e};var s=1/0;d(r,function(t){s=Math.min(t.offset,s)});var l=-1/0;d(r,function(t){l=Math.max(t.offset+t.width,l)}),s=Math.abs(s),l=Math.abs(l);var u=s+l,h=e-t,c=h/(1-(s+l)/a)-h;return e+=c*(l/u),t-=c*(s/u),{min:t,max:e}}function vl(t,e){var i=gl(t,e),n=null!=e.getMin(),o=null!=e.getMax(),a=e.get("splitNumber");"log"===t.type&&(t.base=e.get("logBase"));var r=t.type;t.setExtent(i[0],i[1]),t.niceExtent({splitNumber:a,fixMin:n,fixMax:o,minInterval:"interval"===r||"time"===r?e.get("minInterval"):null,maxInterval:"interval"===r||"time"===r?e.get("maxInterval"):null});var s=e.get("interval");null!=s&&t.setInterval&&t.setInterval(s)}function yl(t,e){if(e=e||t.get("type"))switch(e){case"category":return new dT(t.getOrdinalMeta?t.getOrdinalMeta():t.getCategories(),[1/0,-1/0]);case"value":return new gT;default:return(Ys.getClass(e)||gT).create(t)}}function xl(t){var e=t.scale.getExtent(),i=e[0],n=e[1];return!(i>0&&n>0||i<0&&n<0)}function _l(t){var e=t.getLabelModel().get("formatter"),i="category"===t.type?t.scale.getExtent()[0]:null;return"string"==typeof e?e=function(t){return function(e){return t.replace("{value}",null!=e?e:"")}}(e):"function"==typeof e?function(n,o){return null!=i&&(o=n-i),e(wl(t,n),o)}:function(e){return t.scale.getLabel(e)}}function wl(t,e){return"category"===t.type?t.scale.getLabel(e):e}function bl(t){var e=t.model,i=t.scale;if(e.get("axisLabel.show")&&!i.isBlank()){var n,o,a="category"===t.type,r=i.getExtent();o=a?i.count():(n=i.getTicks()).length;var s,l=t.getLabelModel(),u=_l(t),h=1;o>40&&(h=Math.ceil(o/40));for(var c=0;c>1^-(1&s),l=l>>1^-(1&l),o=s+=o,a=l+=a,n.push([s/i,l/i])}return n}function kl(t){return"category"===t.type?Nl(t):El(t)}function Pl(t,e){return"category"===t.type?Ol(t,e):{ticks:t.scale.getTicks()}}function Nl(t){var e=t.getLabelModel(),i=Rl(t,"labels"),n=Zl(e),o=zl(i,n);if(o)return o;var a,r;return a=!e.get("show")||t.scale.isBlank()?[]:x(n)?Hl(t,n):Fl(t,r="auto"===n?Vl(t):n),Bl(i,n,{labels:a,labelCategoryInterval:r})}function Ol(t,e){var i=Rl(t,"ticks"),n=Zl(e),o=zl(i,n);if(o)return o;var a,r=n;if(e.get("show")&&!t.scale.isBlank()||(a=[]),x(r))a=Hl(t,r,!0);else{if("auto"===r){var s=Nl(t);null!=(r=s.labelCategoryInterval)?a=f(s.labels,function(t){return t.tickValue}):r=Vl(t,!0)}null==a&&(a=Fl(t,r,!0))}return Bl(i,n,{ticks:a,tickCategoryInterval:r})}function El(t){var e=t.scale.getTicks(),i=_l(t);return{labels:f(e,function(e,n){return{formattedLabel:i(e,n),rawLabel:t.scale.getLabel(e),tickValue:e}})}}function Rl(t,e){return XT(t)[e]||(XT(t)[e]=[])}function zl(t,e){for(var i=0;i40&&(l=Math.max(1,Math.floor(s/40)));for(var u=r[0],h=t.dataToCoord(u+1)-t.dataToCoord(u),c=Math.abs(h*Math.cos(o)),d=Math.abs(h*Math.sin(o)),f=0,p=0;u<=r[1];u+=l){var g=0,m=0;if(!e){var v=me(n(u),i.font,"center","top");g=1.3*v.width,m=1.3*v.height}f=Math.max(f,g,7),p=Math.max(p,m,7)}var y=f/c,x=p/d;isNaN(y)&&(y=1/0),isNaN(x)&&(x=1/0);var _=Math.max(0,Math.floor(Math.min(y,x))),w=XT(t.model),b=w.lastAutoInterval,S=w.lastTickCount;return null!=b&&null!=S&&Math.abs(b-_)<=1&&Math.abs(S-s)<=1&&b>_?_=b:(w.lastTickCount=s,w.lastAutoInterval=_),_}function Wl(t){var e=t.getLabelModel();return{axisRotate:t.getRotate?t.getRotate():t.isHorizontal&&!t.isHorizontal()?90:0,labelRotate:e.get("rotate")||0,font:e.getFont()}}function Fl(t,e,i){function n(t){l.push(i?t:{formattedLabel:o(t),rawLabel:a.getLabel(t),tickValue:t})}var o=_l(t),a=t.scale,r=a.getExtent(),s=t.getLabelModel(),l=[],u=Math.max((e||0)+1,1),h=r[0],c=a.count();0!==h&&u>1&&c/u>2&&(h=Math.round(Math.ceil(h/u)*u));var d={min:s.get("showMinLabel"),max:s.get("showMaxLabel")};d.min&&h!==r[0]&&n(r[0]);for(var f=h;f<=r[1];f+=u)n(f);return d.max&&f!==r[1]&&n(r[1]),l}function Hl(t,e,i){var n=t.scale,o=_l(t),a=[];return d(n.getTicks(),function(t){var r=n.getLabel(t);e(t,r)&&a.push(i?t:{formattedLabel:o(t),rawLabel:r,tickValue:t})}),a}function Zl(t){var e=t.get("interval");return null==e?"auto":e}function Ul(t,e){var i=(t[1]-t[0])/e/2;t[0]+=i,t[1]-=i}function Xl(t,e,i,n,o){function a(t,e){return h?t>e:t0&&(t.coord-=u/(2*(e+1)))}),s={coord:e[r-1].coord+u},e.push(s)}var h=l[0]>l[1];a(e[0].coord,l[0])&&(o?e[0].coord=l[0]:e.shift()),o&&a(l[0],e[0].coord)&&e.unshift({coord:l[0]}),a(l[1],s.coord)&&(o?s.coord=l[1]:e.pop()),o&&a(s.coord,l[1])&&e.push({coord:l[1]})}}function jl(t,e){var i=t.mapDimension("defaultedLabel",!0),n=i.length;if(1===n)return er(t,e,i[0]);if(n){for(var o=[],a=0;a0?i=n[0]:n[1]<0&&(i=n[1]),i}function nu(t,e,i,n){var o=NaN;t.stacked&&(o=i.get(i.getCalculationInfo("stackedOverDimension"),n)),isNaN(o)&&(o=t.valueStart);var a=t.baseDataOffset,r=[];return r[a]=i.get(t.baseDim,n),r[1-a]=o,e.dataToPoint(r)}function ou(t,e){var i=[];return e.diff(t).add(function(t){i.push({cmd:"+",idx:t})}).update(function(t,e){i.push({cmd:"=",idx:e,idx1:t})}).remove(function(t){i.push({cmd:"-",idx:t})}).execute(),i}function au(t){return isNaN(t[0])||isNaN(t[1])}function ru(t,e,i,n,o,a,r,s,l,u,h){return null==u?su(e,"x")?lu(t,e,i,n,o,a,r,s,l,"x",h):su(e,"y")?lu(t,e,i,n,o,a,r,s,l,"y",h):uu.apply(this,arguments):"none"!==u&&su(e,u)?lu.apply(this,arguments):uu.apply(this,arguments)}function su(t,e){if(t.length<=1)return!0;for(var i="x"===e?0:1,n=t[0][i],o=0,a=1;a=0!=o>=0)return!1;isNaN(r)||0===r||(o=r,n=t[a][i])}return!0}function lu(t,e,i,n,o,a,r,s,l,u,h){for(var c=0,d=i,f=0;f=o||d<0)break;if(au(p)){if(h){d+=a;continue}break}if(d===i)t[a>0?"moveTo":"lineTo"](p[0],p[1]);else if(l>0){var g=e[c],m="y"===u?1:0,v=(p[m]-g[m])*l;lD(hD,g),hD[m]=g[m]+v,lD(cD,p),cD[m]=p[m]-v,t.bezierCurveTo(hD[0],hD[1],cD[0],cD[1],p[0],p[1])}else t.lineTo(p[0],p[1]);c=d,d+=a}return f}function uu(t,e,i,n,o,a,r,s,l,u,h){for(var c=0,d=i,f=0;f=o||d<0)break;if(au(p)){if(h){d+=a;continue}break}if(d===i)t[a>0?"moveTo":"lineTo"](p[0],p[1]),lD(hD,p);else if(l>0){var g=d+a,m=e[g];if(h)for(;m&&au(e[g]);)m=e[g+=a];var v=.5,y=e[c];if(!(m=e[g])||au(m))lD(cD,p);else{au(m)&&!h&&(m=p),U(uD,m,y);var x,_;if("x"===u||"y"===u){var w="x"===u?0:1;x=Math.abs(p[w]-y[w]),_=Math.abs(p[w]-m[w])}else x=b_(p,y),_=b_(p,m);sD(cD,p,uD,-l*(1-(v=_/(_+x))))}aD(hD,hD,s),rD(hD,hD,r),aD(cD,cD,s),rD(cD,cD,r),t.bezierCurveTo(hD[0],hD[1],cD[0],cD[1],p[0],p[1]),sD(hD,p,uD,l*v)}else t.lineTo(p[0],p[1]);c=d,d+=a}return f}function hu(t,e){var i=[1/0,1/0],n=[-1/0,-1/0];if(e)for(var o=0;on[0]&&(n[0]=a[0]),a[1]>n[1]&&(n[1]=a[1])}return{min:e?i:n,max:e?n:i}}function cu(t,e){if(t.length===e.length){for(var i=0;ie[0]?1:-1;e[0]+=n*i,e[1]-=n*i}return e}function pu(t,e,i){if(!i.valueDim)return[];for(var n=[],o=0,a=e.count();oa[1]&&a.reverse();var r=o.getExtent(),s=Math.PI/180;i&&(a[0]-=.5,a[1]+=.5);var l=new mS({shape:{cx:Ao(t.cx,1),cy:Ao(t.cy,1),r0:Ao(a[0],1),r:Ao(a[1],1),startAngle:-r[0]*s,endAngle:-r[1]*s,clockwise:o.inverse}});return e&&(l.shape.endAngle=-r[0]*s,po(l,{shape:{endAngle:-r[1]*s}},n)),l}function vu(t,e,i,n){return"polar"===t.type?mu(t,e,i,n):gu(t,e,i,n)}function yu(t,e,i){for(var n=e.getBaseAxis(),o="x"===n.dim||"radius"===n.dim?0:1,a=[],r=0;r=0;a--){var r=i[a].dimension,s=t.dimensions[r],l=t.getDimensionInfo(s);if("x"===(n=l&&l.coordDim)||"y"===n){o=i[a];break}}if(o){var u=e.getAxis(n),h=f(o.stops,function(t){return{coord:u.toGlobalCoord(u.dataToCoord(t.value)),color:t.color}}),c=h.length,p=o.outerColors.slice();c&&h[0].coord>h[c-1].coord&&(h.reverse(),p.reverse());var g=h[0].coord-10,m=h[c-1].coord+10,v=m-g;if(v<.001)return"transparent";d(h,function(t){t.offset=(t.coord-g)/v}),h.push({offset:c?h[c-1].offset:.5,color:p[1]||"transparent"}),h.unshift({offset:c?h[0].offset:.5,color:p[0]||"transparent"});var y=new CS(0,0,0,0,h,!0);return y[n]=g,y[n+"2"]=m,y}}}function _u(t,e,i){var n=t.get("showAllSymbol"),o="auto"===n;if(!n||o){var a=i.getAxesByScale("ordinal")[0];if(a&&(!o||!wu(a,e))){var r=e.mapDimension(a.dim),s={};return d(a.getViewLabels(),function(t){s[t.tickValue]=1}),function(t){return!s.hasOwnProperty(e.get(r,t))}}}}function wu(t,e){var i=t.getExtent(),n=Math.abs(i[1]-i[0])/t.scale.count();isNaN(n)&&(n=0);for(var o=e.count(),a=Math.max(1,Math.round(o/5)),r=0;rn)return!1;return!0}function bu(t){return this._axes[t]}function Su(t){yD.call(this,t)}function Mu(t,e){return e.type||(e.data?"category":"value")}function Iu(t,e,i){return t.getCoordSysModel()===e}function Tu(t,e,i){this._coordsMap={},this._coordsList=[],this._axesMap={},this._axesList=[],this._initCartesian(t,e,i),this.model=t}function Du(t,e,i){i.getAxesOnZeroOf=function(){return n?[n]:[]};var n,o=t[e],a=i.model,r=a.get("axisLine.onZero"),s=a.get("axisLine.onZeroAxisIndex");if(r)if(null==s){for(var l in o)if(o.hasOwnProperty(l)&&Au(o[l])){n=o[l];break}}else Au(o[s])&&(n=o[s])}function Au(t){return t&&"category"!==t.type&&"time"!==t.type&&xl(t)}function Cu(t,e){var i=t.getExtent(),n=i[0]+i[1];t.toGlobalCoord="x"===t.dim?function(t){return t+e}:function(t){return n-t+e},t.toLocalCoord="x"===t.dim?function(t){return t-e}:function(t){return n-t+e}}function Lu(t,e){return f(DD,function(e){return t.getReferringComponents(e)[0]})}function ku(t){return"cartesian2d"===t.get("coordinateSystem")}function Pu(t){var e={componentType:t.mainType};return e[t.mainType+"Index"]=t.componentIndex,e}function Nu(t,e,i,n){var o,a,r=Oo(i-t.rotation),s=n[0]>n[1],l="start"===e&&!s||"start"!==e&&s;return Eo(r-AD/2)?(a=l?"bottom":"top",o="center"):Eo(r-1.5*AD)?(a=l?"top":"bottom",o="center"):(a="middle",o=r<1.5*AD&&r>AD/2?l?"left":"right":l?"right":"left"),{rotation:r,textAlign:o,textVerticalAlign:a}}function Ou(t){var e=t.get("tooltip");return t.get("silent")||!(t.get("triggerEvent")||e&&e.show)}function Eu(t,e,i){var n=t.get("axisLabel.showMinLabel"),o=t.get("axisLabel.showMaxLabel");e=e||[],i=i||[];var a=e[0],r=e[1],s=e[e.length-1],l=e[e.length-2],u=i[0],h=i[1],c=i[i.length-1],d=i[i.length-2];!1===n?(Ru(a),Ru(u)):zu(a,r)&&(n?(Ru(r),Ru(h)):(Ru(a),Ru(u))),!1===o?(Ru(s),Ru(c)):zu(l,s)&&(o?(Ru(l),Ru(d)):(Ru(s),Ru(c)))}function Ru(t){t&&(t.ignore=!0)}function zu(t,e,i){var n=t&&t.getBoundingRect().clone(),o=e&&e.getBoundingRect().clone();if(n&&o){var a=lt([]);return dt(a,a,-t.rotation),n.applyTransform(ht([],a,t.getLocalTransform())),o.applyTransform(ht([],a,e.getLocalTransform())),n.intersect(o)}}function Bu(t){return"middle"===t||"center"===t}function Vu(t,e,i){var n=e.axis;if(e.get("axisTick.show")&&!n.scale.isBlank()){for(var o=e.getModel("axisTick"),a=o.getModel("lineStyle"),s=o.get("length"),l=n.getTicksCoords(),u=[],h=[],c=t._transform,d=[],f=0;f=0||t===e}function ju(t){var e=Yu(t);if(e){var i=e.axisPointerModel,n=e.axis.scale,o=i.option,a=i.get("status"),r=i.get("value");null!=r&&(r=n.parse(r));var s=Ku(i);null==a&&(o.status=s?"show":"hide");var l=n.getExtent().slice();l[0]>l[1]&&l.reverse(),(null==r||r>l[1])&&(r=l[1]),r0?"bottom":"top":o.width>0?"left":"right";l||eh(t.style,d,n,u,a,i,p),eo(t,d)}function rh(t,e){var i=t.get(FD)||0;return Math.min(i,Math.abs(e.width),Math.abs(e.height))}function sh(t,e,i){var n=t.getData(),o=[],a=n.getLayout("valueAxisHorizontal")?1:0;o[1-a]=n.getLayout("valueAxisStart");var r=new UD({shape:{points:n.getLayout("largePoints")},incremental:!!i,__startPoint:o,__valueIdx:a});e.add(r),lh(r,t,n)}function lh(t,e,i){var n=i.getVisual("borderColor")||i.getVisual("color"),o=e.getModel("itemStyle").getItemStyle(["color","borderColor"]);t.useStyle(o),t.style.fill=null,t.style.stroke=n,t.style.lineWidth=i.getLayout("barWidth")}function uh(t,e,i,n){var o=e.getData(),a=this.dataIndex,r=o.getName(a),s=e.get("selectedOffset");n.dispatchAction({type:"pieToggleSelect",from:t,name:r,seriesId:e.id}),o.each(function(t){hh(o.getItemGraphicEl(t),o.getItemLayout(t),e.isSelected(o.getName(t)),s,i)})}function hh(t,e,i,n,o){var a=(e.startAngle+e.endAngle)/2,r=Math.cos(a),s=Math.sin(a),l=i?n:0,u=[r*l,s*l];o?t.animate().when(200,{position:u}).start("bounceOut"):t.attr("position",u)}function ch(t,e){function i(){a.ignore=a.hoverIgnore,r.ignore=r.hoverIgnore}function n(){a.ignore=a.normalIgnore,r.ignore=r.normalIgnore}rw.call(this);var o=new mS({z2:2}),a=new wS,r=new dS;this.add(o),this.add(a),this.add(r),this.updateData(t,e,!0),this.on("emphasis",i).on("normal",n).on("mouseover",i).on("mouseout",n)}function dh(t,e,i,n,o,a,r){function s(e,i){for(var n=e;n>=0&&(t[n].y-=i,!(n>0&&t[n].y>t[n-1].y+t[n-1].height));n--);}function l(t,e,i,n,o,a){for(var r=e?Number.MAX_VALUE:0,s=0,l=t.length;s=r&&(d=r-10),!e&&d<=r&&(d=r+10),t[s].x=i+d*a,r=d}}t.sort(function(t,e){return t.y-e.y});for(var u,h=0,c=t.length,d=[],f=[],p=0;pe&&a+1t[a].y+t[a].height)return void s(a,n/2);s(i-1,n/2)}(p,c,-u),h=t[p].y+t[p].height;r-h<0&&s(c-1,h-r);for(p=0;p=i?f.push(t[p]):d.push(t[p]);l(d,!1,e,i,n,o),l(f,!0,e,i,n,o)}function fh(t,e,i,n,o,a){for(var r=[],s=[],l=0;l1?(p.width=l,p.height=l/d):(p.height=l,p.width=l*d),p.y=s[1]-p.height/2,p.x=s[0]-p.width/2}else(a=t.getBoxLayoutParams()).aspect=d,p=Qo(a,{width:u,height:h});this.setViewRect(p.x,p.y,p.width,p.height),this.setCenter(t.get("center")),this.setZoom(t.get("zoom"))}function Ih(t,e){d(e.get("geoCoord"),function(e,i){t.addGeoCoord(i,e)})}function Th(t,e,i){Ch(t)[e]=i}function Dh(t,e,i){var n=Ch(t);n[e]===i&&(n[e]=null)}function Ah(t,e){return!!Ch(t)[e]}function Ch(t){return t[yA]||(t[yA]={})}function Lh(t){this.pointerChecker,this._zr=t,this._opt={};var e=m,n=e(kh,this),o=e(Ph,this),a=e(Nh,this),s=e(Oh,this),l=e(Eh,this);T_.call(this),this.setPointerChecker=function(t){this.pointerChecker=t},this.enable=function(e,u){this.disable(),this._opt=r(i(u)||{},{zoomOnMouseWheel:!0,moveOnMouseMove:!0,preventDefaultMouseMove:!0}),null==e&&(e=!0),!0!==e&&"move"!==e&&"pan"!==e||(t.on("mousedown",n),t.on("mousemove",o),t.on("mouseup",a)),!0!==e&&"scale"!==e&&"zoom"!==e||(t.on("mousewheel",s),t.on("pinch",l))},this.disable=function(){t.off("mousedown",n),t.off("mousemove",o),t.off("mouseup",a),t.off("mousewheel",s),t.off("pinch",l)},this.dispose=this.disable,this.isDragging=function(){return this._dragging},this.isPinching=function(){return this._pinching}}function kh(t){if(!(ci(t)||t.target&&t.target.draggable)){var e=t.offsetX,i=t.offsetY;this.pointerChecker&&this.pointerChecker(t,e,i)&&(this._x=e,this._y=i,this._dragging=!0)}}function Ph(t){if(!ci(t)&&zh(this,"moveOnMouseMove",t)&&this._dragging&&"pinch"!==t.gestureEvent&&!Ah(this._zr,"globalPan")){var e=t.offsetX,i=t.offsetY,n=this._x,o=this._y,a=e-n,r=i-o;this._x=e,this._y=i,this._opt.preventDefaultMouseMove&&Rw(t.event),this.trigger("pan",a,r,n,o,e,i)}}function Nh(t){ci(t)||(this._dragging=!1)}function Oh(t){if(zh(this,"zoomOnMouseWheel",t)&&0!==t.wheelDelta){var e=t.wheelDelta>0?1.1:1/1.1;Rh.call(this,t,e,t.offsetX,t.offsetY)}}function Eh(t){if(!Ah(this._zr,"globalPan")){var e=t.pinchScale>1?1.1:1/1.1;Rh.call(this,t,e,t.pinchX,t.pinchY)}}function Rh(t,e,i,n){this.pointerChecker&&this.pointerChecker(t,i,n)&&(Rw(t.event),this.trigger("zoom",e,i,n))}function zh(t,e,i){var n=t._opt[e];return n&&(!_(n)||i.event[n+"Key"])}function Bh(t,e,i){var n=t.target,o=n.position;o[0]+=e,o[1]+=i,n.dirty()}function Vh(t,e,i,n){var o=t.target,a=t.zoomLimit,r=o.position,s=o.scale,l=t.zoom=t.zoom||1;if(l*=e,a){var u=a.min||0,h=a.max||1/0;l=Math.max(Math.min(h,l),u)}var c=l/t.zoom;t.zoom=l,r[0]-=(i-r[0])*(c-1),r[1]-=(n-r[1])*(c-1),s[0]*=c,s[1]*=c,o.dirty()}function Gh(t,e,i){var n=e.getComponentByElement(t.topTarget),o=n&&n.coordinateSystem;return n&&n!==i&&!xA[n.mainType]&&o&&o.model!==i}function Wh(t,e){var i=t.getItemStyle(),n=t.get("areaColor");return null!=n&&(i.fill=n),i}function Fh(t,e,i,n,o){i.off("click"),i.off("mousedown"),e.get("selectedMode")&&(i.on("mousedown",function(){t._mouseDownFlag=!0}),i.on("click",function(a){if(t._mouseDownFlag){t._mouseDownFlag=!1;for(var r=a.target;!r.__regions;)r=r.parent;if(r){var s={type:("geo"===e.mainType?"geo":"map")+"ToggleSelect",batch:f(r.__regions,function(t){return{name:t.name,from:o.uid}})};s[e.mainType+"Id"]=e.id,n.dispatchAction(s),Hh(e,i)}}}))}function Hh(t,e){e.eachChild(function(e){d(e.__regions,function(i){e.trigger(t.isSelected(i.name)?"emphasis":"normal")})})}function Zh(t,e){var i=new rw;this._controller=new Lh(t.getZr()),this._controllerHost={target:e?i:null},this.group=i,this._updateGroup=e,this._mouseDownFlag}function Uh(t,e,i){var n=t.getZoom(),o=t.getCenter(),a=e.zoom,r=t.dataToPoint(o);if(null!=e.dx&&null!=e.dy){r[0]-=e.dx,r[1]-=e.dy;o=t.pointToData(r);t.setCenter(o)}if(null!=a){if(i){var s=i.min||0,l=i.max||1/0;a=Math.max(Math.min(n*a,l),s)/n}t.scale[0]*=a,t.scale[1]*=a;var u=t.position,h=(e.originX-u[0])*(a-1),c=(e.originY-u[1])*(a-1);u[0]-=h,u[1]-=c,t.updateTransform();o=t.pointToData(r);t.setCenter(o),t.setZoom(a*n)}return{center:t.getCenter(),zoom:t.getZoom()}}function Xh(t,e){var i={};return d(t,function(t){t.each(t.mapDimension("value"),function(e,n){var o="ec-"+t.getName(n);i[o]=i[o]||[],isNaN(e)||i[o].push(e)})}),t[0].map(t[0].mapDimension("value"),function(n,o){for(var a="ec-"+t[0].getName(o),r=0,s=1/0,l=-1/0,u=i[a].length,h=0;h=0;o--){var a=i[o];a.hierNode={defaultAncestor:null,ancestor:a,prelim:0,modifier:0,change:0,shift:0,i:o,thread:null},n.push(a)}}function oc(t,e){var i=t.isExpand?t.children:[],n=t.parentNode.children,o=t.hierNode.i?n[t.hierNode.i-1]:null;if(i.length){uc(t);var a=(i[0].hierNode.prelim+i[i.length-1].hierNode.prelim)/2;o?(t.hierNode.prelim=o.hierNode.prelim+e(t,o),t.hierNode.modifier=t.hierNode.prelim-a):t.hierNode.prelim=a}else o&&(t.hierNode.prelim=o.hierNode.prelim+e(t,o));t.parentNode.hierNode.defaultAncestor=hc(t,o,t.parentNode.hierNode.defaultAncestor||n[0],e)}function ac(t){var e=t.hierNode.prelim+t.parentNode.hierNode.modifier;t.setLayout({x:e},!0),t.hierNode.modifier+=t.parentNode.hierNode.modifier}function rc(t){return arguments.length?t:gc}function sc(t,e){var i={};return t-=Math.PI/2,i.x=e*Math.cos(t),i.y=e*Math.sin(t),i}function lc(t,e){return Qo(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()})}function uc(t){for(var e=t.children,i=e.length,n=0,o=0;--i>=0;){var a=e[i];a.hierNode.prelim+=n,a.hierNode.modifier+=n,o+=a.hierNode.change,n+=a.hierNode.shift+o}}function hc(t,e,i,n){if(e){for(var o=t,a=t,r=a.parentNode.children[0],s=e,l=o.hierNode.modifier,u=a.hierNode.modifier,h=r.hierNode.modifier,c=s.hierNode.modifier;s=cc(s),a=dc(a),s&&a;){o=cc(o),r=dc(r),o.hierNode.ancestor=t;var d=s.hierNode.prelim+c-a.hierNode.prelim-u+n(s,a);d>0&&(pc(fc(s,t,i),t,d),u+=d,l+=d),c+=s.hierNode.modifier,u+=a.hierNode.modifier,l+=o.hierNode.modifier,h+=r.hierNode.modifier}s&&!cc(o)&&(o.hierNode.thread=s,o.hierNode.modifier+=c-l),a&&!dc(r)&&(r.hierNode.thread=a,r.hierNode.modifier+=u-h,i=t)}return i}function cc(t){var e=t.children;return e.length&&t.isExpand?e[e.length-1]:t.hierNode.thread}function dc(t){var e=t.children;return e.length&&t.isExpand?e[0]:t.hierNode.thread}function fc(t,e,i){return t.hierNode.ancestor.parentNode===e.parentNode?t.hierNode.ancestor:i}function pc(t,e,i){var n=i/(e.hierNode.i-t.hierNode.i);e.hierNode.change-=n,e.hierNode.shift+=i,e.hierNode.modifier+=i,e.hierNode.prelim+=i,t.hierNode.change+=n}function gc(t,e){return t.parentNode===e.parentNode?1:2}function mc(t,e){var i=t.getItemLayout(e);return i&&!isNaN(i.x)&&!isNaN(i.y)&&"none"!==t.getItemVisual(e,"symbol")}function vc(t,e,i){return i.itemModel=e,i.itemStyle=e.getModel("itemStyle").getItemStyle(),i.hoverItemStyle=e.getModel("emphasis.itemStyle").getItemStyle(),i.lineStyle=e.getModel("lineStyle").getLineStyle(),i.labelModel=e.getModel("label"),i.hoverLabelModel=e.getModel("emphasis.label"),!1===t.isExpand&&0!==t.children.length?i.symbolInnerColor=i.itemStyle.fill:i.symbolInnerColor="#fff",i}function yc(t,e,i,n,o,a){var s=!i,l=t.tree.getNodeByDataIndex(e),a=vc(l,l.getModel(),a),u=t.tree.root,h=l.parentNode===u?l:l.parentNode||l,c=t.getItemGraphicEl(h.dataIndex),d=h.getLayout(),f=c?{x:c.position[0],y:c.position[1],rawX:c.__radialOldRawX,rawY:c.__radialOldRawY}:d,p=l.getLayout();s?(i=new Yl(t,e,a)).attr("position",[f.x,f.y]):i.updateData(t,e,a),i.__radialOldRawX=i.__radialRawX,i.__radialOldRawY=i.__radialRawY,i.__radialRawX=p.rawX,i.__radialRawY=p.rawY,n.add(i),t.setItemGraphicEl(e,i),fo(i,{position:[p.x,p.y]},o);var g=i.getSymbolPath();if("radial"===a.layout){var m,v,y=u.children[0],x=y.getLayout(),_=y.children.length;if(p.x===x.x&&!0===l.isExpand){var w={};w.x=(y.children[0].getLayout().x+y.children[_-1].getLayout().x)/2,w.y=(y.children[0].getLayout().y+y.children[_-1].getLayout().y)/2,(m=Math.atan2(w.y-x.y,w.x-x.x))<0&&(m=2*Math.PI+m),(v=w.xx.x)||(m-=Math.PI);var b=v?"left":"right";g.setStyle({textPosition:b,textRotation:-m,textOrigin:"center",verticalAlign:"middle"})}if(l.parentNode&&l.parentNode!==u){var S=i.__edge;S||(S=i.__edge=new IS({shape:_c(a,f,f),style:r({opacity:0},a.lineStyle)})),fo(S,{shape:_c(a,d,p),style:{opacity:1}},o),n.add(S)}}function xc(t,e,i,n,o,a){for(var r,s=t.tree.getNodeByDataIndex(e),l=t.tree.root,a=vc(s,s.getModel(),a),u=s.parentNode===l?s:s.parentNode||s;null==(r=u.getLayout());)u=u.parentNode===l?u:u.parentNode||u;fo(i,{position:[r.x+1,r.y+1]},o,function(){n.remove(i),t.setItemGraphicEl(e,null)}),i.fadeOut(null,{keepLabel:!0});var h=i.__edge;h&&fo(h,{shape:_c(a,r,r),style:{opacity:0}},o,function(){n.remove(h)})}function _c(t,e,i){var n,o,a,r,s=t.orient;if("radial"===t.layout){var l=e.rawX,u=e.rawY,h=i.rawX,c=i.rawY,d=sc(l,u),f=sc(l,u+(c-u)*t.curvature),p=sc(h,c+(u-c)*t.curvature),g=sc(h,c);return{x1:d.x,y1:d.y,x2:g.x,y2:g.y,cpx1:f.x,cpy1:f.y,cpx2:p.x,cpy2:p.y}}var l=e.x,u=e.y,h=i.x,c=i.y;return"LR"!==s&&"RL"!==s||(n=l+(h-l)*t.curvature,o=u,a=h+(l-h)*t.curvature,r=c),"TB"!==s&&"BT"!==s||(n=l,o=u+(c-u)*t.curvature,a=h,r=c+(u-c)*t.curvature),{x1:l,y1:u,x2:h,y2:c,cpx1:n,cpy1:o,cpx2:a,cpy2:r}}function wc(t,e,i){for(var n,o=[t],a=[];n=o.pop();)if(a.push(n),n.isExpand){var r=n.children;if(r.length)for(var s=0;s=0;a--)n.push(o[a])}}function Sc(t,e){var i=lc(t,e);t.layoutInfo=i;var n=t.get("layout"),o=0,a=0,r=null;"radial"===n?(o=2*Math.PI,a=Math.min(i.height,i.width)/2,r=rc(function(t,e){return(t.parentNode===e.parentNode?1:2)/t.depth})):(o=i.width,a=i.height,r=rc());var s=t.getData().tree.root,l=s.children[0];if(l){nc(s),wc(l,oc,r),s.hierNode.modifier=-l.hierNode.prelim,bc(l,ac);var u=l,h=l,c=l;bc(l,function(t){var e=t.getLayout().x;eh.getLayout().x&&(h=t),t.depth>c.depth&&(c=t)});var d=u===h?1:r(u,h)/2,f=d-u.getLayout().x,p=0,g=0,m=0,v=0;if("radial"===n)p=o/(h.getLayout().x+d+f),g=a/(c.depth-1||1),bc(l,function(t){m=(t.getLayout().x+f)*p,v=(t.depth-1)*g;var e=sc(m,v);t.setLayout({x:e.x,y:e.y,rawX:m,rawY:v},!0)});else{var y=t.getOrient();"RL"===y||"LR"===y?(g=a/(h.getLayout().x+d+f),p=o/(c.depth-1||1),bc(l,function(t){v=(t.getLayout().x+f)*g,m="LR"===y?(t.depth-1)*p:o-(t.depth-1)*p,t.setLayout({x:m,y:v},!0)})):"TB"!==y&&"BT"!==y||(p=o/(h.getLayout().x+d+f),g=a/(c.depth-1||1),bc(l,function(t){m=(t.getLayout().x+f)*p,v="TB"===y?(t.depth-1)*g:a-(t.depth-1)*g,t.setLayout({x:m,y:v},!0)}))}}}function Mc(t,e,i){if(t&&l(e,t.type)>=0){var n=i.getData().tree.root,o=t.targetNode;if(o&&n.contains(o))return{node:o};var a=t.targetNodeId;if(null!=a&&(o=n.getNodeById(a)))return{node:o}}}function Ic(t){for(var e=[];t;)(t=t.parentNode)&&e.push(t);return e.reverse()}function Tc(t,e){return l(Ic(t),e)>=0}function Dc(t,e){for(var i=[];t;){var n=t.dataIndex;i.push({name:t.name,dataIndex:n,value:e.getRawValue(n)}),t=t.parentNode}return i.reverse(),i}function Ac(t){var e=0;d(t.children,function(t){Ac(t);var i=t.value;y(i)&&(i=i[0]),e+=i});var i=t.value;y(i)&&(i=i[0]),(null==i||isNaN(i))&&(i=e),i<0&&(i=0),y(t.value)?t.value[0]=i:t.value=i}function Cc(t,e){var i=e.get("color");if(i){var n;return d(t=t||[],function(t){var e=new wo(t),i=e.get("color");(e.get("itemStyle.color")||i&&"none"!==i)&&(n=!0)}),n||((t[0]||(t[0]={})).color=i.slice()),t}}function Lc(t){this.group=new rw,t.add(this.group)}function kc(t,e,i,n,o,a){var r=[[o?t:t-MA,e],[t+i,e],[t+i,e+n],[o?t:t-MA,e+n]];return!a&&r.splice(2,0,[t+i+MA,e+n/2]),!o&&r.push([t,e+n/2]),r}function Pc(t,e,i){t.eventData={componentType:"series",componentSubType:"treemap",seriesIndex:e.componentIndex,seriesName:e.name,seriesType:"treemap",selfType:"breadcrumb",nodeData:{dataIndex:i&&i.dataIndex,name:i&&i.name},treePathInfo:i&&Dc(i,e)}}function Nc(){var t,e=[],i={};return{add:function(t,n,o,a,r){return _(a)&&(r=a,a=0),!i[t.id]&&(i[t.id]=1,e.push({el:t,target:n,time:o,delay:a,easing:r}),!0)},done:function(e){return t=e,this},start:function(){for(var n=e.length,o=0,a=e.length;o=0;a--)null==i[a]&&(delete n[e[a]],e.pop())}function Bc(t,e){var i=t.visual,n=[];w(i)?GA(i,function(t){n.push(t)}):null!=i&&n.push(i);var o={color:1,symbol:1};e||1!==n.length||o.hasOwnProperty(t.type)||(n[1]=n[0]),Xc(t,n)}function Vc(t){return{applyVisual:function(e,i,n){e=this.mapValueToVisual(e),n("color",t(i("color"),e))},_doMap:Zc([0,1])}}function Gc(t){var e=this.option.visual;return e[Math.round(To(t,[0,1],[0,e.length-1],!0))]||{}}function Wc(t){return function(e,i,n){n(t,this.mapValueToVisual(e))}}function Fc(t){var e=this.option.visual;return e[this.option.loop&&t!==FA?t%e.length:t]}function Hc(){return this.option.visual[0]}function Zc(t){return{linear:function(e){return To(e,t,this.option.visual,!0)},category:Fc,piecewise:function(e,i){var n=Uc.call(this,i);return null==n&&(n=To(e,t,this.option.visual,!0)),n},fixed:Hc}}function Uc(t){var e=this.option,i=e.pieceList;if(e.hasSpecialVisual){var n=i[HA.findPieceIndex(t,i)];if(n&&n.visual)return n.visual[this.type]}}function Xc(t,e){return t.visual=e,"color"===t.type&&(t.parsedVisual=f(e,function(t){return At(t)})),e}function jc(t,e,i){return t?e<=i:e=o.length||t===o[t.depth])&&Yc(t,ed(r,h,t,e,g,a),i,n,o,a)})}else l=Kc(h),t.setVisual("color",l)}}function qc(t,e,i,n){var o=a({},e);return d(["color","colorAlpha","colorSaturation"],function(a){var r=t.get(a,!0);null==r&&i&&(r=i[a]),null==r&&(r=e[a]),null==r&&(r=n.get(a)),null!=r&&(o[a]=r)}),o}function Kc(t){var e=Jc(t,"color");if(e){var i=Jc(t,"colorAlpha"),n=Jc(t,"colorSaturation");return n&&(e=Et(e,null,null,n)),i&&(e=Rt(e,i)),e}}function $c(t,e){return null!=e?Et(e,null,null,t):null}function Jc(t,e){var i=t[e];if(null!=i&&"none"!==i)return i}function Qc(t,e,i,n,o,a){if(a&&a.length){var r=td(e,"color")||null!=o.color&&"none"!==o.color&&(td(e,"colorAlpha")||td(e,"colorSaturation"));if(r){var s=e.get("visualMin"),l=e.get("visualMax"),u=i.dataExtent.slice();null!=s&&su[1]&&(u[1]=l);var h=e.get("colorMappingBy"),c={type:r.name,dataExtent:u,visual:r.range};"color"!==c.type||"index"!==h&&"id"!==h?c.mappingMethod="linear":(c.mappingMethod="category",c.loop=!0);var d=new HA(c);return d.__drColorMappingBy=h,d}}}function td(t,e){var i=t.get(e);return XA(i)&&i.length?{name:e,range:i}:null}function ed(t,e,i,n,o,r){var s=a({},e);if(o){var l=o.type,u="color"===l&&o.__drColorMappingBy,h="index"===u?n:"id"===u?r.mapIdToIndex(i.getId()):i.getValue(t.get("visualDimension"));s[l]=o.mapValueToVisual(h)}return s}function id(t,e,i,n){var o,a;if(!t.isRemoved()){var r=t.getLayout();o=r.width,a=r.height;var s=(f=t.getModel()).get(QA),l=f.get(tC)/2,u=dd(f),h=Math.max(s,u),c=s-l,d=h-l,f=t.getModel();t.setLayout({borderWidth:s,upperHeight:h,upperLabelHeight:u},!0);var p=(o=qA(o-2*c,0))*(a=qA(a-c-d,0)),g=nd(t,f,p,e,i,n);if(g.length){var m={x:c,y:d,width:o,height:a},v=KA(o,a),y=1/0,x=[];x.area=0;for(var _=0,w=g.length;_=0;l--){var u=o["asc"===n?r-l-1:l].getValue();u/i*es[1]&&(s[1]=e)})}else s=[NaN,NaN];return{sum:n,dataExtent:s}}function sd(t,e,i){for(var n,o=0,a=1/0,r=0,s=t.length;ro&&(o=n));var l=t.area*t.area,u=e*e*i;return l?qA(u*o/l,l/(u*a)):1/0}function ld(t,e,i,n,o){var a=e===i.width?0:1,r=1-a,s=["x","y"],l=["width","height"],u=i[s[a]],h=e?t.area/e:0;(o||h>i[l[r]])&&(h=i[l[r]]);for(var c=0,d=t.length;cXS&&(u=XS),a=s}u=0?n+=u:n-=u:p>=0?n-=u:n+=u}return n}function Cd(t,e){return t.getVisual("opacity")||t.getModel().get(e)}function Ld(t,e,i){var n=t.getGraphicEl(),o=Cd(t,e);null!=i&&(null==o&&(o=1),o*=i),n.downplay&&n.downplay(),n.traverse(function(t){"group"!==t.type&&t.setStyle("opacity",o)})}function kd(t,e){var i=Cd(t,e),n=t.getGraphicEl();n.highlight&&n.highlight(),n.traverse(function(t){"group"!==t.type&&t.setStyle("opacity",i)})}function Pd(t){return t instanceof Array||(t=[t,t]),t}function Nd(t){var e=t.coordinateSystem;if(!e||"view"===e.type){var i=t.getGraph();i.eachNode(function(t){var e=t.getModel();t.setLayout([+e.get("x"),+e.get("y")])}),Od(i)}}function Od(t){t.eachEdge(function(t){var e=t.getModel().get("lineStyle.curveness")||0,i=W(t.node1.getLayout()),n=W(t.node2.getLayout()),o=[i,n];+e&&o.push([(i[0]+n[0])/2-(i[1]-n[1])*e,(i[1]+n[1])/2-(n[0]-i[0])*e]),t.setLayout(o)})}function Ed(t){var e=t.coordinateSystem;if(!e||"view"===e.type){var i=e.getBoundingRect(),n=t.getData(),o=n.graph,a=0,r=n.getSum("value"),s=2*Math.PI/(r||n.count()),l=i.width/2+i.x,u=i.height/2+i.y,h=Math.min(i.width,i.height)/2;o.eachNode(function(t){var e=t.getValue("value");a+=s*(r?e:1)/2,t.setLayout([h*Math.cos(a)+l,h*Math.sin(a)+u]),a+=s*(r?e:1)/2}),n.setLayout({cx:l,cy:u}),o.eachEdge(function(t){var e,i=t.getModel().get("lineStyle.curveness")||0,n=W(t.node1.getLayout()),o=W(t.node2.getLayout()),a=(n[0]+o[0])/2,r=(n[1]+o[1])/2;+i&&(e=[l*(i*=3)+a*(1-i),u*i+r*(1-i)]),t.setLayout([n,o,e])})}}function Rd(t,e,i){for(var n=i.rect,o=n.width,a=n.height,r=[n.x+o/2,n.y+a/2],s=null==i.gravity?.1:i.gravity,l=0;l0?-1:i<0?1:e?-1:1}}function jd(t,e){return Math.min(e[1],Math.max(e[0],t))}function Yd(t,e,i){this._axesMap=R(),this._axesLayout={},this.dimensions=t.dimensions,this._rect,this._model=t,this._init(t,e,i)}function qd(t,e){return NC(OC(t,e[0]),e[1])}function Kd(t,e){var i=e.layoutLength/(e.axisCount-1);return{position:i*t,axisNameAvailableWidth:i,axisLabelShow:!0}}function $d(t,e){var i,n,o=e.layoutLength,a=e.axisExpandWidth,r=e.axisCount,s=e.axisCollapseWidth,l=e.winInnerIndices,u=s,h=!1;return tYC}function ff(t){var e=t.length-1;return e<0&&(e=0),[t[0],t[e]]}function pf(t,e,i,n){var o=new rw;return o.add(new bS({name:"main",style:yf(i),silent:!0,draggable:!0,cursor:"move",drift:WC(t,e,o,"nswe"),ondragend:WC(cf,e,{isEnd:!0})})),FC(n,function(i){o.add(new bS({name:i,style:{opacity:0},draggable:!0,silent:!0,invisible:!0,drift:WC(t,e,o,i),ondragend:WC(cf,e,{isEnd:!0})}))}),o}function gf(t,e,i,n){var o=n.brushStyle.lineWidth||0,a=UC(o,qC),r=i[0][0],s=i[1][0],l=r-o/2,u=s-o/2,h=i[0][1],c=i[1][1],d=h-a+o/2,f=c-a+o/2,p=h-r,g=c-s,m=p+o,v=g+o;vf(t,e,"main",r,s,p,g),n.transformable&&(vf(t,e,"w",l,u,a,v),vf(t,e,"e",d,u,a,v),vf(t,e,"n",l,u,m,a),vf(t,e,"s",l,f,m,a),vf(t,e,"nw",l,u,a,a),vf(t,e,"ne",d,u,a,a),vf(t,e,"sw",l,f,a,a),vf(t,e,"se",d,f,a,a))}function mf(t,e){var i=e.__brushOption,n=i.transformable,o=e.childAt(0);o.useStyle(yf(i)),o.attr({silent:!n,cursor:n?"move":"default"}),FC(["w","e","n","s","se","sw","ne","nw"],function(i){var o=e.childOfName(i),a=wf(t,i);o&&o.attr({silent:!n,invisible:!n,cursor:n?JC[a]+"-resize":null})})}function vf(t,e,i,n,o,a,r){var s=e.childOfName(i);s&&s.setShape(Tf(If(t,e,[[n,o],[n+a,o+r]])))}function yf(t){return r({strokeNoScale:!0},t.brushStyle)}function xf(t,e,i,n){var o=[ZC(t,i),ZC(e,n)],a=[UC(t,i),UC(e,n)];return[[o[0],a[0]],[o[1],a[1]]]}function _f(t){return go(t.group)}function wf(t,e){if(e.length>1)return("e"===(n=[wf(t,(e=e.split(""))[0]),wf(t,e[1])])[0]||"w"===n[0])&&n.reverse(),n.join("");var i={left:"w",right:"e",top:"n",bottom:"s"},n=vo({w:"left",e:"right",n:"top",s:"bottom"}[e],_f(t));return i[n]}function bf(t,e,i,n,o,a,r,s){var l=n.__brushOption,u=t(l.range),h=Mf(i,a,r);FC(o.split(""),function(t){var e=$C[t];u[e[0]][e[1]]+=h[e[0]]}),l.range=e(xf(u[0][0],u[1][0],u[0][1],u[1][1])),rf(i,n),cf(i,{isEnd:!1})}function Sf(t,e,i,n,o){var a=e.__brushOption.range,r=Mf(t,i,n);FC(a,function(t){t[0]+=r[0],t[1]+=r[1]}),rf(t,e),cf(t,{isEnd:!1})}function Mf(t,e,i){var n=t.group,o=n.transformCoordToLocal(e,i),a=n.transformCoordToLocal(0,0);return[o[0]-a[0],o[1]-a[1]]}function If(t,e,n){var o=uf(t,e);return o&&!0!==o?o.clipPath(n,t._transform):i(n)}function Tf(t){var e=ZC(t[0][0],t[1][0]),i=ZC(t[0][1],t[1][1]);return{x:e,y:i,width:UC(t[0][0],t[1][0])-e,height:UC(t[0][1],t[1][1])-i}}function Df(t,e,i){if(t._brushType){var n=t._zr,o=t._covers,a=lf(t,e,i);if(!t._dragging)for(var r=0;r=i.length)return e;for(var o=-1,a=e.length,r=i[n++],s={},l={};++o=i.length)return t;var a=[],r=n[o++];return d(t,function(t,i){a.push({key:i,values:e(t,o)})}),r?a.sort(function(t,e){return r(t.key,e.key)}):a}var i=[],n=[];return{key:function(t){return i.push(t),this},sortKeys:function(t){return n[i.length-1]=t,this},entries:function(i){return e(t(i,0),0)}}}function Jf(t,e){return Qo(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()})}function Qf(t,e,i,n,o,a,r){ep(t,e,i,o),op(t,e,a,n,r),cp(t)}function tp(t){d(t,function(t){var e=pp(t.outEdges,yp),i=pp(t.inEdges,yp),n=Math.max(e,i);t.setLayout({value:n},!0)})}function ep(t,e,i,n){for(var o=[],a=[],r=[],s=[],l=0,u=0;u0;o--)sp(a,r*=.99),rp(a,n,i),up(a,r),rp(a,n,i)}function ap(t,e,i,n,o){var a=[];d(e,function(t){var e=t.length,i=0;d(t,function(t){i+=t.getLayout().value});var r=(n-(e-1)*o)/i;a.push(r)}),a.sort(function(t,e){return t-e});var r=a[0];d(e,function(t){d(t,function(t,e){t.setLayout({y:e},!0);var i=t.getLayout().value*r;t.setLayout({dy:i},!0)})}),d(i,function(t){var e=+t.getValue()*r;t.setLayout({dy:e},!0)})}function rp(t,e,i){d(t,function(t){var n,o,a,r=0,s=t.length;for(t.sort(mp),a=0;a0){l=n.getLayout().y+o;n.setLayout({y:l},!0)}r=n.getLayout().y+n.getLayout().dy+e}if((o=r-e-i)>0){var l=n.getLayout().y-o;for(n.setLayout({y:l},!0),r=n.getLayout().y,a=s-2;a>=0;--a)(o=(n=t[a]).getLayout().y+n.getLayout().dy+e-r)>0&&(l=n.getLayout().y-o,n.setLayout({y:l},!0)),r=n.getLayout().y}})}function sp(t,e){d(t.slice().reverse(),function(t){d(t,function(t){if(t.outEdges.length){var i=pp(t.outEdges,lp)/pp(t.outEdges,yp),n=t.getLayout().y+(i-gp(t))*e;t.setLayout({y:n},!0)}})})}function lp(t){return gp(t.node2)*t.getValue()}function up(t,e){d(t,function(t){d(t,function(t){if(t.inEdges.length){var i=pp(t.inEdges,hp)/pp(t.inEdges,yp),n=t.getLayout().y+(i-gp(t))*e;t.setLayout({y:n},!0)}})})}function hp(t){return gp(t.node1)*t.getValue()}function cp(t){d(t,function(t){t.outEdges.sort(dp),t.inEdges.sort(fp)}),d(t,function(t){var e=0,i=0;d(t.outEdges,function(t){t.setLayout({sy:e},!0),e+=t.getLayout().dy}),d(t.inEdges,function(t){t.setLayout({ty:i},!0),i+=t.getLayout().dy})})}function dp(t,e){return t.node2.getLayout().y-e.node2.getLayout().y}function fp(t,e){return t.node1.getLayout().y-e.node1.getLayout().y}function pp(t,e){for(var i=0,n=t.length,o=-1;++o0?"P":"N",a=n.getVisual("borderColor"+o)||n.getVisual("color"+o),r=i.getModel(mL).getItemStyle(yL);e.useStyle(r),e.style.fill=null,e.style.stroke=a}function Lp(t,e,i,n,o){return i>n?-1:i0?t.get(o,e-1)<=n?1:-1:1}function kp(t,e){var i,n=t.getBaseAxis(),o="category"===n.type?n.getBandWidth():(i=n.getExtent(),Math.abs(i[1]-i[0])/e.count()),a=Do(D(t.get("barMaxWidth"),o),o),r=Do(D(t.get("barMinWidth"),1),o),s=t.get("barWidth");return null!=s?Do(s,o):Math.max(Math.min(o/2,a),r)}function Pp(t){return y(t)||(t=[+t,+t]),t}function Np(t,e){t.eachChild(function(t){t.attr({z:e.z,zlevel:e.zlevel,style:{stroke:"stroke"===e.brushType?e.color:null,fill:"fill"===e.brushType?e.color:null}})})}function Op(t,e){rw.call(this);var i=new Yl(t,e),n=new rw;this.add(i),this.add(n),n.beforeUpdate=function(){this.attr(i.getScale())},this.updateData(t,e)}function Ep(t){var e=t.data;e&&e[0]&&e[0][0]&&e[0][0].coord&&(t.data=f(e,function(t){var e={coords:[t[0].coord,t[1].coord]};return t[0].name&&(e.fromName=t[0].name),t[1].name&&(e.toName=t[1].name),o([e,t[0],t[1]])}))}function Rp(t,e,i){rw.call(this),this.add(this.createLine(t,e,i)),this._updateEffectSymbol(t,e)}function zp(t,e,i){rw.call(this),this._createPolyline(t,e,i)}function Bp(t,e,i){Rp.call(this,t,e,i),this._lastFrame=0,this._lastFramePercent=0}function Vp(){this.group=new rw}function Gp(t){return t instanceof Array||(t=[t,t]),t}function Wp(){var t=g_();this.canvas=t,this.blurSize=30,this.pointSize=20,this.maxOpacity=1,this.minOpacity=0,this._gradientPixels={}}function Fp(t,e,i){var n=t[1]-t[0],o=(e=f(e,function(e){return{interval:[(e.interval[0]-t[0])/n,(e.interval[1]-t[0])/n]}})).length,a=0;return function(t){for(n=a;n=0;n--){var r=e[n].interval;if(r[0]<=t&&t<=r[1]){a=n;break}}return n>=0&&n=e[0]&&t<=e[1]}}function Zp(t){var e=t.dimensions;return"lng"===e[0]&&"lat"===e[1]}function Up(t,e,i,n){var o=t.getItemLayout(e),a=i.get("symbolRepeat"),r=i.get("symbolClip"),s=i.get("symbolPosition")||"start",l=(i.get("symbolRotate")||0)*Math.PI/180||0,u=i.get("symbolPatternSize")||2,h=i.isAnimationEnabled(),c={dataIndex:e,layout:o,itemModel:i,symbolType:t.getItemVisual(e,"symbol")||"circle",color:t.getItemVisual(e,"color"),symbolClip:r,symbolRepeat:a,symbolRepeatDirection:i.get("symbolRepeatDirection"),symbolPatternSize:u,rotation:l,animationModel:h?i:null,hoverAnimation:h&&i.get("hoverAnimation"),z2:i.getShallow("z",!0)||0};Xp(i,a,o,n,c),Yp(t,e,o,a,r,c.boundingLength,c.pxSign,u,n,c),qp(i,c.symbolScale,l,n,c);var d=c.symbolSize,f=i.get("symbolOffset");return y(f)&&(f=[Do(f[0],d[0]),Do(f[1],d[1])]),Kp(i,d,o,a,r,f,s,c.valueLineWidth,c.boundingLength,c.repeatCutLength,n,c),c}function Xp(t,e,i,n,o){var a,r=n.valueDim,s=t.get("symbolBoundingData"),l=n.coordSys.getOtherAxis(n.coordSys.getBaseAxis()),u=l.toGlobalCoord(l.dataToCoord(0)),h=1-+(i[r.wh]<=0);if(y(s)){var c=[jp(l,s[0])-u,jp(l,s[1])-u];c[1]0?1:a<0?-1:0}function jp(t,e){return t.toGlobalCoord(t.dataToCoord(t.scale.parse(e)))}function Yp(t,e,i,n,o,a,r,s,l,u){var h=l.valueDim,c=l.categoryDim,d=Math.abs(i[c.wh]),f=t.getItemVisual(e,"symbolSize");y(f)?f=f.slice():(null==f&&(f="100%"),f=[f,f]),f[c.index]=Do(f[c.index],d),f[h.index]=Do(f[h.index],n?d:Math.abs(a)),u.symbolSize=f,(u.symbolScale=[f[0]/s,f[1]/s])[h.index]*=(l.isHorizontal?-1:1)*r}function qp(t,e,i,n,o){var a=t.get(WL)||0;a&&(HL.attr({scale:e.slice(),rotation:i}),HL.updateTransform(),a/=HL.getLineScale(),a*=e[n.valueDim.index]),o.valueLineWidth=a}function Kp(t,e,i,n,o,r,s,l,u,h,c,d){var f=c.categoryDim,p=c.valueDim,g=d.pxSign,m=Math.max(e[p.index]+l,0),v=m;if(n){var y=Math.abs(u),x=T(t.get("symbolMargin"),"15%")+"",_=!1;x.lastIndexOf("!")===x.length-1&&(_=!0,x=x.slice(0,x.length-1)),x=Do(x,e[p.index]);var w=Math.max(m+2*x,0),b=_?0:2*x,S=Wo(n),M=S?n:fg((y+b)/w);w=m+2*(x=(y-M*m)/2/(_?M:M-1)),b=_?0:2*x,S||"fixed"===n||(M=h?fg((Math.abs(h)+b)/w):0),v=M*w-b,d.repeatTimes=M,d.symbolMargin=x}var I=g*(v/2),D=d.pathPosition=[];D[f.index]=i[f.wh]/2,D[p.index]="start"===s?I:"end"===s?u-I:u/2,r&&(D[0]+=r[0],D[1]+=r[1]);var A=d.bundlePosition=[];A[f.index]=i[f.xy],A[p.index]=i[p.xy];var C=d.barRectShape=a({},i);C[p.wh]=g*Math.max(Math.abs(i[p.wh]),Math.abs(D[p.index]+I)),C[f.wh]=i[f.wh];var L=d.clipShape={};L[f.xy]=-i[f.xy],L[f.wh]=c.ecSize[f.wh],L[p.xy]=0,L[p.wh]=i[p.wh]}function $p(t){var e=t.symbolPatternSize,i=Il(t.symbolType,-e/2,-e/2,e,e,t.color);return i.attr({culling:!0}),"image"!==i.type&&i.setStyle({strokeNoScale:!0}),i}function Jp(t,e,i,n){function o(t){var e=l.slice(),n=i.pxSign,o=t;return("start"===i.symbolRepeatDirection?n>0:n<0)&&(o=h-1-t),e[u.index]=d*(o-h/2+.5)+l[u.index],{position:e,scale:i.symbolScale.slice(),rotation:i.rotation}}var a=t.__pictorialBundle,r=i.symbolSize,s=i.valueLineWidth,l=i.pathPosition,u=e.valueDim,h=i.repeatTimes||0,c=0,d=r[e.valueDim.index]+s+2*i.symbolMargin;for(hg(t,function(t){t.__pictorialAnimationIndex=c,t.__pictorialRepeatTimes=h,c0)],d=t.__pictorialBarRect;eh(d.style,h,a,n,e.seriesModel,o,c),eo(d,h)}function fg(t){var e=Math.round(t);return Math.abs(t-e)<1e-4?e:Math.ceil(t)}function pg(t,e,i){this.dimension="single",this.dimensions=["single"],this._axis=null,this._rect,this._init(t,e,i),this.model=t}function gg(t,e){e=e||{};var i=t.coordinateSystem,n=t.axis,o={},a=n.position,r=n.orient,s=i.getRect(),l=[s.x,s.x+s.width,s.y,s.y+s.height],u={horizontal:{top:l[2],bottom:l[3]},vertical:{left:l[0],right:l[1]}};o.position=["vertical"===r?u.vertical[a]:l[0],"horizontal"===r?u.horizontal[a]:l[3]];var h={horizontal:0,vertical:1};o.rotation=Math.PI/2*h[r];var c={top:-1,bottom:1,right:1,left:-1};o.labelDirection=o.tickDirection=o.nameDirection=c[a],t.get("axisTick.inside")&&(o.tickDirection=-o.tickDirection),T(e.labelInside,t.get("axisLabel.inside"))&&(o.labelDirection=-o.labelDirection);var d=e.rotate;return null==d&&(d=t.get("axisLabel.rotate")),o.labelRotation="top"===a?-d:d,o.z2=1,o}function mg(t,e,i,n,o){var r=t.axis;if(!r.scale.isBlank()&&r.containData(e))if(t.involveSeries){var s=vg(e,t),l=s.payloadBatch,u=s.snapToValue;l[0]&&null==o.seriesIndex&&a(o,l[0]),!n&&t.snap&&r.containData(u)&&null!=u&&(e=u),i.showPointer(t,e,l,o),i.showTooltip(t,s,u)}else i.showPointer(t,e)}function vg(t,e){var i=e.axis,n=i.dim,o=t,a=[],r=Number.MAX_VALUE,s=-1;return KL(e.seriesModels,function(e,l){var u,h,c=e.getData().mapDimension(n,!0);if(e.getAxisTooltipData){var d=e.getAxisTooltipData(c,t,i);h=d.dataIndices,u=d.nestestValue}else{if(!(h=e.getData().indicesOfNearest(c[0],t,"category"===i.type?.5:null)).length)return;u=e.getData().get(c[0],h[0])}if(null!=u&&isFinite(u)){var f=t-u,p=Math.abs(f);p<=r&&((p=0&&s<0)&&(r=p,s=f,o=u,a.length=0),KL(h,function(t){a.push({seriesIndex:e.seriesIndex,dataIndexInside:t,dataIndex:e.getData().getRawIndex(t)})}))}}),{payloadBatch:a,snapToValue:o}}function yg(t,e,i,n){t[e.key]={value:i,payloadBatch:n}}function xg(t,e,i,n){var o=i.payloadBatch,a=e.axis,r=a.model,s=e.axisPointerModel;if(e.triggerTooltip&&o.length){var l=e.coordSys.model,u=$u(l),h=t.map[u];h||(h=t.map[u]={coordSysId:l.id,coordSysIndex:l.componentIndex,coordSysType:l.type,coordSysMainType:l.mainType,dataByAxis:[]},t.list.push(h)),h.dataByAxis.push({axisDim:a.dim,axisIndex:r.componentIndex,axisType:r.type,axisId:r.id,value:n,valueLabelOpt:{precision:s.get("label.precision"),formatter:s.get("label.formatter")},seriesDataIndices:o.slice()})}}function _g(t,e,i){var n=i.axesInfo=[];KL(e,function(e,i){var o=e.axisPointerModel.option,a=t[i];a?(!e.useHandle&&(o.status="show"),o.value=a.value,o.seriesDataIndices=(a.payloadBatch||[]).slice()):!e.useHandle&&(o.status="hide"),"show"===o.status&&n.push({axisDim:e.axis.dim,axisIndex:e.axis.model.componentIndex,value:o.value})})}function wg(t,e,i,n){if(!Ig(e)&&t.list.length){var o=((t.list[0].dataByAxis[0]||{}).seriesDataIndices||[])[0]||{};n({type:"showTip",escapeConnect:!0,x:e[0],y:e[1],tooltipOption:i.tooltipOption,position:i.position,dataIndexInside:o.dataIndexInside,dataIndex:o.dataIndex,seriesIndex:o.seriesIndex,dataByCoordSys:t.list})}else n({type:"hideTip"})}function bg(t,e,i){var n=i.getZr(),o=JL(n).axisPointerLastHighlights||{},a=JL(n).axisPointerLastHighlights={};KL(t,function(t,e){var i=t.axisPointerModel.option;"show"===i.status&&KL(i.seriesDataIndices,function(t){var e=t.seriesIndex+" | "+t.dataIndex;a[e]=t})});var r=[],s=[];d(o,function(t,e){!a[e]&&s.push(t)}),d(a,function(t,e){!o[e]&&r.push(t)}),s.length&&i.dispatchAction({type:"downplay",escapeConnect:!0,batch:s}),r.length&&i.dispatchAction({type:"highlight",escapeConnect:!0,batch:r})}function Sg(t,e){for(var i=0;i<(t||[]).length;i++){var n=t[i];if(e.axis.dim===n.axisDim&&e.axis.model.componentIndex===n.axisIndex)return n}}function Mg(t){var e=t.axis.model,i={},n=i.axisDim=t.axis.dim;return i.axisIndex=i[n+"AxisIndex"]=e.componentIndex,i.axisName=i[n+"AxisName"]=e.name,i.axisId=i[n+"AxisId"]=e.id,i}function Ig(t){return!t||null==t[0]||isNaN(t[0])||null==t[1]||isNaN(t[1])}function Tg(t,e,i){if(!o_.node){var n=e.getZr();QL(n).records||(QL(n).records={}),Dg(n,e),(QL(n).records[t]||(QL(n).records[t]={})).handler=i}}function Dg(t,e){function i(i,n){t.on(i,function(i){var o=kg(e);tk(QL(t).records,function(t){t&&n(t,i,o.dispatchAction)}),Ag(o.pendings,e)})}QL(t).initialized||(QL(t).initialized=!0,i("click",v(Lg,"click")),i("mousemove",v(Lg,"mousemove")),i("globalout",Cg))}function Ag(t,e){var i,n=t.showTip.length,o=t.hideTip.length;n?i=t.showTip[n-1]:o&&(i=t.hideTip[o-1]),i&&(i.dispatchAction=null,e.dispatchAction(i))}function Cg(t,e,i){t.handler("leave",null,i)}function Lg(t,e,i,n){e.handler(t,i,n)}function kg(t){var e={showTip:[],hideTip:[]},i=function(n){var o=e[n.type];o?o.push(n):(n.dispatchAction=i,t.dispatchAction(n))};return{dispatchAction:i,pendings:e}}function Pg(t,e){if(!o_.node){var i=e.getZr();(QL(i).records||{})[t]&&(QL(i).records[t]=null)}}function Ng(){}function Og(t,e,i,n){Eg(ik(i).lastProp,n)||(ik(i).lastProp=n,e?fo(i,n,t):(i.stopAnimation(),i.attr(n)))}function Eg(t,e){if(w(t)&&w(e)){var i=!0;return d(e,function(e,n){i=i&&Eg(t[n],e)}),!!i}return t===e}function Rg(t,e){t[e.get("label.show")?"show":"hide"]()}function zg(t){return{position:t.position.slice(),rotation:t.rotation||0}}function Bg(t,e,i){var n=e.get("z"),o=e.get("zlevel");t&&t.traverse(function(t){"group"!==t.type&&(null!=n&&(t.z=n),null!=o&&(t.zlevel=o),t.silent=i)})}function Vg(t){var e,i=t.get("type"),n=t.getModel(i+"Style");return"line"===i?(e=n.getLineStyle()).fill=null:"shadow"===i&&((e=n.getAreaStyle()).stroke=null),e}function Gg(t,e,i,n,o){var a=Fg(i.get("value"),e.axis,e.ecModel,i.get("seriesDataIndices"),{precision:i.get("label.precision"),formatter:i.get("label.formatter")}),r=i.getModel("label"),s=qS(r.get("padding")||0),l=r.getFont(),u=me(a,l),h=o.position,c=u.width+s[1]+s[3],d=u.height+s[0]+s[2],f=o.align;"right"===f&&(h[0]-=c),"center"===f&&(h[0]-=c/2);var p=o.verticalAlign;"bottom"===p&&(h[1]-=d),"middle"===p&&(h[1]-=d/2),Wg(h,c,d,n);var g=r.get("backgroundColor");g&&"auto"!==g||(g=e.get("axisLine.lineStyle.color")),t.label={shape:{x:0,y:0,width:c,height:d,r:r.get("borderRadius")},position:h.slice(),style:{text:a,textFont:l,textFill:r.getTextColor(),textPosition:"inside",fill:g,stroke:r.get("borderColor")||"transparent",lineWidth:r.get("borderWidth")||0,shadowBlur:r.get("shadowBlur"),shadowColor:r.get("shadowColor"),shadowOffsetX:r.get("shadowOffsetX"),shadowOffsetY:r.get("shadowOffsetY")},z2:10}}function Wg(t,e,i,n){var o=n.getWidth(),a=n.getHeight();t[0]=Math.min(t[0]+e,o)-e,t[1]=Math.min(t[1]+i,a)-i,t[0]=Math.max(t[0],0),t[1]=Math.max(t[1],0)}function Fg(t,e,i,n,o){t=e.scale.parse(t);var a=e.scale.getLabel(t,{precision:o.precision}),r=o.formatter;if(r){var s={value:wl(e,t),seriesData:[]};d(n,function(t){var e=i.getSeriesByIndex(t.seriesIndex),n=t.dataIndexInside,o=e&&e.getDataParams(n);o&&s.seriesData.push(o)}),_(r)?a=r.replace("{value}",a):x(r)&&(a=r(s))}return a}function Hg(t,e,i){var n=st();return dt(n,n,i.rotation),ct(n,n,i.position),mo([t.dataToCoord(e),(i.labelOffset||0)+(i.labelDirection||1)*(i.labelMargin||0)],n)}function Zg(t,e,i,n,o,a){var r=CD.innerTextLayout(i.rotation,0,i.labelDirection);i.labelMargin=o.get("label.margin"),Gg(e,n,o,a,{position:Hg(n.axis,t,i),align:r.textAlign,verticalAlign:r.textVerticalAlign})}function Ug(t,e,i){return i=i||0,{x1:t[i],y1:t[1-i],x2:e[i],y2:e[1-i]}}function Xg(t,e,i){return i=i||0,{x:t[i],y:t[1-i],width:e[i],height:e[1-i]}}function jg(t,e,i,n,o,a){return{cx:t,cy:e,r0:i,r:n,startAngle:o,endAngle:a,clockwise:!0}}function Yg(t,e){var i={};return i[e.dim+"AxisIndex"]=e.index,t.getCartesian(i)}function qg(t){return"x"===t.dim?0:1}function Kg(t){return t.isHorizontal()?0:1}function $g(t,e){var i=t.getRect();return[i[sk[e]],i[sk[e]]+i[lk[e]]]}function Jg(t,e,i){var n=new bS({shape:{x:t.x-10,y:t.y-10,width:0,height:t.height+20}});return po(n,{shape:{width:t.width+20,height:t.height+20}},e,i),n}function Qg(t,e,i){if(t.count())for(var n,o=e.coordinateSystem,a=e.getLayerSeries(),r=t.mapDimension("single"),s=t.mapDimension("value"),l=f(a,function(e){return f(e.indices,function(e){var i=o.dataToPoint(t.get(r,e));return i[1]=t.get(s,e),i})}),u=tm(l),h=u.y0,c=i/u.max,d=a.length,p=a[0].indices.length,g=0;ga&&(a=u),n.push(u)}for(var h=0;ha&&(a=d)}return r.y0=o,r.max=a,r}function em(t){var e=0;d(t.children,function(t){em(t);var i=t.value;y(i)&&(i=i[0]),e+=i});var i=t.value;y(i)&&(i=i[0]),(null==i||isNaN(i))&&(i=e),i<0&&(i=0),y(t.value)?t.value[0]=i:t.value=i}function im(t,e,i){function n(){r.ignore=r.hoverIgnore}function o(){r.ignore=r.normalIgnore}rw.call(this);var a=new mS({z2:fk});a.seriesIndex=e.seriesIndex;var r=new dS({z2:pk,silent:t.getModel("label").get("silent")});this.add(a),this.add(r),this.updateData(!0,t,"normal",e,i),this.on("emphasis",n).on("normal",o).on("mouseover",n).on("mouseout",o)}function nm(t,e,i){var n=t.getVisual("color"),o=t.getVisual("visualMeta");o&&0!==o.length||(n=null);var a=t.getModel("itemStyle").get("color");if(a)return a;if(n)return n;if(0===t.depth)return i.option.color[0];var r=i.option.color.length;return a=i.option.color[om(t)%r]}function om(t){for(var e=t;e.depth>1;)e=e.parentNode;return l(t.getAncestors()[0].children,e)}function am(t,e,i){return i!==dk.NONE&&(i===dk.SELF?t===e:i===dk.ANCESTOR?t===e||t.isAncestorOf(e):t===e||t.isDescendantOf(e))}function rm(t,e){var i=t.children||[];t.children=sm(i,e),i.length&&d(t.children,function(t){rm(t,e)})}function sm(t,e){if("function"==typeof e)return t.sort(e);var i="asc"===e;return t.sort(function(t,e){var n=(t.getValue()-e.getValue())*(i?1:-1);return 0===n?(t.dataIndex-e.dataIndex)*(i?-1:1):n})}function lm(t,e){return e=e||[0,0],f(["x","y"],function(i,n){var o=this.getAxis(i),a=e[n],r=t[n]/2;return"category"===o.type?o.getBandWidth():Math.abs(o.dataToCoord(a-r)-o.dataToCoord(a+r))},this)}function um(t,e){return e=e||[0,0],f([0,1],function(i){var n=e[i],o=t[i]/2,a=[],r=[];return a[i]=n-o,r[i]=n+o,a[1-i]=r[1-i]=e[1-i],Math.abs(this.dataToPoint(a)[i]-this.dataToPoint(r)[i])},this)}function hm(t,e){var i=this.getAxis(),n=e instanceof Array?e[0]:e,o=(t instanceof Array?t[0]:t)/2;return"category"===i.type?i.getBandWidth():Math.abs(i.dataToCoord(n-o)-i.dataToCoord(n+o))}function cm(t,e){return f(["Radius","Angle"],function(i,n){var o=this["get"+i+"Axis"](),a=e[n],r=t[n]/2,s="dataTo"+i,l="category"===o.type?o.getBandWidth():Math.abs(o[s](a-r)-o[s](a+r));return"Angle"===i&&(l=l*Math.PI/180),l},this)}function dm(t){var e,i=t.type;if("path"===i){var n=t.shape;(e=Rn(n.pathData,null,{x:n.x||0,y:n.y||0,width:n.width||0,height:n.height||0},"center")).__customPathData=t.pathData}else"image"===i?(e=new Je({})).__customImagePath=t.style.image:"text"===i?(e=new dS({})).__customText=t.style.text:e=new(0,zS[i.charAt(0).toUpperCase()+i.slice(1)]);return e.__customGraphicType=i,e.name=t.name,e}function fm(t,e,n,o,a,r){var s={},l=n.style||{};if(n.shape&&(s.shape=i(n.shape)),n.position&&(s.position=n.position.slice()),n.scale&&(s.scale=n.scale.slice()),n.origin&&(s.origin=n.origin.slice()),n.rotation&&(s.rotation=n.rotation),"image"===t.type&&n.style){u=s.style={};d(["x","y","width","height"],function(e){pm(e,u,l,t.style,r)})}if("text"===t.type&&n.style){var u=s.style={};d(["x","y"],function(e){pm(e,u,l,t.style,r)}),!l.hasOwnProperty("textFill")&&l.fill&&(l.textFill=l.fill),!l.hasOwnProperty("textStroke")&&l.stroke&&(l.textStroke=l.stroke)}if("group"!==t.type&&(t.useStyle(l),r)){t.style.opacity=0;var h=l.opacity;null==h&&(h=1),po(t,{style:{opacity:h}},o,e)}r?t.attr(s):fo(t,s,o,e),t.attr({z2:n.z2||0,silent:n.silent}),!1!==n.styleEmphasis&&eo(t,n.styleEmphasis)}function pm(t,e,i,n,o){null==i[t]||o||(e[t]=i[t],i[t]=n[t])}function gm(t,e,i,n){function o(t){null==t&&(t=h),v&&(c=e.getItemModel(t),d=c.getModel(wk),f=c.getModel(bk),p=e.getItemVisual(t,"color"),v=!1)}var s=t.get("renderItem"),l=t.coordinateSystem,u={};l&&(u=l.prepareCustoms?l.prepareCustoms():Mk[l.type](l));var h,c,d,f,p,g=r({getWidth:n.getWidth,getHeight:n.getHeight,getZr:n.getZr,getDevicePixelRatio:n.getDevicePixelRatio,value:function(t,i){return null==i&&(i=h),e.get(e.getDimension(t||0),i)},style:function(i,n){null==n&&(n=h),o(n);var r=c.getModel(xk).getItemStyle();null!=p&&(r.fill=p);var s=e.getItemVisual(n,"opacity");return null!=s&&(r.opacity=s),no(r,d,null,{autoColor:p,isRectText:!0}),r.text=d.getShallow("show")?D(t.getFormattedLabel(n,"normal"),jl(e,n)):null,i&&a(r,i),r},styleEmphasis:function(i,n){null==n&&(n=h),o(n);var r=c.getModel(_k).getItemStyle();return no(r,f,null,{isRectText:!0},!0),r.text=f.getShallow("show")?A(t.getFormattedLabel(n,"emphasis"),t.getFormattedLabel(n,"normal"),jl(e,n)):null,i&&a(r,i),r},visual:function(t,i){return null==i&&(i=h),e.getItemVisual(i,t)},barLayout:function(t){if(l.getBaseAxis)return al(r({axis:l.getBaseAxis()},t),n)},currentSeriesIndices:function(){return i.getCurrentSeriesIndices()},font:function(t){return ho(t,i)}},u.api||{}),m={context:{},seriesId:t.id,seriesName:t.name,seriesIndex:t.seriesIndex,coordSys:u.coordSys,dataInsideLength:e.count(),encode:mm(t.getData())},v=!0;return function(t){return h=t,v=!0,s&&s(r({dataIndexInside:t,dataIndex:e.getRawIndex(t)},m),g)||{}}}function mm(t){var e={};return d(t.dimensions,function(i,n){var o=t.getDimensionInfo(i);if(!o.isExtraCoord){var a=o.coordDim;(e[a]=e[a]||[])[o.coordDimIndex]=n}}),e}function vm(t,e,i,n,o,a){return(t=ym(t,e,i,n,o,a))&&a.setItemGraphicEl(e,t),t}function ym(t,e,i,n,o,a){var r=i.type;if(!t||r===t.__customGraphicType||"path"===r&&i.pathData===t.__customPathData||"image"===r&&i.style.image===t.__customImagePath||"text"===r&&i.style.text===t.__customText||(o.remove(t),t=null),null!=r){var s=!t;if(!t&&(t=dm(i)),fm(t,e,i,n,a,s),"group"===r){var l=t.children()||[],u=i.children||[];if(i.diffChildrenByName)xm({oldChildren:l,newChildren:u,dataIndex:e,animatableModel:n,group:t,data:a});else{for(var h=0;hn?t-=l+a:t+=a),null!=r&&(e+u+r>o?e-=u+r:e+=r),[t,e]}function Zm(t,e,i,n,o){var a=Um(i),r=a.width,s=a.height;return t=Math.min(t+r,n)-r,e=Math.min(e+s,o)-s,t=Math.max(t,0),e=Math.max(e,0),[t,e]}function Um(t){var e=t.clientWidth,i=t.clientHeight;if(document.defaultView&&document.defaultView.getComputedStyle){var n=document.defaultView.getComputedStyle(t);n&&(e+=parseInt(n.paddingLeft,10)+parseInt(n.paddingRight,10)+parseInt(n.borderLeftWidth,10)+parseInt(n.borderRightWidth,10),i+=parseInt(n.paddingTop,10)+parseInt(n.paddingBottom,10)+parseInt(n.borderTopWidth,10)+parseInt(n.borderBottomWidth,10))}return{width:e,height:i}}function Xm(t,e,i){var n=i[0],o=i[1],a=0,r=0,s=e.width,l=e.height;switch(t){case"inside":a=e.x+s/2-n/2,r=e.y+l/2-o/2;break;case"top":a=e.x+s/2-n/2,r=e.y-o-5;break;case"bottom":a=e.x+s/2-n/2,r=e.y+l+5;break;case"left":a=e.x-n-5,r=e.y+l/2-o/2;break;case"right":a=e.x+s+5,r=e.y+l/2-o/2}return[a,r]}function jm(t){return"center"===t||"middle"===t}function Ym(t){return t.get("stack")||"__ec_stack_"+t.seriesIndex}function qm(t){return t.dim}function Km(t,e){var i={};d(t,function(t,e){var n=t.getData(),o=t.coordinateSystem.getBaseAxis(),a=o.getExtent(),r="category"===o.type?o.getBandWidth():Math.abs(a[1]-a[0])/n.count(),s=i[qm(o)]||{bandWidth:r,remainedWidth:r,autoWidthCount:0,categoryGap:"20%",gap:"30%",stacks:{}},l=s.stacks;i[qm(o)]=s;var u=Ym(t);l[u]||s.autoWidthCount++,l[u]=l[u]||{width:0,maxWidth:0};var h=Do(t.get("barWidth"),r),c=Do(t.get("barMaxWidth"),r),d=t.get("barGap"),f=t.get("barCategoryGap");h&&!l[u].width&&(h=Math.min(s.remainedWidth,h),l[u].width=h,s.remainedWidth-=h),c&&(l[u].maxWidth=c),null!=d&&(s.gap=d),null!=f&&(s.categoryGap=f)});var n={};return d(i,function(t,e){n[e]={};var i=t.stacks,o=t.bandWidth,a=Do(t.categoryGap,o),r=Do(t.gap,1),s=t.remainedWidth,l=t.autoWidthCount,u=(s-a)/(l+(l-1)*r);u=Math.max(u,0),d(i,function(t,e){var i=t.maxWidth;i&&ie[0]&&(e=e.slice().reverse());var n=t.coordToPoint([e[0],i]),o=t.coordToPoint([e[1],i]);return{x1:n[0],y1:n[1],x2:o[0],y2:o[1]}}function ov(t){return t.getRadiusAxis().inverse?0:1}function av(t){var e=t[0],i=t[t.length-1];e&&i&&Math.abs(Math.abs(e.coord-i.coord)-360)<1e-4&&t.pop()}function rv(t,e,i){return{position:[t.cx,t.cy],rotation:i/180*Math.PI,labelDirection:-1,tickDirection:-1,nameDirection:1,labelRotate:e.getModel("axisLabel").get("rotate"),z2:1}}function sv(t,e,i,n,o){var a=e.axis,r=a.dataToCoord(t),s=n.getAngleAxis().getExtent()[0];s=s/180*Math.PI;var l,u,h,c=n.getRadiusAxis().getExtent();if("radius"===a.dim){var d=st();dt(d,d,s),ct(d,d,[n.cx,n.cy]),l=mo([r,-o],d);var f=e.getModel("axisLabel").get("rotate")||0,p=CD.innerTextLayout(s,f*Math.PI/180,-1);u=p.textAlign,h=p.textVerticalAlign}else{var g=c[1];l=n.coordToPoint([g+o,r]);var m=n.cx,v=n.cy;u=Math.abs(l[0]-m)/g<.3?"center":l[0]>m?"left":"right",h=Math.abs(l[1]-v)/g<.3?"middle":l[1]>v?"top":"bottom"}return{position:l,align:u,verticalAlign:h}}function lv(t,e){e.update="updateView",cs(e,function(e,i){var n={};return i.eachComponent({mainType:"geo",query:e},function(i){i[t](e.name),d(i.coordinateSystem.regions,function(t){n[t.name]=i.isSelected(t.name)||!1})}),{selected:n,name:e.name}})}function uv(t){var e={};d(t,function(t){e[t]=1}),t.length=0,d(e,function(e,i){t.push(i)})}function hv(t){if(t)for(var e in t)if(t.hasOwnProperty(e))return!0}function cv(t,e,n){function o(){var t=function(){};return t.prototype.__hidden=t.prototype,new t}var a={};return Qk(e,function(e){var r=a[e]=o();Qk(t[e],function(t,o){if(HA.isValidType(o)){var a={type:o,visual:t};n&&n(a,e),r[o]=new HA(a),"opacity"===o&&((a=i(a)).type="colorAlpha",r.__hidden.__alphaForOpacity=new HA(a))}})}),a}function dv(t,e,n){var o;d(n,function(t){e.hasOwnProperty(t)&&hv(e[t])&&(o=!0)}),o&&d(n,function(n){e.hasOwnProperty(n)&&hv(e[n])?t[n]=i(e[n]):delete t[n]})}function fv(t,e,i,n,o,a){function r(t){return i.getItemVisual(h,t)}function s(t,e){i.setItemVisual(h,t,e)}function l(t,l){h=null==a?t:l;var c=i.getRawDataItem(h);if(!c||!1!==c.visualMap)for(var d=n.call(o,t),f=e[d],p=u[d],g=0,m=p.length;g1)return!1;var h=_v(i-t,o-t,n-e,a-e)/l;return!(h<0||h>1)}function xv(t){return t<=1e-6&&t>=-1e-6}function _v(t,e,i,n){return t*n-e*i}function wv(t,e,i){var n=this._targetInfoList=[],o={},a=Sv(e,t);eP(sP,function(t,e){(!i||!i.include||iP(i.include,e)>=0)&&t(a,n,o)})}function bv(t){return t[0]>t[1]&&t.reverse(),t}function Sv(t,e){return Oi(t,e,{includeMainTypes:aP})}function Mv(t,e,i,n){var o=i.getAxis(["x","y"][t]),a=bv(f([0,1],function(t){return e?o.coordToData(o.toLocalCoord(n[t])):o.toGlobalCoord(o.dataToCoord(n[t]))})),r=[];return r[t]=a,r[1-t]=[NaN,NaN],{values:a,xyMinMax:r}}function Iv(t,e,i,n){return[e[0]-n[t]*i[0],e[1]-n[t]*i[1]]}function Tv(t,e){var i=Dv(t),n=Dv(e),o=[i[0]/n[0],i[1]/n[1]];return isNaN(o[0])&&(o[0]=1),isNaN(o[1])&&(o[1]=1),o}function Dv(t){return t?[t[0][1]-t[0][0],t[1][1]-t[1][0]]:[NaN,NaN]}function Av(t,e,i,n,o){if(o){var a=t.getZr();a[pP]||(a[fP]||(a[fP]=Cv),wr(a,fP,i,e)(t,n))}}function Cv(t,e){if(!t.isDisposed()){var i=t.getZr();i[pP]=!0,t.dispatchAction({type:"brushSelect",batch:e}),i[pP]=!1}}function Lv(t,e,i,n){for(var o=0,a=e.length;o=0}function Zv(t,e,i){function n(t,e){return l(e.nodes,t)>=0}function o(t,n){var o=!1;return e(function(e){d(i(t,e)||[],function(t){n.records[e.name][t]&&(o=!0)})}),o}function a(t,n){n.nodes.push(t),e(function(e){d(i(t,e)||[],function(t){n.records[e.name][t]=!0})})}return function(i){var r={nodes:[],records:{}};if(e(function(t){r.records[t.name]={}}),!i)return r;a(i,r);var s;do{s=!1,t(function(t){!n(t,r)&&o(t,r)&&(a(t,r),s=!0)})}while(s);return r}}function Uv(t,e,i){var n=[1/0,-1/0];return TP(i,function(t){var i=t.getData();i&&TP(i.mapDimension(e,!0),function(t){var e=i.getApproximateExtent(t);e[0]n[1]&&(n[1]=e[1])})}),n[1]0?0:NaN);var r=i.getMax(!0);return null!=r&&"dataMax"!==r&&"function"!=typeof r?e[1]=r:o&&(e[1]=a>0?a-1:NaN),i.get("scale",!0)||(e[0]>0&&(e[0]=0),e[1]<0&&(e[1]=0)),e}function jv(t,e){var i=t.getAxisModel(),n=t._percentWindow,o=t._valueWindow;if(n){var a=Po(o,[0,500]);a=Math.min(a,20);var r=e||0===n[0]&&100===n[1];i.setRange(r?null:+o[0].toFixed(a),r?null:+o[1].toFixed(a))}}function Yv(t){var e=t._minMaxSpan={},i=t._dataZoomModel;TP(["min","max"],function(n){e[n+"Span"]=i.get(n+"Span");var o=i.get(n+"ValueSpan");if(null!=o&&(e[n+"ValueSpan"]=o,null!=(o=t.getAxisModel().axis.scale.parse(o)))){var a=t._dataExtent;e[n+"Span"]=To(a[0]+o,a,[0,100],!0)}})}function qv(t){var e={};return CP(["start","end","startValue","endValue","throttle"],function(i){t.hasOwnProperty(i)&&(e[i]=t[i])}),e}function Kv(t,e){var i=t._rangePropMode,n=t.get("rangeMode");CP([["start","startValue"],["end","endValue"]],function(t,o){var a=null!=e[t[0]],r=null!=e[t[1]];a&&!r?i[o]="percent":!a&&r?i[o]="value":n?i[o]=n[o]:a&&(i[o]="percent")})}function $v(t){return{x:"y",y:"x",radius:"angle",angle:"radius"}[t]}function Jv(t){return"vertical"===t?"ns-resize":"ew-resize"}function Qv(t,e){var i=iy(t),n=e.dataZoomId,o=e.coordId;d(i,function(t,i){var a=t.dataZoomInfos;a[n]&&l(e.allCoordIds,o)<0&&(delete a[n],t.count--)}),oy(i);var a=i[o];a||((a=i[o]={coordId:o,dataZoomInfos:{},count:0}).controller=ny(t,a),a.dispatchAction=v(ly,t)),!a.dataZoomInfos[n]&&a.count++,a.dataZoomInfos[n]=e;var r=uy(a.dataZoomInfos);a.controller.enable(r.controlType,r.opt),a.controller.setPointerChecker(e.containsPoint),wr(a,"dispatchAction",e.throttleRate,"fixRate")}function ty(t,e){var i=iy(t);d(i,function(t){t.controller.dispose();var i=t.dataZoomInfos;i[e]&&(delete i[e],t.count--)}),oy(i)}function ey(t){return t.type+"\0_"+t.id}function iy(t){var e=t.getZr();return e[HP]||(e[HP]={})}function ny(t,e){var i=new Lh(t.getZr());return i.on("pan",FP(ay,e)),i.on("zoom",FP(ry,e)),i}function oy(t){d(t,function(e,i){e.count||(e.controller.dispose(),delete t[i])})}function ay(t,e,i,n,o,a,r){sy(t,function(s){return s.panGetRange(t.controller,e,i,n,o,a,r)})}function ry(t,e,i,n){sy(t,function(o){return o.zoomGetRange(t.controller,e,i,n)})}function sy(t,e){var i=[];d(t.dataZoomInfos,function(t){var n=e(t);!t.disabled&&n&&i.push({dataZoomId:t.dataZoomId,start:n[0],end:n[1]})}),i.length&&t.dispatchAction(i)}function ly(t,e){t.dispatchAction({type:"dataZoom",batch:e})}function uy(t){var e,i={},n={type_true:2,type_move:1,type_false:0,type_undefined:-1};return d(t,function(t){var o=!t.disabled&&(!t.zoomLock||"move");n["type_"+o]>n["type_"+e]&&(e=o),a(i,t.roamControllerOpt)}),{controlType:e,opt:i}}function hy(t,e){return t&&t.hasOwnProperty&&t.hasOwnProperty(e)}function cy(t,e,i,n){for(var o=e.targetVisuals[n],a=HA.prepareVisualTypes(o),r={color:t.getData().getVisual("color")},s=0,l=a.length;s=0&&(r[a]=+r[a].toFixed(h)),r}function Ty(t,e){var n=t.getData(),o=t.coordinateSystem;if(e&&!My(e)&&!y(e.coord)&&o){var a=o.dimensions,r=Dy(e,n,o,t);if((e=i(e)).type&&SN[e.type]&&r.baseAxis&&r.valueAxis){var s=wN(a,r.baseAxis.dim),l=wN(a,r.valueAxis.dim);e.coord=SN[e.type](n,r.baseDataDim,r.valueDataDim,s,l),e.value=e.coord[l]}else{for(var u=[null!=e.xAxis?e.xAxis:e.radiusAxis,null!=e.yAxis?e.yAxis:e.angleAxis],h=0;h<2;h++)SN[u[h]]&&(u[h]=ky(n,n.mapDimension(a[h]),u[h]));e.coord=u}}return e}function Dy(t,e,i,n){var o={};return null!=t.valueIndex||null!=t.valueDim?(o.valueDataDim=null!=t.valueIndex?e.getDimension(t.valueIndex):t.valueDim,o.valueAxis=i.getAxis(Ay(n,o.valueDataDim)),o.baseAxis=i.getOtherAxis(o.valueAxis),o.baseDataDim=e.mapDimension(o.baseAxis.dim)):(o.baseAxis=n.getBaseAxis(),o.valueAxis=i.getOtherAxis(o.baseAxis),o.baseDataDim=e.mapDimension(o.baseAxis.dim),o.valueDataDim=e.mapDimension(o.valueAxis.dim)),o}function Ay(t,e){var i=t.getData(),n=i.dimensions;e=i.getDimension(e);for(var o=0;o=0)return!0}function rx(t){for(var e=t.split(/\n+/g),i=[],n=f(ox(e.shift()).split(HN),function(t){return{name:t,data:[]}}),o=0;o=0&&!i[o][n];o--);if(o<0){var a=t.queryComponents({mainType:"dataZoom",subType:"select",id:n})[0];if(a){var r=a.getPercentRange();i[0][n]={dataZoomId:n,start:r[0],end:r[1]}}}}),i.push(e)}function dx(t){var e=gx(t),i=e[e.length-1];e.length>1&&e.pop();var n={};return ZN(i,function(t,i){for(var o=e.length-1;o>=0;o--)if(t=e[o][i]){n[i]=t;break}}),n}function fx(t){t[UN]=null}function px(t){return gx(t).length}function gx(t){var e=t[UN];return e||(e=t[UN]=[{}]),e}function mx(t,e,i){(this._brushController=new Jd(i.getZr())).on("brush",m(this._onBrush,this)).mount(),this._isZoomActive}function vx(t){var e={};return d(["xAxisIndex","yAxisIndex"],function(i){e[i]=t[i],null==e[i]&&(e[i]="all"),(!1===e[i]||"none"===e[i])&&(e[i]=[])}),e}function yx(t,e){t.setIconStatus("back",px(e)>1?"emphasis":"normal")}function xx(t,e,i,n,o){var a=i._isZoomActive;n&&"takeGlobalCursor"===n.type&&(a="dataZoomSelect"===n.key&&n.dataZoomSelectActive),i._isZoomActive=a,t.setIconStatus("zoom",a?"emphasis":"normal");var r=new wv(vx(t.option),e,{include:["grid"]});i._brushController.setPanels(r.makePanelOpts(o,function(t){return t.xAxisDeclared&&!t.yAxisDeclared?"lineX":!t.xAxisDeclared&&t.yAxisDeclared?"lineY":"rect"})).enableBrush(!!a&&{brushType:"auto",brushStyle:{lineWidth:0,fill:"rgba(0,0,0,0.2)"}})}function _x(t){this.model=t}function bx(t){return JN(t)}function Sx(){if(!eO&&iO){eO=!0;var t=iO.styleSheets;t.length<31?iO.createStyleSheet().addRule(".zrvml","behavior:url(#default#VML)"):t[0].addRule(".zrvml","behavior:url(#default#VML)")}}function Mx(t){return parseInt(t,10)}function Ix(t,e){Sx(),this.root=t,this.storage=e;var i=document.createElement("div"),n=document.createElement("div");i.style.cssText="display:inline-block;overflow:hidden;position:relative;width:300px;height:150px;",n.style.cssText="position:absolute;left:0;top:0;",t.appendChild(i),this._vmlRoot=n,this._vmlViewport=i,this.resize();var o=e.delFromStorage,a=e.addToStorage;e.delFromStorage=function(t){o.call(e,t),t&&t.onRemove&&t.onRemove(n)},e.addToStorage=function(t){t.onAdd&&t.onAdd(n),a.call(e,t)},this._firstPaint=!0}function Tx(t){return function(){tw('In IE8.0 VML mode painter not support method "'+t+'"')}}function Dx(t){return document.createElementNS(RO,t)}function Ax(t){return GO(1e4*t)/1e4}function Cx(t){return t-XO}function Lx(t,e){var i=e?t.textFill:t.fill;return null!=i&&i!==VO}function kx(t,e){var i=e?t.textStroke:t.stroke;return null!=i&&i!==VO}function Px(t,e){e&&Nx(t,"transform","matrix("+BO.call(e,",")+")")}function Nx(t,e,i){(!i||"linear"!==i.type&&"radial"!==i.type)&&("string"==typeof i&&i.indexOf("NaN")>-1&&console.log(i),t.setAttribute(e,i))}function Ox(t,e,i){t.setAttributeNS("http://www.w3.org/1999/xlink",e,i)}function Ex(t,e,i){if(Lx(e,i)){var n=i?e.textFill:e.fill;n="transparent"===n?VO:n,"none"!==t.getAttribute("clip-path")&&n===VO&&(n="rgba(0, 0, 0, 0.002)"),Nx(t,"fill",n),Nx(t,"fill-opacity",e.opacity)}else Nx(t,"fill",VO);if(kx(e,i)){var o=i?e.textStroke:e.stroke;Nx(t,"stroke",o="transparent"===o?VO:o),Nx(t,"stroke-width",(i?e.textStrokeWidth:e.lineWidth)/(!i&&e.strokeNoScale?e.host.getLineScale():1)),Nx(t,"paint-order",i?"stroke":"fill"),Nx(t,"stroke-opacity",e.opacity),e.lineDash?(Nx(t,"stroke-dasharray",e.lineDash.join(",")),Nx(t,"stroke-dashoffset",GO(e.lineDashOffset||0))):Nx(t,"stroke-dasharray",""),e.lineCap&&Nx(t,"stroke-linecap",e.lineCap),e.lineJoin&&Nx(t,"stroke-linejoin",e.lineJoin),e.miterLimit&&Nx(t,"stroke-miterlimit",e.miterLimit)}else Nx(t,"stroke",VO)}function Rx(t){for(var e=[],i=t.data,n=t.len(),o=0;o=ZO||!Cx(g)&&(d>-HO&&d<0||d>HO)==!!p;var y=Ax(s+u*FO(c)),x=Ax(l+h*WO(c));m&&(d=p?ZO-1e-4:1e-4-ZO,v=!0,9===o&&e.push("M",y,x));var _=Ax(s+u*FO(c+d)),w=Ax(l+h*WO(c+d));e.push("A",Ax(u),Ax(h),GO(f*UO),+v,+p,_,w);break;case zO.Z:a="Z";break;case zO.R:var _=Ax(i[o++]),w=Ax(i[o++]),b=Ax(i[o++]),S=Ax(i[o++]);e.push("M",_,w,"L",_+b,w,"L",_+b,w+S,"L",_,w+S,"L",_,w)}a&&e.push(a);for(var M=0;M=11)}}(navigator.userAgent),a_={"[object Function]":1,"[object RegExp]":1,"[object Date]":1,"[object Error]":1,"[object CanvasGradient]":1,"[object CanvasPattern]":1,"[object Image]":1,"[object Canvas]":1},r_={"[object Int8Array]":1,"[object Uint8Array]":1,"[object Uint8ClampedArray]":1,"[object Int16Array]":1,"[object Uint16Array]":1,"[object Int32Array]":1,"[object Uint32Array]":1,"[object Float32Array]":1,"[object Float64Array]":1},s_=Object.prototype.toString,l_=Array.prototype,u_=l_.forEach,h_=l_.filter,c_=l_.slice,d_=l_.map,f_=l_.reduce,p_={},g_=function(){return p_.createCanvas()};p_.createCanvas=function(){return document.createElement("canvas")};var m_,v_="__ec_primitive__";E.prototype={constructor:E,get:function(t){return this.hasOwnProperty(t)?this[t]:null},set:function(t,e){return this[t]=e},each:function(t,e){void 0!==e&&(t=m(t,e));for(var i in this)this.hasOwnProperty(i)&&t(this[i],i)},removeKey:function(t){delete this[t]}};var y_=(Object.freeze||Object)({$override:e,clone:i,merge:n,mergeAll:o,extend:a,defaults:r,createCanvas:g_,getContext:s,indexOf:l,inherits:u,mixin:h,isArrayLike:c,each:d,map:f,reduce:p,filter:g,find:function(t,e,i){if(t&&e)for(var n=0,o=t.length;n3&&(e=I_.call(e,1));for(var n=this._$handlers[t],o=n.length,a=0;a4&&(e=I_.call(e,1,e.length-1));for(var n=e[e.length-1],o=this._$handlers[t],a=o.length,r=0;r=0;a--){var r;if(n[a]!==i&&!n[a].ignore&&(r=rt(n[a],t,e))&&(!o.topTarget&&(o.topTarget=n[a]),r!==D_)){o.target=n[a];break}}return o}},d(["click","mousedown","mouseup","mousewheel","dblclick","contextmenu"],function(t){C_.prototype[t]=function(e){var i=this.findHover(e.zrX,e.zrY),n=i.target;if("mousedown"===t)this._downEl=n,this._downPoint=[e.zrX,e.zrY],this._upEl=n;else if("mouseup"===t)this._upEl=n;else if("click"===t){if(this._downEl!==this._upEl||!this._downPoint||b_(this._downPoint,[e.zrX,e.zrY])>4)return;this._downPoint=null}this.dispatchToElement(i,t,e)}}),h(C_,T_),h(C_,it);var L_="undefined"==typeof Float32Array?Array:Float32Array,k_=(Object.freeze||Object)({create:st,identity:lt,copy:ut,mul:ht,translate:ct,rotate:dt,scale:ft,invert:pt,clone:gt}),P_=lt,N_=5e-5,O_=function(t){(t=t||{}).position||(this.position=[0,0]),null==t.rotation&&(this.rotation=0),t.scale||(this.scale=[1,1]),this.origin=this.origin||null},E_=O_.prototype;E_.transform=null,E_.needLocalTransform=function(){return mt(this.rotation)||mt(this.position[0])||mt(this.position[1])||mt(this.scale[0]-1)||mt(this.scale[1]-1)},E_.updateTransform=function(){var t=this.parent,e=t&&t.transform,i=this.needLocalTransform(),n=this.transform;i||e?(n=n||st(),i?this.getLocalTransform(n):P_(n),e&&(i?ht(n,t.transform,n):ut(n,t.transform)),this.transform=n,this.invTransform=this.invTransform||st(),pt(this.invTransform,n)):n&&P_(n)},E_.getLocalTransform=function(t){return O_.getLocalTransform(this,t)},E_.setTransform=function(t){var e=this.transform,i=t.dpr||1;e?t.setTransform(i*e[0],i*e[1],i*e[2],i*e[3],i*e[4],i*e[5]):t.setTransform(i,0,0,i,0,0)},E_.restoreTransform=function(t){var e=t.dpr||1;t.setTransform(e,0,0,e,0,0)};var R_=[];E_.decomposeTransform=function(){if(this.transform){var t=this.parent,e=this.transform;t&&t.transform&&(ht(R_,t.invTransform,e),e=R_);var i=e[0]*e[0]+e[1]*e[1],n=e[2]*e[2]+e[3]*e[3],o=this.position,a=this.scale;mt(i-1)&&(i=Math.sqrt(i)),mt(n-1)&&(n=Math.sqrt(n)),e[0]<0&&(i=-i),e[3]<0&&(n=-n),o[0]=e[4],o[1]=e[5],a[0]=i,a[1]=n,this.rotation=Math.atan2(-e[1]/n,e[0]/i)}},E_.getGlobalScale=function(){var t=this.transform;if(!t)return[1,1];var e=Math.sqrt(t[0]*t[0]+t[1]*t[1]),i=Math.sqrt(t[2]*t[2]+t[3]*t[3]);return t[0]<0&&(e=-e),t[3]<0&&(i=-i),[e,i]},E_.transformCoordToLocal=function(t,e){var i=[t,e],n=this.invTransform;return n&&Q(i,i,n),i},E_.transformCoordToGlobal=function(t,e){var i=[t,e],n=this.transform;return n&&Q(i,i,n),i},O_.getLocalTransform=function(t,e){P_(e=e||[]);var i=t.origin,n=t.scale||[1,1],o=t.rotation||0,a=t.position||[0,0];return i&&(e[4]-=i[0],e[5]-=i[1]),ft(e,e,n),o&&dt(e,e,o),i&&(e[4]+=i[0],e[5]+=i[1]),e[4]+=a[0],e[5]+=a[1],e};var z_={linear:function(t){return t},quadraticIn:function(t){return t*t},quadraticOut:function(t){return t*(2-t)},quadraticInOut:function(t){return(t*=2)<1?.5*t*t:-.5*(--t*(t-2)-1)},cubicIn:function(t){return t*t*t},cubicOut:function(t){return--t*t*t+1},cubicInOut:function(t){return(t*=2)<1?.5*t*t*t:.5*((t-=2)*t*t+2)},quarticIn:function(t){return t*t*t*t},quarticOut:function(t){return 1- --t*t*t*t},quarticInOut:function(t){return(t*=2)<1?.5*t*t*t*t:-.5*((t-=2)*t*t*t-2)},quinticIn:function(t){return t*t*t*t*t},quinticOut:function(t){return--t*t*t*t*t+1},quinticInOut:function(t){return(t*=2)<1?.5*t*t*t*t*t:.5*((t-=2)*t*t*t*t+2)},sinusoidalIn:function(t){return 1-Math.cos(t*Math.PI/2)},sinusoidalOut:function(t){return Math.sin(t*Math.PI/2)},sinusoidalInOut:function(t){return.5*(1-Math.cos(Math.PI*t))},exponentialIn:function(t){return 0===t?0:Math.pow(1024,t-1)},exponentialOut:function(t){return 1===t?1:1-Math.pow(2,-10*t)},exponentialInOut:function(t){return 0===t?0:1===t?1:(t*=2)<1?.5*Math.pow(1024,t-1):.5*(2-Math.pow(2,-10*(t-1)))},circularIn:function(t){return 1-Math.sqrt(1-t*t)},circularOut:function(t){return Math.sqrt(1- --t*t)},circularInOut:function(t){return(t*=2)<1?-.5*(Math.sqrt(1-t*t)-1):.5*(Math.sqrt(1-(t-=2)*t)+1)},elasticIn:function(t){var e,i=.1;return 0===t?0:1===t?1:(!i||i<1?(i=1,e=.1):e=.4*Math.asin(1/i)/(2*Math.PI),-i*Math.pow(2,10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/.4))},elasticOut:function(t){var e,i=.1;return 0===t?0:1===t?1:(!i||i<1?(i=1,e=.1):e=.4*Math.asin(1/i)/(2*Math.PI),i*Math.pow(2,-10*t)*Math.sin((t-e)*(2*Math.PI)/.4)+1)},elasticInOut:function(t){var e,i=.1;return 0===t?0:1===t?1:(!i||i<1?(i=1,e=.1):e=.4*Math.asin(1/i)/(2*Math.PI),(t*=2)<1?i*Math.pow(2,10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/.4)*-.5:i*Math.pow(2,-10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/.4)*.5+1)},backIn:function(t){var e=1.70158;return t*t*((e+1)*t-e)},backOut:function(t){var e=1.70158;return--t*t*((e+1)*t+e)+1},backInOut:function(t){var e=2.5949095;return(t*=2)<1?t*t*((e+1)*t-e)*.5:.5*((t-=2)*t*((e+1)*t+e)+2)},bounceIn:function(t){return 1-z_.bounceOut(1-t)},bounceOut:function(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375},bounceInOut:function(t){return t<.5?.5*z_.bounceIn(2*t):.5*z_.bounceOut(2*t-1)+.5}};vt.prototype={constructor:vt,step:function(t,e){if(this._initialized||(this._startTime=t+this._delay,this._initialized=!0),this._paused)this._pausedTime+=e;else{var i=(t-this._startTime-this._pausedTime)/this._life;if(!(i<0)){i=Math.min(i,1);var n=this.easing,o="string"==typeof n?z_[n]:n,a="function"==typeof o?o(i):i;return this.fire("frame",a),1==i?this.loop?(this.restart(t),"restart"):(this._needsRemove=!0,"destroy"):null}}},restart:function(t){var e=(t-this._startTime-this._pausedTime)%this._life;this._startTime=t-e+this.gap,this._pausedTime=0,this._needsRemove=!1},fire:function(t,e){this[t="on"+t]&&this[t](this._target,e)},pause:function(){this._paused=!0},resume:function(){this._paused=!1}};var B_=function(){this.head=null,this.tail=null,this._len=0},V_=B_.prototype;V_.insert=function(t){var e=new G_(t);return this.insertEntry(e),e},V_.insertEntry=function(t){this.head?(this.tail.next=t,t.prev=this.tail,t.next=null,this.tail=t):this.head=this.tail=t,this._len++},V_.remove=function(t){var e=t.prev,i=t.next;e?e.next=i:this.head=i,i?i.prev=e:this.tail=e,t.next=t.prev=null,this._len--},V_.len=function(){return this._len},V_.clear=function(){this.head=this.tail=null,this._len=0};var G_=function(t){this.value=t,this.next,this.prev},W_=function(t){this._list=new B_,this._map={},this._maxSize=t||10,this._lastRemovedEntry=null},F_=W_.prototype;F_.put=function(t,e){var i=this._list,n=this._map,o=null;if(null==n[t]){var a=i.len(),r=this._lastRemovedEntry;if(a>=this._maxSize&&a>0){var s=i.head;i.remove(s),delete n[s.key],o=s.value,this._lastRemovedEntry=s}r?r.value=e:r=new G_(e),r.key=t,i.insertEntry(r),n[t]=r}return o},F_.get=function(t){var e=this._map[t],i=this._list;if(null!=e)return e!==i.tail&&(i.remove(e),i.insertEntry(e)),e.value},F_.clear=function(){this._list.clear(),this._map={}};var H_={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]},Z_=new W_(20),U_=null,X_=Nt,j_=Ot,Y_=(Object.freeze||Object)({parse:At,lift:kt,toHex:Pt,fastLerp:Nt,fastMapToColor:X_,lerp:Ot,mapToColor:j_,modifyHSL:Et,modifyAlpha:Rt,stringify:zt}),q_=Array.prototype.slice,K_=function(t,e,i,n){this._tracks={},this._target=t,this._loop=e||!1,this._getter=i||Bt,this._setter=n||Vt,this._clipCount=0,this._delay=0,this._doneList=[],this._onframeList=[],this._clipList=[]};K_.prototype={when:function(t,e){var i=this._tracks;for(var n in e)if(e.hasOwnProperty(n)){if(!i[n]){i[n]=[];var o=this._getter(this._target,n);if(null==o)continue;0!==t&&i[n].push({time:0,value:jt(o)})}i[n].push({time:t,value:e[n]})}return this},during:function(t){return this._onframeList.push(t),this},pause:function(){for(var t=0;t0&&this.animate(t,!1).when(null==n?500:n,a).delay(o||0),this}};var iw=function(t){O_.call(this,t),T_.call(this,t),ew.call(this,t),this.id=t.id||i_()};iw.prototype={type:"element",name:"",__zr:null,ignore:!1,clipPath:null,isGroup:!1,drift:function(t,e){switch(this.draggable){case"horizontal":e=0;break;case"vertical":t=0}var i=this.transform;i||(i=this.transform=[1,0,0,1,0,0]),i[4]+=t,i[5]+=e,this.decomposeTransform(),this.dirty(!1)},beforeUpdate:function(){},afterUpdate:function(){},update:function(){this.updateTransform()},traverse:function(t,e){},attrKV:function(t,e){if("position"===t||"scale"===t||"origin"===t){if(e){var i=this[t];i||(i=this[t]=[]),i[0]=e[0],i[1]=e[1]}}else this[t]=e},hide:function(){this.ignore=!0,this.__zr&&this.__zr.refresh()},show:function(){this.ignore=!1,this.__zr&&this.__zr.refresh()},attr:function(t,e){if("string"==typeof t)this.attrKV(t,e);else if(w(t))for(var i in t)t.hasOwnProperty(i)&&this.attrKV(i,t[i]);return this.dirty(!1),this},setClipPath:function(t){var e=this.__zr;e&&t.addSelfToZr(e),this.clipPath&&this.clipPath!==t&&this.removeClipPath(),this.clipPath=t,t.__zr=e,t.__clipTarget=this,this.dirty(!1)},removeClipPath:function(){var t=this.clipPath;t&&(t.__zr&&t.removeSelfFromZr(t.__zr),t.__zr=null,t.__clipTarget=null,this.clipPath=null,this.dirty(!1))},addSelfToZr:function(t){this.__zr=t;var e=this.animators;if(e)for(var i=0;i=i.x&&t<=i.x+i.width&&e>=i.y&&e<=i.y+i.height},clone:function(){return new $t(this.x,this.y,this.width,this.height)},copy:function(t){this.x=t.x,this.y=t.y,this.width=t.width,this.height=t.height},plain:function(){return{x:this.x,y:this.y,width:this.width,height:this.height}}},$t.create=function(t){return new $t(t.x,t.y,t.width,t.height)};var rw=function(t){t=t||{},iw.call(this,t);for(var e in t)t.hasOwnProperty(e)&&(this[e]=t[e]);this._children=[],this.__storage=null,this.__dirty=!0};rw.prototype={constructor:rw,isGroup:!0,type:"group",silent:!1,children:function(){return this._children.slice()},childAt:function(t){return this._children[t]},childOfName:function(t){for(var e=this._children,i=0;i=0&&(i.splice(n,0,t),this._doAdd(t))}return this},_doAdd:function(t){t.parent&&t.parent.remove(t),t.parent=this;var e=this.__storage,i=this.__zr;e&&e!==t.__storage&&(e.addToStorage(t),t instanceof rw&&t.addChildrenToStorage(e)),i&&i.refresh()},remove:function(t){var e=this.__zr,i=this.__storage,n=this._children,o=l(n,t);return o<0?this:(n.splice(o,1),t.parent=null,i&&(i.delFromStorage(t),t instanceof rw&&t.delChildrenFromStorage(i)),e&&e.refresh(),this)},removeAll:function(){var t,e,i=this._children,n=this.__storage;for(e=0;e=0&&(this.delFromStorage(t),this._roots.splice(o,1),t instanceof rw&&t.delChildrenFromStorage(this))}},addToStorage:function(t){return t&&(t.__storage=this,t.dirty(!1)),this},delFromStorage:function(t){return t&&(t.__storage=null),this},dispose:function(){this._renderList=this._roots=null},displayableSortFunc:re};var hw={shadowBlur:1,shadowOffsetX:1,shadowOffsetY:1,textShadowBlur:1,textShadowOffsetX:1,textShadowOffsetY:1,textBoxShadowBlur:1,textBoxShadowOffsetX:1,textBoxShadowOffsetY:1},cw=function(t,e,i){return hw.hasOwnProperty(e)?i*=t.dpr:i},dw=[["shadowBlur",0],["shadowOffsetX",0],["shadowOffsetY",0],["shadowColor","#000"],["lineCap","butt"],["lineJoin","miter"],["miterLimit",10]],fw=function(t,e){this.extendFrom(t,!1),this.host=e};fw.prototype={constructor:fw,host:null,fill:"#000",stroke:null,opacity:1,lineDash:null,lineDashOffset:0,shadowBlur:0,shadowOffsetX:0,shadowOffsetY:0,lineWidth:1,strokeNoScale:!1,text:null,font:null,textFont:null,fontStyle:null,fontWeight:null,fontSize:null,fontFamily:null,textTag:null,textFill:"#000",textStroke:null,textWidth:null,textHeight:null,textStrokeWidth:0,textLineHeight:null,textPosition:"inside",textRect:null,textOffset:null,textAlign:null,textVerticalAlign:null,textDistance:5,textShadowColor:"transparent",textShadowBlur:0,textShadowOffsetX:0,textShadowOffsetY:0,textBoxShadowColor:"transparent",textBoxShadowBlur:0,textBoxShadowOffsetX:0,textBoxShadowOffsetY:0,transformText:!1,textRotation:0,textOrigin:null,textBackgroundColor:null,textBorderColor:null,textBorderWidth:0,textBorderRadius:0,textPadding:null,rich:null,truncate:null,blend:null,bind:function(t,e,i){for(var n=this,o=i&&i.style,a=!o,r=0;r0},extendFrom:function(t,e){if(t)for(var i in t)!t.hasOwnProperty(i)||!0!==e&&(!1===e?this.hasOwnProperty(i):null==t[i])||(this[i]=t[i])},set:function(t,e){"string"==typeof t?this[t]=e:this.extendFrom(t,!0)},clone:function(){var t=new this.constructor;return t.extendFrom(this,!0),t},getGradient:function(t,e,i){for(var n=("radial"===e.type?le:se)(t,e,i),o=e.colorStops,a=0;a=0&&i.splice(n,1),t.__hoverMir=null},clearHover:function(t){for(var e=this._hoverElements,i=0;i15)break}s.__drawIndex=m,s.__drawIndex0&&t>n[0]){for(r=0;rt);r++);a=i[n[r]]}if(n.splice(r+1,0,t),i[t]=e,!e.virtual)if(a){var l=a.dom;l.nextSibling?s.insertBefore(e.dom,l.nextSibling):s.appendChild(e.dom)}else s.firstChild?s.insertBefore(e.dom,s.firstChild):s.appendChild(e.dom)}else tw("Layer of zlevel "+t+" is not valid")},eachLayer:function(t,e){var i,n,o=this._zlevelList;for(n=0;n0?.01:0),this._needsManuallyCompositing),a.__builtin__||tw("ZLevel "+s+" has been used by unkown layer "+a.id),a!==i&&(a.__used=!0,a.__startIndex!==o&&(a.__dirty=!0),a.__startIndex=o,a.incremental?a.__drawIndex=-1:a.__drawIndex=o,e(o),i=a),r.__dirty&&(a.__dirty=!0,a.incremental&&a.__drawIndex<0&&(a.__drawIndex=o))}e(o),this.eachBuiltinLayer(function(t,e){!t.__used&&t.getElementCount()>0&&(t.__dirty=!0,t.__startIndex=t.__endIndex=t.__drawIndex=0),t.__dirty&&t.__drawIndex<0&&(t.__drawIndex=t.__startIndex)})},clear:function(){return this.eachBuiltinLayer(this._clearLayer),this},_clearLayer:function(t){t.clear()},setBackgroundColor:function(t){this._backgroundColor=t},configLayer:function(t,e){if(e){var i=this._layerConfig;i[t]?n(i[t],e,!0):i[t]=e;for(var o=0;o=0&&this._clips.splice(e,1)},removeAnimator:function(t){for(var e=t.getClips(),i=0;i1&&n&&n.length>1){var a=di(n)/di(o);!isFinite(a)&&(a=1),e.pinchScale=a;var r=fi(n);return e.pinchX=r[0],e.pinchY=r[1],{type:"pinch",target:t[0].target,event:e}}}}},Gw=["click","dblclick","mousewheel","mouseout","mouseup","mousedown","mousemove","contextmenu"],Ww=["touchstart","touchend","touchmove"],Fw={pointerdown:1,pointerup:1,pointermove:1,pointerout:1},Hw=f(Gw,function(t){var e=t.replace("mouse","pointer");return Fw[e]?e:t}),Zw={mousemove:function(t){t=li(this.dom,t),this.trigger("mousemove",t)},mouseout:function(t){var e=(t=li(this.dom,t)).toElement||t.relatedTarget;if(e!=this.dom)for(;e&&9!=e.nodeType;){if(e===this.dom)return;e=e.parentNode}this.trigger("mouseout",t)},touchstart:function(t){(t=li(this.dom,t)).zrByTouch=!0,this._lastTouchMoment=new Date,gi(this,t,"start"),Zw.mousemove.call(this,t),Zw.mousedown.call(this,t),mi(this)},touchmove:function(t){(t=li(this.dom,t)).zrByTouch=!0,gi(this,t,"change"),Zw.mousemove.call(this,t),mi(this)},touchend:function(t){(t=li(this.dom,t)).zrByTouch=!0,gi(this,t,"end"),Zw.mouseup.call(this,t),+new Date-this._lastTouchMoment<300&&Zw.click.call(this,t),mi(this)},pointerdown:function(t){Zw.mousedown.call(this,t)},pointermove:function(t){vi(t)||Zw.mousemove.call(this,t)},pointerup:function(t){Zw.mouseup.call(this,t)},pointerout:function(t){vi(t)||Zw.mouseout.call(this,t)}};d(["click","mousedown","mouseup","mousewheel","dblclick","contextmenu"],function(t){Zw[t]=function(e){e=li(this.dom,e),this.trigger(t,e)}});var Uw=xi.prototype;Uw.dispose=function(){for(var t=Gw.concat(Ww),e=0;e=0||n&&l(n,r)<0)){var s=e.getShallow(r);null!=s&&(o[t[a][0]]=s)}}return o}},sb=rb([["lineWidth","width"],["stroke","color"],["opacity"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["shadowColor"]]),lb={getLineStyle:function(t){var e=sb(this,t),i=this.getLineDash(e.lineWidth);return i&&(e.lineDash=i),e},getLineDash:function(t){null==t&&(t=1);var e=this.get("type"),i=Math.max(t,2),n=4*t;return"solid"===e||null==e?null:"dashed"===e?[n,n]:[i,i]}},ub=rb([["fill","color"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["opacity"],["shadowColor"]]),hb={getAreaStyle:function(t,e){return ub(this,t,e)}},cb=Math.pow,db=Math.sqrt,fb=1e-8,pb=1e-4,gb=db(3),mb=1/3,vb=V(),yb=V(),xb=V(),_b=Math.min,wb=Math.max,bb=Math.sin,Sb=Math.cos,Mb=2*Math.PI,Ib=V(),Tb=V(),Db=V(),Ab=[],Cb=[],Lb={M:1,L:2,C:3,Q:4,A:5,Z:6,R:7},kb=[],Pb=[],Nb=[],Ob=[],Eb=Math.min,Rb=Math.max,zb=Math.cos,Bb=Math.sin,Vb=Math.sqrt,Gb=Math.abs,Wb="undefined"!=typeof Float32Array,Fb=function(t){this._saveData=!t,this._saveData&&(this.data=[]),this._ctx=null};Fb.prototype={constructor:Fb,_xi:0,_yi:0,_x0:0,_y0:0,_ux:0,_uy:0,_len:0,_lineDash:null,_dashOffset:0,_dashIdx:0,_dashSum:0,setScale:function(t,e){this._ux=Gb(1/J_/t)||0,this._uy=Gb(1/J_/e)||0},getContext:function(){return this._ctx},beginPath:function(t){return this._ctx=t,t&&t.beginPath(),t&&(this.dpr=t.dpr),this._saveData&&(this._len=0),this._lineDash&&(this._lineDash=null,this._dashOffset=0),this},moveTo:function(t,e){return this.addData(Lb.M,t,e),this._ctx&&this._ctx.moveTo(t,e),this._x0=t,this._y0=e,this._xi=t,this._yi=e,this},lineTo:function(t,e){var i=Gb(t-this._xi)>this._ux||Gb(e-this._yi)>this._uy||this._len<5;return this.addData(Lb.L,t,e),this._ctx&&i&&(this._needsDash()?this._dashedLineTo(t,e):this._ctx.lineTo(t,e)),i&&(this._xi=t,this._yi=e),this},bezierCurveTo:function(t,e,i,n,o,a){return this.addData(Lb.C,t,e,i,n,o,a),this._ctx&&(this._needsDash()?this._dashedBezierTo(t,e,i,n,o,a):this._ctx.bezierCurveTo(t,e,i,n,o,a)),this._xi=o,this._yi=a,this},quadraticCurveTo:function(t,e,i,n){return this.addData(Lb.Q,t,e,i,n),this._ctx&&(this._needsDash()?this._dashedQuadraticTo(t,e,i,n):this._ctx.quadraticCurveTo(t,e,i,n)),this._xi=i,this._yi=n,this},arc:function(t,e,i,n,o,a){return this.addData(Lb.A,t,e,i,i,n,o-n,0,a?0:1),this._ctx&&this._ctx.arc(t,e,i,n,o,a),this._xi=zb(o)*i+t,this._yi=Bb(o)*i+t,this},arcTo:function(t,e,i,n,o){return this._ctx&&this._ctx.arcTo(t,e,i,n,o),this},rect:function(t,e,i,n){return this._ctx&&this._ctx.rect(t,e,i,n),this.addData(Lb.R,t,e,i,n),this},closePath:function(){this.addData(Lb.Z);var t=this._ctx,e=this._x0,i=this._y0;return t&&(this._needsDash()&&this._dashedLineTo(e,i),t.closePath()),this._xi=e,this._yi=i,this},fill:function(t){t&&t.fill(),this.toStatic()},stroke:function(t){t&&t.stroke(),this.toStatic()},setLineDash:function(t){if(t instanceof Array){this._lineDash=t,this._dashIdx=0;for(var e=0,i=0;ie.length&&(this._expandData(),e=this.data);for(var i=0;i0&&f<=t||h<0&&f>=t||0==h&&(c>0&&p<=e||c<0&&p>=e);)f+=h*(i=r[n=this._dashIdx]),p+=c*i,this._dashIdx=(n+1)%g,h>0&&fl||c>0&&pu||s[n%2?"moveTo":"lineTo"](h>=0?Eb(f,t):Rb(f,t),c>=0?Eb(p,e):Rb(p,e));h=f-t,c=p-e,this._dashOffset=-Vb(h*h+c*c)},_dashedBezierTo:function(t,e,i,n,o,a){var r,s,l,u,h,c=this._dashSum,d=this._dashOffset,f=this._lineDash,p=this._ctx,g=this._xi,m=this._yi,v=ji,y=0,x=this._dashIdx,_=f.length,w=0;for(d<0&&(d=c+d),d%=c,r=0;r<1;r+=.1)s=v(g,t,i,o,r+.1)-v(g,t,i,o,r),l=v(m,e,n,a,r+.1)-v(m,e,n,a,r),y+=Vb(s*s+l*l);for(;x<_&&!((w+=f[x])>d);x++);for(r=(w-d)/y;r<=1;)u=v(g,t,i,o,r),h=v(m,e,n,a,r),x%2?p.moveTo(u,h):p.lineTo(u,h),r+=f[x]/y,x=(x+1)%_;x%2!=0&&p.lineTo(o,a),s=o-u,l=a-h,this._dashOffset=-Vb(s*s+l*l)},_dashedQuadraticTo:function(t,e,i,n){var o=i,a=n;i=(i+2*t)/3,n=(n+2*e)/3,t=(this._xi+2*t)/3,e=(this._yi+2*e)/3,this._dashedBezierTo(t,e,i,n,o,a)},toStatic:function(){var t=this.data;t instanceof Array&&(t.length=this._len,Wb&&(this.data=new Float32Array(t)))},getBoundingRect:function(){kb[0]=kb[1]=Nb[0]=Nb[1]=Number.MAX_VALUE,Pb[0]=Pb[1]=Ob[0]=Ob[1]=-Number.MAX_VALUE;for(var t=this.data,e=0,i=0,n=0,o=0,a=0;al||Gb(r-o)>u||c===h-1)&&(t.lineTo(a,r),n=a,o=r);break;case Lb.C:t.bezierCurveTo(s[c++],s[c++],s[c++],s[c++],s[c++],s[c++]),n=s[c-2],o=s[c-1];break;case Lb.Q:t.quadraticCurveTo(s[c++],s[c++],s[c++],s[c++]),n=s[c-2],o=s[c-1];break;case Lb.A:var f=s[c++],p=s[c++],g=s[c++],m=s[c++],v=s[c++],y=s[c++],x=s[c++],_=s[c++],w=g>m?g:m,b=g>m?1:g/m,S=g>m?m/g:1,M=v+y;Math.abs(g-m)>.001?(t.translate(f,p),t.rotate(x),t.scale(b,S),t.arc(0,0,w,v,M,1-_),t.scale(1/b,1/S),t.rotate(-x),t.translate(-f,-p)):t.arc(f,p,w,v,M,1-_),1==c&&(e=zb(v)*g+f,i=Bb(v)*m+p),n=zb(M)*g+f,o=Bb(M)*m+p;break;case Lb.R:e=n=s[c],i=o=s[c+1],t.rect(s[c++],s[c++],s[c++],s[c++]);break;case Lb.Z:t.closePath(),n=e,o=i}}}},Fb.CMD=Lb;var Hb=2*Math.PI,Zb=2*Math.PI,Ub=Fb.CMD,Xb=2*Math.PI,jb=1e-4,Yb=[-1,-1,-1],qb=[-1,-1],Kb=vw.prototype.getCanvasPattern,$b=Math.abs,Jb=new Fb(!0);In.prototype={constructor:In,type:"path",__dirtyPath:!0,strokeContainThreshold:5,brush:function(t,e){var i=this.style,n=this.path||Jb,o=i.hasStroke(),a=i.hasFill(),r=i.fill,s=i.stroke,l=a&&!!r.colorStops,u=o&&!!s.colorStops,h=a&&!!r.image,c=o&&!!s.image;if(i.bind(t,this,e),this.setTransform(t),this.__dirty){var d;l&&(d=d||this.getBoundingRect(),this._fillGradient=i.getGradient(t,r,d)),u&&(d=d||this.getBoundingRect(),this._strokeGradient=i.getGradient(t,s,d))}l?t.fillStyle=this._fillGradient:h&&(t.fillStyle=Kb.call(r,t)),u?t.strokeStyle=this._strokeGradient:c&&(t.strokeStyle=Kb.call(s,t));var f=i.lineDash,p=i.lineDashOffset,g=!!t.setLineDash,m=this.getGlobalScale();n.setScale(m[0],m[1]),this.__dirtyPath||f&&!g&&o?(n.beginPath(t),f&&!g&&(n.setLineDash(f),n.setLineDashOffset(p)),this.buildPath(n,this.shape,!1),this.path&&(this.__dirtyPath=!1)):(t.beginPath(),this.path.rebuildPath(t)),a&&n.fill(t),f&&g&&(t.setLineDash(f),t.lineDashOffset=p),o&&n.stroke(t),f&&g&&t.setLineDash([]),null!=i.text&&(this.restoreTransform(t),this.drawRectText(t,this.getBoundingRect()))},buildPath:function(t,e,i){},createPathProxy:function(){this.path=new Fb},getBoundingRect:function(){var t=this._rect,e=this.style,i=!t;if(i){var n=this.path;n||(n=this.path=new Fb),this.__dirtyPath&&(n.beginPath(),this.buildPath(n,this.shape,!1)),t=n.getBoundingRect()}if(this._rect=t,e.hasStroke()){var o=this._rectWithStroke||(this._rectWithStroke=t.clone());if(this.__dirty||i){o.copy(t);var a=e.lineWidth,r=e.strokeNoScale?this.getLineScale():1;e.hasFill()||(a=Math.max(a,this.strokeContainThreshold||4)),r>1e-10&&(o.width+=a/r,o.height+=a/r,o.x-=a/r/2,o.y-=a/r/2)}return o}return t},contain:function(t,e){var i=this.transformCoordToLocal(t,e),n=this.getBoundingRect(),o=this.style;if(t=i[0],e=i[1],n.contain(t,e)){var a=this.path.data;if(o.hasStroke()){var r=o.lineWidth,s=o.strokeNoScale?this.getLineScale():1;if(s>1e-10&&(o.hasFill()||(r=Math.max(r,this.strokeContainThreshold)),Mn(a,r/s,t,e)))return!0}if(o.hasFill())return Sn(a,t,e)}return!1},dirty:function(t){null==t&&(t=!0),t&&(this.__dirtyPath=t,this._rect=null),this.__dirty=!0,this.__zr&&this.__zr.refresh(),this.__clipTarget&&this.__clipTarget.dirty()},animateShape:function(t){return this.animate("shape",t)},attrKV:function(t,e){"shape"===t?(this.setShape(e),this.__dirtyPath=!0,this._rect=null):$e.prototype.attrKV.call(this,t,e)},setShape:function(t,e){var i=this.shape;if(i){if(w(t))for(var n in t)t.hasOwnProperty(n)&&(i[n]=t[n]);else i[t]=e;this.dirty(!0)}return this},getLineScale:function(){var t=this.transform;return t&&$b(t[0]-1)>1e-10&&$b(t[3]-1)>1e-10?Math.sqrt($b(t[0]*t[3]-t[2]*t[1])):1}},In.extend=function(t){var e=function(e){In.call(this,e),t.style&&this.style.extendFrom(t.style,!1);var i=t.shape;if(i){this.shape=this.shape||{};var n=this.shape;for(var o in i)!n.hasOwnProperty(o)&&i.hasOwnProperty(o)&&(n[o]=i[o])}t.init&&t.init.call(this,e)};u(e,In);for(var i in t)"style"!==i&&"shape"!==i&&(e.prototype[i]=t[i]);return e},u(In,$e);var Qb=Fb.CMD,tS=[[],[],[]],eS=Math.sqrt,iS=Math.atan2,nS=function(t,e){var i,n,o,a,r,s,l=t.data,u=Qb.M,h=Qb.C,c=Qb.L,d=Qb.R,f=Qb.A,p=Qb.Q;for(o=0,a=0;o=11?function(){var e,i=this.__clipPaths,n=this.style;if(i)for(var o=0;oi-2?i-1:c+1],u=t[c>i-3?i-1:c+2]);var p=d*d,g=d*p;n.push([kn(s[0],f[0],l[0],u[0],d,p,g),kn(s[1],f[1],l[1],u[1],d,p,g)])}return n},xS=function(t,e,i,n){var o,a,r,s,l=[],u=[],h=[],c=[];if(n){r=[1/0,1/0],s=[-1/0,-1/0];for(var d=0,f=t.length;d=i&&a>=o)return{x:i,y:o,width:n-i,height:a-o}},createIcon:_o,Group:rw,Image:Je,Text:dS,Circle:fS,Sector:mS,Ring:vS,Polygon:_S,Polyline:wS,Rect:bS,Line:SS,BezierCurve:IS,Arc:TS,IncrementalDisplayable:On,CompoundPath:DS,LinearGradient:CS,RadialGradient:LS,BoundingRect:$t}),BS=["textStyle","color"],VS={getTextColor:function(t){var e=this.ecModel;return this.getShallow("color")||(!t&&e?e.get(BS):null)},getFont:function(){return ho({fontStyle:this.getShallow("fontStyle"),fontWeight:this.getShallow("fontWeight"),fontSize:this.getShallow("fontSize"),fontFamily:this.getShallow("fontFamily")},this.ecModel)},getTextRect:function(t){return me(t,this.getFont(),this.getShallow("align"),this.getShallow("verticalAlign")||this.getShallow("baseline"),this.getShallow("padding"),this.getShallow("rich"),this.getShallow("truncateText"))}},GS=rb([["fill","color"],["stroke","borderColor"],["lineWidth","borderWidth"],["opacity"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["shadowColor"],["textPosition"],["textAlign"]]),WS={getItemStyle:function(t,e){var i=GS(this,t,e),n=this.getBorderLineDash();return n&&(i.lineDash=n),i},getBorderLineDash:function(){var t=this.get("borderType");return"solid"===t||null==t?null:"dashed"===t?[5,5]:[1,1]}},FS=h,HS=Ni();wo.prototype={constructor:wo,init:null,mergeOption:function(t){n(this.option,t,!0)},get:function(t,e){return null==t?this.option:bo(this.option,this.parsePath(t),!e&&So(this,t))},getShallow:function(t,e){var i=this.option,n=null==i?i:i[t],o=!e&&So(this,t);return null==n&&o&&(n=o.getShallow(t)),n},getModel:function(t,e){var i,n=null==t?this.option:bo(this.option,t=this.parsePath(t));return e=e||(i=So(this,t))&&i.getModel(t),new wo(n,e,this.ecModel)},isEmpty:function(){return null==this.option},restoreData:function(){},clone:function(){return new(0,this.constructor)(i(this.option))},setReadOnly:function(t){},parsePath:function(t){return"string"==typeof t&&(t=t.split(".")),t},customizeGetParent:function(t){HS(this).getParent=t},isAnimationEnabled:function(){if(!o_.node){if(null!=this.option.animation)return!!this.option.animation;if(this.parentModel)return this.parentModel.isAnimationEnabled()}}},Gi(wo),Wi(wo),FS(wo,lb),FS(wo,hb),FS(wo,VS),FS(wo,WS);var ZS=0,US=1e-4,XS=9007199254740991,jS=/^(?:(\d{4})(?:[-\/](\d{1,2})(?:[-\/](\d{1,2})(?:[T ](\d{1,2})(?::(\d\d)(?::(\d\d)(?:[.,](\d+))?)?)?(Z|[\+\-]\d\d:?\d\d)?)?)?)?)?$/,YS=(Object.freeze||Object)({linearMap:To,parsePercent:Do,round:Ao,asc:Co,getPrecision:Lo,getPrecisionSafe:ko,getPixelPrecision:Po,getPercentWithPrecision:No,MAX_SAFE_INTEGER:XS,remRadian:Oo,isRadianAroundZero:Eo,parseDate:Ro,quantity:zo,nice:Vo,reformIntervals:Go,isNumeric:Wo}),qS=L,KS=/([&<>"'])/g,$S={"&":"&","<":"<",">":">",'"':""","'":"'"},JS=["a","b","c","d","e","f","g"],QS=function(t,e){return"{"+t+(null==e?"":e)+"}"},tM=be,eM=me,iM=(Object.freeze||Object)({addCommas:Fo,toCamelCase:Ho,normalizeCssArray:qS,encodeHTML:Zo,formatTpl:Uo,formatTplSimple:Xo,getTooltipMarker:jo,formatTime:qo,capitalFirst:Ko,truncateText:tM,getTextRect:eM}),nM=d,oM=["left","right","top","bottom","width","height"],aM=[["width","left","right"],["height","top","bottom"]],rM=$o,sM=(v($o,"vertical"),v($o,"horizontal"),{getBoxLayoutParams:function(){return{left:this.get("left"),top:this.get("top"),right:this.get("right"),bottom:this.get("bottom"),width:this.get("width"),height:this.get("height")}}}),lM=Ni(),uM=wo.extend({type:"component",id:"",name:"",mainType:"",subType:"",componentIndex:0,defaultOption:null,ecModel:null,dependentModels:[],uid:null,layoutMode:null,$constructor:function(t,e,i,n){wo.call(this,t,e,i,n),this.uid=Mo("ec_cpt_model")},init:function(t,e,i,n){this.mergeDefaultAndTheme(t,i)},mergeDefaultAndTheme:function(t,e){var i=this.layoutMode,o=i?na(t):{};n(t,e.getTheme().get(this.mainType)),n(t,this.getDefaultOption()),i&&ia(t,o,i)},mergeOption:function(t,e){n(this.option,t,!0);var i=this.layoutMode;i&&ia(this.option,t,i)},optionUpdated:function(t,e){},getDefaultOption:function(){var t=lM(this);if(!t.defaultOption){for(var e=[],i=this.constructor;i;){var o=i.prototype.defaultOption;o&&e.push(o),i=i.superClass}for(var a={},r=e.length-1;r>=0;r--)a=n(a,e[r],!0);t.defaultOption=a}return t.defaultOption},getReferringComponents:function(t){return this.ecModel.queryComponents({mainType:t,index:this.get(t+"Index",!0),id:this.get(t+"Id",!0)})}});Zi(uM,{registerWhenExtend:!0}),function(t){var e={};t.registerSubTypeDefaulter=function(t,i){t=Bi(t),e[t.main]=i},t.determineSubType=function(i,n){var o=n.type;if(!o){var a=Bi(i).main;t.hasSubTypes(i)&&e[a]&&(o=e[a](n))}return o}}(uM),function(t,e){function i(t){var i={},a=[];return d(t,function(r){var s=n(i,r),u=o(s.originalDeps=e(r),t);s.entryCount=u.length,0===s.entryCount&&a.push(r),d(u,function(t){l(s.predecessor,t)<0&&s.predecessor.push(t);var e=n(i,t);l(e.successor,t)<0&&e.successor.push(r)})}),{graph:i,noEntryList:a}}function n(t,e){return t[e]||(t[e]={predecessor:[],successor:[]}),t[e]}function o(t,e){var i=[];return d(t,function(t){l(e,t)>=0&&i.push(t)}),i}t.topologicalTravel=function(t,e,n,o){function a(t){s[t].entryCount--,0===s[t].entryCount&&l.push(t)}if(t.length){var r=i(e),s=r.graph,l=r.noEntryList,u={};for(d(t,function(t){u[t]=!0});l.length;){var h=l.pop(),c=s[h],f=!!u[h];f&&(n.call(o,h,c.originalDeps.slice()),delete u[h]),d(c.successor,f?function(t){u[t]=!0,a(t)}:a)}d(u,function(){throw new Error("Circle dependency may exists")})}}}(uM,function(t){var e=[];return d(uM.getClassesByMainType(t),function(t){e=e.concat(t.prototype.dependencies||[])}),e=f(e,function(t){return Bi(t).main}),"dataset"!==t&&l(e,"dataset")<=0&&e.unshift("dataset"),e}),h(uM,sM);var hM="";"undefined"!=typeof navigator&&(hM=navigator.platform||"");var cM={color:["#c23531","#2f4554","#61a0a8","#d48265","#91c7ae","#749f83","#ca8622","#bda29a","#6e7074","#546570","#c4ccd3"],gradientColor:["#f6efa6","#d88273","#bf444c"],textStyle:{fontFamily:hM.match(/^Win/)?"Microsoft YaHei":"sans-serif",fontSize:12,fontStyle:"normal",fontWeight:"normal"},blendMode:null,animation:"auto",animationDuration:1e3,animationDurationUpdate:300,animationEasing:"exponentialOut",animationEasingUpdate:"cubicOut",animationThreshold:2e3,progressiveThreshold:3e3,progressive:400,hoverLayerThreshold:3e3,useUTC:!1},dM=Ni(),fM={clearColorPalette:function(){dM(this).colorIdx=0,dM(this).colorNameMap={}},getColorFromPalette:function(t,e,i){var n=dM(e=e||this),o=n.colorIdx||0,a=n.colorNameMap=n.colorNameMap||{};if(a.hasOwnProperty(t))return a[t];var r=Si(this.get("color",!0)),s=this.get("colorLayer",!0),l=null!=i&&s?aa(s,i):r;if((l=l||r)&&l.length){var u=l[o];return t&&(a[t]=u),n.colorIdx=(o+1)%l.length,u}}},pM={cartesian2d:function(t,e,i,n){var o=t.getReferringComponents("xAxis")[0],a=t.getReferringComponents("yAxis")[0];e.coordSysDims=["x","y"],i.set("x",o),i.set("y",a),sa(o)&&(n.set("x",o),e.firstCategoryDimIndex=0),sa(a)&&(n.set("y",a),e.firstCategoryDimIndex=1)},singleAxis:function(t,e,i,n){var o=t.getReferringComponents("singleAxis")[0];e.coordSysDims=["single"],i.set("single",o),sa(o)&&(n.set("single",o),e.firstCategoryDimIndex=0)},polar:function(t,e,i,n){var o=t.getReferringComponents("polar")[0],a=o.findAxisModel("radiusAxis"),r=o.findAxisModel("angleAxis");e.coordSysDims=["radius","angle"],i.set("radius",a),i.set("angle",r),sa(a)&&(n.set("radius",a),e.firstCategoryDimIndex=0),sa(r)&&(n.set("angle",r),e.firstCategoryDimIndex=1)},geo:function(t,e,i,n){e.coordSysDims=["lng","lat"]},parallel:function(t,e,i,n){var o=t.ecModel,a=o.getComponent("parallel",t.get("parallelIndex")),r=e.coordSysDims=a.dimensions.slice();d(a.parallelAxisIndex,function(t,a){var s=o.getComponent("parallelAxis",t),l=r[a];i.set(l,s),sa(s)&&null==e.firstCategoryDimIndex&&(n.set(l,s),e.firstCategoryDimIndex=a)})}},gM="original",mM="arrayRows",vM="objectRows",yM="keyedColumns",xM="unknown",_M="typedArray",wM="column",bM="row";la.seriesDataToSource=function(t){return new la({data:t,sourceFormat:S(t)?_M:gM,fromDataset:!1})},Wi(la);var SM=Ni(),MM="\0_ec_inner",IM=wo.extend({init:function(t,e,i,n){i=i||{},this.option=null,this._theme=new wo(i),this._optionManager=n},setOption:function(t,e){k(!(MM in t),"please use chart.getOption()"),this._optionManager.setOption(t,e),this.resetOption(null)},resetOption:function(t){var e=!1,i=this._optionManager;if(!t||"recreate"===t){var n=i.mountOption("recreate"===t);this.option&&"recreate"!==t?(this.restoreData(),this.mergeOption(n)):Sa.call(this,n),e=!0}if("timeline"!==t&&"media"!==t||this.restoreData(),!t||"recreate"===t||"timeline"===t){var o=i.getTimelineOption(this);o&&(this.mergeOption(o),e=!0)}if(!t||"recreate"===t||"media"===t){var a=i.getMediaOption(this,this._api);a.length&&d(a,function(t){this.mergeOption(t,e=!0)},this)}return e},mergeOption:function(t){var e=this.option,o=this._componentsMap,r=[];ca(this),d(t,function(t,o){null!=t&&(uM.hasClass(o)?o&&r.push(o):e[o]=null==e[o]?i(t):n(e[o],t,!0))}),uM.topologicalTravel(r,uM.getAllClassMainTypes(),function(i,n){var r=Si(t[i]),s=Di(o.get(i),r);Ai(s),d(s,function(t,e){var n=t.option;w(n)&&(t.keyInfo.mainType=i,t.keyInfo.subType=Ia(i,n,t.exist))});var l=Ma(o,n);e[i]=[],o.set(i,[]),d(s,function(t,n){var r=t.exist,s=t.option;if(k(w(s)||r,"Empty component definition"),s){var u=uM.getClass(i,t.keyInfo.subType,!0);if(r&&r instanceof u)r.name=t.keyInfo.name,r.mergeOption(s,this),r.optionUpdated(s,!1);else{var h=a({dependentModels:l,componentIndex:n},t.keyInfo);a(r=new u(s,this,this,h),h),r.init(s,this,this,h),r.optionUpdated(null,!0)}}else r.mergeOption({},this),r.optionUpdated({},!1);o.get(i)[n]=r,e[i][n]=r.option},this),"series"===i&&Ta(this,o.get("series"))},this),this._seriesIndicesMap=R(this._seriesIndices=this._seriesIndices||[])},getOption:function(){var t=i(this.option);return d(t,function(e,i){if(uM.hasClass(i)){for(var n=(e=Si(e)).length-1;n>=0;n--)Li(e[n])&&e.splice(n,1);t[i]=e}}),delete t[MM],t},getTheme:function(){return this._theme},getComponent:function(t,e){var i=this._componentsMap.get(t);if(i)return i[e||0]},queryComponents:function(t){var e=t.mainType;if(!e)return[];var i=t.index,n=t.id,o=t.name,a=this._componentsMap.get(e);if(!a||!a.length)return[];var r;if(null!=i)y(i)||(i=[i]),r=g(f(i,function(t){return a[t]}),function(t){return!!t});else if(null!=n){var s=y(n);r=g(a,function(t){return s&&l(n,t.id)>=0||!s&&t.id===n})}else if(null!=o){var u=y(o);r=g(a,function(t){return u&&l(o,t.name)>=0||!u&&t.name===o})}else r=a.slice();return Da(r,t)},findComponents:function(t){var e=t.query,i=t.mainType,n=function(t){var e=i+"Index",n=i+"Id",o=i+"Name";return!t||null==t[e]&&null==t[n]&&null==t[o]?null:{mainType:i,index:t[e],id:t[n],name:t[o]}}(e);return function(e){return t.filter?g(e,t.filter):e}(Da(n?this.queryComponents(n):this._componentsMap.get(i),t))},eachComponent:function(t,e,i){var n=this._componentsMap;"function"==typeof t?(i=e,e=t,n.each(function(t,n){d(t,function(t,o){e.call(i,n,t,o)})})):_(t)?d(n.get(t),e,i):w(t)&&d(this.findComponents(t),e,i)},getSeriesByName:function(t){return g(this._componentsMap.get("series"),function(e){return e.name===t})},getSeriesByIndex:function(t){return this._componentsMap.get("series")[t]},getSeriesByType:function(t){return g(this._componentsMap.get("series"),function(e){return e.subType===t})},getSeries:function(){return this._componentsMap.get("series").slice()},getSeriesCount:function(){return this._componentsMap.get("series").length},eachSeries:function(t,e){d(this._seriesIndices,function(i){var n=this._componentsMap.get("series")[i];t.call(e,n,i)},this)},eachRawSeries:function(t,e){d(this._componentsMap.get("series"),t,e)},eachSeriesByType:function(t,e,i){d(this._seriesIndices,function(n){var o=this._componentsMap.get("series")[n];o.subType===t&&e.call(i,o,n)},this)},eachRawSeriesByType:function(t,e,i){return d(this.getSeriesByType(t),e,i)},isSeriesFiltered:function(t){return null==this._seriesIndicesMap.get(t.componentIndex)},getCurrentSeriesIndices:function(){return(this._seriesIndices||[]).slice()},filterSeries:function(t,e){Ta(this,g(this._componentsMap.get("series"),t,e))},restoreData:function(t){var e=this._componentsMap;Ta(this,e.get("series"));var i=[];e.each(function(t,e){i.push(e)}),uM.topologicalTravel(i,uM.getAllClassMainTypes(),function(i,n){d(e.get(i),function(e){("series"!==i||!wa(e,t))&&e.restoreData()})})}});h(IM,fM);var TM=["getDom","getZr","getWidth","getHeight","getDevicePixelRatio","dispatchAction","isDisposed","on","off","getDataURL","getConnectedDataURL","getModel","getOption","getViewOfComponentModel","getViewOfSeriesModel"],DM={};Ca.prototype={constructor:Ca,create:function(t,e){var i=[];d(DM,function(n,o){var a=n.create(t,e);i=i.concat(a||[])}),this._coordinateSystems=i},update:function(t,e){d(this._coordinateSystems,function(i){i.update&&i.update(t,e)})},getCoordinateSystems:function(){return this._coordinateSystems.slice()}},Ca.register=function(t,e){DM[t]=e},Ca.get=function(t){return DM[t]};var AM=d,CM=i,LM=f,kM=n,PM=/^(min|max)?(.+)$/;La.prototype={constructor:La,setOption:function(t,e){t&&d(Si(t.series),function(t){t&&t.data&&S(t.data)&&N(t.data)}),t=CM(t,!0);var i=this._optionBackup,n=ka.call(this,t,e,!i);this._newBaseOption=n.baseOption,i?(Ea(i.baseOption,n.baseOption),n.timelineOptions.length&&(i.timelineOptions=n.timelineOptions),n.mediaList.length&&(i.mediaList=n.mediaList),n.mediaDefault&&(i.mediaDefault=n.mediaDefault)):this._optionBackup=n},mountOption:function(t){var e=this._optionBackup;return this._timelineOptions=LM(e.timelineOptions,CM),this._mediaList=LM(e.mediaList,CM),this._mediaDefault=CM(e.mediaDefault),this._currentMediaIndices=[],CM(t?e.baseOption:this._newBaseOption)},getTimelineOption:function(t){var e,i=this._timelineOptions;if(i.length){var n=t.getComponent("timeline");n&&(e=CM(i[n.getCurrentIndex()],!0))}return e},getMediaOption:function(t){var e=this._api.getWidth(),i=this._api.getHeight(),n=this._mediaList,o=this._mediaDefault,a=[],r=[];if(!n.length&&!o)return r;for(var s=0,l=n.length;s=1)&&(t=1),t}var i=this._upstream,n=t&&t.skip;if(this._dirty&&i){var o=this.context;o.data=o.outputData=i.context.outputData}this.__pipeline&&(this.__pipeline.currentTask=this);var a;this._plan&&!n&&(a=this._plan(this.context));var r=e(this._modBy),s=this._modDataCount||0,l=e(t&&t.modBy),u=t&&t.modDataCount||0;r===l&&s===u||(a="reset");var h;(this._dirty||"reset"===a)&&(this._dirty=!1,h=rr(this,n)),this._modBy=l,this._modDataCount=u;var c=t&&t.step;if(this._dueEnd=i?i._outputDueEnd:this._count?this._count(this.context):1/0,this._progress){var d=this._dueIndex,f=Math.min(null!=c?this._dueIndex+c:1/0,this._dueEnd);if(!n&&(h||d=i?null:t1&&a>0?e:t}};return s}();XM.dirty=function(){this._dirty=!0,this._onDirty&&this._onDirty(this.context)},XM.unfinished=function(){return this._progress&&this._dueIndex1||l&&!r?function(i){function n(t,i){var n=o.getDimensionInfo(i);if(n&&!1!==n.otherDims.tooltip){var a=n.type,l=jo({color:u,type:"subItem"}),h=(r?l+Zo(n.displayName||"-")+": ":"")+Zo("ordinal"===a?t+"":"time"===a?e?"":qo("yyyy/MM/dd hh:mm:ss",t):Fo(t));h&&s.push(h)}}var r=p(i,function(t,e,i){var n=o.getDimensionInfo(i);return t|=n&&!1!==n.tooltip&&null!=n.displayName},0),s=[];return a.length?d(a,function(e){n(er(o,t,e),e)}):d(i,n),(r?"
":"")+s.join(r?"
":", ")}(s):n(r?er(o,t,a[0]):l?s[0]:s),c=jo(u),f=o.getName(t),g=this.name;return Ci(this)||(g=""),g=g?Zo(g)+(e?": ":"
"):"",e?c+g+h:g+c+(f?Zo(f)+": "+h:h)},isAnimationEnabled:function(){if(o_.node)return!1;var t=this.getShallow("animation");return t&&this.getData().count()>this.getShallow("animationThreshold")&&(t=!1),t},restoreData:function(){this.dataTask.dirty()},getColorFromPalette:function(t,e,i){var n=this.ecModel,o=fM.getColorFromPalette.call(this,t,e,i);return o||(o=n.getColorFromPalette(t,e,i)),o},coordDimToDataDim:function(t){return this.getRawData().mapDimension(t,!0)},getProgressive:function(){return this.get("progressive")},getProgressiveThreshold:function(){return this.get("progressiveThreshold")},getAxisTooltipData:null,getTooltipPosition:null,pipeTask:null,preventIncremental:null,pipelineContext:null});h(qM,UM),h(qM,fM);var KM=function(){this.group=new rw,this.uid=Mo("viewComponent")};KM.prototype={constructor:KM,init:function(t,e){},render:function(t,e,i,n){},dispose:function(){}};var $M=KM.prototype;$M.updateView=$M.updateLayout=$M.updateVisual=function(t,e,i,n){},Gi(KM),Zi(KM,{registerWhenExtend:!0});var JM=function(){var t=Ni();return function(e){var i=t(e),n=e.pipelineContext,o=i.large,a=i.progressiveRender,r=i.large=n.large,s=i.progressiveRender=n.progressiveRender;return!!(o^r||a^s)&&"reset"}},QM=Ni(),tI=JM();gr.prototype={type:"chart",init:function(t,e){},render:function(t,e,i,n){},highlight:function(t,e,i,n){vr(t.getData(),n,"emphasis")},downplay:function(t,e,i,n){vr(t.getData(),n,"normal")},remove:function(t,e){this.group.removeAll()},dispose:function(){},incrementalPrepareRender:null,incrementalRender:null,updateTransform:null};var eI=gr.prototype;eI.updateView=eI.updateLayout=eI.updateVisual=function(t,e,i,n){this.render(t,e,i,n)},Gi(gr),Zi(gr,{registerWhenExtend:!0}),gr.markUpdateMethod=function(t,e){QM(t).updateMethod=e};var iI={incrementalPrepareRender:{progress:function(t,e){e.view.incrementalRender(t,e.model,e.ecModel,e.api,e.payload)}},render:{forceFirstProgress:!0,progress:function(t,e){e.view.render(e.model,e.ecModel,e.api,e.payload)}}},nI="\0__throttleOriginMethod",oI="\0__throttleRate",aI="\0__throttleType",rI={createOnAllSeries:!0,performRawSeries:!0,reset:function(t,e){var i=t.getData(),n=(t.visualColorAccessPath||"itemStyle.color").split("."),o=t.get(n)||t.getColorFromPalette(t.name,null,e.getSeriesCount());if(i.setVisual("color",o),!e.isSeriesFiltered(t)){"function"!=typeof o||o instanceof AS||i.each(function(e){i.setItemVisual(e,"color",o(t.getDataParams(e)))});return{dataEach:i.hasItemOption?function(t,e){var i=t.getItemModel(e).get(n,!0);null!=i&&t.setItemVisual(e,"color",i)}:null}}}},sI={toolbox:{brush:{title:{rect:"矩形选择",polygon:"圈选",lineX:"横向选择",lineY:"纵向选择",keep:"保持选择",clear:"清除选择"}},dataView:{title:"数据视图",lang:["数据视图","关闭","刷新"]},dataZoom:{title:{zoom:"区域缩放",back:"区域缩放还原"}},magicType:{title:{line:"切换为折线图",bar:"切换为柱状图",stack:"切换为堆叠",tiled:"切换为平铺"}},restore:{title:"还原"},saveAsImage:{title:"保存为图片",lang:["右键另存为图片"]}},series:{typeNames:{pie:"饼图",bar:"柱状图",line:"折线图",scatter:"散点图",effectScatter:"涟漪散点图",radar:"雷达图",tree:"树图",treemap:"矩形树图",boxplot:"箱型图",candlestick:"K线图",k:"K线图",heatmap:"热力图",map:"地图",parallel:"平行坐标图",lines:"线图",graph:"关系图",sankey:"桑基图",funnel:"漏斗图",gauge:"仪表盘图",pictorialBar:"象形柱图",themeRiver:"主题河流图",sunburst:"旭日图"}},aria:{general:{withTitle:"这是一个关于“{title}”的图表。",withoutTitle:"这是一个图表,"},series:{single:{prefix:"",withName:"图表类型是{seriesType},表示{seriesName}。",withoutName:"图表类型是{seriesType}。"},multiple:{prefix:"它由{seriesCount}个图表系列组成。",withName:"第{seriesId}个系列是一个表示{seriesName}的{seriesType},",withoutName:"第{seriesId}个系列是一个{seriesType},",separator:{middle:";",end:"。"}}},data:{allData:"其数据是——",partialData:"其中,前{displayCnt}项是——",withName:"{name}的数据是{value}",withoutName:"{value}",separator:{middle:",",end:""}}}},lI=function(t,e){function i(t,e){if("string"!=typeof t)return t;var i=t;return d(e,function(t,e){i=i.replace(new RegExp("\\{\\s*"+e+"\\s*\\}","g"),t)}),i}function n(t){var e=a.get(t);if(null==e){for(var i=t.split("."),n=sI.aria,o=0;o1?"series.multiple.prefix":"series.single.prefix"),{seriesCount:r}),e.eachSeries(function(t,e){if(e1?"multiple":"single")+".";a=i(a=n(s?u+"withName":u+"withoutName"),{seriesId:t.seriesIndex,seriesName:t.get("name"),seriesType:o(t.subType)});var c=t.getData();window.data=c,c.count()>l?a+=i(n("data.partialData"),{displayCnt:l}):a+=n("data.allData");for(var d=[],p=0;pi.blockIndex?i.step:null,a=n&&n.modDataCount;return{step:o,modBy:null!=a?Math.ceil(a/o):null,modDataCount:a}}},hI.getPipeline=function(t){return this._pipelineMap.get(t)},hI.updateStreamModes=function(t,e){var i=this._pipelineMap.get(t.uid),n=t.getData().count(),o=i.progressiveEnabled&&e.incrementalPrepareRender&&n>=i.threshold,a=t.get("large")&&n>=t.get("largeThreshold"),r="mod"===t.get("progressiveChunkMode")?n:null;t.pipelineContext=i.context={progressiveRender:o,modDataCount:r,large:a}},hI.restorePipelines=function(t){var e=this,i=e._pipelineMap=R();t.eachSeries(function(t){var n=t.getProgressive(),o=t.uid;i.set(o,{id:o,head:null,tail:null,threshold:t.getProgressiveThreshold(),progressiveEnabled:n&&!(t.preventIncremental&&t.preventIncremental()),blockIndex:-1,step:Math.round(n||700),count:0}),Er(e,t,t.dataTask)})},hI.prepareStageTasks=function(){var t=this._stageTaskMap,e=this.ecInstance.getModel(),i=this.api;d(this._allHandlers,function(n){var o=t.get(n.uid)||t.set(n.uid,[]);n.reset&&Ir(this,n,o,e,i),n.overallReset&&Tr(this,n,o,e,i)},this)},hI.prepareView=function(t,e,i,n){var o=t.renderTask,a=o.context;a.model=e,a.ecModel=i,a.api=n,o.__block=!t.incrementalPrepareRender,Er(this,e,o)},hI.performDataProcessorTasks=function(t,e){Mr(this,this._dataProcessorHandlers,t,e,{block:!0})},hI.performVisualTasks=function(t,e,i){Mr(this,this._visualHandlers,t,e,i)},hI.performSeriesTasks=function(t){var e;t.eachSeries(function(t){e|=t.dataTask.perform()}),this.unfinished|=e},hI.plan=function(){this._pipelineMap.each(function(t){var e=t.tail;do{if(e.__block){t.blockIndex=e.__idxInPipeline;break}e=e.getUpstream()}while(e)})};var cI=hI.updatePayload=function(t,e){"remain"!==e&&(t.context.payload=e)},dI=Nr(0);Sr.wrapStageHandler=function(t,e){return x(t)&&(t={overallReset:t,seriesType:Rr(t)}),t.uid=Mo("stageHandler"),e&&(t.visualType=e),t};var fI,pI={},gI={};zr(pI,IM),zr(gI,Aa),pI.eachSeriesByType=pI.eachRawSeriesByType=function(t){fI=t},pI.eachComponent=function(t){"series"===t.mainType&&t.subType&&(fI=t.subType)};var mI=["#37A2DA","#32C5E9","#67E0E3","#9FE6B8","#FFDB5C","#ff9f7f","#fb7293","#E062AE","#E690D1","#e7bcf3","#9d96f5","#8378EA","#96BFFF"],vI={color:mI,colorLayer:[["#37A2DA","#ffd85c","#fd7b5f"],["#37A2DA","#67E0E3","#FFDB5C","#ff9f7f","#E062AE","#9d96f5"],["#37A2DA","#32C5E9","#9FE6B8","#FFDB5C","#ff9f7f","#fb7293","#e7bcf3","#8378EA","#96BFFF"],mI]},yI=["#dd6b66","#759aa0","#e69d87","#8dc1a9","#ea7e53","#eedd78","#73a373","#73b9bc","#7289ab","#91ca8c","#f49f42"],xI={color:yI,backgroundColor:"#333",tooltip:{axisPointer:{lineStyle:{color:"#eee"},crossStyle:{color:"#eee"}}},legend:{textStyle:{color:"#eee"}},textStyle:{color:"#eee"},title:{textStyle:{color:"#eee"}},toolbox:{iconStyle:{normal:{borderColor:"#eee"}}},dataZoom:{textStyle:{color:"#eee"}},visualMap:{textStyle:{color:"#eee"}},timeline:{lineStyle:{color:"#eee"},itemStyle:{normal:{color:yI[1]}},label:{normal:{textStyle:{color:"#eee"}}},controlStyle:{normal:{color:"#eee",borderColor:"#eee"}}},timeAxis:{axisLine:{lineStyle:{color:"#eee"}},axisTick:{lineStyle:{color:"#eee"}},axisLabel:{textStyle:{color:"#eee"}},splitLine:{lineStyle:{type:"dashed",color:"#aaa"}},splitArea:{areaStyle:{color:"#eee"}}},logAxis:{axisLine:{lineStyle:{color:"#eee"}},axisTick:{lineStyle:{color:"#eee"}},axisLabel:{textStyle:{color:"#eee"}},splitLine:{lineStyle:{type:"dashed",color:"#aaa"}},splitArea:{areaStyle:{color:"#eee"}}},valueAxis:{axisLine:{lineStyle:{color:"#eee"}},axisTick:{lineStyle:{color:"#eee"}},axisLabel:{textStyle:{color:"#eee"}},splitLine:{lineStyle:{type:"dashed",color:"#aaa"}},splitArea:{areaStyle:{color:"#eee"}}},categoryAxis:{axisLine:{lineStyle:{color:"#eee"}},axisTick:{lineStyle:{color:"#eee"}},axisLabel:{textStyle:{color:"#eee"}},splitLine:{lineStyle:{type:"dashed",color:"#aaa"}},splitArea:{areaStyle:{color:"#eee"}}},line:{symbol:"circle"},graph:{color:yI},gauge:{title:{textStyle:{color:"#eee"}}},candlestick:{itemStyle:{normal:{color:"#FD1050",color0:"#0CF49B",borderColor:"#FD1050",borderColor0:"#0CF49B"}}}};xI.categoryAxis.splitLine.show=!1,uM.extend({type:"dataset",defaultOption:{seriesLayoutBy:wM,sourceHeader:null,dimensions:null,source:null},optionUpdated:function(){ua(this)}}),KM.extend({type:"dataset"});var _I=k,wI=d,bI=x,SI=w,MI=uM.parseClassType,II={zrender:"4.0.4"},TI=1e3,DI=1e3,AI=3e3,CI={PROCESSOR:{FILTER:TI,STATISTIC:5e3},VISUAL:{LAYOUT:DI,GLOBAL:2e3,CHART:AI,COMPONENT:4e3,BRUSH:5e3}},LI="__flagInMainProcess",kI="__optionUpdated",PI=/^[a-zA-Z0-9_]+$/;Vr.prototype.on=Br("on"),Vr.prototype.off=Br("off"),Vr.prototype.one=Br("one"),h(Vr,T_);var NI=Gr.prototype;NI._onframe=function(){if(!this._disposed){var t=this._scheduler;if(this[kI]){var e=this[kI].silent;this[LI]=!0,Fr(this),OI.update.call(this),this[LI]=!1,this[kI]=!1,Xr.call(this,e),jr.call(this,e)}else if(t.unfinished){var i=1,n=this._model;this._api;t.unfinished=!1;do{var o=+new Date;t.performSeriesTasks(n),t.performDataProcessorTasks(n),Zr(this,n),t.performVisualTasks(n),Qr(this,this._model,0,"remain"),i-=+new Date-o}while(i>0&&t.unfinished);t.unfinished||this._zr.flush()}}},NI.getDom=function(){return this._dom},NI.getZr=function(){return this._zr},NI.setOption=function(t,e,i){var n;if(SI(e)&&(i=e.lazyUpdate,n=e.silent,e=e.notMerge),this[LI]=!0,!this._model||e){var o=new La(this._api),a=this._theme,r=this._model=new IM(null,null,a,o);r.scheduler=this._scheduler,r.init(null,null,a,o)}this._model.setOption(t,VI),i?(this[kI]={silent:n},this[LI]=!1):(Fr(this),OI.update.call(this),this._zr.flush(),this[kI]=!1,this[LI]=!1,Xr.call(this,n),jr.call(this,n))},NI.setTheme=function(){console.log("ECharts#setTheme() is DEPRECATED in ECharts 3.0")},NI.getModel=function(){return this._model},NI.getOption=function(){return this._model&&this._model.getOption()},NI.getWidth=function(){return this._zr.getWidth()},NI.getHeight=function(){return this._zr.getHeight()},NI.getDevicePixelRatio=function(){return this._zr.painter.dpr||window.devicePixelRatio||1},NI.getRenderedCanvas=function(t){if(o_.canvasSupported)return(t=t||{}).pixelRatio=t.pixelRatio||1,t.backgroundColor=t.backgroundColor||this._model.get("backgroundColor"),this._zr.painter.getRenderedCanvas(t)},NI.getSvgDataUrl=function(){if(o_.svgSupported){var t=this._zr;return d(t.storage.getDisplayList(),function(t){t.stopAnimation(!0)}),t.painter.pathToDataUrl()}},NI.getDataURL=function(t){var e=(t=t||{}).excludeComponents,i=this._model,n=[],o=this;wI(e,function(t){i.eachComponent({mainType:t},function(t){var e=o._componentsMap[t.__viewId];e.group.ignore||(n.push(e),e.group.ignore=!0)})});var a="svg"===this._zr.painter.getType()?this.getSvgDataUrl():this.getRenderedCanvas(t).toDataURL("image/"+(t&&t.type||"png"));return wI(n,function(t){t.group.ignore=!1}),a},NI.getConnectedDataURL=function(t){if(o_.canvasSupported){var e=this.group,n=Math.min,o=Math.max;if(UI[e]){var a=1/0,r=1/0,s=-1/0,l=-1/0,u=[],h=t&&t.pixelRatio||1;d(ZI,function(h,c){if(h.group===e){var d=h.getRenderedCanvas(i(t)),f=h.getDom().getBoundingClientRect();a=n(f.left,a),r=n(f.top,r),s=o(f.right,s),l=o(f.bottom,l),u.push({dom:d,left:f.left,top:f.top})}});var c=(s*=h)-(a*=h),f=(l*=h)-(r*=h),p=g_();p.width=c,p.height=f;var g=_i(p);return wI(u,function(t){var e=new Je({style:{x:t.left*h-a,y:t.top*h-r,image:t.dom}});g.add(e)}),g.refreshImmediately(),p.toDataURL("image/"+(t&&t.type||"png"))}return this.getDataURL(t)}},NI.convertToPixel=v(Wr,"convertToPixel"),NI.convertFromPixel=v(Wr,"convertFromPixel"),NI.containPixel=function(t,e){var i;return t=Oi(this._model,t),d(t,function(t,n){n.indexOf("Models")>=0&&d(t,function(t){var o=t.coordinateSystem;if(o&&o.containPoint)i|=!!o.containPoint(e);else if("seriesModels"===n){var a=this._chartsMap[t.__viewId];a&&a.containPoint&&(i|=a.containPoint(e,t))}},this)},this),!!i},NI.getVisual=function(t,e){var i=(t=Oi(this._model,t,{defaultMainType:"series"})).seriesModel.getData(),n=t.hasOwnProperty("dataIndexInside")?t.dataIndexInside:t.hasOwnProperty("dataIndex")?i.indexOfRawIndex(t.dataIndex):null;return null!=n?i.getItemVisual(n,e):i.getVisual(e)},NI.getViewOfComponentModel=function(t){return this._componentsMap[t.__viewId]},NI.getViewOfSeriesModel=function(t){return this._chartsMap[t.__viewId]};var OI={prepareAndUpdate:function(t){Fr(this),OI.update.call(this,t)},update:function(t){var e=this._model,i=this._api,n=this._zr,o=this._coordSysMgr,a=this._scheduler;if(e){a.restoreData(e,t),a.performSeriesTasks(e),o.create(e,i),a.performDataProcessorTasks(e,t),Zr(this,e),o.update(e,i),Kr(e),a.performVisualTasks(e,t),$r(this,e,i,t);var r=e.get("backgroundColor")||"transparent";if(o_.canvasSupported)n.setBackgroundColor(r);else{var s=At(r);r=zt(s,"rgb"),0===s[3]&&(r="transparent")}ts(e,i)}},updateTransform:function(t){var e=this._model,i=this,n=this._api;if(e){var o=[];e.eachComponent(function(a,r){var s=i.getViewOfComponentModel(r);if(s&&s.__alive)if(s.updateTransform){var l=s.updateTransform(r,e,n,t);l&&l.update&&o.push(s)}else o.push(s)});var a=R();e.eachSeries(function(o){var r=i._chartsMap[o.__viewId];if(r.updateTransform){var s=r.updateTransform(o,e,n,t);s&&s.update&&a.set(o.uid,1)}else a.set(o.uid,1)}),Kr(e),this._scheduler.performVisualTasks(e,t,{setDirty:!0,dirtyMap:a}),Qr(i,e,0,t,a),ts(e,this._api)}},updateView:function(t){var e=this._model;e&&(gr.markUpdateMethod(t,"updateView"),Kr(e),this._scheduler.performVisualTasks(e,t,{setDirty:!0}),$r(this,this._model,this._api,t),ts(e,this._api))},updateVisual:function(t){OI.update.call(this,t)},updateLayout:function(t){OI.update.call(this,t)}};NI.resize=function(t){this._zr.resize(t);var e=this._model;if(this._loadingFX&&this._loadingFX.resize(),e){var i=e.resetOption("media"),n=t&&t.silent;this[LI]=!0,i&&Fr(this),OI.update.call(this),this[LI]=!1,Xr.call(this,n),jr.call(this,n)}},NI.showLoading=function(t,e){if(SI(t)&&(e=t,t=""),t=t||"default",this.hideLoading(),HI[t]){var i=HI[t](this._api,e),n=this._zr;this._loadingFX=i,n.add(i)}},NI.hideLoading=function(){this._loadingFX&&this._zr.remove(this._loadingFX),this._loadingFX=null},NI.makeActionFromEvent=function(t){var e=a({},t);return e.type=zI[t.type],e},NI.dispatchAction=function(t,e){SI(e)||(e={silent:!!e}),RI[t.type]&&this._model&&(this[LI]?this._pendingActions.push(t):(Ur.call(this,t,e.silent),e.flush?this._zr.flush(!0):!1!==e.flush&&o_.browser.weChat&&this._throttledZrFlush(),Xr.call(this,e.silent),jr.call(this,e.silent)))},NI.appendData=function(t){var e=t.seriesIndex;this.getModel().getSeriesByIndex(e).appendData(t),this._scheduler.unfinished=!0},NI.on=Br("on"),NI.off=Br("off"),NI.one=Br("one");var EI=["click","dblclick","mouseover","mouseout","mousemove","mousedown","mouseup","globalout","contextmenu"];NI._initEvents=function(){wI(EI,function(t){this._zr.on(t,function(e){var i,n=this.getModel(),o=e.target;if("globalout"===t)i={};else if(o&&null!=o.dataIndex){var r=o.dataModel||n.getSeriesByIndex(o.seriesIndex);i=r&&r.getDataParams(o.dataIndex,o.dataType)||{}}else o&&o.eventData&&(i=a({},o.eventData));i&&(i.event=e,i.type=t,this.trigger(t,i))},this)},this),wI(zI,function(t,e){this._messageCenter.on(e,function(t){this.trigger(e,t)},this)},this)},NI.isDisposed=function(){return this._disposed},NI.clear=function(){this.setOption({series:[]},!0)},NI.dispose=function(){if(!this._disposed){this._disposed=!0,Ri(this.getDom(),YI,"");var t=this._api,e=this._model;wI(this._componentsViews,function(i){i.dispose(e,t)}),wI(this._chartsViews,function(i){i.dispose(e,t)}),this._zr.dispose(),delete ZI[this.id]}},h(Gr,T_);var RI={},zI={},BI=[],VI=[],GI=[],WI=[],FI={},HI={},ZI={},UI={},XI=new Date-0,jI=new Date-0,YI="_echarts_instance_",qI={},KI=rs;ps(2e3,rI),us(VM),hs(5e3,function(t){var e=R();t.eachSeries(function(t){var i=t.get("stack");if(i){var n=e.get(i)||e.set(i,[]),o=t.getData(),a={stackResultDimension:o.getCalculationInfo("stackResultDimension"),stackedOverDimension:o.getCalculationInfo("stackedOverDimension"),stackedDimension:o.getCalculationInfo("stackedDimension"),stackedByDimension:o.getCalculationInfo("stackedByDimension"),isStackedByIndex:o.getCalculationInfo("isStackedByIndex"),data:o,seriesModel:t};if(!a.stackedDimension||!a.isStackedByIndex&&!a.stackedByDimension)return;n.length&&o.setCalculationInfo("stackedOnSeries",n[n.length-1].seriesModel),n.push(a)}}),e.each(ja)}),ms("default",function(t,e){r(e=e||{},{text:"loading",color:"#c23531",textColor:"#000",maskColor:"rgba(255, 255, 255, 0.8)",zlevel:0});var i=new bS({style:{fill:e.maskColor},zlevel:e.zlevel,z:1e4}),n=new TS({shape:{startAngle:-uI/2,endAngle:-uI/2+.1,r:10},style:{stroke:e.color,lineCap:"round",lineWidth:5},zlevel:e.zlevel,z:10001}),o=new bS({style:{fill:"none",text:e.text,textPosition:"right",textDistance:10,textFill:e.textColor},zlevel:e.zlevel,z:10001});n.animateShape(!0).when(1e3,{endAngle:3*uI/2}).start("circularInOut"),n.animateShape(!0).when(1e3,{startAngle:3*uI/2}).delay(300).start("circularInOut");var a=new rw;return a.add(n),a.add(o),a.add(i),a.resize=function(){var e=t.getWidth()/2,a=t.getHeight()/2;n.setShape({cx:e,cy:a});var r=n.shape.r;o.setShape({x:e-r,y:a-r,width:2*r,height:2*r}),i.setShape({x:0,y:0,width:t.getWidth(),height:t.getHeight()})},a.resize(),a}),cs({type:"highlight",event:"highlight",update:"highlight"},B),cs({type:"downplay",event:"downplay",update:"downplay"},B),ls("light",vI),ls("dark",xI);var $I={};Ss.prototype={constructor:Ss,add:function(t){return this._add=t,this},update:function(t){return this._update=t,this},remove:function(t){return this._remove=t,this},execute:function(){var t=this._old,e=this._new,i={},n=[],o=[];for(Ms(t,{},n,"_oldKeyGetter",this),Ms(e,i,o,"_newKeyGetter",this),a=0;a=e)){for(var i,n=this._chunkSize,o=this._rawData,a=this._storage,r=this.dimensions,s=r.length,l=this._dimensionInfos,u=this._nameList,h=this._idList,c=this._rawExtent,d=this._nameRepeatCount={},f=this._chunkCount,p=f-1,g=0;gC[1]&&(C[1]=A)}if(!o.pure){var L=u[b];if(w&&null==L)if(null!=w.name)u[b]=L=w.name;else if(null!=i){var k=r[i],P=a[k][S];if(P){L=P[M];var N=l[k].ordinalMeta;N&&N.categories.length&&(L=N.categories[L])}}var O=null==w?null:w.id;null==O&&null!=L&&(d[L]=d[L]||0,O=L,d[L]>0&&(O+="__ec__"+d[L]),d[L]++),null!=O&&(h[b]=O)}}!o.persistent&&o.clean&&o.clean(),this._rawCount=this._count=e,this._extent={},ks(this)}},sT.count=function(){return this._count},sT.getIndices=function(){var t=this._indices;if(t){var e=t.constructor,i=this._count;if(e===Array){n=new e(i);for(o=0;o=0&&e=0&&ea&&(a=s)}return i=[o,a],this._extent[t]=i,i},sT.getApproximateExtent=function(t){return t=this.getDimension(t),this._approximateExtent[t]||this.getDataExtent(t)},sT.setApproximateExtent=function(t,e){e=this.getDimension(e),this._approximateExtent[e]=t.slice()},sT.getCalculationInfo=function(t){return this._calculationInfo[t]},sT.setCalculationInfo=function(t,e){QI(t)?a(this._calculationInfo,t):this._calculationInfo[t]=e},sT.getSum=function(t){var e=0;if(this._storage[t])for(var i=0,n=this.count();i=this._rawCount||t<0)return-1;var e=this._indices,i=e[t];if(null!=i&&it))return a;o=a-1}}return-1},sT.indicesOfNearest=function(t,e,i){var n=[];if(!this._storage[t])return n;null==i&&(i=1/0);for(var o=Number.MAX_VALUE,a=-1,r=0,s=this.count();r=0&&a<0)&&(o=u,a=l,n.length=0),n.push(r))}return n},sT.getRawIndex=Ns,sT.getRawDataItem=function(t){if(this._rawData.persistent)return this._rawData.getItem(this.getRawIndex(t));for(var e=[],i=0;i=l&&w<=u||isNaN(w))&&(a[r++]=c),c++;h=!0}else if(2===n){for(var d=this._storage[s],v=this._storage[e[1]],y=t[e[1]][0],x=t[e[1]][1],f=0;f=l&&w<=u||isNaN(w))&&(b>=y&&b<=x||isNaN(b))&&(a[r++]=c),c++}h=!0}}if(!h)if(1===n)for(m=0;m=l&&w<=u||isNaN(w))&&(a[r++]=M)}else for(m=0;mt[I][1])&&(S=!1)}S&&(a[r++]=this.getRawIndex(m))}return rb[1]&&(b[1]=w)}}}return o},sT.downSample=function(t,e,i,n){for(var o=zs(this,[t]),a=o._storage,r=[],s=Math.floor(1/e),l=a[t],u=this.count(),h=this._chunkSize,c=o._rawExtent[t],d=new(As(this))(u),f=0,p=0;pu-p&&(s=u-p,r.length=s);for(var g=0;gc[1]&&(c[1]=x),d[f++]=_}return o._count=f,o._indices=d,o.getRawIndex=Os,o},sT.getItemModel=function(t){var e=this.hostModel;return new wo(this.getRawDataItem(t),e,e&&e.ecModel)},sT.diff=function(t){var e=this;return new Ss(t?t.getIndices():[],this.getIndices(),function(e){return Es(t,e)},function(t){return Es(e,t)})},sT.getVisual=function(t){var e=this._visual;return e&&e[t]},sT.setVisual=function(t,e){if(QI(t))for(var i in t)t.hasOwnProperty(i)&&this.setVisual(i,t[i]);else this._visual=this._visual||{},this._visual[t]=e},sT.setLayout=function(t,e){if(QI(t))for(var i in t)t.hasOwnProperty(i)&&this.setLayout(i,t[i]);else this._layout[t]=e},sT.getLayout=function(t){return this._layout[t]},sT.getItemLayout=function(t){return this._itemLayouts[t]},sT.setItemLayout=function(t,e,i){this._itemLayouts[t]=i?a(this._itemLayouts[t]||{},e):e},sT.clearItemLayouts=function(){this._itemLayouts.length=0},sT.getItemVisual=function(t,e,i){var n=this._itemVisuals[t],o=n&&n[e];return null!=o||i?o:this.getVisual(e)},sT.setItemVisual=function(t,e,i){var n=this._itemVisuals[t]||{},o=this.hasItemVisual;if(this._itemVisuals[t]=n,QI(e))for(var a in e)e.hasOwnProperty(a)&&(n[a]=e[a],o[a]=!0);else n[e]=i,o[e]=!0},sT.clearAllVisual=function(){this._visual={},this._itemVisuals=[],this.hasItemVisual={}};var lT=function(t){t.seriesIndex=this.seriesIndex,t.dataIndex=this.dataIndex,t.dataType=this.dataType};sT.setItemGraphicEl=function(t,e){var i=this.hostModel;e&&(e.dataIndex=t,e.dataType=this.dataType,e.seriesIndex=i&&i.seriesIndex,"group"===e.type&&e.traverse(lT,e)),this._graphicEls[t]=e},sT.getItemGraphicEl=function(t){return this._graphicEls[t]},sT.eachItemGraphicEl=function(t,e){d(this._graphicEls,function(i,n){i&&t&&t.call(e,i,n)})},sT.cloneShallow=function(t){if(!t){var e=f(this.dimensions,this.getDimensionInfo,this);t=new rT(e,this.hostModel)}if(t._storage=this._storage,Ls(t,this),this._indices){var i=this._indices.constructor;t._indices=new i(this._indices)}else t._indices=null;return t.getRawIndex=t._indices?Os:Ns,t},sT.wrapMethod=function(t,e){var i=this[t];"function"==typeof i&&(this.__wrappedMethods=this.__wrappedMethods||[],this.__wrappedMethods.push(t),this[t]=function(){var t=i.apply(this,arguments);return e.apply(this,[t].concat(C(arguments)))})},sT.TRANSFERABLE_METHODS=["cloneShallow","downSample","map"],sT.CHANGABLE_METHODS=["filterSelf","selectRange"];var uT=function(t,e){return e=e||{},Gs(e.coordDimensions||[],t,{dimsDef:e.dimensionsDefine||t.dimensionsDefine,encodeDef:e.encodeDefine||t.encodeDefine,dimCount:e.dimensionsCount,generateCoord:e.generateCoord,generateCoordCount:e.generateCoordCount})};Ys.prototype.parse=function(t){return t},Ys.prototype.getSetting=function(t){return this._setting[t]},Ys.prototype.contain=function(t){var e=this._extent;return t>=e[0]&&t<=e[1]},Ys.prototype.normalize=function(t){var e=this._extent;return e[1]===e[0]?.5:(t-e[0])/(e[1]-e[0])},Ys.prototype.scale=function(t){var e=this._extent;return t*(e[1]-e[0])+e[0]},Ys.prototype.unionExtent=function(t){var e=this._extent;t[0]e[1]&&(e[1]=t[1])},Ys.prototype.unionExtentFromData=function(t,e){this.unionExtent(t.getApproximateExtent(e))},Ys.prototype.getExtent=function(){return this._extent.slice()},Ys.prototype.setExtent=function(t,e){var i=this._extent;isNaN(t)||(i[0]=t),isNaN(e)||(i[1]=e)},Ys.prototype.isBlank=function(){return this._isBlank},Ys.prototype.setBlank=function(t){this._isBlank=t},Ys.prototype.getLabel=null,Gi(Ys),Zi(Ys,{registerWhenExtend:!0}),qs.createByAxisModel=function(t){var e=t.option,i=e.data,n=i&&f(i,$s);return new qs({categories:n,needCollect:!n,deduplication:!1!==e.dedplication})};var hT=qs.prototype;hT.getOrdinal=function(t){return Ks(this).get(t)},hT.parseAndCollect=function(t){var e,i=this._needCollect;if("string"!=typeof t&&!i)return t;if(i&&!this._deduplication)return e=this.categories.length,this.categories[e]=t,e;var n=Ks(this);return null==(e=n.get(t))&&(i?(e=this.categories.length,this.categories[e]=t,n.set(t,e)):e=NaN),e};var cT=Ys.prototype,dT=Ys.extend({type:"ordinal",init:function(t,e){t&&!y(t)||(t=new qs({categories:t})),this._ordinalMeta=t,this._extent=e||[0,t.categories.length-1]},parse:function(t){return"string"==typeof t?this._ordinalMeta.getOrdinal(t):Math.round(t)},contain:function(t){return t=this.parse(t),cT.contain.call(this,t)&&null!=this._ordinalMeta.categories[t]},normalize:function(t){return cT.normalize.call(this,this.parse(t))},scale:function(t){return Math.round(cT.scale.call(this,t))},getTicks:function(){for(var t=[],e=this._extent,i=e[0];i<=e[1];)t.push(i),i++;return t},getLabel:function(t){if(!this.isBlank())return this._ordinalMeta.categories[t]},count:function(){return this._extent[1]-this._extent[0]+1},unionExtentFromData:function(t,e){this.unionExtent(t.getApproximateExtent(e))},getOrdinalMeta:function(){return this._ordinalMeta},niceTicks:B,niceExtent:B});dT.create=function(){return new dT};var fT=Ao,pT=Ao,gT=Ys.extend({type:"interval",_interval:0,_intervalPrecision:2,setExtent:function(t,e){var i=this._extent;isNaN(t)||(i[0]=parseFloat(t)),isNaN(e)||(i[1]=parseFloat(e))},unionExtent:function(t){var e=this._extent;t[0]e[1]&&(e[1]=t[1]),gT.prototype.setExtent.call(this,e[0],e[1])},getInterval:function(){return this._interval},setInterval:function(t){this._interval=t,this._niceExtent=this._extent.slice(),this._intervalPrecision=Qs(t)},getTicks:function(){return il(this._interval,this._extent,this._niceExtent,this._intervalPrecision)},getLabel:function(t,e){if(null==t)return"";var i=e&&e.precision;return null==i?i=ko(t)||0:"auto"===i&&(i=this._intervalPrecision),t=pT(t,i,!0),Fo(t)},niceTicks:function(t,e,i){t=t||5;var n=this._extent,o=n[1]-n[0];if(isFinite(o)){o<0&&(o=-o,n.reverse());var a=Js(n,t,e,i);this._intervalPrecision=a.intervalPrecision,this._interval=a.interval,this._niceExtent=a.niceTickExtent}},niceExtent:function(t){var e=this._extent;if(e[0]===e[1])if(0!==e[0]){var i=e[0];t.fixMax?e[0]-=i/2:(e[1]+=i/2,e[0]-=i/2)}else e[1]=1;var n=e[1]-e[0];isFinite(n)||(e[0]=0,e[1]=1),this.niceTicks(t.splitNumber,t.minInterval,t.maxInterval);var o=this._interval;t.fixMin||(e[0]=pT(Math.floor(e[0]/o)*o)),t.fixMax||(e[1]=pT(Math.ceil(e[1]/o)*o))}});gT.create=function(){return new gT};var mT="__ec_stack_",vT="undefined"!=typeof Float32Array?Float32Array:Array,yT={seriesType:"bar",plan:JM(),reset:function(t){if(cl(t)&&dl(t)){var e=t.getData(),i=t.coordinateSystem,n=i.getBaseAxis(),o=i.getOtherAxis(n),a=e.mapDimension(o.dim),r=e.mapDimension(n.dim),s=o.isHorizontal(),l=s?0:1,u=ul(sl([t]),n,t).width;return u>.5||(u=.5),{progress:function(t,e){for(var h,c=new vT(2*t.count),d=[],f=[],p=0;null!=(h=t.next());)f[l]=e.get(a,h),f[1-l]=e.get(r,h),d=i.dataToPoint(f,null,d),c[p++]=d[0],c[p++]=d[1];e.setLayout({largePoints:c,barWidth:u,valueAxisStart:fl(n,o,!1),valueAxisHorizontal:s})}}}}},xT=gT.prototype,_T=Math.ceil,wT=Math.floor,bT=function(t,e,i,n){for(;i>>1;t[o][1]i&&(a=i);var r=MT.length,s=bT(MT,a,0,r),l=MT[Math.min(s,r-1)],u=l[1];"year"===l[0]&&(u*=Vo(o/u/t,!0));var h=this.getSetting("useUTC")?0:60*new Date(+n[0]||+n[1]).getTimezoneOffset()*1e3,c=[Math.round(_T((n[0]-h)/u)*u+h),Math.round(wT((n[1]-h)/u)*u+h)];el(c,n),this._stepLvl=l,this._interval=u,this._niceExtent=c},parse:function(t){return+Ro(t)}});d(["contain","normalize"],function(t){ST.prototype[t]=function(e){return xT[t].call(this,this.parse(e))}});var MT=[["hh:mm:ss",1e3],["hh:mm:ss",5e3],["hh:mm:ss",1e4],["hh:mm:ss",15e3],["hh:mm:ss",3e4],["hh:mm\nMM-dd",6e4],["hh:mm\nMM-dd",3e5],["hh:mm\nMM-dd",6e5],["hh:mm\nMM-dd",9e5],["hh:mm\nMM-dd",18e5],["hh:mm\nMM-dd",36e5],["hh:mm\nMM-dd",72e5],["hh:mm\nMM-dd",216e5],["hh:mm\nMM-dd",432e5],["MM-dd\nyyyy",864e5],["MM-dd\nyyyy",1728e5],["MM-dd\nyyyy",2592e5],["MM-dd\nyyyy",3456e5],["MM-dd\nyyyy",432e6],["MM-dd\nyyyy",5184e5],["week",6048e5],["MM-dd\nyyyy",864e6],["week",12096e5],["week",18144e5],["month",26784e5],["week",36288e5],["month",53568e5],["week",36288e5],["quarter",8208e6],["month",107136e5],["month",13392e6],["half-year",16416e6],["month",214272e5],["month",26784e6],["year",32832e6]];ST.create=function(t){return new ST({useUTC:t.ecModel.get("useUTC")})};var IT=Ys.prototype,TT=gT.prototype,DT=ko,AT=Ao,CT=Math.floor,LT=Math.ceil,kT=Math.pow,PT=Math.log,NT=Ys.extend({type:"log",base:10,$constructor:function(){Ys.apply(this,arguments),this._originalScale=new gT},getTicks:function(){var t=this._originalScale,e=this._extent,i=t.getExtent();return f(TT.getTicks.call(this),function(n){var o=Ao(kT(this.base,n));return o=n===e[0]&&t.__fixMin?pl(o,i[0]):o,o=n===e[1]&&t.__fixMax?pl(o,i[1]):o},this)},getLabel:TT.getLabel,scale:function(t){return t=IT.scale.call(this,t),kT(this.base,t)},setExtent:function(t,e){var i=this.base;t=PT(t)/PT(i),e=PT(e)/PT(i),TT.setExtent.call(this,t,e)},getExtent:function(){var t=this.base,e=IT.getExtent.call(this);e[0]=kT(t,e[0]),e[1]=kT(t,e[1]);var i=this._originalScale,n=i.getExtent();return i.__fixMin&&(e[0]=pl(e[0],n[0])),i.__fixMax&&(e[1]=pl(e[1],n[1])),e},unionExtent:function(t){this._originalScale.unionExtent(t);var e=this.base;t[0]=PT(t[0])/PT(e),t[1]=PT(t[1])/PT(e),IT.unionExtent.call(this,t)},unionExtentFromData:function(t,e){this.unionExtent(t.getApproximateExtent(e))},niceTicks:function(t){t=t||10;var e=this._extent,i=e[1]-e[0];if(!(i===1/0||i<=0)){var n=zo(i);for(t/i*n<=.5&&(n*=10);!isNaN(n)&&Math.abs(n)<1&&Math.abs(n)>0;)n*=10;var o=[Ao(LT(e[0]/n)*n),Ao(CT(e[1]/n)*n)];this._interval=n,this._niceExtent=o}},niceExtent:function(t){TT.niceExtent.call(this,t);var e=this._originalScale;e.__fixMin=t.fixMin,e.__fixMax=t.fixMax}});d(["contain","normalize"],function(t){NT.prototype[t]=function(e){return e=PT(e)/PT(this.base),IT[t].call(this,e)}}),NT.create=function(){return new NT};var OT={getMin:function(t){var e=this.option,i=t||null==e.rangeStart?e.min:e.rangeStart;return this.axis&&null!=i&&"dataMin"!==i&&"function"!=typeof i&&!I(i)&&(i=this.axis.scale.parse(i)),i},getMax:function(t){var e=this.option,i=t||null==e.rangeEnd?e.max:e.rangeEnd;return this.axis&&null!=i&&"dataMax"!==i&&"function"!=typeof i&&!I(i)&&(i=this.axis.scale.parse(i)),i},getNeedCrossZero:function(){var t=this.option;return null==t.rangeStart&&null==t.rangeEnd&&!t.scale},getCoordSysModel:B,setRange:function(t,e){this.option.rangeStart=t,this.option.rangeEnd=e},resetRange:function(){this.option.rangeStart=this.option.rangeEnd=null}},ET=En({type:"triangle",shape:{cx:0,cy:0,width:0,height:0},buildPath:function(t,e){var i=e.cx,n=e.cy,o=e.width/2,a=e.height/2;t.moveTo(i,n-a),t.lineTo(i+o,n+a),t.lineTo(i-o,n+a),t.closePath()}}),RT=En({type:"diamond",shape:{cx:0,cy:0,width:0,height:0},buildPath:function(t,e){var i=e.cx,n=e.cy,o=e.width/2,a=e.height/2;t.moveTo(i,n-a),t.lineTo(i+o,n),t.lineTo(i,n+a),t.lineTo(i-o,n),t.closePath()}}),zT=En({type:"pin",shape:{x:0,y:0,width:0,height:0},buildPath:function(t,e){var i=e.x,n=e.y,o=e.width/5*3,a=Math.max(o,e.height),r=o/2,s=r*r/(a-r),l=n-a+r+s,u=Math.asin(s/r),h=Math.cos(u)*r,c=Math.sin(u),d=Math.cos(u),f=.6*r,p=.7*r;t.moveTo(i-h,l+s),t.arc(i,l,r,Math.PI-u,2*Math.PI+u),t.bezierCurveTo(i+h-c*f,l+s+d*f,i,n-p,i,n),t.bezierCurveTo(i,n-p,i-h+c*f,l+s+d*f,i-h,l+s),t.closePath()}}),BT=En({type:"arrow",shape:{x:0,y:0,width:0,height:0},buildPath:function(t,e){var i=e.height,n=e.width,o=e.x,a=e.y,r=n/3*2;t.moveTo(o,a),t.lineTo(o+r,a+i),t.lineTo(o,a+i/4*3),t.lineTo(o-r,a+i),t.lineTo(o,a),t.closePath()}}),VT={line:function(t,e,i,n,o){o.x1=t,o.y1=e+n/2,o.x2=t+i,o.y2=e+n/2},rect:function(t,e,i,n,o){o.x=t,o.y=e,o.width=i,o.height=n},roundRect:function(t,e,i,n,o){o.x=t,o.y=e,o.width=i,o.height=n,o.r=Math.min(i,n)/4},square:function(t,e,i,n,o){var a=Math.min(i,n);o.x=t,o.y=e,o.width=a,o.height=a},circle:function(t,e,i,n,o){o.cx=t+i/2,o.cy=e+n/2,o.r=Math.min(i,n)/2},diamond:function(t,e,i,n,o){o.cx=t+i/2,o.cy=e+n/2,o.width=i,o.height=n},pin:function(t,e,i,n,o){o.x=t+i/2,o.y=e+n/2,o.width=i,o.height=n},arrow:function(t,e,i,n,o){o.x=t+i/2,o.y=e+n/2,o.width=i,o.height=n},triangle:function(t,e,i,n,o){o.cx=t+i/2,o.cy=e+n/2,o.width=i,o.height=n}},GT={};d({line:SS,rect:bS,roundRect:bS,square:bS,circle:fS,diamond:RT,pin:zT,arrow:BT,triangle:ET},function(t,e){GT[e]=new t});var WT=En({type:"symbol",shape:{symbolType:"",x:0,y:0,width:0,height:0},beforeBrush:function(){var t=this.style;"pin"===this.shape.symbolType&&"inside"===t.textPosition&&(t.textPosition=["50%","40%"],t.textAlign="center",t.textVerticalAlign="middle")},buildPath:function(t,e,i){var n=e.symbolType,o=GT[n];"none"!==e.symbolType&&(o||(o=GT[n="rect"]),VT[n](e.x,e.y,e.width,e.height,o.shape),o.buildPath(t,o.shape,i))}}),FT={isDimensionStacked:Zs,enableDataStack:Hs},HT=(Object.freeze||Object)({createList:function(t){return Us(t.getSource(),t)},getLayoutRect:Qo,dataStack:FT,createScale:function(t,e){var i=e;wo.isInstance(e)||h(i=new wo(e),OT);var n=yl(i);return n.setExtent(t[0],t[1]),vl(n,i),n},mixinAxisModelCommonMethods:function(t){h(t,OT)},completeDimensions:Gs,createDimensions:uT,createSymbol:Il}),ZT=1e-8;Al.prototype={constructor:Al,properties:null,getBoundingRect:function(){var t=this._rect;if(t)return t;for(var e=Number.MAX_VALUE,i=[e,e],n=[-e,-e],o=[],a=[],r=this.geometries,s=0;s0}),function(t){var e=t.properties,i=t.geometry,n=i.coordinates,o=[];"Polygon"===i.type&&o.push({type:"polygon",exterior:n[0],interiors:n.slice(1)}),"MultiPolygon"===i.type&&d(n,function(t){t[0]&&o.push({type:"polygon",exterior:t[0],interiors:t.slice(1)})});var a=new Al(e.name,o,e.cp);return a.properties=e,a})},XT=Ni(),jT=[0,1],YT=function(t,e,i){this.dim=t,this.scale=e,this._extent=i||[0,0],this.inverse=!1,this.onBand=!1};YT.prototype={constructor:YT,contain:function(t){var e=this._extent,i=Math.min(e[0],e[1]),n=Math.max(e[0],e[1]);return t>=i&&t<=n},containData:function(t){return this.contain(this.dataToCoord(t))},getExtent:function(){return this._extent.slice()},getPixelPrecision:function(t){return Po(t||this.scale.getExtent(),this._extent)},setExtent:function(t,e){var i=this._extent;i[0]=t,i[1]=e},dataToCoord:function(t,e){var i=this._extent,n=this.scale;return t=n.normalize(t),this.onBand&&"ordinal"===n.type&&Ul(i=i.slice(),n.count()),To(t,jT,i,e)},coordToData:function(t,e){var i=this._extent,n=this.scale;this.onBand&&"ordinal"===n.type&&Ul(i=i.slice(),n.count());var o=To(t,i,jT,e);return this.scale.scale(o)},pointToData:function(t,e){},getTicksCoords:function(t){var e=(t=t||{}).tickModel||this.getTickModel(),i=Pl(this,e),n=f(i.ticks,function(t){return{coord:this.dataToCoord(t),tickValue:t}},this),o=e.get("alignWithLabel");return Xl(this,n,i.tickCategoryInterval,o,t.clamp),n},getViewLabels:function(){return kl(this).labels},getLabelModel:function(){return this.model.getModel("axisLabel")},getTickModel:function(){return this.model.getModel("axisTick")},getBandWidth:function(){var t=this._extent,e=this.scale.getExtent(),i=e[1]-e[0]+(this.onBand?1:0);0===i&&(i=1);var n=Math.abs(t[1]-t[0]);return Math.abs(n)/i},isHorizontal:null,getRotate:null,calculateCategoryInterval:function(t){return Gl(this,t)}};var qT=UT,KT={};d(["map","each","filter","indexOf","inherits","reduce","filter","bind","curry","isArray","isString","isObject","isFunction","extend","defaults","clone","merge"],function(t){KT[t]=y_[t]}),qM.extend({type:"series.line",dependencies:["grid","polar"],getInitialData:function(t,e){return Us(this.getSource(),this)},defaultOption:{zlevel:0,z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,hoverAnimation:!0,clipOverflow:!0,label:{position:"top"},lineStyle:{width:2,type:"solid"},step:!1,smooth:!1,smoothMonotone:null,symbol:"emptyCircle",symbolSize:4,symbolRotate:null,showSymbol:!0,showAllSymbol:"auto",connectNulls:!1,sampling:"none",animationEasing:"linear",progressive:0,hoverLayerThreshold:1/0}});var $T=Yl.prototype,JT=Yl.getSymbolSize=function(t,e){var i=t.getItemVisual(e,"symbolSize");return i instanceof Array?i.slice():[+i,+i]};$T._createSymbol=function(t,e,i,n,o){this.removeAll();var a=Il(t,-1,-1,2,2,e.getItemVisual(i,"color"),o);a.attr({z2:100,culling:!0,scale:ql(n)}),a.drift=Kl,this._symbolType=t,this.add(a)},$T.stopSymbolAnimation=function(t){this.childAt(0).stopAnimation(t)},$T.getSymbolPath=function(){return this.childAt(0)},$T.getScale=function(){return this.childAt(0).scale},$T.highlight=function(){this.childAt(0).trigger("emphasis")},$T.downplay=function(){this.childAt(0).trigger("normal")},$T.setZ=function(t,e){var i=this.childAt(0);i.zlevel=t,i.z=e},$T.setDraggable=function(t){var e=this.childAt(0);e.draggable=t,e.cursor=t?"move":"pointer"},$T.updateData=function(t,e,i){this.silent=!1;var n=t.getItemVisual(e,"symbol")||"circle",o=t.hostModel,a=JT(t,e),r=n!==this._symbolType;if(r){var s=t.getItemVisual(e,"symbolKeepAspect");this._createSymbol(n,t,e,a,s)}else(l=this.childAt(0)).silent=!1,fo(l,{scale:ql(a)},o,e);if(this._updateCommon(t,e,a,i),r){var l=this.childAt(0),u=i&&i.fadeIn,h={scale:l.scale.slice()};u&&(h.style={opacity:l.style.opacity}),l.scale=[0,0],u&&(l.style.opacity=0),po(l,h,o,e)}this._seriesModel=o};var QT=["itemStyle"],tD=["emphasis","itemStyle"],eD=["label"],iD=["emphasis","label"];$T._updateCommon=function(t,e,i,n){var o=this.childAt(0),r=t.hostModel,s=t.getItemVisual(e,"color");"image"!==o.type&&o.useStyle({strokeNoScale:!0});var l=n&&n.itemStyle,u=n&&n.hoverItemStyle,h=n&&n.symbolRotate,c=n&&n.symbolOffset,d=n&&n.labelModel,f=n&&n.hoverLabelModel,p=n&&n.hoverAnimation,g=n&&n.cursorStyle;if(!n||t.hasItemOption){var m=n&&n.itemModel?n.itemModel:t.getItemModel(e);l=m.getModel(QT).getItemStyle(["color"]),u=m.getModel(tD).getItemStyle(),h=m.getShallow("symbolRotate"),c=m.getShallow("symbolOffset"),d=m.getModel(eD),f=m.getModel(iD),p=m.getShallow("hoverAnimation"),g=m.getShallow("cursor")}else u=a({},u);var v=o.style;o.attr("rotation",(h||0)*Math.PI/180||0),c&&o.attr("position",[Do(c[0],i[0]),Do(c[1],i[1])]),g&&o.attr("cursor",g),o.setColor(s,n&&n.symbolInnerColor),o.setStyle(l);var y=t.getItemVisual(e,"opacity");null!=y&&(v.opacity=y);var x=t.getItemVisual(e,"liftZ"),_=o.__z2Origin;null!=x?null==_&&(o.__z2Origin=o.z2,o.z2+=x):null!=_&&(o.z2=_,o.__z2Origin=null);var w=n&&n.useNameLabel;io(v,u,d,f,{labelFetcher:r,labelDataIndex:e,defaultText:function(e,i){return w?t.getName(e):jl(t,e)},isRectText:!0,autoColor:s}),o.off("mouseover").off("mouseout").off("emphasis").off("normal"),o.hoverStyle=u,eo(o);var b=ql(i);if(p&&r.isAnimationEnabled()){var S=function(){if(!this.incremental){var t=b[1]/b[0];this.animateTo({scale:[Math.max(1.1*b[0],b[0]+3),Math.max(1.1*b[1],b[1]+3*t)]},400,"elasticOut")}},M=function(){this.incremental||this.animateTo({scale:b},400,"elasticOut")};o.on("mouseover",S).on("mouseout",M).on("emphasis",S).on("normal",M)}},$T.fadeOut=function(t,e){var i=this.childAt(0);this.silent=i.silent=!0,!(e&&e.keepLabel)&&(i.style.text=null),fo(i,{style:{opacity:0},scale:[0,0]},this._seriesModel,this.dataIndex,t)},u(Yl,rw);var nD=$l.prototype;nD.updateData=function(t,e){e=Ql(e);var i=this.group,n=t.hostModel,o=this._data,a=this._symbolCtor,r=tu(t);o||i.removeAll(),t.diff(o).add(function(n){var o=t.getItemLayout(n);if(Jl(t,o,n,e)){var s=new a(t,n,r);s.attr("position",o),t.setItemGraphicEl(n,s),i.add(s)}}).update(function(s,l){var u=o.getItemGraphicEl(l),h=t.getItemLayout(s);Jl(t,h,s,e)?(u?(u.updateData(t,s,r),fo(u,{position:h},n)):(u=new a(t,s)).attr("position",h),i.add(u),t.setItemGraphicEl(s,u)):i.remove(u)}).remove(function(t){var e=o.getItemGraphicEl(t);e&&e.fadeOut(function(){i.remove(e)})}).execute(),this._data=t},nD.isPersistent=function(){return!0},nD.updateLayout=function(){var t=this._data;t&&t.eachItemGraphicEl(function(e,i){var n=t.getItemLayout(i);e.attr("position",n)})},nD.incrementalPrepareUpdate=function(t){this._seriesScope=tu(t),this._data=null,this.group.removeAll()},nD.incrementalUpdate=function(t,e,i){i=Ql(i);for(var n=t.start;n0&&au(i[o-1]);o--);for(;n0&&au(i[a-1]);a--);for(;o=0){var r=o.getItemGraphicEl(a);if(!r){var s=o.getItemLayout(a);if(!s)return;(r=new Yl(o,a)).position=s,r.setZ(t.get("zlevel"),t.get("z")),r.ignore=isNaN(s[0])||isNaN(s[1]),r.__temp=!0,o.setItemGraphicEl(a,r),r.stopSymbolAnimation(!0),this.group.add(r)}r.highlight()}else gr.prototype.highlight.call(this,t,e,i,n)},downplay:function(t,e,i,n){var o=t.getData(),a=Pi(o,n);if(null!=a&&a>=0){var r=o.getItemGraphicEl(a);r&&(r.__temp?(o.setItemGraphicEl(a,null),this.group.remove(r)):r.downplay())}else gr.prototype.downplay.call(this,t,e,i,n)},_newPolyline:function(t){var e=this._polyline;return e&&this._lineGroup.remove(e),e=new dD({shape:{points:t},silent:!0,z2:10}),this._lineGroup.add(e),this._polyline=e,e},_newPolygon:function(t,e){var i=this._polygon;return i&&this._lineGroup.remove(i),i=new fD({shape:{points:t,stackedOnPoints:e},silent:!0}),this._lineGroup.add(i),this._polygon=i,i},_updateAnimation:function(t,e,i,n,o,a){var r=this._polyline,s=this._polygon,l=t.hostModel,u=oD(this._data,t,this._stackedOnPoints,e,this._coordSys,i,this._valueOrigin,a),h=u.current,c=u.stackedOnCurrent,d=u.next,f=u.stackedOnNext;o&&(h=yu(u.current,i,o),c=yu(u.stackedOnCurrent,i,o),d=yu(u.next,i,o),f=yu(u.stackedOnNext,i,o)),r.shape.__points=u.current,r.shape.points=h,fo(r,{shape:{points:d}},l),s&&(s.setShape({points:h,stackedOnPoints:c}),fo(s,{shape:{points:d,stackedOnPoints:f}},l));for(var p=[],g=u.status,m=0;me&&(e=t[i]);return isFinite(e)?e:NaN},min:function(t){for(var e=1/0,i=0;ie[1]&&e.reverse(),e},getOtherAxis:function(){this.grid.getOtherAxis()},pointToData:function(t,e){return this.coordToData(this.toLocalCoord(t["x"===this.dim?0:1]),e)},toLocalCoord:null,toGlobalCoord:null},u(xD,YT);var _D={show:!0,zlevel:0,z:0,inverse:!1,name:"",nameLocation:"end",nameRotate:null,nameTruncate:{maxWidth:null,ellipsis:"...",placeholder:"."},nameTextStyle:{},nameGap:15,silent:!1,triggerEvent:!1,tooltip:{show:!1},axisPointer:{},axisLine:{show:!0,onZero:!0,onZeroAxisIndex:null,lineStyle:{color:"#333",width:1,type:"solid"},symbol:["none","none"],symbolSize:[10,15]},axisTick:{show:!0,inside:!1,length:5,lineStyle:{width:1}},axisLabel:{show:!0,inside:!1,rotate:0,showMinLabel:null,showMaxLabel:null,margin:8,fontSize:12},splitLine:{show:!0,lineStyle:{color:["#ccc"],width:1,type:"solid"}},splitArea:{show:!1,areaStyle:{color:["rgba(250,250,250,0.3)","rgba(200,200,200,0.3)"]}}},wD={};wD.categoryAxis=n({boundaryGap:!0,deduplication:null,splitLine:{show:!1},axisTick:{alignWithLabel:!1,interval:"auto"},axisLabel:{interval:"auto"}},_D),wD.valueAxis=n({boundaryGap:[0,0],splitNumber:5},_D),wD.timeAxis=r({scale:!0,min:"dataMin",max:"dataMax"},wD.valueAxis),wD.logAxis=r({scale:!0,logBase:10},wD.valueAxis);var bD=["value","category","time","log"],SD=function(t,e,i,a){d(bD,function(r){e.extend({type:t+"Axis."+r,mergeDefaultAndTheme:function(e,o){var a=this.layoutMode,s=a?na(e):{};n(e,o.getTheme().get(r+"Axis")),n(e,this.getDefaultOption()),e.type=i(t,e),a&&ia(e,s,a)},optionUpdated:function(){"category"===this.option.type&&(this.__ordinalMeta=qs.createByAxisModel(this))},getCategories:function(t){var e=this.option;if("category"===e.type)return t?e.data:this.__ordinalMeta.categories},getOrdinalMeta:function(){return this.__ordinalMeta},defaultOption:o([{},wD[r+"Axis"],a],!0)})}),uM.registerSubTypeDefaulter(t+"Axis",v(i,t))},MD=uM.extend({type:"cartesian2dAxis",axis:null,init:function(){MD.superApply(this,"init",arguments),this.resetRange()},mergeOption:function(){MD.superApply(this,"mergeOption",arguments),this.resetRange()},restoreData:function(){MD.superApply(this,"restoreData",arguments),this.resetRange()},getCoordSysModel:function(){return this.ecModel.queryComponents({mainType:"grid",index:this.option.gridIndex,id:this.option.gridId})[0]}});n(MD.prototype,OT);var ID={offset:0};SD("x",MD,Mu,ID),SD("y",MD,Mu,ID),uM.extend({type:"grid",dependencies:["xAxis","yAxis"],layoutMode:"box",coordinateSystem:null,defaultOption:{show:!1,zlevel:0,z:0,left:"10%",top:60,right:"10%",bottom:60,containLabel:!1,backgroundColor:"rgba(0,0,0,0)",borderWidth:1,borderColor:"#ccc"}});var TD=Tu.prototype;TD.type="grid",TD.axisPointerEnabled=!0,TD.getRect=function(){return this._rect},TD.update=function(t,e){var i=this._axesMap;this._updateScale(t,this.model),d(i.x,function(t){vl(t.scale,t.model)}),d(i.y,function(t){vl(t.scale,t.model)}),d(i.x,function(t){Du(i,"y",t)}),d(i.y,function(t){Du(i,"x",t)}),this.resize(this.model,e)},TD.resize=function(t,e,i){function n(){d(a,function(t){var e=t.isHorizontal(),i=e?[0,o.width]:[0,o.height],n=t.inverse?1:0;t.setExtent(i[n],i[1-n]),Cu(t,e?o.x:o.y)})}var o=Qo(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()});this._rect=o;var a=this._axesList;n(),!i&&t.get("containLabel")&&(d(a,function(t){if(!t.model.get("axisLabel.inside")){var e=bl(t);if(e){var i=t.isHorizontal()?"height":"width",n=t.model.get("axisLabel.margin");o[i]-=e[i]+n,"top"===t.position?o.y+=e.height+n:"left"===t.position&&(o.x+=e.width+n)}}}),n())},TD.getAxis=function(t,e){var i=this._axesMap[t];if(null!=i){if(null==e)for(var n in i)if(i.hasOwnProperty(n))return i[n];return i[e]}},TD.getAxes=function(){return this._axesList.slice()},TD.getCartesian=function(t,e){if(null!=t&&null!=e){var i="x"+t+"y"+e;return this._coordsMap[i]}w(t)&&(e=t.yAxisIndex,t=t.xAxisIndex);for(var n=0,o=this._coordsList;nu[1]?-1:1,c=["start"===o?u[0]-h*l:"end"===o?u[1]+h*l:(u[0]+u[1])/2,Bu(o)?t.labelOffset+r*l:0],d=e.get("nameRotate");null!=d&&(d=d*AD/180);var f;Bu(o)?n=kD(t.rotation,null!=d?d:t.rotation,r):(n=Nu(t,o,d||0,u),null!=(f=t.axisNameAvailableWidth)&&(f=Math.abs(f/Math.sin(n.rotation)),!isFinite(f)&&(f=null)));var p=s.getFont(),g=e.get("nameTruncate",!0)||{},m=g.ellipsis,v=T(t.nameTruncateMaxWidth,g.maxWidth,f),y=null!=m&&null!=v?tM(i,v,p,m,{minChar:2,placeholder:g.placeholder}):i,x=e.get("tooltip",!0),_=e.mainType,w={componentType:_,name:i,$vars:["name"]};w[_+"Index"]=e.componentIndex;var b=new dS({anid:"name",__fullText:i,__truncatedText:y,position:c,rotation:n.rotation,silent:Ou(e),z2:1,tooltip:x&&x.show?a({content:i,formatter:function(){return i},formatterParams:w},x):null});no(b.style,s,{text:y,textFont:p,textFill:s.getTextColor()||e.get("axisLine.lineStyle.color"),textAlign:n.textAlign,textVerticalAlign:n.textVerticalAlign}),e.get("triggerEvent")&&(b.eventData=Pu(e),b.eventData.targetType="axisName",b.eventData.name=i),this._dumbGroup.add(b),b.updateTransform(),this.group.add(b),b.decomposeTransform()}}},kD=CD.innerTextLayout=function(t,e,i){var n,o,a=Oo(e-t);return Eo(a)?(o=i>0?"top":"bottom",n="center"):Eo(a-AD)?(o=i>0?"bottom":"top",n="center"):(o="middle",n=a>0&&a0?"right":"left":i>0?"left":"right"),{rotation:a,textAlign:n,textVerticalAlign:o}},PD=d,ND=v,OD=ys({type:"axis",_axisPointer:null,axisPointerClass:null,render:function(t,e,i,n){this.axisPointerClass&&ju(t),OD.superApply(this,"render",arguments),Ju(this,t,0,i,0,!0)},updateAxisPointer:function(t,e,i,n,o){Ju(this,t,0,i,0,!1)},remove:function(t,e){var i=this._axisPointer;i&&i.remove(e),OD.superApply(this,"remove",arguments)},dispose:function(t,e){Qu(this,e),OD.superApply(this,"dispose",arguments)}}),ED=[];OD.registerAxisPointerClass=function(t,e){ED[t]=e},OD.getAxisPointerClass=function(t){return t&&ED[t]};var RD=["axisLine","axisTickLabel","axisName"],zD=["splitArea","splitLine"],BD=OD.extend({type:"cartesianAxis",axisPointerClass:"CartesianAxisPointer",render:function(t,e,i,n){this.group.removeAll();var o=this._axisGroup;if(this._axisGroup=new rw,this.group.add(this._axisGroup),t.get("show")){var a=t.getCoordSysModel(),r=th(a,t),s=new CD(t,r);d(RD,s.add,s),this._axisGroup.add(s.getGroup()),d(zD,function(e){t.get(e+".show")&&this["_"+e](t,a)},this),yo(o,this._axisGroup,t),BD.superCall(this,"render",t,e,i,n)}},remove:function(){this._splitAreaColors=null},_splitLine:function(t,e){var i=t.axis;if(!i.scale.isBlank()){var n=t.getModel("splitLine"),o=n.getModel("lineStyle"),a=o.get("color");a=y(a)?a:[a];for(var s=e.coordinateSystem.getRect(),l=i.isHorizontal(),u=0,h=i.getTicksCoords({tickModel:n}),c=[],d=[],f=o.getLineStyle(),p=0;p1){var c;"string"==typeof o?c=mD[o]:"function"==typeof o&&(c=o),c&&t.setData(n.downSample(n.mapDimension(s.dim),1/h,c,vD))}}}}}("line"));var VD=qM.extend({type:"series.__base_bar__",getInitialData:function(t,e){return Us(this.getSource(),this)},getMarkerPosition:function(t){var e=this.coordinateSystem;if(e){var i=e.dataToPoint(e.clampData(t)),n=this.getData(),o=n.getLayout("offset"),a=n.getLayout("size");return i[e.getBaseAxis().isHorizontal()?0:1]+=o+a/2,i}return[NaN,NaN]},defaultOption:{zlevel:0,z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,barMinHeight:0,barMinAngle:0,large:!1,largeThreshold:400,progressive:5e3,progressiveChunkMode:"mod",itemStyle:{},emphasis:{}}});VD.extend({type:"series.bar",dependencies:["grid","polar"],brushSelector:"rect",getProgressive:function(){return!!this.get("large")&&this.get("progressive")},getProgressiveThreshold:function(){var t=this.get("progressiveThreshold"),e=this.get("largeThreshold");return e>t&&(t=e),t}});var GD=rb([["fill","color"],["stroke","borderColor"],["lineWidth","borderWidth"],["stroke","barBorderColor"],["lineWidth","barBorderWidth"],["opacity"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["shadowColor"]]),WD={getBarItemStyle:function(t){var e=GD(this,t);if(this.getBorderLineDash){var i=this.getBorderLineDash();i&&(e.lineDash=i)}return e}},FD=["itemStyle","barBorderWidth"];a(wo.prototype,WD),_s({type:"bar",render:function(t,e,i){this._updateDrawMode(t);var n=t.get("coordinateSystem");return"cartesian2d"!==n&&"polar"!==n||(this._isLargeDraw?this._renderLarge(t,e,i):this._renderNormal(t,e,i)),this.group},incrementalPrepareRender:function(t,e,i){this._clear(),this._updateDrawMode(t)},incrementalRender:function(t,e,i,n){this._incrementalRenderLarge(t,e)},_updateDrawMode:function(t){var e=t.pipelineContext.large;(null==this._isLargeDraw||e^this._isLargeDraw)&&(this._isLargeDraw=e,this._clear())},_renderNormal:function(t,e,i){var n,o=this.group,a=t.getData(),r=this._data,s=t.coordinateSystem,l=s.getBaseAxis();"cartesian2d"===s.type?n=l.isHorizontal():"polar"===s.type&&(n="angle"===l.dim);var u=t.isAnimationEnabled()?t:null;a.diff(r).add(function(e){if(a.hasValue(e)){var i=a.getItemModel(e),r=ZD[s.type](a,e,i),l=HD[s.type](a,e,i,r,n,u);a.setItemGraphicEl(e,l),o.add(l),ah(l,a,e,i,r,t,n,"polar"===s.type)}}).update(function(e,i){var l=r.getItemGraphicEl(i);if(a.hasValue(e)){var h=a.getItemModel(e),c=ZD[s.type](a,e,h);l?fo(l,{shape:c},u,e):l=HD[s.type](a,e,h,c,n,u,!0),a.setItemGraphicEl(e,l),o.add(l),ah(l,a,e,h,c,t,n,"polar"===s.type)}else o.remove(l)}).remove(function(t){var e=r.getItemGraphicEl(t);"cartesian2d"===s.type?e&&nh(t,u,e):e&&oh(t,u,e)}).execute(),this._data=a},_renderLarge:function(t,e,i){this._clear(),sh(t,this.group)},_incrementalRenderLarge:function(t,e){sh(e,this.group,!0)},dispose:B,remove:function(t){this._clear(t)},_clear:function(t){var e=this.group,i=this._data;t&&t.get("animation")&&i&&!this._isLargeDraw?i.eachItemGraphicEl(function(e){"sector"===e.type?oh(e.dataIndex,t,e):nh(e.dataIndex,t,e)}):e.removeAll(),this._data=null}});var HD={cartesian2d:function(t,e,i,n,o,r,s){var l=new bS({shape:a({},n)});if(r){var u=l.shape,h=o?"height":"width",c={};u[h]=0,c[h]=n[h],zS[s?"updateProps":"initProps"](l,{shape:c},r,e)}return l},polar:function(t,e,i,n,o,a,s){var l=n.startAngle0?1:-1,r=n.height>0?1:-1;return{x:n.x+a*o/2,y:n.y+r*o/2,width:n.width-a*o,height:n.height-r*o}},polar:function(t,e,i){var n=t.getItemLayout(e);return{cx:n.cx,cy:n.cy,r0:n.r0,r:n.r,startAngle:n.startAngle,endAngle:n.endAngle}}},UD=In.extend({type:"largeBar",shape:{points:[]},buildPath:function(t,e){for(var i=e.points,n=this.__startPoint,o=this.__valueIdx,a=0;a0&&"scale"!==u){var d=o.getItemLayout(0),f=Math.max(i.getWidth(),i.getHeight())/2,p=m(r.removeClipPath,r);r.setClipPath(this._createClipPath(d.cx,d.cy,f,d.startAngle,d.clockwise,p,t))}this._data=o}},dispose:function(){},_createClipPath:function(t,e,i,n,o,a,r){var s=new mS({shape:{cx:t,cy:e,r0:0,r:i,startAngle:n,endAngle:n,clockwise:o}});return po(s,{shape:{endAngle:n+(o?1:-1)*Math.PI*2}},r,a),s},containPoint:function(t,e){var i=e.getData().getItemLayout(0);if(i){var n=t[0]-i.cx,o=t[1]-i.cy,a=Math.sqrt(n*n+o*o);return a<=i.r&&a>=i.r0}}});var KD=function(t,e){d(e,function(e){e.update="updateView",cs(e,function(i,n){var o={};return n.eachComponent({mainType:"series",subType:t,query:i},function(t){t[e.method]&&t[e.method](i.name,i.dataIndex);var n=t.getData();n.each(function(e){var i=n.getName(e);o[i]=t.isSelected(i)||!1})}),{name:i.name,selected:o}})})},$D=function(t){return{getTargetSeries:function(e){var i={},n=R();return e.eachSeriesByType(t,function(t){t.__paletteScope=i,n.set(t.uid,t)}),n},reset:function(t,e){var i=t.getRawData(),n={},o=t.getData();o.each(function(t){var e=o.getRawIndex(t);n[e]=t}),i.each(function(e){var a=n[e],r=null!=a&&o.getItemVisual(a,"color",!0);if(r)i.setItemVisual(e,"color",r);else{var s=i.getItemModel(e).get("itemStyle.color")||t.getColorFromPalette(i.getName(e)||e+"",t.__paletteScope,i.count());i.setItemVisual(e,"color",s),null!=a&&o.setItemVisual(a,"color",s)}})}}},JD=function(t,e,i,n){var o,a,r=t.getData(),s=[],l=!1;r.each(function(i){var n,u,h,c,d=r.getItemLayout(i),f=r.getItemModel(i),p=f.getModel("label"),g=p.get("position")||f.get("emphasis.label.position"),m=f.getModel("labelLine"),v=m.get("length"),y=m.get("length2"),x=(d.startAngle+d.endAngle)/2,_=Math.cos(x),w=Math.sin(x);o=d.cx,a=d.cy;var b="inside"===g||"inner"===g;if("center"===g)n=d.cx,u=d.cy,c="center";else{var S=(b?(d.r+d.r0)/2*_:d.r*_)+o,M=(b?(d.r+d.r0)/2*w:d.r*w)+a;if(n=S+3*_,u=M+3*w,!b){var I=S+_*(v+e-d.r),T=M+w*(v+e-d.r),D=I+(_<0?-1:1)*y,A=T;n=D+(_<0?-5:5),u=A,h=[[S,M],[I,T],[D,A]]}c=b?"center":_>0?"left":"right"}var C=p.getFont(),L=p.get("rotate")?_<0?-x+Math.PI:-x:0,k=me(t.getFormattedLabel(i,"normal")||r.getName(i),C,c,"top");l=!!L,d.label={x:n,y:u,position:g,height:k.height,len:v,len2:y,linePoints:h,textAlign:c,verticalAlign:"middle",rotation:L,inside:b},b||s.push(d.label)}),!l&&t.get("avoidLabelOverlap")&&fh(s,o,a,e,i,n)},QD=2*Math.PI,tA=Math.PI/180,eA=function(t){return{seriesType:t,reset:function(t,e){var i=e.findComponents({mainType:"legend"});if(i&&i.length){var n=t.getData();n.filterSelf(function(t){for(var e=n.getName(t),o=0;o=0;s--){var l=2*s,u=n[l]-a/2,h=n[l+1]-r/2;if(t>=u&&e>=h&&t<=u+a&&e<=h+r)return s}return-1}}),nA=ph.prototype;nA.isPersistent=function(){return!this._incremental},nA.updateData=function(t){this.group.removeAll();var e=new iA({rectHover:!0,cursor:"default"});e.setShape({points:t.getLayout("symbolPoints")}),this._setCommon(e,t),this.group.add(e),this._incremental=null},nA.updateLayout=function(t){if(!this._incremental){var e=t.getLayout("symbolPoints");this.group.eachChild(function(t){if(null!=t.startIndex){var i=2*(t.endIndex-t.startIndex),n=4*t.startIndex*2;e=new Float32Array(e.buffer,n,i)}t.setShape("points",e)})}},nA.incrementalPrepareUpdate=function(t){this.group.removeAll(),this._clearIncremental(),t.count()>2e6?(this._incremental||(this._incremental=new On({silent:!0})),this.group.add(this._incremental)):this._incremental=null},nA.incrementalUpdate=function(t,e){var i;this._incremental?(i=new iA,this._incremental.addDisplayable(i,!0)):((i=new iA({rectHover:!0,cursor:"default",startIndex:t.start,endIndex:t.end})).incremental=!0,this.group.add(i)),i.setShape({points:e.getLayout("symbolPoints")}),this._setCommon(i,e,!!this._incremental)},nA._setCommon=function(t,e,i){var n=e.hostModel,o=e.getVisual("symbolSize");t.setShape("size",o instanceof Array?o:[o,o]),t.symbolProxy=Il(e.getVisual("symbol"),0,0,0,0),t.setColor=t.symbolProxy.setColor;var a=t.shape.size[0]<4;t.useStyle(n.getModel("itemStyle").getItemStyle(a?["color","shadowBlur","shadowColor"]:["color"]));var r=e.getVisual("color");r&&t.setColor(r),i||(t.seriesIndex=n.seriesIndex,t.on("mousemove",function(e){t.dataIndex=null;var i=t.findDataIndex(e.offsetX,e.offsetY);i>=0&&(t.dataIndex=i+(t.startIndex||0))}))},nA.remove=function(){this._clearIncremental(),this._incremental=null,this.group.removeAll()},nA._clearIncremental=function(){var t=this._incremental;t&&t.clearDisplaybles()},_s({type:"scatter",render:function(t,e,i){var n=t.getData();this._updateSymbolDraw(n,t).updateData(n),this._finished=!0},incrementalPrepareRender:function(t,e,i){var n=t.getData();this._updateSymbolDraw(n,t).incrementalPrepareUpdate(n),this._finished=!1},incrementalRender:function(t,e,i){this._symbolDraw.incrementalUpdate(t,e.getData()),this._finished=t.end===e.getData().count()},updateTransform:function(t,e,i){var n=t.getData();if(this.group.dirty(),!this._finished||n.count()>1e4||!this._symbolDraw.isPersistent())return{update:!0};var o=gD().reset(t);o.progress&&o.progress({start:0,end:n.count()},n),this._symbolDraw.updateLayout(n)},_updateSymbolDraw:function(t,e){var i=this._symbolDraw,n=e.pipelineContext.large;return i&&n===this._isLargeDraw||(i&&i.remove(),i=this._symbolDraw=n?new ph:new $l,this._isLargeDraw=n,this.group.removeAll()),this.group.add(i.group),i},remove:function(t,e){this._symbolDraw&&this._symbolDraw.remove(!0),this._symbolDraw=null},dispose:function(){}}),ps(pD("scatter","circle")),fs(gD("scatter")),u(gh,YT),mh.prototype.getIndicatorAxes=function(){return this._indicatorAxes},mh.prototype.dataToPoint=function(t,e){var i=this._indicatorAxes[e];return this.coordToPoint(i.dataToCoord(t),e)},mh.prototype.coordToPoint=function(t,e){var i=this._indicatorAxes[e].angle;return[this.cx+t*Math.cos(i),this.cy-t*Math.sin(i)]},mh.prototype.pointToData=function(t){var e=t[0]-this.cx,i=t[1]-this.cy,n=Math.sqrt(e*e+i*i);e/=n,i/=n;for(var o,a=Math.atan2(-i,e),r=1/0,s=-1,l=0;ln[0]&&isFinite(c)&&isFinite(n[0]))}else{r.getTicks().length-1>a&&(u=i(u));var d=Math.round((n[0]+n[1])/2/u)*u,f=Math.round(a/2);r.setExtent(Ao(d-f*u),Ao(d+(a-f)*u)),r.setInterval(u)}})},mh.dimensions=[],mh.create=function(t,e){var i=[];return t.eachComponent("radar",function(n){var o=new mh(n,t,e);i.push(o),n.coordinateSystem=o}),t.eachSeriesByType("radar",function(t){"radar"===t.get("coordinateSystem")&&(t.coordinateSystem=i[t.get("radarIndex")||0])}),i},Ca.register("radar",mh);var oA=wD.valueAxis,aA=(vs({type:"radar",optionUpdated:function(){var t=this.get("boundaryGap"),e=this.get("splitNumber"),o=this.get("scale"),s=this.get("axisLine"),l=this.get("axisTick"),u=this.get("axisLabel"),h=this.get("name"),c=this.get("name.show"),d=this.get("name.formatter"),p=this.get("nameGap"),g=this.get("triggerEvent"),m=f(this.get("indicator")||[],function(f){null!=f.max&&f.max>0&&!f.min?f.min=0:null!=f.min&&f.min<0&&!f.max&&(f.max=0);var m=h;if(null!=f.color&&(m=r({color:f.color},h)),f=n(i(f),{boundaryGap:t,splitNumber:e,scale:o,axisLine:s,axisTick:l,axisLabel:u,name:f.text,nameLocation:"end",nameGap:p,nameTextStyle:m,triggerEvent:g},!1),c||(f.name=""),"string"==typeof d){var v=f.name;f.name=d.replace("{value}",null!=v?v:"")}else"function"==typeof d&&(f.name=d(f.name,f));var y=a(new wo(f,null,this.ecModel),OT);return y.mainType="radar",y.componentIndex=this.componentIndex,y},this);this.getIndicatorModels=function(){return m}},defaultOption:{zlevel:0,z:0,center:["50%","50%"],radius:"75%",startAngle:90,name:{show:!0},boundaryGap:[0,0],splitNumber:5,nameGap:15,scale:!1,shape:"polygon",axisLine:n({lineStyle:{color:"#bbb"}},oA.axisLine),axisLabel:vh(oA.axisLabel,!1),axisTick:vh(oA.axisTick,!1),splitLine:vh(oA.splitLine,!0),splitArea:vh(oA.splitArea,!0),indicator:[]}}),["axisLine","axisTickLabel","axisName"]);ys({type:"radar",render:function(t,e,i){this.group.removeAll(),this._buildAxes(t),this._buildSplitLineAndArea(t)},_buildAxes:function(t){var e=t.coordinateSystem;d(f(e.getIndicatorAxes(),function(t){return new CD(t.model,{position:[e.cx,e.cy],rotation:t.angle,labelDirection:-1,tickDirection:-1,nameDirection:1})}),function(t){d(aA,t.add,t),this.group.add(t.getGroup())},this)},_buildSplitLineAndArea:function(t){function e(t,e,i){var n=i%e.length;return t[n]=t[n]||[],n}var i=t.coordinateSystem,n=i.getIndicatorAxes();if(n.length){var o=t.get("shape"),a=t.getModel("splitLine"),s=t.getModel("splitArea"),l=a.getModel("lineStyle"),u=s.getModel("areaStyle"),h=a.get("show"),c=s.get("show"),p=l.get("color"),g=u.get("color");p=y(p)?p:[p],g=y(g)?g:[g];var m=[],v=[];if("circle"===o)for(var x=n[0].getTicksCoords(),_=i.cx,w=i.cy,b=0;b"+f(i,function(i,n){var o=e.get(e.mapDimension(i.dim),t);return Zo(i.name+" : "+o)}).join("
")},defaultOption:{zlevel:0,z:2,coordinateSystem:"radar",legendHoverLink:!0,radarIndex:0,lineStyle:{width:2,type:"solid"},label:{position:"top"},symbol:"emptyCircle",symbolSize:4}});_s({type:"radar",render:function(t,e,n){function o(t,e){var i=t.getItemVisual(e,"symbol")||"circle",n=t.getItemVisual(e,"color");if("none"!==i){var o=yh(t.getItemVisual(e,"symbolSize")),a=Il(i,-1,-1,2,2,n);return a.attr({style:{strokeNoScale:!0},z2:100,scale:[o[0]/2,o[1]/2]}),a}}function a(e,i,n,a,r,s){n.removeAll();for(var l=0;l"+Zo(n+" : "+i)},getTooltipPosition:function(t){if(null!=t){var e=this.getData().getName(t),i=this.coordinateSystem,n=i.getRegion(e);return n&&i.dataToPoint(n.center)}},setZoom:function(t){this.option.zoom=t},setCenter:function(t){this.option.center=t},defaultOption:{zlevel:0,z:2,coordinateSystem:"geo",map:"",left:"center",top:"center",aspectScale:.75,showLegendSymbol:!0,dataRangeHoverLink:!0,boundingCoords:null,center:null,zoom:1,scaleLimit:null,label:{show:!1,color:"#000"},itemStyle:{borderWidth:.5,borderColor:"#444",areaColor:"#eee"},emphasis:{label:{show:!0,color:"rgb(100,0,0)"},itemStyle:{areaColor:"rgba(255,215,0,0.8)"}}}});h(vA,jD);var yA="\0_ec_interaction_mutex";cs({type:"takeGlobalCursor",event:"globalCursorTaken",update:"update"},function(){}),h(Lh,T_);var xA={axisPointer:1,tooltip:1,brush:1};Zh.prototype={constructor:Zh,draw:function(t,e,i,n,o){var a="geo"===t.mainType,r=t.getData&&t.getData();a&&e.eachComponent({mainType:"series",subType:"map"},function(e){r||e.getHostGeoModel()!==t||(r=e.getData())});var s=t.coordinateSystem,l=this.group,u=s.scale,h={position:s.position,scale:u};!l.childAt(0)||o?l.attr(h):fo(l,h,t),l.removeAll();var c=["itemStyle"],f=["emphasis","itemStyle"],p=["label"],g=["emphasis","label"],m=R();d(s.regions,function(e){var i=m.get(e.name)||m.set(e.name,new rw),n=new DS({shape:{paths:[]}});i.add(n);var o,s=(C=t.getRegionModel(e.name)||t).getModel(c),h=C.getModel(f),v=Wh(s),y=Wh(h),x=C.getModel(p),_=C.getModel(g);if(r){o=r.indexOfName(e.name);var w=r.getItemVisual(o,"color",!0);w&&(v.fill=w)}d(e.geometries,function(t){if("polygon"===t.type){n.shape.paths.push(new _S({shape:{points:t.exterior}}));for(var e=0;e<(t.interiors?t.interiors.length:0);e++)n.shape.paths.push(new _S({shape:{points:t.interiors[e]}}))}}),n.setStyle(v),n.style.strokeNoScale=!0,n.culling=!0;var b=x.get("show"),S=_.get("show"),M=r&&isNaN(r.get(r.mapDimension("value"),o)),I=r&&r.getItemLayout(o);if(a||M&&(b||S)||I&&I.showLabel){var T,D=a?e.name:o;(!r||o>=0)&&(T=t);var A=new dS({position:e.center.slice(),scale:[1/u[0],1/u[1]],z2:10,silent:!0});io(A.style,A.hoverStyle={},x,_,{labelFetcher:T,labelDataIndex:D,defaultText:e.name,useInsideStyle:!1},{textAlign:"center",textVerticalAlign:"middle"}),i.add(A)}if(r)r.setItemGraphicEl(o,i);else{var C=t.getRegionModel(e.name);n.eventData={componentType:"geo",geoIndex:t.componentIndex,name:e.name,region:C&&C.option||{}}}(i.__regions||(i.__regions=[])).push(e),eo(i,y,{hoverSilentOnTouch:!!t.get("selectedMode")}),l.add(i)}),this._updateController(t,e,i),Fh(this,t,l,i,n),Hh(t,l)},remove:function(){this.group.removeAll(),this._controller.dispose(),this._controllerHost={}},_updateController:function(t,e,i){function n(){var e={type:"geoRoam",componentType:l};return e[l+"Id"]=t.id,e}var o=t.coordinateSystem,r=this._controller,s=this._controllerHost;s.zoomLimit=t.get("scaleLimit"),s.zoom=o.getZoom(),r.enable(t.get("roam")||!1);var l=t.mainType;r.off("pan").on("pan",function(t,e){this._mouseDownFlag=!1,Bh(s,t,e),i.dispatchAction(a(n(),{dx:t,dy:e}))},this),r.off("zoom").on("zoom",function(t,e,o){if(this._mouseDownFlag=!1,Vh(s,t,e,o),i.dispatchAction(a(n(),{zoom:t,originX:e,originY:o})),this._updateGroup){var r=this.group,l=r.scale;r.traverse(function(t){"text"===t.type&&t.attr("scale",[1/l[0],1/l[1]])})}},this),r.setPointerChecker(function(e,n,a){return o.getViewRectAfterRoam().contain(n,a)&&!Gh(e,i,t)})}},_s({type:"map",render:function(t,e,i,n){if(!n||"mapToggleSelect"!==n.type||n.from!==this.uid){var o=this.group;if(o.removeAll(),!t.getHostGeoModel()){if(n&&"geoRoam"===n.type&&"series"===n.componentType&&n.seriesId===t.id)(a=this._mapDraw)&&o.add(a.group);else if(t.needsDrawMap){var a=this._mapDraw||new Zh(i,!0);o.add(a.group),a.draw(t,e,i,this,n),this._mapDraw=a}else this._mapDraw&&this._mapDraw.remove(),this._mapDraw=null;t.get("showLegendSymbol")&&e.getComponent("legend")&&this._renderSymbols(t,e,i)}}},remove:function(){this._mapDraw&&this._mapDraw.remove(),this._mapDraw=null,this.group.removeAll()},dispose:function(){this._mapDraw&&this._mapDraw.remove(),this._mapDraw=null},_renderSymbols:function(t,e,i){var n=t.originalData,o=this.group;n.each(n.mapDimension("value"),function(e,i){if(!isNaN(e)){var a=n.getItemLayout(i);if(a&&a.point){var r=a.point,s=a.offset,l=new fS({style:{fill:t.getData().getVisual("color")},shape:{cx:r[0]+9*s,cy:r[1],r:3},silent:!0,z2:s?8:10});if(!s){var u=t.mainSeries.getData(),h=n.getName(i),c=u.indexOfName(h),d=n.getItemModel(i),f=d.getModel("label"),p=d.getModel("emphasis.label"),g=u.getItemGraphicEl(c),m=D(t.getFormattedLabel(i,"normal"),h),v=D(t.getFormattedLabel(i,"emphasis"),m),y=function(){var t=no({},p,{text:p.get("show")?v:null},{isRectText:!0,useInsideStyle:!1},!0);l.style.extendFrom(t),l.__mapOriginalZ2=l.z2,l.z2+=1},x=function(){no(l.style,f,{text:f.get("show")?m:null,textPosition:f.getShallow("position")||"bottom"},{isRectText:!0,useInsideStyle:!1}),null!=l.__mapOriginalZ2&&(l.z2=l.__mapOriginalZ2,l.__mapOriginalZ2=null)};g.on("mouseover",y).on("mouseout",x).on("emphasis",y).on("normal",x),x()}o.add(l)}}})}}),cs({type:"geoRoam",event:"geoRoam",update:"updateTransform"},function(t,e){var i=t.componentType||"series";e.eachComponent({mainType:i,query:t},function(e){var n=e.coordinateSystem;if("geo"===n.type){var o=Uh(n,t,e.get("scaleLimit"));e.setCenter&&e.setCenter(o.center),e.setZoom&&e.setZoom(o.zoom),"series"===i&&d(e.seriesGroup,function(t){t.setCenter(o.center),t.setZoom(o.zoom)})}})});fs(function(t){var e={};t.eachSeriesByType("map",function(i){var n=i.getMapType();if(!i.getHostGeoModel()&&!e[n]){var o={};d(i.seriesGroup,function(e){var i=e.coordinateSystem,n=e.originalData;e.get("showLegendSymbol")&&t.getComponent("legend")&&n.each(n.mapDimension("value"),function(t,e){var a=n.getName(e),r=i.getRegion(a);if(r&&!isNaN(t)){var s=o[a]||0,l=i.dataToPoint(r.center);o[a]=s+1,n.setItemLayout(e,{point:l,offset:s})}})});var a=i.getData();a.each(function(t){var e=a.getName(t),i=a.getItemLayout(t)||{};i.showLabel=!o[e],a.setItemLayout(t,i)}),e[n]=!0}})}),ps(function(t){t.eachSeriesByType("map",function(t){var e=t.get("color"),i=t.getModel("itemStyle"),n=i.get("areaColor"),o=i.get("color")||e[t.seriesIndex%e.length];t.getData().setVisual({areaColor:n,color:o})})}),hs(CI.PROCESSOR.STATISTIC,function(t){var e={};t.eachSeriesByType("map",function(t){var i=t.getHostGeoModel(),n=i?"o"+i.id:"i"+t.getMapType();(e[n]=e[n]||[]).push(t)}),d(e,function(t,e){for(var i=Xh(f(t,function(t){return t.getData()}),t[0].get("mapValueCalculation")),n=0;ne&&(e=n.height)}this.height=e+1},getNodeById:function(t){if(this.getId()===t)return this;for(var e=0,i=this.children,n=i.length;e=0&&this.hostTree.data.setItemLayout(this.dataIndex,t,e)},getLayout:function(){return this.hostTree.data.getItemLayout(this.dataIndex)},getModel:function(t){if(!(this.dataIndex<0)){var e,i=this.hostTree,n=i.data.getItemModel(this.dataIndex),o=this.getLevelModel();return o||0!==this.children.length&&(0===this.children.length||!1!==this.isExpand)||(e=this.getLeavesModel()),n.getModel(t,(o||e||i.hostModel).getModel(t))}},getLevelModel:function(){return(this.hostTree.levelModels||[])[this.depth]},getLeavesModel:function(){return this.hostTree.leavesModel},setVisual:function(t,e){this.dataIndex>=0&&this.hostTree.data.setItemVisual(this.dataIndex,t,e)},getVisual:function(t,e){return this.hostTree.data.getItemVisual(this.dataIndex,t,e)},getRawIndex:function(){return this.hostTree.data.getRawIndex(this.dataIndex)},getId:function(){return this.hostTree.data.getId(this.dataIndex)},isAncestorOf:function(t){for(var e=t.parentNode;e;){if(e===this)return!0;e=e.parentNode}return!1},isDescendantOf:function(t){return t!==this&&t.isAncestorOf(this)}},ec.prototype={constructor:ec,type:"tree",eachNode:function(t,e,i){this.root.eachNode(t,e,i)},getNodeByDataIndex:function(t){var e=this.data.getRawIndex(t);return this._nodes[e]},getNodeByName:function(t){return this.root.getNodeByName(t)},update:function(){for(var t=this.data,e=this._nodes,i=0,n=e.length;ia&&(a=t.depth)});var r=t.expandAndCollapse&&t.initialTreeDepth>=0?t.initialTreeDepth:a;return o.root.eachNode("preorder",function(t){var e=t.hostTree.data.getRawDataItem(t.dataIndex);t.isExpand=e&&null!=e.collapsed?!e.collapsed:t.depth<=r}),o.data},getOrient:function(){var t=this.get("orient");return"horizontal"===t?t="LR":"vertical"===t&&(t="TB"),t},formatTooltip:function(t){for(var e=this.getData().tree,i=e.root.children[0],n=e.getNodeByDataIndex(t),o=n.getValue(),a=n.name;n&&n!==i;)a=n.parentNode.name+"."+a,n=n.parentNode;return Zo(a+(isNaN(o)||null==o?"":" : "+o))},defaultOption:{zlevel:0,z:2,left:"12%",top:"12%",right:"12%",bottom:"12%",layout:"orthogonal",orient:"LR",symbol:"emptyCircle",symbolSize:7,expandAndCollapse:!0,initialTreeDepth:2,lineStyle:{color:"#ccc",width:1.5,curveness:.5},itemStyle:{color:"lightsteelblue",borderColor:"#c23531",borderWidth:1.5},label:{show:!0,color:"#555"},leaves:{label:{show:!0}},animationEasing:"linear",animationDuration:700,animationDurationUpdate:1e3}}),_s({type:"tree",init:function(t,e){this._oldTree,this._mainGroup=new rw,this.group.add(this._mainGroup)},render:function(t,e,i,n){var o=t.getData(),a=t.layoutInfo,r=this._mainGroup,s=t.get("layout");"radial"===s?r.attr("position",[a.x+a.width/2,a.y+a.height/2]):r.attr("position",[a.x,a.y]);var l=this._data,u={expandAndCollapse:t.get("expandAndCollapse"),layout:s,orient:t.getOrient(),curvature:t.get("lineStyle.curveness"),symbolRotate:t.get("symbolRotate"),symbolOffset:t.get("symbolOffset"),hoverAnimation:t.get("hoverAnimation"),useNameLabel:!0,fadeIn:!0};o.diff(l).add(function(e){mc(o,e)&&yc(o,e,null,r,t,u)}).update(function(e,i){var n=l.getItemGraphicEl(i);mc(o,e)?yc(o,e,n,r,t,u):n&&xc(l,i,n,r,t,u)}).remove(function(e){var i=l.getItemGraphicEl(e);i&&xc(l,e,i,r,t,u)}).execute(),!0===u.expandAndCollapse&&o.eachItemGraphicEl(function(e,n){e.off("click").on("click",function(){i.dispatchAction({type:"treeExpandAndCollapse",seriesId:t.id,dataIndex:n})})}),this._data=o},dispose:function(){},remove:function(){this._mainGroup.removeAll(),this._data=null}}),cs({type:"treeExpandAndCollapse",event:"treeExpandAndCollapse",update:"update"},function(t,e){e.eachComponent({mainType:"series",subType:"tree",query:t},function(e){var i=t.dataIndex,n=e.getData().tree.getNodeByDataIndex(i);n.isExpand=!n.isExpand})});ps(pD("tree","circle")),fs(function(t,e){t.eachSeriesByType("tree",function(t){Sc(t,e)})}),qM.extend({type:"series.treemap",layoutMode:"box",dependencies:["grid","polar"],_viewRoot:null,defaultOption:{progressive:0,hoverLayerThreshold:1/0,left:"center",top:"middle",right:null,bottom:null,width:"80%",height:"80%",sort:!0,clipWindow:"origin",squareRatio:.5*(1+Math.sqrt(5)),leafDepth:null,drillDownIcon:"▶",zoomToNodeRatio:.1024,roam:!0,nodeClick:"zoomToNode",animation:!0,animationDurationUpdate:900,animationEasing:"quinticInOut",breadcrumb:{show:!0,height:22,left:"center",top:"bottom",emptyItemWidth:25,itemStyle:{color:"rgba(0,0,0,0.7)",borderColor:"rgba(255,255,255,0.7)",borderWidth:1,shadowColor:"rgba(150,150,150,1)",shadowBlur:3,shadowOffsetX:0,shadowOffsetY:0,textStyle:{color:"#fff"}},emphasis:{textStyle:{}}},label:{show:!0,distance:0,padding:5,position:"inside",color:"#fff",ellipsis:!0},upperLabel:{show:!1,position:[0,"50%"],height:20,color:"#fff",ellipsis:!0,verticalAlign:"middle"},itemStyle:{color:null,colorAlpha:null,colorSaturation:null,borderWidth:0,gapWidth:0,borderColor:"#fff",borderColorSaturation:null},emphasis:{upperLabel:{show:!0,position:[0,"50%"],color:"#fff",ellipsis:!0,verticalAlign:"middle"}},visualDimension:0,visualMin:null,visualMax:null,color:[],colorAlpha:null,colorSaturation:null,colorMappingBy:"index",visibleMin:10,childrenVisibleMin:null,levels:[]},getInitialData:function(t,e){var i={name:t.name,children:t.data};Ac(i);var n=t.levels||[];n=t.levels=Cc(n,e);var o={};return o.levels=n,ec.createTree(i,this,o).data},optionUpdated:function(){this.resetViewRoot()},formatTooltip:function(t){var e=this.getData(),i=this.getRawValue(t),n=Fo(y(i)?i[0]:i);return Zo(e.getName(t)+": "+n)},getDataParams:function(t){var e=qM.prototype.getDataParams.apply(this,arguments),i=this.getData().tree.getNodeByDataIndex(t);return e.treePathInfo=Dc(i,this),e},setLayoutInfo:function(t){this.layoutInfo=this.layoutInfo||{},a(this.layoutInfo,t)},mapIdToIndex:function(t){var e=this._idIndexMap;e||(e=this._idIndexMap=R(),this._idIndexMapCount=0);var i=e.get(t);return null==i&&e.set(t,i=this._idIndexMapCount++),i},getViewRoot:function(){return this._viewRoot},resetViewRoot:function(t){t?this._viewRoot=t:t=this._viewRoot;var e=this.getRawData().tree.root;t&&(t===e||e.contains(t))||(this._viewRoot=e)}});var MA=5;Lc.prototype={constructor:Lc,render:function(t,e,i,n){var o=t.getModel("breadcrumb"),a=this.group;if(a.removeAll(),o.get("show")&&i){var r=o.getModel("itemStyle"),s=r.getModel("textStyle"),l={pos:{left:o.get("left"),right:o.get("right"),top:o.get("top"),bottom:o.get("bottom")},box:{width:e.getWidth(),height:e.getHeight()},emptyItemWidth:o.get("emptyItemWidth"),totalWidth:0,renderList:[]};this._prepare(i,l,s),this._renderContent(t,l,r,s,n),ta(a,l.pos,l.box)}},_prepare:function(t,e,i){for(var n=t;n;n=n.parentNode){var o=n.getModel().get("name"),a=i.getTextRect(o),r=Math.max(a.width+16,e.emptyItemWidth);e.totalWidth+=r+8,e.renderList.push({node:n,text:o,width:r})}},_renderContent:function(t,e,i,n,o){for(var a=0,s=e.emptyItemWidth,l=t.get("breadcrumb.height"),u=Jo(e.pos,e.box),h=e.totalWidth,c=e.renderList,d=c.length-1;d>=0;d--){var f=c[d],p=f.node,g=f.width,m=f.text;h>u.width&&(h-=g-s,g=s,m=null);var y=new _S({shape:{points:kc(a,0,g,l,d===c.length-1,0===d)},style:r(i.getItemStyle(),{lineJoin:"bevel",text:m,textFill:n.getTextColor(),textFont:n.getFont()}),z:10,onclick:v(o,p)});this.group.add(y),Pc(y,t,p),a+=g+8}},remove:function(){this.group.removeAll()}};var IA=m,TA=rw,DA=bS,AA=d,CA=["label"],LA=["emphasis","label"],kA=["upperLabel"],PA=["emphasis","upperLabel"],NA=10,OA=1,EA=2,RA=rb([["fill","color"],["stroke","strokeColor"],["lineWidth","strokeWidth"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["shadowColor"]]),zA=function(t){var e=RA(t);return e.stroke=e.fill=e.lineWidth=null,e};_s({type:"treemap",init:function(t,e){this._containerGroup,this._storage={nodeGroup:[],background:[],content:[]},this._oldTree,this._breadcrumb,this._controller,this._state="ready"},render:function(t,e,i,n){if(!(l(e.findComponents({mainType:"series",subType:"treemap",query:n}),t)<0)){this.seriesModel=t,this.api=i,this.ecModel=e;var o=Mc(n,["treemapZoomToNode","treemapRootToNode"],t),a=n&&n.type,r=t.layoutInfo,s=!this._oldTree,u=this._storage,h="treemapRootToNode"===a&&o&&u?{rootNodeGroup:u.nodeGroup[o.node.getRawIndex()],direction:n.direction}:null,c=this._giveContainerGroup(r),d=this._doRender(c,t,h);s||a&&"treemapZoomToNode"!==a&&"treemapRootToNode"!==a?d.renderFinally():this._doAnimation(c,d,t,h),this._resetController(i),this._renderBreadcrumb(t,i,o)}},_giveContainerGroup:function(t){var e=this._containerGroup;return e||(e=this._containerGroup=new TA,this._initEvents(e),this.group.add(e)),e.attr("position",[t.x,t.y]),e},_doRender:function(t,e,i){function n(t,e,i,o,a){function r(t){return t.getId()}function s(r,s){var l=null!=r?t[r]:null,u=null!=s?e[s]:null,c=h(l,u,i,a);c&&n(l&&l.viewChildren||[],u&&u.viewChildren||[],c,o,a+1)}o?(e=t,AA(t,function(t,e){!t.isRemoved()&&s(e,e)})):new Ss(e,t,r,r).add(s).update(s).remove(v(s,null)).execute()}var o=e.getData().tree,a=this._oldTree,r={nodeGroup:[],background:[],content:[]},s={nodeGroup:[],background:[],content:[]},l=this._storage,u=[],h=v(Oc,e,s,l,i,r,u);n(o.root?[o.root]:[],a&&a.root?[a.root]:[],t,o===a||!a,0);var c=function(t){var e={nodeGroup:[],background:[],content:[]};return t&&AA(t,function(t,i){var n=e[i];AA(t,function(t){t&&(n.push(t),t.__tmWillDelete=1)})}),e}(l);return this._oldTree=o,this._storage=s,{lastsForAnimation:r,willDeleteEls:c,renderFinally:function(){AA(c,function(t){AA(t,function(t){t.parent&&t.parent.remove(t)})}),AA(u,function(t){t.invisible=!0,t.dirty()})}}},_doAnimation:function(t,e,i,n){if(i.get("animation")){var o=i.get("animationDurationUpdate"),r=i.get("animationEasing"),s=Nc();AA(e.willDeleteEls,function(t,e){AA(t,function(t,i){if(!t.invisible){var a,l=t.parent;if(n&&"drillDown"===n.direction)a=l===n.rootNodeGroup?{shape:{x:0,y:0,width:l.__tmNodeWidth,height:l.__tmNodeHeight},style:{opacity:0}}:{style:{opacity:0}};else{var u=0,h=0;l.__tmWillDelete||(u=l.__tmNodeWidth/2,h=l.__tmNodeHeight/2),a="nodeGroup"===e?{position:[u,h],style:{opacity:0}}:{shape:{x:u,y:h,width:0,height:0},style:{opacity:0}}}a&&s.add(t,a,o,r)}})}),AA(this._storage,function(t,i){AA(t,function(t,n){var l=e.lastsForAnimation[i][n],u={};l&&("nodeGroup"===i?l.old&&(u.position=t.position.slice(),t.attr("position",l.old)):(l.old&&(u.shape=a({},t.shape),t.setShape(l.old)),l.fadein?(t.setStyle("opacity",0),u.style={opacity:1}):1!==t.style.opacity&&(u.style={opacity:1})),s.add(t,u,o,r))})},this),this._state="animating",s.done(IA(function(){this._state="ready",e.renderFinally()},this)).start()}},_resetController:function(t){var e=this._controller;e||((e=this._controller=new Lh(t.getZr())).enable(this.seriesModel.get("roam")),e.on("pan",IA(this._onPan,this)),e.on("zoom",IA(this._onZoom,this)));var i=new $t(0,0,t.getWidth(),t.getHeight());e.setPointerChecker(function(t,e,n){return i.contain(e,n)})},_clearController:function(){var t=this._controller;t&&(t.dispose(),t=null)},_onPan:function(t,e){if("animating"!==this._state&&(Math.abs(t)>3||Math.abs(e)>3)){var i=this.seriesModel.getData().tree.root;if(!i)return;var n=i.getLayout();if(!n)return;this.api.dispatchAction({type:"treemapMove",from:this.uid,seriesId:this.seriesModel.id,rootRect:{x:n.x+t,y:n.y+e,width:n.width,height:n.height}})}},_onZoom:function(t,e,i){if("animating"!==this._state){var n=this.seriesModel.getData().tree.root;if(!n)return;var o=n.getLayout();if(!o)return;var a=new $t(o.x,o.y,o.width,o.height),r=this.seriesModel.layoutInfo;e-=r.x,i-=r.y;var s=st();ct(s,s,[-e,-i]),ft(s,s,[t,t]),ct(s,s,[e,i]),a.applyTransform(s),this.api.dispatchAction({type:"treemapRender",from:this.uid,seriesId:this.seriesModel.id,rootRect:{x:a.x,y:a.y,width:a.width,height:a.height}})}},_initEvents:function(t){t.on("click",function(t){if("ready"===this._state){var e=this.seriesModel.get("nodeClick",!0);if(e){var i=this.findTarget(t.offsetX,t.offsetY);if(i){var n=i.node;if(n.getLayout().isLeafRoot)this._rootToNode(i);else if("zoomToNode"===e)this._zoomToNode(i);else if("link"===e){var o=n.hostTree.data.getItemModel(n.dataIndex),a=o.get("link",!0),r=o.get("target",!0)||"blank";a&&window.open(a,r)}}}}},this)},_renderBreadcrumb:function(t,e,i){i||(i=null!=t.get("leafDepth",!0)?{node:t.getViewRoot()}:this.findTarget(e.getWidth()/2,e.getHeight()/2))||(i={node:t.getData().tree.root}),(this._breadcrumb||(this._breadcrumb=new Lc(this.group))).render(t,e,i.node,IA(function(e){"animating"!==this._state&&(Tc(t.getViewRoot(),e)?this._rootToNode({node:e}):this._zoomToNode({node:e}))},this))},remove:function(){this._clearController(),this._containerGroup&&this._containerGroup.removeAll(),this._storage={nodeGroup:[],background:[],content:[]},this._state="ready",this._breadcrumb&&this._breadcrumb.remove()},dispose:function(){this._clearController()},_zoomToNode:function(t){this.api.dispatchAction({type:"treemapZoomToNode",from:this.uid,seriesId:this.seriesModel.id,targetNode:t.node})},_rootToNode:function(t){this.api.dispatchAction({type:"treemapRootToNode",from:this.uid,seriesId:this.seriesModel.id,targetNode:t.node})},findTarget:function(t,e){var i;return this.seriesModel.getViewRoot().eachNode({attr:"viewChildren",order:"preorder"},function(n){var o=this._storage.background[n.getRawIndex()];if(o){var a=o.transformCoordToLocal(t,e),r=o.shape;if(!(r.x<=a[0]&&a[0]<=r.x+r.width&&r.y<=a[1]&&a[1]<=r.y+r.height))return!1;i={node:n,offsetX:a[0],offsetY:a[1]}}},this),i}});for(var BA=["treemapZoomToNode","treemapRender","treemapMove"],VA=0;VA=0&&t.call(e,i[o],o)},aC.eachEdge=function(t,e){for(var i=this.edges,n=i.length,o=0;o=0&&i[o].node1.dataIndex>=0&&i[o].node2.dataIndex>=0&&t.call(e,i[o],o)},aC.breadthFirstTraverse=function(t,e,i,n){if(pd.isInstance(e)||(e=this._nodesMap[fd(e)]),e){for(var o="out"===i?"outEdges":"in"===i?"inEdges":"edges",a=0;a=0&&i.node2.dataIndex>=0});for(var o=0,a=n.length;o=0&&this[t][e].setItemVisual(this.dataIndex,i,n)},getVisual:function(i,n){return this[t][e].getItemVisual(this.dataIndex,i,n)},setLayout:function(i,n){this.dataIndex>=0&&this[t][e].setItemLayout(this.dataIndex,i,n)},getLayout:function(){return this[t][e].getItemLayout(this.dataIndex)},getGraphicEl:function(){return this[t][e].getItemGraphicEl(this.dataIndex)},getRawIndex:function(){return this[t][e].getRawIndex(this.dataIndex)}}};h(pd,rC("hostGraph","data")),h(gd,rC("hostGraph","edgeData")),oC.Node=pd,oC.Edge=gd,Wi(pd),Wi(gd);var sC=function(t,e,i,n,o){for(var a=new oC(n),r=0;r "+f)),h++)}var p,g=i.get("coordinateSystem");if("cartesian2d"===g||"polar"===g)p=Us(t,i);else{var m=Ca.get(g),v=m&&"view"!==m.type?m.dimensions||[]:[];l(v,"value")<0&&v.concat(["value"]);var y=uT(t,{coordDimensions:v});(p=new rT(y,i)).initData(t)}var x=new rT(["value"],i);return x.initData(u,s),o&&o(p,x),jh({mainData:p,struct:a,structAttr:"graph",datas:{node:p,edge:x},datasAttr:{node:"data",edge:"edgeData"}}),a.update(),a},lC=xs({type:"series.graph",init:function(t){lC.superApply(this,"init",arguments),this.legendDataProvider=function(){return this._categoriesData},this.fillDataTextStyle(t.edges||t.links),this._updateCategoriesData()},mergeOption:function(t){lC.superApply(this,"mergeOption",arguments),this.fillDataTextStyle(t.edges||t.links),this._updateCategoriesData()},mergeDefaultAndTheme:function(t){lC.superApply(this,"mergeDefaultAndTheme",arguments),Mi(t,["edgeLabel"],["show"])},getInitialData:function(t,e){var i=t.edges||t.links||[],n=t.data||t.nodes||[],o=this;if(n&&i)return sC(n,i,this,!0,function(t,i){function n(t){return(t=this.parsePath(t))&&"label"===t[0]?r:t&&"emphasis"===t[0]&&"label"===t[1]?l:this.parentModel}t.wrapMethod("getItemModel",function(t){var e=o._categoriesModels[t.getShallow("category")];return e&&(e.parentModel=t.parentModel,t.parentModel=e),t});var a=o.getModel("edgeLabel"),r=new wo({label:a.option},a.parentModel,e),s=o.getModel("emphasis.edgeLabel"),l=new wo({emphasis:{label:s.option}},s.parentModel,e);i.wrapMethod("getItemModel",function(t){return t.customizeGetParent(n),t})}).data},getGraph:function(){return this.getData().graph},getEdgeData:function(){return this.getGraph().edgeData},getCategoriesData:function(){return this._categoriesData},formatTooltip:function(t,e,i){if("edge"===i){var n=this.getData(),o=this.getDataParams(t,i),a=n.graph.getEdgeByIndex(t),r=n.getName(a.node1.dataIndex),s=n.getName(a.node2.dataIndex),l=[];return null!=r&&l.push(r),null!=s&&l.push(s),l=Zo(l.join(" > ")),o.value&&(l+=" : "+Zo(o.value)),l}return lC.superApply(this,"formatTooltip",arguments)},_updateCategoriesData:function(){var t=f(this.option.categories||[],function(t){return null!=t.value?t:a({value:0},t)}),e=new rT(["value"],this);e.initData(t),this._categoriesData=e,this._categoriesModels=e.mapArray(function(t){return e.getItemModel(t,!0)})},setZoom:function(t){this.option.zoom=t},setCenter:function(t){this.option.center=t},isAnimationEnabled:function(){return lC.superCall(this,"isAnimationEnabled")&&!("force"===this.get("layout")&&this.get("force.layoutAnimation"))},defaultOption:{zlevel:0,z:2,coordinateSystem:"view",legendHoverLink:!0,hoverAnimation:!0,layout:null,focusNodeAdjacency:!1,circular:{rotateLabel:!1},force:{initLayout:null,repulsion:[0,50],gravity:.1,edgeLength:30,layoutAnimation:!0},left:"center",top:"center",symbol:"circle",symbolSize:10,edgeSymbol:["none","none"],edgeSymbolSize:10,edgeLabel:{position:"middle"},draggable:!1,roam:!1,center:null,zoom:1,nodeScaleRatio:.6,label:{show:!1,formatter:"{b}"},itemStyle:{},lineStyle:{color:"#aaa",width:1,curveness:0,opacity:.5},emphasis:{label:{show:!0}}}}),uC=SS.prototype,hC=IS.prototype,cC=En({type:"ec-line",style:{stroke:"#000",fill:null},shape:{x1:0,y1:0,x2:0,y2:0,percent:1,cpx1:null,cpy1:null},buildPath:function(t,e){(md(e)?uC:hC).buildPath(t,e)},pointAt:function(t){return md(this.shape)?uC.pointAt.call(this,t):hC.pointAt.call(this,t)},tangentAt:function(t){var e=this.shape,i=md(e)?[e.x2-e.x1,e.y2-e.y1]:hC.tangentAt.call(this,t);return q(i,i)}}),dC=["fromSymbol","toSymbol"],fC=wd.prototype;fC.beforeUpdate=function(){var t=this,e=t.childOfName("fromSymbol"),i=t.childOfName("toSymbol"),n=t.childOfName("label");if(e||i||!n.ignore){for(var o=1,a=this.parent;a;)a.scale&&(o/=a.scale[0]),a=a.parent;var r=t.childOfName("line");if(this.__dirty||r.__dirty){var s=r.shape.percent,l=r.pointAt(0),u=r.pointAt(s),h=U([],u,l);if(q(h,h),e&&(e.attr("position",l),c=r.tangentAt(0),e.attr("rotation",Math.PI/2-Math.atan2(c[1],c[0])),e.attr("scale",[o*s,o*s])),i){i.attr("position",u);var c=r.tangentAt(1);i.attr("rotation",-Math.PI/2-Math.atan2(c[1],c[0])),i.attr("scale",[o*s,o*s])}if(!n.ignore){n.attr("position",u);var d,f,p,g=5*o;if("end"===n.__position)d=[h[0]*g+u[0],h[1]*g+u[1]],f=h[0]>.8?"left":h[0]<-.8?"right":"center",p=h[1]>.8?"top":h[1]<-.8?"bottom":"middle";else if("middle"===n.__position){var m=s/2,v=[(c=r.tangentAt(m))[1],-c[0]],y=r.pointAt(m);v[1]>0&&(v[0]=-v[0],v[1]=-v[1]),d=[y[0]+v[0]*g,y[1]+v[1]*g],f="center",p="bottom";var x=-Math.atan2(c[1],c[0]);u[0].8?"right":h[0]<-.8?"left":"center",p=h[1]>.8?"bottom":h[1]<-.8?"top":"middle";n.attr({style:{textVerticalAlign:n.__verticalAlign||p,textAlign:n.__textAlign||f},position:d,scale:[o,o]})}}}},fC._createLine=function(t,e,i){var n=t.hostModel,o=xd(t.getItemLayout(e));o.shape.percent=0,po(o,{shape:{percent:1}},n,e),this.add(o);var a=new dS({name:"label"});this.add(a),d(dC,function(i){var n=yd(i,t,e);this.add(n),this[vd(i)]=t.getItemVisual(e,i)},this),this._updateCommonStl(t,e,i)},fC.updateData=function(t,e,i){var n=t.hostModel,o=this.childOfName("line"),a=t.getItemLayout(e),r={shape:{}};_d(r.shape,a),fo(o,r,n,e),d(dC,function(i){var n=t.getItemVisual(e,i),o=vd(i);if(this[o]!==n){this.remove(this.childOfName(i));var a=yd(i,t,e);this.add(a)}this[o]=n},this),this._updateCommonStl(t,e,i)},fC._updateCommonStl=function(t,e,i){var n=t.hostModel,o=this.childOfName("line"),a=i&&i.lineStyle,s=i&&i.hoverLineStyle,l=i&&i.labelModel,u=i&&i.hoverLabelModel;if(!i||t.hasItemOption){var h=t.getItemModel(e);a=h.getModel("lineStyle").getLineStyle(),s=h.getModel("emphasis.lineStyle").getLineStyle(),l=h.getModel("label"),u=h.getModel("emphasis.label")}var c=t.getItemVisual(e,"color"),f=A(t.getItemVisual(e,"opacity"),a.opacity,1);o.useStyle(r({strokeNoScale:!0,fill:"none",stroke:c,opacity:f},a)),o.hoverStyle=s,d(dC,function(t){var e=this.childOfName(t);e&&(e.setColor(c),e.setStyle({opacity:f}))},this);var p,g,m=l.getShallow("show"),v=u.getShallow("show"),y=this.childOfName("label");if((m||v)&&(p=c||"#000",null==(g=n.getFormattedLabel(e,"normal",t.dataType)))){var x=n.getRawValue(e);g=null==x?t.getName(e):isFinite(x)?Ao(x):x}var _=m?g:null,w=v?D(n.getFormattedLabel(e,"emphasis",t.dataType),g):null,b=y.style;null==_&&null==w||(no(y.style,l,{text:_},{autoColor:p}),y.__textAlign=b.textAlign,y.__verticalAlign=b.textVerticalAlign,y.__position=l.get("position")||"middle"),y.hoverStyle=null!=w?{text:w,textFill:u.getTextColor(!0),fontStyle:u.getShallow("fontStyle"),fontWeight:u.getShallow("fontWeight"),fontSize:u.getShallow("fontSize"),fontFamily:u.getShallow("fontFamily")}:{text:null},y.ignore=!m&&!v,eo(this)},fC.highlight=function(){this.trigger("emphasis")},fC.downplay=function(){this.trigger("normal")},fC.updateLayout=function(t,e){this.setLinePoints(t.getItemLayout(e))},fC.setLinePoints=function(t){var e=this.childOfName("line");_d(e.shape,t),e.dirty()},u(wd,rw);var pC=bd.prototype;pC.isPersistent=function(){return!0},pC.updateData=function(t){var e=this,i=e.group,n=e._lineData;e._lineData=t,n||i.removeAll();var o=Id(t);t.diff(n).add(function(i){Sd(e,t,i,o)}).update(function(i,a){Md(e,n,t,a,i,o)}).remove(function(t){i.remove(n.getItemGraphicEl(t))}).execute()},pC.updateLayout=function(){var t=this._lineData;t&&t.eachItemGraphicEl(function(e,i){e.updateLayout(t,i)},this)},pC.incrementalPrepareUpdate=function(t){this._seriesScope=Id(t),this._lineData=null,this.group.removeAll()},pC.incrementalUpdate=function(t,e){for(var i=t.start;i=o/3?1:2),l=e.y-n(r)*a*(a>=o/3?1:2);r=e.angle-Math.PI/2,t.moveTo(s,l),t.lineTo(e.x+i(r)*a,e.y+n(r)*a),t.lineTo(e.x+i(e.angle)*o,e.y+n(e.angle)*o),t.lineTo(e.x-i(r)*a,e.y-n(r)*a),t.lineTo(s,l)}}),TC=2*Math.PI,DC=(gr.extend({type:"gauge",render:function(t,e,i){this.group.removeAll();var n=t.get("axisLine.lineStyle.color"),o=Bd(t,i);this._renderMain(t,e,i,n,o)},dispose:function(){},_renderMain:function(t,e,i,n,o){for(var a=this.group,r=t.getModel("axisLine").getModel("lineStyle"),s=t.get("clockwise"),l=-t.get("startAngle")/180*Math.PI,u=-t.get("endAngle")/180*Math.PI,h=(u-l)%TC,c=l,d=r.get("width"),f=0;f=t&&(0===e?0:n[e-1][0]).4?"bottom":"middle",textAlign:D<-.4?"left":D>.4?"right":"center"},{autoColor:P}),silent:!0}))}if(g.get("show")&&T!==v){for(var N=0;N<=y;N++){var D=Math.cos(w),A=Math.sin(w),O=new SS({shape:{x1:D*c+u,y1:A*c+h,x2:D*(c-_)+u,y2:A*(c-_)+h},silent:!0,style:I});"auto"===I.stroke&&O.setStyle({stroke:n((T+N/y)/v)}),l.add(O),w+=S}w-=S}else w+=b}},_renderPointer:function(t,e,i,n,o,a,r,s){var l=this.group,u=this._data;if(t.get("pointer.show")){var h=[+t.get("min"),+t.get("max")],c=[a,r],d=t.getData(),f=d.mapDimension("value");d.diff(u).add(function(e){var i=new IC({shape:{angle:a}});po(i,{shape:{angle:To(d.get(f,e),h,c,!0)}},t),l.add(i),d.setItemGraphicEl(e,i)}).update(function(e,i){var n=u.getItemGraphicEl(i);fo(n,{shape:{angle:To(d.get(f,e),h,c,!0)}},t),l.add(n),d.setItemGraphicEl(e,n)}).remove(function(t){var e=u.getItemGraphicEl(t);l.remove(e)}).execute(),d.eachItemGraphicEl(function(t,e){var i=d.getItemModel(e),a=i.getModel("pointer");t.setShape({x:o.cx,y:o.cy,width:Do(a.get("width"),o.r),r:Do(a.get("length"),o.r)}),t.useStyle(i.getModel("itemStyle").getItemStyle()),"auto"===t.style.fill&&t.setStyle("fill",n(To(d.get(f,e),h,[0,1],!0))),eo(t,i.getModel("emphasis.itemStyle").getItemStyle())}),this._data=d}else u&&u.eachItemGraphicEl(function(t){l.remove(t)})},_renderTitle:function(t,e,i,n,o){var a=t.getData(),r=a.mapDimension("value"),s=t.getModel("title");if(s.get("show")){var l=s.get("offsetCenter"),u=o.cx+Do(l[0],o.r),h=o.cy+Do(l[1],o.r),c=+t.get("min"),d=+t.get("max"),f=n(To(t.getData().get(r,0),[c,d],[0,1],!0));this.group.add(new dS({silent:!0,style:no({},s,{x:u,y:h,text:a.getName(0),textAlign:"center",textVerticalAlign:"middle"},{autoColor:f,forceRich:!0})}))}},_renderDetail:function(t,e,i,n,o){var a=t.getModel("detail"),r=+t.get("min"),s=+t.get("max");if(a.get("show")){var l=a.get("offsetCenter"),u=o.cx+Do(l[0],o.r),h=o.cy+Do(l[1],o.r),c=Do(a.get("width"),o.r),d=Do(a.get("height"),o.r),f=t.getData(),p=f.get(f.mapDimension("value"),0),g=n(To(p,[r,s],[0,1],!0));this.group.add(new dS({silent:!0,style:no({},a,{x:u,y:h,text:Vd(p,a.get("formatter")),textWidth:isNaN(c)?null:c,textHeight:isNaN(d)?null:d,textAlign:"center",textVerticalAlign:"middle"},{autoColor:g,forceRich:!0})}))}}}),xs({type:"series.funnel",init:function(t){DC.superApply(this,"init",arguments),this.legendDataProvider=function(){return this.getRawData()},this._defaultLabelLine(t)},getInitialData:function(t,e){return XD(this,["value"])},_defaultLabelLine:function(t){Mi(t,"labelLine",["show"]);var e=t.labelLine,i=t.emphasis.labelLine;e.show=e.show&&t.label.show,i.show=i.show&&t.emphasis.label.show},getDataParams:function(t){var e=this.getData(),i=DC.superCall(this,"getDataParams",t),n=e.mapDimension("value"),o=e.getSum(n);return i.percent=o?+(e.get(n,t)/o*100).toFixed(2):0,i.$vars.push("percent"),i},defaultOption:{zlevel:0,z:2,legendHoverLink:!0,left:80,top:60,right:80,bottom:60,minSize:"0%",maxSize:"100%",sort:"descending",gap:0,funnelAlign:"center",label:{show:!0,position:"outer"},labelLine:{show:!0,length:20,lineStyle:{width:1,type:"solid"}},itemStyle:{borderColor:"#fff",borderWidth:1},emphasis:{label:{show:!0}}}})),AC=Gd.prototype,CC=["itemStyle","opacity"];AC.updateData=function(t,e,i){var n=this.childAt(0),o=t.hostModel,a=t.getItemModel(e),s=t.getItemLayout(e),l=t.getItemModel(e).get(CC);l=null==l?1:l,n.useStyle({}),i?(n.setShape({points:s.points}),n.setStyle({opacity:0}),po(n,{style:{opacity:l}},o,e)):fo(n,{style:{opacity:l},shape:{points:s.points}},o,e);var u=a.getModel("itemStyle"),h=t.getItemVisual(e,"color");n.setStyle(r({lineJoin:"round",fill:h},u.getItemStyle(["opacity"]))),n.hoverStyle=u.getModel("emphasis").getItemStyle(),this._updateLabel(t,e),eo(this)},AC._updateLabel=function(t,e){var i=this.childAt(1),n=this.childAt(2),o=t.hostModel,a=t.getItemModel(e),r=t.getItemLayout(e).label,s=t.getItemVisual(e,"color");fo(i,{shape:{points:r.linePoints||r.linePoints}},o,e),fo(n,{style:{x:r.x,y:r.y}},o,e),n.attr({rotation:r.rotation,origin:[r.x,r.y],z2:10});var l=a.getModel("label"),u=a.getModel("emphasis.label"),h=a.getModel("labelLine"),c=a.getModel("emphasis.labelLine"),s=t.getItemVisual(e,"color");io(n.style,n.hoverStyle={},l,u,{labelFetcher:t.hostModel,labelDataIndex:e,defaultText:t.getName(e),autoColor:s,useInsideStyle:!!r.inside},{textAlign:r.textAlign,textVerticalAlign:r.verticalAlign}),n.ignore=n.normalIgnore=!l.get("show"),n.hoverIgnore=!u.get("show"),i.ignore=i.normalIgnore=!h.get("show"),i.hoverIgnore=!c.get("show"),i.setStyle({stroke:s}),i.setStyle(h.getModel("lineStyle").getLineStyle()),i.hoverStyle=c.getModel("lineStyle").getLineStyle()},u(Gd,rw);gr.extend({type:"funnel",render:function(t,e,i){var n=t.getData(),o=this._data,a=this.group;n.diff(o).add(function(t){var e=new Gd(n,t);n.setItemGraphicEl(t,e),a.add(e)}).update(function(t,e){var i=o.getItemGraphicEl(e);i.updateData(n,t),a.add(i),n.setItemGraphicEl(t,i)}).remove(function(t){var e=o.getItemGraphicEl(t);a.remove(e)}).execute(),this._data=n},remove:function(){this.group.removeAll(),this._data=null},dispose:function(){}});ps($D("funnel")),fs(function(t,e,i){t.eachSeriesByType("funnel",function(t){var i=t.getData(),n=i.mapDimension("value"),o=t.get("sort"),a=Wd(t,e),r=Fd(i,o),s=[Do(t.get("minSize"),a.width),Do(t.get("maxSize"),a.width)],l=i.getDataExtent(n),u=t.get("min"),h=t.get("max");null==u&&(u=Math.min(l[0],0)),null==h&&(h=l[1]);var c=t.get("funnelAlign"),d=t.get("gap"),f=(a.height-d*(i.count()-1))/i.count(),p=a.y,g=function(t,e){var o,r=To(i.get(n,t)||0,[u,h],s,!0);switch(c){case"left":o=a.x;break;case"center":o=a.x+(a.width-r)/2;break;case"right":o=a.x+a.width-r}return[[o,e],[o+r,e]]};"ascending"===o&&(f=-f,d=-d,p+=a.height,r=r.reverse());for(var m=0;ma&&(e[1-n]=e[n]+h.sign*a),e},PC=d,NC=Math.min,OC=Math.max,EC=Math.floor,RC=Math.ceil,zC=Ao,BC=Math.PI;Yd.prototype={type:"parallel",constructor:Yd,_init:function(t,e,i){var n=t.dimensions,o=t.parallelAxisIndex;PC(n,function(t,i){var n=o[i],a=e.getComponent("parallelAxis",n),r=this._axesMap.set(t,new LC(t,yl(a),[0,0],a.get("type"),n)),s="category"===r.type;r.onBand=s&&a.get("boundaryGap"),r.inverse=a.get("inverse"),a.axis=r,r.model=a,r.coordinateSystem=a.coordinateSystem=this},this)},update:function(t,e){this._updateAxesFromSeries(this._model,t)},containPoint:function(t){var e=this._makeLayoutInfo(),i=e.axisBase,n=e.layoutBase,o=e.pixelDimIndex,a=t[1-o],r=t[o];return a>=i&&a<=i+e.axisLength&&r>=n&&r<=n+e.layoutLength},getModel:function(){return this._model},_updateAxesFromSeries:function(t,e){e.eachSeries(function(i){if(t.contains(i,e)){var n=i.getData();PC(this.dimensions,function(t){var e=this._axesMap.get(t);e.scale.unionExtentFromData(n,n.mapDimension(t)),vl(e.scale,e.model)},this)}},this)},resize:function(t,e){this._rect=Qo(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()}),this._layoutAxes()},getRect:function(){return this._rect},_makeLayoutInfo:function(){var t,e=this._model,i=this._rect,n=["x","y"],o=["width","height"],a=e.get("layout"),r="horizontal"===a?0:1,s=i[o[r]],l=[0,s],u=this.dimensions.length,h=qd(e.get("axisExpandWidth"),l),c=qd(e.get("axisExpandCount")||0,[0,u]),d=e.get("axisExpandable")&&u>3&&u>c&&c>1&&h>0&&s>0,f=e.get("axisExpandWindow");f?(t=qd(f[1]-f[0],l),f[1]=f[0]+t):(t=qd(h*(c-1),l),(f=[h*(e.get("axisExpandCenter")||EC(u/2))-t/2])[1]=f[0]+t);var p=(s-t)/(u-c);p<3&&(p=0);var g=[EC(zC(f[0]/h,1))+1,RC(zC(f[1]/h,1))-1],m=p/h*f[0];return{layout:a,pixelDimIndex:r,layoutBase:i[n[r]],layoutLength:s,axisBase:i[n[1-r]],axisLength:i[o[1-r]],axisExpandable:d,axisExpandWidth:h,axisCollapseWidth:p,axisExpandWindow:f,axisCount:u,winInnerIndices:g,axisExpandWindow0Pos:m}},_layoutAxes:function(){var t=this._rect,e=this._axesMap,i=this.dimensions,n=this._makeLayoutInfo(),o=n.layout;e.each(function(t){var e=[0,n.axisLength],i=t.inverse?1:0;t.setExtent(e[i],e[1-i])}),PC(i,function(e,i){var a=(n.axisExpandable?$d:Kd)(i,n),r={horizontal:{x:a.position,y:n.axisLength},vertical:{x:0,y:a.position}},s={horizontal:BC/2,vertical:0},l=[r[o].x+t.x,r[o].y+t.y],u=s[o],h=st();dt(h,h,u),ct(h,h,l),this._axesLayout[e]={position:l,rotation:u,transform:h,axisNameAvailableWidth:a.axisNameAvailableWidth,axisLabelShow:a.axisLabelShow,nameTruncateMaxWidth:a.nameTruncateMaxWidth,tickDirection:1,labelDirection:1}},this)},getAxis:function(t){return this._axesMap.get(t)},dataToPoint:function(t,e){return this.axisCoordToPoint(this._axesMap.get(e).dataToCoord(t),e)},eachActiveState:function(t,e,i,n){null==i&&(i=0),null==n&&(n=t.count());var o=this._axesMap,a=this.dimensions,r=[],s=[];d(a,function(e){r.push(t.mapDimension(e)),s.push(o.get(e).model)});for(var l=this.hasAxisBrushed(),u=i;uo*(1-h[0])?(l="jump",r=s-o*(1-h[2])):(r=s-o*h[1])>=0&&(r=s-o*(1-h[1]))<=0&&(r=0),(r*=e.axisExpandWidth/u)?kC(r,n,a,"all"):l="none";else{o=n[1]-n[0];(n=[OC(0,a[1]*s/o-o/2)])[1]=NC(a[1],n[0]+o),n[0]=n[1]-o}return{axisExpandWindow:n,behavior:l}}},Ca.register("parallel",{create:function(t,e){var i=[];return t.eachComponent("parallel",function(n,o){var a=new Yd(n,t,e);a.name="parallel_"+o,a.resize(n,e),n.coordinateSystem=a,a.model=n,i.push(a)}),t.eachSeries(function(e){if("parallel"===e.get("coordinateSystem")){var i=t.queryComponents({mainType:"parallel",index:e.get("parallelIndex"),id:e.get("parallelId")})[0];e.coordinateSystem=i.coordinateSystem}}),i}});var VC=uM.extend({type:"baseParallelAxis",axis:null,activeIntervals:[],getAreaSelectStyle:function(){return rb([["fill","color"],["lineWidth","borderWidth"],["stroke","borderColor"],["width","width"],["opacity","opacity"]])(this.getModel("areaSelectStyle"))},setActiveIntervals:function(t){var e=this.activeIntervals=i(t);if(e)for(var n=e.length-1;n>=0;n--)Co(e[n])},getActiveState:function(t){var e=this.activeIntervals;if(!e.length)return"normal";if(null==t||isNaN(t))return"inactive";if(1===e.length){var i=e[0];if(i[0]<=t&&t<=i[1])return"active"}else for(var n=0,o=e.length;n5)return;var n=this._model.coordinateSystem.getSlidedAxisExpandWindow([t.offsetX,t.offsetY]);"none"!==n.behavior&&this._dispatchExpand({axisExpandWindow:n.axisExpandWindow})}this._mouseDownPoint=null},mousemove:function(t){if(!this._mouseDownPoint&&Wf(this,"mousemove")){var e=this._model,i=e.coordinateSystem.getSlidedAxisExpandWindow([t.offsetX,t.offsetY]),n=i.behavior;"jump"===n&&this._throttledDispatchExpand.debounceNextCall(e.get("axisExpandDebounce")),this._throttledDispatchExpand("none"===n?null:{axisExpandWindow:i.axisExpandWindow,animation:"jump"===n&&null})}}};us(function(t){Zd(t),Ud(t)}),qM.extend({type:"series.parallel",dependencies:["parallel"],visualColorAccessPath:"lineStyle.color",getInitialData:function(t,e){var i=this.getSource();return Ff(i,this),Us(i,this)},getRawIndicesByActiveState:function(t){var e=this.coordinateSystem,i=this.getData(),n=[];return e.eachActiveState(i,function(e,o){t===e&&n.push(i.getRawIndex(o))}),n},defaultOption:{zlevel:0,z:2,coordinateSystem:"parallel",parallelIndex:0,label:{show:!1},inactiveOpacity:.05,activeOpacity:1,lineStyle:{width:1,opacity:.45,type:"solid"},emphasis:{label:{show:!1}},progressive:500,smooth:!1,animationEasing:"linear"}});var rL=.3,sL=(gr.extend({type:"parallel",init:function(){this._dataGroup=new rw,this.group.add(this._dataGroup),this._data,this._initialized},render:function(t,e,i,n){var o=this._dataGroup,a=t.getData(),r=this._data,s=t.coordinateSystem,l=s.dimensions,u=jf(t);if(a.diff(r).add(function(t){Yf(Xf(a,o,t,l,s),a,t,u)}).update(function(e,i){var o=r.getItemGraphicEl(i),h=Uf(a,e,l,s);a.setItemGraphicEl(e,o),fo(o,{shape:{points:h}},n&&!1===n.animation?null:t,e),Yf(o,a,e,u)}).remove(function(t){var e=r.getItemGraphicEl(t);o.remove(e)}).execute(),!this._initialized){this._initialized=!0;var h=Zf(s,t,function(){setTimeout(function(){o.removeClipPath()})});o.setClipPath(h)}this._data=a},incrementalPrepareRender:function(t,e,i){this._initialized=!0,this._data=null,this._dataGroup.removeAll()},incrementalRender:function(t,e,i){for(var n=e.getData(),o=e.coordinateSystem,a=o.dimensions,r=jf(e),s=t.start;sn&&(n=e)}),d(e,function(e){var o=new HA({type:"color",mappingMethod:"linear",dataExtent:[i,n],visual:t.get("color")}).mapValueToVisual(e.getLayout().value);e.setVisual("color",o);var a=e.getModel().get("itemStyle.color");null!=a&&e.setVisual("color",a)})}})});var hL={_baseAxisDim:null,getInitialData:function(t,e){var i,n,o=e.getComponent("xAxis",this.get("xAxisIndex")),a=e.getComponent("yAxis",this.get("yAxisIndex")),r=o.get("type"),s=a.get("type");"category"===r?(t.layout="horizontal",i=o.getOrdinalMeta(),n=!0):"category"===s?(t.layout="vertical",i=a.getOrdinalMeta(),n=!0):t.layout=t.layout||"horizontal";var l=["x","y"],u="horizontal"===t.layout?0:1,h=this._baseAxisDim=l[u],c=l[1-u],f=[o,a],p=f[u].get("type"),g=f[1-u].get("type"),m=t.data;if(m&&n){var v=[];d(m,function(t,e){var i;t.value&&y(t.value)?(i=t.value.slice(),t.value.unshift(e)):y(t)?(i=t.slice(),t.unshift(e)):i=t,v.push(i)}),t.data=v}var x=this.defaultValueDimensions;return XD(this,{coordDimensions:[{name:h,type:Ts(p),ordinalMeta:i,otherDims:{tooltip:!1,itemName:0},dimsDef:["base"]},{name:c,type:Ts(g),dimsDef:x.slice()}],dimensionsCount:x.length+1})},getBaseAxis:function(){var t=this._baseAxisDim;return this.ecModel.getComponent(t+"Axis",this.get(t+"AxisIndex")).axis}};h(qM.extend({type:"series.boxplot",dependencies:["xAxis","yAxis","grid"],defaultValueDimensions:[{name:"min",defaultTooltip:!0},{name:"Q1",defaultTooltip:!0},{name:"median",defaultTooltip:!0},{name:"Q3",defaultTooltip:!0},{name:"max",defaultTooltip:!0}],dimensions:null,defaultOption:{zlevel:0,z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,hoverAnimation:!0,layout:null,boxWidth:[7,50],itemStyle:{color:"#fff",borderWidth:1},emphasis:{itemStyle:{borderWidth:2,shadowBlur:5,shadowOffsetX:2,shadowOffsetY:2,shadowColor:"rgba(0,0,0,0.4)"}},animationEasing:"elasticOut",animationDuration:800}}),hL,!0);var cL=["itemStyle"],dL=["emphasis","itemStyle"],fL=(gr.extend({type:"boxplot",render:function(t,e,i){var n=t.getData(),o=this.group,a=this._data;this._data||o.removeAll();var r="horizontal"===t.get("layout")?1:0;n.diff(a).add(function(t){if(n.hasValue(t)){var e=xp(n.getItemLayout(t),n,t,r,!0);n.setItemGraphicEl(t,e),o.add(e)}}).update(function(t,e){var i=a.getItemGraphicEl(e);if(n.hasValue(t)){var s=n.getItemLayout(t);i?_p(s,i,n,t):i=xp(s,n,t,r),o.add(i),n.setItemGraphicEl(t,i)}else o.remove(i)}).remove(function(t){var e=a.getItemGraphicEl(t);e&&o.remove(e)}).execute(),this._data=n},remove:function(t){var e=this.group,i=this._data;this._data=null,i&&i.eachItemGraphicEl(function(t){t&&e.remove(t)})},dispose:B}),In.extend({type:"boxplotBoxPath",shape:{},buildPath:function(t,e){var i=e.points,n=0;for(t.moveTo(i[n][0],i[n][1]),n++;n<4;n++)t.lineTo(i[n][0],i[n][1]);for(t.closePath();n0?SL:ML)}function n(t,e){return e.get(t>0?wL:bL)}var o=t.getData(),a=t.pipelineContext.large;if(o.setVisual({legendSymbol:"roundRect",colorP:i(1,t),colorN:i(-1,t),borderColorP:n(1,t),borderColorN:n(-1,t)}),!e.isSeriesFiltered(t))return!a&&{progress:function(t,e){for(var o;null!=(o=t.next());){var a=e.getItemModel(o),r=e.getItemLayout(o).sign;e.setItemVisual(o,{color:i(r,a),borderColor:n(r,a)})}}}}},TL="undefined"!=typeof Float32Array?Float32Array:Array,DL={seriesType:"candlestick",plan:JM(),reset:function(t){var e=t.coordinateSystem,i=t.getData(),n=kp(t,i),o=0,a=1,r=["x","y"],s=i.mapDimension(r[o]),l=i.mapDimension(r[a],!0),u=l[0],h=l[1],c=l[2],d=l[3];if(i.setLayout({candleWidth:n,isSimpleBox:n<=1.3}),!(null==s||l.length<4))return{progress:t.pipelineContext.large?function(t,i){for(var n,r,l=new TL(5*t.count),f=0,p=[],g=[];null!=(r=t.next());){var m=i.get(s,r),v=i.get(u,r),y=i.get(h,r),x=i.get(c,r),_=i.get(d,r);isNaN(m)||isNaN(x)||isNaN(_)?(l[f++]=NaN,f+=4):(l[f++]=Lp(i,r,v,y,h),p[o]=m,p[a]=x,n=e.dataToPoint(p,null,g),l[f++]=n?n[0]:NaN,l[f++]=n?n[1]:NaN,p[a]=_,n=e.dataToPoint(p,null,g),l[f++]=n?n[1]:NaN)}i.setLayout("largePoints",l)}:function(t,i){function r(t,i){var n=[];return n[o]=i,n[a]=t,isNaN(i)||isNaN(t)?[NaN,NaN]:e.dataToPoint(n)}function l(t,e,i){var a=e.slice(),r=e.slice();a[o]=Fn(a[o]+n/2,1,!1),r[o]=Fn(r[o]-n/2,1,!0),i?t.push(a,r):t.push(r,a)}function f(t){return t[o]=Fn(t[o],1),t}for(var p;null!=(p=t.next());){var g=i.get(s,p),m=i.get(u,p),v=i.get(h,p),y=i.get(c,p),x=i.get(d,p),_=Math.min(m,v),w=Math.max(m,v),b=r(_,g),S=r(w,g),M=r(y,g),I=r(x,g),T=[];l(T,S,0),l(T,b,1),T.push(f(I),f(S),f(M),f(b)),i.setItemLayout(p,{sign:Lp(i,p,m,v,h),initBaseline:m>v?S[a]:b[a],ends:T,brushRect:function(t,e,i){var s=r(t,i),l=r(e,i);return s[o]-=n/2,l[o]-=n/2,{x:s[0],y:s[1],width:a?n:l[0]-s[0],height:a?l[1]-s[1]:n}}(y,x,g)})}}}}};us(function(t){t&&y(t.series)&&d(t.series,function(t){w(t)&&"k"===t.type&&(t.type="candlestick")})}),ps(IL),fs(DL),qM.extend({type:"series.effectScatter",dependencies:["grid","polar"],getInitialData:function(t,e){return Us(this.getSource(),this)},brushSelector:"point",defaultOption:{coordinateSystem:"cartesian2d",zlevel:0,z:2,legendHoverLink:!0,effectType:"ripple",progressive:0,showEffectOn:"render",rippleEffect:{period:4,scale:2.5,brushType:"fill"},symbolSize:10}});var AL=Op.prototype;AL.stopEffectAnimation=function(){this.childAt(1).removeAll()},AL.startEffectAnimation=function(t){for(var e=t.symbolType,i=t.color,n=this.childAt(1),o=0;o<3;o++){var a=Il(e,-1,-1,2,2,i);a.attr({style:{strokeNoScale:!0},z2:99,silent:!0,scale:[.5,.5]});var r=-o/3*t.period+t.effectOffset;a.animate("",!0).when(t.period,{scale:[t.rippleScale/2,t.rippleScale/2]}).delay(r).start(),a.animateStyle(!0).when(t.period,{opacity:0}).delay(r).start(),n.add(a)}Np(n,t)},AL.updateEffectAnimation=function(t){for(var e=this._effectCfg,i=this.childAt(1),n=["symbolType","period","rippleScale"],o=0;o "))},preventIncremental:function(){return!!this.get("effect.show")},getProgressive:function(){var t=this.option.progressive;return null==t?this.option.large?1e4:this.get("progressive"):t},getProgressiveThreshold:function(){var t=this.option.progressiveThreshold;return null==t?this.option.large?2e4:this.get("progressiveThreshold"):t},defaultOption:{coordinateSystem:"geo",zlevel:0,z:2,legendHoverLink:!0,hoverAnimation:!0,xAxisIndex:0,yAxisIndex:0,symbol:["none","none"],symbolSize:[10,10],geoIndex:0,effect:{show:!1,period:4,constantSpeed:0,symbol:"circle",symbolSize:3,loop:!0,trailLength:.2},large:!1,largeThreshold:2e3,polyline:!1,label:{show:!1,position:"end"},lineStyle:{opacity:.5}}}),PL=Rp.prototype;PL.createLine=function(t,e,i){return new wd(t,e,i)},PL._updateEffectSymbol=function(t,e){var i=t.getItemModel(e).getModel("effect"),n=i.get("symbolSize"),o=i.get("symbol");y(n)||(n=[n,n]);var a=i.get("color")||t.getItemVisual(e,"color"),r=this.childAt(1);this._symbolType!==o&&(this.remove(r),(r=Il(o,-.5,-.5,1,1,a)).z2=100,r.culling=!0,this.add(r)),r&&(r.setStyle("shadowColor",a),r.setStyle(i.getItemStyle(["color"])),r.attr("scale",n),r.setColor(a),r.attr("scale",n),this._symbolType=o,this._updateEffectAnimation(t,i,e))},PL._updateEffectAnimation=function(t,e,i){var n=this.childAt(1);if(n){var o=this,a=t.getItemLayout(i),r=1e3*e.get("period"),s=e.get("loop"),l=e.get("constantSpeed"),u=T(e.get("delay"),function(e){return e/t.count()*r/3}),h="function"==typeof u;if(n.ignore=!0,this.updateAnimationPoints(n,a),l>0&&(r=this.getLineLength(n)/l*1e3),r!==this._period||s!==this._loop){n.stopAnimation();var c=u;h&&(c=u(i)),n.__t>0&&(c=-r*n.__t),n.__t=0;var d=n.animate("",s).when(r,{__t:1}).delay(c).during(function(){o.updateSymbolPosition(n)});s||d.done(function(){o.remove(n)}),d.start()}this._period=r,this._loop=s}},PL.getLineLength=function(t){return b_(t.__p1,t.__cp1)+b_(t.__cp1,t.__p2)},PL.updateAnimationPoints=function(t,e){t.__p1=e[0],t.__p2=e[1],t.__cp1=e[2]||[(e[0][0]+e[1][0])/2,(e[0][1]+e[1][1])/2]},PL.updateData=function(t,e,i){this.childAt(0).updateData(t,e,i),this._updateEffectSymbol(t,e)},PL.updateSymbolPosition=function(t){var e=t.__p1,i=t.__p2,n=t.__cp1,o=t.__t,a=t.position,r=Qi,s=tn;a[0]=r(e[0],n[0],i[0],o),a[1]=r(e[1],n[1],i[1],o);var l=s(e[0],n[0],i[0],o),u=s(e[1],n[1],i[1],o);t.rotation=-Math.atan2(u,l)-Math.PI/2,t.ignore=!1},PL.updateLayout=function(t,e){this.childAt(0).updateLayout(t,e);var i=t.getItemModel(e).getModel("effect");this._updateEffectAnimation(t,i,e)},u(Rp,rw);var NL=zp.prototype;NL._createPolyline=function(t,e,i){var n=t.getItemLayout(e),o=new wS({shape:{points:n}});this.add(o),this._updateCommonStl(t,e,i)},NL.updateData=function(t,e,i){var n=t.hostModel;fo(this.childAt(0),{shape:{points:t.getItemLayout(e)}},n,e),this._updateCommonStl(t,e,i)},NL._updateCommonStl=function(t,e,i){var n=this.childAt(0),o=t.getItemModel(e),a=t.getItemVisual(e,"color"),s=i&&i.lineStyle,l=i&&i.hoverLineStyle;i&&!t.hasItemOption||(s=o.getModel("lineStyle").getLineStyle(),l=o.getModel("emphasis.lineStyle").getLineStyle()),n.useStyle(r({strokeNoScale:!0,fill:"none",stroke:a},s)),n.hoverStyle=l,eo(this)},NL.updateLayout=function(t,e){this.childAt(0).setShape("points",t.getItemLayout(e))},u(zp,rw);var OL=Bp.prototype;OL.createLine=function(t,e,i){return new zp(t,e,i)},OL.updateAnimationPoints=function(t,e){this._points=e;for(var i=[0],n=0,o=1;o=0&&!(n[r]<=e);r--);r=Math.min(r,o-2)}else{for(var r=a;re);r++);r=Math.min(r-1,o-2)}J(t.position,i[r],i[r+1],(e-n[r])/(n[r+1]-n[r]));var s=i[r+1][0]-i[r][0],l=i[r+1][1]-i[r][1];t.rotation=-Math.atan2(l,s)-Math.PI/2,this._lastFrame=r,this._lastFramePercent=e,t.ignore=!1}},u(Bp,Rp);var EL=En({shape:{polyline:!1,curveness:0,segs:[]},buildPath:function(t,e){var i=e.segs,n=e.curveness;if(e.polyline)for(r=0;r0){t.moveTo(i[r++],i[r++]);for(var a=1;a0){var c=(s+u)/2-(l-h)*n,d=(l+h)/2-(u-s)*n;t.quadraticCurveTo(c,d,u,h)}else t.lineTo(u,h)}},findDataIndex:function(t,e){var i=this.shape,n=i.segs,o=i.curveness;if(i.polyline)for(var a=0,r=0;r0)for(var l=n[r++],u=n[r++],h=1;h0){if(fn(l,u,(l+c)/2-(u-d)*o,(u+d)/2-(c-l)*o,c,d))return a}else if(cn(l,u,c,d))return a;a++}return-1}}),RL=Vp.prototype;RL.isPersistent=function(){return!this._incremental},RL.updateData=function(t){this.group.removeAll();var e=new EL({rectHover:!0,cursor:"default"});e.setShape({segs:t.getLayout("linesPoints")}),this._setCommon(e,t),this.group.add(e),this._incremental=null},RL.incrementalPrepareUpdate=function(t){this.group.removeAll(),this._clearIncremental(),t.count()>5e5?(this._incremental||(this._incremental=new On({silent:!0})),this.group.add(this._incremental)):this._incremental=null},RL.incrementalUpdate=function(t,e){var i=new EL;i.setShape({segs:e.getLayout("linesPoints")}),this._setCommon(i,e,!!this._incremental),this._incremental?this._incremental.addDisplayable(i,!0):(i.rectHover=!0,i.cursor="default",i.__startIndex=t.start,this.group.add(i))},RL.remove=function(){this._clearIncremental(),this._incremental=null,this.group.removeAll()},RL._setCommon=function(t,e,i){var n=e.hostModel;t.setShape({polyline:n.get("polyline"),curveness:n.get("lineStyle.curveness")}),t.useStyle(n.getModel("lineStyle").getLineStyle()),t.style.strokeNoScale=!0;var o=e.getVisual("color");o&&t.setStyle("stroke",o),t.setStyle("fill"),i||(t.seriesIndex=n.seriesIndex,t.on("mousemove",function(e){t.dataIndex=null;var i=t.findDataIndex(e.offsetX,e.offsetY);i>0&&(t.dataIndex=i+t.__startIndex)}))},RL._clearIncremental=function(){var t=this._incremental;t&&t.clearDisplaybles()};var zL={seriesType:"lines",plan:JM(),reset:function(t){var e=t.coordinateSystem,i=t.get("polyline"),n=t.pipelineContext.large;return{progress:function(o,a){var r=[];if(n){var s,l=o.end-o.start;if(i){for(var u=0,h=o.start;h0){var I=a(v)?s:l;v>0&&(v=v*S+b),x[_++]=I[M],x[_++]=I[M+1],x[_++]=I[M+2],x[_++]=I[M+3]*v*256}else _+=4}return c.putImageData(y,0,0),h},_getBrush:function(){var t=this._brushCanvas||(this._brushCanvas=g_()),e=this.pointSize+this.blurSize,i=2*e;t.width=i,t.height=i;var n=t.getContext("2d");return n.clearRect(0,0,i,i),n.shadowOffsetX=i,n.shadowBlur=this.blurSize,n.shadowColor="#000",n.beginPath(),n.arc(-e,e,this.pointSize,0,2*Math.PI,!0),n.closePath(),n.fill(),t},_getGradient:function(t,e,i){for(var n=this._gradientPixels,o=n[i]||(n[i]=new Uint8ClampedArray(1024)),a=[0,0,0,0],r=0,s=0;s<256;s++)e[i](s/255,!0,a),o[r++]=a[0],o[r++]=a[1],o[r++]=a[2],o[r++]=a[3];return o}},_s({type:"heatmap",render:function(t,e,i){var n;e.eachComponent("visualMap",function(e){e.eachTargetSeries(function(i){i===t&&(n=e)})}),this.group.removeAll(),this._incrementalDisplayable=null;var o=t.coordinateSystem;"cartesian2d"===o.type||"calendar"===o.type?this._renderOnCartesianAndCalendar(t,i,0,t.getData().count()):Zp(o)&&this._renderOnGeo(o,t,n,i)},incrementalPrepareRender:function(t,e,i){this.group.removeAll()},incrementalRender:function(t,e,i,n){e.coordinateSystem&&this._renderOnCartesianAndCalendar(e,n,t.start,t.end,!0)},_renderOnCartesianAndCalendar:function(t,e,i,n,o){var r,s,l=t.coordinateSystem;if("cartesian2d"===l.type){var u=l.getAxis("x"),h=l.getAxis("y");r=u.getBandWidth(),s=h.getBandWidth()}for(var c=this.group,d=t.getData(),f=t.getModel("itemStyle").getItemStyle(["color"]),p=t.getModel("emphasis.itemStyle").getItemStyle(),g=t.getModel("label"),m=t.getModel("emphasis.label"),v=l.type,y="cartesian2d"===v?[d.mapDimension("x"),d.mapDimension("y"),d.mapDimension("value")]:[d.mapDimension("time"),d.mapDimension("value")],x=i;x=e.y&&t[1]<=e.y+e.height:i.contain(i.toLocalCoord(t[1]))&&t[0]>=e.y&&t[0]<=e.y+e.height},pointToData:function(t){var e=this.getAxis();return[e.coordToData(e.toLocalCoord(t["horizontal"===e.orient?0:1]))]},dataToPoint:function(t){var e=this.getAxis(),i=this.getRect(),n=[],o="horizontal"===e.orient?0:1;return t instanceof Array&&(t=t[0]),n[o]=e.toGlobalCoord(e.dataToCoord(+t)),n[1-o]=0===o?i.y+i.height/2:i.x+i.width/2,n}},Ca.register("single",{create:function(t,e){var i=[];return t.eachComponent("singleAxis",function(n,o){var a=new pg(n,t,e);a.name="single_"+o,a.resize(n,e),n.coordinateSystem=a,i.push(a)}),t.eachSeries(function(e){if("singleAxis"===e.get("coordinateSystem")){var i=t.queryComponents({mainType:"singleAxis",index:e.get("singleAxisIndex"),id:e.get("singleAxisId")})[0];e.coordinateSystem=i&&i.coordinateSystem}}),i},dimensions:pg.prototype.dimensions});var UL=["axisLine","axisTickLabel","axisName"],XL=OD.extend({type:"singleAxis",axisPointerClass:"SingleAxisPointer",render:function(t,e,i,n){var o=this.group;o.removeAll();var a=gg(t),r=new CD(t,a);d(UL,r.add,r),o.add(r.getGroup()),t.get("splitLine.show")&&this._splitLine(t),XL.superCall(this,"render",t,e,i,n)},_splitLine:function(t){var e=t.axis;if(!e.scale.isBlank()){var i=t.getModel("splitLine"),n=i.getModel("lineStyle"),o=n.get("width"),a=n.get("color");a=a instanceof Array?a:[a];for(var r=t.coordinateSystem.getRect(),s=e.isHorizontal(),l=[],u=0,h=e.getTicksCoords({tickModel:i}),c=[],d=[],f=0;f=0)&&i({type:"updateAxisPointer",currTrigger:t,x:e&&e.offsetX,y:e&&e.offsetY})})},remove:function(t,e){Pg(e.getZr(),"axisPointer"),ek.superApply(this._model,"remove",arguments)},dispose:function(t,e){Pg("axisPointer",e),ek.superApply(this._model,"dispose",arguments)}}),ik=Ni(),nk=i,ok=m;(Ng.prototype={_group:null,_lastGraphicKey:null,_handle:null,_dragging:!1,_lastValue:null,_lastStatus:null,_payloadInfo:null,animationThreshold:15,render:function(t,e,i,n){var o=e.get("value"),a=e.get("status");if(this._axisModel=t,this._axisPointerModel=e,this._api=i,n||this._lastValue!==o||this._lastStatus!==a){this._lastValue=o,this._lastStatus=a;var r=this._group,s=this._handle;if(!a||"hide"===a)return r&&r.hide(),void(s&&s.hide());r&&r.show(),s&&s.show();var l={};this.makeElOption(l,o,t,e,i);var u=l.graphicKey;u!==this._lastGraphicKey&&this.clear(i),this._lastGraphicKey=u;var h=this._moveAnimation=this.determineAnimation(t,e);if(r){var c=v(Og,e,h);this.updatePointerEl(r,l,c,e),this.updateLabelEl(r,l,c,e)}else r=this._group=new rw,this.createPointerEl(r,l,t,e),this.createLabelEl(r,l,t,e),i.getZr().add(r);Bg(r,e,!0),this._renderHandle(o)}},remove:function(t){this.clear(t)},dispose:function(t){this.clear(t)},determineAnimation:function(t,e){var i=e.get("animation"),n=t.axis,o="category"===n.type,a=e.get("snap");if(!a&&!o)return!1;if("auto"===i||null==i){var r=this.animationThreshold;if(o&&n.getBandWidth()>r)return!0;if(a){var s=Yu(t).seriesDataCount,l=n.getExtent();return Math.abs(l[0]-l[1])/s>r}return!1}return!0===i},makeElOption:function(t,e,i,n,o){},createPointerEl:function(t,e,i,n){var o=e.pointer;if(o){var a=ik(t).pointerEl=new zS[o.type](nk(e.pointer));t.add(a)}},createLabelEl:function(t,e,i,n){if(e.label){var o=ik(t).labelEl=new bS(nk(e.label));t.add(o),Rg(o,n)}},updatePointerEl:function(t,e,i){var n=ik(t).pointerEl;n&&(n.setStyle(e.pointer.style),i(n,{shape:e.pointer.shape}))},updateLabelEl:function(t,e,i,n){var o=ik(t).labelEl;o&&(o.setStyle(e.label.style),i(o,{shape:e.label.shape,position:e.label.position}),Rg(o,n))},_renderHandle:function(t){if(!this._dragging&&this.updateHandleTransform){var e=this._axisPointerModel,i=this._api.getZr(),n=this._handle,o=e.getModel("handle"),a=e.get("status");if(!o.get("show")||!a||"hide"===a)return n&&i.remove(n),void(this._handle=null);var r;this._handle||(r=!0,n=this._handle=_o(o.get("icon"),{cursor:"move",draggable:!0,onmousemove:function(t){Rw(t.event)},onmousedown:ok(this._onHandleDragMove,this,0,0),drift:ok(this._onHandleDragMove,this),ondragend:ok(this._onHandleDragEnd,this)}),i.add(n)),Bg(n,e,!1);var s=["color","borderColor","borderWidth","opacity","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY"];n.setStyle(o.getItemStyle(null,s));var l=o.get("size");y(l)||(l=[l,l]),n.attr("scale",[l[0]/2,l[1]/2]),wr(this,"_doDispatchAxisPointer",o.get("throttle")||0,"fixRate"),this._moveHandleToValue(t,r)}},_moveHandleToValue:function(t,e){Og(this._axisPointerModel,!e&&this._moveAnimation,this._handle,zg(this.getHandleTransform(t,this._axisModel,this._axisPointerModel)))},_onHandleDragMove:function(t,e){var i=this._handle;if(i){this._dragging=!0;var n=this.updateHandleTransform(zg(i),[t,e],this._axisModel,this._axisPointerModel);this._payloadInfo=n,i.stopAnimation(),i.attr(zg(n)),ik(i).lastProp=null,this._doDispatchAxisPointer()}},_doDispatchAxisPointer:function(){if(this._handle){var t=this._payloadInfo,e=this._axisModel;this._api.dispatchAction({type:"updateAxisPointer",x:t.cursorPoint[0],y:t.cursorPoint[1],tooltipOption:t.tooltipOption,axesInfo:[{axisDim:e.axis.dim,axisIndex:e.componentIndex}]})}},_onHandleDragEnd:function(t){if(this._dragging=!1,this._handle){var e=this._axisPointerModel.get("value");this._moveHandleToValue(e),this._api.dispatchAction({type:"hideTip"})}},getHandleTransform:null,updateHandleTransform:null,clear:function(t){this._lastValue=null,this._lastStatus=null;var e=t.getZr(),i=this._group,n=this._handle;e&&i&&(this._lastGraphicKey=null,i&&e.remove(i),n&&e.remove(n),this._group=null,this._handle=null,this._payloadInfo=null)},doClear:function(){},buildLabel:function(t,e,i){return i=i||0,{x:t[i],y:t[1-i],width:e[i],height:e[1-i]}}}).constructor=Ng,Gi(Ng);var ak=Ng.extend({makeElOption:function(t,e,i,n,o){var a=i.axis,r=a.grid,s=n.get("type"),l=Yg(r,a).getOtherAxis(a).getGlobalExtent(),u=a.toGlobalCoord(a.dataToCoord(e,!0));if(s&&"none"!==s){var h=Vg(n),c=rk[s](a,u,l,h);c.style=h,t.graphicKey=c.type,t.pointer=c}Zg(e,t,th(r.model,i),i,n,o)},getHandleTransform:function(t,e,i){var n=th(e.axis.grid.model,e,{labelInside:!1});return n.labelMargin=i.get("handle.margin"),{position:Hg(e.axis,t,n),rotation:n.rotation+(n.labelDirection<0?Math.PI:0)}},updateHandleTransform:function(t,e,i,n){var o=i.axis,a=o.grid,r=o.getGlobalExtent(!0),s=Yg(a,o).getOtherAxis(o).getGlobalExtent(),l="x"===o.dim?0:1,u=t.position;u[l]+=e[l],u[l]=Math.min(r[1],u[l]),u[l]=Math.max(r[0],u[l]);var h=(s[1]+s[0])/2,c=[h,h];c[l]=u[l];var d=[{verticalAlign:"middle"},{align:"center"}];return{position:u,rotation:t.rotation,cursorPoint:c,tooltipOption:d[l]}}}),rk={line:function(t,e,i,n){var o=Ug([e,i[0]],[e,i[1]],qg(t));return Gn({shape:o,style:n}),{type:"Line",shape:o}},shadow:function(t,e,i,n){var o=Math.max(1,t.getBandWidth()),a=i[1]-i[0];return{type:"Rect",shape:Xg([e-o/2,i[0]],[o,a],qg(t))}}};OD.registerAxisPointerClass("CartesianAxisPointer",ak),us(function(t){if(t){(!t.axisPointer||0===t.axisPointer.length)&&(t.axisPointer={});var e=t.axisPointer.link;e&&!y(e)&&(t.axisPointer.link=[e])}}),hs(CI.PROCESSOR.STATISTIC,function(t,e){t.getComponent("axisPointer").coordSysAxesInfo=Wu(t,e)}),cs({type:"updateAxisPointer",event:"updateAxisPointer",update:":updateAxisPointer"},function(t,e,i){var n=t.currTrigger,o=[t.x,t.y],a=t,r=t.dispatchAction||m(i.dispatchAction,i),s=e.getComponent("axisPointer").coordSysAxesInfo;if(s){Ig(o)&&(o=qL({seriesIndex:a.seriesIndex,dataIndex:a.dataIndex},e).point);var l=Ig(o),u=a.axesInfo,h=s.axesInfo,c="leave"===n||Ig(o),d={},f={},p={list:[],map:{}},g={showPointer:$L(yg,f),showTooltip:$L(xg,p)};KL(s.coordSysMap,function(t,e){var i=l||t.containPoint(o);KL(s.coordSysAxesInfo[e],function(t,e){var n=t.axis,a=Sg(u,t);if(!c&&i&&(!u||a)){var r=a&&a.value;null!=r||l||(r=n.pointToData(o)),null!=r&&mg(t,r,g,!1,d)}})});var v={};return KL(h,function(t,e){var i=t.linkGroup;i&&!f[e]&&KL(i.axesInfo,function(e,n){var o=f[n];if(e!==t&&o){var a=o.value;i.mapper&&(a=t.axis.scale.parse(i.mapper(a,Mg(e),Mg(t)))),v[t.key]=a}})}),KL(v,function(t,e){mg(h[e],t,g,!0,d)}),_g(f,h,d),wg(p,o,t,r),bg(h,0,i),d}});var sk=["x","y"],lk=["width","height"],uk=Ng.extend({makeElOption:function(t,e,i,n,o){var a=i.axis,r=a.coordinateSystem,s=$g(r,1-Kg(a)),l=r.dataToPoint(e)[0],u=n.get("type");if(u&&"none"!==u){var h=Vg(n),c=hk[u](a,l,s,h);c.style=h,t.graphicKey=c.type,t.pointer=c}Zg(e,t,gg(i),i,n,o)},getHandleTransform:function(t,e,i){var n=gg(e,{labelInside:!1});return n.labelMargin=i.get("handle.margin"),{position:Hg(e.axis,t,n),rotation:n.rotation+(n.labelDirection<0?Math.PI:0)}},updateHandleTransform:function(t,e,i,n){var o=i.axis,a=o.coordinateSystem,r=Kg(o),s=$g(a,r),l=t.position;l[r]+=e[r],l[r]=Math.min(s[1],l[r]),l[r]=Math.max(s[0],l[r]);var u=$g(a,1-r),h=(u[1]+u[0])/2,c=[h,h];return c[r]=l[r],{position:l,rotation:t.rotation,cursorPoint:c,tooltipOption:{verticalAlign:"middle"}}}}),hk={line:function(t,e,i,n){var o=Ug([e,i[0]],[e,i[1]],Kg(t));return Gn({shape:o,style:n}),{type:"Line",shape:o}},shadow:function(t,e,i,n){var o=t.getBandWidth(),a=i[1]-i[0];return{type:"Rect",shape:Xg([e-o/2,i[0]],[o,a],Kg(t))}}};OD.registerAxisPointerClass("SingleAxisPointer",uk),ys({type:"single"});var ck=qM.extend({type:"series.themeRiver",dependencies:["singleAxis"],nameMap:null,init:function(t){ck.superApply(this,"init",arguments),this.legendDataProvider=function(){return this.getRawData()}},fixData:function(t){for(var e=t.length,i=f($f().key(function(t){return t[2]}).entries(t),function(t){return{name:t.key,dataList:t.values}}),n=i.length,o=-1,a=-1,r=0;ro&&(o=s,a=r)}for(var l=0;lMath.PI/2?"right":"left"):x&&"center"!==x?"left"===x?(f=u.r0+y,p>Math.PI/2&&(x="right")):"right"===x&&(f=u.r-y,p>Math.PI/2&&(x="left")):(f=(u.r+u.r0)/2,x="center"),d.attr("style",{text:l,textAlign:x,textVerticalAlign:n("verticalAlign")||"middle",opacity:n("opacity")});var _=f*g+u.cx,w=f*m+u.cy;d.attr("position",[_,w]);var b=n("rotate"),S=0;"radial"===b?(S=-p)<-Math.PI/2&&(S+=Math.PI):"tangential"===b?(S=Math.PI/2-p)>Math.PI/2?S-=Math.PI:S<-Math.PI/2&&(S+=Math.PI):"number"==typeof b&&(S=b*Math.PI/180),d.attr("rotation",S)},gk._initEvents=function(t,e,i,n){t.off("mouseover").off("mouseout").off("emphasis").off("normal");var o=this,a=function(){o.onEmphasis(n)},r=function(){o.onNormal()};i.isAnimationEnabled()&&t.on("mouseover",a).on("mouseout",r).on("emphasis",a).on("normal",r).on("downplay",function(){o.onDownplay()}).on("highlight",function(){o.onHighlight()})},u(im,rw);gr.extend({type:"sunburst",init:function(){},render:function(t,e,i,n){function o(i,n){if(c||!i||i.getValue()||(i=null),i!==l&&n!==l)if(n&&n.piece)i?(n.piece.updateData(!1,i,"normal",t,e),s.setItemGraphicEl(i.dataIndex,n.piece)):a(n);else if(i){var o=new im(i,t,e);h.add(o),s.setItemGraphicEl(i.dataIndex,o)}}function a(t){t&&t.piece&&(h.remove(t.piece),t.piece=null)}var r=this;this.seriesModel=t,this.api=i,this.ecModel=e;var s=t.getData(),l=s.tree.root,u=t.getViewRoot(),h=this.group,c=t.get("renderLabelForZeroData"),d=[];u.eachNode(function(t){d.push(t)});var f=this._oldChildren||[];if(function(t,e){function i(t){return t.getId()}function n(i,n){o(null==i?null:t[i],null==n?null:e[n])}0===t.length&&0===e.length||new Ss(e,t,i,i).add(n).update(n).remove(v(n,null)).execute()}(d,f),function(i,n){if(n.depth>0){r.virtualPiece?r.virtualPiece.updateData(!1,i,"normal",t,e):(r.virtualPiece=new im(i,t,e),h.add(r.virtualPiece)),n.piece._onclickEvent&&n.piece.off("click",n.piece._onclickEvent);var o=function(t){r._rootToNode(n.parentNode)};n.piece._onclickEvent=o,r.virtualPiece.on("click",o)}else r.virtualPiece&&(h.remove(r.virtualPiece),r.virtualPiece=null)}(l,u),n&&n.highlight&&n.highlight.piece){var p=t.getShallow("highlightPolicy");n.highlight.piece.onEmphasis(p)}else if(n&&n.unhighlight){var g=this.virtualPiece;!g&&l.children.length&&(g=l.children[0].piece),g&&g.onNormal()}this._initEvents(),this._oldChildren=d},dispose:function(){},_initEvents:function(){var t=this,e=function(e){var i=!1;t.seriesModel.getViewRoot().eachNode(function(n){if(!i&&n.piece&&n.piece.childAt(0)===e.target){var o=n.getModel().get("nodeClick");if("rootToNode"===o)t._rootToNode(n);else if("link"===o){var a=n.getModel(),r=a.get("link");if(r){var s=a.get("target",!0)||"_blank";window.open(r,s)}}i=!0}})};this.group._onclickEvent&&this.group.off("click",this.group._onclickEvent),this.group.on("click",e),this.group._onclickEvent=e},_rootToNode:function(t){t!==this.seriesModel.getViewRoot()&&this.api.dispatchAction({type:"sunburstRootToNode",from:this.uid,seriesId:this.seriesModel.id,targetNode:t})},containPoint:function(t,e){var i=e.getData().getItemLayout(0);if(i){var n=t[0]-i.cx,o=t[1]-i.cy,a=Math.sqrt(n*n+o*o);return a<=i.r&&a>=i.r0}}});var mk="sunburstRootToNode";cs({type:mk,update:"updateView"},function(t,e){e.eachComponent({mainType:"series",subType:"sunburst",query:t},function(e,i){var n=Mc(t,[mk],e);if(n){var o=e.getViewRoot();o&&(t.direction=Tc(o,n.node)?"rollUp":"drillDown"),e.resetViewRoot(n.node)}})});var vk="sunburstHighlight";cs({type:vk,update:"updateView"},function(t,e){e.eachComponent({mainType:"series",subType:"sunburst",query:t},function(e,i){var n=Mc(t,[vk],e);n&&(t.highlight=n.node)})});cs({type:"sunburstUnhighlight",update:"updateView"},function(t,e){e.eachComponent({mainType:"series",subType:"sunburst",query:t},function(e,i){t.unhighlight=!0})});var yk=Math.PI/180;ps(v($D,"sunburst")),fs(v(function(t,e,i,n){e.eachSeriesByType(t,function(t){var e=t.get("center"),n=t.get("radius");y(n)||(n=[0,n]),y(e)||(e=[e,e]);var o=i.getWidth(),a=i.getHeight(),r=Math.min(o,a),s=Do(e[0],o),l=Do(e[1],a),u=Do(n[0],r/2),h=Do(n[1],r/2),c=-t.get("startAngle")*yk,f=t.get("minAngle")*yk,p=t.getData().tree.root,g=t.getViewRoot(),m=g.depth,v=t.get("sort");null!=v&&rm(g,v);var x=0;d(g.children,function(t){!isNaN(t.getValue())&&x++});var _=g.getValue(),w=Math.PI/(_||x)*2,b=g.depth>0,S=g.height-(b?-1:1),M=(h-u)/(S||1),I=t.get("clockwise"),T=t.get("stillShowZeroSum"),D=I?1:-1,A=function(t,e){if(t){var i=e;if(t!==p){var n=t.getValue(),o=0===_&&T?w:n*w;on[1]&&n.reverse(),{coordSys:{type:"polar",cx:t.cx,cy:t.cy,r:n[1],r0:n[0]},api:{coord:m(function(n){var o=e.dataToRadius(n[0]),a=i.dataToAngle(n[1]),r=t.coordToPoint([o,a]);return r.push(o,a*Math.PI/180),r}),size:m(cm,t)}}},calendar:function(t){var e=t.getRect(),i=t.getRangeInfo();return{coordSys:{type:"calendar",x:e.x,y:e.y,width:e.width,height:e.height,cellWidth:t.getCellWidth(),cellHeight:t.getCellHeight(),rangeInfo:{start:i.start,end:i.end,weeks:i.weeks,dayCount:i.allDay}},api:{coord:function(e,i){return t.dataToPoint(e,i)}}}}};xs({type:"series.custom",dependencies:["grid","polar","geo","singleAxis","calendar"],defaultOption:{coordinateSystem:"cartesian2d",zlevel:0,z:2,legendHoverLink:!0},getInitialData:function(t,e){return Us(this.getSource(),this)}}),_s({type:"custom",_data:null,render:function(t,e,i){var n=this._data,o=t.getData(),a=this.group,r=gm(t,o,e,i);this.group.removeAll(),o.diff(n).add(function(e){vm(null,e,r(e),t,a,o)}).update(function(e,i){vm(n.getItemGraphicEl(i),e,r(e),t,a,o)}).remove(function(t){var e=n.getItemGraphicEl(t);e&&a.remove(e)}).execute(),this._data=o},incrementalPrepareRender:function(t,e,i){this.group.removeAll(),this._data=null},incrementalRender:function(t,e,i,n){for(var o=e.getData(),a=gm(e,o,i,n),r=t.start;r=0;l--)null==o[l]?o.splice(l,1):delete o[l].$action},_flatten:function(t,e,i){d(t,function(t){if(t){i&&(t.parentOption=i),e.push(t);var n=t.children;"group"===t.type&&n&&this._flatten(n,e,t),delete t.children}},this)},useElOptionsToUpdate:function(){var t=this._elOptionsToUpdate;return this._elOptionsToUpdate=null,t}});ys({type:"graphic",init:function(t,e){this._elMap=R(),this._lastGraphicModel},render:function(t,e,i){t!==this._lastGraphicModel&&this._clear(),this._lastGraphicModel=t,this._updateElements(t,i),this._relocate(t,i)},_updateElements:function(t,e){var i=t.useElOptionsToUpdate();if(i){var n=this._elMap,o=this.group;d(i,function(t){var e=t.$action,i=t.id,a=n.get(i),r=t.parentId,s=null!=r?n.get(r):o;if("text"===t.type){var l=t.style;t.hv&&t.hv[1]&&(l.textVerticalAlign=l.textBaseline=null),!l.hasOwnProperty("textFill")&&l.fill&&(l.textFill=l.fill),!l.hasOwnProperty("textStroke")&&l.stroke&&(l.textStroke=l.stroke)}var u=Im(t);e&&"merge"!==e?"replace"===e?(Mm(a,n),Sm(i,s,u,n)):"remove"===e&&Mm(a,n):a?a.attr(u):Sm(i,s,u,n);var h=n.get(i);h&&(h.__ecGraphicWidth=t.width,h.__ecGraphicHeight=t.height)})}},_relocate:function(t,e){for(var i=t.option.elements,n=this.group,o=this._elMap,a=i.length-1;a>=0;a--){var r=i[a],s=o.get(r.id);if(s){var l=s.parent;ta(s,r,l===n?{width:e.getWidth(),height:e.getHeight()}:{width:l.__ecGraphicWidth||0,height:l.__ecGraphicHeight||0},null,{hv:r.hv,boundingMode:r.bounding})}}},_clear:function(){var t=this._elMap;t.each(function(e){Mm(e,t)}),this._elMap=R()},dispose:function(){this._clear()}});var Tk=vs({type:"legend.plain",dependencies:["series"],layoutMode:{type:"box",ignoreSize:!0},init:function(t,e,i){this.mergeDefaultAndTheme(t,i),t.selected=t.selected||{}},mergeOption:function(t){Tk.superCall(this,"mergeOption",t)},optionUpdated:function(){this._updateData(this.ecModel);var t=this._data;if(t[0]&&"single"===this.get("selectedMode")){for(var e=!1,i=0;i=0},defaultOption:{zlevel:0,z:4,show:!0,orient:"horizontal",left:"center",top:0,align:"auto",backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",borderRadius:0,borderWidth:0,padding:5,itemGap:10,itemWidth:25,itemHeight:14,inactiveColor:"#ccc",textStyle:{color:"#333"},selectedMode:!0,tooltip:{show:!1}}});cs("legendToggleSelect","legendselectchanged",v(Lm,"toggleSelected")),cs("legendSelect","legendselected",v(Lm,"select")),cs("legendUnSelect","legendunselected",v(Lm,"unSelect"));var Dk=v,Ak=d,Ck=rw,Lk=ys({type:"legend.plain",newlineDisabled:!1,init:function(){this.group.add(this._contentGroup=new Ck),this._backgroundEl},getContentGroup:function(){return this._contentGroup},render:function(t,e,i){if(this.resetInner(),t.get("show",!0)){var n=t.get("align");n&&"auto"!==n||(n="right"===t.get("left")&&"vertical"===t.get("orient")?"right":"left"),this.renderInner(n,t,e,i);var o=t.getBoxLayoutParams(),a={width:i.getWidth(),height:i.getHeight()},s=t.get("padding"),l=Qo(o,a,s),u=this.layoutInner(t,n,l),h=Qo(r({width:u.width,height:u.height},o),a,s);this.group.attr("position",[h.x-u.x,h.y-u.y]),this.group.add(this._backgroundEl=Pm(u,t))}},resetInner:function(){this.getContentGroup().removeAll(),this._backgroundEl&&this.group.remove(this._backgroundEl)},renderInner:function(t,e,i,n){var o=this.getContentGroup(),a=R(),r=e.get("selectedMode"),s=[];i.eachRawSeries(function(t){!t.get("legendHoverLink")&&s.push(t.id)}),Ak(e.getData(),function(l,u){var h=l.get("name");if(this.newlineDisabled||""!==h&&"\n"!==h){var c=i.getSeriesByName(h)[0];if(!a.get(h))if(c){var d=c.getData(),f=d.getVisual("color");"function"==typeof f&&(f=f(c.getDataParams(0)));var p=d.getVisual("legendSymbol")||"roundRect",g=d.getVisual("symbol");this._createItem(h,u,l,e,p,g,t,f,r).on("click",Dk(Nm,h,n)).on("mouseover",Dk(Om,c,null,n,s)).on("mouseout",Dk(Em,c,null,n,s)),a.set(h,!0)}else i.eachRawSeries(function(i){if(!a.get(h)&&i.legendDataProvider){var o=i.legendDataProvider(),c=o.indexOfName(h);if(c<0)return;var d=o.getItemVisual(c,"color");this._createItem(h,u,l,e,"roundRect",null,t,d,r).on("click",Dk(Nm,h,n)).on("mouseover",Dk(Om,i,h,n,s)).on("mouseout",Dk(Em,i,h,n,s)),a.set(h,!0)}},this)}else o.add(new Ck({newline:!0}))},this)},_createItem:function(t,e,i,n,o,r,s,l,u){var h=n.get("itemWidth"),c=n.get("itemHeight"),d=n.get("inactiveColor"),f=n.get("symbolKeepAspect"),p=n.isSelected(t),g=new Ck,m=i.getModel("textStyle"),v=i.get("icon"),y=i.getModel("tooltip"),x=y.parentModel;if(o=v||o,g.add(Il(o,0,0,h,c,p?l:d,null==f||f)),!v&&r&&(r!==o||"none"==r)){var _=.8*c;"none"===r&&(r="circle"),g.add(Il(r,(h-_)/2,(c-_)/2,_,_,p?l:d,null==f||f))}var w="left"===s?h+5:-5,b=s,S=n.get("formatter"),M=t;"string"==typeof S&&S?M=S.replace("{name}",null!=t?t:""):"function"==typeof S&&(M=S(t)),g.add(new dS({style:no({},m,{text:M,x:w,y:c/2,textFill:p?m.getTextColor():d,textAlign:b,textVerticalAlign:"middle"})}));var I=new bS({shape:g.getBoundingRect(),invisible:!0,tooltip:y.get("show")?a({content:t,formatter:x.get("formatter",!0)||function(){return t},formatterParams:{componentType:"legend",legendIndex:n.componentIndex,name:t,$vars:["name"]}},y.option):null});return g.add(I),g.eachChild(function(t){t.silent=!0}),I.silent=!u,this.getContentGroup().add(g),eo(g),g.__legendDataIndex=e,g},layoutInner:function(t,e,i){var n=this.getContentGroup();rM(t.get("orient"),n,t.get("itemGap"),i.width,i.height);var o=n.getBoundingRect();return n.attr("position",[-o.x,-o.y]),this.group.getBoundingRect()}});hs(function(t){var e=t.findComponents({mainType:"legend"});e&&e.length&&t.filterSeries(function(t){for(var i=0;ii[s],f=[-h.x,-h.y];f[r]=n.position[r];var p=[0,0],g=[-c.x,-c.y],m=D(t.get("pageButtonGap",!0),t.get("itemGap",!0));d&&("end"===t.get("pageButtonPosition",!0)?g[r]+=i[s]-c[s]:p[r]+=c[s]+m),g[1-r]+=h[l]/2-c[l]/2,n.attr("position",f),o.attr("position",p),a.attr("position",g);var v=this.group.getBoundingRect();if((v={x:0,y:0})[s]=d?i[s]:h[s],v[l]=Math.max(h[l],c[l]),v[u]=Math.min(0,c[u]+g[1-r]),o.__rectSize=i[s],d){var y={x:0,y:0};y[s]=Math.max(i[s]-c[s]-m,0),y[l]=v[l],o.setClipPath(new bS({shape:y})),o.__rectSize=y[s]}else a.eachChild(function(t){t.attr({invisible:!0,silent:!0})});var x=this._getPageInfo(t);return null!=x.pageIndex&&fo(n,{position:x.contentPosition},!!d&&t),this._updatePageInfoView(t,x),v},_pageGo:function(t,e,i){var n=this._getPageInfo(e)[t];null!=n&&i.dispatchAction({type:"legendScroll",scrollDataIndex:n,legendId:e.id})},_updatePageInfoView:function(t,e){var i=this._controllerGroup;d(["pagePrev","pageNext"],function(n){var o=null!=e[n+"DataIndex"],a=i.childOfName(n);a&&(a.setStyle("fill",o?t.get("pageIconColor",!0):t.get("pageIconInactiveColor",!0)),a.cursor=o?"pointer":"default")});var n=i.childOfName("pageText"),o=t.get("pageFormatter"),a=e.pageIndex,r=null!=a?a+1:0,s=e.pageCount;n&&o&&n.setStyle("text",_(o)?o.replace("{current}",r).replace("{total}",s):o({current:r,total:s}))},_getPageInfo:function(t){function e(t){var e=t.getBoundingRect().clone();return e[f]+=t.position[h],e}var i,n,o,a,r=t.get("scrollDataIndex",!0),s=this.getContentGroup(),l=s.getBoundingRect(),u=this._containerGroup.__rectSize,h=t.getOrient().index,c=Nk[h],d=Nk[1-h],f=Ok[h],p=s.position.slice();this._showController?s.eachChild(function(t){t.__legendDataIndex===r&&(a=t)}):a=s.childAt(0);var g=u?Math.ceil(l[c]/u):0;if(a){var m=a.getBoundingRect(),v=a.position[h]+m[f];p[h]=-v-l[f],i=Math.floor(g*(v+m[f]+u/2)/l[c]),i=l[c]&&g?Math.max(0,Math.min(g-1,i)):-1;var y={x:0,y:0};y[c]=u,y[d]=l[d],y[f]=-p[h]-l[f];var x,_=s.children();if(s.eachChild(function(t,i){var n=e(t);n.intersect(y)&&(null==x&&(x=i),o=t.__legendDataIndex),i===_.length-1&&n[f]+n[c]<=y[f]+y[c]&&(o=null)}),null!=x){var w=e(_[x]);if(y[f]=w[f]+w[c]-y[c],x<=0&&w[f]>=y[f])n=null;else{for(;x>0&&e(_[x-1]).intersect(y);)x--;n=_[x].__legendDataIndex}}}return{contentPosition:p,pageIndex:i,pageCount:g,pagePrevDataIndex:n,pageNextDataIndex:o}}});cs("legendScroll","legendscroll",function(t,e){var i=t.scrollDataIndex;null!=i&&e.eachComponent({mainType:"legend",subType:"scroll",query:t},function(t){t.setScrollDataIndex(i)})}),vs({type:"tooltip",dependencies:["axisPointer"],defaultOption:{zlevel:0,z:8,show:!0,showContent:!0,trigger:"item",triggerOn:"mousemove|click",alwaysShowContent:!1,displayMode:"single",confine:!1,showDelay:0,hideDelay:100,transitionDuration:.4,enterable:!1,backgroundColor:"rgba(50,50,50,0.7)",borderColor:"#333",borderRadius:4,borderWidth:0,padding:5,extraCssText:"",axisPointer:{type:"line",axis:"auto",animation:"auto",animationDurationUpdate:200,animationEasingUpdate:"exponentialOut",crossStyle:{color:"#999",width:1,type:"dashed",textStyle:{}}},textStyle:{color:"#fff",fontSize:14}}});var Rk=d,zk=Ho,Bk=["","-webkit-","-moz-","-o-"];Gm.prototype={constructor:Gm,_enterable:!0,update:function(){var t=this._container,e=t.currentStyle||document.defaultView.getComputedStyle(t),i=t.style;"absolute"!==i.position&&"absolute"!==e.position&&(i.position="relative")},show:function(t){clearTimeout(this._hideTimeout);var e=this.el;e.style.cssText="position:absolute;display:block;border-style:solid;white-space:nowrap;z-index:9999999;"+Vm(t)+";left:"+this._x+"px;top:"+this._y+"px;"+(t.get("extraCssText")||""),e.style.display=e.innerHTML?"block":"none",this._show=!0},setContent:function(t){this.el.innerHTML=null==t?"":t},setEnterable:function(t){this._enterable=t},getSize:function(){var t=this.el;return[t.clientWidth,t.clientHeight]},moveTo:function(t,e){var i,n=this._zr;n&&n.painter&&(i=n.painter.getViewportRootOffset())&&(t+=i.offsetLeft,e+=i.offsetTop);var o=this.el.style;o.left=t+"px",o.top=e+"px",this._x=t,this._y=e},hide:function(){this.el.style.display="none",this._show=!1},hideLater:function(t){!this._show||this._inContent&&this._enterable||(t?(this._hideDelay=t,this._show=!1,this._hideTimeout=setTimeout(m(this.hide,this),t)):this.hide())},isShow:function(){return this._show}};var Vk=m,Gk=d,Wk=Do,Fk=new bS({shape:{x:-1,y:-1,width:2,height:2}});ys({type:"tooltip",init:function(t,e){if(!o_.node){var i=new Gm(e.getDom(),e);this._tooltipContent=i}},render:function(t,e,i){if(!o_.node&&!o_.wxa){this.group.removeAll(),this._tooltipModel=t,this._ecModel=e,this._api=i,this._lastDataByCoordSys=null,this._alwaysShowContent=t.get("alwaysShowContent");var n=this._tooltipContent;n.update(),n.setEnterable(t.get("enterable")),this._initGlobalListener(),this._keepShow()}},_initGlobalListener:function(){var t=this._tooltipModel.get("triggerOn");Tg("itemTooltip",this._api,Vk(function(e,i,n){"none"!==t&&(t.indexOf(e)>=0?this._tryShow(i,n):"leave"===e&&this._hide(n))},this))},_keepShow:function(){var t=this._tooltipModel,e=this._ecModel,i=this._api;if(null!=this._lastX&&null!=this._lastY&&"none"!==t.get("triggerOn")){var n=this;clearTimeout(this._refreshUpdateTimeout),this._refreshUpdateTimeout=setTimeout(function(){n.manuallyShowTip(t,e,i,{x:n._lastX,y:n._lastY})})}},manuallyShowTip:function(t,e,i,n){if(n.from!==this.uid&&!o_.node){var o=Fm(n,i);this._ticket="";var a=n.dataByCoordSys;if(n.tooltip&&null!=n.x&&null!=n.y){var r=Fk;r.position=[n.x,n.y],r.update(),r.tooltip=n.tooltip,this._tryShow({offsetX:n.x,offsetY:n.y,target:r},o)}else if(a)this._tryShow({offsetX:n.x,offsetY:n.y,position:n.position,event:{},dataByCoordSys:n.dataByCoordSys,tooltipOption:n.tooltipOption},o);else if(null!=n.seriesIndex){if(this._manuallyAxisShowTip(t,e,i,n))return;var s=qL(n,e),l=s.point[0],u=s.point[1];null!=l&&null!=u&&this._tryShow({offsetX:l,offsetY:u,position:n.position,target:s.el,event:{}},o)}else null!=n.x&&null!=n.y&&(i.dispatchAction({type:"updateAxisPointer",x:n.x,y:n.y}),this._tryShow({offsetX:n.x,offsetY:n.y,position:n.position,target:i.getZr().findHover(n.x,n.y).target,event:{}},o))}},manuallyHideTip:function(t,e,i,n){var o=this._tooltipContent;!this._alwaysShowContent&&this._tooltipModel&&o.hideLater(this._tooltipModel.get("hideDelay")),this._lastX=this._lastY=null,n.from!==this.uid&&this._hide(Fm(n,i))},_manuallyAxisShowTip:function(t,e,i,n){var o=n.seriesIndex,a=n.dataIndex,r=e.getComponent("axisPointer").coordSysAxesInfo;if(null!=o&&null!=a&&null!=r){var s=e.getSeriesByIndex(o);if(s&&"axis"===(t=Wm([s.getData().getItemModel(a),s,(s.coordinateSystem||{}).model,t])).get("trigger"))return i.dispatchAction({type:"updateAxisPointer",seriesIndex:o,dataIndex:a,position:n.position}),!0}},_tryShow:function(t,e){var i=t.target;if(this._tooltipModel){this._lastX=t.offsetX,this._lastY=t.offsetY;var n=t.dataByCoordSys;n&&n.length?this._showAxisTooltip(n,t):i&&null!=i.dataIndex?(this._lastDataByCoordSys=null,this._showSeriesItemTooltip(t,i,e)):i&&i.tooltip?(this._lastDataByCoordSys=null,this._showComponentItemTooltip(t,i,e)):(this._lastDataByCoordSys=null,this._hide(e))}},_showOrMove:function(t,e){var i=t.get("showDelay");e=m(e,this),clearTimeout(this._showTimout),i>0?this._showTimout=setTimeout(e,i):e()},_showAxisTooltip:function(t,e){var i=this._ecModel,n=this._tooltipModel,o=[e.offsetX,e.offsetY],a=[],r=[],s=Wm([e.tooltipOption,n]);Gk(t,function(t){Gk(t.dataByAxis,function(t){var e=i.getComponent(t.axisDim+"Axis",t.axisIndex),n=t.value,o=[];if(e&&null!=n){var s=Fg(n,e.axis,i,t.seriesDataIndices,t.valueLabelOpt);d(t.seriesDataIndices,function(a){var l=i.getSeriesByIndex(a.seriesIndex),u=a.dataIndexInside,h=l&&l.getDataParams(u);h.axisDim=t.axisDim,h.axisIndex=t.axisIndex,h.axisType=t.axisType,h.axisId=t.axisId,h.axisValue=wl(e.axis,n),h.axisValueLabel=s,h&&(r.push(h),o.push(l.formatTooltip(u,!0)))});var l=s;a.push((l?Zo(l)+"
":"")+o.join("
"))}})},this),a.reverse(),a=a.join("

");var l=e.position;this._showOrMove(s,function(){this._updateContentNotChangedOnAxis(t)?this._updatePosition(s,l,o[0],o[1],this._tooltipContent,r):this._showTooltipContent(s,a,r,Math.random(),o[0],o[1],l)})},_showSeriesItemTooltip:function(t,e,i){var n=this._ecModel,o=e.seriesIndex,a=n.getSeriesByIndex(o),r=e.dataModel||a,s=e.dataIndex,l=e.dataType,u=r.getData(),h=Wm([u.getItemModel(s),r,a&&(a.coordinateSystem||{}).model,this._tooltipModel]),c=h.get("trigger");if(null==c||"item"===c){var d=r.getDataParams(s,l),f=r.formatTooltip(s,!1,l),p="item_"+r.name+"_"+s;this._showOrMove(h,function(){this._showTooltipContent(h,f,d,p,t.offsetX,t.offsetY,t.position,t.target)}),i({type:"showTip",dataIndexInside:s,dataIndex:u.getRawIndex(s),seriesIndex:o,from:this.uid})}},_showComponentItemTooltip:function(t,e,i){var n=e.tooltip;if("string"==typeof n){var o=n;n={content:o,formatter:o}}var a=new wo(n,this._tooltipModel,this._ecModel),r=a.get("content"),s=Math.random();this._showOrMove(a,function(){this._showTooltipContent(a,r,a.get("formatterParams")||{},s,t.offsetX,t.offsetY,t.position,e)}),i({type:"showTip",from:this.uid})},_showTooltipContent:function(t,e,i,n,o,a,r,s){if(this._ticket="",t.get("showContent")&&t.get("show")){var l=this._tooltipContent,u=t.get("formatter");r=r||t.get("position");var h=e;if(u&&"string"==typeof u)h=Uo(u,i,!0);else if("function"==typeof u){var c=Vk(function(e,n){e===this._ticket&&(l.setContent(n),this._updatePosition(t,r,o,a,l,i,s))},this);this._ticket=n,h=u(i,n,c)}l.setContent(h),l.show(t),this._updatePosition(t,r,o,a,l,i,s)}},_updatePosition:function(t,e,i,n,o,a,r){var s=this._api.getWidth(),l=this._api.getHeight();e=e||t.get("position");var u=o.getSize(),h=t.get("align"),c=t.get("verticalAlign"),d=r&&r.getBoundingRect().clone();if(r&&d.applyTransform(r.transform),"function"==typeof e&&(e=e([i,n],a,o.el,d,{viewSize:[s,l],contentSize:u.slice()})),y(e))i=Wk(e[0],s),n=Wk(e[1],l);else if(w(e)){e.width=u[0],e.height=u[1];var f=Qo(e,{width:s,height:l});i=f.x,n=f.y,h=null,c=null}else"string"==typeof e&&r?(i=(p=Xm(e,d,u))[0],n=p[1]):(i=(p=Hm(i,n,o.el,s,l,h?null:20,c?null:20))[0],n=p[1]);if(h&&(i-=jm(h)?u[0]/2:"right"===h?u[0]:0),c&&(n-=jm(c)?u[1]/2:"bottom"===c?u[1]:0),t.get("confine")){var p=Zm(i,n,o.el,s,l);i=p[0],n=p[1]}o.moveTo(i,n)},_updateContentNotChangedOnAxis:function(t){var e=this._lastDataByCoordSys,i=!!e&&e.length===t.length;return i&&Gk(e,function(e,n){var o=e.dataByAxis||{},a=(t[n]||{}).dataByAxis||[];(i&=o.length===a.length)&&Gk(o,function(t,e){var n=a[e]||{},o=t.seriesDataIndices||[],r=n.seriesDataIndices||[];(i&=t.value===n.value&&t.axisType===n.axisType&&t.axisId===n.axisId&&o.length===r.length)&&Gk(o,function(t,e){var n=r[e];i&=t.seriesIndex===n.seriesIndex&&t.dataIndex===n.dataIndex})})}),this._lastDataByCoordSys=t,!!i},_hide:function(t){this._lastDataByCoordSys=null,t({type:"hideTip",from:this.uid})},dispose:function(t,e){o_.node||o_.wxa||(this._tooltipContent.hide(),Pg("itemTooltip",e))}}),cs({type:"showTip",event:"showTip",update:"tooltip:manuallyShowTip"},function(){}),cs({type:"hideTip",event:"hideTip",update:"tooltip:manuallyHideTip"},function(){}),$m.prototype={constructor:$m,pointToData:function(t,e){return this.polar.pointToData(t,e)["radius"===this.dim?0:1]},dataToRadius:YT.prototype.dataToCoord,radiusToData:YT.prototype.coordToData},u($m,YT),Jm.prototype={constructor:Jm,pointToData:function(t,e){return this.polar.pointToData(t,e)["radius"===this.dim?0:1]},dataToAngle:YT.prototype.dataToCoord,angleToData:YT.prototype.coordToData},u(Jm,YT);var Hk=function(t){this.name=t||"",this.cx=0,this.cy=0,this._radiusAxis=new $m,this._angleAxis=new Jm,this._radiusAxis.polar=this._angleAxis.polar=this};Hk.prototype={type:"polar",axisPointerEnabled:!0,constructor:Hk,dimensions:["radius","angle"],model:null,containPoint:function(t){var e=this.pointToCoord(t);return this._radiusAxis.contain(e[0])&&this._angleAxis.contain(e[1])},containData:function(t){return this._radiusAxis.containData(t[0])&&this._angleAxis.containData(t[1])},getAxis:function(t){return this["_"+t+"Axis"]},getAxes:function(){return[this._radiusAxis,this._angleAxis]},getAxesByScale:function(t){var e=[],i=this._angleAxis,n=this._radiusAxis;return i.scale.type===t&&e.push(i),n.scale.type===t&&e.push(n),e},getAngleAxis:function(){return this._angleAxis},getRadiusAxis:function(){return this._radiusAxis},getOtherAxis:function(t){var e=this._angleAxis;return t===e?this._radiusAxis:e},getBaseAxis:function(){return this.getAxesByScale("ordinal")[0]||this.getAxesByScale("time")[0]||this.getAngleAxis()},getTooltipAxes:function(t){var e=null!=t&&"auto"!==t?this.getAxis(t):this.getBaseAxis();return{baseAxes:[e],otherAxes:[this.getOtherAxis(e)]}},dataToPoint:function(t,e){return this.coordToPoint([this._radiusAxis.dataToRadius(t[0],e),this._angleAxis.dataToAngle(t[1],e)])},pointToData:function(t,e){var i=this.pointToCoord(t);return[this._radiusAxis.radiusToData(i[0],e),this._angleAxis.angleToData(i[1],e)]},pointToCoord:function(t){var e=t[0]-this.cx,i=t[1]-this.cy,n=this.getAngleAxis(),o=n.getExtent(),a=Math.min(o[0],o[1]),r=Math.max(o[0],o[1]);n.inverse?a=r-360:r=a+360;var s=Math.sqrt(e*e+i*i);e/=s,i/=s;for(var l=Math.atan2(-i,e)/Math.PI*180,u=lr;)l+=360*u;return[s,l]},coordToPoint:function(t){var e=t[0],i=t[1]/180*Math.PI;return[Math.cos(i)*e+this.cx,-Math.sin(i)*e+this.cy]}};var Zk=uM.extend({type:"polarAxis",axis:null,getCoordSysModel:function(){return this.ecModel.queryComponents({mainType:"polar",index:this.option.polarIndex,id:this.option.polarId})[0]}});n(Zk.prototype,OT);var Uk={angle:{startAngle:90,clockwise:!0,splitNumber:12,axisLabel:{rotate:!1}},radius:{splitNumber:5}};SD("angle",Zk,Qm,Uk.angle),SD("radius",Zk,Qm,Uk.radius),vs({type:"polar",dependencies:["polarAxis","angleAxis"],coordinateSystem:null,findAxisModel:function(t){var e;return this.ecModel.eachComponent(t,function(t){t.getCoordSysModel()===this&&(e=t)},this),e},defaultOption:{zlevel:0,z:0,center:["50%","50%"],radius:"80%"}});var Xk={dimensions:Hk.prototype.dimensions,create:function(t,e){var i=[];return t.eachComponent("polar",function(t,n){var o=new Hk(n);o.update=ev;var a=o.getRadiusAxis(),r=o.getAngleAxis(),s=t.findAxisModel("radiusAxis"),l=t.findAxisModel("angleAxis");iv(a,s),iv(r,l),tv(o,t,e),i.push(o),t.coordinateSystem=o,o.model=t}),t.eachSeries(function(e){if("polar"===e.get("coordinateSystem")){var i=t.queryComponents({mainType:"polar",index:e.get("polarIndex"),id:e.get("polarId")})[0];e.coordinateSystem=i.coordinateSystem}}),i}};Ca.register("polar",Xk);var jk=["axisLine","axisLabel","axisTick","splitLine","splitArea"];OD.extend({type:"angleAxis",axisPointerClass:"PolarAxisPointer",render:function(t,e){if(this.group.removeAll(),t.get("show")){var n=t.axis,o=n.polar,a=o.getRadiusAxis().getExtent(),r=n.getTicksCoords(),s=f(n.getViewLabels(),function(t){return(t=i(t)).coord=n.dataToCoord(t.tickValue),t});av(s),av(r),d(jk,function(e){!t.get(e+".show")||n.scale.isBlank()&&"axisLine"!==e||this["_"+e](t,o,r,a,s)},this)}},_axisLine:function(t,e,i,n){var o=t.getModel("axisLine.lineStyle"),a=new fS({shape:{cx:e.cx,cy:e.cy,r:n[ov(e)]},style:o.getLineStyle(),z2:1,silent:!0});a.style.fill=null,this.group.add(a)},_axisTick:function(t,e,i,n){var o=t.getModel("axisTick"),a=(o.get("inside")?-1:1)*o.get("length"),s=n[ov(e)],l=f(i,function(t){return new SS({shape:nv(e,[s,s+a],t.coord)})});this.group.add(RS(l,{style:r(o.getModel("lineStyle").getLineStyle(),{stroke:t.get("axisLine.lineStyle.color")})}))},_axisLabel:function(t,e,i,n,o){var a=t.getCategories(!0),r=t.getModel("axisLabel"),s=r.get("margin");d(o,function(i,o){var l=r,u=i.tickValue,h=n[ov(e)],c=e.coordToPoint([h+s,i.coord]),d=e.cx,f=e.cy,p=Math.abs(c[0]-d)/h<.3?"center":c[0]>d?"left":"right",g=Math.abs(c[1]-f)/h<.3?"middle":c[1]>f?"top":"bottom";a&&a[u]&&a[u].textStyle&&(l=new wo(a[u].textStyle,r,r.ecModel));var m=new dS({silent:!0});this.group.add(m),no(m.style,l,{x:c[0],y:c[1],textFill:l.getTextColor()||t.get("axisLine.lineStyle.color"),text:i.formattedLabel,textAlign:p,textVerticalAlign:g})},this)},_splitLine:function(t,e,i,n){var o=t.getModel("splitLine").getModel("lineStyle"),a=o.get("color"),s=0;a=a instanceof Array?a:[a];for(var l=[],u=0;u=0?"p":"n",D=w;_&&(a[l][I]||(a[l][I]={p:w,n:w}),D=a[l][I][T]);var A,C,L,k;if("radius"===d.dim){var P=d.dataToRadius(M)-w,N=s.dataToAngle(I);Math.abs(P)=0},rP.findTargetInfo=function(t,e){for(var i=this._targetInfoList,n=Sv(e,t),o=0;o=0||iP(n,t.getAxis("y").model)>=0)&&a.push(t)}),e.push({panelId:"grid--"+t.id,gridModel:t,coordSysModel:t,coordSys:a[0],coordSyses:a,getPanelRect:uP.grid,xAxisDeclared:r[t.id],yAxisDeclared:s[t.id]})}))},geo:function(t,e){eP(t.geoModels,function(t){var i=t.coordinateSystem;e.push({panelId:"geo--"+t.id,geoModel:t,coordSysModel:t,coordSys:i,coordSyses:[i],getPanelRect:uP.geo})})}},lP=[function(t,e){var i=t.xAxisModel,n=t.yAxisModel,o=t.gridModel;return!o&&i&&(o=i.axis.grid.model),!o&&n&&(o=n.axis.grid.model),o&&o===e.gridModel},function(t,e){var i=t.geoModel;return i&&i===e.geoModel}],uP={grid:function(){return this.coordSys.grid.getRect().clone()},geo:function(){var t=this.coordSys,e=t.getBoundingRect().clone();return e.applyTransform(go(t)),e}},hP={lineX:nP(Mv,0),lineY:nP(Mv,1),rect:function(t,e,i){var n=e[oP[t]]([i[0][0],i[1][0]]),o=e[oP[t]]([i[0][1],i[1][1]]),a=[bv([n[0],o[0]]),bv([n[1],o[1]])];return{values:a,xyMinMax:a}},polygon:function(t,e,i){var n=[[1/0,-1/0],[1/0,-1/0]];return{values:f(i,function(i){var o=e[oP[t]](i);return n[0][0]=Math.min(n[0][0],o[0]),n[1][0]=Math.min(n[1][0],o[1]),n[0][1]=Math.max(n[0][1],o[0]),n[1][1]=Math.max(n[1][1],o[1]),o}),xyMinMax:n}}},cP={lineX:nP(Iv,0),lineY:nP(Iv,1),rect:function(t,e,i){return[[t[0][0]-i[0]*e[0][0],t[0][1]-i[0]*e[0][1]],[t[1][0]-i[1]*e[1][0],t[1][1]-i[1]*e[1][1]]]},polygon:function(t,e,i){return f(t,function(t,n){return[t[0]-i[0]*e[n][0],t[1]-i[1]*e[n][1]]})}},dP=["inBrush","outOfBrush"],fP="__ecBrushSelect",pP="__ecInBrushSelectEvent",gP=CI.VISUAL.BRUSH;fs(gP,function(t,e,i){t.eachComponent({mainType:"brush"},function(e){i&&"takeGlobalCursor"===i.type&&e.setBrushOption("brush"===i.key?i.brushOption:{brushType:!1}),(e.brushTargetManager=new wv(e.option,t)).setInputRanges(e.areas,t)})}),ps(gP,function(t,e,n){var o,a,s=[];t.eachComponent({mainType:"brush"},function(e,n){function l(t){return"all"===m||v[t]}function u(t){return!!t.length}function h(t,e){var i=t.coordinateSystem;w|=i.hasAxisBrushed(),l(e)&&i.eachActiveState(t.getData(),function(t,e){"active"===t&&(x[e]=1)})}function c(i,n,o){var a=kv(i);if(a&&!Pv(e,n)&&(d(b,function(n){a[n.brushType]&&e.brushTargetManager.controlSeries(n,i,t)&&o.push(n),w|=u(o)}),l(n)&&u(o))){var r=i.getData();r.each(function(t){Lv(a,o,r,t)&&(x[t]=1)})}}var p={brushId:e.id,brushIndex:n,brushName:e.name,areas:i(e.areas),selected:[]};s.push(p);var g=e.option,m=g.brushLink,v=[],x=[],_=[],w=0;n||(o=g.throttleType,a=g.throttleDelay);var b=f(e.areas,function(t){return Nv(r({boundingRect:mP[t.brushType](t)},t))}),S=cv(e.option,dP,function(t){t.mappingMethod="fixed"});y(m)&&d(m,function(t){v[t]=1}),t.eachSeries(function(t,e){var i=_[e]=[];"parallel"===t.subType?h(t,e):c(t,e,i)}),t.eachSeries(function(t,e){var i={seriesId:t.id,seriesIndex:e,seriesName:t.name,dataIndex:[]};p.selected.push(i);var n=kv(t),o=_[e],a=t.getData(),r=l(e)?function(t){return x[t]?(i.dataIndex.push(a.getRawIndex(t)),"inBrush"):"outOfBrush"}:function(t){return Lv(n,o,a,t)?(i.dataIndex.push(a.getRawIndex(t)),"inBrush"):"outOfBrush"};(l(e)?w:u(o))&&fv(dP,S,a,r)})}),Av(e,o,a,s,n)});var mP={lineX:B,lineY:B,rect:function(t){return Ov(t.range)},polygon:function(t){for(var e,i=t.range,n=0,o=i.length;ne[0][1]&&(e[0][1]=a[0]),a[1]e[1][1]&&(e[1][1]=a[1])}return e&&Ov(e)}},vP=["#ddd"];vs({type:"brush",dependencies:["geo","grid","xAxis","yAxis","parallel","series"],defaultOption:{toolbox:null,brushLink:null,seriesIndex:"all",geoIndex:null,xAxisIndex:null,yAxisIndex:null,brushType:"rect",brushMode:"single",transformable:!0,brushStyle:{borderWidth:1,color:"rgba(120,140,180,0.3)",borderColor:"rgba(120,140,180,0.8)"},throttleType:"fixRate",throttleDelay:0,removeOnClick:!0,z:1e4},areas:[],brushType:null,brushOption:{},coordInfoList:[],optionUpdated:function(t,e){var i=this.option;!e&&dv(i,t,["inBrush","outOfBrush"]);var n=i.inBrush=i.inBrush||{};i.outOfBrush=i.outOfBrush||{color:vP},n.hasOwnProperty("liftZ")||(n.liftZ=5)},setAreas:function(t){t&&(this.areas=f(t,function(t){return Ev(this.option,t)},this))},setBrushOption:function(t){this.brushOption=Ev(this.option,t),this.brushType=this.brushOption.brushType}});ys({type:"brush",init:function(t,e){this.ecModel=t,this.api=e,this.model,(this._brushController=new Jd(e.getZr())).on("brush",m(this._onBrush,this)).mount()},render:function(t){return this.model=t,Rv.apply(this,arguments)},updateTransform:Rv,updateView:Rv,dispose:function(){this._brushController.dispose()},_onBrush:function(t,e){var n=this.model.id;this.model.brushTargetManager.setOutputRanges(t,this.ecModel),(!e.isEnd||e.removeOnClick)&&this.api.dispatchAction({type:"brush",brushId:n,areas:i(t),$from:n})}}),cs({type:"brush",event:"brush"},function(t,e){e.eachComponent({mainType:"brush",query:t},function(e){e.setAreas(t.areas)})}),cs({type:"brushSelect",event:"brushSelected",update:"none"},function(){});var yP={},xP=sI.toolbox.brush;Vv.defaultOption={show:!0,type:["rect","polygon","lineX","lineY","keep","clear"],icon:{rect:"M7.3,34.7 M0.4,10V-0.2h9.8 M89.6,10V-0.2h-9.8 M0.4,60v10.2h9.8 M89.6,60v10.2h-9.8 M12.3,22.4V10.5h13.1 M33.6,10.5h7.8 M49.1,10.5h7.8 M77.5,22.4V10.5h-13 M12.3,31.1v8.2 M77.7,31.1v8.2 M12.3,47.6v11.9h13.1 M33.6,59.5h7.6 M49.1,59.5 h7.7 M77.5,47.6v11.9h-13",polygon:"M55.2,34.9c1.7,0,3.1,1.4,3.1,3.1s-1.4,3.1-3.1,3.1 s-3.1-1.4-3.1-3.1S53.5,34.9,55.2,34.9z M50.4,51c1.7,0,3.1,1.4,3.1,3.1c0,1.7-1.4,3.1-3.1,3.1c-1.7,0-3.1-1.4-3.1-3.1 C47.3,52.4,48.7,51,50.4,51z M55.6,37.1l1.5-7.8 M60.1,13.5l1.6-8.7l-7.8,4 M59,19l-1,5.3 M24,16.1l6.4,4.9l6.4-3.3 M48.5,11.6 l-5.9,3.1 M19.1,12.8L9.7,5.1l1.1,7.7 M13.4,29.8l1,7.3l6.6,1.6 M11.6,18.4l1,6.1 M32.8,41.9 M26.6,40.4 M27.3,40.2l6.1,1.6 M49.9,52.1l-5.6-7.6l-4.9-1.2",lineX:"M15.2,30 M19.7,15.6V1.9H29 M34.8,1.9H40.4 M55.3,15.6V1.9H45.9 M19.7,44.4V58.1H29 M34.8,58.1H40.4 M55.3,44.4 V58.1H45.9 M12.5,20.3l-9.4,9.6l9.6,9.8 M3.1,29.9h16.5 M62.5,20.3l9.4,9.6L62.3,39.7 M71.9,29.9H55.4",lineY:"M38.8,7.7 M52.7,12h13.2v9 M65.9,26.6V32 M52.7,46.3h13.2v-9 M24.9,12H11.8v9 M11.8,26.6V32 M24.9,46.3H11.8v-9 M48.2,5.1l-9.3-9l-9.4,9.2 M38.9-3.9V12 M48.2,53.3l-9.3,9l-9.4-9.2 M38.9,62.3V46.4",keep:"M4,10.5V1h10.3 M20.7,1h6.1 M33,1h6.1 M55.4,10.5V1H45.2 M4,17.3v6.6 M55.6,17.3v6.6 M4,30.5V40h10.3 M20.7,40 h6.1 M33,40h6.1 M55.4,30.5V40H45.2 M21,18.9h62.9v48.6H21V18.9z",clear:"M22,14.7l30.9,31 M52.9,14.7L22,45.7 M4.7,16.8V4.2h13.1 M26,4.2h7.8 M41.6,4.2h7.8 M70.3,16.8V4.2H57.2 M4.7,25.9v8.6 M70.3,25.9v8.6 M4.7,43.2v12.6h13.1 M26,55.8h7.8 M41.6,55.8h7.8 M70.3,43.2v12.6H57.2"},title:i(xP.title)};var _P=Vv.prototype;_P.render=_P.updateView=function(t,e,i){var n,o,a;e.eachComponent({mainType:"brush"},function(t){n=t.brushType,o=t.brushOption.brushMode||"single",a|=t.areas.length}),this._brushType=n,this._brushMode=o,d(t.get("type",!0),function(e){t.setIconStatus(e,("keep"===e?"multiple"===o:"clear"===e?a:e===n)?"emphasis":"normal")})},_P.getIcons=function(){var t=this.model,e=t.get("icon",!0),i={};return d(t.get("type",!0),function(t){e[t]&&(i[t]=e[t])}),i},_P.onclick=function(t,e,i){var n=this._brushType,o=this._brushMode;"clear"===i?(e.dispatchAction({type:"axisAreaSelect",intervals:[]}),e.dispatchAction({type:"brush",command:"clear",areas:[]})):e.dispatchAction({type:"takeGlobalCursor",key:"brush",brushOption:{brushType:"keep"===i?n:n!==i&&i,brushMode:"keep"===i?"multiple"===o?"single":"multiple":o}})},zv("brush",Vv),us(function(t,e){var i=t&&t.brush;if(y(i)||(i=i?[i]:[]),i.length){var n=[];d(i,function(t){var e=t.hasOwnProperty("toolbox")?t.toolbox:[];e instanceof Array&&(n=n.concat(e))});var o=t&&t.toolbox;y(o)&&(o=o[0]),o||(o={feature:{}},t.toolbox=[o]);var a=o.feature||(o.feature={}),r=a.brush||(a.brush={}),s=r.type||(r.type=[]);s.push.apply(s,n),uv(s),e&&!s.length&&s.push.apply(s,Jk)}});Gv.prototype={constructor:Gv,type:"calendar",dimensions:["time","value"],getDimensionsInfo:function(){return[{name:"time",type:"time"},"value"]},getRangeInfo:function(){return this._rangeInfo},getModel:function(){return this._model},getRect:function(){return this._rect},getCellWidth:function(){return this._sw},getCellHeight:function(){return this._sh},getOrient:function(){return this._orient},getFirstDayOfWeek:function(){return this._firstDayOfWeek},getDateInfo:function(t){var e=(t=Ro(t)).getFullYear(),i=t.getMonth()+1;i=i<10?"0"+i:i;var n=t.getDate();n=n<10?"0"+n:n;var o=t.getDay();return o=Math.abs((o+7-this.getFirstDayOfWeek())%7),{y:e,m:i,d:n,day:o,time:t.getTime(),formatedDate:e+"-"+i+"-"+n,date:t}},getNextNDay:function(t,e){return 0===(e=e||0)?this.getDateInfo(t):((t=new Date(this.getDateInfo(t).time)).setDate(t.getDate()+e),this.getDateInfo(t))},update:function(t,e){function i(t,e){return null!=t[e]&&"auto"!==t[e]}this._firstDayOfWeek=+this._model.getModel("dayLabel").get("firstDay"),this._orient=this._model.get("orient"),this._lineWidth=this._model.getModel("itemStyle").getItemStyle().lineWidth||0,this._rangeInfo=this._getRangeInfo(this._initRangeOption());var n=this._rangeInfo.weeks||1,o=["width","height"],a=this._model.get("cellSize").slice(),r=this._model.getBoxLayoutParams(),s="horizontal"===this._orient?[n,7]:[7,n];d([0,1],function(t){i(a,t)&&(r[o[t]]=a[t]*s[t])});var l={width:e.getWidth(),height:e.getHeight()},u=this._rect=Qo(r,l);d([0,1],function(t){i(a,t)||(a[t]=u[o[t]]/s[t])}),this._sw=a[0],this._sh=a[1]},dataToPoint:function(t,e){y(t)&&(t=t[0]),null==e&&(e=!0);var i=this.getDateInfo(t),n=this._rangeInfo,o=i.formatedDate;if(e&&!(i.time>=n.start.time&&i.timea.end.time&&t.reverse(),t},_getRangeInfo:function(t){var e;(t=[this.getDateInfo(t[0]),this.getDateInfo(t[1])])[0].time>t[1].time&&(e=!0,t.reverse());var i=Math.floor(t[1].time/864e5)-Math.floor(t[0].time/864e5)+1,n=new Date(t[0].time),o=n.getDate(),a=t[1].date.getDate();if(n.setDate(o+i-1),n.getDate()!==a)for(var r=n.getTime()-t[1].time>0?1:-1;n.getDate()!==a&&(n.getTime()-t[1].time)*r>0;)i-=r,n.setDate(o+i-1);var s=Math.floor((i+t[0].day+6)/7),l=e?1-s:s-1;return e&&t.reverse(),{range:[t[0].formatedDate,t[1].formatedDate],start:t[0],end:t[1],allDay:i,weeks:s,nthWeek:l,fweek:t[0].day,lweek:t[1].day}},_getDateByWeeksAndDay:function(t,e,i){var n=this._getRangeInfo(i);if(t>n.weeks||0===t&&en.lweek)return!1;var o=7*(t-1)-n.fweek+e,a=new Date(n.start.time);return a.setDate(n.start.d+o),this.getDateInfo(a)}},Gv.dimensions=Gv.prototype.dimensions,Gv.getDimensionsInfo=Gv.prototype.getDimensionsInfo,Gv.create=function(t,e){var i=[];return t.eachComponent("calendar",function(n){var o=new Gv(n,t,e);i.push(o),n.coordinateSystem=o}),t.eachSeries(function(t){"calendar"===t.get("coordinateSystem")&&(t.coordinateSystem=i[t.get("calendarIndex")||0])}),i},Ca.register("calendar",Gv);var wP=uM.extend({type:"calendar",coordinateSystem:null,defaultOption:{zlevel:0,z:2,left:80,top:60,cellSize:20,orient:"horizontal",splitLine:{show:!0,lineStyle:{color:"#000",width:1,type:"solid"}},itemStyle:{color:"#fff",borderWidth:1,borderColor:"#ccc"},dayLabel:{show:!0,firstDay:0,position:"start",margin:"50%",nameMap:"en",color:"#000"},monthLabel:{show:!0,position:"start",margin:5,align:"center",nameMap:"en",formatter:null,color:"#000"},yearLabel:{show:!0,position:null,margin:30,formatter:null,color:"#ccc",fontFamily:"sans-serif",fontWeight:"bolder",fontSize:20}},init:function(t,e,i,n){var o=na(t);wP.superApply(this,"init",arguments),Fv(t,o)},mergeOption:function(t,e){wP.superApply(this,"mergeOption",arguments),Fv(this.option,t)}}),bP={EN:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],CN:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"]},SP={EN:["S","M","T","W","T","F","S"],CN:["日","一","二","三","四","五","六"]};ys({type:"calendar",_tlpoints:null,_blpoints:null,_firstDayOfMonth:null,_firstDayPoints:null,render:function(t,e,i){var n=this.group;n.removeAll();var o=t.coordinateSystem,a=o.getRangeInfo(),r=o.getOrient();this._renderDayRect(t,a,n),this._renderLines(t,a,r,n),this._renderYearText(t,a,r,n),this._renderMonthText(t,r,n),this._renderWeekText(t,a,r,n)},_renderDayRect:function(t,e,i){for(var n=t.coordinateSystem,o=t.getModel("itemStyle").getItemStyle(),a=n.getCellWidth(),r=n.getCellHeight(),s=e.start.time;s<=e.end.time;s=n.getNextNDay(s,1).time){var l=n.dataToRect([s],!1).tl,u=new bS({shape:{x:l[0],y:l[1],width:a,height:r},cursor:"default",style:o});i.add(u)}},_renderLines:function(t,e,i,n){function o(e){a._firstDayOfMonth.push(r.getDateInfo(e)),a._firstDayPoints.push(r.dataToRect([e],!1).tl);var o=a._getLinePointsOfOneWeek(t,e,i);a._tlpoints.push(o[0]),a._blpoints.push(o[o.length-1]),l&&a._drawSplitline(o,s,n)}var a=this,r=t.coordinateSystem,s=t.getModel("splitLine.lineStyle").getLineStyle(),l=t.get("splitLine.show"),u=s.lineWidth;this._tlpoints=[],this._blpoints=[],this._firstDayOfMonth=[],this._firstDayPoints=[];for(var h=e.start,c=0;h.time<=e.end.time;c++){o(h.formatedDate),0===c&&(h=r.getDateInfo(e.start.y+"-"+e.start.m));var d=h.date;d.setMonth(d.getMonth()+1),h=r.getDateInfo(d)}o(r.getNextNDay(e.end.time,1).formatedDate),l&&this._drawSplitline(a._getEdgesPoints(a._tlpoints,u,i),s,n),l&&this._drawSplitline(a._getEdgesPoints(a._blpoints,u,i),s,n)},_getEdgesPoints:function(t,e,i){var n=[t[0].slice(),t[t.length-1].slice()],o="horizontal"===i?0:1;return n[0][o]=n[0][o]-e/2,n[1][o]=n[1][o]+e/2,n},_drawSplitline:function(t,e,i){var n=new wS({z2:20,shape:{points:t},style:e});i.add(n)},_getLinePointsOfOneWeek:function(t,e,i){var n=t.coordinateSystem;e=n.getDateInfo(e);for(var o=[],a=0;a<7;a++){var r=n.getNextNDay(e.time,a),s=n.dataToRect([r.time],!1);o[2*r.day]=s.tl,o[2*r.day+1]=s["horizontal"===i?"bl":"tr"]}return o},_formatterLabel:function(t,e){return"string"==typeof t&&t?Xo(t,e):"function"==typeof t?t(e):e.nameMap},_yearTextPositionControl:function(t,e,i,n,o){e=e.slice();var a=["center","bottom"];"bottom"===n?(e[1]+=o,a=["center","top"]):"left"===n?e[0]-=o:"right"===n?(e[0]+=o,a=["center","top"]):e[1]-=o;var r=0;return"left"!==n&&"right"!==n||(r=Math.PI/2),{rotation:r,position:e,style:{textAlign:a[0],textVerticalAlign:a[1]}}},_renderYearText:function(t,e,i,n){var o=t.getModel("yearLabel");if(o.get("show")){var a=o.get("margin"),r=o.get("position");r||(r="horizontal"!==i?"top":"left");var s=[this._tlpoints[this._tlpoints.length-1],this._blpoints[0]],l=(s[0][0]+s[1][0])/2,u=(s[0][1]+s[1][1])/2,h="horizontal"===i?0:1,c={top:[l,s[h][1]],bottom:[l,s[1-h][1]],left:[s[1-h][0],u],right:[s[h][0],u]},d=e.start.y;+e.end.y>+e.start.y&&(d=d+"-"+e.end.y);var f=o.get("formatter"),p={start:e.start.y,end:e.end.y,nameMap:d},g=this._formatterLabel(f,p),m=new dS({z2:30});no(m.style,o,{text:g}),m.attr(this._yearTextPositionControl(m,c[r],i,r,a)),n.add(m)}},_monthTextPositionControl:function(t,e,i,n,o){var a="left",r="top",s=t[0],l=t[1];return"horizontal"===i?(l+=o,e&&(a="center"),"start"===n&&(r="bottom")):(s+=o,e&&(r="middle"),"start"===n&&(a="right")),{x:s,y:l,textAlign:a,textVerticalAlign:r}},_renderMonthText:function(t,e,i){var n=t.getModel("monthLabel");if(n.get("show")){var o=n.get("nameMap"),r=n.get("margin"),s=n.get("position"),l=n.get("align"),u=[this._tlpoints,this._blpoints];_(o)&&(o=bP[o.toUpperCase()]||[]);var h="start"===s?0:1,c="horizontal"===e?0:1;r="start"===s?-r:r;for(var d="center"===l,f=0;f=r[0]&&t<=r[1]}if(t===this._dataZoomModel){var n=this._dimName,o=this.getTargetSeriesModels(),a=t.get("filterMode"),r=this._valueWindow;"none"!==a&&TP(o,function(t){var e=t.getData(),o=e.mapDimension(n,!0);"weakFilter"===a?e.filterSelf(function(t){for(var i,n,a,s=0;sr[1];if(u&&!h&&!c)return!0;u&&(a=!0),h&&(i=!0),c&&(n=!0)}return a&&i&&n}):TP(o,function(n){if("empty"===a)t.setData(e.map(n,function(t){return i(t)?t:NaN}));else{var o={};o[n]=r,e.selectRange(o)}}),TP(o,function(t){e.setApproximateExtent(r,t)})})}}};var CP=d,LP=IP,kP=vs({type:"dataZoom",dependencies:["xAxis","yAxis","zAxis","radiusAxis","angleAxis","singleAxis","series"],defaultOption:{zlevel:0,z:4,orient:null,xAxisIndex:null,yAxisIndex:null,filterMode:"filter",throttle:null,start:0,end:100,startValue:null,endValue:null,minSpan:null,maxSpan:null,minValueSpan:null,maxValueSpan:null,rangeMode:null},init:function(t,e,i){this._dataIntervalByAxis={},this._dataInfo={},this._axisProxies={},this.textStyleModel,this._autoThrottle=!0,this._rangePropMode=["percent","percent"];var n=qv(t);this.mergeDefaultAndTheme(t,i),this.doInit(n)},mergeOption:function(t){var e=qv(t);n(this.option,t,!0),this.doInit(e)},doInit:function(t){var e=this.option;o_.canvasSupported||(e.realtime=!1),this._setDefaultThrottle(t),Kv(this,t),CP([["start","startValue"],["end","endValue"]],function(t,i){"value"===this._rangePropMode[i]&&(e[t[0]]=null)},this),this.textStyleModel=this.getModel("textStyle"),this._resetTarget(),this._giveAxisProxies()},_giveAxisProxies:function(){var t=this._axisProxies;this.eachTargetAxis(function(e,i,n,o){var a=this.dependentModels[e.axis][i],r=a.__dzAxisProxy||(a.__dzAxisProxy=new AP(e.name,i,this,o));t[e.name+"_"+i]=r},this)},_resetTarget:function(){var t=this.option,e=this._judgeAutoMode();LP(function(e){var i=e.axisIndex;t[i]=Si(t[i])},this),"axisIndex"===e?this._autoSetAxisIndex():"orient"===e&&this._autoSetOrient()},_judgeAutoMode:function(){var t=this.option,e=!1;LP(function(i){null!=t[i.axisIndex]&&(e=!0)},this);var i=t.orient;return null==i&&e?"orient":e?void 0:(null==i&&(t.orient="horizontal"),"axisIndex")},_autoSetAxisIndex:function(){var t=!0,e=this.get("orient",!0),i=this.option,n=this.dependentModels;if(t){var o="vertical"===e?"y":"x";n[o+"Axis"].length?(i[o+"AxisIndex"]=[0],t=!1):CP(n.singleAxis,function(n){t&&n.get("orient",!0)===e&&(i.singleAxisIndex=[n.componentIndex],t=!1)})}t&&LP(function(e){if(t){var n=[],o=this.dependentModels[e.axis];if(o.length&&!n.length)for(var a=0,r=o.length;a0?100:20}},getFirstTargetAxisModel:function(){var t;return LP(function(e){if(null==t){var i=this.get(e.axisIndex);i.length&&(t=this.dependentModels[e.axis][i[0]])}},this),t},eachTargetAxis:function(t,e){var i=this.ecModel;LP(function(n){CP(this.get(n.axisIndex),function(o){t.call(e,n,o,this,i)},this)},this)},getAxisProxy:function(t,e){return this._axisProxies[t+"_"+e]},getAxisModel:function(t,e){var i=this.getAxisProxy(t,e);return i&&i.getAxisModel()},setRawRange:function(t,e){var i=this.option;CP([["start","startValue"],["end","endValue"]],function(e){null==t[e[0]]&&null==t[e[1]]||(i[e[0]]=t[e[0]],i[e[1]]=t[e[1]])},this),!e&&Kv(this,t)},getPercentRange:function(){var t=this.findRepresentativeAxisProxy();if(t)return t.getDataPercentWindow()},getValueRange:function(t,e){if(null!=t||null!=e)return this.getAxisProxy(t,e).getDataValueWindow();var i=this.findRepresentativeAxisProxy();return i?i.getDataValueWindow():void 0},findRepresentativeAxisProxy:function(t){if(t)return t.__dzAxisProxy;var e=this._axisProxies;for(var i in e)if(e.hasOwnProperty(i)&&e[i].hostedBy(this))return e[i];for(var i in e)if(e.hasOwnProperty(i)&&!e[i].hostedBy(this))return e[i]},getRangePropMode:function(){return this._rangePropMode.slice()}}),PP=KM.extend({type:"dataZoom",render:function(t,e,i,n){this.dataZoomModel=t,this.ecModel=e,this.api=i},getTargetCoordInfo:function(){function t(t,e,i,n){for(var o,a=0;a0&&e%g)p+=f;else{var i=null==t||isNaN(t)||""===t,n=i?0:OP(t,a,u,!0);i&&!l&&e?(c.push([c[c.length-1][0],0]),d.push([d[d.length-1][0],0])):!i&&l&&(c.push([p,0]),d.push([p,0])),c.push([p,n]),d.push([p,n]),p+=f,l=i}});var m=this.dataZoomModel;this._displayables.barGroup.add(new _S({shape:{points:c},style:r({fill:m.get("dataBackgroundColor")},m.getModel("dataBackground.areaStyle").getAreaStyle()),silent:!0,z2:-20})),this._displayables.barGroup.add(new wS({shape:{points:d},style:m.getModel("dataBackground.lineStyle").getLineStyle(),silent:!0,z2:-19}))}}},_prepareDataShadowInfo:function(){var t=this.dataZoomModel,e=t.get("showDataShadow");if(!1!==e){var i,n=this.ecModel;return t.eachTargetAxis(function(o,a){d(t.getAxisProxy(o.name,a).getTargetSeriesModels(),function(t){if(!(i||!0!==e&&l(GP,t.get("type"))<0)){var r,s=n.getComponent(o.axis,a).axis,u=$v(o.name),h=t.coordinateSystem;null!=u&&h.getOtherAxis&&(r=h.getOtherAxis(s).inverse),u=t.getData().mapDimension(u),i={thisAxis:s,series:t,thisDim:o.name,otherDim:u,otherAxisInverse:r}}},this)},this),i}},_renderHandle:function(){var t=this._displayables,e=t.handles=[],i=t.handleLabels=[],n=this._displayables.barGroup,o=this._size,a=this.dataZoomModel;n.add(t.filler=new NP({draggable:!0,cursor:Jv(this._orient),drift:RP(this._onDragMove,this,"all"),onmousemove:function(t){Rw(t.event)},ondragstart:RP(this._showDataInfo,this,!0),ondragend:RP(this._onDragEnd,this),onmouseover:RP(this._showDataInfo,this,!0),onmouseout:RP(this._showDataInfo,this,!1),style:{fill:a.get("fillerColor"),textPosition:"inside"}})),n.add(new NP(Wn({silent:!0,shape:{x:0,y:0,width:o[0],height:o[1]},style:{stroke:a.get("dataBackgroundColor")||a.get("borderColor"),lineWidth:1,fill:"rgba(0,0,0,0)"}}))),zP([0,1],function(t){var o=_o(a.get("handleIcon"),{cursor:Jv(this._orient),draggable:!0,drift:RP(this._onDragMove,this,t),onmousemove:function(t){Rw(t.event)},ondragend:RP(this._onDragEnd,this),onmouseover:RP(this._showDataInfo,this,!0),onmouseout:RP(this._showDataInfo,this,!1)},{x:-1,y:0,width:2,height:2}),r=o.getBoundingRect();this._handleHeight=Do(a.get("handleSize"),this._size[1]),this._handleWidth=r.width/r.height*this._handleHeight,o.setStyle(a.getModel("handleStyle").getItemStyle());var s=a.get("handleColor");null!=s&&(o.style.fill=s),n.add(e[t]=o);var l=a.textStyleModel;this.group.add(i[t]=new dS({silent:!0,invisible:!0,style:{x:0,y:0,text:"",textVerticalAlign:"middle",textAlign:"center",textFill:l.getTextColor(),textFont:l.getFont()},z2:10}))},this)},_resetInterval:function(){var t=this._range=this.dataZoomModel.getPercentRange(),e=this._getViewExtent();this._handleEnds=[OP(t[0],[0,100],e,!0),OP(t[1],[0,100],e,!0)]},_updateInterval:function(t,e){var i=this.dataZoomModel,n=this._handleEnds,o=this._getViewExtent(),a=i.findRepresentativeAxisProxy().getMinMaxSpan(),r=[0,100];kC(e,n,o,i.get("zoomLock")?"all":t,null!=a.minSpan?OP(a.minSpan,r,o,!0):null,null!=a.maxSpan?OP(a.maxSpan,r,o,!0):null);var s=this._range,l=this._range=EP([OP(n[0],o,r,!0),OP(n[1],o,r,!0)]);return!s||s[0]!==l[0]||s[1]!==l[1]},_updateView:function(t){var e=this._displayables,i=this._handleEnds,n=EP(i.slice()),o=this._size;zP([0,1],function(t){var n=e.handles[t],a=this._handleHeight;n.attr({scale:[a/2,a/2],position:[i[t],o[1]/2-a/2]})},this),e.filler.setShape({x:n[0],y:0,width:n[1]-n[0],height:o[1]}),this._updateDataInfo(t)},_updateDataInfo:function(t){function e(t){var e=go(n.handles[t].parent,this.group),i=vo(0===t?"right":"left",e),s=this._handleWidth/2+VP,l=mo([c[t]+(0===t?-s:s),this._size[1]/2],e);o[t].setStyle({x:l[0],y:l[1],textVerticalAlign:a===BP?"middle":i,textAlign:a===BP?i:"center",text:r[t]})}var i=this.dataZoomModel,n=this._displayables,o=n.handleLabels,a=this._orient,r=["",""];if(i.get("showDetail")){var s=i.findRepresentativeAxisProxy();if(s){var l=s.getAxisModel().axis,u=this._range,h=t?s.calculateDataWindow({start:u[0],end:u[1]}).valueWindow:s.getDataValueWindow();r=[this._formatLabel(h[0],l),this._formatLabel(h[1],l)]}}var c=EP(this._handleEnds.slice());e.call(this,0),e.call(this,1)},_formatLabel:function(t,e){var i=this.dataZoomModel,n=i.get("labelFormatter"),o=i.get("labelPrecision");null!=o&&"auto"!==o||(o=e.getPixelPrecision());var a=null==t||isNaN(t)?"":"category"===e.type||"time"===e.type?e.scale.getLabel(Math.round(t)):t.toFixed(Math.min(o,20));return x(n)?n(t,a):_(n)?n.replace("{value}",a):a},_showDataInfo:function(t){t=this._dragging||t;var e=this._displayables.handleLabels;e[0].attr("invisible",!t),e[1].attr("invisible",!t)},_onDragMove:function(t,e,i){this._dragging=!0;var n=mo([e,i],this._displayables.barGroup.getLocalTransform(),!0),o=this._updateInterval(t,n[0]),a=this.dataZoomModel.get("realtime");this._updateView(!a),o&&a&&this._dispatchZoomAction()},_onDragEnd:function(){this._dragging=!1,this._showDataInfo(!1),!this.dataZoomModel.get("realtime")&&this._dispatchZoomAction()},_onClickPanelClick:function(t){var e=this._size,i=this._displayables.barGroup.transformCoordToLocal(t.offsetX,t.offsetY);if(!(i[0]<0||i[0]>e[0]||i[1]<0||i[1]>e[1])){var n=this._handleEnds,o=(n[0]+n[1])/2,a=this._updateInterval("all",i[0]-o);this._updateView(),a&&this._dispatchZoomAction()}},_dispatchZoomAction:function(){var t=this._range;this.api.dispatchAction({type:"dataZoom",from:this.uid,dataZoomId:this.dataZoomModel.id,start:t[0],end:t[1]})},_findCoordRect:function(){var t;if(zP(this.getTargetCoordInfo(),function(e){if(!t&&e.length){var i=e[0].model.coordinateSystem;t=i.getRect&&i.getRect()}}),!t){var e=this.api.getWidth(),i=this.api.getHeight();t={x:.2*e,y:.2*i,width:.6*e,height:.6*i}}return t}});kP.extend({type:"dataZoom.inside",defaultOption:{disabled:!1,zoomLock:!1,zoomOnMouseWheel:!0,moveOnMouseMove:!0,preventDefaultMouseMove:!0}});var FP=v,HP="\0_ec_dataZoom_roams",ZP=m,UP=PP.extend({type:"dataZoom.inside",init:function(t,e){this._range},render:function(t,e,i,n){UP.superApply(this,"render",arguments),this._range=t.getPercentRange(),d(this.getTargetCoordInfo(),function(e,n){var o=f(e,function(t){return ey(t.model)});d(e,function(e){var a=e.model,r=t.option;Qv(i,{coordId:ey(a),allCoordIds:o,containsPoint:function(t,e,i){return a.coordinateSystem.containPoint([e,i])},dataZoomId:t.id,throttleRate:t.get("throttle",!0),panGetRange:ZP(this._onPan,this,e,n),zoomGetRange:ZP(this._onZoom,this,e,n),zoomLock:r.zoomLock,disabled:r.disabled,roamControllerOpt:{zoomOnMouseWheel:r.zoomOnMouseWheel,moveOnMouseMove:r.moveOnMouseMove,preventDefaultMouseMove:r.preventDefaultMouseMove}})},this)},this)},dispose:function(){ty(this.api,this.dataZoomModel.id),UP.superApply(this,"dispose",arguments),this._range=null},_onPan:function(t,e,i,n,o,a,r,s,l){var u=this._range,h=u.slice(),c=t.axisModels[0];if(c){var d=XP[e]([a,r],[s,l],c,i,t),f=d.signal*(h[1]-h[0])*d.pixel/d.pixelLength;return kC(f,h,[0,100],"all"),this._range=h,u[0]!==h[0]||u[1]!==h[1]?h:void 0}},_onZoom:function(t,e,i,n,o,a){var r=this._range,s=r.slice(),l=t.axisModels[0];if(l){var u=XP[e](null,[o,a],l,i,t),h=(u.signal>0?u.pixelStart+u.pixelLength-u.pixel:u.pixel-u.pixelStart)/u.pixelLength*(s[1]-s[0])+s[0];n=Math.max(1/n,0),s[0]=(s[0]-h)*n+h,s[1]=(s[1]-h)*n+h;var c=this.dataZoomModel.findRepresentativeAxisProxy().getMinMaxSpan();return kC(0,s,[0,100],0,c.minSpan,c.maxSpan),this._range=s,r[0]!==s[0]||r[1]!==s[1]?s:void 0}}}),XP={grid:function(t,e,i,n,o){var a=i.axis,r={},s=o.model.coordinateSystem.getRect();return t=t||[0,0],"x"===a.dim?(r.pixel=e[0]-t[0],r.pixelLength=s.width,r.pixelStart=s.x,r.signal=a.inverse?1:-1):(r.pixel=e[1]-t[1],r.pixelLength=s.height,r.pixelStart=s.y,r.signal=a.inverse?-1:1),r},polar:function(t,e,i,n,o){var a=i.axis,r={},s=o.model.coordinateSystem,l=s.getRadiusAxis().getExtent(),u=s.getAngleAxis().getExtent();return t=t?s.pointToCoord(t):[0,0],e=s.pointToCoord(e),"radiusAxis"===i.mainType?(r.pixel=e[0]-t[0],r.pixelLength=l[1]-l[0],r.pixelStart=l[0],r.signal=a.inverse?1:-1):(r.pixel=e[1]-t[1],r.pixelLength=u[1]-u[0],r.pixelStart=u[0],r.signal=a.inverse?-1:1),r},singleAxis:function(t,e,i,n,o){var a=i.axis,r=o.model.coordinateSystem.getRect(),s={};return t=t||[0,0],"horizontal"===a.orient?(s.pixel=e[0]-t[0],s.pixelLength=r.width,s.pixelStart=r.x,s.signal=a.inverse?1:-1):(s.pixel=e[1]-t[1],s.pixelLength=r.height,s.pixelStart=r.y,s.signal=a.inverse?-1:1),s}};hs({getTargetSeries:function(t){var e=R();return t.eachComponent("dataZoom",function(t){t.eachTargetAxis(function(t,i,n){d(n.getAxisProxy(t.name,i).getTargetSeriesModels(),function(t){e.set(t.uid,t)})})}),e},modifyOutputEnd:!0,overallReset:function(t,e){t.eachComponent("dataZoom",function(t){t.eachTargetAxis(function(t,i,n){n.getAxisProxy(t.name,i).reset(n,e)}),t.eachTargetAxis(function(t,i,n){n.getAxisProxy(t.name,i).filterData(n,e)})}),t.eachComponent("dataZoom",function(t){var e=t.findRepresentativeAxisProxy(),i=e.getDataPercentWindow(),n=e.getDataValueWindow();t.setRawRange({start:i[0],end:i[1],startValue:n[0],endValue:n[1]},!0)})}}),cs("dataZoom",function(t,e){var i=Zv(m(e.eachComponent,e,"dataZoom"),IP,function(t,e){return t.get(e.axisIndex)}),n=[];e.eachComponent({mainType:"dataZoom",query:t},function(t,e){n.push.apply(n,i(t).nodes)}),d(n,function(e,i){e.setRawRange({start:t.start,end:t.end,startValue:t.startValue,endValue:t.endValue})})});var jP=d,YP=function(t){var e=t&&t.visualMap;y(e)||(e=e?[e]:[]),jP(e,function(t){if(t){hy(t,"splitList")&&!hy(t,"pieces")&&(t.pieces=t.splitList,delete t.splitList);var e=t.pieces;e&&y(e)&&jP(e,function(t){w(t)&&(hy(t,"start")&&!hy(t,"min")&&(t.min=t.start),hy(t,"end")&&!hy(t,"max")&&(t.max=t.end))})}})};uM.registerSubTypeDefaulter("visualMap",function(t){return t.categories||(t.pieces?t.pieces.length>0:t.splitNumber>0)&&!t.calculable?"piecewise":"continuous"});var qP=CI.VISUAL.COMPONENT;ps(qP,{createOnAllSeries:!0,reset:function(t,e){var i=[];return e.eachComponent("visualMap",function(e){var n=t.pipelineContext;!e.isTargetSeries(t)||n&&n.large||i.push(pv(e.stateList,e.targetVisuals,m(e.getValueState,e),e.getDataDimension(t.getData())))}),i}}),ps(qP,{createOnAllSeries:!0,reset:function(t,e){var i=t.getData(),n=[];e.eachComponent("visualMap",function(e){if(e.isTargetSeries(t)){var o=e.getVisualMeta(m(cy,null,t,e))||{stops:[],outerColors:[]},a=e.getDataDimension(i),r=i.getDimensionInfo(a);null!=r&&(o.dimension=r.index,n.push(o))}}),t.getData().setVisual("visualMeta",n)}});var KP={get:function(t,e,n){var o=i(($P[t]||{})[e]);return n&&y(o)?o[o.length-1]:o}},$P={color:{active:["#006edd","#e0ffff"],inactive:["rgba(0,0,0,0)"]},colorHue:{active:[0,360],inactive:[0,0]},colorSaturation:{active:[.3,1],inactive:[0,0]},colorLightness:{active:[.9,.5],inactive:[0,0]},colorAlpha:{active:[.3,1],inactive:[0,0]},opacity:{active:[.3,1],inactive:[0,0]},symbol:{active:["circle","roundRect","diamond"],inactive:["none"]},symbolSize:{active:[10,50],inactive:[0,0]}},JP=HA.mapVisual,QP=HA.eachVisual,tN=y,eN=d,iN=Co,nN=To,oN=B,aN=vs({type:"visualMap",dependencies:["series"],stateList:["inRange","outOfRange"],replacableOptionKeys:["inRange","outOfRange","target","controller","color"],dataBound:[-1/0,1/0],layoutMode:{type:"box",ignoreSize:!0},defaultOption:{show:!0,zlevel:0,z:4,seriesIndex:"all",min:0,max:200,dimension:null,inRange:null,outOfRange:null,left:0,right:null,top:null,bottom:0,itemWidth:null,itemHeight:null,inverse:!1,orient:"vertical",backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",contentColor:"#5793f3",inactiveColor:"#aaa",borderWidth:0,padding:5,textGap:10,precision:0,color:null,formatter:null,text:null,textStyle:{color:"#333"}},init:function(t,e,i){this._dataExtent,this.targetVisuals={},this.controllerVisuals={},this.textStyleModel,this.itemSize,this.mergeDefaultAndTheme(t,i)},optionUpdated:function(t,e){var i=this.option;o_.canvasSupported||(i.realtime=!1),!e&&dv(i,t,this.replacableOptionKeys),this.textStyleModel=this.getModel("textStyle"),this.resetItemSize(),this.completeVisualOption()},resetVisual:function(t){var e=this.stateList;t=m(t,this),this.controllerVisuals=cv(this.option.controller,e,t),this.targetVisuals=cv(this.option.target,e,t)},getTargetSeriesIndices:function(){var t=this.option.seriesIndex,e=[];return null==t||"all"===t?this.ecModel.eachSeries(function(t,i){e.push(i)}):e=Si(t),e},eachTargetSeries:function(t,e){d(this.getTargetSeriesIndices(),function(i){t.call(e,this.ecModel.getSeriesByIndex(i))},this)},isTargetSeries:function(t){var e=!1;return this.eachTargetSeries(function(i){i===t&&(e=!0)}),e},formatValueText:function(t,e,i){function n(t){return t===l[0]?"min":t===l[1]?"max":(+t).toFixed(Math.min(s,20))}var o,a,r=this.option,s=r.precision,l=this.dataBound,u=r.formatter;return i=i||["<",">"],y(t)&&(t=t.slice(),o=!0),a=e?t:o?[n(t[0]),n(t[1])]:n(t),_(u)?u.replace("{value}",o?a[0]:a).replace("{value2}",o?a[1]:a):x(u)?o?u(t[0],t[1]):u(t):o?t[0]===l[0]?i[0]+" "+a[1]:t[1]===l[1]?i[1]+" "+a[0]:a[0]+" - "+a[1]:a},resetExtent:function(){var t=this.option,e=iN([t.min,t.max]);this._dataExtent=e},getDataDimension:function(t){var e=this.option.dimension,i=t.dimensions;if(null!=e||i.length){if(null!=e)return t.getDimension(e);for(var n=t.dimensions,o=n.length-1;o>=0;o--){var a=n[o];if(!t.getDimensionInfo(a).isCalculationCoord)return a}}},getExtent:function(){return this._dataExtent.slice()},completeVisualOption:function(){function t(t){tN(o.color)&&!t.inRange&&(t.inRange={color:o.color.slice().reverse()}),t.inRange=t.inRange||{color:e.get("gradientColor")},eN(this.stateList,function(e){var i=t[e];if(_(i)){var n=KP.get(i,"active",l);n?(t[e]={},t[e][i]=n):delete t[e]}},this)}var e=this.ecModel,o=this.option,a={inRange:o.inRange,outOfRange:o.outOfRange},r=o.target||(o.target={}),s=o.controller||(o.controller={});n(r,a),n(s,a);var l=this.isCategory();t.call(this,r),t.call(this,s),function(t,e,i){var n=t[e],o=t[i];n&&!o&&(o=t[i]={},eN(n,function(t,e){if(HA.isValidType(e)){var i=KP.get(e,"inactive",l);null!=i&&(o[e]=i,"color"!==e||o.hasOwnProperty("opacity")||o.hasOwnProperty("colorAlpha")||(o.opacity=[0,0]))}}))}.call(this,r,"inRange","outOfRange"),function(t){var e=(t.inRange||{}).symbol||(t.outOfRange||{}).symbol,n=(t.inRange||{}).symbolSize||(t.outOfRange||{}).symbolSize,o=this.get("inactiveColor");eN(this.stateList,function(a){var r=this.itemSize,s=t[a];s||(s=t[a]={color:l?o:[o]}),null==s.symbol&&(s.symbol=e&&i(e)||(l?"roundRect":["roundRect"])),null==s.symbolSize&&(s.symbolSize=n&&i(n)||(l?r[0]:[r[0],r[0]])),s.symbol=JP(s.symbol,function(t){return"none"===t||"square"===t?"roundRect":t});var u=s.symbolSize;if(null!=u){var h=-1/0;QP(u,function(t){t>h&&(h=t)}),s.symbolSize=JP(u,function(t){return nN(t,[0,h],[0,r[0]],!0)})}},this)}.call(this,s)},resetItemSize:function(){this.itemSize=[parseFloat(this.get("itemWidth")),parseFloat(this.get("itemHeight"))]},isCategory:function(){return!!this.option.categories},setSelected:oN,getValueState:oN,getVisualMeta:oN}),rN=[20,140],sN=aN.extend({type:"visualMap.continuous",defaultOption:{align:"auto",calculable:!1,range:null,realtime:!0,itemHeight:null,itemWidth:null,hoverLink:!0,hoverLinkDataSize:null,hoverLinkOnHandle:null},optionUpdated:function(t,e){sN.superApply(this,"optionUpdated",arguments),this.resetExtent(),this.resetVisual(function(t){t.mappingMethod="linear",t.dataExtent=this.getExtent()}),this._resetRange()},resetItemSize:function(){sN.superApply(this,"resetItemSize",arguments);var t=this.itemSize;"horizontal"===this._orient&&t.reverse(),(null==t[0]||isNaN(t[0]))&&(t[0]=rN[0]),(null==t[1]||isNaN(t[1]))&&(t[1]=rN[1])},_resetRange:function(){var t=this.getExtent(),e=this.option.range;!e||e.auto?(t.auto=1,this.option.range=t):y(e)&&(e[0]>e[1]&&e.reverse(),e[0]=Math.max(e[0],t[0]),e[1]=Math.min(e[1],t[1]))},completeVisualOption:function(){aN.prototype.completeVisualOption.apply(this,arguments),d(this.stateList,function(t){var e=this.option.controller[t].symbolSize;e&&e[0]!==e[1]&&(e[0]=0)},this)},setSelected:function(t){this.option.range=t.slice(),this._resetRange()},getSelected:function(){var t=this.getExtent(),e=Co((this.get("range")||[]).slice());return e[0]>t[1]&&(e[0]=t[1]),e[1]>t[1]&&(e[1]=t[1]),e[0]=i[1]||t<=e[1])?"inRange":"outOfRange"},findTargetDataIndices:function(t){var e=[];return this.eachTargetSeries(function(i){var n=[],o=i.getData();o.each(this.getDataDimension(o),function(e,i){t[0]<=e&&e<=t[1]&&n.push(i)},this),e.push({seriesId:i.id,dataIndex:n})},this),e},getVisualMeta:function(t){function e(e,i){o.push({value:e,color:t(e,i)})}for(var i=dy(0,0,this.getExtent()),n=dy(0,0,this.option.range.slice()),o=[],a=0,r=0,s=n.length,l=i.length;rt[1])break;i.push({color:this.getControllerVisual(a,"color",e),offset:o/100})}return i.push({color:this.getControllerVisual(t[1],"color",e),offset:1}),i},_createBarPoints:function(t,e){var i=this.visualMapModel.itemSize;return[[i[0]-e[0],t[0]],[i[0],t[0]],[i[0],t[1]],[i[0]-e[1],t[1]]]},_createBarGroup:function(t){var e=this._orient,i=this.visualMapModel.get("inverse");return new rw("horizontal"!==e||i?"horizontal"===e&&i?{scale:"bottom"===t?[-1,1]:[1,1],rotation:-Math.PI/2}:"vertical"!==e||i?{scale:"left"===t?[1,1]:[-1,1]}:{scale:"left"===t?[1,-1]:[-1,-1]}:{scale:"bottom"===t?[1,1]:[-1,1],rotation:Math.PI/2})},_updateHandle:function(t,e){if(this._useHandle){var i=this._shapes,n=this.visualMapModel,o=i.handleThumbs,a=i.handleLabels;hN([0,1],function(r){var s=o[r];s.setStyle("fill",e.handlesColor[r]),s.position[1]=t[r];var l=mo(i.handleLabelPoints[r],go(s,this.group));a[r].setStyle({x:l[0],y:l[1],text:n.formatValueText(this._dataInterval[r]),textVerticalAlign:"middle",textAlign:this._applyTransform("horizontal"===this._orient?0===r?"bottom":"top":"left",i.barGroup)})},this)}},_showIndicator:function(t,e,i,n){var o=this.visualMapModel,a=o.getExtent(),r=o.itemSize,s=[0,r[1]],l=uN(t,a,s,!0),u=this._shapes,h=u.indicator;if(h){h.position[1]=l,h.attr("invisible",!1),h.setShape("points",vy(!!i,n,l,r[1]));var c={convertOpacityToAlpha:!0},d=this.getControllerVisual(t,"color",c);h.setStyle("fill",d);var f=mo(u.indicatorLabelPoint,go(h,this.group)),p=u.indicatorLabel;p.attr("invisible",!1);var g=this._applyTransform("left",u.barGroup),m=this._orient;p.setStyle({text:(i||"")+o.formatValueText(e),textVerticalAlign:"horizontal"===m?g:"middle",textAlign:"horizontal"===m?"center":g,x:f[0],y:f[1]})}},_enableHoverLinkToSeries:function(){var t=this;this._shapes.barGroup.on("mousemove",function(e){if(t._hovering=!0,!t._dragging){var i=t.visualMapModel.itemSize,n=t._applyTransform([e.offsetX,e.offsetY],t._shapes.barGroup,!0,!0);n[1]=cN(dN(0,n[1]),i[1]),t._doHoverLinkToSeries(n[1],0<=n[0]&&n[0]<=i[0])}}).on("mouseout",function(){t._hovering=!1,!t._dragging&&t._clearHoverLinkToSeries()})},_enableHoverLinkFromSeries:function(){var t=this.api.getZr();this.visualMapModel.option.hoverLink?(t.on("mouseover",this._hoverLinkFromSeriesMouseOver,this),t.on("mouseout",this._hideIndicator,this)):this._clearHoverLinkFromSeries()},_doHoverLinkToSeries:function(t,e){var i=this.visualMapModel,n=i.itemSize;if(i.option.hoverLink){var o=[0,n[1]],a=i.getExtent();t=cN(dN(o[0],t),o[1]);var r=yy(i,a,o),s=[t-r,t+r],l=uN(t,o,a,!0),u=[uN(s[0],o,a,!0),uN(s[1],o,a,!0)];s[0]o[1]&&(u[1]=1/0),e&&(u[0]===-1/0?this._showIndicator(l,u[1],"< ",r):u[1]===1/0?this._showIndicator(l,u[0],"> ",r):this._showIndicator(l,l,"≈ ",r));var h=this._hoverLinkDataIndices,c=[];(e||xy(i))&&(c=this._hoverLinkDataIndices=i.findTargetDataIndices(u));var d=ki(h,c);this._dispatchHighDown("downplay",py(d[0])),this._dispatchHighDown("highlight",py(d[1]))}},_hoverLinkFromSeriesMouseOver:function(t){var e=t.target,i=this.visualMapModel;if(e&&null!=e.dataIndex){var n=this.ecModel.getSeriesByIndex(e.seriesIndex);if(i.isTargetSeries(n)){var o=n.getData(e.dataType),a=o.get(i.getDataDimension(o),e.dataIndex,!0);isNaN(a)||this._showIndicator(a,a)}}},_hideIndicator:function(){var t=this._shapes;t.indicator&&t.indicator.attr("invisible",!0),t.indicatorLabel&&t.indicatorLabel.attr("invisible",!0)},_clearHoverLinkToSeries:function(){this._hideIndicator();var t=this._hoverLinkDataIndices;this._dispatchHighDown("downplay",py(t)),t.length=0},_clearHoverLinkFromSeries:function(){this._hideIndicator();var t=this.api.getZr();t.off("mouseover",this._hoverLinkFromSeriesMouseOver),t.off("mouseout",this._hideIndicator)},_applyTransform:function(t,e,i,n){var o=go(e,n?null:this.group);return zS[y(t)?"applyTransform":"transformDirection"](t,o,i)},_dispatchHighDown:function(t,e){e&&e.length&&this.api.dispatchAction({type:t,batch:e})},dispose:function(){this._clearHoverLinkFromSeries(),this._clearHoverLinkToSeries()},remove:function(){this._clearHoverLinkFromSeries(),this._clearHoverLinkToSeries()}});cs({type:"selectDataRange",event:"dataRangeSelected",update:"update"},function(t,e){e.eachComponent({mainType:"visualMap",query:t},function(e){e.setSelected(t.selected)})}),us(YP);var mN=aN.extend({type:"visualMap.piecewise",defaultOption:{selected:null,minOpen:!1,maxOpen:!1,align:"auto",itemWidth:20,itemHeight:14,itemSymbol:"roundRect",pieceList:null,categories:null,splitNumber:5,selectedMode:"multiple",itemGap:10,hoverLink:!0,showLabel:null},optionUpdated:function(t,e){mN.superApply(this,"optionUpdated",arguments),this._pieceList=[],this.resetExtent();var n=this._mode=this._determineMode();vN[this._mode].call(this),this._resetSelected(t,e);var o=this.option.categories;this.resetVisual(function(t,e){"categories"===n?(t.mappingMethod="category",t.categories=i(o)):(t.dataExtent=this.getExtent(),t.mappingMethod="piecewise",t.pieceList=f(this._pieceList,function(t){var t=i(t);return"inRange"!==e&&(t.visual=null),t}))})},completeVisualOption:function(){function t(t,e,i){return t&&t[e]&&(w(t[e])?t[e].hasOwnProperty(i):t[e]===i)}var e=this.option,i={},n=HA.listVisualTypes(),o=this.isCategory();d(e.pieces,function(t){d(n,function(e){t.hasOwnProperty(e)&&(i[e]=1)})}),d(i,function(i,n){var a=0;d(this.stateList,function(i){a|=t(e,i,n)||t(e.target,i,n)},this),!a&&d(this.stateList,function(t){(e[t]||(e[t]={}))[n]=KP.get(n,"inRange"===t?"active":"inactive",o)})},this),aN.prototype.completeVisualOption.apply(this,arguments)},_resetSelected:function(t,e){var i=this.option,n=this._pieceList,o=(e?i:t).selected||{};if(i.selected=o,d(n,function(t,e){var i=this.getSelectedMapKey(t);o.hasOwnProperty(i)||(o[i]=!0)},this),"single"===i.selectedMode){var a=!1;d(n,function(t,e){var i=this.getSelectedMapKey(t);o[i]&&(a?o[i]=!1:a=!0)},this)}},getSelectedMapKey:function(t){return"categories"===this._mode?t.value+"":t.index+""},getPieceList:function(){return this._pieceList},_determineMode:function(){var t=this.option;return t.pieces&&t.pieces.length>0?"pieces":this.option.categories?"categories":"splitNumber"},setSelected:function(t){this.option.selected=i(t)},getValueState:function(t){var e=HA.findPieceIndex(t,this._pieceList);return null!=e&&this.option.selected[this.getSelectedMapKey(this._pieceList[e])]?"inRange":"outOfRange"},findTargetDataIndices:function(t){var e=[];return this.eachTargetSeries(function(i){var n=[],o=i.getData();o.each(this.getDataDimension(o),function(e,i){HA.findPieceIndex(e,this._pieceList)===t&&n.push(i)},this),e.push({seriesId:i.id,dataIndex:n})},this),e},getRepresentValue:function(t){var e;if(this.isCategory())e=t.value;else if(null!=t.value)e=t.value;else{var i=t.interval||[];e=i[0]===-1/0&&i[1]===1/0?0:(i[0]+i[1])/2}return e},getVisualMeta:function(t){function e(e,a){var r=o.getRepresentValue({interval:e});a||(a=o.getValueState(r));var s=t(r,a);e[0]===-1/0?n[0]=s:e[1]===1/0?n[1]=s:i.push({value:e[0],color:s},{value:e[1],color:s})}if(!this.isCategory()){var i=[],n=[],o=this,a=this._pieceList.slice();if(a.length){var r=a[0].interval[0];r!==-1/0&&a.unshift({interval:[-1/0,r]}),(r=a[a.length-1].interval[1])!==1/0&&a.push({interval:[r,1/0]})}else a.push({interval:[-1/0,1/0]});var s=-1/0;return d(a,function(t){var i=t.interval;i&&(i[0]>s&&e([s,i[0]],"outOfRange"),e(i.slice()),s=i[1])},this),{stops:i,outerColors:n}}}}),vN={splitNumber:function(){var t=this.option,e=this._pieceList,i=Math.min(t.precision,20),n=this.getExtent(),o=t.splitNumber;o=Math.max(parseInt(o,10),1),t.splitNumber=o;for(var a=(n[1]-n[0])/o;+a.toFixed(i)!==a&&i<5;)i++;t.precision=i,a=+a.toFixed(i);var r=0;t.minOpen&&e.push({index:r++,interval:[-1/0,n[0]],close:[0,0]});for(var s=n[0],l=r+o;r","≥"][e[0]]];t.text=t.text||this.formatValueText(null!=t.value?t.value:t.interval,!1,i)},this)}};lN.extend({type:"visualMap.piecewise",doRender:function(){var t=this.group;t.removeAll();var e=this.visualMapModel,i=e.get("textGap"),n=e.textStyleModel,o=n.getFont(),a=n.getTextColor(),r=this._getItemAlign(),s=e.itemSize,l=this._getViewData(),u=l.endsText,h=T(e.get("showLabel",!0),!u);u&&this._renderEndsText(t,u[0],s,h,r),d(l.viewPieceList,function(n){var l=n.piece,u=new rw;u.onclick=m(this._onItemClick,this,l),this._enableHoverLink(u,n.indexInModelPieceList);var c=e.getRepresentValue(l);if(this._createItemSymbol(u,c,[0,0,s[0],s[1]]),h){var d=this.visualMapModel.getValueState(c);u.add(new dS({style:{x:"right"===r?-i:s[0]+i,y:s[1]/2,text:l.text,textVerticalAlign:"middle",textAlign:r,textFont:o,textFill:a,opacity:"outOfRange"===d?.5:1}}))}t.add(u)},this),u&&this._renderEndsText(t,u[1],s,h,r),rM(e.get("orient"),t,e.get("itemGap")),this.renderBackground(t),this.positionGroup(t)},_enableHoverLink:function(t,e){function i(t){var i=this.visualMapModel;i.option.hoverLink&&this.api.dispatchAction({type:t,batch:py(i.findTargetDataIndices(e))})}t.on("mouseover",m(i,this,"highlight")).on("mouseout",m(i,this,"downplay"))},_getItemAlign:function(){var t=this.visualMapModel,e=t.option;if("vertical"===e.orient)return fy(t,this.api,t.itemSize);var i=e.align;return i&&"auto"!==i||(i="left"),i},_renderEndsText:function(t,e,i,n,o){if(e){var a=new rw,r=this.visualMapModel.textStyleModel;a.add(new dS({style:{x:n?"right"===o?i[0]:0:i[0]/2,y:i[1]/2,textVerticalAlign:"middle",textAlign:n?o:"center",text:e,textFont:r.getFont(),textFill:r.getTextColor()}})),t.add(a)}},_getViewData:function(){var t=this.visualMapModel,e=f(t.getPieceList(),function(t,e){return{piece:t,indexInModelPieceList:e}}),i=t.get("text"),n=t.get("orient"),o=t.get("inverse");return("horizontal"===n?o:!o)?e.reverse():i&&(i=i.slice().reverse()),{viewPieceList:e,endsText:i}},_createItemSymbol:function(t,e,i){t.add(Il(this.getControllerVisual(e,"symbol"),i[0],i[1],i[2],i[3],this.getControllerVisual(e,"color")))},_onItemClick:function(t){var e=this.visualMapModel,n=e.option,o=i(n.selected),a=e.getSelectedMapKey(t);"single"===n.selectedMode?(o[a]=!0,d(o,function(t,e){o[e]=e===a})):o[a]=!o[a],this.api.dispatchAction({type:"selectDataRange",from:this.uid,visualMapId:this.visualMapModel.id,selected:o})}});us(YP);var yN=Fo,xN=Zo,_N=vs({type:"marker",dependencies:["series","grid","polar","geo"],init:function(t,e,i,n){this.mergeDefaultAndTheme(t,i),this.mergeOption(t,i,n.createdBySelf,!0)},isAnimationEnabled:function(){if(o_.node)return!1;var t=this.__hostSeries;return this.getShallow("animation")&&t&&t.isAnimationEnabled()},mergeOption:function(t,e,i,n){var o=this.constructor,r=this.mainType+"Model";i||e.eachSeries(function(t){var i=t.get(this.mainType,!0),s=t[r];i&&i.data?(s?s.mergeOption(i,e,!0):(n&&by(i),d(i.data,function(t){t instanceof Array?(by(t[0]),by(t[1])):by(t)}),a(s=new o(i,this,e),{mainType:this.mainType,seriesIndex:t.seriesIndex,name:t.name,createdBySelf:!0}),s.__hostSeries=t),t[r]=s):t[r]=null},this)},formatTooltip:function(t){var e=this.getData(),i=this.getRawValue(t),n=y(i)?f(i,yN).join(", "):yN(i),o=e.getName(t),a=xN(this.name);return(null!=i||o)&&(a+="
"),o&&(a+=xN(o),null!=i&&(a+=" : ")),null!=i&&(a+=xN(n)),a},getData:function(){return this._data},setData:function(t){this._data=t}});h(_N,UM),_N.extend({type:"markPoint",defaultOption:{zlevel:0,z:5,symbol:"pin",symbolSize:50,tooltip:{trigger:"item"},label:{show:!0,position:"inside"},itemStyle:{borderWidth:2},emphasis:{label:{show:!0}}}});var wN=l,bN=v,SN={min:bN(Iy,"min"),max:bN(Iy,"max"),average:bN(Iy,"average")},MN=ys({type:"marker",init:function(){this.markerGroupMap=R()},render:function(t,e,i){var n=this.markerGroupMap;n.each(function(t){t.__keep=!1});var o=this.type+"Model";e.eachSeries(function(t){var n=t[o];n&&this.renderSeries(t,n,e,i)},this),n.each(function(t){!t.__keep&&this.group.remove(t.group)},this)},renderSeries:function(){}});MN.extend({type:"markPoint",updateTransform:function(t,e,i){e.eachSeries(function(t){var e=t.markPointModel;e&&(Py(e.getData(),t,i),this.markerGroupMap.get(t.id).updateLayout(e))},this)},renderSeries:function(t,e,i,n){var o=t.coordinateSystem,a=t.id,r=t.getData(),s=this.markerGroupMap,l=s.get(a)||s.set(a,new $l),u=Ny(o,t,e);e.setData(u),Py(e.getData(),t,n),u.each(function(t){var i=u.getItemModel(t),n=i.getShallow("symbolSize");"function"==typeof n&&(n=n(e.getRawValue(t),e.getDataParams(t))),u.setItemVisual(t,{symbolSize:n,color:i.get("itemStyle.color")||r.getVisual("color"),symbol:i.getShallow("symbol")})}),l.updateData(u),this.group.add(l.group),u.eachItemGraphicEl(function(t){t.traverse(function(t){t.dataModel=e})}),l.__keep=!0,l.group.silent=e.get("silent")||t.get("silent")}}),us(function(t){t.markPoint=t.markPoint||{}}),_N.extend({type:"markLine",defaultOption:{zlevel:0,z:5,symbol:["circle","arrow"],symbolSize:[8,16],precision:2,tooltip:{trigger:"item"},label:{show:!0,position:"end"},lineStyle:{type:"dashed"},emphasis:{label:{show:!0},lineStyle:{width:3}},animationEasing:"linear"}});var IN=function(t,e,o,r){var s=t.getData(),l=r.type;if(!y(r)&&("min"===l||"max"===l||"average"===l||"median"===l||null!=r.xAxis||null!=r.yAxis)){var u,h;if(null!=r.yAxis||null!=r.xAxis)u=null!=r.yAxis?"y":"x",e.getAxis(u),h=T(r.yAxis,r.xAxis);else{var c=Dy(r,s,e,t);u=c.valueDataDim,c.valueAxis,h=ky(s,u,l)}var d="x"===u?0:1,f=1-d,p=i(r),g={};p.type=null,p.coord=[],g.coord=[],p.coord[f]=-1/0,g.coord[f]=1/0;var m=o.get("precision");m>=0&&"number"==typeof h&&(h=+h.toFixed(Math.min(m,20))),p.coord[d]=g.coord[d]=h,r=[p,g,{type:l,valueIndex:r.valueIndex,value:h}]}return r=[Ty(t,r[0]),Ty(t,r[1]),a({},r[2])],r[2].type=r[2].type||"",n(r[2],r[0]),n(r[2],r[1]),r};MN.extend({type:"markLine",updateTransform:function(t,e,i){e.eachSeries(function(t){var e=t.markLineModel;if(e){var n=e.getData(),o=e.__from,a=e.__to;o.each(function(e){zy(o,e,!0,t,i),zy(a,e,!1,t,i)}),n.each(function(t){n.setItemLayout(t,[o.getItemLayout(t),a.getItemLayout(t)])}),this.markerGroupMap.get(t.id).updateLayout()}},this)},renderSeries:function(t,e,i,n){function o(e,i,o){var a=e.getItemModel(i);zy(e,i,o,t,n),e.setItemVisual(i,{symbolSize:a.get("symbolSize")||g[o?0:1],symbol:a.get("symbol",!0)||p[o?0:1],color:a.get("itemStyle.color")||s.getVisual("color")})}var a=t.coordinateSystem,r=t.id,s=t.getData(),l=this.markerGroupMap,u=l.get(r)||l.set(r,new bd);this.group.add(u.group);var h=By(a,t,e),c=h.from,d=h.to,f=h.line;e.__from=c,e.__to=d,e.setData(f);var p=e.get("symbol"),g=e.get("symbolSize");y(p)||(p=[p,p]),"number"==typeof g&&(g=[g,g]),h.from.each(function(t){o(c,t,!0),o(d,t,!1)}),f.each(function(t){var e=f.getItemModel(t).get("lineStyle.color");f.setItemVisual(t,{color:e||c.getItemVisual(t,"color")}),f.setItemLayout(t,[c.getItemLayout(t),d.getItemLayout(t)]),f.setItemVisual(t,{fromSymbolSize:c.getItemVisual(t,"symbolSize"),fromSymbol:c.getItemVisual(t,"symbol"),toSymbolSize:d.getItemVisual(t,"symbolSize"),toSymbol:d.getItemVisual(t,"symbol")})}),u.updateData(f),h.line.eachItemGraphicEl(function(t,i){t.traverse(function(t){t.dataModel=e})}),u.__keep=!0,u.group.silent=e.get("silent")||t.get("silent")}}),us(function(t){t.markLine=t.markLine||{}}),_N.extend({type:"markArea",defaultOption:{zlevel:0,z:1,tooltip:{trigger:"item"},animation:!1,label:{show:!0,position:"top"},itemStyle:{borderWidth:0},emphasis:{label:{show:!0,position:"top"}}}});var TN=function(t,e,i,n){var a=Ty(t,n[0]),r=Ty(t,n[1]),s=T,l=a.coord,u=r.coord;l[0]=s(l[0],-1/0),l[1]=s(l[1],-1/0),u[0]=s(u[0],1/0),u[1]=s(u[1],1/0);var h=o([{},a,r]);return h.coord=[a.coord,r.coord],h.x0=a.x,h.y0=a.y,h.x1=r.x,h.y1=r.y,h},DN=[["x0","y0"],["x1","y0"],["x1","y1"],["x0","y1"]];MN.extend({type:"markArea",updateTransform:function(t,e,i){e.eachSeries(function(t){var e=t.markAreaModel;if(e){var n=e.getData();n.each(function(e){var o=f(DN,function(o){return Fy(n,e,o,t,i)});n.setItemLayout(e,o),n.getItemGraphicEl(e).setShape("points",o)})}},this)},renderSeries:function(t,e,i,n){var o=t.coordinateSystem,a=t.id,s=t.getData(),l=this.markerGroupMap,u=l.get(a)||l.set(a,{group:new rw});this.group.add(u.group),u.__keep=!0;var h=Hy(o,t,e);e.setData(h),h.each(function(e){h.setItemLayout(e,f(DN,function(i){return Fy(h,e,i,t,n)})),h.setItemVisual(e,{color:s.getVisual("color")})}),h.diff(u.__data).add(function(t){var e=new _S({shape:{points:h.getItemLayout(t)}});h.setItemGraphicEl(t,e),u.group.add(e)}).update(function(t,i){var n=u.__data.getItemGraphicEl(i);fo(n,{shape:{points:h.getItemLayout(t)}},e,t),u.group.add(n),h.setItemGraphicEl(t,n)}).remove(function(t){var e=u.__data.getItemGraphicEl(t);u.group.remove(e)}).execute(),h.eachItemGraphicEl(function(t,i){var n=h.getItemModel(i),o=n.getModel("label"),a=n.getModel("emphasis.label"),s=h.getItemVisual(i,"color");t.useStyle(r(n.getModel("itemStyle").getItemStyle(),{fill:Rt(s,.4),stroke:s})),t.hoverStyle=n.getModel("emphasis.itemStyle").getItemStyle(),io(t.style,t.hoverStyle,o,a,{labelFetcher:e,labelDataIndex:i,defaultText:h.getName(i)||"",isRectText:!0,autoColor:s}),eo(t,{}),t.dataModel=e}),u.__data=h,u.group.silent=e.get("silent")||t.get("silent")}}),us(function(t){t.markArea=t.markArea||{}});uM.registerSubTypeDefaulter("timeline",function(){return"slider"}),cs({type:"timelineChange",event:"timelineChanged",update:"prepareAndUpdate"},function(t,e){var i=e.getComponent("timeline");return i&&null!=t.currentIndex&&(i.setCurrentIndex(t.currentIndex),!i.get("loop",!0)&&i.isIndexMax()&&i.setPlayState(!1)),e.resetOption("timeline"),r({currentIndex:i.option.currentIndex},t)}),cs({type:"timelinePlayChange",event:"timelinePlayChanged",update:"update"},function(t,e){var i=e.getComponent("timeline");i&&null!=t.playState&&i.setPlayState(t.playState)});var AN=uM.extend({type:"timeline",layoutMode:"box",defaultOption:{zlevel:0,z:4,show:!0,axisType:"time",realtime:!0,left:"20%",top:null,right:"20%",bottom:0,width:null,height:40,padding:5,controlPosition:"left",autoPlay:!1,rewind:!1,loop:!0,playInterval:2e3,currentIndex:0,itemStyle:{},label:{color:"#000"},data:[]},init:function(t,e,i){this._data,this._names,this.mergeDefaultAndTheme(t,i),this._initData()},mergeOption:function(t){AN.superApply(this,"mergeOption",arguments),this._initData()},setCurrentIndex:function(t){null==t&&(t=this.option.currentIndex);var e=this._data.count();this.option.loop?t=(t%e+e)%e:(t>=e&&(t=e-1),t<0&&(t=0)),this.option.currentIndex=t},getCurrentIndex:function(){return this.option.currentIndex},isIndexMax:function(){return this.getCurrentIndex()>=this._data.count()-1},setPlayState:function(t){this.option.autoPlay=!!t},getPlayState:function(){return!!this.option.autoPlay},_initData:function(){var t=this.option,e=t.data||[],n=t.axisType,o=this._names=[];if("category"===n){var a=[];d(e,function(t,e){var n,r=Ii(t);w(t)?(n=i(t)).value=e:n=e,a.push(n),_(r)||null!=r&&!isNaN(r)||(r=""),o.push(r+"")}),e=a}var r={category:"ordinal",time:"time"}[n]||"number";(this._data=new rT([{name:"value",type:r}],this)).initData(e,o)},getData:function(){return this._data},getCategories:function(){if("category"===this.get("axisType"))return this._names.slice()}});h(AN.extend({type:"timeline.slider",defaultOption:{backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",borderWidth:0,orient:"horizontal",inverse:!1,tooltip:{trigger:"item"},symbol:"emptyCircle",symbolSize:10,lineStyle:{show:!0,width:2,color:"#304654"},label:{position:"auto",show:!0,interval:"auto",rotate:0,color:"#304654"},itemStyle:{color:"#304654",borderWidth:1},checkpointStyle:{symbol:"circle",symbolSize:13,color:"#c23531",borderWidth:5,borderColor:"rgba(194,53,49, 0.5)",animation:!0,animationDuration:300,animationEasing:"quinticInOut"},controlStyle:{show:!0,showPlayBtn:!0,showPrevBtn:!0,showNextBtn:!0,itemSize:22,itemGap:12,position:"left",playIcon:"path://M31.6,53C17.5,53,6,41.5,6,27.4S17.5,1.8,31.6,1.8C45.7,1.8,57.2,13.3,57.2,27.4S45.7,53,31.6,53z M31.6,3.3 C18.4,3.3,7.5,14.1,7.5,27.4c0,13.3,10.8,24.1,24.1,24.1C44.9,51.5,55.7,40.7,55.7,27.4C55.7,14.1,44.9,3.3,31.6,3.3z M24.9,21.3 c0-2.2,1.6-3.1,3.5-2l10.5,6.1c1.899,1.1,1.899,2.9,0,4l-10.5,6.1c-1.9,1.1-3.5,0.2-3.5-2V21.3z",stopIcon:"path://M30.9,53.2C16.8,53.2,5.3,41.7,5.3,27.6S16.8,2,30.9,2C45,2,56.4,13.5,56.4,27.6S45,53.2,30.9,53.2z M30.9,3.5C17.6,3.5,6.8,14.4,6.8,27.6c0,13.3,10.8,24.1,24.101,24.1C44.2,51.7,55,40.9,55,27.6C54.9,14.4,44.1,3.5,30.9,3.5z M36.9,35.8c0,0.601-0.4,1-0.9,1h-1.3c-0.5,0-0.9-0.399-0.9-1V19.5c0-0.6,0.4-1,0.9-1H36c0.5,0,0.9,0.4,0.9,1V35.8z M27.8,35.8 c0,0.601-0.4,1-0.9,1h-1.3c-0.5,0-0.9-0.399-0.9-1V19.5c0-0.6,0.4-1,0.9-1H27c0.5,0,0.9,0.4,0.9,1L27.8,35.8L27.8,35.8z",nextIcon:"path://M18.6,50.8l22.5-22.5c0.2-0.2,0.3-0.4,0.3-0.7c0-0.3-0.1-0.5-0.3-0.7L18.7,4.4c-0.1-0.1-0.2-0.3-0.2-0.5 c0-0.4,0.3-0.8,0.8-0.8c0.2,0,0.5,0.1,0.6,0.3l23.5,23.5l0,0c0.2,0.2,0.3,0.4,0.3,0.7c0,0.3-0.1,0.5-0.3,0.7l-0.1,0.1L19.7,52 c-0.1,0.1-0.3,0.2-0.5,0.2c-0.4,0-0.8-0.3-0.8-0.8C18.4,51.2,18.5,51,18.6,50.8z",prevIcon:"path://M43,52.8L20.4,30.3c-0.2-0.2-0.3-0.4-0.3-0.7c0-0.3,0.1-0.5,0.3-0.7L42.9,6.4c0.1-0.1,0.2-0.3,0.2-0.5 c0-0.4-0.3-0.8-0.8-0.8c-0.2,0-0.5,0.1-0.6,0.3L18.3,28.8l0,0c-0.2,0.2-0.3,0.4-0.3,0.7c0,0.3,0.1,0.5,0.3,0.7l0.1,0.1L41.9,54 c0.1,0.1,0.3,0.2,0.5,0.2c0.4,0,0.8-0.3,0.8-0.8C43.2,53.2,43.1,53,43,52.8z",color:"#304654",borderColor:"#304654",borderWidth:1},emphasis:{label:{show:!0,color:"#c23531"},itemStyle:{color:"#c23531"},controlStyle:{color:"#c23531",borderColor:"#c23531",borderWidth:2}},data:[]}}),UM);var CN=KM.extend({type:"timeline"}),LN=function(t,e,i,n){YT.call(this,t,e,i),this.type=n||"value",this.model=null};LN.prototype={constructor:LN,getLabelModel:function(){return this.model.getModel("label")},isHorizontal:function(){return"horizontal"===this.model.get("orient")}},u(LN,YT);var kN=m,PN=d,NN=Math.PI;CN.extend({type:"timeline.slider",init:function(t,e){this.api=e,this._axis,this._viewRect,this._timer,this._currentPointer,this._mainGroup,this._labelGroup},render:function(t,e,i,n){if(this.model=t,this.api=i,this.ecModel=e,this.group.removeAll(),t.get("show",!0)){var o=this._layout(t,i),a=this._createGroup("mainGroup"),r=this._createGroup("labelGroup"),s=this._axis=this._createAxis(o,t);t.formatTooltip=function(t){return Zo(s.scale.getLabel(t))},PN(["AxisLine","AxisTick","Control","CurrentPointer"],function(e){this["_render"+e](o,a,s,t)},this),this._renderAxisLabel(o,r,s,t),this._position(o,t)}this._doPlayStop()},remove:function(){this._clearTimer(),this.group.removeAll()},dispose:function(){this._clearTimer()},_layout:function(t,e){var i=t.get("label.position"),n=t.get("orient"),o=jy(t,e);null==i||"auto"===i?i="horizontal"===n?o.y+o.height/2=0||"+"===i?"left":"right"},r={horizontal:i>=0||"+"===i?"top":"bottom",vertical:"middle"},s={horizontal:0,vertical:NN/2},l="vertical"===n?o.height:o.width,u=t.getModel("controlStyle"),h=u.get("show",!0),c=h?u.get("itemSize"):0,d=h?u.get("itemGap"):0,f=c+d,p=t.get("label.rotate")||0;p=p*NN/180;var g,m,v,y,x=u.get("position",!0),_=h&&u.get("showPlayBtn",!0),w=h&&u.get("showPrevBtn",!0),b=h&&u.get("showNextBtn",!0),S=0,M=l;return"left"===x||"bottom"===x?(_&&(g=[0,0],S+=f),w&&(m=[S,0],S+=f),b&&(v=[M-c,0],M-=f)):(_&&(g=[M-c,0],M-=f),w&&(m=[0,0],S+=f),b&&(v=[M-c,0],M-=f)),y=[S,M],t.get("inverse")&&y.reverse(),{viewRect:o,mainLength:l,orient:n,rotation:s[n],labelRotation:p,labelPosOpt:i,labelAlign:t.get("label.align")||a[n],labelBaseline:t.get("label.verticalAlign")||t.get("label.baseline")||r[n],playPosition:g,prevBtnPosition:m,nextBtnPosition:v,axisExtent:y,controlSize:c,controlGap:d}},_position:function(t,e){function i(t){var e=t.position;t.origin=[c[0][0]-e[0],c[1][0]-e[1]]}function n(t){return[[t.x,t.x+t.width],[t.y,t.y+t.height]]}function o(t,e,i,n,o){t[n]+=i[n][o]-e[n][o]}var a=this._mainGroup,r=this._labelGroup,s=t.viewRect;if("vertical"===t.orient){var l=st(),u=s.x,h=s.y+s.height;ct(l,l,[-u,-h]),dt(l,l,-NN/2),ct(l,l,[u,h]),(s=s.clone()).applyTransform(l)}var c=n(s),d=n(a.getBoundingRect()),f=n(r.getBoundingRect()),p=a.position,g=r.position;g[0]=p[0]=c[0][0];var m=t.labelPosOpt;if(isNaN(m))o(p,d,c,1,v="+"===m?0:1),o(g,f,c,1,1-v);else{var v=m>=0?0:1;o(p,d,c,1,v),g[1]=p[1]+m}a.attr("position",p),r.attr("position",g),a.rotation=r.rotation=t.rotation,i(a),i(r)},_createAxis:function(t,e){var i=e.getData(),n=e.get("axisType"),o=yl(e,n);o.getTicks=function(){return i.mapArray(["value"],function(t){return t})};var a=i.getDataExtent("value");o.setExtent(a[0],a[1]),o.niceTicks();var r=new LN("value",o,t.axisExtent,n);return r.model=e,r},_createGroup:function(t){var e=this["_"+t]=new rw;return this.group.add(e),e},_renderAxisLine:function(t,e,i,n){var o=i.getExtent();n.get("lineStyle.show")&&e.add(new SS({shape:{x1:o[0],y1:0,x2:o[1],y2:0},style:a({lineCap:"round"},n.getModel("lineStyle").getLineStyle()),silent:!0,z2:1}))},_renderAxisTick:function(t,e,i,n){var o=n.getData(),a=i.scale.getTicks();PN(a,function(t){var a=i.dataToCoord(t),r=o.getItemModel(t),s=r.getModel("itemStyle"),l=r.getModel("emphasis.itemStyle"),u={position:[a,0],onclick:kN(this._changeTimeline,this,t)},h=qy(r,s,e,u);eo(h,l.getItemStyle()),r.get("tooltip")?(h.dataIndex=t,h.dataModel=n):h.dataIndex=h.dataModel=null},this)},_renderAxisLabel:function(t,e,i,n){if(i.getLabelModel().get("show")){var o=n.getData(),a=i.getViewLabels();PN(a,function(n){var a=n.tickValue,r=o.getItemModel(a),s=r.getModel("label"),l=r.getModel("emphasis.label"),u=i.dataToCoord(n.tickValue),h=new dS({position:[u,0],rotation:t.labelRotation-t.rotation,onclick:kN(this._changeTimeline,this,a),silent:!1});no(h.style,s,{text:n.formattedLabel,textAlign:t.labelAlign,textVerticalAlign:t.labelBaseline}),e.add(h),eo(h,no({},l))},this)}},_renderControl:function(t,e,i,n){function o(t,i,o,h){if(t){var c=Yy(n,i,u,{position:t,origin:[a/2,0],rotation:h?-r:0,rectHover:!0,style:s,onclick:o});e.add(c),eo(c,l)}}var a=t.controlSize,r=t.rotation,s=n.getModel("controlStyle").getItemStyle(),l=n.getModel("emphasis.controlStyle").getItemStyle(),u=[0,-a/2,a,a],h=n.getPlayState(),c=n.get("inverse",!0);o(t.nextBtnPosition,"controlStyle.nextIcon",kN(this._changeTimeline,this,c?"-":"+")),o(t.prevBtnPosition,"controlStyle.prevIcon",kN(this._changeTimeline,this,c?"+":"-")),o(t.playPosition,"controlStyle."+(h?"stopIcon":"playIcon"),kN(this._handlePlayClick,this,!h),!0)},_renderCurrentPointer:function(t,e,i,n){var o=n.getData(),a=n.getCurrentIndex(),r=o.getItemModel(a).getModel("checkpointStyle"),s=this,l={onCreate:function(t){t.draggable=!0,t.drift=kN(s._handlePointerDrag,s),t.ondragend=kN(s._handlePointerDragend,s),Ky(t,a,i,n,!0)},onUpdate:function(t){Ky(t,a,i,n)}};this._currentPointer=qy(r,r,this._mainGroup,{},this._currentPointer,l)},_handlePlayClick:function(t){this._clearTimer(),this.api.dispatchAction({type:"timelinePlayChange",playState:t,from:this.uid})},_handlePointerDrag:function(t,e,i){this._clearTimer(),this._pointerChangeTimeline([i.offsetX,i.offsetY])},_handlePointerDragend:function(t){this._pointerChangeTimeline([t.offsetX,t.offsetY],!0)},_pointerChangeTimeline:function(t,e){var i=this._toAxisCoord(t)[0],n=Co(this._axis.getExtent().slice());i>n[1]&&(i=n[1]),ii.getHeight()&&(n.textPosition="top",l=!0);var u=l?-5-o.height:s+8;a+o.width/2>i.getWidth()?(n.textPosition=["100%",u],n.textAlign="right"):a-o.width/2<0&&(n.textPosition=[0,u],n.textAlign="left")}})}},updateView:function(t,e,i,n){d(this._features,function(t){t.updateView&&t.updateView(t.model,e,i,n)})},remove:function(t,e){d(this._features,function(i){i.remove&&i.remove(t,e)}),this.group.removeAll()},dispose:function(t,e){d(this._features,function(i){i.dispose&&i.dispose(t,e)})}});var EN=sI.toolbox.saveAsImage;Jy.defaultOption={show:!0,icon:"M4.7,22.9L29.3,45.5L54.7,23.4M4.6,43.6L4.6,58L53.8,58L53.8,43.6M29.2,45.1L29.2,0",title:EN.title,type:"png",name:"",excludeComponents:["toolbox"],pixelRatio:1,lang:EN.lang.slice()},Jy.prototype.unusable=!o_.canvasSupported,Jy.prototype.onclick=function(t,e){var i=this.model,n=i.get("name")||t.get("title.0.text")||"echarts",o=document.createElement("a"),a=i.get("type",!0)||"png";o.download=n+"."+a,o.target="_blank";var r=e.getConnectedDataURL({type:a,backgroundColor:i.get("backgroundColor",!0)||t.get("backgroundColor")||"#fff",excludeComponents:i.get("excludeComponents"),pixelRatio:i.get("pixelRatio")});if(o.href=r,"function"!=typeof MouseEvent||o_.browser.ie||o_.browser.edge)if(window.navigator.msSaveOrOpenBlob){for(var s=atob(r.split(",")[1]),l=s.length,u=new Uint8Array(l);l--;)u[l]=s.charCodeAt(l);var h=new Blob([u]);window.navigator.msSaveOrOpenBlob(h,n+"."+a)}else{var c=i.get("lang"),d='';window.open().document.write(d)}else{var f=new MouseEvent("click",{view:window,bubbles:!0,cancelable:!1});o.dispatchEvent(f)}},zv("saveAsImage",Jy);var RN=sI.toolbox.magicType;Qy.defaultOption={show:!0,type:[],icon:{line:"M4.1,28.9h7.1l9.3-22l7.4,38l9.7-19.7l3,12.8h14.9M4.1,58h51.4",bar:"M6.7,22.9h10V48h-10V22.9zM24.9,13h10v35h-10V13zM43.2,2h10v46h-10V2zM3.1,58h53.7",stack:"M8.2,38.4l-8.4,4.1l30.6,15.3L60,42.5l-8.1-4.1l-21.5,11L8.2,38.4z M51.9,30l-8.1,4.2l-13.4,6.9l-13.9-6.9L8.2,30l-8.4,4.2l8.4,4.2l22.2,11l21.5-11l8.1-4.2L51.9,30z M51.9,21.7l-8.1,4.2L35.7,30l-5.3,2.8L24.9,30l-8.4-4.1l-8.3-4.2l-8.4,4.2L8.2,30l8.3,4.2l13.9,6.9l13.4-6.9l8.1-4.2l8.1-4.1L51.9,21.7zM30.4,2.2L-0.2,17.5l8.4,4.1l8.3,4.2l8.4,4.2l5.5,2.7l5.3-2.7l8.1-4.2l8.1-4.2l8.1-4.1L30.4,2.2z",tiled:"M2.3,2.2h22.8V25H2.3V2.2z M35,2.2h22.8V25H35V2.2zM2.3,35h22.8v22.8H2.3V35z M35,35h22.8v22.8H35V35z"},title:i(RN.title),option:{},seriesIndex:{}};var zN=Qy.prototype;zN.getIcons=function(){var t=this.model,e=t.get("icon"),i={};return d(t.get("type"),function(t){e[t]&&(i[t]=e[t])}),i};var BN={line:function(t,e,i,o){if("bar"===t)return n({id:e,type:"line",data:i.get("data"),stack:i.get("stack"),markPoint:i.get("markPoint"),markLine:i.get("markLine")},o.get("option.line")||{},!0)},bar:function(t,e,i,o){if("line"===t)return n({id:e,type:"bar",data:i.get("data"),stack:i.get("stack"),markPoint:i.get("markPoint"),markLine:i.get("markLine")},o.get("option.bar")||{},!0)},stack:function(t,e,i,o){if("line"===t||"bar"===t)return n({id:e,stack:"__ec_magicType_stack__"},o.get("option.stack")||{},!0)},tiled:function(t,e,i,o){if("line"===t||"bar"===t)return n({id:e,stack:""},o.get("option.tiled")||{},!0)}},VN=[["line","bar"],["stack","tiled"]];zN.onclick=function(t,e,i){var n=this.model,o=n.get("seriesIndex."+i);if(BN[i]){var a={series:[]};d(VN,function(t){l(t,i)>=0&&d(t,function(t){n.setIconStatus(t,"normal")})}),n.setIconStatus(i,"emphasis"),t.eachComponent({mainType:"series",query:null==o?null:{seriesIndex:o}},function(e){var o=e.subType,s=e.id,l=BN[i](o,s,e,n);l&&(r(l,e.option),a.series.push(l));var u=e.coordinateSystem;if(u&&"cartesian2d"===u.type&&("line"===i||"bar"===i)){var h=u.getAxesByScale("ordinal")[0];if(h){var c=h.dim+"Axis",d=t.queryComponents({mainType:c,index:e.get(name+"Index"),id:e.get(name+"Id")})[0].componentIndex;a[c]=a[c]||[];for(var f=0;f<=d;f++)a[c][d]=a[c][d]||{};a[c][d].boundaryGap="bar"===i}}}),e.dispatchAction({type:"changeMagicType",currentType:i,newOption:a})}},cs({type:"changeMagicType",event:"magicTypeChanged",update:"prepareAndUpdate"},function(t,e){e.mergeOption(t.newOption)}),zv("magicType",Qy);var GN=sI.toolbox.dataView,WN=new Array(60).join("-"),FN="\t",HN=new RegExp("["+FN+"]+","g");ux.defaultOption={show:!0,readOnly:!1,optionToContent:null,contentToOption:null,icon:"M17.5,17.3H33 M17.5,17.3H33 M45.4,29.5h-28 M11.5,2v56H51V14.8L38.4,2H11.5z M38.4,2.2v12.7H51 M45.4,41.7h-28",title:i(GN.title),lang:i(GN.lang),backgroundColor:"#fff",textColor:"#000",textareaColor:"#fff",textareaBorderColor:"#333",buttonColor:"#c23531",buttonTextColor:"#fff"},ux.prototype.onclick=function(t,e){function i(){n.removeChild(a),x._dom=null}var n=e.getDom(),o=this.model;this._dom&&n.removeChild(this._dom);var a=document.createElement("div");a.style.cssText="position:absolute;left:5px;top:5px;bottom:5px;right:5px;",a.style.backgroundColor=o.get("backgroundColor")||"#fff";var r=document.createElement("h4"),s=o.get("lang")||[];r.innerHTML=s[0]||o.get("title"),r.style.cssText="margin: 10px 20px;",r.style.color=o.get("textColor");var l=document.createElement("div"),u=document.createElement("textarea");l.style.cssText="display:block;width:100%;overflow:auto;";var h=o.get("optionToContent"),c=o.get("contentToOption"),d=nx(t);if("function"==typeof h){var f=h(e.getOption());"string"==typeof f?l.innerHTML=f:M(f)&&l.appendChild(f)}else l.appendChild(u),u.readOnly=o.get("readOnly"),u.style.cssText="width:100%;height:100%;font-family:monospace;font-size:14px;line-height:1.6rem;",u.style.color=o.get("textColor"),u.style.borderColor=o.get("textareaBorderColor"),u.style.backgroundColor=o.get("textareaColor"),u.value=d.value;var p=d.meta,g=document.createElement("div");g.style.cssText="position:absolute;bottom:0;left:0;right:0;";var m="float:right;margin-right:20px;border:none;cursor:pointer;padding:2px 5px;font-size:12px;border-radius:3px",v=document.createElement("div"),y=document.createElement("div");m+=";background-color:"+o.get("buttonColor"),m+=";color:"+o.get("buttonTextColor");var x=this;ui(v,"click",i),ui(y,"click",function(){var t;try{t="function"==typeof c?c(l,e.getOption()):lx(u.value,p)}catch(t){throw i(),new Error("Data view format error "+t)}t&&e.dispatchAction({type:"changeDataView",newOption:t}),i()}),v.innerHTML=s[1],y.innerHTML=s[2],y.style.cssText=m,v.style.cssText=m,!o.get("readOnly")&&g.appendChild(y),g.appendChild(v),ui(u,"keydown",function(t){if(9===(t.keyCode||t.which)){var e=this.value,i=this.selectionStart,n=this.selectionEnd;this.value=e.substring(0,i)+FN+e.substring(n),this.selectionStart=this.selectionEnd=i+1,Rw(t)}}),a.appendChild(r),a.appendChild(l),a.appendChild(g),l.style.height=n.clientHeight-80+"px",n.appendChild(a),this._dom=a},ux.prototype.remove=function(t,e){this._dom&&e.getDom().removeChild(this._dom)},ux.prototype.dispose=function(t,e){this.remove(t,e)},zv("dataView",ux),cs({type:"changeDataView",event:"dataViewChanged",update:"prepareAndUpdate"},function(t,e){var i=[];d(t.newOption.series,function(t){var n=e.getSeriesByName(t.name)[0];if(n){var o=n.get("data");i.push({name:t.name,data:hx(t.data,o)})}else i.push(a({type:"scatter"},t))}),e.mergeOption(r({series:i},t.newOption))});var ZN=d,UN="\0_ec_hist_store";kP.extend({type:"dataZoom.select"}),PP.extend({type:"dataZoom.select"});var XN=sI.toolbox.dataZoom,jN=d,YN="\0_ec_\0toolbox-dataZoom_";mx.defaultOption={show:!0,icon:{zoom:"M0,13.5h26.9 M13.5,26.9V0 M32.1,13.5H58V58H13.5 V32.1",back:"M22,1.4L9.9,13.5l12.3,12.3 M10.3,13.5H54.9v44.6 H10.3v-26"},title:i(XN.title)};var qN=mx.prototype;qN.render=function(t,e,i,n){this.model=t,this.ecModel=e,this.api=i,xx(t,e,this,n,i),yx(t,e)},qN.onclick=function(t,e,i){KN[i].call(this)},qN.remove=function(t,e){this._brushController.unmount()},qN.dispose=function(t,e){this._brushController.dispose()};var KN={zoom:function(){var t=!this._isZoomActive;this.api.dispatchAction({type:"takeGlobalCursor",key:"dataZoomSelect",dataZoomSelectActive:t})},back:function(){this._dispatchZoomAction(dx(this.ecModel))}};qN._onBrush=function(t,e){function i(t,e,i){var r=e.getAxis(t),s=r.model,l=n(t,s,a),u=l.findRepresentativeAxisProxy(s).getMinMaxSpan();null==u.minValueSpan&&null==u.maxValueSpan||(i=kC(0,i.slice(),r.scale.getExtent(),0,u.minValueSpan,u.maxValueSpan)),l&&(o[l.id]={dataZoomId:l.id,startValue:i[0],endValue:i[1]})}function n(t,e,i){var n;return i.eachComponent({mainType:"dataZoom",subType:"select"},function(i){i.getAxisModel(t,e.componentIndex)&&(n=i)}),n}if(e.isEnd&&t.length){var o={},a=this.ecModel;this._brushController.updateCovers([]),new wv(vx(this.model.option),a,{include:["grid"]}).matchOutputRanges(t,a,function(t,e,n){if("cartesian2d"===n.type){var o=t.brushType;"rect"===o?(i("x",n,e[0]),i("y",n,e[1])):i({lineX:"x",lineY:"y"}[o],n,e)}}),cx(a,o),this._dispatchZoomAction(o)}},qN._dispatchZoomAction=function(t){var e=[];jN(t,function(t,n){e.push(i(t))}),e.length&&this.api.dispatchAction({type:"dataZoom",from:this.uid,batch:e})},zv("dataZoom",mx),us(function(t){function e(t,e){if(e){var o=t+"Index",a=e[o];null==a||"all"==a||y(a)||(a=!1===a||"none"===a?[]:[a]),i(t,function(e,i){if(null==a||"all"==a||-1!==l(a,i)){var r={type:"select",$fromToolbox:!0,id:YN+t+i};r[o]=i,n.push(r)}})}}function i(e,i){var n=t[e];y(n)||(n=n?[n]:[]),jN(n,i)}if(t){var n=t.dataZoom||(t.dataZoom=[]);y(n)||(t.dataZoom=n=[n]);var o=t.toolbox;if(o&&(y(o)&&(o=o[0]),o&&o.feature)){var a=o.feature.dataZoom;e("xAxis",a),e("yAxis",a)}}});var $N=sI.toolbox.restore;_x.defaultOption={show:!0,icon:"M3.8,33.4 M47,18.9h9.8V8.7 M56.3,20.1 C52.1,9,40.5,0.6,26.8,2.1C12.6,3.7,1.6,16.2,2.1,30.6 M13,41.1H3.1v10.2 M3.7,39.9c4.2,11.1,15.8,19.5,29.5,18 c14.2-1.6,25.2-14.1,24.7-28.5",title:$N.title},_x.prototype.onclick=function(t,e,i){fx(t),e.dispatchAction({type:"restore",from:this.uid})},zv("restore",_x),cs({type:"restore",event:"restore",update:"prepareAndUpdate"},function(t,e){e.resetOption("recreate")});var JN,QN="urn:schemas-microsoft-com:vml",tO="undefined"==typeof window?null:window,eO=!1,iO=tO&&tO.document;if(iO&&!o_.canvasSupported)try{!iO.namespaces.zrvml&&iO.namespaces.add("zrvml",QN),JN=function(t){return iO.createElement("')}}catch(t){JN=function(t){return iO.createElement("<"+t+' xmlns="'+QN+'" class="zrvml">')}}var nO=Fb.CMD,oO=Math.round,aO=Math.sqrt,rO=Math.abs,sO=Math.cos,lO=Math.sin,uO=Math.max;if(!o_.canvasSupported){var hO=21600,cO=hO/2,dO=function(t){t.style.cssText="position:absolute;left:0;top:0;width:1px;height:1px;",t.coordsize=hO+","+hO,t.coordorigin="0,0"},fO=function(t){return String(t).replace(/&/g,"&").replace(/"/g,""")},pO=function(t,e,i){return"rgb("+[t,e,i].join(",")+")"},gO=function(t,e){e&&t&&e.parentNode!==t&&t.appendChild(e)},mO=function(t,e){e&&t&&e.parentNode===t&&t.removeChild(e)},vO=function(t,e,i){return 1e5*(parseFloat(t)||0)+1e3*(parseFloat(e)||0)+i},yO=function(t,e){return"string"==typeof t?t.lastIndexOf("%")>=0?parseFloat(t)/100*e:parseFloat(t):t},xO=function(t,e,i){var n=At(e);i=+i,isNaN(i)&&(i=1),n&&(t.color=pO(n[0],n[1],n[2]),t.opacity=i*n[3])},_O=function(t){var e=At(t);return[pO(e[0],e[1],e[2]),e[3]]},wO=function(t,e,i){var n=e.fill;if(null!=n)if(n instanceof AS){var o,a=0,r=[0,0],s=0,l=1,u=i.getBoundingRect(),h=u.width,c=u.height;if("linear"===n.type){o="gradient";var d=i.transform,f=[n.x*h,n.y*c],p=[n.x2*h,n.y2*c];d&&(Q(f,f,d),Q(p,p,d));var g=p[0]-f[0],m=p[1]-f[1];(a=180*Math.atan2(g,m)/Math.PI)<0&&(a+=360),a<1e-6&&(a=0)}else{o="gradientradial";var f=[n.x*h,n.y*c],d=i.transform,v=i.scale,y=h,x=c;r=[(f[0]-u.x)/y,(f[1]-u.y)/x],d&&Q(f,f,d),y/=v[0]*hO,x/=v[1]*hO;var _=uO(y,x);s=0/_,l=2*n.r/_-s}var w=n.colorStops.slice();w.sort(function(t,e){return t.offset-e.offset});for(var b=w.length,S=[],M=[],I=0;I=2){var A=S[0][0],C=S[1][0],L=S[0][1]*e.opacity,k=S[1][1]*e.opacity;t.type=o,t.method="none",t.focus="100%",t.angle=a,t.color=A,t.color2=C,t.colors=M.join(","),t.opacity=k,t.opacity2=L}"radial"===o&&(t.focusposition=r.join(","))}else xO(t,n,e.opacity)},bO=function(t,e){null!=e.lineDash&&(t.dashstyle=e.lineDash.join(" ")),null==e.stroke||e.stroke instanceof AS||xO(t,e.stroke,e.opacity)},SO=function(t,e,i,n){var o="fill"==e,a=t.getElementsByTagName(e)[0];null!=i[e]&&"none"!==i[e]&&(o||!o&&i.lineWidth)?(t[o?"filled":"stroked"]="true",i[e]instanceof AS&&mO(t,a),a||(a=bx(e)),o?wO(a,i,n):bO(a,i),gO(t,a)):(t[o?"filled":"stroked"]="false",mO(t,a))},MO=[[],[],[]],IO=function(t,e){var i,n,o,a,r,s,l=nO.M,u=nO.C,h=nO.L,c=nO.A,d=nO.Q,f=[],p=t.data,g=t.len();for(a=0;a.01?N&&(O+=.0125):Math.abs(E-A)<1e-4?N&&OD?x-=.0125:x+=.0125:N&&EA?y+=.0125:y-=.0125),f.push(R,oO(((D-C)*M+b)*hO-cO),",",oO(((A-L)*I+S)*hO-cO),",",oO(((D+C)*M+b)*hO-cO),",",oO(((A+L)*I+S)*hO-cO),",",oO((O*M+b)*hO-cO),",",oO((E*I+S)*hO-cO),",",oO((y*M+b)*hO-cO),",",oO((x*I+S)*hO-cO)),r=y,s=x;break;case nO.R:var z=MO[0],B=MO[1];z[0]=p[a++],z[1]=p[a++],B[0]=z[0]+p[a++],B[1]=z[1]+p[a++],e&&(Q(z,z,e),Q(B,B,e)),z[0]=oO(z[0]*hO-cO),B[0]=oO(B[0]*hO-cO),z[1]=oO(z[1]*hO-cO),B[1]=oO(B[1]*hO-cO),f.push(" m ",z[0],",",z[1]," l ",B[0],",",z[1]," l ",B[0],",",B[1]," l ",z[0],",",B[1]);break;case nO.Z:f.push(" x ")}if(i>0){f.push(n);for(var V=0;V100&&(CO=0,AO={});var i,n=LO.style;try{n.font=t,i=n.fontFamily.split(",")[0]}catch(t){}e={style:n.fontStyle||"normal",variant:n.fontVariant||"normal",weight:n.fontWeight||"normal",size:0|parseFloat(n.fontSize||12),family:i||"Microsoft YaHei"},AO[t]=e,CO++}return e};!function(t,e){Tw[t]=e}("measureText",function(t,e){var i=iO;DO||((DO=i.createElement("div")).style.cssText="position:absolute;top:-20000px;left:0;padding:0;margin:0;border:none;white-space:pre;",iO.body.appendChild(DO));try{DO.style.font=e}catch(t){}return DO.innerHTML="",DO.appendChild(i.createTextNode(t)),{width:DO.offsetWidth}});for(var PO=new $t,NO=[Lw,$e,Je,In,dS],OO=0;OO=o&&u+1>=a){for(var h=[],c=0;c=o&&c+1>=a)return Vx(0,s.components);l[i]=s}else l[i]=void 0}r++}();if(d)return d}},pushComponent:function(t,e,i){var n=t[t.length-1];n&&n.added===e&&n.removed===i?t[t.length-1]={count:n.count+1,added:e,removed:i}:t.push({count:1,added:e,removed:i})},extractCommon:function(t,e,i,n){for(var o=e.length,a=i.length,r=t.newPos,s=r-n,l=0;r+1=0;--n)if(e[n]===t)return!0;return!1}),i):null:i[0]},Wx.prototype.update=function(t,e){if(t){var i=this.getDefs(!1);if(t[this._domName]&&i.contains(t[this._domName]))"function"==typeof e&&e(t);else{var n=this.add(t);n&&(t[this._domName]=n)}}},Wx.prototype.addDom=function(t){this.getDefs(!0).appendChild(t)},Wx.prototype.removeDom=function(t){var e=this.getDefs(!1);e&&t[this._domName]&&(e.removeChild(t[this._domName]),t[this._domName]=null)},Wx.prototype.getDoms=function(){var t=this.getDefs(!1);if(!t)return[];var e=[];return d(this._tagNames,function(i){var n=t.getElementsByTagName(i);e=e.concat([].slice.call(n))}),e},Wx.prototype.markAllUnused=function(){var t=this;d(this.getDoms(),function(e){e[t._markLabel]="0"})},Wx.prototype.markUsed=function(t){t&&(t[this._markLabel]="1")},Wx.prototype.removeUnused=function(){var t=this.getDefs(!1);if(t){var e=this;d(this.getDoms(),function(i){"1"!==i[e._markLabel]&&t.removeChild(i)})}},Wx.prototype.getSvgProxy=function(t){return t instanceof In?jO:t instanceof Je?YO:t instanceof dS?qO:jO},Wx.prototype.getTextSvgElement=function(t){return t.__textSvgEl},Wx.prototype.getSvgElement=function(t){return t.__svgEl},u(Fx,Wx),Fx.prototype.addWithoutUpdate=function(t,e){if(e&&e.style){var i=this;d(["fill","stroke"],function(n){if(e.style[n]&&("linear"===e.style[n].type||"radial"===e.style[n].type)){var o,a=e.style[n],r=i.getDefs(!0);a._dom?(o=a._dom,r.contains(a._dom)||i.addDom(o)):o=i.add(a),i.markUsed(e);var s=o.getAttribute("id");t.setAttribute(n,"url(#"+s+")")}})}},Fx.prototype.add=function(t){var e;if("linear"===t.type)e=this.createElement("linearGradient");else{if("radial"!==t.type)return tw("Illegal gradient type."),null;e=this.createElement("radialGradient")}return t.id=t.id||this.nextId++,e.setAttribute("id","zr"+this._zrId+"-gradient-"+t.id),this.updateDom(t,e),this.addDom(e),e},Fx.prototype.update=function(t){var e=this;Wx.prototype.update.call(this,t,function(){var i=t.type,n=t._dom.tagName;"linear"===i&&"linearGradient"===n||"radial"===i&&"radialGradient"===n?e.updateDom(t,t._dom):(e.removeDom(t),e.add(t))})},Fx.prototype.updateDom=function(t,e){if("linear"===t.type)e.setAttribute("x1",t.x),e.setAttribute("y1",t.y),e.setAttribute("x2",t.x2),e.setAttribute("y2",t.y2);else{if("radial"!==t.type)return void tw("Illegal gradient type.");e.setAttribute("cx",t.x),e.setAttribute("cy",t.y),e.setAttribute("r",t.r)}t.global?e.setAttribute("gradientUnits","userSpaceOnUse"):e.setAttribute("gradientUnits","objectBoundingBox"),e.innerHTML="";for(var i=t.colorStops,n=0,o=i.length;n0){var n,o,a=this.getDefs(!0),r=e[0],s=i?"_textDom":"_dom";r[s]?(o=r[s].getAttribute("id"),n=r[s],a.contains(n)||a.appendChild(n)):(o="zr"+this._zrId+"-clip-"+this.nextId,++this.nextId,(n=this.createElement("clipPath")).setAttribute("id",o),a.appendChild(n),r[s]=n);var l=this.getSvgProxy(r);if(r.transform&&r.parent.invTransform&&!i){var u=Array.prototype.slice.call(r.transform);ht(r.transform,r.parent.invTransform,r.transform),l.brush(r),r.transform=u}else l.brush(r);var h=this.getSvgElement(r);n.innerHTML="",n.appendChild(h.cloneNode()),t.setAttribute("clip-path","url(#"+o+")"),e.length>1&&this.updateDom(n,e.slice(1),i)}else t&&t.setAttribute("clip-path","none")},Hx.prototype.markUsed=function(t){var e=this;t.__clipPaths&&t.__clipPaths.length>0&&d(t.__clipPaths,function(t){t._dom&&Wx.prototype.markUsed.call(e,t._dom),t._textDom&&Wx.prototype.markUsed.call(e,t._textDom)})},u(Zx,Wx),Zx.prototype.addWithoutUpdate=function(t,e){if(e&&Ux(e.style)){var i,n=e.style;n._shadowDom?(i=n._shadowDom,this.getDefs(!0).contains(n._shadowDom)||this.addDom(i)):i=this.add(e),this.markUsed(e);var o=i.getAttribute("id");t.style.filter="url(#"+o+")"}},Zx.prototype.add=function(t){var e=this.createElement("filter"),i=t.style;return i._shadowDomId=i._shadowDomId||this.nextId++,e.setAttribute("id","zr"+this._zrId+"-shadow-"+i._shadowDomId),this.updateDom(t,e),this.addDom(e),e},Zx.prototype.update=function(t,e){var i=e.style;if(Ux(i)){var n=this;Wx.prototype.update.call(this,e,function(t){n.updateDom(e,t._shadowDom)})}else this.remove(t,i)},Zx.prototype.remove=function(t,e){null!=e._shadowDomId&&(this.removeDom(e),t.style.filter="")},Zx.prototype.updateDom=function(t,e){var i=e.getElementsByTagName("feDropShadow");i=0===i.length?this.createElement("feDropShadow"):i[0];var n,o,a,r,s=t.style,l=t.scale?t.scale[0]||1:1,u=t.scale?t.scale[1]||1:1;if(s.shadowBlur||s.shadowOffsetX||s.shadowOffsetY)n=s.shadowOffsetX||0,o=s.shadowOffsetY||0,a=s.shadowBlur,r=s.shadowColor;else{if(!s.textShadowBlur)return void this.removeDom(e,s);n=s.textShadowOffsetX||0,o=s.textShadowOffsetY||0,a=s.textShadowBlur,r=s.textShadowColor}i.setAttribute("dx",n/l),i.setAttribute("dy",o/u),i.setAttribute("flood-color",r);var h=a/2/l+" "+a/2/u;i.setAttribute("stdDeviation",h),e.setAttribute("x","-100%"),e.setAttribute("y","-100%"),e.setAttribute("width",Math.ceil(a/2*200)+"%"),e.setAttribute("height",Math.ceil(a/2*200)+"%"),e.appendChild(i),s._shadowDom=e},Zx.prototype.markUsed=function(t){var e=t.style;e&&e._shadowDom&&Wx.prototype.markUsed.call(this,e._shadowDom)};var tE=function(t,e,i,n){this.root=t,this.storage=e,this._opts=i=a({},i||{});var o=Dx("svg");o.setAttribute("xmlns","http://www.w3.org/2000/svg"),o.setAttribute("version","1.1"),o.setAttribute("baseProfile","full"),o.style.cssText="user-select:none;position:absolute;left:0;top:0;",this.gradientManager=new Fx(n,o),this.clipPathManager=new Hx(n,o),this.shadowManager=new Zx(n,o);var r=document.createElement("div");r.style.cssText="overflow:hidden;position:relative",this._svgRoot=o,this._viewport=r,t.appendChild(r),r.appendChild(o),this.resize(i.width,i.height),this._visibleList=[]};tE.prototype={constructor:tE,getType:function(){return"svg"},getViewportRoot:function(){return this._viewport},getViewportRootOffset:function(){var t=this.getViewportRoot();if(t)return{offsetLeft:t.offsetLeft||0,offsetTop:t.offsetTop||0}},refresh:function(){var t=this.storage.getDisplayList(!0);this._paintList(t)},setBackgroundColor:function(t){this._viewport.style.background=t},_paintList:function(t){this.gradientManager.markAllUnused(),this.clipPathManager.markAllUnused(),this.shadowManager.markAllUnused();var e,i=this._svgRoot,n=this._visibleList,o=t.length,a=[];for(e=0;e=0;--n)if(e[n]===t)return!0;return!1}),i):null:i[0]},resize:function(t,e){var i=this._viewport;i.style.display="none";var n=this._opts;if(null!=t&&(n.width=t),null!=e&&(n.height=e),t=this._getSize(0),e=this._getSize(1),i.style.display="",this._width!==t||this._height!==e){this._width=t,this._height=e;var o=i.style;o.width=t+"px",o.height=e+"px";var a=this._svgRoot;a.setAttribute("width",t),a.setAttribute("height",e)}},getWidth:function(){return this._width},getHeight:function(){return this._height},_getSize:function(t){var e=this._opts,i=["width","height"][t],n=["clientWidth","clientHeight"][t],o=["paddingLeft","paddingTop"][t],a=["paddingRight","paddingBottom"][t];if(null!=e[i]&&"auto"!==e[i])return parseFloat(e[i]);var r=this.root,s=document.defaultView.getComputedStyle(r);return(r[n]||Xx(s[i])||Xx(r.style[i]))-(Xx(s[o])||0)-(Xx(s[a])||0)|0},dispose:function(){this.root.innerHTML="",this._svgRoot=this._viewport=this.storage=null},clear:function(){this._viewport&&this.root.removeChild(this._viewport)},pathToDataUrl:function(){return this.refresh(),"data:image/svg+xml;charset=UTF-8,"+this._svgRoot.outerHTML}},d(["getLayer","insertLayer","eachLayer","eachBuiltinLayer","eachOtherLayer","getLayers","modLayer","delLayer","clearLayer","toDataURL","pathToImage"],function(t){tE.prototype[t]=t_(t)}),wi("svg",tE),t.version="4.1.0",t.dependencies=II,t.PRIORITY=CI,t.init=function(t,e,i){var n=ss(t);if(n)return n;var o=new Gr(t,e,i);return o.id="ec_"+XI++,ZI[o.id]=o,Ri(t,YI,o.id),as(o),o},t.connect=function(t){if(y(t)){var e=t;t=null,wI(e,function(e){null!=e.group&&(t=e.group)}),t=t||"g_"+jI++,wI(e,function(e){e.group=t})}return UI[t]=!0,t},t.disConnect=rs,t.disconnect=KI,t.dispose=function(t){"string"==typeof t?t=ZI[t]:t instanceof Gr||(t=ss(t)),t instanceof Gr&&!t.isDisposed()&&t.dispose()},t.getInstanceByDom=ss,t.getInstanceById=function(t){return ZI[t]},t.registerTheme=ls,t.registerPreprocessor=us,t.registerProcessor=hs,t.registerPostUpdate=function(t){GI.push(t)},t.registerAction=cs,t.registerCoordinateSystem=ds,t.getCoordinateSystemDimensions=function(t){var e=Ca.get(t);if(e)return e.getDimensionsInfo?e.getDimensionsInfo():e.dimensions.slice()},t.registerLayout=fs,t.registerVisual=ps,t.registerLoading=ms,t.extendComponentModel=vs,t.extendComponentView=ys,t.extendSeriesModel=xs,t.extendChartView=_s,t.setCanvasCreator=function(t){e("createCanvas",t)},t.registerMap=function(t,e,i){e.geoJson&&!e.features&&(i=e.specialAreas,e=e.geoJson),"string"==typeof e&&(e="undefined"!=typeof JSON&&JSON.parse?JSON.parse(e):new Function("return ("+e+");")()),qI[t]={geoJson:e,specialAreas:i}},t.getMap=ws,t.dataTool=$I,t.zrender=Kw,t.graphic=zS,t.number=YS,t.format=iM,t.throttle=_r,t.helper=HT,t.matrix=k_,t.vector=M_,t.color=Y_,t.parseGeoJSON=UT,t.parseGeoJson=qT,t.util=KT,t.List=rT,t.Model=wo,t.Axis=YT,t.env=o_}); \ No newline at end of file diff --git a/src/main/resources/static/articles/js/font_2024484_qwtkvngfp5b.js b/src/main/resources/static/articles/js/font_2024484_qwtkvngfp5b.js new file mode 100644 index 0000000..f2a686a --- /dev/null +++ b/src/main/resources/static/articles/js/font_2024484_qwtkvngfp5b.js @@ -0,0 +1 @@ +window._iconfont_svg_string_2024484='',function(c){var l=(l=document.getElementsByTagName("script"))[l.length-1],a=l.getAttribute("data-injectcss"),l=l.getAttribute("data-disable-injectsvg");if(!l){var h,t,p,i,M,d=function(l,a){a.parentNode.insertBefore(l,a)};if(a&&!c.__iconfont__svg__cssinject__){c.__iconfont__svg__cssinject__=!0;try{document.write("")}catch(l){console&&console.log(l)}}h=function(){var l,a=document.createElement("div");a.innerHTML=c._iconfont_svg_string_2024484,(a=a.getElementsByTagName("svg")[0])&&(a.setAttribute("aria-hidden","true"),a.style.position="absolute",a.style.width=0,a.style.height=0,a.style.overflow="hidden",a=a,(l=document.body).firstChild?d(a,l.firstChild):l.appendChild(a))},document.addEventListener?~["complete","loaded","interactive"].indexOf(document.readyState)?setTimeout(h,0):(t=function(){document.removeEventListener("DOMContentLoaded",t,!1),h()},document.addEventListener("DOMContentLoaded",t,!1)):document.attachEvent&&(p=h,i=c.document,M=!1,F(),i.onreadystatechange=function(){"complete"==i.readyState&&(i.onreadystatechange=null,z())})}function z(){M||(M=!0,p())}function F(){try{i.documentElement.doScroll("left")}catch(l){return void setTimeout(F,50)}z()}}(window); diff --git a/src/main/resources/static/articles/js/jquery-3.5.1.min.js b/src/main/resources/static/articles/js/jquery-3.5.1.min.js new file mode 100644 index 0000000..d467083 --- /dev/null +++ b/src/main/resources/static/articles/js/jquery-3.5.1.min.js @@ -0,0 +1,2 @@ +/*! jQuery v3.5.1 | (c) JS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.5.1",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="
",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function D(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||j,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,j=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="",y.option=!!ce.lastChild;var ge={thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n",""]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d\s*$/g;function qe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function Le(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function He(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Oe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Ut,Xt=[],Vt=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Xt.pop()||S.expando+"_"+Ct.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Vt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Vt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Vt,"$1"+r):!1!==e.jsonp&&(e.url+=(Et.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Xt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Ut=E.implementation.createHTMLDocument("").body).innerHTML="

",2===Ut.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):("number"==typeof f.top&&(f.top+="px"),"number"==typeof f.left&&(f.left+="px"),c.css(f))}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=$e(y.pixelPosition,function(e,t){if(t)return t=Be(e,n),Me.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 0 1 || event.metaKey || event.ctrlKey || event.shiftKey || event.altKey ) + return + + // Ignore cross origin links + if ( location.protocol !== link.protocol || location.hostname !== link.hostname ) + return + + // Ignore case when a hash is being tacked on the current URL + if ( link.href.indexOf('#') > -1 && stripHash(link) == stripHash(location) ) + return + + // Ignore event with default prevented + if (event.isDefaultPrevented()) + return + + var defaults = { + url: link.href, + container: $link.attr('data-pjax'), + target: link + } + + var opts = $.extend({}, defaults, options) + var clickEvent = $.Event('pjax:click') + $link.trigger(clickEvent, [opts]) + + if (!clickEvent.isDefaultPrevented()) { + pjax(opts) + event.preventDefault() + $link.trigger('pjax:clicked', [opts]) + } + } + +// Public: pjax on form submit handler +// +// Exported as $.pjax.submit +// +// event - "click" jQuery.Event +// options - pjax options +// +// Examples +// +// $(document).on('submit', 'form', function(event) { +// $.pjax.submit(event, '[data-pjax-container]') +// }) +// +// Returns nothing. + function handleSubmit(event, container, options) { + options = optionsFor(container, options) + + var form = event.currentTarget + var $form = $(form) + + if (form.tagName.toUpperCase() !== 'FORM') + throw "$.pjax.submit requires a form element" + + var defaults = { + type: ($form.attr('method') || 'GET').toUpperCase(), + url: $form.attr('action'), + container: $form.attr('data-pjax'), + target: form + } + + if (defaults.type !== 'GET' && window.FormData !== undefined) { + defaults.data = new FormData(form) + defaults.processData = false + defaults.contentType = false + } else { + // Can't handle file uploads, exit + if ($form.find(':file').length) { + return + } + + // Fallback to manually serializing the fields + defaults.data = $form.serializeArray() + } + + pjax($.extend({}, defaults, options)) + + event.preventDefault() + } + +// Loads a URL with ajax, puts the response body inside a container, +// then pushState()'s the loaded URL. +// +// Works just like $.ajax in that it accepts a jQuery ajax +// settings object (with keys like url, type, data, etc). +// +// Accepts these extra keys: +// +// container - String selector for where to stick the response body. +// push - Whether to pushState the URL. Defaults to true (of course). +// replace - Want to use replaceState instead? That's cool. +// +// Use it just like $.ajax: +// +// var xhr = $.pjax({ url: this.href, container: '#main' }) +// console.log( xhr.readyState ) +// +// Returns whatever $.ajax returns. + function pjax(options) { + options = $.extend(true, {}, $.ajaxSettings, pjax.defaults, options) + + if ($.isFunction(options.url)) { + options.url = options.url() + } + + var hash = parseURL(options.url).hash + + var containerType = $.type(options.container) + if (containerType !== 'string') { + throw "expected string value for 'container' option; got " + containerType + } + var context = options.context = $(options.container) + if (!context.length) { + throw "the container selector '" + options.container + "' did not match anything" + } + + // We want the browser to maintain two separate internal caches: one + // for pjax'd partial page loads and one for normal page loads. + // Without adding this secret parameter, some browsers will often + // confuse the two. + if (!options.data) options.data = {} + if ($.isArray(options.data)) { + options.data.push({name: '_pjax', value: options.container}) + } else { + options.data._pjax = options.container + } + + function fire(type, args, props) { + if (!props) props = {} + props.relatedTarget = options.target + var event = $.Event(type, props) + context.trigger(event, args) + return !event.isDefaultPrevented() + } + + var timeoutTimer + + options.beforeSend = function(xhr, settings) { + // No timeout for non-GET requests + // Its not safe to request the resource again with a fallback method. + if (settings.type !== 'GET') { + settings.timeout = 0 + } + + xhr.setRequestHeader('X-PJAX', 'true') + xhr.setRequestHeader('X-PJAX-Container', options.container) + + if (!fire('pjax:beforeSend', [xhr, settings])) + return false + + if (settings.timeout > 0) { + timeoutTimer = setTimeout(function() { + if (fire('pjax:timeout', [xhr, options])) + xhr.abort('timeout') + }, settings.timeout) + + // Clear timeout setting so jquerys internal timeout isn't invoked + settings.timeout = 0 + } + + var url = parseURL(settings.url) + if (hash) url.hash = hash + options.requestUrl = stripInternalParams(url) + } + + options.complete = function(xhr, textStatus) { + if (timeoutTimer) + clearTimeout(timeoutTimer) + + fire('pjax:complete', [xhr, textStatus, options]) + + fire('pjax:end', [xhr, options]) + } + + options.error = function(xhr, textStatus, errorThrown) { + var container = extractContainer("", xhr, options) + + var allowed = fire('pjax:error', [xhr, textStatus, errorThrown, options]) + if (options.type == 'GET' && textStatus !== 'abort' && allowed) { + locationReplace(container.url) + } + } + + options.success = function(data, status, xhr) { + var previousState = pjax.state + + // If $.pjax.defaults.version is a function, invoke it first. + // Otherwise it can be a static string. + var currentVersion = typeof $.pjax.defaults.version === 'function' ? + $.pjax.defaults.version() : + $.pjax.defaults.version + + var latestVersion = xhr.getResponseHeader('X-PJAX-Version') + + var container = extractContainer(data, xhr, options) + + var url = parseURL(container.url) + if (hash) { + url.hash = hash + container.url = url.href + } + + // If there is a layout version mismatch, hard load the new url + if (currentVersion && latestVersion && currentVersion !== latestVersion) { + locationReplace(container.url) + return + } + + // If the new response is missing a body, hard load the page + if (!container.contents) { + locationReplace(container.url) + return + } + + pjax.state = { + id: options.id || uniqueId(), + url: container.url, + title: container.title, + container: options.container, + fragment: options.fragment, + timeout: options.timeout + } + + if (options.push || options.replace) { + window.history.replaceState(pjax.state, container.title, container.url) + } + + // Only blur the focus if the focused element is within the container. + var blurFocus = $.contains(context, document.activeElement) + + // Clear out any focused controls before inserting new page contents. + if (blurFocus) { + try { + document.activeElement.blur() + } catch (e) { /* ignore */ } + } + + if (container.title) document.title = container.title + + fire('pjax:beforeReplace', [container.contents, options], { + state: pjax.state, + previousState: previousState + }) + context.html(container.contents) + + // FF bug: Won't autofocus fields that are inserted via JS. + // This behavior is incorrect. So if theres no current focus, autofocus + // the last field. + // + // http://www.w3.org/html/wg/drafts/html/master/forms.html + var autofocusEl = context.find('input[autofocus], textarea[autofocus]').last()[0] + if (autofocusEl && document.activeElement !== autofocusEl) { + autofocusEl.focus() + } + + executeScriptTags(container.scripts) + + var scrollTo = options.scrollTo + + // Ensure browser scrolls to the element referenced by the URL anchor + if (hash) { + var name = decodeURIComponent(hash.slice(1)) + var target = document.getElementById(name) || document.getElementsByName(name)[0] + if (target) scrollTo = $(target).offset().top + } + + if (typeof scrollTo == 'number') $(window).scrollTop(scrollTo) + + fire('pjax:success', [data, status, xhr, options]) + } + + + // Initialize pjax.state for the initial page load. Assume we're + // using the container and options of the link we're loading for the + // back button to the initial page. This ensures good back button + // behavior. + if (!pjax.state) { + pjax.state = { + id: uniqueId(), + url: window.location.href, + title: document.title, + container: options.container, + fragment: options.fragment, + timeout: options.timeout + } + window.history.replaceState(pjax.state, document.title) + } + + // Cancel the current request if we're already pjaxing + abortXHR(pjax.xhr) + + pjax.options = options + var xhr = pjax.xhr = $.ajax(options) + + if (xhr.readyState > 0) { + if (options.push && !options.replace) { + // Cache current container element before replacing it + cachePush(pjax.state.id, [options.container, cloneContents(context)]) + + window.history.pushState(null, "", options.requestUrl) + } + + fire('pjax:start', [xhr, options]) + fire('pjax:send', [xhr, options]) + } + + return pjax.xhr + } + +// Public: Reload current page with pjax. +// +// Returns whatever $.pjax returns. + function pjaxReload(container, options) { + var defaults = { + url: window.location.href, + push: false, + replace: true, + scrollTo: false + } + + return pjax($.extend(defaults, optionsFor(container, options))) + } + +// Internal: Hard replace current state with url. +// +// Work for around WebKit +// https://bugs.webkit.org/show_bug.cgi?id=93506 +// +// Returns nothing. + function locationReplace(url) { + window.history.replaceState(null, "", pjax.state.url) + window.location.replace(url) + } + + + var initialPop = true + var initialURL = window.location.href + var initialState = window.history.state + +// Initialize $.pjax.state if possible +// Happens when reloading a page and coming forward from a different +// session history. + if (initialState && initialState.container) { + pjax.state = initialState + } + +// Non-webkit browsers don't fire an initial popstate event + if ('state' in window.history) { + initialPop = false + } + +// popstate handler takes care of the back and forward buttons +// +// You probably shouldn't use pjax on pages with other pushState +// stuff yet. + function onPjaxPopstate(event) { + + // Hitting back or forward should override any pending PJAX request. + if (!initialPop) { + abortXHR(pjax.xhr) + } + + var previousState = pjax.state + var state = event.state + var direction + + if (state && state.container) { + // When coming forward from a separate history session, will get an + // initial pop with a state we are already at. Skip reloading the current + // page. + if (initialPop && initialURL == state.url) return + + if (previousState) { + // If popping back to the same state, just skip. + // Could be clicking back from hashchange rather than a pushState. + if (previousState.id === state.id) return + + // Since state IDs always increase, we can deduce the navigation direction + direction = previousState.id < state.id ? 'forward' : 'back' + } + + var cache = cacheMapping[state.id] || [] + var containerSelector = cache[0] || state.container + var container = $(containerSelector), contents = cache[1] + + if (container.length) { + if (previousState) { + // Cache current container before replacement and inform the + // cache which direction the history shifted. + cachePop(direction, previousState.id, [containerSelector, cloneContents(container)]) + } + + var popstateEvent = $.Event('pjax:popstate', { + state: state, + direction: direction + }) + container.trigger(popstateEvent) + + var options = { + id: state.id, + url: state.url, + container: containerSelector, + push: false, + fragment: state.fragment, + timeout: state.timeout, + scrollTo: false + } + + if (contents) { + container.trigger('pjax:start', [null, options]) + + pjax.state = state + if (state.title) document.title = state.title + var beforeReplaceEvent = $.Event('pjax:beforeReplace', { + state: state, + previousState: previousState + }) + container.trigger(beforeReplaceEvent, [contents, options]) + container.html(contents) + + container.trigger('pjax:end', [null, options]) + } else { + pjax(options) + } + + // Force reflow/relayout before the browser tries to restore the + // scroll position. + container[0].offsetHeight // eslint-disable-line no-unused-expressions + } else { + locationReplace(location.href) + } + } + initialPop = false + } + +// Fallback version of main pjax function for browsers that don't +// support pushState. +// +// Returns nothing since it retriggers a hard form submission. + function fallbackPjax(options) { + var url = $.isFunction(options.url) ? options.url() : options.url, + method = options.type ? options.type.toUpperCase() : 'GET' + + var form = $('
', { + method: method === 'GET' ? 'GET' : 'POST', + action: url, + style: 'display:none' + }) + + if (method !== 'GET' && method !== 'POST') { + form.append($('', { + type: 'hidden', + name: '_method', + value: method.toLowerCase() + })) + } + + var data = options.data + if (typeof data === 'string') { + $.each(data.split('&'), function(index, value) { + var pair = value.split('=') + form.append($('', {type: 'hidden', name: pair[0], value: pair[1]})) + }) + } else if ($.isArray(data)) { + $.each(data, function(index, value) { + form.append($('', {type: 'hidden', name: value.name, value: value.value})) + }) + } else if (typeof data === 'object') { + var key + for (key in data) + form.append($('', {type: 'hidden', name: key, value: data[key]})) + } + + $(document.body).append(form) + form.submit() + } + +// Internal: Abort an XmlHttpRequest if it hasn't been completed, +// also removing its event handlers. + function abortXHR(xhr) { + if ( xhr && xhr.readyState < 4) { + xhr.onreadystatechange = $.noop + xhr.abort() + } + } + +// Internal: Generate unique id for state object. +// +// Use a timestamp instead of a counter since ids should still be +// unique across page loads. +// +// Returns Number. + function uniqueId() { + return (new Date).getTime() + } + + function cloneContents(container) { + var cloned = container.clone() + // Unmark script tags as already being eval'd so they can get executed again + // when restored from cache. HAXX: Uses jQuery internal method. + cloned.find('script').each(function(){ + if (!this.src) $._data(this, 'globalEval', false) + }) + return cloned.contents() + } + +// Internal: Strip internal query params from parsed URL. +// +// Returns sanitized url.href String. + function stripInternalParams(url) { + url.search = url.search.replace(/([?&])(_pjax|_)=[^&]*/g, '').replace(/^&/, '') + return url.href.replace(/\?($|#)/, '$1') + } + +// Internal: Parse URL components and returns a Locationish object. +// +// url - String URL +// +// Returns HTMLAnchorElement that acts like Location. + function parseURL(url) { + var a = document.createElement('a') + a.href = url + return a + } + +// Internal: Return the `href` component of given URL object with the hash +// portion removed. +// +// location - Location or HTMLAnchorElement +// +// Returns String + function stripHash(location) { + return location.href.replace(/#.*/, '') + } + +// Internal: Build options Object for arguments. +// +// For convenience the first parameter can be either the container or +// the options object. +// +// Examples +// +// optionsFor('#container') +// // => {container: '#container'} +// +// optionsFor('#container', {push: true}) +// // => {container: '#container', push: true} +// +// optionsFor({container: '#container', push: true}) +// // => {container: '#container', push: true} +// +// Returns options Object. + function optionsFor(container, options) { + if (container && options) { + options = $.extend({}, options) + options.container = container + return options + } else if ($.isPlainObject(container)) { + return container + } else { + return {container: container} + } + } + +// Internal: Filter and find all elements matching the selector. +// +// Where $.fn.find only matches descendants, findAll will test all the +// top level elements in the jQuery object as well. +// +// elems - jQuery object of Elements +// selector - String selector to match +// +// Returns a jQuery object. + function findAll(elems, selector) { + return elems.filter(selector).add(elems.find(selector)) + } + + function parseHTML(html) { + return $.parseHTML(html, document, true) + } + +// Internal: Extracts container and metadata from response. +// +// 1. Extracts X-PJAX-URL header if set +// 2. Extracts inline tags +// 3. Builds response Element and extracts fragment if set +// +// data - String response data +// xhr - XHR response +// options - pjax options Object +// +// Returns an Object with url, title, and contents keys. + function extractContainer(data, xhr, options) { + var obj = {}, fullDocument = /<html/i.test(data) + + // Prefer X-PJAX-URL header if it was set, otherwise fallback to + // using the original requested url. + var serverUrl = xhr.getResponseHeader('X-PJAX-URL') + obj.url = serverUrl ? stripInternalParams(parseURL(serverUrl)) : options.requestUrl + + var $head, $body + // Attempt to parse response html into elements + if (fullDocument) { + $body = $(parseHTML(data.match(/<body[^>]*>([\s\S.]*)<\/body>/i)[0])) + var head = data.match(/<head[^>]*>([\s\S.]*)<\/head>/i) + $head = head != null ? $(parseHTML(head[0])) : $body + } else { + $head = $body = $(parseHTML(data)) + } + + // If response data is empty, return fast + if ($body.length === 0) + return obj + + // If there's a <title> tag in the header, use it as + // the page's title. + obj.title = findAll($head, 'title').last().text() + + if (options.fragment) { + var $fragment = $body + // If they specified a fragment, look for it in the response + // and pull it out. + if (options.fragment !== 'body') { + $fragment = findAll($fragment, options.fragment).first() + } + + if ($fragment.length) { + obj.contents = options.fragment === 'body' ? $fragment : $fragment.contents() + + // If there's no title, look for data-title and title attributes + // on the fragment + if (!obj.title) + obj.title = $fragment.attr('title') || $fragment.data('title') + } + + } else if (!fullDocument) { + obj.contents = $body + } + + // Clean up any <title> tags + if (obj.contents) { + // Remove any parent title elements + obj.contents = obj.contents.not(function() { return $(this).is('title') }) + + // Then scrub any titles from their descendants + obj.contents.find('title').remove() + + // Gather all script[src] elements + obj.scripts = findAll(obj.contents, 'script[src]').remove() + obj.contents = obj.contents.not(obj.scripts) + } + + // Trim any whitespace off the title + if (obj.title) obj.title = $.trim(obj.title) + + return obj + } + +// Load an execute scripts using standard script request. +// +// Avoids jQuery's traditional $.getScript which does a XHR request and +// globalEval. +// +// scripts - jQuery object of script Elements +// +// Returns nothing. + function executeScriptTags(scripts) { + if (!scripts) return + + var existingScripts = $('script[src]') + + scripts.each(function() { + var src = this.src + var matchedScripts = existingScripts.filter(function() { + return this.src === src + }) + if (matchedScripts.length) return + + var script = document.createElement('script') + var type = $(this).attr('type') + if (type) script.type = type + script.src = $(this).attr('src') + document.head.appendChild(script) + }) + } + +// Internal: History DOM caching class. + var cacheMapping = {} + var cacheForwardStack = [] + var cacheBackStack = [] + +// Push previous state id and container contents into the history +// cache. Should be called in conjunction with `pushState` to save the +// previous container contents. +// +// id - State ID Number +// value - DOM Element to cache +// +// Returns nothing. + function cachePush(id, value) { + cacheMapping[id] = value + cacheBackStack.push(id) + + // Remove all entries in forward history stack after pushing a new page. + trimCacheStack(cacheForwardStack, 0) + + // Trim back history stack to max cache length. + trimCacheStack(cacheBackStack, pjax.defaults.maxCacheLength) + } + +// Shifts cache from directional history cache. Should be +// called on `popstate` with the previous state id and container +// contents. +// +// direction - "forward" or "back" String +// id - State ID Number +// value - DOM Element to cache +// +// Returns nothing. + function cachePop(direction, id, value) { + var pushStack, popStack + cacheMapping[id] = value + + if (direction === 'forward') { + pushStack = cacheBackStack + popStack = cacheForwardStack + } else { + pushStack = cacheForwardStack + popStack = cacheBackStack + } + + pushStack.push(id) + id = popStack.pop() + if (id) delete cacheMapping[id] + + // Trim whichever stack we just pushed to to max cache length. + trimCacheStack(pushStack, pjax.defaults.maxCacheLength) + } + +// Trim a cache stack (either cacheBackStack or cacheForwardStack) to be no +// longer than the specified length, deleting cached DOM elements as necessary. +// +// stack - Array of state IDs +// length - Maximum length to trim to +// +// Returns nothing. + function trimCacheStack(stack, length) { + while (stack.length > length) + delete cacheMapping[stack.shift()] + } + +// Public: Find version identifier for the initial page load. +// +// Returns String version or undefined. + function findVersion() { + return $('meta').filter(function() { + var name = $(this).attr('http-equiv') + return name && name.toUpperCase() === 'X-PJAX-VERSION' + }).attr('content') + } + +// Install pjax functions on $.pjax to enable pushState behavior. +// +// Does nothing if already enabled. +// +// Examples +// +// $.pjax.enable() +// +// Returns nothing. + function enable() { + $.fn.pjax = fnPjax + $.pjax = pjax + $.pjax.enable = $.noop + $.pjax.disable = disable + $.pjax.click = handleClick + $.pjax.submit = handleSubmit + $.pjax.reload = pjaxReload + $.pjax.defaults = { + timeout: 650, + push: true, + replace: false, + type: 'GET', + dataType: 'html', + scrollTo: 0, + maxCacheLength: 20, + version: findVersion + } + $(window).on('popstate.pjax', onPjaxPopstate) + } + +// Disable pushState behavior. +// +// This is the case when a browser doesn't support pushState. It is +// sometimes useful to disable pushState for debugging on a modern +// browser. +// +// Examples +// +// $.pjax.disable() +// +// Returns nothing. + function disable() { + $.fn.pjax = function() { return this } + $.pjax = fallbackPjax + $.pjax.enable = enable + $.pjax.disable = $.noop + $.pjax.click = $.noop + $.pjax.submit = $.noop + $.pjax.reload = function() { window.location.reload() } + + $(window).off('popstate.pjax', onPjaxPopstate) + } + + +// Add the state property to jQuery's event object so we can use it in +// $(window).bind('popstate') + if ($.event.props && $.inArray('state', $.event.props) < 0) { + $.event.props.push('state') + } else if (!('state' in $.Event.prototype)) { + $.event.addProp('state') + } + +// Is pjax supported by this browser? + $.support.pjax = + window.history && window.history.pushState && window.history.replaceState && + // pushState isn't reliable on iOS until 5. + !navigator.userAgent.match(/((iPod|iPhone|iPad).+\bOS\s+[1-4]\D|WebApps\/.+CFNetwork)/) + + if ($.support.pjax) { + enable() + } else { + disable() + } + +})(jQuery) \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/css/layui.css b/src/main/resources/static/articles/layui/css/layui.css new file mode 100644 index 0000000..4c85ade --- /dev/null +++ b/src/main/resources/static/articles/layui/css/layui.css @@ -0,0 +1,2 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + .layui-inline,img{display:inline-block;vertical-align:middle}h1,h2,h3,h4,h5,h6{font-weight:400}.layui-edge,.layui-header,.layui-inline,.layui-main{position:relative}.layui-body,.layui-edge,.layui-elip{overflow:hidden}.layui-btn,.layui-edge,.layui-inline,img{vertical-align:middle}.layui-btn,.layui-disabled,.layui-icon,.layui-unselect{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.layui-elip,.layui-form-checkbox span,.layui-form-pane .layui-form-label{text-overflow:ellipsis;white-space:nowrap}.layui-breadcrumb,.layui-tree-btnGroup{visibility:hidden}blockquote,body,button,dd,div,dl,dt,form,h1,h2,h3,h4,h5,h6,input,li,ol,p,pre,td,textarea,th,ul{margin:0;padding:0;-webkit-tap-highlight-color:rgba(0,0,0,0)}a:active,a:hover{outline:0}img{border:none}li{list-style:none}table{border-collapse:collapse;border-spacing:0}h4,h5,h6{font-size:100%}button,input,optgroup,option,select,textarea{font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;outline:0}pre{white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word}body{line-height:24px;font:14px Helvetica Neue,Helvetica,PingFang SC,Tahoma,Arial,sans-serif}hr{height:1px;margin:10px 0;border:0;clear:both}a{color:#333;text-decoration:none}a:hover{color:#777}a cite{font-style:normal;*cursor:pointer}.layui-border-box,.layui-border-box *{box-sizing:border-box}.layui-box,.layui-box *{box-sizing:content-box}.layui-clear{clear:both;*zoom:1}.layui-clear:after{content:'\20';clear:both;*zoom:1;display:block;height:0}.layui-inline{*display:inline;*zoom:1}.layui-edge{display:inline-block;width:0;height:0;border-width:6px;border-style:dashed;border-color:transparent}.layui-edge-top{top:-4px;border-bottom-color:#999;border-bottom-style:solid}.layui-edge-right{border-left-color:#999;border-left-style:solid}.layui-edge-bottom{top:2px;border-top-color:#999;border-top-style:solid}.layui-edge-left{border-right-color:#999;border-right-style:solid}.layui-disabled,.layui-disabled:hover{color:#d2d2d2!important;cursor:not-allowed!important}.layui-circle{border-radius:100%}.layui-show{display:block!important}.layui-hide{display:none!important}@font-face{font-family:layui-icon;}.layui-icon{font-family:layui-icon!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.layui-icon-reply-fill:before{content:"\e611"}.layui-icon-set-fill:before{content:"\e614"}.layui-icon-menu-fill:before{content:"\e60f"}.layui-icon-search:before{content:"\e615"}.layui-icon-share:before{content:"\e641"}.layui-icon-set-sm:before{content:"\e620"}.layui-icon-engine:before{content:"\e628"}.layui-icon-close:before{content:"\1006"}.layui-icon-close-fill:before{content:"\1007"}.layui-icon-chart-screen:before{content:"\e629"}.layui-icon-star:before{content:"\e600"}.layui-icon-circle-dot:before{content:"\e617"}.layui-icon-chat:before{content:"\e606"}.layui-icon-release:before{content:"\e609"}.layui-icon-list:before{content:"\e60a"}.layui-icon-chart:before{content:"\e62c"}.layui-icon-ok-circle:before{content:"\1005"}.layui-icon-layim-theme:before{content:"\e61b"}.layui-icon-table:before{content:"\e62d"}.layui-icon-right:before{content:"\e602"}.layui-icon-left:before{content:"\e603"}.layui-icon-cart-simple:before{content:"\e698"}.layui-icon-face-cry:before{content:"\e69c"}.layui-icon-face-smile:before{content:"\e6af"}.layui-icon-survey:before{content:"\e6b2"}.layui-icon-tree:before{content:"\e62e"}.layui-icon-ie:before{content:"\e7bb"}.layui-icon-upload-circle:before{content:"\e62f"}.layui-icon-add-circle:before{content:"\e61f"}.layui-icon-download-circle:before{content:"\e601"}.layui-icon-templeate-1:before{content:"\e630"}.layui-icon-util:before{content:"\e631"}.layui-icon-face-surprised:before{content:"\e664"}.layui-icon-edit:before{content:"\e642"}.layui-icon-speaker:before{content:"\e645"}.layui-icon-down:before{content:"\e61a"}.layui-icon-file:before{content:"\e621"}.layui-icon-layouts:before{content:"\e632"}.layui-icon-rate-half:before{content:"\e6c9"}.layui-icon-add-circle-fine:before{content:"\e608"}.layui-icon-prev-circle:before{content:"\e633"}.layui-icon-read:before{content:"\e705"}.layui-icon-404:before{content:"\e61c"}.layui-icon-carousel:before{content:"\e634"}.layui-icon-help:before{content:"\e607"}.layui-icon-code-circle:before{content:"\e635"}.layui-icon-windows:before{content:"\e67f"}.layui-icon-water:before{content:"\e636"}.layui-icon-username:before{content:"\e66f"}.layui-icon-find-fill:before{content:"\e670"}.layui-icon-about:before{content:"\e60b"}.layui-icon-location:before{content:"\e715"}.layui-icon-up:before{content:"\e619"}.layui-icon-pause:before{content:"\e651"}.layui-icon-date:before{content:"\e637"}.layui-icon-layim-uploadfile:before{content:"\e61d"}.layui-icon-delete:before{content:"\e640"}.layui-icon-play:before{content:"\e652"}.layui-icon-top:before{content:"\e604"}.layui-icon-firefox:before{content:"\e686"}.layui-icon-friends:before{content:"\e612"}.layui-icon-refresh-3:before{content:"\e9aa"}.layui-icon-ok:before{content:"\e605"}.layui-icon-layer:before{content:"\e638"}.layui-icon-face-smile-fine:before{content:"\e60c"}.layui-icon-dollar:before{content:"\e659"}.layui-icon-group:before{content:"\e613"}.layui-icon-layim-download:before{content:"\e61e"}.layui-icon-picture-fine:before{content:"\e60d"}.layui-icon-link:before{content:"\e64c"}.layui-icon-diamond:before{content:"\e735"}.layui-icon-log:before{content:"\e60e"}.layui-icon-key:before{content:"\e683"}.layui-icon-rate-solid:before{content:"\e67a"}.layui-icon-fonts-del:before{content:"\e64f"}.layui-icon-unlink:before{content:"\e64d"}.layui-icon-fonts-clear:before{content:"\e639"}.layui-icon-triangle-r:before{content:"\e623"}.layui-icon-circle:before{content:"\e63f"}.layui-icon-radio:before{content:"\e643"}.layui-icon-align-center:before{content:"\e647"}.layui-icon-align-right:before{content:"\e648"}.layui-icon-align-left:before{content:"\e649"}.layui-icon-loading-1:before{content:"\e63e"}.layui-icon-return:before{content:"\e65c"}.layui-icon-fonts-strong:before{content:"\e62b"}.layui-icon-upload:before{content:"\e67c"}.layui-icon-dialogue:before{content:"\e63a"}.layui-icon-video:before{content:"\e6ed"}.layui-icon-headset:before{content:"\e6fc"}.layui-icon-cellphone-fine:before{content:"\e63b"}.layui-icon-add-1:before{content:"\e654"}.layui-icon-face-smile-b:before{content:"\e650"}.layui-icon-fonts-html:before{content:"\e64b"}.layui-icon-screen-full:before{content:"\e622"}.layui-icon-form:before{content:"\e63c"}.layui-icon-cart:before{content:"\e657"}.layui-icon-camera-fill:before{content:"\e65d"}.layui-icon-tabs:before{content:"\e62a"}.layui-icon-heart-fill:before{content:"\e68f"}.layui-icon-fonts-code:before{content:"\e64e"}.layui-icon-ios:before{content:"\e680"}.layui-icon-at:before{content:"\e687"}.layui-icon-fire:before{content:"\e756"}.layui-icon-set:before{content:"\e716"}.layui-icon-fonts-u:before{content:"\e646"}.layui-icon-triangle-d:before{content:"\e625"}.layui-icon-tips:before{content:"\e702"}.layui-icon-picture:before{content:"\e64a"}.layui-icon-more-vertical:before{content:"\e671"}.layui-icon-bluetooth:before{content:"\e689"}.layui-icon-flag:before{content:"\e66c"}.layui-icon-loading:before{content:"\e63d"}.layui-icon-fonts-i:before{content:"\e644"}.layui-icon-refresh-1:before{content:"\e666"}.layui-icon-rmb:before{content:"\e65e"}.layui-icon-addition:before{content:"\e624"}.layui-icon-home:before{content:"\e68e"}.layui-icon-time:before{content:"\e68d"}.layui-icon-user:before{content:"\e770"}.layui-icon-notice:before{content:"\e667"}.layui-icon-chrome:before{content:"\e68a"}.layui-icon-edge:before{content:"\e68b"}.layui-icon-login-weibo:before{content:"\e675"}.layui-icon-voice:before{content:"\e688"}.layui-icon-upload-drag:before{content:"\e681"}.layui-icon-login-qq:before{content:"\e676"}.layui-icon-snowflake:before{content:"\e6b1"}.layui-icon-heart:before{content:"\e68c"}.layui-icon-logout:before{content:"\e682"}.layui-icon-file-b:before{content:"\e655"}.layui-icon-template:before{content:"\e663"}.layui-icon-transfer:before{content:"\e691"}.layui-icon-auz:before{content:"\e672"}.layui-icon-console:before{content:"\e665"}.layui-icon-app:before{content:"\e653"}.layui-icon-prev:before{content:"\e65a"}.layui-icon-website:before{content:"\e7ae"}.layui-icon-next:before{content:"\e65b"}.layui-icon-component:before{content:"\e857"}.layui-icon-android:before{content:"\e684"}.layui-icon-more:before{content:"\e65f"}.layui-icon-login-wechat:before{content:"\e677"}.layui-icon-shrink-right:before{content:"\e668"}.layui-icon-spread-left:before{content:"\e66b"}.layui-icon-camera:before{content:"\e660"}.layui-icon-note:before{content:"\e66e"}.layui-icon-refresh:before{content:"\e669"}.layui-icon-female:before{content:"\e661"}.layui-icon-male:before{content:"\e662"}.layui-icon-screen-restore:before{content:"\e758"}.layui-icon-password:before{content:"\e673"}.layui-icon-senior:before{content:"\e674"}.layui-icon-theme:before{content:"\e66a"}.layui-icon-tread:before{content:"\e6c5"}.layui-icon-praise:before{content:"\e6c6"}.layui-icon-star-fill:before{content:"\e658"}.layui-icon-rate:before{content:"\e67b"}.layui-icon-template-1:before{content:"\e656"}.layui-icon-vercode:before{content:"\e679"}.layui-icon-service:before{content:"\e626"}.layui-icon-cellphone:before{content:"\e678"}.layui-icon-print:before{content:"\e66d"}.layui-icon-cols:before{content:"\e610"}.layui-icon-wifi:before{content:"\e7e0"}.layui-icon-export:before{content:"\e67d"}.layui-icon-rss:before{content:"\e808"}.layui-icon-slider:before{content:"\e714"}.layui-icon-email:before{content:"\e618"}.layui-icon-subtraction:before{content:"\e67e"}.layui-icon-mike:before{content:"\e6dc"}.layui-icon-light:before{content:"\e748"}.layui-icon-gift:before{content:"\e627"}.layui-icon-mute:before{content:"\e685"}.layui-icon-reduce-circle:before{content:"\e616"}.layui-icon-music:before{content:"\e690"}.layui-main{width:1140px;margin:0 auto}.layui-header{z-index:1000;height:60px}.layui-header a:hover{transition:all .5s;-webkit-transition:all .5s}.layui-side{position:fixed;left:0;top:0;bottom:0;z-index:999;width:200px;overflow-x:hidden}.layui-side-scroll{position:relative;width:220px;height:100%;overflow-x:hidden}.layui-body{position:absolute;left:200px;right:0;top:0;bottom:0;z-index:998;width:auto;overflow-y:auto;box-sizing:border-box}.layui-layout-body{overflow:hidden}.layui-layout-admin .layui-header{background-color:#23262E}.layui-layout-admin .layui-side{top:60px;width:200px;overflow-x:hidden}.layui-layout-admin .layui-body{position:fixed;top:60px;bottom:44px}.layui-layout-admin .layui-main{width:auto;margin:0 15px}.layui-layout-admin .layui-footer{position:fixed;left:200px;right:0;bottom:0;height:44px;line-height:44px;padding:0 15px;background-color:#eee}.layui-layout-admin .layui-logo{position:absolute;left:0;top:0;width:200px;height:100%;line-height:60px;text-align:center;color:#009688;font-size:16px}.layui-layout-admin .layui-header .layui-nav{background:0 0}.layui-layout-left{position:absolute!important;left:200px;top:0}.layui-layout-right{position:absolute!important;right:0;top:0}.layui-container{position:relative;margin:0 auto;padding:0 15px;box-sizing:border-box}.layui-fluid{position:relative;margin:0 auto;padding:0 15px}.layui-row:after,.layui-row:before{content:'';display:block;clear:both}.layui-col-lg1,.layui-col-lg10,.layui-col-lg11,.layui-col-lg12,.layui-col-lg2,.layui-col-lg3,.layui-col-lg4,.layui-col-lg5,.layui-col-lg6,.layui-col-lg7,.layui-col-lg8,.layui-col-lg9,.layui-col-md1,.layui-col-md10,.layui-col-md11,.layui-col-md12,.layui-col-md2,.layui-col-md3,.layui-col-md4,.layui-col-md5,.layui-col-md6,.layui-col-md7,.layui-col-md8,.layui-col-md9,.layui-col-sm1,.layui-col-sm10,.layui-col-sm11,.layui-col-sm12,.layui-col-sm2,.layui-col-sm3,.layui-col-sm4,.layui-col-sm5,.layui-col-sm6,.layui-col-sm7,.layui-col-sm8,.layui-col-sm9,.layui-col-xs1,.layui-col-xs10,.layui-col-xs11,.layui-col-xs12,.layui-col-xs2,.layui-col-xs3,.layui-col-xs4,.layui-col-xs5,.layui-col-xs6,.layui-col-xs7,.layui-col-xs8,.layui-col-xs9{position:relative;display:block;box-sizing:border-box}.layui-col-xs1,.layui-col-xs10,.layui-col-xs11,.layui-col-xs12,.layui-col-xs2,.layui-col-xs3,.layui-col-xs4,.layui-col-xs5,.layui-col-xs6,.layui-col-xs7,.layui-col-xs8,.layui-col-xs9{float:left}.layui-col-xs1{width:8.33333333%}.layui-col-xs2{width:16.66666667%}.layui-col-xs3{width:25%}.layui-col-xs4{width:33.33333333%}.layui-col-xs5{width:41.66666667%}.layui-col-xs6{width:50%}.layui-col-xs7{width:58.33333333%}.layui-col-xs8{width:66.66666667%}.layui-col-xs9{width:75%}.layui-col-xs10{width:83.33333333%}.layui-col-xs11{width:91.66666667%}.layui-col-xs12{width:100%}.layui-col-xs-offset1{margin-left:8.33333333%}.layui-col-xs-offset2{margin-left:16.66666667%}.layui-col-xs-offset3{margin-left:25%}.layui-col-xs-offset4{margin-left:33.33333333%}.layui-col-xs-offset5{margin-left:41.66666667%}.layui-col-xs-offset6{margin-left:50%}.layui-col-xs-offset7{margin-left:58.33333333%}.layui-col-xs-offset8{margin-left:66.66666667%}.layui-col-xs-offset9{margin-left:75%}.layui-col-xs-offset10{margin-left:83.33333333%}.layui-col-xs-offset11{margin-left:91.66666667%}.layui-col-xs-offset12{margin-left:100%}@media screen and (max-width:768px){.layui-hide-xs{display:none!important}.layui-show-xs-block{display:block!important}.layui-show-xs-inline{display:inline!important}.layui-show-xs-inline-block{display:inline-block!important}}@media screen and (min-width:768px){.layui-container{width:750px}.layui-hide-sm{display:none!important}.layui-show-sm-block{display:block!important}.layui-show-sm-inline{display:inline!important}.layui-show-sm-inline-block{display:inline-block!important}.layui-col-sm1,.layui-col-sm10,.layui-col-sm11,.layui-col-sm12,.layui-col-sm2,.layui-col-sm3,.layui-col-sm4,.layui-col-sm5,.layui-col-sm6,.layui-col-sm7,.layui-col-sm8,.layui-col-sm9{float:left}.layui-col-sm1{width:8.33333333%}.layui-col-sm2{width:16.66666667%}.layui-col-sm3{width:25%}.layui-col-sm4{width:33.33333333%}.layui-col-sm5{width:41.66666667%}.layui-col-sm6{width:50%}.layui-col-sm7{width:58.33333333%}.layui-col-sm8{width:66.66666667%}.layui-col-sm9{width:75%}.layui-col-sm10{width:83.33333333%}.layui-col-sm11{width:91.66666667%}.layui-col-sm12{width:100%}.layui-col-sm-offset1{margin-left:8.33333333%}.layui-col-sm-offset2{margin-left:16.66666667%}.layui-col-sm-offset3{margin-left:25%}.layui-col-sm-offset4{margin-left:33.33333333%}.layui-col-sm-offset5{margin-left:41.66666667%}.layui-col-sm-offset6{margin-left:50%}.layui-col-sm-offset7{margin-left:58.33333333%}.layui-col-sm-offset8{margin-left:66.66666667%}.layui-col-sm-offset9{margin-left:75%}.layui-col-sm-offset10{margin-left:83.33333333%}.layui-col-sm-offset11{margin-left:91.66666667%}.layui-col-sm-offset12{margin-left:100%}}@media screen and (min-width:992px){.layui-container{width:970px}.layui-hide-md{display:none!important}.layui-show-md-block{display:block!important}.layui-show-md-inline{display:inline!important}.layui-show-md-inline-block{display:inline-block!important}.layui-col-md1,.layui-col-md10,.layui-col-md11,.layui-col-md12,.layui-col-md2,.layui-col-md3,.layui-col-md4,.layui-col-md5,.layui-col-md6,.layui-col-md7,.layui-col-md8,.layui-col-md9{float:left}.layui-col-md1{width:8.33333333%}.layui-col-md2{width:16.66666667%}.layui-col-md3{width:25%}.layui-col-md4{width:33.33333333%}.layui-col-md5{width:41.66666667%}.layui-col-md6{width:50%}.layui-col-md7{width:58.33333333%}.layui-col-md8{width:66.66666667%}.layui-col-md9{width:75%}.layui-col-md10{width:83.33333333%}.layui-col-md11{width:91.66666667%}.layui-col-md12{width:100%}.layui-col-md-offset1{margin-left:8.33333333%}.layui-col-md-offset2{margin-left:16.66666667%}.layui-col-md-offset3{margin-left:25%}.layui-col-md-offset4{margin-left:33.33333333%}.layui-col-md-offset5{margin-left:41.66666667%}.layui-col-md-offset6{margin-left:50%}.layui-col-md-offset7{margin-left:58.33333333%}.layui-col-md-offset8{margin-left:66.66666667%}.layui-col-md-offset9{margin-left:75%}.layui-col-md-offset10{margin-left:83.33333333%}.layui-col-md-offset11{margin-left:91.66666667%}.layui-col-md-offset12{margin-left:100%}}@media screen and (min-width:1200px){.layui-container{width:1170px}.layui-hide-lg{display:none!important}.layui-show-lg-block{display:block!important}.layui-show-lg-inline{display:inline!important}.layui-show-lg-inline-block{display:inline-block!important}.layui-col-lg1,.layui-col-lg10,.layui-col-lg11,.layui-col-lg12,.layui-col-lg2,.layui-col-lg3,.layui-col-lg4,.layui-col-lg5,.layui-col-lg6,.layui-col-lg7,.layui-col-lg8,.layui-col-lg9{float:left}.layui-col-lg1{width:8.33333333%}.layui-col-lg2{width:16.66666667%}.layui-col-lg3{width:25%}.layui-col-lg4{width:33.33333333%}.layui-col-lg5{width:41.66666667%}.layui-col-lg6{width:50%}.layui-col-lg7{width:58.33333333%}.layui-col-lg8{width:66.66666667%}.layui-col-lg9{width:75%}.layui-col-lg10{width:83.33333333%}.layui-col-lg11{width:91.66666667%}.layui-col-lg12{width:100%}.layui-col-lg-offset1{margin-left:8.33333333%}.layui-col-lg-offset2{margin-left:16.66666667%}.layui-col-lg-offset3{margin-left:25%}.layui-col-lg-offset4{margin-left:33.33333333%}.layui-col-lg-offset5{margin-left:41.66666667%}.layui-col-lg-offset6{margin-left:50%}.layui-col-lg-offset7{margin-left:58.33333333%}.layui-col-lg-offset8{margin-left:66.66666667%}.layui-col-lg-offset9{margin-left:75%}.layui-col-lg-offset10{margin-left:83.33333333%}.layui-col-lg-offset11{margin-left:91.66666667%}.layui-col-lg-offset12{margin-left:100%}}.layui-col-space1{margin:-.5px}.layui-col-space1>*{padding:.5px}.layui-col-space2{margin:-1px}.layui-col-space2>*{padding:1px}.layui-col-space4{margin:-2px}.layui-col-space4>*{padding:2px}.layui-col-space5{margin:-2.5px}.layui-col-space5>*{padding:2.5px}.layui-col-space6{margin:-3px}.layui-col-space6>*{padding:3px}.layui-col-space8{margin:-4px}.layui-col-space8>*{padding:4px}.layui-col-space10{margin:-5px}.layui-col-space10>*{padding:5px}.layui-col-space12{margin:-6px}.layui-col-space12>*{padding:6px}.layui-col-space14{margin:-7px}.layui-col-space14>*{padding:7px}.layui-col-space15{margin:-7.5px}.layui-col-space15>*{padding:7.5px}.layui-col-space16{margin:-8px}.layui-col-space16>*{padding:8px}.layui-col-space18{margin:-9px}.layui-col-space18>*{padding:9px}.layui-col-space20{margin:-10px}.layui-col-space20>*{padding:10px}.layui-col-space22{margin:-11px}.layui-col-space22>*{padding:11px}.layui-col-space24{margin:-12px}.layui-col-space24>*{padding:12px}.layui-col-space25{margin:-12.5px}.layui-col-space25>*{padding:12.5px}.layui-col-space26{margin:-13px}.layui-col-space26>*{padding:13px}.layui-col-space28{margin:-14px}.layui-col-space28>*{padding:14px}.layui-col-space30{margin:-15px}.layui-col-space30>*{padding:15px}.layui-btn,.layui-input,.layui-select,.layui-textarea,.layui-upload-button{outline:0;-webkit-appearance:none;transition:all .3s;-webkit-transition:all .3s;box-sizing:border-box}.layui-elem-quote{margin-bottom:10px;padding:15px;line-height:22px;border-left:5px solid #009688;border-radius:0 2px 2px 0;background-color:#f2f2f2}.layui-quote-nm{border-style:solid;border-width:1px 1px 1px 5px;background:0 0}.layui-elem-field{margin-bottom:10px;padding:0;border-width:1px;border-style:solid}.layui-elem-field legend{margin-left:20px;padding:0 10px;font-size:20px;font-weight:300}.layui-field-title{margin:10px 0 20px;border-width:1px 0 0}.layui-field-box{padding:10px 15px}.layui-field-title .layui-field-box{padding:10px 0}.layui-progress{position:relative;height:6px;border-radius:20px;background-color:#e2e2e2}.layui-progress-bar{position:absolute;left:0;top:0;width:0;max-width:100%;height:6px;border-radius:20px;text-align:right;background-color:#5FB878;transition:all .3s;-webkit-transition:all .3s}.layui-progress-big,.layui-progress-big .layui-progress-bar{height:18px;line-height:18px}.layui-progress-text{position:relative;top:-20px;line-height:18px;font-size:12px;color:#666}.layui-progress-big .layui-progress-text{position:static;padding:0 10px;color:#fff}.layui-collapse{border-width:1px;border-style:solid;border-radius:2px}.layui-colla-content,.layui-colla-item{border-top-width:1px;border-top-style:solid}.layui-colla-item:first-child{border-top:none}.layui-colla-title{position:relative;height:42px;line-height:42px;padding:0 15px 0 35px;color:#333;background-color:#f2f2f2;cursor:pointer;font-size:14px;overflow:hidden}.layui-colla-content{display:none;padding:10px 15px;line-height:22px;color:#666}.layui-colla-icon{position:absolute;left:15px;top:0;font-size:14px}.layui-card{margin-bottom:15px;border-radius:2px;background-color:#fff;box-shadow:0 1px 2px 0 rgba(0,0,0,.05)}.layui-card:last-child{margin-bottom:0}.layui-card-header{position:relative;height:42px;line-height:42px;padding:0 15px;border-bottom:1px solid #f6f6f6;color:#333;border-radius:2px 2px 0 0;font-size:14px}.layui-bg-black,.layui-bg-blue,.layui-bg-cyan,.layui-bg-green,.layui-bg-orange,.layui-bg-red{color:#fff!important}.layui-card-body{position:relative;padding:10px 15px;line-height:24px}.layui-card-body[pad15]{padding:15px}.layui-card-body[pad20]{padding:20px}.layui-card-body .layui-table{margin:5px 0}.layui-card .layui-tab{margin:0}.layui-panel-window{position:relative;padding:15px;border-radius:0;border-top:5px solid #E6E6E6;background-color:#fff}.layui-auxiliar-moving{position:fixed;left:0;right:0;top:0;bottom:0;width:100%;height:100%;background:0 0;z-index:9999999999}.layui-form-label,.layui-form-mid,.layui-form-select,.layui-input-block,.layui-input-inline,.layui-textarea{position:relative}.layui-bg-red{background-color:#FF5722!important}.layui-bg-orange{background-color:#FFB800!important}.layui-bg-green{background-color:#009688!important}.layui-bg-cyan{background-color:#2F4056!important}.layui-bg-blue{background-color:#1E9FFF!important}.layui-bg-black{background-color:#393D49!important}.layui-bg-gray{background-color:#eee!important;color:#666!important}.layui-badge-rim,.layui-colla-content,.layui-colla-item,.layui-collapse,.layui-elem-field,.layui-form-pane .layui-form-item[pane],.layui-form-pane .layui-form-label,.layui-input,.layui-layedit,.layui-layedit-tool,.layui-quote-nm,.layui-select,.layui-tab-bar,.layui-tab-card,.layui-tab-title,.layui-tab-title .layui-this:after,.layui-textarea{border-color:#e6e6e6}.layui-timeline-item:before,hr{background-color:#e6e6e6}.layui-text{line-height:22px;font-size:14px;color:#666}.layui-text h1,.layui-text h2,.layui-text h3{font-weight:500;color:#333}.layui-text h1{font-size:30px}.layui-text h2{font-size:24px}.layui-text h3{font-size:18px}.layui-text a:not(.layui-btn){color:#01AAED}.layui-text a:not(.layui-btn):hover{text-decoration:underline}.layui-text ul{padding:5px 0 5px 15px}.layui-text ul li{margin-top:5px;list-style-type:disc}.layui-text em,.layui-word-aux{color:#999!important;padding:0 5px!important}.layui-btn{display:inline-block;height:38px;line-height:38px;padding:0 18px;background-color:#009688;color:#fff;white-space:nowrap;text-align:center;font-size:14px;border:none;border-radius:2px;cursor:pointer}.layui-btn:hover{opacity:.8;filter:alpha(opacity=80);color:#fff}.layui-btn:active{opacity:1;filter:alpha(opacity=100)}.layui-btn+.layui-btn{margin-left:10px}.layui-btn-container{font-size:0}.layui-btn-container .layui-btn{margin-right:10px;margin-bottom:10px}.layui-btn-container .layui-btn+.layui-btn{margin-left:0}.layui-table .layui-btn-container .layui-btn{margin-bottom:9px}.layui-btn-radius{border-radius:100px}.layui-btn .layui-icon{margin-right:3px;font-size:18px;vertical-align:bottom;vertical-align:middle\9}.layui-btn-primary{border:1px solid #C9C9C9;background-color:#fff;color:#555}.layui-btn-primary:hover{border-color:#009688;color:#333}.layui-btn-normal{background-color:#1E9FFF}.layui-btn-warm{background-color:#FFB800}.layui-btn-danger{background-color:#FF5722}.layui-btn-checked{background-color:#5FB878}.layui-btn-disabled,.layui-btn-disabled:active,.layui-btn-disabled:hover{border:1px solid #e6e6e6;background-color:#FBFBFB;color:#C9C9C9;cursor:not-allowed;opacity:1}.layui-btn-lg{height:44px;line-height:44px;padding:0 25px;font-size:16px}.layui-btn-sm{height:30px;line-height:30px;padding:0 10px;font-size:12px}.layui-btn-sm i{font-size:16px!important}.layui-btn-xs{height:22px;line-height:22px;padding:0 5px;font-size:12px}.layui-btn-xs i{font-size:14px!important}.layui-btn-group{display:inline-block;vertical-align:middle;font-size:0}.layui-btn-group .layui-btn{margin-left:0!important;margin-right:0!important;border-left:1px solid rgba(255,255,255,.5);border-radius:0}.layui-btn-group .layui-btn-primary{border-left:none}.layui-btn-group .layui-btn-primary:hover{border-color:#C9C9C9;color:#009688}.layui-btn-group .layui-btn:first-child{border-left:none;border-radius:2px 0 0 2px}.layui-btn-group .layui-btn-primary:first-child{border-left:1px solid #c9c9c9}.layui-btn-group .layui-btn:last-child{border-radius:0 2px 2px 0}.layui-btn-group .layui-btn+.layui-btn{margin-left:0}.layui-btn-group+.layui-btn-group{margin-left:10px}.layui-btn-fluid{width:100%}.layui-input,.layui-select,.layui-textarea{height:38px;line-height:1.3;line-height:38px\9;border-width:1px;border-style:solid;background-color:#fff;border-radius:2px}.layui-input::-webkit-input-placeholder,.layui-select::-webkit-input-placeholder,.layui-textarea::-webkit-input-placeholder{line-height:1.3}.layui-input,.layui-textarea{display:block;width:100%;padding-left:10px}.layui-input:hover,.layui-textarea:hover{border-color:#D2D2D2!important}.layui-input:focus,.layui-textarea:focus{border-color:#C9C9C9!important}.layui-textarea{min-height:100px;height:auto;line-height:20px;padding:6px 10px;resize:vertical}.layui-select{padding:0 10px}.layui-form input[type=checkbox],.layui-form input[type=radio],.layui-form select{display:none}.layui-form [lay-ignore]{display:initial}.layui-form-item{margin-bottom:15px;clear:both;*zoom:1}.layui-form-item:after{content:'\20';clear:both;*zoom:1;display:block;height:0}.layui-form-label{float:left;display:block;padding:9px 15px;width:80px;font-weight:400;line-height:20px;text-align:right}.layui-form-label-col{display:block;float:none;padding:9px 0;line-height:20px;text-align:left}.layui-form-item .layui-inline{margin-bottom:5px;margin-right:10px}.layui-input-block{margin-left:110px;min-height:36px}.layui-input-inline{display:inline-block;vertical-align:middle}.layui-form-item .layui-input-inline{float:left;width:190px;margin-right:10px}.layui-form-text .layui-input-inline{width:auto}.layui-form-mid{float:left;display:block;padding:9px 0!important;line-height:20px;margin-right:10px}.layui-form-danger+.layui-form-select .layui-input,.layui-form-danger:focus{border-color:#FF5722!important}.layui-form-select .layui-input{padding-right:30px;cursor:pointer}.layui-form-select .layui-edge{position:absolute;right:10px;top:50%;margin-top:-3px;cursor:pointer;border-width:6px;border-top-color:#c2c2c2;border-top-style:solid;transition:all .3s;-webkit-transition:all .3s}.layui-form-select dl{display:none;position:absolute;left:0;top:42px;padding:5px 0;z-index:899;min-width:100%;border:1px solid #d2d2d2;max-height:300px;overflow-y:auto;background-color:#fff;border-radius:2px;box-shadow:0 2px 4px rgba(0,0,0,.12);box-sizing:border-box}.layui-form-select dl dd,.layui-form-select dl dt{padding:0 10px;line-height:36px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.layui-form-select dl dt{font-size:12px;color:#999}.layui-form-select dl dd{cursor:pointer}.layui-form-select dl dd:hover{background-color:#f2f2f2;-webkit-transition:.5s all;transition:.5s all}.layui-form-select .layui-select-group dd{padding-left:20px}.layui-form-select dl dd.layui-select-tips{padding-left:10px!important;color:#999}.layui-form-select dl dd.layui-this{background-color:#5FB878;color:#fff}.layui-form-checkbox,.layui-form-select dl dd.layui-disabled{background-color:#fff}.layui-form-selected dl{display:block}.layui-form-checkbox,.layui-form-checkbox *,.layui-form-switch{display:inline-block;vertical-align:middle}.layui-form-selected .layui-edge{margin-top:-9px;-webkit-transform:rotate(180deg);transform:rotate(180deg);margin-top:-3px\9}:root .layui-form-selected .layui-edge{margin-top:-9px\0/IE9}.layui-form-selectup dl{top:auto;bottom:42px}.layui-select-none{margin:5px 0;text-align:center;color:#999}.layui-select-disabled .layui-disabled{border-color:#eee!important}.layui-select-disabled .layui-edge{border-top-color:#d2d2d2}.layui-form-checkbox{position:relative;height:30px;line-height:30px;margin-right:10px;padding-right:30px;cursor:pointer;font-size:0;-webkit-transition:.1s linear;transition:.1s linear;box-sizing:border-box}.layui-form-checkbox span{padding:0 10px;height:100%;font-size:14px;border-radius:2px 0 0 2px;background-color:#d2d2d2;color:#fff;overflow:hidden}.layui-form-checkbox:hover span{background-color:#c2c2c2}.layui-form-checkbox i{position:absolute;right:0;top:0;width:30px;height:28px;border:1px solid #d2d2d2;border-left:none;border-radius:0 2px 2px 0;color:#fff;font-size:20px;text-align:center}.layui-form-checkbox:hover i{border-color:#c2c2c2;color:#c2c2c2}.layui-form-checked,.layui-form-checked:hover{border-color:#5FB878}.layui-form-checked span,.layui-form-checked:hover span{background-color:#5FB878}.layui-form-checked i,.layui-form-checked:hover i{color:#5FB878}.layui-form-item .layui-form-checkbox{margin-top:4px}.layui-form-checkbox[lay-skin=primary]{height:auto!important;line-height:normal!important;min-width:18px;min-height:18px;border:none!important;margin-right:0;padding-left:28px;padding-right:0;background:0 0}.layui-form-checkbox[lay-skin=primary] span{padding-left:0;padding-right:15px;line-height:18px;background:0 0;color:#666}.layui-form-checkbox[lay-skin=primary] i{right:auto;left:0;width:16px;height:16px;line-height:16px;border:1px solid #d2d2d2;font-size:12px;border-radius:2px;background-color:#fff;-webkit-transition:.1s linear;transition:.1s linear}.layui-form-checkbox[lay-skin=primary]:hover i{border-color:#5FB878;color:#fff}.layui-form-checked[lay-skin=primary] i{border-color:#5FB878!important;background-color:#5FB878;color:#fff}.layui-checkbox-disbaled[lay-skin=primary] span{background:0 0!important;color:#c2c2c2}.layui-checkbox-disbaled[lay-skin=primary]:hover i{border-color:#d2d2d2}.layui-form-item .layui-form-checkbox[lay-skin=primary]{margin-top:10px}.layui-form-switch{position:relative;height:22px;line-height:22px;min-width:35px;padding:0 5px;margin-top:8px;border:1px solid #d2d2d2;border-radius:20px;cursor:pointer;background-color:#fff;-webkit-transition:.1s linear;transition:.1s linear}.layui-form-switch i{position:absolute;left:5px;top:3px;width:16px;height:16px;border-radius:20px;background-color:#d2d2d2;-webkit-transition:.1s linear;transition:.1s linear}.layui-form-switch em{position:relative;top:0;width:25px;margin-left:21px;padding:0!important;text-align:center!important;color:#999!important;font-style:normal!important;font-size:12px}.layui-form-onswitch{border-color:#5FB878;background-color:#5FB878}.layui-checkbox-disbaled,.layui-checkbox-disbaled i{border-color:#e2e2e2!important}.layui-form-onswitch i{left:100%;margin-left:-21px;background-color:#fff}.layui-form-onswitch em{margin-left:5px;margin-right:21px;color:#fff!important}.layui-checkbox-disbaled span{background-color:#e2e2e2!important}.layui-checkbox-disbaled:hover i{color:#fff!important}[lay-radio]{display:none}.layui-form-radio,.layui-form-radio *{display:inline-block;vertical-align:middle}.layui-form-radio{line-height:28px;margin:6px 10px 0 0;padding-right:10px;cursor:pointer;font-size:0}.layui-form-radio *{font-size:14px}.layui-form-radio>i{margin-right:8px;font-size:22px;color:#c2c2c2}.layui-form-radio>i:hover,.layui-form-radioed>i{color:#5FB878}.layui-radio-disbaled>i{color:#e2e2e2!important}.layui-form-pane .layui-form-label{width:110px;padding:8px 15px;height:38px;line-height:20px;border-width:1px;border-style:solid;border-radius:2px 0 0 2px;text-align:center;background-color:#FBFBFB;overflow:hidden;box-sizing:border-box}.layui-form-pane .layui-input-inline{margin-left:-1px}.layui-form-pane .layui-input-block{margin-left:110px;left:-1px}.layui-form-pane .layui-input{border-radius:0 2px 2px 0}.layui-form-pane .layui-form-text .layui-form-label{float:none;width:100%;border-radius:2px;box-sizing:border-box;text-align:left}.layui-form-pane .layui-form-text .layui-input-inline{display:block;margin:0;top:-1px;clear:both}.layui-form-pane .layui-form-text .layui-input-block{margin:0;left:0;top:-1px}.layui-form-pane .layui-form-text .layui-textarea{min-height:100px;border-radius:0 0 2px 2px}.layui-form-pane .layui-form-checkbox{margin:4px 0 4px 10px}.layui-form-pane .layui-form-radio,.layui-form-pane .layui-form-switch{margin-top:6px;margin-left:10px}.layui-form-pane .layui-form-item[pane]{position:relative;border-width:1px;border-style:solid}.layui-form-pane .layui-form-item[pane] .layui-form-label{position:absolute;left:0;top:0;height:100%;border-width:0 1px 0 0}.layui-form-pane .layui-form-item[pane] .layui-input-inline{margin-left:110px}@media screen and (max-width:450px){.layui-form-item .layui-form-label{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.layui-form-item .layui-inline{display:block;margin-right:0;margin-bottom:20px;clear:both}.layui-form-item .layui-inline:after{content:'\20';clear:both;display:block;height:0}.layui-form-item .layui-input-inline{display:block;float:none;left:-3px;width:auto;margin:0 0 10px 112px}.layui-form-item .layui-input-inline+.layui-form-mid{margin-left:110px;top:-5px;padding:0}.layui-form-item .layui-form-checkbox{margin-right:5px;margin-bottom:5px}}.layui-layedit{border-width:1px;border-style:solid;border-radius:2px}.layui-layedit-tool{padding:3px 5px;border-bottom-width:1px;border-bottom-style:solid;font-size:0}.layedit-tool-fixed{position:fixed;top:0;border-top:1px solid #e2e2e2}.layui-layedit-tool .layedit-tool-mid,.layui-layedit-tool .layui-icon{display:inline-block;vertical-align:middle;text-align:center;font-size:14px}.layui-layedit-tool .layui-icon{position:relative;width:32px;height:30px;line-height:30px;margin:3px 5px;color:#777;cursor:pointer;border-radius:2px}.layui-layedit-tool .layui-icon:hover{color:#393D49}.layui-layedit-tool .layui-icon:active{color:#000}.layui-layedit-tool .layedit-tool-active{background-color:#e2e2e2;color:#000}.layui-layedit-tool .layui-disabled,.layui-layedit-tool .layui-disabled:hover{color:#d2d2d2;cursor:not-allowed}.layui-layedit-tool .layedit-tool-mid{width:1px;height:18px;margin:0 10px;background-color:#d2d2d2}.layedit-tool-html{width:50px!important;font-size:30px!important}.layedit-tool-b,.layedit-tool-code,.layedit-tool-help{font-size:16px!important}.layedit-tool-d,.layedit-tool-face,.layedit-tool-image,.layedit-tool-unlink{font-size:18px!important}.layedit-tool-image input{position:absolute;font-size:0;left:0;top:0;width:100%;height:100%;opacity:.01;filter:Alpha(opacity=1);cursor:pointer}.layui-layedit-iframe iframe{display:block;width:100%}#LAY_layedit_code{overflow:hidden}.layui-laypage{display:inline-block;*display:inline;*zoom:1;vertical-align:middle;margin:10px 0;font-size:0}.layui-laypage>a:first-child,.layui-laypage>a:first-child em{border-radius:2px 0 0 2px}.layui-laypage>a:last-child,.layui-laypage>a:last-child em{border-radius:0 2px 2px 0}.layui-laypage>:first-child{margin-left:0!important}.layui-laypage>:last-child{margin-right:0!important}.layui-laypage a,.layui-laypage button,.layui-laypage input,.layui-laypage select,.layui-laypage span{border:1px solid #e2e2e2}.layui-laypage a,.layui-laypage span{display:inline-block;*display:inline;*zoom:1;vertical-align:middle;padding:0 15px;height:28px;line-height:28px;margin:0 -1px 5px 0;background-color:#fff;color:#333;font-size:12px}.layui-flow-more a *,.layui-laypage input,.layui-table-view select[lay-ignore]{display:inline-block}.layui-laypage a:hover{color:#009688}.layui-laypage em{font-style:normal}.layui-laypage .layui-laypage-spr{color:#999;font-weight:700}.layui-laypage a{text-decoration:none}.layui-laypage .layui-laypage-curr{position:relative}.layui-laypage .layui-laypage-curr em{position:relative;color:#fff}.layui-laypage .layui-laypage-curr .layui-laypage-em{position:absolute;left:-1px;top:-1px;padding:1px;width:100%;height:100%;background-color:#009688}.layui-laypage-em{border-radius:2px}.layui-laypage-next em,.layui-laypage-prev em{font-family:Sim sun;font-size:16px}.layui-laypage .layui-laypage-count,.layui-laypage .layui-laypage-limits,.layui-laypage .layui-laypage-refresh,.layui-laypage .layui-laypage-skip{margin-left:10px;margin-right:10px;padding:0;border:none}.layui-laypage .layui-laypage-limits,.layui-laypage .layui-laypage-refresh{vertical-align:top}.layui-laypage .layui-laypage-refresh i{font-size:18px;cursor:pointer}.layui-laypage select{height:22px;padding:3px;border-radius:2px;cursor:pointer}.layui-laypage .layui-laypage-skip{height:30px;line-height:30px;color:#999}.layui-laypage button,.layui-laypage input{height:30px;line-height:30px;border-radius:2px;vertical-align:top;background-color:#fff;box-sizing:border-box}.layui-laypage input{width:40px;margin:0 10px;padding:0 3px;text-align:center}.layui-laypage input:focus,.layui-laypage select:focus{border-color:#009688!important}.layui-laypage button{margin-left:10px;padding:0 10px;cursor:pointer}.layui-table,.layui-table-view{margin:10px 0}.layui-flow-more{margin:10px 0;text-align:center;color:#999;font-size:14px}.layui-flow-more a{height:32px;line-height:32px}.layui-flow-more a *{vertical-align:top}.layui-flow-more a cite{padding:0 20px;border-radius:3px;background-color:#eee;color:#333;font-style:normal}.layui-flow-more a cite:hover{opacity:.8}.layui-flow-more a i{font-size:30px;color:#737383}.layui-table{width:100%;background-color:#fff;color:#666}.layui-table tr{transition:all .3s;-webkit-transition:all .3s}.layui-table th{text-align:left;font-weight:400}.layui-table tbody tr:hover,.layui-table thead tr,.layui-table-click,.layui-table-header,.layui-table-hover,.layui-table-mend,.layui-table-patch,.layui-table-tool,.layui-table-total,.layui-table-total tr,.layui-table[lay-even] tr:nth-child(even){background-color:#f2f2f2}.layui-table td,.layui-table th,.layui-table-col-set,.layui-table-fixed-r,.layui-table-grid-down,.layui-table-header,.layui-table-page,.layui-table-tips-main,.layui-table-tool,.layui-table-total,.layui-table-view,.layui-table[lay-skin=line],.layui-table[lay-skin=row]{border-width:1px;border-style:solid;border-color:#e6e6e6}.layui-table td,.layui-table th{position:relative;padding:9px 15px;min-height:20px;line-height:20px;font-size:14px}.layui-table[lay-skin=line] td,.layui-table[lay-skin=line] th{border-width:0 0 1px}.layui-table[lay-skin=row] td,.layui-table[lay-skin=row] th{border-width:0 1px 0 0}.layui-table[lay-skin=nob] td,.layui-table[lay-skin=nob] th{border:none}.layui-table img{max-width:100px}.layui-table[lay-size=lg] td,.layui-table[lay-size=lg] th{padding:15px 30px}.layui-table-view .layui-table[lay-size=lg] .layui-table-cell{height:40px;line-height:40px}.layui-table[lay-size=sm] td,.layui-table[lay-size=sm] th{font-size:12px;padding:5px 10px}.layui-table-view .layui-table[lay-size=sm] .layui-table-cell{height:20px;line-height:20px}.layui-table[lay-data]{display:none}.layui-table-box{position:relative;overflow:hidden}.layui-table-view .layui-table{position:relative;width:auto;margin:0}.layui-table-view .layui-table[lay-skin=line]{border-width:0 1px 0 0}.layui-table-view .layui-table[lay-skin=row]{border-width:0 0 1px}.layui-table-view .layui-table td,.layui-table-view .layui-table th{padding:5px 0;border-top:none;border-left:none}.layui-table-view .layui-table th.layui-unselect .layui-table-cell span{cursor:pointer}.layui-table-view .layui-table td{cursor:default}.layui-table-view .layui-table td[data-edit=text]{cursor:text}.layui-table-view .layui-form-checkbox[lay-skin=primary] i{width:18px;height:18px}.layui-table-view .layui-form-radio{line-height:0;padding:0}.layui-table-view .layui-form-radio>i{margin:0;font-size:20px}.layui-table-init{position:absolute;left:0;top:0;width:100%;height:100%;text-align:center;z-index:110}.layui-table-init .layui-icon{position:absolute;left:50%;top:50%;margin:-15px 0 0 -15px;font-size:30px;color:#c2c2c2}.layui-table-header{border-width:0 0 1px;overflow:hidden}.layui-table-header .layui-table{margin-bottom:-1px}.layui-table-tool .layui-inline[lay-event]{position:relative;width:26px;height:26px;padding:5px;line-height:16px;margin-right:10px;text-align:center;color:#333;border:1px solid #ccc;cursor:pointer;-webkit-transition:.5s all;transition:.5s all}.layui-table-tool .layui-inline[lay-event]:hover{border:1px solid #999}.layui-table-tool-temp{padding-right:120px}.layui-table-tool-self{position:absolute;right:17px;top:10px}.layui-table-tool .layui-table-tool-self .layui-inline[lay-event]{margin:0 0 0 10px}.layui-table-tool-panel{position:absolute;top:29px;left:-1px;padding:5px 0;min-width:150px;min-height:40px;border:1px solid #d2d2d2;text-align:left;overflow-y:auto;background-color:#fff;box-shadow:0 2px 4px rgba(0,0,0,.12)}.layui-table-cell,.layui-table-tool-panel li{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.layui-table-tool-panel li{padding:0 10px;line-height:30px;-webkit-transition:.5s all;transition:.5s all}.layui-table-tool-panel li .layui-form-checkbox[lay-skin=primary]{width:100%;padding-left:28px}.layui-table-tool-panel li:hover{background-color:#f2f2f2}.layui-table-tool-panel li .layui-form-checkbox[lay-skin=primary] i{position:absolute;left:0;top:0}.layui-table-tool-panel li .layui-form-checkbox[lay-skin=primary] span{padding:0}.layui-table-tool .layui-table-tool-self .layui-table-tool-panel{left:auto;right:-1px}.layui-table-col-set{position:absolute;right:0;top:0;width:20px;height:100%;border-width:0 0 0 1px;background-color:#fff}.layui-table-sort{width:10px;height:20px;margin-left:5px;cursor:pointer!important}.layui-table-sort .layui-edge{position:absolute;left:5px;border-width:5px}.layui-table-sort .layui-table-sort-asc{top:3px;border-top:none;border-bottom-style:solid;border-bottom-color:#b2b2b2}.layui-table-sort .layui-table-sort-asc:hover{border-bottom-color:#666}.layui-table-sort .layui-table-sort-desc{bottom:5px;border-bottom:none;border-top-style:solid;border-top-color:#b2b2b2}.layui-table-sort .layui-table-sort-desc:hover{border-top-color:#666}.layui-table-sort[lay-sort=asc] .layui-table-sort-asc{border-bottom-color:#000}.layui-table-sort[lay-sort=desc] .layui-table-sort-desc{border-top-color:#000}.layui-table-cell{height:28px;line-height:28px;padding:0 15px;position:relative;box-sizing:border-box}.layui-table-cell .layui-form-checkbox[lay-skin=primary]{top:-1px;padding:0}.layui-table-cell .layui-table-link{color:#01AAED}.laytable-cell-checkbox,.laytable-cell-numbers,.laytable-cell-radio,.laytable-cell-space{padding:0;text-align:center}.layui-table-body{position:relative;overflow:auto;margin-right:-1px;margin-bottom:-1px}.layui-table-body .layui-none{line-height:26px;padding:15px;text-align:center;color:#999}.layui-table-fixed{position:absolute;left:0;top:0;z-index:101}.layui-table-fixed .layui-table-body{overflow:hidden}.layui-table-fixed-l{box-shadow:0 -1px 8px rgba(0,0,0,.08)}.layui-table-fixed-r{left:auto;right:-1px;border-width:0 0 0 1px;box-shadow:-1px 0 8px rgba(0,0,0,.08)}.layui-table-fixed-r .layui-table-header{position:relative;overflow:visible}.layui-table-mend{position:absolute;right:-49px;top:0;height:100%;width:50px}.layui-table-tool{position:relative;z-index:890;width:100%;min-height:50px;line-height:30px;padding:10px 15px;border-width:0 0 1px}.layui-table-tool .layui-btn-container{margin-bottom:-10px}.layui-table-page,.layui-table-total{border-width:1px 0 0;margin-bottom:-1px;overflow:hidden}.layui-table-page{position:relative;width:100%;padding:7px 7px 0;height:41px;font-size:12px;white-space:nowrap}.layui-table-page>div{height:26px}.layui-table-page .layui-laypage{margin:0}.layui-table-page .layui-laypage a,.layui-table-page .layui-laypage span{height:26px;line-height:26px;margin-bottom:10px;border:none;background:0 0}.layui-table-page .layui-laypage a,.layui-table-page .layui-laypage span.layui-laypage-curr{padding:0 12px}.layui-table-page .layui-laypage span{margin-left:0;padding:0}.layui-table-page .layui-laypage .layui-laypage-prev{margin-left:-7px!important}.layui-table-page .layui-laypage .layui-laypage-curr .layui-laypage-em{left:0;top:0;padding:0}.layui-table-page .layui-laypage button,.layui-table-page .layui-laypage input{height:26px;line-height:26px}.layui-table-page .layui-laypage input{width:40px}.layui-table-page .layui-laypage button{padding:0 10px}.layui-table-page select{height:18px}.layui-table-patch .layui-table-cell{padding:0;width:30px}.layui-table-edit{position:absolute;left:0;top:0;width:100%;height:100%;padding:0 14px 1px;border-radius:0;box-shadow:1px 1px 20px rgba(0,0,0,.15)}.layui-table-edit:focus{border-color:#5FB878!important}select.layui-table-edit{padding:0 0 0 10px;border-color:#C9C9C9}.layui-table-view .layui-form-checkbox,.layui-table-view .layui-form-radio,.layui-table-view .layui-form-switch{top:0;margin:0;box-sizing:content-box}.layui-table-view .layui-form-checkbox{top:-1px;height:26px;line-height:26px}.layui-table-view .layui-form-checkbox i{height:26px}.layui-table-grid .layui-table-cell{overflow:visible}.layui-table-grid-down{position:absolute;top:0;right:0;width:26px;height:100%;padding:5px 0;border-width:0 0 0 1px;text-align:center;background-color:#fff;color:#999;cursor:pointer}.layui-table-grid-down .layui-icon{position:absolute;top:50%;left:50%;margin:-8px 0 0 -8px}.layui-table-grid-down:hover{background-color:#fbfbfb}body .layui-table-tips .layui-layer-content{background:0 0;padding:0;box-shadow:0 1px 6px rgba(0,0,0,.12)}.layui-table-tips-main{margin:-44px 0 0 -1px;max-height:150px;padding:8px 15px;font-size:14px;overflow-y:scroll;background-color:#fff;color:#666}.layui-table-tips-c{position:absolute;right:-3px;top:-13px;width:20px;height:20px;padding:3px;cursor:pointer;background-color:#666;border-radius:50%;color:#fff}.layui-table-tips-c:hover{background-color:#777}.layui-table-tips-c:before{position:relative;right:-2px}.layui-upload-file{display:none!important;opacity:.01;filter:Alpha(opacity=1)}.layui-upload-drag,.layui-upload-form,.layui-upload-wrap{display:inline-block}.layui-upload-list{margin:10px 0}.layui-upload-choose{padding:0 10px;color:#999}.layui-upload-drag{position:relative;padding:30px;border:1px dashed #e2e2e2;background-color:#fff;text-align:center;cursor:pointer;color:#999}.layui-upload-drag .layui-icon{font-size:50px;color:#009688}.layui-upload-drag[lay-over]{border-color:#009688}.layui-upload-iframe{position:absolute;width:0;height:0;border:0;visibility:hidden}.layui-upload-wrap{position:relative;vertical-align:middle}.layui-upload-wrap .layui-upload-file{display:block!important;position:absolute;left:0;top:0;z-index:10;font-size:100px;width:100%;height:100%;opacity:.01;filter:Alpha(opacity=1);cursor:pointer}.layui-transfer-active,.layui-transfer-box{display:inline-block;vertical-align:middle}.layui-transfer-box,.layui-transfer-header,.layui-transfer-search{border-width:0;border-style:solid;border-color:#e6e6e6}.layui-transfer-box{position:relative;border-width:1px;width:200px;height:360px;border-radius:2px;background-color:#fff}.layui-transfer-box .layui-form-checkbox{width:100%;margin:0!important}.layui-transfer-header{height:38px;line-height:38px;padding:0 10px;border-bottom-width:1px}.layui-transfer-search{position:relative;padding:10px;border-bottom-width:1px}.layui-transfer-search .layui-input{height:32px;padding-left:30px;font-size:12px}.layui-transfer-search .layui-icon-search{position:absolute;left:20px;top:50%;margin-top:-8px;color:#666}.layui-transfer-active{margin:0 15px}.layui-transfer-active .layui-btn{display:block;margin:0;padding:0 15px;background-color:#5FB878;border-color:#5FB878;color:#fff}.layui-transfer-active .layui-btn-disabled{background-color:#FBFBFB;border-color:#e6e6e6;color:#C9C9C9}.layui-transfer-active .layui-btn:first-child{margin-bottom:15px}.layui-transfer-active .layui-btn .layui-icon{margin:0;font-size:14px!important}.layui-transfer-data{padding:5px 0;overflow:auto}.layui-transfer-data li{height:32px;line-height:32px;padding:0 10px}.layui-transfer-data li:hover{background-color:#f2f2f2;transition:.5s all}.layui-transfer-data .layui-none{padding:15px 10px;text-align:center;color:#999}.layui-nav{position:relative;padding:0 20px;background-color:#393D49;color:#fff;border-radius:2px;font-size:0;box-sizing:border-box}.layui-nav *{font-size:14px}.layui-nav .layui-nav-item{position:relative;display:inline-block;*display:inline;*zoom:1;vertical-align:middle;line-height:60px}.layui-nav .layui-nav-item a{display:block;padding:0 20px;color:#fff;color:rgba(255,255,255,.7);transition:all .3s;-webkit-transition:all .3s}.layui-nav .layui-this:after,.layui-nav-bar,.layui-nav-tree .layui-nav-itemed:after{position:absolute;left:0;top:0;width:0;height:5px;background-color:#5FB878;transition:all .2s;-webkit-transition:all .2s}.layui-nav-bar{z-index:1000}.layui-nav .layui-nav-item a:hover,.layui-nav .layui-this a{color:#fff}.layui-nav .layui-this:after{content:'';top:auto;bottom:0;width:100%}.layui-nav-img{width:30px;height:30px;margin-right:10px;border-radius:50%}.layui-nav .layui-nav-more{content:'';width:0;height:0;border-style:solid dashed dashed;border-color:#fff transparent transparent;overflow:hidden;cursor:pointer;transition:all .2s;-webkit-transition:all .2s;position:absolute;top:50%;right:3px;margin-top:-3px;border-width:6px;border-top-color:rgba(255,255,255,.7)}.layui-nav .layui-nav-mored,.layui-nav-itemed>a .layui-nav-more{margin-top:-9px;border-style:dashed dashed solid;border-color:transparent transparent #fff}.layui-nav-child{display:none;position:absolute;left:0;top:65px;min-width:100%;line-height:36px;padding:5px 0;box-shadow:0 2px 4px rgba(0,0,0,.12);border:1px solid #d2d2d2;background-color:#fff;z-index:100;border-radius:2px;white-space:nowrap}.layui-nav .layui-nav-child a{color:#333}.layui-nav .layui-nav-child a:hover{background-color:#f2f2f2;color:#000}.layui-nav-child dd{position:relative}.layui-nav .layui-nav-child dd.layui-this a,.layui-nav-child dd.layui-this{background-color:#5FB878;color:#fff}.layui-nav-child dd.layui-this:after{display:none}.layui-nav-tree{width:200px;padding:0}.layui-nav-tree .layui-nav-item{display:block;width:100%;line-height:45px}.layui-nav-tree .layui-nav-item a{position:relative;height:45px;line-height:45px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.layui-nav-tree .layui-nav-item a:hover{background-color:#4E5465}.layui-nav-tree .layui-nav-bar{width:5px;height:0;background-color:#009688}.layui-nav-tree .layui-nav-child dd.layui-this,.layui-nav-tree .layui-nav-child dd.layui-this a,.layui-nav-tree .layui-this,.layui-nav-tree .layui-this>a,.layui-nav-tree .layui-this>a:hover{background-color:#009688;color:#fff}.layui-nav-tree .layui-this:after{display:none}.layui-nav-itemed>a,.layui-nav-tree .layui-nav-title a,.layui-nav-tree .layui-nav-title a:hover{color:#fff!important}.layui-nav-tree .layui-nav-child{position:relative;z-index:0;top:0;border:none;box-shadow:none}.layui-nav-tree .layui-nav-child a{height:40px;line-height:40px;color:#fff;color:rgba(255,255,255,.7)}.layui-nav-tree .layui-nav-child,.layui-nav-tree .layui-nav-child a:hover{background:0 0;color:#fff}.layui-nav-tree .layui-nav-more{right:10px}.layui-nav-itemed>.layui-nav-child{display:block;padding:0;background-color:rgba(0,0,0,.3)!important}.layui-nav-itemed>.layui-nav-child>.layui-this>.layui-nav-child{display:block}.layui-nav-side{position:fixed;top:0;bottom:0;left:0;overflow-x:hidden;z-index:999}.layui-bg-blue .layui-nav-bar,.layui-bg-blue .layui-nav-itemed:after,.layui-bg-blue .layui-this:after{background-color:#93D1FF}.layui-bg-blue .layui-nav-child dd.layui-this{background-color:#1E9FFF}.layui-bg-blue .layui-nav-itemed>a,.layui-nav-tree.layui-bg-blue .layui-nav-title a,.layui-nav-tree.layui-bg-blue .layui-nav-title a:hover{background-color:#007DDB!important}.layui-breadcrumb{font-size:0}.layui-breadcrumb>*{font-size:14px}.layui-breadcrumb a{color:#999!important}.layui-breadcrumb a:hover{color:#5FB878!important}.layui-breadcrumb a cite{color:#666;font-style:normal}.layui-breadcrumb span[lay-separator]{margin:0 10px;color:#999}.layui-tab{margin:10px 0;text-align:left!important}.layui-tab[overflow]>.layui-tab-title{overflow:hidden}.layui-tab-title{position:relative;left:0;height:40px;white-space:nowrap;font-size:0;border-bottom-width:1px;border-bottom-style:solid;transition:all .2s;-webkit-transition:all .2s}.layui-tab-title li{display:inline-block;*display:inline;*zoom:1;vertical-align:middle;font-size:14px;transition:all .2s;-webkit-transition:all .2s;position:relative;line-height:40px;min-width:65px;padding:0 15px;text-align:center;cursor:pointer}.layui-tab-title li a{display:block}.layui-tab-title .layui-this{color:#000}.layui-tab-title .layui-this:after{position:absolute;left:0;top:0;content:'';width:100%;height:41px;border-width:1px;border-style:solid;border-bottom-color:#fff;border-radius:2px 2px 0 0;box-sizing:border-box;pointer-events:none}.layui-tab-bar{position:absolute;right:0;top:0;z-index:10;width:30px;height:39px;line-height:39px;border-width:1px;border-style:solid;border-radius:2px;text-align:center;background-color:#fff;cursor:pointer}.layui-tab-bar .layui-icon{position:relative;display:inline-block;top:3px;transition:all .3s;-webkit-transition:all .3s}.layui-tab-item{display:none}.layui-tab-more{padding-right:30px;height:auto!important;white-space:normal!important}.layui-tab-more li.layui-this:after{border-bottom-color:#e2e2e2;border-radius:2px}.layui-tab-more .layui-tab-bar .layui-icon{top:-2px;top:3px\9;-webkit-transform:rotate(180deg);transform:rotate(180deg)}:root .layui-tab-more .layui-tab-bar .layui-icon{top:-2px\0/IE9}.layui-tab-content{padding:10px}.layui-tab-title li .layui-tab-close{position:relative;display:inline-block;width:18px;height:18px;line-height:20px;margin-left:8px;top:1px;text-align:center;font-size:14px;color:#c2c2c2;transition:all .2s;-webkit-transition:all .2s}.layui-tab-title li .layui-tab-close:hover{border-radius:2px;background-color:#FF5722;color:#fff}.layui-tab-brief>.layui-tab-title .layui-this{color:#009688}.layui-tab-brief>.layui-tab-more li.layui-this:after,.layui-tab-brief>.layui-tab-title .layui-this:after{border:none;border-radius:0;border-bottom:2px solid #5FB878}.layui-tab-brief[overflow]>.layui-tab-title .layui-this:after{top:-1px}.layui-tab-card{border-width:1px;border-style:solid;border-radius:2px;box-shadow:0 2px 5px 0 rgba(0,0,0,.1)}.layui-tab-card>.layui-tab-title{background-color:#f2f2f2}.layui-tab-card>.layui-tab-title li{margin-right:-1px;margin-left:-1px}.layui-tab-card>.layui-tab-title .layui-this{background-color:#fff}.layui-tab-card>.layui-tab-title .layui-this:after{border-top:none;border-width:1px;border-bottom-color:#fff}.layui-tab-card>.layui-tab-title .layui-tab-bar{height:40px;line-height:40px;border-radius:0;border-top:none;border-right:none}.layui-tab-card>.layui-tab-more .layui-this{background:0 0;color:#5FB878}.layui-tab-card>.layui-tab-more .layui-this:after{border:none}.layui-timeline{padding-left:5px}.layui-timeline-item{position:relative;padding-bottom:20px}.layui-timeline-axis{position:absolute;left:-5px;top:0;z-index:10;width:20px;height:20px;line-height:20px;background-color:#fff;color:#5FB878;border-radius:50%;text-align:center;cursor:pointer}.layui-timeline-axis:hover{color:#FF5722}.layui-timeline-item:before{content:'';position:absolute;left:5px;top:0;z-index:0;width:1px;height:100%}.layui-timeline-item:last-child:before{display:none}.layui-timeline-item:first-child:before{display:block}.layui-timeline-content{padding-left:25px}.layui-timeline-title{position:relative;margin-bottom:10px}.layui-badge,.layui-badge-dot,.layui-badge-rim{position:relative;display:inline-block;padding:0 6px;font-size:12px;text-align:center;background-color:#FF5722;color:#fff;border-radius:2px}.layui-badge{height:18px;line-height:18px}.layui-badge-dot{width:8px;height:8px;padding:0;border-radius:50%}.layui-badge-rim{height:18px;line-height:18px;border-width:1px;border-style:solid;background-color:#fff;color:#666}.layui-btn .layui-badge,.layui-btn .layui-badge-dot{margin-left:5px}.layui-nav .layui-badge,.layui-nav .layui-badge-dot{position:absolute;top:50%;margin:-8px 6px 0}.layui-tab-title .layui-badge,.layui-tab-title .layui-badge-dot{left:5px;top:-2px}.layui-carousel{position:relative;left:0;top:0;background-color:#f8f8f8}.layui-carousel>[carousel-item]{position:relative;width:100%;height:100%;overflow:hidden}.layui-carousel>[carousel-item]:before{position:absolute;content:'\e63d';left:50%;top:50%;width:100px;line-height:20px;margin:-10px 0 0 -50px;text-align:center;color:#c2c2c2;font-family:layui-icon!important;font-size:30px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.layui-carousel>[carousel-item]>*{display:none;position:absolute;left:0;top:0;width:100%;height:100%;background-color:#f8f8f8;transition-duration:.3s;-webkit-transition-duration:.3s}.layui-carousel-updown>*{-webkit-transition:.3s ease-in-out up;transition:.3s ease-in-out up}.layui-carousel-arrow{display:none\9;opacity:0;position:absolute;left:10px;top:50%;margin-top:-18px;width:36px;height:36px;line-height:36px;text-align:center;font-size:20px;border:0;border-radius:50%;background-color:rgba(0,0,0,.2);color:#fff;-webkit-transition-duration:.3s;transition-duration:.3s;cursor:pointer}.layui-carousel-arrow[lay-type=add]{left:auto!important;right:10px}.layui-carousel:hover .layui-carousel-arrow[lay-type=add],.layui-carousel[lay-arrow=always] .layui-carousel-arrow[lay-type=add]{right:20px}.layui-carousel[lay-arrow=always] .layui-carousel-arrow{opacity:1;left:20px}.layui-carousel[lay-arrow=none] .layui-carousel-arrow{display:none}.layui-carousel-arrow:hover,.layui-carousel-ind ul:hover{background-color:rgba(0,0,0,.35)}.layui-carousel:hover .layui-carousel-arrow{display:block\9;opacity:1;left:20px}.layui-carousel-ind{position:relative;top:-35px;width:100%;line-height:0!important;text-align:center;font-size:0}.layui-carousel[lay-indicator=outside]{margin-bottom:30px}.layui-carousel[lay-indicator=outside] .layui-carousel-ind{top:10px}.layui-carousel[lay-indicator=outside] .layui-carousel-ind ul{background-color:rgba(0,0,0,.5)}.layui-carousel[lay-indicator=none] .layui-carousel-ind{display:none}.layui-carousel-ind ul{display:inline-block;padding:5px;background-color:rgba(0,0,0,.2);border-radius:10px;-webkit-transition-duration:.3s;transition-duration:.3s}.layui-carousel-ind li{display:inline-block;width:10px;height:10px;margin:0 3px;font-size:14px;background-color:#e2e2e2;background-color:rgba(255,255,255,.5);border-radius:50%;cursor:pointer;-webkit-transition-duration:.3s;transition-duration:.3s}.layui-carousel-ind li:hover{background-color:rgba(255,255,255,.7)}.layui-carousel-ind li.layui-this{background-color:#fff}.layui-carousel>[carousel-item]>.layui-carousel-next,.layui-carousel>[carousel-item]>.layui-carousel-prev,.layui-carousel>[carousel-item]>.layui-this{display:block}.layui-carousel>[carousel-item]>.layui-this{left:0}.layui-carousel>[carousel-item]>.layui-carousel-prev{left:-100%}.layui-carousel>[carousel-item]>.layui-carousel-next{left:100%}.layui-carousel>[carousel-item]>.layui-carousel-next.layui-carousel-left,.layui-carousel>[carousel-item]>.layui-carousel-prev.layui-carousel-right{left:0}.layui-carousel>[carousel-item]>.layui-this.layui-carousel-left{left:-100%}.layui-carousel>[carousel-item]>.layui-this.layui-carousel-right{left:100%}.layui-carousel[lay-anim=updown] .layui-carousel-arrow{left:50%!important;top:20px;margin:0 0 0 -18px}.layui-carousel[lay-anim=updown]>[carousel-item]>*,.layui-carousel[lay-anim=fade]>[carousel-item]>*{left:0!important}.layui-carousel[lay-anim=updown] .layui-carousel-arrow[lay-type=add]{top:auto!important;bottom:20px}.layui-carousel[lay-anim=updown] .layui-carousel-ind{position:absolute;top:50%;right:20px;width:auto;height:auto}.layui-carousel[lay-anim=updown] .layui-carousel-ind ul{padding:3px 5px}.layui-carousel[lay-anim=updown] .layui-carousel-ind li{display:block;margin:6px 0}.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-this{top:0}.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-carousel-prev{top:-100%}.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-carousel-next{top:100%}.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-carousel-next.layui-carousel-left,.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-carousel-prev.layui-carousel-right{top:0}.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-this.layui-carousel-left{top:-100%}.layui-carousel[lay-anim=updown]>[carousel-item]>.layui-this.layui-carousel-right{top:100%}.layui-carousel[lay-anim=fade]>[carousel-item]>.layui-carousel-next,.layui-carousel[lay-anim=fade]>[carousel-item]>.layui-carousel-prev{opacity:0}.layui-carousel[lay-anim=fade]>[carousel-item]>.layui-carousel-next.layui-carousel-left,.layui-carousel[lay-anim=fade]>[carousel-item]>.layui-carousel-prev.layui-carousel-right{opacity:1}.layui-carousel[lay-anim=fade]>[carousel-item]>.layui-this.layui-carousel-left,.layui-carousel[lay-anim=fade]>[carousel-item]>.layui-this.layui-carousel-right{opacity:0}.layui-fixbar{position:fixed;right:15px;bottom:15px;z-index:999999}.layui-fixbar li{width:50px;height:50px;line-height:50px;margin-bottom:1px;text-align:center;cursor:pointer;font-size:30px;background-color:#9F9F9F;color:#fff;border-radius:2px;opacity:.95}.layui-fixbar li:hover{opacity:.85}.layui-fixbar li:active{opacity:1}.layui-fixbar .layui-fixbar-top{display:none;font-size:40px}body .layui-util-face{border:none;background:0 0}body .layui-util-face .layui-layer-content{padding:0;background-color:#fff;color:#666;box-shadow:none}.layui-util-face .layui-layer-TipsG{display:none}.layui-util-face ul{position:relative;width:372px;padding:10px;border:1px solid #D9D9D9;background-color:#fff;box-shadow:0 0 20px rgba(0,0,0,.2)}.layui-util-face ul li{cursor:pointer;float:left;border:1px solid #e8e8e8;height:22px;width:26px;overflow:hidden;margin:-1px 0 0 -1px;padding:4px 2px;text-align:center}.layui-util-face ul li:hover{position:relative;z-index:2;border:1px solid #eb7350;background:#fff9ec}.layui-code{position:relative;margin:10px 0;padding:15px;line-height:20px;border:1px solid #ddd;border-left-width:6px;background-color:#F2F2F2;color:#333;font-family:Courier New;font-size:12px}.layui-rate,.layui-rate *{display:inline-block;vertical-align:middle}.layui-rate{padding:10px 5px 10px 0;font-size:0}.layui-rate li i.layui-icon{font-size:20px;color:#FFB800;margin-right:5px;transition:all .3s;-webkit-transition:all .3s}.layui-rate li i:hover{cursor:pointer;transform:scale(1.12);-webkit-transform:scale(1.12)}.layui-rate[readonly] li i:hover{cursor:default;transform:scale(1)}.layui-colorpicker{width:26px;height:26px;border:1px solid #e6e6e6;padding:5px;border-radius:2px;line-height:24px;display:inline-block;cursor:pointer;transition:all .3s;-webkit-transition:all .3s}.layui-colorpicker:hover{border-color:#d2d2d2}.layui-colorpicker.layui-colorpicker-lg{width:34px;height:34px;line-height:32px}.layui-colorpicker.layui-colorpicker-sm{width:24px;height:24px;line-height:22px}.layui-colorpicker.layui-colorpicker-xs{width:22px;height:22px;line-height:20px}.layui-colorpicker-trigger-bgcolor{display:block;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==);border-radius:2px}.layui-colorpicker-trigger-span{display:block;height:100%;box-sizing:border-box;border:1px solid rgba(0,0,0,.15);border-radius:2px;text-align:center}.layui-colorpicker-trigger-i{display:inline-block;color:#FFF;font-size:12px}.layui-colorpicker-trigger-i.layui-icon-close{color:#999}.layui-colorpicker-main{position:absolute;z-index:66666666;width:280px;padding:7px;background:#FFF;border:1px solid #d2d2d2;border-radius:2px;box-shadow:0 2px 4px rgba(0,0,0,.12)}.layui-colorpicker-main-wrapper{height:180px;position:relative}.layui-colorpicker-basis{width:260px;height:100%;position:relative}.layui-colorpicker-basis-white{width:100%;height:100%;position:absolute;top:0;left:0;background:linear-gradient(90deg,#FFF,hsla(0,0%,100%,0))}.layui-colorpicker-basis-black{width:100%;height:100%;position:absolute;top:0;left:0;background:linear-gradient(0deg,#000,transparent)}.layui-colorpicker-basis-cursor{width:10px;height:10px;border:1px solid #FFF;border-radius:50%;position:absolute;top:-3px;right:-3px;cursor:pointer}.layui-colorpicker-side{position:absolute;top:0;right:0;width:12px;height:100%;background:linear-gradient(red,#FF0,#0F0,#0FF,#00F,#F0F,red)}.layui-colorpicker-side-slider{width:100%;height:5px;box-shadow:0 0 1px #888;box-sizing:border-box;background:#FFF;border-radius:1px;border:1px solid #f0f0f0;cursor:pointer;position:absolute;left:0}.layui-colorpicker-main-alpha{display:none;height:12px;margin-top:7px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.layui-colorpicker-alpha-bgcolor{height:100%;position:relative}.layui-colorpicker-alpha-slider{width:5px;height:100%;box-shadow:0 0 1px #888;box-sizing:border-box;background:#FFF;border-radius:1px;border:1px solid #f0f0f0;cursor:pointer;position:absolute;top:0}.layui-colorpicker-main-pre{padding-top:7px;font-size:0}.layui-colorpicker-pre{width:20px;height:20px;border-radius:2px;display:inline-block;margin-left:6px;margin-bottom:7px;cursor:pointer}.layui-colorpicker-pre:nth-child(11n+1){margin-left:0}.layui-colorpicker-pre-isalpha{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.layui-colorpicker-pre.layui-this{box-shadow:0 0 3px 2px rgba(0,0,0,.15)}.layui-colorpicker-pre>div{height:100%;border-radius:2px}.layui-colorpicker-main-input{text-align:right;padding-top:7px}.layui-colorpicker-main-input .layui-btn-container .layui-btn{margin:0 0 0 10px}.layui-colorpicker-main-input div.layui-inline{float:left;margin-right:10px;font-size:14px}.layui-colorpicker-main-input input.layui-input{width:150px;height:30px;color:#666}.layui-slider{height:4px;background:#e2e2e2;border-radius:3px;position:relative;cursor:pointer}.layui-slider-bar{border-radius:3px;position:absolute;height:100%}.layui-slider-step{position:absolute;top:0;width:4px;height:4px;border-radius:50%;background:#FFF;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.layui-slider-wrap{width:36px;height:36px;position:absolute;top:-16px;-webkit-transform:translateX(-50%);transform:translateX(-50%);z-index:10;text-align:center}.layui-slider-wrap-btn{width:12px;height:12px;border-radius:50%;background:#FFF;display:inline-block;vertical-align:middle;cursor:pointer;transition:.3s}.layui-slider-wrap:after{content:"";height:100%;display:inline-block;vertical-align:middle}.layui-slider-wrap-btn.layui-slider-hover,.layui-slider-wrap-btn:hover{transform:scale(1.2)}.layui-slider-wrap-btn.layui-disabled:hover{transform:scale(1)!important}.layui-slider-tips{position:absolute;top:-42px;z-index:66666666;white-space:nowrap;display:none;-webkit-transform:translateX(-50%);transform:translateX(-50%);color:#FFF;background:#000;border-radius:3px;height:25px;line-height:25px;padding:0 10px}.layui-slider-tips:after{content:'';position:absolute;bottom:-12px;left:50%;margin-left:-6px;width:0;height:0;border-width:6px;border-style:solid;border-color:#000 transparent transparent}.layui-slider-input{width:70px;height:32px;border:1px solid #e6e6e6;border-radius:3px;font-size:16px;line-height:32px;position:absolute;right:0;top:-15px}.layui-slider-input-btn{display:none;position:absolute;top:0;right:0;width:20px;height:100%;border-left:1px solid #d2d2d2}.layui-slider-input-btn i{cursor:pointer;position:absolute;right:0;bottom:0;width:20px;height:50%;font-size:12px;line-height:16px;text-align:center;color:#999}.layui-slider-input-btn i:first-child{top:0;border-bottom:1px solid #d2d2d2}.layui-slider-input-txt{height:100%;font-size:14px}.layui-slider-input-txt input{height:100%;border:none}.layui-slider-input-btn i:hover{color:#009688}.layui-slider-vertical{width:4px;margin-left:34px}.layui-slider-vertical .layui-slider-bar{width:4px}.layui-slider-vertical .layui-slider-step{top:auto;left:0;-webkit-transform:translateY(50%);transform:translateY(50%)}.layui-slider-vertical .layui-slider-wrap{top:auto;left:-16px;-webkit-transform:translateY(50%);transform:translateY(50%)}.layui-slider-vertical .layui-slider-tips{top:auto;left:2px}@media \0screen{.layui-slider-wrap-btn{margin-left:-20px}.layui-slider-vertical .layui-slider-wrap-btn{margin-left:0;margin-bottom:-20px}.layui-slider-vertical .layui-slider-tips{margin-left:-8px}.layui-slider>span{margin-left:8px}}.layui-tree{line-height:22px}.layui-tree .layui-form-checkbox{margin:0!important}.layui-tree-set{width:100%;position:relative}.layui-tree-pack{display:none;padding-left:20px;position:relative}.layui-tree-iconClick,.layui-tree-main{display:inline-block;vertical-align:middle}.layui-tree-line .layui-tree-pack{padding-left:27px}.layui-tree-line .layui-tree-set .layui-tree-set:after{content:'';position:absolute;top:14px;left:-9px;width:17px;height:0;border-top:1px dotted #c0c4cc}.layui-tree-entry{position:relative;padding:3px 0;height:20px;white-space:nowrap}.layui-tree-entry:hover{background-color:#eee}.layui-tree-line .layui-tree-entry:hover{background-color:rgba(0,0,0,0)}.layui-tree-line .layui-tree-entry:hover .layui-tree-txt{color:#999;text-decoration:underline;transition:.3s}.layui-tree-main{cursor:pointer;padding-right:10px}.layui-tree-line .layui-tree-set:before{content:'';position:absolute;top:0;left:-9px;width:0;height:100%;border-left:1px dotted #c0c4cc}.layui-tree-line .layui-tree-set.layui-tree-setLineShort:before{height:13px}.layui-tree-line .layui-tree-set.layui-tree-setHide:before{height:0}.layui-tree-iconClick{position:relative;height:20px;line-height:20px;margin:0 10px;color:#c0c4cc}.layui-tree-icon{height:12px;line-height:12px;width:12px;text-align:center;border:1px solid #c0c4cc}.layui-tree-iconClick .layui-icon{font-size:18px}.layui-tree-icon .layui-icon{font-size:12px;color:#666}.layui-tree-iconArrow{padding:0 5px}.layui-tree-iconArrow:after{content:'';position:absolute;left:4px;top:3px;z-index:100;width:0;height:0;border-width:5px;border-style:solid;border-color:transparent transparent transparent #c0c4cc;transition:.5s}.layui-tree-btnGroup,.layui-tree-editInput{position:relative;vertical-align:middle;display:inline-block}.layui-tree-spread>.layui-tree-entry>.layui-tree-iconClick>.layui-tree-iconArrow:after{transform:rotate(90deg) translate(3px,4px)}.layui-tree-txt{display:inline-block;vertical-align:middle;color:#555}.layui-tree-search{margin-bottom:15px;color:#666}.layui-tree-btnGroup .layui-icon{display:inline-block;vertical-align:middle;padding:0 2px;cursor:pointer}.layui-tree-btnGroup .layui-icon:hover{color:#999;transition:.3s}.layui-tree-entry:hover .layui-tree-btnGroup{visibility:visible}.layui-tree-editInput{height:20px;line-height:20px;padding:0 3px;border:none;background-color:rgba(0,0,0,.05)}.layui-tree-emptyText{text-align:center;color:#999}.layui-anim{-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-fill-mode:both;animation-fill-mode:both}.layui-anim.layui-icon{display:inline-block}.layui-anim-loop{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.layui-trans,.layui-trans a{transition:all .3s;-webkit-transition:all .3s}@-webkit-keyframes layui-rotate{from{-webkit-transform:rotate(0)}to{-webkit-transform:rotate(360deg)}}@keyframes layui-rotate{from{transform:rotate(0)}to{transform:rotate(360deg)}}.layui-anim-rotate{-webkit-animation-name:layui-rotate;animation-name:layui-rotate;-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-timing-function:linear;animation-timing-function:linear}@-webkit-keyframes layui-up{from{-webkit-transform:translate3d(0,100%,0);opacity:.3}to{-webkit-transform:translate3d(0,0,0);opacity:1}}@keyframes layui-up{from{transform:translate3d(0,100%,0);opacity:.3}to{transform:translate3d(0,0,0);opacity:1}}.layui-anim-up{-webkit-animation-name:layui-up;animation-name:layui-up}@-webkit-keyframes layui-upbit{from{-webkit-transform:translate3d(0,30px,0);opacity:.3}to{-webkit-transform:translate3d(0,0,0);opacity:1}}@keyframes layui-upbit{from{transform:translate3d(0,30px,0);opacity:.3}to{transform:translate3d(0,0,0);opacity:1}}.layui-anim-upbit{-webkit-animation-name:layui-upbit;animation-name:layui-upbit}@-webkit-keyframes layui-scale{0%{opacity:.3;-webkit-transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1)}}@keyframes layui-scale{0%{opacity:.3;-ms-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-ms-transform:scale(1);transform:scale(1)}}.layui-anim-scale{-webkit-animation-name:layui-scale;animation-name:layui-scale}@-webkit-keyframes layui-scale-spring{0%{opacity:.5;-webkit-transform:scale(.5)}80%{opacity:.8;-webkit-transform:scale(1.1)}100%{opacity:1;-webkit-transform:scale(1)}}@keyframes layui-scale-spring{0%{opacity:.5;transform:scale(.5)}80%{opacity:.8;transform:scale(1.1)}100%{opacity:1;transform:scale(1)}}.layui-anim-scaleSpring{-webkit-animation-name:layui-scale-spring;animation-name:layui-scale-spring}@-webkit-keyframes layui-fadein{0%{opacity:0}100%{opacity:1}}@keyframes layui-fadein{0%{opacity:0}100%{opacity:1}}.layui-anim-fadein{-webkit-animation-name:layui-fadein;animation-name:layui-fadein}@-webkit-keyframes layui-fadeout{0%{opacity:1}100%{opacity:0}}@keyframes layui-fadeout{0%{opacity:1}100%{opacity:0}}.layui-anim-fadeout{-webkit-animation-name:layui-fadeout;animation-name:layui-fadeout} \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/css/layui.mobile.css b/src/main/resources/static/articles/layui/css/layui.mobile.css new file mode 100644 index 0000000..7835392 --- /dev/null +++ b/src/main/resources/static/articles/layui/css/layui.mobile.css @@ -0,0 +1,2 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + blockquote,body,button,dd,div,dl,dt,form,h1,h2,h3,h4,h5,h6,input,legend,li,ol,p,td,textarea,th,ul{margin:0;padding:0;-webkit-tap-highlight-color:rgba(0,0,0,0)}html{font:12px 'Helvetica Neue','PingFang SC',STHeitiSC-Light,Helvetica,Arial,sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}a,button,input{-webkit-tap-highlight-color:rgba(255,0,0,0)}a{text-decoration:none;background:0 0}a:active,a:hover{outline:0}table{border-collapse:collapse;border-spacing:0}li{list-style:none}b,strong{font-weight:700}h1,h2,h3,h4,h5,h6{font-weight:500}address,cite,dfn,em,var{font-style:normal}dfn{font-style:italic}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}img{border:0;vertical-align:bottom}.layui-inline,input,label{vertical-align:middle}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0;outline:0}button,select{text-transform:none}select{-webkit-appearance:none;border:none}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}@font-face{font-family:layui-icon;src:url(../font/iconfont.eot?v=1.0.7);src:url(../font/iconfont.eot?v=1.0.7#iefix) format('embedded-opentype'),url(../font/iconfont.woff?v=1.0.7) format('woff'),url(../font/iconfont.ttf?v=1.0.7) format('truetype'),url(../font/iconfont.svg?v=1.0.7#iconfont) format('svg')}.layui-icon{font-family:layui-icon!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.layui-box,.layui-box *{-webkit-box-sizing:content-box!important;-moz-box-sizing:content-box!important;box-sizing:content-box!important}.layui-border-box,.layui-border-box *{-webkit-box-sizing:border-box!important;-moz-box-sizing:border-box!important;box-sizing:border-box!important}.layui-inline{position:relative;display:inline-block;*display:inline;*zoom:1}.layui-edge,.layui-upload-iframe{position:absolute;width:0;height:0}.layui-edge{border-style:dashed;border-color:transparent;overflow:hidden}.layui-elip{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.layui-unselect{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.layui-disabled,.layui-disabled:active{background-color:#d2d2d2!important;color:#fff!important;cursor:not-allowed!important}.layui-circle{border-radius:100%}.layui-show{display:block!important}.layui-hide{display:none!important}.layui-upload-iframe{border:0;visibility:hidden}.layui-upload-enter{border:1px solid #009E94;background-color:#009E94;color:#fff;-webkit-transform:scale(1.1);transform:scale(1.1)}@-webkit-keyframes layui-m-anim-scale{0%{opacity:0;-webkit-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes layui-m-anim-scale{0%{opacity:0;-webkit-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}.layui-m-anim-scale{animation-name:layui-m-anim-scale;-webkit-animation-name:layui-m-anim-scale}@-webkit-keyframes layui-m-anim-up{0%{opacity:0;-webkit-transform:translateY(800px);transform:translateY(800px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes layui-m-anim-up{0%{opacity:0;-webkit-transform:translateY(800px);transform:translateY(800px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}.layui-m-anim-up{-webkit-animation-name:layui-m-anim-up;animation-name:layui-m-anim-up}@-webkit-keyframes layui-m-anim-left{0%{-webkit-transform:translateX(100%);transform:translateX(100%)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes layui-m-anim-left{0%{-webkit-transform:translateX(100%);transform:translateX(100%)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}.layui-m-anim-left{-webkit-animation-name:layui-m-anim-left;animation-name:layui-m-anim-left}@-webkit-keyframes layui-m-anim-right{0%{-webkit-transform:translateX(-100%);transform:translateX(-100%)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes layui-m-anim-right{0%{-webkit-transform:translateX(-100%);transform:translateX(-100%)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}.layui-m-anim-right{-webkit-animation-name:layui-m-anim-right;animation-name:layui-m-anim-right}@-webkit-keyframes layui-m-anim-lout{0%{-webkit-transform:translateX(0);transform:translateX(0)}100%{-webkit-transform:translateX(-100%);transform:translateX(-100%)}}@keyframes layui-m-anim-lout{0%{-webkit-transform:translateX(0);transform:translateX(0)}100%{-webkit-transform:translateX(-100%);transform:translateX(-100%)}}.layui-m-anim-lout{-webkit-animation-name:layui-m-anim-lout;animation-name:layui-m-anim-lout}@-webkit-keyframes layui-m-anim-rout{0%{-webkit-transform:translateX(0);transform:translateX(0)}100%{-webkit-transform:translateX(100%);transform:translateX(100%)}}@keyframes layui-m-anim-rout{0%{-webkit-transform:translateX(0);transform:translateX(0)}100%{-webkit-transform:translateX(100%);transform:translateX(100%)}}.layui-m-anim-rout{-webkit-animation-name:layui-m-anim-rout;animation-name:layui-m-anim-rout}.layui-m-layer{position:relative;z-index:19891014}.layui-m-layer *{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.layui-m-layermain,.layui-m-layershade{position:fixed;left:0;top:0;width:100%;height:100%}.layui-m-layershade{background-color:rgba(0,0,0,.7);pointer-events:auto}.layui-m-layermain{display:table;font-family:Helvetica,arial,sans-serif;pointer-events:none}.layui-m-layermain .layui-m-layersection{display:table-cell;vertical-align:middle;text-align:center}.layui-m-layerchild{position:relative;display:inline-block;text-align:left;background-color:#fff;font-size:14px;border-radius:5px;box-shadow:0 0 8px rgba(0,0,0,.1);pointer-events:auto;-webkit-overflow-scrolling:touch;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:.2s;animation-duration:.2s}.layui-m-layer0 .layui-m-layerchild{width:90%;max-width:640px}.layui-m-layer1 .layui-m-layerchild{border:none;border-radius:0}.layui-m-layer2 .layui-m-layerchild{width:auto;max-width:260px;min-width:40px;border:none;background:0 0;box-shadow:none;color:#fff}.layui-m-layerchild h3{padding:0 10px;height:60px;line-height:60px;font-size:16px;font-weight:400;border-radius:5px 5px 0 0;text-align:center}.layui-m-layerbtn span,.layui-m-layerchild h3{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.layui-m-layercont{padding:50px 30px;line-height:22px;text-align:center}.layui-m-layer1 .layui-m-layercont{padding:0;text-align:left}.layui-m-layer2 .layui-m-layercont{text-align:center;padding:0;line-height:0}.layui-m-layer2 .layui-m-layercont i{width:25px;height:25px;margin-left:8px;display:inline-block;background-color:#fff;border-radius:100%;-webkit-animation:layui-m-anim-loading 1.4s infinite ease-in-out;animation:layui-m-anim-loading 1.4s infinite ease-in-out;-webkit-animation-fill-mode:both;animation-fill-mode:both}.layui-m-layerbtn,.layui-m-layerbtn span{position:relative;text-align:center;border-radius:0 0 5px 5px}.layui-m-layer2 .layui-m-layercont p{margin-top:20px}@-webkit-keyframes layui-m-anim-loading{0%,100%,80%{transform:scale(0);-webkit-transform:scale(0)}40%{transform:scale(1);-webkit-transform:scale(1)}}@keyframes layui-m-anim-loading{0%,100%,80%{transform:scale(0);-webkit-transform:scale(0)}40%{transform:scale(1);-webkit-transform:scale(1)}}.layui-m-layer2 .layui-m-layercont i:first-child{margin-left:0;-webkit-animation-delay:-.32s;animation-delay:-.32s}.layui-m-layer2 .layui-m-layercont i.layui-m-layerload{-webkit-animation-delay:-.16s;animation-delay:-.16s}.layui-m-layer2 .layui-m-layercont>div{line-height:22px;padding-top:7px;margin-bottom:20px;font-size:14px}.layui-m-layerbtn{display:box;display:-moz-box;display:-webkit-box;width:100%;height:50px;line-height:50px;font-size:0;border-top:1px solid #D0D0D0;background-color:#F2F2F2}.layui-m-layerbtn span{display:block;-moz-box-flex:1;box-flex:1;-webkit-box-flex:1;font-size:14px;cursor:pointer}.layui-m-layerbtn span[yes]{color:#40AFFE}.layui-m-layerbtn span[no]{border-right:1px solid #D0D0D0;border-radius:0 0 0 5px}.layui-m-layerbtn span:active{background-color:#F6F6F6}.layui-m-layerend{position:absolute;right:7px;top:10px;width:30px;height:30px;border:0;font-weight:400;background:0 0;cursor:pointer;-webkit-appearance:none;font-size:30px}.layui-m-layerend::after,.layui-m-layerend::before{position:absolute;left:5px;top:15px;content:'';width:18px;height:1px;background-color:#999;transform:rotate(45deg);-webkit-transform:rotate(45deg);border-radius:3px}.layui-m-layerend::after{transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}body .layui-m-layer .layui-m-layer-footer{position:fixed;width:95%;max-width:100%;margin:0 auto;left:0;right:0;bottom:10px;background:0 0}.layui-m-layer-footer .layui-m-layercont{padding:20px;border-radius:5px 5px 0 0;background-color:rgba(255,255,255,.8)}.layui-m-layer-footer .layui-m-layerbtn{display:block;height:auto;background:0 0;border-top:none}.layui-m-layer-footer .layui-m-layerbtn span{background-color:rgba(255,255,255,.8)}.layui-m-layer-footer .layui-m-layerbtn span[no]{color:#FD482C;border-top:1px solid #c2c2c2;border-radius:0 0 5px 5px}.layui-m-layer-footer .layui-m-layerbtn span[yes]{margin-top:10px;border-radius:5px}body .layui-m-layer .layui-m-layer-msg{width:auto;max-width:90%;margin:0 auto;bottom:-150px;background-color:rgba(0,0,0,.7);color:#fff}.layui-m-layer-msg .layui-m-layercont{padding:10px 20px} \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/css/modules/code.css b/src/main/resources/static/articles/layui/css/modules/code.css new file mode 100644 index 0000000..9143a25 --- /dev/null +++ b/src/main/resources/static/articles/layui/css/modules/code.css @@ -0,0 +1,2 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + html #layuicss-skincodecss{display:none;position:absolute;width:1989px}.layui-code-h3,.layui-code-view{position:relative;font-size:12px}.layui-code-view{display:block;margin:10px 0;padding:0;border:1px solid #e2e2e2;border-left-width:6px;background-color:#F2F2F2;color:#333;font-family:Courier New}.layui-code-h3{padding:0 10px;height:32px;line-height:32px;border-bottom:1px solid #e2e2e2}.layui-code-h3 a{position:absolute;right:10px;top:0;color:#999}.layui-code-view .layui-code-ol{position:relative;overflow:auto}.layui-code-view .layui-code-ol li{position:relative;margin-left:45px;line-height:20px;padding:0 5px;border-left:1px solid #e2e2e2;list-style-type:decimal-leading-zero;*list-style-type:decimal;background-color:#fff}.layui-code-view pre{margin:0}.layui-code-notepad{border:1px solid #0C0C0C;border-left-color:#3F3F3F;background-color:#0C0C0C;color:#C2BE9E}.layui-code-notepad .layui-code-h3{border-bottom:none}.layui-code-notepad .layui-code-ol li{background-color:#3F3F3F;border-left:none} \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/css/modules/laydate/default/laydate.css b/src/main/resources/static/articles/layui/css/modules/laydate/default/laydate.css new file mode 100644 index 0000000..b900971 --- /dev/null +++ b/src/main/resources/static/articles/layui/css/modules/laydate/default/laydate.css @@ -0,0 +1,2 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + .laydate-set-ym,.layui-laydate,.layui-laydate *,.layui-laydate-list{box-sizing:border-box}html #layuicss-laydate{display:none;position:absolute;width:1989px}.layui-laydate *{margin:0;padding:0}.layui-laydate{position:absolute;z-index:66666666;margin:5px 0;border-radius:2px;font-size:14px;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-name:laydate-upbit;animation-name:laydate-upbit}.layui-laydate-main{width:272px}.layui-laydate-content td,.layui-laydate-header *,.layui-laydate-list li{transition-duration:.3s;-webkit-transition-duration:.3s}@-webkit-keyframes laydate-upbit{from{-webkit-transform:translate3d(0,20px,0);opacity:.3}to{-webkit-transform:translate3d(0,0,0);opacity:1}}@keyframes laydate-upbit{from{transform:translate3d(0,20px,0);opacity:.3}to{transform:translate3d(0,0,0);opacity:1}}.layui-laydate-static{position:relative;z-index:0;display:inline-block;margin:0;-webkit-animation:none;animation:none}.laydate-ym-show .laydate-next-m,.laydate-ym-show .laydate-prev-m{display:none!important}.laydate-ym-show .laydate-next-y,.laydate-ym-show .laydate-prev-y{display:inline-block!important}.laydate-time-show .laydate-set-ym span[lay-type=month],.laydate-time-show .laydate-set-ym span[lay-type=year],.laydate-time-show .layui-laydate-header .layui-icon,.laydate-ym-show .laydate-set-ym span[lay-type=month]{display:none!important}.layui-laydate-header{position:relative;line-height:30px;padding:10px 70px 5px}.laydate-set-ym span,.layui-laydate-header i{padding:0 5px;cursor:pointer}.layui-laydate-header *{display:inline-block;vertical-align:bottom}.layui-laydate-header i{position:absolute;top:10px;color:#999;font-size:18px}.layui-laydate-header i.laydate-prev-y{left:15px}.layui-laydate-header i.laydate-prev-m{left:45px}.layui-laydate-header i.laydate-next-y{right:15px}.layui-laydate-header i.laydate-next-m{right:45px}.laydate-set-ym{width:100%;text-align:center;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.laydate-time-text{cursor:default!important}.layui-laydate-content{position:relative;padding:10px;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.layui-laydate-content table{border-collapse:collapse;border-spacing:0}.layui-laydate-content td,.layui-laydate-content th{width:36px;height:30px;padding:5px;text-align:center}.layui-laydate-content td{position:relative;cursor:pointer}.laydate-day-mark{position:absolute;left:0;top:0;width:100%;height:100%;line-height:30px;font-size:12px;overflow:hidden}.laydate-day-mark::after{position:absolute;content:'';right:2px;top:2px;width:5px;height:5px;border-radius:50%}.layui-laydate-footer{position:relative;height:46px;line-height:26px;padding:10px 20px}.layui-laydate-footer span{margin-right:15px;display:inline-block;cursor:pointer;font-size:12px}.layui-laydate-footer span:hover{color:#5FB878}.laydate-footer-btns{position:absolute;right:10px;top:10px}.laydate-footer-btns span{height:26px;line-height:26px;margin:0 0 0 -1px;padding:0 10px;border:1px solid #C9C9C9;background-color:#fff;white-space:nowrap;vertical-align:top;border-radius:2px}.layui-laydate-list>li,.layui-laydate-range .layui-laydate-main{display:inline-block;vertical-align:middle}.layui-laydate-list{position:absolute;left:0;top:0;width:100%;height:100%;padding:10px;background-color:#fff}.layui-laydate-list>li{position:relative;width:33.3%;height:36px;line-height:36px;margin:3px 0;text-align:center;cursor:pointer}.laydate-month-list>li{width:25%;margin:17px 0}.laydate-time-list>li{height:100%;margin:0;line-height:normal;cursor:default}.laydate-time-list p{position:relative;top:-4px;line-height:29px}.laydate-time-list ol{height:181px;overflow:hidden}.laydate-time-list>li:hover ol{overflow-y:auto}.laydate-time-list ol li{width:130%;padding-left:33px;line-height:30px;text-align:left;cursor:pointer}.layui-laydate-hint{position:absolute;top:115px;left:50%;width:250px;margin-left:-125px;line-height:20px;padding:15px;text-align:center;font-size:12px}.layui-laydate-range{width:546px}.layui-laydate-range .laydate-main-list-0 .laydate-next-m,.layui-laydate-range .laydate-main-list-0 .laydate-next-y,.layui-laydate-range .laydate-main-list-1 .laydate-prev-m,.layui-laydate-range .laydate-main-list-1 .laydate-prev-y{display:none}.layui-laydate-range .laydate-main-list-1 .layui-laydate-content{border-left:1px solid #e2e2e2}.layui-laydate,.layui-laydate-hint{border:1px solid #d2d2d2;box-shadow:0 2px 4px rgba(0,0,0,.12);background-color:#fff;color:#666}.layui-laydate-header{border-bottom:1px solid #e2e2e2}.layui-laydate-header i:hover,.layui-laydate-header span:hover{color:#5FB878}.layui-laydate-content{border-top:none 0;border-bottom:none 0}.layui-laydate-content th{font-weight:400;color:#333}.layui-laydate-content td{color:#666}.layui-laydate-content td.laydate-selected{background-color:#00F7DE}.laydate-selected:hover{background-color:#00F7DE!important}.layui-laydate-content td:hover,.layui-laydate-list li:hover{background-color:#eaeaea;color:#333}.laydate-time-list li ol{margin:0;padding:0;border:1px solid #e2e2e2;border-left-width:0}.laydate-time-list li:first-child ol{border-left-width:1px}.laydate-time-list>li:hover{background:0 0}.layui-laydate-content .laydate-day-next,.layui-laydate-content .laydate-day-prev{color:#d2d2d2}.laydate-selected.laydate-day-next,.laydate-selected.laydate-day-prev{background-color:#f8f8f8!important}.layui-laydate-footer{border-top:1px solid #e2e2e2}.layui-laydate-hint{color:#FF5722}.laydate-day-mark::after{background-color:#5FB878}.layui-laydate-content td.layui-this .laydate-day-mark::after{display:none}.layui-laydate-footer span[lay-type=date]{color:#5FB878}.layui-laydate .layui-this{background-color:#009688!important;color:#fff!important}.layui-laydate .laydate-disabled,.layui-laydate .laydate-disabled:hover{background:0 0!important;color:#d2d2d2!important;cursor:not-allowed!important;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.laydate-theme-molv{border:none}.laydate-theme-molv.layui-laydate-range{width:548px}.laydate-theme-molv .layui-laydate-main{width:274px}.laydate-theme-molv .layui-laydate-header{border:none;background-color:#009688}.laydate-theme-molv .layui-laydate-header i,.laydate-theme-molv .layui-laydate-header span{color:#f6f6f6}.laydate-theme-molv .layui-laydate-header i:hover,.laydate-theme-molv .layui-laydate-header span:hover{color:#fff}.laydate-theme-molv .layui-laydate-content{border:1px solid #e2e2e2;border-top:none;border-bottom:none}.laydate-theme-molv .laydate-main-list-1 .layui-laydate-content{border-left:none}.laydate-theme-grid .laydate-month-list>li,.laydate-theme-grid .laydate-year-list>li,.laydate-theme-grid .layui-laydate-content td,.laydate-theme-grid .layui-laydate-content thead,.laydate-theme-molv .layui-laydate-footer{border:1px solid #e2e2e2}.laydate-theme-grid .laydate-selected,.laydate-theme-grid .laydate-selected:hover{background-color:#f2f2f2!important;color:#009688!important}.laydate-theme-grid .laydate-selected.laydate-day-next,.laydate-theme-grid .laydate-selected.laydate-day-prev{color:#d2d2d2!important}.laydate-theme-grid .laydate-month-list,.laydate-theme-grid .laydate-year-list{margin:1px 0 0 1px}.laydate-theme-grid .laydate-month-list>li,.laydate-theme-grid .laydate-year-list>li{margin:0 -1px -1px 0}.laydate-theme-grid .laydate-year-list>li{height:43px;line-height:43px}.laydate-theme-grid .laydate-month-list>li{height:71px;line-height:71px} \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/css/modules/layer/default/icon-ext.png b/src/main/resources/static/articles/layui/css/modules/layer/default/icon-ext.png new file mode 100644 index 0000000000000000000000000000000000000000..bbbb669bb311514baa5db3a6a00b4644d0e280f1 GIT binary patch literal 5911 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 YZmOLxGt_1UThtH@6<y_WCF{ul0LuG;00000 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/css/modules/layer/default/icon.png b/src/main/resources/static/articles/layui/css/modules/layer/default/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..3e17da8b1aaae2935e19ac97d9015f0fe24e8770 GIT binary patch literal 11493 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 IBuu~mA09cwRsaA1 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/css/modules/layer/default/layer.css b/src/main/resources/static/articles/layui/css/modules/layer/default/layer.css new file mode 100644 index 0000000..032ae12 --- /dev/null +++ b/src/main/resources/static/articles/layui/css/modules/layer/default/layer.css @@ -0,0 +1,2 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + .layui-layer-imgbar,.layui-layer-imgtit a,.layui-layer-tab .layui-layer-title span,.layui-layer-title{text-overflow:ellipsis;white-space:nowrap}html #layuicss-layer{display:none;position:absolute;width:1989px}.layui-layer,.layui-layer-shade{position:fixed;_position:absolute;pointer-events:auto}.layui-layer-shade{top:0;left:0;width:100%;height:100%;_height:expression(document.body.offsetHeight+"px")}.layui-layer{-webkit-overflow-scrolling:touch;top:150px;left:0;margin:0;padding:0;background-color:#fff;-webkit-background-clip:content;border-radius:2px;box-shadow:1px 1px 50px rgba(0,0,0,.3)}.layui-layer-close{position:absolute}.layui-layer-content{position:relative}.layui-layer-border{border:1px solid #B2B2B2;border:1px solid rgba(0,0,0,.1);box-shadow:1px 1px 5px rgba(0,0,0,.2)}.layui-layer-load{background:url(loading-1.gif) center center no-repeat #eee}.layui-layer-ico{background:url(icon.png) no-repeat}.layui-layer-btn a,.layui-layer-dialog .layui-layer-ico,.layui-layer-setwin a{display:inline-block;*display:inline;*zoom:1;vertical-align:top}.layui-layer-move{display:none;position:fixed;*position:absolute;left:0;top:0;width:100%;height:100%;cursor:move;opacity:0;filter:alpha(opacity=0);background-color:#fff;z-index:2147483647}.layui-layer-resize{position:absolute;width:15px;height:15px;right:0;bottom:0;cursor:se-resize}.layer-anim{-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:.3s;animation-duration:.3s}@-webkit-keyframes layer-bounceIn{0%{opacity:0;-webkit-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes layer-bounceIn{0%{opacity:0;-webkit-transform:scale(.5);-ms-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.layer-anim-00{-webkit-animation-name:layer-bounceIn;animation-name:layer-bounceIn}@-webkit-keyframes layer-zoomInDown{0%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes layer-zoomInDown{0%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);-ms-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(60px);-ms-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.layer-anim-01{-webkit-animation-name:layer-zoomInDown;animation-name:layer-zoomInDown}@-webkit-keyframes layer-fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes layer-fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.layer-anim-02{-webkit-animation-name:layer-fadeInUpBig;animation-name:layer-fadeInUpBig}@-webkit-keyframes layer-zoomInLeft{0%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(48px);transform:scale(.475) translateX(48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes layer-zoomInLeft{0%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);-ms-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(48px);-ms-transform:scale(.475) translateX(48px);transform:scale(.475) translateX(48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.layer-anim-03{-webkit-animation-name:layer-zoomInLeft;animation-name:layer-zoomInLeft}@-webkit-keyframes layer-rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg);transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0) rotate(0);transform:translateX(0) rotate(0)}}@keyframes layer-rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg);-ms-transform:translateX(-100%) rotate(-120deg);transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0) rotate(0);-ms-transform:translateX(0) rotate(0);transform:translateX(0) rotate(0)}}.layer-anim-04{-webkit-animation-name:layer-rollIn;animation-name:layer-rollIn}@keyframes layer-fadeIn{0%{opacity:0}100%{opacity:1}}.layer-anim-05{-webkit-animation-name:layer-fadeIn;animation-name:layer-fadeIn}@-webkit-keyframes layer-shake{0%,100%{-webkit-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);transform:translateX(10px)}}@keyframes layer-shake{0%,100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);-ms-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);-ms-transform:translateX(10px);transform:translateX(10px)}}.layer-anim-06{-webkit-animation-name:layer-shake;animation-name:layer-shake}@-webkit-keyframes fadeIn{0%{opacity:0}100%{opacity:1}}.layui-layer-title{padding:0 80px 0 20px;height:42px;line-height:42px;border-bottom:1px solid #eee;font-size:14px;color:#333;overflow:hidden;background-color:#F8F8F8;border-radius:2px 2px 0 0}.layui-layer-setwin{position:absolute;right:15px;*right:0;top:15px;font-size:0;line-height:initial}.layui-layer-setwin a{position:relative;width:16px;height:16px;margin-left:10px;font-size:12px;_overflow:hidden}.layui-layer-setwin .layui-layer-min cite{position:absolute;width:14px;height:2px;left:0;top:50%;margin-top:-1px;background-color:#2E2D3C;cursor:pointer;_overflow:hidden}.layui-layer-setwin .layui-layer-min:hover cite{background-color:#2D93CA}.layui-layer-setwin .layui-layer-max{background-position:-32px -40px}.layui-layer-setwin .layui-layer-max:hover{background-position:-16px -40px}.layui-layer-setwin .layui-layer-maxmin{background-position:-65px -40px}.layui-layer-setwin .layui-layer-maxmin:hover{background-position:-49px -40px}.layui-layer-setwin .layui-layer-close1{background-position:1px -40px;cursor:pointer}.layui-layer-setwin .layui-layer-close1:hover{opacity:.7}.layui-layer-setwin .layui-layer-close2{position:absolute;right:-28px;top:-28px;width:30px;height:30px;margin-left:0;background-position:-149px -31px;*right:-18px;_display:none}.layui-layer-setwin .layui-layer-close2:hover{background-position:-180px -31px}.layui-layer-btn{text-align:right;padding:0 15px 12px;pointer-events:auto;user-select:none;-webkit-user-select:none}.layui-layer-btn a{height:28px;line-height:28px;margin:5px 5px 0;padding:0 15px;border:1px solid #dedede;background-color:#fff;color:#333;border-radius:2px;font-weight:400;cursor:pointer;text-decoration:none}.layui-layer-btn a:hover{opacity:.9;text-decoration:none}.layui-layer-btn a:active{opacity:.8}.layui-layer-btn .layui-layer-btn0{border-color:#1E9FFF;background-color:#1E9FFF;color:#fff}.layui-layer-btn-l{text-align:left}.layui-layer-btn-c{text-align:center}.layui-layer-dialog{min-width:260px}.layui-layer-dialog .layui-layer-content{position:relative;padding:20px;line-height:24px;word-break:break-all;overflow:hidden;font-size:14px;overflow-x:hidden;overflow-y:auto}.layui-layer-dialog .layui-layer-content .layui-layer-ico{position:absolute;top:16px;left:15px;_left:-40px;width:30px;height:30px}.layui-layer-ico1{background-position:-30px 0}.layui-layer-ico2{background-position:-60px 0}.layui-layer-ico3{background-position:-90px 0}.layui-layer-ico4{background-position:-120px 0}.layui-layer-ico5{background-position:-150px 0}.layui-layer-ico6{background-position:-180px 0}.layui-layer-rim{border:6px solid #8D8D8D;border:6px solid rgba(0,0,0,.3);border-radius:5px;box-shadow:none}.layui-layer-msg{min-width:180px;border:1px solid #D3D4D3;box-shadow:none}.layui-layer-hui{min-width:100px;background-color:#000;filter:alpha(opacity=60);background-color:rgba(0,0,0,.6);color:#fff;border:none}.layui-layer-hui .layui-layer-content{padding:12px 25px;text-align:center}.layui-layer-dialog .layui-layer-padding{padding:20px 20px 20px 55px;text-align:left}.layui-layer-page .layui-layer-content{position:relative;overflow:auto}.layui-layer-iframe .layui-layer-btn,.layui-layer-page .layui-layer-btn{padding-top:10px}.layui-layer-nobg{background:0 0}.layui-layer-iframe iframe{display:block;width:100%}.layui-layer-loading{border-radius:100%;background:0 0;box-shadow:none;border:none}.layui-layer-loading .layui-layer-content{width:60px;height:24px;background:url(loading-0.gif) no-repeat}.layui-layer-loading .layui-layer-loading1{width:37px;height:37px;background:url(loading-1.gif) no-repeat}.layui-layer-ico16,.layui-layer-loading .layui-layer-loading2{width:32px;height:32px;background:url(loading-2.gif) no-repeat}.layui-layer-tips{background:0 0;box-shadow:none;border:none}.layui-layer-tips .layui-layer-content{position:relative;line-height:22px;min-width:12px;padding:8px 15px;font-size:12px;_float:left;border-radius:2px;box-shadow:1px 1px 3px rgba(0,0,0,.2);background-color:#000;color:#fff}.layui-layer-tips .layui-layer-close{right:-2px;top:-1px}.layui-layer-tips i.layui-layer-TipsG{position:absolute;width:0;height:0;border-width:8px;border-color:transparent;border-style:dashed;*overflow:hidden}.layui-layer-tips i.layui-layer-TipsB,.layui-layer-tips i.layui-layer-TipsT{left:5px;border-right-style:solid;border-right-color:#000}.layui-layer-tips i.layui-layer-TipsT{bottom:-8px}.layui-layer-tips i.layui-layer-TipsB{top:-8px}.layui-layer-tips i.layui-layer-TipsL,.layui-layer-tips i.layui-layer-TipsR{top:5px;border-bottom-style:solid;border-bottom-color:#000}.layui-layer-tips i.layui-layer-TipsR{left:-8px}.layui-layer-tips i.layui-layer-TipsL{right:-8px}.layui-layer-lan[type=dialog]{min-width:280px}.layui-layer-lan .layui-layer-title{background:#4476A7;color:#fff;border:none}.layui-layer-lan .layui-layer-btn{padding:5px 10px 10px;text-align:right;border-top:1px solid #E9E7E7}.layui-layer-lan .layui-layer-btn a{background:#fff;border-color:#E9E7E7;color:#333}.layui-layer-lan .layui-layer-btn .layui-layer-btn1{background:#C9C5C5}.layui-layer-molv .layui-layer-title{background:#009f95;color:#fff;border:none}.layui-layer-molv .layui-layer-btn a{background:#009f95;border-color:#009f95}.layui-layer-molv .layui-layer-btn .layui-layer-btn1{background:#92B8B1}.layui-layer-iconext{background:url(icon-ext.png) no-repeat}.layui-layer-prompt .layui-layer-input{display:block;width:230px;height:36px;margin:0 auto;line-height:30px;padding-left:10px;border:1px solid #e6e6e6;color:#333}.layui-layer-prompt textarea.layui-layer-input{width:300px;height:100px;line-height:20px;padding:6px 10px}.layui-layer-prompt .layui-layer-content{padding:20px}.layui-layer-prompt .layui-layer-btn{padding-top:0}.layui-layer-tab{box-shadow:1px 1px 50px rgba(0,0,0,.4)}.layui-layer-tab .layui-layer-title{padding-left:0;overflow:visible}.layui-layer-tab .layui-layer-title span{position:relative;float:left;min-width:80px;max-width:260px;padding:0 20px;text-align:center;overflow:hidden;cursor:pointer}.layui-layer-tab .layui-layer-title span.layui-this{height:43px;border-left:1px solid #eee;border-right:1px solid #eee;background-color:#fff;z-index:10}.layui-layer-tab .layui-layer-title span:first-child{border-left:none}.layui-layer-tabmain{line-height:24px;clear:both}.layui-layer-tabmain .layui-layer-tabli{display:none}.layui-layer-tabmain .layui-layer-tabli.layui-this{display:block}.layui-layer-photos{-webkit-animation-duration:.8s;animation-duration:.8s}.layui-layer-photos .layui-layer-content{overflow:hidden;text-align:center}.layui-layer-photos .layui-layer-phimg img{position:relative;width:100%;display:inline-block;*display:inline;*zoom:1;vertical-align:top}.layui-layer-imgbar,.layui-layer-imguide{display:none}.layui-layer-imgnext,.layui-layer-imgprev{position:absolute;top:50%;width:27px;_width:44px;height:44px;margin-top:-22px;outline:0;blr:expression(this.onFocus=this.blur())}.layui-layer-imgprev{left:10px;background-position:-5px -5px;_background-position:-70px -5px}.layui-layer-imgprev:hover{background-position:-33px -5px;_background-position:-120px -5px}.layui-layer-imgnext{right:10px;_right:8px;background-position:-5px -50px;_background-position:-70px -50px}.layui-layer-imgnext:hover{background-position:-33px -50px;_background-position:-120px -50px}.layui-layer-imgbar{position:absolute;left:0;bottom:0;width:100%;height:32px;line-height:32px;background-color:rgba(0,0,0,.8);background-color:#000\9;filter:Alpha(opacity=80);color:#fff;overflow:hidden;font-size:0}.layui-layer-imgtit *{display:inline-block;*display:inline;*zoom:1;vertical-align:top;font-size:12px}.layui-layer-imgtit a{max-width:65%;overflow:hidden;color:#fff}.layui-layer-imgtit a:hover{color:#fff;text-decoration:underline}.layui-layer-imgtit em{padding-left:10px;font-style:normal}@-webkit-keyframes layer-bounceOut{100%{opacity:0;-webkit-transform:scale(.7);transform:scale(.7)}30%{-webkit-transform:scale(1.05);transform:scale(1.05)}0%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes layer-bounceOut{100%{opacity:0;-webkit-transform:scale(.7);-ms-transform:scale(.7);transform:scale(.7)}30%{-webkit-transform:scale(1.05);-ms-transform:scale(1.05);transform:scale(1.05)}0%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.layer-anim-close{-webkit-animation-name:layer-bounceOut;animation-name:layer-bounceOut;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:.2s;animation-duration:.2s}@media screen and (max-width:1100px){.layui-layer-iframe{overflow-y:auto;-webkit-overflow-scrolling:touch}} \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/css/modules/layer/default/loading-0.gif b/src/main/resources/static/articles/layui/css/modules/layer/default/loading-0.gif new file mode 100644 index 0000000000000000000000000000000000000000..6f3c9539a22171cc2f12639492e346d97a9078e8 GIT binary patch literal 5793 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 bWW^%>x7XlHV^#Q1uOX^B?ki3(VEg|7!QHuF literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/css/modules/layer/default/loading-1.gif b/src/main/resources/static/articles/layui/css/modules/layer/default/loading-1.gif new file mode 100644 index 0000000000000000000000000000000000000000..db3a483e4b74971fbfb1cc0fb6499852cedfe650 GIT binary patch literal 701 zcmZ?wbhEHbRAo?Qn8?Ji_w)@mZNLBj|1&T!DE{a6a}5c0b_{Se(lcOY1PT3QVdY|A zV$cDyff`g97?`@J^shYqmS1s(LX_+4yGox$4el*+Jm?ved2^25GBru=T^dGm#<906 za&AQCZ08H8P;Bd&{NT;vl&}c_^L4%p?g_hjB<KpSb=eisoiA+`yS^%|&b8})KEqJ9 z;%V-@${+t;2BtNdDE)AlntY<|=n3;@Gu#&cXcp%TK3Tf5oipv4W}EAE^<696tGcQJ zklZH#bR-J{H_&~oJwW%xAY3lWz{<b{mJywz-zc&7=AF*Mpj5rKD`onI4>u{YB2<bq z2r}?6FvHA1k`ZMPg_<EeC28itEFRgOtZiAT$AW|3>9{c>Ob}p@z~Ks3xCw+@!HClp xtZ<(QPf3`00FNu+VbOvoEE+h73k#4LIKl$IE8t;)<_eUs!0QU6uz<M28UPBGzXAXN literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/css/modules/layer/default/loading-2.gif b/src/main/resources/static/articles/layui/css/modules/layer/default/loading-2.gif new file mode 100644 index 0000000000000000000000000000000000000000..5bb90fd6a49107a321c35b9cee4a7b810314b51f GIT binary patch literal 1787 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/font/iconfont.eot b/src/main/resources/static/articles/layui/font/iconfont.eot new file mode 100644 index 0000000000000000000000000000000000000000..622d7ec82e4afb89ab919a9cc9b25fb6dfe9cf75 GIT binary patch literal 46684 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 NqtXTTr(IH0bTL$Q#&Rt<ct2PGwNr_Ne<NQ>$( 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 WEo6sg2$g9lKpdZ$$_>);_x}MD5#CJz literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/font/iconfont.svg b/src/main/resources/static/articles/layui/font/iconfont.svg new file mode 100644 index 0000000..999ca1f --- /dev/null +++ b/src/main/resources/static/articles/layui/font/iconfont.svg @@ -0,0 +1,554 @@ +<?xml version="1.0" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" > +<!-- +2013-9-30: Created. +--> +<svg> +<metadata> +Created by iconfont +</metadata> +<defs> + +<font id="layui-icon" horiz-adv-x="1024" > + <font-face + font-family="layui-icon" + font-weight="500" + font-stretch="normal" + units-per-em="1024" + ascent="896" + descent="-128" + /> + <missing-glyph /> + + <glyph glyph-name="reply-fill" unicode="" d="M507.904 835.5840000000001q93.184 1.024 175.104-33.792t143.872-94.72 97.792-141.312 36.864-174.592q1.024-88.064-30.208-165.888t-87.04-137.728-131.072-98.816-162.304-48.128q-22.528-3.072-48.128-5.12t-56.832-3.072-69.632 0-86.528 6.144q-106.496 10.24-158.208 26.624t-41.472 18.432q54.272 9.216 93.184 29.696 20.48 11.264 16.896 32.256t-19.968 39.424q-52.224 57.344-84.48 133.632t-34.304 164.352q-1.024 93.184 33.792 175.104t95.232 143.36 142.336 97.28 175.104 36.864zM707.584 385.024q0-26.624 18.432-45.568t45.056-18.944 45.568 18.944 18.944 45.568-18.944 45.056-45.568 18.432-45.056-18.432-18.432-45.056zM450.56 385.024q0-26.624 19.456-46.08t46.08-19.456q27.648 0 46.592 19.456t18.944 46.08q0 27.648-18.944 46.592t-46.592 18.944q-26.624 0-46.08-18.944t-19.456-46.592zM196.608 386.048q0-26.624 18.944-46.08t45.568-19.456q27.648 0 46.592 19.456t18.944 46.08-18.944 45.568-46.592 18.944q-26.624 0-45.568-18.944t-18.944-45.568z" horiz-adv-x="1024" /> + + + <glyph glyph-name="set-fill" unicode="" d="M916.9398 445.2101l-69.9664 10.7833c-18.6619 2.863-38.1388 17.826-43.3424 33.2487-5.1618 15.3809-15.0883 65.4524-3.9288 80.6661l41.9004 57.135c11.1595 15.2346 9.3832 38.5985-3.9706 51.9314l-30.6364 30.6573c-13.3538 13.3538-36.7177 15.151-51.9314 3.9497l-57.135-41.8795c-15.2346-11.1804-39.4344-14.3987-53.7704-7.168-14.3569 7.2307-57.3022 35.7773-60.1652 54.4183l-10.7833 69.9664C570.3471 807.6016 552.542 822.8571 533.6712 822.8571h-43.34236734693877c-18.8709 0-36.6759-15.2555-39.5389-33.9174l-10.7833-69.9664c-2.863-18.6619-17.826-38.1388-33.2487-43.3424-15.4018-5.1827-65.4524-15.1092-80.687-3.9288L268.9567 713.5817c-15.2346 11.1804-38.6194 9.3832-51.9523-3.9497l-30.6364-30.6573c-13.3747-13.3538-15.151-36.7177-3.9706-51.9314l41.9004-57.135c11.1595-15.2346 14.3778-39.4136 7.168-53.7704-7.2307-14.3569-35.7773-57.2813-54.4183-60.1443l-69.9664-10.7833C88.3984 442.3471 73.1429 424.542 73.1429 405.6712v-43.34236734693877c0-18.8709 15.2555-36.6759 33.9174-39.5389l69.9664-10.7833c18.6619-2.863 38.1388-17.8469 43.3424-33.2487 5.1618-15.4018 15.0883-65.4733 3.9288-80.687l-41.9004-57.135c-11.1595-15.2346-9.3832-38.6194 3.9706-51.9314l30.6364-30.6573c13.3538-13.3538 36.7177-15.151 51.9523-3.9706l57.135 41.9213c15.2346 11.1386 39.4136 14.3778 53.7704 7.168 14.3569-7.2307 57.2813-35.7773 60.1443-54.4183l10.7833-69.9664c2.863-18.6619 20.6472-33.9174 39.5389-33.9174h43.34236734693877c18.8709 0 36.6759 15.2555 39.5389 33.9174l10.7833 69.9664c2.863 18.6619 17.826 38.1388 33.2487 43.3215 15.4018 5.1827 65.4524 15.0883 80.6661 3.9288l57.1559-41.9213c15.2346-11.1595 38.5985-9.3623 51.9314 3.9706l30.6364 30.6573c13.3747 13.3329 15.151 36.7177 3.9706 51.9314l-41.9004 57.135c-11.1595 15.2346-14.3778 39.4136-7.168 53.7496 7.2307 14.3778 35.7773 57.3231 54.4183 60.1861l69.9664 10.7833c18.6619 2.863 33.9174 20.6472 33.9174 39.5389v43.34236734693877C950.8571 424.542 935.6016 442.3471 916.9398 445.2101zM512 210.4633c-95.838 0-173.5367 77.6986-173.5367 173.5367s77.6986 173.5367 173.5367 173.5367 173.5367-77.6986 173.5367-173.5367S607.838 210.4633 512 210.4633zM512 384m-104.7824 0a5.014 5.014 0 1 1 209.5647 0 5.014 5.014 0 1 1-209.5647 0Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="menu-fill" unicode="" d="M511.999488 834.254727c-248.678712 0-450.273176-201.585181-450.273176-450.254727s201.594464-450.254727 450.273176-450.254727 450.273176 201.585181 450.273176 450.254727S760.6782 834.254727 511.999488 834.254727zM266.371377 589.705012l491.256222 0 0-33.772174L266.371377 555.932838 266.371377 589.705012zM757.627599 178.29396499999996L266.371377 178.29396499999996l0 33.773198 491.256222 0L757.627599 178.29396499999996zM140.487278 367.11340099999995l0 33.771151 743.024421 0 0-33.771151L140.487278 367.11340099999995z" horiz-adv-x="1024" /> + + + <glyph glyph-name="search" unicode="" d="M439.323351 120.52219c-49.280352 0-97.09834 9.656941-142.126681 28.699646-43.480015 18.388812-82.522793 44.706201-116.043584 78.225619s-59.841305 72.560596-78.230871 116.03883C83.878729 388.513804 74.222416 436.330856 74.222416 485.609189c0 49.284473 9.656313 97.104595 28.699798 142.133138 18.388542 43.479257 44.71008 82.520435 78.231894 116.03883 33.518745 33.515325 72.562546 59.832713 116.043584 78.219479 45.027318 19.039635 92.846329 28.694529 142.125658 28.694529 49.280352 0 97.099364-9.653871 142.126681-28.694529 43.481039-18.385742 82.525863-44.704155 116.044608-78.220502 33.520791-33.518395 59.842328-72.559573 78.230871-116.03883 19.042462-45.028543 28.699798-92.848665 28.699798-142.133138 0-49.278333-9.657336-97.095385-28.701845-142.122905-18.388542-43.47721-44.708033-82.520435-78.228824-116.03883s-72.563569-59.838853-116.043584-78.226642C536.422715 130.177084 488.603703 120.52219 439.323351 120.52219zM439.323351 797.483242c-171.975699 0-311.887855-139.906423-311.887855-311.875077S267.347652 173.734112 439.323351 173.734112s311.887855 139.907447 311.887855 311.874053S611.299051 797.483242 439.323351 797.483242zM890.678206-48.734702c-22.121716 0-42.90387 8.562003-58.541653 24.115234L674.672953 128.025071l37.039062 38.20616 157.888289-153.058978c5.606924-5.606695 13.091693-8.692986 21.077901-8.692986 7.983139 0 15.464837 3.087315 21.070738 8.69094 5.616135 5.622044 8.715856 13.126972 8.715856 21.123087 0 7.980765-3.091535 15.46318-8.702552 21.067828l-0.301888 0.306992L758.714395 213.230662l38.207726 37.035498 152.611906-157.427472c15.571265-15.638165 24.144876-36.422538 24.144876-58.549487 0-22.195511-8.625801-43.054585-24.287121-58.735729C933.723298-40.112324 912.876674-48.734702 890.678206-48.734702zM281.015489 327.245392c-42.340005 42.320874-65.652899 98.584296-65.643689 158.421102 0.008187 59.818387 23.319034 116.074645 65.637549 158.4078l37.634651-37.619806c-66.60666-66.629513-66.60973-175.00071-0.007163-241.577011L281.015489 327.245392z" horiz-adv-x="1024" /> + + + <glyph glyph-name="share" unicode="" d="M769.714 306.453c-51.754 0-97.702-24.851-126.571-63.269L394.479 367.94100000000003c3.93 13.798 6.034 28.364 6.034 43.424 0 16.496-2.527 32.399-7.211 47.35l247.724 124.288c28.71-40.052 75.647-66.151 128.687-66.151 87.388 0 158.229 70.84 158.229 158.229 0 87.388-70.841 158.229-158.229 158.229-87.389 0-158.229-70.841-158.229-158.229 0-6.046 0.352-12.009 1.011-17.88L351.22 526.116c-28.371 26.943-66.723 43.479-108.938 43.479-87.388 0-158.229-70.84-158.229-158.229s70.84-158.229 158.229-158.229c43.752 0 83.354 17.758 111.997 46.459l258.676-129.779c-0.964-7.062-1.474-14.266-1.474-21.592 0-87.389 70.84-158.229 158.229-158.229s158.229 70.84 158.229 158.229C927.938 235.61199999999997 857.103 306.453 769.714 306.453L769.714 306.453z" horiz-adv-x="1024" /> + + + <glyph glyph-name="set-sm" unicode="" d="M946.367 405.895c0.02 21.85-13.04 38.49-31.74 41.57-18.69 3.07-79.05 13.01-85.99 14.14-6.95 1.15-14.09 8.07-15.4 11.45-1.32 3.37-8.94 22.2-11.87 29.46-2.95 7.27-1.92 16.58 4.39 25.52 6.3 8.93 39.9 55.87 48.38 67.72 8.49 11.87 8.65 34.61-4.84 48.39-13.48 13.78-47.75 47.09-56.73 55.86-8.99 8.76-31.08 8.64-42.67 0.43-11.58-8.2-71.69-51.01-71.69-51.01s-9.97-6.89-20.67-2.64c-10.7 4.24-33.43 14.07-33.43 14.07s-7.19 5.43-9.68 19.79c-2.5 14.37-11.11 65.28-14.07 82.7-2.97 17.42-20.67 29.62-37.83 29.46-17.16-0.14-57.91 0-74.33 0s-32.26-15.68-34.75-29.46c-2.49-13.79-11.56-69.16-14.07-84.45-2.52-15.3-11.44-18.48-11.44-18.48s-19.56-8.06-29.91-12.31c-10.34-4.26-15.39-2.64-30.35 7.48-14.95 10.11-44.74 31.03-63.04 43.83-18.3 12.81-38.12 7.92-49.26-3.52s-36.06-35.77-51.02-50.43c-14.95-14.66-12.61-37.54 0.58-55.71 13.2-18.18 32.34-45.43 41.35-58.21 9.01-12.78 10.84-19.5 8.36-26.82-2.49-7.34-6.64-16.58-11.43-27.72-4.81-11.13-9.69-13.64-27.86-17.01-17.36-3.21-58.42-9.92-77.4-13.31-18.99-3.37-30.66-21.43-30.66-41.81l0-64.66c0-24.34 13.2-37.24 38.42-41.93 25.22-4.69 62.66-10.66 74.77-12.61 12.1-1.95 17.67-6.6 21.41-15.54 3.73-8.94 5.13-10.12 9.37-22.57 4.26-12.47 6.46-15.55-4.98-31.67-11.44-16.13-34.31-48.11-46.03-64.51-11.74-16.4-6.45-37.83 4.98-49.85 11.44-12.03 35.47-35.64 48.97-48.97 13.49-13.33 35.19-16.28 53.36-3.52 18.19 12.75 54.98 38.99 65.69 46.62 10.7 7.63 21.91 5.28 27.85 2.94 5.94-2.35 11.25-4.6 22-9.1 10.73-4.48 13.85-11.2 16.41-23.45 2.57-12.24 10.19-56.85 13.93-78.59 3.75-21.72 18.91-33.43 40.62-33.72 21.7-0.29 33.27-0.12 61.57 0 28.29 0.13 41.86 12.61 45.45 31.38 3.59 18.76 12.45 72.94 14.22 83.72 1.78 10.76 5.94 14.73 13.63 18.47 7.7 3.74 14.32 6.47 26.84 11.88 12.51 5.4 18.91 0.66 27.7-5.72 8.8-6.39 47.51-33.78 63.78-45.31 16.28-11.53 36.73-10.33 51.9 4.4 15.18 14.73 31.62 30.99 49.27 48.38 17.64 17.4 12.16 39.59 4.4 51.46-7.77 11.88-44.49 62.95-49.71 70.23-5.21 7.28-4.4 18.62-1.75 24.63 2.64 6.01 8.44 18.24 11.72 25.22 3.29 6.97 9.6 11.22 18.18 12.9 8.58 1.69 62.72 11 83.75 14.61 21.03 3.64 31.11 19.92 31.26 39.92C946.427 359.93499999999995 946.347 388.525 946.367 405.895zM908.587 338.615c0.21-5.76-4.66-10.65-8.82-11.38-4.17-0.73-63.26-11.38-81.48-14.29-18.21-2.92-33.23-15.07-38.72-28.06-3.98-9.44-5.47-13.51-10.59-26.96-5.12-13.44-4.64-32.19 2.56-42.26 7.2-10.08 46.82-64.9 50.38-70.45s4.27-11.95-1.28-17.5-40.99-41.2-47.39-47.39c-6.41-6.19-11.83-4.8-18.79 0-6.95 4.8-39.61 26.39-64.44 44.36-16.96 12.28-32.82 12.43-48.7 6.02-15.87-6.42 1.28 0.28-22.2-8.97-23.48-9.25-30.23-27.62-33.73-48.24-3.5-20.63-10.67-62.98-11.95-70.45-1.28-7.47-5.55-11.1-13.66-11.1l-64.9 0c-8.11 0-11.74 2.99-14.52 11.95-2.77 8.97-10.03 54.87-12.8 74.29-2.78 19.43-13.82 36.12-24.77 40.56-10.94 4.45-4.98 2.14-27.32 11.1-22.34 8.97-39.63 4.5-51.23-3.84-11.61-8.34-58.64-42.69-65.33-46.96-6.68-4.28-14.65-3.28-18.35 0.42-3.7 3.7-40.56 40.56-46.54 46.54-5.98 5.98-5.36 12.92 0 20.49 5.36 7.58 28.39 40.76 40.99 57.95 12.59 17.2 17.93 34.74 9.82 53.49-8.12 18.74-4.42 10.24-12.39 28.6-7.96 18.36-24.28 24.46-38.42 26.9-14.14 2.43-68.88 11.53-76.85 13.23-7.97 1.71-11.95 7.26-11.95 14.09l0 66.18c0 9.53 7.67 12.44 12.38 13.23 4.7 0.8 54.22 9.18 73 12.39 18.79 3.2 36.36 11.32 43.55 29.03 7.19 17.7 4.27 11.1 11.1 27.32 6.83 16.23 3.8 33.94-7.68 49.96-11.49 16.01-38.85 54-44.4 61.9-5.55 7.9-5.77 12.6 0.85 19.21 6.62 6.62 42.05 42.48 46.96 46.97 4.91 4.48 12.07 5.4 18.36 0.85 6.3-4.55 49.31-35.65 64.04-46.11 14.73-10.46 32.35-12.56 49.1-5.55 16.75 7.02 10.25 4.48 26.9 11.1s24.84 19.09 28.18 39.71c3.33 20.61 11.95 74.14 12.81 77.7 0.85 3.55 5.55 10.46 11.74 10.46s65.82-0.07 69.8 0c3.99 0.07 10.3-3.29 11.32-9.18 1.02-5.9 13.02-74.29 14.94-86.25 1.92-11.95 15.58-28.57 25.54-32.73 9.96-4.16 21.35-8.75 31.31-13.09 9.97-4.34 30.13-1.91 36.15 2.28 6.03 4.18 70.52 48.81 75.43 52.37 4.91 3.56 11.52 3.27 17.64-2.85s43.34-43.19 47.54-47.53c4.19-4.34 4.66-8.66 1.14-13.66-3.53-5.01-36.72-51.8-47.54-67.46-10.81-15.65-11.73-33.73-5.41-48.96 6.33-15.22 3.99-9.39 9.11-21.91 5.13-12.53 16.28-29.03 33.59-31.88 17.31-2.85 76.92-12.74 84.82-13.95 7.9-1.21 11.1-7.18 11.1-13.37S908.377 344.385 908.587 338.615zM526.833 573.1949999999999c-110.45 0-200-89.54-200-200s89.55-200 200-200c110.46 0 200 89.54 200 200S637.293 573.1949999999999 526.833 573.1949999999999zM526.833 208.19500000000005c-91.12 0-165 73.87-165 165s73.88 165 165 165c91.13 0 165-73.87 165-165S617.963 208.19500000000005 526.833 208.19500000000005z" horiz-adv-x="1024" /> + + + <glyph glyph-name="engine" unicode="" d="M422.214332 360.70413299999996L186.183684 360.70413299999996l0 46.568461 236.030648 0c10.379577 40.075407 46.47537 69.794509 89.785668 69.794509 51.432433 0 93.067103-41.657943 93.067103-93.067103C605.067103 332.56756700000005 563.40916 290.909624 512 290.909624 468.689703 290.909624 432.593909 320.65199900000005 422.214332 360.70413299999996L422.214332 360.70413299999996zM512 779.634098c-218.529658 0-395.634098-177.10444-395.634098-395.634098 0-218.529658 177.10444-395.634098 395.634098-395.634098 154.76275 0 288.417257 89.064217 353.440885 218.55293l101.398692-59.112389-23.063141-39.959044-62.161099 35.909613c-33.745261-51.595341-77.42792-96.115813-129.093079-129.744711l35.653614-61.765464-40.308133-23.295867-35.653614 61.765464c-53.620057-27.345298-113.360805-44.404109-176.894987-47.73209L535.319139-127.99706800000001l-46.568461 0 0 70.981412c-63.534182 3.327981-123.27493 20.386792-176.894987 47.73209l-35.653614-61.765464-40.308133 23.295867 35.653614 61.765464c-51.665159 33.628898-95.347818 78.149371-129.093079 129.744711l-62.161099-35.909613-23.295867 40.308133 62.114553 35.863067c-27.415116 53.550239-44.799743 113.104807-48.127724 176.685534L0.002932 360.70413299999996l0 46.568461 70.958139 0c3.327981 63.580727 20.712609 123.135295 48.127724 176.685534l-62.114553 35.863067 23.295867 40.308133 62.161099-35.909613c33.745261 51.595341 77.42792 96.115813 129.093079 129.744711l-35.653614 61.765464 40.308133 23.295867 35.653614-61.765464c53.620057 27.345298 113.360805 44.404109 176.894987 47.73209L488.727406 895.997068l46.568461 0 0-70.981412c63.534182-3.327981 123.27493-20.386792 176.894987-47.73209l35.653614 61.765464 40.308133-23.295867-35.653614-61.765464c51.665159-33.628898 95.347818-78.149371 129.093079-129.744711l62.161099 35.909613 23.063141-39.959044-101.398692-59.112389C800.417257 690.569881 666.76275 779.634098 512 779.634098L512 779.634098z" horiz-adv-x="1024" /> + + + <glyph glyph-name="close" unicode="ဆ" d="M783.483 701.249L512 429.775 240.517 701.249c-10.082 10.083-26.429 10.083-36.51 0-10.083-10.082-10.083-26.429 0-36.509l271.481-271.475L204.008 121.78800000000001c-10.083-10.081-10.083-26.428 0-36.508 10.082-10.082 26.429-10.082 36.51 0L512 356.755l271.483-271.475c10.082-10.082 26.429-10.082 36.513 0 10.081 10.083 10.081 26.428 0 36.508L548.51 393.265l271.485 271.474c10.081 10.083 10.081 26.429 0 36.509C809.912 711.33 793.564 711.33 783.483 701.249z" horiz-adv-x="1024" /> + + + <glyph glyph-name="close-fill" unicode="ဇ" d="M512 822.022125c-217.47508 0-394.423141-176.949085-394.423141-394.423141 0-217.474057 176.948061-394.422118 394.423141-394.422118 217.473033 0 394.422118 176.948061 394.422118 394.422118C906.422118 645.07304 729.473033 822.022125 512 822.022125zM702.228529 270.92978200000005c8.030907-8.030907 8.030907-21.052478 0-29.083385s-21.052478-8.030907-29.083385 0L512 402.992563 350.853833 241.84741899999995c-8.030907-8.030907-21.052478-8.030907-29.083385 0s-8.030907 21.052478 0 29.083385l161.146167 161.146167L321.771471 593.222115c-8.030907 8.030907-8.030907 21.052478 0 29.083385s21.052478 8.030907 29.083385 0l161.146167-161.146167L673.145144 622.305501c8.030907 8.030907 21.052478 8.030907 29.083385 0s8.030907-21.052478 0-29.083385L541.082362 432.075949 702.228529 270.92978200000005z" horiz-adv-x="1024" /> + + + <glyph glyph-name="chart-screen" unicode="" d="M963.930903 179.21903299999997l0 34.824133-37.354769-2.675946L926.576133 694.8538169999999 691.413206 694.8538169999999l0 70.462818L330.260819 765.316635l0-70.462818L95.690386 694.8538169999999l0-480.809627-35.621289 0 0-34.824133 432.583253 0 0-141.228535-90.313935 0 0-35.307134 216.753649 0 0 35.307134-90.313935 0L528.778128 179.21903299999997 963.930903 179.21903299999997zM366.212636 730.008478L655.216819 730.008478l0-35.307134L366.212636 694.7013440000001 366.212636 730.008478zM364.817869 332.73133600000006L222.224244 406.252817l14.295588 27.736715 123.238812-63.523779 173.928285 159.755494 127.5807-92.634794 93.13826 122.414027 12.420891-9.449209 12.420891-9.449209L667.639756 394.365068l-131.636063 95.621824L364.817869 332.73133600000006z" horiz-adv-x="1024" /> + + + <glyph glyph-name="star" unicode="" d="M749.624889-84.152889c-15.672889 0-31.246222 3.882667-45.084444 11.306667l-192.526222 103.637333L319.544889-72.817778c-31.203556-16.64-70.314667-14.392889-99.043556 5.304889-29.511111 20.337778-44.743111 55.921778-38.840889 90.695111l37.703111 225.251556L56.661333 410.908444c-25.002667 24.888889-33.464889 60.984889-22.058667 94.193778 11.349333 32.910222 40.064 56.576 74.965333 61.752889l221.326222 32.896 96.128 199.580444c15.488 32.085333 48.853333 52.807111 84.992 52.807111 36.167111 0 69.518222-20.736 84.963556-52.807111l96.156444-199.580444 221.297778-32.910222c34.872889-5.162667 63.616-28.8 74.979556-61.696 11.392-33.28 2.944-69.361778-22.030222-94.250667L804.622222 248.433778l37.745778-225.28c5.845333-34.773333-9.386667-70.357333-38.812444-90.638222C787.569778-78.392889 768.938667-84.152889 749.624889-84.152889zM512.014222 91.548444c4.636444 0 9.272889-1.137778 13.482667-3.384889l205.937778-110.862222c12.373333-6.641778 28.316444-5.802667 39.936 2.133333 11.392 7.836444 17.123556 21.006222 14.890667 34.304L746.097778 253.496889c-1.507556 9.088 1.450667 18.332444 7.964444 24.832l173.141333 172.842667c9.457778 9.429333 12.686222 23.025778 8.405333 35.484444-4.380444 12.672-15.701333 21.873778-29.525333 23.921778L669.866667 545.706667c-9.315556 1.379556-17.365333 7.296-21.447111 15.786667L545.720889 774.641778c-6.030222 12.529778-19.256889 20.608-33.706667 20.608s-27.690667-8.092444-33.763556-20.622222L375.608889 561.493333c-4.081778-8.490667-12.131556-14.407111-21.447111-15.786667L117.930667 510.577778c-13.624889-2.033778-25.201778-11.434667-29.539556-23.992889-4.266667-12.416-1.024-25.984 8.433778-35.399111L269.937778 278.328889c6.513778-6.499556 9.472-15.744 7.964444-24.832l-40.135111-239.744c-2.247111-13.312 3.484444-26.439111 14.976-34.360889 11.434667-7.836444 27.349333-8.775111 39.950222-2.062222l205.852444 110.833778C502.741333 90.410667 507.377778 91.548444 512.014222 91.548444zM200.32 439.210667c-6.840889 0-12.885333 4.963556-14.023111 11.946667-1.251556 7.751111 4.010667 15.061333 11.761778 16.312889l9.443556 1.536c7.793778 1.336889 15.061333-4.010667 16.312889-11.761778 1.251556-7.751111-4.010667-15.061333-11.761778-16.312889l-9.443556-1.536C201.856 439.267556 201.073778 439.210667 200.32 439.210667zM252.544 447.687111c-6.684444 0-12.643556 4.721778-13.937778 11.534222-1.493333 7.708444 3.555556 15.175111 11.264 16.654222l153.927111 29.696 58.055111 133.148444c3.157333 7.182222 11.548444 10.496 18.716444 7.352889 7.210667-3.143111 10.510222-11.52 7.367111-18.716444l-61.056-140.017778c-1.877333-4.295111-5.745778-7.395556-10.353778-8.277333l-161.28-31.118222C254.336 447.758222 253.44 447.687111 252.544 447.687111z" horiz-adv-x="1024" /> + + + <glyph glyph-name="circle-dot" unicode="" d="M513.133312 830.6731560000001c-247.538793 0-448.208115-200.669322-448.208115-448.207092 0-247.538793 200.670346-448.208115 448.208115-448.208115 247.538793 0 448.208115 200.670346 448.208115 448.208115C961.341427 630.004857 760.673128 830.6731560000001 513.133312 830.6731560000001zM513.132288-6.649187999999981c-214.901465 0-389.113205 174.212764-389.113205 389.114229 0 214.902488 174.21174 389.115252 389.113205 389.115252 214.903511 0 389.115252-174.212764 389.115252-389.115252C902.24754 167.563576 728.0358-6.649187999999981 513.132288-6.649187999999981zM513.133312 382.46504100000004m-344.602456 0a336.754 336.754 0 1 1 689.204911 0 336.754 336.754 0 1 1-689.204911 0Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="chat" unicode="" d="M132.682393 414.567179c0 208.287837 166.471452 377.143593 379.317095 377.143593s385.380184-168.855756 385.380184-377.143593c0-177.196725-122.197086-325.812507-290.49821-366.259708l-116.291586-51.04763 0 41.126676C290.570353 52.175568999999996 132.682393 215.31206599999996 132.682393 414.567179zM83.799056 414.567179c0-211.946157 160.764474-387.135154 369.469819-415.152255-3.2623-20.458961-10.036587-65.024969-7.286963-65.024969 2.384303 0 114.89068 47.294143 189.700503 78.865185 176.193885 51.91437 304.518528 211.946157 304.518528 401.312038 0 231.432976-191.70823 419.042865-428.200432 419.042865S83.799056 646.0001560000001 83.799056 414.567179zM340.71952 276.63573699999995c22.935362-41.481763 89.831958-75.102489 170.391738-75.102489 79.650061 0 148.489916 32.909527 172.168198 73.681116-12.701277 5.979178-19.068288 8.02886-28.131711 12.21009-19.894096-31.257911-75.425853-59.661821-142.729725-59.661821-66.969251 0-122.836653 28.40391-143.598512 61.083194L340.71952 276.63573699999995z" horiz-adv-x="1024" /> + + + <glyph glyph-name="release" unicode="" d="M990.78144 828.5388800000001c-3.35872 1.59744-7.04512 2.37568-11.01824 2.37568-14.45888 0-27.60704-10.81344-27.40224-10.81344-8.8064-4.42368-880.59904-443.22816-911.44192-459.44832-17.408-9.13408-27.36128-24.73984-25.92768-40.71424 1.10592-13.14816 9.78944-23.51104 23.10144-27.77088 26.17344-8.27392 290.24256-91.58656 290.24256-91.58656l4.83328-1.47456 16.67072 50.05312-254.32064 79.54432 780.73856 406.28224c-82.82112-93.88032-420.53632-476.32384-436.10112-493.93664-20.11136-22.48704-29.4912-45.09696-29.40928-70.98368l0.28672-153.27232-0.08192 0c0 0 0.08192-53.49376 0.08192-53.6576l0-1.96608 0 0c1.18784-13.5168 12.73856-24.24832 26.54208-24.24832s25.51808 10.73152 26.74688 24.24832l0 0c0 0 0.53248 191.03744 0 205.08672-0.49152 12.4928 5.07904 26.54208 10.69056 33.05472 5.65248 6.38976 390.63552 442.61376 465.75616 527.81056-21.38112-106.41408-126.68928-629.76-128.24576-637.41952-0.8192-4.05504-2.58048-4.05504-3.35872-4.05504-0.6144 0-1.31072 0.12288-2.048 0.36864-7.45472 2.37568-268.82048 81.55136-279.92064 84.91008l-4.7104 1.4336-17.16224-50.50368 5.07904-1.59744c2.58048-0.77824 258.90816-79.09376 284.38528-86.46656 5.07904-1.47456 10.24-2.2528 15.44192-2.2528 26.99264 0 49.5616 19.37408 54.8864 46.98112 2.08896 10.93632 27.0336 134.67648 55.9104 277.99552 39.77216 197.14048 84.7872 420.61824 85.93408 427.6224l0.6144 3.31776C1009.70496 798.96576 1013.26848 817.9712 990.78144 828.5388800000001z" horiz-adv-x="1024" /> + + + <glyph glyph-name="list" unicode="" d="M618.04471 733.97072l-397.175835 0c-16.927531 0-30.699186-13.771655-30.699186-30.699186l0-638.543068c0-16.927531 13.771655-30.699186 30.699186-30.699186l582.261227 0c16.927531 0 30.699186 13.771655 30.699186 30.699186l-0.726547 476.760404L618.04471 733.97072zM803.771715 541.488871 619.537713 541.488871 619.537713 705.552483 803.771715 541.488871zM813.363164 64.728466c0-5.64251-4.590552-10.233062-10.233062-10.233062l-582.261227 0c-5.64251 0-10.233062 4.590552-10.233062 10.233062l0 638.543068c0 5.64251 4.590552 10.233062 10.233062 10.233062l378.202715 0 0-192.481849 214.291574 0L813.363164 64.728466zM298.129516 482.495268l55.258535 0 0-55.258535-55.258535 0 0 55.258535ZM399.777591 468.168981l323.364759 0 0-26.605961-323.364759 0 0 26.605961ZM298.129516 342.044446l55.258535 0 0-55.258535-55.258535 0 0 55.258535ZM399.777591 327.718159l323.364759 0 0-26.605961-323.364759 0 0 26.605961ZM298.129516 199.804884l55.258535 0 0-55.258535-55.258535 0 0 55.258535ZM399.777591 185.478598l323.364759 0 0-26.605961-323.364759 0 0 26.605961ZM881.315812 53.053566" horiz-adv-x="1024" /> + + + <glyph glyph-name="chart" unicode="" d="M953.440991 315.668729L784.061302 315.668729 681.06451 437.392024c-0.312108 0.373507-0.635473 0.737804-0.969071 1.094938-0.013303 0.014326-0.026606 0.027629-0.039909 0.041956-0.276293 0.293689-0.559748 0.582261-0.851391 0.86367-0.053212 0.051165-0.107447 0.099261-0.160659 0.150426-0.249687 0.237407-0.50142 0.470721-0.76134 0.697895-0.089028 0.078795-0.181125 0.153496-0.272199 0.230244-0.225127 0.191358-0.451278 0.381693-0.683569 0.565888-0.124843 0.099261-0.251733 0.192382-0.3776 0.288572-0.200568 0.153496-0.402159 0.306992-0.607844 0.454348-0.159636 0.11461-0.322341 0.224104-0.485047 0.334621-0.177032 0.12075-0.354064 0.242524-0.535189 0.35918-0.195451 0.12689-0.394996 0.246617-0.593518 0.367367-0.152473 0.092098-0.302899 0.186242-0.457418 0.275269-0.237407 0.137123-0.477884 0.268106-0.718361 0.397043-0.121773 0.065492-0.2415 0.132006-0.364297 0.195451-0.283456 0.146333-0.571005 0.285502-0.859577 0.420579-0.085958 0.040932-0.170892 0.082888-0.257873 0.122797-0.337691 0.154519-0.679475 0.298805-1.022283 0.437975-0.044002 0.017396-0.086981 0.036839-0.130983 0.055259-1.604544 0.638543-3.2623 1.113357-4.948709 1.416256-0.343831 0.062422-0.687662 0.112564-1.031493 0.160659-0.055259 0.008186-0.110517 0.01842-0.165776 0.025583-1.633197 0.216941-3.25923 0.26913-4.861728 0.173962-0.013303-0.001023-0.026606-0.001023-0.040932-0.002047-0.363274-0.022513-0.724501-0.054235-1.085728-0.091074-0.060375-0.00614-0.119727-0.011256-0.180102-0.017396-0.310062-0.034792-0.618077-0.077771-0.926092-0.122797-0.116657-0.017396-0.232291-0.032746-0.348947-0.051165-0.24764-0.040932-0.494257-0.086981-0.740874-0.135076-0.178055-0.033769-0.355087-0.067538-0.532119-0.105401-0.183172-0.039909-0.36532-0.083911-0.547469-0.127913-0.237407-0.056282-0.474814-0.113587-0.710175-0.176009-0.12075-0.032746-0.240477-0.068562-0.360204-0.102331-0.292666-0.082888-0.584308-0.168846-0.874927-0.26299-0.063445-0.020466-0.125867-0.042979-0.188288-0.063445-0.338714-0.112564-0.675382-0.230244-1.010003-0.357134-0.019443-0.007163-0.038886-0.01535-0.058328-0.022513-1.493004-0.571005-2.948145-1.284249-4.340865-2.149966-0.067538-0.041956-0.13303-0.088004-0.200568-0.12996-0.273223-0.172939-0.545422-0.346901-0.813528-0.531096-1.416256-0.971118-2.734274-2.089591-3.936659-3.333932-0.025583-0.026606-0.049119-0.053212-0.074701-0.079818-0.26299-0.275269-0.521886-0.555655-0.773619-0.843204-0.058328-0.066515-0.112564-0.134053-0.169869-0.200568-0.211824-0.246617-0.420579-0.496304-0.62217-0.751107-0.083911-0.106424-0.164752-0.214894-0.246617-0.322341-0.167822-0.218988-0.334621-0.437975-0.49528-0.663102-0.102331-0.14224-0.199545-0.287549-0.298805-0.431835-0.13303-0.194428-0.26606-0.387833-0.393973-0.586354-0.115634-0.179079-0.225127-0.360204-0.335644-0.541329-0.103354-0.168846-0.207731-0.336668-0.306992-0.508583-0.12689-0.220011-0.24764-0.443092-0.36839-0.666172-0.074701-0.138146-0.151449-0.275269-0.223081-0.416486-0.137123-0.265036-0.265036-0.533143-0.39295-0.802272-0.050142-0.105401-0.101307-0.209778-0.150426-0.316202-0.144286-0.317225-0.279363-0.63752-0.410346-0.958838-0.026606-0.064468-0.055259-0.127913-0.080841-0.193405-0.150426-0.378623-0.291642-0.760317-0.423649-1.14508-0.005117-0.016373-0.011256-0.031722-0.017396-0.048095-0.157589-0.463558-0.303922-0.930185-0.434905-1.400906l-97.897657-342.642824L435.093423 811.832042c-0.071631 0.569982-0.165776 1.13587-0.275269 1.696642-0.008186 0.040932-0.017396 0.081864-0.025583 0.12382-0.071631 0.356111-0.148379 0.709151-0.234337 1.061169-0.031722 0.128937-0.065492 0.255827-0.099261 0.38374-0.066515 0.254803-0.135076 0.508583-0.208754 0.760317-0.060375 0.206708-0.124843 0.411369-0.190335 0.615007-0.053212 0.166799-0.107447 0.332575-0.164752 0.49835-0.092098 0.26913-0.190335 0.535189-0.290619 0.800225-0.037862 0.098237-0.074701 0.196475-0.113587 0.293689-0.12382 0.313132-0.25378 0.623193-0.38988 0.930185-0.022513 0.050142-0.044002 0.100284-0.066515 0.150426-0.152473 0.338714-0.311085 0.672312-0.477884 1.00284-0.01228 0.024559-0.024559 0.049119-0.037862 0.074701-0.173962 0.343831-0.356111 0.682545-0.545422 1.017166-0.011256 0.019443-0.022513 0.039909-0.033769 0.059352-0.188288 0.330528-0.382717 0.654916-0.584308 0.975211-0.021489 0.034792-0.044002 0.068562-0.065492 0.103354-0.190335 0.298805-0.385786 0.592494-0.587378 0.88209-0.045025 0.065492-0.091074 0.12996-0.137123 0.194428-0.180102 0.252757-0.363274 0.502443-0.551562 0.74906-0.079818 0.105401-0.162706 0.208754-0.24457 0.312108-0.157589 0.199545-0.317225 0.396019-0.480954 0.590448-0.124843 0.149403-0.252757 0.295735-0.381693 0.442068-0.125867 0.14224-0.251733 0.284479-0.38067 0.424672-0.174985 0.191358-0.355087 0.378623-0.536212 0.563842-0.088004 0.090051-0.176009 0.180102-0.26606 0.26913-0.224104 0.222057-0.452301 0.440022-0.684592 0.653893-0.054235 0.050142-0.10847 0.100284-0.163729 0.150426-0.265036 0.240477-0.535189 0.474814-0.810459 0.704035-0.028653 0.023536-0.056282 0.047072-0.084934 0.070608-0.294712 0.243547-0.595564 0.479931-0.902556 0.711198-0.01535 0.011256-0.029676 0.022513-0.045025 0.033769-0.311085 0.232291-0.627287 0.458441-0.949628 0.677429-0.019443 0.013303-0.037862 0.025583-0.057305 0.038886-0.309038 0.208754-0.623193 0.411369-0.942465 0.606821-0.045025 0.027629-0.090051 0.054235-0.134053 0.081864-0.288572 0.174985-0.581238 0.343831-0.877997 0.50756-0.090051 0.050142-0.181125 0.098237-0.272199 0.147356-0.25071 0.134053-0.502443 0.265036-0.759293 0.391926-0.156566 0.077771-0.314155 0.151449-0.472767 0.226151-0.194428 0.091074-0.38988 0.182149-0.587378 0.268106-0.239454 0.105401-0.481977 0.204661-0.724501 0.302899-0.12382 0.049119-0.246617 0.100284-0.37146 0.148379-0.334621 0.128937-0.673335 0.249687-1.014096 0.36532-0.042979 0.014326-0.085958 0.029676-0.128937 0.044002-1.6158 0.536212-3.296069 0.915859-5.02034 1.119497-0.01535 0.002047-0.029676 0.004093-0.044002 0.00614-0.309038 0.035816-0.620124 0.062422-0.931209 0.086981-0.132006 0.010233-0.265036 0.025583-0.397043 0.033769-0.174985 0.011256-0.349971 0.01535-0.525979 0.022513-0.270153 0.01228-0.539282 0.024559-0.808412 0.027629-0.054235 0.001023-0.10847-0.001023-0.162706-0.001023-1.696642 0.010233-3.371794-0.149403-5.006014-0.466628-0.065492-0.01228-0.12996-0.027629-0.195451-0.039909-0.331551-0.067538-0.662079-0.13917-0.989537-0.218988-0.148379-0.035816-0.295735-0.075725-0.443092-0.11461-0.234337-0.061398-0.468674-0.124843-0.700965-0.192382-0.224104-0.065492-0.445138-0.135076-0.666172-0.206708-0.149403-0.048095-0.297782-0.096191-0.446162-0.147356-0.286526-0.098237-0.568958-0.201591-0.850367-0.309038-0.079818-0.030699-0.160659-0.061398-0.240477-0.093121-0.330528-0.12996-0.655939-0.267083-0.979304-0.410346-0.033769-0.01535-0.067538-0.029676-0.101307-0.045025-0.355087-0.159636-0.705058-0.325411-1.050935-0.500397-0.008186-0.004093-0.016373-0.008186-0.023536-0.01228-0.360204-0.182149-0.714268-0.372483-1.064238-0.569982-0.004093-0.002047-0.008186-0.005117-0.013303-0.007163-0.344854-0.196475-0.684592-0.399089-1.019213-0.610914-0.020466-0.013303-0.040932-0.025583-0.060375-0.038886-0.313132-0.199545-0.621147-0.404206-0.925069-0.61603-0.050142-0.034792-0.099261-0.070608-0.149403-0.105401-0.268106-0.190335-0.532119-0.38374-0.791016-0.583285-0.091074-0.069585-0.181125-0.141216-0.271176-0.212848-0.212848-0.167822-0.422625-0.337691-0.629333-0.512676-0.137123-0.11461-0.271176-0.232291-0.406253-0.349971-0.154519-0.1361-0.308015-0.272199-0.459464-0.412392-0.179079-0.164752-0.354064-0.332575-0.528026-0.502443-0.102331-0.100284-0.204661-0.199545-0.304945-0.301875-0.211824-0.212848-0.418532-0.430812-0.623193-0.651846-0.059352-0.064468-0.119727-0.128937-0.179079-0.194428-0.231267-0.254803-0.456395-0.515746-0.678452-0.780783-0.031722-0.037862-0.063445-0.075725-0.095167-0.11461-0.23536-0.285502-0.465604-0.577145-0.688685-0.874927-0.01842-0.024559-0.036839-0.048095-0.055259-0.072655-0.226151-0.301875-0.445138-0.60989-0.657986-0.923022-0.019443-0.028653-0.038886-0.057305-0.058328-0.084934-0.202615-0.300852-0.400113-0.606821-0.590448-0.916882-0.032746-0.053212-0.064468-0.105401-0.096191-0.158612-0.169869-0.282433-0.335644-0.567935-0.49528-0.857531-0.053212-0.097214-0.105401-0.194428-0.158612-0.292666-0.130983-0.24457-0.258896-0.490164-0.381693-0.73985-0.080841-0.162706-0.157589-0.326435-0.234337-0.491187-0.088004-0.189312-0.177032-0.378623-0.260943-0.571005-0.107447-0.245593-0.209778-0.493234-0.310062-0.741897-0.047072-0.11768-0.095167-0.234337-0.141216-0.354064-0.130983-0.340761-0.25378-0.684592-0.370437-1.030469-0.013303-0.037862-0.026606-0.075725-0.038886-0.113587-0.180102-0.543376-0.345877-1.092891-0.48914-1.650593L244.22942 305.59939599999996 67.355037 305.59939599999996c-14.128789 0-25.582655-11.453866-25.582655-25.582655s11.453866-25.582655 25.582655-25.582655l191.314257 0c0.867764 0 1.725294 0.044002 2.570545 0.128937 0.828878-0.080841 1.656733-0.1361 2.478448-0.1361 11.218506 0 21.512966 7.439436 24.644283 18.779715l113.358791 410.43686 103.412254-723.884758c0.00921-0.072655 0.021489-0.145309 0.030699-0.217964l0.046049-0.320295c0.002047-0.011256 0.005117-0.021489 0.00614-0.032746 0.109494-0.7552 0.25071-1.502213 0.425695-2.238994 0.01535-0.064468 0.031722-0.12689 0.047072-0.191358 0.166799-0.679475 0.358157-1.350764 0.579191-2.01182 0.041956-0.124843 0.088004-0.24764 0.130983-0.37146 0.210801-0.600681 0.437975-1.194198 0.692778-1.77646 0.068562-0.156566 0.144286-0.309038 0.215918-0.464581 0.223081-0.484024 0.460488-0.961908 0.713244-1.431605 0.106424-0.196475 0.213871-0.390903 0.325411-0.584308 0.265036-0.462534 0.545422-0.914836 0.838088-1.359974 0.088004-0.13303 0.170892-0.268106 0.260943-0.399089 0.354064-0.51677 0.732687-1.016143 1.12359-1.506307 0.078795-0.099261 0.156566-0.198521 0.237407-0.296759 0.420579-0.511653 0.864694-1.004887 1.325182-1.482771 0.051165-0.052189 0.101307-0.105401 0.152473-0.157589 0.494257-0.50449 1.010003-0.989537 1.548262-1.454118 0.00921-0.007163 0.017396-0.014326 0.026606-0.022513 1.636267-1.408069 3.466961-2.620687 5.466502-3.592828 0.075725-0.036839 0.151449-0.074701 0.228197-0.11154 0.576121-0.273223 1.165546-0.525979 1.768273-0.75827 0.158612-0.061398 0.319272-0.118704 0.478907-0.177032 0.558725-0.202615 1.124614-0.393973 1.704828-0.559748 0.005117-0.001023 0.010233-0.002047 0.01535-0.004093 0.278339-0.079818 0.562818-0.13917 0.844228-0.209778 0.394996-0.098237 0.789992-0.194428 1.184989-0.274246 0.283456-0.056282 0.568958-0.103354 0.854461-0.149403 0.445138-0.073678 0.889253-0.134053 1.333368-0.183172 0.229221-0.024559 0.456395-0.052189 0.686638-0.071631 0.710175-0.059352 1.418302-0.099261 2.122337-0.099261 0.337691 0 0.671289 0.027629 1.007957 0.040932 0.276293 0.011256 0.550539 0.013303 0.828878 0.033769 0.401136 0.029676 0.799202 0.079818 1.196245 0.127913 0.191358 0.022513 0.38067 0.033769 0.572028 0.061398 0.069585 0.010233 0.1361 0.024559 0.205685 0.034792 0.232291 0.034792 0.462534 0.075725 0.692778 0.116657 0.463558 0.082888 0.921999 0.176009 1.3743 0.283456 0.109494 0.025583 0.218988 0.047072 0.327458 0.074701 0.582261 0.145309 1.152243 0.316202 1.716084 0.499373 0.098237 0.031722 0.196475 0.063445 0.293689 0.097214 1.90335 0.644683 3.694135 1.50119 5.351891 2.540869 0.014326 0.00921 0.028653 0.01842 0.042979 0.027629 1.089821 0.686638 2.121314 1.452071 3.087315 2.287089 0.083911 0.071631 0.167822 0.143263 0.25071 0.215918 0.424672 0.3776 0.837064 0.76748 1.235131 1.170662 0.12382 0.124843 0.243547 0.254803 0.36532 0.382717 0.317225 0.334621 0.626263 0.677429 0.925069 1.028423 0.155543 0.183172 0.308015 0.36839 0.458441 0.556679 0.26606 0.331551 0.523933 0.670266 0.773619 1.01512 0.130983 0.180102 0.261966 0.35918 0.387833 0.543376 0.294712 0.429789 0.575098 0.86981 0.843204 1.316995 0.099261 0.165776 0.195451 0.334621 0.290619 0.503467 0.283456 0.499373 0.555655 1.004887 0.806365 1.52268 0.031722 0.065492 0.060375 0.13303 0.091074 0.199545 0.276293 0.584308 0.530073 1.178849 0.762363 1.784646 0.00614 0.017396 0.014326 0.034792 0.020466 0.051165 0.251733 0.661056 0.472767 1.336438 0.669242 2.020006 0.002047 0.008186 0.00614 0.016373 0.008186 0.024559l0.061398 0.215918c0.029676 0.106424 0.062422 0.210801 0.090051 0.317225l117.579929 411.527704 79.800487-94.308923c0.070608-0.083911 0.146333-0.161682 0.217964-0.243547 0.190335-0.220011 0.38374-0.436952 0.581238-0.649799 0.134053-0.144286 0.26913-0.285502 0.405229-0.425695 0.164752-0.168846 0.331551-0.335644 0.50142-0.500397 0.164752-0.159636 0.329505-0.319272 0.496304-0.473791 0.138146-0.12689 0.279363-0.25071 0.419556-0.37453 0.198521-0.174985 0.397043-0.350994 0.599657-0.518816 0.081864-0.067538 0.166799-0.132006 0.249687-0.198521 0.817622-0.661056 1.667989-1.264806 2.545986-1.811252 0.098237-0.061398 0.195451-0.125867 0.294712-0.185218 0.228197-0.138146 0.459464-0.267083 0.691755-0.398066 0.157589-0.089028 0.315178-0.178055 0.474814-0.264013 0.200568-0.107447 0.403183-0.208754 0.606821-0.311085 0.202615-0.101307 0.406253-0.201591 0.611937-0.297782 0.173962-0.080841 0.348947-0.159636 0.523933-0.237407 0.245593-0.10847 0.494257-0.212848 0.743944-0.313132 0.144286-0.058328 0.289596-0.115634 0.434905-0.171915 0.291642-0.11154 0.586354-0.216941 0.883113-0.317225 0.11154-0.037862 0.223081-0.076748 0.334621-0.113587 0.337691-0.109494 0.677429-0.210801 1.02126-0.305969 0.078795-0.021489 0.157589-0.046049 0.236384-0.066515 0.376577-0.101307 0.757247-0.193405 1.140986-0.277316 0.050142-0.011256 0.100284-0.023536 0.150426-0.034792 0.405229-0.085958 0.813528-0.162706 1.225921-0.229221 0.031722-0.005117 0.063445-0.01228 0.096191-0.017396 0.412392-0.065492 0.828878-0.12075 1.24741-0.165776 0.032746-0.004093 0.064468-0.00921 0.097214-0.01228 0.382717-0.039909 0.768503-0.068562 1.155313-0.092098 0.068562-0.004093 0.1361-0.01228 0.204661-0.01535 0.25992-0.013303 0.521886-0.01535 0.782829-0.020466 0.188288-0.004093 0.376577-0.01535 0.564865-0.01535 0.008186 0 0.01535 0.001023 0.023536 0.001023l181.208085 0c14.129812 0 25.582655 11.453866 25.582655 25.582655S967.56978 315.668729 953.440991 315.668729z" horiz-adv-x="1024" /> + + + <glyph glyph-name="ok-circle" unicode="စ" d="M516.152065-63.152063c-60.696384 0-119.594819 11.894911-175.056991 35.353183-53.55473 22.651906-101.646028 55.073316-142.936433 96.364745-41.291428 41.291428-73.712839 89.381703-96.363721 142.936433-23.458271 55.462173-35.353183 114.359584-35.353183 175.055968s11.894911 119.594819 35.353183 175.056991c22.651906 53.55473 55.073316 101.646028 96.363721 142.936433 41.290405 41.291428 89.381703 73.712839 142.936433 96.363721 55.462173 23.458271 114.359584 35.353183 175.056991 35.353183s119.594819-11.894911 175.056991-35.353183c53.55473-22.651906 101.645005-55.073316 142.936433-96.363721 41.291428-41.290405 73.711815-89.38068 96.363721-142.936433 23.459295-55.462173 35.353183-114.359584 35.353183-175.056991 0-60.696384-11.893888-119.593795-35.353183-175.055968-22.651906-53.55473-55.072293-101.645005-96.363721-142.936433s-89.381703-73.712839-142.936433-96.364745C635.747907-51.25715200000002 576.849472-63.152063 516.152065-63.152063zM516.152065 774.870222c-214.115566 0-388.311956-174.196391-388.311956-388.311956s174.196391-388.311956 388.311956-388.311956 388.311956 174.196391 388.311956 388.311956S730.268654 774.870222 516.152065 774.870222zM434.74908 132.830517L209.49278 358.08784 289.087583 437.68162 434.74908 292.020122 743.218594 600.488613 822.812373 520.89381Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="layim-theme" unicode="" d="M958.830745 538.643056L740.659817 692.753993l-100.539834 0-3.977591-9.332553c-0.37146-0.871857-38.021965-86.8613-124.772748-88.667435-35.691897 0.76441-67.206658 15.500019-93.680613 43.828204-20.658506 22.106484-30.374798 44.584428-30.456662 44.776809l-3.955078 9.393951-100.587929 0L64.518433 538.643056 169.320337 379.756349l89.956801 65.019853-19.016099-368.05254 268.86654 0 4.093225 0 269.866311 0-19.016099 368.051517 89.956801-65.018829L958.830745 538.643056zM730.105437 507.20402l20.655436-399.781172-237.540068 0-4.093225 0L272.587282 107.42284700000005l20.656459 399.781172-115.938546-83.797521-36.3243 55.070246 159.440315 111.641683-19.276019 30.638811L121.066333 508.667348l-14.548344 22.056342 185.921433 131.330094 71.077825 0c5.332449-10.04375 15.433504-26.779923 30.951943-43.580564 32.047904-34.69622 72.256674-53.486168 116.345822-54.411237l0-0.031722c0.203638 0.00307 0.406253 0.01228 0.60989 0.016373 0.203638-0.00307 0.406253-0.013303 0.60989-0.016373l0 0.031722c44.073798 0.925069 84.359316 19.703761 116.566856 54.379515 15.623839 16.821107 25.814945 33.579793 31.188326 43.612287l71.120804 0 185.921433-131.330094-14.548344-22.056342L742.203986 620.7551920000001l-19.276019-30.638811 159.440315-111.641683-36.3243-55.070246L730.105437 507.20402z" horiz-adv-x="1024" /> + + + <glyph glyph-name="table" unicode="" d="M304.738028 343.684806M729.544153 511.153982M595.52788 637.723655M143.806755 686.614156l0-601.704045L881.172549 84.91011100000003l0 601.704045L143.806755 686.614156zM420.318416 299.80441299999995l0 128.936581 184.341448 0 0-128.936581L420.318416 299.80441299999995zM604.659865 256.825552l0-128.936581L420.318416 127.88897099999997l0 128.936581L604.659865 256.825552zM604.659865 600.656435l0-128.936581L420.318416 471.719854l0 128.936581L604.659865 600.656435zM374.232798 600.656435l0-128.936581L189.89135 471.719854l0 128.936581L374.232798 600.656435zM189.89135 428.740994L374.232798 428.740994l0-128.936581L189.89135 299.80441299999995 189.89135 428.740994zM650.745483 428.740994l184.341448 0 0-128.936581L650.745483 299.80441299999995 650.745483 428.740994zM650.745483 471.719854l0 128.936581 184.341448 0 0-128.936581L650.745483 471.719854zM189.89135 256.825552L374.232798 256.825552l0-128.936581L189.89135 127.88897099999997 189.89135 256.825552zM650.745483 127.88897099999997l0 128.936581 184.341448 0 0-128.936581L650.745483 127.88897099999997z" horiz-adv-x="1024" /> + + + <glyph glyph-name="right" unicode="" d="M283.648 721.9189759999999L340.873216 780.926976 740.352 383.99795200000005 340.876288-12.925952000000052 283.648 46.07795199999998 619.52 383.99795200000005Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="left" unicode="" d="M740.352 721.9189759999999L683.126784 780.926976 283.648 383.99795200000005 683.123712-12.925952000000052 740.352 46.07795199999998 404.48 383.99795200000005Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="cart-simple" unicode="" d="M235.097303 196.866982C247.384597 160.417152 286.382106 132.37606800000003 324.772759 132.37606800000003L861.658537 132.37606800000003 880.429732 132.37606800000003 885.649214 150.54185399999994 1009.08775 580.154957C1021.388907 622.967661 993.187631 660.786325 949.051586 660.786325L424.585365 660.786325C410.791718 660.786325 399.609756 649.5207379999999 399.609756 635.623932 399.609756 621.727125 410.791718 610.461538 424.585365 610.461538L949.051586 610.461538C959.924 610.461538 964.161052 604.779539 961.106394 594.148171L837.667859 164.53506800000002 861.658537 182.70085500000005 324.772759 182.70085500000005C307.742153 182.70085500000005 287.789837 197.04752900000005 282.395194 213.05054900000005L73.600164 832.433664C69.16437 845.592294 54.980454 852.636656 41.919502 848.167687 28.858551 843.698719 21.86648 829.408727 26.302275 816.250097L235.097303 196.866982ZM399.609756-6.017094000000043C399.609756 49.57012899999995 354.881911 94.63247799999999 299.707317 94.63247799999999 244.532723 94.63247799999999 199.804878 49.57012899999995 199.804878-6.017094000000043 199.804878-61.604318000000035 244.532723-106.66666699999996 299.707317-106.66666699999996 354.881911-106.66666699999996 399.609756-61.604318000000035 399.609756-6.017094000000043ZM249.756098-6.017094000000043C249.756098 21.77651800000001 272.120021 44.30769299999997 299.707317 44.30769299999997 327.294613 44.30769299999997 349.658537 21.77651800000001 349.658537-6.017094000000043 349.658537-33.810704999999984 327.294613-56.34187899999995 299.707317-56.34187899999995 272.120021-56.34187899999995 249.756098-33.810704999999984 249.756098-6.017094000000043ZM924.097562-6.017094000000043C924.097562 49.57012899999995 879.369715 94.63247799999999 824.195121 94.63247799999999 769.020529 94.63247799999999 724.292683 49.57012899999995 724.292683-6.017094000000043 724.292683-61.604318000000035 769.020529-106.66666699999996 824.195121-106.66666699999996 879.369715-106.66666699999996 924.097562-61.604318000000035 924.097562-6.017094000000043ZM774.243902-6.017094000000043C774.243902 21.77651800000001 796.607825 44.30769299999997 824.195121 44.30769299999997 851.782419 44.30769299999997 874.146342 21.77651800000001 874.146342-6.017094000000043 874.146342-33.810704999999984 851.782419-56.34187899999995 824.195121-56.34187899999995 796.607825-56.34187899999995 774.243902-33.810704999999984 774.243902-6.017094000000043Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="face-cry" unicode="" d="M1024 384C1024 666.769792 794.769792 896 512 896 229.230208 896 0 666.769792 0 384 0 101.23020799999995 229.230208-128 512-128 629.410831-128 740.826187-88.33104600000001 830.768465-16.686661999999956 841.557579-8.092490999999995 843.33693 7.620766000000003 834.742758 18.409879000000046 826.148587 29.198990999999978 810.43533 30.978341999999998 799.646219 22.384173000000033 718.470035-42.277495000000044 618.001779-78.04878099999996 512-78.04878099999996 256.817504-78.04878099999996 49.951219 128.81750399999999 49.951219 384 49.951219 639.182496 256.817504 846.048781 512 846.048781 767.182496 846.048781 974.048781 639.182496 974.048781 384 974.048781 296.507166 949.714859 212.66323599999998 904.470807 140.039307 897.177109 128.33175700000004 900.755245 112.92820300000005 912.462793 105.63450699999999 924.170342 98.34080900000004 939.573897 101.91894200000002 946.867595 113.62649199999998 997.013826 194.11920399999997 1024 287.101621 1024 384ZM337.170731 396.487806C371.654852 396.487806 399.609756 424.442709 399.609756 458.926829 399.609756 493.41095 371.654852 521.365854 337.170731 521.365854 302.686611 521.365854 274.731708 493.41095 274.731708 458.926829 274.731708 424.442709 302.686611 396.487806 337.170731 396.487806ZM711.804879 396.487806C746.288998 396.487806 774.243902 424.442709 774.243902 458.926829 774.243902 493.41095 746.288998 521.365854 711.804879 521.365854 677.320757 521.365854 649.365854 493.41095 649.365854 458.926829 649.365854 424.442709 677.320757 396.487806 711.804879 396.487806ZM352.788105 191.21547499999997C396.165222 225.91716899999994 453.151987 246.639629 524.487806 246.639629 595.823622 246.639629 652.810387 225.91716899999994 696.187505 191.21547499999997 722.700531 170.00505399999997 738.882517 148.42907300000002 746.631548 132.931012 752.800254 120.59359800000004 747.799529 105.59142399999996 735.462114 99.42271600000004 723.124702 93.25401 708.122526 98.25473499999998 701.953818 110.59214899999995 701.03616 112.42746499999998 698.492224 116.61747600000001 694.165854 122.38597100000004 686.602473 132.47047699999996 676.927317 142.654852 664.983226 152.21012499999995 630.311565 179.947456 584.273939 196.68840999999998 524.487806 196.68840999999998 464.70167 196.68840999999998 418.664045 179.947456 383.992384 152.21012499999995 372.048292 142.654852 362.373137 132.47047699999996 354.809756 122.38597100000004 350.483386 116.61747600000001 347.93945 112.42746499999998 347.021792 110.59214899999995 340.853084 98.25473499999998 325.850908 93.25401 313.513495 99.42271600000004 301.176081 105.59142399999996 296.175356 120.59359800000004 302.344062 132.931012 310.093092 148.42907300000002 326.275078 170.00505399999997 352.788105 191.21547499999997Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="face-smile" unicode="" d="M1024 384C1024 666.769792 794.769792 896 512 896 229.230208 896 0 666.769792 0 384 0 101.23020799999995 229.230208-128 512-128 629.410831-128 740.826187-88.33104600000001 830.768465-16.686661999999956 841.557579-8.092490999999995 843.33693 7.620766000000003 834.742758 18.409879000000046 826.148587 29.198990999999978 810.43533 30.978341999999998 799.646219 22.384173000000033 718.470035-42.277495000000044 618.001779-78.04878099999996 512-78.04878099999996 256.817504-78.04878099999996 49.951219 128.81750399999999 49.951219 384 49.951219 639.182496 256.817504 846.048781 512 846.048781 767.182496 846.048781 974.048781 639.182496 974.048781 384 974.048781 296.507166 949.714859 212.66323599999998 904.470807 140.039307 897.177109 128.33175700000004 900.755245 112.92820300000005 912.462793 105.63450699999999 924.170342 98.34080900000004 939.573897 101.91894200000002 946.867595 113.62649199999998 997.013826 194.11920399999997 1024 287.101621 1024 384ZM337.170731 396.487806C371.654852 396.487806 399.609756 424.442709 399.609756 458.926829 399.609756 493.41095 371.654852 521.365854 337.170731 521.365854 302.686611 521.365854 274.731708 493.41095 274.731708 458.926829 274.731708 424.442709 302.686611 396.487806 337.170731 396.487806ZM711.804879 396.487806C746.288998 396.487806 774.243902 424.442709 774.243902 458.926829 774.243902 493.41095 746.288998 521.365854 711.804879 521.365854 677.320757 521.365854 649.365854 493.41095 649.365854 458.926829 649.365854 424.442709 677.320757 396.487806 711.804879 396.487806ZM352.788105 127.22903299999996C396.165222 92.52733899999998 453.151987 71.80487900000003 524.487806 71.80487900000003 595.823622 71.80487900000003 652.810387 92.52733899999998 696.187505 127.22903299999996 722.700531 148.43945399999996 738.882517 170.01543500000002 746.631548 185.51349500000003 752.800254 197.850908 747.799529 212.85308399999997 735.462114 219.021792 723.124702 225.19049800000005 708.122526 220.18977299999995 701.953818 207.85235799999998 701.03616 206.01704299999994 698.492224 201.82703100000003 694.165854 196.058537 686.602473 185.97402899999997 676.927317 175.78965500000004 664.983226 166.23438299999998 630.311565 138.49705200000005 584.273939 121.75609799999995 524.487806 121.75609799999995 464.70167 121.75609799999995 418.664045 138.49705200000005 383.992384 166.23438299999998 372.048292 175.78965500000004 362.373137 185.97402899999997 354.809756 196.058537 350.483386 201.82703100000003 347.93945 206.01704299999994 347.021792 207.85235799999998 340.853084 220.18977299999995 325.850908 225.19049800000005 313.513495 219.021792 301.176081 212.85308399999997 296.175356 197.850908 302.344062 185.51349500000003 310.093092 170.01543500000002 326.275078 148.43945399999996 352.788105 127.22903299999996Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="survey" unicode="" d="M722.355804 849.454545C761.006291 849.454545 792.380951 818.166023 792.380951 779.627344L792.380951 437.500928 799.081094 453.813218 401.874746 51.22138 418.539682 58.181818 138.070006 58.181818C99.387643 58.181818 68.063492 89.328555 68.063492 127.771428L68.063492 872.727273 44.698413 849.454545 722.355804 849.454545ZM21.333333 896 21.333333 872.727273 21.333333 127.771428C21.333333 63.604277 73.59726 11.636363 138.070006 11.636363L418.539682 11.636363 428.337293 11.636363 435.204619 18.596802 832.410967 421.18864 839.11111 427.979625 839.11111 437.500928 839.11111 779.627344C839.11111 843.859757 786.827324 896 722.355804 896L44.698413 896 21.333333 896ZM775.859347 307.365395 759.337741 290.90909 775.859347 274.452787 869.319663 181.361879 885.841269 164.905574 902.362876 181.361879 972.458114 251.18006 988.979721 267.636363 972.458114 284.092668 878.997796 377.183575 862.47619 393.639878 845.954583 377.183575 775.859347 307.365395ZM845.954583 344.27097 939.414901 251.18006 939.414901 284.092668 869.319663 214.274485 902.362876 214.274485 808.902558 307.365395 808.902558 274.452787 878.997796 344.27097 845.954583 344.27097ZM518.843473 51.365395 513.841133 46.382827 512.453734 39.473248 489.088655-76.890387 482.215251-111.121568 516.58227-104.275332 633.407665-81.002605 640.344663-79.620689 645.347004-74.638121 902.362876 181.361879 918.884482 197.818182 902.362876 214.274485 808.902558 307.365395 792.380951 323.821698 775.859347 307.365395 518.843473 51.365395ZM775.859347 274.452787 869.319663 181.361879 869.319663 214.274485 612.303791-41.725515 624.243127-35.361033 507.41773-58.633758 534.911345-86.018703 558.276425 30.344934 551.886686 18.452787 808.902558 274.452787 775.859347 274.452787ZM426.576706 298.269073C444.201086 298.269073 458.488469 284.053815 458.488469 266.500753L458.488469 258.086116C458.488469 240.540958 444.323959 226.317797 426.576706 226.317797L426.576706 226.317797C408.952326 226.317797 394.664943 240.533054 394.664943 258.086116L394.664943 266.500753C394.664943 284.045911 408.829453 298.269073 426.576706 298.269073L426.576706 298.269073ZM278.349205 552.435127C278.349205 552.435127 280.851125 530.485568 305.477133 530.485568 330.103138 530.485568 331.559155 552.435127 331.559155 552.435127 329.927383 623.508937 362.988497 657.25782 430.67155 653.905282 475.722639 648.839223 499.06407 623.508937 500.624896 577.839917 497.503245 557.501184 480.405116 531.202385 449.969026 499.092521 409.671358 458.489557 389.522524 422.133143 389.522524 390.023279L389.522524 357.093903C389.522524 357.093903 392.614705 337.454532 414.885933 337.454532 437.157161 337.454532 440.249342 357.093903 440.249342 357.093903L440.249342 379.965664C440.249342 406.785969 459.546816 439.044836 498.21271 476.369762 538.652271 513.471183 558.730159 547.369069 558.730159 577.839917 555.395669 662.323878 511.195938 706.353877 425.776235 709.780917 327.515198 711.419936 278.349205 658.971339 278.349205 552.435127Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="tree" unicode="" d="M962.691679 258.53447400000005c-8.721639 54.163597-34.298154 97.584526-73.089645 133.8638-44.721551 41.825594-99.282191 65.724911-156.512636 84.432994-26.935466 8.80555-54.079686 16.971533-81.129762 25.427112 41.188074 7.485485 81.495082 10.991332 121.872698 12.269441 39.906895 1.26276 79.885422 0.276293 120.633475 0.276293-30.644951 44.233434-74.588789 71.110571-127.260405 84.384899-53.004191 13.357216-103.742782 9.715269-152.261822-32.081673 18.715247 66.336848 12.464893 120.18936-38.810934 160.830989-32.450063 25.719778-77.127611 31.000038-111.319341 14.916734 58.583257-31.127951 82.051761-84.265172 94.304829-145.102772-44.638663 69.056795-110.067838 96.432283-187.710173 86.487793-56.123228-7.187703-110.723777-26.270317-166.003801-40.048111 15.677051-14.358009 31.136138-24.116257 47.932686-27.839045 51.427276-11.399631 103.405091-20.301372 155.098427-30.524201 37.036521-7.323802 75.163887-12.144598 104.448864-40.879036-78.096682 23.458271-155.928329 30.034037-235.541551 9.092076C186.718589 530.20385 104.838743 479.821369 81.996502 429.437865c46.955428 23.955598 95.807043 18.776645 144.606469 17.139356 37.737486-1.266853 76.089979-3.461845 113.238041 1.594311 52.683896 7.170307 104.513332 20.624736 159.209048 31.909757-91.88164-62.077847-186.516997-122.342396-159.194722-259.889075 58.852386 100.205213 163.392324 150.107763 229.951229 238.105956-16.239869-91.498924 6.980995-169.376619 66.432015-237.83785 41.815361-48.152696 89.979314-92.010577 110.706381-156.013263 12.758582 141.877311-25.823132 270.789333-97.911984 396.334677C755.996107 391.809873 858.199837 325.909977 962.691679 258.53447400000005zM513.476631 320.10169099999996c-27.767414-14.065344-39.008432-35.954887-42.252313-64.998363-6.078439-54.437843-15.162328-108.532879-21.799492-162.916487-3.90903-32.026414-5.519714-64.333214-8.16496-96.53052 30.078039 0 55.507198 0 79.961146 0 9.912767 78.200036 19.732413 154.247037 28.913517 230.369761 0.883113 7.322779-0.756223 15.746636-3.705392 22.591531C536.246217 272.25086999999996 524.967336 295.41135899999995 513.476631 320.10169099999996z" horiz-adv-x="1024" /> + + + <glyph glyph-name="ie" unicode="" d="M734.208 267.1616l236.05248 0c1.82272 16.36352 2.53952 33.09568 2.53952 50.19648 0 80.22016-21.52448 155.46368-59.12576 220.2624 38.87104 103.30112 37.49888 190.99648-14.56128 243.38432-49.50016 49.27488-182.29248 41.28768-332.41088-25.1904-11.10016 0.83968-22.3232 1.26976-33.62816 1.26976-206.04928 0-378.92096-141.80352-426.7008-332.84096 64.63488 82.75968 132.62848 142.7456 223.47776 186.44992-8.25344-7.74144-56.46336-55.64416-64.55296-63.75424-239.55456-239.47264-315.0848-552.30464-233.79968-633.61024 61.78816-61.76768 173.75232-51.34336 302.36672 11.65312 59.8016-30.45376 127.50848-47.63648 199.20896-47.63648 193.1264 0 356.80256 124.3136 416.09216 297.45152l-237.8752 0c-32.72704-60.37504-96.74752-101.4784-170.20928-101.4784s-137.48224 41.10336-170.20928 101.4784c-14.5408 27.27936-22.91712 58.55232-22.91712 91.648l0 0.7168 386.2528 0zM348.30336 383.20128c5.44768 97.11616 86.20032 174.592 184.77056 174.592s179.3024-77.47584 184.77056-174.592l-369.54112 0zM896.96256 732.20096c33.52576-33.87392 32.68608-96.21504 4.01408-174.01856-49.13152 74.91584-120.5248 133.9392-204.8 167.64928 90.112 38.64576 163.40992 43.76576 200.78592 6.38976zM93.4912-71.24992c-42.78272 42.8032-29.88032 132.608 25.23136 240.82432 34.304-96.27648 101.15072-177.09056 187.33056-229.15072-95.4368-43.3152-173.52704-50.66752-212.56192-11.6736z" horiz-adv-x="1024" /> + + + <glyph glyph-name="upload-circle" unicode="" d="M512-128c282.768 0 512 229.216 512 512C1024 666.768 794.768 896 512 896 229.216 896 0 666.768 0 384 0 101.21600000000001 229.216-128 512-128zM512 848c256.272 0 464-207.744 464-464 0-256.272-207.728-464-464-464S48 127.72799999999995 48 384C48 640.256 255.728 848 512 848zM377.728 534.544L480 534.544l0-478c0-17.664 14.336-32 32-32s32 14.336 32 32L544 534.544l102.272 0c17.616 0 23.424 11.568 12.944 25.68l-128.128 172.624c-10.496 14.128-27.664 14.128-38.16 0L364.8 560.24C354.32 546.1120000000001 360.128 534.544 377.728 534.544z" horiz-adv-x="1024" /> + + + <glyph glyph-name="add-circle" unicode="" d="M675.04 412.736l-127.04 0 0 127.264c0 20.064-16.288 36.32-36.32 36.32-20.064 0-36.32-16.192-36.32-36.32l0-127.232-127.072 0c-20.064 0-36.352-16.32-36.352-36.352 0-20.064 16.224-36.352 36.352-36.352l127.072 0 0-127.232c0-20 16.256-36.384 36.32-36.384 20.032 0 36.32 16.256 36.32 36.384l0 127.136 127.04 0c19.968 0 36.352 16.256 36.352 36.384C711.36 396.448 695.136 412.736 675.04 412.736L675.04 412.736zM511.328 830.56c-250.24 0-453.952-203.616-453.952-453.952 0-250.336 203.712-453.952 453.952-453.952 250.336 0 453.984 203.584 453.984 453.952C965.312 626.944 761.696 830.56 511.328 830.56L511.328 830.56zM511.328-20.576000000000022c-219.04 0-397.184 178.176-397.184 397.152 0 219.104 178.144 397.216 397.184 397.216s397.216-178.112 397.216-397.216C908.576 157.63199999999995 730.368-20.576000000000022 511.328-20.576000000000022L511.328-20.576000000000022zM511.328-20.576000000000022" horiz-adv-x="1024" /> + + + <glyph glyph-name="download-circle" unicode="" d="M510.771521 828.211081c-244.998947 0-443.597097-198.60429-443.597097-443.590957s198.59815-443.591981 443.597097-443.591981c244.986667 0 443.583794 198.60429 443.583794 443.591981S755.758188 828.211081 510.771521 828.211081zM510.771521-30.044013999999947c-229.010811 0-414.664138 185.65435-414.664138 414.664138 0 229.010811 185.653327 414.657998 414.664138 414.657998 228.996484 0 414.652881-185.647187 414.652881-414.657998C925.424402 155.60931300000004 739.768005-30.044013999999947 510.771521-30.044013999999947zM662.749888 352.39518799999996L537.719266 245.82501100000002l0 324.388065c0 14.887059-12.06478 26.953885-26.947745 26.953885-14.894222 0-26.961048-12.066827-26.961048-26.953885l0-325.410348L357.936647 352.39518799999996c-10.56359 10.599406-27.693736 10.599406-38.267559 0-10.56359-10.596336-10.56359-27.777647 0-38.375006l170.181961-161.220868c5.629207-5.652743 13.111622-8.060583 20.49887-7.680936 7.373944-0.379647 14.859429 2.02717 20.488637 7.680936l170.181961 161.220868c10.562567 10.597359 10.562567 27.77867 0 38.375006C690.443623 362.99561700000004 673.313477 362.99561700000004 662.749888 352.39518799999996z" horiz-adv-x="1024" /> + + + <glyph glyph-name="templeate-1" unicode="" d="M320 384L106.666667 384c-35.349333 0-64-28.650667-64-64l0-213.333333c0-35.349333 28.650667-64 64-64l213.333333 0c35.349333 0 64 28.650667 64 64L384 320C384 355.349333 355.349333 384 320 384zM256 341.33333300000004l0-256L170.666667 85.33333300000004 170.666667 341.33333300000004 256 341.33333300000004zM85.333333 106.66666699999996L85.333333 320c0 11.754667 9.578667 21.333333 21.333333 21.333333l42.666667 0 0-256L106.666667 85.33333300000004C94.912 85.33333300000004 85.333333 94.91200000000003 85.333333 106.66666699999996zM341.333333 106.66666699999996c0-11.754667-9.578667-21.333333-21.333333-21.333333l-42.666667 0L277.333333 341.33333300000004l42.666667 0c11.754667 0 21.333333-9.578667 21.333333-21.333333L341.333333 106.66666699999996zM576 554.666667L234.666667 554.666667c-47.061333 0-85.333333-38.272-85.333333-85.333333l0-42.666667 42.666667 0 0 42.666667c0 23.530667 19.136 42.666667 42.666667 42.666667l42.666667 0 0-96 21.333333 0L298.666667 512l213.333333 0 0-426.666667-85.333333 0-21.333333-42.666667 170.666667 0c47.061333 0 85.333333 38.272 85.333333 85.333333L661.333333 469.333333C661.333333 516.394667 623.061333 554.666667 576 554.666667zM618.666667 128c0-23.530667-19.136-42.666667-42.666667-42.666667l-42.666667 0L533.333333 512l42.666667 0c23.530667 0 42.666667-19.136 42.666667-42.666667L618.666667 128zM853.333333 42.66666699999996c47.061333 0 85.333333 38.272 85.333333 85.333333L938.666667 640c0 47.061333-38.272 85.333333-85.333333 85.333333L341.333333 725.333333c-47.061333 0-85.333333-38.272-85.333333-85.333333l0-42.666667 42.666667 0 0 42.666667c0 23.530667 19.136 42.666667 42.666667 42.666667l85.333333 0 0-85.333333 21.333333 0 0 85.333333 298.666667 0 0-597.333333-42.666667 0-21.333333-42.666667L853.333333 42.66666699999996zM896 128c0-23.530667-19.136-42.666667-42.666667-42.666667l-85.333333 0L768 682.666667l85.333333 0c23.530667 0 42.666667-19.136 42.666667-42.666667L896 128z" horiz-adv-x="1024" /> + + + <glyph glyph-name="util" unicode="" d="M282.127566 639.0826059999999c-13.120832-13.221116-30.625508-20.50808-49.278333-20.50808-18.618033 0-36.157501 7.286963-49.311079 20.50808l-32.885991 33.019021 98.623181 99.027387 32.885991-33.019021c13.186324-13.221116 20.473287-30.829146 20.473287-49.548486C302.599829 669.8769589999999 295.347658 652.26893 282.127566 639.0826059999999L282.127566 639.0826059999999zM249.308089 705.0899489999999l-0.032746 0-32.884968-32.987299c4.418636-4.417613 10.252505-6.845918 16.458857-6.845918 6.206352 0 12.041244 2.428306 16.426111 6.813173 4.418636 4.452405 6.845918 10.288321 6.845918 16.493649C256.121262 694.802652 253.693979 700.671313 249.308089 705.0899489999999L249.308089 705.0899489999999zM396.703067 496.343671L249.578242 638.778684l32.278147 33.626865 147.157571-142.468782L396.703067 496.343671 396.703067 496.343671zM751.45979 133.92852400000004L618.131179 274.071332l32.884968 32.985252 133.330658-140.141784L751.45979 133.92852400000004 751.45979 133.92852400000004zM850.184279 67.95597399999997c-22.700001-22.766516-52.481282-34.168194-82.264609-34.168194-29.714765 0-59.395762 11.333116-81.994456 34.033118L538.194592 222.398462l32.884968 33.021068L718.811206 100.806149c27.117614-27.183106 71.269183-27.116591 98.488105 0.169869 27.186176 27.287483 27.117614 71.773673-0.135076 99.196233l-147.426701 154.273642 32.851199 33.021068 147.461493-154.308435C895.447159 187.557956 895.514697 113.421468 850.184279 67.95597399999997L850.184279 67.95597399999997zM801.716404 468.380806c-30.726815-30.860868-71.605851-47.861054-115.082038-47.861054-43.442418 0-84.321454 16.999163-115.082038 47.861054-30.760584 30.861892-47.692209 71.877027-47.692209 115.521037s16.931624 84.691891 47.692209 115.554806l42.497906 42.666752 32.885991-32.986275-42.497906-42.667775c-21.99085-22.090111-34.099632-51.367925-34.065863-82.566484 0-31.163767 12.108782-60.441581 34.065863-82.499969 21.956058-22.058388 51.16531-34.20094 82.196047-34.20094 31.064506 0 60.239989 12.142551 82.196047 34.20094l42.49893 42.665729 32.884968-33.019021L801.716404 468.380806 801.716404 468.380806zM844.214311 511.049604l-49.311079 49.51267-16.45988-16.493649c-17.538445-17.638729-40.879036-27.352975-65.73719-27.352975l-0.032746 0c-24.824385 0-48.198745 9.713222-65.73719 27.352975-17.539468 17.607006-27.252691 41.082674-27.252691 66.007343 0 24.925692 9.679453 48.400337 27.252691 66.040089l16.458857 16.495696-49.344848 49.51267 32.885991 33.021068 82.196047-82.533738-49.311079-49.482995c-8.769734-8.835226-13.626345-20.571525-13.626345-33.051767 0-12.446473 4.856611-24.183795 13.626345-32.987299 8.768711-8.835226 20.439518-13.69286 32.884968-13.69286 12.411681 0 24.082488 4.857635 32.852222 13.69286l49.344848 49.514717 82.196047-82.534761L844.214311 511.049604 844.214311 511.049604zM233.591129 129.139451l0 46.681182 46.512337 0 0-46.681182L233.591129 129.139451 233.591129 129.139451zM538.160823 356.538555l-92.247984 91.572602 32.717146 33.18889 92.214215-91.539856L538.160823 356.538555 538.160823 356.538555zM304.2187 101.04355599999997l173.634596 239.842507 37.641295-27.454282L338.318332 69.23715300000003c-21.923312-22.057365-51.132564-34.20094-82.19707-34.20094-31.028691 0-60.237943 12.143575-82.196047 34.168194-21.958104 22.057365-34.065863 51.335179-34.065863 82.533738 0 31.198559 12.107759 60.476373 34.065863 82.533738l2.765997 2.360767L417.243893 412.054963l27.353998-37.742603L205.596542 200.00340600000004c-12.411681-13.053294-19.224854-30.119995-19.224854-48.26526 0-18.71934 7.252171-36.291554 20.438495-49.513694C232.747925 76.15265599999998 277.775444 75.71263499999998 304.2187 101.04355599999997L304.2187 101.04355599999997z" horiz-adv-x="1024" /> + + + <glyph glyph-name="face-surprised" unicode="" d="M485.656116-128C221.592397-128 6.762016 86.81718000000001 6.762016 350.87649799999997s214.830381 478.867697 478.8941 478.867697c264.041716 0 478.854495-214.812779 478.854495-478.867697S749.697832-128 485.656116-128zM485.656116 798.834741c-247.024795 0-447.975846-200.959852-447.975846-447.962644 0-247.002792 200.951051-447.962644 447.975846-447.962644 247.002792 0 447.953843 200.959852 447.953843 447.962644C933.609959 597.8748889999999 732.658908 798.834741 485.656116 798.834741zM352.033458 447.380528c0-30.469398-24.682677-55.147675-55.143274-55.147675-30.451796 0-55.143274 24.678276-55.143274 55.147675 0 30.460597 24.691478 55.138874 55.143274 55.138874C327.350781 502.519402 352.033458 477.845526 352.033458 447.380528zM674.417647 502.519402c-30.460597 0-55.156476-24.678276-55.156476-55.138874 0-30.469398 24.695879-55.147675 55.156476-55.147675 30.451796 0 55.143274 24.678276 55.143274 55.147675C729.560922 477.845526 704.869444 502.519402 674.417647 502.519402zM562.005634 165.30976499999997c0-59.733046-34.192262-108.165484-76.349518-108.165484-42.166057 0-76.36272 48.432438-76.36272 108.165484 0 59.724245 34.196663 108.152282 76.36272 108.152282C527.813371 273.45764699999995 562.005634 225.03400999999997 562.005634 165.30976499999997zM835.631745 793.712503c0 0 12.871605 56.819883 41.959231 85.925112 29.083226 29.096427 69.915916 15.124685 78.492585-8.801097 9.461179-26.385689-2.033053-50.069442-29.092027-56.164202C899.404495 808.463141 874.880237 826.192952 835.631745 793.712503zM916.698651 757.570797c0 0 35.767659 20.576965 64.877288 19.393218 29.136032-1.174946 41.431165-29.144833 33.109728-45.110024-9.192746-17.588993-27.054573-22.966463-43.217788-11.797871C954.979023 731.44034 952.453108 752.721393 916.698651 757.570797z" horiz-adv-x="1024" /> + + + <glyph glyph-name="edit" unicode="" d="M769.089 516.251l-125.896 125.89 62.974 62.947c20.866 20.838 54.652 20.838 75.517 0l50.353-50.351c20.865-20.865 20.865-54.703 0-75.567L769.089 516.251zM403.349 150.52700000000004L277.453 276.418 619.706 615.982 745.601 490.09ZM176.314 47.283000000000015L252.912 251.87699999999995 377.753 127.01199999999994Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="speaker" unicode="" d="M587.182306 754.7203c-6.003737 2.705622-13.043061 1.642406-17.984606-2.721994l-259.223926-229.293243-148.246369 0c-9.253758 0-16.752546-7.498788-16.752546-16.756639l0-267.886213c0-9.249665 7.498788-16.756639 16.752546-16.756639l144.050814 0c9.253758 0 16.752546 7.506974 16.752546 16.756639L322.530764 490.391099c1.774413 0.704035 3.433192 1.719154 4.892427 3.010567l236.127905 208.861912 0-653.332912-160.751171 137.64287c-2.12643 1.824555-90.300632 78.69941-93.927229 76.162634-4.427846-3.097548-15.768125-17.59882-18.419512-22.512736-0.953721-1.768273-2.196015-1.334391 15.413038-16.379039 25.674753-21.936615 73.780377-61.548798 75.144444-62.717414l10.007935-8.570189 178.388876-152.761196c3.093455-2.653433 6.978948-4.028757 10.900258-4.028757 2.369977 0 4.756327 0.503467 7.003508 1.534959 5.939269 2.738367 9.749038 8.677637 9.749038 15.217586L597.060281 739.446431C597.060281 746.034477 593.190137 752.013655 587.182306 754.7203L587.182306 754.7203zM290.453185 254.814756l-115.040083 0L175.413102 489.195877l115.03906 0 0-234.381122L290.453185 254.814756zM747.742119 375.98444300000006c0-51.55212-34.83232-96.658434-84.702124-109.693308-1.415232-0.375553-2.846838-0.551562-4.245697-0.551562-7.438413 0-14.234189 4.992711-16.200984 12.523221-2.338255 8.949836 3.021823 18.104333 11.967566 20.442588 35.136242 9.18929 59.672054 40.96397 59.672054 77.279061 0 36.307927-24.535813 68.090794-59.672054 77.271898-8.945743 2.346441-14.305821 11.492752-11.967566 20.450774 2.342348 8.953929 11.499915 14.305821 20.446681 11.967566C712.909799 472.643899 747.742119 427.530422 747.742119 375.98444300000006L747.742119 375.98444300000006zM864.950588 375.793084c0-88.87619-48.554856-170.44495-126.718053-212.883505-2.537799-1.375324-5.276167-2.02717-7.982812-2.02717-5.939269 0-11.69946 3.166109-14.733563 8.762571-4.417613 8.134261-1.39886 18.303878 6.727215 22.720468 67.350944 36.566824 109.198028 106.851587 109.198028 183.427636 0 76.844156-42.055838 147.272181-109.741403 183.78784-8.154727 4.396123-11.192923 14.557554-6.795776 22.700001 4.38896 8.142447 14.558577 11.184737 22.701025 6.795776C816.151162 546.697499 864.950588 464.976266 864.950588 375.793084L864.950588 375.793084z" horiz-adv-x="1024" /> + + + <glyph glyph-name="down" unicode="" d="M888.306 619.94c15.615 15.617 40.93 15.617 56.545 0v0c15.617-15.615 15.617-40.93 0-56.545l-405.733-405.734c-15.615-15.617-40.928-15.617-56.545 0v0c-15.615 15.615-15.615 40.93 0 56.545l405.733 405.734zM538.619 214.20600000000002c15.617-15.615 15.617-40.93 0-56.545v0c-15.615-15.617-40.928-15.617-56.545 0l-405.734 405.734c-15.615 15.615-15.615 40.93 0 56.545v0c15.617 15.617 40.93 15.617 56.547 0l405.732-405.734zM538.619 214.20600000000002z" horiz-adv-x="1024" /> + + + <glyph glyph-name="file" unicode="" d="M887.443911 598.6304l0-44.578133 0-45.511111 0-477.866667c0-37.705956-30.560711-68.266667-68.266667-68.266667l-614.4 0c-37.705956 0-68.266667 30.560711-68.266667 68.266667l0 705.422222c0 37.6832 30.560711 68.266667 68.266667 68.266667l386.844444 0 45.511111 0 38.024533 0c7.805156 2.594133 16.566044 1.2288 22.778311-5.006222l183.136711-183.159467C885.919289 611.373511 887.876267 604.9564439999999 887.443911 598.6304zM659.888356 531.296711c-12.583822 0-22.755556 10.171733-22.755556 22.755556l0 204.8-45.511111 0-364.088889 0c-25.122133 0-45.511111-20.388978-45.511111-45.511111l0-659.911111c0-25.122133 20.388978-45.511111 45.511111-45.511111l568.888889 0c25.122133 0 45.511111 20.388978 45.511111 45.511111l0 455.111111 0 22.755556L659.888356 531.296711zM682.643911 750.273422l0-173.4656 159.288889 0 0 14.176711L682.643911 750.273422z" horiz-adv-x="1024" /> + + + <glyph glyph-name="layouts" unicode="" d="M917.213-103.239h-810.426c-23.151 0-41.918 18.766-41.918 41.917l0 698.644c0 23.148 18.767 41.917 41.918 41.917h810.426c23.149 0 41.918-18.769 41.918-41.917v-698.643c0-23.151-18.769-41.918-41.918-41.918zM316.38-61.321h600.833v363.294h-600.833v-363.294zM106.787-61.321h167.674v363.294h-167.674v-363.294zM148.705 637.322c-23.151 0-41.918-18.769-41.918-41.92s18.767-41.92 41.918-41.92 41.92 18.768 41.92 41.92-18.769 41.92-41.92 41.92zM274.461 637.322c-23.151 0-41.918-18.769-41.918-41.92s18.767-41.92 41.918-41.92c23.151 0 41.92 18.768 41.92 41.92s-18.77 41.92-41.92 41.92zM400.216 637.322c-23.15 0-41.918-18.769-41.918-41.92s18.769-41.92 41.918-41.92c23.152 0 41.92 18.768 41.92 41.92s-18.768 41.92-41.92 41.92zM875.293 511.566h-768.506v-167.675h810.426l0 167.675h-41.921z" horiz-adv-x="1024" /> + + + <glyph glyph-name="rate-half" unicode="" d="M1012.064 504l-359.552 31.008-140.512 331.04-140.512-331.552-359.552-30.496 273.024-236.544-82.016-351.552 309.056 186.528 309.056-186.528-81.504 351.552 272.544 236.544zM512 195.96799999999996l0 465.056 85.504-202.016 219.04-19.008-166.016-144.032 50.016-214.016-188.512 114.016z" horiz-adv-x="1024" /> + + + <glyph glyph-name="add-circle-fine" unicode="" d="M509.989715-60.972421000000054c-246.734474 0-446.75195 200.023616-446.75195 446.75809 0 246.732427 200.017476 446.75195 446.75195 446.75195 246.733451 0 446.757067-200.019523 446.757067-446.75195C956.746782 139.051195 756.723166-60.972421000000054 509.989715-60.972421000000054L509.989715-60.972421000000054zM509.989715 812.433746c-235.633648 0-426.650123-191.014428-426.650123-426.648077 0-235.639788 191.016475-426.654216 426.650123-426.654216 235.638765 0 426.654216 191.014428 426.654216 426.654216C936.643931 621.419318 745.62848 812.433746 509.989715 812.433746L509.989715 812.433746zM527.863804 153.46957999999995l-35.741016 0L492.122789 367.909533 277.678742 367.909533 277.678742 403.653619l214.443024 0L492.121765 618.0956189999999l35.741016 0L527.862781 403.653619l214.442 0 0-35.744086L527.863804 367.909533 527.863804 153.46957999999995 527.863804 153.46957999999995zM527.863804 153.46957999999995" horiz-adv-x="1024" /> + + + <glyph glyph-name="prev-circle" unicode="" d="M508.638018 827.97307c-246.403458 0-446.845649-200.463469-446.845649-446.845649 0-246.382179 200.442191-446.845649 446.845649-446.845649 246.382179 0 446.845649 200.463469 446.845649 446.845649C955.483667 627.5096 755.041476 827.97307 508.638018 827.97307zM508.638018-23.16149900000005c-222.933422 0-404.28892 181.355498-404.28892 404.28892 0 222.933422 181.355498 404.28892 404.28892 404.28892 222.912144 0 404.28892-181.355498 404.28892-404.28892C912.926939 158.19399899999996 731.57144-23.16149900000005 508.638018-23.16149900000005zM252.87208 485.1999c8.639016 26.129831-32.470784 37.215859-41.067243 11.32009-27.810822-83.730363-22.321004-168.545923 14.086277-248.573851 11.362646-24.938243 48.025268-3.298146 36.747735 21.491148C230.976644 339.081373 228.806251 412.853462 252.87208 485.1999zM599.262572 247.73335499999996l-127.627629 133.394065 127.47868 133.223838c9.043305 9.064583 9.022026 23.789211-0.021278 32.832516-8.809243 8.830521-24.087108 8.766686-32.832516 0l-148.310199-148.310199c-4.617405-4.638683-6.979303-11.064749-6.553736-17.746156-0.404289-6.702685 1.936331-13.107472 6.575015-17.788712l148.310199-148.28892c4.383343-4.383343 10.213615-6.787798 16.405619-6.787798 6.170726 0 12.000997 2.404455 16.405619 6.787798C608.156928 224.114371 608.156928 238.83899899999994 599.262572 247.73335499999996z" horiz-adv-x="1024" /> + + + <glyph glyph-name="read" unicode="" d="M335.282306 712.495464C399.587328 713.451107 442.778899 696.882717 470.183494 669.3706540000001 479.127332 660.39174 485.691302 650.857363 490.241971 641.442689 492.795622 636.159553 494.049041 632.438701 494.358795 631.0740940000001L493.723712 636.7409230000001 493.723706 196.90019600000005C493.723706 199.018106 495.816045 203.920655 503.591595 207.36436700000002 511.039185 210.66283299999998 515.68422 209.16527399999995 517.176538 207.906613L500.671543 188.33763 521.297207 203.50146800000005C514.140179 213.23636899999997 499.631258 225.71450900000002 476.134074 237.35914000000002 439.577969 255.475456 390.86048 266.10507900000005 328.491925 266.10508200000004 265.860796 266.10508200000004 219.424582 255.71817999999996 186.827162 237.741581 164.977332 225.69198700000004 152.538132 212.28117299999997 147.220271 201.30886999999996L170.257196 190.14374199999997 151.035786 207.05224299999998C152.884078 209.15336100000002 158.307299 211.80336599999998 167.849005 208.050434 177.092077 204.41496099999995 179.2 199.20011699999998 179.2 196.66445199999998L179.2 497.049743 179.2 636.7409230000001 175.817447 624.023021C177.078908 626.226721 180.088681 630.807811 184.828724 636.965629 192.95423 647.521524 202.792594 658.127492 214.297641 668.007961 247.526453 696.544681 287.381649 713.209056 334.514421 712.495571L335.282306 712.495464ZM335.289387 763.689705C274.661039 764.607483 223.081402 743.04085 180.940156 706.850184 156.32698 685.712527 139.975514 664.470237 131.382553 649.4588249999999L128 643.549699 128 636.7409230000001 128 497.049743 128 196.66445199999998C128 159.26104999999995 164.542545 144.88818300000003 189.478606 173.23524099999997L191.776657 175.84764199999995 193.294121 178.978613C194.07832 180.59664399999997 199.156367 186.07133399999998 211.552092 192.907243 236.030601 206.40648099999999 274.024879 214.905082 328.491925 214.905082 383.221547 214.905079 424.163878 205.97190999999998 453.399258 191.483569 469.376966 183.56540600000005 477.614626 176.48075300000005 480.045882 173.17379000000005L481.844905 170.72677999999996 484.166551 168.768644C511.279708 145.90070000000003 544.923706 160.801293 544.923706 196.90019600000005L544.923712 636.740922 544.288627 642.407751C540.427211 659.419023 529.175531 682.697124 506.45814 705.503602 468.987716 743.1209699999999 412.352271 764.846461 334.521502 763.689812L335.289387 763.689705ZM0 506.026694L0 27.856867999999963C0-8.875636999999983 34.793167-23.40043300000002 61.4635 1.2485080000000153L63.46242 3.315859000000046C65.301149 5.444836000000009 69.655573 9.862312999999972 76.498228 15.820363000000043 88.306297 26.101906999999983 102.566352 36.46294 119.251411 46.17438500000003 167.295691 74.13829099999998 224.90855 90.95018200000004 292.337329 90.95018200000004 358.378978 90.95018000000005 409.459345 71.66956600000003 448.125308 39.64774 461.506042 28.56627400000002 472.380655 16.734758000000056 480.912593 4.997000999999955 485.832384-1.7713730000000396 488.762874-6.741985999999997 489.872527-9.02252199999998 496.058545-21.73590200000001 511.379537-27.027375000000006 524.092917-20.84135500000002 536.806298-14.655337000000031 542.097771 0.6656550000000152 535.91175 13.379036000000042 527.471002 30.726293000000055 509.777717 55.06771800000001 480.782336 79.08069999999998 433.134118 118.54132300000003 370.586889 142.15017999999998 292.337329 142.15018199999997 215.474895 142.15018499999996 149.074727 122.77408400000002 93.495781 90.424668 59.761154 70.78961500000003 36.872315 50.859801999999945 24.713677 36.78188399999999L44.088049 20.048869999999965 26.712598 38.84923500000002C28.162783 40.189508000000046 32.877261 41.946117999999956 40.792576 38.64178100000004 49.035365 35.200736000000006 51.2 30.12989200000004 51.2 27.856867999999963L51.2 506.026694C51.2 520.165184 39.73849 531.626694 25.6 531.626694 11.46151 531.626694 0 520.165184 0 506.026694L0 506.026694ZM696.80221 763.689812C618.971441 764.846461 562.335996 743.1209699999999 524.86557 705.503602 502.148181 682.697124 490.896501 659.419023 487.035083 642.407751L486.4 636.740922 486.400004 196.90019600000005C486.400006 160.801293 520.044004 145.90070000000003 547.157161 168.768644L549.478807 170.72677999999996 551.27783 173.17379000000005C553.709086 176.48075300000005 561.946746 183.56540600000005 577.924452 191.483569 607.159834 205.97190999999998 648.102165 214.905079 702.831787 214.905082 757.298833 214.905082 795.293111 206.40648099999999 819.77162 192.907243 832.167345 186.07133399999998 837.245391 180.59664399999997 838.029591 178.978613L839.547055 175.84764199999995 841.845105 173.23524099999997C866.781167 144.88818300000003 903.323712 159.26104999999995 903.323712 196.66445199999998L903.323712 497.049743 903.323712 636.7409230000001 903.323712 643.549699 899.941158 649.4588249999999C891.348196 664.470237 874.996732 685.712527 850.383556 706.850184 808.24231 743.04085 756.662673 764.607483 696.034325 763.689705L696.80221 763.689812ZM696.809291 712.495571C743.942063 713.209056 783.797257 696.544681 817.026071 668.007961 828.531119 658.127492 838.369481 647.521524 846.494989 636.965629 851.235031 630.807811 854.244804 626.226721 855.506263 624.023021L852.123712 636.7409230000001 852.123712 497.049743 852.123712 196.66445199999998C852.123712 199.20011699999998 854.231635 204.41496099999995 863.474707 208.050434 873.016412 211.80336599999998 878.439633 209.15336100000002 880.287925 207.05224299999998L861.066515 190.14374199999997 884.103441 201.30886999999996C878.785579 212.28117299999997 866.346381 225.69198700000004 844.49655 237.741581 811.89913 255.71817999999996 765.462916 266.10508200000004 702.831785 266.10508200000004 640.463232 266.10507900000005 591.745741 255.475456 555.189638 237.35914000000002 531.692454 225.71450900000002 517.183533 213.23636899999997 510.026502 203.50146800000005L530.652166 188.33763 514.147172 207.906613C515.63949 209.16527399999995 520.284527 210.66283299999998 527.732117 207.36436700000002 535.507665 203.920655 537.600004 199.018106 537.600004 196.90019600000005L537.6 636.7409230000001 536.964917 631.0740940000001C537.274671 632.438701 538.52809 636.159553 541.081741 641.442689 545.63241 650.857363 552.196378 660.39174 561.140218 669.3706540000001 588.544813 696.882717 631.736384 713.451107 696.041406 712.495464L696.809291 712.495571ZM972.799998 506.026694L972.799998 27.856867999999963C972.799998 30.12989200000004 974.964631 35.200736000000006 983.207422 38.64178100000004 991.122737 41.946117999999956 995.837214 40.189508000000046 997.287401 38.84923500000002L979.911949 20.048869999999965 999.286321 36.78188399999999C987.127682 50.859801999999945 964.238844 70.78961500000003 930.504218 90.424668 874.925269 122.77408400000002 808.525103 142.15018499999996 731.662669 142.15018199999997 653.132708 142.15017999999998 590.55104 117.26282200000003 543.127755 75.73800100000005 514.370099 50.55719499999998 496.945662 25.10259599999995 488.705389 7.022771000000034 482.841769-5.842485000000011 488.517717-21.02524200000005 501.382974-26.888862000000017 514.248233-32.752481999999986 529.430987-27.07653300000004 535.294607-14.211275 536.420563-11.740835999999945 539.350332-6.450639000000024 544.25735 0.7178109999999833 552.731727 13.097653000000037 563.54464 25.561581000000047 576.856734 37.21792900000003 615.190044 70.78337499999998 665.901421 90.95018000000005 731.662669 90.95018200000004 799.091447 90.95018200000004 856.704307 74.13829099999998 904.748587 46.17438500000003 921.433645 36.46294 935.6937 26.101906999999983 947.501771 15.820363000000043 954.344425 9.862312999999972 958.698848 5.444836000000009 960.537577 3.315859000000046L962.536497 1.2485080000000153C989.206831-23.40043300000002 1023.999998-8.875636999999983 1023.999998 27.856867999999963L1023.999998 506.026694C1023.999998 520.165184 1012.538487 531.626694 998.399998 531.626694 984.261508 531.626694 972.799998 520.165184 972.799998 506.026694L972.799998 506.026694Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="404" unicode="" d="M300.197309 299.705317l4.427931 1.803972c1.147982-2.787956 10.167841-7.543882 26.89558-14.267777l5.411915-12.955798c10.659833-24.927611 23.123639-62.483024 37.555413-112.66624 14.431775 5.575913 34.439462 0.983985 60.351057-13.611787l1.803972-4.427931L389.575913 107.828315l18.203716-42.639334c2.459962-5.575913-12.463805-15.579757-44.7713-29.847534-11.151826 7.215887-19.84369 9.675849-26.403587 7.05189l-0.983985 2.131967c-10.823831 25.419603-16.235746 42.311339-16.399744 50.675208l-4.427931-1.803972 6.3959-14.923767-11.151826-4.263933c-41.655349-16.235746-71.830878-18.695708-90.690583-7.871877l-4.427931-1.803972-1.803972 4.263933c-7.05189 16.727739 3.607944 77.406791 32.307495 182.037156 11.479821 4.427931 19.1877 14.923767 22.959641 31.323511C281.337604 290.685458 291.83344 296.425368 300.197309 299.705317L300.197309 299.705317zM216.230621 80.276746c28.371557 19.515695 40.999359 32.799488 38.047406 39.68738-0.983985 2.131967-0.65599 5.575913 0.65599 10.167841l-0.983985 2.131967c-25.5836-21.483664-38.047406-32.963485-37.391416-34.439462C215.246637 88.804612 215.082639 83.064702 216.230621 80.276746L216.230621 80.276746zM216.722614 72.896861l0.983985-2.131967c11.643818 1.147982 21.155669 3.279949 28.699552 6.231903 0.819987 0.327995 7.379885 5.411915 19.84369 15.251762l-0.983985 2.131967c-7.543882-2.951954-12.7918-0.983985-15.743754 6.067905C226.398463 85.032671 215.574632 75.848815 216.722614 72.896861L216.722614 72.896861zM225.90647 143.743754l11.151826 4.263933c-1.147982-2.623959-6.3959-8.691864-15.579757-18.53171-2.295964-10.823831-2.787956-17.547726-1.639974-20.335682 27.715567 20.663677 40.34337 33.783472 37.883408 39.523382l0.819987 10.331839-3.443946-3.935939-9.019859-3.443946-0.983985 2.131967c11.151826 4.263933 17.875721 16.891736 20.49968 37.719411l-0.983985 2.131967C239.35426 172.443306 227.21845 160.307495 227.874439 157.027546L225.90647 143.743754 225.90647 143.743754zM231.646381 173.42729l0.983985-2.131967 2.131967 0.819987c28.371557 23.123639 40.179372 40.179372 35.423447 51.331198 1.475977 0.65599 1.967969 1.639974 1.475977 2.951954l-2.295964-0.819987c-28.863549-21.647662-40.999359-38.047406-36.407431-49.035234C231.482383 175.723254 230.990391 174.73927 231.646381 173.42729L231.646381 173.42729zM240.994234 211.966688l0.983985-2.131967c13.775785 10.331839 35.915439 29.847534 66.418962 58.21909l2.131967 0.819987-6.3959 14.923767 0.491992 5.083921-2.295964-0.819987c-36.571429-32.963485-55.431134-51.82319-56.579116-56.743113L240.994234 211.966688 240.994234 211.966688zM311.67713 107.336323l-35.751441-13.939782c-1.475977-0.491992-6.887892-4.263933-16.235746-11.315823l0.819987-1.967969 12.299808 2.131967 20.007687 7.871877c11.643818 4.591928 32.143498 19.84369 61.171044 46.08328l-6.3959 14.923767-2.131967-0.819987c-24.107623-16.891736-34.439462-29.191544-31.159513-36.899423C315.449071 110.616272 314.629084 108.484305 311.67713 107.336323L311.67713 107.336323zM267.889814 264.773863l0.819987-1.967969c17.875721 16.891736 27.387572 25.419603 28.207559 25.747598l-0.983985 2.131967-8.855862-3.443946C274.941704 282.485586 268.545804 274.941704 267.889814 264.773863L267.889814 264.773863zM275.597694 222.954516c16.071749-37.883408 20.007687-67.894939 11.971813-90.034593l-3.443946-28.863549 26.89558 10.495836c-7.543882 30.011531-18.367713 65.598975-32.471493 106.926329l-0.983985 2.131967L275.597694 222.954516 275.597694 222.954516zM279.369635 231.810378l6.3959-14.923767c13.44779 15.087764 24.435618 24.271621 32.63549 27.55157l-3.607944 8.527867-2.459962 11.643818-2.131967-0.819987C289.045484 247.06214 278.713645 236.566304 279.369635 231.810378L279.369635 231.810378zM292.817425 194.58296c23.943626 17.219731 33.619475 30.995516 29.191544 41.491352l-2.787956 6.3959-2.295964-0.819987c-21.483664-18.859705-30.667521-31.651505-27.879564-38.3754L292.817425 194.58296 292.817425 194.58296zM294.457399 190.483024l2.787956-6.3959 2.295964-11.807816 2.295964 0.819987-0.491992-5.083921 6.3959-14.923767 32.471493 27.387572-6.3959 15.087764c-9.347854-10.331839-16.235746-16.399744-20.827675-18.203716l-2.295964-0.983985c-0.65599 1.639974 6.067905 10.167841 20.335682 25.419603l-3.115951 13.611787-0.983985 2.131967L294.457399 190.483024 294.457399 190.483024zM307.413197 148.171685l2.787956-6.3959 2.295964-11.643818c23.943626 17.219731 35.259449 27.387572 33.94747 30.503523l-5.411915 12.955798C329.224856 165.719411 318.07303 157.191544 307.413197 148.171685L307.413197 148.171685zM355.792441 131.935939c-23.779628-17.711723-34.111467-30.011531-30.995516-37.227418l1.475977-9.347854c25.255605 18.039718 36.899423 29.355541 34.931454 33.783472 24.435618 21.155669 38.703395 32.471493 42.803331 33.94747l-0.819987 1.967969c-1.803972 2.787956-6.723895 4.099936-14.595772 4.427931l-30.831518-31.9795L355.792441 131.935939 355.792441 131.935939zM327.912876 81.26073l4.591928-10.659833-0.491992-5.083921 2.295964 0.819987c23.451634 14.595772 34.275464 23.615631 32.63549 27.55157l-5.411915 12.955798L327.912876 81.26073 327.912876 81.26073zM333.816784 61.253043l5.411915-12.7918c25.747598 13.283792 37.719411 22.139654 35.915439 26.403587l-4.591928 10.659833C348.412556 70.272902 336.112748 62.237028 333.816784 61.253043L333.816784 61.253043zM357.596413 139.971813l1.803972-4.099936c4.919923 1.967969 8.527867 9.839846 10.823831 23.943626l-2.295964-0.819987C364.648302 147.679693 361.204356 141.44779 357.596413 139.971813L357.596413 139.971813zM731.674568 256.081999l3.935939-0.163997c-0.163997-2.459962 4.755926-9.019859 14.759769-19.515695l-0.65599-11.315823c-1.147982-21.975657-5.411915-53.955157-12.955798-95.774504 12.627803-0.65599 25.911595-10.659833 39.68738-30.175529l-0.163997-3.935939-47.887252-10.823831-1.967969-37.719411c-0.327995-4.919923-14.923767-7.379885-43.951313-7.379885-5.575913 9.019859-11.151826 13.775785-16.891736 13.939782l0.163997 1.967969c1.147982 22.467649 3.279949 36.735426 6.231903 42.967329l-3.935939 0.163997-0.65599-13.119795-9.839846 0.491992c-36.571429 1.803972-60.023062 9.839846-70.026906 24.271621l-3.935939 0.163997 0.163997 3.771941c0.819987 14.759769 30.667521 56.087124 89.706598 124.14606 10.167841-0.491992 19.515695 4.755926 28.371557 15.579757C714.290839 255.754004 724.294683 256.573991 731.674568 256.081999L731.674568 256.081999zM587.848815 115.86419l-0.163997-1.967969c9.019859-2.951954 16.891736-4.591928 23.615631-4.919923 0.65599 0 7.379885 1.475977 20.171685 4.755926l0.163997 1.967969c-6.723895 0.327995-9.839846 3.607944-9.511851 9.675849C599.328635 121.6041 588.012812 118.324151 587.848815 115.86419L587.848815 115.86419zM590.144779 121.440102c28.043562 5.083921 42.147341 10.659833 42.475336 16.727739 0.163997 1.803972 1.475977 4.263933 4.099936 7.215887l0.163997 1.967969c-26.731582-7.379885-40.015375-11.807816-40.179372-13.119795C592.440743 128.163997 590.308776 123.900064 590.144779 121.440102L590.144779 121.440102zM620.15631 165.227418l9.839846-0.491992c-1.803972-1.475977-7.871877-4.427931-18.367713-8.527867-5.575913-7.215887-8.527867-12.13581-8.527867-14.595772 28.043562 6.067905 42.147341 11.643818 42.311339 16.727739l4.263933 7.379885-3.935939-1.803972-8.035874 0.327995 0.163997 1.967969c9.839846-0.491992 19.351698 6.559898 28.863549 21.155669l0.163997 1.967969c-26.23959-7.379885-39.68738-12.463805-40.34337-14.923767L620.15631 165.227418 620.15631 165.227418zM670.667521 109.960282l-31.487508 1.475977c-1.31198 0-6.559898-0.983985-16.071749-2.951954l-0.163997-1.803972 9.839846-2.459962 17.711723-0.819987c10.331839-0.491992 30.995516 4.099936 61.991031 13.939782l0.65599 13.119795-1.803972 0.163997c-23.943626-4.591928-36.079436-10.167841-36.407431-16.891736C674.603459 110.944266 673.29148 109.796284 670.667521 109.960282L670.667521 109.960282zM635.244074 185.399103l-0.163997-1.967969 1.803972-0.163997c29.355541 7.70788 44.279308 16.563741 44.7713 26.23959 1.31198 0 2.131967 0.491992 2.131967 1.639974l-1.967969 0.163997c-29.191544-6.3959-44.115311-14.595772-44.607303-24.271621C635.900064 187.039078 635.244074 186.547085 635.244074 185.399103L635.244074 185.399103zM685.755285 207.37476c-1.803972-33.29148-9.675849-56.907111-23.615631-70.682896l-12.955798-20.171685 23.779628-1.147982c5.247918 24.763613 10.167841 54.611147 14.595772 89.870596l0.163997 1.967969L685.755285 207.37476 685.755285 207.37476zM656.071749 210.818706l-0.163997-1.967969c13.939782 3.115951 37.391416 10.167841 70.354901 21.155669l1.803972-0.163997 0.65599 13.119795 2.295964 3.607944-1.967969 0.163997c-39.03139-12.299808-59.859065-20.007687-62.483024-23.287636L656.071749 210.818706 656.071749 210.818706zM670.339526 68.46893l-0.65599-11.315823c23.943626 1.31198 35.915439 3.935939 36.079436 7.70788l0.491992 9.347854C684.443306 70.272902 672.471493 68.304933 670.339526 68.46893L670.339526 68.46893zM673.29148 85.196669l-0.491992-9.347854-2.295964-3.607944 1.967969-0.163997c22.631646 2.951954 33.94747 6.231903 34.111467 9.511851l0.65599 11.315823L673.29148 85.196669 673.29148 85.196669zM712.158873 113.568225c-23.943626-5.247918-36.079436-10.987828-36.407431-17.219731l-2.295964-7.379885c25.255605 5.083921 37.883408 9.511851 38.211403 13.44779 25.747598 7.543882 40.34337 11.151826 43.951313 10.987828l0.163997 1.803972c-0.327995 2.623959-3.443946 5.247918-9.347854 8.035874l-34.439462-13.44779L712.158873 113.568225 712.158873 113.568225zM682.147341 141.611787l-0.327995-5.73991-2.459962-9.347854c23.943626 4.755926 36.079436 8.691864 36.079436 11.479821l0.65599 11.315823C704.778988 147.351698 693.463165 144.727739 682.147341 141.611787L682.147341 141.611787zM688.051249 177.199231l-0.327995-5.73991-2.623959-9.511851 1.967969-0.163997-2.295964-3.607944-0.65599-13.119795 33.94747 9.511851 0.65599 13.283792c-10.659833-4.591928-18.039718-6.723895-21.975657-6.559898l-1.967969 0.163997c0 1.475977 8.199872 5.411915 24.271621 12.13581l2.623959 11.151826 0.163997 1.967969L688.051249 177.199231 688.051249 177.199231zM688.215247 180.807175c23.943626 4.755926 36.243434 11.807816 36.735426 20.991672l0.327995 5.73991-1.967969 0.163997c-22.631646-6.887892-34.275464-13.283792-34.603459-19.1877L688.215247 180.807175 688.215247 180.807175zM691.82319 212.786675l-0.65599-13.119795c15.415759 6.723895 26.89558 10.003844 34.111467 9.511851l0.327995 7.543882 2.459962 9.511851-1.803972 0.163997C704.450993 220.986547 692.971172 216.558616 691.82319 212.786675L691.82319 212.786675zM695.103139 240.994234l-0.163997-1.803972c19.351698 6.559898 29.355541 9.839846 30.339526 9.839846l0.163997 1.967969-7.871877 0.327995C706.746957 251.818065 699.367072 248.374119 695.103139 240.994234L695.103139 240.994234zM716.422806 118.980141l-0.163997-3.607944c4.427931-0.163997 10.003844 4.427931 16.727739 14.10378l-1.967969 0.163997C724.45868 122.26009 719.538757 118.816143 716.422806 118.980141L716.422806 118.980141zM479.118514 382.196028c53.627162 10.167841 89.870596 1.967969 109.222293-24.599616 9.675849-18.695708 15.579757-33.455477 17.875721-44.279308 11.807816-56.743113-5.903908-103.154388-53.299167-138.741832-12.463805-5.083921-22.631646-8.363869-30.339526-10.003844-31.651505-6.067905-63.631006 5.083921-95.938501 33.455477-9.347854 16.399744-15.251762 31.159513-18.039718 44.279308-13.283792 63.795003 1.967969 108.238309 45.919283 133.165919L479.118514 382.196028 479.118514 382.196028zM410.075593 265.429853c6.231903 5.247918 11.479821 8.199872 15.579757 9.019859-9.675849-9.347854-14.431775-15.087764-13.939782-17.219731-0.327995-5.411915-0.163997-10.167841 0.819987-14.267777l2.131967 0.327995c24.271621 15.743754 35.915439 25.5836 35.095452 29.519539l-2.131967 10.003844c-4.099936-3.607944-8.035874-5.73991-11.643818-6.559898l-0.819987 4.099936c10.823831 2.131967 15.251762 11.971813 13.44779 29.519539l-1.967969-0.327995c-22.467649-16.399744-34.603459-27.715567-36.407431-33.94747C409.255605 273.30173 409.255605 269.857783 410.075593 265.429853L410.075593 265.429853zM410.23959 286.257527c33.127482 21.647662 47.887252 40.34337 44.607303 56.251121-29.683536-23.615631-44.443306-36.079436-44.279308-37.555413C409.747598 295.769379 409.5836 289.537476 410.23959 286.257527L410.23959 286.257527zM412.699552 315.777066l0.491992-2.131967c27.059577 20.663677 44.607303 37.227418 52.643177 49.527226 10.331839 1.967969 17.055734 7.379885 20.49968 16.235746l-2.131967-0.491992C447.303011 372.028187 423.523382 350.872518 412.699552 315.777066L412.699552 315.777066zM414.339526 234.926329c2.459962-4.919923 4.263933-9.347854 5.083921-13.44779 18.859705 14.759769 30.339526 22.467649 34.111467 23.123639l-3.771941 18.039718C444.18706 261.493914 432.379244 252.310058 414.339526 234.926329L414.339526 234.926329zM421.883408 220.002562c2.131967-9.839846 5.247918-14.759769 9.675849-14.759769l27.879564 21.975657c-0.327995 1.147982-2.131967 6.231903-5.411915 15.415759C437.299167 228.530429 426.639334 220.986547 421.883408 220.002562L421.883408 220.002562zM432.707239 199.174888c5.083921-5.903908 8.527867-8.691864 10.495836-8.363869l3.935939 0.819987c10.987828 10.495836 19.1877 16.235746 24.599616 17.219731-0.819987 3.935939-3.935939 8.855862-9.511851 14.759769C442.21909 209.014734 432.379244 200.814862 432.707239 199.174888L432.707239 199.174888zM448.450993 185.563101l0.491992-2.131967c2.459962 0.491992 6.3959-0.819987 11.807816-3.771941 18.859705 10.003844 28.207559 16.727739 28.207559 19.84369-6.067905 1.639974-9.511851 4.427931-10.331839 8.363869C466.818706 202.946829 456.814862 195.566944 448.450993 185.563101L448.450993 185.563101zM469.442665 179.331198l0.491992-2.131967 14.923767 0.65599 12.627803 2.459962c2.459962 0.491992 8.199872 3.771941 17.547726 9.839846l-0.491992 2.131967c-6.887892-1.31198-13.611787 0.163997-20.49968 4.263933L469.442665 179.331198 469.442665 179.331198zM476.494555 249.030109l4.591928-21.811659c2.951954-14.431775 12.463805-25.091608 28.535554-31.9795l4.099936 0.819987c24.599616 34.275464 32.143498 73.798847 22.795644 118.570147l-2.459962 11.971813-6.231903 19.515695-6.067905-1.147982c-3.935939-0.819987-14.267777 0-30.831518 2.295964C473.870596 316.597053 469.278668 283.961563 476.494555 249.030109L476.494555 249.030109zM476.494555 363.172325l0.327995-1.967969c10.823831-2.131967 17.547726-3.115951 20.007687-2.623959 13.939782 10.167841 21.647662 17.875721 23.287636 23.287636l-21.319667-1.967969C496.174247 379.408072 488.630365 373.832159 476.494555 363.172325L476.494555 363.172325zM508.966047 363.172325l3.771941 2.787956c1.147982 0.163997 6.231903-2.951954 15.087764-9.675849 10.331839 13.119795 18.203716 20.171685 23.779628 21.155669-0.65599 2.951954-8.199872 4.263933-22.467649 4.099936C515.361947 370.716208 508.638053 364.648302 508.966047 363.172325L508.966047 363.172325zM511.590006 185.235106l0.491992-2.131967 4.099936 0.819987c19.84369 3.771941 35.751441 17.219731 47.723254 40.34337C554.557335 214.754644 537.173607 201.634849 511.590006 185.235106L511.590006 185.235106zM521.921845 197.534914c38.211403 24.271621 56.087124 42.311339 53.79116 53.79116 1.967969 4.919923 2.623959 8.527867 2.295964 10.823831-35.095452-26.567585-51.495195-44.935298-49.363229-54.939142C526.349776 206.71877 524.217809 203.602819 521.921845 197.534914L521.921845 197.534914zM528.64574 352.348495l7.543882-15.251762 2.131967 0.491992c4.263933 5.73991 13.283792 14.431775 27.059577 25.911595l-0.491992 2.131967c-5.411915 5.247918-8.363869 8.855862-8.855862 10.823831l-4.099936-0.819987L528.64574 352.348495 528.64574 352.348495zM536.845612 333.324792l4.263933-9.675849-0.491992-8.363869 4.099936 0.819987c19.515695 17.711723 29.027546 27.059577 28.863549 28.371557l-0.491992 2.131967c-1.967969 9.347854-4.263933 13.611787-7.05189 13.119795C548.817425 342.508648 539.141576 333.652787 536.845612 333.324792L536.845612 333.324792zM539.797566 236.402306c27.715567 19.84369 40.999359 32.63549 39.68738 38.703395 1.31198 7.215887 1.803972 12.13581 1.147982 14.759769l-1.967969-0.327995-35.095452-29.519539C540.78155 245.586163 539.469571 237.714286 539.797566 236.402306L539.797566 236.402306zM542.257527 307.413197l2.459962-11.971813 10.003844 3.935939c-7.05189-7.871877-10.331839-12.627803-10.003844-14.267777-0.65599-10.495836-0.819987-16.727739-0.327995-18.695708 18.695708 13.611787 30.831518 24.927611 36.243434 33.94747l-2.459962 11.971813c-7.05189-7.05189-12.7918-10.987828-16.727739-11.807816 8.035874 11.315823 13.939782 17.383728 17.711723 18.039718l-4.099936 19.84369C554.557335 320.532992 543.733504 310.201153 542.257527 307.413197L542.257527 307.413197zM307.249199 569.153107c-9.675849 0-17.711723-6.887892-19.84369-16.071749-4.263933-12.463805 1.639974-28.863549 29.519539-35.751441 1.31198 35.587444 0 49.527226 0 49.527226C313.809097 568.33312 310.693145 569.153107 307.249199 569.153107L307.249199 569.153107zM709.862908 537.173607c0-1.147982 0-2.131967-0.163997-3.115951 2.131967 3.279949 3.279949 7.215887 3.279949 11.479821 0 11.643818-9.183857 21.155669-20.49968 21.155669-3.443946 0-6.723895-0.819987-9.511851-2.459962C697.891095 563.905189 709.862908 551.933376 709.862908 537.173607L709.862908 537.173607zM531.761691 520.281871c0.65599 15.743754-32.963485 49.199231-32.963485 49.199231 0-18.203716 9.347854-42.803331 12.463805-48.707239-8.035874-11.643818-13.283792-32.307495-13.283792-32.307495S531.105701 504.374119 531.761691 520.281871L531.761691 520.281871zM488.794363 507.326073c2.459962 0 4.427931 1.967969 4.427931 4.427931 0 2.459962-1.967969 4.427931-4.427931 4.427931-2.459962 0-4.427931-1.967969-4.427931-4.427931C484.366432 509.294042 486.334401 507.326073 488.794363 507.326073L488.794363 507.326073zM445.335042 629.668161c-0.819987 8.855862-2.131967 16.235746-2.131967 16.235746s-53.627162 7.05189-63.959001-30.503523C395.151826 632.94811 427.623318 631.144138 445.335042 629.668161L445.335042 629.668161zM620.648302 614.908392c-9.675849 37.719411-63.303011 31.651505-63.303011 31.651505s-1.475977-7.379885-2.459962-16.235746C572.597053 631.636131 605.232543 632.784113 620.648302 614.908392L620.648302 614.908392zM419.587444 518.313901c29.847534 0 53.955157 21.975657 53.955157 49.035234 0 27.059577-24.271621 49.035234-53.955157 49.035234-29.847534 0-53.955157-21.975657-53.955157-49.035234C365.632287 540.289558 389.903908 518.313901 419.587444 518.313901L419.587444 518.313901zM419.587444 613.76041c28.371557 0 51.331198-20.827675 51.331198-46.411275 0-25.5836-22.959641-46.411275-51.331198-46.411275-28.207559 0-51.331198 20.827675-51.331198 46.411275C368.256246 592.932735 391.379885 613.76041 419.587444 613.76041L419.587444 613.76041zM419.587444 534.38565c20.007687 0 36.243434 14.759769 36.243434 32.799488 0 18.203716-16.235746 32.799488-36.243434 32.799488s-36.243434-14.759769-36.243434-32.799488C383.34401 549.14542 399.579757 534.38565 419.587444 534.38565L419.587444 534.38565zM435.331198 552.261371c1.967969 2.131967 4.919923 2.623959 6.559898 1.147982 1.639974-1.475977 1.475977-4.263933-0.491992-6.3959-1.967969-2.131967-4.919923-2.623959-6.559898-1.147982C433.035234 547.341448 433.199231 550.129404 435.331198 552.261371L435.331198 552.261371zM395.971813 585.880846c5.411915 5.73991 13.283792 7.05189 17.875721 3.115951 4.591928-3.935939 3.935939-11.807816-1.475977-17.547726-5.411915-5.73991-13.283792-7.05189-17.875721-3.115951C389.903908 572.433056 390.559898 580.304933 395.971813 585.880846L395.971813 585.880846zM584.240871 518.313901c29.847534 0 53.955157 21.975657 53.955157 49.035234 0 27.059577-24.271621 49.035234-53.955157 49.035234-29.847534 0-53.955157-21.975657-53.955157-49.035234C530.121717 540.289558 554.393338 518.313901 584.240871 518.313901L584.240871 518.313901zM584.240871 613.76041c28.371557 0 51.331198-20.827675 51.331198-46.411275 0-25.5836-22.959641-46.411275-51.331198-46.411275-28.207559 0-51.331198 20.827675-51.331198 46.411275C532.909673 592.932735 555.869315 613.76041 584.240871 613.76041L584.240871 613.76041zM584.240871 534.38565c20.007687 0 36.243434 14.759769 36.243434 32.799488 0 18.203716-16.235746 32.799488-36.243434 32.799488-20.007687 0-36.243434-14.759769-36.243434-32.799488C547.997438 549.14542 564.233184 534.38565 584.240871 534.38565L584.240871 534.38565zM599.820628 552.261371c1.967969 2.131967 4.919923 2.623959 6.559898 1.147982 1.639974-1.475977 1.475977-4.263933-0.491992-6.3959-1.967969-2.131967-4.919923-2.623959-6.559898-1.147982C597.688661 547.341448 597.852659 550.129404 599.820628 552.261371L599.820628 552.261371zM560.62524 585.880846c5.411915 5.73991 13.283792 7.05189 17.875721 3.115951 4.591928-3.935939 3.935939-11.807816-1.475977-17.547726-5.411915-5.73991-13.283792-7.05189-17.875721-3.115951C554.557335 572.433056 555.213325 580.304933 560.62524 585.880846L560.62524 585.880846zM957.171044 381.540038C957.171044 381.540038 957.171044 381.540038 957.171044 381.540038c-0.65599 0.983985-1.31198 1.803972-1.967969 2.951954-0.327995 0.327995-0.491992 0.65599-0.819987 0.983985-0.327995 0.327995-1.967969 0.65599-2.295964 0.983985-11.315823 14.759769-29.355541 40.34337-62.975016 46.247277l0 34.931454c0 4.263933-0.819987 8.691864-5.083921 8.691864L685.919283 476.330557c-0.163997 10.331839-0.327995 18.203716-0.65599 27.879564 24.435618 1.803972 43.295324 19.351698 43.295324 41.491352 0 22.467649-19.84369 40.671365-45.263293 41.819347-1.967969 78.226778-5.903908 143.98975-7.70788 150.549648l-0.491992 0.983985c-1.967969 2.295964-9.511851 5.247918-21.155669 8.363869 0.327995 13.939782-3.279949 29.355541-11.643818 46.08328 3.443946-21.647662-22.795644-36.079436-26.567585-38.047406-0.163997 0-0.327995 0-0.491992 0 0.163997 4.427931 0 57.727098-88.230621 97.90647-1.475977-44.115311-14.10378-70.682896-31.9795-86.754644L494.534273 766.606022l-5.411915-0.327995 0-0.163997 0 0 0 0 0.327995 0 0.327995-0.163997c-0.819987-0.163997-0.983985-0.491992-1.147982-1.147982-10.331839-8.035874-28.043562-18.203716-64.450993-18.203716-13.283792 0-28.207559 1.31198-44.607303 3.935939-4.099936 0.819987-7.70788 1.147982-11.151826 1.147982-5.575913 0-10.003844-0.983985-16.071749-2.295964l-0.327995 0-0.327995-0.163997c-17.547726-4.099936-27.55157-7.70788-30.011531-10.659833l-0.491992-0.983985c-0.491992-2.131967-2.295964-8.363869-5.73991-150.549648-25.255605-0.983985-45.263293-19.351698-45.263293-41.983344 0-22.139654 18.859705-39.523382 43.459321-41.163357-0.163997-9.675849-0.327995-17.547726-0.65599-27.879564L132.099936 476.002562c-4.427931 0-10.495836-4.591928-10.495836-8.691864l0-97.414478c-11.807816-0.65599-19.679693-2.295964-26.731582-4.755926-29.027546-10.495836-35.751441-35.915439-35.587444-60.023062 0-1.475977 0.491992-2.787956 0.983985-3.771941-6.723895-11.643818-6.231903-25.5836-5.083921-35.587444 0.983985-8.035874 2.623959-12.13581 4.427931-13.939782-4.263933-8.855862-0.983985-18.859705 1.967969-26.731582 3.771941-10.167841 12.13581-11.971813 22.139654-10.003844-4.755926-9.019859-2.459962-17.219731 11.643818-28.699552 4.427931-3.607944 14.267777 7.05189 26.075593 16.071749l0-267.151826c0-4.263933 6.067905-6.067905 10.331839-6.067905l751.928251 0c4.427931 0 5.083921 1.803972 5.083921 6.067905L888.784113 248.374119c16.727739 0.983985 29.355541 7.70788 38.539398 19.84369 4.591928 6.231903 7.871877 11.807816 8.691864 16.891736C977.670724 313.153107 982.262652 344.640615 957.171044 381.540038L957.171044 381.540038zM316.433056 508.638053c-22.959641 0.491992-40.835362 16.727739-40.835362 36.735426 0 20.335682 18.859705 36.899423 41.983344 36.899423l0 2.623959 0.163997-0.65599c0-0.819987 0-1.475977 0-2.295964 0.491992 0.163997 0.983985 0.163997 1.475977 0.327995l1.803972 0 0 0.491992c5.247918 1.31198 12.7918 2.951954 19.351698 3.771941 10.003844 35.095452 34.111467 64.122998 34.111467 64.122998s-9.839846 28.863549-13.939782 67.238949c51.167201-85.11467 229.268418-81.178732 280.107623-10.823831-4.591928-32.799488-12.627803-56.415119-12.627803-56.415119s24.107623-28.863549 34.111467-64.122998c6.559898-0.819987 13.939782-1.147982 19.023703-2.295964 0 0.491992 0 2.623959 0 2.623959l0.491992 0c23.123639 0 41.983344-18.695708 41.983344-39.03139 0-9.347854-3.935939-18.695708-10.495836-25.419603-10.167841-6.723895-25.091608-10.331839-40.835362-10.331839 0-6.723895 0.983985-19.351698 1.803972-35.423447L318.401025 476.658552c0.163997 10.331839 0.491992 19.84369 0.65599 30.175529l0 2.131967L316.433056 508.638053 316.433056 508.638053zM126.524023 462.554773c0 4.099936 6.3959 9.183857 10.823831 9.183857l741.432415 0c4.263933 0 5.575913-4.919923 5.575913-9.183857l0-29.027546c0 0.491992-6.723895 1.475977-10.823831 1.147982-22.795644-2.295964-44.443306-3.607944-60.679052-9.183857L176.215247 425.491352l-1.31198-2.787956 0-60.18706c-10.823831 5.903908-25.5836 8.363869-48.215247 7.871877L126.68802 462.554773 126.524023 462.554773zM821.381166-13.693786 180.807175-13.693786 180.807175 282.649584c10.823831 4.263933 15.579757 10.987828 15.087764 21.975657-0.491992 8.363869-4.263933 13.611787-15.087764 16.727739l0 7.379885c5.903908 1.967969 3.935939 4.263933 5.247918 6.723895 5.411915 10.495836 5.575913 18.203716-5.247918 23.779628l0 55.759129 615.318386 0c-2.787956-5.575913-4.755926-7.871877-5.575913-12.299808-1.475977-8.035874-1.639974-18.367713-1.147982-28.207559L697.891095 315.449071c0 0-28.371557-15.251762-16.727739-32.799488 11.643818-17.383728 32.307495-11.479821 50.511211-0.327995 12.13581 7.379885 39.68738 23.287636 63.959001 40.179372 0.163997-0.163997 0.327995-0.163997 0.491992-0.327995-1.803972-1.31198-2.951954-2.295964-2.951954-2.295964-11.151826-7.543882-6.887892-36.899423 15.415759-41.327354 3.115951-0.65599 9.675849 0 9.675849 1.147982l0-293.391416L821.381166-13.693786 821.381166-13.693786zM177.855221 271.169763c0 3.443946-2.131967 6.231903-4.755926 8.035874 1.639974 0.491992 3.771941 0.983985 4.755926 1.475977L177.855221 271.169763 177.855221 271.169763zM177.855221 322.828956c-0.983985 0.163997-1.639974 0.327995-2.459962 0.491992 0.819987 0.491992 1.475977 0.983985 2.459962 1.475977L177.855221 322.828956 177.855221 322.828956zM878.780269-65.516976 137.347854-65.516976c-4.263933 0-10.823831 2.131967-10.823831 6.3959L126.524023 206.882767c5.903908 1.147982 4.919923 2.295964 6.723895 3.279949 19.679693 8.035874 38.047406 25.255605 25.747598 33.127482-0.163997 0-1.475977 0.163997-1.639974 0.163997 9.511851 3.771941 17.547726 9.839846 17.547726 20.663677l0-289.29148 655.169763 2.459962 0 291.915439c9.839846-9.675849 21.647662-14.595772 34.603459-10.331839 3.279949-6.559898 13.611787-9.839846 19.515695-10.331839l0-307.495195C884.192184-63.38501 883.044202-65.516976 878.780269-65.516976L878.780269-65.516976zM878.780269-65.516976" horiz-adv-x="1024" /> + + + <glyph glyph-name="carousel" unicode="" d="M1002.069333 144.38400000000001L1002.069333 611.6906670000001c0 24.213333-16.917333 49.578667-42.069333 49.578667l-64 0 1.152 6.4c0 31.338667-26.005333 57.6-58.538667 57.6L186.432 725.269333c-31.936 0-58.410667-31.957333-58.410667-64l-0.213333 0.96L67.178667 662.229333c-25.152 0-45.226667-20.288-45.226667-44.501333l0-467.328L21.354667 150.39999999999998c0-24.789333 20.629333-44.693333 45.312-44.693333L127.786667 105.70666700000004l0-5.184C127.786667 69.03466700000001 153.792 42.66666699999996 186.432 42.66666699999996l652.842667 0c31.658667 0 56.277333 10.901333 56.725333 42.602667l64 0c24.661333 0 42.666667 34.325333 42.666667 59.114667L1002.069333 144.38400000000001zM128 149.26933299999996L64 149.26933299999996l0 469.333333 64 0L128 149.26933299999996zM853.333333 106.602667c0-6.421333-14.848-21.333333-21.333333-21.333333l-640 0c-6.485333 0-21.333333 14.848-21.333333 21.333333l0 554.666667c0 6.378667 9.258667 18.56 15.744 18.56l5.589333 2.773333 640 0c6.442667 0 21.333333-14.954667 21.333333-21.333333L853.333333 106.602667zM960 127.93600000000004l-64 0 0 490.666667 60.842667 1.984c4.970667 0 3.157333 2.944 3.157333-1.984l0-469.333333C960 144.29866700000002 965.013333 127.93600000000004 960 127.93600000000004zM412.458667 399.829333c43.925333 0 79.637333 34.773333 79.637333 77.482667 0 42.752-35.712 77.482667-79.637333 77.482667-43.925333 0-79.637333-34.730667-79.637333-77.482667C332.8 434.602667 368.533333 399.829333 412.458667 399.829333zM412.458667 516.0533330000001c21.952 0 39.829333-17.365333 39.829333-38.741333 0-21.333333-17.877333-38.741333-39.829333-38.741333-21.952 0-39.829333 17.408-39.829333 38.741333C372.629333 498.709333 390.506667 516.0533330000001 412.458667 516.0533330000001zM785.92 457.386667c-95.914667-23.338667-137.728-87.765333-168.256-134.805333-24.213333-37.269333-39.082667-58.346667-65.109333-58.346667l-0.042667 0c-35.456 0-57.109333 14.272-80.042667 28.16-24.362667 14.741333-49.536 29.952-88.64 29.952-75.648 0-156.906667-93.269333-165.930667-103.893333L213.333333 167.38133300000004c0-10.709333 8.917333-18.112 19.925333-18.112l557.504 0c10.986667 0 19.904 7.402667 19.904 18.112L810.666667 438.570667c0 5.973333-2.837333 11.626667-7.658667 15.296C798.186667 457.536 791.872 458.858667 785.92 457.386667zM770.858667 188.52266699999996L253.162667 188.52266699999996c24.874667 27.733333 85.290667 95.082667 130.666667 95.082667 27.733333 0 46.229333-11.157333 67.605333-24.128 25.152-15.168 53.632-32.426667 99.712-33.941333l2.944-0.064c47.637333 0 71.722667 37.12 97.237333 76.416 26.645333 41.088 56.469333 79.104 119.530667 102.485333L770.858667 188.52266699999996z" horiz-adv-x="1024" /> + + + <glyph glyph-name="help" unicode="" d="M690.2 741.8C635.2 783.6 573.2 798 494.6 798c-59.6 0-110.6-12.2-151-39.4C284 718 256 649.8 256 542l153.6 0c0 28.8-2.8 59.8 14 86.4 16.8 26.6 40.2 47 80.4 47 40.8 0 61.8-11.8 81.6-36.2 16.8-20.8 23.2-45.6 23.2-72 0-22.8-11.6-43.8-25.4-62.8-7.6-11.2-17.6-21.2-30.2-30.8 0 0-83-49.4-112.2-96.2-21.8-34.8-29.6-78.4-31.4-130.6-0.2-3.8 1.2-11.6 14.4-11.6 13 0 112 0 123.6 0 11.6 0 14 8.8 14.2 12.4 0.8 19 3.2 48.2 6.6 59.2 6.6 20.8 19.4 39 39.4 54.6l41.4 28.6c37.4 29.2 67.2 53 80.4 71.8 22.6 30.8 38.4 68.8 38.4 113.8C768 649 741 703.2 690.2 741.8zM484 155.6c-51.8 1.6-94.6-34.4-96.4-90.6-1.6-56.4 39-93.4 91-95 54-1.6 95.8 33.2 97.4 89.4C577.6 115.6 538 154 484 155.6z" horiz-adv-x="1024" /> + + + <glyph glyph-name="code-circle" unicode="" d="M513.544163 893.525741c-282.101629 0-510.78094-228.679311-510.78094-510.76288 0-282.083569 228.679311-510.76288 510.78094-510.76288s510.76288 228.679311 510.76288 510.76288C1024.325103 664.8464309999999 795.645793 893.525741 513.544163 893.525741zM513.544163-83.46335899999997c-257.503523 0-466.22622 208.740757-466.22622 466.22622S256.0587 848.989082 513.544163 848.989082s466.22622-208.740757 466.22622-466.22622S771.047686-83.46335899999997 513.544163-83.46335899999997zM171.771357 359.77212099999997L414.357086 256.088033 414.357086 300.805295 221.978945 380.50532599999997 414.357086 459.464886 414.357086 504.182148 171.771357 401.76228ZM442.585309 193.38272800000004L478.814238 193.38272800000004 584.737801 572.1429949999999 548.743656 572.1429949999999ZM612.749301 504.182148L612.749301 459.464886 804.874598 380.50532599999997 612.749301 300.805295 612.749301 256.088033 855.33503 359.77212099999997 855.33503 401.76228Z" horiz-adv-x="1025" /> + + + <glyph glyph-name="windows" unicode="" d="M437 329l0-325.5-341 47 0 278.5 341 0zm0 371.5l0-329.5-341 0 0 282.5zm491-371.5l0-393-453.5 62.5 0 330.5 453.5 0zm0 439l0-397-453.5 0 0 334.5z" horiz-adv-x="1024" /> + + + <glyph glyph-name="water" unicode="" d="M862.315763 33.684211000000005C802.869868 33.684211000000005 754.526289 82.94399999999996 754.526289 143.50371900000005 754.526289 162.33094700000004 759.35885 180.96056099999998 768.520956 197.43438600000002 768.64671 197.79368399999998 768.808394 198.15298199999995 769.006008 198.49431600000003L849.075622 334.542596 849.057657 334.542596 862.315763 357.052632 875.573868 334.542596 875.573868 334.542596 955.140464 199.356632C955.715341 198.67396499999995 956.164464 197.865544 956.380043 196.96729800000003 965.380464 180.60126300000002 970.123201 162.151298 970.105236 143.50371900000005 970.105236 82.94399999999996 921.761657 33.684211000000005 862.315763 33.684211000000005L862.315763 33.684211000000005ZM924.33064 188.57768399999998C924.204885 188.79326300000002 924.115061 189.02680699999996 924.025236 189.27831600000002L862.315763 302.996211 800.606289 189.260351C800.516464 189.02680699999996 800.42664 188.79326300000002 800.300885 188.57768399999998 793.977236 176.505263 790.635763 162.81600000000003 790.635763 148.965053 790.635763 105.29235100000005 822.792956 69.75775399999998 862.333727 69.75775399999998 901.856534 69.75775399999998 933.995763 105.29235100000005 933.995763 148.98301800000002 933.995763 162.81600000000003 930.654289 176.52322800000002 924.33064 188.57768399999998L924.33064 188.57768399999998ZM682.684605 392.982456C593.50678 392.982456 520.982429 469.602807 520.982429 563.8108070000001 520.982429 593.093614 528.240254 622.071018 541.965447 647.706947 542.163061 648.281825 542.396605 648.820772 542.684043 649.341754L662.815412 860.968421 662.797447 860.968421 682.684605 896 702.571763 860.968421 702.535833 860.968421 821.89471 650.689123C822.774991 649.647158 823.439692 648.3716489999999 823.781026 646.970386 837.25471 621.514105 844.368815 592.8241399999999 844.35085 563.8108070000001 844.35085 469.602807 771.844464 392.982456 682.684605 392.982456L682.684605 392.982456ZM791.408254 630.1192980000001C791.21064 630.4965609999999 791.030991 630.891789 790.887271 631.322947L682.684605 823.924772 574.446008 631.287018C574.320254 630.891789 574.140605 630.4965609999999 573.942991 630.1013330000001 562.840675 609.6931930000001 556.912254 596.075789 556.912254 572.631579 556.912254 498.634105 613.375973 428.876351 682.684605 428.876351 751.993236 428.876351 808.367131 489.058807 808.367131 563.056281 808.367131 586.500491 802.492605 609.6931930000001 791.408254 630.1192980000001L791.408254 630.1192980000001ZM538.695833 276.983018C540.115061 275.330246 541.174991 273.33614 541.713938 271.12645599999996 563.433517 231.11859600000003 574.895131 186.02666699999997 574.895131 140.43171900000004 574.895131-7.581192999999985 458.051341-128 314.403903-128 170.738499-128 53.89471-7.581192999999985 53.89471 140.43171900000004 53.89471 186.47578899999996 65.589868 231.998877 87.704675 272.294175 88.010078 273.17445599999996 88.387341 274.01880700000004 88.872394 274.863158L282.408394 607.411649 282.372464 607.411649 314.403903 662.45614 346.453306 607.411649 346.399412 607.411649 538.695833 276.983018 538.695833 276.983018ZM314.403903 590.614456L119.807973 257.79649099999995C119.556464 257.113825 119.251061 256.449123 118.873798 255.78442099999995 98.932745 220.48336800000004 88.387341 180.42161399999998 88.387341 139.91073700000004 88.387341 12.072420999999963 189.799271-91.89052600000002 314.421868-91.89052600000002 439.026499-91.89052600000002 540.420464 12.072420999999963 540.402499 139.91073700000004 540.402499 180.42161399999998 529.857096 220.50133300000005 509.916043 255.78442099999995 509.53878 256.449123 509.233377 257.131789 508.963903 257.86835099999996L314.403903 590.614456 314.403903 590.614456Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="username" unicode="" d="M514.594 824.888c-144.11 0-260.979-118.46-260.979-264.558 0-88.783 43.497-166.928 109.711-214.898-135.361-59.354-230.159-195.858-230.159-354.931h0.894c1.541-21.375 18.641-38.377 40.117-38.377s38.575 17.051 40.117 38.377h0.645c0 0.944-0.099 1.79-0.099 2.734 0 0.05 0 0.099 0 0.149 0 0.099-0.05 0.149-0.05 0.199 0.05 159.967 120 291.054 273.009 304.924 8.948-0.944 17.598-2.734 26.844-2.734 144.11 0 260.979 118.46 260.979 264.558s-116.919 264.558-261.029 264.558zM514.594 377.54499999999996c-99.769 0-180.698 81.972-180.698 183.183s80.879 183.183 180.698 183.183c99.719 0 180.647-81.972 180.647-183.183s-80.879-183.183-180.647-183.183zM896.021-6.615000000000009c0 0.348-0.199 0.645-0.199 0.994-1.043 105.038-43.397 200.034-111.35 269.131v0c-7.157 7.357-17.001 11.98-27.986 11.98-21.574 0-39.122-17.747-39.122-39.668 0-11.135 4.573-21.127 11.83-28.334l-0.099-0.05c52.742-55.229 85.302-130.589 85.302-213.853 0-1.043-0.149-1.987-0.149-3.034h0.994c1.491-21.375 18.691-38.377 40.117-38.377 21.475 0 38.575 17.051 40.117 38.377h0.597c0 0.796-0.099 1.491-0.099 2.287-0.05 0.149 0.05 0.348 0.05 0.547z" horiz-adv-x="1024" /> + + + <glyph glyph-name="find-fill" unicode="" d="M512 896C229.236364 896 0 666.763636 0 384c0-282.786909 229.236364-512 512-512s512 229.213091 512 512C1024 666.763636 794.763636 896 512 896zM657.291636 383.976727c0-77.195636-60.392727-139.729455-136.424727-144.407273l-175.732364-151.714909-22.877091 13.242182 58.228364 222.021818c-8.634182 18.548364-13.800727 39.074909-13.800727 60.858182 0 77.195636 60.369455 139.729455 136.378182 144.430545l175.802182 151.714909 22.877091-13.172364-58.251636-222.068364C652.125091 426.309818 657.291636 405.806545 657.291636 383.976727zM512 384m-66.048 0a2.838 2.838 0 1 1 132.096 0 2.838 2.838 0 1 1-132.096 0Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="about" unicode="" d="M514.27174 834.607768c-249.516844 0-451.789687-202.272843-451.789687-451.789687s202.272843-451.789687 451.789687-451.789687 451.789687 202.272843 451.789687 451.789687S763.788583 834.607768 514.27174 834.607768zM514.27174-20.12919999999997c-222.541469 0-402.947282 180.405813-402.947282 402.947282s180.405813 402.947282 402.947282 402.947282 402.947282-180.405813 402.947282-402.947282S736.814232-20.12919999999997 514.27174-20.12919999999997zM514.295276 593.979362c-9.44614-10.360975-14.307867-22.951735-14.307867-37.483706 0-11.960403 3.886517-22.396079 11.534707-30.457686 7.783267-8.211009 17.853623-12.450567 29.313629-12.450567 9.312086 0 23.139 2.849908 35.782971 16.900925 9.865695 10.641361 14.866592 23.437805 14.866592 37.693484 0 11.68104-4.031826 21.900799-11.744485 29.832446C562.925856 615.325529 532.358677 613.449809 514.295276 593.979362zM549.461193 293.282882c-12.110829-11.541871-20.589944-18.759249-26.236548-23.316032 2.77009 14.953573 9.976212 44.614104 27.330462 103.023398 17.297968 57.890478 18.799158 67.991534 18.799158 72.955592 0 8.65717-3.63683 16.335037-9.921977 21.642926-14.124695 11.661597-39.035038 9.349949-69.131497-7.677866-16.779152-9.408277-34.595936-24.759917-54.493102-46.576805l-10.377348-11.541871 34.425044-26.548656 8.818853 8.715499c9.573029 9.292644 16.086373 15.35164 20.411889 19.393699-26.294876-86.460164-39.093367-140.190903-39.093367-164.262134 0-10.907421 3.172249-19.970844 9.573029-26.839275 6.460132-7.039323 15.510252-10.736529 25.891693-10.736529 10.146081 0 21.792329 3.926426 35.922141 11.949146 12.741185 7.212262 31.883151 23.029506 58.641585 48.190559l10.837836 10.391674-31.30703 30.475082L549.461193 293.282882z" horiz-adv-x="1024" /> + + + <glyph glyph-name="location" unicode="" d="M451.673935-98.39569900000004C478.883834-129.01914699999998 524.254807-128.8089789999999 551.400292-97.92885100000001 553.755808-95.38790800000004 558.821323-89.79676199999994 565.872444-81.84834999999998 577.572838-68.65901699999995 590.597131-53.62432000000001 604.615947-36.99831500000005 644.662065 10.495494000000008 684.708678 61.282182000000034 722.129538 113.35355300000003 759.658524 165.575381 792.492213 216.29072599999995 819.314991 264.54153799999995 868.685946 353.35368300000005 896 430.456574 896 493.714285 896 715.890551 719.301715 896 501.333333 896 283.364952 896 106.666667 715.890551 106.666667 493.714285 106.666667 430.401284 134.05152 353.19426999999996 183.54613 264.23737800000004 210.371803 216.02347099999997 243.193308 165.34812399999998 280.699364 113.16684599999996 318.155192 61.05544999999995 358.239268 10.22578999999996 398.322835-37.31103099999996 412.354743-53.95207300000004 425.391185-69.00072999999998 437.102468-82.20257900000001 444.160087-90.15846599999998 449.230214-95.75492099999997 451.982775-98.73670600000003L451.673935-98.39569900000004ZM486.822684-65.32134799999994C484.281231-62.568254000000024 479.425084-57.207989 472.585916-49.49835900000005 461.135889-36.591016999999965 448.364015-21.84776099999999 434.602351-5.527214999999956 395.275714 41.11192700000004 355.949587 90.98045200000001 319.289224 141.985137 282.808749 192.739548 250.983685 241.87642200000005 225.158316 288.29247799999996 179.388826 370.55419500000005 154.50505 440.709839 154.50505 493.714285 154.50505 688.960095 309.785362 847.238095 501.333333 847.238095 692.881306 847.238095 848.161617 688.960095 848.161617 493.714285 848.161617 440.753978 823.345286 370.701737 777.693969 288.58074899999997 751.873483 242.13293399999998 720.038415 192.96007499999996 683.537446 142.16873799999996 646.912604 91.20503299999996 607.624538 41.38032599999997 568.335977-5.21503800000005 554.587654-21.52024300000005 541.828177-36.24924999999996 530.389289-49.14379699999995 523.556841-56.84571100000005 518.705521-62.20043499999997 516.166694-64.95052599999997 507.543772-74.74891100000002 495.255793-74.80583000000001 487.131524-65.66235300000005L486.822684-65.32134799999994ZM714.955981 428.971194C723.919106 453.372045 728.565658 479.331002 728.565658 505.904762 728.565658 627.091817 632.184774 725.333333 513.29293 725.333333 394.401086 725.333333 298.020202 627.091817 298.020202 505.904762 298.020202 384.717709 394.401086 286.47619 513.29293 286.47619 549.003859 286.47619 583.510052 295.36805300000003 614.373097 312.125591 626.032316 318.456132 630.449257 333.22218 624.238611 345.10648100000003 618.027966 356.99078199999997 603.541579 361.49299399999995 591.882359 355.16245100000003 567.900883 342.14136099999996 541.111735 335.23809500000004 513.29293 335.23809500000004 420.821495 335.23809500000004 345.858586 411.648164 345.858586 505.904762 345.858586 600.161359 420.821495 676.571428 513.29293 676.571428 605.764365 676.571428 680.727273 600.161359 680.727273 505.904762 680.727273 485.192019 677.117041 465.022684 670.154965 446.069408 665.522846 433.459117 671.796821 419.408892 684.168282 414.687349 696.53974 409.965809 710.323861 416.360905 714.955981 428.971194L714.955981 428.971194Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="up" unicode="" d="M513.6 539.2l384-384c12.8-12.8 32-12.8 44.8 0 12.801 12.8 12.801 32 0 44.8l-403.2 403.2C532.8 609.6 520 616 513.6 616c-6.4 0-19.2 0-25.599-6.4L78.399 200c-12.8-12.8-12.8-32 0-44.8s32-12.8 44.8 0L513.6 539.2z" horiz-adv-x="1024" /> + + + <glyph glyph-name="pause" unicode="" d="M512-128c-282.714 0-511.893 229.232-511.893 512 0 282.768 229.179 512 511.893 512 282.714 0 511.893-229.232 511.893-512 0-282.768-229.179-512-511.893-512zM512 863.996c-265.043 0-479.9-214.91-479.9-479.996 0-265.097 214.857-479.996 479.9-479.996 265.043 0 479.9 214.899 479.9 479.996 0 265.086-214.857 479.996-479.9 479.996zM639.973 181.32299999999998h-21.329c-23.558 0-42.658 19.1-42.658 42.658v319.933c0 23.558 19.1 42.658 42.658 42.658h21.329c23.558 0 42.658-19.1 42.658-42.658v-319.933c0-23.558-19.1-42.658-42.658-42.658zM405.356 181.32299999999998h-21.329c-23.558 0-42.658 19.1-42.658 42.658v319.933c0 23.558 19.1 42.658 42.658 42.658h21.329c23.558 0 42.658-19.1 42.658-42.658v-319.933c0-23.558-19.1-42.658-42.658-42.658z" horiz-adv-x="1024" /> + + + <glyph glyph-name="date" unicode="" d="M933.185668 758.3591759999999l-167.054737 0 0 56.506968L732.333174 814.866145l0-56.506968L539.505447 758.3591759999999l0 56.506968-33.796734 0 0-56.506968-216.255299 0 0 56.506968-33.796734 0 0-56.506968L88.005356 758.3591759999999c-12.255115 0-22.224164-9.970072-22.224164-22.224164l0-706.60521c0-12.255115 9.970072-22.225187 22.224164-22.225187l845.179288 0c12.255115 0 22.225187 9.970072 22.225187 22.225187L955.409832 736.135012C955.409832 748.389104 945.43976 758.3591759999999 933.185668 758.3591759999999zM939.036933 29.528778999999986c0-3.226484-2.62478-5.852288-5.852288-5.852288l-845.179288 0c-3.226484 0-5.851265 2.62478-5.851265 5.852288L82.154092 736.135012c0 3.226484 2.62478 5.851265 5.851265 5.851265l167.650301 0 0-55.657624 33.796734 0 0 55.657624 216.255299 0 0-55.657624 33.796734 0 0 55.657624L732.333174 741.986277l0-55.657624 33.796734 0 0 55.657624 167.054737 0c3.226484 0 5.852288-2.62478 5.852288-5.851265L939.036933 29.528778999999986zM206.835765 608.260623l129.098263 0 0-94.008071-129.098263 0 0 94.008071ZM458.879152 608.260623l129.098263 0 0-94.008071-129.098263 0 0 94.008071ZM684.827207 608.260623l129.098263 0 0-94.008071-129.098263 0 0 94.008071ZM206.835765 433.345871l129.098263 0 0-94.008071-129.098263 0 0 94.008071ZM458.879152 433.345871l129.098263 0 0-94.008071-129.098263 0 0 94.008071ZM684.827207 433.345871l129.098263 0 0-94.008071-129.098263 0 0 94.008071ZM206.835765 257.877511l129.098263 0 0-94.008071-129.098263 0 0 94.008071ZM458.879152 257.877511l129.098263 0 0-94.008071-129.098263 0 0 94.008071ZM684.827207 257.877511l129.098263 0 0-94.008071-129.098263 0 0 94.008071Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="layim-uploadfile" unicode="" d="M914.7359263333336 663.0359498888887c-20.806884999999987 20.806885000000012-48.471967999999976 32.265868000000026-77.89816099999994 32.265868000000054l-352.221993 2.2737367544323206e-13-120.26099099999992 95.03035300000005-11.157106999999995 8.816806000000007-14.220886 9.769962616701378e-15L197.09333633333344 799.148976888889c-51.69538300000001 2.1316282072803006e-14-93.75224400000005-42.88778599999995-93.75224400000006-95.60442799999993l-1.5631940186722204e-13-255.13888799999998c-1.7763568394002505e-15-2.302439 0.08391099999999785-4.716417999999999 0.24968699999999489-7.196911999999999l-1.9895196601282805e-13-340.692403c-1.9539925233402755e-14-29.426192999999998 11.458982999999954-57.09127599999999 32.26586799999994-77.89816100000002 20.806884999999987-20.806885000000012 48.471967999999976-32.265868000000026 77.89816099999994-32.265868000000054l623.083981-3.410605131648481e-13c29.426192999999998-1.9539925233402755e-14 57.09127599999999 11.458982999999954 77.89816100000002 32.26586799999994 20.806885000000012 20.806884999999987 32.265868000000026 48.471967999999976 32.265868000000054 77.89816099999994L947.0028173333335 585.1377888888885C947.0017943333336 614.5639818888885 935.5428113333334 642.2280418888886 914.7359263333336 663.0359498888887zM197.09333633333372 758.2167298888891l141.88345099999998-8.526512829121202e-14L470.3948853333333 654.369569888889l366.44287999999995-2.2737367544323206e-13c38.236859-2.1316282072803006e-14 69.23178099999997-30.99492100000004 69.23178099999994-69.23178100000004L906.0695463333333 465.9195468888886 144.27334033333327 465.91954688888893 144.2733403333336 703.5445488888892C144.2733403333336 733.7361748888891 167.92296933333355 758.2167298888891 197.09333633333372 758.2167298888891zM836.8377653333331 31.28558888888881L213.75480733333322 31.28558888888915c-38.236859 2.1316282072803006e-14-69.23178099999997 30.99492100000004-69.23178099999994 69.23178100000004L144.52302633333338 424.4776928888892l761.546519-6.252776074688882e-13-2.2737367544323206e-13-323.96134599999993C906.0695463333333 62.28050988888867 875.0746243333334 31.285588888888583 836.8377653333331 31.28558888888881z" horiz-adv-x="1024" /> + + + <glyph glyph-name="delete" unicode="" d="M738.923 24.288h-451.956c-27.2 0-49.327 21.603-49.327 48.157v418.017c0 26.548 22.129 48.147 49.327 48.147h451.956c27.2 0 49.327-21.598 49.327-48.147v-418.017c0-26.555-22.129-48.157-49.327-48.157zM286.966 494.547c-4.447 0-7.168-2.644-7.168-4.084v-418.017c0-1.443 2.722-4.093 7.168-4.093h451.956c4.448 0 7.168 2.651 7.168 4.093v418.017c0 1.44-2.722 4.084-7.168 4.084h-451.956zM832.199 496.302h-640.401c-27.201 0-49.327 20.131-49.327 44.876v61.045c0 24.74 22.128 44.867 49.327 44.867h640.401c27.2 0 49.327-20.127 49.327-44.867v-61.045c0-24.744-22.129-44.876-49.327-44.876zM184.631 541.327c0.387-0.733 2.722-2.866 7.168-2.866h640.401c4.445 0 6.782 2.132 7.168 2.867v60.741c-0.393 0.736-2.733 2.863-7.168 2.863h-640.401c-4.437 0-6.776-2.128-7.168-2.863v-60.742zM600.748 605.354h-174.546c-27.201 0-49.327 20.13-49.327 44.876v10.736c0 24.74 22.128 44.867 49.327 44.867h174.546c27.2 0 49.327-20.126 49.327-44.867v-10.736c0-24.745-22.128-44.876-49.327-44.876zM419.034 650.378c0.387-0.733 2.722-2.865 7.168-2.865h174.546c4.446 0 6.782 2.131 7.168 2.865v10.432c-0.393 0.736-2.734 2.862-7.168 2.862h-174.546c-4.437 0-6.776-2.126-7.168-2.862v-10.432zM404.099 430.833h-30.097c-7.297 0-13.213-5.916-13.213-13.213v-272.34c0-7.297 5.916-13.212 13.213-13.212h30.098c7.297 0 13.212 5.916 13.212 13.212v272.341c0 7.297-5.916 13.213-13.212 13.213zM659.583 430.833h-30.097c-7.298 0-13.213-5.916-13.213-13.213v-272.34c0-7.297 5.917-13.212 13.213-13.212h30.097c7.297 0 13.212 5.916 13.212 13.212v272.341c0 7.297-5.916 13.213-13.212 13.213zM531.841 430.833h-30.098c-7.297 0-13.213-5.916-13.213-13.213v-272.34c0-7.297 5.917-13.212 13.213-13.212h30.098c7.297 0 13.212 5.916 13.212 13.212v272.341c0 7.297-5.916 13.213-13.212 13.213z" horiz-adv-x="1024" /> + + + <glyph glyph-name="play" unicode="" d="M512 896C229.376 896 0 666.624 0 384 0 101.37599999999998 229.376-128 512-128 794.624-128 1024 101.37599999999998 1024 384 1024 666.624 794.624 896 512 896L512 896 512 896zM512-95.23199999999997C245.76-95.23199999999997 32.768 117.75999999999999 32.768 384 32.768 650.24 245.76 863.232 512 863.232S991.232 650.24 991.232 384C991.232 117.75999999999999 778.24-95.23199999999997 512-95.23199999999997L512-95.23199999999997 512-95.23199999999997zM733.184 392.192L393.216 588.8c-4.096 4.096-8.192 4.096-12.288 0C376.832 588.8 372.736 584.704 372.736 580.608l0-393.216c0-4.096 4.096-8.192 4.096-8.192 4.096-4.096 8.192-4.096 12.288 0l344.064 196.608c4.096 4.096 4.096 4.096 4.096 8.192C741.376 388.096 737.28 392.192 733.184 392.192L733.184 392.192 733.184 392.192zM733.184 392.192" horiz-adv-x="1024" /> + + + <glyph glyph-name="top" unicode="" d="M812 153.4l-300 172.8-300-172.8 300 604L812 153.4zM264.5 209.2l247.5 142.5 247.5-142.5L512 707.5 264.5 209.2zM371.7 138.3l0-126.2-15.9 0 0 126.2-45.9 0L309.9 153l107.4 0 0-14.8L371.7 138.2zM506.6 154.5c26.6 0 43.3-3.9 50-11.7 6.7-7.8 10-27.2 10-58.3 0-33.5-3.2-54.2-9.6-62-6.4-7.8-23.2-11.8-50.4-11.8-27 0-43.8 3.9-50.3 11.7-6.5 7.8-9.8 27.9-9.8 60.3l0 9.9 0.2 13.3c0 18.7 4.2 31.5 12.6 38.4C467.8 151 483.5 154.5 506.6 154.5zM506.5 141c-22.3 0-35.3-2.5-39.1-7.4-3.8-5-5.7-22-5.7-51 0-29.1 1.9-46.1 5.7-51.1 3.8-5 16.8-7.4 39.1-7.4 22.4 0 35.4 2.5 39.2 7.4 3.8 5 5.7 22 5.7 51.1l0 9.2-0.1 13.3c0 15.6-2.6 25.4-7.8 29.6S525.9 141 506.5 141zM608.4 12.1 608.4 153l59.2 0 5.4 0c15.9 0 26.7-3.1 32.5-9.2 5.8-6.1 8.7-17.6 8.7-34.4 0-16.1-3-27.1-9-32.9-6-5.9-17.3-8.8-33.9-8.8l-6.2-0.1-40.7 0 0-55.5L608.4 12.1zM624.3 81.1l37.7 0c15.8 0 25.9 1.6 30.3 4.9 4.4 3.2 6.7 10.7 6.7 22.3 0 13.6-1.5 22.2-4.5 25.9-3 3.6-10.1 5.4-21.3 5.4l-6.1 0.1-42.7 0L624.4 81.1z" horiz-adv-x="1024" /> + + + <glyph glyph-name="firefox" unicode="" d="M516.010667-128q-161.706667 0-288.277333 85.994667t-188.288 227.712q-33.152 74.858667-38.293333 172.010667t14.848 189.994667 63.424 178.282667 102.293333 138.581333l-6.293333-160.576q6.293333 8 38.848 8.853333t40-8.853333q24 46.293333 91.712 78.848t133.994667 33.706667q-30.848-25.706667-68.288-84.864t-33.429333-93.418667q14.293333-4.565333 35.712-7.722667t36.010667-4.288 38.848-2.282667 28.864-1.706667q8.576-2.858667 5.418667-26.005333t-17.429333-43.136q-2.858667-4.010667-9.429333-10.581333t-32.277333-20.288-57.706667-19.434667l8.576-108.010667-79.424 38.293333q-10.282667-24.576-4.288-46.570667t20.565333-37.994667 37.418667-23.722667 46.293333-3.712q29.141333 5.141333 56 19.712t47.722667 25.706667 42.005333 10.005333q34.858667-2.282667 51.136-18.858667t11.136-37.141333q-0.576-1.152-1.429333-3.136t-4.864-7.146667-10.282667-8.853333-18.005333-5.994667-26.581333-0.576q-34.282667-54.293333-82.581333-77.418667t-119.722667-16.853333q42.282667-34.858667 92.864-47.146667t96.277333-3.434667 88.277333 29.717333 73.152 50.005333 45.994667 59.434667q24.576 52.010667 22.293333 109.994667t-21.418667 107.712-44.864 71.424q49.706667-21.717333 78.293333-45.418667t44.010667-64.277333q8.576 97.152-32.853333 196.010667t-119.722667 162.282667q151.424-44.010667 235.434667-159.722667t86.293333-295.722667q1.152-72.576-23.146667-145.706667t-70.570667-136-108.010667-112-141.418667-77.418667-164.864-28.288z" horiz-adv-x="1025" /> + + + <glyph glyph-name="friends" unicode="" d="M672.02974 765.933689c7.66047-32.266891 8.420787-62.237483 7.713682-95.365998-0.283456-12.778024-7.291057-71.832002-5.3918-89.926102 1.561565-14.936177 5.132904-16.128329 10.759041-28.436656 9.803273-21.422915 6.51846-50.970882 2.76088-72.566736-2.056845-11.816117-6.404873-28.64541-13.017478-38.287001-7.291057-10.645454-21.864984-10.711969-28.319999-23.12365-9.29469-17.848507-4.045129-42.930765-9.903557-62.21497-6.65763-21.883403-23.599488-23.420409-24.877597-52.040237 8.316409-1.243317 16.59598-2.479471 24.877597-3.722788 8.316409-18.498306 23.533996-55.70265 39.08518-66.900689 13.024641-3.728928 26.048259-7.448646 39.07904-11.156084 45.641503-19.593244 96.365768-43.032072 142.108578-63.215764 41.656749-18.381649 91.51325-24.937972 106.575294-70.629617 0-31.026644 2.795673-104.309694 2.025123-144.978952L58.155515-56.631556000000046c-0.757247 40.669258 2.029216 113.952308 2.029216 144.978952 15.065114 45.691645 64.928778 52.247968 106.578364 70.629617 45.74281 20.182668 96.467075 43.62252 142.098345 63.215764 13.027711 3.707438 26.054399 7.427156 39.08211 11.156084 15.554254 11.197016 30.78105 48.402383 39.09439 66.900689l18.492166 4.710278c-4.196579 24.429389-18.658965 26.322505-24.682146 43.62559-2.356674 26.013467-4.729721 52.052516-7.095605 78.079286 0.107447-1.234107-17.006326 3.246951-19.252483 4.716418-24.130583 15.838733-24.618701 80.075757-26.941606 106.793258-1.063215 12.222369 15.163351 22.240537 10.654664 44.62536-26.433022 131.125433 11.437493 219.776496 71.330582 240.123916 41.564651 17.633612 119.167077 50.323129 191.563944 3.716648l17.971303-17.428951 29.061896-5.237281C662.71663 795.172617 672.02974 765.933689 672.02974 765.933689z" horiz-adv-x="1024" /> + + + <glyph glyph-name="refresh-3" unicode="" d="M820.376904 697.14807C740.637816 774.519228 631.884926 822.157201 511.999488 822.157201c-244.621347 0-442.925808-198.305485-442.925808-442.926832 0-244.6193 198.304462-442.925808 442.925808-442.925808 206.075449 0 379.271046 140.739395 428.740738 331.337337L822.859445 267.64189899999997c-45.759183-127.45381-167.656441-218.623229-310.859957-218.623229-182.371584 0-330.210677 147.842163-330.210677 330.210677 0 182.371584 147.840116 330.2117 330.210677 330.2117 88.762603 0 169.32443-35.035958 228.655723-92.015693L557.051567 433.822732l280.641725 0 113.880677 0 3.351328 0L954.925297 831.695438 820.376904 697.14807z" horiz-adv-x="1024" /> + + + <glyph glyph-name="ok" unicode="" d="M960 640L915.2 684.8 371.2 172.79999999999995 108.8 454.4 64 409.6 358.4 83.20000000000005 364.8 89.60000000000002 371.2 83.20000000000005Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="layer" unicode="" d="M96.089 724.318l0-684.236 831.822 0L927.911 724.318 96.089 724.318zM884.178 84.457L140.464 84.457 140.464 489.559l743.714 0L884.178 84.457z" horiz-adv-x="1024" /> + + + <glyph glyph-name="face-smile-fine" unicode="" d="M511.558443 852.9315573333333c-246.787686 0-447.597201-200.783932-447.597201-447.598224 0-246.815315 200.783932-447.598224 447.597201-447.598224 246.841921 0 447.64939 200.782909 447.64939 447.598224C959.207833 652.1476253333334 758.400365 852.9315573333333 511.558443 852.9315573333333zM511.558443-4.962310666666667c-226.247884 0-410.295644 184.046736-410.295644 410.295644 0 226.249931 184.072319 410.296667 410.295644 410.296667 226.27449 0 410.346809-184.046736 410.346809-410.296667C921.905252 179.08442633333334 737.832933-4.962310666666667 511.558443-4.962310666666667zM724.38055 303.5726953333334c-9.698896 3.457752-20.366863-1.566682-23.848151-11.264555-28.500101-79.45461-104.372116-132.844587-188.82353-132.844587-84.798315 0-160.770614 53.689806-189.070146 133.590578-3.432169 9.723455-14.075577 14.772448-23.823592 11.364839-9.699919-3.432169-14.797008-14.100136-11.364839-23.823592 33.547047-94.77248 123.668601-158.434405 224.234017-158.434405 100.142791 0 190.140525 63.314001 223.935212 157.564595C739.125369 289.3978573333334 734.102982 300.0903843333334 724.38055 303.5726953333334zM302.49494 515.3479593333334c0-24.653493 19.98517-44.638663 44.638663-44.638663 24.653493 0 44.638663 19.98517 44.638663 44.638663s-19.98517 44.63764-44.638663 44.63764C322.48011 559.9855993333333 302.49494 540.0014523333333 302.49494 515.3479593333334L302.49494 515.3479593333334zM631.398856 515.3479593333334c0-24.653493 19.98517-44.638663 44.63764-44.638663 24.653493 0 44.63764 19.98517 44.63764 44.638663s-19.984147 44.63764-44.63764 44.63764C651.384026 559.9855993333333 631.398856 540.0014523333333 631.398856 515.3479593333334L631.398856 515.3479593333334z" horiz-adv-x="1024" /> + + + <glyph glyph-name="dollar" unicode="" d="M517.565-65.45399999999995c-244.263 0-442.299 198.014-442.299 442.299s198.014 442.299 442.299 442.299c244.263 0 442.299-198.014 442.299-442.299 0-244.263-198.014-442.299-442.299-442.299zM517.565 863.383c-268.751 0-486.564-217.834-486.564-486.564s217.834-486.564 486.564-486.564c268.751 0 486.564 217.834 486.564 486.564 0 268.751-217.834 486.564-486.564 486.564zM497.036 425.349c-18.443 6.957-33.605 16.314-45.238 27.617-11.581 11.306-20.059 23.465-25.468 36.742-5.423 13.177-8.178 26.235-8.178 39.172-0.004 18.194 2.564 34.357 7.846 48.514 5.327 14.231 13.748 25.85 25.468 35.02 11.581 9.167 26.798 15.204 45.482 18.295v-205.52zM534.455 356.13199999999995c16.937-6.756 32.277-14.997 46.035-24.855 13.748-9.678 24.613-21.601 32.929-35.57 8.204-13.909 12.436-30.734 12.622-50.307 0-14.231-1.859-27.907-5.785-40.833-3.858-12.866-9.542-24.531-17.271-34.804-7.691-10.211-17.271-18.443-28.678-24.613-11.328-6.318-24.613-9.678-39.76-10.341v221.377zM534.455 94.18299999999999c29.037 3.318 53.978 11.306 74.785 24.134 20.985 12.866 37.018 30.15 48.281 51.734 11.125 21.535 16.876 46.832 16.937 76.196 0 16.08-1.67 30.377-5.033 42.985-3.318 12.622-8.204 24.15-14.836 34.357-6.739 10.341-14.836 20.189-24.613 29.326-8.853 8.204-19.107 15.957-30.659 23.041-11.328 7.197-22.836 13.706-34.281 19.261-11.581 5.694-21.601 10.516-30.659 14.231v221.377c14.527-3.318 26.662-8.594 36.62-16.192 9.859-7.395 17.766-16.192 23.776-26.384 5.941-10.211 10.341-20.985 12.972-32.345 2.666-11.328 4.026-22.836 3.858-34.097h46.155c0.004 16.314-1.566 32.345-5.327 48.281-3.543 15.957-9.938 30.909-19.107 44.969-8.996 13.909-21.601 26.235-37.684 36.742-16.192 10.521-36.62 18.295-61.318 23.562v49.426h-37.441v-53.316c-23.465-2.624-42.985-8.178-58.595-16.314-15.633-8.204-28.279-18.194-37.684-29.562-9.441-11.328-16.523-23.302-21.226-35.317-4.59-12.062-7.846-23.302-9.316-33.326-1.566-10.211-2.256-18.194-2.115-24.029 0.004-21.601 3.452-40.612 9.863-57.238 6.479-16.523 15.58-30.909 27.178-43.441 11.659-12.436 25.361-23.562 40.833-33.204 15.633-9.678 32.649-18.443 51.098-26.235v-237.329c-18.194 1.984-33.326 7.197-45.094 15.633-11.97 8.369-21.074 19.107-27.714 31.902-6.739 12.972-11.011 27.178-13.363 42.701-2.256 15.58-3.034 31.313-2.115 47.367h-47.803c-1.183-23.776 0.397-46.035 5.033-66.676s12.357-39.03 23.376-55.019c10.892-16.08 25.361-29.037 43.142-39.03 17.847-9.863 39.472-16.08 64.586-18.295v-65.283h37.441v65.283z" horiz-adv-x="1024" /> + + + <glyph glyph-name="group" unicode="" d="M1328.72893437-13.274022189999982L1325.7954575 10.932401249999998 1319.19311938 40.27361905999999 1309.65730438 68.14729219000003 1296.45423969 96.75473719000001 1283.25117594 118.75984405999998 1264.91331781 140.03117906 1244.37414312 156.90310406000003 1215.76669813 173.03964562 1195.22913594 182.57546062999995 1168.08923563 189.17779874999997 1140.94772187 195.77852437 1117.47507031 204.58056750000003 1088.13546594 218.51740312000004 1064.66281438 229.52076375000001 1036.05536844 242.72382749999997 1014.0502625 255.19473187999995 1014.0502625 332.94718406000004 1023.58446406 343.95054469 1032.38811969 358.61954062999996 1038.98884531 373.29014906 1044.12363969 391.62800719 1049.992205 413.63472656 1052.19191 430.50504 1055.370515 429.77126719 1061.727725 430.75016813 1066.61900281 434.662545 1071.99731188 443.46458812 1075.42104594 453.7325625 1077.37723437 466.4469825 1079.82206656 489.43099031 1080.799355 508.991265 1079.82206656 525.61806187 1076.39833344 535.88764969 1069.55247969 539.80002656 1065.64010188 538.82112656 1069.06383594 560.82623344 1071.99731188 587.2339743800001 1072.97621281 611.19526969 1072.48595656 630.26689969 1069.55247969 647.870985 1064.17255719 664.98642656 1056.83805969 680.63432344 1046.56847188 698.24002125 1034.83295281 712.91063063 1021.13963187 724.15750594 1003.53554656 735.40438125 981.53043969 745.67396812 962.94745344 750.56363437 940.45370281 754.47601125 918.4469825 754.964655 895.95323188 751.05227812 874.43676969 743.71777969 855.36513875 735.893025 838.73834188 725.1347934400001 823.33396063 711.44308594 808.66335125 695.30493188 795.4602875 676.23330187 785.9244725 655.69573969 780.05751875 632.22308813 779.32374687 602.14809844 782.25722375 574.27442531 785.9244725 538.3324818799999 777.85620219 538.3324818799999 772.72140875 531.73014375 771.25547656 519.99462469 772.72140875 492.12095156 776.3886575 459.84625688 779.32374687 443.70810375 784.45854031 434.90606063 793.99435531 429.77126719 799.86130906 430.50504 803.53017031 404.83268344 807.19742 389.42830219 813.06598531 372.55637719000003 821.13425656 355.68606375 830.67007156 342.48299999999995 838.00456906 332.94718406000004 837.27079719 253.72718719 845.06329813 250.99690875 855.81346625 248.0392425 867.37158969 243.73981969 878.39107625 239.43878530999996 888.6058325 235.67638781000005 897.74331406 231.10603405999996 908.76441312 226.53729375 920.85956187 219.54952313 932.95471062 212.56014000000005 942.898535 205.30305094000005 955.80002656 195.62693156 966.82112656 185.41378874999998 977.30358781 172.51229719000003 988.32307531 158.26743750000003 1000.01505219 141.87125344000003 1010.0943425 122.51901655999995 1018.69641219 101.55409219 1026.22120719 82.20185436999998 1031.46243781 64.05913219000001 1035.09098281 45.110066250000045 1038.71952688 23.741970000000038 1041.13855625-1.2546703100000514 1041.54172812-18.187877810000032 1040.73538531-33.30681374999995 1037.30842625-44.99879062000002 1030.79156-57.83254968999995 1023.19742-66.36688593999997 1009.28799875-73.42238906 1298.65555719-73.42238906 1311.85862094-66.82005093999999 1322.12820875-56.552076560000046 1328.72893437-45.54871687000002 1330.19647906-31.611880309999947ZM443.23504906 789.36487031L427.10818437 771.62531906 412.59400625 750.66039469 402.11154406 728.08278469 395.66079781 702.27980156 394.854455 669.21972844 398.07982813 638.57868562 402.11154406 599.06786719 393.24176844 599.06786719 387.59736594 591.81077812 385.98467938 578.90928656 387.59736594 548.26824375 391.62908187 512.7891412500001 394.854455 495.04959 400.4988575 485.37347156 410.98131969 479.72906906 417.43206594 480.53541188 421.46378187 452.31339844 425.49549781 435.38019094 431.94624406 416.83429687 440.81601969 398.28840187 451.29848094 383.77422375000003 459.36191375 373.29176156000005 458.55557094 286.20669281000005 444.84773562 277.33691719 412.59400625 262.01639531 379.53393406 247.50221719 352.92460719 234.60072562000005 331.95968281 225.73095 308.57572906 218.47386094 284.3854325 213.63580125 261.00147875 207.99139875000003 236.81118125 197.50893656000005 214.23357031 186.22013156000003 194.07498969 171.70595344000003 171.49737969 149.12834250000003 155.370515 125.74438874999998 143.27536625 103.16677875000005 133.59924781 78.97648125 123.92312844 51.56081156000005 119.08506875 29.789544370000044 115.05335281 11.243650310000021 112.63432344-10.527616869999974 112.63432344-29.879854690000002 115.85969656-49.23209250000002 125.535815-62.133584059999976 140.04999313-71.80970344000002 158.59588719-73.42238906 965.74546437-73.42238906 980.2596425-66.1653 991.5484475-54.87649499999998 998.80553656-42.781346249999956 1000.41822312-27.46082531000002 998.80553656-7.302244689999952 995.58016438 19.30708218999996 988.32307531 51.56081156000005 977.84061313 82.20185436999998 963.326435 113.64924094000003 948.81225688 137.8395375 928.65367531 161.22349125000005 906.07606531 179.76938625000003 874.62867875 197.50893656000005 852.05106875 207.99139875000003 822.21636875 215.24848781000003 792.38166875 222.50557688000004 766.57868562 232.18169624999996 734.32495625 247.50221719 708.52197312 259.59736594000003 677.07458656 274.11154406 652.88429 287.81937937 652.88429 373.29176156000005 663.36675219 385.38691031 673.04287063 401.513775 680.29995969 417.64063969 685.94436219 437.79922031 692.39510844 461.98951781 694.81413781 480.53541188 698.30882938 479.72906906 705.2966 480.80473031 710.67168406 485.10415312 716.585405 494.78027156 720.3478025 506.06907656 722.49912688 520.04623031 725.18586219 545.31218906 726.26152437 566.8141378099999 725.18586219 585.09071344 721.42346469 596.3795184400001 713.89705719 600.68055375 709.59763438 599.6048915599999 713.36003188 623.79518906 716.585405 652.82354531 717.66106719 679.16516625 717.12242937 700.13008969 713.89705719 719.4823275 707.98494781 738.2959275000001 699.92151594 755.49845437 688.63271094 774.85069219 675.73121937 790.97755688 660.67840344 803.34202406 641.32616563 815.70487875 617.13586906 826.99368375 596.7095825 832.37038031 571.98064812 836.66980219 547.79035063 837.20844 523.06302875 832.90740469 499.40975656 824.84397281 478.44483313 816.24351562 460.16825656 804.4160728100001Z" horiz-adv-x="1449" /> + + + <glyph glyph-name="layim-download" unicode="" d="M186.888458 77.07363199999998l0 581.729108c14.85022-14.450107 35.050284-23.436782 57.359382-23.436782l560.03604 0 0-151.561881 25.029046 0 0 176.591951-585.065086 0c-31.191396 0-57.359382 26.166963-57.359382 57.359382 0 31.191396 26.165939 57.359382 57.359382 57.359382l572.551074 0L816.798914 800.143838 244.24784 800.143838c-45.431725 0-82.388429-36.957727-82.388429-82.388429l0-640.681778c0-41.796942 34.000372-75.789127 75.789127-75.789127l225.950102 0 0 25.029046L237.648538 26.31355099999996C209.661114 26.31355099999996 186.888458 49.078021000000035 186.888458 77.07363199999998zM236.947574 730.269421l560.38601 0 0-25.029046-560.38601 0 0 25.029046ZM686.086897 428.171012c-85.917812 0-164.908864-55.248302-194.553021-135.882783-30.013571-81.641415-4.269233-175.567621 62.624293-230.942813 67.00302-55.465243 164.474982-62.808488 238.931764-17.720593 74.094532 44.868907 113.272833 133.533272 96.080266 218.517829C869.882923 357.47283300000004 783.297916 428.171012 686.086897 428.171012zM686.086897 38.82858599999997c-75.595722 0-145.060817 48.634674-171.092703 119.595842-26.354228 71.839165-3.63069 154.438395 55.287187 203.074092 59.017138 48.718585 144.762011 55.029314 210.191186 15.237029 65.11195-39.59888 99.396801-117.681236 84.064604-192.408171C847.384513 100.72940100000005 771.387655 38.82858599999997 686.086897 38.82858599999997zM698.600909 152.23547199999996L698.600909 311.02496499999995 673.571862 311.02496499999995 673.571862 152.28459099999998 604.675726 221.17254100000002 586.978668 203.47548400000005 686.111456 104.35190499999999 785.185916 203.42738799999995 767.489882 221.123422Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="picture-fine" unicode="" d="M958.648085 84.30682933333333L65.772494 84.30682933333333 65.772494 721.9115253333333l892.87559 0L958.648085 84.30682933333333zM97.660762 116.20328333333339l829.099055 0L926.759817 690.0570263333334 97.660762 690.0570263333334 97.660762 116.20328333333339zM648.731616 419.05893933333334l-1.991354 0c-47.801702 0-86.696548 38.900985-86.696548 86.695524l0 1.978051c0 47.809889 38.894845 86.671988 86.696548 86.671988l1.991354 0c47.801702 0 86.698594-38.862099 86.698594-86.671988l0-1.978051C735.43021 457.95992433333333 696.533318 419.05893933333334 648.731616 419.05893933333334zM646.740262 562.5193053333333c-30.224372 0-54.810327-24.582885-54.810327-54.787814l0-1.978051c0-30.230512 24.584931-54.803163 54.810327-54.803163l1.991354 0c30.222325 0 54.810327 24.572652 54.810327 54.803163l0 1.978051c0 30.203906-24.586978 54.787814-54.810327 54.787814L646.740262 562.5193053333333zM91.097276 181.7900473333334l-22.748097 22.338774 274.373974 279.332916 22.750143-22.351054L91.097276 181.7900473333334zM604.886015 215.92242633333342L339.999113 480.74793033333333l22.548552 22.525016L627.433544 238.4638153333334 604.886015 215.92242633333342zM619.007641 202.70744933333333l-22.763446 22.337751 167.989015 171.035398 22.765493-22.350031L619.007641 202.70744933333333zM925.622924 222.7939273333334L758.534418 389.8343373333333l22.548552 22.529109 167.086459-167.044504L925.622924 222.7939273333334z" horiz-adv-x="1024" /> + + + <glyph glyph-name="link" unicode="" d="M262.4-121.60000000000002c-64 0-128 25.6-179.2 76.8-102.4 102.4-102.4 262.4 0 364.8l134.4 134.4 89.6-89.6-134.4-134.4c-51.2-51.2-51.2-128 0-179.2 51.2-51.2 128-51.2 179.2 0l179.2 179.2c25.6 25.6 38.4 57.6 38.4 89.6S556.8 384 537.6 409.6L467.2 473.6l89.6 89.6 70.4-70.4C672 448 697.6 384 697.6 313.6c0-70.4-25.6-134.4-76.8-179.2l-179.2-179.2C396.8-96 326.4-121.60000000000002 262.4-121.60000000000002zM467.2 204.79999999999995L396.8 268.79999999999995c-102.4 102.4-102.4 262.4 0 364.8l179.2 179.2c102.4 102.4 262.4 102.4 364.8 0 102.4-102.4 102.4-262.4 0-364.8l-134.4-134.4-89.6 89.6 134.4 134.4c51.2 51.2 51.2 128 0 179.2-51.2 51.2-134.4 51.2-179.2 0L486.4 544c-51.2-51.2-51.2-128 0-179.2l70.4-70.4L467.2 204.79999999999995z" horiz-adv-x="1024" /> + + + <glyph glyph-name="diamond" unicode="" d="M998.4 526.933333L797.866667 802.133333c-4.266667 6.4-12.8 10.666667-19.2 10.666667L243.2 812.8c0 0-14.933333-2.133333-23.466667-17.066667C194.133333 753.066667 32 512 32 512L21.333333 494.933333l12.8-14.933333L469.333333-27.733333000000016c4.266667-4.266667 6.4-6.4 10.666667-8.533333 6.4-4.266667 32-10.666667 46.933333 0 4.266667 2.133333 6.4 6.4 10.666667 8.533333l409.6 420.266667c10.666667 8.533333 10.666667 25.6 0 34.133333-8.533333 10.666667-23.466667 10.666667-32 0L561.066667 61.86666700000001l153.6 422.4 0 0 251.733333 0c2.133333 0 19.2 0 23.466667 4.266667l2.133333 2.133333C1004.8 497.066667 1006.933333 512 998.4 526.933333zM782.933333 763.733333l-96-226.133333L341.333333 537.6l-85.333333 226.133333L782.933333 763.733333zM221.866667 714.666667l72.533333-179.2-192 0L221.866667 714.666667zM91.733333 488.533333l215.466667 0 138.666667-416L91.733333 488.533333zM503.466667 44.799999999999955l-147.2 443.733333 307.2 0L503.466667 44.799999999999955zM736 535.4666669999999L810.666667 701.866667l119.466667-168.533333L736 533.333333z" horiz-adv-x="1024" /> + + + <glyph glyph-name="log" unicode="" d="M828.01742 700.357158C743.476979 784.899646 631.076002 831.458031 511.516999 831.458031c-119.55798 0-231.959979-46.558385-316.500421-131.09985C110.47716 615.81774 63.918775 503.41574 63.918775 383.85776c0-87.103824 25.045419-171.548074 72.429613-244.204861 9.393951-14.402011 28.685319-18.46249 43.087331-9.071609 14.404058 9.393951 18.46556 28.685319 9.072633 43.089377-40.768519 62.511729-62.317301 135.194098-62.317301 210.187093 0 212.469066 172.85586 385.326972 385.325949 385.326972s385.325949-172.857906 385.325949-385.326972-172.85586-385.326972-385.325949-385.326972c-70.357418 0-139.188062 19.131733-199.052498 55.323003-14.71412 8.900717-33.856086 4.180206-42.753733-10.534937-8.896624-14.71719-4.180206-33.856086 10.534937-42.753733 69.584821-42.070164 149.556201-64.307631 231.271294-64.307631 119.559003 0 231.959979 46.558385 316.500421 131.09985 84.539418 84.539418 131.097804 196.941418 131.097804 316.499397S912.556838 615.81774 828.01742 700.357158zM494.28964 690.216193c-21.782096 0-39.397289-17.658172-39.397289-39.439244l0-283.524378c0-1.360997 0.358157-2.706645 0.493234-4.03285 2.020006-19.886933 18.959817-34.573423 39.379892-34.573423l0 0 0.146333 0.832971 223.590358 0c21.782096 0 39.438221 17.616216 39.438221 39.397289s-17.658172 39.397289-39.439244 39.397289L533.686928 408.273846l0 242.503103C533.686928 672.5580219999999 516.071735 690.216193 494.28964 690.216193z" horiz-adv-x="1024" /> + + + <glyph glyph-name="key" unicode="" d="M819.2 588.8c0-172.8-140.8-307.2-307.2-307.2-172.8 0-307.2 140.8-307.2 307.2C204.8 755.2 339.2 896 512 896S819.2 755.2 819.2 588.8L819.2 588.8zM512 838.4c-140.8 0-249.6-115.2-249.6-249.6 0-134.4 108.8-256 249.6-256s256 115.2 256 249.6S652.8 838.4 512 838.4L512 838.4zM480 300.79999999999995l64 0L544-128l-64 0L480 300.79999999999995 480 300.79999999999995zM512 192l192 0 0-64L512 128 512 192 512 192zM512 64l192 0 0-64L512 0 512 64 512 64z" horiz-adv-x="1024" /> + + + <glyph glyph-name="rate-solid" unicode="" d="M957.111079 492.519576c-3.927449 11.669784-14.447037 19.86442-26.723641 20.816095L647.68068 535.250796 540.183388 811.873997c-4.586458 11.803837-15.951297 19.579941-28.614711 19.579941s-24.02723-7.776104-28.614711-19.579941L375.458719 535.250796l-282.708803-21.915126c-12.276604-0.951675-22.796192-9.146311-26.723641-20.816095-3.927449-11.669784-0.50142-24.557302 8.701173-32.737612l217.547735-193.358823-67.980277-291.298436c-2.848884-12.20702 2.009773-24.919553 12.273535-32.114418 10.264784-7.195889 23.87271-7.42818 34.375925-0.586354l240.624313 156.709111 240.625336-156.709111c5.099135-3.320629 10.92891-4.974291 16.752546-4.974291 6.173606 0 12.342096 1.858324 17.623379 5.561669 10.263761 7.194866 15.122419 19.907399 12.273535 32.114418l-67.980277 291.299459L948.409906 459.781964C957.613522 467.962274 961.037505 480.849792 957.111079 492.519576z" horiz-adv-x="1024" /> + + + <glyph glyph-name="fonts-del" unicode="" d="M928 448l-143.616 0c-3.456 55.616-14.272 106.56-29.504 144.96C725.504 666.816 617.344 768 464.32 768L256 768l0-320L96 448C78.336 448 64 433.664 64 416S78.336 384 96 384L256 384l0-320 229.632 0c156.288 0 240.768 97.856 267.904 167.488C772.736 280.96000000000004 782.272 333.312 784.96 384L928 384C945.664 384 960 398.336 960 416S945.664 448 928 448zM349.376 711.488l63.936 0c35.712 0 251.84 27.968 266.944-263.488l-330.88 0L349.376 711.488zM439.296 120.51199999999994L349.376 120.51199999999994 349.376 382.528 349.376 384l330.88 0C665.344 113.98400000000004 467.968 120.51199999999994 439.296 120.51199999999994z" horiz-adv-x="1024" /> + + + <glyph glyph-name="unlink" unicode="" d="M150.336 767.6800000000001C133.44 762.304 124.16 744.3199999999999 129.472 727.488 131.2 722.1759999999999 134.208 717.44 138.304 713.664l122.624-122.432C270.208 576.192 289.92 571.52 304.96 580.736 320 590.0799999999999 324.672 609.7280000000001 315.456 624.832 312.832 629.056 309.184 632.64 304.96 635.264L182.336 757.696C175.168 765.44 164.672 769.216 154.304 767.6800000000001 152.96 767.808 151.552 767.808 150.336 767.6800000000001L150.336 767.6800000000001zM406.08 831.424c-13.696-4.48-22.72-17.6-22.016-32L384.064 672c0-17.664 14.336-32 32-32s31.872 14.336 31.872 32L447.936 799.424C448.256 817.088 434.304 831.6800000000001 416.64 832 414.464 832.064 412.16 831.808 410.048 831.424 408.704 831.552 407.296 831.552 406.08 831.424L406.08 831.424zM91.392 511.872C73.728 509.12 61.632 492.544 64.384 474.88 67.136 457.28 83.712 445.248 101.376 448L224 448C241.664 448 256 462.208 256 479.872s-14.336 32-32 32L101.376 511.872c-1.984 0.192-3.968 0.192-6.016 0C94.016 512 92.608 512 91.392 511.872L91.392 511.872zM795.456 320c-17.728-2.752-29.824-14.08-27.072-31.744 2.752-17.6 19.328-35.008 36.992-32.256L928 256c17.664 0 32 19.584 32 37.248S945.664 320 928 320l-122.624 0c-1.984 0.192-3.968 0.192-6.016 0-1.344 0.128-2.688 0.128-4.032 0L795.456 320zM598.272 127.42399999999998c-13.76-4.48-22.72-17.6-22.08-32L576.192-32c0-17.664 14.336-32 32-32S640-49.66399999999999 640-32l0 127.424c0.32 17.6-13.568 32.256-31.232 32.576-2.176 0.064-4.352-0.192-6.592-0.576-1.344 0.128-2.688 0.128-4.032 0L598.272 127.42399999999998zM726.272 191.67999999999995c-16.896-5.376-26.24-23.36-20.864-40.192 1.664-5.312 4.736-10.048 8.832-13.824l122.56-122.432c9.28-15.04 28.928-19.776 44.032-10.496 14.976 9.344 19.712 28.992 10.368 44.032-2.624 4.224-6.144 7.808-10.368 10.432l-122.56 122.432c-7.168 7.744-17.6 11.52-28.032 9.984-1.344 0.128-2.688 0.128-4.032 0L726.272 191.61599999999999zM339.968 28.03200000000004c-49.152 0-98.304 18.688-135.744 56.128-74.816 74.88-74.816 196.608 0 271.488l87.744 87.744c12.48 12.48 32.768 12.48 45.248 0s12.48-32.768 0-45.248L249.408 310.46400000000006c-49.92-49.856-49.92-131.136 0-180.992 49.856-49.856 131.136-49.856 180.992 0l87.744 87.744c12.48 12.48 32.768 12.48 45.248 0s12.48-32.768 0-45.248l-87.744-87.744C438.272 46.72000000000003 389.12 28.03200000000004 339.968 28.03200000000004zM702.144 323.712c-8.192 0-16.384 3.136-22.656 9.344-12.48 12.48-12.48 32.768 0 45.248l87.744 87.744c49.856 49.92 49.856 131.072 0 180.992-49.856 49.856-131.136 49.856-180.992 0L498.496 559.296c-12.48-12.48-32.768-12.48-45.248 0s-12.48 32.768 0 45.248l87.744 87.744c74.88 74.88 196.608 74.88 271.488 0 74.88-74.816 74.88-196.672 0-271.488l-87.744-87.744C718.528 326.784 710.336 323.712 702.144 323.712z" horiz-adv-x="1024" /> + + + <glyph glyph-name="fonts-clear" unicode="" d="M944.787709 197.20939699999997L857.081297 197.20939699999997 741.092979-127.73993700000005 815.146059-127.73993700000005 832.440281-65.58476199999996 966.82809-65.58476199999996 984.512408-127.73993700000005 1062.011328-127.73993700000005 944.787709 197.20939699999997 944.787709 197.20939699999997ZM848.04409 1.1865400000000363L898.951519 153.25866699999995 949.923963 1.1865400000000363 848.04409 1.1865400000000363 848.04409 1.1865400000000363ZM210.238376 489.910857L183.386821 513.121524 12.46009 313.522794C-5.874386 292.652698-3.728862 260.989968 17.271265 242.720508 38.401424 224.45104800000001 70.454249 226.66158700000005 88.853741 247.53168300000004L100.361551 260.599873C106.603075 267.55657099999996 117.200662 268.20673 124.287392 262.22527 131.309106 256.048762 132.024281 245.51619000000005 125.912789 238.55949199999998 107.448281 217.62438099999997 98.085995 173.08850800000005 119.216154 154.81904799999995 140.281297 136.614603 183.841932 151.76330199999995 202.371455 172.69841299999996 208.417932 179.525079 219.145551 180.30526999999995 226.167265 174.19377799999995 233.188979 168.14730199999997 233.904154 157.61473 227.792662 150.65803200000005 209.328154 129.85295199999996 199.965868 85.05701599999998 221.096027 66.91758700000003 242.16117 48.648127000000045 285.656789 63.86184100000003 304.186313 84.666921 310.362821 91.62361899999996 321.025424 92.40381000000002 327.982122 86.29231700000003 335.068852 80.18082500000003 335.784027 69.71326999999997 329.672535 62.75657100000001 311.143011 41.82146 301.845741-2.9094599999999673 322.910884-20.983873000000017 344.041043-39.253333 387.601678-24.039619000000016 406.00117-3.234540000000038 412.177678 3.7221590000000333 422.840281 4.437332999999967 429.927011-1.6091430000000173 436.948725-7.720635000000016 437.598884-18.31822199999999 431.487392-25.144889000000035 413.022884-46.08000000000004 403.725614-90.81092100000001 424.790757-109.01536499999997 445.920916-127.15479400000004 477.973741-125.00927000000001 496.373233-104.20419000000004L667.299963 95.52457100000004 658.652852 132.90869799999996 210.238376 489.910857 210.238376 489.910857ZM844.013106 329.516698L680.10809 471.12127 929.639011 715.190857C933.2799 718.376635 936.725741 721.562413 939.976535 725.203302 977.815773 768.048762 973.524725 833.129651 930.28917 870.513778 887.183646 907.702857 821.58263 903.281778 783.808408 860.631365L783.483328 860.761397 564.249805 571.3107299999999 399.824662 713.56546C385.391138 726.113524 363.480789 724.553143 350.867709 710.249651L248.14263 593.871238 225.322059 567.994921 251.393424 545.434413 695.7119 161.25561900000002 726.26936 136.679619 847.328916 281.014857C859.941995 295.318349 858.44663 316.96863499999995 844.013106 329.516698L844.013106 329.516698ZM817.941741 830.724063C839.136916 854.779937 876.000916 857.315556 900.186821 836.250413 924.372725 815.380317 926.908344 778.906413 905.648154 754.85054 884.452979 730.924698 847.588979 728.389079 823.403075 749.3892060000001 799.21717 770.324317 796.811582 806.798222 817.941741 830.724063L817.941741 830.724063ZM765.473932 758.491429C768.919773 741.522286 777.6319 725.593397 791.80536 713.305397 806.043836 701.017397 823.533106 694.580825 841.087392 693.540571L643.634186 494.526984 593.116852 538.2176509999999 765.473932 758.491429 765.473932 758.491429ZM776.006503 299.739429L709.755328 219.314794 307.502122 566.369524 376.809043 645.03873C382.920535 651.865397 393.38809 652.5155560000001 400.409805 646.534095L774.381106 323.01511100000005C781.337805 317.098667 782.117995 306.69612700000005 776.006503 299.739429L776.006503 299.739429Z" horiz-adv-x="1063" /> + + + <glyph glyph-name="triangle-r" unicode="" d="M293.291 728.256l426.88-355.456-426.88-355.52z" horiz-adv-x="1024" /> + + + <glyph glyph-name="circle" unicode="" d="M511.998 847.999C255.739 847.999 48 640.26 48 383.999c0-256.258 207.739-463.998 463.998-463.998C768.261-79.99900000000002 976 127.74199999999996 976 383.999 976 640.26 768.261 847.999 511.998 847.999zM512.002-16.000999999999976c-220.915 0-400.002 179.088-400.002 400 0 220.917 179.086 400 400.002 400 220.912 0 399.998-179.083 399.998-400C912 163.087 732.914-16.000999999999976 512.002-16.000999999999976z" horiz-adv-x="1024" /> + + + <glyph glyph-name="radio" unicode="" d="M512.5 383.5m-192 0a192 192 0 1 1 384 0 192 192 0 1 1-384 0ZM511.998 847.999C255.739 847.999 48 640.26 48 383.999c0-256.258 207.739-463.998 463.998-463.998C768.261-79.99900000000002 976 127.74199999999996 976 383.999 976 640.26 768.261 847.999 511.998 847.999zM512.002-16.000999999999976c-220.915 0-400.002 179.088-400.002 400 0 220.917 179.086 400 400.002 400 220.912 0 399.998-179.083 399.998-400C912 163.087 732.914-16.000999999999976 512.002-16.000999999999976z" horiz-adv-x="1024" /> + + + <glyph glyph-name="align-center" unicode="" d="M992 448L32 448C14.32 448 0 462.336 0 480 0 497.664 14.32 512 32 512L992 512C1009.68 512 1024 497.664 1024 480 1024 462.336 1009.68 448 992 448ZM800 704C817.664 704 832 689.664 832 672 832 654.336 817.664 640 800 640L224 640C206.32 640 192 654.336 192 672 192 689.664 206.32 704 224 704L800 704ZM992 832L32 832C14.32 832 0 846.336 0 864 0 881.664 14.32 896 32 896L992 896C1009.68 896 1024 881.664 1024 864 1024 846.336 1009.68 832 992 832ZM224 256C206.32 256 192 270.336 192 288 192 305.664 206.32 320 224 320L800 320C817.664 320 832 305.664 832 288 832 270.336 817.664 256 800 256L224 256ZM32 128L992 128C1009.68 128 1024 113.66399999999999 1024 96 1024 78.33600000000001 1009.68 64 992 64L32 64C14.32 64 0 78.33600000000001 0 96 0 113.66399999999999 14.32 128 32 128ZM224-64L800-64C817.664-64 832-78.33600000000001 832-96 832-113.66399999999999 817.664-128 800-128L224-128C206.32-128 192-113.66399999999999 192-96 192-78.33600000000001 206.32-64 224-64Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="align-right" unicode="" d="M992 64L32 64C14.32 64 0 78.33600000000001 0 96 0 113.66399999999999 14.32 128 32 128L992 128C1009.68 128 1024 113.66399999999999 1024 96 1024 78.33600000000001 1009.68 64 992 64ZM992 256L288 256C270.32 256 256 270.336 256 288 256 305.664 270.32 320 288 320L992 320C1009.68 320 1024 305.664 1024 288 1024 270.336 1009.68 256 992 256ZM992 448L32 448C14.32 448 0 462.336 0 480 0 497.664 14.32 512 32 512L992 512C1009.68 512 1024 497.664 1024 480 1024 462.336 1009.68 448 992 448ZM992 640L288 640C270.32 640 256 654.336 256 672 256 689.664 270.32 704 288 704L992 704C1009.68 704 1024 689.664 1024 672 1024 654.336 1009.68 640 992 640ZM992 832L32 832C14.32 832 0 846.336 0 864 0 881.664 14.32 896 32 896L992 896C1009.68 896 1024 881.664 1024 864 1024 846.336 1009.68 832 992 832ZM288-64L992-64C1009.68-64 1024-78.33600000000001 1024-96 1024-113.66399999999999 1009.68-128 992-128L288-128C270.32-128 256-113.66399999999999 256-96 256-78.33600000000001 270.32-64 288-64Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="align-left" unicode="" d="M992 448L32 448C14.336 448 0 462.336 0 480 0 497.664 14.336 512 32 512L992 512C1009.664 512 1024 497.664 1024 480 1024 462.336 1009.664 448 992 448ZM32 704L736 704C753.68 704 768 689.664 768 672 768 654.336 753.68 640 736 640L32 640C14.336 640 0 654.336 0 672 0 689.664 14.336 704 32 704ZM992 832L32 832C14.336 832 0 846.336 0 864 0 881.664 14.336 896 32 896L992 896C1009.664 896 1024 881.664 1024 864 1024 846.336 1009.664 832 992 832ZM32 320L736 320C753.68 320 768 305.664 768 288 768 270.336 753.68 256 736 256L32 256C14.336 256 0 270.336 0 288 0 305.664 14.336 320 32 320ZM32 128L992 128C1009.664 128 1024 113.66399999999999 1024 96 1024 78.33600000000001 1009.664 64 992 64L32 64C14.336 64 0 78.33600000000001 0 96 0 113.66399999999999 14.336 128 32 128ZM32-64L736-64C753.68-64 768-78.33600000000001 768-96 768-113.66399999999999 753.68-128 736-128L32-128C14.336-128 0-113.66399999999999 0-96 0-78.33600000000001 14.336-64 32-64Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="loading-1" unicode="" d="M537.574469 831.696462c-14.123672 0-25.574469-11.447726-25.574469-25.574469 0-14.123672 11.450796-25.574469 25.574469-25.574469 204.495464 0 370.82877-166.358889 370.82877-370.82877 0-14.123672 11.450796-25.574469 25.574469-25.574469 14.123672 0 25.574469 11.450796 25.574469 25.574469C959.551152 642.385838 770.241552 831.696462 537.574469 831.696462z" horiz-adv-x="1024" /> + + + <glyph glyph-name="return" unicode="" d="M927.858848 417.938973L168.863431 417.938973l308.721247 308.86758c11.685133 11.69025 11.435447 30.881334-0.557702 42.868343-11.992125 11.985986-31.18321 12.226462-42.868343 0.536212L75.199191 411.071565c-1.994424-1.662873-3.773953-3.583618-5.294586-5.713119-4.047176-5.373381-6.013971-11.839653-5.9055-18.328437-0.12996-7.794523 2.725064-15.561417 8.595772-21.432125l361.565802-361.744881c11.685133-11.691273 30.876218-11.449773 42.868343 0.535189 11.993149 11.985986 12.242835 31.17707 0.557702 42.868343L168.441828 356.54571799999997l759.417019 0c16.527418 0 29.925566 13.738909 29.925566 30.694069S944.386266 417.938973 927.858848 417.938973z" horiz-adv-x="1024" /> + + + <glyph glyph-name="fonts-strong" unicode="" d="M199.092919 848.487893l355.326704 0c70.335928 0 122.780371-2.942005 157.349701-8.809643 34.568307-5.884011 65.491597-18.131963 92.78522-36.759205 27.27725-18.627243 50.01409-43.427068 68.209498-74.397431 18.195408-30.986735 27.293623-65.699328 27.293623-104.169501 0-41.7161-11.17655-79.977519-33.496905-114.802676s-52.604078-60.951187-90.818425-78.362742c54.075593-15.765055 95.647407-42.626843 124.715443-80.585363s43.602054-82.58388 43.602054-133.877103c0-40.388872-9.417487-79.673597-28.220738-117.839849-18.803251-38.182624-44.482097-68.673056-77.035514-91.489714-32.55444-22.833031-72.702835-36.855396-120.414487-42.09984-29.931706-3.229554-102.122889-5.260817-216.572524-6.060019L199.092919-40.765192999999954 199.092919 848.487893zM378.171504 700.1084940000001l0-205.684546 117.64849 0c69.935816 0 113.410979 1.006933 130.390699 3.038196 30.730908 3.629667 54.891168 14.246469 72.478731 31.850405 17.588587 17.588587 26.381857 40.756239 26.381857 69.473281 0 27.501354-7.594979 49.838082-22.75219 67.042929-15.158235 17.188474-37.702694 27.597545-67.618027 31.242562-17.796318 2.01489-68.945255 3.038196-153.431461 3.038196L378.171504 700.109518zM378.171504 346.04454999999996l0-236.383732 166.622902 0c64.85203 0 106.008382 1.807159 123.43631 5.420453 26.750247 4.828982 48.543599 16.58063 65.363683 35.272341s25.247011 43.714617 25.247011 75.085092c0 26.526143-6.491855 49.03888-19.459191 67.538209-12.983709 18.48398-31.722492 31.961946-56.250118 40.404222s-77.739549 12.663414-159.619394 12.663414L378.171504 346.04454999999996z" horiz-adv-x="1024" /> + + + <glyph glyph-name="upload" unicode="" d="M831.488 478.208C831.488 478.208 831.488 478.208 831.488 478.208c0 143.36-114.688 258.048-253.952 258.048-98.304 0-184.32-57.344-225.28-139.264C327.68 605.184 307.2 609.28 286.72 609.28c-90.112 0-159.744-73.728-159.744-159.744 0-16.384 4.096-28.672 8.192-40.96C57.344 379.904 0 310.27200000000005 0 224.25599999999997c0-106.496 86.016-192.512 192.512-192.512l192.512 0 0 192.512L258.048 224.25599999999997l258.048 258.048 258.048-258.048-126.976 0 0-192.512 192.512 0L839.68 35.84000000000003c106.496 16.384 192.512 110.592 192.512 221.184C1024 371.712 937.984 465.92 831.488 478.208z" horiz-adv-x="1033" /> + + + <glyph glyph-name="dialogue" unicode="" d="M998.4 500.992C998.4 682.24 811.392 829.696 581.632 829.696c-121.216 0-235.904-41.472-315.264-114.048 37.504 8.192 76.416 13.056 115.456 14.464 59.264 30.592 128.256 46.72 199.808 46.72 198.144 0 359.296-123.776 359.296-275.968 0-31.872-7.04-63.232-20.992-93.056 7.552-28.16 11.264-57.344 11.008-86.528C975.104 374.784 998.4 436.736 998.4 500.992L998.4 500.992zM442.368 398.72c-30.72 0-55.808-23.04-55.808-51.328s25.088-51.328 55.808-51.328 55.808 23.04 55.808 51.328S473.088 398.72 442.368 398.72zM243.328 398.72c-30.72 0-55.808-23.04-55.808-51.328s25.088-51.328 55.808-51.328 55.808 23.04 55.808 51.328C299.264 375.67999999999995 274.176 398.72 243.328 398.72zM641.28 398.72c-30.72 0-55.808-23.04-55.808-51.328s25.088-51.328 55.808-51.328 55.808 23.04 55.808 51.328S672.128 398.72 641.28 398.72zM442.368 677.888C212.608 677.888 25.6 530.432 25.6 349.312c0-179.968 173.696-296.192 332.544-321.664l60.8-78.336c5.632-7.424 14.464-11.008 23.296-11.008 8.832 0 17.792 3.712 23.424 11.008l60.8 78.464C685.312 53.24800000000005 859.008 169.47199999999998 859.008 349.44000000000005 859.136 530.432 672.128 677.888 442.368 677.888zM714.88 173.82399999999996c-52.224-45.184-124.288-77.952-197.376-89.6C503.168 81.91999999999996 490.112 74.24000000000001 481.28 62.72000000000003l-38.784-49.92-38.912 49.92c-8.96 11.52-21.888 19.2-36.224 21.504-73.216 11.776-145.152 44.416-197.376 89.728-39.68 34.304-86.912 92.544-86.912 175.36 0 69.76 35.584 136.192 100.352 187.264 68.736 54.144 160.768 84.096 258.944 84.096 98.304 0 190.336-29.824 259.072-84.096 64.768-51.072 100.352-117.504 100.352-187.264C801.664 266.36800000000005 754.56 208.12800000000004 714.88 173.82399999999996z" horiz-adv-x="1024" /> + + + <glyph glyph-name="video" unicode="" d="M952.523633 599.2477269999999L952.523633 599.2477269999999 952.523633 599.2477269999999zM100.53762400000005 661.054062C100.53762400000005 661.054062 100.53762400000005 661.054062 100.53762400000005 661.054062 100.53762400000005 661.054062 100.53762400000005 661.054062 100.53762400000005 661.054062zM100.74228 720.404517L100.74228 720.404517 100.74228 720.404517zM660.990107 739.9449716666666c8.697911 0 17.498151-0.511642 25.684421-2.353553 12.279404-2.865194 23.22854-8.18627 34.382332-16.679524 15.144599-11.460777 26.196063-29.572899 32.02878-52.187469 3.479165-13.405016 2.967523-28.651944 2.558209-42.05696-0.102328-4.195463-0.204657-8.083941-0.204657-11.665434l0-37.759169 101.407415 70.401919 25.479764 17.60048c0.511642 0.306985 1.330269 1.023284 2.148896 1.637254 4.40012 3.376836 11.051464 8.595583 20.977316 11.051464 3.274508 0.818627 6.549016 1.22794 10.02818 1.22794 9.618867 0 19.44239-3.274508 27.730987999999996-9.311882 18.82842-13.916657999999998 18.726092-35.405616 18.726092-51.061857 0-1.023284 0-2.148896 0-3.172179l0-409.620466c0-15.963226 0.102328-37.963825-19.647047-51.982812-6.753672-4.809433-16.679524-8.390926-27.219346-8.390926-5.01409 0-10.130509 0.818627-15.144599 2.762866-7.162986 2.762866-12.279404 6.856000999999999-16.065554 9.823524-0.920955 0.716299-1.841911 1.432597-2.353553 1.841911l-24.968122 17.395823-101.10043 70.094934 0-37.963825c0-3.581493 0.102328-7.367643 0.204657-11.460777 0.409313-14.735285 0.818627-29.982212-2.865194-43.796542-5.62806-21.488957999999997-16.679524-39.396423-31.107825-50.447886-7.879285-6.037374-18.930748-13.405016-34.075347-16.986509-7.776956-1.841911-16.167882-2.353553-24.45648-2.353553-4.297792 0-8.595583 0.102328-12.688718 0.204657-3.683821 0.102328-7.162986 0.204657-10.232837 0.204657L167.15339300000005 84.94107466666674c-1.944239 0-3.888478 0-5.832717 0-1.944239 0-3.990806 0-5.935045 0-16.577196 0-33.461377 0.61397-47.787349 6.549016-27.935644999999997 11.563106-46.764065 37.759169-53.006096 73.574098l-0.409313 2.251224 0 2.353553c-0.102328 18.930748-0.204657 37.861497-0.306985 56.792245l0 0.511642L53.87588699999998 598.0155226666666c0 4.40012-0.102328 8.902568-0.102328 13.712001999999998-0.306985 27.01469-0.716299 54.950335 9.311882 76.643949 9.823524 21.284300999999996 27.526331999999996 38.066154 48.708304 45.945438 5.730389 2.148896 11.051464 2.762866 15.04227 3.172179 1.023284 0.102328 2.353553 0.306985 3.069851 0.409313l4.093135 1.534926 500.9997 0c3.581493 0 7.572299 0.102328 11.767763 0.306985C651.166583 739.7403146666667 656.078345 739.9449716666666 660.990107 739.9449716666666M304.273409 266.7785886666668L559.889677 394.2797376666667l0 33.973019L304.273409 555.9585626666667 304.273409 266.7785886666668M660.990107 780.8763196666666c-5.62806 0-10.949136-0.204657-15.758569-0.306985-3.888478-0.102328-7.469971-0.204657-10.437494-0.204657L133.79434400000002 780.3646776666667l-7.265314 0-6.446687-2.353553c-5.3210749999999996-0.61397-13.609673-1.841911-22.716898-5.218747-31.210153-11.665434-57.303887-36.121915-71.629859-67.229739-13.814329999999998-30.084541-13.405016-64.159888-12.995703-94.244429 0.102328-4.604777 0.102328-9.004897 0.102328-13.20036l0-371.349655 0-0.102328 0-0.102328 0-0.511642c0.102328-18.930748 0.204657-37.861497 0.306985-56.792245l0-2.251224 0-3.479165 0.61397-3.376836 0.409313-2.251224c4.195463-23.944839 12.791046-45.126811 25.479764-62.727291 13.609673-18.82842 31.107825-32.847407 52.08514-41.545318 21.488957999999997-8.902568 44.001199-9.618867 63.443589-9.618867 2.046567 0 4.093135 0 6.139702 0 1.841911 0 3.78615 0 5.62806 0l473.166384 0c2.558209 0 5.62806-0.102328 9.004897-0.204657 4.195463-0.102328 8.902568-0.306985 13.916657999999998-0.306985 13.302688 0 24.149495 1.125612 33.973019 3.479165 22.819227 5.423404 39.089437 16.474868 49.322274 24.251824 21.693613999999997 16.577196 37.963825 42.363944999999994 45.84311 72.653143 2.251224 8.595583 3.376836 17.088838 3.990806 25.377436l36.838213-25.582093 24.558809-17.088838c0.306985-0.204657 0.61397-0.511642 0.920955-0.716299 4.809433-3.683821 13.609673-10.642149999999999 26.400719-15.656241 9.516538-3.683821 19.647047-5.62806 30.084541-5.62806 18.009793 0 36.53122799999999 5.832717 50.8572 15.963226 16.577196 11.767763 27.730987999999996 27.935644999999997 33.052064 48.094334 3.78615 14.4283 3.78615 27.628659999999996 3.78615 37.34985499999999l0 409.518137c0 0.920955 0 1.739582 0 2.660538l0 0.409313c0 9.41421 0.102328 22.409913-3.479165 36.53122799999999-5.116419 19.749375-15.758569 35.81493-31.721795 47.68502-15.144599 11.153792-33.666034 17.293495-52.08514 17.293495-6.753672 0-13.507345-0.818627-19.954032-2.455881-18.21445-4.604777-30.289198-13.916657999999998-36.019586-18.419107l0 0c-0.204657-0.204657-0.511642-0.409313-0.716299-0.511642l-25.172779-17.293495-0.102328 0-0.102328 0-37.14519799999999-25.786749c-0.511642 7.674628-1.637254 15.553912-3.683821 23.433197-8.18627 31.721795-24.354152 57.508544-46.866394 74.597382-15.758569 11.972419-32.02878 19.851704-49.833916 23.944839C685.8559009999999 779.7507076666667 674.702109 780.8763196666666 660.990107 780.8763196666666L660.990107 780.8763196666666zM345.204757 332.9850436666668L345.204757 489.75210666666663l157.074048-78.48586L345.204757 332.9850436666668 345.204757 332.9850436666668zM347.455981 429.177975L347.455981 308.02118499999995 347.455981 429.177975Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="headset" unicode="" d="M356.285031 2.1522690000000466L356.396571 2.1522690000000466 356.396571 285.236626 253.462201 285.236626 253.462201 2.1522690000000466ZM665.076886 285.236626l103.042841 0 0-283.08538-103.042841 0 0 283.08538ZM63.809793 301.950286c0-38.758746-3.195785-112.220874 5.457292-148.208507l65.735144 0c-10.112312 35.644825-7.747451 109.176538-7.747451 148.208507 0 219.937155 172.264389 398.231887 384.763131 398.231887 212.498742 0 384.763131-178.294732 384.763131-398.231887 0-39.031968 2.266623-112.563682-7.845689-148.208507l65.735144 0c8.653077 35.987632 5.555529 109.449761 5.555529 148.208507 0 256.20415-200.670346 463.898469-448.208115 463.898469C264.479115 765.848755 63.809793 558.1544349999999 63.809793 301.950286z" horiz-adv-x="1024" /> + + + <glyph glyph-name="cellphone-fine" unicode="" d="M731.514252 896L292.485748 896C195.323702 896 116.154627 816.830925 116.154627 719.6688790000001l0-671.337759c0-97.162046 79.169075-176.331121 176.331121-176.331121l438.628661 0c97.162046 0 176.331121 79.169075 176.331121 176.331121L907.445529 719.6688790000001C907.845373 816.830925 828.676298 896 731.514252 896zM292.485748 853.216712l438.628661 0c70.772355 0 128.349863-55.178446 133.147989-124.751269L159.737602 728.465443C164.135884 798.038266 222.113237 853.216712 292.485748 853.216712zM865.062085 48.73096399999997c0-73.571261-59.976572-133.547833-133.547833-133.547833L292.485748-84.816868c-73.571261 0-133.547833 59.976572-133.547833 133.547833l0 45.582194 705.724326 0L864.662241 48.73096399999997zM865.062085 137.096447L158.937915 137.096447 158.937915 685.682155l705.724326 0L864.662241 137.096447zM512-54.82858299999998c13.59469 0 26.789535 5.597813 36.385787 15.194065 9.596251 9.596251 15.194065 22.791097 15.194065 36.385787 0 13.59469-5.597813 26.789535-15.194065 36.385787-9.596251 9.596251-22.791097 15.194065-36.385787 15.194065-13.59469 0-26.789535-5.597813-36.385787-15.194065-9.596251-9.596251-15.194065-22.791097-15.194065-36.385787 0-13.59469 5.597813-26.789535 15.194065-36.385787C485.210465-49.23076900000001 498.40531-54.82858299999998 512-54.82858299999998z" horiz-adv-x="1024" /> + + + <glyph glyph-name="add-1" unicode="" d="M566.935 57.63900000000001c0-30.366-24.612-54.972-54.935-54.972v0c-30.384 0-54.996 24.612-54.996 54.972v610.057c0 30.361 24.612 54.972 54.996 54.972v0c30.33 0 54.935-24.612 54.935-54.972v-610.057zM817.004 417.633c30.384 0 54.996-24.606 54.996-54.966v0c0-30.354-24.612-54.966-54.996-54.966h-610.062c-30.33 0-54.942 24.612-54.942 54.966v0c0 30.359 24.612 54.966 54.942 54.966h610.062zM817.004 417.633z" horiz-adv-x="1024" /> + + + <glyph glyph-name="face-smile-b" unicode="" d="M511.931733-128c-136.738133 0-265.284267 53.213867-361.984 149.879467C53.282133 118.51093300000002 0 247.09119999999996 0 384c0 136.738133 53.282133 265.3184 150.050133 362.0864C246.749867 842.683733 375.296 896 512.136533 896s265.4208-53.316267 362.1888-149.9136c199.645867-199.714133 199.543467-524.5952 0-724.206933C777.454933-74.71786699999996 648.772267-128 511.931733-128L511.931733-128 511.931733-128 511.931733-128 511.931733-128 511.931733-128zM512.034133 829.303467c-118.920533 0-230.741333-46.2848-314.914133-130.389333C113.083733 614.8778669999999 66.7648 502.8864 66.7648 384c0-118.9888 46.2848-230.912 130.3552-315.016533 84.0704-84.0704 195.857067-130.321067 314.811733-130.321067 119.022933 0 230.946133 46.318933 315.016533 130.423467 173.704533 173.636267 173.704533 456.157867 0 629.794133C742.877867 782.984533 631.057067 829.303467 512.034133 829.303467L512.034133 829.303467 512.034133 829.303467 512.034133 829.303467 512.034133 829.303467 512.034133 829.303467zM330.103467 244.25813300000004c0 0 59.904-95.9488 181.828267-95.9488s201.8304 95.9488 201.8304 95.9488 45.294933 0.136533 45.192533-47.957333c0 0-78.506667-111.8208-247.022933-111.8208s-223.368533 111.8208-223.368533 111.8208S286.856533 244.25813300000004 330.103467 244.25813300000004L330.103467 244.25813300000004 330.103467 244.25813300000004 330.103467 244.25813300000004 330.103467 244.25813300000004zM363.2128 548.590933c-34.5088 0-62.702933-28.091733-62.702933-62.737067 0-34.679467 28.194133-62.6688 62.702933-62.6688 34.679467 0 62.702933 28.091733 62.702933 62.6688C425.915733 520.4992 397.858133 548.590933 363.2128 548.590933L363.2128 548.590933 363.2128 548.590933 363.2128 548.590933 363.2128 548.590933 363.2128 548.590933zM684.544 548.590933c-34.679467 0-62.702933-28.091733-62.702933-62.737067 0-34.679467 28.023467-62.6688 62.702933-62.6688 34.6112 0 62.600533 28.091733 62.600533 62.6688C747.144533 520.4992 719.121067 548.590933 684.544 548.590933L684.544 548.590933 684.544 548.590933 684.544 548.590933 684.544 548.590933 684.544 548.590933zM684.544 548.590933" horiz-adv-x="1025" /> + + + <glyph glyph-name="fonts-html" unicode="" d="M194.33 416.235h-101.295v101.28h-46.035v-267.03h46.035v119.7h101.28v-119.7h46.035v267.03h-46.035v-101.28zM277.205 480.69h73.665v-230.205h46.035v230.205h73.665v36.825h-193.365v-36.825zM627.815 335.58000000000004l-46.755 181.935h-73.665v-267.03h46.035v211.785l46.035-211.785h55.245l46.83 213.93-0.795-213.93h46.035v267.03h-73.665l-45.3-181.935zM848.09 287.30999999999995v230.205h-46.035v-267.03h174.945v36.825h-128.91z" horiz-adv-x="1024" /> + + + <glyph glyph-name="screen-full" unicode="" d="M641.750109 511.899972l205.227128 204.519-0.704035-115.89966c-0.282433-9.611915 7.489578-18.09103 17.101493-17.808598l12.297071 0c9.611915 0.283456 17.667382 5.936199 17.808598 15.689331l0.565888 172.57752c0 0.14224 0.282433 9.187243 0.282433 9.187243 0.14224 4.804423-0.99056 9.187243-4.100388 12.297071-3.109828 3.109828-7.347339 5.086855-12.297071 4.946662l-8.763594-0.14224c-0.141216 0-0.278339 0-0.420579-0.14224L697.581696 797.833213c-9.611915-0.283456-17.667382-8.200776-17.808598-17.950837l0-12.297071c1.416256-11.44875 10.458189-18.092054 20.070104-17.808598l112.789832-0.283456-204.66124-203.814965c-9.329483-9.329483-9.329483-24.449855 0-33.778314 9.329483-9.470699 24.452925-9.470699 33.782408 0L641.750109 511.899972zM383.095141 319.11010699999997L177.726797 115.29411900000002l0.707105 115.338888c0.283456 9.607822-7.492648 18.086937-17.104563 17.808598l-13.001105 0c-9.611915-0.283456-17.667382-5.937223-17.808598-15.690354l-0.565888-172.718737c0-0.14224-0.282433-9.187243-0.282433-9.187243-0.14224-4.808516 0.99056-9.187243 4.096295-12.297071 3.109828-3.109828 7.351432-5.086855 12.297071-4.946662l8.762571 0.14224c0.14224 0 0.283456 0 0.425695 0.14224l171.873486-0.708128c9.607822 0.283456 17.667382 8.196683 17.808598 17.950837L344.93503 63.42477399999996c-1.415232 11.44875-10.461259 18.092054-20.074198 17.808598L212.069977 81.51682800000003 416.59 285.32872299999997c9.329483 9.329483 9.329483 24.453948 0 33.782408C407.40685 328.58182999999997 392.424624 328.58182999999997 383.095141 319.11010699999997L383.095141 319.11010699999997zM894.047276 60.03251399999999l-0.424672 172.718737c-0.283456 9.612938-8.200776 15.406898-17.809621 15.690354l-12.296047 0c-9.612938 0.278339-17.243733-8.200776-17.105586-17.808598l0.708128-115.903753L641.750109 319.11010699999997c-9.329483 9.329483-24.452925 9.329483-33.782408 0-9.325389-9.328459-9.325389-24.452925 0-33.782408L812.490795 81.51682800000003l-112.789832-0.283456c-9.611915 0.283456-18.515702-6.502088-20.073174-17.808598l0-12.297071c0.282433-9.611915 8.200776-17.667382 17.808598-17.950837l171.166381 0.708128c0.141216 0 0.282433-0.14224 0.424672-0.14224l8.763594-0.14224c4.803399-0.141216 9.187243 1.694595 12.296047 4.946662 3.109828 3.109828 4.238534 7.488555 4.097318 12.297071 0 0-0.14224 9.046027-0.14224 9.187243L894.047276 60.03149099999996zM212.216309 749.493252l112.789832 0.283456c9.607822-0.283456 18.512632 6.502088 20.070104 17.808598L345.076246 779.883399c-0.283456 9.611915-8.196683 17.667382-17.808598 17.950837l-172.011632-0.708128c-0.14224 0-0.283456 0.14224-0.425695 0.14224l-8.761548 0.14224c-4.808516 0.141216-9.187243-1.694595-12.297071-4.946662-3.109828-3.109828-4.242627-7.488555-4.096295-12.297071 0 0 0.282433-9.046027 0.282433-9.187243l0.420579-172.718737c0.14224-9.608845 8.200776-15.406898 17.808598-15.686261l13.005198 0c9.611915-0.282433 17.242709 8.196683 17.10047 17.808598l-0.564865 115.334795 205.231221-203.958228c9.324366-9.329483 24.448832-9.329483 33.777291 0 9.329483 9.329483 9.329483 24.452925 0 33.782408L212.216309 749.493252 212.216309 749.493252zM212.216309 749.493252" horiz-adv-x="1024" /> + + + <glyph glyph-name="form" unicode="" d="M314.278111 437.019389l395.439892 0 0-30.297458-395.439892 0L314.278111 437.019389zM314.278111 315.83495200000004l395.439892 0 0-30.297458-395.439892 0L314.278111 315.83495200000004zM314.278111 194.62833l263.626661 0 0-30.297458L314.278111 164.330872 314.278111 194.62833zM609.376235 739.9931730000001c-7.849678 42.966669-48.394988 75.742447-97.378777 75.742447-48.961604 0-89.51311-32.775778-97.380776-75.742447L116.55177 739.9931730000001l0-787.725922 790.893774 0 0 787.725922L609.376235 739.9931730000001zM446.091342 670.440529l0 17.613058 0 36.791056c0 33.410348 29.57295 60.594317 65.906116 60.594317 36.352353 0 65.907115-27.183969 65.907115-60.594317l0-36.791056 0-17.621053 16.672696-8.712493c32.358061-16.929922 57.169039-42.663874 71.406386-73.213161L358.043239 588.50688c14.240345 30.555683 39.051523 56.281241 71.408385 73.213161L446.091342 670.440529zM874.489888-17.436289999999985L149.505227-17.436289999999985 149.505227 709.694715 413.138884 709.694715l0-21.641327c-51.44492-26.923746-88.727643-74.124144-98.86377-129.845165l395.44289 0c-10.102151 55.730615-47.40466 102.921419-98.859773 129.845165l0 21.641327 263.631658 0L874.489888-17.436289999999985z" horiz-adv-x="1024" /> + + + <glyph glyph-name="cart" unicode="" d="M365.920994 84.618469c-39.030945 0-70.78516-31.754215-70.78516-70.78516s31.754215-70.784136 70.78516-70.784136c39.030945 0 70.784136 31.753191 70.784136 70.784136S404.951939 84.618469 365.920994 84.618469zM365.920994-5.784493999999995c-10.818393 0-19.61985 8.801457-19.61985 19.618826 0 10.818393 8.801457 19.61985 19.61985 19.61985s19.618826-8.801457 19.618826-19.61985C385.540843 3.015939000000003 376.739387-5.784493999999995 365.920994-5.784493999999995zM808.821219 84.618469c-39.030945 0-70.784136-31.754215-70.784136-70.78516s31.753191-70.784136 70.784136-70.784136 70.78516 31.753191 70.78516 70.784136S847.852164 84.618469 808.821219 84.618469zM808.821219-5.784493999999995c-10.81737 0-19.618826 8.801457-19.618826 19.618826 0 10.818393 8.801457 19.61985 19.618826 19.61985 10.818393 0 19.61985-8.801457 19.61985-19.61985C828.441069 3.015939000000003 819.640636-5.784493999999995 808.821219-5.784493999999995zM443.99107 305.940157c-14.057157-1.416256-24.305569-13.959943-22.890336-28.0171 1.328251-13.187347 12.446473-23.02132 25.423019-23.02132 0.856507 0 1.723248 0.042979 2.594081 0.130983l439.314561 44.245713c0.088004 0.007163 0.174985 0.01842 0.261966 0.026606l0.180102 0.01842c0.50449 0.051165 1.001817 0.119727 1.496074 0.198521 0.222057 0.035816 0.443092 0.076748 0.663102 0.11768 0.552585 0.103354 1.100054 0.217964 1.638313 0.355087 0.085958 0.022513 0.169869 0.047072 0.254803 0.069585 0.586354 0.156566 1.161453 0.334621 1.728364 0.530073 0.077771 0.026606 0.155543 0.051165 0.233314 0.078795 0.626263 0.222057 1.239224 0.469698 1.840928 0.737804 0.039909 0.017396 0.078795 0.035816 0.118704 0.054235 1.277086 0.577145 2.496867 1.252527 3.647063 2.020006 0.001023 0.001023 0.002047 0.001023 0.00307 0.002047 0.553609 0.369414 1.088798 0.76134 1.609661 1.170662 0.069585 0.054235 0.137123 0.10847 0.205685 0.163729 0.48607 0.38988 0.958838 0.795109 1.413186 1.218758 0.092098 0.084934 0.180102 0.173962 0.270153 0.25992 0.394996 0.378623 0.778736 0.76748 1.14815 1.169639 0.11154 0.121773 0.222057 0.243547 0.331551 0.367367 0.333598 0.3776 0.653893 0.766456 0.964978 1.163499 0.12382 0.158612 0.249687 0.314155 0.370437 0.475837 0.322341 0.432859 0.629333 0.876973 0.925069 1.329275 0.113587 0.173962 0.224104 0.348947 0.333598 0.525979 0.296759 0.479931 0.580215 0.968048 0.845251 1.467421 0.069585 0.130983 0.134053 0.265036 0.201591 0.397043 0.289596 0.568958 0.563842 1.147126 0.811482 1.738597 0.00307 0.007163 0.005117 0.014326 0.008186 0.021489 0.569982 1.369184 1.019213 2.796696 1.345648 4.26514 0 0.001023 0 0.002047 0.001023 0.00307l0.00307 0.013303c0.035816 0.162706 0.075725 0.323365 0.10847 0.487094l56.17951 252.734118c0.895393 4.030803 0.780783 8.04728-0.165776 11.794627 0.50449 2.003634 0.774643 4.101411 0.774643 6.261611 0 14.128789-11.452843 25.582655-25.582655 25.582655L195.47502 616.098125l-52.358485 159.553902c-3.631714 11.067057-14.093996 17.972327-25.177426 17.590634-0.207731 0.005117-0.413416 0.01535-0.62217 0.01535L54.663994 793.258011c-14.128789 0-25.582655-11.453866-25.582655-25.582655s11.453866-25.582655 25.582655-25.582655l45.614897 0 197.955514-603.235934c3.536546-10.776438 13.546527-17.613146 24.303522-17.613146 2.067079 0 4.16281 0.26299 6.245238 0.788969l567.583946 0c14.129812 0 25.582655 11.453866 25.582655 25.582655s-11.452843 25.582655-25.582655 25.582655L340.816223 173.1979 212.265428 564.933839l701.224666 0-48.137347-216.557174L443.99107 305.940157z" horiz-adv-x="1024" /> + + + <glyph glyph-name="camera-fill" unicode="" d="M512 480C436.515555 480 375.111111 419.712 375.111111 345.6 375.111111 271.48800000000006 436.515555 211.20000000000005 512 211.20000000000005 587.484446 211.20000000000005 648.888887 271.48800000000006 648.888887 345.6 648.888887 419.712 587.484446 480 512 480M512 172.79999999999995C414.808889 172.79999999999995 336 250.15679999999998 336 345.6 336 441.0432 414.808889 518.4 512 518.4 609.210667 518.4 688 441.0432 688 345.6 688 250.15679999999998 609.210667 172.79999999999995 512 172.79999999999995M903.111113 691.2L723.767113 691.2C713.383113 691.2 703.448887 695.2512 696.115554 702.4512L640.792887 756.7488C633.459554 763.9488 623.505779 768 613.141333 768L512 768 410.878222 768C400.494222 768 390.56 763.9488 383.226667 756.7488L327.904 702.4512C320.570667 695.2512 310.616889 691.2 300.252445 691.2L120.888889 691.2C77.866667 691.2 42.666667 656.64 42.666667 614.4L42.666667 76.79999999999995C42.666667 34.559999999999945 77.866667 0 120.888889 0L903.111113 0C946.133333 0 981.333333 34.559999999999945 981.333333 76.79999999999995L981.333333 614.4C981.333333 656.64 946.133333 691.2 903.111113 691.2" horiz-adv-x="1024" /> + + + <glyph glyph-name="tabs" unicode="" d="M310.30303 523.636364L124.121212 523.636364c-17.128727 0-31.030303-13.901576-31.030303-31.030303l0-186.181818c0-17.128727 13.901576-31.030303 31.030303-31.030303l186.181818 0c17.128727 0 31.030303 13.901576 31.030303 31.030303L341.333333 492.606061C341.333333 509.734788 327.431758 523.636364 310.30303 523.636364zM294.787879 306.42424200000005L139.636364 306.42424200000005c-17.128727 0-15.515152-1.613576-15.515152 15.515152L124.121212 477.090909c0 17.128727-1.613576 15.515152 15.515152 15.515152l155.151515 0c17.128727 0 15.515152 1.613576 15.515152-15.515152l0-155.151515C310.30303 304.81066699999997 311.916606 306.42424200000005 294.787879 306.42424200000005zM418.909091 352.969697l480.969697 0 0 31.030303L418.909091 384 418.909091 352.969697zM418.909091 228.84848499999998l480.969697 0 0 31.030303L418.909091 259.878788 418.909091 228.84848499999998zM418.909091 89.21212100000002l480.969697 0 0 31.030303L418.909091 120.24242400000003 418.909091 89.21212100000002zM418.909091 492.606061l480.969697 0 0 31.030303L418.909091 523.636364 418.909091 492.606061zM992.969697 725.333333l-15.515152 0L977.454545 849.454545c0 17.128727-13.901576 31.030303-31.030303 31.030303L775.757576 880.484848c-17.128727 0-31.030303-13.901576-31.030303-31.030303l0-124.121212-139.636364 0L605.090909 849.454545c0 17.128727-13.901576 31.030303-31.030303 31.030303L403.393939 880.484848c-17.128727 0-31.030303-13.901576-31.030303-31.030303l0-124.121212-124.121212 0L248.242424 849.454545c0 17.128727-13.901576 31.030303-31.030303 31.030303L31.030303 880.484848C13.901576 880.484848 0 866.583273 0 849.454545l0-946.424242c0-17.128727 13.901576-31.030303 31.030303-31.030303l961.939394 0c17.128727 0 31.030303 13.901576 31.030303 31.030303L1024 694.30303C1024 711.431758 1010.098424 725.333333 992.969697 725.333333zM992.969697-65.939394c0-17.128727-13.901576-31.030303-31.030303-31.030303L62.060606-96.969697c-17.128727 0-31.030303 13.901576-31.030303 31.030303L31.030303 818.424242c0 17.128727 13.901576 31.030303 31.030303 31.030303l124.121212 0c17.128727 0 31.030303-13.901576 31.030303-31.030303l0-124.121212 744.727273 0c17.128727 0 31.030303-13.901576 31.030303-31.030303L992.969697-65.939394z" horiz-adv-x="1024" /> + + + <glyph glyph-name="heart-fill" unicode="" d="M729.068827 776.44202c-94.686523 0-176.905082-48.314379-217.069851-118.640074-40.163745 70.325695-122.382305 118.640074-217.044268 118.640074-143.767358 0-229.665727-123.660414-229.665727-243.219417 0-283.128359 415.870616-527.841803 433.576883-538.126031 4.062526-2.363837 8.584516-3.538593 13.132088-3.538593 4.547573 0 9.070586 1.174756 13.132088 3.538593 17.706267 10.283204 433.576883 254.997672 433.576883 538.126031C958.708971 652.781606 872.811626 776.44202 729.068827 776.44202z" horiz-adv-x="1024" /> + + + <glyph glyph-name="fonts-code" unicode="" d="M270 626c-12 12-32 12-44 0L9 409c-12-12-12-32 0-44l217-217c6-6 14-9 22-9s16 3 22 9c12 12 12 32 0 44L75 387 270 582C282 595 282 614 270 626zM1015 409L798 626c-12 12-32 12-44 0-12-12-12-32 0-44l195-195L754 192c-12-12-12-32 0-44 6-6 14-9 22-9s16 3 22 9l217 217C1027 377 1027 397 1015 409zM624 696L624 696c-16 6-34-3-40-19L382 119c-6-16 2-34 19-40l0 0c16-6 34 3 40 19l202 558C648 672 640 690 624 696z" horiz-adv-x="1025" /> + + + <glyph glyph-name="ios" unicode="" d="M821.235026 351.984884c-1.287001 129.729651 105.791442 191.891776 110.553344 194.980577-60.102924 88.030835-153.796561 100.12864-187.258574 101.54434-79.794032 7.979403-155.598362-46.975519-196.010178-46.975519-40.411816 0-102.831341 45.688518-168.983167 44.530218-86.872534-1.287001-167.052666-50.57912-211.840284-128.442651-90.347436-156.756662-23.166009-388.931554 64.864826-515.958505 42.985817-62.162125 94.337137-132.046252 161.647264-129.600951 64.864826 2.574001 89.317835 41.956217 167.696167 41.956217s100.38604-41.956217 169.111867-40.669216c69.755428 1.287001 114.028245 63.449125 156.756662 125.86865 49.42082 72.200729 69.755428 142.084856 70.913728 145.559758C957.14228 145.550002 822.522026 197.030023 821.235026 351.984884L821.235026 351.984884 821.235026 351.984884zM692.277575 732.550935c35.778614 43.371917 59.845524 103.474841 53.281821 163.449065-51.48002-2.059201-113.899545-34.234214-150.83646-77.477431C561.647023 780.041254 532.560811 718.78003 540.411514 660.092806 597.811737 655.588305 656.49896 689.307718 692.277575 732.550935L692.277575 732.550935 692.277575 732.550935z" horiz-adv-x="1084" /> + + + <glyph glyph-name="at" unicode="" d="M514.162246 831.556269c-246.201331 0-446.51045-200.783932-446.51045-447.571618 0-246.772336 201.037712-447.539896 448.157973-447.539896 50.29857 0 99.615788 8.224312 146.523121 24.436552 18.414395 6.370081 31.060413 12.423961 31.472805 12.630668 7.194866 3.217275 12.614296 9.049097 15.213493 16.401552 2.63092 7.305383 2.155083 15.133675-1.299599 22.043039l-2.883677 5.831822c-7.131421 14.262842-24.974811 20.569478-40.156582 13.850449-0.031722-0.031722-5.8001-3.02694-20.094664-8.082072-41.075511-14.627139-84.21196-22.059412-128.235616-22.059412-210.92592 0-382.487298 171.57775-382.487298 382.487298S305.423131 766.487298 516.349051 766.487298c210.894198 0 382.455575-171.5931 382.455575-382.423853-0.887206-51.868321-13.882172-100.486622-36.606733-136.855948-20.664645-33.104979-46.939055-51.994188-72.199369-51.994188-0.317225 0-0.601704 0-0.887206 0-45.829791 0.792039-75.433016 68.586075-75.433016 172.718737l0 185.269587c0 5.53097-1.426489 9.635451-4.373611 12.550851-4.944616 4.944616-12.360516 4.817726-21.267373 4.864798l-2.472308-0.016373-9.223059 0.016373c-7.701402-0.031722-13.469779 0.063445-17.495466-3.945869-3.645017-3.613294-4.119831-9.096169-4.119831-13.469779l0-31.060413c-45.196365 36.100196-80.440054 59.474556-131.9758 60.378136-1.045819 0.016373-2.059915 0.031722-3.074012 0.031722-108.74368 0-198.470237-99.218746-200.657043-222.779899-2.155083-124.701117 84.845387-227.723491 193.969737-229.625818 1.045819-0.01535 2.059915-0.031722 3.074012-0.031722 63.293535 0 122.276904 34.087353 159.992901 92.103698 24.373107-60.251246 61.519122-91.216491 110.48637-92.071975 0.697895-0.01535 1.394766-0.01535 2.060939-0.01535 33.945113 0 66.716494 14.610766 94.924953 42.328038 47.63695 46.796816 76.066443 124.796284 76.066443 208.643947l0 2.883677C959.595154 630.772336 759.761873 831.556269 514.162246 831.556269zM646.73975 354.651578c0-92.230588-58.475809-167.282934-130.390699-167.282934s-130.390699 75.052347-130.390699 167.282934c0 92.246961 58.475809 167.298284 130.390699 167.298284S646.73975 446.897515 646.73975 354.651578z" horiz-adv-x="1024" /> + + + <glyph glyph-name="fire" unicode="" d="M890.059904 352.19948999999997C845.890699 458.956706 840.554889 548.4951550000001 857.396326 618.42714 859.144623 625.686731 860.991676 631.9776790000001 862.858846 637.425182 863.763607 640.064841 865.906573 645.659889 866.16406 646.532651L880.890349 696.448108 833.062903 675.9309969999999C832.106692 675.5208 830.618069 674.894716 827.426684 673.550492 824.667648 672.380966 822.310677 671.354022 819.868514 670.244809 813.291441 667.2575449999999 807.049466 664.090938 800.697749 660.4128450000001 784.089623 650.795565 768.486253 638.656896 753.86285 623.033596 727.630498 595.007563 706.526618 557.766355 691.78157 509.713231 675.041103 455.157161 671.516484 411.46006 673.004574 347.939834 673.477918 327.73476900000003 673.463923 322.197583 672.83965 318.324215 673.779618 324.156339 684.455526 333.67819899999995 696.104608 329.19567600000005 693.056849 330.36844199999996 685.695898 339.012828 676.314007 361.368339 660.550914 398.92921 646.834249 460.170272 636.817284 549.350468 625.445924 650.588768 630.103925 734.7280519999999 644.646978 801.338628 647.677924 815.221065 650.899934 827.082435 654.086773 836.904609 655.91465 842.538316 657.254607 846.094657 657.880284 847.554385L678.645286 896 628.243642 880.578031C617.409833 877.263087 599.94569 869.52239 578.105438 855.845223 542.547644 833.577626 507.199569 802.385036 474.400401 760.836776 447.596676 726.883228 423.611383 687.30061 403.118547 641.7016189999999 378.907516 587.829195 363.003277 542.798944 353.158029 503.238462 349.274261 487.632585 346.433259 473.323627 344.1945 458.925156 343.334411 453.39353 342.592734 448.063234 341.804612 441.911844 341.502524 439.553997 340.356619 430.329551 340.073506 428.145504 337.596047 409.033293 335.848224 404.35337 329.235273 398.312868 336.081933 404.566848 343.232634 404.098227 346.608002 402.086756 344.852318 403.133013 341.598345 406.493651 337.991853 411.887149 327.030897 428.279226 317.980358 454.883162 313.690598 489.339595 311.250185 508.941598 310.203772 539.08627 310.370048 576.545325 310.480474 601.422138 311.113088 628.122479 312.099068 654.977888 312.481453 665.393013 312.891081 675.105466 313.30045 683.8491750000001 313.545346 689.079919 313.735044 692.813105 313.84201 694.783403L317.55517 763.179488 271.360516 712.604139C270.467691 711.626645 268.852992 709.837042 266.618705 707.326295 262.927895 703.178805 258.823678 698.493751 254.407949 693.3614689999999 241.78797 678.693606 229.164348 663.340425 217.341267 648.004036 211.724185 640.717803 206.411389 633.591345 201.450577 626.6638379999999 176.017063 591.147305 156.617347 555.4025280000001 138.122768 512.155497 90.841957 401.595812 76.97672 299.64870599999995 99.261816 188.13489300000003 126.80821 50.29373899999996 188.553235-37.64422200000001 278.8297-84.690336 344.19104-118.75233700000001 408.837235-128 507.940695-128 525.713007-128 557.977207-125.567138 590.857378-120.46215900000004 641.152493-112.65333099999998 687.496192-99.78932299999997 726.063273-80.59104400000001 738.155853-74.57148800000004 743.07901-59.88870199999997 737.059454-47.79612199999997 731.039898-35.70354299999997 716.357111-30.780384000000026 704.264531-36.79993999999999 670.855859-53.43041900000003 629.092954-65.02289699999994 583.352478-72.12456999999995 552.984316-76.83953499999996 523.228215-79.08327499999996 507.940695-79.08327499999996 416.16215-79.08327499999996 357.934257-70.75375399999996 301.436271-41.310745999999995 224.830174-1.3887230000000272 171.977796 73.88423 147.230072 197.72094500000003 126.99711 298.965952 139.514783 391.004811 183.099329 492.921284 200.282663 533.1021499999999 218.020237 565.784358 241.22153 598.183718 245.831691 604.6215589999999 250.802959 611.289899 256.082244 618.137961 267.31885 632.713596 279.402035 647.409487 291.488864 661.457681 298.732051 669.8762429999999 304.338773 676.1767130000001 307.478705 679.614406L264.997214 697.435142C264.883874 695.347445 264.688038 691.493511 264.43725 686.13688 264.020474 677.234965 263.603959 667.359281 263.215279 656.7726250000001 262.21142 629.430212 261.566827 602.224414 261.453805 576.7624579999999 261.278897 537.3588179999999 262.385015 505.49418 265.148621 483.296209 276.058157 395.668083 322.627019 326.024497 362.226031 362.19561799999997 379.341732 377.829698 384.756649 392.328523 388.584361 421.857186 397.932742 493.974714 407.332926 531.746825 447.736538 621.64966 466.587287 663.594818 488.484326 699.731218 512.795234 730.526996 542.034492 767.565749 573.156162 795.028785 604.068111 814.386984 614.696751 821.043029 624.472062 826.201428 633.124687 830.036563 638.02329 832.207788 641.258688 833.404991 642.556233 833.802016L612.91959 866.825663C608.658554 856.884484 602.686705 838.478616 596.856038 811.772799 581.186705 740.003594 576.231674 650.498985 588.206246 543.890345 607.295279 373.94226100000003 638.819345 298.82556999999997 678.537329 283.542234 701.302332 274.78234499999996 717.731637 289.43566899999996 721.133156 310.5407 722.475759 318.870999 722.489387 324.26340300000004 721.907881 349.08549100000005 720.532565 407.791853 723.691247 446.952173 738.546223 495.36355 751.151827 536.44438 768.544047 567.135763 789.576147 589.605967 809.230566 610.60429 821.725461 617.839716 852.347733 630.9761169999999L842.705318 653.453557 819.246577 660.374464C822.235501 670.505564 813.450321 644.87463 809.839253 629.8801189999999 790.647573 550.1890470000001 796.611315 450.1135 844.8591 333.498332 883.105728 241.056017 874.587669 126.06492400000002 824.002925 61.39712899999995 815.680378 50.75754500000005 817.558709 35.38570000000004 828.198295 27.063153000000057 838.837879 18.740607999999952 854.209724 20.618939999999952 862.532269 31.258523999999966 924.762731 110.81426299999998 934.658528 244.404363 890.059904 352.19948999999997Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="set" unicode="" d="M466.496-126.62400000000002l-1.056 0.064c-25.184 2.08-47.456 22.368-51.744 47.232l-17.344 102.4c-0.672 4.064-6.624 11.04-10.56 12.416l-30.336 12.416c-5.44 2.496-15.424 0.8-17.472-0.64l-84.992-60.16c-19.584-14.016-51.456-12.736-70.08 3.168l-64.288 64c-17.952 20.48-19.488 50.592-4.736 71.296l60.416 84.672c2.176 3.072 2.784 11.52 1.024 15.04l0 0c0 0-1.664 3.104-7.264 16.608-6.176 14.848-6.816 17.44-6.816 17.44-0.992 3.04-7.456 8.672-11.36 9.376l-102.56 17.248c-25.152 4.288-45.44 26.624-47.168 52L0 428.288c2.112 27.36 22.496 49.6 47.52 53.728l102.528 17.344c4.128 0.672 11.008 6.56 12.416 10.496l12.608 30.336c2.368 4.992 1.6 14.112-0.8 17.504L113.984 642.24C99.36 662.88 100.704 692.896 117.056 712.192l64.416 64.224c20.672 18.208 51.296 18.784 71.36 4.64l84.992-60.16c1.952-1.376 13.28-2.016 15.04-1.056 0.384 0.192 2.528 1.344 16.704 7.168 14.24 5.92 16.576 6.592 16.576 6.592 3.84 1.184 9.504 7.648 10.144 11.424l17.44 102.4c4.32 25.152 26.752 45.376 52.128 47.104l90.528 0.064c27.328-2.112 49.632-22.368 53.952-47.232l17.344-102.432c0.672-4.064 6.656-11.04 10.624-12.48l30.304-12.352c6.24-2.784 15.456-0.8 17.44 0.608l85.024 60.16c19.52 14.016 51.392 12.704 70.08-3.136l64.288-64.032c17.952-20.48 19.456-50.56 4.736-71.264l-60.416-84.672c-2.208-3.136-2.848-11.616-1.056-15.04 0.16-0.352 1.376-2.56 7.232-16.672 5.856-14.112 6.592-16.512 6.592-16.512 1.248-4.032 7.712-9.6 11.648-10.304l102.56-17.248c25.152-4.224 45.44-26.592 47.168-52l0.096-90.304c-2.112-27.392-22.528-49.6-47.552-53.728l-102.528-17.376c-4.128-0.672-10.944-6.496-12.32-10.432l-12.736-30.432c-2.336-4.928-1.568-14.112 0.832-17.472l60.288-84.512c14.624-20.736 13.216-50.816-3.232-70.048l-64.192-64.096c-11.328-9.92-24.64-14.72-38.784-14.72l0 0c-11.904 0-23.52 3.552-32.704 10.016l-84.992 60.16c-1.952 1.408-13.312 2.016-15.072 1.056-0.288-0.16-2.432-1.312-16.608-7.2-14.08-5.792-16.384-6.496-16.384-6.496-4.16-1.28-9.792-7.776-10.432-11.52l-17.408-102.4c-4.352-25.152-26.72-45.344-52.032-47.104L466.496-126.62400000000002zM347.84 100.60799999999995c10.368 0 20.192-2.112 28.48-6.112l27.648-11.296c20.416-7.072 38.976-28.992 42.848-51.584l17.344-102.336c0.288-1.6 3.136-4.32 5.056-4.832l87.296 0.064c-0.032 0.064 3.04 2.944 3.328 4.672l17.408 102.368c3.872 22.656 23.328 44.832 45.28 51.584 0 0 0 0 0 0-0.096 0 2.976 1.152 12.448 5.056 9.472 3.936 12.384 5.248 13.12 5.568 18.208 9.6 49.44 8.032 67.776-4.96l84.928-60.16c0.192-0.128 1.312-0.64 3.104-0.64l0 0c2.048 0 3.52 0.672 3.872 0.96l61.536 61.408 0 0c-0.16 0 0.064 4.416-0.992 5.952l-60.224 84.448c-13.248 18.624-15.68 47.168-5.792 67.872l11.648 27.84c6.944 19.968 29.408 38.912 51.68 42.496l102.464 17.376c1.824 0.384 4.736 3.648 4.864 5.408L972.8 428.288l0 0c-0.096 0-2.88 3.072-4.576 3.424l-102.72 17.28c-23.168 4.032-44.896 22.976-51.776 45.056l0 0c-0.032 0-1.216 3.04-5.12 12.512-3.968 9.568-5.28 12.512-5.632 13.248-10.24 19.36-8.288 48.736 4.96 67.456L868.448 672c0.96 1.408 0.736 5.6-0.384 6.912l-61.408 61.184c0.704-0.8-0.768-0.192-2.848-0.192-1.728 0-2.784-0.416-3.008-0.576l-85.024-60.16c-17.824-12.8-47.776-15.36-68-5.664l-27.712 11.296c-20.512 7.2-39.04 29.088-42.88 51.584l-17.344 102.336c-0.288 1.76-3.616 4.704-5.504 4.864L467.616 843.52c0-0.064-3.104-2.944-3.392-4.672l-17.408-102.336c-3.84-22.624-23.264-44.8-45.216-51.584 0-0.032-3.008-1.184-12.416-5.088-9.568-3.936-12.512-5.248-13.248-5.568-17.984-9.568-49.344-8.032-67.744 4.992L223.264 739.36c-0.416 0.32-6.176 0.288-6.848-0.224L154.688 677.6320000000001c0 0 0 0 0 0 0.224 0 0.032-4.384 1.056-5.856L216 587.264c13.312-18.752 15.744-47.296 5.76-67.968l-11.52-27.648c-6.976-20.032-29.472-38.944-51.776-42.624L55.968 431.68c-1.824-0.384-4.704-3.648-4.832-5.408l0.096-86.56 0 0c0.096 0 2.912-3.104 4.608-3.424l102.656-17.28c23.04-4 44.704-22.912 51.712-44.928 0.256-0.736 1.44-3.84 5.088-12.64 3.68-8.832 5.024-11.84 5.472-12.736 10.592-20.288 8.672-48.96-4.672-67.904l-60.512-84.768c-0.96-1.408-0.736-5.632 0.384-6.912l61.408-61.184c-0.736 0.8 0.736 0.224 2.816 0.192 1.728 0 2.784 0.416 3.008 0.576l84.992 60.16C318.624 96.32000000000005 333.088 100.60799999999995 347.84 100.60799999999995zM512.032 133.856c-138.336 0-250.848 112.224-250.848 250.176 0 137.92 112.544 250.144 250.848 250.144s250.848-112.224 250.848-250.144C762.88 246.08000000000004 650.336 133.856 512.032 133.856zM512.032 583.136c-110.08 0-199.648-89.312-199.648-199.104s89.568-199.136 199.648-199.136 199.648 89.344 199.648 199.136S622.112 583.136 512.032 583.136z" horiz-adv-x="1024" /> + + + <glyph glyph-name="fonts-u" unicode="" d="M0-49.23076900000001L945.230769-49.23076900000001 945.230769-128 0-128 0-49.23076900000001ZM0 896L407.076943 896 407.076943 834.065644 319.153861 827.872177 299.076923 809.911217 299.076923 365.841959C299.076923 281.19796199999996 317.076716 220.709337 353.076933 184.37435100000005 389.077071 148.03936499999998 448.153442 129.87210800000003 530.307702 129.87210800000003 606.000364 129.87210800000003 660.807522 149.17482299999995 694.730752 187.78072599999996 728.653982 226.38662899999997 745.61536 289.66226700000004 745.61536 377.60953099999995L745.61536 804.956475 724.153817 826.633531 633.461524 834.065644 633.461524 896 955.384596 896 955.384596 834.065644 868.846119 826.633531 849.461563 804.956475 849.461563 364.60331299999996C849.461563 246.92743900000005 819.923338 161.66533900000002 760.846178 108.81441500000005 701.76894 55.96348999999998 606.462188 29.53846199999998 474.923087 29.53846199999998 406.153531 29.53846199999998 345.807951 38.51886300000001 293.884613 56.47990200000004 241.961275 74.44093999999996 201.230887 100.143419 171.692347 133.58820400000002 149.076834 160.01362700000004 133.038474 190.25793999999996 123.57695 224.32200899999998 114.115348 258.386078 109.384625 307.21047599999997 109.384625 370.796702L109.384625 809.911217 89.307687 827.872177 0 834.065644 0 896Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="triangle-d" unicode="" d="M773.128299 88.65234199999998M889.696178 575.195553L158.862147 575.195553 524.357446 209.64704300000005 889.696178 575.195553Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="tips" unicode="" d="M967.280184 578.537671c-24.915459 58.887178-60.544935 111.76755-105.96745 157.161413-45.393863 45.393863-98.273211 81.051991-157.160389 105.96745-60.988026 25.803689-125.735679 38.853913-192.494129 38.853913-66.729797 0-131.504056-13.0799-192.494129-38.853913-58.887178-24.916483-111.766526-60.544935-157.160389-105.96745-45.393863-45.393863-81.051991-98.274234-105.96745-157.161413-25.803689-60.988026-38.884612-125.734656-38.884612-192.464453s13.0799-131.50508 38.884612-192.464453c24.915459-58.887178 60.544935-111.737874 105.96745-157.161413 45.393863-45.393863 98.273211-81.051991 157.160389-105.96745 60.988026-25.803689 125.735679-38.853913 192.494129-38.853913 66.729797 0 131.504056 13.0799 192.494129 38.853913 58.887178 24.916483 111.766526 60.544935 157.160389 105.96745 45.393863 45.393863 81.051991 98.274234 105.96745 157.161413 25.803689 60.988026 38.853913 125.734656 38.853913 192.464453S993.084896 517.549645 967.280184 578.537671zM511.687892-55.138552000000004c-243.302305 0-441.241446 197.909465-441.241446 441.21177S268.385587 827.284989 511.687892 827.284989c243.273652-0.029676 441.210747-197.938118 441.210747-441.21177S754.990197-55.138552000000004 511.687892-55.138552000000004zM511.657192 573.565427m-45.511543 0a44.475 44.475 0 1 1 91.023086 0 44.475 44.475 0 1 1-91.023086 0ZM542.729885 184.14011300000004c0-17.162892-13.906731-31.071669-31.070646-31.071669l0 0c-17.163915 0-31.070646 13.907755-31.070646 31.071669L480.588593 426.998303c0 17.162892 13.906731 31.071669 31.070646 31.071669l0 0c17.163915 0 31.070646-13.907755 31.070646-31.071669L542.729885 184.14011300000004z" horiz-adv-x="1024" /> + + + <glyph glyph-name="picture" unicode="" d="M765.376 615.424c0 0 103.04 1.024 103.04-100.992 0 0 9.536-98.752-103.04-100.928 0 0-100.864-2.176-99.84 100.928C665.536 514.496 664.448 605.8879999999999 765.376 615.424ZM968.32 770.56c0 0 54.208-4.224 54.208-52.032l0-712.832c0 0-3.2-51.008-54.208-52.096L968.32 770.56ZM1.472 5.631999999999948c0 0 2.176-52.096 52.096-52.096L968.32-46.464000000000055l0 150.848-99.712 0-203.072 206.144-153.024-153.984L304.32 413.568l-205.056-307.072-45.632-1.024L52.48 718.4639999999999 1.472 718.4639999999999 1.472 5.631999999999948ZM968.32 770.56L53.568 770.56c0 0-52.096 1.088-52.096-52.032L968.32 718.528 968.32 770.56Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="more-vertical" unicode="" d="M511.998465 623.681848c40.525995 0 73.386404 35.771715 73.386404 79.892585s-32.860409 79.892585-73.386404 79.892585c-40.524972 0-73.384357-35.771715-73.384357-79.892585S471.47247 623.681848 511.998465 623.681848L511.998465 623.681848zM511.998465 463.893608c-40.524972 0-73.384357-35.772738-73.384357-79.893608 0-44.12087 32.859385-79.892585 73.384357-79.892585 40.525995 0 73.386404 35.772738 73.386404 79.892585C585.384869 428.12087 552.52446 463.893608 511.998465 463.893608L511.998465 463.893608zM511.998465 144.320199c-40.524972 0-73.384357-35.733852-73.384357-79.894631 0-44.119847 32.859385-79.893608 73.384357-79.893608 40.525995 0 73.386404 35.772738 73.386404 79.893608C585.383846 108.58634600000005 552.52446 144.320199 511.998465 144.320199L511.998465 144.320199z" horiz-adv-x="1024" /> + + + <glyph glyph-name="bluetooth" unicode="" d="M844.799642 221.19607699999995L538.533306 374.84141l307.696917 177.029926c10.583033 5.006014 17.398252 15.59621 17.569144 27.302833s-6.332219 22.491247-16.764825 27.804253L475.584626 830.045869c-9.517771 4.846378-20.869307 4.39817-29.974685-1.181919-9.105379-5.581112-14.656815-15.493879-14.656815-26.174126l0-288.760636L210.662931 699.284733c-12.974499 10.915607-32.339546 9.248641-43.255153-3.724835-10.915607-12.973476-9.248641-32.339546 3.724835-43.255153L430.953126 433.687656l0-102.83511L171.558307 120.428046c-13.166881-10.68127-15.181771-30.013571-4.500501-43.180452 6.068206-7.480368 14.924921-11.360745 23.859407-11.360745 6.794753 0 13.634532 2.245134 19.322068 6.859221l220.714867 179.046862 0-283.065937c0-10.689457 5.561669-20.61041 14.680351-26.188452 4.903683-2.99931 10.455119-4.510734 16.019859-4.510734 4.78498 0 9.580193 1.118474 13.980409 3.368724l371.449917 224.085638c10.664897 5.456269 17.182334 16.618493 16.691147 28.589129C863.284645 206.04091200000005 855.875908 216.63110800000004 844.799642 221.19607699999995zM763.458055 580.639542L492.351498 420.917818l0 21.60711c0.563842 3.368724 0.558725 6.801916 0 10.153244L492.351498 752.604102 763.458055 580.639542zM492.351498 18.915047999999956L492.351498 311.51001199999996c0.558725 3.347235 0.562818 6.777357 0 10.146081l0 5.809309 267.472797-137.65822L492.351498 18.915047999999956z" horiz-adv-x="1024" /> + + + <glyph glyph-name="flag" unicode="" d="M878.368178 798.272211c-11.363815 4.799306-24.470321 2.360767-33.31578-6.245238-0.36532-0.350994-37.162388-35.304064-95.163383-56.05262-75.462692-26.993794-150.763702-18.409279-223.812415 25.517163-38.347376 23.060205-81.875752 40.665165-129.376603 52.327786-37.582967 9.228175-77.742619 14.777565-119.363552 16.496719-70.805626 2.925632-121.493052-6.224772-123.615389-6.615675-14.56574-2.682086-25.140587-15.380292-25.140587-30.191626L128.58047-31.312913999999978c0-16.954137 13.745049-30.699186 30.699186-30.699186s30.699186 13.745049 30.699186 30.699186L189.978842 266.68306099999995c15.562441 5.250584 47.994084 14.447037 91.40171 17.48728 35.985586 2.51938 72.440869 0.378623 108.35073-6.363941 44.847417-8.420787 89.059362-24.102954 131.409912-46.611597 46.26879-24.591071 93.776803-41.069371 141.203976-48.977481 38.270629-6.380314 76.541257-7.219425 113.740484-2.491751 64.277956 8.16803 103.877859 30.461779 105.532545 31.406291 9.56689 5.464455 15.471366 15.637142 15.471366 26.656103L897.089565 769.958352C897.091612 782.298402 889.73711 793.470859 878.368178 798.272211zM835.69324 257.496841c-14.58416-5.755074-38.82526-13.530155-70.319555-17.225313-30.990828-3.635807-62.940494-2.676969-94.952582 2.851954-40.201607 6.943133-80.731696 21.171182-120.464629 42.289152-48.455595 25.753547-99.208513 43.61945-150.848637 53.101405-29.29214 5.378497-58.896388 8.079002-88.407516 8.079002-12.228509 0-24.443715-0.464581-36.609803-1.39272-34.879392-2.663666-63.618946-8.741082-84.111676-14.355963L189.978842 766.569162c19.971867 2.003634 50.446949 3.910053 86.392626 2.334161 58.186214-2.554172 143.250588-15.041578 218.064504-60.029188 61.32674-36.877909 119.196753-49.491181 169.691797-49.488111 42.293245 0.002047 79.416747 8.854669 109.019972 19.711947 24.269753 8.901741 45.327348 19.747763 62.544475 30.179346L835.692217 257.496841z" horiz-adv-x="1024" /> + + + <glyph glyph-name="loading" unicode="" d="M511.999488 756.654348m-70.608128 0a69 69 0 1 1 141.216255 0 69 69 0 1 1-141.216255 0ZM236.047576 639.997442m-68.561515 0a67 67 0 1 1 137.123031 0 67 67 0 1 1-137.123031 0ZM125.530506 382.12428m-62.421678 0a61 61 0 1 1 124.843356 0 61 61 0 1 1-124.843356 0ZM227.861126 100.71507499999996m-54.235229 0a53 53 0 1 1 108.470457 0 53 53 0 1 1-108.470457 0ZM514.166851-16.84438799999998m-47.192835 0a46.118 46.118 0 1 1 94.385671 0 46.118 46.118 0 1 1-94.385671 0ZM804.730553 91.450061m-33.834596 0a33.064 33.064 0 1 1 67.669192 0 33.064 33.064 0 1 1-67.669192 0ZM935.55411 383.395226m-23.969924 0a23.424 23.424 0 1 1 47.939849 0 23.424 23.424 0 1 1-47.939849 0ZM856.723717 634.80007m-17.135262 0a16.745 16.745 0 1 1 34.270525 0 16.745 16.745 0 1 1-34.270525 0Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="fonts-i" unicode="" d="M897.948 834.255l0-64.322-128.65 0L447.674-1.9329999999999927l128.65 0 0-64.32L126.052-66.25300000000004l0 64.32 128.65 0 321.622 771.866-128.65 0L447.674 834.255 897.948 834.255z" horiz-adv-x="1024" /> + + + <glyph glyph-name="refresh-1" unicode="" d="M688.146 736l-192 128v-256l192 128.001zM496.146 767.7090000000001c-231.174-8.416-416-198.479-416-431.709 0-238.587 193.413-432 432-432 233.23 0 423.293 184.826 431.709 416h-64.05c-8.377-195.817-169.778-352-367.658-352-203.241 0-368 164.759-368 368 0 197.88 156.183 359.282 352 367.658v64.051z" horiz-adv-x="1024" /> + + + <glyph glyph-name="rmb" unicode="" d="M511.998465 896C229.23338 896 0.004605 666.769178 0.004605 384.001023c0-282.773272 229.227752-512.001023 511.99386-512.001023 282.769178 0 511.994883 229.227752 511.994883 512.001023C1023.994372 666.769178 794.767644 896 511.998465 896zM511.998465-91.59690499999999c-262.660188 0-475.589742 212.930577-475.589742 475.597929 0 262.663258 212.929554 475.594859 475.589742 475.594859 262.663258 0 475.590765-212.9316 475.590765-475.594859C987.590254 121.33469500000001 774.662747-91.59690499999999 511.998465-91.59690499999999zM738.742652 301.137781L544.432155 301.137781l0 69.780273 194.310497 0c17.835204 0 32.249495 14.43885 32.249495 32.220842 0 17.784038-14.414291 32.19526-32.249495 32.19526L589.7462 435.334155l149.620669 209.579249c8.916067 15.397688 3.63069 35.099403-11.82021 43.988864-15.398712 8.891508-35.097356 3.629667-44.017516-11.793604L512.187777 437.098335 340.84334 677.108664c-8.864902 15.423271-28.617781 20.685111-44.016493 11.793604-15.395642-8.889461-20.685111-28.590152-11.82021-43.988864l149.622716-209.579249L285.628808 435.334155c-17.781992 0-32.245402-14.411221-32.245402-32.19526 0-17.781992 14.46341-32.220842 32.245402-32.220842l194.310497 0 0-69.780273L285.628808 301.137781c-17.781992 0-32.245402-14.413268-32.245402-32.19526s14.46341-32.220842 32.245402-32.220842l194.310497 0 0-132.435265c0-17.780969 14.46341-32.19526 32.248472-32.19526 17.835204 0 32.245402 14.414291 32.245402 32.19526L544.433178 236.72065499999997l194.310497 0c17.835204 0 32.249495 14.43885 32.249495 32.220842S756.577856 301.137781 738.742652 301.137781" horiz-adv-x="1024" /> + + + <glyph glyph-name="addition" unicode="" d="M544 768L480 768 480 416 128 416 128 352 480 352 480 0 544 0 544 352 895.936 352 895.936 416 544 416Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="home" unicode="" d="M824.084343-40.42033900000001H232.898863c-74.604138 0-85.85232 28.334325-85.852321 49.997718l-0.584307 5.314029V447.645552h48.806589v-402.916582c0-25.547863 13.548574-36.343743 37.629015-36.343743h568.020898c25.928532 0 27.978215 6.220678 27.978215 37.84391V447.585177l48.806589 0.118704c0.022513-14.346753 0-382.76666 0-433.098999 0-38.130436-12.726859-54.765301-51.858088-54.765301l-1.76111-0.25992zM1012.470921 493.103884C849.773422 615.120868 687.101505 737.137853 524.404006 859.153814c-6.207375 4.659113-18.433838 4.659113-24.641213 0C337.077573 737.137853 174.393377 615.120868 11.696902 493.103884c-24.856108-18.635429-0.572028-61.044308 24.642236-42.13361A15995638.709915 15995638.709915 0 0 1 512.025071 807.737794c0.988514-0.715291 1.644453-1.144056 2.823302-2.037403 18.040888-13.524015 36.057217-27.036773 54.073546-40.560788 58.291614-43.718711 116.583229-87.437421 174.874843-131.143852 81.33647-61.008492 162.696476-122.015961 244.033969-183.024454 25.212218-18.911722 49.496298 23.497157 24.64019 42.132587z" horiz-adv-x="1024" /> + + + <glyph glyph-name="time" unicode="" d="M511.98464 829.44c-118.97856 0-230.83008-46.35136-314.95168-130.4832C112.90624 614.84032 66.56 502.95808 66.56 384.00512c0-118.9632 46.34624-230.84544 130.47296-314.9568C281.15456-15.093759999999975 393.00608-61.440000000000055 511.98464-61.440000000000055c118.98368 0 230.84032 46.34624 314.9824 130.48832C911.09376 153.15967999999998 957.44 265.02144 957.44 384.00512c0 118.97856-46.34624 230.8352-130.47296 314.95168C742.82496 783.0886399999999 630.96832 829.44 511.98464 829.44z m275.58912-721.02912c-73.61024-73.63584-171.47904-114.18624-275.58912-114.18624s-201.97376 40.5504-275.57888 114.18624c-73.63584 73.61024-114.16064 171.47904-114.16064 275.59424 0 104.11008 40.54528 201.97376 114.18112 275.58912 73.60512 73.63072 171.47392 114.176 275.584 114.176s201.97376-40.54528 275.584-114.176c73.63584-73.61536 114.18112-171.47904 114.18112-275.58912 0-104.1152-40.56576-201.984-114.2016-275.59424zM519.1168 340.20863999999995V628.08064a27.8528 27.8528 0 0 1-27.84256 27.84768 27.8528 27.8528 0 0 1-27.84256-27.84768v-306.23232a27.81184 27.81184 0 0 1 16.88064-25.58976M734.70464 321.84831999999994a31.0784 31.0784 0 0 0-31.07328-31.0784H496.44544a31.08864 31.08864 0 0 0-31.07328 31.0784 31.09376 31.09376 0 0 0 31.07328 31.0784h207.18592a31.08864 31.08864 0 0 0 31.07328-31.0784z" horiz-adv-x="1024" /> + + + <glyph glyph-name="user" unicode="" d="M611.2 342.4c70.4 54.4 115.2 140.8 115.2 230.4 0 156.8-128 288-284.8 288s-284.8-128-284.8-284.8c0-92.8 44.8-182.4 115.2-236.8C108.8 272 0 105.60000000000002 0-80c0-9.6 9.6-19.2 19.2-19.2h848c9.6 0 19.2 9.6 19.2 19.2 0 188.8-112 355.2-275.2 422.4z m-576-396.8C44.8 115.20000000000005 156.8 268.79999999999995 320 320c6.4 3.2 12.8 9.6 12.8 16s-3.2 16-9.6 19.2c-76.8 41.6-128 131.2-128 224 0 134.4 112 246.4 246.4 246.4s246.4-112 246.4-249.6c0-89.6-51.2-176-128-220.8-6.4-3.2-9.6-9.6-9.6-19.2 0-6.4 6.4-12.8 12.8-16 160-51.2 275.2-204.8 281.6-377.6H35.2zM812.8 361.6c54.4 41.6 86.4 108.8 86.4 176 0 89.6-54.4 172.8-134.4 208-9.6 3.2-22.4 0-25.6-9.6-3.2-9.6 0-22.4 9.6-25.6 67.2-28.8 112-99.2 112-172.8 0-67.2-38.4-131.2-96-163.2-6.4-3.2-9.6-9.6-9.6-19.2 0-6.4 6.4-12.8 12.8-16 131.2-41.6 217.6-160 217.6-297.6 0-9.6 9.6-19.2 19.2-19.2s19.2 9.6 19.2 19.2c-3.2 140.8-86.4 262.4-211.2 320z" horiz-adv-x="1024" /> + + + <glyph glyph-name="notice" unicode="" d="M544 798.976V864h-64v-65.024C289.536 786.304 160 658.624 160 416v-288h64V416c0 192 115.456 320 288 320 180.544 0 288-128 288-320v-288h64V416c0 242.88-122.496 370.56-320 382.976zM672 64a160 160 0 1 0-320 0h64a96 96 0 0 1 192 0h64zM64 128h896v-64H64v64z" horiz-adv-x="1024" /> + + + <glyph glyph-name="chrome" unicode="" d="M515.436 583.685H914.285C840.842 730.955 688.748 832.132 513 832.132c-141.284 0-267.274-65.395-349.42-167.546l151.66-262.682c8.535 102.325 95.704 181.781 200.196 181.781zM514.218 550.803c-91.476 0-165.631-74.155-165.631-165.631s74.155-165.631 165.631-165.631c52.7 0 99.615 24.642 129.95 62.999l1.428 2.474 0.355-0.205c21.252 27.852 33.898 62.624 33.898 100.363 0 84.774-63.702 154.626-145.841 164.413l-6.393 0.632c-4.424 0.354-8.882 0.586-13.397 0.586zM929.561 549.585H627.443c52.209-36.066 86.506-96.297 86.506-164.413 0-45.547-18.268-81.598-41.12-121.192L483.898-63.257c9.624-0.617 19.322-0.966 29.102-0.966 247.521 0 448.177 200.656 448.177 448.177 0 58.508-11.225 114.391-31.616 165.631zM514.218 185.441c-83.583 0-144.927 54.804-185.034 124.651l-0.235-0.136-187.482 324.727C93.081 563.124 64.823 476.84 64.823 383.954c0-225.02 165.839-411.288 381.958-443.298l152.278 263.752c-25.769-12.143-54.518-18.967-84.841-18.967z" horiz-adv-x="1024" /> + + + <glyph glyph-name="edge" unicode="" d="M854.794 669.297C797.923 743.783 683.626 823.59 548.62 830.822 136.707 852.889 85.742 435.448 85.742 435.448c55.449 53.038 58.01 97.116 163.936 154.293C673.983 818.768 676.394 476.432 676.394 476.432H346.111c-7.232 65.092 62.681 137.417 62.681 137.417-202.509-98.844-216.974-284.477-216.974-284.477s-28.93-279.655 219.385-364.034 452.029 42.189 452.029 42.189V193.16c-59.065-32.546-102.292-54.405-153.087-63.887-361.623-67.503-364.034 188.044-364.034 188.044h585.83c0 0.001 39.075 199.761-77.147 351.98z" horiz-adv-x="1024" /> + + + <glyph glyph-name="login-weibo" unicode="" d="M411.270737 288.350316c-17.973895 7.504842-41.189053-0.229053-52.264421-17.542737-11.223579-17.394526-5.955368-38.103579 11.870316-46.201263 18.108632-8.232421 42.132211-0.417684 53.342316 17.421474C435.253895 260.05557899999997 429.446737 280.62989500000003 411.270737 288.350316zM455.545263 306.64757899999995c-6.885053 2.721684-15.508211-0.579368-19.550316-7.329684-3.920842-6.790737-1.751579-14.524632 5.146947-17.367579 7.019789-2.883368 16.006737 0.458105 20.048842 7.370105C465.071158 296.259368 462.551579 304.087579 455.545263 306.64757899999995zM427.52 426.684632c-115.968-11.439158-203.924211-82.216421-196.378947-158.073263 7.531789-75.910737 107.654737-128.161684 223.649684-116.749474 115.994947 11.439158 203.924211 82.216421 196.392421 158.140632C643.664842 385.859368 543.541895 438.110316 427.52 426.684632zM529.300211 247.70021099999997c-23.673263-53.355789-91.769263-81.798737-149.530947-63.232-55.754105 17.933474-79.373474 72.811789-54.945684 122.246737 23.956211 48.464842 86.352842 75.870316 141.541053 61.561263C523.506526 353.562947 552.663579 299.85684200000003 529.300211 247.70021099999997zM512 896C229.241263 896 0 666.772211 0 384c0-282.758737 229.241263-512 512-512 282.772211 0 512 229.241263 512 512C1024 666.772211 794.772211 896 512 896zM455.531789 101.02568399999996c-145.354105 0-293.941895 70.197895-293.941895 185.667368 0 60.362105 38.386526 130.182737 104.474947 196.069053 88.252632 87.929263 191.164632 127.986526 229.874526 89.397895 17.084632-17.003789 18.741895-46.457263 7.760842-81.623579-5.726316-17.690947 16.666947-7.895579 16.666947-7.936 71.343158 29.763368 133.564632 31.514947 156.321684-0.862316 12.139789-17.246316 10.954105-41.472-0.215579-69.510737-5.173895-12.921263 1.589895-14.928842 11.466105-17.879579 40.178526-12.422737 84.924632-42.455579 84.924632-95.380211C772.837053 211.36168399999997 646.090105 101.02568399999996 455.531789 101.02568399999996zM718.672842 468.197053c4.715789 14.457263 1.765053 30.962526-9.202526 43.061895-10.954105 12.072421-27.136 16.666947-42.037895 13.527579l0 0.026947c-12.463158-2.694737-24.724211 5.268211-27.392 17.664-2.667789 12.463158 5.281684 24.697263 17.744842 27.338105 30.531368 6.467368 63.595789-2.937263 85.989053-27.715368 22.447158-24.764632 28.456421-58.489263 18.849684-88.064-3.907368-12.099368-16.936421-18.728421-29.062737-14.848-12.139789 3.920842-18.782316 16.922947-14.874947 28.995368L718.672842 468.183579zM853.261474 424.865684c-0.013474-0.013474-0.013474-0.080842-0.013474-0.107789-4.567579-14.026105-19.712-21.706105-33.778526-17.165474-14.133895 4.554105-21.854316 19.590737-17.300211 33.670737l0 0.013474c13.999158 43.169684 5.12 92.429474-27.567158 128.565895-32.714105 36.122947-80.949895 49.92-125.507368 40.488421-14.484211-3.085474-28.752842 6.130526-31.838316 20.574316-3.098947 14.403368 6.144 28.631579 20.641684 31.717053l0.026947 0c62.625684 13.271579 130.519579-6.117053 176.545684-56.966737C860.483368 554.886737 872.892632 485.618526 853.261474 424.865684z" horiz-adv-x="1024" /> + + + <glyph glyph-name="voice" unicode="" d="M463.380164 644.0568969999999v-0.003069c-4.550643 4.549619-10.484795 7.02295-16.913205 7.02295s-12.365632-2.473331-16.915251-7.02295c-4.549619-4.551666-7.020904-10.485819-7.020904-16.914229s2.471284-12.365632 7.020904-16.915251c60.437487-60.438511 93.675496-140.756791 93.675496-226.222301 0-85.464487-33.238009-165.783791-93.675496-226.220255-4.549619-4.551666-7.020904-10.487865-7.020904-16.915252 0-6.429433 2.471284-12.365632 7.020904-16.914228 4.550643-4.549619 10.486842-7.02295 16.915251-7.02295s12.364609 2.473331 16.913205 7.02295c35.114752 35.116799 62.317301 76.06849 80.814584 121.668037 17.904789 44.018539 26.90579 90.608647 26.90579 138.384768s-9.101285 94.26799-26.90579 138.384767c-18.59552 45.697785-45.698808 86.550215-80.814584 121.667013zM781.892405 618.929614v-0.002047c-31.358195 77.452-77.550237 146.990772-137.098471 206.539007-4.550643 4.549619-10.485819 7.02295-16.915252 7.02295-6.42841 0-12.363585-2.473331-16.914228-7.02295-9.29776-9.299807-9.29776-24.531719 0-33.82948 54.997592-54.998615 97.631598-119.195729 126.613676-190.71153 27.993564-69.044516 42.237987-142.045133 42.237987-216.924541s-14.244422-147.882072-42.237987-216.923518c-28.982078-71.517847-71.616084-135.616724-126.613676-190.711529-9.29776-9.298783-9.29776-24.531719 0-33.82948 4.551666-4.551666 10.485819-7.02295 16.914228-7.02295 6.429433 0 12.366655 2.471284 16.915252 7.02295 59.547211 59.547211 105.740276 129.085984 137.098471 206.53696 30.369681 74.78117 45.699832 153.817248 45.699831 234.928591 0 81.111343-15.331173 160.146397-45.699831 234.927567zM299.474141 427.621497c-11.670807 11.573593-27.103288 18.004049-43.522236 18.004049-16.419971 0-31.852452-6.429433-43.52326-18.004049-11.57257-11.57257-18.003026-27.104311-18.003026-43.522236 0-16.420995 6.42841-31.851429 18.003026-43.52326 11.574616-11.57257 27.103288-18.003026 43.52326-18.003025s31.852452 6.429433 43.522236 18.003025c11.573593 11.573593 18.003026 27.104311 18.003025 43.52326 0 16.419971-6.427386 31.852452-18.003025 43.522236z" horiz-adv-x="1024" /> + + + <glyph glyph-name="upload-drag" unicode="" d="M666.931 445.918l-124.245 99.362c-7.221 5.639-16.428 9.042-26.429 9.042-9.963 0-19.136-3.376-26.438-9.047l-124.215-99.391c-9.615-7.772-15.713-19.565-15.713-32.782 0-9.946 3.453-19.084 9.223-26.284 13.828-17.359 41.51-20.465 58.918-6.505l56.252 45.022v-261.12c0-23.177 18.842-41.984 41.95-41.984s41.95 18.842 41.95 41.984v261.12l56.286-45.056c17.545-13.892 45.09-10.718 58.914 6.554 5.754 7.137 9.236 16.316 9.236 26.308 0 13.211-6.086 24.999-15.609 32.716zM235.827 142.95000000000005c-85.026 0-152.542 31.71-188.655 89.839-36.113 58.095-34.406 134.724 4.335 195.174 37.342 58.334 102.366 92.023 178.995 94.549-19.866 130.492 42.667 202.377 84.753 235.008 90.112 69.871 234.257 79.053 335.565 21.367 58.982-33.587 94.037-85.675 100.454-146.978 113.937 18.978 177.562-33.826 206.814-69.905 63.317-78.131 71.27-204.39 18.91-300.203-46.524-85.06-130.389-127.317-229.82-116.497-18.739 2.116-32.222 18.978-30.174 37.683s19.285 32.017 37.683 30.174c96.7-10.718 143.258 46.353 162.406 81.408 39.014 71.373 33.826 167.868-12.049 224.495-38.673 47.684-100.352 60.518-178.483 37.069-2.94-0.916-6.319-1.443-9.822-1.443-18.851 0-34.133 15.282-34.133 34.133 0 1.495 0.096 2.969 0.283 4.414 8.549 68.506-31.114 106.53-65.93 126.362-77.346 44.066-191.522 37.035-259.925-15.974-58.266-45.193-75.947-117.18-51.132-208.179 0.761-2.688 1.198-5.775 1.198-8.963 0-18.851-15.282-34.133-34.133-34.133-1.481 0-2.94 0.094-4.371 0.277-70.759 8.822-128.991-13.535-159.677-61.424-24.61-38.434-26.146-86.46-3.823-122.368 27.716-44.578 86.05-64.375 164.147-55.637 1.132 0.133 2.443 0.209 3.772 0.209 18.853 0 34.138-15.284 34.138-34.138 0-17.525-13.205-31.965-30.208-33.914-14.153-1.653-27.874-2.404-41.118-2.404z" horiz-adv-x="1024" /> + + + <glyph glyph-name="login-qq" unicode="" d="M512 896C229.227789 896 0 666.772211 0 384c0-282.745263 229.227789-512 512-512s512 229.254737 512 512C1024 666.772211 794.772211 896 512 896L512 896zM738.856421 258.93726300000003c0 0-16.208842-44.220632-45.945263-83.941053 0 0 53.126737-18.054737 48.64-64.983579 0 0 1.778526-52.345263-113.461895-48.734316 0 0-81.071158 6.319158-105.377684 40.609684l-21.423158 0c-24.306526-34.304-105.350737-40.609684-105.350737-40.609684-115.280842-3.610947-113.475368 48.734316-113.475368 48.734316-4.500211 46.928842 48.626526 64.983579 48.626526 64.983579-29.709474 39.720421-45.918316 83.941053-45.918316 83.941053-72.057263-116.439579-64.848842 16.249263-64.848842 16.249263 13.527579 78.524632 70.238316 129.967158 70.238316 129.967158-8.111158 71.316211 21.611789 83.941053 21.611789 83.941053C318.410105 709.712842 508.025263 705.859368 512 705.751579c3.988211 0.107789 193.576421 3.961263 199.828211-216.643368 0 0 29.709474-12.638316 21.611789-83.941053 0 0 56.737684-51.442526 70.238316-129.967158l0 0C803.678316 275.18652599999996 810.873263 142.49768400000005 738.856421 258.93726300000003L738.856421 258.93726300000003zM738.856421 258.93726300000003" horiz-adv-x="1024" /> + + + <glyph glyph-name="snowflake" unicode="" d="M480.695-64h63.725V59.291000000000054l68.854-68.242 44.945 44.546-113.798 112.79v180.02l177.271-102.44 41.67-155.652 60.725 16.284-25.398 94.872 85.259-49.266 31.87 55.246-84.726 48.961 94.497 25.343-16.495 61.622-156.068-41.855-176.934 102.245 177.667 102.667 155.513-41.709 16.274 60.793-94.78 25.418 85.255 49.264-31.869 55.247-84.733-48.965 25.326 94.594-61.557 16.51-41.817-156.206-176.948-102.251V644.461l113.849 113.951-44.459 44.496-69.392-69.454V832h-63.725v-97.935l-69.188 69.249-45.068-45.107 114.256-114.355V438.89l-156.557 90.469L283.45 684.39l-60.188-16.458 24.84-94.632-107.544 62.145-31.868-55.247 106.667-61.639-93.463-25.557 16.074-61.237 154.482 42.243 156.169-90.243-156.138-90.226-154.485 42.243-15.855-60.409 94.289-25.784-107.534-62.14 31.868-55.247 106.672 61.642-24.621-93.801 61.012-16.685 40.69 155.028 156.179 90.25v-180.455l-113.801-112.79 44.338-43.944 69.463 68.845V-64z" horiz-adv-x="1024" /> + + + <glyph glyph-name="heart" unicode="" d="M512 4.100000000000023c-108.9 0-447.3 277.5-447.3 522.2 0 131 106.6 237.6 237.6 237.6 94.9 0 174.8-50.2 209.7-76.1 34.9 25.9 114.8 76.1 209.7 76.1 131 0 237.6-106.6 237.6-237.6 0-244.7-338.4-522.2-447.3-522.2zM302.3 708c-100.2 0-181.7-81.5-181.7-181.7 0-221 326.8-466.3 391.4-466.3s391.4 245.3 391.4 466.3c0 100.2-81.5 181.7-181.7 181.7-103.9 0-190.2-76-191.1-76.8-10.6-9.5-26.7-9.5-37.3 0-0.8 0.8-87.7 76.8-191 76.8z" horiz-adv-x="1024" /> + + + <glyph glyph-name="logout" unicode="" d="M512 832a32 32 0 0 1-32-32v-416a32 32 0 0 1 64 0V800a32 32 0 0 1-32 32zM683.34 798.06a32 32 0 0 1-24.48-59.15C798.07 681.24 896 544.06 896 384c0-212.08-171.92-384-384-384S128 171.91999999999996 128 384c0 160.06 97.93 297.24 237.14 354.91a32 32 0 0 1-24.48 59.15C178.25 730.78 64 570.74 64 384c0-247.42 200.58-448 448-448s448 200.58 448 448c0 186.74-114.25 346.78-276.66 414.06z" horiz-adv-x="1024" /> + + + <glyph glyph-name="file-b" unicode="" d="M790.08 177.91999999999996l-138.112-119.232V177.91999999999996h138.112zM198.848 763.008h627.328v-516.16H617.088a34.56 34.56 0 0 1-34.816-34.432v-206.528H198.848V763.008z m662.208 68.8H164.032a34.56 34.56 0 0 1-34.816-34.432v-825.92a34.56 34.56 0 0 1 34.816-34.432h453.056l278.784 240.896V797.376a34.56 34.56 0 0 1-34.816 34.432z" horiz-adv-x="1024" /> + + + <glyph glyph-name="template" unicode="" d="M734 172.89999999999998v82.8h-59.9v-37l-35.7-9.7 15.7-57.8zM674.1 419.3H734v-81.8h-59.9zM734 600.2l-95.6-26 15.7-57.8 20 5.4v-20.7H734zM866.1 131.29999999999995v-37l-35.7-9.7 7.9-28.9 7.8-28.9 79.9 21.7v82.8h-29.9zM740.9 60.299999999999955L651.4 36l7.9-28.9 7.8-29 89.5 24.4-7.8 28.9zM740.9 781.7l-89.5-24.3 7.9-28.9 7.8-28.9 89.5 24.3-7.8 28.9zM830.4 806l7.9-28.9 7.8-28.9 20 5.5v-20.8H926V832zM866.1 612.6v-120.3H926V612.6h-29.9zM866.1 371.9v-120.3H926V371.9h-29.9zM541.9 665.6l35.7 9.7-7.8 28.9-7.8 28.9-50-13.6L98 832v-783.5l384.1-104.3L512-64l29.9 8.1 35.7 9.7-7.8 28.9-7.8 28.9-20-5.4V120.79999999999995l35.7 9.7-15.7 57.8-20-5.4V486l35.7 9.7-15.7 57.8-20-5.4V665.6z m-59.8-659.4l-324.2 88.1V753.7l324.2-88.1V548l-192 52.2v-427.3l192-52.2v-114.5z m0 360.9V182.79999999999995l-132.2 35.9V521.8l132.2-35.9v-118.8z" horiz-adv-x="1024" /> + + + <glyph glyph-name="transfer" unicode="" d="M320 768H128c-35.2 0-64-28.8-64-64v-640c0-35.2 28.8-64 64-64h192c35.2 0 64 28.8 64 64V704c0 35.2-28.8 64-64 64z m0-672c0-16-16-32-32-32H160c-16 0-32 16-32 32V672c0 16 16 32 32 32h128c16 0 32-16 32-32v-576z m256 544h-64c-19.2 0-32-12.8-32-32s16-32 32-32h64c19.2 0 32 12.8 32 32s-16 32-32 32z m-64-448h-64c-19.2 0-32-12.8-32-32s16-32 32-32h64c19.2 0 32 12.8 32 32s-16 32-32 32z m384 576H704c-35.2 0-64-28.8-64-64v-640c0-35.2 28.8-64 64-64h192c35.2 0 64 28.8 64 64V704c0 35.2-28.8 64-64 64z m0-672c0-16-16-32-32-32H736c-16 0-32 16-32 32V672c0 16 16 32 32 32h128c16 0 32-16 32-32v-576z" horiz-adv-x="1024" /> + + + <glyph glyph-name="auz" unicode="" d="M324.266667 435.2c-17.066667 17.066667-39.822222 17.066667-51.2 0-17.066667-17.066667-17.066667-39.822222 0-51.2l153.6-159.288889c5.688889-5.688889 17.066667-11.377778 28.444444-11.377778s17.066667 5.688889 28.444445 11.377778l295.822222 290.133333c17.066667 17.066667 17.066667 39.822222 0 51.2-17.066667 17.066667-39.822222 17.066667-51.2 0L455.111111 304.355556 324.266667 435.2zM927.288889 753.777778L523.377778 896h-22.755556L96.711111 753.777778c-17.066667-5.688889-28.444444-17.066667-28.444444-34.133334v-432.355555c11.377778-250.311111 409.6-409.6 426.666666-415.288889h22.755556c17.066667 5.688889 415.288889 159.288889 426.666667 415.288889V719.644444c11.377778 17.066667 0 28.444444-17.066667 34.133334z m-45.511111-460.8c-5.688889-182.044444-301.511111-312.888889-369.777778-341.333334-113.777778 45.511111-358.4 182.044444-369.777778 341.333334v398.222222L512 822.044444l369.777778-125.155555v-403.911111z" horiz-adv-x="1024" /> + + + <glyph glyph-name="console" unicode="" d="M30.552 104.72699999999998c4.654-16.29 23.272-23.272 37.236-18.618 16.291 4.655 23.273 23.273 18.618 37.236C16.588 314.182 84.08 521.31 237.68 640c11.636 9.31 23.273 16.29 37.236 25.6 25.6 16.29 53.528 30.255 83.782 39.564 58.182 20.945 118.691 30.254 176.873 27.927h25.6c6.982 0 11.636 0 18.618-2.327 30.255-4.655 58.182-11.637 88.436-23.273 235.055-86.11 356.073-346.764 269.964-581.818-4.654-16.291 2.327-32.582 18.618-37.237 16.291-4.654 32.582 2.328 37.237 18.619 41.89 116.363 39.563 239.709 0 349.09h2.327C921.897 656.2909999999999 738.043 784.2909999999999 537.897 793.6h-48.873c-200.145-9.31-384-137.31-458.472-337.455-39.564-109.381-41.891-232.727 0-351.418z m707.49 386.328a29.498 29.498 0 0 1-41.89 0L521.606 316.509c-4.654 2.327-9.309 2.327-13.963 2.327-32.582 0-58.182-25.6-58.182-58.181s25.6-58.182 58.182-58.182 58.181 25.6 58.181 58.182c0 4.654 0 9.309-2.327 16.29l174.546 174.546c11.636 11.636 11.636 30.254 0 39.564z m228.073-458.473H58.48c-16.29 0-30.255-13.964-30.255-30.255 0-16.29 13.964-30.254 30.255-30.254h907.636c16.291 0 30.255 13.963 30.255 30.254 0 16.291-13.964 30.255-30.255 30.255z" horiz-adv-x="1024" /> + + + <glyph glyph-name="app" unicode="" d="M432.022 818.946h-376.324c-6.627 0-12.078-5.45-12.078-12.078v-376.324c0-6.627 5.45-12.078 12.078-12.078h376.324c6.627 0 12.078 5.45 12.078 12.078v376.473c0 6.627-5.45 11.93-12.078 11.93zM391.517 471.196h-295.169v295.169h295.021v-295.169zM976.847 635.717l-211.95 211.95c-8.837 8.837-23.124 8.837-31.963 0l-211.95-211.95c-8.837-8.837-8.837-23.124 0-31.963l211.95-212.098c8.837-8.837 23.124-8.837 31.963 0l211.95 211.95c8.837 8.987 8.837 23.271 0 32.109zM432.022 313.45000000000005h-376.324c-6.627 0-12.078-5.45-12.078-12.078v-376.324c0-6.627 5.45-12.078 12.078-12.078h376.324c6.627 0 12.078 5.45 12.078 12.078v376.473c0 6.627-5.45 11.93-12.078 11.93zM391.517-34.15499999999997h-295.169v295.021h295.021v-295.021zM932.511 313.45000000000005h-376.324c-6.627 0-12.078-5.45-12.078-12.078v-376.324c0-6.627 5.45-12.078 12.078-12.078h376.324c6.627 0 12.078 5.45 12.078 12.078v376.473c0 6.627-5.45 11.93-12.078 11.93zM891.859-34.15499999999997h-295.021v295.021h295.021v-295.021z" horiz-adv-x="1024" /> + + + <glyph glyph-name="prev" unicode="" d="M62.573 384.103l423.401 423.662c18.985 18.985 49.757 18.985 68.727 0 18.982-18.972 18.985-49.746 0-68.729l-355.058-355.067 356.796-356.796c18.977-18.971 18.976-49.746 0-68.727-18.982-18.976-49.751-18.976-68.727 0l-39.753 39.753 0.269 0.246-385.655 385.661zM451.365 384.103l423.407 423.662c18.985 18.985 49.757 18.985 68.727 0 18.982-18.972 18.985-49.746 0-68.729l-355.058-355.067 356.796-356.796c18.977-18.971 18.976-49.746 0-68.727-18.982-18.976-49.757-18.977-68.727 0l-39.762 39.754 0.273 0.249-385.662 385.661zM451.365 384.103z" horiz-adv-x="1024" /> + + + <glyph glyph-name="website" unicode="" d="M777.073418 147.443038c-30.460759 21.387342-40.83038 40.182278-76.47595 53.792405 25.275949 60.273418 40.182278 83.605063 42.126583 154.896203H887.898734c-3.888608-99.159494-45.367089-143.878481-110.825316-208.688608zM136.101266 356.13164600000005h167.210126c1.944304-71.291139 16.850633-94.622785 42.126583-154.896203-34.997468-13.610127-68.050633-31.756962-98.511393-53.792405C181.468354 212.25316499999997 139.989873 256.97215200000005 136.101266 356.13164600000005z m103.048101 259.888607c29.164557-23.979747 61.56962-42.774684 96.567089-57.681012-19.443038-53.792405-30.460759-90.734177-31.756962-152.951899H136.101266c3.240506 90.734177 46.663291 147.767089 103.048101 210.632911z m309.144304-209.98481V523.989873c47.311392 1.296203 71.291139 10.36962 114.065823 25.27595 18.146835-51.2 28.516456-84.901266 30.460759-143.23038H548.293671z m104.344304-195.078481c-40.182278 12.962025-60.273418 20.091139-104.344304 21.387342V356.13164600000005h144.526582c-1.944304-68.050633-16.202532-88.141772-40.182278-145.174684z m36.941772-57.681013c31.756962-12.313924 39.534177-28.516456 66.75443-47.311392-51.848101-44.718987-114.713924-73.883544-182.116455-84.901266 36.941772 37.589873 90.734177 82.308861 115.362025 132.212658z m-163.321519-137.397468l22.035443 165.913924c40.182278-1.296203 56.38481-7.777215 92.678481-18.794937-27.220253-56.38481-66.106329-106.288608-113.417722-147.118987h-1.296202z m-75.827848 5.18481c-67.402532 11.017722-130.268354 40.83038-182.764557 84.901266 27.868354 19.443038 57.681013 34.997468 88.789873 47.311392 23.331646-48.607595 55.088608-93.326582 93.974684-132.212658z m47.311392 335.068355v-123.787342c-44.070886-1.296203-64.162025-8.425316-104.344304-21.387342-23.979747 57.681013-38.237975 77.124051-40.182278 145.174684h144.526582zM383.675949 549.265823c42.774684-14.906329 66.75443-23.331646 114.065823-25.27595v-117.95443H353.21519c1.944304 58.329114 12.313924 92.03038 30.460759 143.23038z m-37.589873 57.032911c-31.756962 12.962025-60.921519 30.460759-88.141772 51.848101 53.792405 51.848101 115.362025 91.382278 192.486076 104.344304-44.718987-44.718987-80.364557-97.863291-104.344304-156.192405z m151.655696 161.377215v-193.782278c-44.070886 1.296203-64.162025 9.073418-103.696202 22.683544 29.164557 68.698734 49.903797 127.027848 102.4 171.098734h1.296202z m75.827848-4.536708c77.772152-13.610127 149.711392-49.903797 206.744304-104.344304-29.164557-22.035443-46.01519-37.589873-80.364557-51.848102-25.275949 59.625316-82.956962 112.76962-126.379747 156.192406z m-46.01519 4.536708c54.440506-46.01519 97.21519-104.992405 124.435443-171.098734-39.534177-13.610127-59.625316-21.387342-103.696202-22.683544l-22.035443 193.782278h1.296202z m-31.10886-751.149367c-46.663291 38.886076-62.865823 88.789873-91.382279 147.118988 36.293671 11.665823 53.144304 17.498734 93.326582 18.794936v-165.913924h-1.944303zM887.898734 406.035443h-145.174683c-1.296203 61.56962-12.313924 98.511392-31.756962 152.303798 37.589873 15.55443 57.032911 33.053165 88.789873 57.681012 56.38481-62.865823 84.901266-119.898734 88.141772-209.98481z m-375.898734 427.746835c-244.334177 0-442.005063-197.670886-442.005063-442.005063S267.665823-50.227847999999994 512-50.227847999999994s442.005063 197.670886 442.005063 442.005063S756.334177 833.782278 512 833.782278z" horiz-adv-x="1024" /> + + + <glyph glyph-name="next" unicode="" d="M948.066926 382.958838l-411.990051-412.24426c-18.47333-18.47333-48.417689-18.47333-66.875207 0-18.47333 18.461167-18.47333 48.405526 0 66.875207L814.691135 383.088983 467.512212 730.269123c-18.466032 18.458735-18.466032 48.405526 0 66.873991 18.468465 18.464816 48.410391 18.464816 66.872774 0l38.682336-38.682336-0.261507-0.239614 375.259894-375.265975v0.003649m-378.312834 0L157.756743-29.28542200000004c-18.47333-18.47333-48.415256-18.47333-66.872775 0-18.47333 18.461167-18.47333 48.405526 0 66.875207L436.369787 383.088983 89.19208 730.269123c-18.4636 18.458735-18.4636 48.405526 0 66.873991 18.470898 18.464816 48.415256 18.464816 66.872774 0l38.692067-38.682336-0.266372-0.239614 375.267191-375.265975-0.004865 0.003649m0 0z" horiz-adv-x="1024" /> + + + <glyph glyph-name="component" unicode="" d="M917.376 652.544L500.8 891.2a34.304 34.304 0 0 1-34.176 0L50.112 652.48a33.92 33.92 0 0 1-17.088-29.376v-477.44c0-12.16 6.528-23.296 17.088-29.44l416.512-238.72a35.136 35.136 0 0 1 34.176 0l416.576 238.72a33.92 33.92 0 0 1 17.088 29.44v477.44a33.92 33.92 0 0 1-17.088 29.44z m-51.264-487.36l-382.4-219.136-382.336 219.136V603.52l382.336 219.136 382.4-219.136v-438.272zM198.784 535.488a33.792 33.792 0 0 1 12.544-46.4l237.824-136.32V83.20000000000005c0-18.816 15.232-33.92 34.176-33.92a33.92 33.92 0 0 1 34.176 33.92V352.384l238.656 136.832a33.856 33.856 0 0 1 12.544 46.4 34.368 34.368 0 0 1-46.72 12.416L483.712 411.52 245.504 548.0319999999999a34.432 34.432 0 0 1-46.72-12.544z" horiz-adv-x="1024" /> + + + <glyph glyph-name="android" unicode="" d="M391.405714 619.995429a22.308571 22.308571 0 0 1 0 44.544c-11.995429 0-21.723429-10.276571-21.723428-22.272s9.728-22.272 21.723428-22.272z m241.152 0c11.995429 0 21.723429 10.276571 21.723429 22.272s-9.728 22.272-21.723429 22.272a22.308571 22.308571 0 0 1 0-44.544zM168.539429 514.852571a58.514286 58.514286 0 0 0 58.294857-58.294857v-245.723428c0-32.585143-25.709714-58.843429-58.294857-58.843429S109.696 178.285714 109.696 210.834286v245.723428c0 32 26.294857 58.294857 58.843429 58.294857z m605.732571-10.861714v-380.562286c0-34.852571-28.013714-62.866286-62.281143-62.866285h-42.861714v-129.718857c0-32.585143-26.294857-58.843429-58.843429-58.843429s-58.843429 26.294857-58.843428 58.843429v129.718857H472.594286v-129.718857c0-32.585143-26.294857-58.843429-58.843429-58.843429a58.660571 58.660571 0 0 0-58.294857 58.843429l-0.585143 129.718857H312.594286a62.683429 62.683429 0 0 0-62.866286 62.866285V503.990857h524.580571z m-132.571429 231.424c80.018286-41.142857 134.290286-119.990857 134.290286-210.870857H247.424c0 90.843429 54.272 169.728 134.838857 210.870857L341.705143 810.276571a8.338286 8.338286 0 0 0 2.852571 11.446858c3.986286 1.718857 9.142857 0.585143 11.446857-3.437715L397.147429 742.838857c34.852571 15.433143 73.728 23.990857 114.870857 23.990857s80.018286-8.557714 114.870857-23.990857l41.142857 75.446857c2.304 3.986286 7.424 5.156571 11.446857 3.437715a8.338286 8.338286 0 0 0 2.852572-11.446858zM914.267429 456.557714v-245.723428c0-32.585143-26.294857-58.843429-58.843429-58.843429a58.660571 58.660571 0 0 0-58.294857 58.843429v245.723428a58.148571 58.148571 0 0 0 58.294857 58.294857c32.585143 0 58.843429-25.709714 58.843429-58.294857z" horiz-adv-x="1024" /> + + + <glyph glyph-name="more" unicode="" d="M224 288c-52.928 0-96 43.072-96 96s43.072 96 96 96 96-43.072 96-96-43.072-96-96-96z m288 0c-52.928 0-96 43.072-96 96s43.072 96 96 96 96-43.072 96-96-43.072-96-96-96z m288 0c-52.928 0-96 43.072-96 96s43.072 96 96 96 96-43.072 96-96-43.072-96-96-96z" horiz-adv-x="1024" /> + + + <glyph glyph-name="login-wechat" unicode="" d="M516.464646 896C233.714646 896 4.464646 666.75 4.464646 384S233.714646-128 516.464646-128s512 229.25 512 512S799.214646 896 516.464646 896z m-74-523.375c-0.25-0.75-0.5-1.125-0.75-1.875-0.25-0.75-0.5-1.125-0.75-1.875-0.25-0.75-0.5-1.125-0.75-1.875-0.25-0.75-0.5-1.125-0.75-1.875-0.25-0.75-0.5-1.125-0.75-1.875-0.25-0.75-0.5-1.125-0.75-1.875-0.25-0.75-0.5-1.125-0.75-1.875-0.25-0.75-0.5-1.125-0.75-1.875-0.25-0.75-0.5-1.125-0.5-1.875-0.25-0.75-0.5-1.125-0.5-1.875-0.25-0.75-0.5-1.125-0.5-1.875-0.25-0.75-0.25-1.125-0.5-1.875s-0.5-1.125-0.5-1.875c-0.25-0.75-0.25-1.125-0.5-1.875s-0.25-1.125-0.5-1.875-0.25-1.125-0.5-1.875-0.25-1.125-0.5-1.875-0.25-1.125-0.5-1.875-0.25-1.125-0.5-1.875-0.25-1.125-0.5-1.875-0.25-1.125-0.5-1.875c0-0.75-0.25-1.125-0.25-1.875s-0.25-1.125-0.25-1.875-0.25-1.125-0.25-1.875-0.25-1.125-0.25-1.875-0.25-1.125-0.25-1.875-0.25-1.125-0.25-1.875-0.25-1.125-0.25-1.875-0.25-1.125-0.25-1.875-0.25-1.125-0.25-1.875 0-1.125-0.25-1.875c0-0.75-0.25-1.125-0.25-1.875s0-1.125-0.25-1.875c0-0.75 0-1.125-0.25-1.875 0-0.75 0-1.125-0.25-1.875v-22.5c0-0.75 0-1.125 0.25-1.875 0-0.75 0-1.125 0.25-1.875 0-0.75 0-1.125 0.25-1.875 0-0.75 0-1.125 0.25-1.875 0-0.75 0.25-1.125 0.25-1.875s0.25-1.125 0.25-1.875 0.25-1.125 0.25-1.875 0.25-1.125 0.25-1.875 0.25-1.125 0.25-1.875 0.25-1.125 0.25-1.875 0.25-1.125 0.25-1.875 0.25-1.125 0.25-1.875 0.25-1.125 0.25-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875l0.25-0.875c-4.25-0.25-8.625-0.75-12.75-0.75-3.75-0.25-7.25-0.25-11-0.25-3.5 0-7 0-10.5 0.25-7.25 0.25-14 0.875-20.75 1.875-4.25 0.5-8.125 1.125-12.375 1.875-3.5 0.5-6.75 1.125-10.25 1.875-3 0.5-6.25 1.125-9.25 1.875-3 0.75-5.875 1.125-8.875 1.875-2.75 0.75-5.875 1.125-8.875 1.875-2.75 0.5-5.625 1.125-8.375 1.625l-3.25-1.625-3.75-1.875-4 1.375-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-2.75-1.375-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-2.5-1.375 0.5 1.375 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.5 1.125c-0.5 0.25-0.75 0.5-1.125 0.75-0.875 0.75-1.625 1.125-2.5 1.875s-1.625 1.125-2.5 1.875-1.625 1.125-2.5 1.875c-0.75 0.75-1.625 1.125-2.375 1.875-0.75 0.75-1.625 1.125-2.375 1.875-0.75 0.75-1.625 1.125-2.375 1.875-0.75 0.75-1.625 1.125-2.375 1.875-0.75 0.75-1.375 1.125-2.375 1.875-0.75 0.75-1.375 1.125-2.125 1.875-0.75 0.75-1.375 1.125-2.125 1.875-0.75 0.75-1.375 1.125-2.125 1.875-0.75 0.75-1.375 1.125-2.125 1.875-0.75 0.75-1.375 1.125-2.125 1.875-0.75 0.75-1.375 1.125-2.125 1.875-0.75 0.75-1.375 1.125-1.875 1.875-0.75 0.75-1.375 1.125-1.875 1.875l-1.875 1.875-1.875 1.875-1.875 1.875-1.875 1.875c-0.75 0.75-1.125 1.125-1.625 1.875s-1.125 1.125-1.625 1.875-1.125 1.125-1.625 1.875-1.125 1.125-1.625 1.875-1.125 1.125-1.625 1.875-1.125 1.125-1.625 1.875-0.875 1.125-1.625 1.875c-0.5 0.75-0.875 1.125-1.625 1.875-0.5 0.75-0.875 1.125-1.375 1.875-0.5 0.75-0.875 1.125-1.375 1.875-0.5 0.75-0.875 1.125-1.375 1.875-0.5 0.75-0.875 1.125-1.375 1.875-0.5 0.75-0.875 1.125-1.375 1.875-0.5 0.75-0.875 1.125-1.375 1.875-0.5 0.75-0.875 1.125-1.375 1.875-0.5 0.75-0.875 1.125-1.375 1.875-0.5 0.75-0.875 1.125-1.125 1.875-0.5 0.75-0.875 1.125-1.125 1.875-0.5 0.75-0.75 1.125-1.125 1.875-0.5 0.75-0.75 1.125-1.125 1.875-0.5 0.75-0.75 1.125-1.125 1.875-0.5 0.75-0.75 1.125-1.125 1.875-0.5 0.75-0.75 1.125-1.125 1.875-0.5 0.75-0.75 1.125-1.125 1.875-0.25 0.75-0.75 1.125-0.875 1.875-0.25 0.75-0.75 1.125-0.875 1.875-0.25 0.75-0.75 1.125-0.875 1.875-0.25 0.75-0.75 1.125-0.875 1.875-0.25 0.75-0.75 1.125-0.875 1.875-0.25 0.75-0.75 1.125-0.875 1.875-0.25 0.75-0.75 1.125-0.875 1.875-0.25 0.75-0.5 1.125-0.875 1.875-0.25 0.75-0.5 1.125-0.875 1.875-0.25 0.75-0.5 1.125-0.875 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.5 1.875-0.25 0.75-0.5 1.125-0.5 1.875-0.25 0.75-0.5 1.125-0.5 1.875-0.25 0.75-0.25 1.125-0.5 1.875s-0.25 1.125-0.5 1.875-0.25 1.125-0.5 1.875-0.25 1.125-0.5 1.875-0.25 1.125-0.5 1.875-0.25 1.125-0.5 1.875-0.25 1.125-0.5 1.875-0.25 1.125-0.5 1.875-0.25 1.125-0.25 1.875-0.25 1.125-0.25 1.875-0.25 1.125-0.25 1.875-0.25 1.125-0.25 1.875-0.25 1.125-0.25 1.875-0.25 1.125-0.25 1.875-0.25 1.125-0.25 1.875-0.25 1.125-0.25 1.875-0.25 1.125-0.25 1.875 0 1.125-0.25 1.875c0 0.75 0 1.125-0.25 1.875 0 0.75 0 1.125-0.25 1.875 0 0.75 0 1.125-0.25 1.875V457.25v1.875 1.875 1.875 1.875 1.875 0.875 0.875 1.875 1.875 1.875 1.875 1.875 1.875c0 0.75 0 1.125 0.25 1.875 0 0.75 0 1.125 0.25 1.875 0 0.75 0 1.125 0.25 1.875 0 0.75 0.25 1.125 0.25 1.875s0.25 1.125 0.25 1.875 0.25 1.125 0.25 1.875 0.25 1.125 0.25 1.875 0.25 1.125 0.25 1.875 0.25 1.125 0.25 1.875 0.25 1.125 0.25 1.875 0.25 1.125 0.25 1.875 0.25 1.125 0.25 1.875 0.25 1.125 0.5 1.875c0 0.75 0.25 1.125 0.5 1.875s0.25 1.125 0.5 1.875 0.25 1.125 0.5 1.875 0.25 1.125 0.5 1.875 0.25 1.125 0.5 1.875 0.25 1.125 0.5 1.875 0.25 1.125 0.5 1.875 0.25 1.125 0.5 1.875 0.25 1.125 0.5 1.875 0.25 1.125 0.5 1.875 0.5 1.125 0.5 1.875c0.25 0.75 0.5 1.125 0.5 1.875 0.25 0.75 0.5 1.125 0.5 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.875 1.875 0.25 0.75 0.5 1.125 0.875 1.875 0.25 0.75 0.5 1.125 0.875 1.875 0.25 0.75 0.75 1.125 0.875 1.875 0.25 0.75 0.75 1.125 0.875 1.875 0.25 0.75 0.75 1.125 0.875 1.875 0.25 0.75 0.75 1.125 0.875 1.875 0.25 0.75 0.75 1.125 0.875 1.875 0.25 0.75 0.75 1.125 0.875 1.875 0.25 0.75 0.75 1.125 1.125 1.875 0.5 0.75 0.75 1.125 1.125 1.875 0.5 0.75 0.75 1.125 1.125 1.875 0.5 0.75 0.75 1.125 1.125 1.875 0.5 0.75 0.75 1.125 1.125 1.875 0.5 0.75 0.75 1.125 1.125 1.875 0.5 0.75 0.75 1.125 1.125 1.875 0.5 0.75 0.875 1.125 1.125 1.875 0.5 0.75 0.875 1.125 1.125 1.875 0.5 0.75 0.875 1.125 1.125 1.875 0.5 0.75 0.875 1.125 1.375 1.875 0.5 0.75 0.875 1.125 1.375 1.875 0.5 0.75 0.875 1.125 1.375 1.875 0.5 0.75 0.875 1.125 1.375 1.875 0.5 0.75 0.875 1.125 1.375 1.875 0.5 0.75 0.875 1.125 1.375 1.875 0.5 0.75 0.875 1.125 1.375 1.875 0.5 0.75 0.875 1.125 1.625 1.875 0.5 0.75 0.875 1.125 1.625 1.875 0.5 0.75 1.125 1.125 1.625 1.875s1.125 1.125 1.625 1.875 1.125 1.125 1.625 1.875 1.125 1.125 1.625 1.875 1.125 1.125 1.625 1.875l1.875 1.875 1.875 1.875 1.875 1.875 1.875 1.875c0.75 0.75 1.375 1.125 1.875 1.875 0.75 0.75 1.375 1.125 2.125 1.875 0.75 0.75 1.375 1.125 2.125 1.875 0.75 0.75 1.375 1.125 2.125 1.875 0.75 0.75 1.375 1.125 2.125 1.875 0.75 0.75 1.375 1.125 2.125 1.875 0.75 0.75 1.375 1.125 2.375 1.875 0.75 0.75 1.625 1.125 2.375 1.875 0.75 0.75 1.625 1.125 2.375 1.875 0.75 0.75 1.625 1.125 2.375 1.875 0.875 0.75 1.625 1.125 2.5 1.875s1.625 1.125 2.5 1.875 1.875 1.125 2.5 1.875c0.875 0.75 1.875 1.125 2.75 1.875 0.875 0.75 1.875 1.125 2.75 1.875 0.875 0.75 1.875 1.125 2.75 1.875 0.875 0.75 1.875 1.125 3 1.875 0.875 0.75 2.125 1.125 3 1.875s2.125 1.125 3 1.875c1.125 0.75 2.125 1.125 3.25 1.875 1.125 0.75 2.375 1.125 3.25 1.875 1.125 0.75 2.375 1.125 3.5 1.875 1.125 0.75 2.375 1.125 3.75 1.875 1.125 0.75 2.5 1.125 3.75 1.875 1.375 0.75 2.5 1.125 4 1.875 1.375 0.75 2.75 1.125 4.25 1.875 1.375 0.75 2.75 1.125 4.25 1.875 1.375 0.75 3 1.125 4.375 1.875 1.625 0.75 3 1.125 4.625 1.875 1.625 0.75 3.25 1.125 4.875 1.875 1.875 0.75 3.5 1.125 5.375 1.875s3.75 1.125 5.625 1.875c2.125 0.75 4.25 1.125 6 1.875 2.375 0.75 4.375 1.125 6.75 1.875 2.5 0.75 4.875 1.125 7.5 1.875 2.75 0.75 5.625 1.125 8.625 1.875 3.5 0.75 6.75 1.125 10.25 1.875 4.375 0.75 8.875 1.375 13.25 1.875 11 1.125 22.125 1.875 33.25 1.875h2.5c11.125 0 22.375-0.75 33.5-1.875 4.375-0.5 8.875-1.125 13.25-1.875 3.5-0.5 7-1.125 10.25-1.875 2.75-0.5 5.875-1.125 8.625-1.875 2.5-0.5 5.125-1.125 7.625-1.875 2.375-0.5 4.625-1.125 6.75-1.875 2.125-0.5 4.25-1.125 6.25-1.875 1.875-0.75 4-1.125 5.875-1.875s3.75-1.125 5.375-1.875c1.625-0.75 3.5-1.125 5.125-1.875 1.625-0.75 3.25-1.125 4.875-1.875 1.625-0.75 3-1.125 4.625-1.875 1.375-0.75 3-1.125 4.375-1.875s2.75-1.125 4.25-1.875c1.375-0.75 2.75-1.125 4-1.875 1.375-0.75 2.5-1.125 3.75-1.875 1.125-0.75 2.5-1.125 3.75-1.875 1.125-0.75 2.375-1.125 3.5-1.875 1.125-0.75 2.375-1.125 3.5-1.875 1.125-0.75 2.375-1.125 3.25-1.875 1.125-0.75 2.125-1.125 3.25-1.875 1.125-0.75 2.125-1.125 3-1.875s2.125-1.125 3-1.875 1.875-1.125 3-1.875c0.875-0.75 1.875-1.125 2.75-1.875 0.875-0.75 1.875-1.125 2.75-1.875 0.875-0.75 1.875-1.125 2.75-1.875 0.875-0.75 1.875-1.125 2.5-1.875 0.875-0.75 1.625-1.125 2.5-1.875s1.625-1.125 2.5-1.875 1.625-1.125 2.375-1.875c0.75-0.75 1.625-1.125 2.375-1.875 0.75-0.75 1.625-1.125 2.375-1.875 0.75-0.75 1.375-1.125 2.375-1.875 0.75-0.75 1.375-1.125 2.375-1.875 0.75-0.75 1.375-1.125 2.125-1.875 0.75-0.75 1.375-1.125 2.125-1.875 0.75-0.75 1.375-1.125 2.125-1.875 0.75-0.75 1.375-1.125 2.125-1.875 0.75-0.75 1.375-1.125 1.875-1.875 0.75-0.75 1.375-1.125 1.875-1.875l1.875-1.875 1.875-1.875 1.875-1.875 1.875-1.875c0.75-0.75 1.125-1.125 1.625-1.875s1.125-1.125 1.625-1.875 1.125-1.125 1.625-1.875 1.125-1.125 1.625-1.875 1.125-1.125 1.625-1.875 0.875-1.125 1.625-1.875c0.5-0.75 0.875-1.125 1.625-1.875 0.5-0.75 0.875-1.125 1.375-1.875 0.5-0.75 0.875-1.125 1.375-1.875 0.5-0.75 0.875-1.125 1.375-1.875 0.5-0.75 0.875-1.125 1.375-1.875 0.5-0.75 0.875-1.125 1.375-1.875 0.5-0.75 0.875-1.125 1.375-1.875 0.5-0.75 0.875-1.125 1.375-1.875 0.5-0.75 0.875-1.125 1.125-1.875 0.5-0.75 0.875-1.125 1.125-1.875 0.5-0.75 0.875-1.125 1.125-1.875 0.5-0.75 0.75-1.125 1.125-1.875 0.5-0.75 0.75-1.125 1.125-1.875 0.5-0.75 0.75-1.125 1.125-1.875 0.5-0.75 0.75-1.125 1.125-1.875 0.5-0.75 0.75-1.125 1.125-1.875 0.5-0.75 0.75-1.125 1.125-1.875 0.5-0.75 0.75-1.125 0.875-1.875 0.25-0.75 0.75-1.125 0.875-1.875 0.25-0.75 0.75-1.125 0.875-1.875 0.25-0.75 0.75-1.125 0.875-1.875 0.25-0.75 0.75-1.125 0.875-1.875 0.25-0.75 0.75-1.125 0.875-1.875 0.25-0.75 0.75-1.125 0.875-1.875 0.25-0.75 0.75-1.125 0.875-1.875 0.25-0.75 0.5-1.125 0.875-1.875 0.25-0.75 0.5-1.125 0.875-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.5-1.875 0.25-0.75 0.5-1.125 0.5-1.875 0.25-0.75 0.25-1.125 0.5-1.875s0.5-1.125 0.5-1.875c0.25-0.75 0.25-1.125 0.5-1.875s0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875c0-0.5 0.25-0.75 0.25-1.125-4.625 0.5-9.25 0.875-14 1.125-3.5 0.25-7 0.25-10.75 0.25-4 0-8.125 0-12.125-0.25-6.75-0.25-13.25-0.875-19.5-1.875-3.75-0.5-7.625-1.125-11.375-1.875-3-0.5-5.875-1.125-8.875-1.875-2.5-0.5-5.125-1.125-7.5-1.875-2.125-0.5-4.375-1.125-6.5-1.875-1.875-0.5-4-1.125-5.875-1.875-1.875-0.5-3.5-1.125-5.375-1.875-1.625-0.75-3.25-1.125-4.875-1.875-1.625-0.75-3-1.125-4.625-1.875-1.375-0.75-3-1.125-4.375-1.875s-2.75-1.125-4.25-1.875c-1.375-0.75-2.5-1.125-4-1.875-1.125-0.75-2.5-1.125-3.75-1.875-1.125-0.75-2.375-1.125-3.5-1.875-1.125-0.75-2.375-1.125-3.5-1.875-1.125-0.75-2.125-1.125-3.25-1.875-0.875-0.75-2.125-1.125-3-1.875s-2.125-1.125-3-1.875-1.875-1.125-3-1.875c-0.875-0.75-1.875-1.125-2.75-1.875-0.875-0.75-1.875-1.125-2.75-1.875-0.875-0.75-1.875-1.125-2.5-1.875-0.875-0.75-1.625-1.125-2.5-1.875s-1.625-1.125-2.5-1.875c-0.75-0.75-1.625-1.125-2.375-1.875-0.75-0.75-1.625-1.125-2.375-1.875-0.75-0.75-1.625-1.125-2.375-1.875-0.75-0.75-1.375-1.125-2.125-1.875-0.75-0.75-1.375-1.125-2.125-1.875-0.75-0.75-1.375-1.125-2.125-1.875-0.75-0.75-1.375-1.125-2.125-1.875-0.75-0.75-1.375-1.125-2.125-1.875-0.75-0.75-1.375-1.125-1.875-1.875l-1.875-1.875-1.875-1.875-1.875-1.875c-0.75-0.75-1.125-1.125-1.625-1.875s-1.125-1.125-1.625-1.875-1.125-1.125-1.625-1.875-1.125-1.125-1.625-1.875-1.125-1.125-1.625-1.875-0.875-1.125-1.625-1.875c-0.5-0.75-0.875-1.125-1.625-1.875-0.5-0.75-0.875-1.125-1.375-1.875-0.5-0.75-0.875-1.125-1.375-1.875-0.5-0.75-0.875-1.125-1.375-1.875-0.5-0.75-0.875-1.125-1.375-1.875-0.5-0.75-0.875-1.125-1.375-1.875-0.5-0.75-0.875-1.125-1.375-1.875-0.5-0.75-0.875-1.125-1.125-1.875-0.5-0.75-0.875-1.125-1.125-1.875-0.5-0.75-0.75-1.125-1.125-1.875-0.5-0.75-0.75-1.125-1.125-1.875-0.5-0.75-0.75-1.125-1.125-1.875-0.5-0.75-0.75-1.125-1.125-1.875-0.5-0.75-0.75-1.125-1.125-1.875-0.5-0.75-0.75-1.125-1.125-1.875-0.5-0.75-0.75-1.125-1.125-1.875-0.25-0.75-0.75-1.125-0.875-1.875-0.25-0.75-0.75-1.125-0.875-1.875-0.25-0.75-0.75-1.125-0.875-1.875-0.25-0.75-0.75-1.125-0.875-1.875-0.25-0.75-0.75-1.125-0.875-1.875-0.25-0.75-0.75-1.125-0.875-1.875-0.25-0.75-0.75-1.125-0.875-1.875-0.25-0.75-0.5-1.125-0.875-1.875-0.25-0.75-0.5-1.125-0.875-1.875-0.25-0.75-0.5-1.125-0.875-1.875-0.25-0.75-0.5-1.125-0.75-1.875-3.125-4.625-3.375-5.125-3.625-5.75z m433.625-71.25v-11.375c0-0.5 0-0.875-0.25-1.625 0-0.5 0-0.875-0.25-1.625 0-0.5 0-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.5-0.875-0.5-1.625-0.25-0.5-0.5-0.875-0.5-1.625-0.25-0.5-0.5-0.875-0.5-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.875-1.625-0.25-0.5-0.5-0.875-0.875-1.625-0.25-0.5-0.5-0.875-0.875-1.625-0.25-0.5-0.5-0.875-0.875-1.625-0.25-0.5-0.75-0.875-0.875-1.625-0.25-0.5-0.75-0.875-0.875-1.625-0.25-0.5-0.75-0.875-0.875-1.625-0.25-0.5-0.75-0.875-0.875-1.625-0.25-0.5-0.75-0.875-0.875-1.625-0.25-0.5-0.75-0.875-0.875-1.625-0.25-0.5-0.75-0.875-0.875-1.625-0.25-0.5-0.75-0.875-0.875-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.875-0.875-1.125-1.625-0.5-0.5-0.875-0.875-1.125-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625l-1.625-1.625-1.625-1.625c-0.5-0.5-1.125-0.875-1.625-1.625-0.5-0.5-1.125-0.875-1.625-1.625-0.5-0.5-1.125-0.875-1.625-1.625-0.5-0.5-1.125-0.875-1.625-1.625-0.5-0.5-1.125-0.875-1.625-1.625-0.5-0.5-1.125-0.875-1.625-1.625-0.5-0.5-1.125-0.875-1.625-1.625-0.75-0.5-1.125-0.875-1.875-1.625-0.75-0.5-1.125-0.875-1.875-1.625-0.75-0.5-1.125-0.875-1.875-1.625-0.75-0.5-1.125-0.875-1.875-1.625-0.75-0.5-1.125-0.875-1.875-1.625-0.75-0.5-1.125-0.875-1.875-1.625-0.75-0.5-1.375-0.875-1.875-1.625-0.75-0.5-1.375-0.875-1.875-1.625-0.75-0.5-1.375-0.875-2.125-1.625-0.75-0.5-1.375-0.875-2.125-1.625l-0.75-0.5 0.25-0.875 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.25-1.125-2.125 1.125-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-0.5 0.25-0.875-0.25c-2.125-0.5-4.25-0.875-6-1.625-2.125-0.5-4.25-0.875-6.25-1.625-2.125-0.5-4.25-0.875-6.5-1.625-2.375-0.5-4.375-0.875-6.75-1.625-2.375-0.5-4.875-1.125-7.25-1.625-2.75-0.5-5.375-1.125-8.125-1.625-3.25-0.5-6.5-1.125-9.75-1.625-5.375-0.75-10.75-1.125-15.875-1.625-2.75-0.25-5.875-0.25-8.625-0.25-3.75 0-7.5 0-11.125 0.25-6.5 0.25-12.75 0.75-19.125 1.625-3.75 0.5-7.5 0.875-11 1.625-2.75 0.5-5.875 0.875-8.625 1.625-2.375 0.5-4.875 0.875-7.25 1.625-2.125 0.5-4.25 0.875-6.25 1.625-1.875 0.5-3.75 0.875-5.625 1.625-1.875 0.5-3.5 0.875-5.125 1.625-1.625 0.5-3.25 0.875-4.875 1.625-1.375 0.5-3 0.875-4.375 1.625-1.375 0.5-2.75 0.875-4.25 1.625-1.375 0.5-2.5 0.875-4 1.625-1.125 0.5-2.5 0.875-3.75 1.625-1.125 0.5-2.375 0.875-3.75 1.625-1.125 0.5-2.375 0.875-3.5 1.625-1.125 0.5-2.125 0.875-3.25 1.625-1.125 0.5-2.125 0.875-3.25 1.625-0.875 0.5-2.125 0.875-3 1.625-0.875 0.5-1.875 0.875-3 1.625-0.875 0.5-1.875 0.875-2.75 1.625-0.875 0.5-1.875 0.875-2.75 1.625-0.875 0.5-1.875 0.875-2.5 1.625-0.875 0.5-1.625 0.875-2.5 1.625-0.875 0.5-1.625 0.875-2.5 1.625-0.75 0.5-1.625 0.875-2.375 1.625-0.75 0.5-1.625 0.875-2.375 1.625-0.75 0.5-1.625 0.875-2.375 1.625-0.75 0.5-1.375 0.875-2.375 1.625-0.75 0.5-1.375 0.875-2.125 1.625-0.75 0.5-1.375 0.875-2.125 1.625-0.75 0.5-1.375 0.875-2.125 1.625-0.75 0.5-1.375 0.875-2.125 1.625-0.75 0.5-1.375 0.875-1.875 1.625-0.75 0.5-1.375 0.875-1.875 1.625-0.75 0.5-1.125 0.875-1.875 1.625-0.75 0.5-1.125 0.875-1.875 1.625-0.75 0.5-1.125 0.875-1.875 1.625-0.75 0.5-1.125 0.875-1.875 1.625-0.5 0.5-1.125 0.875-1.625 1.625-0.5 0.5-1.125 0.875-1.625 1.625-0.5 0.5-1.125 0.875-1.625 1.625-0.5 0.5-1.125 0.875-1.625 1.625l-1.625 1.625-1.625 1.625c-0.5 0.5-0.875 0.875-1.375 1.625-0.5 0.5-0.875 0.875-1.375 1.625-0.5 0.5-0.875 0.875-1.375 1.625-0.5 0.5-0.875 0.875-1.375 1.625-0.5 0.5-0.875 0.875-1.375 1.625-0.5 0.5-0.875 0.875-1.375 1.625-0.5 0.5-0.875 0.875-1.375 1.625-0.5 0.5-0.875 0.875-1.125 1.625-0.5 0.5-0.875 0.875-1.125 1.625-0.5 0.5-0.875 0.875-1.125 1.625-0.5 0.5-0.75 0.875-1.125 1.625-0.5 0.5-0.75 0.875-1.125 1.625-0.5 0.5-0.75 0.875-1.125 1.625-0.5 0.5-0.75 0.875-1.125 1.625-0.5 0.5-0.75 0.875-1.125 1.625-0.5 0.5-0.75 0.875-1.125 1.625-0.5 0.5-0.75 0.875-1.125 1.625-0.25 0.5-0.75 0.875-0.875 1.625-0.25 0.5-0.75 0.875-0.875 1.625-0.25 0.5-0.75 0.875-0.875 1.625-0.25 0.5-0.75 0.875-0.875 1.625-0.25 0.5-0.75 0.875-0.875 1.625-0.25 0.5-0.75 0.875-0.875 1.625-0.25 0.5-0.75 0.875-0.875 1.625-0.25 0.5-0.75 0.875-0.875 1.625-0.25 0.5-0.5 0.875-0.875 1.625-0.25 0.5-0.5 0.875-0.875 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.5 1.625-0.25 0.5-0.5 0.875-0.5 1.625-0.25 0.5-0.5 0.875-0.5 1.625-0.25 0.5-0.5 0.875-0.5 1.625-0.25 0.5-0.5 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5 0 0.875-0.25 1.625 0 0.5 0 0.875-0.25 1.625 0 0.5 0 0.875-0.25 1.625v1.625 1.625 1.625 3.25 1.625 3.25 1.375 1.625 1.625 1.625 1.625 1.625 1.625 1.625 1.625 1.625c0 0.5 0 0.875 0.25 1.625 0 0.5 0 0.875 0.25 1.625 0 0.5 0 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.5 0.875 0.5 1.625 0.25 0.5 0.5 0.875 0.5 1.625 0.25 0.5 0.5 0.875 0.5 1.625 0.25 0.5 0.5 0.875 0.5 1.625 0.25 0.5 0.5 0.875 0.5 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.875 1.625 0.25 0.5 0.5 0.875 0.875 1.625 0.25 0.5 0.5 0.875 0.875 1.625 0.25 0.5 0.75 0.875 0.875 1.625 0.25 0.5 0.75 0.875 0.875 1.625 0.25 0.5 0.75 0.875 0.875 1.625 0.25 0.5 0.75 0.875 0.875 1.625 0.25 0.5 0.75 0.875 0.875 1.625 0.25 0.5 0.75 0.875 0.875 1.625 0.25 0.5 0.75 0.875 0.875 1.625 0.25 0.5 0.75 0.875 0.875 1.625 0.25 0.5 0.75 0.875 1.125 1.625 0.5 0.5 0.75 0.875 1.125 1.625 0.5 0.5 0.75 0.875 1.125 1.625 0.5 0.5 0.75 0.875 1.125 1.625 0.5 0.5 0.75 0.875 1.125 1.625 0.5 0.5 0.75 0.875 1.125 1.625 0.5 0.5 0.75 0.875 1.125 1.625 0.5 0.5 0.875 0.875 1.125 1.625 0.5 0.5 0.875 0.875 1.125 1.625 0.5 0.5 0.875 0.875 1.125 1.625 0.5 0.5 0.875 0.875 1.375 1.625 0.5 0.5 0.875 0.875 1.375 1.625 0.5 0.5 0.875 0.875 1.375 1.625 0.5 0.5 0.875 0.875 1.375 1.625 0.5 0.5 0.875 0.875 1.375 1.625 0.5 0.5 0.875 0.875 1.375 1.625 0.5 0.5 0.875 0.875 1.375 1.625l1.625 1.625 1.625 1.625c0.5 0.5 1.125 0.875 1.625 1.625 0.5 0.5 1.125 0.875 1.625 1.625 0.5 0.5 1.125 0.875 1.625 1.625 0.5 0.5 1.125 0.875 1.625 1.625 0.5 0.5 1.125 0.875 1.875 1.625 0.75 0.5 1.125 0.875 1.875 1.625 0.75 0.5 1.125 0.875 1.875 1.625 0.75 0.5 1.125 0.875 1.875 1.625 0.75 0.5 1.375 0.875 1.875 1.625 0.75 0.5 1.375 0.875 1.875 1.625 0.75 0.5 1.375 0.875 2.125 1.625 0.75 0.5 1.375 0.875 2.125 1.625 0.75 0.5 1.375 0.875 2.125 1.625 0.75 0.5 1.375 0.875 2.125 1.625 0.75 0.5 1.375 0.875 2.375 1.625 0.75 0.5 1.625 0.875 2.375 1.625 0.75 0.5 1.625 0.875 2.375 1.625 0.75 0.5 1.625 0.875 2.375 1.625 0.875 0.5 1.625 0.875 2.5 1.625 0.875 0.5 1.625 0.875 2.5 1.625 0.875 0.5 1.875 0.875 2.5 1.625 0.875 0.5 1.875 0.875 2.75 1.625 0.875 0.5 1.875 0.875 2.75 1.625 0.875 0.5 1.875 0.875 3 1.625 0.875 0.5 2.125 0.875 3 1.625 1.125 0.5 2.125 0.875 3.25 1.625 1.125 0.5 2.125 0.875 3.25 1.625 1.125 0.5 2.375 0.875 3.5 1.625 1.125 0.5 2.375 0.875 3.75 1.625 1.125 0.5 2.5 0.875 3.75 1.625 1.375 0.5 2.5 0.875 4 1.625 1.375 0.5 2.75 0.875 4.25 1.625 1.375 0.5 3 0.875 4.375 1.625 1.625 0.5 3.25 0.875 4.875 1.625 1.625 0.5 3.5 0.875 5.125 1.625 1.875 0.5 3.75 0.875 5.875 1.625 2.125 0.5 4.25 1.125 6.25 1.625 2.375 0.5 4.875 1.125 7.25 1.625 2.75 0.5 5.875 1.125 8.625 1.625 3.75 0.75 7.5 1.125 11.125 1.625 9.25 1.125 19.125 1.625 28.875 1.625h1.375c9.25 0 18.375-0.75 27.5-1.625 3.75-0.5 7.25-0.875 10.75-1.625 2.75-0.5 5.625-0.875 8.375-1.625 2.375-0.5 4.625-0.875 7-1.625 2.125-0.5 4.25-0.875 6.25-1.625 1.875-0.5 3.75-0.875 5.625-1.625 1.625-0.5 3.5-0.875 5.125-1.625 1.625-0.5 3.25-0.875 4.625-1.625 1.375-0.5 3-0.875 4.375-1.625 1.375-0.5 2.75-0.875 4.25-1.625 1.375-0.5 2.5-0.875 4-1.625 1.125-0.5 2.5-0.875 3.75-1.625 1.125-0.5 2.375-0.875 3.5-1.625 1.125-0.5 2.375-0.875 3.5-1.625 1.125-0.5 2.125-0.875 3.25-1.625 1.125-0.5 2.125-0.875 3.25-1.625 0.875-0.5 2.125-0.875 3-1.625 0.875-0.5 1.875-0.875 3-1.625 0.875-0.5 1.875-0.875 2.75-1.625 0.875-0.5 1.875-0.875 2.75-1.625 0.875-0.5 1.875-0.875 2.5-1.625 0.875-0.5 1.625-0.875 2.5-1.625 0.875-0.5 1.625-0.875 2.5-1.625 0.875-0.5 1.625-0.875 2.5-1.625 0.75-0.5 1.625-0.875 2.375-1.625 0.75-0.5 1.625-0.875 2.375-1.625 0.75-0.5 1.375-0.875 2.375-1.625 0.75-0.5 1.375-0.875 2.125-1.625 0.75-0.5 1.375-0.875 2.125-1.625 0.75-0.5 1.375-0.875 2.125-1.625 0.75-0.5 1.375-0.875 2.125-1.625 0.75-0.5 1.375-0.875 1.875-1.625 0.75-0.5 1.375-0.875 1.875-1.625 0.75-0.5 1.125-0.875 1.875-1.625 0.75-0.5 1.125-0.875 1.875-1.625 0.75-0.5 1.125-0.875 1.875-1.625 0.75-0.5 1.125-0.875 1.875-1.625 0.5-0.5 1.125-0.875 1.625-1.625 0.5-0.5 1.125-0.875 1.625-1.625 0.5-0.5 1.125-0.875 1.625-1.625 0.5-0.5 1.125-0.875 1.625-1.625 0.5-0.5 1.125-0.875 1.625-1.625l1.625-1.625 1.625-1.625c0.5-0.5 0.875-0.875 1.375-1.625 0.5-0.5 0.875-0.875 1.375-1.625 0.5-0.5 0.875-0.875 1.375-1.625 0.5-0.5 0.875-0.875 1.375-1.625 0.5-0.5 0.875-0.875 1.375-1.625 0.5-0.5 0.875-0.875 1.375-1.625 0.5-0.5 0.875-0.875 1.375-1.625 0.5-0.5 0.875-0.875 1.375-1.625 0.5-0.5 0.875-0.875 1.125-1.625 0.5-0.5 0.75-0.875 1.125-1.625 0.5-0.5 0.875-0.875 1.125-1.625 0.5-0.5 0.75-0.875 1.125-1.625 0.5-0.5 0.75-0.875 1.125-1.625 0.5-0.5 0.75-0.875 1.125-1.625 0.5-0.5 0.75-0.875 1.125-1.625 0.5-0.5 0.75-0.875 1.125-1.625 0.5-0.5 0.75-0.875 1.125-1.625 0.5-0.5 0.75-0.875 0.875-1.625 0.25-0.5 0.75-0.875 0.875-1.625 0.25-0.5 0.75-0.875 0.875-1.625 0.25-0.5 0.75-0.875 0.875-1.625 0.25-0.5 0.75-0.875 0.875-1.625 0.25-0.5 0.75-0.875 0.875-1.625 0.25-0.5 0.75-0.875 0.875-1.625 0.25-0.5 0.5-0.875 0.875-1.625 0.25-0.5 0.75-0.875 0.875-1.625 0.25-0.5 0.5-0.875 0.875-1.625 0.25-0.5 0.5-0.875 0.875-1.625 0.25-0.5 0.5-0.875 0.875-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.5-1.625 0.25-0.5 0.5-0.875 0.5-1.625 0.25-0.5 0.5-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0-0.875 0.25-1.625 0-0.5 0-0.875 0.25-1.625 0-0.5 0-0.875 0.25-1.625 0-0.5 0-0.875 0.25-1.625 0-0.5 0-0.875 0.25-1.625v-11.375h-3.125zM589.714646 384c-12.625 0-25.375-12.75-25.375-25.375 0-12.75 12.75-25.375 25.375-25.375 19.375 0 31.875 12.625 31.875 25.375-0.125 12.625-12.75 25.375-31.875 25.375zM729.589646 384c-12.625 0-25.375-12.75-25.375-25.375 0-12.75 12.75-25.375 25.375-25.375 19.125 0 31.875 12.625 31.875 25.375 0 12.625-12.75 25.375-31.875 25.375zM328.714646 568.75c-19.125 0-38.375-12.625-38.375-31.625 0-19.125 19.375-31.875 38.375-31.875s31.875 12.75 31.875 31.875-12.875 31.625-31.875 31.625zM506.964646 568.75c-19.125 0-38.125-12.625-38.125-31.625 0-19.125 19.125-31.875 38.125-31.875 19.125 0 31.875 12.75 31.875 31.875s-12.875 31.625-31.875 31.625z" horiz-adv-x="1059" /> + + + <glyph glyph-name="shrink-right" unicode="" d="M52.294-28.71900000000005h899.793c16.546 0 29.999 13.405 29.999 29.999v59.974c-0.013 16.562-13.436 29.985-29.998 29.999h-899.795c-16.57 0-29.999-13.429-29.999-29.999v-59.974c0-16.617 13.429-29.999 29.999-29.999zM952.087 451.165h-479.884c-16.57 0-29.999-13.405-29.999-29.999v-59.974c0 0 0 0 0 0 0-16.572 13.428-30.01 29.997-30.022h479.885c16.571 0.013 29.999 13.448 29.999 30.022 0 0 0 0 0 0v59.974c0 16.593-13.429 29.999-29.999 29.999zM52.294 691.0840000000001h899.793c16.554 0.013 29.972 13.423 29.999 29.974v59.999c0 16.57-13.429 29.999-29.999 29.999h-899.793c-16.57 0-29.999-13.429-29.999-29.999v-59.997c0-16.546 13.429-29.975 29.999-29.975zM45.183 383.53499999999997l239.919-150.598v301.196l-239.919-150.598z" horiz-adv-x="1024" /> + + + <glyph glyph-name="spread-left" unicode="" d="M942.974 770.924h-843.556c-15.513 0-28.124-12.567-28.124-28.124v-56.226c0.012-15.527 12.596-28.111 28.123-28.124h843.559c15.534 0 28.124 12.59 28.124 28.124v56.226c0 15.578-12.59 28.124-28.124 28.124zM99.418 321.033h449.891c15.534 0 28.124 12.567 28.124 28.124v56.226c0 0 0 0 0 0 0 15.537-12.589 28.134-28.122 28.146h-449.892c-15.534-0.012-28.124-12.608-28.124-28.146 0 0 0 0 0 0v-56.226c0-15.556 12.59-28.124 28.124-28.124zM942.974 96.10900000000004h-843.556c-15.519-0.012-28.099-12.584-28.124-28.101v-56.249c0-15.534 12.59-28.124 28.124-28.124h843.556c15.534 0 28.124 12.59 28.124 28.124v56.248c0 15.513-12.59 28.103-28.124 28.102zM949.641 384.436l-224.924 141.186v-282.37l224.924 141.186z" horiz-adv-x="1024" /> + + + <glyph glyph-name="camera" unicode="" d="M884.3 648.6H704.2L679.5 698l-0.2 0.4c-1.9 3.6-3.6 6.9-5.1 9.9-12 23.4-21.5 41.9-54.1 41.9H416.7c-32.9 0-43.7-21.3-55.1-43.8-1.3-2.6-2.7-5.3-4.2-8.1l-24.8-49.7H152.4c-34 0-61.7-27.7-61.7-61.7v-488c0-34 27.7-61.7 61.7-61.7h731.9c34 0 61.7 27.7 61.7 61.7v488c0 34-27.7 61.7-61.7 61.7zM904 98.89999999999998c0-10.8-8.8-19.7-19.7-19.7H152.4c-10.8 0-19.7 8.8-19.7 19.7v488c0 10.8 8.8 19.7 19.7 19.7h206.1l36.2 72.5c1.5 2.9 2.9 5.7 4.3 8.3 10.6 20.8 11.1 20.8 17.7 20.8H620c4.6 0 5.8-0.6 5.8-0.6 2-1.2 7.2-11.2 10.9-18.5 1.6-3.1 3.3-6.5 5.3-10.1l36.2-72.4h206.1c10.8 0 19.7-8.8 19.7-19.7v-488zM525.5 565.5c-123.5 0-223.6-100.1-223.6-223.6S402 118.20000000000005 525.5 118.20000000000005s223.7 100.1 223.7 223.7c0 123.5-100.2 223.6-223.7 223.6z m0-402.5c-98.8 0-178.9 80.1-178.9 178.9 0 98.8 80.1 178.9 178.9 178.9 98.8 0 178.9-80.1 178.9-178.9 0-98.8-80.1-178.9-178.9-178.9z m246 402.5v-44.7H861v44.7h-89.5z" horiz-adv-x="1024" /> + + + <glyph glyph-name="note" unicode="" d="M987.2 384.36L512.43 859.13a84.75 84.75 0 0 1-65 24.71L111.55 864.09a84.83 84.83 0 0 1-79.65-79.65L12.15 448.57a84.57 84.57 0 0 1 24.69-65l474.8-474.8a84.91 84.91 0 0 1 119.93 0L987.2 264.41999999999996a84.9 84.9 0 0 1 0 119.94z m-39.28-80.66L592.29-51.91999999999996a29.31 29.31 0 0 0-41.37 0L76.1 422.9a29.22 29.22 0 0 0-8.49 22.38l19.74 335.88a29.29 29.29 0 0 0 27.48 27.48l335.9 19.75a29.32 29.32 0 0 0 22.38-8.52l474.8-474.8a29.31 29.31 0 0 0 0.01-41.37zM236.86 659.14c-50.92-50.95-50.92-133.8 0-184.72a130.61 130.61 0 1 1 184.71 184.72c-50.89 50.86-133.77 50.86-184.71 0zM382.29 513.7c-28.38-28.38-77.78-28.38-106.15 0a75.08 75.08 0 1 0 106.15 0z" horiz-adv-x="1024" /> + + + <glyph glyph-name="refresh" unicode="" d="M928 810.666667c-18.133333 0-32-13.866667-32-32v-164.266667C816 747.733333 669.866667 832 512 832 264.533333 832 64 631.4666669999999 64 384s200.533333-448 448-448c230.4 0 422.4 172.8 445.866667 402.133333 2.133333 17.066667-10.666667 33.066667-28.8 35.2-17.066667 2.133333-33.066667-10.666667-35.2-28.8C873.6 148.26666699999998 709.333333 0 512 0c-212.266667 0-384 171.733333-384 384s171.733333 384 384 384c137.6 0 264.533333-74.666667 332.8-192H693.333333c-18.133333 0-32-13.866667-32-32s13.866667-32 32-32h266.666667V778.666667c0 18.133333-14.933333 32-32 32z" horiz-adv-x="1024" /> + + + <glyph glyph-name="female" unicode="" d="M774.4 800c-48 35.2-108.8 51.2-172.8 51.2-105.6 0-208-51.2-268.8-150.4-89.6-134.4-57.6-313.6 60.8-416l-32-51.2-188.8 121.6S128 384 108.8 352c-22.4-35.2 22.4-64 22.4-64l188.8-121.6-105.6-163.2s-19.2-32 16-51.2c38.4-22.4 57.6 12.8 57.6 12.8l102.4 160 185.6-121.6s48-28.8 70.4 6.4c19.2 28.8-25.6 57.6-25.6 57.6L432 192l32 48c44.8-22.4 92.8-32 137.6-32 105.6 0 208 51.2 268.8 150.4 96 147.2 51.2 345.6-96 441.6z m35.2-400c-44.8-67.2-118.4-108.8-201.6-108.8-44.8 0-92.8 12.8-131.2 38.4-112 73.6-147.2 220.8-73.6 332.8 44.8 64 121.6 105.6 201.6 108.8 44.8 0 92.8-12.8 131.2-38.4 112-73.6 147.2-220.8 73.6-332.8z" horiz-adv-x="1024" /> + + + <glyph glyph-name="male" unicode="" d="M889.6 800h-240s-35.2 0-38.4-41.6c0-19.2 16-38.4 38.4-38.4h140.8l-179.2-179.2C556.8 582.4 489.6 608 416 608 240 608 96 464 96 288s144-320 320-320 320 144 320 320c0 73.6-25.6 140.8-67.2 195.2l179.2 179.2v-140.8c0-22.4 19.2-38.4 38.4-38.4 22.4 0 38.4 19.2 38.4 41.6V764.8h3.2C924.8 800 889.6 800 889.6 800zM416 48c-131.2 0-236.8 105.6-236.8 236.8 0 131.2 105.6 236.8 236.8 236.8s236.8-105.6 236.8-236.8c0-131.2-105.6-236.8-236.8-236.8z" horiz-adv-x="1024" /> + + + <glyph glyph-name="screen-restore" unicode="" d="M582.6 454.6v320h50V540l274 274 35.4-35.4-274-274h234.6v-50h-320zM117.4-46l274 274v-234.6h50v320h-320v-50H356l-274-274 35.4-35.4zM132 764h302V814H82v-352h50V764z m760-760H590v-50h352V306h-50v-302z" horiz-adv-x="1024" /> + + + <glyph glyph-name="password" unicode="" d="M519.2 343.29999999999995c-41.1 0-74.4-33.3-74.4-74.4 0-29.7 17.5-55 42.5-67.1v-81.9c0-17.6 14.3-31.9 31.9-31.9 17.6 0 31.9 14.3 31.9 31.9v81.9c25.1 12 42.5 37.4 42.5 66.9 0 41.3-33.2 74.6-74.4 74.6zM827.6-62.10000000000002H189.4c-35.9 0-65.1 29.2-65.1 65.1V428.4c0 35.9 29.2 65.1 65.1 65.1h638.2c17.3 0 33.7-6.7 46-19.1 12.3-12.3 19.1-28.7 19.1-46V3c0-35.9-29.2-65.1-65.1-65.1zM231.9 427.2c-34.8 0-41.3-6.6-41.3-41.3v-340.4c0-34.8 6.6-41.3 41.3-41.3h553.2c34.8 0 41.3 6.6 41.3 41.3V385.9c0 34.8-6.6 41.3-41.3 41.3H231.9zM519.2 86.70000000000005c-18.3 0-33.2 14.8-33.2 33.2V201c-26.3 12.8-42.6 38.8-42.6 67.8 0 41.8 33.9 75.7 75.7 75.7s75.7-33.9 75.7-75.7c0-29-16.3-55-42.5-67.8v-81.1c0.1-18.2-14.9-33.2-33.1-33.2zM519.2 342c-40.4 0-73.2-32.9-73.2-73.2 0-28.3 16.1-53.6 41.9-65.8l0.7-0.4V120c0-17 13.7-30.7 30.7-30.7S550 103.10000000000002 550 120v82.6l0.7 0.4c25.8 12.3 41.9 37.5 41.9 65.8-0.2 40.4-33.1 73.2-73.4 73.2zM207 523.1c-9.1 0-17.6 3.5-23.9 10-6.4 6.4-10 15-10 23.9v2h-0.2l0.2 1.4c0.1 0.5 0.1 0.9 0.2 1.4l0.2 1c0.1 0.6 0.2 1.4 0.4 2 15.3 75.7 57 144.2 117.2 193 29.9 24.2 63.4 43 99.8 56 37.5 13.3 77 20.2 117.5 20.2 61 0 120.8-16.3 173-47.2 50.6-29.9 93-72.8 122.5-123.8 4-5.6 6.1-12.2 6.1-19.2 0-18.3-15-33.3-33.3-33.3-13.2 0-25.1 7.7-30.4 19.8-49.2 84.6-140.4 137.4-238 137.4-128.1 0-238.2-87.1-267.6-211.8v-0.2c-0.7-18.4-15.4-32.6-33.7-32.6z" horiz-adv-x="1024" /> + + + <glyph glyph-name="senior" unicode="" d="M719.9 249.39999999999998L514.7 379.5V485.1C615.6 419 731.5 344 731.5 344s139.2-45.6 139.2 106.5c0 93-172.5 112.1-197.2 11.8l-69.6 47.3s24.2 101.5 162.4 106.5c138.2 4.9 192-94.6 190.9-199.6-1.2-104.7-136-198.3-237.3-167.1zM561 414c-4-19-23-33.7-47.6-33.7l-6.9 4.3-217.3 137.8S171 555.2 160.8 439c-10.2-116.1 147.4-129.5 186.8-23.8l81.7-47.6s-65.1-119.1-198.5-119.1C97.3 248.5 0.6 423.8 114 546.3c113.5 122.4 218.6 64.6 257 35.7 16.4-12.4 85.3-57.9 158.6-105.9l3.1-2.4c28.3-18.2 33.4-35.6 28.3-59.7zM434.1 149.70000000000005h212c16.7 0 30.3-13.6 30.3-30.3v-15.1c0-16.7-13.6-30.3-30.3-30.3h-212c-16.7 0-30.3 13.6-30.3 30.3v15.1c0 16.8 13.6 30.3 30.3 30.3z" horiz-adv-x="1024" /> + + + <glyph glyph-name="theme" unicode="" d="M512 800C229.696 800 0 570.304 0 288c0-90.368 30.304-174.496 85.344-236.896 55.264-62.624 129.152-97.12 208.128-97.12 81.568 0 161.536 36.832 231.264 106.592l2.272 2.496c65.792 81.472 132.896 121.056 205.088 121.056 46.72 0 89.216-15.872 126.688-29.92 30.336-11.328 56.576-21.12 81.216-21.12C1024 133.08799999999997 1024 241.664 1024 288c0 282.304-229.696 512-512 512z m428-602.912c-13.088 0-35.296 8.288-58.784 17.088-40.48 15.136-90.848 33.952-149.12 33.952-92.352 0-175.328-46.944-253.76-143.456-57.184-56.704-121.056-86.688-184.832-86.688-60.352 0-117.216 26.784-160.128 75.456C88.64 144.12800000000004 64 213.216 64 288 64 535.04 264.96 736 512 736s448-200.96 448-448c0-27.328-1.952-90.912-20-90.912zM800.704 379.93600000000004m-64 0a64 64 0 1 1 128 0 64 64 0 1 1-128 0ZM457.024 582.624m-64 0a64 64 0 1 1 128 0 64 64 0 1 1-128 0ZM672.704 555.9359999999999m-64 0a64 64 0 1 1 128 0 64 64 0 1 1-128 0ZM291.392 443.936m-64 0a64 64 0 1 1 128 0 64 64 0 1 1-128 0ZM278.4 197.24800000000005m-96 0a96 96 0 1 1 192 0 96 96 0 1 1-192 0Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="tread" unicode="" d="M860.8 172.79999999999995l6.4-57.6-6.4 57.6c12.8 0 25.6 3.2 35.2 12.8 6.4 9.6 6.4 22.4 3.2 32l57.6 12.8-57.6-12.8L800 553.6c-6.4 28.8-25.6 51.2-48 64-9.6 6.4-22.4 9.6-32 9.6H182.4c-22.4 3.2-41.6-6.4-51.2-25.6-6.4-9.6-6.4-19.2-9.6-28.8v-342.4c0-19.2 9.6-38.4 28.8-48 6.4-3.2 12.8-6.4 19.2-6.4h192l19.2-25.6 147.2-188.8c6.4-9.6 19.2-12.8 28.8-9.6 16 3.2 25.6 19.2 22.4 35.2l-9.6 118.4-6.4 67.2h297.6z m-233.6-57.6l9.6-128c3.2-28.8-9.6-54.4-28.8-73.6-35.2-32-92.8-28.8-124.8 6.4l-156.8 195.2H179.2c-19.2 0-38.4 6.4-57.6 16-35.2 19.2-57.6 57.6-57.6 99.2V572.8c0 19.2 6.4 38.4 16 57.6 19.2 38.4 57.6 60.8 99.2 54.4h537.6c67.2-3.2 121.6-48 137.6-112l102.4-339.2c6.4-28.8 3.2-57.6-12.8-80-19.2-22.4-48-38.4-76.8-38.4h-240zM304 627.2v-451.2h57.6V627.2H304z" horiz-adv-x="1024" /> + + + <glyph glyph-name="praise" unicode="" d="M860.8 595.2h-297.6l6.4 67.2 9.6 118.4c3.2 16-6.4 32-22.4 35.2-9.6 3.2-22.4 0-28.8-9.6l-147.2-188.8-19.2-25.6h-192c-6.4 0-12.8-3.2-19.2-6.4-19.2-9.6-28.8-28.8-28.8-48v-342.4c0-9.6 3.2-22.4 9.6-28.8 9.6-19.2 28.8-28.8 48-25.6h537.6c12.8 0 22.4 3.2 32 9.6 25.6 12.8 44.8 35.2 48 64l102.4 336 57.6-12.8-57.6 12.8c3.2 9.6 0 22.4-3.2 32-9.6 6.4-22.4 12.8-35.2 12.8l6.4 57.6-6.4-57.6z m-233.6 57.6h240c28.8 0 57.6-12.8 76.8-38.4 16-22.4 19.2-54.4 12.8-80l-102.4-339.2c-16-64-70.4-108.8-137.6-112H179.2c-41.6-3.2-80 19.2-99.2 54.4-9.6 19.2-16 38.4-16 57.6V537.6c0 41.6 22.4 80 57.6 99.2 19.2 9.6 38.4 12.8 57.6 16h144L480 848c32 35.2 89.6 38.4 124.8 6.4 19.2-19.2 32-44.8 28.8-73.6l-6.4-128z m-323.2-512h57.6V592H304v-451.2z" horiz-adv-x="1024" /> + + + <glyph glyph-name="star-fill" unicode="" d="M752-43.200000000000045c-9.6 0-20.8 3.2-30.4 8l-208 104-209.6-104c-20.8-11.2-48-9.6-67.2 4.8-19.2 14.4-30.4 40-25.6 64l43.2 224L89.6 411.2C72 428.8 65.6 456 72 478.4c8 24 27.2 41.6 52.8 44.8l228.8 41.6 102.4 208c11.2 22.4 33.6 36.8 57.6 36.8s48-14.4 57.6-36.8l102.4-208 228.8-40c24-3.2 44.8-20.8 51.2-44.8 8-24 1.6-49.6-16-67.2L772.8 257.6l41.6-224c4.8-25.6-6.4-49.6-25.6-64-9.6-8-22.4-12.8-36.8-12.8z" horiz-adv-x="1024" /> + + + <glyph glyph-name="rate" unicode="" d="M959.008 489.984l-308 47.008L512 832 372.992 536.992l-308-47.008 223.008-228-52.992-324L512 90.976l276.992-152.992-52.992 324zM512 156L304 39.00800000000004l40 235.008-179.008 182.016 242.016 32 104.992 224 104-224 240.992-34.016L680 273.024l36.992-235.008z" horiz-adv-x="1024" /> + + + <glyph glyph-name="template-1" unicode="" d="M512 384zM43.52 601.6l409.6-176.64c58.88-30.72 110.08 0 110.08 0l414.72 174.08 2.56 2.56c10.24 5.12 15.36 15.36 15.36 28.16 0 15.36-10.24 28.16-23.04 30.72L563.2 837.12c-56.32 23.04-97.28 0-97.28 0L46.08 660.48c-12.8-5.12-20.48-17.92-20.48-30.72s7.68-23.04 17.92-28.16z m0 0M512 222.72000000000003c-2.56 0-7.68 0-10.24 2.56l-486.4 215.04c-12.8 5.12-17.92 20.48-12.8 33.28 5.12 12.8 20.48 17.92 33.28 12.8L512 276.48 988.16 486.4c12.8 5.12 28.16 0 33.28-12.8 5.12-12.8 0-28.16-12.8-33.28l-486.4-215.04c-2.56-2.56-7.68-2.56-10.24-2.56zM512 71.67999999999995c-2.56 0-7.68 0-10.24 2.56l-486.4 215.04c-12.8 5.12-17.92 20.48-12.8 33.28 5.12 10.24 20.48 17.92 33.28 10.24L512 125.44000000000005 988.16 332.79999999999995c12.8 5.12 28.16 0 33.28-12.8 5.12-12.8 0-28.16-12.8-33.28l-486.4-215.04H512zM512-79.36000000000001c-2.56 0-7.68 0-10.24 2.56l-486.4 215.04c-12.8 5.12-17.92 20.48-12.8 33.28 5.12 12.8 20.48 17.92 33.28 12.8L512-25.600000000000023l476.16 209.92c12.8 5.12 28.16 0 33.28-12.8 5.12-12.8 0-28.16-12.8-33.28l-486.4-215.04c-2.56-2.56-7.68-2.56-10.24-2.56z" horiz-adv-x="1024" /> + + + <glyph glyph-name="vercode" unicode="" d="M513.807059-128C351.171765-128 58.428235 126.19294100000002 54.211765 376.16941199999997V662.287059a93.364706 93.364706 0 0 0 81.317647 88.545882 570.428235 570.428235 0 0 1 163.237647 40.357647A393.336471 393.336471 0 0 1 446.945882 872.508235a101.797647 101.797647 0 0 0 120.470589 5.421177A629.458824 629.458824 0 0 1 716.8 792.395294a1255.303529 1255.303529 0 0 1 169.863529-38.550588 98.785882 98.785882 0 0 0 79.510589-90.955294 2911.171765 2911.171765 0 0 0-3.011765-291.538824C924.611765 49.09176500000001 672.828235-128 513.807059-128z m0 963.764706a39.152941 39.152941 0 0 1-24.696471-7.830588A438.512941 438.512941 0 0 0 319.247059 734.569412a608.376471 608.376471 0 0 0-180.705883-43.369412 33.731765 33.731765 0 0 1-24.094117-30.117647v-283.708235C118.663529 155.10588199999995 389.722353-67.76470600000005 513.807059-67.76470600000005s354.183529 148.178824 391.529412 444.536471c9.035294 175.887059 0 281.901176 0 283.105882a38.550588 38.550588 0 0 1-29.515295 33.731765 1287.830588 1287.830588 0 0 0-180.705882 41.562353A676.442353 676.442353 0 0 0 536.094118 829.741176a37.345882 37.345882 0 0 1-24.094118 6.02353zM784.865882 479.171765L487.905882 198.47529399999996a40.357647 40.357647 0 0 0-49.392941-4.818823l-7.830588 6.625882-161.430588 171.068235a40.357647 40.357647 0 1 0 60.235294 55.416471l133.722353-141.552941 267.444706 252.988235a40.357647 40.357647 0 1 0 55.41647-60.235294" horiz-adv-x="1024" /> + + + <glyph glyph-name="service" unicode="" d="M849.00812012 487.71642715A27.54528398 27.54528398 0 0 1 849.00812012 496.71080566 337.28919434 337.28919434 0 0 1 174.42973145 496.71080566a27.54528398 27.54528398 0 0 1-1e-8-8.99437852 147.28294776 147.28294776 0 0 1-112.42973144-140.53716386V328.06620849a148.40724551 148.40724551 0 0 1 123.67270459-143.34790781A308.6196126 308.6196126 0 0 1 414.4672083-9.222985839999978h5.05933769a84.32229815 84.32229815 0 1 1 0 56.21486573 252.40474688 252.40474688 0 0 0-172.01748955 137.16427235h31.48032481A35.41536562 35.41536562 0 0 1 314.96689531 215.63647705000005V458.48469697a35.41536562 35.41536562 0 0 1-35.97751406 34.29106787H230.64459717A26.42098711 26.42098711 0 0 1 230.64459717 496.71080566a281.07432862 281.07432862 0 0 0 562.14865723 0 26.42098711 26.42098711 0 0 1 0-3.3728915h-48.34478497a35.41536562 35.41536562 0 0 1-35.97751406-34.29106875V215.63647705000005a35.41536562 35.41536562 0 0 1 35.97751406-34.29106787h63.52279893A150.0936917 150.0936917 0 0 1 961.43785156 328.06620849v19.11305479a147.28294776 147.28294776 0 0 1-112.42973144 140.53716386zM498.22735801 46.991879880000056a28.10743242 28.10743242 0 1 0-28.1074333-28.10743242 28.10743242 28.10743242 0 0 0 28.10743329 28.10743242zM258.75202959 240.37101797000003h-43.28544639A93.87882598 93.87882598 0 0 0 118.21486572 328.06620849v19.11305479a93.87882598 93.87882598 0 0 0 97.25171748 89.94378516h43.28544639zM905.22298584 328.06620849a93.87882598 93.87882598 0 0 0-97.25171748-89.94378515h-43.28544727V437.12304844h43.28544727A93.87882598 93.87882598 0 0 0 905.22298584 347.17926328zM633.70518418 705.83010615l-20.7995001 7.30793232a28.10743242 28.10743242 0 0 1-17.42660859-56.21486571l16.30231084-6.18363458a28.10743242 28.10743242 0 1 1 21.92379785 51.71767646zM330.14490928 639.49656503A28.10743242 28.10743242 0 0 1 376.80324805 609.14053711 177.63897568 177.63897568 0 0 0 511.71892578 676.59837597a28.10743242 28.10743242 0 0 1 0 56.21486573 231.60524678 231.60524678 0 0 1-181.57401651-93.31667667z" horiz-adv-x="1024" /> + + + <glyph glyph-name="cellphone" unicode="" d="M785.066667 896H238.933333a102.4 102.4 0 0 1-102.4-102.4v-819.2a102.4 102.4 0 0 1 102.4-102.4h546.133334a102.4 102.4 0 0 1 102.4 102.4V793.6a102.4 102.4 0 0 1-102.4 102.4zM238.933333 827.733333h546.133334a34.133333 34.133333 0 0 0 34.133333-34.133333v-648.533333H204.8V793.6a34.133333 34.133333 0 0 0 34.133333 34.133333z m546.133334-887.466666H238.933333a34.133333 34.133333 0 0 0-34.133333 34.133333v102.4h614.4v-102.4a34.133333 34.133333 0 0 0-34.133333-34.133333zM512 8.53333299999997m-34.133333 0a34.133333 34.133333 0 1 1 68.266666 0 34.133333 34.133333 0 1 1-68.266666 0ZM426.666667 725.333333h170.666666a17.066667 17.066667 0 0 1 0 34.133334h-170.666666a17.066667 17.066667 0 0 1 0-34.133334z" horiz-adv-x="1024" /> + + + <glyph glyph-name="print" unicode="" d="M843.946667 603.733333h-47.36V725.333333a90.026667 90.026667 0 0 1-94.72 85.333334H312.32a81.493333 81.493333 0 0 1-85.333333-85.333334v-121.6H170.666667a81.493333 81.493333 0 0 1-85.333334-85.333333v-325.12a89.173333 89.173333 0 0 1 85.333334-93.866667h56.746666v-52.48a89.6 89.6 0 0 1 89.6-89.6h389.973334a89.6 89.6 0 0 1 89.6 89.6v52.48h47.36a97.706667 97.706667 0 0 1 94.72 93.866667V518.4a90.026667 90.026667 0 0 1-94.72 85.333333zM279.466667 725.333333a30.72 30.72 0 0 0 32.853333 33.706667h389.546667c18.773333 0 42.666667-11.52 42.666666-33.706667v-121.6H279.466667z m465.066666-678.4a37.546667 37.546667 0 0 0-37.546666-37.973333H317.013333a37.546667 37.546667 0 0 0-37.546666 37.973333v170.666667a37.546667 37.546667 0 0 0 37.546666 38.4h389.973334a37.546667 37.546667 0 0 0 37.546666-37.973333z m142.506667 146.346667a45.653333 45.653333 0 0 0-42.666667-42.666667h-47.786666v66.133334a89.6 89.6 0 0 1-89.6 89.6H317.013333a89.6 89.6 0 0 1-89.6-89.6v-65.28H170.666667a37.546667 37.546667 0 0 0-33.28 42.666666v324.266667A31.146667 31.146667 0 0 0 170.666667 552.106667h673.28c19.2 0 42.666667-11.52 42.666666-33.706667z m-640 281.173333h-37.546667a13.226667 13.226667 0 0 0 0 26.026667h38.826667a13.226667 13.226667 0 1 0 0-26.026667z m94.293333 0H298.666667a13.226667 13.226667 0 1 0 0 26.026667h42.666666a13.226667 13.226667 0 0 0 0-26.026667z m426.666667-116.48H248.32a13.226667 13.226667 0 0 0 0 26.026667H768a13.226667 13.226667 0 0 0 0-26.026667z" horiz-adv-x="1024" /> + + + <glyph glyph-name="cols" unicode="" d="M128 448h384V832H128z m64 320h256v-256H192zM576 832v-384h384V832z m320-320H640V768h256zM192 384h64v-384H192zM384 384h64v-384H384zM640 384h64v-384H640zM832 384h64v-384h-64z" horiz-adv-x="1024" /> + + + <glyph glyph-name="wifi" unicode="" d="M723 275.5C666.8 324.4 593.4 354 513 354s-153.8-29.6-210.1-78.6c-3.2-2.8-3.6-7.8-0.8-11.2l36-42.9c2.9-3.4 8-3.8 11.4-0.9C393.1 258.8 450.3 282 513 282s119.9-23.2 163.5-61.5c3.4-2.9 8.5-2.5 11.4 0.9l36 42.9c2.8 3.3 2.4 8.3-0.9 11.2zM840.4 415.6C751.7 489.5 637.6 534 513 534s-238.7-44.5-327.5-118.4c-3.4-2.8-3.8-7.9-1-11.3l36-42.9c2.8-3.4 7.9-3.8 11.2-1C308 423.8 406.1 462 513 462s205-38.2 281.2-101.6c3.4-2.8 8.4-2.4 11.2 1l36 42.9c2.8 3.4 2.4 8.5-1 11.3zM957.1 554.6C835.7 654.2 680.3 714 511 714c-168.2 0-322.6-59-443.7-157.4-3.5-2.8-4-7.9-1.1-11.4l36-42.9c2.8-3.3 7.8-3.8 11.1-1.1C222 589.3 360.3 642 511 642c151.8 0 291-53.5 400-142.7 3.4-2.8 8.4-2.3 11.2 1.1l36 42.9c2.9 3.4 2.4 8.5-1.1 11.3zM512 118m-64 0a64 64 0 1 1 128 0 64 64 0 1 1-128 0Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="export" unicode="" d="M896.4374528 479.830016c0 26.673152-21.6236032 48.2967552-48.2967552 48.2967552H630.8069376c-26.673152 0-48.2967552-21.6236032-48.2967552-48.2967552v-83.04831147H384.69522773l-2.71428266 5.36849067c-41.336832 87.44686933-35.95195733 204.128256 150.601728 199.94487467v-108.91537067l172.19037866 164.757504L532.58267307 822.7110912v-106.57245867c-228.64418133 5.70709333-263.651328-183.517184-157.433856-314.01028266l4.6891008-5.34664534h-88.46595414c-26.673152 0-48.2967552-21.6236032-48.2967552-48.2967552v-66.78882986h-98.43616426c-26.673152 0-40.4258816-21.6236032-30.71781547-48.2967552l79.10304427-217.33485227c9.70806613-26.673152 39.20145067-48.2967552 65.87460266-48.2967552h603.70670934c23.75898453 0 37.2506624 17.16169387 33.05745066 39.76178347 0.4980736 2.77108053 0.77441707 5.619712 0.77441707 8.53497173v463.765504z m-60.37067093-306.4528896l-21.8464256 60.02223787c-9.70806613 26.673152-39.20145067 48.2967552-65.87460267 48.2967552H303.44697173v30.56708266c0 13.336576 10.81125547 24.14783147 24.14783147 24.14783147h315.28605013v107.1972352c0 13.336576 10.81125547 24.14783147 24.14783147 24.14783147h144.88917333c13.336576 0 24.14783147-10.81125547 24.14783147-24.14783147v-270.2311424z" horiz-adv-x="1024" /> + + + <glyph glyph-name="rss" unicode="" d="M810.666667 42.624C810.666667 395.562667 523.562667 682.666667 170.666667 682.666667v-85.333334c305.834667 0 554.666667-248.832 554.666666-554.709333h85.333334zM512 42.624h85.333333C597.333333 277.930667 405.930667 469.333333 170.666667 469.333333v-85.333333c188.202667 0 341.333333-153.130667 341.333333-341.376zM256 128m-85.333333 0a85.333333 85.333333 0 1 1 170.666666 0 85.333333 85.333333 0 1 1-170.666666 0Z" horiz-adv-x="1024" /> + + + <glyph glyph-name="slider" unicode="" d="M228.7 683.9v-66.7H112v66.7h116.7z m333.2-266.6v-66.7H112v66.7h449.9zM295.4 150.60000000000002V84H112v66.7h183.4v-0.1z m116.6 600c9 0 16.8-3.3 23.5-9.9 6.5-6.5 9.9-14.5 9.9-23.5v-133.3c0-9-3.3-16.8-9.9-23.5-6.5-6.5-14.5-9.9-23.5-9.9H278.8c-9 0-16.8 3.3-23.5 9.9-6.5 6.5-9.9 14.3-9.9 23.5V717.1c0 9 3.3 16.8 9.9 23.5 6.5 6.5 14.3 9.9 23.5 9.9h133.3v0.1h-0.1z m66.7-533.3c9 0 16.8-3.3 23.5-9.9 6.5-6.5 9.9-14.5 9.9-23.5v-133.3c0-9-3.3-16.8-9.9-23.5-6.5-6.5-14.5-9.9-23.5-9.9H345.3c-9 0-16.8 3.3-23.5 9.9-6.5 6.5-9.9 14.5-9.9 23.5V183.89999999999998c0 9 3.3 16.8 9.9 23.5 6.5 6.5 14.3 9.9 23.5 9.9h133.4v0.1zM912 683.9v-66.7H462.1v66.7H912z m0-533.3V84H528.6v66.7h383.3v-0.1h0.1zM745.2 483.9c9 0 16.8-3.3 23.5-9.9 6.5-6.5 9.9-14.5 9.9-23.5v-133.3c0-9-3.3-16.8-9.9-23.5-6.5-6.5-14.5-9.9-23.5-9.9H612c-9 0-16.8 3.3-23.5 9.9-6.5 6.5-9.9 14.3-9.9 23.5V450.6c0 9 3.3 16.8 9.9 23.5 6.5 6.5 14.5 9.9 23.5 9.9l133.2-0.1zM912 417.3v-66.7H795.3v66.7H912z" horiz-adv-x="1024" /> + + + <glyph glyph-name="email" unicode="" d="M834.446 682.553H194.105c-50.176 0-91.022-40.846-91.022-91.022v-423.026c0-50.176 40.846-91.022 91.022-91.022h640.341c50.176 0 91.022 40.846 91.022 91.022V591.531c0 50.176-40.846 91.022-91.022 91.022z m36.409-514.048c0-20.025-16.384-36.409-36.409-36.409H194.105c-20.025 0-36.409 16.384-36.409 36.409V591.531c0 20.025 16.384 36.409 36.409 36.409h640.341c20.025 0 36.409-16.384 36.409-36.409v-423.026zM786.773 537.941L514.275 366.023 241.777 537.941c-12.743 8.078-29.582 4.21-37.661-8.533-8.078-12.743-4.21-29.582 8.533-37.661l286.72-180.907c4.551-2.845 9.557-4.21 14.563-4.21h0.91c5.006 0 10.013 1.365 14.563 4.21l286.72 180.907c12.743 8.078 16.611 24.917 8.533 37.661-8.306 12.857-25.145 16.611-37.888 8.533z" horiz-adv-x="1024" /> + + + <glyph glyph-name="subtraction" unicode="" d="M785 348H239c-19.8 0-36 16.2-36 36s16.2 36 36 36h546c19.8 0 36-16.2 36-36s-16.2-36-36-36z" horiz-adv-x="1024" /> + + + <glyph glyph-name="mike" unicode="" d="M512 256c115.2 0 208 92.8 208 208V624c0 115.2-92.8 208-208 208s-208-92.8-208-208v-160c0-115.2 92.8-208 208-208zM368 624c0 80 64 144 144 144s144-64 144-144v-160c0-80-64-144-144-144s-144 64-144 144V624zM844.8 416c0 17.6-14.4 32-32 32-16 0-30.4-12.8-32-28.8C758.4 289.6 646.4 192 512 192s-246.4 97.6-268.8 227.2c-1.6 16-16 28.8-32 28.8-17.6 0-32-14.4-32-32v-4.8C204.8 260.79999999999995 328 144 480 129.60000000000002V-32c0-17.6 14.4-32 32-32s32 14.4 32 32V129.60000000000002c152 14.4 275.2 131.2 299.2 280 0 1.6 1.6 4.8 1.6 6.4z" horiz-adv-x="1024" /> + + + <glyph glyph-name="light" unicode="" d="M512 72c-172.313 0-312 139.687-312 312s139.687 312 312 312 312-139.687 312-312-139.687-312-312-312z m0 64c136.967 0 248 111.033 248 248 0 136.967-111.033 248-248 248-136.967 0-248-111.033-248-248 0-136.967 111.033-248 248-248z m0 696c17.673 0 32-14.327 32-32v-51c0-17.673-14.327-32-32-32-17.673 0-32 14.327-32 32V800c0 17.673 14.327 32 32 32z m0-785c17.673 0 32-14.327 32-32v-51c0-17.673-14.327-32-32-32-17.673 0-32 14.327-32 32v51c0 17.673 14.327 32 32 32z m325.945 11.055c-12.497-12.496-32.758-12.496-45.255 0l-36.063 36.063c-12.496 12.497-12.496 32.758 0 45.255 12.497 12.496 32.758 12.496 45.255 0l36.063-36.063c12.496-12.497 12.496-32.758 0-45.255z m-568 565c-12.497-12.496-32.758-12.496-45.255 0l-36.063 36.063c-12.496 12.497-12.496 32.758 0 45.255 12.497 12.496 32.758 12.496 45.255 0l36.063-36.063c12.496-12.497 12.496-32.758 0-45.255z m561 81.318c12.496-12.497 12.496-32.758 0-45.255l-36.063-36.063c-12.497-12.496-32.758-12.496-45.255 0-12.496 12.497-12.496 32.758 0 45.255l36.063 36.063c12.497 12.496 32.758 12.496 45.255 0z m-563.572-565c12.496-12.497 12.496-32.758 0-45.255l-36.063-36.063c-12.497-12.496-32.758-12.496-45.255 0-12.496 12.497-12.496 32.758 0 45.255l36.063 36.063c12.497 12.496 32.758 12.496 45.255 0zM960 384c0-17.673-14.327-32-32-32h-51c-17.673 0-32 14.327-32 32 0 17.673 14.327 32 32 32h51c17.673 0 32-14.327 32-32z m-781 0c0-17.673-14.327-32-32-32H96c-17.673 0-32 14.327-32 32 0 17.673 14.327 32 32 32h51c17.673 0 32-14.327 32-32z" horiz-adv-x="1024" /> + + + <glyph glyph-name="gift" unicode="" d="M796.3 600h-6.7c5.1 6.7 9.6 13.4 13.4 20.1 18.3 32.2 20.8 63.1 7 87.1-9.1 15.7-33 41.2-91.9 36-35.4-3.2-76.1-17.2-114.7-39.4-37.9-21.9-68.9-49.3-89-77.5-4.5 6.4-9.5 12.8-15.1 19.1-19.8 22.3-45.4 42.8-74.1 59.4-38.4 22.2-79.3 35.9-115.1 38.5-43.3 3.2-75.8-10-91.4-37-13.8-24-11.3-54.8 7-86.7 3.7-6.5 8.1-13 13.1-19.5H236c-21.3 0-41.6-7.2-57.4-20.2-17.8-14.9-27.6-35.4-27.6-58v-50.8c0-34.4 23-64.6 55-76.6v-283.9c0-23.3 10.9-47.1 30.1-65.3 18.3-17.4 41.4-27.3 63.4-27.3h434.3c22 0 44.9 10 63 27.6 18.7 18.1 29.3 41.8 29.3 65.1V395c11 4.3 19.6 10.9 27.2 19.5 13.3 15.1 20.8 35.2 20.8 56.6v50.8c-0.1 45.3-32.8 78.1-77.8 78.1z m17.7-78.1v-50.8c0-7.7-3.2-20.3-15-22-0.9 0.1-1.7 0.1-2.6 0.1-1.5 0-2.9-0.1-4.3-0.3H543v91h253.3c11.9 0.1 17.7-5.8 17.7-18zM633.4 651.8c30.7 17.7 63.5 29.2 90 31.6 21.5 1.9 32.6-2.8 34.6-6.3 4.2-7.3-6.3-41.2-52.9-77.2H569.8c14 17 35.3 35.6 63.6 51.9z m-362.8 24.4c2.2 3.7 13.3 8.7 35 7.1 26.6-1.9 59.2-13.1 89.5-30.6 27.7-16 49.4-35.1 63.9-52.8H323.5c-20.3 15.6-36.4 32.9-45.8 49.4-8.9 15.6-8.5 24.4-7.1 26.9zM211 521.9c0 11.2 12.9 18.1 24.9 18.1H483v-91H240.1c-1.4 0.2-2.8 0.3-4.3 0.3-0.9 0-1.8 0-2.7-0.1-11.5 1.5-22.1 11.6-22.1 22v50.7z m55-411.3V389h217v-311H299.4c-13.2 0-33.4 17.5-33.4 32.6zM733.7 78H543V389h223v-278.4c0-15.5-19.1-32.6-32.3-32.6z" horiz-adv-x="1024" /> + + + <glyph glyph-name="mute" unicode="" d="M739 294.4l180.2 180.2M735.391 297.9l180.24 180.24 7.07-7.07-180.239-180.24zM631.4-29.700000000000045c-5.1 0-10.1 1.3-14.5 3.7L277.1 162.20000000000005H116.8c-16 0-28.9 13-28.9 28.9v384c0 16 13 28.9 28.9 28.9h160.3l339.7 189.9c4.5 2.5 9.5 3.8 14.6 3.8 5.3 0 10.6-1.4 15.1-4.1 9.1-5.3 14.8-15.2 14.8-25.8v-767.6c0-10.5-5.6-20.4-14.7-25.8-4.6-2.7-9.9-4.1-15.2-4.1zM305.8 551.5v-336.7L601.4 51V716.8L305.8 551.5zM145.7 220.10000000000002h102.2v326H145.7v-326zM913.2 258.9c-9.3 0-18.1 3.6-24.7 10.3l-63.4 63.4-63.4-63.4c-6.6-6.6-15.4-10.3-24.7-10.3s-18.1 3.6-24.7 10.3c-13.6 13.6-13.6 35.9 0 49.5l63.4 63.4-67.4 67.4c-6.6 6.6-10.3 15.4-10.3 24.7 0 9.3 3.6 18.1 10.3 24.7 6.6 6.6 15.4 10.3 24.7 10.3s18.1-3.6 24.7-10.3l67.4-67.4 67.4 67.4c6.6 6.6 15.4 10.3 24.7 10.3s18.1-3.6 24.7-10.3c6.6-6.6 10.3-15.4 10.3-24.7 0-9.3-3.6-18.1-10.3-24.7L874.6 382l63.4-63.4c13.6-13.6 13.6-35.9 0-49.5-6.7-6.6-15.5-10.2-24.8-10.2z" horiz-adv-x="1024" /> + + + <glyph glyph-name="reduce-circle" unicode="" d="M512-65.5c-60.6 0-119.4 11.9-174.8 35.3-53.5 22.6-101.5 55-142.7 96.2-41.2 41.2-73.6 89.2-96.2 142.7C74.9 264.1 63 322.9 63 383.5s11.9 119.4 35.3 174.8c22.6 53.5 55 101.5 96.2 142.7 41.2 41.2 89.2 73.6 142.7 96.2C392.6 820.6 451.4 832.5 512 832.5s119.4-11.9 174.8-35.3c53.5-22.6 101.5-55 142.7-96.2 41.2-41.2 73.6-89.2 96.2-142.7 23.4-55.4 35.3-114.2 35.3-174.8s-11.9-119.4-35.3-174.8c-22.6-53.5-55-101.5-96.2-142.7s-89.2-73.6-142.7-96.2c-55.4-23.4-114.2-35.3-174.8-35.3z m0 848c-220 0-399-179-399-399s179-399 399-399 399 179 399 399-179 399-399 399zM772 359H252c-13.8 0-25 11.2-25 25s11.2 25 25 25h520c13.8 0 25-11.2 25-25s-11.2-25-25-25z" horiz-adv-x="1024" /> + + + <glyph glyph-name="music" unicode="" d="M575.4 832h-74.5v-633.5C385 251.20000000000005 249.3 180.70000000000005 226.8 76c-7.3-34.1 7.9-70.9 21.9-87.8 79.3-94.6 252.2-50.5 331.6 51.3 35.2 45.2 32.3 84.6 32.3 181.3V608.5c48.8-36.3 103.9-70.1 123.7-135 12.2-40.3-4.1-107.3-17-141.5-3.9-10.3-14.7-18.9-9.7-29.2 34.2-25.4 51.1 28.6 60.9 51.2 10.6 24.5 20.8 54.7 24.4 75.6C833.2 653.2 595.5 661.7 575.4 832z" horiz-adv-x="1024" /> + + + + + </font> +</defs></svg> diff --git a/src/main/resources/static/articles/layui/font/iconfont.ttf b/src/main/resources/static/articles/layui/font/iconfont.ttf new file mode 100644 index 0000000000000000000000000000000000000000..06e30f9e2a856cbfefff25111ceb4b9c034f35fd GIT binary patch literal 46508 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/font/iconfont.woff b/src/main/resources/static/articles/layui/font/iconfont.woff new file mode 100644 index 0000000000000000000000000000000000000000..66a1783caaacf3f01bdfece7652a590e7c676bfc GIT binary patch literal 30628 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 IJpTXy03rurQ2+n{ literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/font/iconfont.woff2 b/src/main/resources/static/articles/layui/font/iconfont.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..47e9980f2d183e2e0e284a0000fadbfb1c5647cd GIT binary patch literal 25964 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/0.gif b/src/main/resources/static/articles/layui/images/face/0.gif new file mode 100644 index 0000000000000000000000000000000000000000..a63f0d523561c523476e5330a0d67eb7318cb187 GIT binary patch literal 2689 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 CBC!|% literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/1.gif b/src/main/resources/static/articles/layui/images/face/1.gif new file mode 100644 index 0000000000000000000000000000000000000000..b2b78b218996f70773540d0d3a8649d3c2d199a2 GIT binary patch literal 5514 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/10.gif b/src/main/resources/static/articles/layui/images/face/10.gif new file mode 100644 index 0000000000000000000000000000000000000000..556c7e326801a0ea090bd693ca43807925d3cbc2 GIT binary patch literal 2797 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/11.gif b/src/main/resources/static/articles/layui/images/face/11.gif new file mode 100644 index 0000000000000000000000000000000000000000..2bfc58be8c70d512f4371b50b2b98c7b8adbe719 GIT binary patch literal 4121 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/12.gif b/src/main/resources/static/articles/layui/images/face/12.gif new file mode 100644 index 0000000000000000000000000000000000000000..1c321c7eb0e5b5bdbdd10b93907b8eaeb3bf11bf GIT binary patch literal 3361 zcmaKu30P9;8pjWcVv6EIgqnH)D=lRcH`GK?)C$9;Wo#3Xl2S0Cw9+#Qq?EYk<XBcZ z*P51@rp&Uk#dI2NyV;`IGUL+J*mko`s}a2)(l+;*xjZ}%=N!KGd*APUfB!#3MDhIm zg#?HIJw%|9E98-@({<OqMlKSO^TWE^v&P<C)7@XGyB9ZdX>v<3X5b`#^yP6~XMnC} ziLO^v5pB`6m!^BL;g1vMtLvZFBbd>_eRubpB~{%Ydw+M;k>Q~mQ5%|`>AHgDbzKbu z!@4J1Mh6gSb;szl>h5FW&0V9fZ^pK4jnQ@U_Vnr6x4HjRI;ZFG#Hs|Rk!O2!_vK$- z{<F2rRekUmO_y%$%~{>R#-|r&r_?=qde-^48moI=|ME&eR&Dz?vdBwS7H3xz-?ib# zhT30T7b#A^(e<S6Ug;sNy{r3GH2SD8^QT_v506HNo29#Zuk9p_y}kUfy-a)h$*nrV z)w;;@751@Z155V}H5Jcz);6=KGXIR0P_*yI%>8#Z>^kwR)p^6=JAJ2$@@Hb+^lz!V z`FzX6(XSi(E<SyR9K3n4+D}tcJ9Ia7#et#TmNjqt@`mpuT-#xF|2XY+N6_&7qM=sY zn|o_It89kP+Z=9Cy?s!4sI~6>%dVQXp5Ak5%cdI_-yIzr8-pN-G-eSU9v{aI5ri|T zbYqm^(L%le4ihSb;4?5dD_tmBC04*m;uR8U5czr2Su!k14k9n`=F|D<Tycsda(#w4 zZhdsTX#FaYe=<3ECLEZ>&Pq#96Dx#pR$8i5&dv%V3zKC@Vm7$eKc<o4@g<5?LF5qq z7qC7jSC%1$y{TTFB07Ts`}j~9EN>qlh6l`~Gnh0wc>8!VSZr?}Hq#gW@FIh38Oh7p zv0=OqxxifzIYpsJXVYkznVHl~FRCnK1&!hF@2}s3$@By(Jmu@83SpL~R8IN0Lzq}D z%8;ZhBr++i-%*$(TcZdfgGvoYNK5~;tyE4OKMqwSOQU58(`gJUU4NvH3;F#2zcelF z(`vaQR{Xi%zuj0Kzb;)&ixtadYcfP)u$-b#mCoj7h=mGSM!Zax`mu|G6q!OMPm!g= z+&CZDjV}~Qr1}T$;}Lv5J4z~72&E!%R9Fxh>_L@ClG%QtOfJtmoE7d*4`DFE8KM5( zJf4q#n72QR!J~6oA7jI0qBUt^sp4a7GKlpFWrWfFLc>8U_itnMFr=k}%wggT$y#wT zFGH3Fj~|*X`R7`g|6Ge9Hu-OA`EU-ee~hJpVrcr&elhBgj{raV%TM5fn@{MArGWPg z05)oDR5$YH`*&}Lhu*w?_438w^Zz`1`sDGWfj=HT`2Bu=UvJNEzuvoh=XUq4uFjh` zu3zi8`tK{3FI~LQ-uBD+pIckbHJ?3m`c%`&6UQ5m9c?&LfB4W(2Y>wG!2W%Ezu&XF z?qA>4*6iB3qk8+cs&6Z|ep9ifysWgOxJX;Ld6T9ff1_HZ%**{6$;sZZeqC1P+BFJ! z#_DvLG%a=2N=eF!<>F*fk}z@E(j|)*C49AT!Tfpgaj`LixzYSNvu8y`M)1PJxS=7O z;F&>z0c?LiUmtIl7n4D!Q9V6oOm}yiHg$?Cg-n87oSh~+I@l8@5hmj8Y;CM@R+d-` z^9g1cQxmkY5wHi+JG6;2gg_p^DS(9&AP6&-izro&9-ej<cGfYDs^a3Q7OtMt>`iCS zNL*o2RHB>|8y-H5LckK>Y1W>MNjvSPQgI~8>}b;v7Ho@)46rK>m8_nM@usp&x3YyK zjFoplsA>`+D7(Ac9&38*b~g4P;<JDnKW`wu5xW)7eU2yi`5+!RCkL<hcz8DjM!&uS zchr{dvaoeX8E7q4q9=HVM#9a9aOWrovrh>YmbK)SxVST2J9;<bg3X=H7It^!sW8;= z1Uwvqx@a_G#!61}mha~n8ELw!V_|5cZKQXNTQlASRX4>9?Uoo94nebGQ|8@(P1Qup z{1pB<6bG7!M0!N_<{4v&zKU&}Zyobgi-^fkFHCAThnxjQj_+Q$wpO|<HR6`pz`xX( zS%f7X@5_rQr9c{bcYp1XDifQ@^Ej&71`TR&jF%0mMT6a5GCh&8!{Lo3c1}a`3s<)m zbC1QgW^+3@o3s=8Spl1C$PpX=@Sm@qAAS1dF3$KM%=LpX0)w!DCVm)%a*3UV(r$^W zP?<`Yts+FGY3-)6BT1{MN>>ueJKau;%=Kg`tygISU@HWSNi`!ew$Ro`KO(HDeKZz~ zXvG2y&ddsD3u9R<EEc9=tjwHfj#F_MQeme2f|&^t8I=9_F@;Te^dy@K2bf&K-C*0B zvUOMjVT8pI;!qUy0|Cq0H8Bw-FLa)cZ$2c%;I#rp3Y`1hE(pb@KIOzFMwBW+-M0@v zxByKzK}FTr*6~ZH+qqg-K<&^rsGieaE{Cj3{MNs(Gp?0Xpo|}zB{JIiS5d(`li$7+ z<yM=<;63VXO*o|#MAMNnxZHeSBZAJLo1;HB#u%Ca;UHts7&te9$MbbY3JL^se0|qD ztqmkIH3eBrW|m{ccEqeA@5>+*WDQw?pg4dvLRIA#Xf|yw)D{(&l$L3TNnEaP0Xhj? zO?6(6$ImH9uEi%K35yOm7c4(8hlwn9KDxMod6XBpZ*d@x?3B+W^N0z`wF!Zz@-Ho3 zs~pcW0sq&j=|CPOP><3&229N`k`>wyqEQ+&qeXyTlq^^agn|H}sDMrifkK*^fI?25 z%EnUTUE1QKO|kZ-cySw^;N&3A$-x)GXqQ`P#Io}i-qzNeWP9&7r@pRk%-|sMYfdlX z@cMS)<D8!1*AB!NuOdj{n`}|T_8xt6HxY^Sn=B2Al)sCF6Q*1L9)iVK`EKJ7?fdRW zFqK(uQT^xJOQzYM85u0E+k*`u)9(#7Q`&8yFk<Qp&P^@MB9?C^HdnaY*^ssO@ak|$ z+#X*#{aU&Bnx1Ia!7Vj;w)Qh3_r2M&HU|FO`TsSPB~lLyJM$$5LrI<Mxz2R9^@cRP zp#Y*mn}DGJb^+2m?R;GI`05R1nsuG*V6j9v6+;4c0;n|jNeSpxXD8^@&8}>039yoW zU?msu+(&pq39yktJWL?~9~tyQJC#^E<UsC`r2>i?Z3O-K^vU;qDy}((%yaD>G|n?E zL610k<tvRbxS8bNBRL$NrF$%}kMb#b74EZUnsaK^d`q_^jwVl;d&L%Q6lheVhOoqy z+c*my@>*kvlcB&_y?Lrm$8nBZ_s?U-I-z=NT{lglglN!N=bC4iH!=lkb^>hFYKaSk z20EM0tCo3LIP1;gkOrl(F_?wPPGA<*#20@t3r)1aEc^^+am#;xn1J7OtmX@|0BQi5 zumN~0^mu>7PVd)BVAm=Gb}9pP2A?h*H|f<%@51^c4M&eP9zT)O)X<cpI(7Oia;BxV z-sD1q`(?zEfiNt&m)%u#I>NWUXQS*^3i^@Yx%SI~k$%CEkO(9UTmJ?BXvh?@gv>!9 zzPT<+M7<FaD*?0l8(j*;Mfoo3vT}6=QdL>Cy}Zi3QeBHA(dm_Y=t+|&fA{08sHK%r zN59bQXL4HfKSc;2M`^x9t<~zOQ37a+)COeqW(R<&H1MLHX1zmJDO8dw!J#VWHGR+z z_vc2hwhutGc{S$TFo*|zBd5`&2aoCRNB6i~7m4szR=B5kA2qtaaxfbjLcelvoT77Z zW57RiLTZ+6T7*t)7TiE9Tg@ipTaKTv?Jshf%glZkbGYAgO4KRhgizOJ3)7|LdoNEh WgP>sQR~M_Jj_kRz-3$B!5BM)%<nes~ literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/13.gif b/src/main/resources/static/articles/layui/images/face/13.gif new file mode 100644 index 0000000000000000000000000000000000000000..300bbc2a0384e5654525e7581017364dd9ceb59c GIT binary patch literal 7425 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 OGEy&?+)P4%uzv$F^0?su literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/14.gif b/src/main/resources/static/articles/layui/images/face/14.gif new file mode 100644 index 0000000000000000000000000000000000000000..43b6d0a43857dc0990728155ed120c8eb66a5b81 GIT binary patch literal 2375 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/15.gif b/src/main/resources/static/articles/layui/images/face/15.gif new file mode 100644 index 0000000000000000000000000000000000000000..c9f25fa1d25412e2e929347c0db0878b0b641d58 GIT binary patch literal 1793 zcmZ?wbhEHb6k`x$cvjC)UFLjcxo+2{sU44AEqro)?t{~@-b%N3XFR-Hwxr+u<qnBs z7mFwQvj4qo(t79W<Y%v@zx;S&s$|0MQ|Eqt`g_GHWZCXNXO(ug@|2!9_V<iz*4i~O zn~!?V+Hrh_#-9tiC*K_Fy!-g?HOEKS;xdk(OIo${>lK%oH+No|8@joUb;8o>khO;% z-pt54c=5$f_l$zz1xIF9ZC!k8rPSX?m75>!3YoF0@6_@yw?fNicKtc8QFZZ3q7CQQ zJ28K6dKNF8dwdf2>Dz5FoA&JK_I!S*#c%QM(+{R^st_tYd#Py0=A#ot|K1Au_q1vD z6!%ScSEOWk{yZ-7e1G7dQxZR(%&R%HD{|8GPuFK(p3ArTeE-+$eg#|BB~~S$dA0ra zCi@?c7ri|<sbKHk^K<3?-tbwT%Kh%*lm!Wr^P;#ny}4I=@5#m+b3b3Q`g_B@{^E(r z=Qi5UJh7`s>%pb4sD-Qd^>BZ@TkN^$;DL)19`Dfod@V3w#!8pDhc<M}-nrBJ_g?0N zBTK#==Kpox^!ri4|Ns9h{^#~{4GDI33~)8lGhk+9U|>-E$->ITP|u(PWCJ5fjDdmu ze?xs!vs8YWOpZ)hzDjdnpQuc^mXOXgX{{oe-u@<M=P7ZP3QH{AgtTOw=Za2Iw)JHe z5a4I_wN;j0+ovL`$HrzA#J_n<&;hncX`yBlX=O`^H0C3lnVHih+>~|ZFy%{R@dafm z@IQa9kQKz2C85GpugPS}VD;TfljXPO4=V=Kgd@?P4xMV}<WQe7^WX-bL!9z!_C$PA zKRAcg-sqpgp^eIdz4l^fJU_7WGnp%et#LT8Db;(b(w!#<KePMEny7lkY)njU_n&XG z{)vk)`?>iXHU$+K4vH=vCN_(f6?!dfWS6n2`SY^jFjF5#yp%}dht@+k^lQ5mUcOp* zcs?^%!Geg4gAHe92$#NpR-1INsfoGiRz$%hw=<l2Mm);zij=rm*XOb322MEW$)PHz z({ON2<jDtYTuc^DjyF4nHC6;K{>FUkg|bMf)@r}A%N=>H&t=-OGD)%dJ&%aS1;<ZI zFE3`0)msoz_pmAB@rA|KTrA*7&;UgOGXo<7KLZCa5(0sdP#+xJ+}hk(?`z(aX71Z5 z8tH3QufX4=pl9V9StcYE;l|v>>?S28-4y56)#MguSwF{Wn{Bi0wrzT;!uy3&oA(_^ zP4_wBW87?f(kHzUYzsfa7D1pbvq83K2{lV=HFwoZ*)}QIN_Dj=yXlz=G?~}CDNBnw z0PXZuXlB-166sJM;cnU891&3uiN0ojaP%=)9kJ4E);wy(ATN9lXld$sVfl^MZ`{0f z`<5JUy@-h7<A=Pwa!rEqa^gJkysq!$Tm_q=c@k3`fBgE9tSk9%%8R0=ZXrchez7G6 zD_VqP>JMl*sta~4a6oo18!%LOf$q&}sITYaYiet1X;M?G&Sqt4V`0s%?q;x>VWruo zITPfDMZ!^SQHzD;+gGnyyKeo4jrC#{^>Vzt^*iM1EyS8U1jSr=;w_HEA1-Lp<w;3a zKX>7hf0JU8dSF%T&D%E<+7ylUKYC)M*n|{ZEMUu7fY$3aNE)ViSQzrOwtGm1);sbf z_Dz^%r|aYuqCS15lTnC&w5K1hmuJ8d&l*pEtR`qRKwZ!p-%_Ak4|D*~1b>MAGiJ?5 Y2vsx^3s|^#p`syH?V}DDY9U|^06Jl%MgRZ+ literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/16.gif b/src/main/resources/static/articles/layui/images/face/16.gif new file mode 100644 index 0000000000000000000000000000000000000000..34f28e4cde0cd13acdbbd7482282eb306f5b21e5 GIT binary patch literal 6721 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 Oc~|k;OhAi#I{%-Nk>dOS literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/17.gif b/src/main/resources/static/articles/layui/images/face/17.gif new file mode 100644 index 0000000000000000000000000000000000000000..39cd03538a5bc595fbc46c97cf2b06c8bd8dadd1 GIT binary patch literal 4439 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 IdD(dV7kW}yvj6}9 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/18.gif b/src/main/resources/static/articles/layui/images/face/18.gif new file mode 100644 index 0000000000000000000000000000000000000000..7bce2997f86e477a6008fb1cae8dd03cda10abf6 GIT binary patch literal 3017 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 IDGd4k2Wv_t&Hw-a literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/19.gif b/src/main/resources/static/articles/layui/images/face/19.gif new file mode 100644 index 0000000000000000000000000000000000000000..adac542fd33e152fc08baf165d1c5a467f0c2747 GIT binary patch literal 3040 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/2.gif b/src/main/resources/static/articles/layui/images/face/2.gif new file mode 100644 index 0000000000000000000000000000000000000000..7edbb58a843cec27a1641a5c9b6d30b8fc1f8c26 GIT binary patch literal 3222 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/20.gif b/src/main/resources/static/articles/layui/images/face/20.gif new file mode 100644 index 0000000000000000000000000000000000000000..50631a6e314179d0761b4ee664616ad2162ba147 GIT binary patch literal 5144 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 TKb&t*bx4GV=Q(`>7FhdV^sO<; literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/21.gif b/src/main/resources/static/articles/layui/images/face/21.gif new file mode 100644 index 0000000000000000000000000000000000000000..b98421282467fb377dced2eabd72bcc5525f3e8e GIT binary patch literal 5191 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/22.gif b/src/main/resources/static/articles/layui/images/face/22.gif new file mode 100644 index 0000000000000000000000000000000000000000..1f0bd8b0023c25e74fac444bfecd6c5d7a0dc448 GIT binary patch literal 9823 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 TguQ<Wdza*$Ibr`PVUzv^im=IO literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/23.gif b/src/main/resources/static/articles/layui/images/face/23.gif new file mode 100644 index 0000000000000000000000000000000000000000..e05e0f97a3674d02e0f160c5193f54f6b3a30fdc GIT binary patch literal 3792 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/24.gif b/src/main/resources/static/articles/layui/images/face/24.gif new file mode 100644 index 0000000000000000000000000000000000000000..f35928a264bd981595dce02cf48c1776e2b5770a GIT binary patch literal 8096 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 Lls229f${$VzcBA< literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/25.gif b/src/main/resources/static/articles/layui/images/face/25.gif new file mode 100644 index 0000000000000000000000000000000000000000..0b4a88322946c1b65e9236657d6f42c71e412a94 GIT binary patch literal 3127 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/26.gif b/src/main/resources/static/articles/layui/images/face/26.gif new file mode 100644 index 0000000000000000000000000000000000000000..45c4fb5563081d684f00cc3560df41b803cf7bbf GIT binary patch literal 3291 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 BI{yFw literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/27.gif b/src/main/resources/static/articles/layui/images/face/27.gif new file mode 100644 index 0000000000000000000000000000000000000000..7a4c0131dc926ee932804276038bf053a5cc1634 GIT binary patch literal 4377 zcmdT`c~nyS_GcCp6~!^L5Vagq#Cc3WBqx%bEh{HXa{!S_tqc&StTeN-x}}x3+0q8H zQE<wkK}|E$3e2urTIMx}0{x-)c6;lsUvIsC-&toZ&e`no^VxfU&l*pPy+ecsKm#x> z0Z5)1OIo$0T@KP01WB8&^tsK@9fVXAA?dJ?_IgR*hDkfEw;F?_@3u<XO(aiO%zZj3 zeMOc2kzQ8-m3F(#G@<8b+a-^e@3a9)d&r{e>S8A2<{pT&KQM;?mkuP(4egfp(dMTc z=e}H;|N8K2r<e3y3f~ocbGOsn_}LOFY;Kq<6~{b3XVP~!R{A<rxL0Xzyz<2bi-{*r zoux`+4|Hy4BIic(t9HR>AE~#TFm5}hFjTE6?e)03&tz^mBiTXu<$2ifJyh9t?+1Ab z(#N`E^~>hQj!E9c%}=*XcCDM663l&jJ^$y;FP%}6H&Fu*0^T$>Ru)8$w)xBrWlKj3 z=4V>xXS?52Am%5lr6XCAm()+q&b7Ht-Id-W4^*dLt?!G9n)_J%t##?uw3X5iMUr;2 ziHBO#eUU>qmVXprC7&)0-Z7j1dbj7C)}PO5b7M!R8&%%jqkg=j@j>W1^PIBZ8{Jn^ zGki};)YjHiV%&4Ty!-O%uF%llYfh5EJyZ3{^@sEu4$3_}xxBtet+S-0@vzS16A!Uq z<BdJWvjZIId(Pa9Af2cv?e}l<^lVK_yBLrE&`9kQUJ(=oR-oZCgZaHR=~t7j9%JM_ zwz0mxi0Zj;;cL6gtNXmNK=?>g@QpC}8oEY9aggMt$KYL3_eF}pb;*>dNIF*Db93YK z^VFGlJjs_^A7A`-c^mfI!0wr$Q&TSkKKp^Dd)6J_vSjwvhNop_-@8cfi<|};<0l`d zetCUj=6&INp;vyOijZ$J(H``rcG>rK{KGuA>CTPchL5~I?>8e#`Pkw=(V0ChN|*Kp zh^r~$+n$n1;cU0}=;O`L&iG0DLMA&x?k6vKV5a))w9nMryy@=Xrzh8pT?`Yq<$UjP z|Jv?9e3v>sbY<$fdv%u2#Jd{lbXQ&Ks;)4@-U=J>4Hrp&@Y53^Q?Jv;USAu#<v#m9 zXI7l{^c;O^uynE~@m7Lz#}VJV0V}?B2Q?nh`_`s6)I_`LxlHl|J3l`U_;KmYE39=7 z@OLB9+%3&5z(AQ?CJLd_Fysh!gzVSZHI*3=6;EelBI#S=l3cK#@6}>4anUZ=U>m9h zmFY&0jq^xn(f!lc21KRDM>#}eT~}kAQyo(inTd3E1ST~xAt}W%)dd?7&4{Es%AOa* zI4ovSg&psLB`*AdS%~SzV9_x)=2m7=7I-|y*47+vZDVVTUxl%>z+2)hWVfvu-rCW| z*3r@q^Y?|7MPo(BIQo$(f5(!&xnN`2Y^Ea)w`0c+^Bq>^4AvGL-oe3P!H1=#nM}hh zB`t{^k!qHdqW{AKnVu5Gies|l7)h7~j}eiKZEP2;EYrVANM!!wHYvq?u^jU#Mj|dX zf{DYMTP&3HLy=1T&#H-u|7fSM{pdgQ{eK;&1f((PI6ry{V;d`qE>qWE2*q@CW6>kn z3|0Vxk?;dWS}cRjNQq@IF>e007$a&#R9w=6z<AMuN_F&1N?}JNMbSOUE?Ail^SHQZ zM>2_MV`pz^>27T!!`&TkkH?e9coLCBw6vkv+SvZEB{QP7CDN1FKWw9a+FJe6cA*&( znX<@aIxB8FJ(|K|Bw`kec8vRVE*8J^_qT2IuXDlw(iSI62Dd=%zfk={B<r7r$A21E z_VQ2b)01TV&XP4YaDGlI`TlKoW_s%D<ew8?#y@`=8~ylUWO(S0_k-^S#G<!vUibIC z>V4VsqPy#PXGi<9r%xWYwYD@rYHDn#uM-MtA3nH$@9v$N+ts&j-nd>>dF^V&mCKhd zUO0d5_wuu6PM4LQI{Dj)<Ht&l9ywfmsOVr}!GZnz^7rQD=45B_GkILjo{ZhQcBZGL z?%2MKox)0HGLjM#;<v`dZi%5sM@2@2Z{D;qY{UA{kl>)e0Dr%AG~cyUA8#*Dk2Mr` zvKxs=a9!=<?BwWRZ)a;`ZDonKz?qw^GBq(aTDii|Kp(4zS-wnnsm>B@Elmw|HMFV< zN?Az}sUVMl%fX-!Fi5r@^kyN@Xn+K;YGH#c9HIdDJYW{FG^8#Us7D&tvhd@T-U&r* zQB=DyxXD26YDq{42&a0^|FGrB>qk7#5WwfmUx%DeqN07x4X!*7e#Q~_99#P^G({xG z5As}<8_Ocs9a0w~OVBOPTJ~AWsiqN#1A8gS{yIiA$tH(vxFH5)kL{5Ky1^P(D^26& zy3j@EA#24v1HLBG%_0?B)qviFytFCcQhAKLtKupcnb1&%w}Ttk*u<1wcH;xLS&u7B ztRe7}{W!=wdPMKT?QTA7Er|iVR(Ay?Iv23A1+JmE+L}{n;C>gLX*epf6BB^)H*_D+ z%0vPn6t~oUIB1}dk7z(+>`&<t`6%7GoQB*&3^)s<usYnXt6sPr2(~QrB9sPX13~f_ zX1g28RTnS{=71GeVE|CDfd?@|q2!AItTZerP)ONVRlxbAp8Ey_F98a`nlD5=!s^jO zV4&t|fPiDlt5F8J15nL`jBx@13Pgq1Bb-lh>Y)$_jR<tUX`!NI(_fM)?_)XZS(uC| z10vA~K3LH`plq#CST@NQz=4ZkDuGG{nab9*gJjhpgLT<}1eB%6vB1`{9L1%BabOin z=g3eg8VXq?R(^q4u#8wVKut#M%mT3<Oi^~GoLt5_YhH&yEl_~@t=ZQTnPG|vTbc~v z^ZB6q1f!D1R)W1`uW|e%+&=FN`6U7`Vx=Mk1-e*+)VI)*_Ze_jEazi8FD33SlJD<? z?#;9O0^#Kcx^L2S@T&ddWH2JgQICX>E`ZJemux{8p+*av!P*GWo-*c!eQ(dMfsFk2 zGD@yk5W91%`1<!|z5uw(0x1-|2e{();!9c!O?$3#X<D%q1JuD77;VN(D?1uvWlYGn z|6>~RwJ;8hMwMd+;6j~S3LoA)xp$kv)8uzB^+)R%T;QeM->h*2&bt<9(9Voqn~{eq zAd^b)1uzi*21fs1V1%E_lv6NK)B62%y^#XqYK>J~c(IcT0!xJMeS5M192~9Ie6gGW zRSYM_>bH9x(Z{TgH6i<l=Y|_uoUSowS2t8U7(~6?o9wM=q&O3S&TUn#rEVNd&`b3w z0%<IVd<PrB)t=aEiwu*C#kbvAL+~k@6@(p1s!Ry1r-lb@a})?cyDyTEx{_&f(+O zcJFZHE?A7ZQ4TlC2&Cc=0|*T-;BF`fXitzt3Qycf<S+vgl4$b#noG;lB1%7YgP#dF z$*^jHwMjsE)e{Dx$N)@%{l&i8e;n(`GPfMBhek_;xp`TJ#+Nv=o#UqoV6Vvj5TG9A zkjff@q`k9+vnGS_V(AP}FJD~&dt7jkDQZF<Rc<qit;9m}Of~ulfDQuiu=d(z6fLjo z`?E}gu9qh)5rdE9=&4l}Vqze9hM|-IypTl91#UfOzi)g1P_#S}Q_i7fjc_$pU|k&| z3!$D`3GG5rnL8S<cF@Pciy-zy<<xLmF5bH+%%R3A(LVZ_WCGAmF!K`PO5Rybd9|hX zWuh$o*kL2J5Nn|rB(JSXhIgD!&4nW@hbiNyrwNdR_5DRcL#{aG_Ijo<M?h32Ds@Zt zZiSSus{n$x9%M`^2r}iA*fX}KJP02O6&0eYq9L5!-@8OSHwP3zBpVr#Y^MM`2r2-` z1PZ7QAqb$FfEwlOzbAE^rl|G@N}z2aU{V09nz$U8Me5?DmSoGDlnb#KPz|xcThc57 zD}F~7l2yTQ3_ypE1PvadQMBoV#o=6}2LylulmYUx;oK+d$3eOHGGV5W7EVg`EHm{o z!d9r({H{<8Gp$6B>3MI@nX_hei^@5Ta<W<Sh!xZYS!HNr4JHWLSpt|<3p<y_0o9@p zje0l=aJ_jhD~F>+!5n3nvete0<b)cyl*`hJ&BCG%2EoE+fiJOHZwoa+n~QZ->yWj( zziWI!-yn!UCMiH?_~O7o|1H4-3klwilqD!1;(@Xvg&$D~^r=K?i5r0it_^TLEo*Zo z7&l{R&j+F913@+_ZYnLs`WZ4Rt7<$&E3D-%Y%{(U4y%P9*knW#eCF^p50ssLcbh}X zhNzI>qbMwihXnWDtTD{Y7q|^2-5PK8eR7Q=S<<Z<qL6rYGoa)EMpyuWaGAsA+CU8E ze+WacjASK%oQ&i!8HQn}6T0kK#m?GjBO3RR`PtNpIQ4g`weh|)?#(X@k3&M*LP9%v zqsOZ?%a7|8L1Fv7t;3@`SQ?<<m6noC9cK)^HJ%2GJrLo|&wAEwMtZBzwRpXL89?Aq zM1HRPPyf}HyJe(fb6}~VZxfug-k}{)weJ2Y7jG6K%i7?${K(Rh3h$dbP3hX+P_DXb zV)gdz{hg0>v<#YO%r;~r_pfr$t)^+cRMgZ~z9vBWK&m0G9)+-&vXsao-Ob?%@13fK z$QL28a(<#rAsB{}S4thp7pm1pJ=(6wuPei!QPM@(!~nA1@**I|Jb{*j9Kp&HIX)YP zIeT;UH_R&5B&QR}03{SEO!j5b)K@c$IN|RWlEifgfX`2!cw53cLq2T!6bD17>L<zl z%ijA5!PH+6ES!3>MW0)#N2H!jZ7drcIJtP(p*;47Gz2|6wUMM(QF48|r0&At(Te<Y z`WGX)@#<%fS|@4;CnZn85SKSq@z#^FVXf7xJ)lWkN)uQ+=tz1fNi05W7vourC}ztF z-gu=y&arBUe~pcRPmS}q%VB{lZeG}$9}$?drT~tO6a@F=DBqp2WOjgY!j-ab7JM?N zG_S$!)Og$Bd`y-O)-Mb7lDH2J*M?!WLkI#6vK+Dkb2x&-;l|0Chm5CVpg^d`!l`E` l#A{BC)!Q}M)%t=1F`sqiN{qN?INHAMBurkwJunF1^nV7n5H$b* literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/28.gif b/src/main/resources/static/articles/layui/images/face/28.gif new file mode 100644 index 0000000000000000000000000000000000000000..fc5a0cfafa213e9861135c8ced7b87ebea74c269 GIT binary patch literal 2793 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 XZc$POJ{`i7|A8QtTcO)F=Mnr9*gf)y literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/29.gif b/src/main/resources/static/articles/layui/images/face/29.gif new file mode 100644 index 0000000000000000000000000000000000000000..5dd7442b164b2ea32b5ae97da71073a31a699c83 GIT binary patch literal 4854 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 G^ZyND2?^l< literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/3.gif b/src/main/resources/static/articles/layui/images/face/3.gif new file mode 100644 index 0000000000000000000000000000000000000000..86df67b7aad1ac80079562c74945d9c4ced3c397 GIT binary patch literal 4017 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 Z`!_Z%27Br#6>oByc-ZnwM>1&V{{f6`u%rM0 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/30.gif b/src/main/resources/static/articles/layui/images/face/30.gif new file mode 100644 index 0000000000000000000000000000000000000000..b751f98abcf8173ae3c08402c99ae885a0dfe162 GIT binary patch literal 2555 zcmdUwc~}!?9>)iAFa!`LOhOofIcy-3h(J)HKuAD9Q)EFv5yNtL0Y&A|EuzjFW+oA} z2-c(8b>)!tq&`UN!D20lT8o8>2UW{@U^)6c;!=eLSB{;)cI)=({<Ht=)0uzfk9mLJ z_x*mpzuz0VC_+6ijSumm9srF!%Y1XweY912D%<yIeSF7J&yiPsr*~ytGK<G<t8N_f z8tu@H^=_XSyfD}r(QI}dyBB=-kGvngT>IdpI$gndSdG1E4g9u7Kk=fnzh!Yj<c#s| ztz!?~ZQ2d@HZ9$slknB~>XGM{2YZ^|e3#yL(c{iXHsdc2e|HKVee-(s8?PJtL@yqm z7<-&@^N`)c`i$Os+ZP=lO^kds)|K0RK{eJH_wx3}9~zK}A8YPjyV!eP(DUg2m3^@j zLrrh`Pme!8a4yfL?Xd5}>-I}qoV#nWt0kVp{rB3A{{C@CTLX@b|KqQ92dUxCg1_Hh z)Nvl~zZO!HhkTaL>usS1JB|C3pzdo0w@zmC-`zDj*m8agum7_9*yGHnpD3tA|DmqR z(R&MD-H9FUttm_OZa)%qdb6Z<3;eq8Peb?D_4jsleZHzH6CQcA?eH3OWZ=>8!xc~J zcmwU}<9+zp{m8CQ+@D_&{jF{Nz!#Fv#vOwXHVxg<j1M<9Y}XFmHT2Y@!(C+)laFM= zE;>9uE=(5_?&s~pu!0~+@|wxwKmbzG-!vpX1ldd&0YOIP&z@U6J3opnDM@EAmTq38 zQ|u|+`oV4jNe^BU=n>$Mu+5E|P%!)O?37?-j)#M<&euWXrnKkRkQ?|Lcrw+JAl;%= zri>Te&_sH=B8%BRvS8gZ**z&MTIlCVxJL5~r~!|i9>is!m|V*9x65}0>t`S+j?Ld0 z-x$+W&KBZQpXH5LTg#o-aAKgQ?hlH%Zqf{O#na+)TfVqf@NH<s4hE_jSuU|@<nJ@Y z7z~guVpoWJVwu=@rL@R;TB7>IlXk}<S0`?EpK))PwId5&FrYnpYCFv26wrSa*&p-j zs!p}Ku6M+8)j6r{%^ZPi^8UE1X{W>{BPz`dO>7L<%|AZ#`LURRFInZ#CTaY__H((0 z25aW3TuE`U5$0wEX<t^W_}rQ18@5hj(@vdpUct*)c5#{AoCDdLwbVk2IgjHn-TSPG zF<;P9{9x2AtVFc_;C$(wr$uG9SzA*Nwmq>!crEj+T*>fj6yhex&JkA!dPZ_8)IWx* zn)vVZKD+ro3ja)s0kI%^h)t97GbW-UU^2O56ozAwW{`#hF{U?&OAQC~A{1qp+8hDd z;@zb_di95;W>y6#db<n+O`~7PCfx#@T24(T0?Ew@fPtjUE=;!1@FteV=j252sqzZo zUP-Yq)P|C!ogfy|T2w+UN~lq+j=XqW4&-%uD!WcZu-O#~w)l(cTkS-W#7Cl}?ny|y zq)I>XEm=$GkV)CPNm(M_M5N5k3ZMk`>*hvL(;19F4G|D=z`KA7+ydek6N*?5kWOio zP>z7qIe6qiq+7u|E21?HKo`VSsn#h86_SPp%9eoSS%qJ-R3J$v1~~BPQ2n_xTP7sf zA`&6O4J3=mQ{bKP9nl%Da0M9+oHJOkaOG2p^~bhAXnzH|u7}yAfU31VW<%+0GqNj? zwN5rAN^h=yk60&xouW7#=Fjd~(GU;_rrld_1VCun9RYkT+uM=kZ*tQFfFK8f#t%{w zcG1opmo*v>!8WdoONu{mEBIa9ryMt6zw*<#%oHJT3R-j}xD*NsS4fxn=K@=&T%rFN zLYd^J6t)uIv|lFf2p{g~bh7&%<mUDgzv|>)rkq@EA}sb%3A>OK>OTkuD}jdtL3b#q zA~*2dRZGap)+AjmP-VejnJn!R>jL0e(8f*&+=LcX$^$bHnlKj56Yw51$dRZuEO~>T zEdxk)g9vvnm$BKAxFQd%ppnZvW{rdq5GRDqQI9;UFj|G+@YjOxE1@E|jT<hGX>8W& zl0qBdv-<rvocuVmZoSNn5xNT5EbF%&{V5n{|L0%`&(zYf@crz(l1TDD<EAN@g3z4w z3kX6Bgq}$VJwHJh3cm1f2wZJ(bCLOMh%zx_PZPn=>a1<AJFhAu!(fsN8wLhSo7Hwc zTz%zPCnjwBUrzB`hk{ye1qR)%(;yBV^Q1{A`P0Z0FTnT%xw>#yG+-uxtcYX~;Qjsq zEmctoWUMMmilLd5j|hDaNY$7eBje{|I0|s}B@FQZ;gRUc&(G0wq(wyF>`1VJY#0A4 z(k@eS)99YEq2&}tYwMZxXybXsEQHNgF{zRm`@P7Aa{?D=O^GhtEHiLU-04MYs!UTY z@r(7|#!U#1UXO6+I4(3J>6+ErP?tIL933|bR;QcX9YdYXK)W*0tFnp%qJO=_|6>c2 zrZXWXJ>V^~MN7{X6=5<1xsPnST*|`nwXx<hAeCdNo@c^EAFBb5ndeubmPXApMV>;z zq4&($hYY~QaeMtr=9D#)MXez#$Pu!mi>{`Nx~>F;5(30Cz=9~E&<AWx2mr|-2Y9P? z94W7;tU6l07U0!@mche;0ElYv6EJoHunG5z=y9+L#V#rcuVx@`2s^E3vxq1Z72!<6 R1!f{gn5zJ5I(^Xu{u7guhX4Qo literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/31.gif b/src/main/resources/static/articles/layui/images/face/31.gif new file mode 100644 index 0000000000000000000000000000000000000000..c9476d79608dacdc613410702804e5ce7483cb67 GIT binary patch literal 2002 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 PVIGYo?8G3j7+CoagE<gf literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/32.gif b/src/main/resources/static/articles/layui/images/face/32.gif new file mode 100644 index 0000000000000000000000000000000000000000..9931b0636bc8f30b2172b608a44a90119b29ced6 GIT binary patch literal 3481 zcmbVNXIN9&);=@|A_z!RQA1FQl14&E0s%sbz|iF?<1lI(9TJi_prU{vh#(4MMWw08 z=!}4Zh|)m`(jr9>Q7O>?(uXTG<Ob21`#j$~_s4hsoU`{{<$c$B*FL+Qs8}3L7tjS} zr9k859imF7cTc^=t;eRCsM0TW3!To3;_Gwb^iS<)KQtz{6<Sv&8n<L3ms*U(HMYa$ z#Lfz4=dJC-_0-P|wlDv1nd^@d6<M}jG4HF`D{f?cdbYpiciKSn*{)LlU?J*B5_05K zdM-n~@7XWC)wB;4?h_Syy`_ZZ+2>Vv{2OmNO}-$!E(`Ck*wdUtF23>Oy)#aEiMyAY z3?u`=l1}R-q4`pqY3(`X!2+b@mHpBSJ#m@JaJkm9_{8$qHR)Wl<h}3m)IG_^sE5bb zNM}l)Up8Bwt(tqjLDEl`F1-2D;q)Xy_3d4dWGG%Tk}@yplT6$i_ya!kK5DSUcJMwz z@}AcBK&SkS>Fa#NOsD5`i}lg~zv1$x(I%JfI~zyKtR=50OCJKpDmIVRZOsi<Z@Q`~ zexx_m&S<%h>$+pM{5f4zglfx&_0*i}EFymyNNmkA9IkK}7yQuvh*A{0<6Q-_B$1rr zr83&!H$M>5o~8b#&}O!0e|H)CbB)oAkgzoQV5p7rrEdMlGRv{&gvmDdqLap=hg&_- z#>3@yv(Ge{FkqsBjN7q!p@UlMvTL{uABmNlXdz7qy^2n3?|Ni6EaY{RGhdh5-{Ec) zUV(mU4jyU??|K?P-ssZ#IJ)s(^jz=3$~0(eCj5ScUdDcv*4wVX?pL2~wCyY*h#YWj z1^C<@YhP9R4GF{N-yZn0&26Za-Fn$P2nEc&3mJZSxU<BzwE(yH#$8m1%ICvGMHbbm zMg{5KkD@kBw79fo8&;(lx7^!TpX)eQWjas-uFIztU)a-C?3Y2;$qmvI)i{m|oZi=R zTC-e44=^32R8fulT$`0-s<<px|L2{+r{=>CqRp0?xAZ=?71vPsP~g+E0~1x-mZr<z zRvmnm51$ia7e8k&jOH$k<-NZTnW))bnF=q<`bj!dF8y~^({<CzRK!rVU0Jqob*{H` z?!~J@O8af|!J55qs}7Z(LW*AmeSE?0x=(puxNBaVA$jwIq<7C!i=m_g1pt7dRMm~* zy@y2fpjf~V3UaGkKCT{MGL27@y>09wIW$Hviw~x=`~$-Xkcp>N5O5%q0NH2hig4wS zSOI~KN4cy$N8P*`M}rwSCdAGbY!iu(4CREf_%v{2Xh;|jA4!1Fm~1)=FZ*8EhC{$# zP58kC2yx{Aypof|=CZ(+FiR){fkcC?a4@7L5{*TggDnt96dZwqBT-PK1s;LJBQ3$- z9*8U(m+6Q1B2&NRlC21k06w3Chr=TxB480H7@O-4N8)feIKl#MVF8s{KzT>P__Ro9 z7|-Z?1Tu@q;0AK|f$T8wN<<o+eV9*x$dIm52<5oC{uMZk2m4A0#$boSBWWBs5{7_> zhOY4XYR%(&vHphfkJdczBODgoi^XFf<}z3^bEEIhvfBOcL@S0eG<bJzpsXph5Hg!_ zIFuE}cOnxYvJ)6HkcmgqSxg!Y$AGddS(Z=?0*!#;tT0R{2FE}#aTq2BiC}$?^H2UH zA`wHeL?J0C3<`;)pmAuT6@`pMV2KDMf=VQP_jL;6@o8ZU*7w|jvfST%5&zQ{PvWv@ zd^Xpc%?|ml0*?STpUn$kbHF4L*mPfD7?T~rGh6A<Dq%8<8~6*0N#(Lb!Cy;^5B!Jp zC>kAYWr@K+84MHy%0Qz1pmZD#3uVeGfo36SXcQI!`R333|CSCe0|j5v$$#nQ`<6_M zE1!Q&fo$>D9I?V=!^4$LiJWv<vb4A`KR5g3-!p$sPfbpYkBxpF86FaU`Y0M4=<oaR z{$20eo;TgEUv+hMw7(R#wYD@jy=W9PJbzYSS6fqERasH~^hw#{(nlr54<8g27To{i z_j`AL%fFL%`_|3eob0U38`rO8T)lGn(!~qErl*}hmwGlO`ApL3#Dr7vaVKMAqE8%; zI(GC(WW+Cr`8;kohaDCg5*!p5;P1y`GU&8J2M_%0`_uj(efI7Bm-ikoPY-uDSC=20 zog8;lDP)oZ(caFMU}KHPVXZKhXp{vK0f#}&ckMJYH8I|?-3Vd`-nMm%!RAdH_4Rah zv^QvJYOGgRTc^5K1*E)2Nl`&wcGnorD=IMoDPS(Uc4Yr!T>t<{0jY{XKC@YUD<~qx z)1r`8XKpjCh)fqHYMQ#uO&%KZ=u0(^xsIOFjCa)7MmUO|e|U3H-6vCvc%IkSa86!X zWbe3L`Cm=3{>4#A4yT;89i4WnLpOa)zJyY^3ffrW*K*1~?}Rt{aKA&BC+Z4l)WLKe zU=h%G-hv(v`mLB5`Ej!2W7b6k&Xz#z9C9+*<`Km|+75d8t2^$3&%DXSHJ32%nZ;() zd0b6FdXXp}@~ByNQvgCg*C_bng^rwI{r2LR=a(#`Vct{XojMsmJ)+;ZRI9QfL+K)B zegoI&i*59B(9c0Sr?YtCSQw=+K8hL+TMX))+-;<+k65gY&TJ#rWqmpREV+BgpJ6>a zjuTwAs;Z=>MIVn83^g3Eo|g8!DLi0D?=%$ZNDPX$9m5!;C+S(PGmTq^=`|5<^%G?G zouD^A5I_=VQ2m<ASJJ2?(&?OjO*}_aWmlSSPMrFgIR+(MT`eau0k1K6dgnQQP8@hS zvWUD}o)&&e57MeZ)<Fvq0ySUo8x38GIkNuJ59Z;y7Y`-OyW4+lnZ-)W6aWQaJ)j|L zSvBxbk=S0RoE8mAnj4C(Ptvut_e00h75nW@5&VEaddx;eP^P+%4Onc1QaG6Fk)x%Q z{_Mi8n^A#<!7Ul8FpUvjc+IE#Yko1k@r2ZvdfwP|l=*~r*EHYc^d^Fw<;{@}>gl|m zz&}M!o2}WkVPgx2V~t6CM0Q%OuG$)W0vg)w9VoZS<$AYsf4oY|N#|?JKc3;3ou|aF zRG9y`Xs`hj)Ll5$O|LqU2-`=^k8>$8w7^I^a)RILY&okS|F;em03{hIbs4Ekz^vTW zmkMiFNg)*kwkPb*gFH7V_E&-39)aa*-N9NXgESUA>NtayiJJbPd6Qd-=QnP)9^a*H z;+C^fH%(Yvc1|-j3p+5md1OO?XErurnzXP-+shN>7azXXyVJn=&bUX$9wn!XxU1vW zdqxt}46q@+KIX?T&`dMVoxY+u%(!o|?qdJD<kGBzl~Dyl@&+1Tp(?D_UquF0RR)z0 zNT&vs6$Mps%4yo7S@ws@SOrZ7kyv;z2OGW?X(O1RQ=?NfmXj5b+a0J_ue<U2UOQqg zfgM^vO1V3LfOX^xbcBC;8?Mqhsc(1{hU5PI+WKBr^?8mrPBu{0Hb>^UnHf)KrxyHN zx6C7BLRN*ab`^-K42Yr(2o#XK1Rk=t$$+Sy%;|Rr6XQVhX3U|&L*%4I-G$Gu;W4}Y zbNu4DpO8R9%zsl+mPJsLMGyccA;Lp!dyw{I=PCVc8mU;h_jk2pm$ON7+QazmkyfMc z%h$D}-1exZXIR-E*S>{#<zjEcY&d#E1Cx3kOWS&M3n`&MURfWB&9}GrR!Y=IV7*O| z^6!#0<;_J!;6wGQ5k}570aItm39RB;Sd;xZa<cNSo*RO^vDf!XtBP-6Uxra0>u8&5 zAY$$n$T=O^=lE+lIU(hQ`gV_9;_R$`qvd)H+gydsSdDpuAz_Xn>tb{^@tRMBt3#<U zpL8w2!#%UCQ%>$HIgh{RL{mnt3!oiwRwTB@MuXN1V$VCO--UbTdnC!L^xK`*x*7HD zZZgk!!pRvl1(;sxhOD#;&KBkW=O*&$u{qM7C%AT#60h~_<eE4`{DZwtS9>m`8oH|b z-ge+M?fv~XFD%XBVRpN5bP23vZGA!LTl>oppXq&d+s+yssvdoN%}QDA31+0H;#%Fr z!D`8ZlJ00h_}NXEkQr-;QMib7wcOs#oRmO`r~5(o^M@V|NBcsG&hS6Z_{*R3CX5X9 z<fd#S-W4LYtSWNrD$|wWSrGyXs3PY$>{xp%8l<F^GEJe?#HlFjE@_RD?)z@*He8Bm Z9mrT;vuyU1XYz&`-{`n=QBMP~{tv;H_#prQ literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/33.gif b/src/main/resources/static/articles/layui/images/face/33.gif new file mode 100644 index 0000000000000000000000000000000000000000..59111a38c849fa06175a318fa98625c38d717398 GIT binary patch literal 2454 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 V#NY!QusNZ20Jq`2YFGsc{|mj~mhu1q literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/34.gif b/src/main/resources/static/articles/layui/images/face/34.gif new file mode 100644 index 0000000000000000000000000000000000000000..a334548e8780d66ccd2de35bb2475db92c7e0489 GIT binary patch literal 3700 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/35.gif b/src/main/resources/static/articles/layui/images/face/35.gif new file mode 100644 index 0000000000000000000000000000000000000000..a9322643dae616390d8263e8cf1bc4d9fdfa03ec GIT binary patch literal 1800 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/36.gif b/src/main/resources/static/articles/layui/images/face/36.gif new file mode 100644 index 0000000000000000000000000000000000000000..6de432ae96ee120b440c2448e3977587f789a410 GIT binary patch literal 2331 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/37.gif b/src/main/resources/static/articles/layui/images/face/37.gif new file mode 100644 index 0000000000000000000000000000000000000000..d05f2da45500eb37e7f723e9ddddcfd4e901d90e GIT binary patch literal 1513 zcmZwGe>~H990%~vm)XAatF^KD)yB-UZY^|TezlGHQHddWJSrx;^h4cxq@y0XFI&S> zE~nz;(St&iheOJb2jw@#6_rvdBT=G6WX`tRb&tFLx&PjOz8>$_^W_)d>&lKM0wNek z!1Bx8szKi|*;>`Rw8?tYXZ8D40sfjV?drL@3u)o17kLAvOl3A-H5#i?KCYLq6J}O@ z79UoBy4oFLt5T`vd)<_G`H#)<3teQ@tDU`K``c%OG%YPPN$9r(qRQT0UBqtB#Hgn) zj@39Vk0m`_&scisu{?OR{wS$?ok>Tw+4Eux)lkU%{Jd)Pu%;ruD|fYOGE0*po&ESe z^jz<oTE8dx21C~{J--=D)ay6MjAwUvEceisr%PXy1Wn!BqHgeia?16tx5acDdps_1 z<WB6vcT1|GT^ZLJ%O6ZkT;HkuJpHt-v^R~^SCw9S!r|5-%>1LkXBWLRuC5BY?db1o zrsk9hCHJOE0%qS1UK8nEk2kM4WL7OU?Yn68ERUsr`?I3jR5=hiIZ*q>lKkhb)tXC} zmY(lWH99MDR=svuGu=X-c@Q)6e(a;7r#anC9U1k!!n3C^_MNAD+wlCWk>Q1j$|nKr zkE4D4i5`=;fBp1jS*cv=>S}gPZqaBoHX4Ji{IF1OZZO}8<)8}z0Bn>fJ$--xruNpB zL<9h%Nk$}6!2vc3#bzH6NHa49C>kDPY>dG>#-h&rB4G<)M<Ept<EcWSt||LcfhQ<} z&tu>+P+lR8Gj%jK5}vzYTq`s(FOQSDL?qZ5+U<|HfZ6n*|B;Jiqqm*Yp8aSvsRkY% zc}+U75s5b9iNvodq+;r)IrO|B8gZfB-f2Bo7)i$Kq8H5~W+Z4ZB(8J#WGBO<898kL z)*Y9<2`uq476O0BT?s`ZaTdf$&2grq*n$+F^ehg?O3)VrutZMER$f6e1Ou0CAbN(! z$+m$2DtFCIeSOG}6H$k~VhBT)`FqP+Tlt10X1F+d)(603hYYoeb#RG1o4BPevC6u$ z^_0uO#W??%=s<|OA`!=_IvHfi4r=hoS}&DYu8jrlrY31%h2@Xc!F#z4dX%2kzUkJL z%>s-LJ&u#Leh*gfyYNYlVAc5e72^%z)!2SW2XBi@^^YiQ%P!Dc5nhM0(a}Y@;fSR( zqc8e(%-r1K{T24y_aELq(qK`4_k;b~k2X3W0KB%JvShD>l|I~rFw$}4xKzeV_u`4I z_JkclQ|u6_l~Wixm%$4~#3cxY^phRB_$q~Qj7%v)LPb1kbq#Wh%;WQJG>J%F2%pi0 zkUJ4u9!W%IgzRP^&i#)VQB6%2B!V*n%#m2<5dwdB7<T+H>^VEX@MTe{+_i+PUr7Am zS=nX3`A%e#dMcpxje<yPI@``(jBTOVZr>2R{MsISCdG2!puyMl|EueyEHy1%ek$X1 z#y?)PymDZwR*bIcH!?YxO+_W8F4BL+z!><(&05j{>EB>#DI_YM+TMxo7D#DPBoU?i z7)@8#Yv3u#0!Uf(C<a+!G-(7vCKPm*6zsJ>Ob9V&nFDjRGeMGH%Gr&>;rvWKn{gyE z?=%|CI=C5}bmel)8gYFhe*hq!q+G&lUWp^3&qFpsDPirlh`RI<Nrygb%Ox1J#Nbk# z0`qHxtsNP9j>PcBeQmMc76vUSPX!lr;JprxdAytTxo@a{s3so*F~L?k9&wF#d4;ke zV$$a3%Vsu`W*y!tIJXkw-_Nx(DUT@Al^x2(rMeCFb<uq=u>Wa}88upF>|;PK7u)bq zXgJ=Q89egCe>_@V`c`UCI^Wi-1N5{ua9SNllW9!t0;w<}|N2oT3o-IJ65;NCT#lUc z%W;MfC=5A*h&JVgiHpfm5S@OET*8Qx3%O*9h~Z6_)42?SbDo@wv=`*jnas{SCPeH* mFpdMyo)5iv`D$1(GLR%cp|IROieSITZd15fx(%cN_rCxoNOo-i literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/38.gif b/src/main/resources/static/articles/layui/images/face/38.gif new file mode 100644 index 0000000000000000000000000000000000000000..8b1c88a3e8658cde7b25b6e063d23d010f7ed86a GIT binary patch literal 3615 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 C2e#n= literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/39.gif b/src/main/resources/static/articles/layui/images/face/39.gif new file mode 100644 index 0000000000000000000000000000000000000000..38b84a51394e20ac33ae5c9b6fdbc66f90f94a0d GIT binary patch literal 6495 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/4.gif b/src/main/resources/static/articles/layui/images/face/4.gif new file mode 100644 index 0000000000000000000000000000000000000000..d52200c51ee924f0b91132e5cd3737fadcf40ef8 GIT binary patch literal 5689 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 HFfacd4ssj$ literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/40.gif b/src/main/resources/static/articles/layui/images/face/40.gif new file mode 100644 index 0000000000000000000000000000000000000000..ae429912d6d6f74dfffd19376ec1fdee426d8036 GIT binary patch literal 3154 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 F`w#2xZ2<rP literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/41.gif b/src/main/resources/static/articles/layui/images/face/41.gif new file mode 100644 index 0000000000000000000000000000000000000000..b9c715c5208044db4a057583efdf2bc12f099cd1 GIT binary patch literal 3644 zcmbW22~-pJ8pQ_)gjGU_1Vkl-6fuxJfv}p5O+ne+&?b<?qzIuQAX4kVL?kLfEYf0M zrTDbfXI;SBy0&EzgIWav*Sg@wqEb*%(MO;&5wP}odd_Q3&dJQ=zuoV5zdMo95!^tD z3*Z8DgFsfG!|1E)#$RWw|9!~V88UL7XuKX{yv#rI!#8Ud_#N1_wd0%FPtOM*-n^hV z#n({bYP^>*Hacp2@X7O@eWQclR^=`|y2;OYYw2%$t&KMlN7{UMYRK0Q3y!b1GgSGE zKGI*=%QoIg|9-9Iu63DP(rAsF(If5jzLQwPI_GoS>_#6}82i?Z4PO}T-`;b~W~9~U z#;FaXgLS1BTZ<E?wQuno>P)!0+ih1tM9+`-uM(^u9E&k_u#NZB*N(|wbVM7zEBLu4 z`Pt>wmyT<OPveZY#bYlUUf%<U?tcEL!RtwT`pbv4H_z=f-d6Pg<o>c5d)JUtH6Ly4 z**Nz6<m0m|$A*r)YUSKK=z9tz7<Mb3wnlG%a>v*iFw_?M_*_iIoy&doi$;6aHsoPG zTkiI{WyZ7H8%o5&bYJt4v#w)<M~&B_x(-e4Z<^WuwZqHnOZv}*+&fAg9j<@T<XAq> zrvGNz^WPSBcbAu!uWj8<=znr@xTpN(S;~t$xvx7|YmR^4-<CHvHs(2IH$OZnQOJ)A zXHw}FW&i-dj~2zo5kwM=1pW<~lb<a~&yZ;dX|ff{tWe^>iC>5Wr8JbdkP}Of%@)cO z%BTXhEU{pIQhGr~dZ3gzCyWr1AC#Y&ohj2u2>F>SvvPv+Lx~cpDoqvyUn7rcM1pCE zCL@%{NB$rndkR%*8G%D(QPSxQ2EpH-%3yQ+{TY4)CY`~g(c!N@g~1Nu_y;iq2;(0j zyqj7o4@wY4jPC{Cg%TASO?D8CwrbTX>M9mhrCvc}1O^5oYcQD<cmyS9b(ThwPsz&h znpi<3%Sl%&vo%Up76DmNlBUYlgc9MCzLAib9UD8ja8?f0B#4@>%B1B>vS|z|otBx2 z=rWDY(Im*;9^<{EbCOnP%V-I*996D5T?P;LnwSjN?(a832EwNaTA)_KP$Vlws`T7U zS(YYR6iS5up-Pp~AeM+D5(RMmxlAD^oWWr5Mf3;(UC7}CGFd`8pFXk1`{pvkxokdL z#0qEmvlxtUxODJbAzj1|3}B1+{*!Z~vvM?&taRDLzDjuC@wv>uof{-n%Oo0=I!UEk zIpKgfg-WB!QK+&B!bE?9Ppl+enT0%<jR1P1S0qy_^JLNpwJMWfs&J6<JtyFc{8>W( z2o6KQr2BIj3@($&7qLYGVE}^_7|3Q2$LC7_N!4iZVQ7dw{$!VlN3aKx%SrRYH<Rrn z%Yu7G4L66`*r;*jzpq~nzkKn0=-JaJg9E?!KYsMEueYcB!To!8?{wY1b@Rq=*RNf@ za`{qcNBhOL)(hu<J$Lp@i{W(hsiww;`d@zj>Ewyy$BrKP@rT3TAF8W8cwqm&@Am#@ z&+c!(*|qcEJ8HhJ-u~6UzT8&z#pjh<D?Zy&zPU_ax@qGEUCH|5by}#X5M2A|nokN= z=da4k)#Ru@&Q@h*uFUvIsaPSGNz>CL;t!WEOI^BT@uGz($w`R`@o@|0$HvT?8yyuH z5iSx6_`Eq`p&`LRf!qLp4x7bf&}mePpD%f~&n)i`NM1xwg2&7m)7_`Jx#C@>;+(Ng z7{@6N_I9>5)@UnBl!ZAQF`lnbmQnx&{NS{KUjr@xfF3IZA#GR&b(W5r5vJAaIkO^g z*=By>IFHO(rDYJ6!-x+h(di@sR_vQf-A<hzzyhYs3HO^b1z@=^u-~tZwkP8;VqAh* zWdcQv!TZ`rYhAI6-A_a&_*FXBxpS;AuF$fqm^8V}iDU>*BFU$krMaP_mVqC|r1k+a zxpYY!w|(Hl&n?0_M;gTIfI=r5GEh#CSXPxdnYnU#(p1}-F@;r(3P5LT?GyeP3R?_p z#({G&*LIle&%5Gvy`^c+4wl}*^;>ny`cq|WJkzzM{_t!k3shcJA$^EH%^|{OI=B4W zj4S)&V--=X&ZbS~H1^}Ge4g*s+G#}>J{la{ZP>uDY)cDQ_cTD{wASv-c42w3xe$eO z)e6eKny#)1Y4PRN+Z~6vT^Ra(`;ES9!}bji-k)2=66SR+YKsy%Uzkp);tD@OJI<IN zv&ZdW6w2KUrLfz*OtwisWjm^<R=o4jGs@CiAxA4tI$1l;5Ge-QigKS1bd90RO;l_V zD&~M0fB~>Dl_r=9Bp}V3M-s$qp_T4%u@^Ct7L~KyQy>mbB&H<!f#FGHtmh_B>RuID zIyaz-1ErbC<fKxP*;IKN7%iU)$bbXjTzPZzVl*HJt!>B<rS+nXRSZuqx8YGB-y64h z@hGz5Ap@iBdx#4GQC1>6z7#L=bVH*c)RbKkQVZ`(3zRcCrltO@xo@(|=*5X@EOI?9 zD0d|6PPM7X{`Cutx9uKMy|6?Ow&H^Q##gjEnBtGEEZ^wDy{oGk(KYTb?O)6Vjav(R zV=c&Jt5TDxpvCSahsaXrfa4qxc9OMIKrNU=YBso~%4ITJxfF`L*dbqx0=#Ud0$50V zs|y&HN!C8<=f#6$#W15ZeprEvf!b4B>Z9VUh*q}b)IH_(MI|WL(Tifi=E~rdy;Wka zRe0IvICY3mE!|#E@JN_{3=-_9po!S_*BgW-jpoTN-8h`}`-nCEAH)Iz++i^e`(b3( zPBt*IBQ^*zFI&0%AUL=2lpH38NHGyZq%^+)CclLM>w|&y_WchqbUPg@C7drRvUVm) z#j>JGvh7$ef6Gqd*6EJ8^*fyIYYnp(#*s#_jiRCoRDLgyD>ZCmX_vot_Yp@ma<y<i zAo1`QU?wB}6JX;SO~4S5CSW#cFfkC82@`AYM2Oik^8l>&_8nN|a*M|n6qwg)7}pCJ z*9!!f63?V#w-)J4vPjuAo@T`$yQ(eyL0Ki)8&?MF^Mdu+lI(?EEhQC+2Woh|_wAe< zw0VPVMYX)jbpe*|8qpGNFiW_>IE5exdkQK61B!Ksp>&{ra|vvwEubt9ZpJVf6Rax1 z+Au9FKFwKTQNko|gO(J%tq=g11Gvdn)q40+7)cC@SgS|c6Km>RIvFd9F9R32BY_E- zOdV8h1!pBipR@^suXe+GV##`(M~LSUJ^FxW?N1=ZLyT#((xY4eFKY*_*rD^X65=fZ zSu#M*(#G7qKgD86uEoG1NTELi<_}mnYSt`8yR{uX?$mY2P|={ZcAj~op?rscZ@Ij; z?qkEoYP@Z0>3D@s`%G3Sira0f5Kmk=7;Cm*+4S)WnIh<|u7k*nVIuosUGD~e8Tcmk zAwN@tR_{M>u(sL-IPBn|bvO*Tl*O11O@ShQX<)@evqMl6MVkTxVOrZ5=R-aa1*5F+ zUHUE&95un>53IazqLtNFN;DYk-BCCEs;(eqRZ8-!(={!8%-k|`-RX6ReVbtWo_Z}1 zHEr7zoZnlRTywUWk2h;P<XPY09$EC}<u)Fp2<0g-WnCe-7%?KK1Dzd;IXY9jZ2(DI z;C@Rr^_x@|x&7<O=+KGx?nC;m#)e1Ua72C#NscB)WqcECMV%7wR;hCnS+!lde91n= zE+zR2Sl|<QH!jfeiiFMgc$B!%=kkZ1-j+kCkf2M#;1w%2jG!)|?CV@+#S{LV80PTd zoZ!Rlg$oQ$8s{&*f!?tV^wu`eTig7A-sgGXgvmAaR-nl=dWW`l<%D6b-?(MaD)gs8 zh8FF1UjO6Ofv3*~Q0SMaA#j>EQsTW;H34woX_3IA(~!U;B7s*u5qOtQm?w7^BY_wE E2fD;K%>V!Z literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/42.gif b/src/main/resources/static/articles/layui/images/face/42.gif new file mode 100644 index 0000000000000000000000000000000000000000..0eb1434b4e81d4437098efe06cb4e1ab44a86211 GIT binary patch literal 5305 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 %FKWjtVdL1P%I)BVn;-eLqw9kid`E}a zG&J=<u1*zQa1a~ww$xZ27&c$x!!d520WO9PlSW^D{_U)k(e8L%p=Zu-4Pw_`eR-Jc zS-JD$!yf^5TT(iCidJ>CJ8N1{1|7tq>7^gBv#xYLH`r#C!^;h9XI;RqKbBhS%qb@8 z$Zi~3wVHyD6H(PvaxtC)i>vATG9@{IDuMyO67s3$QX0}El5ki=ds6~|oOfZORFLN> zQ58$F@}yECQe}18J~2r^ge1jo_%7?}Oxyrlo%Z13{mCK%2G8M$FrPjugsoaX;7#yi zmAd^)DF-$g6ar*b1b;@!Lj=X5kmR|b0Yw{&h;p7&$ap0nxP+a4Vn_uF1OU!&mQfko zL&Jp!kM%kpL;!sEmLro=lT+<suhN&RR@KsF>Kf%+S8eTVl*_oVD!@Bh{+MTXuW{@A zsvR7wt0KxX-vBH1o4f5<@PhDpWv7Bq_h2aiW4da3V3a`gex3OhKc%HkL0X=LMz=G5 z{c>N?TbxO_@Eu*JfLIR_?6-GeUk&+fUb^Ms4^A7jMhIj*?XMItELOq(8eN<wN|y<( zgp0{kO^zfJrqJ;^HxPo}WMHTS>!H#(6t0J=kSLYrc|yeuGMtqskP>auZg_FBc(-C0 zLJ5)*?dKDt&>v4DV=x@f0fLD9<w<K~XuR8gl}y<J6NPeaH%kYv#hS6Or<2)UF9n^5 zI=U>gHSRrwJu)?nS01a5!&!i=a(Y`gsI~i>xts4|6zFHhh@K(kb|USfv{}aWF-60> zGn<>9_vC%%R33>j%O;Pl*zfG9BBi;EmDf766p>il@>noz;h%3=|2awp$7yuM8nMoe zPJyi|X$a&ht4TTzm%^dVyF`8Il4|~G6lC)WCNma<nh(hrLcvy{PS}L{hflE0r(?GY zH8<&88BqXlp(J|~g&{ha&A#akW1U8Gd3pp<fSaz7wLGe8)Mn}F%>#4>9!EyF^y>CV zdzMGWY{)ktE?lUHbvhSSKbGG^%C{V8I&M6AHaObSG%T&CNfH#y%oa`_)+pZ7cot17 iq=<?Tob_dCeOLbYk6%%KMfufT205?p^3Nc#m;N1BJ9L)- literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/43.gif b/src/main/resources/static/articles/layui/images/face/43.gif new file mode 100644 index 0000000000000000000000000000000000000000..ac0b700850553a3d7be8d33cf6622c5a832cb1f0 GIT binary patch literal 2674 zcmaJ>XIK;I7M>I$fdHX5Lxv!V2q_p^Ado;3L=7TAMZpr1AP6Z!sJad$AczoPEvsuo zM8&qQ^;)kWAczG;#fH-MDi&50QRI@a6Rbb3cb<8k`Mxvfyyu+neZLbH&hzsZ+5k4d zGYHW2Z_{?hrlqdb4W86JTUA~duk8{xY_uEw`=IXq`FA%0w7037BMe7wxN18DO<Sgn zeQLXZkgj`KtQ)Euz0a8!HT!begwa;F6KgQKK9wMX@#4IB`(8V3d(io{#@g2vV{Z>V zKZ|{Q(D2$;<FVluZSRT<4tA(*X7xJno>SAby~^Z3jP^RAZNK~byHStNEq`{(R(sd~ z<L!`hCGMjw_S%QxbyeiiThlV+f{aA^>ua;BV{oILiP}f}kB=7V2CB4o=%X#Rqt^(B zCAi~>#=}>vbbV`n5m=9nJkbr;Y9EC4*E{uJbd<5NoyV<q#^c|%iL`fpKJ`F@4}>2Z z%}=FR_FoPBP;d6`UTlrZbEIWr#w^RB)}Z1XM%ymaS9PQhU8@H>q{FQ~qfbR6O%885 z_l$jLI=7v2^*3Hib$IuM6%S9i4c_9NtqjVJAk`Ikyn9si?&iX`y(j+=+YR*;jXc+= zVyS<(&TZZ9H25@q_(Am1&HmkIY@2Inqc=!nV`I)^#u40TK`1+t>qVxb5C8zcrWk%C z$Pp@q@Ha3xOCb~`OO#-|WO<T|NqTes5(!KaGf4})`Bc6lRFar9BPUfN$ccy+<s^&z z#iZaMFffaeB~?fzN+FmfO_8NBvX~^HSROB7z-zskLITHKl*vpITmJ*p=M0snN<eS& zbWahLMgx6($TYgQj}OfQ^rF(dC{+0M@ubli-aZU3U+~LAg0rQH6Btn(-j`hPj!8;X zDisV0B{MUVoH?B=PhC!-`TP6pF}%DyVGqx=Y?)G+<ta;Z`HH}iq={0K6v`yI4AdhE z<K^i}CJC<ea|=?%H&|I3dAuF6NG_#h2^AC?nW}H;t0SNP|6QfhZ{BIjD9QJF|0i%- zbhbi5iISwr(^Ewf*xf~+O2G(Cl?avc)M&Xp<?AU%Cd!rav_!cA3>El*ZhWCANv1bU z9gpDi8R4=trBEi4gmaiA7=xUYBxX?k{Cs&n94gnFN2AfWH1>2loz3NNy=c>^bl(ua zudy7tC|xR%DZj>wzsJ&k8mkwBQ~_t^NK%tBBw}8wTndgi%}DxbEuq|>;(dt~|Fo7+ z-cMsGa4{4;wLeh()dcHDzx*a#c=JvA5*e)bR9M)EF`ahwzayW9KYkc`KltwLz?;AO zU%z_!qVM^$|NPb4)7{ni^hw9#M-Ly|Z@+i<PTTEUtv7F6zt(cKx#>z{L;dBt+Drew zc;WoHvuFNw`qar2$B+Ga^p7Kl4;?&Evwz>->OEDvD|hYOv3=X`TetkSdDF%XzgCo& zX-Z4h7q2TSTw9Q@R^{bFYkpb1DknQDGb3FIPfdkfCQV6Rk(9VRK_V8#3zscjvN$ew z(ZZMo^XEkiqUJ`<iQvzkH8Xrh7>~;d4Pmo_gP4H<41YggA8-0}FB+9X_Vk$MKGki? zWY<Y9BxjK5M40I4U~gw@V{K(=VU9O5HNhDhVGSo>4A3YfJRY1sp|N5B0zBYJ0grGS z0GKeA3#rsoW;r_+InPQ#LZzi@71=Qg44;7y4<^PSGs`L<XEMsd9sp4wz>7jMD%E=o zF+2b@37>!hmLZkM)#Xs65fR~PA8d)=g1v~`F~6RKW;VBA@%Tv>(AENLp|vV@8b3B{ zAv!(m`3pDqF6$I)1{AR}*=*XhKzm|W4f{@6A;!Z&nW%WTe^H53Y=@m2JD0T<CwpyI zQyHelnUHiPk>+Y703arBj@i15m5XB<D$A)oWd<k~BeJg>WX(ijRx|q8yHR+gO-g%A z`Gydaou*Z$N9I~Jt1QCJ?w+ZmuZ?i^zU)5Lq5fs5LpU*RAgvpN2bbgqH1|hl)Rh`b ziKE%a*z1X><2sE_um4EdV5>?Po=VDBV=X5<>RJ3M%y7MNjsZ8<x!O?OG+9?{6SBt; zZ|6x8F1y^*xSf!g*u0Z3$=gu9o0@gtEuwY{Sev(W-Q~K_8n$_YVp-kx>=L`Frd|F{ z?w3(!cE?u@l>dJ2<C_YY6_^wQtDloHMO|9@osl5N5{>EyLU{IZ&O3H}Cj^bLFgl|C z#>XZs5M>}Rm~WtlDXDMNQ*ve*Qh*d9RgC$8ruAqdh_&2D%!XOgbHX2|$u(+tL{n)f zKwP_E6rsxkL&VMHQ!q25g?$59D-$wZaU1L@n;4rAf}z&lyq>=yhPnd3N7z6##^fq1 zZ}oP}Kw*$*MMWsjl;-Dg;qWom<N^n8f?N8nUXHE3TZ0uor}9c^6)nO2K;1m7f&Hr7 z_h-v_eQM)1<c`R<-RfdfML|GAQClx>qcOqhGbzCnXH#oY)zoqWUvlM8{a*!@_G^j_ zg{-Z0r47YnM#7csqm_o#n8=6hoTkn@A&FK9<Q}dIZgxz~fhboKdxtYC1q-`4H7>X% zhQKiBT(q)xL6u_Q){8-$sYg{<nYl|NBJhSIH>(Sw&NOq1TTYy#n*;vH3>vTk%;4*? zQGZ?X^U<ydd!xvLQgtDM=}OXQ+>1;JOCtgaOaunv5rJTUhz|4%^7Hche4<d`pT|!M ztf33mb{tM<=p5C&y81?F3KR!Pu&6ey3fq2Pm9pt^#}l`BA4pojV$lc%@ynrP6VC$s z;9!d<1zAu)vh5HQ!o>lF1CH+#nl!$2jBaiPTU9K}8^70|C4>eh0C)fg7s?$k)D?qZ z61?(Dph8n`f~YhfVal|kxo=eGKwgXE7H_ZKyKkSZuQ6-CI{<9kyC6Vya_^b|94;Va z??ekC(PCfT_z`%07Uu-`2=vG)xnG)!QssxaL7FnB@tz>pdB1MlT&9s&qEJ|@25Y(B zvU&$(gJBV@m>LA;6hfbyz(OCoROWr2W$ap8OQ1FQdN*BafNX7jZ{BOaui@e*PsTma Sh@V0@dM8BG^xew?0{#K$QUnA5 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/44.gif b/src/main/resources/static/articles/layui/images/face/44.gif new file mode 100644 index 0000000000000000000000000000000000000000..ad44497691d150ea5d02a900231e48ff519d9616 GIT binary patch literal 4126 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 b9m~x}3bb<1{HG4&QaApSkpJJiWBdOAwI><< literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/45.gif b/src/main/resources/static/articles/layui/images/face/45.gif new file mode 100644 index 0000000000000000000000000000000000000000..6837fcaf214a394d8efb68f5d48c9ec6f9ea1fa3 GIT binary patch literal 3417 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 AegFUf literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/46.gif b/src/main/resources/static/articles/layui/images/face/46.gif new file mode 100644 index 0000000000000000000000000000000000000000..d62916d4031609830f26ef77c17ad26906ac9717 GIT binary patch literal 3007 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 Be_#Lr literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/47.gif b/src/main/resources/static/articles/layui/images/face/47.gif new file mode 100644 index 0000000000000000000000000000000000000000..58a083611d7c1afd95d136e3a7fa798c86d0c2ef GIT binary patch literal 2333 zcmeH|YfMuI7>2)d+R_WymLAH@(krc}g@UaIXysZc6v|DCFw{lML_tx9cp184*`ZL1 z8relh&=?dGG3o?08na|UL^p_06A@IL<1U+y4ZKZ27)xB1?B{;%hyT9c&-c9VYf4Gd z>GQq88%FK$%pZF7=(9wa`2rr;b`38_u1Ni#YoJ?-PQ<{Q1Mt)dw;~qzlI6dI!E6&; zR4S&=!}MYJULot>=bAnPrxl7WG3{Y~-ZMS?R7Fmx;JV!ZrqlUU4ZS8>Z=`Gh;F>w* zWhsn$!lPWuh!*)(43jHi(gHKv;NC*y$D;Kw)<I8Hc&|C(vM=^>BTS}1Ph!lJ4eqYW z{g%g>PJ`Dq@YVr0ZM$bS!gWJbUl8S%5Sg+-e-LyD{YIE@A&eMd!^;HdTx;!1^10x_ zc$`oDtrVHP22a+a6LRQY#Ggupb_~Y&@Tv?ZN#u<IW|Clt2GjY_Cqt&9VQ4$;i4eMS zvpRe!Jx1C1r|@`N;q+=aD+p-E7!UOUT|O|#gwa^^RXF@ChhaD9R-&)Jf-_9!^J6f! z0G=O#VRslrp?~+5a}r_C=Hl@><R+oM;m7R6n4>m07ao2`LhsAe+>VK!o12r&xo0FU z&rUEbOVoxerXT<yc|)bKzz)Il_xzK*0qAoTcCyk@Rqd>CRc;d(gnBusp#@^!YJb!2 zEjv?U4%vf|HLNuvF}0Gq+TAmiuS;9EgNm>?9F_(VG~2`EI{r7h$iiJ^X3FI&h0z%4 zL6hltEXxP6ib9p1!Xj|?EmBaZ#MNqCo0Ah8sZwch=Bm7K5>qgR3O1d7XW6dOArs4w zeTi$Z#&Hh_i;mYzcq1Kd6%cVmEO9zGLXsFOmM(H|d63aejf+oa1m%s#@d~JB5|f|p zkhEvl9ORZ>`lH{%a6?t;-40NlJkhCOSOwY!SO8(U=fBerAgKw)j~WY_$x-8%lobMT zW7F7yst~s7Xu+w;z)Ft$W}2Y_4NP#ueD06(iH`OLp_|x4(cOjy1niZi9*xp*|H8+7 zhYy*DhrPq+6`BzeOuFpBOEN<JYwaN^JKa}`47C|4*=y2}P}h=`C7zy}%%U<f!@P+@ zA!vw)ohr)aq}q7|UW{RK9gok^<A`m?9=T<coj=b`Ym1iYDZEx(!T1Cdsm<Bh7Ika{ zQyWR>^>#J7Aurs3C{ZP@)Gp7QeZ;u1*0eVkjWV_tTGL5lLsZ%QmVr#~iiiTQ&bn%& zAUN6hdnd%DpD^<88eN#Qi{-iWM!ilP=s2j$lAgWD8yu=<+sn3hwix!OON`05T<SR4 zK$MjQ#+OR2RyWv(^B$<4WHKZhLc}gd#{dFh3C(X=Z4|O~k?GX>M$!!`a0qYQ+D0Gm zjNQ!D;g+hwM9lVZCZ`~Ozsn=@Xkban)%L+;Zpe$0I!N|e`gP{GrlKDW&>WlF*<wY; z2IJnV`CiTcv6_F!{(Woyr`G)U=uG}II<<QpUcRE$!47M=shsMx%C~sBBOzotjmJwX z4y*DPm87QfEX8|5X&gR>Kz-^fm&{KNpQTa;MH3VbMTSO)Iy`7<vqghPBq~(|A;X1n zg4+m_&14p>$cc!}$F;)1yn)K77`oAz1q<m#MReh%de;yozDdIdM_mHi=5l7${O~!p zF0C^D!>&dbPwMcqZS4-Gw#0WxD0%0Pa38b|9mayJf#kALK}E#J$BBuS_BN>|>~!Pl rL2H#EiEFFJCp(ZsP5Wj&2CVH=rzDGc@3T0Qspp*aTJ3^`42b*_XAT7W literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/48.gif b/src/main/resources/static/articles/layui/images/face/48.gif new file mode 100644 index 0000000000000000000000000000000000000000..7ffd1613b5fa36c3ffa7daca94e7e8cd6f8d82ef GIT binary patch literal 2689 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/49.gif b/src/main/resources/static/articles/layui/images/face/49.gif new file mode 100644 index 0000000000000000000000000000000000000000..959b99296b323c0f9c6dc35e14c9f28cc66eec04 GIT binary patch literal 2315 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/5.gif b/src/main/resources/static/articles/layui/images/face/5.gif new file mode 100644 index 0000000000000000000000000000000000000000..4e8b09f15101f3e3fad0777ad068fb559ed483a9 GIT binary patch literal 4567 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/50.gif b/src/main/resources/static/articles/layui/images/face/50.gif new file mode 100644 index 0000000000000000000000000000000000000000..6e22e7ff12a215188dfc4d0314e91cee7526e739 GIT binary patch literal 5866 zcmeH~Yfw{n8i!9#LhgYih7f3!1R@ed4HRoCRT2zWg+{!rx)lSZHoA5TO1-R@|H(b! z8iWQ`utZ>$!OJk!PKU0t;UWS8!4|vVH3G6|b(C5yT59(s*voG9OQ$>AnUYVL$;_Ge zyuUp2d)~N&Sn;cAY={kw0;sC0N+=YXOs3C1`>dv>rm3kZA|k@q*LUmIt^NJ|b#-;w z+1cgg<p_do-n@Cqk|n23ohm6QaXOvbw{MS)jU62wO-xKQ7!1S1!@0S+0RaJP*Q~vJ z_ij*7P=0>Cx3{-asSFJbZEkLkj*b?K#f^=POeXX4<;x#`{4tNmD=jT8EG+!|^Urtf z+GVrZl9G}d8X8n8RZdQh)oR_gZJR=&IDPu`i4!NdT<)Gddn^`<L?YR+VFQguyL$EN zz`#ITTU$p*$CWEr&YwU3?YG~Kjg1{VcrZ0Jb^iSMBO@c%u3fu-|GrkMy?*_AUteEO zPtWA!WNT~dS6_W~<j9eeCr>_k^2FhA3=R&qw6xs1b?fHMn~xtqK7Rc8y?gh*{`%`L zzWCzNqeq>coev*A)MzwaU0vhj<A)C)K6dO_cXxMXW#xkh4|;ohZ{NP1m6esAp1ybQ z-fzD7Mz7cRIUEE39H_0WJ$m%$TNxSGu3o)7c&WX;y`rMx;>C+kpFV{k=sWj^{~aYc zX7#FNQh7}Hd=VCd{=k2XBatBhg`(flkk}AJ_znRYtxj*yc(Q`x7aBE0!4j_s&CY#g zWiR38hs=s4<6bQ<BLaTS&c%z?GC7IL;8~O!FCZ-A!>f`~RZUH664t`(G9mEV$M>Z# z|A(U~CCc|~Ah4_uar>@p-J6B~8_1?6t+~=CZ}HWJt>cm@Z>~&{tK<sln=^1+B~?=w z%yIH$kbni5#)r>#dusVx-yrQD^};e@VPzjObe=dzrFu;skp3p(`zOCiGrd-i=Mt23 zB4jVpKyxo~#Wr<2!Uo|~-<lhU*-N}wavysLTj&+H@YK4KPKRD3v2bFZAO&R$A~VZH zSvG9}U*Z9cH=nh)GXnPCKh~&uOJ`v5^CyVd{<9J)lMD&N&-GAdy&j@a^J-flMhI@> z?k|^_tz?eEIhJMD>&V^$;vVLDxt~vTQ^UZ?w@rn#6&-idvh-SZ$Qr_hVELh37HKWn z)-W!EIRV}}M5Ke_*{`gbun#h4Ci+mZ!84f+k~aEmW{V>W78u2G((62N%e5p5Vt_I3 zn7n=#Qy3ah1TdM+XhZ^{DQsU!$%0(-&e9T3fH_d|EUcg^G@Ao2t$1Tu^qfDW1ykY< z2!Wu)FML&^Le<*($Aq=vfh7V!jQ2ycYU^)BvtkD=G_laIE)Jn#SxqpS)zC%xIfglG z-6q-He%VIlUrejX$=vQx&Wso`D@tz1`M#`%jB};XWSZP*)Y35)ImBx(@_9K@WT@kh zBxs`;2!~{oVsjS+R!%$~mzYgf4CmOE@j1&Z9)6izo0JDZQDpd-a)%Sa<Cd`}8zqO; z25it$=NP0WzV9hsnsKoYrj>jkt>!h?Ka}pD9aB8ZDM}lX7@4p4Cf^tu&R1IlLzX^P zyMz050ty%}LNFT+uuLgwk^-OCT9gdwO_>#!!bsxt(nxq}Qm-pG6O-!Q#WK?uFbd$9 zdQ-6|<E#OnA=u4Nkr7SHdytH@lQCVSS9f&TZ)wu({E<Q*6KAN^NcRt|ggP;#z17rr z>D=}A4trqlsHb51c}i0-QCwL~!9>)|aKQw*VS-SYJW-fvi=PEF3$77N!Gs3X)Px3v z!XyT)pThJJMeqYmrN9-C3nm{FrcJUjhioGj(umN2HoL&GO{n3Zj&c%C{01p~#7hfD zadkvQ2SZ`1)8&I<VKN&3b=;&GYKw<xe)1gO8*PpvLZZw@wJVbHqI@->eaJ9GL;r&l zE9r`u3M?Ul$NA9d@Cc_xa7E*oI08{tmu(+c*BjW%awnDP(b-?`wLet&C1fPcAmlDC z-5p@X`1rp~wQ(`yonE1V5w*nPb^_g7lR@qKv{q6|#%?|BWW?qXL*{%aP==T=7}9c) zLb)9uSA>l%Rn*B3$K#5%N>*@6Oumjk_mv1<U^AsSAX>tSh6I#~c`3;qe_e%7Mj7&( zV#t4~ZbESb7w?%>nAs%FtUX=9rh0n7(-2KVG!4--M8A_J@_11b5#3E>LaokKL{{q$ zMO0=*i>Uf1MO2LkLMv)@Xc3(`<1Qkr5Jb8eYU(|MnnD{3xSPn~*1Clnx7Io2&5Wrg z>P1xn*0@yRXH7IT^!z45ZSH^6M0u_z+DU#+6TuqXbDGE$rX)Y7iM(~cpot0-3UP1k z);djl7R}>u$v9UPP341wNDvjmquRX`Sv3z%R;hqtFH8Xi>_tXZFslFvg&43DBm`p0 z2>$+JunLG~imUxW5CP0?0ED3TKLXxhedPP<A0G)p7|0u9ppVQ(00p2XZ#0>6^YV>? zf;=(HVlFB*5dmDL_o*~sAt2JbvylV0ej8%VEGQkMZjLln82o}afn*Tnl^EbxOo+gN zYBFZ-JA}M`bPPIJ4aEMI>mUKdc;!;7^dTVpmKKavRXlf)9S9))WDtBoo-op4W|f*3 zg6uLqqtc*+!D{`p_pe9a-!R|IUUXCyY&Fu1KWyMk-j6Hj%$wT50J;OqRo4zm%so{) zbjYeO-DqV9aL++{#=!r5A>R-3-!~STj7tpXf%n`p_#SW_TP`eZ`+nr`okROjFl`vO zvNtxmmEDF)y&J?&x*A=|zRv|F>V)S9QD?{C0nH_agXiUE7zcsN3P-#ClSTQY1T!O} z8wYbw;0`@7O4a_J(Ktyo2H`}dcHgmZstuMow5KvCU4Y<e!A<#@L;pI5ogI*jS2T>S zH1H@9PO(HQfglwNx9-BI9YZ4;LML{pS72#`6*=|`7?=?<Gc(6hf5^ix2>dx#%6#v( zR<JzxHG5i1o7!`B>IcZdmb2%4v2)^Bhy{bUGW=3>@x#~-mK4S-x1{iLt={j_BH{xy zUFJ}dm3$yt(!!*2a%#is`C7W$+3oa|B|Pe#v5p$S1^&WakDTk%Ba4eJozVtP@%5sW zYo<;7H)`VUL+STQg#K3`B9rdEVz)4L>X|e5l)A52;xeN9itRbLWVh9I#X>Y0%to)+ wnopSQWMpJrS#ax1xVV<TZ)tYQc`vw;rcc=4&I$V>ubT$vmsiQJ08Zq;0SjC;&Hw-a literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/51.gif b/src/main/resources/static/articles/layui/images/face/51.gif new file mode 100644 index 0000000000000000000000000000000000000000..ad3f4d3a8158106dbfa48e521084e6c56fc6406f GIT binary patch literal 2785 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 Y?y9hKVE|Dl+bifDKf^#>4e-@}0Qq7Ywg3PC literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/52.gif b/src/main/resources/static/articles/layui/images/face/52.gif new file mode 100644 index 0000000000000000000000000000000000000000..39f8a22846945358446ed010e2b9bd50dfcc7a25 GIT binary patch literal 777 zcmV+k1NQt!Nk%w1VHN-u0Oo%H_RysE&7t_xrK?&j)|+hq+_3!Ft?IFT)0AV!c0$aC zRqD8h_|TsJ>&E)ltKOw@>9vIN%AU!BNyvIc?7@=%;kM9?T>taZ_{^H%oM+RGRsZhF z`r5JEo^R2GQ{9+i_}Q%g<GaI#VgK^Y#d$^l;=J<0lJUlty>dgjaz^&bp0Z&w@W+~| zS1ZnjO~rUYx^+wGxrybje(A1!?Z1)y)1<?CO7_Q=|LMc^$(sM=z5Cp;$%9U@Vm1BS zv;5Ma`O=}vie0T;F#qJb_tUBO%9icFj=F6>|L4Q~-nP||Tg`+@%Y8|vQYP4yVcL>g zvt~NObU**!w6tnI+^U8B*sH*IM&_z|#eGZp)T8>;r>$c?$Bk&qfJV7zHKbH2=(mZ+ zgI36gS<Z`6*p^?`opJTUlIgsP>AsHn*{k%yj=+0P^2nRuqi?otLDrynz;{Fc`{2HH zLjBdIzja5VP9(HtHTc)8{no1Ese0nAeZ78I+ml?_ms$MWwEzGAA^8LW004ggEC2ui z02Tli000O7fPaF6gnvseg^7xP76J~4i-a$bjE<C%7DP!Bf+RpbOM_GjREY!u0DcO8 zFANo&f-eG5iacxp99W(uurDmLixUDl0VsMUtA9!k6ts&P7)2)tKD1Fp04Rz<Byc2M z1`GfpWl=Ij1aFCBF-RdCeHv9#IzJ~q5eSJANjo5EI~?dCa3RD69R|RNDO4uLofBxz z7&(yzNt_KAM&K~ArcjUw3#<sKBcx3X93w_-Xb=K|jY4)F*q9;+MvFXBa5QLuBg6tM zg|;+lLg-5eEft0+tw2LgArTK?33BrwfRqAQ3(Q$?q@y4&6o`bW35AA=8hC!xP+KEF zgcX8jraXwih6f4)01V_Xp~g&+A~$ZBSOE8r2ow+~+<6xO!i)otAsm=|;7Z{?DFz@w z;KWIW4}6|H$v~Pk86{o_?OAa|fd>yHm@r9@V1n%lQKHaE#3h9gAw5<MXhEF#03lEW H1p)v&5q^DF literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/53.gif b/src/main/resources/static/articles/layui/images/face/53.gif new file mode 100644 index 0000000000000000000000000000000000000000..a181ee77882f8249f4551516085e1c2e7cf0cfec GIT binary patch literal 2127 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 S8f7`(nZXDyt@tenSosGvnoLjt literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/54.gif b/src/main/resources/static/articles/layui/images/face/54.gif new file mode 100644 index 0000000000000000000000000000000000000000..e289d929b9552beb7be70329b7cbefb1d0618008 GIT binary patch literal 2196 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 DWiE05 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/55.gif b/src/main/resources/static/articles/layui/images/face/55.gif new file mode 100644 index 0000000000000000000000000000000000000000..4351083ac8e0e65a64ff362cbd480f2c86eab4fb GIT binary patch literal 1971 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 T7x+6Ovp=luFOB}M(dYjI%uUQ| literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/56.gif b/src/main/resources/static/articles/layui/images/face/56.gif new file mode 100644 index 0000000000000000000000000000000000000000..e0eff222ba83ddcd3c2212e9336fb143e72204bf GIT binary patch literal 2034 zcmZ?wbhEHb6k`x$cvjEw^U|Ufk-9H8H~)XU`*gL-vvrOC-=4ZRJLhPQ$=-a|1+F4z zTKpc*PQ5!h{&th=+l`gWg4K?cd7UV>`2XVATx*{HPqy9Z2|U*v^5N{_<Eh$vvy6V- z-FACQ>Y-xKOU*%7Iz#@yI(WLw{#sx1sk)%2iwiaf%N;0iKagdAzB~F*iPzCGpP#oj z?8~-3TITfs_x;@w3j33EU#_qHv8&-kMZo`;dw-vp{BnKc@0;sB9Gm&^<oy5dkN^LC z_4Ur~110wV-yFNqAM^j?$sf13zCSwkLY2eIwUsZob}jajezmRd_w_Zer}%A;*Zpy9 z#*d3DpDw95Twr&7Qp(L~SwHqqINch5pv>=RvCpS%4gdc<KAmrNe}2J(N#Sp1MQ%;h z`*~&Mu6XsAn>xQ8oB8eJ+*SUvKMr&}UtVyzC-&OZtmBp5_h%%ZD0ST#t@(9(-Pr=8 zALr+P+uM1n&f~}a&W)M&`_l||q+0*Gx8ujrNq_HcztiD=ti<|Yw8Di3um4XE9LaUs zlcDqX&gKI}R{#J1SNzZI=Nc01>=@u`q-Vg)$iTn=6pHW-P;f~sNd(e1_7w$*$=RtT z3Q4KynR&KK?|1K4QpilPRSGxtHSjHPPR+>ls47YguJQ{>uF6ifOi{A8Q?RM9s>m(K zO)W`OsL0L9E4HezRZ2|BPfE1{vO&W7N(x{lCE2!0jvxsIke$x?MX3s=dd9lR28M<T zW@dVZCZ=X)hB^vH28KrZ20&z{YiMF+YG!3*t^fr}K--E^(yW49+@N*=dA3R!B_#z` z`ugSN<$C4Ddih1^`i7R4mLM~XjC6r2bc-wVN)jt{^NN*WCb*;)Cl_TFlw{`TDS%8& zOv*1Uu~h=P6yk;40$*Ra!Fk1cU=Qgf=jZBIBo^o!>KW+g=7RhMR$W{Yl!|Z$R@KEJ zl?AE#L8-<0rA5i9K;_CX&A_n3ZxKi#&^1>6MVY`zNz8G{PcF?(%`5SAu~h=f=%r+) zSeY1F8oC;|7#X-38JJlZ8d?|`IXYT6IvcvUI-9#1nZnG#rq|8H)XCMz(bd($)!5L` z)zHb()XmMz(#6!$#L&&a*#xH7Gq1QLF)uk4W^X3YUKb}9b7My*6QEv0oO-RCi&7Iy z@{2<9^K)P+ARr^ZB)>Q#zd*q`*i1pgH!(Rg4<w)oiXe!8T~doO%TiO^it=+6z#(jv ziNysbMudD0(VId}sObY8qYp|RNXZ2z1Wbb<COq*2Iq>Y0ng`4?MZnC#`2XMEKfizd z{PF$U*Ds$xef;qL-P<>>U%h<s{Mpkdj~_jJaR1)jJGXD$ym9^7)hm}TUA%Dq+}Sgy zPn|q*{MgYWhYuY*uz%m)J-c`9+_8Pz)-9ViZQQVa-P$#)SFK#JeA&_^ix(|iFn`|M zIkRWYoH2dc)G3oEO`Oo**W1(G)!EVB*4onC)Ywp8S6fqERasG9R$5YAR9KLomz$HF zm6?&AmYR~Bl$a177aJ2D6&Vp878(*96d2&|=j-F`<>}$>=IY|?<mg~;XKQ0^Wocn< zW@=(=WN4tTr>mo_rKzE=rmCW>q^KY-Co3Z@B`F~;CMqH<Bq+eo$IHXb#mT|W#>&FX z1T10{f3k3jFw`^X081NSH6X^o!2Y<QzNxvTwXMBbs>`#Zmqpvrf~B`z$jLg)f_q9E z-*i3cyg9A&q}e3O7q@uwu`<|jtZG?n!z8t-nS<4gsb)vhE?=|QP0nIsk?HLAv671` zMD0uzOqfNP{1m6?FgaM6yYTZH8fzBH_j2S|-B(uA)Ra}@$nMqmu(LBYGRik)(Bhbq z5z@rXAs;`l;74Ps3%lhxfvG1953tYRlXyCFhS0|g+>EtfbXG1>>zW}EvW;h>d)rAF z{h$RMI}9GPwAg%`BXctFfJ@VS&K{NrUltvmVaOw8@L+>`<0^5HML_`$iQbDHK>lV$ z^Y<f=zng8_qFOq;nz(`ale>FTJ&S~On5D+#Zn0^4(&Dqb=4!J^<Spuq;sttJcV%ap zs|}Ow#ui0aGp4#7%|L%k?Ev{Zg55qNe5Is`71ZCAvjrjkRss53*?w{c!##6ZEiFMo zH96<W24H{x0eV|*ijUV})|N(ne+!udMvIy`(<e=NBJqIPXAk!$AD_k@9BmC&!qY-B zg<Ji2v~+B4Xdg~#5Z4Ug>zJ{S=@5H$THgZ=0ez<~KE?+fO^r%yf<o*Q&NT>dw=pRP O9M<sousTbD!5RQX*CV9> literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/57.gif b/src/main/resources/static/articles/layui/images/face/57.gif new file mode 100644 index 0000000000000000000000000000000000000000..0bf130f0d930a1fb72ca83265bb504304cb08090 GIT binary patch literal 2705 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 Rf8d={{r^9VKkUJ?{S8#$^iTi* literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/58.gif b/src/main/resources/static/articles/layui/images/face/58.gif new file mode 100644 index 0000000000000000000000000000000000000000..0f065087d4720326776b26c7b9d2482c9e467bca GIT binary patch literal 2258 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/59.gif b/src/main/resources/static/articles/layui/images/face/59.gif new file mode 100644 index 0000000000000000000000000000000000000000..7081e4f023999fe813726fc83f39d169dedd7ecb GIT binary patch literal 10311 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/6.gif b/src/main/resources/static/articles/layui/images/face/6.gif new file mode 100644 index 0000000000000000000000000000000000000000..f7715bf52817bc577c0d33cd0cbd17da898848a1 GIT binary patch literal 2213 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 P39Yu8!3k0NI&%Lv5<NDC literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/60.gif b/src/main/resources/static/articles/layui/images/face/60.gif new file mode 100644 index 0000000000000000000000000000000000000000..6e15f89d79ed82cdb1f53aed2378d887915528f3 GIT binary patch literal 3245 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/61.gif b/src/main/resources/static/articles/layui/images/face/61.gif new file mode 100644 index 0000000000000000000000000000000000000000..f092d7e351cb195eaf707dbec74d32ced42f432f GIT binary patch literal 2495 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/62.gif b/src/main/resources/static/articles/layui/images/face/62.gif new file mode 100644 index 0000000000000000000000000000000000000000..7fe49840bf69219fa40585741f901fa0b187c044 GIT binary patch literal 2017 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/63.gif b/src/main/resources/static/articles/layui/images/face/63.gif new file mode 100644 index 0000000000000000000000000000000000000000..cf8e23e5b2e83bf4f383cd994510a7a04a74f57c GIT binary patch literal 5871 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/64.gif b/src/main/resources/static/articles/layui/images/face/64.gif new file mode 100644 index 0000000000000000000000000000000000000000..a7797198af0f3bb98361b1b8737784d0a8c2cba0 GIT binary patch literal 6448 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/65.gif b/src/main/resources/static/articles/layui/images/face/65.gif new file mode 100644 index 0000000000000000000000000000000000000000..7bb98f2d8a2502888a61e885d0853d3d3b0661ec GIT binary patch literal 3576 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 E1xN?}xc~qF literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/66.gif b/src/main/resources/static/articles/layui/images/face/66.gif new file mode 100644 index 0000000000000000000000000000000000000000..bb6d077504e3b39871f72150c1f5fa43d4e18bfe GIT binary patch literal 3029 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/67.gif b/src/main/resources/static/articles/layui/images/face/67.gif new file mode 100644 index 0000000000000000000000000000000000000000..6e33f7c4f762b5c4eda2a630793d681345423734 GIT binary patch literal 2701 zcmeHHX;@Qd7QP`wAR!P4LKMNv4ag!{fe<2l0wNMfff>RmQ$ung5we&B2sE}NQQ0hl z0##@QM5-uS7zc}jV`Pm>RVw1%Vylj=ZLzi0Qai)kFhb|YIKSsdzvp|N`+eu0_dVx) zXIZ;0ksTp&2i$>2dSD!leuTm7o^ZHfYuo>&Z`mPt!x{U-cRY5C*l#mC41LSmbHT;( zUGkI2nA2#Rrb`|(j*iO1cHQ?pn>;WFZ!LY-f^QrJJ1>S+WVvi^!dIWSuQ{>0b;9GY z9lH1^R@7iOPITRW)o1$v;bH{m?OsCtkax=nP1QzdzT*05X7UsP*FHsTpY$DAMmjku zHJ&8a40_cKyS{&MMd$Uv!e*DAJDlB@v7OgebU^t17Vx9nkfdcv>K1JA{$-LT+^>20 z*PhFU9}1p=KA*p=ujus4GGL#0dDncr?3a|ZhSRZ=1VYCp|7s4ldSK}bF7J8PhFLnj z>w4I+JCvP6u7>XATl;W>Unkd$;tqWpd@ms2%JYp!ZuyKpf*;VCr@mm{{^?CcEAB@( zx33b`9=e<|HY094!#O-AZXH=K-Q{|9M)S;X)z$<44Fi<R0)eTRH1({y_kv{nUR7;B zvwOn7<~Unl2N^4&-NzZt*YR+zV@~~&jdhs0xjA5A`OM)`6EZWnae@RUm5xRsazrHL z3qYPoD?+}JF*=n<TmWmqTsU8*h=OJY&O)F}5(Q<2@#%aO7naJB%G7X1S!$-ZtUw$g zfnuV;NF7HfSIJ?m2-L|76&j8%3KB__xiAMgTg5a8oLA8nL_u-ZAE4DHSE+`<Flq=z zOlL4a7K_RV4P&tw!61{)VAANwW>FZSoG=!L84kW$5MoU&$>XH+5?|RuZc&g_t5tDm zw33n%YDoxHsm`Y{A|fKJ984w!(V%Eb6<U#wqR@~R7<jNotd^;?GNl5vGKzAQMcOC` z@$}yz$W@E93JrBW9I99;r|Cp08iPu=hP0r_=l^e2xqMMuqfLi@^Y_0JYcfk!FfAR{ zD2vo$7*Qu%O{q9sH7wF9)tO3V;le8lq)M$)BUP$EZUzes;ETjEg;fwZkKpq;>l7NT zNFj#T@uDDvgDR6rIAIZS^zd+cNJ1Es%U~oh;#mwPJ3cOs7akWE9~Kw7faNL0MRHi7 zUBF6y!-l>VYb^%33bD+C)v{t(lBib7!TF#$ve)~<crD*6tmO5+Fkg$MA<odOsr`>s zFNl!(u^tx-7r88!KCD3MU5ykrYVM!^`1R#4vp>Ih{?m`oe)#_B%y-{@^W^KV9{>H( z!v|k}aew;r&+gs5bNklK8&lUOuYEdk^~&W>E?vBE-ZDNmIx;+T&V2T7X9fpOpX&ek zWZz#;{H3?&qvOZAj~?kdeCWf@gB=Ij+gkU3@P144zP;}?H8$+oU0=7W_T8N|)m4=h zJGO5#84cy{yuDTbR#~a8q_{|{QEyQx74pJ@%`$0z9xM^(iZ;FZ=bVij{**1u`r{um zGt%D>q^0sx)+et^TAP@_<HpCu#zaR&uHi(m!&zaWAxs9HMx_L=4hjtLU*+dZhJ3)4 z-d-y_moFoExG!}hy1EdYo$!u0tb@JX5{xa{1{n`Nv$hx}pa+7j6T~{i0lT?!y-^=T zmg7w(JQ=L2B4;P1;w!5g63MkjcDx`pCI?IgDQQUpQBbp|7ePcofoU-@*=RyP;8_*u z>xD9-fyB-6$pG36_y?M{(1_<zXeTGYiD)qgVW`GHx;x2f$V-9YVK6CE0Nb7ZNj}EI zgGeOtR{8n4dlZuPP7esoj;+4j9fMm?<CynCW6PxzLv3Ri;u~%ONkijySX&3jySh#0 zSd14gc}$o-%55Y?|NKp_&vf|`&*g&d*d73db#q8p3+rNcrQlcFPfx}g0OO$zCw=!G zF_};uZ#{o}>q6hr8^^LS-#_kcH}58IGV?6=MdMD+5tUHk&0(>?g&0>`2iA*g?VMdC zmdaRm(jLeZy-5U`hE1NFpy2)?1KNnSCyiL>(s4(Os~bURs4yDQHnyRo9cFXYNIGc+ z2pWb^k*-f4kC~d!HQq2r>t@r}blF69IS`U4(--l}tGJdA<(@ATpV^Rn%cCu8r)H*y zXJ*^F24{JO`Q$h_FC=Fvu=G`Oaw*$$jg{LdK^2uoN{&7$7w~EV$Z4s1O07Phh&(;P zi7c;3?jY#3wHQ5$fI{nY1UVqkhjNOl%+DnD^*I6KUdCi}PyuZ8SChsXNkzrQMJbbP z&$HsoB}DcV&l6UA7AQy$)S2Q?E>}s-%cII9FJ&8%K{F=ojVJH2ccCY(D4jSsf~(-W zdI!dCx2=jSjZe8Bl8{_!$~YioOMS3AJ)9Y-*=>w5H{8ngl|A$y4q_@wuWq_~{zQIS zs9x9Ieyv05ygZZ{kkf2Pb@4V<6V}B)v}v(%;|n6T7^|ynU?vzJvZJP|MYuUd2HD`6 zOi+Hm&_WL2x-moYw(a$Kc+P|g7G~-Mh7<?hGOBQ&sB_0oJD)-O<Ahm5V^HqwP5jV- zB{hU#?@Lc#X7x0#+BY!?90=#(Y43O>)u*?!>io2`ZH#lbLZlN1QCU3@6uz?6Qi{de e&Ns&5+yCAe|96dnSxgQJK<1box?FDn*8B_Be&pBy literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/68.gif b/src/main/resources/static/articles/layui/images/face/68.gif new file mode 100644 index 0000000000000000000000000000000000000000..1a6c400d2aee3c2bf384ea98105ea143a7be97a9 GIT binary patch literal 1424 zcmZ9Jc~DbV7{y=A3t1ElhNMIdWI;qKAVvj8Ed*o<G7^1Yh-0Iu#X)T?AS7u@Zg|N9 zB9I6z11P8{s~`o$1wlm-T0s<28J*fH%!p-C76lYbrBCft=)M2kKhE!-?>i?z?C-fY zf(5alX8^k1*gQHqYBXkM{*Y7G(EMlrP>eS7$J{f+!^7j_;}unPZLRHH4}MR}$j4H% zTYhfsG<Ox1osW%)@9F8Cn3$NHoXjgYd*W2l_{8LIkN${LVd?}!UtiyWIDKvHl?xXe z%pIM-v~})3q@J3Z`Z`+m_U+s9b2T+Jmj?z09zW^5RCgoqL~%)J<*~e?TP^Kn<u&CM zRSzCMN;V#AxYpcst958(A|vZmTf2G3?r)NlQURJ?cJ9)>j?TOHx~i%!_4f8&sc(!p zs2+U&ytt$?-IP=LQ*B&A%E`iWb@kU8n_729#@1hL8XO$V%`1pL6rXv#<Z*Y;&8Ftm z%#$x(yf|50Jv21bcJF?FfB%h^JADI#rKRO)V$!?mX~PlIv%bOn{8L(ho<3bvQhfIB zchjb$*;tCPs<yuR!qx4vFJHYH+b-YNez)^ivss}?h*yHh{V__VChDLf_jrLWB_mO1 z&?cD*3d`?zJ$(K8_1M^0OKV4m`9aI=_N@HU=?{lDJ$JKTDB>%U_^otZK_oyB#G8ak z^C18&$KQBKEC?b`<74Pth0Zi<nzPVVXEZK_dCN$vZC8_)@!+K<otv1nLsM9!*+CM! zop6Ckdo)aUcpvN$rP)J*U5t+Qa$Aks(%N-{YowJ>U@NzG)cMYnYrNyx0{3VS0piFK z$mjW@c07jcz~^C01gbSE!4l?jKN*8(2i!I=7z?>i%Ot#X8<hEyVjxENn8H4@z4b=o zIG?m$N$+b+N%pa0#q3^jc_jHx8j0xYO*zUHWm&l}VC_g_JIdbs?r?RrFFDOqVJ?g~ z?GQ*NhHms$p6T|^_FB89A}6*-lm&$gcUek$MK%ip4nKW!-j8U#=x}kUsPUo;>Wmb- z-mk8XNZrg|w7j$@`l};Pt|OIG+|iBX+>+gJ?YG=L5ZNZ!)BDX0xH-$we_;ik>rc<& zf5AWK^s2jcj&)$=URy5zrh&i90*jur_qLH3WW{wSbkDIO(;}hh1uYrcHTEorE!^fn zvgJy?gKUIgghGf8dCDpXK0eH4t@q?bXqSq1I#6t15+F;+KAduNq_;ufveqHc`;1pI z>o3T{DUkcAIx0lMFBz|nhgS#WN;U`=GnuljGNm%W8Bi7eJ|Ie@0}=|F_=%$7jKv4a z9;Xl#6)eG+OchKAN--yv!H(k#v0OkP<j!KqI6=al7U2w2<%0sH(nbZSMrv{fCkT=# zvfXEU&~QDB>lbP{Ko`oV^R}|sVLBkC`3Er40V4ncGrp%n@8uS_oUaYz1HGOSAS4j5 zc~%li7@`klAyO|ro8y7$#as0M!#?iM)dCLCORR!13n>LiI9^D)ND}O{D#%XC2A2An zUS!<szt8{!MQK6;P=`n<J|SWRfvgtOz1(<n`GJ_@Op1h479S?Wtx!TZA617WxO=hu zH-%9)`FbG;3Y>zo!F=h=6kv$@Z)%IRV3mY{$y|aA29O2_CIUdhC|POirAYdWg<xF% zF*Y3d{yP;&0*Etf8wThE$+}R*ifBbtlzR49@4I{-97hWPjAD`7P`XOa@&PIvB}~Jp N$jTJVgOdoY`v;*3C%OOt literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/69.gif b/src/main/resources/static/articles/layui/images/face/69.gif new file mode 100644 index 0000000000000000000000000000000000000000..a02f0b2234a9c03bbfb9578056143ef4516bd965 GIT binary patch literal 2431 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/7.gif b/src/main/resources/static/articles/layui/images/face/7.gif new file mode 100644 index 0000000000000000000000000000000000000000..e6d4db80572a8321fa233d7efd82636fd896bf49 GIT binary patch literal 3398 zcmd^>X;@Qd7RPTELI_!bkd;Wn76gSL8VCjmtHxL~xKN`N+n}hegVj>h8D8>cxj_Xi zSjVMQtw_~*7^&k@lqw)n5L%Qf;?}a%$_S(4Sc^ztZUR`_vClK#=R=++pYA>9{D0^C zZu0D;h{zS5h$r$BKyDljeeg~Gzpv>>pPpV9$sVltd~rxR`uyh5zR4p4e|vFC+O#|H zv~`i~-j?S%p|-YZRTls5(~6<90^7Bykw*t_{yoLk9^2PA*Vd`G-JE0VS^KObdni9- z<l#Qs_e;Mt(dtWtFTR{M+~RHPH8q+&NBT-ef4*@082RDlWhZk<f1OVnZVntB{I;&p zxp|N4{VJE+Rjc}IqaJ*fdgCzfabx1sYxB=+4t@?pY!9~gmx*2+on}atb$lWiDw+D^ z+cevq)FW?Ezu4eqYYD&JaOO^H!-JX+hPyXBYny$qKDW1;HP8}uv0(D>rJysV)|MRV zaBJYG?OEYU%}|A8=;|Avr3>mxX52f;8N5DkxF+IZrSRUFsV^@0bbS{2%grTUf2<y8 zh^VVL(7#W7-5m7jE8$3Q?%=(>o$GyCOZ|TCDz;sYy<f?%wnlzes{G-E$G<L$j<2CU zy`miXrS5rmUSF-GZ9jeZ(HFLkq<=PMcHjK2$Lf2lcJH3I==<JPn4$@T4=<07j*3TJ z-$-1L8n2p{7&bMOfI|>O{G90Ih5#fO`;Ud>i6G9Sc>o%d*M-cshOA3A78FdM{l3e3 z=iv1o5zA&zFEoa5a1lOUE(8}Z0nH~Xq%>s4f(3602*DW{)Gyc(>Ix$sVT<^*41ecb ze}Y$%isPfk8w2pXi+Yb!A2;jyVLW~S<fysRqoqlHF8-G@Kg9DzF`gSZ;63gV?=63E z75GVa9z|4_K6Mp^rA4&;)S6G5GuV&B-_saL?DqalH@`-fnOk4=7<bUc;6?OKugPlg z#o;HP@7R-Ge`&ubr=7ZKPn!{Sil67!;r>pYku+tU=qPli8pW=;!x4wjSv$pR&(F+B z_YEXRt-{9|pf4<?*3x4K2;zEUKz3>I)HIeQ!AzOyuc<shBnr4QB6`y$-Ayni^n`a- zx<8|&f??`ye5aw7M$jc}H;6Oy4FWmy-A!?u&3K|*m{l`OtoKGDsop!nR&KZ6)_t<0 zSEjSFkpiv$qj~967txxWYTOBxdKY_9u|lm%PB3tN7aXZn)eaeXZBe+q(0HObf}rlb z`(b&B58@hKwtKXTkoC*pzvUF-uZiIhJi<blSYns4#HN1$El{sV!E_g{-U|k=CwS4g z7PTMr@qo_3R=x<*K(url%q%a1Yq7-853sl_tQjIMe=G3t^3&s096)pD#Z>b@(bM=` z(PEI~p50sx_;<PA#qa=^A!D&*;V}CCPvO~sheQ#7UU;4T^qD)<uxH`$?=t01>3Nc9 z5xKbS5K0$YDtkL?YQ-f1a9u?2idnO)BD(NSXl0^lvMR{K`%0sstSMecA>VpCmWdB^ z@(>jtRYRiLFa{*W4kQjCV$D&p_HwZHqNP}SnKaZ<dM>qq4a2a~w^|4;5dy4mPab+0 z@VU$0XQ*Ye@MVyO=Y)qZjsZ(tUFW#U_<&P=UIrJ=CC(>K`nsukk{Tw!D5MIx2HKYc zBoPM^@!4k+E#||T@_s1pJ1iuZQyxDx{C3t%$E@qIVmLUg7y%7+kPk8Nv2w<shq?a1 z&OE^L_Uh4Kf)~a+aG;I?2k5|o_zsZ4W=`J15eeq}IVyd@D#%_NHFv%$Ihr|_7)4}q zxvPF45+^U`tc?dmz=W>xU0{nWd0|dEHQp6|+bed<Xxy8JI}odK>(ZJD^M+%YPXeg< z6m|}mqJlK4fJ}`HEkT=%@he;Igy!|N?h2UV^j_`sm712_GyXK<@;ive8awt1M6WUg zUttK?8A2_YhYx{qhAP?cw+z`4I>+BPh7d+j(>cJu#l0HCdkIiacX&I7&!dHl0sG-& zcVOoSC*Xn9XHL@Yp4v%)%FVsZx5?Y+bfE|TY}bM0V=;8$(mRb;uk6Bmr5gIV<k#hL z`j2wi1!x&qEYOh(5b;rqmmY*c`}si$SSCmQr$_*I)vfVJdhTL@+#$XUBnGV7oG?Fr z?fHIJ#EDW&&K^luAeR_KF{s;dWS#*%$n@=~sWjB=AWYk&waMN|Dr+jSG;CMxS>ty( z*3rs1?|2L_`#PWd<0PV`j&%l^G`<MX#+Tt3yWGAEG!#rM!>RF|{_l-Q8s7*$=lf0> zkGpU#m=7kwKH|ekY95k6Bt{`{aA<g#?ZP}@MN~^jo(Th;MLR{xjiEAAqO&udMZ24I z#iu?Yo-WLa&Fd?IMSkqgTiOF<%`sD!|BkGQ{rwQ@N5scg#!HX#qNQ6c!Guhj8F0rD z+QSwB)(mWau?u9UN5uWuN59j4fZVeyj&lK@&pj0bC(h5;4dK}^3KAEdVYh*64tjut zo*$aa<H{dE4WnF6D%Yj->0Vi1JVHSj2pOC0oIHR4z%rp`lwn0V+d)tfSZtNXQOIQR zHj`(XLTM6{ghJBRI5GJ!nW9xHNg7j1%Arc&2DBuK6Ds+~ISQ&PHt8<B@_Zcjd^hZe zIB&#yMWERNWS%fpjKVN<HC(MI%nrANrD=jFWT8?aP6O^~3NjEviY8Jimn$nkTmg{N z<z%hy?fr5gNf#8P(N>;SYBft&kjUgWbx@~;SRvvy;0@rWbt?pvmb>Pe*9vuRaX&t0 zpsy_?GY`Z8li6Yl&o-@Aps9d^x|`BSg`mhHHY??HI$5!LwOF}-zmP;(A^coUP7^CC z=zxBl0!sHE*NI6dPYcOaCZ$lR)#<cKlf1D21e&#|i9}LF-f+87rI~r7C(dYj?aSZG z0}Q|d7Sw9x8Lf-+^Rt8UdAveY8plY%hCmiG+}%Cx!^WnOB6-t3a1G-mHu6d`MIxD_ zJ#r$YE=5eLag(GVk@m4WRZBD$Z7X9Ds=HDIZg*HWN}P&%7}M?+eU|^)3jR-Xcxg^I z$0cdSXq+(TnDuk1g>3Xyby_@m+qPkM0*<Nk7#LTl<)u2mx*$Wx)CrrKzfnW%PGIsp z+ungJhuP!u<Sj|GNEukT*up3@Sh#5lq423DMRLOX%Yo06$^HzJsaI?zz$uc1VA<pQ zB)rq;A}MzeHR7BkpCXL|&W4>+oFwZGrfJm%=S6h3H2pyl(Iu2|m8IIiYIUBrX7AZE zQl{fthK+q4Onm%wVLeU=8N4)dA=~m>BSSoI--MB&!^qnlLWT|@e>5)S^S=`^_|?dr z_VW*ZRdP3`WZ-bJC78J}iSdy%zMZRZM<^b?EMkV;0463JGl1C78#6$y%Gq5-Z~1Y> zlg?IxSn*`{`mBpJyApMu4sSXUhl2uoM90$bmD{~p^3kWU-ihR^iLgxn=0E@wiTV!_ Ch@v0> literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/70.gif b/src/main/resources/static/articles/layui/images/face/70.gif new file mode 100644 index 0000000000000000000000000000000000000000..416c5c14a19fbdaf8fb8d6baf5cf7e31e54f751a GIT binary patch literal 4590 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 B>P7$n literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/71.gif b/src/main/resources/static/articles/layui/images/face/71.gif new file mode 100644 index 0000000000000000000000000000000000000000..c17d60cbd15e80d83629b2220b562a224eec5554 GIT binary patch literal 5304 zcmeHKc~q0vwogJPk}xJ9B1#BhCgjTmNeq~YNd}{UqP0pUB^5{vVQ?&AEC?7ukz(-% zv`B#}B2rM$Flj)Lh+M>hDwb<4daKoHY425DXlvj5qpNSdx7J&$Z>@g+eBU`|@BQ2R z{Pyph^@T@<F<D|qkR#}a1yBhKeI~)?;95#P)uJROV7D(=%f#g}?TZ3o&*tU^snqYE zJsYIa#x7qj3`E_;yXZm?<xyT=ULUJg#2M}EnySi2hKzNYlA=IF(>m+2gq6oKWyd4Y z=SwsHF+KhD{rim~>xTS{-p^`JWF-A7jdOax;-~rfx!KuX3Z*_8V`yzX7>sx{J$+C_ zZaetl0Tyh$zx&DT?1^YhQ4nhUQu}@YxuDzjQmvkzoV<U~qra!8b-nF{O(>H$vA65| ztBi~f1Hkv$lnycWs|t@Vw%{H=eq0!2p#>mM!dD&&K^zLfj7p{bELINPrgXLMO)b8R zgXw5!*iVK`6%wuu8DG78nL~y&th1Zx>Z;@+5A&>QBdv{F#TRVsUOavJGLG2K<MpOF z7c$_NHzTWs=$bIg)5mmUUhc#0_<bbEeiEdZiENIuo-~<mk6dkuvpE@y8R_o6gmY+& zx4zKSbRq`RS&^%cMjwx~Jez3OAi|uALUe7#<p7ZV0g&7v?C{{=D^2=vbkwl%>PLal zD|CM&e#N8)+j-`6cS}nS&3cSYDP_azqA(*_%g6V*E@U}>Env>Se)V8{ynT~h^Wg)g z;o;A#N`Df2jP2RmMf5xtZhdBh?WK;kneLwP(a|ZIe-$5jXW&91-Qp^ZdSJD0l>jl} zzU)o1&&A5zxw*Mv8G4w_9^bd`8i!LrhhA)J9UB^|2}K?YM-5P^L;d}u!NGl@;Xh<$ zU8vMPQ7ZS7!2gU4{{F>_3NHM+Cr_H<tefL(hBI7l-MBGz?aFzHV`n1rc7NBmt5=Nn z^z;KjHx75%!STV(o6Yey)3<J2Y;G=L!Q0}|MS-Z+>aw#Rmv>d>eV;%)5sjXI{rXU_ zWeF2{E*??Bf}TsXZ&+h>%G^IuuyPK3gu^*1wCvo9J-RitYOC-?W~LUf_>c_I2HHOf z=bWvre3Koya6j+uPN#)B+1ss73#JWk4yV0M4|!X?W#R75g{j0h9|XQRk+)DtS~!!r zFd<wRWq?2+w*_=;XndT2Ckmwo02bh1rV?XBc%fJ$HorNmvQ=W~4!H&|k#AR|1rwfK zyiC9=WWj_Dj2IwBC6Fg8B6h3gal2#VrMq`XSu(<^5IiTFot>&mm21TK?9`OBbar+y zK`c{B<ZScz;xw6n|Jg*dBbdNjT);143Y2O&o)N$xNdXESAH)ivFer2;#UD=vC^Rxa zBU5N33Y878*c1l-*N0$6Q_Hro*9pUZ#WIhA3CS9bicKbGWn~3q(E^m}?PLmz#UcY# zGL=d)TaeOsrD??3q_lMRcM*j0bg5dQ(kPT^_{E4~i84bIOfYBqO9`o}n3&%Jr=<t{ zTu^{inM%$UtH_i9fSj7TSl7?i>6&%&|4id|t<&RospRB!@^oc}S}Hf2yT5Zb@7*5* zEgG7$VXsju%%q4@gi2{fsys~-DGVl<R{~@T8C%Yv$yszp5Q$D@Qb^lmbUH~wWdxFB zR4HA;kT3u#jrK0i@A(G_L+KP6jTy=mFe#K!I*Sp;=QHROCcpy(bSC4SZ)94!Mw}*< zzr$9Tv48aq`a@r~KrI(*l<Ih;GUZ(th?12WWqPtwg%=3$-WwEYGG$h}&mu#=6fBgh z6`68bm|B^N|9Okqir<5$0^6wD<Ps8-NtcrVCY?cIQCI*;zD*9uSQ0TS5HOeii@)rD zyLDu9Qsl)x`7eF*Zpz$@i=V%#z&!X(NAfhYc+_T<fEV7r`S-tm`f>h;*RQ^R`Qp3h z&%XWV(<gJ^JpTI8KW4vrIP>8Cm(%y|-nl(>Yx3_CH^*<7#;%W!TpJ!TUcE9n(BIc< zxO}On`{ISJ&M!L7x1Vb}+j{2o=Pk`mpEaIp`1It7`a1pJj@N#2tmfnDqg6)^S5_R- z9V{;^Jy25oQBh$*eqOFN=fnN`_U_reD?2MQLzAxFsZyq;rtJ7Yk-UAITqc!>leTVo zfAf2rHYRRZpAa9nZmnodY)o|2>d1)juu!3Z&*QEN3FfS1vzS4F3_6WU0muO)e?MOz zZ!b>|qC3G2@48~S%QEMsPD>mea9DdgTN`UD3>syLM8IKC3yArwar+T!i2^Nv{LROX z`95|8fshNJ1xuHRR()?C^qVe$QI&M5z{>7U&egFnVIFbC{GK0j212#;kKSJys_n}o zrzHb8IZ5~V)&l^KU(ljkvbp7{i(g{B00KuPBKdvIh;#4x=XgFANs@f=754Px=i*3W z=Jr|Dj{t+$@qQQdZLbKnyxIx9NsE#+Mm4~^(n_CrY^ybRTKoGjv<0{tc@5{|`OolG z7NL;Z=w?0PcCl-;XQa*)eYDwWr+tD-v|8WAASLbV<Dm<RU}%nBGzqsQfSs;ex|~go z%FjHn|17(q$q2C5YO0I%sS`+T0CLm^9%?9z3Ted5#VZ78kc@AoauW^sZR8)%uk5Oa z8cLUf+EXgvkYi`u3DCaQwo}$#Vpd`FuGz<;uI0+TdEv|t41fqs9_bUn!J<Bd-Iud= zpk=%7iA(HYwi=$R-{C_L=2Gan5}F|ggh1TWe03EDQ|M#q8=d-jD5}w9beiSnaGjl9 zaJk@b@CG9)l8e8NJ`*A4A~739qfn@eNMMDq1;7kP9M1NSd4f&5ZD#7W1Q()H4F|Sc z)bs3Z9`)?u_SJKp2Ts@4b7y*&1koK!+8m9OXF{v-b^P^4bin$|atHq#ZeR<TKh$mJ z?|HXLj;pX5ZwlaG8)@lGpKm4FU!<u!_v&i!cTaDIEF?ANT1S_{KIg(H6CO8nu|Zc} z*`JF|!Xm0FY7BhTC^hDI^nASSH7!9K+mIkS^mM?+vyvE*+;A<Slv(V{^!6~_t8r`% znb8;Y_2<G?h`e`LAP<2sUqj2MIz0FnH<{u&aS1Y~T5tA<&=mMVK6gp}BU~OKso%pj z9-h(EUIznF>)@TX-VcxXyRGTlT(K6CbOi(26c}lt9ld2|2N5UUjw`BcbrCdh)SAY7 z<w5r!*p)j2n0N#F+;bfdboe<hKWG=!P`DziS|S8P-#1-F$xnh};k_*nF#z7s3l5r| z-^t@SH)3NPuc&mn7%H6#XW8O)g>Xbc5|@nx+W7XiAHD4JTjylk$9IgUfx(CgQ9l?O z%`Jn$V9-CN35oS=*GA9u?R}oYq(?mL?b&4$5siz;n>rtd^XAMyEDYnXorK)}={yok zj5nfo^$reSKbz~pCMM}~3h>14-N41c-0iv69`FVT!H1UzcdZgivcjy7+N{CK?jDJH z;EG8wX^YS59UAe47i61M53h7?kxW{qJTz3S#U@77ZEP5-EUraKSR$fns2$~7Q9Iu& ztAJXLYPw47yw<`HpF(Tiy9t@}a%mT3C$<_aQ1Voen|;pACkDH_9m3=d=$ex4O(mEU z*wCVnk$1w%Y#-;EK9Pu^DV?)<!}{1Gf$bo!=LBd8B(%H2V>YtdZ#8J7yc*2C=BdE9 z{>Ucq@fg27b1M5Psqt`lx%H8|-#uD(T=jpaB+LJ)l8{*67OypK{AI6a2h)>v19@3* zR_OHJI{4Wgr@Tek&j+o_^6Oh*ZLfCNc}6tq9A4xeI8rNxMQI`oTrip!k^L$u^FZhr zbopvbG)%ZI7j6~eUp(+_sY`&X-qYCOchs=TsY!2vmGb;VJWR$=`-6e9ojn6B*r@^S zrzbpHb^LSDm0nnm!+=^Jp|4ap#1mJ3mp4STw6FO_?cg3;kFs8EN&lh&*0P3~T=%>+ zNsGV@-vRN7pnjIty(6{QblQ>bFc$ByG|a2Snr7Et=ImyI)v*Tk$SKtj;s~$SH#HfY z6Ws_7fR<!?L>ViA4TnJot0@*aRWak-q?Z}Oe6G{_*Ap{D|EoHmgD%T`zxZl2h%?g& z?&rd~0kq9hDA&?em|YnTN_o7q$R`ZPHNp0^h{8}0WVR!|*FhE#7Z=sdGS?-zlUnu- znHYocG2#X8Qk?}DqDWSWknodvAa_5a`7e*$O(+1n5oJ6E)>g%}Vz_V((1}Emi2L8l tXu@la*v!%E+p0y5_RRmq(VvW?ziy=eFE`R(Qu>o0cYjIg&myIj{{av3`u+d_ literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/8.gif b/src/main/resources/static/articles/layui/images/face/8.gif new file mode 100644 index 0000000000000000000000000000000000000000..66f967b48da173b68cbfc92986e4426ea35ade74 GIT binary patch literal 4050 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 JEmCgizW{zshWG#g literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/images/face/9.gif b/src/main/resources/static/articles/layui/images/face/9.gif new file mode 100644 index 0000000000000000000000000000000000000000..60447400d31b035f56554b29af1aefc76bda1698 GIT binary patch literal 4221 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/layui/lay/modules/carousel.js b/src/main/resources/static/articles/layui/lay/modules/carousel.js new file mode 100644 index 0000000..2c4521b --- /dev/null +++ b/src/main/resources/static/articles/layui/lay/modules/carousel.js @@ -0,0 +1,2 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + ;layui.define("jquery",function(e){"use strict";var i=layui.$,n=(layui.hint(),layui.device(),{config:{},set:function(e){var n=this;return n.config=i.extend({},n.config,e),n},on:function(e,i){return layui.onevent.call(this,t,e,i)}}),t="carousel",a="layui-this",l=">*[carousel-item]>*",o="layui-carousel-left",r="layui-carousel-right",d="layui-carousel-prev",s="layui-carousel-next",u="layui-carousel-arrow",c="layui-carousel-ind",m=function(e){var t=this;t.config=i.extend({},t.config,n.config,e),t.render()};m.prototype.config={width:"600px",height:"280px",full:!1,arrow:"hover",indicator:"inside",autoplay:!0,interval:3e3,anim:"",trigger:"click",index:0},m.prototype.render=function(){var e=this,n=e.config;n.elem=i(n.elem),n.elem[0]&&(e.elemItem=n.elem.find(l),n.index<0&&(n.index=0),n.index>=e.elemItem.length&&(n.index=e.elemItem.length-1),n.interval<800&&(n.interval=800),n.full?n.elem.css({position:"fixed",width:"100%",height:"100%",zIndex:9999}):n.elem.css({width:n.width,height:n.height}),n.elem.attr("lay-anim",n.anim),e.elemItem.eq(n.index).addClass(a),e.elemItem.length<=1||(e.indicator(),e.arrow(),e.autoplay(),e.events()))},m.prototype.reload=function(e){var n=this;clearInterval(n.timer),n.config=i.extend({},n.config,e),n.render()},m.prototype.prevIndex=function(){var e=this,i=e.config,n=i.index-1;return n<0&&(n=e.elemItem.length-1),n},m.prototype.nextIndex=function(){var e=this,i=e.config,n=i.index+1;return n>=e.elemItem.length&&(n=0),n},m.prototype.addIndex=function(e){var i=this,n=i.config;e=e||1,n.index=n.index+e,n.index>=i.elemItem.length&&(n.index=0)},m.prototype.subIndex=function(e){var i=this,n=i.config;e=e||1,n.index=n.index-e,n.index<0&&(n.index=i.elemItem.length-1)},m.prototype.autoplay=function(){var e=this,i=e.config;i.autoplay&&(clearInterval(e.timer),e.timer=setInterval(function(){e.slide()},i.interval))},m.prototype.arrow=function(){var e=this,n=e.config,t=i(['<button class="layui-icon '+u+'" lay-type="sub">'+("updown"===n.anim?"":"")+"</button>",'<button class="layui-icon '+u+'" lay-type="add">'+("updown"===n.anim?"":"")+"</button>"].join(""));n.elem.attr("lay-arrow",n.arrow),n.elem.find("."+u)[0]&&n.elem.find("."+u).remove(),n.elem.append(t),t.on("click",function(){var n=i(this),t=n.attr("lay-type");e.slide(t)})},m.prototype.indicator=function(){var e=this,n=e.config,t=e.elemInd=i(['<div class="'+c+'"><ul>',function(){var i=[];return layui.each(e.elemItem,function(e){i.push("<li"+(n.index===e?' class="layui-this"':"")+"></li>")}),i.join("")}(),"</ul></div>"].join(""));n.elem.attr("lay-indicator",n.indicator),n.elem.find("."+c)[0]&&n.elem.find("."+c).remove(),n.elem.append(t),"updown"===n.anim&&t.css("margin-top",-(t.height()/2)),t.find("li").on("hover"===n.trigger?"mouseover":n.trigger,function(){var t=i(this),a=t.index();a>n.index?e.slide("add",a-n.index):a<n.index&&e.slide("sub",n.index-a)})},m.prototype.slide=function(e,i){var n=this,l=n.elemItem,u=n.config,c=u.index,m=u.elem.attr("lay-filter");n.haveSlide||("sub"===e?(n.subIndex(i),l.eq(u.index).addClass(d),setTimeout(function(){l.eq(c).addClass(r),l.eq(u.index).addClass(r)},50)):(n.addIndex(i),l.eq(u.index).addClass(s),setTimeout(function(){l.eq(c).addClass(o),l.eq(u.index).addClass(o)},50)),setTimeout(function(){l.removeClass(a+" "+d+" "+s+" "+o+" "+r),l.eq(u.index).addClass(a),n.haveSlide=!1},300),n.elemInd.find("li").eq(u.index).addClass(a).siblings().removeClass(a),n.haveSlide=!0,layui.event.call(this,t,"change("+m+")",{index:u.index,prevIndex:c,item:l.eq(u.index)}))},m.prototype.events=function(){var e=this,i=e.config;i.elem.data("haveEvents")||(i.elem.on("mouseenter",function(){clearInterval(e.timer)}).on("mouseleave",function(){e.autoplay()}),i.elem.data("haveEvents",!0))},n.render=function(e){var i=new m(e);return i},e(t,n)}); \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/lay/modules/code.js b/src/main/resources/static/articles/layui/lay/modules/code.js new file mode 100644 index 0000000..877c86f --- /dev/null +++ b/src/main/resources/static/articles/layui/lay/modules/code.js @@ -0,0 +1,2 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + ;layui.define("jquery",function(e){"use strict";var a=layui.$,l="http://www.layui.com/doc/modules/code.html";e("code",function(e){var t=[];e=e||{},e.elem=a(e.elem||".layui-code"),e.about=!("about"in e)||e.about,e.elem.each(function(){t.push(this)}),layui.each(t.reverse(),function(t,i){var c=a(i),o=c.html();(c.attr("lay-encode")||e.encode)&&(o=o.replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/'/g,"'").replace(/"/g,""")),c.html('<ol class="layui-code-ol"><li>'+o.replace(/[\r\t\n]+/g,"</li><li>")+"</li></ol>"),c.find(">.layui-code-h3")[0]||c.prepend('<h3 class="layui-code-h3">'+(c.attr("lay-title")||e.title||"code")+(e.about?'<a href="'+l+'" target="_blank">layui.code</a>':"")+"</h3>");var d=c.find(">.layui-code-ol");c.addClass("layui-box layui-code-view"),(c.attr("lay-skin")||e.skin)&&c.addClass("layui-code-"+(c.attr("lay-skin")||e.skin)),(d.find("li").length/100|0)>0&&d.css("margin-left",(d.find("li").length/100|0)+"px"),(c.attr("lay-height")||e.height)&&d.css("max-height",c.attr("lay-height")||e.height)})})}).addcss("modules/code.css","skincodecss"); \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/lay/modules/colorpicker.js b/src/main/resources/static/articles/layui/lay/modules/colorpicker.js new file mode 100644 index 0000000..0fc6395 --- /dev/null +++ b/src/main/resources/static/articles/layui/lay/modules/colorpicker.js @@ -0,0 +1,2 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + ;layui.define("jquery",function(e){"use strict";var i=layui.jquery,o={config:{},index:layui.colorpicker?layui.colorpicker.index+1e4:0,set:function(e){var o=this;return o.config=i.extend({},o.config,e),o},on:function(e,i){return layui.onevent.call(this,"colorpicker",e,i)}},r=function(){var e=this,i=e.config;return{config:i}},t="colorpicker",n="layui-show",l="layui-colorpicker",c=".layui-colorpicker-main",a="layui-icon-down",s="layui-icon-close",f="layui-colorpicker-trigger-span",d="layui-colorpicker-trigger-i",u="layui-colorpicker-side",p="layui-colorpicker-side-slider",g="layui-colorpicker-basis",v="layui-colorpicker-alpha-bgcolor",h="layui-colorpicker-alpha-slider",m="layui-colorpicker-basis-cursor",b="layui-colorpicker-main-input",k=function(e){var i={h:0,s:0,b:0},o=Math.min(e.r,e.g,e.b),r=Math.max(e.r,e.g,e.b),t=r-o;return i.b=r,i.s=0!=r?255*t/r:0,0!=i.s?e.r==r?i.h=(e.g-e.b)/t:e.g==r?i.h=2+(e.b-e.r)/t:i.h=4+(e.r-e.g)/t:i.h=-1,r==o&&(i.h=0),i.h*=60,i.h<0&&(i.h+=360),i.s*=100/255,i.b*=100/255,i},y=function(e){var e=e.indexOf("#")>-1?e.substring(1):e;if(3==e.length){var i=e.split("");e=i[0]+i[0]+i[1]+i[1]+i[2]+i[2]}e=parseInt(e,16);var o={r:e>>16,g:(65280&e)>>8,b:255&e};return k(o)},x=function(e){var i={},o=e.h,r=255*e.s/100,t=255*e.b/100;if(0==r)i.r=i.g=i.b=t;else{var n=t,l=(255-r)*t/255,c=(n-l)*(o%60)/60;360==o&&(o=0),o<60?(i.r=n,i.b=l,i.g=l+c):o<120?(i.g=n,i.b=l,i.r=n-c):o<180?(i.g=n,i.r=l,i.b=l+c):o<240?(i.b=n,i.r=l,i.g=n-c):o<300?(i.b=n,i.g=l,i.r=l+c):o<360?(i.r=n,i.g=l,i.b=n-c):(i.r=0,i.g=0,i.b=0)}return{r:Math.round(i.r),g:Math.round(i.g),b:Math.round(i.b)}},C=function(e){var o=x(e),r=[o.r.toString(16),o.g.toString(16),o.b.toString(16)];return i.each(r,function(e,i){1==i.length&&(r[e]="0"+i)}),r.join("")},P=function(e){var i=/[0-9]{1,3}/g,o=e.match(i)||[];return{r:o[0],g:o[1],b:o[2]}},B=i(window),w=i(document),D=function(e){var r=this;r.index=++o.index,r.config=i.extend({},r.config,o.config,e),r.render()};D.prototype.config={color:"",size:null,alpha:!1,format:"hex",predefine:!1,colors:["#009688","#5FB878","#1E9FFF","#FF5722","#FFB800","#01AAED","#999","#c00","#ff8c00","#ffd700","#90ee90","#00ced1","#1e90ff","#c71585","rgb(0, 186, 189)","rgb(255, 120, 0)","rgb(250, 212, 0)","#393D49","rgba(0,0,0,.5)","rgba(255, 69, 0, 0.68)","rgba(144, 240, 144, 0.5)","rgba(31, 147, 255, 0.73)"]},D.prototype.render=function(){var e=this,o=e.config,r=i(['<div class="layui-unselect layui-colorpicker">',"<span "+("rgb"==o.format&&o.alpha?'class="layui-colorpicker-trigger-bgcolor"':"")+">",'<span class="layui-colorpicker-trigger-span" ','lay-type="'+("rgb"==o.format?o.alpha?"rgba":"torgb":"")+'" ','style="'+function(){var e="";return o.color?(e=o.color,(o.color.match(/[0-9]{1,3}/g)||[]).length>3&&(o.alpha&&"rgb"==o.format||(e="#"+C(k(P(o.color))))),"background: "+e):e}()+'">','<i class="layui-icon layui-colorpicker-trigger-i '+(o.color?a:s)+'"></i>',"</span>","</span>","</div>"].join("")),t=i(o.elem);o.size&&r.addClass("layui-colorpicker-"+o.size),t.addClass("layui-inline").html(e.elemColorBox=r),e.color=e.elemColorBox.find("."+f)[0].style.background,e.events()},D.prototype.renderPicker=function(){var e=this,o=e.config,r=e.elemColorBox[0],t=e.elemPicker=i(['<div id="layui-colorpicker'+e.index+'" data-index="'+e.index+'" class="layui-anim layui-anim-upbit layui-colorpicker-main">','<div class="layui-colorpicker-main-wrapper">','<div class="layui-colorpicker-basis">','<div class="layui-colorpicker-basis-white"></div>','<div class="layui-colorpicker-basis-black"></div>','<div class="layui-colorpicker-basis-cursor"></div>',"</div>",'<div class="layui-colorpicker-side">','<div class="layui-colorpicker-side-slider"></div>',"</div>","</div>",'<div class="layui-colorpicker-main-alpha '+(o.alpha?n:"")+'">','<div class="layui-colorpicker-alpha-bgcolor">','<div class="layui-colorpicker-alpha-slider"></div>',"</div>","</div>",function(){if(o.predefine){var e=['<div class="layui-colorpicker-main-pre">'];return layui.each(o.colors,function(i,o){e.push(['<div class="layui-colorpicker-pre'+((o.match(/[0-9]{1,3}/g)||[]).length>3?" layui-colorpicker-pre-isalpha":"")+'">','<div style="background:'+o+'"></div>',"</div>"].join(""))}),e.push("</div>"),e.join("")}return""}(),'<div class="layui-colorpicker-main-input">','<div class="layui-inline">','<input type="text" class="layui-input">',"</div>",'<div class="layui-btn-container">','<button class="layui-btn layui-btn-primary layui-btn-sm" colorpicker-events="clear">清空</button>','<button class="layui-btn layui-btn-sm" colorpicker-events="confirm">确定</button>',"</div","</div>","</div>"].join(""));e.elemColorBox.find("."+f)[0];i(c)[0]&&i(c).data("index")==e.index?e.removePicker(D.thisElemInd):(e.removePicker(D.thisElemInd),i("body").append(t)),D.thisElemInd=e.index,D.thisColor=r.style.background,e.position(),e.pickerEvents()},D.prototype.removePicker=function(e){var o=this;o.config;return i("#layui-colorpicker"+(e||o.index)).remove(),o},D.prototype.position=function(){var e=this,i=e.config,o=e.bindElem||e.elemColorBox[0],r=e.elemPicker[0],t=o.getBoundingClientRect(),n=r.offsetWidth,l=r.offsetHeight,c=function(e){return e=e?"scrollLeft":"scrollTop",document.body[e]|document.documentElement[e]},a=function(e){return document.documentElement[e?"clientWidth":"clientHeight"]},s=5,f=t.left,d=t.bottom;f-=(n-o.offsetWidth)/2,d+=s,f+n+s>a("width")?f=a("width")-n-s:f<s&&(f=s),d+l+s>a()&&(d=t.top>l?t.top-l:a()-l,d-=2*s),i.position&&(r.style.position=i.position),r.style.left=f+("fixed"===i.position?0:c(1))+"px",r.style.top=d+("fixed"===i.position?0:c())+"px"},D.prototype.val=function(){var e=this,i=(e.config,e.elemColorBox.find("."+f)),o=e.elemPicker.find("."+b),r=i[0],t=r.style.backgroundColor;if(t){var n=k(P(t)),l=i.attr("lay-type");if(e.select(n.h,n.s,n.b),"torgb"===l&&o.find("input").val(t),"rgba"===l){var c=P(t);if(3==(t.match(/[0-9]{1,3}/g)||[]).length)o.find("input").val("rgba("+c.r+", "+c.g+", "+c.b+", 1)"),e.elemPicker.find("."+h).css("left",280);else{o.find("input").val(t);var a=280*t.slice(t.lastIndexOf(",")+1,t.length-1);e.elemPicker.find("."+h).css("left",a)}e.elemPicker.find("."+v)[0].style.background="linear-gradient(to right, rgba("+c.r+", "+c.g+", "+c.b+", 0), rgb("+c.r+", "+c.g+", "+c.b+"))"}}else e.select(0,100,100),o.find("input").val(""),e.elemPicker.find("."+v)[0].style.background="",e.elemPicker.find("."+h).css("left",280)},D.prototype.side=function(){var e=this,o=e.config,r=e.elemColorBox.find("."+f),t=r.attr("lay-type"),n=e.elemPicker.find("."+u),l=e.elemPicker.find("."+p),c=e.elemPicker.find("."+g),y=e.elemPicker.find("."+m),C=e.elemPicker.find("."+v),w=e.elemPicker.find("."+h),D=l[0].offsetTop/180*360,E=100-(y[0].offsetTop+3)/180*100,H=(y[0].offsetLeft+3)/260*100,W=Math.round(w[0].offsetLeft/280*100)/100,j=e.elemColorBox.find("."+d),F=e.elemPicker.find(".layui-colorpicker-pre").children("div"),L=function(i,n,l,c){e.select(i,n,l);var f=x({h:i,s:n,b:l});if(j.addClass(a).removeClass(s),r[0].style.background="rgb("+f.r+", "+f.g+", "+f.b+")","torgb"===t&&e.elemPicker.find("."+b).find("input").val("rgb("+f.r+", "+f.g+", "+f.b+")"),"rgba"===t){var d=0;d=280*c,w.css("left",d),e.elemPicker.find("."+b).find("input").val("rgba("+f.r+", "+f.g+", "+f.b+", "+c+")"),r[0].style.background="rgba("+f.r+", "+f.g+", "+f.b+", "+c+")",C[0].style.background="linear-gradient(to right, rgba("+f.r+", "+f.g+", "+f.b+", 0), rgb("+f.r+", "+f.g+", "+f.b+"))"}o.change&&o.change(e.elemPicker.find("."+b).find("input").val())},M=i(['<div class="layui-auxiliar-moving" id="LAY-colorpicker-moving"></div'].join("")),Y=function(e){i("#LAY-colorpicker-moving")[0]||i("body").append(M),M.on("mousemove",e),M.on("mouseup",function(){M.remove()}).on("mouseleave",function(){M.remove()})};l.on("mousedown",function(e){var i=this.offsetTop,o=e.clientY,r=function(e){var r=i+(e.clientY-o),t=n[0].offsetHeight;r<0&&(r=0),r>t&&(r=t);var l=r/180*360;D=l,L(l,H,E,W),e.preventDefault()};Y(r),e.preventDefault()}),n.on("click",function(e){var o=e.clientY-i(this).offset().top;o<0&&(o=0),o>this.offsetHeight&&(o=this.offsetHeight);var r=o/180*360;D=r,L(r,H,E,W),e.preventDefault()}),y.on("mousedown",function(e){var i=this.offsetTop,o=this.offsetLeft,r=e.clientY,t=e.clientX,n=function(e){var n=i+(e.clientY-r),l=o+(e.clientX-t),a=c[0].offsetHeight-3,s=c[0].offsetWidth-3;n<-3&&(n=-3),n>a&&(n=a),l<-3&&(l=-3),l>s&&(l=s);var f=(l+3)/260*100,d=100-(n+3)/180*100;E=d,H=f,L(D,f,d,W),e.preventDefault()};layui.stope(e),Y(n),e.preventDefault()}),c.on("mousedown",function(e){var o=e.clientY-i(this).offset().top-3+B.scrollTop(),r=e.clientX-i(this).offset().left-3+B.scrollLeft();o<-3&&(o=-3),o>this.offsetHeight-3&&(o=this.offsetHeight-3),r<-3&&(r=-3),r>this.offsetWidth-3&&(r=this.offsetWidth-3);var t=(r+3)/260*100,n=100-(o+3)/180*100;E=n,H=t,L(D,t,n,W),e.preventDefault(),y.trigger(e,"mousedown")}),w.on("mousedown",function(e){var i=this.offsetLeft,o=e.clientX,r=function(e){var r=i+(e.clientX-o),t=C[0].offsetWidth;r<0&&(r=0),r>t&&(r=t);var n=Math.round(r/280*100)/100;W=n,L(D,H,E,n),e.preventDefault()};Y(r),e.preventDefault()}),C.on("click",function(e){var o=e.clientX-i(this).offset().left;o<0&&(o=0),o>this.offsetWidth&&(o=this.offsetWidth);var r=Math.round(o/280*100)/100;W=r,L(D,H,E,r),e.preventDefault()}),F.each(function(){i(this).on("click",function(){i(this).parent(".layui-colorpicker-pre").addClass("selected").siblings().removeClass("selected");var e,o=this.style.backgroundColor,r=k(P(o)),t=o.slice(o.lastIndexOf(",")+1,o.length-1);D=r.h,H=r.s,E=r.b,3==(o.match(/[0-9]{1,3}/g)||[]).length&&(t=1),W=t,e=280*t,L(r.h,r.s,r.b,t)})})},D.prototype.select=function(e,i,o,r){var t=this,n=(t.config,C({h:e,s:100,b:100})),l=C({h:e,s:i,b:o}),c=e/360*180,a=180-o/100*180-3,s=i/100*260-3;t.elemPicker.find("."+p).css("top",c),t.elemPicker.find("."+g)[0].style.background="#"+n,t.elemPicker.find("."+m).css({top:a,left:s}),"change"!==r&&t.elemPicker.find("."+b).find("input").val("#"+l)},D.prototype.pickerEvents=function(){var e=this,o=e.config,r=e.elemColorBox.find("."+f),t=e.elemPicker.find("."+b+" input"),n={clear:function(i){r[0].style.background="",e.elemColorBox.find("."+d).removeClass(a).addClass(s),e.color="",o.done&&o.done(""),e.removePicker()},confirm:function(i,n){var l=t.val(),c=l,f={};if(l.indexOf(",")>-1){if(f=k(P(l)),e.select(f.h,f.s,f.b),r[0].style.background=c="#"+C(f),(l.match(/[0-9]{1,3}/g)||[]).length>3&&"rgba"===r.attr("lay-type")){var u=280*l.slice(l.lastIndexOf(",")+1,l.length-1);e.elemPicker.find("."+h).css("left",u),r[0].style.background=l,c=l}}else f=y(l),r[0].style.background=c="#"+C(f),e.elemColorBox.find("."+d).removeClass(s).addClass(a);return"change"===n?(e.select(f.h,f.s,f.b,n),void(o.change&&o.change(c))):(e.color=l,o.done&&o.done(l),void e.removePicker())}};e.elemPicker.on("click","*[colorpicker-events]",function(){var e=i(this),o=e.attr("colorpicker-events");n[o]&&n[o].call(this,e)}),t.on("keyup",function(e){var o=i(this);n.confirm.call(this,o,13===e.keyCode?null:"change")})},D.prototype.events=function(){var e=this,o=e.config,r=e.elemColorBox.find("."+f);e.elemColorBox.on("click",function(){e.renderPicker(),i(c)[0]&&(e.val(),e.side())}),o.elem[0]&&!e.elemColorBox[0].eventHandler&&(w.on("click",function(o){if(!i(o.target).hasClass(l)&&!i(o.target).parents("."+l)[0]&&!i(o.target).hasClass(c.replace(/\./g,""))&&!i(o.target).parents(c)[0]&&e.elemPicker){if(e.color){var t=k(P(e.color));e.select(t.h,t.s,t.b)}else e.elemColorBox.find("."+d).removeClass(a).addClass(s);r[0].style.background=e.color||"",e.removePicker()}}),B.on("resize",function(){return!(!e.elemPicker||!i(c)[0])&&void e.position()}),e.elemColorBox[0].eventHandler=!0)},o.render=function(e){var i=new D(e);return r.call(i)},e(t,o)}); \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/lay/modules/element.js b/src/main/resources/static/articles/layui/lay/modules/element.js new file mode 100644 index 0000000..290a1e8 --- /dev/null +++ b/src/main/resources/static/articles/layui/lay/modules/element.js @@ -0,0 +1,2 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + ;layui.define("jquery",function(t){"use strict";var a=layui.$,i=(layui.hint(),layui.device()),e="element",l="layui-this",n="layui-show",s=function(){this.config={}};s.prototype.set=function(t){var i=this;return a.extend(!0,i.config,t),i},s.prototype.on=function(t,a){return layui.onevent.call(this,e,t,a)},s.prototype.tabAdd=function(t,i){var e=".layui-tab-title",l=a(".layui-tab[lay-filter="+t+"]"),n=l.children(e),s=n.children(".layui-tab-bar"),o=l.children(".layui-tab-content"),r='<li lay-id="'+(i.id||"")+'"'+(i.attr?' lay-attr="'+i.attr+'"':"")+">"+(i.title||"unnaming")+"</li>";return s[0]?s.before(r):n.append(r),o.append('<div class="layui-tab-item">'+(i.content||"")+"</div>"),f.hideTabMore(!0),f.tabAuto(),this},s.prototype.tabDelete=function(t,i){var e=".layui-tab-title",l=a(".layui-tab[lay-filter="+t+"]"),n=l.children(e),s=n.find('>li[lay-id="'+i+'"]');return f.tabDelete(null,s),this},s.prototype.tabChange=function(t,i){var e=".layui-tab-title",l=a(".layui-tab[lay-filter="+t+"]"),n=l.children(e),s=n.find('>li[lay-id="'+i+'"]');return f.tabClick.call(s[0],null,null,s),this},s.prototype.tab=function(t){t=t||{},b.on("click",t.headerElem,function(i){var e=a(this).index();f.tabClick.call(this,i,e,null,t)})},s.prototype.progress=function(t,i){var e="layui-progress",l=a("."+e+"[lay-filter="+t+"]"),n=l.find("."+e+"-bar"),s=n.find("."+e+"-text");return n.css("width",i),s.text(i),this};var o=".layui-nav",r="layui-nav-item",c="layui-nav-bar",u="layui-nav-tree",d="layui-nav-child",y="layui-nav-more",h="layui-anim layui-anim-upbit",f={tabClick:function(t,i,s,o){o=o||{};var r=s||a(this),i=i||r.parent().children("li").index(r),c=o.headerElem?r.parent():r.parents(".layui-tab").eq(0),u=o.bodyElem?a(o.bodyElem):c.children(".layui-tab-content").children(".layui-tab-item"),d=r.find("a"),y=c.attr("lay-filter");"javascript:;"!==d.attr("href")&&"_blank"===d.attr("target")||(r.addClass(l).siblings().removeClass(l),u.eq(i).addClass(n).siblings().removeClass(n)),layui.event.call(this,e,"tab("+y+")",{elem:c,index:i})},tabDelete:function(t,i){var n=i||a(this).parent(),s=n.index(),o=n.parents(".layui-tab").eq(0),r=o.children(".layui-tab-content").children(".layui-tab-item"),c=o.attr("lay-filter");n.hasClass(l)&&(n.next()[0]?f.tabClick.call(n.next()[0],null,s+1):n.prev()[0]&&f.tabClick.call(n.prev()[0],null,s-1)),n.remove(),r.eq(s).remove(),setTimeout(function(){f.tabAuto()},50),layui.event.call(this,e,"tabDelete("+c+")",{elem:o,index:s})},tabAuto:function(){var t="layui-tab-more",e="layui-tab-bar",l="layui-tab-close",n=this;a(".layui-tab").each(function(){var s=a(this),o=s.children(".layui-tab-title"),r=(s.children(".layui-tab-content").children(".layui-tab-item"),'lay-stope="tabmore"'),c=a('<span class="layui-unselect layui-tab-bar" '+r+"><i "+r+' class="layui-icon"></i></span>');if(n===window&&8!=i.ie&&f.hideTabMore(!0),s.attr("lay-allowClose")&&o.find("li").each(function(){var t=a(this);if(!t.find("."+l)[0]){var i=a('<i class="layui-icon layui-unselect '+l+'">ဆ</i>');i.on("click",f.tabDelete),t.append(i)}}),"string"!=typeof s.attr("lay-unauto"))if(o.prop("scrollWidth")>o.outerWidth()+1){if(o.find("."+e)[0])return;o.append(c),s.attr("overflow",""),c.on("click",function(a){o[this.title?"removeClass":"addClass"](t),this.title=this.title?"":"收缩"})}else o.find("."+e).remove(),s.removeAttr("overflow")})},hideTabMore:function(t){var i=a(".layui-tab-title");t!==!0&&"tabmore"===a(t.target).attr("lay-stope")||(i.removeClass("layui-tab-more"),i.find(".layui-tab-bar").attr("title",""))},clickThis:function(){var t=a(this),i=t.parents(o),n=i.attr("lay-filter"),s=t.parent(),c=t.siblings("."+d),y="string"==typeof s.attr("lay-unselect");"javascript:;"!==t.attr("href")&&"_blank"===t.attr("target")||y||c[0]||(i.find("."+l).removeClass(l),s.addClass(l)),i.hasClass(u)&&(c.removeClass(h),c[0]&&(s["none"===c.css("display")?"addClass":"removeClass"](r+"ed"),"all"===i.attr("lay-shrink")&&s.siblings().removeClass(r+"ed"))),layui.event.call(this,e,"nav("+n+")",t)},collapse:function(){var t=a(this),i=t.find(".layui-colla-icon"),l=t.siblings(".layui-colla-content"),s=t.parents(".layui-collapse").eq(0),o=s.attr("lay-filter"),r="none"===l.css("display");if("string"==typeof s.attr("lay-accordion")){var c=s.children(".layui-colla-item").children("."+n);c.siblings(".layui-colla-title").children(".layui-colla-icon").html(""),c.removeClass(n)}l[r?"addClass":"removeClass"](n),i.html(r?"":""),layui.event.call(this,e,"collapse("+o+")",{title:t,content:l,show:r})}};s.prototype.init=function(t,e){var l=function(){return e?'[lay-filter="'+e+'"]':""}(),s={tab:function(){f.tabAuto.call({})},nav:function(){var t=200,e={},s={},p={},b=function(l,o,r){var c=a(this),f=c.find("."+d);o.hasClass(u)?l.css({top:c.position().top,height:c.children("a").outerHeight(),opacity:1}):(f.addClass(h),l.css({left:c.position().left+parseFloat(c.css("marginLeft")),top:c.position().top+c.height()-l.height()}),e[r]=setTimeout(function(){l.css({width:c.width(),opacity:1})},i.ie&&i.ie<10?0:t),clearTimeout(p[r]),"block"===f.css("display")&&clearTimeout(s[r]),s[r]=setTimeout(function(){f.addClass(n),c.find("."+y).addClass(y+"d")},300))};a(o+l).each(function(i){var l=a(this),o=a('<span class="'+c+'"></span>'),h=l.find("."+r);l.find("."+c)[0]||(l.append(o),h.on("mouseenter",function(){b.call(this,o,l,i)}).on("mouseleave",function(){l.hasClass(u)||(clearTimeout(s[i]),s[i]=setTimeout(function(){l.find("."+d).removeClass(n),l.find("."+y).removeClass(y+"d")},300))}),l.on("mouseleave",function(){clearTimeout(e[i]),p[i]=setTimeout(function(){l.hasClass(u)?o.css({height:0,top:o.position().top+o.height()/2,opacity:0}):o.css({width:0,left:o.position().left+o.width()/2,opacity:0})},t)})),h.find("a").each(function(){var t=a(this),i=(t.parent(),t.siblings("."+d));i[0]&&!t.children("."+y)[0]&&t.append('<span class="'+y+'"></span>'),t.off("click",f.clickThis).on("click",f.clickThis)})})},breadcrumb:function(){var t=".layui-breadcrumb";a(t+l).each(function(){var t=a(this),i="lay-separator",e=t.attr(i)||"/",l=t.find("a");l.next("span["+i+"]")[0]||(l.each(function(t){t!==l.length-1&&a(this).after("<span "+i+">"+e+"</span>")}),t.css("visibility","visible"))})},progress:function(){var t="layui-progress";a("."+t+l).each(function(){var i=a(this),e=i.find(".layui-progress-bar"),l=e.attr("lay-percent");e.css("width",function(){return/^.+\/.+$/.test(l)?100*new Function("return "+l)()+"%":l}()),i.attr("lay-showPercent")&&setTimeout(function(){e.html('<span class="'+t+'-text">'+l+"</span>")},350)})},collapse:function(){var t="layui-collapse";a("."+t+l).each(function(){var t=a(this).find(".layui-colla-item");t.each(function(){var t=a(this),i=t.find(".layui-colla-title"),e=t.find(".layui-colla-content"),l="none"===e.css("display");i.find(".layui-colla-icon").remove(),i.append('<i class="layui-icon layui-colla-icon">'+(l?"":"")+"</i>"),i.off("click",f.collapse).on("click",f.collapse)})})}};return s[t]?s[t]():layui.each(s,function(t,a){a()})},s.prototype.render=s.prototype.init;var p=new s,b=a(document);p.render();var v=".layui-tab-title li";b.on("click",v,f.tabClick),b.on("click",f.hideTabMore),a(window).on("resize",f.tabAuto),t(e,p)}); \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/lay/modules/flow.js b/src/main/resources/static/articles/layui/lay/modules/flow.js new file mode 100644 index 0000000..924c78d --- /dev/null +++ b/src/main/resources/static/articles/layui/lay/modules/flow.js @@ -0,0 +1,2 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + ;layui.define("jquery",function(e){"use strict";var l=layui.$,o=function(e){},t='<i class="layui-anim layui-anim-rotate layui-anim-loop layui-icon "></i>';o.prototype.load=function(e){var o,i,n,r,a=this,c=0;e=e||{};var f=l(e.elem);if(f[0]){var m=l(e.scrollElem||document),u=e.mb||50,s=!("isAuto"in e)||e.isAuto,v=e.end||"没有更多了",y=e.scrollElem&&e.scrollElem!==document,d="<cite>加载更多</cite>",h=l('<div class="layui-flow-more"><a href="javascript:;">'+d+"</a></div>");f.find(".layui-flow-more")[0]||f.append(h);var p=function(e,t){e=l(e),h.before(e),t=0==t||null,t?h.html(v):h.find("a").html(d),i=t,o=null,n&&n()},g=function(){o=!0,h.find("a").html(t),"function"==typeof e.done&&e.done(++c,p)};if(g(),h.find("a").on("click",function(){l(this);i||o||g()}),e.isLazyimg)var n=a.lazyimg({elem:e.elem+" img",scrollElem:e.scrollElem});return s?(m.on("scroll",function(){var e=l(this),t=e.scrollTop();r&&clearTimeout(r),!i&&f.width()&&(r=setTimeout(function(){var i=y?e.height():l(window).height(),n=y?e.prop("scrollHeight"):document.documentElement.scrollHeight;n-t-i<=u&&(o||g())},100))}),a):a}},o.prototype.lazyimg=function(e){var o,t=this,i=0;e=e||{};var n=l(e.scrollElem||document),r=e.elem||"img",a=e.scrollElem&&e.scrollElem!==document,c=function(e,l){var o=n.scrollTop(),r=o+l,c=a?function(){return e.offset().top-n.offset().top+o}():e.offset().top;if(c>=o&&c<=r&&!e.attr("src")){var m=e.attr("lay-src");layui.img(m,function(){var l=t.lazyimg.elem.eq(i);e.attr("src",m).removeAttr("lay-src"),l[0]&&f(l),i++})}},f=function(e,o){var f=a?(o||n).height():l(window).height(),m=n.scrollTop(),u=m+f;if(t.lazyimg.elem=l(r),e)c(e,f);else for(var s=0;s<t.lazyimg.elem.length;s++){var v=t.lazyimg.elem.eq(s),y=a?function(){return v.offset().top-n.offset().top+m}():v.offset().top;if(c(v,f),i=s,y>u)break}};if(f(),!o){var m;n.on("scroll",function(){var e=l(this);m&&clearTimeout(m),m=setTimeout(function(){f(null,e)},50)}),o=!0}return f},e("flow",new o)}); \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/lay/modules/form.js b/src/main/resources/static/articles/layui/lay/modules/form.js new file mode 100644 index 0000000..818dd39 --- /dev/null +++ b/src/main/resources/static/articles/layui/lay/modules/form.js @@ -0,0 +1,2 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + ;layui.define("layer",function(e){"use strict";var t=layui.$,i=layui.layer,a=layui.hint(),n=layui.device(),l="form",r=".layui-form",s="layui-this",o="layui-hide",c="layui-disabled",u=function(){this.config={verify:{required:[/[\S]+/,"必填项不能为空"],phone:[/^1\d{10}$/,"请输入正确的手机号"],email:[/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/,"邮箱格式不正确"],url:[/(^#)|(^http(s*):\/\/[^\s]+\.[^\s]+)/,"链接格式不正确"],number:function(e){if(!e||isNaN(e))return"只能填写数字"},date:[/^(\d{4})[-\/](\d{1}|0\d{1}|1[0-2])([-\/](\d{1}|0\d{1}|[1-2][0-9]|3[0-1]))*$/,"日期格式不正确"],identity:[/(^\d{15}$)|(^\d{17}(x|X|\d)$)/,"请输入正确的身份证号"]}}};u.prototype.set=function(e){var i=this;return t.extend(!0,i.config,e),i},u.prototype.verify=function(e){var i=this;return t.extend(!0,i.config.verify,e),i},u.prototype.on=function(e,t){return layui.onevent.call(this,l,e,t)},u.prototype.val=function(e,i){var a=this,n=t(r+'[lay-filter="'+e+'"]');return n.each(function(e,a){var n=t(this);layui.each(i,function(e,t){var i,a=n.find('[name="'+e+'"]');a[0]&&(i=a[0].type,"checkbox"===i?a[0].checked=t:"radio"===i?a.each(function(){this.value==t&&(this.checked=!0)}):a.val(t))})}),f.render(null,e),a.getValue(e)},u.prototype.getValue=function(e,i){i=i||t(r+'[lay-filter="'+e+'"]').eq(0);var a={},n={},l=i.find("input,select,textarea");return layui.each(l,function(e,t){if(t.name=(t.name||"").replace(/^\s*|\s*&/,""),t.name){if(/^.*\[\]$/.test(t.name)){var i=t.name.match(/^(.*)\[\]$/g)[0];a[i]=0|a[i],t.name=t.name.replace(/^(.*)\[\]$/,"$1["+a[i]++ +"]")}/^checkbox|radio$/.test(t.type)&&!t.checked||(n[t.name]=t.value)}}),n},u.prototype.render=function(e,i){var n=this,u=t(r+function(){return i?'[lay-filter="'+i+'"]':""}()),d={select:function(){var e,i="请选择",a="layui-form-select",n="layui-select-title",r="layui-select-none",d="",f=u.find("select"),v=function(i,l){t(i.target).parent().hasClass(n)&&!l||(t("."+a).removeClass(a+"ed "+a+"up"),e&&d&&e.val(d)),e=null},y=function(i,u,f){var y,p=t(this),m=i.find("."+n),k=m.find("input"),g=i.find("dl"),x=g.children("dd"),b=this.selectedIndex;if(!u){var C=function(){var e=i.offset().top+i.outerHeight()+5-h.scrollTop(),t=g.outerHeight();b=p[0].selectedIndex,i.addClass(a+"ed"),x.removeClass(o),y=null,x.eq(b).addClass(s).siblings().removeClass(s),e+t>h.height()&&e>=t&&i.addClass(a+"up"),T()},w=function(e){i.removeClass(a+"ed "+a+"up"),k.blur(),y=null,e||$(k.val(),function(e){var i=p[0].selectedIndex;e&&(d=t(p[0].options[i]).html(),0===i&&d===k.attr("placeholder")&&(d=""),k.val(d||""))})},T=function(){var e=g.children("dd."+s);if(e[0]){var t=e.position().top,i=g.height(),a=e.height();t>i&&g.scrollTop(t+g.scrollTop()-i+a-5),t<0&&g.scrollTop(t+g.scrollTop()-5)}};m.on("click",function(e){i.hasClass(a+"ed")?w():(v(e,!0),C()),g.find("."+r).remove()}),m.find(".layui-edge").on("click",function(){k.focus()}),k.on("keyup",function(e){var t=e.keyCode;9===t&&C()}).on("keydown",function(e){var t=e.keyCode;9===t&&w();var i=function(t,a){var n,l;e.preventDefault();var r=function(){var e=g.children("dd."+s);if(g.children("dd."+o)[0]&&"next"===t){var i=g.children("dd:not(."+o+",."+c+")"),n=i.eq(0).index();if(n>=0&&n<e.index()&&!i.hasClass(s))return i.eq(0).prev()[0]?i.eq(0).prev():g.children(":last")}return a&&a[0]?a:y&&y[0]?y:e}();return l=r[t](),n=r[t]("dd:not(."+o+")"),l[0]?(y=r[t](),n[0]&&!n.hasClass(c)||!y[0]?(n.addClass(s).siblings().removeClass(s),void T()):i(t,y)):y=null};38===t&&i("prev"),40===t&&i("next"),13===t&&(e.preventDefault(),g.children("dd."+s).trigger("click"))});var $=function(e,i,a){var n=0;layui.each(x,function(){var i=t(this),l=i.text(),r=l.indexOf(e)===-1;(""===e||"blur"===a?e!==l:r)&&n++,"keyup"===a&&i[r?"addClass":"removeClass"](o)});var l=n===x.length;return i(l),l},q=function(e){var t=this.value,i=e.keyCode;return 9!==i&&13!==i&&37!==i&&38!==i&&39!==i&&40!==i&&($(t,function(e){e?g.find("."+r)[0]||g.append('<p class="'+r+'">无匹配项</p>'):g.find("."+r).remove()},"keyup"),""===t&&g.find("."+r).remove(),void T())};f&&k.on("keyup",q).on("blur",function(i){var a=p[0].selectedIndex;e=k,d=t(p[0].options[a]).html(),0===a&&d===k.attr("placeholder")&&(d=""),setTimeout(function(){$(k.val(),function(e){d||k.val("")},"blur")},200)}),x.on("click",function(){var e=t(this),a=e.attr("lay-value"),n=p.attr("lay-filter");return!e.hasClass(c)&&(e.hasClass("layui-select-tips")?k.val(""):(k.val(e.text()),e.addClass(s)),e.siblings().removeClass(s),p.val(a).removeClass("layui-form-danger"),layui.event.call(this,l,"select("+n+")",{elem:p[0],value:a,othis:i}),w(!0),!1)}),i.find("dl>dt").on("click",function(e){return!1}),t(document).off("click",v).on("click",v)}};f.each(function(e,l){var r=t(this),o=r.next("."+a),u=this.disabled,d=l.value,f=t(l.options[l.selectedIndex]),v=l.options[0];if("string"==typeof r.attr("lay-ignore"))return r.show();var h="string"==typeof r.attr("lay-search"),p=v?v.value?i:v.innerHTML||i:i,m=t(['<div class="'+(h?"":"layui-unselect ")+a,(u?" layui-select-disabled":"")+'">','<div class="'+n+'">','<input type="text" placeholder="'+p+'" '+('value="'+(d?f.html():"")+'"')+(!u&&h?"":" readonly")+' class="layui-input'+(h?"":" layui-unselect")+(u?" "+c:"")+'">','<i class="layui-edge"></i></div>','<dl class="layui-anim layui-anim-upbit'+(r.find("optgroup")[0]?" layui-select-group":"")+'">',function(e){var t=[];return layui.each(e,function(e,a){0!==e||a.value?"optgroup"===a.tagName.toLowerCase()?t.push("<dt>"+a.label+"</dt>"):t.push('<dd lay-value="'+a.value+'" class="'+(d===a.value?s:"")+(a.disabled?" "+c:"")+'">'+a.innerHTML+"</dd>"):t.push('<dd lay-value="" class="layui-select-tips">'+(a.innerHTML||i)+"</dd>")}),0===t.length&&t.push('<dd lay-value="" class="'+c+'">没有选项</dd>'),t.join("")}(r.find("*"))+"</dl>","</div>"].join(""));o[0]&&o.remove(),r.after(m),y.call(this,m,u,h)})},checkbox:function(){var e={checkbox:["layui-form-checkbox","layui-form-checked","checkbox"],_switch:["layui-form-switch","layui-form-onswitch","switch"]},i=u.find("input[type=checkbox]"),a=function(e,i){var a=t(this);e.on("click",function(){var t=a.attr("lay-filter"),n=(a.attr("lay-text")||"").split("|");a[0].disabled||(a[0].checked?(a[0].checked=!1,e.removeClass(i[1]).find("em").text(n[1])):(a[0].checked=!0,e.addClass(i[1]).find("em").text(n[0])),layui.event.call(a[0],l,i[2]+"("+t+")",{elem:a[0],value:a[0].value,othis:e}))})};i.each(function(i,n){var l=t(this),r=l.attr("lay-skin"),s=(l.attr("lay-text")||"").split("|"),o=this.disabled;"switch"===r&&(r="_"+r);var u=e[r]||e.checkbox;if("string"==typeof l.attr("lay-ignore"))return l.show();var d=l.next("."+u[0]),f=t(['<div class="layui-unselect '+u[0],n.checked?" "+u[1]:"",o?" layui-checkbox-disbaled "+c:"",'"',r?' lay-skin="'+r+'"':"",">",function(){var e=n.title.replace(/\s/g,""),t={checkbox:[e?"<span>"+n.title+"</span>":"",'<i class="layui-icon layui-icon-ok"></i>'].join(""),_switch:"<em>"+((n.checked?s[0]:s[1])||"")+"</em><i></i>"};return t[r]||t.checkbox}(),"</div>"].join(""));d[0]&&d.remove(),l.after(f),a.call(this,f,u)})},radio:function(){var e="layui-form-radio",i=["",""],a=u.find("input[type=radio]"),n=function(a){var n=t(this),s="layui-anim-scaleSpring";a.on("click",function(){var o=n[0].name,c=n.parents(r),u=n.attr("lay-filter"),d=c.find("input[name="+o.replace(/(\.|#|\[|\])/g,"\\$1")+"]");n[0].disabled||(layui.each(d,function(){var a=t(this).next("."+e);this.checked=!1,a.removeClass(e+"ed"),a.find(".layui-icon").removeClass(s).html(i[1])}),n[0].checked=!0,a.addClass(e+"ed"),a.find(".layui-icon").addClass(s).html(i[0]),layui.event.call(n[0],l,"radio("+u+")",{elem:n[0],value:n[0].value,othis:a}))})};a.each(function(a,l){var r=t(this),s=r.next("."+e),o=this.disabled;if("string"==typeof r.attr("lay-ignore"))return r.show();s[0]&&s.remove();var u=t(['<div class="layui-unselect '+e,l.checked?" "+e+"ed":"",(o?" layui-radio-disbaled "+c:"")+'">','<i class="layui-anim layui-icon">'+i[l.checked?0:1]+"</i>","<div>"+function(){var e=l.title||"";return"string"==typeof r.next().attr("lay-radio")&&(e=r.next().html(),r.next().remove()),e}()+"</div>","</div>"].join(""));r.after(u),n.call(this,u)})}};return e?d[e]?d[e]():a.error("不支持的"+e+"表单渲染"):layui.each(d,function(e,t){t()}),n};var d=function(){var e=null,a=f.config.verify,s="layui-form-danger",o={},c=t(this),u=c.parents(r),d=u.find("*[lay-verify]"),v=c.parents("form")[0],h=c.attr("lay-filter");return layui.each(d,function(l,r){var o=t(this),c=o.attr("lay-verify").split("|"),u=o.attr("lay-verType"),d=o.val();if(o.removeClass(s),layui.each(c,function(t,l){var c,f="",v="function"==typeof a[l];if(a[l]){var c=v?f=a[l](d,r):!a[l][0].test(d);if(f=f||a[l][1],"required"===l&&(f=o.attr("lay-reqText")||f),c)return"tips"===u?i.tips(f,function(){return"string"==typeof o.attr("lay-ignore")||"select"!==r.tagName.toLowerCase()&&!/^checkbox|radio$/.test(r.type)?o:o.next()}(),{tips:1}):"alert"===u?i.alert(f,{title:"提示",shadeClose:!0}):i.msg(f,{icon:5,shift:6}),n.android||n.ios||setTimeout(function(){r.focus()},7),o.addClass(s),e=!0}}),e)return e}),!e&&(o=f.getValue(null,u),layui.event.call(this,l,"submit("+h+")",{elem:this,form:v,field:o}))},f=new u,v=t(document),h=t(window);f.render(),v.on("reset",r,function(){var e=t(this).attr("lay-filter");setTimeout(function(){f.render(null,e)},50)}),v.on("submit",r,d).on("click","*[lay-submit]",d),e(l,f)}); \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/lay/modules/jquery.js b/src/main/resources/static/articles/layui/lay/modules/jquery.js new file mode 100644 index 0000000..10d8c2b --- /dev/null +++ b/src/main/resources/static/articles/layui/lay/modules/jquery.js @@ -0,0 +1,5 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + ;!function(e,t){"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(e,t){function n(e){var t=!!e&&"length"in e&&e.length,n=pe.type(e);return"function"!==n&&!pe.isWindow(e)&&("array"===n||0===t||"number"==typeof t&&t>0&&t-1 in e)}function r(e,t,n){if(pe.isFunction(t))return pe.grep(e,function(e,r){return!!t.call(e,r,e)!==n});if(t.nodeType)return pe.grep(e,function(e){return e===t!==n});if("string"==typeof t){if(Ce.test(t))return pe.filter(t,e,n);t=pe.filter(t,e)}return pe.grep(e,function(e){return pe.inArray(e,t)>-1!==n})}function i(e,t){do e=e[t];while(e&&1!==e.nodeType);return e}function o(e){var t={};return pe.each(e.match(De)||[],function(e,n){t[n]=!0}),t}function a(){re.addEventListener?(re.removeEventListener("DOMContentLoaded",s),e.removeEventListener("load",s)):(re.detachEvent("onreadystatechange",s),e.detachEvent("onload",s))}function s(){(re.addEventListener||"load"===e.event.type||"complete"===re.readyState)&&(a(),pe.ready())}function u(e,t,n){if(void 0===n&&1===e.nodeType){var r="data-"+t.replace(_e,"-$1").toLowerCase();if(n=e.getAttribute(r),"string"==typeof n){try{n="true"===n||"false"!==n&&("null"===n?null:+n+""===n?+n:qe.test(n)?pe.parseJSON(n):n)}catch(i){}pe.data(e,t,n)}else n=void 0}return n}function l(e){var t;for(t in e)if(("data"!==t||!pe.isEmptyObject(e[t]))&&"toJSON"!==t)return!1;return!0}function c(e,t,n,r){if(He(e)){var i,o,a=pe.expando,s=e.nodeType,u=s?pe.cache:e,l=s?e[a]:e[a]&&a;if(l&&u[l]&&(r||u[l].data)||void 0!==n||"string"!=typeof t)return l||(l=s?e[a]=ne.pop()||pe.guid++:a),u[l]||(u[l]=s?{}:{toJSON:pe.noop}),"object"!=typeof t&&"function"!=typeof t||(r?u[l]=pe.extend(u[l],t):u[l].data=pe.extend(u[l].data,t)),o=u[l],r||(o.data||(o.data={}),o=o.data),void 0!==n&&(o[pe.camelCase(t)]=n),"string"==typeof t?(i=o[t],null==i&&(i=o[pe.camelCase(t)])):i=o,i}}function f(e,t,n){if(He(e)){var r,i,o=e.nodeType,a=o?pe.cache:e,s=o?e[pe.expando]:pe.expando;if(a[s]){if(t&&(r=n?a[s]:a[s].data)){pe.isArray(t)?t=t.concat(pe.map(t,pe.camelCase)):t in r?t=[t]:(t=pe.camelCase(t),t=t in r?[t]:t.split(" ")),i=t.length;for(;i--;)delete r[t[i]];if(n?!l(r):!pe.isEmptyObject(r))return}(n||(delete a[s].data,l(a[s])))&&(o?pe.cleanData([e],!0):fe.deleteExpando||a!=a.window?delete a[s]:a[s]=void 0)}}}function d(e,t,n,r){var i,o=1,a=20,s=r?function(){return r.cur()}:function(){return pe.css(e,t,"")},u=s(),l=n&&n[3]||(pe.cssNumber[t]?"":"px"),c=(pe.cssNumber[t]||"px"!==l&&+u)&&Me.exec(pe.css(e,t));if(c&&c[3]!==l){l=l||c[3],n=n||[],c=+u||1;do o=o||".5",c/=o,pe.style(e,t,c+l);while(o!==(o=s()/u)&&1!==o&&--a)}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}function p(e){var t=ze.split("|"),n=e.createDocumentFragment();if(n.createElement)for(;t.length;)n.createElement(t.pop());return n}function h(e,t){var n,r,i=0,o="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):void 0;if(!o)for(o=[],n=e.childNodes||e;null!=(r=n[i]);i++)!t||pe.nodeName(r,t)?o.push(r):pe.merge(o,h(r,t));return void 0===t||t&&pe.nodeName(e,t)?pe.merge([e],o):o}function g(e,t){for(var n,r=0;null!=(n=e[r]);r++)pe._data(n,"globalEval",!t||pe._data(t[r],"globalEval"))}function m(e){Be.test(e.type)&&(e.defaultChecked=e.checked)}function y(e,t,n,r,i){for(var o,a,s,u,l,c,f,d=e.length,y=p(t),v=[],x=0;x<d;x++)if(a=e[x],a||0===a)if("object"===pe.type(a))pe.merge(v,a.nodeType?[a]:a);else if(Ue.test(a)){for(u=u||y.appendChild(t.createElement("div")),l=(We.exec(a)||["",""])[1].toLowerCase(),f=Xe[l]||Xe._default,u.innerHTML=f[1]+pe.htmlPrefilter(a)+f[2],o=f[0];o--;)u=u.lastChild;if(!fe.leadingWhitespace&&$e.test(a)&&v.push(t.createTextNode($e.exec(a)[0])),!fe.tbody)for(a="table"!==l||Ve.test(a)?"<table>"!==f[1]||Ve.test(a)?0:u:u.firstChild,o=a&&a.childNodes.length;o--;)pe.nodeName(c=a.childNodes[o],"tbody")&&!c.childNodes.length&&a.removeChild(c);for(pe.merge(v,u.childNodes),u.textContent="";u.firstChild;)u.removeChild(u.firstChild);u=y.lastChild}else v.push(t.createTextNode(a));for(u&&y.removeChild(u),fe.appendChecked||pe.grep(h(v,"input"),m),x=0;a=v[x++];)if(r&&pe.inArray(a,r)>-1)i&&i.push(a);else if(s=pe.contains(a.ownerDocument,a),u=h(y.appendChild(a),"script"),s&&g(u),n)for(o=0;a=u[o++];)Ie.test(a.type||"")&&n.push(a);return u=null,y}function v(){return!0}function x(){return!1}function b(){try{return re.activeElement}catch(e){}}function w(e,t,n,r,i,o){var a,s;if("object"==typeof t){"string"!=typeof n&&(r=r||n,n=void 0);for(s in t)w(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),i===!1)i=x;else if(!i)return e;return 1===o&&(a=i,i=function(e){return pe().off(e),a.apply(this,arguments)},i.guid=a.guid||(a.guid=pe.guid++)),e.each(function(){pe.event.add(this,t,i,r,n)})}function T(e,t){return pe.nodeName(e,"table")&&pe.nodeName(11!==t.nodeType?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody")):e}function C(e){return e.type=(null!==pe.find.attr(e,"type"))+"/"+e.type,e}function E(e){var t=it.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function N(e,t){if(1===t.nodeType&&pe.hasData(e)){var n,r,i,o=pe._data(e),a=pe._data(t,o),s=o.events;if(s){delete a.handle,a.events={};for(n in s)for(r=0,i=s[n].length;r<i;r++)pe.event.add(t,n,s[n][r])}a.data&&(a.data=pe.extend({},a.data))}}function k(e,t){var n,r,i;if(1===t.nodeType){if(n=t.nodeName.toLowerCase(),!fe.noCloneEvent&&t[pe.expando]){i=pe._data(t);for(r in i.events)pe.removeEvent(t,r,i.handle);t.removeAttribute(pe.expando)}"script"===n&&t.text!==e.text?(C(t).text=e.text,E(t)):"object"===n?(t.parentNode&&(t.outerHTML=e.outerHTML),fe.html5Clone&&e.innerHTML&&!pe.trim(t.innerHTML)&&(t.innerHTML=e.innerHTML)):"input"===n&&Be.test(e.type)?(t.defaultChecked=t.checked=e.checked,t.value!==e.value&&(t.value=e.value)):"option"===n?t.defaultSelected=t.selected=e.defaultSelected:"input"!==n&&"textarea"!==n||(t.defaultValue=e.defaultValue)}}function S(e,t,n,r){t=oe.apply([],t);var i,o,a,s,u,l,c=0,f=e.length,d=f-1,p=t[0],g=pe.isFunction(p);if(g||f>1&&"string"==typeof p&&!fe.checkClone&&rt.test(p))return e.each(function(i){var o=e.eq(i);g&&(t[0]=p.call(this,i,o.html())),S(o,t,n,r)});if(f&&(l=y(t,e[0].ownerDocument,!1,e,r),i=l.firstChild,1===l.childNodes.length&&(l=i),i||r)){for(s=pe.map(h(l,"script"),C),a=s.length;c<f;c++)o=l,c!==d&&(o=pe.clone(o,!0,!0),a&&pe.merge(s,h(o,"script"))),n.call(e[c],o,c);if(a)for(u=s[s.length-1].ownerDocument,pe.map(s,E),c=0;c<a;c++)o=s[c],Ie.test(o.type||"")&&!pe._data(o,"globalEval")&&pe.contains(u,o)&&(o.src?pe._evalUrl&&pe._evalUrl(o.src):pe.globalEval((o.text||o.textContent||o.innerHTML||"").replace(ot,"")));l=i=null}return e}function A(e,t,n){for(var r,i=t?pe.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||pe.cleanData(h(r)),r.parentNode&&(n&&pe.contains(r.ownerDocument,r)&&g(h(r,"script")),r.parentNode.removeChild(r));return e}function D(e,t){var n=pe(t.createElement(e)).appendTo(t.body),r=pe.css(n[0],"display");return n.detach(),r}function j(e){var t=re,n=lt[e];return n||(n=D(e,t),"none"!==n&&n||(ut=(ut||pe("<iframe frameborder='0' width='0' height='0'/>")).appendTo(t.documentElement),t=(ut[0].contentWindow||ut[0].contentDocument).document,t.write(),t.close(),n=D(e,t),ut.detach()),lt[e]=n),n}function L(e,t){return{get:function(){return e()?void delete this.get:(this.get=t).apply(this,arguments)}}}function H(e){if(e in Et)return e;for(var t=e.charAt(0).toUpperCase()+e.slice(1),n=Ct.length;n--;)if(e=Ct[n]+t,e in Et)return e}function q(e,t){for(var n,r,i,o=[],a=0,s=e.length;a<s;a++)r=e[a],r.style&&(o[a]=pe._data(r,"olddisplay"),n=r.style.display,t?(o[a]||"none"!==n||(r.style.display=""),""===r.style.display&&Re(r)&&(o[a]=pe._data(r,"olddisplay",j(r.nodeName)))):(i=Re(r),(n&&"none"!==n||!i)&&pe._data(r,"olddisplay",i?n:pe.css(r,"display"))));for(a=0;a<s;a++)r=e[a],r.style&&(t&&"none"!==r.style.display&&""!==r.style.display||(r.style.display=t?o[a]||"":"none"));return e}function _(e,t,n){var r=bt.exec(t);return r?Math.max(0,r[1]-(n||0))+(r[2]||"px"):t}function F(e,t,n,r,i){for(var o=n===(r?"border":"content")?4:"width"===t?1:0,a=0;o<4;o+=2)"margin"===n&&(a+=pe.css(e,n+Oe[o],!0,i)),r?("content"===n&&(a-=pe.css(e,"padding"+Oe[o],!0,i)),"margin"!==n&&(a-=pe.css(e,"border"+Oe[o]+"Width",!0,i))):(a+=pe.css(e,"padding"+Oe[o],!0,i),"padding"!==n&&(a+=pe.css(e,"border"+Oe[o]+"Width",!0,i)));return a}function M(t,n,r){var i=!0,o="width"===n?t.offsetWidth:t.offsetHeight,a=ht(t),s=fe.boxSizing&&"border-box"===pe.css(t,"boxSizing",!1,a);if(re.msFullscreenElement&&e.top!==e&&t.getClientRects().length&&(o=Math.round(100*t.getBoundingClientRect()[n])),o<=0||null==o){if(o=gt(t,n,a),(o<0||null==o)&&(o=t.style[n]),ft.test(o))return o;i=s&&(fe.boxSizingReliable()||o===t.style[n]),o=parseFloat(o)||0}return o+F(t,n,r||(s?"border":"content"),i,a)+"px"}function O(e,t,n,r,i){return new O.prototype.init(e,t,n,r,i)}function R(){return e.setTimeout(function(){Nt=void 0}),Nt=pe.now()}function P(e,t){var n,r={height:e},i=0;for(t=t?1:0;i<4;i+=2-t)n=Oe[i],r["margin"+n]=r["padding"+n]=e;return t&&(r.opacity=r.width=e),r}function B(e,t,n){for(var r,i=($.tweeners[t]||[]).concat($.tweeners["*"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function W(e,t,n){var r,i,o,a,s,u,l,c,f=this,d={},p=e.style,h=e.nodeType&&Re(e),g=pe._data(e,"fxshow");n.queue||(s=pe._queueHooks(e,"fx"),null==s.unqueued&&(s.unqueued=0,u=s.empty.fire,s.empty.fire=function(){s.unqueued||u()}),s.unqueued++,f.always(function(){f.always(function(){s.unqueued--,pe.queue(e,"fx").length||s.empty.fire()})})),1===e.nodeType&&("height"in t||"width"in t)&&(n.overflow=[p.overflow,p.overflowX,p.overflowY],l=pe.css(e,"display"),c="none"===l?pe._data(e,"olddisplay")||j(e.nodeName):l,"inline"===c&&"none"===pe.css(e,"float")&&(fe.inlineBlockNeedsLayout&&"inline"!==j(e.nodeName)?p.zoom=1:p.display="inline-block")),n.overflow&&(p.overflow="hidden",fe.shrinkWrapBlocks()||f.always(function(){p.overflow=n.overflow[0],p.overflowX=n.overflow[1],p.overflowY=n.overflow[2]}));for(r in t)if(i=t[r],St.exec(i)){if(delete t[r],o=o||"toggle"===i,i===(h?"hide":"show")){if("show"!==i||!g||void 0===g[r])continue;h=!0}d[r]=g&&g[r]||pe.style(e,r)}else l=void 0;if(pe.isEmptyObject(d))"inline"===("none"===l?j(e.nodeName):l)&&(p.display=l);else{g?"hidden"in g&&(h=g.hidden):g=pe._data(e,"fxshow",{}),o&&(g.hidden=!h),h?pe(e).show():f.done(function(){pe(e).hide()}),f.done(function(){var t;pe._removeData(e,"fxshow");for(t in d)pe.style(e,t,d[t])});for(r in d)a=B(h?g[r]:0,r,f),r in g||(g[r]=a.start,h&&(a.end=a.start,a.start="width"===r||"height"===r?1:0))}}function I(e,t){var n,r,i,o,a;for(n in e)if(r=pe.camelCase(n),i=t[r],o=e[n],pe.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),a=pe.cssHooks[r],a&&"expand"in a){o=a.expand(o),delete e[r];for(n in o)n in e||(e[n]=o[n],t[n]=i)}else t[r]=i}function $(e,t,n){var r,i,o=0,a=$.prefilters.length,s=pe.Deferred().always(function(){delete u.elem}),u=function(){if(i)return!1;for(var t=Nt||R(),n=Math.max(0,l.startTime+l.duration-t),r=n/l.duration||0,o=1-r,a=0,u=l.tweens.length;a<u;a++)l.tweens[a].run(o);return s.notifyWith(e,[l,o,n]),o<1&&u?n:(s.resolveWith(e,[l]),!1)},l=s.promise({elem:e,props:pe.extend({},t),opts:pe.extend(!0,{specialEasing:{},easing:pe.easing._default},n),originalProperties:t,originalOptions:n,startTime:Nt||R(),duration:n.duration,tweens:[],createTween:function(t,n){var r=pe.Tween(e,l.opts,t,n,l.opts.specialEasing[t]||l.opts.easing);return l.tweens.push(r),r},stop:function(t){var n=0,r=t?l.tweens.length:0;if(i)return this;for(i=!0;n<r;n++)l.tweens[n].run(1);return t?(s.notifyWith(e,[l,1,0]),s.resolveWith(e,[l,t])):s.rejectWith(e,[l,t]),this}}),c=l.props;for(I(c,l.opts.specialEasing);o<a;o++)if(r=$.prefilters[o].call(l,e,c,l.opts))return pe.isFunction(r.stop)&&(pe._queueHooks(l.elem,l.opts.queue).stop=pe.proxy(r.stop,r)),r;return pe.map(c,B,l),pe.isFunction(l.opts.start)&&l.opts.start.call(e,l),pe.fx.timer(pe.extend(u,{elem:e,anim:l,queue:l.opts.queue})),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always)}function z(e){return pe.attr(e,"class")||""}function X(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(De)||[];if(pe.isFunction(n))for(;r=o[i++];)"+"===r.charAt(0)?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function U(e,t,n,r){function i(s){var u;return o[s]=!0,pe.each(e[s]||[],function(e,s){var l=s(t,n,r);return"string"!=typeof l||a||o[l]?a?!(u=l):void 0:(t.dataTypes.unshift(l),i(l),!1)}),u}var o={},a=e===Qt;return i(t.dataTypes[0])||!o["*"]&&i("*")}function V(e,t){var n,r,i=pe.ajaxSettings.flatOptions||{};for(r in t)void 0!==t[r]&&((i[r]?e:n||(n={}))[r]=t[r]);return n&&pe.extend(!0,e,n),e}function Y(e,t,n){for(var r,i,o,a,s=e.contents,u=e.dataTypes;"*"===u[0];)u.shift(),void 0===i&&(i=e.mimeType||t.getResponseHeader("Content-Type"));if(i)for(a in s)if(s[a]&&s[a].test(i)){u.unshift(a);break}if(u[0]in n)o=u[0];else{for(a in n){if(!u[0]||e.converters[a+" "+u[0]]){o=a;break}r||(r=a)}o=o||r}if(o)return o!==u[0]&&u.unshift(o),n[o]}function J(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];for(o=c.shift();o;)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(a=l[u+" "+o]||l["* "+o],!a)for(i in l)if(s=i.split(" "),s[1]===o&&(a=l[u+" "+s[0]]||l["* "+s[0]])){a===!0?a=l[i]:l[i]!==!0&&(o=s[0],c.unshift(s[1]));break}if(a!==!0)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(f){return{state:"parsererror",error:a?f:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}function G(e){return e.style&&e.style.display||pe.css(e,"display")}function K(e){for(;e&&1===e.nodeType;){if("none"===G(e)||"hidden"===e.type)return!0;e=e.parentNode}return!1}function Q(e,t,n,r){var i;if(pe.isArray(t))pe.each(t,function(t,i){n||rn.test(e)?r(e,i):Q(e+"["+("object"==typeof i&&null!=i?t:"")+"]",i,n,r)});else if(n||"object"!==pe.type(t))r(e,t);else for(i in t)Q(e+"["+i+"]",t[i],n,r)}function Z(){try{return new e.XMLHttpRequest}catch(t){}}function ee(){try{return new e.ActiveXObject("Microsoft.XMLHTTP")}catch(t){}}function te(e){return pe.isWindow(e)?e:9===e.nodeType&&(e.defaultView||e.parentWindow)}var ne=[],re=e.document,ie=ne.slice,oe=ne.concat,ae=ne.push,se=ne.indexOf,ue={},le=ue.toString,ce=ue.hasOwnProperty,fe={},de="1.12.3",pe=function(e,t){return new pe.fn.init(e,t)},he=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,ge=/^-ms-/,me=/-([\da-z])/gi,ye=function(e,t){return t.toUpperCase()};pe.fn=pe.prototype={jquery:de,constructor:pe,selector:"",length:0,toArray:function(){return ie.call(this)},get:function(e){return null!=e?e<0?this[e+this.length]:this[e]:ie.call(this)},pushStack:function(e){var t=pe.merge(this.constructor(),e);return t.prevObject=this,t.context=this.context,t},each:function(e){return pe.each(this,e)},map:function(e){return this.pushStack(pe.map(this,function(t,n){return e.call(t,n,t)}))},slice:function(){return this.pushStack(ie.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(n>=0&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:ae,sort:ne.sort,splice:ne.splice},pe.extend=pe.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||pe.isFunction(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(i=arguments[s]))for(r in i)e=a[r],n=i[r],a!==n&&(l&&n&&(pe.isPlainObject(n)||(t=pe.isArray(n)))?(t?(t=!1,o=e&&pe.isArray(e)?e:[]):o=e&&pe.isPlainObject(e)?e:{},a[r]=pe.extend(l,o,n)):void 0!==n&&(a[r]=n));return a},pe.extend({expando:"jQuery"+(de+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isFunction:function(e){return"function"===pe.type(e)},isArray:Array.isArray||function(e){return"array"===pe.type(e)},isWindow:function(e){return null!=e&&e==e.window},isNumeric:function(e){var t=e&&e.toString();return!pe.isArray(e)&&t-parseFloat(t)+1>=0},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},isPlainObject:function(e){var t;if(!e||"object"!==pe.type(e)||e.nodeType||pe.isWindow(e))return!1;try{if(e.constructor&&!ce.call(e,"constructor")&&!ce.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(n){return!1}if(!fe.ownFirst)for(t in e)return ce.call(e,t);for(t in e);return void 0===t||ce.call(e,t)},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?ue[le.call(e)]||"object":typeof e},globalEval:function(t){t&&pe.trim(t)&&(e.execScript||function(t){e.eval.call(e,t)})(t)},camelCase:function(e){return e.replace(ge,"ms-").replace(me,ye)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,t){var r,i=0;if(n(e))for(r=e.length;i<r&&t.call(e[i],i,e[i])!==!1;i++);else for(i in e)if(t.call(e[i],i,e[i])===!1)break;return e},trim:function(e){return null==e?"":(e+"").replace(he,"")},makeArray:function(e,t){var r=t||[];return null!=e&&(n(Object(e))?pe.merge(r,"string"==typeof e?[e]:e):ae.call(r,e)),r},inArray:function(e,t,n){var r;if(t){if(se)return se.call(t,e,n);for(r=t.length,n=n?n<0?Math.max(0,r+n):n:0;n<r;n++)if(n in t&&t[n]===e)return n}return-1},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;)e[i++]=t[r++];if(n!==n)for(;void 0!==t[r];)e[i++]=t[r++];return e.length=i,e},grep:function(e,t,n){for(var r,i=[],o=0,a=e.length,s=!n;o<a;o++)r=!t(e[o],o),r!==s&&i.push(e[o]);return i},map:function(e,t,r){var i,o,a=0,s=[];if(n(e))for(i=e.length;a<i;a++)o=t(e[a],a,r),null!=o&&s.push(o);else for(a in e)o=t(e[a],a,r),null!=o&&s.push(o);return oe.apply([],s)},guid:1,proxy:function(e,t){var n,r,i;if("string"==typeof t&&(i=e[t],t=e,e=i),pe.isFunction(e))return n=ie.call(arguments,2),r=function(){return e.apply(t||this,n.concat(ie.call(arguments)))},r.guid=e.guid=e.guid||pe.guid++,r},now:function(){return+new Date},support:fe}),"function"==typeof Symbol&&(pe.fn[Symbol.iterator]=ne[Symbol.iterator]),pe.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){ue["[object "+t+"]"]=t.toLowerCase()});var ve=function(e){function t(e,t,n,r){var i,o,a,s,u,l,f,p,h=t&&t.ownerDocument,g=t?t.nodeType:9;if(n=n||[],"string"!=typeof e||!e||1!==g&&9!==g&&11!==g)return n;if(!r&&((t?t.ownerDocument||t:B)!==H&&L(t),t=t||H,_)){if(11!==g&&(l=ye.exec(e)))if(i=l[1]){if(9===g){if(!(a=t.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(h&&(a=h.getElementById(i))&&R(t,a)&&a.id===i)return n.push(a),n}else{if(l[2])return Q.apply(n,t.getElementsByTagName(e)),n;if((i=l[3])&&w.getElementsByClassName&&t.getElementsByClassName)return Q.apply(n,t.getElementsByClassName(i)),n}if(w.qsa&&!X[e+" "]&&(!F||!F.test(e))){if(1!==g)h=t,p=e;else if("object"!==t.nodeName.toLowerCase()){for((s=t.getAttribute("id"))?s=s.replace(xe,"\\$&"):t.setAttribute("id",s=P),f=N(e),o=f.length,u=de.test(s)?"#"+s:"[id='"+s+"']";o--;)f[o]=u+" "+d(f[o]);p=f.join(","),h=ve.test(e)&&c(t.parentNode)||t}if(p)try{return Q.apply(n,h.querySelectorAll(p)),n}catch(m){}finally{s===P&&t.removeAttribute("id")}}}return S(e.replace(se,"$1"),t,n,r)}function n(){function e(n,r){return t.push(n+" ")>T.cacheLength&&delete e[t.shift()],e[n+" "]=r}var t=[];return e}function r(e){return e[P]=!0,e}function i(e){var t=H.createElement("div");try{return!!e(t)}catch(n){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function o(e,t){for(var n=e.split("|"),r=n.length;r--;)T.attrHandle[n[r]]=t}function a(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&(~t.sourceIndex||V)-(~e.sourceIndex||V);if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function s(e){return function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}function u(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function l(e){return r(function(t){return t=+t,r(function(n,r){for(var i,o=e([],n.length,t),a=o.length;a--;)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}function c(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}function f(){}function d(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function p(e,t,n){var r=t.dir,i=n&&"parentNode"===r,o=I++;return t.first?function(t,n,o){for(;t=t[r];)if(1===t.nodeType||i)return e(t,n,o)}:function(t,n,a){var s,u,l,c=[W,o];if(a){for(;t=t[r];)if((1===t.nodeType||i)&&e(t,n,a))return!0}else for(;t=t[r];)if(1===t.nodeType||i){if(l=t[P]||(t[P]={}),u=l[t.uniqueID]||(l[t.uniqueID]={}),(s=u[r])&&s[0]===W&&s[1]===o)return c[2]=s[2];if(u[r]=c,c[2]=e(t,n,a))return!0}}}function h(e){return e.length>1?function(t,n,r){for(var i=e.length;i--;)if(!e[i](t,n,r))return!1;return!0}:e[0]}function g(e,n,r){for(var i=0,o=n.length;i<o;i++)t(e,n[i],r);return r}function m(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function y(e,t,n,i,o,a){return i&&!i[P]&&(i=y(i)),o&&!o[P]&&(o=y(o,a)),r(function(r,a,s,u){var l,c,f,d=[],p=[],h=a.length,y=r||g(t||"*",s.nodeType?[s]:s,[]),v=!e||!r&&t?y:m(y,d,e,s,u),x=n?o||(r?e:h||i)?[]:a:v;if(n&&n(v,x,s,u),i)for(l=m(x,p),i(l,[],s,u),c=l.length;c--;)(f=l[c])&&(x[p[c]]=!(v[p[c]]=f));if(r){if(o||e){if(o){for(l=[],c=x.length;c--;)(f=x[c])&&l.push(v[c]=f);o(null,x=[],l,u)}for(c=x.length;c--;)(f=x[c])&&(l=o?ee(r,f):d[c])>-1&&(r[l]=!(a[l]=f))}}else x=m(x===a?x.splice(h,x.length):x),o?o(null,a,x,u):Q.apply(a,x)})}function v(e){for(var t,n,r,i=e.length,o=T.relative[e[0].type],a=o||T.relative[" "],s=o?1:0,u=p(function(e){return e===t},a,!0),l=p(function(e){return ee(t,e)>-1},a,!0),c=[function(e,n,r){var i=!o&&(r||n!==A)||((t=n).nodeType?u(e,n,r):l(e,n,r));return t=null,i}];s<i;s++)if(n=T.relative[e[s].type])c=[p(h(c),n)];else{if(n=T.filter[e[s].type].apply(null,e[s].matches),n[P]){for(r=++s;r<i&&!T.relative[e[r].type];r++);return y(s>1&&h(c),s>1&&d(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace(se,"$1"),n,s<r&&v(e.slice(s,r)),r<i&&v(e=e.slice(r)),r<i&&d(e))}c.push(n)}return h(c)}function x(e,n){var i=n.length>0,o=e.length>0,a=function(r,a,s,u,l){var c,f,d,p=0,h="0",g=r&&[],y=[],v=A,x=r||o&&T.find.TAG("*",l),b=W+=null==v?1:Math.random()||.1,w=x.length;for(l&&(A=a===H||a||l);h!==w&&null!=(c=x[h]);h++){if(o&&c){for(f=0,a||c.ownerDocument===H||(L(c),s=!_);d=e[f++];)if(d(c,a||H,s)){u.push(c);break}l&&(W=b)}i&&((c=!d&&c)&&p--,r&&g.push(c))}if(p+=h,i&&h!==p){for(f=0;d=n[f++];)d(g,y,a,s);if(r){if(p>0)for(;h--;)g[h]||y[h]||(y[h]=G.call(u));y=m(y)}Q.apply(u,y),l&&!r&&y.length>0&&p+n.length>1&&t.uniqueSort(u)}return l&&(W=b,A=v),g};return i?r(a):a}var b,w,T,C,E,N,k,S,A,D,j,L,H,q,_,F,M,O,R,P="sizzle"+1*new Date,B=e.document,W=0,I=0,$=n(),z=n(),X=n(),U=function(e,t){return e===t&&(j=!0),0},V=1<<31,Y={}.hasOwnProperty,J=[],G=J.pop,K=J.push,Q=J.push,Z=J.slice,ee=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},te="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",ne="[\\x20\\t\\r\\n\\f]",re="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",ie="\\["+ne+"*("+re+")(?:"+ne+"*([*^$|!~]?=)"+ne+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+re+"))|)"+ne+"*\\]",oe=":("+re+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+ie+")*)|.*)\\)|)",ae=new RegExp(ne+"+","g"),se=new RegExp("^"+ne+"+|((?:^|[^\\\\])(?:\\\\.)*)"+ne+"+$","g"),ue=new RegExp("^"+ne+"*,"+ne+"*"),le=new RegExp("^"+ne+"*([>+~]|"+ne+")"+ne+"*"),ce=new RegExp("="+ne+"*([^\\]'\"]*?)"+ne+"*\\]","g"),fe=new RegExp(oe),de=new RegExp("^"+re+"$"),pe={ID:new RegExp("^#("+re+")"),CLASS:new RegExp("^\\.("+re+")"),TAG:new RegExp("^("+re+"|[*])"),ATTR:new RegExp("^"+ie),PSEUDO:new RegExp("^"+oe),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ne+"*(even|odd|(([+-]|)(\\d*)n|)"+ne+"*(?:([+-]|)"+ne+"*(\\d+)|))"+ne+"*\\)|)","i"),bool:new RegExp("^(?:"+te+")$","i"),needsContext:new RegExp("^"+ne+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ne+"*((?:-\\d)?\\d*)"+ne+"*\\)|)(?=[^-]|$)","i")},he=/^(?:input|select|textarea|button)$/i,ge=/^h\d$/i,me=/^[^{]+\{\s*\[native \w/,ye=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ve=/[+~]/,xe=/'|\\/g,be=new RegExp("\\\\([\\da-f]{1,6}"+ne+"?|("+ne+")|.)","ig"),we=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},Te=function(){L()};try{Q.apply(J=Z.call(B.childNodes),B.childNodes),J[B.childNodes.length].nodeType}catch(Ce){Q={apply:J.length?function(e,t){K.apply(e,Z.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}w=t.support={},E=t.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},L=t.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:B;return r!==H&&9===r.nodeType&&r.documentElement?(H=r,q=H.documentElement,_=!E(H),(n=H.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",Te,!1):n.attachEvent&&n.attachEvent("onunload",Te)),w.attributes=i(function(e){return e.className="i",!e.getAttribute("className")}),w.getElementsByTagName=i(function(e){return e.appendChild(H.createComment("")),!e.getElementsByTagName("*").length}),w.getElementsByClassName=me.test(H.getElementsByClassName),w.getById=i(function(e){return q.appendChild(e).id=P,!H.getElementsByName||!H.getElementsByName(P).length}),w.getById?(T.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&_){var n=t.getElementById(e);return n?[n]:[]}},T.filter.ID=function(e){var t=e.replace(be,we);return function(e){return e.getAttribute("id")===t}}):(delete T.find.ID,T.filter.ID=function(e){var t=e.replace(be,we);return function(e){var n="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}}),T.find.TAG=w.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):w.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){for(;n=o[i++];)1===n.nodeType&&r.push(n);return r}return o},T.find.CLASS=w.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&_)return t.getElementsByClassName(e)},M=[],F=[],(w.qsa=me.test(H.querySelectorAll))&&(i(function(e){q.appendChild(e).innerHTML="<a id='"+P+"'></a><select id='"+P+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&F.push("[*^$]="+ne+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||F.push("\\["+ne+"*(?:value|"+te+")"),e.querySelectorAll("[id~="+P+"-]").length||F.push("~="),e.querySelectorAll(":checked").length||F.push(":checked"),e.querySelectorAll("a#"+P+"+*").length||F.push(".#.+[+~]")}),i(function(e){var t=H.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&F.push("name"+ne+"*[*^$|!~]?="),e.querySelectorAll(":enabled").length||F.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),F.push(",.*:")})),(w.matchesSelector=me.test(O=q.matches||q.webkitMatchesSelector||q.mozMatchesSelector||q.oMatchesSelector||q.msMatchesSelector))&&i(function(e){w.disconnectedMatch=O.call(e,"div"),O.call(e,"[s!='']:x"),M.push("!=",oe)}),F=F.length&&new RegExp(F.join("|")),M=M.length&&new RegExp(M.join("|")),t=me.test(q.compareDocumentPosition),R=t||me.test(q.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},U=t?function(e,t){if(e===t)return j=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n?n:(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1,1&n||!w.sortDetached&&t.compareDocumentPosition(e)===n?e===H||e.ownerDocument===B&&R(B,e)?-1:t===H||t.ownerDocument===B&&R(B,t)?1:D?ee(D,e)-ee(D,t):0:4&n?-1:1)}:function(e,t){if(e===t)return j=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,s=[e],u=[t];if(!i||!o)return e===H?-1:t===H?1:i?-1:o?1:D?ee(D,e)-ee(D,t):0;if(i===o)return a(e,t);for(n=e;n=n.parentNode;)s.unshift(n);for(n=t;n=n.parentNode;)u.unshift(n);for(;s[r]===u[r];)r++;return r?a(s[r],u[r]):s[r]===B?-1:u[r]===B?1:0},H):H},t.matches=function(e,n){return t(e,null,null,n)},t.matchesSelector=function(e,n){if((e.ownerDocument||e)!==H&&L(e),n=n.replace(ce,"='$1']"),w.matchesSelector&&_&&!X[n+" "]&&(!M||!M.test(n))&&(!F||!F.test(n)))try{var r=O.call(e,n);if(r||w.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(i){}return t(n,H,null,[e]).length>0},t.contains=function(e,t){return(e.ownerDocument||e)!==H&&L(e),R(e,t)},t.attr=function(e,t){(e.ownerDocument||e)!==H&&L(e);var n=T.attrHandle[t.toLowerCase()],r=n&&Y.call(T.attrHandle,t.toLowerCase())?n(e,t,!_):void 0;return void 0!==r?r:w.attributes||!_?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},t.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},t.uniqueSort=function(e){var t,n=[],r=0,i=0;if(j=!w.detectDuplicates,D=!w.sortStable&&e.slice(0),e.sort(U),j){for(;t=e[i++];)t===e[i]&&(r=n.push(i));for(;r--;)e.splice(n[r],1)}return D=null,e},C=t.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=C(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r++];)n+=C(t);return n},T=t.selectors={cacheLength:50,createPseudo:r,match:pe,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(be,we),e[3]=(e[3]||e[4]||e[5]||"").replace(be,we),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||t.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&t.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return pe.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&fe.test(n)&&(t=N(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(be,we).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=$[e+" "];return t||(t=new RegExp("(^|"+ne+")"+e+"("+ne+"|$)"))&&$(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,n,r){return function(i){var o=t.attr(i,e);return null==o?"!="===n:!n||(o+="","="===n?o===r:"!="===n?o!==r:"^="===n?r&&0===o.indexOf(r):"*="===n?r&&o.indexOf(r)>-1:"$="===n?r&&o.slice(-r.length)===r:"~="===n?(" "+o.replace(ae," ")+" ").indexOf(r)>-1:"|="===n&&(o===r||o.slice(0,r.length+1)===r+"-"))}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,u){var l,c,f,d,p,h,g=o!==a?"nextSibling":"previousSibling",m=t.parentNode,y=s&&t.nodeName.toLowerCase(),v=!u&&!s,x=!1;if(m){if(o){for(;g;){for(d=t;d=d[g];)if(s?d.nodeName.toLowerCase()===y:1===d.nodeType)return!1;h=g="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?m.firstChild:m.lastChild],a&&v){for(d=m,f=d[P]||(d[P]={}),c=f[d.uniqueID]||(f[d.uniqueID]={}), +l=c[e]||[],p=l[0]===W&&l[1],x=p&&l[2],d=p&&m.childNodes[p];d=++p&&d&&d[g]||(x=p=0)||h.pop();)if(1===d.nodeType&&++x&&d===t){c[e]=[W,p,x];break}}else if(v&&(d=t,f=d[P]||(d[P]={}),c=f[d.uniqueID]||(f[d.uniqueID]={}),l=c[e]||[],p=l[0]===W&&l[1],x=p),x===!1)for(;(d=++p&&d&&d[g]||(x=p=0)||h.pop())&&((s?d.nodeName.toLowerCase()!==y:1!==d.nodeType)||!++x||(v&&(f=d[P]||(d[P]={}),c=f[d.uniqueID]||(f[d.uniqueID]={}),c[e]=[W,x]),d!==t)););return x-=i,x===r||x%r===0&&x/r>=0}}},PSEUDO:function(e,n){var i,o=T.pseudos[e]||T.setFilters[e.toLowerCase()]||t.error("unsupported pseudo: "+e);return o[P]?o(n):o.length>1?(i=[e,e,"",n],T.setFilters.hasOwnProperty(e.toLowerCase())?r(function(e,t){for(var r,i=o(e,n),a=i.length;a--;)r=ee(e,i[a]),e[r]=!(t[r]=i[a])}):function(e){return o(e,0,i)}):o}},pseudos:{not:r(function(e){var t=[],n=[],i=k(e.replace(se,"$1"));return i[P]?r(function(e,t,n,r){for(var o,a=i(e,null,r,[]),s=e.length;s--;)(o=a[s])&&(e[s]=!(t[s]=o))}):function(e,r,o){return t[0]=e,i(t,null,o,n),t[0]=null,!n.pop()}}),has:r(function(e){return function(n){return t(e,n).length>0}}),contains:r(function(e){return e=e.replace(be,we),function(t){return(t.textContent||t.innerText||C(t)).indexOf(e)>-1}}),lang:r(function(e){return de.test(e||"")||t.error("unsupported lang: "+e),e=e.replace(be,we).toLowerCase(),function(t){var n;do if(n=_?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return n=n.toLowerCase(),n===e||0===n.indexOf(e+"-");while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===q},focus:function(e){return e===H.activeElement&&(!H.hasFocus||H.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!T.pseudos.empty(e)},header:function(e){return ge.test(e.nodeName)},input:function(e){return he.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:l(function(){return[0]}),last:l(function(e,t){return[t-1]}),eq:l(function(e,t,n){return[n<0?n+t:n]}),even:l(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:l(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:l(function(e,t,n){for(var r=n<0?n+t:n;--r>=0;)e.push(r);return e}),gt:l(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}},T.pseudos.nth=T.pseudos.eq;for(b in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})T.pseudos[b]=s(b);for(b in{submit:!0,reset:!0})T.pseudos[b]=u(b);return f.prototype=T.filters=T.pseudos,T.setFilters=new f,N=t.tokenize=function(e,n){var r,i,o,a,s,u,l,c=z[e+" "];if(c)return n?0:c.slice(0);for(s=e,u=[],l=T.preFilter;s;){r&&!(i=ue.exec(s))||(i&&(s=s.slice(i[0].length)||s),u.push(o=[])),r=!1,(i=le.exec(s))&&(r=i.shift(),o.push({value:r,type:i[0].replace(se," ")}),s=s.slice(r.length));for(a in T.filter)!(i=pe[a].exec(s))||l[a]&&!(i=l[a](i))||(r=i.shift(),o.push({value:r,type:a,matches:i}),s=s.slice(r.length));if(!r)break}return n?s.length:s?t.error(e):z(e,u).slice(0)},k=t.compile=function(e,t){var n,r=[],i=[],o=X[e+" "];if(!o){for(t||(t=N(e)),n=t.length;n--;)o=v(t[n]),o[P]?r.push(o):i.push(o);o=X(e,x(i,r)),o.selector=e}return o},S=t.select=function(e,t,n,r){var i,o,a,s,u,l="function"==typeof e&&e,f=!r&&N(e=l.selector||e);if(n=n||[],1===f.length){if(o=f[0]=f[0].slice(0),o.length>2&&"ID"===(a=o[0]).type&&w.getById&&9===t.nodeType&&_&&T.relative[o[1].type]){if(t=(T.find.ID(a.matches[0].replace(be,we),t)||[])[0],!t)return n;l&&(t=t.parentNode),e=e.slice(o.shift().value.length)}for(i=pe.needsContext.test(e)?0:o.length;i--&&(a=o[i],!T.relative[s=a.type]);)if((u=T.find[s])&&(r=u(a.matches[0].replace(be,we),ve.test(o[0].type)&&c(t.parentNode)||t))){if(o.splice(i,1),e=r.length&&d(o),!e)return Q.apply(n,r),n;break}}return(l||k(e,f))(r,t,!_,n,!t||ve.test(e)&&c(t.parentNode)||t),n},w.sortStable=P.split("").sort(U).join("")===P,w.detectDuplicates=!!j,L(),w.sortDetached=i(function(e){return 1&e.compareDocumentPosition(H.createElement("div"))}),i(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||o("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),w.attributes&&i(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||o("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),i(function(e){return null==e.getAttribute("disabled")})||o(te,function(e,t,n){var r;if(!n)return e[t]===!0?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),t}(e);pe.find=ve,pe.expr=ve.selectors,pe.expr[":"]=pe.expr.pseudos,pe.uniqueSort=pe.unique=ve.uniqueSort,pe.text=ve.getText,pe.isXMLDoc=ve.isXML,pe.contains=ve.contains;var xe=function(e,t,n){for(var r=[],i=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(i&&pe(e).is(n))break;r.push(e)}return r},be=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},we=pe.expr.match.needsContext,Te=/^<([\w-]+)\s*\/?>(?:<\/\1>|)$/,Ce=/^.[^:#\[\.,]*$/;pe.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?pe.find.matchesSelector(r,e)?[r]:[]:pe.find.matches(e,pe.grep(t,function(e){return 1===e.nodeType}))},pe.fn.extend({find:function(e){var t,n=[],r=this,i=r.length;if("string"!=typeof e)return this.pushStack(pe(e).filter(function(){for(t=0;t<i;t++)if(pe.contains(r[t],this))return!0}));for(t=0;t<i;t++)pe.find(e,r[t],n);return n=this.pushStack(i>1?pe.unique(n):n),n.selector=this.selector?this.selector+" "+e:e,n},filter:function(e){return this.pushStack(r(this,e||[],!1))},not:function(e){return this.pushStack(r(this,e||[],!0))},is:function(e){return!!r(this,"string"==typeof e&&we.test(e)?pe(e):e||[],!1).length}});var Ee,Ne=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,ke=pe.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||Ee,"string"==typeof e){if(r="<"===e.charAt(0)&&">"===e.charAt(e.length-1)&&e.length>=3?[null,e,null]:Ne.exec(e),!r||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof pe?t[0]:t,pe.merge(this,pe.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:re,!0)),Te.test(r[1])&&pe.isPlainObject(t))for(r in t)pe.isFunction(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}if(i=re.getElementById(r[2]),i&&i.parentNode){if(i.id!==r[2])return Ee.find(e);this.length=1,this[0]=i}return this.context=re,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):pe.isFunction(e)?"undefined"!=typeof n.ready?n.ready(e):e(pe):(void 0!==e.selector&&(this.selector=e.selector,this.context=e.context),pe.makeArray(e,this))};ke.prototype=pe.fn,Ee=pe(re);var Se=/^(?:parents|prev(?:Until|All))/,Ae={children:!0,contents:!0,next:!0,prev:!0};pe.fn.extend({has:function(e){var t,n=pe(e,this),r=n.length;return this.filter(function(){for(t=0;t<r;t++)if(pe.contains(this,n[t]))return!0})},closest:function(e,t){for(var n,r=0,i=this.length,o=[],a=we.test(e)||"string"!=typeof e?pe(e,t||this.context):0;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?a.index(n)>-1:1===n.nodeType&&pe.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?pe.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?pe.inArray(this[0],pe(e)):pe.inArray(e.jquery?e[0]:e,this):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(pe.uniqueSort(pe.merge(this.get(),pe(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),pe.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return xe(e,"parentNode")},parentsUntil:function(e,t,n){return xe(e,"parentNode",n)},next:function(e){return i(e,"nextSibling")},prev:function(e){return i(e,"previousSibling")},nextAll:function(e){return xe(e,"nextSibling")},prevAll:function(e){return xe(e,"previousSibling")},nextUntil:function(e,t,n){return xe(e,"nextSibling",n)},prevUntil:function(e,t,n){return xe(e,"previousSibling",n)},siblings:function(e){return be((e.parentNode||{}).firstChild,e)},children:function(e){return be(e.firstChild)},contents:function(e){return pe.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:pe.merge([],e.childNodes)}},function(e,t){pe.fn[e]=function(n,r){var i=pe.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=pe.filter(r,i)),this.length>1&&(Ae[e]||(i=pe.uniqueSort(i)),Se.test(e)&&(i=i.reverse())),this.pushStack(i)}});var De=/\S+/g;pe.Callbacks=function(e){e="string"==typeof e?o(e):pe.extend({},e);var t,n,r,i,a=[],s=[],u=-1,l=function(){for(i=e.once,r=t=!0;s.length;u=-1)for(n=s.shift();++u<a.length;)a[u].apply(n[0],n[1])===!1&&e.stopOnFalse&&(u=a.length,n=!1);e.memory||(n=!1),t=!1,i&&(a=n?[]:"")},c={add:function(){return a&&(n&&!t&&(u=a.length-1,s.push(n)),function r(t){pe.each(t,function(t,n){pe.isFunction(n)?e.unique&&c.has(n)||a.push(n):n&&n.length&&"string"!==pe.type(n)&&r(n)})}(arguments),n&&!t&&l()),this},remove:function(){return pe.each(arguments,function(e,t){for(var n;(n=pe.inArray(t,a,n))>-1;)a.splice(n,1),n<=u&&u--}),this},has:function(e){return e?pe.inArray(e,a)>-1:a.length>0},empty:function(){return a&&(a=[]),this},disable:function(){return i=s=[],a=n="",this},disabled:function(){return!a},lock:function(){return i=!0,n||c.disable(),this},locked:function(){return!!i},fireWith:function(e,n){return i||(n=n||[],n=[e,n.slice?n.slice():n],s.push(n),t||l()),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!r}};return c},pe.extend({Deferred:function(e){var t=[["resolve","done",pe.Callbacks("once memory"),"resolved"],["reject","fail",pe.Callbacks("once memory"),"rejected"],["notify","progress",pe.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return pe.Deferred(function(n){pe.each(t,function(t,o){var a=pe.isFunction(e[t])&&e[t];i[o[1]](function(){var e=a&&a.apply(this,arguments);e&&pe.isFunction(e.promise)?e.promise().progress(n.notify).done(n.resolve).fail(n.reject):n[o[0]+"With"](this===r?n.promise():this,a?[e]:arguments)})}),e=null}).promise()},promise:function(e){return null!=e?pe.extend(e,r):r}},i={};return r.pipe=r.then,pe.each(t,function(e,o){var a=o[2],s=o[3];r[o[1]]=a.add,s&&a.add(function(){n=s},t[1^e][2].disable,t[2][2].lock),i[o[0]]=function(){return i[o[0]+"With"](this===i?r:this,arguments),this},i[o[0]+"With"]=a.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t,n,r,i=0,o=ie.call(arguments),a=o.length,s=1!==a||e&&pe.isFunction(e.promise)?a:0,u=1===s?e:pe.Deferred(),l=function(e,n,r){return function(i){n[e]=this,r[e]=arguments.length>1?ie.call(arguments):i,r===t?u.notifyWith(n,r):--s||u.resolveWith(n,r)}};if(a>1)for(t=new Array(a),n=new Array(a),r=new Array(a);i<a;i++)o[i]&&pe.isFunction(o[i].promise)?o[i].promise().progress(l(i,n,t)).done(l(i,r,o)).fail(u.reject):--s;return s||u.resolveWith(r,o),u.promise()}});var je;pe.fn.ready=function(e){return pe.ready.promise().done(e),this},pe.extend({isReady:!1,readyWait:1,holdReady:function(e){e?pe.readyWait++:pe.ready(!0)},ready:function(e){(e===!0?--pe.readyWait:pe.isReady)||(pe.isReady=!0,e!==!0&&--pe.readyWait>0||(je.resolveWith(re,[pe]),pe.fn.triggerHandler&&(pe(re).triggerHandler("ready"),pe(re).off("ready"))))}}),pe.ready.promise=function(t){if(!je)if(je=pe.Deferred(),"complete"===re.readyState||"loading"!==re.readyState&&!re.documentElement.doScroll)e.setTimeout(pe.ready);else if(re.addEventListener)re.addEventListener("DOMContentLoaded",s),e.addEventListener("load",s);else{re.attachEvent("onreadystatechange",s),e.attachEvent("onload",s);var n=!1;try{n=null==e.frameElement&&re.documentElement}catch(r){}n&&n.doScroll&&!function i(){if(!pe.isReady){try{n.doScroll("left")}catch(t){return e.setTimeout(i,50)}a(),pe.ready()}}()}return je.promise(t)},pe.ready.promise();var Le;for(Le in pe(fe))break;fe.ownFirst="0"===Le,fe.inlineBlockNeedsLayout=!1,pe(function(){var e,t,n,r;n=re.getElementsByTagName("body")[0],n&&n.style&&(t=re.createElement("div"),r=re.createElement("div"),r.style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px",n.appendChild(r).appendChild(t),"undefined"!=typeof t.style.zoom&&(t.style.cssText="display:inline;margin:0;border:0;padding:1px;width:1px;zoom:1",fe.inlineBlockNeedsLayout=e=3===t.offsetWidth,e&&(n.style.zoom=1)),n.removeChild(r))}),function(){var e=re.createElement("div");fe.deleteExpando=!0;try{delete e.test}catch(t){fe.deleteExpando=!1}e=null}();var He=function(e){var t=pe.noData[(e.nodeName+" ").toLowerCase()],n=+e.nodeType||1;return(1===n||9===n)&&(!t||t!==!0&&e.getAttribute("classid")===t)},qe=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,_e=/([A-Z])/g;pe.extend({cache:{},noData:{"applet ":!0,"embed ":!0,"object ":"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"},hasData:function(e){return e=e.nodeType?pe.cache[e[pe.expando]]:e[pe.expando],!!e&&!l(e)},data:function(e,t,n){return c(e,t,n)},removeData:function(e,t){return f(e,t)},_data:function(e,t,n){return c(e,t,n,!0)},_removeData:function(e,t){return f(e,t,!0)}}),pe.fn.extend({data:function(e,t){var n,r,i,o=this[0],a=o&&o.attributes;if(void 0===e){if(this.length&&(i=pe.data(o),1===o.nodeType&&!pe._data(o,"parsedAttrs"))){for(n=a.length;n--;)a[n]&&(r=a[n].name,0===r.indexOf("data-")&&(r=pe.camelCase(r.slice(5)),u(o,r,i[r])));pe._data(o,"parsedAttrs",!0)}return i}return"object"==typeof e?this.each(function(){pe.data(this,e)}):arguments.length>1?this.each(function(){pe.data(this,e,t)}):o?u(o,e,pe.data(o,e)):void 0},removeData:function(e){return this.each(function(){pe.removeData(this,e)})}}),pe.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=pe._data(e,t),n&&(!r||pe.isArray(n)?r=pe._data(e,t,pe.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=pe.queue(e,t),r=n.length,i=n.shift(),o=pe._queueHooks(e,t),a=function(){pe.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return pe._data(e,n)||pe._data(e,n,{empty:pe.Callbacks("once memory").add(function(){pe._removeData(e,t+"queue"),pe._removeData(e,n)})})}}),pe.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length<n?pe.queue(this[0],e):void 0===t?this:this.each(function(){var n=pe.queue(this,e,t);pe._queueHooks(this,e),"fx"===e&&"inprogress"!==n[0]&&pe.dequeue(this,e)})},dequeue:function(e){return this.each(function(){pe.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=pe.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};for("string"!=typeof e&&(t=e,e=void 0),e=e||"fx";a--;)n=pe._data(o[a],e+"queueHooks"),n&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}}),function(){var e;fe.shrinkWrapBlocks=function(){if(null!=e)return e;e=!1;var t,n,r;return n=re.getElementsByTagName("body")[0],n&&n.style?(t=re.createElement("div"),r=re.createElement("div"),r.style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px",n.appendChild(r).appendChild(t),"undefined"!=typeof t.style.zoom&&(t.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:1px;width:1px;zoom:1",t.appendChild(re.createElement("div")).style.width="5px",e=3!==t.offsetWidth),n.removeChild(r),e):void 0}}();var Fe=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,Me=new RegExp("^(?:([+-])=|)("+Fe+")([a-z%]*)$","i"),Oe=["Top","Right","Bottom","Left"],Re=function(e,t){return e=t||e,"none"===pe.css(e,"display")||!pe.contains(e.ownerDocument,e)},Pe=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if("object"===pe.type(n)){i=!0;for(s in n)Pe(e,t,s,n[s],!0,o,a)}else if(void 0!==r&&(i=!0,pe.isFunction(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(pe(e),n)})),t))for(;s<u;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},Be=/^(?:checkbox|radio)$/i,We=/<([\w:-]+)/,Ie=/^$|\/(?:java|ecma)script/i,$e=/^\s+/,ze="abbr|article|aside|audio|bdi|canvas|data|datalist|details|dialog|figcaption|figure|footer|header|hgroup|main|mark|meter|nav|output|picture|progress|section|summary|template|time|video";!function(){var e=re.createElement("div"),t=re.createDocumentFragment(),n=re.createElement("input");e.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",fe.leadingWhitespace=3===e.firstChild.nodeType,fe.tbody=!e.getElementsByTagName("tbody").length,fe.htmlSerialize=!!e.getElementsByTagName("link").length,fe.html5Clone="<:nav></:nav>"!==re.createElement("nav").cloneNode(!0).outerHTML,n.type="checkbox",n.checked=!0,t.appendChild(n),fe.appendChecked=n.checked,e.innerHTML="<textarea>x</textarea>",fe.noCloneChecked=!!e.cloneNode(!0).lastChild.defaultValue,t.appendChild(e),n=re.createElement("input"),n.setAttribute("type","radio"),n.setAttribute("checked","checked"),n.setAttribute("name","t"),e.appendChild(n),fe.checkClone=e.cloneNode(!0).cloneNode(!0).lastChild.checked,fe.noCloneEvent=!!e.addEventListener,e[pe.expando]=1,fe.attributes=!e.getAttribute(pe.expando)}();var Xe={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],area:[1,"<map>","</map>"],param:[1,"<object>","</object>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:fe.htmlSerialize?[0,"",""]:[1,"X<div>","</div>"]};Xe.optgroup=Xe.option,Xe.tbody=Xe.tfoot=Xe.colgroup=Xe.caption=Xe.thead,Xe.th=Xe.td;var Ue=/<|&#?\w+;/,Ve=/<tbody/i;!function(){var t,n,r=re.createElement("div");for(t in{submit:!0,change:!0,focusin:!0})n="on"+t,(fe[t]=n in e)||(r.setAttribute(n,"t"),fe[t]=r.attributes[n].expando===!1);r=null}();var Ye=/^(?:input|select|textarea)$/i,Je=/^key/,Ge=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ke=/^(?:focusinfocus|focusoutblur)$/,Qe=/^([^.]*)(?:\.(.+)|)/;pe.event={global:{},add:function(e,t,n,r,i){var o,a,s,u,l,c,f,d,p,h,g,m=pe._data(e);if(m){for(n.handler&&(u=n,n=u.handler,i=u.selector),n.guid||(n.guid=pe.guid++),(a=m.events)||(a=m.events={}),(c=m.handle)||(c=m.handle=function(e){return"undefined"==typeof pe||e&&pe.event.triggered===e.type?void 0:pe.event.dispatch.apply(c.elem,arguments)},c.elem=e),t=(t||"").match(De)||[""],s=t.length;s--;)o=Qe.exec(t[s])||[],p=g=o[1],h=(o[2]||"").split(".").sort(),p&&(l=pe.event.special[p]||{},p=(i?l.delegateType:l.bindType)||p,l=pe.event.special[p]||{},f=pe.extend({type:p,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&pe.expr.match.needsContext.test(i),namespace:h.join(".")},u),(d=a[p])||(d=a[p]=[],d.delegateCount=0,l.setup&&l.setup.call(e,r,h,c)!==!1||(e.addEventListener?e.addEventListener(p,c,!1):e.attachEvent&&e.attachEvent("on"+p,c))),l.add&&(l.add.call(e,f),f.handler.guid||(f.handler.guid=n.guid)),i?d.splice(d.delegateCount++,0,f):d.push(f),pe.event.global[p]=!0);e=null}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,d,p,h,g,m=pe.hasData(e)&&pe._data(e);if(m&&(c=m.events)){for(t=(t||"").match(De)||[""],l=t.length;l--;)if(s=Qe.exec(t[l])||[],p=g=s[1],h=(s[2]||"").split(".").sort(),p){for(f=pe.event.special[p]||{},p=(r?f.delegateType:f.bindType)||p,d=c[p]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),u=o=d.length;o--;)a=d[o],!i&&g!==a.origType||n&&n.guid!==a.guid||s&&!s.test(a.namespace)||r&&r!==a.selector&&("**"!==r||!a.selector)||(d.splice(o,1),a.selector&&d.delegateCount--,f.remove&&f.remove.call(e,a));u&&!d.length&&(f.teardown&&f.teardown.call(e,h,m.handle)!==!1||pe.removeEvent(e,p,m.handle),delete c[p])}else for(p in c)pe.event.remove(e,p+t[l],n,r,!0);pe.isEmptyObject(c)&&(delete m.handle,pe._removeData(e,"events"))}},trigger:function(t,n,r,i){var o,a,s,u,l,c,f,d=[r||re],p=ce.call(t,"type")?t.type:t,h=ce.call(t,"namespace")?t.namespace.split("."):[];if(s=c=r=r||re,3!==r.nodeType&&8!==r.nodeType&&!Ke.test(p+pe.event.triggered)&&(p.indexOf(".")>-1&&(h=p.split("."),p=h.shift(),h.sort()),a=p.indexOf(":")<0&&"on"+p,t=t[pe.expando]?t:new pe.Event(p,"object"==typeof t&&t),t.isTrigger=i?2:3,t.namespace=h.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=r),n=null==n?[t]:pe.makeArray(n,[t]),l=pe.event.special[p]||{},i||!l.trigger||l.trigger.apply(r,n)!==!1)){if(!i&&!l.noBubble&&!pe.isWindow(r)){for(u=l.delegateType||p,Ke.test(u+p)||(s=s.parentNode);s;s=s.parentNode)d.push(s),c=s;c===(r.ownerDocument||re)&&d.push(c.defaultView||c.parentWindow||e)}for(f=0;(s=d[f++])&&!t.isPropagationStopped();)t.type=f>1?u:l.bindType||p,o=(pe._data(s,"events")||{})[t.type]&&pe._data(s,"handle"),o&&o.apply(s,n),o=a&&s[a],o&&o.apply&&He(s)&&(t.result=o.apply(s,n),t.result===!1&&t.preventDefault());if(t.type=p,!i&&!t.isDefaultPrevented()&&(!l._default||l._default.apply(d.pop(),n)===!1)&&He(r)&&a&&r[p]&&!pe.isWindow(r)){c=r[a],c&&(r[a]=null),pe.event.triggered=p;try{r[p]()}catch(g){}pe.event.triggered=void 0,c&&(r[a]=c)}return t.result}},dispatch:function(e){e=pe.event.fix(e);var t,n,r,i,o,a=[],s=ie.call(arguments),u=(pe._data(this,"events")||{})[e.type]||[],l=pe.event.special[e.type]||{};if(s[0]=e,e.delegateTarget=this,!l.preDispatch||l.preDispatch.call(this,e)!==!1){for(a=pe.event.handlers.call(this,e,u),t=0;(i=a[t++])&&!e.isPropagationStopped();)for(e.currentTarget=i.elem,n=0;(o=i.handlers[n++])&&!e.isImmediatePropagationStopped();)e.rnamespace&&!e.rnamespace.test(o.namespace)||(e.handleObj=o,e.data=o.data,r=((pe.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,s),void 0!==r&&(e.result=r)===!1&&(e.preventDefault(),e.stopPropagation()));return l.postDispatch&&l.postDispatch.call(this,e),e.result}},handlers:function(e,t){var n,r,i,o,a=[],s=t.delegateCount,u=e.target;if(s&&u.nodeType&&("click"!==e.type||isNaN(e.button)||e.button<1))for(;u!=this;u=u.parentNode||this)if(1===u.nodeType&&(u.disabled!==!0||"click"!==e.type)){for(r=[],n=0;n<s;n++)o=t[n],i=o.selector+" ",void 0===r[i]&&(r[i]=o.needsContext?pe(i,this).index(u)>-1:pe.find(i,this,null,[u]).length),r[i]&&r.push(o);r.length&&a.push({elem:u,handlers:r})}return s<t.length&&a.push({elem:this,handlers:t.slice(s)}),a},fix:function(e){if(e[pe.expando])return e;var t,n,r,i=e.type,o=e,a=this.fixHooks[i];for(a||(this.fixHooks[i]=a=Ge.test(i)?this.mouseHooks:Je.test(i)?this.keyHooks:{}),r=a.props?this.props.concat(a.props):this.props,e=new pe.Event(o),t=r.length;t--;)n=r[t],e[n]=o[n];return e.target||(e.target=o.srcElement||re),3===e.target.nodeType&&(e.target=e.target.parentNode),e.metaKey=!!e.metaKey,a.filter?a.filter(e,o):e},props:"altKey bubbles cancelable ctrlKey currentTarget detail eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(e,t){return null==e.which&&(e.which=null!=t.charCode?t.charCode:t.keyCode),e}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(e,t){var n,r,i,o=t.button,a=t.fromElement;return null==e.pageX&&null!=t.clientX&&(r=e.target.ownerDocument||re,i=r.documentElement,n=r.body,e.pageX=t.clientX+(i&&i.scrollLeft||n&&n.scrollLeft||0)-(i&&i.clientLeft||n&&n.clientLeft||0),e.pageY=t.clientY+(i&&i.scrollTop||n&&n.scrollTop||0)-(i&&i.clientTop||n&&n.clientTop||0)),!e.relatedTarget&&a&&(e.relatedTarget=a===e.target?t.toElement:a),e.which||void 0===o||(e.which=1&o?1:2&o?3:4&o?2:0),e}},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==b()&&this.focus)try{return this.focus(),!1}catch(e){}},delegateType:"focusin"},blur:{trigger:function(){if(this===b()&&this.blur)return this.blur(),!1},delegateType:"focusout"},click:{trigger:function(){if(pe.nodeName(this,"input")&&"checkbox"===this.type&&this.click)return this.click(),!1},_default:function(e){return pe.nodeName(e.target,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}},simulate:function(e,t,n){var r=pe.extend(new pe.Event,n,{type:e,isSimulated:!0});pe.event.trigger(r,null,t),r.isDefaultPrevented()&&n.preventDefault()}},pe.removeEvent=re.removeEventListener?function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)}:function(e,t,n){var r="on"+t;e.detachEvent&&("undefined"==typeof e[r]&&(e[r]=null),e.detachEvent(r,n))},pe.Event=function(e,t){return this instanceof pe.Event?(e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&e.returnValue===!1?v:x):this.type=e,t&&pe.extend(this,t),this.timeStamp=e&&e.timeStamp||pe.now(),void(this[pe.expando]=!0)):new pe.Event(e,t)},pe.Event.prototype={constructor:pe.Event,isDefaultPrevented:x,isPropagationStopped:x,isImmediatePropagationStopped:x,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=v,e&&(e.preventDefault?e.preventDefault():e.returnValue=!1)},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=v,e&&!this.isSimulated&&(e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!0)},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=v,e&&e.stopImmediatePropagation&&e.stopImmediatePropagation(),this.stopPropagation()}},pe.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,t){pe.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;return i&&(i===r||pe.contains(r,i))||(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}}),fe.submit||(pe.event.special.submit={setup:function(){return!pe.nodeName(this,"form")&&void pe.event.add(this,"click._submit keypress._submit",function(e){var t=e.target,n=pe.nodeName(t,"input")||pe.nodeName(t,"button")?pe.prop(t,"form"):void 0;n&&!pe._data(n,"submit")&&(pe.event.add(n,"submit._submit",function(e){e._submitBubble=!0}),pe._data(n,"submit",!0))})},postDispatch:function(e){e._submitBubble&&(delete e._submitBubble,this.parentNode&&!e.isTrigger&&pe.event.simulate("submit",this.parentNode,e))},teardown:function(){return!pe.nodeName(this,"form")&&void pe.event.remove(this,"._submit")}}),fe.change||(pe.event.special.change={setup:function(){return Ye.test(this.nodeName)?("checkbox"!==this.type&&"radio"!==this.type||(pe.event.add(this,"propertychange._change",function(e){"checked"===e.originalEvent.propertyName&&(this._justChanged=!0)}),pe.event.add(this,"click._change",function(e){this._justChanged&&!e.isTrigger&&(this._justChanged=!1),pe.event.simulate("change",this,e)})),!1):void pe.event.add(this,"beforeactivate._change",function(e){var t=e.target;Ye.test(t.nodeName)&&!pe._data(t,"change")&&(pe.event.add(t,"change._change",function(e){!this.parentNode||e.isSimulated||e.isTrigger||pe.event.simulate("change",this.parentNode,e)}),pe._data(t,"change",!0))})},handle:function(e){var t=e.target;if(this!==t||e.isSimulated||e.isTrigger||"radio"!==t.type&&"checkbox"!==t.type)return e.handleObj.handler.apply(this,arguments)},teardown:function(){return pe.event.remove(this,"._change"),!Ye.test(this.nodeName)}}),fe.focusin||pe.each({focus:"focusin",blur:"focusout"},function(e,t){var n=function(e){pe.event.simulate(t,e.target,pe.event.fix(e))};pe.event.special[t]={setup:function(){var r=this.ownerDocument||this,i=pe._data(r,t);i||r.addEventListener(e,n,!0),pe._data(r,t,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this,i=pe._data(r,t)-1;i?pe._data(r,t,i):(r.removeEventListener(e,n,!0),pe._removeData(r,t))}}}),pe.fn.extend({on:function(e,t,n,r){return w(this,e,t,n,r)},one:function(e,t,n,r){return w(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,pe(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return t!==!1&&"function"!=typeof t||(n=t,t=void 0),n===!1&&(n=x),this.each(function(){pe.event.remove(this,e,n,t)})},trigger:function(e,t){return this.each(function(){pe.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return pe.event.trigger(e,t,n,!0)}});var Ze=/ jQuery\d+="(?:null|\d+)"/g,et=new RegExp("<(?:"+ze+")[\\s/>]","i"),tt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,nt=/<script|<style|<link/i,rt=/checked\s*(?:[^=]|=\s*.checked.)/i,it=/^true\/(.*)/,ot=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,at=p(re),st=at.appendChild(re.createElement("div"));pe.extend({htmlPrefilter:function(e){return e.replace(tt,"<$1></$2>")},clone:function(e,t,n){var r,i,o,a,s,u=pe.contains(e.ownerDocument,e);if(fe.html5Clone||pe.isXMLDoc(e)||!et.test("<"+e.nodeName+">")?o=e.cloneNode(!0):(st.innerHTML=e.outerHTML,st.removeChild(o=st.firstChild)),!(fe.noCloneEvent&&fe.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||pe.isXMLDoc(e)))for(r=h(o),s=h(e),a=0;null!=(i=s[a]);++a)r[a]&&k(i,r[a]);if(t)if(n)for(s=s||h(e),r=r||h(o),a=0;null!=(i=s[a]);a++)N(i,r[a]);else N(e,o);return r=h(o,"script"),r.length>0&&g(r,!u&&h(e,"script")),r=s=i=null,o},cleanData:function(e,t){for(var n,r,i,o,a=0,s=pe.expando,u=pe.cache,l=fe.attributes,c=pe.event.special;null!=(n=e[a]);a++)if((t||He(n))&&(i=n[s],o=i&&u[i])){if(o.events)for(r in o.events)c[r]?pe.event.remove(n,r):pe.removeEvent(n,r,o.handle);u[i]&&(delete u[i],l||"undefined"==typeof n.removeAttribute?n[s]=void 0:n.removeAttribute(s),ne.push(i))}}}),pe.fn.extend({domManip:S,detach:function(e){return A(this,e,!0)},remove:function(e){return A(this,e)},text:function(e){return Pe(this,function(e){return void 0===e?pe.text(this):this.empty().append((this[0]&&this[0].ownerDocument||re).createTextNode(e))},null,e,arguments.length)},append:function(){return S(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=T(this,e);t.appendChild(e)}})},prepend:function(){return S(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=T(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return S(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return S(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++){for(1===e.nodeType&&pe.cleanData(h(e,!1));e.firstChild;)e.removeChild(e.firstChild);e.options&&pe.nodeName(e,"select")&&(e.options.length=0)}return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return pe.clone(this,e,t)})},html:function(e){return Pe(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e)return 1===t.nodeType?t.innerHTML.replace(Ze,""):void 0;if("string"==typeof e&&!nt.test(e)&&(fe.htmlSerialize||!et.test(e))&&(fe.leadingWhitespace||!$e.test(e))&&!Xe[(We.exec(e)||["",""])[1].toLowerCase()]){e=pe.htmlPrefilter(e);try{for(;n<r;n++)t=this[n]||{},1===t.nodeType&&(pe.cleanData(h(t,!1)),t.innerHTML=e);t=0}catch(i){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=[];return S(this,arguments,function(t){var n=this.parentNode;pe.inArray(this,e)<0&&(pe.cleanData(h(this)), +n&&n.replaceChild(t,this))},e)}}),pe.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){pe.fn[e]=function(e){for(var n,r=0,i=[],o=pe(e),a=o.length-1;r<=a;r++)n=r===a?this:this.clone(!0),pe(o[r])[t](n),ae.apply(i,n.get());return this.pushStack(i)}});var ut,lt={HTML:"block",BODY:"block"},ct=/^margin/,ft=new RegExp("^("+Fe+")(?!px)[a-z%]+$","i"),dt=function(e,t,n,r){var i,o,a={};for(o in t)a[o]=e.style[o],e.style[o]=t[o];i=n.apply(e,r||[]);for(o in t)e.style[o]=a[o];return i},pt=re.documentElement;!function(){function t(){var t,c,f=re.documentElement;f.appendChild(u),l.style.cssText="-webkit-box-sizing:border-box;box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%",n=i=s=!1,r=a=!0,e.getComputedStyle&&(c=e.getComputedStyle(l),n="1%"!==(c||{}).top,s="2px"===(c||{}).marginLeft,i="4px"===(c||{width:"4px"}).width,l.style.marginRight="50%",r="4px"===(c||{marginRight:"4px"}).marginRight,t=l.appendChild(re.createElement("div")),t.style.cssText=l.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",t.style.marginRight=t.style.width="0",l.style.width="1px",a=!parseFloat((e.getComputedStyle(t)||{}).marginRight),l.removeChild(t)),l.style.display="none",o=0===l.getClientRects().length,o&&(l.style.display="",l.innerHTML="<table><tr><td></td><td>t</td></tr></table>",t=l.getElementsByTagName("td"),t[0].style.cssText="margin:0;border:0;padding:0;display:none",o=0===t[0].offsetHeight,o&&(t[0].style.display="",t[1].style.display="none",o=0===t[0].offsetHeight)),f.removeChild(u)}var n,r,i,o,a,s,u=re.createElement("div"),l=re.createElement("div");l.style&&(l.style.cssText="float:left;opacity:.5",fe.opacity="0.5"===l.style.opacity,fe.cssFloat=!!l.style.cssFloat,l.style.backgroundClip="content-box",l.cloneNode(!0).style.backgroundClip="",fe.clearCloneStyle="content-box"===l.style.backgroundClip,u=re.createElement("div"),u.style.cssText="border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute",l.innerHTML="",u.appendChild(l),fe.boxSizing=""===l.style.boxSizing||""===l.style.MozBoxSizing||""===l.style.WebkitBoxSizing,pe.extend(fe,{reliableHiddenOffsets:function(){return null==n&&t(),o},boxSizingReliable:function(){return null==n&&t(),i},pixelMarginRight:function(){return null==n&&t(),r},pixelPosition:function(){return null==n&&t(),n},reliableMarginRight:function(){return null==n&&t(),a},reliableMarginLeft:function(){return null==n&&t(),s}}))}();var ht,gt,mt=/^(top|right|bottom|left)$/;e.getComputedStyle?(ht=function(t){var n=t.ownerDocument.defaultView;return n&&n.opener||(n=e),n.getComputedStyle(t)},gt=function(e,t,n){var r,i,o,a,s=e.style;return n=n||ht(e),a=n?n.getPropertyValue(t)||n[t]:void 0,""!==a&&void 0!==a||pe.contains(e.ownerDocument,e)||(a=pe.style(e,t)),n&&!fe.pixelMarginRight()&&ft.test(a)&&ct.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o),void 0===a?a:a+""}):pt.currentStyle&&(ht=function(e){return e.currentStyle},gt=function(e,t,n){var r,i,o,a,s=e.style;return n=n||ht(e),a=n?n[t]:void 0,null==a&&s&&s[t]&&(a=s[t]),ft.test(a)&&!mt.test(t)&&(r=s.left,i=e.runtimeStyle,o=i&&i.left,o&&(i.left=e.currentStyle.left),s.left="fontSize"===t?"1em":a,a=s.pixelLeft+"px",s.left=r,o&&(i.left=o)),void 0===a?a:a+""||"auto"});var yt=/alpha\([^)]*\)/i,vt=/opacity\s*=\s*([^)]*)/i,xt=/^(none|table(?!-c[ea]).+)/,bt=new RegExp("^("+Fe+")(.*)$","i"),wt={position:"absolute",visibility:"hidden",display:"block"},Tt={letterSpacing:"0",fontWeight:"400"},Ct=["Webkit","O","Moz","ms"],Et=re.createElement("div").style;pe.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=gt(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":fe.cssFloat?"cssFloat":"styleFloat"},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=pe.camelCase(t),u=e.style;if(t=pe.cssProps[s]||(pe.cssProps[s]=H(s)||s),a=pe.cssHooks[t]||pe.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:u[t];if(o=typeof n,"string"===o&&(i=Me.exec(n))&&i[1]&&(n=d(e,t,i),o="number"),null!=n&&n===n&&("number"===o&&(n+=i&&i[3]||(pe.cssNumber[s]?"":"px")),fe.clearCloneStyle||""!==n||0!==t.indexOf("background")||(u[t]="inherit"),!(a&&"set"in a&&void 0===(n=a.set(e,n,r)))))try{u[t]=n}catch(l){}}},css:function(e,t,n,r){var i,o,a,s=pe.camelCase(t);return t=pe.cssProps[s]||(pe.cssProps[s]=H(s)||s),a=pe.cssHooks[t]||pe.cssHooks[s],a&&"get"in a&&(o=a.get(e,!0,n)),void 0===o&&(o=gt(e,t,r)),"normal"===o&&t in Tt&&(o=Tt[t]),""===n||n?(i=parseFloat(o),n===!0||isFinite(i)?i||0:o):o}}),pe.each(["height","width"],function(e,t){pe.cssHooks[t]={get:function(e,n,r){if(n)return xt.test(pe.css(e,"display"))&&0===e.offsetWidth?dt(e,wt,function(){return M(e,t,r)}):M(e,t,r)},set:function(e,n,r){var i=r&&ht(e);return _(e,n,r?F(e,t,r,fe.boxSizing&&"border-box"===pe.css(e,"boxSizing",!1,i),i):0)}}}),fe.opacity||(pe.cssHooks.opacity={get:function(e,t){return vt.test((t&&e.currentStyle?e.currentStyle.filter:e.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":t?"1":""},set:function(e,t){var n=e.style,r=e.currentStyle,i=pe.isNumeric(t)?"alpha(opacity="+100*t+")":"",o=r&&r.filter||n.filter||"";n.zoom=1,(t>=1||""===t)&&""===pe.trim(o.replace(yt,""))&&n.removeAttribute&&(n.removeAttribute("filter"),""===t||r&&!r.filter)||(n.filter=yt.test(o)?o.replace(yt,i):o+" "+i)}}),pe.cssHooks.marginRight=L(fe.reliableMarginRight,function(e,t){if(t)return dt(e,{display:"inline-block"},gt,[e,"marginRight"])}),pe.cssHooks.marginLeft=L(fe.reliableMarginLeft,function(e,t){if(t)return(parseFloat(gt(e,"marginLeft"))||(pe.contains(e.ownerDocument,e)?e.getBoundingClientRect().left-dt(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}):0))+"px"}),pe.each({margin:"",padding:"",border:"Width"},function(e,t){pe.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];r<4;r++)i[e+Oe[r]+t]=o[r]||o[r-2]||o[0];return i}},ct.test(e)||(pe.cssHooks[e+t].set=_)}),pe.fn.extend({css:function(e,t){return Pe(this,function(e,t,n){var r,i,o={},a=0;if(pe.isArray(t)){for(r=ht(e),i=t.length;a<i;a++)o[t[a]]=pe.css(e,t[a],!1,r);return o}return void 0!==n?pe.style(e,t,n):pe.css(e,t)},e,t,arguments.length>1)},show:function(){return q(this,!0)},hide:function(){return q(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){Re(this)?pe(this).show():pe(this).hide()})}}),pe.Tween=O,O.prototype={constructor:O,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||pe.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(pe.cssNumber[n]?"":"px")},cur:function(){var e=O.propHooks[this.prop];return e&&e.get?e.get(this):O.propHooks._default.get(this)},run:function(e){var t,n=O.propHooks[this.prop];return this.options.duration?this.pos=t=pe.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):O.propHooks._default.set(this),this}},O.prototype.init.prototype=O.prototype,O.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=pe.css(e.elem,e.prop,""),t&&"auto"!==t?t:0)},set:function(e){pe.fx.step[e.prop]?pe.fx.step[e.prop](e):1!==e.elem.nodeType||null==e.elem.style[pe.cssProps[e.prop]]&&!pe.cssHooks[e.prop]?e.elem[e.prop]=e.now:pe.style(e.elem,e.prop,e.now+e.unit)}}},O.propHooks.scrollTop=O.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},pe.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},pe.fx=O.prototype.init,pe.fx.step={};var Nt,kt,St=/^(?:toggle|show|hide)$/,At=/queueHooks$/;pe.Animation=pe.extend($,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return d(n.elem,e,Me.exec(t),n),n}]},tweener:function(e,t){pe.isFunction(e)?(t=e,e=["*"]):e=e.match(De);for(var n,r=0,i=e.length;r<i;r++)n=e[r],$.tweeners[n]=$.tweeners[n]||[],$.tweeners[n].unshift(t)},prefilters:[W],prefilter:function(e,t){t?$.prefilters.unshift(e):$.prefilters.push(e)}}),pe.speed=function(e,t,n){var r=e&&"object"==typeof e?pe.extend({},e):{complete:n||!n&&t||pe.isFunction(e)&&e,duration:e,easing:n&&t||t&&!pe.isFunction(t)&&t};return r.duration=pe.fx.off?0:"number"==typeof r.duration?r.duration:r.duration in pe.fx.speeds?pe.fx.speeds[r.duration]:pe.fx.speeds._default,null!=r.queue&&r.queue!==!0||(r.queue="fx"),r.old=r.complete,r.complete=function(){pe.isFunction(r.old)&&r.old.call(this),r.queue&&pe.dequeue(this,r.queue)},r},pe.fn.extend({fadeTo:function(e,t,n,r){return this.filter(Re).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=pe.isEmptyObject(e),o=pe.speed(t,n,r),a=function(){var t=$(this,pe.extend({},e),o);(i||pe._data(this,"finish"))&&t.stop(!0)};return a.finish=a,i||o.queue===!1?this.each(a):this.queue(o.queue,a)},stop:function(e,t,n){var r=function(e){var t=e.stop;delete e.stop,t(n)};return"string"!=typeof e&&(n=t,t=e,e=void 0),t&&e!==!1&&this.queue(e||"fx",[]),this.each(function(){var t=!0,i=null!=e&&e+"queueHooks",o=pe.timers,a=pe._data(this);if(i)a[i]&&a[i].stop&&r(a[i]);else for(i in a)a[i]&&a[i].stop&&At.test(i)&&r(a[i]);for(i=o.length;i--;)o[i].elem!==this||null!=e&&o[i].queue!==e||(o[i].anim.stop(n),t=!1,o.splice(i,1));!t&&n||pe.dequeue(this,e)})},finish:function(e){return e!==!1&&(e=e||"fx"),this.each(function(){var t,n=pe._data(this),r=n[e+"queue"],i=n[e+"queueHooks"],o=pe.timers,a=r?r.length:0;for(n.finish=!0,pe.queue(this,e,[]),i&&i.stop&&i.stop.call(this,!0),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop(!0),o.splice(t,1));for(t=0;t<a;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish})}}),pe.each(["toggle","show","hide"],function(e,t){var n=pe.fn[t];pe.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(P(t,!0),e,r,i)}}),pe.each({slideDown:P("show"),slideUp:P("hide"),slideToggle:P("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){pe.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),pe.timers=[],pe.fx.tick=function(){var e,t=pe.timers,n=0;for(Nt=pe.now();n<t.length;n++)e=t[n],e()||t[n]!==e||t.splice(n--,1);t.length||pe.fx.stop(),Nt=void 0},pe.fx.timer=function(e){pe.timers.push(e),e()?pe.fx.start():pe.timers.pop()},pe.fx.interval=13,pe.fx.start=function(){kt||(kt=e.setInterval(pe.fx.tick,pe.fx.interval))},pe.fx.stop=function(){e.clearInterval(kt),kt=null},pe.fx.speeds={slow:600,fast:200,_default:400},pe.fn.delay=function(t,n){return t=pe.fx?pe.fx.speeds[t]||t:t,n=n||"fx",this.queue(n,function(n,r){var i=e.setTimeout(n,t);r.stop=function(){e.clearTimeout(i)}})},function(){var e,t=re.createElement("input"),n=re.createElement("div"),r=re.createElement("select"),i=r.appendChild(re.createElement("option"));n=re.createElement("div"),n.setAttribute("className","t"),n.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",e=n.getElementsByTagName("a")[0],t.setAttribute("type","checkbox"),n.appendChild(t),e=n.getElementsByTagName("a")[0],e.style.cssText="top:1px",fe.getSetAttribute="t"!==n.className,fe.style=/top/.test(e.getAttribute("style")),fe.hrefNormalized="/a"===e.getAttribute("href"),fe.checkOn=!!t.value,fe.optSelected=i.selected,fe.enctype=!!re.createElement("form").enctype,r.disabled=!0,fe.optDisabled=!i.disabled,t=re.createElement("input"),t.setAttribute("value",""),fe.input=""===t.getAttribute("value"),t.value="t",t.setAttribute("type","radio"),fe.radioValue="t"===t.value}();var Dt=/\r/g,jt=/[\x20\t\r\n\f]+/g;pe.fn.extend({val:function(e){var t,n,r,i=this[0];{if(arguments.length)return r=pe.isFunction(e),this.each(function(n){var i;1===this.nodeType&&(i=r?e.call(this,n,pe(this).val()):e,null==i?i="":"number"==typeof i?i+="":pe.isArray(i)&&(i=pe.map(i,function(e){return null==e?"":e+""})),t=pe.valHooks[this.type]||pe.valHooks[this.nodeName.toLowerCase()],t&&"set"in t&&void 0!==t.set(this,i,"value")||(this.value=i))});if(i)return t=pe.valHooks[i.type]||pe.valHooks[i.nodeName.toLowerCase()],t&&"get"in t&&void 0!==(n=t.get(i,"value"))?n:(n=i.value,"string"==typeof n?n.replace(Dt,""):null==n?"":n)}}}),pe.extend({valHooks:{option:{get:function(e){var t=pe.find.attr(e,"value");return null!=t?t:pe.trim(pe.text(e)).replace(jt," ")}},select:{get:function(e){for(var t,n,r=e.options,i=e.selectedIndex,o="select-one"===e.type||i<0,a=o?null:[],s=o?i+1:r.length,u=i<0?s:o?i:0;u<s;u++)if(n=r[u],(n.selected||u===i)&&(fe.optDisabled?!n.disabled:null===n.getAttribute("disabled"))&&(!n.parentNode.disabled||!pe.nodeName(n.parentNode,"optgroup"))){if(t=pe(n).val(),o)return t;a.push(t)}return a},set:function(e,t){for(var n,r,i=e.options,o=pe.makeArray(t),a=i.length;a--;)if(r=i[a],pe.inArray(pe.valHooks.option.get(r),o)>-1)try{r.selected=n=!0}catch(s){r.scrollHeight}else r.selected=!1;return n||(e.selectedIndex=-1),i}}}}),pe.each(["radio","checkbox"],function(){pe.valHooks[this]={set:function(e,t){if(pe.isArray(t))return e.checked=pe.inArray(pe(e).val(),t)>-1}},fe.checkOn||(pe.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})});var Lt,Ht,qt=pe.expr.attrHandle,_t=/^(?:checked|selected)$/i,Ft=fe.getSetAttribute,Mt=fe.input;pe.fn.extend({attr:function(e,t){return Pe(this,pe.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){pe.removeAttr(this,e)})}}),pe.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?pe.prop(e,t,n):(1===o&&pe.isXMLDoc(e)||(t=t.toLowerCase(),i=pe.attrHooks[t]||(pe.expr.match.bool.test(t)?Ht:Lt)),void 0!==n?null===n?void pe.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:(r=pe.find.attr(e,t),null==r?void 0:r))},attrHooks:{type:{set:function(e,t){if(!fe.radioValue&&"radio"===t&&pe.nodeName(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r,i=0,o=t&&t.match(De);if(o&&1===e.nodeType)for(;n=o[i++];)r=pe.propFix[n]||n,pe.expr.match.bool.test(n)?Mt&&Ft||!_t.test(n)?e[r]=!1:e[pe.camelCase("default-"+n)]=e[r]=!1:pe.attr(e,n,""),e.removeAttribute(Ft?n:r)}}),Ht={set:function(e,t,n){return t===!1?pe.removeAttr(e,n):Mt&&Ft||!_t.test(n)?e.setAttribute(!Ft&&pe.propFix[n]||n,n):e[pe.camelCase("default-"+n)]=e[n]=!0,n}},pe.each(pe.expr.match.bool.source.match(/\w+/g),function(e,t){var n=qt[t]||pe.find.attr;Mt&&Ft||!_t.test(t)?qt[t]=function(e,t,r){var i,o;return r||(o=qt[t],qt[t]=i,i=null!=n(e,t,r)?t.toLowerCase():null,qt[t]=o),i}:qt[t]=function(e,t,n){if(!n)return e[pe.camelCase("default-"+t)]?t.toLowerCase():null}}),Mt&&Ft||(pe.attrHooks.value={set:function(e,t,n){return pe.nodeName(e,"input")?void(e.defaultValue=t):Lt&&Lt.set(e,t,n)}}),Ft||(Lt={set:function(e,t,n){var r=e.getAttributeNode(n);if(r||e.setAttributeNode(r=e.ownerDocument.createAttribute(n)),r.value=t+="","value"===n||t===e.getAttribute(n))return t}},qt.id=qt.name=qt.coords=function(e,t,n){var r;if(!n)return(r=e.getAttributeNode(t))&&""!==r.value?r.value:null},pe.valHooks.button={get:function(e,t){var n=e.getAttributeNode(t);if(n&&n.specified)return n.value},set:Lt.set},pe.attrHooks.contenteditable={set:function(e,t,n){Lt.set(e,""!==t&&t,n)}},pe.each(["width","height"],function(e,t){pe.attrHooks[t]={set:function(e,n){if(""===n)return e.setAttribute(t,"auto"),n}}})),fe.style||(pe.attrHooks.style={get:function(e){return e.style.cssText||void 0},set:function(e,t){return e.style.cssText=t+""}});var Ot=/^(?:input|select|textarea|button|object)$/i,Rt=/^(?:a|area)$/i;pe.fn.extend({prop:function(e,t){return Pe(this,pe.prop,e,t,arguments.length>1)},removeProp:function(e){return e=pe.propFix[e]||e,this.each(function(){try{this[e]=void 0,delete this[e]}catch(t){}})}}),pe.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&pe.isXMLDoc(e)||(t=pe.propFix[t]||t,i=pe.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=pe.find.attr(e,"tabindex");return t?parseInt(t,10):Ot.test(e.nodeName)||Rt.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),fe.hrefNormalized||pe.each(["href","src"],function(e,t){pe.propHooks[t]={get:function(e){return e.getAttribute(t,4)}}}),fe.optSelected||(pe.propHooks.selected={get:function(e){var t=e.parentNode;return t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex),null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),pe.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){pe.propFix[this.toLowerCase()]=this}),fe.enctype||(pe.propFix.enctype="encoding");var Pt=/[\t\r\n\f]/g;pe.fn.extend({addClass:function(e){var t,n,r,i,o,a,s,u=0;if(pe.isFunction(e))return this.each(function(t){pe(this).addClass(e.call(this,t,z(this)))});if("string"==typeof e&&e)for(t=e.match(De)||[];n=this[u++];)if(i=z(n),r=1===n.nodeType&&(" "+i+" ").replace(Pt," ")){for(a=0;o=t[a++];)r.indexOf(" "+o+" ")<0&&(r+=o+" ");s=pe.trim(r),i!==s&&pe.attr(n,"class",s)}return this},removeClass:function(e){var t,n,r,i,o,a,s,u=0;if(pe.isFunction(e))return this.each(function(t){pe(this).removeClass(e.call(this,t,z(this)))});if(!arguments.length)return this.attr("class","");if("string"==typeof e&&e)for(t=e.match(De)||[];n=this[u++];)if(i=z(n),r=1===n.nodeType&&(" "+i+" ").replace(Pt," ")){for(a=0;o=t[a++];)for(;r.indexOf(" "+o+" ")>-1;)r=r.replace(" "+o+" "," ");s=pe.trim(r),i!==s&&pe.attr(n,"class",s)}return this},toggleClass:function(e,t){var n=typeof e;return"boolean"==typeof t&&"string"===n?t?this.addClass(e):this.removeClass(e):pe.isFunction(e)?this.each(function(n){pe(this).toggleClass(e.call(this,n,z(this),t),t)}):this.each(function(){var t,r,i,o;if("string"===n)for(r=0,i=pe(this),o=e.match(De)||[];t=o[r++];)i.hasClass(t)?i.removeClass(t):i.addClass(t);else void 0!==e&&"boolean"!==n||(t=z(this),t&&pe._data(this,"__className__",t),pe.attr(this,"class",t||e===!1?"":pe._data(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;for(t=" "+e+" ";n=this[r++];)if(1===n.nodeType&&(" "+z(n)+" ").replace(Pt," ").indexOf(t)>-1)return!0;return!1}}),pe.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(e,t){pe.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),pe.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}});var Bt=e.location,Wt=pe.now(),It=/\?/,$t=/(,)|(\[|{)|(}|])|"(?:[^"\\\r\n]|\\["\\\/bfnrt]|\\u[\da-fA-F]{4})*"\s*:?|true|false|null|-?(?!0\d)\d+(?:\.\d+|)(?:[eE][+-]?\d+|)/g;pe.parseJSON=function(t){if(e.JSON&&e.JSON.parse)return e.JSON.parse(t+"");var n,r=null,i=pe.trim(t+"");return i&&!pe.trim(i.replace($t,function(e,t,i,o){return n&&t&&(r=0),0===r?e:(n=i||t,r+=!o-!i,"")}))?Function("return "+i)():pe.error("Invalid JSON: "+t)},pe.parseXML=function(t){var n,r;if(!t||"string"!=typeof t)return null;try{e.DOMParser?(r=new e.DOMParser,n=r.parseFromString(t,"text/xml")):(n=new e.ActiveXObject("Microsoft.XMLDOM"),n.async="false",n.loadXML(t))}catch(i){n=void 0}return n&&n.documentElement&&!n.getElementsByTagName("parsererror").length||pe.error("Invalid XML: "+t),n};var zt=/#.*$/,Xt=/([?&])_=[^&]*/,Ut=/^(.*?):[ \t]*([^\r\n]*)\r?$/gm,Vt=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Yt=/^(?:GET|HEAD)$/,Jt=/^\/\//,Gt=/^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,Kt={},Qt={},Zt="*/".concat("*"),en=Bt.href,tn=Gt.exec(en.toLowerCase())||[];pe.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:en,type:"GET",isLocal:Vt.test(tn[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Zt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":pe.parseJSON,"text xml":pe.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?V(V(e,pe.ajaxSettings),t):V(pe.ajaxSettings,e)},ajaxPrefilter:X(Kt),ajaxTransport:X(Qt),ajax:function(t,n){function r(t,n,r,i){var o,f,v,x,w,C=n;2!==b&&(b=2,u&&e.clearTimeout(u),c=void 0,s=i||"",T.readyState=t>0?4:0,o=t>=200&&t<300||304===t,r&&(x=Y(d,T,r)),x=J(d,x,T,o),o?(d.ifModified&&(w=T.getResponseHeader("Last-Modified"),w&&(pe.lastModified[a]=w),w=T.getResponseHeader("etag"),w&&(pe.etag[a]=w)),204===t||"HEAD"===d.type?C="nocontent":304===t?C="notmodified":(C=x.state,f=x.data,v=x.error,o=!v)):(v=C,!t&&C||(C="error",t<0&&(t=0))),T.status=t,T.statusText=(n||C)+"",o?g.resolveWith(p,[f,C,T]):g.rejectWith(p,[T,C,v]),T.statusCode(y),y=void 0,l&&h.trigger(o?"ajaxSuccess":"ajaxError",[T,d,o?f:v]),m.fireWith(p,[T,C]),l&&(h.trigger("ajaxComplete",[T,d]),--pe.active||pe.event.trigger("ajaxStop")))}"object"==typeof t&&(n=t,t=void 0),n=n||{};var i,o,a,s,u,l,c,f,d=pe.ajaxSetup({},n),p=d.context||d,h=d.context&&(p.nodeType||p.jquery)?pe(p):pe.event,g=pe.Deferred(),m=pe.Callbacks("once memory"),y=d.statusCode||{},v={},x={},b=0,w="canceled",T={readyState:0,getResponseHeader:function(e){var t;if(2===b){if(!f)for(f={};t=Ut.exec(s);)f[t[1].toLowerCase()]=t[2];t=f[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return 2===b?s:null},setRequestHeader:function(e,t){var n=e.toLowerCase();return b||(e=x[n]=x[n]||e,v[e]=t),this},overrideMimeType:function(e){return b||(d.mimeType=e),this},statusCode:function(e){var t;if(e)if(b<2)for(t in e)y[t]=[y[t],e[t]];else T.always(e[T.status]);return this},abort:function(e){var t=e||w;return c&&c.abort(t),r(0,t),this}};if(g.promise(T).complete=m.add,T.success=T.done,T.error=T.fail,d.url=((t||d.url||en)+"").replace(zt,"").replace(Jt,tn[1]+"//"),d.type=n.method||n.type||d.method||d.type,d.dataTypes=pe.trim(d.dataType||"*").toLowerCase().match(De)||[""],null==d.crossDomain&&(i=Gt.exec(d.url.toLowerCase()),d.crossDomain=!(!i||i[1]===tn[1]&&i[2]===tn[2]&&(i[3]||("http:"===i[1]?"80":"443"))===(tn[3]||("http:"===tn[1]?"80":"443")))),d.data&&d.processData&&"string"!=typeof d.data&&(d.data=pe.param(d.data,d.traditional)),U(Kt,d,n,T),2===b)return T;l=pe.event&&d.global,l&&0===pe.active++&&pe.event.trigger("ajaxStart"),d.type=d.type.toUpperCase(),d.hasContent=!Yt.test(d.type),a=d.url,d.hasContent||(d.data&&(a=d.url+=(It.test(a)?"&":"?")+d.data,delete d.data),d.cache===!1&&(d.url=Xt.test(a)?a.replace(Xt,"$1_="+Wt++):a+(It.test(a)?"&":"?")+"_="+Wt++)),d.ifModified&&(pe.lastModified[a]&&T.setRequestHeader("If-Modified-Since",pe.lastModified[a]),pe.etag[a]&&T.setRequestHeader("If-None-Match",pe.etag[a])),(d.data&&d.hasContent&&d.contentType!==!1||n.contentType)&&T.setRequestHeader("Content-Type",d.contentType),T.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+("*"!==d.dataTypes[0]?", "+Zt+"; q=0.01":""):d.accepts["*"]);for(o in d.headers)T.setRequestHeader(o,d.headers[o]);if(d.beforeSend&&(d.beforeSend.call(p,T,d)===!1||2===b))return T.abort();w="abort";for(o in{success:1,error:1,complete:1})T[o](d[o]);if(c=U(Qt,d,n,T)){if(T.readyState=1,l&&h.trigger("ajaxSend",[T,d]),2===b)return T;d.async&&d.timeout>0&&(u=e.setTimeout(function(){T.abort("timeout")},d.timeout));try{b=1,c.send(v,r)}catch(C){if(!(b<2))throw C;r(-1,C)}}else r(-1,"No Transport");return T},getJSON:function(e,t,n){return pe.get(e,t,n,"json")},getScript:function(e,t){return pe.get(e,void 0,t,"script")}}),pe.each(["get","post"],function(e,t){pe[t]=function(e,n,r,i){return pe.isFunction(n)&&(i=i||r,r=n,n=void 0),pe.ajax(pe.extend({url:e,type:t,dataType:i,data:n,success:r},pe.isPlainObject(e)&&e))}}),pe._evalUrl=function(e){return pe.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,"throws":!0})},pe.fn.extend({wrapAll:function(e){if(pe.isFunction(e))return this.each(function(t){pe(this).wrapAll(e.call(this,t))});if(this[0]){var t=pe(e,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var e=this;e.firstChild&&1===e.firstChild.nodeType;)e=e.firstChild;return e}).append(this)}return this},wrapInner:function(e){return pe.isFunction(e)?this.each(function(t){pe(this).wrapInner(e.call(this,t))}):this.each(function(){var t=pe(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=pe.isFunction(e);return this.each(function(n){pe(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){pe.nodeName(this,"body")||pe(this).replaceWith(this.childNodes)}).end()}}),pe.expr.filters.hidden=function(e){return fe.reliableHiddenOffsets()?e.offsetWidth<=0&&e.offsetHeight<=0&&!e.getClientRects().length:K(e)},pe.expr.filters.visible=function(e){return!pe.expr.filters.hidden(e)};var nn=/%20/g,rn=/\[\]$/,on=/\r?\n/g,an=/^(?:submit|button|image|reset|file)$/i,sn=/^(?:input|select|textarea|keygen)/i;pe.param=function(e,t){var n,r=[],i=function(e,t){t=pe.isFunction(t)?t():null==t?"":t,r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};if(void 0===t&&(t=pe.ajaxSettings&&pe.ajaxSettings.traditional),pe.isArray(e)||e.jquery&&!pe.isPlainObject(e))pe.each(e,function(){i(this.name,this.value)});else for(n in e)Q(n,e[n],t,i);return r.join("&").replace(nn,"+")},pe.fn.extend({serialize:function(){return pe.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=pe.prop(this,"elements");return e?pe.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!pe(this).is(":disabled")&&sn.test(this.nodeName)&&!an.test(e)&&(this.checked||!Be.test(e))}).map(function(e,t){var n=pe(this).val();return null==n?null:pe.isArray(n)?pe.map(n,function(e){return{name:t.name,value:e.replace(on,"\r\n")}}):{name:t.name,value:n.replace(on,"\r\n")}}).get()}}),pe.ajaxSettings.xhr=void 0!==e.ActiveXObject?function(){return this.isLocal?ee():re.documentMode>8?Z():/^(get|post|head|put|delete|options)$/i.test(this.type)&&Z()||ee()}:Z;var un=0,ln={},cn=pe.ajaxSettings.xhr();e.attachEvent&&e.attachEvent("onunload",function(){for(var e in ln)ln[e](void 0,!0)}),fe.cors=!!cn&&"withCredentials"in cn,cn=fe.ajax=!!cn,cn&&pe.ajaxTransport(function(t){if(!t.crossDomain||fe.cors){var n;return{send:function(r,i){var o,a=t.xhr(),s=++un;if(a.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(o in t.xhrFields)a[o]=t.xhrFields[o];t.mimeType&&a.overrideMimeType&&a.overrideMimeType(t.mimeType),t.crossDomain||r["X-Requested-With"]||(r["X-Requested-With"]="XMLHttpRequest");for(o in r)void 0!==r[o]&&a.setRequestHeader(o,r[o]+"");a.send(t.hasContent&&t.data||null),n=function(e,r){var o,u,l;if(n&&(r||4===a.readyState))if(delete ln[s],n=void 0,a.onreadystatechange=pe.noop,r)4!==a.readyState&&a.abort();else{l={},o=a.status,"string"==typeof a.responseText&&(l.text=a.responseText);try{u=a.statusText}catch(c){u=""}o||!t.isLocal||t.crossDomain?1223===o&&(o=204):o=l.text?200:404}l&&i(o,u,l,a.getAllResponseHeaders())},t.async?4===a.readyState?e.setTimeout(n):a.onreadystatechange=ln[s]=n:n()},abort:function(){n&&n(void 0,!0)}}}}),pe.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return pe.globalEval(e),e}}}),pe.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET",e.global=!1)}),pe.ajaxTransport("script",function(e){if(e.crossDomain){var t,n=re.head||pe("head")[0]||re.documentElement;return{send:function(r,i){t=re.createElement("script"),t.async=!0,e.scriptCharset&&(t.charset=e.scriptCharset),t.src=e.url,t.onload=t.onreadystatechange=function(e,n){(n||!t.readyState||/loaded|complete/.test(t.readyState))&&(t.onload=t.onreadystatechange=null,t.parentNode&&t.parentNode.removeChild(t),t=null,n||i(200,"success"))},n.insertBefore(t,n.firstChild)},abort:function(){t&&t.onload(void 0,!0)}}}});var fn=[],dn=/(=)\?(?=&|$)|\?\?/;pe.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=fn.pop()||pe.expando+"_"+Wt++;return this[e]=!0,e}}),pe.ajaxPrefilter("json jsonp",function(t,n,r){var i,o,a,s=t.jsonp!==!1&&(dn.test(t.url)?"url":"string"==typeof t.data&&0===(t.contentType||"").indexOf("application/x-www-form-urlencoded")&&dn.test(t.data)&&"data");if(s||"jsonp"===t.dataTypes[0])return i=t.jsonpCallback=pe.isFunction(t.jsonpCallback)?t.jsonpCallback():t.jsonpCallback,s?t[s]=t[s].replace(dn,"$1"+i):t.jsonp!==!1&&(t.url+=(It.test(t.url)?"&":"?")+t.jsonp+"="+i),t.converters["script json"]=function(){return a||pe.error(i+" was not called"),a[0]},t.dataTypes[0]="json",o=e[i],e[i]=function(){a=arguments},r.always(function(){void 0===o?pe(e).removeProp(i):e[i]=o,t[i]&&(t.jsonpCallback=n.jsonpCallback,fn.push(i)),a&&pe.isFunction(o)&&o(a[0]),a=o=void 0}),"script"}),pe.parseHTML=function(e,t,n){if(!e||"string"!=typeof e)return null;"boolean"==typeof t&&(n=t,t=!1),t=t||re;var r=Te.exec(e),i=!n&&[];return r?[t.createElement(r[1])]:(r=y([e],t,i),i&&i.length&&pe(i).remove(),pe.merge([],r.childNodes))};var pn=pe.fn.load;return pe.fn.load=function(e,t,n){if("string"!=typeof e&&pn)return pn.apply(this,arguments);var r,i,o,a=this,s=e.indexOf(" ");return s>-1&&(r=pe.trim(e.slice(s,e.length)),e=e.slice(0,s)),pe.isFunction(t)?(n=t,t=void 0):t&&"object"==typeof t&&(i="POST"),a.length>0&&pe.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done(function(e){o=arguments,a.html(r?pe("<div>").append(pe.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},pe.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){pe.fn[t]=function(e){return this.on(t,e)}}),pe.expr.filters.animated=function(e){return pe.grep(pe.timers,function(t){return e===t.elem}).length},pe.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l,c=pe.css(e,"position"),f=pe(e),d={};"static"===c&&(e.style.position="relative"),s=f.offset(),o=pe.css(e,"top"),u=pe.css(e,"left"),l=("absolute"===c||"fixed"===c)&&pe.inArray("auto",[o,u])>-1,l?(r=f.position(),a=r.top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),pe.isFunction(t)&&(t=t.call(e,n,pe.extend({},s))),null!=t.top&&(d.top=t.top-s.top+a),null!=t.left&&(d.left=t.left-s.left+i),"using"in t?t.using.call(e,d):f.css(d)}},pe.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each(function(t){pe.offset.setOffset(this,e,t)});var t,n,r={top:0,left:0},i=this[0],o=i&&i.ownerDocument;if(o)return t=o.documentElement,pe.contains(t,i)?("undefined"!=typeof i.getBoundingClientRect&&(r=i.getBoundingClientRect()),n=te(o),{top:r.top+(n.pageYOffset||t.scrollTop)-(t.clientTop||0),left:r.left+(n.pageXOffset||t.scrollLeft)-(t.clientLeft||0)}):r},position:function(){if(this[0]){var e,t,n={top:0,left:0},r=this[0];return"fixed"===pe.css(r,"position")?t=r.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),pe.nodeName(e[0],"html")||(n=e.offset()),n.top+=pe.css(e[0],"borderTopWidth",!0),n.left+=pe.css(e[0],"borderLeftWidth",!0)),{top:t.top-n.top-pe.css(r,"marginTop",!0),left:t.left-n.left-pe.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){ +for(var e=this.offsetParent;e&&!pe.nodeName(e,"html")&&"static"===pe.css(e,"position");)e=e.offsetParent;return e||pt})}}),pe.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,t){var n=/Y/.test(t);pe.fn[e]=function(r){return Pe(this,function(e,r,i){var o=te(e);return void 0===i?o?t in o?o[t]:o.document.documentElement[r]:e[r]:void(o?o.scrollTo(n?pe(o).scrollLeft():i,n?i:pe(o).scrollTop()):e[r]=i)},e,r,arguments.length,null)}}),pe.each(["top","left"],function(e,t){pe.cssHooks[t]=L(fe.pixelPosition,function(e,n){if(n)return n=gt(e,t),ft.test(n)?pe(e).position()[t]+"px":n})}),pe.each({Height:"height",Width:"width"},function(e,t){pe.each({padding:"inner"+e,content:t,"":"outer"+e},function(n,r){pe.fn[r]=function(r,i){var o=arguments.length&&(n||"boolean"!=typeof r),a=n||(r===!0||i===!0?"margin":"border");return Pe(this,function(t,n,r){var i;return pe.isWindow(t)?t.document.documentElement["client"+e]:9===t.nodeType?(i=t.documentElement,Math.max(t.body["scroll"+e],i["scroll"+e],t.body["offset"+e],i["offset"+e],i["client"+e])):void 0===r?pe.css(t,n,a):pe.style(t,n,r,a)},t,o?r:void 0,o,null)}})}),pe.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)}}),pe.fn.size=function(){return this.length},pe.fn.andSelf=pe.fn.addBack,layui.define(function(e){layui.$=pe,e("jquery",pe)}),pe}); \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/lay/modules/laydate.js b/src/main/resources/static/articles/layui/lay/modules/laydate.js new file mode 100644 index 0000000..0766cb5 --- /dev/null +++ b/src/main/resources/static/articles/layui/lay/modules/laydate.js @@ -0,0 +1,2 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + ;!function(){"use strict";var e=window.layui&&layui.define,t={getPath:function(){var e=document.currentScript?document.currentScript.src:function(){for(var e,t=document.scripts,n=t.length-1,a=n;a>0;a--)if("interactive"===t[a].readyState){e=t[a].src;break}return e||t[n].src}();return e.substring(0,e.lastIndexOf("/")+1)}(),getStyle:function(e,t){var n=e.currentStyle?e.currentStyle:window.getComputedStyle(e,null);return n[n.getPropertyValue?"getPropertyValue":"getAttribute"](t)},link:function(e,a,i){if(n.path){var r=document.getElementsByTagName("head")[0],o=document.createElement("link");"string"==typeof a&&(i=a);var s=(i||e).replace(/\.|\//g,""),l="layuicss-"+s,d=0;o.rel="stylesheet",o.href=n.path+e,o.id=l,document.getElementById(l)||r.appendChild(o),"function"==typeof a&&!function c(){return++d>80?window.console&&console.error("laydate.css: Invalid"):void(1989===parseInt(t.getStyle(document.getElementById(l),"width"))?a():setTimeout(c,100))}()}}},n={v:"5.0.9",config:{},index:window.laydate&&window.laydate.v?1e5:0,path:t.getPath,set:function(e){var t=this;return t.config=w.extend({},t.config,e),t},ready:function(a){var i="laydate",r="",o=(e?"modules/laydate/":"theme/")+"default/laydate.css?v="+n.v+r;return e?layui.addcss(o,a,i):t.link(o,a,i),this}},a=function(){var e=this;return{hint:function(t){e.hint.call(e,t)},config:e.config}},i="laydate",r=".layui-laydate",o="layui-this",s="laydate-disabled",l="开始日期超出了结束日期<br>建议重新选择",d=[100,2e5],c="layui-laydate-static",m="layui-laydate-list",u="laydate-selected",h="layui-laydate-hint",y="laydate-day-prev",f="laydate-day-next",p="layui-laydate-footer",g=".laydate-btns-confirm",v="laydate-time-text",D=".laydate-btns-time",T=function(e){var t=this;t.index=++n.index,t.config=w.extend({},t.config,n.config,e),n.ready(function(){t.init()})},w=function(e){return new C(e)},C=function(e){for(var t=0,n="object"==typeof e?[e]:(this.selector=e,document.querySelectorAll(e||null));t<n.length;t++)this.push(n[t])};C.prototype=[],C.prototype.constructor=C,w.extend=function(){var e=1,t=arguments,n=function(e,t){e=e||(t.constructor===Array?[]:{});for(var a in t)e[a]=t[a]&&t[a].constructor===Object?n(e[a],t[a]):t[a];return e};for(t[0]="object"==typeof t[0]?t[0]:{};e<t.length;e++)"object"==typeof t[e]&&n(t[0],t[e]);return t[0]},w.ie=function(){var e=navigator.userAgent.toLowerCase();return!!(window.ActiveXObject||"ActiveXObject"in window)&&((e.match(/msie\s(\d+)/)||[])[1]||"11")}(),w.stope=function(e){e=e||window.event,e.stopPropagation?e.stopPropagation():e.cancelBubble=!0},w.each=function(e,t){var n,a=this;if("function"!=typeof t)return a;if(e=e||[],e.constructor===Object){for(n in e)if(t.call(e[n],n,e[n]))break}else for(n=0;n<e.length&&!t.call(e[n],n,e[n]);n++);return a},w.digit=function(e,t,n){var a="";e=String(e),t=t||2;for(var i=e.length;i<t;i++)a+="0";return e<Math.pow(10,t)?a+(0|e):e},w.elem=function(e,t){var n=document.createElement(e);return w.each(t||{},function(e,t){n.setAttribute(e,t)}),n},C.addStr=function(e,t){return e=e.replace(/\s+/," "),t=t.replace(/\s+/," ").split(" "),w.each(t,function(t,n){new RegExp("\\b"+n+"\\b").test(e)||(e=e+" "+n)}),e.replace(/^\s|\s$/,"")},C.removeStr=function(e,t){return e=e.replace(/\s+/," "),t=t.replace(/\s+/," ").split(" "),w.each(t,function(t,n){var a=new RegExp("\\b"+n+"\\b");a.test(e)&&(e=e.replace(a,""))}),e.replace(/\s+/," ").replace(/^\s|\s$/,"")},C.prototype.find=function(e){var t=this,n=0,a=[],i="object"==typeof e;return this.each(function(r,o){for(var s=i?[e]:o.querySelectorAll(e||null);n<s.length;n++)a.push(s[n]);t.shift()}),i||(t.selector=(t.selector?t.selector+" ":"")+e),w.each(a,function(e,n){t.push(n)}),t},C.prototype.each=function(e){return w.each.call(this,this,e)},C.prototype.addClass=function(e,t){return this.each(function(n,a){a.className=C[t?"removeStr":"addStr"](a.className,e)})},C.prototype.removeClass=function(e){return this.addClass(e,!0)},C.prototype.hasClass=function(e){var t=!1;return this.each(function(n,a){new RegExp("\\b"+e+"\\b").test(a.className)&&(t=!0)}),t},C.prototype.attr=function(e,t){var n=this;return void 0===t?function(){if(n.length>0)return n[0].getAttribute(e)}():n.each(function(n,a){a.setAttribute(e,t)})},C.prototype.removeAttr=function(e){return this.each(function(t,n){n.removeAttribute(e)})},C.prototype.html=function(e){return this.each(function(t,n){n.innerHTML=e})},C.prototype.val=function(e){return this.each(function(t,n){n.value=e})},C.prototype.append=function(e){return this.each(function(t,n){"object"==typeof e?n.appendChild(e):n.innerHTML=n.innerHTML+e})},C.prototype.remove=function(e){return this.each(function(t,n){e?n.removeChild(e):n.parentNode.removeChild(n)})},C.prototype.on=function(e,t){return this.each(function(n,a){a.attachEvent?a.attachEvent("on"+e,function(e){e.target=e.srcElement,t.call(a,e)}):a.addEventListener(e,t,!1)})},C.prototype.off=function(e,t){return this.each(function(n,a){a.detachEvent?a.detachEvent("on"+e,t):a.removeEventListener(e,t,!1)})},T.isLeapYear=function(e){return e%4===0&&e%100!==0||e%400===0},T.prototype.config={type:"date",range:!1,format:"yyyy-MM-dd",value:null,isInitValue:!0,min:"1900-1-1",max:"2099-12-31",trigger:"focus",show:!1,showBottom:!0,btns:["clear","now","confirm"],lang:"cn",theme:"default",position:null,calendar:!1,mark:{},zIndex:null,done:null,change:null},T.prototype.lang=function(){var e=this,t=e.config,n={cn:{weeks:["日","一","二","三","四","五","六"],time:["时","分","秒"],timeTips:"选择时间",startTime:"开始时间",endTime:"结束时间",dateTips:"返回日期",month:["一","二","三","四","五","六","七","八","九","十","十一","十二"],tools:{confirm:"确定",clear:"清空",now:"现在"}},en:{weeks:["Su","Mo","Tu","We","Th","Fr","Sa"],time:["Hours","Minutes","Seconds"],timeTips:"Select Time",startTime:"Start Time",endTime:"End Time",dateTips:"Select Date",month:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],tools:{confirm:"Confirm",clear:"Clear",now:"Now"}}};return n[t.lang]||n.cn},T.prototype.init=function(){var e=this,t=e.config,n="yyyy|y|MM|M|dd|d|HH|H|mm|m|ss|s",a="static"===t.position,i={year:"yyyy",month:"yyyy-MM",date:"yyyy-MM-dd",time:"HH:mm:ss",datetime:"yyyy-MM-dd HH:mm:ss"};t.elem=w(t.elem),t.eventElem=w(t.eventElem),t.elem[0]&&(t.range===!0&&(t.range="-"),t.format===i.date&&(t.format=i[t.type]),e.format=t.format.match(new RegExp(n+"|.","g"))||[],e.EXP_IF="",e.EXP_SPLIT="",w.each(e.format,function(t,a){var i=new RegExp(n).test(a)?"\\d{"+function(){return new RegExp(n).test(e.format[0===t?t+1:t-1]||"")?/^yyyy|y$/.test(a)?4:a.length:/^yyyy$/.test(a)?"1,4":/^y$/.test(a)?"1,308":"1,2"}()+"}":"\\"+a;e.EXP_IF=e.EXP_IF+i,e.EXP_SPLIT=e.EXP_SPLIT+"("+i+")"}),e.EXP_IF=new RegExp("^"+(t.range?e.EXP_IF+"\\s\\"+t.range+"\\s"+e.EXP_IF:e.EXP_IF)+"$"),e.EXP_SPLIT=new RegExp("^"+e.EXP_SPLIT+"$",""),e.isInput(t.elem[0])||"focus"===t.trigger&&(t.trigger="click"),t.elem.attr("lay-key")||(t.elem.attr("lay-key",e.index),t.eventElem.attr("lay-key",e.index)),t.mark=w.extend({},t.calendar&&"cn"===t.lang?{"0-1-1":"元旦","0-2-14":"情人","0-3-8":"妇女","0-3-12":"植树","0-4-1":"愚人","0-5-1":"劳动","0-5-4":"青年","0-6-1":"儿童","0-9-10":"教师","0-9-18":"国耻","0-10-1":"国庆","0-12-25":"圣诞"}:{},t.mark),w.each(["min","max"],function(e,n){var a=[],i=[];if("number"==typeof t[n]){var r=t[n],o=(new Date).getTime(),s=864e5,l=new Date(r?r<s?o+r*s:r:o);a=[l.getFullYear(),l.getMonth()+1,l.getDate()],r<s||(i=[l.getHours(),l.getMinutes(),l.getSeconds()])}else a=(t[n].match(/\d+-\d+-\d+/)||[""])[0].split("-"),i=(t[n].match(/\d+:\d+:\d+/)||[""])[0].split(":");t[n]={year:0|a[0]||(new Date).getFullYear(),month:a[1]?(0|a[1])-1:(new Date).getMonth(),date:0|a[2]||(new Date).getDate(),hours:0|i[0],minutes:0|i[1],seconds:0|i[2]}}),e.elemID="layui-laydate"+t.elem.attr("lay-key"),(t.show||a)&&e.render(),a||e.events(),t.value&&t.isInitValue&&(t.value.constructor===Date?e.setValue(e.parse(0,e.systemDate(t.value))):e.setValue(t.value)))},T.prototype.render=function(){var e=this,t=e.config,n=e.lang(),a="static"===t.position,i=e.elem=w.elem("div",{id:e.elemID,"class":["layui-laydate",t.range?" layui-laydate-range":"",a?" "+c:"",t.theme&&"default"!==t.theme&&!/^#/.test(t.theme)?" laydate-theme-"+t.theme:""].join("")}),r=e.elemMain=[],o=e.elemHeader=[],s=e.elemCont=[],l=e.table=[],d=e.footer=w.elem("div",{"class":p});if(t.zIndex&&(i.style.zIndex=t.zIndex),w.each(new Array(2),function(e){if(!t.range&&e>0)return!0;var a=w.elem("div",{"class":"layui-laydate-header"}),i=[function(){var e=w.elem("i",{"class":"layui-icon laydate-icon laydate-prev-y"});return e.innerHTML="",e}(),function(){var e=w.elem("i",{"class":"layui-icon laydate-icon laydate-prev-m"});return e.innerHTML="",e}(),function(){var e=w.elem("div",{"class":"laydate-set-ym"}),t=w.elem("span"),n=w.elem("span");return e.appendChild(t),e.appendChild(n),e}(),function(){var e=w.elem("i",{"class":"layui-icon laydate-icon laydate-next-m"});return e.innerHTML="",e}(),function(){var e=w.elem("i",{"class":"layui-icon laydate-icon laydate-next-y"});return e.innerHTML="",e}()],d=w.elem("div",{"class":"layui-laydate-content"}),c=w.elem("table"),m=w.elem("thead"),u=w.elem("tr");w.each(i,function(e,t){a.appendChild(t)}),m.appendChild(u),w.each(new Array(6),function(e){var t=c.insertRow(0);w.each(new Array(7),function(a){if(0===e){var i=w.elem("th");i.innerHTML=n.weeks[a],u.appendChild(i)}t.insertCell(a)})}),c.insertBefore(m,c.children[0]),d.appendChild(c),r[e]=w.elem("div",{"class":"layui-laydate-main laydate-main-list-"+e}),r[e].appendChild(a),r[e].appendChild(d),o.push(i),s.push(d),l.push(c)}),w(d).html(function(){var e=[],i=[];return"datetime"===t.type&&e.push('<span lay-type="datetime" class="laydate-btns-time">'+n.timeTips+"</span>"),w.each(t.btns,function(e,r){var o=n.tools[r]||"btn";t.range&&"now"===r||(a&&"clear"===r&&(o="cn"===t.lang?"重置":"Reset"),i.push('<span lay-type="'+r+'" class="laydate-btns-'+r+'">'+o+"</span>"))}),e.push('<div class="laydate-footer-btns">'+i.join("")+"</div>"),e.join("")}()),w.each(r,function(e,t){i.appendChild(t)}),t.showBottom&&i.appendChild(d),/^#/.test(t.theme)){var m=w.elem("style"),u=["#{{id}} .layui-laydate-header{background-color:{{theme}};}","#{{id}} .layui-this{background-color:{{theme}} !important;}"].join("").replace(/{{id}}/g,e.elemID).replace(/{{theme}}/g,t.theme);"styleSheet"in m?(m.setAttribute("type","text/css"),m.styleSheet.cssText=u):m.innerHTML=u,w(i).addClass("laydate-theme-molv"),i.appendChild(m)}e.remove(T.thisElemDate),a?t.elem.append(i):(document.body.appendChild(i),e.position()),e.checkDate().calendar(),e.changeEvent(),T.thisElemDate=e.elemID,"function"==typeof t.ready&&t.ready(w.extend({},t.dateTime,{month:t.dateTime.month+1}))},T.prototype.remove=function(e){var t=this,n=(t.config,w("#"+(e||t.elemID)));return n.hasClass(c)||t.checkDate(function(){n.remove()}),t},T.prototype.position=function(){var e=this,t=e.config,n=e.bindElem||t.elem[0],a=n.getBoundingClientRect(),i=e.elem.offsetWidth,r=e.elem.offsetHeight,o=function(e){return e=e?"scrollLeft":"scrollTop",document.body[e]|document.documentElement[e]},s=function(e){return document.documentElement[e?"clientWidth":"clientHeight"]},l=5,d=a.left,c=a.bottom;d+i+l>s("width")&&(d=s("width")-i-l),c+r+l>s()&&(c=a.top>r?a.top-r:s()-r,c-=2*l),t.position&&(e.elem.style.position=t.position),e.elem.style.left=d+("fixed"===t.position?0:o(1))+"px",e.elem.style.top=c+("fixed"===t.position?0:o())+"px"},T.prototype.hint=function(e){var t=this,n=(t.config,w.elem("div",{"class":h}));t.elem&&(n.innerHTML=e||"",w(t.elem).find("."+h).remove(),t.elem.appendChild(n),clearTimeout(t.hinTimer),t.hinTimer=setTimeout(function(){w(t.elem).find("."+h).remove()},3e3))},T.prototype.getAsYM=function(e,t,n){return n?t--:t++,t<0&&(t=11,e--),t>11&&(t=0,e++),[e,t]},T.prototype.systemDate=function(e){var t=e||new Date;return{year:t.getFullYear(),month:t.getMonth(),date:t.getDate(),hours:e?e.getHours():0,minutes:e?e.getMinutes():0,seconds:e?e.getSeconds():0}},T.prototype.checkDate=function(e){var t,a,i=this,r=(new Date,i.config),o=r.dateTime=r.dateTime||i.systemDate(),s=i.bindElem||r.elem[0],l=(i.isInput(s)?"val":"html",i.isInput(s)?s.value:"static"===r.position?"":s.innerHTML),c=function(e){e.year>d[1]&&(e.year=d[1],a=!0),e.month>11&&(e.month=11,a=!0),e.hours>23&&(e.hours=0,a=!0),e.minutes>59&&(e.minutes=0,e.hours++,a=!0),e.seconds>59&&(e.seconds=0,e.minutes++,a=!0),t=n.getEndDate(e.month+1,e.year),e.date>t&&(e.date=t,a=!0)},m=function(e,t,n){var o=["startTime","endTime"];t=(t.match(i.EXP_SPLIT)||[]).slice(1),n=n||0,r.range&&(i[o[n]]=i[o[n]]||{}),w.each(i.format,function(s,l){var c=parseFloat(t[s]);t[s].length<l.length&&(a=!0),/yyyy|y/.test(l)?(c<d[0]&&(c=d[0],a=!0),e.year=c):/MM|M/.test(l)?(c<1&&(c=1,a=!0),e.month=c-1):/dd|d/.test(l)?(c<1&&(c=1,a=!0),e.date=c):/HH|H/.test(l)?(c<1&&(c=0,a=!0),e.hours=c,r.range&&(i[o[n]].hours=c)):/mm|m/.test(l)?(c<1&&(c=0,a=!0),e.minutes=c,r.range&&(i[o[n]].minutes=c)):/ss|s/.test(l)&&(c<1&&(c=0,a=!0),e.seconds=c,r.range&&(i[o[n]].seconds=c))}),c(e)};return"limit"===e?(c(o),i):(l=l||r.value,"string"==typeof l&&(l=l.replace(/\s+/g," ").replace(/^\s|\s$/g,"")),i.startState&&!i.endState&&(delete i.startState,i.endState=!0),"string"==typeof l&&l?i.EXP_IF.test(l)?r.range?(l=l.split(" "+r.range+" "),i.startDate=i.startDate||i.systemDate(),i.endDate=i.endDate||i.systemDate(),r.dateTime=w.extend({},i.startDate),w.each([i.startDate,i.endDate],function(e,t){m(t,l[e],e)})):m(o,l):(i.hint("日期格式不合法<br>必须遵循下述格式:<br>"+(r.range?r.format+" "+r.range+" "+r.format:r.format)+"<br>已为你重置"),a=!0):l&&l.constructor===Date?r.dateTime=i.systemDate(l):(r.dateTime=i.systemDate(),delete i.startState,delete i.endState,delete i.startDate,delete i.endDate,delete i.startTime,delete i.endTime),c(o),a&&l&&i.setValue(r.range?i.endDate?i.parse():"":i.parse()),e&&e(),i)},T.prototype.mark=function(e,t){var n,a=this,i=a.config;return w.each(i.mark,function(e,a){var i=e.split("-");i[0]!=t[0]&&0!=i[0]||i[1]!=t[1]&&0!=i[1]||i[2]!=t[2]||(n=a||t[2])}),n&&e.html('<span class="laydate-day-mark">'+n+"</span>"),a},T.prototype.limit=function(e,t,n,a){var i,r=this,o=r.config,l={},d=o[n>41?"endDate":"dateTime"],c=w.extend({},d,t||{});return w.each({now:c,min:o.min,max:o.max},function(e,t){l[e]=r.newDate(w.extend({year:t.year,month:t.month,date:t.date},function(){var e={};return w.each(a,function(n,a){e[a]=t[a]}),e}())).getTime()}),i=l.now<l.min||l.now>l.max,e&&e[i?"addClass":"removeClass"](s),i},T.prototype.calendar=function(e){var t,a,i,r=this,s=r.config,l=e||s.dateTime,c=new Date,m=r.lang(),u="date"!==s.type&&"datetime"!==s.type,h=e?1:0,y=w(r.table[h]).find("td"),f=w(r.elemHeader[h][2]).find("span");if(l.year<d[0]&&(l.year=d[0],r.hint("最低只能支持到公元"+d[0]+"年")),l.year>d[1]&&(l.year=d[1],r.hint("最高只能支持到公元"+d[1]+"年")),r.firstDate||(r.firstDate=w.extend({},l)),c.setFullYear(l.year,l.month,1),t=c.getDay(),a=n.getEndDate(l.month||12,l.year),i=n.getEndDate(l.month+1,l.year),w.each(y,function(e,n){var d=[l.year,l.month],c=0;n=w(n),n.removeAttr("class"),e<t?(c=a-t+e,n.addClass("laydate-day-prev"),d=r.getAsYM(l.year,l.month,"sub")):e>=t&&e<i+t?(c=e-t,s.range||c+1===l.date&&n.addClass(o)):(c=e-i-t,n.addClass("laydate-day-next"),d=r.getAsYM(l.year,l.month)),d[1]++,d[2]=c+1,n.attr("lay-ymd",d.join("-")).html(d[2]),r.mark(n,d).limit(n,{year:d[0],month:d[1]-1,date:d[2]},e)}),w(f[0]).attr("lay-ym",l.year+"-"+(l.month+1)),w(f[1]).attr("lay-ym",l.year+"-"+(l.month+1)),"cn"===s.lang?(w(f[0]).attr("lay-type","year").html(l.year+"年"),w(f[1]).attr("lay-type","month").html(l.month+1+"月")):(w(f[0]).attr("lay-type","month").html(m.month[l.month]),w(f[1]).attr("lay-type","year").html(l.year)),u&&(s.range&&(e?r.endDate=r.endDate||{year:l.year+("year"===s.type?1:0),month:l.month+("month"===s.type?0:-1)}:r.startDate=r.startDate||{year:l.year,month:l.month},e&&(r.listYM=[[r.startDate.year,r.startDate.month+1],[r.endDate.year,r.endDate.month+1]],r.list(s.type,0).list(s.type,1),"time"===s.type?r.setBtnStatus("时间",w.extend({},r.systemDate(),r.startTime),w.extend({},r.systemDate(),r.endTime)):r.setBtnStatus(!0))),s.range||(r.listYM=[[l.year,l.month+1]],r.list(s.type,0))),s.range&&!e){var p=r.getAsYM(l.year,l.month);r.calendar(w.extend({},l,{year:p[0],month:p[1]}))}return s.range||r.limit(w(r.footer).find(g),null,0,["hours","minutes","seconds"]),s.range&&e&&!u&&r.stampRange(),r},T.prototype.list=function(e,t){var n=this,a=n.config,i=a.dateTime,r=n.lang(),l=a.range&&"date"!==a.type&&"datetime"!==a.type,d=w.elem("ul",{"class":m+" "+{year:"laydate-year-list",month:"laydate-month-list",time:"laydate-time-list"}[e]}),c=n.elemHeader[t],u=w(c[2]).find("span"),h=n.elemCont[t||0],y=w(h).find("."+m)[0],f="cn"===a.lang,p=f?"年":"",T=n.listYM[t]||{},C=["hours","minutes","seconds"],x=["startTime","endTime"][t];if(T[0]<1&&(T[0]=1),"year"===e){var M,b=M=T[0]-7;b<1&&(b=M=1),w.each(new Array(15),function(e){var i=w.elem("li",{"lay-ym":M}),r={year:M};M==T[0]&&w(i).addClass(o),i.innerHTML=M+p,d.appendChild(i),M<n.firstDate.year?(r.month=a.min.month,r.date=a.min.date):M>=n.firstDate.year&&(r.month=a.max.month,r.date=a.max.date),n.limit(w(i),r,t),M++}),w(u[f?0:1]).attr("lay-ym",M-8+"-"+T[1]).html(b+p+" - "+(M-1+p))}else if("month"===e)w.each(new Array(12),function(e){var i=w.elem("li",{"lay-ym":e}),s={year:T[0],month:e};e+1==T[1]&&w(i).addClass(o),i.innerHTML=r.month[e]+(f?"月":""),d.appendChild(i),T[0]<n.firstDate.year?s.date=a.min.date:T[0]>=n.firstDate.year&&(s.date=a.max.date),n.limit(w(i),s,t)}),w(u[f?0:1]).attr("lay-ym",T[0]+"-"+T[1]).html(T[0]+p);else if("time"===e){var E=function(){w(d).find("ol").each(function(e,a){w(a).find("li").each(function(a,i){n.limit(w(i),[{hours:a},{hours:n[x].hours,minutes:a},{hours:n[x].hours,minutes:n[x].minutes,seconds:a}][e],t,[["hours"],["hours","minutes"],["hours","minutes","seconds"]][e])})}),a.range||n.limit(w(n.footer).find(g),n[x],0,["hours","minutes","seconds"])};a.range?n[x]||(n[x]={hours:0,minutes:0,seconds:0}):n[x]=i,w.each([24,60,60],function(e,t){var a=w.elem("li"),i=["<p>"+r.time[e]+"</p><ol>"];w.each(new Array(t),function(t){i.push("<li"+(n[x][C[e]]===t?' class="'+o+'"':"")+">"+w.digit(t,2)+"</li>")}),a.innerHTML=i.join("")+"</ol>",d.appendChild(a)}),E()}if(y&&h.removeChild(y),h.appendChild(d),"year"===e||"month"===e)w(n.elemMain[t]).addClass("laydate-ym-show"),w(d).find("li").on("click",function(){var r=0|w(this).attr("lay-ym");if(!w(this).hasClass(s)){if(0===t)i[e]=r,l&&(n.startDate[e]=r),n.limit(w(n.footer).find(g),null,0);else if(l)n.endDate[e]=r;else{var c="year"===e?n.getAsYM(r,T[1]-1,"sub"):n.getAsYM(T[0],r,"sub");w.extend(i,{year:c[0],month:c[1]})}"year"===a.type||"month"===a.type?(w(d).find("."+o).removeClass(o),w(this).addClass(o),"month"===a.type&&"year"===e&&(n.listYM[t][0]=r,l&&(n[["startDate","endDate"][t]].year=r),n.list("month",t))):(n.checkDate("limit").calendar(),n.closeList()),n.setBtnStatus(),a.range||n.done(null,"change"),w(n.footer).find(D).removeClass(s)}});else{var S=w.elem("span",{"class":v}),k=function(){w(d).find("ol").each(function(e){var t=this,a=w(t).find("li");t.scrollTop=30*(n[x][C[e]]-2),t.scrollTop<=0&&a.each(function(e,n){if(!w(this).hasClass(s))return t.scrollTop=30*(e-2),!0})})},H=w(c[2]).find("."+v);k(),S.innerHTML=a.range?[r.startTime,r.endTime][t]:r.timeTips,w(n.elemMain[t]).addClass("laydate-time-show"),H[0]&&H.remove(),c[2].appendChild(S),w(d).find("ol").each(function(e){var t=this;w(t).find("li").on("click",function(){var r=0|this.innerHTML;w(this).hasClass(s)||(a.range?n[x][C[e]]=r:i[C[e]]=r,w(t).find("."+o).removeClass(o),w(this).addClass(o),E(),k(),(n.endDate||"time"===a.type)&&n.done(null,"change"),n.setBtnStatus())})})}return n},T.prototype.listYM=[],T.prototype.closeList=function(){var e=this;e.config;w.each(e.elemCont,function(t,n){w(this).find("."+m).remove(),w(e.elemMain[t]).removeClass("laydate-ym-show laydate-time-show")}),w(e.elem).find("."+v).remove()},T.prototype.setBtnStatus=function(e,t,n){var a,i=this,r=i.config,o=w(i.footer).find(g),d=r.range&&"date"!==r.type&&"time"!==r.type;d&&(t=t||i.startDate,n=n||i.endDate,a=i.newDate(t).getTime()>i.newDate(n).getTime(),i.limit(null,t)||i.limit(null,n)?o.addClass(s):o[a?"addClass":"removeClass"](s),e&&a&&i.hint("string"==typeof e?l.replace(/日期/g,e):l))},T.prototype.parse=function(e,t){var n=this,a=n.config,i=t||(e?w.extend({},n.endDate,n.endTime):a.range?w.extend({},n.startDate,n.startTime):a.dateTime),r=n.format.concat();return w.each(r,function(e,t){/yyyy|y/.test(t)?r[e]=w.digit(i.year,t.length):/MM|M/.test(t)?r[e]=w.digit(i.month+1,t.length):/dd|d/.test(t)?r[e]=w.digit(i.date,t.length):/HH|H/.test(t)?r[e]=w.digit(i.hours,t.length):/mm|m/.test(t)?r[e]=w.digit(i.minutes,t.length):/ss|s/.test(t)&&(r[e]=w.digit(i.seconds,t.length))}),a.range&&!e?r.join("")+" "+a.range+" "+n.parse(1):r.join("")},T.prototype.newDate=function(e){return e=e||{},new Date(e.year||1,e.month||0,e.date||1,e.hours||0,e.minutes||0,e.seconds||0)},T.prototype.setValue=function(e){var t=this,n=t.config,a=t.bindElem||n.elem[0],i=t.isInput(a)?"val":"html";return"static"===n.position||w(a)[i](e||""),this},T.prototype.stampRange=function(){var e,t,n=this,a=n.config,i=w(n.elem).find("td");if(a.range&&!n.endDate&&w(n.footer).find(g).addClass(s),n.endDate)return e=n.newDate({year:n.startDate.year,month:n.startDate.month,date:n.startDate.date}).getTime(),t=n.newDate({year:n.endDate.year,month:n.endDate.month,date:n.endDate.date}).getTime(),e>t?n.hint(l):void w.each(i,function(a,i){var r=w(i).attr("lay-ymd").split("-"),s=n.newDate({year:r[0],month:r[1]-1,date:r[2]}).getTime();w(i).removeClass(u+" "+o),s!==e&&s!==t||w(i).addClass(w(i).hasClass(y)||w(i).hasClass(f)?u:o),s>e&&s<t&&w(i).addClass(u)})},T.prototype.done=function(e,t){var n=this,a=n.config,i=w.extend({},n.startDate?w.extend(n.startDate,n.startTime):a.dateTime),r=w.extend({},w.extend(n.endDate,n.endTime));return w.each([i,r],function(e,t){"month"in t&&w.extend(t,{month:t.month+1})}),e=e||[n.parse(),i,r],"function"==typeof a[t||"done"]&&a[t||"done"].apply(a,e),n},T.prototype.choose=function(e){var t=this,n=t.config,a=n.dateTime,i=w(t.elem).find("td"),r=e.attr("lay-ymd").split("-"),l=function(e){new Date;e&&w.extend(a,r),n.range&&(t.startDate?w.extend(t.startDate,r):t.startDate=w.extend({},r,t.startTime),t.startYMD=r)};if(r={year:0|r[0],month:(0|r[1])-1,date:0|r[2]},!e.hasClass(s))if(n.range){if(w.each(["startTime","endTime"],function(e,n){t[n]=t[n]||{hours:0,minutes:0,seconds:0}}),t.endState)l(),delete t.endState,delete t.endDate,t.startState=!0,i.removeClass(o+" "+u),e.addClass(o);else if(t.startState){if(e.addClass(o),t.endDate?w.extend(t.endDate,r):t.endDate=w.extend({},r,t.endTime),t.newDate(r).getTime()<t.newDate(t.startYMD).getTime()){var d=w.extend({},t.endDate,{hours:t.startDate.hours,minutes:t.startDate.minutes,seconds:t.startDate.seconds});w.extend(t.endDate,t.startDate,{hours:t.endDate.hours,minutes:t.endDate.minutes,seconds:t.endDate.seconds}),t.startDate=d}n.showBottom||t.done(),t.stampRange(),t.endState=!0,t.done(null,"change")}else e.addClass(o),l(),t.startState=!0;w(t.footer).find(g)[t.endDate?"removeClass":"addClass"](s)}else"static"===n.position?(l(!0),t.calendar().done().done(null,"change")):"date"===n.type?(l(!0),t.setValue(t.parse()).remove().done()):"datetime"===n.type&&(l(!0),t.calendar().done(null,"change"))},T.prototype.tool=function(e,t){var n=this,a=n.config,i=a.dateTime,r="static"===a.position,o={datetime:function(){w(e).hasClass(s)||(n.list("time",0),a.range&&n.list("time",1),w(e).attr("lay-type","date").html(n.lang().dateTips))},date:function(){n.closeList(),w(e).attr("lay-type","datetime").html(n.lang().timeTips)},clear:function(){n.setValue("").remove(),r&&(w.extend(i,n.firstDate),n.calendar()),a.range&&(delete n.startState,delete n.endState,delete n.endDate,delete n.startTime,delete n.endTime),n.done(["",{},{}])},now:function(){var e=new Date;w.extend(i,n.systemDate(),{hours:e.getHours(),minutes:e.getMinutes(),seconds:e.getSeconds()}),n.setValue(n.parse()).remove(),r&&n.calendar(),n.done()},confirm:function(){if(a.range){if(!n.endDate)return n.hint("请先选择日期范围");if(w(e).hasClass(s))return n.hint("time"===a.type?l.replace(/日期/g,"时间"):l)}else if(w(e).hasClass(s))return n.hint("不在有效日期或时间范围内");n.done(),n.setValue(n.parse()).remove()}};o[t]&&o[t]()},T.prototype.change=function(e){var t=this,n=t.config,a=n.dateTime,i=n.range&&("year"===n.type||"month"===n.type),r=t.elemCont[e||0],o=t.listYM[e],s=function(s){var l=["startDate","endDate"][e],d=w(r).find(".laydate-year-list")[0],c=w(r).find(".laydate-month-list")[0];return d&&(o[0]=s?o[0]-15:o[0]+15,t.list("year",e)),c&&(s?o[0]--:o[0]++,t.list("month",e)),(d||c)&&(w.extend(a,{year:o[0]}),i&&(t[l].year=o[0]),n.range||t.done(null,"change"),t.setBtnStatus(),n.range||t.limit(w(t.footer).find(g),{year:o[0]})),d||c};return{prevYear:function(){s("sub")||(a.year--,t.checkDate("limit").calendar(),n.range||t.done(null,"change"))},prevMonth:function(){var e=t.getAsYM(a.year,a.month,"sub");w.extend(a,{year:e[0],month:e[1]}),t.checkDate("limit").calendar(),n.range||t.done(null,"change")},nextMonth:function(){var e=t.getAsYM(a.year,a.month);w.extend(a,{year:e[0],month:e[1]}),t.checkDate("limit").calendar(),n.range||t.done(null,"change")},nextYear:function(){s()||(a.year++,t.checkDate("limit").calendar(),n.range||t.done(null,"change"))}}},T.prototype.changeEvent=function(){var e=this;e.config;w(e.elem).on("click",function(e){w.stope(e)}),w.each(e.elemHeader,function(t,n){w(n[0]).on("click",function(n){e.change(t).prevYear()}),w(n[1]).on("click",function(n){e.change(t).prevMonth()}),w(n[2]).find("span").on("click",function(n){var a=w(this),i=a.attr("lay-ym"),r=a.attr("lay-type");i&&(i=i.split("-"),e.listYM[t]=[0|i[0],0|i[1]],e.list(r,t),w(e.footer).find(D).addClass(s))}),w(n[3]).on("click",function(n){e.change(t).nextMonth()}),w(n[4]).on("click",function(n){e.change(t).nextYear()})}),w.each(e.table,function(t,n){var a=w(n).find("td");a.on("click",function(){e.choose(w(this))})}),w(e.footer).find("span").on("click",function(){var t=w(this).attr("lay-type");e.tool(this,t)})},T.prototype.isInput=function(e){return/input|textarea/.test(e.tagName.toLocaleLowerCase())},T.prototype.events=function(){var e=this,t=e.config,n=function(n,a){n.on(t.trigger,function(){a&&(e.bindElem=this),e.render()})};t.elem[0]&&!t.elem[0].eventHandler&&(n(t.elem,"bind"),n(t.eventElem),w(document).on("click",function(n){n.target!==t.elem[0]&&n.target!==t.eventElem[0]&&n.target!==w(t.closeStop)[0]&&e.remove()}).on("keydown",function(t){13===t.keyCode&&w("#"+e.elemID)[0]&&e.elemID===T.thisElem&&(t.preventDefault(),w(e.footer).find(g)[0].click())}),w(window).on("resize",function(){return!(!e.elem||!w(r)[0])&&void e.position()}),t.elem[0].eventHandler=!0)},n.render=function(e){var t=new T(e);return a.call(t)},n.getEndDate=function(e,t){var n=new Date;return n.setFullYear(t||n.getFullYear(),e||n.getMonth()+1,1),new Date(n.getTime()-864e5).getDate()},window.lay=window.lay||w,e?(n.ready(),layui.define(function(e){n.path=layui.cache.dir,e(i,n)})):"function"==typeof define&&define.amd?define(function(){return n}):function(){n.ready(),window.laydate=n}()}(); \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/lay/modules/layedit.js b/src/main/resources/static/articles/layui/lay/modules/layedit.js new file mode 100644 index 0000000..6a18044 --- /dev/null +++ b/src/main/resources/static/articles/layui/lay/modules/layedit.js @@ -0,0 +1,2 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + ;layui.define(["layer","form"],function(t){"use strict";var e=layui.$,i=layui.layer,a=layui.form,l=(layui.hint(),layui.device()),n="layedit",o="layui-show",r="layui-disabled",c=function(){var t=this;t.index=0,t.config={tool:["strong","italic","underline","del","|","left","center","right","|","link","unlink","face","image"],hideTool:[],height:280}};c.prototype.set=function(t){var i=this;return e.extend(!0,i.config,t),i},c.prototype.on=function(t,e){return layui.onevent(n,t,e)},c.prototype.build=function(t,i){i=i||{};var a=this,n=a.config,r="layui-layedit",c=e("string"==typeof t?"#"+t:t),u="LAY_layedit_"+ ++a.index,d=c.next("."+r),y=e.extend({},n,i),f=function(){var t=[],e={};return layui.each(y.hideTool,function(t,i){e[i]=!0}),layui.each(y.tool,function(i,a){C[a]&&!e[a]&&t.push(C[a])}),t.join("")}(),m=e(['<div class="'+r+'">','<div class="layui-unselect layui-layedit-tool">'+f+"</div>",'<div class="layui-layedit-iframe">','<iframe id="'+u+'" name="'+u+'" textarea="'+t+'" frameborder="0"></iframe>',"</div>","</div>"].join(""));return l.ie&&l.ie<8?c.removeClass("layui-hide").addClass(o):(d[0]&&d.remove(),s.call(a,m,c[0],y),c.addClass("layui-hide").after(m),a.index)},c.prototype.getContent=function(t){var e=u(t);if(e[0])return d(e[0].document.body.innerHTML)},c.prototype.getText=function(t){var i=u(t);if(i[0])return e(i[0].document.body).text()},c.prototype.setContent=function(t,i,a){var l=u(t);l[0]&&(a?e(l[0].document.body).append(i):e(l[0].document.body).html(i),layedit.sync(t))},c.prototype.sync=function(t){var i=u(t);if(i[0]){var a=e("#"+i[1].attr("textarea"));a.val(d(i[0].document.body.innerHTML))}},c.prototype.getSelection=function(t){var e=u(t);if(e[0]){var i=m(e[0].document);return document.selection?i.text:i.toString()}};var s=function(t,i,a){var l=this,n=t.find("iframe");n.css({height:a.height}).on("load",function(){var o=n.contents(),r=n.prop("contentWindow"),c=o.find("head"),s=e(["<style>","*{margin: 0; padding: 0;}","body{padding: 10px; line-height: 20px; overflow-x: hidden; word-wrap: break-word; font: 14px Helvetica Neue,Helvetica,PingFang SC,Microsoft YaHei,Tahoma,Arial,sans-serif; -webkit-box-sizing: border-box !important; -moz-box-sizing: border-box !important; box-sizing: border-box !important;}","a{color:#01AAED; text-decoration:none;}a:hover{color:#c00}","p{margin-bottom: 10px;}","img{display: inline-block; border: none; vertical-align: middle;}","pre{margin: 10px 0; padding: 10px; line-height: 20px; border: 1px solid #ddd; border-left-width: 6px; background-color: #F2F2F2; color: #333; font-family: Courier New; font-size: 12px;}","</style>"].join("")),u=o.find("body");c.append(s),u.attr("contenteditable","true").css({"min-height":a.height}).html(i.value||""),y.apply(l,[r,n,i,a]),g.call(l,r,t,a)})},u=function(t){var i=e("#LAY_layedit_"+t),a=i.prop("contentWindow");return[a,i]},d=function(t){return 8==l.ie&&(t=t.replace(/<.+>/g,function(t){return t.toLowerCase()})),t},y=function(t,a,n,o){var r=t.document,c=e(r.body);c.on("keydown",function(t){var e=t.keyCode;if(13===e){var a=m(r),l=p(a),n=l.parentNode;if("pre"===n.tagName.toLowerCase()){if(t.shiftKey)return;return i.msg("请暂时用shift+enter"),!1}r.execCommand("formatBlock",!1,"<p>")}}),e(n).parents("form").on("submit",function(){var t=c.html();8==l.ie&&(t=t.replace(/<.+>/g,function(t){return t.toLowerCase()})),n.value=t}),c.on("paste",function(e){r.execCommand("formatBlock",!1,"<p>"),setTimeout(function(){f.call(t,c),n.value=c.html()},100)})},f=function(t){var i=this;i.document;t.find("*[style]").each(function(){var t=this.style.textAlign;this.removeAttribute("style"),e(this).css({"text-align":t||""})}),t.find("table").addClass("layui-table"),t.find("script,link").remove()},m=function(t){return t.selection?t.selection.createRange():t.getSelection().getRangeAt(0)},p=function(t){return t.endContainer||t.parentElement().childNodes[0]},v=function(t,i,a){var l=this.document,n=document.createElement(t);for(var o in i)n.setAttribute(o,i[o]);if(n.removeAttribute("text"),l.selection){var r=a.text||i.text;if("a"===t&&!r)return;r&&(n.innerHTML=r),a.pasteHTML(e(n).prop("outerHTML")),a.select()}else{var r=a.toString()||i.text;if("a"===t&&!r)return;r&&(n.innerHTML=r),a.deleteContents(),a.insertNode(n)}},h=function(t,i){var a=this.document,l="layedit-tool-active",n=p(m(a)),o=function(e){return t.find(".layedit-tool-"+e)};i&&i[i.hasClass(l)?"removeClass":"addClass"](l),t.find(">i").removeClass(l),o("unlink").addClass(r),e(n).parents().each(function(){var t=this.tagName.toLowerCase(),e=this.style.textAlign;"b"!==t&&"strong"!==t||o("b").addClass(l),"i"!==t&&"em"!==t||o("i").addClass(l),"u"===t&&o("u").addClass(l),"strike"===t&&o("d").addClass(l),"p"===t&&("center"===e?o("center").addClass(l):"right"===e?o("right").addClass(l):o("left").addClass(l)),"a"===t&&(o("link").addClass(l),o("unlink").removeClass(r))})},g=function(t,a,l){var n=t.document,o=e(n.body),c={link:function(i){var a=p(i),l=e(a).parent();b.call(o,{href:l.attr("href"),target:l.attr("target")},function(e){var a=l[0];"A"===a.tagName?a.href=e.url:v.call(t,"a",{target:e.target,href:e.url,text:e.url},i)})},unlink:function(t){n.execCommand("unlink")},face:function(e){x.call(this,function(i){v.call(t,"img",{src:i.src,alt:i.alt},e)})},image:function(a){var n=this;layui.use("upload",function(o){var r=l.uploadImage||{};o.render({url:r.url,method:r.type,elem:e(n).find("input")[0],done:function(e){0==e.code?(e.data=e.data||{},v.call(t,"img",{src:e.data.src,alt:e.data.title},a)):i.msg(e.msg||"上传失败")}})})},code:function(e){k.call(o,function(i){v.call(t,"pre",{text:i.code,"lay-lang":i.lang},e)})},help:function(){i.open({type:2,title:"帮助",area:["600px","380px"],shadeClose:!0,shade:.1,skin:"layui-layer-msg",content:["http://www.layui.com/about/layedit/help.html","no"]})}},s=a.find(".layui-layedit-tool"),u=function(){var i=e(this),a=i.attr("layedit-event"),l=i.attr("lay-command");if(!i.hasClass(r)){o.focus();var u=m(n);u.commonAncestorContainer;l?(n.execCommand(l),/justifyLeft|justifyCenter|justifyRight/.test(l)&&n.execCommand("formatBlock",!1,"<p>"),setTimeout(function(){o.focus()},10)):c[a]&&c[a].call(this,u),h.call(t,s,i)}},d=/image/;s.find(">i").on("mousedown",function(){var t=e(this),i=t.attr("layedit-event");d.test(i)||u.call(this)}).on("click",function(){var t=e(this),i=t.attr("layedit-event");d.test(i)&&u.call(this)}),o.on("click",function(){h.call(t,s),i.close(x.index)})},b=function(t,e){var l=this,n=i.open({type:1,id:"LAY_layedit_link",area:"350px",shade:.05,shadeClose:!0,moveType:1,title:"超链接",skin:"layui-layer-msg",content:['<ul class="layui-form" style="margin: 15px;">','<li class="layui-form-item">','<label class="layui-form-label" style="width: 60px;">URL</label>','<div class="layui-input-block" style="margin-left: 90px">','<input name="url" lay-verify="url" value="'+(t.href||"")+'" autofocus="true" autocomplete="off" class="layui-input">',"</div>","</li>",'<li class="layui-form-item">','<label class="layui-form-label" style="width: 60px;">打开方式</label>','<div class="layui-input-block" style="margin-left: 90px">','<input type="radio" name="target" value="_self" class="layui-input" title="当前窗口"'+("_self"!==t.target&&t.target?"":"checked")+">",'<input type="radio" name="target" value="_blank" class="layui-input" title="新窗口" '+("_blank"===t.target?"checked":"")+">","</div>","</li>",'<li class="layui-form-item" style="text-align: center;">','<button type="button" lay-submit lay-filter="layedit-link-yes" class="layui-btn"> 确定 </button>','<button style="margin-left: 20px;" type="button" class="layui-btn layui-btn-primary"> 取消 </button>',"</li>","</ul>"].join(""),success:function(t,n){var o="submit(layedit-link-yes)";a.render("radio"),t.find(".layui-btn-primary").on("click",function(){i.close(n),l.focus()}),a.on(o,function(t){i.close(b.index),e&&e(t.field)})}});b.index=n},x=function(t){var a=function(){var t=["[微笑]","[嘻嘻]","[哈哈]","[可爱]","[可怜]","[挖鼻]","[吃惊]","[害羞]","[挤眼]","[闭嘴]","[鄙视]","[爱你]","[泪]","[偷笑]","[亲亲]","[生病]","[太开心]","[白眼]","[右哼哼]","[左哼哼]","[嘘]","[衰]","[委屈]","[吐]","[哈欠]","[抱抱]","[怒]","[疑问]","[馋嘴]","[拜拜]","[思考]","[汗]","[困]","[睡]","[钱]","[失望]","[酷]","[色]","[哼]","[鼓掌]","[晕]","[悲伤]","[抓狂]","[黑线]","[阴险]","[怒骂]","[互粉]","[心]","[伤心]","[猪头]","[熊猫]","[兔子]","[ok]","[耶]","[good]","[NO]","[赞]","[来]","[弱]","[草泥马]","[神马]","[囧]","[浮云]","[给力]","[围观]","[威武]","[奥特曼]","[礼物]","[钟]","[话筒]","[蜡烛]","[蛋糕]"],e={};return layui.each(t,function(t,i){e[i]=layui.cache.dir+"images/face/"+t+".gif"}),e}();return x.hide=x.hide||function(t){"face"!==e(t.target).attr("layedit-event")&&i.close(x.index)},x.index=i.tips(function(){var t=[];return layui.each(a,function(e,i){t.push('<li title="'+e+'"><img src="'+i+'" alt="'+e+'"></li>')}),'<ul class="layui-clear">'+t.join("")+"</ul>"}(),this,{tips:1,time:0,skin:"layui-box layui-util-face",maxWidth:500,success:function(l,n){l.css({marginTop:-4,marginLeft:-10}).find(".layui-clear>li").on("click",function(){t&&t({src:a[this.title],alt:this.title}),i.close(n)}),e(document).off("click",x.hide).on("click",x.hide)}})},k=function(t){var e=this,l=i.open({type:1,id:"LAY_layedit_code",area:"550px",shade:.05,shadeClose:!0,moveType:1,title:"插入代码",skin:"layui-layer-msg",content:['<ul class="layui-form layui-form-pane" style="margin: 15px;">','<li class="layui-form-item">','<label class="layui-form-label">请选择语言</label>','<div class="layui-input-block">','<select name="lang">','<option value="JavaScript">JavaScript</option>','<option value="HTML">HTML</option>','<option value="CSS">CSS</option>','<option value="Java">Java</option>','<option value="PHP">PHP</option>','<option value="C#">C#</option>','<option value="Python">Python</option>','<option value="Ruby">Ruby</option>','<option value="Go">Go</option>',"</select>","</div>","</li>",'<li class="layui-form-item layui-form-text">','<label class="layui-form-label">代码</label>','<div class="layui-input-block">','<textarea name="code" lay-verify="required" autofocus="true" class="layui-textarea" style="height: 200px;"></textarea>',"</div>","</li>",'<li class="layui-form-item" style="text-align: center;">','<button type="button" lay-submit lay-filter="layedit-code-yes" class="layui-btn"> 确定 </button>','<button style="margin-left: 20px;" type="button" class="layui-btn layui-btn-primary"> 取消 </button>',"</li>","</ul>"].join(""),success:function(l,n){var o="submit(layedit-code-yes)";a.render("select"),l.find(".layui-btn-primary").on("click",function(){i.close(n),e.focus()}),a.on(o,function(e){i.close(k.index),t&&t(e.field)})}});k.index=l},C={html:'<i class="layui-icon layedit-tool-html" title="HTML源代码" lay-command="html" layedit-event="html""></i><span class="layedit-tool-mid"></span>',strong:'<i class="layui-icon layedit-tool-b" title="加粗" lay-command="Bold" layedit-event="b""></i>',italic:'<i class="layui-icon layedit-tool-i" title="斜体" lay-command="italic" layedit-event="i""></i>',underline:'<i class="layui-icon layedit-tool-u" title="下划线" lay-command="underline" layedit-event="u""></i>',del:'<i class="layui-icon layedit-tool-d" title="删除线" lay-command="strikeThrough" layedit-event="d""></i>',"|":'<span class="layedit-tool-mid"></span>',left:'<i class="layui-icon layedit-tool-left" title="左对齐" lay-command="justifyLeft" layedit-event="left""></i>',center:'<i class="layui-icon layedit-tool-center" title="居中对齐" lay-command="justifyCenter" layedit-event="center""></i>',right:'<i class="layui-icon layedit-tool-right" title="右对齐" lay-command="justifyRight" layedit-event="right""></i>',link:'<i class="layui-icon layedit-tool-link" title="插入链接" layedit-event="link""></i>',unlink:'<i class="layui-icon layedit-tool-unlink layui-disabled" title="清除链接" lay-command="unlink" layedit-event="unlink""></i>',face:'<i class="layui-icon layedit-tool-face" title="表情" layedit-event="face""></i>',image:'<i class="layui-icon layedit-tool-image" title="图片" layedit-event="image"><input type="file" name="file"></i>',code:'<i class="layui-icon layedit-tool-code" title="插入代码" layedit-event="code"></i>',help:'<i class="layui-icon layedit-tool-help" title="帮助" layedit-event="help"></i>'},w=new c;t(n,w)}); \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/lay/modules/layer.js b/src/main/resources/static/articles/layui/lay/modules/layer.js new file mode 100644 index 0000000..03e780c --- /dev/null +++ b/src/main/resources/static/articles/layui/lay/modules/layer.js @@ -0,0 +1,2 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + ;!function(e,t){"use strict";var i,n,a=e.layui&&layui.define,o={getPath:function(){var e=document.currentScript?document.currentScript.src:function(){for(var e,t=document.scripts,i=t.length-1,n=i;n>0;n--)if("interactive"===t[n].readyState){e=t[n].src;break}return e||t[i].src}();return e.substring(0,e.lastIndexOf("/")+1)}(),config:{},end:{},minIndex:0,minLeft:[],btn:["确定","取消"],type:["dialog","page","iframe","loading","tips"],getStyle:function(t,i){var n=t.currentStyle?t.currentStyle:e.getComputedStyle(t,null);return n[n.getPropertyValue?"getPropertyValue":"getAttribute"](i)},link:function(t,i,n){if(r.path){var a=document.getElementsByTagName("head")[0],s=document.createElement("link");"string"==typeof i&&(n=i);var l=(n||t).replace(/\.|\//g,""),f="layuicss-"+l,c=0;s.rel="stylesheet",s.href=r.path+t,s.id=f,document.getElementById(f)||a.appendChild(s),"function"==typeof i&&!function u(){return++c>80?e.console&&console.error("layer.css: Invalid"):void(1989===parseInt(o.getStyle(document.getElementById(f),"width"))?i():setTimeout(u,100))}()}}},r={v:"3.1.1",ie:function(){var t=navigator.userAgent.toLowerCase();return!!(e.ActiveXObject||"ActiveXObject"in e)&&((t.match(/msie\s(\d+)/)||[])[1]||"11")}(),index:e.layer&&e.layer.v?1e5:0,path:o.getPath,config:function(e,t){return e=e||{},r.cache=o.config=i.extend({},o.config,e),r.path=o.config.path||r.path,"string"==typeof e.extend&&(e.extend=[e.extend]),o.config.path&&r.ready(),e.extend?(a?layui.addcss("modules/layer/"+e.extend):o.link("theme/"+e.extend),this):this},ready:function(e){var t="layer",i="",n=(a?"modules/layer/":"theme/")+"default/layer.css?v="+r.v+i;return a?layui.addcss(n,e,t):o.link(n,e,t),this},alert:function(e,t,n){var a="function"==typeof t;return a&&(n=t),r.open(i.extend({content:e,yes:n},a?{}:t))},confirm:function(e,t,n,a){var s="function"==typeof t;return s&&(a=n,n=t),r.open(i.extend({content:e,btn:o.btn,yes:n,btn2:a},s?{}:t))},msg:function(e,n,a){var s="function"==typeof n,f=o.config.skin,c=(f?f+" "+f+"-msg":"")||"layui-layer-msg",u=l.anim.length-1;return s&&(a=n),r.open(i.extend({content:e,time:3e3,shade:!1,skin:c,title:!1,closeBtn:!1,btn:!1,resize:!1,end:a},s&&!o.config.skin?{skin:c+" layui-layer-hui",anim:u}:function(){return n=n||{},(n.icon===-1||n.icon===t&&!o.config.skin)&&(n.skin=c+" "+(n.skin||"layui-layer-hui")),n}()))},load:function(e,t){return r.open(i.extend({type:3,icon:e||0,resize:!1,shade:.01},t))},tips:function(e,t,n){return r.open(i.extend({type:4,content:[e,t],closeBtn:!1,time:3e3,shade:!1,resize:!1,fixed:!1,maxWidth:210},n))}},s=function(e){var t=this;t.index=++r.index,t.config=i.extend({},t.config,o.config,e),document.body?t.creat():setTimeout(function(){t.creat()},30)};s.pt=s.prototype;var l=["layui-layer",".layui-layer-title",".layui-layer-main",".layui-layer-dialog","layui-layer-iframe","layui-layer-content","layui-layer-btn","layui-layer-close"];l.anim=["layer-anim-00","layer-anim-01","layer-anim-02","layer-anim-03","layer-anim-04","layer-anim-05","layer-anim-06"],s.pt.config={type:0,shade:.3,fixed:!0,move:l[1],title:"信息",offset:"auto",area:"auto",closeBtn:1,time:0,zIndex:19891014,maxWidth:360,anim:0,isOutAnim:!0,icon:-1,moveType:1,resize:!0,scrollbar:!0,tips:2},s.pt.vessel=function(e,t){var n=this,a=n.index,r=n.config,s=r.zIndex+a,f="object"==typeof r.title,c=r.maxmin&&(1===r.type||2===r.type),u=r.title?'<div class="layui-layer-title" style="'+(f?r.title[1]:"")+'">'+(f?r.title[0]:r.title)+"</div>":"";return r.zIndex=s,t([r.shade?'<div class="layui-layer-shade" id="layui-layer-shade'+a+'" times="'+a+'" style="'+("z-index:"+(s-1)+"; ")+'"></div>':"",'<div class="'+l[0]+(" layui-layer-"+o.type[r.type])+(0!=r.type&&2!=r.type||r.shade?"":" layui-layer-border")+" "+(r.skin||"")+'" id="'+l[0]+a+'" type="'+o.type[r.type]+'" times="'+a+'" showtime="'+r.time+'" conType="'+(e?"object":"string")+'" style="z-index: '+s+"; width:"+r.area[0]+";height:"+r.area[1]+(r.fixed?"":";position:absolute;")+'">'+(e&&2!=r.type?"":u)+'<div id="'+(r.id||"")+'" class="layui-layer-content'+(0==r.type&&r.icon!==-1?" layui-layer-padding":"")+(3==r.type?" layui-layer-loading"+r.icon:"")+'">'+(0==r.type&&r.icon!==-1?'<i class="layui-layer-ico layui-layer-ico'+r.icon+'"></i>':"")+(1==r.type&&e?"":r.content||"")+'</div><span class="layui-layer-setwin">'+function(){var e=c?'<a class="layui-layer-min" href="javascript:;"><cite></cite></a><a class="layui-layer-ico layui-layer-max" href="javascript:;"></a>':"";return r.closeBtn&&(e+='<a class="layui-layer-ico '+l[7]+" "+l[7]+(r.title?r.closeBtn:4==r.type?"1":"2")+'" href="javascript:;"></a>'),e}()+"</span>"+(r.btn?function(){var e="";"string"==typeof r.btn&&(r.btn=[r.btn]);for(var t=0,i=r.btn.length;t<i;t++)e+='<a class="'+l[6]+t+'">'+r.btn[t]+"</a>";return'<div class="'+l[6]+" layui-layer-btn-"+(r.btnAlign||"")+'">'+e+"</div>"}():"")+(r.resize?'<span class="layui-layer-resize"></span>':"")+"</div>"],u,i('<div class="layui-layer-move"></div>')),n},s.pt.creat=function(){var e=this,t=e.config,a=e.index,s=t.content,f="object"==typeof s,c=i("body");if(!t.id||!i("#"+t.id)[0]){switch("string"==typeof t.area&&(t.area="auto"===t.area?["",""]:[t.area,""]),t.shift&&(t.anim=t.shift),6==r.ie&&(t.fixed=!1),t.type){case 0:t.btn="btn"in t?t.btn:o.btn[0],r.closeAll("dialog");break;case 2:var s=t.content=f?t.content:[t.content||"","auto"];t.content='<iframe scrolling="'+(t.content[1]||"auto")+'" allowtransparency="true" id="'+l[4]+a+'" name="'+l[4]+a+'" onload="this.className=\'\';" class="layui-layer-load" frameborder="0" src="'+t.content[0]+'"></iframe>';break;case 3:delete t.title,delete t.closeBtn,t.icon===-1&&0===t.icon,r.closeAll("loading");break;case 4:f||(t.content=[t.content,"body"]),t.follow=t.content[1],t.content=t.content[0]+'<i class="layui-layer-TipsG"></i>',delete t.title,t.tips="object"==typeof t.tips?t.tips:[t.tips,!0],t.tipsMore||r.closeAll("tips")}if(e.vessel(f,function(n,r,u){c.append(n[0]),f?function(){2==t.type||4==t.type?function(){i("body").append(n[1])}():function(){s.parents("."+l[0])[0]||(s.data("display",s.css("display")).show().addClass("layui-layer-wrap").wrap(n[1]),i("#"+l[0]+a).find("."+l[5]).before(r))}()}():c.append(n[1]),i(".layui-layer-move")[0]||c.append(o.moveElem=u),e.layero=i("#"+l[0]+a),t.scrollbar||l.html.css("overflow","hidden").attr("layer-full",a)}).auto(a),i("#layui-layer-shade"+e.index).css({"background-color":t.shade[1]||"#000",opacity:t.shade[0]||t.shade}),2==t.type&&6==r.ie&&e.layero.find("iframe").attr("src",s[0]),4==t.type?e.tips():e.offset(),t.fixed&&n.on("resize",function(){e.offset(),(/^\d+%$/.test(t.area[0])||/^\d+%$/.test(t.area[1]))&&e.auto(a),4==t.type&&e.tips()}),t.time<=0||setTimeout(function(){r.close(e.index)},t.time),e.move().callback(),l.anim[t.anim]){var u="layer-anim "+l.anim[t.anim];e.layero.addClass(u).one("webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend",function(){i(this).removeClass(u)})}t.isOutAnim&&e.layero.data("isOutAnim",!0)}},s.pt.auto=function(e){var t=this,a=t.config,o=i("#"+l[0]+e);""===a.area[0]&&a.maxWidth>0&&(r.ie&&r.ie<8&&a.btn&&o.width(o.innerWidth()),o.outerWidth()>a.maxWidth&&o.width(a.maxWidth));var s=[o.innerWidth(),o.innerHeight()],f=o.find(l[1]).outerHeight()||0,c=o.find("."+l[6]).outerHeight()||0,u=function(e){e=o.find(e),e.height(s[1]-f-c-2*(0|parseFloat(e.css("padding-top"))))};switch(a.type){case 2:u("iframe");break;default:""===a.area[1]?a.maxHeight>0&&o.outerHeight()>a.maxHeight?(s[1]=a.maxHeight,u("."+l[5])):a.fixed&&s[1]>=n.height()&&(s[1]=n.height(),u("."+l[5])):u("."+l[5])}return t},s.pt.offset=function(){var e=this,t=e.config,i=e.layero,a=[i.outerWidth(),i.outerHeight()],o="object"==typeof t.offset;e.offsetTop=(n.height()-a[1])/2,e.offsetLeft=(n.width()-a[0])/2,o?(e.offsetTop=t.offset[0],e.offsetLeft=t.offset[1]||e.offsetLeft):"auto"!==t.offset&&("t"===t.offset?e.offsetTop=0:"r"===t.offset?e.offsetLeft=n.width()-a[0]:"b"===t.offset?e.offsetTop=n.height()-a[1]:"l"===t.offset?e.offsetLeft=0:"lt"===t.offset?(e.offsetTop=0,e.offsetLeft=0):"lb"===t.offset?(e.offsetTop=n.height()-a[1],e.offsetLeft=0):"rt"===t.offset?(e.offsetTop=0,e.offsetLeft=n.width()-a[0]):"rb"===t.offset?(e.offsetTop=n.height()-a[1],e.offsetLeft=n.width()-a[0]):e.offsetTop=t.offset),t.fixed||(e.offsetTop=/%$/.test(e.offsetTop)?n.height()*parseFloat(e.offsetTop)/100:parseFloat(e.offsetTop),e.offsetLeft=/%$/.test(e.offsetLeft)?n.width()*parseFloat(e.offsetLeft)/100:parseFloat(e.offsetLeft),e.offsetTop+=n.scrollTop(),e.offsetLeft+=n.scrollLeft()),i.attr("minLeft")&&(e.offsetTop=n.height()-(i.find(l[1]).outerHeight()||0),e.offsetLeft=i.css("left")),i.css({top:e.offsetTop,left:e.offsetLeft})},s.pt.tips=function(){var e=this,t=e.config,a=e.layero,o=[a.outerWidth(),a.outerHeight()],r=i(t.follow);r[0]||(r=i("body"));var s={width:r.outerWidth(),height:r.outerHeight(),top:r.offset().top,left:r.offset().left},f=a.find(".layui-layer-TipsG"),c=t.tips[0];t.tips[1]||f.remove(),s.autoLeft=function(){s.left+o[0]-n.width()>0?(s.tipLeft=s.left+s.width-o[0],f.css({right:12,left:"auto"})):s.tipLeft=s.left},s.where=[function(){s.autoLeft(),s.tipTop=s.top-o[1]-10,f.removeClass("layui-layer-TipsB").addClass("layui-layer-TipsT").css("border-right-color",t.tips[1])},function(){s.tipLeft=s.left+s.width+10,s.tipTop=s.top,f.removeClass("layui-layer-TipsL").addClass("layui-layer-TipsR").css("border-bottom-color",t.tips[1])},function(){s.autoLeft(),s.tipTop=s.top+s.height+10,f.removeClass("layui-layer-TipsT").addClass("layui-layer-TipsB").css("border-right-color",t.tips[1])},function(){s.tipLeft=s.left-o[0]-10,s.tipTop=s.top,f.removeClass("layui-layer-TipsR").addClass("layui-layer-TipsL").css("border-bottom-color",t.tips[1])}],s.where[c-1](),1===c?s.top-(n.scrollTop()+o[1]+16)<0&&s.where[2]():2===c?n.width()-(s.left+s.width+o[0]+16)>0||s.where[3]():3===c?s.top-n.scrollTop()+s.height+o[1]+16-n.height()>0&&s.where[0]():4===c&&o[0]+16-s.left>0&&s.where[1](),a.find("."+l[5]).css({"background-color":t.tips[1],"padding-right":t.closeBtn?"30px":""}),a.css({left:s.tipLeft-(t.fixed?n.scrollLeft():0),top:s.tipTop-(t.fixed?n.scrollTop():0)})},s.pt.move=function(){var e=this,t=e.config,a=i(document),s=e.layero,l=s.find(t.move),f=s.find(".layui-layer-resize"),c={};return t.move&&l.css("cursor","move"),l.on("mousedown",function(e){e.preventDefault(),t.move&&(c.moveStart=!0,c.offset=[e.clientX-parseFloat(s.css("left")),e.clientY-parseFloat(s.css("top"))],o.moveElem.css("cursor","move").show())}),f.on("mousedown",function(e){e.preventDefault(),c.resizeStart=!0,c.offset=[e.clientX,e.clientY],c.area=[s.outerWidth(),s.outerHeight()],o.moveElem.css("cursor","se-resize").show()}),a.on("mousemove",function(i){if(c.moveStart){var a=i.clientX-c.offset[0],o=i.clientY-c.offset[1],l="fixed"===s.css("position");if(i.preventDefault(),c.stX=l?0:n.scrollLeft(),c.stY=l?0:n.scrollTop(),!t.moveOut){var f=n.width()-s.outerWidth()+c.stX,u=n.height()-s.outerHeight()+c.stY;a<c.stX&&(a=c.stX),a>f&&(a=f),o<c.stY&&(o=c.stY),o>u&&(o=u)}s.css({left:a,top:o})}if(t.resize&&c.resizeStart){var a=i.clientX-c.offset[0],o=i.clientY-c.offset[1];i.preventDefault(),r.style(e.index,{width:c.area[0]+a,height:c.area[1]+o}),c.isResize=!0,t.resizing&&t.resizing(s)}}).on("mouseup",function(e){c.moveStart&&(delete c.moveStart,o.moveElem.hide(),t.moveEnd&&t.moveEnd(s)),c.resizeStart&&(delete c.resizeStart,o.moveElem.hide())}),e},s.pt.callback=function(){function e(){var e=a.cancel&&a.cancel(t.index,n);e===!1||r.close(t.index)}var t=this,n=t.layero,a=t.config;t.openLayer(),a.success&&(2==a.type?n.find("iframe").on("load",function(){a.success(n,t.index)}):a.success(n,t.index)),6==r.ie&&t.IE6(n),n.find("."+l[6]).children("a").on("click",function(){var e=i(this).index();if(0===e)a.yes?a.yes(t.index,n):a.btn1?a.btn1(t.index,n):r.close(t.index);else{var o=a["btn"+(e+1)]&&a["btn"+(e+1)](t.index,n);o===!1||r.close(t.index)}}),n.find("."+l[7]).on("click",e),a.shadeClose&&i("#layui-layer-shade"+t.index).on("click",function(){r.close(t.index)}),n.find(".layui-layer-min").on("click",function(){var e=a.min&&a.min(n);e===!1||r.min(t.index,a)}),n.find(".layui-layer-max").on("click",function(){i(this).hasClass("layui-layer-maxmin")?(r.restore(t.index),a.restore&&a.restore(n)):(r.full(t.index,a),setTimeout(function(){a.full&&a.full(n)},100))}),a.end&&(o.end[t.index]=a.end)},o.reselect=function(){i.each(i("select"),function(e,t){var n=i(this);n.parents("."+l[0])[0]||1==n.attr("layer")&&i("."+l[0]).length<1&&n.removeAttr("layer").show(),n=null})},s.pt.IE6=function(e){i("select").each(function(e,t){var n=i(this);n.parents("."+l[0])[0]||"none"===n.css("display")||n.attr({layer:"1"}).hide(),n=null})},s.pt.openLayer=function(){var e=this;r.zIndex=e.config.zIndex,r.setTop=function(e){var t=function(){r.zIndex++,e.css("z-index",r.zIndex+1)};return r.zIndex=parseInt(e[0].style.zIndex),e.on("mousedown",t),r.zIndex}},o.record=function(e){var t=[e.width(),e.height(),e.position().top,e.position().left+parseFloat(e.css("margin-left"))];e.find(".layui-layer-max").addClass("layui-layer-maxmin"),e.attr({area:t})},o.rescollbar=function(e){l.html.attr("layer-full")==e&&(l.html[0].style.removeProperty?l.html[0].style.removeProperty("overflow"):l.html[0].style.removeAttribute("overflow"),l.html.removeAttr("layer-full"))},e.layer=r,r.getChildFrame=function(e,t){return t=t||i("."+l[4]).attr("times"),i("#"+l[0]+t).find("iframe").contents().find(e)},r.getFrameIndex=function(e){return i("#"+e).parents("."+l[4]).attr("times")},r.iframeAuto=function(e){if(e){var t=r.getChildFrame("html",e).outerHeight(),n=i("#"+l[0]+e),a=n.find(l[1]).outerHeight()||0,o=n.find("."+l[6]).outerHeight()||0;n.css({height:t+a+o}),n.find("iframe").css({height:t})}},r.iframeSrc=function(e,t){i("#"+l[0]+e).find("iframe").attr("src",t)},r.style=function(e,t,n){var a=i("#"+l[0]+e),r=a.find(".layui-layer-content"),s=a.attr("type"),f=a.find(l[1]).outerHeight()||0,c=a.find("."+l[6]).outerHeight()||0;a.attr("minLeft");s!==o.type[3]&&s!==o.type[4]&&(n||(parseFloat(t.width)<=260&&(t.width=260),parseFloat(t.height)-f-c<=64&&(t.height=64+f+c)),a.css(t),c=a.find("."+l[6]).outerHeight(),s===o.type[2]?a.find("iframe").css({height:parseFloat(t.height)-f-c}):r.css({height:parseFloat(t.height)-f-c-parseFloat(r.css("padding-top"))-parseFloat(r.css("padding-bottom"))}))},r.min=function(e,t){var a=i("#"+l[0]+e),s=a.find(l[1]).outerHeight()||0,f=a.attr("minLeft")||181*o.minIndex+"px",c=a.css("position");o.record(a),o.minLeft[0]&&(f=o.minLeft[0],o.minLeft.shift()),a.attr("position",c),r.style(e,{width:180,height:s,left:f,top:n.height()-s,position:"fixed",overflow:"hidden"},!0),a.find(".layui-layer-min").hide(),"page"===a.attr("type")&&a.find(l[4]).hide(),o.rescollbar(e),a.attr("minLeft")||o.minIndex++,a.attr("minLeft",f)},r.restore=function(e){var t=i("#"+l[0]+e),n=t.attr("area").split(",");t.attr("type");r.style(e,{width:parseFloat(n[0]),height:parseFloat(n[1]),top:parseFloat(n[2]),left:parseFloat(n[3]),position:t.attr("position"),overflow:"visible"},!0),t.find(".layui-layer-max").removeClass("layui-layer-maxmin"),t.find(".layui-layer-min").show(),"page"===t.attr("type")&&t.find(l[4]).show(),o.rescollbar(e)},r.full=function(e){var t,a=i("#"+l[0]+e);o.record(a),l.html.attr("layer-full")||l.html.css("overflow","hidden").attr("layer-full",e),clearTimeout(t),t=setTimeout(function(){var t="fixed"===a.css("position");r.style(e,{top:t?0:n.scrollTop(),left:t?0:n.scrollLeft(),width:n.width(),height:n.height()},!0),a.find(".layui-layer-min").hide()},100)},r.title=function(e,t){var n=i("#"+l[0]+(t||r.index)).find(l[1]);n.html(e)},r.close=function(e){var t=i("#"+l[0]+e),n=t.attr("type"),a="layer-anim-close";if(t[0]){var s="layui-layer-wrap",f=function(){if(n===o.type[1]&&"object"===t.attr("conType")){t.children(":not(."+l[5]+")").remove();for(var a=t.find("."+s),r=0;r<2;r++)a.unwrap();a.css("display",a.data("display")).removeClass(s)}else{if(n===o.type[2])try{var f=i("#"+l[4]+e)[0];f.contentWindow.document.write(""),f.contentWindow.close(),t.find("."+l[5])[0].removeChild(f)}catch(c){}t[0].innerHTML="",t.remove()}"function"==typeof o.end[e]&&o.end[e](),delete o.end[e]};t.data("isOutAnim")&&t.addClass("layer-anim "+a),i("#layui-layer-moves, #layui-layer-shade"+e).remove(),6==r.ie&&o.reselect(),o.rescollbar(e),t.attr("minLeft")&&(o.minIndex--,o.minLeft.push(t.attr("minLeft"))),r.ie&&r.ie<10||!t.data("isOutAnim")?f():setTimeout(function(){f()},200)}},r.closeAll=function(e){i.each(i("."+l[0]),function(){var t=i(this),n=e?t.attr("type")===e:1;n&&r.close(t.attr("times")),n=null})};var f=r.cache||{},c=function(e){return f.skin?" "+f.skin+" "+f.skin+"-"+e:""};r.prompt=function(e,t){var a="";if(e=e||{},"function"==typeof e&&(t=e),e.area){var o=e.area;a='style="width: '+o[0]+"; height: "+o[1]+';"',delete e.area}var s,l=2==e.formType?'<textarea class="layui-layer-input"'+a+"></textarea>":function(){return'<input type="'+(1==e.formType?"password":"text")+'" class="layui-layer-input">'}(),f=e.success;return delete e.success,r.open(i.extend({type:1,btn:["确定","取消"],content:l,skin:"layui-layer-prompt"+c("prompt"),maxWidth:n.width(),success:function(t){s=t.find(".layui-layer-input"),s.val(e.value||"").focus(),"function"==typeof f&&f(t)},resize:!1,yes:function(i){var n=s.val();""===n?s.focus():n.length>(e.maxlength||500)?r.tips("最多输入"+(e.maxlength||500)+"个字数",s,{tips:1}):t&&t(n,i,s)}},e))},r.tab=function(e){e=e||{};var t=e.tab||{},n="layui-this",a=e.success;return delete e.success,r.open(i.extend({type:1,skin:"layui-layer-tab"+c("tab"),resize:!1,title:function(){var e=t.length,i=1,a="";if(e>0)for(a='<span class="'+n+'">'+t[0].title+"</span>";i<e;i++)a+="<span>"+t[i].title+"</span>";return a}(),content:'<ul class="layui-layer-tabmain">'+function(){var e=t.length,i=1,a="";if(e>0)for(a='<li class="layui-layer-tabli '+n+'">'+(t[0].content||"no content")+"</li>";i<e;i++)a+='<li class="layui-layer-tabli">'+(t[i].content||"no content")+"</li>";return a}()+"</ul>",success:function(t){var o=t.find(".layui-layer-title").children(),r=t.find(".layui-layer-tabmain").children();o.on("mousedown",function(t){t.stopPropagation?t.stopPropagation():t.cancelBubble=!0;var a=i(this),o=a.index();a.addClass(n).siblings().removeClass(n),r.eq(o).show().siblings().hide(),"function"==typeof e.change&&e.change(o)}),"function"==typeof a&&a(t)}},e))},r.photos=function(t,n,a){function o(e,t,i){var n=new Image;return n.src=e,n.complete?t(n):(n.onload=function(){n.onload=null,t(n)},void(n.onerror=function(e){n.onerror=null,i(e)}))}var s={};if(t=t||{},t.photos){var l=t.photos.constructor===Object,f=l?t.photos:{},u=f.data||[],d=f.start||0;s.imgIndex=(0|d)+1,t.img=t.img||"img";var y=t.success;if(delete t.success,l){if(0===u.length)return r.msg("没有图片")}else{var p=i(t.photos),h=function(){u=[],p.find(t.img).each(function(e){var t=i(this);t.attr("layer-index",e),u.push({alt:t.attr("alt"),pid:t.attr("layer-pid"),src:t.attr("layer-src")||t.attr("src"),thumb:t.attr("src")})})};if(h(),0===u.length)return;if(n||p.on("click",t.img,function(){var e=i(this),n=e.attr("layer-index");r.photos(i.extend(t,{photos:{start:n,data:u,tab:t.tab},full:t.full}),!0),h()}),!n)return}s.imgprev=function(e){s.imgIndex--,s.imgIndex<1&&(s.imgIndex=u.length),s.tabimg(e)},s.imgnext=function(e,t){s.imgIndex++,s.imgIndex>u.length&&(s.imgIndex=1,t)||s.tabimg(e)},s.keyup=function(e){if(!s.end){var t=e.keyCode;e.preventDefault(),37===t?s.imgprev(!0):39===t?s.imgnext(!0):27===t&&r.close(s.index)}},s.tabimg=function(e){if(!(u.length<=1))return f.start=s.imgIndex-1,r.close(s.index),r.photos(t,!0,e)},s.event=function(){s.bigimg.hover(function(){s.imgsee.show()},function(){s.imgsee.hide()}),s.bigimg.find(".layui-layer-imgprev").on("click",function(e){e.preventDefault(),s.imgprev()}),s.bigimg.find(".layui-layer-imgnext").on("click",function(e){e.preventDefault(),s.imgnext()}),i(document).on("keyup",s.keyup)},s.loadi=r.load(1,{shade:!("shade"in t)&&.9,scrollbar:!1}),o(u[d].src,function(n){r.close(s.loadi),s.index=r.open(i.extend({type:1,id:"layui-layer-photos",area:function(){var a=[n.width,n.height],o=[i(e).width()-100,i(e).height()-100];if(!t.full&&(a[0]>o[0]||a[1]>o[1])){var r=[a[0]/o[0],a[1]/o[1]];r[0]>r[1]?(a[0]=a[0]/r[0],a[1]=a[1]/r[0]):r[0]<r[1]&&(a[0]=a[0]/r[1],a[1]=a[1]/r[1])}return[a[0]+"px",a[1]+"px"]}(),title:!1,shade:.9,shadeClose:!0,closeBtn:!1,move:".layui-layer-phimg img",moveType:1,scrollbar:!1,moveOut:!0,isOutAnim:!1,skin:"layui-layer-photos"+c("photos"),content:'<div class="layui-layer-phimg"><img src="'+u[d].src+'" alt="'+(u[d].alt||"")+'" layer-pid="'+u[d].pid+'"><div class="layui-layer-imgsee">'+(u.length>1?'<span class="layui-layer-imguide"><a href="javascript:;" class="layui-layer-iconext layui-layer-imgprev"></a><a href="javascript:;" class="layui-layer-iconext layui-layer-imgnext"></a></span>':"")+'<div class="layui-layer-imgbar" style="display:'+(a?"block":"")+'"><span class="layui-layer-imgtit"><a href="javascript:;">'+(u[d].alt||"")+"</a><em>"+s.imgIndex+"/"+u.length+"</em></span></div></div></div>",success:function(e,i){s.bigimg=e.find(".layui-layer-phimg"),s.imgsee=e.find(".layui-layer-imguide,.layui-layer-imgbar"),s.event(e),t.tab&&t.tab(u[d],e),"function"==typeof y&&y(e)},end:function(){s.end=!0,i(document).off("keyup",s.keyup)}},t))},function(){r.close(s.loadi),r.msg("当前图片地址异常<br>是否继续查看下一张?",{time:3e4,btn:["下一张","不看了"],yes:function(){u.length>1&&s.imgnext(!0,!0)}})})}},o.run=function(t){i=t,n=i(e),l.html=i("html"),r.open=function(e){var t=new s(e);return t.index}},e.layui&&layui.define?(r.ready(),layui.define("jquery",function(t){r.path=layui.cache.dir,o.run(layui.$),e.layer=r,t("layer",r)})):"function"==typeof define&&define.amd?define(["jquery"],function(){return o.run(e.jQuery),r}):function(){o.run(e.jQuery),r.ready()}()}(window); \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/lay/modules/laypage.js b/src/main/resources/static/articles/layui/lay/modules/laypage.js new file mode 100644 index 0000000..2e2ab0d --- /dev/null +++ b/src/main/resources/static/articles/layui/lay/modules/laypage.js @@ -0,0 +1,2 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + ;layui.define(function(e){"use strict";var a=document,t="getElementById",n="getElementsByTagName",i="laypage",r="layui-disabled",u=function(e){var a=this;a.config=e||{},a.config.index=++s.index,a.render(!0)};u.prototype.type=function(){var e=this.config;if("object"==typeof e.elem)return void 0===e.elem.length?2:3},u.prototype.view=function(){var e=this,a=e.config,t=a.groups="groups"in a?0|a.groups:5;a.layout="object"==typeof a.layout?a.layout:["prev","page","next"],a.count=0|a.count,a.curr=0|a.curr||1,a.limits="object"==typeof a.limits?a.limits:[10,20,30,40,50],a.limit=0|a.limit||10,a.pages=Math.ceil(a.count/a.limit)||1,a.curr>a.pages&&(a.curr=a.pages),t<0?t=1:t>a.pages&&(t=a.pages),a.prev="prev"in a?a.prev:"上一页",a.next="next"in a?a.next:"下一页";var n=a.pages>t?Math.ceil((a.curr+(t>1?1:0))/(t>0?t:1)):1,i={prev:function(){return a.prev?'<a href="javascript:;" class="layui-laypage-prev'+(1==a.curr?" "+r:"")+'" data-page="'+(a.curr-1)+'">'+a.prev+"</a>":""}(),page:function(){var e=[];if(a.count<1)return"";n>1&&a.first!==!1&&0!==t&&e.push('<a href="javascript:;" class="layui-laypage-first" data-page="1" title="首页">'+(a.first||1)+"</a>");var i=Math.floor((t-1)/2),r=n>1?a.curr-i:1,u=n>1?function(){var e=a.curr+(t-i-1);return e>a.pages?a.pages:e}():t;for(u-r<t-1&&(r=u-t+1),a.first!==!1&&r>2&&e.push('<span class="layui-laypage-spr">…</span>');r<=u;r++)r===a.curr?e.push('<span class="layui-laypage-curr"><em class="layui-laypage-em" '+(/^#/.test(a.theme)?'style="background-color:'+a.theme+';"':"")+"></em><em>"+r+"</em></span>"):e.push('<a href="javascript:;" data-page="'+r+'">'+r+"</a>");return a.pages>t&&a.pages>u&&a.last!==!1&&(u+1<a.pages&&e.push('<span class="layui-laypage-spr">…</span>'),0!==t&&e.push('<a href="javascript:;" class="layui-laypage-last" title="尾页" data-page="'+a.pages+'">'+(a.last||a.pages)+"</a>")),e.join("")}(),next:function(){return a.next?'<a href="javascript:;" class="layui-laypage-next'+(a.curr==a.pages?" "+r:"")+'" data-page="'+(a.curr+1)+'">'+a.next+"</a>":""}(),count:'<span class="layui-laypage-count">共 '+a.count+" 条</span>",limit:function(){var e=['<span class="layui-laypage-limits"><select lay-ignore>'];return layui.each(a.limits,function(t,n){e.push('<option value="'+n+'"'+(n===a.limit?"selected":"")+">"+n+" 条/页</option>")}),e.join("")+"</select></span>"}(),refresh:['<a href="javascript:;" data-page="'+a.curr+'" class="layui-laypage-refresh">','<i class="layui-icon layui-icon-refresh"></i>',"</a>"].join(""),skip:function(){return['<span class="layui-laypage-skip">到第','<input type="text" min="1" value="'+a.curr+'" class="layui-input">','页<button type="button" class="layui-laypage-btn">确定</button>',"</span>"].join("")}()};return['<div class="layui-box layui-laypage layui-laypage-'+(a.theme?/^#/.test(a.theme)?"molv":a.theme:"default")+'" id="layui-laypage-'+a.index+'">',function(){var e=[];return layui.each(a.layout,function(a,t){i[t]&&e.push(i[t])}),e.join("")}(),"</div>"].join("")},u.prototype.jump=function(e,a){if(e){var t=this,i=t.config,r=e.children,u=e[n]("button")[0],l=e[n]("input")[0],p=e[n]("select")[0],c=function(){var e=0|l.value.replace(/\s|\D/g,"");e&&(i.curr=e,t.render())};if(a)return c();for(var o=0,y=r.length;o<y;o++)"a"===r[o].nodeName.toLowerCase()&&s.on(r[o],"click",function(){var e=0|this.getAttribute("data-page");e<1||e>i.pages||(i.curr=e,t.render())});p&&s.on(p,"change",function(){var e=this.value;i.curr*e>i.count&&(i.curr=Math.ceil(i.count/e)),i.limit=e,t.render()}),u&&s.on(u,"click",function(){c()})}},u.prototype.skip=function(e){if(e){var a=this,t=e[n]("input")[0];t&&s.on(t,"keyup",function(t){var n=this.value,i=t.keyCode;/^(37|38|39|40)$/.test(i)||(/\D/.test(n)&&(this.value=n.replace(/\D/,"")),13===i&&a.jump(e,!0))})}},u.prototype.render=function(e){var n=this,i=n.config,r=n.type(),u=n.view();2===r?i.elem&&(i.elem.innerHTML=u):3===r?i.elem.html(u):a[t](i.elem)&&(a[t](i.elem).innerHTML=u),i.jump&&i.jump(i,e);var s=a[t]("layui-laypage-"+i.index);n.jump(s),i.hash&&!e&&(location.hash="!"+i.hash+"="+i.curr),n.skip(s)};var s={render:function(e){var a=new u(e);return a.index},index:layui.laypage?layui.laypage.index+1e4:0,on:function(e,a,t){return e.attachEvent?e.attachEvent("on"+a,function(a){a.target=a.srcElement,t.call(e,a)}):e.addEventListener(a,t,!1),this}};e(i,s)}); \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/lay/modules/laytpl.js b/src/main/resources/static/articles/layui/lay/modules/laytpl.js new file mode 100644 index 0000000..11cc3c4 --- /dev/null +++ b/src/main/resources/static/articles/layui/lay/modules/laytpl.js @@ -0,0 +1,2 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + ;layui.define(function(e){"use strict";var r={open:"{{",close:"}}"},c={exp:function(e){return new RegExp(e,"g")},query:function(e,c,t){var o=["#([\\s\\S])+?","([^{#}])*?"][e||0];return n((c||"")+r.open+o+r.close+(t||""))},escape:function(e){return String(e||"").replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/'/g,"'").replace(/"/g,""")},error:function(e,r){var c="Laytpl Error:";return"object"==typeof console&&console.error(c+e+"\n"+(r||"")),c+e}},n=c.exp,t=function(e){this.tpl=e};t.pt=t.prototype,window.errors=0,t.pt.parse=function(e,t){var o=this,p=e,a=n("^"+r.open+"#",""),l=n(r.close+"$","");e=e.replace(/\s+|\r|\t|\n/g," ").replace(n(r.open+"#"),r.open+"# ").replace(n(r.close+"}"),"} "+r.close).replace(/\\/g,"\\\\").replace(n(r.open+"!(.+?)!"+r.close),function(e){return e=e.replace(n("^"+r.open+"!"),"").replace(n("!"+r.close),"").replace(n(r.open+"|"+r.close),function(e){return e.replace(/(.)/g,"\\$1")})}).replace(/(?="|')/g,"\\").replace(c.query(),function(e){return e=e.replace(a,"").replace(l,""),'";'+e.replace(/\\/g,"")+';view+="'}).replace(c.query(1),function(e){var c='"+(';return e.replace(/\s/g,"")===r.open+r.close?"":(e=e.replace(n(r.open+"|"+r.close),""),/^=/.test(e)&&(e=e.replace(/^=/,""),c='"+_escape_('),c+e.replace(/\\/g,"")+')+"')}),e='"use strict";var view = "'+e+'";return view;';try{return o.cache=e=new Function("d, _escape_",e),e(t,c.escape)}catch(u){return delete o.cache,c.error(u,p)}},t.pt.render=function(e,r){var n,t=this;return e?(n=t.cache?t.cache(e,c.escape):t.parse(t.tpl,e),r?void r(n):n):c.error("no data")};var o=function(e){return"string"!=typeof e?c.error("Template not found"):new t(e)};o.config=function(e){e=e||{};for(var c in e)r[c]=e[c]},o.v="1.2.0",e("laytpl",o)}); \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/lay/modules/mobile.js b/src/main/resources/static/articles/layui/lay/modules/mobile.js new file mode 100644 index 0000000..ebda601 --- /dev/null +++ b/src/main/resources/static/articles/layui/lay/modules/mobile.js @@ -0,0 +1,2 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + ;layui.define(function(i){i("layui.mobile",layui.v)});layui.define(function(e){"use strict";var r={open:"{{",close:"}}"},c={exp:function(e){return new RegExp(e,"g")},query:function(e,c,t){var o=["#([\\s\\S])+?","([^{#}])*?"][e||0];return n((c||"")+r.open+o+r.close+(t||""))},escape:function(e){return String(e||"").replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/'/g,"'").replace(/"/g,""")},error:function(e,r){var c="Laytpl Error:";return"object"==typeof console&&console.error(c+e+"\n"+(r||"")),c+e}},n=c.exp,t=function(e){this.tpl=e};t.pt=t.prototype,window.errors=0,t.pt.parse=function(e,t){var o=this,p=e,a=n("^"+r.open+"#",""),l=n(r.close+"$","");e=e.replace(/\s+|\r|\t|\n/g," ").replace(n(r.open+"#"),r.open+"# ").replace(n(r.close+"}"),"} "+r.close).replace(/\\/g,"\\\\").replace(n(r.open+"!(.+?)!"+r.close),function(e){return e=e.replace(n("^"+r.open+"!"),"").replace(n("!"+r.close),"").replace(n(r.open+"|"+r.close),function(e){return e.replace(/(.)/g,"\\$1")})}).replace(/(?="|')/g,"\\").replace(c.query(),function(e){return e=e.replace(a,"").replace(l,""),'";'+e.replace(/\\/g,"")+';view+="'}).replace(c.query(1),function(e){var c='"+(';return e.replace(/\s/g,"")===r.open+r.close?"":(e=e.replace(n(r.open+"|"+r.close),""),/^=/.test(e)&&(e=e.replace(/^=/,""),c='"+_escape_('),c+e.replace(/\\/g,"")+')+"')}),e='"use strict";var view = "'+e+'";return view;';try{return o.cache=e=new Function("d, _escape_",e),e(t,c.escape)}catch(u){return delete o.cache,c.error(u,p)}},t.pt.render=function(e,r){var n,t=this;return e?(n=t.cache?t.cache(e,c.escape):t.parse(t.tpl,e),r?void r(n):n):c.error("no data")};var o=function(e){return"string"!=typeof e?c.error("Template not found"):new t(e)};o.config=function(e){e=e||{};for(var c in e)r[c]=e[c]},o.v="1.2.0",e("laytpl",o)});layui.define(function(e){"use strict";var t=(window,document),i="querySelectorAll",n="getElementsByClassName",a=function(e){return t[i](e)},s={type:0,shade:!0,shadeClose:!0,fixed:!0,anim:"scale"},l={extend:function(e){var t=JSON.parse(JSON.stringify(s));for(var i in e)t[i]=e[i];return t},timer:{},end:{}};l.touch=function(e,t){e.addEventListener("click",function(e){t.call(this,e)},!1)};var o=0,r=["layui-m-layer"],d=function(e){var t=this;t.config=l.extend(e),t.view()};d.prototype.view=function(){var e=this,i=e.config,s=t.createElement("div");e.id=s.id=r[0]+o,s.setAttribute("class",r[0]+" "+r[0]+(i.type||0)),s.setAttribute("index",o);var l=function(){var e="object"==typeof i.title;return i.title?'<h3 style="'+(e?i.title[1]:"")+'">'+(e?i.title[0]:i.title)+"</h3>":""}(),d=function(){"string"==typeof i.btn&&(i.btn=[i.btn]);var e,t=(i.btn||[]).length;return 0!==t&&i.btn?(e='<span yes type="1">'+i.btn[0]+"</span>",2===t&&(e='<span no type="0">'+i.btn[1]+"</span>"+e),'<div class="layui-m-layerbtn">'+e+"</div>"):""}();if(i.fixed||(i.top=i.hasOwnProperty("top")?i.top:100,i.style=i.style||"",i.style+=" top:"+(t.body.scrollTop+i.top)+"px"),2===i.type&&(i.content='<i></i><i class="layui-m-layerload"></i><i></i><p>'+(i.content||"")+"</p>"),i.skin&&(i.anim="up"),"msg"===i.skin&&(i.shade=!1),s.innerHTML=(i.shade?"<div "+("string"==typeof i.shade?'style="'+i.shade+'"':"")+' class="layui-m-layershade"></div>':"")+'<div class="layui-m-layermain" '+(i.fixed?"":'style="position:static;"')+'><div class="layui-m-layersection"><div class="layui-m-layerchild '+(i.skin?"layui-m-layer-"+i.skin+" ":"")+(i.className?i.className:"")+" "+(i.anim?"layui-m-anim-"+i.anim:"")+'" '+(i.style?'style="'+i.style+'"':"")+">"+l+'<div class="layui-m-layercont">'+i.content+"</div>"+d+"</div></div></div>",!i.type||2===i.type){var y=t[n](r[0]+i.type),u=y.length;u>=1&&c.close(y[0].getAttribute("index"))}document.body.appendChild(s);var m=e.elem=a("#"+e.id)[0];i.success&&i.success(m),e.index=o++,e.action(i,m)},d.prototype.action=function(e,t){var i=this;e.time&&(l.timer[i.index]=setTimeout(function(){c.close(i.index)},1e3*e.time));var a=function(){var t=this.getAttribute("type");0==t?(e.no&&e.no(),c.close(i.index)):e.yes?e.yes(i.index):c.close(i.index)};if(e.btn)for(var s=t[n]("layui-m-layerbtn")[0].children,o=s.length,r=0;r<o;r++)l.touch(s[r],a);if(e.shade&&e.shadeClose){var d=t[n]("layui-m-layershade")[0];l.touch(d,function(){c.close(i.index,e.end)})}e.end&&(l.end[i.index]=e.end)};var c={v:"2.0 m",index:o,open:function(e){var t=new d(e||{});return t.index},close:function(e){var i=a("#"+r[0]+e)[0];i&&(i.innerHTML="",t.body.removeChild(i),clearTimeout(l.timer[e]),delete l.timer[e],"function"==typeof l.end[e]&&l.end[e](),delete l.end[e])},closeAll:function(){for(var e=t[n](r[0]),i=0,a=e.length;i<a;i++)c.close(0|e[0].getAttribute("index"))}};e("layer-mobile",c)});layui.define(function(t){var e=function(){function t(t){return null==t?String(t):J[W.call(t)]||"object"}function e(e){return"function"==t(e)}function n(t){return null!=t&&t==t.window}function r(t){return null!=t&&t.nodeType==t.DOCUMENT_NODE}function i(e){return"object"==t(e)}function o(t){return i(t)&&!n(t)&&Object.getPrototypeOf(t)==Object.prototype}function a(t){var e=!!t&&"length"in t&&t.length,r=T.type(t);return"function"!=r&&!n(t)&&("array"==r||0===e||"number"==typeof e&&e>0&&e-1 in t)}function s(t){return A.call(t,function(t){return null!=t})}function u(t){return t.length>0?T.fn.concat.apply([],t):t}function c(t){return t.replace(/::/g,"/").replace(/([A-Z]+)([A-Z][a-z])/g,"$1_$2").replace(/([a-z\d])([A-Z])/g,"$1_$2").replace(/_/g,"-").toLowerCase()}function l(t){return t in F?F[t]:F[t]=new RegExp("(^|\\s)"+t+"(\\s|$)")}function f(t,e){return"number"!=typeof e||k[c(t)]?e:e+"px"}function h(t){var e,n;return $[t]||(e=L.createElement(t),L.body.appendChild(e),n=getComputedStyle(e,"").getPropertyValue("display"),e.parentNode.removeChild(e),"none"==n&&(n="block"),$[t]=n),$[t]}function p(t){return"children"in t?D.call(t.children):T.map(t.childNodes,function(t){if(1==t.nodeType)return t})}function d(t,e){var n,r=t?t.length:0;for(n=0;n<r;n++)this[n]=t[n];this.length=r,this.selector=e||""}function m(t,e,n){for(j in e)n&&(o(e[j])||Q(e[j]))?(o(e[j])&&!o(t[j])&&(t[j]={}),Q(e[j])&&!Q(t[j])&&(t[j]=[]),m(t[j],e[j],n)):e[j]!==E&&(t[j]=e[j])}function v(t,e){return null==e?T(t):T(t).filter(e)}function g(t,n,r,i){return e(n)?n.call(t,r,i):n}function y(t,e,n){null==n?t.removeAttribute(e):t.setAttribute(e,n)}function x(t,e){var n=t.className||"",r=n&&n.baseVal!==E;return e===E?r?n.baseVal:n:void(r?n.baseVal=e:t.className=e)}function b(t){try{return t?"true"==t||"false"!=t&&("null"==t?null:+t+""==t?+t:/^[\[\{]/.test(t)?T.parseJSON(t):t):t}catch(e){return t}}function w(t,e){e(t);for(var n=0,r=t.childNodes.length;n<r;n++)w(t.childNodes[n],e)}var E,j,T,S,C,N,O=[],P=O.concat,A=O.filter,D=O.slice,L=window.document,$={},F={},k={"column-count":1,columns:1,"font-weight":1,"line-height":1,opacity:1,"z-index":1,zoom:1},M=/^\s*<(\w+|!)[^>]*>/,R=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,z=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,Z=/^(?:body|html)$/i,q=/([A-Z])/g,H=["val","css","html","text","data","width","height","offset"],I=["after","prepend","before","append"],V=L.createElement("table"),_=L.createElement("tr"),B={tr:L.createElement("tbody"),tbody:V,thead:V,tfoot:V,td:_,th:_,"*":L.createElement("div")},U=/complete|loaded|interactive/,X=/^[\w-]*$/,J={},W=J.toString,Y={},G=L.createElement("div"),K={tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},Q=Array.isArray||function(t){return t instanceof Array};return Y.matches=function(t,e){if(!e||!t||1!==t.nodeType)return!1;var n=t.matches||t.webkitMatchesSelector||t.mozMatchesSelector||t.oMatchesSelector||t.matchesSelector;if(n)return n.call(t,e);var r,i=t.parentNode,o=!i;return o&&(i=G).appendChild(t),r=~Y.qsa(i,e).indexOf(t),o&&G.removeChild(t),r},C=function(t){return t.replace(/-+(.)?/g,function(t,e){return e?e.toUpperCase():""})},N=function(t){return A.call(t,function(e,n){return t.indexOf(e)==n})},Y.fragment=function(t,e,n){var r,i,a;return R.test(t)&&(r=T(L.createElement(RegExp.$1))),r||(t.replace&&(t=t.replace(z,"<$1></$2>")),e===E&&(e=M.test(t)&&RegExp.$1),e in B||(e="*"),a=B[e],a.innerHTML=""+t,r=T.each(D.call(a.childNodes),function(){a.removeChild(this)})),o(n)&&(i=T(r),T.each(n,function(t,e){H.indexOf(t)>-1?i[t](e):i.attr(t,e)})),r},Y.Z=function(t,e){return new d(t,e)},Y.isZ=function(t){return t instanceof Y.Z},Y.init=function(t,n){var r;if(!t)return Y.Z();if("string"==typeof t)if(t=t.trim(),"<"==t[0]&&M.test(t))r=Y.fragment(t,RegExp.$1,n),t=null;else{if(n!==E)return T(n).find(t);r=Y.qsa(L,t)}else{if(e(t))return T(L).ready(t);if(Y.isZ(t))return t;if(Q(t))r=s(t);else if(i(t))r=[t],t=null;else if(M.test(t))r=Y.fragment(t.trim(),RegExp.$1,n),t=null;else{if(n!==E)return T(n).find(t);r=Y.qsa(L,t)}}return Y.Z(r,t)},T=function(t,e){return Y.init(t,e)},T.extend=function(t){var e,n=D.call(arguments,1);return"boolean"==typeof t&&(e=t,t=n.shift()),n.forEach(function(n){m(t,n,e)}),t},Y.qsa=function(t,e){var n,r="#"==e[0],i=!r&&"."==e[0],o=r||i?e.slice(1):e,a=X.test(o);return t.getElementById&&a&&r?(n=t.getElementById(o))?[n]:[]:1!==t.nodeType&&9!==t.nodeType&&11!==t.nodeType?[]:D.call(a&&!r&&t.getElementsByClassName?i?t.getElementsByClassName(o):t.getElementsByTagName(e):t.querySelectorAll(e))},T.contains=L.documentElement.contains?function(t,e){return t!==e&&t.contains(e)}:function(t,e){for(;e&&(e=e.parentNode);)if(e===t)return!0;return!1},T.type=t,T.isFunction=e,T.isWindow=n,T.isArray=Q,T.isPlainObject=o,T.isEmptyObject=function(t){var e;for(e in t)return!1;return!0},T.isNumeric=function(t){var e=Number(t),n=typeof t;return null!=t&&"boolean"!=n&&("string"!=n||t.length)&&!isNaN(e)&&isFinite(e)||!1},T.inArray=function(t,e,n){return O.indexOf.call(e,t,n)},T.camelCase=C,T.trim=function(t){return null==t?"":String.prototype.trim.call(t)},T.uuid=0,T.support={},T.expr={},T.noop=function(){},T.map=function(t,e){var n,r,i,o=[];if(a(t))for(r=0;r<t.length;r++)n=e(t[r],r),null!=n&&o.push(n);else for(i in t)n=e(t[i],i),null!=n&&o.push(n);return u(o)},T.each=function(t,e){var n,r;if(a(t)){for(n=0;n<t.length;n++)if(e.call(t[n],n,t[n])===!1)return t}else for(r in t)if(e.call(t[r],r,t[r])===!1)return t;return t},T.grep=function(t,e){return A.call(t,e)},window.JSON&&(T.parseJSON=JSON.parse),T.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(t,e){J["[object "+e+"]"]=e.toLowerCase()}),T.fn={constructor:Y.Z,length:0,forEach:O.forEach,reduce:O.reduce,push:O.push,sort:O.sort,splice:O.splice,indexOf:O.indexOf,concat:function(){var t,e,n=[];for(t=0;t<arguments.length;t++)e=arguments[t],n[t]=Y.isZ(e)?e.toArray():e;return P.apply(Y.isZ(this)?this.toArray():this,n)},map:function(t){return T(T.map(this,function(e,n){return t.call(e,n,e)}))},slice:function(){return T(D.apply(this,arguments))},ready:function(t){return U.test(L.readyState)&&L.body?t(T):L.addEventListener("DOMContentLoaded",function(){t(T)},!1),this},get:function(t){return t===E?D.call(this):this[t>=0?t:t+this.length]},toArray:function(){return this.get()},size:function(){return this.length},remove:function(){return this.each(function(){null!=this.parentNode&&this.parentNode.removeChild(this)})},each:function(t){return O.every.call(this,function(e,n){return t.call(e,n,e)!==!1}),this},filter:function(t){return e(t)?this.not(this.not(t)):T(A.call(this,function(e){return Y.matches(e,t)}))},add:function(t,e){return T(N(this.concat(T(t,e))))},is:function(t){return this.length>0&&Y.matches(this[0],t)},not:function(t){var n=[];if(e(t)&&t.call!==E)this.each(function(e){t.call(this,e)||n.push(this)});else{var r="string"==typeof t?this.filter(t):a(t)&&e(t.item)?D.call(t):T(t);this.forEach(function(t){r.indexOf(t)<0&&n.push(t)})}return T(n)},has:function(t){return this.filter(function(){return i(t)?T.contains(this,t):T(this).find(t).size()})},eq:function(t){return t===-1?this.slice(t):this.slice(t,+t+1)},first:function(){var t=this[0];return t&&!i(t)?t:T(t)},last:function(){var t=this[this.length-1];return t&&!i(t)?t:T(t)},find:function(t){var e,n=this;return e=t?"object"==typeof t?T(t).filter(function(){var t=this;return O.some.call(n,function(e){return T.contains(e,t)})}):1==this.length?T(Y.qsa(this[0],t)):this.map(function(){return Y.qsa(this,t)}):T()},closest:function(t,e){var n=[],i="object"==typeof t&&T(t);return this.each(function(o,a){for(;a&&!(i?i.indexOf(a)>=0:Y.matches(a,t));)a=a!==e&&!r(a)&&a.parentNode;a&&n.indexOf(a)<0&&n.push(a)}),T(n)},parents:function(t){for(var e=[],n=this;n.length>0;)n=T.map(n,function(t){if((t=t.parentNode)&&!r(t)&&e.indexOf(t)<0)return e.push(t),t});return v(e,t)},parent:function(t){return v(N(this.pluck("parentNode")),t)},children:function(t){return v(this.map(function(){return p(this)}),t)},contents:function(){return this.map(function(){return this.contentDocument||D.call(this.childNodes)})},siblings:function(t){return v(this.map(function(t,e){return A.call(p(e.parentNode),function(t){return t!==e})}),t)},empty:function(){return this.each(function(){this.innerHTML=""})},pluck:function(t){return T.map(this,function(e){return e[t]})},show:function(){return this.each(function(){"none"==this.style.display&&(this.style.display=""),"none"==getComputedStyle(this,"").getPropertyValue("display")&&(this.style.display=h(this.nodeName))})},replaceWith:function(t){return this.before(t).remove()},wrap:function(t){var n=e(t);if(this[0]&&!n)var r=T(t).get(0),i=r.parentNode||this.length>1;return this.each(function(e){T(this).wrapAll(n?t.call(this,e):i?r.cloneNode(!0):r)})},wrapAll:function(t){if(this[0]){T(this[0]).before(t=T(t));for(var e;(e=t.children()).length;)t=e.first();T(t).append(this)}return this},wrapInner:function(t){var n=e(t);return this.each(function(e){var r=T(this),i=r.contents(),o=n?t.call(this,e):t;i.length?i.wrapAll(o):r.append(o)})},unwrap:function(){return this.parent().each(function(){T(this).replaceWith(T(this).children())}),this},clone:function(){return this.map(function(){return this.cloneNode(!0)})},hide:function(){return this.css("display","none")},toggle:function(t){return this.each(function(){var e=T(this);(t===E?"none"==e.css("display"):t)?e.show():e.hide()})},prev:function(t){return T(this.pluck("previousElementSibling")).filter(t||"*")},next:function(t){return T(this.pluck("nextElementSibling")).filter(t||"*")},html:function(t){return 0 in arguments?this.each(function(e){var n=this.innerHTML;T(this).empty().append(g(this,t,e,n))}):0 in this?this[0].innerHTML:null},text:function(t){return 0 in arguments?this.each(function(e){var n=g(this,t,e,this.textContent);this.textContent=null==n?"":""+n}):0 in this?this.pluck("textContent").join(""):null},attr:function(t,e){var n;return"string"!=typeof t||1 in arguments?this.each(function(n){if(1===this.nodeType)if(i(t))for(j in t)y(this,j,t[j]);else y(this,t,g(this,e,n,this.getAttribute(t)))}):0 in this&&1==this[0].nodeType&&null!=(n=this[0].getAttribute(t))?n:E},removeAttr:function(t){return this.each(function(){1===this.nodeType&&t.split(" ").forEach(function(t){y(this,t)},this)})},prop:function(t,e){return t=K[t]||t,1 in arguments?this.each(function(n){this[t]=g(this,e,n,this[t])}):this[0]&&this[0][t]},removeProp:function(t){return t=K[t]||t,this.each(function(){delete this[t]})},data:function(t,e){var n="data-"+t.replace(q,"-$1").toLowerCase(),r=1 in arguments?this.attr(n,e):this.attr(n);return null!==r?b(r):E},val:function(t){return 0 in arguments?(null==t&&(t=""),this.each(function(e){this.value=g(this,t,e,this.value)})):this[0]&&(this[0].multiple?T(this[0]).find("option").filter(function(){return this.selected}).pluck("value"):this[0].value)},offset:function(t){if(t)return this.each(function(e){var n=T(this),r=g(this,t,e,n.offset()),i=n.offsetParent().offset(),o={top:r.top-i.top,left:r.left-i.left};"static"==n.css("position")&&(o.position="relative"),n.css(o)});if(!this.length)return null;if(L.documentElement!==this[0]&&!T.contains(L.documentElement,this[0]))return{top:0,left:0};var e=this[0].getBoundingClientRect();return{left:e.left+window.pageXOffset,top:e.top+window.pageYOffset,width:Math.round(e.width),height:Math.round(e.height)}},css:function(e,n){if(arguments.length<2){var r=this[0];if("string"==typeof e){if(!r)return;return r.style[C(e)]||getComputedStyle(r,"").getPropertyValue(e)}if(Q(e)){if(!r)return;var i={},o=getComputedStyle(r,"");return T.each(e,function(t,e){i[e]=r.style[C(e)]||o.getPropertyValue(e)}),i}}var a="";if("string"==t(e))n||0===n?a=c(e)+":"+f(e,n):this.each(function(){this.style.removeProperty(c(e))});else for(j in e)e[j]||0===e[j]?a+=c(j)+":"+f(j,e[j])+";":this.each(function(){this.style.removeProperty(c(j))});return this.each(function(){this.style.cssText+=";"+a})},index:function(t){return t?this.indexOf(T(t)[0]):this.parent().children().indexOf(this[0])},hasClass:function(t){return!!t&&O.some.call(this,function(t){return this.test(x(t))},l(t))},addClass:function(t){return t?this.each(function(e){if("className"in this){S=[];var n=x(this),r=g(this,t,e,n);r.split(/\s+/g).forEach(function(t){T(this).hasClass(t)||S.push(t)},this),S.length&&x(this,n+(n?" ":"")+S.join(" "))}}):this},removeClass:function(t){return this.each(function(e){if("className"in this){if(t===E)return x(this,"");S=x(this),g(this,t,e,S).split(/\s+/g).forEach(function(t){S=S.replace(l(t)," ")}),x(this,S.trim())}})},toggleClass:function(t,e){return t?this.each(function(n){var r=T(this),i=g(this,t,n,x(this));i.split(/\s+/g).forEach(function(t){(e===E?!r.hasClass(t):e)?r.addClass(t):r.removeClass(t)})}):this},scrollTop:function(t){if(this.length){var e="scrollTop"in this[0];return t===E?e?this[0].scrollTop:this[0].pageYOffset:this.each(e?function(){this.scrollTop=t}:function(){this.scrollTo(this.scrollX,t)})}},scrollLeft:function(t){if(this.length){var e="scrollLeft"in this[0];return t===E?e?this[0].scrollLeft:this[0].pageXOffset:this.each(e?function(){this.scrollLeft=t}:function(){this.scrollTo(t,this.scrollY)})}},position:function(){if(this.length){var t=this[0],e=this.offsetParent(),n=this.offset(),r=Z.test(e[0].nodeName)?{top:0,left:0}:e.offset();return n.top-=parseFloat(T(t).css("margin-top"))||0,n.left-=parseFloat(T(t).css("margin-left"))||0,r.top+=parseFloat(T(e[0]).css("border-top-width"))||0,r.left+=parseFloat(T(e[0]).css("border-left-width"))||0,{top:n.top-r.top,left:n.left-r.left}}},offsetParent:function(){return this.map(function(){for(var t=this.offsetParent||L.body;t&&!Z.test(t.nodeName)&&"static"==T(t).css("position");)t=t.offsetParent;return t})}},T.fn.detach=T.fn.remove,["width","height"].forEach(function(t){var e=t.replace(/./,function(t){return t[0].toUpperCase()});T.fn[t]=function(i){var o,a=this[0];return i===E?n(a)?a["inner"+e]:r(a)?a.documentElement["scroll"+e]:(o=this.offset())&&o[t]:this.each(function(e){a=T(this),a.css(t,g(this,i,e,a[t]()))})}}),I.forEach(function(e,n){var r=n%2;T.fn[e]=function(){var e,i,o=T.map(arguments,function(n){var r=[];return e=t(n),"array"==e?(n.forEach(function(t){return t.nodeType!==E?r.push(t):T.zepto.isZ(t)?r=r.concat(t.get()):void(r=r.concat(Y.fragment(t)))}),r):"object"==e||null==n?n:Y.fragment(n)}),a=this.length>1;return o.length<1?this:this.each(function(t,e){i=r?e:e.parentNode,e=0==n?e.nextSibling:1==n?e.firstChild:2==n?e:null;var s=T.contains(L.documentElement,i);o.forEach(function(t){if(a)t=t.cloneNode(!0);else if(!i)return T(t).remove();i.insertBefore(t,e),s&&w(t,function(t){if(!(null==t.nodeName||"SCRIPT"!==t.nodeName.toUpperCase()||t.type&&"text/javascript"!==t.type||t.src)){var e=t.ownerDocument?t.ownerDocument.defaultView:window;e.eval.call(e,t.innerHTML)}})})})},T.fn[r?e+"To":"insert"+(n?"Before":"After")]=function(t){return T(t)[e](this),this}}),Y.Z.prototype=d.prototype=T.fn,Y.uniq=N,Y.deserializeValue=b,T.zepto=Y,T}();!function(t){function e(t){return t._zid||(t._zid=h++)}function n(t,n,o,a){if(n=r(n),n.ns)var s=i(n.ns);return(v[e(t)]||[]).filter(function(t){return t&&(!n.e||t.e==n.e)&&(!n.ns||s.test(t.ns))&&(!o||e(t.fn)===e(o))&&(!a||t.sel==a)})}function r(t){var e=(""+t).split(".");return{e:e[0],ns:e.slice(1).sort().join(" ")}}function i(t){return new RegExp("(?:^| )"+t.replace(" "," .* ?")+"(?: |$)")}function o(t,e){return t.del&&!y&&t.e in x||!!e}function a(t){return b[t]||y&&x[t]||t}function s(n,i,s,u,l,h,p){var d=e(n),m=v[d]||(v[d]=[]);i.split(/\s/).forEach(function(e){if("ready"==e)return t(document).ready(s);var i=r(e);i.fn=s,i.sel=l,i.e in b&&(s=function(e){var n=e.relatedTarget;if(!n||n!==this&&!t.contains(this,n))return i.fn.apply(this,arguments)}),i.del=h;var d=h||s;i.proxy=function(t){if(t=c(t),!t.isImmediatePropagationStopped()){t.data=u;var e=d.apply(n,t._args==f?[t]:[t].concat(t._args));return e===!1&&(t.preventDefault(),t.stopPropagation()),e}},i.i=m.length,m.push(i),"addEventListener"in n&&n.addEventListener(a(i.e),i.proxy,o(i,p))})}function u(t,r,i,s,u){var c=e(t);(r||"").split(/\s/).forEach(function(e){n(t,e,i,s).forEach(function(e){delete v[c][e.i],"removeEventListener"in t&&t.removeEventListener(a(e.e),e.proxy,o(e,u))})})}function c(e,n){return!n&&e.isDefaultPrevented||(n||(n=e),t.each(T,function(t,r){var i=n[t];e[t]=function(){return this[r]=w,i&&i.apply(n,arguments)},e[r]=E}),e.timeStamp||(e.timeStamp=Date.now()),(n.defaultPrevented!==f?n.defaultPrevented:"returnValue"in n?n.returnValue===!1:n.getPreventDefault&&n.getPreventDefault())&&(e.isDefaultPrevented=w)),e}function l(t){var e,n={originalEvent:t};for(e in t)j.test(e)||t[e]===f||(n[e]=t[e]);return c(n,t)}var f,h=1,p=Array.prototype.slice,d=t.isFunction,m=function(t){return"string"==typeof t},v={},g={},y="onfocusin"in window,x={focus:"focusin",blur:"focusout"},b={mouseenter:"mouseover",mouseleave:"mouseout"};g.click=g.mousedown=g.mouseup=g.mousemove="MouseEvents",t.event={add:s,remove:u},t.proxy=function(n,r){var i=2 in arguments&&p.call(arguments,2);if(d(n)){var o=function(){return n.apply(r,i?i.concat(p.call(arguments)):arguments)};return o._zid=e(n),o}if(m(r))return i?(i.unshift(n[r],n),t.proxy.apply(null,i)):t.proxy(n[r],n);throw new TypeError("expected function")},t.fn.bind=function(t,e,n){return this.on(t,e,n)},t.fn.unbind=function(t,e){return this.off(t,e)},t.fn.one=function(t,e,n,r){return this.on(t,e,n,r,1)};var w=function(){return!0},E=function(){return!1},j=/^([A-Z]|returnValue$|layer[XY]$|webkitMovement[XY]$)/,T={preventDefault:"isDefaultPrevented",stopImmediatePropagation:"isImmediatePropagationStopped",stopPropagation:"isPropagationStopped"};t.fn.delegate=function(t,e,n){return this.on(e,t,n)},t.fn.undelegate=function(t,e,n){return this.off(e,t,n)},t.fn.live=function(e,n){return t(document.body).delegate(this.selector,e,n),this},t.fn.die=function(e,n){return t(document.body).undelegate(this.selector,e,n),this},t.fn.on=function(e,n,r,i,o){var a,c,h=this;return e&&!m(e)?(t.each(e,function(t,e){h.on(t,n,r,e,o)}),h):(m(n)||d(i)||i===!1||(i=r,r=n,n=f),i!==f&&r!==!1||(i=r,r=f),i===!1&&(i=E),h.each(function(f,h){o&&(a=function(t){return u(h,t.type,i),i.apply(this,arguments)}),n&&(c=function(e){var r,o=t(e.target).closest(n,h).get(0);if(o&&o!==h)return r=t.extend(l(e),{currentTarget:o,liveFired:h}),(a||i).apply(o,[r].concat(p.call(arguments,1)))}),s(h,e,i,r,n,c||a)}))},t.fn.off=function(e,n,r){var i=this;return e&&!m(e)?(t.each(e,function(t,e){i.off(t,n,e)}),i):(m(n)||d(r)||r===!1||(r=n,n=f),r===!1&&(r=E),i.each(function(){u(this,e,r,n)}))},t.fn.trigger=function(e,n){return e=m(e)||t.isPlainObject(e)?t.Event(e):c(e),e._args=n,this.each(function(){e.type in x&&"function"==typeof this[e.type]?this[e.type]():"dispatchEvent"in this?this.dispatchEvent(e):t(this).triggerHandler(e,n)})},t.fn.triggerHandler=function(e,r){var i,o;return this.each(function(a,s){i=l(m(e)?t.Event(e):e),i._args=r,i.target=s,t.each(n(s,e.type||e),function(t,e){if(o=e.proxy(i),i.isImmediatePropagationStopped())return!1})}),o},"focusin focusout focus blur load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select keydown keypress keyup error".split(" ").forEach(function(e){t.fn[e]=function(t){return 0 in arguments?this.bind(e,t):this.trigger(e)}}),t.Event=function(t,e){m(t)||(e=t,t=e.type);var n=document.createEvent(g[t]||"Events"),r=!0;if(e)for(var i in e)"bubbles"==i?r=!!e[i]:n[i]=e[i];return n.initEvent(t,r,!0),c(n)}}(e),function(t){function e(e,n,r){var i=t.Event(n);return t(e).trigger(i,r),!i.isDefaultPrevented()}function n(t,n,r,i){if(t.global)return e(n||x,r,i)}function r(e){e.global&&0===t.active++&&n(e,null,"ajaxStart")}function i(e){e.global&&!--t.active&&n(e,null,"ajaxStop")}function o(t,e){var r=e.context;return e.beforeSend.call(r,t,e)!==!1&&n(e,r,"ajaxBeforeSend",[t,e])!==!1&&void n(e,r,"ajaxSend",[t,e])}function a(t,e,r,i){var o=r.context,a="success";r.success.call(o,t,a,e),i&&i.resolveWith(o,[t,a,e]),n(r,o,"ajaxSuccess",[e,r,t]),u(a,e,r)}function s(t,e,r,i,o){var a=i.context;i.error.call(a,r,e,t),o&&o.rejectWith(a,[r,e,t]),n(i,a,"ajaxError",[r,i,t||e]),u(e,r,i)}function u(t,e,r){var o=r.context;r.complete.call(o,e,t),n(r,o,"ajaxComplete",[e,r]),i(r)}function c(t,e,n){if(n.dataFilter==l)return t;var r=n.context;return n.dataFilter.call(r,t,e)}function l(){}function f(t){return t&&(t=t.split(";",2)[0]),t&&(t==T?"html":t==j?"json":w.test(t)?"script":E.test(t)&&"xml")||"text"}function h(t,e){return""==e?t:(t+"&"+e).replace(/[&?]{1,2}/,"?")}function p(e){e.processData&&e.data&&"string"!=t.type(e.data)&&(e.data=t.param(e.data,e.traditional)),!e.data||e.type&&"GET"!=e.type.toUpperCase()&&"jsonp"!=e.dataType||(e.url=h(e.url,e.data),e.data=void 0)}function d(e,n,r,i){return t.isFunction(n)&&(i=r,r=n,n=void 0),t.isFunction(r)||(i=r,r=void 0),{url:e,data:n,success:r,dataType:i}}function m(e,n,r,i){var o,a=t.isArray(n),s=t.isPlainObject(n);t.each(n,function(n,u){o=t.type(u),i&&(n=r?i:i+"["+(s||"object"==o||"array"==o?n:"")+"]"),!i&&a?e.add(u.name,u.value):"array"==o||!r&&"object"==o?m(e,u,r,n):e.add(n,u)})}var v,g,y=+new Date,x=window.document,b=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,w=/^(?:text|application)\/javascript/i,E=/^(?:text|application)\/xml/i,j="application/json",T="text/html",S=/^\s*$/,C=x.createElement("a");C.href=window.location.href,t.active=0,t.ajaxJSONP=function(e,n){if(!("type"in e))return t.ajax(e);var r,i,u=e.jsonpCallback,c=(t.isFunction(u)?u():u)||"Zepto"+y++,l=x.createElement("script"),f=window[c],h=function(e){t(l).triggerHandler("error",e||"abort")},p={abort:h};return n&&n.promise(p),t(l).on("load error",function(o,u){clearTimeout(i),t(l).off().remove(),"error"!=o.type&&r?a(r[0],p,e,n):s(null,u||"error",p,e,n),window[c]=f,r&&t.isFunction(f)&&f(r[0]),f=r=void 0}),o(p,e)===!1?(h("abort"),p):(window[c]=function(){r=arguments},l.src=e.url.replace(/\?(.+)=\?/,"?$1="+c),x.head.appendChild(l),e.timeout>0&&(i=setTimeout(function(){h("timeout")},e.timeout)),p)},t.ajaxSettings={type:"GET",beforeSend:l,success:l,error:l,complete:l,context:null,global:!0,xhr:function(){return new window.XMLHttpRequest},accepts:{script:"text/javascript, application/javascript, application/x-javascript",json:j,xml:"application/xml, text/xml",html:T,text:"text/plain"},crossDomain:!1,timeout:0,processData:!0,cache:!0,dataFilter:l},t.ajax=function(e){var n,i,u=t.extend({},e||{}),d=t.Deferred&&t.Deferred();for(v in t.ajaxSettings)void 0===u[v]&&(u[v]=t.ajaxSettings[v]);r(u),u.crossDomain||(n=x.createElement("a"),n.href=u.url,n.href=n.href,u.crossDomain=C.protocol+"//"+C.host!=n.protocol+"//"+n.host),u.url||(u.url=window.location.toString()),(i=u.url.indexOf("#"))>-1&&(u.url=u.url.slice(0,i)),p(u);var m=u.dataType,y=/\?.+=\?/.test(u.url);if(y&&(m="jsonp"),u.cache!==!1&&(e&&e.cache===!0||"script"!=m&&"jsonp"!=m)||(u.url=h(u.url,"_="+Date.now())),"jsonp"==m)return y||(u.url=h(u.url,u.jsonp?u.jsonp+"=?":u.jsonp===!1?"":"callback=?")),t.ajaxJSONP(u,d);var b,w=u.accepts[m],E={},j=function(t,e){E[t.toLowerCase()]=[t,e]},T=/^([\w-]+:)\/\//.test(u.url)?RegExp.$1:window.location.protocol,N=u.xhr(),O=N.setRequestHeader;if(d&&d.promise(N),u.crossDomain||j("X-Requested-With","XMLHttpRequest"),j("Accept",w||"*/*"),(w=u.mimeType||w)&&(w.indexOf(",")>-1&&(w=w.split(",",2)[0]),N.overrideMimeType&&N.overrideMimeType(w)),(u.contentType||u.contentType!==!1&&u.data&&"GET"!=u.type.toUpperCase())&&j("Content-Type",u.contentType||"application/x-www-form-urlencoded"),u.headers)for(g in u.headers)j(g,u.headers[g]);if(N.setRequestHeader=j,N.onreadystatechange=function(){if(4==N.readyState){N.onreadystatechange=l,clearTimeout(b);var e,n=!1;if(N.status>=200&&N.status<300||304==N.status||0==N.status&&"file:"==T){if(m=m||f(u.mimeType||N.getResponseHeader("content-type")),"arraybuffer"==N.responseType||"blob"==N.responseType)e=N.response;else{e=N.responseText;try{e=c(e,m,u),"script"==m?(0,eval)(e):"xml"==m?e=N.responseXML:"json"==m&&(e=S.test(e)?null:t.parseJSON(e))}catch(r){n=r}if(n)return s(n,"parsererror",N,u,d)}a(e,N,u,d)}else s(N.statusText||null,N.status?"error":"abort",N,u,d)}},o(N,u)===!1)return N.abort(),s(null,"abort",N,u,d),N;var P=!("async"in u)||u.async;if(N.open(u.type,u.url,P,u.username,u.password),u.xhrFields)for(g in u.xhrFields)N[g]=u.xhrFields[g];for(g in E)O.apply(N,E[g]);return u.timeout>0&&(b=setTimeout(function(){N.onreadystatechange=l,N.abort(),s(null,"timeout",N,u,d)},u.timeout)),N.send(u.data?u.data:null),N},t.get=function(){return t.ajax(d.apply(null,arguments))},t.post=function(){var e=d.apply(null,arguments);return e.type="POST",t.ajax(e)},t.getJSON=function(){var e=d.apply(null,arguments);return e.dataType="json",t.ajax(e)},t.fn.load=function(e,n,r){if(!this.length)return this;var i,o=this,a=e.split(/\s/),s=d(e,n,r),u=s.success;return a.length>1&&(s.url=a[0],i=a[1]),s.success=function(e){o.html(i?t("<div>").html(e.replace(b,"")).find(i):e),u&&u.apply(o,arguments)},t.ajax(s),this};var N=encodeURIComponent;t.param=function(e,n){var r=[];return r.add=function(e,n){t.isFunction(n)&&(n=n()),null==n&&(n=""),this.push(N(e)+"="+N(n))},m(r,e,n),r.join("&").replace(/%20/g,"+")}}(e),function(t){t.fn.serializeArray=function(){var e,n,r=[],i=function(t){return t.forEach?t.forEach(i):void r.push({name:e,value:t})};return this[0]&&t.each(this[0].elements,function(r,o){n=o.type,e=o.name,e&&"fieldset"!=o.nodeName.toLowerCase()&&!o.disabled&&"submit"!=n&&"reset"!=n&&"button"!=n&&"file"!=n&&("radio"!=n&&"checkbox"!=n||o.checked)&&i(t(o).val())}),r},t.fn.serialize=function(){var t=[];return this.serializeArray().forEach(function(e){t.push(encodeURIComponent(e.name)+"="+encodeURIComponent(e.value))}),t.join("&")},t.fn.submit=function(e){if(0 in arguments)this.bind("submit",e);else if(this.length){var n=t.Event("submit");this.eq(0).trigger(n),n.isDefaultPrevented()||this.get(0).submit()}return this}}(e),function(){try{getComputedStyle(void 0)}catch(t){var e=getComputedStyle;window.getComputedStyle=function(t,n){try{return e(t,n)}catch(r){return null}}}}(),t("zepto",e)});layui.define(function(i){i("layim-mobile",layui.v)});layui["layui.mobile"]||layui.config({base:layui.cache.dir+"lay/modules/mobile/"}).extend({"layer-mobile":"layer-mobile",zepto:"zepto","upload-mobile":"upload-mobile","layim-mobile":"layim-mobile"}),layui.define(["layer-mobile","zepto","layim-mobile"],function(l){l("mobile",{layer:layui["layer-mobile"],layim:layui["layim-mobile"]})}); \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/lay/modules/rate.js b/src/main/resources/static/articles/layui/lay/modules/rate.js new file mode 100644 index 0000000..7feef34 --- /dev/null +++ b/src/main/resources/static/articles/layui/lay/modules/rate.js @@ -0,0 +1,2 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + ;layui.define("jquery",function(e){"use strict";var a=layui.jquery,i={config:{},index:layui.rate?layui.rate.index+1e4:0,set:function(e){var i=this;return i.config=a.extend({},i.config,e),i},on:function(e,a){return layui.onevent.call(this,n,e,a)}},l=function(){var e=this,a=e.config;return{setvalue:function(a){e.setvalue.call(e,a)},config:a}},n="rate",t="layui-rate",o="layui-icon-rate",s="layui-icon-rate-solid",u="layui-icon-rate-half",r="layui-icon-rate-solid layui-icon-rate-half",c="layui-icon-rate-solid layui-icon-rate",f="layui-icon-rate layui-icon-rate-half",v=function(e){var l=this;l.index=++i.index,l.config=a.extend({},l.config,i.config,e),l.render()};v.prototype.config={length:5,text:!1,readonly:!1,half:!1,value:0,theme:""},v.prototype.render=function(){var e=this,i=e.config,l=i.theme?'style="color: '+i.theme+';"':"";i.elem=a(i.elem),parseInt(i.value)!==i.value&&(i.half||(i.value=Math.ceil(i.value)-i.value<.5?Math.ceil(i.value):Math.floor(i.value)));for(var n='<ul class="layui-rate" '+(i.readonly?"readonly":"")+">",u=1;u<=i.length;u++){var r='<li class="layui-inline"><i class="layui-icon '+(u>Math.floor(i.value)?o:s)+'" '+l+"></i></li>";i.half&&parseInt(i.value)!==i.value&&u==Math.ceil(i.value)?n=n+'<li><i class="layui-icon layui-icon-rate-half" '+l+"></i></li>":n+=r}n+="</ul>"+(i.text?'<span class="layui-inline">'+i.value+"星":"")+"</span>";var c=i.elem,f=c.next("."+t);f[0]&&f.remove(),e.elemTemp=a(n),i.span=e.elemTemp.next("span"),i.setText&&i.setText(i.value),c.html(e.elemTemp),c.addClass("layui-inline"),i.readonly||e.action()},v.prototype.setvalue=function(e){var a=this,i=a.config;i.value=e,a.render()},v.prototype.action=function(){var e=this,i=e.config,l=e.elemTemp,n=l.find("i").width();l.children("li").each(function(e){var t=e+1,v=a(this);v.on("click",function(e){if(i.value=t,i.half){var o=e.pageX-a(this).offset().left;o<=n/2&&(i.value=i.value-.5)}i.text&&l.next("span").text(i.value+"星"),i.choose&&i.choose(i.value),i.setText&&i.setText(i.value)}),v.on("mousemove",function(e){if(l.find("i").each(function(){a(this).addClass(o).removeClass(r)}),l.find("i:lt("+t+")").each(function(){a(this).addClass(s).removeClass(f)}),i.half){var c=e.pageX-a(this).offset().left;c<=n/2&&v.children("i").addClass(u).removeClass(s)}}),v.on("mouseleave",function(){l.find("i").each(function(){a(this).addClass(o).removeClass(r)}),l.find("i:lt("+Math.floor(i.value)+")").each(function(){a(this).addClass(s).removeClass(f)}),i.half&&parseInt(i.value)!==i.value&&l.children("li:eq("+Math.floor(i.value)+")").children("i").addClass(u).removeClass(c)})})},v.prototype.events=function(){var e=this;e.config},i.render=function(e){var a=new v(e);return l.call(a)},e(n,i)}); \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/lay/modules/slider.js b/src/main/resources/static/articles/layui/lay/modules/slider.js new file mode 100644 index 0000000..6f824a9 --- /dev/null +++ b/src/main/resources/static/articles/layui/lay/modules/slider.js @@ -0,0 +1,2 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + ;layui.define("jquery",function(e){"use strict";var i=layui.jquery,t={config:{},index:layui.slider?layui.slider.index+1e4:0,set:function(e){var t=this;return t.config=i.extend({},t.config,e),t},on:function(e,i){return layui.onevent.call(this,n,e,i)}},a=function(){var e=this,i=e.config;return{setValue:function(i,t){return e.slide("set",i,t||0)},config:i}},n="slider",l="layui-disabled",s="layui-slider",r="layui-slider-bar",o="layui-slider-wrap",u="layui-slider-wrap-btn",d="layui-slider-tips",v="layui-slider-input",c="layui-slider-input-txt",m="layui-slider-input-btn",p="layui-slider-hover",f=function(e){var a=this;a.index=++t.index,a.config=i.extend({},a.config,t.config,e),a.render()};f.prototype.config={type:"default",min:0,max:100,value:0,step:1,showstep:!1,tips:!0,input:!1,range:!1,height:200,disabled:!1,theme:"#009688"},f.prototype.render=function(){var e=this,t=e.config;if(t.step<1&&(t.step=1),t.max<t.min&&(t.max=t.min+t.step),t.range){t.value="object"==typeof t.value?t.value:[t.min,t.value];var a=Math.min(t.value[0],t.value[1]),n=Math.max(t.value[0],t.value[1]);t.value[0]=a>t.min?a:t.min,t.value[1]=n>t.min?n:t.min,t.value[0]=t.value[0]>t.max?t.max:t.value[0],t.value[1]=t.value[1]>t.max?t.max:t.value[1];var r=Math.floor((t.value[0]-t.min)/(t.max-t.min)*100),v=Math.floor((t.value[1]-t.min)/(t.max-t.min)*100),m=v-r+"%";r+="%",v+="%"}else{"object"==typeof t.value&&(t.value=Math.min.apply(null,t.value)),t.value<t.min&&(t.value=t.min),t.value>t.max&&(t.value=t.max);var m=Math.floor((t.value-t.min)/(t.max-t.min)*100)+"%"}var p=t.disabled?"#c2c2c2":t.theme,f='<div class="layui-slider '+("vertical"===t.type?"layui-slider-vertical":"")+'">'+(t.tips?'<div class="layui-slider-tips"></div>':"")+'<div class="layui-slider-bar" style="background:'+p+"; "+("vertical"===t.type?"height":"width")+":"+m+";"+("vertical"===t.type?"bottom":"left")+":"+(r||0)+';"></div><div class="layui-slider-wrap" style="'+("vertical"===t.type?"bottom":"left")+":"+(r||m)+';"><div class="layui-slider-wrap-btn" style="border: 2px solid '+p+';"></div></div>'+(t.range?'<div class="layui-slider-wrap" style="'+("vertical"===t.type?"bottom":"left")+":"+v+';"><div class="layui-slider-wrap-btn" style="border: 2px solid '+p+';"></div></div>':"")+"</div>",h=i(t.elem),y=h.next("."+s);if(y[0]&&y.remove(),e.elemTemp=i(f),t.range?(e.elemTemp.find("."+o).eq(0).data("value",t.value[0]),e.elemTemp.find("."+o).eq(1).data("value",t.value[1])):e.elemTemp.find("."+o).data("value",t.value),h.html(e.elemTemp),"vertical"===t.type&&e.elemTemp.height(t.height+"px"),t.showstep){for(var g=(t.max-t.min)/t.step,b="",x=1;x<g+1;x++){var T=100*x/g;T<100&&(b+='<div class="layui-slider-step" style="'+("vertical"===t.type?"bottom":"left")+":"+T+'%"></div>')}e.elemTemp.append(b)}if(t.input&&!t.range){var w=i('<div class="layui-slider-input layui-input"><div class="layui-slider-input-txt"><input type="text" class="layui-input"></div><div class="layui-slider-input-btn"><i class="layui-icon layui-icon-up"></i><i class="layui-icon layui-icon-down"></i></div></div>');h.css("position","relative"),h.append(w),h.find("."+c).children("input").val(t.value),"vertical"===t.type?w.css({left:0,top:-48}):e.elemTemp.css("margin-right",w.outerWidth()+15)}t.disabled?(e.elemTemp.addClass(l),e.elemTemp.find("."+u).addClass(l)):e.slide(),e.elemTemp.find("."+u).on("mouseover",function(){var a="vertical"===t.type?t.height:e.elemTemp[0].offsetWidth,n=e.elemTemp.find("."+o),l="vertical"===t.type?a-i(this).parent()[0].offsetTop-n.height():i(this).parent()[0].offsetLeft,s=l/a*100,r=i(this).parent().data("value"),u=t.setTips?t.setTips(r):r;e.elemTemp.find("."+d).html(u),"vertical"===t.type?e.elemTemp.find("."+d).css({bottom:s+"%","margin-bottom":"20px",display:"inline-block"}):e.elemTemp.find("."+d).css({left:s+"%",display:"inline-block"})}).on("mouseout",function(){e.elemTemp.find("."+d).css("display","none")})},f.prototype.slide=function(e,t,a){var n=this,l=n.config,s=n.elemTemp,f=function(){return"vertical"===l.type?l.height:s[0].offsetWidth},h=s.find("."+o),y=s.next("."+v),g=y.children("."+c).children("input").val(),b=100/((l.max-l.min)/Math.ceil(l.step)),x=function(e,i){e=Math.ceil(e)*b>100?Math.ceil(e)*b:Math.round(e)*b,e=e>100?100:e,h.eq(i).css("vertical"===l.type?"bottom":"left",e+"%");var t=T(h[0].offsetLeft),a=l.range?T(h[1].offsetLeft):0;"vertical"===l.type?(s.find("."+d).css({bottom:e+"%","margin-bottom":"20px"}),t=T(f()-h[0].offsetTop-h.height()),a=l.range?T(f()-h[1].offsetTop-h.height()):0):s.find("."+d).css("left",e+"%"),t=t>100?100:t,a=a>100?100:a;var n=Math.min(t,a),o=Math.abs(t-a);"vertical"===l.type?s.find("."+r).css({height:o+"%",bottom:n+"%"}):s.find("."+r).css({width:o+"%",left:n+"%"});var u=l.min+Math.round((l.max-l.min)*e/100);if(g=u,y.children("."+c).children("input").val(g),h.eq(i).data("value",u),u=l.setTips?l.setTips(u):u,s.find("."+d).html(u),l.range){var v=[h.eq(0).data("value"),h.eq(1).data("value")];v[0]>v[1]&&v.reverse()}l.change&&l.change(l.range?v:u)},T=function(e){var i=e/f()*100/b,t=Math.round(i)*b;return e==f()&&(t=Math.ceil(i)*b),t},w=i(['<div class="layui-auxiliar-moving" id="LAY-slider-moving"></div'].join("")),M=function(e,t){var a=function(){t&&t(),w.remove()};i("#LAY-slider-moving")[0]||i("body").append(w),w.on("mousemove",e),w.on("mouseup",a).on("mouseleave",a)};if("set"===e)return x(t,a);s.find("."+u).each(function(e){var t=i(this);t.on("mousedown",function(i){i=i||window.event;var a=t.parent()[0].offsetLeft,n=i.clientX;"vertical"===l.type&&(a=f()-t.parent()[0].offsetTop-h.height(),n=i.clientY);var r=function(i){i=i||window.event;var r=a+("vertical"===l.type?n-i.clientY:i.clientX-n);r<0&&(r=0),r>f()&&(r=f());var o=r/f()*100/b;x(o,e),t.addClass(p),s.find("."+d).show(),i.preventDefault()},o=function(){t.removeClass(p),s.find("."+d).hide()};M(r,o)})}),s.on("click",function(e){var t=i("."+u);if(!t.is(event.target)&&0===t.has(event.target).length&&t.length){var a,n="vertical"===l.type?f()-e.clientY+i(this).offset().top:e.clientX-i(this).offset().left;n<0&&(n=0),n>f()&&(n=f());var s=n/f()*100/b;a=l.range?"vertical"===l.type?Math.abs(n-parseInt(i(h[0]).css("bottom")))>Math.abs(n-parseInt(i(h[1]).css("bottom")))?1:0:Math.abs(n-h[0].offsetLeft)>Math.abs(n-h[1].offsetLeft)?1:0:0,x(s,a),e.preventDefault()}}),y.hover(function(){var e=i(this);e.children("."+m).fadeIn("fast")},function(){var e=i(this);e.children("."+m).fadeOut("fast")}),y.children("."+m).children("i").each(function(e){i(this).on("click",function(){g=1==e?g-l.step<l.min?l.min:Number(g)-l.step:Number(g)+l.step>l.max?l.max:Number(g)+l.step;var i=(g-l.min)/(l.max-l.min)*100/b;x(i,0)})});var q=function(){var e=this.value;e=isNaN(e)?0:e,e=e<l.min?l.min:e,e=e>l.max?l.max:e,this.value=e;var i=(e-l.min)/(l.max-l.min)*100/b;x(i,0)};y.children("."+c).children("input").on("keydown",function(e){13===e.keyCode&&(e.preventDefault(),q.call(this))}).on("change",q)},f.prototype.events=function(){var e=this;e.config},t.render=function(e){var i=new f(e);return a.call(i)},e(n,t)}); \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/lay/modules/table.js b/src/main/resources/static/articles/layui/lay/modules/table.js new file mode 100644 index 0000000..0882b71 --- /dev/null +++ b/src/main/resources/static/articles/layui/lay/modules/table.js @@ -0,0 +1,2 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + ;layui.define(["laytpl","laypage","layer","form","util"],function(e){"use strict";var t=layui.$,i=layui.laytpl,a=layui.laypage,l=layui.layer,n=layui.form,o=(layui.util,layui.hint()),r=layui.device(),d={config:{checkName:"LAY_CHECKED",indexName:"LAY_TABLE_INDEX"},cache:{},index:layui.table?layui.table.index+1e4:0,set:function(e){var i=this;return i.config=t.extend({},i.config,e),i},on:function(e,t){return layui.onevent.call(this,y,e,t)}},c=function(){var e=this,t=e.config,i=t.id||t.index;return i&&(c.that[i]=e,c.config[i]=t),{config:t,reload:function(t){e.reload.call(e,t)},setColsWidth:function(){e.setColsWidth.call(e)},resize:function(){e.resize.call(e)}}},s=function(e){var t=c.config[e];return t||o.error("The ID option was not found in the table instance"),t||null},u=function(e,a,l,n){var o=e.templet?function(){return"function"==typeof e.templet?e.templet(l):i(t(e.templet).html()||String(a)).render(l)}():a;return n?t("<div>"+o+"</div>").text():o},y="table",h=".layui-table",f="layui-hide",p="layui-none",v="layui-table-view",m=".layui-table-tool",g=".layui-table-box",b=".layui-table-init",x=".layui-table-header",k=".layui-table-body",C=".layui-table-main",w=".layui-table-fixed",T=".layui-table-fixed-l",A=".layui-table-fixed-r",L=".layui-table-total",N=".layui-table-page",S=".layui-table-sort",R="layui-table-edit",W="layui-table-hover",_=function(e){var t='{{#if(item2.colspan){}} colspan="{{item2.colspan}}"{{#} if(item2.rowspan){}} rowspan="{{item2.rowspan}}"{{#}}}';return e=e||{},['<table cellspacing="0" cellpadding="0" border="0" class="layui-table" ','{{# if(d.data.skin){ }}lay-skin="{{d.data.skin}}"{{# } }} {{# if(d.data.size){ }}lay-size="{{d.data.size}}"{{# } }} {{# if(d.data.even){ }}lay-even{{# } }}>',"<thead>","{{# layui.each(d.data.cols, function(i1, item1){ }}","<tr>","{{# layui.each(item1, function(i2, item2){ }}",'{{# if(item2.fixed && item2.fixed !== "right"){ left = true; } }}','{{# if(item2.fixed === "right"){ right = true; } }}',function(){return e.fixed&&"right"!==e.fixed?'{{# if(item2.fixed && item2.fixed !== "right"){ }}':"right"===e.fixed?'{{# if(item2.fixed === "right"){ }}':""}(),"{{# var isSort = !(item2.colGroup) && item2.sort; }}",'<th data-field="{{ item2.field||i2 }}" data-key="{{d.index}}-{{i1}}-{{i2}}" {{# if( item2.parentKey){ }}data-parentkey="{{ item2.parentKey }}"{{# } }} {{# if(item2.minWidth){ }}data-minwidth="{{item2.minWidth}}"{{# } }} '+t+' {{# if(item2.unresize || item2.colGroup){ }}data-unresize="true"{{# } }} class="{{# if(item2.hide){ }}layui-hide{{# } }}{{# if(isSort){ }} layui-unselect{{# } }}{{# if(!item2.field){ }} layui-table-col-special{{# } }}">','<div class="layui-table-cell laytable-cell-',"{{# if(item2.colGroup){ }}","group","{{# } else { }}","{{d.index}}-{{i1}}-{{i2}}",'{{# if(item2.type !== "normal"){ }}'," laytable-cell-{{ item2.type }}","{{# } }}","{{# } }}",'" {{#if(item2.align){}}align="{{item2.align}}"{{#}}}>','{{# if(item2.type === "checkbox"){ }}','<input type="checkbox" name="layTableCheckbox" lay-skin="primary" lay-filter="layTableAllChoose" {{# if(item2[d.data.checkName]){ }}checked{{# }; }}>',"{{# } else { }}",'<span>{{item2.title||""}}</span>',"{{# if(isSort){ }}",'<span class="layui-table-sort layui-inline"><i class="layui-edge layui-table-sort-asc" title="升序"></i><i class="layui-edge layui-table-sort-desc" title="降序"></i></span>',"{{# } }}","{{# } }}","</div>","</th>",e.fixed?"{{# }; }}":"","{{# }); }}","</tr>","{{# }); }}","</thead>","</table>"].join("")},E=['<table cellspacing="0" cellpadding="0" border="0" class="layui-table" ','{{# if(d.data.skin){ }}lay-skin="{{d.data.skin}}"{{# } }} {{# if(d.data.size){ }}lay-size="{{d.data.size}}"{{# } }} {{# if(d.data.even){ }}lay-even{{# } }}>',"<tbody></tbody>","</table>"].join(""),z=['<div class="layui-form layui-border-box {{d.VIEW_CLASS}}" lay-filter="LAY-table-{{d.index}}" lay-id="{{ d.data.id }}" style="{{# if(d.data.width){ }}width:{{d.data.width}}px;{{# } }} {{# if(d.data.height){ }}height:{{d.data.height}}px;{{# } }}">',"{{# if(d.data.toolbar){ }}",'<div class="layui-table-tool">','<div class="layui-table-tool-temp"></div>','<div class="layui-table-tool-self"></div>',"</div>","{{# } }}",'<div class="layui-table-box">',"{{# if(d.data.loading){ }}",'<div class="layui-table-init" style="background-color: #fff;">','<i class="layui-icon layui-icon-loading layui-anim layui-anim-rotate layui-anim-loop"></i>',"</div>","{{# } }}","{{# var left, right; }}",'<div class="layui-table-header">',_(),"</div>",'<div class="layui-table-body layui-table-main">',E,"</div>","{{# if(left){ }}",'<div class="layui-table-fixed layui-table-fixed-l">','<div class="layui-table-header">',_({fixed:!0}),"</div>",'<div class="layui-table-body">',E,"</div>","</div>","{{# }; }}","{{# if(right){ }}",'<div class="layui-table-fixed layui-table-fixed-r">','<div class="layui-table-header">',_({fixed:"right"}),'<div class="layui-table-mend"></div>',"</div>",'<div class="layui-table-body">',E,"</div>","</div>","{{# }; }}","</div>","{{# if(d.data.totalRow){ }}",'<div class="layui-table-total">','<table cellspacing="0" cellpadding="0" border="0" class="layui-table" ','{{# if(d.data.skin){ }}lay-skin="{{d.data.skin}}"{{# } }} {{# if(d.data.size){ }}lay-size="{{d.data.size}}"{{# } }} {{# if(d.data.even){ }}lay-even{{# } }}>','<tbody><tr><td><div class="layui-table-cell" style="visibility: hidden;">Total</div></td></tr></tbody>',"</table>","</div>","{{# } }}","{{# if(d.data.page){ }}",'<div class="layui-table-page">','<div id="layui-table-page{{d.index}}"></div>',"</div>","{{# } }}","<style>","{{# layui.each(d.data.cols, function(i1, item1){","layui.each(item1, function(i2, item2){ }}",".laytable-cell-{{d.index}}-{{i1}}-{{i2}}{ ","{{# if(item2.width){ }}","width: {{item2.width}}px;","{{# } }}"," }","{{# });","}); }}","</style>","</div>"].join(""),H=t(window),j=t(document),F=function(e){var i=this;i.index=++d.index,i.config=t.extend({},i.config,d.config,e),i.render()};F.prototype.config={limit:10,loading:!0,cellMinWidth:60,defaultToolbar:["filter","exports","print"],autoSort:!0,text:{none:"无数据"}},F.prototype.render=function(){var e=this,a=e.config;if(a.elem=t(a.elem),a.where=a.where||{},a.id=a.id||a.elem.attr("id")||e.index,a.request=t.extend({pageName:"page",limitName:"limit"},a.request),a.response=t.extend({statusName:"code",statusCode:0,msgName:"msg",dataName:"data",totalRowName:"totalRow",countName:"count"},a.response),"object"==typeof a.page&&(a.limit=a.page.limit||a.limit,a.limits=a.page.limits||a.limits,e.page=a.page.curr=a.page.curr||1,delete a.page.elem,delete a.page.jump),!a.elem[0])return e;a.height&&/^full-\d+$/.test(a.height)&&(e.fullHeightGap=a.height.split("-")[1],a.height=H.height()-e.fullHeightGap),e.setInit();var l=a.elem,n=l.next("."+v),o=e.elem=t(i(z).render({VIEW_CLASS:v,data:a,index:e.index}));if(a.index=e.index,e.key=a.id||a.index,n[0]&&n.remove(),l.after(o),e.layTool=o.find(m),e.layBox=o.find(g),e.layHeader=o.find(x),e.layMain=o.find(C),e.layBody=o.find(k),e.layFixed=o.find(w),e.layFixLeft=o.find(T),e.layFixRight=o.find(A),e.layTotal=o.find(L),e.layPage=o.find(N),e.renderToolbar(),e.fullSize(),a.cols.length>1){var r=e.layFixed.find(x).find("th");r.height(e.layHeader.height()-1-parseFloat(r.css("padding-top"))-parseFloat(r.css("padding-bottom")))}e.pullData(e.page),e.events()},F.prototype.initOpts=function(e){var t=this,i=(t.config,{checkbox:48,radio:48,space:15,numbers:40});e.checkbox&&(e.type="checkbox"),e.space&&(e.type="space"),e.type||(e.type="normal"),"normal"!==e.type&&(e.unresize=!0,e.width=e.width||i[e.type])},F.prototype.setInit=function(e){var t=this,i=t.config;return i.clientWidth=i.width||function(){var e=function(t){var a,l;t=t||i.elem.parent(),a=t.width();try{l="none"===t.css("display")}catch(n){}return!t[0]||a&&!l?a:e(t.parent())};return e()}(),"width"===e?i.clientWidth:void layui.each(i.cols,function(e,a){layui.each(a,function(l,n){if(!n)return void a.splice(l,1);if(n.key=e+"-"+l,n.hide=n.hide||!1,n.colGroup||n.colspan>1){var o=0;layui.each(i.cols[e+1],function(t,i){i.HAS_PARENT||o>1&&o==n.colspan||(i.HAS_PARENT=!0,i.parentKey=e+"-"+l,o+=parseInt(i.colspan>1?i.colspan:1))}),n.colGroup=!0}t.initOpts(n)})})},F.prototype.renderToolbar=function(){var e=this,a=e.config,l=['<div class="layui-inline" lay-event="add"><i class="layui-icon layui-icon-add-1"></i></div>','<div class="layui-inline" lay-event="update"><i class="layui-icon layui-icon-edit"></i></div>','<div class="layui-inline" lay-event="delete"><i class="layui-icon layui-icon-delete"></i></div>'].join(""),n=e.layTool.find(".layui-table-tool-temp");if("default"===a.toolbar)n.html(l);else if("string"==typeof a.toolbar){var o=t(a.toolbar).html()||"";o&&n.html(i(o).render(a))}var r={filter:{title:"筛选列",layEvent:"LAYTABLE_COLS",icon:"layui-icon-cols"},exports:{title:"导出",layEvent:"LAYTABLE_EXPORT",icon:"layui-icon-export"},print:{title:"打印",layEvent:"LAYTABLE_PRINT",icon:"layui-icon-print"}},d=[];"object"==typeof a.defaultToolbar&&layui.each(a.defaultToolbar,function(e,t){var i="string"==typeof t?r[t]:t;i&&d.push('<div class="layui-inline" title="'+i.title+'" lay-event="'+i.layEvent+'"><i class="layui-icon '+i.icon+'"></i></div>')}),e.layTool.find(".layui-table-tool-self").html(d.join(""))},F.prototype.setParentCol=function(e,t){var i=this,a=i.config,l=i.layHeader.find('th[data-key="'+a.index+"-"+t+'"]'),n=parseInt(l.attr("colspan"))||0;if(l[0]){var o=t.split("-"),r=a.cols[o[0]][o[1]];e?n--:n++,l.attr("colspan",n),l[n<1?"addClass":"removeClass"](f),r.colspan=n,r.hide=n<1;var d=l.data("parentkey");d&&i.setParentCol(e,d)}},F.prototype.setColsPatch=function(){var e=this,t=e.config;layui.each(t.cols,function(t,i){layui.each(i,function(t,i){i.hide&&e.setParentCol(i.hide,i.parentKey)})})},F.prototype.setColsWidth=function(){var e=this,t=e.config,i=0,a=0,l=0,n=0,o=e.setInit("width");e.eachCols(function(e,t){t.hide||i++}),o=o-function(){return"line"===t.skin||"nob"===t.skin?2:i+1}()-e.getScrollWidth(e.layMain[0])-1;var r=function(e){layui.each(t.cols,function(i,r){layui.each(r,function(i,d){var c=0,s=d.minWidth||t.cellMinWidth;return d?void(d.colGroup||d.hide||(e?l&&l<s&&(a--,c=s):(c=d.width||0,/\d+%$/.test(c)?(c=Math.floor(parseFloat(c)/100*o),c<s&&(c=s)):c||(d.width=c=0,a++)),d.hide&&(c=0),n+=c)):void r.splice(i,1)})}),o>n&&a&&(l=(o-n)/a)};r(),r(!0),e.autoColNums=a,e.eachCols(function(i,a){var n=a.minWidth||t.cellMinWidth;a.colGroup||a.hide||(0===a.width?e.getCssRule(t.index+"-"+a.key,function(e){e.style.width=Math.floor(l>=n?l:n)+"px"}):/\d+%$/.test(a.width)&&e.getCssRule(t.index+"-"+a.key,function(e){e.style.width=Math.floor(parseFloat(a.width)/100*o)+"px"}))});var d=e.layMain.width()-e.getScrollWidth(e.layMain[0])-e.layMain.children("table").outerWidth();if(e.autoColNums&&d>=-i&&d<=i){var c=function(t){var i;return t=t||e.layHeader.eq(0).find("thead th:last-child"),i=t.data("field"),!i&&t.prev()[0]?c(t.prev()):t},s=c(),u=s.data("key");e.getCssRule(u,function(t){var i=t.style.width||s.outerWidth();t.style.width=parseFloat(i)+d+"px",e.layMain.height()-e.layMain.prop("clientHeight")>0&&(t.style.width=parseFloat(t.style.width)-1+"px")})}e.loading(!0)},F.prototype.resize=function(){var e=this;e.fullSize(),e.setColsWidth(),e.scrollPatch()},F.prototype.reload=function(e){var i=this;e=e||{},delete i.haveInit,e.data&&e.data.constructor===Array&&delete i.config.data,i.config=t.extend(!0,{},i.config,e),i.render()},F.prototype.errorView=function(e){var i=this,a=i.layMain.find("."+p),l=t('<div class="'+p+'">'+(e||"Error")+"</div>");a[0]&&(i.layNone.remove(),a.remove()),i.layFixed.addClass(f),i.layMain.find("tbody").html(""),i.layMain.append(i.layNone=l),d.cache[i.key]=[]},F.prototype.page=1,F.prototype.pullData=function(e){var i=this,a=i.config,l=a.request,n=a.response,o=function(){"object"==typeof a.initSort&&i.sort(a.initSort.field,a.initSort.type)};if(i.startTime=(new Date).getTime(),a.url){var r={};r[l.pageName]=e,r[l.limitName]=a.limit;var d=t.extend(r,a.where);a.contentType&&0==a.contentType.indexOf("application/json")&&(d=JSON.stringify(d)),i.loading(),t.ajax({type:a.method||"get",url:a.url,contentType:a.contentType,data:d,dataType:"json",headers:a.headers||{},success:function(t){"function"==typeof a.parseData&&(t=a.parseData(t)||t),t[n.statusName]!=n.statusCode?(i.renderForm(),i.errorView(t[n.msgName]||'返回的数据不符合规范,正确的成功状态码应为:"'+n.statusName+'": '+n.statusCode)):(i.renderData(t,e,t[n.countName]),o(),a.time=(new Date).getTime()-i.startTime+" ms"),i.setColsWidth(),"function"==typeof a.done&&a.done(t,e,t[n.countName])},error:function(e,t){i.errorView("数据接口请求异常:"+t),i.renderForm(),i.setColsWidth()}})}else if(a.data&&a.data.constructor===Array){var c={},s=e*a.limit-a.limit;c[n.dataName]=a.data.concat().splice(s,a.limit),c[n.countName]=a.data.length,"object"==typeof a.totalRow&&(c[n.totalRowName]=t.extend({},a.totalRow)),i.renderData(c,e,c[n.countName]),o(),i.setColsWidth(),"function"==typeof a.done&&a.done(c,e,c[n.countName])}},F.prototype.eachCols=function(e){var t=this;return d.eachCols(null,e,t.config.cols),t},F.prototype.renderData=function(e,n,o,r){var c=this,s=c.config,y=e[s.response.dataName]||[],h=e[s.response.totalRowName],v=[],m=[],g=[],b=function(){var e;return!r&&c.sortKey?c.sort(c.sortKey.field,c.sortKey.sort,!0):(layui.each(y,function(a,l){var o=[],y=[],h=[],p=a+s.limit*(n-1)+1;0!==l.length&&(r||(l[d.config.indexName]=a),c.eachCols(function(n,r){var c=r.field||n,v=s.index+"-"+r.key,m=l[c];if(void 0!==m&&null!==m||(m=""),!r.colGroup){var g=['<td data-field="'+c+'" data-key="'+v+'" '+function(){var e=[];return r.edit&&e.push('data-edit="'+r.edit+'"'),r.align&&e.push('align="'+r.align+'"'),r.templet&&e.push('data-content="'+m+'"'),r.toolbar&&e.push('data-off="true"'),r.event&&e.push('lay-event="'+r.event+'"'),r.style&&e.push('style="'+r.style+'"'),r.minWidth&&e.push('data-minwidth="'+r.minWidth+'"'),e.join(" ")}()+' class="'+function(){var e=[];return r.hide&&e.push(f),r.field||e.push("layui-table-col-special"),e.join(" ")}()+'">','<div class="layui-table-cell laytable-cell-'+function(){return"normal"===r.type?v:v+" laytable-cell-"+r.type}()+'">'+function(){var n=t.extend(!0,{LAY_INDEX:p},l),o=d.config.checkName;switch(r.type){case"checkbox":return'<input type="checkbox" name="layTableCheckbox" lay-skin="primary" '+function(){return r[o]?(l[o]=r[o],r[o]?"checked":""):n[o]?"checked":""}()+">";case"radio":return n[o]&&(e=a),'<input type="radio" name="layTableRadio_'+s.index+'" '+(n[o]?"checked":"")+' lay-type="layTableRadio">';case"numbers":return p}return r.toolbar?i(t(r.toolbar).html()||"").render(n):u(r,m,n)}(),"</div></td>"].join("");o.push(g),r.fixed&&"right"!==r.fixed&&y.push(g),"right"===r.fixed&&h.push(g)}}),v.push('<tr data-index="'+a+'">'+o.join("")+"</tr>"),m.push('<tr data-index="'+a+'">'+y.join("")+"</tr>"),g.push('<tr data-index="'+a+'">'+h.join("")+"</tr>"))}),c.layBody.scrollTop(0),c.layMain.find("."+p).remove(),c.layMain.find("tbody").html(v.join("")),c.layFixLeft.find("tbody").html(m.join("")),c.layFixRight.find("tbody").html(g.join("")),c.renderForm(),"number"==typeof e&&c.setThisRowChecked(e),c.syncCheckAll(),c.haveInit?c.scrollPatch():setTimeout(function(){c.scrollPatch()},50),c.haveInit=!0,l.close(c.tipsIndex),s.HAS_SET_COLS_PATCH||c.setColsPatch(),void(s.HAS_SET_COLS_PATCH=!0))};return d.cache[c.key]=y,c.layPage[0==o||0===y.length&&1==n?"addClass":"removeClass"](f),r?b():0===y.length?(c.renderForm(),c.errorView(s.text.none)):(c.layFixed.removeClass(f),b(),c.renderTotal(y,h),void(s.page&&(s.page=t.extend({elem:"layui-table-page"+s.index,count:o,limit:s.limit,limits:s.limits||[10,20,30,40,50,60,70,80,90],groups:3,layout:["prev","page","next","skip","count","limit"],prev:'<i class="layui-icon"></i>',next:'<i class="layui-icon"></i>',jump:function(e,t){t||(c.page=e.curr,s.limit=e.limit,c.pullData(e.curr))}},s.page),s.page.count=o,a.render(s.page))))},F.prototype.renderTotal=function(e,t){var i=this,a=i.config,l={};if(a.totalRow){layui.each(e,function(e,t){0!==t.length&&i.eachCols(function(e,i){var a=i.field||e,n=t[a];i.totalRow&&(l[a]=(l[a]||0)+(parseFloat(n)||0))})}),i.dataTotal={};var n=[];i.eachCols(function(e,o){var r=o.field||e,d=function(){var e=o.totalRowText||"",i=parseFloat(l[r]).toFixed(2),a={};return a[r]=i,i=u(o,i,a),t?t[o.field]||e:o.totalRow?i||e:e}(),c=['<td data-field="'+r+'" data-key="'+a.index+"-"+o.key+'" '+function(){var e=[];return o.align&&e.push('align="'+o.align+'"'),o.style&&e.push('style="'+o.style+'"'),o.minWidth&&e.push('data-minwidth="'+o.minWidth+'"'),e.join(" ")}()+' class="'+function(){var e=[];return o.hide&&e.push(f),o.field||e.push("layui-table-col-special"),e.join(" ")}()+'">','<div class="layui-table-cell laytable-cell-'+function(){var e=a.index+"-"+o.key;return"normal"===o.type?e:e+" laytable-cell-"+o.type}()+'">'+d,"</div></td>"].join("");o.field&&(i.dataTotal[r]=d),n.push(c)}),i.layTotal.find("tbody").html("<tr>"+n.join("")+"</tr>")}},F.prototype.getColElem=function(e,t){var i=this,a=i.config;return e.eq(0).find(".laytable-cell-"+(a.index+"-"+t)+":eq(0)")},F.prototype.renderForm=function(e){n.render(e,"LAY-table-"+this.index)},F.prototype.setThisRowChecked=function(e){var t=this,i=(t.config,"layui-table-click"),a=t.layBody.find('tr[data-index="'+e+'"]');a.addClass(i).siblings("tr").removeClass(i)},F.prototype.sort=function(e,i,a,l){var n,r,c=this,s={},u=c.config,h=u.elem.attr("lay-filter"),f=d.cache[c.key];"string"==typeof e&&c.layHeader.find("th").each(function(i,a){var l=t(this),o=l.data("field");if(o===e)return e=l,n=o,!1});try{var n=n||e.data("field"),p=e.data("key");if(c.sortKey&&!a&&n===c.sortKey.field&&i===c.sortKey.sort)return;var v=c.layHeader.find("th .laytable-cell-"+p).find(S);c.layHeader.find("th").find(S).removeAttr("lay-sort"),v.attr("lay-sort",i||null),c.layFixed.find("th")}catch(m){return o.error("Table modules: Did not match to field")}c.sortKey={field:n,sort:i},u.autoSort&&("asc"===i?r=layui.sort(f,n):"desc"===i?r=layui.sort(f,n,!0):(r=layui.sort(f,d.config.indexName),delete c.sortKey)),s[u.response.dataName]=r||f,c.renderData(s,c.page,c.count,!0),l&&layui.event.call(e,y,"sort("+h+")",{field:n,type:i})},F.prototype.loading=function(e){var i=this,a=i.config;a.loading&&(e?(i.layInit&&i.layInit.remove(),delete i.layInit,i.layBox.find(b).remove()):(i.layInit=t(['<div class="layui-table-init">','<i class="layui-icon layui-icon-loading layui-anim layui-anim-rotate layui-anim-loop"></i>',"</div>"].join("")),i.layBox.append(i.layInit)))},F.prototype.setCheckData=function(e,t){var i=this,a=i.config,l=d.cache[i.key];l[e]&&l[e].constructor!==Array&&(l[e][a.checkName]=t)},F.prototype.syncCheckAll=function(){var e=this,t=e.config,i=e.layHeader.find('input[name="layTableCheckbox"]'),a=function(i){return e.eachCols(function(e,a){"checkbox"===a.type&&(a[t.checkName]=i)}),i};i[0]&&(d.checkStatus(e.key).isAll?(i[0].checked||(i.prop("checked",!0),e.renderForm("checkbox")),a(!0)):(i[0].checked&&(i.prop("checked",!1),e.renderForm("checkbox")),a(!1)))},F.prototype.getCssRule=function(e,t){var i=this,a=i.elem.find("style")[0],l=a.sheet||a.styleSheet||{},n=l.cssRules||l.rules;layui.each(n,function(i,a){if(a.selectorText===".laytable-cell-"+e)return t(a),!0})},F.prototype.fullSize=function(){var e,t=this,i=t.config,a=i.height;t.fullHeightGap&&(a=H.height()-t.fullHeightGap,a<135&&(a=135),t.elem.css("height",a)),a&&(e=parseFloat(a)-(t.layHeader.outerHeight()||38),i.toolbar&&(e-=t.layTool.outerHeight()||50),i.totalRow&&(e-=t.layTotal.outerHeight()||40),i.page&&(e-=t.layPage.outerHeight()||41),t.layMain.css("height",e-2))},F.prototype.getScrollWidth=function(e){var t=0;return e?t=e.offsetWidth-e.clientWidth:(e=document.createElement("div"),e.style.width="100px",e.style.height="100px",e.style.overflowY="scroll",document.body.appendChild(e),t=e.offsetWidth-e.clientWidth,document.body.removeChild(e)),t},F.prototype.scrollPatch=function(){var e=this,i=e.layMain.children("table"),a=e.layMain.width()-e.layMain.prop("clientWidth"),l=e.layMain.height()-e.layMain.prop("clientHeight"),n=(e.getScrollWidth(e.layMain[0]),i.outerWidth()-e.layMain.width()),o=function(e){if(a&&l){if(e=e.eq(0),!e.find(".layui-table-patch")[0]){var i=t('<th class="layui-table-patch"><div class="layui-table-cell"></div></th>');i.find("div").css({width:a}),e.find("tr").append(i)}}else e.find(".layui-table-patch").remove()};o(e.layHeader),o(e.layTotal);var r=e.layMain.height(),d=r-l;e.layFixed.find(k).css("height",i.height()>=d?d:"auto"),e.layFixRight[n>0?"removeClass":"addClass"](f),e.layFixRight.css("right",a-1)},F.prototype.events=function(){var e,i=this,a=i.config,o=t("body"),c={},s=i.layHeader.find("th"),h=".layui-table-cell",p=a.elem.attr("lay-filter");i.layTool.on("click","*[lay-event]",function(e){var o=t(this),c=o.attr("lay-event"),s=function(e){var l=t(e.list),n=t('<ul class="layui-table-tool-panel"></ul>');n.html(l),a.height&&n.css("max-height",a.height-(i.layTool.outerHeight()||50)),o.find(".layui-table-tool-panel")[0]||o.append(n),i.renderForm(),n.on("click",function(e){layui.stope(e)}),e.done&&e.done(n,l)};switch(layui.stope(e),j.trigger("table.tool.panel.remove"),l.close(i.tipsIndex),c){case"LAYTABLE_COLS":s({list:function(){var e=[];return i.eachCols(function(t,i){i.field&&"normal"==i.type&&e.push('<li><input type="checkbox" name="'+i.field+'" data-key="'+i.key+'" data-parentkey="'+(i.parentKey||"")+'" lay-skin="primary" '+(i.hide?"":"checked")+' title="'+(i.title||i.field)+'" lay-filter="LAY_TABLE_TOOL_COLS"></li>')}),e.join("")}(),done:function(){n.on("checkbox(LAY_TABLE_TOOL_COLS)",function(e){var l=t(e.elem),n=this.checked,o=l.data("key"),r=l.data("parentkey");layui.each(a.cols,function(e,t){layui.each(t,function(t,l){if(e+"-"+t===o){var d=l.hide;l.hide=!n,i.elem.find('*[data-key="'+a.index+"-"+o+'"]')[n?"removeClass":"addClass"](f),d!=l.hide&&i.setParentCol(!n,r),i.resize()}})})})}});break;case"LAYTABLE_EXPORT":r.ie?l.tips("导出功能不支持 IE,请用 Chrome 等高级浏览器导出",this,{tips:3}):s({list:function(){return['<li data-type="csv">导出到 Csv 文件</li>','<li data-type="xls">导出到 Excel 文件</li>'].join("")}(),done:function(e,l){l.on("click",function(){var e=t(this).data("type");d.exportFile.call(i,a.id,null,e)})}});break;case"LAYTABLE_PRINT":var u=window.open("打印窗口","_blank"),h=["<style>","body{font-size: 12px; color: #666;}","table{width: 100%; border-collapse: collapse; border-spacing: 0;}","th,td{line-height: 20px; padding: 9px 15px; border: 1px solid #ccc; text-align: left; font-size: 12px; color: #666;}","a{color: #666; text-decoration:none;}","*.layui-hide{display: none}","</style>"].join(""),v=t(i.layHeader.html());v.append(i.layMain.find("table").html()),v.append(i.layTotal.find("table").html()),v.find("th.layui-table-patch").remove(),v.find(".layui-table-col-special").remove(),u.document.write(h+v.prop("outerHTML")),u.document.close(),u.print(),u.close()}layui.event.call(this,y,"toolbar("+p+")",t.extend({event:c,config:a},{}))}),s.on("mousemove",function(e){var i=t(this),a=i.offset().left,l=e.clientX-a;i.data("unresize")||c.resizeStart||(c.allowResize=i.width()-l<=10,o.css("cursor",c.allowResize?"col-resize":""))}).on("mouseleave",function(){t(this);c.resizeStart||o.css("cursor","")}).on("mousedown",function(e){var l=t(this);if(c.allowResize){var n=l.data("key");e.preventDefault(),c.resizeStart=!0,c.offset=[e.clientX,e.clientY],i.getCssRule(n,function(e){var t=e.style.width||l.outerWidth();c.rule=e,c.ruleWidth=parseFloat(t),c.minWidth=l.data("minwidth")||a.cellMinWidth})}}),j.on("mousemove",function(t){if(c.resizeStart){if(t.preventDefault(),c.rule){var a=c.ruleWidth+t.clientX-c.offset[0];a<c.minWidth&&(a=c.minWidth),c.rule.style.width=a+"px",l.close(i.tipsIndex)}e=1}}).on("mouseup",function(t){c.resizeStart&&(c={},o.css("cursor",""),i.scrollPatch()),2===e&&(e=null)}),s.on("click",function(a){var l,n=t(this),o=n.find(S),r=o.attr("lay-sort");return o[0]&&1!==e?(l="asc"===r?"desc":"desc"===r?null:"asc",void i.sort(n,l,null,!0)):e=2}).find(S+" .layui-edge ").on("click",function(e){var a=t(this),l=a.index(),n=a.parents("th").eq(0).data("field");layui.stope(e),0===l?i.sort(n,"asc",null,!0):i.sort(n,"desc",null,!0)});var v=function(e){var a=t(this),l=a.parents("tr").eq(0).data("index"),n=i.layBody.find('tr[data-index="'+l+'"]'),o=d.cache[i.key]||[];return o=o[l]||{},t.extend({tr:n,data:d.clearCacheKey(o),del:function(){d.cache[i.key][l]=[],n.remove(),i.scrollPatch()},update:function(e){e=e||{},layui.each(e,function(e,t){if(e in o){var a,l=n.children('td[data-field="'+e+'"]');o[e]=t,i.eachCols(function(t,i){i.field==e&&i.templet&&(a=i.templet)}),l.children(h).html(u({templet:a},t,o)),l.data("content",t)}})}},e)};i.elem.on("click",'input[name="layTableCheckbox"]+',function(){var e=t(this).prev(),a=i.layBody.find('input[name="layTableCheckbox"]'),l=e.parents("tr").eq(0).data("index"),n=e[0].checked,o="layTableAllChoose"===e.attr("lay-filter");o?(a.each(function(e,t){t.checked=n,i.setCheckData(e,n)}),i.syncCheckAll(),i.renderForm("checkbox")):(i.setCheckData(l,n),i.syncCheckAll()),layui.event.call(e[0],y,"checkbox("+p+")",v.call(e[0],{checked:n,type:o?"all":"one"}))}),i.elem.on("click",'input[lay-type="layTableRadio"]+',function(){var e=t(this).prev(),a=e[0].checked,l=d.cache[i.key],n=e.parents("tr").eq(0).data("index");layui.each(l,function(e,t){n===e?t.LAY_CHECKED=!0:delete t.LAY_CHECKED}),i.setThisRowChecked(n),layui.event.call(this,y,"radio("+p+")",v.call(this,{checked:a}))}),i.layBody.on("mouseenter","tr",function(){var e=t(this),a=e.index();e.data("off")||i.layBody.find("tr:eq("+a+")").addClass(W)}).on("mouseleave","tr",function(){var e=t(this),a=e.index();e.data("off")||i.layBody.find("tr:eq("+a+")").removeClass(W)}).on("click","tr",function(){m.call(this,"row")}).on("dblclick","tr",function(){m.call(this,"rowDouble")});var m=function(e){var i=t(this);i.data("off")||layui.event.call(this,y,e+"("+p+")",v.call(i.children("td")[0]))};i.layBody.on("change","."+R,function(){var e=t(this),a=this.value,l=e.parent().data("field"),n=e.parents("tr").eq(0).data("index"),o=d.cache[i.key][n];o[l]=a,layui.event.call(this,y,"edit("+p+")",v.call(this,{value:a,field:l}))}).on("blur","."+R,function(){var e,a=t(this),l=this,n=a.parent().data("field"),o=a.parents("tr").eq(0).data("index"),r=d.cache[i.key][o];i.eachCols(function(t,i){i.field==n&&i.templet&&(e=i.templet)}),a.siblings(h).html(function(t){return u({templet:e},t,r)}(l.value)),a.parent().data("content",l.value),a.remove()}),i.layBody.on("click","td",function(e){var i=t(this),a=(i.data("field"),i.data("edit")),l=i.children(h);if(!i.data("off")&&a){var n=t('<input class="layui-input '+R+'">');return n[0].value=i.data("content")||l.text(),i.find("."+R)[0]||i.append(n),n.focus(),void layui.stope(e)}}).on("mouseenter","td",function(){b.call(this)}).on("mouseleave","td",function(){b.call(this,"hide")});var g="layui-table-grid-down",b=function(e){var i=t(this),a=i.children(h);if(!i.data("off"))if(e)i.find(".layui-table-grid-down").remove();else if(a.prop("scrollWidth")>a.outerWidth()){if(a.find("."+g)[0])return;i.append('<div class="'+g+'"><i class="layui-icon layui-icon-down"></i></div>')}};i.layBody.on("click","."+g,function(e){var n=t(this),o=n.parent(),d=o.children(h);i.tipsIndex=l.tips(['<div class="layui-table-tips-main" style="margin-top: -'+(d.height()+16)+"px;"+function(){return"sm"===a.size?"padding: 4px 15px; font-size: 12px;":"lg"===a.size?"padding: 14px 15px;":""}()+'">',d.html(),"</div>",'<i class="layui-icon layui-table-tips-c layui-icon-close"></i>'].join(""),d[0],{tips:[3,""],time:-1,anim:-1,maxWidth:r.ios||r.android?300:i.elem.width()/2,isOutAnim:!1,skin:"layui-table-tips",success:function(e,t){e.find(".layui-table-tips-c").on("click",function(){l.close(t)})}}),layui.stope(e)}),i.layBody.on("click","*[lay-event]",function(){var e=t(this),a=e.parents("tr").eq(0).data("index");layui.event.call(this,y,"tool("+p+")",v.call(this,{event:e.attr("lay-event")})),i.setThisRowChecked(a)}),i.layMain.on("scroll",function(){var e=t(this),a=e.scrollLeft(),n=e.scrollTop();i.layHeader.scrollLeft(a),i.layTotal.scrollLeft(a),i.layFixed.find(k).scrollTop(n),l.close(i.tipsIndex)}),H.on("resize",function(){i.resize()})},function(){j.on("click",function(){j.trigger("table.remove.tool.panel")}),j.on("table.remove.tool.panel",function(){t(".layui-table-tool-panel").remove()})}(),d.init=function(e,i){i=i||{};var a=this,l=t(e?'table[lay-filter="'+e+'"]':h+"[lay-data]"),n="Table element property lay-data configuration item has a syntax error: ";return l.each(function(){var a=t(this),l=a.attr("lay-data");try{l=new Function("return "+l)()}catch(r){o.error(n+l)}var c=[],s=t.extend({elem:this,cols:[],data:[],skin:a.attr("lay-skin"),size:a.attr("lay-size"),even:"string"==typeof a.attr("lay-even")},d.config,i,l);e&&a.hide(),a.find("thead>tr").each(function(e){s.cols[e]=[],t(this).children().each(function(i){var a=t(this),l=a.attr("lay-data");try{l=new Function("return "+l)()}catch(r){return o.error(n+l)}var d=t.extend({title:a.text(),colspan:a.attr("colspan")||0,rowspan:a.attr("rowspan")||0},l);d.colspan<2&&c.push(d),s.cols[e].push(d)})}),a.find("tbody>tr").each(function(e){var i=t(this),a={};i.children("td").each(function(e,i){var l=t(this),n=l.data("field");if(n)return a[n]=l.html()}),layui.each(c,function(e,t){var l=i.children("td").eq(e);a[t.field]=l.html()}),s.data[e]=a}),d.render(s)}),a},c.that={},c.config={},d.eachCols=function(e,i,a){var l=c.config[e]||{},n=[],o=0;a=t.extend(!0,[],a||l.cols),layui.each(a,function(e,t){layui.each(t,function(t,i){if(i.colGroup){var l=0;o++,i.CHILD_COLS=[],layui.each(a[e+1],function(e,t){t.PARENT_COL_INDEX||l>1&&l==i.colspan||(t.PARENT_COL_INDEX=o,i.CHILD_COLS.push(t),l+=parseInt(t.colspan>1?t.colspan:1))})}i.PARENT_COL_INDEX||n.push(i)})});var r=function(e){layui.each(e||n,function(e,t){return t.CHILD_COLS?r(t.CHILD_COLS):void("function"==typeof i&&i(e,t))})};r()},d.checkStatus=function(e){var t=0,i=0,a=[],l=d.cache[e]||[];return layui.each(l,function(e,l){return l.constructor===Array?void i++:void(l[d.config.checkName]&&(t++,a.push(d.clearCacheKey(l))))}),{data:a,isAll:!!l.length&&t===l.length-i}},d.exportFile=function(e,t,i){var a=this;t=t||d.clearCacheKey(d.cache[e]),i=i||"csv";var l=c.config[e]||{},n={csv:"text/csv",xls:"application/vnd.ms-excel"}[i],s=document.createElement("a");return r.ie?o.error("IE_NOT_SUPPORT_EXPORTS"):(s.href="data:"+n+";charset=utf-8,\ufeff"+encodeURIComponent(function(){var i=[],l=[],n=[];return layui.each(t,function(t,a){var n=[];"object"==typeof e?(layui.each(e,function(e,a){0==t&&i.push(a||"")}),layui.each(d.clearCacheKey(a),function(e,t){n.push('"'+(t||"")+'"')})):d.eachCols(e,function(e,l){if(l.field&&"normal"==l.type&&!l.hide){var o=a[l.field];void 0!==o&&null!==o||(o=""),0==t&&i.push(l.title||""),n.push('"'+u(l,o,a,"text")+'"')}}),l.push(n.join(","))}),layui.each(a.dataTotal,function(e,t){n.push(t)}),i.join(",")+"\r\n"+l.join("\r\n")+"\r\n"+n.join(",")}()),s.download=(l.title||"table_"+(l.index||""))+"."+i,document.body.appendChild(s),s.click(),void document.body.removeChild(s))},d.resize=function(e){if(e){var t=s(e);if(!t)return;c.that[e].resize()}else layui.each(c.that,function(){this.resize()})},d.reload=function(e,t){var i=s(e);if(i){var a=c.that[e];return a.reload(t),c.call(a)}},d.render=function(e){var t=new F(e);return c.call(t)},d.clearCacheKey=function(e){return e=t.extend({},e),delete e[d.config.checkName],delete e[d.config.indexName],e},d.init(),e(y,d)}); \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/lay/modules/transfer.js b/src/main/resources/static/articles/layui/lay/modules/transfer.js new file mode 100644 index 0000000..2483921 --- /dev/null +++ b/src/main/resources/static/articles/layui/lay/modules/transfer.js @@ -0,0 +1,2 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + ;layui.define(["laytpl","form"],function(e){"use strict";var a=layui.$,t=layui.laytpl,n=layui.form,i="transfer",l={config:{},index:layui[i]?layui[i].index+1e4:0,set:function(e){var t=this;return t.config=a.extend({},t.config,e),t},on:function(e,a){return layui.onevent.call(this,i,e,a)}},r=function(){var e=this,a=e.config,t=a.id||e.index;return r.that[t]=e,r.config[t]=a,{config:a,reload:function(a){e.reload.call(e,a)},getData:function(){return e.getData.call(e)}}},c="layui-hide",o="layui-btn-disabled",d="layui-none",s="layui-transfer-box",u="layui-transfer-header",h="layui-transfer-search",f="layui-transfer-active",y="layui-transfer-data",p=function(e){return e=e||{},['<div class="layui-transfer-box" data-index="'+e.index+'">','<div class="layui-transfer-header">','<input type="checkbox" name="'+e.checkAllName+'" lay-filter="layTransferCheckbox" lay-type="all" lay-skin="primary" title="{{ d.data.title['+e.index+"] || 'list"+(e.index+1)+"' }}\">","</div>","{{# if(d.data.showSearch){ }}",'<div class="layui-transfer-search">','<i class="layui-icon layui-icon-search"></i>','<input type="input" class="layui-input" placeholder="关键词搜索">',"</div>","{{# } }}",'<ul class="layui-transfer-data"></ul>',"</div>"].join("")},v=['<div class="layui-transfer layui-form layui-border-box" lay-filter="LAY-transfer-{{ d.index }}">',p({index:0,checkAllName:"layTransferLeftCheckAll"}),'<div class="layui-transfer-active">','<button type="button" class="layui-btn layui-btn-sm layui-btn-primary layui-btn-disabled" data-index="0">','<i class="layui-icon layui-icon-next"></i>',"</button>",'<button type="button" class="layui-btn layui-btn-sm layui-btn-primary layui-btn-disabled" data-index="1">','<i class="layui-icon layui-icon-prev"></i>',"</button>","</div>",p({index:1,checkAllName:"layTransferRightCheckAll"}),"</div>"].join(""),x=function(e){var t=this;t.index=++l.index,t.config=a.extend({},t.config,l.config,e),t.render()};x.prototype.config={title:["列表一","列表二"],width:200,height:360,data:[],value:[],showSearch:!1,id:"",text:{none:"无数据",searchNone:"无匹配数据"}},x.prototype.reload=function(e){var t=this;layui.each(e,function(e,a){a.constructor===Array&&delete t.config[e]}),t.config=a.extend(!0,{},t.config,e),t.render()},x.prototype.render=function(){var e=this,n=e.config,i=e.elem=a(t(v).render({data:n,index:e.index})),l=n.elem=a(n.elem);l[0]&&(n.data=n.data||[],n.value=n.value||[],e.key=n.id||e.index,l.html(e.elem),e.layBox=e.elem.find("."+s),e.layHeader=e.elem.find("."+u),e.laySearch=e.elem.find("."+h),e.layData=i.find("."+y),e.layBtn=i.find("."+f+" .layui-btn"),e.layBox.css({width:n.width,height:n.height}),e.layData.css({height:function(){return n.height-e.layHeader.outerHeight()-e.laySearch.outerHeight()-2}()}),e.renderData(),e.events())},x.prototype.renderData=function(){var e=this,a=(e.config,[{checkName:"layTransferLeftCheck",views:[]},{checkName:"layTransferRightCheck",views:[]}]);e.parseData(function(e){var t=e.selected?1:0,n=["<li>",'<input type="checkbox" name="'+a[t].checkName+'" lay-skin="primary" lay-filter="layTransferCheckbox" title="'+e.title+'"'+(e.disabled?" disabled":"")+(e.checked?" checked":"")+' value="'+e.value+'">',"</li>"].join("");a[t].views.push(n),delete e.selected}),e.layData.eq(0).html(a[0].views.join("")),e.layData.eq(1).html(a[1].views.join("")),e.renderCheckBtn()},x.prototype.renderForm=function(e){n.render(e,"LAY-transfer-"+this.index)},x.prototype.renderCheckBtn=function(e){var t=this,n=t.config;e=e||{},t.layBox.each(function(i){var l=a(this),r=l.find("."+y),d=l.find("."+u).find('input[type="checkbox"]'),s=r.find('input[type="checkbox"]'),h=0,f=!1;if(s.each(function(){var e=a(this).data("hide");(this.checked||this.disabled||e)&&h++,this.checked&&!e&&(f=!0)}),d.prop("checked",f&&h===s.length),t.layBtn.eq(i)[f?"removeClass":"addClass"](o),!e.stopNone){var p=r.children("li:not(."+c+")").length;t.noneView(r,p?"":n.text.none)}}),t.renderForm("checkbox")},x.prototype.noneView=function(e,t){var n=a('<p class="layui-none">'+(t||"")+"</p>");e.find("."+d)[0]&&e.find("."+d).remove(),t.replace(/\s/g,"")&&e.append(n)},x.prototype.setValue=function(){var e=this,t=e.config,n=[];return e.layBox.eq(1).find("."+y+' input[type="checkbox"]').each(function(){var e=a(this).data("hide");e||n.push(this.value)}),t.value=n,e},x.prototype.parseData=function(e){var t=this,n=t.config,i=[];return layui.each(n.data,function(t,l){l=("function"==typeof n.parseData?n.parseData(l):l)||l,i.push(l=a.extend({},l)),layui.each(n.value,function(e,a){a==l.value&&(l.selected=!0)}),e&&e(l)}),n.data=i,t},x.prototype.getData=function(e){var a=this,t=a.config,n=[];return a.setValue(),layui.each(e||t.value,function(e,a){layui.each(t.data,function(e,t){delete t.selected,a==t.value&&n.push(t)})}),n},x.prototype.events=function(){var e=this,t=e.config;e.elem.on("click",'input[lay-filter="layTransferCheckbox"]+',function(){var t=a(this).prev(),n=t[0].checked,i=t.parents("."+s).eq(0).find("."+y);t[0].disabled||("all"===t.attr("lay-type")&&i.find('input[type="checkbox"]').each(function(){this.disabled||(this.checked=n)}),e.renderCheckBtn({stopNone:!0}))}),e.layBtn.on("click",function(){var n=a(this),i=n.data("index"),l=e.layBox.eq(i),r=[];if(!n.hasClass(o)){e.layBox.eq(i).each(function(t){var n=a(this),i=n.find("."+y);i.children("li").each(function(){var t=a(this),n=t.find('input[type="checkbox"]'),i=n.data("hide");n[0].checked&&!i&&(n[0].checked=!1,l.siblings("."+s).find("."+y).append(t.clone()),t.remove(),r.push(n[0].value)),e.setValue()})}),e.renderCheckBtn();var c=l.siblings("."+s).find("."+h+" input");""===c.val()||c.trigger("keyup"),t.onchange&&t.onchange(e.getData(r),i)}}),e.laySearch.find("input").on("keyup",function(){var n=this.value,i=a(this).parents("."+h).eq(0).siblings("."+y),l=i.children("li");l.each(function(){var e=a(this),t=e.find('input[type="checkbox"]'),i=t[0].title.indexOf(n)!==-1;e[i?"removeClass":"addClass"](c),t.data("hide",!i)}),e.renderCheckBtn();var r=l.length===i.children("li."+c).length;e.noneView(i,r?t.text.searchNone:"")})},r.that={},r.config={},l.reload=function(e,a){var t=r.that[e];return t.reload(a),r.call(t)},l.getData=function(e){var a=r.that[e];return a.getData()},l.render=function(e){var a=new x(e);return r.call(a)},e(i,l)}); \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/lay/modules/tree.js b/src/main/resources/static/articles/layui/lay/modules/tree.js new file mode 100644 index 0000000..c9c93a2 --- /dev/null +++ b/src/main/resources/static/articles/layui/lay/modules/tree.js @@ -0,0 +1,2 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + ;layui.define("form",function(e){"use strict";var i=layui.$,a=layui.form,n=layui.layer,t="tree",r={config:{},index:layui[t]?layui[t].index+1e4:0,set:function(e){var a=this;return a.config=i.extend({},a.config,e),a},on:function(e,i){return layui.onevent.call(this,t,e,i)}},l=function(){var e=this,i=e.config,a=i.id||e.index;return l.that[a]=e,l.config[a]=i,{config:i,reload:function(i){e.reload.call(e,i)},getChecked:function(){return e.getChecked.call(e)},setChecked:function(i){return e.setChecked.call(e,i)}}},c="layui-hide",d="layui-disabled",s="layui-tree-set",o="layui-tree-iconClick",h="layui-icon-addition",u="layui-icon-subtraction",p="layui-tree-entry",f="layui-tree-main",y="layui-tree-txt",v="layui-tree-pack",C="layui-tree-spread",k="layui-tree-setLineShort",m="layui-tree-showLine",x="layui-tree-lineExtend",b=function(e){var a=this;a.index=++r.index,a.config=i.extend({},a.config,r.config,e),a.render()};b.prototype.config={data:[],showCheckbox:!1,showLine:!0,accordion:!1,onlyIconControl:!1,isJump:!1,edit:!1,text:{defaultNodeName:"未命名",none:"无数据"}},b.prototype.reload=function(e){var a=this;layui.each(e,function(e,i){i.constructor===Array&&delete a.config[e]}),a.config=i.extend(!0,{},a.config,e),a.render()},b.prototype.render=function(){var e=this,a=e.config;e.checkids=[];var n=i('<div class="layui-tree'+(a.showCheckbox?" layui-form":"")+(a.showLine?" layui-tree-line":"")+'" lay-filter="LAY-tree-'+e.index+'"></div>');e.tree(n);var t=a.elem=i(a.elem);if(t[0]){if(e.key=a.id||e.index,e.elem=n,e.elemNone=i('<div class="layui-tree-emptyText">'+a.text.none+"</div>"),t.html(e.elem),0==e.elem.find(".layui-tree-set").length)return e.elem.append(e.elemNone);a.showCheckbox&&e.renderForm("checkbox"),e.elem.find(".layui-tree-set").each(function(){var e=i(this);e.parent(".layui-tree-pack")[0]||e.addClass("layui-tree-setHide"),!e.next()[0]&&e.parents(".layui-tree-pack").eq(1).hasClass("layui-tree-lineExtend")&&e.addClass(k),e.next()[0]||e.parents(".layui-tree-set").eq(0).next()[0]||e.addClass(k)}),e.events()}},b.prototype.renderForm=function(e){a.render(e,"LAY-tree-"+this.index)},b.prototype.tree=function(e,a){var n=this,t=n.config,r=a||t.data;layui.each(r,function(a,r){var l=r.children&&r.children.length>0,o=i('<div class="layui-tree-pack" '+(r.spread?'style="display: block;"':"")+'"></div>'),h=i(['<div data-id="'+r.id+'" class="layui-tree-set'+(r.spread?" layui-tree-spread":"")+(r.checked?" layui-tree-checkedFirst":"")+'">','<div class="layui-tree-entry">','<div class="layui-tree-main">',function(){return t.showLine?l?'<span class="layui-tree-iconClick layui-tree-icon"><i class="layui-icon '+(r.spread?"layui-icon-subtraction":"layui-icon-addition")+'"></i></span>':'<span class="layui-tree-iconClick"><i class="layui-icon layui-icon-file"></i></span>':'<span class="layui-tree-iconClick"><i class="layui-tree-iconArrow '+(l?"":c)+'"></i></span>'}(),function(){return t.showCheckbox?'<input type="checkbox" name="'+(r.field||"layuiTreeCheck_"+r.id)+'" same="layuiTreeCheck" lay-skin="primary" '+(r.disabled?"disabled":"")+' value="'+r.id+'">':""}(),function(){return t.isJump&&r.href?'<a href="'+r.href+'" target="_blank" class="'+y+'">'+(r.title||r.label||t.text.defaultNodeName)+"</a>":'<span class="'+y+(r.disabled?" "+d:"")+'">'+(r.title||r.label||t.text.defaultNodeName)+"</span>"}(),"</div>",function(){if(!t.edit)return"";var e={add:'<i class="layui-icon layui-icon-add-1" data-type="add"></i>',update:'<i class="layui-icon layui-icon-edit" data-type="update"></i>',del:'<i class="layui-icon layui-icon-delete" data-type="del"></i>'},i=['<div class="layui-btn-group layui-tree-btnGroup">'];return t.edit===!0&&(t.edit=["update","del"]),"object"==typeof t.edit?(layui.each(t.edit,function(a,n){i.push(e[n]||"")}),i.join("")+"</div>"):void 0}(),"</div></div>"].join(""));l&&(h.append(o),n.tree(o,r.children)),e.append(h),h.prev("."+s)[0]&&h.prev().children(".layui-tree-pack").addClass("layui-tree-showLine"),l||h.parent(".layui-tree-pack").addClass("layui-tree-lineExtend"),n.spread(h,r),t.showCheckbox&&(r.checked&&n.checkids.push(r.id),n.checkClick(h,r)),t.edit&&n.operate(h,r)})},b.prototype.spread=function(e,a){var n=this,t=n.config,r=e.children("."+p),l=r.children("."+f),c=r.find("."+o),k=r.find("."+y),m=t.onlyIconControl?c:l,x="";m.on("click",function(i){var a=e.children("."+v),n=m.children(".layui-icon")[0]?m.children(".layui-icon"):m.find(".layui-tree-icon").children(".layui-icon");if(a[0]){if(e.hasClass(C))e.removeClass(C),a.slideUp(200),n.removeClass(u).addClass(h);else if(e.addClass(C),a.slideDown(200),n.addClass(u).removeClass(h),t.accordion){var r=e.siblings("."+s);r.removeClass(C),r.children("."+v).slideUp(200),r.find(".layui-tree-icon").children(".layui-icon").removeClass(u).addClass(h)}}else x="normal"}),k.on("click",function(){var n=i(this);n.hasClass(d)||(x=e.hasClass(C)?t.onlyIconControl?"open":"close":t.onlyIconControl?"close":"open",t.click&&t.click({elem:e,state:x,data:a}))})},b.prototype.setCheckbox=function(e,i,a){var n=this,t=(n.config,a.prop("checked"));if(!a.prop("disabled")){if("object"==typeof i.children||e.find("."+v)[0]){var r=e.find("."+v).find('input[same="layuiTreeCheck"]');r.each(function(){this.disabled||(this.checked=t)})}var l=function(e){if(e.parents("."+s)[0]){var i,a=e.parent("."+v),n=a.parent(),r=a.prev().find('input[same="layuiTreeCheck"]');t?r.prop("checked",t):(a.find('input[same="layuiTreeCheck"]').each(function(){this.checked&&(i=!0)}),i||r.prop("checked",!1)),l(n)}};l(e),n.renderForm("checkbox")}},b.prototype.checkClick=function(e,a){var n=this,t=n.config,r=e.children("."+p),l=r.children("."+f);l.on("click",'input[same="layuiTreeCheck"]+',function(r){layui.stope(r);var l=i(this).prev(),c=l.prop("checked");l.prop("disabled")||(n.setCheckbox(e,a,l),t.oncheck&&t.oncheck({elem:e,checked:c,data:a}))})},b.prototype.operate=function(e,a){var t=this,r=t.config,l=e.children("."+p),d=l.children("."+f);l.children(".layui-tree-btnGroup").on("click",".layui-icon",function(l){layui.stope(l);var f=i(this).data("type"),b=e.children("."+v),g={data:a,type:f,elem:e};if("add"==f){b[0]||(r.showLine?(d.find("."+o).addClass("layui-tree-icon"),d.find("."+o).children(".layui-icon").addClass(h).removeClass("layui-icon-file")):d.find(".layui-tree-iconArrow").removeClass(c),e.append('<div class="layui-tree-pack"></div>'));var w=r.operate&&r.operate(g),N={};if(N.title=r.text.defaultNodeName,N.id=w,t.tree(e.children("."+v),[N]),r.showLine)if(b[0])b.hasClass(x)||b.addClass(x),e.find("."+v).each(function(){i(this).children("."+s).last().addClass(k)}),b.children("."+s).last().prev().hasClass(k)?b.children("."+s).last().prev().removeClass(k):b.children("."+s).last().removeClass(k),!e.parent("."+v)[0]&&e.next()[0]&&b.children("."+s).last().removeClass(k);else{var T=e.siblings("."+s),L=1,A=e.parent("."+v);layui.each(T,function(e,a){i(a).children("."+v)[0]||(L=0)}),1==L?(T.children("."+v).addClass(m),T.children("."+v).children("."+s).removeClass(k),e.children("."+v).addClass(m),A.removeClass(x),A.children("."+s).last().children("."+v).children("."+s).last().addClass(k)):e.children("."+v).children("."+s).addClass(k)}if(!r.showCheckbox)return;if(d.find('input[same="layuiTreeCheck"]')[0].checked){var I=e.children("."+v).children("."+s).last();I.find('input[same="layuiTreeCheck"]')[0].checked=!0}t.renderForm("checkbox")}else if("update"==f){var F=d.children("."+y).html();d.children("."+y).html(""),d.append('<input type="text" class="layui-tree-editInput">'),d.children(".layui-tree-editInput").val(F).focus();var j=function(e){var i=e.val().trim();i=i?i:r.text.defaultNodeName,e.remove(),d.children("."+y).html(i),g.data.title=i,r.operate&&r.operate(g)};d.children(".layui-tree-editInput").blur(function(){j(i(this))}),d.children(".layui-tree-editInput").on("keydown",function(e){13===e.keyCode&&(e.preventDefault(),j(i(this)))})}else n.confirm('确认删除该节点 "<span style="color: #999;">'+(a.title||"")+'</span>" 吗?',function(a){if(r.operate&&r.operate(g),g.status="remove",n.close(a),!e.prev("."+s)[0]&&!e.next("."+s)[0]&&!e.parent("."+v)[0])return e.remove(),void t.elem.append(t.elemNone);if(e.siblings("."+s).children("."+p)[0]){if(r.showCheckbox){var l=function(e){if(e.parents("."+s)[0]){var a=e.siblings("."+s).children("."+p),n=e.parent("."+v).prev(),r=n.find('input[same="layuiTreeCheck"]')[0],c=1,d=0;0==r.checked&&(a.each(function(e,a){var n=i(a).find('input[same="layuiTreeCheck"]')[0];0!=n.checked||n.disabled||(c=0),n.disabled||(d=1)}),1==c&&1==d&&(r.checked=!0,t.renderForm("checkbox"),l(n.parent("."+s))))}};l(e)}if(r.showLine){var d=e.siblings("."+s),h=1,f=e.parent("."+v);layui.each(d,function(e,a){i(a).children("."+v)[0]||(h=0)}),1==h?(b[0]||(f.removeClass(x),d.children("."+v).addClass(m),d.children("."+v).children("."+s).removeClass(k)),e.next()[0]?f.children("."+s).last().children("."+v).children("."+s).last().addClass(k):e.prev().children("."+v).children("."+s).last().addClass(k),e.next()[0]||e.parents("."+s)[1]||e.parents("."+s).eq(0).next()[0]||e.prev("."+s).addClass(k)):!e.next()[0]&&e.hasClass(k)&&e.prev().addClass(k)}}else{var y=e.parent("."+v).prev();if(r.showLine){y.find("."+o).removeClass("layui-tree-icon"),y.find("."+o).children(".layui-icon").removeClass(u).addClass("layui-icon-file");var w=y.parents("."+v).eq(0);w.addClass(x),w.children("."+s).each(function(){i(this).children("."+v).children("."+s).last().addClass(k)})}else y.find(".layui-tree-iconArrow").addClass(c);e.parents("."+s).eq(0).removeClass(C),e.parent("."+v).remove()}e.remove()})})},b.prototype.events=function(){var e=this,a=e.config;e.elem.find(".layui-tree-checkedFirst");e.setChecked(e.checkids),e.elem.find(".layui-tree-search").on("keyup",function(){var n=i(this),t=n.val(),r=n.nextAll(),l=[];r.find("."+y).each(function(){var e=i(this).parents("."+p);if(i(this).html().indexOf(t)!=-1){l.push(i(this).parent());var a=function(e){e.addClass("layui-tree-searchShow"),e.parent("."+v)[0]&&a(e.parent("."+v).parent("."+s))};a(e.parent("."+s))}}),r.find("."+p).each(function(){var e=i(this).parent("."+s);e.hasClass("layui-tree-searchShow")||e.addClass(c)}),0==r.find(".layui-tree-searchShow").length&&e.elem.append(e.elemNone),a.onsearch&&a.onsearch({elem:l})}),e.elem.find(".layui-tree-search").on("keydown",function(){i(this).nextAll().find("."+p).each(function(){var e=i(this).parent("."+s);e.removeClass("layui-tree-searchShow "+c)}),i(".layui-tree-emptyText")[0]&&i(".layui-tree-emptyText").remove()})},b.prototype.getChecked=function(){var e=this,a=e.config,n=[],t=[];e.elem.find(".layui-form-checked").each(function(){n.push(i(this).prev()[0].value)});var r=function(e,a){layui.each(e,function(e,t){layui.each(n,function(e,n){if(t.id==n){var l=i.extend({},t);return delete l.children,a.push(l),t.children&&(l.children=[],r(t.children,l.children)),!0}})})};return r(i.extend({},a.data),t),t},b.prototype.setChecked=function(e){var a=this;a.config;a.elem.find("."+s).each(function(a,n){var t=i(this).data("id"),r=i(n).children("."+p).find('input[same="layuiTreeCheck"]'),l=r.next();if("number"==typeof e){if(t==e)return r[0].checked||l.click(),!1}else"object"==typeof e&&layui.each(e,function(e,i){if(i==t&&!r[0].checked)return l.click(),!0})})},l.that={},l.config={},r.reload=function(e,i){var a=l.that[e];return a.reload(i),l.call(a)},r.getChecked=function(e){var i=l.that[e];return i.getChecked()},r.setChecked=function(e,i){var a=l.that[e];return a.setChecked(i)},r.render=function(e){var i=new b(e);return l.call(i)},e(t,r)}); \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/lay/modules/upload.js b/src/main/resources/static/articles/layui/lay/modules/upload.js new file mode 100644 index 0000000..9298ecf --- /dev/null +++ b/src/main/resources/static/articles/layui/lay/modules/upload.js @@ -0,0 +1,2 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + ;layui.define("layer",function(e){"use strict";var t=layui.$,i=layui.layer,n=layui.hint(),o=layui.device(),a={config:{},set:function(e){var i=this;return i.config=t.extend({},i.config,e),i},on:function(e,t){return layui.onevent.call(this,r,e,t)}},l=function(){var e=this;return{upload:function(t){e.upload.call(e,t)},reload:function(t){e.reload.call(e,t)},config:e.config}},r="upload",u="layui-upload-file",c="layui-upload-form",f="layui-upload-iframe",s="layui-upload-choose",p=function(e){var i=this;i.config=t.extend({},i.config,a.config,e),i.render()};p.prototype.config={accept:"images",exts:"",auto:!0,bindAction:"",url:"",field:"file",acceptMime:"",method:"post",data:{},drag:!0,size:0,number:0,multiple:!1},p.prototype.render=function(e){var i=this,e=i.config;e.elem=t(e.elem),e.bindAction=t(e.bindAction),i.file(),i.events()},p.prototype.file=function(){var e=this,i=e.config,n=e.elemFile=t(['<input class="'+u+'" type="file" accept="'+i.acceptMime+'" name="'+i.field+'"',i.multiple?" multiple":"",">"].join("")),a=i.elem.next();(a.hasClass(u)||a.hasClass(c))&&a.remove(),o.ie&&o.ie<10&&i.elem.wrap('<div class="layui-upload-wrap"></div>'),e.isFile()?(e.elemFile=i.elem,i.field=i.elem[0].name):i.elem.after(n),o.ie&&o.ie<10&&e.initIE()},p.prototype.initIE=function(){var e=this,i=e.config,n=t('<iframe id="'+f+'" class="'+f+'" name="'+f+'" frameborder="0"></iframe>'),o=t(['<form target="'+f+'" class="'+c+'" method="post" key="set-mine" enctype="multipart/form-data" action="'+i.url+'">',"</form>"].join(""));t("#"+f)[0]||t("body").append(n),i.elem.next().hasClass(c)||(e.elemFile.wrap(o),i.elem.next("."+c).append(function(){var e=[];return layui.each(i.data,function(t,i){i="function"==typeof i?i():i,e.push('<input type="hidden" name="'+t+'" value="'+i+'">')}),e.join("")}()))},p.prototype.msg=function(e){return i.msg(e,{icon:2,shift:6})},p.prototype.isFile=function(){var e=this.config.elem[0];if(e)return"input"===e.tagName.toLocaleLowerCase()&&"file"===e.type},p.prototype.preview=function(e){var t=this;window.FileReader&&layui.each(t.chooseFiles,function(t,i){var n=new FileReader;n.readAsDataURL(i),n.onload=function(){e&&e(t,i,this.result)}})},p.prototype.upload=function(e,i){var n,a=this,l=a.config,r=a.elemFile[0],u=function(){var i=0,n=0,o=e||a.files||a.chooseFiles||r.files,u=function(){l.multiple&&i+n===a.fileLength&&"function"==typeof l.allDone&&l.allDone({total:a.fileLength,successful:i,aborted:n})};layui.each(o,function(e,o){var r=new FormData;r.append(l.field,o),layui.each(l.data,function(e,t){t="function"==typeof t?t():t,r.append(e,t)});var c={url:l.url,type:"post",data:r,contentType:!1,processData:!1,dataType:"json",headers:l.headers||{},success:function(t){i++,d(e,t),u()},error:function(){n++,a.msg("请求上传接口出现异常"),m(e),u()}};"function"==typeof l.progress&&(c.xhr=function(){var e=t.ajaxSettings.xhr();return e.upload.addEventListener("progress",function(e){if(e.lengthComputable){var t=Math.floor(e.loaded/e.total*100);l.progress(t,l.item[0],e)}}),e}),t.ajax(c)})},c=function(){var e=t("#"+f);a.elemFile.parent().submit(),clearInterval(p.timer),p.timer=setInterval(function(){var t,i=e.contents().find("body");try{t=i.text()}catch(n){a.msg("获取上传后的响应信息出现异常"),clearInterval(p.timer),m()}t&&(clearInterval(p.timer),i.html(""),d(0,t))},30)},d=function(e,t){if(a.elemFile.next("."+s).remove(),r.value="","object"!=typeof t)try{t=JSON.parse(t)}catch(i){return t={},a.msg("请对上传接口返回有效JSON")}"function"==typeof l.done&&l.done(t,e||0,function(e){a.upload(e)})},m=function(e){l.auto&&(r.value=""),"function"==typeof l.error&&l.error(e||0,function(e){a.upload(e)})},h=l.exts,v=function(){var t=[];return layui.each(e||a.chooseFiles,function(e,i){t.push(i.name)}),t}(),g={preview:function(e){a.preview(e)},upload:function(e,t){var i={};i[e]=t,a.upload(i)},pushFile:function(){return a.files=a.files||{},layui.each(a.chooseFiles,function(e,t){a.files[e]=t}),a.files},resetFile:function(e,t,i){var n=new File([t],i);a.files=a.files||{},a.files[e]=n}},y=function(){if("choose"!==i&&!l.auto||(l.choose&&l.choose(g),"choose"!==i))return l.before&&l.before(g),o.ie?o.ie>9?u():c():void u()};if(v=0===v.length?r.value.match(/[^\/\\]+\..+/g)||[]||"":v,0!==v.length){switch(l.accept){case"file":if(h&&!RegExp("\\w\\.("+h+")$","i").test(escape(v)))return a.msg("选择的文件中包含不支持的格式"),r.value="";break;case"video":if(!RegExp("\\w\\.("+(h||"avi|mp4|wma|rmvb|rm|flash|3gp|flv")+")$","i").test(escape(v)))return a.msg("选择的视频中包含不支持的格式"),r.value="";break;case"audio":if(!RegExp("\\w\\.("+(h||"mp3|wav|mid")+")$","i").test(escape(v)))return a.msg("选择的音频中包含不支持的格式"),r.value="";break;default:if(layui.each(v,function(e,t){RegExp("\\w\\.("+(h||"jpg|png|gif|bmp|jpeg$")+")","i").test(escape(t))||(n=!0)}),n)return a.msg("选择的图片中包含不支持的格式"),r.value=""}if(a.fileLength=function(){var t=0,i=e||a.files||a.chooseFiles||r.files;return layui.each(i,function(){t++}),t}(),l.number&&a.fileLength>l.number)return a.msg("同时最多只能上传的数量为:"+l.number);if(l.size>0&&!(o.ie&&o.ie<10)){var F;if(layui.each(a.chooseFiles,function(e,t){if(t.size>1024*l.size){var i=l.size/1024;i=i>=1?i.toFixed(2)+"MB":l.size+"KB",r.value="",F=i}}),F)return a.msg("文件不能超过"+F)}y()}},p.prototype.reload=function(e){e=e||{},delete e.elem,delete e.bindAction;var i=this,e=i.config=t.extend({},i.config,a.config,e),n=e.elem.next();n.attr({name:e.name,accept:e.acceptMime,multiple:e.multiple})},p.prototype.events=function(){var e=this,i=e.config,a=function(t){e.chooseFiles={},layui.each(t,function(t,i){var n=(new Date).getTime();e.chooseFiles[n+"-"+t]=i})},l=function(t,n){var o=e.elemFile,a=t.length>1?t.length+"个文件":(t[0]||{}).name||o[0].value.match(/[^\/\\]+\..+/g)||[]||"";o.next().hasClass(s)&&o.next().remove(),e.upload(null,"choose"),e.isFile()||i.choose||o.after('<span class="layui-inline '+s+'">'+a+"</span>")};i.elem.off("upload.start").on("upload.start",function(){var o=t(this),a=o.attr("lay-data");if(a)try{a=new Function("return "+a)(),e.config=t.extend({},i,a)}catch(l){n.error("Upload element property lay-data configuration item has a syntax error: "+a)}e.config.item=o,e.elemFile[0].click()}),o.ie&&o.ie<10||i.elem.off("upload.over").on("upload.over",function(){var e=t(this);e.attr("lay-over","")}).off("upload.leave").on("upload.leave",function(){var e=t(this);e.removeAttr("lay-over")}).off("upload.drop").on("upload.drop",function(n,o){var r=t(this),u=o.originalEvent.dataTransfer.files||[];r.removeAttr("lay-over"),a(u),i.auto?e.upload(u):l(u)}),e.elemFile.off("upload.change").on("upload.change",function(){var t=this.files||[];a(t),i.auto?e.upload():l(t)}),i.bindAction.off("upload.action").on("upload.action",function(){e.upload()}),i.elem.data("haveEvents")||(e.elemFile.on("change",function(){t(this).trigger("upload.change")}),i.elem.on("click",function(){e.isFile()||t(this).trigger("upload.start")}),i.drag&&i.elem.on("dragover",function(e){e.preventDefault(),t(this).trigger("upload.over")}).on("dragleave",function(e){t(this).trigger("upload.leave")}).on("drop",function(e){e.preventDefault(),t(this).trigger("upload.drop",e)}),i.bindAction.on("click",function(){t(this).trigger("upload.action")}),i.elem.data("haveEvents",!0))},a.render=function(e){var t=new p(e);return l.call(t)},e(r,a)}); \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/lay/modules/util.js b/src/main/resources/static/articles/layui/lay/modules/util.js new file mode 100644 index 0000000..fdc1ec2 --- /dev/null +++ b/src/main/resources/static/articles/layui/lay/modules/util.js @@ -0,0 +1,2 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + ;layui.define("jquery",function(e){"use strict";var t=layui.$,i={fixbar:function(e){var i,n,a="layui-fixbar",o="layui-fixbar-top",r=t(document),l=t("body");e=t.extend({showHeight:200},e),e.bar1=e.bar1===!0?"":e.bar1,e.bar2=e.bar2===!0?"":e.bar2,e.bgcolor=e.bgcolor?"background-color:"+e.bgcolor:"";var c=[e.bar1,e.bar2,""],u=t(['<ul class="'+a+'">',e.bar1?'<li class="layui-icon" lay-type="bar1" style="'+e.bgcolor+'">'+c[0]+"</li>":"",e.bar2?'<li class="layui-icon" lay-type="bar2" style="'+e.bgcolor+'">'+c[1]+"</li>":"",'<li class="layui-icon '+o+'" lay-type="top" style="'+e.bgcolor+'">'+c[2]+"</li>","</ul>"].join("")),g=u.find("."+o),s=function(){var t=r.scrollTop();t>=e.showHeight?i||(g.show(),i=1):i&&(g.hide(),i=0)};t("."+a)[0]||("object"==typeof e.css&&u.css(e.css),l.append(u),s(),u.find("li").on("click",function(){var i=t(this),n=i.attr("lay-type");"top"===n&&t("html,body").animate({scrollTop:0},200),e.click&&e.click.call(this,n)}),r.on("scroll",function(){clearTimeout(n),n=setTimeout(function(){s()},100)}))},countdown:function(e,t,i){var n=this,a="function"==typeof t,o=new Date(e).getTime(),r=new Date(!t||a?(new Date).getTime():t).getTime(),l=o-r,c=[Math.floor(l/864e5),Math.floor(l/36e5)%24,Math.floor(l/6e4)%60,Math.floor(l/1e3)%60];a&&(i=t);var u=setTimeout(function(){n.countdown(e,r+1e3,i)},1e3);return i&&i(l>0?c:[0,0,0,0],t,u),l<=0&&clearTimeout(u),u},timeAgo:function(e,t){var i=this,n=[[],[]],a=(new Date).getTime()-new Date(e).getTime();return a>26784e5?(a=new Date(e),n[0][0]=i.digit(a.getFullYear(),4),n[0][1]=i.digit(a.getMonth()+1),n[0][2]=i.digit(a.getDate()),t||(n[1][0]=i.digit(a.getHours()),n[1][1]=i.digit(a.getMinutes()),n[1][2]=i.digit(a.getSeconds())),n[0].join("-")+" "+n[1].join(":")):a>=864e5?(a/1e3/60/60/24|0)+"天前":a>=36e5?(a/1e3/60/60|0)+"小时前":a>=18e4?(a/1e3/60|0)+"分钟前":a<0?"未来":"刚刚"},digit:function(e,t){var i="";e=String(e),t=t||2;for(var n=e.length;n<t;n++)i+="0";return e<Math.pow(10,t)?i+(0|e):e},toDateString:function(e,t){var i=this,n=new Date(e||new Date),a=[i.digit(n.getFullYear(),4),i.digit(n.getMonth()+1),i.digit(n.getDate())],o=[i.digit(n.getHours()),i.digit(n.getMinutes()),i.digit(n.getSeconds())];return t=t||"yyyy-MM-dd HH:mm:ss",t.replace(/yyyy/g,a[0]).replace(/MM/g,a[1]).replace(/dd/g,a[2]).replace(/HH/g,o[0]).replace(/mm/g,o[1]).replace(/ss/g,o[2])},escape:function(e){return String(e||"").replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/'/g,"'").replace(/"/g,""")},event:function(e,n,a){var o=t("body");return a=a||"click",n=i.event[e]=t.extend(!0,i.event[e],n)||{},i.event.UTIL_EVENT_CALLBACK=i.event.UTIL_EVENT_CALLBACK||{},o.off(a,"*["+e+"]",i.event.UTIL_EVENT_CALLBACK[e]),i.event.UTIL_EVENT_CALLBACK[e]=function(){var i=t(this),a=i.attr(e);"function"==typeof n[a]&&n[a].call(this,i)},o.on(a,"*["+e+"]",i.event.UTIL_EVENT_CALLBACK[e]),n}};!function(e,t,i){"$:nomunge";function n(){a=t[l](function(){o.each(function(){var t=e(this),i=t.width(),n=t.height(),a=e.data(this,u);(i!==a.w||n!==a.h)&&t.trigger(c,[a.w=i,a.h=n])}),n()},r[g])}var a,o=e([]),r=e.resize=e.extend(e.resize,{}),l="setTimeout",c="resize",u=c+"-special-event",g="delay",s="throttleWindow";r[g]=250,r[s]=!0,e.event.special[c]={setup:function(){if(!r[s]&&this[l])return!1;var t=e(this);o=o.add(t),e.data(this,u,{w:t.width(),h:t.height()}),1===o.length&&n()},teardown:function(){if(!r[s]&&this[l])return!1;var t=e(this);o=o.not(t),t.removeData(u),o.length||clearTimeout(a)},add:function(t){function n(t,n,o){var r=e(this),l=e.data(this,u)||{};l.w=n!==i?n:r.width(),l.h=o!==i?o:r.height(),a.apply(this,arguments)}if(!r[s]&&this[l])return!1;var a;return e.isFunction(t)?(a=t,n):(a=t.handler,void(t.handler=n))}}}(t,window),e("util",i)}); \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/layui.all.js b/src/main/resources/static/articles/layui/layui.all.js new file mode 100644 index 0000000..af3355c --- /dev/null +++ b/src/main/resources/static/articles/layui/layui.all.js @@ -0,0 +1,5 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + ;!function(e){"use strict";var t=document,n={modules:{},status:{},timeout:10,event:{}},r=function(){this.v="2.5.6"},o=function(){var e=t.currentScript?t.currentScript.src:function(){for(var e,n=t.scripts,r=n.length-1,o=r;o>0;o--)if("interactive"===n[o].readyState){e=n[o].src;break}return e||n[r].src}();return e.substring(0,e.lastIndexOf("/")+1)}(),a=function(t){e.console&&console.error&&console.error("Layui hint: "+t)},i="undefined"!=typeof opera&&"[object Opera]"===opera.toString(),u={layer:"modules/layer",laydate:"modules/laydate",laypage:"modules/laypage",laytpl:"modules/laytpl",layim:"modules/layim",layedit:"modules/layedit",form:"modules/form",upload:"modules/upload",transfer:"modules/transfer",tree:"modules/tree",table:"modules/table",element:"modules/element",rate:"modules/rate",colorpicker:"modules/colorpicker",slider:"modules/slider",carousel:"modules/carousel",flow:"modules/flow",util:"modules/util",code:"modules/code",jquery:"modules/jquery",mobile:"modules/mobile","layui.all":"../layui.all"};r.prototype.cache=n,r.prototype.define=function(e,t){var r=this,o="function"==typeof e,a=function(){var e=function(e,t){layui[e]=t,n.status[e]=!0};return"function"==typeof t&&t(function(r,o){e(r,o),n.callback[r]=function(){t(e)}}),this};return o&&(t=e,e=[]),!layui["layui.all"]&&layui["layui.mobile"]?a.call(r):(r.use(e,a),r)},r.prototype.use=function(e,r,l){function c(e,t){var r="PLaySTATION 3"===navigator.platform?/^complete$/:/^(complete|loaded)$/;("load"===e.type||r.test((e.currentTarget||e.srcElement).readyState))&&(n.modules[d]=t,y.removeChild(h),function o(){return++m>1e3*n.timeout/4?a(d+" is not a valid module"):void(n.status[d]?s():setTimeout(o,4))}())}function s(){l.push(layui[d]),e.length>1?p.use(e.slice(1),r,l):"function"==typeof r&&r.apply(layui,l)}var p=this,f=n.dir=n.dir?n.dir:o,y=t.getElementsByTagName("head")[0];e="string"==typeof e?[e]:e,window.jQuery&&jQuery.fn.on&&(p.each(e,function(t,n){"jquery"===n&&e.splice(t,1)}),layui.jquery=layui.$=jQuery);var d=e[0],m=0;if(l=l||[],n.host=n.host||(f.match(/\/\/([\s\S]+?)\//)||["//"+location.host+"/"])[0],0===e.length||layui["layui.all"]&&u[d]||!layui["layui.all"]&&layui["layui.mobile"]&&u[d])return s(),p;var v=(u[d]?f+"lay/":/^\{\/\}/.test(p.modules[d])?"":n.base||"")+(p.modules[d]||d)+".js";if(v=v.replace(/^\{\/\}/,""),!n.modules[d]&&layui[d]&&(n.modules[d]=v),n.modules[d])!function g(){return++m>1e3*n.timeout/4?a(d+" is not a valid module"):void("string"==typeof n.modules[d]&&n.status[d]?s():setTimeout(g,4))}();else{var h=t.createElement("script");h.async=!0,h.charset="utf-8",h.src=v+function(){var e=n.version===!0?n.v||(new Date).getTime():n.version||"";return e?"?v="+e:""}(),y.appendChild(h),!h.attachEvent||h.attachEvent.toString&&h.attachEvent.toString().indexOf("[native code")<0||i?h.addEventListener("load",function(e){c(e,v)},!1):h.attachEvent("onreadystatechange",function(e){c(e,v)}),n.modules[d]=v}return p},r.prototype.getStyle=function(t,n){var r=t.currentStyle?t.currentStyle:e.getComputedStyle(t,null);return r[r.getPropertyValue?"getPropertyValue":"getAttribute"](n)},r.prototype.link=function(e,r,o){var i=this,u=t.createElement("link"),l=t.getElementsByTagName("head")[0];"string"==typeof r&&(o=r);var c=(o||e).replace(/\.|\//g,""),s=u.id="layuicss-"+c,p=0;return u.rel="stylesheet",u.href=e+(n.debug?"?v="+(new Date).getTime():""),u.media="all",t.getElementById(s)||l.appendChild(u),"function"!=typeof r?i:(function f(){return++p>1e3*n.timeout/100?a(e+" timeout"):void(1989===parseInt(i.getStyle(t.getElementById(s),"width"))?function(){r()}():setTimeout(f,100))}(),i)},n.callback={},r.prototype.factory=function(e){if(layui[e])return"function"==typeof n.callback[e]?n.callback[e]:null},r.prototype.addcss=function(e,t,r){return layui.link(n.dir+"css/"+e,t,r)},r.prototype.img=function(e,t,n){var r=new Image;return r.src=e,r.complete?t(r):(r.onload=function(){r.onload=null,"function"==typeof t&&t(r)},void(r.onerror=function(e){r.onerror=null,"function"==typeof n&&n(e)}))},r.prototype.config=function(e){e=e||{};for(var t in e)n[t]=e[t];return this},r.prototype.modules=function(){var e={};for(var t in u)e[t]=u[t];return e}(),r.prototype.extend=function(e){var t=this;e=e||{};for(var n in e)t[n]||t.modules[n]?a("模块名 "+n+" 已被占用"):t.modules[n]=e[n];return t},r.prototype.router=function(e){var t=this,e=e||location.hash,n={path:[],search:{},hash:(e.match(/[^#](#.*$)/)||[])[1]||""};return/^#\//.test(e)?(e=e.replace(/^#\//,""),n.href="/"+e,e=e.replace(/([^#])(#.*$)/,"$1").split("/")||[],t.each(e,function(e,t){/^\w+=/.test(t)?function(){t=t.split("="),n.search[t[0]]=t[1]}():n.path.push(t)}),n):n},r.prototype.url=function(e){var t=this,n={pathname:function(){var t=e?function(){var t=(e.match(/\.[^.]+?\/.+/)||[])[0]||"";return t.replace(/^[^\/]+/,"").replace(/\?.+/,"")}():location.pathname;return t.replace(/^\//,"").split("/")}(),search:function(){var n={},r=(e?function(){var t=(e.match(/\?.+/)||[])[0]||"";return t.replace(/\#.+/,"")}():location.search).replace(/^\?+/,"").split("&");return t.each(r,function(e,t){var r=t.indexOf("="),o=function(){return r<0?t.substr(0,t.length):0!==r&&t.substr(0,r)}();o&&(n[o]=r>0?t.substr(r+1):null)}),n}(),hash:t.router(function(){return e?(e.match(/#.+/)||[])[0]||"":location.hash}())};return n},r.prototype.data=function(t,n,r){if(t=t||"layui",r=r||localStorage,e.JSON&&e.JSON.parse){if(null===n)return delete r[t];n="object"==typeof n?n:{key:n};try{var o=JSON.parse(r[t])}catch(a){var o={}}return"value"in n&&(o[n.key]=n.value),n.remove&&delete o[n.key],r[t]=JSON.stringify(o),n.key?o[n.key]:o}},r.prototype.sessionData=function(e,t){return this.data(e,t,sessionStorage)},r.prototype.device=function(t){var n=navigator.userAgent.toLowerCase(),r=function(e){var t=new RegExp(e+"/([^\\s\\_\\-]+)");return e=(n.match(t)||[])[1],e||!1},o={os:function(){return/windows/.test(n)?"windows":/linux/.test(n)?"linux":/iphone|ipod|ipad|ios/.test(n)?"ios":/mac/.test(n)?"mac":void 0}(),ie:function(){return!!(e.ActiveXObject||"ActiveXObject"in e)&&((n.match(/msie\s(\d+)/)||[])[1]||"11")}(),weixin:r("micromessenger")};return t&&!o[t]&&(o[t]=r(t)),o.android=/android/.test(n),o.ios="ios"===o.os,o.mobile=!(!o.android&&!o.ios),o},r.prototype.hint=function(){return{error:a}},r.prototype.each=function(e,t){var n,r=this;if("function"!=typeof t)return r;if(e=e||[],e.constructor===Object){for(n in e)if(t.call(e[n],n,e[n]))break}else for(n=0;n<e.length&&!t.call(e[n],n,e[n]);n++);return r},r.prototype.sort=function(e,t,n){var r=JSON.parse(JSON.stringify(e||[]));return t?(r.sort(function(e,n){var r=/^-?\d+$/,o=e[t],a=n[t];return r.test(o)&&(o=parseFloat(o)),r.test(a)&&(a=parseFloat(a)),o&&!a?1:!o&&a?-1:o>a?1:o<a?-1:0}),n&&r.reverse(),r):r},r.prototype.stope=function(t){t=t||e.event;try{t.stopPropagation()}catch(n){t.cancelBubble=!0}},r.prototype.onevent=function(e,t,n){return"string"!=typeof e||"function"!=typeof n?this:r.event(e,t,null,n)},r.prototype.event=r.event=function(e,t,r,o){var a=this,i=null,u=t.match(/\((.*)\)$/)||[],l=(e+"."+t).replace(u[0],""),c=u[1]||"",s=function(e,t){var n=t&&t.call(a,r);n===!1&&null===i&&(i=!1)};return o?(n.event[l]=n.event[l]||{},n.event[l][c]=[o],this):(layui.each(n.event[l],function(e,t){return"{*}"===c?void layui.each(t,s):(""===e&&layui.each(t,s),void(c&&e===c&&layui.each(t,s)))}),i)},e.layui=new r}(window);layui.define(function(a){var i=layui.cache;layui.config({dir:i.dir.replace(/lay\/dest\/$/,"")}),a("layui.all",layui.v)});layui.define(function(e){"use strict";var r={open:"{{",close:"}}"},c={exp:function(e){return new RegExp(e,"g")},query:function(e,c,t){var o=["#([\\s\\S])+?","([^{#}])*?"][e||0];return n((c||"")+r.open+o+r.close+(t||""))},escape:function(e){return String(e||"").replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/'/g,"'").replace(/"/g,""")},error:function(e,r){var c="Laytpl Error:";return"object"==typeof console&&console.error(c+e+"\n"+(r||"")),c+e}},n=c.exp,t=function(e){this.tpl=e};t.pt=t.prototype,window.errors=0,t.pt.parse=function(e,t){var o=this,p=e,a=n("^"+r.open+"#",""),l=n(r.close+"$","");e=e.replace(/\s+|\r|\t|\n/g," ").replace(n(r.open+"#"),r.open+"# ").replace(n(r.close+"}"),"} "+r.close).replace(/\\/g,"\\\\").replace(n(r.open+"!(.+?)!"+r.close),function(e){return e=e.replace(n("^"+r.open+"!"),"").replace(n("!"+r.close),"").replace(n(r.open+"|"+r.close),function(e){return e.replace(/(.)/g,"\\$1")})}).replace(/(?="|')/g,"\\").replace(c.query(),function(e){return e=e.replace(a,"").replace(l,""),'";'+e.replace(/\\/g,"")+';view+="'}).replace(c.query(1),function(e){var c='"+(';return e.replace(/\s/g,"")===r.open+r.close?"":(e=e.replace(n(r.open+"|"+r.close),""),/^=/.test(e)&&(e=e.replace(/^=/,""),c='"+_escape_('),c+e.replace(/\\/g,"")+')+"')}),e='"use strict";var view = "'+e+'";return view;';try{return o.cache=e=new Function("d, _escape_",e),e(t,c.escape)}catch(u){return delete o.cache,c.error(u,p)}},t.pt.render=function(e,r){var n,t=this;return e?(n=t.cache?t.cache(e,c.escape):t.parse(t.tpl,e),r?void r(n):n):c.error("no data")};var o=function(e){return"string"!=typeof e?c.error("Template not found"):new t(e)};o.config=function(e){e=e||{};for(var c in e)r[c]=e[c]},o.v="1.2.0",e("laytpl",o)});layui.define(function(e){"use strict";var a=document,t="getElementById",n="getElementsByTagName",i="laypage",r="layui-disabled",u=function(e){var a=this;a.config=e||{},a.config.index=++s.index,a.render(!0)};u.prototype.type=function(){var e=this.config;if("object"==typeof e.elem)return void 0===e.elem.length?2:3},u.prototype.view=function(){var e=this,a=e.config,t=a.groups="groups"in a?0|a.groups:5;a.layout="object"==typeof a.layout?a.layout:["prev","page","next"],a.count=0|a.count,a.curr=0|a.curr||1,a.limits="object"==typeof a.limits?a.limits:[10,20,30,40,50],a.limit=0|a.limit||10,a.pages=Math.ceil(a.count/a.limit)||1,a.curr>a.pages&&(a.curr=a.pages),t<0?t=1:t>a.pages&&(t=a.pages),a.prev="prev"in a?a.prev:"上一页",a.next="next"in a?a.next:"下一页";var n=a.pages>t?Math.ceil((a.curr+(t>1?1:0))/(t>0?t:1)):1,i={prev:function(){return a.prev?'<a href="javascript:;" class="layui-laypage-prev'+(1==a.curr?" "+r:"")+'" data-page="'+(a.curr-1)+'">'+a.prev+"</a>":""}(),page:function(){var e=[];if(a.count<1)return"";n>1&&a.first!==!1&&0!==t&&e.push('<a href="javascript:;" class="layui-laypage-first" data-page="1" title="首页">'+(a.first||1)+"</a>");var i=Math.floor((t-1)/2),r=n>1?a.curr-i:1,u=n>1?function(){var e=a.curr+(t-i-1);return e>a.pages?a.pages:e}():t;for(u-r<t-1&&(r=u-t+1),a.first!==!1&&r>2&&e.push('<span class="layui-laypage-spr">…</span>');r<=u;r++)r===a.curr?e.push('<span class="layui-laypage-curr"><em class="layui-laypage-em" '+(/^#/.test(a.theme)?'style="background-color:'+a.theme+';"':"")+"></em><em>"+r+"</em></span>"):e.push('<a href="javascript:;" data-page="'+r+'">'+r+"</a>");return a.pages>t&&a.pages>u&&a.last!==!1&&(u+1<a.pages&&e.push('<span class="layui-laypage-spr">…</span>'),0!==t&&e.push('<a href="javascript:;" class="layui-laypage-last" title="尾页" data-page="'+a.pages+'">'+(a.last||a.pages)+"</a>")),e.join("")}(),next:function(){return a.next?'<a href="javascript:;" class="layui-laypage-next'+(a.curr==a.pages?" "+r:"")+'" data-page="'+(a.curr+1)+'">'+a.next+"</a>":""}(),count:'<span class="layui-laypage-count">共 '+a.count+" 条</span>",limit:function(){var e=['<span class="layui-laypage-limits"><select lay-ignore>'];return layui.each(a.limits,function(t,n){e.push('<option value="'+n+'"'+(n===a.limit?"selected":"")+">"+n+" 条/页</option>")}),e.join("")+"</select></span>"}(),refresh:['<a href="javascript:;" data-page="'+a.curr+'" class="layui-laypage-refresh">','<i class="layui-icon layui-icon-refresh"></i>',"</a>"].join(""),skip:function(){return['<span class="layui-laypage-skip">到第','<input type="text" min="1" value="'+a.curr+'" class="layui-input">','页<button type="button" class="layui-laypage-btn">确定</button>',"</span>"].join("")}()};return['<div class="layui-box layui-laypage layui-laypage-'+(a.theme?/^#/.test(a.theme)?"molv":a.theme:"default")+'" id="layui-laypage-'+a.index+'">',function(){var e=[];return layui.each(a.layout,function(a,t){i[t]&&e.push(i[t])}),e.join("")}(),"</div>"].join("")},u.prototype.jump=function(e,a){if(e){var t=this,i=t.config,r=e.children,u=e[n]("button")[0],l=e[n]("input")[0],p=e[n]("select")[0],c=function(){var e=0|l.value.replace(/\s|\D/g,"");e&&(i.curr=e,t.render())};if(a)return c();for(var o=0,y=r.length;o<y;o++)"a"===r[o].nodeName.toLowerCase()&&s.on(r[o],"click",function(){var e=0|this.getAttribute("data-page");e<1||e>i.pages||(i.curr=e,t.render())});p&&s.on(p,"change",function(){var e=this.value;i.curr*e>i.count&&(i.curr=Math.ceil(i.count/e)),i.limit=e,t.render()}),u&&s.on(u,"click",function(){c()})}},u.prototype.skip=function(e){if(e){var a=this,t=e[n]("input")[0];t&&s.on(t,"keyup",function(t){var n=this.value,i=t.keyCode;/^(37|38|39|40)$/.test(i)||(/\D/.test(n)&&(this.value=n.replace(/\D/,"")),13===i&&a.jump(e,!0))})}},u.prototype.render=function(e){var n=this,i=n.config,r=n.type(),u=n.view();2===r?i.elem&&(i.elem.innerHTML=u):3===r?i.elem.html(u):a[t](i.elem)&&(a[t](i.elem).innerHTML=u),i.jump&&i.jump(i,e);var s=a[t]("layui-laypage-"+i.index);n.jump(s),i.hash&&!e&&(location.hash="!"+i.hash+"="+i.curr),n.skip(s)};var s={render:function(e){var a=new u(e);return a.index},index:layui.laypage?layui.laypage.index+1e4:0,on:function(e,a,t){return e.attachEvent?e.attachEvent("on"+a,function(a){a.target=a.srcElement,t.call(e,a)}):e.addEventListener(a,t,!1),this}};e(i,s)});!function(){"use strict";var e=window.layui&&layui.define,t={getPath:function(){var e=document.currentScript?document.currentScript.src:function(){for(var e,t=document.scripts,n=t.length-1,a=n;a>0;a--)if("interactive"===t[a].readyState){e=t[a].src;break}return e||t[n].src}();return e.substring(0,e.lastIndexOf("/")+1)}(),getStyle:function(e,t){var n=e.currentStyle?e.currentStyle:window.getComputedStyle(e,null);return n[n.getPropertyValue?"getPropertyValue":"getAttribute"](t)},link:function(e,a,i){if(n.path){var r=document.getElementsByTagName("head")[0],o=document.createElement("link");"string"==typeof a&&(i=a);var s=(i||e).replace(/\.|\//g,""),l="layuicss-"+s,d=0;o.rel="stylesheet",o.href=n.path+e,o.id=l,document.getElementById(l)||r.appendChild(o),"function"==typeof a&&!function c(){return++d>80?window.console&&console.error("laydate.css: Invalid"):void(1989===parseInt(t.getStyle(document.getElementById(l),"width"))?a():setTimeout(c,100))}()}}},n={v:"5.0.9",config:{},index:window.laydate&&window.laydate.v?1e5:0,path:t.getPath,set:function(e){var t=this;return t.config=w.extend({},t.config,e),t},ready:function(a){var i="laydate",r="",o=(e?"modules/laydate/":"theme/")+"default/laydate.css?v="+n.v+r;return e?layui.addcss(o,a,i):t.link(o,a,i),this}},a=function(){var e=this;return{hint:function(t){e.hint.call(e,t)},config:e.config}},i="laydate",r=".layui-laydate",o="layui-this",s="laydate-disabled",l="开始日期超出了结束日期<br>建议重新选择",d=[100,2e5],c="layui-laydate-static",m="layui-laydate-list",u="laydate-selected",h="layui-laydate-hint",y="laydate-day-prev",f="laydate-day-next",p="layui-laydate-footer",g=".laydate-btns-confirm",v="laydate-time-text",D=".laydate-btns-time",T=function(e){var t=this;t.index=++n.index,t.config=w.extend({},t.config,n.config,e),n.ready(function(){t.init()})},w=function(e){return new C(e)},C=function(e){for(var t=0,n="object"==typeof e?[e]:(this.selector=e,document.querySelectorAll(e||null));t<n.length;t++)this.push(n[t])};C.prototype=[],C.prototype.constructor=C,w.extend=function(){var e=1,t=arguments,n=function(e,t){e=e||(t.constructor===Array?[]:{});for(var a in t)e[a]=t[a]&&t[a].constructor===Object?n(e[a],t[a]):t[a];return e};for(t[0]="object"==typeof t[0]?t[0]:{};e<t.length;e++)"object"==typeof t[e]&&n(t[0],t[e]);return t[0]},w.ie=function(){var e=navigator.userAgent.toLowerCase();return!!(window.ActiveXObject||"ActiveXObject"in window)&&((e.match(/msie\s(\d+)/)||[])[1]||"11")}(),w.stope=function(e){e=e||window.event,e.stopPropagation?e.stopPropagation():e.cancelBubble=!0},w.each=function(e,t){var n,a=this;if("function"!=typeof t)return a;if(e=e||[],e.constructor===Object){for(n in e)if(t.call(e[n],n,e[n]))break}else for(n=0;n<e.length&&!t.call(e[n],n,e[n]);n++);return a},w.digit=function(e,t,n){var a="";e=String(e),t=t||2;for(var i=e.length;i<t;i++)a+="0";return e<Math.pow(10,t)?a+(0|e):e},w.elem=function(e,t){var n=document.createElement(e);return w.each(t||{},function(e,t){n.setAttribute(e,t)}),n},C.addStr=function(e,t){return e=e.replace(/\s+/," "),t=t.replace(/\s+/," ").split(" "),w.each(t,function(t,n){new RegExp("\\b"+n+"\\b").test(e)||(e=e+" "+n)}),e.replace(/^\s|\s$/,"")},C.removeStr=function(e,t){return e=e.replace(/\s+/," "),t=t.replace(/\s+/," ").split(" "),w.each(t,function(t,n){var a=new RegExp("\\b"+n+"\\b");a.test(e)&&(e=e.replace(a,""))}),e.replace(/\s+/," ").replace(/^\s|\s$/,"")},C.prototype.find=function(e){var t=this,n=0,a=[],i="object"==typeof e;return this.each(function(r,o){for(var s=i?[e]:o.querySelectorAll(e||null);n<s.length;n++)a.push(s[n]);t.shift()}),i||(t.selector=(t.selector?t.selector+" ":"")+e),w.each(a,function(e,n){t.push(n)}),t},C.prototype.each=function(e){return w.each.call(this,this,e)},C.prototype.addClass=function(e,t){return this.each(function(n,a){a.className=C[t?"removeStr":"addStr"](a.className,e)})},C.prototype.removeClass=function(e){return this.addClass(e,!0)},C.prototype.hasClass=function(e){var t=!1;return this.each(function(n,a){new RegExp("\\b"+e+"\\b").test(a.className)&&(t=!0)}),t},C.prototype.attr=function(e,t){var n=this;return void 0===t?function(){if(n.length>0)return n[0].getAttribute(e)}():n.each(function(n,a){a.setAttribute(e,t)})},C.prototype.removeAttr=function(e){return this.each(function(t,n){n.removeAttribute(e)})},C.prototype.html=function(e){return this.each(function(t,n){n.innerHTML=e})},C.prototype.val=function(e){return this.each(function(t,n){n.value=e})},C.prototype.append=function(e){return this.each(function(t,n){"object"==typeof e?n.appendChild(e):n.innerHTML=n.innerHTML+e})},C.prototype.remove=function(e){return this.each(function(t,n){e?n.removeChild(e):n.parentNode.removeChild(n)})},C.prototype.on=function(e,t){return this.each(function(n,a){a.attachEvent?a.attachEvent("on"+e,function(e){e.target=e.srcElement,t.call(a,e)}):a.addEventListener(e,t,!1)})},C.prototype.off=function(e,t){return this.each(function(n,a){a.detachEvent?a.detachEvent("on"+e,t):a.removeEventListener(e,t,!1)})},T.isLeapYear=function(e){return e%4===0&&e%100!==0||e%400===0},T.prototype.config={type:"date",range:!1,format:"yyyy-MM-dd",value:null,isInitValue:!0,min:"1900-1-1",max:"2099-12-31",trigger:"focus",show:!1,showBottom:!0,btns:["clear","now","confirm"],lang:"cn",theme:"default",position:null,calendar:!1,mark:{},zIndex:null,done:null,change:null},T.prototype.lang=function(){var e=this,t=e.config,n={cn:{weeks:["日","一","二","三","四","五","六"],time:["时","分","秒"],timeTips:"选择时间",startTime:"开始时间",endTime:"结束时间",dateTips:"返回日期",month:["一","二","三","四","五","六","七","八","九","十","十一","十二"],tools:{confirm:"确定",clear:"清空",now:"现在"}},en:{weeks:["Su","Mo","Tu","We","Th","Fr","Sa"],time:["Hours","Minutes","Seconds"],timeTips:"Select Time",startTime:"Start Time",endTime:"End Time",dateTips:"Select Date",month:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],tools:{confirm:"Confirm",clear:"Clear",now:"Now"}}};return n[t.lang]||n.cn},T.prototype.init=function(){var e=this,t=e.config,n="yyyy|y|MM|M|dd|d|HH|H|mm|m|ss|s",a="static"===t.position,i={year:"yyyy",month:"yyyy-MM",date:"yyyy-MM-dd",time:"HH:mm:ss",datetime:"yyyy-MM-dd HH:mm:ss"};t.elem=w(t.elem),t.eventElem=w(t.eventElem),t.elem[0]&&(t.range===!0&&(t.range="-"),t.format===i.date&&(t.format=i[t.type]),e.format=t.format.match(new RegExp(n+"|.","g"))||[],e.EXP_IF="",e.EXP_SPLIT="",w.each(e.format,function(t,a){var i=new RegExp(n).test(a)?"\\d{"+function(){return new RegExp(n).test(e.format[0===t?t+1:t-1]||"")?/^yyyy|y$/.test(a)?4:a.length:/^yyyy$/.test(a)?"1,4":/^y$/.test(a)?"1,308":"1,2"}()+"}":"\\"+a;e.EXP_IF=e.EXP_IF+i,e.EXP_SPLIT=e.EXP_SPLIT+"("+i+")"}),e.EXP_IF=new RegExp("^"+(t.range?e.EXP_IF+"\\s\\"+t.range+"\\s"+e.EXP_IF:e.EXP_IF)+"$"),e.EXP_SPLIT=new RegExp("^"+e.EXP_SPLIT+"$",""),e.isInput(t.elem[0])||"focus"===t.trigger&&(t.trigger="click"),t.elem.attr("lay-key")||(t.elem.attr("lay-key",e.index),t.eventElem.attr("lay-key",e.index)),t.mark=w.extend({},t.calendar&&"cn"===t.lang?{"0-1-1":"元旦","0-2-14":"情人","0-3-8":"妇女","0-3-12":"植树","0-4-1":"愚人","0-5-1":"劳动","0-5-4":"青年","0-6-1":"儿童","0-9-10":"教师","0-9-18":"国耻","0-10-1":"国庆","0-12-25":"圣诞"}:{},t.mark),w.each(["min","max"],function(e,n){var a=[],i=[];if("number"==typeof t[n]){var r=t[n],o=(new Date).getTime(),s=864e5,l=new Date(r?r<s?o+r*s:r:o);a=[l.getFullYear(),l.getMonth()+1,l.getDate()],r<s||(i=[l.getHours(),l.getMinutes(),l.getSeconds()])}else a=(t[n].match(/\d+-\d+-\d+/)||[""])[0].split("-"),i=(t[n].match(/\d+:\d+:\d+/)||[""])[0].split(":");t[n]={year:0|a[0]||(new Date).getFullYear(),month:a[1]?(0|a[1])-1:(new Date).getMonth(),date:0|a[2]||(new Date).getDate(),hours:0|i[0],minutes:0|i[1],seconds:0|i[2]}}),e.elemID="layui-laydate"+t.elem.attr("lay-key"),(t.show||a)&&e.render(),a||e.events(),t.value&&t.isInitValue&&(t.value.constructor===Date?e.setValue(e.parse(0,e.systemDate(t.value))):e.setValue(t.value)))},T.prototype.render=function(){var e=this,t=e.config,n=e.lang(),a="static"===t.position,i=e.elem=w.elem("div",{id:e.elemID,"class":["layui-laydate",t.range?" layui-laydate-range":"",a?" "+c:"",t.theme&&"default"!==t.theme&&!/^#/.test(t.theme)?" laydate-theme-"+t.theme:""].join("")}),r=e.elemMain=[],o=e.elemHeader=[],s=e.elemCont=[],l=e.table=[],d=e.footer=w.elem("div",{"class":p});if(t.zIndex&&(i.style.zIndex=t.zIndex),w.each(new Array(2),function(e){if(!t.range&&e>0)return!0;var a=w.elem("div",{"class":"layui-laydate-header"}),i=[function(){var e=w.elem("i",{"class":"layui-icon laydate-icon laydate-prev-y"});return e.innerHTML="",e}(),function(){var e=w.elem("i",{"class":"layui-icon laydate-icon laydate-prev-m"});return e.innerHTML="",e}(),function(){var e=w.elem("div",{"class":"laydate-set-ym"}),t=w.elem("span"),n=w.elem("span");return e.appendChild(t),e.appendChild(n),e}(),function(){var e=w.elem("i",{"class":"layui-icon laydate-icon laydate-next-m"});return e.innerHTML="",e}(),function(){var e=w.elem("i",{"class":"layui-icon laydate-icon laydate-next-y"});return e.innerHTML="",e}()],d=w.elem("div",{"class":"layui-laydate-content"}),c=w.elem("table"),m=w.elem("thead"),u=w.elem("tr");w.each(i,function(e,t){a.appendChild(t)}),m.appendChild(u),w.each(new Array(6),function(e){var t=c.insertRow(0);w.each(new Array(7),function(a){if(0===e){var i=w.elem("th");i.innerHTML=n.weeks[a],u.appendChild(i)}t.insertCell(a)})}),c.insertBefore(m,c.children[0]),d.appendChild(c),r[e]=w.elem("div",{"class":"layui-laydate-main laydate-main-list-"+e}),r[e].appendChild(a),r[e].appendChild(d),o.push(i),s.push(d),l.push(c)}),w(d).html(function(){var e=[],i=[];return"datetime"===t.type&&e.push('<span lay-type="datetime" class="laydate-btns-time">'+n.timeTips+"</span>"),w.each(t.btns,function(e,r){var o=n.tools[r]||"btn";t.range&&"now"===r||(a&&"clear"===r&&(o="cn"===t.lang?"重置":"Reset"),i.push('<span lay-type="'+r+'" class="laydate-btns-'+r+'">'+o+"</span>"))}),e.push('<div class="laydate-footer-btns">'+i.join("")+"</div>"),e.join("")}()),w.each(r,function(e,t){i.appendChild(t)}),t.showBottom&&i.appendChild(d),/^#/.test(t.theme)){var m=w.elem("style"),u=["#{{id}} .layui-laydate-header{background-color:{{theme}};}","#{{id}} .layui-this{background-color:{{theme}} !important;}"].join("").replace(/{{id}}/g,e.elemID).replace(/{{theme}}/g,t.theme);"styleSheet"in m?(m.setAttribute("type","text/css"),m.styleSheet.cssText=u):m.innerHTML=u,w(i).addClass("laydate-theme-molv"),i.appendChild(m)}e.remove(T.thisElemDate),a?t.elem.append(i):(document.body.appendChild(i),e.position()),e.checkDate().calendar(),e.changeEvent(),T.thisElemDate=e.elemID,"function"==typeof t.ready&&t.ready(w.extend({},t.dateTime,{month:t.dateTime.month+1}))},T.prototype.remove=function(e){var t=this,n=(t.config,w("#"+(e||t.elemID)));return n.hasClass(c)||t.checkDate(function(){n.remove()}),t},T.prototype.position=function(){var e=this,t=e.config,n=e.bindElem||t.elem[0],a=n.getBoundingClientRect(),i=e.elem.offsetWidth,r=e.elem.offsetHeight,o=function(e){return e=e?"scrollLeft":"scrollTop",document.body[e]|document.documentElement[e]},s=function(e){return document.documentElement[e?"clientWidth":"clientHeight"]},l=5,d=a.left,c=a.bottom;d+i+l>s("width")&&(d=s("width")-i-l),c+r+l>s()&&(c=a.top>r?a.top-r:s()-r,c-=2*l),t.position&&(e.elem.style.position=t.position),e.elem.style.left=d+("fixed"===t.position?0:o(1))+"px",e.elem.style.top=c+("fixed"===t.position?0:o())+"px"},T.prototype.hint=function(e){var t=this,n=(t.config,w.elem("div",{"class":h}));t.elem&&(n.innerHTML=e||"",w(t.elem).find("."+h).remove(),t.elem.appendChild(n),clearTimeout(t.hinTimer),t.hinTimer=setTimeout(function(){w(t.elem).find("."+h).remove()},3e3))},T.prototype.getAsYM=function(e,t,n){return n?t--:t++,t<0&&(t=11,e--),t>11&&(t=0,e++),[e,t]},T.prototype.systemDate=function(e){var t=e||new Date;return{year:t.getFullYear(),month:t.getMonth(),date:t.getDate(),hours:e?e.getHours():0,minutes:e?e.getMinutes():0,seconds:e?e.getSeconds():0}},T.prototype.checkDate=function(e){var t,a,i=this,r=(new Date,i.config),o=r.dateTime=r.dateTime||i.systemDate(),s=i.bindElem||r.elem[0],l=(i.isInput(s)?"val":"html",i.isInput(s)?s.value:"static"===r.position?"":s.innerHTML),c=function(e){e.year>d[1]&&(e.year=d[1],a=!0),e.month>11&&(e.month=11,a=!0),e.hours>23&&(e.hours=0,a=!0),e.minutes>59&&(e.minutes=0,e.hours++,a=!0),e.seconds>59&&(e.seconds=0,e.minutes++,a=!0),t=n.getEndDate(e.month+1,e.year),e.date>t&&(e.date=t,a=!0)},m=function(e,t,n){var o=["startTime","endTime"];t=(t.match(i.EXP_SPLIT)||[]).slice(1),n=n||0,r.range&&(i[o[n]]=i[o[n]]||{}),w.each(i.format,function(s,l){var c=parseFloat(t[s]);t[s].length<l.length&&(a=!0),/yyyy|y/.test(l)?(c<d[0]&&(c=d[0],a=!0),e.year=c):/MM|M/.test(l)?(c<1&&(c=1,a=!0),e.month=c-1):/dd|d/.test(l)?(c<1&&(c=1,a=!0),e.date=c):/HH|H/.test(l)?(c<1&&(c=0,a=!0),e.hours=c,r.range&&(i[o[n]].hours=c)):/mm|m/.test(l)?(c<1&&(c=0,a=!0),e.minutes=c,r.range&&(i[o[n]].minutes=c)):/ss|s/.test(l)&&(c<1&&(c=0,a=!0),e.seconds=c,r.range&&(i[o[n]].seconds=c))}),c(e)};return"limit"===e?(c(o),i):(l=l||r.value,"string"==typeof l&&(l=l.replace(/\s+/g," ").replace(/^\s|\s$/g,"")),i.startState&&!i.endState&&(delete i.startState,i.endState=!0),"string"==typeof l&&l?i.EXP_IF.test(l)?r.range?(l=l.split(" "+r.range+" "),i.startDate=i.startDate||i.systemDate(),i.endDate=i.endDate||i.systemDate(),r.dateTime=w.extend({},i.startDate),w.each([i.startDate,i.endDate],function(e,t){m(t,l[e],e)})):m(o,l):(i.hint("日期格式不合法<br>必须遵循下述格式:<br>"+(r.range?r.format+" "+r.range+" "+r.format:r.format)+"<br>已为你重置"),a=!0):l&&l.constructor===Date?r.dateTime=i.systemDate(l):(r.dateTime=i.systemDate(),delete i.startState,delete i.endState,delete i.startDate,delete i.endDate,delete i.startTime,delete i.endTime),c(o),a&&l&&i.setValue(r.range?i.endDate?i.parse():"":i.parse()),e&&e(),i)},T.prototype.mark=function(e,t){var n,a=this,i=a.config;return w.each(i.mark,function(e,a){var i=e.split("-");i[0]!=t[0]&&0!=i[0]||i[1]!=t[1]&&0!=i[1]||i[2]!=t[2]||(n=a||t[2])}),n&&e.html('<span class="laydate-day-mark">'+n+"</span>"),a},T.prototype.limit=function(e,t,n,a){var i,r=this,o=r.config,l={},d=o[n>41?"endDate":"dateTime"],c=w.extend({},d,t||{});return w.each({now:c,min:o.min,max:o.max},function(e,t){l[e]=r.newDate(w.extend({year:t.year,month:t.month,date:t.date},function(){var e={};return w.each(a,function(n,a){e[a]=t[a]}),e}())).getTime()}),i=l.now<l.min||l.now>l.max,e&&e[i?"addClass":"removeClass"](s),i},T.prototype.calendar=function(e){var t,a,i,r=this,s=r.config,l=e||s.dateTime,c=new Date,m=r.lang(),u="date"!==s.type&&"datetime"!==s.type,h=e?1:0,y=w(r.table[h]).find("td"),f=w(r.elemHeader[h][2]).find("span");if(l.year<d[0]&&(l.year=d[0],r.hint("最低只能支持到公元"+d[0]+"年")),l.year>d[1]&&(l.year=d[1],r.hint("最高只能支持到公元"+d[1]+"年")),r.firstDate||(r.firstDate=w.extend({},l)),c.setFullYear(l.year,l.month,1),t=c.getDay(),a=n.getEndDate(l.month||12,l.year),i=n.getEndDate(l.month+1,l.year),w.each(y,function(e,n){var d=[l.year,l.month],c=0;n=w(n),n.removeAttr("class"),e<t?(c=a-t+e,n.addClass("laydate-day-prev"),d=r.getAsYM(l.year,l.month,"sub")):e>=t&&e<i+t?(c=e-t,s.range||c+1===l.date&&n.addClass(o)):(c=e-i-t,n.addClass("laydate-day-next"),d=r.getAsYM(l.year,l.month)),d[1]++,d[2]=c+1,n.attr("lay-ymd",d.join("-")).html(d[2]),r.mark(n,d).limit(n,{year:d[0],month:d[1]-1,date:d[2]},e)}),w(f[0]).attr("lay-ym",l.year+"-"+(l.month+1)),w(f[1]).attr("lay-ym",l.year+"-"+(l.month+1)),"cn"===s.lang?(w(f[0]).attr("lay-type","year").html(l.year+"年"),w(f[1]).attr("lay-type","month").html(l.month+1+"月")):(w(f[0]).attr("lay-type","month").html(m.month[l.month]),w(f[1]).attr("lay-type","year").html(l.year)),u&&(s.range&&(e?r.endDate=r.endDate||{year:l.year+("year"===s.type?1:0),month:l.month+("month"===s.type?0:-1)}:r.startDate=r.startDate||{year:l.year,month:l.month},e&&(r.listYM=[[r.startDate.year,r.startDate.month+1],[r.endDate.year,r.endDate.month+1]],r.list(s.type,0).list(s.type,1),"time"===s.type?r.setBtnStatus("时间",w.extend({},r.systemDate(),r.startTime),w.extend({},r.systemDate(),r.endTime)):r.setBtnStatus(!0))),s.range||(r.listYM=[[l.year,l.month+1]],r.list(s.type,0))),s.range&&!e){var p=r.getAsYM(l.year,l.month);r.calendar(w.extend({},l,{year:p[0],month:p[1]}))}return s.range||r.limit(w(r.footer).find(g),null,0,["hours","minutes","seconds"]),s.range&&e&&!u&&r.stampRange(),r},T.prototype.list=function(e,t){var n=this,a=n.config,i=a.dateTime,r=n.lang(),l=a.range&&"date"!==a.type&&"datetime"!==a.type,d=w.elem("ul",{"class":m+" "+{year:"laydate-year-list",month:"laydate-month-list",time:"laydate-time-list"}[e]}),c=n.elemHeader[t],u=w(c[2]).find("span"),h=n.elemCont[t||0],y=w(h).find("."+m)[0],f="cn"===a.lang,p=f?"年":"",T=n.listYM[t]||{},C=["hours","minutes","seconds"],x=["startTime","endTime"][t];if(T[0]<1&&(T[0]=1),"year"===e){var M,b=M=T[0]-7;b<1&&(b=M=1),w.each(new Array(15),function(e){var i=w.elem("li",{"lay-ym":M}),r={year:M};M==T[0]&&w(i).addClass(o),i.innerHTML=M+p,d.appendChild(i),M<n.firstDate.year?(r.month=a.min.month,r.date=a.min.date):M>=n.firstDate.year&&(r.month=a.max.month,r.date=a.max.date),n.limit(w(i),r,t),M++}),w(u[f?0:1]).attr("lay-ym",M-8+"-"+T[1]).html(b+p+" - "+(M-1+p))}else if("month"===e)w.each(new Array(12),function(e){var i=w.elem("li",{"lay-ym":e}),s={year:T[0],month:e};e+1==T[1]&&w(i).addClass(o),i.innerHTML=r.month[e]+(f?"月":""),d.appendChild(i),T[0]<n.firstDate.year?s.date=a.min.date:T[0]>=n.firstDate.year&&(s.date=a.max.date),n.limit(w(i),s,t)}),w(u[f?0:1]).attr("lay-ym",T[0]+"-"+T[1]).html(T[0]+p);else if("time"===e){var E=function(){w(d).find("ol").each(function(e,a){w(a).find("li").each(function(a,i){n.limit(w(i),[{hours:a},{hours:n[x].hours,minutes:a},{hours:n[x].hours,minutes:n[x].minutes,seconds:a}][e],t,[["hours"],["hours","minutes"],["hours","minutes","seconds"]][e])})}),a.range||n.limit(w(n.footer).find(g),n[x],0,["hours","minutes","seconds"])};a.range?n[x]||(n[x]={hours:0,minutes:0,seconds:0}):n[x]=i,w.each([24,60,60],function(e,t){var a=w.elem("li"),i=["<p>"+r.time[e]+"</p><ol>"];w.each(new Array(t),function(t){i.push("<li"+(n[x][C[e]]===t?' class="'+o+'"':"")+">"+w.digit(t,2)+"</li>")}),a.innerHTML=i.join("")+"</ol>",d.appendChild(a)}),E()}if(y&&h.removeChild(y),h.appendChild(d),"year"===e||"month"===e)w(n.elemMain[t]).addClass("laydate-ym-show"),w(d).find("li").on("click",function(){var r=0|w(this).attr("lay-ym");if(!w(this).hasClass(s)){if(0===t)i[e]=r,l&&(n.startDate[e]=r),n.limit(w(n.footer).find(g),null,0);else if(l)n.endDate[e]=r;else{var c="year"===e?n.getAsYM(r,T[1]-1,"sub"):n.getAsYM(T[0],r,"sub");w.extend(i,{year:c[0],month:c[1]})}"year"===a.type||"month"===a.type?(w(d).find("."+o).removeClass(o),w(this).addClass(o),"month"===a.type&&"year"===e&&(n.listYM[t][0]=r,l&&(n[["startDate","endDate"][t]].year=r),n.list("month",t))):(n.checkDate("limit").calendar(),n.closeList()),n.setBtnStatus(),a.range||n.done(null,"change"),w(n.footer).find(D).removeClass(s)}});else{var S=w.elem("span",{"class":v}),k=function(){w(d).find("ol").each(function(e){var t=this,a=w(t).find("li");t.scrollTop=30*(n[x][C[e]]-2),t.scrollTop<=0&&a.each(function(e,n){if(!w(this).hasClass(s))return t.scrollTop=30*(e-2),!0})})},H=w(c[2]).find("."+v);k(),S.innerHTML=a.range?[r.startTime,r.endTime][t]:r.timeTips,w(n.elemMain[t]).addClass("laydate-time-show"),H[0]&&H.remove(),c[2].appendChild(S),w(d).find("ol").each(function(e){var t=this;w(t).find("li").on("click",function(){var r=0|this.innerHTML;w(this).hasClass(s)||(a.range?n[x][C[e]]=r:i[C[e]]=r,w(t).find("."+o).removeClass(o),w(this).addClass(o),E(),k(),(n.endDate||"time"===a.type)&&n.done(null,"change"),n.setBtnStatus())})})}return n},T.prototype.listYM=[],T.prototype.closeList=function(){var e=this;e.config;w.each(e.elemCont,function(t,n){w(this).find("."+m).remove(),w(e.elemMain[t]).removeClass("laydate-ym-show laydate-time-show")}),w(e.elem).find("."+v).remove()},T.prototype.setBtnStatus=function(e,t,n){var a,i=this,r=i.config,o=w(i.footer).find(g),d=r.range&&"date"!==r.type&&"time"!==r.type;d&&(t=t||i.startDate,n=n||i.endDate,a=i.newDate(t).getTime()>i.newDate(n).getTime(),i.limit(null,t)||i.limit(null,n)?o.addClass(s):o[a?"addClass":"removeClass"](s),e&&a&&i.hint("string"==typeof e?l.replace(/日期/g,e):l))},T.prototype.parse=function(e,t){var n=this,a=n.config,i=t||(e?w.extend({},n.endDate,n.endTime):a.range?w.extend({},n.startDate,n.startTime):a.dateTime),r=n.format.concat();return w.each(r,function(e,t){/yyyy|y/.test(t)?r[e]=w.digit(i.year,t.length):/MM|M/.test(t)?r[e]=w.digit(i.month+1,t.length):/dd|d/.test(t)?r[e]=w.digit(i.date,t.length):/HH|H/.test(t)?r[e]=w.digit(i.hours,t.length):/mm|m/.test(t)?r[e]=w.digit(i.minutes,t.length):/ss|s/.test(t)&&(r[e]=w.digit(i.seconds,t.length))}),a.range&&!e?r.join("")+" "+a.range+" "+n.parse(1):r.join("")},T.prototype.newDate=function(e){return e=e||{},new Date(e.year||1,e.month||0,e.date||1,e.hours||0,e.minutes||0,e.seconds||0)},T.prototype.setValue=function(e){var t=this,n=t.config,a=t.bindElem||n.elem[0],i=t.isInput(a)?"val":"html";return"static"===n.position||w(a)[i](e||""),this},T.prototype.stampRange=function(){var e,t,n=this,a=n.config,i=w(n.elem).find("td");if(a.range&&!n.endDate&&w(n.footer).find(g).addClass(s),n.endDate)return e=n.newDate({year:n.startDate.year,month:n.startDate.month,date:n.startDate.date}).getTime(),t=n.newDate({year:n.endDate.year,month:n.endDate.month,date:n.endDate.date}).getTime(),e>t?n.hint(l):void w.each(i,function(a,i){var r=w(i).attr("lay-ymd").split("-"),s=n.newDate({year:r[0],month:r[1]-1,date:r[2]}).getTime();w(i).removeClass(u+" "+o),s!==e&&s!==t||w(i).addClass(w(i).hasClass(y)||w(i).hasClass(f)?u:o),s>e&&s<t&&w(i).addClass(u)})},T.prototype.done=function(e,t){var n=this,a=n.config,i=w.extend({},n.startDate?w.extend(n.startDate,n.startTime):a.dateTime),r=w.extend({},w.extend(n.endDate,n.endTime));return w.each([i,r],function(e,t){"month"in t&&w.extend(t,{month:t.month+1})}),e=e||[n.parse(),i,r],"function"==typeof a[t||"done"]&&a[t||"done"].apply(a,e),n},T.prototype.choose=function(e){var t=this,n=t.config,a=n.dateTime,i=w(t.elem).find("td"),r=e.attr("lay-ymd").split("-"),l=function(e){new Date;e&&w.extend(a,r),n.range&&(t.startDate?w.extend(t.startDate,r):t.startDate=w.extend({},r,t.startTime),t.startYMD=r)};if(r={year:0|r[0],month:(0|r[1])-1,date:0|r[2]},!e.hasClass(s))if(n.range){if(w.each(["startTime","endTime"],function(e,n){t[n]=t[n]||{hours:0,minutes:0,seconds:0}}),t.endState)l(),delete t.endState,delete t.endDate,t.startState=!0,i.removeClass(o+" "+u),e.addClass(o);else if(t.startState){if(e.addClass(o),t.endDate?w.extend(t.endDate,r):t.endDate=w.extend({},r,t.endTime),t.newDate(r).getTime()<t.newDate(t.startYMD).getTime()){var d=w.extend({},t.endDate,{hours:t.startDate.hours,minutes:t.startDate.minutes,seconds:t.startDate.seconds});w.extend(t.endDate,t.startDate,{hours:t.endDate.hours,minutes:t.endDate.minutes,seconds:t.endDate.seconds}),t.startDate=d}n.showBottom||t.done(),t.stampRange(),t.endState=!0,t.done(null,"change")}else e.addClass(o),l(),t.startState=!0;w(t.footer).find(g)[t.endDate?"removeClass":"addClass"](s)}else"static"===n.position?(l(!0),t.calendar().done().done(null,"change")):"date"===n.type?(l(!0),t.setValue(t.parse()).remove().done()):"datetime"===n.type&&(l(!0),t.calendar().done(null,"change"))},T.prototype.tool=function(e,t){var n=this,a=n.config,i=a.dateTime,r="static"===a.position,o={datetime:function(){w(e).hasClass(s)||(n.list("time",0),a.range&&n.list("time",1),w(e).attr("lay-type","date").html(n.lang().dateTips))},date:function(){n.closeList(),w(e).attr("lay-type","datetime").html(n.lang().timeTips)},clear:function(){n.setValue("").remove(),r&&(w.extend(i,n.firstDate),n.calendar()),a.range&&(delete n.startState,delete n.endState,delete n.endDate,delete n.startTime,delete n.endTime),n.done(["",{},{}])},now:function(){var e=new Date;w.extend(i,n.systemDate(),{hours:e.getHours(),minutes:e.getMinutes(),seconds:e.getSeconds()}),n.setValue(n.parse()).remove(),r&&n.calendar(),n.done()},confirm:function(){if(a.range){if(!n.endDate)return n.hint("请先选择日期范围");if(w(e).hasClass(s))return n.hint("time"===a.type?l.replace(/日期/g,"时间"):l)}else if(w(e).hasClass(s))return n.hint("不在有效日期或时间范围内");n.done(),n.setValue(n.parse()).remove()}};o[t]&&o[t]()},T.prototype.change=function(e){var t=this,n=t.config,a=n.dateTime,i=n.range&&("year"===n.type||"month"===n.type),r=t.elemCont[e||0],o=t.listYM[e],s=function(s){var l=["startDate","endDate"][e],d=w(r).find(".laydate-year-list")[0],c=w(r).find(".laydate-month-list")[0];return d&&(o[0]=s?o[0]-15:o[0]+15,t.list("year",e)),c&&(s?o[0]--:o[0]++,t.list("month",e)),(d||c)&&(w.extend(a,{year:o[0]}),i&&(t[l].year=o[0]),n.range||t.done(null,"change"),t.setBtnStatus(),n.range||t.limit(w(t.footer).find(g),{year:o[0]})),d||c};return{prevYear:function(){s("sub")||(a.year--,t.checkDate("limit").calendar(),n.range||t.done(null,"change"))},prevMonth:function(){var e=t.getAsYM(a.year,a.month,"sub");w.extend(a,{year:e[0],month:e[1]}),t.checkDate("limit").calendar(),n.range||t.done(null,"change")},nextMonth:function(){var e=t.getAsYM(a.year,a.month);w.extend(a,{year:e[0],month:e[1]}),t.checkDate("limit").calendar(),n.range||t.done(null,"change")},nextYear:function(){s()||(a.year++,t.checkDate("limit").calendar(),n.range||t.done(null,"change"))}}},T.prototype.changeEvent=function(){var e=this;e.config;w(e.elem).on("click",function(e){w.stope(e)}),w.each(e.elemHeader,function(t,n){w(n[0]).on("click",function(n){e.change(t).prevYear()}),w(n[1]).on("click",function(n){e.change(t).prevMonth()}),w(n[2]).find("span").on("click",function(n){var a=w(this),i=a.attr("lay-ym"),r=a.attr("lay-type");i&&(i=i.split("-"),e.listYM[t]=[0|i[0],0|i[1]],e.list(r,t),w(e.footer).find(D).addClass(s))}),w(n[3]).on("click",function(n){e.change(t).nextMonth()}),w(n[4]).on("click",function(n){e.change(t).nextYear()})}),w.each(e.table,function(t,n){var a=w(n).find("td");a.on("click",function(){e.choose(w(this))})}),w(e.footer).find("span").on("click",function(){var t=w(this).attr("lay-type");e.tool(this,t)})},T.prototype.isInput=function(e){return/input|textarea/.test(e.tagName.toLocaleLowerCase())},T.prototype.events=function(){var e=this,t=e.config,n=function(n,a){n.on(t.trigger,function(){a&&(e.bindElem=this),e.render()})};t.elem[0]&&!t.elem[0].eventHandler&&(n(t.elem,"bind"),n(t.eventElem),w(document).on("click",function(n){n.target!==t.elem[0]&&n.target!==t.eventElem[0]&&n.target!==w(t.closeStop)[0]&&e.remove()}).on("keydown",function(t){13===t.keyCode&&w("#"+e.elemID)[0]&&e.elemID===T.thisElem&&(t.preventDefault(),w(e.footer).find(g)[0].click())}),w(window).on("resize",function(){return!(!e.elem||!w(r)[0])&&void e.position()}),t.elem[0].eventHandler=!0)},n.render=function(e){var t=new T(e);return a.call(t)},n.getEndDate=function(e,t){var n=new Date;return n.setFullYear(t||n.getFullYear(),e||n.getMonth()+1,1),new Date(n.getTime()-864e5).getDate()},window.lay=window.lay||w,e?(n.ready(),layui.define(function(e){n.path=layui.cache.dir,e(i,n)})):"function"==typeof define&&define.amd?define(function(){return n}):function(){n.ready(),window.laydate=n}()}();!function(e,t){"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(e,t){function n(e){var t=!!e&&"length"in e&&e.length,n=pe.type(e);return"function"!==n&&!pe.isWindow(e)&&("array"===n||0===t||"number"==typeof t&&t>0&&t-1 in e)}function r(e,t,n){if(pe.isFunction(t))return pe.grep(e,function(e,r){return!!t.call(e,r,e)!==n});if(t.nodeType)return pe.grep(e,function(e){return e===t!==n});if("string"==typeof t){if(Ce.test(t))return pe.filter(t,e,n);t=pe.filter(t,e)}return pe.grep(e,function(e){return pe.inArray(e,t)>-1!==n})}function i(e,t){do e=e[t];while(e&&1!==e.nodeType);return e}function o(e){var t={};return pe.each(e.match(De)||[],function(e,n){t[n]=!0}),t}function a(){re.addEventListener?(re.removeEventListener("DOMContentLoaded",s),e.removeEventListener("load",s)):(re.detachEvent("onreadystatechange",s),e.detachEvent("onload",s))}function s(){(re.addEventListener||"load"===e.event.type||"complete"===re.readyState)&&(a(),pe.ready())}function u(e,t,n){if(void 0===n&&1===e.nodeType){var r="data-"+t.replace(_e,"-$1").toLowerCase();if(n=e.getAttribute(r),"string"==typeof n){try{n="true"===n||"false"!==n&&("null"===n?null:+n+""===n?+n:qe.test(n)?pe.parseJSON(n):n)}catch(i){}pe.data(e,t,n)}else n=void 0}return n}function l(e){var t;for(t in e)if(("data"!==t||!pe.isEmptyObject(e[t]))&&"toJSON"!==t)return!1;return!0}function c(e,t,n,r){if(He(e)){var i,o,a=pe.expando,s=e.nodeType,u=s?pe.cache:e,l=s?e[a]:e[a]&&a;if(l&&u[l]&&(r||u[l].data)||void 0!==n||"string"!=typeof t)return l||(l=s?e[a]=ne.pop()||pe.guid++:a),u[l]||(u[l]=s?{}:{toJSON:pe.noop}),"object"!=typeof t&&"function"!=typeof t||(r?u[l]=pe.extend(u[l],t):u[l].data=pe.extend(u[l].data,t)),o=u[l],r||(o.data||(o.data={}),o=o.data),void 0!==n&&(o[pe.camelCase(t)]=n),"string"==typeof t?(i=o[t],null==i&&(i=o[pe.camelCase(t)])):i=o,i}}function f(e,t,n){if(He(e)){var r,i,o=e.nodeType,a=o?pe.cache:e,s=o?e[pe.expando]:pe.expando;if(a[s]){if(t&&(r=n?a[s]:a[s].data)){pe.isArray(t)?t=t.concat(pe.map(t,pe.camelCase)):t in r?t=[t]:(t=pe.camelCase(t),t=t in r?[t]:t.split(" ")),i=t.length;for(;i--;)delete r[t[i]];if(n?!l(r):!pe.isEmptyObject(r))return}(n||(delete a[s].data,l(a[s])))&&(o?pe.cleanData([e],!0):fe.deleteExpando||a!=a.window?delete a[s]:a[s]=void 0)}}}function d(e,t,n,r){var i,o=1,a=20,s=r?function(){return r.cur()}:function(){return pe.css(e,t,"")},u=s(),l=n&&n[3]||(pe.cssNumber[t]?"":"px"),c=(pe.cssNumber[t]||"px"!==l&&+u)&&Me.exec(pe.css(e,t));if(c&&c[3]!==l){l=l||c[3],n=n||[],c=+u||1;do o=o||".5",c/=o,pe.style(e,t,c+l);while(o!==(o=s()/u)&&1!==o&&--a)}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}function p(e){var t=ze.split("|"),n=e.createDocumentFragment();if(n.createElement)for(;t.length;)n.createElement(t.pop());return n}function h(e,t){var n,r,i=0,o="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):void 0;if(!o)for(o=[],n=e.childNodes||e;null!=(r=n[i]);i++)!t||pe.nodeName(r,t)?o.push(r):pe.merge(o,h(r,t));return void 0===t||t&&pe.nodeName(e,t)?pe.merge([e],o):o}function g(e,t){for(var n,r=0;null!=(n=e[r]);r++)pe._data(n,"globalEval",!t||pe._data(t[r],"globalEval"))}function m(e){Be.test(e.type)&&(e.defaultChecked=e.checked)}function y(e,t,n,r,i){for(var o,a,s,u,l,c,f,d=e.length,y=p(t),v=[],x=0;x<d;x++)if(a=e[x],a||0===a)if("object"===pe.type(a))pe.merge(v,a.nodeType?[a]:a);else if(Ue.test(a)){for(u=u||y.appendChild(t.createElement("div")),l=(We.exec(a)||["",""])[1].toLowerCase(),f=Xe[l]||Xe._default,u.innerHTML=f[1]+pe.htmlPrefilter(a)+f[2],o=f[0];o--;)u=u.lastChild;if(!fe.leadingWhitespace&&$e.test(a)&&v.push(t.createTextNode($e.exec(a)[0])),!fe.tbody)for(a="table"!==l||Ve.test(a)?"<table>"!==f[1]||Ve.test(a)?0:u:u.firstChild,o=a&&a.childNodes.length;o--;)pe.nodeName(c=a.childNodes[o],"tbody")&&!c.childNodes.length&&a.removeChild(c);for(pe.merge(v,u.childNodes),u.textContent="";u.firstChild;)u.removeChild(u.firstChild);u=y.lastChild}else v.push(t.createTextNode(a));for(u&&y.removeChild(u),fe.appendChecked||pe.grep(h(v,"input"),m),x=0;a=v[x++];)if(r&&pe.inArray(a,r)>-1)i&&i.push(a);else if(s=pe.contains(a.ownerDocument,a),u=h(y.appendChild(a),"script"),s&&g(u),n)for(o=0;a=u[o++];)Ie.test(a.type||"")&&n.push(a);return u=null,y}function v(){return!0}function x(){return!1}function b(){try{return re.activeElement}catch(e){}}function w(e,t,n,r,i,o){var a,s;if("object"==typeof t){"string"!=typeof n&&(r=r||n,n=void 0);for(s in t)w(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),i===!1)i=x;else if(!i)return e;return 1===o&&(a=i,i=function(e){return pe().off(e),a.apply(this,arguments)},i.guid=a.guid||(a.guid=pe.guid++)),e.each(function(){pe.event.add(this,t,i,r,n)})}function T(e,t){return pe.nodeName(e,"table")&&pe.nodeName(11!==t.nodeType?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody")):e}function C(e){return e.type=(null!==pe.find.attr(e,"type"))+"/"+e.type,e}function E(e){var t=it.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function N(e,t){if(1===t.nodeType&&pe.hasData(e)){var n,r,i,o=pe._data(e),a=pe._data(t,o),s=o.events;if(s){delete a.handle,a.events={};for(n in s)for(r=0,i=s[n].length;r<i;r++)pe.event.add(t,n,s[n][r])}a.data&&(a.data=pe.extend({},a.data))}}function k(e,t){var n,r,i;if(1===t.nodeType){if(n=t.nodeName.toLowerCase(),!fe.noCloneEvent&&t[pe.expando]){i=pe._data(t);for(r in i.events)pe.removeEvent(t,r,i.handle);t.removeAttribute(pe.expando)}"script"===n&&t.text!==e.text?(C(t).text=e.text,E(t)):"object"===n?(t.parentNode&&(t.outerHTML=e.outerHTML),fe.html5Clone&&e.innerHTML&&!pe.trim(t.innerHTML)&&(t.innerHTML=e.innerHTML)):"input"===n&&Be.test(e.type)?(t.defaultChecked=t.checked=e.checked,t.value!==e.value&&(t.value=e.value)):"option"===n?t.defaultSelected=t.selected=e.defaultSelected:"input"!==n&&"textarea"!==n||(t.defaultValue=e.defaultValue)}}function S(e,t,n,r){t=oe.apply([],t);var i,o,a,s,u,l,c=0,f=e.length,d=f-1,p=t[0],g=pe.isFunction(p);if(g||f>1&&"string"==typeof p&&!fe.checkClone&&rt.test(p))return e.each(function(i){var o=e.eq(i);g&&(t[0]=p.call(this,i,o.html())),S(o,t,n,r)});if(f&&(l=y(t,e[0].ownerDocument,!1,e,r),i=l.firstChild,1===l.childNodes.length&&(l=i),i||r)){for(s=pe.map(h(l,"script"),C),a=s.length;c<f;c++)o=l,c!==d&&(o=pe.clone(o,!0,!0),a&&pe.merge(s,h(o,"script"))),n.call(e[c],o,c);if(a)for(u=s[s.length-1].ownerDocument,pe.map(s,E),c=0;c<a;c++)o=s[c],Ie.test(o.type||"")&&!pe._data(o,"globalEval")&&pe.contains(u,o)&&(o.src?pe._evalUrl&&pe._evalUrl(o.src):pe.globalEval((o.text||o.textContent||o.innerHTML||"").replace(ot,"")));l=i=null}return e}function A(e,t,n){for(var r,i=t?pe.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||pe.cleanData(h(r)),r.parentNode&&(n&&pe.contains(r.ownerDocument,r)&&g(h(r,"script")),r.parentNode.removeChild(r));return e}function D(e,t){var n=pe(t.createElement(e)).appendTo(t.body),r=pe.css(n[0],"display");return n.detach(),r}function j(e){var t=re,n=lt[e];return n||(n=D(e,t),"none"!==n&&n||(ut=(ut||pe("<iframe frameborder='0' width='0' height='0'/>")).appendTo(t.documentElement),t=(ut[0].contentWindow||ut[0].contentDocument).document,t.write(),t.close(),n=D(e,t),ut.detach()),lt[e]=n),n}function L(e,t){return{get:function(){return e()?void delete this.get:(this.get=t).apply(this,arguments)}}}function H(e){if(e in Et)return e;for(var t=e.charAt(0).toUpperCase()+e.slice(1),n=Ct.length;n--;)if(e=Ct[n]+t,e in Et)return e}function q(e,t){for(var n,r,i,o=[],a=0,s=e.length;a<s;a++)r=e[a],r.style&&(o[a]=pe._data(r,"olddisplay"),n=r.style.display,t?(o[a]||"none"!==n||(r.style.display=""),""===r.style.display&&Re(r)&&(o[a]=pe._data(r,"olddisplay",j(r.nodeName)))):(i=Re(r),(n&&"none"!==n||!i)&&pe._data(r,"olddisplay",i?n:pe.css(r,"display"))));for(a=0;a<s;a++)r=e[a],r.style&&(t&&"none"!==r.style.display&&""!==r.style.display||(r.style.display=t?o[a]||"":"none"));return e}function _(e,t,n){var r=bt.exec(t);return r?Math.max(0,r[1]-(n||0))+(r[2]||"px"):t}function F(e,t,n,r,i){for(var o=n===(r?"border":"content")?4:"width"===t?1:0,a=0;o<4;o+=2)"margin"===n&&(a+=pe.css(e,n+Oe[o],!0,i)),r?("content"===n&&(a-=pe.css(e,"padding"+Oe[o],!0,i)),"margin"!==n&&(a-=pe.css(e,"border"+Oe[o]+"Width",!0,i))):(a+=pe.css(e,"padding"+Oe[o],!0,i),"padding"!==n&&(a+=pe.css(e,"border"+Oe[o]+"Width",!0,i)));return a}function M(t,n,r){var i=!0,o="width"===n?t.offsetWidth:t.offsetHeight,a=ht(t),s=fe.boxSizing&&"border-box"===pe.css(t,"boxSizing",!1,a);if(re.msFullscreenElement&&e.top!==e&&t.getClientRects().length&&(o=Math.round(100*t.getBoundingClientRect()[n])),o<=0||null==o){if(o=gt(t,n,a),(o<0||null==o)&&(o=t.style[n]),ft.test(o))return o;i=s&&(fe.boxSizingReliable()||o===t.style[n]),o=parseFloat(o)||0}return o+F(t,n,r||(s?"border":"content"),i,a)+"px"}function O(e,t,n,r,i){return new O.prototype.init(e,t,n,r,i)}function R(){return e.setTimeout(function(){Nt=void 0}),Nt=pe.now()}function P(e,t){var n,r={height:e},i=0;for(t=t?1:0;i<4;i+=2-t)n=Oe[i],r["margin"+n]=r["padding"+n]=e;return t&&(r.opacity=r.width=e),r}function B(e,t,n){for(var r,i=($.tweeners[t]||[]).concat($.tweeners["*"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function W(e,t,n){var r,i,o,a,s,u,l,c,f=this,d={},p=e.style,h=e.nodeType&&Re(e),g=pe._data(e,"fxshow");n.queue||(s=pe._queueHooks(e,"fx"),null==s.unqueued&&(s.unqueued=0,u=s.empty.fire,s.empty.fire=function(){s.unqueued||u()}),s.unqueued++,f.always(function(){f.always(function(){s.unqueued--,pe.queue(e,"fx").length||s.empty.fire()})})),1===e.nodeType&&("height"in t||"width"in t)&&(n.overflow=[p.overflow,p.overflowX,p.overflowY],l=pe.css(e,"display"),c="none"===l?pe._data(e,"olddisplay")||j(e.nodeName):l,"inline"===c&&"none"===pe.css(e,"float")&&(fe.inlineBlockNeedsLayout&&"inline"!==j(e.nodeName)?p.zoom=1:p.display="inline-block")),n.overflow&&(p.overflow="hidden",fe.shrinkWrapBlocks()||f.always(function(){p.overflow=n.overflow[0],p.overflowX=n.overflow[1],p.overflowY=n.overflow[2]}));for(r in t)if(i=t[r],St.exec(i)){if(delete t[r],o=o||"toggle"===i,i===(h?"hide":"show")){if("show"!==i||!g||void 0===g[r])continue;h=!0}d[r]=g&&g[r]||pe.style(e,r)}else l=void 0;if(pe.isEmptyObject(d))"inline"===("none"===l?j(e.nodeName):l)&&(p.display=l);else{g?"hidden"in g&&(h=g.hidden):g=pe._data(e,"fxshow",{}),o&&(g.hidden=!h),h?pe(e).show():f.done(function(){pe(e).hide()}),f.done(function(){var t;pe._removeData(e,"fxshow");for(t in d)pe.style(e,t,d[t])});for(r in d)a=B(h?g[r]:0,r,f),r in g||(g[r]=a.start,h&&(a.end=a.start,a.start="width"===r||"height"===r?1:0))}}function I(e,t){var n,r,i,o,a;for(n in e)if(r=pe.camelCase(n),i=t[r],o=e[n],pe.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),a=pe.cssHooks[r],a&&"expand"in a){o=a.expand(o),delete e[r];for(n in o)n in e||(e[n]=o[n],t[n]=i)}else t[r]=i}function $(e,t,n){var r,i,o=0,a=$.prefilters.length,s=pe.Deferred().always(function(){delete u.elem}),u=function(){if(i)return!1;for(var t=Nt||R(),n=Math.max(0,l.startTime+l.duration-t),r=n/l.duration||0,o=1-r,a=0,u=l.tweens.length;a<u;a++)l.tweens[a].run(o);return s.notifyWith(e,[l,o,n]),o<1&&u?n:(s.resolveWith(e,[l]),!1)},l=s.promise({elem:e,props:pe.extend({},t),opts:pe.extend(!0,{specialEasing:{},easing:pe.easing._default},n),originalProperties:t,originalOptions:n,startTime:Nt||R(),duration:n.duration,tweens:[],createTween:function(t,n){var r=pe.Tween(e,l.opts,t,n,l.opts.specialEasing[t]||l.opts.easing);return l.tweens.push(r),r},stop:function(t){var n=0,r=t?l.tweens.length:0;if(i)return this;for(i=!0;n<r;n++)l.tweens[n].run(1);return t?(s.notifyWith(e,[l,1,0]),s.resolveWith(e,[l,t])):s.rejectWith(e,[l,t]),this}}),c=l.props;for(I(c,l.opts.specialEasing);o<a;o++)if(r=$.prefilters[o].call(l,e,c,l.opts))return pe.isFunction(r.stop)&&(pe._queueHooks(l.elem,l.opts.queue).stop=pe.proxy(r.stop,r)),r;return pe.map(c,B,l),pe.isFunction(l.opts.start)&&l.opts.start.call(e,l),pe.fx.timer(pe.extend(u,{elem:e,anim:l,queue:l.opts.queue})),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always)}function z(e){return pe.attr(e,"class")||""}function X(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(De)||[];if(pe.isFunction(n))for(;r=o[i++];)"+"===r.charAt(0)?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function U(e,t,n,r){function i(s){var u;return o[s]=!0,pe.each(e[s]||[],function(e,s){var l=s(t,n,r);return"string"!=typeof l||a||o[l]?a?!(u=l):void 0:(t.dataTypes.unshift(l),i(l),!1)}),u}var o={},a=e===Qt;return i(t.dataTypes[0])||!o["*"]&&i("*")}function V(e,t){var n,r,i=pe.ajaxSettings.flatOptions||{};for(r in t)void 0!==t[r]&&((i[r]?e:n||(n={}))[r]=t[r]);return n&&pe.extend(!0,e,n),e}function Y(e,t,n){for(var r,i,o,a,s=e.contents,u=e.dataTypes;"*"===u[0];)u.shift(),void 0===i&&(i=e.mimeType||t.getResponseHeader("Content-Type"));if(i)for(a in s)if(s[a]&&s[a].test(i)){u.unshift(a);break}if(u[0]in n)o=u[0];else{for(a in n){if(!u[0]||e.converters[a+" "+u[0]]){o=a;break}r||(r=a)}o=o||r}if(o)return o!==u[0]&&u.unshift(o),n[o]}function J(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];for(o=c.shift();o;)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(a=l[u+" "+o]||l["* "+o],!a)for(i in l)if(s=i.split(" "),s[1]===o&&(a=l[u+" "+s[0]]||l["* "+s[0]])){a===!0?a=l[i]:l[i]!==!0&&(o=s[0],c.unshift(s[1]));break}if(a!==!0)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(f){return{state:"parsererror",error:a?f:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}function G(e){return e.style&&e.style.display||pe.css(e,"display")}function K(e){for(;e&&1===e.nodeType;){if("none"===G(e)||"hidden"===e.type)return!0;e=e.parentNode}return!1}function Q(e,t,n,r){var i;if(pe.isArray(t))pe.each(t,function(t,i){n||rn.test(e)?r(e,i):Q(e+"["+("object"==typeof i&&null!=i?t:"")+"]",i,n,r)});else if(n||"object"!==pe.type(t))r(e,t);else for(i in t)Q(e+"["+i+"]",t[i],n,r)}function Z(){try{return new e.XMLHttpRequest}catch(t){}}function ee(){try{return new e.ActiveXObject("Microsoft.XMLHTTP")}catch(t){}}function te(e){return pe.isWindow(e)?e:9===e.nodeType&&(e.defaultView||e.parentWindow)}var ne=[],re=e.document,ie=ne.slice,oe=ne.concat,ae=ne.push,se=ne.indexOf,ue={},le=ue.toString,ce=ue.hasOwnProperty,fe={},de="1.12.3",pe=function(e,t){return new pe.fn.init(e,t)},he=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,ge=/^-ms-/,me=/-([\da-z])/gi,ye=function(e,t){return t.toUpperCase()};pe.fn=pe.prototype={jquery:de,constructor:pe,selector:"",length:0,toArray:function(){return ie.call(this)},get:function(e){return null!=e?e<0?this[e+this.length]:this[e]:ie.call(this)},pushStack:function(e){var t=pe.merge(this.constructor(),e);return t.prevObject=this,t.context=this.context,t},each:function(e){return pe.each(this,e)},map:function(e){return this.pushStack(pe.map(this,function(t,n){return e.call(t,n,t)}))},slice:function(){return this.pushStack(ie.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(n>=0&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:ae,sort:ne.sort,splice:ne.splice},pe.extend=pe.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||pe.isFunction(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(i=arguments[s]))for(r in i)e=a[r],n=i[r],a!==n&&(l&&n&&(pe.isPlainObject(n)||(t=pe.isArray(n)))?(t?(t=!1,o=e&&pe.isArray(e)?e:[]):o=e&&pe.isPlainObject(e)?e:{},a[r]=pe.extend(l,o,n)):void 0!==n&&(a[r]=n));return a},pe.extend({expando:"jQuery"+(de+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isFunction:function(e){return"function"===pe.type(e)},isArray:Array.isArray||function(e){return"array"===pe.type(e)},isWindow:function(e){return null!=e&&e==e.window},isNumeric:function(e){var t=e&&e.toString();return!pe.isArray(e)&&t-parseFloat(t)+1>=0},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},isPlainObject:function(e){var t;if(!e||"object"!==pe.type(e)||e.nodeType||pe.isWindow(e))return!1;try{if(e.constructor&&!ce.call(e,"constructor")&&!ce.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(n){return!1}if(!fe.ownFirst)for(t in e)return ce.call(e,t);for(t in e);return void 0===t||ce.call(e,t)},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?ue[le.call(e)]||"object":typeof e},globalEval:function(t){t&&pe.trim(t)&&(e.execScript||function(t){e.eval.call(e,t)})(t)},camelCase:function(e){return e.replace(ge,"ms-").replace(me,ye)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,t){var r,i=0;if(n(e))for(r=e.length;i<r&&t.call(e[i],i,e[i])!==!1;i++);else for(i in e)if(t.call(e[i],i,e[i])===!1)break;return e},trim:function(e){return null==e?"":(e+"").replace(he,"")},makeArray:function(e,t){var r=t||[];return null!=e&&(n(Object(e))?pe.merge(r,"string"==typeof e?[e]:e):ae.call(r,e)),r},inArray:function(e,t,n){var r;if(t){if(se)return se.call(t,e,n);for(r=t.length,n=n?n<0?Math.max(0,r+n):n:0;n<r;n++)if(n in t&&t[n]===e)return n}return-1},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;)e[i++]=t[r++];if(n!==n)for(;void 0!==t[r];)e[i++]=t[r++];return e.length=i,e},grep:function(e,t,n){for(var r,i=[],o=0,a=e.length,s=!n;o<a;o++)r=!t(e[o],o),r!==s&&i.push(e[o]);return i},map:function(e,t,r){var i,o,a=0,s=[];if(n(e))for(i=e.length;a<i;a++)o=t(e[a],a,r),null!=o&&s.push(o);else for(a in e)o=t(e[a],a,r),null!=o&&s.push(o);return oe.apply([],s)},guid:1,proxy:function(e,t){var n,r,i;if("string"==typeof t&&(i=e[t],t=e,e=i),pe.isFunction(e))return n=ie.call(arguments,2),r=function(){return e.apply(t||this,n.concat(ie.call(arguments)))},r.guid=e.guid=e.guid||pe.guid++,r},now:function(){return+new Date},support:fe}),"function"==typeof Symbol&&(pe.fn[Symbol.iterator]=ne[Symbol.iterator]),pe.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){ue["[object "+t+"]"]=t.toLowerCase()});var ve=function(e){function t(e,t,n,r){var i,o,a,s,u,l,f,p,h=t&&t.ownerDocument,g=t?t.nodeType:9;if(n=n||[],"string"!=typeof e||!e||1!==g&&9!==g&&11!==g)return n;if(!r&&((t?t.ownerDocument||t:B)!==H&&L(t),t=t||H,_)){if(11!==g&&(l=ye.exec(e)))if(i=l[1]){if(9===g){if(!(a=t.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(h&&(a=h.getElementById(i))&&R(t,a)&&a.id===i)return n.push(a),n}else{if(l[2])return Q.apply(n,t.getElementsByTagName(e)),n;if((i=l[3])&&w.getElementsByClassName&&t.getElementsByClassName)return Q.apply(n,t.getElementsByClassName(i)),n}if(w.qsa&&!X[e+" "]&&(!F||!F.test(e))){if(1!==g)h=t,p=e;else if("object"!==t.nodeName.toLowerCase()){for((s=t.getAttribute("id"))?s=s.replace(xe,"\\$&"):t.setAttribute("id",s=P),f=N(e),o=f.length,u=de.test(s)?"#"+s:"[id='"+s+"']";o--;)f[o]=u+" "+d(f[o]);p=f.join(","),h=ve.test(e)&&c(t.parentNode)||t}if(p)try{return Q.apply(n,h.querySelectorAll(p)),n}catch(m){}finally{s===P&&t.removeAttribute("id")}}}return S(e.replace(se,"$1"),t,n,r)}function n(){function e(n,r){return t.push(n+" ")>T.cacheLength&&delete e[t.shift()],e[n+" "]=r}var t=[];return e}function r(e){return e[P]=!0,e}function i(e){var t=H.createElement("div");try{return!!e(t)}catch(n){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function o(e,t){for(var n=e.split("|"),r=n.length;r--;)T.attrHandle[n[r]]=t}function a(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&(~t.sourceIndex||V)-(~e.sourceIndex||V);if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function s(e){return function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}function u(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function l(e){return r(function(t){return t=+t,r(function(n,r){for(var i,o=e([],n.length,t),a=o.length;a--;)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}function c(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}function f(){}function d(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function p(e,t,n){var r=t.dir,i=n&&"parentNode"===r,o=I++;return t.first?function(t,n,o){for(;t=t[r];)if(1===t.nodeType||i)return e(t,n,o)}:function(t,n,a){var s,u,l,c=[W,o];if(a){for(;t=t[r];)if((1===t.nodeType||i)&&e(t,n,a))return!0}else for(;t=t[r];)if(1===t.nodeType||i){if(l=t[P]||(t[P]={}),u=l[t.uniqueID]||(l[t.uniqueID]={}),(s=u[r])&&s[0]===W&&s[1]===o)return c[2]=s[2];if(u[r]=c,c[2]=e(t,n,a))return!0}}}function h(e){return e.length>1?function(t,n,r){for(var i=e.length;i--;)if(!e[i](t,n,r))return!1;return!0}:e[0]}function g(e,n,r){for(var i=0,o=n.length;i<o;i++)t(e,n[i],r);return r}function m(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function y(e,t,n,i,o,a){return i&&!i[P]&&(i=y(i)),o&&!o[P]&&(o=y(o,a)),r(function(r,a,s,u){var l,c,f,d=[],p=[],h=a.length,y=r||g(t||"*",s.nodeType?[s]:s,[]),v=!e||!r&&t?y:m(y,d,e,s,u),x=n?o||(r?e:h||i)?[]:a:v;if(n&&n(v,x,s,u),i)for(l=m(x,p),i(l,[],s,u),c=l.length;c--;)(f=l[c])&&(x[p[c]]=!(v[p[c]]=f));if(r){if(o||e){if(o){for(l=[],c=x.length;c--;)(f=x[c])&&l.push(v[c]=f);o(null,x=[],l,u)}for(c=x.length;c--;)(f=x[c])&&(l=o?ee(r,f):d[c])>-1&&(r[l]=!(a[l]=f))}}else x=m(x===a?x.splice(h,x.length):x),o?o(null,a,x,u):Q.apply(a,x)})}function v(e){for(var t,n,r,i=e.length,o=T.relative[e[0].type],a=o||T.relative[" "],s=o?1:0,u=p(function(e){return e===t},a,!0),l=p(function(e){return ee(t,e)>-1},a,!0),c=[function(e,n,r){var i=!o&&(r||n!==A)||((t=n).nodeType?u(e,n,r):l(e,n,r));return t=null,i}];s<i;s++)if(n=T.relative[e[s].type])c=[p(h(c),n)];else{if(n=T.filter[e[s].type].apply(null,e[s].matches),n[P]){for(r=++s;r<i&&!T.relative[e[r].type];r++);return y(s>1&&h(c),s>1&&d(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace(se,"$1"),n,s<r&&v(e.slice(s,r)),r<i&&v(e=e.slice(r)),r<i&&d(e))}c.push(n)}return h(c)}function x(e,n){var i=n.length>0,o=e.length>0,a=function(r,a,s,u,l){var c,f,d,p=0,h="0",g=r&&[],y=[],v=A,x=r||o&&T.find.TAG("*",l),b=W+=null==v?1:Math.random()||.1,w=x.length;for(l&&(A=a===H||a||l);h!==w&&null!=(c=x[h]);h++){if(o&&c){for(f=0,a||c.ownerDocument===H||(L(c),s=!_);d=e[f++];)if(d(c,a||H,s)){u.push(c);break}l&&(W=b)}i&&((c=!d&&c)&&p--,r&&g.push(c))}if(p+=h,i&&h!==p){for(f=0;d=n[f++];)d(g,y,a,s);if(r){if(p>0)for(;h--;)g[h]||y[h]||(y[h]=G.call(u));y=m(y)}Q.apply(u,y),l&&!r&&y.length>0&&p+n.length>1&&t.uniqueSort(u)}return l&&(W=b,A=v),g};return i?r(a):a}var b,w,T,C,E,N,k,S,A,D,j,L,H,q,_,F,M,O,R,P="sizzle"+1*new Date,B=e.document,W=0,I=0,$=n(),z=n(),X=n(),U=function(e,t){return e===t&&(j=!0),0},V=1<<31,Y={}.hasOwnProperty,J=[],G=J.pop,K=J.push,Q=J.push,Z=J.slice,ee=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},te="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",ne="[\\x20\\t\\r\\n\\f]",re="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",ie="\\["+ne+"*("+re+")(?:"+ne+"*([*^$|!~]?=)"+ne+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+re+"))|)"+ne+"*\\]",oe=":("+re+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+ie+")*)|.*)\\)|)",ae=new RegExp(ne+"+","g"),se=new RegExp("^"+ne+"+|((?:^|[^\\\\])(?:\\\\.)*)"+ne+"+$","g"),ue=new RegExp("^"+ne+"*,"+ne+"*"),le=new RegExp("^"+ne+"*([>+~]|"+ne+")"+ne+"*"),ce=new RegExp("="+ne+"*([^\\]'\"]*?)"+ne+"*\\]","g"),fe=new RegExp(oe),de=new RegExp("^"+re+"$"),pe={ID:new RegExp("^#("+re+")"),CLASS:new RegExp("^\\.("+re+")"),TAG:new RegExp("^("+re+"|[*])"),ATTR:new RegExp("^"+ie),PSEUDO:new RegExp("^"+oe),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ne+"*(even|odd|(([+-]|)(\\d*)n|)"+ne+"*(?:([+-]|)"+ne+"*(\\d+)|))"+ne+"*\\)|)","i"),bool:new RegExp("^(?:"+te+")$","i"),needsContext:new RegExp("^"+ne+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ne+"*((?:-\\d)?\\d*)"+ne+"*\\)|)(?=[^-]|$)","i")},he=/^(?:input|select|textarea|button)$/i,ge=/^h\d$/i,me=/^[^{]+\{\s*\[native \w/,ye=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ve=/[+~]/,xe=/'|\\/g,be=new RegExp("\\\\([\\da-f]{1,6}"+ne+"?|("+ne+")|.)","ig"),we=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},Te=function(){L()};try{Q.apply(J=Z.call(B.childNodes),B.childNodes),J[B.childNodes.length].nodeType}catch(Ce){Q={apply:J.length?function(e,t){K.apply(e,Z.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}w=t.support={},E=t.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},L=t.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:B;return r!==H&&9===r.nodeType&&r.documentElement?(H=r,q=H.documentElement,_=!E(H),(n=H.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",Te,!1):n.attachEvent&&n.attachEvent("onunload",Te)),w.attributes=i(function(e){return e.className="i",!e.getAttribute("className")}),w.getElementsByTagName=i(function(e){return e.appendChild(H.createComment("")),!e.getElementsByTagName("*").length}),w.getElementsByClassName=me.test(H.getElementsByClassName),w.getById=i(function(e){return q.appendChild(e).id=P,!H.getElementsByName||!H.getElementsByName(P).length}),w.getById?(T.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&_){var n=t.getElementById(e);return n?[n]:[]}},T.filter.ID=function(e){var t=e.replace(be,we);return function(e){return e.getAttribute("id")===t}}):(delete T.find.ID,T.filter.ID=function(e){var t=e.replace(be,we);return function(e){var n="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}}),T.find.TAG=w.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):w.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){for(;n=o[i++];)1===n.nodeType&&r.push(n);return r}return o},T.find.CLASS=w.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&_)return t.getElementsByClassName(e)},M=[],F=[],(w.qsa=me.test(H.querySelectorAll))&&(i(function(e){q.appendChild(e).innerHTML="<a id='"+P+"'></a><select id='"+P+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&F.push("[*^$]="+ne+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||F.push("\\["+ne+"*(?:value|"+te+")"),e.querySelectorAll("[id~="+P+"-]").length||F.push("~="),e.querySelectorAll(":checked").length||F.push(":checked"),e.querySelectorAll("a#"+P+"+*").length||F.push(".#.+[+~]")}),i(function(e){var t=H.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&F.push("name"+ne+"*[*^$|!~]?="),e.querySelectorAll(":enabled").length||F.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),F.push(",.*:")})),(w.matchesSelector=me.test(O=q.matches||q.webkitMatchesSelector||q.mozMatchesSelector||q.oMatchesSelector||q.msMatchesSelector))&&i(function(e){w.disconnectedMatch=O.call(e,"div"),O.call(e,"[s!='']:x"),M.push("!=",oe)}),F=F.length&&new RegExp(F.join("|")),M=M.length&&new RegExp(M.join("|")),t=me.test(q.compareDocumentPosition),R=t||me.test(q.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},U=t?function(e,t){if(e===t)return j=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n?n:(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1,1&n||!w.sortDetached&&t.compareDocumentPosition(e)===n?e===H||e.ownerDocument===B&&R(B,e)?-1:t===H||t.ownerDocument===B&&R(B,t)?1:D?ee(D,e)-ee(D,t):0:4&n?-1:1)}:function(e,t){if(e===t)return j=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,s=[e],u=[t];if(!i||!o)return e===H?-1:t===H?1:i?-1:o?1:D?ee(D,e)-ee(D,t):0;if(i===o)return a(e,t);for(n=e;n=n.parentNode;)s.unshift(n);for(n=t;n=n.parentNode;)u.unshift(n);for(;s[r]===u[r];)r++;return r?a(s[r],u[r]):s[r]===B?-1:u[r]===B?1:0},H):H},t.matches=function(e,n){return t(e,null,null,n)},t.matchesSelector=function(e,n){if((e.ownerDocument||e)!==H&&L(e),n=n.replace(ce,"='$1']"),w.matchesSelector&&_&&!X[n+" "]&&(!M||!M.test(n))&&(!F||!F.test(n)))try{var r=O.call(e,n);if(r||w.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(i){}return t(n,H,null,[e]).length>0},t.contains=function(e,t){return(e.ownerDocument||e)!==H&&L(e),R(e,t)},t.attr=function(e,t){(e.ownerDocument||e)!==H&&L(e);var n=T.attrHandle[t.toLowerCase()],r=n&&Y.call(T.attrHandle,t.toLowerCase())?n(e,t,!_):void 0;return void 0!==r?r:w.attributes||!_?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},t.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},t.uniqueSort=function(e){var t,n=[],r=0,i=0;if(j=!w.detectDuplicates,D=!w.sortStable&&e.slice(0),e.sort(U),j){for(;t=e[i++];)t===e[i]&&(r=n.push(i));for(;r--;)e.splice(n[r],1)}return D=null,e},C=t.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=C(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r++];)n+=C(t);return n},T=t.selectors={cacheLength:50,createPseudo:r,match:pe,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(be,we),e[3]=(e[3]||e[4]||e[5]||"").replace(be,we),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||t.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&t.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return pe.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&fe.test(n)&&(t=N(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(be,we).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=$[e+" "];return t||(t=new RegExp("(^|"+ne+")"+e+"("+ne+"|$)"))&&$(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,n,r){return function(i){var o=t.attr(i,e);return null==o?"!="===n:!n||(o+="","="===n?o===r:"!="===n?o!==r:"^="===n?r&&0===o.indexOf(r):"*="===n?r&&o.indexOf(r)>-1:"$="===n?r&&o.slice(-r.length)===r:"~="===n?(" "+o.replace(ae," ")+" ").indexOf(r)>-1:"|="===n&&(o===r||o.slice(0,r.length+1)===r+"-"))}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,u){var l,c,f,d,p,h,g=o!==a?"nextSibling":"previousSibling",m=t.parentNode,y=s&&t.nodeName.toLowerCase(),v=!u&&!s,x=!1;if(m){if(o){for(;g;){for(d=t;d=d[g];)if(s?d.nodeName.toLowerCase()===y:1===d.nodeType)return!1;h=g="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?m.firstChild:m.lastChild],a&&v){for(d=m,f=d[P]||(d[P]={}),c=f[d.uniqueID]||(f[d.uniqueID]={}), +l=c[e]||[],p=l[0]===W&&l[1],x=p&&l[2],d=p&&m.childNodes[p];d=++p&&d&&d[g]||(x=p=0)||h.pop();)if(1===d.nodeType&&++x&&d===t){c[e]=[W,p,x];break}}else if(v&&(d=t,f=d[P]||(d[P]={}),c=f[d.uniqueID]||(f[d.uniqueID]={}),l=c[e]||[],p=l[0]===W&&l[1],x=p),x===!1)for(;(d=++p&&d&&d[g]||(x=p=0)||h.pop())&&((s?d.nodeName.toLowerCase()!==y:1!==d.nodeType)||!++x||(v&&(f=d[P]||(d[P]={}),c=f[d.uniqueID]||(f[d.uniqueID]={}),c[e]=[W,x]),d!==t)););return x-=i,x===r||x%r===0&&x/r>=0}}},PSEUDO:function(e,n){var i,o=T.pseudos[e]||T.setFilters[e.toLowerCase()]||t.error("unsupported pseudo: "+e);return o[P]?o(n):o.length>1?(i=[e,e,"",n],T.setFilters.hasOwnProperty(e.toLowerCase())?r(function(e,t){for(var r,i=o(e,n),a=i.length;a--;)r=ee(e,i[a]),e[r]=!(t[r]=i[a])}):function(e){return o(e,0,i)}):o}},pseudos:{not:r(function(e){var t=[],n=[],i=k(e.replace(se,"$1"));return i[P]?r(function(e,t,n,r){for(var o,a=i(e,null,r,[]),s=e.length;s--;)(o=a[s])&&(e[s]=!(t[s]=o))}):function(e,r,o){return t[0]=e,i(t,null,o,n),t[0]=null,!n.pop()}}),has:r(function(e){return function(n){return t(e,n).length>0}}),contains:r(function(e){return e=e.replace(be,we),function(t){return(t.textContent||t.innerText||C(t)).indexOf(e)>-1}}),lang:r(function(e){return de.test(e||"")||t.error("unsupported lang: "+e),e=e.replace(be,we).toLowerCase(),function(t){var n;do if(n=_?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return n=n.toLowerCase(),n===e||0===n.indexOf(e+"-");while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===q},focus:function(e){return e===H.activeElement&&(!H.hasFocus||H.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!T.pseudos.empty(e)},header:function(e){return ge.test(e.nodeName)},input:function(e){return he.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:l(function(){return[0]}),last:l(function(e,t){return[t-1]}),eq:l(function(e,t,n){return[n<0?n+t:n]}),even:l(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:l(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:l(function(e,t,n){for(var r=n<0?n+t:n;--r>=0;)e.push(r);return e}),gt:l(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}},T.pseudos.nth=T.pseudos.eq;for(b in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})T.pseudos[b]=s(b);for(b in{submit:!0,reset:!0})T.pseudos[b]=u(b);return f.prototype=T.filters=T.pseudos,T.setFilters=new f,N=t.tokenize=function(e,n){var r,i,o,a,s,u,l,c=z[e+" "];if(c)return n?0:c.slice(0);for(s=e,u=[],l=T.preFilter;s;){r&&!(i=ue.exec(s))||(i&&(s=s.slice(i[0].length)||s),u.push(o=[])),r=!1,(i=le.exec(s))&&(r=i.shift(),o.push({value:r,type:i[0].replace(se," ")}),s=s.slice(r.length));for(a in T.filter)!(i=pe[a].exec(s))||l[a]&&!(i=l[a](i))||(r=i.shift(),o.push({value:r,type:a,matches:i}),s=s.slice(r.length));if(!r)break}return n?s.length:s?t.error(e):z(e,u).slice(0)},k=t.compile=function(e,t){var n,r=[],i=[],o=X[e+" "];if(!o){for(t||(t=N(e)),n=t.length;n--;)o=v(t[n]),o[P]?r.push(o):i.push(o);o=X(e,x(i,r)),o.selector=e}return o},S=t.select=function(e,t,n,r){var i,o,a,s,u,l="function"==typeof e&&e,f=!r&&N(e=l.selector||e);if(n=n||[],1===f.length){if(o=f[0]=f[0].slice(0),o.length>2&&"ID"===(a=o[0]).type&&w.getById&&9===t.nodeType&&_&&T.relative[o[1].type]){if(t=(T.find.ID(a.matches[0].replace(be,we),t)||[])[0],!t)return n;l&&(t=t.parentNode),e=e.slice(o.shift().value.length)}for(i=pe.needsContext.test(e)?0:o.length;i--&&(a=o[i],!T.relative[s=a.type]);)if((u=T.find[s])&&(r=u(a.matches[0].replace(be,we),ve.test(o[0].type)&&c(t.parentNode)||t))){if(o.splice(i,1),e=r.length&&d(o),!e)return Q.apply(n,r),n;break}}return(l||k(e,f))(r,t,!_,n,!t||ve.test(e)&&c(t.parentNode)||t),n},w.sortStable=P.split("").sort(U).join("")===P,w.detectDuplicates=!!j,L(),w.sortDetached=i(function(e){return 1&e.compareDocumentPosition(H.createElement("div"))}),i(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||o("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),w.attributes&&i(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||o("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),i(function(e){return null==e.getAttribute("disabled")})||o(te,function(e,t,n){var r;if(!n)return e[t]===!0?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),t}(e);pe.find=ve,pe.expr=ve.selectors,pe.expr[":"]=pe.expr.pseudos,pe.uniqueSort=pe.unique=ve.uniqueSort,pe.text=ve.getText,pe.isXMLDoc=ve.isXML,pe.contains=ve.contains;var xe=function(e,t,n){for(var r=[],i=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(i&&pe(e).is(n))break;r.push(e)}return r},be=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},we=pe.expr.match.needsContext,Te=/^<([\w-]+)\s*\/?>(?:<\/\1>|)$/,Ce=/^.[^:#\[\.,]*$/;pe.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?pe.find.matchesSelector(r,e)?[r]:[]:pe.find.matches(e,pe.grep(t,function(e){return 1===e.nodeType}))},pe.fn.extend({find:function(e){var t,n=[],r=this,i=r.length;if("string"!=typeof e)return this.pushStack(pe(e).filter(function(){for(t=0;t<i;t++)if(pe.contains(r[t],this))return!0}));for(t=0;t<i;t++)pe.find(e,r[t],n);return n=this.pushStack(i>1?pe.unique(n):n),n.selector=this.selector?this.selector+" "+e:e,n},filter:function(e){return this.pushStack(r(this,e||[],!1))},not:function(e){return this.pushStack(r(this,e||[],!0))},is:function(e){return!!r(this,"string"==typeof e&&we.test(e)?pe(e):e||[],!1).length}});var Ee,Ne=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,ke=pe.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||Ee,"string"==typeof e){if(r="<"===e.charAt(0)&&">"===e.charAt(e.length-1)&&e.length>=3?[null,e,null]:Ne.exec(e),!r||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof pe?t[0]:t,pe.merge(this,pe.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:re,!0)),Te.test(r[1])&&pe.isPlainObject(t))for(r in t)pe.isFunction(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}if(i=re.getElementById(r[2]),i&&i.parentNode){if(i.id!==r[2])return Ee.find(e);this.length=1,this[0]=i}return this.context=re,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):pe.isFunction(e)?"undefined"!=typeof n.ready?n.ready(e):e(pe):(void 0!==e.selector&&(this.selector=e.selector,this.context=e.context),pe.makeArray(e,this))};ke.prototype=pe.fn,Ee=pe(re);var Se=/^(?:parents|prev(?:Until|All))/,Ae={children:!0,contents:!0,next:!0,prev:!0};pe.fn.extend({has:function(e){var t,n=pe(e,this),r=n.length;return this.filter(function(){for(t=0;t<r;t++)if(pe.contains(this,n[t]))return!0})},closest:function(e,t){for(var n,r=0,i=this.length,o=[],a=we.test(e)||"string"!=typeof e?pe(e,t||this.context):0;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?a.index(n)>-1:1===n.nodeType&&pe.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?pe.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?pe.inArray(this[0],pe(e)):pe.inArray(e.jquery?e[0]:e,this):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(pe.uniqueSort(pe.merge(this.get(),pe(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),pe.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return xe(e,"parentNode")},parentsUntil:function(e,t,n){return xe(e,"parentNode",n)},next:function(e){return i(e,"nextSibling")},prev:function(e){return i(e,"previousSibling")},nextAll:function(e){return xe(e,"nextSibling")},prevAll:function(e){return xe(e,"previousSibling")},nextUntil:function(e,t,n){return xe(e,"nextSibling",n)},prevUntil:function(e,t,n){return xe(e,"previousSibling",n)},siblings:function(e){return be((e.parentNode||{}).firstChild,e)},children:function(e){return be(e.firstChild)},contents:function(e){return pe.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:pe.merge([],e.childNodes)}},function(e,t){pe.fn[e]=function(n,r){var i=pe.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=pe.filter(r,i)),this.length>1&&(Ae[e]||(i=pe.uniqueSort(i)),Se.test(e)&&(i=i.reverse())),this.pushStack(i)}});var De=/\S+/g;pe.Callbacks=function(e){e="string"==typeof e?o(e):pe.extend({},e);var t,n,r,i,a=[],s=[],u=-1,l=function(){for(i=e.once,r=t=!0;s.length;u=-1)for(n=s.shift();++u<a.length;)a[u].apply(n[0],n[1])===!1&&e.stopOnFalse&&(u=a.length,n=!1);e.memory||(n=!1),t=!1,i&&(a=n?[]:"")},c={add:function(){return a&&(n&&!t&&(u=a.length-1,s.push(n)),function r(t){pe.each(t,function(t,n){pe.isFunction(n)?e.unique&&c.has(n)||a.push(n):n&&n.length&&"string"!==pe.type(n)&&r(n)})}(arguments),n&&!t&&l()),this},remove:function(){return pe.each(arguments,function(e,t){for(var n;(n=pe.inArray(t,a,n))>-1;)a.splice(n,1),n<=u&&u--}),this},has:function(e){return e?pe.inArray(e,a)>-1:a.length>0},empty:function(){return a&&(a=[]),this},disable:function(){return i=s=[],a=n="",this},disabled:function(){return!a},lock:function(){return i=!0,n||c.disable(),this},locked:function(){return!!i},fireWith:function(e,n){return i||(n=n||[],n=[e,n.slice?n.slice():n],s.push(n),t||l()),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!r}};return c},pe.extend({Deferred:function(e){var t=[["resolve","done",pe.Callbacks("once memory"),"resolved"],["reject","fail",pe.Callbacks("once memory"),"rejected"],["notify","progress",pe.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return pe.Deferred(function(n){pe.each(t,function(t,o){var a=pe.isFunction(e[t])&&e[t];i[o[1]](function(){var e=a&&a.apply(this,arguments);e&&pe.isFunction(e.promise)?e.promise().progress(n.notify).done(n.resolve).fail(n.reject):n[o[0]+"With"](this===r?n.promise():this,a?[e]:arguments)})}),e=null}).promise()},promise:function(e){return null!=e?pe.extend(e,r):r}},i={};return r.pipe=r.then,pe.each(t,function(e,o){var a=o[2],s=o[3];r[o[1]]=a.add,s&&a.add(function(){n=s},t[1^e][2].disable,t[2][2].lock),i[o[0]]=function(){return i[o[0]+"With"](this===i?r:this,arguments),this},i[o[0]+"With"]=a.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t,n,r,i=0,o=ie.call(arguments),a=o.length,s=1!==a||e&&pe.isFunction(e.promise)?a:0,u=1===s?e:pe.Deferred(),l=function(e,n,r){return function(i){n[e]=this,r[e]=arguments.length>1?ie.call(arguments):i,r===t?u.notifyWith(n,r):--s||u.resolveWith(n,r)}};if(a>1)for(t=new Array(a),n=new Array(a),r=new Array(a);i<a;i++)o[i]&&pe.isFunction(o[i].promise)?o[i].promise().progress(l(i,n,t)).done(l(i,r,o)).fail(u.reject):--s;return s||u.resolveWith(r,o),u.promise()}});var je;pe.fn.ready=function(e){return pe.ready.promise().done(e),this},pe.extend({isReady:!1,readyWait:1,holdReady:function(e){e?pe.readyWait++:pe.ready(!0)},ready:function(e){(e===!0?--pe.readyWait:pe.isReady)||(pe.isReady=!0,e!==!0&&--pe.readyWait>0||(je.resolveWith(re,[pe]),pe.fn.triggerHandler&&(pe(re).triggerHandler("ready"),pe(re).off("ready"))))}}),pe.ready.promise=function(t){if(!je)if(je=pe.Deferred(),"complete"===re.readyState||"loading"!==re.readyState&&!re.documentElement.doScroll)e.setTimeout(pe.ready);else if(re.addEventListener)re.addEventListener("DOMContentLoaded",s),e.addEventListener("load",s);else{re.attachEvent("onreadystatechange",s),e.attachEvent("onload",s);var n=!1;try{n=null==e.frameElement&&re.documentElement}catch(r){}n&&n.doScroll&&!function i(){if(!pe.isReady){try{n.doScroll("left")}catch(t){return e.setTimeout(i,50)}a(),pe.ready()}}()}return je.promise(t)},pe.ready.promise();var Le;for(Le in pe(fe))break;fe.ownFirst="0"===Le,fe.inlineBlockNeedsLayout=!1,pe(function(){var e,t,n,r;n=re.getElementsByTagName("body")[0],n&&n.style&&(t=re.createElement("div"),r=re.createElement("div"),r.style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px",n.appendChild(r).appendChild(t),"undefined"!=typeof t.style.zoom&&(t.style.cssText="display:inline;margin:0;border:0;padding:1px;width:1px;zoom:1",fe.inlineBlockNeedsLayout=e=3===t.offsetWidth,e&&(n.style.zoom=1)),n.removeChild(r))}),function(){var e=re.createElement("div");fe.deleteExpando=!0;try{delete e.test}catch(t){fe.deleteExpando=!1}e=null}();var He=function(e){var t=pe.noData[(e.nodeName+" ").toLowerCase()],n=+e.nodeType||1;return(1===n||9===n)&&(!t||t!==!0&&e.getAttribute("classid")===t)},qe=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,_e=/([A-Z])/g;pe.extend({cache:{},noData:{"applet ":!0,"embed ":!0,"object ":"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"},hasData:function(e){return e=e.nodeType?pe.cache[e[pe.expando]]:e[pe.expando],!!e&&!l(e)},data:function(e,t,n){return c(e,t,n)},removeData:function(e,t){return f(e,t)},_data:function(e,t,n){return c(e,t,n,!0)},_removeData:function(e,t){return f(e,t,!0)}}),pe.fn.extend({data:function(e,t){var n,r,i,o=this[0],a=o&&o.attributes;if(void 0===e){if(this.length&&(i=pe.data(o),1===o.nodeType&&!pe._data(o,"parsedAttrs"))){for(n=a.length;n--;)a[n]&&(r=a[n].name,0===r.indexOf("data-")&&(r=pe.camelCase(r.slice(5)),u(o,r,i[r])));pe._data(o,"parsedAttrs",!0)}return i}return"object"==typeof e?this.each(function(){pe.data(this,e)}):arguments.length>1?this.each(function(){pe.data(this,e,t)}):o?u(o,e,pe.data(o,e)):void 0},removeData:function(e){return this.each(function(){pe.removeData(this,e)})}}),pe.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=pe._data(e,t),n&&(!r||pe.isArray(n)?r=pe._data(e,t,pe.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=pe.queue(e,t),r=n.length,i=n.shift(),o=pe._queueHooks(e,t),a=function(){pe.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return pe._data(e,n)||pe._data(e,n,{empty:pe.Callbacks("once memory").add(function(){pe._removeData(e,t+"queue"),pe._removeData(e,n)})})}}),pe.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length<n?pe.queue(this[0],e):void 0===t?this:this.each(function(){var n=pe.queue(this,e,t);pe._queueHooks(this,e),"fx"===e&&"inprogress"!==n[0]&&pe.dequeue(this,e)})},dequeue:function(e){return this.each(function(){pe.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=pe.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};for("string"!=typeof e&&(t=e,e=void 0),e=e||"fx";a--;)n=pe._data(o[a],e+"queueHooks"),n&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}}),function(){var e;fe.shrinkWrapBlocks=function(){if(null!=e)return e;e=!1;var t,n,r;return n=re.getElementsByTagName("body")[0],n&&n.style?(t=re.createElement("div"),r=re.createElement("div"),r.style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px",n.appendChild(r).appendChild(t),"undefined"!=typeof t.style.zoom&&(t.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:1px;width:1px;zoom:1",t.appendChild(re.createElement("div")).style.width="5px",e=3!==t.offsetWidth),n.removeChild(r),e):void 0}}();var Fe=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,Me=new RegExp("^(?:([+-])=|)("+Fe+")([a-z%]*)$","i"),Oe=["Top","Right","Bottom","Left"],Re=function(e,t){return e=t||e,"none"===pe.css(e,"display")||!pe.contains(e.ownerDocument,e)},Pe=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if("object"===pe.type(n)){i=!0;for(s in n)Pe(e,t,s,n[s],!0,o,a)}else if(void 0!==r&&(i=!0,pe.isFunction(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(pe(e),n)})),t))for(;s<u;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},Be=/^(?:checkbox|radio)$/i,We=/<([\w:-]+)/,Ie=/^$|\/(?:java|ecma)script/i,$e=/^\s+/,ze="abbr|article|aside|audio|bdi|canvas|data|datalist|details|dialog|figcaption|figure|footer|header|hgroup|main|mark|meter|nav|output|picture|progress|section|summary|template|time|video";!function(){var e=re.createElement("div"),t=re.createDocumentFragment(),n=re.createElement("input");e.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",fe.leadingWhitespace=3===e.firstChild.nodeType,fe.tbody=!e.getElementsByTagName("tbody").length,fe.htmlSerialize=!!e.getElementsByTagName("link").length,fe.html5Clone="<:nav></:nav>"!==re.createElement("nav").cloneNode(!0).outerHTML,n.type="checkbox",n.checked=!0,t.appendChild(n),fe.appendChecked=n.checked,e.innerHTML="<textarea>x</textarea>",fe.noCloneChecked=!!e.cloneNode(!0).lastChild.defaultValue,t.appendChild(e),n=re.createElement("input"),n.setAttribute("type","radio"),n.setAttribute("checked","checked"),n.setAttribute("name","t"),e.appendChild(n),fe.checkClone=e.cloneNode(!0).cloneNode(!0).lastChild.checked,fe.noCloneEvent=!!e.addEventListener,e[pe.expando]=1,fe.attributes=!e.getAttribute(pe.expando)}();var Xe={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],area:[1,"<map>","</map>"],param:[1,"<object>","</object>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:fe.htmlSerialize?[0,"",""]:[1,"X<div>","</div>"]};Xe.optgroup=Xe.option,Xe.tbody=Xe.tfoot=Xe.colgroup=Xe.caption=Xe.thead,Xe.th=Xe.td;var Ue=/<|&#?\w+;/,Ve=/<tbody/i;!function(){var t,n,r=re.createElement("div");for(t in{submit:!0,change:!0,focusin:!0})n="on"+t,(fe[t]=n in e)||(r.setAttribute(n,"t"),fe[t]=r.attributes[n].expando===!1);r=null}();var Ye=/^(?:input|select|textarea)$/i,Je=/^key/,Ge=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ke=/^(?:focusinfocus|focusoutblur)$/,Qe=/^([^.]*)(?:\.(.+)|)/;pe.event={global:{},add:function(e,t,n,r,i){var o,a,s,u,l,c,f,d,p,h,g,m=pe._data(e);if(m){for(n.handler&&(u=n,n=u.handler,i=u.selector),n.guid||(n.guid=pe.guid++),(a=m.events)||(a=m.events={}),(c=m.handle)||(c=m.handle=function(e){return"undefined"==typeof pe||e&&pe.event.triggered===e.type?void 0:pe.event.dispatch.apply(c.elem,arguments)},c.elem=e),t=(t||"").match(De)||[""],s=t.length;s--;)o=Qe.exec(t[s])||[],p=g=o[1],h=(o[2]||"").split(".").sort(),p&&(l=pe.event.special[p]||{},p=(i?l.delegateType:l.bindType)||p,l=pe.event.special[p]||{},f=pe.extend({type:p,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&pe.expr.match.needsContext.test(i),namespace:h.join(".")},u),(d=a[p])||(d=a[p]=[],d.delegateCount=0,l.setup&&l.setup.call(e,r,h,c)!==!1||(e.addEventListener?e.addEventListener(p,c,!1):e.attachEvent&&e.attachEvent("on"+p,c))),l.add&&(l.add.call(e,f),f.handler.guid||(f.handler.guid=n.guid)),i?d.splice(d.delegateCount++,0,f):d.push(f),pe.event.global[p]=!0);e=null}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,d,p,h,g,m=pe.hasData(e)&&pe._data(e);if(m&&(c=m.events)){for(t=(t||"").match(De)||[""],l=t.length;l--;)if(s=Qe.exec(t[l])||[],p=g=s[1],h=(s[2]||"").split(".").sort(),p){for(f=pe.event.special[p]||{},p=(r?f.delegateType:f.bindType)||p,d=c[p]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),u=o=d.length;o--;)a=d[o],!i&&g!==a.origType||n&&n.guid!==a.guid||s&&!s.test(a.namespace)||r&&r!==a.selector&&("**"!==r||!a.selector)||(d.splice(o,1),a.selector&&d.delegateCount--,f.remove&&f.remove.call(e,a));u&&!d.length&&(f.teardown&&f.teardown.call(e,h,m.handle)!==!1||pe.removeEvent(e,p,m.handle),delete c[p])}else for(p in c)pe.event.remove(e,p+t[l],n,r,!0);pe.isEmptyObject(c)&&(delete m.handle,pe._removeData(e,"events"))}},trigger:function(t,n,r,i){var o,a,s,u,l,c,f,d=[r||re],p=ce.call(t,"type")?t.type:t,h=ce.call(t,"namespace")?t.namespace.split("."):[];if(s=c=r=r||re,3!==r.nodeType&&8!==r.nodeType&&!Ke.test(p+pe.event.triggered)&&(p.indexOf(".")>-1&&(h=p.split("."),p=h.shift(),h.sort()),a=p.indexOf(":")<0&&"on"+p,t=t[pe.expando]?t:new pe.Event(p,"object"==typeof t&&t),t.isTrigger=i?2:3,t.namespace=h.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=r),n=null==n?[t]:pe.makeArray(n,[t]),l=pe.event.special[p]||{},i||!l.trigger||l.trigger.apply(r,n)!==!1)){if(!i&&!l.noBubble&&!pe.isWindow(r)){for(u=l.delegateType||p,Ke.test(u+p)||(s=s.parentNode);s;s=s.parentNode)d.push(s),c=s;c===(r.ownerDocument||re)&&d.push(c.defaultView||c.parentWindow||e)}for(f=0;(s=d[f++])&&!t.isPropagationStopped();)t.type=f>1?u:l.bindType||p,o=(pe._data(s,"events")||{})[t.type]&&pe._data(s,"handle"),o&&o.apply(s,n),o=a&&s[a],o&&o.apply&&He(s)&&(t.result=o.apply(s,n),t.result===!1&&t.preventDefault());if(t.type=p,!i&&!t.isDefaultPrevented()&&(!l._default||l._default.apply(d.pop(),n)===!1)&&He(r)&&a&&r[p]&&!pe.isWindow(r)){c=r[a],c&&(r[a]=null),pe.event.triggered=p;try{r[p]()}catch(g){}pe.event.triggered=void 0,c&&(r[a]=c)}return t.result}},dispatch:function(e){e=pe.event.fix(e);var t,n,r,i,o,a=[],s=ie.call(arguments),u=(pe._data(this,"events")||{})[e.type]||[],l=pe.event.special[e.type]||{};if(s[0]=e,e.delegateTarget=this,!l.preDispatch||l.preDispatch.call(this,e)!==!1){for(a=pe.event.handlers.call(this,e,u),t=0;(i=a[t++])&&!e.isPropagationStopped();)for(e.currentTarget=i.elem,n=0;(o=i.handlers[n++])&&!e.isImmediatePropagationStopped();)e.rnamespace&&!e.rnamespace.test(o.namespace)||(e.handleObj=o,e.data=o.data,r=((pe.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,s),void 0!==r&&(e.result=r)===!1&&(e.preventDefault(),e.stopPropagation()));return l.postDispatch&&l.postDispatch.call(this,e),e.result}},handlers:function(e,t){var n,r,i,o,a=[],s=t.delegateCount,u=e.target;if(s&&u.nodeType&&("click"!==e.type||isNaN(e.button)||e.button<1))for(;u!=this;u=u.parentNode||this)if(1===u.nodeType&&(u.disabled!==!0||"click"!==e.type)){for(r=[],n=0;n<s;n++)o=t[n],i=o.selector+" ",void 0===r[i]&&(r[i]=o.needsContext?pe(i,this).index(u)>-1:pe.find(i,this,null,[u]).length),r[i]&&r.push(o);r.length&&a.push({elem:u,handlers:r})}return s<t.length&&a.push({elem:this,handlers:t.slice(s)}),a},fix:function(e){if(e[pe.expando])return e;var t,n,r,i=e.type,o=e,a=this.fixHooks[i];for(a||(this.fixHooks[i]=a=Ge.test(i)?this.mouseHooks:Je.test(i)?this.keyHooks:{}),r=a.props?this.props.concat(a.props):this.props,e=new pe.Event(o),t=r.length;t--;)n=r[t],e[n]=o[n];return e.target||(e.target=o.srcElement||re),3===e.target.nodeType&&(e.target=e.target.parentNode),e.metaKey=!!e.metaKey,a.filter?a.filter(e,o):e},props:"altKey bubbles cancelable ctrlKey currentTarget detail eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(e,t){return null==e.which&&(e.which=null!=t.charCode?t.charCode:t.keyCode),e}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(e,t){var n,r,i,o=t.button,a=t.fromElement;return null==e.pageX&&null!=t.clientX&&(r=e.target.ownerDocument||re,i=r.documentElement,n=r.body,e.pageX=t.clientX+(i&&i.scrollLeft||n&&n.scrollLeft||0)-(i&&i.clientLeft||n&&n.clientLeft||0),e.pageY=t.clientY+(i&&i.scrollTop||n&&n.scrollTop||0)-(i&&i.clientTop||n&&n.clientTop||0)),!e.relatedTarget&&a&&(e.relatedTarget=a===e.target?t.toElement:a),e.which||void 0===o||(e.which=1&o?1:2&o?3:4&o?2:0),e}},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==b()&&this.focus)try{return this.focus(),!1}catch(e){}},delegateType:"focusin"},blur:{trigger:function(){if(this===b()&&this.blur)return this.blur(),!1},delegateType:"focusout"},click:{trigger:function(){if(pe.nodeName(this,"input")&&"checkbox"===this.type&&this.click)return this.click(),!1},_default:function(e){return pe.nodeName(e.target,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}},simulate:function(e,t,n){var r=pe.extend(new pe.Event,n,{type:e,isSimulated:!0});pe.event.trigger(r,null,t),r.isDefaultPrevented()&&n.preventDefault()}},pe.removeEvent=re.removeEventListener?function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)}:function(e,t,n){var r="on"+t;e.detachEvent&&("undefined"==typeof e[r]&&(e[r]=null),e.detachEvent(r,n))},pe.Event=function(e,t){return this instanceof pe.Event?(e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&e.returnValue===!1?v:x):this.type=e,t&&pe.extend(this,t),this.timeStamp=e&&e.timeStamp||pe.now(),void(this[pe.expando]=!0)):new pe.Event(e,t)},pe.Event.prototype={constructor:pe.Event,isDefaultPrevented:x,isPropagationStopped:x,isImmediatePropagationStopped:x,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=v,e&&(e.preventDefault?e.preventDefault():e.returnValue=!1)},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=v,e&&!this.isSimulated&&(e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!0)},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=v,e&&e.stopImmediatePropagation&&e.stopImmediatePropagation(),this.stopPropagation()}},pe.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,t){pe.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;return i&&(i===r||pe.contains(r,i))||(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}}),fe.submit||(pe.event.special.submit={setup:function(){return!pe.nodeName(this,"form")&&void pe.event.add(this,"click._submit keypress._submit",function(e){var t=e.target,n=pe.nodeName(t,"input")||pe.nodeName(t,"button")?pe.prop(t,"form"):void 0;n&&!pe._data(n,"submit")&&(pe.event.add(n,"submit._submit",function(e){e._submitBubble=!0}),pe._data(n,"submit",!0))})},postDispatch:function(e){e._submitBubble&&(delete e._submitBubble,this.parentNode&&!e.isTrigger&&pe.event.simulate("submit",this.parentNode,e))},teardown:function(){return!pe.nodeName(this,"form")&&void pe.event.remove(this,"._submit")}}),fe.change||(pe.event.special.change={setup:function(){return Ye.test(this.nodeName)?("checkbox"!==this.type&&"radio"!==this.type||(pe.event.add(this,"propertychange._change",function(e){"checked"===e.originalEvent.propertyName&&(this._justChanged=!0)}),pe.event.add(this,"click._change",function(e){this._justChanged&&!e.isTrigger&&(this._justChanged=!1),pe.event.simulate("change",this,e)})),!1):void pe.event.add(this,"beforeactivate._change",function(e){var t=e.target;Ye.test(t.nodeName)&&!pe._data(t,"change")&&(pe.event.add(t,"change._change",function(e){!this.parentNode||e.isSimulated||e.isTrigger||pe.event.simulate("change",this.parentNode,e)}),pe._data(t,"change",!0))})},handle:function(e){var t=e.target;if(this!==t||e.isSimulated||e.isTrigger||"radio"!==t.type&&"checkbox"!==t.type)return e.handleObj.handler.apply(this,arguments)},teardown:function(){return pe.event.remove(this,"._change"),!Ye.test(this.nodeName)}}),fe.focusin||pe.each({focus:"focusin",blur:"focusout"},function(e,t){var n=function(e){pe.event.simulate(t,e.target,pe.event.fix(e))};pe.event.special[t]={setup:function(){var r=this.ownerDocument||this,i=pe._data(r,t);i||r.addEventListener(e,n,!0),pe._data(r,t,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this,i=pe._data(r,t)-1;i?pe._data(r,t,i):(r.removeEventListener(e,n,!0),pe._removeData(r,t))}}}),pe.fn.extend({on:function(e,t,n,r){return w(this,e,t,n,r)},one:function(e,t,n,r){return w(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,pe(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return t!==!1&&"function"!=typeof t||(n=t,t=void 0),n===!1&&(n=x),this.each(function(){pe.event.remove(this,e,n,t)})},trigger:function(e,t){return this.each(function(){pe.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return pe.event.trigger(e,t,n,!0)}});var Ze=/ jQuery\d+="(?:null|\d+)"/g,et=new RegExp("<(?:"+ze+")[\\s/>]","i"),tt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,nt=/<script|<style|<link/i,rt=/checked\s*(?:[^=]|=\s*.checked.)/i,it=/^true\/(.*)/,ot=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,at=p(re),st=at.appendChild(re.createElement("div"));pe.extend({htmlPrefilter:function(e){return e.replace(tt,"<$1></$2>")},clone:function(e,t,n){var r,i,o,a,s,u=pe.contains(e.ownerDocument,e);if(fe.html5Clone||pe.isXMLDoc(e)||!et.test("<"+e.nodeName+">")?o=e.cloneNode(!0):(st.innerHTML=e.outerHTML,st.removeChild(o=st.firstChild)),!(fe.noCloneEvent&&fe.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||pe.isXMLDoc(e)))for(r=h(o),s=h(e),a=0;null!=(i=s[a]);++a)r[a]&&k(i,r[a]);if(t)if(n)for(s=s||h(e),r=r||h(o),a=0;null!=(i=s[a]);a++)N(i,r[a]);else N(e,o);return r=h(o,"script"),r.length>0&&g(r,!u&&h(e,"script")),r=s=i=null,o},cleanData:function(e,t){for(var n,r,i,o,a=0,s=pe.expando,u=pe.cache,l=fe.attributes,c=pe.event.special;null!=(n=e[a]);a++)if((t||He(n))&&(i=n[s],o=i&&u[i])){if(o.events)for(r in o.events)c[r]?pe.event.remove(n,r):pe.removeEvent(n,r,o.handle);u[i]&&(delete u[i],l||"undefined"==typeof n.removeAttribute?n[s]=void 0:n.removeAttribute(s),ne.push(i))}}}),pe.fn.extend({domManip:S,detach:function(e){return A(this,e,!0)},remove:function(e){return A(this,e)},text:function(e){return Pe(this,function(e){return void 0===e?pe.text(this):this.empty().append((this[0]&&this[0].ownerDocument||re).createTextNode(e))},null,e,arguments.length)},append:function(){return S(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=T(this,e);t.appendChild(e)}})},prepend:function(){return S(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=T(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return S(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return S(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++){for(1===e.nodeType&&pe.cleanData(h(e,!1));e.firstChild;)e.removeChild(e.firstChild);e.options&&pe.nodeName(e,"select")&&(e.options.length=0)}return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return pe.clone(this,e,t)})},html:function(e){return Pe(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e)return 1===t.nodeType?t.innerHTML.replace(Ze,""):void 0;if("string"==typeof e&&!nt.test(e)&&(fe.htmlSerialize||!et.test(e))&&(fe.leadingWhitespace||!$e.test(e))&&!Xe[(We.exec(e)||["",""])[1].toLowerCase()]){e=pe.htmlPrefilter(e);try{for(;n<r;n++)t=this[n]||{},1===t.nodeType&&(pe.cleanData(h(t,!1)),t.innerHTML=e);t=0}catch(i){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=[];return S(this,arguments,function(t){var n=this.parentNode;pe.inArray(this,e)<0&&(pe.cleanData(h(this)), +n&&n.replaceChild(t,this))},e)}}),pe.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){pe.fn[e]=function(e){for(var n,r=0,i=[],o=pe(e),a=o.length-1;r<=a;r++)n=r===a?this:this.clone(!0),pe(o[r])[t](n),ae.apply(i,n.get());return this.pushStack(i)}});var ut,lt={HTML:"block",BODY:"block"},ct=/^margin/,ft=new RegExp("^("+Fe+")(?!px)[a-z%]+$","i"),dt=function(e,t,n,r){var i,o,a={};for(o in t)a[o]=e.style[o],e.style[o]=t[o];i=n.apply(e,r||[]);for(o in t)e.style[o]=a[o];return i},pt=re.documentElement;!function(){function t(){var t,c,f=re.documentElement;f.appendChild(u),l.style.cssText="-webkit-box-sizing:border-box;box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%",n=i=s=!1,r=a=!0,e.getComputedStyle&&(c=e.getComputedStyle(l),n="1%"!==(c||{}).top,s="2px"===(c||{}).marginLeft,i="4px"===(c||{width:"4px"}).width,l.style.marginRight="50%",r="4px"===(c||{marginRight:"4px"}).marginRight,t=l.appendChild(re.createElement("div")),t.style.cssText=l.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",t.style.marginRight=t.style.width="0",l.style.width="1px",a=!parseFloat((e.getComputedStyle(t)||{}).marginRight),l.removeChild(t)),l.style.display="none",o=0===l.getClientRects().length,o&&(l.style.display="",l.innerHTML="<table><tr><td></td><td>t</td></tr></table>",t=l.getElementsByTagName("td"),t[0].style.cssText="margin:0;border:0;padding:0;display:none",o=0===t[0].offsetHeight,o&&(t[0].style.display="",t[1].style.display="none",o=0===t[0].offsetHeight)),f.removeChild(u)}var n,r,i,o,a,s,u=re.createElement("div"),l=re.createElement("div");l.style&&(l.style.cssText="float:left;opacity:.5",fe.opacity="0.5"===l.style.opacity,fe.cssFloat=!!l.style.cssFloat,l.style.backgroundClip="content-box",l.cloneNode(!0).style.backgroundClip="",fe.clearCloneStyle="content-box"===l.style.backgroundClip,u=re.createElement("div"),u.style.cssText="border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute",l.innerHTML="",u.appendChild(l),fe.boxSizing=""===l.style.boxSizing||""===l.style.MozBoxSizing||""===l.style.WebkitBoxSizing,pe.extend(fe,{reliableHiddenOffsets:function(){return null==n&&t(),o},boxSizingReliable:function(){return null==n&&t(),i},pixelMarginRight:function(){return null==n&&t(),r},pixelPosition:function(){return null==n&&t(),n},reliableMarginRight:function(){return null==n&&t(),a},reliableMarginLeft:function(){return null==n&&t(),s}}))}();var ht,gt,mt=/^(top|right|bottom|left)$/;e.getComputedStyle?(ht=function(t){var n=t.ownerDocument.defaultView;return n&&n.opener||(n=e),n.getComputedStyle(t)},gt=function(e,t,n){var r,i,o,a,s=e.style;return n=n||ht(e),a=n?n.getPropertyValue(t)||n[t]:void 0,""!==a&&void 0!==a||pe.contains(e.ownerDocument,e)||(a=pe.style(e,t)),n&&!fe.pixelMarginRight()&&ft.test(a)&&ct.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o),void 0===a?a:a+""}):pt.currentStyle&&(ht=function(e){return e.currentStyle},gt=function(e,t,n){var r,i,o,a,s=e.style;return n=n||ht(e),a=n?n[t]:void 0,null==a&&s&&s[t]&&(a=s[t]),ft.test(a)&&!mt.test(t)&&(r=s.left,i=e.runtimeStyle,o=i&&i.left,o&&(i.left=e.currentStyle.left),s.left="fontSize"===t?"1em":a,a=s.pixelLeft+"px",s.left=r,o&&(i.left=o)),void 0===a?a:a+""||"auto"});var yt=/alpha\([^)]*\)/i,vt=/opacity\s*=\s*([^)]*)/i,xt=/^(none|table(?!-c[ea]).+)/,bt=new RegExp("^("+Fe+")(.*)$","i"),wt={position:"absolute",visibility:"hidden",display:"block"},Tt={letterSpacing:"0",fontWeight:"400"},Ct=["Webkit","O","Moz","ms"],Et=re.createElement("div").style;pe.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=gt(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":fe.cssFloat?"cssFloat":"styleFloat"},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=pe.camelCase(t),u=e.style;if(t=pe.cssProps[s]||(pe.cssProps[s]=H(s)||s),a=pe.cssHooks[t]||pe.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:u[t];if(o=typeof n,"string"===o&&(i=Me.exec(n))&&i[1]&&(n=d(e,t,i),o="number"),null!=n&&n===n&&("number"===o&&(n+=i&&i[3]||(pe.cssNumber[s]?"":"px")),fe.clearCloneStyle||""!==n||0!==t.indexOf("background")||(u[t]="inherit"),!(a&&"set"in a&&void 0===(n=a.set(e,n,r)))))try{u[t]=n}catch(l){}}},css:function(e,t,n,r){var i,o,a,s=pe.camelCase(t);return t=pe.cssProps[s]||(pe.cssProps[s]=H(s)||s),a=pe.cssHooks[t]||pe.cssHooks[s],a&&"get"in a&&(o=a.get(e,!0,n)),void 0===o&&(o=gt(e,t,r)),"normal"===o&&t in Tt&&(o=Tt[t]),""===n||n?(i=parseFloat(o),n===!0||isFinite(i)?i||0:o):o}}),pe.each(["height","width"],function(e,t){pe.cssHooks[t]={get:function(e,n,r){if(n)return xt.test(pe.css(e,"display"))&&0===e.offsetWidth?dt(e,wt,function(){return M(e,t,r)}):M(e,t,r)},set:function(e,n,r){var i=r&&ht(e);return _(e,n,r?F(e,t,r,fe.boxSizing&&"border-box"===pe.css(e,"boxSizing",!1,i),i):0)}}}),fe.opacity||(pe.cssHooks.opacity={get:function(e,t){return vt.test((t&&e.currentStyle?e.currentStyle.filter:e.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":t?"1":""},set:function(e,t){var n=e.style,r=e.currentStyle,i=pe.isNumeric(t)?"alpha(opacity="+100*t+")":"",o=r&&r.filter||n.filter||"";n.zoom=1,(t>=1||""===t)&&""===pe.trim(o.replace(yt,""))&&n.removeAttribute&&(n.removeAttribute("filter"),""===t||r&&!r.filter)||(n.filter=yt.test(o)?o.replace(yt,i):o+" "+i)}}),pe.cssHooks.marginRight=L(fe.reliableMarginRight,function(e,t){if(t)return dt(e,{display:"inline-block"},gt,[e,"marginRight"])}),pe.cssHooks.marginLeft=L(fe.reliableMarginLeft,function(e,t){if(t)return(parseFloat(gt(e,"marginLeft"))||(pe.contains(e.ownerDocument,e)?e.getBoundingClientRect().left-dt(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}):0))+"px"}),pe.each({margin:"",padding:"",border:"Width"},function(e,t){pe.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];r<4;r++)i[e+Oe[r]+t]=o[r]||o[r-2]||o[0];return i}},ct.test(e)||(pe.cssHooks[e+t].set=_)}),pe.fn.extend({css:function(e,t){return Pe(this,function(e,t,n){var r,i,o={},a=0;if(pe.isArray(t)){for(r=ht(e),i=t.length;a<i;a++)o[t[a]]=pe.css(e,t[a],!1,r);return o}return void 0!==n?pe.style(e,t,n):pe.css(e,t)},e,t,arguments.length>1)},show:function(){return q(this,!0)},hide:function(){return q(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){Re(this)?pe(this).show():pe(this).hide()})}}),pe.Tween=O,O.prototype={constructor:O,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||pe.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(pe.cssNumber[n]?"":"px")},cur:function(){var e=O.propHooks[this.prop];return e&&e.get?e.get(this):O.propHooks._default.get(this)},run:function(e){var t,n=O.propHooks[this.prop];return this.options.duration?this.pos=t=pe.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):O.propHooks._default.set(this),this}},O.prototype.init.prototype=O.prototype,O.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=pe.css(e.elem,e.prop,""),t&&"auto"!==t?t:0)},set:function(e){pe.fx.step[e.prop]?pe.fx.step[e.prop](e):1!==e.elem.nodeType||null==e.elem.style[pe.cssProps[e.prop]]&&!pe.cssHooks[e.prop]?e.elem[e.prop]=e.now:pe.style(e.elem,e.prop,e.now+e.unit)}}},O.propHooks.scrollTop=O.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},pe.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},pe.fx=O.prototype.init,pe.fx.step={};var Nt,kt,St=/^(?:toggle|show|hide)$/,At=/queueHooks$/;pe.Animation=pe.extend($,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return d(n.elem,e,Me.exec(t),n),n}]},tweener:function(e,t){pe.isFunction(e)?(t=e,e=["*"]):e=e.match(De);for(var n,r=0,i=e.length;r<i;r++)n=e[r],$.tweeners[n]=$.tweeners[n]||[],$.tweeners[n].unshift(t)},prefilters:[W],prefilter:function(e,t){t?$.prefilters.unshift(e):$.prefilters.push(e)}}),pe.speed=function(e,t,n){var r=e&&"object"==typeof e?pe.extend({},e):{complete:n||!n&&t||pe.isFunction(e)&&e,duration:e,easing:n&&t||t&&!pe.isFunction(t)&&t};return r.duration=pe.fx.off?0:"number"==typeof r.duration?r.duration:r.duration in pe.fx.speeds?pe.fx.speeds[r.duration]:pe.fx.speeds._default,null!=r.queue&&r.queue!==!0||(r.queue="fx"),r.old=r.complete,r.complete=function(){pe.isFunction(r.old)&&r.old.call(this),r.queue&&pe.dequeue(this,r.queue)},r},pe.fn.extend({fadeTo:function(e,t,n,r){return this.filter(Re).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=pe.isEmptyObject(e),o=pe.speed(t,n,r),a=function(){var t=$(this,pe.extend({},e),o);(i||pe._data(this,"finish"))&&t.stop(!0)};return a.finish=a,i||o.queue===!1?this.each(a):this.queue(o.queue,a)},stop:function(e,t,n){var r=function(e){var t=e.stop;delete e.stop,t(n)};return"string"!=typeof e&&(n=t,t=e,e=void 0),t&&e!==!1&&this.queue(e||"fx",[]),this.each(function(){var t=!0,i=null!=e&&e+"queueHooks",o=pe.timers,a=pe._data(this);if(i)a[i]&&a[i].stop&&r(a[i]);else for(i in a)a[i]&&a[i].stop&&At.test(i)&&r(a[i]);for(i=o.length;i--;)o[i].elem!==this||null!=e&&o[i].queue!==e||(o[i].anim.stop(n),t=!1,o.splice(i,1));!t&&n||pe.dequeue(this,e)})},finish:function(e){return e!==!1&&(e=e||"fx"),this.each(function(){var t,n=pe._data(this),r=n[e+"queue"],i=n[e+"queueHooks"],o=pe.timers,a=r?r.length:0;for(n.finish=!0,pe.queue(this,e,[]),i&&i.stop&&i.stop.call(this,!0),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop(!0),o.splice(t,1));for(t=0;t<a;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish})}}),pe.each(["toggle","show","hide"],function(e,t){var n=pe.fn[t];pe.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(P(t,!0),e,r,i)}}),pe.each({slideDown:P("show"),slideUp:P("hide"),slideToggle:P("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){pe.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),pe.timers=[],pe.fx.tick=function(){var e,t=pe.timers,n=0;for(Nt=pe.now();n<t.length;n++)e=t[n],e()||t[n]!==e||t.splice(n--,1);t.length||pe.fx.stop(),Nt=void 0},pe.fx.timer=function(e){pe.timers.push(e),e()?pe.fx.start():pe.timers.pop()},pe.fx.interval=13,pe.fx.start=function(){kt||(kt=e.setInterval(pe.fx.tick,pe.fx.interval))},pe.fx.stop=function(){e.clearInterval(kt),kt=null},pe.fx.speeds={slow:600,fast:200,_default:400},pe.fn.delay=function(t,n){return t=pe.fx?pe.fx.speeds[t]||t:t,n=n||"fx",this.queue(n,function(n,r){var i=e.setTimeout(n,t);r.stop=function(){e.clearTimeout(i)}})},function(){var e,t=re.createElement("input"),n=re.createElement("div"),r=re.createElement("select"),i=r.appendChild(re.createElement("option"));n=re.createElement("div"),n.setAttribute("className","t"),n.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",e=n.getElementsByTagName("a")[0],t.setAttribute("type","checkbox"),n.appendChild(t),e=n.getElementsByTagName("a")[0],e.style.cssText="top:1px",fe.getSetAttribute="t"!==n.className,fe.style=/top/.test(e.getAttribute("style")),fe.hrefNormalized="/a"===e.getAttribute("href"),fe.checkOn=!!t.value,fe.optSelected=i.selected,fe.enctype=!!re.createElement("form").enctype,r.disabled=!0,fe.optDisabled=!i.disabled,t=re.createElement("input"),t.setAttribute("value",""),fe.input=""===t.getAttribute("value"),t.value="t",t.setAttribute("type","radio"),fe.radioValue="t"===t.value}();var Dt=/\r/g,jt=/[\x20\t\r\n\f]+/g;pe.fn.extend({val:function(e){var t,n,r,i=this[0];{if(arguments.length)return r=pe.isFunction(e),this.each(function(n){var i;1===this.nodeType&&(i=r?e.call(this,n,pe(this).val()):e,null==i?i="":"number"==typeof i?i+="":pe.isArray(i)&&(i=pe.map(i,function(e){return null==e?"":e+""})),t=pe.valHooks[this.type]||pe.valHooks[this.nodeName.toLowerCase()],t&&"set"in t&&void 0!==t.set(this,i,"value")||(this.value=i))});if(i)return t=pe.valHooks[i.type]||pe.valHooks[i.nodeName.toLowerCase()],t&&"get"in t&&void 0!==(n=t.get(i,"value"))?n:(n=i.value,"string"==typeof n?n.replace(Dt,""):null==n?"":n)}}}),pe.extend({valHooks:{option:{get:function(e){var t=pe.find.attr(e,"value");return null!=t?t:pe.trim(pe.text(e)).replace(jt," ")}},select:{get:function(e){for(var t,n,r=e.options,i=e.selectedIndex,o="select-one"===e.type||i<0,a=o?null:[],s=o?i+1:r.length,u=i<0?s:o?i:0;u<s;u++)if(n=r[u],(n.selected||u===i)&&(fe.optDisabled?!n.disabled:null===n.getAttribute("disabled"))&&(!n.parentNode.disabled||!pe.nodeName(n.parentNode,"optgroup"))){if(t=pe(n).val(),o)return t;a.push(t)}return a},set:function(e,t){for(var n,r,i=e.options,o=pe.makeArray(t),a=i.length;a--;)if(r=i[a],pe.inArray(pe.valHooks.option.get(r),o)>-1)try{r.selected=n=!0}catch(s){r.scrollHeight}else r.selected=!1;return n||(e.selectedIndex=-1),i}}}}),pe.each(["radio","checkbox"],function(){pe.valHooks[this]={set:function(e,t){if(pe.isArray(t))return e.checked=pe.inArray(pe(e).val(),t)>-1}},fe.checkOn||(pe.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})});var Lt,Ht,qt=pe.expr.attrHandle,_t=/^(?:checked|selected)$/i,Ft=fe.getSetAttribute,Mt=fe.input;pe.fn.extend({attr:function(e,t){return Pe(this,pe.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){pe.removeAttr(this,e)})}}),pe.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?pe.prop(e,t,n):(1===o&&pe.isXMLDoc(e)||(t=t.toLowerCase(),i=pe.attrHooks[t]||(pe.expr.match.bool.test(t)?Ht:Lt)),void 0!==n?null===n?void pe.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:(r=pe.find.attr(e,t),null==r?void 0:r))},attrHooks:{type:{set:function(e,t){if(!fe.radioValue&&"radio"===t&&pe.nodeName(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r,i=0,o=t&&t.match(De);if(o&&1===e.nodeType)for(;n=o[i++];)r=pe.propFix[n]||n,pe.expr.match.bool.test(n)?Mt&&Ft||!_t.test(n)?e[r]=!1:e[pe.camelCase("default-"+n)]=e[r]=!1:pe.attr(e,n,""),e.removeAttribute(Ft?n:r)}}),Ht={set:function(e,t,n){return t===!1?pe.removeAttr(e,n):Mt&&Ft||!_t.test(n)?e.setAttribute(!Ft&&pe.propFix[n]||n,n):e[pe.camelCase("default-"+n)]=e[n]=!0,n}},pe.each(pe.expr.match.bool.source.match(/\w+/g),function(e,t){var n=qt[t]||pe.find.attr;Mt&&Ft||!_t.test(t)?qt[t]=function(e,t,r){var i,o;return r||(o=qt[t],qt[t]=i,i=null!=n(e,t,r)?t.toLowerCase():null,qt[t]=o),i}:qt[t]=function(e,t,n){if(!n)return e[pe.camelCase("default-"+t)]?t.toLowerCase():null}}),Mt&&Ft||(pe.attrHooks.value={set:function(e,t,n){return pe.nodeName(e,"input")?void(e.defaultValue=t):Lt&&Lt.set(e,t,n)}}),Ft||(Lt={set:function(e,t,n){var r=e.getAttributeNode(n);if(r||e.setAttributeNode(r=e.ownerDocument.createAttribute(n)),r.value=t+="","value"===n||t===e.getAttribute(n))return t}},qt.id=qt.name=qt.coords=function(e,t,n){var r;if(!n)return(r=e.getAttributeNode(t))&&""!==r.value?r.value:null},pe.valHooks.button={get:function(e,t){var n=e.getAttributeNode(t);if(n&&n.specified)return n.value},set:Lt.set},pe.attrHooks.contenteditable={set:function(e,t,n){Lt.set(e,""!==t&&t,n)}},pe.each(["width","height"],function(e,t){pe.attrHooks[t]={set:function(e,n){if(""===n)return e.setAttribute(t,"auto"),n}}})),fe.style||(pe.attrHooks.style={get:function(e){return e.style.cssText||void 0},set:function(e,t){return e.style.cssText=t+""}});var Ot=/^(?:input|select|textarea|button|object)$/i,Rt=/^(?:a|area)$/i;pe.fn.extend({prop:function(e,t){return Pe(this,pe.prop,e,t,arguments.length>1)},removeProp:function(e){return e=pe.propFix[e]||e,this.each(function(){try{this[e]=void 0,delete this[e]}catch(t){}})}}),pe.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&pe.isXMLDoc(e)||(t=pe.propFix[t]||t,i=pe.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=pe.find.attr(e,"tabindex");return t?parseInt(t,10):Ot.test(e.nodeName)||Rt.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),fe.hrefNormalized||pe.each(["href","src"],function(e,t){pe.propHooks[t]={get:function(e){return e.getAttribute(t,4)}}}),fe.optSelected||(pe.propHooks.selected={get:function(e){var t=e.parentNode;return t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex),null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),pe.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){pe.propFix[this.toLowerCase()]=this}),fe.enctype||(pe.propFix.enctype="encoding");var Pt=/[\t\r\n\f]/g;pe.fn.extend({addClass:function(e){var t,n,r,i,o,a,s,u=0;if(pe.isFunction(e))return this.each(function(t){pe(this).addClass(e.call(this,t,z(this)))});if("string"==typeof e&&e)for(t=e.match(De)||[];n=this[u++];)if(i=z(n),r=1===n.nodeType&&(" "+i+" ").replace(Pt," ")){for(a=0;o=t[a++];)r.indexOf(" "+o+" ")<0&&(r+=o+" ");s=pe.trim(r),i!==s&&pe.attr(n,"class",s)}return this},removeClass:function(e){var t,n,r,i,o,a,s,u=0;if(pe.isFunction(e))return this.each(function(t){pe(this).removeClass(e.call(this,t,z(this)))});if(!arguments.length)return this.attr("class","");if("string"==typeof e&&e)for(t=e.match(De)||[];n=this[u++];)if(i=z(n),r=1===n.nodeType&&(" "+i+" ").replace(Pt," ")){for(a=0;o=t[a++];)for(;r.indexOf(" "+o+" ")>-1;)r=r.replace(" "+o+" "," ");s=pe.trim(r),i!==s&&pe.attr(n,"class",s)}return this},toggleClass:function(e,t){var n=typeof e;return"boolean"==typeof t&&"string"===n?t?this.addClass(e):this.removeClass(e):pe.isFunction(e)?this.each(function(n){pe(this).toggleClass(e.call(this,n,z(this),t),t)}):this.each(function(){var t,r,i,o;if("string"===n)for(r=0,i=pe(this),o=e.match(De)||[];t=o[r++];)i.hasClass(t)?i.removeClass(t):i.addClass(t);else void 0!==e&&"boolean"!==n||(t=z(this),t&&pe._data(this,"__className__",t),pe.attr(this,"class",t||e===!1?"":pe._data(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;for(t=" "+e+" ";n=this[r++];)if(1===n.nodeType&&(" "+z(n)+" ").replace(Pt," ").indexOf(t)>-1)return!0;return!1}}),pe.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(e,t){pe.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),pe.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}});var Bt=e.location,Wt=pe.now(),It=/\?/,$t=/(,)|(\[|{)|(}|])|"(?:[^"\\\r\n]|\\["\\\/bfnrt]|\\u[\da-fA-F]{4})*"\s*:?|true|false|null|-?(?!0\d)\d+(?:\.\d+|)(?:[eE][+-]?\d+|)/g;pe.parseJSON=function(t){if(e.JSON&&e.JSON.parse)return e.JSON.parse(t+"");var n,r=null,i=pe.trim(t+"");return i&&!pe.trim(i.replace($t,function(e,t,i,o){return n&&t&&(r=0),0===r?e:(n=i||t,r+=!o-!i,"")}))?Function("return "+i)():pe.error("Invalid JSON: "+t)},pe.parseXML=function(t){var n,r;if(!t||"string"!=typeof t)return null;try{e.DOMParser?(r=new e.DOMParser,n=r.parseFromString(t,"text/xml")):(n=new e.ActiveXObject("Microsoft.XMLDOM"),n.async="false",n.loadXML(t))}catch(i){n=void 0}return n&&n.documentElement&&!n.getElementsByTagName("parsererror").length||pe.error("Invalid XML: "+t),n};var zt=/#.*$/,Xt=/([?&])_=[^&]*/,Ut=/^(.*?):[ \t]*([^\r\n]*)\r?$/gm,Vt=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Yt=/^(?:GET|HEAD)$/,Jt=/^\/\//,Gt=/^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,Kt={},Qt={},Zt="*/".concat("*"),en=Bt.href,tn=Gt.exec(en.toLowerCase())||[];pe.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:en,type:"GET",isLocal:Vt.test(tn[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Zt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":pe.parseJSON,"text xml":pe.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?V(V(e,pe.ajaxSettings),t):V(pe.ajaxSettings,e)},ajaxPrefilter:X(Kt),ajaxTransport:X(Qt),ajax:function(t,n){function r(t,n,r,i){var o,f,v,x,w,C=n;2!==b&&(b=2,u&&e.clearTimeout(u),c=void 0,s=i||"",T.readyState=t>0?4:0,o=t>=200&&t<300||304===t,r&&(x=Y(d,T,r)),x=J(d,x,T,o),o?(d.ifModified&&(w=T.getResponseHeader("Last-Modified"),w&&(pe.lastModified[a]=w),w=T.getResponseHeader("etag"),w&&(pe.etag[a]=w)),204===t||"HEAD"===d.type?C="nocontent":304===t?C="notmodified":(C=x.state,f=x.data,v=x.error,o=!v)):(v=C,!t&&C||(C="error",t<0&&(t=0))),T.status=t,T.statusText=(n||C)+"",o?g.resolveWith(p,[f,C,T]):g.rejectWith(p,[T,C,v]),T.statusCode(y),y=void 0,l&&h.trigger(o?"ajaxSuccess":"ajaxError",[T,d,o?f:v]),m.fireWith(p,[T,C]),l&&(h.trigger("ajaxComplete",[T,d]),--pe.active||pe.event.trigger("ajaxStop")))}"object"==typeof t&&(n=t,t=void 0),n=n||{};var i,o,a,s,u,l,c,f,d=pe.ajaxSetup({},n),p=d.context||d,h=d.context&&(p.nodeType||p.jquery)?pe(p):pe.event,g=pe.Deferred(),m=pe.Callbacks("once memory"),y=d.statusCode||{},v={},x={},b=0,w="canceled",T={readyState:0,getResponseHeader:function(e){var t;if(2===b){if(!f)for(f={};t=Ut.exec(s);)f[t[1].toLowerCase()]=t[2];t=f[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return 2===b?s:null},setRequestHeader:function(e,t){var n=e.toLowerCase();return b||(e=x[n]=x[n]||e,v[e]=t),this},overrideMimeType:function(e){return b||(d.mimeType=e),this},statusCode:function(e){var t;if(e)if(b<2)for(t in e)y[t]=[y[t],e[t]];else T.always(e[T.status]);return this},abort:function(e){var t=e||w;return c&&c.abort(t),r(0,t),this}};if(g.promise(T).complete=m.add,T.success=T.done,T.error=T.fail,d.url=((t||d.url||en)+"").replace(zt,"").replace(Jt,tn[1]+"//"),d.type=n.method||n.type||d.method||d.type,d.dataTypes=pe.trim(d.dataType||"*").toLowerCase().match(De)||[""],null==d.crossDomain&&(i=Gt.exec(d.url.toLowerCase()),d.crossDomain=!(!i||i[1]===tn[1]&&i[2]===tn[2]&&(i[3]||("http:"===i[1]?"80":"443"))===(tn[3]||("http:"===tn[1]?"80":"443")))),d.data&&d.processData&&"string"!=typeof d.data&&(d.data=pe.param(d.data,d.traditional)),U(Kt,d,n,T),2===b)return T;l=pe.event&&d.global,l&&0===pe.active++&&pe.event.trigger("ajaxStart"),d.type=d.type.toUpperCase(),d.hasContent=!Yt.test(d.type),a=d.url,d.hasContent||(d.data&&(a=d.url+=(It.test(a)?"&":"?")+d.data,delete d.data),d.cache===!1&&(d.url=Xt.test(a)?a.replace(Xt,"$1_="+Wt++):a+(It.test(a)?"&":"?")+"_="+Wt++)),d.ifModified&&(pe.lastModified[a]&&T.setRequestHeader("If-Modified-Since",pe.lastModified[a]),pe.etag[a]&&T.setRequestHeader("If-None-Match",pe.etag[a])),(d.data&&d.hasContent&&d.contentType!==!1||n.contentType)&&T.setRequestHeader("Content-Type",d.contentType),T.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+("*"!==d.dataTypes[0]?", "+Zt+"; q=0.01":""):d.accepts["*"]);for(o in d.headers)T.setRequestHeader(o,d.headers[o]);if(d.beforeSend&&(d.beforeSend.call(p,T,d)===!1||2===b))return T.abort();w="abort";for(o in{success:1,error:1,complete:1})T[o](d[o]);if(c=U(Qt,d,n,T)){if(T.readyState=1,l&&h.trigger("ajaxSend",[T,d]),2===b)return T;d.async&&d.timeout>0&&(u=e.setTimeout(function(){T.abort("timeout")},d.timeout));try{b=1,c.send(v,r)}catch(C){if(!(b<2))throw C;r(-1,C)}}else r(-1,"No Transport");return T},getJSON:function(e,t,n){return pe.get(e,t,n,"json")},getScript:function(e,t){return pe.get(e,void 0,t,"script")}}),pe.each(["get","post"],function(e,t){pe[t]=function(e,n,r,i){return pe.isFunction(n)&&(i=i||r,r=n,n=void 0),pe.ajax(pe.extend({url:e,type:t,dataType:i,data:n,success:r},pe.isPlainObject(e)&&e))}}),pe._evalUrl=function(e){return pe.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,"throws":!0})},pe.fn.extend({wrapAll:function(e){if(pe.isFunction(e))return this.each(function(t){pe(this).wrapAll(e.call(this,t))});if(this[0]){var t=pe(e,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var e=this;e.firstChild&&1===e.firstChild.nodeType;)e=e.firstChild;return e}).append(this)}return this},wrapInner:function(e){return pe.isFunction(e)?this.each(function(t){pe(this).wrapInner(e.call(this,t))}):this.each(function(){var t=pe(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=pe.isFunction(e);return this.each(function(n){pe(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){pe.nodeName(this,"body")||pe(this).replaceWith(this.childNodes)}).end()}}),pe.expr.filters.hidden=function(e){return fe.reliableHiddenOffsets()?e.offsetWidth<=0&&e.offsetHeight<=0&&!e.getClientRects().length:K(e)},pe.expr.filters.visible=function(e){return!pe.expr.filters.hidden(e)};var nn=/%20/g,rn=/\[\]$/,on=/\r?\n/g,an=/^(?:submit|button|image|reset|file)$/i,sn=/^(?:input|select|textarea|keygen)/i;pe.param=function(e,t){var n,r=[],i=function(e,t){t=pe.isFunction(t)?t():null==t?"":t,r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};if(void 0===t&&(t=pe.ajaxSettings&&pe.ajaxSettings.traditional),pe.isArray(e)||e.jquery&&!pe.isPlainObject(e))pe.each(e,function(){i(this.name,this.value)});else for(n in e)Q(n,e[n],t,i);return r.join("&").replace(nn,"+")},pe.fn.extend({serialize:function(){return pe.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=pe.prop(this,"elements");return e?pe.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!pe(this).is(":disabled")&&sn.test(this.nodeName)&&!an.test(e)&&(this.checked||!Be.test(e))}).map(function(e,t){var n=pe(this).val();return null==n?null:pe.isArray(n)?pe.map(n,function(e){return{name:t.name,value:e.replace(on,"\r\n")}}):{name:t.name,value:n.replace(on,"\r\n")}}).get()}}),pe.ajaxSettings.xhr=void 0!==e.ActiveXObject?function(){return this.isLocal?ee():re.documentMode>8?Z():/^(get|post|head|put|delete|options)$/i.test(this.type)&&Z()||ee()}:Z;var un=0,ln={},cn=pe.ajaxSettings.xhr();e.attachEvent&&e.attachEvent("onunload",function(){for(var e in ln)ln[e](void 0,!0)}),fe.cors=!!cn&&"withCredentials"in cn,cn=fe.ajax=!!cn,cn&&pe.ajaxTransport(function(t){if(!t.crossDomain||fe.cors){var n;return{send:function(r,i){var o,a=t.xhr(),s=++un;if(a.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(o in t.xhrFields)a[o]=t.xhrFields[o];t.mimeType&&a.overrideMimeType&&a.overrideMimeType(t.mimeType),t.crossDomain||r["X-Requested-With"]||(r["X-Requested-With"]="XMLHttpRequest");for(o in r)void 0!==r[o]&&a.setRequestHeader(o,r[o]+"");a.send(t.hasContent&&t.data||null),n=function(e,r){var o,u,l;if(n&&(r||4===a.readyState))if(delete ln[s],n=void 0,a.onreadystatechange=pe.noop,r)4!==a.readyState&&a.abort();else{l={},o=a.status,"string"==typeof a.responseText&&(l.text=a.responseText);try{u=a.statusText}catch(c){u=""}o||!t.isLocal||t.crossDomain?1223===o&&(o=204):o=l.text?200:404}l&&i(o,u,l,a.getAllResponseHeaders())},t.async?4===a.readyState?e.setTimeout(n):a.onreadystatechange=ln[s]=n:n()},abort:function(){n&&n(void 0,!0)}}}}),pe.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return pe.globalEval(e),e}}}),pe.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET",e.global=!1)}),pe.ajaxTransport("script",function(e){if(e.crossDomain){var t,n=re.head||pe("head")[0]||re.documentElement;return{send:function(r,i){t=re.createElement("script"),t.async=!0,e.scriptCharset&&(t.charset=e.scriptCharset),t.src=e.url,t.onload=t.onreadystatechange=function(e,n){(n||!t.readyState||/loaded|complete/.test(t.readyState))&&(t.onload=t.onreadystatechange=null,t.parentNode&&t.parentNode.removeChild(t),t=null,n||i(200,"success"))},n.insertBefore(t,n.firstChild)},abort:function(){t&&t.onload(void 0,!0)}}}});var fn=[],dn=/(=)\?(?=&|$)|\?\?/;pe.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=fn.pop()||pe.expando+"_"+Wt++;return this[e]=!0,e}}),pe.ajaxPrefilter("json jsonp",function(t,n,r){var i,o,a,s=t.jsonp!==!1&&(dn.test(t.url)?"url":"string"==typeof t.data&&0===(t.contentType||"").indexOf("application/x-www-form-urlencoded")&&dn.test(t.data)&&"data");if(s||"jsonp"===t.dataTypes[0])return i=t.jsonpCallback=pe.isFunction(t.jsonpCallback)?t.jsonpCallback():t.jsonpCallback,s?t[s]=t[s].replace(dn,"$1"+i):t.jsonp!==!1&&(t.url+=(It.test(t.url)?"&":"?")+t.jsonp+"="+i),t.converters["script json"]=function(){return a||pe.error(i+" was not called"),a[0]},t.dataTypes[0]="json",o=e[i],e[i]=function(){a=arguments},r.always(function(){void 0===o?pe(e).removeProp(i):e[i]=o,t[i]&&(t.jsonpCallback=n.jsonpCallback,fn.push(i)),a&&pe.isFunction(o)&&o(a[0]),a=o=void 0}),"script"}),pe.parseHTML=function(e,t,n){if(!e||"string"!=typeof e)return null;"boolean"==typeof t&&(n=t,t=!1),t=t||re;var r=Te.exec(e),i=!n&&[];return r?[t.createElement(r[1])]:(r=y([e],t,i),i&&i.length&&pe(i).remove(),pe.merge([],r.childNodes))};var pn=pe.fn.load;return pe.fn.load=function(e,t,n){if("string"!=typeof e&&pn)return pn.apply(this,arguments);var r,i,o,a=this,s=e.indexOf(" ");return s>-1&&(r=pe.trim(e.slice(s,e.length)),e=e.slice(0,s)),pe.isFunction(t)?(n=t,t=void 0):t&&"object"==typeof t&&(i="POST"),a.length>0&&pe.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done(function(e){o=arguments,a.html(r?pe("<div>").append(pe.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},pe.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){pe.fn[t]=function(e){return this.on(t,e)}}),pe.expr.filters.animated=function(e){return pe.grep(pe.timers,function(t){return e===t.elem}).length},pe.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l,c=pe.css(e,"position"),f=pe(e),d={};"static"===c&&(e.style.position="relative"),s=f.offset(),o=pe.css(e,"top"),u=pe.css(e,"left"),l=("absolute"===c||"fixed"===c)&&pe.inArray("auto",[o,u])>-1,l?(r=f.position(),a=r.top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),pe.isFunction(t)&&(t=t.call(e,n,pe.extend({},s))),null!=t.top&&(d.top=t.top-s.top+a),null!=t.left&&(d.left=t.left-s.left+i),"using"in t?t.using.call(e,d):f.css(d)}},pe.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each(function(t){pe.offset.setOffset(this,e,t)});var t,n,r={top:0,left:0},i=this[0],o=i&&i.ownerDocument;if(o)return t=o.documentElement,pe.contains(t,i)?("undefined"!=typeof i.getBoundingClientRect&&(r=i.getBoundingClientRect()),n=te(o),{top:r.top+(n.pageYOffset||t.scrollTop)-(t.clientTop||0),left:r.left+(n.pageXOffset||t.scrollLeft)-(t.clientLeft||0)}):r},position:function(){if(this[0]){var e,t,n={top:0,left:0},r=this[0];return"fixed"===pe.css(r,"position")?t=r.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),pe.nodeName(e[0],"html")||(n=e.offset()),n.top+=pe.css(e[0],"borderTopWidth",!0),n.left+=pe.css(e[0],"borderLeftWidth",!0)),{top:t.top-n.top-pe.css(r,"marginTop",!0),left:t.left-n.left-pe.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){ +for(var e=this.offsetParent;e&&!pe.nodeName(e,"html")&&"static"===pe.css(e,"position");)e=e.offsetParent;return e||pt})}}),pe.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,t){var n=/Y/.test(t);pe.fn[e]=function(r){return Pe(this,function(e,r,i){var o=te(e);return void 0===i?o?t in o?o[t]:o.document.documentElement[r]:e[r]:void(o?o.scrollTo(n?pe(o).scrollLeft():i,n?i:pe(o).scrollTop()):e[r]=i)},e,r,arguments.length,null)}}),pe.each(["top","left"],function(e,t){pe.cssHooks[t]=L(fe.pixelPosition,function(e,n){if(n)return n=gt(e,t),ft.test(n)?pe(e).position()[t]+"px":n})}),pe.each({Height:"height",Width:"width"},function(e,t){pe.each({padding:"inner"+e,content:t,"":"outer"+e},function(n,r){pe.fn[r]=function(r,i){var o=arguments.length&&(n||"boolean"!=typeof r),a=n||(r===!0||i===!0?"margin":"border");return Pe(this,function(t,n,r){var i;return pe.isWindow(t)?t.document.documentElement["client"+e]:9===t.nodeType?(i=t.documentElement,Math.max(t.body["scroll"+e],i["scroll"+e],t.body["offset"+e],i["offset"+e],i["client"+e])):void 0===r?pe.css(t,n,a):pe.style(t,n,r,a)},t,o?r:void 0,o,null)}})}),pe.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)}}),pe.fn.size=function(){return this.length},pe.fn.andSelf=pe.fn.addBack,layui.define(function(e){layui.$=pe,e("jquery",pe)}),pe});!function(e,t){"use strict";var i,n,a=e.layui&&layui.define,o={getPath:function(){var e=document.currentScript?document.currentScript.src:function(){for(var e,t=document.scripts,i=t.length-1,n=i;n>0;n--)if("interactive"===t[n].readyState){e=t[n].src;break}return e||t[i].src}();return e.substring(0,e.lastIndexOf("/")+1)}(),config:{},end:{},minIndex:0,minLeft:[],btn:["确定","取消"],type:["dialog","page","iframe","loading","tips"],getStyle:function(t,i){var n=t.currentStyle?t.currentStyle:e.getComputedStyle(t,null);return n[n.getPropertyValue?"getPropertyValue":"getAttribute"](i)},link:function(t,i,n){if(r.path){var a=document.getElementsByTagName("head")[0],s=document.createElement("link");"string"==typeof i&&(n=i);var l=(n||t).replace(/\.|\//g,""),f="layuicss-"+l,c=0;s.rel="stylesheet",s.href=r.path+t,s.id=f,document.getElementById(f)||a.appendChild(s),"function"==typeof i&&!function u(){return++c>80?e.console&&console.error("layer.css: Invalid"):void(1989===parseInt(o.getStyle(document.getElementById(f),"width"))?i():setTimeout(u,100))}()}}},r={v:"3.1.1",ie:function(){var t=navigator.userAgent.toLowerCase();return!!(e.ActiveXObject||"ActiveXObject"in e)&&((t.match(/msie\s(\d+)/)||[])[1]||"11")}(),index:e.layer&&e.layer.v?1e5:0,path:o.getPath,config:function(e,t){return e=e||{},r.cache=o.config=i.extend({},o.config,e),r.path=o.config.path||r.path,"string"==typeof e.extend&&(e.extend=[e.extend]),o.config.path&&r.ready(),e.extend?(a?layui.addcss("modules/layer/"+e.extend):o.link("theme/"+e.extend),this):this},ready:function(e){var t="layer",i="",n=(a?"modules/layer/":"theme/")+"default/layer.css?v="+r.v+i;return a?layui.addcss(n,e,t):o.link(n,e,t),this},alert:function(e,t,n){var a="function"==typeof t;return a&&(n=t),r.open(i.extend({content:e,yes:n},a?{}:t))},confirm:function(e,t,n,a){var s="function"==typeof t;return s&&(a=n,n=t),r.open(i.extend({content:e,btn:o.btn,yes:n,btn2:a},s?{}:t))},msg:function(e,n,a){var s="function"==typeof n,f=o.config.skin,c=(f?f+" "+f+"-msg":"")||"layui-layer-msg",u=l.anim.length-1;return s&&(a=n),r.open(i.extend({content:e,time:3e3,shade:!1,skin:c,title:!1,closeBtn:!1,btn:!1,resize:!1,end:a},s&&!o.config.skin?{skin:c+" layui-layer-hui",anim:u}:function(){return n=n||{},(n.icon===-1||n.icon===t&&!o.config.skin)&&(n.skin=c+" "+(n.skin||"layui-layer-hui")),n}()))},load:function(e,t){return r.open(i.extend({type:3,icon:e||0,resize:!1,shade:.01},t))},tips:function(e,t,n){return r.open(i.extend({type:4,content:[e,t],closeBtn:!1,time:3e3,shade:!1,resize:!1,fixed:!1,maxWidth:210},n))}},s=function(e){var t=this;t.index=++r.index,t.config=i.extend({},t.config,o.config,e),document.body?t.creat():setTimeout(function(){t.creat()},30)};s.pt=s.prototype;var l=["layui-layer",".layui-layer-title",".layui-layer-main",".layui-layer-dialog","layui-layer-iframe","layui-layer-content","layui-layer-btn","layui-layer-close"];l.anim=["layer-anim-00","layer-anim-01","layer-anim-02","layer-anim-03","layer-anim-04","layer-anim-05","layer-anim-06"],s.pt.config={type:0,shade:.3,fixed:!0,move:l[1],title:"信息",offset:"auto",area:"auto",closeBtn:1,time:0,zIndex:19891014,maxWidth:360,anim:0,isOutAnim:!0,icon:-1,moveType:1,resize:!0,scrollbar:!0,tips:2},s.pt.vessel=function(e,t){var n=this,a=n.index,r=n.config,s=r.zIndex+a,f="object"==typeof r.title,c=r.maxmin&&(1===r.type||2===r.type),u=r.title?'<div class="layui-layer-title" style="'+(f?r.title[1]:"")+'">'+(f?r.title[0]:r.title)+"</div>":"";return r.zIndex=s,t([r.shade?'<div class="layui-layer-shade" id="layui-layer-shade'+a+'" times="'+a+'" style="'+("z-index:"+(s-1)+"; ")+'"></div>':"",'<div class="'+l[0]+(" layui-layer-"+o.type[r.type])+(0!=r.type&&2!=r.type||r.shade?"":" layui-layer-border")+" "+(r.skin||"")+'" id="'+l[0]+a+'" type="'+o.type[r.type]+'" times="'+a+'" showtime="'+r.time+'" conType="'+(e?"object":"string")+'" style="z-index: '+s+"; width:"+r.area[0]+";height:"+r.area[1]+(r.fixed?"":";position:absolute;")+'">'+(e&&2!=r.type?"":u)+'<div id="'+(r.id||"")+'" class="layui-layer-content'+(0==r.type&&r.icon!==-1?" layui-layer-padding":"")+(3==r.type?" layui-layer-loading"+r.icon:"")+'">'+(0==r.type&&r.icon!==-1?'<i class="layui-layer-ico layui-layer-ico'+r.icon+'"></i>':"")+(1==r.type&&e?"":r.content||"")+'</div><span class="layui-layer-setwin">'+function(){var e=c?'<a class="layui-layer-min" href="javascript:;"><cite></cite></a><a class="layui-layer-ico layui-layer-max" href="javascript:;"></a>':"";return r.closeBtn&&(e+='<a class="layui-layer-ico '+l[7]+" "+l[7]+(r.title?r.closeBtn:4==r.type?"1":"2")+'" href="javascript:;"></a>'),e}()+"</span>"+(r.btn?function(){var e="";"string"==typeof r.btn&&(r.btn=[r.btn]);for(var t=0,i=r.btn.length;t<i;t++)e+='<a class="'+l[6]+t+'">'+r.btn[t]+"</a>";return'<div class="'+l[6]+" layui-layer-btn-"+(r.btnAlign||"")+'">'+e+"</div>"}():"")+(r.resize?'<span class="layui-layer-resize"></span>':"")+"</div>"],u,i('<div class="layui-layer-move"></div>')),n},s.pt.creat=function(){var e=this,t=e.config,a=e.index,s=t.content,f="object"==typeof s,c=i("body");if(!t.id||!i("#"+t.id)[0]){switch("string"==typeof t.area&&(t.area="auto"===t.area?["",""]:[t.area,""]),t.shift&&(t.anim=t.shift),6==r.ie&&(t.fixed=!1),t.type){case 0:t.btn="btn"in t?t.btn:o.btn[0],r.closeAll("dialog");break;case 2:var s=t.content=f?t.content:[t.content||"","auto"];t.content='<iframe scrolling="'+(t.content[1]||"auto")+'" allowtransparency="true" id="'+l[4]+a+'" name="'+l[4]+a+'" onload="this.className=\'\';" class="layui-layer-load" frameborder="0" src="'+t.content[0]+'"></iframe>';break;case 3:delete t.title,delete t.closeBtn,t.icon===-1&&0===t.icon,r.closeAll("loading");break;case 4:f||(t.content=[t.content,"body"]),t.follow=t.content[1],t.content=t.content[0]+'<i class="layui-layer-TipsG"></i>',delete t.title,t.tips="object"==typeof t.tips?t.tips:[t.tips,!0],t.tipsMore||r.closeAll("tips")}if(e.vessel(f,function(n,r,u){c.append(n[0]),f?function(){2==t.type||4==t.type?function(){i("body").append(n[1])}():function(){s.parents("."+l[0])[0]||(s.data("display",s.css("display")).show().addClass("layui-layer-wrap").wrap(n[1]),i("#"+l[0]+a).find("."+l[5]).before(r))}()}():c.append(n[1]),i(".layui-layer-move")[0]||c.append(o.moveElem=u),e.layero=i("#"+l[0]+a),t.scrollbar||l.html.css("overflow","hidden").attr("layer-full",a)}).auto(a),i("#layui-layer-shade"+e.index).css({"background-color":t.shade[1]||"#000",opacity:t.shade[0]||t.shade}),2==t.type&&6==r.ie&&e.layero.find("iframe").attr("src",s[0]),4==t.type?e.tips():e.offset(),t.fixed&&n.on("resize",function(){e.offset(),(/^\d+%$/.test(t.area[0])||/^\d+%$/.test(t.area[1]))&&e.auto(a),4==t.type&&e.tips()}),t.time<=0||setTimeout(function(){r.close(e.index)},t.time),e.move().callback(),l.anim[t.anim]){var u="layer-anim "+l.anim[t.anim];e.layero.addClass(u).one("webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend",function(){i(this).removeClass(u)})}t.isOutAnim&&e.layero.data("isOutAnim",!0)}},s.pt.auto=function(e){var t=this,a=t.config,o=i("#"+l[0]+e);""===a.area[0]&&a.maxWidth>0&&(r.ie&&r.ie<8&&a.btn&&o.width(o.innerWidth()),o.outerWidth()>a.maxWidth&&o.width(a.maxWidth));var s=[o.innerWidth(),o.innerHeight()],f=o.find(l[1]).outerHeight()||0,c=o.find("."+l[6]).outerHeight()||0,u=function(e){e=o.find(e),e.height(s[1]-f-c-2*(0|parseFloat(e.css("padding-top"))))};switch(a.type){case 2:u("iframe");break;default:""===a.area[1]?a.maxHeight>0&&o.outerHeight()>a.maxHeight?(s[1]=a.maxHeight,u("."+l[5])):a.fixed&&s[1]>=n.height()&&(s[1]=n.height(),u("."+l[5])):u("."+l[5])}return t},s.pt.offset=function(){var e=this,t=e.config,i=e.layero,a=[i.outerWidth(),i.outerHeight()],o="object"==typeof t.offset;e.offsetTop=(n.height()-a[1])/2,e.offsetLeft=(n.width()-a[0])/2,o?(e.offsetTop=t.offset[0],e.offsetLeft=t.offset[1]||e.offsetLeft):"auto"!==t.offset&&("t"===t.offset?e.offsetTop=0:"r"===t.offset?e.offsetLeft=n.width()-a[0]:"b"===t.offset?e.offsetTop=n.height()-a[1]:"l"===t.offset?e.offsetLeft=0:"lt"===t.offset?(e.offsetTop=0,e.offsetLeft=0):"lb"===t.offset?(e.offsetTop=n.height()-a[1],e.offsetLeft=0):"rt"===t.offset?(e.offsetTop=0,e.offsetLeft=n.width()-a[0]):"rb"===t.offset?(e.offsetTop=n.height()-a[1],e.offsetLeft=n.width()-a[0]):e.offsetTop=t.offset),t.fixed||(e.offsetTop=/%$/.test(e.offsetTop)?n.height()*parseFloat(e.offsetTop)/100:parseFloat(e.offsetTop),e.offsetLeft=/%$/.test(e.offsetLeft)?n.width()*parseFloat(e.offsetLeft)/100:parseFloat(e.offsetLeft),e.offsetTop+=n.scrollTop(),e.offsetLeft+=n.scrollLeft()),i.attr("minLeft")&&(e.offsetTop=n.height()-(i.find(l[1]).outerHeight()||0),e.offsetLeft=i.css("left")),i.css({top:e.offsetTop,left:e.offsetLeft})},s.pt.tips=function(){var e=this,t=e.config,a=e.layero,o=[a.outerWidth(),a.outerHeight()],r=i(t.follow);r[0]||(r=i("body"));var s={width:r.outerWidth(),height:r.outerHeight(),top:r.offset().top,left:r.offset().left},f=a.find(".layui-layer-TipsG"),c=t.tips[0];t.tips[1]||f.remove(),s.autoLeft=function(){s.left+o[0]-n.width()>0?(s.tipLeft=s.left+s.width-o[0],f.css({right:12,left:"auto"})):s.tipLeft=s.left},s.where=[function(){s.autoLeft(),s.tipTop=s.top-o[1]-10,f.removeClass("layui-layer-TipsB").addClass("layui-layer-TipsT").css("border-right-color",t.tips[1])},function(){s.tipLeft=s.left+s.width+10,s.tipTop=s.top,f.removeClass("layui-layer-TipsL").addClass("layui-layer-TipsR").css("border-bottom-color",t.tips[1])},function(){s.autoLeft(),s.tipTop=s.top+s.height+10,f.removeClass("layui-layer-TipsT").addClass("layui-layer-TipsB").css("border-right-color",t.tips[1])},function(){s.tipLeft=s.left-o[0]-10,s.tipTop=s.top,f.removeClass("layui-layer-TipsR").addClass("layui-layer-TipsL").css("border-bottom-color",t.tips[1])}],s.where[c-1](),1===c?s.top-(n.scrollTop()+o[1]+16)<0&&s.where[2]():2===c?n.width()-(s.left+s.width+o[0]+16)>0||s.where[3]():3===c?s.top-n.scrollTop()+s.height+o[1]+16-n.height()>0&&s.where[0]():4===c&&o[0]+16-s.left>0&&s.where[1](),a.find("."+l[5]).css({"background-color":t.tips[1],"padding-right":t.closeBtn?"30px":""}),a.css({left:s.tipLeft-(t.fixed?n.scrollLeft():0),top:s.tipTop-(t.fixed?n.scrollTop():0)})},s.pt.move=function(){var e=this,t=e.config,a=i(document),s=e.layero,l=s.find(t.move),f=s.find(".layui-layer-resize"),c={};return t.move&&l.css("cursor","move"),l.on("mousedown",function(e){e.preventDefault(),t.move&&(c.moveStart=!0,c.offset=[e.clientX-parseFloat(s.css("left")),e.clientY-parseFloat(s.css("top"))],o.moveElem.css("cursor","move").show())}),f.on("mousedown",function(e){e.preventDefault(),c.resizeStart=!0,c.offset=[e.clientX,e.clientY],c.area=[s.outerWidth(),s.outerHeight()],o.moveElem.css("cursor","se-resize").show()}),a.on("mousemove",function(i){if(c.moveStart){var a=i.clientX-c.offset[0],o=i.clientY-c.offset[1],l="fixed"===s.css("position");if(i.preventDefault(),c.stX=l?0:n.scrollLeft(),c.stY=l?0:n.scrollTop(),!t.moveOut){var f=n.width()-s.outerWidth()+c.stX,u=n.height()-s.outerHeight()+c.stY;a<c.stX&&(a=c.stX),a>f&&(a=f),o<c.stY&&(o=c.stY),o>u&&(o=u)}s.css({left:a,top:o})}if(t.resize&&c.resizeStart){var a=i.clientX-c.offset[0],o=i.clientY-c.offset[1];i.preventDefault(),r.style(e.index,{width:c.area[0]+a,height:c.area[1]+o}),c.isResize=!0,t.resizing&&t.resizing(s)}}).on("mouseup",function(e){c.moveStart&&(delete c.moveStart,o.moveElem.hide(),t.moveEnd&&t.moveEnd(s)),c.resizeStart&&(delete c.resizeStart,o.moveElem.hide())}),e},s.pt.callback=function(){function e(){var e=a.cancel&&a.cancel(t.index,n);e===!1||r.close(t.index)}var t=this,n=t.layero,a=t.config;t.openLayer(),a.success&&(2==a.type?n.find("iframe").on("load",function(){a.success(n,t.index)}):a.success(n,t.index)),6==r.ie&&t.IE6(n),n.find("."+l[6]).children("a").on("click",function(){var e=i(this).index();if(0===e)a.yes?a.yes(t.index,n):a.btn1?a.btn1(t.index,n):r.close(t.index);else{var o=a["btn"+(e+1)]&&a["btn"+(e+1)](t.index,n);o===!1||r.close(t.index)}}),n.find("."+l[7]).on("click",e),a.shadeClose&&i("#layui-layer-shade"+t.index).on("click",function(){r.close(t.index)}),n.find(".layui-layer-min").on("click",function(){var e=a.min&&a.min(n);e===!1||r.min(t.index,a)}),n.find(".layui-layer-max").on("click",function(){i(this).hasClass("layui-layer-maxmin")?(r.restore(t.index),a.restore&&a.restore(n)):(r.full(t.index,a),setTimeout(function(){a.full&&a.full(n)},100))}),a.end&&(o.end[t.index]=a.end)},o.reselect=function(){i.each(i("select"),function(e,t){var n=i(this);n.parents("."+l[0])[0]||1==n.attr("layer")&&i("."+l[0]).length<1&&n.removeAttr("layer").show(),n=null})},s.pt.IE6=function(e){i("select").each(function(e,t){var n=i(this);n.parents("."+l[0])[0]||"none"===n.css("display")||n.attr({layer:"1"}).hide(),n=null})},s.pt.openLayer=function(){var e=this;r.zIndex=e.config.zIndex,r.setTop=function(e){var t=function(){r.zIndex++,e.css("z-index",r.zIndex+1)};return r.zIndex=parseInt(e[0].style.zIndex),e.on("mousedown",t),r.zIndex}},o.record=function(e){var t=[e.width(),e.height(),e.position().top,e.position().left+parseFloat(e.css("margin-left"))];e.find(".layui-layer-max").addClass("layui-layer-maxmin"),e.attr({area:t})},o.rescollbar=function(e){l.html.attr("layer-full")==e&&(l.html[0].style.removeProperty?l.html[0].style.removeProperty("overflow"):l.html[0].style.removeAttribute("overflow"),l.html.removeAttr("layer-full"))},e.layer=r,r.getChildFrame=function(e,t){return t=t||i("."+l[4]).attr("times"),i("#"+l[0]+t).find("iframe").contents().find(e)},r.getFrameIndex=function(e){return i("#"+e).parents("."+l[4]).attr("times")},r.iframeAuto=function(e){if(e){var t=r.getChildFrame("html",e).outerHeight(),n=i("#"+l[0]+e),a=n.find(l[1]).outerHeight()||0,o=n.find("."+l[6]).outerHeight()||0;n.css({height:t+a+o}),n.find("iframe").css({height:t})}},r.iframeSrc=function(e,t){i("#"+l[0]+e).find("iframe").attr("src",t)},r.style=function(e,t,n){var a=i("#"+l[0]+e),r=a.find(".layui-layer-content"),s=a.attr("type"),f=a.find(l[1]).outerHeight()||0,c=a.find("."+l[6]).outerHeight()||0;a.attr("minLeft");s!==o.type[3]&&s!==o.type[4]&&(n||(parseFloat(t.width)<=260&&(t.width=260),parseFloat(t.height)-f-c<=64&&(t.height=64+f+c)),a.css(t),c=a.find("."+l[6]).outerHeight(),s===o.type[2]?a.find("iframe").css({height:parseFloat(t.height)-f-c}):r.css({height:parseFloat(t.height)-f-c-parseFloat(r.css("padding-top"))-parseFloat(r.css("padding-bottom"))}))},r.min=function(e,t){var a=i("#"+l[0]+e),s=a.find(l[1]).outerHeight()||0,f=a.attr("minLeft")||181*o.minIndex+"px",c=a.css("position");o.record(a),o.minLeft[0]&&(f=o.minLeft[0],o.minLeft.shift()),a.attr("position",c),r.style(e,{width:180,height:s,left:f,top:n.height()-s,position:"fixed",overflow:"hidden"},!0),a.find(".layui-layer-min").hide(),"page"===a.attr("type")&&a.find(l[4]).hide(),o.rescollbar(e),a.attr("minLeft")||o.minIndex++,a.attr("minLeft",f)},r.restore=function(e){var t=i("#"+l[0]+e),n=t.attr("area").split(",");t.attr("type");r.style(e,{width:parseFloat(n[0]),height:parseFloat(n[1]),top:parseFloat(n[2]),left:parseFloat(n[3]),position:t.attr("position"),overflow:"visible"},!0),t.find(".layui-layer-max").removeClass("layui-layer-maxmin"),t.find(".layui-layer-min").show(),"page"===t.attr("type")&&t.find(l[4]).show(),o.rescollbar(e)},r.full=function(e){var t,a=i("#"+l[0]+e);o.record(a),l.html.attr("layer-full")||l.html.css("overflow","hidden").attr("layer-full",e),clearTimeout(t),t=setTimeout(function(){var t="fixed"===a.css("position");r.style(e,{top:t?0:n.scrollTop(),left:t?0:n.scrollLeft(),width:n.width(),height:n.height()},!0),a.find(".layui-layer-min").hide()},100)},r.title=function(e,t){var n=i("#"+l[0]+(t||r.index)).find(l[1]);n.html(e)},r.close=function(e){var t=i("#"+l[0]+e),n=t.attr("type"),a="layer-anim-close";if(t[0]){var s="layui-layer-wrap",f=function(){if(n===o.type[1]&&"object"===t.attr("conType")){t.children(":not(."+l[5]+")").remove();for(var a=t.find("."+s),r=0;r<2;r++)a.unwrap();a.css("display",a.data("display")).removeClass(s)}else{if(n===o.type[2])try{var f=i("#"+l[4]+e)[0];f.contentWindow.document.write(""),f.contentWindow.close(),t.find("."+l[5])[0].removeChild(f)}catch(c){}t[0].innerHTML="",t.remove()}"function"==typeof o.end[e]&&o.end[e](),delete o.end[e]};t.data("isOutAnim")&&t.addClass("layer-anim "+a),i("#layui-layer-moves, #layui-layer-shade"+e).remove(),6==r.ie&&o.reselect(),o.rescollbar(e),t.attr("minLeft")&&(o.minIndex--,o.minLeft.push(t.attr("minLeft"))),r.ie&&r.ie<10||!t.data("isOutAnim")?f():setTimeout(function(){f()},200)}},r.closeAll=function(e){i.each(i("."+l[0]),function(){var t=i(this),n=e?t.attr("type")===e:1;n&&r.close(t.attr("times")),n=null})};var f=r.cache||{},c=function(e){return f.skin?" "+f.skin+" "+f.skin+"-"+e:""};r.prompt=function(e,t){var a="";if(e=e||{},"function"==typeof e&&(t=e),e.area){var o=e.area;a='style="width: '+o[0]+"; height: "+o[1]+';"',delete e.area}var s,l=2==e.formType?'<textarea class="layui-layer-input"'+a+"></textarea>":function(){return'<input type="'+(1==e.formType?"password":"text")+'" class="layui-layer-input">'}(),f=e.success;return delete e.success,r.open(i.extend({type:1,btn:["确定","取消"],content:l,skin:"layui-layer-prompt"+c("prompt"),maxWidth:n.width(),success:function(t){s=t.find(".layui-layer-input"),s.val(e.value||"").focus(),"function"==typeof f&&f(t)},resize:!1,yes:function(i){var n=s.val();""===n?s.focus():n.length>(e.maxlength||500)?r.tips("最多输入"+(e.maxlength||500)+"个字数",s,{tips:1}):t&&t(n,i,s)}},e))},r.tab=function(e){e=e||{};var t=e.tab||{},n="layui-this",a=e.success;return delete e.success,r.open(i.extend({type:1,skin:"layui-layer-tab"+c("tab"),resize:!1,title:function(){var e=t.length,i=1,a="";if(e>0)for(a='<span class="'+n+'">'+t[0].title+"</span>";i<e;i++)a+="<span>"+t[i].title+"</span>";return a}(),content:'<ul class="layui-layer-tabmain">'+function(){var e=t.length,i=1,a="";if(e>0)for(a='<li class="layui-layer-tabli '+n+'">'+(t[0].content||"no content")+"</li>";i<e;i++)a+='<li class="layui-layer-tabli">'+(t[i].content||"no content")+"</li>";return a}()+"</ul>",success:function(t){var o=t.find(".layui-layer-title").children(),r=t.find(".layui-layer-tabmain").children();o.on("mousedown",function(t){t.stopPropagation?t.stopPropagation():t.cancelBubble=!0;var a=i(this),o=a.index();a.addClass(n).siblings().removeClass(n),r.eq(o).show().siblings().hide(),"function"==typeof e.change&&e.change(o)}),"function"==typeof a&&a(t)}},e))},r.photos=function(t,n,a){function o(e,t,i){var n=new Image;return n.src=e,n.complete?t(n):(n.onload=function(){n.onload=null,t(n)},void(n.onerror=function(e){n.onerror=null,i(e)}))}var s={};if(t=t||{},t.photos){var l=t.photos.constructor===Object,f=l?t.photos:{},u=f.data||[],d=f.start||0;s.imgIndex=(0|d)+1,t.img=t.img||"img";var y=t.success;if(delete t.success,l){if(0===u.length)return r.msg("没有图片")}else{var p=i(t.photos),h=function(){u=[],p.find(t.img).each(function(e){var t=i(this);t.attr("layer-index",e),u.push({alt:t.attr("alt"),pid:t.attr("layer-pid"),src:t.attr("layer-src")||t.attr("src"),thumb:t.attr("src")})})};if(h(),0===u.length)return;if(n||p.on("click",t.img,function(){var e=i(this),n=e.attr("layer-index");r.photos(i.extend(t,{photos:{start:n,data:u,tab:t.tab},full:t.full}),!0),h()}),!n)return}s.imgprev=function(e){s.imgIndex--,s.imgIndex<1&&(s.imgIndex=u.length),s.tabimg(e)},s.imgnext=function(e,t){s.imgIndex++,s.imgIndex>u.length&&(s.imgIndex=1,t)||s.tabimg(e)},s.keyup=function(e){if(!s.end){var t=e.keyCode;e.preventDefault(),37===t?s.imgprev(!0):39===t?s.imgnext(!0):27===t&&r.close(s.index)}},s.tabimg=function(e){if(!(u.length<=1))return f.start=s.imgIndex-1,r.close(s.index),r.photos(t,!0,e)},s.event=function(){s.bigimg.hover(function(){s.imgsee.show()},function(){s.imgsee.hide()}),s.bigimg.find(".layui-layer-imgprev").on("click",function(e){e.preventDefault(),s.imgprev()}),s.bigimg.find(".layui-layer-imgnext").on("click",function(e){e.preventDefault(),s.imgnext()}),i(document).on("keyup",s.keyup)},s.loadi=r.load(1,{shade:!("shade"in t)&&.9,scrollbar:!1}),o(u[d].src,function(n){r.close(s.loadi),s.index=r.open(i.extend({type:1,id:"layui-layer-photos",area:function(){var a=[n.width,n.height],o=[i(e).width()-100,i(e).height()-100];if(!t.full&&(a[0]>o[0]||a[1]>o[1])){var r=[a[0]/o[0],a[1]/o[1]];r[0]>r[1]?(a[0]=a[0]/r[0],a[1]=a[1]/r[0]):r[0]<r[1]&&(a[0]=a[0]/r[1],a[1]=a[1]/r[1])}return[a[0]+"px",a[1]+"px"]}(),title:!1,shade:.9,shadeClose:!0,closeBtn:!1,move:".layui-layer-phimg img",moveType:1,scrollbar:!1,moveOut:!0,isOutAnim:!1,skin:"layui-layer-photos"+c("photos"),content:'<div class="layui-layer-phimg"><img src="'+u[d].src+'" alt="'+(u[d].alt||"")+'" layer-pid="'+u[d].pid+'"><div class="layui-layer-imgsee">'+(u.length>1?'<span class="layui-layer-imguide"><a href="javascript:;" class="layui-layer-iconext layui-layer-imgprev"></a><a href="javascript:;" class="layui-layer-iconext layui-layer-imgnext"></a></span>':"")+'<div class="layui-layer-imgbar" style="display:'+(a?"block":"")+'"><span class="layui-layer-imgtit"><a href="javascript:;">'+(u[d].alt||"")+"</a><em>"+s.imgIndex+"/"+u.length+"</em></span></div></div></div>",success:function(e,i){s.bigimg=e.find(".layui-layer-phimg"),s.imgsee=e.find(".layui-layer-imguide,.layui-layer-imgbar"),s.event(e),t.tab&&t.tab(u[d],e),"function"==typeof y&&y(e)},end:function(){s.end=!0,i(document).off("keyup",s.keyup)}},t))},function(){r.close(s.loadi),r.msg("当前图片地址异常<br>是否继续查看下一张?",{time:3e4,btn:["下一张","不看了"],yes:function(){u.length>1&&s.imgnext(!0,!0)}})})}},o.run=function(t){i=t,n=i(e),l.html=i("html"),r.open=function(e){var t=new s(e);return t.index}},e.layui&&layui.define?(r.ready(),layui.define("jquery",function(t){r.path=layui.cache.dir,o.run(layui.$),e.layer=r,t("layer",r)})):"function"==typeof define&&define.amd?define(["jquery"],function(){return o.run(e.jQuery),r}):function(){o.run(e.jQuery),r.ready()}()}(window);layui.define("jquery",function(t){"use strict";var a=layui.$,i=(layui.hint(),layui.device()),e="element",l="layui-this",n="layui-show",s=function(){this.config={}};s.prototype.set=function(t){var i=this;return a.extend(!0,i.config,t),i},s.prototype.on=function(t,a){return layui.onevent.call(this,e,t,a)},s.prototype.tabAdd=function(t,i){var e=".layui-tab-title",l=a(".layui-tab[lay-filter="+t+"]"),n=l.children(e),s=n.children(".layui-tab-bar"),o=l.children(".layui-tab-content"),r='<li lay-id="'+(i.id||"")+'"'+(i.attr?' lay-attr="'+i.attr+'"':"")+">"+(i.title||"unnaming")+"</li>";return s[0]?s.before(r):n.append(r),o.append('<div class="layui-tab-item">'+(i.content||"")+"</div>"),f.hideTabMore(!0),f.tabAuto(),this},s.prototype.tabDelete=function(t,i){var e=".layui-tab-title",l=a(".layui-tab[lay-filter="+t+"]"),n=l.children(e),s=n.find('>li[lay-id="'+i+'"]');return f.tabDelete(null,s),this},s.prototype.tabChange=function(t,i){var e=".layui-tab-title",l=a(".layui-tab[lay-filter="+t+"]"),n=l.children(e),s=n.find('>li[lay-id="'+i+'"]');return f.tabClick.call(s[0],null,null,s),this},s.prototype.tab=function(t){t=t||{},b.on("click",t.headerElem,function(i){var e=a(this).index();f.tabClick.call(this,i,e,null,t)})},s.prototype.progress=function(t,i){var e="layui-progress",l=a("."+e+"[lay-filter="+t+"]"),n=l.find("."+e+"-bar"),s=n.find("."+e+"-text");return n.css("width",i),s.text(i),this};var o=".layui-nav",r="layui-nav-item",c="layui-nav-bar",u="layui-nav-tree",d="layui-nav-child",y="layui-nav-more",h="layui-anim layui-anim-upbit",f={tabClick:function(t,i,s,o){o=o||{};var r=s||a(this),i=i||r.parent().children("li").index(r),c=o.headerElem?r.parent():r.parents(".layui-tab").eq(0),u=o.bodyElem?a(o.bodyElem):c.children(".layui-tab-content").children(".layui-tab-item"),d=r.find("a"),y=c.attr("lay-filter");"javascript:;"!==d.attr("href")&&"_blank"===d.attr("target")||(r.addClass(l).siblings().removeClass(l),u.eq(i).addClass(n).siblings().removeClass(n)),layui.event.call(this,e,"tab("+y+")",{elem:c,index:i})},tabDelete:function(t,i){var n=i||a(this).parent(),s=n.index(),o=n.parents(".layui-tab").eq(0),r=o.children(".layui-tab-content").children(".layui-tab-item"),c=o.attr("lay-filter");n.hasClass(l)&&(n.next()[0]?f.tabClick.call(n.next()[0],null,s+1):n.prev()[0]&&f.tabClick.call(n.prev()[0],null,s-1)),n.remove(),r.eq(s).remove(),setTimeout(function(){f.tabAuto()},50),layui.event.call(this,e,"tabDelete("+c+")",{elem:o,index:s})},tabAuto:function(){var t="layui-tab-more",e="layui-tab-bar",l="layui-tab-close",n=this;a(".layui-tab").each(function(){var s=a(this),o=s.children(".layui-tab-title"),r=(s.children(".layui-tab-content").children(".layui-tab-item"),'lay-stope="tabmore"'),c=a('<span class="layui-unselect layui-tab-bar" '+r+"><i "+r+' class="layui-icon"></i></span>');if(n===window&&8!=i.ie&&f.hideTabMore(!0),s.attr("lay-allowClose")&&o.find("li").each(function(){var t=a(this);if(!t.find("."+l)[0]){var i=a('<i class="layui-icon layui-unselect '+l+'">ဆ</i>');i.on("click",f.tabDelete),t.append(i)}}),"string"!=typeof s.attr("lay-unauto"))if(o.prop("scrollWidth")>o.outerWidth()+1){if(o.find("."+e)[0])return;o.append(c),s.attr("overflow",""),c.on("click",function(a){o[this.title?"removeClass":"addClass"](t),this.title=this.title?"":"收缩"})}else o.find("."+e).remove(),s.removeAttr("overflow")})},hideTabMore:function(t){var i=a(".layui-tab-title");t!==!0&&"tabmore"===a(t.target).attr("lay-stope")||(i.removeClass("layui-tab-more"),i.find(".layui-tab-bar").attr("title",""))},clickThis:function(){var t=a(this),i=t.parents(o),n=i.attr("lay-filter"),s=t.parent(),c=t.siblings("."+d),y="string"==typeof s.attr("lay-unselect");"javascript:;"!==t.attr("href")&&"_blank"===t.attr("target")||y||c[0]||(i.find("."+l).removeClass(l),s.addClass(l)),i.hasClass(u)&&(c.removeClass(h),c[0]&&(s["none"===c.css("display")?"addClass":"removeClass"](r+"ed"),"all"===i.attr("lay-shrink")&&s.siblings().removeClass(r+"ed"))),layui.event.call(this,e,"nav("+n+")",t)},collapse:function(){var t=a(this),i=t.find(".layui-colla-icon"),l=t.siblings(".layui-colla-content"),s=t.parents(".layui-collapse").eq(0),o=s.attr("lay-filter"),r="none"===l.css("display");if("string"==typeof s.attr("lay-accordion")){var c=s.children(".layui-colla-item").children("."+n);c.siblings(".layui-colla-title").children(".layui-colla-icon").html(""),c.removeClass(n)}l[r?"addClass":"removeClass"](n),i.html(r?"":""),layui.event.call(this,e,"collapse("+o+")",{title:t,content:l,show:r})}};s.prototype.init=function(t,e){var l=function(){return e?'[lay-filter="'+e+'"]':""}(),s={tab:function(){f.tabAuto.call({})},nav:function(){var t=200,e={},s={},p={},b=function(l,o,r){var c=a(this),f=c.find("."+d);o.hasClass(u)?l.css({top:c.position().top,height:c.children("a").outerHeight(),opacity:1}):(f.addClass(h),l.css({left:c.position().left+parseFloat(c.css("marginLeft")),top:c.position().top+c.height()-l.height()}),e[r]=setTimeout(function(){l.css({width:c.width(),opacity:1})},i.ie&&i.ie<10?0:t),clearTimeout(p[r]),"block"===f.css("display")&&clearTimeout(s[r]),s[r]=setTimeout(function(){f.addClass(n),c.find("."+y).addClass(y+"d")},300))};a(o+l).each(function(i){var l=a(this),o=a('<span class="'+c+'"></span>'),h=l.find("."+r);l.find("."+c)[0]||(l.append(o),h.on("mouseenter",function(){b.call(this,o,l,i)}).on("mouseleave",function(){l.hasClass(u)||(clearTimeout(s[i]),s[i]=setTimeout(function(){l.find("."+d).removeClass(n),l.find("."+y).removeClass(y+"d")},300))}),l.on("mouseleave",function(){clearTimeout(e[i]),p[i]=setTimeout(function(){l.hasClass(u)?o.css({height:0,top:o.position().top+o.height()/2,opacity:0}):o.css({width:0,left:o.position().left+o.width()/2,opacity:0})},t)})),h.find("a").each(function(){var t=a(this),i=(t.parent(),t.siblings("."+d));i[0]&&!t.children("."+y)[0]&&t.append('<span class="'+y+'"></span>'),t.off("click",f.clickThis).on("click",f.clickThis)})})},breadcrumb:function(){var t=".layui-breadcrumb";a(t+l).each(function(){var t=a(this),i="lay-separator",e=t.attr(i)||"/",l=t.find("a");l.next("span["+i+"]")[0]||(l.each(function(t){t!==l.length-1&&a(this).after("<span "+i+">"+e+"</span>")}),t.css("visibility","visible"))})},progress:function(){var t="layui-progress";a("."+t+l).each(function(){var i=a(this),e=i.find(".layui-progress-bar"),l=e.attr("lay-percent");e.css("width",function(){return/^.+\/.+$/.test(l)?100*new Function("return "+l)()+"%":l}()),i.attr("lay-showPercent")&&setTimeout(function(){e.html('<span class="'+t+'-text">'+l+"</span>")},350)})},collapse:function(){var t="layui-collapse";a("."+t+l).each(function(){var t=a(this).find(".layui-colla-item");t.each(function(){var t=a(this),i=t.find(".layui-colla-title"),e=t.find(".layui-colla-content"),l="none"===e.css("display");i.find(".layui-colla-icon").remove(),i.append('<i class="layui-icon layui-colla-icon">'+(l?"":"")+"</i>"),i.off("click",f.collapse).on("click",f.collapse)})})}};return s[t]?s[t]():layui.each(s,function(t,a){a()})},s.prototype.render=s.prototype.init;var p=new s,b=a(document);p.render();var v=".layui-tab-title li";b.on("click",v,f.tabClick),b.on("click",f.hideTabMore),a(window).on("resize",f.tabAuto),t(e,p)});layui.define("layer",function(e){"use strict";var t=layui.$,i=layui.layer,n=layui.hint(),o=layui.device(),a={config:{},set:function(e){var i=this;return i.config=t.extend({},i.config,e),i},on:function(e,t){return layui.onevent.call(this,r,e,t)}},l=function(){var e=this;return{upload:function(t){e.upload.call(e,t)},reload:function(t){e.reload.call(e,t)},config:e.config}},r="upload",u="layui-upload-file",c="layui-upload-form",f="layui-upload-iframe",s="layui-upload-choose",p=function(e){var i=this;i.config=t.extend({},i.config,a.config,e),i.render()};p.prototype.config={accept:"images",exts:"",auto:!0,bindAction:"",url:"",field:"file",acceptMime:"",method:"post",data:{},drag:!0,size:0,number:0,multiple:!1},p.prototype.render=function(e){var i=this,e=i.config;e.elem=t(e.elem),e.bindAction=t(e.bindAction),i.file(),i.events()},p.prototype.file=function(){var e=this,i=e.config,n=e.elemFile=t(['<input class="'+u+'" type="file" accept="'+i.acceptMime+'" name="'+i.field+'"',i.multiple?" multiple":"",">"].join("")),a=i.elem.next();(a.hasClass(u)||a.hasClass(c))&&a.remove(),o.ie&&o.ie<10&&i.elem.wrap('<div class="layui-upload-wrap"></div>'),e.isFile()?(e.elemFile=i.elem,i.field=i.elem[0].name):i.elem.after(n),o.ie&&o.ie<10&&e.initIE()},p.prototype.initIE=function(){var e=this,i=e.config,n=t('<iframe id="'+f+'" class="'+f+'" name="'+f+'" frameborder="0"></iframe>'),o=t(['<form target="'+f+'" class="'+c+'" method="post" key="set-mine" enctype="multipart/form-data" action="'+i.url+'">',"</form>"].join(""));t("#"+f)[0]||t("body").append(n),i.elem.next().hasClass(c)||(e.elemFile.wrap(o),i.elem.next("."+c).append(function(){var e=[];return layui.each(i.data,function(t,i){i="function"==typeof i?i():i,e.push('<input type="hidden" name="'+t+'" value="'+i+'">')}),e.join("")}()))},p.prototype.msg=function(e){return i.msg(e,{icon:2,shift:6})},p.prototype.isFile=function(){var e=this.config.elem[0];if(e)return"input"===e.tagName.toLocaleLowerCase()&&"file"===e.type},p.prototype.preview=function(e){var t=this;window.FileReader&&layui.each(t.chooseFiles,function(t,i){var n=new FileReader;n.readAsDataURL(i),n.onload=function(){e&&e(t,i,this.result)}})},p.prototype.upload=function(e,i){var n,a=this,l=a.config,r=a.elemFile[0],u=function(){var i=0,n=0,o=e||a.files||a.chooseFiles||r.files,u=function(){l.multiple&&i+n===a.fileLength&&"function"==typeof l.allDone&&l.allDone({total:a.fileLength,successful:i,aborted:n})};layui.each(o,function(e,o){var r=new FormData;r.append(l.field,o),layui.each(l.data,function(e,t){t="function"==typeof t?t():t,r.append(e,t)});var c={url:l.url,type:"post",data:r,contentType:!1,processData:!1,dataType:"json",headers:l.headers||{},success:function(t){i++,d(e,t),u()},error:function(){n++,a.msg("请求上传接口出现异常"),m(e),u()}};"function"==typeof l.progress&&(c.xhr=function(){var e=t.ajaxSettings.xhr();return e.upload.addEventListener("progress",function(e){if(e.lengthComputable){var t=Math.floor(e.loaded/e.total*100);l.progress(t,l.item[0],e)}}),e}),t.ajax(c)})},c=function(){var e=t("#"+f);a.elemFile.parent().submit(),clearInterval(p.timer),p.timer=setInterval(function(){var t,i=e.contents().find("body");try{t=i.text()}catch(n){a.msg("获取上传后的响应信息出现异常"),clearInterval(p.timer),m()}t&&(clearInterval(p.timer),i.html(""),d(0,t))},30)},d=function(e,t){if(a.elemFile.next("."+s).remove(),r.value="","object"!=typeof t)try{t=JSON.parse(t)}catch(i){return t={},a.msg("请对上传接口返回有效JSON")}"function"==typeof l.done&&l.done(t,e||0,function(e){a.upload(e)})},m=function(e){l.auto&&(r.value=""),"function"==typeof l.error&&l.error(e||0,function(e){a.upload(e)})},h=l.exts,v=function(){var t=[];return layui.each(e||a.chooseFiles,function(e,i){t.push(i.name)}),t}(),g={preview:function(e){a.preview(e)},upload:function(e,t){var i={};i[e]=t,a.upload(i)},pushFile:function(){return a.files=a.files||{},layui.each(a.chooseFiles,function(e,t){a.files[e]=t}),a.files},resetFile:function(e,t,i){var n=new File([t],i);a.files=a.files||{},a.files[e]=n}},y=function(){if("choose"!==i&&!l.auto||(l.choose&&l.choose(g),"choose"!==i))return l.before&&l.before(g),o.ie?o.ie>9?u():c():void u()};if(v=0===v.length?r.value.match(/[^\/\\]+\..+/g)||[]||"":v,0!==v.length){switch(l.accept){case"file":if(h&&!RegExp("\\w\\.("+h+")$","i").test(escape(v)))return a.msg("选择的文件中包含不支持的格式"),r.value="";break;case"video":if(!RegExp("\\w\\.("+(h||"avi|mp4|wma|rmvb|rm|flash|3gp|flv")+")$","i").test(escape(v)))return a.msg("选择的视频中包含不支持的格式"),r.value="";break;case"audio":if(!RegExp("\\w\\.("+(h||"mp3|wav|mid")+")$","i").test(escape(v)))return a.msg("选择的音频中包含不支持的格式"),r.value="";break;default:if(layui.each(v,function(e,t){RegExp("\\w\\.("+(h||"jpg|png|gif|bmp|jpeg$")+")","i").test(escape(t))||(n=!0)}),n)return a.msg("选择的图片中包含不支持的格式"),r.value=""}if(a.fileLength=function(){var t=0,i=e||a.files||a.chooseFiles||r.files;return layui.each(i,function(){t++}),t}(),l.number&&a.fileLength>l.number)return a.msg("同时最多只能上传的数量为:"+l.number);if(l.size>0&&!(o.ie&&o.ie<10)){var F;if(layui.each(a.chooseFiles,function(e,t){if(t.size>1024*l.size){var i=l.size/1024;i=i>=1?i.toFixed(2)+"MB":l.size+"KB",r.value="",F=i}}),F)return a.msg("文件不能超过"+F)}y()}},p.prototype.reload=function(e){e=e||{},delete e.elem,delete e.bindAction;var i=this,e=i.config=t.extend({},i.config,a.config,e),n=e.elem.next();n.attr({name:e.name,accept:e.acceptMime,multiple:e.multiple})},p.prototype.events=function(){var e=this,i=e.config,a=function(t){e.chooseFiles={},layui.each(t,function(t,i){var n=(new Date).getTime();e.chooseFiles[n+"-"+t]=i})},l=function(t,n){var o=e.elemFile,a=t.length>1?t.length+"个文件":(t[0]||{}).name||o[0].value.match(/[^\/\\]+\..+/g)||[]||"";o.next().hasClass(s)&&o.next().remove(),e.upload(null,"choose"),e.isFile()||i.choose||o.after('<span class="layui-inline '+s+'">'+a+"</span>")};i.elem.off("upload.start").on("upload.start",function(){var o=t(this),a=o.attr("lay-data");if(a)try{a=new Function("return "+a)(),e.config=t.extend({},i,a)}catch(l){n.error("Upload element property lay-data configuration item has a syntax error: "+a)}e.config.item=o,e.elemFile[0].click()}),o.ie&&o.ie<10||i.elem.off("upload.over").on("upload.over",function(){var e=t(this);e.attr("lay-over","")}).off("upload.leave").on("upload.leave",function(){var e=t(this);e.removeAttr("lay-over")}).off("upload.drop").on("upload.drop",function(n,o){var r=t(this),u=o.originalEvent.dataTransfer.files||[];r.removeAttr("lay-over"),a(u),i.auto?e.upload(u):l(u)}),e.elemFile.off("upload.change").on("upload.change",function(){var t=this.files||[];a(t),i.auto?e.upload():l(t)}),i.bindAction.off("upload.action").on("upload.action",function(){e.upload()}),i.elem.data("haveEvents")||(e.elemFile.on("change",function(){t(this).trigger("upload.change")}),i.elem.on("click",function(){e.isFile()||t(this).trigger("upload.start")}),i.drag&&i.elem.on("dragover",function(e){e.preventDefault(),t(this).trigger("upload.over")}).on("dragleave",function(e){t(this).trigger("upload.leave")}).on("drop",function(e){e.preventDefault(),t(this).trigger("upload.drop",e)}),i.bindAction.on("click",function(){t(this).trigger("upload.action")}),i.elem.data("haveEvents",!0))},a.render=function(e){var t=new p(e);return l.call(t)},e(r,a)});layui.define("jquery",function(e){"use strict";var i=layui.jquery,t={config:{},index:layui.slider?layui.slider.index+1e4:0,set:function(e){var t=this;return t.config=i.extend({},t.config,e),t},on:function(e,i){return layui.onevent.call(this,n,e,i)}},a=function(){var e=this,i=e.config;return{setValue:function(i,t){return e.slide("set",i,t||0)},config:i}},n="slider",l="layui-disabled",s="layui-slider",r="layui-slider-bar",o="layui-slider-wrap",u="layui-slider-wrap-btn",d="layui-slider-tips",v="layui-slider-input",c="layui-slider-input-txt",m="layui-slider-input-btn",p="layui-slider-hover",f=function(e){var a=this;a.index=++t.index,a.config=i.extend({},a.config,t.config,e),a.render()};f.prototype.config={type:"default",min:0,max:100,value:0,step:1,showstep:!1,tips:!0,input:!1,range:!1,height:200,disabled:!1,theme:"#009688"},f.prototype.render=function(){var e=this,t=e.config;if(t.step<1&&(t.step=1),t.max<t.min&&(t.max=t.min+t.step),t.range){t.value="object"==typeof t.value?t.value:[t.min,t.value];var a=Math.min(t.value[0],t.value[1]),n=Math.max(t.value[0],t.value[1]);t.value[0]=a>t.min?a:t.min,t.value[1]=n>t.min?n:t.min,t.value[0]=t.value[0]>t.max?t.max:t.value[0],t.value[1]=t.value[1]>t.max?t.max:t.value[1];var r=Math.floor((t.value[0]-t.min)/(t.max-t.min)*100),v=Math.floor((t.value[1]-t.min)/(t.max-t.min)*100),m=v-r+"%";r+="%",v+="%"}else{"object"==typeof t.value&&(t.value=Math.min.apply(null,t.value)),t.value<t.min&&(t.value=t.min),t.value>t.max&&(t.value=t.max);var m=Math.floor((t.value-t.min)/(t.max-t.min)*100)+"%"}var p=t.disabled?"#c2c2c2":t.theme,f='<div class="layui-slider '+("vertical"===t.type?"layui-slider-vertical":"")+'">'+(t.tips?'<div class="layui-slider-tips"></div>':"")+'<div class="layui-slider-bar" style="background:'+p+"; "+("vertical"===t.type?"height":"width")+":"+m+";"+("vertical"===t.type?"bottom":"left")+":"+(r||0)+';"></div><div class="layui-slider-wrap" style="'+("vertical"===t.type?"bottom":"left")+":"+(r||m)+';"><div class="layui-slider-wrap-btn" style="border: 2px solid '+p+';"></div></div>'+(t.range?'<div class="layui-slider-wrap" style="'+("vertical"===t.type?"bottom":"left")+":"+v+';"><div class="layui-slider-wrap-btn" style="border: 2px solid '+p+';"></div></div>':"")+"</div>",h=i(t.elem),y=h.next("."+s);if(y[0]&&y.remove(),e.elemTemp=i(f),t.range?(e.elemTemp.find("."+o).eq(0).data("value",t.value[0]),e.elemTemp.find("."+o).eq(1).data("value",t.value[1])):e.elemTemp.find("."+o).data("value",t.value),h.html(e.elemTemp),"vertical"===t.type&&e.elemTemp.height(t.height+"px"),t.showstep){for(var g=(t.max-t.min)/t.step,b="",x=1;x<g+1;x++){var T=100*x/g;T<100&&(b+='<div class="layui-slider-step" style="'+("vertical"===t.type?"bottom":"left")+":"+T+'%"></div>')}e.elemTemp.append(b)}if(t.input&&!t.range){var w=i('<div class="layui-slider-input layui-input"><div class="layui-slider-input-txt"><input type="text" class="layui-input"></div><div class="layui-slider-input-btn"><i class="layui-icon layui-icon-up"></i><i class="layui-icon layui-icon-down"></i></div></div>');h.css("position","relative"),h.append(w),h.find("."+c).children("input").val(t.value),"vertical"===t.type?w.css({left:0,top:-48}):e.elemTemp.css("margin-right",w.outerWidth()+15)}t.disabled?(e.elemTemp.addClass(l),e.elemTemp.find("."+u).addClass(l)):e.slide(),e.elemTemp.find("."+u).on("mouseover",function(){var a="vertical"===t.type?t.height:e.elemTemp[0].offsetWidth,n=e.elemTemp.find("."+o),l="vertical"===t.type?a-i(this).parent()[0].offsetTop-n.height():i(this).parent()[0].offsetLeft,s=l/a*100,r=i(this).parent().data("value"),u=t.setTips?t.setTips(r):r;e.elemTemp.find("."+d).html(u),"vertical"===t.type?e.elemTemp.find("."+d).css({bottom:s+"%","margin-bottom":"20px",display:"inline-block"}):e.elemTemp.find("."+d).css({left:s+"%",display:"inline-block"})}).on("mouseout",function(){e.elemTemp.find("."+d).css("display","none")})},f.prototype.slide=function(e,t,a){var n=this,l=n.config,s=n.elemTemp,f=function(){return"vertical"===l.type?l.height:s[0].offsetWidth},h=s.find("."+o),y=s.next("."+v),g=y.children("."+c).children("input").val(),b=100/((l.max-l.min)/Math.ceil(l.step)),x=function(e,i){e=Math.ceil(e)*b>100?Math.ceil(e)*b:Math.round(e)*b,e=e>100?100:e,h.eq(i).css("vertical"===l.type?"bottom":"left",e+"%");var t=T(h[0].offsetLeft),a=l.range?T(h[1].offsetLeft):0;"vertical"===l.type?(s.find("."+d).css({bottom:e+"%","margin-bottom":"20px"}),t=T(f()-h[0].offsetTop-h.height()),a=l.range?T(f()-h[1].offsetTop-h.height()):0):s.find("."+d).css("left",e+"%"),t=t>100?100:t,a=a>100?100:a;var n=Math.min(t,a),o=Math.abs(t-a);"vertical"===l.type?s.find("."+r).css({height:o+"%",bottom:n+"%"}):s.find("."+r).css({width:o+"%",left:n+"%"});var u=l.min+Math.round((l.max-l.min)*e/100);if(g=u,y.children("."+c).children("input").val(g),h.eq(i).data("value",u),u=l.setTips?l.setTips(u):u,s.find("."+d).html(u),l.range){var v=[h.eq(0).data("value"),h.eq(1).data("value")];v[0]>v[1]&&v.reverse()}l.change&&l.change(l.range?v:u)},T=function(e){var i=e/f()*100/b,t=Math.round(i)*b;return e==f()&&(t=Math.ceil(i)*b),t},w=i(['<div class="layui-auxiliar-moving" id="LAY-slider-moving"></div'].join("")),M=function(e,t){var a=function(){t&&t(),w.remove()};i("#LAY-slider-moving")[0]||i("body").append(w),w.on("mousemove",e),w.on("mouseup",a).on("mouseleave",a)};if("set"===e)return x(t,a);s.find("."+u).each(function(e){var t=i(this);t.on("mousedown",function(i){i=i||window.event;var a=t.parent()[0].offsetLeft,n=i.clientX;"vertical"===l.type&&(a=f()-t.parent()[0].offsetTop-h.height(),n=i.clientY);var r=function(i){i=i||window.event;var r=a+("vertical"===l.type?n-i.clientY:i.clientX-n);r<0&&(r=0),r>f()&&(r=f());var o=r/f()*100/b;x(o,e),t.addClass(p),s.find("."+d).show(),i.preventDefault()},o=function(){t.removeClass(p),s.find("."+d).hide()};M(r,o)})}),s.on("click",function(e){var t=i("."+u);if(!t.is(event.target)&&0===t.has(event.target).length&&t.length){var a,n="vertical"===l.type?f()-e.clientY+i(this).offset().top:e.clientX-i(this).offset().left;n<0&&(n=0),n>f()&&(n=f());var s=n/f()*100/b;a=l.range?"vertical"===l.type?Math.abs(n-parseInt(i(h[0]).css("bottom")))>Math.abs(n-parseInt(i(h[1]).css("bottom")))?1:0:Math.abs(n-h[0].offsetLeft)>Math.abs(n-h[1].offsetLeft)?1:0:0,x(s,a),e.preventDefault()}}),y.hover(function(){var e=i(this);e.children("."+m).fadeIn("fast")},function(){var e=i(this);e.children("."+m).fadeOut("fast")}),y.children("."+m).children("i").each(function(e){i(this).on("click",function(){g=1==e?g-l.step<l.min?l.min:Number(g)-l.step:Number(g)+l.step>l.max?l.max:Number(g)+l.step;var i=(g-l.min)/(l.max-l.min)*100/b;x(i,0)})});var q=function(){var e=this.value;e=isNaN(e)?0:e,e=e<l.min?l.min:e,e=e>l.max?l.max:e,this.value=e;var i=(e-l.min)/(l.max-l.min)*100/b;x(i,0)};y.children("."+c).children("input").on("keydown",function(e){13===e.keyCode&&(e.preventDefault(),q.call(this))}).on("change",q)},f.prototype.events=function(){var e=this;e.config},t.render=function(e){var i=new f(e);return a.call(i)},e(n,t)});layui.define("jquery",function(e){"use strict";var i=layui.jquery,o={config:{},index:layui.colorpicker?layui.colorpicker.index+1e4:0,set:function(e){var o=this;return o.config=i.extend({},o.config,e),o},on:function(e,i){return layui.onevent.call(this,"colorpicker",e,i)}},r=function(){var e=this,i=e.config;return{config:i}},t="colorpicker",n="layui-show",l="layui-colorpicker",c=".layui-colorpicker-main",a="layui-icon-down",s="layui-icon-close",f="layui-colorpicker-trigger-span",d="layui-colorpicker-trigger-i",u="layui-colorpicker-side",p="layui-colorpicker-side-slider",g="layui-colorpicker-basis",v="layui-colorpicker-alpha-bgcolor",h="layui-colorpicker-alpha-slider",m="layui-colorpicker-basis-cursor",b="layui-colorpicker-main-input",k=function(e){var i={h:0,s:0,b:0},o=Math.min(e.r,e.g,e.b),r=Math.max(e.r,e.g,e.b),t=r-o;return i.b=r,i.s=0!=r?255*t/r:0,0!=i.s?e.r==r?i.h=(e.g-e.b)/t:e.g==r?i.h=2+(e.b-e.r)/t:i.h=4+(e.r-e.g)/t:i.h=-1,r==o&&(i.h=0),i.h*=60,i.h<0&&(i.h+=360),i.s*=100/255,i.b*=100/255,i},y=function(e){var e=e.indexOf("#")>-1?e.substring(1):e;if(3==e.length){var i=e.split("");e=i[0]+i[0]+i[1]+i[1]+i[2]+i[2]}e=parseInt(e,16);var o={r:e>>16,g:(65280&e)>>8,b:255&e};return k(o)},x=function(e){var i={},o=e.h,r=255*e.s/100,t=255*e.b/100;if(0==r)i.r=i.g=i.b=t;else{var n=t,l=(255-r)*t/255,c=(n-l)*(o%60)/60;360==o&&(o=0),o<60?(i.r=n,i.b=l,i.g=l+c):o<120?(i.g=n,i.b=l,i.r=n-c):o<180?(i.g=n,i.r=l,i.b=l+c):o<240?(i.b=n,i.r=l,i.g=n-c):o<300?(i.b=n,i.g=l,i.r=l+c):o<360?(i.r=n,i.g=l,i.b=n-c):(i.r=0,i.g=0,i.b=0)}return{r:Math.round(i.r),g:Math.round(i.g),b:Math.round(i.b)}},C=function(e){var o=x(e),r=[o.r.toString(16),o.g.toString(16),o.b.toString(16)];return i.each(r,function(e,i){1==i.length&&(r[e]="0"+i)}),r.join("")},P=function(e){var i=/[0-9]{1,3}/g,o=e.match(i)||[];return{r:o[0],g:o[1],b:o[2]}},B=i(window),w=i(document),D=function(e){var r=this;r.index=++o.index,r.config=i.extend({},r.config,o.config,e),r.render()};D.prototype.config={color:"",size:null,alpha:!1,format:"hex",predefine:!1,colors:["#009688","#5FB878","#1E9FFF","#FF5722","#FFB800","#01AAED","#999","#c00","#ff8c00","#ffd700","#90ee90","#00ced1","#1e90ff","#c71585","rgb(0, 186, 189)","rgb(255, 120, 0)","rgb(250, 212, 0)","#393D49","rgba(0,0,0,.5)","rgba(255, 69, 0, 0.68)","rgba(144, 240, 144, 0.5)","rgba(31, 147, 255, 0.73)"]},D.prototype.render=function(){var e=this,o=e.config,r=i(['<div class="layui-unselect layui-colorpicker">',"<span "+("rgb"==o.format&&o.alpha?'class="layui-colorpicker-trigger-bgcolor"':"")+">",'<span class="layui-colorpicker-trigger-span" ','lay-type="'+("rgb"==o.format?o.alpha?"rgba":"torgb":"")+'" ','style="'+function(){var e="";return o.color?(e=o.color,(o.color.match(/[0-9]{1,3}/g)||[]).length>3&&(o.alpha&&"rgb"==o.format||(e="#"+C(k(P(o.color))))),"background: "+e):e}()+'">','<i class="layui-icon layui-colorpicker-trigger-i '+(o.color?a:s)+'"></i>',"</span>","</span>","</div>"].join("")),t=i(o.elem);o.size&&r.addClass("layui-colorpicker-"+o.size),t.addClass("layui-inline").html(e.elemColorBox=r),e.color=e.elemColorBox.find("."+f)[0].style.background,e.events()},D.prototype.renderPicker=function(){var e=this,o=e.config,r=e.elemColorBox[0],t=e.elemPicker=i(['<div id="layui-colorpicker'+e.index+'" data-index="'+e.index+'" class="layui-anim layui-anim-upbit layui-colorpicker-main">','<div class="layui-colorpicker-main-wrapper">','<div class="layui-colorpicker-basis">','<div class="layui-colorpicker-basis-white"></div>','<div class="layui-colorpicker-basis-black"></div>','<div class="layui-colorpicker-basis-cursor"></div>',"</div>",'<div class="layui-colorpicker-side">','<div class="layui-colorpicker-side-slider"></div>',"</div>","</div>",'<div class="layui-colorpicker-main-alpha '+(o.alpha?n:"")+'">','<div class="layui-colorpicker-alpha-bgcolor">','<div class="layui-colorpicker-alpha-slider"></div>',"</div>","</div>",function(){if(o.predefine){var e=['<div class="layui-colorpicker-main-pre">'];return layui.each(o.colors,function(i,o){e.push(['<div class="layui-colorpicker-pre'+((o.match(/[0-9]{1,3}/g)||[]).length>3?" layui-colorpicker-pre-isalpha":"")+'">','<div style="background:'+o+'"></div>',"</div>"].join(""))}),e.push("</div>"),e.join("")}return""}(),'<div class="layui-colorpicker-main-input">','<div class="layui-inline">','<input type="text" class="layui-input">',"</div>",'<div class="layui-btn-container">','<button class="layui-btn layui-btn-primary layui-btn-sm" colorpicker-events="clear">清空</button>','<button class="layui-btn layui-btn-sm" colorpicker-events="confirm">确定</button>',"</div","</div>","</div>"].join(""));e.elemColorBox.find("."+f)[0];i(c)[0]&&i(c).data("index")==e.index?e.removePicker(D.thisElemInd):(e.removePicker(D.thisElemInd),i("body").append(t)),D.thisElemInd=e.index,D.thisColor=r.style.background,e.position(),e.pickerEvents()},D.prototype.removePicker=function(e){var o=this;o.config;return i("#layui-colorpicker"+(e||o.index)).remove(),o},D.prototype.position=function(){var e=this,i=e.config,o=e.bindElem||e.elemColorBox[0],r=e.elemPicker[0],t=o.getBoundingClientRect(),n=r.offsetWidth,l=r.offsetHeight,c=function(e){return e=e?"scrollLeft":"scrollTop",document.body[e]|document.documentElement[e]},a=function(e){return document.documentElement[e?"clientWidth":"clientHeight"]},s=5,f=t.left,d=t.bottom;f-=(n-o.offsetWidth)/2,d+=s,f+n+s>a("width")?f=a("width")-n-s:f<s&&(f=s),d+l+s>a()&&(d=t.top>l?t.top-l:a()-l,d-=2*s),i.position&&(r.style.position=i.position),r.style.left=f+("fixed"===i.position?0:c(1))+"px",r.style.top=d+("fixed"===i.position?0:c())+"px"},D.prototype.val=function(){var e=this,i=(e.config,e.elemColorBox.find("."+f)),o=e.elemPicker.find("."+b),r=i[0],t=r.style.backgroundColor;if(t){var n=k(P(t)),l=i.attr("lay-type");if(e.select(n.h,n.s,n.b),"torgb"===l&&o.find("input").val(t),"rgba"===l){var c=P(t);if(3==(t.match(/[0-9]{1,3}/g)||[]).length)o.find("input").val("rgba("+c.r+", "+c.g+", "+c.b+", 1)"),e.elemPicker.find("."+h).css("left",280);else{o.find("input").val(t);var a=280*t.slice(t.lastIndexOf(",")+1,t.length-1);e.elemPicker.find("."+h).css("left",a)}e.elemPicker.find("."+v)[0].style.background="linear-gradient(to right, rgba("+c.r+", "+c.g+", "+c.b+", 0), rgb("+c.r+", "+c.g+", "+c.b+"))"}}else e.select(0,100,100),o.find("input").val(""),e.elemPicker.find("."+v)[0].style.background="",e.elemPicker.find("."+h).css("left",280)},D.prototype.side=function(){var e=this,o=e.config,r=e.elemColorBox.find("."+f),t=r.attr("lay-type"),n=e.elemPicker.find("."+u),l=e.elemPicker.find("."+p),c=e.elemPicker.find("."+g),y=e.elemPicker.find("."+m),C=e.elemPicker.find("."+v),w=e.elemPicker.find("."+h),D=l[0].offsetTop/180*360,E=100-(y[0].offsetTop+3)/180*100,H=(y[0].offsetLeft+3)/260*100,W=Math.round(w[0].offsetLeft/280*100)/100,j=e.elemColorBox.find("."+d),F=e.elemPicker.find(".layui-colorpicker-pre").children("div"),L=function(i,n,l,c){e.select(i,n,l);var f=x({h:i,s:n,b:l});if(j.addClass(a).removeClass(s),r[0].style.background="rgb("+f.r+", "+f.g+", "+f.b+")","torgb"===t&&e.elemPicker.find("."+b).find("input").val("rgb("+f.r+", "+f.g+", "+f.b+")"),"rgba"===t){var d=0;d=280*c,w.css("left",d),e.elemPicker.find("."+b).find("input").val("rgba("+f.r+", "+f.g+", "+f.b+", "+c+")"),r[0].style.background="rgba("+f.r+", "+f.g+", "+f.b+", "+c+")",C[0].style.background="linear-gradient(to right, rgba("+f.r+", "+f.g+", "+f.b+", 0), rgb("+f.r+", "+f.g+", "+f.b+"))"}o.change&&o.change(e.elemPicker.find("."+b).find("input").val())},M=i(['<div class="layui-auxiliar-moving" id="LAY-colorpicker-moving"></div'].join("")),Y=function(e){i("#LAY-colorpicker-moving")[0]||i("body").append(M),M.on("mousemove",e),M.on("mouseup",function(){M.remove()}).on("mouseleave",function(){M.remove()})};l.on("mousedown",function(e){var i=this.offsetTop,o=e.clientY,r=function(e){var r=i+(e.clientY-o),t=n[0].offsetHeight;r<0&&(r=0),r>t&&(r=t);var l=r/180*360;D=l,L(l,H,E,W),e.preventDefault()};Y(r),e.preventDefault()}),n.on("click",function(e){var o=e.clientY-i(this).offset().top;o<0&&(o=0),o>this.offsetHeight&&(o=this.offsetHeight);var r=o/180*360;D=r,L(r,H,E,W),e.preventDefault()}),y.on("mousedown",function(e){var i=this.offsetTop,o=this.offsetLeft,r=e.clientY,t=e.clientX,n=function(e){var n=i+(e.clientY-r),l=o+(e.clientX-t),a=c[0].offsetHeight-3,s=c[0].offsetWidth-3;n<-3&&(n=-3),n>a&&(n=a),l<-3&&(l=-3),l>s&&(l=s);var f=(l+3)/260*100,d=100-(n+3)/180*100;E=d,H=f,L(D,f,d,W),e.preventDefault()};layui.stope(e),Y(n),e.preventDefault()}),c.on("mousedown",function(e){var o=e.clientY-i(this).offset().top-3+B.scrollTop(),r=e.clientX-i(this).offset().left-3+B.scrollLeft();o<-3&&(o=-3),o>this.offsetHeight-3&&(o=this.offsetHeight-3),r<-3&&(r=-3),r>this.offsetWidth-3&&(r=this.offsetWidth-3);var t=(r+3)/260*100,n=100-(o+3)/180*100;E=n,H=t,L(D,t,n,W),e.preventDefault(),y.trigger(e,"mousedown")}),w.on("mousedown",function(e){var i=this.offsetLeft,o=e.clientX,r=function(e){var r=i+(e.clientX-o),t=C[0].offsetWidth;r<0&&(r=0),r>t&&(r=t);var n=Math.round(r/280*100)/100;W=n,L(D,H,E,n),e.preventDefault()};Y(r),e.preventDefault()}),C.on("click",function(e){var o=e.clientX-i(this).offset().left;o<0&&(o=0),o>this.offsetWidth&&(o=this.offsetWidth);var r=Math.round(o/280*100)/100;W=r,L(D,H,E,r),e.preventDefault()}),F.each(function(){i(this).on("click",function(){i(this).parent(".layui-colorpicker-pre").addClass("selected").siblings().removeClass("selected");var e,o=this.style.backgroundColor,r=k(P(o)),t=o.slice(o.lastIndexOf(",")+1,o.length-1);D=r.h,H=r.s,E=r.b,3==(o.match(/[0-9]{1,3}/g)||[]).length&&(t=1),W=t,e=280*t,L(r.h,r.s,r.b,t)})})},D.prototype.select=function(e,i,o,r){var t=this,n=(t.config,C({h:e,s:100,b:100})),l=C({h:e,s:i,b:o}),c=e/360*180,a=180-o/100*180-3,s=i/100*260-3;t.elemPicker.find("."+p).css("top",c),t.elemPicker.find("."+g)[0].style.background="#"+n,t.elemPicker.find("."+m).css({top:a,left:s}),"change"!==r&&t.elemPicker.find("."+b).find("input").val("#"+l)},D.prototype.pickerEvents=function(){var e=this,o=e.config,r=e.elemColorBox.find("."+f),t=e.elemPicker.find("."+b+" input"),n={clear:function(i){r[0].style.background="",e.elemColorBox.find("."+d).removeClass(a).addClass(s),e.color="",o.done&&o.done(""),e.removePicker()},confirm:function(i,n){var l=t.val(),c=l,f={};if(l.indexOf(",")>-1){if(f=k(P(l)),e.select(f.h,f.s,f.b),r[0].style.background=c="#"+C(f),(l.match(/[0-9]{1,3}/g)||[]).length>3&&"rgba"===r.attr("lay-type")){var u=280*l.slice(l.lastIndexOf(",")+1,l.length-1);e.elemPicker.find("."+h).css("left",u),r[0].style.background=l,c=l}}else f=y(l),r[0].style.background=c="#"+C(f),e.elemColorBox.find("."+d).removeClass(s).addClass(a);return"change"===n?(e.select(f.h,f.s,f.b,n),void(o.change&&o.change(c))):(e.color=l,o.done&&o.done(l),void e.removePicker())}};e.elemPicker.on("click","*[colorpicker-events]",function(){var e=i(this),o=e.attr("colorpicker-events");n[o]&&n[o].call(this,e)}),t.on("keyup",function(e){var o=i(this);n.confirm.call(this,o,13===e.keyCode?null:"change")})},D.prototype.events=function(){var e=this,o=e.config,r=e.elemColorBox.find("."+f);e.elemColorBox.on("click",function(){e.renderPicker(),i(c)[0]&&(e.val(),e.side())}),o.elem[0]&&!e.elemColorBox[0].eventHandler&&(w.on("click",function(o){if(!i(o.target).hasClass(l)&&!i(o.target).parents("."+l)[0]&&!i(o.target).hasClass(c.replace(/\./g,""))&&!i(o.target).parents(c)[0]&&e.elemPicker){if(e.color){var t=k(P(e.color));e.select(t.h,t.s,t.b)}else e.elemColorBox.find("."+d).removeClass(a).addClass(s);r[0].style.background=e.color||"",e.removePicker()}}),B.on("resize",function(){return!(!e.elemPicker||!i(c)[0])&&void e.position()}),e.elemColorBox[0].eventHandler=!0)},o.render=function(e){var i=new D(e);return r.call(i)},e(t,o)});layui.define("layer",function(e){"use strict";var t=layui.$,i=layui.layer,a=layui.hint(),n=layui.device(),l="form",r=".layui-form",s="layui-this",o="layui-hide",c="layui-disabled",u=function(){this.config={verify:{required:[/[\S]+/,"必填项不能为空"],phone:[/^1\d{10}$/,"请输入正确的手机号"],email:[/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/,"邮箱格式不正确"],url:[/(^#)|(^http(s*):\/\/[^\s]+\.[^\s]+)/,"链接格式不正确"],number:function(e){if(!e||isNaN(e))return"只能填写数字"},date:[/^(\d{4})[-\/](\d{1}|0\d{1}|1[0-2])([-\/](\d{1}|0\d{1}|[1-2][0-9]|3[0-1]))*$/,"日期格式不正确"],identity:[/(^\d{15}$)|(^\d{17}(x|X|\d)$)/,"请输入正确的身份证号"]}}};u.prototype.set=function(e){var i=this;return t.extend(!0,i.config,e),i},u.prototype.verify=function(e){var i=this;return t.extend(!0,i.config.verify,e),i},u.prototype.on=function(e,t){return layui.onevent.call(this,l,e,t)},u.prototype.val=function(e,i){var a=this,n=t(r+'[lay-filter="'+e+'"]');return n.each(function(e,a){var n=t(this);layui.each(i,function(e,t){var i,a=n.find('[name="'+e+'"]');a[0]&&(i=a[0].type,"checkbox"===i?a[0].checked=t:"radio"===i?a.each(function(){this.value==t&&(this.checked=!0)}):a.val(t))})}),f.render(null,e),a.getValue(e)},u.prototype.getValue=function(e,i){i=i||t(r+'[lay-filter="'+e+'"]').eq(0);var a={},n={},l=i.find("input,select,textarea");return layui.each(l,function(e,t){if(t.name=(t.name||"").replace(/^\s*|\s*&/,""),t.name){if(/^.*\[\]$/.test(t.name)){var i=t.name.match(/^(.*)\[\]$/g)[0];a[i]=0|a[i],t.name=t.name.replace(/^(.*)\[\]$/,"$1["+a[i]++ +"]")}/^checkbox|radio$/.test(t.type)&&!t.checked||(n[t.name]=t.value)}}),n},u.prototype.render=function(e,i){var n=this,u=t(r+function(){return i?'[lay-filter="'+i+'"]':""}()),d={select:function(){var e,i="请选择",a="layui-form-select",n="layui-select-title",r="layui-select-none",d="",f=u.find("select"),v=function(i,l){t(i.target).parent().hasClass(n)&&!l||(t("."+a).removeClass(a+"ed "+a+"up"),e&&d&&e.val(d)),e=null},y=function(i,u,f){var y,p=t(this),m=i.find("."+n),k=m.find("input"),g=i.find("dl"),x=g.children("dd"),b=this.selectedIndex;if(!u){var C=function(){var e=i.offset().top+i.outerHeight()+5-h.scrollTop(),t=g.outerHeight();b=p[0].selectedIndex,i.addClass(a+"ed"),x.removeClass(o),y=null,x.eq(b).addClass(s).siblings().removeClass(s),e+t>h.height()&&e>=t&&i.addClass(a+"up"),T()},w=function(e){i.removeClass(a+"ed "+a+"up"),k.blur(),y=null,e||$(k.val(),function(e){var i=p[0].selectedIndex;e&&(d=t(p[0].options[i]).html(),0===i&&d===k.attr("placeholder")&&(d=""),k.val(d||""))})},T=function(){var e=g.children("dd."+s);if(e[0]){var t=e.position().top,i=g.height(),a=e.height();t>i&&g.scrollTop(t+g.scrollTop()-i+a-5),t<0&&g.scrollTop(t+g.scrollTop()-5)}};m.on("click",function(e){i.hasClass(a+"ed")?w():(v(e,!0),C()),g.find("."+r).remove()}),m.find(".layui-edge").on("click",function(){k.focus()}),k.on("keyup",function(e){var t=e.keyCode;9===t&&C()}).on("keydown",function(e){var t=e.keyCode;9===t&&w();var i=function(t,a){var n,l;e.preventDefault();var r=function(){var e=g.children("dd."+s);if(g.children("dd."+o)[0]&&"next"===t){var i=g.children("dd:not(."+o+",."+c+")"),n=i.eq(0).index();if(n>=0&&n<e.index()&&!i.hasClass(s))return i.eq(0).prev()[0]?i.eq(0).prev():g.children(":last")}return a&&a[0]?a:y&&y[0]?y:e}();return l=r[t](),n=r[t]("dd:not(."+o+")"),l[0]?(y=r[t](),n[0]&&!n.hasClass(c)||!y[0]?(n.addClass(s).siblings().removeClass(s),void T()):i(t,y)):y=null};38===t&&i("prev"),40===t&&i("next"),13===t&&(e.preventDefault(),g.children("dd."+s).trigger("click"))});var $=function(e,i,a){var n=0;layui.each(x,function(){var i=t(this),l=i.text(),r=l.indexOf(e)===-1;(""===e||"blur"===a?e!==l:r)&&n++,"keyup"===a&&i[r?"addClass":"removeClass"](o)});var l=n===x.length;return i(l),l},q=function(e){var t=this.value,i=e.keyCode;return 9!==i&&13!==i&&37!==i&&38!==i&&39!==i&&40!==i&&($(t,function(e){e?g.find("."+r)[0]||g.append('<p class="'+r+'">无匹配项</p>'):g.find("."+r).remove()},"keyup"),""===t&&g.find("."+r).remove(),void T())};f&&k.on("keyup",q).on("blur",function(i){var a=p[0].selectedIndex;e=k,d=t(p[0].options[a]).html(),0===a&&d===k.attr("placeholder")&&(d=""),setTimeout(function(){$(k.val(),function(e){d||k.val("")},"blur")},200)}),x.on("click",function(){var e=t(this),a=e.attr("lay-value"),n=p.attr("lay-filter");return!e.hasClass(c)&&(e.hasClass("layui-select-tips")?k.val(""):(k.val(e.text()),e.addClass(s)),e.siblings().removeClass(s),p.val(a).removeClass("layui-form-danger"),layui.event.call(this,l,"select("+n+")",{elem:p[0],value:a,othis:i}),w(!0),!1)}),i.find("dl>dt").on("click",function(e){return!1}),t(document).off("click",v).on("click",v)}};f.each(function(e,l){var r=t(this),o=r.next("."+a),u=this.disabled,d=l.value,f=t(l.options[l.selectedIndex]),v=l.options[0];if("string"==typeof r.attr("lay-ignore"))return r.show();var h="string"==typeof r.attr("lay-search"),p=v?v.value?i:v.innerHTML||i:i,m=t(['<div class="'+(h?"":"layui-unselect ")+a,(u?" layui-select-disabled":"")+'">','<div class="'+n+'">','<input type="text" placeholder="'+p+'" '+('value="'+(d?f.html():"")+'"')+(!u&&h?"":" readonly")+' class="layui-input'+(h?"":" layui-unselect")+(u?" "+c:"")+'">','<i class="layui-edge"></i></div>','<dl class="layui-anim layui-anim-upbit'+(r.find("optgroup")[0]?" layui-select-group":"")+'">',function(e){var t=[];return layui.each(e,function(e,a){0!==e||a.value?"optgroup"===a.tagName.toLowerCase()?t.push("<dt>"+a.label+"</dt>"):t.push('<dd lay-value="'+a.value+'" class="'+(d===a.value?s:"")+(a.disabled?" "+c:"")+'">'+a.innerHTML+"</dd>"):t.push('<dd lay-value="" class="layui-select-tips">'+(a.innerHTML||i)+"</dd>")}),0===t.length&&t.push('<dd lay-value="" class="'+c+'">没有选项</dd>'),t.join("")}(r.find("*"))+"</dl>","</div>"].join(""));o[0]&&o.remove(),r.after(m),y.call(this,m,u,h)})},checkbox:function(){var e={checkbox:["layui-form-checkbox","layui-form-checked","checkbox"],_switch:["layui-form-switch","layui-form-onswitch","switch"]},i=u.find("input[type=checkbox]"),a=function(e,i){var a=t(this);e.on("click",function(){var t=a.attr("lay-filter"),n=(a.attr("lay-text")||"").split("|");a[0].disabled||(a[0].checked?(a[0].checked=!1,e.removeClass(i[1]).find("em").text(n[1])):(a[0].checked=!0,e.addClass(i[1]).find("em").text(n[0])),layui.event.call(a[0],l,i[2]+"("+t+")",{elem:a[0],value:a[0].value,othis:e}))})};i.each(function(i,n){var l=t(this),r=l.attr("lay-skin"),s=(l.attr("lay-text")||"").split("|"),o=this.disabled;"switch"===r&&(r="_"+r);var u=e[r]||e.checkbox;if("string"==typeof l.attr("lay-ignore"))return l.show();var d=l.next("."+u[0]),f=t(['<div class="layui-unselect '+u[0],n.checked?" "+u[1]:"",o?" layui-checkbox-disbaled "+c:"",'"',r?' lay-skin="'+r+'"':"",">",function(){var e=n.title.replace(/\s/g,""),t={checkbox:[e?"<span>"+n.title+"</span>":"",'<i class="layui-icon layui-icon-ok"></i>'].join(""),_switch:"<em>"+((n.checked?s[0]:s[1])||"")+"</em><i></i>"};return t[r]||t.checkbox}(),"</div>"].join(""));d[0]&&d.remove(),l.after(f),a.call(this,f,u)})},radio:function(){var e="layui-form-radio",i=["",""],a=u.find("input[type=radio]"),n=function(a){var n=t(this),s="layui-anim-scaleSpring";a.on("click",function(){var o=n[0].name,c=n.parents(r),u=n.attr("lay-filter"),d=c.find("input[name="+o.replace(/(\.|#|\[|\])/g,"\\$1")+"]");n[0].disabled||(layui.each(d,function(){var a=t(this).next("."+e);this.checked=!1,a.removeClass(e+"ed"),a.find(".layui-icon").removeClass(s).html(i[1])}),n[0].checked=!0,a.addClass(e+"ed"),a.find(".layui-icon").addClass(s).html(i[0]),layui.event.call(n[0],l,"radio("+u+")",{elem:n[0],value:n[0].value,othis:a}))})};a.each(function(a,l){var r=t(this),s=r.next("."+e),o=this.disabled;if("string"==typeof r.attr("lay-ignore"))return r.show();s[0]&&s.remove();var u=t(['<div class="layui-unselect '+e,l.checked?" "+e+"ed":"",(o?" layui-radio-disbaled "+c:"")+'">','<i class="layui-anim layui-icon">'+i[l.checked?0:1]+"</i>","<div>"+function(){var e=l.title||"";return"string"==typeof r.next().attr("lay-radio")&&(e=r.next().html(),r.next().remove()),e}()+"</div>","</div>"].join(""));r.after(u),n.call(this,u)})}};return e?d[e]?d[e]():a.error("不支持的"+e+"表单渲染"):layui.each(d,function(e,t){t()}),n};var d=function(){var e=null,a=f.config.verify,s="layui-form-danger",o={},c=t(this),u=c.parents(r),d=u.find("*[lay-verify]"),v=c.parents("form")[0],h=c.attr("lay-filter");return layui.each(d,function(l,r){var o=t(this),c=o.attr("lay-verify").split("|"),u=o.attr("lay-verType"),d=o.val();if(o.removeClass(s),layui.each(c,function(t,l){var c,f="",v="function"==typeof a[l];if(a[l]){var c=v?f=a[l](d,r):!a[l][0].test(d);if(f=f||a[l][1],"required"===l&&(f=o.attr("lay-reqText")||f),c)return"tips"===u?i.tips(f,function(){return"string"==typeof o.attr("lay-ignore")||"select"!==r.tagName.toLowerCase()&&!/^checkbox|radio$/.test(r.type)?o:o.next()}(),{tips:1}):"alert"===u?i.alert(f,{title:"提示",shadeClose:!0}):i.msg(f,{icon:5,shift:6}),n.android||n.ios||setTimeout(function(){r.focus()},7),o.addClass(s),e=!0}}),e)return e}),!e&&(o=f.getValue(null,u),layui.event.call(this,l,"submit("+h+")",{elem:this,form:v,field:o}))},f=new u,v=t(document),h=t(window);f.render(),v.on("reset",r,function(){var e=t(this).attr("lay-filter");setTimeout(function(){f.render(null,e)},50)}),v.on("submit",r,d).on("click","*[lay-submit]",d),e(l,f)});layui.define("form",function(e){"use strict";var i=layui.$,a=layui.form,n=layui.layer,t="tree",r={config:{},index:layui[t]?layui[t].index+1e4:0,set:function(e){var a=this;return a.config=i.extend({},a.config,e),a},on:function(e,i){return layui.onevent.call(this,t,e,i)}},l=function(){var e=this,i=e.config,a=i.id||e.index;return l.that[a]=e,l.config[a]=i,{config:i,reload:function(i){e.reload.call(e,i)},getChecked:function(){return e.getChecked.call(e)},setChecked:function(i){return e.setChecked.call(e,i)}}},c="layui-hide",d="layui-disabled",s="layui-tree-set",o="layui-tree-iconClick",h="layui-icon-addition",u="layui-icon-subtraction",p="layui-tree-entry",f="layui-tree-main",y="layui-tree-txt",v="layui-tree-pack",C="layui-tree-spread",k="layui-tree-setLineShort",m="layui-tree-showLine",x="layui-tree-lineExtend",b=function(e){var a=this;a.index=++r.index,a.config=i.extend({},a.config,r.config,e),a.render()};b.prototype.config={data:[],showCheckbox:!1,showLine:!0,accordion:!1,onlyIconControl:!1,isJump:!1,edit:!1,text:{defaultNodeName:"未命名",none:"无数据"}},b.prototype.reload=function(e){var a=this;layui.each(e,function(e,i){i.constructor===Array&&delete a.config[e]}),a.config=i.extend(!0,{},a.config,e),a.render()},b.prototype.render=function(){var e=this,a=e.config;e.checkids=[];var n=i('<div class="layui-tree'+(a.showCheckbox?" layui-form":"")+(a.showLine?" layui-tree-line":"")+'" lay-filter="LAY-tree-'+e.index+'"></div>');e.tree(n);var t=a.elem=i(a.elem);if(t[0]){if(e.key=a.id||e.index,e.elem=n,e.elemNone=i('<div class="layui-tree-emptyText">'+a.text.none+"</div>"),t.html(e.elem),0==e.elem.find(".layui-tree-set").length)return e.elem.append(e.elemNone);a.showCheckbox&&e.renderForm("checkbox"),e.elem.find(".layui-tree-set").each(function(){var e=i(this);e.parent(".layui-tree-pack")[0]||e.addClass("layui-tree-setHide"),!e.next()[0]&&e.parents(".layui-tree-pack").eq(1).hasClass("layui-tree-lineExtend")&&e.addClass(k),e.next()[0]||e.parents(".layui-tree-set").eq(0).next()[0]||e.addClass(k)}),e.events()}},b.prototype.renderForm=function(e){a.render(e,"LAY-tree-"+this.index)},b.prototype.tree=function(e,a){var n=this,t=n.config,r=a||t.data;layui.each(r,function(a,r){var l=r.children&&r.children.length>0,o=i('<div class="layui-tree-pack" '+(r.spread?'style="display: block;"':"")+'"></div>'),h=i(['<div data-id="'+r.id+'" class="layui-tree-set'+(r.spread?" layui-tree-spread":"")+(r.checked?" layui-tree-checkedFirst":"")+'">','<div class="layui-tree-entry">','<div class="layui-tree-main">',function(){return t.showLine?l?'<span class="layui-tree-iconClick layui-tree-icon"><i class="layui-icon '+(r.spread?"layui-icon-subtraction":"layui-icon-addition")+'"></i></span>':'<span class="layui-tree-iconClick"><i class="layui-icon layui-icon-file"></i></span>':'<span class="layui-tree-iconClick"><i class="layui-tree-iconArrow '+(l?"":c)+'"></i></span>'}(),function(){return t.showCheckbox?'<input type="checkbox" name="'+(r.field||"layuiTreeCheck_"+r.id)+'" same="layuiTreeCheck" lay-skin="primary" '+(r.disabled?"disabled":"")+' value="'+r.id+'">':""}(),function(){return t.isJump&&r.href?'<a href="'+r.href+'" target="_blank" class="'+y+'">'+(r.title||r.label||t.text.defaultNodeName)+"</a>":'<span class="'+y+(r.disabled?" "+d:"")+'">'+(r.title||r.label||t.text.defaultNodeName)+"</span>"}(),"</div>",function(){if(!t.edit)return"";var e={add:'<i class="layui-icon layui-icon-add-1" data-type="add"></i>',update:'<i class="layui-icon layui-icon-edit" data-type="update"></i>',del:'<i class="layui-icon layui-icon-delete" data-type="del"></i>'},i=['<div class="layui-btn-group layui-tree-btnGroup">'];return t.edit===!0&&(t.edit=["update","del"]),"object"==typeof t.edit?(layui.each(t.edit,function(a,n){i.push(e[n]||"")}),i.join("")+"</div>"):void 0}(),"</div></div>"].join(""));l&&(h.append(o),n.tree(o,r.children)),e.append(h),h.prev("."+s)[0]&&h.prev().children(".layui-tree-pack").addClass("layui-tree-showLine"),l||h.parent(".layui-tree-pack").addClass("layui-tree-lineExtend"),n.spread(h,r),t.showCheckbox&&(r.checked&&n.checkids.push(r.id),n.checkClick(h,r)),t.edit&&n.operate(h,r)})},b.prototype.spread=function(e,a){var n=this,t=n.config,r=e.children("."+p),l=r.children("."+f),c=r.find("."+o),k=r.find("."+y),m=t.onlyIconControl?c:l,x="";m.on("click",function(i){var a=e.children("."+v),n=m.children(".layui-icon")[0]?m.children(".layui-icon"):m.find(".layui-tree-icon").children(".layui-icon");if(a[0]){if(e.hasClass(C))e.removeClass(C),a.slideUp(200),n.removeClass(u).addClass(h);else if(e.addClass(C),a.slideDown(200),n.addClass(u).removeClass(h),t.accordion){var r=e.siblings("."+s);r.removeClass(C),r.children("."+v).slideUp(200),r.find(".layui-tree-icon").children(".layui-icon").removeClass(u).addClass(h)}}else x="normal"}),k.on("click",function(){var n=i(this);n.hasClass(d)||(x=e.hasClass(C)?t.onlyIconControl?"open":"close":t.onlyIconControl?"close":"open",t.click&&t.click({elem:e,state:x,data:a}))})},b.prototype.setCheckbox=function(e,i,a){var n=this,t=(n.config,a.prop("checked"));if(!a.prop("disabled")){if("object"==typeof i.children||e.find("."+v)[0]){var r=e.find("."+v).find('input[same="layuiTreeCheck"]');r.each(function(){this.disabled||(this.checked=t)})}var l=function(e){if(e.parents("."+s)[0]){var i,a=e.parent("."+v),n=a.parent(),r=a.prev().find('input[same="layuiTreeCheck"]');t?r.prop("checked",t):(a.find('input[same="layuiTreeCheck"]').each(function(){this.checked&&(i=!0)}),i||r.prop("checked",!1)),l(n)}};l(e),n.renderForm("checkbox")}},b.prototype.checkClick=function(e,a){var n=this,t=n.config,r=e.children("."+p),l=r.children("."+f);l.on("click",'input[same="layuiTreeCheck"]+',function(r){layui.stope(r);var l=i(this).prev(),c=l.prop("checked");l.prop("disabled")||(n.setCheckbox(e,a,l),t.oncheck&&t.oncheck({elem:e,checked:c,data:a}))})},b.prototype.operate=function(e,a){var t=this,r=t.config,l=e.children("."+p),d=l.children("."+f);l.children(".layui-tree-btnGroup").on("click",".layui-icon",function(l){layui.stope(l);var f=i(this).data("type"),b=e.children("."+v),g={data:a,type:f,elem:e};if("add"==f){b[0]||(r.showLine?(d.find("."+o).addClass("layui-tree-icon"),d.find("."+o).children(".layui-icon").addClass(h).removeClass("layui-icon-file")):d.find(".layui-tree-iconArrow").removeClass(c),e.append('<div class="layui-tree-pack"></div>'));var w=r.operate&&r.operate(g),N={};if(N.title=r.text.defaultNodeName,N.id=w,t.tree(e.children("."+v),[N]),r.showLine)if(b[0])b.hasClass(x)||b.addClass(x),e.find("."+v).each(function(){i(this).children("."+s).last().addClass(k)}),b.children("."+s).last().prev().hasClass(k)?b.children("."+s).last().prev().removeClass(k):b.children("."+s).last().removeClass(k),!e.parent("."+v)[0]&&e.next()[0]&&b.children("."+s).last().removeClass(k);else{var T=e.siblings("."+s),L=1,A=e.parent("."+v);layui.each(T,function(e,a){i(a).children("."+v)[0]||(L=0)}),1==L?(T.children("."+v).addClass(m),T.children("."+v).children("."+s).removeClass(k),e.children("."+v).addClass(m),A.removeClass(x),A.children("."+s).last().children("."+v).children("."+s).last().addClass(k)):e.children("."+v).children("."+s).addClass(k)}if(!r.showCheckbox)return;if(d.find('input[same="layuiTreeCheck"]')[0].checked){var I=e.children("."+v).children("."+s).last();I.find('input[same="layuiTreeCheck"]')[0].checked=!0}t.renderForm("checkbox")}else if("update"==f){var F=d.children("."+y).html();d.children("."+y).html(""),d.append('<input type="text" class="layui-tree-editInput">'),d.children(".layui-tree-editInput").val(F).focus();var j=function(e){var i=e.val().trim();i=i?i:r.text.defaultNodeName,e.remove(),d.children("."+y).html(i),g.data.title=i,r.operate&&r.operate(g)};d.children(".layui-tree-editInput").blur(function(){j(i(this))}),d.children(".layui-tree-editInput").on("keydown",function(e){13===e.keyCode&&(e.preventDefault(),j(i(this)))})}else n.confirm('确认删除该节点 "<span style="color: #999;">'+(a.title||"")+'</span>" 吗?',function(a){if(r.operate&&r.operate(g),g.status="remove",n.close(a),!e.prev("."+s)[0]&&!e.next("."+s)[0]&&!e.parent("."+v)[0])return e.remove(),void t.elem.append(t.elemNone);if(e.siblings("."+s).children("."+p)[0]){if(r.showCheckbox){var l=function(e){if(e.parents("."+s)[0]){var a=e.siblings("."+s).children("."+p),n=e.parent("."+v).prev(),r=n.find('input[same="layuiTreeCheck"]')[0],c=1,d=0;0==r.checked&&(a.each(function(e,a){var n=i(a).find('input[same="layuiTreeCheck"]')[0];0!=n.checked||n.disabled||(c=0),n.disabled||(d=1)}),1==c&&1==d&&(r.checked=!0,t.renderForm("checkbox"),l(n.parent("."+s))))}};l(e)}if(r.showLine){var d=e.siblings("."+s),h=1,f=e.parent("."+v);layui.each(d,function(e,a){i(a).children("."+v)[0]||(h=0)}),1==h?(b[0]||(f.removeClass(x),d.children("."+v).addClass(m),d.children("."+v).children("."+s).removeClass(k)),e.next()[0]?f.children("."+s).last().children("."+v).children("."+s).last().addClass(k):e.prev().children("."+v).children("."+s).last().addClass(k),e.next()[0]||e.parents("."+s)[1]||e.parents("."+s).eq(0).next()[0]||e.prev("."+s).addClass(k)):!e.next()[0]&&e.hasClass(k)&&e.prev().addClass(k)}}else{var y=e.parent("."+v).prev();if(r.showLine){y.find("."+o).removeClass("layui-tree-icon"),y.find("."+o).children(".layui-icon").removeClass(u).addClass("layui-icon-file");var w=y.parents("."+v).eq(0);w.addClass(x),w.children("."+s).each(function(){i(this).children("."+v).children("."+s).last().addClass(k)})}else y.find(".layui-tree-iconArrow").addClass(c);e.parents("."+s).eq(0).removeClass(C),e.parent("."+v).remove()}e.remove()})})},b.prototype.events=function(){var e=this,a=e.config;e.elem.find(".layui-tree-checkedFirst");e.setChecked(e.checkids),e.elem.find(".layui-tree-search").on("keyup",function(){var n=i(this),t=n.val(),r=n.nextAll(),l=[];r.find("."+y).each(function(){var e=i(this).parents("."+p);if(i(this).html().indexOf(t)!=-1){l.push(i(this).parent());var a=function(e){e.addClass("layui-tree-searchShow"),e.parent("."+v)[0]&&a(e.parent("."+v).parent("."+s))};a(e.parent("."+s))}}),r.find("."+p).each(function(){var e=i(this).parent("."+s);e.hasClass("layui-tree-searchShow")||e.addClass(c)}),0==r.find(".layui-tree-searchShow").length&&e.elem.append(e.elemNone),a.onsearch&&a.onsearch({elem:l})}),e.elem.find(".layui-tree-search").on("keydown",function(){i(this).nextAll().find("."+p).each(function(){var e=i(this).parent("."+s);e.removeClass("layui-tree-searchShow "+c)}),i(".layui-tree-emptyText")[0]&&i(".layui-tree-emptyText").remove()})},b.prototype.getChecked=function(){var e=this,a=e.config,n=[],t=[];e.elem.find(".layui-form-checked").each(function(){n.push(i(this).prev()[0].value)});var r=function(e,a){layui.each(e,function(e,t){layui.each(n,function(e,n){if(t.id==n){var l=i.extend({},t);return delete l.children,a.push(l),t.children&&(l.children=[],r(t.children,l.children)),!0}})})};return r(i.extend({},a.data),t),t},b.prototype.setChecked=function(e){var a=this;a.config;a.elem.find("."+s).each(function(a,n){var t=i(this).data("id"),r=i(n).children("."+p).find('input[same="layuiTreeCheck"]'),l=r.next();if("number"==typeof e){if(t==e)return r[0].checked||l.click(),!1}else"object"==typeof e&&layui.each(e,function(e,i){if(i==t&&!r[0].checked)return l.click(),!0})})},l.that={},l.config={},r.reload=function(e,i){var a=l.that[e];return a.reload(i),l.call(a)},r.getChecked=function(e){var i=l.that[e];return i.getChecked()},r.setChecked=function(e,i){var a=l.that[e];return a.setChecked(i)},r.render=function(e){var i=new b(e);return l.call(i)},e(t,r)});layui.define(["laytpl","form"],function(e){"use strict";var a=layui.$,t=layui.laytpl,n=layui.form,i="transfer",l={config:{},index:layui[i]?layui[i].index+1e4:0,set:function(e){var t=this;return t.config=a.extend({},t.config,e),t},on:function(e,a){return layui.onevent.call(this,i,e,a)}},r=function(){var e=this,a=e.config,t=a.id||e.index;return r.that[t]=e,r.config[t]=a,{config:a,reload:function(a){e.reload.call(e,a)},getData:function(){return e.getData.call(e)}}},c="layui-hide",o="layui-btn-disabled",d="layui-none",s="layui-transfer-box",u="layui-transfer-header",h="layui-transfer-search",f="layui-transfer-active",y="layui-transfer-data",p=function(e){return e=e||{},['<div class="layui-transfer-box" data-index="'+e.index+'">','<div class="layui-transfer-header">','<input type="checkbox" name="'+e.checkAllName+'" lay-filter="layTransferCheckbox" lay-type="all" lay-skin="primary" title="{{ d.data.title['+e.index+"] || 'list"+(e.index+1)+"' }}\">","</div>","{{# if(d.data.showSearch){ }}",'<div class="layui-transfer-search">','<i class="layui-icon layui-icon-search"></i>','<input type="input" class="layui-input" placeholder="关键词搜索">',"</div>","{{# } }}",'<ul class="layui-transfer-data"></ul>',"</div>"].join("")},v=['<div class="layui-transfer layui-form layui-border-box" lay-filter="LAY-transfer-{{ d.index }}">',p({index:0,checkAllName:"layTransferLeftCheckAll"}),'<div class="layui-transfer-active">','<button type="button" class="layui-btn layui-btn-sm layui-btn-primary layui-btn-disabled" data-index="0">','<i class="layui-icon layui-icon-next"></i>',"</button>",'<button type="button" class="layui-btn layui-btn-sm layui-btn-primary layui-btn-disabled" data-index="1">','<i class="layui-icon layui-icon-prev"></i>',"</button>","</div>",p({index:1,checkAllName:"layTransferRightCheckAll"}),"</div>"].join(""),x=function(e){var t=this;t.index=++l.index,t.config=a.extend({},t.config,l.config,e),t.render()};x.prototype.config={title:["列表一","列表二"],width:200,height:360,data:[],value:[],showSearch:!1,id:"",text:{none:"无数据",searchNone:"无匹配数据"}},x.prototype.reload=function(e){var t=this;layui.each(e,function(e,a){a.constructor===Array&&delete t.config[e]}),t.config=a.extend(!0,{},t.config,e),t.render()},x.prototype.render=function(){var e=this,n=e.config,i=e.elem=a(t(v).render({data:n,index:e.index})),l=n.elem=a(n.elem);l[0]&&(n.data=n.data||[],n.value=n.value||[],e.key=n.id||e.index,l.html(e.elem),e.layBox=e.elem.find("."+s),e.layHeader=e.elem.find("."+u),e.laySearch=e.elem.find("."+h),e.layData=i.find("."+y),e.layBtn=i.find("."+f+" .layui-btn"),e.layBox.css({width:n.width,height:n.height}),e.layData.css({height:function(){return n.height-e.layHeader.outerHeight()-e.laySearch.outerHeight()-2}()}),e.renderData(),e.events())},x.prototype.renderData=function(){var e=this,a=(e.config,[{checkName:"layTransferLeftCheck",views:[]},{checkName:"layTransferRightCheck",views:[]}]);e.parseData(function(e){var t=e.selected?1:0,n=["<li>",'<input type="checkbox" name="'+a[t].checkName+'" lay-skin="primary" lay-filter="layTransferCheckbox" title="'+e.title+'"'+(e.disabled?" disabled":"")+(e.checked?" checked":"")+' value="'+e.value+'">',"</li>"].join("");a[t].views.push(n),delete e.selected}),e.layData.eq(0).html(a[0].views.join("")),e.layData.eq(1).html(a[1].views.join("")),e.renderCheckBtn()},x.prototype.renderForm=function(e){n.render(e,"LAY-transfer-"+this.index)},x.prototype.renderCheckBtn=function(e){var t=this,n=t.config;e=e||{},t.layBox.each(function(i){var l=a(this),r=l.find("."+y),d=l.find("."+u).find('input[type="checkbox"]'),s=r.find('input[type="checkbox"]'),h=0,f=!1;if(s.each(function(){var e=a(this).data("hide");(this.checked||this.disabled||e)&&h++,this.checked&&!e&&(f=!0)}),d.prop("checked",f&&h===s.length),t.layBtn.eq(i)[f?"removeClass":"addClass"](o),!e.stopNone){var p=r.children("li:not(."+c+")").length;t.noneView(r,p?"":n.text.none)}}),t.renderForm("checkbox")},x.prototype.noneView=function(e,t){var n=a('<p class="layui-none">'+(t||"")+"</p>");e.find("."+d)[0]&&e.find("."+d).remove(),t.replace(/\s/g,"")&&e.append(n)},x.prototype.setValue=function(){var e=this,t=e.config,n=[];return e.layBox.eq(1).find("."+y+' input[type="checkbox"]').each(function(){var e=a(this).data("hide");e||n.push(this.value)}),t.value=n,e},x.prototype.parseData=function(e){var t=this,n=t.config,i=[];return layui.each(n.data,function(t,l){l=("function"==typeof n.parseData?n.parseData(l):l)||l,i.push(l=a.extend({},l)),layui.each(n.value,function(e,a){a==l.value&&(l.selected=!0)}),e&&e(l)}),n.data=i,t},x.prototype.getData=function(e){var a=this,t=a.config,n=[];return a.setValue(),layui.each(e||t.value,function(e,a){layui.each(t.data,function(e,t){delete t.selected,a==t.value&&n.push(t)})}),n},x.prototype.events=function(){var e=this,t=e.config;e.elem.on("click",'input[lay-filter="layTransferCheckbox"]+',function(){var t=a(this).prev(),n=t[0].checked,i=t.parents("."+s).eq(0).find("."+y);t[0].disabled||("all"===t.attr("lay-type")&&i.find('input[type="checkbox"]').each(function(){this.disabled||(this.checked=n)}),e.renderCheckBtn({stopNone:!0}))}),e.layBtn.on("click",function(){var n=a(this),i=n.data("index"),l=e.layBox.eq(i),r=[];if(!n.hasClass(o)){e.layBox.eq(i).each(function(t){var n=a(this),i=n.find("."+y);i.children("li").each(function(){var t=a(this),n=t.find('input[type="checkbox"]'),i=n.data("hide");n[0].checked&&!i&&(n[0].checked=!1,l.siblings("."+s).find("."+y).append(t.clone()),t.remove(),r.push(n[0].value)),e.setValue()})}),e.renderCheckBtn();var c=l.siblings("."+s).find("."+h+" input");""===c.val()||c.trigger("keyup"),t.onchange&&t.onchange(e.getData(r),i)}}),e.laySearch.find("input").on("keyup",function(){var n=this.value,i=a(this).parents("."+h).eq(0).siblings("."+y),l=i.children("li");l.each(function(){var e=a(this),t=e.find('input[type="checkbox"]'),i=t[0].title.indexOf(n)!==-1;e[i?"removeClass":"addClass"](c),t.data("hide",!i)}),e.renderCheckBtn();var r=l.length===i.children("li."+c).length;e.noneView(i,r?t.text.searchNone:"")})},r.that={},r.config={},l.reload=function(e,a){var t=r.that[e];return t.reload(a),r.call(t)},l.getData=function(e){var a=r.that[e];return a.getData()},l.render=function(e){var a=new x(e);return r.call(a)},e(i,l)});layui.define(["laytpl","laypage","layer","form","util"],function(e){"use strict";var t=layui.$,i=layui.laytpl,a=layui.laypage,l=layui.layer,n=layui.form,o=(layui.util,layui.hint()),r=layui.device(),d={config:{checkName:"LAY_CHECKED",indexName:"LAY_TABLE_INDEX"},cache:{},index:layui.table?layui.table.index+1e4:0,set:function(e){var i=this;return i.config=t.extend({},i.config,e),i},on:function(e,t){return layui.onevent.call(this,y,e,t)}},c=function(){var e=this,t=e.config,i=t.id||t.index;return i&&(c.that[i]=e,c.config[i]=t),{config:t,reload:function(t){e.reload.call(e,t)},setColsWidth:function(){e.setColsWidth.call(e)},resize:function(){e.resize.call(e)}}},s=function(e){var t=c.config[e];return t||o.error("The ID option was not found in the table instance"),t||null},u=function(e,a,l,n){var o=e.templet?function(){return"function"==typeof e.templet?e.templet(l):i(t(e.templet).html()||String(a)).render(l)}():a;return n?t("<div>"+o+"</div>").text():o},y="table",h=".layui-table",f="layui-hide",p="layui-none",v="layui-table-view",m=".layui-table-tool",g=".layui-table-box",b=".layui-table-init",x=".layui-table-header",k=".layui-table-body",C=".layui-table-main",w=".layui-table-fixed",T=".layui-table-fixed-l",A=".layui-table-fixed-r",L=".layui-table-total",N=".layui-table-page",S=".layui-table-sort",R="layui-table-edit",W="layui-table-hover",_=function(e){var t='{{#if(item2.colspan){}} colspan="{{item2.colspan}}"{{#} if(item2.rowspan){}} rowspan="{{item2.rowspan}}"{{#}}}';return e=e||{},['<table cellspacing="0" cellpadding="0" border="0" class="layui-table" ','{{# if(d.data.skin){ }}lay-skin="{{d.data.skin}}"{{# } }} {{# if(d.data.size){ }}lay-size="{{d.data.size}}"{{# } }} {{# if(d.data.even){ }}lay-even{{# } }}>',"<thead>","{{# layui.each(d.data.cols, function(i1, item1){ }}","<tr>","{{# layui.each(item1, function(i2, item2){ }}",'{{# if(item2.fixed && item2.fixed !== "right"){ left = true; } }}','{{# if(item2.fixed === "right"){ right = true; } }}',function(){return e.fixed&&"right"!==e.fixed?'{{# if(item2.fixed && item2.fixed !== "right"){ }}':"right"===e.fixed?'{{# if(item2.fixed === "right"){ }}':""}(),"{{# var isSort = !(item2.colGroup) && item2.sort; }}",'<th data-field="{{ item2.field||i2 }}" data-key="{{d.index}}-{{i1}}-{{i2}}" {{# if( item2.parentKey){ }}data-parentkey="{{ item2.parentKey }}"{{# } }} {{# if(item2.minWidth){ }}data-minwidth="{{item2.minWidth}}"{{# } }} '+t+' {{# if(item2.unresize || item2.colGroup){ }}data-unresize="true"{{# } }} class="{{# if(item2.hide){ }}layui-hide{{# } }}{{# if(isSort){ }} layui-unselect{{# } }}{{# if(!item2.field){ }} layui-table-col-special{{# } }}">','<div class="layui-table-cell laytable-cell-',"{{# if(item2.colGroup){ }}","group","{{# } else { }}","{{d.index}}-{{i1}}-{{i2}}",'{{# if(item2.type !== "normal"){ }}'," laytable-cell-{{ item2.type }}","{{# } }}","{{# } }}",'" {{#if(item2.align){}}align="{{item2.align}}"{{#}}}>','{{# if(item2.type === "checkbox"){ }}','<input type="checkbox" name="layTableCheckbox" lay-skin="primary" lay-filter="layTableAllChoose" {{# if(item2[d.data.checkName]){ }}checked{{# }; }}>',"{{# } else { }}",'<span>{{item2.title||""}}</span>',"{{# if(isSort){ }}",'<span class="layui-table-sort layui-inline"><i class="layui-edge layui-table-sort-asc" title="升序"></i><i class="layui-edge layui-table-sort-desc" title="降序"></i></span>',"{{# } }}","{{# } }}","</div>","</th>",e.fixed?"{{# }; }}":"","{{# }); }}","</tr>","{{# }); }}","</thead>","</table>"].join("")},E=['<table cellspacing="0" cellpadding="0" border="0" class="layui-table" ','{{# if(d.data.skin){ }}lay-skin="{{d.data.skin}}"{{# } }} {{# if(d.data.size){ }}lay-size="{{d.data.size}}"{{# } }} {{# if(d.data.even){ }}lay-even{{# } }}>',"<tbody></tbody>","</table>"].join(""),z=['<div class="layui-form layui-border-box {{d.VIEW_CLASS}}" lay-filter="LAY-table-{{d.index}}" lay-id="{{ d.data.id }}" style="{{# if(d.data.width){ }}width:{{d.data.width}}px;{{# } }} {{# if(d.data.height){ }}height:{{d.data.height}}px;{{# } }}">',"{{# if(d.data.toolbar){ }}",'<div class="layui-table-tool">','<div class="layui-table-tool-temp"></div>','<div class="layui-table-tool-self"></div>',"</div>","{{# } }}",'<div class="layui-table-box">',"{{# if(d.data.loading){ }}",'<div class="layui-table-init" style="background-color: #fff;">','<i class="layui-icon layui-icon-loading layui-anim layui-anim-rotate layui-anim-loop"></i>',"</div>","{{# } }}","{{# var left, right; }}",'<div class="layui-table-header">',_(),"</div>",'<div class="layui-table-body layui-table-main">',E,"</div>","{{# if(left){ }}",'<div class="layui-table-fixed layui-table-fixed-l">','<div class="layui-table-header">',_({fixed:!0}),"</div>",'<div class="layui-table-body">',E,"</div>","</div>","{{# }; }}","{{# if(right){ }}",'<div class="layui-table-fixed layui-table-fixed-r">','<div class="layui-table-header">',_({fixed:"right"}),'<div class="layui-table-mend"></div>',"</div>",'<div class="layui-table-body">',E,"</div>","</div>","{{# }; }}","</div>","{{# if(d.data.totalRow){ }}",'<div class="layui-table-total">','<table cellspacing="0" cellpadding="0" border="0" class="layui-table" ','{{# if(d.data.skin){ }}lay-skin="{{d.data.skin}}"{{# } }} {{# if(d.data.size){ }}lay-size="{{d.data.size}}"{{# } }} {{# if(d.data.even){ }}lay-even{{# } }}>','<tbody><tr><td><div class="layui-table-cell" style="visibility: hidden;">Total</div></td></tr></tbody>',"</table>","</div>","{{# } }}","{{# if(d.data.page){ }}",'<div class="layui-table-page">','<div id="layui-table-page{{d.index}}"></div>',"</div>","{{# } }}","<style>","{{# layui.each(d.data.cols, function(i1, item1){","layui.each(item1, function(i2, item2){ }}",".laytable-cell-{{d.index}}-{{i1}}-{{i2}}{ ","{{# if(item2.width){ }}","width: {{item2.width}}px;","{{# } }}"," }","{{# });","}); }}","</style>","</div>"].join(""),H=t(window),j=t(document),F=function(e){var i=this;i.index=++d.index,i.config=t.extend({},i.config,d.config,e),i.render()};F.prototype.config={limit:10,loading:!0,cellMinWidth:60,defaultToolbar:["filter","exports","print"],autoSort:!0,text:{none:"无数据"}},F.prototype.render=function(){var e=this,a=e.config;if(a.elem=t(a.elem),a.where=a.where||{},a.id=a.id||a.elem.attr("id")||e.index,a.request=t.extend({pageName:"page",limitName:"limit"},a.request),a.response=t.extend({statusName:"code",statusCode:0,msgName:"msg",dataName:"data",totalRowName:"totalRow",countName:"count"},a.response),"object"==typeof a.page&&(a.limit=a.page.limit||a.limit,a.limits=a.page.limits||a.limits,e.page=a.page.curr=a.page.curr||1,delete a.page.elem,delete a.page.jump),!a.elem[0])return e;a.height&&/^full-\d+$/.test(a.height)&&(e.fullHeightGap=a.height.split("-")[1],a.height=H.height()-e.fullHeightGap),e.setInit();var l=a.elem,n=l.next("."+v),o=e.elem=t(i(z).render({VIEW_CLASS:v,data:a,index:e.index}));if(a.index=e.index,e.key=a.id||a.index,n[0]&&n.remove(),l.after(o),e.layTool=o.find(m),e.layBox=o.find(g),e.layHeader=o.find(x),e.layMain=o.find(C),e.layBody=o.find(k),e.layFixed=o.find(w),e.layFixLeft=o.find(T),e.layFixRight=o.find(A),e.layTotal=o.find(L),e.layPage=o.find(N),e.renderToolbar(),e.fullSize(),a.cols.length>1){var r=e.layFixed.find(x).find("th");r.height(e.layHeader.height()-1-parseFloat(r.css("padding-top"))-parseFloat(r.css("padding-bottom")))}e.pullData(e.page),e.events()},F.prototype.initOpts=function(e){var t=this,i=(t.config,{checkbox:48,radio:48,space:15,numbers:40});e.checkbox&&(e.type="checkbox"),e.space&&(e.type="space"),e.type||(e.type="normal"),"normal"!==e.type&&(e.unresize=!0,e.width=e.width||i[e.type])},F.prototype.setInit=function(e){var t=this,i=t.config;return i.clientWidth=i.width||function(){var e=function(t){var a,l;t=t||i.elem.parent(),a=t.width();try{l="none"===t.css("display")}catch(n){}return!t[0]||a&&!l?a:e(t.parent())};return e()}(),"width"===e?i.clientWidth:void layui.each(i.cols,function(e,a){layui.each(a,function(l,n){if(!n)return void a.splice(l,1);if(n.key=e+"-"+l,n.hide=n.hide||!1,n.colGroup||n.colspan>1){var o=0;layui.each(i.cols[e+1],function(t,i){i.HAS_PARENT||o>1&&o==n.colspan||(i.HAS_PARENT=!0,i.parentKey=e+"-"+l,o+=parseInt(i.colspan>1?i.colspan:1))}),n.colGroup=!0}t.initOpts(n)})})},F.prototype.renderToolbar=function(){var e=this,a=e.config,l=['<div class="layui-inline" lay-event="add"><i class="layui-icon layui-icon-add-1"></i></div>','<div class="layui-inline" lay-event="update"><i class="layui-icon layui-icon-edit"></i></div>','<div class="layui-inline" lay-event="delete"><i class="layui-icon layui-icon-delete"></i></div>'].join(""),n=e.layTool.find(".layui-table-tool-temp");if("default"===a.toolbar)n.html(l);else if("string"==typeof a.toolbar){var o=t(a.toolbar).html()||"";o&&n.html(i(o).render(a))}var r={filter:{title:"筛选列",layEvent:"LAYTABLE_COLS",icon:"layui-icon-cols"},exports:{title:"导出",layEvent:"LAYTABLE_EXPORT",icon:"layui-icon-export"},print:{title:"打印",layEvent:"LAYTABLE_PRINT",icon:"layui-icon-print"}},d=[];"object"==typeof a.defaultToolbar&&layui.each(a.defaultToolbar,function(e,t){var i="string"==typeof t?r[t]:t;i&&d.push('<div class="layui-inline" title="'+i.title+'" lay-event="'+i.layEvent+'"><i class="layui-icon '+i.icon+'"></i></div>')}),e.layTool.find(".layui-table-tool-self").html(d.join(""))},F.prototype.setParentCol=function(e,t){var i=this,a=i.config,l=i.layHeader.find('th[data-key="'+a.index+"-"+t+'"]'),n=parseInt(l.attr("colspan"))||0;if(l[0]){var o=t.split("-"),r=a.cols[o[0]][o[1]];e?n--:n++,l.attr("colspan",n),l[n<1?"addClass":"removeClass"](f),r.colspan=n,r.hide=n<1;var d=l.data("parentkey");d&&i.setParentCol(e,d)}},F.prototype.setColsPatch=function(){var e=this,t=e.config;layui.each(t.cols,function(t,i){layui.each(i,function(t,i){i.hide&&e.setParentCol(i.hide,i.parentKey)})})},F.prototype.setColsWidth=function(){var e=this,t=e.config,i=0,a=0,l=0,n=0,o=e.setInit("width");e.eachCols(function(e,t){t.hide||i++}),o=o-function(){return"line"===t.skin||"nob"===t.skin?2:i+1}()-e.getScrollWidth(e.layMain[0])-1;var r=function(e){layui.each(t.cols,function(i,r){layui.each(r,function(i,d){var c=0,s=d.minWidth||t.cellMinWidth;return d?void(d.colGroup||d.hide||(e?l&&l<s&&(a--,c=s):(c=d.width||0,/\d+%$/.test(c)?(c=Math.floor(parseFloat(c)/100*o),c<s&&(c=s)):c||(d.width=c=0,a++)),d.hide&&(c=0),n+=c)):void r.splice(i,1)})}),o>n&&a&&(l=(o-n)/a)};r(),r(!0),e.autoColNums=a,e.eachCols(function(i,a){var n=a.minWidth||t.cellMinWidth;a.colGroup||a.hide||(0===a.width?e.getCssRule(t.index+"-"+a.key,function(e){e.style.width=Math.floor(l>=n?l:n)+"px"}):/\d+%$/.test(a.width)&&e.getCssRule(t.index+"-"+a.key,function(e){e.style.width=Math.floor(parseFloat(a.width)/100*o)+"px"}))});var d=e.layMain.width()-e.getScrollWidth(e.layMain[0])-e.layMain.children("table").outerWidth();if(e.autoColNums&&d>=-i&&d<=i){var c=function(t){var i;return t=t||e.layHeader.eq(0).find("thead th:last-child"),i=t.data("field"),!i&&t.prev()[0]?c(t.prev()):t},s=c(),u=s.data("key");e.getCssRule(u,function(t){var i=t.style.width||s.outerWidth();t.style.width=parseFloat(i)+d+"px",e.layMain.height()-e.layMain.prop("clientHeight")>0&&(t.style.width=parseFloat(t.style.width)-1+"px")})}e.loading(!0)},F.prototype.resize=function(){var e=this;e.fullSize(),e.setColsWidth(),e.scrollPatch()},F.prototype.reload=function(e){var i=this;e=e||{},delete i.haveInit,e.data&&e.data.constructor===Array&&delete i.config.data,i.config=t.extend(!0,{},i.config,e),i.render()},F.prototype.errorView=function(e){var i=this,a=i.layMain.find("."+p),l=t('<div class="'+p+'">'+(e||"Error")+"</div>");a[0]&&(i.layNone.remove(),a.remove()),i.layFixed.addClass(f),i.layMain.find("tbody").html(""),i.layMain.append(i.layNone=l),d.cache[i.key]=[]},F.prototype.page=1,F.prototype.pullData=function(e){var i=this,a=i.config,l=a.request,n=a.response,o=function(){"object"==typeof a.initSort&&i.sort(a.initSort.field,a.initSort.type)};if(i.startTime=(new Date).getTime(),a.url){var r={};r[l.pageName]=e,r[l.limitName]=a.limit;var d=t.extend(r,a.where);a.contentType&&0==a.contentType.indexOf("application/json")&&(d=JSON.stringify(d)),i.loading(),t.ajax({type:a.method||"get",url:a.url,contentType:a.contentType,data:d,dataType:"json",headers:a.headers||{},success:function(t){"function"==typeof a.parseData&&(t=a.parseData(t)||t),t[n.statusName]!=n.statusCode?(i.renderForm(),i.errorView(t[n.msgName]||'返回的数据不符合规范,正确的成功状态码应为:"'+n.statusName+'": '+n.statusCode)):(i.renderData(t,e,t[n.countName]),o(),a.time=(new Date).getTime()-i.startTime+" ms"),i.setColsWidth(),"function"==typeof a.done&&a.done(t,e,t[n.countName])},error:function(e,t){i.errorView("数据接口请求异常:"+t),i.renderForm(),i.setColsWidth()}})}else if(a.data&&a.data.constructor===Array){var c={},s=e*a.limit-a.limit;c[n.dataName]=a.data.concat().splice(s,a.limit),c[n.countName]=a.data.length,"object"==typeof a.totalRow&&(c[n.totalRowName]=t.extend({},a.totalRow)),i.renderData(c,e,c[n.countName]),o(),i.setColsWidth(),"function"==typeof a.done&&a.done(c,e,c[n.countName])}},F.prototype.eachCols=function(e){var t=this;return d.eachCols(null,e,t.config.cols),t},F.prototype.renderData=function(e,n,o,r){var c=this,s=c.config,y=e[s.response.dataName]||[],h=e[s.response.totalRowName],v=[],m=[],g=[],b=function(){var e;return!r&&c.sortKey?c.sort(c.sortKey.field,c.sortKey.sort,!0):(layui.each(y,function(a,l){var o=[],y=[],h=[],p=a+s.limit*(n-1)+1;0!==l.length&&(r||(l[d.config.indexName]=a),c.eachCols(function(n,r){var c=r.field||n,v=s.index+"-"+r.key,m=l[c];if(void 0!==m&&null!==m||(m=""),!r.colGroup){var g=['<td data-field="'+c+'" data-key="'+v+'" '+function(){var e=[];return r.edit&&e.push('data-edit="'+r.edit+'"'),r.align&&e.push('align="'+r.align+'"'),r.templet&&e.push('data-content="'+m+'"'),r.toolbar&&e.push('data-off="true"'),r.event&&e.push('lay-event="'+r.event+'"'),r.style&&e.push('style="'+r.style+'"'),r.minWidth&&e.push('data-minwidth="'+r.minWidth+'"'),e.join(" ")}()+' class="'+function(){var e=[];return r.hide&&e.push(f),r.field||e.push("layui-table-col-special"),e.join(" ")}()+'">','<div class="layui-table-cell laytable-cell-'+function(){return"normal"===r.type?v:v+" laytable-cell-"+r.type}()+'">'+function(){var n=t.extend(!0,{LAY_INDEX:p},l),o=d.config.checkName;switch(r.type){case"checkbox":return'<input type="checkbox" name="layTableCheckbox" lay-skin="primary" '+function(){return r[o]?(l[o]=r[o],r[o]?"checked":""):n[o]?"checked":""}()+">";case"radio":return n[o]&&(e=a),'<input type="radio" name="layTableRadio_'+s.index+'" '+(n[o]?"checked":"")+' lay-type="layTableRadio">';case"numbers":return p}return r.toolbar?i(t(r.toolbar).html()||"").render(n):u(r,m,n)}(),"</div></td>"].join("");o.push(g),r.fixed&&"right"!==r.fixed&&y.push(g),"right"===r.fixed&&h.push(g)}}),v.push('<tr data-index="'+a+'">'+o.join("")+"</tr>"),m.push('<tr data-index="'+a+'">'+y.join("")+"</tr>"),g.push('<tr data-index="'+a+'">'+h.join("")+"</tr>"))}),c.layBody.scrollTop(0),c.layMain.find("."+p).remove(),c.layMain.find("tbody").html(v.join("")),c.layFixLeft.find("tbody").html(m.join("")),c.layFixRight.find("tbody").html(g.join("")),c.renderForm(),"number"==typeof e&&c.setThisRowChecked(e),c.syncCheckAll(),c.haveInit?c.scrollPatch():setTimeout(function(){c.scrollPatch()},50),c.haveInit=!0,l.close(c.tipsIndex),s.HAS_SET_COLS_PATCH||c.setColsPatch(),void(s.HAS_SET_COLS_PATCH=!0))};return d.cache[c.key]=y,c.layPage[0==o||0===y.length&&1==n?"addClass":"removeClass"](f),r?b():0===y.length?(c.renderForm(),c.errorView(s.text.none)):(c.layFixed.removeClass(f),b(),c.renderTotal(y,h),void(s.page&&(s.page=t.extend({elem:"layui-table-page"+s.index,count:o,limit:s.limit,limits:s.limits||[10,20,30,40,50,60,70,80,90],groups:3,layout:["prev","page","next","skip","count","limit"],prev:'<i class="layui-icon"></i>',next:'<i class="layui-icon"></i>',jump:function(e,t){t||(c.page=e.curr,s.limit=e.limit,c.pullData(e.curr))}},s.page),s.page.count=o,a.render(s.page))))},F.prototype.renderTotal=function(e,t){var i=this,a=i.config,l={};if(a.totalRow){layui.each(e,function(e,t){0!==t.length&&i.eachCols(function(e,i){var a=i.field||e,n=t[a];i.totalRow&&(l[a]=(l[a]||0)+(parseFloat(n)||0))})}),i.dataTotal={};var n=[];i.eachCols(function(e,o){var r=o.field||e,d=function(){var e=o.totalRowText||"",i=parseFloat(l[r]).toFixed(2),a={};return a[r]=i,i=u(o,i,a),t?t[o.field]||e:o.totalRow?i||e:e}(),c=['<td data-field="'+r+'" data-key="'+a.index+"-"+o.key+'" '+function(){var e=[];return o.align&&e.push('align="'+o.align+'"'),o.style&&e.push('style="'+o.style+'"'),o.minWidth&&e.push('data-minwidth="'+o.minWidth+'"'),e.join(" ")}()+' class="'+function(){var e=[];return o.hide&&e.push(f),o.field||e.push("layui-table-col-special"),e.join(" ")}()+'">','<div class="layui-table-cell laytable-cell-'+function(){var e=a.index+"-"+o.key;return"normal"===o.type?e:e+" laytable-cell-"+o.type}()+'">'+d,"</div></td>"].join("");o.field&&(i.dataTotal[r]=d),n.push(c)}),i.layTotal.find("tbody").html("<tr>"+n.join("")+"</tr>")}},F.prototype.getColElem=function(e,t){var i=this,a=i.config;return e.eq(0).find(".laytable-cell-"+(a.index+"-"+t)+":eq(0)")},F.prototype.renderForm=function(e){n.render(e,"LAY-table-"+this.index)},F.prototype.setThisRowChecked=function(e){var t=this,i=(t.config,"layui-table-click"),a=t.layBody.find('tr[data-index="'+e+'"]');a.addClass(i).siblings("tr").removeClass(i)},F.prototype.sort=function(e,i,a,l){var n,r,c=this,s={},u=c.config,h=u.elem.attr("lay-filter"),f=d.cache[c.key];"string"==typeof e&&c.layHeader.find("th").each(function(i,a){var l=t(this),o=l.data("field");if(o===e)return e=l,n=o,!1});try{var n=n||e.data("field"),p=e.data("key");if(c.sortKey&&!a&&n===c.sortKey.field&&i===c.sortKey.sort)return;var v=c.layHeader.find("th .laytable-cell-"+p).find(S);c.layHeader.find("th").find(S).removeAttr("lay-sort"),v.attr("lay-sort",i||null),c.layFixed.find("th")}catch(m){return o.error("Table modules: Did not match to field")}c.sortKey={field:n,sort:i},u.autoSort&&("asc"===i?r=layui.sort(f,n):"desc"===i?r=layui.sort(f,n,!0):(r=layui.sort(f,d.config.indexName),delete c.sortKey)),s[u.response.dataName]=r||f,c.renderData(s,c.page,c.count,!0),l&&layui.event.call(e,y,"sort("+h+")",{field:n,type:i})},F.prototype.loading=function(e){var i=this,a=i.config;a.loading&&(e?(i.layInit&&i.layInit.remove(),delete i.layInit,i.layBox.find(b).remove()):(i.layInit=t(['<div class="layui-table-init">','<i class="layui-icon layui-icon-loading layui-anim layui-anim-rotate layui-anim-loop"></i>',"</div>"].join("")),i.layBox.append(i.layInit)))},F.prototype.setCheckData=function(e,t){var i=this,a=i.config,l=d.cache[i.key];l[e]&&l[e].constructor!==Array&&(l[e][a.checkName]=t)},F.prototype.syncCheckAll=function(){var e=this,t=e.config,i=e.layHeader.find('input[name="layTableCheckbox"]'),a=function(i){return e.eachCols(function(e,a){"checkbox"===a.type&&(a[t.checkName]=i)}),i};i[0]&&(d.checkStatus(e.key).isAll?(i[0].checked||(i.prop("checked",!0),e.renderForm("checkbox")),a(!0)):(i[0].checked&&(i.prop("checked",!1),e.renderForm("checkbox")),a(!1)))},F.prototype.getCssRule=function(e,t){var i=this,a=i.elem.find("style")[0],l=a.sheet||a.styleSheet||{},n=l.cssRules||l.rules;layui.each(n,function(i,a){if(a.selectorText===".laytable-cell-"+e)return t(a),!0})},F.prototype.fullSize=function(){var e,t=this,i=t.config,a=i.height;t.fullHeightGap&&(a=H.height()-t.fullHeightGap,a<135&&(a=135),t.elem.css("height",a)),a&&(e=parseFloat(a)-(t.layHeader.outerHeight()||38),i.toolbar&&(e-=t.layTool.outerHeight()||50),i.totalRow&&(e-=t.layTotal.outerHeight()||40),i.page&&(e-=t.layPage.outerHeight()||41),t.layMain.css("height",e-2))},F.prototype.getScrollWidth=function(e){var t=0;return e?t=e.offsetWidth-e.clientWidth:(e=document.createElement("div"),e.style.width="100px",e.style.height="100px",e.style.overflowY="scroll",document.body.appendChild(e),t=e.offsetWidth-e.clientWidth,document.body.removeChild(e)),t},F.prototype.scrollPatch=function(){var e=this,i=e.layMain.children("table"),a=e.layMain.width()-e.layMain.prop("clientWidth"),l=e.layMain.height()-e.layMain.prop("clientHeight"),n=(e.getScrollWidth(e.layMain[0]),i.outerWidth()-e.layMain.width()),o=function(e){if(a&&l){if(e=e.eq(0),!e.find(".layui-table-patch")[0]){var i=t('<th class="layui-table-patch"><div class="layui-table-cell"></div></th>');i.find("div").css({width:a}),e.find("tr").append(i)}}else e.find(".layui-table-patch").remove()};o(e.layHeader),o(e.layTotal);var r=e.layMain.height(),d=r-l;e.layFixed.find(k).css("height",i.height()>=d?d:"auto"),e.layFixRight[n>0?"removeClass":"addClass"](f),e.layFixRight.css("right",a-1)},F.prototype.events=function(){var e,i=this,a=i.config,o=t("body"),c={},s=i.layHeader.find("th"),h=".layui-table-cell",p=a.elem.attr("lay-filter");i.layTool.on("click","*[lay-event]",function(e){var o=t(this),c=o.attr("lay-event"),s=function(e){var l=t(e.list),n=t('<ul class="layui-table-tool-panel"></ul>');n.html(l),a.height&&n.css("max-height",a.height-(i.layTool.outerHeight()||50)),o.find(".layui-table-tool-panel")[0]||o.append(n),i.renderForm(),n.on("click",function(e){layui.stope(e)}),e.done&&e.done(n,l)};switch(layui.stope(e),j.trigger("table.tool.panel.remove"),l.close(i.tipsIndex),c){case"LAYTABLE_COLS":s({list:function(){var e=[];return i.eachCols(function(t,i){i.field&&"normal"==i.type&&e.push('<li><input type="checkbox" name="'+i.field+'" data-key="'+i.key+'" data-parentkey="'+(i.parentKey||"")+'" lay-skin="primary" '+(i.hide?"":"checked")+' title="'+(i.title||i.field)+'" lay-filter="LAY_TABLE_TOOL_COLS"></li>')}),e.join("")}(),done:function(){n.on("checkbox(LAY_TABLE_TOOL_COLS)",function(e){var l=t(e.elem),n=this.checked,o=l.data("key"),r=l.data("parentkey");layui.each(a.cols,function(e,t){layui.each(t,function(t,l){if(e+"-"+t===o){var d=l.hide;l.hide=!n,i.elem.find('*[data-key="'+a.index+"-"+o+'"]')[n?"removeClass":"addClass"](f),d!=l.hide&&i.setParentCol(!n,r),i.resize()}})})})}});break;case"LAYTABLE_EXPORT":r.ie?l.tips("导出功能不支持 IE,请用 Chrome 等高级浏览器导出",this,{tips:3}):s({list:function(){return['<li data-type="csv">导出到 Csv 文件</li>','<li data-type="xls">导出到 Excel 文件</li>'].join("")}(),done:function(e,l){l.on("click",function(){var e=t(this).data("type");d.exportFile.call(i,a.id,null,e)})}});break;case"LAYTABLE_PRINT":var u=window.open("打印窗口","_blank"),h=["<style>","body{font-size: 12px; color: #666;}","table{width: 100%; border-collapse: collapse; border-spacing: 0;}","th,td{line-height: 20px; padding: 9px 15px; border: 1px solid #ccc; text-align: left; font-size: 12px; color: #666;}","a{color: #666; text-decoration:none;}","*.layui-hide{display: none}","</style>"].join(""),v=t(i.layHeader.html());v.append(i.layMain.find("table").html()),v.append(i.layTotal.find("table").html()),v.find("th.layui-table-patch").remove(),v.find(".layui-table-col-special").remove(),u.document.write(h+v.prop("outerHTML")),u.document.close(),u.print(),u.close()}layui.event.call(this,y,"toolbar("+p+")",t.extend({event:c,config:a},{}))}),s.on("mousemove",function(e){var i=t(this),a=i.offset().left,l=e.clientX-a;i.data("unresize")||c.resizeStart||(c.allowResize=i.width()-l<=10,o.css("cursor",c.allowResize?"col-resize":""))}).on("mouseleave",function(){t(this);c.resizeStart||o.css("cursor","")}).on("mousedown",function(e){var l=t(this);if(c.allowResize){var n=l.data("key");e.preventDefault(),c.resizeStart=!0,c.offset=[e.clientX,e.clientY],i.getCssRule(n,function(e){var t=e.style.width||l.outerWidth();c.rule=e,c.ruleWidth=parseFloat(t),c.minWidth=l.data("minwidth")||a.cellMinWidth})}}),j.on("mousemove",function(t){if(c.resizeStart){if(t.preventDefault(),c.rule){var a=c.ruleWidth+t.clientX-c.offset[0];a<c.minWidth&&(a=c.minWidth),c.rule.style.width=a+"px",l.close(i.tipsIndex)}e=1}}).on("mouseup",function(t){c.resizeStart&&(c={},o.css("cursor",""),i.scrollPatch()),2===e&&(e=null)}),s.on("click",function(a){var l,n=t(this),o=n.find(S),r=o.attr("lay-sort");return o[0]&&1!==e?(l="asc"===r?"desc":"desc"===r?null:"asc",void i.sort(n,l,null,!0)):e=2}).find(S+" .layui-edge ").on("click",function(e){var a=t(this),l=a.index(),n=a.parents("th").eq(0).data("field");layui.stope(e),0===l?i.sort(n,"asc",null,!0):i.sort(n,"desc",null,!0)});var v=function(e){var a=t(this),l=a.parents("tr").eq(0).data("index"),n=i.layBody.find('tr[data-index="'+l+'"]'),o=d.cache[i.key]||[];return o=o[l]||{},t.extend({tr:n,data:d.clearCacheKey(o),del:function(){d.cache[i.key][l]=[],n.remove(),i.scrollPatch()},update:function(e){e=e||{},layui.each(e,function(e,t){if(e in o){var a,l=n.children('td[data-field="'+e+'"]');o[e]=t,i.eachCols(function(t,i){i.field==e&&i.templet&&(a=i.templet)}),l.children(h).html(u({templet:a},t,o)),l.data("content",t)}})}},e)};i.elem.on("click",'input[name="layTableCheckbox"]+',function(){var e=t(this).prev(),a=i.layBody.find('input[name="layTableCheckbox"]'),l=e.parents("tr").eq(0).data("index"),n=e[0].checked,o="layTableAllChoose"===e.attr("lay-filter");o?(a.each(function(e,t){t.checked=n,i.setCheckData(e,n)}),i.syncCheckAll(),i.renderForm("checkbox")):(i.setCheckData(l,n),i.syncCheckAll()),layui.event.call(e[0],y,"checkbox("+p+")",v.call(e[0],{checked:n,type:o?"all":"one"}))}),i.elem.on("click",'input[lay-type="layTableRadio"]+',function(){var e=t(this).prev(),a=e[0].checked,l=d.cache[i.key],n=e.parents("tr").eq(0).data("index");layui.each(l,function(e,t){n===e?t.LAY_CHECKED=!0:delete t.LAY_CHECKED}),i.setThisRowChecked(n),layui.event.call(this,y,"radio("+p+")",v.call(this,{checked:a}))}),i.layBody.on("mouseenter","tr",function(){var e=t(this),a=e.index();e.data("off")||i.layBody.find("tr:eq("+a+")").addClass(W)}).on("mouseleave","tr",function(){var e=t(this),a=e.index();e.data("off")||i.layBody.find("tr:eq("+a+")").removeClass(W)}).on("click","tr",function(){m.call(this,"row")}).on("dblclick","tr",function(){m.call(this,"rowDouble")});var m=function(e){var i=t(this);i.data("off")||layui.event.call(this,y,e+"("+p+")",v.call(i.children("td")[0]))};i.layBody.on("change","."+R,function(){var e=t(this),a=this.value,l=e.parent().data("field"),n=e.parents("tr").eq(0).data("index"),o=d.cache[i.key][n];o[l]=a,layui.event.call(this,y,"edit("+p+")",v.call(this,{value:a,field:l}))}).on("blur","."+R,function(){var e,a=t(this),l=this,n=a.parent().data("field"),o=a.parents("tr").eq(0).data("index"),r=d.cache[i.key][o];i.eachCols(function(t,i){i.field==n&&i.templet&&(e=i.templet)}),a.siblings(h).html(function(t){return u({templet:e},t,r)}(l.value)),a.parent().data("content",l.value),a.remove()}),i.layBody.on("click","td",function(e){var i=t(this),a=(i.data("field"),i.data("edit")),l=i.children(h);if(!i.data("off")&&a){var n=t('<input class="layui-input '+R+'">');return n[0].value=i.data("content")||l.text(),i.find("."+R)[0]||i.append(n),n.focus(),void layui.stope(e)}}).on("mouseenter","td",function(){b.call(this)}).on("mouseleave","td",function(){b.call(this,"hide")});var g="layui-table-grid-down",b=function(e){var i=t(this),a=i.children(h);if(!i.data("off"))if(e)i.find(".layui-table-grid-down").remove();else if(a.prop("scrollWidth")>a.outerWidth()){if(a.find("."+g)[0])return;i.append('<div class="'+g+'"><i class="layui-icon layui-icon-down"></i></div>')}};i.layBody.on("click","."+g,function(e){var n=t(this),o=n.parent(),d=o.children(h);i.tipsIndex=l.tips(['<div class="layui-table-tips-main" style="margin-top: -'+(d.height()+16)+"px;"+function(){return"sm"===a.size?"padding: 4px 15px; font-size: 12px;":"lg"===a.size?"padding: 14px 15px;":""}()+'">',d.html(),"</div>",'<i class="layui-icon layui-table-tips-c layui-icon-close"></i>'].join(""),d[0],{tips:[3,""],time:-1,anim:-1,maxWidth:r.ios||r.android?300:i.elem.width()/2,isOutAnim:!1,skin:"layui-table-tips",success:function(e,t){e.find(".layui-table-tips-c").on("click",function(){l.close(t)})}}),layui.stope(e)}),i.layBody.on("click","*[lay-event]",function(){var e=t(this),a=e.parents("tr").eq(0).data("index");layui.event.call(this,y,"tool("+p+")",v.call(this,{event:e.attr("lay-event")})),i.setThisRowChecked(a)}),i.layMain.on("scroll",function(){var e=t(this),a=e.scrollLeft(),n=e.scrollTop();i.layHeader.scrollLeft(a),i.layTotal.scrollLeft(a),i.layFixed.find(k).scrollTop(n),l.close(i.tipsIndex)}),H.on("resize",function(){i.resize()})},function(){j.on("click",function(){j.trigger("table.remove.tool.panel")}),j.on("table.remove.tool.panel",function(){t(".layui-table-tool-panel").remove()})}(),d.init=function(e,i){i=i||{};var a=this,l=t(e?'table[lay-filter="'+e+'"]':h+"[lay-data]"),n="Table element property lay-data configuration item has a syntax error: ";return l.each(function(){var a=t(this),l=a.attr("lay-data");try{l=new Function("return "+l)()}catch(r){o.error(n+l)}var c=[],s=t.extend({elem:this,cols:[],data:[],skin:a.attr("lay-skin"),size:a.attr("lay-size"),even:"string"==typeof a.attr("lay-even")},d.config,i,l);e&&a.hide(),a.find("thead>tr").each(function(e){s.cols[e]=[],t(this).children().each(function(i){var a=t(this),l=a.attr("lay-data");try{l=new Function("return "+l)()}catch(r){return o.error(n+l)}var d=t.extend({title:a.text(),colspan:a.attr("colspan")||0,rowspan:a.attr("rowspan")||0},l);d.colspan<2&&c.push(d),s.cols[e].push(d)})}),a.find("tbody>tr").each(function(e){var i=t(this),a={};i.children("td").each(function(e,i){var l=t(this),n=l.data("field");if(n)return a[n]=l.html()}),layui.each(c,function(e,t){var l=i.children("td").eq(e);a[t.field]=l.html()}),s.data[e]=a}),d.render(s)}),a},c.that={},c.config={},d.eachCols=function(e,i,a){var l=c.config[e]||{},n=[],o=0;a=t.extend(!0,[],a||l.cols),layui.each(a,function(e,t){layui.each(t,function(t,i){if(i.colGroup){var l=0;o++,i.CHILD_COLS=[],layui.each(a[e+1],function(e,t){t.PARENT_COL_INDEX||l>1&&l==i.colspan||(t.PARENT_COL_INDEX=o,i.CHILD_COLS.push(t),l+=parseInt(t.colspan>1?t.colspan:1))})}i.PARENT_COL_INDEX||n.push(i)})});var r=function(e){layui.each(e||n,function(e,t){return t.CHILD_COLS?r(t.CHILD_COLS):void("function"==typeof i&&i(e,t))})};r()},d.checkStatus=function(e){var t=0,i=0,a=[],l=d.cache[e]||[];return layui.each(l,function(e,l){return l.constructor===Array?void i++:void(l[d.config.checkName]&&(t++,a.push(d.clearCacheKey(l))))}),{data:a,isAll:!!l.length&&t===l.length-i}},d.exportFile=function(e,t,i){var a=this;t=t||d.clearCacheKey(d.cache[e]),i=i||"csv";var l=c.config[e]||{},n={csv:"text/csv",xls:"application/vnd.ms-excel"}[i],s=document.createElement("a");return r.ie?o.error("IE_NOT_SUPPORT_EXPORTS"):(s.href="data:"+n+";charset=utf-8,\ufeff"+encodeURIComponent(function(){var i=[],l=[],n=[];return layui.each(t,function(t,a){var n=[];"object"==typeof e?(layui.each(e,function(e,a){0==t&&i.push(a||"")}),layui.each(d.clearCacheKey(a),function(e,t){n.push('"'+(t||"")+'"')})):d.eachCols(e,function(e,l){if(l.field&&"normal"==l.type&&!l.hide){var o=a[l.field];void 0!==o&&null!==o||(o=""),0==t&&i.push(l.title||""),n.push('"'+u(l,o,a,"text")+'"')}}),l.push(n.join(","))}),layui.each(a.dataTotal,function(e,t){n.push(t)}),i.join(",")+"\r\n"+l.join("\r\n")+"\r\n"+n.join(",")}()),s.download=(l.title||"table_"+(l.index||""))+"."+i,document.body.appendChild(s),s.click(),void document.body.removeChild(s))},d.resize=function(e){if(e){var t=s(e);if(!t)return;c.that[e].resize()}else layui.each(c.that,function(){this.resize()})},d.reload=function(e,t){var i=s(e);if(i){var a=c.that[e];return a.reload(t),c.call(a)}},d.render=function(e){var t=new F(e);return c.call(t)},d.clearCacheKey=function(e){return e=t.extend({},e),delete e[d.config.checkName],delete e[d.config.indexName],e},d.init(),e(y,d)});layui.define("jquery",function(e){"use strict";var i=layui.$,n=(layui.hint(),layui.device(),{config:{},set:function(e){var n=this;return n.config=i.extend({},n.config,e),n},on:function(e,i){return layui.onevent.call(this,t,e,i)}}),t="carousel",a="layui-this",l=">*[carousel-item]>*",o="layui-carousel-left",r="layui-carousel-right",d="layui-carousel-prev",s="layui-carousel-next",u="layui-carousel-arrow",c="layui-carousel-ind",m=function(e){var t=this;t.config=i.extend({},t.config,n.config,e),t.render()};m.prototype.config={width:"600px",height:"280px",full:!1,arrow:"hover",indicator:"inside",autoplay:!0,interval:3e3,anim:"",trigger:"click",index:0},m.prototype.render=function(){var e=this,n=e.config;n.elem=i(n.elem),n.elem[0]&&(e.elemItem=n.elem.find(l),n.index<0&&(n.index=0),n.index>=e.elemItem.length&&(n.index=e.elemItem.length-1),n.interval<800&&(n.interval=800),n.full?n.elem.css({position:"fixed",width:"100%",height:"100%",zIndex:9999}):n.elem.css({width:n.width,height:n.height}),n.elem.attr("lay-anim",n.anim),e.elemItem.eq(n.index).addClass(a),e.elemItem.length<=1||(e.indicator(),e.arrow(),e.autoplay(),e.events()))},m.prototype.reload=function(e){var n=this;clearInterval(n.timer),n.config=i.extend({},n.config,e),n.render()},m.prototype.prevIndex=function(){var e=this,i=e.config,n=i.index-1;return n<0&&(n=e.elemItem.length-1),n},m.prototype.nextIndex=function(){var e=this,i=e.config,n=i.index+1;return n>=e.elemItem.length&&(n=0),n},m.prototype.addIndex=function(e){var i=this,n=i.config;e=e||1,n.index=n.index+e,n.index>=i.elemItem.length&&(n.index=0)},m.prototype.subIndex=function(e){var i=this,n=i.config;e=e||1,n.index=n.index-e,n.index<0&&(n.index=i.elemItem.length-1)},m.prototype.autoplay=function(){var e=this,i=e.config;i.autoplay&&(clearInterval(e.timer),e.timer=setInterval(function(){e.slide()},i.interval))},m.prototype.arrow=function(){var e=this,n=e.config,t=i(['<button class="layui-icon '+u+'" lay-type="sub">'+("updown"===n.anim?"":"")+"</button>",'<button class="layui-icon '+u+'" lay-type="add">'+("updown"===n.anim?"":"")+"</button>"].join(""));n.elem.attr("lay-arrow",n.arrow),n.elem.find("."+u)[0]&&n.elem.find("."+u).remove(),n.elem.append(t),t.on("click",function(){var n=i(this),t=n.attr("lay-type");e.slide(t)})},m.prototype.indicator=function(){var e=this,n=e.config,t=e.elemInd=i(['<div class="'+c+'"><ul>',function(){var i=[];return layui.each(e.elemItem,function(e){i.push("<li"+(n.index===e?' class="layui-this"':"")+"></li>")}),i.join("")}(),"</ul></div>"].join(""));n.elem.attr("lay-indicator",n.indicator),n.elem.find("."+c)[0]&&n.elem.find("."+c).remove(),n.elem.append(t),"updown"===n.anim&&t.css("margin-top",-(t.height()/2)),t.find("li").on("hover"===n.trigger?"mouseover":n.trigger,function(){var t=i(this),a=t.index();a>n.index?e.slide("add",a-n.index):a<n.index&&e.slide("sub",n.index-a)})},m.prototype.slide=function(e,i){var n=this,l=n.elemItem,u=n.config,c=u.index,m=u.elem.attr("lay-filter");n.haveSlide||("sub"===e?(n.subIndex(i),l.eq(u.index).addClass(d),setTimeout(function(){l.eq(c).addClass(r),l.eq(u.index).addClass(r)},50)):(n.addIndex(i),l.eq(u.index).addClass(s),setTimeout(function(){l.eq(c).addClass(o),l.eq(u.index).addClass(o)},50)),setTimeout(function(){l.removeClass(a+" "+d+" "+s+" "+o+" "+r),l.eq(u.index).addClass(a),n.haveSlide=!1},300),n.elemInd.find("li").eq(u.index).addClass(a).siblings().removeClass(a),n.haveSlide=!0,layui.event.call(this,t,"change("+m+")",{index:u.index,prevIndex:c,item:l.eq(u.index)}))},m.prototype.events=function(){var e=this,i=e.config;i.elem.data("haveEvents")||(i.elem.on("mouseenter",function(){clearInterval(e.timer)}).on("mouseleave",function(){e.autoplay()}),i.elem.data("haveEvents",!0))},n.render=function(e){var i=new m(e);return i},e(t,n)});layui.define("jquery",function(e){"use strict";var a=layui.jquery,i={config:{},index:layui.rate?layui.rate.index+1e4:0,set:function(e){var i=this;return i.config=a.extend({},i.config,e),i},on:function(e,a){return layui.onevent.call(this,n,e,a)}},l=function(){var e=this,a=e.config;return{setvalue:function(a){e.setvalue.call(e,a)},config:a}},n="rate",t="layui-rate",o="layui-icon-rate",s="layui-icon-rate-solid",u="layui-icon-rate-half",r="layui-icon-rate-solid layui-icon-rate-half",c="layui-icon-rate-solid layui-icon-rate",f="layui-icon-rate layui-icon-rate-half",v=function(e){var l=this;l.index=++i.index,l.config=a.extend({},l.config,i.config,e),l.render()};v.prototype.config={length:5,text:!1,readonly:!1,half:!1,value:0,theme:""},v.prototype.render=function(){var e=this,i=e.config,l=i.theme?'style="color: '+i.theme+';"':"";i.elem=a(i.elem),parseInt(i.value)!==i.value&&(i.half||(i.value=Math.ceil(i.value)-i.value<.5?Math.ceil(i.value):Math.floor(i.value)));for(var n='<ul class="layui-rate" '+(i.readonly?"readonly":"")+">",u=1;u<=i.length;u++){var r='<li class="layui-inline"><i class="layui-icon '+(u>Math.floor(i.value)?o:s)+'" '+l+"></i></li>";i.half&&parseInt(i.value)!==i.value&&u==Math.ceil(i.value)?n=n+'<li><i class="layui-icon layui-icon-rate-half" '+l+"></i></li>":n+=r}n+="</ul>"+(i.text?'<span class="layui-inline">'+i.value+"星":"")+"</span>";var c=i.elem,f=c.next("."+t);f[0]&&f.remove(),e.elemTemp=a(n),i.span=e.elemTemp.next("span"),i.setText&&i.setText(i.value),c.html(e.elemTemp),c.addClass("layui-inline"),i.readonly||e.action()},v.prototype.setvalue=function(e){var a=this,i=a.config;i.value=e,a.render()},v.prototype.action=function(){var e=this,i=e.config,l=e.elemTemp,n=l.find("i").width();l.children("li").each(function(e){var t=e+1,v=a(this);v.on("click",function(e){if(i.value=t,i.half){var o=e.pageX-a(this).offset().left;o<=n/2&&(i.value=i.value-.5)}i.text&&l.next("span").text(i.value+"星"),i.choose&&i.choose(i.value),i.setText&&i.setText(i.value)}),v.on("mousemove",function(e){if(l.find("i").each(function(){a(this).addClass(o).removeClass(r)}),l.find("i:lt("+t+")").each(function(){a(this).addClass(s).removeClass(f)}),i.half){var c=e.pageX-a(this).offset().left;c<=n/2&&v.children("i").addClass(u).removeClass(s)}}),v.on("mouseleave",function(){l.find("i").each(function(){a(this).addClass(o).removeClass(r)}),l.find("i:lt("+Math.floor(i.value)+")").each(function(){a(this).addClass(s).removeClass(f)}),i.half&&parseInt(i.value)!==i.value&&l.children("li:eq("+Math.floor(i.value)+")").children("i").addClass(u).removeClass(c)})})},v.prototype.events=function(){var e=this;e.config},i.render=function(e){var a=new v(e);return l.call(a)},e(n,i)});layui.define("jquery",function(e){"use strict";var t=layui.$,i={fixbar:function(e){var i,n,a="layui-fixbar",o="layui-fixbar-top",r=t(document),l=t("body");e=t.extend({showHeight:200},e),e.bar1=e.bar1===!0?"":e.bar1,e.bar2=e.bar2===!0?"":e.bar2,e.bgcolor=e.bgcolor?"background-color:"+e.bgcolor:"";var c=[e.bar1,e.bar2,""],u=t(['<ul class="'+a+'">',e.bar1?'<li class="layui-icon" lay-type="bar1" style="'+e.bgcolor+'">'+c[0]+"</li>":"",e.bar2?'<li class="layui-icon" lay-type="bar2" style="'+e.bgcolor+'">'+c[1]+"</li>":"",'<li class="layui-icon '+o+'" lay-type="top" style="'+e.bgcolor+'">'+c[2]+"</li>","</ul>"].join("")),g=u.find("."+o),s=function(){var t=r.scrollTop();t>=e.showHeight?i||(g.show(),i=1):i&&(g.hide(),i=0)};t("."+a)[0]||("object"==typeof e.css&&u.css(e.css),l.append(u),s(),u.find("li").on("click",function(){var i=t(this),n=i.attr("lay-type");"top"===n&&t("html,body").animate({scrollTop:0},200),e.click&&e.click.call(this,n)}),r.on("scroll",function(){clearTimeout(n),n=setTimeout(function(){s()},100)}))},countdown:function(e,t,i){var n=this,a="function"==typeof t,o=new Date(e).getTime(),r=new Date(!t||a?(new Date).getTime():t).getTime(),l=o-r,c=[Math.floor(l/864e5),Math.floor(l/36e5)%24,Math.floor(l/6e4)%60,Math.floor(l/1e3)%60];a&&(i=t);var u=setTimeout(function(){n.countdown(e,r+1e3,i)},1e3);return i&&i(l>0?c:[0,0,0,0],t,u),l<=0&&clearTimeout(u),u},timeAgo:function(e,t){var i=this,n=[[],[]],a=(new Date).getTime()-new Date(e).getTime();return a>26784e5?(a=new Date(e),n[0][0]=i.digit(a.getFullYear(),4),n[0][1]=i.digit(a.getMonth()+1),n[0][2]=i.digit(a.getDate()),t||(n[1][0]=i.digit(a.getHours()),n[1][1]=i.digit(a.getMinutes()),n[1][2]=i.digit(a.getSeconds())),n[0].join("-")+" "+n[1].join(":")):a>=864e5?(a/1e3/60/60/24|0)+"天前":a>=36e5?(a/1e3/60/60|0)+"小时前":a>=18e4?(a/1e3/60|0)+"分钟前":a<0?"未来":"刚刚"},digit:function(e,t){var i="";e=String(e),t=t||2;for(var n=e.length;n<t;n++)i+="0";return e<Math.pow(10,t)?i+(0|e):e},toDateString:function(e,t){var i=this,n=new Date(e||new Date),a=[i.digit(n.getFullYear(),4),i.digit(n.getMonth()+1),i.digit(n.getDate())],o=[i.digit(n.getHours()),i.digit(n.getMinutes()),i.digit(n.getSeconds())];return t=t||"yyyy-MM-dd HH:mm:ss",t.replace(/yyyy/g,a[0]).replace(/MM/g,a[1]).replace(/dd/g,a[2]).replace(/HH/g,o[0]).replace(/mm/g,o[1]).replace(/ss/g,o[2])},escape:function(e){return String(e||"").replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/'/g,"'").replace(/"/g,""")},event:function(e,n,a){var o=t("body");return a=a||"click",n=i.event[e]=t.extend(!0,i.event[e],n)||{},i.event.UTIL_EVENT_CALLBACK=i.event.UTIL_EVENT_CALLBACK||{},o.off(a,"*["+e+"]",i.event.UTIL_EVENT_CALLBACK[e]),i.event.UTIL_EVENT_CALLBACK[e]=function(){var i=t(this),a=i.attr(e);"function"==typeof n[a]&&n[a].call(this,i)},o.on(a,"*["+e+"]",i.event.UTIL_EVENT_CALLBACK[e]),n}};!function(e,t,i){"$:nomunge";function n(){a=t[l](function(){o.each(function(){var t=e(this),i=t.width(),n=t.height(),a=e.data(this,u);(i!==a.w||n!==a.h)&&t.trigger(c,[a.w=i,a.h=n])}),n()},r[g])}var a,o=e([]),r=e.resize=e.extend(e.resize,{}),l="setTimeout",c="resize",u=c+"-special-event",g="delay",s="throttleWindow";r[g]=250,r[s]=!0,e.event.special[c]={setup:function(){if(!r[s]&&this[l])return!1;var t=e(this);o=o.add(t),e.data(this,u,{w:t.width(),h:t.height()}),1===o.length&&n()},teardown:function(){if(!r[s]&&this[l])return!1;var t=e(this);o=o.not(t),t.removeData(u),o.length||clearTimeout(a)},add:function(t){function n(t,n,o){var r=e(this),l=e.data(this,u)||{};l.w=n!==i?n:r.width(),l.h=o!==i?o:r.height(),a.apply(this,arguments)}if(!r[s]&&this[l])return!1;var a;return e.isFunction(t)?(a=t,n):(a=t.handler,void(t.handler=n))}}}(t,window),e("util",i)});layui.define("jquery",function(e){"use strict";var l=layui.$,o=function(e){},t='<i class="layui-anim layui-anim-rotate layui-anim-loop layui-icon "></i>';o.prototype.load=function(e){var o,i,n,r,a=this,c=0;e=e||{};var f=l(e.elem);if(f[0]){var m=l(e.scrollElem||document),u=e.mb||50,s=!("isAuto"in e)||e.isAuto,v=e.end||"没有更多了",y=e.scrollElem&&e.scrollElem!==document,d="<cite>加载更多</cite>",h=l('<div class="layui-flow-more"><a href="javascript:;">'+d+"</a></div>");f.find(".layui-flow-more")[0]||f.append(h);var p=function(e,t){e=l(e),h.before(e),t=0==t||null,t?h.html(v):h.find("a").html(d),i=t,o=null,n&&n()},g=function(){o=!0,h.find("a").html(t),"function"==typeof e.done&&e.done(++c,p)};if(g(),h.find("a").on("click",function(){l(this);i||o||g()}),e.isLazyimg)var n=a.lazyimg({elem:e.elem+" img",scrollElem:e.scrollElem});return s?(m.on("scroll",function(){var e=l(this),t=e.scrollTop();r&&clearTimeout(r),!i&&f.width()&&(r=setTimeout(function(){var i=y?e.height():l(window).height(),n=y?e.prop("scrollHeight"):document.documentElement.scrollHeight;n-t-i<=u&&(o||g())},100))}),a):a}},o.prototype.lazyimg=function(e){var o,t=this,i=0;e=e||{};var n=l(e.scrollElem||document),r=e.elem||"img",a=e.scrollElem&&e.scrollElem!==document,c=function(e,l){var o=n.scrollTop(),r=o+l,c=a?function(){return e.offset().top-n.offset().top+o}():e.offset().top;if(c>=o&&c<=r&&!e.attr("src")){var m=e.attr("lay-src");layui.img(m,function(){var l=t.lazyimg.elem.eq(i);e.attr("src",m).removeAttr("lay-src"),l[0]&&f(l),i++})}},f=function(e,o){var f=a?(o||n).height():l(window).height(),m=n.scrollTop(),u=m+f;if(t.lazyimg.elem=l(r),e)c(e,f);else for(var s=0;s<t.lazyimg.elem.length;s++){var v=t.lazyimg.elem.eq(s),y=a?function(){return v.offset().top-n.offset().top+m}():v.offset().top;if(c(v,f),i=s,y>u)break}};if(f(),!o){var m;n.on("scroll",function(){var e=l(this);m&&clearTimeout(m),m=setTimeout(function(){f(null,e)},50)}),o=!0}return f},e("flow",new o)});layui.define(["layer","form"],function(t){"use strict";var e=layui.$,i=layui.layer,a=layui.form,l=(layui.hint(),layui.device()),n="layedit",o="layui-show",r="layui-disabled",c=function(){var t=this;t.index=0,t.config={tool:["strong","italic","underline","del","|","left","center","right","|","link","unlink","face","image"],hideTool:[],height:280}};c.prototype.set=function(t){var i=this;return e.extend(!0,i.config,t),i},c.prototype.on=function(t,e){return layui.onevent(n,t,e)},c.prototype.build=function(t,i){i=i||{};var a=this,n=a.config,r="layui-layedit",c=e("string"==typeof t?"#"+t:t),u="LAY_layedit_"+ ++a.index,d=c.next("."+r),y=e.extend({},n,i),f=function(){var t=[],e={};return layui.each(y.hideTool,function(t,i){e[i]=!0}),layui.each(y.tool,function(i,a){C[a]&&!e[a]&&t.push(C[a])}),t.join("")}(),m=e(['<div class="'+r+'">','<div class="layui-unselect layui-layedit-tool">'+f+"</div>",'<div class="layui-layedit-iframe">','<iframe id="'+u+'" name="'+u+'" textarea="'+t+'" frameborder="0"></iframe>',"</div>","</div>"].join(""));return l.ie&&l.ie<8?c.removeClass("layui-hide").addClass(o):(d[0]&&d.remove(),s.call(a,m,c[0],y),c.addClass("layui-hide").after(m),a.index)},c.prototype.getContent=function(t){var e=u(t);if(e[0])return d(e[0].document.body.innerHTML)},c.prototype.getText=function(t){var i=u(t);if(i[0])return e(i[0].document.body).text()},c.prototype.setContent=function(t,i,a){var l=u(t);l[0]&&(a?e(l[0].document.body).append(i):e(l[0].document.body).html(i),layedit.sync(t))},c.prototype.sync=function(t){var i=u(t);if(i[0]){var a=e("#"+i[1].attr("textarea"));a.val(d(i[0].document.body.innerHTML))}},c.prototype.getSelection=function(t){var e=u(t);if(e[0]){var i=m(e[0].document);return document.selection?i.text:i.toString()}};var s=function(t,i,a){var l=this,n=t.find("iframe");n.css({height:a.height}).on("load",function(){var o=n.contents(),r=n.prop("contentWindow"),c=o.find("head"),s=e(["<style>","*{margin: 0; padding: 0;}","body{padding: 10px; line-height: 20px; overflow-x: hidden; word-wrap: break-word; font: 14px Helvetica Neue,Helvetica,PingFang SC,Microsoft YaHei,Tahoma,Arial,sans-serif; -webkit-box-sizing: border-box !important; -moz-box-sizing: border-box !important; box-sizing: border-box !important;}","a{color:#01AAED; text-decoration:none;}a:hover{color:#c00}","p{margin-bottom: 10px;}","img{display: inline-block; border: none; vertical-align: middle;}","pre{margin: 10px 0; padding: 10px; line-height: 20px; border: 1px solid #ddd; border-left-width: 6px; background-color: #F2F2F2; color: #333; font-family: Courier New; font-size: 12px;}","</style>"].join("")),u=o.find("body");c.append(s),u.attr("contenteditable","true").css({"min-height":a.height}).html(i.value||""),y.apply(l,[r,n,i,a]),g.call(l,r,t,a)})},u=function(t){var i=e("#LAY_layedit_"+t),a=i.prop("contentWindow");return[a,i]},d=function(t){return 8==l.ie&&(t=t.replace(/<.+>/g,function(t){return t.toLowerCase()})),t},y=function(t,a,n,o){var r=t.document,c=e(r.body);c.on("keydown",function(t){var e=t.keyCode;if(13===e){var a=m(r),l=p(a),n=l.parentNode;if("pre"===n.tagName.toLowerCase()){if(t.shiftKey)return;return i.msg("请暂时用shift+enter"),!1}r.execCommand("formatBlock",!1,"<p>")}}),e(n).parents("form").on("submit",function(){var t=c.html();8==l.ie&&(t=t.replace(/<.+>/g,function(t){return t.toLowerCase()})),n.value=t}),c.on("paste",function(e){r.execCommand("formatBlock",!1,"<p>"),setTimeout(function(){f.call(t,c),n.value=c.html()},100)})},f=function(t){var i=this;i.document;t.find("*[style]").each(function(){var t=this.style.textAlign;this.removeAttribute("style"),e(this).css({"text-align":t||""})}),t.find("table").addClass("layui-table"),t.find("script,link").remove()},m=function(t){return t.selection?t.selection.createRange():t.getSelection().getRangeAt(0)},p=function(t){return t.endContainer||t.parentElement().childNodes[0]},v=function(t,i,a){var l=this.document,n=document.createElement(t);for(var o in i)n.setAttribute(o,i[o]);if(n.removeAttribute("text"),l.selection){var r=a.text||i.text;if("a"===t&&!r)return;r&&(n.innerHTML=r),a.pasteHTML(e(n).prop("outerHTML")),a.select()}else{var r=a.toString()||i.text;if("a"===t&&!r)return;r&&(n.innerHTML=r),a.deleteContents(),a.insertNode(n)}},h=function(t,i){var a=this.document,l="layedit-tool-active",n=p(m(a)),o=function(e){return t.find(".layedit-tool-"+e)};i&&i[i.hasClass(l)?"removeClass":"addClass"](l),t.find(">i").removeClass(l),o("unlink").addClass(r),e(n).parents().each(function(){var t=this.tagName.toLowerCase(),e=this.style.textAlign;"b"!==t&&"strong"!==t||o("b").addClass(l),"i"!==t&&"em"!==t||o("i").addClass(l),"u"===t&&o("u").addClass(l),"strike"===t&&o("d").addClass(l),"p"===t&&("center"===e?o("center").addClass(l):"right"===e?o("right").addClass(l):o("left").addClass(l)),"a"===t&&(o("link").addClass(l),o("unlink").removeClass(r))})},g=function(t,a,l){var n=t.document,o=e(n.body),c={link:function(i){var a=p(i),l=e(a).parent();b.call(o,{href:l.attr("href"),target:l.attr("target")},function(e){var a=l[0];"A"===a.tagName?a.href=e.url:v.call(t,"a",{target:e.target,href:e.url,text:e.url},i)})},unlink:function(t){n.execCommand("unlink")},face:function(e){x.call(this,function(i){v.call(t,"img",{src:i.src,alt:i.alt},e)})},image:function(a){var n=this;layui.use("upload",function(o){var r=l.uploadImage||{};o.render({url:r.url,method:r.type,elem:e(n).find("input")[0],done:function(e){0==e.code?(e.data=e.data||{},v.call(t,"img",{src:e.data.src,alt:e.data.title},a)):i.msg(e.msg||"上传失败")}})})},code:function(e){k.call(o,function(i){v.call(t,"pre",{text:i.code,"lay-lang":i.lang},e)})},help:function(){i.open({type:2,title:"帮助",area:["600px","380px"],shadeClose:!0,shade:.1,skin:"layui-layer-msg",content:["http://www.layui.com/about/layedit/help.html","no"]})}},s=a.find(".layui-layedit-tool"),u=function(){var i=e(this),a=i.attr("layedit-event"),l=i.attr("lay-command");if(!i.hasClass(r)){o.focus();var u=m(n);u.commonAncestorContainer;l?(n.execCommand(l),/justifyLeft|justifyCenter|justifyRight/.test(l)&&n.execCommand("formatBlock",!1,"<p>"),setTimeout(function(){o.focus()},10)):c[a]&&c[a].call(this,u),h.call(t,s,i)}},d=/image/;s.find(">i").on("mousedown",function(){var t=e(this),i=t.attr("layedit-event");d.test(i)||u.call(this)}).on("click",function(){var t=e(this),i=t.attr("layedit-event");d.test(i)&&u.call(this)}),o.on("click",function(){h.call(t,s),i.close(x.index)})},b=function(t,e){var l=this,n=i.open({type:1,id:"LAY_layedit_link",area:"350px",shade:.05,shadeClose:!0,moveType:1,title:"超链接",skin:"layui-layer-msg",content:['<ul class="layui-form" style="margin: 15px;">','<li class="layui-form-item">','<label class="layui-form-label" style="width: 60px;">URL</label>','<div class="layui-input-block" style="margin-left: 90px">','<input name="url" lay-verify="url" value="'+(t.href||"")+'" autofocus="true" autocomplete="off" class="layui-input">',"</div>","</li>",'<li class="layui-form-item">','<label class="layui-form-label" style="width: 60px;">打开方式</label>','<div class="layui-input-block" style="margin-left: 90px">','<input type="radio" name="target" value="_self" class="layui-input" title="当前窗口"'+("_self"!==t.target&&t.target?"":"checked")+">",'<input type="radio" name="target" value="_blank" class="layui-input" title="新窗口" '+("_blank"===t.target?"checked":"")+">","</div>","</li>",'<li class="layui-form-item" style="text-align: center;">','<button type="button" lay-submit lay-filter="layedit-link-yes" class="layui-btn"> 确定 </button>','<button style="margin-left: 20px;" type="button" class="layui-btn layui-btn-primary"> 取消 </button>',"</li>","</ul>"].join(""),success:function(t,n){var o="submit(layedit-link-yes)";a.render("radio"),t.find(".layui-btn-primary").on("click",function(){i.close(n),l.focus()}),a.on(o,function(t){i.close(b.index),e&&e(t.field)})}});b.index=n},x=function(t){var a=function(){var t=["[微笑]","[嘻嘻]","[哈哈]","[可爱]","[可怜]","[挖鼻]","[吃惊]","[害羞]","[挤眼]","[闭嘴]","[鄙视]","[爱你]","[泪]","[偷笑]","[亲亲]","[生病]","[太开心]","[白眼]","[右哼哼]","[左哼哼]","[嘘]","[衰]","[委屈]","[吐]","[哈欠]","[抱抱]","[怒]","[疑问]","[馋嘴]","[拜拜]","[思考]","[汗]","[困]","[睡]","[钱]","[失望]","[酷]","[色]","[哼]","[鼓掌]","[晕]","[悲伤]","[抓狂]","[黑线]","[阴险]","[怒骂]","[互粉]","[心]","[伤心]","[猪头]","[熊猫]","[兔子]","[ok]","[耶]","[good]","[NO]","[赞]","[来]","[弱]","[草泥马]","[神马]","[囧]","[浮云]","[给力]","[围观]","[威武]","[奥特曼]","[礼物]","[钟]","[话筒]","[蜡烛]","[蛋糕]"],e={};return layui.each(t,function(t,i){e[i]=layui.cache.dir+"images/face/"+t+".gif"}),e}();return x.hide=x.hide||function(t){"face"!==e(t.target).attr("layedit-event")&&i.close(x.index)},x.index=i.tips(function(){var t=[];return layui.each(a,function(e,i){t.push('<li title="'+e+'"><img src="'+i+'" alt="'+e+'"></li>')}),'<ul class="layui-clear">'+t.join("")+"</ul>"}(),this,{tips:1,time:0,skin:"layui-box layui-util-face",maxWidth:500,success:function(l,n){l.css({marginTop:-4,marginLeft:-10}).find(".layui-clear>li").on("click",function(){t&&t({src:a[this.title],alt:this.title}),i.close(n)}),e(document).off("click",x.hide).on("click",x.hide)}})},k=function(t){var e=this,l=i.open({type:1,id:"LAY_layedit_code",area:"550px",shade:.05,shadeClose:!0,moveType:1,title:"插入代码",skin:"layui-layer-msg",content:['<ul class="layui-form layui-form-pane" style="margin: 15px;">','<li class="layui-form-item">','<label class="layui-form-label">请选择语言</label>','<div class="layui-input-block">','<select name="lang">','<option value="JavaScript">JavaScript</option>','<option value="HTML">HTML</option>','<option value="CSS">CSS</option>','<option value="Java">Java</option>','<option value="PHP">PHP</option>','<option value="C#">C#</option>','<option value="Python">Python</option>','<option value="Ruby">Ruby</option>','<option value="Go">Go</option>',"</select>","</div>","</li>",'<li class="layui-form-item layui-form-text">','<label class="layui-form-label">代码</label>','<div class="layui-input-block">','<textarea name="code" lay-verify="required" autofocus="true" class="layui-textarea" style="height: 200px;"></textarea>',"</div>","</li>",'<li class="layui-form-item" style="text-align: center;">','<button type="button" lay-submit lay-filter="layedit-code-yes" class="layui-btn"> 确定 </button>','<button style="margin-left: 20px;" type="button" class="layui-btn layui-btn-primary"> 取消 </button>',"</li>","</ul>"].join(""),success:function(l,n){var o="submit(layedit-code-yes)";a.render("select"),l.find(".layui-btn-primary").on("click",function(){i.close(n),e.focus()}),a.on(o,function(e){i.close(k.index),t&&t(e.field)})}});k.index=l},C={html:'<i class="layui-icon layedit-tool-html" title="HTML源代码" lay-command="html" layedit-event="html""></i><span class="layedit-tool-mid"></span>',strong:'<i class="layui-icon layedit-tool-b" title="加粗" lay-command="Bold" layedit-event="b""></i>',italic:'<i class="layui-icon layedit-tool-i" title="斜体" lay-command="italic" layedit-event="i""></i>',underline:'<i class="layui-icon layedit-tool-u" title="下划线" lay-command="underline" layedit-event="u""></i>',del:'<i class="layui-icon layedit-tool-d" title="删除线" lay-command="strikeThrough" layedit-event="d""></i>',"|":'<span class="layedit-tool-mid"></span>',left:'<i class="layui-icon layedit-tool-left" title="左对齐" lay-command="justifyLeft" layedit-event="left""></i>',center:'<i class="layui-icon layedit-tool-center" title="居中对齐" lay-command="justifyCenter" layedit-event="center""></i>',right:'<i class="layui-icon layedit-tool-right" title="右对齐" lay-command="justifyRight" layedit-event="right""></i>',link:'<i class="layui-icon layedit-tool-link" title="插入链接" layedit-event="link""></i>',unlink:'<i class="layui-icon layedit-tool-unlink layui-disabled" title="清除链接" lay-command="unlink" layedit-event="unlink""></i>',face:'<i class="layui-icon layedit-tool-face" title="表情" layedit-event="face""></i>',image:'<i class="layui-icon layedit-tool-image" title="图片" layedit-event="image"><input type="file" name="file"></i>',code:'<i class="layui-icon layedit-tool-code" title="插入代码" layedit-event="code"></i>',help:'<i class="layui-icon layedit-tool-help" title="帮助" layedit-event="help"></i>'},w=new c;t(n,w)});layui.define("jquery",function(e){"use strict";var a=layui.$,l="http://www.layui.com/doc/modules/code.html";e("code",function(e){var t=[];e=e||{},e.elem=a(e.elem||".layui-code"),e.about=!("about"in e)||e.about,e.elem.each(function(){t.push(this)}),layui.each(t.reverse(),function(t,i){var c=a(i),o=c.html();(c.attr("lay-encode")||e.encode)&&(o=o.replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/'/g,"'").replace(/"/g,""")),c.html('<ol class="layui-code-ol"><li>'+o.replace(/[\r\t\n]+/g,"</li><li>")+"</li></ol>"),c.find(">.layui-code-h3")[0]||c.prepend('<h3 class="layui-code-h3">'+(c.attr("lay-title")||e.title||"code")+(e.about?'<a href="'+l+'" target="_blank">layui.code</a>':"")+"</h3>");var d=c.find(">.layui-code-ol");c.addClass("layui-box layui-code-view"),(c.attr("lay-skin")||e.skin)&&c.addClass("layui-code-"+(c.attr("lay-skin")||e.skin)),(d.find("li").length/100|0)>0&&d.css("margin-left",(d.find("li").length/100|0)+"px"),(c.attr("lay-height")||e.height)&&d.css("max-height",c.attr("lay-height")||e.height)})})}).addcss("modules/code.css","skincodecss"); \ No newline at end of file diff --git a/src/main/resources/static/articles/layui/layui.js b/src/main/resources/static/articles/layui/layui.js new file mode 100644 index 0000000..99dba90 --- /dev/null +++ b/src/main/resources/static/articles/layui/layui.js @@ -0,0 +1,2 @@ +/** layui-v2.5.6 MIT License By https://www.layui.com */ + ;!function(e){"use strict";var t=document,n={modules:{},status:{},timeout:10,event:{}},r=function(){this.v="2.5.6"},o=function(){var e=t.currentScript?t.currentScript.src:function(){for(var e,n=t.scripts,r=n.length-1,o=r;o>0;o--)if("interactive"===n[o].readyState){e=n[o].src;break}return e||n[r].src}();return e.substring(0,e.lastIndexOf("/")+1)}(),a=function(t){e.console&&console.error&&console.error("Layui hint: "+t)},i="undefined"!=typeof opera&&"[object Opera]"===opera.toString(),u={layer:"modules/layer",laydate:"modules/laydate",laypage:"modules/laypage",laytpl:"modules/laytpl",layim:"modules/layim",layedit:"modules/layedit",form:"modules/form",upload:"modules/upload",transfer:"modules/transfer",tree:"modules/tree",table:"modules/table",element:"modules/element",rate:"modules/rate",colorpicker:"modules/colorpicker",slider:"modules/slider",carousel:"modules/carousel",flow:"modules/flow",util:"modules/util",code:"modules/code",jquery:"modules/jquery",mobile:"modules/mobile","layui.all":"../layui.all"};r.prototype.cache=n,r.prototype.define=function(e,t){var r=this,o="function"==typeof e,a=function(){var e=function(e,t){layui[e]=t,n.status[e]=!0};return"function"==typeof t&&t(function(r,o){e(r,o),n.callback[r]=function(){t(e)}}),this};return o&&(t=e,e=[]),!layui["layui.all"]&&layui["layui.mobile"]?a.call(r):(r.use(e,a),r)},r.prototype.use=function(e,r,l){function c(e,t){var r="PLaySTATION 3"===navigator.platform?/^complete$/:/^(complete|loaded)$/;("load"===e.type||r.test((e.currentTarget||e.srcElement).readyState))&&(n.modules[d]=t,y.removeChild(h),function o(){return++m>1e3*n.timeout/4?a(d+" is not a valid module"):void(n.status[d]?s():setTimeout(o,4))}())}function s(){l.push(layui[d]),e.length>1?p.use(e.slice(1),r,l):"function"==typeof r&&r.apply(layui,l)}var p=this,f=n.dir=n.dir?n.dir:o,y=t.getElementsByTagName("head")[0];e="string"==typeof e?[e]:e,window.jQuery&&jQuery.fn.on&&(p.each(e,function(t,n){"jquery"===n&&e.splice(t,1)}),layui.jquery=layui.$=jQuery);var d=e[0],m=0;if(l=l||[],n.host=n.host||(f.match(/\/\/([\s\S]+?)\//)||["//"+location.host+"/"])[0],0===e.length||layui["layui.all"]&&u[d]||!layui["layui.all"]&&layui["layui.mobile"]&&u[d])return s(),p;var v=(u[d]?f+"lay/":/^\{\/\}/.test(p.modules[d])?"":n.base||"")+(p.modules[d]||d)+".js";if(v=v.replace(/^\{\/\}/,""),!n.modules[d]&&layui[d]&&(n.modules[d]=v),n.modules[d])!function g(){return++m>1e3*n.timeout/4?a(d+" is not a valid module"):void("string"==typeof n.modules[d]&&n.status[d]?s():setTimeout(g,4))}();else{var h=t.createElement("script");h.async=!0,h.charset="utf-8",h.src=v+function(){var e=n.version===!0?n.v||(new Date).getTime():n.version||"";return e?"?v="+e:""}(),y.appendChild(h),!h.attachEvent||h.attachEvent.toString&&h.attachEvent.toString().indexOf("[native code")<0||i?h.addEventListener("load",function(e){c(e,v)},!1):h.attachEvent("onreadystatechange",function(e){c(e,v)}),n.modules[d]=v}return p},r.prototype.getStyle=function(t,n){var r=t.currentStyle?t.currentStyle:e.getComputedStyle(t,null);return r[r.getPropertyValue?"getPropertyValue":"getAttribute"](n)},r.prototype.link=function(e,r,o){var i=this,u=t.createElement("link"),l=t.getElementsByTagName("head")[0];"string"==typeof r&&(o=r);var c=(o||e).replace(/\.|\//g,""),s=u.id="layuicss-"+c,p=0;return u.rel="stylesheet",u.href=e+(n.debug?"?v="+(new Date).getTime():""),u.media="all",t.getElementById(s)||l.appendChild(u),"function"!=typeof r?i:(function f(){return++p>1e3*n.timeout/100?a(e+" timeout"):void(1989===parseInt(i.getStyle(t.getElementById(s),"width"))?function(){r()}():setTimeout(f,100))}(),i)},n.callback={},r.prototype.factory=function(e){if(layui[e])return"function"==typeof n.callback[e]?n.callback[e]:null},r.prototype.addcss=function(e,t,r){return layui.link(n.dir+"css/"+e,t,r)},r.prototype.img=function(e,t,n){var r=new Image;return r.src=e,r.complete?t(r):(r.onload=function(){r.onload=null,"function"==typeof t&&t(r)},void(r.onerror=function(e){r.onerror=null,"function"==typeof n&&n(e)}))},r.prototype.config=function(e){e=e||{};for(var t in e)n[t]=e[t];return this},r.prototype.modules=function(){var e={};for(var t in u)e[t]=u[t];return e}(),r.prototype.extend=function(e){var t=this;e=e||{};for(var n in e)t[n]||t.modules[n]?a("模块名 "+n+" 已被占用"):t.modules[n]=e[n];return t},r.prototype.router=function(e){var t=this,e=e||location.hash,n={path:[],search:{},hash:(e.match(/[^#](#.*$)/)||[])[1]||""};return/^#\//.test(e)?(e=e.replace(/^#\//,""),n.href="/"+e,e=e.replace(/([^#])(#.*$)/,"$1").split("/")||[],t.each(e,function(e,t){/^\w+=/.test(t)?function(){t=t.split("="),n.search[t[0]]=t[1]}():n.path.push(t)}),n):n},r.prototype.url=function(e){var t=this,n={pathname:function(){var t=e?function(){var t=(e.match(/\.[^.]+?\/.+/)||[])[0]||"";return t.replace(/^[^\/]+/,"").replace(/\?.+/,"")}():location.pathname;return t.replace(/^\//,"").split("/")}(),search:function(){var n={},r=(e?function(){var t=(e.match(/\?.+/)||[])[0]||"";return t.replace(/\#.+/,"")}():location.search).replace(/^\?+/,"").split("&");return t.each(r,function(e,t){var r=t.indexOf("="),o=function(){return r<0?t.substr(0,t.length):0!==r&&t.substr(0,r)}();o&&(n[o]=r>0?t.substr(r+1):null)}),n}(),hash:t.router(function(){return e?(e.match(/#.+/)||[])[0]||"":location.hash}())};return n},r.prototype.data=function(t,n,r){if(t=t||"layui",r=r||localStorage,e.JSON&&e.JSON.parse){if(null===n)return delete r[t];n="object"==typeof n?n:{key:n};try{var o=JSON.parse(r[t])}catch(a){var o={}}return"value"in n&&(o[n.key]=n.value),n.remove&&delete o[n.key],r[t]=JSON.stringify(o),n.key?o[n.key]:o}},r.prototype.sessionData=function(e,t){return this.data(e,t,sessionStorage)},r.prototype.device=function(t){var n=navigator.userAgent.toLowerCase(),r=function(e){var t=new RegExp(e+"/([^\\s\\_\\-]+)");return e=(n.match(t)||[])[1],e||!1},o={os:function(){return/windows/.test(n)?"windows":/linux/.test(n)?"linux":/iphone|ipod|ipad|ios/.test(n)?"ios":/mac/.test(n)?"mac":void 0}(),ie:function(){return!!(e.ActiveXObject||"ActiveXObject"in e)&&((n.match(/msie\s(\d+)/)||[])[1]||"11")}(),weixin:r("micromessenger")};return t&&!o[t]&&(o[t]=r(t)),o.android=/android/.test(n),o.ios="ios"===o.os,o.mobile=!(!o.android&&!o.ios),o},r.prototype.hint=function(){return{error:a}},r.prototype.each=function(e,t){var n,r=this;if("function"!=typeof t)return r;if(e=e||[],e.constructor===Object){for(n in e)if(t.call(e[n],n,e[n]))break}else for(n=0;n<e.length&&!t.call(e[n],n,e[n]);n++);return r},r.prototype.sort=function(e,t,n){var r=JSON.parse(JSON.stringify(e||[]));return t?(r.sort(function(e,n){var r=/^-?\d+$/,o=e[t],a=n[t];return r.test(o)&&(o=parseFloat(o)),r.test(a)&&(a=parseFloat(a)),o&&!a?1:!o&&a?-1:o>a?1:o<a?-1:0}),n&&r.reverse(),r):r},r.prototype.stope=function(t){t=t||e.event;try{t.stopPropagation()}catch(n){t.cancelBubble=!0}},r.prototype.onevent=function(e,t,n){return"string"!=typeof e||"function"!=typeof n?this:r.event(e,t,null,n)},r.prototype.event=r.event=function(e,t,r,o){var a=this,i=null,u=t.match(/\((.*)\)$/)||[],l=(e+"."+t).replace(u[0],""),c=u[1]||"",s=function(e,t){var n=t&&t.call(a,r);n===!1&&null===i&&(i=!1)};return o?(n.event[l]=n.event[l]||{},n.event[l][c]=[o],this):(layui.each(n.event[l],function(e,t){return"{*}"===c?void layui.each(t,s):(""===e&&layui.each(t,s),void(c&&e===c&&layui.each(t,s)))}),i)},e.layui=new r}(window); \ No newline at end of file diff --git a/src/main/resources/static/articles/robots.txt b/src/main/resources/static/articles/robots.txt new file mode 100644 index 0000000..5b5f7ca --- /dev/null +++ b/src/main/resources/static/articles/robots.txt @@ -0,0 +1,3 @@ +User-agent: * +Disallow: /private/ +Allow: * diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/css/content-theme/ant-design.css b/src/main/resources/static/articles/vditor@3.11.1/dist/css/content-theme/ant-design.css new file mode 100644 index 0000000..77d5457 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/css/content-theme/ant-design.css @@ -0,0 +1,210 @@ +/*! + * Vditor - A markdown editor written in TypeScript. + * + * MIT License + * + * Copyright (c) 2018-present B3log 开源, b3log.org + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ + +.vditor-reset { + color: rgba(0, 0, 0, .85); + font-size: 14px; + line-height: 2; +} + +.vditor-reset img { + max-width: calc(100% - 32px); +} + +.vditor-reset p > img { + margin: 34px 0; + box-shadow: 0 8px 20px rgba(143, 168, 191, 0.35); +} + +.vditor-reset h1 { + margin-bottom: 20px; + color: rgba(0, 0, 0, .85); + font-weight: 500; + font-size: 30px; + font-family: Avenir, -apple-system, BlinkMacSystemFont, segoe ui, Roboto, helvetica neue, Arial, noto sans, sans-serif, apple color emoji, segoe ui emoji, segoe ui symbol, noto color emoji, sans-serif; + line-height: 38px +} + +.vditor-reset h2 { + font-size: 24px; + line-height: 32px; +} + +.vditor-reset h2, +.vditor-reset h3, +.vditor-reset h4, +.vditor-reset h5, +.vditor-reset h6 { + clear: both; + margin: 1.6em 0 .6em; + color: rgba(0, 0, 0, .85); + font-weight: 500; + font-family: Avenir, -apple-system, BlinkMacSystemFont, segoe ui, Roboto, helvetica neue, Arial, noto sans, sans-serif, apple color emoji, segoe ui emoji, segoe ui symbol, noto color emoji, sans-serif +} + +.vditor-reset h3 { + font-size: 18px; +} + +.vditor-reset h4 { + font-size: 16px; +} + +.vditor-reset h5 { + font-size: 14px; +} + +.vditor-reset h6 { + font-size: 12px; +} + +.vditor-reset hr { + clear: both; + height: 1px; + margin: 56px 0; + background: #f0f0f0; + border: 0; +} + +.vditor-reset p, +.vditor-reset pre { + margin: 1em 0; +} + +.vditor-reset ul > li { + margin-left: 20px; + padding-left: 4px; + list-style-type: circle; +} + +.vditor-reset ol > li { + margin-left: 20px; + padding-left: 4px; + list-style-type: decimal; +} + +.vditor-reset ul > li > p, +.vditor-reset ol > li > p { + margin: 0.2em 0; +} + +.vditor-reset code { + margin: 0 1px; + padding: .2em .4em; + font-size: .9em; + border-radius: 3px; + border: 1px solid #f0f0f0; + font-family: sfmono-regular, Consolas, liberation mono, Menlo, Courier, monospace; +} + +.vditor-reset code:not(.hljs):not(.highlight-chroma) { + background: #f2f4f5; + color: rgba(0, 0, 0, .65); +} + +.vditor-reset pre { + font-family: sfmono-regular, Consolas, liberation mono, Menlo, Courier, monospace; + border-radius: 2px; +} + +.vditor-reset .language-abc svg, +.vditor-reset .language-abc path { + fill: currentColor; + color: rgba(0, 0, 0, .85); +} + +.vditor-reset .language-graphviz polygon { + fill: transparent; +} + +.vditor-reset strong, +.vditor-reset b { + font-weight: 500; +} + +.vditor-reset > table { + width: 100%; + margin: 8px 0 16px; + direction: ltr; + empty-cells: show; + border: 1px solid #f0f0f0; + border-collapse: collapse; + border-spacing: 0 +} + +.vditor-reset > table th { + color: #5c6b77; + font-weight: 500; + white-space: nowrap; + background: rgba(0, 0, 0, .02) +} + +.vditor-reset > table th, .vditor-reset > table td { + padding: 16px 24px; + text-align: left; + border: 1px solid #f0f0f0 +} + +.vditor-reset blockquote { + margin: 1em 0; + padding-left: .8em; + color: rgba(0, 0, 0, .45); + font-size: 90%; + border-left: 4px solid #f0f0f0 +} + +.vditor-reset blockquote p { + margin: 0; +} + +.vditor-reset .vditor-anchor { + margin-left: 8px; + opacity: 0; + transition: opacity 0.3s; +} + +.vditor-reset h1:hover .vditor-anchor, +.vditor-reset h2:hover .vditor-anchor, +.vditor-reset h3:hover .vditor-anchor, +.vditor-reset h4:hover .vditor-anchor, +.vditor-reset h5:hover .vditor-anchor, +.vditor-reset h6:hover .vditor-anchor { + display: inline-block; + opacity: 1; +} + +.vditor-reset > br, +.vditor-reset > p > br { + clear: both; +} + +.vditor-reset a, .vditor-ir__link { + color: #1890ff; + text-decoration: none; + outline: none; + cursor: pointer; +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/css/content-theme/custom-dark.css b/src/main/resources/static/articles/vditor@3.11.1/dist/css/content-theme/custom-dark.css new file mode 100644 index 0000000..e3e4498 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/css/content-theme/custom-dark.css @@ -0,0 +1,520 @@ + +/* --- 基础容器和背景 --- */ +.markdown-body { + background: linear-gradient(145deg, #111827 0%, #1f2937 100%); /* 深邃的渐变背景 */ + color: #d1d5db; /* 柔和的亮灰色作为主文字颜色 */ + border-radius: 1.5rem; + backdrop-filter: blur(10px); + border: 1px solid rgba(255, 255, 255, 0.1); /* 添加一个微妙的边框 */ +} + +.markdown-body::before { + content: ''; + position: absolute; + top: 0; + left: 0; + right: 0; + height: 4px; + background: linear-gradient(90deg, #3b82f6, #8b5cf6, #06b6d4, #10b981); + border-radius: 20px 20px 0 0; +} + +/* --- 标题样式 (暗黑版) --- */ +.markdown-body h1 { + font-size: 3rem; + font-weight: 800; + line-height: 1.1; + margin: 0 0 3rem 0; + background: linear-gradient(135deg, #60a5fa 0%, #a78bfa 50%, #22d3ee 100%); /* 提亮渐变色以增强对比 */ + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; + background-clip: text; + position: relative; + text-align: center; + letter-spacing: -0.025em; +} + +.markdown-body h1::after { + content: ''; + position: absolute; + bottom: -16px; + left: 50%; + transform: translateX(-50%); + width: 120px; + height: 4px; + background: linear-gradient(90deg, #3b82f6, #8b5cf6); + border-radius: 2px; + box-shadow: 0 4px 15px rgba(59, 130, 246, 0.3); /* 阴影作为光晕效果 */ +} + +.markdown-body h2 { + font-size: 2.25rem; + font-weight: 700; + line-height: 1.2; + margin: 3.5rem 0 1.5rem 0; + color: #f9fafb; /* 使用更亮的白色以突出 */ + position: relative; + padding-left: 24px; + border-bottom: 1px solid #374151; /* 替换下划线 */ + padding-bottom: 0.5rem; +} + +.markdown-body h2::before { + content: ''; + position: absolute; + left: 0; + top: 0; + bottom: 0.5rem; /* 匹配 padding-bottom */ + width: 6px; + background: linear-gradient(180deg, #3b82f6, #8b5cf6); + border-radius: 3px; + box-shadow: 0 2px 8px rgba(59, 130, 246, 0.3); +} + +.markdown-body h3 { + font-size: 1.75rem; + font-weight: 600; + line-height: 1.3; + margin: 2.5rem 0 1.2rem 0; + color: #e5e7eb; + position: relative; + padding: 12px 20px; + background: rgba(255, 255, 255, 0.05); /* 使用半透明亮色叠加层 */ + border-radius: 12px; + border-left: 4px solid #3b82f6; +} + +.markdown-body h4 { + font-size: 1.375rem; + font-weight: 600; + margin: 2rem 0 1rem 0; + color: #d1d5db; + position: relative; + padding-left: 16px; +} + +.markdown-body h4::before { + content: '▸'; + position: absolute; + left: 0; + color: #3b82f6; +} + +.markdown-body h5, +.markdown-body h6 { + font-size: 1.125rem; + font-weight: 600; + margin: 1.5rem 0 0.8rem 0; + color: #9ca3af; /* 使用稍暗的亮灰色 */ +} + +/* --- 段落和文本 (暗黑版) --- */ +.markdown-body p { + margin: 1.5rem 0; + line-height: 1.8; + text-align: justify; +} + +.markdown-body strong, +.markdown-body b { + font-weight: 700; + color: #ffffff; + background: linear-gradient(135deg, rgba(59, 130, 246, 0.15) 0%, rgba(139, 92, 246, 0.15) 100%); + padding: 2px 4px; + border-radius: 4px; +} + +.markdown-body em { + font-style: italic; + color: #9ca3af; + background: rgba(139, 92, 246, 0.1); + padding: 1px 3px; + border-radius: 3px; +} + +/* --- 链接 (暗黑版) --- */ +.markdown-body a { + color: #60a5fa; /* 使用更亮的蓝色 */ + text-decoration: none; + position: relative; + font-weight: 500; + transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); +} + +.markdown-body a::before { + content: ''; + position: absolute; + bottom: -2px; + left: 0; + width: 0; + height: 2px; + background: linear-gradient(90deg, #3b82f6, #8b5cf6); + transition: width 0.3s ease; + border-radius: 1px; +} + +.markdown-body a:hover { + color: #93c5fd; /* 悬停时更亮 */ + transform: translateY(-1px); +} + +.markdown-body a:hover::before { + width: 100%; +} + +/* --- 代码 (暗黑版) --- */ +.markdown-body :not(pre) > code, +.markdown-body tt { + padding: 4px 8px; + background: #111827; /* 与代码块背景一致 */ + border: 1px solid #374151; + border-radius: 8px; + font-family: "JetBrains Mono", "SF Mono", Consolas, monospace; + font-size: 0.9em; + color: #22d3ee; /* 使用炫酷的青色 */ + font-weight: 600; +} + +.markdown-body pre { + background: linear-gradient(135deg, #1f2937 0%, #111827 100%); /* 已是暗色,保留 */ + border: 1px solid #374151; + border-radius: 16px; + padding: 24px; + margin: 2rem 0; + overflow-x: auto; + font-family: "JetBrains Mono", "SF Mono", Consolas, monospace; + font-size: 0.9rem; + line-height: 1.7; + position: relative; + box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3); /* 加深阴影 */ +} + +.markdown-body pre::before { + content: ''; + position: absolute; + top: 0; + left: 0; + right: 0; + height: 1px; + background: linear-gradient(90deg, #3b82f6, #8b5cf6, #06b6d4); +} + +.markdown-body pre::after { + content: ''; + position: absolute; + top: 12px; + left: 16px; + width: 12px; + height: 12px; + background: #ef4444; + border-radius: 50%; + box-shadow: 20px 0 0 #f59e0b, 40px 0 0 #10b981; +} + +.markdown-body pre code { + background: none; + border: none; + padding: 0; + font-size: 100%; + color: inherit; /* 颜色由语法高亮插件控制 */ + font-weight: normal; + box-shadow: none; +} + +/* --- 引用块 (暗黑版) --- */ +.markdown-body blockquote, .markdown-body .note-update-date { + margin: 2rem 0; + padding: 24px 32px; + background: rgba(255, 255, 255, 0.03); /* 使用更微妙的半透明叠加 */ + border-left: 6px solid #3b82f6; + border-radius: 0 16px 16px 0; + color: #9ca3af; + font-style: italic; + position: relative; + box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); + backdrop-filter: blur(10px); +} + +.markdown-body blockquote::before { + content: '"'; + position: absolute; + top: -12px; + left: 24px; + font-size: 4rem; + color: #3b82f6; + opacity: 0.2; + font-family: Georgia, serif; + line-height: 1; +} + +.markdown-body blockquote p { + margin: 0.8rem 0; + position: relative; + z-index: 1; +} + +/* --- 列表 (暗黑版) --- */ +.markdown-body ul, +.markdown-body ol { + padding-left: 1rem; +} + +.markdown-body ul li { + list-style: none; + position: relative; + margin: 0.5rem 0; + padding-left: 8px; +} + +.markdown-body ul li:not(.vditor-task)::before { + content: ''; + position: absolute; + left: -1rem; + top: 0.5rem; + width: 8px; + height: 8px; + background: linear-gradient(135deg, #3b82f6, #8b5cf6); + border-radius: 50%; + box-shadow: 0 2px 4px rgba(59, 130, 246, 0.3); +} + +.markdown-body ul ul > li:not(.vditor-task)::before { + background: transparent; /* 透明背景,形成圆环 */ + border: 2px solid #8b5cf6; /* 使用主题色中的紫色作为描边 */ + box-shadow: none; /* 第二级不需要辉光效果,保持简洁 */ + width: 8px; /* 尺寸微调以适应边框 */ + height: 8px; + top: 0.5rem; +} + +.markdown-body ul ul ul > li:not(.vditor-task)::before { + background: linear-gradient(135deg, #3b82f6, #8b5cf6); + border: none; + border-radius: 2px; + width: 8px; + height: 8px; + top: 0.5rem; +} + +.markdown-body ol li { + margin: 0.8rem 0; + counter-increment: list-counter; + position: relative; + padding-left: 8px; +} + +.markdown-body ol { + counter-reset: list-counter; +} + +.markdown-body ol li::marker { + color: #60a5fa; /* 使用更亮的蓝色 */ + font-weight: 700; +} + +/* --- 表格 (暗黑版) --- */ +.markdown-body table { + width: 100%; + margin: 3rem 0; + border-collapse: collapse; + border-radius: 16px; + overflow: hidden; + box-shadow: 0 20px 50px rgba(0, 0, 0, 0.3); + border: 1px solid #374151; +} + +.markdown-body table th { + background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%); + color: white; + font-weight: 700; + padding: 12px; + text-align: left; + border: none; + font-size: 0.95rem; + letter-spacing: 0.025em; +} + +.markdown-body table td { + padding: 10px 12px; + border-bottom: 1px solid #374151; + border-right: 1px solid #374151; + background-color: #1f2937; /* 深色单元格 */ + transition: all 0.2s ease; +} + +.markdown-body table tr:nth-child(even) td { + background: #2b3546; /* 交错行使用略亮的深色 */ +} + +.markdown-body table tr:hover td { + background: rgba(255, 255, 255, 0.05); /* 悬停时高亮 */ + transform: translateY(-1px); +} + +.markdown-body table td:last-child, +.markdown-body table th:last-child { + border-right: none; +} + +/* --- 分割线 (暗黑版) --- */ +.markdown-body hr { + height: 4px; + background: linear-gradient(90deg, transparent, #3b82f6, #8b5cf6, #06b6d4, transparent); + border: none; + margin: 4rem 0; + border-radius: 2px; + position: relative; +} + +.markdown-body hr::after { + content: ''; + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + width: 20px; + height: 20px; + background: #1f2937; /* 中心圆背景与周围环境匹配 */ + border: 3px solid #3b82f6; + border-radius: 50%; + box-shadow: 0 0 0 6px #1f2937; +} + +/* --- 图片 (暗黑版) --- */ +.markdown-body img { + max-width: 100%; + height: auto; + border-radius: 16px; + box-shadow: 0 20px 40px rgba(0, 0, 0, 0.25), 0 0 30px rgba(59, 130, 246, 0.1); /* 黑色阴影+主题色辉光 */ + margin: 3rem 0; + display: block; + margin-left: auto; + margin-right: auto; + transition: transform 0.3s ease, box-shadow 0.3s ease; +} + +/* --- 键盘按键 (暗黑版) --- */ +.markdown-body kbd { + background: #374151; + border: 1px solid #4b5563; + border-bottom-color: #6b7280; + border-radius: 8px; + box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2), inset 0 -2px 0 #6b7280; /* 内发光改为亮色 */ + color: #e5e7eb; + display: inline-block; + font-family: "SF Mono", Consolas, monospace; + font-size: 0.85em; + font-weight: 600; + line-height: 1; + padding: 6px 8px; + vertical-align: middle; +} + +/* 特殊效果 */ +.markdown-body h1, +.markdown-body h2, +.markdown-body h3 { + animation: slideInFromLeft 0.8s cubic-bezier(0.4, 0, 0.2, 1); +} + +.markdown-body p, +.markdown-body blockquote, +.markdown-body pre, +.markdown-body table { + animation: fadeInUp 0.6s cubic-bezier(0.4, 0, 0.2, 1); +} + +@keyframes slideInFromLeft { + from { + opacity: 0; + transform: translateX(-30px); + } + to { + opacity: 1; + transform: translateX(0); + } +} + +@keyframes fadeInUp { + from { + opacity: 0; + transform: translateY(30px); + } + to { + opacity: 1; + transform: translateY(0); + } +} + +/* 响应式设计 */ +@media (max-width: 768px) { + .markdown-body { + font-size: 15px; + border-radius: 16px; + } + + .markdown-body h1 { + font-size: 2.25rem; + } + + .markdown-body h2 { + font-size: 1.875rem; + } + + .markdown-body h3 { + font-size: 1.5rem; + } + + .markdown-body table { + font-size: 0.9rem; + } + + .markdown-body table th, + .markdown-body table td { + padding: 6px; + } + + .markdown-body pre { + border-radius: 12px; + padding: 24px 0; + } +} + +/* 1. 滚动条尺寸定义 */ +.markdown-body pre > code::-webkit-scrollbar { + width: 14px; + height: 14px; +} + +/* 2. 轨道 (Track) -> 永久透明 */ +.markdown-body pre > code::-webkit-scrollbar-track, +.markdown-body pre > code::-webkit-scrollbar-corner { + background: transparent; +} + +/* 3. 滑块 (Thumb) -> 核心魔法区域 */ +.markdown-body pre > code::-webkit-scrollbar-thumb { + /* a. 默认隐藏:通过透明的背景和边框实现 */ + background-color: transparent; + border: 4px solid transparent; + background-clip: content-box; + border-radius: 8px; + + /* b. 关键修正:在这里定义过渡效果,让浏览器提前准备好 */ + transition: background-color 0.3s ease-in-out; +} + +/* 4. 悬停状态 -> 优雅浮现 */ +/* 当鼠标悬停在 code 元素上时,滑块的背景色才变为可见的渐变色 */ +.markdown-body pre > code:hover::-webkit-scrollbar-thumb { + background-color: #3b82f6; /* 为了平滑过渡,先给一个纯色 */ + background-image: linear-gradient(135deg, #3b82f6, #8b5cf6); +} + +/* 5. 悬停在滑块上时,改变颜色 (可选,但推荐) */ +/* 这个选择器没有问题,因为此时 thumb 已经是可见的 */ +.markdown-body pre > code::-webkit-scrollbar-thumb:hover { + background-color: #1d4ed8; /* 同样,为了平滑过渡 */ + background-image: linear-gradient(135deg, #1d4ed8, #7c3aed); +} + diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/css/content-theme/custom-light.css b/src/main/resources/static/articles/vditor@3.11.1/dist/css/content-theme/custom-light.css new file mode 100644 index 0000000..6bb74a1 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/css/content-theme/custom-light.css @@ -0,0 +1,512 @@ +.markdown-body { + border-radius: 1.5rem; + backdrop-filter: blur(10px); +} + +.markdown-body::before { + content: ''; + position: absolute; + top: 0; + left: 0; + right: 0; + height: 4px; + background: linear-gradient(90deg, #3b82f6, #8b5cf6, #06b6d4, #10b981); + border-radius: 20px 20px 0 0; +} + +/* 标题样式 */ +.markdown-body h1 { + font-size: 3rem; + font-weight: 800; + line-height: 1.1; + margin: 0 0 3rem 0; + background: linear-gradient(135deg, #1e40af 0%, #3b82f6 50%, #06b6d4 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; + background-clip: text; + position: relative; + text-align: center; + letter-spacing: -0.025em; +} + +.markdown-body h1::after { + content: ''; + position: absolute; + bottom: -16px; + left: 50%; + transform: translateX(-50%); + width: 120px; + height: 4px; + background: linear-gradient(90deg, #3b82f6, #8b5cf6); + border-radius: 2px; + box-shadow: 0 4px 8px rgba(59, 130, 246, 0.3); +} + +.markdown-body h2 { + font-size: 2.25rem; + font-weight: 700; + line-height: 1.2; + margin: 3.5rem 0 1.5rem 0; + color: #1f2937; + position: relative; + padding-left: 24px; +} + +.markdown-body h2::before { + content: ''; + position: absolute; + left: 0; + top: 0; + bottom: 0; + width: 6px; + background: linear-gradient(180deg, #3b82f6, #8b5cf6); + border-radius: 3px; + box-shadow: 0 2px 4px rgba(59, 130, 246, 0.3); +} + +.markdown-body h3 { + font-size: 1.75rem; + font-weight: 600; + line-height: 1.3; + margin: 2.5rem 0 1.2rem 0; + color: #1f2937; + position: relative; + padding: 12px 20px; + background: linear-gradient(135deg, rgba(59, 130, 246, 0.05) 0%, rgba(139, 92, 246, 0.05) 100%); + border-radius: 12px; + border-left: 4px solid #3b82f6; +} + +.markdown-body h4 { + font-size: 1.375rem; + font-weight: 600; + margin: 2rem 0 1rem 0; + color: #374151; + position: relative; + padding-left: 16px; +} + +.markdown-body h4::before { + content: '▸'; + position: absolute; + left: 0; + color: #3b82f6; +} + +.markdown-body h5, +.markdown-body h6 { + font-size: 1.125rem; + font-weight: 600; + margin: 1.5rem 0 0.8rem 0; + color: #4b5563; +} + +/* 段落和文本 */ +.markdown-body p { + margin: 1.5rem 0; + line-height: 1.8; + text-align: justify; +} + +.markdown-body strong, +.markdown-body b { + font-weight: 700; + color: #1f2937; + background: linear-gradient(135deg, rgba(59, 130, 246, 0.1) 0%, rgba(139, 92, 246, 0.1) 100%); + padding: 2px 4px; + border-radius: 4px; +} + +.markdown-body em { + font-style: italic; + color: #6b7280; + background: rgba(139, 92, 246, 0.05); + padding: 1px 3px; + border-radius: 3px; +} + +/* 链接 */ +.markdown-body a { + color: #3b82f6; + text-decoration: none; + position: relative; + font-weight: 500; + transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); +} + +.markdown-body a::before { + content: ''; + position: absolute; + bottom: -2px; + left: 0; + width: 0; + height: 2px; + background: linear-gradient(90deg, #3b82f6, #8b5cf6); + transition: width 0.3s ease; + border-radius: 1px; +} + +.markdown-body a:hover { + color: #1d4ed8; + transform: translateY(-1px); +} + +.markdown-body a:hover::before { + width: 100%; +} + +/* 代码 */ +.markdown-body :not(pre) > code, +.markdown-body tt { + padding: 4px 8px; + background: linear-gradient(135deg, #f3f4f6 0%, #e5e7eb 100%); + border: 1px solid #d1d5db; + border-radius: 8px; + font-family: "JetBrains Mono", "SF Mono", Consolas, monospace; + font-size: 0.9em; + color: #dc2626; + font-weight: 600; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); +} + +.markdown-body pre { + background: linear-gradient(135deg, #1f2937 0%, #111827 100%); + border: 1px solid #374151; + border-radius: 16px; + padding: 24px; + margin: 2rem 0; + overflow-x: auto; + font-family: "JetBrains Mono", "SF Mono", Consolas, monospace; + font-size: 0.9rem; + line-height: 1.7; + position: relative; + box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15); +} + +.markdown-body pre::before { + content: ''; + position: absolute; + top: 0; + left: 0; + right: 0; + height: 1px; + background: linear-gradient(90deg, #3b82f6, #8b5cf6, #06b6d4); +} + +.markdown-body pre::after { + content: ''; + position: absolute; + top: 12px; + left: 16px; + width: 12px; + height: 12px; + background: #ef4444; + border-radius: 50%; + box-shadow: 20px 0 0 #f59e0b, 40px 0 0 #10b981; +} + +.markdown-body pre code { + background: none; + border: none; + padding: 0; + font-size: 100%; + font-weight: normal; + box-shadow: none; +} + +/* 引用块 */ +.markdown-body blockquote, .markdown-body .note-update-date{ + margin: 2rem 0; + padding: 24px 32px; + background: linear-gradient(135deg, rgba(59, 130, 246, 0.05) 0%, rgba(139, 92, 246, 0.05) 100%); + border-left: 6px solid #3b82f6; + border-radius: 0 16px 16px 0; + color: #4b5563; + font-style: italic; + position: relative; + box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05); + backdrop-filter: blur(10px); +} + +.markdown-body blockquote::before { + content: '"'; + position: absolute; + top: -12px; + left: 24px; + font-size: 4rem; + color: #3b82f6; + opacity: 0.2; + font-family: Georgia, serif; + line-height: 1; +} + +.markdown-body blockquote p { + margin: 0.8rem 0; + position: relative; + z-index: 1; +} + +/* 列表 */ +.markdown-body ul, +.markdown-body ol { + padding-left: 1rem; +} + +.markdown-body ul li { + list-style: none; + position: relative; + margin: 0.5rem 0; + padding-left: 8px; +} + +.markdown-body ul li:not(.vditor-task)::before { + content: ''; + position: absolute; + left: -1rem; + top: 0.5rem; + width: 8px; + height: 8px; + background: linear-gradient(135deg, #3b82f6, #8b5cf6); + border-radius: 50%; + box-shadow: 0 2px 4px rgba(59, 130, 246, 0.3); +} + +.markdown-body ul ul > li:not(.vditor-task)::before { + background: transparent; + border: 2px solid #8b5cf6; + box-shadow: none; + width: 8px; + height: 8px; + top: 0.5rem; +} + +.markdown-body ul ul ul > li:not(.vditor-task)::before { + background: linear-gradient(135deg, #3b82f6, #8b5cf6); + border: none; + border-radius: 2px; + width: 8px; + height: 8px; + top: 0.5rem; +} + +.markdown-body ol li { + margin: 0.8rem 0; + counter-increment: list-counter; + position: relative; + padding-left: 8px; +} + +.markdown-body ol { + counter-reset: list-counter; +} + +.markdown-body ol li::marker { + color: #3b82f6; + font-weight: 700; +} + +/* 表格 */ +.markdown-body table { + width: 100%; + margin: 3rem 0; + border-collapse: collapse; + border-radius: 16px; + overflow: hidden; + box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1); + border: 1px solid #e5e7eb; +} + +.markdown-body table th { + background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%); + color: white; + font-weight: 700; + padding: 12px; + text-align: left; + border: none; + font-size: 0.95rem; + letter-spacing: 0.025em; +} + +.markdown-body table td { + padding: 10px 12px; + border-bottom: 1px solid #f3f4f6; + border-right: 1px solid #f3f4f6; + background-color: #ffffff; + transition: all 0.2s ease; +} + +.markdown-body table tr:nth-child(even) td { + background: linear-gradient(135deg, #f9fafb 0%, #f3f4f6 100%); +} + +.markdown-body table tr:hover td { + background: linear-gradient(135deg, rgba(59, 130, 246, 0.05) 0%, rgba(139, 92, 246, 0.05) 100%); + transform: translateY(-1px); + box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); +} + +.markdown-body table td:last-child, +.markdown-body table th:last-child { + border-right: none; +} + +/*分割线 */ +.markdown-body hr { + height: 4px; + background: linear-gradient(90deg, transparent, #3b82f6, #8b5cf6, #06b6d4, transparent); + border: none; + margin: 4rem 0; + border-radius: 2px; + position: relative; +} + +.markdown-body hr::after { + content: ''; + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + width: 20px; + height: 20px; + background: #ffffff; + border: 3px solid #3b82f6; + border-radius: 50%; + box-shadow: 0 0 0 6px #ffffff; +} + +/* 图片 */ +.markdown-body img { + max-width: 100%; + height: auto; + border-radius: 16px; + box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15); + margin: 3rem 0; + display: block; + margin-left: auto; + margin-right: auto; + transition: transform 0.3s ease, box-shadow 0.3s ease; +} + +/* 键盘按键 */ +.markdown-body kbd { + background: linear-gradient(135deg, #f9fafb 0%, #f3f4f6 100%); + border: 1px solid #d1d5db; + border-bottom-color: #9ca3af; + border-radius: 8px; + box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1), inset 0 -2px 0 #d1d5db; + color: #374151; + display: inline-block; + font-family: "SF Mono", Consolas, monospace; + font-size: 0.85em; + font-weight: 600; + line-height: 1; + padding: 6px 8px; + vertical-align: middle; +} + +/* 特殊效果 */ +.markdown-body h1, +.markdown-body h2, +.markdown-body h3 { + animation: slideInFromLeft 0.8s cubic-bezier(0.4, 0, 0.2, 1); +} + +.markdown-body p, +.markdown-body blockquote, +.markdown-body pre, +.markdown-body table { + animation: fadeInUp 0.6s cubic-bezier(0.4, 0, 0.2, 1); +} + +@keyframes slideInFromLeft { + from { + opacity: 0; + transform: translateX(-30px); + } + to { + opacity: 1; + transform: translateX(0); + } +} + +@keyframes fadeInUp { + from { + opacity: 0; + transform: translateY(30px); + } + to { + opacity: 1; + transform: translateY(0); + } +} + +/* 响应式设计 */ +@media (max-width: 768px) { + .markdown-body { + font-size: 15px; + border-radius: 16px; + } + + .markdown-body h1 { + font-size: 2.25rem; + } + + .markdown-body h2 { + font-size: 1.875rem; + } + + .markdown-body h3 { + font-size: 1.5rem; + } + + .markdown-body table { + font-size: 0.9rem; + } + + .markdown-body table th, + .markdown-body table td { + padding: 12px; + } + + .markdown-body pre { + border-radius: 12px; + padding: 24px 0; + } +} + +.markdown-body pre > code { + overflow: auto !important; + -webkit-overflow-scrolling: touch; +} + +.markdown-body pre > code::-webkit-scrollbar { + width: 14px; + height: 14px; +} + +.markdown-body pre > code::-webkit-scrollbar-track, +.markdown-body pre > code::-webkit-scrollbar-corner { + background: transparent; +} + +.markdown-body pre > code::-webkit-scrollbar-thumb { + background-color: transparent; + border: 4px solid transparent; + background-clip: content-box; + border-radius: 8px; + transition: background-color 0.3s ease-in-out; +} + +.markdown-body pre > code:hover::-webkit-scrollbar-thumb, .markdown-body pre > code:active::-webkit-scrollbar-thumb { + background-color: #3b82f6; + background-image: linear-gradient(135deg, #3b82f6, #8b5cf6); +} + +.markdown-body pre > code::-webkit-scrollbar-thumb:hover { + background-color: #1d4ed8; + background-image: linear-gradient(135deg, #1d4ed8, #7c3aed); +} + + + + diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/css/content-theme/dark.css b/src/main/resources/static/articles/vditor@3.11.1/dist/css/content-theme/dark.css new file mode 100644 index 0000000..d026744 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/css/content-theme/dark.css @@ -0,0 +1,123 @@ +/*! + * Vditor - A markdown editor written in TypeScript. + * + * MIT License + * + * Copyright (c) 2018-present B3log 开源, b3log.org + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ +.vditor-reset { + color: #d1d5da; +} + +.vditor-reset a, .vditor-ir__link { + color: #4285f4; +} + +.vditor-reset h1, .vditor-reset h2 { + padding-bottom: 0.3em; + border-bottom: 1px solid #d1d5da +} + +.vditor-reset hr { + background-color: #d1d5da +} + +.vditor-reset blockquote { + padding: 0 1em; + color: #b9b9b9; + border-left: .25em solid #d1d5da +} + +.vditor-reset iframe { + border: 1px solid #141414 +} + +.vditor-reset table tr { + background-color: #2f363d +} + +.vditor-reset table td, .vditor-reset table th { + border: 1px solid #dfe2e5 +} + +.vditor-reset table tbody tr:nth-child(2n) { + background-color: #24292e +} + +.vditor-reset code:not(.hljs):not(.highlight-chroma) { + background-color: rgba(66, 133, 244, .36); +} + +.vditor-reset .language-abc svg, +.vditor-reset .language-abc path { + fill: currentColor; + color: #d1d5da; +} + +.language-graphviz polygon { + fill: rgba(66, 133, 244, .36); +} + +.vditor-reset kbd { + color: #d1d5da; + background-color: #2f363d; + border: 1px solid #141414; + box-shadow: inset 0 -1px 0 #141414 +} + +.vditor-copy svg { + color: #b9b9b9 +} + +.vditor-speech { + background-color: #1d2125; + border: 1px solid #141414; + color: #b9b9b9 +} + +.vditor-speech--current, .vditor-speech:hover { + color: #fff +} + +.vditor-linkcard a { + background-color: #1d2125; +} + +.vditor-linkcard a:visited .vditor-linkcard__abstract { + color: hsla(0, 0%, 72.5%, .36) +} + +.vditor-linkcard__title { + color: #d1d5da +} + +.vditor-linkcard__abstract { + color: #b9b9b9 +} + +.vditor-linkcard__site { + color: #fff +} + +.vditor-linkcard__image { + background-color: hsla(0, 0%, 72.5%, .36) +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/css/content-theme/light.css b/src/main/resources/static/articles/vditor@3.11.1/dist/css/content-theme/light.css new file mode 100644 index 0000000..f64de92 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/css/content-theme/light.css @@ -0,0 +1,101 @@ +/*! + * Vditor - A markdown editor written in TypeScript. + * + * MIT License + * + * Copyright (c) 2018-present B3log 开源, b3log.org + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ +.vditor-reset h1, .vditor-reset h2 { + padding-bottom: 0.3em; + border-bottom: 1px solid #eaecef; +} + +.vditor-reset hr { + background-color: #eaecef; +} + +.vditor-reset blockquote { + color: #6a737d; + border-left: .25em solid #eaecef +} + +.vditor-reset iframe { + border: 1px solid #d1d5da +} + +.vditor-reset table tr { + border-top: 1px solid #c6cbd1; + background-color: #fafbfc +} + +.vditor-reset table td, .vditor-reset table th { + border: 1px solid #dfe2e5 +} + +.vditor-reset table tbody tr:nth-child(2n) { + background-color: #fff +} + +.vditor-reset code:not(.hljs):not(.highlight-chroma) { + background-color: rgba(27, 31, 35, .05); +} + +.vditor-reset kbd { + color: #24292e; + background-color: #fafbfc; + border: solid 1px #d1d5da; + box-shadow: inset 0 -1px 0 #d1d5da; +} + +.vditor-speech { + background-color: #f6f8fa; + border: 1px solid #d1d5da; + color: #586069; +} + +.vditor-speech--current, .vditor-speech:hover { + color: #4285f4; +} + +.vditor-linkcard a { + background-color: #f6f8fa; +} + +.vditor-linkcard a:visited .vditor-linkcard__abstract { + color: rgba(88, 96, 105, 0.36); +} + +.vditor-linkcard__title { + color: #24292e; +} + +.vditor-linkcard__abstract { + color: #586069; +} + +.vditor-linkcard__site { + color: #4285f4; +} + +.vditor-linkcard__image { + background-color: rgba(88, 96, 105, 0.36); +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/css/content-theme/wechat.css b/src/main/resources/static/articles/vditor@3.11.1/dist/css/content-theme/wechat.css new file mode 100644 index 0000000..6956fa9 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/css/content-theme/wechat.css @@ -0,0 +1,94 @@ +/*! + * Vditor - A markdown editor written in TypeScript. + * + * MIT License + * + * Copyright (c) 2018-present B3log 开源, b3log.org + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ +.vditor-reset { + font-family: "mp-quote", -apple-system-font, BlinkMacSystemFont, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", "Segoe UI Symbol", "Android Emoji", "EmojiSymbols"; + color: rgb(62, 62, 62); +} + +.vditor-reset a, .vditor-ir__link { + color: #576b95; +} + +.vditor-reset h1 { + font-weight: 400; + text-align: center; + color: rgb(26, 173, 25); + font-size: 24px; + background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAACCAYAAABYBvyLAAAAGElEQVQImWNkXs/wn4GKgImahjEwMDAAAA6aAbVUOzXRAAAAAElFTkSuQmCC); + background-repeat: no-repeat; + background-position: center bottom; +} + +.vditor-reset h2 { + font-weight: 400; + text-align: center; + font-size: 20px; +} + +.vditor-reset h3, +.vditor-reset h4, +.vditor-reset h5, +.vditor-reset h6 { + font-weight: 400; +} + +.vditor-reset hr { + border-bottom: 1px solid rgba(0, 0, 0, 0.1); + transform-origin: 0 0; + transform: scale(1, 0.5); + height: 0; +} + +.vditor-reset blockquote { + padding: 4px 0 0 10px; + border-left: 3px solid #dbdbdb; + color: #9a9a9a; + line-height: 1.6; + font-size: 15px; + margin: 1em 0; +} + +.vditor-reset code { + font-size: 14px; + border: 1px solid #f0f0f0; + border-radius: 2px; +} + +.vditor-reset code:not(.hljs):not(.highlight-chroma) { + background-color: rgba(0, 0, 0, 0.03); + color: #333; +} + +.vditor-reset .language-abc svg, +.vditor-reset .language-abc path { + fill: currentColor; + color: rgb(62, 62, 62); +} + +.vditor-reset .language-graphviz polygon { + fill: transparent; +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/b3log.png b/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/b3log.png new file mode 100644 index 0000000000000000000000000000000000000000..4199c28e09e0030887d4f7a3d51bf30e506ddc2e GIT binary patch literal 4773 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/chainbook.png b/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/chainbook.png new file mode 100644 index 0000000000000000000000000000000000000000..dcf61646f7670d67a6637c731e0b25f865d3ca46 GIT binary patch literal 3663 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 Xa`TRppH!oN{R5rouC)7h0o?xpn7e3T literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/doge.png b/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/doge.png new file mode 100644 index 0000000000000000000000000000000000000000..182f6616c2516f8d57931252c7fb84a10fea976b GIT binary patch literal 3291 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 I*Ki2^F9pVL_y7O^ literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/hacpai.png b/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/hacpai.png new file mode 100644 index 0000000000000000000000000000000000000000..a840eab2f0ffb77c92a8657f33315896c86a53b2 GIT binary patch literal 1587 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 Pbp-%)Y8a(FkeTv7R6(I1 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/huaji.gif b/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/huaji.gif new file mode 100644 index 0000000000000000000000000000000000000000..7bda3f1df927b0d79ad4fb21428e6a0bb3e5f25c GIT binary patch literal 13662 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/latke.png b/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/latke.png new file mode 100644 index 0000000000000000000000000000000000000000..8925b502bf8097363fcec6ec75637448c56c9060 GIT binary patch literal 3264 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/liandi.png b/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/liandi.png new file mode 100644 index 0000000000000000000000000000000000000000..a840eab2f0ffb77c92a8657f33315896c86a53b2 GIT binary patch literal 1587 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 Pbp-%)Y8a(FkeTv7R6(I1 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/lute.png b/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/lute.png new file mode 100644 index 0000000000000000000000000000000000000000..2dcd9715e2a7abc0d8b44b4282051c9722f8cd38 GIT binary patch literal 1052 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+yeR!04SB5>XQ2>tmIipR1RclAn~S zSCLx)lxJYDv9BmdOwLX%QAkQn&&;z`dcS+Wl0s&Rtx~wDuYqrYb81GWM^#a3aFt(3 za#eP+Wr~u$9hXgo70`g()RIJnirk#MVyg;UC9t_xKsHENUr7P1q$Jx`$q{6sLWFOC zf^&XRs)DJWnQpS7v4w)UrJkXwrG=4+j)IYap_#scrM{twu7RPIfu)s!p#l^r*>Ne@ z6s4qD1-ZCEEd%mwl`=|73as??%gf94%8m8%i_-NCEiEne4UF`SjC6r2bc-wVN)jt{ z^NN*0MnKGPNi9w;$}A|!%+FH*nVFcBUs__Tq@)kBL?3Dk(0lrD{{cDh5K7Gh21^mp z{|cV#tbk$1lJ4m1$iT3%pZiZDE0E7v9OUlAu<o49OCV=LfKP}kkaleSZ0_Xb)cV=V z&dJ)&$<p4@%GSxT`J-dYXUCQ=j%{D8ZJk1aVAX%10-%VNRwz&^wEn-foimVY1tgn4 z*d@=k&zfRw@9I?l6ew$L>kKr?F1$%Abd_WM3u^~YYxgLiGKcIfR`#wyjZUp!?Bb_^ z)Hi>y&)#AKl&yVe;~uG^`sNbQP3k2<e!&cX#l;`~P5krc;nl=z%*=Nev)yG|oOJci z7oLCrT3eUAVmo!}_ru>0wJZ8{fnHnS>Eaj?aro`^>v@L_cpL&vZ)b*0ez!MQHS_cT z`f%T_DH85{0Sj2qm~-uT?%SZ^VqIV27k_@n<*TO^w%bdd3r^fB^Ob#Ot*MT1;?^~8 zsnZrzu^wr9B|1U*MI3X;g}rQi+{?@v#C-A_oSWY23b5RcUJzHXmwC^FD)uX!`@T1b z*1T{0%k+gIgRzR?8|OlP2h079b_{z81glu4To+|7V0ve$5UC*QF`w}W)7#<(j|H`2 z0pAP*WErRE7O)gd<-fD(K&;({w8r;hKf(|E=w-E2n|WZz?|sP)Z`0E!vG(j<bmNUs z!tQsRT5lLb^t-Y?i!$CWy(t{>fbp(20}JO~wvGc#%dR(wt9)TQz{Gyz9)sV63(*Xm zJP)e4BOIOHHz+J=crTj(RLJh&!SKR%0V}61LtIDW1?B}ToV5&d1Q=KFJ8Z4w`mV&V zsCXvB4)+6(eokcWabUQ_o?s|^xtQ+)Q(Pv0!z)(-js+}xF5Y8a#?Qp+vi#Z3@CR}& zasR6KE9@1QVp>t|WZdv2EQ7^muiz{O&-JZr2mbb0&avCF|783u`JeTIcEy_?%K@X8 N!PC{xWt~$(69D#ag(d(1 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/octocat.png b/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/octocat.png new file mode 100644 index 0000000000000000000000000000000000000000..d296f25fe067d0cab6aff8314f3c16ceb998e2e9 GIT binary patch literal 3738 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 Ef^RAexBvhE literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/pipe.png b/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/pipe.png new file mode 100644 index 0000000000000000000000000000000000000000..8083768f955c3f2745ffb1e5ff2eb376829d38f5 GIT binary patch literal 2247 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 T6h~j;;s3)5V}~v`bC3BO)(RLR literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/siyuan.png b/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/siyuan.png new file mode 100644 index 0000000000000000000000000000000000000000..55bf02c4a7b74bf86d891d125ab457034fba8cf9 GIT binary patch literal 1153 zcmV-{1b+L8P)<h;3K|Lk000e1NJLTq002M$002M;1^@s6s%dfF000C?Nkl<Zc%1E< zU5FKB9L9fV&+aA?CMNd1YzB)2LJ3|-QQ8VY7hNn!3JEP?U{v%eB^uPa8LcLUfq}6? zLP62ul}5OIfO*vi1ybv`QEF;P#9p)>C*HHq8`Ci7oSAp#oS8cFyV{xgzyJU9Jm<`w z+1+<3C@3gsXG#-GmZV|-{^8CU14m08&jEi%Sui>^={oD`qot0m!<{oe20n3ZVmSEa z0XmX25Dx%*FH*V_*ayr?p=T{j?|s+enOS=^I}u3(cn}x^uF~<{z<%JG)U8kV+^-pE z=9n}%lO%uv;6tE0aNgWgp8~U!2n#S<J%jgaw=@j6Hg*kQ1@J+LdCOwp05Hc@n2$N? zwYbLhZfRNJ(%dD0Rlxf|SA)7m5<b^On3$^`iyG8*Nz<yh1L6j-8h8&VN36dC7zgIX z6{a=g>Jf#qw5^UaBu)T>=F=;NdCNlJGvN9dYp&Cpg)wK9rExIof~Wzk0p4{mZ@FED zZj4ZS1Ms=lxKNhXHBr_^31BVoj(KQu6l7VT5N@thbCb+3NI0t`&1)MKHVWWL;O!L5 zTl#=6fS!<RJ-XJH(yWrSKT)r!UI5Pm+fy`enQx2^cFpYdo$J*re_P74jP|#HXKEGH z3Sb?uwF%}ey$WHz0x{-qZPF~`;Z5L$u#24`=hg$mO%mg$N5&1ev|!#F^1Io8G8n+i zz$+~fV`+tPKd;I2kUi(W1%_H|J}X`g3&6ZBHnf3x%LaQZm;gqA7jq%2wNyQu0G@9r z*Fn<wjnIFZB7hud$dn?09B9atB7hud$dn?09B9atB7hud$dn?09B9atB7hud$dn?0 z9B9atv;r8blz1Ar)B-b?%3k#k9b;)UOCx}ffQSB|^cBz#{GLM3TA1F;XW<<*Gc`LA zNdquDGgc0E&79KlHwxiG>ei=wE(gA5dY74*xl$UONfN*w;9;N=IR71RA8<a2umI;3 z?6-mQ6=~Sx+SoOK-M}Lu<}E(}OM!E)!hD=lukUMIuSm;om*y@3>;fLGW8QLD!q2z} z6KB-paD%#vH0_EzAZ`FVfyaO=5$k`HfnVYZ)0(B~5rr$#wlmI<I05Vc9tXTwHedp{ z7dRbb&1tQfh&juX#vM@?L=9jY@RWmj%Q3y0CnMCJRP8axS)R0Ri&7jVfD!E$aW!u_ zA!Enu)ErmMiG;H}X&z}**eHO_+AWe6r)2O*NWUYxb}Ger>w+61g47FONV`SS=4ToG z$=BC>y-e5AX1#wuK#;I4GKP)7rY4B7{HhSfb=;ru<FXNE=gVJVL4>^nUTU)WDx*`A zXBEP-CY!fxlDB^md<U4FR9jjgrpoBl<ZrE-C0++E`@cEb06gub+wRiU|L-q-hYm$r z<GLI2u6z0&SN_8mJvo|ffYksz-;U6B!8{{We}e7w?FDW(B0nt_6ciNvKLP#*__WGj ToxvTM00000NkvXXu0mjfNwXE1 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/solo.png b/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/solo.png new file mode 100644 index 0000000000000000000000000000000000000000..fe56384d3b00aa07f8ac05e671537f127417373f GIT binary patch literal 3890 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/sym.png b/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/sym.png new file mode 100644 index 0000000000000000000000000000000000000000..e304079c35905ae16d615859983e89130c36ba4b GIT binary patch literal 3267 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 B6u$rf literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/trollface.png b/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/trollface.png new file mode 100644 index 0000000000000000000000000000000000000000..119d77e73a1fc9894adfe0600e341c936d619e4b GIT binary patch literal 4901 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 Xg1#v80?LP600000NkvXXu0mjfT`77J literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/vditor.png b/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/vditor.png new file mode 100644 index 0000000000000000000000000000000000000000..9e4379b30496a635ac045fef17f5455f62c1ed0c GIT binary patch literal 2177 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/wide.png b/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/wide.png new file mode 100644 index 0000000000000000000000000000000000000000..5830b2236cb270016eea72d46b689277767600cb GIT binary patch literal 5128 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/wulian.png b/src/main/resources/static/articles/vditor@3.11.1/dist/images/emoji/wulian.png new file mode 100644 index 0000000000000000000000000000000000000000..ea16da5e3bb35f8e1b6b8bdd584d663144ad4d0f GIT binary patch literal 8469 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/images/img-loading.svg b/src/main/resources/static/articles/vditor@3.11.1/dist/images/img-loading.svg new file mode 100644 index 0000000..c56f035 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/images/img-loading.svg @@ -0,0 +1 @@ +<svg width="160px" height="160px" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid" class="lds-double-ring" style="background: none;"><circle cx="50" cy="50" ng-attr-r="{{config.radius}}" ng-attr-stroke-width="{{config.width}}" ng-attr-stroke="{{config.c1}}" ng-attr-stroke-dasharray="{{config.dasharray}}" fill="none" stroke-linecap="round" r="20" stroke-width="4" stroke="#3b3e43" stroke-dasharray="31.41592653589793 31.41592653589793" transform="rotate(111.924 50 50)"><animateTransform attributeName="transform" type="rotate" calcMode="linear" values="0 50 50;360 50 50" keyTimes="0;1" dur="1.5s" begin="0s" repeatCount="indefinite"></animateTransform></circle><circle cx="50" cy="50" ng-attr-r="{{config.radius2}}" ng-attr-stroke-width="{{config.width}}" ng-attr-stroke="{{config.c2}}" ng-attr-stroke-dasharray="{{config.dasharray2}}" ng-attr-stroke-dashoffset="{{config.dashoffset2}}" fill="none" stroke-linecap="round" r="15" stroke-width="4" stroke="#d23f31" stroke-dasharray="23.561944901923447 23.561944901923447" stroke-dashoffset="23.561944901923447" transform="rotate(-111.924 50 50)"><animateTransform attributeName="transform" type="rotate" calcMode="linear" values="0 50 50;-360 50 50" keyTimes="0;1" dur="1.5s" begin="0s" repeatCount="indefinite"></animateTransform></circle></svg> \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/images/logo.png b/src/main/resources/static/articles/vditor@3.11.1/dist/images/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..16244b2b19d203270acf153161b6ebb7b35b0822 GIT binary patch literal 2050 zcmZuxdr(tn7Qcj~q_(bF)MDvKj8fjYAwVGaoqLm;L<mFz@@mllQIJOvA_TT#s=MfF z)hRNq-~&p<+KRZSWqj~Z2MZ_y1`&_}wH9{EAoxHL3b-F#r+@X#eVlW?-~Ij0Ip3Y{ zU%F7$!UZ2KfFNk0My&`3Z|nTcw+GLOhhI%WkX>*}M6@|t8-gU7(nW?OQ-V=sNzVl9 z5QLGIOhaO-(JV+XZcfR-h2vKmg@TkMTo@Ig6>BpYV{(c*Kg+1k4~<C7Pfe612}xoB zW<dZ!y3uS9SklunvJnd|{DT(({(Kr13jTnYQ*ohuUQiIN)d?6=mQfHOlKLe2`UMFB zWg_1IS&+ovTObkpN@1}K_VxD>`yyf)BK8%$H6gJ;fMq3ZLc$g7TQLyf!ep~K6M^B} z++0zvpU9N88TOUQWUyEQOC&x3;gg-0VK!KNGO}0CQ~aMpVa!g<O35^*m@)+OoQ4F` zHZv|1!t)~VTNThA{AYh4_;W(W3^0}~(7!-ajeyy4H_Nqh2&y^w-i(0<V!P~c6%AFl zfBYK+aTe=BB9tK6MR>K#18k%ZiqmaMOsmv(5uPZ{AUM-Sc(<u=j9~6!9vyPOySPUO zCGEmJ8Ac~(^&ON1m9M2JT{q^A6N+1OppsOg1f!O#0cWcMpU2ZMrv4O!HXNw<0S6`7 z+qATkgujT4M45GZitUn1f+;n@L^snxG^GxvgK@=rOu7E10<n=Ij9G``it8!{r8H|P z6{xM9^0yJ9n>1o0yn-nW5Cv>uWEce;N=%We4$2QxL}6?kOR@-~vyol^-${w?5*~mM zRE5wXG^K1(F*qHDv5_{y6XX&3+BRCIrdS2Vc2Y2c5nZ@fxFWcjCP3LZ!Ju>~Mkv4% zL$WOl8Z1|#w3Z~pniT}fMxvxzNwT19R?f-^B}N4|Ddk<HS0^cMC&V_w`vyxiszU%E zlvdkFZvaD7ky=WHC}Z2?ff|avhktU1^affjG}<Q<w8^En=>YH{=niawjNKr^NK6@p zkSt2jcflSJOgG_%Vnh$_3Nlh$4jPmZ^gZ0I7ZU~%v<%dY%L56zoA3nW-MAY{C=i@N zF&xE6DNX~z9{dx8R07d^xN9%AW+e0M{Eu?T93HBNDwoDjE#yBx{=&i^e~Lcx{I9=b z=|$e;u&(OWr(21a&MwzFeD8D|inZUkY>AK4ibE?SGxHjDOt@a#G-vJI*Ne9FEbeRR zT&sP*@WlNid(S7IYu+vU%6PGOFuUNplP~tWYM$J>arAV3eBMus4=aDW5N){d13R+a zwJ`zP?dgBmElhk`KXz05HBnpGGP=*b{9yOYlC7f~A;`W|qmV~f?mxLdsdtnwb$H6y zyYF-t*w)#t8|6rw3VEaTlcHCHe;-GFuU>QM*D-b0CH{0^zM(?m(E8H=b8L35STj7l zeRyy%epBv>!nZa&-da<behBj@*5B#zf8D?2!`J*D&m0eJD2S}A$m(}<Zd}=MULE$x z|N2l=vFlFg>X7q}Jr#2k<@jU%*JWF^;pOCa`^lk-2u^YrpB@VCVQ7vYM5kR_FML_% zJ>g*I4NZjP{j+|i%JGrd8c9LMfuH+lb`=S~*k(OmTbGtL^!=jb1|vj2Rwewnqx%~^ zr`Lhod2F}SO)|Pf2OWi`ckk@)yYx7#chSS8<=;y?B4@LUYNm4R_MFKkmLC6RVMar` zb#S*&`=<Zoc`f5z#RZz6gdI6!mNiqZSM59B<>e)gc5nD4ILY1QT)v1G2ahZ}?P!3i zpr&(hb8Pxt$-gyuZqTt#y`*{VtbLJ-l?(Bj?#B(kxfoJ9{!Y1L#gn0u4VP1Ik2g3& z^t#%BSzS=<lJ!sv$4qw&mM}eK&KJy+1DuIFmb&~?ZsY?O?o)0#S#+ysMKvth{(LK^ z=pR+nc2OTjxxWj+cC9gn7iarqn;oJ}gwz_^d-(FJ;t#k^??4Iqo&y}Gm6V95gZ|>0 ziL&ah>aCf*e9LVW#yu4~S#E5o*>-17p!IOuP>0KwZ?luOyjLcs9!@Vm5i@c-e)%Jf zJy&~NceJ49%G}~NyWFYnlgo|qW3Xva%?T*~g;(woljTC)!yDskAdbV8%T;NY+Pn>U z94Iml>l-=QQ}0oa#ajy|Zy`_8em@hp?1N`^2^=^7{(-5ql4Jyp<MB%~XX|FqJdo|j z4)O%I^e$-sOm&RolF#h9?ST)bUcKp~<IN78zw#<G{wDY`rqC7^G7JSgu1ocK9J;TL zu~t?4T;IwcW|>lz#82@0%((?Uvhvx$sZ(0(Q|;j+yT%0(Iji?_N1>o?&(i8t*K%t2 zRv4`xHQsIA7?yXXW>E?>9e1{5RZ(SneU%5bC)@e56CD#FWJ93RoaY{`tG^9Mr9aQ7 zLJq)n^t5htfP_cn){CDv7OyI+Oxuzpg?@Q9*7v1b%tTdS61T}e<AL($^L2S;AMf7* z`K}sEO~AA-9f;Vc&R2hM&T=|<X!gLuN}^!6p&+4fRe(wFLKGO1-`d>347WDT$y-=^ RbT2qWAdNCqQB7~$`9DOSG9&;1 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/index.css b/src/main/resources/static/articles/vditor@3.11.1/dist/index.css new file mode 100644 index 0000000..fa2232b --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/index.css @@ -0,0 +1,1823 @@ +/*! + * Vditor v3.11.1 - A markdown editor written in TypeScript. + * + * MIT License + * + * Copyright (c) 2018-present B3log 开源, b3log.org + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ +/*! + * Vditor v3.11.1 - A markdown editor written in TypeScript. + * + * MIT License + * + * Copyright (c) 2018-present B3log 开源, b3log.org + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ +.vditor { + --border-color: #d1d5da; + --second-color: rgba(88, 96, 105, 0.36); + --panel-background-color: #fff; + --panel-shadow: 0 1px 2px rgba(0, 0, 0, 0.2); + --toolbar-background-color: #f6f8fa; + --toolbar-icon-color: #586069; + --toolbar-icon-hover-color: #4285f4; + --toolbar-height: 35px; + --toolbar-divider-margin-top: 8px; + --textarea-background-color: #fafbfc; + --textarea-text-color: #24292e; + --resize-icon-color: var(--toolbar-icon-color); + --resize-background-color: var(--toolbar-background-color); + --resize-hover-icon-color: var(--panel-background-color); + --resize-hover-background-color: var(--toolbar-icon-hover-color); + --count-background-color: rgba(27, 31, 35, 0.05); + --heading-border-color: #eaecef; + --blockquote-color: #6a737d; + --ir-heading-color: #660e7a; + --ir-title-color: #808080; + --ir-bi-color: #0033b3; + --ir-link-color: #008000; + --ir-bracket-color: #0000ff; + --ir-paren-color: #008000; +} +.vditor--dark { + --border-color: #141414; + --second-color: rgba(185, 185, 185, 0.36); + --panel-background-color: #24292e; + --panel-shadow: 0 1px 2px rgba(255, 255, 255, 0.2); + --toolbar-background-color: #1d2125; + --toolbar-icon-color: #b9b9b9; + --toolbar-icon-hover-color: #fff; + --textarea-background-color: #2f363d; + --textarea-text-color: #d1d5da; + --resize-icon-color: var(--border-color); + --resize-background-color: var(--second-color); + --resize-hover-icon-color: var(--toolbar-icon-hover-color); + --resize-hover-background-color: rgba(185, 185, 185, 0.86); + --count-background-color: rgba(66, 133, 244, 0.36); + --heading-border-color: var(--textarea-text-color); + --blockquote-color: var(--toolbar-icon-color); + --ir-heading-color: #9876aa; + --ir-title-color: #808080; + --ir-bi-color: #cc7832; + --ir-link-color: #ffc66d; + --ir-bracket-color: #287bde; + --ir-paren-color: #6a8759; +} +/** + * tool tip. + * + * @author <a href="http://vanessa.b3log.org">Liyuan Li</a> + * @version 0.1.0.0, Jan 25, 2019 + */ +@keyframes tooltip-appear { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +.vditor-tooltipped { + position: relative; + cursor: pointer; +} +.vditor-tooltipped::after { + position: absolute; + z-index: 1000000; + display: none; + padding: 5px 8px; + font-size: 11px; + font-weight: normal; + -webkit-font-smoothing: subpixel-antialiased; + color: #fff; + text-align: center; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-wrap: break-word; + white-space: pre; + pointer-events: none; + content: attr(aria-label); + background: #3b3e43; + border-radius: 3px; + line-height: 16px; + opacity: 0; +} +.vditor-tooltipped::before { + position: absolute; + z-index: 1000001; + display: none; + width: 0; + height: 0; + color: #3b3e43; + pointer-events: none; + content: ""; + border: 5px solid transparent; + opacity: 0; +} +.vditor-tooltipped--hover::before, +.vditor-tooltipped--hover::after, +.vditor-tooltipped:hover::before, +.vditor-tooltipped:hover::after, +.vditor-tooltipped:active::before, +.vditor-tooltipped:active::after, +.vditor-tooltipped:focus::before, +.vditor-tooltipped:focus::after { + display: inline-block; + text-decoration: none; + animation-name: tooltip-appear; + animation-duration: 0.15s; + animation-fill-mode: forwards; + animation-timing-function: ease-in; +} +.vditor-tooltipped__s::after, +.vditor-tooltipped__se::after, +.vditor-tooltipped__sw::after { + top: 100%; + right: 50%; + margin-top: 5px; +} +.vditor-tooltipped__s::before, +.vditor-tooltipped__se::before, +.vditor-tooltipped__sw::before { + top: auto; + right: 50%; + bottom: -5px; + margin-right: -5px; + border-bottom-color: #3b3e43; +} +.vditor-tooltipped__se::after { + right: auto; + left: 50%; + margin-left: -15px; +} +.vditor-tooltipped__sw::after { + margin-right: -15px; +} +.vditor-tooltipped__n::after, +.vditor-tooltipped__ne::after, +.vditor-tooltipped__nw::after { + right: 50%; + bottom: 100%; + margin-bottom: 5px; +} +.vditor-tooltipped__n::before, +.vditor-tooltipped__ne::before, +.vditor-tooltipped__nw::before { + top: -5px; + right: 50%; + bottom: auto; + margin-right: -5px; + border-top-color: #3b3e43; +} +.vditor-tooltipped__ne::after { + right: auto; + left: 50%; + margin-left: -15px; +} +.vditor-tooltipped__nw::after { + margin-right: -15px; +} +.vditor-tooltipped__s::after, +.vditor-tooltipped__n::after { + transform: translateX(50%); +} +.vditor-tooltipped__w::after { + right: 100%; + bottom: 50%; + margin-right: 5px; + transform: translateY(50%); +} +.vditor-tooltipped__w::before { + top: 50%; + bottom: 50%; + left: -5px; + margin-top: -5px; + border-left-color: #3b3e43; +} +.vditor-tooltipped__e::after { + bottom: 50%; + left: 100%; + margin-left: 5px; + transform: translateY(50%); +} +.vditor-tooltipped__e::before { + top: 50%; + right: -5px; + bottom: 50%; + margin-top: -5px; + border-right-color: #3b3e43; +} +@media screen and (max-width: 520px) { + .vditor-tooltipped:before, + .vditor-tooltipped:after { + content: none; + } +} +/** + * panel. + * + * @author <a href="http://vanessa.b3log.org">Liyuan Li</a> + * @version 1.0.0.0, Jan 22, 2020 + */ +@keyframes scale-in { + 0% { + opacity: 0; + transform: scale(0.5); + } + 100% { + opacity: 1; + transform: scale(1); + } +} +.vditor-panel { + background-color: var(--panel-background-color); + position: absolute; + box-shadow: var(--panel-shadow); + border-radius: 3px; + padding: 5px; + z-index: 3; + font-size: 14px; + display: none; + -webkit-user-select: none; + -moz-user-select: none; + user-select: none; + max-width: 320px; + min-width: 80px; + animation-duration: 0.15s; + animation-name: scale-in; + animation-timing-function: cubic-bezier(0.2, 0, 0.13, 1.5); + color: var(--toolbar-icon-color); +} +.vditor-panel--none { + padding: 0; + animation: none; + min-width: auto; + max-width: none; + white-space: nowrap; + opacity: 0.86; +} +.vditor-panel--arrow:before { + position: absolute; + width: 0; + height: 0; + pointer-events: none; + content: " "; + border: 7px solid transparent; + top: -14px; + left: 5px; + border-bottom-color: var(--panel-background-color); +} +.vditor-panel--left { + right: 0; +} +.vditor-panel--left.vditor-panel--arrow:before { + right: 5px; + left: auto; +} +.vditor-input { + border: 0; + padding: 3px 5px; + background-color: var(--panel-background-color); + font-size: 12px; + color: var(--textarea-text-color); +} +.vditor-input:focus { + background-color: var(--toolbar-background-color); + outline: none; +} +.vditor-icon { + color: var(--toolbar-icon-color); + cursor: pointer; + float: left; + padding: 4px 5px; + height: 21px; + width: 23px; + background-color: transparent; + border: 0; + box-sizing: border-box; +} +.vditor-icon:hover, +.vditor-icon--current { + color: var(--toolbar-icon-hover-color); + background-color: transparent; +} +.vditor-icon:focus { + outline: none; +} +.vditor-icon svg { + height: 13px !important; + width: 13px !important; + float: left; + fill: currentColor; + pointer-events: none; +} +.vditor-toolbar { + background-color: var(--toolbar-background-color); + border-bottom: 1px solid var(--border-color); + padding: 0 5px; + line-height: 1; +} +.vditor-toolbar--pin { + position: sticky; + top: 0; + z-index: 1; +} +.vditor-toolbar--hide { + transition: all 0.15s ease-in-out; + height: 5px; + overflow: hidden; +} +.vditor-toolbar--hide:hover { + background-color: var(--toolbar-background-color); + height: auto; + overflow: visible; +} +.vditor-toolbar__item { + float: left; + position: relative; +} +.vditor-toolbar__item .vditor-tooltipped { + color: var(--toolbar-icon-color); + border: 0; + padding: 10px 5px; + background-color: transparent; + height: var(--toolbar-height); + width: 25px; + box-sizing: border-box; + font-size: 0; +} +.vditor-toolbar__item .vditor-tooltipped:focus { + outline: none; +} +.vditor-toolbar__item .vditor-tooltipped:focus { + cursor: pointer; + color: var(--toolbar-icon-hover-color); +} +.vditor-toolbar__item svg { + fill: currentColor; + display: inline-block; + stroke-width: 0; + stroke: currentColor; + width: 15px; + height: 15px; +} +.vditor-toolbar__item input { + position: absolute; + width: 25px; + height: var(--toolbar-height); + top: 0; + left: 0; + cursor: pointer; + opacity: 0.001; + overflow: hidden; +} +.vditor-toolbar__divider { + float: left; + height: calc(var(--toolbar-height) - (var(--toolbar-divider-margin-top) * 2)); + border-left: 1px solid var(--second-color); + margin: var(--toolbar-divider-margin-top) 8px; +} +.vditor-toolbar__br { + width: 100%; + padding: 0 !important; + height: 0 !important; +} +.vditor-menu--current { + color: var(--toolbar-icon-hover-color) !important; +} +.vditor-menu--disabled { + color: var(--second-color) !important; + cursor: not-allowed !important; +} +.vditor-emojis { + display: inline-block; + overflow: auto; +} +.vditor-emojis::-webkit-scrollbar { + display: none; +} +.vditor-emojis__tip { + flex: 1; + min-width: 1px; + width: 200px; + margin-right: 10px; + color: var(--toolbar-icon-color); + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; +} +.vditor-emojis__tail { + margin-top: 5px; + font-size: 12px; + color: var(--toolbar-icon-color); + display: flex; +} +.vditor-emojis__tail a { + text-decoration: none; + color: var(--toolbar-icon-color); +} +.vditor-emojis__tail a:hover { + color: var(--toolbar-icon-hover-color); +} +.vditor-emojis button { + cursor: pointer; + border-radius: 3px; + float: left; + height: 30px; + width: 30px; + text-align: center; + line-height: 26px; + padding: 3px; + box-sizing: border-box; + font-size: 16px; + transition: all 0.15s ease-in-out; + border: 0; + margin: 0; + background-color: transparent; + overflow: hidden; +} +.vditor-emojis button:focus { + outline: none; +} +.vditor-emojis button:hover .vditor-emojis__icon { + display: inline-block; + transform: scale(1.2); +} +.vditor-emojis img { + height: 20px; + width: 20px; + float: left; + margin: 3px 0 0 3px; +} +@media screen and (max-width: 520px) { + .vditor-toolbar__item { + padding: 0 12px; + } + .vditor-panel--left.vditor-panel--arrow:before { + right: 17px; + } +} +@media (hover: hover) and (pointer: fine) { + .vditor-toolbar__item .vditor-tooltipped:hover { + color: var(--toolbar-icon-hover-color); + } +} +@keyframes slideInDown { + from { + transform: translate3d(0, -100%, 0); + visibility: visible; + } + to { + transform: translate3d(0, 0, 0); + } +} +.vditor { + display: flex; + flex-direction: column; + border: 1px solid var(--border-color); + border-radius: 3px; + box-sizing: border-box; + font-family: "Helvetica Neue", "Luxi Sans", "DejaVu Sans", "Hiragino Sans GB", "Microsoft Yahei", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", "Segoe UI Symbol", "Android Emoji", "EmojiSymbols"; +} +.vditor--fullscreen { + position: fixed; + top: 0; + width: 100% !important; + left: 0; + height: 100vh !important; + z-index: 90; + border-radius: 0; +} +.vditor-content { + display: flex; + min-height: 60px; + flex: 1; + min-width: 1px; + position: relative; +} +.vditor-preview { + flex: 1; + min-width: 1px; + overflow: auto; + margin-left: -1px; + border-left: 1px solid var(--border-color); + box-sizing: border-box; + border-radius: 0 0 3px 0; + background-color: var(--textarea-background-color); +} +.vditor-preview::-webkit-scrollbar { + display: none; +} +.vditor-preview__action { + text-align: center; + padding: 10px; + background-color: var(--toolbar-background-color); +} +.vditor-preview__action button { + background-color: var(--toolbar-background-color); + color: var(--toolbar-icon-color); + line-height: 20px; + border: 0; + margin: 0 10px; + cursor: pointer; + padding: 0 7px; + font-size: 12px; +} +.vditor-preview__action button.vditor-preview__action--current, +.vditor-preview__action button:hover { + color: var(--toolbar-icon-hover-color); + background-color: var(--toolbar-background-color); +} +.vditor-preview__action button:focus { + outline: none; +} +.vditor-preview__action button svg { + fill: currentColor; + height: 15px; + width: 15px; + vertical-align: middle; +} +.vditor-preview > .vditor-reset { + padding: 10px; + margin: 0 auto; +} +.vditor-preview img:not(.emoji) { + cursor: pointer; +} +.vditor-devtools { + display: none; + background-color: var(--textarea-background-color); + overflow: auto; + flex: 1; + min-width: 1px; + box-shadow: inset 1px 0 var(--border-color); + box-sizing: border-box; + border-radius: 0 0 3px 0; + padding: 10px; +} +.vditor-counter { + padding: 3px; + color: var(--toolbar-icon-color); + background-color: var(--count-background-color); + border-radius: 3px; + font-size: 12px; + -webkit-user-select: none; + -moz-user-select: none; + user-select: none; + float: right; + margin: 8px 3px 0 0; +} +.vditor-counter--error { + color: #d23f31; + background-color: rgba(210, 63, 49, 0.1); +} +.vditor-resize { + padding: 3px 0; + cursor: row-resize; + -webkit-user-select: none; + -moz-user-select: none; + user-select: none; + position: absolute; + width: 100%; +} +.vditor-resize--top { + top: -3px; +} +.vditor-resize--bottom { + bottom: -3px; +} +.vditor-resize > div { + height: 3px; + background-color: var(--resize-background-color); + transition: all 0.15s ease-in-out; +} +.vditor-resize:hover > div, +.vditor-resize--selected > div { + background-color: var(--resize-hover-background-color); +} +.vditor-resize:hover svg, +.vditor-resize--selected svg { + color: var(--resize-hover-icon-color); +} +.vditor-resize svg { + fill: currentColor; + stroke-width: 0; + stroke: currentColor; + width: 13px; + height: 3px; + display: block; + margin: 0 auto; + color: var(--resize-icon-color); +} +.vditor-upload { + position: absolute; + height: 3px; + left: 0; + top: -2px; + transition: all 0.15s ease-in-out; + background-color: #4285f4; +} +.vditor-tip { + position: absolute; + font-size: 12px; + top: 10px; + animation-duration: 0.15s; + animation-fill-mode: both; + left: 50%; + z-index: 5; +} +.vditor-tip--show { + display: block; + animation-name: slideInDown; +} +.vditor-tip__content { + text-align: left; + display: inline-block; + line-height: 16px; + padding: 3px 10px; + border-radius: 3px; + background: var(--toolbar-background-color); + position: relative; + margin-left: -50%; + color: var(--toolbar-icon-color); + max-width: 100%; + box-shadow: var(--panel-shadow); +} +.vditor-tip__content ul { + margin: 2px 0; + padding: 0 0 0 18px; +} +.vditor-tip__content a { + color: #4285f4; +} +.vditor-tip__close { + position: absolute; + color: var(--toolbar-icon-color); + top: -7px; + right: -15px; + font-weight: bold; + cursor: pointer; +} +.vditor-tip__close:hover { + color: var(--toolbar-icon-hover-color); +} +.vditor-img { + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + display: flex; + flex-direction: column; + z-index: 100; +} +.vditor-img__bar { + border-bottom: 1px solid var(--border-color); + background-color: var(--toolbar-background-color); + text-align: center; + height: 36px; + box-sizing: border-box; + display: flex; + align-items: center; + justify-content: center; +} +.vditor-img__btn { + display: flex; + align-items: center; + cursor: pointer; + margin-left: 24px; + -webkit-user-select: none; + -moz-user-select: none; + user-select: none; + color: var(--toolbar-icon-color); +} +.vditor-img__btn:hover { + color: var(--toolbar-icon-hover-color); +} +.vditor-img__btn svg { + height: 14px; + width: 14px; + margin-right: 8px; + fill: currentColor; +} +.vditor-img__img { + flex: 1; + background-color: var(--textarea-background-color); + overflow: auto; + cursor: zoom-out; +} +.vditor-img__img img { + max-width: none; +} +.vditor-hint { + background-color: var(--panel-background-color); + position: absolute; + box-shadow: var(--panel-shadow); + border-radius: 3px; + padding: 5px 0; + z-index: 4; + line-height: 20px; + list-style: none; + font-size: 12px; + margin: 0; + max-width: 250px; + min-width: 80px; + display: none; +} +.vditor-hint .vditor-hint { + margin-top: -31px; + left: 100%; + right: auto; +} +.vditor-hint .vditor-hint.vditor-panel--left { + right: 100%; + left: auto; +} +.vditor-hint button { + color: var(--toolbar-icon-color); + display: block; + padding: 3px 10px; + border: 0; + border-radius: 0; + line-height: 20px; + width: 100%; + box-sizing: border-box; + text-align: left; + margin: 0; + background-color: transparent; + cursor: pointer; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; +} +.vditor-hint button:focus { + outline: none; +} +.vditor-hint--current, +.vditor-hint button:not(.vditor-menu--disabled):hover { + background-color: var(--toolbar-background-color) !important; + color: var(--toolbar-icon-hover-color) !important; +} +.vditor-hint__emoji { + font-size: 16px; + float: left; + margin-right: 3px; +} +.vditor-hint img { + height: 20px; + width: 20px; + float: left; + margin-right: 3px; +} +.vditor-reset { + color: #24292e; + font-variant-ligatures: no-common-ligatures; + font-family: "Helvetica Neue", "Luxi Sans", "DejaVu Sans", "Hiragino Sans GB", "Microsoft Yahei", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", "Segoe UI Symbol", "Android Emoji", "EmojiSymbols"; + word-wrap: break-word; + overflow: auto; + line-height: 1.5; + font-size: 16px; + word-break: break-word; +} +.vditor-reset--anchor { + padding-left: 20px; +} +.vditor-reset--error { + color: #d23f31; + font-size: 12px; + display: block; + line-height: 16px; +} +.vditor-reset ul ul ul { + list-style-type: square; +} +.vditor-reset ul ul { + list-style-type: circle; +} +.vditor-reset ul { + list-style-type: disc; +} +.vditor-reset ul, +.vditor-reset ol { + padding-left: 2em; + margin-top: 0; + margin-bottom: 16px; +} +.vditor-reset li + li { + margin-top: 0.25em; +} +.vditor-reset li p { + margin-top: 16px; +} +.vditor-reset audio { + max-width: 100%; +} +.vditor-reset audio:focus { + outline: none; +} +.vditor-reset video { + max-height: 90vh; + max-width: 100%; +} +.vditor-reset img { + max-width: 100%; +} +.vditor-reset img.emoji { + cursor: auto; + max-width: 20px; + vertical-align: sub; +} +.vditor-reset h1, +.vditor-reset h2, +.vditor-reset h3, +.vditor-reset h4, +.vditor-reset h5, +.vditor-reset h6 { + margin-top: 24px; + margin-bottom: 16px; + font-weight: 600; + line-height: 1.25; +} +.vditor-reset h1:hover .vditor-anchor svg, +.vditor-reset h2:hover .vditor-anchor svg, +.vditor-reset h3:hover .vditor-anchor svg, +.vditor-reset h4:hover .vditor-anchor svg, +.vditor-reset h5:hover .vditor-anchor svg, +.vditor-reset h6:hover .vditor-anchor svg { + visibility: visible; +} +.vditor-reset h1 { + font-size: 1.75em; +} +.vditor-reset h2 { + font-size: 1.55em; +} +.vditor-reset h3 { + font-size: 1.38em; +} +.vditor-reset h4 { + font-size: 1.25em; +} +.vditor-reset h5 { + font-size: 1.13em; +} +.vditor-reset h6 { + font-size: 1em; +} +.vditor-reset hr { + height: 2px; + padding: 0; + margin: 24px 0; + background-color: #eaecef; + border: 0; +} +.vditor-reset p { + margin-top: 0; + margin-bottom: 16px; +} +.vditor-reset blockquote { + padding: 0 1em; + color: #6a737d; + border-left: 0.25em solid #eaecef; + margin: 0 0 16px 0; +} +.vditor-reset blockquote > :first-child { + margin-top: 0; +} +.vditor-reset blockquote > :last-child { + margin-bottom: 0; +} +.vditor-reset ins > iframe { + border: 0; +} +.vditor-reset iframe { + border: 1px solid #d1d5da; + max-width: 100%; + box-sizing: border-box; +} +.vditor-reset iframe.iframe__video { + min-width: 80%; + min-height: 36vh; +} +.vditor-reset table { + border-collapse: collapse; + empty-cells: show; + margin-bottom: 16px; + overflow: auto; + border-spacing: 0; + display: block; + word-break: keep-all; + width: 100%; +} +.vditor-reset table tr { + background-color: #fafbfc; + border-top: 1px solid #c6cbd1; +} +.vditor-reset table td, +.vditor-reset table th { + padding: 6px 13px; + border: 1px solid #dfe2e5; + word-break: normal; + white-space: nowrap; +} +.vditor-reset table td:first-child::after, +.vditor-reset table th:first-child::after { + content: ""; + display: inline-block; + vertical-align: top; + min-height: 24px; +} +.vditor-reset table th { + font-weight: 600; +} +.vditor-reset table tbody tr:nth-child(2n) { + background-color: #fff; +} +.vditor-reset code:not(.hljs):not(.highlight-chroma) { + padding: 0.2em 0.4em; + margin: 0; + font-size: 85%; + border-radius: 3px; + font-family: mononoki, Consolas, "Liberation Mono", Menlo, Courier, monospace, "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", "Segoe UI Symbol", "Android Emoji", "EmojiSymbols"; + word-break: break-word; + background-size: 20px 20px; + white-space: pre-wrap; +} +.vditor-reset pre { + margin: 1em 0; +} +.vditor-reset pre > code { + margin: 0; + font-size: 85%; + padding: 0.5em; + border-radius: 5px; + display: block; + overflow: auto; + white-space: pre; + font-family: mononoki, Consolas, "Liberation Mono", Menlo, Courier, monospace, "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", "Segoe UI Symbol", "Android Emoji", "EmojiSymbols"; + background-size: 20px 20px; + background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8AgMAAABHkjHhAAAACVBMVEWAgIBaWlo+Pj7rTFvWAAAAA3RSTlMHCAw+VhR4AAAA+klEQVQoz4WSMW7EQAhFPxKWNh2FCx+HkaZI6RRb5DYbyVfIJXLKDCFoMbaTKSw/8ZnPAPjaH2xgZcUNUDADD7D9LtDBCLZ45fbkvo/30K8yeI64pPwl6znd/3n/Oe93P3ho9qeh72btTFzqkz0rsJle8Zr81OLEwZ1dv/713uWqvu2pl+k0fy7MWtj9r/tN5q/02z89qa/L4Dc2LvM93kezPfXlME/O86EbY/V9GB9ePX8G1/6W+/9h1dq/HGfTfzT3j/xNo7522Bfnqe5jO/fvhVthlfk434v3iO9zG/UOphyPeinPl1J8Gtaa7xPTa/Dk+RIs4deMvwGvcGsmsCvJ0AAAAABJRU5ErkJggg==); + word-break: initial; + word-wrap: normal; +} +.vditor-reset pre:hover div.vditor-copy { + display: block; +} +.vditor-reset .language-math, +.vditor-reset .language-echarts, +.vditor-reset .language-mindmap, +.vditor-reset .language-plantuml, +.vditor-reset .language-mermaid, +.vditor-reset .language-smiles, +.vditor-reset .language-markmap, +.vditor-reset .language-abc, +.vditor-reset .language-flowchart, +.vditor-reset .language-graphviz { + margin-bottom: 16px; +} +.vditor-reset .language-math mjx-container:focus { + outline: none; + cursor: context-menu; +} +.vditor-reset .language-math .katex-display > .katex > .katex-html > .tag { + display: inline-block; + font-size: 1.21rem; + right: 2px; +} +.vditor-reset .language-echarts, +.vditor-reset .language-mindmap { + overflow: hidden; + height: 420px; +} +.vditor-reset .language-mermaid, +.vditor-reset .language-markmap, +.vditor-reset .language-flowchart, +.vditor-reset .language-graphviz { + text-align: center; +} +.vditor-reset .language-graphviz parsererror { + overflow: auto; +} +.vditor-reset kbd { + display: inline-block; + padding: 3px 5px; + font: 11px Consolas, "Liberation Mono", Menlo, Courier, monospace; + line-height: 10px; + color: #24292e; + vertical-align: middle; + background-color: #fafbfc; + border: solid 1px #d1d5da; + border-radius: 3px; + box-shadow: inset 0 -1px 0 #d1d5da; +} +.vditor-reset summary { + cursor: pointer; +} +.vditor-reset summary:focus { + outline: none; +} +.vditor-reset svg { + height: auto; + width: auto; + stroke-width: initial; +} +.vditor-reset p:last-child, +.vditor-reset blockquote:last-child, +.vditor-reset pre:last-child, +.vditor-reset ul:last-child, +.vditor-reset ol:last-child, +.vditor-reset hr:last-child { + margin-bottom: 0; +} +.vditor-comment { + border-bottom: 2px solid #f8e6ab; +} +.vditor-comment--focus, +.vditor-comment--hover { + background-color: #faf1d1; + border-bottom: 2px solid #ffc60a; +} +.vditor-comment--focus .vditor-comment, +.vditor-comment--hover .vditor-comment { + border-bottom: 2px solid #ffc60a; +} +.vditor-task { + list-style: none !important; + word-break: break-all; +} +.vditor-task input { + margin: 0 0.2em 0.25em -1.6em; + font-size: 12px; + vertical-align: middle; +} +.vditor-copy { + position: relative; + display: none; + z-index: 1; +} +.vditor-copy textarea { + position: absolute; + left: -100000px; + height: 10px; +} +.vditor-copy span { + cursor: pointer; + position: absolute; + right: 15px; + top: 0.5em; +} +.vditor-copy svg { + color: #586069; + height: 14px; + width: 14px !important; + display: block; + fill: currentColor; +} +.vditor-linenumber { + padding-left: 4em !important; + position: relative; +} +.vditor-linenumber__rows { + position: absolute; + pointer-events: none; + top: 1em; + left: 0; + width: 3em; + /* works for line-numbers below 1000 lines */ + -webkit-user-select: none; + -moz-user-select: none; + user-select: none; + counter-reset: linenumber; +} +.vditor-linenumber__rows > span { + pointer-events: none; + display: block; +} +.vditor-linenumber__rows > span::before { + counter-increment: linenumber; + content: counter(linenumber); + color: rgba(158, 150, 150, 0.38); + display: block; + padding-right: 1em; + text-align: right; +} +.vditor-speech { + position: absolute; + display: none; + background-color: #f6f8fa; + border: 1px solid #d1d5da; + border-radius: 3px; + padding: 3px; + cursor: pointer; + color: #586069; +} +.vditor-speech:hover, +.vditor-speech--current { + color: #4285f4; +} +.vditor-speech svg { + height: 14px; + width: 14px; + fill: currentColor; + display: block; + stroke-width: 0; + stroke: currentColor; +} +.vditor-anchor { + margin-left: 5px; +} +.vditor-anchor--left { + float: left; + padding-right: 4px; + margin-left: -20px; +} +.vditor-anchor svg { + visibility: hidden; +} +.vditor-anchor:hover svg { + visibility: visible; +} +.vditor-anchor:focus { + outline: none; +} +.vditor-linkcard { + margin: 31px auto 16px; + transition: all 0.15s ease-in-out; + cursor: pointer; + max-width: 768px; + padding: 0 10px; +} +.vditor-linkcard a { + border-radius: 3px; + background-color: #f6f8fa; + overflow: hidden; + max-height: 250px; + display: flex; + text-decoration: none; + flex-wrap: wrap-reverse; + box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2); +} +.vditor-linkcard a:hover { + box-shadow: 0 0 3px rgba(0, 0, 0, 0.13), 0 3px 6px rgba(0, 0, 0, 0.26); + text-decoration: none; +} +.vditor-linkcard a:visited .vditor-linkcard__abstract { + color: rgba(88, 96, 105, 0.36); +} +.vditor-linkcard__info { + padding: 10px; + min-width: 200px; + box-sizing: border-box; + flex: 1; +} +.vditor-linkcard__title { + font-size: 14px; + font-weight: 400; + color: #24292e; + display: flex; + align-items: center; +} +.vditor-linkcard__title img { + cursor: pointer; + height: 20px; + width: 20px; + border-radius: 3px; + flex-shrink: 0; + margin-right: 5px; +} +.vditor-linkcard__abstract { + word-wrap: break-word; + word-break: break-all; + -webkit-line-clamp: 2; + overflow: hidden; + text-overflow: ellipsis; + -webkit-box-orient: vertical; + display: -webkit-box; + font-size: 13px; + color: #586069; + margin: 5px 0; +} +.vditor-linkcard__site { + font-size: 12px; + color: #4285f4; +} +.vditor-linkcard__image { + background-size: cover; + background-repeat: no-repeat; + background-position: center center; + max-width: 250px; + min-width: 126px; + cursor: pointer; + background-color: rgba(88, 96, 105, 0.36); +} +.vditor-footnotes__goto-ref { + text-decoration: none; +} +.vditor-toc { + margin-bottom: 16px; + -webkit-user-select: text; + -moz-user-select: text; + user-select: text; + color: #4285f4; +} +.vditor-toc .vditor-outline__action { + display: none; +} +.vditor-toc ul { + list-style: none !important; + padding-left: 1em; +} +.vditor-toc > ul { + padding-left: 0; +} +.vditor-toc span { + cursor: pointer; +} +.vditor-toc li > span > svg { + width: 0; + height: 0; +} +.vditor-outline { + width: 250px; + border-right: 1px solid var(--border-color); + background-color: var(--panel-background-color); + display: none; + overflow: auto; +} +.vditor-outline--right { + border-right: 0; + border-left: 1px solid var(--border-color); +} +.vditor-outline::-webkit-scrollbar { + display: none; +} +.vditor-outline ul { + list-style: none !important; + padding-left: 1em; + margin: 0; +} +.vditor-outline__content > ul { + padding-left: 0; +} +.vditor-outline li > span { + display: flex; + align-items: center; + padding: 5px 10px; + cursor: pointer; + color: var(--textarea-text-color); +} +.vditor-outline li > span > svg { + height: 10px; + width: 10px; + flex-shrink: 0; +} +.vditor-outline li > span:hover { + color: var(--toolbar-icon-hover-color); +} +.vditor-outline li > span > span { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} +.vditor-outline__title { + border-bottom: 1px dashed var(--border-color); + padding: 5px 10px; + color: var(--toolbar-icon-color); + font-size: 12px; +} +.vditor-outline__action { + transition: all 0.15s ease-in-out; + fill: currentColor; + margin-right: 5px; + flex-shrink: 0; +} +.vditor-outline__action--close { + transform: rotate(-90deg); +} +.vditor-wysiwyg { + box-sizing: border-box; + flex: 1; + position: relative; + width: 100%; + min-width: 1px; +} +.vditor-wysiwyg pre.vditor-reset { + background-color: var(--panel-background-color); + margin: 0; + white-space: pre-wrap; + height: 100%; + box-sizing: border-box; +} +.vditor-wysiwyg pre.vditor-reset[contenteditable="false"] { + opacity: 0.3; + cursor: not-allowed; +} +.vditor-wysiwyg pre.vditor-reset:empty::before { + content: attr(placeholder); + color: var(--second-color); +} +.vditor-wysiwyg pre.vditor-reset:focus { + outline: none; + background-color: var(--textarea-background-color); +} +.vditor-wysiwyg pre.vditor-reset:after { + content: ""; + height: var(--editor-bottom); + display: block; +} +.vditor-wysiwyg blockquote:empty::before, +.vditor-wysiwyg pre > code:empty::before, +.vditor-wysiwyg p:empty::before, +.vditor-wysiwyg h1:empty::after, +.vditor-wysiwyg h2:empty::after, +.vditor-wysiwyg h3:empty::after, +.vditor-wysiwyg h4:empty::after, +.vditor-wysiwyg h5:empty::after, +.vditor-wysiwyg h6:empty::after { + content: ' '; +} +.vditor-wysiwyg code[data-marker="`"] { + padding-left: 0 !important; + padding-right: 0 !important; +} +.vditor-wysiwyg__block pre:first-child { + margin-bottom: -1em; +} +.vditor-wysiwyg__block pre:first-child code { + color: var(--textarea-text-color); + height: auto; + text-align: left; +} +.vditor-wysiwyg__block pre:last-child { + margin-bottom: 1em; +} +.vditor-wysiwyg__preview { + cursor: pointer; + white-space: initial; + min-height: 27px; +} +.vditor-wysiwyg > .vditor-reset > h1:before, +.vditor-wysiwyg > .vditor-reset > h2:before, +.vditor-wysiwyg > .vditor-reset > h3:before, +.vditor-wysiwyg > .vditor-reset > h4:before, +.vditor-wysiwyg > .vditor-reset > h5:before, +.vditor-wysiwyg > .vditor-reset > h6:before, +.vditor-wysiwyg div.vditor-wysiwyg__block:before, +.vditor-wysiwyg div[data-type="link-ref-defs-block"]:before, +.vditor-wysiwyg div[data-type="footnotes-block"]:before, +.vditor-wysiwyg .vditor-toc:before { + float: left; + padding-right: 4px; + margin-left: -29px; + content: 'H1'; + font-size: 0.85rem; + font-weight: normal; + color: var(--second-color); +} +.vditor-wysiwyg > .vditor-reset > h2:before { + content: 'H2'; +} +.vditor-wysiwyg > .vditor-reset > h3:before { + content: 'H3'; +} +.vditor-wysiwyg > .vditor-reset > h4:before { + content: 'H4'; +} +.vditor-wysiwyg > .vditor-reset > h5:before { + content: 'H5'; +} +.vditor-wysiwyg > .vditor-reset > h6:before { + content: 'H6'; +} +.vditor-wysiwyg div[data-type="link-ref-defs-block"]:before { + content: '"A"'; +} +.vditor-wysiwyg div[data-type="footnotes-block"]:before { + content: '^F'; +} +.vditor-wysiwyg div.vditor-wysiwyg__block:before { + content: "</>"; +} +.vditor-wysiwyg div.vditor-wysiwyg__block[data-type="yaml-front-matter"]:before { + content: "F"; +} +.vditor-wysiwyg div.vditor-wysiwyg__block[data-type="math-block"]:before { + content: "$$"; +} +.vditor-wysiwyg .vditor-toc:before { + content: "ToC"; +} +.vditor-wysiwyg hr { + display: inline-block; + margin: 12px 0; + width: 100%; +} +.vditor-wysiwyg details { + white-space: initial; +} +.vditor-wysiwyg a { + cursor: pointer; +} +.vditor-wysiwyg span[data-type="backslash"] > span { + display: none; + color: var(--second-color); +} +.vditor-wysiwyg span[data-type="link-ref"], +.vditor-wysiwyg sup[data-type="footnotes-ref"] { + color: #4285f4; +} +.vditor-wysiwyg span[data-type="toc-h"] { + color: #4285f4; + text-decoration: underline; +} +.vditor-wysiwyg div[data-type="footnotes-block"] { + border-top: 2px solid var(--heading-border-color); + padding-top: 24px; + margin-top: 24px; +} +.vditor-wysiwyg div[data-type="link-ref-defs-block"] { + color: var(--blockquote-color); +} +@media screen and (max-width: 520px) { + .vditor-wysiwyg h1:before, + .vditor-wysiwyg h2:before, + .vditor-wysiwyg h3:before, + .vditor-wysiwyg h4:before, + .vditor-wysiwyg h5:before, + .vditor-wysiwyg h6:before, + .vditor-wysiwyg div.vditor-wysiwyg__block:before, + .vditor-wysiwyg div[data-type="link-ref-defs-block"]:before, + .vditor-wysiwyg div[data-type="footnotes-block"]:before, + .vditor-wysiwyg .vditor-toc:before { + content: none; + } +} +.vditor-ir { + box-sizing: border-box; + flex: 1; + min-width: 1px; + position: relative; + width: 100%; +} +.vditor-ir__node[data-type="code-block"]:before, +.vditor-ir__node[data-type="code-block"]:after, +.vditor-ir__node[data-type="yaml-front-matter"]:before, +.vditor-ir__node[data-type="yaml-front-matter"]:after, +.vditor-ir__node[data-type="math-block"]:before, +.vditor-ir__node[data-type="math-block"]:after { + content: ' '; + color: var(--second-color); +} +.vditor-ir__node:not(.vditor-ir__node--expand) .vditor-ir__marker { + padding: 0 !important; +} +.vditor-ir__node:not(.vditor-ir__node--expand)[data-type="a"] { + cursor: pointer; +} +.vditor-ir__node[data-type="link-ref"], +.vditor-ir__node[data-type="footnotes-ref"] { + color: #4285f4; +} +.vditor-ir__node[data-type="html-block"] { + margin-bottom: 1em; +} +.vditor-ir__node .vditor-ir__marker { + width: 0; + overflow: hidden; + display: inline-block; + height: 0; + transition: all 0.15s ease-in-out; +} +.vditor-ir__node--hidden .vditor-ir__marker { + visibility: hidden; +} +.vditor-ir__node--expand .vditor-ir__marker { + color: var(--second-color); + display: inline; + height: auto; + width: auto; +} +.vditor-ir__node--expand .vditor-ir__marker--hide { + display: none; +} +.vditor-ir__node--expand .vditor-ir__marker--heading { + color: var(--ir-heading-color); +} +.vditor-ir__node--expand .vditor-ir__marker--bi { + color: var(--ir-bi-color); +} +.vditor-ir__node--expand .vditor-ir__marker--link { + color: var(--ir-link-color); +} +.vditor-ir__node--expand .vditor-ir__marker--title { + color: var(--ir-title-color); +} +.vditor-ir__node--expand .vditor-ir__marker--bracket { + color: var(--ir-bracket-color); + text-decoration: underline; +} +.vditor-ir__node--expand .vditor-ir__marker--paren { + color: var(--ir-paren-color); +} +.vditor-ir__node--expand .vditor-ir__marker--info { + color: var(--ir-heading-color); +} +.vditor-ir__node--expand .vditor-ir__marker--pre code { + color: var(--textarea-text-color); + height: auto; + text-align: left; +} +.vditor-ir__node--expand[data-type="code-block"]:before, +.vditor-ir__node--expand[data-type="code-block"]:after { + content: '```'; +} +.vditor-ir__node--expand[data-type="yaml-front-matter"]:before, +.vditor-ir__node--expand[data-type="yaml-front-matter"]:after { + content: '---'; +} +.vditor-ir__node--expand[data-type="math-block"]:before, +.vditor-ir__node--expand[data-type="math-block"]:after { + content: '$$'; +} +.vditor-ir__node span[data-type="code-block-open-marker"], +.vditor-ir__node span[data-type="code-block-close-marker"], +.vditor-ir__node span[data-type="yaml-front-matter-open-marker"], +.vditor-ir__node span[data-type="yaml-front-matter-close-marker"], +.vditor-ir__node span[data-type="math-block-open-marker"], +.vditor-ir__node span[data-type="math-block-close-marker"] { + display: none; +} +.vditor-ir__preview { + cursor: pointer; + white-space: initial; + min-height: 27px; +} +.vditor-ir__link { + color: var(--ir-bracket-color); + text-decoration: underline; +} +.vditor-ir pre.vditor-reset { + background-color: var(--panel-background-color); + margin: 0; + white-space: pre-wrap; + height: 100%; + box-sizing: border-box; +} +.vditor-ir pre.vditor-reset[contenteditable="false"] { + opacity: 0.3; + cursor: not-allowed; +} +.vditor-ir pre.vditor-reset:empty::before { + content: attr(placeholder); + color: var(--second-color); +} +.vditor-ir pre.vditor-reset:focus { + outline: none; + background-color: var(--textarea-background-color); +} +.vditor-ir pre.vditor-reset:after { + content: ""; + height: var(--editor-bottom); + display: block; +} +.vditor-ir pre.vditor-reset pre { + margin: 0; +} +.vditor-ir hr { + display: inline-block; + margin: 12px 0; + width: 100%; +} +.vditor-ir blockquote:empty::before, +.vditor-ir pre > code:empty::before, +.vditor-ir p:empty::before, +.vditor-ir h1:empty::after, +.vditor-ir h2:empty::after, +.vditor-ir h3:empty::after, +.vditor-ir h4:empty::after, +.vditor-ir h5:empty::after, +.vditor-ir h6:empty::after { + content: ' '; +} +.vditor-ir .vditor-reset > h1:before, +.vditor-ir .vditor-reset > h2:before, +.vditor-ir .vditor-reset > h3:before, +.vditor-ir .vditor-reset > h4:before, +.vditor-ir .vditor-reset > h5:before, +.vditor-ir .vditor-reset > h6:before, +.vditor-ir div[data-type="link-ref-defs-block"]:before, +.vditor-ir div[data-type="footnotes-block"]:before, +.vditor-ir .vditor-toc:before { + float: left; + padding-right: 4px; + margin-left: -29px; + content: 'H1'; + font-size: 0.85rem; + font-weight: normal; + color: var(--second-color); +} +.vditor-ir .vditor-reset > h2:before { + content: 'H2'; +} +.vditor-ir .vditor-reset > h3:before { + content: 'H3'; +} +.vditor-ir .vditor-reset > h4:before { + content: 'H4'; +} +.vditor-ir .vditor-reset > h5:before { + content: 'H5'; +} +.vditor-ir .vditor-reset > h6:before { + content: 'H6'; +} +.vditor-ir div[data-type="link-ref-defs-block"] { + color: var(--blockquote-color); +} +.vditor-ir div[data-type="link-ref-defs-block"]:before { + content: '"A"'; +} +.vditor-ir div[data-type="footnotes-block"] { + border-top: 2px solid var(--heading-border-color); + padding-top: 24px; + margin-top: 24px; +} +.vditor-ir div[data-type="footnotes-block"]:before { + content: '^F'; +} +.vditor-ir div[data-type="footnotes-block"] > div[data-type="footnotes-def"] > ul, +.vditor-ir div[data-type="footnotes-block"] > div[data-type="footnotes-def"] > ol, +.vditor-ir div[data-type="footnotes-block"] > div[data-type="footnotes-def"] > p, +.vditor-ir div[data-type="footnotes-block"] > div[data-type="footnotes-def"] > blockquote, +.vditor-ir div[data-type="footnotes-block"] > div[data-type="footnotes-def"] > pre, +.vditor-ir div[data-type="footnotes-block"] > div[data-type="footnotes-def"] > table, +.vditor-ir div[data-type="footnotes-block"] > div[data-type="footnotes-def"] > hr { + margin-left: 8px; +} +.vditor-ir .vditor-toc:before { + content: "ToC"; +} +.vditor-ir .vditor-toc span[data-type="toc-h"] { + color: #4285f4; + text-decoration: underline; +} +@media screen and (max-width: 520px) { + .vditor-ir h1:before, + .vditor-ir h2:before, + .vditor-ir h3:before, + .vditor-ir h4:before, + .vditor-ir h5:before, + .vditor-ir h6:before, + .vditor-ir div[data-type="link-ref-defs-block"]:before, + .vditor-ir div[data-type="footnotes-block"]:before, + .vditor-ir .vditor-toc:before { + content: none; + } +} +.vditor-sv { + font-family: "Helvetica Neue", "Luxi Sans", "DejaVu Sans", "Hiragino Sans GB", "Microsoft Yahei", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", "Segoe UI Symbol", "Android Emoji", "EmojiSymbols"; + margin: 0 1px 0 0; + overflow: auto; + width: 100%; + flex: 1; + min-width: 1px; + border: 0; + resize: none; + padding: 10px 9px 10px 10px; + box-sizing: border-box; + background-color: var(--panel-background-color); + outline: 0 none; + font-size: 16px; + line-height: 22px; + color: var(--textarea-text-color); + border-radius: 0 0 3px 3px; + font-variant-ligatures: no-common-ligatures; + white-space: pre-wrap; + word-break: break-word; + word-wrap: break-word; +} +.vditor-sv[contenteditable="false"] { + opacity: 0.3; + cursor: not-allowed; +} +.vditor-sv:empty::before { + content: attr(placeholder); + color: var(--second-color); +} +.vditor-sv:focus { + background-color: var(--textarea-background-color); +} +.vditor-sv:after { + content: ""; + height: var(--editor-bottom); + display: block; +} +.vditor-sv span[data-type="newline"] + span[data-type="text"]:empty { + display: inherit; +} +.vditor-sv .sup { + vertical-align: super; + font-size: smaller; +} +.vditor-sv .strong { + font-weight: bold; +} +.vditor-sv .em { + font-style: italic; +} +.vditor-sv .s { + text-decoration: line-through; +} +.vditor-sv .mark:not(.vditor-sv__marker) { + background-color: yellow; + color: black; +} +.vditor-sv .h1 { + font-size: 1.75em; + line-height: 44px; +} +.vditor-sv .h2 { + font-size: 1.55em; + line-height: 38px; +} +.vditor-sv .h3 { + font-size: 1.38em; + line-height: 27px; +} +.vditor-sv .h4 { + font-size: 1.25em; + line-height: 25px; +} +.vditor-sv .h5 { + font-size: 1.13em; +} +.vditor-sv .h6 { + font-size: 1em; +} +.vditor-sv__marker { + color: var(--second-color); +} +.vditor-sv__marker--heading { + color: var(--ir-heading-color); +} +.vditor-sv__marker--bi { + color: var(--ir-bi-color); +} +.vditor-sv__marker--link { + color: var(--ir-link-color); +} +.vditor-sv__marker--title { + color: var(--ir-title-color); +} +.vditor-sv__marker--bracket { + color: var(--ir-bracket-color); +} +.vditor-sv__marker--paren { + color: var(--ir-paren-color); +} +.vditor-sv__marker--info { + color: var(--ir-heading-color); +} +.vditor-sv__marker--strong { + font-weight: bold; +} + diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/index.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/index.d.ts new file mode 100644 index 0000000..fb401c4 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/index.d.ts @@ -0,0 +1,82 @@ +/// <reference types="./types" /> +import "./assets/less/index.less"; +import VditorMethod from "./method"; +declare class Vditor extends VditorMethod { + readonly version: string; + vditor: IVditor; + private isDestroyed; + /** + * @param id 要挂载 Vditor 的元素或者元素 ID。 + * @param options Vditor 参数 + */ + constructor(id: string | HTMLElement, options?: IOptions); + private showErrorTip; + updateToolbarConfig(options: IToolbarConfig): void; + /** 设置主题 */ + setTheme(theme: "dark" | "classic", contentTheme?: string, codeTheme?: string, contentThemePath?: string): void; + /** 获取 Markdown 内容 */ + getValue(): string; + /** 获取编辑器当前编辑模式 */ + getCurrentMode(): "sv" | "wysiwyg" | "ir"; + /** 聚焦到编辑器 */ + focus(): void; + /** 让编辑器失焦 */ + blur(): void; + /** 禁用编辑器 */ + disabled(): void; + /** 解除编辑器禁用 */ + enable(): void; + /** 返回选中的字符串 */ + getSelection(): string; + /** 设置预览区域内容 */ + renderPreview(value?: string): void; + /** 获取焦点位置 */ + getCursorPosition(): { + left: number; + top: number; + }; + /** 上传是否还在进行中 */ + isUploading(): boolean; + /** 清除缓存 */ + clearCache(): void; + /** 禁用缓存 */ + disabledCache(): void; + /** 启用缓存 */ + enableCache(): void; + /** HTML 转 md */ + html2md(value: string): string; + /** markdown 转 JSON 输出 */ + exportJSON(value: string): string; + /** 获取 HTML */ + getHTML(): string; + /** 消息提示。time 为 0 将一直显示 */ + tip(text: string, time?: number): void; + /** 设置预览模式 */ + setPreviewMode(mode: "both" | "editor"): void; + /** 删除选中内容 */ + deleteValue(): void; + /** 更新选中内容 */ + updateValue(value: string): void; + /** 在焦点处插入内容,并默认进行 Markdown 渲染 */ + insertValue(value: string, render?: boolean): void; + /** 在焦点处插入 Markdown */ + insertMD(md: string): void; + /** 设置编辑器内容 */ + setValue(markdown: string, clearStack?: boolean): void; + /** 空块 */ + insertEmptyBlock(position: InsertPosition): void; + /** 清空 undo & redo 栈 */ + clearStack(): void; + /** 销毁编辑器 */ + destroy(): void; + /** 获取评论 ID */ + getCommentIds(): ICommentsData[]; + /** 高亮评论 */ + hlCommentIds(ids: string[]): void; + /** 取消评论高亮 */ + unHlCommentIds(ids: string[]): void; + /** 删除评论 */ + removeCommentIds(removeIds: string[]): void; + private init; +} +export default Vditor; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/index.js b/src/main/resources/static/articles/vditor@3.11.1/dist/index.js new file mode 100644 index 0000000..cc5d0f6 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/index.js @@ -0,0 +1,15888 @@ +/*! + * Vditor v3.11.1 - A markdown editor written in TypeScript. + * + * MIT License + * + * Copyright (c) 2018-present B3log 开源, b3log.org + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ +(function webpackUniversalModuleDefinition(root, factory) { + if(typeof exports === 'object' && typeof module === 'object') + module.exports = factory(); + else if(typeof define === 'function' && define.amd) + define([], factory); + else if(typeof exports === 'object') + exports["Vditor"] = factory(); + else + root["Vditor"] = factory(); +})(this, function() { +return /******/ (() => { // webpackBootstrap +/******/ var __webpack_modules__ = ({ + +/***/ 173: +/***/ ((module) => { + +/** + * Diff Match and Patch + * Copyright 2018 The diff-match-patch Authors. + * https://github.com/google/diff-match-patch + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @fileoverview Computes the difference between two texts to create a patch. + * Applies the patch onto another text, allowing for errors. + * @author fraser@google.com (Neil Fraser) + */ + +/** + * Class containing the diff, match and patch methods. + * @constructor + */ +var diff_match_patch = function () { + // Defaults. + // Redefine these in your program to override the defaults. + + // Number of seconds to map a diff before giving up (0 for infinity). + this.Diff_Timeout = 1.0; + // Cost of an empty edit operation in terms of edit characters. + this.Diff_EditCost = 4; + // At what point is no match declared (0.0 = perfection, 1.0 = very loose). + this.Match_Threshold = 0.5; + // How far to search for a match (0 = exact location, 1000+ = broad match). + // A match this many characters away from the expected location will add + // 1.0 to the score (0.0 is a perfect match). + this.Match_Distance = 1000; + // When deleting a large block of text (over ~64 characters), how close do + // the contents have to be to match the expected contents. (0.0 = perfection, + // 1.0 = very loose). Note that Match_Threshold controls how closely the + // end points of a delete need to match. + this.Patch_DeleteThreshold = 0.5; + // Chunk size for context length. + this.Patch_Margin = 4; + + // The number of bits in an int. + this.Match_MaxBits = 32; +}; + +// DIFF FUNCTIONS + +/** + * The data structure representing a diff is an array of tuples: + * [[DIFF_DELETE, 'Hello'], [DIFF_INSERT, 'Goodbye'], [DIFF_EQUAL, ' world.']] + * which means: delete 'Hello', add 'Goodbye' and keep ' world.' + */ +var DIFF_DELETE = -1; +var DIFF_INSERT = 1; +var DIFF_EQUAL = 0; + +/** + * Class representing one diff tuple. + * ~Attempts to look like a two-element array (which is what this used to be).~ + * Constructor returns an actual two-element array, to allow destructing @JackuB + * See https://github.com/JackuB/diff-match-patch/issues/14 for details + * @param {number} op Operation, one of: DIFF_DELETE, DIFF_INSERT, DIFF_EQUAL. + * @param {string} text Text to be deleted, inserted, or retained. + * @constructor + */ +diff_match_patch.Diff = function (op, text) { + return [op, text]; +}; + +/** + * Find the differences between two texts. Simplifies the problem by stripping + * any common prefix or suffix off the texts before diffing. + * @param {string} text1 Old string to be diffed. + * @param {string} text2 New string to be diffed. + * @param {boolean=} opt_checklines Optional speedup flag. If present and false, + * then don't run a line-level diff first to identify the changed areas. + * Defaults to true, which does a faster, slightly less optimal diff. + * @param {number=} opt_deadline Optional time when the diff should be complete + * by. Used internally for recursive calls. Users should set DiffTimeout + * instead. + * @return {!Array.<!diff_match_patch.Diff>} Array of diff tuples. + */ +diff_match_patch.prototype.diff_main = function (text1, text2, opt_checklines, opt_deadline) { + // Set a deadline by which time the diff must be complete. + if (typeof opt_deadline == 'undefined') { + if (this.Diff_Timeout <= 0) { + opt_deadline = Number.MAX_VALUE; + } else { + opt_deadline = new Date().getTime() + this.Diff_Timeout * 1000; + } + } + var deadline = opt_deadline; + + // Check for null inputs. + if (text1 == null || text2 == null) { + throw new Error('Null input. (diff_main)'); + } + + // Check for equality (speedup). + if (text1 == text2) { + if (text1) { + return [new diff_match_patch.Diff(DIFF_EQUAL, text1)]; + } + return []; + } + if (typeof opt_checklines == 'undefined') { + opt_checklines = true; + } + var checklines = opt_checklines; + + // Trim off common prefix (speedup). + var commonlength = this.diff_commonPrefix(text1, text2); + var commonprefix = text1.substring(0, commonlength); + text1 = text1.substring(commonlength); + text2 = text2.substring(commonlength); + + // Trim off common suffix (speedup). + commonlength = this.diff_commonSuffix(text1, text2); + var commonsuffix = text1.substring(text1.length - commonlength); + text1 = text1.substring(0, text1.length - commonlength); + text2 = text2.substring(0, text2.length - commonlength); + + // Compute the diff on the middle block. + var diffs = this.diff_compute_(text1, text2, checklines, deadline); + + // Restore the prefix and suffix. + if (commonprefix) { + diffs.unshift(new diff_match_patch.Diff(DIFF_EQUAL, commonprefix)); + } + if (commonsuffix) { + diffs.push(new diff_match_patch.Diff(DIFF_EQUAL, commonsuffix)); + } + this.diff_cleanupMerge(diffs); + return diffs; +}; + +/** + * Find the differences between two texts. Assumes that the texts do not + * have any common prefix or suffix. + * @param {string} text1 Old string to be diffed. + * @param {string} text2 New string to be diffed. + * @param {boolean} checklines Speedup flag. If false, then don't run a + * line-level diff first to identify the changed areas. + * If true, then run a faster, slightly less optimal diff. + * @param {number} deadline Time when the diff should be complete by. + * @return {!Array.<!diff_match_patch.Diff>} Array of diff tuples. + * @private + */ +diff_match_patch.prototype.diff_compute_ = function (text1, text2, checklines, deadline) { + var diffs; + if (!text1) { + // Just add some text (speedup). + return [new diff_match_patch.Diff(DIFF_INSERT, text2)]; + } + if (!text2) { + // Just delete some text (speedup). + return [new diff_match_patch.Diff(DIFF_DELETE, text1)]; + } + var longtext = text1.length > text2.length ? text1 : text2; + var shorttext = text1.length > text2.length ? text2 : text1; + var i = longtext.indexOf(shorttext); + if (i != -1) { + // Shorter text is inside the longer text (speedup). + diffs = [new diff_match_patch.Diff(DIFF_INSERT, longtext.substring(0, i)), new diff_match_patch.Diff(DIFF_EQUAL, shorttext), new diff_match_patch.Diff(DIFF_INSERT, longtext.substring(i + shorttext.length))]; + // Swap insertions for deletions if diff is reversed. + if (text1.length > text2.length) { + diffs[0][0] = diffs[2][0] = DIFF_DELETE; + } + return diffs; + } + if (shorttext.length == 1) { + // Single character string. + // After the previous speedup, the character can't be an equality. + return [new diff_match_patch.Diff(DIFF_DELETE, text1), new diff_match_patch.Diff(DIFF_INSERT, text2)]; + } + + // Check to see if the problem can be split in two. + var hm = this.diff_halfMatch_(text1, text2); + if (hm) { + // A half-match was found, sort out the return data. + var text1_a = hm[0]; + var text1_b = hm[1]; + var text2_a = hm[2]; + var text2_b = hm[3]; + var mid_common = hm[4]; + // Send both pairs off for separate processing. + var diffs_a = this.diff_main(text1_a, text2_a, checklines, deadline); + var diffs_b = this.diff_main(text1_b, text2_b, checklines, deadline); + // Merge the results. + return diffs_a.concat([new diff_match_patch.Diff(DIFF_EQUAL, mid_common)], diffs_b); + } + if (checklines && text1.length > 100 && text2.length > 100) { + return this.diff_lineMode_(text1, text2, deadline); + } + return this.diff_bisect_(text1, text2, deadline); +}; + +/** + * Do a quick line-level diff on both strings, then rediff the parts for + * greater accuracy. + * This speedup can produce non-minimal diffs. + * @param {string} text1 Old string to be diffed. + * @param {string} text2 New string to be diffed. + * @param {number} deadline Time when the diff should be complete by. + * @return {!Array.<!diff_match_patch.Diff>} Array of diff tuples. + * @private + */ +diff_match_patch.prototype.diff_lineMode_ = function (text1, text2, deadline) { + // Scan the text on a line-by-line basis first. + var a = this.diff_linesToChars_(text1, text2); + text1 = a.chars1; + text2 = a.chars2; + var linearray = a.lineArray; + var diffs = this.diff_main(text1, text2, false, deadline); + + // Convert the diff back to original text. + this.diff_charsToLines_(diffs, linearray); + // Eliminate freak matches (e.g. blank lines) + this.diff_cleanupSemantic(diffs); + + // Rediff any replacement blocks, this time character-by-character. + // Add a dummy entry at the end. + diffs.push(new diff_match_patch.Diff(DIFF_EQUAL, '')); + var pointer = 0; + var count_delete = 0; + var count_insert = 0; + var text_delete = ''; + var text_insert = ''; + while (pointer < diffs.length) { + switch (diffs[pointer][0]) { + case DIFF_INSERT: + count_insert++; + text_insert += diffs[pointer][1]; + break; + case DIFF_DELETE: + count_delete++; + text_delete += diffs[pointer][1]; + break; + case DIFF_EQUAL: + // Upon reaching an equality, check for prior redundancies. + if (count_delete >= 1 && count_insert >= 1) { + // Delete the offending records and add the merged ones. + diffs.splice(pointer - count_delete - count_insert, count_delete + count_insert); + pointer = pointer - count_delete - count_insert; + var subDiff = this.diff_main(text_delete, text_insert, false, deadline); + for (var j = subDiff.length - 1; j >= 0; j--) { + diffs.splice(pointer, 0, subDiff[j]); + } + pointer = pointer + subDiff.length; + } + count_insert = 0; + count_delete = 0; + text_delete = ''; + text_insert = ''; + break; + } + pointer++; + } + diffs.pop(); // Remove the dummy entry at the end. + + return diffs; +}; + +/** + * Find the 'middle snake' of a diff, split the problem in two + * and return the recursively constructed diff. + * See Myers 1986 paper: An O(ND) Difference Algorithm and Its Variations. + * @param {string} text1 Old string to be diffed. + * @param {string} text2 New string to be diffed. + * @param {number} deadline Time at which to bail if not yet complete. + * @return {!Array.<!diff_match_patch.Diff>} Array of diff tuples. + * @private + */ +diff_match_patch.prototype.diff_bisect_ = function (text1, text2, deadline) { + // Cache the text lengths to prevent multiple calls. + var text1_length = text1.length; + var text2_length = text2.length; + var max_d = Math.ceil((text1_length + text2_length) / 2); + var v_offset = max_d; + var v_length = 2 * max_d; + var v1 = new Array(v_length); + var v2 = new Array(v_length); + // Setting all elements to -1 is faster in Chrome & Firefox than mixing + // integers and undefined. + for (var x = 0; x < v_length; x++) { + v1[x] = -1; + v2[x] = -1; + } + v1[v_offset + 1] = 0; + v2[v_offset + 1] = 0; + var delta = text1_length - text2_length; + // If the total number of characters is odd, then the front path will collide + // with the reverse path. + var front = delta % 2 != 0; + // Offsets for start and end of k loop. + // Prevents mapping of space beyond the grid. + var k1start = 0; + var k1end = 0; + var k2start = 0; + var k2end = 0; + for (var d = 0; d < max_d; d++) { + // Bail out if deadline is reached. + if (new Date().getTime() > deadline) { + break; + } + + // Walk the front path one step. + for (var k1 = -d + k1start; k1 <= d - k1end; k1 += 2) { + var k1_offset = v_offset + k1; + var x1; + if (k1 == -d || k1 != d && v1[k1_offset - 1] < v1[k1_offset + 1]) { + x1 = v1[k1_offset + 1]; + } else { + x1 = v1[k1_offset - 1] + 1; + } + var y1 = x1 - k1; + while (x1 < text1_length && y1 < text2_length && text1.charAt(x1) == text2.charAt(y1)) { + x1++; + y1++; + } + v1[k1_offset] = x1; + if (x1 > text1_length) { + // Ran off the right of the graph. + k1end += 2; + } else if (y1 > text2_length) { + // Ran off the bottom of the graph. + k1start += 2; + } else if (front) { + var k2_offset = v_offset + delta - k1; + if (k2_offset >= 0 && k2_offset < v_length && v2[k2_offset] != -1) { + // Mirror x2 onto top-left coordinate system. + var x2 = text1_length - v2[k2_offset]; + if (x1 >= x2) { + // Overlap detected. + return this.diff_bisectSplit_(text1, text2, x1, y1, deadline); + } + } + } + } + + // Walk the reverse path one step. + for (var k2 = -d + k2start; k2 <= d - k2end; k2 += 2) { + var k2_offset = v_offset + k2; + var x2; + if (k2 == -d || k2 != d && v2[k2_offset - 1] < v2[k2_offset + 1]) { + x2 = v2[k2_offset + 1]; + } else { + x2 = v2[k2_offset - 1] + 1; + } + var y2 = x2 - k2; + while (x2 < text1_length && y2 < text2_length && text1.charAt(text1_length - x2 - 1) == text2.charAt(text2_length - y2 - 1)) { + x2++; + y2++; + } + v2[k2_offset] = x2; + if (x2 > text1_length) { + // Ran off the left of the graph. + k2end += 2; + } else if (y2 > text2_length) { + // Ran off the top of the graph. + k2start += 2; + } else if (!front) { + var k1_offset = v_offset + delta - k2; + if (k1_offset >= 0 && k1_offset < v_length && v1[k1_offset] != -1) { + var x1 = v1[k1_offset]; + var y1 = v_offset + x1 - k1_offset; + // Mirror x2 onto top-left coordinate system. + x2 = text1_length - x2; + if (x1 >= x2) { + // Overlap detected. + return this.diff_bisectSplit_(text1, text2, x1, y1, deadline); + } + } + } + } + } + // Diff took too long and hit the deadline or + // number of diffs equals number of characters, no commonality at all. + return [new diff_match_patch.Diff(DIFF_DELETE, text1), new diff_match_patch.Diff(DIFF_INSERT, text2)]; +}; + +/** + * Given the location of the 'middle snake', split the diff in two parts + * and recurse. + * @param {string} text1 Old string to be diffed. + * @param {string} text2 New string to be diffed. + * @param {number} x Index of split point in text1. + * @param {number} y Index of split point in text2. + * @param {number} deadline Time at which to bail if not yet complete. + * @return {!Array.<!diff_match_patch.Diff>} Array of diff tuples. + * @private + */ +diff_match_patch.prototype.diff_bisectSplit_ = function (text1, text2, x, y, deadline) { + var text1a = text1.substring(0, x); + var text2a = text2.substring(0, y); + var text1b = text1.substring(x); + var text2b = text2.substring(y); + + // Compute both diffs serially. + var diffs = this.diff_main(text1a, text2a, false, deadline); + var diffsb = this.diff_main(text1b, text2b, false, deadline); + return diffs.concat(diffsb); +}; + +/** + * Split two texts into an array of strings. Reduce the texts to a string of + * hashes where each Unicode character represents one line. + * @param {string} text1 First string. + * @param {string} text2 Second string. + * @return {{chars1: string, chars2: string, lineArray: !Array.<string>}} + * An object containing the encoded text1, the encoded text2 and + * the array of unique strings. + * The zeroth element of the array of unique strings is intentionally blank. + * @private + */ +diff_match_patch.prototype.diff_linesToChars_ = function (text1, text2) { + var lineArray = []; // e.g. lineArray[4] == 'Hello\n' + var lineHash = {}; // e.g. lineHash['Hello\n'] == 4 + + // '\x00' is a valid character, but various debuggers don't like it. + // So we'll insert a junk entry to avoid generating a null character. + lineArray[0] = ''; + + /** + * Split a text into an array of strings. Reduce the texts to a string of + * hashes where each Unicode character represents one line. + * Modifies linearray and linehash through being a closure. + * @param {string} text String to encode. + * @return {string} Encoded string. + * @private + */ + function diff_linesToCharsMunge_(text) { + var chars = ''; + // Walk the text, pulling out a substring for each line. + // text.split('\n') would would temporarily double our memory footprint. + // Modifying text would create many large strings to garbage collect. + var lineStart = 0; + var lineEnd = -1; + // Keeping our own length variable is faster than looking it up. + var lineArrayLength = lineArray.length; + while (lineEnd < text.length - 1) { + lineEnd = text.indexOf('\n', lineStart); + if (lineEnd == -1) { + lineEnd = text.length - 1; + } + var line = text.substring(lineStart, lineEnd + 1); + if (lineHash.hasOwnProperty ? lineHash.hasOwnProperty(line) : lineHash[line] !== undefined) { + chars += String.fromCharCode(lineHash[line]); + } else { + if (lineArrayLength == maxLines) { + // Bail out at 65535 because + // String.fromCharCode(65536) == String.fromCharCode(0) + line = text.substring(lineStart); + lineEnd = text.length; + } + chars += String.fromCharCode(lineArrayLength); + lineHash[line] = lineArrayLength; + lineArray[lineArrayLength++] = line; + } + lineStart = lineEnd + 1; + } + return chars; + } + // Allocate 2/3rds of the space for text1, the rest for text2. + var maxLines = 40000; + var chars1 = diff_linesToCharsMunge_(text1); + maxLines = 65535; + var chars2 = diff_linesToCharsMunge_(text2); + return { + chars1: chars1, + chars2: chars2, + lineArray: lineArray + }; +}; + +/** + * Rehydrate the text in a diff from a string of line hashes to real lines of + * text. + * @param {!Array.<!diff_match_patch.Diff>} diffs Array of diff tuples. + * @param {!Array.<string>} lineArray Array of unique strings. + * @private + */ +diff_match_patch.prototype.diff_charsToLines_ = function (diffs, lineArray) { + for (var i = 0; i < diffs.length; i++) { + var chars = diffs[i][1]; + var text = []; + for (var j = 0; j < chars.length; j++) { + text[j] = lineArray[chars.charCodeAt(j)]; + } + diffs[i][1] = text.join(''); + } +}; + +/** + * Determine the common prefix of two strings. + * @param {string} text1 First string. + * @param {string} text2 Second string. + * @return {number} The number of characters common to the start of each + * string. + */ +diff_match_patch.prototype.diff_commonPrefix = function (text1, text2) { + // Quick check for common null cases. + if (!text1 || !text2 || text1.charAt(0) != text2.charAt(0)) { + return 0; + } + // Binary search. + // Performance analysis: https://neil.fraser.name/news/2007/10/09/ + var pointermin = 0; + var pointermax = Math.min(text1.length, text2.length); + var pointermid = pointermax; + var pointerstart = 0; + while (pointermin < pointermid) { + if (text1.substring(pointerstart, pointermid) == text2.substring(pointerstart, pointermid)) { + pointermin = pointermid; + pointerstart = pointermin; + } else { + pointermax = pointermid; + } + pointermid = Math.floor((pointermax - pointermin) / 2 + pointermin); + } + return pointermid; +}; + +/** + * Determine the common suffix of two strings. + * @param {string} text1 First string. + * @param {string} text2 Second string. + * @return {number} The number of characters common to the end of each string. + */ +diff_match_patch.prototype.diff_commonSuffix = function (text1, text2) { + // Quick check for common null cases. + if (!text1 || !text2 || text1.charAt(text1.length - 1) != text2.charAt(text2.length - 1)) { + return 0; + } + // Binary search. + // Performance analysis: https://neil.fraser.name/news/2007/10/09/ + var pointermin = 0; + var pointermax = Math.min(text1.length, text2.length); + var pointermid = pointermax; + var pointerend = 0; + while (pointermin < pointermid) { + if (text1.substring(text1.length - pointermid, text1.length - pointerend) == text2.substring(text2.length - pointermid, text2.length - pointerend)) { + pointermin = pointermid; + pointerend = pointermin; + } else { + pointermax = pointermid; + } + pointermid = Math.floor((pointermax - pointermin) / 2 + pointermin); + } + return pointermid; +}; + +/** + * Determine if the suffix of one string is the prefix of another. + * @param {string} text1 First string. + * @param {string} text2 Second string. + * @return {number} The number of characters common to the end of the first + * string and the start of the second string. + * @private + */ +diff_match_patch.prototype.diff_commonOverlap_ = function (text1, text2) { + // Cache the text lengths to prevent multiple calls. + var text1_length = text1.length; + var text2_length = text2.length; + // Eliminate the null case. + if (text1_length == 0 || text2_length == 0) { + return 0; + } + // Truncate the longer string. + if (text1_length > text2_length) { + text1 = text1.substring(text1_length - text2_length); + } else if (text1_length < text2_length) { + text2 = text2.substring(0, text1_length); + } + var text_length = Math.min(text1_length, text2_length); + // Quick check for the worst case. + if (text1 == text2) { + return text_length; + } + + // Start by looking for a single character match + // and increase length until no match is found. + // Performance analysis: https://neil.fraser.name/news/2010/11/04/ + var best = 0; + var length = 1; + while (true) { + var pattern = text1.substring(text_length - length); + var found = text2.indexOf(pattern); + if (found == -1) { + return best; + } + length += found; + if (found == 0 || text1.substring(text_length - length) == text2.substring(0, length)) { + best = length; + length++; + } + } +}; + +/** + * Do the two texts share a substring which is at least half the length of the + * longer text? + * This speedup can produce non-minimal diffs. + * @param {string} text1 First string. + * @param {string} text2 Second string. + * @return {Array.<string>} Five element Array, containing the prefix of + * text1, the suffix of text1, the prefix of text2, the suffix of + * text2 and the common middle. Or null if there was no match. + * @private + */ +diff_match_patch.prototype.diff_halfMatch_ = function (text1, text2) { + if (this.Diff_Timeout <= 0) { + // Don't risk returning a non-optimal diff if we have unlimited time. + return null; + } + var longtext = text1.length > text2.length ? text1 : text2; + var shorttext = text1.length > text2.length ? text2 : text1; + if (longtext.length < 4 || shorttext.length * 2 < longtext.length) { + return null; // Pointless. + } + var dmp = this; // 'this' becomes 'window' in a closure. + + /** + * Does a substring of shorttext exist within longtext such that the substring + * is at least half the length of longtext? + * Closure, but does not reference any external variables. + * @param {string} longtext Longer string. + * @param {string} shorttext Shorter string. + * @param {number} i Start index of quarter length substring within longtext. + * @return {Array.<string>} Five element Array, containing the prefix of + * longtext, the suffix of longtext, the prefix of shorttext, the suffix + * of shorttext and the common middle. Or null if there was no match. + * @private + */ + function diff_halfMatchI_(longtext, shorttext, i) { + // Start with a 1/4 length substring at position i as a seed. + var seed = longtext.substring(i, i + Math.floor(longtext.length / 4)); + var j = -1; + var best_common = ''; + var best_longtext_a, best_longtext_b, best_shorttext_a, best_shorttext_b; + while ((j = shorttext.indexOf(seed, j + 1)) != -1) { + var prefixLength = dmp.diff_commonPrefix(longtext.substring(i), shorttext.substring(j)); + var suffixLength = dmp.diff_commonSuffix(longtext.substring(0, i), shorttext.substring(0, j)); + if (best_common.length < suffixLength + prefixLength) { + best_common = shorttext.substring(j - suffixLength, j) + shorttext.substring(j, j + prefixLength); + best_longtext_a = longtext.substring(0, i - suffixLength); + best_longtext_b = longtext.substring(i + prefixLength); + best_shorttext_a = shorttext.substring(0, j - suffixLength); + best_shorttext_b = shorttext.substring(j + prefixLength); + } + } + if (best_common.length * 2 >= longtext.length) { + return [best_longtext_a, best_longtext_b, best_shorttext_a, best_shorttext_b, best_common]; + } else { + return null; + } + } + + // First check if the second quarter is the seed for a half-match. + var hm1 = diff_halfMatchI_(longtext, shorttext, Math.ceil(longtext.length / 4)); + // Check again based on the third quarter. + var hm2 = diff_halfMatchI_(longtext, shorttext, Math.ceil(longtext.length / 2)); + var hm; + if (!hm1 && !hm2) { + return null; + } else if (!hm2) { + hm = hm1; + } else if (!hm1) { + hm = hm2; + } else { + // Both matched. Select the longest. + hm = hm1[4].length > hm2[4].length ? hm1 : hm2; + } + + // A half-match was found, sort out the return data. + var text1_a, text1_b, text2_a, text2_b; + if (text1.length > text2.length) { + text1_a = hm[0]; + text1_b = hm[1]; + text2_a = hm[2]; + text2_b = hm[3]; + } else { + text2_a = hm[0]; + text2_b = hm[1]; + text1_a = hm[2]; + text1_b = hm[3]; + } + var mid_common = hm[4]; + return [text1_a, text1_b, text2_a, text2_b, mid_common]; +}; + +/** + * Reduce the number of edits by eliminating semantically trivial equalities. + * @param {!Array.<!diff_match_patch.Diff>} diffs Array of diff tuples. + */ +diff_match_patch.prototype.diff_cleanupSemantic = function (diffs) { + var changes = false; + var equalities = []; // Stack of indices where equalities are found. + var equalitiesLength = 0; // Keeping our own length var is faster in JS. + /** @type {?string} */ + var lastEquality = null; + // Always equal to diffs[equalities[equalitiesLength - 1]][1] + var pointer = 0; // Index of current position. + // Number of characters that changed prior to the equality. + var length_insertions1 = 0; + var length_deletions1 = 0; + // Number of characters that changed after the equality. + var length_insertions2 = 0; + var length_deletions2 = 0; + while (pointer < diffs.length) { + if (diffs[pointer][0] == DIFF_EQUAL) { + // Equality found. + equalities[equalitiesLength++] = pointer; + length_insertions1 = length_insertions2; + length_deletions1 = length_deletions2; + length_insertions2 = 0; + length_deletions2 = 0; + lastEquality = diffs[pointer][1]; + } else { + // An insertion or deletion. + if (diffs[pointer][0] == DIFF_INSERT) { + length_insertions2 += diffs[pointer][1].length; + } else { + length_deletions2 += diffs[pointer][1].length; + } + // Eliminate an equality that is smaller or equal to the edits on both + // sides of it. + if (lastEquality && lastEquality.length <= Math.max(length_insertions1, length_deletions1) && lastEquality.length <= Math.max(length_insertions2, length_deletions2)) { + // Duplicate record. + diffs.splice(equalities[equalitiesLength - 1], 0, new diff_match_patch.Diff(DIFF_DELETE, lastEquality)); + // Change second copy to insert. + diffs[equalities[equalitiesLength - 1] + 1][0] = DIFF_INSERT; + // Throw away the equality we just deleted. + equalitiesLength--; + // Throw away the previous equality (it needs to be reevaluated). + equalitiesLength--; + pointer = equalitiesLength > 0 ? equalities[equalitiesLength - 1] : -1; + length_insertions1 = 0; // Reset the counters. + length_deletions1 = 0; + length_insertions2 = 0; + length_deletions2 = 0; + lastEquality = null; + changes = true; + } + } + pointer++; + } + + // Normalize the diff. + if (changes) { + this.diff_cleanupMerge(diffs); + } + this.diff_cleanupSemanticLossless(diffs); + + // Find any overlaps between deletions and insertions. + // e.g: <del>abcxxx</del><ins>xxxdef</ins> + // -> <del>abc</del>xxx<ins>def</ins> + // e.g: <del>xxxabc</del><ins>defxxx</ins> + // -> <ins>def</ins>xxx<del>abc</del> + // Only extract an overlap if it is as big as the edit ahead or behind it. + pointer = 1; + while (pointer < diffs.length) { + if (diffs[pointer - 1][0] == DIFF_DELETE && diffs[pointer][0] == DIFF_INSERT) { + var deletion = diffs[pointer - 1][1]; + var insertion = diffs[pointer][1]; + var overlap_length1 = this.diff_commonOverlap_(deletion, insertion); + var overlap_length2 = this.diff_commonOverlap_(insertion, deletion); + if (overlap_length1 >= overlap_length2) { + if (overlap_length1 >= deletion.length / 2 || overlap_length1 >= insertion.length / 2) { + // Overlap found. Insert an equality and trim the surrounding edits. + diffs.splice(pointer, 0, new diff_match_patch.Diff(DIFF_EQUAL, insertion.substring(0, overlap_length1))); + diffs[pointer - 1][1] = deletion.substring(0, deletion.length - overlap_length1); + diffs[pointer + 1][1] = insertion.substring(overlap_length1); + pointer++; + } + } else { + if (overlap_length2 >= deletion.length / 2 || overlap_length2 >= insertion.length / 2) { + // Reverse overlap found. + // Insert an equality and swap and trim the surrounding edits. + diffs.splice(pointer, 0, new diff_match_patch.Diff(DIFF_EQUAL, deletion.substring(0, overlap_length2))); + diffs[pointer - 1][0] = DIFF_INSERT; + diffs[pointer - 1][1] = insertion.substring(0, insertion.length - overlap_length2); + diffs[pointer + 1][0] = DIFF_DELETE; + diffs[pointer + 1][1] = deletion.substring(overlap_length2); + pointer++; + } + } + pointer++; + } + pointer++; + } +}; + +/** + * Look for single edits surrounded on both sides by equalities + * which can be shifted sideways to align the edit to a word boundary. + * e.g: The c<ins>at c</ins>ame. -> The <ins>cat </ins>came. + * @param {!Array.<!diff_match_patch.Diff>} diffs Array of diff tuples. + */ +diff_match_patch.prototype.diff_cleanupSemanticLossless = function (diffs) { + /** + * Given two strings, compute a score representing whether the internal + * boundary falls on logical boundaries. + * Scores range from 6 (best) to 0 (worst). + * Closure, but does not reference any external variables. + * @param {string} one First string. + * @param {string} two Second string. + * @return {number} The score. + * @private + */ + function diff_cleanupSemanticScore_(one, two) { + if (!one || !two) { + // Edges are the best. + return 6; + } + + // Each port of this function behaves slightly differently due to + // subtle differences in each language's definition of things like + // 'whitespace'. Since this function's purpose is largely cosmetic, + // the choice has been made to use each language's native features + // rather than force total conformity. + var char1 = one.charAt(one.length - 1); + var char2 = two.charAt(0); + var nonAlphaNumeric1 = char1.match(diff_match_patch.nonAlphaNumericRegex_); + var nonAlphaNumeric2 = char2.match(diff_match_patch.nonAlphaNumericRegex_); + var whitespace1 = nonAlphaNumeric1 && char1.match(diff_match_patch.whitespaceRegex_); + var whitespace2 = nonAlphaNumeric2 && char2.match(diff_match_patch.whitespaceRegex_); + var lineBreak1 = whitespace1 && char1.match(diff_match_patch.linebreakRegex_); + var lineBreak2 = whitespace2 && char2.match(diff_match_patch.linebreakRegex_); + var blankLine1 = lineBreak1 && one.match(diff_match_patch.blanklineEndRegex_); + var blankLine2 = lineBreak2 && two.match(diff_match_patch.blanklineStartRegex_); + if (blankLine1 || blankLine2) { + // Five points for blank lines. + return 5; + } else if (lineBreak1 || lineBreak2) { + // Four points for line breaks. + return 4; + } else if (nonAlphaNumeric1 && !whitespace1 && whitespace2) { + // Three points for end of sentences. + return 3; + } else if (whitespace1 || whitespace2) { + // Two points for whitespace. + return 2; + } else if (nonAlphaNumeric1 || nonAlphaNumeric2) { + // One point for non-alphanumeric. + return 1; + } + return 0; + } + var pointer = 1; + // Intentionally ignore the first and last element (don't need checking). + while (pointer < diffs.length - 1) { + if (diffs[pointer - 1][0] == DIFF_EQUAL && diffs[pointer + 1][0] == DIFF_EQUAL) { + // This is a single edit surrounded by equalities. + var equality1 = diffs[pointer - 1][1]; + var edit = diffs[pointer][1]; + var equality2 = diffs[pointer + 1][1]; + + // First, shift the edit as far left as possible. + var commonOffset = this.diff_commonSuffix(equality1, edit); + if (commonOffset) { + var commonString = edit.substring(edit.length - commonOffset); + equality1 = equality1.substring(0, equality1.length - commonOffset); + edit = commonString + edit.substring(0, edit.length - commonOffset); + equality2 = commonString + equality2; + } + + // Second, step character by character right, looking for the best fit. + var bestEquality1 = equality1; + var bestEdit = edit; + var bestEquality2 = equality2; + var bestScore = diff_cleanupSemanticScore_(equality1, edit) + diff_cleanupSemanticScore_(edit, equality2); + while (edit.charAt(0) === equality2.charAt(0)) { + equality1 += edit.charAt(0); + edit = edit.substring(1) + equality2.charAt(0); + equality2 = equality2.substring(1); + var score = diff_cleanupSemanticScore_(equality1, edit) + diff_cleanupSemanticScore_(edit, equality2); + // The >= encourages trailing rather than leading whitespace on edits. + if (score >= bestScore) { + bestScore = score; + bestEquality1 = equality1; + bestEdit = edit; + bestEquality2 = equality2; + } + } + if (diffs[pointer - 1][1] != bestEquality1) { + // We have an improvement, save it back to the diff. + if (bestEquality1) { + diffs[pointer - 1][1] = bestEquality1; + } else { + diffs.splice(pointer - 1, 1); + pointer--; + } + diffs[pointer][1] = bestEdit; + if (bestEquality2) { + diffs[pointer + 1][1] = bestEquality2; + } else { + diffs.splice(pointer + 1, 1); + pointer--; + } + } + } + pointer++; + } +}; + +// Define some regex patterns for matching boundaries. +diff_match_patch.nonAlphaNumericRegex_ = /[^a-zA-Z0-9]/; +diff_match_patch.whitespaceRegex_ = /\s/; +diff_match_patch.linebreakRegex_ = /[\r\n]/; +diff_match_patch.blanklineEndRegex_ = /\n\r?\n$/; +diff_match_patch.blanklineStartRegex_ = /^\r?\n\r?\n/; + +/** + * Reduce the number of edits by eliminating operationally trivial equalities. + * @param {!Array.<!diff_match_patch.Diff>} diffs Array of diff tuples. + */ +diff_match_patch.prototype.diff_cleanupEfficiency = function (diffs) { + var changes = false; + var equalities = []; // Stack of indices where equalities are found. + var equalitiesLength = 0; // Keeping our own length var is faster in JS. + /** @type {?string} */ + var lastEquality = null; + // Always equal to diffs[equalities[equalitiesLength - 1]][1] + var pointer = 0; // Index of current position. + // Is there an insertion operation before the last equality. + var pre_ins = false; + // Is there a deletion operation before the last equality. + var pre_del = false; + // Is there an insertion operation after the last equality. + var post_ins = false; + // Is there a deletion operation after the last equality. + var post_del = false; + while (pointer < diffs.length) { + if (diffs[pointer][0] == DIFF_EQUAL) { + // Equality found. + if (diffs[pointer][1].length < this.Diff_EditCost && (post_ins || post_del)) { + // Candidate found. + equalities[equalitiesLength++] = pointer; + pre_ins = post_ins; + pre_del = post_del; + lastEquality = diffs[pointer][1]; + } else { + // Not a candidate, and can never become one. + equalitiesLength = 0; + lastEquality = null; + } + post_ins = post_del = false; + } else { + // An insertion or deletion. + if (diffs[pointer][0] == DIFF_DELETE) { + post_del = true; + } else { + post_ins = true; + } + /* + * Five types to be split: + * <ins>A</ins><del>B</del>XY<ins>C</ins><del>D</del> + * <ins>A</ins>X<ins>C</ins><del>D</del> + * <ins>A</ins><del>B</del>X<ins>C</ins> + * <ins>A</del>X<ins>C</ins><del>D</del> + * <ins>A</ins><del>B</del>X<del>C</del> + */ + if (lastEquality && (pre_ins && pre_del && post_ins && post_del || lastEquality.length < this.Diff_EditCost / 2 && pre_ins + pre_del + post_ins + post_del == 3)) { + // Duplicate record. + diffs.splice(equalities[equalitiesLength - 1], 0, new diff_match_patch.Diff(DIFF_DELETE, lastEquality)); + // Change second copy to insert. + diffs[equalities[equalitiesLength - 1] + 1][0] = DIFF_INSERT; + equalitiesLength--; // Throw away the equality we just deleted; + lastEquality = null; + if (pre_ins && pre_del) { + // No changes made which could affect previous entry, keep going. + post_ins = post_del = true; + equalitiesLength = 0; + } else { + equalitiesLength--; // Throw away the previous equality. + pointer = equalitiesLength > 0 ? equalities[equalitiesLength - 1] : -1; + post_ins = post_del = false; + } + changes = true; + } + } + pointer++; + } + if (changes) { + this.diff_cleanupMerge(diffs); + } +}; + +/** + * Reorder and merge like edit sections. Merge equalities. + * Any edit section can move as long as it doesn't cross an equality. + * @param {!Array.<!diff_match_patch.Diff>} diffs Array of diff tuples. + */ +diff_match_patch.prototype.diff_cleanupMerge = function (diffs) { + // Add a dummy entry at the end. + diffs.push(new diff_match_patch.Diff(DIFF_EQUAL, '')); + var pointer = 0; + var count_delete = 0; + var count_insert = 0; + var text_delete = ''; + var text_insert = ''; + var commonlength; + while (pointer < diffs.length) { + switch (diffs[pointer][0]) { + case DIFF_INSERT: + count_insert++; + text_insert += diffs[pointer][1]; + pointer++; + break; + case DIFF_DELETE: + count_delete++; + text_delete += diffs[pointer][1]; + pointer++; + break; + case DIFF_EQUAL: + // Upon reaching an equality, check for prior redundancies. + if (count_delete + count_insert > 1) { + if (count_delete !== 0 && count_insert !== 0) { + // Factor out any common prefixies. + commonlength = this.diff_commonPrefix(text_insert, text_delete); + if (commonlength !== 0) { + if (pointer - count_delete - count_insert > 0 && diffs[pointer - count_delete - count_insert - 1][0] == DIFF_EQUAL) { + diffs[pointer - count_delete - count_insert - 1][1] += text_insert.substring(0, commonlength); + } else { + diffs.splice(0, 0, new diff_match_patch.Diff(DIFF_EQUAL, text_insert.substring(0, commonlength))); + pointer++; + } + text_insert = text_insert.substring(commonlength); + text_delete = text_delete.substring(commonlength); + } + // Factor out any common suffixies. + commonlength = this.diff_commonSuffix(text_insert, text_delete); + if (commonlength !== 0) { + diffs[pointer][1] = text_insert.substring(text_insert.length - commonlength) + diffs[pointer][1]; + text_insert = text_insert.substring(0, text_insert.length - commonlength); + text_delete = text_delete.substring(0, text_delete.length - commonlength); + } + } + // Delete the offending records and add the merged ones. + pointer -= count_delete + count_insert; + diffs.splice(pointer, count_delete + count_insert); + if (text_delete.length) { + diffs.splice(pointer, 0, new diff_match_patch.Diff(DIFF_DELETE, text_delete)); + pointer++; + } + if (text_insert.length) { + diffs.splice(pointer, 0, new diff_match_patch.Diff(DIFF_INSERT, text_insert)); + pointer++; + } + pointer++; + } else if (pointer !== 0 && diffs[pointer - 1][0] == DIFF_EQUAL) { + // Merge this equality with the previous one. + diffs[pointer - 1][1] += diffs[pointer][1]; + diffs.splice(pointer, 1); + } else { + pointer++; + } + count_insert = 0; + count_delete = 0; + text_delete = ''; + text_insert = ''; + break; + } + } + if (diffs[diffs.length - 1][1] === '') { + diffs.pop(); // Remove the dummy entry at the end. + } + + // Second pass: look for single edits surrounded on both sides by equalities + // which can be shifted sideways to eliminate an equality. + // e.g: A<ins>BA</ins>C -> <ins>AB</ins>AC + var changes = false; + pointer = 1; + // Intentionally ignore the first and last element (don't need checking). + while (pointer < diffs.length - 1) { + if (diffs[pointer - 1][0] == DIFF_EQUAL && diffs[pointer + 1][0] == DIFF_EQUAL) { + // This is a single edit surrounded by equalities. + if (diffs[pointer][1].substring(diffs[pointer][1].length - diffs[pointer - 1][1].length) == diffs[pointer - 1][1]) { + // Shift the edit over the previous equality. + diffs[pointer][1] = diffs[pointer - 1][1] + diffs[pointer][1].substring(0, diffs[pointer][1].length - diffs[pointer - 1][1].length); + diffs[pointer + 1][1] = diffs[pointer - 1][1] + diffs[pointer + 1][1]; + diffs.splice(pointer - 1, 1); + changes = true; + } else if (diffs[pointer][1].substring(0, diffs[pointer + 1][1].length) == diffs[pointer + 1][1]) { + // Shift the edit over the next equality. + diffs[pointer - 1][1] += diffs[pointer + 1][1]; + diffs[pointer][1] = diffs[pointer][1].substring(diffs[pointer + 1][1].length) + diffs[pointer + 1][1]; + diffs.splice(pointer + 1, 1); + changes = true; + } + } + pointer++; + } + // If shifts were made, the diff needs reordering and another shift sweep. + if (changes) { + this.diff_cleanupMerge(diffs); + } +}; + +/** + * loc is a location in text1, compute and return the equivalent location in + * text2. + * e.g. 'The cat' vs 'The big cat', 1->1, 5->8 + * @param {!Array.<!diff_match_patch.Diff>} diffs Array of diff tuples. + * @param {number} loc Location within text1. + * @return {number} Location within text2. + */ +diff_match_patch.prototype.diff_xIndex = function (diffs, loc) { + var chars1 = 0; + var chars2 = 0; + var last_chars1 = 0; + var last_chars2 = 0; + var x; + for (x = 0; x < diffs.length; x++) { + if (diffs[x][0] !== DIFF_INSERT) { + // Equality or deletion. + chars1 += diffs[x][1].length; + } + if (diffs[x][0] !== DIFF_DELETE) { + // Equality or insertion. + chars2 += diffs[x][1].length; + } + if (chars1 > loc) { + // Overshot the location. + break; + } + last_chars1 = chars1; + last_chars2 = chars2; + } + // Was the location was deleted? + if (diffs.length != x && diffs[x][0] === DIFF_DELETE) { + return last_chars2; + } + // Add the remaining character length. + return last_chars2 + (loc - last_chars1); +}; + +/** + * Convert a diff array into a pretty HTML report. + * @param {!Array.<!diff_match_patch.Diff>} diffs Array of diff tuples. + * @return {string} HTML representation. + */ +diff_match_patch.prototype.diff_prettyHtml = function (diffs) { + var html = []; + var pattern_amp = /&/g; + var pattern_lt = /</g; + var pattern_gt = />/g; + var pattern_para = /\n/g; + for (var x = 0; x < diffs.length; x++) { + var op = diffs[x][0]; // Operation (insert, delete, equal) + var data = diffs[x][1]; // Text of change. + var text = data.replace(pattern_amp, '&').replace(pattern_lt, '<').replace(pattern_gt, '>').replace(pattern_para, '¶<br>'); + switch (op) { + case DIFF_INSERT: + html[x] = '<ins style="background:#e6ffe6;">' + text + '</ins>'; + break; + case DIFF_DELETE: + html[x] = '<del style="background:#ffe6e6;">' + text + '</del>'; + break; + case DIFF_EQUAL: + html[x] = '<span>' + text + '</span>'; + break; + } + } + return html.join(''); +}; + +/** + * Compute and return the source text (all equalities and deletions). + * @param {!Array.<!diff_match_patch.Diff>} diffs Array of diff tuples. + * @return {string} Source text. + */ +diff_match_patch.prototype.diff_text1 = function (diffs) { + var text = []; + for (var x = 0; x < diffs.length; x++) { + if (diffs[x][0] !== DIFF_INSERT) { + text[x] = diffs[x][1]; + } + } + return text.join(''); +}; + +/** + * Compute and return the destination text (all equalities and insertions). + * @param {!Array.<!diff_match_patch.Diff>} diffs Array of diff tuples. + * @return {string} Destination text. + */ +diff_match_patch.prototype.diff_text2 = function (diffs) { + var text = []; + for (var x = 0; x < diffs.length; x++) { + if (diffs[x][0] !== DIFF_DELETE) { + text[x] = diffs[x][1]; + } + } + return text.join(''); +}; + +/** + * Compute the Levenshtein distance; the number of inserted, deleted or + * substituted characters. + * @param {!Array.<!diff_match_patch.Diff>} diffs Array of diff tuples. + * @return {number} Number of changes. + */ +diff_match_patch.prototype.diff_levenshtein = function (diffs) { + var levenshtein = 0; + var insertions = 0; + var deletions = 0; + for (var x = 0; x < diffs.length; x++) { + var op = diffs[x][0]; + var data = diffs[x][1]; + switch (op) { + case DIFF_INSERT: + insertions += data.length; + break; + case DIFF_DELETE: + deletions += data.length; + break; + case DIFF_EQUAL: + // A deletion and an insertion is one substitution. + levenshtein += Math.max(insertions, deletions); + insertions = 0; + deletions = 0; + break; + } + } + levenshtein += Math.max(insertions, deletions); + return levenshtein; +}; + +/** + * Crush the diff into an encoded string which describes the operations + * required to transform text1 into text2. + * E.g. =3\t-2\t+ing -> Keep 3 chars, delete 2 chars, insert 'ing'. + * Operations are tab-separated. Inserted text is escaped using %xx notation. + * @param {!Array.<!diff_match_patch.Diff>} diffs Array of diff tuples. + * @return {string} Delta text. + */ +diff_match_patch.prototype.diff_toDelta = function (diffs) { + var text = []; + for (var x = 0; x < diffs.length; x++) { + switch (diffs[x][0]) { + case DIFF_INSERT: + text[x] = '+' + encodeURI(diffs[x][1]); + break; + case DIFF_DELETE: + text[x] = '-' + diffs[x][1].length; + break; + case DIFF_EQUAL: + text[x] = '=' + diffs[x][1].length; + break; + } + } + return text.join('\t').replace(/%20/g, ' '); +}; + +/** + * Given the original text1, and an encoded string which describes the + * operations required to transform text1 into text2, compute the full diff. + * @param {string} text1 Source string for the diff. + * @param {string} delta Delta text. + * @return {!Array.<!diff_match_patch.Diff>} Array of diff tuples. + * @throws {!Error} If invalid input. + */ +diff_match_patch.prototype.diff_fromDelta = function (text1, delta) { + var diffs = []; + var diffsLength = 0; // Keeping our own length var is faster in JS. + var pointer = 0; // Cursor in text1 + var tokens = delta.split(/\t/g); + for (var x = 0; x < tokens.length; x++) { + // Each token begins with a one character parameter which specifies the + // operation of this token (delete, insert, equality). + var param = tokens[x].substring(1); + switch (tokens[x].charAt(0)) { + case '+': + try { + diffs[diffsLength++] = new diff_match_patch.Diff(DIFF_INSERT, decodeURI(param)); + } catch (ex) { + // Malformed URI sequence. + throw new Error('Illegal escape in diff_fromDelta: ' + param); + } + break; + case '-': + // Fall through. + case '=': + var n = parseInt(param, 10); + if (isNaN(n) || n < 0) { + throw new Error('Invalid number in diff_fromDelta: ' + param); + } + var text = text1.substring(pointer, pointer += n); + if (tokens[x].charAt(0) == '=') { + diffs[diffsLength++] = new diff_match_patch.Diff(DIFF_EQUAL, text); + } else { + diffs[diffsLength++] = new diff_match_patch.Diff(DIFF_DELETE, text); + } + break; + default: + // Blank tokens are ok (from a trailing \t). + // Anything else is an error. + if (tokens[x]) { + throw new Error('Invalid diff operation in diff_fromDelta: ' + tokens[x]); + } + } + } + if (pointer != text1.length) { + throw new Error('Delta length (' + pointer + ') does not equal source text length (' + text1.length + ').'); + } + return diffs; +}; + +// MATCH FUNCTIONS + +/** + * Locate the best instance of 'pattern' in 'text' near 'loc'. + * @param {string} text The text to search. + * @param {string} pattern The pattern to search for. + * @param {number} loc The location to search around. + * @return {number} Best match index or -1. + */ +diff_match_patch.prototype.match_main = function (text, pattern, loc) { + // Check for null inputs. + if (text == null || pattern == null || loc == null) { + throw new Error('Null input. (match_main)'); + } + loc = Math.max(0, Math.min(loc, text.length)); + if (text == pattern) { + // Shortcut (potentially not guaranteed by the algorithm) + return 0; + } else if (!text.length) { + // Nothing to match. + return -1; + } else if (text.substring(loc, loc + pattern.length) == pattern) { + // Perfect match at the perfect spot! (Includes case of null pattern) + return loc; + } else { + // Do a fuzzy compare. + return this.match_bitap_(text, pattern, loc); + } +}; + +/** + * Locate the best instance of 'pattern' in 'text' near 'loc' using the + * Bitap algorithm. + * @param {string} text The text to search. + * @param {string} pattern The pattern to search for. + * @param {number} loc The location to search around. + * @return {number} Best match index or -1. + * @private + */ +diff_match_patch.prototype.match_bitap_ = function (text, pattern, loc) { + if (pattern.length > this.Match_MaxBits) { + throw new Error('Pattern too long for this browser.'); + } + + // Initialise the alphabet. + var s = this.match_alphabet_(pattern); + var dmp = this; // 'this' becomes 'window' in a closure. + + /** + * Compute and return the score for a match with e errors and x location. + * Accesses loc and pattern through being a closure. + * @param {number} e Number of errors in match. + * @param {number} x Location of match. + * @return {number} Overall score for match (0.0 = good, 1.0 = bad). + * @private + */ + function match_bitapScore_(e, x) { + var accuracy = e / pattern.length; + var proximity = Math.abs(loc - x); + if (!dmp.Match_Distance) { + // Dodge divide by zero error. + return proximity ? 1.0 : accuracy; + } + return accuracy + proximity / dmp.Match_Distance; + } + + // Highest score beyond which we give up. + var score_threshold = this.Match_Threshold; + // Is there a nearby exact match? (speedup) + var best_loc = text.indexOf(pattern, loc); + if (best_loc != -1) { + score_threshold = Math.min(match_bitapScore_(0, best_loc), score_threshold); + // What about in the other direction? (speedup) + best_loc = text.lastIndexOf(pattern, loc + pattern.length); + if (best_loc != -1) { + score_threshold = Math.min(match_bitapScore_(0, best_loc), score_threshold); + } + } + + // Initialise the bit arrays. + var matchmask = 1 << pattern.length - 1; + best_loc = -1; + var bin_min, bin_mid; + var bin_max = pattern.length + text.length; + var last_rd; + for (var d = 0; d < pattern.length; d++) { + // Scan for the best match; each iteration allows for one more error. + // Run a binary search to determine how far from 'loc' we can stray at this + // error level. + bin_min = 0; + bin_mid = bin_max; + while (bin_min < bin_mid) { + if (match_bitapScore_(d, loc + bin_mid) <= score_threshold) { + bin_min = bin_mid; + } else { + bin_max = bin_mid; + } + bin_mid = Math.floor((bin_max - bin_min) / 2 + bin_min); + } + // Use the result from this iteration as the maximum for the next. + bin_max = bin_mid; + var start = Math.max(1, loc - bin_mid + 1); + var finish = Math.min(loc + bin_mid, text.length) + pattern.length; + var rd = Array(finish + 2); + rd[finish + 1] = (1 << d) - 1; + for (var j = finish; j >= start; j--) { + // The alphabet (s) is a sparse hash, so the following line generates + // warnings. + var charMatch = s[text.charAt(j - 1)]; + if (d === 0) { + // First pass: exact match. + rd[j] = (rd[j + 1] << 1 | 1) & charMatch; + } else { + // Subsequent passes: fuzzy match. + rd[j] = (rd[j + 1] << 1 | 1) & charMatch | ((last_rd[j + 1] | last_rd[j]) << 1 | 1) | last_rd[j + 1]; + } + if (rd[j] & matchmask) { + var score = match_bitapScore_(d, j - 1); + // This match will almost certainly be better than any existing match. + // But check anyway. + if (score <= score_threshold) { + // Told you so. + score_threshold = score; + best_loc = j - 1; + if (best_loc > loc) { + // When passing loc, don't exceed our current distance from loc. + start = Math.max(1, 2 * loc - best_loc); + } else { + // Already passed loc, downhill from here on in. + break; + } + } + } + } + // No hope for a (better) match at greater error levels. + if (match_bitapScore_(d + 1, loc) > score_threshold) { + break; + } + last_rd = rd; + } + return best_loc; +}; + +/** + * Initialise the alphabet for the Bitap algorithm. + * @param {string} pattern The text to encode. + * @return {!Object} Hash of character locations. + * @private + */ +diff_match_patch.prototype.match_alphabet_ = function (pattern) { + var s = {}; + for (var i = 0; i < pattern.length; i++) { + s[pattern.charAt(i)] = 0; + } + for (var i = 0; i < pattern.length; i++) { + s[pattern.charAt(i)] |= 1 << pattern.length - i - 1; + } + return s; +}; + +// PATCH FUNCTIONS + +/** + * Increase the context until it is unique, + * but don't let the pattern expand beyond Match_MaxBits. + * @param {!diff_match_patch.patch_obj} patch The patch to grow. + * @param {string} text Source text. + * @private + */ +diff_match_patch.prototype.patch_addContext_ = function (patch, text) { + if (text.length == 0) { + return; + } + if (patch.start2 === null) { + throw Error('patch not initialized'); + } + var pattern = text.substring(patch.start2, patch.start2 + patch.length1); + var padding = 0; + + // Look for the first and last matches of pattern in text. If two different + // matches are found, increase the pattern length. + while (text.indexOf(pattern) != text.lastIndexOf(pattern) && pattern.length < this.Match_MaxBits - this.Patch_Margin - this.Patch_Margin) { + padding += this.Patch_Margin; + pattern = text.substring(patch.start2 - padding, patch.start2 + patch.length1 + padding); + } + // Add one chunk for good luck. + padding += this.Patch_Margin; + + // Add the prefix. + var prefix = text.substring(patch.start2 - padding, patch.start2); + if (prefix) { + patch.diffs.unshift(new diff_match_patch.Diff(DIFF_EQUAL, prefix)); + } + // Add the suffix. + var suffix = text.substring(patch.start2 + patch.length1, patch.start2 + patch.length1 + padding); + if (suffix) { + patch.diffs.push(new diff_match_patch.Diff(DIFF_EQUAL, suffix)); + } + + // Roll back the start points. + patch.start1 -= prefix.length; + patch.start2 -= prefix.length; + // Extend the lengths. + patch.length1 += prefix.length + suffix.length; + patch.length2 += prefix.length + suffix.length; +}; + +/** + * Compute a list of patches to turn text1 into text2. + * Use diffs if provided, otherwise compute it ourselves. + * There are four ways to call this function, depending on what data is + * available to the caller: + * Method 1: + * a = text1, b = text2 + * Method 2: + * a = diffs + * Method 3 (optimal): + * a = text1, b = diffs + * Method 4 (deprecated, use method 3): + * a = text1, b = text2, c = diffs + * + * @param {string|!Array.<!diff_match_patch.Diff>} a text1 (methods 1,3,4) or + * Array of diff tuples for text1 to text2 (method 2). + * @param {string|!Array.<!diff_match_patch.Diff>=} opt_b text2 (methods 1,4) or + * Array of diff tuples for text1 to text2 (method 3) or undefined (method 2). + * @param {string|!Array.<!diff_match_patch.Diff>=} opt_c Array of diff tuples + * for text1 to text2 (method 4) or undefined (methods 1,2,3). + * @return {!Array.<!diff_match_patch.patch_obj>} Array of Patch objects. + */ +diff_match_patch.prototype.patch_make = function (a, opt_b, opt_c) { + var text1, diffs; + if (typeof a == 'string' && typeof opt_b == 'string' && typeof opt_c == 'undefined') { + // Method 1: text1, text2 + // Compute diffs from text1 and text2. + text1 = /** @type {string} */a; + diffs = this.diff_main(text1, /** @type {string} */opt_b, true); + if (diffs.length > 2) { + this.diff_cleanupSemantic(diffs); + this.diff_cleanupEfficiency(diffs); + } + } else if (a && typeof a == 'object' && typeof opt_b == 'undefined' && typeof opt_c == 'undefined') { + // Method 2: diffs + // Compute text1 from diffs. + diffs = /** @type {!Array.<!diff_match_patch.Diff>} */a; + text1 = this.diff_text1(diffs); + } else if (typeof a == 'string' && opt_b && typeof opt_b == 'object' && typeof opt_c == 'undefined') { + // Method 3: text1, diffs + text1 = /** @type {string} */a; + diffs = /** @type {!Array.<!diff_match_patch.Diff>} */opt_b; + } else if (typeof a == 'string' && typeof opt_b == 'string' && opt_c && typeof opt_c == 'object') { + // Method 4: text1, text2, diffs + // text2 is not used. + text1 = /** @type {string} */a; + diffs = /** @type {!Array.<!diff_match_patch.Diff>} */opt_c; + } else { + throw new Error('Unknown call format to patch_make.'); + } + if (diffs.length === 0) { + return []; // Get rid of the null case. + } + var patches = []; + var patch = new diff_match_patch.patch_obj(); + var patchDiffLength = 0; // Keeping our own length var is faster in JS. + var char_count1 = 0; // Number of characters into the text1 string. + var char_count2 = 0; // Number of characters into the text2 string. + // Start with text1 (prepatch_text) and apply the diffs until we arrive at + // text2 (postpatch_text). We recreate the patches one by one to determine + // context info. + var prepatch_text = text1; + var postpatch_text = text1; + for (var x = 0; x < diffs.length; x++) { + var diff_type = diffs[x][0]; + var diff_text = diffs[x][1]; + if (!patchDiffLength && diff_type !== DIFF_EQUAL) { + // A new patch starts here. + patch.start1 = char_count1; + patch.start2 = char_count2; + } + switch (diff_type) { + case DIFF_INSERT: + patch.diffs[patchDiffLength++] = diffs[x]; + patch.length2 += diff_text.length; + postpatch_text = postpatch_text.substring(0, char_count2) + diff_text + postpatch_text.substring(char_count2); + break; + case DIFF_DELETE: + patch.length1 += diff_text.length; + patch.diffs[patchDiffLength++] = diffs[x]; + postpatch_text = postpatch_text.substring(0, char_count2) + postpatch_text.substring(char_count2 + diff_text.length); + break; + case DIFF_EQUAL: + if (diff_text.length <= 2 * this.Patch_Margin && patchDiffLength && diffs.length != x + 1) { + // Small equality inside a patch. + patch.diffs[patchDiffLength++] = diffs[x]; + patch.length1 += diff_text.length; + patch.length2 += diff_text.length; + } else if (diff_text.length >= 2 * this.Patch_Margin) { + // Time for a new patch. + if (patchDiffLength) { + this.patch_addContext_(patch, prepatch_text); + patches.push(patch); + patch = new diff_match_patch.patch_obj(); + patchDiffLength = 0; + // Unlike Unidiff, our patch lists have a rolling context. + // https://github.com/google/diff-match-patch/wiki/Unidiff + // Update prepatch text & pos to reflect the application of the + // just completed patch. + prepatch_text = postpatch_text; + char_count1 = char_count2; + } + } + break; + } + + // Update the current character count. + if (diff_type !== DIFF_INSERT) { + char_count1 += diff_text.length; + } + if (diff_type !== DIFF_DELETE) { + char_count2 += diff_text.length; + } + } + // Pick up the leftover patch if not empty. + if (patchDiffLength) { + this.patch_addContext_(patch, prepatch_text); + patches.push(patch); + } + return patches; +}; + +/** + * Given an array of patches, return another array that is identical. + * @param {!Array.<!diff_match_patch.patch_obj>} patches Array of Patch objects. + * @return {!Array.<!diff_match_patch.patch_obj>} Array of Patch objects. + */ +diff_match_patch.prototype.patch_deepCopy = function (patches) { + // Making deep copies is hard in JavaScript. + var patchesCopy = []; + for (var x = 0; x < patches.length; x++) { + var patch = patches[x]; + var patchCopy = new diff_match_patch.patch_obj(); + patchCopy.diffs = []; + for (var y = 0; y < patch.diffs.length; y++) { + patchCopy.diffs[y] = new diff_match_patch.Diff(patch.diffs[y][0], patch.diffs[y][1]); + } + patchCopy.start1 = patch.start1; + patchCopy.start2 = patch.start2; + patchCopy.length1 = patch.length1; + patchCopy.length2 = patch.length2; + patchesCopy[x] = patchCopy; + } + return patchesCopy; +}; + +/** + * Merge a set of patches onto the text. Return a patched text, as well + * as a list of true/false values indicating which patches were applied. + * @param {!Array.<!diff_match_patch.patch_obj>} patches Array of Patch objects. + * @param {string} text Old text. + * @return {!Array.<string|!Array.<boolean>>} Two element Array, containing the + * new text and an array of boolean values. + */ +diff_match_patch.prototype.patch_apply = function (patches, text) { + if (patches.length == 0) { + return [text, []]; + } + + // Deep copy the patches so that no changes are made to originals. + patches = this.patch_deepCopy(patches); + var nullPadding = this.patch_addPadding(patches); + text = nullPadding + text + nullPadding; + this.patch_splitMax(patches); + // delta keeps track of the offset between the expected and actual location + // of the previous patch. If there are patches expected at positions 10 and + // 20, but the first patch was found at 12, delta is 2 and the second patch + // has an effective expected position of 22. + var delta = 0; + var results = []; + for (var x = 0; x < patches.length; x++) { + var expected_loc = patches[x].start2 + delta; + var text1 = this.diff_text1(patches[x].diffs); + var start_loc; + var end_loc = -1; + if (text1.length > this.Match_MaxBits) { + // patch_splitMax will only provide an oversized pattern in the case of + // a monster delete. + start_loc = this.match_main(text, text1.substring(0, this.Match_MaxBits), expected_loc); + if (start_loc != -1) { + end_loc = this.match_main(text, text1.substring(text1.length - this.Match_MaxBits), expected_loc + text1.length - this.Match_MaxBits); + if (end_loc == -1 || start_loc >= end_loc) { + // Can't find valid trailing context. Drop this patch. + start_loc = -1; + } + } + } else { + start_loc = this.match_main(text, text1, expected_loc); + } + if (start_loc == -1) { + // No match found. :( + results[x] = false; + // Subtract the delta for this failed patch from subsequent patches. + delta -= patches[x].length2 - patches[x].length1; + } else { + // Found a match. :) + results[x] = true; + delta = start_loc - expected_loc; + var text2; + if (end_loc == -1) { + text2 = text.substring(start_loc, start_loc + text1.length); + } else { + text2 = text.substring(start_loc, end_loc + this.Match_MaxBits); + } + if (text1 == text2) { + // Perfect match, just shove the replacement text in. + text = text.substring(0, start_loc) + this.diff_text2(patches[x].diffs) + text.substring(start_loc + text1.length); + } else { + // Imperfect match. Run a diff to get a framework of equivalent + // indices. + var diffs = this.diff_main(text1, text2, false); + if (text1.length > this.Match_MaxBits && this.diff_levenshtein(diffs) / text1.length > this.Patch_DeleteThreshold) { + // The end points match, but the content is unacceptably bad. + results[x] = false; + } else { + this.diff_cleanupSemanticLossless(diffs); + var index1 = 0; + var index2; + for (var y = 0; y < patches[x].diffs.length; y++) { + var mod = patches[x].diffs[y]; + if (mod[0] !== DIFF_EQUAL) { + index2 = this.diff_xIndex(diffs, index1); + } + if (mod[0] === DIFF_INSERT) { + // Insertion + text = text.substring(0, start_loc + index2) + mod[1] + text.substring(start_loc + index2); + } else if (mod[0] === DIFF_DELETE) { + // Deletion + text = text.substring(0, start_loc + index2) + text.substring(start_loc + this.diff_xIndex(diffs, index1 + mod[1].length)); + } + if (mod[0] !== DIFF_DELETE) { + index1 += mod[1].length; + } + } + } + } + } + } + // Strip the padding off. + text = text.substring(nullPadding.length, text.length - nullPadding.length); + return [text, results]; +}; + +/** + * Add some padding on text start and end so that edges can match something. + * Intended to be called only from within patch_apply. + * @param {!Array.<!diff_match_patch.patch_obj>} patches Array of Patch objects. + * @return {string} The padding string added to each side. + */ +diff_match_patch.prototype.patch_addPadding = function (patches) { + var paddingLength = this.Patch_Margin; + var nullPadding = ''; + for (var x = 1; x <= paddingLength; x++) { + nullPadding += String.fromCharCode(x); + } + + // Bump all the patches forward. + for (var x = 0; x < patches.length; x++) { + patches[x].start1 += paddingLength; + patches[x].start2 += paddingLength; + } + + // Add some padding on start of first diff. + var patch = patches[0]; + var diffs = patch.diffs; + if (diffs.length == 0 || diffs[0][0] != DIFF_EQUAL) { + // Add nullPadding equality. + diffs.unshift(new diff_match_patch.Diff(DIFF_EQUAL, nullPadding)); + patch.start1 -= paddingLength; // Should be 0. + patch.start2 -= paddingLength; // Should be 0. + patch.length1 += paddingLength; + patch.length2 += paddingLength; + } else if (paddingLength > diffs[0][1].length) { + // Grow first equality. + var extraLength = paddingLength - diffs[0][1].length; + diffs[0][1] = nullPadding.substring(diffs[0][1].length) + diffs[0][1]; + patch.start1 -= extraLength; + patch.start2 -= extraLength; + patch.length1 += extraLength; + patch.length2 += extraLength; + } + + // Add some padding on end of last diff. + patch = patches[patches.length - 1]; + diffs = patch.diffs; + if (diffs.length == 0 || diffs[diffs.length - 1][0] != DIFF_EQUAL) { + // Add nullPadding equality. + diffs.push(new diff_match_patch.Diff(DIFF_EQUAL, nullPadding)); + patch.length1 += paddingLength; + patch.length2 += paddingLength; + } else if (paddingLength > diffs[diffs.length - 1][1].length) { + // Grow last equality. + var extraLength = paddingLength - diffs[diffs.length - 1][1].length; + diffs[diffs.length - 1][1] += nullPadding.substring(0, extraLength); + patch.length1 += extraLength; + patch.length2 += extraLength; + } + return nullPadding; +}; + +/** + * Look through the patches and break up any which are longer than the maximum + * limit of the match algorithm. + * Intended to be called only from within patch_apply. + * @param {!Array.<!diff_match_patch.patch_obj>} patches Array of Patch objects. + */ +diff_match_patch.prototype.patch_splitMax = function (patches) { + var patch_size = this.Match_MaxBits; + for (var x = 0; x < patches.length; x++) { + if (patches[x].length1 <= patch_size) { + continue; + } + var bigpatch = patches[x]; + // Remove the big old patch. + patches.splice(x--, 1); + var start1 = bigpatch.start1; + var start2 = bigpatch.start2; + var precontext = ''; + while (bigpatch.diffs.length !== 0) { + // Create one of several smaller patches. + var patch = new diff_match_patch.patch_obj(); + var empty = true; + patch.start1 = start1 - precontext.length; + patch.start2 = start2 - precontext.length; + if (precontext !== '') { + patch.length1 = patch.length2 = precontext.length; + patch.diffs.push(new diff_match_patch.Diff(DIFF_EQUAL, precontext)); + } + while (bigpatch.diffs.length !== 0 && patch.length1 < patch_size - this.Patch_Margin) { + var diff_type = bigpatch.diffs[0][0]; + var diff_text = bigpatch.diffs[0][1]; + if (diff_type === DIFF_INSERT) { + // Insertions are harmless. + patch.length2 += diff_text.length; + start2 += diff_text.length; + patch.diffs.push(bigpatch.diffs.shift()); + empty = false; + } else if (diff_type === DIFF_DELETE && patch.diffs.length == 1 && patch.diffs[0][0] == DIFF_EQUAL && diff_text.length > 2 * patch_size) { + // This is a large deletion. Let it pass in one chunk. + patch.length1 += diff_text.length; + start1 += diff_text.length; + empty = false; + patch.diffs.push(new diff_match_patch.Diff(diff_type, diff_text)); + bigpatch.diffs.shift(); + } else { + // Deletion or equality. Only take as much as we can stomach. + diff_text = diff_text.substring(0, patch_size - patch.length1 - this.Patch_Margin); + patch.length1 += diff_text.length; + start1 += diff_text.length; + if (diff_type === DIFF_EQUAL) { + patch.length2 += diff_text.length; + start2 += diff_text.length; + } else { + empty = false; + } + patch.diffs.push(new diff_match_patch.Diff(diff_type, diff_text)); + if (diff_text == bigpatch.diffs[0][1]) { + bigpatch.diffs.shift(); + } else { + bigpatch.diffs[0][1] = bigpatch.diffs[0][1].substring(diff_text.length); + } + } + } + // Compute the head context for the next patch. + precontext = this.diff_text2(patch.diffs); + precontext = precontext.substring(precontext.length - this.Patch_Margin); + // Append the end context for this patch. + var postcontext = this.diff_text1(bigpatch.diffs).substring(0, this.Patch_Margin); + if (postcontext !== '') { + patch.length1 += postcontext.length; + patch.length2 += postcontext.length; + if (patch.diffs.length !== 0 && patch.diffs[patch.diffs.length - 1][0] === DIFF_EQUAL) { + patch.diffs[patch.diffs.length - 1][1] += postcontext; + } else { + patch.diffs.push(new diff_match_patch.Diff(DIFF_EQUAL, postcontext)); + } + } + if (!empty) { + patches.splice(++x, 0, patch); + } + } + } +}; + +/** + * Take a list of patches and return a textual representation. + * @param {!Array.<!diff_match_patch.patch_obj>} patches Array of Patch objects. + * @return {string} Text representation of patches. + */ +diff_match_patch.prototype.patch_toText = function (patches) { + var text = []; + for (var x = 0; x < patches.length; x++) { + text[x] = patches[x]; + } + return text.join(''); +}; + +/** + * Parse a textual representation of patches and return a list of Patch objects. + * @param {string} textline Text representation of patches. + * @return {!Array.<!diff_match_patch.patch_obj>} Array of Patch objects. + * @throws {!Error} If invalid input. + */ +diff_match_patch.prototype.patch_fromText = function (textline) { + var patches = []; + if (!textline) { + return patches; + } + var text = textline.split('\n'); + var textPointer = 0; + var patchHeader = /^@@ -(\d+),?(\d*) \+(\d+),?(\d*) @@$/; + while (textPointer < text.length) { + var m = text[textPointer].match(patchHeader); + if (!m) { + throw new Error('Invalid patch string: ' + text[textPointer]); + } + var patch = new diff_match_patch.patch_obj(); + patches.push(patch); + patch.start1 = parseInt(m[1], 10); + if (m[2] === '') { + patch.start1--; + patch.length1 = 1; + } else if (m[2] == '0') { + patch.length1 = 0; + } else { + patch.start1--; + patch.length1 = parseInt(m[2], 10); + } + patch.start2 = parseInt(m[3], 10); + if (m[4] === '') { + patch.start2--; + patch.length2 = 1; + } else if (m[4] == '0') { + patch.length2 = 0; + } else { + patch.start2--; + patch.length2 = parseInt(m[4], 10); + } + textPointer++; + while (textPointer < text.length) { + var sign = text[textPointer].charAt(0); + try { + var line = decodeURI(text[textPointer].substring(1)); + } catch (ex) { + // Malformed URI sequence. + throw new Error('Illegal escape in patch_fromText: ' + line); + } + if (sign == '-') { + // Deletion. + patch.diffs.push(new diff_match_patch.Diff(DIFF_DELETE, line)); + } else if (sign == '+') { + // Insertion. + patch.diffs.push(new diff_match_patch.Diff(DIFF_INSERT, line)); + } else if (sign == ' ') { + // Minor equality. + patch.diffs.push(new diff_match_patch.Diff(DIFF_EQUAL, line)); + } else if (sign == '@') { + // Start of next patch. + break; + } else if (sign === '') { + // Blank line? Whatever. + } else { + // WTF? + throw new Error('Invalid patch mode "' + sign + '" in: ' + line); + } + textPointer++; + } + } + return patches; +}; + +/** + * Class representing one patch operation. + * @constructor + */ +diff_match_patch.patch_obj = function () { + /** @type {!Array.<!diff_match_patch.Diff>} */ + this.diffs = []; + /** @type {?number} */ + this.start1 = null; + /** @type {?number} */ + this.start2 = null; + /** @type {number} */ + this.length1 = 0; + /** @type {number} */ + this.length2 = 0; +}; + +/** + * Emulate GNU diff's format. + * Header: @@ -382,8 +481,9 @@ + * Indices are printed as 1-based, not 0-based. + * @return {string} The GNU diff string. + */ +diff_match_patch.patch_obj.prototype.toString = function () { + var coords1, coords2; + if (this.length1 === 0) { + coords1 = this.start1 + ',0'; + } else if (this.length1 == 1) { + coords1 = this.start1 + 1; + } else { + coords1 = this.start1 + 1 + ',' + this.length1; + } + if (this.length2 === 0) { + coords2 = this.start2 + ',0'; + } else if (this.length2 == 1) { + coords2 = this.start2 + 1; + } else { + coords2 = this.start2 + 1 + ',' + this.length2; + } + var text = ['@@ -' + coords1 + ' +' + coords2 + ' @@\n']; + var op; + // Escape the body of the patch with %xx notation. + for (var x = 0; x < this.diffs.length; x++) { + switch (this.diffs[x][0]) { + case DIFF_INSERT: + op = '+'; + break; + case DIFF_DELETE: + op = '-'; + break; + case DIFF_EQUAL: + op = ' '; + break; + } + text[x + 1] = op + encodeURI(this.diffs[x][1]) + '\n'; + } + return text.join('').replace(/%20/g, ' '); +}; + +// The following export code was added by @ForbesLindesay +module.exports = diff_match_patch; +module.exports.diff_match_patch = diff_match_patch; +module.exports.DIFF_DELETE = DIFF_DELETE; +module.exports.DIFF_INSERT = DIFF_INSERT; +module.exports.DIFF_EQUAL = DIFF_EQUAL; + +/***/ }), + +/***/ 408: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + "default": () => (/* binding */ method) +}); + +// EXTERNAL MODULE: ./src/ts/markdown/abcRender.ts +var abcRender = __webpack_require__(135); +// EXTERNAL MODULE: ./src/ts/markdown/adapterRender.ts +var adapterRender = __webpack_require__(840); +// EXTERNAL MODULE: ./src/ts/markdown/chartRender.ts +var chartRender = __webpack_require__(775); +// EXTERNAL MODULE: ./src/ts/markdown/codeRender.ts +var codeRender = __webpack_require__(428); +// EXTERNAL MODULE: ./src/ts/markdown/flowchartRender.ts +var flowchartRender = __webpack_require__(325); +// EXTERNAL MODULE: ./src/ts/markdown/graphvizRender.ts +var graphvizRender = __webpack_require__(483); +// EXTERNAL MODULE: ./src/ts/markdown/highlightRender.ts +var highlightRender = __webpack_require__(999); +;// CONCATENATED MODULE: ./src/ts/markdown/lazyLoadImageRender.ts +var lazyLoadImageRender = function (element) { + if (element === void 0) { element = document; } + var loadImg = function (it) { + var testImage = document.createElement("img"); + testImage.src = it.getAttribute("data-src"); + testImage.addEventListener("load", function () { + if (!it.getAttribute("style") && !it.getAttribute("class") && + !it.getAttribute("width") && !it.getAttribute("height")) { + if (testImage.naturalHeight > testImage.naturalWidth && + testImage.naturalWidth / testImage.naturalHeight < + document.querySelector(".vditor-reset").clientWidth / (window.innerHeight - 40) && + testImage.naturalHeight > (window.innerHeight - 40)) { + it.style.height = (window.innerHeight - 40) + "px"; + } + } + it.src = testImage.src; + }); + it.removeAttribute("data-src"); + }; + if (!("IntersectionObserver" in window)) { + element.querySelectorAll("img").forEach(function (imgElement) { + if (imgElement.getAttribute("data-src")) { + loadImg(imgElement); + } + }); + return false; + } + if (window.vditorImageIntersectionObserver) { + window.vditorImageIntersectionObserver.disconnect(); + element.querySelectorAll("img").forEach(function (imgElement) { + window.vditorImageIntersectionObserver.observe(imgElement); + }); + } + else { + window.vditorImageIntersectionObserver = new IntersectionObserver(function (entries) { + entries.forEach(function (entrie) { + if ((typeof entrie.isIntersecting === "undefined" + ? entrie.intersectionRatio !== 0 + : entrie.isIntersecting) + && entrie.target.getAttribute("data-src")) { + loadImg(entrie.target); + } + }); + }); + element.querySelectorAll("img").forEach(function (imgElement) { + window.vditorImageIntersectionObserver.observe(imgElement); + }); + } +}; + +// EXTERNAL MODULE: ./src/ts/markdown/mathRender.ts +var mathRender = __webpack_require__(472); +// EXTERNAL MODULE: ./src/ts/markdown/mediaRender.ts +var mediaRender = __webpack_require__(280); +// EXTERNAL MODULE: ./src/ts/markdown/mermaidRender.ts +var mermaidRender = __webpack_require__(637); +// EXTERNAL MODULE: ./src/ts/markdown/SMILESRender.ts +var SMILESRender = __webpack_require__(825); +// EXTERNAL MODULE: ./src/ts/markdown/markmapRender.ts +var markmapRender = __webpack_require__(11); +// EXTERNAL MODULE: ./src/ts/markdown/mindmapRender.ts +var mindmapRender = __webpack_require__(194); +// EXTERNAL MODULE: ./src/ts/markdown/outlineRender.ts +var outlineRender = __webpack_require__(436); +// EXTERNAL MODULE: ./src/ts/markdown/plantumlRender.ts +var plantumlRender = __webpack_require__(229); +// EXTERNAL MODULE: ./src/ts/constants.ts +var constants = __webpack_require__(145); +// EXTERNAL MODULE: ./src/ts/ui/setContentTheme.ts +var setContentTheme = __webpack_require__(538); +// EXTERNAL MODULE: ./src/ts/util/addScript.ts +var addScript = __webpack_require__(413); +// EXTERNAL MODULE: ./src/ts/util/hasClosest.ts +var hasClosest = __webpack_require__(106); +// EXTERNAL MODULE: ./src/ts/util/merge.ts +var merge = __webpack_require__(673); +;// CONCATENATED MODULE: ./src/ts/markdown/anchorRender.ts +var anchorRender = function (type) { + document.querySelectorAll(".vditor-anchor").forEach(function (anchor) { + if (type === 1) { + anchor.classList.add("vditor-anchor--left"); + } + anchor.onclick = function () { + var id = anchor.getAttribute("href").substr(1); + var top = document.getElementById("vditorAnchor-" + id).offsetTop; + document.querySelector("html").scrollTop = top; + }; + }); + window.onhashchange = function () { + var element = document.getElementById("vditorAnchor-" + decodeURIComponent(window.location.hash.substr(1))); + if (element) { + document.querySelector("html").scrollTop = element.offsetTop; + } + }; +}; + +// EXTERNAL MODULE: ./src/ts/markdown/setLute.ts +var setLute = __webpack_require__(214); +// EXTERNAL MODULE: ./src/ts/util/selection.ts +var selection = __webpack_require__(810); +;// CONCATENATED MODULE: ./src/ts/markdown/speechRender.ts + +var speechRender = function (element, lang) { + if (lang === void 0) { lang = "zh_CN"; } + if (typeof speechSynthesis === "undefined" || typeof SpeechSynthesisUtterance === "undefined") { + return; + } + var getVoice = function () { + var voices = speechSynthesis.getVoices(); + var currentVoice; + var defaultVoice; + voices.forEach(function (item) { + if (item.lang === lang.replace("_", "-")) { + currentVoice = item; + } + if (item.default) { + defaultVoice = item; + } + }); + if (!currentVoice) { + currentVoice = defaultVoice; + } + return currentVoice; + }; + var playSVG = '<svg><use xlink:href="#vditor-icon-play"></use></svg>'; + var pauseSVG = '<svg><use xlink:href="#vditor-icon-pause"></use></svg>'; + if (!document.getElementById("vditorIconScript")) { + playSVG = '<svg viewBox="0 0 32 32"><path d="M3.436 0l25.128 16-25.128 16v-32z"></path></svg>'; + pauseSVG = '<svg viewBox="0 0 32 32"><path d="M20.617 0h9.128v32h-9.128v-32zM2.255 32v-32h9.128v32h-9.128z"></path></svg>'; + } + var speechDom = document.querySelector(".vditor-speech"); + if (!speechDom) { + speechDom = document.createElement("button"); + speechDom.className = "vditor-speech"; + element.insertAdjacentElement("beforeend", speechDom); + if (speechSynthesis.onvoiceschanged !== undefined) { + speechSynthesis.onvoiceschanged = getVoice; + } + } + var voice = getVoice(); + var utterThis = new SpeechSynthesisUtterance(); + utterThis.voice = voice; + utterThis.onend = utterThis.onerror = function () { + speechDom.style.display = "none"; + speechSynthesis.cancel(); + speechDom.classList.remove("vditor-speech--current"); + speechDom.innerHTML = playSVG; + }; + element.addEventListener(window.ontouchstart !== undefined ? "touchend" : "click", function (event) { + var target = event.target; + if (target.classList.contains("vditor-speech") || target.parentElement.classList.contains("vditor-speech")) { + if (!speechDom.classList.contains("vditor-speech--current")) { + utterThis.text = speechDom.getAttribute("data-text"); + speechSynthesis.speak(utterThis); + speechDom.classList.add("vditor-speech--current"); + speechDom.innerHTML = pauseSVG; + } + else { + if (speechSynthesis.speaking) { + if (speechSynthesis.paused) { + speechSynthesis.resume(); + speechDom.innerHTML = pauseSVG; + } + else { + speechSynthesis.pause(); + speechDom.innerHTML = playSVG; + } + } + } + (0,selection/* setSelectionFocus */.Hc)(window.vditorSpeechRange); + element.focus(); + return; + } + speechDom.style.display = "none"; + speechSynthesis.cancel(); + speechDom.classList.remove("vditor-speech--current"); + speechDom.innerHTML = playSVG; + if (getSelection().rangeCount === 0) { + return; + } + var range = getSelection().getRangeAt(0); + var text = range.toString().trim(); + if (!text) { + return; + } + window.vditorSpeechRange = range.cloneRange(); + var rect = range.getBoundingClientRect(); + speechDom.innerHTML = playSVG; + speechDom.style.display = "block"; + speechDom.style.top = (rect.top + rect.height + document.querySelector("html").scrollTop - 20) + "px"; + if (window.ontouchstart !== undefined) { + speechDom.style.left = (event.changedTouches[event.changedTouches.length - 1].pageX + 2) + "px"; + } + else { + speechDom.style.left = (event.clientX + 2) + "px"; + } + speechDom.setAttribute("data-text", text); + }); +}; + +;// CONCATENATED MODULE: ./src/ts/markdown/previewRender.ts +var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +}; +var __generator = (undefined && undefined.__generator) || function (thisArg, body) { + var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; + function verb(n) { return function (v) { return step([n, v]); }; } + function step(op) { + if (f) throw new TypeError("Generator is already executing."); + while (g && (g = 0, op[0] && (_ = 0)), _) try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; + if (y = 0, t) op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: case 1: t = op; break; + case 4: _.label++; return { value: op[1], done: false }; + case 5: _.label++; y = op[1]; op = [0]; continue; + case 7: op = _.ops.pop(); _.trys.pop(); continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } + if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } + if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } + if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } + if (t[2]) _.ops.pop(); + _.trys.pop(); continue; + } + op = body.call(thisArg, _); + } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } + if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; + } +}; + + + + + + + + + + + + + + + + + + + + + + +var mergeOptions = function (options) { + var _a; + var defaultOption = { + anchor: 0, + cdn: constants/* Constants.CDN */.g.CDN, + customEmoji: {}, + emojiPath: "".concat(constants/* Constants.CDN */.g.CDN, "/dist/images/emoji"), + hljs: constants/* Constants.HLJS_OPTIONS */.g.HLJS_OPTIONS, + icon: "ant", + lang: "zh_CN", + markdown: constants/* Constants.MARKDOWN_OPTIONS */.g.MARKDOWN_OPTIONS, + math: constants/* Constants.MATH_OPTIONS */.g.MATH_OPTIONS, + mode: "light", + speech: { + enable: false, + }, + render: { + media: { + enable: true, + } + }, + theme: constants/* Constants.THEME_OPTIONS */.g.THEME_OPTIONS, + }; + if (options.cdn) { + if (!((_a = options.theme) === null || _a === void 0 ? void 0 : _a.path)) { + defaultOption.theme.path = "".concat(options.cdn, "/dist/css/content-theme"); + } + if (!options.emojiPath) { + defaultOption.emojiPath = "".concat(options.cdn, "/dist/images/emoji"); + } + } + return (0,merge/* merge */.T)(defaultOption, options); +}; +var md2html = function (mdText, options) { + var mergedOptions = mergeOptions(options); + return (0,addScript/* addScript */.G)("".concat(mergedOptions.cdn, "/dist/js/lute/lute.min.js"), "vditorLuteScript").then(function () { + var lute = (0,setLute/* setLute */.X)({ + autoSpace: mergedOptions.markdown.autoSpace, + gfmAutoLink: mergedOptions.markdown.gfmAutoLink, + codeBlockPreview: mergedOptions.markdown.codeBlockPreview, + emojiSite: mergedOptions.emojiPath, + emojis: mergedOptions.customEmoji, + fixTermTypo: mergedOptions.markdown.fixTermTypo, + footnotes: mergedOptions.markdown.footnotes, + headingAnchor: mergedOptions.anchor !== 0, + inlineMathDigit: mergedOptions.math.inlineDigit, + lazyLoadImage: mergedOptions.lazyLoadImage, + linkBase: mergedOptions.markdown.linkBase, + linkPrefix: mergedOptions.markdown.linkPrefix, + listStyle: mergedOptions.markdown.listStyle, + mark: mergedOptions.markdown.mark, + mathBlockPreview: mergedOptions.markdown.mathBlockPreview, + paragraphBeginningSpace: mergedOptions.markdown.paragraphBeginningSpace, + sanitize: mergedOptions.markdown.sanitize, + toc: mergedOptions.markdown.toc, + }); + if (options === null || options === void 0 ? void 0 : options.renderers) { + lute.SetJSRenderers({ + renderers: { + Md2HTML: options.renderers, + }, + }); + } + lute.SetHeadingID(true); + return lute.Md2HTML(mdText); + }); +}; +var previewRender = function (previewElement, markdown, options) { return __awaiter(void 0, void 0, void 0, function () { + var mergedOptions, html, i18nScriptPrefix, i18nScriptID_1; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + mergedOptions = mergeOptions(options); + return [4 /*yield*/, md2html(markdown, mergedOptions)]; + case 1: + html = _a.sent(); + if (mergedOptions.transform) { + html = mergedOptions.transform(html); + } + previewElement.innerHTML = html; + previewElement.classList.add("vditor-reset"); + if (!!mergedOptions.i18n) return [3 /*break*/, 5]; + if (!!["de_DE", "en_US", "fr_FR", "pt_BR", "ja_JP", "ko_KR", "ru_RU", "sv_SE", "zh_CN", "zh_TW"].includes(mergedOptions.lang)) return [3 /*break*/, 2]; + throw new Error("options.lang error, see https://ld246.com/article/1549638745630#options"); + case 2: + i18nScriptPrefix = "vditorI18nScript"; + i18nScriptID_1 = i18nScriptPrefix + mergedOptions.lang; + document.querySelectorAll("head script[id^=\"".concat(i18nScriptPrefix, "\"]")).forEach(function (el) { + if (el.id !== i18nScriptID_1) { + document.head.removeChild(el); + } + }); + return [4 /*yield*/, (0,addScript/* addScript */.G)("".concat(mergedOptions.cdn, "/dist/js/i18n/").concat(mergedOptions.lang, ".js"), i18nScriptID_1)]; + case 3: + _a.sent(); + _a.label = 4; + case 4: return [3 /*break*/, 6]; + case 5: + window.VditorI18n = mergedOptions.i18n; + _a.label = 6; + case 6: + if (!mergedOptions.icon) return [3 /*break*/, 8]; + return [4 /*yield*/, (0,addScript/* addScript */.G)("".concat(mergedOptions.cdn, "/dist/js/icons/").concat(mergedOptions.icon, ".js"), "vditorIconScript")]; + case 7: + _a.sent(); + _a.label = 8; + case 8: + (0,setContentTheme/* setContentTheme */.Z)(mergedOptions.theme.current, mergedOptions.theme.path); + if (mergedOptions.anchor === 1) { + previewElement.classList.add("vditor-reset--anchor"); + } + (0,codeRender/* codeRender */.O)(previewElement, mergedOptions.hljs); + (0,highlightRender/* highlightRender */.s)(mergedOptions.hljs, previewElement, mergedOptions.cdn); + (0,mathRender/* mathRender */.H)(previewElement, { + cdn: mergedOptions.cdn, + math: mergedOptions.math, + }); + (0,mermaidRender/* mermaidRender */.i)(previewElement, mergedOptions.cdn, mergedOptions.mode); + (0,SMILESRender/* SMILESRender */.J)(previewElement, mergedOptions.cdn, mergedOptions.mode); + (0,markmapRender/* markmapRender */.K)(previewElement, mergedOptions.cdn); + (0,flowchartRender/* flowchartRender */.P)(previewElement, mergedOptions.cdn); + (0,graphvizRender/* graphvizRender */.v)(previewElement, mergedOptions.cdn); + (0,chartRender/* chartRender */.p)(previewElement, mergedOptions.cdn, mergedOptions.mode); + (0,mindmapRender/* mindmapRender */.P)(previewElement, mergedOptions.cdn, mergedOptions.mode); + (0,plantumlRender/* plantumlRender */.B)(previewElement, mergedOptions.cdn); + (0,abcRender/* abcRender */.Q)(previewElement, mergedOptions.cdn); + if (mergedOptions.render.media.enable) { + (0,mediaRender/* mediaRender */.Y)(previewElement); + } + if (mergedOptions.speech.enable) { + speechRender(previewElement); + } + if (mergedOptions.anchor !== 0) { + anchorRender(mergedOptions.anchor); + } + if (mergedOptions.after) { + mergedOptions.after(); + } + if (mergedOptions.lazyLoadImage) { + lazyLoadImageRender(previewElement); + } + previewElement.addEventListener("click", function (event) { + var spanElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(event.target, "SPAN"); + if (spanElement && (0,hasClosest/* hasClosestByClassName */.fb)(spanElement, "vditor-toc")) { + var headingElement = previewElement.querySelector("#" + spanElement.getAttribute("data-target-id")); + if (headingElement) { + window.scrollTo(window.scrollX, headingElement.offsetTop); + } + return; + } + }); + return [2 /*return*/]; + } + }); +}); }; + +// EXTERNAL MODULE: ./src/ts/preview/image.ts +var preview_image = __webpack_require__(190); +// EXTERNAL MODULE: ./src/ts/ui/setCodeTheme.ts +var setCodeTheme = __webpack_require__(580); +;// CONCATENATED MODULE: ./src/method.ts + + + + + + + + + + + + + + + + + + + + + +var Vditor = /** @class */ (function () { + function Vditor() { + } + /** 点击图片放大 */ + Vditor.adapterRender = adapterRender; + /** 点击图片放大 */ + Vditor.previewImage = preview_image/* previewImage */.E; + /** 为 element 中的代码块添加复制按钮 */ + Vditor.codeRender = codeRender/* codeRender */.O; + /** 对 graphviz 进行渲染 */ + Vditor.graphvizRender = graphvizRender/* graphvizRender */.v; + /** 为 element 中的代码块进行高亮渲染 */ + Vditor.highlightRender = highlightRender/* highlightRender */.s; + /** 对数学公式进行渲染 */ + Vditor.mathRender = mathRender/* mathRender */.H; + /** 流程图/时序图/甘特图渲染 */ + Vditor.mermaidRender = mermaidRender/* mermaidRender */.i; + /** 化学物质结构渲染 */ + Vditor.SMILESRender = SMILESRender/* SMILESRender */.J; + /** 支持 markdown 的思维导图 */ + Vditor.markmapRender = markmapRender/* markmapRender */.K; + /** flowchart.js 渲染 */ + Vditor.flowchartRender = flowchartRender/* flowchartRender */.P; + /** 图表渲染 */ + Vditor.chartRender = chartRender/* chartRender */.p; + /** 五线谱渲染 */ + Vditor.abcRender = abcRender/* abcRender */.Q; + /** 脑图渲染 */ + Vditor.mindmapRender = mindmapRender/* mindmapRender */.P; + /** plantuml渲染 */ + Vditor.plantumlRender = plantumlRender/* plantumlRender */.B; + /** 大纲渲染 */ + Vditor.outlineRender = outlineRender/* outlineRender */.k; + /** 为[特定链接](https://github.com/Vanessa219/vditor/issues/7)分别渲染为视频、音频、嵌入的 iframe */ + Vditor.mediaRender = mediaRender/* mediaRender */.Y; + /** 对选中的文字进行阅读 */ + Vditor.speechRender = speechRender; + /** 对图片进行懒加载 */ + Vditor.lazyLoadImageRender = lazyLoadImageRender; + /** Markdown 文本转换为 HTML,该方法需使用[异步编程](https://ld246.com/article/1546828434083?r=Vaness) */ + Vditor.md2html = md2html; + /** 页面 Markdown 文章渲染 */ + Vditor.preview = previewRender; + /** 设置代码主题 */ + Vditor.setCodeTheme = setCodeTheme/* setCodeTheme */.Y; + /** 设置内容主题 */ + Vditor.setContentTheme = setContentTheme/* setContentTheme */.Z; + return Vditor; +}()); +/* harmony default export */ const method = (Vditor); + + +/***/ }), + +/***/ 145: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "H": () => (/* binding */ _VDITOR_VERSION), +/* harmony export */ "g": () => (/* binding */ Constants) +/* harmony export */ }); +var _VDITOR_VERSION = "3.11.1"; + +var Constants = /** @class */ (function () { + function Constants() { + } + Constants.ZWSP = "\u200b"; + Constants.DROP_EDITOR = "application/editor"; + Constants.MOBILE_WIDTH = 520; + Constants.CLASS_MENU_DISABLED = "vditor-menu--disabled"; + Constants.EDIT_TOOLBARS = ["emoji", "headings", "bold", "italic", "strike", "link", "list", + "ordered-list", "outdent", "indent", "check", "line", "quote", "code", "inline-code", "insert-after", + "insert-before", "upload", "record", "table"]; + Constants.CODE_THEME = ["a11y-dark", "agate", "an-old-hope", "androidstudio", + "arta", "atom-one-dark", "atom-one-dark-reasonable", "base16/3024", "base16/apathy", "base16/apprentice", "base16/ashes", "base16/atelier-cave", "base16/atelier-dune", + "base16/atelier-estuary", "base16/atelier-forest", "base16/atelier-heath", "base16/atelier-lakeside", "base16/atelier-plateau", "base16/atelier-savanna", "base16/atelier-seaside", "base16/atelier-sulphurpool", + "base16/atlas", "base16/bespin", "base16/black-metal", "base16/black-metal-bathory", "base16/black-metal-burzum", "base16/black-metal-dark-funeral", "base16/black-metal-gorgoroth", "base16/black-metal-immortal", "base16/black-metal-khold", "base16/black-metal-marduk", "base16/black-metal-mayhem", "base16/black-metal-nile", "base16/black-metal-venom", "base16/brewer", "base16/bright", "base16/brogrammer", + "base16/brush-trees-dark", "base16/chalk", "base16/circus", "base16/classic-dark", "base16/codeschool", "base16/colors", "base16/danqing", "base16/darcula", "base16/dark-violet", + "base16/darkmoss", "base16/darktooth", "base16/decaf", "base16/default-dark", "base16/dracula", "base16/edge-dark", "base16/eighties", "base16/embers", "base16/equilibrium-dark", + "base16/equilibrium-gray-dark", "base16/espresso", "base16/eva", "base16/eva-dim", "base16/flat", "base16/framer", "base16/gigavolt", "base16/google-dark", "base16/grayscale-dark", "base16/green-screen", "base16/gruvbox-dark-hard", "base16/gruvbox-dark-medium", + "base16/gruvbox-dark-pale", "base16/gruvbox-dark-soft", "base16/hardcore", "base16/harmonic16-dark", "base16/heetch-dark", "base16/helios", "base16/hopscotch", "base16/horizon-dark", "base16/humanoid-dark", "base16/ia-dark", "base16/icy-dark", "base16/ir-black", "base16/isotope", + "base16/kimber", "base16/london-tube", "base16/macintosh", "base16/marrakesh", "base16/materia", "base16/material", "base16/material-darker", "base16/material-palenight", "base16/material-vivid", + "base16/mellow-purple", "base16/mocha", "base16/monokai", "base16/nebula", "base16/nord", "base16/nova", "base16/ocean", "base16/oceanicnext", "base16/onedark", "base16/outrun-dark", + "base16/papercolor-dark", "base16/paraiso", "base16/pasque", "base16/phd", "base16/pico", "base16/pop", "base16/porple", "base16/qualia", "base16/railscasts", "base16/rebecca", + "base16/ros-pine", "base16/ros-pine-moon", "base16/sandcastle", "base16/seti-ui", "base16/silk-dark", "base16/snazzy", "base16/solar-flare", "base16/solarized-dark", "base16/spacemacs", "base16/summercamp", "base16/summerfruit-dark", + "base16/synth-midnight-terminal-dark", "base16/tango", "base16/tender", "base16/tomorrow-night", "base16/twilight", "base16/unikitty-dark", "base16/vulcan", + "base16/windows-10", "base16/windows-95", "base16/windows-high-contrast", "base16/windows-nt", "base16/woodland", "base16/xcode-dusk", "base16/zenburn", "codepen-embed", "dark", + "devibeans", "far", "felipec", "github-dark", "github-dark-dimmed", "gml", "gradient-dark", "hybrid", "ir-black", "isbl-editor-dark", "kimbie-dark", "lioshi", + "monokai", "monokai-sublime", "night-owl", "nnfx-dark", "nord", "obsidian", "panda-syntax-dark", "paraiso-dark", "pojoaque", "qtcreator-dark", "rainbow", "shades-of-purple", "srcery", "stackoverflow-dark", + "sunburst", "tomorrow-night-blue", "tomorrow-night-bright", "tokyo-night-dark", "vs2015", "xt256", + "ant-design", + "a11y-light", "arduino-light", "ascetic", "atom-one-light", "base16/atelier-cave-light", + "base16/atelier-dune-light", "base16/atelier-estuary-light", "base16/atelier-forest-light", "base16/atelier-heath-light", + "base16/atelier-lakeside-light", "base16/atelier-plateau-light", "base16/atelier-savanna-light", "base16/atelier-seaside-light", "base16/atelier-sulphurpool-light", "base16/brush-trees", + "base16/classic-light", "base16/cupcake", "base16/cupertino", "base16/default-light", "base16/dirtysea", "base16/edge-light", "base16/equilibrium-gray-light", "base16/equilibrium-light", + "base16/fruit-soda", "base16/github", "base16/google-light", "base16/grayscale-light", "base16/gruvbox-light-hard", "base16/gruvbox-light-medium", "base16/gruvbox-light-soft", + "base16/harmonic16-light", "base16/heetch-light", "base16/humanoid-light", "base16/horizon-light", "base16/ia-light", "base16/material-lighter", "base16/mexico-light", + "base16/one-light", "base16/papercolor-light", "base16/ros-pine-dawn", "base16/sagelight", "base16/shapeshifter", + "base16/silk-light", "base16/solar-flare-light", "base16/solarized-light", "base16/summerfruit-light", "base16/synth-midnight-terminal-light", "base16/tomorrow", + "base16/unikitty-light", "base16/windows-10-light", "base16/windows-95-light", "base16/windows-high-contrast-light", "brown-paper", "base16/windows-nt-light", + "color-brewer", "docco", "foundation", "github", "googlecode", "gradient-light", "grayscale", "idea", "intellij-light", "isbl-editor-light", "kimbie-light", + "lightfair", "magula", "mono-blue", "nnfx-light", "panda-syntax-light", "paraiso-light", "purebasic", "qtcreator-light", "routeros", "school-book", + "stackoverflow-light", "tokyo-night-light", "vs", "xcode", "default"]; + Constants.ALIAS_CODE_LANGUAGES = [ + // 自定义 + "abc", "plantuml", "mermaid", "flowchart", "echarts", "mindmap", "graphviz", "math", "markmap", "smiles", + // 别名 + "js", "ts", "html", "toml", "c#", "bat" + ]; + Constants.CDN = "https://unpkg.com/vditor@".concat("3.11.1"); + Constants.MARKDOWN_OPTIONS = { + autoSpace: false, + gfmAutoLink: true, + codeBlockPreview: true, + fixTermTypo: false, + footnotes: true, + linkBase: "", + linkPrefix: "", + listStyle: false, + mark: false, + mathBlockPreview: true, + paragraphBeginningSpace: false, + sanitize: true, + toc: false, + }; + Constants.HLJS_OPTIONS = { + enable: true, + lineNumber: false, + defaultLang: "", + style: "github", + }; + Constants.MATH_OPTIONS = { + engine: "KaTeX", + inlineDigit: false, + macros: {}, + }; + Constants.THEME_OPTIONS = { + current: "light", + list: { + "ant-design": "Ant Design", + "dark": "Dark", + "light": "Light", + "wechat": "WeChat", + }, + path: "".concat(Constants.CDN, "/dist/css/content-theme"), + }; + return Constants; +}()); + + + +/***/ }), + +/***/ 825: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "J": () => (/* binding */ SMILESRender) +/* harmony export */ }); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); +/* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(413); +/* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(840); +/* harmony import */ var _util_function__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(494); + + + + +var SMILESRender = function (element, cdn, theme) { + if (element === void 0) { element = document; } + if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; } + var SMILESElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.SMILESRenderAdapter.getElements(element); + if (SMILESElements.length > 0) { + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/smiles-drawer/smiles-drawer.min.js?v=2.1.7"), "vditorAbcjsScript").then(function () { + var sd = new SmiDrawer({}, {}); + SMILESElements.forEach(function (item) { + var code = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.SMILESRenderAdapter.getCode(item).trim(); + if (item.getAttribute("data-processed") === "true" || code.trim() === "") { + return; + } + var id = "smiles" + (0,_util_function__WEBPACK_IMPORTED_MODULE_3__/* .genUUID */ .Wb)(); + item.innerHTML = "<svg id=\"".concat(id, "\"></svg>"); + sd.draw(code, '#' + id, theme === "dark" ? "dark" : undefined); + item.setAttribute("data-processed", "true"); + }); + }); + } +}; + + +/***/ }), + +/***/ 135: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "Q": () => (/* binding */ abcRender) +/* harmony export */ }); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); +/* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(413); +/* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(840); + + + +var abcRender = function (element, cdn) { + if (element === void 0) { element = document; } + if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; } + var abcElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.abcRenderAdapter.getElements(element); + if (abcElements.length > 0) { + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/abcjs/abcjs_basic.min.js"), "vditorAbcjsScript").then(function () { + abcElements.forEach(function (item) { + if (item.parentElement.classList.contains("vditor-wysiwyg__pre") || + item.parentElement.classList.contains("vditor-ir__marker--pre")) { + return; + } + if (item.getAttribute("data-processed") === "true") { + return; + } + ABCJS.renderAbc(item, _adapterRender__WEBPACK_IMPORTED_MODULE_1__.abcRenderAdapter.getCode(item).trim()); + item.style.overflowX = "auto"; + item.setAttribute("data-processed", "true"); + }); + }); + } +}; + + +/***/ }), + +/***/ 840: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "mathRenderAdapter": () => (/* binding */ mathRenderAdapter), +/* harmony export */ "SMILESRenderAdapter": () => (/* binding */ SMILESRenderAdapter), +/* harmony export */ "mermaidRenderAdapter": () => (/* binding */ mermaidRenderAdapter), +/* harmony export */ "markmapRenderAdapter": () => (/* binding */ markmapRenderAdapter), +/* harmony export */ "mindmapRenderAdapter": () => (/* binding */ mindmapRenderAdapter), +/* harmony export */ "chartRenderAdapter": () => (/* binding */ chartRenderAdapter), +/* harmony export */ "abcRenderAdapter": () => (/* binding */ abcRenderAdapter), +/* harmony export */ "graphvizRenderAdapter": () => (/* binding */ graphvizRenderAdapter), +/* harmony export */ "flowchartRenderAdapter": () => (/* binding */ flowchartRenderAdapter), +/* harmony export */ "plantumlRenderAdapter": () => (/* binding */ plantumlRenderAdapter) +/* harmony export */ }); +var mathRenderAdapter = { + getCode: function (el) { return el.textContent; }, + getElements: function (element) { return element.querySelectorAll(".language-math"); }, +}; +var SMILESRenderAdapter = { + getCode: function (el) { return el.textContent; }, + getElements: function (element) { return element.querySelectorAll(".language-smiles"); }, +}; +var mermaidRenderAdapter = { + /** 不仅要返回code,并且需要将 code 设置为 el 的 innerHTML */ + getCode: function (el) { return el.textContent; }, + getElements: function (element) { return element.querySelectorAll(".language-mermaid"); }, +}; +var markmapRenderAdapter = { + getCode: function (el) { return el.textContent; }, + getElements: function (element) { return element.querySelectorAll(".language-markmap"); }, +}; +var mindmapRenderAdapter = { + getCode: function (el) { return el.getAttribute("data-code"); }, + getElements: function (el) { return el.querySelectorAll(".language-mindmap"); }, +}; +var chartRenderAdapter = { + getCode: function (el) { return el.innerText; }, + getElements: function (el) { return el.querySelectorAll(".language-echarts"); }, +}; +var abcRenderAdapter = { + getCode: function (el) { return el.textContent; }, + getElements: function (el) { return el.querySelectorAll(".language-abc"); }, +}; +var graphvizRenderAdapter = { + getCode: function (el) { return el.textContent; }, + getElements: function (el) { return el.querySelectorAll(".language-graphviz"); }, +}; +var flowchartRenderAdapter = { + getCode: function (el) { return el.textContent; }, + getElements: function (el) { return el.querySelectorAll(".language-flowchart"); }, +}; +var plantumlRenderAdapter = { + getCode: function (el) { return el.textContent; }, + getElements: function (el) { return el.querySelectorAll(".language-plantuml"); }, +}; + + +/***/ }), + +/***/ 775: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "p": () => (/* binding */ chartRender) +/* harmony export */ }); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); +/* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(413); +/* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(840); +/* harmony import */ var _util_function__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(494); +var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +}; +var __generator = (undefined && undefined.__generator) || function (thisArg, body) { + var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; + function verb(n) { return function (v) { return step([n, v]); }; } + function step(op) { + if (f) throw new TypeError("Generator is already executing."); + while (g && (g = 0, op[0] && (_ = 0)), _) try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; + if (y = 0, t) op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: case 1: t = op; break; + case 4: _.label++; return { value: op[1], done: false }; + case 5: _.label++; y = op[1]; op = [0]; continue; + case 7: op = _.ops.pop(); _.trys.pop(); continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } + if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } + if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } + if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } + if (t[2]) _.ops.pop(); + _.trys.pop(); continue; + } + op = body.call(thisArg, _); + } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } + if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; + } +}; + + + + +var chartRender = function (element, cdn, theme) { + if (element === void 0) { element = document; } + if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; } + var echartsElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.chartRenderAdapter.getElements(element); + if (echartsElements.length > 0) { + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/echarts/echarts.min.js?v=5.5.1"), "vditorEchartsScript").then(function () { + echartsElements.forEach(function (e) { return __awaiter(void 0, void 0, void 0, function () { + var text, option, error_1; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + if (e.parentElement.classList.contains("vditor-wysiwyg__pre") || + e.parentElement.classList.contains("vditor-ir__marker--pre")) { + return [2 /*return*/]; + } + text = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.chartRenderAdapter.getCode(e).trim(); + if (!text) { + return [2 /*return*/]; + } + _a.label = 1; + case 1: + _a.trys.push([1, 3, , 4]); + if (e.getAttribute("data-processed") === "true") { + return [2 /*return*/]; + } + return [4 /*yield*/, (0,_util_function__WEBPACK_IMPORTED_MODULE_3__/* .looseJsonParse */ .Qf)(text)]; + case 2: + option = _a.sent(); + echarts.init(e, theme === "dark" ? "dark" : undefined).setOption(option); + e.setAttribute("data-processed", "true"); + return [3 /*break*/, 4]; + case 3: + error_1 = _a.sent(); + e.className = "vditor-reset--error"; + e.innerHTML = "echarts render error: <br>".concat(error_1); + return [3 /*break*/, 4]; + case 4: return [2 /*return*/]; + } + }); + }); }); + }); + } +}; + + +/***/ }), + +/***/ 428: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "O": () => (/* binding */ codeRender) +/* harmony export */ }); +/* harmony import */ var _util_code160to32__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(105); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); + + +var codeRender = function (element, option) { + Array.from(element.querySelectorAll("pre > code")).filter(function (e, index) { + if (e.parentElement.classList.contains("vditor-wysiwyg__pre") || + e.parentElement.classList.contains("vditor-ir__marker--pre")) { + return false; + } + if (e.classList.contains("language-mermaid") || e.classList.contains("language-flowchart") || + e.classList.contains("language-echarts") || e.classList.contains("language-mindmap") || + e.classList.contains("language-plantuml") || e.classList.contains("language-markmap") || + e.classList.contains("language-abc") || e.classList.contains("language-graphviz") || + e.classList.contains("language-math") || e.classList.contains("language-smiles")) { + return false; + } + if (e.style.maxHeight.indexOf("px") > -1) { + return false; + } + // 避免预览区在渲染后由于代码块过多产生性能问题 https://github.com/b3log/vditor/issues/67 + if (element.classList.contains("vditor-preview") && index > 5) { + return false; + } + return true; + }).forEach(function (e) { + var _a, _b, _c; + var codeText = e.innerText; + if (e.classList.contains("highlight-chroma")) { + var codeElement = e.cloneNode(true); + codeElement.querySelectorAll(".highlight-ln").forEach(function (item) { + item.remove(); + }); + codeText = codeElement.innerText; + } + else if (codeText.endsWith("\n")) { + codeText = codeText.substr(0, codeText.length - 1); + } + var iconHTML = '<svg><use xlink:href="#vditor-icon-copy"></use></svg>'; + if (!document.getElementById("vditorIconScript")) { + iconHTML = '<svg viewBox="0 0 32 32"><path d="M22.545-0h-17.455c-1.6 0-2.909 1.309-2.909 2.909v20.364h2.909v-20.364h17.455v-2.909zM26.909 5.818h-16c-1.6 0-2.909 1.309-2.909 2.909v20.364c0 1.6 1.309 2.909 2.909 2.909h16c1.6 0 2.909-1.309 2.909-2.909v-20.364c0-1.6-1.309-2.909-2.909-2.909zM26.909 29.091h-16v-20.364h16v20.364z"></path></svg>'; + } + var divElement = document.createElement("div"); + divElement.className = "vditor-copy"; + divElement.innerHTML = "<span aria-label=\"".concat(((_a = window.VditorI18n) === null || _a === void 0 ? void 0 : _a.copy) || "复制", "\"\nonmouseover=\"this.setAttribute('aria-label', '").concat(((_b = window.VditorI18n) === null || _b === void 0 ? void 0 : _b.copy) || "复制", "')\"\nclass=\"vditor-tooltipped vditor-tooltipped__w\"\nonclick=\"event.stopPropagation();this.previousElementSibling.select();document.execCommand('copy');this.setAttribute('aria-label', '").concat(((_c = window.VditorI18n) === null || _c === void 0 ? void 0 : _c.copied) || "已复制", "');this.previousElementSibling.blur()\">").concat(iconHTML, "</span>"); + var textarea = document.createElement("textarea"); + textarea.value = (0,_util_code160to32__WEBPACK_IMPORTED_MODULE_1__/* .code160to32 */ .X)(codeText); + divElement.insertAdjacentElement("afterbegin", textarea); + if (option && option.renderMenu) { + option.renderMenu(e, divElement); + } + e.before(divElement); + e.style.maxHeight = (window.outerHeight - 40) + "px"; + // https://github.com/Vanessa219/vditor/issues/1356 + e.insertAdjacentHTML("afterend", "<span style=\"position: absolute\">".concat(_constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.ZWSP */ .g.ZWSP, "</span>")); + }); +}; + + +/***/ }), + +/***/ 325: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "P": () => (/* binding */ flowchartRender) +/* harmony export */ }); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); +/* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(413); +/* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(840); + + + +var flowchartRender = function (element, cdn) { + if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; } + var flowchartElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.flowchartRenderAdapter.getElements(element); + if (flowchartElements.length === 0) { + return; + } + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/flowchart.js/flowchart.min.js"), "vditorFlowchartScript").then(function () { + flowchartElements.forEach(function (item) { + if (item.getAttribute("data-processed") === "true") { + return; + } + var flowchartObj = flowchart.parse(_adapterRender__WEBPACK_IMPORTED_MODULE_1__.flowchartRenderAdapter.getCode(item)); + item.innerHTML = ""; + flowchartObj.drawSVG(item); + item.setAttribute("data-processed", "true"); + }); + }); +}; + + +/***/ }), + +/***/ 483: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "v": () => (/* binding */ graphvizRender) +/* harmony export */ }); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); +/* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(413); +/* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(840); + + + +var graphvizRender = function (element, cdn) { + if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; } + var graphvizElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.graphvizRenderAdapter.getElements(element); + if (graphvizElements.length === 0) { + return; + } + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/graphviz/viz.js"), "vditorGraphVizScript").then(function () { + graphvizElements.forEach(function (e) { + var code = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.graphvizRenderAdapter.getCode(e); + if (e.parentElement.classList.contains("vditor-wysiwyg__pre") || + e.parentElement.classList.contains("vditor-ir__marker--pre")) { + return; + } + if (e.getAttribute("data-processed") === "true" || code.trim() === "") { + return; + } + try { + var blob = new Blob(["importScripts('".concat(document.getElementById("vditorGraphVizScript").src.replace("viz.js", "full.render.js"), "');")], { type: "application/javascript" }); + var url = window.URL || window.webkitURL; + var blobUrl = url.createObjectURL(blob); + var worker = new Worker(blobUrl); + new Viz({ worker: worker }) + .renderSVGElement(code).then(function (result) { + e.innerHTML = result.outerHTML; + }).catch(function (error) { + e.innerHTML = "graphviz render error: <br>".concat(error); + e.className = "vditor-reset--error"; + }); + } + catch (e) { + console.error("graphviz error", e); + } + e.setAttribute("data-processed", "true"); + }); + }); +}; + + +/***/ }), + +/***/ 999: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "s": () => (/* binding */ highlightRender) +/* harmony export */ }); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); +/* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(413); +/* harmony import */ var _util_addStyle__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(290); + + + +var highlightRender = function (hljsOption, element, cdn) { + if (element === void 0) { element = document; } + if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; } + var style = hljsOption.style; + if (!_constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CODE_THEME.includes */ .g.CODE_THEME.includes(style)) { + style = "github"; + } + var vditorHljsStyle = document.getElementById("vditorHljsStyle"); + var href = "".concat(cdn, "/dist/js/highlight.js/styles/").concat(style, ".min.css"); + if (vditorHljsStyle && vditorHljsStyle.getAttribute('href') !== href) { + vditorHljsStyle.remove(); + } + (0,_util_addStyle__WEBPACK_IMPORTED_MODULE_1__/* .addStyle */ .c)("".concat(cdn, "/dist/js/highlight.js/styles/").concat(style, ".min.css"), "vditorHljsStyle"); + if (hljsOption.enable === false) { + return; + } + var codes = element.querySelectorAll("pre > code"); + if (codes.length === 0) { + return; + } + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/highlight.js/highlight.min.js?v=11.7.0"), "vditorHljsScript").then(function () { + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/highlight.js/third-languages.js?v=1.0.1"), "vditorHljsThirdScript").then(function () { + element.querySelectorAll("pre > code").forEach(function (block) { + // ir & wysiwyg 区域不渲染 + if (block.parentElement.classList.contains("vditor-ir__marker--pre") || + block.parentElement.classList.contains("vditor-wysiwyg__pre")) { + return; + } + if (block.classList.contains("language-mermaid") || block.classList.contains("language-flowchart") || + block.classList.contains("language-echarts") || block.classList.contains("language-mindmap") || + block.classList.contains("language-plantuml") || block.classList.contains("language-smiles") || + block.classList.contains("language-abc") || block.classList.contains("language-graphviz") || + block.classList.contains("language-math")) { + return; + } + if (hljsOption.defaultLang !== "" && block.className.indexOf("language-") === -1) { + block.classList.add("language-" + hljsOption.defaultLang); + } + var language = block.className.replace("language-", ""); + if (!window.hljs.getLanguage(language)) { + language = "plaintext"; + } + block.innerHTML = window.hljs.highlight(block.textContent, { + language: language, + ignoreIllegals: true + }).value; + block.classList.add("hljs"); + if (!hljsOption.lineNumber) { + return; + } + block.classList.add("vditor-linenumber"); + var linenNumberTemp = block.querySelector(".vditor-linenumber__temp"); + if (!linenNumberTemp) { + linenNumberTemp = document.createElement("div"); + linenNumberTemp.className = "vditor-linenumber__temp"; + block.insertAdjacentElement("beforeend", linenNumberTemp); + } + var whiteSpace = getComputedStyle(block).whiteSpace; + var isSoftWrap = false; + if (whiteSpace === "pre-wrap" || whiteSpace === "pre-line") { + isSoftWrap = true; + } + var lineNumberHTML = ""; + var lineList = block.textContent.split(/\r\n|\r|\n/g); + lineList.pop(); + lineList.map(function (line) { + var lineHeight = ""; + if (isSoftWrap) { + linenNumberTemp.textContent = line || "\n"; + lineHeight = " style=\"height:".concat(linenNumberTemp.getBoundingClientRect().height, "px\""); + } + lineNumberHTML += "<span".concat(lineHeight, "></span>"); + }); + linenNumberTemp.style.display = "none"; + lineNumberHTML = "<span class=\"vditor-linenumber__rows\">".concat(lineNumberHTML, "</span>"); + block.insertAdjacentHTML("beforeend", lineNumberHTML); + }); + }); + }); +}; + + +/***/ }), + +/***/ 11: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "K": () => (/* binding */ markmapRender) +/* harmony export */ }); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); +/* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(413); +/* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(840); + + + +var enabled = {}; +var transform = function (transformer, content) { + var result = transformer.transform(content); + var keys = Object.keys(result.features).filter(function (key) { return !enabled[key]; }); + keys.forEach(function (key) { + enabled[key] = true; + }); + var _a = transformer.getAssets(keys), styles = _a.styles, scripts = _a.scripts; + var markmap = window.markmap; + if (styles) + markmap.loadCSS(styles); + if (scripts) + markmap.loadJS(scripts); + return result; +}; +var init = function (el, code) { + var _a = window.markmap, Transformer = _a.Transformer, Markmap = _a.Markmap, deriveOptions = _a.deriveOptions, globalCSS = _a.globalCSS; + var transformer = new Transformer(); + el.innerHTML = '<svg style="width:100%"></svg>'; + var svg = el.firstChild; + var mm = Markmap.create(svg, null); + var _b = transform(transformer, code), root = _b.root, frontmatter = _b.frontmatter; + var markmapOptions = frontmatter === null || frontmatter === void 0 ? void 0 : frontmatter.markmap; + var frontmatterOptions = deriveOptions(markmapOptions); + mm.setData(root, frontmatterOptions); + mm.fit(); +}; +var markmapRender = function (element, cdn) { + if (element === void 0) { element = document; } + if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; } + var markmapElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.markmapRenderAdapter.getElements(element); + if (markmapElements.length === 0) { + return; + } + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/markmap/markmap.min.js"), "vditorMarkerScript").then(function () { + markmapElements.forEach(function (item) { + var code = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.markmapRenderAdapter.getCode(item); + if (item.getAttribute("data-processed") === "true" || code.trim() === "") { + return; + } + var render = document.createElement("div"); + render.className = "language-markmap"; + item.parentNode.appendChild(render); + init(render, code); + if (item.parentNode.childNodes[0].nodeName == "CODE") { + item.parentNode.removeChild(item.parentNode.childNodes[0]); + } + }); + }); +}; + + +/***/ }), + +/***/ 472: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "H": () => (/* binding */ mathRender) +/* harmony export */ }); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); +/* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(413); +/* harmony import */ var _util_addStyle__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(290); +/* harmony import */ var _util_code160to32__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(105); +/* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(840); + + + + + +var mathRender = function (element, options) { + if (element === void 0) { element = document; } + var mathElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.mathRenderAdapter.getElements(element); + if (mathElements.length === 0) { + return; + } + var defaultOptions = { + cdn: _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN, + math: { + engine: "KaTeX", + inlineDigit: false, + macros: {}, + }, + }; + if (options && options.math) { + options.math = + Object.assign({}, defaultOptions.math, options.math); + } + options = Object.assign({}, defaultOptions, options); + if (options.math.engine === "KaTeX") { + (0,_util_addStyle__WEBPACK_IMPORTED_MODULE_2__/* .addStyle */ .c)("".concat(options.cdn, "/dist/js/katex/katex.min.css?v=0.16.9"), "vditorKatexStyle"); + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_3__/* .addScript */ .G)("".concat(options.cdn, "/dist/js/katex/katex.min.js?v=0.16.9"), "vditorKatexScript").then(function () { + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_3__/* .addScript */ .G)("".concat(options.cdn, "/dist/js/katex/mhchem.min.js?v=0.16.9"), "vditorKatexChemScript").then(function () { + mathElements.forEach(function (mathElement) { + if (mathElement.parentElement.classList.contains("vditor-wysiwyg__pre") || + mathElement.parentElement.classList.contains("vditor-ir__marker--pre")) { + return; + } + if (mathElement.getAttribute("data-math")) { + return; + } + var math = (0,_util_code160to32__WEBPACK_IMPORTED_MODULE_4__/* .code160to32 */ .X)(_adapterRender__WEBPACK_IMPORTED_MODULE_1__.mathRenderAdapter.getCode(mathElement)); + mathElement.setAttribute("data-math", math); + try { + mathElement.innerHTML = katex.renderToString(math, { + displayMode: mathElement.tagName === "DIV", + output: "html", + macros: options.math.macros, + }); + } + catch (e) { + mathElement.innerHTML = e.message; + mathElement.className = "language-math vditor-reset--error"; + } + mathElement.addEventListener("copy", function (event) { + event.stopPropagation(); + event.preventDefault(); + var vditorMathElement = event.currentTarget.closest(".language-math"); + event.clipboardData.setData("text/html", vditorMathElement.innerHTML); + event.clipboardData.setData("text/plain", vditorMathElement.getAttribute("data-math")); + }); + }); + }); + }); + } + else if (options.math.engine === "MathJax") { + var chainAsync_1 = function (fns) { + if (fns.length === 0) { + return; + } + var curr = 0; + var last = fns[fns.length - 1]; + var next = function () { + var fn = fns[curr++]; + fn === last ? fn() : fn(next); + }; + next(); + }; + if (!window.MathJax) { + window.MathJax = { + loader: { + paths: { mathjax: "".concat(options.cdn, "/dist/js/mathjax") }, + }, + startup: { + typeset: false, + }, + tex: { + macros: options.math.macros, + }, + }; + // https://github.com/Vanessa219/vditor/issues/1453 + Object.assign(window.MathJax, options.math.mathJaxOptions); + } + // 循环加载会抛异常 + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_3__/* .addScriptSync */ .J)("".concat(options.cdn, "/dist/js/mathjax/tex-svg-full.js"), "protyleMathJaxScript"); + var renderMath_1 = function (mathElement, next) { + var math = (0,_util_code160to32__WEBPACK_IMPORTED_MODULE_4__/* .code160to32 */ .X)(mathElement.textContent).trim(); + var mathOptions = window.MathJax.getMetricsFor(mathElement); + mathOptions.display = mathElement.tagName === "DIV"; + window.MathJax.tex2svgPromise(math, mathOptions).then(function (node) { + mathElement.innerHTML = ""; + mathElement.setAttribute("data-math", math); + mathElement.append(node); + window.MathJax.startup.document.clear(); + window.MathJax.startup.document.updateDocument(); + var errorTextElement = node.querySelector('[data-mml-node="merror"]'); + if (errorTextElement && errorTextElement.textContent.trim() !== "") { + mathElement.innerHTML = errorTextElement.textContent.trim(); + mathElement.className = "vditor-reset--error"; + } + if (next) { + next(); + } + }); + }; + window.MathJax.startup.promise.then(function () { + var chains = []; + var _loop_1 = function (i) { + var mathElement = mathElements[i]; + if (!mathElement.parentElement.classList.contains("vditor-wysiwyg__pre") && + !mathElement.parentElement.classList.contains("vditor-ir__marker--pre") && + !mathElement.getAttribute("data-math") && (0,_util_code160to32__WEBPACK_IMPORTED_MODULE_4__/* .code160to32 */ .X)(mathElement.textContent).trim()) { + chains.push(function (next) { + if (i === mathElements.length - 1) { + renderMath_1(mathElement); + } + else { + renderMath_1(mathElement, next); + } + }); + } + }; + for (var i = 0; i < mathElements.length; i++) { + _loop_1(i); + } + chainAsync_1(chains); + }); + } +}; + + +/***/ }), + +/***/ 280: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "Y": () => (/* binding */ mediaRender) +/* harmony export */ }); +/* harmony import */ var _util_function__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(494); + +var videoRender = function (element, url) { + element.insertAdjacentHTML("afterend", "<video controls=\"controls\" src=\"".concat(url, "\"></video>")); + element.remove(); +}; +var audioRender = function (element, url) { + element.insertAdjacentHTML("afterend", "<audio controls=\"controls\" src=\"".concat(url, "\"></audio>")); + element.remove(); +}; +var iframeRender = function (element, url) { + var youtubeMatch = url.match(/\/\/(?:www\.)?(?:youtu\.be\/|youtube\.com\/(?:embed\/|v\/|watch\?v=|watch\?.+&v=))([\w|-]{11})(?:(?:[\?&]t=)(\S+))?/); + var youkuMatch = url.match(/\/\/v\.youku\.com\/v_show\/id_(\w+)=*\.html/); + var qqMatch = url.match(/\/\/v\.qq\.com\/x\/cover\/.*\/([^\/]+)\.html\??.*/); + var coubMatch = url.match(/(?:www\.|\/\/)coub\.com\/view\/(\w+)/); + var facebookMatch = url.match(/(?:www\.|\/\/)facebook\.com\/([^\/]+)\/videos\/([0-9]+)/); + var dailymotionMatch = url.match(/.+dailymotion.com\/(video|hub)\/(\w+)\?/); + var bilibiliMatch = url.match(/(?:www\.|\/\/)bilibili\.com\/video\/(\w+)/); + var tedMatch = url.match(/(?:www\.|\/\/)ted\.com\/talks\/(\w+)/); + if (youtubeMatch && youtubeMatch[1].length === 11) { + element.insertAdjacentHTML("afterend", "<iframe class=\"iframe__video\" src=\"//www.youtube.com/embed/".concat(youtubeMatch[1] + + (youtubeMatch[2] ? "?start=" + youtubeMatch[2] : ""), "\"></iframe>")); + element.remove(); + } + else if (youkuMatch && youkuMatch[1]) { + element.insertAdjacentHTML("afterend", "<iframe class=\"iframe__video\" src=\"//player.youku.com/embed/".concat(youkuMatch[1], "\"></iframe>")); + element.remove(); + } + else if (qqMatch && qqMatch[1]) { + element.insertAdjacentHTML("afterend", "<iframe class=\"iframe__video\" src=\"https://v.qq.com/txp/iframe/player.html?vid=".concat(qqMatch[1], "\"></iframe>")); + element.remove(); + } + else if (coubMatch && coubMatch[1]) { + element.insertAdjacentHTML("afterend", "<iframe class=\"iframe__video\"\n src=\"//coub.com/embed/".concat(coubMatch[1], "?muted=false&autostart=false&originalSize=true&startWithHD=true\"></iframe>")); + element.remove(); + } + else if (facebookMatch && facebookMatch[0]) { + element.insertAdjacentHTML("afterend", "<iframe class=\"iframe__video\"\n src=\"https://www.facebook.com/plugins/video.php?href=".concat(encodeURIComponent(facebookMatch[0]), "\"></iframe>")); + element.remove(); + } + else if (dailymotionMatch && dailymotionMatch[2]) { + element.insertAdjacentHTML("afterend", "<iframe class=\"iframe__video\"\n src=\"https://www.dailymotion.com/embed/video/".concat(dailymotionMatch[2], "\"></iframe>")); + element.remove(); + } + else if (url.indexOf("bilibili.com") > -1 && (url.indexOf("bvid=") > -1 || (bilibiliMatch && bilibiliMatch[1]))) { + var params_1 = { + bvid: (0,_util_function__WEBPACK_IMPORTED_MODULE_0__/* .getSearch */ .on)("bvid", url) || (bilibiliMatch && bilibiliMatch[1]), + page: "1", + high_quality: "1", + as_wide: "1", + allowfullscreen: "true", + autoplay: "0" + }; + new URL(url.startsWith("http") ? url : "https:" + url).search.split("&").forEach(function (item, index) { + if (!item) { + return; + } + if (index === 0) { + item = item.substr(1); + } + var keyValue = item.split("="); + params_1[keyValue[0]] = keyValue[1]; + }); + var src_1 = "https://player.bilibili.com/player.html?"; + var keys_1 = Object.keys(params_1); + keys_1.forEach(function (key, index) { + src_1 += "".concat(key, "=").concat(params_1[key]); + if (index < keys_1.length - 1) { + src_1 += "&"; + } + }); + element.insertAdjacentHTML("afterend", "<iframe class=\"iframe__video\" src=\"".concat(src_1, "\"></iframe>")); + element.remove(); + } + else if (tedMatch && tedMatch[1]) { + element.insertAdjacentHTML("afterend", "<iframe class=\"iframe__video\" src=\"//embed.ted.com/talks/".concat(tedMatch[1], "\"></iframe>")); + element.remove(); + } +}; +var mediaRender = function (element) { + if (!element) { + return; + } + element.querySelectorAll("a").forEach(function (aElement) { + var url = aElement.getAttribute("href"); + if (!url) { + return; + } + if (url.match(/^.+.(mp4|m4v|ogg|ogv|webm)$/)) { + videoRender(aElement, url); + } + else if (url.match(/^.+.(mp3|wav|flac)$/)) { + audioRender(aElement, url); + } + else { + iframeRender(aElement, url); + } + }); +}; + + +/***/ }), + +/***/ 637: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "i": () => (/* binding */ mermaidRender) +/* harmony export */ }); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); +/* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(413); +/* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(840); +/* harmony import */ var _util_function__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(494); +var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +}; +var __generator = (undefined && undefined.__generator) || function (thisArg, body) { + var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; + function verb(n) { return function (v) { return step([n, v]); }; } + function step(op) { + if (f) throw new TypeError("Generator is already executing."); + while (g && (g = 0, op[0] && (_ = 0)), _) try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; + if (y = 0, t) op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: case 1: t = op; break; + case 4: _.label++; return { value: op[1], done: false }; + case 5: _.label++; y = op[1]; op = [0]; continue; + case 7: op = _.ops.pop(); _.trys.pop(); continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } + if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } + if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } + if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } + if (t[2]) _.ops.pop(); + _.trys.pop(); continue; + } + op = body.call(thisArg, _); + } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } + if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; + } +}; + + + + +var mermaidRender = function (element, cdn, theme) { + if (element === void 0) { element = document; } + if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; } + var mermaidElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.mermaidRenderAdapter.getElements(element); + if (mermaidElements.length === 0) { + return; + } + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/mermaid/mermaid.min.js?v=11.6.0"), "vditorMermaidScript").then(function () { + var config = { + securityLevel: "loose", + altFontFamily: "sans-serif", + fontFamily: "sans-serif", + startOnLoad: false, + flowchart: { + htmlLabels: true, + useMaxWidth: !0 + }, + sequence: { + useMaxWidth: true, + diagramMarginX: 8, + diagramMarginY: 8, + boxMargin: 8, + showSequenceNumbers: true // Mermaid 时序图增加序号 https://github.com/siyuan-note/siyuan/pull/6992 https://mermaid.js.org/syntax/sequenceDiagram.html#sequencenumbers + }, + gantt: { + leftPadding: 75, + rightPadding: 20 + } + }; + if (theme === "dark") { + config.theme = "dark"; + } + mermaid.initialize(config); + mermaidElements.forEach(function (item) { return __awaiter(void 0, void 0, void 0, function () { + var code, id, mermaidData, e_1, errorElement; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + code = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.mermaidRenderAdapter.getCode(item); + if (item.getAttribute("data-processed") === "true" || code.trim() === "") { + return [2 /*return*/]; + } + id = "mermaid" + (0,_util_function__WEBPACK_IMPORTED_MODULE_3__/* .genUUID */ .Wb)(); + _a.label = 1; + case 1: + _a.trys.push([1, 3, , 4]); + return [4 /*yield*/, mermaid.render(id, item.textContent)]; + case 2: + mermaidData = _a.sent(); + item.innerHTML = mermaidData.svg; + return [3 /*break*/, 4]; + case 3: + e_1 = _a.sent(); + errorElement = document.querySelector("#" + id); + item.innerHTML = "".concat(errorElement.outerHTML, "<br>\n<div style=\"text-align: left\"><small>").concat(e_1.message.replace(/\n/, "<br>"), "</small></div>"); + errorElement.parentElement.remove(); + return [3 /*break*/, 4]; + case 4: + item.setAttribute("data-processed", "true"); + return [2 /*return*/]; + } + }); + }); }); + }); +}; + + +/***/ }), + +/***/ 194: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "P": () => (/* binding */ mindmapRender) +/* harmony export */ }); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); +/* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(413); +/* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(840); + + + +var mindmapRender = function (element, cdn, theme) { + if (element === void 0) { element = document; } + if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; } + var mindmapElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.mindmapRenderAdapter.getElements(element); + if (mindmapElements.length > 0) { + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/echarts/echarts.min.js?v=5.5.1"), "vditorEchartsScript").then(function () { + mindmapElements.forEach(function (e) { + if (e.parentElement.classList.contains("vditor-wysiwyg__pre") || + e.parentElement.classList.contains("vditor-ir__marker--pre")) { + return; + } + var text = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.mindmapRenderAdapter.getCode(e); + if (!text) { + return; + } + try { + if (e.getAttribute("data-processed") === "true") { + return; + } + echarts.init(e, theme === "dark" ? "dark" : undefined).setOption({ + series: [ + { + data: [JSON.parse(decodeURIComponent(text))], + initialTreeDepth: -1, + itemStyle: { + borderWidth: 0, + color: "#4285f4", + }, + label: { + backgroundColor: "#f6f8fa", + borderColor: "#d1d5da", + borderRadius: 5, + borderWidth: 0.5, + color: "#586069", + lineHeight: 20, + offset: [-5, 0], + padding: [0, 5], + position: "insideRight", + }, + lineStyle: { + color: "#d1d5da", + width: 1, + }, + roam: true, + symbol: function (value, params) { + var _a; + if ((_a = params === null || params === void 0 ? void 0 : params.data) === null || _a === void 0 ? void 0 : _a.children) { + return "circle"; + } + else { + return "path://"; + } + }, + type: "tree", + }, + ], + tooltip: { + trigger: "item", + triggerOn: "mousemove", + }, + }); + e.setAttribute("data-processed", "true"); + } + catch (error) { + e.className = "vditor-reset--error"; + e.innerHTML = "mindmap render error: <br>".concat(error); + } + }); + }); + } +}; + + +/***/ }), + +/***/ 436: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "k": () => (/* binding */ outlineRender) +/* harmony export */ }); +/* harmony import */ var _util_hasClosestByHeadings__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(771); +/* harmony import */ var _mathRender__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(472); + + +var outlineRender = function (contentElement, targetElement, vditor) { + var tocHTML = ""; + var ids = []; + Array.from(contentElement.children).forEach(function (item, index) { + if ((0,_util_hasClosestByHeadings__WEBPACK_IMPORTED_MODULE_1__/* .hasClosestByHeadings */ .W)(item)) { + if (vditor) { + var lastIndex = item.id.lastIndexOf("_"); + item.id = item.id.substring(0, lastIndex === -1 ? undefined : lastIndex) + "_" + index; + } + ids.push(item.id); + tocHTML += item.outerHTML.replace("<wbr>", ""); + } + }); + if (tocHTML === "") { + targetElement.innerHTML = ""; + return ""; + } + var tempElement = document.createElement("div"); + if (vditor) { + vditor.lute.SetToC(true); + if (vditor.currentMode === "wysiwyg" && !vditor.preview.element.contains(contentElement)) { + tempElement.innerHTML = vditor.lute.SpinVditorDOM("<p>[ToC]</p>" + tocHTML); + } + else if (vditor.currentMode === "ir" && !vditor.preview.element.contains(contentElement)) { + tempElement.innerHTML = vditor.lute.SpinVditorIRDOM("<p>[ToC]</p>" + tocHTML); + } + else { + tempElement.innerHTML = vditor.lute.HTML2VditorDOM("<p>[ToC]</p>" + tocHTML); + } + vditor.lute.SetToC(vditor.options.preview.markdown.toc); + } + else { + targetElement.classList.add("vditor-outline"); + var lute = Lute.New(); + lute.SetToC(true); + tempElement.innerHTML = lute.HTML2VditorDOM("<p>[ToC]</p>" + tocHTML); + } + var headingsElement = tempElement.firstElementChild.querySelectorAll("li > span[data-target-id]"); + headingsElement.forEach(function (item, index) { + if (item.nextElementSibling && item.nextElementSibling.tagName === "UL") { + var iconHTML = "<svg class='vditor-outline__action'><use xlink:href='#vditor-icon-down'></use></svg>"; + if (!document.getElementById("vditorIconScript")) { + iconHTML = '<svg class="vditor-outline__action" viewBox="0 0 32 32"><path d="M3.76 6.12l12.24 12.213 12.24-12.213 3.76 3.76-16 16-16-16 3.76-3.76z"></path></svg>'; + } + item.innerHTML = "".concat(iconHTML, "<span>").concat(item.innerHTML, "</span>"); + } + else { + item.innerHTML = "<svg></svg><span>".concat(item.innerHTML, "</span>"); + } + item.setAttribute("data-target-id", ids[index]); + }); + tocHTML = tempElement.firstElementChild.innerHTML; + if (headingsElement.length === 0) { + targetElement.innerHTML = ""; + return tocHTML; + } + targetElement.innerHTML = tocHTML; + if (vditor) { + (0,_mathRender__WEBPACK_IMPORTED_MODULE_0__/* .mathRender */ .H)(targetElement, { + cdn: vditor.options.cdn, + math: vditor.options.preview.math, + }); + } + targetElement.firstElementChild.addEventListener("click", function (event) { + var target = event.target; + while (target && !target.isEqualNode(targetElement)) { + if (target.classList.contains("vditor-outline__action")) { + if (target.classList.contains("vditor-outline__action--close")) { + target.classList.remove("vditor-outline__action--close"); + target.parentElement.nextElementSibling.setAttribute("style", "display:block"); + } + else { + target.classList.add("vditor-outline__action--close"); + target.parentElement.nextElementSibling.setAttribute("style", "display:none"); + } + event.preventDefault(); + event.stopPropagation(); + break; + } + else if (target.getAttribute("data-target-id")) { + event.preventDefault(); + event.stopPropagation(); + var idElement = document.getElementById(target.getAttribute("data-target-id")); + if (!idElement) { + return; + } + if (vditor) { + if (vditor.options.height === "auto") { + var windowScrollY = idElement.offsetTop + vditor.element.offsetTop; + if (!vditor.options.toolbarConfig.pin) { + windowScrollY += vditor.toolbar.element.offsetHeight; + } + window.scrollTo(window.scrollX, windowScrollY); + } + else { + if (vditor.element.offsetTop < window.scrollY) { + window.scrollTo(window.scrollX, vditor.element.offsetTop); + } + if (vditor.preview.element.contains(contentElement)) { + contentElement.parentElement.scrollTop = idElement.offsetTop; + } + else { + contentElement.scrollTop = idElement.offsetTop; + } + } + } + else { + window.scrollTo(window.scrollX, idElement.offsetTop); + } + break; + } + target = target.parentElement; + } + }); + return tocHTML; +}; + + +/***/ }), + +/***/ 229: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "B": () => (/* binding */ plantumlRender) +/* harmony export */ }); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); +/* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(413); +/* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(840); + + + +var plantumlRender = function (element, cdn) { + if (element === void 0) { element = document; } + if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; } + var plantumlElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.plantumlRenderAdapter.getElements(element); + if (plantumlElements.length === 0) { + return; + } + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/plantuml/plantuml-encoder.min.js"), "vditorPlantumlScript").then(function () { + plantumlElements.forEach(function (e) { + if (e.parentElement.classList.contains("vditor-wysiwyg__pre") || + e.parentElement.classList.contains("vditor-ir__marker--pre")) { + return; + } + var text = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.plantumlRenderAdapter.getCode(e).trim(); + if (!text) { + return; + } + try { + e.innerHTML = "<object type=\"image/svg+xml\" data=\"https://www.plantuml.com/plantuml/svg/~1".concat(plantumlEncoder.encode(text), "\"/>"); + } + catch (error) { + e.className = "vditor-reset--error"; + e.innerHTML = "plantuml render error: <br>".concat(error); + } + }); + }); +}; + + +/***/ }), + +/***/ 214: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "X": () => (/* binding */ setLute) +/* harmony export */ }); +var setLute = function (options) { + var lute = Lute.New(); + lute.PutEmojis(options.emojis); + lute.SetEmojiSite(options.emojiSite); + lute.SetHeadingAnchor(options.headingAnchor); + lute.SetInlineMathAllowDigitAfterOpenMarker(options.inlineMathDigit); + lute.SetAutoSpace(options.autoSpace); + lute.SetToC(options.toc); + lute.SetFootnotes(options.footnotes); + lute.SetFixTermTypo(options.fixTermTypo); + lute.SetVditorCodeBlockPreview(options.codeBlockPreview); + lute.SetVditorMathBlockPreview(options.mathBlockPreview); + lute.SetSanitize(options.sanitize); + lute.SetChineseParagraphBeginningSpace(options.paragraphBeginningSpace); + lute.SetRenderListStyle(options.listStyle); + lute.SetLinkBase(options.linkBase); + lute.SetLinkPrefix(options.linkPrefix); + lute.SetMark(options.mark); + lute.SetGFMAutoLink(options.gfmAutoLink); + if (options.lazyLoadImage) { + lute.SetImageLazyLoading(options.lazyLoadImage); + } + return lute; +}; + + +/***/ }), + +/***/ 190: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "E": () => (/* binding */ previewImage) +/* harmony export */ }); +var previewImage = function (oldImgElement, lang, theme) { + if (lang === void 0) { lang = "zh_CN"; } + if (theme === void 0) { theme = "classic"; } + var oldImgRect = oldImgElement.getBoundingClientRect(); + var height = 36; + document.body.insertAdjacentHTML("beforeend", "<div class=\"vditor vditor-img".concat(theme === "dark" ? " vditor--dark" : "", "\">\n <div class=\"vditor-img__bar\">\n <span class=\"vditor-img__btn\" data-deg=\"0\">\n <svg><use xlink:href=\"#vditor-icon-redo\"></use></svg>\n ").concat(window.VditorI18n.spin, "\n </span>\n <span class=\"vditor-img__btn\" onclick=\"this.parentElement.parentElement.outerHTML = '';document.body.style.overflow = ''\">\n X  ").concat(window.VditorI18n.close, "\n </span>\n </div>\n <div class=\"vditor-img__img\" onclick=\"this.parentElement.outerHTML = '';document.body.style.overflow = ''\">\n <img style=\"width: ").concat(oldImgElement.width, "px;height:").concat(oldImgElement.height, "px;transform: translate3d(").concat(oldImgRect.left, "px, ").concat(oldImgRect.top - height, "px, 0)\" src=\"").concat(oldImgElement.getAttribute("src"), "\">\n </div>\n</div>")); + document.body.style.overflow = "hidden"; + // 图片从原始位置移动到预览正中间的动画效果 + var imgElement = document.querySelector(".vditor-img img"); + var translate3d = "translate3d(".concat(Math.max(0, window.innerWidth - oldImgElement.naturalWidth) / 2, "px, ").concat(Math.max(0, window.innerHeight - height - oldImgElement.naturalHeight) / 2, "px, 0)"); + setTimeout(function () { + imgElement.setAttribute("style", "transition: transform .3s ease-in-out;transform: ".concat(translate3d)); + setTimeout(function () { + imgElement.parentElement.scrollTo((imgElement.parentElement.scrollWidth - imgElement.parentElement.clientWidth) / 2, (imgElement.parentElement.scrollHeight - imgElement.parentElement.clientHeight) / 2); + }, 400); + }); + // 旋转 + var btnElement = document.querySelector(".vditor-img__btn"); + btnElement.addEventListener("click", function () { + var deg = parseInt(btnElement.getAttribute("data-deg"), 10) + 90; + if ((deg / 90) % 2 === 1 && oldImgElement.naturalWidth > imgElement.parentElement.clientHeight) { + imgElement.style.transform = "translate3d(".concat(Math.max(0, window.innerWidth - oldImgElement.naturalWidth) / 2, "px, ").concat(oldImgElement.naturalWidth / 2 - oldImgElement.naturalHeight / 2, "px, 0) rotateZ(").concat(deg, "deg)"); + } + else { + imgElement.style.transform = "".concat(translate3d, " rotateZ(").concat(deg, "deg)"); + } + btnElement.setAttribute("data-deg", deg.toString()); + setTimeout(function () { + imgElement.parentElement.scrollTo((imgElement.parentElement.scrollWidth - imgElement.parentElement.clientWidth) / 2, (imgElement.parentElement.scrollHeight - imgElement.parentElement.clientHeight) / 2); + }, 400); + }); +}; + + +/***/ }), + +/***/ 580: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "Y": () => (/* binding */ setCodeTheme) +/* harmony export */ }); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); +/* harmony import */ var _util_addStyle__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(290); + + +var setCodeTheme = function (codeTheme, cdn) { + if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; } + if (!_constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CODE_THEME.includes */ .g.CODE_THEME.includes(codeTheme)) { + codeTheme = "github"; + } + var vditorHljsStyle = document.getElementById("vditorHljsStyle"); + var href = "".concat(cdn, "/dist/js/highlight.js/styles/").concat(codeTheme, ".min.css"); + if (!vditorHljsStyle) { + (0,_util_addStyle__WEBPACK_IMPORTED_MODULE_1__/* .addStyle */ .c)(href, "vditorHljsStyle"); + } + else if (vditorHljsStyle.getAttribute('href') !== href) { + vditorHljsStyle.remove(); + (0,_util_addStyle__WEBPACK_IMPORTED_MODULE_1__/* .addStyle */ .c)(href, "vditorHljsStyle"); + } +}; + + +/***/ }), + +/***/ 538: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "Z": () => (/* binding */ setContentTheme) +/* harmony export */ }); +/* harmony import */ var _util_addStyle__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(290); + +var setContentTheme = function (contentTheme, path) { + if (!contentTheme || !path) { + return; + } + var vditorContentTheme = document.getElementById("vditorContentTheme"); + var cssPath = "".concat(path, "/").concat(contentTheme, ".css"); + if (!vditorContentTheme) { + (0,_util_addStyle__WEBPACK_IMPORTED_MODULE_0__/* .addStyle */ .c)(cssPath, "vditorContentTheme"); + } + else if (vditorContentTheme.getAttribute("href") !== cssPath) { + vditorContentTheme.remove(); + (0,_util_addStyle__WEBPACK_IMPORTED_MODULE_0__/* .addStyle */ .c)(cssPath, "vditorContentTheme"); + } +}; + + +/***/ }), + +/***/ 413: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "J": () => (/* binding */ addScriptSync), +/* harmony export */ "G": () => (/* binding */ addScript) +/* harmony export */ }); +var addScriptSync = function (path, id) { + if (document.getElementById(id)) { + return false; + } + var xhrObj = new XMLHttpRequest(); + xhrObj.open("GET", path, false); + xhrObj.setRequestHeader("Accept", "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript, */*; q=0.01"); + xhrObj.send(""); + var scriptElement = document.createElement("script"); + scriptElement.type = "text/javascript"; + scriptElement.text = xhrObj.responseText; + scriptElement.id = id; + document.head.appendChild(scriptElement); +}; +var addScript = function (path, id) { + return new Promise(function (resolve, reject) { + if (document.getElementById(id)) { + // 脚本加载后再次调用直接返回 + resolve(true); + return false; + } + var scriptElement = document.createElement("script"); + scriptElement.src = path; + scriptElement.async = true; + // 循环调用时 Chrome 不会重复请求 js + document.head.appendChild(scriptElement); + scriptElement.onerror = function (event) { + reject(event); + }; + scriptElement.onload = function () { + if (document.getElementById(id)) { + // 循环调用需清除 DOM 中的 script 标签 + scriptElement.remove(); + resolve(true); + return false; + } + scriptElement.id = id; + resolve(true); + }; + }); +}; + + +/***/ }), + +/***/ 290: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "c": () => (/* binding */ addStyle) +/* harmony export */ }); +var addStyle = function (url, id) { + if (!document.getElementById(id)) { + var styleElement = document.createElement("link"); + styleElement.id = id; + styleElement.rel = "stylesheet"; + styleElement.type = "text/css"; + styleElement.href = url; + document.getElementsByTagName("head")[0].appendChild(styleElement); + } +}; + + +/***/ }), + +/***/ 105: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "X": () => (/* binding */ code160to32) +/* harmony export */ }); +var code160to32 = function (text) { + // 非打断空格转换为空格 + return text.replace(/\u00a0/g, " "); +}; + + +/***/ }), + +/***/ 410: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "G6": () => (/* binding */ isSafari), +/* harmony export */ "vU": () => (/* binding */ isFirefox), +/* harmony export */ "pK": () => (/* binding */ accessLocalStorage), +/* harmony export */ "Le": () => (/* binding */ getEventName), +/* harmony export */ "yl": () => (/* binding */ isCtrl), +/* harmony export */ "ns": () => (/* binding */ updateHotkeyTip), +/* harmony export */ "i7": () => (/* binding */ isChrome) +/* harmony export */ }); +var isSafari = function () { + return navigator.userAgent.indexOf("Safari") > -1 && navigator.userAgent.indexOf("Chrome") === -1; +}; +var isFirefox = function () { + return navigator.userAgent.toLowerCase().indexOf("firefox") > -1; +}; +var accessLocalStorage = function () { + try { + return typeof localStorage !== "undefined"; + } + catch (e) { + return false; + } +}; +// 用户 iPhone 点击延迟/需要双击的处理 +var getEventName = function () { + if (navigator.userAgent.indexOf("iPhone") > -1) { + return "touchstart"; + } + else { + return "click"; + } +}; +// 区别 mac 上的 ctrl 和 meta +var isCtrl = function (event) { + if (navigator.platform.toUpperCase().indexOf("MAC") >= 0) { + // mac + if (event.metaKey && !event.ctrlKey) { + return true; + } + return false; + } + else { + if (!event.metaKey && event.ctrlKey) { + return true; + } + return false; + } +}; +// Mac,Windows 快捷键展示 +var updateHotkeyTip = function (hotkey) { + if (/Mac/.test(navigator.platform) || navigator.platform === "iPhone") { + if (hotkey.indexOf("⇧") > -1 && isFirefox()) { + // Mac Firefox 按下 shift 后,key 同 windows 系统 + hotkey = hotkey.replace(";", ":").replace("=", "+").replace("-", "_"); + } + } + else { + if (hotkey.startsWith("⌘")) { + hotkey = hotkey.replace("⌘", "⌘+"); + } + else if (hotkey.startsWith("⌥") && hotkey.substr(1, 1) !== "⌘") { + hotkey = hotkey.replace("⌥", "⌥+"); + } + else { + hotkey = hotkey.replace("⇧⌘", "⌘+⇧+").replace("⌥⌘", "⌥+⌘+"); + } + hotkey = hotkey.replace("⌘", "Ctrl").replace("⇧", "Shift") + .replace("⌥", "Alt"); + if (hotkey.indexOf("Shift") > -1) { + hotkey = hotkey.replace(";", ":").replace("=", "+").replace("-", "_"); + } + } + return hotkey; +}; +var isChrome = function () { + return /Chrome/.test(navigator.userAgent) && /Google Inc/.test(navigator.vendor); +}; + + +/***/ }), + +/***/ 494: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "Wb": () => (/* binding */ genUUID), +/* harmony export */ "on": () => (/* binding */ getSearch), +/* harmony export */ "Qf": () => (/* binding */ looseJsonParse) +/* harmony export */ }); +var genUUID = function () { return ([1e7].toString() + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, function (c) { + return (parseInt(c, 10) ^ (window.crypto.getRandomValues(new Uint32Array(1))[0] & (15 >> (parseInt(c, 10) / 4)))).toString(16); +}); }; +var getSearch = function (key, link) { + if (link === void 0) { link = window.location.search; } + var params = link.substring(link.indexOf("?")); + var hashIndex = params.indexOf("#"); + // REF https://developer.mozilla.org/zh-CN/docs/Web/API/URLSearchParams + var urlSearchParams = new URLSearchParams(params.substring(0, hashIndex >= 0 ? hashIndex : undefined)); + return urlSearchParams.get(key); +}; +var looseJsonParse = function (text) { + return Function("\"use strict\";return (".concat(text, ")"))(); +}; + + +/***/ }), + +/***/ 106: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "JQ": () => (/* binding */ hasTopClosestByClassName), +/* harmony export */ "E2": () => (/* binding */ hasTopClosestByTag), +/* harmony export */ "O9": () => (/* binding */ getTopList), +/* harmony export */ "a1": () => (/* binding */ hasClosestByAttribute), +/* harmony export */ "F9": () => (/* binding */ hasClosestBlock), +/* harmony export */ "lG": () => (/* binding */ hasClosestByMatchTag), +/* harmony export */ "fb": () => (/* binding */ hasClosestByClassName), +/* harmony export */ "DX": () => (/* binding */ getLastNode) +/* harmony export */ }); +/* unused harmony export hasTopClosestByAttribute */ +/* harmony import */ var _hasClosestByHeadings__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(771); + +var hasTopClosestByClassName = function (element, className) { + var closest = hasClosestByClassName(element, className); + var parentClosest = false; + var findTop = false; + while (closest && !closest.classList.contains("vditor-reset") && !findTop) { + parentClosest = hasClosestByClassName(closest.parentElement, className); + if (parentClosest) { + closest = parentClosest; + } + else { + findTop = true; + } + } + return closest || false; +}; +var hasTopClosestByAttribute = function (element, attr, value) { + var closest = hasClosestByAttribute(element, attr, value); + var parentClosest = false; + var findTop = false; + while (closest && !closest.classList.contains("vditor-reset") && !findTop) { + parentClosest = hasClosestByAttribute(closest.parentElement, attr, value); + if (parentClosest) { + closest = parentClosest; + } + else { + findTop = true; + } + } + return closest || false; +}; +var hasTopClosestByTag = function (element, nodeName) { + var closest = (0,_hasClosestByHeadings__WEBPACK_IMPORTED_MODULE_0__/* .hasClosestByTag */ .S)(element, nodeName); + var parentClosest = false; + var findTop = false; + while (closest && !closest.classList.contains("vditor-reset") && !findTop) { + parentClosest = (0,_hasClosestByHeadings__WEBPACK_IMPORTED_MODULE_0__/* .hasClosestByTag */ .S)(closest.parentElement, nodeName); + if (parentClosest) { + closest = parentClosest; + } + else { + findTop = true; + } + } + return closest || false; +}; +var getTopList = function (element) { + var topUlElement = hasTopClosestByTag(element, "UL"); + var topOlElement = hasTopClosestByTag(element, "OL"); + var topListElement = topUlElement; + if (topOlElement && (!topUlElement || (topUlElement && topOlElement.contains(topUlElement)))) { + topListElement = topOlElement; + } + return topListElement; +}; +var hasClosestByAttribute = function (element, attr, value) { + if (!element) { + return false; + } + if (element.nodeType === 3) { + element = element.parentElement; + } + var e = element; + var isClosest = false; + while (e && !isClosest && !e.classList.contains("vditor-reset")) { + if (e.getAttribute(attr) === value) { + isClosest = true; + } + else { + e = e.parentElement; + } + } + return isClosest && e; +}; +var hasClosestBlock = function (element) { + if (!element) { + return false; + } + if (element.nodeType === 3) { + element = element.parentElement; + } + var e = element; + var isClosest = false; + var blockElement = hasClosestByAttribute(element, "data-block", "0"); + if (blockElement) { + return blockElement; + } + while (e && !isClosest && !e.classList.contains("vditor-reset")) { + if (e.tagName === "H1" || + e.tagName === "H2" || + e.tagName === "H3" || + e.tagName === "H4" || + e.tagName === "H5" || + e.tagName === "H6" || + e.tagName === "P" || + e.tagName === "BLOCKQUOTE" || + e.tagName === "OL" || + e.tagName === "UL") { + isClosest = true; + } + else { + e = e.parentElement; + } + } + return isClosest && e; +}; +var hasClosestByMatchTag = function (element, nodeName) { + if (!element) { + return false; + } + if (element.nodeType === 3) { + element = element.parentElement; + } + var e = element; + var isClosest = false; + while (e && !isClosest && !e.classList.contains("vditor-reset")) { + if (e.nodeName === nodeName) { + isClosest = true; + } + else { + e = e.parentElement; + } + } + return isClosest && e; +}; +var hasClosestByClassName = function (element, className) { + if (!element) { + return false; + } + if (element.nodeType === 3) { + element = element.parentElement; + } + var e = element; + var isClosest = false; + while (e && !isClosest && !e.classList.contains("vditor-reset")) { + if (e.classList.contains(className)) { + isClosest = true; + } + else { + e = e.parentElement; + } + } + return isClosest && e; +}; +var getLastNode = function (node) { + while (node && node.lastChild) { + node = node.lastChild; + } + return node; +}; + + +/***/ }), + +/***/ 771: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "S": () => (/* binding */ hasClosestByTag), +/* harmony export */ "W": () => (/* binding */ hasClosestByHeadings) +/* harmony export */ }); +// NOTE: 减少 method.ts 打包,故从 hasClosest.ts 中拆分 +var hasClosestByTag = function (element, nodeName) { + if (!element) { + return false; + } + if (element.nodeType === 3) { + element = element.parentElement; + } + var e = element; + var isClosest = false; + while (e && !isClosest && !e.classList.contains("vditor-reset")) { + if (e.nodeName.indexOf(nodeName) === 0) { + isClosest = true; + } + else { + e = e.parentElement; + } + } + return isClosest && e; +}; +var hasClosestByHeadings = function (element) { + var headingElement = hasClosestByTag(element, "H"); + if (headingElement && headingElement.tagName.length === 2 && headingElement.tagName !== "HR") { + return headingElement; + } + return false; +}; + + +/***/ }), + +/***/ 673: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "T": () => (/* binding */ merge) +/* harmony export */ }); +var merge = function () { + var options = []; + for (var _i = 0; _i < arguments.length; _i++) { + options[_i] = arguments[_i]; + } + var target = {}; + var merger = function (obj) { + for (var prop in obj) { + if (obj.hasOwnProperty(prop)) { + if (Object.prototype.toString.call(obj[prop]) === "[object Object]") { + target[prop] = merge(target[prop], obj[prop]); + } + else { + target[prop] = obj[prop]; + } + } + } + }; + for (var i = 0; i < options.length; i++) { + merger(options[i]); + } + return target; +}; + + +/***/ }), + +/***/ 810: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "zh": () => (/* binding */ getEditorRange), +/* harmony export */ "Ny": () => (/* binding */ getCursorPosition), +/* harmony export */ "Gb": () => (/* binding */ selectIsEditor), +/* harmony export */ "Hc": () => (/* binding */ setSelectionFocus), +/* harmony export */ "im": () => (/* binding */ getSelectPosition), +/* harmony export */ "$j": () => (/* binding */ setSelectionByPosition), +/* harmony export */ "ib": () => (/* binding */ setRangeByWbr), +/* harmony export */ "oC": () => (/* binding */ insertHTML) +/* harmony export */ }); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); +/* harmony import */ var _compatibility__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(410); +/* harmony import */ var _hasClosest__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(106); + + + +var getEditorRange = function (vditor) { + var range; + var element = vditor[vditor.currentMode].element; + if (getSelection().rangeCount > 0) { + range = getSelection().getRangeAt(0); + if (element.isEqualNode(range.startContainer) || element.contains(range.startContainer)) { + return range; + } + } + if (vditor[vditor.currentMode].range) { + return vditor[vditor.currentMode].range; + } + element.focus(); + range = element.ownerDocument.createRange(); + range.setStart(element, 0); + range.collapse(true); + return range; +}; +var getCursorPosition = function (editor) { + var range = window.getSelection().getRangeAt(0); + if (!editor.contains(range.startContainer) && !(0,_hasClosest__WEBPACK_IMPORTED_MODULE_1__/* .hasClosestByClassName */ .fb)(range.startContainer, "vditor-panel--none")) { + return { + left: 0, + top: 0, + }; + } + var parentRect = editor.parentElement.getBoundingClientRect(); + var cursorRect; + if (range.getClientRects().length === 0) { + if (range.startContainer.nodeType === 3) { + // 空行时,会出现没有 br 的情况,需要根据父元素 <p> 获取位置信息 + var parent_1 = range.startContainer.parentElement; + if (parent_1 && parent_1.getClientRects().length > 0) { + cursorRect = parent_1.getClientRects()[0]; + } + else { + return { + left: 0, + top: 0, + }; + } + } + else { + var children = range.startContainer.children; + if (children[range.startOffset] && + children[range.startOffset].getClientRects().length > 0) { + // markdown 模式回车 + cursorRect = children[range.startOffset].getClientRects()[0]; + } + else if (range.startContainer.childNodes.length > 0) { + // in table or code block + var cloneRange = range.cloneRange(); + range.selectNode(range.startContainer.childNodes[Math.max(0, range.startOffset - 1)]); + cursorRect = range.getClientRects()[0]; + range.setEnd(cloneRange.endContainer, cloneRange.endOffset); + range.setStart(cloneRange.startContainer, cloneRange.startOffset); + } + else { + cursorRect = range.startContainer.getClientRects()[0]; + } + if (!cursorRect) { + var parentElement = range.startContainer.childNodes[range.startOffset]; + while (!parentElement.getClientRects || + (parentElement.getClientRects && parentElement.getClientRects().length === 0)) { + parentElement = parentElement.parentElement; + } + cursorRect = parentElement.getClientRects()[0]; + } + } + } + else { + cursorRect = range.getClientRects()[0]; + } + return { + left: cursorRect.left - parentRect.left, + top: cursorRect.top - parentRect.top, + }; +}; +var selectIsEditor = function (editor, range) { + if (!range) { + if (getSelection().rangeCount === 0) { + return false; + } + else { + range = getSelection().getRangeAt(0); + } + } + var container = range.commonAncestorContainer; + return editor.isEqualNode(container) || editor.contains(container); +}; +var setSelectionFocus = function (range) { + var selection = window.getSelection(); + selection.removeAllRanges(); + selection.addRange(range); +}; +var getSelectPosition = function (selectElement, editorElement, range) { + var position = { + end: 0, + start: 0, + }; + if (!range) { + if (getSelection().rangeCount === 0) { + return position; + } + range = window.getSelection().getRangeAt(0); + } + if (selectIsEditor(editorElement, range)) { + var preSelectionRange = range.cloneRange(); + if (selectElement.childNodes[0] && selectElement.childNodes[0].childNodes[0]) { + preSelectionRange.setStart(selectElement.childNodes[0].childNodes[0], 0); + } + else { + preSelectionRange.selectNodeContents(selectElement); + } + preSelectionRange.setEnd(range.startContainer, range.startOffset); + position.start = preSelectionRange.toString().length; + position.end = position.start + range.toString().length; + } + return position; +}; +var setSelectionByPosition = function (start, end, editor) { + var charIndex = 0; + var line = 0; + var pNode = editor.childNodes[line]; + var foundStart = false; + var stop = false; + start = Math.max(0, start); + end = Math.max(0, end); + var range = editor.ownerDocument.createRange(); + range.setStart(pNode || editor, 0); + range.collapse(true); + while (!stop && pNode) { + var nextCharIndex = charIndex + pNode.textContent.length; + if (!foundStart && start >= charIndex && start <= nextCharIndex) { + if (start === 0) { + range.setStart(pNode, 0); + } + else { + if (pNode.childNodes[0].nodeType === 3) { + range.setStart(pNode.childNodes[0], start - charIndex); + } + else if (pNode.nextSibling) { + range.setStartBefore(pNode.nextSibling); + } + else { + range.setStartAfter(pNode); + } + } + foundStart = true; + if (start === end) { + stop = true; + break; + } + } + if (foundStart && end >= charIndex && end <= nextCharIndex) { + if (end === 0) { + range.setEnd(pNode, 0); + } + else { + if (pNode.childNodes[0].nodeType === 3) { + range.setEnd(pNode.childNodes[0], end - charIndex); + } + else if (pNode.nextSibling) { + range.setEndBefore(pNode.nextSibling); + } + else { + range.setEndAfter(pNode); + } + } + stop = true; + } + charIndex = nextCharIndex; + pNode = editor.childNodes[++line]; + } + if (!stop && editor.childNodes[line - 1]) { + range.setStartBefore(editor.childNodes[line - 1]); + } + setSelectionFocus(range); + return range; +}; +var setRangeByWbr = function (element, range) { + var wbrElement = element.querySelector("wbr"); + if (!wbrElement) { + return; + } + if (!wbrElement.previousElementSibling) { + if (wbrElement.previousSibling) { + // text<wbr> + range.setStart(wbrElement.previousSibling, wbrElement.previousSibling.textContent.length); + } + else if (wbrElement.nextSibling) { + if (wbrElement.nextSibling.nodeType === 3) { + // <wbr>text + range.setStart(wbrElement.nextSibling, 0); + } + else { + // <wbr><br> https://github.com/Vanessa219/vditor/issues/400 + range.setStartBefore(wbrElement.nextSibling); + } + } + else { + // 内容为空 + range.setStart(wbrElement.parentElement, 0); + } + } + else { + if (wbrElement.previousElementSibling.isSameNode(wbrElement.previousSibling)) { + if (wbrElement.previousElementSibling.lastChild) { + // <em>text</em><wbr> + range.setStartBefore(wbrElement); + range.collapse(true); + setSelectionFocus(range); + // fix Chrome set range bug: **c** + if ((0,_compatibility__WEBPACK_IMPORTED_MODULE_2__/* .isChrome */ .i7)() && (wbrElement.previousElementSibling.tagName === "EM" || + wbrElement.previousElementSibling.tagName === "STRONG" || + wbrElement.previousElementSibling.tagName === "S")) { + range.insertNode(document.createTextNode(_constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.ZWSP */ .g.ZWSP)); + range.collapse(false); + } + wbrElement.remove(); + return; + } + else { + // <br><wbr> + range.setStartAfter(wbrElement.previousElementSibling); + } + } + else { + // <em>text</em>text<wbr> + range.setStart(wbrElement.previousSibling, wbrElement.previousSibling.textContent.length); + } + } + range.collapse(true); + wbrElement.remove(); + setSelectionFocus(range); +}; +var insertHTML = function (html, vditor) { + // 使用 lute 方法会添加 p 元素,只有一个 p 元素的时候进行删除 + var tempElement = document.createElement("div"); + tempElement.innerHTML = html; + var tempBlockElement = tempElement.querySelectorAll("p"); + if (tempBlockElement.length === 1 && !tempBlockElement[0].previousSibling && !tempBlockElement[0].nextSibling && + vditor[vditor.currentMode].element.children.length > 0 && tempElement.firstElementChild.tagName === "P") { + html = tempBlockElement[0].innerHTML.trim(); + } + var pasteElement = document.createElement("div"); + pasteElement.innerHTML = html; + var range = getEditorRange(vditor); + if (range.toString() !== "") { + vditor[vditor.currentMode].preventInput = true; + document.execCommand("delete", false, ""); + } + if (pasteElement.firstElementChild && + pasteElement.firstElementChild.getAttribute("data-block") === "0") { + // 粘贴内容为块元素时,应在下一段落中插入 + pasteElement.lastElementChild.insertAdjacentHTML("beforeend", "<wbr>"); + var blockElement = (0,_hasClosest__WEBPACK_IMPORTED_MODULE_1__/* .hasClosestBlock */ .F9)(range.startContainer); + if (!blockElement) { + vditor[vditor.currentMode].element.insertAdjacentHTML("beforeend", pasteElement.innerHTML); + } + else { + blockElement.insertAdjacentHTML("afterend", pasteElement.innerHTML); + } + setRangeByWbr(vditor[vditor.currentMode].element, range); + } + else { + var pasteTemplate = document.createElement("template"); + pasteTemplate.innerHTML = html; + range.insertNode(pasteTemplate.content.cloneNode(true)); + range.collapse(false); + setSelectionFocus(range); + } +}; + + +/***/ }) + +/******/ }); +/************************************************************************/ +/******/ // The module cache +/******/ var __webpack_module_cache__ = {}; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ // Check if module is in cache +/******/ var cachedModule = __webpack_module_cache__[moduleId]; +/******/ if (cachedModule !== undefined) { +/******/ return cachedModule.exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = __webpack_module_cache__[moduleId] = { +/******/ // no module.id needed +/******/ // no module.loaded needed +/******/ exports: {} +/******/ }; +/******/ +/******/ // Execute the module function +/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/************************************************************************/ +/******/ /* webpack/runtime/define property getters */ +/******/ (() => { +/******/ // define getter functions for harmony exports +/******/ __webpack_require__.d = (exports, definition) => { +/******/ for(var key in definition) { +/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { +/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); +/******/ } +/******/ } +/******/ }; +/******/ })(); +/******/ +/******/ /* webpack/runtime/hasOwnProperty shorthand */ +/******/ (() => { +/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop)) +/******/ })(); +/******/ +/******/ /* webpack/runtime/make namespace object */ +/******/ (() => { +/******/ // define __esModule on exports +/******/ __webpack_require__.r = (exports) => { +/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { +/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); +/******/ } +/******/ Object.defineProperty(exports, '__esModule', { value: true }); +/******/ }; +/******/ })(); +/******/ +/************************************************************************/ +var __webpack_exports__ = {}; +// This entry need to be wrapped in an IIFE because it need to be in strict mode. +(() => { +"use strict"; + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + "default": () => (/* binding */ src) +}); + +// EXTERNAL MODULE: ./src/method.ts + 4 modules +var method = __webpack_require__(408); +// EXTERNAL MODULE: ./src/ts/constants.ts +var constants = __webpack_require__(145); +// EXTERNAL MODULE: ./src/ts/util/code160to32.ts +var code160to32 = __webpack_require__(105); +;// CONCATENATED MODULE: ./src/ts/markdown/getMarkdown.ts + +var getMarkdown = function (vditor) { + if (vditor.currentMode === "sv") { + return (0,code160to32/* code160to32 */.X)("".concat(vditor.sv.element.textContent, "\n").replace(/\n\n$/, "\n")); + } + else if (vditor.currentMode === "wysiwyg") { + return vditor.lute.VditorDOM2Md(vditor.wysiwyg.element.innerHTML); + } + else if (vditor.currentMode === "ir") { + return vditor.lute.VditorIRDOM2Md(vditor.ir.element.innerHTML); + } + return ""; +}; + +// EXTERNAL MODULE: ./src/ts/util/addScript.ts +var addScript = __webpack_require__(413); +;// CONCATENATED MODULE: ./src/ts/devtools/index.ts + + +var DevTools = /** @class */ (function () { + function DevTools() { + this.element = document.createElement("div"); + this.element.className = "vditor-devtools"; + this.element.innerHTML = '<div class="vditor-reset--error"></div><div style="height: 100%;"></div>'; + } + DevTools.prototype.renderEchart = function (vditor) { + var _this = this; + if (vditor.devtools.element.style.display !== "block") { + return; + } + (0,addScript/* addScript */.G)("".concat(vditor.options.cdn, "/dist/js/echarts/echarts.min.js?v=5.5.1"), "vditorEchartsScript").then(function () { + if (!_this.ASTChart) { + _this.ASTChart = echarts.init(vditor.devtools.element.lastElementChild); + } + try { + _this.element.lastElementChild.style.display = "block"; + _this.element.firstElementChild.innerHTML = ""; + _this.ASTChart.setOption({ + series: [ + { + data: JSON.parse(vditor.lute.RenderEChartsJSON(getMarkdown(vditor))), + initialTreeDepth: -1, + label: { + align: "left", + backgroundColor: "rgba(68, 77, 86, .68)", + borderRadius: 3, + color: "#d1d5da", + fontSize: 12, + lineHeight: 12, + offset: [9, 12], + padding: [2, 4, 2, 4], + position: "top", + verticalAlign: "middle", + }, + lineStyle: { + color: "#4285f4", + type: "curve", + width: 1, + }, + orient: "vertical", + roam: true, + type: "tree", + }, + ], + toolbox: { + bottom: 25, + emphasis: { + iconStyle: { + color: "#4285f4", + }, + }, + feature: { + restore: { + show: true, + }, + saveAsImage: { + show: true, + }, + }, + right: 15, + show: true, + }, + }); + _this.ASTChart.resize(); + } + catch (e) { + _this.element.lastElementChild.style.display = "none"; + _this.element.firstElementChild.innerHTML = e; + } + }); + }; + return DevTools; +}()); + + +// EXTERNAL MODULE: ./src/ts/util/compatibility.ts +var compatibility = __webpack_require__(410); +;// CONCATENATED MODULE: ./src/ts/toolbar/setToolbar.ts + + +var removeCurrentToolbar = function (toolbar, names) { + names.forEach(function (name) { + if (!toolbar[name]) { + return; + } + var itemElement = toolbar[name].children[0]; + if (itemElement && itemElement.classList.contains("vditor-menu--current")) { + itemElement.classList.remove("vditor-menu--current"); + } + }); +}; +var setCurrentToolbar = function (toolbar, names) { + names.forEach(function (name) { + if (!toolbar[name]) { + return; + } + var itemElement = toolbar[name].children[0]; + if (itemElement && !itemElement.classList.contains("vditor-menu--current")) { + itemElement.classList.add("vditor-menu--current"); + } + }); +}; +var enableToolbar = function (toolbar, names) { + names.forEach(function (name) { + if (!toolbar[name]) { + return; + } + var itemElement = toolbar[name].children[0]; + if (itemElement && itemElement.classList.contains(constants/* Constants.CLASS_MENU_DISABLED */.g.CLASS_MENU_DISABLED)) { + itemElement.classList.remove(constants/* Constants.CLASS_MENU_DISABLED */.g.CLASS_MENU_DISABLED); + } + }); +}; +var disableToolbar = function (toolbar, names) { + names.forEach(function (name) { + if (!toolbar[name]) { + return; + } + var itemElement = toolbar[name].children[0]; + if (itemElement && !itemElement.classList.contains(constants/* Constants.CLASS_MENU_DISABLED */.g.CLASS_MENU_DISABLED)) { + itemElement.classList.add(constants/* Constants.CLASS_MENU_DISABLED */.g.CLASS_MENU_DISABLED); + } + }); +}; +var hideToolbar = function (toolbar, names) { + names.forEach(function (name) { + if (!toolbar[name]) { + return; + } + if (toolbar[name]) { + toolbar[name].style.display = "none"; + } + }); +}; +var showToolbar = function (toolbar, names) { + names.forEach(function (name) { + if (!toolbar[name]) { + return; + } + if (toolbar[name]) { + toolbar[name].style.display = "block"; + } + }); +}; +// "subToolbar", "hint", "popover" +var hidePanel = function (vditor, panels, exceptElement) { + if (panels.includes("subToolbar")) { + vditor.toolbar.element.querySelectorAll(".vditor-hint").forEach(function (item) { + if (exceptElement && item.isEqualNode(exceptElement)) { + return; + } + item.style.display = "none"; + }); + if (vditor.toolbar.elements.emoji) { + vditor.toolbar.elements.emoji.lastElementChild.style.display = "none"; + } + } + if (panels.includes("hint")) { + vditor.hint.element.style.display = "none"; + } + if (vditor.wysiwyg.popover && panels.includes("popover")) { + vditor.wysiwyg.popover.style.display = "none"; + } +}; +var toggleSubMenu = function (vditor, panelElement, actionBtn, level) { + actionBtn.addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + event.preventDefault(); + event.stopPropagation(); + if (actionBtn.classList.contains(constants/* Constants.CLASS_MENU_DISABLED */.g.CLASS_MENU_DISABLED)) { + return; + } + vditor.toolbar.element.querySelectorAll(".vditor-hint--current").forEach(function (item) { + item.classList.remove("vditor-hint--current"); + }); + if (panelElement.style.display === "block") { + panelElement.style.display = "none"; + } + else { + hidePanel(vditor, ["subToolbar", "hint", "popover"], actionBtn.parentElement.parentElement); + if (!actionBtn.classList.contains("vditor-tooltipped")) { + actionBtn.classList.add("vditor-hint--current"); + } + panelElement.style.display = "block"; + if (vditor.toolbar.element.getBoundingClientRect().right - actionBtn.getBoundingClientRect().right < 250) { + panelElement.classList.add("vditor-panel--left"); + } + else { + panelElement.classList.remove("vditor-panel--left"); + } + } + }); +}; + +// EXTERNAL MODULE: ./src/ts/util/hasClosest.ts +var hasClosest = __webpack_require__(106); +// EXTERNAL MODULE: ./src/ts/util/hasClosestByHeadings.ts +var hasClosestByHeadings = __webpack_require__(771); +;// CONCATENATED MODULE: ./src/ts/util/log.ts +var log = function (method, content, type, print) { + if (print) { + // @ts-ignore + console.log("".concat(method, " - ").concat(type, ": ").concat(content)); + } +}; + +// EXTERNAL MODULE: ./src/ts/markdown/abcRender.ts +var abcRender = __webpack_require__(135); +// EXTERNAL MODULE: ./src/ts/markdown/chartRender.ts +var chartRender = __webpack_require__(775); +// EXTERNAL MODULE: ./src/ts/markdown/codeRender.ts +var codeRender = __webpack_require__(428); +// EXTERNAL MODULE: ./src/ts/markdown/flowchartRender.ts +var flowchartRender = __webpack_require__(325); +// EXTERNAL MODULE: ./src/ts/markdown/graphvizRender.ts +var graphvizRender = __webpack_require__(483); +// EXTERNAL MODULE: ./src/ts/markdown/highlightRender.ts +var highlightRender = __webpack_require__(999); +// EXTERNAL MODULE: ./src/ts/markdown/mathRender.ts +var mathRender = __webpack_require__(472); +// EXTERNAL MODULE: ./src/ts/markdown/mermaidRender.ts +var mermaidRender = __webpack_require__(637); +// EXTERNAL MODULE: ./src/ts/markdown/markmapRender.ts +var markmapRender = __webpack_require__(11); +// EXTERNAL MODULE: ./src/ts/markdown/mindmapRender.ts +var mindmapRender = __webpack_require__(194); +// EXTERNAL MODULE: ./src/ts/markdown/plantumlRender.ts +var plantumlRender = __webpack_require__(229); +// EXTERNAL MODULE: ./src/ts/markdown/SMILESRender.ts +var SMILESRender = __webpack_require__(825); +;// CONCATENATED MODULE: ./src/ts/util/processCode.ts + + + + + + + + + + + + +var processPasteCode = function (html, text, type) { + if (type === void 0) { type = "sv"; } + var tempElement = document.createElement("div"); + tempElement.innerHTML = html; + var isCode = false; + if (tempElement.childElementCount === 1 && + tempElement.lastElementChild.style.fontFamily.indexOf("monospace") > -1) { + // VS Code + isCode = true; + } + var pres = tempElement.querySelectorAll("pre"); + if (tempElement.childElementCount === 1 && pres.length === 1 + && pres[0].className !== "vditor-wysiwyg" + && pres[0].className !== "vditor-sv") { + // IDE + isCode = true; + } + if (html.indexOf('\n<p class="p1">') === 0) { + // Xcode + isCode = true; + } + if (tempElement.childElementCount === 1 && tempElement.firstElementChild.tagName === "TABLE" && + tempElement.querySelector(".line-number") && tempElement.querySelector(".line-content")) { + // 网页源码 + isCode = true; + } + if (isCode) { + var code = text || html; + if (/\n/.test(code) || pres.length === 1) { + if (type === "wysiwyg") { + return "<div class=\"vditor-wysiwyg__block\" data-block=\"0\" data-type=\"code-block\"><pre><code>".concat(code.replace(/&/g, "&").replace(/</g, "<"), "<wbr></code></pre></div>"); + } + return "\n```\n" + code.replace(/&/g, "&").replace(/</g, "<") + "\n```"; + } + else { + if (type === "wysiwyg") { + return "<code>".concat(code.replace(/&/g, "&").replace(/</g, "<"), "</code><wbr>"); + } + return "`".concat(code, "`"); + } + } + return false; +}; +var processCodeRender = function (previewPanel, vditor) { + if (!previewPanel) { + return; + } + if (previewPanel.parentElement.getAttribute("data-type") === "html-block") { + previewPanel.setAttribute("data-render", "1"); + return; + } + var language = previewPanel.firstElementChild.className.replace("language-", ""); + if (language === "abc") { + (0,abcRender/* abcRender */.Q)(previewPanel, vditor.options.cdn); + } + else if (language === "mermaid") { + (0,mermaidRender/* mermaidRender */.i)(previewPanel, vditor.options.cdn, vditor.options.theme); + } + else if (language === "smiles") { + (0,SMILESRender/* SMILESRender */.J)(previewPanel, vditor.options.cdn, vditor.options.theme); + } + else if (language === "markmap") { + (0,markmapRender/* markmapRender */.K)(previewPanel, vditor.options.cdn); + } + else if (language === "flowchart") { + (0,flowchartRender/* flowchartRender */.P)(previewPanel, vditor.options.cdn); + } + else if (language === "echarts") { + (0,chartRender/* chartRender */.p)(previewPanel, vditor.options.cdn, vditor.options.theme); + } + else if (language === "mindmap") { + (0,mindmapRender/* mindmapRender */.P)(previewPanel, vditor.options.cdn, vditor.options.theme); + } + else if (language === "plantuml") { + (0,plantumlRender/* plantumlRender */.B)(previewPanel, vditor.options.cdn); + } + else if (language === "graphviz") { + (0,graphvizRender/* graphvizRender */.v)(previewPanel, vditor.options.cdn); + } + else if (language === "math") { + (0,mathRender/* mathRender */.H)(previewPanel, { cdn: vditor.options.cdn, math: vditor.options.preview.math }); + } + else { + var cRender = vditor.options.customRenders.find(function (item) { + if (item.language === language) { + item.render(previewPanel, vditor); + return true; + } + }); + if (!cRender) { + (0,highlightRender/* highlightRender */.s)(Object.assign({}, vditor.options.preview.hljs), previewPanel, vditor.options.cdn); + (0,codeRender/* codeRender */.O)(previewPanel, vditor.options.preview.hljs); + } + } + previewPanel.setAttribute("data-render", "1"); +}; + +// EXTERNAL MODULE: ./src/ts/util/selection.ts +var selection = __webpack_require__(810); +;// CONCATENATED MODULE: ./src/ts/util/toc.ts + + + + +var renderToc = function (vditor) { + if (vditor.currentMode === "sv") { + return; + } + var editorElement = vditor[vditor.currentMode].element; + var tocHTML = vditor.outline.render(vditor); + if (tocHTML === "") { + tocHTML = "[ToC]"; + } + editorElement.querySelectorAll('[data-type="toc-block"]').forEach(function (item) { + item.innerHTML = tocHTML; + (0,mathRender/* mathRender */.H)(item, { + cdn: vditor.options.cdn, + math: vditor.options.preview.math, + }); + }); +}; +var clickToc = function (event, vditor) { + var spanElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(event.target, "SPAN"); + if (spanElement && (0,hasClosest/* hasClosestByClassName */.fb)(spanElement, "vditor-toc")) { + var headingElement = vditor[vditor.currentMode].element.querySelector("#" + spanElement.getAttribute("data-target-id")); + if (headingElement) { + if (vditor.options.height === "auto") { + var windowScrollY = headingElement.offsetTop + vditor.element.offsetTop; + if (!vditor.options.toolbarConfig.pin) { + windowScrollY += vditor.toolbar.element.offsetHeight; + } + window.scrollTo(window.scrollX, windowScrollY); + } + else { + if (vditor.element.offsetTop < window.scrollY) { + window.scrollTo(window.scrollX, vditor.element.offsetTop); + } + vditor[vditor.currentMode].element.scrollTop = headingElement.offsetTop; + } + } + return; + } +}; +var keydownToc = function (blockElement, vditor, event, range) { + // toc 前无元素,插入空块 + if (blockElement.previousElementSibling && + blockElement.previousElementSibling.classList.contains("vditor-toc")) { + if (event.key === "Backspace" && + (0,selection/* getSelectPosition */.im)(blockElement, vditor[vditor.currentMode].element, range).start === 0) { + blockElement.previousElementSibling.remove(); + execAfterRender(vditor); + return true; + } + if (insertBeforeBlock(vditor, event, range, blockElement, blockElement.previousElementSibling)) { + return true; + } + } + // toc 后无元素,插入空块 + if (blockElement.nextElementSibling && + blockElement.nextElementSibling.classList.contains("vditor-toc")) { + if (event.key === "Delete" && + (0,selection/* getSelectPosition */.im)(blockElement, vditor[vditor.currentMode].element, range).start + >= blockElement.textContent.trimRight().length) { + blockElement.nextElementSibling.remove(); + execAfterRender(vditor); + return true; + } + if (insertAfterBlock(vditor, event, range, blockElement, blockElement.nextElementSibling)) { + return true; + } + } + // toc 删除 + if (event.key === "Backspace" || event.key === "Delete") { + var tocElement = (0,hasClosest/* hasClosestByClassName */.fb)(range.startContainer, "vditor-toc"); + if (tocElement) { + tocElement.remove(); + execAfterRender(vditor); + return true; + } + } +}; + +;// CONCATENATED MODULE: ./src/ts/ir/input.ts + + + + + + + + + + +var input = function (vditor, range, ignoreSpace, event) { + if (ignoreSpace === void 0) { ignoreSpace = false; } + var blockElement = (0,hasClosest/* hasClosestBlock */.F9)(range.startContainer); + // 前后可以输入空格 + if (blockElement && !ignoreSpace && blockElement.getAttribute("data-type") !== "code-block") { + if ((isHrMD(blockElement.innerHTML) && blockElement.previousElementSibling) || + isHeadingMD(blockElement.innerHTML)) { + return; + } + // 前后空格处理 + var startOffset = (0,selection/* getSelectPosition */.im)(blockElement, vditor.ir.element, range).start; + // 开始可以输入空格 + var startSpace = true; + for (var i = startOffset - 1; + // 软换行后有空格 + i > blockElement.textContent.substr(0, startOffset).lastIndexOf("\n"); i--) { + if (blockElement.textContent.charAt(i) !== " " && + // 多个 tab 前删除不形成代码块 https://github.com/Vanessa219/vditor/issues/162 1 + blockElement.textContent.charAt(i) !== "\t") { + startSpace = false; + break; + } + } + if (startOffset === 0) { + startSpace = false; + } + // 结尾可以输入空格 + var endSpace = true; + for (var i = startOffset - 1; i < blockElement.textContent.length; i++) { + if (blockElement.textContent.charAt(i) !== " " && blockElement.textContent.charAt(i) !== "\n") { + endSpace = false; + break; + } + } + if (startSpace) { + if (typeof vditor.options.input === "function") { + vditor.options.input(getMarkdown(vditor)); + } + return; + } + // https://github.com/Vanessa219/vditor/issues/729 + if (endSpace && /^#{1,6} $/.test(blockElement.textContent)) { + endSpace = false; + } + if (endSpace) { + var markerElement = (0,hasClosest/* hasClosestByClassName */.fb)(range.startContainer, "vditor-ir__marker"); + if (markerElement) { + // inline marker space https://github.com/Vanessa219/vditor/issues/239 + } + else { + var previousNode = range.startContainer.previousSibling; + if (previousNode && previousNode.nodeType !== 3 && previousNode.classList.contains("vditor-ir__node--expand")) { + // FireFox https://github.com/Vanessa219/vditor/issues/239 + previousNode.classList.remove("vditor-ir__node--expand"); + } + if (typeof vditor.options.input === "function") { + vditor.options.input(getMarkdown(vditor)); + } + return; + } + } + } + vditor.ir.element.querySelectorAll(".vditor-ir__node--expand").forEach(function (item) { + item.classList.remove("vditor-ir__node--expand"); + }); + if (!blockElement) { + // 使用顶级块元素,应使用 innerHTML + blockElement = vditor.ir.element; + } + // document.exeComment insertHTML 会插入 wbr + if (!blockElement.querySelector("wbr")) { + var previewRenderElement = (0,hasClosest/* hasClosestByClassName */.fb)(range.startContainer, "vditor-ir__preview"); + if (previewRenderElement) { + previewRenderElement.previousElementSibling.insertAdjacentHTML("beforeend", "<wbr>"); + } + else { + range.insertNode(document.createElement("wbr")); + } + } + // 清除浏览器自带的样式 + blockElement.querySelectorAll("[style]").forEach(function (item) { + item.removeAttribute("style"); + }); + if (blockElement.getAttribute("data-type") === "link-ref-defs-block") { + // 修改链接引用 + blockElement = vditor.ir.element; + } + var isIRElement = blockElement.isEqualNode(vditor.ir.element); + var footnoteElement = (0,hasClosest/* hasClosestByAttribute */.a1)(blockElement, "data-type", "footnotes-block"); + var html = ""; + if (!isIRElement) { + var blockquoteElement = (0,hasClosestByHeadings/* hasClosestByTag */.S)(range.startContainer, "BLOCKQUOTE"); + // 列表需要到最顶层 + var topListElement = (0,hasClosest/* getTopList */.O9)(range.startContainer); + if (topListElement) { + blockElement = topListElement; + } + // 应到引用层,否则 > --- 会解析为 front-matter;列表中有 blockquote 则解析 blockquote;blockquote 中有列表则解析列表 + if (blockquoteElement && (!topListElement || (topListElement && !blockquoteElement.contains(topListElement)))) { + blockElement = blockquoteElement; + } + // 修改脚注 + if (footnoteElement) { + blockElement = footnoteElement; + } + html = blockElement.outerHTML; + if (blockElement.tagName === "UL" || blockElement.tagName === "OL") { + // 如果为列表的话,需要把上下的列表都重绘 + var listPrevElement = blockElement.previousElementSibling; + var listNextElement = blockElement.nextElementSibling; + if (listPrevElement && (listPrevElement.tagName === "UL" || listPrevElement.tagName === "OL")) { + html = listPrevElement.outerHTML + html; + listPrevElement.remove(); + } + if (listNextElement && (listNextElement.tagName === "UL" || listNextElement.tagName === "OL")) { + html = html + listNextElement.outerHTML; + listNextElement.remove(); + } + // firefox 列表回车不会产生新的 list item https://github.com/Vanessa219/vditor/issues/194 + html = html.replace("<div><wbr><br></div>", "<li><p><wbr><br></p></li>"); + } + else if (blockElement.previousElementSibling && + blockElement.previousElementSibling.textContent.replace(constants/* Constants.ZWSP */.g.ZWSP, "") !== "" && + event && event.inputType === "insertParagraph") { + // 换行时需要处理上一段落 + html = blockElement.previousElementSibling.outerHTML + html; + blockElement.previousElementSibling.remove(); + } + if (!blockElement.innerText.startsWith("```")) { + // 添加链接引用 + vditor.ir.element.querySelectorAll("[data-type='link-ref-defs-block']").forEach(function (item) { + if (item && !blockElement.isEqualNode(item)) { + html += item.outerHTML; + item.remove(); + } + }); + // 添加脚注 + vditor.ir.element.querySelectorAll("[data-type='footnotes-block']").forEach(function (item) { + if (item && !blockElement.isEqualNode(item)) { + html += item.outerHTML; + item.remove(); + } + }); + } + } + else { + html = blockElement.innerHTML; + } + log("SpinVditorIRDOM", html, "argument", vditor.options.debugger); + html = vditor.lute.SpinVditorIRDOM(html); + log("SpinVditorIRDOM", html, "result", vditor.options.debugger); + if (isIRElement) { + blockElement.innerHTML = html; + } + else { + blockElement.outerHTML = html; + // 更新正文中的 tip + if (footnoteElement) { + var footnoteItemElement = (0,hasClosest/* hasClosestByAttribute */.a1)(vditor.ir.element.querySelector("wbr"), "data-type", "footnotes-def"); + if (footnoteItemElement) { + var footnoteItemText = footnoteItemElement.textContent; + var marker = footnoteItemText.substring(1, footnoteItemText.indexOf("]:")); + var footnoteRefElement = vditor.ir.element.querySelector("sup[data-type=\"footnotes-ref\"][data-footnotes-label=\"".concat(marker, "\"]")); + if (footnoteRefElement) { + footnoteRefElement.setAttribute("aria-label", footnoteItemText.substr(marker.length + 3).trim().substr(0, 24)); + } + } + } + } + // linkref 合并及添加 + var firstLinkRefDefElement; + var allLinkRefDefsElement = vditor.ir.element.querySelectorAll("[data-type='link-ref-defs-block']"); + allLinkRefDefsElement.forEach(function (item, index) { + if (index === 0) { + firstLinkRefDefElement = item; + } + else { + firstLinkRefDefElement.insertAdjacentHTML("beforeend", item.innerHTML); + item.remove(); + } + }); + if (allLinkRefDefsElement.length > 0) { + vditor.ir.element.insertAdjacentElement("beforeend", allLinkRefDefsElement[0]); + } + // 脚注合并后添加的末尾 + var firstFootnoteElement; + var allFootnoteElement = vditor.ir.element.querySelectorAll("[data-type='footnotes-block']"); + allFootnoteElement.forEach(function (item, index) { + if (index === 0) { + firstFootnoteElement = item; + } + else { + firstFootnoteElement.insertAdjacentHTML("beforeend", item.innerHTML); + item.remove(); + } + }); + if (allFootnoteElement.length > 0) { + vditor.ir.element.insertAdjacentElement("beforeend", allFootnoteElement[0]); + } + (0,selection/* setRangeByWbr */.ib)(vditor.ir.element, range); + vditor.ir.element.querySelectorAll(".vditor-ir__preview[data-render='2']").forEach(function (item) { + processCodeRender(item, vditor); + }); + renderToc(vditor); + process_processAfterRender(vditor, { + enableAddUndoStack: true, + enableHint: true, + enableInput: true, + }); +}; + +;// CONCATENATED MODULE: ./src/ts/util/hotKey.ts + +// 是否匹配 ⇧⌘[] / ⌘[] / ⌥[] / ⌥⌘[] / ⇧Tab / [] +var matchHotKey = function (hotKey, event) { + if (hotKey === "") { + return false; + } + // [] + if (hotKey.indexOf("⇧") === -1 && hotKey.indexOf("⌘") === -1 && hotKey.indexOf("⌥") === -1) { + if (!(0,compatibility/* isCtrl */.yl)(event) && !event.altKey && !event.shiftKey && event.code === hotKey) { + return true; + } + return false; + } + // 是否匹配 ⇧Tab + if (hotKey === "⇧Tab") { + if (!(0,compatibility/* isCtrl */.yl)(event) && !event.altKey && event.shiftKey && event.code === "Tab") { + return true; + } + return false; + } + var hotKeys = hotKey.split(""); + if (hotKey.startsWith("⌥")) { + // 是否匹配 ⌥[] / ⌥⌘[] + var keyCode = hotKeys.length === 3 ? hotKeys[2] : hotKeys[1]; + if ((hotKeys.length === 3 ? (0,compatibility/* isCtrl */.yl)(event) : !(0,compatibility/* isCtrl */.yl)(event)) && event.altKey && !event.shiftKey && + event.code === (/^[0-9]$/.test(keyCode) ? "Digit" : "Key") + keyCode) { + return true; + } + return false; + } + // 是否匹配 ⇧⌘[] / ⌘[] + if (hotKey === "⌘Enter") { + hotKeys = ["⌘", "Enter"]; + } + var hasShift = hotKeys.length > 2 && (hotKeys[0] === "⇧"); + var key = (hasShift ? hotKeys[2] : hotKeys[1]); + if (hasShift && ((0,compatibility/* isFirefox */.vU)() || !/Mac/.test(navigator.platform))) { + if (key === "-") { + key = "_"; + } + else if (key === "=") { + key = "+"; + } + } + if ((0,compatibility/* isCtrl */.yl)(event) && event.key.toLowerCase() === key.toLowerCase() && !event.altKey + && ((!hasShift && !event.shiftKey) || (hasShift && event.shiftKey))) { + return true; + } + return false; +}; + +;// CONCATENATED MODULE: ./src/ts/ir/expandMarker.ts + + +var nextIsNode = function (range) { + var startContainer = range.startContainer; + if (startContainer.nodeType === 3 && startContainer.nodeValue.length !== range.startOffset) { + return false; + } + var nextNode = startContainer.nextSibling; + while (nextNode && nextNode.textContent === "") { + nextNode = nextNode.nextSibling; + } + if (!nextNode) { + // *em*|**string** + var markerElement = (0,hasClosest/* hasClosestByClassName */.fb)(startContainer, "vditor-ir__marker"); + if (markerElement && !markerElement.nextSibling) { + var parentNextNode = startContainer.parentElement.parentElement.nextSibling; + if (parentNextNode && parentNextNode.nodeType !== 3 && + parentNextNode.classList.contains("vditor-ir__node")) { + return parentNextNode; + } + } + return false; + } + else if (nextNode && nextNode.nodeType !== 3 && nextNode.classList.contains("vditor-ir__node") && + !nextNode.getAttribute("data-block")) { + // test|*em* + return nextNode; + } + return false; +}; +var previousIsNode = function (range) { + var startContainer = range.startContainer; + var previousNode = startContainer.previousSibling; + if (startContainer.nodeType === 3 && range.startOffset === 0 && previousNode && previousNode.nodeType !== 3 && + // *em*|text + previousNode.classList.contains("vditor-ir__node") && !previousNode.getAttribute("data-block")) { + return previousNode; + } + return false; +}; +var expandMarker = function (range, vditor) { + vditor.ir.element.querySelectorAll(".vditor-ir__node--expand").forEach(function (item) { + item.classList.remove("vditor-ir__node--expand"); + }); + var nodeElement = (0,hasClosest/* hasTopClosestByClassName */.JQ)(range.startContainer, "vditor-ir__node"); + var nodeElementEnd = !range.collapsed && (0,hasClosest/* hasTopClosestByClassName */.JQ)(range.endContainer, "vditor-ir__node"); + // 选中文本为同一个 nodeElement 内时,需要展开 + if (!range.collapsed && (!nodeElement || nodeElement !== nodeElementEnd)) { + return; + } + if (nodeElement) { + nodeElement.classList.add("vditor-ir__node--expand"); + nodeElement.classList.remove("vditor-ir__node--hidden"); + // https://github.com/Vanessa219/vditor/issues/615 safari中光标位置跳动 + (0,selection/* setSelectionFocus */.Hc)(range); + } + var nextNode = nextIsNode(range); + if (nextNode) { + nextNode.classList.add("vditor-ir__node--expand"); + nextNode.classList.remove("vditor-ir__node--hidden"); + return; + } + var previousNode = previousIsNode(range); + if (previousNode) { + previousNode.classList.add("vditor-ir__node--expand"); + previousNode.classList.remove("vditor-ir__node--hidden"); + return; + } +}; + +;// CONCATENATED MODULE: ./src/ts/ir/processKeydown.ts + + + + + + + + + + + +var processKeydown = function (vditor, event) { + vditor.ir.composingLock = event.isComposing; + if (event.isComposing) { + return false; + } + // 添加第一次记录 undo 的光标 + if (event.key.indexOf("Arrow") === -1 && event.key !== "Meta" && event.key !== "Control" && event.key !== "Alt" && + event.key !== "Shift" && event.key !== "CapsLock" && event.key !== "Escape" && !/^F\d{1,2}$/.test(event.key)) { + vditor.undo.recordFirstPosition(vditor, event); + } + var range = (0,selection/* getEditorRange */.zh)(vditor); + var startContainer = range.startContainer; + if (!fixGSKeyBackspace(event, vditor, startContainer)) { + return false; + } + fixCJKPosition(range, vditor, event); + fixHR(range); + // 仅处理以下快捷键操作 + if (event.key !== "Enter" && event.key !== "Tab" && event.key !== "Backspace" && event.key.indexOf("Arrow") === -1 + && !(0,compatibility/* isCtrl */.yl)(event) && event.key !== "Escape" && event.key !== "Delete") { + return false; + } + // 斜体、粗体、内联代码块中换行 + var newlineElement = (0,hasClosest/* hasClosestByAttribute */.a1)(startContainer, "data-newline", "1"); + if (!(0,compatibility/* isCtrl */.yl)(event) && !event.altKey && !event.shiftKey && event.key === "Enter" && newlineElement + && range.startOffset < newlineElement.textContent.length) { + var beforeMarkerElement = newlineElement.previousElementSibling; + if (beforeMarkerElement) { + range.insertNode(document.createTextNode(beforeMarkerElement.textContent)); + range.collapse(false); + } + var afterMarkerElement = newlineElement.nextSibling; + if (afterMarkerElement) { + range.insertNode(document.createTextNode(afterMarkerElement.textContent)); + range.collapse(true); + } + } + var pElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(startContainer, "P"); + // md 处理 + if (fixMarkdown(event, vditor, pElement, range)) { + return true; + } + // li + if (fixList(range, vditor, pElement, event)) { + return true; + } + // blockquote + if (fixBlockquote(vditor, range, event, pElement)) { + return true; + } + // 代码块 + var preRenderElement = (0,hasClosest/* hasClosestByClassName */.fb)(startContainer, "vditor-ir__marker--pre"); + if (preRenderElement && preRenderElement.tagName === "PRE") { + var codeRenderElement = preRenderElement.firstChild; + if (fixCodeBlock(vditor, event, preRenderElement, range)) { + return true; + } + // 数学公式上无元素,按上或左将添加新块 + if ((codeRenderElement.getAttribute("data-type") === "math-block" + || codeRenderElement.getAttribute("data-type") === "html-block") && + insertBeforeBlock(vditor, event, range, codeRenderElement, preRenderElement.parentElement)) { + return true; + } + // 代码块下无元素或者为代码块/table 元素,添加空块 + if (insertAfterBlock(vditor, event, range, codeRenderElement, preRenderElement.parentElement)) { + return true; + } + } + // 代码块语言 + var preBeforeElement = (0,hasClosest/* hasClosestByAttribute */.a1)(startContainer, "data-type", "code-block-info"); + if (preBeforeElement) { + if (event.key === "Enter" || event.key === "Tab") { + range.selectNodeContents(preBeforeElement.nextElementSibling.firstChild); + range.collapse(true); + event.preventDefault(); + hidePanel(vditor, ["hint"]); + return true; + } + if (event.key === "Backspace") { + var start = (0,selection/* getSelectPosition */.im)(preBeforeElement, vditor.ir.element).start; + if (start === 1) { // 删除零宽空格 + range.setStart(startContainer, 0); + } + if (start === 2) { // 删除时清空自动补全语言 + vditor.hint.recentLanguage = ""; + } + } + if (insertBeforeBlock(vditor, event, range, preBeforeElement, preBeforeElement.parentElement)) { + // 上无元素,按上或左将添加新块 + hidePanel(vditor, ["hint"]); + return true; + } + } + // table + var cellElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(startContainer, "TD") || + (0,hasClosest/* hasClosestByMatchTag */.lG)(startContainer, "TH"); + if (event.key.indexOf("Arrow") > -1 && cellElement) { + var tableElement = isFirstCell(cellElement); + if (tableElement && insertBeforeBlock(vditor, event, range, cellElement, tableElement)) { + return true; + } + var table2Element = isLastCell(cellElement); + if (table2Element && insertAfterBlock(vditor, event, range, cellElement, table2Element)) { + return true; + } + } + if (fixTable(vditor, event, range)) { + return true; + } + // task list + if (fixTask(vditor, range, event)) { + return true; + } + // tab + if (fixTab(vditor, range, event)) { + return true; + } + var headingElement = (0,hasClosestByHeadings/* hasClosestByHeadings */.W)(startContainer); + if (headingElement) { + // enter++: 标题变大 + if (matchHotKey("⌘=", event)) { + var headingMarkerElement = headingElement.querySelector(".vditor-ir__marker--heading"); + if (headingMarkerElement && headingMarkerElement.textContent.trim().length > 1) { + process_processHeading(vditor, headingMarkerElement.textContent.substr(1)); + } + event.preventDefault(); + return true; + } + // enter++: 标题变小 + if (matchHotKey("⌘-", event)) { + var headingMarkerElement = headingElement.querySelector(".vditor-ir__marker--heading"); + if (headingMarkerElement && headingMarkerElement.textContent.trim().length < 6) { + process_processHeading(vditor, headingMarkerElement.textContent.trim() + "# "); + } + event.preventDefault(); + return true; + } + } + var blockElement = (0,hasClosest/* hasClosestBlock */.F9)(startContainer); + if (event.key === "Backspace" && !(0,compatibility/* isCtrl */.yl)(event) && !event.shiftKey && !event.altKey && range.toString() === "") { + if (fixDelete(vditor, range, event, pElement)) { + return true; + } + if (blockElement && blockElement.previousElementSibling + && blockElement.tagName !== "UL" && blockElement.tagName !== "OL" + && (blockElement.previousElementSibling.getAttribute("data-type") === "code-block" || + blockElement.previousElementSibling.getAttribute("data-type") === "math-block")) { + var rangeStart = (0,selection/* getSelectPosition */.im)(blockElement, vditor.ir.element, range).start; + if (rangeStart === 0 || (rangeStart === 1 && blockElement.innerText.startsWith(constants/* Constants.ZWSP */.g.ZWSP))) { + // 当前块删除后光标落于代码渲染块上,当前块会被删除,因此需要阻止事件,不能和 keyup 中的代码块处理合并 + range.selectNodeContents(blockElement.previousElementSibling.querySelector(".vditor-ir__marker--pre code")); + range.collapse(false); + expandMarker(range, vditor); + if (blockElement.textContent.trim().replace(constants/* Constants.ZWSP */.g.ZWSP, "") === "") { + // 当前块为空且不是最后一个时,需要删除 + blockElement.remove(); + process_processAfterRender(vditor); + } + event.preventDefault(); + return true; + } + } + // 光标位于标题前,marker 后 + if (headingElement) { + var headingLength = headingElement.firstElementChild.textContent.length; + if ((0,selection/* getSelectPosition */.im)(headingElement, vditor.ir.element).start === headingLength && headingLength !== 0) { + range.setStart(headingElement.firstElementChild.firstChild, headingLength - 1); + range.collapse(true); + (0,selection/* setSelectionFocus */.Hc)(range); + } + } + } + if ((event.key === "ArrowUp" || event.key === "ArrowDown") && blockElement) { + // https://github.com/Vanessa219/vditor/issues/358 + blockElement.querySelectorAll(".vditor-ir__node").forEach(function (item) { + if (!item.contains(startContainer)) { + item.classList.add("vditor-ir__node--hidden"); + } + }); + if (fixFirefoxArrowUpTable(event, blockElement, range)) { + return true; + } + } + fixCursorDownInlineMath(range, event.key); + if (blockElement && keydownToc(blockElement, vditor, event, range)) { + event.preventDefault(); + return true; + } + return false; +}; + +// EXTERNAL MODULE: ./src/ts/preview/image.ts +var preview_image = __webpack_require__(190); +;// CONCATENATED MODULE: ./src/ts/sv/combineFootnote.ts +/** + * 合并脚注 + * @param elements vditor.sv.element + * @param afterCombine 每个脚注块合并完成后的回调, param: root为合并后的脚注块 + */ +var combineFootnote = function (elements, afterCombine) { + elements.querySelectorAll("[data-type=footnotes-link]").forEach(function (el) { + var root = el.parentElement; + var footnote = root.nextSibling; + // 寻找所有该脚注的块 + while (footnote) { + if (footnote.textContent.startsWith(" ")) { + // 解析到四个空格,加入到root并继续解析 + var thisNode = footnote; + thisNode.childNodes.forEach(function (node) { + root.append(node.cloneNode(true)); + }); + footnote = footnote.nextSibling; + thisNode.remove(); + } + else { + // 非空格停止解析 + break; + } + } + afterCombine && afterCombine(root); + }); +}; + +;// CONCATENATED MODULE: ./src/ts/sv/inputEvent.ts + + + + + +var inputEvent = function (vditor, event) { + var _a; + var range = getSelection().getRangeAt(0).cloneRange(); + var startContainer = range.startContainer; + if (range.startContainer.nodeType !== 3 && range.startContainer.tagName === "DIV") { + startContainer = range.startContainer.childNodes[range.startOffset - 1]; + } + var blockElement = (0,hasClosest/* hasClosestByAttribute */.a1)(startContainer, "data-block", "0"); + // 不调用 lute 解析 + if (blockElement && event && (event.inputType === "deleteContentBackward" || event.data === " ")) { + // 开始可以输入空格 + var startOffset = (0,selection/* getSelectPosition */.im)(blockElement, vditor.sv.element, range).start; + var startSpace = true; + for (var i = startOffset - 1; + // 软换行后有空格 + i > blockElement.textContent.substr(0, startOffset).lastIndexOf("\n"); i--) { + if (blockElement.textContent.charAt(i) !== " " && + // 多个 tab 前删除不形成代码块 https://github.com/Vanessa219/vditor/issues/162 1 + blockElement.textContent.charAt(i) !== "\t") { + startSpace = false; + break; + } + } + if (startOffset === 0) { + startSpace = false; + } + if (startSpace) { + processAfterRender(vditor); + return; + } + if (event.inputType === "deleteContentBackward") { + // https://github.com/Vanessa219/vditor/issues/584 代码块 marker 删除 + var codeBlockMarkerElement = (0,hasClosest/* hasClosestByAttribute */.a1)(startContainer, "data-type", "code-block-open-marker") || + (0,hasClosest/* hasClosestByAttribute */.a1)(startContainer, "data-type", "code-block-close-marker"); + if (codeBlockMarkerElement) { + if (codeBlockMarkerElement.getAttribute("data-type") === "code-block-close-marker") { + var openMarkerElement = getSideByType(startContainer, "code-block-open-marker"); + if (openMarkerElement) { + openMarkerElement.textContent = codeBlockMarkerElement.textContent; + processAfterRender(vditor); + return; + } + } + if (codeBlockMarkerElement.getAttribute("data-type") === "code-block-open-marker") { + var openMarkerElement = getSideByType(startContainer, "code-block-close-marker", false); + if (openMarkerElement) { + openMarkerElement.textContent = codeBlockMarkerElement.textContent; + processAfterRender(vditor); + return; + } + } + } + // https://github.com/Vanessa219/vditor/issues/877 数学公式输入删除生成节点 + var mathBlockMarkerElement = (0,hasClosest/* hasClosestByAttribute */.a1)(startContainer, "data-type", "math-block-open-marker"); + if (mathBlockMarkerElement) { + var mathBlockCloseElement = mathBlockMarkerElement.nextElementSibling.nextElementSibling; + if (mathBlockCloseElement && mathBlockCloseElement.getAttribute("data-type") === "math-block-close-marker") { + mathBlockCloseElement.remove(); + processAfterRender(vditor); + } + return; + } + blockElement.querySelectorAll('[data-type="code-block-open-marker"]').forEach(function (item) { + if (item.textContent.length === 1) { + item.remove(); + } + }); + blockElement.querySelectorAll('[data-type="code-block-close-marker"]').forEach(function (item) { + if (item.textContent.length === 1) { + item.remove(); + } + }); + // 标题删除 + var headingElement = (0,hasClosest/* hasClosestByAttribute */.a1)(startContainer, "data-type", "heading-marker"); + if (headingElement && headingElement.textContent.indexOf("#") === -1) { + processAfterRender(vditor); + return; + } + } + // 删除或空格不解析,否则会 format 回去 + if ((event.data === " " || event.inputType === "deleteContentBackward") && + ((0,hasClosest/* hasClosestByAttribute */.a1)(startContainer, "data-type", "padding") // 场景:b 前进行删除 [> 1. a\n> b] + || (0,hasClosest/* hasClosestByAttribute */.a1)(startContainer, "data-type", "li-marker") // 场景:删除最后一个字符 [* 1\n* ] + || (0,hasClosest/* hasClosestByAttribute */.a1)(startContainer, "data-type", "task-marker") // 场景:删除最后一个字符 [* [ ] ] + || (0,hasClosest/* hasClosestByAttribute */.a1)(startContainer, "data-type", "blockquote-marker") // 场景:删除最后一个字符 [> ] + )) { + processAfterRender(vditor); + return; + } + } + if (blockElement && blockElement.textContent.trimRight() === "$$") { + // 内联数学公式 + processAfterRender(vditor); + return; + } + if (!blockElement) { + blockElement = vditor.sv.element; + } + if (((_a = blockElement.firstElementChild) === null || _a === void 0 ? void 0 : _a.getAttribute("data-type")) === "link-ref-defs-block") { + // 修改链接引用 + blockElement = vditor.sv.element; + } + if ((0,hasClosest/* hasClosestByAttribute */.a1)(startContainer, "data-type", "footnotes-link")) { + // 修改脚注角标 + blockElement = vditor.sv.element; + } + // 添加光标位置 + if (blockElement.textContent.indexOf(Lute.Caret) === -1) { + // 点击工具栏会插入 Caret + range.insertNode(document.createTextNode(Lute.Caret)); + } + // 清除浏览器自带的样式 + blockElement.querySelectorAll("[style]").forEach(function (item) { + item.removeAttribute("style"); + }); + blockElement.querySelectorAll("font").forEach(function (item) { + item.outerHTML = item.innerHTML; + }); + var html = blockElement.textContent; + var isSVElement = blockElement.isEqualNode(vditor.sv.element); + if (isSVElement) { + html = blockElement.textContent; + } + else { + // 添加前一个块元素 + if (blockElement.previousElementSibling) { + html = blockElement.previousElementSibling.textContent + html; + blockElement.previousElementSibling.remove(); + } + if (blockElement.previousElementSibling && html.indexOf("---\n") === 0) { + // 确认 yaml-front 是否为首行 + html = blockElement.previousElementSibling.textContent + html; + blockElement.previousElementSibling.remove(); + } + // 添加链接引用 + var footnotes_1 = ""; + vditor.sv.element.querySelectorAll("[data-type='link-ref-defs-block']").forEach(function (item, index) { + if (item && !blockElement.isEqualNode(item.parentElement)) { + footnotes_1 += item.parentElement.textContent + "\n"; + item.parentElement.remove(); + } + }); + // 添加脚注到文章头,便于lute处理 + vditor.sv.element.querySelectorAll("[data-type='footnotes-link']").forEach(function (item, index) { + if (item && !blockElement.isEqualNode(item.parentElement)) { + footnotes_1 += item.parentElement.textContent + "\n"; + item.parentElement.remove(); + } + }); + html = footnotes_1 + html; + } + html = processSpinVditorSVDOM(html, vditor); + if (isSVElement) { + blockElement.innerHTML = html; + } + else { + blockElement.outerHTML = html; + } + vditor.sv.element.querySelectorAll("[data-type='link-ref-defs-block']").forEach(function (item) { + vditor.sv.element.insertAdjacentElement("beforeend", item.parentElement); + }); + // 合并脚注 + combineFootnote(vditor.sv.element, function (root) { + vditor.sv.element.insertAdjacentElement("beforeend", root); + }); + (0,selection/* setRangeByWbr */.ib)(vditor.sv.element, range); + scrollCenter(vditor); + processAfterRender(vditor, { + enableAddUndoStack: true, + enableHint: true, + enableInput: true, + }); +}; + +;// CONCATENATED MODULE: ./src/ts/sv/processKeydown.ts + + + + + + + +var processKeydown_processKeydown = function (vditor, event) { + var _a, _b, _c, _d, _e; + vditor.sv.composingLock = event.isComposing; + if (event.isComposing) { + return false; + } + if (event.key.indexOf("Arrow") === -1 && event.key !== "Meta" && event.key !== "Control" && event.key !== "Alt" && + event.key !== "Shift" && event.key !== "CapsLock" && event.key !== "Escape" && !/^F\d{1,2}$/.test(event.key)) { + vditor.undo.recordFirstPosition(vditor, event); + } + // 仅处理以下快捷键操作 + if (event.key !== "Enter" && event.key !== "Tab" && event.key !== "Backspace" && event.key.indexOf("Arrow") === -1 + && !(0,compatibility/* isCtrl */.yl)(event) && event.key !== "Escape") { + return false; + } + var range = (0,selection/* getEditorRange */.zh)(vditor); + var startContainer = range.startContainer; + if (range.startContainer.nodeType !== 3 && range.startContainer.tagName === "DIV") { + startContainer = range.startContainer.childNodes[range.startOffset - 1]; + } + var textElement = (0,hasClosest/* hasClosestByAttribute */.a1)(startContainer, "data-type", "text"); + // blockquote + var blockquoteMarkerElement = (0,hasClosest/* hasClosestByAttribute */.a1)(startContainer, "data-type", "blockquote-marker"); + if (!blockquoteMarkerElement && range.startOffset === 0 && textElement && textElement.previousElementSibling && + textElement.previousElementSibling.getAttribute("data-type") === "blockquote-marker") { + blockquoteMarkerElement = textElement.previousElementSibling; + } + // 回车逐个删除 blockquote marker 标记 + if (blockquoteMarkerElement) { + if (event.key === "Enter" && !(0,compatibility/* isCtrl */.yl)(event) && !event.altKey && + blockquoteMarkerElement.nextElementSibling.textContent.trim() === "" && + (0,selection/* getSelectPosition */.im)(blockquoteMarkerElement, vditor.sv.element, range).start === + blockquoteMarkerElement.textContent.length) { + if (((_a = blockquoteMarkerElement.previousElementSibling) === null || _a === void 0 ? void 0 : _a.getAttribute("data-type")) === "padding") { + // 列表中存在多行 BQ 时,标记回车需跳出列表 + blockquoteMarkerElement.previousElementSibling.setAttribute("data-action", "enter-remove"); + } + blockquoteMarkerElement.remove(); + processAfterRender(vditor); + event.preventDefault(); + return true; + } + } + // list item + var listMarkerElement = (0,hasClosest/* hasClosestByAttribute */.a1)(startContainer, "data-type", "li-marker"); + var taskMarkerElement = (0,hasClosest/* hasClosestByAttribute */.a1)(startContainer, "data-type", "task-marker"); + var listLastMarkerElement = listMarkerElement; + if (!listLastMarkerElement) { + if (taskMarkerElement && taskMarkerElement.nextElementSibling.getAttribute("data-type") !== "task-marker") { + listLastMarkerElement = taskMarkerElement; + } + } + if (!listLastMarkerElement && range.startOffset === 0 && textElement && textElement.previousElementSibling && + (textElement.previousElementSibling.getAttribute("data-type") === "li-marker" || + textElement.previousElementSibling.getAttribute("data-type") === "task-marker")) { + listLastMarkerElement = textElement.previousElementSibling; + } + if (listLastMarkerElement) { + var startIndex = (0,selection/* getSelectPosition */.im)(listLastMarkerElement, vditor.sv.element, range).start; + var isTask = listLastMarkerElement.getAttribute("data-type") === "task-marker"; + var listFirstMarkerElement = listLastMarkerElement; + if (isTask) { + listFirstMarkerElement = listLastMarkerElement.previousElementSibling.previousElementSibling + .previousElementSibling; + } + if (startIndex === listLastMarkerElement.textContent.length) { + // 回车清空列表标记符 + if (event.key === "Enter" && !(0,compatibility/* isCtrl */.yl)(event) && !event.altKey && !event.shiftKey && + listLastMarkerElement.nextElementSibling.textContent.trim() === "") { + if (((_b = listFirstMarkerElement.previousElementSibling) === null || _b === void 0 ? void 0 : _b.getAttribute("data-type")) === "padding") { + listFirstMarkerElement.previousElementSibling.remove(); + inputEvent(vditor); + } + else { + if (isTask) { + listFirstMarkerElement.remove(); + listLastMarkerElement.previousElementSibling.previousElementSibling.remove(); + listLastMarkerElement.previousElementSibling.remove(); + } + listLastMarkerElement.nextElementSibling.remove(); + listLastMarkerElement.remove(); + processAfterRender(vditor); + } + event.preventDefault(); + return true; + } + // 第一个 marker 后 tab 进行缩进 + if (event.key === "Tab") { + if (event.shiftKey) { + if (listFirstMarkerElement.previousElementSibling.getAttribute("data-type") === "padding") { + listFirstMarkerElement.previousElementSibling.remove(); + } + } + else { + listFirstMarkerElement.insertAdjacentHTML("beforebegin", "<span data-type=\"padding\">".concat(listFirstMarkerElement.textContent.replace(/\S/g, " "), "</span>")); + } + if (/^\d/.test(listFirstMarkerElement.textContent)) { + listFirstMarkerElement.textContent = listFirstMarkerElement.textContent.replace(/^\d{1,}/, "1"); + range.selectNodeContents(listLastMarkerElement.firstChild); + range.collapse(false); + } + inputEvent(vditor); + event.preventDefault(); + return true; + } + } + } + // tab + if (fixTab(vditor, range, event)) { + return true; + } + var blockElement = (0,hasClosest/* hasClosestByAttribute */.a1)(startContainer, "data-block", "0"); + var spanElement = (0,hasClosestByHeadings/* hasClosestByTag */.S)(startContainer, "SPAN"); + // 回车 + if (event.key === "Enter" && !(0,compatibility/* isCtrl */.yl)(event) && !event.altKey && !event.shiftKey && blockElement) { + var isFirst = false; + var newLineMatch = blockElement.textContent.match(/^\n+/); + if ((0,selection/* getSelectPosition */.im)(blockElement, vditor.sv.element).start <= (newLineMatch ? newLineMatch[0].length : 0)) { + // 允许段落开始换行 + isFirst = true; + } + var newLineText = "\n"; + if (spanElement) { + if (((_c = spanElement.previousElementSibling) === null || _c === void 0 ? void 0 : _c.getAttribute("data-action")) === "enter-remove") { + // https://github.com/Vanessa219/vditor/issues/596 + spanElement.previousElementSibling.remove(); + processAfterRender(vditor); + event.preventDefault(); + return true; + } + else { + newLineText += processPreviousMarkers(spanElement); + } + } + range.insertNode(document.createTextNode(newLineText)); + range.collapse(false); + if (blockElement && blockElement.textContent.trim() !== "" && !isFirst) { + inputEvent(vditor); + } + else { + processAfterRender(vditor); + } + event.preventDefault(); + return true; + } + // 删除后光标前有 newline 的处理 + if (event.key === "Backspace" && !(0,compatibility/* isCtrl */.yl)(event) && !event.altKey && !event.shiftKey) { + if (spanElement && ((_d = spanElement.previousElementSibling) === null || _d === void 0 ? void 0 : _d.getAttribute("data-type")) === "newline" && + (0,selection/* getSelectPosition */.im)(spanElement, vditor.sv.element, range).start === 1 && + // 飘号的处理需在 inputEvent 中,否则上下飘号对不齐 + spanElement.getAttribute("data-type").indexOf("code-block-") === -1) { + // 光标在每一行的第一个字符后 + range.setStart(spanElement, 0); + range.extractContents(); + if (spanElement.textContent.trim() !== "") { + inputEvent(vditor); + } + else { + processAfterRender(vditor); + } + event.preventDefault(); + return true; + } + // 每一段第一个字符前 + if (blockElement && (0,selection/* getSelectPosition */.im)(blockElement, vditor.sv.element, range).start === 0 && + blockElement.previousElementSibling) { + range.extractContents(); + var previousLastElement = blockElement.previousElementSibling.lastElementChild; + if (previousLastElement.getAttribute("data-type") === "newline") { + previousLastElement.remove(); + previousLastElement = blockElement.previousElementSibling.lastElementChild; + } + // 场景:末尾无法删除 [```\ntext\n```\n\n] + if (previousLastElement.getAttribute("data-type") !== "newline") { + previousLastElement.insertAdjacentHTML("afterend", blockElement.innerHTML); + blockElement.remove(); + } + if (blockElement.textContent.trim() !== "" && !((_e = blockElement.previousElementSibling) === null || _e === void 0 ? void 0 : _e.querySelector('[data-type="code-block-open-marker"]'))) { + inputEvent(vditor); + } + else { + if (previousLastElement.getAttribute("data-type") !== "newline") { + // https://github.com/Vanessa219/vditor/issues/597 + range.selectNodeContents(previousLastElement.lastChild); + range.collapse(false); + } + processAfterRender(vditor); + } + event.preventDefault(); + return true; + } + } + return false; +}; + +// EXTERNAL MODULE: ./src/ts/ui/setContentTheme.ts +var setContentTheme = __webpack_require__(538); +;// CONCATENATED MODULE: ./src/ts/ui/setTheme.ts +var setTheme = function (vditor) { + if (vditor.options.theme === "dark") { + vditor.element.classList.add("vditor--dark"); + } + else { + vditor.element.classList.remove("vditor--dark"); + } +}; + +;// CONCATENATED MODULE: ./src/ts/ui/initUI.ts + + + + + + +var initUI = function (vditor) { + vditor.element.innerHTML = ""; + vditor.element.classList.add("vditor"); + // 支持 RTL + if (vditor.options.rtl) { + vditor.element.setAttribute("dir", "rtl"); + } + setTheme(vditor); + (0,setContentTheme/* setContentTheme */.Z)(vditor.options.preview.theme.current, vditor.options.preview.theme.path); + if (typeof vditor.options.height === "number") { + vditor.element.style.height = vditor.options.height + "px"; + } + else { + vditor.element.style.height = vditor.options.height; + } + if (typeof vditor.options.minHeight === "number") { + vditor.element.style.minHeight = vditor.options.minHeight + "px"; + } + if (typeof vditor.options.width === "number") { + vditor.element.style.width = vditor.options.width + "px"; + } + else { + vditor.element.style.width = vditor.options.width; + } + vditor.element.appendChild(vditor.toolbar.element); + var contentElement = document.createElement("div"); + contentElement.className = "vditor-content"; + if (vditor.options.outline.position === "left") { + contentElement.appendChild(vditor.outline.element); + } + contentElement.appendChild(vditor.wysiwyg.element.parentElement); + contentElement.appendChild(vditor.sv.element); + contentElement.appendChild(vditor.ir.element.parentElement); + contentElement.appendChild(vditor.preview.element); + if (vditor.toolbar.elements.devtools) { + contentElement.appendChild(vditor.devtools.element); + } + if (vditor.options.outline.position === "right") { + vditor.outline.element.classList.add("vditor-outline--right"); + contentElement.appendChild(vditor.outline.element); + } + if (vditor.upload) { + contentElement.appendChild(vditor.upload.element); + } + if (vditor.options.resize.enable) { + contentElement.appendChild(vditor.resize.element); + } + contentElement.appendChild(vditor.hint.element); + contentElement.appendChild(vditor.tip.element); + vditor.element.appendChild(contentElement); + contentElement.addEventListener("click", function () { + hidePanel(vditor, ["subToolbar"]); + }); + if (vditor.toolbar.elements.export) { + // for export pdf + vditor.element.insertAdjacentHTML("beforeend", '<iframe id="vditorExportIframe" style="width: 100%;height: 0;border: 0"></iframe>'); + } + setEditMode(vditor, vditor.options.mode, afterRender(vditor)); + document.execCommand("DefaultParagraphSeparator", false, "p"); + if (navigator.userAgent.indexOf("iPhone") > -1 && typeof window.visualViewport !== "undefined") { + // https://github.com/Vanessa219/vditor/issues/379 + var pendingUpdate_1 = false; + var viewportHandler = function (event) { + if (pendingUpdate_1) { + return; + } + pendingUpdate_1 = true; + requestAnimationFrame(function () { + pendingUpdate_1 = false; + var layoutViewport = vditor.toolbar.element; + layoutViewport.style.transform = "none"; + if (layoutViewport.getBoundingClientRect().top < 0) { + layoutViewport.style.transform = "translate(0, ".concat(-layoutViewport.getBoundingClientRect().top, "px)"); + } + }); + }; + window.visualViewport.addEventListener("scroll", viewportHandler); + window.visualViewport.addEventListener("resize", viewportHandler); + } +}; +var setPadding = function (vditor) { + var minPadding = window.innerWidth <= constants/* Constants.MOBILE_WIDTH */.g.MOBILE_WIDTH ? 10 : 35; + if (vditor.wysiwyg.element.parentElement.style.display !== "none") { + var padding = (vditor.wysiwyg.element.parentElement.clientWidth + - vditor.options.preview.maxWidth) / 2; + vditor.wysiwyg.element.style.padding = "10px ".concat(Math.max(minPadding, padding), "px"); + } + if (vditor.ir.element.parentElement.style.display !== "none") { + var padding = (vditor.ir.element.parentElement.clientWidth + - vditor.options.preview.maxWidth) / 2; + vditor.ir.element.style.padding = "10px ".concat(Math.max(minPadding, padding), "px"); + } + if (vditor.preview.element.style.display !== "block") { + vditor.toolbar.element.style.paddingLeft = Math.max(5, parseInt(vditor[vditor.currentMode].element.style.paddingLeft || "0", 10) + + (vditor.options.outline.position === "left" ? vditor.outline.element.offsetWidth : 0)) + "px"; + } + else { + vditor.toolbar.element.style.paddingLeft = (5 + + (vditor.options.outline.position === "left" ? vditor.outline.element.offsetWidth : 0)) + "px"; + } +}; +var setTypewriterPosition = function (vditor) { + if (!vditor.options.typewriterMode) { + return; + } + var height = window.innerHeight; + if (typeof vditor.options.height === "number") { + height = vditor.options.height; + if (typeof vditor.options.minHeight === "number") { + height = Math.max(height, vditor.options.minHeight); + } + height = Math.min(window.innerHeight, height); + } + else { + height = vditor.element.clientHeight; + } + if (vditor.element.classList.contains("vditor--fullscreen")) { + height = window.innerHeight; + } + // 由于 Firefox padding-bottom bug,只能使用 :after + vditor[vditor.currentMode].element.style.setProperty("--editor-bottom", ((height - vditor.toolbar.element.offsetHeight) / 2) + "px"); +}; +var resizeCb; +function UIUnbindListener() { + window.removeEventListener("resize", resizeCb); +} +var afterRender = function (vditor) { + setTypewriterPosition(vditor); + UIUnbindListener(); + window.addEventListener("resize", resizeCb = function () { + setPadding(vditor); + setTypewriterPosition(vditor); + }); + // set default value + var initValue = (0,compatibility/* accessLocalStorage */.pK)() && localStorage.getItem(vditor.options.cache.id); + if (!vditor.options.cache.enable || !initValue) { + if (vditor.options.value) { + initValue = vditor.options.value; + } + else if (vditor.originalInnerHTML) { + initValue = vditor.lute.HTML2Md(vditor.originalInnerHTML); + } + else if (!vditor.options.cache.enable) { + initValue = ""; + } + } + return initValue || ""; +}; + +;// CONCATENATED MODULE: ./src/ts/ir/highlightToolbarIR.ts + + + + + +var highlightToolbarIR = function (vditor) { + clearTimeout(vditor[vditor.currentMode].hlToolbarTimeoutId); + vditor[vditor.currentMode].hlToolbarTimeoutId = window.setTimeout(function () { + if (vditor[vditor.currentMode].element.getAttribute("contenteditable") === "false") { + return; + } + if (!(0,selection/* selectIsEditor */.Gb)(vditor[vditor.currentMode].element)) { + return; + } + removeCurrentToolbar(vditor.toolbar.elements, constants/* Constants.EDIT_TOOLBARS */.g.EDIT_TOOLBARS); + enableToolbar(vditor.toolbar.elements, constants/* Constants.EDIT_TOOLBARS */.g.EDIT_TOOLBARS); + var range = (0,selection/* getEditorRange */.zh)(vditor); + var typeElement = range.startContainer; + if (range.startContainer.nodeType === 3) { + typeElement = range.startContainer.parentElement; + } + if (typeElement.classList.contains("vditor-reset")) { + typeElement = typeElement.childNodes[range.startOffset]; + } + var headingElement = vditor.currentMode === "sv" ? + (0,hasClosest/* hasClosestByAttribute */.a1)(typeElement, "data-type", "heading") : (0,hasClosestByHeadings/* hasClosestByHeadings */.W)(typeElement); + if (headingElement) { + setCurrentToolbar(vditor.toolbar.elements, ["headings"]); + } + var quoteElement = vditor.currentMode === "sv" ? (0,hasClosest/* hasClosestByAttribute */.a1)(typeElement, "data-type", "blockquote") : + (0,hasClosest/* hasClosestByMatchTag */.lG)(typeElement, "BLOCKQUOTE"); + if (quoteElement) { + setCurrentToolbar(vditor.toolbar.elements, ["quote"]); + } + var strongElement = (0,hasClosest/* hasClosestByAttribute */.a1)(typeElement, "data-type", "strong"); + if (strongElement) { + setCurrentToolbar(vditor.toolbar.elements, ["bold"]); + } + var emElement = (0,hasClosest/* hasClosestByAttribute */.a1)(typeElement, "data-type", "em"); + if (emElement) { + setCurrentToolbar(vditor.toolbar.elements, ["italic"]); + } + var sElement = (0,hasClosest/* hasClosestByAttribute */.a1)(typeElement, "data-type", "s"); + if (sElement) { + setCurrentToolbar(vditor.toolbar.elements, ["strike"]); + } + var aElement = (0,hasClosest/* hasClosestByAttribute */.a1)(typeElement, "data-type", "a"); + if (aElement) { + setCurrentToolbar(vditor.toolbar.elements, ["link"]); + } + var liElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(typeElement, "LI"); + if (liElement) { + if (liElement.classList.contains("vditor-task")) { + setCurrentToolbar(vditor.toolbar.elements, ["check"]); + } + else if (liElement.parentElement.tagName === "OL") { + setCurrentToolbar(vditor.toolbar.elements, ["ordered-list"]); + } + else if (liElement.parentElement.tagName === "UL") { + setCurrentToolbar(vditor.toolbar.elements, ["list"]); + } + enableToolbar(vditor.toolbar.elements, ["outdent", "indent"]); + } + else { + disableToolbar(vditor.toolbar.elements, ["outdent", "indent"]); + } + var codeBlockElement = (0,hasClosest/* hasClosestByAttribute */.a1)(typeElement, "data-type", "code-block"); + if (codeBlockElement) { + disableToolbar(vditor.toolbar.elements, ["headings", "bold", "italic", "strike", "line", "quote", + "list", "ordered-list", "check", "code", "inline-code", "upload", "link", "table", "record"]); + setCurrentToolbar(vditor.toolbar.elements, ["code"]); + } + var codeElement = (0,hasClosest/* hasClosestByAttribute */.a1)(typeElement, "data-type", "code"); + if (codeElement) { + disableToolbar(vditor.toolbar.elements, ["headings", "bold", "italic", "strike", "line", "quote", + "list", "ordered-list", "check", "code", "upload", "link", "table", "record"]); + setCurrentToolbar(vditor.toolbar.elements, ["inline-code"]); + } + var tableElement = (0,hasClosest/* hasClosestByAttribute */.a1)(typeElement, "data-type", "table"); + if (tableElement) { + disableToolbar(vditor.toolbar.elements, ["headings", "list", "ordered-list", "check", "line", + "quote", "code", "table"]); + } + }, 200); +}; + +;// CONCATENATED MODULE: ./src/ts/wysiwyg/afterRenderEvent.ts + + +var afterRenderEvent = function (vditor, options) { + if (options === void 0) { options = { + enableAddUndoStack: true, + enableHint: false, + enableInput: true, + }; } + if (options.enableHint) { + vditor.hint.render(vditor); + } + clearTimeout(vditor.wysiwyg.afterRenderTimeoutId); + vditor.wysiwyg.afterRenderTimeoutId = window.setTimeout(function () { + if (vditor.wysiwyg.composingLock) { + return; + } + var text = getMarkdown(vditor); + if (typeof vditor.options.input === "function" && options.enableInput) { + vditor.options.input(text); + } + if (vditor.options.counter.enable) { + vditor.counter.render(vditor, text); + } + if (vditor.options.cache.enable && (0,compatibility/* accessLocalStorage */.pK)()) { + localStorage.setItem(vditor.options.cache.id, text); + if (vditor.options.cache.after) { + vditor.options.cache.after(text); + } + } + if (vditor.devtools) { + vditor.devtools.renderEchart(vditor); + } + if (options.enableAddUndoStack) { + vditor.undo.addToUndoStack(vditor); + } + }, vditor.options.undoDelay); +}; + +;// CONCATENATED MODULE: ./src/ts/wysiwyg/inlineTag.ts + + +var previoueIsEmptyA = function (node) { + var previousNode = node.previousSibling; + while (previousNode) { + if (previousNode.nodeType !== 3 && previousNode.tagName === "A" && !previousNode.previousSibling + && previousNode.innerHTML.replace(constants/* Constants.ZWSP */.g.ZWSP, "") === "" && previousNode.nextSibling) { + return previousNode; + } + previousNode = previousNode.previousSibling; + } + return false; +}; +var nextIsCode = function (range) { + var nextNode = range.startContainer.nextSibling; + while (nextNode && nextNode.textContent === "") { + nextNode = nextNode.nextSibling; + } + if (nextNode && nextNode.nodeType !== 3 && (nextNode.tagName === "CODE" || + nextNode.getAttribute("data-type") === "math-inline" || + nextNode.getAttribute("data-type") === "html-entity" || + nextNode.getAttribute("data-type") === "html-inline")) { + return true; + } + return false; +}; +var getNextHTML = function (node) { + var html = ""; + var nextNode = node.nextSibling; + while (nextNode) { + if (nextNode.nodeType === 3) { + html += nextNode.textContent; + } + else { + html += nextNode.outerHTML; + } + nextNode = nextNode.nextSibling; + } + return html; +}; +var getPreviousHTML = function (node) { + var html = ""; + var previousNode = node.previousSibling; + while (previousNode) { + if (previousNode.nodeType === 3) { + html = previousNode.textContent + html; + } + else { + html = previousNode.outerHTML + html; + } + previousNode = previousNode.previousSibling; + } + return html; +}; +var getRenderElementNextNode = function (blockCodeElement) { + var nextNode = blockCodeElement; + while (nextNode && !nextNode.nextSibling) { + nextNode = nextNode.parentElement; + } + return nextNode.nextSibling; +}; +var splitElement = function (range) { + var previousHTML = getPreviousHTML(range.startContainer); + var nextHTML = getNextHTML(range.startContainer); + var text = range.startContainer.textContent; + var offset = range.startOffset; + var beforeHTML = ""; + var afterHTML = ""; + if (text.substr(0, offset) !== "" && text.substr(0, offset) !== constants/* Constants.ZWSP */.g.ZWSP || previousHTML) { + beforeHTML = "".concat(previousHTML).concat(text.substr(0, offset)); + } + if (text.substr(offset) !== "" && text.substr(offset) !== constants/* Constants.ZWSP */.g.ZWSP || nextHTML) { + afterHTML = "".concat(text.substr(offset)).concat(nextHTML); + } + return { + afterHTML: afterHTML, + beforeHTML: beforeHTML, + }; +}; +var modifyPre = function (vditor, range) { + // 没有被块元素包裹 + Array.from(vditor.wysiwyg.element.childNodes).find(function (node) { + if (node.nodeType === 3) { + var pElement = document.createElement("p"); + pElement.setAttribute("data-block", "0"); + pElement.textContent = node.textContent; + // 为空按下 tab 且 tab = ' ' 时,range.startContainer 不为 node + var cloneRangeOffset = range.startContainer.nodeType === 3 ? range.startOffset : node.textContent.length; + node.parentNode.insertBefore(pElement, node); + node.remove(); + range.setStart(pElement.firstChild, Math.min(pElement.firstChild.textContent.length, cloneRangeOffset)); + range.collapse(true); + (0,selection/* setSelectionFocus */.Hc)(range); + return true; + } + else if (!node.getAttribute("data-block")) { + if (node.tagName === "P") { + node.remove(); + } + else { + if (node.tagName === "DIV") { + range.insertNode(document.createElement("wbr")); + // firefox 列表换行产生 div + node.outerHTML = "<p data-block=\"0\">".concat(node.innerHTML, "</p>"); + } + else { + if (node.tagName === "BR") { + // firefox 空换行产生 BR + node.outerHTML = "<p data-block=\"0\">".concat(node.outerHTML, "<wbr></p>"); + } + else { + range.insertNode(document.createElement("wbr")); + node.outerHTML = "<p data-block=\"0\">".concat(node.outerHTML, "</p>"); + } + } + (0,selection/* setRangeByWbr */.ib)(vditor.wysiwyg.element, range); + range = getSelection().getRangeAt(0); + } + return true; + } + }); +}; + +;// CONCATENATED MODULE: ./src/ts/wysiwyg/setHeading.ts + + + +var setHeading = function (vditor, tagName) { + var range = (0,selection/* getEditorRange */.zh)(vditor); + var blockElement = (0,hasClosest/* hasClosestBlock */.F9)(range.startContainer); + if (!blockElement) { + blockElement = range.startContainer.childNodes[range.startOffset]; + } + if (!blockElement && vditor.wysiwyg.element.children.length === 0) { + blockElement = vditor.wysiwyg.element; + } + if (blockElement && !blockElement.classList.contains("vditor-wysiwyg__block")) { + range.insertNode(document.createElement("wbr")); + // Firefox 需要 trim https://github.com/Vanessa219/vditor/issues/207 + if (blockElement.innerHTML.trim() === "<wbr>") { + // Firefox 光标对不齐 https://github.com/Vanessa219/vditor/issues/199 1 + blockElement.innerHTML = "<wbr><br>"; + } + if (blockElement.tagName === "BLOCKQUOTE" || blockElement.classList.contains("vditor-reset")) { + blockElement.innerHTML = "<".concat(tagName, " data-block=\"0\">").concat(blockElement.innerHTML.trim(), "</").concat(tagName, ">"); + } + else { + blockElement.outerHTML = "<".concat(tagName, " data-block=\"0\">").concat(blockElement.innerHTML.trim(), "</").concat(tagName, ">"); + } + (0,selection/* setRangeByWbr */.ib)(vditor.wysiwyg.element, range); + renderToc(vditor); + } +}; +var removeHeading = function (vditor) { + var range = getSelection().getRangeAt(0); + var blockElement = (0,hasClosest/* hasClosestBlock */.F9)(range.startContainer); + if (!blockElement) { + blockElement = range.startContainer.childNodes[range.startOffset]; + } + if (blockElement) { + range.insertNode(document.createElement("wbr")); + blockElement.outerHTML = "<p data-block=\"0\">".concat(blockElement.innerHTML, "</p>"); + (0,selection/* setRangeByWbr */.ib)(vditor.wysiwyg.element, range); + } + vditor.wysiwyg.popover.style.display = "none"; +}; + +;// CONCATENATED MODULE: ./src/ts/wysiwyg/showCode.ts + + +var showCode = function (previewElement, vditor, first) { + if (first === void 0) { first = true; } + var previousElement = previewElement.previousElementSibling; + var range = previousElement.ownerDocument.createRange(); + if (previousElement.tagName === "CODE") { + previousElement.style.display = "inline-block"; + if (first) { + range.setStart(previousElement.firstChild, 1); + } + else { + range.selectNodeContents(previousElement); + } + } + else { + previousElement.style.display = "block"; + if (!previousElement.firstChild.firstChild) { + previousElement.firstChild.appendChild(document.createTextNode("")); + } + range.selectNodeContents(previousElement.firstChild); + } + if (first) { + range.collapse(true); + } + else { + range.collapse(false); + } + (0,selection/* setSelectionFocus */.Hc)(range); + if (previewElement.firstElementChild.classList.contains("language-mindmap")) { + return; + } + scrollCenter(vditor); +}; + +;// CONCATENATED MODULE: ./src/ts/wysiwyg/processKeydown.ts + + + + + + + + + + + + + +var wysiwyg_processKeydown_processKeydown = function (vditor, event) { + // Chrome firefox 触发 compositionend 机制不一致 https://github.com/Vanessa219/vditor/issues/188 + vditor.wysiwyg.composingLock = event.isComposing; + if (event.isComposing) { + return false; + } + // 添加第一次记录 undo 的光标 + if (event.key.indexOf("Arrow") === -1 && event.key !== "Meta" && event.key !== "Control" && event.key !== "Alt" && + event.key !== "Shift" && event.key !== "CapsLock" && event.key !== "Escape" && !/^F\d{1,2}$/.test(event.key)) { + vditor.undo.recordFirstPosition(vditor, event); + } + var range = (0,selection/* getEditorRange */.zh)(vditor); + var startContainer = range.startContainer; + if (!fixGSKeyBackspace(event, vditor, startContainer)) { + return false; + } + fixCJKPosition(range, vditor, event); + fixHR(range); + // 仅处理以下快捷键操作 + if (event.key !== "Enter" && event.key !== "Tab" && event.key !== "Backspace" && event.key.indexOf("Arrow") === -1 + && !(0,compatibility/* isCtrl */.yl)(event) && event.key !== "Escape" && event.key !== "Delete") { + return false; + } + var blockElement = (0,hasClosest/* hasClosestBlock */.F9)(startContainer); + var pElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(startContainer, "P"); + // md 处理 + if (fixMarkdown(event, vditor, pElement, range)) { + return true; + } + // li + if (fixList(range, vditor, pElement, event)) { + return true; + } + // table + if (fixTable(vditor, event, range)) { + return true; + } + // code render + var codeRenderElement = (0,hasClosest/* hasClosestByClassName */.fb)(startContainer, "vditor-wysiwyg__block"); + if (codeRenderElement) { + // esc: 退出编辑,仅展示渲染 + if (event.key === "Escape" && codeRenderElement.children.length === 2) { + vditor.wysiwyg.popover.style.display = "none"; + codeRenderElement.firstElementChild.style.display = "none"; + vditor.wysiwyg.element.blur(); + event.preventDefault(); + return true; + } + // alt+enter: 代码块切换到语言 https://github.com/Vanessa219/vditor/issues/54 + if (!(0,compatibility/* isCtrl */.yl)(event) && !event.shiftKey && event.altKey && event.key === "Enter" && + codeRenderElement.getAttribute("data-type") === "code-block") { + var inputElemment = vditor.wysiwyg.popover.querySelector(".vditor-input"); + inputElemment.focus(); + inputElemment.select(); + event.preventDefault(); + return true; + } + if (codeRenderElement.getAttribute("data-block") === "0") { + if (fixCodeBlock(vditor, event, codeRenderElement.firstElementChild, range)) { + return true; + } + if (insertAfterBlock(vditor, event, range, codeRenderElement.firstElementChild, codeRenderElement)) { + return true; + } + if (codeRenderElement.getAttribute("data-type") !== "yaml-front-matter" && + insertBeforeBlock(vditor, event, range, codeRenderElement.firstElementChild, codeRenderElement)) { + return true; + } + } + } + // blockquote + if (fixBlockquote(vditor, range, event, pElement)) { + return true; + } + // 顶层 blockquote + var topBQElement = (0,hasClosest/* hasTopClosestByTag */.E2)(startContainer, "BLOCKQUOTE"); + if (topBQElement) { + if (!event.shiftKey && event.altKey && event.key === "Enter") { + if (!(0,compatibility/* isCtrl */.yl)(event)) { + // alt+enter: 跳出多层 blockquote 嵌套之后 https://github.com/Vanessa219/vditor/issues/51 + range.setStartAfter(topBQElement); + } + else { + // ctrl+alt+enter: 跳出多层 blockquote 嵌套之前 + range.setStartBefore(topBQElement); + } + (0,selection/* setSelectionFocus */.Hc)(range); + var node = document.createElement("p"); + node.setAttribute("data-block", "0"); + node.innerHTML = "\n"; + range.insertNode(node); + range.collapse(true); + (0,selection/* setSelectionFocus */.Hc)(range); + afterRenderEvent(vditor); + scrollCenter(vditor); + event.preventDefault(); + return true; + } + } + // h1-h6 + var headingElement = (0,hasClosestByHeadings/* hasClosestByHeadings */.W)(startContainer); + if (headingElement) { + if (headingElement.tagName === "H6" && startContainer.textContent.length === range.startOffset && + !(0,compatibility/* isCtrl */.yl)(event) && !event.shiftKey && !event.altKey && event.key === "Enter") { + // enter: H6 回车解析问题 https://github.com/Vanessa219/vditor/issues/48 + var pTempElement = document.createElement("p"); + pTempElement.textContent = "\n"; + pTempElement.setAttribute("data-block", "0"); + startContainer.parentElement.insertAdjacentElement("afterend", pTempElement); + range.setStart(pTempElement, 0); + (0,selection/* setSelectionFocus */.Hc)(range); + afterRenderEvent(vditor); + scrollCenter(vditor); + event.preventDefault(); + return true; + } + // enter++: 标题变大 + if (matchHotKey("⌘=", event)) { + var index = parseInt(headingElement.tagName.substr(1), 10) - 1; + if (index > 0) { + setHeading(vditor, "h".concat(index)); + afterRenderEvent(vditor); + } + event.preventDefault(); + return true; + } + // enter++: 标题变小 + if (matchHotKey("⌘-", event)) { + var index = parseInt(headingElement.tagName.substr(1), 10) + 1; + if (index < 7) { + setHeading(vditor, "h".concat(index)); + afterRenderEvent(vditor); + } + event.preventDefault(); + return true; + } + if (event.key === "Backspace" && !(0,compatibility/* isCtrl */.yl)(event) && !event.shiftKey && !event.altKey + && headingElement.textContent.length === 1) { + // 删除后变为空 + removeHeading(vditor); + } + } + // task list + if (fixTask(vditor, range, event)) { + return true; + } + // alt+enter + if (event.altKey && event.key === "Enter" && !(0,compatibility/* isCtrl */.yl)(event) && !event.shiftKey) { + // 切换到链接、链接引用、脚注引用弹出的输入框中 + var aElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(startContainer, "A"); + var linRefElement = (0,hasClosest/* hasClosestByAttribute */.a1)(startContainer, "data-type", "link-ref"); + var footnoteRefElement = (0,hasClosest/* hasClosestByAttribute */.a1)(startContainer, "data-type", "footnotes-ref"); + if (aElement || linRefElement || footnoteRefElement || + (headingElement && headingElement.tagName.length === 2)) { + var inputElement = vditor.wysiwyg.popover.querySelector("input"); + inputElement.focus(); + inputElement.select(); + } + } + // 删除有子工具栏的块 + if (removeBlockElement(vditor, event)) { + return true; + } + // 对有子工具栏的块上移 + if (matchHotKey("⇧⌘U", event)) { + var itemElement = vditor.wysiwyg.popover.querySelector('[data-type="up"]'); + if (itemElement) { + itemElement.click(); + event.preventDefault(); + return true; + } + } + // 对有子工具栏的块下移 + if (matchHotKey("⇧⌘D", event)) { + var itemElement = vditor.wysiwyg.popover.querySelector('[data-type="down"]'); + if (itemElement) { + itemElement.click(); + event.preventDefault(); + return true; + } + } + if (fixTab(vditor, range, event)) { + return true; + } + // shift+enter:软换行,但 table/hr/heading 处理、cell 内换行、block render 换行处理单独写在上面,li & p 使用浏览器默认 + if (!(0,compatibility/* isCtrl */.yl)(event) && event.shiftKey && !event.altKey && event.key === "Enter" && + startContainer.parentElement.tagName !== "LI" && startContainer.parentElement.tagName !== "P") { + if (["STRONG", "STRIKE", "S", "I", "EM", "B"].includes(startContainer.parentElement.tagName)) { + // 行内元素软换行需继续 https://github.com/Vanessa219/vditor/issues/170 + range.insertNode(document.createTextNode("\n" + constants/* Constants.ZWSP */.g.ZWSP)); + } + else { + range.insertNode(document.createTextNode("\n")); + } + range.collapse(false); + (0,selection/* setSelectionFocus */.Hc)(range); + afterRenderEvent(vditor); + scrollCenter(vditor); + event.preventDefault(); + return true; + } + // 删除 + if (event.key === "Backspace" && !(0,compatibility/* isCtrl */.yl)(event) && !event.shiftKey && !event.altKey && range.toString() === "") { + if (fixDelete(vditor, range, event, pElement)) { + return true; + } + if (blockElement) { + if (blockElement.previousElementSibling + && blockElement.previousElementSibling.classList.contains("vditor-wysiwyg__block") + && blockElement.previousElementSibling.getAttribute("data-block") === "0" + // https://github.com/Vanessa219/vditor/issues/946 + && blockElement.tagName !== "UL" && blockElement.tagName !== "OL") { + var rangeStart = (0,selection/* getSelectPosition */.im)(blockElement, vditor.wysiwyg.element, range).start; + if ((rangeStart === 0 && range.startOffset === 0) || // https://github.com/Vanessa219/vditor/issues/894 + (rangeStart === 1 && blockElement.innerText.startsWith(constants/* Constants.ZWSP */.g.ZWSP))) { + // 当前块删除后光标落于代码渲染块上,当前块会被删除,因此需要阻止事件,不能和 keyup 中的代码块处理合并 + showCode(blockElement.previousElementSibling.lastElementChild, vditor, false); + if (blockElement.innerHTML.trim().replace(constants/* Constants.ZWSP */.g.ZWSP, "") === "") { + // 当前块为空且不是最后一个时,需要删除 + blockElement.remove(); + afterRenderEvent(vditor); + } + event.preventDefault(); + return true; + } + } + var rangeStartOffset = range.startOffset; + if (range.toString() === "" && startContainer.nodeType === 3 && + startContainer.textContent.charAt(rangeStartOffset - 2) === "\n" && + startContainer.textContent.charAt(rangeStartOffset - 1) !== constants/* Constants.ZWSP */.g.ZWSP + && ["STRONG", "STRIKE", "S", "I", "EM", "B"].includes(startContainer.parentElement.tagName)) { + // 保持行内元素软换行需继续的一致性 + startContainer.textContent = startContainer.textContent.substring(0, rangeStartOffset - 1) + + constants/* Constants.ZWSP */.g.ZWSP; + range.setStart(startContainer, rangeStartOffset); + range.collapse(true); + afterRenderEvent(vditor); + event.preventDefault(); + return true; + } + // inline code、math、html 行前零宽字符后进行删除 + if (startContainer.textContent === constants/* Constants.ZWSP */.g.ZWSP && range.startOffset === 1 + && !startContainer.previousSibling && nextIsCode(range)) { + startContainer.textContent = ""; + // 不能返回,其前面为代码渲染块时需进行以下处理:修正光标位于 inline math/html 前,按下删除按钮 code 中内容会被删除 + } + // 修正光标位于 inline math/html, html-entity 前,按下删除按钮 code 中内容会被删除, 不能返回,还需要进行后续处理 + blockElement.querySelectorAll("span.vditor-wysiwyg__block[data-type='math-inline']").forEach(function (item) { + item.firstElementChild.style.display = "inline"; + item.lastElementChild.style.display = "none"; + }); + blockElement.querySelectorAll("span.vditor-wysiwyg__block[data-type='html-entity']").forEach(function (item) { + item.firstElementChild.style.display = "inline"; + item.lastElementChild.style.display = "none"; + }); + } + } + if ((0,compatibility/* isFirefox */.vU)() && range.startOffset === 1 && startContainer.textContent.indexOf(constants/* Constants.ZWSP */.g.ZWSP) > -1 && + startContainer.previousSibling && startContainer.previousSibling.nodeType !== 3 && + startContainer.previousSibling.tagName === "CODE" && + (event.key === "Backspace" || event.key === "ArrowLeft")) { + // https://github.com/Vanessa219/vditor/issues/410 + range.selectNodeContents(startContainer.previousSibling); + range.collapse(false); + event.preventDefault(); + return true; + } + if (fixFirefoxArrowUpTable(event, blockElement, range)) { + event.preventDefault(); + return true; + } + fixCursorDownInlineMath(range, event.key); + if (event.key === "ArrowDown") { + // 光标位于内联数学公式前,按下键无作用 + var nextElement = startContainer.nextSibling; + if (nextElement && nextElement.nodeType !== 3 && nextElement.getAttribute("data-type") === "math-inline") { + range.setStartAfter(nextElement); + } + } + if (blockElement && keydownToc(blockElement, vditor, event, range)) { + event.preventDefault(); + return true; + } + return false; +}; +var removeBlockElement = function (vditor, event) { + // 删除有子工具栏的块 + if (matchHotKey("⇧⌘X", event)) { + var itemElement = vditor.wysiwyg.popover.querySelector('[data-type="remove"]'); + if (itemElement) { + itemElement.click(); + } + event.preventDefault(); + return true; + } +}; + +;// CONCATENATED MODULE: ./src/ts/wysiwyg/highlightToolbarWYSIWYG.ts + + + + + + + + + + + + + + + + +var highlightToolbarWYSIWYG = function (vditor) { + clearTimeout(vditor.wysiwyg.hlToolbarTimeoutId); + vditor.wysiwyg.hlToolbarTimeoutId = window.setTimeout(function () { + if (vditor.wysiwyg.element.getAttribute("contenteditable") === "false") { + return; + } + if (!(0,selection/* selectIsEditor */.Gb)(vditor.wysiwyg.element)) { + return; + } + removeCurrentToolbar(vditor.toolbar.elements, constants/* Constants.EDIT_TOOLBARS */.g.EDIT_TOOLBARS); + enableToolbar(vditor.toolbar.elements, constants/* Constants.EDIT_TOOLBARS */.g.EDIT_TOOLBARS); + var range = getSelection().getRangeAt(0); + var typeElement = range.startContainer; + if (range.startContainer.nodeType === 3) { + typeElement = range.startContainer.parentElement; + } + else { + typeElement = typeElement.childNodes[range.startOffset >= typeElement.childNodes.length + ? typeElement.childNodes.length - 1 + : range.startOffset]; + } + var footnotesElement = (0,hasClosest/* hasClosestByAttribute */.a1)(typeElement, "data-type", "footnotes-block"); + if (footnotesElement) { + vditor.wysiwyg.popover.innerHTML = ""; + genClose(footnotesElement, vditor); + setPopoverPosition(vditor, footnotesElement); + return; + } + // 工具栏高亮和禁用 + var liElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(typeElement, "LI"); + if (liElement) { + if (liElement.classList.contains("vditor-task")) { + setCurrentToolbar(vditor.toolbar.elements, ["check"]); + } + else if (liElement.parentElement.tagName === "OL") { + setCurrentToolbar(vditor.toolbar.elements, ["ordered-list"]); + } + else if (liElement.parentElement.tagName === "UL") { + setCurrentToolbar(vditor.toolbar.elements, ["list"]); + } + enableToolbar(vditor.toolbar.elements, ["outdent", "indent"]); + } + else { + disableToolbar(vditor.toolbar.elements, ["outdent", "indent"]); + } + if ((0,hasClosest/* hasClosestByMatchTag */.lG)(typeElement, "BLOCKQUOTE")) { + setCurrentToolbar(vditor.toolbar.elements, ["quote"]); + } + if ((0,hasClosest/* hasClosestByMatchTag */.lG)(typeElement, "B") || + (0,hasClosest/* hasClosestByMatchTag */.lG)(typeElement, "STRONG")) { + setCurrentToolbar(vditor.toolbar.elements, ["bold"]); + } + if ((0,hasClosest/* hasClosestByMatchTag */.lG)(typeElement, "I") || + (0,hasClosest/* hasClosestByMatchTag */.lG)(typeElement, "EM")) { + setCurrentToolbar(vditor.toolbar.elements, ["italic"]); + } + if ((0,hasClosest/* hasClosestByMatchTag */.lG)(typeElement, "STRIKE") || + (0,hasClosest/* hasClosestByMatchTag */.lG)(typeElement, "S")) { + setCurrentToolbar(vditor.toolbar.elements, ["strike"]); + } + // comments + vditor.wysiwyg.element + .querySelectorAll(".vditor-comment--focus") + .forEach(function (item) { + item.classList.remove("vditor-comment--focus"); + }); + var commentElement = (0,hasClosest/* hasClosestByClassName */.fb)(typeElement, "vditor-comment"); + if (commentElement) { + var ids_1 = commentElement.getAttribute("data-cmtids").split(" "); + if (ids_1.length > 1 && commentElement.nextSibling.isSameNode(commentElement.nextElementSibling)) { + var nextIds_1 = commentElement.nextElementSibling + .getAttribute("data-cmtids") + .split(" "); + ids_1.find(function (id) { + if (nextIds_1.includes(id)) { + ids_1 = [id]; + return true; + } + }); + } + vditor.wysiwyg.element + .querySelectorAll(".vditor-comment") + .forEach(function (item) { + if (item.getAttribute("data-cmtids").indexOf(ids_1[0]) > -1) { + item.classList.add("vditor-comment--focus"); + } + }); + } + var aElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(typeElement, "A"); + if (aElement) { + setCurrentToolbar(vditor.toolbar.elements, ["link"]); + } + var tableElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(typeElement, "TABLE"); + var headingElement = (0,hasClosestByHeadings/* hasClosestByHeadings */.W)(typeElement); + if ((0,hasClosest/* hasClosestByMatchTag */.lG)(typeElement, "CODE")) { + if ((0,hasClosest/* hasClosestByMatchTag */.lG)(typeElement, "PRE")) { + disableToolbar(vditor.toolbar.elements, [ + "headings", + "bold", + "italic", + "strike", + "line", + "quote", + "list", + "ordered-list", + "check", + "code", + "inline-code", + "upload", + "link", + "table", + "record", + ]); + setCurrentToolbar(vditor.toolbar.elements, ["code"]); + } + else { + disableToolbar(vditor.toolbar.elements, [ + "headings", + "bold", + "italic", + "strike", + "line", + "quote", + "list", + "ordered-list", + "check", + "code", + "upload", + "link", + "table", + "record", + ]); + setCurrentToolbar(vditor.toolbar.elements, ["inline-code"]); + } + } + else if (headingElement) { + disableToolbar(vditor.toolbar.elements, ["bold"]); + setCurrentToolbar(vditor.toolbar.elements, ["headings"]); + } + else if (tableElement) { + disableToolbar(vditor.toolbar.elements, ["table"]); + } + // toc popover + var tocElement = (0,hasClosest/* hasClosestByClassName */.fb)(typeElement, "vditor-toc"); + if (tocElement) { + vditor.wysiwyg.popover.innerHTML = ""; + genClose(tocElement, vditor); + setPopoverPosition(vditor, tocElement); + return; + } + // quote popover + var blockquoteElement = (0,hasClosestByHeadings/* hasClosestByTag */.S)(typeElement, "BLOCKQUOTE"); + if (blockquoteElement) { + vditor.wysiwyg.popover.innerHTML = ""; + genUp(range, blockquoteElement, vditor); + genDown(range, blockquoteElement, vditor); + genClose(blockquoteElement, vditor); + setPopoverPosition(vditor, blockquoteElement); + } + // list item popover + if (liElement) { + vditor.wysiwyg.popover.innerHTML = ""; + genUp(range, liElement, vditor); + genDown(range, liElement, vditor); + genClose(liElement, vditor); + setPopoverPosition(vditor, liElement); + } + // table popover + if (tableElement) { + var lang = vditor.options.lang; + var options = vditor.options; + vditor.wysiwyg.popover.innerHTML = ""; + var updateTable_1 = function () { + var oldRow = tableElement.rows.length; + var oldColumn = tableElement.rows[0].cells.length; + var row = parseInt(input_1.value, 10) || oldRow; + var column = parseInt(input2_1.value, 10) || oldColumn; + if (row === oldRow && oldColumn === column) { + return; + } + if (oldColumn !== column) { + var columnDiff = column - oldColumn; + for (var i = 0; i < tableElement.rows.length; i++) { + if (columnDiff > 0) { + for (var j = 0; j < columnDiff; j++) { + if (i === 0) { + tableElement.rows[i].lastElementChild.insertAdjacentHTML("afterend", "<th> </th>"); + } + else { + tableElement.rows[i].lastElementChild.insertAdjacentHTML("afterend", "<td> </td>"); + } + } + } + else { + for (var k = oldColumn - 1; k >= column; k--) { + tableElement.rows[i].cells[k].remove(); + } + } + } + } + if (oldRow !== row) { + var rowDiff = row - oldRow; + if (rowDiff > 0) { + var rowHTML = "<tr>"; + for (var m = 0; m < column; m++) { + rowHTML += "<td> </td>"; + } + for (var l = 0; l < rowDiff; l++) { + if (tableElement.querySelector("tbody")) { + tableElement + .querySelector("tbody") + .insertAdjacentHTML("beforeend", rowHTML); + } + else { + tableElement + .querySelector("thead") + .insertAdjacentHTML("afterend", rowHTML + "</tr>"); + } + } + } + else { + for (var m = oldRow - 1; m >= row; m--) { + tableElement.rows[m].remove(); + if (tableElement.rows.length === 1) { + tableElement.querySelector("tbody").remove(); + } + } + } + } + if (typeof vditor.options.input === "function") { + vditor.options.input(getMarkdown(vditor)); + } + }; + var setAlign_1 = function (type) { + setTableAlign(tableElement, type); + if (type === "right") { + left_1.classList.remove("vditor-icon--current"); + center_1.classList.remove("vditor-icon--current"); + right_1.classList.add("vditor-icon--current"); + } + else if (type === "center") { + left_1.classList.remove("vditor-icon--current"); + right_1.classList.remove("vditor-icon--current"); + center_1.classList.add("vditor-icon--current"); + } + else { + center_1.classList.remove("vditor-icon--current"); + right_1.classList.remove("vditor-icon--current"); + left_1.classList.add("vditor-icon--current"); + } + (0,selection/* setSelectionFocus */.Hc)(range); + afterRenderEvent(vditor); + }; + var td = (0,hasClosest/* hasClosestByMatchTag */.lG)(typeElement, "TD"); + var th = (0,hasClosest/* hasClosestByMatchTag */.lG)(typeElement, "TH"); + var alignType = "left"; + if (td) { + alignType = td.getAttribute("align") || "left"; + } + else if (th) { + alignType = th.getAttribute("align") || "center"; + } + var left_1 = document.createElement("button"); + left_1.setAttribute("type", "button"); + left_1.setAttribute("aria-label", window.VditorI18n.alignLeft + "<" + (0,compatibility/* updateHotkeyTip */.ns)("⇧⌘L") + ">"); + left_1.setAttribute("data-type", "left"); + left_1.innerHTML = + '<svg><use xlink:href="#vditor-icon-align-left"></use></svg>'; + left_1.className = + "vditor-icon vditor-tooltipped vditor-tooltipped__n" + + (alignType === "left" ? " vditor-icon--current" : ""); + left_1.onclick = function () { + setAlign_1("left"); + }; + var center_1 = document.createElement("button"); + center_1.setAttribute("type", "button"); + center_1.setAttribute("aria-label", window.VditorI18n.alignCenter + "<" + (0,compatibility/* updateHotkeyTip */.ns)("⇧⌘C") + ">"); + center_1.setAttribute("data-type", "center"); + center_1.innerHTML = + '<svg><use xlink:href="#vditor-icon-align-center"></use></svg>'; + center_1.className = + "vditor-icon vditor-tooltipped vditor-tooltipped__n" + + (alignType === "center" ? " vditor-icon--current" : ""); + center_1.onclick = function () { + setAlign_1("center"); + }; + var right_1 = document.createElement("button"); + right_1.setAttribute("type", "button"); + right_1.setAttribute("aria-label", window.VditorI18n.alignRight + "<" + (0,compatibility/* updateHotkeyTip */.ns)("⇧⌘R") + ">"); + right_1.setAttribute("data-type", "right"); + right_1.innerHTML = + '<svg><use xlink:href="#vditor-icon-align-right"></use></svg>'; + right_1.className = + "vditor-icon vditor-tooltipped vditor-tooltipped__n" + + (alignType === "right" ? " vditor-icon--current" : ""); + right_1.onclick = function () { + setAlign_1("right"); + }; + var insertRowElement = document.createElement("button"); + insertRowElement.setAttribute("type", "button"); + insertRowElement.setAttribute("aria-label", window.VditorI18n.insertRowBelow + "<" + (0,compatibility/* updateHotkeyTip */.ns)("⌘=") + ">"); + insertRowElement.setAttribute("data-type", "insertRow"); + insertRowElement.innerHTML = + '<svg><use xlink:href="#vditor-icon-insert-row"></use></svg>'; + insertRowElement.className = + "vditor-icon vditor-tooltipped vditor-tooltipped__n"; + insertRowElement.onclick = function () { + var startContainer = getSelection().getRangeAt(0) + .startContainer; + var cellElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(startContainer, "TD") || + (0,hasClosest/* hasClosestByMatchTag */.lG)(startContainer, "TH"); + if (cellElement) { + insertRow(vditor, range, cellElement); + } + }; + var insertRowBElement = document.createElement("button"); + insertRowBElement.setAttribute("type", "button"); + insertRowBElement.setAttribute("aria-label", window.VditorI18n.insertRowAbove + "<" + (0,compatibility/* updateHotkeyTip */.ns)("⇧⌘F") + ">"); + insertRowBElement.setAttribute("data-type", "insertRow"); + insertRowBElement.innerHTML = + '<svg><use xlink:href="#vditor-icon-insert-rowb"></use></svg>'; + insertRowBElement.className = + "vditor-icon vditor-tooltipped vditor-tooltipped__n"; + insertRowBElement.onclick = function () { + var startContainer = getSelection().getRangeAt(0) + .startContainer; + var cellElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(startContainer, "TD") || + (0,hasClosest/* hasClosestByMatchTag */.lG)(startContainer, "TH"); + if (cellElement) { + insertRowAbove(vditor, range, cellElement); + } + }; + var insertColumnElement = document.createElement("button"); + insertColumnElement.setAttribute("type", "button"); + insertColumnElement.setAttribute("aria-label", window.VditorI18n.insertColumnRight + "<" + (0,compatibility/* updateHotkeyTip */.ns)("⇧⌘=") + ">"); + insertColumnElement.setAttribute("data-type", "insertColumn"); + insertColumnElement.innerHTML = + '<svg><use xlink:href="#vditor-icon-insert-column"></use></svg>'; + insertColumnElement.className = + "vditor-icon vditor-tooltipped vditor-tooltipped__n"; + insertColumnElement.onclick = function () { + var startContainer = getSelection().getRangeAt(0) + .startContainer; + var cellElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(startContainer, "TD") || + (0,hasClosest/* hasClosestByMatchTag */.lG)(startContainer, "TH"); + if (cellElement) { + insertColumn(vditor, tableElement, cellElement); + } + }; + var insertColumnBElement = document.createElement("button"); + insertColumnBElement.setAttribute("type", "button"); + insertColumnBElement.setAttribute("aria-label", window.VditorI18n.insertColumnLeft + "<" + (0,compatibility/* updateHotkeyTip */.ns)("⇧⌘G") + ">"); + insertColumnBElement.setAttribute("data-type", "insertColumn"); + insertColumnBElement.innerHTML = + '<svg><use xlink:href="#vditor-icon-insert-columnb"></use></svg>'; + insertColumnBElement.className = + "vditor-icon vditor-tooltipped vditor-tooltipped__n"; + insertColumnBElement.onclick = function () { + var startContainer = getSelection().getRangeAt(0) + .startContainer; + var cellElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(startContainer, "TD") || + (0,hasClosest/* hasClosestByMatchTag */.lG)(startContainer, "TH"); + if (cellElement) { + insertColumn(vditor, tableElement, cellElement, "beforebegin"); + } + }; + var deleteRowElement = document.createElement("button"); + deleteRowElement.setAttribute("type", "button"); + deleteRowElement.setAttribute("aria-label", window.VditorI18n["delete-row"] + "<" + (0,compatibility/* updateHotkeyTip */.ns)("⌘-") + ">"); + deleteRowElement.setAttribute("data-type", "deleteRow"); + deleteRowElement.innerHTML = + '<svg><use xlink:href="#vditor-icon-delete-row"></use></svg>'; + deleteRowElement.className = + "vditor-icon vditor-tooltipped vditor-tooltipped__n"; + deleteRowElement.onclick = function () { + var startContainer = getSelection().getRangeAt(0) + .startContainer; + var cellElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(startContainer, "TD") || + (0,hasClosest/* hasClosestByMatchTag */.lG)(startContainer, "TH"); + if (cellElement) { + deleteRow(vditor, range, cellElement); + } + }; + var deleteColumnElement = document.createElement("button"); + deleteColumnElement.setAttribute("type", "button"); + deleteColumnElement.setAttribute("aria-label", window.VditorI18n["delete-column"] + "<" + (0,compatibility/* updateHotkeyTip */.ns)("⇧⌘-") + ">"); + deleteColumnElement.setAttribute("data-type", "deleteColumn"); + deleteColumnElement.innerHTML = + '<svg><use xlink:href="#vditor-icon-delete-column"></use></svg>'; + deleteColumnElement.className = + "vditor-icon vditor-tooltipped vditor-tooltipped__n"; + deleteColumnElement.onclick = function () { + var startContainer = getSelection().getRangeAt(0) + .startContainer; + var cellElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(startContainer, "TD") || + (0,hasClosest/* hasClosestByMatchTag */.lG)(startContainer, "TH"); + if (cellElement) { + deleteColumn(vditor, range, tableElement, cellElement); + } + }; + var inputWrap = document.createElement("span"); + inputWrap.setAttribute("aria-label", window.VditorI18n.row); + inputWrap.className = "vditor-tooltipped vditor-tooltipped__n"; + var input_1 = document.createElement("input"); + inputWrap.appendChild(input_1); + input_1.type = "number"; + input_1.min = "1"; + input_1.className = "vditor-input"; + input_1.style.width = "42px"; + input_1.style.textAlign = "center"; + input_1.setAttribute("placeholder", window.VditorI18n.row); + input_1.value = tableElement.rows.length.toString(); + input_1.oninput = function () { + updateTable_1(); + }; + input_1.onkeydown = function (event) { + if (event.isComposing) { + return; + } + if (event.key === "Tab") { + input2_1.focus(); + input2_1.select(); + event.preventDefault(); + return; + } + if (removeBlockElement(vditor, event)) { + return; + } + if (focusToElement(event, range)) { + return; + } + }; + var input2Wrap = document.createElement("span"); + input2Wrap.setAttribute("aria-label", window.VditorI18n.column); + input2Wrap.className = "vditor-tooltipped vditor-tooltipped__n"; + var input2_1 = document.createElement("input"); + input2Wrap.appendChild(input2_1); + input2_1.type = "number"; + input2_1.min = "1"; + input2_1.className = "vditor-input"; + input2_1.style.width = "42px"; + input2_1.style.textAlign = "center"; + input2_1.setAttribute("placeholder", window.VditorI18n.column); + input2_1.value = tableElement.rows[0].cells.length.toString(); + input2_1.oninput = function () { + updateTable_1(); + }; + input2_1.onkeydown = function (event) { + if (event.isComposing) { + return; + } + if (event.key === "Tab") { + input_1.focus(); + input_1.select(); + event.preventDefault(); + return; + } + if (removeBlockElement(vditor, event)) { + return; + } + if (focusToElement(event, range)) { + return; + } + }; + genUp(range, tableElement, vditor); + genDown(range, tableElement, vditor); + genClose(tableElement, vditor); + vditor.wysiwyg.popover.insertAdjacentElement("beforeend", left_1); + vditor.wysiwyg.popover.insertAdjacentElement("beforeend", center_1); + vditor.wysiwyg.popover.insertAdjacentElement("beforeend", right_1); + vditor.wysiwyg.popover.insertAdjacentElement("beforeend", insertRowBElement); + vditor.wysiwyg.popover.insertAdjacentElement("beforeend", insertRowElement); + vditor.wysiwyg.popover.insertAdjacentElement("beforeend", insertColumnBElement); + vditor.wysiwyg.popover.insertAdjacentElement("beforeend", insertColumnElement); + vditor.wysiwyg.popover.insertAdjacentElement("beforeend", deleteRowElement); + vditor.wysiwyg.popover.insertAdjacentElement("beforeend", deleteColumnElement); + vditor.wysiwyg.popover.insertAdjacentElement("beforeend", inputWrap); + vditor.wysiwyg.popover.insertAdjacentHTML("beforeend", " x "); + vditor.wysiwyg.popover.insertAdjacentElement("beforeend", input2Wrap); + setPopoverPosition(vditor, tableElement); + } + // link ref popover + var linkRefElement = (0,hasClosest/* hasClosestByAttribute */.a1)(typeElement, "data-type", "link-ref"); + if (linkRefElement) { + genLinkRefPopover(vditor, linkRefElement, range); + } + // footnote popover + var footnotesRefElement = (0,hasClosest/* hasClosestByAttribute */.a1)(typeElement, "data-type", "footnotes-ref"); + if (footnotesRefElement) { + var lang = vditor.options.lang; + var options = vditor.options; + vditor.wysiwyg.popover.innerHTML = ""; + var inputWrap = document.createElement("span"); + inputWrap.setAttribute("aria-label", window.VditorI18n.footnoteRef + "<" + (0,compatibility/* updateHotkeyTip */.ns)("⌥Enter") + ">"); + inputWrap.className = "vditor-tooltipped vditor-tooltipped__n"; + var input_2 = document.createElement("input"); + inputWrap.appendChild(input_2); + input_2.className = "vditor-input"; + input_2.setAttribute("placeholder", window.VditorI18n.footnoteRef + "<" + (0,compatibility/* updateHotkeyTip */.ns)("⌥Enter") + ">"); + input_2.style.width = "120px"; + input_2.value = footnotesRefElement.getAttribute("data-footnotes-label"); + input_2.oninput = function () { + if (input_2.value.trim() !== "") { + footnotesRefElement.setAttribute("data-footnotes-label", input_2.value); + } + if (typeof vditor.options.input === "function") { + vditor.options.input(getMarkdown(vditor)); + } + }; + input_2.onkeydown = function (event) { + if (event.isComposing) { + return; + } + if (removeBlockElement(vditor, event)) { + return; + } + if (focusToElement(event, range)) { + return; + } + }; + genClose(footnotesRefElement, vditor); + vditor.wysiwyg.popover.insertAdjacentElement("beforeend", inputWrap); + setPopoverPosition(vditor, footnotesRefElement); + } + // block popover: math-inline, math-block, html-block, html-inline, code-block, html-entity + var blockRenderElement = (0,hasClosest/* hasClosestByClassName */.fb)(typeElement, "vditor-wysiwyg__block"); + var isBlock = blockRenderElement ? blockRenderElement.getAttribute("data-type").indexOf("block") > -1 : false; + vditor.wysiwyg.element + .querySelectorAll(".vditor-wysiwyg__preview") + .forEach(function (itemElement) { + if (!blockRenderElement || (blockRenderElement && isBlock && !blockRenderElement.contains(itemElement))) { + var previousElement = itemElement.previousElementSibling; + previousElement.style.display = "none"; + } + }); + if (blockRenderElement && isBlock) { + vditor.wysiwyg.popover.innerHTML = ""; + genUp(range, blockRenderElement, vditor); + genDown(range, blockRenderElement, vditor); + genClose(blockRenderElement, vditor); + if (blockRenderElement.getAttribute("data-type") === "code-block") { + var languageWrap = document.createElement("span"); + languageWrap.setAttribute("aria-label", window.VditorI18n.language + "<" + (0,compatibility/* updateHotkeyTip */.ns)("⌥Enter") + ">"); + languageWrap.className = "vditor-tooltipped vditor-tooltipped__n"; + var language_1 = document.createElement("input"); + languageWrap.appendChild(language_1); + var codeElement_1 = blockRenderElement.firstElementChild.firstElementChild; + language_1.className = "vditor-input"; + language_1.setAttribute("placeholder", window.VditorI18n.language + "<" + (0,compatibility/* updateHotkeyTip */.ns)("⌥Enter") + ">"); + language_1.value = + codeElement_1.className.indexOf("language-") > -1 + ? codeElement_1.className.split("-")[1].split(" ")[0] + : ""; + language_1.oninput = function (e) { + if (language_1.value.trim() !== "") { + codeElement_1.className = "language-".concat(language_1.value); + } + else { + codeElement_1.className = ""; + vditor.hint.recentLanguage = ""; + } + if (blockRenderElement.lastElementChild.classList.contains("vditor-wysiwyg__preview")) { + blockRenderElement.lastElementChild.innerHTML = + blockRenderElement.firstElementChild.innerHTML; + processCodeRender(blockRenderElement.lastElementChild, vditor); + } + afterRenderEvent(vditor); + // 当鼠标点选语言时,触发自定义input事件 + if (e.detail === 1) { + // 选择语言后,输入焦点切换到代码输入框 + range.setStart(codeElement_1.firstChild, 0); + range.collapse(true); + (0,selection/* setSelectionFocus */.Hc)(range); + } + }; + language_1.onkeydown = function (event) { + if (event.isComposing) { + return; + } + if (removeBlockElement(vditor, event)) { + return; + } + if (event.key === "Escape" && + vditor.hint.element.style.display === "block") { + vditor.hint.element.style.display = "none"; + event.preventDefault(); + return; + } + vditor.hint.select(event, vditor); + focusToElement(event, range); + }; + language_1.onkeyup = function (event) { + var _a, _b; + if (event.isComposing || + event.key === "Enter" || + event.key === "ArrowUp" || + event.key === "Escape" || + event.key === "ArrowDown") { + return; + } + var matchLangData = []; + var key = language_1.value.substring(0, language_1.selectionStart); + (vditor.options.preview.hljs.langs || constants/* Constants.ALIAS_CODE_LANGUAGES.concat */.g.ALIAS_CODE_LANGUAGES.concat(((_b = (_a = window.hljs) === null || _a === void 0 ? void 0 : _a.listLanguages()) !== null && _b !== void 0 ? _b : []).sort())).forEach(function (keyName) { + if (keyName.indexOf(key.toLowerCase()) > -1) { + matchLangData.push({ + html: keyName, + value: keyName, + }); + } + }); + vditor.hint.genHTML(matchLangData, key, vditor); + event.preventDefault(); + }; + vditor.wysiwyg.popover.insertAdjacentElement("beforeend", languageWrap); + } + setPopoverPosition(vditor, blockRenderElement); + } + else { + blockRenderElement = undefined; + } + if (headingElement) { + vditor.wysiwyg.popover.innerHTML = ""; + var inputWrap = document.createElement("span"); + inputWrap.setAttribute("aria-label", "ID" + "<" + (0,compatibility/* updateHotkeyTip */.ns)("⌥Enter") + ">"); + inputWrap.className = "vditor-tooltipped vditor-tooltipped__n"; + var input_3 = document.createElement("input"); + inputWrap.appendChild(input_3); + input_3.className = "vditor-input"; + input_3.setAttribute("placeholder", "ID" + "<" + (0,compatibility/* updateHotkeyTip */.ns)("⌥Enter") + ">"); + input_3.style.width = "120px"; + input_3.value = headingElement.getAttribute("data-id") || ""; + input_3.oninput = function () { + headingElement.setAttribute("data-id", input_3.value); + if (typeof vditor.options.input === "function") { + vditor.options.input(getMarkdown(vditor)); + } + }; + input_3.onkeydown = function (event) { + if (event.isComposing) { + return; + } + if (removeBlockElement(vditor, event)) { + return; + } + if (focusToElement(event, range)) { + return; + } + }; + genUp(range, headingElement, vditor); + genDown(range, headingElement, vditor); + genClose(headingElement, vditor); + vditor.wysiwyg.popover.insertAdjacentElement("beforeend", inputWrap); + setPopoverPosition(vditor, headingElement); + } + // a popover + if (aElement) { + genAPopover(vditor, aElement, range); + } + if (!blockquoteElement && + !liElement && + !tableElement && + !blockRenderElement && + !aElement && + !linkRefElement && + !footnotesRefElement && + !headingElement && + !tocElement) { + var blockElement = (0,hasClosest/* hasClosestByAttribute */.a1)(typeElement, "data-block", "0"); + if (blockElement && + blockElement.parentElement.isEqualNode(vditor.wysiwyg.element)) { + vditor.wysiwyg.popover.innerHTML = ""; + genUp(range, blockElement, vditor); + genDown(range, blockElement, vditor); + genClose(blockElement, vditor); + setPopoverPosition(vditor, blockElement); + } + else { + vditor.wysiwyg.popover.style.display = "none"; + } + } + // 反斜杠特殊处理 + vditor.wysiwyg.element + .querySelectorAll('span[data-type="backslash"] > span') + .forEach(function (item) { + item.style.display = "none"; + }); + var backslashElement = (0,hasClosest/* hasClosestByAttribute */.a1)(range.startContainer, "data-type", "backslash"); + if (backslashElement) { + backslashElement.querySelector("span").style.display = "inline"; + } + }, 200); +}; +var setPopoverPosition = function (vditor, element) { + var targetElement = element; + var tableElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(element, "TABLE"); + if (tableElement) { + targetElement = tableElement; + } + vditor.wysiwyg.popover.style.left = "0"; + vditor.wysiwyg.popover.style.display = "block"; + vditor.wysiwyg.popover.style.top = + Math.max(-8, targetElement.offsetTop - 21 - vditor.wysiwyg.element.scrollTop) + "px"; + vditor.wysiwyg.popover.style.left = + Math.min(targetElement.offsetLeft, vditor.wysiwyg.element.clientWidth - vditor.wysiwyg.popover.clientWidth) + "px"; + vditor.wysiwyg.popover.setAttribute("data-top", (targetElement.offsetTop - 21).toString()); +}; +var genLinkRefPopover = function (vditor, linkRefElement, range) { + if (range === void 0) { range = getSelection().getRangeAt(0); } + vditor.wysiwyg.popover.innerHTML = ""; + var updateLinkRef = function () { + if (input.value.trim() !== "") { + if (linkRefElement.tagName === "IMG") { + linkRefElement.setAttribute("alt", input.value); + } + else { + linkRefElement.textContent = input.value; + } + } + // data-link-label + if (input1.value.trim() !== "") { + linkRefElement.setAttribute("data-link-label", input1.value); + } + if (typeof vditor.options.input === "function") { + vditor.options.input(getMarkdown(vditor)); + } + }; + var inputWrap = document.createElement("span"); + inputWrap.setAttribute("aria-label", window.VditorI18n.textIsNotEmpty); + inputWrap.className = "vditor-tooltipped vditor-tooltipped__n"; + var input = document.createElement("input"); + inputWrap.appendChild(input); + input.className = "vditor-input"; + input.setAttribute("placeholder", window.VditorI18n.textIsNotEmpty); + input.style.width = "120px"; + input.value = + linkRefElement.getAttribute("alt") || linkRefElement.textContent; + input.oninput = function () { + updateLinkRef(); + }; + input.onkeydown = function (event) { + if (removeBlockElement(vditor, event)) { + return; + } + if (focusToElement(event, range)) { + return; + } + linkHotkey(vditor, linkRefElement, event, input1); + }; + var input1Wrap = document.createElement("span"); + input1Wrap.setAttribute("aria-label", window.VditorI18n.linkRef); + input1Wrap.className = "vditor-tooltipped vditor-tooltipped__n"; + var input1 = document.createElement("input"); + input1Wrap.appendChild(input1); + input1.className = "vditor-input"; + input1.setAttribute("placeholder", window.VditorI18n.linkRef); + input1.value = linkRefElement.getAttribute("data-link-label"); + input1.oninput = function () { + updateLinkRef(); + }; + input1.onkeydown = function (event) { + if (removeBlockElement(vditor, event)) { + return; + } + if (focusToElement(event, range)) { + return; + } + linkHotkey(vditor, linkRefElement, event, input); + }; + genClose(linkRefElement, vditor); + vditor.wysiwyg.popover.insertAdjacentElement("beforeend", inputWrap); + vditor.wysiwyg.popover.insertAdjacentElement("beforeend", input1Wrap); + setPopoverPosition(vditor, linkRefElement); +}; +var genUp = function (range, element, vditor) { + var previousElement = element.previousElementSibling; + if (!previousElement || + (!element.parentElement.isEqualNode(vditor.wysiwyg.element) && + element.tagName !== "LI")) { + return; + } + var upElement = document.createElement("button"); + upElement.setAttribute("type", "button"); + upElement.setAttribute("data-type", "up"); + upElement.setAttribute("aria-label", window.VditorI18n.up + "<" + (0,compatibility/* updateHotkeyTip */.ns)("⇧⌘U") + ">"); + upElement.innerHTML = '<svg><use xlink:href="#vditor-icon-up"></use></svg>'; + upElement.className = "vditor-icon vditor-tooltipped vditor-tooltipped__n"; + upElement.onclick = function () { + range.insertNode(document.createElement("wbr")); + previousElement.insertAdjacentElement("beforebegin", element); + (0,selection/* setRangeByWbr */.ib)(vditor.wysiwyg.element, range); + afterRenderEvent(vditor); + highlightToolbarWYSIWYG(vditor); + scrollCenter(vditor); + }; + vditor.wysiwyg.popover.insertAdjacentElement("beforeend", upElement); +}; +var genDown = function (range, element, vditor) { + var nextElement = element.nextElementSibling; + if (!nextElement || + (!element.parentElement.isEqualNode(vditor.wysiwyg.element) && + element.tagName !== "LI")) { + return; + } + var downElement = document.createElement("button"); + downElement.setAttribute("type", "button"); + downElement.setAttribute("data-type", "down"); + downElement.setAttribute("aria-label", window.VditorI18n.down + "<" + (0,compatibility/* updateHotkeyTip */.ns)("⇧⌘D") + ">"); + downElement.innerHTML = + '<svg><use xlink:href="#vditor-icon-down"></use></svg>'; + downElement.className = + "vditor-icon vditor-tooltipped vditor-tooltipped__n"; + downElement.onclick = function () { + range.insertNode(document.createElement("wbr")); + nextElement.insertAdjacentElement("afterend", element); + (0,selection/* setRangeByWbr */.ib)(vditor.wysiwyg.element, range); + afterRenderEvent(vditor); + highlightToolbarWYSIWYG(vditor); + scrollCenter(vditor); + }; + vditor.wysiwyg.popover.insertAdjacentElement("beforeend", downElement); +}; +var genClose = function (element, vditor) { + var close = document.createElement("button"); + close.setAttribute("type", "button"); + close.setAttribute("data-type", "remove"); + close.setAttribute("aria-label", window.VditorI18n.remove + "<" + (0,compatibility/* updateHotkeyTip */.ns)("⇧⌘X") + ">"); + close.innerHTML = + '<svg><use xlink:href="#vditor-icon-trashcan"></use></svg>'; + close.className = "vditor-icon vditor-tooltipped vditor-tooltipped__n"; + close.onclick = function () { + var range = (0,selection/* getEditorRange */.zh)(vditor); + range.setStartAfter(element); + (0,selection/* setSelectionFocus */.Hc)(range); + element.remove(); + afterRenderEvent(vditor); + highlightToolbarWYSIWYG(vditor); + if (["H1", "H2", "H3", "H4", "H5", "H6"].includes(element.tagName)) { + renderToc(vditor); + } + }; + vditor.wysiwyg.popover.insertAdjacentElement("beforeend", close); +}; +var linkHotkey = function (vditor, element, event, nextInputElement) { + if (event.isComposing) { + return; + } + if (event.key === "Tab") { + nextInputElement.focus(); + nextInputElement.select(); + event.preventDefault(); + return; + } + if (!(0,compatibility/* isCtrl */.yl)(event) && + !event.shiftKey && + event.altKey && + event.key === "Enter") { + var range = (0,selection/* getEditorRange */.zh)(vditor); + // firefox 不会打断 link https://github.com/Vanessa219/vditor/issues/193 + element.insertAdjacentHTML("afterend", constants/* Constants.ZWSP */.g.ZWSP); + range.setStartAfter(element.nextSibling); + range.collapse(true); + (0,selection/* setSelectionFocus */.Hc)(range); + event.preventDefault(); + } +}; +var genAPopover = function (vditor, aElement, range) { + vditor.wysiwyg.popover.innerHTML = ""; + var updateA = function () { + if (input.value.trim() !== "") { + aElement.innerHTML = input.value; + } + aElement.setAttribute("href", input1.value); + aElement.setAttribute("title", input2.value); + afterRenderEvent(vditor); + }; + aElement.querySelectorAll("[data-marker]").forEach(function (item) { + item.removeAttribute("data-marker"); + }); + var inputWrap = document.createElement("span"); + inputWrap.setAttribute("aria-label", window.VditorI18n.textIsNotEmpty); + inputWrap.className = "vditor-tooltipped vditor-tooltipped__n"; + var input = document.createElement("input"); + inputWrap.appendChild(input); + input.className = "vditor-input"; + input.setAttribute("placeholder", window.VditorI18n.textIsNotEmpty); + input.style.width = "120px"; + input.value = aElement.innerHTML || ""; + input.oninput = function () { + updateA(); + }; + input.onkeydown = function (event) { + if (removeBlockElement(vditor, event)) { + return; + } + if (focusToElement(event, range)) { + return; + } + linkHotkey(vditor, aElement, event, input1); + }; + var input1Wrap = document.createElement("span"); + input1Wrap.setAttribute("aria-label", window.VditorI18n.link); + input1Wrap.className = "vditor-tooltipped vditor-tooltipped__n"; + var input1 = document.createElement("input"); + input1Wrap.appendChild(input1); + input1.className = "vditor-input"; + input1.setAttribute("placeholder", window.VditorI18n.link); + input1.value = aElement.getAttribute("href") || ""; + input1.oninput = function () { + updateA(); + }; + input1.onkeydown = function (event) { + if (removeBlockElement(vditor, event)) { + return; + } + if (focusToElement(event, range)) { + return; + } + linkHotkey(vditor, aElement, event, input2); + }; + var input2Wrap = document.createElement("span"); + input2Wrap.setAttribute("aria-label", window.VditorI18n.tooltipText); + input2Wrap.className = "vditor-tooltipped vditor-tooltipped__n"; + var input2 = document.createElement("input"); + input2Wrap.appendChild(input2); + input2.className = "vditor-input"; + input2.setAttribute("placeholder", window.VditorI18n.tooltipText); + input2.style.width = "60px"; + input2.value = aElement.getAttribute("title") || ""; + input2.oninput = function () { + updateA(); + }; + input2.onkeydown = function (event) { + if (removeBlockElement(vditor, event)) { + return; + } + if (focusToElement(event, range)) { + return; + } + linkHotkey(vditor, aElement, event, input); + }; + genClose(aElement, vditor); + vditor.wysiwyg.popover.insertAdjacentElement("beforeend", inputWrap); + vditor.wysiwyg.popover.insertAdjacentElement("beforeend", input1Wrap); + vditor.wysiwyg.popover.insertAdjacentElement("beforeend", input2Wrap); + setPopoverPosition(vditor, aElement); +}; +var genImagePopover = function (event, vditor) { + var imgElement = event.target; + vditor.wysiwyg.popover.innerHTML = ""; + var updateImg = function () { + imgElement.setAttribute("src", inputElement.value); + imgElement.setAttribute("alt", alt.value); + imgElement.setAttribute("title", title.value); + if (typeof vditor.options.input === "function") { + vditor.options.input(getMarkdown(vditor)); + } + }; + var inputWrap = document.createElement("span"); + inputWrap.setAttribute("aria-label", window.VditorI18n.imageURL); + inputWrap.className = "vditor-tooltipped vditor-tooltipped__n"; + var inputElement = document.createElement("input"); + inputWrap.appendChild(inputElement); + inputElement.className = "vditor-input"; + inputElement.setAttribute("placeholder", window.VditorI18n.imageURL); + inputElement.value = imgElement.getAttribute("src") || ""; + inputElement.oninput = function () { + updateImg(); + }; + inputElement.onkeydown = function (elementEvent) { + removeBlockElement(vditor, elementEvent); + }; + var altWrap = document.createElement("span"); + altWrap.setAttribute("aria-label", window.VditorI18n.alternateText); + altWrap.className = "vditor-tooltipped vditor-tooltipped__n"; + var alt = document.createElement("input"); + altWrap.appendChild(alt); + alt.className = "vditor-input"; + alt.setAttribute("placeholder", window.VditorI18n.alternateText); + alt.style.width = "52px"; + alt.value = imgElement.getAttribute("alt") || ""; + alt.oninput = function () { + updateImg(); + }; + alt.onkeydown = function (elementEvent) { + removeBlockElement(vditor, elementEvent); + }; + var titleWrap = document.createElement("span"); + titleWrap.setAttribute("aria-label", window.VditorI18n.title); + titleWrap.className = "vditor-tooltipped vditor-tooltipped__n"; + var title = document.createElement("input"); + titleWrap.appendChild(title); + title.className = "vditor-input"; + title.setAttribute("placeholder", window.VditorI18n.title); + title.value = imgElement.getAttribute("title") || ""; + title.oninput = function () { + updateImg(); + }; + title.onkeydown = function (elementEvent) { + removeBlockElement(vditor, elementEvent); + }; + genClose(imgElement, vditor); + vditor.wysiwyg.popover.insertAdjacentElement("beforeend", inputWrap); + vditor.wysiwyg.popover.insertAdjacentElement("beforeend", altWrap); + vditor.wysiwyg.popover.insertAdjacentElement("beforeend", titleWrap); + setPopoverPosition(vditor, imgElement); +}; +var focusToElement = function (event, range) { + if ((!(0,compatibility/* isCtrl */.yl)(event) && !event.shiftKey && event.key === "Enter") || event.key === "Escape") { + if (range) { + (0,selection/* setSelectionFocus */.Hc)(range); + } + event.preventDefault(); + event.stopPropagation(); + return true; + } +}; + +;// CONCATENATED MODULE: ./src/ts/util/highlightToolbar.ts + + +var highlightToolbar = function (vditor) { + if (vditor.currentMode === "wysiwyg") { + highlightToolbarWYSIWYG(vditor); + } + else if (vditor.currentMode === "ir") { + highlightToolbarIR(vditor); + } +}; + +;// CONCATENATED MODULE: ./src/ts/wysiwyg/renderDomByMd.ts + + +var renderDomByMd = function (vditor, md, options) { + if (options === void 0) { options = { + enableAddUndoStack: true, + enableHint: false, + enableInput: true, + }; } + var editorElement = vditor.wysiwyg.element; + editorElement.innerHTML = vditor.lute.Md2VditorDOM(md); + editorElement.querySelectorAll(".vditor-wysiwyg__preview[data-render='2']").forEach(function (item) { + processCodeRender(item, vditor); + item.previousElementSibling.setAttribute("style", "display:none"); + }); + afterRenderEvent(vditor, options); +}; + +;// CONCATENATED MODULE: ./src/ts/wysiwyg/toolbarEvent.ts + + + + + + + + + +var cancelBES = function (range, vditor, commandName) { + var element = range.startContainer.parentElement; + var jump = false; + var lastTagName = ""; + var lastEndTagName = ""; + var splitHTML = splitElement(range); + var lastBeforeHTML = splitHTML.beforeHTML; + var lastAfterHTML = splitHTML.afterHTML; + while (element && !jump) { + var tagName = element.tagName; + if (tagName === "STRIKE") { + tagName = "S"; + } + if (tagName === "I") { + tagName = "EM"; + } + if (tagName === "B") { + tagName = "STRONG"; + } + if (tagName === "S" || tagName === "STRONG" || tagName === "EM") { + var insertHTML = ""; + var previousHTML = ""; + var nextHTML = ""; + if (element.parentElement.getAttribute("data-block") !== "0") { + previousHTML = getPreviousHTML(element); + nextHTML = getNextHTML(element); + } + if (lastBeforeHTML || previousHTML) { + insertHTML = "".concat(previousHTML, "<").concat(tagName, ">").concat(lastBeforeHTML, "</").concat(tagName, ">"); + lastBeforeHTML = insertHTML; + } + if ((commandName === "bold" && tagName === "STRONG") || + (commandName === "italic" && tagName === "EM") || + (commandName === "strikeThrough" && tagName === "S")) { + // 取消 + insertHTML += "".concat(lastTagName).concat(constants/* Constants.ZWSP */.g.ZWSP, "<wbr>").concat(lastEndTagName); + jump = true; + } + if (lastAfterHTML || nextHTML) { + lastAfterHTML = "<".concat(tagName, ">").concat(lastAfterHTML, "</").concat(tagName, ">").concat(nextHTML); + insertHTML += lastAfterHTML; + } + if (element.parentElement.getAttribute("data-block") !== "0") { + element = element.parentElement; + element.innerHTML = insertHTML; + } + else { + element.outerHTML = insertHTML; + element = element.parentElement; + } + lastTagName = "<".concat(tagName, ">") + lastTagName; + lastEndTagName = "</".concat(tagName, ">") + lastEndTagName; + } + else { + jump = true; + } + } + (0,selection/* setRangeByWbr */.ib)(vditor.wysiwyg.element, range); +}; +var toolbarEvent = function (vditor, actionBtn, event) { + if (vditor.wysiwyg.composingLock // Mac Chrome 中韩文结束会出发此事件,导致重复末尾字符 https://github.com/Vanessa219/vditor/issues/188 + && event instanceof CustomEvent // 点击按钮应忽略输入法 https://github.com/Vanessa219/vditor/issues/473 + ) { + return; + } + var useHighlight = true; + var useRender = true; + if (vditor.wysiwyg.element.querySelector("wbr")) { + vditor.wysiwyg.element.querySelector("wbr").remove(); + } + var range = (0,selection/* getEditorRange */.zh)(vditor); + var commandName = actionBtn.getAttribute("data-type"); + // 移除 + if (actionBtn.classList.contains("vditor-menu--current")) { + if (commandName === "strike") { + commandName = "strikeThrough"; + } + if (commandName === "quote") { + var quoteElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(range.startContainer, "BLOCKQUOTE"); + if (!quoteElement) { + quoteElement = range.startContainer.childNodes[range.startOffset]; + } + if (quoteElement) { + useHighlight = false; + actionBtn.classList.remove("vditor-menu--current"); + range.insertNode(document.createElement("wbr")); + quoteElement.outerHTML = quoteElement.innerHTML.trim() === "" ? + "<p data-block=\"0\">".concat(quoteElement.innerHTML, "</p>") : quoteElement.innerHTML; + (0,selection/* setRangeByWbr */.ib)(vditor.wysiwyg.element, range); + } + } + else if (commandName === "inline-code") { + var inlineCodeElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(range.startContainer, "CODE"); + if (!inlineCodeElement) { + inlineCodeElement = range.startContainer.childNodes[range.startOffset]; + } + if (inlineCodeElement) { + inlineCodeElement.outerHTML = inlineCodeElement.innerHTML.replace(constants/* Constants.ZWSP */.g.ZWSP, "") + "<wbr>"; + (0,selection/* setRangeByWbr */.ib)(vditor.wysiwyg.element, range); + } + } + else if (commandName === "link") { + if (!range.collapsed) { + document.execCommand("unlink", false, ""); + } + else { + range.selectNode(range.startContainer.parentElement); + document.execCommand("unlink", false, ""); + } + } + else if (commandName === "check" || commandName === "list" || commandName === "ordered-list") { + listToggle(vditor, range, commandName); + (0,selection/* setRangeByWbr */.ib)(vditor.wysiwyg.element, range); + useHighlight = false; + actionBtn.classList.remove("vditor-menu--current"); + } + else { + // bold, italic, strike + useHighlight = false; + actionBtn.classList.remove("vditor-menu--current"); + if (range.toString() === "") { + cancelBES(range, vditor, commandName); + } + else { + document.execCommand(commandName, false, ""); + } + } + } + else { + // 添加 + if (vditor.wysiwyg.element.childNodes.length === 0) { + vditor.wysiwyg.element.innerHTML = '<p data-block="0"><wbr></p>'; + (0,selection/* setRangeByWbr */.ib)(vditor.wysiwyg.element, range); + } + var blockElement = (0,hasClosest/* hasClosestBlock */.F9)(range.startContainer); + if (commandName === "quote") { + if (!blockElement) { + blockElement = range.startContainer.childNodes[range.startOffset]; + } + if (blockElement) { + useHighlight = false; + actionBtn.classList.add("vditor-menu--current"); + range.insertNode(document.createElement("wbr")); + var liElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(range.startContainer, "LI"); + // li 中软换行 + if (liElement && blockElement.contains(liElement)) { + liElement.innerHTML = "<blockquote data-block=\"0\">".concat(liElement.innerHTML, "</blockquote>"); + } + else { + blockElement.outerHTML = "<blockquote data-block=\"0\">".concat(blockElement.outerHTML, "</blockquote>"); + } + (0,selection/* setRangeByWbr */.ib)(vditor.wysiwyg.element, range); + } + } + else if (commandName === "check" || commandName === "list" || commandName === "ordered-list") { + listToggle(vditor, range, commandName, false); + (0,selection/* setRangeByWbr */.ib)(vditor.wysiwyg.element, range); + useHighlight = false; + removeCurrentToolbar(vditor.toolbar.elements, ["check", "list", "ordered-list"]); + actionBtn.classList.add("vditor-menu--current"); + } + else if (commandName === "inline-code") { + if (range.toString() === "") { + var node = document.createElement("code"); + node.textContent = constants/* Constants.ZWSP */.g.ZWSP; + range.insertNode(node); + range.setStart(node.firstChild, 1); + range.collapse(true); + (0,selection/* setSelectionFocus */.Hc)(range); + } + else if (range.startContainer.nodeType === 3) { + var node = document.createElement("code"); + range.surroundContents(node); + range.insertNode(node); + (0,selection/* setSelectionFocus */.Hc)(range); + } + actionBtn.classList.add("vditor-menu--current"); + } + else if (commandName === "code") { + var node = document.createElement("div"); + node.className = "vditor-wysiwyg__block"; + node.setAttribute("data-type", "code-block"); + node.setAttribute("data-block", "0"); + node.setAttribute("data-marker", "```"); + if (range.toString() === "") { + node.innerHTML = "<pre><code><wbr>\n</code></pre>"; + } + else { + node.innerHTML = "<pre><code>".concat(range.toString(), "<wbr></code></pre>"); + range.deleteContents(); + } + range.insertNode(node); + if (blockElement) { + blockElement.outerHTML = vditor.lute.SpinVditorDOM(blockElement.outerHTML); + } + (0,selection/* setRangeByWbr */.ib)(vditor.wysiwyg.element, range); + vditor.wysiwyg.element.querySelectorAll(".vditor-wysiwyg__preview[data-render='2']").forEach(function (item) { + processCodeRender(item, vditor); + }); + actionBtn.classList.add("vditor-menu--disabled"); + } + else if (commandName === "link") { + if (range.toString() === "") { + var aElement = document.createElement("a"); + aElement.innerText = constants/* Constants.ZWSP */.g.ZWSP; + range.insertNode(aElement); + range.setStart(aElement.firstChild, 1); + range.collapse(true); + genAPopover(vditor, aElement, range); + var textInputElement = vditor.wysiwyg.popover.querySelector("input"); + textInputElement.value = ""; + textInputElement.focus(); + useRender = false; + } + else { + var node = document.createElement("a"); + node.setAttribute("href", ""); + node.innerHTML = range.toString(); + range.surroundContents(node); + range.insertNode(node); + (0,selection/* setSelectionFocus */.Hc)(range); + genAPopover(vditor, node, range); + var textInputElements = vditor.wysiwyg.popover.querySelectorAll("input"); + textInputElements[0].value = node.innerText; + textInputElements[1].focus(); + } + useHighlight = false; + actionBtn.classList.add("vditor-menu--current"); + } + else if (commandName === "table") { + var tableHTML_1 = "<table data-block=\"0\"><thead><tr><th>col1<wbr></th><th>col2</th><th>col3</th></tr></thead><tbody><tr><td> </td><td> </td><td> </td></tr><tr><td> </td><td> </td><td> </td></tr></tbody></table>"; + if (range.toString().trim() === "") { + if (blockElement && blockElement.innerHTML.trim().replace(constants/* Constants.ZWSP */.g.ZWSP, "") === "") { + blockElement.outerHTML = tableHTML_1; + } + else { + document.execCommand("insertHTML", false, tableHTML_1); + } + range.selectNode(vditor.wysiwyg.element.querySelector("wbr").previousSibling); + vditor.wysiwyg.element.querySelector("wbr").remove(); + (0,selection/* setSelectionFocus */.Hc)(range); + } + else { + tableHTML_1 = "<table data-block=\"0\"><thead><tr>"; + var tableText = range.toString().split("\n"); + var delimiter_1 = tableText[0].split(",").length > tableText[0].split("\t").length ? "," : "\t"; + tableText.forEach(function (rows, index) { + if (index === 0) { + rows.split(delimiter_1).forEach(function (header, subIndex) { + if (subIndex === 0) { + tableHTML_1 += "<th>".concat(header, "<wbr></th>"); + } + else { + tableHTML_1 += "<th>".concat(header, "</th>"); + } + }); + tableHTML_1 += "</tr></thead>"; + } + else { + if (index === 1) { + tableHTML_1 += "<tbody><tr>"; + } + else { + tableHTML_1 += "<tr>"; + } + rows.split(delimiter_1).forEach(function (cell) { + tableHTML_1 += "<td>".concat(cell, "</td>"); + }); + tableHTML_1 += "</tr>"; + } + }); + tableHTML_1 += "</tbody></table>"; + document.execCommand("insertHTML", false, tableHTML_1); + (0,selection/* setRangeByWbr */.ib)(vditor.wysiwyg.element, range); + } + useHighlight = false; + actionBtn.classList.add("vditor-menu--disabled"); + } + else if (commandName === "line") { + if (blockElement) { + var hrHTML = '<hr data-block="0"><p data-block="0"><wbr>\n</p>'; + if (blockElement.innerHTML.trim() === "") { + blockElement.outerHTML = hrHTML; + } + else { + blockElement.insertAdjacentHTML("afterend", hrHTML); + } + (0,selection/* setRangeByWbr */.ib)(vditor.wysiwyg.element, range); + } + } + else { + // bold, italic, strike + useHighlight = false; + actionBtn.classList.add("vditor-menu--current"); + if (commandName === "strike") { + commandName = "strikeThrough"; + } + if (range.toString() === "" && (commandName === "bold" || commandName === "italic" || commandName === "strikeThrough")) { + var tagName = "strong"; + if (commandName === "italic") { + tagName = "em"; + } + else if (commandName === "strikeThrough") { + tagName = "s"; + } + var node = document.createElement(tagName); + node.textContent = constants/* Constants.ZWSP */.g.ZWSP; + range.insertNode(node); + if (node.previousSibling && node.previousSibling.textContent === constants/* Constants.ZWSP */.g.ZWSP) { + // 移除多层嵌套中的 zwsp + node.previousSibling.textContent = ""; + } + range.setStart(node.firstChild, 1); + range.collapse(true); + (0,selection/* setSelectionFocus */.Hc)(range); + } + else { + document.execCommand(commandName, false, ""); + } + } + } + if (useHighlight) { + highlightToolbarWYSIWYG(vditor); + } + if (useRender) { + afterRenderEvent(vditor); + } +}; + +;// CONCATENATED MODULE: ./src/ts/toolbar/MenuItem.ts + + + + + + +var MenuItem = /** @class */ (function () { + function MenuItem(vditor, menuItem) { + var _a; + var _this = this; + this.element = document.createElement("div"); + if (menuItem.className) { + (_a = this.element.classList).add.apply(_a, menuItem.className.split(" ")); + } + var hotkey = menuItem.hotkey ? " <".concat((0,compatibility/* updateHotkeyTip */.ns)(menuItem.hotkey), ">") : ""; + if (menuItem.level === 2) { + hotkey = menuItem.hotkey ? " <".concat((0,compatibility/* updateHotkeyTip */.ns)(menuItem.hotkey), ">") : ""; + } + var tip = menuItem.tip ? menuItem.tip + hotkey : "".concat(window.VditorI18n[menuItem.name]).concat(hotkey); + var tagName = menuItem.name === "upload" ? "div" : "button"; + if (menuItem.level === 2) { + this.element.innerHTML = "<".concat(tagName, " data-type=\"").concat(menuItem.name, "\">").concat(tip, "</").concat(tagName, ">"); + } + else { + this.element.classList.add("vditor-toolbar__item"); + var iconElement = document.createElement(tagName); + iconElement.setAttribute("data-type", menuItem.name); + iconElement.className = "vditor-tooltipped vditor-tooltipped__".concat(menuItem.tipPosition); + iconElement.setAttribute("aria-label", tip); + iconElement.innerHTML = menuItem.icon; + this.element.appendChild(iconElement); + } + if (!menuItem.prefix) { + return; + } + this.element.children[0].addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + event.preventDefault(); + if (_this.element.firstElementChild.classList.contains(constants/* Constants.CLASS_MENU_DISABLED */.g.CLASS_MENU_DISABLED)) { + return; + } + if (vditor.currentMode === "wysiwyg") { + toolbarEvent(vditor, _this.element.children[0], event); + } + else if (vditor.currentMode === "ir") { + process_processToolbar(vditor, _this.element.children[0], menuItem.prefix || "", menuItem.suffix || ""); + } + else { + processToolbar(vditor, _this.element.children[0], menuItem.prefix || "", menuItem.suffix || ""); + } + }); + } + return MenuItem; +}()); + + +;// CONCATENATED MODULE: ./src/ts/toolbar/EditMode.ts +var __extends = (undefined && undefined.__extends) || (function () { + var extendStatics = function (d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + return function (d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; +})(); + + + + + + + + + + + + + + +var setEditMode = function (vditor, type, event) { + var markdownText; + if (typeof event !== "string") { + hidePanel(vditor, ["subToolbar", "hint"]); + event.preventDefault(); + markdownText = getMarkdown(vditor); + } + else { + markdownText = event; + } + if (vditor.currentMode === type && typeof event !== "string") { + return; + } + if (vditor.devtools) { + vditor.devtools.renderEchart(vditor); + } + if (vditor.options.preview.mode === "both" && type === "sv") { + vditor.preview.element.style.display = "block"; + } + else { + vditor.preview.element.style.display = "none"; + } + enableToolbar(vditor.toolbar.elements, constants/* Constants.EDIT_TOOLBARS */.g.EDIT_TOOLBARS); + removeCurrentToolbar(vditor.toolbar.elements, constants/* Constants.EDIT_TOOLBARS */.g.EDIT_TOOLBARS); + disableToolbar(vditor.toolbar.elements, ["outdent", "indent"]); + if (type === "ir") { + hideToolbar(vditor.toolbar.elements, ["both"]); + showToolbar(vditor.toolbar.elements, ["outdent", "indent", "outline", "insert-before", "insert-after"]); + vditor.sv.element.style.display = "none"; + vditor.wysiwyg.element.parentElement.style.display = "none"; + vditor.ir.element.parentElement.style.display = "block"; + vditor.lute.SetVditorIR(true); + vditor.lute.SetVditorWYSIWYG(false); + vditor.lute.SetVditorSV(false); + vditor.currentMode = "ir"; + vditor.ir.element.innerHTML = vditor.lute.Md2VditorIRDOM(markdownText); + process_processAfterRender(vditor, { + enableAddUndoStack: true, + enableHint: false, + enableInput: false, + }); + setPadding(vditor); + vditor.ir.element.querySelectorAll(".vditor-ir__preview[data-render='2']").forEach(function (item) { + processCodeRender(item, vditor); + }); + vditor.ir.element.querySelectorAll(".vditor-toc").forEach(function (item) { + (0,mathRender/* mathRender */.H)(item, { + cdn: vditor.options.cdn, + math: vditor.options.preview.math, + }); + }); + } + else if (type === "wysiwyg") { + hideToolbar(vditor.toolbar.elements, ["both"]); + showToolbar(vditor.toolbar.elements, ["outdent", "indent", "outline", "insert-before", "insert-after"]); + vditor.sv.element.style.display = "none"; + vditor.wysiwyg.element.parentElement.style.display = "block"; + vditor.ir.element.parentElement.style.display = "none"; + vditor.lute.SetVditorIR(false); + vditor.lute.SetVditorWYSIWYG(true); + vditor.lute.SetVditorSV(false); + vditor.currentMode = "wysiwyg"; + setPadding(vditor); + renderDomByMd(vditor, markdownText, { + enableAddUndoStack: true, + enableHint: false, + enableInput: false, + }); + vditor.wysiwyg.element.querySelectorAll(".vditor-toc").forEach(function (item) { + (0,mathRender/* mathRender */.H)(item, { + cdn: vditor.options.cdn, + math: vditor.options.preview.math, + }); + }); + vditor.wysiwyg.popover.style.display = "none"; + } + else if (type === "sv") { + showToolbar(vditor.toolbar.elements, ["both"]); + hideToolbar(vditor.toolbar.elements, ["outdent", "indent", "outline", "insert-before", "insert-after"]); + vditor.wysiwyg.element.parentElement.style.display = "none"; + vditor.ir.element.parentElement.style.display = "none"; + if (vditor.options.preview.mode === "both") { + vditor.sv.element.style.display = "block"; + } + else if (vditor.options.preview.mode === "editor") { + vditor.sv.element.style.display = "block"; + } + vditor.lute.SetVditorIR(false); + vditor.lute.SetVditorWYSIWYG(false); + vditor.lute.SetVditorSV(true); + vditor.currentMode = "sv"; + var svHTML = processSpinVditorSVDOM(markdownText, vditor); + if (svHTML === "<div data-block='0'></div>") { + // https://github.com/Vanessa219/vditor/issues/654 SV 模式 Placeholder 显示问题 + svHTML = ""; + } + vditor.sv.element.innerHTML = svHTML; + combineFootnote(vditor.sv.element); + processAfterRender(vditor, { + enableAddUndoStack: true, + enableHint: false, + enableInput: false, + }); + setPadding(vditor); + } + vditor.undo.resetIcon(vditor); + if (typeof event !== "string") { + // 初始化不 focus + vditor[vditor.currentMode].element.focus(); + highlightToolbar(vditor); + } + renderToc(vditor); + setTypewriterPosition(vditor); + if (vditor.toolbar.elements["edit-mode"]) { + vditor.toolbar.elements["edit-mode"].querySelectorAll("button").forEach(function (item) { + item.classList.remove("vditor-menu--current"); + }); + vditor.toolbar.elements["edit-mode"].querySelector("button[data-mode=\"".concat(vditor.currentMode, "\"]")).classList.add("vditor-menu--current"); + } + vditor.outline.toggle(vditor, vditor.currentMode !== "sv" && vditor.options.outline.enable, typeof event !== "string"); +}; +var EditMode = /** @class */ (function (_super) { + __extends(EditMode, _super); + function EditMode(vditor, menuItem) { + var _this = _super.call(this, vditor, menuItem) || this; + var panelElement = document.createElement("div"); + panelElement.className = "vditor-hint".concat(menuItem.level === 2 ? "" : " vditor-panel--arrow"); + panelElement.innerHTML = "<button data-mode=\"wysiwyg\">".concat(window.VditorI18n.wysiwyg, " <").concat((0,compatibility/* updateHotkeyTip */.ns)("⌥⌘7"), "></button>\n<button data-mode=\"ir\">").concat(window.VditorI18n.instantRendering, " <").concat((0,compatibility/* updateHotkeyTip */.ns)("⌥⌘8"), "></button>\n<button data-mode=\"sv\">").concat(window.VditorI18n.splitView, " <").concat((0,compatibility/* updateHotkeyTip */.ns)("⌥⌘9"), "></button>"); + _this.element.appendChild(panelElement); + _this._bindEvent(vditor, panelElement, menuItem); + return _this; + } + EditMode.prototype._bindEvent = function (vditor, panelElement, menuItem) { + var actionBtn = this.element.children[0]; + toggleSubMenu(vditor, panelElement, actionBtn, menuItem.level); + panelElement.children.item(0).addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + // wysiwyg + setEditMode(vditor, "wysiwyg", event); + event.preventDefault(); + event.stopPropagation(); + }); + panelElement.children.item(1).addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + // ir + setEditMode(vditor, "ir", event); + event.preventDefault(); + event.stopPropagation(); + }); + panelElement.children.item(2).addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + // markdown + setEditMode(vditor, "sv", event); + event.preventDefault(); + event.stopPropagation(); + }); + }; + return EditMode; +}(MenuItem)); + + +;// CONCATENATED MODULE: ./src/ts/util/getSelectText.ts + +var getSelectText = function (editor, range) { + if ((0,selection/* selectIsEditor */.Gb)(editor, range)) { + return getSelection().toString(); + } + return ""; +}; + +;// CONCATENATED MODULE: ./src/ts/util/editorCommonEvent.ts + + + + + + + + + + + + + + + + + + +var focusEvent = function (vditor, editorElement) { + editorElement.addEventListener("focus", function () { + if (vditor.options.focus) { + vditor.options.focus(getMarkdown(vditor)); + } + hidePanel(vditor, ["subToolbar", "hint"]); + }); +}; +var dblclickEvent = function (vditor, editorElement) { + editorElement.addEventListener("dblclick", function (event) { + if (event.target.tagName === "IMG") { + if (vditor.options.image.preview) { + vditor.options.image.preview(event.target); + } + else if (vditor.options.image.isPreview) { + (0,preview_image/* previewImage */.E)(event.target, vditor.options.lang, vditor.options.theme); + } + } + }); +}; +var blurEvent = function (vditor, editorElement) { + editorElement.addEventListener("blur", function (event) { + if (vditor.currentMode === "ir") { + var expandElement = vditor.ir.element.querySelector(".vditor-ir__node--expand"); + if (expandElement) { + expandElement.classList.remove("vditor-ir__node--expand"); + } + } + else if (vditor.currentMode === "wysiwyg" && + !vditor.wysiwyg.selectPopover.contains(event.relatedTarget)) { + vditor.wysiwyg.hideComment(); + } + vditor[vditor.currentMode].range = (0,selection/* getEditorRange */.zh)(vditor); + if (vditor.options.blur) { + vditor.options.blur(getMarkdown(vditor)); + } + }); +}; +var dropEvent = function (vditor, editorElement) { + editorElement.addEventListener("dragstart", function (event) { + // 选中编辑器中的文字进行拖拽 + event.dataTransfer.setData(constants/* Constants.DROP_EDITOR */.g.DROP_EDITOR, constants/* Constants.DROP_EDITOR */.g.DROP_EDITOR); + }); + editorElement.addEventListener("drop", function (event) { + if (event.dataTransfer.getData(constants/* Constants.DROP_EDITOR */.g.DROP_EDITOR)) { + // 编辑器内选中文字拖拽 + execAfterRender(vditor); + } + else if (event.dataTransfer.types.includes("Files") || event.dataTransfer.types.includes("text/html")) { + // 外部文件拖入编辑器中或者编辑器内选中文字拖拽 + paste(vditor, event, { + pasteCode: function (code) { + document.execCommand("insertHTML", false, code); + }, + }); + } + }); +}; +var copyEvent = function (vditor, editorElement, copy) { + editorElement.addEventListener("copy", function (event) { return copy(event, vditor); }); +}; +var cutEvent = function (vditor, editorElement, copy) { + editorElement.addEventListener("cut", function (event) { + copy(event, vditor); + // 获取 comment + if (vditor.options.comment.enable && vditor.currentMode === "wysiwyg") { + vditor.wysiwyg.getComments(vditor); + } + document.execCommand("delete"); + }); +}; +var scrollCenter = function (vditor) { + if (vditor.currentMode === "wysiwyg" && vditor.options.comment.enable) { + vditor.options.comment.adjustTop(vditor.wysiwyg.getComments(vditor, true)); + } + if (!vditor.options.typewriterMode) { + return; + } + var editorElement = vditor[vditor.currentMode].element; + var cursorTop = (0,selection/* getCursorPosition */.Ny)(editorElement).top; + if (vditor.options.height === "auto" && !vditor.element.classList.contains("vditor--fullscreen")) { + window.scrollTo(window.scrollX, cursorTop + vditor.element.offsetTop + vditor.toolbar.element.offsetHeight - window.innerHeight / 2 + 10); + } + if (vditor.options.height !== "auto" || vditor.element.classList.contains("vditor--fullscreen")) { + editorElement.scrollTop = cursorTop + editorElement.scrollTop - editorElement.clientHeight / 2 + 10; + } +}; +var hotkeyEvent = function (vditor, editorElement) { + editorElement.addEventListener("keydown", function (event) { + if (!event.isComposing && vditor.options.keydown) { + vditor.options.keydown(event); + } + // hint: 上下选择 + if ((vditor.options.hint.extend.length > 1 || vditor.toolbar.elements.emoji) && + vditor.hint.select(event, vditor)) { + return; + } + // 重置 comment + if (vditor.options.comment.enable && vditor.currentMode === "wysiwyg" && + (event.key === "Backspace" || matchHotKey("⌘X", event))) { + vditor.wysiwyg.getComments(vditor); + } + if (vditor.currentMode === "sv") { + if (processKeydown_processKeydown(vditor, event)) { + return; + } + } + else if (vditor.currentMode === "wysiwyg") { + if (wysiwyg_processKeydown_processKeydown(vditor, event)) { + return; + } + } + else if (vditor.currentMode === "ir") { + if (processKeydown(vditor, event)) { + return; + } + } + if (vditor.options.ctrlEnter && matchHotKey("⌘Enter", event)) { + vditor.options.ctrlEnter(getMarkdown(vditor)); + event.preventDefault(); + return; + } + // undo + if (matchHotKey("⌘Z", event) && !vditor.toolbar.elements.undo) { + vditor.undo.undo(vditor); + event.preventDefault(); + return; + } + // redo + if (matchHotKey("⌘Y", event) && !vditor.toolbar.elements.redo) { + vditor.undo.redo(vditor); + event.preventDefault(); + return; + } + // esc + if (event.key === "Escape") { + if (vditor.hint.element.style.display === "block") { + vditor.hint.element.style.display = "none"; + } + else if (vditor.options.esc && !event.isComposing) { + vditor.options.esc(getMarkdown(vditor)); + } + event.preventDefault(); + return; + } + // h1 - h6 hotkey + if ((0,compatibility/* isCtrl */.yl)(event) && event.altKey && !event.shiftKey && /^Digit[1-6]$/.test(event.code)) { + if (vditor.currentMode === "wysiwyg") { + var tagName = event.code.replace("Digit", "H"); + if ((0,hasClosest/* hasClosestByMatchTag */.lG)(getSelection().getRangeAt(0).startContainer, tagName)) { + removeHeading(vditor); + } + else { + setHeading(vditor, tagName); + } + afterRenderEvent(vditor); + } + else if (vditor.currentMode === "sv") { + processHeading(vditor, "#".repeat(parseInt(event.code.replace("Digit", ""), 10)) + " "); + } + else if (vditor.currentMode === "ir") { + process_processHeading(vditor, "#".repeat(parseInt(event.code.replace("Digit", ""), 10)) + " "); + } + event.preventDefault(); + return true; + } + // toggle edit mode + if ((0,compatibility/* isCtrl */.yl)(event) && event.altKey && !event.shiftKey && /^Digit[7-9]$/.test(event.code)) { + if (event.code === "Digit7") { + setEditMode(vditor, "wysiwyg", event); + } + else if (event.code === "Digit8") { + setEditMode(vditor, "ir", event); + } + else if (event.code === "Digit9") { + setEditMode(vditor, "sv", event); + } + return true; + } + // toolbar action + vditor.options.toolbar.find(function (menuItem) { + if (!menuItem.hotkey || menuItem.toolbar) { + if (menuItem.toolbar) { + var sub = menuItem.toolbar.find(function (subMenuItem) { + if (!subMenuItem.hotkey) { + return false; + } + if (matchHotKey(subMenuItem.hotkey, event)) { + vditor.toolbar.elements[subMenuItem.name].children[0] + .dispatchEvent(new CustomEvent((0,compatibility/* getEventName */.Le)())); + event.preventDefault(); + return true; + } + }); + return sub ? true : false; + } + return false; + } + if (matchHotKey(menuItem.hotkey, event)) { + vditor.toolbar.elements[menuItem.name].children[0].dispatchEvent(new CustomEvent((0,compatibility/* getEventName */.Le)())); + event.preventDefault(); + return true; + } + }); + }); +}; +var selectEvent = function (vditor, editorElement) { + editorElement.addEventListener("selectstart", function (event) { + editorElement.onmouseup = function () { + setTimeout(function () { + var selectText = getSelectText(vditor[vditor.currentMode].element); + if (selectText.trim()) { + if (vditor.currentMode === "wysiwyg" && vditor.options.comment.enable) { + if (!(0,hasClosest/* hasClosestByAttribute */.a1)(event.target, "data-type", "footnotes-block") && + !(0,hasClosest/* hasClosestByAttribute */.a1)(event.target, "data-type", "link-ref-defs-block")) { + vditor.wysiwyg.showComment(); + } + else { + vditor.wysiwyg.hideComment(); + } + } + if (vditor.options.select) { + vditor.options.select(selectText); + } + } + else { + if (vditor.currentMode === "wysiwyg" && vditor.options.comment.enable) { + vditor.wysiwyg.hideComment(); + } + if (typeof vditor.options.unSelect === 'function') { + vditor.options.unSelect(); + } + } + }); + }; + }); +}; + +;// CONCATENATED MODULE: ./src/ts/sv/process.ts + + + + + + + + + +var processPaste = function (vditor, text) { + var range = (0,selection/* getEditorRange */.zh)(vditor); + range.extractContents(); + range.insertNode(document.createTextNode(Lute.Caret)); + range.insertNode(document.createTextNode(text)); + var blockElement = (0,hasClosest/* hasClosestByAttribute */.a1)(range.startContainer, "data-block", "0"); + if (!blockElement) { + blockElement = vditor.sv.element; + } + var spinHTML = vditor.lute.SpinVditorSVDOM(blockElement.textContent); + spinHTML = "<div data-block='0'>" + + spinHTML.replace(/<span data-type="newline"><br \/><span style="display: none">\n<\/span><\/span><span data-type="newline"><br \/><span style="display: none">\n<\/span><\/span></g, '<span data-type="newline"><br /><span style="display: none">\n</span></span><span data-type="newline"><br /><span style="display: none">\n</span></span></div><div data-block="0"><') + + "</div>"; + if (blockElement.isEqualNode(vditor.sv.element)) { + blockElement.innerHTML = spinHTML; + } + else { + blockElement.outerHTML = spinHTML; + } + combineFootnote(vditor.sv.element); + (0,selection/* setRangeByWbr */.ib)(vditor.sv.element, range); + scrollCenter(vditor); +}; +var getSideByType = function (spanNode, type, isPrevious) { + if (isPrevious === void 0) { isPrevious = true; } + var sideElement = spanNode; + if (sideElement.nodeType === 3) { + sideElement = sideElement.parentElement; + } + while (sideElement) { + if (sideElement.getAttribute("data-type") === type) { + return sideElement; + } + if (isPrevious) { + sideElement = sideElement.previousElementSibling; + } + else { + sideElement = sideElement.nextElementSibling; + } + } + return false; +}; +var processSpinVditorSVDOM = function (html, vditor) { + log("SpinVditorSVDOM", html, "argument", vditor.options.debugger); + var spinHTML = vditor.lute.SpinVditorSVDOM(html); + html = "<div data-block='0'>" + + spinHTML.replace(/<span data-type="newline"><br \/><span style="display: none">\n<\/span><\/span><span data-type="newline"><br \/><span style="display: none">\n<\/span><\/span></g, '<span data-type="newline"><br /><span style="display: none">\n</span></span><span data-type="newline"><br /><span style="display: none">\n</span></span></div><div data-block="0"><') + + "</div>"; + log("SpinVditorSVDOM", html, "result", vditor.options.debugger); + return html; +}; +var processPreviousMarkers = function (spanElement) { + var spanType = spanElement.getAttribute("data-type"); + var previousElement = spanElement.previousElementSibling; + // 有内容的子列表/标题,在其 marker 后换行 + var markerText = (spanType && spanType !== "text" && spanType !== "table" && spanType !== "heading-marker" && + spanType !== "newline" && spanType !== "yaml-front-matter-open-marker" && spanType !== "yaml-front-matter-close-marker" + && spanType !== "code-block-info" && spanType !== "code-block-close-marker" && spanType !== "code-block-open-marker") ? + spanElement.textContent : ""; + var hasNL = false; + if (spanType === "newline") { + hasNL = true; + } + while (previousElement && !hasNL) { + var previousType = previousElement.getAttribute("data-type"); + if (previousType === "li-marker" || previousType === "blockquote-marker" || previousType === "task-marker" || + previousType === "padding") { + var previousText = previousElement.textContent; + if (previousType === "li-marker" && + (spanType === "code-block-open-marker" || spanType === "code-block-info")) { + // https://github.com/Vanessa219/vditor/issues/586 + markerText = previousText.replace(/\S/g, " ") + markerText; + } + else if (spanType === "code-block-close-marker" && + previousElement.nextElementSibling.isSameNode(spanElement)) { + // https://github.com/Vanessa219/vditor/issues/594 + var openMarker = getSideByType(spanElement, "code-block-open-marker"); + if (openMarker && openMarker.previousElementSibling) { + previousElement = openMarker.previousElementSibling; + markerText = previousText + markerText; + } + } + else { + markerText = previousText + markerText; + } + } + else if (previousType === "newline") { + hasNL = true; + } + previousElement = previousElement.previousElementSibling; + } + return markerText; +}; +var processAfterRender = function (vditor, options) { + if (options === void 0) { options = { + enableAddUndoStack: true, + enableHint: false, + enableInput: true, + }; } + if (options.enableHint) { + vditor.hint.render(vditor); + } + vditor.preview.render(vditor); + var text = getMarkdown(vditor); + if (typeof vditor.options.input === "function" && options.enableInput) { + vditor.options.input(text); + } + if (vditor.options.counter.enable) { + vditor.counter.render(vditor, text); + } + if (vditor.options.cache.enable && (0,compatibility/* accessLocalStorage */.pK)()) { + localStorage.setItem(vditor.options.cache.id, text); + if (vditor.options.cache.after) { + vditor.options.cache.after(text); + } + } + if (vditor.devtools) { + vditor.devtools.renderEchart(vditor); + } + clearTimeout(vditor.sv.processTimeoutId); + vditor.sv.processTimeoutId = window.setTimeout(function () { + if (options.enableAddUndoStack && !vditor.sv.composingLock) { + vditor.undo.addToUndoStack(vditor); + } + }, vditor.options.undoDelay); +}; +var processHeading = function (vditor, value) { + var range = (0,selection/* getEditorRange */.zh)(vditor); + var headingElement = (0,hasClosestByHeadings/* hasClosestByTag */.S)(range.startContainer, "SPAN"); + if (headingElement && headingElement.textContent.trim() !== "") { + value = "\n" + value; + } + range.collapse(true); + document.execCommand("insertHTML", false, value); +}; +var processToolbar = function (vditor, actionBtn, prefix, suffix) { + var range = (0,selection/* getEditorRange */.zh)(vditor); + var commandName = actionBtn.getAttribute("data-type"); + // 添加 + if (vditor.sv.element.childNodes.length === 0) { + vditor.sv.element.innerHTML = "<span data-type=\"p\" data-block=\"0\"><span data-type=\"text\"><wbr></span></span><span data-type=\"newline\"><br><span style=\"display: none\">\n</span></span>"; + (0,selection/* setRangeByWbr */.ib)(vditor.sv.element, range); + } + var blockElement = (0,hasClosest/* hasClosestBlock */.F9)(range.startContainer); + var spanElement = (0,hasClosestByHeadings/* hasClosestByTag */.S)(range.startContainer, "SPAN"); + if (!blockElement) { + return; + } + if (commandName === "link") { + var html = void 0; + if (range.toString() === "") { + html = "".concat(prefix).concat(Lute.Caret).concat(suffix); + } + else { + html = "".concat(prefix).concat(range.toString()).concat(suffix.replace(")", Lute.Caret + ")")); + } + document.execCommand("insertHTML", false, html); + return; + } + else if (commandName === "italic" || commandName === "bold" || commandName === "strike" || + commandName === "inline-code" || commandName === "code" || commandName === "table" || commandName === "line") { + var html = void 0; + // https://github.com/Vanessa219/vditor/issues/563 代码块不需要后面的 ``` + if (range.toString() === "") { + html = "".concat(prefix).concat(Lute.Caret).concat(commandName === "code" ? "" : suffix); + } + else { + html = "".concat(prefix).concat(range.toString()).concat(Lute.Caret).concat(commandName === "code" ? "" : suffix); + } + if (commandName === "table" || (commandName === "code" && spanElement && spanElement.textContent !== "")) { + html = "\n\n" + html; + } + else if (commandName === "line") { + html = "\n\n".concat(prefix, "\n").concat(Lute.Caret); + } + document.execCommand("insertHTML", false, html); + return; + } + else if (commandName === "check" || commandName === "list" || commandName === "ordered-list" || + commandName === "quote") { + if (spanElement) { + var marker = "* "; + if (commandName === "check") { + marker = "* [ ] "; + } + else if (commandName === "ordered-list") { + marker = "1. "; + } + else if (commandName === "quote") { + marker = "> "; + } + var newLine = getSideByType(spanElement, "newline"); + if (newLine) { + newLine.insertAdjacentText("afterend", marker); + } + else { + blockElement.insertAdjacentText("afterbegin", marker); + } + inputEvent(vditor); + return; + } + } + (0,selection/* setRangeByWbr */.ib)(vditor.sv.element, range); + processAfterRender(vditor); +}; + +;// CONCATENATED MODULE: ./src/ts/upload/getElement.ts +var getElement = function (vditor) { + switch (vditor.currentMode) { + case "ir": + return vditor.ir.element; + case "wysiwyg": + return vditor.wysiwyg.element; + case "sv": + return vditor.sv.element; + } +}; + +;// CONCATENATED MODULE: ./src/ts/upload/setHeaders.ts +var setHeaders = function (vditor, xhr) { + if (vditor.options.upload.setHeaders) { + vditor.options.upload.headers = vditor.options.upload.setHeaders(); + } + if (vditor.options.upload.headers) { + Object.keys(vditor.options.upload.headers).forEach(function (key) { + xhr.setRequestHeader(key, vditor.options.upload.headers[key]); + }); + } +}; + +;// CONCATENATED MODULE: ./src/ts/upload/index.ts +var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +}; +var __generator = (undefined && undefined.__generator) || function (thisArg, body) { + var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; + function verb(n) { return function (v) { return step([n, v]); }; } + function step(op) { + if (f) throw new TypeError("Generator is already executing."); + while (g && (g = 0, op[0] && (_ = 0)), _) try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; + if (y = 0, t) op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: case 1: t = op; break; + case 4: _.label++; return { value: op[1], done: false }; + case 5: _.label++; y = op[1]; op = [0]; continue; + case 7: op = _.ops.pop(); _.trys.pop(); continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } + if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } + if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } + if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } + if (t[2]) _.ops.pop(); + _.trys.pop(); continue; + } + op = body.call(thisArg, _); + } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } + if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; + } +}; + + + +var Upload = /** @class */ (function () { + function Upload() { + this.isUploading = false; + this.element = document.createElement("div"); + this.element.className = "vditor-upload"; + } + return Upload; +}()); +var validateFile = function (vditor, files) { + vditor.tip.hide(); + var uploadFileList = []; + var errorTip = ""; + var uploadingStr = ""; + var lang = vditor.options.lang; + var options = vditor.options; + var _loop_1 = function (iMax, i) { + var file = files[i]; + var validate = true; + if (!file.name) { + errorTip += "<li>".concat(window.VditorI18n.nameEmpty, "</li>"); + validate = false; + } + if (file.size > vditor.options.upload.max) { + errorTip += "<li>".concat(file.name, " ").concat(window.VditorI18n.over, " ").concat(vditor.options.upload.max / 1024 / 1024, "M</li>"); + validate = false; + } + var lastIndex = file.name.lastIndexOf("."); + var fileExt = file.name.substr(lastIndex); + var filename = vditor.options.upload.filename(file.name.substr(0, lastIndex)) + fileExt; + if (vditor.options.upload.accept) { + var isAccept = vditor.options.upload.accept.split(",").some(function (item) { + var type = item.trim(); + if (type.indexOf(".") === 0) { + if (fileExt.toLowerCase() === type.toLowerCase()) { + return true; + } + } + else { + if (file.type.split("/")[0] === type.split("/")[0]) { + return true; + } + } + return false; + }); + if (!isAccept) { + errorTip += "<li>".concat(file.name, " ").concat(window.VditorI18n.fileTypeError, "</li>"); + validate = false; + } + } + if (validate) { + uploadFileList.push(file); + uploadingStr += "<li>".concat(filename, " ").concat(window.VditorI18n.uploading, " <a class=\"vditorCancelUpload\" href=\"javascript:void(0)\">").concat(window.VditorI18n.cancelUpload, "</a></li>"); + } + }; + for (var iMax = files.length, i = 0; i < iMax; i++) { + _loop_1(iMax, i); + } + vditor.tip.show("<ul>".concat(errorTip).concat(uploadingStr, "</ul>")); + if (vditor.options.upload.cancel) { + var vditorCancelUploadElement = vditor.tip.element.querySelector(".vditorCancelUpload"); + if (vditorCancelUploadElement) { + vditorCancelUploadElement.addEventListener("click", function () { + vditor.options.upload.cancel(uploadFileList); + vditor.tip.hide(); + vditor.upload.isUploading = false; + }); + } + } + return uploadFileList; +}; +var genUploadedLabel = function (responseText, vditor) { + var editorElement = getElement(vditor); + editorElement.focus(); + var response = JSON.parse(responseText); + var errorTip = ""; + if (response.code === 1) { + errorTip = "".concat(response.msg); + } + if (response.data.errFiles && response.data.errFiles.length > 0) { + errorTip = "<ul><li>".concat(errorTip, "</li>"); + response.data.errFiles.forEach(function (data) { + var lastIndex = data.lastIndexOf("."); + var filename = vditor.options.upload.filename(data.substr(0, lastIndex)) + data.substr(lastIndex); + errorTip += "<li>".concat(filename, " ").concat(window.VditorI18n.uploadError, "</li>"); + }); + errorTip += "</ul>"; + } + if (errorTip) { + vditor.tip.show(errorTip); + } + else { + vditor.tip.hide(); + } + var succFileText = ""; + Object.keys(response.data.succMap).forEach(function (key) { + var path = response.data.succMap[key]; + var lastIndex = key.lastIndexOf("."); + var type = key.substr(lastIndex); + var filename = vditor.options.upload.filename(key.substr(0, lastIndex)) + type; + type = type.toLowerCase(); + if (type.indexOf(".wav") === 0 || type.indexOf(".mp3") === 0 || type.indexOf(".ogg") === 0) { + if (vditor.currentMode === "wysiwyg") { + succFileText += "<div class=\"vditor-wysiwyg__block\" data-type=\"html-block\"\n data-block=\"0\"><pre><code><audio controls=\"controls\" src=\"".concat(path, "\"></audio></code></pre><pre class=\"vditor-wysiwyg__preview\" data-render=\"1\"><audio controls=\"controls\" src=\"").concat(path, "\"></audio></pre></div>\n"); + } + else if (vditor.currentMode === "ir") { + succFileText += "<audio controls=\"controls\" src=\"".concat(path, "\"></audio>\n"); + } + else { + succFileText += "[".concat(filename, "](").concat(path, ")\n"); + } + } + else if (type.indexOf(".apng") === 0 + || type.indexOf(".bmp") === 0 + || type.indexOf(".gif") === 0 + || type.indexOf(".ico") === 0 || type.indexOf(".cur") === 0 + || type.indexOf(".jpg") === 0 || type.indexOf(".jpeg") === 0 || type.indexOf(".jfif") === 0 || type.indexOf(".pjp") === 0 || type.indexOf(".pjpeg") === 0 + || type.indexOf(".png") === 0 + || type.indexOf(".svg") === 0 + || type.indexOf(".webp") === 0) { + if (vditor.currentMode === "wysiwyg") { + succFileText += "<img alt=\"".concat(filename, "\" src=\"").concat(path, "\">\n"); + } + else { + succFileText += "![".concat(filename, "](").concat(path, ")\n"); + } + } + else { + if (vditor.currentMode === "wysiwyg") { + succFileText += "<a href=\"".concat(path, "\">").concat(filename, "</a>\n"); + } + else { + succFileText += "[".concat(filename, "](").concat(path, ")\n"); + } + } + }); + (0,selection/* setSelectionFocus */.Hc)(vditor.upload.range); + document.execCommand("insertHTML", false, succFileText); + vditor.upload.range = getSelection().getRangeAt(0).cloneRange(); +}; +var uploadFiles = function (vditor, files, element) { return __awaiter(void 0, void 0, void 0, function () { + var fileList, filesMax, i, fileItem, isValidate, isValidate, editorElement, validateResult, formData, extraData, _i, _a, key, i, iMax, xhr; + return __generator(this, function (_b) { + switch (_b.label) { + case 0: + fileList = []; + filesMax = vditor.options.upload.multiple === true ? files.length : 1; + for (i = 0; i < filesMax; i++) { + fileItem = files[i]; + if (fileItem instanceof DataTransferItem) { + fileItem = fileItem.getAsFile(); + } + fileList.push(fileItem); + } + if (!vditor.options.upload.handler) return [3 /*break*/, 2]; + return [4 /*yield*/, vditor.options.upload.handler(fileList)]; + case 1: + isValidate = _b.sent(); + if (element) { + element.value = ""; + } + if (typeof isValidate === "string") { + vditor.tip.show(isValidate); + return [2 /*return*/]; + } + return [2 /*return*/]; + case 2: + if (!vditor.options.upload.url || !vditor.upload) { + if (element) { + element.value = ""; + } + vditor.tip.show("please config: options.upload.url"); + return [2 /*return*/]; + } + if (!vditor.options.upload.file) return [3 /*break*/, 4]; + return [4 /*yield*/, vditor.options.upload.file(fileList)]; + case 3: + fileList = _b.sent(); + _b.label = 4; + case 4: + if (vditor.options.upload.validate) { + isValidate = vditor.options.upload.validate(fileList); + if (typeof isValidate === "string") { + vditor.tip.show(isValidate); + return [2 /*return*/]; + } + } + editorElement = getElement(vditor); + vditor.upload.range = (0,selection/* getEditorRange */.zh)(vditor); + validateResult = validateFile(vditor, fileList); + if (validateResult.length === 0) { + if (element) { + element.value = ""; + } + return [2 /*return*/]; + } + formData = new FormData(); + extraData = vditor.options.upload.extraData; + for (_i = 0, _a = Object.keys(extraData); _i < _a.length; _i++) { + key = _a[_i]; + formData.append(key, extraData[key]); + } + for (i = 0, iMax = validateResult.length; i < iMax; i++) { + formData.append(vditor.options.upload.fieldName, validateResult[i]); + } + xhr = new XMLHttpRequest(); + vditor.upload.xhr = xhr; + xhr.open("POST", vditor.options.upload.url); + if (vditor.options.upload.token) { + xhr.setRequestHeader("X-Upload-Token", vditor.options.upload.token); + } + if (vditor.options.upload.withCredentials) { + xhr.withCredentials = true; + } + setHeaders(vditor, xhr); + vditor.upload.isUploading = true; + editorElement.setAttribute("contenteditable", "false"); + xhr.onreadystatechange = function () { + if (xhr.readyState === XMLHttpRequest.DONE) { + vditor.upload.isUploading = false; + editorElement.setAttribute("contenteditable", "true"); + if (xhr.status >= 200 && xhr.status < 300) { + if (vditor.options.upload.success) { + vditor.options.upload.success(editorElement, xhr.responseText); + } + else { + var responseText = xhr.responseText; + if (vditor.options.upload.format) { + responseText = vditor.options.upload.format(files, xhr.responseText); + } + genUploadedLabel(responseText, vditor); + } + } + else { + if (vditor.options.upload.error) { + vditor.options.upload.error(xhr.responseText); + } + else { + vditor.tip.show(xhr.responseText); + } + } + if (element) { + element.value = ""; + } + vditor.upload.element.style.display = "none"; + vditor.upload.xhr = undefined; + } + }; + xhr.upload.onprogress = function (event) { + if (!event.lengthComputable) { + return; + } + var progress = event.loaded / event.total * 100; + vditor.upload.element.style.display = "block"; + var progressBar = vditor.upload.element; + progressBar.style.width = progress + "%"; + }; + xhr.send(formData); + return [2 /*return*/]; + } + }); +}); }; + + +;// CONCATENATED MODULE: ./src/ts/wysiwyg/input.ts + + + + + + + + +var input_input = function (vditor, range, event) { + var _a; + var blockElement = (0,hasClosest/* hasClosestBlock */.F9)(range.startContainer); + if (!blockElement) { + // 使用顶级块元素,应使用 innerHTML + blockElement = vditor.wysiwyg.element; + } + if (event && event.inputType !== "formatItalic" + && event.inputType !== "deleteByDrag" + && event.inputType !== "insertFromDrop" + && event.inputType !== "formatBold" + && event.inputType !== "formatRemove" + && event.inputType !== "formatStrikeThrough" + && event.inputType !== "insertUnorderedList" + && event.inputType !== "insertOrderedList" + && event.inputType !== "formatOutdent" + && event.inputType !== "formatIndent" + && event.inputType !== "" // document.execCommand('unlink', false) + || !event) { + var previousAEmptyElement = previoueIsEmptyA(range.startContainer); + if (previousAEmptyElement) { + // 链接结尾回车不应该复制到下一行 https://github.com/Vanessa219/vditor/issues/163 + previousAEmptyElement.remove(); + } + // 保存光标 + vditor.wysiwyg.element.querySelectorAll("wbr").forEach(function (wbr) { + wbr.remove(); + }); + range.insertNode(document.createElement("wbr")); + // 在行首进行删除,后面的元素会带有样式,需清除 + blockElement.querySelectorAll("[style]").forEach(function (item) { + item.removeAttribute("style"); + }); + // 移除空评论 + blockElement.querySelectorAll(".vditor-comment").forEach(function (item) { + if (item.textContent.trim() === "") { + item.classList.remove("vditor-comment", "vditor-comment--focus"); + item.removeAttribute("data-cmtids"); + } + }); + // 在有评论的行首换行后,该行的前一段会带有评论标识 + (_a = blockElement.previousElementSibling) === null || _a === void 0 ? void 0 : _a.querySelectorAll(".vditor-comment").forEach(function (item) { + if (item.textContent.trim() === "") { + item.classList.remove("vditor-comment", "vditor-comment--focus"); + item.removeAttribute("data-cmtids"); + } + }); + var html_1 = ""; + if (blockElement.getAttribute("data-type") === "link-ref-defs-block") { + // 修改链接引用 + blockElement = vditor.wysiwyg.element; + } + var isWYSIWYGElement = blockElement.isEqualNode(vditor.wysiwyg.element); + var footnoteElement = (0,hasClosest/* hasClosestByAttribute */.a1)(blockElement, "data-type", "footnotes-block"); + if (!isWYSIWYGElement) { + // 列表需要到最顶层 + var topListElement = (0,hasClosest/* getTopList */.O9)(range.startContainer); + if (topListElement && !footnoteElement) { + var blockquoteElement = (0,hasClosestByHeadings/* hasClosestByTag */.S)(range.startContainer, "BLOCKQUOTE"); + if (blockquoteElement) { + // li 中有 blockquote 就只渲染 blockquote + blockElement = (0,hasClosest/* hasClosestBlock */.F9)(range.startContainer) || blockElement; + } + else { + blockElement = topListElement; + } + } + // 修改脚注 + if (footnoteElement) { + blockElement = footnoteElement; + } + html_1 = blockElement.outerHTML; + if (blockElement.tagName === "UL" || blockElement.tagName === "OL") { + // 如果为列表的话,需要把上下的列表都重绘 + var listPrevElement = blockElement.previousElementSibling; + var listNextElement = blockElement.nextElementSibling; + if (listPrevElement && (listPrevElement.tagName === "UL" || listPrevElement.tagName === "OL")) { + html_1 = listPrevElement.outerHTML + html_1; + listPrevElement.remove(); + } + if (listNextElement && (listNextElement.tagName === "UL" || listNextElement.tagName === "OL")) { + html_1 = html_1 + listNextElement.outerHTML; + listNextElement.remove(); + } + // firefox 列表回车不会产生新的 list item https://github.com/Vanessa219/vditor/issues/194 + html_1 = html_1.replace("<div><wbr><br></div>", "<li><p><wbr><br></p></li>"); + } + if (!blockElement.innerText.startsWith("```")) { + // 添加链接引用 + vditor.wysiwyg.element.querySelectorAll("[data-type='link-ref-defs-block']").forEach(function (item) { + if (item && !blockElement.isEqualNode(item)) { + html_1 += item.outerHTML; + item.remove(); + } + }); + // 添加脚注 + vditor.wysiwyg.element.querySelectorAll("[data-type='footnotes-block']").forEach(function (item) { + if (item && !blockElement.isEqualNode(item)) { + html_1 += item.outerHTML; + item.remove(); + } + }); + } + } + else { + html_1 = blockElement.innerHTML; + } + // 合并多个 em, strong,s。以防止多个相同元素在一起时不满足 commonmark 规范,出现标记符 + html_1 = html_1.replace(/<\/(strong|b)><strong data-marker="\W{2}">/g, "") + .replace(/<\/(em|i)><em data-marker="\W{1}">/g, "") + .replace(/<\/(s|strike)><s data-marker="~{1,2}">/g, ""); + if (html_1 === '<p data-block="0">```<wbr></p>' && vditor.hint.recentLanguage) { + html_1 = '<p data-block="0">```<wbr></p>'.replace("```", "```" + vditor.hint.recentLanguage); + } + log("SpinVditorDOM", html_1, "argument", vditor.options.debugger); + html_1 = vditor.lute.SpinVditorDOM(html_1); + log("SpinVditorDOM", html_1, "result", vditor.options.debugger); + if (isWYSIWYGElement) { + blockElement.innerHTML = html_1; + } + else { + blockElement.outerHTML = html_1; + if (footnoteElement) { + // 更新正文中的 tip + var footnoteItemElement = (0,hasClosest/* hasTopClosestByTag */.E2)(vditor.wysiwyg.element.querySelector("wbr"), "LI"); + if (footnoteItemElement) { + var footnoteRefElement = vditor.wysiwyg.element.querySelector("sup[data-type=\"footnotes-ref\"][data-footnotes-label=\"".concat(footnoteItemElement.getAttribute("data-marker"), "\"]")); + if (footnoteRefElement) { + footnoteRefElement.setAttribute("aria-label", footnoteItemElement.textContent.trim().substr(0, 24)); + } + } + } + } + var firstLinkRefDefElement_1; + var allLinkRefDefsElement = vditor.wysiwyg.element.querySelectorAll("[data-type='link-ref-defs-block']"); + allLinkRefDefsElement.forEach(function (item, index) { + if (index === 0) { + firstLinkRefDefElement_1 = item; + } + else { + firstLinkRefDefElement_1.insertAdjacentHTML("beforeend", item.innerHTML); + item.remove(); + } + }); + if (allLinkRefDefsElement.length > 0) { + vditor.wysiwyg.element.insertAdjacentElement("beforeend", allLinkRefDefsElement[0]); + } + // 脚注合并后添加的末尾 + var firstFootnoteElement_1; + var allFootnoteElement = vditor.wysiwyg.element.querySelectorAll("[data-type='footnotes-block']"); + allFootnoteElement.forEach(function (item, index) { + if (index === 0) { + firstFootnoteElement_1 = item; + } + else { + firstFootnoteElement_1.insertAdjacentHTML("beforeend", item.innerHTML); + item.remove(); + } + }); + if (allFootnoteElement.length > 0) { + vditor.wysiwyg.element.insertAdjacentElement("beforeend", allFootnoteElement[0]); + } + // 设置光标 + (0,selection/* setRangeByWbr */.ib)(vditor.wysiwyg.element, range); + vditor.wysiwyg.element.querySelectorAll(".vditor-wysiwyg__preview[data-render='2']") + .forEach(function (item) { + processCodeRender(item, vditor); + }); + if (event && (event.inputType === "deleteContentBackward" || event.inputType === "deleteContentForward") && + vditor.options.comment.enable) { + vditor.wysiwyg.triggerRemoveComment(vditor); + vditor.options.comment.adjustTop(vditor.wysiwyg.getComments(vditor, true)); + } + } + renderToc(vditor); + afterRenderEvent(vditor, { + enableAddUndoStack: true, + enableHint: true, + enableInput: true, + }); +}; + +;// CONCATENATED MODULE: ./src/ts/util/fixBrowserBehavior.ts +var __makeTemplateObject = (undefined && undefined.__makeTemplateObject) || function (cooked, raw) { + if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; } + return cooked; +}; +var fixBrowserBehavior_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +}; +var fixBrowserBehavior_generator = (undefined && undefined.__generator) || function (thisArg, body) { + var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; + function verb(n) { return function (v) { return step([n, v]); }; } + function step(op) { + if (f) throw new TypeError("Generator is already executing."); + while (g && (g = 0, op[0] && (_ = 0)), _) try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; + if (y = 0, t) op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: case 1: t = op; break; + case 4: _.label++; return { value: op[1], done: false }; + case 5: _.label++; y = op[1]; op = [0]; continue; + case 7: op = _.ops.pop(); _.trys.pop(); continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } + if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } + if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } + if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } + if (t[2]) _.ops.pop(); + _.trys.pop(); continue; + } + op = body.call(thisArg, _); + } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } + if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; + } +}; + + + + + + + + + + + + + + + + +// https://github.com/Vanessa219/vditor/issues/508 软键盘无法删除空块 +var fixGSKeyBackspace = function (event, vditor, startContainer) { + if (event.keyCode === 229 && event.code === "" && event.key === "Unidentified" && vditor.currentMode !== "sv") { + var blockElement = (0,hasClosest/* hasClosestBlock */.F9)(startContainer); + // 移动端的标点符号都显示为 299,因此需限定为空删除的条件 + if (blockElement && blockElement.textContent.trim() === "") { + vditor[vditor.currentMode].composingLock = true; + return false; + } + } + return true; +}; +// https://github.com/Vanessa219/vditor/issues/361 代码块后输入中文 +var fixCJKPosition = function (range, vditor, event) { + if (event.key === "Enter" || event.key === "Tab" || event.key === "Backspace" || event.key.indexOf("Arrow") > -1 + || (0,compatibility/* isCtrl */.yl)(event) || event.key === "Escape" || event.shiftKey || event.altKey) { + return; + } + var pLiElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(range.startContainer, "P") || + (0,hasClosest/* hasClosestByMatchTag */.lG)(range.startContainer, "LI"); + if (pLiElement && (0,selection/* getSelectPosition */.im)(pLiElement, vditor[vditor.currentMode].element, range).start === 0) { + // https://github.com/Vanessa219/vditor/issues/1289 WKWebView切换输入法产生六分之一空格,造成光标错位 + if (pLiElement.nodeValue) { + pLiElement.nodeValue = pLiElement.nodeValue.replace(/\u2006/g, ''); + } + var zwspNode = document.createTextNode(constants/* Constants.ZWSP */.g.ZWSP); + range.insertNode(zwspNode); + range.setStartAfter(zwspNode); + } +}; +// https://github.com/Vanessa219/vditor/issues/381 光标在内联数学公式中无法向下移动 +var fixCursorDownInlineMath = function (range, key) { + if (key === "ArrowDown" || key === "ArrowUp") { + var inlineElement = (0,hasClosest/* hasClosestByAttribute */.a1)(range.startContainer, "data-type", "math-inline") || + (0,hasClosest/* hasClosestByAttribute */.a1)(range.startContainer, "data-type", "html-entity") || + (0,hasClosest/* hasClosestByAttribute */.a1)(range.startContainer, "data-type", "html-inline"); + if (inlineElement) { + if (key === "ArrowDown") { + range.setStartAfter(inlineElement.parentElement); + } + if (key === "ArrowUp") { + range.setStartBefore(inlineElement.parentElement); + } + } + } +}; +var insertEmptyBlock = function (vditor, position) { + var range = (0,selection/* getEditorRange */.zh)(vditor); + var blockElement = (0,hasClosest/* hasClosestBlock */.F9)(range.startContainer); + if (blockElement) { + blockElement.insertAdjacentHTML(position, "<p data-block=\"0\">".concat(constants/* Constants.ZWSP */.g.ZWSP, "<wbr>\n</p>")); + (0,selection/* setRangeByWbr */.ib)(vditor[vditor.currentMode].element, range); + highlightToolbar(vditor); + execAfterRender(vditor); + } +}; +var isFirstCell = function (cellElement) { + var tableElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(cellElement, "TABLE"); + if (tableElement && tableElement.rows[0].cells[0].isSameNode(cellElement)) { + return tableElement; + } + return false; +}; +var isLastCell = function (cellElement) { + var tableElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(cellElement, "TABLE"); + if (tableElement && tableElement.lastElementChild.lastElementChild.lastElementChild.isSameNode(cellElement)) { + return tableElement; + } + return false; +}; +// 光标设置到前一个表格中 +var goPreviousCell = function (cellElement, range, isSelected) { + if (isSelected === void 0) { isSelected = true; } + var previousElement = cellElement.previousElementSibling; + if (!previousElement) { + if (cellElement.parentElement.previousElementSibling) { + previousElement = cellElement.parentElement.previousElementSibling.lastElementChild; + } + else if (cellElement.parentElement.parentElement.tagName === "TBODY" && + cellElement.parentElement.parentElement.previousElementSibling) { + previousElement = cellElement.parentElement + .parentElement.previousElementSibling.lastElementChild.lastElementChild; + } + else { + previousElement = null; + } + } + if (previousElement) { + range.selectNodeContents(previousElement); + if (!isSelected) { + range.collapse(false); + } + (0,selection/* setSelectionFocus */.Hc)(range); + } + return previousElement; +}; +var insertAfterBlock = function (vditor, event, range, element, blockElement) { + var position = (0,selection/* getSelectPosition */.im)(element, vditor[vditor.currentMode].element, range); + if ((event.key === "ArrowDown" && element.textContent.trimRight().substr(position.start).indexOf("\n") === -1) || + (event.key === "ArrowRight" && position.start >= element.textContent.trimRight().length)) { + var nextElement = blockElement.nextElementSibling; + if (!nextElement || + (nextElement && (nextElement.tagName === "TABLE" || nextElement.getAttribute("data-type")))) { + blockElement.insertAdjacentHTML("afterend", "<p data-block=\"0\">".concat(constants/* Constants.ZWSP */.g.ZWSP, "<wbr></p>")); + (0,selection/* setRangeByWbr */.ib)(vditor[vditor.currentMode].element, range); + } + else { + range.selectNodeContents(nextElement); + range.collapse(true); + (0,selection/* setSelectionFocus */.Hc)(range); + } + event.preventDefault(); + return true; + } + return false; +}; +var insertBeforeBlock = function (vditor, event, range, element, blockElement) { + var position = (0,selection/* getSelectPosition */.im)(element, vditor[vditor.currentMode].element, range); + if ((event.key === "ArrowUp" && element.textContent.substr(0, position.start).indexOf("\n") === -1) || + ((event.key === "ArrowLeft" || (event.key === "Backspace" && range.toString() === "")) && + position.start === 0)) { + var previousElement = blockElement.previousElementSibling; + // table || code + if (!previousElement || + (previousElement && (previousElement.tagName === "TABLE" || previousElement.getAttribute("data-type")))) { + blockElement.insertAdjacentHTML("beforebegin", "<p data-block=\"0\">".concat(constants/* Constants.ZWSP */.g.ZWSP, "<wbr></p>")); + (0,selection/* setRangeByWbr */.ib)(vditor[vditor.currentMode].element, range); + } + else { + range.selectNodeContents(previousElement); + range.collapse(false); + (0,selection/* setSelectionFocus */.Hc)(range); + } + event.preventDefault(); + return true; + } + return false; +}; +var listToggle = function (vditor, range, type, cancel) { + if (cancel === void 0) { cancel = true; } + var itemElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(range.startContainer, "LI"); + vditor[vditor.currentMode].element.querySelectorAll("wbr").forEach(function (wbr) { + wbr.remove(); + }); + range.insertNode(document.createElement("wbr")); + if (cancel && itemElement) { + // 取消 + var pHTML = ""; + for (var i = 0; i < itemElement.parentElement.childElementCount; i++) { + var inputElement = itemElement.parentElement.children[i].querySelector("input"); + if (inputElement) { + inputElement.remove(); + } + pHTML += "<p data-block=\"0\">".concat(itemElement.parentElement.children[i].innerHTML.trimLeft(), "</p>"); + } + itemElement.parentElement.insertAdjacentHTML("beforebegin", pHTML); + itemElement.parentElement.remove(); + } + else { + if (!itemElement) { + // 添加 + var blockElement = (0,hasClosest/* hasClosestByAttribute */.a1)(range.startContainer, "data-block", "0"); + if (!blockElement) { + vditor[vditor.currentMode].element.querySelector("wbr").remove(); + blockElement = vditor[vditor.currentMode].element.querySelector("p"); + blockElement.innerHTML = "<wbr>"; + } + if (type === "check") { + blockElement.insertAdjacentHTML("beforebegin", "<ul data-block=\"0\"><li class=\"vditor-task\"><input type=\"checkbox\" /> ".concat(blockElement.innerHTML, "</li></ul>")); + blockElement.remove(); + } + else if (type === "list") { + blockElement.insertAdjacentHTML("beforebegin", "<ul data-block=\"0\"><li>".concat(blockElement.innerHTML, "</li></ul>")); + blockElement.remove(); + } + else if (type === "ordered-list") { + blockElement.insertAdjacentHTML("beforebegin", "<ol data-block=\"0\"><li>".concat(blockElement.innerHTML, "</li></ol>")); + blockElement.remove(); + } + } + else { + // 切换 + if (type === "check") { + itemElement.parentElement.querySelectorAll("li").forEach(function (item) { + item.insertAdjacentHTML("afterbegin", "<input type=\"checkbox\" />".concat(item.textContent.indexOf(" ") === 0 ? "" : " ")); + item.classList.add("vditor-task"); + }); + } + else { + if (itemElement.querySelector("input")) { + itemElement.parentElement.querySelectorAll("li").forEach(function (item) { + item.querySelector("input").remove(); + item.classList.remove("vditor-task"); + }); + } + var element = void 0; + if (type === "list") { + element = document.createElement("ul"); + element.setAttribute("data-marker", "*"); + } + else { + element = document.createElement("ol"); + element.setAttribute("data-marker", "1."); + } + element.setAttribute("data-block", "0"); + element.setAttribute("data-tight", itemElement.parentElement.getAttribute("data-tight")); + element.innerHTML = itemElement.parentElement.innerHTML; + itemElement.parentElement.parentNode.replaceChild(element, itemElement.parentElement); + } + } + } +}; +var listIndent = function (vditor, liElement, range) { + var previousElement = liElement.previousElementSibling; + if (liElement && previousElement) { + var liElements_1 = [liElement]; + Array.from(range.cloneContents().children).forEach(function (item, index) { + if (item.nodeType !== 3 && liElement && item.textContent.trim() !== "" + && liElement.getAttribute("data-node-id") === item.getAttribute("data-node-id")) { + if (index !== 0) { + liElements_1.push(liElement); + } + liElement = liElement.nextElementSibling; + } + }); + vditor[vditor.currentMode].element.querySelectorAll("wbr").forEach(function (wbr) { + wbr.remove(); + }); + range.insertNode(document.createElement("wbr")); + var liParentElement = previousElement.parentElement; + var liHTML_1 = ""; + liElements_1.forEach(function (item) { + var marker = item.getAttribute("data-marker"); + if (marker.length !== 1) { + marker = "1".concat(marker.slice(-1)); + } + liHTML_1 += "<li data-node-id=\"".concat(item.getAttribute("data-node-id"), "\" data-marker=\"").concat(marker, "\">").concat(item.innerHTML, "</li>"); + item.remove(); + }); + previousElement.insertAdjacentHTML("beforeend", "<".concat(liParentElement.tagName, " data-block=\"0\">").concat(liHTML_1, "</").concat(liParentElement.tagName, ">")); + if (vditor.currentMode === "wysiwyg") { + liParentElement.outerHTML = vditor.lute.SpinVditorDOM(liParentElement.outerHTML); + } + else { + liParentElement.outerHTML = vditor.lute.SpinVditorIRDOM(liParentElement.outerHTML); + } + (0,selection/* setRangeByWbr */.ib)(vditor[vditor.currentMode].element, range); + var tempTopListElement = (0,hasClosest/* getTopList */.O9)(range.startContainer); + if (tempTopListElement) { + tempTopListElement.querySelectorAll(".vditor-".concat(vditor.currentMode, "__preview[data-render='2']")) + .forEach(function (item) { + processCodeRender(item, vditor); + if (vditor.currentMode === "wysiwyg") { + item.previousElementSibling.setAttribute("style", "display:none"); + } + }); + } + execAfterRender(vditor); + highlightToolbar(vditor); + } + else { + vditor[vditor.currentMode].element.focus(); + } +}; +var listOutdent = function (vditor, liElement, range, topListElement) { + var liParentLiElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(liElement.parentElement, "LI"); + if (liParentLiElement) { + vditor[vditor.currentMode].element.querySelectorAll("wbr").forEach(function (wbr) { + wbr.remove(); + }); + range.insertNode(document.createElement("wbr")); + var liParentElement = liElement.parentElement; + var liParentAfterElement = liParentElement.cloneNode(); + var liElements_2 = [liElement]; + Array.from(range.cloneContents().children).forEach(function (item, index) { + if (item.nodeType !== 3 && liElement && item.textContent.trim() !== "" && + liElement.getAttribute("data-node-id") === item.getAttribute("data-node-id")) { + if (index !== 0) { + liElements_2.push(liElement); + } + liElement = liElement.nextElementSibling; + } + }); + var isMatch_1 = false; + var afterHTML_1 = ""; + liParentElement.querySelectorAll("li").forEach(function (item) { + if (isMatch_1) { + afterHTML_1 += item.outerHTML; + if (!item.nextElementSibling && !item.previousElementSibling) { + item.parentElement.remove(); + } + else { + item.remove(); + } + } + if (item.isSameNode(liElements_2[liElements_2.length - 1])) { + isMatch_1 = true; + } + }); + liElements_2.reverse().forEach(function (item) { + liParentLiElement.insertAdjacentElement("afterend", item); + }); + if (afterHTML_1) { + liParentAfterElement.innerHTML = afterHTML_1; + liElements_2[0].insertAdjacentElement("beforeend", liParentAfterElement); + } + if (vditor.currentMode === "wysiwyg") { + topListElement.outerHTML = vditor.lute.SpinVditorDOM(topListElement.outerHTML); + } + else { + topListElement.outerHTML = vditor.lute.SpinVditorIRDOM(topListElement.outerHTML); + } + (0,selection/* setRangeByWbr */.ib)(vditor[vditor.currentMode].element, range); + var tempTopListElement = (0,hasClosest/* getTopList */.O9)(range.startContainer); + if (tempTopListElement) { + tempTopListElement.querySelectorAll(".vditor-".concat(vditor.currentMode, "__preview[data-render='2']")) + .forEach(function (item) { + processCodeRender(item, vditor); + if (vditor.currentMode === "wysiwyg") { + item.previousElementSibling.setAttribute("style", "display:none"); + } + }); + } + execAfterRender(vditor); + highlightToolbar(vditor); + } + else { + vditor[vditor.currentMode].element.focus(); + } +}; +var setTableAlign = function (tableElement, type) { + var cell = getSelection().getRangeAt(0).startContainer.parentElement; + var columnCnt = tableElement.rows[0].cells.length; + var rowCnt = tableElement.rows.length; + var currentColumn = 0; + for (var i = 0; i < rowCnt; i++) { + for (var j = 0; j < columnCnt; j++) { + if (tableElement.rows[i].cells[j].isSameNode(cell)) { + currentColumn = j; + break; + } + } + } + for (var k = 0; k < rowCnt; k++) { + tableElement.rows[k].cells[currentColumn].setAttribute("align", type); + } +}; +var isHrMD = function (text) { + // - _ * + var marker = text.trimRight().split("\n").pop(); + if (marker === "") { + return false; + } + if (marker.replace(/ |-/g, "") === "" + || marker.replace(/ |_/g, "") === "" + || marker.replace(/ |\*/g, "") === "") { + if (marker.replace(/ /g, "").length > 2) { + if (marker.indexOf("-") > -1 && marker.trimLeft().indexOf(" ") === -1 + && text.trimRight().split("\n").length > 1) { + // 满足 heading + return false; + } + if (marker.indexOf(" ") === 0 || marker.indexOf("\t") === 0) { + // 代码块 + return false; + } + return true; + } + return false; + } + return false; +}; +var isHeadingMD = function (text) { + // - = + var textArray = text.trimRight().split("\n"); + text = textArray.pop(); + if (text.indexOf(" ") === 0 || text.indexOf("\t") === 0) { + return false; + } + text = text.trimLeft(); + if (text === "" || textArray.length === 0) { + return false; + } + if (text.replace(/-/g, "") === "" + || text.replace(/=/g, "") === "") { + return true; + } + return false; +}; +var execAfterRender = function (vditor, options) { + if (options === void 0) { options = { + enableAddUndoStack: true, + enableHint: false, + enableInput: true, + }; } + if (vditor.currentMode === "wysiwyg") { + afterRenderEvent(vditor, options); + } + else if (vditor.currentMode === "ir") { + process_processAfterRender(vditor, options); + } + else if (vditor.currentMode === "sv") { + processAfterRender(vditor, options); + } +}; +var fixList = function (range, vditor, pElement, event) { + var _a; + var startContainer = range.startContainer; + var liElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(startContainer, "LI"); + if (liElement) { + if (!(0,compatibility/* isCtrl */.yl)(event) && !event.altKey && event.key === "Enter" && + // fix li 中有多个 P 时,在第一个 P 中换行会在下方生成新的 li + (!event.shiftKey && pElement && liElement.contains(pElement) && pElement.nextElementSibling)) { + if (liElement && !liElement.textContent.endsWith("\n")) { + // li 结尾需 \n + liElement.insertAdjacentText("beforeend", "\n"); + } + range.insertNode(document.createTextNode("\n\n")); + range.collapse(false); + execAfterRender(vditor); + event.preventDefault(); + return true; + } + if (!(0,compatibility/* isCtrl */.yl)(event) && !event.shiftKey && !event.altKey && event.key === "Backspace" && + !liElement.previousElementSibling && range.toString() === "" && + (0,selection/* getSelectPosition */.im)(liElement, vditor[vditor.currentMode].element, range).start === 0) { + // 光标位于点和第一个字符中间时,无法删除 li 元素 + if (liElement.nextElementSibling) { + liElement.parentElement.insertAdjacentHTML("beforebegin", "<p data-block=\"0\"><wbr>".concat(liElement.innerHTML, "</p>")); + liElement.remove(); + } + else { + liElement.parentElement.outerHTML = "<p data-block=\"0\"><wbr>".concat(liElement.innerHTML, "</p>"); + } + (0,selection/* setRangeByWbr */.ib)(vditor[vditor.currentMode].element, range); + execAfterRender(vditor); + event.preventDefault(); + return true; + } + // 空列表删除后与上一级段落对齐 + if (!(0,compatibility/* isCtrl */.yl)(event) && !event.shiftKey && !event.altKey && event.key === "Backspace" && + liElement.textContent.trim().replace(constants/* Constants.ZWSP */.g.ZWSP, "") === "" && + range.toString() === "" && ((_a = liElement.previousElementSibling) === null || _a === void 0 ? void 0 : _a.tagName) === "LI") { + liElement.previousElementSibling.insertAdjacentText("beforeend", "\n\n"); + range.selectNodeContents(liElement.previousElementSibling); + range.collapse(false); + liElement.remove(); + (0,selection/* setRangeByWbr */.ib)(vditor[vditor.currentMode].element, range); + execAfterRender(vditor); + event.preventDefault(); + return true; + } + if (!(0,compatibility/* isCtrl */.yl)(event) && !event.altKey && event.key === "Tab") { + // 光标位于第一/零字符时,tab 用于列表的缩进 + var isFirst = false; + if (range.startOffset === 0 + && ((startContainer.nodeType === 3 && !startContainer.previousSibling) + || (startContainer.nodeType !== 3 && startContainer.nodeName === "LI"))) { + // 有序/无序列表 + isFirst = true; + } + else if (liElement.classList.contains("vditor-task") && range.startOffset === 1 + && startContainer.previousSibling.nodeType !== 3 + && startContainer.previousSibling.tagName === "INPUT") { + // 任务列表 + isFirst = true; + } + if (isFirst || range.toString() !== "") { + if (event.shiftKey) { + listOutdent(vditor, liElement, range, liElement.parentElement); + } + else { + listIndent(vditor, liElement, range); + } + event.preventDefault(); + return true; + } + } + } + return false; +}; +// tab 处理: block code render, table, 列表第一个字符中的 tab 处理单独写在上面 +var fixTab = function (vditor, range, event) { + if (vditor.options.tab && event.key === "Tab") { + if (event.shiftKey) { + // TODO shift+tab + } + else { + if (range.toString() === "") { + range.insertNode(document.createTextNode(vditor.options.tab)); + range.collapse(false); + } + else { + range.extractContents(); + range.insertNode(document.createTextNode(vditor.options.tab)); + range.collapse(false); + } + } + (0,selection/* setSelectionFocus */.Hc)(range); + execAfterRender(vditor); + event.preventDefault(); + return true; + } +}; +var fixMarkdown = function (event, vditor, pElement, range) { + if (!pElement) { + return; + } + if (!(0,compatibility/* isCtrl */.yl)(event) && !event.altKey && event.key === "Enter") { + var pText = String.raw(templateObject_1 || (templateObject_1 = __makeTemplateObject(["", ""], ["", ""])), pElement.textContent).replace(/\\\|/g, "").trim(); + var pTextList = pText.split("|"); + if (pText.startsWith("|") && pText.endsWith("|") && pTextList.length > 3) { + // table 自动完成 + var tableHeaderMD = pTextList.map(function () { return "---"; }).join("|"); + tableHeaderMD = + pElement.textContent + "\n" + tableHeaderMD.substring(3, tableHeaderMD.length - 3) + "\n|<wbr>"; + pElement.outerHTML = vditor.lute.SpinVditorDOM(tableHeaderMD); + (0,selection/* setRangeByWbr */.ib)(vditor[vditor.currentMode].element, range); + execAfterRender(vditor); + scrollCenter(vditor); + event.preventDefault(); + return true; + } + // hr 渲染 + if (isHrMD(pElement.innerHTML) && pElement.previousElementSibling) { + // 软换行后 hr 前有内容 + var pInnerHTML = ""; + var innerHTMLList = pElement.innerHTML.trimRight().split("\n"); + if (innerHTMLList.length > 1) { + innerHTMLList.pop(); + pInnerHTML = "<p data-block=\"0\">".concat(innerHTMLList.join("\n"), "</p>"); + } + pElement.insertAdjacentHTML("afterend", "".concat(pInnerHTML, "<hr data-block=\"0\"><p data-block=\"0\"><wbr>\n</p>")); + pElement.remove(); + (0,selection/* setRangeByWbr */.ib)(vditor[vditor.currentMode].element, range); + execAfterRender(vditor); + scrollCenter(vditor); + event.preventDefault(); + return true; + } + if (isHeadingMD(pElement.innerHTML)) { + // heading 渲染 + if (vditor.currentMode === "wysiwyg") { + pElement.outerHTML = vditor.lute.SpinVditorDOM(pElement.innerHTML + '<p data-block="0"><wbr>\n</p>'); + } + else { + pElement.outerHTML = vditor.lute.SpinVditorIRDOM(pElement.innerHTML + '<p data-block="0"><wbr>\n</p>'); + } + (0,selection/* setRangeByWbr */.ib)(vditor[vditor.currentMode].element, range); + execAfterRender(vditor); + scrollCenter(vditor); + event.preventDefault(); + return true; + } + } + // 软换行会被切割 https://github.com/Vanessa219/vditor/issues/220 + if (range.collapsed && pElement.previousElementSibling && event.key === "Backspace" && + !(0,compatibility/* isCtrl */.yl)(event) && !event.altKey && !event.shiftKey && + pElement.textContent.trimRight().split("\n").length > 1 && + (0,selection/* getSelectPosition */.im)(pElement, vditor[vditor.currentMode].element, range).start === 0) { + var lastElement = (0,hasClosest/* getLastNode */.DX)(pElement.previousElementSibling); + if (!lastElement.textContent.endsWith("\n")) { + lastElement.textContent = lastElement.textContent + "\n"; + } + lastElement.parentElement.insertAdjacentHTML("beforeend", "<wbr>".concat(pElement.innerHTML)); + pElement.remove(); + (0,selection/* setRangeByWbr */.ib)(vditor[vditor.currentMode].element, range); + return false; + } + return false; +}; +var insertRow = function (vditor, range, cellElement) { + var rowHTML = ""; + for (var m = 0; m < cellElement.parentElement.childElementCount; m++) { + rowHTML += "<td align=\"".concat(cellElement.parentElement.children[m].getAttribute("align"), "\"> </td>"); + } + if (cellElement.tagName === "TH") { + cellElement.parentElement.parentElement.insertAdjacentHTML("afterend", "<tbody><tr>".concat(rowHTML, "</tr></tbody>")); + } + else { + cellElement.parentElement.insertAdjacentHTML("afterend", "<tr>".concat(rowHTML, "</tr>")); + } + execAfterRender(vditor); +}; +var insertRowAbove = function (vditor, range, cellElement) { + var rowHTML = ""; + for (var m = 0; m < cellElement.parentElement.childElementCount; m++) { + if (cellElement.tagName === "TH") { + rowHTML += "<th align=\"".concat(cellElement.parentElement.children[m].getAttribute("align"), "\"> </th>"); + } + else { + rowHTML += "<td align=\"".concat(cellElement.parentElement.children[m].getAttribute("align"), "\"> </td>"); + } + } + if (cellElement.tagName === "TH") { + cellElement.parentElement.parentElement.insertAdjacentHTML("beforebegin", "<thead><tr>".concat(rowHTML, "</tr></thead>")); + range.insertNode(document.createElement("wbr")); + var theadHTML = cellElement.parentElement.innerHTML.replace(/<th>/g, "<td>").replace(/<\/th>/g, "</td>"); + cellElement.parentElement.parentElement.nextElementSibling.insertAdjacentHTML("afterbegin", theadHTML); + cellElement.parentElement.parentElement.remove(); + (0,selection/* setRangeByWbr */.ib)(vditor.ir.element, range); + } + else { + cellElement.parentElement.insertAdjacentHTML("beforebegin", "<tr>".concat(rowHTML, "</tr>")); + } + execAfterRender(vditor); +}; +var insertColumn = function (vditor, tableElement, cellElement, type) { + if (type === void 0) { type = "afterend"; } + var index = 0; + var previousElement = cellElement.previousElementSibling; + while (previousElement) { + index++; + previousElement = previousElement.previousElementSibling; + } + for (var i = 0; i < tableElement.rows.length; i++) { + if (i === 0) { + tableElement.rows[i].cells[index].insertAdjacentHTML(type, "<th> </th>"); + } + else { + tableElement.rows[i].cells[index].insertAdjacentHTML(type, "<td> </td>"); + } + } + execAfterRender(vditor); +}; +var deleteRow = function (vditor, range, cellElement) { + if (cellElement.tagName === "TD") { + var tbodyElement = cellElement.parentElement.parentElement; + if (cellElement.parentElement.previousElementSibling) { + range.selectNodeContents(cellElement.parentElement.previousElementSibling.lastElementChild); + } + else { + range.selectNodeContents(tbodyElement.previousElementSibling.lastElementChild.lastElementChild); + } + if (tbodyElement.childElementCount === 1) { + tbodyElement.remove(); + } + else { + cellElement.parentElement.remove(); + } + range.collapse(false); + (0,selection/* setSelectionFocus */.Hc)(range); + execAfterRender(vditor); + } +}; +var deleteColumn = function (vditor, range, tableElement, cellElement) { + var index = 0; + var previousElement = cellElement.previousElementSibling; + while (previousElement) { + index++; + previousElement = previousElement.previousElementSibling; + } + if (cellElement.previousElementSibling || cellElement.nextElementSibling) { + range.selectNodeContents(cellElement.previousElementSibling || cellElement.nextElementSibling); + range.collapse(true); + } + for (var i = 0; i < tableElement.rows.length; i++) { + var cells = tableElement.rows[i].cells; + if (cells.length === 1) { + tableElement.remove(); + highlightToolbar(vditor); + break; + } + cells[index].remove(); + } + (0,selection/* setSelectionFocus */.Hc)(range); + execAfterRender(vditor); +}; +var fixTable = function (vditor, event, range) { + var startContainer = range.startContainer; + var cellElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(startContainer, "TD") || + (0,hasClosest/* hasClosestByMatchTag */.lG)(startContainer, "TH"); + if (cellElement) { + // 换行或软换行:在 cell 中添加 br + if (!(0,compatibility/* isCtrl */.yl)(event) && !event.altKey && event.key === "Enter") { + if (!cellElement.lastElementChild || + (cellElement.lastElementChild && (!cellElement.lastElementChild.isSameNode(cellElement.lastChild) || + cellElement.lastElementChild.tagName !== "BR"))) { + cellElement.insertAdjacentHTML("beforeend", "<br>"); + } + var brElement = document.createElement("br"); + range.insertNode(brElement); + range.setStartAfter(brElement); + execAfterRender(vditor); + scrollCenter(vditor); + event.preventDefault(); + return true; + } + // tab:光标移向下一个 cell + if (event.key === "Tab") { + if (event.shiftKey) { + // shift + tab 光标移动到前一个 cell + goPreviousCell(cellElement, range); + event.preventDefault(); + return true; + } + var nextElement = cellElement.nextElementSibling; + if (!nextElement) { + if (cellElement.parentElement.nextElementSibling) { + nextElement = cellElement.parentElement.nextElementSibling.firstElementChild; + } + else if (cellElement.parentElement.parentElement.tagName === "THEAD" && + cellElement.parentElement.parentElement.nextElementSibling) { + nextElement = + cellElement.parentElement.parentElement.nextElementSibling.firstElementChild.firstElementChild; + } + else { + nextElement = null; + } + } + if (nextElement) { + range.selectNodeContents(nextElement); + (0,selection/* setSelectionFocus */.Hc)(range); + } + event.preventDefault(); + return true; + } + var tableElement = cellElement.parentElement.parentElement.parentElement; + if (event.key === "ArrowUp") { + event.preventDefault(); + if (cellElement.tagName === "TH") { + if (tableElement.previousElementSibling) { + range.selectNodeContents(tableElement.previousElementSibling); + range.collapse(false); + (0,selection/* setSelectionFocus */.Hc)(range); + } + else { + insertEmptyBlock(vditor, "beforebegin"); + } + return true; + } + var m = 0; + var trElement = cellElement.parentElement; + for (; m < trElement.cells.length; m++) { + if (trElement.cells[m].isSameNode(cellElement)) { + break; + } + } + var previousElement = trElement.previousElementSibling; + if (!previousElement) { + previousElement = trElement.parentElement.previousElementSibling.firstChild; + } + range.selectNodeContents(previousElement.cells[m]); + range.collapse(false); + (0,selection/* setSelectionFocus */.Hc)(range); + return true; + } + if (event.key === "ArrowDown") { + event.preventDefault(); + var trElement = cellElement.parentElement; + if (!trElement.nextElementSibling && cellElement.tagName === "TD") { + if (tableElement.nextElementSibling) { + range.selectNodeContents(tableElement.nextElementSibling); + range.collapse(true); + (0,selection/* setSelectionFocus */.Hc)(range); + } + else { + insertEmptyBlock(vditor, "afterend"); + } + return true; + } + var m = 0; + for (; m < trElement.cells.length; m++) { + if (trElement.cells[m].isSameNode(cellElement)) { + break; + } + } + var nextElement = trElement.nextElementSibling; + if (!nextElement) { + nextElement = trElement.parentElement.nextElementSibling.firstChild; + } + range.selectNodeContents(nextElement.cells[m]); + range.collapse(true); + (0,selection/* setSelectionFocus */.Hc)(range); + return true; + } + // focus row input, only wysiwyg + if (vditor.currentMode === "wysiwyg" && + !(0,compatibility/* isCtrl */.yl)(event) && event.key === "Enter" && !event.shiftKey && event.altKey) { + var inputElement = vditor.wysiwyg.popover.querySelector(".vditor-input"); + inputElement.focus(); + inputElement.select(); + event.preventDefault(); + return true; + } + // Backspace:光标移动到前一个 cell + if (!(0,compatibility/* isCtrl */.yl)(event) && !event.shiftKey && !event.altKey && event.key === "Backspace" + && range.startOffset === 0 && range.toString() === "") { + var previousCellElement = goPreviousCell(cellElement, range, false); + if (!previousCellElement && tableElement) { + if (tableElement.textContent.trim() === "") { + tableElement.outerHTML = "<p data-block=\"0\"><wbr>\n</p>"; + (0,selection/* setRangeByWbr */.ib)(vditor[vditor.currentMode].element, range); + } + else { + range.setStartBefore(tableElement); + range.collapse(true); + } + execAfterRender(vditor); + } + event.preventDefault(); + return true; + } + // 上方新添加一行 + if (matchHotKey("⇧⌘F", event)) { + insertRowAbove(vditor, range, cellElement); + event.preventDefault(); + return true; + } + // 下方新添加一行 https://github.com/Vanessa219/vditor/issues/46 + if (matchHotKey("⌘=", event)) { + insertRow(vditor, range, cellElement); + event.preventDefault(); + return true; + } + // 左方新添加一列 + if (matchHotKey("⇧⌘G", event)) { + insertColumn(vditor, tableElement, cellElement, "beforebegin"); + event.preventDefault(); + return true; + } + // 后方新添加一列 + if (matchHotKey("⇧⌘=", event)) { + insertColumn(vditor, tableElement, cellElement); + event.preventDefault(); + return true; + } + // 删除当前行 + if (matchHotKey("⌘-", event)) { + deleteRow(vditor, range, cellElement); + event.preventDefault(); + return true; + } + // 删除当前列 + if (matchHotKey("⇧⌘-", event)) { + deleteColumn(vditor, range, tableElement, cellElement); + event.preventDefault(); + return true; + } + // 剧左 + if (matchHotKey("⇧⌘L", event)) { + if (vditor.currentMode === "ir") { + setTableAlign(tableElement, "left"); + execAfterRender(vditor); + event.preventDefault(); + return true; + } + else { + var itemElement = vditor.wysiwyg.popover.querySelector('[data-type="left"]'); + if (itemElement) { + itemElement.click(); + event.preventDefault(); + return true; + } + } + } + // 剧中 + if (matchHotKey("⇧⌘C", event)) { + if (vditor.currentMode === "ir") { + setTableAlign(tableElement, "center"); + execAfterRender(vditor); + event.preventDefault(); + return true; + } + else { + var itemElement = vditor.wysiwyg.popover.querySelector('[data-type="center"]'); + if (itemElement) { + itemElement.click(); + event.preventDefault(); + return true; + } + } + } + // 剧右 + if (matchHotKey("⇧⌘R", event)) { + if (vditor.currentMode === "ir") { + setTableAlign(tableElement, "right"); + execAfterRender(vditor); + event.preventDefault(); + return true; + } + else { + var itemElement = vditor.wysiwyg.popover.querySelector('[data-type="right"]'); + if (itemElement) { + itemElement.click(); + event.preventDefault(); + return true; + } + } + } + } + return false; +}; +var fixCodeBlock = function (vditor, event, codeRenderElement, range) { + // 行级代码块中 command + a,近对当前代码块进行全选 + if (codeRenderElement.tagName === "PRE" && matchHotKey("⌘A", event)) { + range.selectNodeContents(codeRenderElement.firstElementChild); + event.preventDefault(); + return true; + } + // tab + // TODO shift + tab, shift and 选中文字 + if (vditor.options.tab && event.key === "Tab" && !event.shiftKey && range.toString() === "") { + range.insertNode(document.createTextNode(vditor.options.tab)); + range.collapse(false); + execAfterRender(vditor); + event.preventDefault(); + return true; + } + // Backspace: 光标位于第零个字符,仅删除代码块标签 + if (event.key === "Backspace" && !(0,compatibility/* isCtrl */.yl)(event) && !event.shiftKey && !event.altKey) { + var codePosition = (0,selection/* getSelectPosition */.im)(codeRenderElement, vditor[vditor.currentMode].element, range); + if ((codePosition.start === 0 || + (codePosition.start === 1 && codeRenderElement.innerText === "\n")) // 空代码块,光标在 \n 后 + && range.toString() === "") { + codeRenderElement.parentElement.outerHTML = + "<p data-block=\"0\"><wbr>".concat(codeRenderElement.firstElementChild.innerHTML, "</p>"); + (0,selection/* setRangeByWbr */.ib)(vditor[vditor.currentMode].element, range); + execAfterRender(vditor); + event.preventDefault(); + return true; + } + } + // 换行 + if (!(0,compatibility/* isCtrl */.yl)(event) && !event.altKey && event.key === "Enter") { + if (!codeRenderElement.firstElementChild.textContent.endsWith("\n")) { + codeRenderElement.firstElementChild.insertAdjacentText("beforeend", "\n"); + } + range.extractContents(); + range.insertNode(document.createTextNode("\n")); + range.collapse(false); + (0,selection/* setSelectionFocus */.Hc)(range); + if (!(0,compatibility/* isFirefox */.vU)()) { + if (vditor.currentMode === "wysiwyg") { + input_input(vditor, range); + } + else { + input(vditor, range); + } + } + scrollCenter(vditor); + event.preventDefault(); + return true; + } + return false; +}; +var fixBlockquote = function (vditor, range, event, pElement) { + var startContainer = range.startContainer; + var blockquoteElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(startContainer, "BLOCKQUOTE"); + if (blockquoteElement && range.toString() === "") { + if (event.key === "Backspace" && !(0,compatibility/* isCtrl */.yl)(event) && !event.shiftKey && !event.altKey && + (0,selection/* getSelectPosition */.im)(blockquoteElement, vditor[vditor.currentMode].element, range).start === 0) { + // Backspace: 光标位于引用中的第零个字符,仅删除引用标签 + range.insertNode(document.createElement("wbr")); + blockquoteElement.outerHTML = blockquoteElement.innerHTML; + (0,selection/* setRangeByWbr */.ib)(vditor[vditor.currentMode].element, range); + execAfterRender(vditor); + event.preventDefault(); + return true; + } + if (pElement && event.key === "Enter" && !(0,compatibility/* isCtrl */.yl)(event) && !event.shiftKey && !event.altKey + && pElement.parentElement.tagName === "BLOCKQUOTE") { + // Enter: 空行回车应逐层跳出 + var isEmpty = false; + if (pElement.innerHTML.replace(constants/* Constants.ZWSP */.g.ZWSP, "") === "\n" || + pElement.innerHTML.replace(constants/* Constants.ZWSP */.g.ZWSP, "") === "") { + // 空 P + isEmpty = true; + pElement.remove(); + } + else if (pElement.innerHTML.endsWith("\n\n") && + (0,selection/* getSelectPosition */.im)(pElement, vditor[vditor.currentMode].element, range).start === + pElement.textContent.length - 1) { + // 软换行 + pElement.innerHTML = pElement.innerHTML.substr(0, pElement.innerHTML.length - 2); + isEmpty = true; + } + if (isEmpty) { + // 需添加零宽字符,否则的话无法记录 undo + blockquoteElement.insertAdjacentHTML("afterend", "<p data-block=\"0\">".concat(constants/* Constants.ZWSP */.g.ZWSP, "<wbr>\n</p>")); + (0,selection/* setRangeByWbr */.ib)(vditor[vditor.currentMode].element, range); + execAfterRender(vditor); + event.preventDefault(); + return true; + } + } + var blockElement = (0,hasClosest/* hasClosestBlock */.F9)(startContainer); + if (vditor.currentMode === "wysiwyg" && blockElement && matchHotKey("⇧⌘;", event)) { + // 插入 blockquote + range.insertNode(document.createElement("wbr")); + blockElement.outerHTML = "<blockquote data-block=\"0\">".concat(blockElement.outerHTML, "</blockquote>"); + (0,selection/* setRangeByWbr */.ib)(vditor.wysiwyg.element, range); + afterRenderEvent(vditor); + event.preventDefault(); + return true; + } + if (insertAfterBlock(vditor, event, range, blockquoteElement, blockquoteElement)) { + return true; + } + if (insertBeforeBlock(vditor, event, range, blockquoteElement, blockquoteElement)) { + return true; + } + } + return false; +}; +var fixTask = function (vditor, range, event) { + var startContainer = range.startContainer; + var taskItemElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(startContainer, "LI"); + if (taskItemElement && taskItemElement.classList.contains("vditor-task")) { + if (matchHotKey("⇧⌘J", event)) { + // ctrl + shift: toggle checked + var inputElement = taskItemElement.firstElementChild; + if (inputElement.checked) { + inputElement.removeAttribute("checked"); + } + else { + inputElement.setAttribute("checked", "checked"); + } + execAfterRender(vditor); + event.preventDefault(); + return true; + } + // Backspace: 在选择框前进行删除 + if (event.key === "Backspace" && !(0,compatibility/* isCtrl */.yl)(event) && !event.shiftKey && !event.altKey && range.toString() === "" + && range.startOffset === 1 + && ((startContainer.nodeType === 3 && startContainer.previousSibling && + startContainer.previousSibling.tagName === "INPUT") + || startContainer.nodeType !== 3)) { + var previousElement = taskItemElement.previousElementSibling; + taskItemElement.querySelector("input").remove(); + if (previousElement) { + var lastNode = (0,hasClosest/* getLastNode */.DX)(previousElement); + lastNode.parentElement.insertAdjacentHTML("beforeend", "<wbr>" + taskItemElement.innerHTML.trim()); + taskItemElement.remove(); + } + else { + taskItemElement.parentElement.insertAdjacentHTML("beforebegin", "<p data-block=\"0\"><wbr>".concat(taskItemElement.innerHTML.trim() || "\n", "</p>")); + if (taskItemElement.nextElementSibling) { + taskItemElement.remove(); + } + else { + taskItemElement.parentElement.remove(); + } + } + (0,selection/* setRangeByWbr */.ib)(vditor[vditor.currentMode].element, range); + execAfterRender(vditor); + event.preventDefault(); + return true; + } + if (event.key === "Enter" && !(0,compatibility/* isCtrl */.yl)(event) && !event.shiftKey && !event.altKey) { + if (taskItemElement.textContent.trim() === "") { + // 当前任务列表无文字 + if ((0,hasClosest/* hasClosestByClassName */.fb)(taskItemElement.parentElement, "vditor-task")) { + // 为子元素时,需进行反向缩进 + var topListElement = (0,hasClosest/* getTopList */.O9)(startContainer); + if (topListElement) { + listOutdent(vditor, taskItemElement, range, topListElement); + } + } + else { + // 仅有一级任务列表 + if (taskItemElement.nextElementSibling) { + // 任务列表下方还有元素,需要使用用段落隔断 + var afterHTML_2 = ""; + var beforeHTML_1 = ""; + var isAfter_1 = false; + Array.from(taskItemElement.parentElement.children).forEach(function (taskItem) { + if (taskItemElement.isSameNode(taskItem)) { + isAfter_1 = true; + } + else { + if (isAfter_1) { + afterHTML_2 += taskItem.outerHTML; + } + else { + beforeHTML_1 += taskItem.outerHTML; + } + } + }); + var parentTagName = taskItemElement.parentElement.tagName; + var dataMarker = taskItemElement.parentElement.tagName === "OL" ? "" : " data-marker=\"".concat(taskItemElement.parentElement.getAttribute("data-marker"), "\""); + var startAttribute = ""; + if (beforeHTML_1) { + startAttribute = taskItemElement.parentElement.tagName === "UL" ? "" : " start=\"1\""; + beforeHTML_1 = "<".concat(parentTagName, " data-tight=\"true\"").concat(dataMarker, " data-block=\"0\">").concat(beforeHTML_1, "</").concat(parentTagName, ">"); + } + // <p data-block="0">\n<wbr></p> => <p data-block="0"><wbr>\n</p> + // https://github.com/Vanessa219/vditor/issues/430 + taskItemElement.parentElement.outerHTML = "".concat(beforeHTML_1, "<p data-block=\"0\"><wbr>\n</p><").concat(parentTagName, "\n data-tight=\"true\"").concat(dataMarker, " data-block=\"0\"").concat(startAttribute, ">").concat(afterHTML_2, "</").concat(parentTagName, ">"); + } + else { + // 任务列表下方无任务列表元素 + taskItemElement.parentElement.insertAdjacentHTML("afterend", "<p data-block=\"0\"><wbr>\n</p>"); + if (taskItemElement.parentElement.querySelectorAll("li").length === 1) { + // 任务列表仅有一项时,使用 p 元素替换 + taskItemElement.parentElement.remove(); + } + else { + // 任务列表有多项时,当前任务列表位于最后一项,移除该任务列表 + taskItemElement.remove(); + } + } + } + } + else if (startContainer.nodeType !== 3 && range.startOffset === 0 && + startContainer.firstChild.tagName === "INPUT") { + // 光标位于 input 之前 + range.setStart(startContainer.childNodes[1], 1); + } + else { + // 当前任务列表有文字,光标后的文字需添加到新任务列表中 + range.setEndAfter(taskItemElement.lastChild); + taskItemElement.insertAdjacentHTML("afterend", "<li class=\"vditor-task\" data-marker=\"".concat(taskItemElement.getAttribute("data-marker"), "\"><input type=\"checkbox\"> <wbr></li>")); + document.querySelector("wbr").after(range.extractContents()); + } + (0,selection/* setRangeByWbr */.ib)(vditor[vditor.currentMode].element, range); + execAfterRender(vditor); + scrollCenter(vditor); + event.preventDefault(); + return true; + } + } + return false; +}; +var fixDelete = function (vditor, range, event, pElement) { + if (range.startContainer.nodeType !== 3) { + // 光标位于 hr 前,hr 前有内容 + var rangeElement = range.startContainer.children[range.startOffset]; + if (rangeElement && rangeElement.tagName === "HR") { + range.selectNodeContents(rangeElement.previousElementSibling); + range.collapse(false); + event.preventDefault(); + return true; + } + } + if (pElement) { + var previousElement = pElement.previousElementSibling; + if (previousElement && (0,selection/* getSelectPosition */.im)(pElement, vditor[vditor.currentMode].element, range).start === 0 && + (((0,compatibility/* isFirefox */.vU)() && previousElement.tagName === "HR") || previousElement.tagName === "TABLE")) { + if (previousElement.tagName === "TABLE") { + // table 后删除 https://github.com/Vanessa219/vditor/issues/243 + var lastCellElement = previousElement.lastElementChild.lastElementChild.lastElementChild; + lastCellElement.innerHTML = + lastCellElement.innerHTML.trimLeft() + "<wbr>" + pElement.textContent.trim(); + pElement.remove(); + } + else { + // 光标位于 hr 后进行删除 + previousElement.remove(); + } + (0,selection/* setRangeByWbr */.ib)(vditor[vditor.currentMode].element, range); + execAfterRender(vditor); + event.preventDefault(); + return true; + } + } + return false; +}; +var fixHR = function (range) { + if ((0,compatibility/* isFirefox */.vU)() && range.startContainer.nodeType !== 3 && + range.startContainer.tagName === "HR") { + range.setStartBefore(range.startContainer); + } +}; +// firefox https://github.com/Vanessa219/vditor/issues/407 +var fixFirefoxArrowUpTable = function (event, blockElement, range) { + var _a, _b; + if (!(0,compatibility/* isFirefox */.vU)()) { + return false; + } + if (event.key === "ArrowUp" && blockElement && ((_a = blockElement.previousElementSibling) === null || _a === void 0 ? void 0 : _a.tagName) === "TABLE") { + var tableElement = blockElement.previousElementSibling; + range.selectNodeContents(tableElement.rows[tableElement.rows.length - 1].lastElementChild); + range.collapse(false); + event.preventDefault(); + return true; + } + if (event.key === "ArrowDown" && blockElement && ((_b = blockElement.nextElementSibling) === null || _b === void 0 ? void 0 : _b.tagName) === "TABLE") { + range.selectNodeContents(blockElement.nextElementSibling.rows[0].cells[0]); + range.collapse(true); + event.preventDefault(); + return true; + } + return false; +}; +var paste = function (vditor, event, callback) { return fixBrowserBehavior_awaiter(void 0, void 0, void 0, function () { + var textHTML, textPlain, files, renderers, renderLinkDest, doc, height, code, codeElement, position, tempElement, fileReader_1, file_1, range, blockElement, range; + var _a; + return fixBrowserBehavior_generator(this, function (_b) { + switch (_b.label) { + case 0: + if (vditor[vditor.currentMode].element.getAttribute("contenteditable") !== "true") { + return [2 /*return*/]; + } + event.stopPropagation(); + event.preventDefault(); + if ("clipboardData" in event) { + textHTML = event.clipboardData.getData("text/html"); + textPlain = event.clipboardData.getData("text/plain"); + files = event.clipboardData.files; + } + else { + textHTML = event.dataTransfer.getData("text/html"); + textPlain = event.dataTransfer.getData("text/plain"); + if (event.dataTransfer.types.includes("Files")) { + files = event.dataTransfer.items; + } + } + renderers = {}; + renderLinkDest = function (node, entering) { + if (!entering) { + return ["", Lute.WalkContinue]; + } + if (vditor.options.upload.renderLinkDest) { + return vditor.options.upload.renderLinkDest(vditor, node, entering); + } + var src = node.TokensStr(); + if (node.__internal_object__.Parent.Type === 34 && src && src.indexOf("file://") === -1 && + vditor.options.upload.linkToImgUrl) { + var xhr_1 = new XMLHttpRequest(); + xhr_1.open("POST", vditor.options.upload.linkToImgUrl); + if (vditor.options.upload.token) { + xhr_1.setRequestHeader("X-Upload-Token", vditor.options.upload.token); + } + if (vditor.options.upload.withCredentials) { + xhr_1.withCredentials = true; + } + setHeaders(vditor, xhr_1); + xhr_1.setRequestHeader("Content-Type", "application/json; charset=utf-8"); + xhr_1.onreadystatechange = function () { + if (xhr_1.readyState === XMLHttpRequest.DONE) { + if (xhr_1.status === 200) { + var responseText = xhr_1.responseText; + if (vditor.options.upload.linkToImgFormat) { + responseText = vditor.options.upload.linkToImgFormat(xhr_1.responseText); + } + var responseJSON_1 = JSON.parse(responseText); + if (responseJSON_1.code !== 0) { + vditor.tip.show(responseJSON_1.msg); + return; + } + var original_1 = responseJSON_1.data.originalURL; + if (vditor.currentMode === "sv") { + vditor.sv.element.querySelectorAll(".vditor-sv__marker--link") + .forEach(function (item) { + if (item.textContent === original_1) { + item.textContent = responseJSON_1.data.url; + } + }); + } + else { + var imgElement = vditor[vditor.currentMode].element.querySelector("img[src=\"".concat(original_1, "\"]")); + imgElement.src = responseJSON_1.data.url; + if (vditor.currentMode === "ir") { + imgElement.previousElementSibling.previousElementSibling.innerHTML = + responseJSON_1.data.url; + } + } + execAfterRender(vditor); + } + else { + vditor.tip.show(xhr_1.responseText); + } + if (vditor.options.upload.linkToImgCallback) { + vditor.options.upload.linkToImgCallback(xhr_1.responseText); + } + } + }; + xhr_1.send(JSON.stringify({ url: src })); + } + if (vditor.currentMode === "ir") { + return ["<span class=\"vditor-ir__marker vditor-ir__marker--link\">".concat(Lute.EscapeHTMLStr(src), "</span>"), Lute.WalkContinue]; + } + else if (vditor.currentMode === "wysiwyg") { + return ["", Lute.WalkContinue]; + } + else { + return ["<span class=\"vditor-sv__marker--link\">".concat(Lute.EscapeHTMLStr(src), "</span>"), Lute.WalkContinue]; + } + }; + // 浏览器地址栏拷贝处理 + if (textHTML.replace(/&/g, "&").replace(/<(|\/)(html|body|meta)[^>]*?>/ig, "").trim() === + "<a href=\"".concat(textPlain, "\">").concat(textPlain, "</a>") || + textHTML.replace(/&/g, "&").replace(/<(|\/)(html|body|meta)[^>]*?>/ig, "").trim() === + "<!--StartFragment--><a href=\"".concat(textPlain, "\">").concat(textPlain, "</a><!--EndFragment-->")) { + textHTML = ""; + } + doc = new DOMParser().parseFromString(textHTML, "text/html"); + if (doc.body) { + textHTML = doc.body.innerHTML; + } + textHTML = Lute.Sanitize(textHTML); + vditor.wysiwyg.getComments(vditor); + height = vditor[vditor.currentMode].element.scrollHeight; + code = processPasteCode(textHTML, textPlain, vditor.currentMode); + codeElement = vditor.currentMode === "sv" ? + (0,hasClosest/* hasClosestByAttribute */.a1)(event.target, "data-type", "code-block") : + (0,hasClosest/* hasClosestByMatchTag */.lG)(event.target, "CODE"); + if (!codeElement) return [3 /*break*/, 1]; + // 粘贴在代码位置 + if (vditor.currentMode === "sv") { + document.execCommand("insertHTML", false, textPlain.replace(/&/g, "&").replace(/</g, "<")); + } + else { + position = (0,selection/* getSelectPosition */.im)(event.target, vditor[vditor.currentMode].element); + if (codeElement.parentElement.tagName !== "PRE") { + // https://github.com/Vanessa219/vditor/issues/463 + textPlain += constants/* Constants.ZWSP */.g.ZWSP; + } + codeElement.textContent = codeElement.textContent.substring(0, position.start) + + textPlain + codeElement.textContent.substring(position.end); + (0,selection/* setSelectionByPosition */.$j)(position.start + textPlain.length, position.start + textPlain.length, codeElement.parentElement); + if ((_a = codeElement.parentElement) === null || _a === void 0 ? void 0 : _a.nextElementSibling.classList.contains("vditor-".concat(vditor.currentMode, "__preview"))) { + codeElement.parentElement.nextElementSibling.innerHTML = codeElement.outerHTML; + processCodeRender(codeElement.parentElement.nextElementSibling, vditor); + } + } + return [3 /*break*/, 8]; + case 1: + if (!code) return [3 /*break*/, 2]; + callback.pasteCode(code); + return [3 /*break*/, 8]; + case 2: + if (!(textHTML.trim() !== "")) return [3 /*break*/, 3]; + tempElement = document.createElement("div"); + tempElement.innerHTML = textHTML; + tempElement.querySelectorAll("[style]").forEach(function (e) { + e.removeAttribute("style"); + }); + tempElement.querySelectorAll(".vditor-copy").forEach(function (e) { + e.remove(); + }); + if (vditor.currentMode === "ir") { + renderers.HTML2VditorIRDOM = { renderLinkDest: renderLinkDest }; + vditor.lute.SetJSRenderers({ renderers: renderers }); + (0,selection/* insertHTML */.oC)(vditor.lute.HTML2VditorIRDOM(tempElement.innerHTML), vditor); + } + else if (vditor.currentMode === "wysiwyg") { + renderers.HTML2VditorDOM = { renderLinkDest: renderLinkDest }; + vditor.lute.SetJSRenderers({ renderers: renderers }); + (0,selection/* insertHTML */.oC)(vditor.lute.HTML2VditorDOM(tempElement.innerHTML), vditor); + } + else { + renderers.Md2VditorSVDOM = { renderLinkDest: renderLinkDest }; + vditor.lute.SetJSRenderers({ renderers: renderers }); + processPaste(vditor, vditor.lute.HTML2Md(tempElement.innerHTML).trimRight()); + } + vditor.outline.render(vditor); + return [3 /*break*/, 8]; + case 3: + if (!(files.length > 0)) return [3 /*break*/, 7]; + if (!(vditor.options.upload.url || vditor.options.upload.handler)) return [3 /*break*/, 5]; + return [4 /*yield*/, uploadFiles(vditor, files)]; + case 4: + _b.sent(); + return [3 /*break*/, 6]; + case 5: + fileReader_1 = new FileReader(); + if ("clipboardData" in event) { + files = event.clipboardData.files; + file_1 = files[0]; + } + else if (event.dataTransfer.types.includes("Files")) { + files = event.dataTransfer.items; + file_1 = files[0].getAsFile(); + } + if (file_1 && file_1.type.startsWith("image")) { + fileReader_1.readAsDataURL(file_1); + fileReader_1.onload = function () { + var imgHTML = ''; + if (vditor.currentMode === "wysiwyg") { + imgHTML += "<img alt=\"".concat(file_1.name, "\" src=\"").concat(fileReader_1.result.toString(), "\">\n"); + } + else { + imgHTML += "![".concat(file_1.name, "](").concat(fileReader_1.result.toString(), ")\n"); + } + document.execCommand("insertHTML", false, imgHTML); + }; + } + _b.label = 6; + case 6: return [3 /*break*/, 8]; + case 7: + if (textPlain.trim() !== "" && files.length === 0) { + range = (0,selection/* getEditorRange */.zh)(vditor); + if (range.toString() !== "" && vditor.lute.IsValidLinkDest(textPlain)) { + textPlain = "[".concat(range.toString(), "](").concat(textPlain, ")"); + } + if (vditor.currentMode === "ir") { + renderers.Md2VditorIRDOM = { renderLinkDest: renderLinkDest }; + vditor.lute.SetJSRenderers({ renderers: renderers }); + (0,selection/* insertHTML */.oC)(vditor.lute.Md2VditorIRDOM(textPlain), vditor); + } + else if (vditor.currentMode === "wysiwyg") { + renderers.Md2VditorDOM = { renderLinkDest: renderLinkDest }; + vditor.lute.SetJSRenderers({ renderers: renderers }); + (0,selection/* insertHTML */.oC)(vditor.lute.Md2VditorDOM(textPlain), vditor); + } + else { + renderers.Md2VditorSVDOM = { renderLinkDest: renderLinkDest }; + vditor.lute.SetJSRenderers({ renderers: renderers }); + processPaste(vditor, textPlain); + } + vditor.outline.render(vditor); + } + _b.label = 8; + case 8: + if (vditor.currentMode !== "sv") { + blockElement = (0,hasClosest/* hasClosestBlock */.F9)((0,selection/* getEditorRange */.zh)(vditor).startContainer); + if (blockElement) { + range = (0,selection/* getEditorRange */.zh)(vditor); + vditor[vditor.currentMode].element.querySelectorAll("wbr").forEach(function (wbr) { + wbr.remove(); + }); + range.insertNode(document.createElement("wbr")); + if (vditor.currentMode === "wysiwyg") { + blockElement.outerHTML = vditor.lute.SpinVditorDOM(blockElement.outerHTML); + } + else { + blockElement.outerHTML = vditor.lute.SpinVditorIRDOM(blockElement.outerHTML); + } + (0,selection/* setRangeByWbr */.ib)(vditor[vditor.currentMode].element, range); + } + vditor[vditor.currentMode].element.querySelectorAll(".vditor-".concat(vditor.currentMode, "__preview[data-render='2']")) + .forEach(function (item) { + processCodeRender(item, vditor); + }); + } + vditor.wysiwyg.triggerRemoveComment(vditor); + execAfterRender(vditor); + if (vditor[vditor.currentMode].element.scrollHeight - height > + Math.min(vditor[vditor.currentMode].element.clientHeight, window.innerHeight) / 2) { + scrollCenter(vditor); + } + return [2 /*return*/]; + } + }); +}); }; +var templateObject_1; + +;// CONCATENATED MODULE: ./src/ts/ir/process.ts + + + + + + + + + +var processHint = function (vditor) { + var _a, _b; + vditor.hint.render(vditor); + var startContainer = (0,selection/* getEditorRange */.zh)(vditor).startContainer; + // 代码块语言提示 + var preBeforeElement = (0,hasClosest/* hasClosestByAttribute */.a1)(startContainer, "data-type", "code-block-info"); + if (preBeforeElement) { + if (preBeforeElement.textContent.replace(constants/* Constants.ZWSP */.g.ZWSP, "") === "" && vditor.hint.recentLanguage) { + preBeforeElement.textContent = constants/* Constants.ZWSP */.g.ZWSP + vditor.hint.recentLanguage; + var range = (0,selection/* getEditorRange */.zh)(vditor); + range.selectNodeContents(preBeforeElement); + } + else { + var matchLangData_1 = []; + var key_1 = preBeforeElement.textContent.substring(0, (0,selection/* getSelectPosition */.im)(preBeforeElement, vditor.ir.element).start) + .replace(constants/* Constants.ZWSP */.g.ZWSP, ""); + (vditor.options.preview.hljs.langs || constants/* Constants.ALIAS_CODE_LANGUAGES.concat */.g.ALIAS_CODE_LANGUAGES.concat(((_b = (_a = window.hljs) === null || _a === void 0 ? void 0 : _a.listLanguages()) !== null && _b !== void 0 ? _b : []).sort())).forEach(function (keyName) { + if (keyName.indexOf(key_1.toLowerCase()) > -1) { + matchLangData_1.push({ + html: keyName, + value: keyName, + }); + } + }); + vditor.hint.genHTML(matchLangData_1, key_1, vditor); + } + } +}; +var process_processAfterRender = function (vditor, options) { + if (options === void 0) { options = { + enableAddUndoStack: true, + enableHint: false, + enableInput: true, + }; } + if (options.enableHint) { + processHint(vditor); + } + clearTimeout(vditor.ir.processTimeoutId); + vditor.ir.processTimeoutId = window.setTimeout(function () { + if (vditor.ir.composingLock) { + return; + } + var text = getMarkdown(vditor); + if (typeof vditor.options.input === "function" && options.enableInput) { + vditor.options.input(text); + } + if (vditor.options.counter.enable) { + vditor.counter.render(vditor, text); + } + if (vditor.options.cache.enable && (0,compatibility/* accessLocalStorage */.pK)()) { + localStorage.setItem(vditor.options.cache.id, text); + if (vditor.options.cache.after) { + vditor.options.cache.after(text); + } + } + if (vditor.devtools) { + vditor.devtools.renderEchart(vditor); + } + if (options.enableAddUndoStack) { + vditor.undo.addToUndoStack(vditor); + } + }, vditor.options.undoDelay); +}; +var process_processHeading = function (vditor, value) { + var range = (0,selection/* getEditorRange */.zh)(vditor); + var headingElement = (0,hasClosest/* hasClosestBlock */.F9)(range.startContainer) || range.startContainer; + if (headingElement) { + var headingMarkerElement = headingElement.querySelector(".vditor-ir__marker--heading"); + if (headingMarkerElement) { + headingMarkerElement.innerHTML = value; + } + else { + headingElement.insertAdjacentText("afterbegin", value); + range.selectNodeContents(headingElement); + range.collapse(false); + } + input(vditor, range.cloneRange()); + highlightToolbarIR(vditor); + } +}; +var removeInline = function (range, vditor, type) { + var inlineElement = (0,hasClosest/* hasClosestByAttribute */.a1)(range.startContainer, "data-type", type); + if (inlineElement) { + inlineElement.firstElementChild.remove(); + inlineElement.lastElementChild.remove(); + range.insertNode(document.createElement("wbr")); + var tempElement = document.createElement("div"); + tempElement.innerHTML = vditor.lute.SpinVditorIRDOM(inlineElement.outerHTML); + inlineElement.outerHTML = tempElement.firstElementChild.innerHTML.trim(); + } +}; +var process_processToolbar = function (vditor, actionBtn, prefix, suffix) { + var range = (0,selection/* getEditorRange */.zh)(vditor); + var commandName = actionBtn.getAttribute("data-type"); + var typeElement = range.startContainer; + if (typeElement.nodeType === 3) { + typeElement = typeElement.parentElement; + } + var useHighlight = true; + // 移除 + if (actionBtn.classList.contains("vditor-menu--current")) { + if (commandName === "quote") { + var quoteElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(typeElement, "BLOCKQUOTE"); + if (quoteElement) { + range.insertNode(document.createElement("wbr")); + quoteElement.outerHTML = quoteElement.innerHTML.trim() === "" ? + "<p data-block=\"0\">".concat(quoteElement.innerHTML, "</p>") : quoteElement.innerHTML; + } + } + else if (commandName === "link") { + var aElement = (0,hasClosest/* hasClosestByAttribute */.a1)(range.startContainer, "data-type", "a"); + if (aElement) { + var aTextElement = (0,hasClosest/* hasClosestByClassName */.fb)(range.startContainer, "vditor-ir__link"); + if (aTextElement) { + range.insertNode(document.createElement("wbr")); + aElement.outerHTML = aTextElement.innerHTML; + } + else { + aElement.outerHTML = aElement.querySelector(".vditor-ir__link").innerHTML + "<wbr>"; + } + } + } + else if (commandName === "italic") { + removeInline(range, vditor, "em"); + } + else if (commandName === "bold") { + removeInline(range, vditor, "strong"); + } + else if (commandName === "strike") { + removeInline(range, vditor, "s"); + } + else if (commandName === "inline-code") { + removeInline(range, vditor, "code"); + } + else if (commandName === "check" || commandName === "list" || commandName === "ordered-list") { + listToggle(vditor, range, commandName); + useHighlight = false; + actionBtn.classList.remove("vditor-menu--current"); + } + } + else { + // 添加 + if (vditor.ir.element.childNodes.length === 0) { + vditor.ir.element.innerHTML = '<p data-block="0"><wbr></p>'; + (0,selection/* setRangeByWbr */.ib)(vditor.ir.element, range); + } + var blockElement = (0,hasClosest/* hasClosestBlock */.F9)(range.startContainer); + if (commandName === "line") { + if (blockElement) { + var hrHTML = '<hr data-block="0"><p data-block="0"><wbr>\n</p>'; + if (blockElement.innerHTML.trim() === "") { + blockElement.outerHTML = hrHTML; + } + else { + blockElement.insertAdjacentHTML("afterend", hrHTML); + } + } + } + else if (commandName === "quote") { + if (blockElement) { + range.insertNode(document.createElement("wbr")); + blockElement.outerHTML = "<blockquote data-block=\"0\">".concat(blockElement.outerHTML, "</blockquote>"); + useHighlight = false; + actionBtn.classList.add("vditor-menu--current"); + } + } + else if (commandName === "link") { + var html = void 0; + if (range.toString() === "") { + html = "".concat(prefix, "<wbr>").concat(suffix); + } + else { + html = "".concat(prefix).concat(range.toString()).concat(suffix.replace(")", "<wbr>)")); + } + document.execCommand("insertHTML", false, html); + useHighlight = false; + actionBtn.classList.add("vditor-menu--current"); + } + else if (commandName === "italic" || commandName === "bold" || commandName === "strike" + || commandName === "inline-code" || commandName === "code" || commandName === "table") { + var html = void 0; + if (range.toString() === "") { + html = "".concat(prefix, "<wbr>").concat(suffix); + } + else { + if (commandName === "code") { + html = "".concat(prefix, "\n").concat(range.toString(), "<wbr>").concat(suffix); + } + else if (commandName === "table") { + html = "".concat(prefix).concat(range.toString(), "<wbr>").concat(suffix); + } + else { + html = "".concat(prefix).concat(range.toString()).concat(suffix, "<wbr>"); + } + range.deleteContents(); + } + if (commandName === "table" || commandName === "code") { + html = "\n" + html + "\n\n"; + } + var spanElement = document.createElement("span"); + spanElement.innerHTML = html; + range.insertNode(spanElement); + input(vditor, range); + if (commandName === "table") { + range.selectNodeContents(getSelection().getRangeAt(0).startContainer.parentElement); + (0,selection/* setSelectionFocus */.Hc)(range); + } + } + else if (commandName === "check" || commandName === "list" || commandName === "ordered-list") { + listToggle(vditor, range, commandName, false); + useHighlight = false; + removeCurrentToolbar(vditor.toolbar.elements, ["check", "list", "ordered-list"]); + actionBtn.classList.add("vditor-menu--current"); + } + } + (0,selection/* setRangeByWbr */.ib)(vditor.ir.element, range); + process_processAfterRender(vditor); + if (useHighlight) { + highlightToolbarIR(vditor); + } +}; + +;// CONCATENATED MODULE: ./src/ts/hint/index.ts +var hint_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +}; +var hint_generator = (undefined && undefined.__generator) || function (thisArg, body) { + var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; + function verb(n) { return function (v) { return step([n, v]); }; } + function step(op) { + if (f) throw new TypeError("Generator is already executing."); + while (g && (g = 0, op[0] && (_ = 0)), _) try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; + if (y = 0, t) op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: case 1: t = op; break; + case 4: _.label++; return { value: op[1], done: false }; + case 5: _.label++; y = op[1]; op = [0]; continue; + case 7: op = _.ops.pop(); _.trys.pop(); continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } + if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } + if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } + if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } + if (t[2]) _.ops.pop(); + _.trys.pop(); continue; + } + op = body.call(thisArg, _); + } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } + if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; + } +}; + + + + + + + + +var Hint = /** @class */ (function () { + function Hint(hintExtends) { + var _this = this; + this.splitChar = ""; + this.lastIndex = -1; + this.fillEmoji = function (element, vditor) { + _this.element.style.display = "none"; + var value = decodeURIComponent(element.getAttribute("data-value")); + var range = window.getSelection().getRangeAt(0); + // 代码提示 + if (vditor.currentMode === "ir") { + var preBeforeElement = (0,hasClosest/* hasClosestByAttribute */.a1)(range.startContainer, "data-type", "code-block-info"); + if (preBeforeElement) { + preBeforeElement.textContent = constants/* Constants.ZWSP */.g.ZWSP + value.trimRight(); + range.selectNodeContents(preBeforeElement); + range.collapse(false); + process_processAfterRender(vditor); + preBeforeElement.parentElement.querySelectorAll("code").forEach(function (item) { + item.className = "language-" + value.trimRight(); + }); + processCodeRender(preBeforeElement.parentElement.querySelector(".vditor-ir__preview"), vditor); + _this.recentLanguage = value.trimRight(); + return; + } + } + if (vditor.currentMode === "wysiwyg" && range.startContainer.nodeType !== 3) { + var startContainer = range.startContainer; + var inputElement = void 0; + if (startContainer.classList.contains("vditor-input")) { + inputElement = startContainer; + } + else { + inputElement = startContainer.firstElementChild; + } + if (inputElement && inputElement.classList.contains("vditor-input")) { + inputElement.value = value.trimRight(); + range.selectNodeContents(inputElement); + range.collapse(false); + // {detail: 1}用于标识这个自定义事件是在编程语言选择后触发的 + // 用于在鼠标选择语言后,自动聚焦到代码输入框 + inputElement.dispatchEvent(new CustomEvent("input", { detail: 1 })); + _this.recentLanguage = value.trimRight(); + return; + } + } + range.setStart(range.startContainer, _this.lastIndex); + range.deleteContents(); + if (vditor.options.hint.parse) { + if (vditor.currentMode === "sv") { + (0,selection/* insertHTML */.oC)(vditor.lute.SpinVditorSVDOM(value), vditor); + } + else if (vditor.currentMode === "wysiwyg") { + (0,selection/* insertHTML */.oC)(vditor.lute.SpinVditorDOM(value), vditor); + } + else { + (0,selection/* insertHTML */.oC)(vditor.lute.SpinVditorIRDOM(value), vditor); + } + } + else { + (0,selection/* insertHTML */.oC)(value, vditor); + } + if (_this.splitChar === ":" && value.indexOf(":") > -1 && vditor.currentMode !== "sv") { + range.insertNode(document.createTextNode(" ")); + } + range.collapse(false); + (0,selection/* setSelectionFocus */.Hc)(range); + if (vditor.currentMode === "wysiwyg") { + var preElement = (0,hasClosest/* hasClosestByClassName */.fb)(range.startContainer, "vditor-wysiwyg__block"); + if (preElement && preElement.lastElementChild.classList.contains("vditor-wysiwyg__preview")) { + preElement.lastElementChild.innerHTML = preElement.firstElementChild.innerHTML; + processCodeRender(preElement.lastElementChild, vditor); + } + } + else if (vditor.currentMode === "ir") { + var preElement = (0,hasClosest/* hasClosestByClassName */.fb)(range.startContainer, "vditor-ir__marker--pre"); + if (preElement && preElement.nextElementSibling.classList.contains("vditor-ir__preview")) { + preElement.nextElementSibling.innerHTML = preElement.innerHTML; + processCodeRender(preElement.nextElementSibling, vditor); + } + } + execAfterRender(vditor); + }; + this.timeId = -1; + this.element = document.createElement("div"); + this.element.className = "vditor-hint"; + this.recentLanguage = ""; + hintExtends.push({ key: ":" }); + } + Hint.prototype.render = function (vditor) { + var _this = this; + if (!window.getSelection().focusNode) { + return; + } + var currentLineValue; + var range = getSelection().getRangeAt(0); + currentLineValue = range.startContainer.textContent.substring(0, range.startOffset) || ""; + var key = this.getKey(currentLineValue, vditor.options.hint.extend); + if (typeof key === "undefined") { + this.element.style.display = "none"; + clearTimeout(this.timeId); + } + else { + if (this.splitChar === ":") { + var emojiHint_1 = key === "" ? vditor.options.hint.emoji : vditor.lute.GetEmojis(); + var matchEmojiData_1 = []; + Object.keys(emojiHint_1).forEach(function (keyName) { + if (keyName.indexOf(key.toLowerCase()) === 0) { + if (emojiHint_1[keyName].indexOf(".") > -1) { + matchEmojiData_1.push({ + html: "<img src=\"".concat(emojiHint_1[keyName], "\" title=\":").concat(keyName, ":\"/> :").concat(keyName, ":"), + value: ":".concat(keyName, ":"), + }); + } + else { + matchEmojiData_1.push({ + html: "<span class=\"vditor-hint__emoji\">".concat(emojiHint_1[keyName], "</span>").concat(keyName), + value: emojiHint_1[keyName], + }); + } + } + }); + this.genHTML(matchEmojiData_1, key, vditor); + } + else { + vditor.options.hint.extend.forEach(function (item) { + if (item.key === _this.splitChar) { + clearTimeout(_this.timeId); + _this.timeId = window.setTimeout(function () { return hint_awaiter(_this, void 0, void 0, function () { + var _a; + return hint_generator(this, function (_b) { + switch (_b.label) { + case 0: + _a = this.genHTML; + return [4 /*yield*/, item.hint(key)]; + case 1: + _a.apply(this, [_b.sent(), key, vditor]); + return [2 /*return*/]; + } + }); + }); }, vditor.options.hint.delay); + } + }); + } + } + }; + Hint.prototype.genHTML = function (data, key, vditor) { + var _this = this; + if (data.length === 0) { + this.element.style.display = "none"; + return; + } + var editorElement = vditor[vditor.currentMode].element; + var textareaPosition = (0,selection/* getCursorPosition */.Ny)(editorElement); + var x = textareaPosition.left + + (vditor.options.outline.position === "left" ? vditor.outline.element.offsetWidth : 0); + var y = textareaPosition.top; + var hintsHTML = ""; + data.forEach(function (hintData, i) { + if (i > 7) { + return; + } + // process high light + var html = hintData.html; + if (key !== "") { + var lastIndex = html.lastIndexOf(">") + 1; + var replaceHtml = html.substr(lastIndex); + var replaceIndex = replaceHtml.toLowerCase().indexOf(key.toLowerCase()); + if (replaceIndex > -1) { + replaceHtml = replaceHtml.substring(0, replaceIndex) + "<b>" + + replaceHtml.substring(replaceIndex, replaceIndex + key.length) + "</b>" + + replaceHtml.substring(replaceIndex + key.length); + html = html.substr(0, lastIndex) + replaceHtml; + } + } + hintsHTML += "<button type=\"button\" data-value=\"".concat(encodeURIComponent(hintData.value), " \"\n").concat(i === 0 ? "class='vditor-hint--current'" : "", "> ").concat(html, "</button>"); + }); + this.element.innerHTML = hintsHTML; + var lineHeight = parseInt(document.defaultView.getComputedStyle(editorElement, null) + .getPropertyValue("line-height"), 10); + this.element.style.top = "".concat(y + (lineHeight || 22), "px"); + this.element.style.left = "".concat(x, "px"); + this.element.style.display = "block"; + this.element.style.right = "auto"; + this.element.querySelectorAll("button").forEach(function (element) { + element.addEventListener("click", function (event) { + _this.fillEmoji(element, vditor); + event.preventDefault(); + }); + }); + // hint 展现在上部 + if (this.element.getBoundingClientRect().bottom > window.innerHeight) { + this.element.style.top = "".concat(y - this.element.offsetHeight, "px"); + } + if (this.element.getBoundingClientRect().right > window.innerWidth) { + this.element.style.left = "auto"; + this.element.style.right = "0"; + } + }; + Hint.prototype.select = function (event, vditor) { + if (this.element.querySelectorAll("button").length === 0 || + this.element.style.display === "none") { + return false; + } + var currentHintElement = this.element.querySelector(".vditor-hint--current"); + if (event.key === "ArrowDown") { + event.preventDefault(); + event.stopPropagation(); + currentHintElement.removeAttribute("class"); + if (!currentHintElement.nextElementSibling) { + this.element.children[0].className = "vditor-hint--current"; + } + else { + currentHintElement.nextElementSibling.className = "vditor-hint--current"; + } + return true; + } + else if (event.key === "ArrowUp") { + event.preventDefault(); + event.stopPropagation(); + currentHintElement.removeAttribute("class"); + if (!currentHintElement.previousElementSibling) { + var length_1 = this.element.children.length; + this.element.children[length_1 - 1].className = "vditor-hint--current"; + } + else { + currentHintElement.previousElementSibling.className = "vditor-hint--current"; + } + return true; + } + else if (!(0,compatibility/* isCtrl */.yl)(event) && !event.shiftKey && !event.altKey && event.key === "Enter" && !event.isComposing) { + event.preventDefault(); + event.stopPropagation(); + this.fillEmoji(currentHintElement, vditor); + return true; + } + return false; + }; + Hint.prototype.getKey = function (currentLineValue, extend) { + var _this = this; + this.lastIndex = -1; + this.splitChar = ""; + extend.forEach(function (item) { + var currentLastIndex = currentLineValue.lastIndexOf(item.key); + if (_this.lastIndex < currentLastIndex) { + _this.splitChar = item.key; + _this.lastIndex = currentLastIndex; + } + }); + var key; + if (this.lastIndex === -1) { + return key; + } + var lineArray = currentLineValue.split(this.splitChar); + var lastItem = lineArray[lineArray.length - 1]; + var maxLength = 32; + if (lineArray.length > 1 && lastItem.trim() === lastItem) { + if (lineArray.length === 2 && lineArray[0] === "" && lineArray[1].length < maxLength) { + key = lineArray[1]; + } + else { + var preChar = lineArray[lineArray.length - 2].slice(-1); + if ((0,code160to32/* code160to32 */.X)(preChar) === " " && lastItem.length < maxLength) { + key = lastItem; + } + } + } + return key; + }; + return Hint; +}()); + + +;// CONCATENATED MODULE: ./src/ts/ir/index.ts + + + + + + + + + + + + +var IR = /** @class */ (function () { + function IR(vditor) { + this.composingLock = false; + var divElement = document.createElement("div"); + divElement.className = "vditor-ir"; + divElement.innerHTML = "<pre class=\"vditor-reset\" placeholder=\"".concat(vditor.options.placeholder, "\"\n contenteditable=\"true\" spellcheck=\"false\"></pre>"); + this.element = divElement.firstElementChild; + this.bindEvent(vditor); + focusEvent(vditor, this.element); + dblclickEvent(vditor, this.element); + blurEvent(vditor, this.element); + hotkeyEvent(vditor, this.element); + selectEvent(vditor, this.element); + dropEvent(vditor, this.element); + copyEvent(vditor, this.element, this.copy); + cutEvent(vditor, this.element, this.copy); + } + IR.prototype.copy = function (event, vditor) { + var range = getSelection().getRangeAt(0); + if (range.toString() === "") { + return; + } + event.stopPropagation(); + event.preventDefault(); + var tempElement = document.createElement("div"); + tempElement.appendChild(range.cloneContents()); + event.clipboardData.setData("text/plain", vditor.lute.VditorIRDOM2Md(tempElement.innerHTML).trim()); + event.clipboardData.setData("text/html", ""); + }; + IR.prototype.bindEvent = function (vditor) { + var _this = this; + this.element.addEventListener("paste", function (event) { + paste(vditor, event, { + pasteCode: function (code) { + document.execCommand("insertHTML", false, code); + }, + }); + }); + this.element.addEventListener("scroll", function () { + hidePanel(vditor, ["hint"]); + }); + this.element.addEventListener("compositionstart", function (event) { + _this.composingLock = true; + }); + this.element.addEventListener("compositionend", function (event) { + if (!(0,compatibility/* isFirefox */.vU)()) { + input(vditor, getSelection().getRangeAt(0).cloneRange()); + } + _this.composingLock = false; + }); + this.element.addEventListener("input", function (event) { + if (event.inputType === "deleteByDrag" || event.inputType === "insertFromDrop") { + // https://github.com/Vanessa219/vditor/issues/801 编辑器内容拖拽问题 + return; + } + if (_this.preventInput) { + _this.preventInput = false; + process_processAfterRender(vditor, { + enableAddUndoStack: true, + enableHint: true, + enableInput: true, + }); + return; + } + if (_this.composingLock || event.data === "‘" || event.data === "“" || event.data === "《") { + return; + } + input(vditor, getSelection().getRangeAt(0).cloneRange(), false, event); + }); + this.element.addEventListener("click", function (event) { + if (event.target.tagName === "INPUT") { + if (event.target.checked) { + event.target.setAttribute("checked", "checked"); + } + else { + event.target.removeAttribute("checked"); + } + _this.preventInput = true; + process_processAfterRender(vditor); + return; + } + var range = (0,selection/* getEditorRange */.zh)(vditor); + // 点击后光标落于预览区 + var previewElement = (0,hasClosest/* hasClosestByClassName */.fb)(event.target, "vditor-ir__preview"); + if (!previewElement) { + previewElement = (0,hasClosest/* hasClosestByClassName */.fb)(range.startContainer, "vditor-ir__preview"); + } + if (previewElement) { + if (previewElement.previousElementSibling.firstElementChild) { + range.selectNodeContents(previewElement.previousElementSibling.firstElementChild); + } + else { + // 行内数学公式 + range.selectNodeContents(previewElement.previousElementSibling); + } + range.collapse(true); + (0,selection/* setSelectionFocus */.Hc)(range); + scrollCenter(vditor); + } + // 点击图片光标选中图片地址 + if (event.target.tagName === "IMG") { + var linkElement = event.target.parentElement.querySelector(".vditor-ir__marker--link"); + if (linkElement) { + range.selectNode(linkElement); + (0,selection/* setSelectionFocus */.Hc)(range); + } + } + // 打开链接 + var aElement = (0,hasClosest/* hasClosestByAttribute */.a1)(event.target, "data-type", "a"); + if (aElement && (!aElement.classList.contains("vditor-ir__node--expand"))) { + if (vditor.options.link.click) { + vditor.options.link.click(aElement.querySelector(":scope > .vditor-ir__marker--link")); + } + else if (vditor.options.link.isOpen) { + window.open(aElement.querySelector(":scope > .vditor-ir__marker--link").textContent); + } + return; + } + if (event.target.isEqualNode(_this.element) && _this.element.lastElementChild && range.collapsed) { + var lastRect = _this.element.lastElementChild.getBoundingClientRect(); + if (event.y > lastRect.top + lastRect.height) { + if (_this.element.lastElementChild.tagName === "P" && + _this.element.lastElementChild.textContent.trim().replace(constants/* Constants.ZWSP */.g.ZWSP, "") === "") { + range.selectNodeContents(_this.element.lastElementChild); + range.collapse(false); + } + else { + _this.element.insertAdjacentHTML("beforeend", "<p data-block=\"0\">".concat(constants/* Constants.ZWSP */.g.ZWSP, "<wbr></p>")); + (0,selection/* setRangeByWbr */.ib)(_this.element, range); + } + } + } + if (range.toString() === "") { + expandMarker(range, vditor); + } + else { + // https://github.com/Vanessa219/vditor/pull/681 当点击选中区域时 eventTarget 与 range 不一致,需延迟等待 range 发生变化 + setTimeout(function () { + expandMarker((0,selection/* getEditorRange */.zh)(vditor), vditor); + }); + } + clickToc(event, vditor); + highlightToolbarIR(vditor); + }); + this.element.addEventListener("keyup", function (event) { + if (event.isComposing || (0,compatibility/* isCtrl */.yl)(event)) { + return; + } + if (event.key === "Enter") { + scrollCenter(vditor); + } + highlightToolbarIR(vditor); + if ((event.key === "Backspace" || event.key === "Delete") && + vditor.ir.element.innerHTML !== "" && vditor.ir.element.childNodes.length === 1 && + vditor.ir.element.firstElementChild && vditor.ir.element.firstElementChild.tagName === "P" + && vditor.ir.element.firstElementChild.childElementCount === 0 + && (vditor.ir.element.textContent === "" || vditor.ir.element.textContent === "\n")) { + // 为空时显示 placeholder + vditor.ir.element.innerHTML = ""; + return; + } + var range = (0,selection/* getEditorRange */.zh)(vditor); + if (event.key === "Backspace") { + // firefox headings https://github.com/Vanessa219/vditor/issues/211 + if ((0,compatibility/* isFirefox */.vU)() && range.startContainer.textContent === "\n" && range.startOffset === 1) { + range.startContainer.textContent = ""; + expandMarker(range, vditor); + } + // 数学公式前是空块,空块前是 table,在空块前删除,数学公式会多一个 br + _this.element.querySelectorAll(".language-math").forEach(function (item) { + var brElement = item.querySelector("br"); + if (brElement) { + brElement.remove(); + } + }); + } + else if (event.key.indexOf("Arrow") > -1) { + if (event.key === "ArrowLeft" || event.key === "ArrowRight") { + processHint(vditor); + } + expandMarker(range, vditor); + } + else if (event.keyCode === 229 && event.code === "" && event.key === "Unidentified") { + // https://github.com/Vanessa219/vditor/issues/508 IR 删除到节点需展开 + expandMarker(range, vditor); + } + var previewRenderElement = (0,hasClosest/* hasClosestByClassName */.fb)(range.startContainer, "vditor-ir__preview"); + if (previewRenderElement) { + if (event.key === "ArrowUp" || event.key === "ArrowLeft") { + if (previewRenderElement.previousElementSibling.firstElementChild) { + range.selectNodeContents(previewRenderElement.previousElementSibling.firstElementChild); + } + else { + // 行内数学公式/html entity + range.selectNodeContents(previewRenderElement.previousElementSibling); + } + range.collapse(false); + event.preventDefault(); + return true; + } + if (previewRenderElement.tagName === "SPAN" && + (event.key === "ArrowDown" || event.key === "ArrowRight")) { + if (previewRenderElement.parentElement.getAttribute("data-type") === "html-entity") { + // html entity + previewRenderElement.parentElement.insertAdjacentText("afterend", constants/* Constants.ZWSP */.g.ZWSP); + range.setStart(previewRenderElement.parentElement.nextSibling, 1); + } + else { + range.selectNodeContents(previewRenderElement.parentElement.lastElementChild); + } + range.collapse(false); + event.preventDefault(); + return true; + } + } + }); + }; + return IR; +}()); + + +;// CONCATENATED MODULE: ./src/ts/markdown/getHTML.ts + +var getHTML = function (vditor) { + if (vditor.currentMode === "sv") { + return vditor.lute.Md2HTML(getMarkdown(vditor)); + } + else if (vditor.currentMode === "wysiwyg") { + return vditor.lute.VditorDOM2HTML(vditor.wysiwyg.element.innerHTML); + } + else if (vditor.currentMode === "ir") { + return vditor.lute.VditorIRDOM2HTML(vditor.ir.element.innerHTML); + } +}; + +// EXTERNAL MODULE: ./src/ts/markdown/setLute.ts +var setLute = __webpack_require__(214); +// EXTERNAL MODULE: ./src/ts/markdown/outlineRender.ts +var outlineRender = __webpack_require__(436); +;// CONCATENATED MODULE: ./src/ts/outline/index.ts + + + + +var Outline = /** @class */ (function () { + function Outline(outlineLabel) { + this.element = document.createElement("div"); + this.element.className = "vditor-outline"; + this.element.innerHTML = "<div class=\"vditor-outline__title\">".concat(outlineLabel, "</div>\n<div class=\"vditor-outline__content\"></div>"); + } + Outline.prototype.render = function (vditor) { + var html = ""; + if (vditor.preview.element.style.display === "block") { + html = (0,outlineRender/* outlineRender */.k)(vditor.preview.previewElement, this.element.lastElementChild, vditor); + } + else { + html = (0,outlineRender/* outlineRender */.k)(vditor[vditor.currentMode].element, this.element.lastElementChild, vditor); + } + return html; + }; + Outline.prototype.toggle = function (vditor, show, focus) { + var _a; + if (show === void 0) { show = true; } + if (focus === void 0) { focus = true; } + var btnElement = (_a = vditor.toolbar.elements.outline) === null || _a === void 0 ? void 0 : _a.firstElementChild; + if (show && window.innerWidth >= constants/* Constants.MOBILE_WIDTH */.g.MOBILE_WIDTH) { + this.element.style.display = "block"; + this.render(vditor); + btnElement === null || btnElement === void 0 ? void 0 : btnElement.classList.add("vditor-menu--current"); + } + else { + this.element.style.display = "none"; + btnElement === null || btnElement === void 0 ? void 0 : btnElement.classList.remove("vditor-menu--current"); + } + if (focus && getSelection().rangeCount > 0) { + var range = getSelection().getRangeAt(0); + if (vditor[vditor.currentMode].element.contains(range.startContainer)) { + (0,selection/* setSelectionFocus */.Hc)(range); + } + } + setPadding(vditor); + }; + return Outline; +}()); + + +// EXTERNAL MODULE: ./src/ts/markdown/mediaRender.ts +var mediaRender = __webpack_require__(280); +;// CONCATENATED MODULE: ./src/ts/preview/index.ts + + + + + + + + + + + + + + + + + + + +var Preview = /** @class */ (function () { + function Preview(vditor) { + var _this = this; + this.element = document.createElement("div"); + this.element.className = "vditor-preview"; + this.previewElement = document.createElement("div"); + this.previewElement.className = "vditor-reset"; + if (vditor.options.classes.preview) { + this.previewElement.classList.add(vditor.options.classes.preview); + } + this.previewElement.style.maxWidth = vditor.options.preview.maxWidth + "px"; + this.previewElement.addEventListener("copy", function (event) { + if (event.target.tagName === "TEXTAREA") { + // https://github.com/Vanessa219/vditor/issues/901 + return; + } + var tempElement = document.createElement("div"); + tempElement.className = "vditor-reset"; + tempElement.appendChild(getSelection().getRangeAt(0).cloneContents()); + _this.copyToX(vditor, tempElement, "default"); + event.preventDefault(); + }); + this.previewElement.addEventListener("click", function (event) { + var spanElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(event.target, "SPAN"); + if (spanElement && (0,hasClosest/* hasClosestByClassName */.fb)(spanElement, "vditor-toc")) { + var headingElement = _this.previewElement.querySelector("#" + spanElement.getAttribute("data-target-id")); + if (headingElement) { + _this.element.scrollTop = headingElement.offsetTop; + } + return; + } + if (event.target.tagName === "A") { + if (vditor.options.link.click) { + vditor.options.link.click(event.target); + } + else if (vditor.options.link.isOpen) { + window.open(event.target.getAttribute("href")); + } + event.preventDefault(); + return; + } + if (event.target.tagName === "IMG") { + if (vditor.options.image.preview) { + vditor.options.image.preview(event.target); + } + else if (vditor.options.image.isPreview) { + (0,preview_image/* previewImage */.E)(event.target, vditor.options.lang, vditor.options.theme); + } + } + }); + this.element.appendChild(this.previewElement); + var actions = vditor.options.preview.actions; + if (actions.length === 0) { + return; + } + var actionElement = document.createElement("div"); + actionElement.className = "vditor-preview__action"; + var actionHtml = []; + for (var i = 0; i < actions.length; i++) { + var action = actions[i]; + if (typeof action === "object") { + actionHtml.push("<button type=\"button\" data-type=\"".concat(action.key, "\" class=\"").concat(action.className, "\"").concat(action.tooltip ? " aria-label=\"".concat(action.tooltip, "\"") : "", "\">").concat(action.text, "</button>")); + continue; + } + switch (action) { + case "desktop": + actionHtml.push("<button type=\"button\" class=\"vditor-preview__action--current\" data-type=\"desktop\">Desktop</button>"); + break; + case "tablet": + actionHtml.push("<button type=\"button\" data-type=\"tablet\">Tablet</button>"); + break; + case "mobile": + actionHtml.push("<button type=\"button\" data-type=\"mobile\">Mobile/Wechat</button>"); + break; + case "mp-wechat": + actionHtml.push("<button type=\"button\" data-type=\"mp-wechat\" class=\"vditor-tooltipped vditor-tooltipped__w\" aria-label=\"\u590D\u5236\u5230\u516C\u4F17\u53F7\"><svg><use xlink:href=\"#vditor-icon-mp-wechat\"></use></svg></button>"); + break; + case "zhihu": + actionHtml.push("<button type=\"button\" data-type=\"zhihu\" class=\"vditor-tooltipped vditor-tooltipped__w\" aria-label=\"\u590D\u5236\u5230\u77E5\u4E4E\"><svg><use xlink:href=\"#vditor-icon-zhihu\"></use></svg></button>"); + break; + } + } + actionElement.innerHTML = actionHtml.join(""); + actionElement.addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + var btn = (0,hasClosestByHeadings/* hasClosestByTag */.S)(event.target, "BUTTON"); + if (!btn) { + return; + } + var type = btn.getAttribute("data-type"); + var actionCustom = actions.find(function (w) { return (w === null || w === void 0 ? void 0 : w.key) === type; }); + if (actionCustom) { + actionCustom.click(type); + return; + } + if (type === "mp-wechat" || type === "zhihu") { + _this.copyToX(vditor, _this.previewElement.cloneNode(true), type); + return; + } + if (type === "desktop") { + _this.previewElement.style.width = "auto"; + } + else if (type === "tablet") { + _this.previewElement.style.width = "780px"; + } + else { + _this.previewElement.style.width = "360px"; + } + if (_this.previewElement.scrollWidth > _this.previewElement.parentElement.clientWidth) { + _this.previewElement.style.width = "auto"; + } + _this.render(vditor); + actionElement.querySelectorAll("button").forEach(function (item) { + item.classList.remove("vditor-preview__action--current"); + }); + btn.classList.add("vditor-preview__action--current"); + }); + this.element.insertBefore(actionElement, this.previewElement); + } + Preview.prototype.render = function (vditor, value) { + var _this = this; + clearTimeout(this.mdTimeoutId); + if (this.element.style.display === "none") { + if (this.element.getAttribute("data-type") === "renderPerformance") { + vditor.tip.hide(); + } + return; + } + if (value) { + this.previewElement.innerHTML = value; + return; + } + if (getMarkdown(vditor) + .replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, "") === "") { + this.previewElement.innerHTML = ""; + return; + } + var renderStartTime = new Date().getTime(); + var markdownText = getMarkdown(vditor); + this.mdTimeoutId = window.setTimeout(function () { + if (vditor.options.preview.url) { + var xhr_1 = new XMLHttpRequest(); + xhr_1.open("POST", vditor.options.preview.url); + xhr_1.setRequestHeader("Content-Type", "application/json;charset=UTF-8"); + xhr_1.onreadystatechange = function () { + if (xhr_1.readyState === XMLHttpRequest.DONE) { + if (xhr_1.status === 200) { + var responseJSON = JSON.parse(xhr_1.responseText); + if (responseJSON.code !== 0) { + vditor.tip.show(responseJSON.msg); + return; + } + if (vditor.options.preview.transform) { + responseJSON.data = vditor.options.preview.transform(responseJSON.data); + } + _this.previewElement.innerHTML = responseJSON.data; + _this.afterRender(vditor, renderStartTime); + } + else { + var html = vditor.lute.Md2HTML(markdownText); + if (vditor.options.preview.transform) { + html = vditor.options.preview.transform(html); + } + _this.previewElement.innerHTML = html; + _this.afterRender(vditor, renderStartTime); + } + } + }; + xhr_1.send(JSON.stringify({ markdownText: markdownText })); + } + else { + var html = vditor.lute.Md2HTML(markdownText); + if (vditor.options.preview.transform) { + html = vditor.options.preview.transform(html); + } + _this.previewElement.innerHTML = html; + _this.afterRender(vditor, renderStartTime); + } + }, vditor.options.preview.delay); + }; + Preview.prototype.afterRender = function (vditor, startTime) { + if (vditor.options.preview.parse) { + vditor.options.preview.parse(this.element); + } + var time = (new Date().getTime() - startTime); + if ((new Date().getTime() - startTime) > 2600) { + // https://github.com/b3log/vditor/issues/67 + vditor.tip.show(window.VditorI18n.performanceTip.replace("${x}", time.toString())); + vditor.preview.element.setAttribute("data-type", "renderPerformance"); + } + else if (vditor.preview.element.getAttribute("data-type") === "renderPerformance") { + vditor.tip.hide(); + vditor.preview.element.removeAttribute("data-type"); + } + var cmtFocusElement = vditor.preview.element.querySelector(".vditor-comment--focus"); + if (cmtFocusElement) { + cmtFocusElement.classList.remove("vditor-comment--focus"); + } + (0,codeRender/* codeRender */.O)(vditor.preview.previewElement, vditor.options.preview.hljs); + (0,highlightRender/* highlightRender */.s)(vditor.options.preview.hljs, vditor.preview.previewElement, vditor.options.cdn); + (0,mermaidRender/* mermaidRender */.i)(vditor.preview.previewElement, vditor.options.cdn, vditor.options.theme); + (0,markmapRender/* markmapRender */.K)(vditor.preview.previewElement, vditor.options.cdn); + (0,SMILESRender/* SMILESRender */.J)(vditor.preview.previewElement, vditor.options.cdn, vditor.options.theme); + (0,flowchartRender/* flowchartRender */.P)(vditor.preview.previewElement, vditor.options.cdn); + (0,graphvizRender/* graphvizRender */.v)(vditor.preview.previewElement, vditor.options.cdn); + (0,chartRender/* chartRender */.p)(vditor.preview.previewElement, vditor.options.cdn, vditor.options.theme); + (0,mindmapRender/* mindmapRender */.P)(vditor.preview.previewElement, vditor.options.cdn, vditor.options.theme); + (0,plantumlRender/* plantumlRender */.B)(vditor.preview.previewElement, vditor.options.cdn); + (0,abcRender/* abcRender */.Q)(vditor.preview.previewElement, vditor.options.cdn); + if (vditor.options.preview.render.media.enable) { + (0,mediaRender/* mediaRender */.Y)(vditor.preview.previewElement); + } + vditor.options.customRenders.forEach(function (item) { + item.render(vditor.preview.previewElement, vditor); + }); + // toc render + var editorElement = vditor.preview.element; + var tocHTML = vditor.outline.render(vditor); + if (tocHTML === "") { + tocHTML = "[ToC]"; + } + editorElement.querySelectorAll('[data-type="toc-block"]').forEach(function (item) { + item.innerHTML = tocHTML; + (0,mathRender/* mathRender */.H)(item, { + cdn: vditor.options.cdn, + math: vditor.options.preview.math, + }); + }); + (0,mathRender/* mathRender */.H)(vditor.preview.previewElement, { + cdn: vditor.options.cdn, + math: vditor.options.preview.math, + }); + }; + Preview.prototype.copyToX = function (vditor, copyElement, type) { + if (type === void 0) { type = "mp-wechat"; } + // fix math render + if (type !== "zhihu") { + copyElement.querySelectorAll(".katex-html .base").forEach(function (item) { + item.style.display = "initial"; + }); + } + else { + copyElement.querySelectorAll(".language-math").forEach(function (item) { + item.outerHTML = "<img class=\"Formula-image\" data-eeimg=\"true\" src=\"//www.zhihu.com/equation?tex=\" alt=\"".concat(item.getAttribute("data-math"), "\\\" style=\"display: block; margin: 0 auto; max-width: 100%;\">"); + }); + } + // 防止背景色被粘贴到公众号中 + copyElement.style.backgroundColor = "#fff"; + // 代码背景 + copyElement.querySelectorAll("code").forEach(function (item) { + item.style.backgroundImage = "none"; + }); + this.element.append(copyElement); + var range = copyElement.ownerDocument.createRange(); + range.selectNode(copyElement); + (0,selection/* setSelectionFocus */.Hc)(range); + document.execCommand("copy"); + copyElement.remove(); + vditor.tip.show(['zhihu', 'mp-wechat'].includes(type) ? "\u5DF2\u590D\u5236\uFF0C\u53EF\u5230".concat(type === "zhihu" ? "知乎" : "微信公众号平台", "\u8FDB\u884C\u7C98\u8D34") : "\u5DF2\u590D\u5236\u5230\u526A\u5207\u677F"); + }; + return Preview; +}()); + + +;// CONCATENATED MODULE: ./src/ts/resize/index.ts +var Resize = /** @class */ (function () { + function Resize(vditor) { + this.element = document.createElement("div"); + this.element.className = "vditor-resize vditor-resize--".concat(vditor.options.resize.position); + this.element.innerHTML = "<div><svg><use xlink:href=\"#vditor-icon-resize\"></use></svg></div>"; + this.bindEvent(vditor); + } + Resize.prototype.bindEvent = function (vditor) { + var _this = this; + this.element.addEventListener("mousedown", function (event) { + var documentSelf = document; + var y = event.clientY; + var height = vditor.element.offsetHeight; + var minHeight = 63 + vditor.element.querySelector(".vditor-toolbar").clientHeight; + documentSelf.ondragstart = function () { return false; }; + if (window.captureEvents) { + window.captureEvents(); + } + _this.element.classList.add("vditor-resize--selected"); + documentSelf.onmousemove = function (moveEvent) { + if (vditor.options.resize.position === "top") { + vditor.element.style.height = Math.max(minHeight, height + (y - moveEvent.clientY)) + "px"; + } + else { + vditor.element.style.height = Math.max(minHeight, height + (moveEvent.clientY - y)) + "px"; + } + if (vditor.options.typewriterMode) { + vditor.sv.element.style.paddingBottom = + vditor.sv.element.parentElement.offsetHeight / 2 + "px"; + } + }; + documentSelf.onmouseup = function () { + if (vditor.options.resize.after) { + vditor.options.resize.after(vditor.element.offsetHeight - height); + } + if (window.captureEvents) { + window.captureEvents(); + } + documentSelf.onmousemove = null; + documentSelf.onmouseup = null; + documentSelf.ondragstart = null; + documentSelf.onselectstart = null; + documentSelf.onselect = null; + _this.element.classList.remove("vditor-resize--selected"); + }; + }); + }; + return Resize; +}()); + + +;// CONCATENATED MODULE: ./src/ts/sv/index.ts + + + + + + +var Editor = /** @class */ (function () { + function Editor(vditor) { + this.composingLock = false; + this.element = document.createElement("pre"); + this.element.className = "vditor-sv vditor-reset"; + this.element.setAttribute("placeholder", vditor.options.placeholder); + this.element.setAttribute("contenteditable", "true"); + this.element.setAttribute("spellcheck", "false"); + this.bindEvent(vditor); + focusEvent(vditor, this.element); + blurEvent(vditor, this.element); + hotkeyEvent(vditor, this.element); + selectEvent(vditor, this.element); + dropEvent(vditor, this.element); + copyEvent(vditor, this.element, this.copy); + cutEvent(vditor, this.element, this.copy); + } + Editor.prototype.copy = function (event, vditor) { + event.stopPropagation(); + event.preventDefault(); + event.clipboardData.setData("text/plain", getSelectText(vditor[vditor.currentMode].element)); + }; + Editor.prototype.bindEvent = function (vditor) { + var _this = this; + this.element.addEventListener("paste", function (event) { + paste(vditor, event, { + pasteCode: function (code) { + document.execCommand("insertHTML", false, code); + }, + }); + }); + this.element.addEventListener("scroll", function () { + if (vditor.preview.element.style.display !== "block") { + return; + } + var textScrollTop = _this.element.scrollTop; + var textHeight = _this.element.clientHeight; + var textScrollHeight = _this.element.scrollHeight - parseFloat(_this.element.style.paddingBottom || "0"); + var preview = vditor.preview.element; + if ((textScrollTop / textHeight > 0.5)) { + preview.scrollTop = (textScrollTop + textHeight) * + preview.scrollHeight / textScrollHeight - textHeight; + } + else { + preview.scrollTop = textScrollTop * + preview.scrollHeight / textScrollHeight; + } + }); + this.element.addEventListener("compositionstart", function (event) { + _this.composingLock = true; + }); + this.element.addEventListener("compositionend", function (event) { + if (!(0,compatibility/* isFirefox */.vU)()) { + inputEvent(vditor, event); + } + _this.composingLock = false; + }); + this.element.addEventListener("input", function (event) { + if (event.inputType === "deleteByDrag" || event.inputType === "insertFromDrop") { + // https://github.com/Vanessa219/vditor/issues/801 编辑器内容拖拽问题 + return; + } + if (_this.composingLock || event.data === "‘" || event.data === "“" || event.data === "《") { + return; + } + if (_this.preventInput) { + _this.preventInput = false; + processAfterRender(vditor, { + enableAddUndoStack: true, + enableHint: true, + enableInput: true, + }); + return; + } + inputEvent(vditor, event); + }); + this.element.addEventListener("keyup", function (event) { + if (event.isComposing || (0,compatibility/* isCtrl */.yl)(event)) { + return; + } + if ((event.key === "Backspace" || event.key === "Delete") && + vditor.sv.element.innerHTML !== "" && vditor.sv.element.childNodes.length === 1 && + vditor.sv.element.firstElementChild && vditor.sv.element.firstElementChild.tagName === "DIV" + && vditor.sv.element.firstElementChild.childElementCount === 2 + && (vditor.sv.element.firstElementChild.textContent === "" || vditor.sv.element.textContent === "\n")) { + // 为空时显示 placeholder + vditor.sv.element.innerHTML = ""; + return; + } + if (event.key === "Enter") { + scrollCenter(vditor); + } + }); + }; + return Editor; +}()); + + +;// CONCATENATED MODULE: ./src/ts/tip/index.ts +var Tip = /** @class */ (function () { + function Tip() { + this.element = document.createElement("div"); + this.element.className = "vditor-tip"; + } + Tip.prototype.show = function (text, time) { + var _this = this; + if (time === void 0) { time = 6000; } + this.element.className = "vditor-tip vditor-tip--show"; + if (time === 0) { + this.element.innerHTML = "<div class=\"vditor-tip__content\">".concat(text, "\n<div class=\"vditor-tip__close\">X</div></div>"); + this.element.querySelector(".vditor-tip__close").addEventListener("click", function () { + _this.hide(); + }); + } + else { + this.element.innerHTML = "<div class=\"vditor-tip__content\">".concat(text, "</div>"); + setTimeout(function () { + _this.hide(); + }, time); + } + // 需在动画结束后才能确定位置 + this.element.removeAttribute("style"); + setTimeout(function () { + var rect = _this.element.getBoundingClientRect(); + if (rect.top < 46) { + _this.element.style.position = "fixed"; + _this.element.style.top = "46px"; + } + }, 150); + }; + Tip.prototype.hide = function () { + this.element.className = "vditor-messageElementtip"; + this.element.innerHTML = ""; + }; + return Tip; +}()); + + +;// CONCATENATED MODULE: ./src/ts/ui/setPreviewMode.ts + + +var setPreviewMode = function (mode, vditor) { + if (vditor.options.preview.mode === mode) { + return; + } + vditor.options.preview.mode = mode; + switch (mode) { + case "both": + vditor.sv.element.style.display = "block"; + vditor.preview.element.style.display = "block"; + vditor.preview.render(vditor); + setCurrentToolbar(vditor.toolbar.elements, ["both"]); + break; + case "editor": + vditor.sv.element.style.display = "block"; + vditor.preview.element.style.display = "none"; + removeCurrentToolbar(vditor.toolbar.elements, ["both"]); + break; + default: + break; + } + if (vditor.devtools) { + vditor.devtools.renderEchart(vditor); + } +}; + +;// CONCATENATED MODULE: ./src/ts/toolbar/Both.ts +var Both_extends = (undefined && undefined.__extends) || (function () { + var extendStatics = function (d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + return function (d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; +})(); + + + + +var Both = /** @class */ (function (_super) { + Both_extends(Both, _super); + function Both(vditor, menuItem) { + var _this = _super.call(this, vditor, menuItem) || this; + if (vditor.options.preview.mode === "both") { + _this.element.children[0].classList.add("vditor-menu--current"); + } + _this.element.children[0].addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + var btnElement = _this.element.firstElementChild; + if (btnElement.classList.contains(constants/* Constants.CLASS_MENU_DISABLED */.g.CLASS_MENU_DISABLED)) { + return; + } + event.preventDefault(); + if (vditor.currentMode !== "sv") { + return; + } + if (vditor.options.preview.mode === "both") { + setPreviewMode("editor", vditor); + } + else { + setPreviewMode("both", vditor); + } + }); + return _this; + } + return Both; +}(MenuItem)); + + +;// CONCATENATED MODULE: ./src/ts/toolbar/Br.ts +var Br = /** @class */ (function () { + function Br() { + this.element = document.createElement("div"); + this.element.className = "vditor-toolbar__br"; + } + return Br; +}()); + + +// EXTERNAL MODULE: ./src/ts/ui/setCodeTheme.ts +var setCodeTheme = __webpack_require__(580); +;// CONCATENATED MODULE: ./src/ts/toolbar/CodeTheme.ts +var CodeTheme_extends = (undefined && undefined.__extends) || (function () { + var extendStatics = function (d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + return function (d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; +})(); + + + + + +var CodeTheme = /** @class */ (function (_super) { + CodeTheme_extends(CodeTheme, _super); + function CodeTheme(vditor, menuItem) { + var _this = _super.call(this, vditor, menuItem) || this; + var actionBtn = _this.element.children[0]; + var panelElement = document.createElement("div"); + panelElement.className = "vditor-hint".concat(menuItem.level === 2 ? "" : " vditor-panel--arrow"); + var innerHTML = ""; + constants/* Constants.CODE_THEME.forEach */.g.CODE_THEME.forEach(function (theme) { + innerHTML += "<button>".concat(theme, "</button>"); + }); + panelElement.innerHTML = + "<div style=\"overflow: auto;max-height:".concat(window.innerHeight / 2, "px\">").concat(innerHTML, "</div>"); + panelElement.addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + if (event.target.tagName === "BUTTON") { + hidePanel(vditor, ["subToolbar"]); + vditor.options.preview.hljs.style = event.target.textContent; + (0,setCodeTheme/* setCodeTheme */.Y)(event.target.textContent, vditor.options.cdn); + event.preventDefault(); + event.stopPropagation(); + } + }); + _this.element.appendChild(panelElement); + toggleSubMenu(vditor, panelElement, actionBtn, menuItem.level); + return _this; + } + return CodeTheme; +}(MenuItem)); + + +;// CONCATENATED MODULE: ./src/ts/toolbar/ContentTheme.ts +var ContentTheme_extends = (undefined && undefined.__extends) || (function () { + var extendStatics = function (d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + return function (d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; +})(); + + + + +var ContentTheme = /** @class */ (function (_super) { + ContentTheme_extends(ContentTheme, _super); + function ContentTheme(vditor, menuItem) { + var _this = _super.call(this, vditor, menuItem) || this; + var actionBtn = _this.element.children[0]; + var panelElement = document.createElement("div"); + panelElement.className = "vditor-hint".concat(menuItem.level === 2 ? "" : " vditor-panel--arrow"); + var innerHTML = ""; + Object.keys(vditor.options.preview.theme.list).forEach(function (key) { + innerHTML += "<button data-type=\"".concat(key, "\">").concat(vditor.options.preview.theme.list[key], "</button>"); + }); + panelElement.innerHTML = + "<div style=\"overflow: auto;max-height:".concat(window.innerHeight / 2, "px\">").concat(innerHTML, "</div>"); + panelElement.addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + if (event.target.tagName === "BUTTON") { + hidePanel(vditor, ["subToolbar"]); + vditor.options.preview.theme.current = event.target.getAttribute("data-type"); + (0,setContentTheme/* setContentTheme */.Z)(vditor.options.preview.theme.current, vditor.options.preview.theme.path); + event.preventDefault(); + event.stopPropagation(); + } + }); + _this.element.appendChild(panelElement); + toggleSubMenu(vditor, panelElement, actionBtn, menuItem.level); + return _this; + } + return ContentTheme; +}(MenuItem)); + + +;// CONCATENATED MODULE: ./src/ts/toolbar/Counter.ts +var Counter = /** @class */ (function () { + function Counter(vditor) { + this.element = document.createElement("span"); + this.element.className = "vditor-counter vditor-tooltipped vditor-tooltipped__nw"; + this.render(vditor, ""); + } + Counter.prototype.render = function (vditor, mdText) { + var length = mdText.endsWith("\n") ? mdText.length - 1 : mdText.length; + if (vditor.options.counter.type === "text" && vditor[vditor.currentMode]) { + var tempElement = vditor[vditor.currentMode].element.cloneNode(true); + tempElement.querySelectorAll(".vditor-wysiwyg__preview").forEach(function (item) { + item.remove(); + }); + length = tempElement.textContent.length; + } + if (typeof vditor.options.counter.max === "number") { + if (length > vditor.options.counter.max) { + this.element.className = "vditor-counter vditor-counter--error"; + } + else { + this.element.className = "vditor-counter"; + } + this.element.innerHTML = "".concat(length, "/").concat(vditor.options.counter.max); + } + else { + this.element.innerHTML = "".concat(length); + } + this.element.setAttribute("aria-label", vditor.options.counter.type); + if (vditor.options.counter.after) { + vditor.options.counter.after(length, { + enable: vditor.options.counter.enable, + max: vditor.options.counter.max, + type: vditor.options.counter.type, + }); + } + }; + return Counter; +}()); + + +;// CONCATENATED MODULE: ./src/ts/toolbar/Custom.ts +var Custom_extends = (undefined && undefined.__extends) || (function () { + var extendStatics = function (d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + return function (d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; +})(); + + + +var Custom = /** @class */ (function (_super) { + Custom_extends(Custom, _super); + function Custom(vditor, menuItem) { + var _this = _super.call(this, vditor, menuItem) || this; + _this.element.children[0].innerHTML = menuItem.icon; + _this.element.children[0].addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + event.preventDefault(); + if (event.currentTarget.classList.contains(constants/* Constants.CLASS_MENU_DISABLED */.g.CLASS_MENU_DISABLED)) { + return; + } + menuItem.click(event, vditor); + }); + return _this; + } + return Custom; +}(MenuItem)); + + +;// CONCATENATED MODULE: ./src/ts/toolbar/Devtools.ts +var Devtools_extends = (undefined && undefined.__extends) || (function () { + var extendStatics = function (d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + return function (d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; +})(); + + + + +var Devtools = /** @class */ (function (_super) { + Devtools_extends(Devtools, _super); + function Devtools(vditor, menuItem) { + var _this = _super.call(this, vditor, menuItem) || this; + _this.element.firstElementChild.addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + var btnElement = _this.element.firstElementChild; + if (btnElement.classList.contains(constants/* Constants.CLASS_MENU_DISABLED */.g.CLASS_MENU_DISABLED)) { + return; + } + event.preventDefault(); + if (btnElement.classList.contains("vditor-menu--current")) { + btnElement.classList.remove("vditor-menu--current"); + vditor.devtools.element.style.display = "none"; + setPadding(vditor); + } + else { + btnElement.classList.add("vditor-menu--current"); + vditor.devtools.element.style.display = "block"; + setPadding(vditor); + vditor.devtools.renderEchart(vditor); + } + }); + return _this; + } + return Devtools; +}(MenuItem)); + + +;// CONCATENATED MODULE: ./src/ts/toolbar/Divider.ts +var Divider = /** @class */ (function () { + function Divider() { + this.element = document.createElement("div"); + this.element.className = "vditor-toolbar__divider"; + } + return Divider; +}()); + + +;// CONCATENATED MODULE: ./src/ts/toolbar/Emoji.ts +var Emoji_extends = (undefined && undefined.__extends) || (function () { + var extendStatics = function (d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + return function (d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; +})(); + + + + + + + + +var Emoji = /** @class */ (function (_super) { + Emoji_extends(Emoji, _super); + function Emoji(vditor, menuItem) { + var _this = _super.call(this, vditor, menuItem) || this; + var panelElement = document.createElement("div"); + panelElement.className = "vditor-panel vditor-panel--arrow"; + var commonEmojiHTML = ""; + Object.keys(vditor.options.hint.emoji).forEach(function (key) { + var emojiValue = vditor.options.hint.emoji[key]; + if (emojiValue.indexOf(".") > -1) { + commonEmojiHTML += "<button data-value=\":".concat(key, ": \" data-key=\":").concat(key, ":\"><img\ndata-value=\":").concat(key, ": \" data-key=\":").concat(key, ":\" class=\"vditor-emojis__icon\" src=\"").concat(emojiValue, "\"/></button>"); + } + else { + commonEmojiHTML += "<button data-value=\"".concat(emojiValue, " \"\n data-key=\"").concat(key, "\"><span class=\"vditor-emojis__icon\">").concat(emojiValue, "</span></button>"); + } + }); + panelElement.innerHTML = "<div class=\"vditor-emojis\" style=\"max-height: ".concat(vditor.options.height === "auto" ? "auto" : vditor.options.height - 80, "px\">").concat(commonEmojiHTML, "</div><div class=\"vditor-emojis__tail\">\n <span class=\"vditor-emojis__tip\"></span><span>").concat(vditor.options.hint.emojiTail || "", "</span>\n</div>"); + _this.element.appendChild(panelElement); + toggleSubMenu(vditor, panelElement, _this.element.firstElementChild, menuItem.level); + _this.bindEvent(vditor); + return _this; + } + Emoji.prototype.bindEvent = function (vditor) { + var _this = this; + this.element.lastElementChild.addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + var btnElement = (0,hasClosestByHeadings/* hasClosestByTag */.S)(event.target, "BUTTON"); + if (btnElement) { + event.preventDefault(); + var value = btnElement.getAttribute("data-value"); + var range = (0,selection/* getEditorRange */.zh)(vditor); + var html = value; + if (vditor.currentMode === "wysiwyg") { + html = vditor.lute.SpinVditorDOM(value); + } + else if (vditor.currentMode === "ir") { + html = vditor.lute.SpinVditorIRDOM(value); + } + if (value.indexOf(":") > -1 && vditor.currentMode !== "sv") { + var tempElement = document.createElement("div"); + tempElement.innerHTML = html; + html = tempElement.firstElementChild.firstElementChild.outerHTML + " "; + (0,selection/* insertHTML */.oC)(html, vditor); + } + else { + range.extractContents(); + range.insertNode(document.createTextNode(value)); + if (!(0,hasClosest/* hasClosestBlock */.F9)(range.startContainer)) { + modifyPre(vditor, range); + } + } + range.collapse(false); + (0,selection/* setSelectionFocus */.Hc)(range); + _this.element.lastElementChild.style.display = "none"; + execAfterRender(vditor); + } + }); + this.element.lastElementChild.addEventListener("mouseover", function (event) { + var btnElement = (0,hasClosestByHeadings/* hasClosestByTag */.S)(event.target, "BUTTON"); + if (btnElement) { + _this.element.querySelector(".vditor-emojis__tip").innerHTML = btnElement.getAttribute("data-key"); + } + }); + }; + return Emoji; +}(MenuItem)); + + +;// CONCATENATED MODULE: ./src/ts/export/index.ts + + +var download = function (vditor, content, filename) { + var aElement = document.createElement("a"); + if ("download" in aElement) { + aElement.download = filename; + aElement.style.display = "none"; + aElement.href = URL.createObjectURL(new Blob([content])); + document.body.appendChild(aElement); + aElement.click(); + aElement.remove(); + } + else { + vditor.tip.show(window.VditorI18n.downloadTip, 0); + } +}; +var exportMarkdown = function (vditor) { + var content = getMarkdown(vditor); + download(vditor, content, content.substr(0, 10) + ".md"); +}; +var exportPDF = function (vditor) { + vditor.tip.show(window.VditorI18n.generate, 3800); + var iframe = document.querySelector("#vditorExportIframe"); + iframe.contentDocument.open(); + iframe.contentDocument.write("<link rel=\"stylesheet\" href=\"".concat(vditor.options.cdn, "/dist/index.css\"/>\n<script src=\"").concat(vditor.options.cdn, "/dist/method.min.js\"></script>\n<div id=\"preview\" style=\"width: 800px\"></div>\n<script>\nwindow.addEventListener(\"message\", (e) => {\n if(!e.data) {\n return;\n }\n Vditor.preview(document.getElementById('preview'), e.data, {\n cdn: \"").concat(vditor.options.cdn, "\",\n markdown: {\n theme: ").concat(JSON.stringify(vditor.options.preview.theme), "\n },\n hljs: {\n style: \"").concat(vditor.options.preview.hljs.style, "\"\n }\n });\n setTimeout(() => {\n window.print();\n }, 3600);\n}, false);\n</script>")); + iframe.contentDocument.close(); + setTimeout(function () { + iframe.contentWindow.postMessage(getMarkdown(vditor), "*"); + }, 200); +}; +var exportHTML = function (vditor) { + var content = getHTML(vditor); + var html = "<html><head><link rel=\"stylesheet\" type=\"text/css\" href=\"".concat(vditor.options.cdn, "/dist/index.css\"/>\n<script src=\"").concat(vditor.options.cdn, "/dist/js/i18n/").concat(vditor.options.lang, ".js\"></script>\n<script src=\"").concat(vditor.options.cdn, "/dist/method.min.js\"></script></head>\n<body><div class=\"vditor-reset\" id=\"preview\">").concat(content, "</div>\n<script>\n const previewElement = document.getElementById('preview')\n Vditor.setContentTheme('").concat(vditor.options.preview.theme.current, "', '").concat(vditor.options.preview.theme.path, "');\n Vditor.codeRender(previewElement);\n Vditor.highlightRender(").concat(JSON.stringify(vditor.options.preview.hljs), ", previewElement, '").concat(vditor.options.cdn, "');\n Vditor.mathRender(previewElement, {\n cdn: '").concat(vditor.options.cdn, "',\n math: ").concat(JSON.stringify(vditor.options.preview.math), ",\n });\n Vditor.mermaidRender(previewElement, '").concat(vditor.options.cdn, "', '").concat(vditor.options.theme, "');\n Vditor.SMILESRender(previewElement, '").concat(vditor.options.cdn, "', '").concat(vditor.options.theme, "');\n Vditor.markmapRender(previewElement, '").concat(vditor.options.cdn, "');\n Vditor.flowchartRender(previewElement, '").concat(vditor.options.cdn, "');\n Vditor.graphvizRender(previewElement, '").concat(vditor.options.cdn, "');\n Vditor.chartRender(previewElement, '").concat(vditor.options.cdn, "', '").concat(vditor.options.theme, "');\n Vditor.mindmapRender(previewElement, '").concat(vditor.options.cdn, "', '").concat(vditor.options.theme, "');\n Vditor.abcRender(previewElement, '").concat(vditor.options.cdn, "');\n ").concat(vditor.options.preview.render.media.enable ? 'Vditor.mediaRender(previewElement);' : "", "\n Vditor.speechRender(previewElement);\n</script>\n<script src=\"").concat(vditor.options.cdn, "/dist/js/icons/").concat(vditor.options.icon, ".js\"></script></body></html>"); + download(vditor, html, content.substr(0, 10) + ".html"); +}; + +;// CONCATENATED MODULE: ./src/ts/toolbar/Export.ts +var Export_extends = (undefined && undefined.__extends) || (function () { + var extendStatics = function (d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + return function (d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; +})(); + + + + +var Export = /** @class */ (function (_super) { + Export_extends(Export, _super); + function Export(vditor, menuItem) { + var _this = _super.call(this, vditor, menuItem) || this; + var actionBtn = _this.element.children[0]; + var panelElement = document.createElement("div"); + panelElement.className = "vditor-hint".concat(menuItem.level === 2 ? "" : " vditor-panel--arrow"); + panelElement.innerHTML = "<button data-type=\"markdown\">Markdown</button>\n<button data-type=\"pdf\">PDF</button>\n<button data-type=\"html\">HTML</button>"; + panelElement.addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + var btnElement = event.target; + if (btnElement.tagName === "BUTTON") { + switch (btnElement.getAttribute("data-type")) { + case "markdown": + exportMarkdown(vditor); + break; + case "pdf": + exportPDF(vditor); + break; + case "html": + exportHTML(vditor); + break; + default: + break; + } + hidePanel(vditor, ["subToolbar"]); + event.preventDefault(); + event.stopPropagation(); + } + }); + _this.element.appendChild(panelElement); + toggleSubMenu(vditor, panelElement, actionBtn, menuItem.level); + return _this; + } + return Export; +}(MenuItem)); + + +;// CONCATENATED MODULE: ./src/ts/toolbar/Fullscreen.ts +var Fullscreen_extends = (undefined && undefined.__extends) || (function () { + var extendStatics = function (d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + return function (d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; +})(); + + + +var Fullscreen = /** @class */ (function (_super) { + Fullscreen_extends(Fullscreen, _super); + function Fullscreen(vditor, menuItem) { + var _this = _super.call(this, vditor, menuItem) || this; + _this._bindEvent(vditor, menuItem); + return _this; + } + Fullscreen.prototype._bindEvent = function (vditor, menuItem) { + this.element.children[0].addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + event.preventDefault(); + if (vditor.element.className.includes("vditor--fullscreen")) { + if (!menuItem.level) { + this.innerHTML = menuItem.icon; + } + vditor.element.style.zIndex = ""; + document.body.style.overflow = ""; + vditor.element.classList.remove("vditor--fullscreen"); + Object.keys(vditor.toolbar.elements).forEach(function (key) { + var svgElement = vditor.toolbar.elements[key].firstChild; + if (svgElement) { + svgElement.className = svgElement.className.replace("__s", "__n"); + vditor.options.toolbar.forEach(function (item) { + if (typeof item !== "string" && item.tipPosition && item.name === svgElement.dataset.type) { + svgElement.className = "vditor-tooltipped vditor-tooltipped__".concat(item.tipPosition); + } + }); + } + }); + if (vditor.counter) { + vditor.counter.element.className = vditor.counter.element.className.replace("__s", "__n"); + } + } + else { + if (!menuItem.level) { + this.innerHTML = '<svg><use xlink:href="#vditor-icon-contract"></use></svg>'; + } + vditor.element.style.zIndex = vditor.options.fullscreen.index.toString(); + document.body.style.overflow = "hidden"; + vditor.element.classList.add("vditor--fullscreen"); + Object.keys(vditor.toolbar.elements).forEach(function (key) { + var svgElement = vditor.toolbar.elements[key].firstChild; + if (svgElement) { + svgElement.className = svgElement.className.replace("__n", "__s"); + } + }); + if (vditor.counter) { + vditor.counter.element.className = vditor.counter.element.className.replace("__n", "__s"); + } + } + if (vditor.devtools) { + vditor.devtools.renderEchart(vditor); + } + if (menuItem.click) { + menuItem.click(event, vditor); + } + setPadding(vditor); + setTypewriterPosition(vditor); + }); + }; + return Fullscreen; +}(MenuItem)); + + +;// CONCATENATED MODULE: ./src/ts/toolbar/Headings.ts +var Headings_extends = (undefined && undefined.__extends) || (function () { + var extendStatics = function (d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + return function (d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; +})(); + + + + + + + + +var Headings = /** @class */ (function (_super) { + Headings_extends(Headings, _super); + function Headings(vditor, menuItem) { + var _this = _super.call(this, vditor, menuItem) || this; + var panelElement = document.createElement("div"); + panelElement.className = "vditor-hint vditor-panel--arrow"; + panelElement.innerHTML = "<button data-tag=\"h1\" data-value=\"# \">".concat(window.VditorI18n.heading1, " ").concat((0,compatibility/* updateHotkeyTip */.ns)("<⌥⌘1>"), "</button>\n<button data-tag=\"h2\" data-value=\"## \">").concat(window.VditorI18n.heading2, " <").concat((0,compatibility/* updateHotkeyTip */.ns)("⌥⌘2"), "></button>\n<button data-tag=\"h3\" data-value=\"### \">").concat(window.VditorI18n.heading3, " <").concat((0,compatibility/* updateHotkeyTip */.ns)("⌥⌘3"), "></button>\n<button data-tag=\"h4\" data-value=\"#### \">").concat(window.VditorI18n.heading4, " <").concat((0,compatibility/* updateHotkeyTip */.ns)("⌥⌘4"), "></button>\n<button data-tag=\"h5\" data-value=\"##### \">").concat(window.VditorI18n.heading5, " <").concat((0,compatibility/* updateHotkeyTip */.ns)("⌥⌘5"), "></button>\n<button data-tag=\"h6\" data-value=\"###### \">").concat(window.VditorI18n.heading6, " <").concat((0,compatibility/* updateHotkeyTip */.ns)("⌥⌘6"), "></button>"); + _this.element.appendChild(panelElement); + _this._bindEvent(vditor, panelElement); + return _this; + } + Headings.prototype._bindEvent = function (vditor, panelElement) { + var actionBtn = this.element.children[0]; + actionBtn.addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + event.preventDefault(); + // https://github.com/Vanessa219/vditor/issues/1391 + clearTimeout(vditor.wysiwyg.afterRenderTimeoutId); + clearTimeout(vditor.ir.processTimeoutId); + clearTimeout(vditor.sv.processTimeoutId); + if (actionBtn.classList.contains(constants/* Constants.CLASS_MENU_DISABLED */.g.CLASS_MENU_DISABLED)) { + return; + } + actionBtn.blur(); + if (actionBtn.classList.contains("vditor-menu--current")) { + if (vditor.currentMode === "wysiwyg") { + removeHeading(vditor); + afterRenderEvent(vditor); + } + else if (vditor.currentMode === "ir") { + process_processHeading(vditor, ""); + } + actionBtn.classList.remove("vditor-menu--current"); + } + else { + hidePanel(vditor, ["subToolbar"]); + panelElement.style.display = "block"; + } + }); + for (var i = 0; i < 6; i++) { + panelElement.children.item(i).addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + event.preventDefault(); + if (vditor.currentMode === "wysiwyg") { + setHeading(vditor, event.target.getAttribute("data-tag")); + afterRenderEvent(vditor); + actionBtn.classList.add("vditor-menu--current"); + } + else if (vditor.currentMode === "ir") { + process_processHeading(vditor, event.target.getAttribute("data-value")); + actionBtn.classList.add("vditor-menu--current"); + } + else { + processHeading(vditor, event.target.getAttribute("data-value")); + } + panelElement.style.display = "none"; + }); + } + }; + return Headings; +}(MenuItem)); + + +;// CONCATENATED MODULE: ./src/ts/toolbar/Help.ts +var Help_extends = (undefined && undefined.__extends) || (function () { + var extendStatics = function (d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + return function (d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; +})(); + + +var Help = /** @class */ (function (_super) { + Help_extends(Help, _super); + function Help(vditor, menuItem) { + var _this = _super.call(this, vditor, menuItem) || this; + _this.element.children[0].addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + event.preventDefault(); + vditor.tip.show("<div style=\"margin-bottom:14px;font-size: 14px;line-height: 22px;min-width:300px;max-width: 360px;display: flex;\">\n<div style=\"margin-top: 14px;flex: 1\">\n <div>Markdown \u4F7F\u7528\u6307\u5357</div>\n <ul style=\"list-style: none\">\n <li><a href=\"https://ld246.com/article/1583308420519\" target=\"_blank\">\u8BED\u6CD5\u901F\u67E5\u624B\u518C</a></li>\n <li><a href=\"https://ld246.com/article/1583129520165\" target=\"_blank\">\u57FA\u7840\u8BED\u6CD5</a></li>\n <li><a href=\"https://ld246.com/article/1583305480675\" target=\"_blank\">\u6269\u5C55\u8BED\u6CD5</a></li>\n <li><a href=\"https://ld246.com/article/1582778815353\" target=\"_blank\">\u952E\u76D8\u5FEB\u6377\u952E</a></li>\n </ul>\n</div>\n<div style=\"margin-top: 14px;flex: 1\">\n <div>Vditor \u652F\u6301</div>\n <ul style=\"list-style: none\">\n <li><a href=\"https://github.com/Vanessa219/vditor/issues\" target=\"_blank\">Issues</a></li>\n <li><a href=\"https://ld246.com/tag/vditor\" target=\"_blank\">\u5B98\u65B9\u8BA8\u8BBA\u533A</a></li>\n <li><a href=\"https://ld246.com/article/1549638745630\" target=\"_blank\">\u5F00\u53D1\u624B\u518C</a></li>\n <li><a href=\"https://ld246.com/guide/markdown\" target=\"_blank\">\u6F14\u793A\u5730\u5740</a></li>\n </ul>\n</div></div>", 0); + }); + return _this; + } + return Help; +}(MenuItem)); + + +;// CONCATENATED MODULE: ./src/ts/toolbar/Indent.ts +var Indent_extends = (undefined && undefined.__extends) || (function () { + var extendStatics = function (d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + return function (d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; +})(); + + + + + + +var Indent = /** @class */ (function (_super) { + Indent_extends(Indent, _super); + function Indent(vditor, menuItem) { + var _this = _super.call(this, vditor, menuItem) || this; + _this.element.children[0].addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + event.preventDefault(); + if (_this.element.firstElementChild.classList.contains(constants/* Constants.CLASS_MENU_DISABLED */.g.CLASS_MENU_DISABLED) || + vditor.currentMode === "sv") { + return; + } + var range = (0,selection/* getEditorRange */.zh)(vditor); + var liElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(range.startContainer, "LI"); + if (liElement) { + listIndent(vditor, liElement, range); + } + }); + return _this; + } + return Indent; +}(MenuItem)); + + +;// CONCATENATED MODULE: ./src/ts/toolbar/Info.ts +var Info_extends = (undefined && undefined.__extends) || (function () { + var extendStatics = function (d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + return function (d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; +})(); + + + +var Info = /** @class */ (function (_super) { + Info_extends(Info, _super); + function Info(vditor, menuItem) { + var _this = _super.call(this, vditor, menuItem) || this; + _this.element.children[0].addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + event.preventDefault(); + vditor.tip.show("<div style=\"max-width: 520px; font-size: 14px;line-height: 22px;margin-bottom: 14px;\">\n<p style=\"text-align: center;margin: 14px 0\">\n <em>\u4E0B\u4E00\u4EE3\u7684 Markdown \u7F16\u8F91\u5668\uFF0C\u4E3A\u672A\u6765\u800C\u6784\u5EFA</em>\n</p>\n<div style=\"display: flex;margin-bottom: 14px;flex-wrap: wrap;align-items: center\">\n <img src=\"https://unpkg.com/vditor/dist/images/logo.png\" style=\"margin: 0 auto;height: 68px\"/>\n <div>  </div>\n <div style=\"flex: 1;min-width: 250px\">\n Vditor \u662F\u4E00\u6B3E\u6D4F\u89C8\u5668\u7AEF\u7684 Markdown \u7F16\u8F91\u5668\uFF0C\u652F\u6301\u6240\u89C1\u5373\u6240\u5F97\u3001\u5373\u65F6\u6E32\u67D3\uFF08\u7C7B\u4F3C Typora\uFF09\u548C\u5206\u5C4F\u9884\u89C8\u6A21\u5F0F\u3002\n \u5B83\u4F7F\u7528 TypeScript \u5B9E\u73B0\uFF0C\u652F\u6301\u539F\u751F JavaScript \u4EE5\u53CA Vue\u3001React\u3001Angular \u548C Svelte \u7B49\u6846\u67B6\u3002\n </div>\n</div>\n<div style=\"display: flex;flex-wrap: wrap;\">\n <ul style=\"list-style: none;flex: 1;min-width:148px\">\n <li>\n \u9879\u76EE\u5730\u5740\uFF1A<a href=\"https://b3log.org/vditor\" target=\"_blank\">b3log.org/vditor</a>\n </li>\n <li>\n \u5F00\u6E90\u534F\u8BAE\uFF1AMIT\n </li>\n </ul>\n <ul style=\"list-style: none;margin-right: 18px\">\n <li>\n \u7EC4\u4EF6\u7248\u672C\uFF1AVditor v".concat(constants/* VDITOR_VERSION */.H, " / Lute v").concat(Lute.Version, "\n </li>\n <li>\n \u8D5E\u52A9\u6350\u8D60\uFF1A<a href=\"https://ld246.com/sponsor\" target=\"_blank\">https://ld246.com/sponsor</a>\n </li>\n </ul>\n</div>\n</div>"), 0); + }); + return _this; + } + return Info; +}(MenuItem)); + + +;// CONCATENATED MODULE: ./src/ts/toolbar/InsertAfter.ts +var InsertAfter_extends = (undefined && undefined.__extends) || (function () { + var extendStatics = function (d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + return function (d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; +})(); + + + + +var InsertAfter = /** @class */ (function (_super) { + InsertAfter_extends(InsertAfter, _super); + function InsertAfter(vditor, menuItem) { + var _this = _super.call(this, vditor, menuItem) || this; + _this.element.children[0].addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + event.preventDefault(); + if (_this.element.firstElementChild.classList.contains(constants/* Constants.CLASS_MENU_DISABLED */.g.CLASS_MENU_DISABLED) || + vditor.currentMode === "sv") { + return; + } + insertEmptyBlock(vditor, "afterend"); + }); + return _this; + } + return InsertAfter; +}(MenuItem)); + + +;// CONCATENATED MODULE: ./src/ts/toolbar/InsertBefore.ts +var InsertBefore_extends = (undefined && undefined.__extends) || (function () { + var extendStatics = function (d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + return function (d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; +})(); + + + + +var InsertBefore = /** @class */ (function (_super) { + InsertBefore_extends(InsertBefore, _super); + function InsertBefore(vditor, menuItem) { + var _this = _super.call(this, vditor, menuItem) || this; + _this.element.children[0].addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + event.preventDefault(); + if (_this.element.firstElementChild.classList.contains(constants/* Constants.CLASS_MENU_DISABLED */.g.CLASS_MENU_DISABLED) || + vditor.currentMode === "sv") { + return; + } + insertEmptyBlock(vditor, "beforebegin"); + }); + return _this; + } + return InsertBefore; +}(MenuItem)); + + +;// CONCATENATED MODULE: ./src/ts/toolbar/Outdent.ts +var Outdent_extends = (undefined && undefined.__extends) || (function () { + var extendStatics = function (d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + return function (d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; +})(); + + + + + + +var Outdent = /** @class */ (function (_super) { + Outdent_extends(Outdent, _super); + function Outdent(vditor, menuItem) { + var _this = _super.call(this, vditor, menuItem) || this; + _this.element.children[0].addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + event.preventDefault(); + if (_this.element.firstElementChild.classList.contains(constants/* Constants.CLASS_MENU_DISABLED */.g.CLASS_MENU_DISABLED) || + vditor.currentMode === "sv") { + return; + } + var range = (0,selection/* getEditorRange */.zh)(vditor); + var liElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(range.startContainer, "LI"); + if (liElement) { + listOutdent(vditor, liElement, range, liElement.parentElement); + } + }); + return _this; + } + return Outdent; +}(MenuItem)); + + +;// CONCATENATED MODULE: ./src/ts/toolbar/Outline.ts +var Outline_extends = (undefined && undefined.__extends) || (function () { + var extendStatics = function (d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + return function (d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; +})(); + + + +var Outline_Outline = /** @class */ (function (_super) { + Outline_extends(Outline, _super); + function Outline(vditor, menuItem) { + var _this = _super.call(this, vditor, menuItem) || this; + if (vditor.options.outline) { + _this.element.firstElementChild.classList.add("vditor-menu--current"); + } + _this.element.children[0].addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + event.preventDefault(); + var btnElement = vditor.toolbar.elements.outline.firstElementChild; + if (btnElement.classList.contains(constants/* Constants.CLASS_MENU_DISABLED */.g.CLASS_MENU_DISABLED)) { + return; + } + vditor.options.outline.enable = !_this.element.firstElementChild.classList.contains("vditor-menu--current"); + vditor.outline.toggle(vditor, vditor.options.outline.enable); + }); + return _this; + } + return Outline; +}(MenuItem)); + + +;// CONCATENATED MODULE: ./src/ts/toolbar/Preview.ts +var Preview_extends = (undefined && undefined.__extends) || (function () { + var extendStatics = function (d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + return function (d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; +})(); + + + + + +var Preview_Preview = /** @class */ (function (_super) { + Preview_extends(Preview, _super); + function Preview(vditor, menuItem) { + var _this = _super.call(this, vditor, menuItem) || this; + _this._bindEvent(vditor); + return _this; + } + Preview.prototype._bindEvent = function (vditor) { + var _this = this; + this.element.children[0].addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + event.preventDefault(); + var btnElement = _this.element.firstElementChild; + if (btnElement.classList.contains(constants/* Constants.CLASS_MENU_DISABLED */.g.CLASS_MENU_DISABLED)) { + return; + } + var toolbars = constants/* Constants.EDIT_TOOLBARS.concat */.g.EDIT_TOOLBARS.concat(["both", "edit-mode", "devtools"]); + if (btnElement.classList.contains("vditor-menu--current")) { + btnElement.classList.remove("vditor-menu--current"); + if (vditor.currentMode === "sv") { + vditor.sv.element.style.display = "block"; + if (vditor.options.preview.mode === "both") { + vditor.preview.element.style.display = "block"; + } + else { + vditor.preview.element.style.display = "none"; + } + } + else { + vditor[vditor.currentMode].element.parentElement.style.display = "block"; + vditor.preview.element.style.display = "none"; + } + enableToolbar(vditor.toolbar.elements, toolbars); + vditor.outline.render(vditor); + } + else { + disableToolbar(vditor.toolbar.elements, toolbars); + vditor.preview.element.style.display = "block"; + if (vditor.currentMode === "sv") { + vditor.sv.element.style.display = "none"; + } + else { + vditor[vditor.currentMode].element.parentElement.style.display = "none"; + } + vditor.preview.render(vditor); + btnElement.classList.add("vditor-menu--current"); + hidePanel(vditor, ["subToolbar", "hint", "popover"]); + setTimeout(function () { + vditor.outline.render(vditor); + }, vditor.options.preview.delay + 10); + } + setPadding(vditor); + }); + }; + return Preview; +}(MenuItem)); + + +;// CONCATENATED MODULE: ./src/ts/util/RecordMedia.ts +var RecordMedia = /** @class */ (function () { + function RecordMedia(e) { + this.SAMPLE_RATE = 5000; // 44100 suggested by demos; + this.isRecording = false; + this.readyFlag = false; + this.leftChannel = []; + this.rightChannel = []; + this.recordingLength = 0; + var context; + // creates the audio context + if (typeof AudioContext !== "undefined") { + context = new AudioContext(); + } + else if (webkitAudioContext) { + context = new webkitAudioContext(); + } + else { + return; + } + this.DEFAULT_SAMPLE_RATE = context.sampleRate; + // creates a gain node + var volume = context.createGain(); + // creates an audio node from the microphone incoming stream + var audioInput = context.createMediaStreamSource(e); + // connect the stream to the gain node + audioInput.connect(volume); + /* From the spec: The size of the buffer controls how frequently the audioprocess event is + dispatched and how many sample-frames need to be processed each call. + Lower values for buffer size will result in a lower (better) latency. + Higher values will be necessary to avoid audio breakup and glitches */ + this.recorder = context.createScriptProcessor(2048, 2, 1); + // The onaudioprocess event needs to be defined externally, so make sure it is not set: + this.recorder.onaudioprocess = null; + // we connect the recorder + volume.connect(this.recorder); + this.recorder.connect(context.destination); + this.readyFlag = true; + } + // Publicly accessible methods: + RecordMedia.prototype.cloneChannelData = function (leftChannelData, rightChannelData) { + this.leftChannel.push(new Float32Array(leftChannelData)); + this.rightChannel.push(new Float32Array(rightChannelData)); + this.recordingLength += 2048; + }; + RecordMedia.prototype.startRecordingNewWavFile = function () { + if (this.readyFlag) { + this.isRecording = true; + this.leftChannel.length = this.rightChannel.length = 0; + this.recordingLength = 0; + } + }; + RecordMedia.prototype.stopRecording = function () { + this.isRecording = false; + }; + RecordMedia.prototype.buildWavFileBlob = function () { + // we flat the left and right channels down + var leftBuffer = this.mergeBuffers(this.leftChannel); + var rightBuffer = this.mergeBuffers(this.rightChannel); + // Interleave the left and right channels together: + var interleaved = new Float32Array(leftBuffer.length); + for (var i = 0; i < leftBuffer.length; ++i) { + interleaved[i] = 0.5 * (leftBuffer[i] + rightBuffer[i]); + } + // Downsample the audio data if necessary: + if (this.DEFAULT_SAMPLE_RATE > this.SAMPLE_RATE) { + interleaved = this.downSampleBuffer(interleaved, this.SAMPLE_RATE); + } + var totalByteCount = (44 + interleaved.length * 2); + var buffer = new ArrayBuffer(totalByteCount); + var view = new DataView(buffer); + // Build the RIFF chunk descriptor: + this.writeUTFBytes(view, 0, "RIFF"); + view.setUint32(4, totalByteCount, true); + this.writeUTFBytes(view, 8, "WAVE"); + // Build the FMT sub-chunk: + this.writeUTFBytes(view, 12, "fmt "); // subchunk1 ID is format + view.setUint32(16, 16, true); // The sub-chunk size is 16. + view.setUint16(20, 1, true); // The audio format is 1. + view.setUint16(22, 1, true); // Number of interleaved channels. + view.setUint32(24, this.SAMPLE_RATE, true); // Sample rate. + view.setUint32(28, this.SAMPLE_RATE * 2, true); // Byte rate. + view.setUint16(32, 2, true); // Block align + view.setUint16(34, 16, true); // Bits per sample. + // Build the data sub-chunk: + var subChunk2ByteCount = interleaved.length * 2; + this.writeUTFBytes(view, 36, "data"); + view.setUint32(40, subChunk2ByteCount, true); + // Write the PCM samples to the view: + var lng = interleaved.length; + var index = 44; + var volume = 1; + for (var j = 0; j < lng; j++) { + view.setInt16(index, interleaved[j] * (0x7FFF * volume), true); + index += 2; + } + return new Blob([view], { type: "audio/wav" }); + }; + RecordMedia.prototype.downSampleBuffer = function (buffer, rate) { + if (rate === this.DEFAULT_SAMPLE_RATE) { + return buffer; + } + if (rate > this.DEFAULT_SAMPLE_RATE) { + // throw "downsampling rate show be smaller than original sample rate"; + return buffer; + } + var sampleRateRatio = this.DEFAULT_SAMPLE_RATE / rate; + var newLength = Math.round(buffer.length / sampleRateRatio); + var result = new Float32Array(newLength); + var offsetResult = 0; + var offsetBuffer = 0; + while (offsetResult < result.length) { + var nextOffsetBuffer = Math.round((offsetResult + 1) * sampleRateRatio); + var accum = 0; + var count = 0; + for (var i = offsetBuffer; i < nextOffsetBuffer && i < buffer.length; i++) { + accum += buffer[i]; + count++; + } + result[offsetResult] = accum / count; + offsetResult++; + offsetBuffer = nextOffsetBuffer; + } + return result; + }; + RecordMedia.prototype.mergeBuffers = function (desiredChannelBuffer) { + var result = new Float32Array(this.recordingLength); + var offset = 0; + var lng = desiredChannelBuffer.length; + for (var i = 0; i < lng; ++i) { + var buffer = desiredChannelBuffer[i]; + result.set(buffer, offset); + offset += buffer.length; + } + return result; + }; + RecordMedia.prototype.writeUTFBytes = function (view, offset, value) { + var lng = value.length; + for (var i = 0; i < lng; i++) { + view.setUint8(offset + i, value.charCodeAt(i)); + } + }; + return RecordMedia; +}()); + + +;// CONCATENATED MODULE: ./src/ts/toolbar/Record.ts +var Record_extends = (undefined && undefined.__extends) || (function () { + var extendStatics = function (d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + return function (d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; +})(); + + + + + +var Record = /** @class */ (function (_super) { + Record_extends(Record, _super); + function Record(vditor, menuItem) { + var _this = _super.call(this, vditor, menuItem) || this; + _this._bindEvent(vditor); + return _this; + } + Record.prototype._bindEvent = function (vditor) { + var _this = this; + var mediaRecorder; + this.element.children[0].addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + event.preventDefault(); + if (_this.element.firstElementChild.classList.contains(constants/* Constants.CLASS_MENU_DISABLED */.g.CLASS_MENU_DISABLED)) { + return; + } + var editorElement = vditor[vditor.currentMode].element; + if (!mediaRecorder) { + navigator.mediaDevices.getUserMedia({ audio: true }).then(function (mediaStream) { + mediaRecorder = new RecordMedia(mediaStream); + mediaRecorder.recorder.onaudioprocess = function (e) { + // Do nothing if not recording: + if (!mediaRecorder.isRecording) { + return; + } + // Copy the data from the input buffers; + var left = e.inputBuffer.getChannelData(0); + var right = e.inputBuffer.getChannelData(1); + mediaRecorder.cloneChannelData(left, right); + }; + mediaRecorder.startRecordingNewWavFile(); + vditor.tip.show(window.VditorI18n.recording); + editorElement.setAttribute("contenteditable", "false"); + _this.element.children[0].classList.add("vditor-menu--current"); + }).catch(function () { + vditor.tip.show(window.VditorI18n["record-tip"]); + }); + return; + } + if (mediaRecorder.isRecording) { + mediaRecorder.stopRecording(); + vditor.tip.hide(); + var file = new File([mediaRecorder.buildWavFileBlob()], "record".concat((new Date()).getTime(), ".wav"), { type: "video/webm" }); + uploadFiles(vditor, [file]); + _this.element.children[0].classList.remove("vditor-menu--current"); + } + else { + vditor.tip.show(window.VditorI18n.recording); + editorElement.setAttribute("contenteditable", "false"); + mediaRecorder.startRecordingNewWavFile(); + _this.element.children[0].classList.add("vditor-menu--current"); + } + }); + }; + return Record; +}(MenuItem)); + + +;// CONCATENATED MODULE: ./src/ts/toolbar/Redo.ts +var Redo_extends = (undefined && undefined.__extends) || (function () { + var extendStatics = function (d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + return function (d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; +})(); + + + + +var Redo = /** @class */ (function (_super) { + Redo_extends(Redo, _super); + function Redo(vditor, menuItem) { + var _this = _super.call(this, vditor, menuItem) || this; + disableToolbar({ redo: _this.element }, ["redo"]); + _this.element.children[0].addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + event.preventDefault(); + if (_this.element.firstElementChild.classList.contains(constants/* Constants.CLASS_MENU_DISABLED */.g.CLASS_MENU_DISABLED)) { + return; + } + vditor.undo.redo(vditor); + }); + return _this; + } + return Redo; +}(MenuItem)); + + +;// CONCATENATED MODULE: ./src/ts/toolbar/Undo.ts +var Undo_extends = (undefined && undefined.__extends) || (function () { + var extendStatics = function (d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + return function (d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; +})(); + + + + +var Undo = /** @class */ (function (_super) { + Undo_extends(Undo, _super); + function Undo(vditor, menuItem) { + var _this = _super.call(this, vditor, menuItem) || this; + disableToolbar({ undo: _this.element }, ["undo"]); + _this.element.children[0].addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + event.preventDefault(); + if (_this.element.firstElementChild.classList.contains(constants/* Constants.CLASS_MENU_DISABLED */.g.CLASS_MENU_DISABLED)) { + return; + } + vditor.undo.undo(vditor); + }); + return _this; + } + return Undo; +}(MenuItem)); + + +;// CONCATENATED MODULE: ./src/ts/toolbar/Upload.ts +var Upload_extends = (undefined && undefined.__extends) || (function () { + var extendStatics = function (d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + return function (d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; +})(); + + + + +var Upload_Upload = /** @class */ (function (_super) { + Upload_extends(Upload, _super); + function Upload(vditor, menuItem) { + var _this = _super.call(this, vditor, menuItem) || this; + var inputHTML = '<input type="file"'; + if (vditor.options.upload.multiple) { + inputHTML += ' multiple="multiple"'; + } + if (vditor.options.upload.accept) { + inputHTML += " accept=\"".concat(vditor.options.upload.accept, "\""); + } + _this.element.children[0].innerHTML = "".concat((menuItem.icon || '<svg><use xlink:href="#vditor-icon-upload"></use></svg>')).concat(inputHTML, ">"); + _this._bindEvent(vditor); + return _this; + } + Upload.prototype._bindEvent = function (vditor) { + var _this = this; + this.element.children[0].addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + if (_this.element.firstElementChild.classList.contains(constants/* Constants.CLASS_MENU_DISABLED */.g.CLASS_MENU_DISABLED)) { + event.stopPropagation(); + event.preventDefault(); + return; + } + }); + this.element.querySelector("input").addEventListener("change", function (event) { + if (_this.element.firstElementChild.classList.contains(constants/* Constants.CLASS_MENU_DISABLED */.g.CLASS_MENU_DISABLED)) { + event.stopPropagation(); + event.preventDefault(); + return; + } + if (event.target.files.length === 0) { + return; + } + uploadFiles(vditor, event.target.files, event.target); + }); + }; + return Upload; +}(MenuItem)); + + +;// CONCATENATED MODULE: ./src/ts/toolbar/index.ts + + + + + + + + + + + + + + + + + + + + + + + + + + + + +var Toolbar = /** @class */ (function () { + function Toolbar(vditor) { + var _this = this; + var options = vditor.options; + this.elements = {}; + this.element = document.createElement("div"); + this.element.className = "vditor-toolbar"; + options.toolbar.forEach(function (menuItem, i) { + var itemElement = _this.genItem(vditor, menuItem, i); + _this.element.appendChild(itemElement); + if (menuItem.toolbar) { + var panelElement_1 = document.createElement("div"); + panelElement_1.className = "vditor-hint vditor-panel--arrow"; + panelElement_1.addEventListener((0,compatibility/* getEventName */.Le)(), function (event) { + panelElement_1.style.display = "none"; + }); + menuItem.toolbar.forEach(function (subMenuItem, subI) { + subMenuItem.level = 2; + panelElement_1.appendChild(_this.genItem(vditor, subMenuItem, i + subI)); + }); + itemElement.appendChild(panelElement_1); + toggleSubMenu(vditor, panelElement_1, itemElement.children[0], 2); + } + }); + if (vditor.options.toolbarConfig.hide) { + this.element.classList.add("vditor-toolbar--hide"); + } + if (vditor.options.toolbarConfig.pin) { + this.element.classList.add("vditor-toolbar--pin"); + } + if (vditor.options.counter.enable) { + vditor.counter = new Counter(vditor); + this.element.appendChild(vditor.counter.element); + } + } + Toolbar.prototype.updateConfig = function (vditor, options) { + vditor.options.toolbarConfig = Object.assign({ + hide: false, + pin: false, + }, options); + if (vditor.options.toolbarConfig.hide) { + this.element.classList.add("vditor-toolbar--hide"); + } + else { + this.element.classList.remove("vditor-toolbar--hide"); + } + if (vditor.options.toolbarConfig.pin) { + this.element.classList.add("vditor-toolbar--pin"); + } + else { + this.element.classList.remove("vditor-toolbar--pin"); + } + }; + Toolbar.prototype.genItem = function (vditor, menuItem, index) { + var menuItemObj; + switch (menuItem.name) { + case "bold": + case "italic": + case "more": + case "strike": + case "line": + case "quote": + case "list": + case "ordered-list": + case "check": + case "code": + case "inline-code": + case "link": + case "table": + menuItemObj = new MenuItem(vditor, menuItem); + break; + case "emoji": + menuItemObj = new Emoji(vditor, menuItem); + break; + case "headings": + menuItemObj = new Headings(vditor, menuItem); + break; + case "|": + menuItemObj = new Divider(); + break; + case "br": + menuItemObj = new Br(); + break; + case "undo": + menuItemObj = new Undo(vditor, menuItem); + break; + case "redo": + menuItemObj = new Redo(vditor, menuItem); + break; + case "help": + menuItemObj = new Help(vditor, menuItem); + break; + case "both": + menuItemObj = new Both(vditor, menuItem); + break; + case "preview": + menuItemObj = new Preview_Preview(vditor, menuItem); + break; + case "fullscreen": + menuItemObj = new Fullscreen(vditor, menuItem); + break; + case "upload": + menuItemObj = new Upload_Upload(vditor, menuItem); + break; + case "record": + menuItemObj = new Record(vditor, menuItem); + break; + case "info": + menuItemObj = new Info(vditor, menuItem); + break; + case "edit-mode": + menuItemObj = new EditMode(vditor, menuItem); + break; + case "devtools": + menuItemObj = new Devtools(vditor, menuItem); + break; + case "outdent": + menuItemObj = new Outdent(vditor, menuItem); + break; + case "indent": + menuItemObj = new Indent(vditor, menuItem); + break; + case "outline": + menuItemObj = new Outline_Outline(vditor, menuItem); + break; + case "insert-after": + menuItemObj = new InsertAfter(vditor, menuItem); + break; + case "insert-before": + menuItemObj = new InsertBefore(vditor, menuItem); + break; + case "code-theme": + menuItemObj = new CodeTheme(vditor, menuItem); + break; + case "content-theme": + menuItemObj = new ContentTheme(vditor, menuItem); + break; + case "export": + menuItemObj = new Export(vditor, menuItem); + break; + default: + menuItemObj = new Custom(vditor, menuItem); + break; + } + if (!menuItemObj) { + return; + } + var key = menuItem.name; + if (key === "br" || key === "|") { + key = key + index; + } + this.elements[key] = menuItemObj.element; + return menuItemObj.element; + }; + return Toolbar; +}()); + + +// EXTERNAL MODULE: ./node_modules/.pnpm/diff-match-patch@1.0.5/node_modules/diff-match-patch/index.js +var diff_match_patch = __webpack_require__(173); +;// CONCATENATED MODULE: ./src/ts/undo/index.ts + + + + + + + + + +var undo_Undo = /** @class */ (function () { + function Undo() { + this.stackSize = 50; + this.resetStack(); + // @ts-ignore + this.dmp = new diff_match_patch(); + } + Undo.prototype.clearStack = function (vditor) { + this.resetStack(); + this.resetIcon(vditor); + }; + Undo.prototype.resetIcon = function (vditor) { + if (!vditor.toolbar) { + return; + } + if (this[vditor.currentMode].undoStack.length > 1) { + enableToolbar(vditor.toolbar.elements, ["undo"]); + } + else { + disableToolbar(vditor.toolbar.elements, ["undo"]); + } + if (this[vditor.currentMode].redoStack.length !== 0) { + enableToolbar(vditor.toolbar.elements, ["redo"]); + } + else { + disableToolbar(vditor.toolbar.elements, ["redo"]); + } + }; + Undo.prototype.undo = function (vditor) { + if (vditor[vditor.currentMode].element.getAttribute("contenteditable") === "false") { + return; + } + if (this[vditor.currentMode].undoStack.length < 2) { + return; + } + var state = this[vditor.currentMode].undoStack.pop(); + if (!state) { + return; + } + this[vditor.currentMode].redoStack.push(state); + this.renderDiff(state, vditor); + this[vditor.currentMode].hasUndo = true; + // undo 操作后,需要关闭 hint + hidePanel(vditor, ["hint"]); + }; + Undo.prototype.redo = function (vditor) { + if (vditor[vditor.currentMode].element.getAttribute("contenteditable") === "false") { + return; + } + var state = this[vditor.currentMode].redoStack.pop(); + if (!state) { + return; + } + this[vditor.currentMode].undoStack.push(state); + this.renderDiff(state, vditor, true); + }; + Undo.prototype.recordFirstPosition = function (vditor, event) { + if (getSelection().rangeCount === 0) { + return; + } + if (this[vditor.currentMode].undoStack.length !== 1 || this[vditor.currentMode].undoStack[0].length === 0 || + this[vditor.currentMode].redoStack.length > 0) { + return; + } + if ((0,compatibility/* isFirefox */.vU)() && event.key === "Backspace") { + // Firefox 第一次删除无效 + return; + } + if ((0,compatibility/* isSafari */.G6)()) { + // Safari keydown 在 input 之后,不需要重复记录历史 + return; + } + var text = this.addCaret(vditor); + if (text.replace("<wbr>", "").replace(" vditor-ir__node--expand", "") + !== this[vditor.currentMode].undoStack[0][0].diffs[0][1].replace("<wbr>", "")) { + // 当还不没有存入 undo 栈时,按下 ctrl 后会覆盖 lastText + return; + } + this[vditor.currentMode].undoStack[0][0].diffs[0][1] = text; + this[vditor.currentMode].lastText = text; + // 不能添加 setSelectionFocus(cloneRange); 否则 windows chrome 首次输入会烂 + }; + Undo.prototype.addToUndoStack = function (vditor) { + // afterRenderEvent.ts 已经 debounce + var text = this.addCaret(vditor, true); + var diff = this.dmp.diff_main(text, this[vditor.currentMode].lastText, true); + var patchList = this.dmp.patch_make(text, this[vditor.currentMode].lastText, diff); + if (patchList.length === 0 && this[vditor.currentMode].undoStack.length > 0) { + return; + } + this[vditor.currentMode].lastText = text; + this[vditor.currentMode].undoStack.push(patchList); + if (this[vditor.currentMode].undoStack.length > this.stackSize) { + this[vditor.currentMode].undoStack.shift(); + } + if (this[vditor.currentMode].hasUndo) { + this[vditor.currentMode].redoStack = []; + this[vditor.currentMode].hasUndo = false; + disableToolbar(vditor.toolbar.elements, ["redo"]); + } + if (this[vditor.currentMode].undoStack.length > 1) { + enableToolbar(vditor.toolbar.elements, ["undo"]); + } + }; + Undo.prototype.renderDiff = function (state, vditor, isRedo) { + if (isRedo === void 0) { isRedo = false; } + var text; + if (isRedo) { + var redoPatchList = this.dmp.patch_deepCopy(state).reverse(); + redoPatchList.forEach(function (patch) { + patch.diffs.forEach(function (diff) { + diff[0] = -diff[0]; + }); + }); + text = this.dmp.patch_apply(redoPatchList, this[vditor.currentMode].lastText)[0]; + } + else { + text = this.dmp.patch_apply(state, this[vditor.currentMode].lastText)[0]; + } + this[vditor.currentMode].lastText = text; + vditor[vditor.currentMode].element.innerHTML = text; + if (vditor.currentMode !== "sv") { + vditor[vditor.currentMode].element.querySelectorAll(".vditor-".concat(vditor.currentMode, "__preview")) + .forEach(function (blockElement) { + if (blockElement.parentElement.querySelector(".language-echarts")) { + if (vditor.currentMode === "ir") { + blockElement.parentElement.outerHTML = vditor.lute.SpinVditorIRDOM(blockElement.parentElement.outerHTML); + } + else { + blockElement.parentElement.outerHTML = vditor.lute.SpinVditorDOM(blockElement.parentElement.outerHTML); + } + } + }); + vditor[vditor.currentMode].element.querySelectorAll(".vditor-".concat(vditor.currentMode, "__preview[data-render='2']")) + .forEach(function (blockElement) { + processCodeRender(blockElement, vditor); + }); + } + if (!vditor[vditor.currentMode].element.querySelector("wbr")) { + // Safari 第一次输入没有光标,需手动定位到结尾 + var range = getSelection().getRangeAt(0); + range.setEndBefore(vditor[vditor.currentMode].element); + range.collapse(false); + } + else { + (0,selection/* setRangeByWbr */.ib)(vditor[vditor.currentMode].element, vditor[vditor.currentMode].element.ownerDocument.createRange()); + scrollCenter(vditor); + } + renderToc(vditor); + execAfterRender(vditor, { + enableAddUndoStack: false, + enableHint: false, + enableInput: true, + }); + highlightToolbar(vditor); + vditor[vditor.currentMode].element.querySelectorAll(".vditor-".concat(vditor.currentMode, "__preview[data-render='2']")) + .forEach(function (item) { + processCodeRender(item, vditor); + }); + if (this[vditor.currentMode].undoStack.length > 1) { + enableToolbar(vditor.toolbar.elements, ["undo"]); + } + else { + disableToolbar(vditor.toolbar.elements, ["undo"]); + } + if (this[vditor.currentMode].redoStack.length !== 0) { + enableToolbar(vditor.toolbar.elements, ["redo"]); + } + else { + disableToolbar(vditor.toolbar.elements, ["redo"]); + } + }; + Undo.prototype.resetStack = function () { + this.ir = { + hasUndo: false, + lastText: "", + redoStack: [], + undoStack: [], + }; + this.sv = { + hasUndo: false, + lastText: "", + redoStack: [], + undoStack: [], + }; + this.wysiwyg = { + hasUndo: false, + lastText: "", + redoStack: [], + undoStack: [], + }; + }; + Undo.prototype.addCaret = function (vditor, setFocus) { + if (setFocus === void 0) { setFocus = false; } + var cloneRange; + if (getSelection().rangeCount !== 0 && !vditor[vditor.currentMode].element.querySelector("wbr")) { + var range = getSelection().getRangeAt(0); + if (vditor[vditor.currentMode].element.contains(range.startContainer)) { + cloneRange = range.cloneRange(); + var wbrElement = document.createElement("span"); + wbrElement.className = "vditor-wbr"; + range.insertNode(wbrElement); + } + } + // 移除数学公式、echart 渲染 https://github.com/Vanessa219/vditor/issues/1738 + var cloneElement = vditor[vditor.currentMode].element.cloneNode(true); + cloneElement.querySelectorAll(".vditor-".concat(vditor.currentMode, "__preview[data-render='1']")) + .forEach(function (item) { + if (!item.firstElementChild) { + return; + } + if (item.firstElementChild.classList.contains("language-echarts") || + item.firstElementChild.classList.contains("language-plantuml") || + item.firstElementChild.classList.contains("language-mindmap")) { + item.firstElementChild.removeAttribute("_echarts_instance_"); + item.firstElementChild.removeAttribute("data-processed"); + item.firstElementChild.innerHTML = item.previousElementSibling.firstElementChild.innerHTML; + item.setAttribute("data-render", "2"); + } + else if (item.firstElementChild.classList.contains("language-math")) { + item.setAttribute("data-render", "2"); + item.firstElementChild.textContent = item.firstElementChild.getAttribute("data-math"); + item.firstElementChild.removeAttribute("data-math"); + } + }); + var text = cloneElement.innerHTML; + vditor[vditor.currentMode].element.querySelectorAll(".vditor-wbr").forEach(function (item) { + item.remove(); + // 使用 item.outerHTML = "" 会产生 https://github.com/Vanessa219/vditor/pull/686; + }); + if (setFocus && cloneRange) { + (0,selection/* setSelectionFocus */.Hc)(cloneRange); + } + return text.replace('<span class="vditor-wbr"></span>', "<wbr>"); + }; + return Undo; +}()); + + +// EXTERNAL MODULE: ./src/ts/util/merge.ts +var merge = __webpack_require__(673); +;// CONCATENATED MODULE: ./src/ts/util/Options.ts + + +var Options = /** @class */ (function () { + function Options(options) { + this.defaultOptions = { + rtl: false, + after: undefined, + cache: { + enable: true, + }, + cdn: constants/* Constants.CDN */.g.CDN, + classes: { + preview: "", + }, + comment: { + enable: false, + }, + counter: { + enable: false, + type: "markdown", + }, + customRenders: [], + debugger: false, + fullscreen: { + index: 90, + }, + height: "auto", + hint: { + delay: 200, + emoji: { + "+1": "👍", + "-1": "👎", + "confused": "😕", + "eyes": "👀️", + "heart": "❤️", + "rocket": "🚀️", + "smile": "😄", + "tada": "🎉️", + }, + emojiPath: "".concat(constants/* Constants.CDN */.g.CDN, "/dist/images/emoji"), + extend: [], + parse: true, + }, + icon: "ant", + lang: "zh_CN", + mode: "ir", + outline: { + enable: false, + position: "left", + }, + placeholder: "", + preview: { + actions: ["desktop", "tablet", "mobile", "mp-wechat", "zhihu"], + delay: 1000, + hljs: constants/* Constants.HLJS_OPTIONS */.g.HLJS_OPTIONS, + markdown: constants/* Constants.MARKDOWN_OPTIONS */.g.MARKDOWN_OPTIONS, + math: constants/* Constants.MATH_OPTIONS */.g.MATH_OPTIONS, + maxWidth: 800, + mode: "both", + theme: constants/* Constants.THEME_OPTIONS */.g.THEME_OPTIONS, + render: { + media: { + enable: true, + } + } + }, + link: { + isOpen: true, + }, + image: { + isPreview: true, + }, + resize: { + enable: false, + position: "bottom", + }, + theme: "classic", + toolbar: [ + "emoji", + "headings", + "bold", + "italic", + "strike", + "link", + "|", + "list", + "ordered-list", + "check", + "outdent", + "indent", + "|", + "quote", + "line", + "code", + "inline-code", + "insert-before", + "insert-after", + "|", + "upload", + "record", + "table", + "|", + "undo", + "redo", + "|", + "fullscreen", + "edit-mode", + { + name: "more", + toolbar: [ + "both", + "code-theme", + "content-theme", + "export", + "outline", + "preview", + "devtools", + "info", + "help", + ], + }, + ], + toolbarConfig: { + hide: false, + pin: false, + }, + typewriterMode: false, + undoDelay: 800, + upload: { + extraData: {}, + fieldName: "file[]", + filename: function (name) { return name.replace(/\W/g, ""); }, + linkToImgUrl: "", + max: 10 * 1024 * 1024, + multiple: true, + url: "", + withCredentials: false, + }, + value: "", + width: "auto", + }; + this.options = options; + } + Options.prototype.merge = function () { + var _a, _b, _c, _d, _e, _f, _g, _h, _j; + if (this.options) { + if (this.options.toolbar) { + this.options.toolbar = this.mergeToolbar(this.options.toolbar); + } + else { + this.options.toolbar = this.mergeToolbar(this.defaultOptions.toolbar); + } + if ((_b = (_a = this.options.preview) === null || _a === void 0 ? void 0 : _a.theme) === null || _b === void 0 ? void 0 : _b.list) { + this.defaultOptions.preview.theme.list = this.options.preview.theme.list; + } + if ((_e = (_d = (_c = this.options.preview) === null || _c === void 0 ? void 0 : _c.render) === null || _d === void 0 ? void 0 : _d.media) === null || _e === void 0 ? void 0 : _e.enable) { + this.defaultOptions.preview.render.media.enable = this.options.preview.render.media.enable; + } + if ((_f = this.options.hint) === null || _f === void 0 ? void 0 : _f.emoji) { + this.defaultOptions.hint.emoji = this.options.hint.emoji; + } + if (this.options.comment) { + this.defaultOptions.comment = this.options.comment; + } + if (this.options.cdn) { + if (!((_h = (_g = this.options.preview) === null || _g === void 0 ? void 0 : _g.theme) === null || _h === void 0 ? void 0 : _h.path)) { + this.defaultOptions.preview.theme.path = "".concat(this.options.cdn, "/dist/css/content-theme"); + } + if (!((_j = this.options.hint) === null || _j === void 0 ? void 0 : _j.emojiPath)) { + this.defaultOptions.hint.emojiPath = "".concat(this.options.cdn, "/dist/images/emoji"); + } + } + } + var mergedOptions = (0,merge/* merge */.T)(this.defaultOptions, this.options); + if (mergedOptions.cache.enable && !mergedOptions.cache.id) { + throw new Error("need options.cache.id, see https://ld246.com/article/1549638745630#options"); + } + return mergedOptions; + }; + Options.prototype.mergeToolbar = function (toolbar) { + var _this = this; + var toolbarItem = [ + { + icon: '<svg><use xlink:href="#vditor-icon-export"></use></svg>', + name: "export", + tipPosition: "ne", + }, + { + hotkey: "⌘E", + icon: '<svg><use xlink:href="#vditor-icon-emoji"></use></svg>', + name: "emoji", + tipPosition: "ne", + }, + { + hotkey: "⌘H", + icon: '<svg><use xlink:href="#vditor-icon-headings"></use></svg>', + name: "headings", + tipPosition: "ne", + }, + { + hotkey: "⌘B", + icon: '<svg><use xlink:href="#vditor-icon-bold"></use></svg>', + name: "bold", + prefix: "**", + suffix: "**", + tipPosition: "ne", + }, + { + hotkey: "⌘I", + icon: '<svg><use xlink:href="#vditor-icon-italic"></use></svg>', + name: "italic", + prefix: "*", + suffix: "*", + tipPosition: "ne", + }, + { + hotkey: "⌘D", + icon: '<svg><use xlink:href="#vditor-icon-strike"></use></svg>', + name: "strike", + prefix: "~~", + suffix: "~~", + tipPosition: "ne", + }, + { + hotkey: "⌘K", + icon: '<svg><use xlink:href="#vditor-icon-link"></use></svg>', + name: "link", + prefix: "[", + suffix: "](https://)", + tipPosition: "n", + }, + { + name: "|", + }, + { + hotkey: "⌘L", + icon: '<svg><use xlink:href="#vditor-icon-list"></use></svg>', + name: "list", + prefix: "* ", + tipPosition: "n", + }, + { + hotkey: "⌘O", + icon: '<svg><use xlink:href="#vditor-icon-ordered-list"></use></svg>', + name: "ordered-list", + prefix: "1. ", + tipPosition: "n", + }, + { + hotkey: "⌘J", + icon: '<svg><use xlink:href="#vditor-icon-check"></use></svg>', + name: "check", + prefix: "* [ ] ", + tipPosition: "n", + }, + { + hotkey: "⇧⌘I", + icon: '<svg><use xlink:href="#vditor-icon-outdent"></use></svg>', + name: "outdent", + tipPosition: "n", + }, + { + hotkey: "⇧⌘O", + icon: '<svg><use xlink:href="#vditor-icon-indent"></use></svg>', + name: "indent", + tipPosition: "n", + }, + { + name: "|", + }, + { + hotkey: "⌘;", + icon: '<svg><use xlink:href="#vditor-icon-quote"></use></svg>', + name: "quote", + prefix: "> ", + tipPosition: "n", + }, + { + hotkey: "⇧⌘H", + icon: '<svg><use xlink:href="#vditor-icon-line"></use></svg>', + name: "line", + prefix: "---", + tipPosition: "n", + }, + { + hotkey: "⌘U", + icon: '<svg><use xlink:href="#vditor-icon-code"></use></svg>', + name: "code", + prefix: "```", + suffix: "\n```", + tipPosition: "n", + }, + { + hotkey: "⌘G", + icon: '<svg><use xlink:href="#vditor-icon-inline-code"></use></svg>', + name: "inline-code", + prefix: "`", + suffix: "`", + tipPosition: "n", + }, + { + hotkey: "⇧⌘B", + icon: '<svg><use xlink:href="#vditor-icon-before"></use></svg>', + name: "insert-before", + tipPosition: "n", + }, + { + hotkey: "⇧⌘E", + icon: '<svg><use xlink:href="#vditor-icon-after"></use></svg>', + name: "insert-after", + tipPosition: "n", + }, + { + name: "|", + }, + { + icon: '<svg><use xlink:href="#vditor-icon-upload"></use></svg>', + name: "upload", + tipPosition: "n", + }, + { + icon: '<svg><use xlink:href="#vditor-icon-record"></use></svg>', + name: "record", + tipPosition: "n", + }, + { + hotkey: "⌘M", + icon: '<svg><use xlink:href="#vditor-icon-table"></use></svg>', + name: "table", + prefix: "| col1", + suffix: " | col2 | col3 |\n| --- | --- | --- |\n| | | |\n| | | |", + tipPosition: "n", + }, + { + name: "|", + }, + { + hotkey: "⌘Z", + icon: '<svg><use xlink:href="#vditor-icon-undo"></use></svg>', + name: "undo", + tipPosition: "nw", + }, + { + hotkey: "⌘Y", + icon: '<svg><use xlink:href="#vditor-icon-redo"></use></svg>', + name: "redo", + tipPosition: "nw", + }, + { + name: "|", + }, + { + icon: '<svg><use xlink:href="#vditor-icon-more"></use></svg>', + name: "more", + tipPosition: "e", + }, + { + hotkey: "⌘'", + icon: '<svg><use xlink:href="#vditor-icon-fullscreen"></use></svg>', + name: "fullscreen", + tipPosition: "nw", + }, + { + icon: '<svg><use xlink:href="#vditor-icon-edit"></use></svg>', + name: "edit-mode", + tipPosition: "nw", + }, + { + hotkey: "⌘P", + icon: '<svg><use xlink:href="#vditor-icon-both"></use></svg>', + name: "both", + tipPosition: "nw", + }, + { + icon: '<svg><use xlink:href="#vditor-icon-preview"></use></svg>', + name: "preview", + tipPosition: "nw", + }, + { + icon: '<svg><use xlink:href="#vditor-icon-align-center"></use></svg>', + name: "outline", + tipPosition: "nw", + }, + { + icon: '<svg><use xlink:href="#vditor-icon-theme"></use></svg>', + name: "content-theme", + tipPosition: "nw", + }, + { + icon: '<svg><use xlink:href="#vditor-icon-code-theme"></use></svg>', + name: "code-theme", + tipPosition: "nw", + }, + { + icon: '<svg><use xlink:href="#vditor-icon-bug"></use></svg>', + name: "devtools", + tipPosition: "nw", + }, + { + icon: '<svg><use xlink:href="#vditor-icon-info"></use></svg>', + name: "info", + tipPosition: "nw", + }, + { + icon: '<svg><use xlink:href="#vditor-icon-help"></use></svg>', + name: "help", + tipPosition: "nw", + }, + { + name: "br", + }, + ]; + var toolbarResult = []; + toolbar.forEach(function (menuItem) { + var currentMenuItem = menuItem; + toolbarItem.forEach(function (defaultMenuItem) { + if (typeof menuItem === "string" && + defaultMenuItem.name === menuItem) { + currentMenuItem = defaultMenuItem; + } + if (typeof menuItem === "object" && + defaultMenuItem.name === menuItem.name) { + currentMenuItem = Object.assign({}, defaultMenuItem, menuItem); + } + }); + if (menuItem.toolbar) { + currentMenuItem.toolbar = _this.mergeToolbar(menuItem.toolbar); + } + toolbarResult.push(currentMenuItem); + }); + return toolbarResult; + }; + return Options; +}()); + + +;// CONCATENATED MODULE: ./src/ts/wysiwyg/index.ts + + + + + + + + + + + + + + + +var WYSIWYG = /** @class */ (function () { + function WYSIWYG(vditor) { + var _this = this; + this.composingLock = false; + this.commentIds = []; + var divElement = document.createElement("div"); + divElement.className = "vditor-wysiwyg"; + divElement.innerHTML = "<pre class=\"vditor-reset\" placeholder=\"".concat(vditor.options.placeholder, "\"\n contenteditable=\"true\" spellcheck=\"false\"></pre>\n<div class=\"vditor-panel vditor-panel--none\"></div>\n<div class=\"vditor-panel vditor-panel--none\">\n <button type=\"button\" aria-label=\"").concat(window.VditorI18n.comment, "\" class=\"vditor-icon vditor-tooltipped vditor-tooltipped__n\">\n <svg><use xlink:href=\"#vditor-icon-comment\"></use></svg>\n </button>\n</div>"); + this.element = divElement.firstElementChild; + this.popover = divElement.firstElementChild.nextElementSibling; + this.selectPopover = divElement.lastElementChild; + this.bindEvent(vditor); + focusEvent(vditor, this.element); + dblclickEvent(vditor, this.element); + blurEvent(vditor, this.element); + hotkeyEvent(vditor, this.element); + selectEvent(vditor, this.element); + dropEvent(vditor, this.element); + copyEvent(vditor, this.element, this.copy); + cutEvent(vditor, this.element, this.copy); + if (vditor.options.comment.enable) { + this.selectPopover.querySelector("button").onclick = function () { + var id = Lute.NewNodeID(); + var range = getSelection().getRangeAt(0); + var rangeClone = range.cloneRange(); + var contents = range.extractContents(); + var blockStartElement; + var blockEndElement; + var removeStart = false; + var removeEnd = false; + contents.childNodes.forEach(function (item, index) { + var wrap = false; + if (item.nodeType === 3) { + wrap = true; + } + else if (!item.classList.contains("vditor-comment")) { + wrap = true; + } + else if (item.classList.contains("vditor-comment")) { + item.setAttribute("data-cmtids", item.getAttribute("data-cmtids") + " " + id); + } + if (wrap) { + if (item.nodeType !== 3 && item.getAttribute("data-block") === "0" + && index === 0 && rangeClone.startOffset > 0) { + item.innerHTML = + "<span class=\"vditor-comment\" data-cmtids=\"".concat(id, "\">").concat(item.innerHTML, "</span>"); + blockStartElement = item; + } + else if (item.nodeType !== 3 && item.getAttribute("data-block") === "0" + && index === contents.childNodes.length - 1 + && rangeClone.endOffset < rangeClone.endContainer.textContent.length) { + item.innerHTML = + "<span class=\"vditor-comment\" data-cmtids=\"".concat(id, "\">").concat(item.innerHTML, "</span>"); + blockEndElement = item; + } + else if (item.nodeType !== 3 && item.getAttribute("data-block") === "0") { + if (index === 0) { + removeStart = true; + } + else if (index === contents.childNodes.length - 1) { + removeEnd = true; + } + item.innerHTML = + "<span class=\"vditor-comment\" data-cmtids=\"".concat(id, "\">").concat(item.innerHTML, "</span>"); + } + else { + var commentElement = document.createElement("span"); + commentElement.classList.add("vditor-comment"); + commentElement.setAttribute("data-cmtids", id); + item.parentNode.insertBefore(commentElement, item); + commentElement.appendChild(item); + } + } + }); + var startElement = (0,hasClosest/* hasClosestBlock */.F9)(rangeClone.startContainer); + if (startElement) { + if (blockStartElement) { + startElement.insertAdjacentHTML("beforeend", blockStartElement.innerHTML); + blockStartElement.remove(); + } + else if (startElement.textContent.trim().replace(constants/* Constants.ZWSP */.g.ZWSP, "") === "" && removeStart) { + startElement.remove(); + } + } + var endElement = (0,hasClosest/* hasClosestBlock */.F9)(rangeClone.endContainer); + if (endElement) { + if (blockEndElement) { + endElement.insertAdjacentHTML("afterbegin", blockEndElement.innerHTML); + blockEndElement.remove(); + } + else if (endElement.textContent.trim().replace(constants/* Constants.ZWSP */.g.ZWSP, "") === "" && removeEnd) { + endElement.remove(); + } + } + range.insertNode(contents); + vditor.options.comment.add(id, range.toString(), _this.getComments(vditor, true)); + afterRenderEvent(vditor, { + enableAddUndoStack: true, + enableHint: false, + enableInput: false, + }); + _this.hideComment(); + }; + } + } + WYSIWYG.prototype.getComments = function (vditor, getData) { + var _this = this; + if (getData === void 0) { getData = false; } + if (vditor.currentMode === "wysiwyg" && vditor.options.comment.enable) { + this.commentIds = []; + this.element.querySelectorAll(".vditor-comment").forEach(function (item) { + _this.commentIds = + _this.commentIds.concat(item.getAttribute("data-cmtids").split(" ")); + }); + this.commentIds = Array.from(new Set(this.commentIds)); + var comments_1 = []; + if (getData) { + this.commentIds.forEach(function (id) { + comments_1.push({ + id: id, + top: _this.element.querySelector(".vditor-comment[data-cmtids=\"".concat(id, "\"]")).offsetTop, + }); + }); + return comments_1; + } + } + else { + return []; + } + }; + WYSIWYG.prototype.triggerRemoveComment = function (vditor) { + var difference = function (a, b) { + var s = new Set(b); + return a.filter(function (x) { return !s.has(x); }); + }; + if (vditor.currentMode === "wysiwyg" && vditor.options.comment.enable && vditor.wysiwyg.commentIds.length > 0) { + var oldIds = JSON.parse(JSON.stringify(this.commentIds)); + this.getComments(vditor); + var removedIds = difference(oldIds, this.commentIds); + if (removedIds.length > 0) { + vditor.options.comment.remove(removedIds); + } + } + }; + WYSIWYG.prototype.showComment = function () { + var position = (0,selection/* getCursorPosition */.Ny)(this.element); + this.selectPopover.setAttribute("style", "left:".concat(position.left, "px;display:block;top:").concat(Math.max(-8, position.top - 21), "px")); + }; + WYSIWYG.prototype.hideComment = function () { + this.selectPopover.setAttribute("style", "display:none"); + }; + WYSIWYG.prototype.unbindListener = function () { + window.removeEventListener("scroll", this.scrollListener); + }; + WYSIWYG.prototype.copy = function (event, vditor) { + var range = getSelection().getRangeAt(0); + if (range.toString() === "") { + return; + } + event.stopPropagation(); + event.preventDefault(); + var codeElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(range.startContainer, "CODE"); + var codeEndElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(range.endContainer, "CODE"); + if (codeElement && codeEndElement && codeEndElement.isSameNode(codeElement)) { + var codeText = ""; + if (codeElement.parentElement.tagName === "PRE") { + codeText = range.toString(); + } + else { + codeText = "`" + range.toString() + "`"; + } + event.clipboardData.setData("text/plain", codeText); + event.clipboardData.setData("text/html", ""); + return; + } + var aElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(range.startContainer, "A"); + var aEndElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(range.endContainer, "A"); + if (aElement && aEndElement && aEndElement.isSameNode(aElement)) { + var aTitle = aElement.getAttribute("title") || ""; + if (aTitle) { + aTitle = " \"".concat(aTitle, "\""); + } + event.clipboardData.setData("text/plain", "[".concat(range.toString(), "](").concat(aElement.getAttribute("href")).concat(aTitle, ")")); + event.clipboardData.setData("text/html", ""); + return; + } + var tempElement = document.createElement("div"); + tempElement.appendChild(range.cloneContents()); + event.clipboardData.setData("text/plain", vditor.lute.VditorDOM2Md(tempElement.innerHTML).trim()); + event.clipboardData.setData("text/html", ""); + }; + WYSIWYG.prototype.bindEvent = function (vditor) { + var _this = this; + this.unbindListener(); + window.addEventListener("scroll", this.scrollListener = function () { + hidePanel(vditor, ["hint"]); + if (_this.popover.style.display !== "block" || _this.selectPopover.style.display !== "block") { + return; + } + var top = parseInt(_this.popover.getAttribute("data-top"), 10); + if (vditor.options.height !== "auto") { + if (vditor.options.toolbarConfig.pin && vditor.toolbar.element.getBoundingClientRect().top === 0) { + var popoverTop = Math.max(window.scrollY - vditor.element.offsetTop - 8, Math.min(top - vditor.wysiwyg.element.scrollTop, _this.element.clientHeight - 21)) + "px"; + if (_this.popover.style.display === "block") { + _this.popover.style.top = popoverTop; + } + if (_this.selectPopover.style.display === "block") { + _this.selectPopover.style.top = popoverTop; + } + } + return; + } + else if (!vditor.options.toolbarConfig.pin) { + return; + } + var popoverTop1 = Math.max(top, (window.scrollY - vditor.element.offsetTop - 8)) + "px"; + if (_this.popover.style.display === "block") { + _this.popover.style.top = popoverTop1; + } + if (_this.selectPopover.style.display === "block") { + _this.selectPopover.style.top = popoverTop1; + } + }); + this.element.addEventListener("scroll", function () { + hidePanel(vditor, ["hint"]); + if (vditor.options.comment && vditor.options.comment.enable && vditor.options.comment.scroll) { + vditor.options.comment.scroll(vditor.wysiwyg.element.scrollTop); + } + if (_this.popover.style.display !== "block") { + return; + } + var top = parseInt(_this.popover.getAttribute("data-top"), 10) - vditor.wysiwyg.element.scrollTop; + var max = -8; + if (vditor.options.toolbarConfig.pin && vditor.toolbar.element.getBoundingClientRect().top === 0) { + max = window.scrollY - vditor.element.offsetTop + max; + } + var topPx = Math.max(max, Math.min(top, _this.element.clientHeight - 21)) + "px"; + _this.popover.style.top = topPx; + _this.selectPopover.style.top = topPx; + }); + this.element.addEventListener("paste", function (event) { + paste(vditor, event, { + pasteCode: function (code) { + var range = (0,selection/* getEditorRange */.zh)(vditor); + var node = document.createElement("template"); + node.innerHTML = code; + range.insertNode(node.content.cloneNode(true)); + var blockElement = (0,hasClosest/* hasClosestByAttribute */.a1)(range.startContainer, "data-block", "0"); + if (blockElement) { + blockElement.outerHTML = vditor.lute.SpinVditorDOM(blockElement.outerHTML); + } + else { + vditor.wysiwyg.element.innerHTML = vditor.lute.SpinVditorDOM(vditor.wysiwyg.element.innerHTML); + } + (0,selection/* setRangeByWbr */.ib)(vditor.wysiwyg.element, range); + }, + }); + }); + // 中文处理 + this.element.addEventListener("compositionstart", function () { + _this.composingLock = true; + }); + this.element.addEventListener("compositionend", function (event) { + var headingElement = (0,hasClosestByHeadings/* hasClosestByHeadings */.W)(getSelection().getRangeAt(0).startContainer); + if (headingElement && headingElement.textContent === "") { + // heading 为空删除 https://github.com/Vanessa219/vditor/issues/150 + renderToc(vditor); + return; + } + if (!(0,compatibility/* isFirefox */.vU)()) { + input_input(vditor, getSelection().getRangeAt(0).cloneRange(), event); + } + _this.composingLock = false; + }); + this.element.addEventListener("input", function (event) { + if (event.inputType === "deleteByDrag" || event.inputType === "insertFromDrop") { + // https://github.com/Vanessa219/vditor/issues/801 编辑器内容拖拽问题 + return; + } + if (_this.preventInput) { + _this.preventInput = false; + afterRenderEvent(vditor); + return; + } + if (_this.composingLock || event.data === "‘" || event.data === "“" || event.data === "《") { + afterRenderEvent(vditor); + return; + } + var range = getSelection().getRangeAt(0); + var blockElement = (0,hasClosest/* hasClosestBlock */.F9)(range.startContainer); + if (!blockElement) { + // 没有被块元素包裹 + modifyPre(vditor, range); + blockElement = (0,hasClosest/* hasClosestBlock */.F9)(range.startContainer); + } + if (!blockElement) { + return; + } + // 前后空格处理 + var startOffset = (0,selection/* getSelectPosition */.im)(blockElement, vditor.wysiwyg.element, range).start; + // 开始可以输入空格 + var startSpace = true; + for (var i = startOffset - 1; i > blockElement.textContent.substr(0, startOffset).lastIndexOf("\n"); i--) { + if (blockElement.textContent.charAt(i) !== " " && + // 多个 tab 前删除不形成代码块 https://github.com/Vanessa219/vditor/issues/162 1 + blockElement.textContent.charAt(i) !== "\t") { + startSpace = false; + break; + } + } + if (startOffset === 0) { + startSpace = false; + } + // 结尾可以输入空格 + var endSpace = true; + for (var i = startOffset - 1; i < blockElement.textContent.length; i++) { + if (blockElement.textContent.charAt(i) !== " " && blockElement.textContent.charAt(i) !== "\n") { + endSpace = false; + break; + } + } + // https://github.com/Vanessa219/vditor/issues/729 + if (endSpace && /^#{1,6} $/.test(blockElement.textContent)) { + endSpace = false; + } + var headingElement = (0,hasClosestByHeadings/* hasClosestByHeadings */.W)(getSelection().getRangeAt(0).startContainer); + if (headingElement && headingElement.textContent === "") { + // heading 为空删除 https://github.com/Vanessa219/vditor/issues/150 + renderToc(vditor); + headingElement.remove(); + } + if ((startSpace && blockElement.getAttribute("data-type") !== "code-block") + || endSpace || isHeadingMD(blockElement.innerHTML) || + (isHrMD(blockElement.innerHTML) && blockElement.previousElementSibling)) { + if (typeof vditor.options.input === "function") { + vditor.options.input(getMarkdown(vditor)); + } + return; + } + // https://github.com/Vanessa219/vditor/issues/1565 + if (event.inputType === "insertParagraph" && _this.element.innerHTML === '<p><br></p><p><br></p>') { + blockElement.previousElementSibling.remove(); + } + input_input(vditor, range, event); + }); + this.element.addEventListener("click", function (event) { + if (event.target.tagName === "INPUT") { + var checkElement = event.target; + if (checkElement.checked) { + checkElement.setAttribute("checked", "checked"); + } + else { + checkElement.removeAttribute("checked"); + } + _this.preventInput = true; + if (getSelection().rangeCount > 0) { + (0,selection/* setSelectionFocus */.Hc)(getSelection().getRangeAt(0)); + } + afterRenderEvent(vditor); + return; + } + if (event.target.tagName === "IMG" && + // plantuml 图片渲染不进行提示 + !event.target.parentElement.classList.contains("vditor-wysiwyg__preview")) { + if (event.target.getAttribute("data-type") === "link-ref") { + genLinkRefPopover(vditor, event.target); + } + else { + genImagePopover(event, vditor); + } + return; + } + // 打开链接 + var a = (0,hasClosest/* hasClosestByMatchTag */.lG)(event.target, "A"); + if (a) { + if (vditor.options.link.click) { + vditor.options.link.click(a); + } + else if (vditor.options.link.isOpen) { + window.open(a.getAttribute("href")); + } + event.preventDefault(); + return; + } + var range = (0,selection/* getEditorRange */.zh)(vditor); + if (event.target.isEqualNode(_this.element) && _this.element.lastElementChild && range.collapsed) { + var lastRect = _this.element.lastElementChild.getBoundingClientRect(); + if (event.y > lastRect.top + lastRect.height) { + if (_this.element.lastElementChild.tagName === "P" && + _this.element.lastElementChild.textContent.trim().replace(constants/* Constants.ZWSP */.g.ZWSP, "") === "") { + range.selectNodeContents(_this.element.lastElementChild); + range.collapse(false); + } + else { + _this.element.insertAdjacentHTML("beforeend", "<p data-block=\"0\">".concat(constants/* Constants.ZWSP */.g.ZWSP, "<wbr></p>")); + (0,selection/* setRangeByWbr */.ib)(_this.element, range); + } + } + } + highlightToolbarWYSIWYG(vditor); + // 点击后光标落于预览区,需展开代码块 + var previewElement = (0,hasClosest/* hasClosestByClassName */.fb)(event.target, "vditor-wysiwyg__preview"); + if (!previewElement) { + previewElement = + (0,hasClosest/* hasClosestByClassName */.fb)((0,selection/* getEditorRange */.zh)(vditor).startContainer, "vditor-wysiwyg__preview"); + } + if (previewElement) { + showCode(previewElement, vditor); + } + clickToc(event, vditor); + }); + this.element.addEventListener("keyup", function (event) { + if (event.isComposing || (0,compatibility/* isCtrl */.yl)(event)) { + return; + } + // 除 md 处理、cell 内换行、table 添加新行/列、代码块语言切换、block render 换行、跳出/逐层跳出 blockquote、h6 换行、 + // 任务列表换行、软换行外需在换行时调整文档位置 + if (event.key === "Enter") { + scrollCenter(vditor); + } + if ((event.key === "Backspace" || event.key === "Delete") && + vditor.wysiwyg.element.innerHTML !== "" && vditor.wysiwyg.element.childNodes.length === 1 && + vditor.wysiwyg.element.firstElementChild && vditor.wysiwyg.element.firstElementChild.tagName === "P" + && vditor.wysiwyg.element.firstElementChild.childElementCount === 0 + && (vditor.wysiwyg.element.textContent === "" || vditor.wysiwyg.element.textContent === "\n")) { + // 为空时显示 placeholder + vditor.wysiwyg.element.innerHTML = ""; + } + var range = (0,selection/* getEditorRange */.zh)(vditor); + if (event.key === "Backspace") { + // firefox headings https://github.com/Vanessa219/vditor/issues/211 + if ((0,compatibility/* isFirefox */.vU)() && range.startContainer.textContent === "\n" && range.startOffset === 1) { + range.startContainer.textContent = ""; + } + } + // 没有被块元素包裹 + modifyPre(vditor, range); + highlightToolbarWYSIWYG(vditor); + if (event.key !== "ArrowDown" && event.key !== "ArrowRight" && event.key !== "Backspace" + && event.key !== "ArrowLeft" && event.key !== "ArrowUp") { + return; + } + if (event.key === "ArrowLeft" || event.key === "ArrowRight") { + vditor.hint.render(vditor); + } + // 上下左右,删除遇到块预览的处理 + var previewElement = (0,hasClosest/* hasClosestByClassName */.fb)(range.startContainer, "vditor-wysiwyg__preview"); + if (!previewElement && range.startContainer.nodeType !== 3 && range.startOffset > 0) { + // table 前删除遇到代码块 + var blockRenderElement = range.startContainer; + if (blockRenderElement.classList.contains("vditor-wysiwyg__block")) { + previewElement = blockRenderElement.lastElementChild; + } + } + if (!previewElement) { + return; + } + var previousElement = previewElement.previousElementSibling; + if (previousElement.style.display === "none") { + if (event.key === "ArrowDown" || event.key === "ArrowRight") { + showCode(previewElement, vditor); + } + else { + showCode(previewElement, vditor, false); + } + return; + } + var codeElement = previewElement.previousElementSibling; + if (codeElement.tagName === "PRE") { + codeElement = codeElement.firstElementChild; + } + if (event.key === "ArrowDown" || event.key === "ArrowRight") { + var blockRenderElement = previewElement.parentElement; + var nextNode = getRenderElementNextNode(blockRenderElement); + if (nextNode && nextNode.nodeType !== 3) { + // 下一节点依旧为代码渲染块 + var nextRenderElement = nextNode.querySelector(".vditor-wysiwyg__preview"); + if (nextRenderElement) { + showCode(nextRenderElement, vditor); + return; + } + } + // 跳过渲染块,光标移动到下一个节点 + if (nextNode.nodeType === 3) { + // inline + while (nextNode.textContent.length === 0 && nextNode.nextSibling) { + // https://github.com/Vanessa219/vditor/issues/100 2 + nextNode = nextNode.nextSibling; + } + range.setStart(nextNode, 1); + } + else { + // block + range.setStart(nextNode.firstChild, 0); + } + } + else { + range.selectNodeContents(codeElement); + range.collapse(false); + } + }); + }; + return WYSIWYG; +}()); + + +;// CONCATENATED MODULE: ./src/index.ts +var src_extends = (undefined && undefined.__extends) || (function () { + var extendStatics = function (d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; + return extendStatics(d, b); + }; + return function (d, b) { + if (typeof b !== "function" && b !== null) + throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; +})(); + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +var Vditor = /** @class */ (function (_super) { + src_extends(Vditor, _super); + /** + * @param id 要挂载 Vditor 的元素或者元素 ID。 + * @param options Vditor 参数 + */ + function Vditor(id, options) { + var _this = _super.call(this) || this; + _this.isDestroyed = false; + _this.version = constants/* VDITOR_VERSION */.H; + if (typeof id === "string") { + if (!options) { + options = { + cache: { + id: "vditor".concat(id), + }, + }; + } + else if (!options.cache) { + options.cache = { id: "vditor".concat(id) }; + } + else if (!options.cache.id) { + options.cache.id = "vditor".concat(id); + } + if (!document.getElementById(id)) { + _this.showErrorTip("Failed to get element by id: ".concat(id)); + return _this; + } + id = document.getElementById(id); + } + var getOptions = new Options(options); + var mergedOptions = getOptions.merge(); + // 支持自定义国际化 + if (!mergedOptions.i18n) { + if (!["de_DE", "en_US", "fr_FR", "pt_BR", "ja_JP", "ko_KR", "ru_RU", "sv_SE", "zh_CN", "zh_TW"].includes(mergedOptions.lang)) { + throw new Error("options.lang error, see https://ld246.com/article/1549638745630#options"); + } + else { + var i18nScriptPrefix = "vditorI18nScript"; + var i18nScriptID_1 = i18nScriptPrefix + mergedOptions.lang; + document.querySelectorAll("head script[id^=\"".concat(i18nScriptPrefix, "\"]")).forEach(function (el) { + if (el.id !== i18nScriptID_1) { + document.head.removeChild(el); + } + }); + (0,addScript/* addScript */.G)("".concat(mergedOptions.cdn, "/dist/js/i18n/").concat(mergedOptions.lang, ".js"), i18nScriptID_1).then(function () { + _this.init(id, mergedOptions); + }).catch(function (error) { + _this.showErrorTip("GET ".concat(mergedOptions.cdn, "/dist/js/i18n/").concat(mergedOptions.lang, ".js net::ERR_ABORTED 404 (Not Found)")); + }); + } + } + else { + window.VditorI18n = mergedOptions.i18n; + _this.init(id, mergedOptions); + } + return _this; + } + Vditor.prototype.showErrorTip = function (error) { + var tip = new Tip(); + document.body.appendChild(tip.element); + tip.show(error, 0); + }; + Vditor.prototype.updateToolbarConfig = function (options) { + this.vditor.toolbar.updateConfig(this.vditor, options); + }; + /** 设置主题 */ + Vditor.prototype.setTheme = function (theme, contentTheme, codeTheme, contentThemePath) { + this.vditor.options.theme = theme; + setTheme(this.vditor); + if (contentTheme) { + this.vditor.options.preview.theme.current = contentTheme; + (0,setContentTheme/* setContentTheme */.Z)(contentTheme, contentThemePath || this.vditor.options.preview.theme.path); + } + if (codeTheme) { + this.vditor.options.preview.hljs.style = codeTheme; + (0,setCodeTheme/* setCodeTheme */.Y)(codeTheme, this.vditor.options.cdn); + } + }; + /** 获取 Markdown 内容 */ + Vditor.prototype.getValue = function () { + return getMarkdown(this.vditor); + }; + /** 获取编辑器当前编辑模式 */ + Vditor.prototype.getCurrentMode = function () { + return this.vditor.currentMode; + }; + /** 聚焦到编辑器 */ + Vditor.prototype.focus = function () { + if (this.vditor.currentMode === "sv") { + this.vditor.sv.element.focus(); + } + else if (this.vditor.currentMode === "wysiwyg") { + this.vditor.wysiwyg.element.focus(); + } + else if (this.vditor.currentMode === "ir") { + this.vditor.ir.element.focus(); + } + }; + /** 让编辑器失焦 */ + Vditor.prototype.blur = function () { + if (this.vditor.currentMode === "sv") { + this.vditor.sv.element.blur(); + } + else if (this.vditor.currentMode === "wysiwyg") { + this.vditor.wysiwyg.element.blur(); + } + else if (this.vditor.currentMode === "ir") { + this.vditor.ir.element.blur(); + } + }; + /** 禁用编辑器 */ + Vditor.prototype.disabled = function () { + hidePanel(this.vditor, ["subToolbar", "hint", "popover"]); + disableToolbar(this.vditor.toolbar.elements, constants/* Constants.EDIT_TOOLBARS.concat */.g.EDIT_TOOLBARS.concat(["undo", "redo", "fullscreen", "edit-mode"])); + this.vditor[this.vditor.currentMode].element.setAttribute("contenteditable", "false"); + }; + /** 解除编辑器禁用 */ + Vditor.prototype.enable = function () { + enableToolbar(this.vditor.toolbar.elements, constants/* Constants.EDIT_TOOLBARS.concat */.g.EDIT_TOOLBARS.concat(["undo", "redo", "fullscreen", "edit-mode"])); + this.vditor.undo.resetIcon(this.vditor); + this.vditor[this.vditor.currentMode].element.setAttribute("contenteditable", "true"); + }; + /** 返回选中的字符串 */ + Vditor.prototype.getSelection = function () { + if (this.vditor.currentMode === "wysiwyg") { + return getSelectText(this.vditor.wysiwyg.element); + } + else if (this.vditor.currentMode === "sv") { + return getSelectText(this.vditor.sv.element); + } + else if (this.vditor.currentMode === "ir") { + return getSelectText(this.vditor.ir.element); + } + }; + /** 设置预览区域内容 */ + Vditor.prototype.renderPreview = function (value) { + this.vditor.preview.render(this.vditor, value); + }; + /** 获取焦点位置 */ + Vditor.prototype.getCursorPosition = function () { + return (0,selection/* getCursorPosition */.Ny)(this.vditor[this.vditor.currentMode].element); + }; + /** 上传是否还在进行中 */ + Vditor.prototype.isUploading = function () { + return this.vditor.upload.isUploading; + }; + /** 清除缓存 */ + Vditor.prototype.clearCache = function () { + if (this.vditor.options.cache.enable && (0,compatibility/* accessLocalStorage */.pK)()) { + localStorage.removeItem(this.vditor.options.cache.id); + } + }; + /** 禁用缓存 */ + Vditor.prototype.disabledCache = function () { + this.vditor.options.cache.enable = false; + }; + /** 启用缓存 */ + Vditor.prototype.enableCache = function () { + if (!this.vditor.options.cache.id) { + throw new Error("need options.cache.id, see https://ld246.com/article/1549638745630#options"); + } + this.vditor.options.cache.enable = true; + }; + /** HTML 转 md */ + Vditor.prototype.html2md = function (value) { + return this.vditor.lute.HTML2Md(value); + }; + /** markdown 转 JSON 输出 */ + Vditor.prototype.exportJSON = function (value) { + return this.vditor.lute.RenderJSON(value); + }; + /** 获取 HTML */ + Vditor.prototype.getHTML = function () { + return getHTML(this.vditor); + }; + /** 消息提示。time 为 0 将一直显示 */ + Vditor.prototype.tip = function (text, time) { + this.vditor.tip.show(text, time); + }; + /** 设置预览模式 */ + Vditor.prototype.setPreviewMode = function (mode) { + setPreviewMode(mode, this.vditor); + }; + /** 删除选中内容 */ + Vditor.prototype.deleteValue = function () { + if (window.getSelection().isCollapsed) { + return; + } + document.execCommand("delete", false); + }; + /** 更新选中内容 */ + Vditor.prototype.updateValue = function (value) { + document.execCommand("insertHTML", false, value); + }; + /** 在焦点处插入内容,并默认进行 Markdown 渲染 */ + Vditor.prototype.insertValue = function (value, render) { + if (render === void 0) { render = true; } + var range = (0,selection/* getEditorRange */.zh)(this.vditor); + range.collapse(true); + // https://github.com/Vanessa219/vditor/issues/716 + // https://github.com/Vanessa219/vditor/issues/917 + var tmpElement = document.createElement("template"); + tmpElement.innerHTML = value; + range.insertNode(tmpElement.content.cloneNode(true)); + range.collapse(false); + if (this.vditor.currentMode === "sv") { + this.vditor.sv.preventInput = true; + if (render) { + inputEvent(this.vditor); + } + } + else if (this.vditor.currentMode === "wysiwyg") { + // 由于 https://github.com/Vanessa219/vditor/issues/1566 不能使用 this.vditor.wysiwyg.preventInput = true; + if (render) { + input_input(this.vditor, getSelection().getRangeAt(0)); + } + } + else if (this.vditor.currentMode === "ir") { + this.vditor.ir.preventInput = true; + if (render) { + input(this.vditor, getSelection().getRangeAt(0), true); + } + } + }; + /** 在焦点处插入 Markdown */ + Vditor.prototype.insertMD = function (md) { + // https://github.com/Vanessa219/vditor/issues/1640 + if (this.vditor.currentMode === "ir") { + (0,selection/* insertHTML */.oC)(this.vditor.lute.Md2VditorIRDOM(md), this.vditor); + } + else if (this.vditor.currentMode === "wysiwyg") { + (0,selection/* insertHTML */.oC)(this.vditor.lute.Md2VditorDOM(md), this.vditor); + } + else { + processPaste(this.vditor, md); + } + this.vditor.outline.render(this.vditor); + execAfterRender(this.vditor); + }; + /** 设置编辑器内容 */ + Vditor.prototype.setValue = function (markdown, clearStack) { + var _this = this; + if (clearStack === void 0) { clearStack = false; } + if (this.vditor.currentMode === "sv") { + this.vditor.sv.element.innerHTML = "<div data-block='0'>".concat(this.vditor.lute.SpinVditorSVDOM(markdown), "</div>"); + processAfterRender(this.vditor, { + enableAddUndoStack: true, + enableHint: false, + enableInput: false, + }); + } + else if (this.vditor.currentMode === "wysiwyg") { + renderDomByMd(this.vditor, markdown, { + enableAddUndoStack: true, + enableHint: false, + enableInput: false, + }); + } + else { + this.vditor.ir.element.innerHTML = this.vditor.lute.Md2VditorIRDOM(markdown); + this.vditor.ir.element + .querySelectorAll(".vditor-ir__preview[data-render='2']") + .forEach(function (item) { + processCodeRender(item, _this.vditor); + }); + process_processAfterRender(this.vditor, { + enableAddUndoStack: true, + enableHint: false, + enableInput: false, + }); + } + this.vditor.outline.render(this.vditor); + if (!markdown) { + hidePanel(this.vditor, ["emoji", "headings", "submenu", "hint"]); + if (this.vditor.wysiwyg.popover) { + this.vditor.wysiwyg.popover.style.display = "none"; + } + this.clearCache(); + } + if (clearStack) { + this.clearStack(); + } + }; + /** 空块 */ + Vditor.prototype.insertEmptyBlock = function (position) { + insertEmptyBlock(this.vditor, position); + }; + /** 清空 undo & redo 栈 */ + Vditor.prototype.clearStack = function () { + this.vditor.undo.clearStack(this.vditor); + this.vditor.undo.addToUndoStack(this.vditor); + }; + /** 销毁编辑器 */ + Vditor.prototype.destroy = function () { + this.vditor.element.innerHTML = this.vditor.originalInnerHTML; + this.vditor.element.classList.remove("vditor"); + this.vditor.element.removeAttribute("style"); + var iconScript = document.getElementById("vditorIconScript"); + if (iconScript) { + iconScript.remove(); + } + this.clearCache(); + UIUnbindListener(); + this.vditor.wysiwyg.unbindListener(); + this.vditor.options.after = undefined; + this.isDestroyed = true; + }; + /** 获取评论 ID */ + Vditor.prototype.getCommentIds = function () { + if (this.vditor.currentMode !== "wysiwyg") { + return []; + } + return this.vditor.wysiwyg.getComments(this.vditor, true); + }; + /** 高亮评论 */ + Vditor.prototype.hlCommentIds = function (ids) { + if (this.vditor.currentMode !== "wysiwyg") { + return; + } + var hlItem = function (item) { + item.classList.remove("vditor-comment--hover"); + ids.forEach(function (id) { + if (item.getAttribute("data-cmtids").indexOf(id) > -1) { + item.classList.add("vditor-comment--hover"); + } + }); + }; + this.vditor.wysiwyg.element + .querySelectorAll(".vditor-comment") + .forEach(function (item) { + hlItem(item); + }); + if (this.vditor.preview.element.style.display !== "none") { + this.vditor.preview.element + .querySelectorAll(".vditor-comment") + .forEach(function (item) { + hlItem(item); + }); + } + }; + /** 取消评论高亮 */ + Vditor.prototype.unHlCommentIds = function (ids) { + if (this.vditor.currentMode !== "wysiwyg") { + return; + } + var unHlItem = function (item) { + ids.forEach(function (id) { + if (item.getAttribute("data-cmtids").indexOf(id) > -1) { + item.classList.remove("vditor-comment--hover"); + } + }); + }; + this.vditor.wysiwyg.element + .querySelectorAll(".vditor-comment") + .forEach(function (item) { + unHlItem(item); + }); + if (this.vditor.preview.element.style.display !== "none") { + this.vditor.preview.element + .querySelectorAll(".vditor-comment") + .forEach(function (item) { + unHlItem(item); + }); + } + }; + /** 删除评论 */ + Vditor.prototype.removeCommentIds = function (removeIds) { + var _this = this; + if (this.vditor.currentMode !== "wysiwyg") { + return; + } + var removeItem = function (item, removeId) { + var ids = item.getAttribute("data-cmtids").split(" "); + ids.find(function (id, index) { + if (id === removeId) { + ids.splice(index, 1); + return true; + } + }); + if (ids.length === 0) { + item.outerHTML = item.innerHTML; + (0,selection/* getEditorRange */.zh)(_this.vditor).collapse(true); + } + else { + item.setAttribute("data-cmtids", ids.join(" ")); + } + }; + removeIds.forEach(function (removeId) { + _this.vditor.wysiwyg.element + .querySelectorAll(".vditor-comment") + .forEach(function (item) { + removeItem(item, removeId); + }); + if (_this.vditor.preview.element.style.display !== "none") { + _this.vditor.preview.element + .querySelectorAll(".vditor-comment") + .forEach(function (item) { + removeItem(item, removeId); + }); + } + }); + afterRenderEvent(this.vditor, { + enableAddUndoStack: true, + enableHint: false, + enableInput: false, + }); + }; + Vditor.prototype.init = function (id, mergedOptions) { + var _this = this; + if (this.isDestroyed) { + return; + } + this.vditor = { + currentMode: mergedOptions.mode, + element: id, + hint: new Hint(mergedOptions.hint.extend), + lute: undefined, + options: mergedOptions, + originalInnerHTML: id.innerHTML, + outline: new Outline(window.VditorI18n.outline), + tip: new Tip(), + }; + this.vditor.sv = new Editor(this.vditor); + this.vditor.undo = new undo_Undo(); + this.vditor.wysiwyg = new WYSIWYG(this.vditor); + this.vditor.ir = new IR(this.vditor); + this.vditor.toolbar = new Toolbar(this.vditor); + if (mergedOptions.resize.enable) { + this.vditor.resize = new Resize(this.vditor); + } + if (this.vditor.toolbar.elements.devtools) { + this.vditor.devtools = new DevTools(); + } + if (mergedOptions.upload.url || mergedOptions.upload.handler) { + this.vditor.upload = new Upload(); + } + (0,addScript/* addScript */.G)(mergedOptions._lutePath || + "".concat(mergedOptions.cdn, "/dist/js/lute/lute.min.js"), "vditorLuteScript").then(function () { + _this.vditor.lute = (0,setLute/* setLute */.X)({ + autoSpace: _this.vditor.options.preview.markdown.autoSpace, + gfmAutoLink: _this.vditor.options.preview.markdown.gfmAutoLink, + codeBlockPreview: _this.vditor.options.preview.markdown + .codeBlockPreview, + emojiSite: _this.vditor.options.hint.emojiPath, + emojis: _this.vditor.options.hint.emoji, + fixTermTypo: _this.vditor.options.preview.markdown.fixTermTypo, + footnotes: _this.vditor.options.preview.markdown.footnotes, + headingAnchor: false, + inlineMathDigit: _this.vditor.options.preview.math.inlineDigit, + linkBase: _this.vditor.options.preview.markdown.linkBase, + linkPrefix: _this.vditor.options.preview.markdown.linkPrefix, + listStyle: _this.vditor.options.preview.markdown.listStyle, + mark: _this.vditor.options.preview.markdown.mark, + mathBlockPreview: _this.vditor.options.preview.markdown + .mathBlockPreview, + paragraphBeginningSpace: _this.vditor.options.preview.markdown + .paragraphBeginningSpace, + sanitize: _this.vditor.options.preview.markdown.sanitize, + toc: _this.vditor.options.preview.markdown.toc, + }); + _this.vditor.preview = new Preview(_this.vditor); + initUI(_this.vditor); + if (mergedOptions.after) { + mergedOptions.after(); + } + if (mergedOptions.icon) { + // 防止初始化 2 个编辑器时加载 2 次 + (0,addScript/* addScriptSync */.J)("".concat(mergedOptions.cdn, "/dist/js/icons/").concat(mergedOptions.icon, ".js"), "vditorIconScript"); + } + }); + }; + return Vditor; +}(method["default"])); +/* harmony default export */ const src = (Vditor); + +})(); + +__webpack_exports__ = __webpack_exports__["default"]; +/******/ return __webpack_exports__; +/******/ })() +; +}); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/index.min.js b/src/main/resources/static/articles/vditor@3.11.1/dist/index.min.js new file mode 100644 index 0000000..273950e --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/index.min.js @@ -0,0 +1 @@ +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.Vditor=t():e.Vditor=t()}(this,(function(){return(()=>{var e={173:e=>{var t=function(){this.Diff_Timeout=1,this.Diff_EditCost=4,this.Match_Threshold=.5,this.Match_Distance=1e3,this.Patch_DeleteThreshold=.5,this.Patch_Margin=4,this.Match_MaxBits=32},n=-1;t.Diff=function(e,t){return[e,t]},t.prototype.diff_main=function(e,n,r,i){void 0===i&&(i=this.Diff_Timeout<=0?Number.MAX_VALUE:(new Date).getTime()+1e3*this.Diff_Timeout);var o=i;if(null==e||null==n)throw new Error("Null input. (diff_main)");if(e==n)return e?[new t.Diff(0,e)]:[];void 0===r&&(r=!0);var a=r,s=this.diff_commonPrefix(e,n),l=e.substring(0,s);e=e.substring(s),n=n.substring(s),s=this.diff_commonSuffix(e,n);var c=e.substring(e.length-s);e=e.substring(0,e.length-s),n=n.substring(0,n.length-s);var d=this.diff_compute_(e,n,a,o);return l&&d.unshift(new t.Diff(0,l)),c&&d.push(new t.Diff(0,c)),this.diff_cleanupMerge(d),d},t.prototype.diff_compute_=function(e,r,i,o){var a;if(!e)return[new t.Diff(1,r)];if(!r)return[new t.Diff(n,e)];var s=e.length>r.length?e:r,l=e.length>r.length?r:e,c=s.indexOf(l);if(-1!=c)return a=[new t.Diff(1,s.substring(0,c)),new t.Diff(0,l),new t.Diff(1,s.substring(c+l.length))],e.length>r.length&&(a[0][0]=a[2][0]=n),a;if(1==l.length)return[new t.Diff(n,e),new t.Diff(1,r)];var d=this.diff_halfMatch_(e,r);if(d){var u=d[0],p=d[1],m=d[2],f=d[3],h=d[4],v=this.diff_main(u,m,i,o),g=this.diff_main(p,f,i,o);return v.concat([new t.Diff(0,h)],g)}return i&&e.length>100&&r.length>100?this.diff_lineMode_(e,r,o):this.diff_bisect_(e,r,o)},t.prototype.diff_lineMode_=function(e,r,i){var o=this.diff_linesToChars_(e,r);e=o.chars1,r=o.chars2;var a=o.lineArray,s=this.diff_main(e,r,!1,i);this.diff_charsToLines_(s,a),this.diff_cleanupSemantic(s),s.push(new t.Diff(0,""));for(var l=0,c=0,d=0,u="",p="";l<s.length;){switch(s[l][0]){case 1:d++,p+=s[l][1];break;case n:c++,u+=s[l][1];break;case 0:if(c>=1&&d>=1){s.splice(l-c-d,c+d),l=l-c-d;for(var m=this.diff_main(u,p,!1,i),f=m.length-1;f>=0;f--)s.splice(l,0,m[f]);l+=m.length}d=0,c=0,u="",p=""}l++}return s.pop(),s},t.prototype.diff_bisect_=function(e,r,i){for(var o=e.length,a=r.length,s=Math.ceil((o+a)/2),l=s,c=2*s,d=new Array(c),u=new Array(c),p=0;p<c;p++)d[p]=-1,u[p]=-1;d[l+1]=0,u[l+1]=0;for(var m=o-a,f=m%2!=0,h=0,v=0,g=0,b=0,y=0;y<s&&!((new Date).getTime()>i);y++){for(var w=-y+h;w<=y-v;w+=2){for(var E=l+w,k=(M=w==-y||w!=y&&d[E-1]<d[E+1]?d[E+1]:d[E-1]+1)-w;M<o&&k<a&&e.charAt(M)==r.charAt(k);)M++,k++;if(d[E]=M,M>o)v+=2;else if(k>a)h+=2;else if(f){if((T=l+m-w)>=0&&T<c&&-1!=u[T])if(M>=(L=o-u[T]))return this.diff_bisectSplit_(e,r,M,k,i)}}for(var S=-y+g;S<=y-b;S+=2){for(var L,T=l+S,C=(L=S==-y||S!=y&&u[T-1]<u[T+1]?u[T+1]:u[T-1]+1)-S;L<o&&C<a&&e.charAt(o-L-1)==r.charAt(a-C-1);)L++,C++;if(u[T]=L,L>o)b+=2;else if(C>a)g+=2;else if(!f){if((E=l+m-S)>=0&&E<c&&-1!=d[E]){var M;k=l+(M=d[E])-E;if(M>=(L=o-L))return this.diff_bisectSplit_(e,r,M,k,i)}}}}return[new t.Diff(n,e),new t.Diff(1,r)]},t.prototype.diff_bisectSplit_=function(e,t,n,r,i){var o=e.substring(0,n),a=t.substring(0,r),s=e.substring(n),l=t.substring(r),c=this.diff_main(o,a,!1,i),d=this.diff_main(s,l,!1,i);return c.concat(d)},t.prototype.diff_linesToChars_=function(e,t){var n=[],r={};function i(e){for(var t="",i=0,a=-1,s=n.length;a<e.length-1;){-1==(a=e.indexOf("\n",i))&&(a=e.length-1);var l=e.substring(i,a+1);(r.hasOwnProperty?r.hasOwnProperty(l):void 0!==r[l])?t+=String.fromCharCode(r[l]):(s==o&&(l=e.substring(i),a=e.length),t+=String.fromCharCode(s),r[l]=s,n[s++]=l),i=a+1}return t}n[0]="";var o=4e4,a=i(e);return o=65535,{chars1:a,chars2:i(t),lineArray:n}},t.prototype.diff_charsToLines_=function(e,t){for(var n=0;n<e.length;n++){for(var r=e[n][1],i=[],o=0;o<r.length;o++)i[o]=t[r.charCodeAt(o)];e[n][1]=i.join("")}},t.prototype.diff_commonPrefix=function(e,t){if(!e||!t||e.charAt(0)!=t.charAt(0))return 0;for(var n=0,r=Math.min(e.length,t.length),i=r,o=0;n<i;)e.substring(o,i)==t.substring(o,i)?o=n=i:r=i,i=Math.floor((r-n)/2+n);return i},t.prototype.diff_commonSuffix=function(e,t){if(!e||!t||e.charAt(e.length-1)!=t.charAt(t.length-1))return 0;for(var n=0,r=Math.min(e.length,t.length),i=r,o=0;n<i;)e.substring(e.length-i,e.length-o)==t.substring(t.length-i,t.length-o)?o=n=i:r=i,i=Math.floor((r-n)/2+n);return i},t.prototype.diff_commonOverlap_=function(e,t){var n=e.length,r=t.length;if(0==n||0==r)return 0;n>r?e=e.substring(n-r):n<r&&(t=t.substring(0,n));var i=Math.min(n,r);if(e==t)return i;for(var o=0,a=1;;){var s=e.substring(i-a),l=t.indexOf(s);if(-1==l)return o;a+=l,0!=l&&e.substring(i-a)!=t.substring(0,a)||(o=a,a++)}},t.prototype.diff_halfMatch_=function(e,t){if(this.Diff_Timeout<=0)return null;var n=e.length>t.length?e:t,r=e.length>t.length?t:e;if(n.length<4||2*r.length<n.length)return null;var i=this;function o(e,t,n){for(var r,o,a,s,l=e.substring(n,n+Math.floor(e.length/4)),c=-1,d="";-1!=(c=t.indexOf(l,c+1));){var u=i.diff_commonPrefix(e.substring(n),t.substring(c)),p=i.diff_commonSuffix(e.substring(0,n),t.substring(0,c));d.length<p+u&&(d=t.substring(c-p,c)+t.substring(c,c+u),r=e.substring(0,n-p),o=e.substring(n+u),a=t.substring(0,c-p),s=t.substring(c+u))}return 2*d.length>=e.length?[r,o,a,s,d]:null}var a,s,l,c,d,u=o(n,r,Math.ceil(n.length/4)),p=o(n,r,Math.ceil(n.length/2));return u||p?(a=p?u&&u[4].length>p[4].length?u:p:u,e.length>t.length?(s=a[0],l=a[1],c=a[2],d=a[3]):(c=a[0],d=a[1],s=a[2],l=a[3]),[s,l,c,d,a[4]]):null},t.prototype.diff_cleanupSemantic=function(e){for(var r=!1,i=[],o=0,a=null,s=0,l=0,c=0,d=0,u=0;s<e.length;)0==e[s][0]?(i[o++]=s,l=d,c=u,d=0,u=0,a=e[s][1]):(1==e[s][0]?d+=e[s][1].length:u+=e[s][1].length,a&&a.length<=Math.max(l,c)&&a.length<=Math.max(d,u)&&(e.splice(i[o-1],0,new t.Diff(n,a)),e[i[o-1]+1][0]=1,o--,s=--o>0?i[o-1]:-1,l=0,c=0,d=0,u=0,a=null,r=!0)),s++;for(r&&this.diff_cleanupMerge(e),this.diff_cleanupSemanticLossless(e),s=1;s<e.length;){if(e[s-1][0]==n&&1==e[s][0]){var p=e[s-1][1],m=e[s][1],f=this.diff_commonOverlap_(p,m),h=this.diff_commonOverlap_(m,p);f>=h?(f>=p.length/2||f>=m.length/2)&&(e.splice(s,0,new t.Diff(0,m.substring(0,f))),e[s-1][1]=p.substring(0,p.length-f),e[s+1][1]=m.substring(f),s++):(h>=p.length/2||h>=m.length/2)&&(e.splice(s,0,new t.Diff(0,p.substring(0,h))),e[s-1][0]=1,e[s-1][1]=m.substring(0,m.length-h),e[s+1][0]=n,e[s+1][1]=p.substring(h),s++),s++}s++}},t.prototype.diff_cleanupSemanticLossless=function(e){function n(e,n){if(!e||!n)return 6;var r=e.charAt(e.length-1),i=n.charAt(0),o=r.match(t.nonAlphaNumericRegex_),a=i.match(t.nonAlphaNumericRegex_),s=o&&r.match(t.whitespaceRegex_),l=a&&i.match(t.whitespaceRegex_),c=s&&r.match(t.linebreakRegex_),d=l&&i.match(t.linebreakRegex_),u=c&&e.match(t.blanklineEndRegex_),p=d&&n.match(t.blanklineStartRegex_);return u||p?5:c||d?4:o&&!s&&l?3:s||l?2:o||a?1:0}for(var r=1;r<e.length-1;){if(0==e[r-1][0]&&0==e[r+1][0]){var i=e[r-1][1],o=e[r][1],a=e[r+1][1],s=this.diff_commonSuffix(i,o);if(s){var l=o.substring(o.length-s);i=i.substring(0,i.length-s),o=l+o.substring(0,o.length-s),a=l+a}for(var c=i,d=o,u=a,p=n(i,o)+n(o,a);o.charAt(0)===a.charAt(0);){i+=o.charAt(0),o=o.substring(1)+a.charAt(0),a=a.substring(1);var m=n(i,o)+n(o,a);m>=p&&(p=m,c=i,d=o,u=a)}e[r-1][1]!=c&&(c?e[r-1][1]=c:(e.splice(r-1,1),r--),e[r][1]=d,u?e[r+1][1]=u:(e.splice(r+1,1),r--))}r++}},t.nonAlphaNumericRegex_=/[^a-zA-Z0-9]/,t.whitespaceRegex_=/\s/,t.linebreakRegex_=/[\r\n]/,t.blanklineEndRegex_=/\n\r?\n$/,t.blanklineStartRegex_=/^\r?\n\r?\n/,t.prototype.diff_cleanupEfficiency=function(e){for(var r=!1,i=[],o=0,a=null,s=0,l=!1,c=!1,d=!1,u=!1;s<e.length;)0==e[s][0]?(e[s][1].length<this.Diff_EditCost&&(d||u)?(i[o++]=s,l=d,c=u,a=e[s][1]):(o=0,a=null),d=u=!1):(e[s][0]==n?u=!0:d=!0,a&&(l&&c&&d&&u||a.length<this.Diff_EditCost/2&&l+c+d+u==3)&&(e.splice(i[o-1],0,new t.Diff(n,a)),e[i[o-1]+1][0]=1,o--,a=null,l&&c?(d=u=!0,o=0):(s=--o>0?i[o-1]:-1,d=u=!1),r=!0)),s++;r&&this.diff_cleanupMerge(e)},t.prototype.diff_cleanupMerge=function(e){e.push(new t.Diff(0,""));for(var r,i=0,o=0,a=0,s="",l="";i<e.length;)switch(e[i][0]){case 1:a++,l+=e[i][1],i++;break;case n:o++,s+=e[i][1],i++;break;case 0:o+a>1?(0!==o&&0!==a&&(0!==(r=this.diff_commonPrefix(l,s))&&(i-o-a>0&&0==e[i-o-a-1][0]?e[i-o-a-1][1]+=l.substring(0,r):(e.splice(0,0,new t.Diff(0,l.substring(0,r))),i++),l=l.substring(r),s=s.substring(r)),0!==(r=this.diff_commonSuffix(l,s))&&(e[i][1]=l.substring(l.length-r)+e[i][1],l=l.substring(0,l.length-r),s=s.substring(0,s.length-r))),i-=o+a,e.splice(i,o+a),s.length&&(e.splice(i,0,new t.Diff(n,s)),i++),l.length&&(e.splice(i,0,new t.Diff(1,l)),i++),i++):0!==i&&0==e[i-1][0]?(e[i-1][1]+=e[i][1],e.splice(i,1)):i++,a=0,o=0,s="",l=""}""===e[e.length-1][1]&&e.pop();var c=!1;for(i=1;i<e.length-1;)0==e[i-1][0]&&0==e[i+1][0]&&(e[i][1].substring(e[i][1].length-e[i-1][1].length)==e[i-1][1]?(e[i][1]=e[i-1][1]+e[i][1].substring(0,e[i][1].length-e[i-1][1].length),e[i+1][1]=e[i-1][1]+e[i+1][1],e.splice(i-1,1),c=!0):e[i][1].substring(0,e[i+1][1].length)==e[i+1][1]&&(e[i-1][1]+=e[i+1][1],e[i][1]=e[i][1].substring(e[i+1][1].length)+e[i+1][1],e.splice(i+1,1),c=!0)),i++;c&&this.diff_cleanupMerge(e)},t.prototype.diff_xIndex=function(e,t){var r,i=0,o=0,a=0,s=0;for(r=0;r<e.length&&(1!==e[r][0]&&(i+=e[r][1].length),e[r][0]!==n&&(o+=e[r][1].length),!(i>t));r++)a=i,s=o;return e.length!=r&&e[r][0]===n?s:s+(t-a)},t.prototype.diff_prettyHtml=function(e){for(var t=[],r=/&/g,i=/</g,o=/>/g,a=/\n/g,s=0;s<e.length;s++){var l=e[s][0],c=e[s][1].replace(r,"&").replace(i,"<").replace(o,">").replace(a,"¶<br>");switch(l){case 1:t[s]='<ins style="background:#e6ffe6;">'+c+"</ins>";break;case n:t[s]='<del style="background:#ffe6e6;">'+c+"</del>";break;case 0:t[s]="<span>"+c+"</span>"}}return t.join("")},t.prototype.diff_text1=function(e){for(var t=[],n=0;n<e.length;n++)1!==e[n][0]&&(t[n]=e[n][1]);return t.join("")},t.prototype.diff_text2=function(e){for(var t=[],r=0;r<e.length;r++)e[r][0]!==n&&(t[r]=e[r][1]);return t.join("")},t.prototype.diff_levenshtein=function(e){for(var t=0,r=0,i=0,o=0;o<e.length;o++){var a=e[o][0],s=e[o][1];switch(a){case 1:r+=s.length;break;case n:i+=s.length;break;case 0:t+=Math.max(r,i),r=0,i=0}}return t+=Math.max(r,i)},t.prototype.diff_toDelta=function(e){for(var t=[],r=0;r<e.length;r++)switch(e[r][0]){case 1:t[r]="+"+encodeURI(e[r][1]);break;case n:t[r]="-"+e[r][1].length;break;case 0:t[r]="="+e[r][1].length}return t.join("\t").replace(/%20/g," ")},t.prototype.diff_fromDelta=function(e,r){for(var i=[],o=0,a=0,s=r.split(/\t/g),l=0;l<s.length;l++){var c=s[l].substring(1);switch(s[l].charAt(0)){case"+":try{i[o++]=new t.Diff(1,decodeURI(c))}catch(e){throw new Error("Illegal escape in diff_fromDelta: "+c)}break;case"-":case"=":var d=parseInt(c,10);if(isNaN(d)||d<0)throw new Error("Invalid number in diff_fromDelta: "+c);var u=e.substring(a,a+=d);"="==s[l].charAt(0)?i[o++]=new t.Diff(0,u):i[o++]=new t.Diff(n,u);break;default:if(s[l])throw new Error("Invalid diff operation in diff_fromDelta: "+s[l])}}if(a!=e.length)throw new Error("Delta length ("+a+") does not equal source text length ("+e.length+").");return i},t.prototype.match_main=function(e,t,n){if(null==e||null==t||null==n)throw new Error("Null input. (match_main)");return n=Math.max(0,Math.min(n,e.length)),e==t?0:e.length?e.substring(n,n+t.length)==t?n:this.match_bitap_(e,t,n):-1},t.prototype.match_bitap_=function(e,t,n){if(t.length>this.Match_MaxBits)throw new Error("Pattern too long for this browser.");var r=this.match_alphabet_(t),i=this;function o(e,r){var o=e/t.length,a=Math.abs(n-r);return i.Match_Distance?o+a/i.Match_Distance:a?1:o}var a=this.Match_Threshold,s=e.indexOf(t,n);-1!=s&&(a=Math.min(o(0,s),a),-1!=(s=e.lastIndexOf(t,n+t.length))&&(a=Math.min(o(0,s),a)));var l,c,d=1<<t.length-1;s=-1;for(var u,p=t.length+e.length,m=0;m<t.length;m++){for(l=0,c=p;l<c;)o(m,n+c)<=a?l=c:p=c,c=Math.floor((p-l)/2+l);p=c;var f=Math.max(1,n-c+1),h=Math.min(n+c,e.length)+t.length,v=Array(h+2);v[h+1]=(1<<m)-1;for(var g=h;g>=f;g--){var b=r[e.charAt(g-1)];if(v[g]=0===m?(v[g+1]<<1|1)&b:(v[g+1]<<1|1)&b|(u[g+1]|u[g])<<1|1|u[g+1],v[g]&d){var y=o(m,g-1);if(y<=a){if(a=y,!((s=g-1)>n))break;f=Math.max(1,2*n-s)}}}if(o(m+1,n)>a)break;u=v}return s},t.prototype.match_alphabet_=function(e){for(var t={},n=0;n<e.length;n++)t[e.charAt(n)]=0;for(n=0;n<e.length;n++)t[e.charAt(n)]|=1<<e.length-n-1;return t},t.prototype.patch_addContext_=function(e,n){if(0!=n.length){if(null===e.start2)throw Error("patch not initialized");for(var r=n.substring(e.start2,e.start2+e.length1),i=0;n.indexOf(r)!=n.lastIndexOf(r)&&r.length<this.Match_MaxBits-this.Patch_Margin-this.Patch_Margin;)i+=this.Patch_Margin,r=n.substring(e.start2-i,e.start2+e.length1+i);i+=this.Patch_Margin;var o=n.substring(e.start2-i,e.start2);o&&e.diffs.unshift(new t.Diff(0,o));var a=n.substring(e.start2+e.length1,e.start2+e.length1+i);a&&e.diffs.push(new t.Diff(0,a)),e.start1-=o.length,e.start2-=o.length,e.length1+=o.length+a.length,e.length2+=o.length+a.length}},t.prototype.patch_make=function(e,r,i){var o,a;if("string"==typeof e&&"string"==typeof r&&void 0===i)o=e,(a=this.diff_main(o,r,!0)).length>2&&(this.diff_cleanupSemantic(a),this.diff_cleanupEfficiency(a));else if(e&&"object"==typeof e&&void 0===r&&void 0===i)a=e,o=this.diff_text1(a);else if("string"==typeof e&&r&&"object"==typeof r&&void 0===i)o=e,a=r;else{if("string"!=typeof e||"string"!=typeof r||!i||"object"!=typeof i)throw new Error("Unknown call format to patch_make.");o=e,a=i}if(0===a.length)return[];for(var s=[],l=new t.patch_obj,c=0,d=0,u=0,p=o,m=o,f=0;f<a.length;f++){var h=a[f][0],v=a[f][1];switch(c||0===h||(l.start1=d,l.start2=u),h){case 1:l.diffs[c++]=a[f],l.length2+=v.length,m=m.substring(0,u)+v+m.substring(u);break;case n:l.length1+=v.length,l.diffs[c++]=a[f],m=m.substring(0,u)+m.substring(u+v.length);break;case 0:v.length<=2*this.Patch_Margin&&c&&a.length!=f+1?(l.diffs[c++]=a[f],l.length1+=v.length,l.length2+=v.length):v.length>=2*this.Patch_Margin&&c&&(this.patch_addContext_(l,p),s.push(l),l=new t.patch_obj,c=0,p=m,d=u)}1!==h&&(d+=v.length),h!==n&&(u+=v.length)}return c&&(this.patch_addContext_(l,p),s.push(l)),s},t.prototype.patch_deepCopy=function(e){for(var n=[],r=0;r<e.length;r++){var i=e[r],o=new t.patch_obj;o.diffs=[];for(var a=0;a<i.diffs.length;a++)o.diffs[a]=new t.Diff(i.diffs[a][0],i.diffs[a][1]);o.start1=i.start1,o.start2=i.start2,o.length1=i.length1,o.length2=i.length2,n[r]=o}return n},t.prototype.patch_apply=function(e,t){if(0==e.length)return[t,[]];e=this.patch_deepCopy(e);var r=this.patch_addPadding(e);t=r+t+r,this.patch_splitMax(e);for(var i=0,o=[],a=0;a<e.length;a++){var s,l,c=e[a].start2+i,d=this.diff_text1(e[a].diffs),u=-1;if(d.length>this.Match_MaxBits?-1!=(s=this.match_main(t,d.substring(0,this.Match_MaxBits),c))&&(-1==(u=this.match_main(t,d.substring(d.length-this.Match_MaxBits),c+d.length-this.Match_MaxBits))||s>=u)&&(s=-1):s=this.match_main(t,d,c),-1==s)o[a]=!1,i-=e[a].length2-e[a].length1;else if(o[a]=!0,i=s-c,d==(l=-1==u?t.substring(s,s+d.length):t.substring(s,u+this.Match_MaxBits)))t=t.substring(0,s)+this.diff_text2(e[a].diffs)+t.substring(s+d.length);else{var p=this.diff_main(d,l,!1);if(d.length>this.Match_MaxBits&&this.diff_levenshtein(p)/d.length>this.Patch_DeleteThreshold)o[a]=!1;else{this.diff_cleanupSemanticLossless(p);for(var m,f=0,h=0;h<e[a].diffs.length;h++){var v=e[a].diffs[h];0!==v[0]&&(m=this.diff_xIndex(p,f)),1===v[0]?t=t.substring(0,s+m)+v[1]+t.substring(s+m):v[0]===n&&(t=t.substring(0,s+m)+t.substring(s+this.diff_xIndex(p,f+v[1].length))),v[0]!==n&&(f+=v[1].length)}}}}return[t=t.substring(r.length,t.length-r.length),o]},t.prototype.patch_addPadding=function(e){for(var n=this.Patch_Margin,r="",i=1;i<=n;i++)r+=String.fromCharCode(i);for(i=0;i<e.length;i++)e[i].start1+=n,e[i].start2+=n;var o=e[0],a=o.diffs;if(0==a.length||0!=a[0][0])a.unshift(new t.Diff(0,r)),o.start1-=n,o.start2-=n,o.length1+=n,o.length2+=n;else if(n>a[0][1].length){var s=n-a[0][1].length;a[0][1]=r.substring(a[0][1].length)+a[0][1],o.start1-=s,o.start2-=s,o.length1+=s,o.length2+=s}if(0==(a=(o=e[e.length-1]).diffs).length||0!=a[a.length-1][0])a.push(new t.Diff(0,r)),o.length1+=n,o.length2+=n;else if(n>a[a.length-1][1].length){s=n-a[a.length-1][1].length;a[a.length-1][1]+=r.substring(0,s),o.length1+=s,o.length2+=s}return r},t.prototype.patch_splitMax=function(e){for(var r=this.Match_MaxBits,i=0;i<e.length;i++)if(!(e[i].length1<=r)){var o=e[i];e.splice(i--,1);for(var a=o.start1,s=o.start2,l="";0!==o.diffs.length;){var c=new t.patch_obj,d=!0;for(c.start1=a-l.length,c.start2=s-l.length,""!==l&&(c.length1=c.length2=l.length,c.diffs.push(new t.Diff(0,l)));0!==o.diffs.length&&c.length1<r-this.Patch_Margin;){var u=o.diffs[0][0],p=o.diffs[0][1];1===u?(c.length2+=p.length,s+=p.length,c.diffs.push(o.diffs.shift()),d=!1):u===n&&1==c.diffs.length&&0==c.diffs[0][0]&&p.length>2*r?(c.length1+=p.length,a+=p.length,d=!1,c.diffs.push(new t.Diff(u,p)),o.diffs.shift()):(p=p.substring(0,r-c.length1-this.Patch_Margin),c.length1+=p.length,a+=p.length,0===u?(c.length2+=p.length,s+=p.length):d=!1,c.diffs.push(new t.Diff(u,p)),p==o.diffs[0][1]?o.diffs.shift():o.diffs[0][1]=o.diffs[0][1].substring(p.length))}l=(l=this.diff_text2(c.diffs)).substring(l.length-this.Patch_Margin);var m=this.diff_text1(o.diffs).substring(0,this.Patch_Margin);""!==m&&(c.length1+=m.length,c.length2+=m.length,0!==c.diffs.length&&0===c.diffs[c.diffs.length-1][0]?c.diffs[c.diffs.length-1][1]+=m:c.diffs.push(new t.Diff(0,m))),d||e.splice(++i,0,c)}}},t.prototype.patch_toText=function(e){for(var t=[],n=0;n<e.length;n++)t[n]=e[n];return t.join("")},t.prototype.patch_fromText=function(e){var r=[];if(!e)return r;for(var i=e.split("\n"),o=0,a=/^@@ -(\d+),?(\d*) \+(\d+),?(\d*) @@$/;o<i.length;){var s=i[o].match(a);if(!s)throw new Error("Invalid patch string: "+i[o]);var l=new t.patch_obj;for(r.push(l),l.start1=parseInt(s[1],10),""===s[2]?(l.start1--,l.length1=1):"0"==s[2]?l.length1=0:(l.start1--,l.length1=parseInt(s[2],10)),l.start2=parseInt(s[3],10),""===s[4]?(l.start2--,l.length2=1):"0"==s[4]?l.length2=0:(l.start2--,l.length2=parseInt(s[4],10)),o++;o<i.length;){var c=i[o].charAt(0);try{var d=decodeURI(i[o].substring(1))}catch(e){throw new Error("Illegal escape in patch_fromText: "+d)}if("-"==c)l.diffs.push(new t.Diff(n,d));else if("+"==c)l.diffs.push(new t.Diff(1,d));else if(" "==c)l.diffs.push(new t.Diff(0,d));else{if("@"==c)break;if(""!==c)throw new Error('Invalid patch mode "'+c+'" in: '+d)}o++}}return r},(t.patch_obj=function(){this.diffs=[],this.start1=null,this.start2=null,this.length1=0,this.length2=0}).prototype.toString=function(){for(var e,t=["@@ -"+(0===this.length1?this.start1+",0":1==this.length1?this.start1+1:this.start1+1+","+this.length1)+" +"+(0===this.length2?this.start2+",0":1==this.length2?this.start2+1:this.start2+1+","+this.length2)+" @@\n"],r=0;r<this.diffs.length;r++){switch(this.diffs[r][0]){case 1:e="+";break;case n:e="-";break;case 0:e=" "}t[r+1]=e+encodeURI(this.diffs[r][1])+"\n"}return t.join("").replace(/%20/g," ")},e.exports=t,e.exports.diff_match_patch=t,e.exports.DIFF_DELETE=n,e.exports.DIFF_INSERT=1,e.exports.DIFF_EQUAL=0},408:(e,t,n)=>{"use strict";n.d(t,{default:()=>D});var r=n(135),i=n(840),o=n(775),a=n(428),s=n(325),l=n(483),c=n(999),d=function(e){void 0===e&&(e=document);var t=function(e){var t=document.createElement("img");t.src=e.getAttribute("data-src"),t.addEventListener("load",(function(){e.getAttribute("style")||e.getAttribute("class")||e.getAttribute("width")||e.getAttribute("height")||t.naturalHeight>t.naturalWidth&&t.naturalWidth/t.naturalHeight<document.querySelector(".vditor-reset").clientWidth/(window.innerHeight-40)&&t.naturalHeight>window.innerHeight-40&&(e.style.height=window.innerHeight-40+"px"),e.src=t.src})),e.removeAttribute("data-src")};if(!("IntersectionObserver"in window))return e.querySelectorAll("img").forEach((function(e){e.getAttribute("data-src")&&t(e)})),!1;window.vditorImageIntersectionObserver?(window.vditorImageIntersectionObserver.disconnect(),e.querySelectorAll("img").forEach((function(e){window.vditorImageIntersectionObserver.observe(e)}))):(window.vditorImageIntersectionObserver=new IntersectionObserver((function(e){e.forEach((function(e){(void 0===e.isIntersecting?0!==e.intersectionRatio:e.isIntersecting)&&e.target.getAttribute("data-src")&&t(e.target)}))})),e.querySelectorAll("img").forEach((function(e){window.vditorImageIntersectionObserver.observe(e)})))},u=n(472),p=n(280),m=n(637),f=n(825),h=n(11),v=n(194),g=n(436),b=n(229),y=n(145),w=n(538),E=n(413),k=n(106),S=n(673),L=n(214),T=n(810),C=function(e,t){if(void 0===t&&(t="zh_CN"),"undefined"!=typeof speechSynthesis&&"undefined"!=typeof SpeechSynthesisUtterance){var n=function(){var e,n;return speechSynthesis.getVoices().forEach((function(r){r.lang===t.replace("_","-")&&(e=r),r.default&&(n=r)})),e||(e=n),e},r='<svg><use xlink:href="#vditor-icon-play"></use></svg>',i='<svg><use xlink:href="#vditor-icon-pause"></use></svg>';document.getElementById("vditorIconScript")||(r='<svg viewBox="0 0 32 32"><path d="M3.436 0l25.128 16-25.128 16v-32z"></path></svg>',i='<svg viewBox="0 0 32 32"><path d="M20.617 0h9.128v32h-9.128v-32zM2.255 32v-32h9.128v32h-9.128z"></path></svg>');var o=document.querySelector(".vditor-speech");o||((o=document.createElement("button")).className="vditor-speech",e.insertAdjacentElement("beforeend",o),void 0!==speechSynthesis.onvoiceschanged&&(speechSynthesis.onvoiceschanged=n));var a=n(),s=new SpeechSynthesisUtterance;s.voice=a,s.onend=s.onerror=function(){o.style.display="none",speechSynthesis.cancel(),o.classList.remove("vditor-speech--current"),o.innerHTML=r},e.addEventListener(void 0!==window.ontouchstart?"touchend":"click",(function(t){var n=t.target;if(n.classList.contains("vditor-speech")||n.parentElement.classList.contains("vditor-speech"))return o.classList.contains("vditor-speech--current")?speechSynthesis.speaking&&(speechSynthesis.paused?(speechSynthesis.resume(),o.innerHTML=i):(speechSynthesis.pause(),o.innerHTML=r)):(s.text=o.getAttribute("data-text"),speechSynthesis.speak(s),o.classList.add("vditor-speech--current"),o.innerHTML=i),(0,T.Hc)(window.vditorSpeechRange),void e.focus();if(o.style.display="none",speechSynthesis.cancel(),o.classList.remove("vditor-speech--current"),o.innerHTML=r,0!==getSelection().rangeCount){var a=getSelection().getRangeAt(0),l=a.toString().trim();if(l){window.vditorSpeechRange=a.cloneRange();var c=a.getBoundingClientRect();o.innerHTML=r,o.style.display="block",o.style.top=c.top+c.height+document.querySelector("html").scrollTop-20+"px",void 0!==window.ontouchstart?o.style.left=t.changedTouches[t.changedTouches.length-1].pageX+2+"px":o.style.left=t.clientX+2+"px",o.setAttribute("data-text",l)}}}))}},M=function(e,t,n,r){return new(n||(n=Promise))((function(i,o){function a(e){try{l(r.next(e))}catch(e){o(e)}}function s(e){try{l(r.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}l((r=r.apply(e,t||[])).next())}))},x=function(e,t){var n,r,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(s){return function(l){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,s[0]&&(a=0)),a;)try{if(n=1,r&&(i=2&s[0]?r.return:s[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,s[1])).done)return i;switch(r=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,r=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(i=a.trys,(i=i.length>0&&i[i.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]<i[3])){a.label=s[1];break}if(6===s[0]&&a.label<i[1]){a.label=i[1],i=s;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(s);break}i[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],r=0}finally{n=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},A=function(e){var t,n={anchor:0,cdn:y.g.CDN,customEmoji:{},emojiPath:"".concat(y.g.CDN,"/dist/images/emoji"),hljs:y.g.HLJS_OPTIONS,icon:"ant",lang:"zh_CN",markdown:y.g.MARKDOWN_OPTIONS,math:y.g.MATH_OPTIONS,mode:"light",speech:{enable:!1},render:{media:{enable:!0}},theme:y.g.THEME_OPTIONS};return e.cdn&&((null===(t=e.theme)||void 0===t?void 0:t.path)||(n.theme.path="".concat(e.cdn,"/dist/css/content-theme")),e.emojiPath||(n.emojiPath="".concat(e.cdn,"/dist/images/emoji"))),(0,S.T)(n,e)},_=function(e,t){var n=A(t);return(0,E.G)("".concat(n.cdn,"/dist/js/lute/lute.min.js"),"vditorLuteScript").then((function(){var r=(0,L.X)({autoSpace:n.markdown.autoSpace,gfmAutoLink:n.markdown.gfmAutoLink,codeBlockPreview:n.markdown.codeBlockPreview,emojiSite:n.emojiPath,emojis:n.customEmoji,fixTermTypo:n.markdown.fixTermTypo,footnotes:n.markdown.footnotes,headingAnchor:0!==n.anchor,inlineMathDigit:n.math.inlineDigit,lazyLoadImage:n.lazyLoadImage,linkBase:n.markdown.linkBase,linkPrefix:n.markdown.linkPrefix,listStyle:n.markdown.listStyle,mark:n.markdown.mark,mathBlockPreview:n.markdown.mathBlockPreview,paragraphBeginningSpace:n.markdown.paragraphBeginningSpace,sanitize:n.markdown.sanitize,toc:n.markdown.toc});return(null==t?void 0:t.renderers)&&r.SetJSRenderers({renderers:{Md2HTML:t.renderers}}),r.SetHeadingID(!0),r.Md2HTML(e)}))},H=function(e,t,n){return M(void 0,void 0,void 0,(function(){var i,g,y,S;return x(this,(function(L){switch(L.label){case 0:return i=A(n),[4,_(t,i)];case 1:if(g=L.sent(),i.transform&&(g=i.transform(g)),e.innerHTML=g,e.classList.add("vditor-reset"),i.i18n)return[3,5];if(["de_DE","en_US","fr_FR","pt_BR","ja_JP","ko_KR","ru_RU","sv_SE","zh_CN","zh_TW"].includes(i.lang))return[3,2];throw new Error("options.lang error, see https://ld246.com/article/1549638745630#options");case 2:return S=(y="vditorI18nScript")+i.lang,document.querySelectorAll('head script[id^="'.concat(y,'"]')).forEach((function(e){e.id!==S&&document.head.removeChild(e)})),[4,(0,E.G)("".concat(i.cdn,"/dist/js/i18n/").concat(i.lang,".js"),S)];case 3:L.sent(),L.label=4;case 4:return[3,6];case 5:window.VditorI18n=i.i18n,L.label=6;case 6:return i.icon?[4,(0,E.G)("".concat(i.cdn,"/dist/js/icons/").concat(i.icon,".js"),"vditorIconScript")]:[3,8];case 7:L.sent(),L.label=8;case 8:return(0,w.Z)(i.theme.current,i.theme.path),1===i.anchor&&e.classList.add("vditor-reset--anchor"),(0,a.O)(e,i.hljs),(0,c.s)(i.hljs,e,i.cdn),(0,u.H)(e,{cdn:i.cdn,math:i.math}),(0,m.i)(e,i.cdn,i.mode),(0,f.J)(e,i.cdn,i.mode),(0,h.K)(e,i.cdn),(0,s.P)(e,i.cdn),(0,l.v)(e,i.cdn),(0,o.p)(e,i.cdn,i.mode),(0,v.P)(e,i.cdn,i.mode),(0,b.B)(e,i.cdn),(0,r.Q)(e,i.cdn),i.render.media.enable&&(0,p.Y)(e),i.speech.enable&&C(e),0!==i.anchor&&(T=i.anchor,document.querySelectorAll(".vditor-anchor").forEach((function(e){1===T&&e.classList.add("vditor-anchor--left"),e.onclick=function(){var t=e.getAttribute("href").substr(1),n=document.getElementById("vditorAnchor-"+t).offsetTop;document.querySelector("html").scrollTop=n}})),window.onhashchange=function(){var e=document.getElementById("vditorAnchor-"+decodeURIComponent(window.location.hash.substr(1)));e&&(document.querySelector("html").scrollTop=e.offsetTop)}),i.after&&i.after(),i.lazyLoadImage&&d(e),e.addEventListener("click",(function(t){var n=(0,k.lG)(t.target,"SPAN");if(n&&(0,k.fb)(n,"vditor-toc")){var r=e.querySelector("#"+n.getAttribute("data-target-id"));r&&window.scrollTo(window.scrollX,r.offsetTop)}else;})),[2]}var T}))}))},N=n(190),O=n(580);const D=function(){function e(){}return e.adapterRender=i,e.previewImage=N.E,e.codeRender=a.O,e.graphvizRender=l.v,e.highlightRender=c.s,e.mathRender=u.H,e.mermaidRender=m.i,e.SMILESRender=f.J,e.markmapRender=h.K,e.flowchartRender=s.P,e.chartRender=o.p,e.abcRender=r.Q,e.mindmapRender=v.P,e.plantumlRender=b.B,e.outlineRender=g.k,e.mediaRender=p.Y,e.speechRender=C,e.lazyLoadImageRender=d,e.md2html=_,e.preview=H,e.setCodeTheme=O.Y,e.setContentTheme=w.Z,e}()},145:(e,t,n)=>{"use strict";n.d(t,{H:()=>r,g:()=>i});var r="3.11.1",i=function(){function e(){}return e.ZWSP="​",e.DROP_EDITOR="application/editor",e.MOBILE_WIDTH=520,e.CLASS_MENU_DISABLED="vditor-menu--disabled",e.EDIT_TOOLBARS=["emoji","headings","bold","italic","strike","link","list","ordered-list","outdent","indent","check","line","quote","code","inline-code","insert-after","insert-before","upload","record","table"],e.CODE_THEME=["a11y-dark","agate","an-old-hope","androidstudio","arta","atom-one-dark","atom-one-dark-reasonable","base16/3024","base16/apathy","base16/apprentice","base16/ashes","base16/atelier-cave","base16/atelier-dune","base16/atelier-estuary","base16/atelier-forest","base16/atelier-heath","base16/atelier-lakeside","base16/atelier-plateau","base16/atelier-savanna","base16/atelier-seaside","base16/atelier-sulphurpool","base16/atlas","base16/bespin","base16/black-metal","base16/black-metal-bathory","base16/black-metal-burzum","base16/black-metal-dark-funeral","base16/black-metal-gorgoroth","base16/black-metal-immortal","base16/black-metal-khold","base16/black-metal-marduk","base16/black-metal-mayhem","base16/black-metal-nile","base16/black-metal-venom","base16/brewer","base16/bright","base16/brogrammer","base16/brush-trees-dark","base16/chalk","base16/circus","base16/classic-dark","base16/codeschool","base16/colors","base16/danqing","base16/darcula","base16/dark-violet","base16/darkmoss","base16/darktooth","base16/decaf","base16/default-dark","base16/dracula","base16/edge-dark","base16/eighties","base16/embers","base16/equilibrium-dark","base16/equilibrium-gray-dark","base16/espresso","base16/eva","base16/eva-dim","base16/flat","base16/framer","base16/gigavolt","base16/google-dark","base16/grayscale-dark","base16/green-screen","base16/gruvbox-dark-hard","base16/gruvbox-dark-medium","base16/gruvbox-dark-pale","base16/gruvbox-dark-soft","base16/hardcore","base16/harmonic16-dark","base16/heetch-dark","base16/helios","base16/hopscotch","base16/horizon-dark","base16/humanoid-dark","base16/ia-dark","base16/icy-dark","base16/ir-black","base16/isotope","base16/kimber","base16/london-tube","base16/macintosh","base16/marrakesh","base16/materia","base16/material","base16/material-darker","base16/material-palenight","base16/material-vivid","base16/mellow-purple","base16/mocha","base16/monokai","base16/nebula","base16/nord","base16/nova","base16/ocean","base16/oceanicnext","base16/onedark","base16/outrun-dark","base16/papercolor-dark","base16/paraiso","base16/pasque","base16/phd","base16/pico","base16/pop","base16/porple","base16/qualia","base16/railscasts","base16/rebecca","base16/ros-pine","base16/ros-pine-moon","base16/sandcastle","base16/seti-ui","base16/silk-dark","base16/snazzy","base16/solar-flare","base16/solarized-dark","base16/spacemacs","base16/summercamp","base16/summerfruit-dark","base16/synth-midnight-terminal-dark","base16/tango","base16/tender","base16/tomorrow-night","base16/twilight","base16/unikitty-dark","base16/vulcan","base16/windows-10","base16/windows-95","base16/windows-high-contrast","base16/windows-nt","base16/woodland","base16/xcode-dusk","base16/zenburn","codepen-embed","dark","devibeans","far","felipec","github-dark","github-dark-dimmed","gml","gradient-dark","hybrid","ir-black","isbl-editor-dark","kimbie-dark","lioshi","monokai","monokai-sublime","night-owl","nnfx-dark","nord","obsidian","panda-syntax-dark","paraiso-dark","pojoaque","qtcreator-dark","rainbow","shades-of-purple","srcery","stackoverflow-dark","sunburst","tomorrow-night-blue","tomorrow-night-bright","tokyo-night-dark","vs2015","xt256","ant-design","a11y-light","arduino-light","ascetic","atom-one-light","base16/atelier-cave-light","base16/atelier-dune-light","base16/atelier-estuary-light","base16/atelier-forest-light","base16/atelier-heath-light","base16/atelier-lakeside-light","base16/atelier-plateau-light","base16/atelier-savanna-light","base16/atelier-seaside-light","base16/atelier-sulphurpool-light","base16/brush-trees","base16/classic-light","base16/cupcake","base16/cupertino","base16/default-light","base16/dirtysea","base16/edge-light","base16/equilibrium-gray-light","base16/equilibrium-light","base16/fruit-soda","base16/github","base16/google-light","base16/grayscale-light","base16/gruvbox-light-hard","base16/gruvbox-light-medium","base16/gruvbox-light-soft","base16/harmonic16-light","base16/heetch-light","base16/humanoid-light","base16/horizon-light","base16/ia-light","base16/material-lighter","base16/mexico-light","base16/one-light","base16/papercolor-light","base16/ros-pine-dawn","base16/sagelight","base16/shapeshifter","base16/silk-light","base16/solar-flare-light","base16/solarized-light","base16/summerfruit-light","base16/synth-midnight-terminal-light","base16/tomorrow","base16/unikitty-light","base16/windows-10-light","base16/windows-95-light","base16/windows-high-contrast-light","brown-paper","base16/windows-nt-light","color-brewer","docco","foundation","github","googlecode","gradient-light","grayscale","idea","intellij-light","isbl-editor-light","kimbie-light","lightfair","magula","mono-blue","nnfx-light","panda-syntax-light","paraiso-light","purebasic","qtcreator-light","routeros","school-book","stackoverflow-light","tokyo-night-light","vs","xcode","default"],e.ALIAS_CODE_LANGUAGES=["abc","plantuml","mermaid","flowchart","echarts","mindmap","graphviz","math","markmap","smiles","js","ts","html","toml","c#","bat"],e.CDN="https://unpkg.com/vditor@".concat("3.11.1"),e.MARKDOWN_OPTIONS={autoSpace:!1,gfmAutoLink:!0,codeBlockPreview:!0,fixTermTypo:!1,footnotes:!0,linkBase:"",linkPrefix:"",listStyle:!1,mark:!1,mathBlockPreview:!0,paragraphBeginningSpace:!1,sanitize:!0,toc:!1},e.HLJS_OPTIONS={enable:!0,lineNumber:!1,defaultLang:"",style:"github"},e.MATH_OPTIONS={engine:"KaTeX",inlineDigit:!1,macros:{}},e.THEME_OPTIONS={current:"light",list:{"ant-design":"Ant Design",dark:"Dark",light:"Light",wechat:"WeChat"},path:"".concat(e.CDN,"/dist/css/content-theme")},e}()},825:(e,t,n)=>{"use strict";n.d(t,{J:()=>s});var r=n(145),i=n(413),o=n(840),a=n(494),s=function(e,t,n){void 0===e&&(e=document),void 0===t&&(t=r.g.CDN);var s=o.SMILESRenderAdapter.getElements(e);s.length>0&&(0,i.G)("".concat(t,"/dist/js/smiles-drawer/smiles-drawer.min.js?v=2.1.7"),"vditorAbcjsScript").then((function(){var e=new SmiDrawer({},{});s.forEach((function(t){var r=o.SMILESRenderAdapter.getCode(t).trim();if("true"!==t.getAttribute("data-processed")&&""!==r.trim()){var i="smiles"+(0,a.Wb)();t.innerHTML='<svg id="'.concat(i,'"></svg>'),e.draw(r,"#"+i,"dark"===n?"dark":void 0),t.setAttribute("data-processed","true")}}))}))}},135:(e,t,n)=>{"use strict";n.d(t,{Q:()=>a});var r=n(145),i=n(413),o=n(840),a=function(e,t){void 0===e&&(e=document),void 0===t&&(t=r.g.CDN);var n=o.abcRenderAdapter.getElements(e);n.length>0&&(0,i.G)("".concat(t,"/dist/js/abcjs/abcjs_basic.min.js"),"vditorAbcjsScript").then((function(){n.forEach((function(e){e.parentElement.classList.contains("vditor-wysiwyg__pre")||e.parentElement.classList.contains("vditor-ir__marker--pre")||"true"!==e.getAttribute("data-processed")&&(ABCJS.renderAbc(e,o.abcRenderAdapter.getCode(e).trim()),e.style.overflowX="auto",e.setAttribute("data-processed","true"))}))}))}},840:(e,t,n)=>{"use strict";n.r(t),n.d(t,{mathRenderAdapter:()=>r,SMILESRenderAdapter:()=>i,mermaidRenderAdapter:()=>o,markmapRenderAdapter:()=>a,mindmapRenderAdapter:()=>s,chartRenderAdapter:()=>l,abcRenderAdapter:()=>c,graphvizRenderAdapter:()=>d,flowchartRenderAdapter:()=>u,plantumlRenderAdapter:()=>p});var r={getCode:function(e){return e.textContent},getElements:function(e){return e.querySelectorAll(".language-math")}},i={getCode:function(e){return e.textContent},getElements:function(e){return e.querySelectorAll(".language-smiles")}},o={getCode:function(e){return e.textContent},getElements:function(e){return e.querySelectorAll(".language-mermaid")}},a={getCode:function(e){return e.textContent},getElements:function(e){return e.querySelectorAll(".language-markmap")}},s={getCode:function(e){return e.getAttribute("data-code")},getElements:function(e){return e.querySelectorAll(".language-mindmap")}},l={getCode:function(e){return e.innerText},getElements:function(e){return e.querySelectorAll(".language-echarts")}},c={getCode:function(e){return e.textContent},getElements:function(e){return e.querySelectorAll(".language-abc")}},d={getCode:function(e){return e.textContent},getElements:function(e){return e.querySelectorAll(".language-graphviz")}},u={getCode:function(e){return e.textContent},getElements:function(e){return e.querySelectorAll(".language-flowchart")}},p={getCode:function(e){return e.textContent},getElements:function(e){return e.querySelectorAll(".language-plantuml")}}},775:(e,t,n)=>{"use strict";n.d(t,{p:()=>c});var r=n(145),i=n(413),o=n(840),a=n(494),s=function(e,t,n,r){return new(n||(n=Promise))((function(i,o){function a(e){try{l(r.next(e))}catch(e){o(e)}}function s(e){try{l(r.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}l((r=r.apply(e,t||[])).next())}))},l=function(e,t){var n,r,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(s){return function(l){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,s[0]&&(a=0)),a;)try{if(n=1,r&&(i=2&s[0]?r.return:s[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,s[1])).done)return i;switch(r=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,r=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(i=a.trys,(i=i.length>0&&i[i.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]<i[3])){a.label=s[1];break}if(6===s[0]&&a.label<i[1]){a.label=i[1],i=s;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(s);break}i[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],r=0}finally{n=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},c=function(e,t,n){void 0===e&&(e=document),void 0===t&&(t=r.g.CDN);var c=o.chartRenderAdapter.getElements(e);c.length>0&&(0,i.G)("".concat(t,"/dist/js/echarts/echarts.min.js?v=5.5.1"),"vditorEchartsScript").then((function(){c.forEach((function(e){return s(void 0,void 0,void 0,(function(){var t,r,i;return l(this,(function(s){switch(s.label){case 0:if(e.parentElement.classList.contains("vditor-wysiwyg__pre")||e.parentElement.classList.contains("vditor-ir__marker--pre"))return[2];if(!(t=o.chartRenderAdapter.getCode(e).trim()))return[2];s.label=1;case 1:return s.trys.push([1,3,,4]),"true"===e.getAttribute("data-processed")?[2]:[4,(0,a.Qf)(t)];case 2:return r=s.sent(),echarts.init(e,"dark"===n?"dark":void 0).setOption(r),e.setAttribute("data-processed","true"),[3,4];case 3:return i=s.sent(),e.className="vditor-reset--error",e.innerHTML="echarts render error: <br>".concat(i),[3,4];case 4:return[2]}}))}))}))}))}},428:(e,t,n)=>{"use strict";n.d(t,{O:()=>o});var r=n(105),i=n(145),o=function(e,t){Array.from(e.querySelectorAll("pre > code")).filter((function(t,n){return!t.parentElement.classList.contains("vditor-wysiwyg__pre")&&!t.parentElement.classList.contains("vditor-ir__marker--pre")&&(!(t.classList.contains("language-mermaid")||t.classList.contains("language-flowchart")||t.classList.contains("language-echarts")||t.classList.contains("language-mindmap")||t.classList.contains("language-plantuml")||t.classList.contains("language-markmap")||t.classList.contains("language-abc")||t.classList.contains("language-graphviz")||t.classList.contains("language-math")||t.classList.contains("language-smiles"))&&(!(t.style.maxHeight.indexOf("px")>-1)&&!(e.classList.contains("vditor-preview")&&n>5)))})).forEach((function(e){var n,o,a,s=e.innerText;if(e.classList.contains("highlight-chroma")){var l=e.cloneNode(!0);l.querySelectorAll(".highlight-ln").forEach((function(e){e.remove()})),s=l.innerText}else s.endsWith("\n")&&(s=s.substr(0,s.length-1));var c='<svg><use xlink:href="#vditor-icon-copy"></use></svg>';document.getElementById("vditorIconScript")||(c='<svg viewBox="0 0 32 32"><path d="M22.545-0h-17.455c-1.6 0-2.909 1.309-2.909 2.909v20.364h2.909v-20.364h17.455v-2.909zM26.909 5.818h-16c-1.6 0-2.909 1.309-2.909 2.909v20.364c0 1.6 1.309 2.909 2.909 2.909h16c1.6 0 2.909-1.309 2.909-2.909v-20.364c0-1.6-1.309-2.909-2.909-2.909zM26.909 29.091h-16v-20.364h16v20.364z"></path></svg>');var d=document.createElement("div");d.className="vditor-copy",d.innerHTML='<span aria-label="'.concat((null===(n=window.VditorI18n)||void 0===n?void 0:n.copy)||"复制","\"\nonmouseover=\"this.setAttribute('aria-label', '").concat((null===(o=window.VditorI18n)||void 0===o?void 0:o.copy)||"复制","')\"\nclass=\"vditor-tooltipped vditor-tooltipped__w\"\nonclick=\"event.stopPropagation();this.previousElementSibling.select();document.execCommand('copy');this.setAttribute('aria-label', '").concat((null===(a=window.VditorI18n)||void 0===a?void 0:a.copied)||"已复制","');this.previousElementSibling.blur()\">").concat(c,"</span>");var u=document.createElement("textarea");u.value=(0,r.X)(s),d.insertAdjacentElement("afterbegin",u),t&&t.renderMenu&&t.renderMenu(e,d),e.before(d),e.style.maxHeight=window.outerHeight-40+"px",e.insertAdjacentHTML("afterend",'<span style="position: absolute">'.concat(i.g.ZWSP,"</span>"))}))}},325:(e,t,n)=>{"use strict";n.d(t,{P:()=>a});var r=n(145),i=n(413),o=n(840),a=function(e,t){void 0===t&&(t=r.g.CDN);var n=o.flowchartRenderAdapter.getElements(e);0!==n.length&&(0,i.G)("".concat(t,"/dist/js/flowchart.js/flowchart.min.js"),"vditorFlowchartScript").then((function(){n.forEach((function(e){if("true"!==e.getAttribute("data-processed")){var t=flowchart.parse(o.flowchartRenderAdapter.getCode(e));e.innerHTML="",t.drawSVG(e),e.setAttribute("data-processed","true")}}))}))}},483:(e,t,n)=>{"use strict";n.d(t,{v:()=>a});var r=n(145),i=n(413),o=n(840),a=function(e,t){void 0===t&&(t=r.g.CDN);var n=o.graphvizRenderAdapter.getElements(e);0!==n.length&&(0,i.G)("".concat(t,"/dist/js/graphviz/viz.js"),"vditorGraphVizScript").then((function(){n.forEach((function(e){var t=o.graphvizRenderAdapter.getCode(e);if(!e.parentElement.classList.contains("vditor-wysiwyg__pre")&&!e.parentElement.classList.contains("vditor-ir__marker--pre")&&"true"!==e.getAttribute("data-processed")&&""!==t.trim()){try{var n=new Blob(["importScripts('".concat(document.getElementById("vditorGraphVizScript").src.replace("viz.js","full.render.js"),"');")],{type:"application/javascript"}),r=(window.URL||window.webkitURL).createObjectURL(n),i=new Worker(r);new Viz({worker:i}).renderSVGElement(t).then((function(t){e.innerHTML=t.outerHTML})).catch((function(t){e.innerHTML="graphviz render error: <br>".concat(t),e.className="vditor-reset--error"}))}catch(e){console.error("graphviz error",e)}e.setAttribute("data-processed","true")}}))}))}},999:(e,t,n)=>{"use strict";n.d(t,{s:()=>a});var r=n(145),i=n(413),o=n(290),a=function(e,t,n){void 0===t&&(t=document),void 0===n&&(n=r.g.CDN);var a=e.style;r.g.CODE_THEME.includes(a)||(a="github");var s=document.getElementById("vditorHljsStyle"),l="".concat(n,"/dist/js/highlight.js/styles/").concat(a,".min.css");(s&&s.getAttribute("href")!==l&&s.remove(),(0,o.c)("".concat(n,"/dist/js/highlight.js/styles/").concat(a,".min.css"),"vditorHljsStyle"),!1!==e.enable)&&(0!==t.querySelectorAll("pre > code").length&&(0,i.G)("".concat(n,"/dist/js/highlight.js/highlight.min.js?v=11.7.0"),"vditorHljsScript").then((function(){(0,i.G)("".concat(n,"/dist/js/highlight.js/third-languages.js?v=1.0.1"),"vditorHljsThirdScript").then((function(){t.querySelectorAll("pre > code").forEach((function(t){if(!t.parentElement.classList.contains("vditor-ir__marker--pre")&&!t.parentElement.classList.contains("vditor-wysiwyg__pre")&&!(t.classList.contains("language-mermaid")||t.classList.contains("language-flowchart")||t.classList.contains("language-echarts")||t.classList.contains("language-mindmap")||t.classList.contains("language-plantuml")||t.classList.contains("language-smiles")||t.classList.contains("language-abc")||t.classList.contains("language-graphviz")||t.classList.contains("language-math"))){""!==e.defaultLang&&-1===t.className.indexOf("language-")&&t.classList.add("language-"+e.defaultLang);var n=t.className.replace("language-","");if(window.hljs.getLanguage(n)||(n="plaintext"),t.innerHTML=window.hljs.highlight(t.textContent,{language:n,ignoreIllegals:!0}).value,t.classList.add("hljs"),e.lineNumber){t.classList.add("vditor-linenumber");var r=t.querySelector(".vditor-linenumber__temp");r||((r=document.createElement("div")).className="vditor-linenumber__temp",t.insertAdjacentElement("beforeend",r));var i=getComputedStyle(t).whiteSpace,o=!1;"pre-wrap"!==i&&"pre-line"!==i||(o=!0);var a="",s=t.textContent.split(/\r\n|\r|\n/g);s.pop(),s.map((function(e){var t="";o&&(r.textContent=e||"\n",t=' style="height:'.concat(r.getBoundingClientRect().height,'px"')),a+="<span".concat(t,"></span>")})),r.style.display="none",a='<span class="vditor-linenumber__rows">'.concat(a,"</span>"),t.insertAdjacentHTML("beforeend",a)}}}))}))})))}},11:(e,t,n)=>{"use strict";n.d(t,{K:()=>l});var r=n(145),i=n(413),o=n(840),a={},s=function(e,t){var n=window.markmap,r=n.Transformer,i=n.Markmap,o=n.deriveOptions,s=(n.globalCSS,new r);e.innerHTML='<svg style="width:100%"></svg>';var l=e.firstChild,c=i.create(l,null),d=function(e,t){var n=e.transform(t),r=Object.keys(n.features).filter((function(e){return!a[e]}));r.forEach((function(e){a[e]=!0}));var i=e.getAssets(r),o=i.styles,s=i.scripts,l=window.markmap;return o&&l.loadCSS(o),s&&l.loadJS(s),n}(s,t),u=d.root,p=d.frontmatter,m=o(null==p?void 0:p.markmap);c.setData(u,m),c.fit()},l=function(e,t){void 0===e&&(e=document),void 0===t&&(t=r.g.CDN);var n=o.markmapRenderAdapter.getElements(e);0!==n.length&&(0,i.G)("".concat(t,"/dist/js/markmap/markmap.min.js"),"vditorMarkerScript").then((function(){n.forEach((function(e){var t=o.markmapRenderAdapter.getCode(e);if("true"!==e.getAttribute("data-processed")&&""!==t.trim()){var n=document.createElement("div");n.className="language-markmap",e.parentNode.appendChild(n),s(n,t),"CODE"==e.parentNode.childNodes[0].nodeName&&e.parentNode.removeChild(e.parentNode.childNodes[0])}}))}))}},472:(e,t,n)=>{"use strict";n.d(t,{H:()=>l});var r=n(145),i=n(413),o=n(290),a=n(105),s=n(840),l=function(e,t){void 0===e&&(e=document);var n=s.mathRenderAdapter.getElements(e);if(0!==n.length){var l={cdn:r.g.CDN,math:{engine:"KaTeX",inlineDigit:!1,macros:{}}};if(t&&t.math&&(t.math=Object.assign({},l.math,t.math)),"KaTeX"===(t=Object.assign({},l,t)).math.engine)(0,o.c)("".concat(t.cdn,"/dist/js/katex/katex.min.css?v=0.16.9"),"vditorKatexStyle"),(0,i.G)("".concat(t.cdn,"/dist/js/katex/katex.min.js?v=0.16.9"),"vditorKatexScript").then((function(){(0,i.G)("".concat(t.cdn,"/dist/js/katex/mhchem.min.js?v=0.16.9"),"vditorKatexChemScript").then((function(){n.forEach((function(e){if(!e.parentElement.classList.contains("vditor-wysiwyg__pre")&&!e.parentElement.classList.contains("vditor-ir__marker--pre")&&!e.getAttribute("data-math")){var n=(0,a.X)(s.mathRenderAdapter.getCode(e));e.setAttribute("data-math",n);try{e.innerHTML=katex.renderToString(n,{displayMode:"DIV"===e.tagName,output:"html",macros:t.math.macros})}catch(t){e.innerHTML=t.message,e.className="language-math vditor-reset--error"}e.addEventListener("copy",(function(e){e.stopPropagation(),e.preventDefault();var t=e.currentTarget.closest(".language-math");e.clipboardData.setData("text/html",t.innerHTML),e.clipboardData.setData("text/plain",t.getAttribute("data-math"))}))}}))}))}));else if("MathJax"===t.math.engine){window.MathJax||(window.MathJax={loader:{paths:{mathjax:"".concat(t.cdn,"/dist/js/mathjax")}},startup:{typeset:!1},tex:{macros:t.math.macros}},Object.assign(window.MathJax,t.math.mathJaxOptions)),(0,i.J)("".concat(t.cdn,"/dist/js/mathjax/tex-svg-full.js"),"protyleMathJaxScript");var c=function(e,t){var n=(0,a.X)(e.textContent).trim(),r=window.MathJax.getMetricsFor(e);r.display="DIV"===e.tagName,window.MathJax.tex2svgPromise(n,r).then((function(r){e.innerHTML="",e.setAttribute("data-math",n),e.append(r),window.MathJax.startup.document.clear(),window.MathJax.startup.document.updateDocument();var i=r.querySelector('[data-mml-node="merror"]');i&&""!==i.textContent.trim()&&(e.innerHTML=i.textContent.trim(),e.className="vditor-reset--error"),t&&t()}))};window.MathJax.startup.promise.then((function(){for(var e=[],t=function(t){var r=n[t];r.parentElement.classList.contains("vditor-wysiwyg__pre")||r.parentElement.classList.contains("vditor-ir__marker--pre")||r.getAttribute("data-math")||!(0,a.X)(r.textContent).trim()||e.push((function(e){t===n.length-1?c(r):c(r,e)}))},r=0;r<n.length;r++)t(r);!function(e){if(0!==e.length){var t=0,n=e[e.length-1],r=function(){var i=e[t++];i===n?i():i(r)};r()}}(e)}))}}}},280:(e,t,n)=>{"use strict";n.d(t,{Y:()=>i});var r=n(494),i=function(e){e&&e.querySelectorAll("a").forEach((function(e){var t=e.getAttribute("href");t&&(t.match(/^.+.(mp4|m4v|ogg|ogv|webm)$/)?function(e,t){e.insertAdjacentHTML("afterend",'<video controls="controls" src="'.concat(t,'"></video>')),e.remove()}(e,t):t.match(/^.+.(mp3|wav|flac)$/)?function(e,t){e.insertAdjacentHTML("afterend",'<audio controls="controls" src="'.concat(t,'"></audio>')),e.remove()}(e,t):function(e,t){var n=t.match(/\/\/(?:www\.)?(?:youtu\.be\/|youtube\.com\/(?:embed\/|v\/|watch\?v=|watch\?.+&v=))([\w|-]{11})(?:(?:[\?&]t=)(\S+))?/),i=t.match(/\/\/v\.youku\.com\/v_show\/id_(\w+)=*\.html/),o=t.match(/\/\/v\.qq\.com\/x\/cover\/.*\/([^\/]+)\.html\??.*/),a=t.match(/(?:www\.|\/\/)coub\.com\/view\/(\w+)/),s=t.match(/(?:www\.|\/\/)facebook\.com\/([^\/]+)\/videos\/([0-9]+)/),l=t.match(/.+dailymotion.com\/(video|hub)\/(\w+)\?/),c=t.match(/(?:www\.|\/\/)bilibili\.com\/video\/(\w+)/),d=t.match(/(?:www\.|\/\/)ted\.com\/talks\/(\w+)/);if(n&&11===n[1].length)e.insertAdjacentHTML("afterend",'<iframe class="iframe__video" src="//www.youtube.com/embed/'.concat(n[1]+(n[2]?"?start="+n[2]:""),'"></iframe>')),e.remove();else if(i&&i[1])e.insertAdjacentHTML("afterend",'<iframe class="iframe__video" src="//player.youku.com/embed/'.concat(i[1],'"></iframe>')),e.remove();else if(o&&o[1])e.insertAdjacentHTML("afterend",'<iframe class="iframe__video" src="https://v.qq.com/txp/iframe/player.html?vid='.concat(o[1],'"></iframe>')),e.remove();else if(a&&a[1])e.insertAdjacentHTML("afterend",'<iframe class="iframe__video"\n src="//coub.com/embed/'.concat(a[1],'?muted=false&autostart=false&originalSize=true&startWithHD=true"></iframe>')),e.remove();else if(s&&s[0])e.insertAdjacentHTML("afterend",'<iframe class="iframe__video"\n src="https://www.facebook.com/plugins/video.php?href='.concat(encodeURIComponent(s[0]),'"></iframe>')),e.remove();else if(l&&l[2])e.insertAdjacentHTML("afterend",'<iframe class="iframe__video"\n src="https://www.dailymotion.com/embed/video/'.concat(l[2],'"></iframe>')),e.remove();else if(t.indexOf("bilibili.com")>-1&&(t.indexOf("bvid=")>-1||c&&c[1])){var u={bvid:(0,r.on)("bvid",t)||c&&c[1],page:"1",high_quality:"1",as_wide:"1",allowfullscreen:"true",autoplay:"0"};new URL(t.startsWith("http")?t:"https:"+t).search.split("&").forEach((function(e,t){if(e){0===t&&(e=e.substr(1));var n=e.split("=");u[n[0]]=n[1]}}));var p="https://player.bilibili.com/player.html?",m=Object.keys(u);m.forEach((function(e,t){p+="".concat(e,"=").concat(u[e]),t<m.length-1&&(p+="&")})),e.insertAdjacentHTML("afterend",'<iframe class="iframe__video" src="'.concat(p,'"></iframe>')),e.remove()}else d&&d[1]&&(e.insertAdjacentHTML("afterend",'<iframe class="iframe__video" src="//embed.ted.com/talks/'.concat(d[1],'"></iframe>')),e.remove())}(e,t))}))}},637:(e,t,n)=>{"use strict";n.d(t,{i:()=>c});var r=n(145),i=n(413),o=n(840),a=n(494),s=function(e,t,n,r){return new(n||(n=Promise))((function(i,o){function a(e){try{l(r.next(e))}catch(e){o(e)}}function s(e){try{l(r.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}l((r=r.apply(e,t||[])).next())}))},l=function(e,t){var n,r,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(s){return function(l){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,s[0]&&(a=0)),a;)try{if(n=1,r&&(i=2&s[0]?r.return:s[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,s[1])).done)return i;switch(r=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,r=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(i=a.trys,(i=i.length>0&&i[i.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]<i[3])){a.label=s[1];break}if(6===s[0]&&a.label<i[1]){a.label=i[1],i=s;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(s);break}i[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],r=0}finally{n=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},c=function(e,t,n){void 0===e&&(e=document),void 0===t&&(t=r.g.CDN);var c=o.mermaidRenderAdapter.getElements(e);0!==c.length&&(0,i.G)("".concat(t,"/dist/js/mermaid/mermaid.min.js?v=11.6.0"),"vditorMermaidScript").then((function(){var e={securityLevel:"loose",altFontFamily:"sans-serif",fontFamily:"sans-serif",startOnLoad:!1,flowchart:{htmlLabels:!0,useMaxWidth:!0},sequence:{useMaxWidth:!0,diagramMarginX:8,diagramMarginY:8,boxMargin:8,showSequenceNumbers:!0},gantt:{leftPadding:75,rightPadding:20}};"dark"===n&&(e.theme="dark"),mermaid.initialize(e),c.forEach((function(e){return s(void 0,void 0,void 0,(function(){var t,n,r,i,s;return l(this,(function(l){switch(l.label){case 0:if(t=o.mermaidRenderAdapter.getCode(e),"true"===e.getAttribute("data-processed")||""===t.trim())return[2];n="mermaid"+(0,a.Wb)(),l.label=1;case 1:return l.trys.push([1,3,,4]),[4,mermaid.render(n,e.textContent)];case 2:return r=l.sent(),e.innerHTML=r.svg,[3,4];case 3:return i=l.sent(),s=document.querySelector("#"+n),e.innerHTML="".concat(s.outerHTML,'<br>\n<div style="text-align: left"><small>').concat(i.message.replace(/\n/,"<br>"),"</small></div>"),s.parentElement.remove(),[3,4];case 4:return e.setAttribute("data-processed","true"),[2]}}))}))}))}))}},194:(e,t,n)=>{"use strict";n.d(t,{P:()=>a});var r=n(145),i=n(413),o=n(840),a=function(e,t,n){void 0===e&&(e=document),void 0===t&&(t=r.g.CDN);var a=o.mindmapRenderAdapter.getElements(e);a.length>0&&(0,i.G)("".concat(t,"/dist/js/echarts/echarts.min.js?v=5.5.1"),"vditorEchartsScript").then((function(){a.forEach((function(e){if(!e.parentElement.classList.contains("vditor-wysiwyg__pre")&&!e.parentElement.classList.contains("vditor-ir__marker--pre")){var t=o.mindmapRenderAdapter.getCode(e);if(t)try{if("true"===e.getAttribute("data-processed"))return;echarts.init(e,"dark"===n?"dark":void 0).setOption({series:[{data:[JSON.parse(decodeURIComponent(t))],initialTreeDepth:-1,itemStyle:{borderWidth:0,color:"#4285f4"},label:{backgroundColor:"#f6f8fa",borderColor:"#d1d5da",borderRadius:5,borderWidth:.5,color:"#586069",lineHeight:20,offset:[-5,0],padding:[0,5],position:"insideRight"},lineStyle:{color:"#d1d5da",width:1},roam:!0,symbol:function(e,t){var n;return(null===(n=null==t?void 0:t.data)||void 0===n?void 0:n.children)?"circle":"path://"},type:"tree"}],tooltip:{trigger:"item",triggerOn:"mousemove"}}),e.setAttribute("data-processed","true")}catch(t){e.className="vditor-reset--error",e.innerHTML="mindmap render error: <br>".concat(t)}}}))}))}},436:(e,t,n)=>{"use strict";n.d(t,{k:()=>o});var r=n(771),i=n(472),o=function(e,t,n){var o="",a=[];if(Array.from(e.children).forEach((function(e,t){if((0,r.W)(e)){if(n){var i=e.id.lastIndexOf("_");e.id=e.id.substring(0,-1===i?void 0:i)+"_"+t}a.push(e.id),o+=e.outerHTML.replace("<wbr>","")}})),""===o)return t.innerHTML="","";var s=document.createElement("div");if(n)n.lute.SetToC(!0),"wysiwyg"!==n.currentMode||n.preview.element.contains(e)?"ir"!==n.currentMode||n.preview.element.contains(e)?s.innerHTML=n.lute.HTML2VditorDOM("<p>[ToC]</p>"+o):s.innerHTML=n.lute.SpinVditorIRDOM("<p>[ToC]</p>"+o):s.innerHTML=n.lute.SpinVditorDOM("<p>[ToC]</p>"+o),n.lute.SetToC(n.options.preview.markdown.toc);else{t.classList.add("vditor-outline");var l=Lute.New();l.SetToC(!0),s.innerHTML=l.HTML2VditorDOM("<p>[ToC]</p>"+o)}var c=s.firstElementChild.querySelectorAll("li > span[data-target-id]");return c.forEach((function(e,t){if(e.nextElementSibling&&"UL"===e.nextElementSibling.tagName){var n="<svg class='vditor-outline__action'><use xlink:href='#vditor-icon-down'></use></svg>";document.getElementById("vditorIconScript")||(n='<svg class="vditor-outline__action" viewBox="0 0 32 32"><path d="M3.76 6.12l12.24 12.213 12.24-12.213 3.76 3.76-16 16-16-16 3.76-3.76z"></path></svg>'),e.innerHTML="".concat(n,"<span>").concat(e.innerHTML,"</span>")}else e.innerHTML="<svg></svg><span>".concat(e.innerHTML,"</span>");e.setAttribute("data-target-id",a[t])})),o=s.firstElementChild.innerHTML,0===c.length?(t.innerHTML="",o):(t.innerHTML=o,n&&(0,i.H)(t,{cdn:n.options.cdn,math:n.options.preview.math}),t.firstElementChild.addEventListener("click",(function(r){for(var i=r.target;i&&!i.isEqualNode(t);){if(i.classList.contains("vditor-outline__action")){i.classList.contains("vditor-outline__action--close")?(i.classList.remove("vditor-outline__action--close"),i.parentElement.nextElementSibling.setAttribute("style","display:block")):(i.classList.add("vditor-outline__action--close"),i.parentElement.nextElementSibling.setAttribute("style","display:none")),r.preventDefault(),r.stopPropagation();break}if(i.getAttribute("data-target-id")){r.preventDefault(),r.stopPropagation();var o=document.getElementById(i.getAttribute("data-target-id"));if(!o)return;if(n)if("auto"===n.options.height){var a=o.offsetTop+n.element.offsetTop;n.options.toolbarConfig.pin||(a+=n.toolbar.element.offsetHeight),window.scrollTo(window.scrollX,a)}else n.element.offsetTop<window.scrollY&&window.scrollTo(window.scrollX,n.element.offsetTop),n.preview.element.contains(e)?e.parentElement.scrollTop=o.offsetTop:e.scrollTop=o.offsetTop;else window.scrollTo(window.scrollX,o.offsetTop);break}i=i.parentElement}})),o)}},229:(e,t,n)=>{"use strict";n.d(t,{B:()=>a});var r=n(145),i=n(413),o=n(840),a=function(e,t){void 0===e&&(e=document),void 0===t&&(t=r.g.CDN);var n=o.plantumlRenderAdapter.getElements(e);0!==n.length&&(0,i.G)("".concat(t,"/dist/js/plantuml/plantuml-encoder.min.js"),"vditorPlantumlScript").then((function(){n.forEach((function(e){if(!e.parentElement.classList.contains("vditor-wysiwyg__pre")&&!e.parentElement.classList.contains("vditor-ir__marker--pre")){var t=o.plantumlRenderAdapter.getCode(e).trim();if(t)try{e.innerHTML='<object type="image/svg+xml" data="https://www.plantuml.com/plantuml/svg/~1'.concat(plantumlEncoder.encode(t),'"/>')}catch(t){e.className="vditor-reset--error",e.innerHTML="plantuml render error: <br>".concat(t)}}}))}))}},214:(e,t,n)=>{"use strict";n.d(t,{X:()=>r});var r=function(e){var t=Lute.New();return t.PutEmojis(e.emojis),t.SetEmojiSite(e.emojiSite),t.SetHeadingAnchor(e.headingAnchor),t.SetInlineMathAllowDigitAfterOpenMarker(e.inlineMathDigit),t.SetAutoSpace(e.autoSpace),t.SetToC(e.toc),t.SetFootnotes(e.footnotes),t.SetFixTermTypo(e.fixTermTypo),t.SetVditorCodeBlockPreview(e.codeBlockPreview),t.SetVditorMathBlockPreview(e.mathBlockPreview),t.SetSanitize(e.sanitize),t.SetChineseParagraphBeginningSpace(e.paragraphBeginningSpace),t.SetRenderListStyle(e.listStyle),t.SetLinkBase(e.linkBase),t.SetLinkPrefix(e.linkPrefix),t.SetMark(e.mark),t.SetGFMAutoLink(e.gfmAutoLink),e.lazyLoadImage&&t.SetImageLazyLoading(e.lazyLoadImage),t}},190:(e,t,n)=>{"use strict";n.d(t,{E:()=>r});var r=function(e,t,n){void 0===t&&(t="zh_CN"),void 0===n&&(n="classic");var r=e.getBoundingClientRect();document.body.insertAdjacentHTML("beforeend",'<div class="vditor vditor-img'.concat("dark"===n?" vditor--dark":"",'">\n <div class="vditor-img__bar">\n <span class="vditor-img__btn" data-deg="0">\n <svg><use xlink:href="#vditor-icon-redo"></use></svg>\n ').concat(window.VditorI18n.spin,"\n </span>\n <span class=\"vditor-img__btn\" onclick=\"this.parentElement.parentElement.outerHTML = '';document.body.style.overflow = ''\">\n X  ").concat(window.VditorI18n.close,'\n </span>\n </div>\n <div class="vditor-img__img" onclick="this.parentElement.outerHTML = \'\';document.body.style.overflow = \'\'">\n <img style="width: ').concat(e.width,"px;height:").concat(e.height,"px;transform: translate3d(").concat(r.left,"px, ").concat(r.top-36,'px, 0)" src="').concat(e.getAttribute("src"),'">\n </div>\n</div>')),document.body.style.overflow="hidden";var i=document.querySelector(".vditor-img img"),o="translate3d(".concat(Math.max(0,window.innerWidth-e.naturalWidth)/2,"px, ").concat(Math.max(0,window.innerHeight-36-e.naturalHeight)/2,"px, 0)");setTimeout((function(){i.setAttribute("style","transition: transform .3s ease-in-out;transform: ".concat(o)),setTimeout((function(){i.parentElement.scrollTo((i.parentElement.scrollWidth-i.parentElement.clientWidth)/2,(i.parentElement.scrollHeight-i.parentElement.clientHeight)/2)}),400)}));var a=document.querySelector(".vditor-img__btn");a.addEventListener("click",(function(){var t=parseInt(a.getAttribute("data-deg"),10)+90;t/90%2==1&&e.naturalWidth>i.parentElement.clientHeight?i.style.transform="translate3d(".concat(Math.max(0,window.innerWidth-e.naturalWidth)/2,"px, ").concat(e.naturalWidth/2-e.naturalHeight/2,"px, 0) rotateZ(").concat(t,"deg)"):i.style.transform="".concat(o," rotateZ(").concat(t,"deg)"),a.setAttribute("data-deg",t.toString()),setTimeout((function(){i.parentElement.scrollTo((i.parentElement.scrollWidth-i.parentElement.clientWidth)/2,(i.parentElement.scrollHeight-i.parentElement.clientHeight)/2)}),400)}))}},580:(e,t,n)=>{"use strict";n.d(t,{Y:()=>o});var r=n(145),i=n(290),o=function(e,t){void 0===t&&(t=r.g.CDN),r.g.CODE_THEME.includes(e)||(e="github");var n=document.getElementById("vditorHljsStyle"),o="".concat(t,"/dist/js/highlight.js/styles/").concat(e,".min.css");n?n.getAttribute("href")!==o&&(n.remove(),(0,i.c)(o,"vditorHljsStyle")):(0,i.c)(o,"vditorHljsStyle")}},538:(e,t,n)=>{"use strict";n.d(t,{Z:()=>i});var r=n(290),i=function(e,t){if(e&&t){var n=document.getElementById("vditorContentTheme"),i="".concat(t,"/").concat(e,".css");n?n.getAttribute("href")!==i&&(n.remove(),(0,r.c)(i,"vditorContentTheme")):(0,r.c)(i,"vditorContentTheme")}}},413:(e,t,n)=>{"use strict";n.d(t,{J:()=>r,G:()=>i});var r=function(e,t){if(document.getElementById(t))return!1;var n=new XMLHttpRequest;n.open("GET",e,!1),n.setRequestHeader("Accept","text/javascript, application/javascript, application/ecmascript, application/x-ecmascript, */*; q=0.01"),n.send("");var r=document.createElement("script");r.type="text/javascript",r.text=n.responseText,r.id=t,document.head.appendChild(r)},i=function(e,t){return new Promise((function(n,r){if(document.getElementById(t))return n(!0),!1;var i=document.createElement("script");i.src=e,i.async=!0,document.head.appendChild(i),i.onerror=function(e){r(e)},i.onload=function(){if(document.getElementById(t))return i.remove(),n(!0),!1;i.id=t,n(!0)}}))}},290:(e,t,n)=>{"use strict";n.d(t,{c:()=>r});var r=function(e,t){if(!document.getElementById(t)){var n=document.createElement("link");n.id=t,n.rel="stylesheet",n.type="text/css",n.href=e,document.getElementsByTagName("head")[0].appendChild(n)}}},105:(e,t,n)=>{"use strict";n.d(t,{X:()=>r});var r=function(e){return e.replace(/\u00a0/g," ")}},410:(e,t,n)=>{"use strict";n.d(t,{G6:()=>r,vU:()=>i,pK:()=>o,Le:()=>a,yl:()=>s,ns:()=>l,i7:()=>c});var r=function(){return navigator.userAgent.indexOf("Safari")>-1&&-1===navigator.userAgent.indexOf("Chrome")},i=function(){return navigator.userAgent.toLowerCase().indexOf("firefox")>-1},o=function(){try{return"undefined"!=typeof localStorage}catch(e){return!1}},a=function(){return navigator.userAgent.indexOf("iPhone")>-1?"touchstart":"click"},s=function(e){return navigator.platform.toUpperCase().indexOf("MAC")>=0?!(!e.metaKey||e.ctrlKey):!(e.metaKey||!e.ctrlKey)},l=function(e){return/Mac/.test(navigator.platform)||"iPhone"===navigator.platform?e.indexOf("⇧")>-1&&i()&&(e=e.replace(";",":").replace("=","+").replace("-","_")):(e=(e=e.startsWith("⌘")?e.replace("⌘","⌘+"):e.startsWith("⌥")&&"⌘"!==e.substr(1,1)?e.replace("⌥","⌥+"):e.replace("⇧⌘","⌘+⇧+").replace("⌥⌘","⌥+⌘+")).replace("⌘","Ctrl").replace("⇧","Shift").replace("⌥","Alt")).indexOf("Shift")>-1&&(e=e.replace(";",":").replace("=","+").replace("-","_")),e},c=function(){return/Chrome/.test(navigator.userAgent)&&/Google Inc/.test(navigator.vendor)}},494:(e,t,n)=>{"use strict";n.d(t,{Wb:()=>r,on:()=>i,Qf:()=>o});var r=function(){return([1e7].toString()+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,(function(e){return(parseInt(e,10)^window.crypto.getRandomValues(new Uint32Array(1))[0]&15>>parseInt(e,10)/4).toString(16)}))},i=function(e,t){void 0===t&&(t=window.location.search);var n=t.substring(t.indexOf("?")),r=n.indexOf("#");return new URLSearchParams(n.substring(0,r>=0?r:void 0)).get(e)},o=function(e){return Function('"use strict";return ('.concat(e,")"))()}},106:(e,t,n)=>{"use strict";n.d(t,{JQ:()=>i,E2:()=>o,O9:()=>a,a1:()=>s,F9:()=>l,lG:()=>c,fb:()=>d,DX:()=>u});var r=n(771),i=function(e,t){for(var n=d(e,t),r=!1,i=!1;n&&!n.classList.contains("vditor-reset")&&!i;)(r=d(n.parentElement,t))?n=r:i=!0;return n||!1},o=function(e,t){for(var n=(0,r.S)(e,t),i=!1,o=!1;n&&!n.classList.contains("vditor-reset")&&!o;)(i=(0,r.S)(n.parentElement,t))?n=i:o=!0;return n||!1},a=function(e){var t=o(e,"UL"),n=o(e,"OL"),r=t;return n&&(!t||t&&n.contains(t))&&(r=n),r},s=function(e,t,n){if(!e)return!1;3===e.nodeType&&(e=e.parentElement);for(var r=e,i=!1;r&&!i&&!r.classList.contains("vditor-reset");)r.getAttribute(t)===n?i=!0:r=r.parentElement;return i&&r},l=function(e){if(!e)return!1;3===e.nodeType&&(e=e.parentElement);var t=e,n=!1,r=s(e,"data-block","0");if(r)return r;for(;t&&!n&&!t.classList.contains("vditor-reset");)"H1"===t.tagName||"H2"===t.tagName||"H3"===t.tagName||"H4"===t.tagName||"H5"===t.tagName||"H6"===t.tagName||"P"===t.tagName||"BLOCKQUOTE"===t.tagName||"OL"===t.tagName||"UL"===t.tagName?n=!0:t=t.parentElement;return n&&t},c=function(e,t){if(!e)return!1;3===e.nodeType&&(e=e.parentElement);for(var n=e,r=!1;n&&!r&&!n.classList.contains("vditor-reset");)n.nodeName===t?r=!0:n=n.parentElement;return r&&n},d=function(e,t){if(!e)return!1;3===e.nodeType&&(e=e.parentElement);for(var n=e,r=!1;n&&!r&&!n.classList.contains("vditor-reset");)n.classList.contains(t)?r=!0:n=n.parentElement;return r&&n},u=function(e){for(;e&&e.lastChild;)e=e.lastChild;return e}},771:(e,t,n)=>{"use strict";n.d(t,{S:()=>r,W:()=>i});var r=function(e,t){if(!e)return!1;3===e.nodeType&&(e=e.parentElement);for(var n=e,r=!1;n&&!r&&!n.classList.contains("vditor-reset");)0===n.nodeName.indexOf(t)?r=!0:n=n.parentElement;return r&&n},i=function(e){var t=r(e,"H");return!(!t||2!==t.tagName.length||"HR"===t.tagName)&&t}},673:(e,t,n)=>{"use strict";n.d(t,{T:()=>r});var r=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var n={},i=function(e){for(var t in e)e.hasOwnProperty(t)&&("[object Object]"===Object.prototype.toString.call(e[t])?n[t]=r(n[t],e[t]):n[t]=e[t])},o=0;o<e.length;o++)i(e[o]);return n}},810:(e,t,n)=>{"use strict";n.d(t,{zh:()=>a,Ny:()=>s,Gb:()=>l,Hc:()=>c,im:()=>d,$j:()=>u,ib:()=>p,oC:()=>m});var r=n(145),i=n(410),o=n(106),a=function(e){var t,n=e[e.currentMode].element;return getSelection().rangeCount>0&&(t=getSelection().getRangeAt(0),n.isEqualNode(t.startContainer)||n.contains(t.startContainer))?t:e[e.currentMode].range?e[e.currentMode].range:(n.focus(),(t=n.ownerDocument.createRange()).setStart(n,0),t.collapse(!0),t)},s=function(e){var t=window.getSelection().getRangeAt(0);if(!e.contains(t.startContainer)&&!(0,o.fb)(t.startContainer,"vditor-panel--none"))return{left:0,top:0};var n,r=e.parentElement.getBoundingClientRect();if(0===t.getClientRects().length)if(3===t.startContainer.nodeType){var i=t.startContainer.parentElement;if(!(i&&i.getClientRects().length>0))return{left:0,top:0};n=i.getClientRects()[0]}else{var a=t.startContainer.children;if(a[t.startOffset]&&a[t.startOffset].getClientRects().length>0)n=a[t.startOffset].getClientRects()[0];else if(t.startContainer.childNodes.length>0){var s=t.cloneRange();t.selectNode(t.startContainer.childNodes[Math.max(0,t.startOffset-1)]),n=t.getClientRects()[0],t.setEnd(s.endContainer,s.endOffset),t.setStart(s.startContainer,s.startOffset)}else n=t.startContainer.getClientRects()[0];if(!n){for(var l=t.startContainer.childNodes[t.startOffset];!l.getClientRects||l.getClientRects&&0===l.getClientRects().length;)l=l.parentElement;n=l.getClientRects()[0]}}else n=t.getClientRects()[0];return{left:n.left-r.left,top:n.top-r.top}},l=function(e,t){if(!t){if(0===getSelection().rangeCount)return!1;t=getSelection().getRangeAt(0)}var n=t.commonAncestorContainer;return e.isEqualNode(n)||e.contains(n)},c=function(e){var t=window.getSelection();t.removeAllRanges(),t.addRange(e)},d=function(e,t,n){var r={end:0,start:0};if(!n){if(0===getSelection().rangeCount)return r;n=window.getSelection().getRangeAt(0)}if(l(t,n)){var i=n.cloneRange();e.childNodes[0]&&e.childNodes[0].childNodes[0]?i.setStart(e.childNodes[0].childNodes[0],0):i.selectNodeContents(e),i.setEnd(n.startContainer,n.startOffset),r.start=i.toString().length,r.end=r.start+n.toString().length}return r},u=function(e,t,n){var r=0,i=0,o=n.childNodes[i],a=!1,s=!1;e=Math.max(0,e),t=Math.max(0,t);var l=n.ownerDocument.createRange();for(l.setStart(o||n,0),l.collapse(!0);!s&&o;){var d=r+o.textContent.length;if(!a&&e>=r&&e<=d&&(0===e?l.setStart(o,0):3===o.childNodes[0].nodeType?l.setStart(o.childNodes[0],e-r):o.nextSibling?l.setStartBefore(o.nextSibling):l.setStartAfter(o),a=!0,e===t)){s=!0;break}a&&t>=r&&t<=d&&(0===t?l.setEnd(o,0):3===o.childNodes[0].nodeType?l.setEnd(o.childNodes[0],t-r):o.nextSibling?l.setEndBefore(o.nextSibling):l.setEndAfter(o),s=!0),r=d,o=n.childNodes[++i]}return!s&&n.childNodes[i-1]&&l.setStartBefore(n.childNodes[i-1]),c(l),l},p=function(e,t){var n=e.querySelector("wbr");if(n){if(n.previousElementSibling)if(n.previousElementSibling.isSameNode(n.previousSibling)){if(n.previousElementSibling.lastChild)return t.setStartBefore(n),t.collapse(!0),c(t),!(0,i.i7)()||"EM"!==n.previousElementSibling.tagName&&"STRONG"!==n.previousElementSibling.tagName&&"S"!==n.previousElementSibling.tagName||(t.insertNode(document.createTextNode(r.g.ZWSP)),t.collapse(!1)),void n.remove();t.setStartAfter(n.previousElementSibling)}else t.setStart(n.previousSibling,n.previousSibling.textContent.length);else n.previousSibling?t.setStart(n.previousSibling,n.previousSibling.textContent.length):n.nextSibling?3===n.nextSibling.nodeType?t.setStart(n.nextSibling,0):t.setStartBefore(n.nextSibling):t.setStart(n.parentElement,0);t.collapse(!0),n.remove(),c(t)}},m=function(e,t){var n=document.createElement("div");n.innerHTML=e;var r=n.querySelectorAll("p");1===r.length&&!r[0].previousSibling&&!r[0].nextSibling&&t[t.currentMode].element.children.length>0&&"P"===n.firstElementChild.tagName&&(e=r[0].innerHTML.trim());var i=document.createElement("div");i.innerHTML=e;var s=a(t);if(""!==s.toString()&&(t[t.currentMode].preventInput=!0,document.execCommand("delete",!1,"")),i.firstElementChild&&"0"===i.firstElementChild.getAttribute("data-block")){i.lastElementChild.insertAdjacentHTML("beforeend","<wbr>");var l=(0,o.F9)(s.startContainer);l?l.insertAdjacentHTML("afterend",i.innerHTML):t[t.currentMode].element.insertAdjacentHTML("beforeend",i.innerHTML),p(t[t.currentMode].element,s)}else{var d=document.createElement("template");d.innerHTML=e,s.insertNode(d.content.cloneNode(!0)),s.collapse(!1),c(s)}}}},t={};function n(r){var i=t[r];if(void 0!==i)return i.exports;var o=t[r]={exports:{}};return e[r](o,o.exports,n),o.exports}n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};return(()=>{"use strict";n.d(r,{default:()=>Jn});var e,t=n(408),i=n(145),o=n(105),a=function(e){return"sv"===e.currentMode?(0,o.X)("".concat(e.sv.element.textContent,"\n").replace(/\n\n$/,"\n")):"wysiwyg"===e.currentMode?e.lute.VditorDOM2Md(e.wysiwyg.element.innerHTML):"ir"===e.currentMode?e.lute.VditorIRDOM2Md(e.ir.element.innerHTML):""},s=n(413),l=function(){function e(){this.element=document.createElement("div"),this.element.className="vditor-devtools",this.element.innerHTML='<div class="vditor-reset--error"></div><div style="height: 100%;"></div>'}return e.prototype.renderEchart=function(e){var t=this;"block"===e.devtools.element.style.display&&(0,s.G)("".concat(e.options.cdn,"/dist/js/echarts/echarts.min.js?v=5.5.1"),"vditorEchartsScript").then((function(){t.ASTChart||(t.ASTChart=echarts.init(e.devtools.element.lastElementChild));try{t.element.lastElementChild.style.display="block",t.element.firstElementChild.innerHTML="",t.ASTChart.setOption({series:[{data:JSON.parse(e.lute.RenderEChartsJSON(a(e))),initialTreeDepth:-1,label:{align:"left",backgroundColor:"rgba(68, 77, 86, .68)",borderRadius:3,color:"#d1d5da",fontSize:12,lineHeight:12,offset:[9,12],padding:[2,4,2,4],position:"top",verticalAlign:"middle"},lineStyle:{color:"#4285f4",type:"curve",width:1},orient:"vertical",roam:!0,type:"tree"}],toolbox:{bottom:25,emphasis:{iconStyle:{color:"#4285f4"}},feature:{restore:{show:!0},saveAsImage:{show:!0}},right:15,show:!0}}),t.ASTChart.resize()}catch(e){t.element.lastElementChild.style.display="none",t.element.firstElementChild.innerHTML=e}}))},e}(),c=n(410),d=function(e,t){t.forEach((function(t){if(e[t]){var n=e[t].children[0];n&&n.classList.contains("vditor-menu--current")&&n.classList.remove("vditor-menu--current")}}))},u=function(e,t){t.forEach((function(t){if(e[t]){var n=e[t].children[0];n&&!n.classList.contains("vditor-menu--current")&&n.classList.add("vditor-menu--current")}}))},p=function(e,t){t.forEach((function(t){if(e[t]){var n=e[t].children[0];n&&n.classList.contains(i.g.CLASS_MENU_DISABLED)&&n.classList.remove(i.g.CLASS_MENU_DISABLED)}}))},m=function(e,t){t.forEach((function(t){if(e[t]){var n=e[t].children[0];n&&!n.classList.contains(i.g.CLASS_MENU_DISABLED)&&n.classList.add(i.g.CLASS_MENU_DISABLED)}}))},f=function(e,t){t.forEach((function(t){e[t]&&e[t]&&(e[t].style.display="none")}))},h=function(e,t){t.forEach((function(t){e[t]&&e[t]&&(e[t].style.display="block")}))},v=function(e,t,n){t.includes("subToolbar")&&(e.toolbar.element.querySelectorAll(".vditor-hint").forEach((function(e){n&&e.isEqualNode(n)||(e.style.display="none")})),e.toolbar.elements.emoji&&(e.toolbar.elements.emoji.lastElementChild.style.display="none")),t.includes("hint")&&(e.hint.element.style.display="none"),e.wysiwyg.popover&&t.includes("popover")&&(e.wysiwyg.popover.style.display="none")},g=function(e,t,n,r){n.addEventListener((0,c.Le)(),(function(r){r.preventDefault(),r.stopPropagation(),n.classList.contains(i.g.CLASS_MENU_DISABLED)||(e.toolbar.element.querySelectorAll(".vditor-hint--current").forEach((function(e){e.classList.remove("vditor-hint--current")})),"block"===t.style.display?t.style.display="none":(v(e,["subToolbar","hint","popover"],n.parentElement.parentElement),n.classList.contains("vditor-tooltipped")||n.classList.add("vditor-hint--current"),t.style.display="block",e.toolbar.element.getBoundingClientRect().right-n.getBoundingClientRect().right<250?t.classList.add("vditor-panel--left"):t.classList.remove("vditor-panel--left")))}))},b=n(106),y=n(771),w=function(e,t,n,r){r&&console.log("".concat(e," - ").concat(n,": ").concat(t))},E=n(135),k=n(775),S=n(428),L=n(325),T=n(483),C=n(999),M=n(472),x=n(637),A=n(11),_=n(194),H=n(229),N=n(825),O=function(e,t){if(e)if("html-block"!==e.parentElement.getAttribute("data-type")){var n=e.firstElementChild.className.replace("language-","");if("abc"===n)(0,E.Q)(e,t.options.cdn);else if("mermaid"===n)(0,x.i)(e,t.options.cdn,t.options.theme);else if("smiles"===n)(0,N.J)(e,t.options.cdn,t.options.theme);else if("markmap"===n)(0,A.K)(e,t.options.cdn);else if("flowchart"===n)(0,L.P)(e,t.options.cdn);else if("echarts"===n)(0,k.p)(e,t.options.cdn,t.options.theme);else if("mindmap"===n)(0,_.P)(e,t.options.cdn,t.options.theme);else if("plantuml"===n)(0,H.B)(e,t.options.cdn);else if("graphviz"===n)(0,T.v)(e,t.options.cdn);else if("math"===n)(0,M.H)(e,{cdn:t.options.cdn,math:t.options.preview.math});else{t.options.customRenders.find((function(r){if(r.language===n)return r.render(e,t),!0}))||((0,C.s)(Object.assign({},t.options.preview.hljs),e,t.options.cdn),(0,S.O)(e,t.options.preview.hljs))}e.setAttribute("data-render","1")}else e.setAttribute("data-render","1")},D=n(810),I=function(e){if("sv"!==e.currentMode){var t=e[e.currentMode].element,n=e.outline.render(e);""===n&&(n="[ToC]"),t.querySelectorAll('[data-type="toc-block"]').forEach((function(t){t.innerHTML=n,(0,M.H)(t,{cdn:e.options.cdn,math:e.options.preview.math})}))}},j=function(e,t){var n=(0,b.lG)(e.target,"SPAN");if(n&&(0,b.fb)(n,"vditor-toc")){var r=t[t.currentMode].element.querySelector("#"+n.getAttribute("data-target-id"));if(r)if("auto"===t.options.height){var i=r.offsetTop+t.element.offsetTop;t.options.toolbarConfig.pin||(i+=t.toolbar.element.offsetHeight),window.scrollTo(window.scrollX,i)}else t.element.offsetTop<window.scrollY&&window.scrollTo(window.scrollX,t.element.offsetTop),t[t.currentMode].element.scrollTop=r.offsetTop}else;},R=function(e,t,n,r){if(e.previousElementSibling&&e.previousElementSibling.classList.contains("vditor-toc")){if("Backspace"===n.key&&0===(0,D.im)(e,t[t.currentMode].element,r).start)return e.previousElementSibling.remove(),ut(t),!0;if(it(t,n,r,e,e.previousElementSibling))return!0}if(e.nextElementSibling&&e.nextElementSibling.classList.contains("vditor-toc")){if("Delete"===n.key&&(0,D.im)(e,t[t.currentMode].element,r).start>=e.textContent.trimRight().length)return e.nextElementSibling.remove(),ut(t),!0;if(rt(t,n,r,e,e.nextElementSibling))return!0}if("Backspace"===n.key||"Delete"===n.key){var i=(0,b.fb)(r.startContainer,"vditor-toc");if(i)return i.remove(),ut(t),!0}},P=function(e,t,n,r){void 0===n&&(n=!1);var o=(0,b.F9)(t.startContainer);if(o&&!n&&"code-block"!==o.getAttribute("data-type")){if(ct(o.innerHTML)&&o.previousElementSibling||dt(o.innerHTML))return;for(var s=(0,D.im)(o,e.ir.element,t).start,l=!0,c=s-1;c>o.textContent.substr(0,s).lastIndexOf("\n");c--)if(" "!==o.textContent.charAt(c)&&"\t"!==o.textContent.charAt(c)){l=!1;break}0===s&&(l=!1);var d=!0;for(c=s-1;c<o.textContent.length;c++)if(" "!==o.textContent.charAt(c)&&"\n"!==o.textContent.charAt(c)){d=!1;break}if(l)return void("function"==typeof e.options.input&&e.options.input(a(e)));if(d&&/^#{1,6} $/.test(o.textContent)&&(d=!1),d)if(!(0,b.fb)(t.startContainer,"vditor-ir__marker")){var u=t.startContainer.previousSibling;return u&&3!==u.nodeType&&u.classList.contains("vditor-ir__node--expand")&&u.classList.remove("vditor-ir__node--expand"),void("function"==typeof e.options.input&&e.options.input(a(e)))}}if(e.ir.element.querySelectorAll(".vditor-ir__node--expand").forEach((function(e){e.classList.remove("vditor-ir__node--expand")})),o||(o=e.ir.element),!o.querySelector("wbr")){var p=(0,b.fb)(t.startContainer,"vditor-ir__preview");p?p.previousElementSibling.insertAdjacentHTML("beforeend","<wbr>"):t.insertNode(document.createElement("wbr"))}o.querySelectorAll("[style]").forEach((function(e){e.removeAttribute("style")})),"link-ref-defs-block"===o.getAttribute("data-type")&&(o=e.ir.element);var m,f=o.isEqualNode(e.ir.element),h=(0,b.a1)(o,"data-type","footnotes-block"),v="";if(f)v=o.innerHTML;else{var g=(0,y.S)(t.startContainer,"BLOCKQUOTE"),E=(0,b.O9)(t.startContainer);if(E&&(o=E),g&&(!E||E&&!g.contains(E))&&(o=g),h&&(o=h),v=o.outerHTML,"UL"===o.tagName||"OL"===o.tagName){var k=o.previousElementSibling,S=o.nextElementSibling;!k||"UL"!==k.tagName&&"OL"!==k.tagName||(v=k.outerHTML+v,k.remove()),!S||"UL"!==S.tagName&&"OL"!==S.tagName||(v+=S.outerHTML,S.remove()),v=v.replace("<div><wbr><br></div>","<li><p><wbr><br></p></li>")}else o.previousElementSibling&&""!==o.previousElementSibling.textContent.replace(i.g.ZWSP,"")&&r&&"insertParagraph"===r.inputType&&(v=o.previousElementSibling.outerHTML+v,o.previousElementSibling.remove());o.innerText.startsWith("```")||(e.ir.element.querySelectorAll("[data-type='link-ref-defs-block']").forEach((function(e){e&&!o.isEqualNode(e)&&(v+=e.outerHTML,e.remove())})),e.ir.element.querySelectorAll("[data-type='footnotes-block']").forEach((function(e){e&&!o.isEqualNode(e)&&(v+=e.outerHTML,e.remove())})))}if(w("SpinVditorIRDOM",v,"argument",e.options.debugger),v=e.lute.SpinVditorIRDOM(v),w("SpinVditorIRDOM",v,"result",e.options.debugger),f)o.innerHTML=v;else if(o.outerHTML=v,h){var L=(0,b.a1)(e.ir.element.querySelector("wbr"),"data-type","footnotes-def");if(L){var T=L.textContent,C=T.substring(1,T.indexOf("]:")),M=e.ir.element.querySelector('sup[data-type="footnotes-ref"][data-footnotes-label="'.concat(C,'"]'));M&&M.setAttribute("aria-label",T.substr(C.length+3).trim().substr(0,24))}}var x,A=e.ir.element.querySelectorAll("[data-type='link-ref-defs-block']");A.forEach((function(e,t){0===t?m=e:(m.insertAdjacentHTML("beforeend",e.innerHTML),e.remove())})),A.length>0&&e.ir.element.insertAdjacentElement("beforeend",A[0]);var _=e.ir.element.querySelectorAll("[data-type='footnotes-block']");_.forEach((function(e,t){0===t?x=e:(x.insertAdjacentHTML("beforeend",e.innerHTML),e.remove())})),_.length>0&&e.ir.element.insertAdjacentElement("beforeend",_[0]),(0,D.ib)(e.ir.element,t),e.ir.element.querySelectorAll(".vditor-ir__preview[data-render='2']").forEach((function(t){O(t,e)})),I(e),At(e,{enableAddUndoStack:!0,enableHint:!0,enableInput:!0})},q=function(e,t){if(""===e)return!1;if(-1===e.indexOf("⇧")&&-1===e.indexOf("⌘")&&-1===e.indexOf("⌥"))return!((0,c.yl)(t)||t.altKey||t.shiftKey||t.code!==e);if("⇧Tab"===e)return!((0,c.yl)(t)||t.altKey||!t.shiftKey||"Tab"!==t.code);var n=e.split("");if(e.startsWith("⌥")){var r=3===n.length?n[2]:n[1];return!((3===n.length?!(0,c.yl)(t):(0,c.yl)(t))||!t.altKey||t.shiftKey||t.code!==(/^[0-9]$/.test(r)?"Digit":"Key")+r)}"⌘Enter"===e&&(n=["⌘","Enter"]);var i=n.length>2&&"⇧"===n[0],o=i?n[2]:n[1];return!i||!(0,c.vU)()&&/Mac/.test(navigator.platform)||("-"===o?o="_":"="===o&&(o="+")),!(!(0,c.yl)(t)||t.key.toLowerCase()!==o.toLowerCase()||t.altKey||!(!i&&!t.shiftKey||i&&t.shiftKey))},B=function(e,t){t.ir.element.querySelectorAll(".vditor-ir__node--expand").forEach((function(e){e.classList.remove("vditor-ir__node--expand")}));var n=(0,b.JQ)(e.startContainer,"vditor-ir__node"),r=!e.collapsed&&(0,b.JQ)(e.endContainer,"vditor-ir__node");if(e.collapsed||n&&n===r){n&&(n.classList.add("vditor-ir__node--expand"),n.classList.remove("vditor-ir__node--hidden"),(0,D.Hc)(e));var i=function(e){var t=e.startContainer;if(3===t.nodeType&&t.nodeValue.length!==e.startOffset)return!1;for(var n=t.nextSibling;n&&""===n.textContent;)n=n.nextSibling;if(!n){var r=(0,b.fb)(t,"vditor-ir__marker");if(r&&!r.nextSibling){var i=t.parentElement.parentElement.nextSibling;if(i&&3!==i.nodeType&&i.classList.contains("vditor-ir__node"))return i}return!1}return!(!n||3===n.nodeType||!n.classList.contains("vditor-ir__node")||n.getAttribute("data-block"))&&n}(e);if(i)return i.classList.add("vditor-ir__node--expand"),void i.classList.remove("vditor-ir__node--hidden");var o=function(e){var t=e.startContainer,n=t.previousSibling;return!(3!==t.nodeType||0!==e.startOffset||!n||3===n.nodeType||!n.classList.contains("vditor-ir__node")||n.getAttribute("data-block"))&&n}(e);return o?(o.classList.add("vditor-ir__node--expand"),void o.classList.remove("vditor-ir__node--hidden")):void 0}},V=n(190),U=function(e,t){e.querySelectorAll("[data-type=footnotes-link]").forEach((function(e){for(var n=e.parentElement,r=n.nextSibling;r&&r.textContent.startsWith(" ");){var i=r;i.childNodes.forEach((function(e){n.append(e.cloneNode(!0))})),r=r.nextSibling,i.remove()}t&&t(n)}))},W=function(e,t){var n,r=getSelection().getRangeAt(0).cloneRange(),i=r.startContainer;3!==r.startContainer.nodeType&&"DIV"===r.startContainer.tagName&&(i=r.startContainer.childNodes[r.startOffset-1]);var o=(0,b.a1)(i,"data-block","0");if(o&&t&&("deleteContentBackward"===t.inputType||" "===t.data)){for(var a=(0,D.im)(o,e.sv.element,r).start,s=!0,l=a-1;l>o.textContent.substr(0,a).lastIndexOf("\n");l--)if(" "!==o.textContent.charAt(l)&&"\t"!==o.textContent.charAt(l)){s=!1;break}if(0===a&&(s=!1),s)return void Re(e);if("deleteContentBackward"===t.inputType){var c=(0,b.a1)(i,"data-type","code-block-open-marker")||(0,b.a1)(i,"data-type","code-block-close-marker");if(c){var d;if("code-block-close-marker"===c.getAttribute("data-type"))if(d=De(i,"code-block-open-marker"))return d.textContent=c.textContent,void Re(e);if("code-block-open-marker"===c.getAttribute("data-type"))if(d=De(i,"code-block-close-marker",!1))return d.textContent=c.textContent,void Re(e)}var u=(0,b.a1)(i,"data-type","math-block-open-marker");if(u){var p=u.nextElementSibling.nextElementSibling;return void(p&&"math-block-close-marker"===p.getAttribute("data-type")&&(p.remove(),Re(e)))}o.querySelectorAll('[data-type="code-block-open-marker"]').forEach((function(e){1===e.textContent.length&&e.remove()})),o.querySelectorAll('[data-type="code-block-close-marker"]').forEach((function(e){1===e.textContent.length&&e.remove()}));var m=(0,b.a1)(i,"data-type","heading-marker");if(m&&-1===m.textContent.indexOf("#"))return void Re(e)}if((" "===t.data||"deleteContentBackward"===t.inputType)&&((0,b.a1)(i,"data-type","padding")||(0,b.a1)(i,"data-type","li-marker")||(0,b.a1)(i,"data-type","task-marker")||(0,b.a1)(i,"data-type","blockquote-marker")))return void Re(e)}if(o&&"$$"===o.textContent.trimRight())Re(e);else{o||(o=e.sv.element),"link-ref-defs-block"===(null===(n=o.firstElementChild)||void 0===n?void 0:n.getAttribute("data-type"))&&(o=e.sv.element),(0,b.a1)(i,"data-type","footnotes-link")&&(o=e.sv.element),-1===o.textContent.indexOf(Lute.Caret)&&r.insertNode(document.createTextNode(Lute.Caret)),o.querySelectorAll("[style]").forEach((function(e){e.removeAttribute("style")})),o.querySelectorAll("font").forEach((function(e){e.outerHTML=e.innerHTML}));var f=o.textContent,h=o.isEqualNode(e.sv.element);if(h)f=o.textContent;else{o.previousElementSibling&&(f=o.previousElementSibling.textContent+f,o.previousElementSibling.remove()),o.previousElementSibling&&0===f.indexOf("---\n")&&(f=o.previousElementSibling.textContent+f,o.previousElementSibling.remove());var v="";e.sv.element.querySelectorAll("[data-type='link-ref-defs-block']").forEach((function(e,t){e&&!o.isEqualNode(e.parentElement)&&(v+=e.parentElement.textContent+"\n",e.parentElement.remove())})),e.sv.element.querySelectorAll("[data-type='footnotes-link']").forEach((function(e,t){e&&!o.isEqualNode(e.parentElement)&&(v+=e.parentElement.textContent+"\n",e.parentElement.remove())})),f=v+f}f=Ie(f,e),h?o.innerHTML=f:o.outerHTML=f,e.sv.element.querySelectorAll("[data-type='link-ref-defs-block']").forEach((function(t){e.sv.element.insertAdjacentElement("beforeend",t.parentElement)})),U(e.sv.element,(function(t){e.sv.element.insertAdjacentElement("beforeend",t)})),(0,D.ib)(e.sv.element,r),_e(e),Re(e,{enableAddUndoStack:!0,enableHint:!0,enableInput:!0})}},z=n(538),G=function(e){"dark"===e.options.theme?e.element.classList.add("vditor--dark"):e.element.classList.remove("vditor--dark")},K=function(e){var t=window.innerWidth<=i.g.MOBILE_WIDTH?10:35;if("none"!==e.wysiwyg.element.parentElement.style.display){var n=(e.wysiwyg.element.parentElement.clientWidth-e.options.preview.maxWidth)/2;e.wysiwyg.element.style.padding="10px ".concat(Math.max(t,n),"px")}if("none"!==e.ir.element.parentElement.style.display){n=(e.ir.element.parentElement.clientWidth-e.options.preview.maxWidth)/2;e.ir.element.style.padding="10px ".concat(Math.max(t,n),"px")}"block"!==e.preview.element.style.display?e.toolbar.element.style.paddingLeft=Math.max(5,parseInt(e[e.currentMode].element.style.paddingLeft||"0",10)+("left"===e.options.outline.position?e.outline.element.offsetWidth:0))+"px":e.toolbar.element.style.paddingLeft=5+("left"===e.options.outline.position?e.outline.element.offsetWidth:0)+"px"},F=function(e){if(e.options.typewriterMode){var t=window.innerHeight;"number"==typeof e.options.height?(t=e.options.height,"number"==typeof e.options.minHeight&&(t=Math.max(t,e.options.minHeight)),t=Math.min(window.innerHeight,t)):t=e.element.clientHeight,e.element.classList.contains("vditor--fullscreen")&&(t=window.innerHeight),e[e.currentMode].element.style.setProperty("--editor-bottom",(t-e.toolbar.element.offsetHeight)/2+"px")}};function Z(){window.removeEventListener("resize",e)}var J,X,Y=function(t){F(t),Z(),window.addEventListener("resize",e=function(){K(t),F(t)});var n=(0,c.pK)()&&localStorage.getItem(t.options.cache.id);return t.options.cache.enable&&n||(t.options.value?n=t.options.value:t.originalInnerHTML?n=t.lute.HTML2Md(t.originalInnerHTML):t.options.cache.enable||(n="")),n||""},Q=function(e){clearTimeout(e[e.currentMode].hlToolbarTimeoutId),e[e.currentMode].hlToolbarTimeoutId=window.setTimeout((function(){if("false"!==e[e.currentMode].element.getAttribute("contenteditable")&&(0,D.Gb)(e[e.currentMode].element)){d(e.toolbar.elements,i.g.EDIT_TOOLBARS),p(e.toolbar.elements,i.g.EDIT_TOOLBARS);var t=(0,D.zh)(e),n=t.startContainer;3===t.startContainer.nodeType&&(n=t.startContainer.parentElement),n.classList.contains("vditor-reset")&&(n=n.childNodes[t.startOffset]),("sv"===e.currentMode?(0,b.a1)(n,"data-type","heading"):(0,y.W)(n))&&u(e.toolbar.elements,["headings"]),("sv"===e.currentMode?(0,b.a1)(n,"data-type","blockquote"):(0,b.lG)(n,"BLOCKQUOTE"))&&u(e.toolbar.elements,["quote"]),(0,b.a1)(n,"data-type","strong")&&u(e.toolbar.elements,["bold"]),(0,b.a1)(n,"data-type","em")&&u(e.toolbar.elements,["italic"]),(0,b.a1)(n,"data-type","s")&&u(e.toolbar.elements,["strike"]),(0,b.a1)(n,"data-type","a")&&u(e.toolbar.elements,["link"]);var r=(0,b.lG)(n,"LI");r?(r.classList.contains("vditor-task")?u(e.toolbar.elements,["check"]):"OL"===r.parentElement.tagName?u(e.toolbar.elements,["ordered-list"]):"UL"===r.parentElement.tagName&&u(e.toolbar.elements,["list"]),p(e.toolbar.elements,["outdent","indent"])):m(e.toolbar.elements,["outdent","indent"]),(0,b.a1)(n,"data-type","code-block")&&(m(e.toolbar.elements,["headings","bold","italic","strike","line","quote","list","ordered-list","check","code","inline-code","upload","link","table","record"]),u(e.toolbar.elements,["code"])),(0,b.a1)(n,"data-type","code")&&(m(e.toolbar.elements,["headings","bold","italic","strike","line","quote","list","ordered-list","check","code","upload","link","table","record"]),u(e.toolbar.elements,["inline-code"])),(0,b.a1)(n,"data-type","table")&&m(e.toolbar.elements,["headings","list","ordered-list","check","line","quote","code","table"])}}),200)},$=function(e,t){void 0===t&&(t={enableAddUndoStack:!0,enableHint:!1,enableInput:!0}),t.enableHint&&e.hint.render(e),clearTimeout(e.wysiwyg.afterRenderTimeoutId),e.wysiwyg.afterRenderTimeoutId=window.setTimeout((function(){if(!e.wysiwyg.composingLock){var n=a(e);"function"==typeof e.options.input&&t.enableInput&&e.options.input(n),e.options.counter.enable&&e.counter.render(e,n),e.options.cache.enable&&(0,c.pK)()&&(localStorage.setItem(e.options.cache.id,n),e.options.cache.after&&e.options.cache.after(n)),e.devtools&&e.devtools.renderEchart(e),t.enableAddUndoStack&&e.undo.addToUndoStack(e)}}),e.options.undoDelay)},ee=function(e){for(var t="",n=e.nextSibling;n;)3===n.nodeType?t+=n.textContent:t+=n.outerHTML,n=n.nextSibling;return t},te=function(e){for(var t="",n=e.previousSibling;n;)t=3===n.nodeType?n.textContent+t:n.outerHTML+t,n=n.previousSibling;return t},ne=function(e,t){Array.from(e.wysiwyg.element.childNodes).find((function(n){if(3===n.nodeType){var r=document.createElement("p");r.setAttribute("data-block","0"),r.textContent=n.textContent;var i=3===t.startContainer.nodeType?t.startOffset:n.textContent.length;return n.parentNode.insertBefore(r,n),n.remove(),t.setStart(r.firstChild,Math.min(r.firstChild.textContent.length,i)),t.collapse(!0),(0,D.Hc)(t),!0}if(!n.getAttribute("data-block"))return"P"===n.tagName?n.remove():("DIV"===n.tagName?(t.insertNode(document.createElement("wbr")),n.outerHTML='<p data-block="0">'.concat(n.innerHTML,"</p>")):"BR"===n.tagName?n.outerHTML='<p data-block="0">'.concat(n.outerHTML,"<wbr></p>"):(t.insertNode(document.createElement("wbr")),n.outerHTML='<p data-block="0">'.concat(n.outerHTML,"</p>")),(0,D.ib)(e.wysiwyg.element,t),t=getSelection().getRangeAt(0)),!0}))},re=function(e,t){var n=(0,D.zh)(e),r=(0,b.F9)(n.startContainer);r||(r=n.startContainer.childNodes[n.startOffset]),r||0!==e.wysiwyg.element.children.length||(r=e.wysiwyg.element),r&&!r.classList.contains("vditor-wysiwyg__block")&&(n.insertNode(document.createElement("wbr")),"<wbr>"===r.innerHTML.trim()&&(r.innerHTML="<wbr><br>"),"BLOCKQUOTE"===r.tagName||r.classList.contains("vditor-reset")?r.innerHTML="<".concat(t,' data-block="0">').concat(r.innerHTML.trim(),"</").concat(t,">"):r.outerHTML="<".concat(t,' data-block="0">').concat(r.innerHTML.trim(),"</").concat(t,">"),(0,D.ib)(e.wysiwyg.element,n),I(e))},ie=function(e){var t=getSelection().getRangeAt(0),n=(0,b.F9)(t.startContainer);n||(n=t.startContainer.childNodes[t.startOffset]),n&&(t.insertNode(document.createElement("wbr")),n.outerHTML='<p data-block="0">'.concat(n.innerHTML,"</p>"),(0,D.ib)(e.wysiwyg.element,t)),e.wysiwyg.popover.style.display="none"},oe=function(e,t,n){void 0===n&&(n=!0);var r=e.previousElementSibling,i=r.ownerDocument.createRange();"CODE"===r.tagName?(r.style.display="inline-block",n?i.setStart(r.firstChild,1):i.selectNodeContents(r)):(r.style.display="block",r.firstChild.firstChild||r.firstChild.appendChild(document.createTextNode("")),i.selectNodeContents(r.firstChild)),n?i.collapse(!0):i.collapse(!1),(0,D.Hc)(i),e.firstElementChild.classList.contains("language-mindmap")||_e(t)},ae=function(e,t){if(q("⇧⌘X",t)){var n=e.wysiwyg.popover.querySelector('[data-type="remove"]');return n&&n.click(),t.preventDefault(),!0}},se=function(e){clearTimeout(e.wysiwyg.hlToolbarTimeoutId),e.wysiwyg.hlToolbarTimeoutId=window.setTimeout((function(){if("false"!==e.wysiwyg.element.getAttribute("contenteditable")&&(0,D.Gb)(e.wysiwyg.element)){d(e.toolbar.elements,i.g.EDIT_TOOLBARS),p(e.toolbar.elements,i.g.EDIT_TOOLBARS);var t=getSelection().getRangeAt(0),n=t.startContainer;n=3===t.startContainer.nodeType?t.startContainer.parentElement:n.childNodes[t.startOffset>=n.childNodes.length?n.childNodes.length-1:t.startOffset];var r=(0,b.a1)(n,"data-type","footnotes-block");if(r)return e.wysiwyg.popover.innerHTML="",pe(r,e),void le(e,r);var o=(0,b.lG)(n,"LI");o?(o.classList.contains("vditor-task")?u(e.toolbar.elements,["check"]):"OL"===o.parentElement.tagName?u(e.toolbar.elements,["ordered-list"]):"UL"===o.parentElement.tagName&&u(e.toolbar.elements,["list"]),p(e.toolbar.elements,["outdent","indent"])):m(e.toolbar.elements,["outdent","indent"]),(0,b.lG)(n,"BLOCKQUOTE")&&u(e.toolbar.elements,["quote"]),((0,b.lG)(n,"B")||(0,b.lG)(n,"STRONG"))&&u(e.toolbar.elements,["bold"]),((0,b.lG)(n,"I")||(0,b.lG)(n,"EM"))&&u(e.toolbar.elements,["italic"]),((0,b.lG)(n,"STRIKE")||(0,b.lG)(n,"S"))&&u(e.toolbar.elements,["strike"]),e.wysiwyg.element.querySelectorAll(".vditor-comment--focus").forEach((function(e){e.classList.remove("vditor-comment--focus")}));var s=(0,b.fb)(n,"vditor-comment");if(s){var l=s.getAttribute("data-cmtids").split(" ");if(l.length>1&&s.nextSibling.isSameNode(s.nextElementSibling)){var f=s.nextElementSibling.getAttribute("data-cmtids").split(" ");l.find((function(e){if(f.includes(e))return l=[e],!0}))}e.wysiwyg.element.querySelectorAll(".vditor-comment").forEach((function(e){e.getAttribute("data-cmtids").indexOf(l[0])>-1&&e.classList.add("vditor-comment--focus")}))}var h=(0,b.lG)(n,"A");h&&u(e.toolbar.elements,["link"]);var v=(0,b.lG)(n,"TABLE"),g=(0,y.W)(n);(0,b.lG)(n,"CODE")?(0,b.lG)(n,"PRE")?(m(e.toolbar.elements,["headings","bold","italic","strike","line","quote","list","ordered-list","check","code","inline-code","upload","link","table","record"]),u(e.toolbar.elements,["code"])):(m(e.toolbar.elements,["headings","bold","italic","strike","line","quote","list","ordered-list","check","code","upload","link","table","record"]),u(e.toolbar.elements,["inline-code"])):g?(m(e.toolbar.elements,["bold"]),u(e.toolbar.elements,["headings"])):v&&m(e.toolbar.elements,["table"]);var w=(0,b.fb)(n,"vditor-toc");if(w)return e.wysiwyg.popover.innerHTML="",pe(w,e),void le(e,w);var E=(0,y.S)(n,"BLOCKQUOTE");if(E&&(e.wysiwyg.popover.innerHTML="",de(t,E,e),ue(t,E,e),pe(E,e),le(e,E)),o&&(e.wysiwyg.popover.innerHTML="",de(t,o,e),ue(t,o,e),pe(o,e),le(e,o)),v){e.options.lang,e.options;e.wysiwyg.popover.innerHTML="";var k=function(){var t=v.rows.length,n=v.rows[0].cells.length,r=parseInt(P.value,10)||t,i=parseInt(B.value,10)||n;if(r!==t||n!==i){if(n!==i)for(var o=i-n,s=0;s<v.rows.length;s++)if(o>0)for(var l=0;l<o;l++)0===s?v.rows[s].lastElementChild.insertAdjacentHTML("afterend","<th> </th>"):v.rows[s].lastElementChild.insertAdjacentHTML("afterend","<td> </td>");else for(var c=n-1;c>=i;c--)v.rows[s].cells[c].remove();if(t!==r){var d=r-t;if(d>0){for(var u="<tr>",p=0;p<i;p++)u+="<td> </td>";for(var m=0;m<d;m++)v.querySelector("tbody")?v.querySelector("tbody").insertAdjacentHTML("beforeend",u):v.querySelector("thead").insertAdjacentHTML("afterend",u+"</tr>")}else for(p=t-1;p>=r;p--)v.rows[p].remove(),1===v.rows.length&&v.querySelector("tbody").remove()}"function"==typeof e.options.input&&e.options.input(a(e))}},S=function(n){lt(v,n),"right"===n?(M.classList.remove("vditor-icon--current"),x.classList.remove("vditor-icon--current"),A.classList.add("vditor-icon--current")):"center"===n?(M.classList.remove("vditor-icon--current"),A.classList.remove("vditor-icon--current"),x.classList.add("vditor-icon--current")):(x.classList.remove("vditor-icon--current"),A.classList.remove("vditor-icon--current"),M.classList.add("vditor-icon--current")),(0,D.Hc)(t),$(e)},L=(0,b.lG)(n,"TD"),T=(0,b.lG)(n,"TH"),C="left";L?C=L.getAttribute("align")||"left":T&&(C=T.getAttribute("align")||"center");var M=document.createElement("button");M.setAttribute("type","button"),M.setAttribute("aria-label",window.VditorI18n.alignLeft+"<"+(0,c.ns)("⇧⌘L")+">"),M.setAttribute("data-type","left"),M.innerHTML='<svg><use xlink:href="#vditor-icon-align-left"></use></svg>',M.className="vditor-icon vditor-tooltipped vditor-tooltipped__n"+("left"===C?" vditor-icon--current":""),M.onclick=function(){S("left")};var x=document.createElement("button");x.setAttribute("type","button"),x.setAttribute("aria-label",window.VditorI18n.alignCenter+"<"+(0,c.ns)("⇧⌘C")+">"),x.setAttribute("data-type","center"),x.innerHTML='<svg><use xlink:href="#vditor-icon-align-center"></use></svg>',x.className="vditor-icon vditor-tooltipped vditor-tooltipped__n"+("center"===C?" vditor-icon--current":""),x.onclick=function(){S("center")};var A=document.createElement("button");A.setAttribute("type","button"),A.setAttribute("aria-label",window.VditorI18n.alignRight+"<"+(0,c.ns)("⇧⌘R")+">"),A.setAttribute("data-type","right"),A.innerHTML='<svg><use xlink:href="#vditor-icon-align-right"></use></svg>',A.className="vditor-icon vditor-tooltipped vditor-tooltipped__n"+("right"===C?" vditor-icon--current":""),A.onclick=function(){S("right")};var _=document.createElement("button");_.setAttribute("type","button"),_.setAttribute("aria-label",window.VditorI18n.insertRowBelow+"<"+(0,c.ns)("⌘=")+">"),_.setAttribute("data-type","insertRow"),_.innerHTML='<svg><use xlink:href="#vditor-icon-insert-row"></use></svg>',_.className="vditor-icon vditor-tooltipped vditor-tooltipped__n",_.onclick=function(){var n=getSelection().getRangeAt(0).startContainer,r=(0,b.lG)(n,"TD")||(0,b.lG)(n,"TH");r&&ht(e,t,r)};var H=document.createElement("button");H.setAttribute("type","button"),H.setAttribute("aria-label",window.VditorI18n.insertRowAbove+"<"+(0,c.ns)("⇧⌘F")+">"),H.setAttribute("data-type","insertRow"),H.innerHTML='<svg><use xlink:href="#vditor-icon-insert-rowb"></use></svg>',H.className="vditor-icon vditor-tooltipped vditor-tooltipped__n",H.onclick=function(){var n=getSelection().getRangeAt(0).startContainer,r=(0,b.lG)(n,"TD")||(0,b.lG)(n,"TH");r&&vt(e,t,r)};var N=document.createElement("button");N.setAttribute("type","button"),N.setAttribute("aria-label",window.VditorI18n.insertColumnRight+"<"+(0,c.ns)("⇧⌘=")+">"),N.setAttribute("data-type","insertColumn"),N.innerHTML='<svg><use xlink:href="#vditor-icon-insert-column"></use></svg>',N.className="vditor-icon vditor-tooltipped vditor-tooltipped__n",N.onclick=function(){var t=getSelection().getRangeAt(0).startContainer,n=(0,b.lG)(t,"TD")||(0,b.lG)(t,"TH");n&>(e,v,n)};var I=document.createElement("button");I.setAttribute("type","button"),I.setAttribute("aria-label",window.VditorI18n.insertColumnLeft+"<"+(0,c.ns)("⇧⌘G")+">"),I.setAttribute("data-type","insertColumn"),I.innerHTML='<svg><use xlink:href="#vditor-icon-insert-columnb"></use></svg>',I.className="vditor-icon vditor-tooltipped vditor-tooltipped__n",I.onclick=function(){var t=getSelection().getRangeAt(0).startContainer,n=(0,b.lG)(t,"TD")||(0,b.lG)(t,"TH");n&>(e,v,n,"beforebegin")};var j=document.createElement("button");j.setAttribute("type","button"),j.setAttribute("aria-label",window.VditorI18n["delete-row"]+"<"+(0,c.ns)("⌘-")+">"),j.setAttribute("data-type","deleteRow"),j.innerHTML='<svg><use xlink:href="#vditor-icon-delete-row"></use></svg>',j.className="vditor-icon vditor-tooltipped vditor-tooltipped__n",j.onclick=function(){var n=getSelection().getRangeAt(0).startContainer,r=(0,b.lG)(n,"TD")||(0,b.lG)(n,"TH");r&&bt(e,t,r)};var R=document.createElement("button");R.setAttribute("type","button"),R.setAttribute("aria-label",window.VditorI18n["delete-column"]+"<"+(0,c.ns)("⇧⌘-")+">"),R.setAttribute("data-type","deleteColumn"),R.innerHTML='<svg><use xlink:href="#vditor-icon-delete-column"></use></svg>',R.className="vditor-icon vditor-tooltipped vditor-tooltipped__n",R.onclick=function(){var n=getSelection().getRangeAt(0).startContainer,r=(0,b.lG)(n,"TD")||(0,b.lG)(n,"TH");r&&yt(e,t,v,r)},(J=document.createElement("span")).setAttribute("aria-label",window.VditorI18n.row),J.className="vditor-tooltipped vditor-tooltipped__n";var P=document.createElement("input");J.appendChild(P),P.type="number",P.min="1",P.className="vditor-input",P.style.width="42px",P.style.textAlign="center",P.setAttribute("placeholder",window.VditorI18n.row),P.value=v.rows.length.toString(),P.oninput=function(){k()},P.onkeydown=function(n){if(!n.isComposing)return"Tab"===n.key?(B.focus(),B.select(),void n.preventDefault()):void(ae(e,n)||he(n,t))};var q=document.createElement("span");q.setAttribute("aria-label",window.VditorI18n.column),q.className="vditor-tooltipped vditor-tooltipped__n";var B=document.createElement("input");q.appendChild(B),B.type="number",B.min="1",B.className="vditor-input",B.style.width="42px",B.style.textAlign="center",B.setAttribute("placeholder",window.VditorI18n.column),B.value=v.rows[0].cells.length.toString(),B.oninput=function(){k()},B.onkeydown=function(n){if(!n.isComposing)return"Tab"===n.key?(P.focus(),P.select(),void n.preventDefault()):void(ae(e,n)||he(n,t))},de(t,v,e),ue(t,v,e),pe(v,e),e.wysiwyg.popover.insertAdjacentElement("beforeend",M),e.wysiwyg.popover.insertAdjacentElement("beforeend",x),e.wysiwyg.popover.insertAdjacentElement("beforeend",A),e.wysiwyg.popover.insertAdjacentElement("beforeend",H),e.wysiwyg.popover.insertAdjacentElement("beforeend",_),e.wysiwyg.popover.insertAdjacentElement("beforeend",I),e.wysiwyg.popover.insertAdjacentElement("beforeend",N),e.wysiwyg.popover.insertAdjacentElement("beforeend",j),e.wysiwyg.popover.insertAdjacentElement("beforeend",R),e.wysiwyg.popover.insertAdjacentElement("beforeend",J),e.wysiwyg.popover.insertAdjacentHTML("beforeend"," x "),e.wysiwyg.popover.insertAdjacentElement("beforeend",q),le(e,v)}var V=(0,b.a1)(n,"data-type","link-ref");V&&ce(e,V,t);var U=(0,b.a1)(n,"data-type","footnotes-ref");if(U){e.options.lang,e.options;e.wysiwyg.popover.innerHTML="",(J=document.createElement("span")).setAttribute("aria-label",window.VditorI18n.footnoteRef+"<"+(0,c.ns)("⌥Enter")+">"),J.className="vditor-tooltipped vditor-tooltipped__n";var W=document.createElement("input");J.appendChild(W),W.className="vditor-input",W.setAttribute("placeholder",window.VditorI18n.footnoteRef+"<"+(0,c.ns)("⌥Enter")+">"),W.style.width="120px",W.value=U.getAttribute("data-footnotes-label"),W.oninput=function(){""!==W.value.trim()&&U.setAttribute("data-footnotes-label",W.value),"function"==typeof e.options.input&&e.options.input(a(e))},W.onkeydown=function(n){n.isComposing||ae(e,n)||he(n,t)},pe(U,e),e.wysiwyg.popover.insertAdjacentElement("beforeend",J),le(e,U)}var z=(0,b.fb)(n,"vditor-wysiwyg__block"),G=!!z&&z.getAttribute("data-type").indexOf("block")>-1;if(e.wysiwyg.element.querySelectorAll(".vditor-wysiwyg__preview").forEach((function(e){(!z||z&&G&&!z.contains(e))&&(e.previousElementSibling.style.display="none")})),z&&G){if(e.wysiwyg.popover.innerHTML="",de(t,z,e),ue(t,z,e),pe(z,e),"code-block"===z.getAttribute("data-type")){var K=document.createElement("span");K.setAttribute("aria-label",window.VditorI18n.language+"<"+(0,c.ns)("⌥Enter")+">"),K.className="vditor-tooltipped vditor-tooltipped__n";var F=document.createElement("input");K.appendChild(F);var Z=z.firstElementChild.firstElementChild;F.className="vditor-input",F.setAttribute("placeholder",window.VditorI18n.language+"<"+(0,c.ns)("⌥Enter")+">"),F.value=Z.className.indexOf("language-")>-1?Z.className.split("-")[1].split(" ")[0]:"",F.oninput=function(n){""!==F.value.trim()?Z.className="language-".concat(F.value):(Z.className="",e.hint.recentLanguage=""),z.lastElementChild.classList.contains("vditor-wysiwyg__preview")&&(z.lastElementChild.innerHTML=z.firstElementChild.innerHTML,O(z.lastElementChild,e)),$(e),1===n.detail&&(t.setStart(Z.firstChild,0),t.collapse(!0),(0,D.Hc)(t))},F.onkeydown=function(n){if(!n.isComposing&&!ae(e,n)){if("Escape"===n.key&&"block"===e.hint.element.style.display)return e.hint.element.style.display="none",void n.preventDefault();e.hint.select(n,e),he(n,t)}},F.onkeyup=function(t){var n,r;if(!t.isComposing&&"Enter"!==t.key&&"ArrowUp"!==t.key&&"Escape"!==t.key&&"ArrowDown"!==t.key){var o=[],a=F.value.substring(0,F.selectionStart);(e.options.preview.hljs.langs||i.g.ALIAS_CODE_LANGUAGES.concat((null!==(r=null===(n=window.hljs)||void 0===n?void 0:n.listLanguages())&&void 0!==r?r:[]).sort())).forEach((function(e){e.indexOf(a.toLowerCase())>-1&&o.push({html:e,value:e})})),e.hint.genHTML(o,a,e),t.preventDefault()}},e.wysiwyg.popover.insertAdjacentElement("beforeend",K)}le(e,z)}else z=void 0;if(g){var J;e.wysiwyg.popover.innerHTML="",(J=document.createElement("span")).setAttribute("aria-label","ID<"+(0,c.ns)("⌥Enter")+">"),J.className="vditor-tooltipped vditor-tooltipped__n";var X=document.createElement("input");J.appendChild(X),X.className="vditor-input",X.setAttribute("placeholder","ID<"+(0,c.ns)("⌥Enter")+">"),X.style.width="120px",X.value=g.getAttribute("data-id")||"",X.oninput=function(){g.setAttribute("data-id",X.value),"function"==typeof e.options.input&&e.options.input(a(e))},X.onkeydown=function(n){n.isComposing||ae(e,n)||he(n,t)},de(t,g,e),ue(t,g,e),pe(g,e),e.wysiwyg.popover.insertAdjacentElement("beforeend",J),le(e,g)}if(h&&fe(e,h,t),!(E||o||v||z||h||V||U||g||w)){var Y=(0,b.a1)(n,"data-block","0");Y&&Y.parentElement.isEqualNode(e.wysiwyg.element)?(e.wysiwyg.popover.innerHTML="",de(t,Y,e),ue(t,Y,e),pe(Y,e),le(e,Y)):e.wysiwyg.popover.style.display="none"}e.wysiwyg.element.querySelectorAll('span[data-type="backslash"] > span').forEach((function(e){e.style.display="none"}));var Q=(0,b.a1)(t.startContainer,"data-type","backslash");Q&&(Q.querySelector("span").style.display="inline")}}),200)},le=function(e,t){var n=t,r=(0,b.lG)(t,"TABLE");r&&(n=r),e.wysiwyg.popover.style.left="0",e.wysiwyg.popover.style.display="block",e.wysiwyg.popover.style.top=Math.max(-8,n.offsetTop-21-e.wysiwyg.element.scrollTop)+"px",e.wysiwyg.popover.style.left=Math.min(n.offsetLeft,e.wysiwyg.element.clientWidth-e.wysiwyg.popover.clientWidth)+"px",e.wysiwyg.popover.setAttribute("data-top",(n.offsetTop-21).toString())},ce=function(e,t,n){void 0===n&&(n=getSelection().getRangeAt(0)),e.wysiwyg.popover.innerHTML="";var r=function(){""!==o.value.trim()&&("IMG"===t.tagName?t.setAttribute("alt",o.value):t.textContent=o.value),""!==l.value.trim()&&t.setAttribute("data-link-label",l.value),"function"==typeof e.options.input&&e.options.input(a(e))},i=document.createElement("span");i.setAttribute("aria-label",window.VditorI18n.textIsNotEmpty),i.className="vditor-tooltipped vditor-tooltipped__n";var o=document.createElement("input");i.appendChild(o),o.className="vditor-input",o.setAttribute("placeholder",window.VditorI18n.textIsNotEmpty),o.style.width="120px",o.value=t.getAttribute("alt")||t.textContent,o.oninput=function(){r()},o.onkeydown=function(r){ae(e,r)||he(r,n)||me(e,t,r,l)};var s=document.createElement("span");s.setAttribute("aria-label",window.VditorI18n.linkRef),s.className="vditor-tooltipped vditor-tooltipped__n";var l=document.createElement("input");s.appendChild(l),l.className="vditor-input",l.setAttribute("placeholder",window.VditorI18n.linkRef),l.value=t.getAttribute("data-link-label"),l.oninput=function(){r()},l.onkeydown=function(r){ae(e,r)||he(r,n)||me(e,t,r,o)},pe(t,e),e.wysiwyg.popover.insertAdjacentElement("beforeend",i),e.wysiwyg.popover.insertAdjacentElement("beforeend",s),le(e,t)},de=function(e,t,n){var r=t.previousElementSibling;if(r&&(t.parentElement.isEqualNode(n.wysiwyg.element)||"LI"===t.tagName)){var i=document.createElement("button");i.setAttribute("type","button"),i.setAttribute("data-type","up"),i.setAttribute("aria-label",window.VditorI18n.up+"<"+(0,c.ns)("⇧⌘U")+">"),i.innerHTML='<svg><use xlink:href="#vditor-icon-up"></use></svg>',i.className="vditor-icon vditor-tooltipped vditor-tooltipped__n",i.onclick=function(){e.insertNode(document.createElement("wbr")),r.insertAdjacentElement("beforebegin",t),(0,D.ib)(n.wysiwyg.element,e),$(n),se(n),_e(n)},n.wysiwyg.popover.insertAdjacentElement("beforeend",i)}},ue=function(e,t,n){var r=t.nextElementSibling;if(r&&(t.parentElement.isEqualNode(n.wysiwyg.element)||"LI"===t.tagName)){var i=document.createElement("button");i.setAttribute("type","button"),i.setAttribute("data-type","down"),i.setAttribute("aria-label",window.VditorI18n.down+"<"+(0,c.ns)("⇧⌘D")+">"),i.innerHTML='<svg><use xlink:href="#vditor-icon-down"></use></svg>',i.className="vditor-icon vditor-tooltipped vditor-tooltipped__n",i.onclick=function(){e.insertNode(document.createElement("wbr")),r.insertAdjacentElement("afterend",t),(0,D.ib)(n.wysiwyg.element,e),$(n),se(n),_e(n)},n.wysiwyg.popover.insertAdjacentElement("beforeend",i)}},pe=function(e,t){var n=document.createElement("button");n.setAttribute("type","button"),n.setAttribute("data-type","remove"),n.setAttribute("aria-label",window.VditorI18n.remove+"<"+(0,c.ns)("⇧⌘X")+">"),n.innerHTML='<svg><use xlink:href="#vditor-icon-trashcan"></use></svg>',n.className="vditor-icon vditor-tooltipped vditor-tooltipped__n",n.onclick=function(){var n=(0,D.zh)(t);n.setStartAfter(e),(0,D.Hc)(n),e.remove(),$(t),se(t),["H1","H2","H3","H4","H5","H6"].includes(e.tagName)&&I(t)},t.wysiwyg.popover.insertAdjacentElement("beforeend",n)},me=function(e,t,n,r){if(!n.isComposing){if("Tab"===n.key)return r.focus(),r.select(),void n.preventDefault();if(!(0,c.yl)(n)&&!n.shiftKey&&n.altKey&&"Enter"===n.key){var o=(0,D.zh)(e);t.insertAdjacentHTML("afterend",i.g.ZWSP),o.setStartAfter(t.nextSibling),o.collapse(!0),(0,D.Hc)(o),n.preventDefault()}}},fe=function(e,t,n){e.wysiwyg.popover.innerHTML="";var r=function(){""!==o.value.trim()&&(t.innerHTML=o.value),t.setAttribute("href",s.value),t.setAttribute("title",c.value),$(e)};t.querySelectorAll("[data-marker]").forEach((function(e){e.removeAttribute("data-marker")}));var i=document.createElement("span");i.setAttribute("aria-label",window.VditorI18n.textIsNotEmpty),i.className="vditor-tooltipped vditor-tooltipped__n";var o=document.createElement("input");i.appendChild(o),o.className="vditor-input",o.setAttribute("placeholder",window.VditorI18n.textIsNotEmpty),o.style.width="120px",o.value=t.innerHTML||"",o.oninput=function(){r()},o.onkeydown=function(r){ae(e,r)||he(r,n)||me(e,t,r,s)};var a=document.createElement("span");a.setAttribute("aria-label",window.VditorI18n.link),a.className="vditor-tooltipped vditor-tooltipped__n";var s=document.createElement("input");a.appendChild(s),s.className="vditor-input",s.setAttribute("placeholder",window.VditorI18n.link),s.value=t.getAttribute("href")||"",s.oninput=function(){r()},s.onkeydown=function(r){ae(e,r)||he(r,n)||me(e,t,r,c)};var l=document.createElement("span");l.setAttribute("aria-label",window.VditorI18n.tooltipText),l.className="vditor-tooltipped vditor-tooltipped__n";var c=document.createElement("input");l.appendChild(c),c.className="vditor-input",c.setAttribute("placeholder",window.VditorI18n.tooltipText),c.style.width="60px",c.value=t.getAttribute("title")||"",c.oninput=function(){r()},c.onkeydown=function(r){ae(e,r)||he(r,n)||me(e,t,r,o)},pe(t,e),e.wysiwyg.popover.insertAdjacentElement("beforeend",i),e.wysiwyg.popover.insertAdjacentElement("beforeend",a),e.wysiwyg.popover.insertAdjacentElement("beforeend",l),le(e,t)},he=function(e,t){if(!(0,c.yl)(e)&&!e.shiftKey&&"Enter"===e.key||"Escape"===e.key)return t&&(0,D.Hc)(t),e.preventDefault(),e.stopPropagation(),!0},ve=function(e){"wysiwyg"===e.currentMode?se(e):"ir"===e.currentMode&&Q(e)},ge=function(e,t,n){void 0===n&&(n={enableAddUndoStack:!0,enableHint:!1,enableInput:!0});var r=e.wysiwyg.element;r.innerHTML=e.lute.Md2VditorDOM(t),r.querySelectorAll(".vditor-wysiwyg__preview[data-render='2']").forEach((function(t){O(t,e),t.previousElementSibling.setAttribute("style","display:none")})),$(e,n)},be=function(e,t,n){for(var r=e.startContainer.parentElement,o=!1,a="",s="",l=function(e){var t=te(e.startContainer),n=ee(e.startContainer),r=e.startContainer.textContent,o=e.startOffset,a="",s="";return(""!==r.substr(0,o)&&r.substr(0,o)!==i.g.ZWSP||t)&&(a="".concat(t).concat(r.substr(0,o))),(""!==r.substr(o)&&r.substr(o)!==i.g.ZWSP||n)&&(s="".concat(r.substr(o)).concat(n)),{afterHTML:s,beforeHTML:a}}(e),c=l.beforeHTML,d=l.afterHTML;r&&!o;){var u=r.tagName;if("STRIKE"===u&&(u="S"),"I"===u&&(u="EM"),"B"===u&&(u="STRONG"),"S"===u||"STRONG"===u||"EM"===u){var p="",m="",f="";"0"!==r.parentElement.getAttribute("data-block")&&(m=te(r),f=ee(r)),(c||m)&&(c=p="".concat(m,"<").concat(u,">").concat(c,"</").concat(u,">")),("bold"===n&&"STRONG"===u||"italic"===n&&"EM"===u||"strikeThrough"===n&&"S"===u)&&(p+="".concat(a).concat(i.g.ZWSP,"<wbr>").concat(s),o=!0),(d||f)&&(p+=d="<".concat(u,">").concat(d,"</").concat(u,">").concat(f)),"0"!==r.parentElement.getAttribute("data-block")?(r=r.parentElement).innerHTML=p:(r.outerHTML=p,r=r.parentElement),a="<".concat(u,">")+a,s="</".concat(u,">")+s}else o=!0}(0,D.ib)(t.wysiwyg.element,e)},ye=function(e,t){var n,r=this;this.element=document.createElement("div"),t.className&&(n=this.element.classList).add.apply(n,t.className.split(" "));var o=t.hotkey?" <".concat((0,c.ns)(t.hotkey),">"):"";2===t.level&&(o=t.hotkey?" <".concat((0,c.ns)(t.hotkey),">"):"");var a=t.tip?t.tip+o:"".concat(window.VditorI18n[t.name]).concat(o),s="upload"===t.name?"div":"button";if(2===t.level)this.element.innerHTML="<".concat(s,' data-type="').concat(t.name,'">').concat(a,"</").concat(s,">");else{this.element.classList.add("vditor-toolbar__item");var l=document.createElement(s);l.setAttribute("data-type",t.name),l.className="vditor-tooltipped vditor-tooltipped__".concat(t.tipPosition),l.setAttribute("aria-label",a),l.innerHTML=t.icon,this.element.appendChild(l)}t.prefix&&this.element.children[0].addEventListener((0,c.Le)(),(function(n){n.preventDefault(),r.element.firstElementChild.classList.contains(i.g.CLASS_MENU_DISABLED)||("wysiwyg"===e.currentMode?function(e,t,n){if(!(e.wysiwyg.composingLock&&n instanceof CustomEvent)){var r=!0,o=!0;e.wysiwyg.element.querySelector("wbr")&&e.wysiwyg.element.querySelector("wbr").remove();var a=(0,D.zh)(e),s=t.getAttribute("data-type");if(t.classList.contains("vditor-menu--current"))if("strike"===s&&(s="strikeThrough"),"quote"===s){var l=(0,b.lG)(a.startContainer,"BLOCKQUOTE");l||(l=a.startContainer.childNodes[a.startOffset]),l&&(r=!1,t.classList.remove("vditor-menu--current"),a.insertNode(document.createElement("wbr")),l.outerHTML=""===l.innerHTML.trim()?'<p data-block="0">'.concat(l.innerHTML,"</p>"):l.innerHTML,(0,D.ib)(e.wysiwyg.element,a))}else if("inline-code"===s){var c=(0,b.lG)(a.startContainer,"CODE");c||(c=a.startContainer.childNodes[a.startOffset]),c&&(c.outerHTML=c.innerHTML.replace(i.g.ZWSP,"")+"<wbr>",(0,D.ib)(e.wysiwyg.element,a))}else"link"===s?a.collapsed?(a.selectNode(a.startContainer.parentElement),document.execCommand("unlink",!1,"")):document.execCommand("unlink",!1,""):"check"===s||"list"===s||"ordered-list"===s?(ot(e,a,s),(0,D.ib)(e.wysiwyg.element,a),r=!1,t.classList.remove("vditor-menu--current")):(r=!1,t.classList.remove("vditor-menu--current"),""===a.toString()?be(a,e,s):document.execCommand(s,!1,""));else{0===e.wysiwyg.element.childNodes.length&&(e.wysiwyg.element.innerHTML='<p data-block="0"><wbr></p>',(0,D.ib)(e.wysiwyg.element,a));var u=(0,b.F9)(a.startContainer);if("quote"===s){if(u||(u=a.startContainer.childNodes[a.startOffset]),u){r=!1,t.classList.add("vditor-menu--current"),a.insertNode(document.createElement("wbr"));var p=(0,b.lG)(a.startContainer,"LI");p&&u.contains(p)?p.innerHTML='<blockquote data-block="0">'.concat(p.innerHTML,"</blockquote>"):u.outerHTML='<blockquote data-block="0">'.concat(u.outerHTML,"</blockquote>"),(0,D.ib)(e.wysiwyg.element,a)}}else if("check"===s||"list"===s||"ordered-list"===s)ot(e,a,s,!1),(0,D.ib)(e.wysiwyg.element,a),r=!1,d(e.toolbar.elements,["check","list","ordered-list"]),t.classList.add("vditor-menu--current");else if("inline-code"===s){if(""===a.toString())(m=document.createElement("code")).textContent=i.g.ZWSP,a.insertNode(m),a.setStart(m.firstChild,1),a.collapse(!0),(0,D.Hc)(a);else if(3===a.startContainer.nodeType){var m=document.createElement("code");a.surroundContents(m),a.insertNode(m),(0,D.Hc)(a)}t.classList.add("vditor-menu--current")}else if("code"===s)(m=document.createElement("div")).className="vditor-wysiwyg__block",m.setAttribute("data-type","code-block"),m.setAttribute("data-block","0"),m.setAttribute("data-marker","```"),""===a.toString()?m.innerHTML="<pre><code><wbr>\n</code></pre>":(m.innerHTML="<pre><code>".concat(a.toString(),"<wbr></code></pre>"),a.deleteContents()),a.insertNode(m),u&&(u.outerHTML=e.lute.SpinVditorDOM(u.outerHTML)),(0,D.ib)(e.wysiwyg.element,a),e.wysiwyg.element.querySelectorAll(".vditor-wysiwyg__preview[data-render='2']").forEach((function(t){O(t,e)})),t.classList.add("vditor-menu--disabled");else if("link"===s){if(""===a.toString()){var f=document.createElement("a");f.innerText=i.g.ZWSP,a.insertNode(f),a.setStart(f.firstChild,1),a.collapse(!0),fe(e,f,a);var h=e.wysiwyg.popover.querySelector("input");h.value="",h.focus(),o=!1}else{(m=document.createElement("a")).setAttribute("href",""),m.innerHTML=a.toString(),a.surroundContents(m),a.insertNode(m),(0,D.Hc)(a),fe(e,m,a);var v=e.wysiwyg.popover.querySelectorAll("input");v[0].value=m.innerText,v[1].focus()}r=!1,t.classList.add("vditor-menu--current")}else if("table"===s){var g='<table data-block="0"><thead><tr><th>col1<wbr></th><th>col2</th><th>col3</th></tr></thead><tbody><tr><td> </td><td> </td><td> </td></tr><tr><td> </td><td> </td><td> </td></tr></tbody></table>';if(""===a.toString().trim())u&&""===u.innerHTML.trim().replace(i.g.ZWSP,"")?u.outerHTML=g:document.execCommand("insertHTML",!1,g),a.selectNode(e.wysiwyg.element.querySelector("wbr").previousSibling),e.wysiwyg.element.querySelector("wbr").remove(),(0,D.Hc)(a);else{g='<table data-block="0"><thead><tr>';var y=a.toString().split("\n"),w=y[0].split(",").length>y[0].split("\t").length?",":"\t";y.forEach((function(e,t){0===t?(e.split(w).forEach((function(e,t){g+="<th>".concat(e,0===t?"<wbr></th>":"</th>")})),g+="</tr></thead>"):(g+=1===t?"<tbody><tr>":"<tr>",e.split(w).forEach((function(e){g+="<td>".concat(e,"</td>")})),g+="</tr>")})),g+="</tbody></table>",document.execCommand("insertHTML",!1,g),(0,D.ib)(e.wysiwyg.element,a)}r=!1,t.classList.add("vditor-menu--disabled")}else if("line"===s){if(u){var E='<hr data-block="0"><p data-block="0"><wbr>\n</p>';""===u.innerHTML.trim()?u.outerHTML=E:u.insertAdjacentHTML("afterend",E),(0,D.ib)(e.wysiwyg.element,a)}}else if(r=!1,t.classList.add("vditor-menu--current"),"strike"===s&&(s="strikeThrough"),""!==a.toString()||"bold"!==s&&"italic"!==s&&"strikeThrough"!==s)document.execCommand(s,!1,"");else{var k="strong";"italic"===s?k="em":"strikeThrough"===s&&(k="s"),(m=document.createElement(k)).textContent=i.g.ZWSP,a.insertNode(m),m.previousSibling&&m.previousSibling.textContent===i.g.ZWSP&&(m.previousSibling.textContent=""),a.setStart(m.firstChild,1),a.collapse(!0),(0,D.Hc)(a)}}r&&se(e),o&&$(e)}}(e,r.element.children[0],n):"ir"===e.currentMode?Nt(e,r.element.children[0],t.prefix||"",t.suffix||""):qe(e,r.element.children[0],t.prefix||"",t.suffix||""))}))},we=(J=function(e,t){return J=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},J(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}J(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),Ee=function(e,t,n){var r;if("string"!=typeof n?(v(e,["subToolbar","hint"]),n.preventDefault(),r=a(e)):r=n,e.currentMode!==t||"string"==typeof n){if(e.devtools&&e.devtools.renderEchart(e),"both"===e.options.preview.mode&&"sv"===t?e.preview.element.style.display="block":e.preview.element.style.display="none",p(e.toolbar.elements,i.g.EDIT_TOOLBARS),d(e.toolbar.elements,i.g.EDIT_TOOLBARS),m(e.toolbar.elements,["outdent","indent"]),"ir"===t)f(e.toolbar.elements,["both"]),h(e.toolbar.elements,["outdent","indent","outline","insert-before","insert-after"]),e.sv.element.style.display="none",e.wysiwyg.element.parentElement.style.display="none",e.ir.element.parentElement.style.display="block",e.lute.SetVditorIR(!0),e.lute.SetVditorWYSIWYG(!1),e.lute.SetVditorSV(!1),e.currentMode="ir",e.ir.element.innerHTML=e.lute.Md2VditorIRDOM(r),At(e,{enableAddUndoStack:!0,enableHint:!1,enableInput:!1}),K(e),e.ir.element.querySelectorAll(".vditor-ir__preview[data-render='2']").forEach((function(t){O(t,e)})),e.ir.element.querySelectorAll(".vditor-toc").forEach((function(t){(0,M.H)(t,{cdn:e.options.cdn,math:e.options.preview.math})}));else if("wysiwyg"===t)f(e.toolbar.elements,["both"]),h(e.toolbar.elements,["outdent","indent","outline","insert-before","insert-after"]),e.sv.element.style.display="none",e.wysiwyg.element.parentElement.style.display="block",e.ir.element.parentElement.style.display="none",e.lute.SetVditorIR(!1),e.lute.SetVditorWYSIWYG(!0),e.lute.SetVditorSV(!1),e.currentMode="wysiwyg",K(e),ge(e,r,{enableAddUndoStack:!0,enableHint:!1,enableInput:!1}),e.wysiwyg.element.querySelectorAll(".vditor-toc").forEach((function(t){(0,M.H)(t,{cdn:e.options.cdn,math:e.options.preview.math})})),e.wysiwyg.popover.style.display="none";else if("sv"===t){h(e.toolbar.elements,["both"]),f(e.toolbar.elements,["outdent","indent","outline","insert-before","insert-after"]),e.wysiwyg.element.parentElement.style.display="none",e.ir.element.parentElement.style.display="none",("both"===e.options.preview.mode||"editor"===e.options.preview.mode)&&(e.sv.element.style.display="block"),e.lute.SetVditorIR(!1),e.lute.SetVditorWYSIWYG(!1),e.lute.SetVditorSV(!0),e.currentMode="sv";var o=Ie(r,e);"<div data-block='0'></div>"===o&&(o=""),e.sv.element.innerHTML=o,U(e.sv.element),Re(e,{enableAddUndoStack:!0,enableHint:!1,enableInput:!1}),K(e)}e.undo.resetIcon(e),"string"!=typeof n&&(e[e.currentMode].element.focus(),ve(e)),I(e),F(e),e.toolbar.elements["edit-mode"]&&(e.toolbar.elements["edit-mode"].querySelectorAll("button").forEach((function(e){e.classList.remove("vditor-menu--current")})),e.toolbar.elements["edit-mode"].querySelector('button[data-mode="'.concat(e.currentMode,'"]')).classList.add("vditor-menu--current")),e.outline.toggle(e,"sv"!==e.currentMode&&e.options.outline.enable,"string"!=typeof n)}},ke=function(e){function t(t,n){var r=e.call(this,t,n)||this,i=document.createElement("div");return i.className="vditor-hint".concat(2===n.level?"":" vditor-panel--arrow"),i.innerHTML='<button data-mode="wysiwyg">'.concat(window.VditorI18n.wysiwyg," <").concat((0,c.ns)("⌥⌘7"),'></button>\n<button data-mode="ir">').concat(window.VditorI18n.instantRendering," <").concat((0,c.ns)("⌥⌘8"),'></button>\n<button data-mode="sv">').concat(window.VditorI18n.splitView," <").concat((0,c.ns)("⌥⌘9"),"></button>"),r.element.appendChild(i),r._bindEvent(t,i,n),r}return we(t,e),t.prototype._bindEvent=function(e,t,n){var r=this.element.children[0];g(e,t,r,n.level),t.children.item(0).addEventListener((0,c.Le)(),(function(t){Ee(e,"wysiwyg",t),t.preventDefault(),t.stopPropagation()})),t.children.item(1).addEventListener((0,c.Le)(),(function(t){Ee(e,"ir",t),t.preventDefault(),t.stopPropagation()})),t.children.item(2).addEventListener((0,c.Le)(),(function(t){Ee(e,"sv",t),t.preventDefault(),t.stopPropagation()}))},t}(ye),Se=function(e,t){return(0,D.Gb)(e,t)?getSelection().toString():""},Le=function(e,t){t.addEventListener("focus",(function(){e.options.focus&&e.options.focus(a(e)),v(e,["subToolbar","hint"])}))},Te=function(e,t){t.addEventListener("dblclick",(function(t){"IMG"===t.target.tagName&&(e.options.image.preview?e.options.image.preview(t.target):e.options.image.isPreview&&(0,V.E)(t.target,e.options.lang,e.options.theme))}))},Ce=function(e,t){t.addEventListener("blur",(function(t){if("ir"===e.currentMode){var n=e.ir.element.querySelector(".vditor-ir__node--expand");n&&n.classList.remove("vditor-ir__node--expand")}else"wysiwyg"!==e.currentMode||e.wysiwyg.selectPopover.contains(t.relatedTarget)||e.wysiwyg.hideComment();e[e.currentMode].range=(0,D.zh)(e),e.options.blur&&e.options.blur(a(e))}))},Me=function(e,t){t.addEventListener("dragstart",(function(e){e.dataTransfer.setData(i.g.DROP_EDITOR,i.g.DROP_EDITOR)})),t.addEventListener("drop",(function(t){t.dataTransfer.getData(i.g.DROP_EDITOR)?ut(e):(t.dataTransfer.types.includes("Files")||t.dataTransfer.types.includes("text/html"))&&Mt(e,t,{pasteCode:function(e){document.execCommand("insertHTML",!1,e)}})}))},xe=function(e,t,n){t.addEventListener("copy",(function(t){return n(t,e)}))},Ae=function(e,t,n){t.addEventListener("cut",(function(t){n(t,e),e.options.comment.enable&&"wysiwyg"===e.currentMode&&e.wysiwyg.getComments(e),document.execCommand("delete")}))},_e=function(e){if("wysiwyg"===e.currentMode&&e.options.comment.enable&&e.options.comment.adjustTop(e.wysiwyg.getComments(e,!0)),e.options.typewriterMode){var t=e[e.currentMode].element,n=(0,D.Ny)(t).top;"auto"!==e.options.height||e.element.classList.contains("vditor--fullscreen")||window.scrollTo(window.scrollX,n+e.element.offsetTop+e.toolbar.element.offsetHeight-window.innerHeight/2+10),("auto"!==e.options.height||e.element.classList.contains("vditor--fullscreen"))&&(t.scrollTop=n+t.scrollTop-t.clientHeight/2+10)}},He=function(e,t){t.addEventListener("keydown",(function(t){if(!t.isComposing&&e.options.keydown&&e.options.keydown(t),!(e.options.hint.extend.length>1||e.toolbar.elements.emoji)||!e.hint.select(t,e)){if(e.options.comment.enable&&"wysiwyg"===e.currentMode&&("Backspace"===t.key||q("⌘X",t))&&e.wysiwyg.getComments(e),"sv"===e.currentMode){if(function(e,t){var n,r,i,o,a;if(e.sv.composingLock=t.isComposing,t.isComposing)return!1;if(-1!==t.key.indexOf("Arrow")||"Meta"===t.key||"Control"===t.key||"Alt"===t.key||"Shift"===t.key||"CapsLock"===t.key||"Escape"===t.key||/^F\d{1,2}$/.test(t.key)||e.undo.recordFirstPosition(e,t),"Enter"!==t.key&&"Tab"!==t.key&&"Backspace"!==t.key&&-1===t.key.indexOf("Arrow")&&!(0,c.yl)(t)&&"Escape"!==t.key)return!1;var s=(0,D.zh)(e),l=s.startContainer;3!==s.startContainer.nodeType&&"DIV"===s.startContainer.tagName&&(l=s.startContainer.childNodes[s.startOffset-1]);var d=(0,b.a1)(l,"data-type","text"),u=(0,b.a1)(l,"data-type","blockquote-marker");if(!u&&0===s.startOffset&&d&&d.previousElementSibling&&"blockquote-marker"===d.previousElementSibling.getAttribute("data-type")&&(u=d.previousElementSibling),u&&"Enter"===t.key&&!(0,c.yl)(t)&&!t.altKey&&""===u.nextElementSibling.textContent.trim()&&(0,D.im)(u,e.sv.element,s).start===u.textContent.length)return"padding"===(null===(n=u.previousElementSibling)||void 0===n?void 0:n.getAttribute("data-type"))&&u.previousElementSibling.setAttribute("data-action","enter-remove"),u.remove(),Re(e),t.preventDefault(),!0;var p=(0,b.a1)(l,"data-type","li-marker"),m=(0,b.a1)(l,"data-type","task-marker"),f=p;if(f||m&&"task-marker"!==m.nextElementSibling.getAttribute("data-type")&&(f=m),f||0!==s.startOffset||!d||!d.previousElementSibling||"li-marker"!==d.previousElementSibling.getAttribute("data-type")&&"task-marker"!==d.previousElementSibling.getAttribute("data-type")||(f=d.previousElementSibling),f){var h=(0,D.im)(f,e.sv.element,s).start,v="task-marker"===f.getAttribute("data-type"),g=f;if(v&&(g=f.previousElementSibling.previousElementSibling.previousElementSibling),h===f.textContent.length){if("Enter"===t.key&&!(0,c.yl)(t)&&!t.altKey&&!t.shiftKey&&""===f.nextElementSibling.textContent.trim())return"padding"===(null===(r=g.previousElementSibling)||void 0===r?void 0:r.getAttribute("data-type"))?(g.previousElementSibling.remove(),W(e)):(v&&(g.remove(),f.previousElementSibling.previousElementSibling.remove(),f.previousElementSibling.remove()),f.nextElementSibling.remove(),f.remove(),Re(e)),t.preventDefault(),!0;if("Tab"===t.key)return t.shiftKey?"padding"===g.previousElementSibling.getAttribute("data-type")&&g.previousElementSibling.remove():g.insertAdjacentHTML("beforebegin",'<span data-type="padding">'.concat(g.textContent.replace(/\S/g," "),"</span>")),/^\d/.test(g.textContent)&&(g.textContent=g.textContent.replace(/^\d{1,}/,"1"),s.selectNodeContents(f.firstChild),s.collapse(!1)),W(e),t.preventDefault(),!0}}if(mt(e,s,t))return!0;var w=(0,b.a1)(l,"data-block","0"),E=(0,y.S)(l,"SPAN");if("Enter"===t.key&&!(0,c.yl)(t)&&!t.altKey&&!t.shiftKey&&w){var k=!1,S=w.textContent.match(/^\n+/);(0,D.im)(w,e.sv.element).start<=(S?S[0].length:0)&&(k=!0);var L="\n";if(E){if("enter-remove"===(null===(i=E.previousElementSibling)||void 0===i?void 0:i.getAttribute("data-action")))return E.previousElementSibling.remove(),Re(e),t.preventDefault(),!0;L+=je(E)}return s.insertNode(document.createTextNode(L)),s.collapse(!1),w&&""!==w.textContent.trim()&&!k?W(e):Re(e),t.preventDefault(),!0}if("Backspace"===t.key&&!(0,c.yl)(t)&&!t.altKey&&!t.shiftKey){if(E&&"newline"===(null===(o=E.previousElementSibling)||void 0===o?void 0:o.getAttribute("data-type"))&&1===(0,D.im)(E,e.sv.element,s).start&&-1===E.getAttribute("data-type").indexOf("code-block-"))return s.setStart(E,0),s.extractContents(),""!==E.textContent.trim()?W(e):Re(e),t.preventDefault(),!0;if(w&&0===(0,D.im)(w,e.sv.element,s).start&&w.previousElementSibling){s.extractContents();var T=w.previousElementSibling.lastElementChild;return"newline"===T.getAttribute("data-type")&&(T.remove(),T=w.previousElementSibling.lastElementChild),"newline"!==T.getAttribute("data-type")&&(T.insertAdjacentHTML("afterend",w.innerHTML),w.remove()),""===w.textContent.trim()||(null===(a=w.previousElementSibling)||void 0===a?void 0:a.querySelector('[data-type="code-block-open-marker"]'))?("newline"!==T.getAttribute("data-type")&&(s.selectNodeContents(T.lastChild),s.collapse(!1)),Re(e)):W(e),t.preventDefault(),!0}}return!1}(e,t))return}else if("wysiwyg"===e.currentMode){if(function(e,t){if(e.wysiwyg.composingLock=t.isComposing,t.isComposing)return!1;-1!==t.key.indexOf("Arrow")||"Meta"===t.key||"Control"===t.key||"Alt"===t.key||"Shift"===t.key||"CapsLock"===t.key||"Escape"===t.key||/^F\d{1,2}$/.test(t.key)||e.undo.recordFirstPosition(e,t);var n=(0,D.zh)(e),r=n.startContainer;if(!Xe(t,e,r))return!1;if(Ye(n,e,t),Tt(n),"Enter"!==t.key&&"Tab"!==t.key&&"Backspace"!==t.key&&-1===t.key.indexOf("Arrow")&&!(0,c.yl)(t)&&"Escape"!==t.key&&"Delete"!==t.key)return!1;var o=(0,b.F9)(r),a=(0,b.lG)(r,"P");if(ft(t,e,a,n))return!0;if(pt(n,e,a,t))return!0;if(wt(e,t,n))return!0;var s=(0,b.fb)(r,"vditor-wysiwyg__block");if(s){if("Escape"===t.key&&2===s.children.length)return e.wysiwyg.popover.style.display="none",s.firstElementChild.style.display="none",e.wysiwyg.element.blur(),t.preventDefault(),!0;if(!(0,c.yl)(t)&&!t.shiftKey&&t.altKey&&"Enter"===t.key&&"code-block"===s.getAttribute("data-type")){var l=e.wysiwyg.popover.querySelector(".vditor-input");return l.focus(),l.select(),t.preventDefault(),!0}if("0"===s.getAttribute("data-block")){if(Et(e,t,s.firstElementChild,n))return!0;if(rt(e,t,n,s.firstElementChild,s))return!0;if("yaml-front-matter"!==s.getAttribute("data-type")&&it(e,t,n,s.firstElementChild,s))return!0}}if(kt(e,n,t,a))return!0;var d=(0,b.E2)(r,"BLOCKQUOTE");if(d&&!t.shiftKey&&t.altKey&&"Enter"===t.key){(0,c.yl)(t)?n.setStartBefore(d):n.setStartAfter(d),(0,D.Hc)(n);var u=document.createElement("p");return u.setAttribute("data-block","0"),u.innerHTML="\n",n.insertNode(u),n.collapse(!0),(0,D.Hc)(n),$(e),_e(e),t.preventDefault(),!0}var p,m=(0,y.W)(r);if(m){if("H6"===m.tagName&&r.textContent.length===n.startOffset&&!(0,c.yl)(t)&&!t.shiftKey&&!t.altKey&&"Enter"===t.key){var f=document.createElement("p");return f.textContent="\n",f.setAttribute("data-block","0"),r.parentElement.insertAdjacentElement("afterend",f),n.setStart(f,0),(0,D.Hc)(n),$(e),_e(e),t.preventDefault(),!0}var h;if(q("⌘=",t))return(h=parseInt(m.tagName.substr(1),10)-1)>0&&(re(e,"h".concat(h)),$(e)),t.preventDefault(),!0;if(q("⌘-",t))return(h=parseInt(m.tagName.substr(1),10)+1)<7&&(re(e,"h".concat(h)),$(e)),t.preventDefault(),!0;"Backspace"!==t.key||(0,c.yl)(t)||t.shiftKey||t.altKey||1!==m.textContent.length||ie(e)}if(St(e,n,t))return!0;if(t.altKey&&"Enter"===t.key&&!(0,c.yl)(t)&&!t.shiftKey){var v=(0,b.lG)(r,"A"),g=(0,b.a1)(r,"data-type","link-ref"),w=(0,b.a1)(r,"data-type","footnotes-ref");if(v||g||w||m&&2===m.tagName.length){var E=e.wysiwyg.popover.querySelector("input");E.focus(),E.select()}}if(ae(e,t))return!0;if(q("⇧⌘U",t)&&(p=e.wysiwyg.popover.querySelector('[data-type="up"]')))return p.click(),t.preventDefault(),!0;if(q("⇧⌘D",t)&&(p=e.wysiwyg.popover.querySelector('[data-type="down"]')))return p.click(),t.preventDefault(),!0;if(mt(e,n,t))return!0;if(!(0,c.yl)(t)&&t.shiftKey&&!t.altKey&&"Enter"===t.key&&"LI"!==r.parentElement.tagName&&"P"!==r.parentElement.tagName)return["STRONG","STRIKE","S","I","EM","B"].includes(r.parentElement.tagName)?n.insertNode(document.createTextNode("\n"+i.g.ZWSP)):n.insertNode(document.createTextNode("\n")),n.collapse(!1),(0,D.Hc)(n),$(e),_e(e),t.preventDefault(),!0;if("Backspace"===t.key&&!(0,c.yl)(t)&&!t.shiftKey&&!t.altKey&&""===n.toString()){if(Lt(e,n,t,a))return!0;if(o){if(o.previousElementSibling&&o.previousElementSibling.classList.contains("vditor-wysiwyg__block")&&"0"===o.previousElementSibling.getAttribute("data-block")&&"UL"!==o.tagName&&"OL"!==o.tagName){var k=(0,D.im)(o,e.wysiwyg.element,n).start;if(0===k&&0===n.startOffset||1===k&&o.innerText.startsWith(i.g.ZWSP))return oe(o.previousElementSibling.lastElementChild,e,!1),""===o.innerHTML.trim().replace(i.g.ZWSP,"")&&(o.remove(),$(e)),t.preventDefault(),!0}var S=n.startOffset;if(""===n.toString()&&3===r.nodeType&&"\n"===r.textContent.charAt(S-2)&&r.textContent.charAt(S-1)!==i.g.ZWSP&&["STRONG","STRIKE","S","I","EM","B"].includes(r.parentElement.tagName))return r.textContent=r.textContent.substring(0,S-1)+i.g.ZWSP,n.setStart(r,S),n.collapse(!0),$(e),t.preventDefault(),!0;r.textContent===i.g.ZWSP&&1===n.startOffset&&!r.previousSibling&&function(e){for(var t=e.startContainer.nextSibling;t&&""===t.textContent;)t=t.nextSibling;return!(!t||3===t.nodeType||"CODE"!==t.tagName&&"math-inline"!==t.getAttribute("data-type")&&"html-entity"!==t.getAttribute("data-type")&&"html-inline"!==t.getAttribute("data-type"))}(n)&&(r.textContent=""),o.querySelectorAll("span.vditor-wysiwyg__block[data-type='math-inline']").forEach((function(e){e.firstElementChild.style.display="inline",e.lastElementChild.style.display="none"})),o.querySelectorAll("span.vditor-wysiwyg__block[data-type='html-entity']").forEach((function(e){e.firstElementChild.style.display="inline",e.lastElementChild.style.display="none"}))}}if((0,c.vU)()&&1===n.startOffset&&r.textContent.indexOf(i.g.ZWSP)>-1&&r.previousSibling&&3!==r.previousSibling.nodeType&&"CODE"===r.previousSibling.tagName&&("Backspace"===t.key||"ArrowLeft"===t.key))return n.selectNodeContents(r.previousSibling),n.collapse(!1),t.preventDefault(),!0;if(Ct(t,o,n))return t.preventDefault(),!0;if(Qe(n,t.key),"ArrowDown"===t.key){var L=r.nextSibling;L&&3!==L.nodeType&&"math-inline"===L.getAttribute("data-type")&&n.setStartAfter(L)}return!(!o||!R(o,e,t,n)||(t.preventDefault(),0))}(e,t))return}else if("ir"===e.currentMode&&function(e,t){if(e.ir.composingLock=t.isComposing,t.isComposing)return!1;-1!==t.key.indexOf("Arrow")||"Meta"===t.key||"Control"===t.key||"Alt"===t.key||"Shift"===t.key||"CapsLock"===t.key||"Escape"===t.key||/^F\d{1,2}$/.test(t.key)||e.undo.recordFirstPosition(e,t);var n=(0,D.zh)(e),r=n.startContainer;if(!Xe(t,e,r))return!1;if(Ye(n,e,t),Tt(n),"Enter"!==t.key&&"Tab"!==t.key&&"Backspace"!==t.key&&-1===t.key.indexOf("Arrow")&&!(0,c.yl)(t)&&"Escape"!==t.key&&"Delete"!==t.key)return!1;var o=(0,b.a1)(r,"data-newline","1");if(!(0,c.yl)(t)&&!t.altKey&&!t.shiftKey&&"Enter"===t.key&&o&&n.startOffset<o.textContent.length){var a=o.previousElementSibling;a&&(n.insertNode(document.createTextNode(a.textContent)),n.collapse(!1));var s=o.nextSibling;s&&(n.insertNode(document.createTextNode(s.textContent)),n.collapse(!0))}var l=(0,b.lG)(r,"P");if(ft(t,e,l,n))return!0;if(pt(n,e,l,t))return!0;if(kt(e,n,t,l))return!0;var d=(0,b.fb)(r,"vditor-ir__marker--pre");if(d&&"PRE"===d.tagName){var u=d.firstChild;if(Et(e,t,d,n))return!0;if(("math-block"===u.getAttribute("data-type")||"html-block"===u.getAttribute("data-type"))&&it(e,t,n,u,d.parentElement))return!0;if(rt(e,t,n,u,d.parentElement))return!0}var p=(0,b.a1)(r,"data-type","code-block-info");if(p){if("Enter"===t.key||"Tab"===t.key)return n.selectNodeContents(p.nextElementSibling.firstChild),n.collapse(!0),t.preventDefault(),v(e,["hint"]),!0;if("Backspace"===t.key){var m=(0,D.im)(p,e.ir.element).start;1===m&&n.setStart(r,0),2===m&&(e.hint.recentLanguage="")}if(it(e,t,n,p,p.parentElement))return v(e,["hint"]),!0}var f=(0,b.lG)(r,"TD")||(0,b.lG)(r,"TH");if(t.key.indexOf("Arrow")>-1&&f){var h=et(f);if(h&&it(e,t,n,f,h))return!0;var g=tt(f);if(g&&rt(e,t,n,f,g))return!0}if(wt(e,t,n))return!0;if(St(e,n,t))return!0;if(mt(e,n,t))return!0;var w=(0,y.W)(r);if(w){var E;if(q("⌘=",t))return(E=w.querySelector(".vditor-ir__marker--heading"))&&E.textContent.trim().length>1&&_t(e,E.textContent.substr(1)),t.preventDefault(),!0;if(q("⌘-",t))return(E=w.querySelector(".vditor-ir__marker--heading"))&&E.textContent.trim().length<6&&_t(e,E.textContent.trim()+"# "),t.preventDefault(),!0}var k=(0,b.F9)(r);if("Backspace"===t.key&&!(0,c.yl)(t)&&!t.shiftKey&&!t.altKey&&""===n.toString()){if(Lt(e,n,t,l))return!0;if(k&&k.previousElementSibling&&"UL"!==k.tagName&&"OL"!==k.tagName&&("code-block"===k.previousElementSibling.getAttribute("data-type")||"math-block"===k.previousElementSibling.getAttribute("data-type"))){var S=(0,D.im)(k,e.ir.element,n).start;if(0===S||1===S&&k.innerText.startsWith(i.g.ZWSP))return n.selectNodeContents(k.previousElementSibling.querySelector(".vditor-ir__marker--pre code")),n.collapse(!1),B(n,e),""===k.textContent.trim().replace(i.g.ZWSP,"")&&(k.remove(),At(e)),t.preventDefault(),!0}if(w){var L=w.firstElementChild.textContent.length;(0,D.im)(w,e.ir.element).start===L&&0!==L&&(n.setStart(w.firstElementChild.firstChild,L-1),n.collapse(!0),(0,D.Hc)(n))}}return!(("ArrowUp"!==t.key&&"ArrowDown"!==t.key||!k||(k.querySelectorAll(".vditor-ir__node").forEach((function(e){e.contains(r)||e.classList.add("vditor-ir__node--hidden")})),!Ct(t,k,n)))&&(Qe(n,t.key),!k||!R(k,e,t,n)||(t.preventDefault(),0)))}(e,t))return;if(e.options.ctrlEnter&&q("⌘Enter",t))return e.options.ctrlEnter(a(e)),void t.preventDefault();if(q("⌘Z",t)&&!e.toolbar.elements.undo)return e.undo.undo(e),void t.preventDefault();if(q("⌘Y",t)&&!e.toolbar.elements.redo)return e.undo.redo(e),void t.preventDefault();if("Escape"===t.key)return"block"===e.hint.element.style.display?e.hint.element.style.display="none":e.options.esc&&!t.isComposing&&e.options.esc(a(e)),void t.preventDefault();if((0,c.yl)(t)&&t.altKey&&!t.shiftKey&&/^Digit[1-6]$/.test(t.code)){if("wysiwyg"===e.currentMode){var n=t.code.replace("Digit","H");(0,b.lG)(getSelection().getRangeAt(0).startContainer,n)?ie(e):re(e,n),$(e)}else"sv"===e.currentMode?Pe(e,"#".repeat(parseInt(t.code.replace("Digit",""),10))+" "):"ir"===e.currentMode&&_t(e,"#".repeat(parseInt(t.code.replace("Digit",""),10))+" ");return t.preventDefault(),!0}if((0,c.yl)(t)&&t.altKey&&!t.shiftKey&&/^Digit[7-9]$/.test(t.code))return"Digit7"===t.code?Ee(e,"wysiwyg",t):"Digit8"===t.code?Ee(e,"ir",t):"Digit9"===t.code&&Ee(e,"sv",t),!0;e.options.toolbar.find((function(n){return!n.hotkey||n.toolbar?!!n.toolbar&&!!n.toolbar.find((function(n){return!!n.hotkey&&(q(n.hotkey,t)?(e.toolbar.elements[n.name].children[0].dispatchEvent(new CustomEvent((0,c.Le)())),t.preventDefault(),!0):void 0)})):q(n.hotkey,t)?(e.toolbar.elements[n.name].children[0].dispatchEvent(new CustomEvent((0,c.Le)())),t.preventDefault(),!0):void 0}))}}))},Ne=function(e,t){t.addEventListener("selectstart",(function(n){t.onmouseup=function(){setTimeout((function(){var t=Se(e[e.currentMode].element);t.trim()?("wysiwyg"===e.currentMode&&e.options.comment.enable&&((0,b.a1)(n.target,"data-type","footnotes-block")||(0,b.a1)(n.target,"data-type","link-ref-defs-block")?e.wysiwyg.hideComment():e.wysiwyg.showComment()),e.options.select&&e.options.select(t)):("wysiwyg"===e.currentMode&&e.options.comment.enable&&e.wysiwyg.hideComment(),"function"==typeof e.options.unSelect&&e.options.unSelect())}))}}))},Oe=function(e,t){var n=(0,D.zh)(e);n.extractContents(),n.insertNode(document.createTextNode(Lute.Caret)),n.insertNode(document.createTextNode(t));var r=(0,b.a1)(n.startContainer,"data-block","0");r||(r=e.sv.element);var i=e.lute.SpinVditorSVDOM(r.textContent);i="<div data-block='0'>"+i.replace(/<span data-type="newline"><br \/><span style="display: none">\n<\/span><\/span><span data-type="newline"><br \/><span style="display: none">\n<\/span><\/span></g,'<span data-type="newline"><br /><span style="display: none">\n</span></span><span data-type="newline"><br /><span style="display: none">\n</span></span></div><div data-block="0"><')+"</div>",r.isEqualNode(e.sv.element)?r.innerHTML=i:r.outerHTML=i,U(e.sv.element),(0,D.ib)(e.sv.element,n),_e(e)},De=function(e,t,n){void 0===n&&(n=!0);var r=e;for(3===r.nodeType&&(r=r.parentElement);r;){if(r.getAttribute("data-type")===t)return r;r=n?r.previousElementSibling:r.nextElementSibling}return!1},Ie=function(e,t){return w("SpinVditorSVDOM",e,"argument",t.options.debugger),e="<div data-block='0'>"+t.lute.SpinVditorSVDOM(e).replace(/<span data-type="newline"><br \/><span style="display: none">\n<\/span><\/span><span data-type="newline"><br \/><span style="display: none">\n<\/span><\/span></g,'<span data-type="newline"><br /><span style="display: none">\n</span></span><span data-type="newline"><br /><span style="display: none">\n</span></span></div><div data-block="0"><')+"</div>",w("SpinVditorSVDOM",e,"result",t.options.debugger),e},je=function(e){var t=e.getAttribute("data-type"),n=e.previousElementSibling,r=t&&"text"!==t&&"table"!==t&&"heading-marker"!==t&&"newline"!==t&&"yaml-front-matter-open-marker"!==t&&"yaml-front-matter-close-marker"!==t&&"code-block-info"!==t&&"code-block-close-marker"!==t&&"code-block-open-marker"!==t?e.textContent:"",i=!1;for("newline"===t&&(i=!0);n&&!i;){var o=n.getAttribute("data-type");if("li-marker"===o||"blockquote-marker"===o||"task-marker"===o||"padding"===o){var a=n.textContent;if("li-marker"!==o||"code-block-open-marker"!==t&&"code-block-info"!==t)if("code-block-close-marker"===t&&n.nextElementSibling.isSameNode(e)){var s=De(e,"code-block-open-marker");s&&s.previousElementSibling&&(n=s.previousElementSibling,r=a+r)}else r=a+r;else r=a.replace(/\S/g," ")+r}else"newline"===o&&(i=!0);n=n.previousElementSibling}return r},Re=function(e,t){void 0===t&&(t={enableAddUndoStack:!0,enableHint:!1,enableInput:!0}),t.enableHint&&e.hint.render(e),e.preview.render(e);var n=a(e);"function"==typeof e.options.input&&t.enableInput&&e.options.input(n),e.options.counter.enable&&e.counter.render(e,n),e.options.cache.enable&&(0,c.pK)()&&(localStorage.setItem(e.options.cache.id,n),e.options.cache.after&&e.options.cache.after(n)),e.devtools&&e.devtools.renderEchart(e),clearTimeout(e.sv.processTimeoutId),e.sv.processTimeoutId=window.setTimeout((function(){t.enableAddUndoStack&&!e.sv.composingLock&&e.undo.addToUndoStack(e)}),e.options.undoDelay)},Pe=function(e,t){var n=(0,D.zh)(e),r=(0,y.S)(n.startContainer,"SPAN");r&&""!==r.textContent.trim()&&(t="\n"+t),n.collapse(!0),document.execCommand("insertHTML",!1,t)},qe=function(e,t,n,r){var i=(0,D.zh)(e),o=t.getAttribute("data-type");0===e.sv.element.childNodes.length&&(e.sv.element.innerHTML='<span data-type="p" data-block="0"><span data-type="text"><wbr></span></span><span data-type="newline"><br><span style="display: none">\n</span></span>',(0,D.ib)(e.sv.element,i));var a=(0,b.F9)(i.startContainer),s=(0,y.S)(i.startContainer,"SPAN");if(a){if("link"===o){var l=void 0;return l=""===i.toString()?"".concat(n).concat(Lute.Caret).concat(r):"".concat(n).concat(i.toString()).concat(r.replace(")",Lute.Caret+")")),void document.execCommand("insertHTML",!1,l)}if("italic"===o||"bold"===o||"strike"===o||"inline-code"===o||"code"===o||"table"===o||"line"===o){l=void 0;return l=""===i.toString()?"".concat(n).concat(Lute.Caret).concat("code"===o?"":r):"".concat(n).concat(i.toString()).concat(Lute.Caret).concat("code"===o?"":r),"table"===o||"code"===o&&s&&""!==s.textContent?l="\n\n"+l:"line"===o&&(l="\n\n".concat(n,"\n").concat(Lute.Caret)),void document.execCommand("insertHTML",!1,l)}if(("check"===o||"list"===o||"ordered-list"===o||"quote"===o)&&s){var c="* ";"check"===o?c="* [ ] ":"ordered-list"===o?c="1. ":"quote"===o&&(c="> ");var d=De(s,"newline");return d?d.insertAdjacentText("afterend",c):a.insertAdjacentText("afterbegin",c),void W(e)}(0,D.ib)(e.sv.element,i),Re(e)}},Be=function(e){switch(e.currentMode){case"ir":return e.ir.element;case"wysiwyg":return e.wysiwyg.element;case"sv":return e.sv.element}},Ve=function(e,t){e.options.upload.setHeaders&&(e.options.upload.headers=e.options.upload.setHeaders()),e.options.upload.headers&&Object.keys(e.options.upload.headers).forEach((function(n){t.setRequestHeader(n,e.options.upload.headers[n])}))},Ue=function(e,t,n,r){return new(n||(n=Promise))((function(i,o){function a(e){try{l(r.next(e))}catch(e){o(e)}}function s(e){try{l(r.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}l((r=r.apply(e,t||[])).next())}))},We=function(e,t){var n,r,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(s){return function(l){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,s[0]&&(a=0)),a;)try{if(n=1,r&&(i=2&s[0]?r.return:s[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,s[1])).done)return i;switch(r=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,r=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(i=a.trys,(i=i.length>0&&i[i.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]<i[3])){a.label=s[1];break}if(6===s[0]&&a.label<i[1]){a.label=i[1],i=s;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(s);break}i[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],r=0}finally{n=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},ze=function(){this.isUploading=!1,this.element=document.createElement("div"),this.element.className="vditor-upload"},Ge=function(e,t,n){return Ue(void 0,void 0,void 0,(function(){var r,i,o,a,s,l,c,d,u,p,m,f,h,v;return We(this,(function(g){switch(g.label){case 0:for(r=[],i=!0===e.options.upload.multiple?t.length:1,f=0;f<i;f++)(o=t[f])instanceof DataTransferItem&&(o=o.getAsFile()),r.push(o);return e.options.upload.handler?[4,e.options.upload.handler(r)]:[3,2];case 1:return a=g.sent(),n&&(n.value=""),"string"==typeof a?(e.tip.show(a),[2]):[2];case 2:return e.options.upload.url&&e.upload?e.options.upload.file?[4,e.options.upload.file(r)]:[3,4]:(n&&(n.value=""),e.tip.show("please config: options.upload.url"),[2]);case 3:r=g.sent(),g.label=4;case 4:if(e.options.upload.validate&&"string"==typeof(a=e.options.upload.validate(r)))return e.tip.show(a),[2];if(s=Be(e),e.upload.range=(0,D.zh)(e),l=function(e,t){e.tip.hide();for(var n=[],r="",i="",o=(e.options.lang,e.options,function(o,a){var s=t[a],l=!0;s.name||(r+="<li>".concat(window.VditorI18n.nameEmpty,"</li>"),l=!1),s.size>e.options.upload.max&&(r+="<li>".concat(s.name," ").concat(window.VditorI18n.over," ").concat(e.options.upload.max/1024/1024,"M</li>"),l=!1);var c=s.name.lastIndexOf("."),d=s.name.substr(c),u=e.options.upload.filename(s.name.substr(0,c))+d;e.options.upload.accept&&(e.options.upload.accept.split(",").some((function(e){var t=e.trim();if(0===t.indexOf(".")){if(d.toLowerCase()===t.toLowerCase())return!0}else if(s.type.split("/")[0]===t.split("/")[0])return!0;return!1}))||(r+="<li>".concat(s.name," ").concat(window.VditorI18n.fileTypeError,"</li>"),l=!1)),l&&(n.push(s),i+="<li>".concat(u," ").concat(window.VditorI18n.uploading,' <a class="vditorCancelUpload" href="javascript:void(0)">').concat(window.VditorI18n.cancelUpload,"</a></li>"))}),a=t.length,s=0;s<a;s++)o(0,s);if(e.tip.show("<ul>".concat(r).concat(i,"</ul>")),e.options.upload.cancel){var l=e.tip.element.querySelector(".vditorCancelUpload");l&&l.addEventListener("click",(function(){e.options.upload.cancel(n),e.tip.hide(),e.upload.isUploading=!1}))}return n}(e,r),0===l.length)return n&&(n.value=""),[2];for(c=new FormData,d=e.options.upload.extraData,u=0,p=Object.keys(d);u<p.length;u++)m=p[u],c.append(m,d[m]);for(f=0,h=l.length;f<h;f++)c.append(e.options.upload.fieldName,l[f]);return v=new XMLHttpRequest,e.upload.xhr=v,v.open("POST",e.options.upload.url),e.options.upload.token&&v.setRequestHeader("X-Upload-Token",e.options.upload.token),e.options.upload.withCredentials&&(v.withCredentials=!0),Ve(e,v),e.upload.isUploading=!0,s.setAttribute("contenteditable","false"),v.onreadystatechange=function(){if(v.readyState===XMLHttpRequest.DONE){if(e.upload.isUploading=!1,s.setAttribute("contenteditable","true"),v.status>=200&&v.status<300)if(e.options.upload.success)e.options.upload.success(s,v.responseText);else{var r=v.responseText;e.options.upload.format&&(r=e.options.upload.format(t,v.responseText)),function(e,t){Be(t).focus();var n=JSON.parse(e),r="";1===n.code&&(r="".concat(n.msg)),n.data.errFiles&&n.data.errFiles.length>0&&(r="<ul><li>".concat(r,"</li>"),n.data.errFiles.forEach((function(e){var n=e.lastIndexOf("."),i=t.options.upload.filename(e.substr(0,n))+e.substr(n);r+="<li>".concat(i," ").concat(window.VditorI18n.uploadError,"</li>")})),r+="</ul>"),r?t.tip.show(r):t.tip.hide();var i="";Object.keys(n.data.succMap).forEach((function(e){var r=n.data.succMap[e],o=e.lastIndexOf("."),a=e.substr(o),s=t.options.upload.filename(e.substr(0,o))+a;0===(a=a.toLowerCase()).indexOf(".wav")||0===a.indexOf(".mp3")||0===a.indexOf(".ogg")?"wysiwyg"===t.currentMode?i+='<div class="vditor-wysiwyg__block" data-type="html-block"\n data-block="0"><pre><code><audio controls="controls" src="'.concat(r,'"></audio></code></pre><pre class="vditor-wysiwyg__preview" data-render="1"><audio controls="controls" src="').concat(r,'"></audio></pre></div>\n'):"ir"===t.currentMode?i+='<audio controls="controls" src="'.concat(r,'"></audio>\n'):i+="[".concat(s,"](").concat(r,")\n"):0===a.indexOf(".apng")||0===a.indexOf(".bmp")||0===a.indexOf(".gif")||0===a.indexOf(".ico")||0===a.indexOf(".cur")||0===a.indexOf(".jpg")||0===a.indexOf(".jpeg")||0===a.indexOf(".jfif")||0===a.indexOf(".pjp")||0===a.indexOf(".pjpeg")||0===a.indexOf(".png")||0===a.indexOf(".svg")||0===a.indexOf(".webp")?"wysiwyg"===t.currentMode?i+='<img alt="'.concat(s,'" src="').concat(r,'">\n'):i+="![".concat(s,"](").concat(r,")\n"):"wysiwyg"===t.currentMode?i+='<a href="'.concat(r,'">').concat(s,"</a>\n"):i+="[".concat(s,"](").concat(r,")\n")})),(0,D.Hc)(t.upload.range),document.execCommand("insertHTML",!1,i),t.upload.range=getSelection().getRangeAt(0).cloneRange()}(r,e)}else e.options.upload.error?e.options.upload.error(v.responseText):e.tip.show(v.responseText);n&&(n.value=""),e.upload.element.style.display="none",e.upload.xhr=void 0}},v.upload.onprogress=function(t){if(t.lengthComputable){var n=t.loaded/t.total*100;e.upload.element.style.display="block",e.upload.element.style.width=n+"%"}},v.send(c),[2]}}))}))},Ke=function(e,t,n){var r,o=(0,b.F9)(t.startContainer);if(o||(o=e.wysiwyg.element),n&&"formatItalic"!==n.inputType&&"deleteByDrag"!==n.inputType&&"insertFromDrop"!==n.inputType&&"formatBold"!==n.inputType&&"formatRemove"!==n.inputType&&"formatStrikeThrough"!==n.inputType&&"insertUnorderedList"!==n.inputType&&"insertOrderedList"!==n.inputType&&"formatOutdent"!==n.inputType&&"formatIndent"!==n.inputType&&""!==n.inputType||!n){var a=function(e){for(var t=e.previousSibling;t;){if(3!==t.nodeType&&"A"===t.tagName&&!t.previousSibling&&""===t.innerHTML.replace(i.g.ZWSP,"")&&t.nextSibling)return t;t=t.previousSibling}return!1}(t.startContainer);a&&a.remove(),e.wysiwyg.element.querySelectorAll("wbr").forEach((function(e){e.remove()})),t.insertNode(document.createElement("wbr")),o.querySelectorAll("[style]").forEach((function(e){e.removeAttribute("style")})),o.querySelectorAll(".vditor-comment").forEach((function(e){""===e.textContent.trim()&&(e.classList.remove("vditor-comment","vditor-comment--focus"),e.removeAttribute("data-cmtids"))})),null===(r=o.previousElementSibling)||void 0===r||r.querySelectorAll(".vditor-comment").forEach((function(e){""===e.textContent.trim()&&(e.classList.remove("vditor-comment","vditor-comment--focus"),e.removeAttribute("data-cmtids"))}));var s="";"link-ref-defs-block"===o.getAttribute("data-type")&&(o=e.wysiwyg.element);var l,c=o.isEqualNode(e.wysiwyg.element),d=(0,b.a1)(o,"data-type","footnotes-block");if(c)s=o.innerHTML;else{var u=(0,b.O9)(t.startContainer);if(u&&!d){var p=(0,y.S)(t.startContainer,"BLOCKQUOTE");o=p?(0,b.F9)(t.startContainer)||o:u}if(d&&(o=d),s=o.outerHTML,"UL"===o.tagName||"OL"===o.tagName){var m=o.previousElementSibling,f=o.nextElementSibling;!m||"UL"!==m.tagName&&"OL"!==m.tagName||(s=m.outerHTML+s,m.remove()),!f||"UL"!==f.tagName&&"OL"!==f.tagName||(s+=f.outerHTML,f.remove()),s=s.replace("<div><wbr><br></div>","<li><p><wbr><br></p></li>")}o.innerText.startsWith("```")||(e.wysiwyg.element.querySelectorAll("[data-type='link-ref-defs-block']").forEach((function(e){e&&!o.isEqualNode(e)&&(s+=e.outerHTML,e.remove())})),e.wysiwyg.element.querySelectorAll("[data-type='footnotes-block']").forEach((function(e){e&&!o.isEqualNode(e)&&(s+=e.outerHTML,e.remove())})))}if('<p data-block="0">```<wbr></p>'===(s=s.replace(/<\/(strong|b)><strong data-marker="\W{2}">/g,"").replace(/<\/(em|i)><em data-marker="\W{1}">/g,"").replace(/<\/(s|strike)><s data-marker="~{1,2}">/g,""))&&e.hint.recentLanguage&&(s='<p data-block="0">```<wbr></p>'.replace("```","```"+e.hint.recentLanguage)),w("SpinVditorDOM",s,"argument",e.options.debugger),s=e.lute.SpinVditorDOM(s),w("SpinVditorDOM",s,"result",e.options.debugger),c)o.innerHTML=s;else if(o.outerHTML=s,d){var h=(0,b.E2)(e.wysiwyg.element.querySelector("wbr"),"LI");if(h){var v=e.wysiwyg.element.querySelector('sup[data-type="footnotes-ref"][data-footnotes-label="'.concat(h.getAttribute("data-marker"),'"]'));v&&v.setAttribute("aria-label",h.textContent.trim().substr(0,24))}}var g,E=e.wysiwyg.element.querySelectorAll("[data-type='link-ref-defs-block']");E.forEach((function(e,t){0===t?l=e:(l.insertAdjacentHTML("beforeend",e.innerHTML),e.remove())})),E.length>0&&e.wysiwyg.element.insertAdjacentElement("beforeend",E[0]);var k=e.wysiwyg.element.querySelectorAll("[data-type='footnotes-block']");k.forEach((function(e,t){0===t?g=e:(g.insertAdjacentHTML("beforeend",e.innerHTML),e.remove())})),k.length>0&&e.wysiwyg.element.insertAdjacentElement("beforeend",k[0]),(0,D.ib)(e.wysiwyg.element,t),e.wysiwyg.element.querySelectorAll(".vditor-wysiwyg__preview[data-render='2']").forEach((function(t){O(t,e)})),n&&("deleteContentBackward"===n.inputType||"deleteContentForward"===n.inputType)&&e.options.comment.enable&&(e.wysiwyg.triggerRemoveComment(e),e.options.comment.adjustTop(e.wysiwyg.getComments(e,!0)))}I(e),$(e,{enableAddUndoStack:!0,enableHint:!0,enableInput:!0})},Fe=function(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e},Ze=function(e,t,n,r){return new(n||(n=Promise))((function(i,o){function a(e){try{l(r.next(e))}catch(e){o(e)}}function s(e){try{l(r.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}l((r=r.apply(e,t||[])).next())}))},Je=function(e,t){var n,r,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(s){return function(l){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,s[0]&&(a=0)),a;)try{if(n=1,r&&(i=2&s[0]?r.return:s[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,s[1])).done)return i;switch(r=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,r=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(i=a.trys,(i=i.length>0&&i[i.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]<i[3])){a.label=s[1];break}if(6===s[0]&&a.label<i[1]){a.label=i[1],i=s;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(s);break}i[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],r=0}finally{n=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},Xe=function(e,t,n){if(229===e.keyCode&&""===e.code&&"Unidentified"===e.key&&"sv"!==t.currentMode){var r=(0,b.F9)(n);if(r&&""===r.textContent.trim())return t[t.currentMode].composingLock=!0,!1}return!0},Ye=function(e,t,n){if(!("Enter"===n.key||"Tab"===n.key||"Backspace"===n.key||n.key.indexOf("Arrow")>-1||(0,c.yl)(n)||"Escape"===n.key||n.shiftKey||n.altKey)){var r=(0,b.lG)(e.startContainer,"P")||(0,b.lG)(e.startContainer,"LI");if(r&&0===(0,D.im)(r,t[t.currentMode].element,e).start){r.nodeValue&&(r.nodeValue=r.nodeValue.replace(/\u2006/g,""));var o=document.createTextNode(i.g.ZWSP);e.insertNode(o),e.setStartAfter(o)}}},Qe=function(e,t){if("ArrowDown"===t||"ArrowUp"===t){var n=(0,b.a1)(e.startContainer,"data-type","math-inline")||(0,b.a1)(e.startContainer,"data-type","html-entity")||(0,b.a1)(e.startContainer,"data-type","html-inline");n&&("ArrowDown"===t&&e.setStartAfter(n.parentElement),"ArrowUp"===t&&e.setStartBefore(n.parentElement))}},$e=function(e,t){var n=(0,D.zh)(e),r=(0,b.F9)(n.startContainer);r&&(r.insertAdjacentHTML(t,'<p data-block="0">'.concat(i.g.ZWSP,"<wbr>\n</p>")),(0,D.ib)(e[e.currentMode].element,n),ve(e),ut(e))},et=function(e){var t=(0,b.lG)(e,"TABLE");return!(!t||!t.rows[0].cells[0].isSameNode(e))&&t},tt=function(e){var t=(0,b.lG)(e,"TABLE");return!(!t||!t.lastElementChild.lastElementChild.lastElementChild.isSameNode(e))&&t},nt=function(e,t,n){void 0===n&&(n=!0);var r=e.previousElementSibling;return r||(r=e.parentElement.previousElementSibling?e.parentElement.previousElementSibling.lastElementChild:"TBODY"===e.parentElement.parentElement.tagName&&e.parentElement.parentElement.previousElementSibling?e.parentElement.parentElement.previousElementSibling.lastElementChild.lastElementChild:null),r&&(t.selectNodeContents(r),n||t.collapse(!1),(0,D.Hc)(t)),r},rt=function(e,t,n,r,o){var a=(0,D.im)(r,e[e.currentMode].element,n);if("ArrowDown"===t.key&&-1===r.textContent.trimRight().substr(a.start).indexOf("\n")||"ArrowRight"===t.key&&a.start>=r.textContent.trimRight().length){var s=o.nextElementSibling;return!s||s&&("TABLE"===s.tagName||s.getAttribute("data-type"))?(o.insertAdjacentHTML("afterend",'<p data-block="0">'.concat(i.g.ZWSP,"<wbr></p>")),(0,D.ib)(e[e.currentMode].element,n)):(n.selectNodeContents(s),n.collapse(!0),(0,D.Hc)(n)),t.preventDefault(),!0}return!1},it=function(e,t,n,r,o){var a=(0,D.im)(r,e[e.currentMode].element,n);if("ArrowUp"===t.key&&-1===r.textContent.substr(0,a.start).indexOf("\n")||("ArrowLeft"===t.key||"Backspace"===t.key&&""===n.toString())&&0===a.start){var s=o.previousElementSibling;return!s||s&&("TABLE"===s.tagName||s.getAttribute("data-type"))?(o.insertAdjacentHTML("beforebegin",'<p data-block="0">'.concat(i.g.ZWSP,"<wbr></p>")),(0,D.ib)(e[e.currentMode].element,n)):(n.selectNodeContents(s),n.collapse(!1),(0,D.Hc)(n)),t.preventDefault(),!0}return!1},ot=function(e,t,n,r){void 0===r&&(r=!0);var i=(0,b.lG)(t.startContainer,"LI");if(e[e.currentMode].element.querySelectorAll("wbr").forEach((function(e){e.remove()})),t.insertNode(document.createElement("wbr")),r&&i){for(var o="",a=0;a<i.parentElement.childElementCount;a++){var s=i.parentElement.children[a].querySelector("input");s&&s.remove(),o+='<p data-block="0">'.concat(i.parentElement.children[a].innerHTML.trimLeft(),"</p>")}i.parentElement.insertAdjacentHTML("beforebegin",o),i.parentElement.remove()}else if(i)if("check"===n)i.parentElement.querySelectorAll("li").forEach((function(e){e.insertAdjacentHTML("afterbegin",'<input type="checkbox" />'.concat(0===e.textContent.indexOf(" ")?"":" ")),e.classList.add("vditor-task")}));else{i.querySelector("input")&&i.parentElement.querySelectorAll("li").forEach((function(e){e.querySelector("input").remove(),e.classList.remove("vditor-task")}));var l=void 0;"list"===n?(l=document.createElement("ul")).setAttribute("data-marker","*"):(l=document.createElement("ol")).setAttribute("data-marker","1."),l.setAttribute("data-block","0"),l.setAttribute("data-tight",i.parentElement.getAttribute("data-tight")),l.innerHTML=i.parentElement.innerHTML,i.parentElement.parentNode.replaceChild(l,i.parentElement)}else{var c=(0,b.a1)(t.startContainer,"data-block","0");c||(e[e.currentMode].element.querySelector("wbr").remove(),(c=e[e.currentMode].element.querySelector("p")).innerHTML="<wbr>"),"check"===n?(c.insertAdjacentHTML("beforebegin",'<ul data-block="0"><li class="vditor-task"><input type="checkbox" /> '.concat(c.innerHTML,"</li></ul>")),c.remove()):"list"===n?(c.insertAdjacentHTML("beforebegin",'<ul data-block="0"><li>'.concat(c.innerHTML,"</li></ul>")),c.remove()):"ordered-list"===n&&(c.insertAdjacentHTML("beforebegin",'<ol data-block="0"><li>'.concat(c.innerHTML,"</li></ol>")),c.remove())}},at=function(e,t,n){var r=t.previousElementSibling;if(t&&r){var i=[t];Array.from(n.cloneContents().children).forEach((function(e,n){3!==e.nodeType&&t&&""!==e.textContent.trim()&&t.getAttribute("data-node-id")===e.getAttribute("data-node-id")&&(0!==n&&i.push(t),t=t.nextElementSibling)})),e[e.currentMode].element.querySelectorAll("wbr").forEach((function(e){e.remove()})),n.insertNode(document.createElement("wbr"));var o=r.parentElement,a="";i.forEach((function(e){var t=e.getAttribute("data-marker");1!==t.length&&(t="1".concat(t.slice(-1))),a+='<li data-node-id="'.concat(e.getAttribute("data-node-id"),'" data-marker="').concat(t,'">').concat(e.innerHTML,"</li>"),e.remove()})),r.insertAdjacentHTML("beforeend","<".concat(o.tagName,' data-block="0">').concat(a,"</").concat(o.tagName,">")),"wysiwyg"===e.currentMode?o.outerHTML=e.lute.SpinVditorDOM(o.outerHTML):o.outerHTML=e.lute.SpinVditorIRDOM(o.outerHTML),(0,D.ib)(e[e.currentMode].element,n);var s=(0,b.O9)(n.startContainer);s&&s.querySelectorAll(".vditor-".concat(e.currentMode,"__preview[data-render='2']")).forEach((function(t){O(t,e),"wysiwyg"===e.currentMode&&t.previousElementSibling.setAttribute("style","display:none")})),ut(e),ve(e)}else e[e.currentMode].element.focus()},st=function(e,t,n,r){var i=(0,b.lG)(t.parentElement,"LI");if(i){e[e.currentMode].element.querySelectorAll("wbr").forEach((function(e){e.remove()})),n.insertNode(document.createElement("wbr"));var o=t.parentElement,a=o.cloneNode(),s=[t];Array.from(n.cloneContents().children).forEach((function(e,n){3!==e.nodeType&&t&&""!==e.textContent.trim()&&t.getAttribute("data-node-id")===e.getAttribute("data-node-id")&&(0!==n&&s.push(t),t=t.nextElementSibling)}));var l=!1,c="";o.querySelectorAll("li").forEach((function(e){l&&(c+=e.outerHTML,e.nextElementSibling||e.previousElementSibling?e.remove():e.parentElement.remove()),e.isSameNode(s[s.length-1])&&(l=!0)})),s.reverse().forEach((function(e){i.insertAdjacentElement("afterend",e)})),c&&(a.innerHTML=c,s[0].insertAdjacentElement("beforeend",a)),"wysiwyg"===e.currentMode?r.outerHTML=e.lute.SpinVditorDOM(r.outerHTML):r.outerHTML=e.lute.SpinVditorIRDOM(r.outerHTML),(0,D.ib)(e[e.currentMode].element,n);var d=(0,b.O9)(n.startContainer);d&&d.querySelectorAll(".vditor-".concat(e.currentMode,"__preview[data-render='2']")).forEach((function(t){O(t,e),"wysiwyg"===e.currentMode&&t.previousElementSibling.setAttribute("style","display:none")})),ut(e),ve(e)}else e[e.currentMode].element.focus()},lt=function(e,t){for(var n=getSelection().getRangeAt(0).startContainer.parentElement,r=e.rows[0].cells.length,i=e.rows.length,o=0,a=0;a<i;a++)for(var s=0;s<r;s++)if(e.rows[a].cells[s].isSameNode(n)){o=s;break}for(var l=0;l<i;l++)e.rows[l].cells[o].setAttribute("align",t)},ct=function(e){var t=e.trimRight().split("\n").pop();return""!==t&&((""===t.replace(/ |-/g,"")||""===t.replace(/ |_/g,"")||""===t.replace(/ |\*/g,""))&&(t.replace(/ /g,"").length>2&&(!(t.indexOf("-")>-1&&-1===t.trimLeft().indexOf(" ")&&e.trimRight().split("\n").length>1)&&(0!==t.indexOf(" ")&&0!==t.indexOf("\t")))))},dt=function(e){var t=e.trimRight().split("\n");return 0!==(e=t.pop()).indexOf(" ")&&0!==e.indexOf("\t")&&(""!==(e=e.trimLeft())&&0!==t.length&&(""===e.replace(/-/g,"")||""===e.replace(/=/g,"")))},ut=function(e,t){void 0===t&&(t={enableAddUndoStack:!0,enableHint:!1,enableInput:!0}),"wysiwyg"===e.currentMode?$(e,t):"ir"===e.currentMode?At(e,t):"sv"===e.currentMode&&Re(e,t)},pt=function(e,t,n,r){var o,a=e.startContainer,s=(0,b.lG)(a,"LI");if(s){if(!(0,c.yl)(r)&&!r.altKey&&"Enter"===r.key&&!r.shiftKey&&n&&s.contains(n)&&n.nextElementSibling)return s&&!s.textContent.endsWith("\n")&&s.insertAdjacentText("beforeend","\n"),e.insertNode(document.createTextNode("\n\n")),e.collapse(!1),ut(t),r.preventDefault(),!0;if(!((0,c.yl)(r)||r.shiftKey||r.altKey||"Backspace"!==r.key||s.previousElementSibling||""!==e.toString()||0!==(0,D.im)(s,t[t.currentMode].element,e).start))return s.nextElementSibling?(s.parentElement.insertAdjacentHTML("beforebegin",'<p data-block="0"><wbr>'.concat(s.innerHTML,"</p>")),s.remove()):s.parentElement.outerHTML='<p data-block="0"><wbr>'.concat(s.innerHTML,"</p>"),(0,D.ib)(t[t.currentMode].element,e),ut(t),r.preventDefault(),!0;if(!(0,c.yl)(r)&&!r.shiftKey&&!r.altKey&&"Backspace"===r.key&&""===s.textContent.trim().replace(i.g.ZWSP,"")&&""===e.toString()&&"LI"===(null===(o=s.previousElementSibling)||void 0===o?void 0:o.tagName))return s.previousElementSibling.insertAdjacentText("beforeend","\n\n"),e.selectNodeContents(s.previousElementSibling),e.collapse(!1),s.remove(),(0,D.ib)(t[t.currentMode].element,e),ut(t),r.preventDefault(),!0;if(!(0,c.yl)(r)&&!r.altKey&&"Tab"===r.key){var l=!1;if((0===e.startOffset&&(3===a.nodeType&&!a.previousSibling||3!==a.nodeType&&"LI"===a.nodeName)||s.classList.contains("vditor-task")&&1===e.startOffset&&3!==a.previousSibling.nodeType&&"INPUT"===a.previousSibling.tagName)&&(l=!0),l||""!==e.toString())return r.shiftKey?st(t,s,e,s.parentElement):at(t,s,e),r.preventDefault(),!0}}return!1},mt=function(e,t,n){if(e.options.tab&&"Tab"===n.key)return n.shiftKey||(""===t.toString()?(t.insertNode(document.createTextNode(e.options.tab)),t.collapse(!1)):(t.extractContents(),t.insertNode(document.createTextNode(e.options.tab)),t.collapse(!1))),(0,D.Hc)(t),ut(e),n.preventDefault(),!0},ft=function(e,t,n,r){if(n){if(!(0,c.yl)(e)&&!e.altKey&&"Enter"===e.key){var i=String.raw(X||(X=Fe(["",""],["",""])),n.textContent).replace(/\\\|/g,"").trim(),o=i.split("|");if(i.startsWith("|")&&i.endsWith("|")&&o.length>3){var a=o.map((function(){return"---"})).join("|");return a=n.textContent+"\n"+a.substring(3,a.length-3)+"\n|<wbr>",n.outerHTML=t.lute.SpinVditorDOM(a),(0,D.ib)(t[t.currentMode].element,r),ut(t),_e(t),e.preventDefault(),!0}if(ct(n.innerHTML)&&n.previousElementSibling){var s="",l=n.innerHTML.trimRight().split("\n");return l.length>1&&(l.pop(),s='<p data-block="0">'.concat(l.join("\n"),"</p>")),n.insertAdjacentHTML("afterend","".concat(s,'<hr data-block="0"><p data-block="0"><wbr>\n</p>')),n.remove(),(0,D.ib)(t[t.currentMode].element,r),ut(t),_e(t),e.preventDefault(),!0}if(dt(n.innerHTML))return"wysiwyg"===t.currentMode?n.outerHTML=t.lute.SpinVditorDOM(n.innerHTML+'<p data-block="0"><wbr>\n</p>'):n.outerHTML=t.lute.SpinVditorIRDOM(n.innerHTML+'<p data-block="0"><wbr>\n</p>'),(0,D.ib)(t[t.currentMode].element,r),ut(t),_e(t),e.preventDefault(),!0}if(r.collapsed&&n.previousElementSibling&&"Backspace"===e.key&&!(0,c.yl)(e)&&!e.altKey&&!e.shiftKey&&n.textContent.trimRight().split("\n").length>1&&0===(0,D.im)(n,t[t.currentMode].element,r).start){var d=(0,b.DX)(n.previousElementSibling);return d.textContent.endsWith("\n")||(d.textContent=d.textContent+"\n"),d.parentElement.insertAdjacentHTML("beforeend","<wbr>".concat(n.innerHTML)),n.remove(),(0,D.ib)(t[t.currentMode].element,r),!1}return!1}},ht=function(e,t,n){for(var r="",i=0;i<n.parentElement.childElementCount;i++)r+='<td align="'.concat(n.parentElement.children[i].getAttribute("align"),'"> </td>');"TH"===n.tagName?n.parentElement.parentElement.insertAdjacentHTML("afterend","<tbody><tr>".concat(r,"</tr></tbody>")):n.parentElement.insertAdjacentHTML("afterend","<tr>".concat(r,"</tr>")),ut(e)},vt=function(e,t,n){for(var r="",i=0;i<n.parentElement.childElementCount;i++)"TH"===n.tagName?r+='<th align="'.concat(n.parentElement.children[i].getAttribute("align"),'"> </th>'):r+='<td align="'.concat(n.parentElement.children[i].getAttribute("align"),'"> </td>');if("TH"===n.tagName){n.parentElement.parentElement.insertAdjacentHTML("beforebegin","<thead><tr>".concat(r,"</tr></thead>")),t.insertNode(document.createElement("wbr"));var o=n.parentElement.innerHTML.replace(/<th>/g,"<td>").replace(/<\/th>/g,"</td>");n.parentElement.parentElement.nextElementSibling.insertAdjacentHTML("afterbegin",o),n.parentElement.parentElement.remove(),(0,D.ib)(e.ir.element,t)}else n.parentElement.insertAdjacentHTML("beforebegin","<tr>".concat(r,"</tr>"));ut(e)},gt=function(e,t,n,r){void 0===r&&(r="afterend");for(var i=0,o=n.previousElementSibling;o;)i++,o=o.previousElementSibling;for(var a=0;a<t.rows.length;a++)0===a?t.rows[a].cells[i].insertAdjacentHTML(r,"<th> </th>"):t.rows[a].cells[i].insertAdjacentHTML(r,"<td> </td>");ut(e)},bt=function(e,t,n){if("TD"===n.tagName){var r=n.parentElement.parentElement;n.parentElement.previousElementSibling?t.selectNodeContents(n.parentElement.previousElementSibling.lastElementChild):t.selectNodeContents(r.previousElementSibling.lastElementChild.lastElementChild),1===r.childElementCount?r.remove():n.parentElement.remove(),t.collapse(!1),(0,D.Hc)(t),ut(e)}},yt=function(e,t,n,r){for(var i=0,o=r.previousElementSibling;o;)i++,o=o.previousElementSibling;(r.previousElementSibling||r.nextElementSibling)&&(t.selectNodeContents(r.previousElementSibling||r.nextElementSibling),t.collapse(!0));for(var a=0;a<n.rows.length;a++){var s=n.rows[a].cells;if(1===s.length){n.remove(),ve(e);break}s[i].remove()}(0,D.Hc)(t),ut(e)},wt=function(e,t,n){var r=n.startContainer,i=(0,b.lG)(r,"TD")||(0,b.lG)(r,"TH");if(i){if(!(0,c.yl)(t)&&!t.altKey&&"Enter"===t.key){i.lastElementChild&&(!i.lastElementChild||i.lastElementChild.isSameNode(i.lastChild)&&"BR"===i.lastElementChild.tagName)||i.insertAdjacentHTML("beforeend","<br>");var o=document.createElement("br");return n.insertNode(o),n.setStartAfter(o),ut(e),_e(e),t.preventDefault(),!0}if("Tab"===t.key)return t.shiftKey?(nt(i,n),t.preventDefault(),!0):((u=i.nextElementSibling)||(u=i.parentElement.nextElementSibling?i.parentElement.nextElementSibling.firstElementChild:"THEAD"===i.parentElement.parentElement.tagName&&i.parentElement.parentElement.nextElementSibling?i.parentElement.parentElement.nextElementSibling.firstElementChild.firstElementChild:null),u&&(n.selectNodeContents(u),(0,D.Hc)(n)),t.preventDefault(),!0);var a=i.parentElement.parentElement.parentElement;if("ArrowUp"===t.key){if(t.preventDefault(),"TH"===i.tagName)return a.previousElementSibling?(n.selectNodeContents(a.previousElementSibling),n.collapse(!1),(0,D.Hc)(n)):$e(e,"beforebegin"),!0;for(var s=0,l=i.parentElement;s<l.cells.length&&!l.cells[s].isSameNode(i);s++);var d=l.previousElementSibling;return d||(d=l.parentElement.previousElementSibling.firstChild),n.selectNodeContents(d.cells[s]),n.collapse(!1),(0,D.Hc)(n),!0}if("ArrowDown"===t.key){var u;if(t.preventDefault(),!(l=i.parentElement).nextElementSibling&&"TD"===i.tagName)return a.nextElementSibling?(n.selectNodeContents(a.nextElementSibling),n.collapse(!0),(0,D.Hc)(n)):$e(e,"afterend"),!0;for(s=0;s<l.cells.length&&!l.cells[s].isSameNode(i);s++);return(u=l.nextElementSibling)||(u=l.parentElement.nextElementSibling.firstChild),n.selectNodeContents(u.cells[s]),n.collapse(!0),(0,D.Hc)(n),!0}if("wysiwyg"===e.currentMode&&!(0,c.yl)(t)&&"Enter"===t.key&&!t.shiftKey&&t.altKey){var p=e.wysiwyg.popover.querySelector(".vditor-input");return p.focus(),p.select(),t.preventDefault(),!0}if(!(0,c.yl)(t)&&!t.shiftKey&&!t.altKey&&"Backspace"===t.key&&0===n.startOffset&&""===n.toString())return!nt(i,n,!1)&&a&&(""===a.textContent.trim()?(a.outerHTML='<p data-block="0"><wbr>\n</p>',(0,D.ib)(e[e.currentMode].element,n)):(n.setStartBefore(a),n.collapse(!0)),ut(e)),t.preventDefault(),!0;if(q("⇧⌘F",t))return vt(e,n,i),t.preventDefault(),!0;if(q("⌘=",t))return ht(e,n,i),t.preventDefault(),!0;if(q("⇧⌘G",t))return gt(e,a,i,"beforebegin"),t.preventDefault(),!0;if(q("⇧⌘=",t))return gt(e,a,i),t.preventDefault(),!0;if(q("⌘-",t))return bt(e,n,i),t.preventDefault(),!0;if(q("⇧⌘-",t))return yt(e,n,a,i),t.preventDefault(),!0;if(q("⇧⌘L",t)){if("ir"===e.currentMode)return lt(a,"left"),ut(e),t.preventDefault(),!0;if(m=e.wysiwyg.popover.querySelector('[data-type="left"]'))return m.click(),t.preventDefault(),!0}if(q("⇧⌘C",t)){if("ir"===e.currentMode)return lt(a,"center"),ut(e),t.preventDefault(),!0;if(m=e.wysiwyg.popover.querySelector('[data-type="center"]'))return m.click(),t.preventDefault(),!0}if(q("⇧⌘R",t)){if("ir"===e.currentMode)return lt(a,"right"),ut(e),t.preventDefault(),!0;var m;if(m=e.wysiwyg.popover.querySelector('[data-type="right"]'))return m.click(),t.preventDefault(),!0}}return!1},Et=function(e,t,n,r){if("PRE"===n.tagName&&q("⌘A",t))return r.selectNodeContents(n.firstElementChild),t.preventDefault(),!0;if(e.options.tab&&"Tab"===t.key&&!t.shiftKey&&""===r.toString())return r.insertNode(document.createTextNode(e.options.tab)),r.collapse(!1),ut(e),t.preventDefault(),!0;if("Backspace"===t.key&&!(0,c.yl)(t)&&!t.shiftKey&&!t.altKey){var i=(0,D.im)(n,e[e.currentMode].element,r);if((0===i.start||1===i.start&&"\n"===n.innerText)&&""===r.toString())return n.parentElement.outerHTML='<p data-block="0"><wbr>'.concat(n.firstElementChild.innerHTML,"</p>"),(0,D.ib)(e[e.currentMode].element,r),ut(e),t.preventDefault(),!0}return!(0,c.yl)(t)&&!t.altKey&&"Enter"===t.key&&(n.firstElementChild.textContent.endsWith("\n")||n.firstElementChild.insertAdjacentText("beforeend","\n"),r.extractContents(),r.insertNode(document.createTextNode("\n")),r.collapse(!1),(0,D.Hc)(r),(0,c.vU)()||("wysiwyg"===e.currentMode?Ke(e,r):P(e,r)),_e(e),t.preventDefault(),!0)},kt=function(e,t,n,r){var o=t.startContainer,a=(0,b.lG)(o,"BLOCKQUOTE");if(a&&""===t.toString()){if("Backspace"===n.key&&!(0,c.yl)(n)&&!n.shiftKey&&!n.altKey&&0===(0,D.im)(a,e[e.currentMode].element,t).start)return t.insertNode(document.createElement("wbr")),a.outerHTML=a.innerHTML,(0,D.ib)(e[e.currentMode].element,t),ut(e),n.preventDefault(),!0;if(r&&"Enter"===n.key&&!(0,c.yl)(n)&&!n.shiftKey&&!n.altKey&&"BLOCKQUOTE"===r.parentElement.tagName){var s=!1;if("\n"===r.innerHTML.replace(i.g.ZWSP,"")||""===r.innerHTML.replace(i.g.ZWSP,"")?(s=!0,r.remove()):r.innerHTML.endsWith("\n\n")&&(0,D.im)(r,e[e.currentMode].element,t).start===r.textContent.length-1&&(r.innerHTML=r.innerHTML.substr(0,r.innerHTML.length-2),s=!0),s)return a.insertAdjacentHTML("afterend",'<p data-block="0">'.concat(i.g.ZWSP,"<wbr>\n</p>")),(0,D.ib)(e[e.currentMode].element,t),ut(e),n.preventDefault(),!0}var l=(0,b.F9)(o);if("wysiwyg"===e.currentMode&&l&&q("⇧⌘;",n))return t.insertNode(document.createElement("wbr")),l.outerHTML='<blockquote data-block="0">'.concat(l.outerHTML,"</blockquote>"),(0,D.ib)(e.wysiwyg.element,t),$(e),n.preventDefault(),!0;if(rt(e,n,t,a,a))return!0;if(it(e,n,t,a,a))return!0}return!1},St=function(e,t,n){var r=t.startContainer,i=(0,b.lG)(r,"LI");if(i&&i.classList.contains("vditor-task")){if(q("⇧⌘J",n)){var o=i.firstElementChild;return o.checked?o.removeAttribute("checked"):o.setAttribute("checked","checked"),ut(e),n.preventDefault(),!0}if("Backspace"===n.key&&!(0,c.yl)(n)&&!n.shiftKey&&!n.altKey&&""===t.toString()&&1===t.startOffset&&(3===r.nodeType&&r.previousSibling&&"INPUT"===r.previousSibling.tagName||3!==r.nodeType)){var a=i.previousElementSibling;if(i.querySelector("input").remove(),a)(0,b.DX)(a).parentElement.insertAdjacentHTML("beforeend","<wbr>"+i.innerHTML.trim()),i.remove();else i.parentElement.insertAdjacentHTML("beforebegin",'<p data-block="0"><wbr>'.concat(i.innerHTML.trim()||"\n","</p>")),i.nextElementSibling?i.remove():i.parentElement.remove();return(0,D.ib)(e[e.currentMode].element,t),ut(e),n.preventDefault(),!0}if("Enter"===n.key&&!(0,c.yl)(n)&&!n.shiftKey&&!n.altKey){if(""===i.textContent.trim())if((0,b.fb)(i.parentElement,"vditor-task")){var s=(0,b.O9)(r);s&&st(e,i,t,s)}else if(i.nextElementSibling){var l="",d="",u=!1;Array.from(i.parentElement.children).forEach((function(e){i.isSameNode(e)?u=!0:u?l+=e.outerHTML:d+=e.outerHTML}));var p=i.parentElement.tagName,m="OL"===i.parentElement.tagName?"":' data-marker="'.concat(i.parentElement.getAttribute("data-marker"),'"'),f="";d&&(f="UL"===i.parentElement.tagName?"":' start="1"',d="<".concat(p,' data-tight="true"').concat(m,' data-block="0">').concat(d,"</").concat(p,">")),i.parentElement.outerHTML="".concat(d,'<p data-block="0"><wbr>\n</p><').concat(p,'\n data-tight="true"').concat(m,' data-block="0"').concat(f,">").concat(l,"</").concat(p,">")}else i.parentElement.insertAdjacentHTML("afterend",'<p data-block="0"><wbr>\n</p>'),1===i.parentElement.querySelectorAll("li").length?i.parentElement.remove():i.remove();else 3!==r.nodeType&&0===t.startOffset&&"INPUT"===r.firstChild.tagName?t.setStart(r.childNodes[1],1):(t.setEndAfter(i.lastChild),i.insertAdjacentHTML("afterend",'<li class="vditor-task" data-marker="'.concat(i.getAttribute("data-marker"),'"><input type="checkbox"> <wbr></li>')),document.querySelector("wbr").after(t.extractContents()));return(0,D.ib)(e[e.currentMode].element,t),ut(e),_e(e),n.preventDefault(),!0}}return!1},Lt=function(e,t,n,r){if(3!==t.startContainer.nodeType){var i=t.startContainer.children[t.startOffset];if(i&&"HR"===i.tagName)return t.selectNodeContents(i.previousElementSibling),t.collapse(!1),n.preventDefault(),!0}if(r){var o=r.previousElementSibling;if(o&&0===(0,D.im)(r,e[e.currentMode].element,t).start&&((0,c.vU)()&&"HR"===o.tagName||"TABLE"===o.tagName)){if("TABLE"===o.tagName){var a=o.lastElementChild.lastElementChild.lastElementChild;a.innerHTML=a.innerHTML.trimLeft()+"<wbr>"+r.textContent.trim(),r.remove()}else o.remove();return(0,D.ib)(e[e.currentMode].element,t),ut(e),n.preventDefault(),!0}}return!1},Tt=function(e){(0,c.vU)()&&3!==e.startContainer.nodeType&&"HR"===e.startContainer.tagName&&e.setStartBefore(e.startContainer)},Ct=function(e,t,n){var r,i;if(!(0,c.vU)())return!1;if("ArrowUp"===e.key&&t&&"TABLE"===(null===(r=t.previousElementSibling)||void 0===r?void 0:r.tagName)){var o=t.previousElementSibling;return n.selectNodeContents(o.rows[o.rows.length-1].lastElementChild),n.collapse(!1),e.preventDefault(),!0}return!("ArrowDown"!==e.key||!t||"TABLE"!==(null===(i=t.nextElementSibling)||void 0===i?void 0:i.tagName))&&(n.selectNodeContents(t.nextElementSibling.rows[0].cells[0]),n.collapse(!0),e.preventDefault(),!0)},Mt=function(e,t,n){return Ze(void 0,void 0,void 0,(function(){var r,o,a,s,l,c,d,u,p,m,f,h,v,g,y,w;return Je(this,(function(E){switch(E.label){case 0:return"true"!==e[e.currentMode].element.getAttribute("contenteditable")?[2]:(t.stopPropagation(),t.preventDefault(),"clipboardData"in t?(r=t.clipboardData.getData("text/html"),o=t.clipboardData.getData("text/plain"),a=t.clipboardData.files):(r=t.dataTransfer.getData("text/html"),o=t.dataTransfer.getData("text/plain"),t.dataTransfer.types.includes("Files")&&(a=t.dataTransfer.items)),s={},l=function(t,n){if(!n)return["",Lute.WalkContinue];if(e.options.upload.renderLinkDest)return e.options.upload.renderLinkDest(e,t,n);var r=t.TokensStr();if(34===t.__internal_object__.Parent.Type&&r&&-1===r.indexOf("file://")&&e.options.upload.linkToImgUrl){var i=new XMLHttpRequest;i.open("POST",e.options.upload.linkToImgUrl),e.options.upload.token&&i.setRequestHeader("X-Upload-Token",e.options.upload.token),e.options.upload.withCredentials&&(i.withCredentials=!0),Ve(e,i),i.setRequestHeader("Content-Type","application/json; charset=utf-8"),i.onreadystatechange=function(){if(i.readyState===XMLHttpRequest.DONE){if(200===i.status){var t=i.responseText;e.options.upload.linkToImgFormat&&(t=e.options.upload.linkToImgFormat(i.responseText));var n=JSON.parse(t);if(0!==n.code)return void e.tip.show(n.msg);var r=n.data.originalURL;if("sv"===e.currentMode)e.sv.element.querySelectorAll(".vditor-sv__marker--link").forEach((function(e){e.textContent===r&&(e.textContent=n.data.url)}));else{var o=e[e.currentMode].element.querySelector('img[src="'.concat(r,'"]'));o.src=n.data.url,"ir"===e.currentMode&&(o.previousElementSibling.previousElementSibling.innerHTML=n.data.url)}ut(e)}else e.tip.show(i.responseText);e.options.upload.linkToImgCallback&&e.options.upload.linkToImgCallback(i.responseText)}},i.send(JSON.stringify({url:r}))}return"ir"===e.currentMode?['<span class="vditor-ir__marker vditor-ir__marker--link">'.concat(Lute.EscapeHTMLStr(r),"</span>"),Lute.WalkContinue]:"wysiwyg"===e.currentMode?["",Lute.WalkContinue]:['<span class="vditor-sv__marker--link">'.concat(Lute.EscapeHTMLStr(r),"</span>"),Lute.WalkContinue]},r.replace(/&/g,"&").replace(/<(|\/)(html|body|meta)[^>]*?>/gi,"").trim()!=='<a href="'.concat(o,'">').concat(o,"</a>")&&r.replace(/&/g,"&").replace(/<(|\/)(html|body|meta)[^>]*?>/gi,"").trim()!=='\x3c!--StartFragment--\x3e<a href="'.concat(o,'">').concat(o,"</a>\x3c!--EndFragment--\x3e")||(r=""),(c=(new DOMParser).parseFromString(r,"text/html")).body&&(r=c.body.innerHTML),r=Lute.Sanitize(r),e.wysiwyg.getComments(e),d=e[e.currentMode].element.scrollHeight,u=function(e,t,n){void 0===n&&(n="sv");var r=document.createElement("div");r.innerHTML=e;var i=!1;1===r.childElementCount&&r.lastElementChild.style.fontFamily.indexOf("monospace")>-1&&(i=!0);var o=r.querySelectorAll("pre");if(1===r.childElementCount&&1===o.length&&"vditor-wysiwyg"!==o[0].className&&"vditor-sv"!==o[0].className&&(i=!0),0===e.indexOf('\n<p class="p1">')&&(i=!0),1===r.childElementCount&&"TABLE"===r.firstElementChild.tagName&&r.querySelector(".line-number")&&r.querySelector(".line-content")&&(i=!0),i){var a=t||e;return/\n/.test(a)||1===o.length?"wysiwyg"===n?'<div class="vditor-wysiwyg__block" data-block="0" data-type="code-block"><pre><code>'.concat(a.replace(/&/g,"&").replace(/</g,"<"),"<wbr></code></pre></div>"):"\n```\n"+a.replace(/&/g,"&").replace(/</g,"<")+"\n```":"wysiwyg"===n?"<code>".concat(a.replace(/&/g,"&").replace(/</g,"<"),"</code><wbr>"):"`".concat(a,"`")}return!1}(r,o,e.currentMode),(p="sv"===e.currentMode?(0,b.a1)(t.target,"data-type","code-block"):(0,b.lG)(t.target,"CODE"))?("sv"===e.currentMode?document.execCommand("insertHTML",!1,o.replace(/&/g,"&").replace(/</g,"<")):(m=(0,D.im)(t.target,e[e.currentMode].element),"PRE"!==p.parentElement.tagName&&(o+=i.g.ZWSP),p.textContent=p.textContent.substring(0,m.start)+o+p.textContent.substring(m.end),(0,D.$j)(m.start+o.length,m.start+o.length,p.parentElement),(null===(w=p.parentElement)||void 0===w?void 0:w.nextElementSibling.classList.contains("vditor-".concat(e.currentMode,"__preview")))&&(p.parentElement.nextElementSibling.innerHTML=p.outerHTML,O(p.parentElement.nextElementSibling,e))),[3,8]):[3,1]);case 1:return u?(n.pasteCode(u),[3,8]):[3,2];case 2:return""===r.trim()?[3,3]:((f=document.createElement("div")).innerHTML=r,f.querySelectorAll("[style]").forEach((function(e){e.removeAttribute("style")})),f.querySelectorAll(".vditor-copy").forEach((function(e){e.remove()})),"ir"===e.currentMode?(s.HTML2VditorIRDOM={renderLinkDest:l},e.lute.SetJSRenderers({renderers:s}),(0,D.oC)(e.lute.HTML2VditorIRDOM(f.innerHTML),e)):"wysiwyg"===e.currentMode?(s.HTML2VditorDOM={renderLinkDest:l},e.lute.SetJSRenderers({renderers:s}),(0,D.oC)(e.lute.HTML2VditorDOM(f.innerHTML),e)):(s.Md2VditorSVDOM={renderLinkDest:l},e.lute.SetJSRenderers({renderers:s}),Oe(e,e.lute.HTML2Md(f.innerHTML).trimRight())),e.outline.render(e),[3,8]);case 3:return a.length>0?e.options.upload.url||e.options.upload.handler?[4,Ge(e,a)]:[3,5]:[3,7];case 4:return E.sent(),[3,6];case 5:h=new FileReader,"clipboardData"in t?(a=t.clipboardData.files,v=a[0]):t.dataTransfer.types.includes("Files")&&(a=t.dataTransfer.items,v=a[0].getAsFile()),v&&v.type.startsWith("image")&&(h.readAsDataURL(v),h.onload=function(){var t="";"wysiwyg"===e.currentMode?t+='<img alt="'.concat(v.name,'" src="').concat(h.result.toString(),'">\n'):t+="![".concat(v.name,"](").concat(h.result.toString(),")\n"),document.execCommand("insertHTML",!1,t)}),E.label=6;case 6:return[3,8];case 7:""!==o.trim()&&0===a.length&&(""!==(y=(0,D.zh)(e)).toString()&&e.lute.IsValidLinkDest(o)&&(o="[".concat(y.toString(),"](").concat(o,")")),"ir"===e.currentMode?(s.Md2VditorIRDOM={renderLinkDest:l},e.lute.SetJSRenderers({renderers:s}),(0,D.oC)(e.lute.Md2VditorIRDOM(o),e)):"wysiwyg"===e.currentMode?(s.Md2VditorDOM={renderLinkDest:l},e.lute.SetJSRenderers({renderers:s}),(0,D.oC)(e.lute.Md2VditorDOM(o),e)):(s.Md2VditorSVDOM={renderLinkDest:l},e.lute.SetJSRenderers({renderers:s}),Oe(e,o)),e.outline.render(e)),E.label=8;case 8:return"sv"!==e.currentMode&&((g=(0,b.F9)((0,D.zh)(e).startContainer))&&(y=(0,D.zh)(e),e[e.currentMode].element.querySelectorAll("wbr").forEach((function(e){e.remove()})),y.insertNode(document.createElement("wbr")),"wysiwyg"===e.currentMode?g.outerHTML=e.lute.SpinVditorDOM(g.outerHTML):g.outerHTML=e.lute.SpinVditorIRDOM(g.outerHTML),(0,D.ib)(e[e.currentMode].element,y)),e[e.currentMode].element.querySelectorAll(".vditor-".concat(e.currentMode,"__preview[data-render='2']")).forEach((function(t){O(t,e)}))),e.wysiwyg.triggerRemoveComment(e),ut(e),e[e.currentMode].element.scrollHeight-d>Math.min(e[e.currentMode].element.clientHeight,window.innerHeight)/2&&_e(e),[2]}}))}))},xt=function(e){var t,n;e.hint.render(e);var r=(0,D.zh)(e).startContainer,o=(0,b.a1)(r,"data-type","code-block-info");if(o)if(""===o.textContent.replace(i.g.ZWSP,"")&&e.hint.recentLanguage){o.textContent=i.g.ZWSP+e.hint.recentLanguage,(0,D.zh)(e).selectNodeContents(o)}else{var a=[],s=o.textContent.substring(0,(0,D.im)(o,e.ir.element).start).replace(i.g.ZWSP,"");(e.options.preview.hljs.langs||i.g.ALIAS_CODE_LANGUAGES.concat((null!==(n=null===(t=window.hljs)||void 0===t?void 0:t.listLanguages())&&void 0!==n?n:[]).sort())).forEach((function(e){e.indexOf(s.toLowerCase())>-1&&a.push({html:e,value:e})})),e.hint.genHTML(a,s,e)}},At=function(e,t){void 0===t&&(t={enableAddUndoStack:!0,enableHint:!1,enableInput:!0}),t.enableHint&&xt(e),clearTimeout(e.ir.processTimeoutId),e.ir.processTimeoutId=window.setTimeout((function(){if(!e.ir.composingLock){var n=a(e);"function"==typeof e.options.input&&t.enableInput&&e.options.input(n),e.options.counter.enable&&e.counter.render(e,n),e.options.cache.enable&&(0,c.pK)()&&(localStorage.setItem(e.options.cache.id,n),e.options.cache.after&&e.options.cache.after(n)),e.devtools&&e.devtools.renderEchart(e),t.enableAddUndoStack&&e.undo.addToUndoStack(e)}}),e.options.undoDelay)},_t=function(e,t){var n=(0,D.zh)(e),r=(0,b.F9)(n.startContainer)||n.startContainer;if(r){var i=r.querySelector(".vditor-ir__marker--heading");i?i.innerHTML=t:(r.insertAdjacentText("afterbegin",t),n.selectNodeContents(r),n.collapse(!1)),P(e,n.cloneRange()),Q(e)}},Ht=function(e,t,n){var r=(0,b.a1)(e.startContainer,"data-type",n);if(r){r.firstElementChild.remove(),r.lastElementChild.remove(),e.insertNode(document.createElement("wbr"));var i=document.createElement("div");i.innerHTML=t.lute.SpinVditorIRDOM(r.outerHTML),r.outerHTML=i.firstElementChild.innerHTML.trim()}},Nt=function(e,t,n,r){var i=(0,D.zh)(e),o=t.getAttribute("data-type"),a=i.startContainer;3===a.nodeType&&(a=a.parentElement);var s=!0;if(t.classList.contains("vditor-menu--current"))if("quote"===o){var l=(0,b.lG)(a,"BLOCKQUOTE");l&&(i.insertNode(document.createElement("wbr")),l.outerHTML=""===l.innerHTML.trim()?'<p data-block="0">'.concat(l.innerHTML,"</p>"):l.innerHTML)}else if("link"===o){var c=(0,b.a1)(i.startContainer,"data-type","a");if(c){var u=(0,b.fb)(i.startContainer,"vditor-ir__link");u?(i.insertNode(document.createElement("wbr")),c.outerHTML=u.innerHTML):c.outerHTML=c.querySelector(".vditor-ir__link").innerHTML+"<wbr>"}}else"italic"===o?Ht(i,e,"em"):"bold"===o?Ht(i,e,"strong"):"strike"===o?Ht(i,e,"s"):"inline-code"===o?Ht(i,e,"code"):"check"!==o&&"list"!==o&&"ordered-list"!==o||(ot(e,i,o),s=!1,t.classList.remove("vditor-menu--current"));else{0===e.ir.element.childNodes.length&&(e.ir.element.innerHTML='<p data-block="0"><wbr></p>',(0,D.ib)(e.ir.element,i));var p=(0,b.F9)(i.startContainer);if("line"===o){if(p){var m='<hr data-block="0"><p data-block="0"><wbr>\n</p>';""===p.innerHTML.trim()?p.outerHTML=m:p.insertAdjacentHTML("afterend",m)}}else if("quote"===o)p&&(i.insertNode(document.createElement("wbr")),p.outerHTML='<blockquote data-block="0">'.concat(p.outerHTML,"</blockquote>"),s=!1,t.classList.add("vditor-menu--current"));else if("link"===o){var f=void 0;f=""===i.toString()?"".concat(n,"<wbr>").concat(r):"".concat(n).concat(i.toString()).concat(r.replace(")","<wbr>)")),document.execCommand("insertHTML",!1,f),s=!1,t.classList.add("vditor-menu--current")}else if("italic"===o||"bold"===o||"strike"===o||"inline-code"===o||"code"===o||"table"===o){f=void 0;""===i.toString()?f="".concat(n,"<wbr>").concat(r):(f="code"===o?"".concat(n,"\n").concat(i.toString(),"<wbr>").concat(r):"table"===o?"".concat(n).concat(i.toString(),"<wbr>").concat(r):"".concat(n).concat(i.toString()).concat(r,"<wbr>"),i.deleteContents()),"table"!==o&&"code"!==o||(f="\n"+f+"\n\n");var h=document.createElement("span");h.innerHTML=f,i.insertNode(h),P(e,i),"table"===o&&(i.selectNodeContents(getSelection().getRangeAt(0).startContainer.parentElement),(0,D.Hc)(i))}else"check"!==o&&"list"!==o&&"ordered-list"!==o||(ot(e,i,o,!1),s=!1,d(e.toolbar.elements,["check","list","ordered-list"]),t.classList.add("vditor-menu--current"))}(0,D.ib)(e.ir.element,i),At(e),s&&Q(e)},Ot=function(e,t,n,r){return new(n||(n=Promise))((function(i,o){function a(e){try{l(r.next(e))}catch(e){o(e)}}function s(e){try{l(r.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}l((r=r.apply(e,t||[])).next())}))},Dt=function(e,t){var n,r,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(s){return function(l){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,s[0]&&(a=0)),a;)try{if(n=1,r&&(i=2&s[0]?r.return:s[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,s[1])).done)return i;switch(r=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,r=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(i=a.trys,(i=i.length>0&&i[i.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]<i[3])){a.label=s[1];break}if(6===s[0]&&a.label<i[1]){a.label=i[1],i=s;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(s);break}i[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],r=0}finally{n=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},It=function(){function e(e){var t=this;this.splitChar="",this.lastIndex=-1,this.fillEmoji=function(e,n){t.element.style.display="none";var r=decodeURIComponent(e.getAttribute("data-value")),o=window.getSelection().getRangeAt(0);if("ir"===n.currentMode){var a=(0,b.a1)(o.startContainer,"data-type","code-block-info");if(a)return a.textContent=i.g.ZWSP+r.trimRight(),o.selectNodeContents(a),o.collapse(!1),At(n),a.parentElement.querySelectorAll("code").forEach((function(e){e.className="language-"+r.trimRight()})),O(a.parentElement.querySelector(".vditor-ir__preview"),n),void(t.recentLanguage=r.trimRight())}if("wysiwyg"===n.currentMode&&3!==o.startContainer.nodeType){var s=o.startContainer,l=void 0;if((l=s.classList.contains("vditor-input")?s:s.firstElementChild)&&l.classList.contains("vditor-input"))return l.value=r.trimRight(),o.selectNodeContents(l),o.collapse(!1),l.dispatchEvent(new CustomEvent("input",{detail:1})),void(t.recentLanguage=r.trimRight())}if(o.setStart(o.startContainer,t.lastIndex),o.deleteContents(),n.options.hint.parse?"sv"===n.currentMode?(0,D.oC)(n.lute.SpinVditorSVDOM(r),n):"wysiwyg"===n.currentMode?(0,D.oC)(n.lute.SpinVditorDOM(r),n):(0,D.oC)(n.lute.SpinVditorIRDOM(r),n):(0,D.oC)(r,n),":"===t.splitChar&&r.indexOf(":")>-1&&"sv"!==n.currentMode&&o.insertNode(document.createTextNode(" ")),o.collapse(!1),(0,D.Hc)(o),"wysiwyg"===n.currentMode)(c=(0,b.fb)(o.startContainer,"vditor-wysiwyg__block"))&&c.lastElementChild.classList.contains("vditor-wysiwyg__preview")&&(c.lastElementChild.innerHTML=c.firstElementChild.innerHTML,O(c.lastElementChild,n));else if("ir"===n.currentMode){var c;(c=(0,b.fb)(o.startContainer,"vditor-ir__marker--pre"))&&c.nextElementSibling.classList.contains("vditor-ir__preview")&&(c.nextElementSibling.innerHTML=c.innerHTML,O(c.nextElementSibling,n))}ut(n)},this.timeId=-1,this.element=document.createElement("div"),this.element.className="vditor-hint",this.recentLanguage="",e.push({key:":"})}return e.prototype.render=function(e){var t=this;if(window.getSelection().focusNode){var n,r=getSelection().getRangeAt(0);n=r.startContainer.textContent.substring(0,r.startOffset)||"";var i=this.getKey(n,e.options.hint.extend);if(void 0===i)this.element.style.display="none",clearTimeout(this.timeId);else if(":"===this.splitChar){var o=""===i?e.options.hint.emoji:e.lute.GetEmojis(),a=[];Object.keys(o).forEach((function(e){0===e.indexOf(i.toLowerCase())&&(o[e].indexOf(".")>-1?a.push({html:'<img src="'.concat(o[e],'" title=":').concat(e,':"/> :').concat(e,":"),value:":".concat(e,":")}):a.push({html:'<span class="vditor-hint__emoji">'.concat(o[e],"</span>").concat(e),value:o[e]}))})),this.genHTML(a,i,e)}else e.options.hint.extend.forEach((function(n){n.key===t.splitChar&&(clearTimeout(t.timeId),t.timeId=window.setTimeout((function(){return Ot(t,void 0,void 0,(function(){var t;return Dt(this,(function(r){switch(r.label){case 0:return t=this.genHTML,[4,n.hint(i)];case 1:return t.apply(this,[r.sent(),i,e]),[2]}}))}))}),e.options.hint.delay))}))}},e.prototype.genHTML=function(e,t,n){var r=this;if(0!==e.length){var i=n[n.currentMode].element,o=(0,D.Ny)(i),a=o.left+("left"===n.options.outline.position?n.outline.element.offsetWidth:0),s=o.top,l="";e.forEach((function(e,n){if(!(n>7)){var r=e.html;if(""!==t){var i=r.lastIndexOf(">")+1,o=r.substr(i),a=o.toLowerCase().indexOf(t.toLowerCase());a>-1&&(o=o.substring(0,a)+"<b>"+o.substring(a,a+t.length)+"</b>"+o.substring(a+t.length),r=r.substr(0,i)+o)}l+='<button type="button" data-value="'.concat(encodeURIComponent(e.value),' "\n').concat(0===n?"class='vditor-hint--current'":"","> ").concat(r,"</button>")}})),this.element.innerHTML=l;var c=parseInt(document.defaultView.getComputedStyle(i,null).getPropertyValue("line-height"),10);this.element.style.top="".concat(s+(c||22),"px"),this.element.style.left="".concat(a,"px"),this.element.style.display="block",this.element.style.right="auto",this.element.querySelectorAll("button").forEach((function(e){e.addEventListener("click",(function(t){r.fillEmoji(e,n),t.preventDefault()}))})),this.element.getBoundingClientRect().bottom>window.innerHeight&&(this.element.style.top="".concat(s-this.element.offsetHeight,"px")),this.element.getBoundingClientRect().right>window.innerWidth&&(this.element.style.left="auto",this.element.style.right="0")}else this.element.style.display="none"},e.prototype.select=function(e,t){if(0===this.element.querySelectorAll("button").length||"none"===this.element.style.display)return!1;var n=this.element.querySelector(".vditor-hint--current");if("ArrowDown"===e.key)return e.preventDefault(),e.stopPropagation(),n.removeAttribute("class"),n.nextElementSibling?n.nextElementSibling.className="vditor-hint--current":this.element.children[0].className="vditor-hint--current",!0;if("ArrowUp"===e.key){if(e.preventDefault(),e.stopPropagation(),n.removeAttribute("class"),n.previousElementSibling)n.previousElementSibling.className="vditor-hint--current";else{var r=this.element.children.length;this.element.children[r-1].className="vditor-hint--current"}return!0}return!((0,c.yl)(e)||e.shiftKey||e.altKey||"Enter"!==e.key||e.isComposing)&&(e.preventDefault(),e.stopPropagation(),this.fillEmoji(n,t),!0)},e.prototype.getKey=function(e,t){var n,r=this;if(this.lastIndex=-1,this.splitChar="",t.forEach((function(t){var n=e.lastIndexOf(t.key);r.lastIndex<n&&(r.splitChar=t.key,r.lastIndex=n)})),-1===this.lastIndex)return n;var i=e.split(this.splitChar),a=i[i.length-1];if(i.length>1&&a.trim()===a)if(2===i.length&&""===i[0]&&i[1].length<32)n=i[1];else{var s=i[i.length-2].slice(-1);" "===(0,o.X)(s)&&a.length<32&&(n=a)}return n},e}(),jt=function(){function e(e){this.composingLock=!1;var t=document.createElement("div");t.className="vditor-ir",t.innerHTML='<pre class="vditor-reset" placeholder="'.concat(e.options.placeholder,'"\n contenteditable="true" spellcheck="false"></pre>'),this.element=t.firstElementChild,this.bindEvent(e),Le(e,this.element),Te(e,this.element),Ce(e,this.element),He(e,this.element),Ne(e,this.element),Me(e,this.element),xe(e,this.element,this.copy),Ae(e,this.element,this.copy)}return e.prototype.copy=function(e,t){var n=getSelection().getRangeAt(0);if(""!==n.toString()){e.stopPropagation(),e.preventDefault();var r=document.createElement("div");r.appendChild(n.cloneContents()),e.clipboardData.setData("text/plain",t.lute.VditorIRDOM2Md(r.innerHTML).trim()),e.clipboardData.setData("text/html","")}},e.prototype.bindEvent=function(e){var t=this;this.element.addEventListener("paste",(function(t){Mt(e,t,{pasteCode:function(e){document.execCommand("insertHTML",!1,e)}})})),this.element.addEventListener("scroll",(function(){v(e,["hint"])})),this.element.addEventListener("compositionstart",(function(e){t.composingLock=!0})),this.element.addEventListener("compositionend",(function(n){(0,c.vU)()||P(e,getSelection().getRangeAt(0).cloneRange()),t.composingLock=!1})),this.element.addEventListener("input",(function(n){if("deleteByDrag"!==n.inputType&&"insertFromDrop"!==n.inputType)return t.preventInput?(t.preventInput=!1,void At(e,{enableAddUndoStack:!0,enableHint:!0,enableInput:!0})):void(t.composingLock||"‘"===n.data||"“"===n.data||"《"===n.data||P(e,getSelection().getRangeAt(0).cloneRange(),!1,n))})),this.element.addEventListener("click",(function(n){if("INPUT"===n.target.tagName)return n.target.checked?n.target.setAttribute("checked","checked"):n.target.removeAttribute("checked"),t.preventInput=!0,void At(e);var r=(0,D.zh)(e),o=(0,b.fb)(n.target,"vditor-ir__preview");if(o||(o=(0,b.fb)(r.startContainer,"vditor-ir__preview")),o&&(o.previousElementSibling.firstElementChild?r.selectNodeContents(o.previousElementSibling.firstElementChild):r.selectNodeContents(o.previousElementSibling),r.collapse(!0),(0,D.Hc)(r),_e(e)),"IMG"===n.target.tagName){var a=n.target.parentElement.querySelector(".vditor-ir__marker--link");a&&(r.selectNode(a),(0,D.Hc)(r))}var s=(0,b.a1)(n.target,"data-type","a");if(!s||s.classList.contains("vditor-ir__node--expand")){if(n.target.isEqualNode(t.element)&&t.element.lastElementChild&&r.collapsed){var l=t.element.lastElementChild.getBoundingClientRect();n.y>l.top+l.height&&("P"===t.element.lastElementChild.tagName&&""===t.element.lastElementChild.textContent.trim().replace(i.g.ZWSP,"")?(r.selectNodeContents(t.element.lastElementChild),r.collapse(!1)):(t.element.insertAdjacentHTML("beforeend",'<p data-block="0">'.concat(i.g.ZWSP,"<wbr></p>")),(0,D.ib)(t.element,r)))}""===r.toString()?B(r,e):setTimeout((function(){B((0,D.zh)(e),e)})),j(n,e),Q(e)}else e.options.link.click?e.options.link.click(s.querySelector(":scope > .vditor-ir__marker--link")):e.options.link.isOpen&&window.open(s.querySelector(":scope > .vditor-ir__marker--link").textContent)})),this.element.addEventListener("keyup",(function(n){if(!n.isComposing&&!(0,c.yl)(n))if("Enter"===n.key&&_e(e),Q(e),"Backspace"!==n.key&&"Delete"!==n.key||""===e.ir.element.innerHTML||1!==e.ir.element.childNodes.length||!e.ir.element.firstElementChild||"P"!==e.ir.element.firstElementChild.tagName||0!==e.ir.element.firstElementChild.childElementCount||""!==e.ir.element.textContent&&"\n"!==e.ir.element.textContent){var r=(0,D.zh)(e);"Backspace"===n.key?((0,c.vU)()&&"\n"===r.startContainer.textContent&&1===r.startOffset&&(r.startContainer.textContent="",B(r,e)),t.element.querySelectorAll(".language-math").forEach((function(e){var t=e.querySelector("br");t&&t.remove()}))):n.key.indexOf("Arrow")>-1?("ArrowLeft"!==n.key&&"ArrowRight"!==n.key||xt(e),B(r,e)):229===n.keyCode&&""===n.code&&"Unidentified"===n.key&&B(r,e);var o=(0,b.fb)(r.startContainer,"vditor-ir__preview");if(o){if("ArrowUp"===n.key||"ArrowLeft"===n.key)return o.previousElementSibling.firstElementChild?r.selectNodeContents(o.previousElementSibling.firstElementChild):r.selectNodeContents(o.previousElementSibling),r.collapse(!1),n.preventDefault(),!0;if("SPAN"===o.tagName&&("ArrowDown"===n.key||"ArrowRight"===n.key))return"html-entity"===o.parentElement.getAttribute("data-type")?(o.parentElement.insertAdjacentText("afterend",i.g.ZWSP),r.setStart(o.parentElement.nextSibling,1)):r.selectNodeContents(o.parentElement.lastElementChild),r.collapse(!1),n.preventDefault(),!0}}else e.ir.element.innerHTML=""}))},e}(),Rt=function(e){return"sv"===e.currentMode?e.lute.Md2HTML(a(e)):"wysiwyg"===e.currentMode?e.lute.VditorDOM2HTML(e.wysiwyg.element.innerHTML):"ir"===e.currentMode?e.lute.VditorIRDOM2HTML(e.ir.element.innerHTML):void 0},Pt=n(214),qt=n(436),Bt=function(){function e(e){this.element=document.createElement("div"),this.element.className="vditor-outline",this.element.innerHTML='<div class="vditor-outline__title">'.concat(e,'</div>\n<div class="vditor-outline__content"></div>')}return e.prototype.render=function(e){return"block"===e.preview.element.style.display?(0,qt.k)(e.preview.previewElement,this.element.lastElementChild,e):(0,qt.k)(e[e.currentMode].element,this.element.lastElementChild,e)},e.prototype.toggle=function(e,t,n){var r;void 0===t&&(t=!0),void 0===n&&(n=!0);var o=null===(r=e.toolbar.elements.outline)||void 0===r?void 0:r.firstElementChild;if(t&&window.innerWidth>=i.g.MOBILE_WIDTH?(this.element.style.display="block",this.render(e),null==o||o.classList.add("vditor-menu--current")):(this.element.style.display="none",null==o||o.classList.remove("vditor-menu--current")),n&&getSelection().rangeCount>0){var a=getSelection().getRangeAt(0);e[e.currentMode].element.contains(a.startContainer)&&(0,D.Hc)(a)}K(e)},e}(),Vt=n(280),Ut=function(){function e(e){var t=this;this.element=document.createElement("div"),this.element.className="vditor-preview",this.previewElement=document.createElement("div"),this.previewElement.className="vditor-reset",e.options.classes.preview&&this.previewElement.classList.add(e.options.classes.preview),this.previewElement.style.maxWidth=e.options.preview.maxWidth+"px",this.previewElement.addEventListener("copy",(function(n){if("TEXTAREA"!==n.target.tagName){var r=document.createElement("div");r.className="vditor-reset",r.appendChild(getSelection().getRangeAt(0).cloneContents()),t.copyToX(e,r,"default"),n.preventDefault()}})),this.previewElement.addEventListener("click",(function(n){var r=(0,b.lG)(n.target,"SPAN");if(r&&(0,b.fb)(r,"vditor-toc")){var i=t.previewElement.querySelector("#"+r.getAttribute("data-target-id"));i&&(t.element.scrollTop=i.offsetTop)}else{if("A"===n.target.tagName)return e.options.link.click?e.options.link.click(n.target):e.options.link.isOpen&&window.open(n.target.getAttribute("href")),void n.preventDefault();"IMG"===n.target.tagName&&(e.options.image.preview?e.options.image.preview(n.target):e.options.image.isPreview&&(0,V.E)(n.target,e.options.lang,e.options.theme))}})),this.element.appendChild(this.previewElement);var n=e.options.preview.actions;if(0!==n.length){var r=document.createElement("div");r.className="vditor-preview__action";for(var i=[],o=0;o<n.length;o++){var a=n[o];if("object"!=typeof a)switch(a){case"desktop":i.push('<button type="button" class="vditor-preview__action--current" data-type="desktop">Desktop</button>');break;case"tablet":i.push('<button type="button" data-type="tablet">Tablet</button>');break;case"mobile":i.push('<button type="button" data-type="mobile">Mobile/Wechat</button>');break;case"mp-wechat":i.push('<button type="button" data-type="mp-wechat" class="vditor-tooltipped vditor-tooltipped__w" aria-label="复制到公众号"><svg><use xlink:href="#vditor-icon-mp-wechat"></use></svg></button>');break;case"zhihu":i.push('<button type="button" data-type="zhihu" class="vditor-tooltipped vditor-tooltipped__w" aria-label="复制到知乎"><svg><use xlink:href="#vditor-icon-zhihu"></use></svg></button>')}else i.push('<button type="button" data-type="'.concat(a.key,'" class="').concat(a.className,'"').concat(a.tooltip?' aria-label="'.concat(a.tooltip,'"'):"",'">').concat(a.text,"</button>"))}r.innerHTML=i.join(""),r.addEventListener((0,c.Le)(),(function(i){var o=(0,y.S)(i.target,"BUTTON");if(o){var a=o.getAttribute("data-type"),s=n.find((function(e){return(null==e?void 0:e.key)===a}));s?s.click(a):"mp-wechat"!==a&&"zhihu"!==a?(t.previewElement.style.width="desktop"===a?"auto":"tablet"===a?"780px":"360px",t.previewElement.scrollWidth>t.previewElement.parentElement.clientWidth&&(t.previewElement.style.width="auto"),t.render(e),r.querySelectorAll("button").forEach((function(e){e.classList.remove("vditor-preview__action--current")})),o.classList.add("vditor-preview__action--current")):t.copyToX(e,t.previewElement.cloneNode(!0),a)}})),this.element.insertBefore(r,this.previewElement)}}return e.prototype.render=function(e,t){var n=this;if(clearTimeout(this.mdTimeoutId),"none"!==this.element.style.display)if(t)this.previewElement.innerHTML=t;else if(""!==a(e).replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")){var r=(new Date).getTime(),i=a(e);this.mdTimeoutId=window.setTimeout((function(){if(e.options.preview.url){var t=new XMLHttpRequest;t.open("POST",e.options.preview.url),t.setRequestHeader("Content-Type","application/json;charset=UTF-8"),t.onreadystatechange=function(){if(t.readyState===XMLHttpRequest.DONE)if(200===t.status){var o=JSON.parse(t.responseText);if(0!==o.code)return void e.tip.show(o.msg);e.options.preview.transform&&(o.data=e.options.preview.transform(o.data)),n.previewElement.innerHTML=o.data,n.afterRender(e,r)}else{var a=e.lute.Md2HTML(i);e.options.preview.transform&&(a=e.options.preview.transform(a)),n.previewElement.innerHTML=a,n.afterRender(e,r)}},t.send(JSON.stringify({markdownText:i}))}else{var o=e.lute.Md2HTML(i);e.options.preview.transform&&(o=e.options.preview.transform(o)),n.previewElement.innerHTML=o,n.afterRender(e,r)}}),e.options.preview.delay)}else this.previewElement.innerHTML="";else"renderPerformance"===this.element.getAttribute("data-type")&&e.tip.hide()},e.prototype.afterRender=function(e,t){e.options.preview.parse&&e.options.preview.parse(this.element);var n=(new Date).getTime()-t;(new Date).getTime()-t>2600?(e.tip.show(window.VditorI18n.performanceTip.replace("${x}",n.toString())),e.preview.element.setAttribute("data-type","renderPerformance")):"renderPerformance"===e.preview.element.getAttribute("data-type")&&(e.tip.hide(),e.preview.element.removeAttribute("data-type"));var r=e.preview.element.querySelector(".vditor-comment--focus");r&&r.classList.remove("vditor-comment--focus"),(0,S.O)(e.preview.previewElement,e.options.preview.hljs),(0,C.s)(e.options.preview.hljs,e.preview.previewElement,e.options.cdn),(0,x.i)(e.preview.previewElement,e.options.cdn,e.options.theme),(0,A.K)(e.preview.previewElement,e.options.cdn),(0,N.J)(e.preview.previewElement,e.options.cdn,e.options.theme),(0,L.P)(e.preview.previewElement,e.options.cdn),(0,T.v)(e.preview.previewElement,e.options.cdn),(0,k.p)(e.preview.previewElement,e.options.cdn,e.options.theme),(0,_.P)(e.preview.previewElement,e.options.cdn,e.options.theme),(0,H.B)(e.preview.previewElement,e.options.cdn),(0,E.Q)(e.preview.previewElement,e.options.cdn),e.options.preview.render.media.enable&&(0,Vt.Y)(e.preview.previewElement),e.options.customRenders.forEach((function(t){t.render(e.preview.previewElement,e)}));var i=e.preview.element,o=e.outline.render(e);""===o&&(o="[ToC]"),i.querySelectorAll('[data-type="toc-block"]').forEach((function(t){t.innerHTML=o,(0,M.H)(t,{cdn:e.options.cdn,math:e.options.preview.math})})),(0,M.H)(e.preview.previewElement,{cdn:e.options.cdn,math:e.options.preview.math})},e.prototype.copyToX=function(e,t,n){void 0===n&&(n="mp-wechat"),"zhihu"!==n?t.querySelectorAll(".katex-html .base").forEach((function(e){e.style.display="initial"})):t.querySelectorAll(".language-math").forEach((function(e){e.outerHTML='<img class="Formula-image" data-eeimg="true" src="//www.zhihu.com/equation?tex=" alt="'.concat(e.getAttribute("data-math"),'\\" style="display: block; margin: 0 auto; max-width: 100%;">')})),t.style.backgroundColor="#fff",t.querySelectorAll("code").forEach((function(e){e.style.backgroundImage="none"})),this.element.append(t);var r=t.ownerDocument.createRange();r.selectNode(t),(0,D.Hc)(r),document.execCommand("copy"),t.remove(),e.tip.show(["zhihu","mp-wechat"].includes(n)?"已复制,可到".concat("zhihu"===n?"知乎":"微信公众号平台","进行粘贴"):"已复制到剪切板")},e}(),Wt=function(){function e(e){this.element=document.createElement("div"),this.element.className="vditor-resize vditor-resize--".concat(e.options.resize.position),this.element.innerHTML='<div><svg><use xlink:href="#vditor-icon-resize"></use></svg></div>',this.bindEvent(e)}return e.prototype.bindEvent=function(e){var t=this;this.element.addEventListener("mousedown",(function(n){var r=document,i=n.clientY,o=e.element.offsetHeight,a=63+e.element.querySelector(".vditor-toolbar").clientHeight;r.ondragstart=function(){return!1},window.captureEvents&&window.captureEvents(),t.element.classList.add("vditor-resize--selected"),r.onmousemove=function(t){"top"===e.options.resize.position?e.element.style.height=Math.max(a,o+(i-t.clientY))+"px":e.element.style.height=Math.max(a,o+(t.clientY-i))+"px",e.options.typewriterMode&&(e.sv.element.style.paddingBottom=e.sv.element.parentElement.offsetHeight/2+"px")},r.onmouseup=function(){e.options.resize.after&&e.options.resize.after(e.element.offsetHeight-o),window.captureEvents&&window.captureEvents(),r.onmousemove=null,r.onmouseup=null,r.ondragstart=null,r.onselectstart=null,r.onselect=null,t.element.classList.remove("vditor-resize--selected")}}))},e}(),zt=function(){function e(e){this.composingLock=!1,this.element=document.createElement("pre"),this.element.className="vditor-sv vditor-reset",this.element.setAttribute("placeholder",e.options.placeholder),this.element.setAttribute("contenteditable","true"),this.element.setAttribute("spellcheck","false"),this.bindEvent(e),Le(e,this.element),Ce(e,this.element),He(e,this.element),Ne(e,this.element),Me(e,this.element),xe(e,this.element,this.copy),Ae(e,this.element,this.copy)}return e.prototype.copy=function(e,t){e.stopPropagation(),e.preventDefault(),e.clipboardData.setData("text/plain",Se(t[t.currentMode].element))},e.prototype.bindEvent=function(e){var t=this;this.element.addEventListener("paste",(function(t){Mt(e,t,{pasteCode:function(e){document.execCommand("insertHTML",!1,e)}})})),this.element.addEventListener("scroll",(function(){if("block"===e.preview.element.style.display){var n=t.element.scrollTop,r=t.element.clientHeight,i=t.element.scrollHeight-parseFloat(t.element.style.paddingBottom||"0"),o=e.preview.element;o.scrollTop=n/r>.5?(n+r)*o.scrollHeight/i-r:n*o.scrollHeight/i}})),this.element.addEventListener("compositionstart",(function(e){t.composingLock=!0})),this.element.addEventListener("compositionend",(function(n){(0,c.vU)()||W(e,n),t.composingLock=!1})),this.element.addEventListener("input",(function(n){if("deleteByDrag"!==n.inputType&&"insertFromDrop"!==n.inputType&&!t.composingLock&&"‘"!==n.data&&"“"!==n.data&&"《"!==n.data)return t.preventInput?(t.preventInput=!1,void Re(e,{enableAddUndoStack:!0,enableHint:!0,enableInput:!0})):void W(e,n)})),this.element.addEventListener("keyup",(function(t){t.isComposing||(0,c.yl)(t)||("Backspace"!==t.key&&"Delete"!==t.key||""===e.sv.element.innerHTML||1!==e.sv.element.childNodes.length||!e.sv.element.firstElementChild||"DIV"!==e.sv.element.firstElementChild.tagName||2!==e.sv.element.firstElementChild.childElementCount||""!==e.sv.element.firstElementChild.textContent&&"\n"!==e.sv.element.textContent?"Enter"===t.key&&_e(e):e.sv.element.innerHTML="")}))},e}(),Gt=function(){function e(){this.element=document.createElement("div"),this.element.className="vditor-tip"}return e.prototype.show=function(e,t){var n=this;void 0===t&&(t=6e3),this.element.className="vditor-tip vditor-tip--show",0===t?(this.element.innerHTML='<div class="vditor-tip__content">'.concat(e,'\n<div class="vditor-tip__close">X</div></div>'),this.element.querySelector(".vditor-tip__close").addEventListener("click",(function(){n.hide()}))):(this.element.innerHTML='<div class="vditor-tip__content">'.concat(e,"</div>"),setTimeout((function(){n.hide()}),t)),this.element.removeAttribute("style"),setTimeout((function(){n.element.getBoundingClientRect().top<46&&(n.element.style.position="fixed",n.element.style.top="46px")}),150)},e.prototype.hide=function(){this.element.className="vditor-messageElementtip",this.element.innerHTML=""},e}(),Kt=function(e,t){if(t.options.preview.mode!==e){switch(t.options.preview.mode=e,e){case"both":t.sv.element.style.display="block",t.preview.element.style.display="block",t.preview.render(t),u(t.toolbar.elements,["both"]);break;case"editor":t.sv.element.style.display="block",t.preview.element.style.display="none",d(t.toolbar.elements,["both"])}t.devtools&&t.devtools.renderEchart(t)}},Ft=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),Zt=function(e){function t(t,n){var r=e.call(this,t,n)||this;return"both"===t.options.preview.mode&&r.element.children[0].classList.add("vditor-menu--current"),r.element.children[0].addEventListener((0,c.Le)(),(function(e){r.element.firstElementChild.classList.contains(i.g.CLASS_MENU_DISABLED)||(e.preventDefault(),"sv"===t.currentMode&&("both"===t.options.preview.mode?Kt("editor",t):Kt("both",t)))})),r}return Ft(t,e),t}(ye),Jt=function(){this.element=document.createElement("div"),this.element.className="vditor-toolbar__br"},Xt=n(580),Yt=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),Qt=function(e){function t(t,n){var r=e.call(this,t,n)||this,o=r.element.children[0],a=document.createElement("div");a.className="vditor-hint".concat(2===n.level?"":" vditor-panel--arrow");var s="";return i.g.CODE_THEME.forEach((function(e){s+="<button>".concat(e,"</button>")})),a.innerHTML='<div style="overflow: auto;max-height:'.concat(window.innerHeight/2,'px">').concat(s,"</div>"),a.addEventListener((0,c.Le)(),(function(e){"BUTTON"===e.target.tagName&&(v(t,["subToolbar"]),t.options.preview.hljs.style=e.target.textContent,(0,Xt.Y)(e.target.textContent,t.options.cdn),e.preventDefault(),e.stopPropagation())})),r.element.appendChild(a),g(t,a,o,n.level),r}return Yt(t,e),t}(ye),$t=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),en=function(e){function t(t,n){var r=e.call(this,t,n)||this,i=r.element.children[0],o=document.createElement("div");o.className="vditor-hint".concat(2===n.level?"":" vditor-panel--arrow");var a="";return Object.keys(t.options.preview.theme.list).forEach((function(e){a+='<button data-type="'.concat(e,'">').concat(t.options.preview.theme.list[e],"</button>")})),o.innerHTML='<div style="overflow: auto;max-height:'.concat(window.innerHeight/2,'px">').concat(a,"</div>"),o.addEventListener((0,c.Le)(),(function(e){"BUTTON"===e.target.tagName&&(v(t,["subToolbar"]),t.options.preview.theme.current=e.target.getAttribute("data-type"),(0,z.Z)(t.options.preview.theme.current,t.options.preview.theme.path),e.preventDefault(),e.stopPropagation())})),r.element.appendChild(o),g(t,o,i,n.level),r}return $t(t,e),t}(ye),tn=function(){function e(e){this.element=document.createElement("span"),this.element.className="vditor-counter vditor-tooltipped vditor-tooltipped__nw",this.render(e,"")}return e.prototype.render=function(e,t){var n=t.endsWith("\n")?t.length-1:t.length;if("text"===e.options.counter.type&&e[e.currentMode]){var r=e[e.currentMode].element.cloneNode(!0);r.querySelectorAll(".vditor-wysiwyg__preview").forEach((function(e){e.remove()})),n=r.textContent.length}"number"==typeof e.options.counter.max?(n>e.options.counter.max?this.element.className="vditor-counter vditor-counter--error":this.element.className="vditor-counter",this.element.innerHTML="".concat(n,"/").concat(e.options.counter.max)):this.element.innerHTML="".concat(n),this.element.setAttribute("aria-label",e.options.counter.type),e.options.counter.after&&e.options.counter.after(n,{enable:e.options.counter.enable,max:e.options.counter.max,type:e.options.counter.type})},e}(),nn=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),rn=function(e){function t(t,n){var r=e.call(this,t,n)||this;return r.element.children[0].innerHTML=n.icon,r.element.children[0].addEventListener((0,c.Le)(),(function(e){e.preventDefault(),e.currentTarget.classList.contains(i.g.CLASS_MENU_DISABLED)||n.click(e,t)})),r}return nn(t,e),t}(ye),on=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),an=function(e){function t(t,n){var r=e.call(this,t,n)||this;return r.element.firstElementChild.addEventListener((0,c.Le)(),(function(e){var n=r.element.firstElementChild;n.classList.contains(i.g.CLASS_MENU_DISABLED)||(e.preventDefault(),n.classList.contains("vditor-menu--current")?(n.classList.remove("vditor-menu--current"),t.devtools.element.style.display="none",K(t)):(n.classList.add("vditor-menu--current"),t.devtools.element.style.display="block",K(t),t.devtools.renderEchart(t)))})),r}return on(t,e),t}(ye),sn=function(){this.element=document.createElement("div"),this.element.className="vditor-toolbar__divider"},ln=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),cn=function(e){function t(t,n){var r=e.call(this,t,n)||this,i=document.createElement("div");i.className="vditor-panel vditor-panel--arrow";var o="";return Object.keys(t.options.hint.emoji).forEach((function(e){var n=t.options.hint.emoji[e];n.indexOf(".")>-1?o+='<button data-value=":'.concat(e,': " data-key=":').concat(e,':"><img\ndata-value=":').concat(e,': " data-key=":').concat(e,':" class="vditor-emojis__icon" src="').concat(n,'"/></button>'):o+='<button data-value="'.concat(n,' "\n data-key="').concat(e,'"><span class="vditor-emojis__icon">').concat(n,"</span></button>")})),i.innerHTML='<div class="vditor-emojis" style="max-height: '.concat("auto"===t.options.height?"auto":t.options.height-80,'px">').concat(o,'</div><div class="vditor-emojis__tail">\n <span class="vditor-emojis__tip"></span><span>').concat(t.options.hint.emojiTail||"","</span>\n</div>"),r.element.appendChild(i),g(t,i,r.element.firstElementChild,n.level),r.bindEvent(t),r}return ln(t,e),t.prototype.bindEvent=function(e){var t=this;this.element.lastElementChild.addEventListener((0,c.Le)(),(function(n){var r=(0,y.S)(n.target,"BUTTON");if(r){n.preventDefault();var i=r.getAttribute("data-value"),o=(0,D.zh)(e),a=i;if("wysiwyg"===e.currentMode?a=e.lute.SpinVditorDOM(i):"ir"===e.currentMode&&(a=e.lute.SpinVditorIRDOM(i)),i.indexOf(":")>-1&&"sv"!==e.currentMode){var s=document.createElement("div");s.innerHTML=a,a=s.firstElementChild.firstElementChild.outerHTML+" ",(0,D.oC)(a,e)}else o.extractContents(),o.insertNode(document.createTextNode(i)),(0,b.F9)(o.startContainer)||ne(e,o);o.collapse(!1),(0,D.Hc)(o),t.element.lastElementChild.style.display="none",ut(e)}})),this.element.lastElementChild.addEventListener("mouseover",(function(e){var n=(0,y.S)(e.target,"BUTTON");n&&(t.element.querySelector(".vditor-emojis__tip").innerHTML=n.getAttribute("data-key"))}))},t}(ye),dn=function(e,t,n){var r=document.createElement("a");"download"in r?(r.download=n,r.style.display="none",r.href=URL.createObjectURL(new Blob([t])),document.body.appendChild(r),r.click(),r.remove()):e.tip.show(window.VditorI18n.downloadTip,0)},un=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),pn=function(e){function t(t,n){var r=e.call(this,t,n)||this,i=r.element.children[0],o=document.createElement("div");return o.className="vditor-hint".concat(2===n.level?"":" vditor-panel--arrow"),o.innerHTML='<button data-type="markdown">Markdown</button>\n<button data-type="pdf">PDF</button>\n<button data-type="html">HTML</button>',o.addEventListener((0,c.Le)(),(function(e){var n=e.target;if("BUTTON"===n.tagName){switch(n.getAttribute("data-type")){case"markdown":!function(e){var t=a(e);dn(e,t,t.substr(0,10)+".md")}(t);break;case"pdf":!function(e){e.tip.show(window.VditorI18n.generate,3800);var t=document.querySelector("#vditorExportIframe");t.contentDocument.open(),t.contentDocument.write('<link rel="stylesheet" href="'.concat(e.options.cdn,'/dist/index.css"/>\n<script src="').concat(e.options.cdn,'/dist/method.min.js"><\/script>\n<div id="preview" style="width: 800px"></div>\n<script>\nwindow.addEventListener("message", (e) => {\n if(!e.data) {\n return;\n }\n Vditor.preview(document.getElementById(\'preview\'), e.data, {\n cdn: "').concat(e.options.cdn,'",\n markdown: {\n theme: ').concat(JSON.stringify(e.options.preview.theme),'\n },\n hljs: {\n style: "').concat(e.options.preview.hljs.style,'"\n }\n });\n setTimeout(() => {\n window.print();\n }, 3600);\n}, false);\n<\/script>')),t.contentDocument.close(),setTimeout((function(){t.contentWindow.postMessage(a(e),"*")}),200)}(t);break;case"html":!function(e){var t=Rt(e),n='<html><head><link rel="stylesheet" type="text/css" href="'.concat(e.options.cdn,'/dist/index.css"/>\n<script src="').concat(e.options.cdn,"/dist/js/i18n/").concat(e.options.lang,'.js"><\/script>\n<script src="').concat(e.options.cdn,'/dist/method.min.js"><\/script></head>\n<body><div class="vditor-reset" id="preview">').concat(t,"</div>\n<script>\n const previewElement = document.getElementById('preview')\n Vditor.setContentTheme('").concat(e.options.preview.theme.current,"', '").concat(e.options.preview.theme.path,"');\n Vditor.codeRender(previewElement);\n Vditor.highlightRender(").concat(JSON.stringify(e.options.preview.hljs),", previewElement, '").concat(e.options.cdn,"');\n Vditor.mathRender(previewElement, {\n cdn: '").concat(e.options.cdn,"',\n math: ").concat(JSON.stringify(e.options.preview.math),",\n });\n Vditor.mermaidRender(previewElement, '").concat(e.options.cdn,"', '").concat(e.options.theme,"');\n Vditor.SMILESRender(previewElement, '").concat(e.options.cdn,"', '").concat(e.options.theme,"');\n Vditor.markmapRender(previewElement, '").concat(e.options.cdn,"');\n Vditor.flowchartRender(previewElement, '").concat(e.options.cdn,"');\n Vditor.graphvizRender(previewElement, '").concat(e.options.cdn,"');\n Vditor.chartRender(previewElement, '").concat(e.options.cdn,"', '").concat(e.options.theme,"');\n Vditor.mindmapRender(previewElement, '").concat(e.options.cdn,"', '").concat(e.options.theme,"');\n Vditor.abcRender(previewElement, '").concat(e.options.cdn,"');\n ").concat(e.options.preview.render.media.enable?"Vditor.mediaRender(previewElement);":"",'\n Vditor.speechRender(previewElement);\n<\/script>\n<script src="').concat(e.options.cdn,"/dist/js/icons/").concat(e.options.icon,'.js"><\/script></body></html>');dn(e,n,t.substr(0,10)+".html")}(t)}v(t,["subToolbar"]),e.preventDefault(),e.stopPropagation()}})),r.element.appendChild(o),g(t,o,i,n.level),r}return un(t,e),t}(ye),mn=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),fn=function(e){function t(t,n){var r=e.call(this,t,n)||this;return r._bindEvent(t,n),r}return mn(t,e),t.prototype._bindEvent=function(e,t){this.element.children[0].addEventListener((0,c.Le)(),(function(n){n.preventDefault(),e.element.className.includes("vditor--fullscreen")?(t.level||(this.innerHTML=t.icon),e.element.style.zIndex="",document.body.style.overflow="",e.element.classList.remove("vditor--fullscreen"),Object.keys(e.toolbar.elements).forEach((function(t){var n=e.toolbar.elements[t].firstChild;n&&(n.className=n.className.replace("__s","__n"),e.options.toolbar.forEach((function(e){"string"!=typeof e&&e.tipPosition&&e.name===n.dataset.type&&(n.className="vditor-tooltipped vditor-tooltipped__".concat(e.tipPosition))})))})),e.counter&&(e.counter.element.className=e.counter.element.className.replace("__s","__n"))):(t.level||(this.innerHTML='<svg><use xlink:href="#vditor-icon-contract"></use></svg>'),e.element.style.zIndex=e.options.fullscreen.index.toString(),document.body.style.overflow="hidden",e.element.classList.add("vditor--fullscreen"),Object.keys(e.toolbar.elements).forEach((function(t){var n=e.toolbar.elements[t].firstChild;n&&(n.className=n.className.replace("__n","__s"))})),e.counter&&(e.counter.element.className=e.counter.element.className.replace("__n","__s"))),e.devtools&&e.devtools.renderEchart(e),t.click&&t.click(n,e),K(e),F(e)}))},t}(ye),hn=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),vn=function(e){function t(t,n){var r=e.call(this,t,n)||this,i=document.createElement("div");return i.className="vditor-hint vditor-panel--arrow",i.innerHTML='<button data-tag="h1" data-value="# ">'.concat(window.VditorI18n.heading1," ").concat((0,c.ns)("<⌥⌘1>"),'</button>\n<button data-tag="h2" data-value="## ">').concat(window.VditorI18n.heading2," <").concat((0,c.ns)("⌥⌘2"),'></button>\n<button data-tag="h3" data-value="### ">').concat(window.VditorI18n.heading3," <").concat((0,c.ns)("⌥⌘3"),'></button>\n<button data-tag="h4" data-value="#### ">').concat(window.VditorI18n.heading4," <").concat((0,c.ns)("⌥⌘4"),'></button>\n<button data-tag="h5" data-value="##### ">').concat(window.VditorI18n.heading5," <").concat((0,c.ns)("⌥⌘5"),'></button>\n<button data-tag="h6" data-value="###### ">').concat(window.VditorI18n.heading6," <").concat((0,c.ns)("⌥⌘6"),"></button>"),r.element.appendChild(i),r._bindEvent(t,i),r}return hn(t,e),t.prototype._bindEvent=function(e,t){var n=this.element.children[0];n.addEventListener((0,c.Le)(),(function(r){r.preventDefault(),clearTimeout(e.wysiwyg.afterRenderTimeoutId),clearTimeout(e.ir.processTimeoutId),clearTimeout(e.sv.processTimeoutId),n.classList.contains(i.g.CLASS_MENU_DISABLED)||(n.blur(),n.classList.contains("vditor-menu--current")?("wysiwyg"===e.currentMode?(ie(e),$(e)):"ir"===e.currentMode&&_t(e,""),n.classList.remove("vditor-menu--current")):(v(e,["subToolbar"]),t.style.display="block"))}));for(var r=0;r<6;r++)t.children.item(r).addEventListener((0,c.Le)(),(function(r){r.preventDefault(),"wysiwyg"===e.currentMode?(re(e,r.target.getAttribute("data-tag")),$(e),n.classList.add("vditor-menu--current")):"ir"===e.currentMode?(_t(e,r.target.getAttribute("data-value")),n.classList.add("vditor-menu--current")):Pe(e,r.target.getAttribute("data-value")),t.style.display="none"}))},t}(ye),gn=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),bn=function(e){function t(t,n){var r=e.call(this,t,n)||this;return r.element.children[0].addEventListener((0,c.Le)(),(function(e){e.preventDefault(),t.tip.show('<div style="margin-bottom:14px;font-size: 14px;line-height: 22px;min-width:300px;max-width: 360px;display: flex;">\n<div style="margin-top: 14px;flex: 1">\n <div>Markdown 使用指南</div>\n <ul style="list-style: none">\n <li><a href="https://ld246.com/article/1583308420519" target="_blank">语法速查手册</a></li>\n <li><a href="https://ld246.com/article/1583129520165" target="_blank">基础语法</a></li>\n <li><a href="https://ld246.com/article/1583305480675" target="_blank">扩展语法</a></li>\n <li><a href="https://ld246.com/article/1582778815353" target="_blank">键盘快捷键</a></li>\n </ul>\n</div>\n<div style="margin-top: 14px;flex: 1">\n <div>Vditor 支持</div>\n <ul style="list-style: none">\n <li><a href="https://github.com/Vanessa219/vditor/issues" target="_blank">Issues</a></li>\n <li><a href="https://ld246.com/tag/vditor" target="_blank">官方讨论区</a></li>\n <li><a href="https://ld246.com/article/1549638745630" target="_blank">开发手册</a></li>\n <li><a href="https://ld246.com/guide/markdown" target="_blank">演示地址</a></li>\n </ul>\n</div></div>',0)})),r}return gn(t,e),t}(ye),yn=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),wn=function(e){function t(t,n){var r=e.call(this,t,n)||this;return r.element.children[0].addEventListener((0,c.Le)(),(function(e){if(e.preventDefault(),!r.element.firstElementChild.classList.contains(i.g.CLASS_MENU_DISABLED)&&"sv"!==t.currentMode){var n=(0,D.zh)(t),o=(0,b.lG)(n.startContainer,"LI");o&&at(t,o,n)}})),r}return yn(t,e),t}(ye),En=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),kn=function(e){function t(t,n){var r=e.call(this,t,n)||this;return r.element.children[0].addEventListener((0,c.Le)(),(function(e){e.preventDefault(),t.tip.show('<div style="max-width: 520px; font-size: 14px;line-height: 22px;margin-bottom: 14px;">\n<p style="text-align: center;margin: 14px 0">\n <em>下一代的 Markdown 编辑器,为未来而构建</em>\n</p>\n<div style="display: flex;margin-bottom: 14px;flex-wrap: wrap;align-items: center">\n <img src="https://unpkg.com/vditor/dist/images/logo.png" style="margin: 0 auto;height: 68px"/>\n <div>  </div>\n <div style="flex: 1;min-width: 250px">\n Vditor 是一款浏览器端的 Markdown 编辑器,支持所见即所得、即时渲染(类似 Typora)和分屏预览模式。\n 它使用 TypeScript 实现,支持原生 JavaScript 以及 Vue、React、Angular 和 Svelte 等框架。\n </div>\n</div>\n<div style="display: flex;flex-wrap: wrap;">\n <ul style="list-style: none;flex: 1;min-width:148px">\n <li>\n 项目地址:<a href="https://b3log.org/vditor" target="_blank">b3log.org/vditor</a>\n </li>\n <li>\n 开源协议:MIT\n </li>\n </ul>\n <ul style="list-style: none;margin-right: 18px">\n <li>\n 组件版本:Vditor v'.concat(i.H," / Lute v").concat(Lute.Version,'\n </li>\n <li>\n 赞助捐赠:<a href="https://ld246.com/sponsor" target="_blank">https://ld246.com/sponsor</a>\n </li>\n </ul>\n</div>\n</div>'),0)})),r}return En(t,e),t}(ye),Sn=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),Ln=function(e){function t(t,n){var r=e.call(this,t,n)||this;return r.element.children[0].addEventListener((0,c.Le)(),(function(e){e.preventDefault(),r.element.firstElementChild.classList.contains(i.g.CLASS_MENU_DISABLED)||"sv"===t.currentMode||$e(t,"afterend")})),r}return Sn(t,e),t}(ye),Tn=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),Cn=function(e){function t(t,n){var r=e.call(this,t,n)||this;return r.element.children[0].addEventListener((0,c.Le)(),(function(e){e.preventDefault(),r.element.firstElementChild.classList.contains(i.g.CLASS_MENU_DISABLED)||"sv"===t.currentMode||$e(t,"beforebegin")})),r}return Tn(t,e),t}(ye),Mn=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),xn=function(e){function t(t,n){var r=e.call(this,t,n)||this;return r.element.children[0].addEventListener((0,c.Le)(),(function(e){if(e.preventDefault(),!r.element.firstElementChild.classList.contains(i.g.CLASS_MENU_DISABLED)&&"sv"!==t.currentMode){var n=(0,D.zh)(t),o=(0,b.lG)(n.startContainer,"LI");o&&st(t,o,n,o.parentElement)}})),r}return Mn(t,e),t}(ye),An=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),_n=function(e){function t(t,n){var r=e.call(this,t,n)||this;return t.options.outline&&r.element.firstElementChild.classList.add("vditor-menu--current"),r.element.children[0].addEventListener((0,c.Le)(),(function(e){e.preventDefault(),t.toolbar.elements.outline.firstElementChild.classList.contains(i.g.CLASS_MENU_DISABLED)||(t.options.outline.enable=!r.element.firstElementChild.classList.contains("vditor-menu--current"),t.outline.toggle(t,t.options.outline.enable))})),r}return An(t,e),t}(ye),Hn=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),Nn=function(e){function t(t,n){var r=e.call(this,t,n)||this;return r._bindEvent(t),r}return Hn(t,e),t.prototype._bindEvent=function(e){var t=this;this.element.children[0].addEventListener((0,c.Le)(),(function(n){n.preventDefault();var r=t.element.firstElementChild;if(!r.classList.contains(i.g.CLASS_MENU_DISABLED)){var o=i.g.EDIT_TOOLBARS.concat(["both","edit-mode","devtools"]);r.classList.contains("vditor-menu--current")?(r.classList.remove("vditor-menu--current"),"sv"===e.currentMode?(e.sv.element.style.display="block","both"===e.options.preview.mode?e.preview.element.style.display="block":e.preview.element.style.display="none"):(e[e.currentMode].element.parentElement.style.display="block",e.preview.element.style.display="none"),p(e.toolbar.elements,o),e.outline.render(e)):(m(e.toolbar.elements,o),e.preview.element.style.display="block","sv"===e.currentMode?e.sv.element.style.display="none":e[e.currentMode].element.parentElement.style.display="none",e.preview.render(e),r.classList.add("vditor-menu--current"),v(e,["subToolbar","hint","popover"]),setTimeout((function(){e.outline.render(e)}),e.options.preview.delay+10)),K(e)}}))},t}(ye),On=function(){function e(e){var t;if(this.SAMPLE_RATE=5e3,this.isRecording=!1,this.readyFlag=!1,this.leftChannel=[],this.rightChannel=[],this.recordingLength=0,"undefined"!=typeof AudioContext)t=new AudioContext;else{if(!webkitAudioContext)return;t=new webkitAudioContext}this.DEFAULT_SAMPLE_RATE=t.sampleRate;var n=t.createGain();t.createMediaStreamSource(e).connect(n),this.recorder=t.createScriptProcessor(2048,2,1),this.recorder.onaudioprocess=null,n.connect(this.recorder),this.recorder.connect(t.destination),this.readyFlag=!0}return e.prototype.cloneChannelData=function(e,t){this.leftChannel.push(new Float32Array(e)),this.rightChannel.push(new Float32Array(t)),this.recordingLength+=2048},e.prototype.startRecordingNewWavFile=function(){this.readyFlag&&(this.isRecording=!0,this.leftChannel.length=this.rightChannel.length=0,this.recordingLength=0)},e.prototype.stopRecording=function(){this.isRecording=!1},e.prototype.buildWavFileBlob=function(){for(var e=this.mergeBuffers(this.leftChannel),t=this.mergeBuffers(this.rightChannel),n=new Float32Array(e.length),r=0;r<e.length;++r)n[r]=.5*(e[r]+t[r]);this.DEFAULT_SAMPLE_RATE>this.SAMPLE_RATE&&(n=this.downSampleBuffer(n,this.SAMPLE_RATE));var i=44+2*n.length,o=new ArrayBuffer(i),a=new DataView(o);this.writeUTFBytes(a,0,"RIFF"),a.setUint32(4,i,!0),this.writeUTFBytes(a,8,"WAVE"),this.writeUTFBytes(a,12,"fmt "),a.setUint32(16,16,!0),a.setUint16(20,1,!0),a.setUint16(22,1,!0),a.setUint32(24,this.SAMPLE_RATE,!0),a.setUint32(28,2*this.SAMPLE_RATE,!0),a.setUint16(32,2,!0),a.setUint16(34,16,!0);var s=2*n.length;this.writeUTFBytes(a,36,"data"),a.setUint32(40,s,!0);for(var l=n.length,c=44,d=0;d<l;d++)a.setInt16(c,32767*n[d],!0),c+=2;return new Blob([a],{type:"audio/wav"})},e.prototype.downSampleBuffer=function(e,t){if(t===this.DEFAULT_SAMPLE_RATE)return e;if(t>this.DEFAULT_SAMPLE_RATE)return e;for(var n=this.DEFAULT_SAMPLE_RATE/t,r=Math.round(e.length/n),i=new Float32Array(r),o=0,a=0;o<i.length;){for(var s=Math.round((o+1)*n),l=0,c=0,d=a;d<s&&d<e.length;d++)l+=e[d],c++;i[o]=l/c,o++,a=s}return i},e.prototype.mergeBuffers=function(e){for(var t=new Float32Array(this.recordingLength),n=0,r=e.length,i=0;i<r;++i){var o=e[i];t.set(o,n),n+=o.length}return t},e.prototype.writeUTFBytes=function(e,t,n){for(var r=n.length,i=0;i<r;i++)e.setUint8(t+i,n.charCodeAt(i))},e}(),Dn=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),In=function(e){function t(t,n){var r=e.call(this,t,n)||this;return r._bindEvent(t),r}return Dn(t,e),t.prototype._bindEvent=function(e){var t,n=this;this.element.children[0].addEventListener((0,c.Le)(),(function(r){if(r.preventDefault(),!n.element.firstElementChild.classList.contains(i.g.CLASS_MENU_DISABLED)){var o=e[e.currentMode].element;if(t)if(t.isRecording){t.stopRecording(),e.tip.hide();var a=new File([t.buildWavFileBlob()],"record".concat((new Date).getTime(),".wav"),{type:"video/webm"});Ge(e,[a]),n.element.children[0].classList.remove("vditor-menu--current")}else e.tip.show(window.VditorI18n.recording),o.setAttribute("contenteditable","false"),t.startRecordingNewWavFile(),n.element.children[0].classList.add("vditor-menu--current");else navigator.mediaDevices.getUserMedia({audio:!0}).then((function(r){(t=new On(r)).recorder.onaudioprocess=function(e){if(t.isRecording){var n=e.inputBuffer.getChannelData(0),r=e.inputBuffer.getChannelData(1);t.cloneChannelData(n,r)}},t.startRecordingNewWavFile(),e.tip.show(window.VditorI18n.recording),o.setAttribute("contenteditable","false"),n.element.children[0].classList.add("vditor-menu--current")})).catch((function(){e.tip.show(window.VditorI18n["record-tip"])}))}}))},t}(ye),jn=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),Rn=function(e){function t(t,n){var r=e.call(this,t,n)||this;return m({redo:r.element},["redo"]),r.element.children[0].addEventListener((0,c.Le)(),(function(e){e.preventDefault(),r.element.firstElementChild.classList.contains(i.g.CLASS_MENU_DISABLED)||t.undo.redo(t)})),r}return jn(t,e),t}(ye),Pn=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),qn=function(e){function t(t,n){var r=e.call(this,t,n)||this;return m({undo:r.element},["undo"]),r.element.children[0].addEventListener((0,c.Le)(),(function(e){e.preventDefault(),r.element.firstElementChild.classList.contains(i.g.CLASS_MENU_DISABLED)||t.undo.undo(t)})),r}return Pn(t,e),t}(ye),Bn=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),Vn=function(e){function t(t,n){var r=e.call(this,t,n)||this,i='<input type="file"';return t.options.upload.multiple&&(i+=' multiple="multiple"'),t.options.upload.accept&&(i+=' accept="'.concat(t.options.upload.accept,'"')),r.element.children[0].innerHTML="".concat(n.icon||'<svg><use xlink:href="#vditor-icon-upload"></use></svg>').concat(i,">"),r._bindEvent(t),r}return Bn(t,e),t.prototype._bindEvent=function(e){var t=this;this.element.children[0].addEventListener((0,c.Le)(),(function(e){if(t.element.firstElementChild.classList.contains(i.g.CLASS_MENU_DISABLED))return e.stopPropagation(),void e.preventDefault()})),this.element.querySelector("input").addEventListener("change",(function(n){if(t.element.firstElementChild.classList.contains(i.g.CLASS_MENU_DISABLED))return n.stopPropagation(),void n.preventDefault();0!==n.target.files.length&&Ge(e,n.target.files,n.target)}))},t}(ye),Un=function(){function e(e){var t=this,n=e.options;this.elements={},this.element=document.createElement("div"),this.element.className="vditor-toolbar",n.toolbar.forEach((function(n,r){var i=t.genItem(e,n,r);if(t.element.appendChild(i),n.toolbar){var o=document.createElement("div");o.className="vditor-hint vditor-panel--arrow",o.addEventListener((0,c.Le)(),(function(e){o.style.display="none"})),n.toolbar.forEach((function(n,i){n.level=2,o.appendChild(t.genItem(e,n,r+i))})),i.appendChild(o),g(e,o,i.children[0])}})),e.options.toolbarConfig.hide&&this.element.classList.add("vditor-toolbar--hide"),e.options.toolbarConfig.pin&&this.element.classList.add("vditor-toolbar--pin"),e.options.counter.enable&&(e.counter=new tn(e),this.element.appendChild(e.counter.element))}return e.prototype.updateConfig=function(e,t){e.options.toolbarConfig=Object.assign({hide:!1,pin:!1},t),e.options.toolbarConfig.hide?this.element.classList.add("vditor-toolbar--hide"):this.element.classList.remove("vditor-toolbar--hide"),e.options.toolbarConfig.pin?this.element.classList.add("vditor-toolbar--pin"):this.element.classList.remove("vditor-toolbar--pin")},e.prototype.genItem=function(e,t,n){var r;switch(t.name){case"bold":case"italic":case"more":case"strike":case"line":case"quote":case"list":case"ordered-list":case"check":case"code":case"inline-code":case"link":case"table":r=new ye(e,t);break;case"emoji":r=new cn(e,t);break;case"headings":r=new vn(e,t);break;case"|":r=new sn;break;case"br":r=new Jt;break;case"undo":r=new qn(e,t);break;case"redo":r=new Rn(e,t);break;case"help":r=new bn(e,t);break;case"both":r=new Zt(e,t);break;case"preview":r=new Nn(e,t);break;case"fullscreen":r=new fn(e,t);break;case"upload":r=new Vn(e,t);break;case"record":r=new In(e,t);break;case"info":r=new kn(e,t);break;case"edit-mode":r=new ke(e,t);break;case"devtools":r=new an(e,t);break;case"outdent":r=new xn(e,t);break;case"indent":r=new wn(e,t);break;case"outline":r=new _n(e,t);break;case"insert-after":r=new Ln(e,t);break;case"insert-before":r=new Cn(e,t);break;case"code-theme":r=new Qt(e,t);break;case"content-theme":r=new en(e,t);break;case"export":r=new pn(e,t);break;default:r=new rn(e,t)}if(r){var i=t.name;return"br"!==i&&"|"!==i||(i+=n),this.elements[i]=r.element,r.element}},e}(),Wn=n(173),zn=function(){function e(){this.stackSize=50,this.resetStack(),this.dmp=new Wn}return e.prototype.clearStack=function(e){this.resetStack(),this.resetIcon(e)},e.prototype.resetIcon=function(e){e.toolbar&&(this[e.currentMode].undoStack.length>1?p(e.toolbar.elements,["undo"]):m(e.toolbar.elements,["undo"]),0!==this[e.currentMode].redoStack.length?p(e.toolbar.elements,["redo"]):m(e.toolbar.elements,["redo"]))},e.prototype.undo=function(e){if("false"!==e[e.currentMode].element.getAttribute("contenteditable")&&!(this[e.currentMode].undoStack.length<2)){var t=this[e.currentMode].undoStack.pop();t&&(this[e.currentMode].redoStack.push(t),this.renderDiff(t,e),this[e.currentMode].hasUndo=!0,v(e,["hint"]))}},e.prototype.redo=function(e){if("false"!==e[e.currentMode].element.getAttribute("contenteditable")){var t=this[e.currentMode].redoStack.pop();t&&(this[e.currentMode].undoStack.push(t),this.renderDiff(t,e,!0))}},e.prototype.recordFirstPosition=function(e,t){if(0!==getSelection().rangeCount&&!(1!==this[e.currentMode].undoStack.length||0===this[e.currentMode].undoStack[0].length||this[e.currentMode].redoStack.length>0||(0,c.vU)()&&"Backspace"===t.key||(0,c.G6)())){var n=this.addCaret(e);n.replace("<wbr>","").replace(" vditor-ir__node--expand","")===this[e.currentMode].undoStack[0][0].diffs[0][1].replace("<wbr>","")&&(this[e.currentMode].undoStack[0][0].diffs[0][1]=n,this[e.currentMode].lastText=n)}},e.prototype.addToUndoStack=function(e){var t=this.addCaret(e,!0),n=this.dmp.diff_main(t,this[e.currentMode].lastText,!0),r=this.dmp.patch_make(t,this[e.currentMode].lastText,n);0===r.length&&this[e.currentMode].undoStack.length>0||(this[e.currentMode].lastText=t,this[e.currentMode].undoStack.push(r),this[e.currentMode].undoStack.length>this.stackSize&&this[e.currentMode].undoStack.shift(),this[e.currentMode].hasUndo&&(this[e.currentMode].redoStack=[],this[e.currentMode].hasUndo=!1,m(e.toolbar.elements,["redo"])),this[e.currentMode].undoStack.length>1&&p(e.toolbar.elements,["undo"]))},e.prototype.renderDiff=function(e,t,n){var r;if(void 0===n&&(n=!1),n){var i=this.dmp.patch_deepCopy(e).reverse();i.forEach((function(e){e.diffs.forEach((function(e){e[0]=-e[0]}))})),r=this.dmp.patch_apply(i,this[t.currentMode].lastText)[0]}else r=this.dmp.patch_apply(e,this[t.currentMode].lastText)[0];if(this[t.currentMode].lastText=r,t[t.currentMode].element.innerHTML=r,"sv"!==t.currentMode&&(t[t.currentMode].element.querySelectorAll(".vditor-".concat(t.currentMode,"__preview")).forEach((function(e){e.parentElement.querySelector(".language-echarts")&&("ir"===t.currentMode?e.parentElement.outerHTML=t.lute.SpinVditorIRDOM(e.parentElement.outerHTML):e.parentElement.outerHTML=t.lute.SpinVditorDOM(e.parentElement.outerHTML))})),t[t.currentMode].element.querySelectorAll(".vditor-".concat(t.currentMode,"__preview[data-render='2']")).forEach((function(e){O(e,t)}))),t[t.currentMode].element.querySelector("wbr"))(0,D.ib)(t[t.currentMode].element,t[t.currentMode].element.ownerDocument.createRange()),_e(t);else{var o=getSelection().getRangeAt(0);o.setEndBefore(t[t.currentMode].element),o.collapse(!1)}I(t),ut(t,{enableAddUndoStack:!1,enableHint:!1,enableInput:!0}),ve(t),t[t.currentMode].element.querySelectorAll(".vditor-".concat(t.currentMode,"__preview[data-render='2']")).forEach((function(e){O(e,t)})),this[t.currentMode].undoStack.length>1?p(t.toolbar.elements,["undo"]):m(t.toolbar.elements,["undo"]),0!==this[t.currentMode].redoStack.length?p(t.toolbar.elements,["redo"]):m(t.toolbar.elements,["redo"])},e.prototype.resetStack=function(){this.ir={hasUndo:!1,lastText:"",redoStack:[],undoStack:[]},this.sv={hasUndo:!1,lastText:"",redoStack:[],undoStack:[]},this.wysiwyg={hasUndo:!1,lastText:"",redoStack:[],undoStack:[]}},e.prototype.addCaret=function(e,t){var n;if(void 0===t&&(t=!1),0!==getSelection().rangeCount&&!e[e.currentMode].element.querySelector("wbr")){var r=getSelection().getRangeAt(0);if(e[e.currentMode].element.contains(r.startContainer)){n=r.cloneRange();var i=document.createElement("span");i.className="vditor-wbr",r.insertNode(i)}}var o=e[e.currentMode].element.cloneNode(!0);o.querySelectorAll(".vditor-".concat(e.currentMode,"__preview[data-render='1']")).forEach((function(e){e.firstElementChild&&(e.firstElementChild.classList.contains("language-echarts")||e.firstElementChild.classList.contains("language-plantuml")||e.firstElementChild.classList.contains("language-mindmap")?(e.firstElementChild.removeAttribute("_echarts_instance_"),e.firstElementChild.removeAttribute("data-processed"),e.firstElementChild.innerHTML=e.previousElementSibling.firstElementChild.innerHTML,e.setAttribute("data-render","2")):e.firstElementChild.classList.contains("language-math")&&(e.setAttribute("data-render","2"),e.firstElementChild.textContent=e.firstElementChild.getAttribute("data-math"),e.firstElementChild.removeAttribute("data-math")))}));var a=o.innerHTML;return e[e.currentMode].element.querySelectorAll(".vditor-wbr").forEach((function(e){e.remove()})),t&&n&&(0,D.Hc)(n),a.replace('<span class="vditor-wbr"></span>',"<wbr>")},e}(),Gn=n(673),Kn=function(){function e(e){this.defaultOptions={rtl:!1,after:void 0,cache:{enable:!0},cdn:i.g.CDN,classes:{preview:""},comment:{enable:!1},counter:{enable:!1,type:"markdown"},customRenders:[],debugger:!1,fullscreen:{index:90},height:"auto",hint:{delay:200,emoji:{"+1":"👍","-1":"👎",confused:"😕",eyes:"👀️",heart:"❤️",rocket:"🚀️",smile:"😄",tada:"🎉️"},emojiPath:"".concat(i.g.CDN,"/dist/images/emoji"),extend:[],parse:!0},icon:"ant",lang:"zh_CN",mode:"ir",outline:{enable:!1,position:"left"},placeholder:"",preview:{actions:["desktop","tablet","mobile","mp-wechat","zhihu"],delay:1e3,hljs:i.g.HLJS_OPTIONS,markdown:i.g.MARKDOWN_OPTIONS,math:i.g.MATH_OPTIONS,maxWidth:800,mode:"both",theme:i.g.THEME_OPTIONS,render:{media:{enable:!0}}},link:{isOpen:!0},image:{isPreview:!0},resize:{enable:!1,position:"bottom"},theme:"classic",toolbar:["emoji","headings","bold","italic","strike","link","|","list","ordered-list","check","outdent","indent","|","quote","line","code","inline-code","insert-before","insert-after","|","upload","record","table","|","undo","redo","|","fullscreen","edit-mode",{name:"more",toolbar:["both","code-theme","content-theme","export","outline","preview","devtools","info","help"]}],toolbarConfig:{hide:!1,pin:!1},typewriterMode:!1,undoDelay:800,upload:{extraData:{},fieldName:"file[]",filename:function(e){return e.replace(/\W/g,"")},linkToImgUrl:"",max:10485760,multiple:!0,url:"",withCredentials:!1},value:"",width:"auto"},this.options=e}return e.prototype.merge=function(){var e,t,n,r,i,o,a,s,l;this.options&&(this.options.toolbar?this.options.toolbar=this.mergeToolbar(this.options.toolbar):this.options.toolbar=this.mergeToolbar(this.defaultOptions.toolbar),(null===(t=null===(e=this.options.preview)||void 0===e?void 0:e.theme)||void 0===t?void 0:t.list)&&(this.defaultOptions.preview.theme.list=this.options.preview.theme.list),(null===(i=null===(r=null===(n=this.options.preview)||void 0===n?void 0:n.render)||void 0===r?void 0:r.media)||void 0===i?void 0:i.enable)&&(this.defaultOptions.preview.render.media.enable=this.options.preview.render.media.enable),(null===(o=this.options.hint)||void 0===o?void 0:o.emoji)&&(this.defaultOptions.hint.emoji=this.options.hint.emoji),this.options.comment&&(this.defaultOptions.comment=this.options.comment),this.options.cdn&&((null===(s=null===(a=this.options.preview)||void 0===a?void 0:a.theme)||void 0===s?void 0:s.path)||(this.defaultOptions.preview.theme.path="".concat(this.options.cdn,"/dist/css/content-theme")),(null===(l=this.options.hint)||void 0===l?void 0:l.emojiPath)||(this.defaultOptions.hint.emojiPath="".concat(this.options.cdn,"/dist/images/emoji"))));var c=(0,Gn.T)(this.defaultOptions,this.options);if(c.cache.enable&&!c.cache.id)throw new Error("need options.cache.id, see https://ld246.com/article/1549638745630#options");return c},e.prototype.mergeToolbar=function(e){var t=this,n=[{icon:'<svg><use xlink:href="#vditor-icon-export"></use></svg>',name:"export",tipPosition:"ne"},{hotkey:"⌘E",icon:'<svg><use xlink:href="#vditor-icon-emoji"></use></svg>',name:"emoji",tipPosition:"ne"},{hotkey:"⌘H",icon:'<svg><use xlink:href="#vditor-icon-headings"></use></svg>',name:"headings",tipPosition:"ne"},{hotkey:"⌘B",icon:'<svg><use xlink:href="#vditor-icon-bold"></use></svg>',name:"bold",prefix:"**",suffix:"**",tipPosition:"ne"},{hotkey:"⌘I",icon:'<svg><use xlink:href="#vditor-icon-italic"></use></svg>',name:"italic",prefix:"*",suffix:"*",tipPosition:"ne"},{hotkey:"⌘D",icon:'<svg><use xlink:href="#vditor-icon-strike"></use></svg>',name:"strike",prefix:"~~",suffix:"~~",tipPosition:"ne"},{hotkey:"⌘K",icon:'<svg><use xlink:href="#vditor-icon-link"></use></svg>',name:"link",prefix:"[",suffix:"](https://)",tipPosition:"n"},{name:"|"},{hotkey:"⌘L",icon:'<svg><use xlink:href="#vditor-icon-list"></use></svg>',name:"list",prefix:"* ",tipPosition:"n"},{hotkey:"⌘O",icon:'<svg><use xlink:href="#vditor-icon-ordered-list"></use></svg>',name:"ordered-list",prefix:"1. ",tipPosition:"n"},{hotkey:"⌘J",icon:'<svg><use xlink:href="#vditor-icon-check"></use></svg>',name:"check",prefix:"* [ ] ",tipPosition:"n"},{hotkey:"⇧⌘I",icon:'<svg><use xlink:href="#vditor-icon-outdent"></use></svg>',name:"outdent",tipPosition:"n"},{hotkey:"⇧⌘O",icon:'<svg><use xlink:href="#vditor-icon-indent"></use></svg>',name:"indent",tipPosition:"n"},{name:"|"},{hotkey:"⌘;",icon:'<svg><use xlink:href="#vditor-icon-quote"></use></svg>',name:"quote",prefix:"> ",tipPosition:"n"},{hotkey:"⇧⌘H",icon:'<svg><use xlink:href="#vditor-icon-line"></use></svg>',name:"line",prefix:"---",tipPosition:"n"},{hotkey:"⌘U",icon:'<svg><use xlink:href="#vditor-icon-code"></use></svg>',name:"code",prefix:"```",suffix:"\n```",tipPosition:"n"},{hotkey:"⌘G",icon:'<svg><use xlink:href="#vditor-icon-inline-code"></use></svg>',name:"inline-code",prefix:"`",suffix:"`",tipPosition:"n"},{hotkey:"⇧⌘B",icon:'<svg><use xlink:href="#vditor-icon-before"></use></svg>',name:"insert-before",tipPosition:"n"},{hotkey:"⇧⌘E",icon:'<svg><use xlink:href="#vditor-icon-after"></use></svg>',name:"insert-after",tipPosition:"n"},{name:"|"},{icon:'<svg><use xlink:href="#vditor-icon-upload"></use></svg>',name:"upload",tipPosition:"n"},{icon:'<svg><use xlink:href="#vditor-icon-record"></use></svg>',name:"record",tipPosition:"n"},{hotkey:"⌘M",icon:'<svg><use xlink:href="#vditor-icon-table"></use></svg>',name:"table",prefix:"| col1",suffix:" | col2 | col3 |\n| --- | --- | --- |\n| | | |\n| | | |",tipPosition:"n"},{name:"|"},{hotkey:"⌘Z",icon:'<svg><use xlink:href="#vditor-icon-undo"></use></svg>',name:"undo",tipPosition:"nw"},{hotkey:"⌘Y",icon:'<svg><use xlink:href="#vditor-icon-redo"></use></svg>',name:"redo",tipPosition:"nw"},{name:"|"},{icon:'<svg><use xlink:href="#vditor-icon-more"></use></svg>',name:"more",tipPosition:"e"},{hotkey:"⌘'",icon:'<svg><use xlink:href="#vditor-icon-fullscreen"></use></svg>',name:"fullscreen",tipPosition:"nw"},{icon:'<svg><use xlink:href="#vditor-icon-edit"></use></svg>',name:"edit-mode",tipPosition:"nw"},{hotkey:"⌘P",icon:'<svg><use xlink:href="#vditor-icon-both"></use></svg>',name:"both",tipPosition:"nw"},{icon:'<svg><use xlink:href="#vditor-icon-preview"></use></svg>',name:"preview",tipPosition:"nw"},{icon:'<svg><use xlink:href="#vditor-icon-align-center"></use></svg>',name:"outline",tipPosition:"nw"},{icon:'<svg><use xlink:href="#vditor-icon-theme"></use></svg>',name:"content-theme",tipPosition:"nw"},{icon:'<svg><use xlink:href="#vditor-icon-code-theme"></use></svg>',name:"code-theme",tipPosition:"nw"},{icon:'<svg><use xlink:href="#vditor-icon-bug"></use></svg>',name:"devtools",tipPosition:"nw"},{icon:'<svg><use xlink:href="#vditor-icon-info"></use></svg>',name:"info",tipPosition:"nw"},{icon:'<svg><use xlink:href="#vditor-icon-help"></use></svg>',name:"help",tipPosition:"nw"},{name:"br"}],r=[];return e.forEach((function(e){var i=e;n.forEach((function(t){"string"==typeof e&&t.name===e&&(i=t),"object"==typeof e&&t.name===e.name&&(i=Object.assign({},t,e))})),e.toolbar&&(i.toolbar=t.mergeToolbar(e.toolbar)),r.push(i)})),r},e}(),Fn=function(){function e(e){var t=this;this.composingLock=!1,this.commentIds=[];var n=document.createElement("div");n.className="vditor-wysiwyg",n.innerHTML='<pre class="vditor-reset" placeholder="'.concat(e.options.placeholder,'"\n contenteditable="true" spellcheck="false"></pre>\n<div class="vditor-panel vditor-panel--none"></div>\n<div class="vditor-panel vditor-panel--none">\n <button type="button" aria-label="').concat(window.VditorI18n.comment,'" class="vditor-icon vditor-tooltipped vditor-tooltipped__n">\n <svg><use xlink:href="#vditor-icon-comment"></use></svg>\n </button>\n</div>'),this.element=n.firstElementChild,this.popover=n.firstElementChild.nextElementSibling,this.selectPopover=n.lastElementChild,this.bindEvent(e),Le(e,this.element),Te(e,this.element),Ce(e,this.element),He(e,this.element),Ne(e,this.element),Me(e,this.element),xe(e,this.element,this.copy),Ae(e,this.element,this.copy),e.options.comment.enable&&(this.selectPopover.querySelector("button").onclick=function(){var n,r,o=Lute.NewNodeID(),a=getSelection().getRangeAt(0),s=a.cloneRange(),l=a.extractContents(),c=!1,d=!1;l.childNodes.forEach((function(e,t){var i=!1;if(3===e.nodeType?i=!0:e.classList.contains("vditor-comment")?e.classList.contains("vditor-comment")&&e.setAttribute("data-cmtids",e.getAttribute("data-cmtids")+" "+o):i=!0,i)if(3!==e.nodeType&&"0"===e.getAttribute("data-block")&&0===t&&s.startOffset>0)e.innerHTML='<span class="vditor-comment" data-cmtids="'.concat(o,'">').concat(e.innerHTML,"</span>"),n=e;else if(3!==e.nodeType&&"0"===e.getAttribute("data-block")&&t===l.childNodes.length-1&&s.endOffset<s.endContainer.textContent.length)e.innerHTML='<span class="vditor-comment" data-cmtids="'.concat(o,'">').concat(e.innerHTML,"</span>"),r=e;else if(3!==e.nodeType&&"0"===e.getAttribute("data-block"))0===t?c=!0:t===l.childNodes.length-1&&(d=!0),e.innerHTML='<span class="vditor-comment" data-cmtids="'.concat(o,'">').concat(e.innerHTML,"</span>");else{var a=document.createElement("span");a.classList.add("vditor-comment"),a.setAttribute("data-cmtids",o),e.parentNode.insertBefore(a,e),a.appendChild(e)}}));var u=(0,b.F9)(s.startContainer);u&&(n?(u.insertAdjacentHTML("beforeend",n.innerHTML),n.remove()):""===u.textContent.trim().replace(i.g.ZWSP,"")&&c&&u.remove());var p=(0,b.F9)(s.endContainer);p&&(r?(p.insertAdjacentHTML("afterbegin",r.innerHTML),r.remove()):""===p.textContent.trim().replace(i.g.ZWSP,"")&&d&&p.remove()),a.insertNode(l),e.options.comment.add(o,a.toString(),t.getComments(e,!0)),$(e,{enableAddUndoStack:!0,enableHint:!1,enableInput:!1}),t.hideComment()})}return e.prototype.getComments=function(e,t){var n=this;if(void 0===t&&(t=!1),"wysiwyg"!==e.currentMode||!e.options.comment.enable)return[];this.commentIds=[],this.element.querySelectorAll(".vditor-comment").forEach((function(e){n.commentIds=n.commentIds.concat(e.getAttribute("data-cmtids").split(" "))})),this.commentIds=Array.from(new Set(this.commentIds));var r=[];return t?(this.commentIds.forEach((function(e){r.push({id:e,top:n.element.querySelector('.vditor-comment[data-cmtids="'.concat(e,'"]')).offsetTop})})),r):void 0},e.prototype.triggerRemoveComment=function(e){var t,n,r;if("wysiwyg"===e.currentMode&&e.options.comment.enable&&e.wysiwyg.commentIds.length>0){var i=JSON.parse(JSON.stringify(this.commentIds));this.getComments(e);var o=(t=i,n=this.commentIds,r=new Set(n),t.filter((function(e){return!r.has(e)})));o.length>0&&e.options.comment.remove(o)}},e.prototype.showComment=function(){var e=(0,D.Ny)(this.element);this.selectPopover.setAttribute("style","left:".concat(e.left,"px;display:block;top:").concat(Math.max(-8,e.top-21),"px"))},e.prototype.hideComment=function(){this.selectPopover.setAttribute("style","display:none")},e.prototype.unbindListener=function(){window.removeEventListener("scroll",this.scrollListener)},e.prototype.copy=function(e,t){var n=getSelection().getRangeAt(0);if(""!==n.toString()){e.stopPropagation(),e.preventDefault();var r=(0,b.lG)(n.startContainer,"CODE"),i=(0,b.lG)(n.endContainer,"CODE");if(r&&i&&i.isSameNode(r)){var o="";return o="PRE"===r.parentElement.tagName?n.toString():"`"+n.toString()+"`",e.clipboardData.setData("text/plain",o),void e.clipboardData.setData("text/html","")}var a=(0,b.lG)(n.startContainer,"A"),s=(0,b.lG)(n.endContainer,"A");if(a&&s&&s.isSameNode(a)){var l=a.getAttribute("title")||"";return l&&(l=' "'.concat(l,'"')),e.clipboardData.setData("text/plain","[".concat(n.toString(),"](").concat(a.getAttribute("href")).concat(l,")")),void e.clipboardData.setData("text/html","")}var c=document.createElement("div");c.appendChild(n.cloneContents()),e.clipboardData.setData("text/plain",t.lute.VditorDOM2Md(c.innerHTML).trim()),e.clipboardData.setData("text/html","")}},e.prototype.bindEvent=function(e){var t=this;this.unbindListener(),window.addEventListener("scroll",this.scrollListener=function(){if(v(e,["hint"]),"block"===t.popover.style.display&&"block"===t.selectPopover.style.display){var n=parseInt(t.popover.getAttribute("data-top"),10);if("auto"===e.options.height){if(e.options.toolbarConfig.pin){var r=Math.max(n,window.scrollY-e.element.offsetTop-8)+"px";"block"===t.popover.style.display&&(t.popover.style.top=r),"block"===t.selectPopover.style.display&&(t.selectPopover.style.top=r)}}else if(e.options.toolbarConfig.pin&&0===e.toolbar.element.getBoundingClientRect().top){var i=Math.max(window.scrollY-e.element.offsetTop-8,Math.min(n-e.wysiwyg.element.scrollTop,t.element.clientHeight-21))+"px";"block"===t.popover.style.display&&(t.popover.style.top=i),"block"===t.selectPopover.style.display&&(t.selectPopover.style.top=i)}}}),this.element.addEventListener("scroll",(function(){if(v(e,["hint"]),e.options.comment&&e.options.comment.enable&&e.options.comment.scroll&&e.options.comment.scroll(e.wysiwyg.element.scrollTop),"block"===t.popover.style.display){var n=parseInt(t.popover.getAttribute("data-top"),10)-e.wysiwyg.element.scrollTop,r=-8;e.options.toolbarConfig.pin&&0===e.toolbar.element.getBoundingClientRect().top&&(r=window.scrollY-e.element.offsetTop+r);var i=Math.max(r,Math.min(n,t.element.clientHeight-21))+"px";t.popover.style.top=i,t.selectPopover.style.top=i}})),this.element.addEventListener("paste",(function(t){Mt(e,t,{pasteCode:function(t){var n=(0,D.zh)(e),r=document.createElement("template");r.innerHTML=t,n.insertNode(r.content.cloneNode(!0));var i=(0,b.a1)(n.startContainer,"data-block","0");i?i.outerHTML=e.lute.SpinVditorDOM(i.outerHTML):e.wysiwyg.element.innerHTML=e.lute.SpinVditorDOM(e.wysiwyg.element.innerHTML),(0,D.ib)(e.wysiwyg.element,n)}})})),this.element.addEventListener("compositionstart",(function(){t.composingLock=!0})),this.element.addEventListener("compositionend",(function(n){var r=(0,y.W)(getSelection().getRangeAt(0).startContainer);r&&""===r.textContent?I(e):((0,c.vU)()||Ke(e,getSelection().getRangeAt(0).cloneRange(),n),t.composingLock=!1)})),this.element.addEventListener("input",(function(n){if("deleteByDrag"!==n.inputType&&"insertFromDrop"!==n.inputType){if(t.preventInput)return t.preventInput=!1,void $(e);if(t.composingLock||"‘"===n.data||"“"===n.data||"《"===n.data)$(e);else{var r=getSelection().getRangeAt(0),i=(0,b.F9)(r.startContainer);if(i||(ne(e,r),i=(0,b.F9)(r.startContainer)),i){for(var o=(0,D.im)(i,e.wysiwyg.element,r).start,s=!0,l=o-1;l>i.textContent.substr(0,o).lastIndexOf("\n");l--)if(" "!==i.textContent.charAt(l)&&"\t"!==i.textContent.charAt(l)){s=!1;break}0===o&&(s=!1);var c=!0;for(l=o-1;l<i.textContent.length;l++)if(" "!==i.textContent.charAt(l)&&"\n"!==i.textContent.charAt(l)){c=!1;break}c&&/^#{1,6} $/.test(i.textContent)&&(c=!1);var d=(0,y.W)(getSelection().getRangeAt(0).startContainer);d&&""===d.textContent&&(I(e),d.remove()),s&&"code-block"!==i.getAttribute("data-type")||c||dt(i.innerHTML)||ct(i.innerHTML)&&i.previousElementSibling?"function"==typeof e.options.input&&e.options.input(a(e)):("insertParagraph"===n.inputType&&"<p><br></p><p><br></p>"===t.element.innerHTML&&i.previousElementSibling.remove(),Ke(e,r,n))}}}})),this.element.addEventListener("click",(function(n){if("INPUT"===n.target.tagName){var r=n.target;return r.checked?r.setAttribute("checked","checked"):r.removeAttribute("checked"),t.preventInput=!0,getSelection().rangeCount>0&&(0,D.Hc)(getSelection().getRangeAt(0)),void $(e)}if("IMG"!==n.target.tagName||n.target.parentElement.classList.contains("vditor-wysiwyg__preview")){var o=(0,b.lG)(n.target,"A");if(o)return e.options.link.click?e.options.link.click(o):e.options.link.isOpen&&window.open(o.getAttribute("href")),void n.preventDefault();var s=(0,D.zh)(e);if(n.target.isEqualNode(t.element)&&t.element.lastElementChild&&s.collapsed){var l=t.element.lastElementChild.getBoundingClientRect();n.y>l.top+l.height&&("P"===t.element.lastElementChild.tagName&&""===t.element.lastElementChild.textContent.trim().replace(i.g.ZWSP,"")?(s.selectNodeContents(t.element.lastElementChild),s.collapse(!1)):(t.element.insertAdjacentHTML("beforeend",'<p data-block="0">'.concat(i.g.ZWSP,"<wbr></p>")),(0,D.ib)(t.element,s)))}se(e);var c=(0,b.fb)(n.target,"vditor-wysiwyg__preview");c||(c=(0,b.fb)((0,D.zh)(e).startContainer,"vditor-wysiwyg__preview")),c&&oe(c,e),j(n,e)}else"link-ref"===n.target.getAttribute("data-type")?ce(e,n.target):function(e,t){var n=e.target;t.wysiwyg.popover.innerHTML="";var r=function(){n.setAttribute("src",o.value),n.setAttribute("alt",l.value),n.setAttribute("title",d.value),"function"==typeof t.options.input&&t.options.input(a(t))},i=document.createElement("span");i.setAttribute("aria-label",window.VditorI18n.imageURL),i.className="vditor-tooltipped vditor-tooltipped__n";var o=document.createElement("input");i.appendChild(o),o.className="vditor-input",o.setAttribute("placeholder",window.VditorI18n.imageURL),o.value=n.getAttribute("src")||"",o.oninput=function(){r()},o.onkeydown=function(e){ae(t,e)};var s=document.createElement("span");s.setAttribute("aria-label",window.VditorI18n.alternateText),s.className="vditor-tooltipped vditor-tooltipped__n";var l=document.createElement("input");s.appendChild(l),l.className="vditor-input",l.setAttribute("placeholder",window.VditorI18n.alternateText),l.style.width="52px",l.value=n.getAttribute("alt")||"",l.oninput=function(){r()},l.onkeydown=function(e){ae(t,e)};var c=document.createElement("span");c.setAttribute("aria-label",window.VditorI18n.title),c.className="vditor-tooltipped vditor-tooltipped__n";var d=document.createElement("input");c.appendChild(d),d.className="vditor-input",d.setAttribute("placeholder",window.VditorI18n.title),d.value=n.getAttribute("title")||"",d.oninput=function(){r()},d.onkeydown=function(e){ae(t,e)},pe(n,t),t.wysiwyg.popover.insertAdjacentElement("beforeend",i),t.wysiwyg.popover.insertAdjacentElement("beforeend",s),t.wysiwyg.popover.insertAdjacentElement("beforeend",c),le(t,n)}(n,e)})),this.element.addEventListener("keyup",(function(t){if(!t.isComposing&&!(0,c.yl)(t)){"Enter"===t.key&&_e(e),"Backspace"!==t.key&&"Delete"!==t.key||""===e.wysiwyg.element.innerHTML||1!==e.wysiwyg.element.childNodes.length||!e.wysiwyg.element.firstElementChild||"P"!==e.wysiwyg.element.firstElementChild.tagName||0!==e.wysiwyg.element.firstElementChild.childElementCount||""!==e.wysiwyg.element.textContent&&"\n"!==e.wysiwyg.element.textContent||(e.wysiwyg.element.innerHTML="");var n=(0,D.zh)(e);if("Backspace"===t.key&&(0,c.vU)()&&"\n"===n.startContainer.textContent&&1===n.startOffset&&(n.startContainer.textContent=""),ne(e,n),se(e),"ArrowDown"===t.key||"ArrowRight"===t.key||"Backspace"===t.key||"ArrowLeft"===t.key||"ArrowUp"===t.key){"ArrowLeft"!==t.key&&"ArrowRight"!==t.key||e.hint.render(e);var r=(0,b.fb)(n.startContainer,"vditor-wysiwyg__preview");if(!r&&3!==n.startContainer.nodeType&&n.startOffset>0)(o=n.startContainer).classList.contains("vditor-wysiwyg__block")&&(r=o.lastElementChild);if(r)if("none"!==r.previousElementSibling.style.display){var i=r.previousElementSibling;if("PRE"===i.tagName&&(i=i.firstElementChild),"ArrowDown"===t.key||"ArrowRight"===t.key){var o,a=function(e){for(var t=e;t&&!t.nextSibling;)t=t.parentElement;return t.nextSibling}(o=r.parentElement);if(a&&3!==a.nodeType){var s=a.querySelector(".vditor-wysiwyg__preview");if(s)return void oe(s,e)}if(3===a.nodeType){for(;0===a.textContent.length&&a.nextSibling;)a=a.nextSibling;n.setStart(a,1)}else n.setStart(a.firstChild,0)}else n.selectNodeContents(i),n.collapse(!1)}else"ArrowDown"===t.key||"ArrowRight"===t.key?oe(r,e):oe(r,e,!1)}}}))},e}(),Zn=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}();const Jn=function(e){function t(t,n){var r=e.call(this)||this;if(r.isDestroyed=!1,r.version=i.H,"string"==typeof t){if(n?n.cache?n.cache.id||(n.cache.id="vditor".concat(t)):n.cache={id:"vditor".concat(t)}:n={cache:{id:"vditor".concat(t)}},!document.getElementById(t))return r.showErrorTip("Failed to get element by id: ".concat(t)),r;t=document.getElementById(t)}var o=new Kn(n).merge();if(o.i18n)window.VditorI18n=o.i18n,r.init(t,o);else{if(!["de_DE","en_US","fr_FR","pt_BR","ja_JP","ko_KR","ru_RU","sv_SE","zh_CN","zh_TW"].includes(o.lang))throw new Error("options.lang error, see https://ld246.com/article/1549638745630#options");var a="vditorI18nScript",l=a+o.lang;document.querySelectorAll('head script[id^="'.concat(a,'"]')).forEach((function(e){e.id!==l&&document.head.removeChild(e)})),(0,s.G)("".concat(o.cdn,"/dist/js/i18n/").concat(o.lang,".js"),l).then((function(){r.init(t,o)})).catch((function(e){r.showErrorTip("GET ".concat(o.cdn,"/dist/js/i18n/").concat(o.lang,".js net::ERR_ABORTED 404 (Not Found)"))}))}return r}return Zn(t,e),t.prototype.showErrorTip=function(e){var t=new Gt;document.body.appendChild(t.element),t.show(e,0)},t.prototype.updateToolbarConfig=function(e){this.vditor.toolbar.updateConfig(this.vditor,e)},t.prototype.setTheme=function(e,t,n,r){this.vditor.options.theme=e,G(this.vditor),t&&(this.vditor.options.preview.theme.current=t,(0,z.Z)(t,r||this.vditor.options.preview.theme.path)),n&&(this.vditor.options.preview.hljs.style=n,(0,Xt.Y)(n,this.vditor.options.cdn))},t.prototype.getValue=function(){return a(this.vditor)},t.prototype.getCurrentMode=function(){return this.vditor.currentMode},t.prototype.focus=function(){"sv"===this.vditor.currentMode?this.vditor.sv.element.focus():"wysiwyg"===this.vditor.currentMode?this.vditor.wysiwyg.element.focus():"ir"===this.vditor.currentMode&&this.vditor.ir.element.focus()},t.prototype.blur=function(){"sv"===this.vditor.currentMode?this.vditor.sv.element.blur():"wysiwyg"===this.vditor.currentMode?this.vditor.wysiwyg.element.blur():"ir"===this.vditor.currentMode&&this.vditor.ir.element.blur()},t.prototype.disabled=function(){v(this.vditor,["subToolbar","hint","popover"]),m(this.vditor.toolbar.elements,i.g.EDIT_TOOLBARS.concat(["undo","redo","fullscreen","edit-mode"])),this.vditor[this.vditor.currentMode].element.setAttribute("contenteditable","false")},t.prototype.enable=function(){p(this.vditor.toolbar.elements,i.g.EDIT_TOOLBARS.concat(["undo","redo","fullscreen","edit-mode"])),this.vditor.undo.resetIcon(this.vditor),this.vditor[this.vditor.currentMode].element.setAttribute("contenteditable","true")},t.prototype.getSelection=function(){return"wysiwyg"===this.vditor.currentMode?Se(this.vditor.wysiwyg.element):"sv"===this.vditor.currentMode?Se(this.vditor.sv.element):"ir"===this.vditor.currentMode?Se(this.vditor.ir.element):void 0},t.prototype.renderPreview=function(e){this.vditor.preview.render(this.vditor,e)},t.prototype.getCursorPosition=function(){return(0,D.Ny)(this.vditor[this.vditor.currentMode].element)},t.prototype.isUploading=function(){return this.vditor.upload.isUploading},t.prototype.clearCache=function(){this.vditor.options.cache.enable&&(0,c.pK)()&&localStorage.removeItem(this.vditor.options.cache.id)},t.prototype.disabledCache=function(){this.vditor.options.cache.enable=!1},t.prototype.enableCache=function(){if(!this.vditor.options.cache.id)throw new Error("need options.cache.id, see https://ld246.com/article/1549638745630#options");this.vditor.options.cache.enable=!0},t.prototype.html2md=function(e){return this.vditor.lute.HTML2Md(e)},t.prototype.exportJSON=function(e){return this.vditor.lute.RenderJSON(e)},t.prototype.getHTML=function(){return Rt(this.vditor)},t.prototype.tip=function(e,t){this.vditor.tip.show(e,t)},t.prototype.setPreviewMode=function(e){Kt(e,this.vditor)},t.prototype.deleteValue=function(){window.getSelection().isCollapsed||document.execCommand("delete",!1)},t.prototype.updateValue=function(e){document.execCommand("insertHTML",!1,e)},t.prototype.insertValue=function(e,t){void 0===t&&(t=!0);var n=(0,D.zh)(this.vditor);n.collapse(!0);var r=document.createElement("template");r.innerHTML=e,n.insertNode(r.content.cloneNode(!0)),n.collapse(!1),"sv"===this.vditor.currentMode?(this.vditor.sv.preventInput=!0,t&&W(this.vditor)):"wysiwyg"===this.vditor.currentMode?t&&Ke(this.vditor,getSelection().getRangeAt(0)):"ir"===this.vditor.currentMode&&(this.vditor.ir.preventInput=!0,t&&P(this.vditor,getSelection().getRangeAt(0),!0))},t.prototype.insertMD=function(e){"ir"===this.vditor.currentMode?(0,D.oC)(this.vditor.lute.Md2VditorIRDOM(e),this.vditor):"wysiwyg"===this.vditor.currentMode?(0,D.oC)(this.vditor.lute.Md2VditorDOM(e),this.vditor):Oe(this.vditor,e),this.vditor.outline.render(this.vditor),ut(this.vditor)},t.prototype.setValue=function(e,t){var n=this;void 0===t&&(t=!1),"sv"===this.vditor.currentMode?(this.vditor.sv.element.innerHTML="<div data-block='0'>".concat(this.vditor.lute.SpinVditorSVDOM(e),"</div>"),Re(this.vditor,{enableAddUndoStack:!0,enableHint:!1,enableInput:!1})):"wysiwyg"===this.vditor.currentMode?ge(this.vditor,e,{enableAddUndoStack:!0,enableHint:!1,enableInput:!1}):(this.vditor.ir.element.innerHTML=this.vditor.lute.Md2VditorIRDOM(e),this.vditor.ir.element.querySelectorAll(".vditor-ir__preview[data-render='2']").forEach((function(e){O(e,n.vditor)})),At(this.vditor,{enableAddUndoStack:!0,enableHint:!1,enableInput:!1})),this.vditor.outline.render(this.vditor),e||(v(this.vditor,["emoji","headings","submenu","hint"]),this.vditor.wysiwyg.popover&&(this.vditor.wysiwyg.popover.style.display="none"),this.clearCache()),t&&this.clearStack()},t.prototype.insertEmptyBlock=function(e){$e(this.vditor,e)},t.prototype.clearStack=function(){this.vditor.undo.clearStack(this.vditor),this.vditor.undo.addToUndoStack(this.vditor)},t.prototype.destroy=function(){this.vditor.element.innerHTML=this.vditor.originalInnerHTML,this.vditor.element.classList.remove("vditor"),this.vditor.element.removeAttribute("style");var e=document.getElementById("vditorIconScript");e&&e.remove(),this.clearCache(),Z(),this.vditor.wysiwyg.unbindListener(),this.vditor.options.after=void 0,this.isDestroyed=!0},t.prototype.getCommentIds=function(){return"wysiwyg"!==this.vditor.currentMode?[]:this.vditor.wysiwyg.getComments(this.vditor,!0)},t.prototype.hlCommentIds=function(e){if("wysiwyg"===this.vditor.currentMode){var t=function(t){t.classList.remove("vditor-comment--hover"),e.forEach((function(e){t.getAttribute("data-cmtids").indexOf(e)>-1&&t.classList.add("vditor-comment--hover")}))};this.vditor.wysiwyg.element.querySelectorAll(".vditor-comment").forEach((function(e){t(e)})),"none"!==this.vditor.preview.element.style.display&&this.vditor.preview.element.querySelectorAll(".vditor-comment").forEach((function(e){t(e)}))}},t.prototype.unHlCommentIds=function(e){if("wysiwyg"===this.vditor.currentMode){var t=function(t){e.forEach((function(e){t.getAttribute("data-cmtids").indexOf(e)>-1&&t.classList.remove("vditor-comment--hover")}))};this.vditor.wysiwyg.element.querySelectorAll(".vditor-comment").forEach((function(e){t(e)})),"none"!==this.vditor.preview.element.style.display&&this.vditor.preview.element.querySelectorAll(".vditor-comment").forEach((function(e){t(e)}))}},t.prototype.removeCommentIds=function(e){var t=this;if("wysiwyg"===this.vditor.currentMode){var n=function(e,n){var r=e.getAttribute("data-cmtids").split(" ");r.find((function(e,t){if(e===n)return r.splice(t,1),!0})),0===r.length?(e.outerHTML=e.innerHTML,(0,D.zh)(t.vditor).collapse(!0)):e.setAttribute("data-cmtids",r.join(" "))};e.forEach((function(e){t.vditor.wysiwyg.element.querySelectorAll(".vditor-comment").forEach((function(t){n(t,e)})),"none"!==t.vditor.preview.element.style.display&&t.vditor.preview.element.querySelectorAll(".vditor-comment").forEach((function(t){n(t,e)}))})),$(this.vditor,{enableAddUndoStack:!0,enableHint:!1,enableInput:!1})}},t.prototype.init=function(e,t){var n=this;this.isDestroyed||(this.vditor={currentMode:t.mode,element:e,hint:new It(t.hint.extend),lute:void 0,options:t,originalInnerHTML:e.innerHTML,outline:new Bt(window.VditorI18n.outline),tip:new Gt},this.vditor.sv=new zt(this.vditor),this.vditor.undo=new zn,this.vditor.wysiwyg=new Fn(this.vditor),this.vditor.ir=new jt(this.vditor),this.vditor.toolbar=new Un(this.vditor),t.resize.enable&&(this.vditor.resize=new Wt(this.vditor)),this.vditor.toolbar.elements.devtools&&(this.vditor.devtools=new l),(t.upload.url||t.upload.handler)&&(this.vditor.upload=new ze),(0,s.G)(t._lutePath||"".concat(t.cdn,"/dist/js/lute/lute.min.js"),"vditorLuteScript").then((function(){n.vditor.lute=(0,Pt.X)({autoSpace:n.vditor.options.preview.markdown.autoSpace,gfmAutoLink:n.vditor.options.preview.markdown.gfmAutoLink,codeBlockPreview:n.vditor.options.preview.markdown.codeBlockPreview,emojiSite:n.vditor.options.hint.emojiPath,emojis:n.vditor.options.hint.emoji,fixTermTypo:n.vditor.options.preview.markdown.fixTermTypo,footnotes:n.vditor.options.preview.markdown.footnotes,headingAnchor:!1,inlineMathDigit:n.vditor.options.preview.math.inlineDigit,linkBase:n.vditor.options.preview.markdown.linkBase,linkPrefix:n.vditor.options.preview.markdown.linkPrefix,listStyle:n.vditor.options.preview.markdown.listStyle,mark:n.vditor.options.preview.markdown.mark,mathBlockPreview:n.vditor.options.preview.markdown.mathBlockPreview,paragraphBeginningSpace:n.vditor.options.preview.markdown.paragraphBeginningSpace,sanitize:n.vditor.options.preview.markdown.sanitize,toc:n.vditor.options.preview.markdown.toc}),n.vditor.preview=new Ut(n.vditor),function(e){e.element.innerHTML="",e.element.classList.add("vditor"),e.options.rtl&&e.element.setAttribute("dir","rtl"),G(e),(0,z.Z)(e.options.preview.theme.current,e.options.preview.theme.path),"number"==typeof e.options.height?e.element.style.height=e.options.height+"px":e.element.style.height=e.options.height,"number"==typeof e.options.minHeight&&(e.element.style.minHeight=e.options.minHeight+"px"),"number"==typeof e.options.width?e.element.style.width=e.options.width+"px":e.element.style.width=e.options.width,e.element.appendChild(e.toolbar.element);var t=document.createElement("div");if(t.className="vditor-content","left"===e.options.outline.position&&t.appendChild(e.outline.element),t.appendChild(e.wysiwyg.element.parentElement),t.appendChild(e.sv.element),t.appendChild(e.ir.element.parentElement),t.appendChild(e.preview.element),e.toolbar.elements.devtools&&t.appendChild(e.devtools.element),"right"===e.options.outline.position&&(e.outline.element.classList.add("vditor-outline--right"),t.appendChild(e.outline.element)),e.upload&&t.appendChild(e.upload.element),e.options.resize.enable&&t.appendChild(e.resize.element),t.appendChild(e.hint.element),t.appendChild(e.tip.element),e.element.appendChild(t),t.addEventListener("click",(function(){v(e,["subToolbar"])})),e.toolbar.elements.export&&e.element.insertAdjacentHTML("beforeend",'<iframe id="vditorExportIframe" style="width: 100%;height: 0;border: 0"></iframe>'),Ee(e,e.options.mode,Y(e)),document.execCommand("DefaultParagraphSeparator",!1,"p"),navigator.userAgent.indexOf("iPhone")>-1&&void 0!==window.visualViewport){var n=!1,r=function(t){n||(n=!0,requestAnimationFrame((function(){n=!1;var t=e.toolbar.element;t.style.transform="none",t.getBoundingClientRect().top<0&&(t.style.transform="translate(0, ".concat(-t.getBoundingClientRect().top,"px)"))})))};window.visualViewport.addEventListener("scroll",r),window.visualViewport.addEventListener("resize",r)}}(n.vditor),t.after&&t.after(),t.icon&&(0,s.J)("".concat(t.cdn,"/dist/js/icons/").concat(t.icon,".js"),"vditorIconScript")})))},t}(t.default)})(),r=r.default})()})); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/abcjs/abcjs_basic.min.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/abcjs/abcjs_basic.min.js new file mode 100644 index 0000000..f60d009 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/abcjs/abcjs_basic.min.js @@ -0,0 +1,3 @@ +/*! abcjs_basic v5.10.3 Copyright © 2009-2019 Paul Rosen and Gregory Dyke (https://abcjs.net) */ +/*! For license information please see abcjs_basic_5.10.3-min.js.LICENSE */ +!function(e){var t={};function i(r){if(t[r])return t[r].exports;var n=t[r]={i:r,l:!1,exports:{}};return e[r].call(n.exports,n,n.exports,i),n.l=!0,n.exports}i.m=e,i.c=t,i.d=function(e,t,r){i.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},i.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(i.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)i.d(r,n,function(t){return e[t]}.bind(null,n));return r},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,"a",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p="",i(i.s=26)}([function(e,t){var i={clone:function(e){var t={};for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i]);return t},cloneArray:function(e){for(var t=[],r=0;r<e.length;r++)t.push(i.clone(e[r]));return t},cloneHashOfHash:function(e){var t={};for(var r in e)e.hasOwnProperty(r)&&(t[r]=i.clone(e[r]));return t},cloneHashOfArrayOfHash:function(e){var t={};for(var r in e)e.hasOwnProperty(r)&&(t[r]=i.cloneArray(e[r]));return t},gsub:function(e,t,i){return e.split(t).join(i)},strip:function(e){return e.replace(/^\s+/,"").replace(/\s+$/,"")},startsWith:function(e,t){return 0===e.indexOf(t)},endsWith:function(e,t){var i=e.length-t.length;return i>=0&&e.lastIndexOf(t)===i},each:function(e,t,i){for(var r=0,n=e.length;r<n;r++)t.apply(i,[e[r],r])},last:function(e){return 0===e.length?null:e[e.length-1]},compact:function(e){for(var t=[],i=0;i<e.length;i++)e[i]&&t.push(e[i]);return t},detect:function(e,t){for(var i=0;i<e.length;i++)if(t(e[i]))return!0;return!1}};[Element.prototype,CharacterData.prototype,DocumentType.prototype].forEach((function(e){e.hasOwnProperty("remove")||Object.defineProperty(e,"remove",{configurable:!0,enumerable:!0,writable:!0,value:function(){null!==this.parentNode&&this.parentNode.removeChild(this)}})})),e.exports=i},function(e,t){var i={FONTEM:360,FONTSIZE:30};i.STEP=93*i.FONTSIZE/720,i.SPACE=10,i.TOPNOTE=15,i.STAVEHEIGHT=100,i.INDENT=50,e.exports=i},function(e,t,i){i(3);var r=function(e,t,i,r,n){switch(n=n||{},this.x=0,this.c=e,this.dx=t,this.w=i,this.pitch=r,this.scalex=n.scalex||1,this.scaley=n.scaley||1,this.type=n.type||"symbol",this.pitch2=n.pitch2,this.linewidth=n.linewidth,this.klass=n.klass,this.top=r,void 0!==this.pitch2&&this.pitch2>this.top&&(this.top=this.pitch2),this.bottom=r,void 0!==this.pitch2&&this.pitch2<this.bottom&&(this.bottom=this.pitch2),n.thickness&&(this.top+=n.thickness/2,this.bottom-=n.thickness/2),n.stemHeight&&(n.stemHeight>0?this.top+=n.stemHeight:this.bottom+=n.stemHeight),this.height=n.height?n.height:4,this.centerVertically=!1,this.type){case"debug":this.chordHeightAbove=this.height;break;case"lyric":n.position&&"below"===n.position?this.lyricHeightBelow=this.height:this.lyricHeightAbove=this.height;break;case"chord":n.position&&"below"===n.position?this.chordHeightBelow=this.height:this.chordHeightAbove=this.height;break;case"text":void 0===this.pitch?n.position&&"below"===n.position?this.chordHeightBelow=this.height:this.chordHeightAbove=this.height:this.centerVertically=!0;break;case"part":this.partHeightAbove=this.height}};r.prototype.setX=function(e){this.x=e+this.dx},r.prototype.setUpperAndLowerElements=function(e){switch(this.type){case"part":this.top=e.partHeightAbove+this.height,this.bottom=e.partHeightAbove;break;case"text":case"chord":this.chordHeightAbove?(this.top=e.chordHeightAbove,this.bottom=e.chordHeightAbove):(this.top=e.chordHeightBelow,this.bottom=e.chordHeightBelow);break;case"lyric":this.lyricHeightAbove?(this.top=e.lyricHeightAbove,this.bottom=e.lyricHeightAbove):(this.top=e.lyricHeightBelow,this.bottom=e.lyricHeightBelow);break;case"debug":this.top=e.chordHeightAbove,this.bottom=e.chordHeightAbove}void 0!==this.pitch&&void 0!==this.top||window.console.error("RelativeElement position not set.",this.type,this.pitch,this.top,e)},r.prototype.draw=function(e,t){void 0===this.pitch&&window.console.error(this.type+" Relative Element y-coordinate not set.");var i=e.calcY(this.pitch);switch(this.type){case"symbol":if(null===this.c)return null;var r="symbol";this.klass&&(r+=" "+this.klass),this.graphelem=e.printSymbol(this.x,this.pitch,this.c,this.scalex,this.scaley,e.addClasses(r));break;case"debug":this.graphelem=e.renderText(this.x,e.calcY(15),""+this.c,"debugfont","debug-msg","start");break;case"barNumber":this.graphelem=e.renderText(this.x,i,""+this.c,"measurefont","bar-number","middle");break;case"lyric":this.graphelem=e.renderText(this.x,i,this.c,"vocalfont","lyric","middle");break;case"chord":this.graphelem=e.renderText(this.x,i,this.c,"gchordfont","chord","middle");break;case"decoration":this.graphelem=e.renderText(this.x,i,this.c,"annotationfont","annotation","middle",!0);break;case"text":this.graphelem=e.renderText(this.x,i,this.c,"annotationfont","annotation","start",this.centerVertically);break;case"multimeasure-text":this.graphelem=e.renderText(this.x+this.w/2,i,this.c,"tempofont","rest","middle",!1);break;case"part":this.graphelem=e.renderText(this.x,i,this.c,"partsfont","part","start");break;case"bar":this.graphelem=e.printStem(this.x,this.linewidth,i,t||e.calcY(this.pitch2));break;case"stem":this.graphelem=e.printStem(this.x,this.linewidth,i,e.calcY(this.pitch2));break;case"ledger":this.graphelem=e.printStaveLine(this.x,this.x+this.w,this.pitch)}return 1!==this.scalex&&this.graphelem&&e.scaleExistingElem(this.graphelem,this.scalex,this.scaley,this.x,i),this.graphelem},e.exports=r},function(e,t,i){var r=i(1);e.exports=new function(){"use strict";var e={0:{d:[["M",4.83,-14.97],["c",.33,-.03,1.11,0,1.47,.06],["c",1.68,.36,2.97,1.59,3.78,3.6],["c",1.2,2.97,.81,6.96,-.9,9.27],["c",-.78,1.08,-1.71,1.71,-2.91,1.95],["c",-.45,.09,-1.32,.09,-1.77,0],["c",-.81,-.18,-1.47,-.51,-2.07,-1.02],["c",-2.34,-2.07,-3.15,-6.72,-1.74,-10.2],["c",.87,-2.16,2.28,-3.42,4.14,-3.66],["z"],["m",1.11,.87],["c",-.21,-.06,-.69,-.09,-.87,-.06],["c",-.54,.12,-.87,.42,-1.17,.99],["c",-.36,.66,-.51,1.56,-.6,3],["c",-.03,.75,-.03,4.59,0,5.31],["c",.09,1.5,.27,2.4,.6,3.06],["c",.24,.48,.57,.78,.96,.9],["c",.27,.09,.78,.09,1.05,0],["c",.39,-.12,.72,-.42,.96,-.9],["c",.33,-.66,.51,-1.56,.6,-3.06],["c",.03,-.72,.03,-4.56,0,-5.31],["c",-.09,-1.47,-.27,-2.37,-.6,-3.03],["c",-.24,-.48,-.54,-.78,-.93,-.9],["z"]],w:10.78,h:14.959},1:{d:[["M",3.3,-15.06],["c",.06,-.06,.21,-.03,.66,.15],["c",.81,.39,1.08,.39,1.83,.03],["c",.21,-.09,.39,-.15,.42,-.15],["c",.12,0,.21,.09,.27,.21],["c",.06,.12,.06,.33,.06,5.94],["c",0,3.93,0,5.85,.03,6.03],["c",.06,.36,.15,.69,.27,.96],["c",.36,.75,.93,1.17,1.68,1.26],["c",.3,.03,.39,.09,.39,.3],["c",0,.15,-.03,.18,-.09,.24],["c",-.06,.06,-.09,.06,-.48,.06],["c",-.42,0,-.69,-.03,-2.1,-.24],["c",-.9,-.15,-1.77,-.15,-2.67,0],["c",-1.41,.21,-1.68,.24,-2.1,.24],["c",-.39,0,-.42,0,-.48,-.06],["c",-.06,-.06,-.06,-.09,-.06,-.24],["c",0,-.21,.06,-.27,.36,-.3],["c",.75,-.09,1.32,-.51,1.68,-1.26],["c",.12,-.27,.21,-.6,.27,-.96],["c",.03,-.18,.03,-1.59,.03,-4.29],["c",0,-3.87,0,-4.05,-.06,-4.14],["c",-.09,-.15,-.18,-.24,-.39,-.24],["c",-.12,0,-.15,.03,-.21,.06],["c",-.03,.06,-.45,.99,-.96,2.13],["c",-.48,1.14,-.9,2.1,-.93,2.16],["c",-.06,.15,-.21,.24,-.33,.24],["c",-.24,0,-.42,-.18,-.42,-.39],["c",0,-.06,3.27,-7.62,3.33,-7.74],["z"]],w:8.94,h:15.058},2:{d:[["M",4.23,-14.97],["c",.57,-.06,1.68,0,2.34,.18],["c",.69,.18,1.5,.54,2.01,.9],["c",1.35,.96,1.95,2.25,1.77,3.81],["c",-.15,1.35,-.66,2.34,-1.68,3.15],["c",-.6,.48,-1.44,.93,-3.12,1.65],["c",-1.32,.57,-1.8,.81,-2.37,1.14],["c",-.57,.33,-.57,.33,-.24,.27],["c",.39,-.09,1.26,-.09,1.68,0],["c",.72,.15,1.41,.45,2.1,.9],["c",.99,.63,1.86,.87,2.55,.75],["c",.24,-.06,.42,-.15,.57,-.3],["c",.12,-.09,.3,-.42,.3,-.51],["c",0,-.09,.12,-.21,.24,-.24],["c",.18,-.03,.39,.12,.39,.3],["c",0,.12,-.15,.57,-.3,.87],["c",-.54,1.02,-1.56,1.74,-2.79,2.01],["c",-.42,.09,-1.23,.09,-1.62,.03],["c",-.81,-.18,-1.32,-.45,-2.01,-1.11],["c",-.45,-.45,-.63,-.57,-.96,-.69],["c",-.84,-.27,-1.89,.12,-2.25,.9],["c",-.12,.21,-.21,.54,-.21,.72],["c",0,.12,-.12,.21,-.27,.24],["c",-.15,0,-.27,-.03,-.33,-.15],["c",-.09,-.21,.09,-1.08,.33,-1.71],["c",.24,-.66,.66,-1.26,1.29,-1.89],["c",.45,-.45,.9,-.81,1.92,-1.56],["c",1.29,-.93,1.89,-1.44,2.34,-1.98],["c",.87,-1.05,1.26,-2.19,1.2,-3.63],["c",-.06,-1.29,-.39,-2.31,-.96,-2.91],["c",-.36,-.33,-.72,-.51,-1.17,-.54],["c",-.84,-.03,-1.53,.42,-1.59,1.05],["c",-.03,.33,.12,.6,.57,1.14],["c",.45,.54,.54,.87,.42,1.41],["c",-.15,.63,-.54,1.11,-1.08,1.38],["c",-.63,.33,-1.2,.33,-1.83,0],["c",-.24,-.12,-.33,-.18,-.54,-.39],["c",-.18,-.18,-.27,-.3,-.36,-.51],["c",-.24,-.45,-.27,-.84,-.21,-1.38],["c",.12,-.75,.45,-1.41,1.02,-1.98],["c",.72,-.72,1.74,-1.17,2.85,-1.32],["z"]],w:10.764,h:14.97},3:{d:[["M",3.78,-14.97],["c",.3,-.03,1.41,0,1.83,.06],["c",2.22,.3,3.51,1.32,3.72,2.91],["c",.03,.33,.03,1.26,-.03,1.65],["c",-.12,.84,-.48,1.47,-1.05,1.77],["c",-.27,.15,-.36,.24,-.45,.39],["c",-.09,.21,-.09,.36,0,.57],["c",.09,.15,.18,.24,.51,.39],["c",.75,.42,1.23,1.14,1.41,2.13],["c",.06,.42,.06,1.35,0,1.71],["c",-.18,.81,-.48,1.38,-1.02,1.95],["c",-.75,.72,-1.8,1.2,-3.18,1.38],["c",-.42,.06,-1.56,.06,-1.95,0],["c",-1.89,-.33,-3.18,-1.29,-3.51,-2.64],["c",-.03,-.12,-.03,-.33,-.03,-.6],["c",0,-.36,0,-.42,.06,-.63],["c",.12,-.3,.27,-.51,.51,-.75],["c",.24,-.24,.45,-.39,.75,-.51],["c",.21,-.06,.27,-.06,.6,-.06],["c",.33,0,.39,0,.6,.06],["c",.3,.12,.51,.27,.75,.51],["c",.36,.33,.57,.75,.6,1.2],["c",0,.21,0,.27,-.06,.42],["c",-.09,.18,-.12,.24,-.54,.54],["c",-.51,.36,-.63,.54,-.6,.87],["c",.06,.54,.54,.9,1.38,.99],["c",.36,.06,.72,.03,.96,-.06],["c",.81,-.27,1.29,-1.23,1.44,-2.79],["c",.03,-.45,.03,-1.95,-.03,-2.37],["c",-.09,-.75,-.33,-1.23,-.75,-1.44],["c",-.33,-.18,-.45,-.18,-1.98,-.18],["c",-1.35,0,-1.41,0,-1.5,-.06],["c",-.18,-.12,-.24,-.39,-.12,-.6],["c",.12,-.15,.15,-.15,1.68,-.15],["c",1.5,0,1.62,0,1.89,-.15],["c",.18,-.09,.42,-.36,.54,-.57],["c",.18,-.42,.27,-.9,.3,-1.95],["c",.03,-1.2,-.06,-1.8,-.36,-2.37],["c",-.24,-.48,-.63,-.81,-1.14,-.96],["c",-.3,-.06,-1.08,-.06,-1.38,.03],["c",-.6,.15,-.9,.42,-.96,.84],["c",-.03,.3,.06,.45,.63,.84],["c",.33,.24,.42,.39,.45,.63],["c",.03,.72,-.57,1.5,-1.32,1.65],["c",-1.05,.27,-2.1,-.57,-2.1,-1.65],["c",0,-.45,.15,-.96,.39,-1.38],["c",.12,-.21,.54,-.63,.81,-.81],["c",.57,-.42,1.38,-.69,2.25,-.81],["z"]],w:9.735,h:14.967},4:{d:[["M",8.64,-14.94],["c",.27,-.09,.42,-.12,.54,-.03],["c",.09,.06,.15,.21,.15,.3],["c",-.03,.06,-1.92,2.31,-4.23,5.04],["c",-2.31,2.73,-4.23,4.98,-4.26,5.01],["c",-.03,.06,.12,.06,2.55,.06],["l",2.61,0],["l",0,-2.37],["c",0,-2.19,.03,-2.37,.06,-2.46],["c",.03,-.06,.21,-.18,.57,-.42],["c",1.08,-.72,1.38,-1.08,1.86,-2.16],["c",.12,-.3,.24,-.54,.27,-.57],["c",.12,-.12,.39,-.06,.45,.12],["c",.06,.09,.06,.57,.06,3.96],["l",0,3.9],["l",1.08,0],["c",1.05,0,1.11,0,1.2,.06],["c",.24,.15,.24,.54,0,.69],["c",-.09,.06,-.15,.06,-1.2,.06],["l",-1.08,0],["l",0,.33],["c",0,.57,.09,1.11,.3,1.53],["c",.36,.75,.93,1.17,1.68,1.26],["c",.3,.03,.39,.09,.39,.3],["c",0,.15,-.03,.18,-.09,.24],["c",-.06,.06,-.09,.06,-.48,.06],["c",-.42,0,-.69,-.03,-2.1,-.24],["c",-.9,-.15,-1.77,-.15,-2.67,0],["c",-1.41,.21,-1.68,.24,-2.1,.24],["c",-.39,0,-.42,0,-.48,-.06],["c",-.06,-.06,-.06,-.09,-.06,-.24],["c",0,-.21,.06,-.27,.36,-.3],["c",.75,-.09,1.32,-.51,1.68,-1.26],["c",.21,-.42,.3,-.96,.3,-1.53],["l",0,-.33],["l",-2.7,0],["c",-2.91,0,-2.85,0,-3.09,-.15],["c",-.18,-.12,-.3,-.39,-.27,-.54],["c",.03,-.06,.18,-.24,.33,-.45],["c",.75,-.9,1.59,-2.07,2.13,-3.03],["c",.33,-.54,.84,-1.62,1.05,-2.16],["c",.57,-1.41,.84,-2.64,.9,-4.05],["c",.03,-.63,.06,-.72,.24,-.81],["l",.12,-.06],["l",.45,.12],["c",.66,.18,1.02,.24,1.47,.27],["c",.6,.03,1.23,-.09,2.01,-.33],["z"]],w:11.795,h:14.994},5:{d:[["M",1.02,-14.94],["c",.12,-.09,.03,-.09,1.08,.06],["c",2.49,.36,4.35,.36,6.96,-.06],["c",.57,-.09,.66,-.06,.81,.06],["c",.15,.18,.12,.24,-.15,.51],["c",-1.29,1.26,-3.24,2.04,-5.58,2.31],["c",-.6,.09,-1.2,.12,-1.71,.12],["c",-.39,0,-.45,0,-.57,.06],["c",-.09,.06,-.15,.12,-.21,.21],["l",-.06,.12],["l",0,1.65],["l",0,1.65],["l",.21,-.21],["c",.66,-.57,1.41,-.96,2.19,-1.14],["c",.33,-.06,1.41,-.06,1.95,0],["c",2.61,.36,4.02,1.74,4.26,4.14],["c",.03,.45,.03,1.08,-.03,1.44],["c",-.18,1.02,-.78,2.01,-1.59,2.7],["c",-.72,.57,-1.62,1.02,-2.49,1.2],["c",-1.38,.27,-3.03,.06,-4.2,-.54],["c",-1.08,-.54,-1.71,-1.32,-1.86,-2.28],["c",-.09,-.69,.09,-1.29,.57,-1.74],["c",.24,-.24,.45,-.39,.75,-.51],["c",.21,-.06,.27,-.06,.6,-.06],["c",.33,0,.39,0,.6,.06],["c",.3,.12,.51,.27,.75,.51],["c",.36,.33,.57,.75,.6,1.2],["c",0,.21,0,.27,-.06,.42],["c",-.09,.18,-.12,.24,-.54,.54],["c",-.18,.12,-.36,.3,-.42,.33],["c",-.36,.42,-.18,.99,.36,1.26],["c",.51,.27,1.47,.36,2.01,.27],["c",.93,-.21,1.47,-1.17,1.65,-2.91],["c",.06,-.45,.06,-1.89,0,-2.31],["c",-.15,-1.2,-.51,-2.1,-1.05,-2.55],["c",-.21,-.18,-.54,-.36,-.81,-.39],["c",-.3,-.06,-.84,-.03,-1.26,.06],["c",-.93,.18,-1.65,.6,-2.16,1.2],["c",-.15,.21,-.27,.3,-.39,.3],["c",-.15,0,-.3,-.09,-.36,-.18],["c",-.06,-.09,-.06,-.15,-.06,-3.66],["c",0,-3.39,0,-3.57,.06,-3.66],["c",.03,-.06,.09,-.15,.15,-.18],["z"]],w:10.212,h:14.997},6:{d:[["M",4.98,-14.97],["c",.36,-.03,1.2,0,1.59,.06],["c",.9,.15,1.68,.51,2.25,1.05],["c",.57,.51,.87,1.23,.84,1.98],["c",-.03,.51,-.21,.9,-.6,1.26],["c",-.24,.24,-.45,.39,-.75,.51],["c",-.21,.06,-.27,.06,-.6,.06],["c",-.33,0,-.39,0,-.6,-.06],["c",-.3,-.12,-.51,-.27,-.75,-.51],["c",-.39,-.36,-.57,-.78,-.57,-1.26],["c",0,-.27,0,-.3,.09,-.42],["c",.03,-.09,.18,-.21,.3,-.3],["c",.12,-.09,.3,-.21,.39,-.27],["c",.09,-.06,.21,-.18,.27,-.24],["c",.06,-.12,.09,-.15,.09,-.33],["c",0,-.18,-.03,-.24,-.09,-.36],["c",-.24,-.39,-.75,-.6,-1.38,-.57],["c",-.54,.03,-.9,.18,-1.23,.48],["c",-.81,.72,-1.08,2.16,-.96,5.37],["l",0,.63],["l",.3,-.12],["c",.78,-.27,1.29,-.33,2.1,-.27],["c",1.47,.12,2.49,.54,3.27,1.29],["c",.48,.51,.81,1.11,.96,1.89],["c",.06,.27,.06,.42,.06,.93],["c",0,.54,0,.69,-.06,.96],["c",-.15,.78,-.48,1.38,-.96,1.89],["c",-.54,.51,-1.17,.87,-1.98,1.08],["c",-1.14,.3,-2.4,.33,-3.24,.03],["c",-1.5,-.48,-2.64,-1.89,-3.27,-4.02],["c",-.36,-1.23,-.51,-2.82,-.42,-4.08],["c",.3,-3.66,2.28,-6.3,4.95,-6.66],["z"],["m",.66,7.41],["c",-.27,-.09,-.81,-.12,-1.08,-.06],["c",-.72,.18,-1.08,.69,-1.23,1.71],["c",-.06,.54,-.06,3,0,3.54],["c",.18,1.26,.72,1.77,1.8,1.74],["c",.39,-.03,.63,-.09,.9,-.27],["c",.66,-.42,.9,-1.32,.9,-3.24],["c",0,-2.22,-.36,-3.12,-1.29,-3.42],["z"]],w:9.956,h:14.982},7:{d:[["M",.21,-14.97],["c",.21,-.06,.45,0,.54,.15],["c",.06,.09,.06,.15,.06,.39],["c",0,.24,0,.33,.06,.42],["c",.06,.12,.21,.24,.27,.24],["c",.03,0,.12,-.12,.24,-.21],["c",.96,-1.2,2.58,-1.35,3.99,-.42],["c",.15,.12,.42,.3,.54,.45],["c",.48,.39,.81,.57,1.29,.6],["c",.69,.03,1.5,-.3,2.13,-.87],["c",.09,-.09,.27,-.3,.39,-.45],["c",.12,-.15,.24,-.27,.3,-.3],["c",.18,-.06,.39,.03,.51,.21],["c",.06,.18,.06,.24,-.27,.72],["c",-.18,.24,-.54,.78,-.78,1.17],["c",-2.37,3.54,-3.54,6.27,-3.87,9],["c",-.03,.33,-.03,.66,-.03,1.26],["c",0,.9,0,1.08,.15,1.89],["c",.06,.45,.06,.48,.03,.6],["c",-.06,.09,-.21,.21,-.3,.21],["c",-.03,0,-.27,-.06,-.54,-.15],["c",-.84,-.27,-1.11,-.3,-1.65,-.3],["c",-.57,0,-.84,.03,-1.56,.27],["c",-.6,.18,-.69,.21,-.81,.15],["c",-.12,-.06,-.21,-.18,-.21,-.3],["c",0,-.15,.6,-1.44,1.2,-2.61],["c",1.14,-2.22,2.73,-4.68,5.1,-8.01],["c",.21,-.27,.36,-.48,.33,-.48],["c",0,0,-.12,.06,-.27,.12],["c",-.54,.3,-.99,.39,-1.56,.39],["c",-.75,.03,-1.2,-.18,-1.83,-.75],["c",-.99,-.9,-1.83,-1.17,-2.31,-.72],["c",-.18,.15,-.36,.51,-.45,.84],["c",-.06,.24,-.06,.33,-.09,1.98],["c",0,1.62,-.03,1.74,-.06,1.8],["c",-.15,.24,-.54,.24,-.69,0],["c",-.06,-.09,-.06,-.15,-.06,-3.57],["c",0,-3.42,0,-3.48,.06,-3.57],["c",.03,-.06,.09,-.12,.15,-.15],["z"]],w:10.561,h:15.093},8:{d:[["M",4.98,-14.97],["c",.33,-.03,1.02,-.03,1.32,0],["c",1.32,.12,2.49,.6,3.21,1.32],["c",.39,.39,.66,.81,.78,1.29],["c",.09,.36,.09,1.08,0,1.44],["c",-.21,.84,-.66,1.59,-1.59,2.55],["l",-.3,.3],["l",.27,.18],["c",1.47,.93,2.31,2.31,2.25,3.75],["c",-.03,.75,-.24,1.35,-.63,1.95],["c",-.45,.66,-1.02,1.14,-1.83,1.53],["c",-1.8,.87,-4.2,.87,-6,.03],["c",-1.62,-.78,-2.52,-2.16,-2.46,-3.66],["c",.06,-.99,.54,-1.77,1.8,-2.97],["c",.54,-.51,.54,-.54,.48,-.57],["c",-.39,-.27,-.96,-.78,-1.2,-1.14],["c",-.75,-1.11,-.87,-2.4,-.3,-3.6],["c",.69,-1.35,2.25,-2.25,4.2,-2.4],["z"],["m",1.53,.69],["c",-.42,-.09,-1.11,-.12,-1.38,-.06],["c",-.3,.06,-.6,.18,-.81,.3],["c",-.21,.12,-.6,.51,-.72,.72],["c",-.51,.87,-.42,1.89,.21,2.52],["c",.21,.21,.36,.3,1.95,1.23],["c",.96,.54,1.74,.99,1.77,1.02],["c",.09,0,.63,-.6,.99,-1.11],["c",.21,-.36,.48,-.87,.57,-1.23],["c",.06,-.24,.06,-.36,.06,-.72],["c",0,-.45,-.03,-.66,-.15,-.99],["c",-.39,-.81,-1.29,-1.44,-2.49,-1.68],["z"],["m",-1.44,8.07],["l",-1.89,-1.08],["c",-.03,0,-.18,.15,-.39,.33],["c",-1.2,1.08,-1.65,1.95,-1.59,3],["c",.09,1.59,1.35,2.85,3.21,3.24],["c",.33,.06,.45,.06,.93,.06],["c",.63,0,.81,-.03,1.29,-.27],["c",.9,-.42,1.47,-1.41,1.41,-2.4],["c",-.06,-.66,-.39,-1.29,-.9,-1.65],["c",-.12,-.09,-1.05,-.63,-2.07,-1.23],["z"]],w:10.926,h:14.989},9:{d:[["M",4.23,-14.97],["c",.42,-.03,1.29,0,1.62,.06],["c",.51,.12,.93,.3,1.38,.57],["c",1.53,1.02,2.52,3.24,2.73,5.94],["c",.18,2.55,-.48,4.98,-1.83,6.57],["c",-1.05,1.26,-2.4,1.89,-3.93,1.83],["c",-1.23,-.06,-2.31,-.45,-3.03,-1.14],["c",-.57,-.51,-.87,-1.23,-.84,-1.98],["c",.03,-.51,.21,-.9,.6,-1.26],["c",.24,-.24,.45,-.39,.75,-.51],["c",.21,-.06,.27,-.06,.6,-.06],["c",.33,0,.39,0,.6,.06],["c",.3,.12,.51,.27,.75,.51],["c",.39,.36,.57,.78,.57,1.26],["c",0,.27,0,.3,-.09,.42],["c",-.03,.09,-.18,.21,-.3,.3],["c",-.12,.09,-.3,.21,-.39,.27],["c",-.09,.06,-.21,.18,-.27,.24],["c",-.06,.12,-.06,.15,-.06,.33],["c",0,.18,0,.24,.06,.36],["c",.24,.39,.75,.6,1.38,.57],["c",.54,-.03,.9,-.18,1.23,-.48],["c",.81,-.72,1.08,-2.16,.96,-5.37],["l",0,-.63],["l",-.3,.12],["c",-.78,.27,-1.29,.33,-2.1,.27],["c",-1.47,-.12,-2.49,-.54,-3.27,-1.29],["c",-.48,-.51,-.81,-1.11,-.96,-1.89],["c",-.06,-.27,-.06,-.42,-.06,-.96],["c",0,-.51,0,-.66,.06,-.93],["c",.15,-.78,.48,-1.38,.96,-1.89],["c",.15,-.12,.33,-.27,.42,-.36],["c",.69,-.51,1.62,-.81,2.76,-.93],["z"],["m",1.17,.66],["c",-.21,-.06,-.57,-.06,-.81,-.03],["c",-.78,.12,-1.26,.69,-1.41,1.74],["c",-.12,.63,-.15,1.95,-.09,2.79],["c",.12,1.71,.63,2.4,1.77,2.46],["c",1.08,.03,1.62,-.48,1.8,-1.74],["c",.06,-.54,.06,-3,0,-3.54],["c",-.15,-1.05,-.51,-1.53,-1.26,-1.68],["z"]],w:9.959,h:14.986},"rests.multimeasure":{d:[["M",0,-4],["l",0,16],["l",1,0],["l",0,-5],["l",40,0],["l",0,5],["l",1,0],["l",0,-16],["l",-1,0],["l",0,5],["l",-40,0],["l",0,-5],["z"]],w:42,h:18},"rests.whole":{d:[["M",.06,.03],["l",.09,-.06],["l",5.46,0],["l",5.49,0],["l",.09,.06],["l",.06,.09],["l",0,2.19],["l",0,2.19],["l",-.06,.09],["l",-.09,.06],["l",-5.49,0],["l",-5.46,0],["l",-.09,-.06],["l",-.06,-.09],["l",0,-2.19],["l",0,-2.19],["z"]],w:11.25,h:4.68},"rests.half":{d:[["M",.06,-4.62],["l",.09,-.06],["l",5.46,0],["l",5.49,0],["l",.09,.06],["l",.06,.09],["l",0,2.19],["l",0,2.19],["l",-.06,.09],["l",-.09,.06],["l",-5.49,0],["l",-5.46,0],["l",-.09,-.06],["l",-.06,-.09],["l",0,-2.19],["l",0,-2.19],["z"]],w:11.25,h:4.68},"rests.quarter":{d:[["M",1.89,-11.82],["c",.12,-.06,.24,-.06,.36,-.03],["c",.09,.06,4.74,5.58,4.86,5.82],["c",.21,.39,.15,.78,-.15,1.26],["c",-.24,.33,-.72,.81,-1.62,1.56],["c",-.45,.36,-.87,.75,-.96,.84],["c",-.93,.99,-1.14,2.49,-.6,3.63],["c",.18,.39,.27,.48,1.32,1.68],["c",1.92,2.25,1.83,2.16,1.83,2.34],["c",0,.18,-.18,.36,-.36,.39],["c",-.15,0,-.27,-.06,-.48,-.27],["c",-.75,-.75,-2.46,-1.29,-3.39,-1.08],["c",-.45,.09,-.69,.27,-.9,.69],["c",-.12,.3,-.21,.66,-.24,1.14],["c",-.03,.66,.09,1.35,.3,2.01],["c",.15,.42,.24,.66,.45,.96],["c",.18,.24,.18,.33,.03,.42],["c",-.12,.06,-.18,.03,-.45,-.3],["c",-1.08,-1.38,-2.07,-3.36,-2.4,-4.83],["c",-.27,-1.05,-.15,-1.77,.27,-2.07],["c",.21,-.12,.42,-.15,.87,-.15],["c",.87,.06,2.1,.39,3.3,.9],["l",.39,.18],["l",-1.65,-1.95],["c",-2.52,-2.97,-2.61,-3.09,-2.7,-3.27],["c",-.09,-.24,-.12,-.48,-.03,-.75],["c",.15,-.48,.57,-.96,1.83,-2.01],["c",.45,-.36,.84,-.72,.93,-.78],["c",.69,-.75,1.02,-1.8,.9,-2.79],["c",-.06,-.33,-.21,-.84,-.39,-1.11],["c",-.09,-.15,-.45,-.6,-.81,-1.05],["c",-.36,-.42,-.69,-.81,-.72,-.87],["c",-.09,-.18,0,-.42,.21,-.51],["z"]],w:7.888,h:21.435},"rests.8th":{d:[["M",1.68,-6.12],["c",.66,-.09,1.23,.09,1.68,.51],["c",.27,.3,.39,.54,.57,1.26],["c",.09,.33,.18,.66,.21,.72],["c",.12,.27,.33,.45,.6,.48],["c",.12,0,.18,0,.33,-.09],["c",.39,-.18,1.32,-1.29,1.68,-1.98],["c",.09,-.21,.24,-.3,.39,-.3],["c",.12,0,.27,.09,.33,.18],["c",.03,.06,-.27,1.11,-1.86,6.42],["c",-1.02,3.48,-1.89,6.39,-1.92,6.42],["c",0,.03,-.12,.12,-.24,.15],["c",-.18,.09,-.21,.09,-.45,.09],["c",-.24,0,-.3,0,-.48,-.06],["c",-.09,-.06,-.21,-.12,-.21,-.15],["c",-.06,-.03,.15,-.57,1.68,-4.92],["c",.96,-2.67,1.74,-4.89,1.71,-4.89],["l",-.51,.15],["c",-1.08,.36,-1.74,.48,-2.55,.48],["c",-.66,0,-.84,-.03,-1.32,-.27],["c",-1.32,-.63,-1.77,-2.16,-1.02,-3.3],["c",.33,-.45,.84,-.81,1.38,-.9],["z"]],w:7.534,h:13.883},"rests.16th":{d:[["M",3.33,-6.12],["c",.66,-.09,1.23,.09,1.68,.51],["c",.27,.3,.39,.54,.57,1.26],["c",.09,.33,.18,.66,.21,.72],["c",.15,.39,.57,.57,.87,.42],["c",.39,-.18,1.2,-1.23,1.62,-2.07],["c",.06,-.15,.24,-.24,.36,-.24],["c",.12,0,.27,.09,.33,.18],["c",.03,.06,-.45,1.86,-2.67,10.17],["c",-1.5,5.55,-2.73,10.14,-2.76,10.17],["c",-.03,.03,-.12,.12,-.24,.15],["c",-.18,.09,-.21,.09,-.45,.09],["c",-.24,0,-.3,0,-.48,-.06],["c",-.09,-.06,-.21,-.12,-.21,-.15],["c",-.06,-.03,.12,-.57,1.44,-4.92],["c",.81,-2.67,1.47,-4.86,1.47,-4.89],["c",-.03,0,-.27,.06,-.54,.15],["c",-1.08,.36,-1.77,.48,-2.58,.48],["c",-.66,0,-.84,-.03,-1.32,-.27],["c",-1.32,-.63,-1.77,-2.16,-1.02,-3.3],["c",.72,-1.05,2.22,-1.23,3.06,-.42],["c",.3,.33,.42,.6,.6,1.38],["c",.09,.45,.21,.78,.33,.9],["c",.09,.09,.27,.18,.45,.21],["c",.12,0,.18,0,.33,-.09],["c",.33,-.15,1.02,-.93,1.41,-1.59],["c",.12,-.21,.18,-.39,.39,-1.08],["c",.66,-2.1,1.17,-3.84,1.17,-3.87],["c",0,0,-.21,.06,-.42,.15],["c",-.51,.15,-1.2,.33,-1.68,.42],["c",-.33,.06,-.51,.06,-.96,.06],["c",-.66,0,-.84,-.03,-1.32,-.27],["c",-1.32,-.63,-1.77,-2.16,-1.02,-3.3],["c",.33,-.45,.84,-.81,1.38,-.9],["z"]],w:9.724,h:21.383},"rests.32nd":{d:[["M",4.23,-13.62],["c",.66,-.09,1.23,.09,1.68,.51],["c",.27,.3,.39,.54,.57,1.26],["c",.09,.33,.18,.66,.21,.72],["c",.12,.27,.33,.45,.6,.48],["c",.12,0,.18,0,.27,-.06],["c",.33,-.21,.99,-1.11,1.44,-1.98],["c",.09,-.24,.21,-.33,.39,-.33],["c",.12,0,.27,.09,.33,.18],["c",.03,.06,-.57,2.67,-3.21,13.89],["c",-1.8,7.62,-3.3,13.89,-3.3,13.92],["c",-.03,.06,-.12,.12,-.24,.18],["c",-.21,.09,-.24,.09,-.48,.09],["c",-.24,0,-.3,0,-.48,-.06],["c",-.09,-.06,-.21,-.12,-.21,-.15],["c",-.06,-.03,.09,-.57,1.23,-4.92],["c",.69,-2.67,1.26,-4.86,1.29,-4.89],["c",0,-.03,-.12,-.03,-.48,.12],["c",-1.17,.39,-2.22,.57,-3,.54],["c",-.42,-.03,-.75,-.12,-1.11,-.3],["c",-1.32,-.63,-1.77,-2.16,-1.02,-3.3],["c",.72,-1.05,2.22,-1.23,3.06,-.42],["c",.3,.33,.42,.6,.6,1.38],["c",.09,.45,.21,.78,.33,.9],["c",.12,.09,.3,.18,.48,.21],["c",.12,0,.18,0,.3,-.09],["c",.42,-.21,1.29,-1.29,1.56,-1.89],["c",.03,-.12,1.23,-4.59,1.23,-4.65],["c",0,-.03,-.18,.03,-.39,.12],["c",-.63,.18,-1.2,.36,-1.74,.45],["c",-.39,.06,-.54,.06,-1.02,.06],["c",-.66,0,-.84,-.03,-1.32,-.27],["c",-1.32,-.63,-1.77,-2.16,-1.02,-3.3],["c",.72,-1.05,2.22,-1.23,3.06,-.42],["c",.3,.33,.42,.6,.6,1.38],["c",.09,.45,.21,.78,.33,.9],["c",.18,.18,.51,.27,.72,.15],["c",.3,-.12,.69,-.57,1.08,-1.17],["c",.42,-.6,.39,-.51,1.05,-3.03],["c",.33,-1.26,.6,-2.31,.6,-2.34],["c",0,0,-.21,.03,-.45,.12],["c",-.57,.18,-1.14,.33,-1.62,.42],["c",-.33,.06,-.51,.06,-.96,.06],["c",-.66,0,-.84,-.03,-1.32,-.27],["c",-1.32,-.63,-1.77,-2.16,-1.02,-3.3],["c",.33,-.45,.84,-.81,1.38,-.9],["z"]],w:11.373,h:28.883},"rests.64th":{d:[["M",5.13,-13.62],["c",.66,-.09,1.23,.09,1.68,.51],["c",.27,.3,.39,.54,.57,1.26],["c",.15,.63,.21,.81,.33,.96],["c",.18,.21,.54,.3,.75,.18],["c",.24,-.12,.63,-.66,1.08,-1.56],["c",.33,-.66,.39,-.72,.6,-.72],["c",.12,0,.27,.09,.33,.18],["c",.03,.06,-.69,3.66,-3.54,17.64],["c",-1.95,9.66,-3.57,17.61,-3.57,17.64],["c",-.03,.06,-.12,.12,-.24,.18],["c",-.21,.09,-.24,.09,-.48,.09],["c",-.24,0,-.3,0,-.48,-.06],["c",-.09,-.06,-.21,-.12,-.21,-.15],["c",-.06,-.03,.06,-.57,1.05,-4.95],["c",.6,-2.7,1.08,-4.89,1.08,-4.92],["c",0,0,-.24,.06,-.51,.15],["c",-.66,.24,-1.2,.36,-1.77,.48],["c",-.42,.06,-.57,.06,-1.05,.06],["c",-.69,0,-.87,-.03,-1.35,-.27],["c",-1.32,-.63,-1.77,-2.16,-1.02,-3.3],["c",.72,-1.05,2.22,-1.23,3.06,-.42],["c",.3,.33,.42,.6,.6,1.38],["c",.09,.45,.21,.78,.33,.9],["c",.09,.09,.27,.18,.45,.21],["c",.21,.03,.39,-.09,.72,-.42],["c",.45,-.45,1.02,-1.26,1.17,-1.65],["c",.03,-.09,.27,-1.14,.54,-2.34],["c",.27,-1.2,.48,-2.19,.51,-2.22],["c",0,-.03,-.09,-.03,-.48,.12],["c",-1.17,.39,-2.22,.57,-3,.54],["c",-.42,-.03,-.75,-.12,-1.11,-.3],["c",-1.32,-.63,-1.77,-2.16,-1.02,-3.3],["c",.36,-.54,.96,-.87,1.65,-.93],["c",.54,-.03,1.02,.15,1.41,.54],["c",.27,.3,.39,.54,.57,1.26],["c",.09,.33,.18,.66,.21,.72],["c",.15,.39,.57,.57,.9,.42],["c",.36,-.18,1.2,-1.26,1.47,-1.89],["c",.03,-.09,.3,-1.2,.57,-2.43],["l",.51,-2.28],["l",-.54,.18],["c",-1.11,.36,-1.8,.48,-2.61,.48],["c",-.66,0,-.84,-.03,-1.32,-.27],["c",-1.32,-.63,-1.77,-2.16,-1.02,-3.3],["c",.36,-.54,.96,-.87,1.65,-.93],["c",.54,-.03,1.02,.15,1.41,.54],["c",.27,.3,.39,.54,.57,1.26],["c",.15,.63,.21,.81,.33,.96],["c",.21,.21,.54,.3,.75,.18],["c",.36,-.18,.93,-.93,1.29,-1.68],["c",.12,-.24,.18,-.48,.63,-2.55],["l",.51,-2.31],["c",0,-.03,-.18,.03,-.39,.12],["c",-1.14,.36,-2.1,.54,-2.82,.51],["c",-.42,-.03,-.75,-.12,-1.11,-.3],["c",-1.32,-.63,-1.77,-2.16,-1.02,-3.3],["c",.33,-.45,.84,-.81,1.38,-.9],["z"]],w:12.453,h:36.383},"rests.128th":{d:[["M",6.03,-21.12],["c",.66,-.09,1.23,.09,1.68,.51],["c",.27,.3,.39,.54,.57,1.26],["c",.09,.33,.18,.66,.21,.72],["c",.12,.27,.33,.45,.6,.48],["c",.21,0,.33,-.06,.54,-.36],["c",.15,-.21,.54,-.93,.78,-1.47],["c",.15,-.33,.18,-.39,.3,-.48],["c",.18,-.09,.45,0,.51,.15],["c",.03,.09,-7.11,42.75,-7.17,42.84],["c",-.03,.03,-.15,.09,-.24,.15],["c",-.18,.06,-.24,.06,-.45,.06],["c",-.24,0,-.3,0,-.48,-.06],["c",-.09,-.06,-.21,-.12,-.21,-.15],["c",-.06,-.03,.03,-.57,.84,-4.98],["c",.51,-2.7,.93,-4.92,.9,-4.92],["c",0,0,-.15,.06,-.36,.12],["c",-.78,.27,-1.62,.48,-2.31,.57],["c",-.15,.03,-.54,.03,-.81,.03],["c",-.66,0,-.84,-.03,-1.32,-.27],["c",-1.32,-.63,-1.77,-2.16,-1.02,-3.3],["c",.36,-.54,.96,-.87,1.65,-.93],["c",.54,-.03,1.02,.15,1.41,.54],["c",.27,.3,.39,.54,.57,1.26],["c",.09,.33,.18,.66,.21,.72],["c",.12,.27,.33,.45,.63,.48],["c",.12,0,.18,0,.3,-.09],["c",.42,-.21,1.14,-1.11,1.5,-1.83],["c",.12,-.27,.12,-.27,.54,-2.52],["c",.24,-1.23,.42,-2.25,.39,-2.25],["c",0,0,-.24,.06,-.51,.18],["c",-1.26,.39,-2.25,.57,-3.06,.54],["c",-.42,-.03,-.75,-.12,-1.11,-.3],["c",-1.32,-.63,-1.77,-2.16,-1.02,-3.3],["c",.36,-.54,.96,-.87,1.65,-.93],["c",.54,-.03,1.02,.15,1.41,.54],["c",.27,.3,.39,.54,.57,1.26],["c",.15,.63,.21,.81,.33,.96],["c",.18,.21,.51,.3,.75,.18],["c",.36,-.15,1.05,-.99,1.41,-1.77],["l",.15,-.3],["l",.42,-2.25],["c",.21,-1.26,.42,-2.28,.39,-2.28],["l",-.51,.15],["c",-1.11,.39,-1.89,.51,-2.7,.51],["c",-.66,0,-.84,-.03,-1.32,-.27],["c",-1.32,-.63,-1.77,-2.16,-1.02,-3.3],["c",.36,-.54,.96,-.87,1.65,-.93],["c",.54,-.03,1.02,.15,1.41,.54],["c",.27,.3,.39,.54,.57,1.26],["c",.15,.63,.21,.81,.33,.96],["c",.18,.18,.48,.27,.72,.21],["c",.33,-.12,1.14,-1.26,1.41,-1.95],["c",0,-.09,.21,-1.11,.45,-2.34],["c",.21,-1.2,.39,-2.22,.39,-2.28],["c",.03,-.03,0,-.03,-.45,.12],["c",-.57,.18,-1.2,.33,-1.71,.42],["c",-.3,.06,-.51,.06,-.93,.06],["c",-.66,0,-.84,-.03,-1.32,-.27],["c",-1.32,-.63,-1.77,-2.16,-1.02,-3.3],["c",.36,-.54,.96,-.87,1.65,-.93],["c",.54,-.03,1.02,.15,1.41,.54],["c",.27,.3,.39,.54,.57,1.26],["c",.09,.33,.18,.66,.21,.72],["c",.12,.27,.33,.45,.6,.48],["c",.18,0,.36,-.09,.57,-.33],["c",.33,-.36,.78,-1.14,.93,-1.56],["c",.03,-.12,.24,-1.2,.45,-2.4],["c",.24,-1.2,.42,-2.22,.42,-2.28],["c",.03,-.03,0,-.03,-.39,.09],["c",-1.05,.36,-1.8,.48,-2.58,.48],["c",-.63,0,-.84,-.03,-1.29,-.27],["c",-1.32,-.63,-1.77,-2.16,-1.02,-3.3],["c",.33,-.45,.84,-.81,1.38,-.9],["z"]],w:12.992,h:43.883},"accidentals.sharp":{d:[["M",5.73,-11.19],["c",.21,-.12,.54,-.03,.66,.24],["c",.06,.12,.06,.21,.06,2.31],["c",0,1.23,0,2.22,.03,2.22],["c",0,0,.27,-.12,.6,-.24],["c",.69,-.27,.78,-.3,.96,-.15],["c",.21,.15,.21,.18,.21,1.38],["c",0,1.02,0,1.11,-.06,1.2],["c",-.03,.06,-.09,.12,-.12,.15],["c",-.06,.03,-.42,.21,-.84,.36],["l",-.75,.33],["l",-.03,2.43],["c",0,1.32,0,2.43,.03,2.43],["c",0,0,.27,-.12,.6,-.24],["c",.69,-.27,.78,-.3,.96,-.15],["c",.21,.15,.21,.18,.21,1.38],["c",0,1.02,0,1.11,-.06,1.2],["c",-.03,.06,-.09,.12,-.12,.15],["c",-.06,.03,-.42,.21,-.84,.36],["l",-.75,.33],["l",-.03,2.52],["c",0,2.28,-.03,2.55,-.06,2.64],["c",-.21,.36,-.72,.36,-.93,0],["c",-.03,-.09,-.06,-.33,-.06,-2.43],["l",0,-2.31],["l",-1.29,.51],["l",-1.26,.51],["l",0,2.43],["c",0,2.58,0,2.52,-.15,2.67],["c",-.06,.09,-.27,.18,-.36,.18],["c",-.12,0,-.33,-.09,-.39,-.18],["c",-.15,-.15,-.15,-.09,-.15,-2.43],["c",0,-1.23,0,-2.22,-.03,-2.22],["c",0,0,-.27,.12,-.6,.24],["c",-.69,.27,-.78,.3,-.96,.15],["c",-.21,-.15,-.21,-.18,-.21,-1.38],["c",0,-1.02,0,-1.11,.06,-1.2],["c",.03,-.06,.09,-.12,.12,-.15],["c",.06,-.03,.42,-.21,.84,-.36],["l",.78,-.33],["l",0,-2.43],["c",0,-1.32,0,-2.43,-.03,-2.43],["c",0,0,-.27,.12,-.6,.24],["c",-.69,.27,-.78,.3,-.96,.15],["c",-.21,-.15,-.21,-.18,-.21,-1.38],["c",0,-1.02,0,-1.11,.06,-1.2],["c",.03,-.06,.09,-.12,.12,-.15],["c",.06,-.03,.42,-.21,.84,-.36],["l",.78,-.33],["l",0,-2.52],["c",0,-2.28,.03,-2.55,.06,-2.64],["c",.21,-.36,.72,-.36,.93,0],["c",.03,.09,.06,.33,.06,2.43],["l",.03,2.31],["l",1.26,-.51],["l",1.26,-.51],["l",0,-2.43],["c",0,-2.28,0,-2.43,.06,-2.55],["c",.06,-.12,.12,-.18,.27,-.24],["z"],["m",-.33,10.65],["l",0,-2.43],["l",-1.29,.51],["l",-1.26,.51],["l",0,2.46],["l",0,2.43],["l",.09,-.03],["c",.06,-.03,.63,-.27,1.29,-.51],["l",1.17,-.48],["l",0,-2.46],["z"]],w:8.25,h:22.462},"accidentals.halfsharp":{d:[["M",2.43,-10.05],["c",.21,-.12,.54,-.03,.66,.24],["c",.06,.12,.06,.21,.06,2.01],["c",0,1.05,0,1.89,.03,1.89],["l",.72,-.48],["c",.69,-.48,.69,-.51,.87,-.51],["c",.15,0,.18,.03,.27,.09],["c",.21,.15,.21,.18,.21,1.41],["c",0,1.11,-.03,1.14,-.09,1.23],["c",-.03,.03,-.48,.39,-1.02,.75],["l",-.99,.66],["l",0,2.37],["c",0,1.32,0,2.37,.03,2.37],["l",.72,-.48],["c",.69,-.48,.69,-.51,.87,-.51],["c",.15,0,.18,.03,.27,.09],["c",.21,.15,.21,.18,.21,1.41],["c",0,1.11,-.03,1.14,-.09,1.23],["c",-.03,.03,-.48,.39,-1.02,.75],["l",-.99,.66],["l",0,2.25],["c",0,1.95,0,2.28,-.06,2.37],["c",-.06,.12,-.12,.21,-.24,.27],["c",-.27,.12,-.54,.03,-.69,-.24],["c",-.06,-.12,-.06,-.21,-.06,-2.01],["c",0,-1.05,0,-1.89,-.03,-1.89],["l",-.72,.48],["c",-.69,.48,-.69,.48,-.87,.48],["c",-.15,0,-.18,0,-.27,-.06],["c",-.21,-.15,-.21,-.18,-.21,-1.41],["c",0,-1.11,.03,-1.14,.09,-1.23],["c",.03,-.03,.48,-.39,1.02,-.75],["l",.99,-.66],["l",0,-2.37],["c",0,-1.32,0,-2.37,-.03,-2.37],["l",-.72,.48],["c",-.69,.48,-.69,.48,-.87,.48],["c",-.15,0,-.18,0,-.27,-.06],["c",-.21,-.15,-.21,-.18,-.21,-1.41],["c",0,-1.11,.03,-1.14,.09,-1.23],["c",.03,-.03,.48,-.39,1.02,-.75],["l",.99,-.66],["l",0,-2.25],["c",0,-2.13,0,-2.28,.06,-2.4],["c",.06,-.12,.12,-.18,.27,-.24],["z"]],w:5.25,h:20.174},"accidentals.nat":{d:[["M",.21,-11.4],["c",.24,-.06,.78,0,.99,.15],["c",.03,.03,.03,.48,0,2.61],["c",-.03,1.44,-.03,2.61,-.03,2.61],["c",0,.03,.75,-.09,1.68,-.24],["c",.96,-.18,1.71,-.27,1.74,-.27],["c",.15,.03,.27,.15,.36,.3],["l",.06,.12],["l",.09,8.67],["c",.09,6.96,.12,8.67,.09,8.67],["c",-.03,.03,-.12,.06,-.21,.09],["c",-.24,.09,-.72,.09,-.96,0],["c",-.09,-.03,-.18,-.06,-.21,-.09],["c",-.03,-.03,-.03,-.48,0,-2.61],["c",.03,-1.44,.03,-2.61,.03,-2.61],["c",0,-.03,-.75,.09,-1.68,.24],["c",-.96,.18,-1.71,.27,-1.74,.27],["c",-.15,-.03,-.27,-.15,-.36,-.3],["l",-.06,-.15],["l",-.09,-7.53],["c",-.06,-4.14,-.09,-8.04,-.12,-8.67],["l",0,-1.11],["l",.15,-.06],["c",.09,-.03,.21,-.06,.27,-.09],["z"],["m",3.75,8.4],["c",0,-.33,0,-.42,-.03,-.42],["c",-.12,0,-2.79,.45,-2.79,.48],["c",-.03,0,-.09,6.3,-.09,6.33],["c",.03,0,2.79,-.45,2.82,-.48],["c",0,0,.09,-4.53,.09,-5.91],["z"]],w:5.4,h:22.8},"accidentals.flat":{d:[["M",-.36,-14.07],["c",.33,-.06,.87,0,1.08,.15],["c",.06,.03,.06,.36,-.03,5.25],["c",-.06,2.85,-.09,5.19,-.09,5.19],["c",0,.03,.12,-.03,.24,-.12],["c",.63,-.42,1.41,-.66,2.19,-.72],["c",.81,-.03,1.47,.21,2.04,.78],["c",.57,.54,.87,1.26,.93,2.04],["c",.03,.57,-.09,1.08,-.36,1.62],["c",-.42,.81,-1.02,1.38,-2.82,2.61],["c",-1.14,.78,-1.44,1.02,-1.8,1.44],["c",-.18,.18,-.39,.39,-.45,.42],["c",-.27,.18,-.57,.15,-.81,-.06],["c",-.06,-.09,-.12,-.18,-.15,-.27],["c",-.03,-.06,-.09,-3.27,-.18,-8.34],["c",-.09,-4.53,-.15,-8.58,-.18,-9.03],["l",0,-.78],["l",.12,-.06],["c",.06,-.03,.18,-.09,.27,-.12],["z"],["m",3.18,11.01],["c",-.21,-.12,-.54,-.15,-.81,-.06],["c",-.54,.15,-.99,.63,-1.17,1.26],["c",-.06,.3,-.12,2.88,-.06,3.87],["c",.03,.42,.03,.81,.06,.9],["l",.03,.12],["l",.45,-.39],["c",.63,-.54,1.26,-1.17,1.56,-1.59],["c",.3,-.42,.6,-.99,.72,-1.41],["c",.18,-.69,.09,-1.47,-.18,-2.07],["c",-.15,-.3,-.33,-.51,-.6,-.63],["z"]],w:6.75,h:18.801},"accidentals.halfflat":{d:[["M",4.83,-14.07],["c",.33,-.06,.87,0,1.08,.15],["c",.06,.03,.06,.6,-.12,9.06],["c",-.09,5.55,-.15,9.06,-.18,9.12],["c",-.03,.09,-.09,.18,-.15,.27],["c",-.24,.21,-.54,.24,-.81,.06],["c",-.06,-.03,-.27,-.24,-.45,-.42],["c",-.36,-.42,-.66,-.66,-1.8,-1.44],["c",-1.23,-.84,-1.83,-1.32,-2.25,-1.77],["c",-.66,-.78,-.96,-1.56,-.93,-2.46],["c",.09,-1.41,1.11,-2.58,2.4,-2.79],["c",.3,-.06,.84,-.03,1.23,.06],["c",.54,.12,1.08,.33,1.53,.63],["c",.12,.09,.24,.15,.24,.12],["c",0,0,-.12,-8.37,-.18,-9.75],["l",0,-.66],["l",.12,-.06],["c",.06,-.03,.18,-.09,.27,-.12],["z"],["m",-1.65,10.95],["c",-.6,-.18,-1.08,.09,-1.38,.69],["c",-.27,.6,-.36,1.38,-.18,2.07],["c",.12,.42,.42,.99,.72,1.41],["c",.3,.42,.93,1.05,1.56,1.59],["l",.48,.39],["l",0,-.12],["c",.03,-.09,.03,-.48,.06,-.9],["c",.03,-.57,.03,-1.08,0,-2.22],["c",-.03,-1.62,-.03,-1.62,-.24,-2.07],["c",-.21,-.42,-.6,-.75,-1.02,-.84],["z"]],w:6.728,h:18.801},"accidentals.dblflat":{d:[["M",-.36,-14.07],["c",.33,-.06,.87,0,1.08,.15],["c",.06,.03,.06,.33,-.03,4.89],["c",-.06,2.67,-.09,5.01,-.09,5.22],["l",0,.36],["l",.15,-.15],["c",.36,-.3,.75,-.51,1.2,-.63],["c",.33,-.09,.96,-.09,1.26,-.03],["c",.27,.09,.63,.27,.87,.45],["l",.21,.15],["l",0,-.27],["c",0,-.15,-.03,-2.43,-.09,-5.1],["c",-.09,-4.56,-.09,-4.86,-.03,-4.89],["c",.15,-.12,.39,-.15,.72,-.15],["c",.3,0,.54,.03,.69,.15],["c",.06,.03,.06,.33,-.03,4.95],["c",-.06,2.7,-.09,5.04,-.09,5.22],["l",.03,.3],["l",.21,-.15],["c",.69,-.48,1.44,-.69,2.28,-.69],["c",.51,0,.78,.03,1.2,.21],["c",1.32,.63,2.01,2.28,1.53,3.69],["c",-.21,.57,-.51,1.02,-1.05,1.56],["c",-.42,.42,-.81,.72,-1.92,1.5],["c",-1.26,.87,-1.5,1.08,-1.86,1.5],["c",-.39,.45,-.54,.54,-.81,.51],["c",-.18,0,-.21,0,-.33,-.06],["l",-.21,-.21],["l",-.06,-.12],["l",-.03,-.99],["c",-.03,-.54,-.03,-1.29,-.06,-1.68],["l",0,-.69],["l",-.21,.24],["c",-.36,.42,-.75,.75,-1.8,1.62],["c",-1.02,.84,-1.2,.99,-1.44,1.38],["c",-.36,.51,-.54,.6,-.9,.51],["c",-.15,-.03,-.39,-.27,-.42,-.42],["c",-.03,-.06,-.09,-3.27,-.18,-8.34],["c",-.09,-4.53,-.15,-8.58,-.18,-9.03],["l",0,-.78],["l",.12,-.06],["c",.06,-.03,.18,-.09,.27,-.12],["z"],["m",2.52,10.98],["c",-.18,-.09,-.48,-.12,-.66,-.06],["c",-.39,.15,-.69,.54,-.84,1.14],["c",-.06,.24,-.06,.39,-.09,1.74],["c",-.03,1.44,0,2.73,.06,3.18],["l",.03,.15],["l",.27,-.27],["c",.93,-.96,1.5,-1.95,1.74,-3.06],["c",.06,-.27,.06,-.39,.06,-.96],["c",0,-.54,0,-.69,-.06,-.93],["c",-.09,-.51,-.27,-.81,-.51,-.93],["z"],["m",5.43,0],["c",-.18,-.09,-.51,-.12,-.72,-.06],["c",-.54,.12,-.96,.63,-1.17,1.26],["c",-.06,.3,-.12,2.88,-.06,3.9],["c",.03,.42,.03,.81,.06,.9],["l",.03,.12],["l",.36,-.3],["c",.42,-.36,1.02,-.96,1.29,-1.29],["c",.36,-.45,.66,-.99,.81,-1.41],["c",.42,-1.23,.15,-2.76,-.6,-3.12],["z"]],w:11.613,h:18.804},"accidentals.dblsharp":{d:[["M",-.18,-3.96],["c",.06,-.03,.12,-.06,.15,-.06],["c",.09,0,2.76,.27,2.79,.3],["c",.12,.03,.15,.12,.15,.51],["c",.06,.96,.24,1.59,.57,2.1],["c",.06,.09,.15,.21,.18,.24],["l",.09,.06],["l",.09,-.06],["c",.03,-.03,.12,-.15,.18,-.24],["c",.33,-.51,.51,-1.14,.57,-2.1],["c",0,-.39,.03,-.45,.12,-.51],["c",.03,0,.66,-.09,1.44,-.15],["c",1.47,-.15,1.5,-.15,1.56,-.03],["c",.03,.06,0,.42,-.09,1.44],["c",-.09,.72,-.15,1.35,-.15,1.38],["c",0,.03,-.03,.09,-.06,.12],["c",-.06,.06,-.12,.09,-.51,.09],["c",-1.08,.06,-1.8,.3,-2.28,.75],["l",-.12,.09],["l",.09,.09],["c",.12,.15,.39,.33,.63,.45],["c",.42,.18,.96,.27,1.68,.33],["c",.39,0,.45,.03,.51,.09],["c",.03,.03,.06,.09,.06,.12],["c",0,.03,.06,.66,.15,1.38],["c",.09,1.02,.12,1.38,.09,1.44],["c",-.06,.12,-.09,.12,-1.56,-.03],["c",-.78,-.06,-1.41,-.15,-1.44,-.15],["c",-.09,-.06,-.12,-.12,-.12,-.54],["c",-.06,-.93,-.24,-1.56,-.57,-2.07],["c",-.06,-.09,-.15,-.21,-.18,-.24],["l",-.09,-.06],["l",-.09,.06],["c",-.03,.03,-.12,.15,-.18,.24],["c",-.33,.51,-.51,1.14,-.57,2.07],["c",0,.42,-.03,.48,-.12,.54],["c",-.03,0,-.66,.09,-1.44,.15],["c",-1.47,.15,-1.5,.15,-1.56,.03],["c",-.03,-.06,0,-.42,.09,-1.44],["c",.09,-.72,.15,-1.35,.15,-1.38],["c",0,-.03,.03,-.09,.06,-.12],["c",.06,-.06,.12,-.09,.51,-.09],["c",.72,-.06,1.26,-.15,1.68,-.33],["c",.24,-.12,.51,-.3,.63,-.45],["l",.09,-.09],["l",-.12,-.09],["c",-.48,-.45,-1.2,-.69,-2.28,-.75],["c",-.39,0,-.45,-.03,-.51,-.09],["c",-.03,-.03,-.06,-.09,-.06,-.12],["c",0,-.03,-.06,-.63,-.12,-1.38],["c",-.09,-.72,-.15,-1.35,-.15,-1.38],["z"]],w:7.95,h:7.977},"dots.dot":{d:[["M",1.32,-1.68],["c",.09,-.03,.27,-.06,.39,-.06],["c",.96,0,1.74,.78,1.74,1.71],["c",0,.96,-.78,1.74,-1.71,1.74],["c",-.96,0,-1.74,-.78,-1.74,-1.71],["c",0,-.78,.54,-1.5,1.32,-1.68],["z"]],w:3.45,h:3.45},"noteheads.dbl":{d:[["M",-.69,-4.02],["c",.18,-.09,.36,-.09,.54,0],["c",.18,.09,.24,.15,.33,.3],["c",.06,.15,.06,.18,.06,1.41],["l",0,1.23],["l",.12,-.18],["c",.72,-1.26,2.64,-2.31,4.86,-2.64],["c",.81,-.15,1.11,-.15,2.13,-.15],["c",.99,0,1.29,0,2.1,.15],["c",.75,.12,1.38,.27,2.04,.54],["c",1.35,.51,2.34,1.26,2.82,2.1],["l",.12,.18],["l",0,-1.23],["c",0,-1.2,0,-1.26,.06,-1.38],["c",.09,-.18,.15,-.24,.33,-.33],["c",.18,-.09,.36,-.09,.54,0],["c",.18,.09,.24,.15,.33,.3],["l",.06,.15],["l",0,3.54],["l",0,3.54],["l",-.06,.15],["c",-.09,.18,-.15,.24,-.33,.33],["c",-.18,.09,-.36,.09,-.54,0],["c",-.18,-.09,-.24,-.15,-.33,-.33],["c",-.06,-.12,-.06,-.18,-.06,-1.38],["l",0,-1.23],["l",-.12,.18],["c",-.48,.84,-1.47,1.59,-2.82,2.1],["c",-.84,.33,-1.71,.54,-2.85,.66],["c",-.45,.06,-2.16,.06,-2.61,0],["c",-1.14,-.12,-2.01,-.33,-2.85,-.66],["c",-1.35,-.51,-2.34,-1.26,-2.82,-2.1],["l",-.12,-.18],["l",0,1.23],["c",0,1.23,0,1.26,-.06,1.38],["c",-.09,.18,-.15,.24,-.33,.33],["c",-.18,.09,-.36,.09,-.54,0],["c",-.18,-.09,-.24,-.15,-.33,-.33],["l",-.06,-.15],["l",0,-3.54],["c",0,-3.48,0,-3.54,.06,-3.66],["c",.09,-.18,.15,-.24,.33,-.33],["z"],["m",7.71,.63],["c",-.36,-.06,-.9,-.06,-1.14,0],["c",-.3,.03,-.66,.24,-.87,.42],["c",-.6,.54,-.9,1.62,-.75,2.82],["c",.12,.93,.51,1.68,1.11,2.31],["c",.75,.72,1.83,1.2,2.85,1.26],["c",1.05,.06,1.83,-.54,2.1,-1.65],["c",.21,-.9,.12,-1.95,-.24,-2.82],["c",-.36,-.81,-1.08,-1.53,-1.95,-1.95],["c",-.3,-.15,-.78,-.3,-1.11,-.39],["z"]],w:16.83,h:8.145},"noteheads.whole":{d:[["M",6.51,-4.05],["c",.51,-.03,2.01,0,2.52,.03],["c",1.41,.18,2.64,.51,3.72,1.08],["c",1.2,.63,1.95,1.41,2.19,2.31],["c",.09,.33,.09,.9,0,1.23],["c",-.24,.9,-.99,1.68,-2.19,2.31],["c",-1.08,.57,-2.28,.9,-3.75,1.08],["c",-.66,.06,-2.31,.06,-2.97,0],["c",-1.47,-.18,-2.67,-.51,-3.75,-1.08],["c",-1.2,-.63,-1.95,-1.41,-2.19,-2.31],["c",-.09,-.33,-.09,-.9,0,-1.23],["c",.24,-.9,.99,-1.68,2.19,-2.31],["c",1.2,-.63,2.61,-.99,4.23,-1.11],["z"],["m",.57,.66],["c",-.87,-.15,-1.53,0,-2.04,.51],["c",-.15,.15,-.24,.27,-.33,.48],["c",-.24,.51,-.36,1.08,-.33,1.77],["c",.03,.69,.18,1.26,.42,1.77],["c",.6,1.17,1.74,1.98,3.18,2.22],["c",1.11,.21,1.95,-.15,2.34,-.99],["c",.24,-.51,.36,-1.08,.33,-1.8],["c",-.06,-1.11,-.45,-2.04,-1.17,-2.76],["c",-.63,-.63,-1.47,-1.05,-2.4,-1.2],["z"]],w:14.985,h:8.097},"noteheads.half":{d:[["M",7.44,-4.05],["c",.06,-.03,.27,-.03,.48,-.03],["c",1.05,0,1.71,.24,2.1,.81],["c",.42,.6,.45,1.35,.18,2.4],["c",-.42,1.59,-1.14,2.73,-2.16,3.39],["c",-1.41,.93,-3.18,1.44,-5.4,1.53],["c",-1.17,.03,-1.89,-.21,-2.28,-.81],["c",-.42,-.6,-.45,-1.35,-.18,-2.4],["c",.42,-1.59,1.14,-2.73,2.16,-3.39],["c",.63,-.42,1.23,-.72,1.98,-.96],["c",.9,-.3,1.65,-.42,3.12,-.54],["z"],["m",1.29,.87],["c",-.27,-.09,-.63,-.12,-.9,-.03],["c",-.72,.24,-1.53,.69,-3.27,1.8],["c",-2.34,1.5,-3.3,2.25,-3.57,2.79],["c",-.36,.72,-.06,1.5,.66,1.77],["c",.24,.12,.69,.09,.99,0],["c",.84,-.3,1.92,-.93,4.14,-2.37],["c",1.62,-1.08,2.37,-1.71,2.61,-2.19],["c",.36,-.72,.06,-1.5,-.66,-1.77],["z"]],w:10.37,h:8.132},"noteheads.quarter":{d:[["M",6.09,-4.05],["c",.36,-.03,1.2,0,1.53,.06],["c",1.17,.24,1.89,.84,2.16,1.83],["c",.06,.18,.06,.3,.06,.66],["c",0,.45,0,.63,-.15,1.08],["c",-.66,2.04,-3.06,3.93,-5.52,4.38],["c",-.54,.09,-1.44,.09,-1.83,.03],["c",-1.23,-.27,-1.98,-.87,-2.25,-1.86],["c",-.06,-.18,-.06,-.3,-.06,-.66],["c",0,-.45,0,-.63,.15,-1.08],["c",.24,-.78,.75,-1.53,1.44,-2.22],["c",1.2,-1.2,2.85,-2.01,4.47,-2.22],["z"]],w:9.81,h:8.094},"noteheads.slash.nostem":{d:[["M",9.3,-7.77],["c",.06,-.06,.18,-.06,1.71,-.06],["l",1.65,0],["l",.09,.09],["c",.06,.06,.06,.09,.06,.15],["c",-.03,.12,-9.21,15.24,-9.3,15.33],["c",-.06,.06,-.18,.06,-1.71,.06],["l",-1.65,0],["l",-.09,-.09],["c",-.06,-.06,-.06,-.09,-.06,-.15],["c",.03,-.12,9.21,-15.24,9.3,-15.33],["z"]],w:12.81,h:15.63},"noteheads.indeterminate":{d:[["M",.78,-4.05],["c",.12,-.03,.24,-.03,.36,.03],["c",.03,.03,.93,.72,1.95,1.56],["l",1.86,1.5],["l",1.86,-1.5],["c",1.02,-.84,1.92,-1.53,1.95,-1.56],["c",.21,-.12,.33,-.09,.75,.24],["c",.3,.27,.36,.36,.36,.54],["c",0,.03,-.03,.12,-.06,.18],["c",-.03,.06,-.9,.75,-1.89,1.56],["l",-1.8,1.47],["c",0,.03,.81,.69,1.8,1.5],["c",.99,.81,1.86,1.5,1.89,1.56],["c",.03,.06,.06,.15,.06,.18],["c",0,.18,-.06,.27,-.36,.54],["c",-.42,.33,-.54,.36,-.75,.24],["c",-.03,-.03,-.93,-.72,-1.95,-1.56],["l",-1.86,-1.5],["l",-1.86,1.5],["c",-1.02,.84,-1.92,1.53,-1.95,1.56],["c",-.21,.12,-.33,.09,-.75,-.24],["c",-.3,-.27,-.36,-.36,-.36,-.54],["c",0,-.03,.03,-.12,.06,-.18],["c",.03,-.06,.9,-.75,1.89,-1.56],["l",1.8,-1.47],["c",0,-.03,-.81,-.69,-1.8,-1.5],["c",-.99,-.81,-1.86,-1.5,-1.89,-1.56],["c",-.06,-.12,-.09,-.21,-.03,-.36],["c",.03,-.09,.57,-.57,.72,-.63],["z"]],w:9.843,h:8.139},"scripts.ufermata":{d:[["M",-.75,-10.77],["c",.12,0,.45,-.03,.69,-.03],["c",2.91,-.03,5.55,1.53,7.41,4.35],["c",1.17,1.71,1.95,3.72,2.43,6.03],["c",.12,.51,.12,.57,.03,.69],["c",-.12,.21,-.48,.27,-.69,.12],["c",-.12,-.09,-.18,-.24,-.27,-.69],["c",-.78,-3.63,-3.42,-6.54,-6.78,-7.38],["c",-.78,-.21,-1.2,-.24,-2.07,-.24],["c",-.63,0,-.84,0,-1.2,.06],["c",-1.83,.27,-3.42,1.08,-4.8,2.37],["c",-1.41,1.35,-2.4,3.21,-2.85,5.19],["c",-.09,.45,-.15,.6,-.27,.69],["c",-.21,.15,-.57,.09,-.69,-.12],["c",-.09,-.12,-.09,-.18,.03,-.69],["c",.33,-1.62,.78,-3,1.47,-4.38],["c",1.77,-3.54,4.44,-5.67,7.56,-5.97],["z"],["m",.33,7.47],["c",1.38,-.3,2.58,.9,2.31,2.25],["c",-.15,.72,-.78,1.35,-1.47,1.5],["c",-1.38,.27,-2.58,-.93,-2.31,-2.31],["c",.15,-.69,.78,-1.29,1.47,-1.44],["z"]],w:19.748,h:11.289},"scripts.dfermata":{d:[["M",-9.63,-.42],["c",.15,-.09,.36,-.06,.51,.03],["c",.12,.09,.18,.24,.27,.66],["c",.78,3.66,3.42,6.57,6.78,7.41],["c",.78,.21,1.2,.24,2.07,.24],["c",.63,0,.84,0,1.2,-.06],["c",1.83,-.27,3.42,-1.08,4.8,-2.37],["c",1.41,-1.35,2.4,-3.21,2.85,-5.22],["c",.09,-.42,.15,-.57,.27,-.66],["c",.21,-.15,.57,-.09,.69,.12],["c",.09,.12,.09,.18,-.03,.69],["c",-.33,1.62,-.78,3,-1.47,4.38],["c",-1.92,3.84,-4.89,6,-8.31,6],["c",-3.42,0,-6.39,-2.16,-8.31,-6],["c",-.48,-.96,-.84,-1.92,-1.14,-2.97],["c",-.18,-.69,-.42,-1.74,-.42,-1.92],["c",0,-.12,.09,-.27,.24,-.33],["z"],["m",9.21,0],["c",1.2,-.27,2.34,.63,2.34,1.86],["c",0,.9,-.66,1.68,-1.5,1.89],["c",-1.38,.27,-2.58,-.93,-2.31,-2.31],["c",.15,-.69,.78,-1.29,1.47,-1.44],["z"]],w:19.744,h:11.274},"scripts.sforzato":{d:[["M",-6.45,-3.69],["c",.06,-.03,.15,-.06,.18,-.06],["c",.06,0,2.85,.72,6.24,1.59],["l",6.33,1.65],["c",.33,.06,.45,.21,.45,.51],["c",0,.3,-.12,.45,-.45,.51],["l",-6.33,1.65],["c",-3.39,.87,-6.18,1.59,-6.21,1.59],["c",-.21,0,-.48,-.24,-.51,-.45],["c",0,-.15,.06,-.36,.18,-.45],["c",.09,-.06,.87,-.27,3.84,-1.05],["c",2.04,-.54,3.84,-.99,4.02,-1.02],["c",.15,-.06,1.14,-.24,2.22,-.42],["c",1.05,-.18,1.92,-.36,1.92,-.36],["c",0,0,-.87,-.18,-1.92,-.36],["c",-1.08,-.18,-2.07,-.36,-2.22,-.42],["c",-.18,-.03,-1.98,-.48,-4.02,-1.02],["c",-2.97,-.78,-3.75,-.99,-3.84,-1.05],["c",-.12,-.09,-.18,-.3,-.18,-.45],["c",.03,-.15,.15,-.3,.3,-.39],["z"]],w:13.5,h:7.5},"scripts.staccato":{d:[["M",-.36,-1.47],["c",.93,-.21,1.86,.51,1.86,1.47],["c",0,.93,-.87,1.65,-1.8,1.47],["c",-.54,-.12,-1.02,-.57,-1.14,-1.08],["c",-.21,-.81,.27,-1.65,1.08,-1.86],["z"]],w:2.989,h:3.004},"scripts.tenuto":{d:[["M",-4.2,-.48],["l",.12,-.06],["l",4.08,0],["l",4.08,0],["l",.12,.06],["c",.39,.21,.39,.75,0,.96],["l",-.12,.06],["l",-4.08,0],["l",-4.08,0],["l",-.12,-.06],["c",-.39,-.21,-.39,-.75,0,-.96],["z"]],w:8.985,h:1.08},"scripts.umarcato":{d:[["M",-.15,-8.19],["c",.15,-.12,.36,-.03,.45,.15],["c",.21,.42,3.45,7.65,3.45,7.71],["c",0,.12,-.12,.27,-.21,.3],["c",-.03,.03,-.51,.03,-1.14,.03],["c",-1.05,0,-1.08,0,-1.17,-.06],["c",-.09,-.06,-.24,-.36,-1.17,-2.4],["c",-.57,-1.29,-1.05,-2.34,-1.08,-2.34],["c",0,-.03,-.51,1.02,-1.08,2.34],["c",-.93,2.07,-1.08,2.34,-1.14,2.4],["c",-.06,.03,-.15,.06,-.18,.06],["c",-.15,0,-.33,-.18,-.33,-.33],["c",0,-.06,3.24,-7.32,3.45,-7.71],["c",.03,-.06,.09,-.15,.15,-.15],["z"]],w:7.5,h:8.245},"scripts.dmarcato":{d:[["M",-3.57,.03],["c",.03,0,.57,-.03,1.17,-.03],["c",1.05,0,1.08,0,1.17,.06],["c",.09,.06,.24,.36,1.17,2.4],["c",.57,1.29,1.05,2.34,1.08,2.34],["c",0,.03,.51,-1.02,1.08,-2.34],["c",.93,-2.07,1.08,-2.34,1.14,-2.4],["c",.06,-.03,.15,-.06,.18,-.06],["c",.15,0,.33,.18,.33,.33],["c",0,.09,-3.45,7.74,-3.54,7.83],["c",-.12,.12,-.3,.12,-.42,0],["c",-.09,-.09,-3.54,-7.74,-3.54,-7.83],["c",0,-.09,.12,-.27,.18,-.3],["z"]],w:7.5,h:8.25},"scripts.stopped":{d:[["M",-.27,-4.08],["c",.18,-.09,.36,-.09,.54,0],["c",.18,.09,.24,.15,.33,.3],["l",.06,.15],["l",0,1.5],["l",0,1.47],["l",1.47,0],["l",1.5,0],["l",.15,.06],["c",.15,.09,.21,.15,.3,.33],["c",.09,.18,.09,.36,0,.54],["c",-.09,.18,-.15,.24,-.33,.33],["c",-.12,.06,-.18,.06,-1.62,.06],["l",-1.47,0],["l",0,1.47],["l",0,1.47],["l",-.06,.15],["c",-.09,.18,-.15,.24,-.33,.33],["c",-.18,.09,-.36,.09,-.54,0],["c",-.18,-.09,-.24,-.15,-.33,-.33],["l",-.06,-.15],["l",0,-1.47],["l",0,-1.47],["l",-1.47,0],["c",-1.44,0,-1.5,0,-1.62,-.06],["c",-.18,-.09,-.24,-.15,-.33,-.33],["c",-.09,-.18,-.09,-.36,0,-.54],["c",.09,-.18,.15,-.24,.33,-.33],["l",.15,-.06],["l",1.47,0],["l",1.47,0],["l",0,-1.47],["c",0,-1.44,0,-1.5,.06,-1.62],["c",.09,-.18,.15,-.24,.33,-.33],["z"]],w:8.295,h:8.295},"scripts.upbow":{d:[["M",-4.65,-15.54],["c",.12,-.09,.36,-.06,.48,.03],["c",.03,.03,.09,.09,.12,.15],["c",.03,.06,.66,2.13,1.41,4.62],["c",1.35,4.41,1.38,4.56,2.01,6.96],["l",.63,2.46],["l",.63,-2.46],["c",.63,-2.4,.66,-2.55,2.01,-6.96],["c",.75,-2.49,1.38,-4.56,1.41,-4.62],["c",.06,-.15,.18,-.21,.36,-.24],["c",.15,0,.3,.06,.39,.18],["c",.15,.21,.24,-.18,-2.1,7.56],["c",-1.2,3.96,-2.22,7.32,-2.25,7.41],["c",0,.12,-.06,.27,-.09,.3],["c",-.12,.21,-.6,.21,-.72,0],["c",-.03,-.03,-.09,-.18,-.09,-.3],["c",-.03,-.09,-1.05,-3.45,-2.25,-7.41],["c",-2.34,-7.74,-2.25,-7.35,-2.1,-7.56],["c",.03,-.03,.09,-.09,.15,-.12],["z"]],w:9.73,h:15.608},"scripts.downbow":{d:[["M",-5.55,-9.93],["l",.09,-.06],["l",5.46,0],["l",5.46,0],["l",.09,.06],["l",.06,.09],["l",0,4.77],["c",0,5.28,0,4.89,-.18,5.01],["c",-.18,.12,-.42,.06,-.54,-.12],["c",-.06,-.09,-.06,-.18,-.06,-2.97],["l",0,-2.85],["l",-4.83,0],["l",-4.83,0],["l",0,2.85],["c",0,2.79,0,2.88,-.06,2.97],["c",-.15,.24,-.51,.24,-.66,0],["c",-.06,-.09,-.06,-.21,-.06,-4.89],["l",0,-4.77],["z"]],w:11.22,h:9.992},"scripts.turn":{d:[["M",-4.77,-3.9],["c",.36,-.06,1.05,-.06,1.44,.03],["c",.78,.15,1.5,.51,2.34,1.14],["c",.6,.45,1.05,.87,2.22,2.01],["c",1.11,1.08,1.62,1.5,2.22,1.86],["c",.6,.36,1.32,.57,1.92,.57],["c",.9,0,1.71,-.57,1.89,-1.35],["c",.24,-.93,-.39,-1.89,-1.35,-2.1],["l",-.15,-.06],["l",-.09,.15],["c",-.03,.09,-.15,.24,-.24,.33],["c",-.72,.72,-2.04,.54,-2.49,-.36],["c",-.48,-.93,.03,-1.86,1.17,-2.19],["c",.3,-.09,1.02,-.09,1.35,0],["c",.99,.27,1.74,.87,2.25,1.83],["c",.69,1.41,.63,3,-.21,4.26],["c",-.21,.3,-.69,.81,-.99,1.02],["c",-.3,.21,-.84,.45,-1.17,.54],["c",-1.23,.36,-2.49,.15,-3.72,-.6],["c",-.75,-.48,-1.41,-1.02,-2.85,-2.46],["c",-1.11,-1.08,-1.62,-1.5,-2.22,-1.86],["c",-.6,-.36,-1.32,-.57,-1.92,-.57],["c",-.9,0,-1.71,.57,-1.89,1.35],["c",-.24,.93,.39,1.89,1.35,2.1],["l",.15,.06],["l",.09,-.15],["c",.03,-.09,.15,-.24,.24,-.33],["c",.72,-.72,2.04,-.54,2.49,.36],["c",.48,.93,-.03,1.86,-1.17,2.19],["c",-.3,.09,-1.02,.09,-1.35,0],["c",-.99,-.27,-1.74,-.87,-2.25,-1.83],["c",-.69,-1.41,-.63,-3,.21,-4.26],["c",.21,-.3,.69,-.81,.99,-1.02],["c",.48,-.33,1.11,-.57,1.74,-.66],["z"]],w:16.366,h:7.893},"scripts.trill":{d:[["M",-.51,-16.02],["c",.12,-.09,.21,-.18,.21,-.18],["l",-.81,4.02],["l",-.81,4.02],["c",.03,0,.51,-.27,1.08,-.6],["c",.6,-.3,1.14,-.63,1.26,-.66],["c",1.14,-.54,2.31,-.6,3.09,-.18],["c",.27,.15,.54,.36,.6,.51],["l",.06,.12],["l",.21,-.21],["c",.9,-.81,2.22,-.99,3.12,-.42],["c",.6,.42,.9,1.14,.78,2.07],["c",-.15,1.29,-1.05,2.31,-1.95,2.25],["c",-.48,-.03,-.78,-.3,-.96,-.81],["c",-.09,-.27,-.09,-.9,-.03,-1.2],["c",.21,-.75,.81,-1.23,1.59,-1.32],["l",.24,-.03],["l",-.09,-.12],["c",-.51,-.66,-1.62,-.63,-2.31,.03],["c",-.39,.42,-.3,.09,-1.23,4.77],["l",-.81,4.14],["c",-.03,0,-.12,-.03,-.21,-.09],["c",-.33,-.15,-.54,-.18,-.99,-.18],["c",-.42,0,-.66,.03,-1.05,.18],["c",-.12,.06,-.21,.09,-.21,.09],["c",0,-.03,.36,-1.86,.81,-4.11],["c",.9,-4.47,.87,-4.26,.69,-4.53],["c",-.21,-.36,-.66,-.51,-1.17,-.36],["c",-.15,.06,-2.22,1.14,-2.58,1.38],["c",-.12,.09,-.12,.09,-.21,.6],["l",-.09,.51],["l",.21,.24],["c",.63,.75,1.02,1.47,1.2,2.19],["c",.06,.27,.06,.36,.06,.81],["c",0,.42,0,.54,-.06,.78],["c",-.15,.54,-.33,.93,-.63,1.35],["c",-.18,.24,-.57,.63,-.81,.78],["c",-.24,.15,-.63,.36,-.84,.42],["c",-.27,.06,-.66,.06,-.87,.03],["c",-.81,-.18,-1.32,-1.05,-1.38,-2.46],["c",-.03,-.6,.03,-.99,.33,-2.46],["c",.21,-1.08,.24,-1.32,.21,-1.29],["c",-1.2,.48,-2.4,.75,-3.21,.72],["c",-.69,-.06,-1.17,-.3,-1.41,-.72],["c",-.39,-.75,-.12,-1.8,.66,-2.46],["c",.24,-.18,.69,-.42,1.02,-.51],["c",.69,-.18,1.53,-.15,2.31,.09],["c",.3,.09,.75,.3,.99,.45],["c",.12,.09,.15,.09,.15,.03],["c",.03,-.03,.33,-1.59,.72,-3.45],["c",.36,-1.86,.66,-3.42,.69,-3.45],["c",0,-.03,.03,-.03,.21,.03],["c",.21,.06,.27,.06,.48,.06],["c",.42,-.03,.78,-.18,1.26,-.48],["c",.15,-.12,.36,-.27,.48,-.39],["z"],["m",-5.73,7.68],["c",-.27,-.03,-.96,-.06,-1.2,-.03],["c",-.81,.12,-1.35,.57,-1.5,1.2],["c",-.18,.66,.12,1.14,.75,1.29],["c",.66,.12,1.92,-.12,3.18,-.66],["l",.33,-.15],["l",.09,-.39],["c",.06,-.21,.09,-.42,.09,-.45],["c",0,-.03,-.45,-.3,-.75,-.45],["c",-.27,-.15,-.66,-.27,-.99,-.36],["z"],["m",4.29,3.63],["c",-.24,-.39,-.51,-.75,-.51,-.69],["c",-.06,.12,-.39,1.92,-.45,2.28],["c",-.09,.54,-.12,1.14,-.06,1.38],["c",.06,.42,.21,.6,.51,.57],["c",.39,-.06,.75,-.48,.93,-1.14],["c",.09,-.33,.09,-1.05,0,-1.38],["c",-.09,-.39,-.24,-.69,-.42,-1.02],["z"]],w:17.963,h:16.49},"scripts.segno":{d:[["M",-3.72,-11.22],["c",.78,-.09,1.59,.03,2.31,.42],["c",1.2,.6,2.01,1.71,2.31,3.09],["c",.09,.42,.09,1.2,.03,1.5],["c",-.15,.45,-.39,.81,-.66,.93],["c",-.33,.18,-.84,.21,-1.23,.15],["c",-.81,-.18,-1.32,-.93,-1.26,-1.89],["c",.03,-.36,.09,-.57,.24,-.9],["c",.15,-.33,.45,-.6,.72,-.75],["c",.12,-.06,.18,-.09,.18,-.12],["c",0,-.03,-.03,-.15,-.09,-.24],["c",-.18,-.45,-.54,-.87,-.96,-1.08],["c",-1.11,-.57,-2.34,-.18,-2.88,.9],["c",-.24,.51,-.33,1.11,-.24,1.83],["c",.27,1.92,1.5,3.54,3.93,5.13],["c",.48,.33,1.26,.78,1.29,.78],["c",.03,0,1.35,-2.19,2.94,-4.89],["l",2.88,-4.89],["l",.84,0],["l",.87,0],["l",-.03,.06],["c",-.15,.21,-6.15,10.41,-6.15,10.44],["c",0,0,.21,.15,.48,.27],["c",2.61,1.47,4.35,3.03,5.13,4.65],["c",1.14,2.34,.51,5.07,-1.44,6.39],["c",-.66,.42,-1.32,.63,-2.13,.69],["c",-2.01,.09,-3.81,-1.41,-4.26,-3.54],["c",-.09,-.42,-.09,-1.2,-.03,-1.5],["c",.15,-.45,.39,-.81,.66,-.93],["c",.33,-.18,.84,-.21,1.23,-.15],["c",.81,.18,1.32,.93,1.26,1.89],["c",-.03,.36,-.09,.57,-.24,.9],["c",-.15,.33,-.45,.6,-.72,.75],["c",-.12,.06,-.18,.09,-.18,.12],["c",0,.03,.03,.15,.09,.24],["c",.18,.45,.54,.87,.96,1.08],["c",1.11,.57,2.34,.18,2.88,-.9],["c",.24,-.51,.33,-1.11,.24,-1.83],["c",-.27,-1.92,-1.5,-3.54,-3.93,-5.13],["c",-.48,-.33,-1.26,-.78,-1.29,-.78],["c",-.03,0,-1.35,2.19,-2.91,4.89],["l",-2.88,4.89],["l",-.87,0],["l",-.87,0],["l",.03,-.06],["c",.15,-.21,6.15,-10.41,6.15,-10.44],["c",0,0,-.21,-.15,-.48,-.3],["c",-2.61,-1.44,-4.35,-3,-5.13,-4.62],["c",-.9,-1.89,-.72,-4.02,.48,-5.52],["c",.69,-.84,1.68,-1.41,2.73,-1.53],["z"],["m",8.76,9.09],["c",.03,-.03,.15,-.03,.27,-.03],["c",.33,.03,.57,.18,.72,.48],["c",.09,.18,.09,.57,0,.75],["c",-.09,.18,-.21,.3,-.36,.39],["c",-.15,.06,-.21,.06,-.39,.06],["c",-.21,0,-.27,0,-.39,-.06],["c",-.3,-.15,-.48,-.45,-.48,-.75],["c",0,-.39,.24,-.72,.63,-.84],["z"],["m",-10.53,2.61],["c",.03,-.03,.15,-.03,.27,-.03],["c",.33,.03,.57,.18,.72,.48],["c",.09,.18,.09,.57,0,.75],["c",-.09,.18,-.21,.3,-.36,.39],["c",-.15,.06,-.21,.06,-.39,.06],["c",-.21,0,-.27,0,-.39,-.06],["c",-.3,-.15,-.48,-.45,-.48,-.75],["c",0,-.39,.24,-.72,.63,-.84],["z"]],w:15,h:22.504},"scripts.coda":{d:[["M",-.21,-10.47],["c",.18,-.12,.42,-.06,.54,.12],["c",.06,.09,.06,.18,.06,1.5],["l",0,1.38],["l",.18,0],["c",.39,.06,.96,.24,1.38,.48],["c",1.68,.93,2.82,3.24,3.03,6.12],["c",.03,.24,.03,.45,.03,.45],["c",0,.03,.6,.03,1.35,.03],["c",1.5,0,1.47,0,1.59,.18],["c",.09,.12,.09,.3,0,.42],["c",-.12,.18,-.09,.18,-1.59,.18],["c",-.75,0,-1.35,0,-1.35,.03],["c",0,0,0,.21,-.03,.42],["c",-.24,3.15,-1.53,5.58,-3.45,6.36],["c",-.27,.12,-.72,.24,-.96,.27],["l",-.18,0],["l",0,1.38],["c",0,1.32,0,1.41,-.06,1.5],["c",-.15,.24,-.51,.24,-.66,0],["c",-.06,-.09,-.06,-.18,-.06,-1.5],["l",0,-1.38],["l",-.18,0],["c",-.39,-.06,-.96,-.24,-1.38,-.48],["c",-1.68,-.93,-2.82,-3.24,-3.03,-6.15],["c",-.03,-.21,-.03,-.42,-.03,-.42],["c",0,-.03,-.6,-.03,-1.35,-.03],["c",-1.5,0,-1.47,0,-1.59,-.18],["c",-.09,-.12,-.09,-.3,0,-.42],["c",.12,-.18,.09,-.18,1.59,-.18],["c",.75,0,1.35,0,1.35,-.03],["c",0,0,0,-.21,.03,-.45],["c",.24,-3.12,1.53,-5.55,3.45,-6.33],["c",.27,-.12,.72,-.24,.96,-.27],["l",.18,0],["l",0,-1.38],["c",0,-1.53,0,-1.5,.18,-1.62],["z"],["m",-.18,6.93],["c",0,-2.97,0,-3.15,-.06,-3.15],["c",-.09,0,-.51,.15,-.66,.21],["c",-.87,.51,-1.38,1.62,-1.56,3.51],["c",-.06,.54,-.12,1.59,-.12,2.16],["l",0,.42],["l",1.2,0],["l",1.2,0],["l",0,-3.15],["z"],["m",1.17,-3.06],["c",-.09,-.03,-.21,-.06,-.27,-.09],["l",-.12,0],["l",0,3.15],["l",0,3.15],["l",1.2,0],["l",1.2,0],["l",0,-.81],["c",-.06,-2.4,-.33,-3.69,-.93,-4.59],["c",-.27,-.39,-.66,-.69,-1.08,-.81],["z"],["m",-1.17,10.14],["l",0,-3.15],["l",-1.2,0],["l",-1.2,0],["l",0,.81],["c",.03,.96,.06,1.47,.15,2.13],["c",.24,2.04,.96,3.12,2.13,3.36],["l",.12,0],["l",0,-3.15],["z"],["m",3.18,-2.34],["l",0,-.81],["l",-1.2,0],["l",-1.2,0],["l",0,3.15],["l",0,3.15],["l",.12,0],["c",1.17,-.24,1.89,-1.32,2.13,-3.36],["c",.09,-.66,.12,-1.17,.15,-2.13],["z"]],w:16.035,h:21.062},"scripts.comma":{d:[["M",1.14,-4.62],["c",.3,-.12,.69,-.03,.93,.15],["c",.12,.12,.36,.45,.51,.78],["c",.9,1.77,.54,4.05,-1.08,6.75],["c",-.36,.63,-.87,1.38,-.96,1.44],["c",-.18,.12,-.42,.06,-.54,-.12],["c",-.09,-.18,-.09,-.3,.12,-.6],["c",.96,-1.44,1.44,-2.97,1.38,-4.35],["c",-.06,-.93,-.3,-1.68,-.78,-2.46],["c",-.27,-.39,-.33,-.63,-.24,-.96],["c",.09,-.27,.36,-.54,.66,-.63],["z"]],w:3.042,h:9.237},"scripts.roll":{d:[["M",1.95,-6],["c",.21,-.09,.36,-.09,.57,0],["c",.39,.15,.63,.39,1.47,1.35],["c",.66,.75,.78,.87,1.08,1.05],["c",.75,.45,1.65,.42,2.4,-.06],["c",.12,-.09,.27,-.27,.54,-.6],["c",.42,-.54,.51,-.63,.69,-.63],["c",.09,0,.3,.12,.36,.21],["c",.09,.12,.12,.3,.03,.42],["c",-.06,.12,-3.15,3.9,-3.3,4.08],["c",-.06,.06,-.18,.12,-.27,.18],["c",-.27,.12,-.6,.06,-.99,-.27],["c",-.27,-.21,-.42,-.39,-1.08,-1.14],["c",-.63,-.72,-.81,-.9,-1.17,-1.08],["c",-.36,-.18,-.57,-.21,-.99,-.21],["c",-.39,0,-.63,.03,-.93,.18],["c",-.36,.15,-.51,.27,-.9,.81],["c",-.24,.27,-.45,.51,-.48,.54],["c",-.12,.09,-.27,.06,-.39,0],["c",-.24,-.15,-.33,-.39,-.21,-.6],["c",.09,-.12,3.18,-3.87,3.33,-4.02],["c",.06,-.06,.18,-.15,.24,-.21],["z"]],w:10.817,h:6.125},"scripts.prall":{d:[["M",-4.38,-3.69],["c",.06,-.03,.18,-.06,.24,-.06],["c",.3,0,.27,-.03,1.89,1.95],["l",1.53,1.83],["c",.03,0,.57,-.84,1.23,-1.83],["c",1.14,-1.68,1.23,-1.83,1.35,-1.89],["c",.06,-.03,.18,-.06,.24,-.06],["c",.3,0,.27,-.03,1.89,1.95],["l",1.53,1.83],["l",.48,-.69],["c",.51,-.78,.54,-.84,.69,-.9],["c",.42,-.18,.87,.15,.81,.6],["c",-.03,.12,-.3,.51,-1.5,2.37],["c",-1.38,2.07,-1.5,2.22,-1.62,2.28],["c",-.06,.03,-.18,.06,-.24,.06],["c",-.3,0,-.27,.03,-1.89,-1.95],["l",-1.53,-1.83],["c",-.03,0,-.57,.84,-1.23,1.83],["c",-1.14,1.68,-1.23,1.83,-1.35,1.89],["c",-.06,.03,-.18,.06,-.24,.06],["c",-.3,0,-.27,.03,-1.89,-1.95],["l",-1.53,-1.83],["l",-.48,.69],["c",-.51,.78,-.54,.84,-.69,.9],["c",-.42,.18,-.87,-.15,-.81,-.6],["c",.03,-.12,.3,-.51,1.5,-2.37],["c",1.38,-2.07,1.5,-2.22,1.62,-2.28],["z"]],w:15.011,h:7.5},"scripts.arpeggio":{d:[["M",1.5,0],["c",1.5,2,1.5,3,1.5,3],["s",0,1,-2,1.5],["s",-.5,3,1,5.5],["l",1.5,0],["s",-1.75,-2,-1.9,-3.25],["s",2.15,-.6,2.95,-1.6],["s",.45,-1,.5,-1.25],["s",0,-1,-2,-3.9],["l",-1.5,0],["z"]],w:5,h:10},"scripts.mordent":{d:[["M",-.21,-4.95],["c",.27,-.15,.63,0,.75,.27],["c",.06,.12,.06,.24,.06,1.44],["l",0,1.29],["l",.57,-.84],["c",.51,-.75,.57,-.84,.69,-.9],["c",.06,-.03,.18,-.06,.24,-.06],["c",.3,0,.27,-.03,1.89,1.95],["l",1.53,1.83],["l",.48,-.69],["c",.51,-.78,.54,-.84,.69,-.9],["c",.42,-.18,.87,.15,.81,.6],["c",-.03,.12,-.3,.51,-1.5,2.37],["c",-1.38,2.07,-1.5,2.22,-1.62,2.28],["c",-.06,.03,-.18,.06,-.24,.06],["c",-.3,0,-.27,.03,-1.83,-1.89],["c",-.81,-.99,-1.5,-1.8,-1.53,-1.86],["c",-.06,-.03,-.06,-.03,-.12,.03],["c",-.06,.06,-.06,.15,-.06,2.28],["c",0,1.95,0,2.25,-.06,2.34],["c",-.18,.45,-.81,.48,-1.05,.03],["c",-.03,-.06,-.06,-.24,-.06,-1.41],["l",0,-1.35],["l",-.57,.84],["c",-.54,.78,-.6,.87,-.72,.93],["c",-.06,.03,-.18,.06,-.24,.06],["c",-.3,0,-.27,.03,-1.89,-1.95],["l",-1.53,-1.83],["l",-.48,.69],["c",-.51,.78,-.54,.84,-.69,.9],["c",-.42,.18,-.87,-.15,-.81,-.6],["c",.03,-.12,.3,-.51,1.5,-2.37],["c",1.38,-2.07,1.5,-2.22,1.62,-2.28],["c",.06,-.03,.18,-.06,.24,-.06],["c",.3,0,.27,-.03,1.89,1.95],["l",1.53,1.83],["c",.03,0,.06,-.06,.09,-.09],["c",.06,-.12,.06,-.15,.06,-2.28],["c",0,-1.92,0,-2.22,.06,-2.31],["c",.06,-.15,.15,-.24,.3,-.3],["z"]],w:15.011,h:10.012},"flags.u8th":{d:[["M",-.42,3.75],["l",0,-3.75],["l",.21,0],["l",.21,0],["l",0,.18],["c",0,.3,.06,.84,.12,1.23],["c",.24,1.53,.9,3.12,2.13,5.16],["l",.99,1.59],["c",.87,1.44,1.38,2.34,1.77,3.09],["c",.81,1.68,1.2,3.06,1.26,4.53],["c",.03,1.53,-.21,3.27,-.75,5.01],["c",-.21,.69,-.51,1.5,-.6,1.59],["c",-.09,.12,-.27,.21,-.42,.21],["c",-.15,0,-.42,-.12,-.51,-.21],["c",-.15,-.18,-.18,-.42,-.09,-.66],["c",.15,-.33,.45,-1.2,.57,-1.62],["c",.42,-1.38,.6,-2.58,.6,-3.9],["c",0,-.66,0,-.81,-.06,-1.11],["c",-.39,-2.07,-1.8,-4.26,-4.59,-7.14],["l",-.42,-.45],["l",-.21,0],["l",-.21,0],["l",0,-3.75],["z"]],w:6.692,h:22.59},"flags.u16th":{d:[["M",-.42,7.5],["l",0,-7.5],["l",.21,0],["l",.21,0],["l",0,.39],["c",.06,1.08,.39,2.19,.99,3.39],["c",.45,.9,.87,1.59,1.95,3.12],["c",1.29,1.86,1.77,2.64,2.22,3.57],["c",.45,.93,.72,1.8,.87,2.64],["c",.06,.51,.06,1.5,0,1.92],["c",-.12,.6,-.3,1.2,-.54,1.71],["l",-.09,.24],["l",.18,.45],["c",.51,1.2,.72,2.22,.69,3.42],["c",-.06,1.53,-.39,3.03,-.99,4.53],["c",-.3,.75,-.36,.81,-.57,.9],["c",-.15,.09,-.33,.06,-.48,0],["c",-.18,-.09,-.27,-.18,-.33,-.33],["c",-.09,-.18,-.06,-.3,.12,-.75],["c",.66,-1.41,1.02,-2.88,1.08,-4.32],["c",0,-.6,-.03,-1.05,-.18,-1.59],["c",-.3,-1.2,-.99,-2.4,-2.25,-3.87],["c",-.42,-.48,-1.53,-1.62,-2.19,-2.22],["l",-.45,-.42],["l",-.03,1.11],["l",0,1.11],["l",-.21,0],["l",-.21,0],["l",0,-7.5],["z"],["m",1.65,.09],["c",-.3,-.3,-.69,-.72,-.9,-.87],["l",-.33,-.33],["l",0,.15],["c",0,.3,.06,.81,.15,1.26],["c",.27,1.29,.87,2.61,2.04,4.29],["c",.15,.24,.6,.87,.96,1.38],["l",1.08,1.53],["l",.42,.63],["c",.03,0,.12,-.36,.21,-.72],["c",.06,-.33,.06,-1.2,0,-1.62],["c",-.33,-1.71,-1.44,-3.48,-3.63,-5.7],["z"]],w:6.693,h:26.337},"flags.u32nd":{d:[["M",-.42,11.25],["l",0,-11.25],["l",.21,0],["l",.21,0],["l",0,.36],["c",.09,1.68,.69,3.27,2.07,5.46],["l",.87,1.35],["c",1.02,1.62,1.47,2.37,1.86,3.18],["c",.48,1.02,.78,1.92,.93,2.88],["c",.06,.48,.06,1.5,0,1.89],["c",-.09,.42,-.21,.87,-.36,1.26],["l",-.12,.3],["l",.15,.39],["c",.69,1.56,.84,2.88,.54,4.38],["c",-.09,.45,-.27,1.08,-.45,1.47],["l",-.12,.24],["l",.18,.36],["c",.33,.72,.57,1.56,.69,2.34],["c",.12,1.02,-.06,2.52,-.42,3.84],["c",-.27,.93,-.75,2.13,-.93,2.31],["c",-.18,.15,-.45,.18,-.66,.09],["c",-.18,-.09,-.27,-.18,-.33,-.33],["c",-.09,-.18,-.06,-.3,.06,-.6],["c",.21,-.36,.42,-.9,.57,-1.38],["c",.51,-1.41,.69,-3.06,.48,-4.08],["c",-.15,-.81,-.57,-1.68,-1.2,-2.55],["c",-.72,-.99,-1.83,-2.13,-3.3,-3.33],["l",-.48,-.42],["l",-.03,1.53],["l",0,1.56],["l",-.21,0],["l",-.21,0],["l",0,-11.25],["z"],["m",1.26,-3.96],["c",-.27,-.3,-.54,-.6,-.66,-.72],["l",-.18,-.21],["l",0,.42],["c",.06,.87,.24,1.74,.66,2.67],["c",.36,.87,.96,1.86,1.92,3.18],["c",.21,.33,.63,.87,.87,1.23],["c",.27,.39,.6,.84,.75,1.08],["l",.27,.39],["l",.03,-.12],["c",.12,-.45,.15,-1.05,.09,-1.59],["c",-.27,-1.86,-1.38,-3.78,-3.75,-6.33],["z"],["m",-.27,6.09],["c",-.27,-.21,-.48,-.42,-.51,-.45],["c",-.06,-.03,-.06,-.03,-.06,.21],["c",0,.9,.3,2.04,.81,3.09],["c",.48,1.02,.96,1.77,2.37,3.63],["c",.6,.78,1.05,1.44,1.29,1.77],["c",.06,.12,.15,.21,.15,.18],["c",.03,-.03,.18,-.57,.24,-.87],["c",.06,-.45,.06,-1.32,-.03,-1.74],["c",-.09,-.48,-.24,-.9,-.51,-1.44],["c",-.66,-1.35,-1.83,-2.7,-3.75,-4.38],["z"]],w:6.697,h:32.145},"flags.u64th":{d:[["M",-.42,15],["l",0,-15],["l",.21,0],["l",.21,0],["l",0,.36],["c",.06,1.2,.39,2.37,1.02,3.66],["c",.39,.81,.84,1.56,1.8,3.09],["c",.81,1.26,1.05,1.68,1.35,2.22],["c",.87,1.5,1.35,2.79,1.56,4.08],["c",.06,.54,.06,1.56,-.03,2.04],["c",-.09,.48,-.21,.99,-.36,1.35],["l",-.12,.27],["l",.12,.27],["c",.09,.15,.21,.45,.27,.66],["c",.69,1.89,.63,3.66,-.18,5.46],["l",-.18,.39],["l",.15,.33],["c",.3,.66,.51,1.44,.63,2.1],["c",.06,.48,.06,1.35,0,1.71],["c",-.15,.57,-.42,1.2,-.78,1.68],["l",-.21,.27],["l",.18,.33],["c",.57,1.05,.93,2.13,1.02,3.18],["c",.06,.72,0,1.83,-.21,2.79],["c",-.18,1.02,-.63,2.34,-1.02,3.09],["c",-.15,.33,-.48,.45,-.78,.3],["c",-.18,-.09,-.27,-.18,-.33,-.33],["c",-.09,-.18,-.06,-.3,.03,-.54],["c",.75,-1.5,1.23,-3.45,1.17,-4.89],["c",-.06,-1.02,-.42,-2.01,-1.17,-3.15],["c",-.48,-.72,-1.02,-1.35,-1.89,-2.22],["c",-.57,-.57,-1.56,-1.5,-1.92,-1.77],["l",-.12,-.09],["l",0,1.68],["l",0,1.68],["l",-.21,0],["l",-.21,0],["l",0,-15],["z"],["m",.93,-8.07],["c",-.27,-.3,-.48,-.54,-.51,-.54],["c",0,0,0,.69,.03,1.02],["c",.15,1.47,.75,2.94,2.04,4.83],["l",1.08,1.53],["c",.39,.57,.84,1.2,.99,1.44],["c",.15,.24,.3,.45,.3,.45],["c",0,0,.03,-.09,.06,-.21],["c",.36,-1.59,-.15,-3.33,-1.47,-5.4],["c",-.63,-.93,-1.35,-1.83,-2.52,-3.12],["z"],["m",.06,6.72],["c",-.24,-.21,-.48,-.42,-.51,-.45],["l",-.06,-.06],["l",0,.33],["c",0,1.2,.3,2.34,.93,3.6],["c",.45,.9,.96,1.68,2.25,3.51],["c",.39,.54,.84,1.17,1.02,1.44],["c",.21,.33,.33,.51,.33,.48],["c",.06,-.09,.21,-.63,.3,-.99],["c",.06,-.33,.06,-.45,.06,-.96],["c",0,-.6,-.03,-.84,-.18,-1.35],["c",-.3,-1.08,-1.02,-2.28,-2.13,-3.57],["c",-.39,-.45,-1.44,-1.47,-2.01,-1.98],["z"],["m",0,6.72],["c",-.24,-.21,-.48,-.39,-.51,-.42],["l",-.06,-.06],["l",0,.33],["c",0,1.41,.45,2.82,1.38,4.35],["c",.42,.72,.72,1.14,1.86,2.73],["c",.36,.45,.75,.99,.87,1.2],["c",.15,.21,.3,.36,.3,.36],["c",.06,0,.3,-.48,.39,-.75],["c",.09,-.36,.12,-.63,.12,-1.05],["c",-.06,-1.05,-.45,-2.04,-1.2,-3.18],["c",-.57,-.87,-1.11,-1.53,-2.07,-2.49],["c",-.36,-.33,-.84,-.78,-1.08,-1.02],["z"]],w:6.682,h:39.694},"flags.d8th":{d:[["M",5.67,-21.63],["c",.24,-.12,.54,-.06,.69,.15],["c",.06,.06,.21,.36,.39,.66],["c",.84,1.77,1.26,3.36,1.32,5.1],["c",.03,1.29,-.21,2.37,-.81,3.63],["c",-.6,1.23,-1.26,2.13,-3.21,4.38],["c",-1.35,1.53,-1.86,2.19,-2.4,2.97],["c",-.63,.93,-1.11,1.92,-1.38,2.79],["c",-.15,.54,-.27,1.35,-.27,1.8],["l",0,.15],["l",-.21,0],["l",-.21,0],["l",0,-3.75],["l",0,-3.75],["l",.21,0],["l",.21,0],["l",.48,-.3],["c",1.83,-1.11,3.12,-2.1,4.17,-3.12],["c",.78,-.81,1.32,-1.53,1.71,-2.31],["c",.45,-.93,.6,-1.74,.51,-2.88],["c",-.12,-1.56,-.63,-3.18,-1.47,-4.68],["c",-.12,-.21,-.15,-.33,-.06,-.51],["c",.06,-.15,.15,-.24,.33,-.33],["z"]],w:8.492,h:21.691},"flags.ugrace":{d:[["M",6.03,6.93],["c",.15,-.09,.33,-.06,.51,0],["c",.15,.09,.21,.15,.3,.33],["c",.09,.18,.06,.39,-.03,.54],["c",-.06,.15,-10.89,8.88,-11.07,8.97],["c",-.15,.09,-.33,.06,-.48,0],["c",-.18,-.09,-.24,-.15,-.33,-.33],["c",-.09,-.18,-.06,-.39,.03,-.54],["c",.06,-.15,10.89,-8.88,11.07,-8.97],["z"]],w:12.019,h:9.954},"flags.dgrace":{d:[["M",-6.06,-15.93],["c",.18,-.09,.33,-.12,.48,-.06],["c",.18,.09,14.01,8.04,14.1,8.1],["c",.12,.12,.18,.33,.18,.51],["c",-.03,.21,-.15,.39,-.36,.48],["c",-.18,.09,-.33,.12,-.48,.06],["c",-.18,-.09,-14.01,-8.04,-14.1,-8.1],["c",-.12,-.12,-.18,-.33,-.18,-.51],["c",.03,-.21,.15,-.39,.36,-.48],["z"]],w:15.12,h:9.212},"flags.d16th":{d:[["M",6.84,-22.53],["c",.27,-.12,.57,-.06,.72,.15],["c",.15,.15,.33,.87,.45,1.56],["c",.06,.33,.06,1.35,0,1.65],["c",-.06,.33,-.15,.78,-.27,1.11],["c",-.12,.33,-.45,.96,-.66,1.32],["l",-.18,.27],["l",.09,.18],["c",.48,1.02,.72,2.25,.69,3.3],["c",-.06,1.23,-.42,2.28,-1.26,3.45],["c",-.57,.87,-.99,1.32,-3,3.39],["c",-1.56,1.56,-2.22,2.4,-2.76,3.45],["c",-.42,.84,-.66,1.8,-.66,2.55],["l",0,.15],["l",-.21,0],["l",-.21,0],["l",0,-7.5],["l",0,-7.5],["l",.21,0],["l",.21,0],["l",0,1.14],["l",0,1.11],["l",.27,-.15],["c",1.11,-.57,1.77,-.99,2.52,-1.47],["c",2.37,-1.56,3.69,-3.15,4.05,-4.83],["c",.03,-.18,.03,-.39,.03,-.78],["c",0,-.6,-.03,-.93,-.24,-1.5],["c",-.06,-.18,-.12,-.39,-.15,-.45],["c",-.03,-.24,.12,-.48,.36,-.6],["z"],["m",-.63,7.5],["c",-.06,-.18,-.15,-.36,-.15,-.36],["c",-.03,0,-.03,.03,-.06,.06],["c",-.06,.12,-.96,1.02,-1.95,1.98],["c",-.63,.57,-1.26,1.17,-1.44,1.35],["c",-1.53,1.62,-2.28,2.85,-2.55,4.32],["c",-.03,.18,-.03,.54,-.06,.99],["l",0,.69],["l",.18,-.09],["c",.93,-.54,2.1,-1.29,2.82,-1.83],["c",.69,-.51,1.02,-.81,1.53,-1.29],["c",1.86,-1.89,2.37,-3.66,1.68,-5.82],["z"]],w:8.475,h:22.591},"flags.d32nd":{d:[["M",6.84,-29.13],["c",.27,-.12,.57,-.06,.72,.15],["c",.12,.12,.27,.63,.36,1.11],["c",.33,1.59,.06,3.06,-.81,4.47],["l",-.18,.27],["l",.09,.15],["c",.12,.24,.33,.69,.45,1.05],["c",.63,1.83,.45,3.57,-.57,5.22],["l",-.18,.3],["l",.15,.27],["c",.42,.87,.6,1.71,.57,2.61],["c",-.06,1.29,-.48,2.46,-1.35,3.78],["c",-.54,.81,-.93,1.29,-2.46,3],["c",-.51,.54,-1.05,1.17,-1.26,1.41],["c",-1.56,1.86,-2.25,3.36,-2.37,5.01],["l",0,.33],["l",-.21,0],["l",-.21,0],["l",0,-11.25],["l",0,-11.25],["l",.21,0],["l",.21,0],["l",0,1.35],["l",.03,1.35],["l",.78,-.39],["c",1.38,-.69,2.34,-1.26,3.24,-1.92],["c",1.38,-1.02,2.28,-2.13,2.64,-3.21],["c",.15,-.48,.18,-.72,.18,-1.29],["c",0,-.57,-.06,-.9,-.24,-1.47],["c",-.06,-.18,-.12,-.39,-.15,-.45],["c",-.03,-.24,.12,-.48,.36,-.6],["z"],["m",-.63,7.2],["c",-.09,-.18,-.12,-.21,-.12,-.15],["c",-.03,.09,-1.02,1.08,-2.04,2.04],["c",-1.17,1.08,-1.65,1.56,-2.07,2.04],["c",-.84,.96,-1.38,1.86,-1.68,2.76],["c",-.21,.57,-.27,.99,-.3,1.65],["l",0,.54],["l",.66,-.33],["c",3.57,-1.86,5.49,-3.69,5.94,-5.7],["c",.06,-.39,.06,-1.2,-.03,-1.65],["c",-.06,-.39,-.24,-.9,-.36,-1.2],["z"],["m",-.06,7.2],["c",-.06,-.15,-.12,-.33,-.15,-.45],["l",-.06,-.18],["l",-.18,.21],["l",-1.83,1.83],["c",-.87,.9,-1.77,1.8,-1.95,2.01],["c",-1.08,1.29,-1.62,2.31,-1.89,3.51],["c",-.06,.3,-.06,.51,-.09,.93],["l",0,.57],["l",.09,-.06],["c",.75,-.45,1.89,-1.26,2.52,-1.74],["c",.81,-.66,1.74,-1.53,2.22,-2.16],["c",1.26,-1.53,1.68,-3.06,1.32,-4.47],["z"]],w:8.385,h:29.191},"flags.d64th":{d:[["M",7.08,-32.88],["c",.3,-.12,.66,-.03,.78,.24],["c",.18,.33,.27,2.1,.15,2.64],["c",-.09,.39,-.21,.78,-.39,1.08],["l",-.15,.3],["l",.09,.27],["c",.03,.12,.09,.45,.12,.69],["c",.27,1.44,.18,2.55,-.3,3.6],["l",-.12,.33],["l",.06,.42],["c",.27,1.35,.33,2.82,.21,3.63],["c",-.12,.6,-.3,1.23,-.57,1.8],["l",-.15,.27],["l",.03,.42],["c",.06,1.02,.06,2.7,.03,3.06],["c",-.15,1.47,-.66,2.76,-1.74,4.41],["c",-.45,.69,-.75,1.11,-1.74,2.37],["c",-1.05,1.38,-1.5,1.98,-1.95,2.73],["c",-.93,1.5,-1.38,2.82,-1.44,4.2],["l",0,.42],["l",-.21,0],["l",-.21,0],["l",0,-15],["l",0,-15],["l",.21,0],["l",.21,0],["l",0,1.86],["l",0,1.89],["c",0,0,.21,-.03,.45,-.09],["c",2.22,-.39,4.08,-1.11,5.19,-2.01],["c",.63,-.54,1.02,-1.14,1.2,-1.8],["c",.06,-.3,.06,-1.14,-.03,-1.65],["c",-.03,-.18,-.06,-.39,-.09,-.48],["c",-.03,-.24,.12,-.48,.36,-.6],["z"],["m",-.45,6.15],["c",-.03,-.18,-.06,-.42,-.06,-.54],["l",-.03,-.18],["l",-.33,.3],["c",-.42,.36,-.87,.72,-1.68,1.29],["c",-1.98,1.38,-2.25,1.59,-2.85,2.16],["c",-.75,.69,-1.23,1.44,-1.47,2.19],["c",-.15,.45,-.18,.63,-.21,1.35],["l",0,.66],["l",.39,-.18],["c",1.83,-.9,3.45,-1.95,4.47,-2.91],["c",.93,-.9,1.53,-1.83,1.74,-2.82],["c",.06,-.33,.06,-.87,.03,-1.32],["z"],["m",-.27,4.86],["c",-.03,-.21,-.06,-.36,-.06,-.36],["c",0,-.03,-.12,.09,-.24,.24],["c",-.39,.48,-.99,1.08,-2.16,2.19],["c",-1.47,1.38,-1.92,1.83,-2.46,2.49],["c",-.66,.87,-1.08,1.74,-1.29,2.58],["c",-.09,.42,-.15,.87,-.15,1.44],["l",0,.54],["l",.48,-.33],["c",1.5,-1.02,2.58,-1.89,3.51,-2.82],["c",1.47,-1.47,2.25,-2.85,2.4,-4.26],["c",.03,-.39,.03,-1.17,-.03,-1.71],["z"],["m",-.66,7.68],["c",.03,-.15,.03,-.6,.03,-.99],["l",0,-.72],["l",-.27,.33],["l",-1.74,1.98],["c",-1.77,1.92,-2.43,2.76,-2.97,3.9],["c",-.51,1.02,-.72,1.77,-.75,2.91],["c",0,.63,0,.63,.06,.6],["c",.03,-.03,.3,-.27,.63,-.54],["c",.66,-.6,1.86,-1.8,2.31,-2.31],["c",1.65,-1.89,2.52,-3.54,2.7,-5.16],["z"]],w:8.485,h:32.932},"clefs.C":{d:[["M",.06,-14.94],["l",.09,-.06],["l",1.92,0],["l",1.92,0],["l",.09,.06],["l",.06,.09],["l",0,14.85],["l",0,14.82],["l",-.06,.09],["l",-.09,.06],["l",-1.92,0],["l",-1.92,0],["l",-.09,-.06],["l",-.06,-.09],["l",0,-14.82],["l",0,-14.85],["z"],["m",5.37,0],["c",.09,-.06,.09,-.06,.57,-.06],["c",.45,0,.45,0,.54,.06],["l",.06,.09],["l",0,7.14],["l",0,7.11],["l",.09,-.06],["c",.18,-.18,.72,-.84,.96,-1.2],["c",.3,-.45,.66,-1.17,.84,-1.65],["c",.36,-.9,.57,-1.83,.6,-2.79],["c",.03,-.48,.03,-.54,.09,-.63],["c",.12,-.18,.36,-.21,.54,-.12],["c",.18,.09,.21,.15,.24,.66],["c",.06,.87,.21,1.56,.57,2.22],["c",.51,1.02,1.26,1.68,2.22,1.92],["c",.21,.06,.33,.06,.78,.06],["c",.45,0,.57,0,.84,-.06],["c",.45,-.12,.81,-.33,1.08,-.6],["c",.57,-.57,.87,-1.41,.99,-2.88],["c",.06,-.54,.06,-3,0,-3.57],["c",-.21,-2.58,-.84,-3.87,-2.16,-4.5],["c",-.48,-.21,-1.17,-.36,-1.77,-.36],["c",-.69,0,-1.29,.27,-1.5,.72],["c",-.06,.15,-.06,.21,-.06,.42],["c",0,.24,0,.3,.06,.45],["c",.12,.24,.24,.39,.63,.66],["c",.42,.3,.57,.48,.69,.72],["c",.06,.15,.06,.21,.06,.48],["c",0,.39,-.03,.63,-.21,.96],["c",-.3,.6,-.87,1.08,-1.5,1.26],["c",-.27,.06,-.87,.06,-1.14,0],["c",-.78,-.24,-1.44,-.87,-1.65,-1.68],["c",-.12,-.42,-.09,-1.17,.09,-1.71],["c",.51,-1.65,1.98,-2.82,3.81,-3.09],["c",.84,-.09,2.46,.03,3.51,.27],["c",2.22,.57,3.69,1.8,4.44,3.75],["c",.36,.93,.57,2.13,.57,3.36],["c",0,1.44,-.48,2.73,-1.38,3.81],["c",-1.26,1.5,-3.27,2.43,-5.28,2.43],["c",-.48,0,-.51,0,-.75,-.09],["c",-.15,-.03,-.48,-.21,-.78,-.36],["c",-.69,-.36,-.87,-.42,-1.26,-.42],["c",-.27,0,-.3,0,-.51,.09],["c",-.57,.3,-.81,.9,-.81,2.1],["c",0,1.23,.24,1.83,.81,2.13],["c",.21,.09,.24,.09,.51,.09],["c",.39,0,.57,-.06,1.26,-.42],["c",.3,-.15,.63,-.33,.78,-.36],["c",.24,-.09,.27,-.09,.75,-.09],["c",2.01,0,4.02,.93,5.28,2.4],["c",.9,1.11,1.38,2.4,1.38,3.84],["c",0,1.5,-.3,2.88,-.84,3.96],["c",-.78,1.59,-2.19,2.64,-4.17,3.15],["c",-1.05,.24,-2.67,.36,-3.51,.27],["c",-1.83,-.27,-3.3,-1.44,-3.81,-3.09],["c",-.18,-.54,-.21,-1.29,-.09,-1.74],["c",.15,-.6,.63,-1.2,1.23,-1.47],["c",.36,-.18,.57,-.21,.99,-.21],["c",.42,0,.63,.03,1.02,.21],["c",.42,.21,.84,.63,1.05,1.05],["c",.18,.36,.21,.6,.21,.96],["c",0,.3,0,.36,-.06,.51],["c",-.12,.24,-.27,.42,-.69,.72],["c",-.57,.42,-.69,.63,-.69,1.08],["c",0,.24,0,.3,.06,.45],["c",.12,.21,.3,.39,.57,.54],["c",.42,.18,.87,.21,1.53,.15],["c",1.08,-.15,1.8,-.57,2.34,-1.32],["c",.54,-.75,.84,-1.83,.99,-3.51],["c",.06,-.57,.06,-3.03,0,-3.57],["c",-.12,-1.47,-.42,-2.31,-.99,-2.88],["c",-.27,-.27,-.63,-.48,-1.08,-.6],["c",-.27,-.06,-.39,-.06,-.84,-.06],["c",-.45,0,-.57,0,-.78,.06],["c",-1.14,.27,-2.01,1.17,-2.46,2.49],["c",-.21,.57,-.3,.99,-.33,1.65],["c",-.03,.51,-.06,.57,-.24,.66],["c",-.12,.06,-.27,.06,-.39,0],["c",-.21,-.09,-.21,-.15,-.24,-.75],["c",-.09,-1.92,-.78,-3.72,-2.01,-5.19],["c",-.18,-.21,-.36,-.42,-.39,-.45],["l",-.09,-.06],["l",0,7.11],["l",0,7.14],["l",-.06,.09],["c",-.09,.06,-.09,.06,-.54,.06],["c",-.48,0,-.48,0,-.57,-.06],["l",-.06,-.09],["l",0,-14.82],["l",0,-14.85],["z"]],w:20.31,h:29.97},"clefs.F":{d:[["M",6.3,-7.8],["c",.36,-.03,1.65,0,2.13,.03],["c",3.6,.42,6.03,2.1,6.93,4.86],["c",.27,.84,.36,1.5,.36,2.58],["c",0,.9,-.03,1.35,-.18,2.16],["c",-.78,3.78,-3.54,7.08,-8.37,9.96],["c",-1.74,1.05,-3.87,2.13,-6.18,3.12],["c",-.39,.18,-.75,.33,-.81,.36],["c",-.06,.03,-.15,.06,-.18,.06],["c",-.15,0,-.33,-.18,-.33,-.33],["c",0,-.15,.06,-.21,.51,-.48],["c",3,-1.77,5.13,-3.21,6.84,-4.74],["c",.51,-.45,1.59,-1.5,1.95,-1.95],["c",1.89,-2.19,2.88,-4.32,3.15,-6.78],["c",.06,-.42,.06,-1.77,0,-2.19],["c",-.24,-2.01,-.93,-3.63,-2.04,-4.71],["c",-.63,-.63,-1.29,-1.02,-2.07,-1.2],["c",-1.62,-.39,-3.36,.15,-4.56,1.44],["c",-.54,.6,-1.05,1.47,-1.32,2.22],["l",-.09,.21],["l",.24,-.12],["c",.39,-.21,.63,-.24,1.11,-.24],["c",.3,0,.45,0,.66,.06],["c",1.92,.48,2.85,2.55,1.95,4.38],["c",-.45,.99,-1.41,1.62,-2.46,1.71],["c",-1.47,.09,-2.91,-.87,-3.39,-2.25],["c",-.18,-.57,-.21,-1.32,-.03,-2.28],["c",.39,-2.25,1.83,-4.2,3.81,-5.19],["c",.69,-.36,1.59,-.6,2.37,-.69],["z"],["m",11.58,2.52],["c",.84,-.21,1.71,.3,1.89,1.14],["c",.3,1.17,-.72,2.19,-1.89,1.89],["c",-.99,-.21,-1.5,-1.32,-1.02,-2.25],["c",.18,-.39,.6,-.69,1.02,-.78],["z"],["m",0,7.5],["c",.84,-.21,1.71,.3,1.89,1.14],["c",.21,.87,-.3,1.71,-1.14,1.89],["c",-.87,.21,-1.71,-.3,-1.89,-1.14],["c",-.21,-.84,.3,-1.71,1.14,-1.89],["z"]],w:20.153,h:23.142},"clefs.G":{d:[["M",9.69,-37.41],["c",.09,-.09,.24,-.06,.36,0],["c",.12,.09,.57,.6,.96,1.11],["c",1.77,2.34,3.21,5.85,3.57,8.73],["c",.21,1.56,.03,3.27,-.45,4.86],["c",-.69,2.31,-1.92,4.47,-4.23,7.44],["c",-.3,.39,-.57,.72,-.6,.75],["c",-.03,.06,0,.15,.18,.78],["c",.54,1.68,1.38,4.44,1.68,5.49],["l",.09,.42],["l",.39,0],["c",1.47,.09,2.76,.51,3.96,1.29],["c",1.83,1.23,3.06,3.21,3.39,5.52],["c",.09,.45,.12,1.29,.06,1.74],["c",-.09,1.02,-.33,1.83,-.75,2.73],["c",-.84,1.71,-2.28,3.06,-4.02,3.72],["l",-.33,.12],["l",.03,1.26],["c",0,1.74,-.06,3.63,-.21,4.62],["c",-.45,3.06,-2.19,5.49,-4.47,6.21],["c",-.57,.18,-.9,.21,-1.59,.21],["c",-.69,0,-1.02,-.03,-1.65,-.21],["c",-1.14,-.27,-2.13,-.84,-2.94,-1.65],["c",-.99,-.99,-1.56,-2.16,-1.71,-3.54],["c",-.09,-.81,.06,-1.53,.45,-2.13],["c",.63,-.99,1.83,-1.56,3,-1.53],["c",1.5,.09,2.64,1.32,2.73,2.94],["c",.06,1.47,-.93,2.7,-2.37,2.97],["c",-.45,.06,-.84,.03,-1.29,-.09],["l",-.21,-.09],["l",.09,.12],["c",.39,.54,.78,.93,1.32,1.26],["c",1.35,.87,3.06,1.02,4.35,.36],["c",1.44,-.72,2.52,-2.28,2.97,-4.35],["c",.15,-.66,.24,-1.5,.3,-3.03],["c",.03,-.84,.03,-2.94,0,-3],["c",-.03,0,-.18,0,-.36,.03],["c",-.66,.12,-.99,.12,-1.83,.12],["c",-1.05,0,-1.71,-.06,-2.61,-.3],["c",-4.02,-.99,-7.11,-4.35,-7.8,-8.46],["c",-.12,-.66,-.12,-.99,-.12,-1.83],["c",0,-.84,0,-1.14,.15,-1.92],["c",.36,-2.28,1.41,-4.62,3.3,-7.29],["l",2.79,-3.6],["c",.54,-.66,.96,-1.2,.96,-1.23],["c",0,-.03,-.09,-.33,-.18,-.69],["c",-.96,-3.21,-1.41,-5.28,-1.59,-7.68],["c",-.12,-1.38,-.15,-3.09,-.06,-3.96],["c",.33,-2.67,1.38,-5.07,3.12,-7.08],["c",.36,-.42,.99,-1.05,1.17,-1.14],["z"],["m",2.01,4.71],["c",-.15,-.3,-.3,-.54,-.3,-.54],["c",-.03,0,-.18,.09,-.3,.21],["c",-2.4,1.74,-3.87,4.2,-4.26,7.11],["c",-.06,.54,-.06,1.41,-.03,1.89],["c",.09,1.29,.48,3.12,1.08,5.22],["c",.15,.42,.24,.78,.24,.81],["c",0,.03,.84,-1.11,1.23,-1.68],["c",1.89,-2.73,2.88,-5.07,3.15,-7.53],["c",.09,-.57,.12,-1.74,.06,-2.37],["c",-.09,-1.23,-.27,-1.92,-.87,-3.12],["z"],["m",-2.94,20.7],["c",-.21,-.72,-.39,-1.32,-.42,-1.32],["c",0,0,-1.2,1.47,-1.86,2.37],["c",-2.79,3.63,-4.02,6.3,-4.35,9.3],["c",-.03,.21,-.03,.69,-.03,1.08],["c",0,.69,0,.75,.06,1.11],["c",.12,.54,.27,.99,.51,1.47],["c",.69,1.38,1.83,2.55,3.42,3.42],["c",.96,.54,2.07,.9,3.21,1.08],["c",.78,.12,2.04,.12,2.94,-.03],["c",.51,-.06,.45,-.03,.42,-.3],["c",-.24,-3.33,-.72,-6.33,-1.62,-10.08],["c",-.09,-.39,-.18,-.75,-.18,-.78],["c",-.03,-.03,-.42,0,-.81,.09],["c",-.9,.18,-1.65,.57,-2.22,1.14],["c",-.72,.72,-1.08,1.65,-1.05,2.64],["c",.06,.96,.48,1.83,1.23,2.58],["c",.36,.36,.72,.63,1.17,.9],["c",.33,.18,.36,.21,.42,.33],["c",.18,.42,-.18,.9,-.6,.87],["c",-.18,-.03,-.84,-.36,-1.26,-.63],["c",-.78,-.51,-1.38,-1.11,-1.86,-1.83],["c",-1.77,-2.7,-.99,-6.42,1.71,-8.19],["c",.3,-.21,.81,-.48,1.17,-.63],["c",.3,-.09,1.02,-.3,1.14,-.3],["c",.06,0,.09,0,.09,-.03],["c",.03,-.03,-.51,-1.92,-1.23,-4.26],["z"],["m",3.78,7.41],["c",-.18,-.03,-.36,-.06,-.39,-.06],["c",-.03,0,0,.21,.18,1.02],["c",.75,3.18,1.26,6.3,1.5,9.09],["c",.06,.72,0,.69,.51,.42],["c",.78,-.36,1.44,-.96,1.98,-1.77],["c",1.08,-1.62,1.2,-3.69,.3,-5.55],["c",-.81,-1.62,-2.31,-2.79,-4.08,-3.15],["z"]],w:19.051,h:57.057},"clefs.perc":{d:[["M",5.07,-7.44],["l",.09,-.06],["l",1.53,0],["l",1.53,0],["l",.09,.06],["l",.06,.09],["l",0,7.35],["l",0,7.32],["l",-.06,.09],["l",-.09,.06],["l",-1.53,0],["l",-1.53,0],["l",-.09,-.06],["l",-.06,-.09],["l",0,-7.32],["l",0,-7.35],["z"],["m",6.63,0],["l",.09,-.06],["l",1.53,0],["l",1.53,0],["l",.09,.06],["l",.06,.09],["l",0,7.35],["l",0,7.32],["l",-.06,.09],["l",-.09,.06],["l",-1.53,0],["l",-1.53,0],["l",-.09,-.06],["l",-.06,-.09],["l",0,-7.32],["l",0,-7.35],["z"]],w:9.99,h:14.97},"timesig.common":{d:[["M",6.66,-7.83],["c",.72,-.06,1.41,-.03,1.98,.09],["c",1.2,.27,2.34,.96,3.09,1.92],["c",.63,.81,1.08,1.86,1.14,2.73],["c",.06,1.02,-.51,1.92,-1.44,2.22],["c",-.24,.09,-.3,.09,-.63,.09],["c",-.33,0,-.42,0,-.63,-.06],["c",-.66,-.24,-1.14,-.63,-1.41,-1.2],["c",-.15,-.3,-.21,-.51,-.24,-.9],["c",-.06,-1.08,.57,-2.04,1.56,-2.37],["c",.18,-.06,.27,-.06,.63,-.06],["l",.45,0],["c",.06,.03,.09,.03,.09,0],["c",0,0,-.09,-.12,-.24,-.27],["c",-1.02,-1.11,-2.55,-1.68,-4.08,-1.5],["c",-1.29,.15,-2.04,.69,-2.4,1.74],["c",-.36,.93,-.42,1.89,-.42,5.37],["c",0,2.97,.06,3.96,.24,4.77],["c",.24,1.08,.63,1.68,1.41,2.07],["c",.81,.39,2.16,.45,3.18,.09],["c",1.29,-.45,2.37,-1.53,3.03,-2.97],["c",.15,-.33,.33,-.87,.39,-1.17],["c",.09,-.24,.15,-.36,.3,-.39],["c",.21,-.03,.42,.15,.39,.36],["c",-.06,.39,-.42,1.38,-.69,1.89],["c",-.96,1.8,-2.49,2.94,-4.23,3.18],["c",-.99,.12,-2.58,-.06,-3.63,-.45],["c",-.96,-.36,-1.71,-.84,-2.4,-1.5],["c",-1.11,-1.11,-1.8,-2.61,-2.04,-4.56],["c",-.06,-.6,-.06,-2.01,0,-2.61],["c",.24,-1.95,.9,-3.45,2.01,-4.56],["c",.69,-.66,1.44,-1.11,2.37,-1.47],["c",.63,-.24,1.47,-.42,2.22,-.48],["z"]],w:13.038,h:15.689},"timesig.cut":{d:[["M",6.24,-10.44],["c",.09,-.06,.09,-.06,.48,-.06],["c",.36,0,.36,0,.45,.06],["l",.06,.09],["l",0,1.23],["l",0,1.26],["l",.27,0],["c",1.26,0,2.49,.45,3.48,1.29],["c",1.05,.87,1.8,2.28,1.89,3.48],["c",.06,1.02,-.51,1.92,-1.44,2.22],["c",-.24,.09,-.3,.09,-.63,.09],["c",-.33,0,-.42,0,-.63,-.06],["c",-.66,-.24,-1.14,-.63,-1.41,-1.2],["c",-.15,-.3,-.21,-.51,-.24,-.9],["c",-.06,-1.08,.57,-2.04,1.56,-2.37],["c",.18,-.06,.27,-.06,.63,-.06],["l",.45,0],["c",.06,.03,.09,.03,.09,0],["c",0,-.03,-.45,-.51,-.66,-.69],["c",-.87,-.69,-1.83,-1.05,-2.94,-1.11],["l",-.42,0],["l",0,7.17],["l",0,7.14],["l",.42,0],["c",.69,-.03,1.23,-.18,1.86,-.51],["c",1.05,-.51,1.89,-1.47,2.46,-2.7],["c",.15,-.33,.33,-.87,.39,-1.17],["c",.09,-.24,.15,-.36,.3,-.39],["c",.21,-.03,.42,.15,.39,.36],["c",-.03,.24,-.21,.78,-.39,1.2],["c",-.96,2.37,-2.94,3.9,-5.13,3.9],["l",-.3,0],["l",0,1.26],["l",0,1.23],["l",-.06,.09],["c",-.09,.06,-.09,.06,-.45,.06],["c",-.39,0,-.39,0,-.48,-.06],["l",-.06,-.09],["l",0,-1.29],["l",0,-1.29],["l",-.21,-.03],["c",-1.23,-.21,-2.31,-.63,-3.21,-1.29],["c",-.15,-.09,-.45,-.36,-.66,-.57],["c",-1.11,-1.11,-1.8,-2.61,-2.04,-4.56],["c",-.06,-.6,-.06,-2.01,0,-2.61],["c",.24,-1.95,.93,-3.45,2.04,-4.59],["c",.42,-.39,.78,-.66,1.26,-.93],["c",.75,-.45,1.65,-.75,2.61,-.9],["l",.21,-.03],["l",0,-1.29],["l",0,-1.29],["z"],["m",-.06,10.44],["c",0,-5.58,0,-6.99,-.03,-6.99],["c",-.15,0,-.63,.27,-.87,.45],["c",-.45,.36,-.75,.93,-.93,1.77],["c",-.18,.81,-.24,1.8,-.24,4.74],["c",0,2.97,.06,3.96,.24,4.77],["c",.24,1.08,.66,1.68,1.41,2.07],["c",.12,.06,.3,.12,.33,.15],["l",.09,0],["l",0,-6.96],["z"]],w:13.038,h:20.97},"timesig.imperfectum":{d:[["M",13,-5],["a",8,8,0,1,0,0,10]],w:13.038,h:20.97},"timesig.imperfectum2":{d:[["M",13,-5],["a",8,8,0,1,0,0,10]],w:13.038,h:20.97},"timesig.perfectum":{d:[["M",13,-5],["a",8,8,0,1,0,0,10]],w:13.038,h:20.97},"timesig.perfectum2":{d:[["M",13,-5],["a",8,8,0,1,0,0,10]],w:13.038,h:20.97},f:{d:[["M",9.93,-14.28],["c",1.53,-.18,2.88,.45,3.12,1.5],["c",.12,.51,0,1.32,-.27,1.86],["c",-.15,.3,-.42,.57,-.63,.69],["c",-.69,.36,-1.56,.03,-1.83,-.69],["c",-.09,-.24,-.09,-.69,0,-.87],["c",.06,-.12,.21,-.24,.45,-.42],["c",.42,-.24,.57,-.45,.6,-.72],["c",.03,-.33,-.09,-.39,-.63,-.42],["c",-.3,0,-.45,0,-.6,.03],["c",-.81,.21,-1.35,.93,-1.74,2.46],["c",-.06,.27,-.48,2.25,-.48,2.31],["c",0,.03,.39,.03,.9,.03],["c",.72,0,.9,0,.99,.06],["c",.42,.15,.45,.72,.03,.9],["c",-.12,.06,-.24,.06,-1.17,.06],["l",-1.05,0],["l",-.78,2.55],["c",-.45,1.41,-.87,2.79,-.96,3.06],["c",-.87,2.37,-2.37,4.74,-3.78,5.91],["c",-1.05,.9,-2.04,1.23,-3.09,1.08],["c",-1.11,-.18,-1.89,-.78,-2.04,-1.59],["c",-.12,-.66,.15,-1.71,.54,-2.19],["c",.69,-.75,1.86,-.54,2.22,.39],["c",.06,.15,.09,.27,.09,.48],["c",0,.24,-.03,.27,-.12,.42],["c",-.03,.09,-.15,.18,-.27,.27],["c",-.09,.06,-.27,.21,-.36,.27],["c",-.24,.18,-.36,.36,-.39,.6],["c",-.03,.33,.09,.39,.63,.42],["c",.42,0,.63,-.03,.9,-.15],["c",.6,-.3,.96,-.96,1.38,-2.64],["c",.09,-.42,.63,-2.55,1.17,-4.77],["l",1.02,-4.08],["c",0,-.03,-.36,-.03,-.81,-.03],["c",-.72,0,-.81,0,-.93,-.06],["c",-.42,-.18,-.39,-.75,.03,-.9],["c",.09,-.06,.27,-.06,1.05,-.06],["l",.96,0],["l",0,-.09],["c",.06,-.18,.3,-.72,.51,-1.17],["c",1.2,-2.46,3.3,-4.23,5.34,-4.5],["z"]],w:16.155,h:19.445},m:{d:[["M",2.79,-8.91],["c",.09,0,.3,-.03,.45,-.03],["c",.24,.03,.3,.03,.45,.12],["c",.36,.15,.63,.54,.75,1.02],["l",.03,.21],["l",.33,-.3],["c",.69,-.69,1.38,-1.02,2.07,-1.02],["c",.27,0,.33,0,.48,.06],["c",.21,.09,.48,.36,.63,.6],["c",.03,.09,.12,.27,.18,.42],["c",.03,.15,.09,.27,.12,.27],["c",0,0,.09,-.09,.18,-.21],["c",.33,-.39,.87,-.81,1.29,-.99],["c",.78,-.33,1.47,-.21,2.01,.33],["c",.3,.33,.48,.69,.6,1.14],["c",.09,.42,.06,.54,-.54,3.06],["c",-.33,1.29,-.57,2.4,-.57,2.43],["c",0,.12,.09,.21,.21,.21],["c",.24,0,.75,-.3,1.2,-.72],["c",.45,-.39,.6,-.45,.78,-.27],["c",.18,.18,.09,.36,-.45,.87],["c",-1.05,.96,-1.83,1.47,-2.58,1.71],["c",-.93,.33,-1.53,.21,-1.8,-.33],["c",-.06,-.15,-.06,-.21,-.06,-.45],["c",0,-.24,.03,-.48,.6,-2.82],["c",.42,-1.71,.6,-2.64,.63,-2.79],["c",.03,-.57,-.3,-.75,-.84,-.48],["c",-.24,.12,-.54,.39,-.66,.63],["c",-.03,.09,-.42,1.38,-.9,3],["c",-.9,3.15,-.84,3,-1.14,3.15],["l",-.15,.09],["l",-.78,0],["c",-.6,0,-.78,0,-.84,-.06],["c",-.09,-.03,-.18,-.18,-.18,-.27],["c",0,-.03,.36,-1.38,.84,-2.97],["c",.57,-2.04,.81,-2.97,.84,-3.12],["c",.03,-.54,-.3,-.72,-.84,-.45],["c",-.24,.12,-.57,.42,-.66,.63],["c",-.06,.09,-.51,1.44,-1.05,2.97],["c",-.51,1.56,-.99,2.85,-.99,2.91],["c",-.06,.12,-.21,.24,-.36,.3],["c",-.12,.06,-.21,.06,-.9,.06],["c",-.6,0,-.78,0,-.84,-.06],["c",-.09,-.03,-.18,-.18,-.18,-.27],["c",0,-.03,.45,-1.38,.99,-2.97],["c",1.05,-3.18,1.05,-3.18,.93,-3.45],["c",-.12,-.27,-.39,-.3,-.72,-.15],["c",-.54,.27,-1.14,1.17,-1.56,2.4],["c",-.06,.15,-.15,.3,-.18,.36],["c",-.21,.21,-.57,.27,-.72,.09],["c",-.09,-.09,-.06,-.21,.06,-.63],["c",.48,-1.26,1.26,-2.46,2.01,-3.21],["c",.57,-.54,1.2,-.87,1.83,-1.02],["z"]],w:14.687,h:9.126},p:{d:[["M",1.92,-8.7],["c",.27,-.09,.81,-.06,1.11,.03],["c",.54,.18,.93,.51,1.17,.99],["c",.09,.15,.15,.33,.18,.36],["l",0,.12],["l",.3,-.27],["c",.66,-.6,1.35,-1.02,2.13,-1.2],["c",.21,-.06,.33,-.06,.78,-.06],["c",.45,0,.51,0,.84,.09],["c",1.29,.33,2.07,1.32,2.25,2.79],["c",.09,.81,-.09,2.01,-.45,2.79],["c",-.54,1.26,-1.86,2.55,-3.18,3.03],["c",-.45,.18,-.81,.24,-1.29,.24],["c",-.69,-.03,-1.35,-.18,-1.86,-.45],["c",-.3,-.15,-.51,-.18,-.69,-.09],["c",-.09,.03,-.18,.09,-.18,.12],["c",-.09,.12,-1.05,2.94,-1.05,3.06],["c",0,.24,.18,.48,.51,.63],["c",.18,.06,.54,.15,.75,.15],["c",.21,0,.36,.06,.42,.18],["c",.12,.18,.06,.42,-.12,.54],["c",-.09,.03,-.15,.03,-.78,0],["c",-1.98,-.15,-3.81,-.15,-5.79,0],["c",-.63,.03,-.69,.03,-.78,0],["c",-.24,-.15,-.24,-.57,.03,-.66],["c",.06,-.03,.48,-.09,.99,-.12],["c",.87,-.06,1.11,-.09,1.35,-.21],["c",.18,-.06,.33,-.18,.39,-.3],["c",.06,-.12,3.24,-9.42,3.27,-9.6],["c",.06,-.33,.03,-.57,-.15,-.69],["c",-.09,-.06,-.12,-.06,-.3,-.06],["c",-.69,.06,-1.53,1.02,-2.28,2.61],["c",-.09,.21,-.21,.45,-.27,.51],["c",-.09,.12,-.33,.24,-.48,.24],["c",-.18,0,-.36,-.15,-.36,-.3],["c",0,-.24,.78,-1.83,1.26,-2.55],["c",.72,-1.11,1.47,-1.74,2.28,-1.92],["z"],["m",5.37,1.47],["c",-.27,-.12,-.75,-.03,-1.14,.21],["c",-.75,.48,-1.47,1.68,-1.89,3.15],["c",-.45,1.47,-.42,2.34,0,2.7],["c",.45,.39,1.26,.21,1.83,-.36],["c",.51,-.51,.99,-1.68,1.38,-3.27],["c",.3,-1.17,.33,-1.74,.15,-2.13],["c",-.09,-.15,-.15,-.21,-.33,-.3],["z"]],w:14.689,h:13.127},r:{d:[["M",6.33,-9.12],["c",.27,-.03,.93,0,1.2,.06],["c",.84,.21,1.23,.81,1.02,1.53],["c",-.24,.75,-.9,1.17,-1.56,.96],["c",-.33,-.09,-.51,-.3,-.66,-.75],["c",-.03,-.12,-.09,-.24,-.12,-.3],["c",-.09,-.15,-.3,-.24,-.48,-.24],["c",-.57,0,-1.38,.54,-1.65,1.08],["c",-.06,.15,-.33,1.17,-.9,3.27],["c",-.57,2.31,-.81,3.12,-.87,3.21],["c",-.03,.06,-.12,.15,-.18,.21],["l",-.12,.06],["l",-.81,.03],["c",-.69,0,-.81,0,-.9,-.03],["c",-.09,-.06,-.18,-.21,-.18,-.3],["c",0,-.06,.39,-1.62,.9,-3.51],["c",.84,-3.24,.87,-3.45,.87,-3.72],["c",0,-.21,0,-.27,-.03,-.36],["c",-.12,-.15,-.21,-.24,-.42,-.24],["c",-.24,0,-.45,.15,-.78,.42],["c",-.33,.36,-.45,.54,-.72,1.14],["c",-.03,.12,-.21,.24,-.36,.27],["c",-.12,0,-.15,0,-.24,-.06],["c",-.18,-.12,-.18,-.21,-.06,-.54],["c",.21,-.57,.42,-.93,.78,-1.32],["c",.54,-.51,1.2,-.81,1.95,-.87],["c",.81,-.03,1.53,.3,1.92,.87],["l",.12,.18],["l",.09,-.09],["c",.57,-.45,1.41,-.84,2.19,-.96],["z"]],w:9.41,h:9.132},s:{d:[["M",4.47,-8.73],["c",.09,0,.36,-.03,.57,-.03],["c",.75,.03,1.29,.24,1.71,.63],["c",.51,.54,.66,1.26,.36,1.83],["c",-.24,.42,-.63,.57,-1.11,.42],["c",-.33,-.09,-.6,-.36,-.6,-.57],["c",0,-.03,.06,-.21,.15,-.39],["c",.12,-.21,.15,-.33,.18,-.48],["c",0,-.24,-.06,-.48,-.15,-.6],["c",-.15,-.21,-.42,-.24,-.75,-.15],["c",-.27,.06,-.48,.18,-.69,.36],["c",-.39,.39,-.51,.96,-.33,1.38],["c",.09,.21,.42,.51,.78,.72],["c",1.11,.69,1.59,1.11,1.89,1.68],["c",.21,.39,.24,.78,.15,1.29],["c",-.18,1.2,-1.17,2.16,-2.52,2.52],["c",-1.02,.24,-1.95,.12,-2.7,-.42],["c",-.72,-.51,-.99,-1.47,-.6,-2.19],["c",.24,-.48,.72,-.63,1.17,-.42],["c",.33,.18,.54,.45,.57,.81],["c",0,.21,-.03,.3,-.33,.51],["c",-.33,.24,-.39,.42,-.27,.69],["c",.06,.15,.21,.27,.45,.33],["c",.3,.09,.87,.09,1.2,0],["c",.75,-.21,1.23,-.72,1.29,-1.35],["c",.03,-.42,-.15,-.81,-.54,-1.2],["c",-.24,-.24,-.48,-.42,-1.41,-1.02],["c",-.69,-.42,-1.05,-.93,-1.05,-1.47],["c",0,-.39,.12,-.87,.3,-1.23],["c",.27,-.57,.78,-1.05,1.38,-1.35],["c",.24,-.12,.63,-.27,.9,-.3],["z"]],w:6.632,h:8.758},z:{d:[["M",2.64,-7.95],["c",.36,-.09,.81,-.03,1.71,.27],["c",.78,.21,.96,.27,1.74,.3],["c",.87,.06,1.02,.03,1.38,-.21],["c",.21,-.15,.33,-.15,.48,-.06],["c",.15,.09,.21,.3,.15,.45],["c",-.03,.06,-1.26,1.26,-2.76,2.67],["l",-2.73,2.55],["l",.54,.03],["c",.54,.03,.72,.03,2.01,.15],["c",.36,.03,.9,.06,1.2,.09],["c",.66,0,.81,-.03,1.02,-.24],["c",.3,-.3,.39,-.72,.27,-1.23],["c",-.06,-.27,-.06,-.27,-.03,-.39],["c",.15,-.3,.54,-.27,.69,.03],["c",.15,.33,.27,1.02,.27,1.5],["c",0,1.47,-1.11,2.7,-2.52,2.79],["c",-.57,.03,-1.02,-.09,-2.01,-.51],["c",-1.02,-.42,-1.23,-.48,-2.13,-.54],["c",-.81,-.06,-.96,-.03,-1.26,.18],["c",-.12,.06,-.24,.12,-.27,.12],["c",-.27,0,-.45,-.3,-.36,-.51],["c",.03,-.06,1.32,-1.32,2.91,-2.79],["l",2.88,-2.73],["c",-.03,0,-.21,.03,-.42,.06],["c",-.21,.03,-.78,.09,-1.23,.12],["c",-1.11,.12,-1.23,.15,-1.95,.27],["c",-.72,.15,-1.17,.18,-1.29,.09],["c",-.27,-.18,-.21,-.75,.12,-1.26],["c",.39,-.6,.93,-1.02,1.59,-1.2],["z"]],w:8.573,h:8.743},"+":{d:[["M",3.48,-9.3],["c",.18,-.09,.36,-.09,.54,0],["c",.18,.09,.24,.15,.33,.3],["l",.06,.15],["l",0,1.29],["l",0,1.29],["l",1.29,0],["c",1.23,0,1.29,0,1.41,.06],["c",.06,.03,.15,.09,.18,.12],["c",.12,.09,.21,.33,.21,.48],["c",0,.15,-.09,.39,-.21,.48],["c",-.03,.03,-.12,.09,-.18,.12],["c",-.12,.06,-.18,.06,-1.41,.06],["l",-1.29,0],["l",0,1.29],["c",0,1.23,0,1.29,-.06,1.41],["c",-.09,.18,-.15,.24,-.3,.33],["c",-.21,.09,-.39,.09,-.57,0],["c",-.18,-.09,-.24,-.15,-.33,-.33],["c",-.06,-.12,-.06,-.18,-.06,-1.41],["l",0,-1.29],["l",-1.29,0],["c",-1.23,0,-1.29,0,-1.41,-.06],["c",-.18,-.09,-.24,-.15,-.33,-.33],["c",-.09,-.18,-.09,-.36,0,-.54],["c",.09,-.18,.15,-.24,.33,-.33],["l",.15,-.06],["l",1.26,0],["l",1.29,0],["l",0,-1.29],["c",0,-1.23,0,-1.29,.06,-1.41],["c",.09,-.18,.15,-.24,.33,-.33],["z"]],w:7.507,h:7.515},",":{d:[["M",1.32,-3.36],["c",.57,-.15,1.17,.03,1.59,.45],["c",.45,.45,.6,.96,.51,1.89],["c",-.09,1.23,-.42,2.46,-.99,3.93],["c",-.3,.72,-.72,1.62,-.78,1.68],["c",-.18,.21,-.51,.18,-.66,-.06],["c",-.03,-.06,-.06,-.15,-.06,-.18],["c",0,-.06,.12,-.33,.24,-.63],["c",.84,-1.8,1.02,-2.61,.69,-3.24],["c",-.12,-.24,-.27,-.36,-.75,-.6],["c",-.36,-.15,-.42,-.21,-.6,-.39],["c",-.69,-.69,-.69,-1.71,0,-2.4],["c",.21,-.21,.51,-.39,.81,-.45],["z"]],w:3.452,h:8.143},"-":{d:[["M",.18,-5.34],["c",.09,-.06,.15,-.06,2.31,-.06],["c",2.46,0,2.37,0,2.46,.21],["c",.12,.21,.03,.42,-.15,.54],["c",-.09,.06,-.15,.06,-2.28,.06],["c",-2.16,0,-2.22,0,-2.31,-.06],["c",-.27,-.15,-.27,-.54,-.03,-.69],["z"]],w:5.001,h:.81},".":{d:[["M",1.32,-3.36],["c",1.05,-.27,2.1,.57,2.1,1.65],["c",0,1.08,-1.05,1.92,-2.1,1.65],["c",-.9,-.21,-1.5,-1.14,-1.26,-2.04],["c",.12,-.63,.63,-1.11,1.26,-1.26],["z"]],w:3.413,h:3.402},"scripts.wedge":{d:[["M",-3.66,-7.44],["c",.06,-.09,0,-.09,.81,.03],["c",1.86,.3,3.84,.3,5.73,0],["c",.78,-.12,.72,-.12,.78,-.03],["c",.15,.15,.12,.24,-.24,.6],["c",-.93,.93,-1.98,2.76,-2.67,4.62],["c",-.3,.78,-.51,1.71,-.51,2.13],["c",0,.15,0,.18,-.06,.27],["c",-.12,.09,-.24,.09,-.36,0],["c",-.06,-.09,-.06,-.12,-.06,-.27],["c",0,-.42,-.21,-1.35,-.51,-2.13],["c",-.69,-1.86,-1.74,-3.69,-2.67,-4.62],["c",-.36,-.36,-.39,-.45,-.24,-.6],["z"]],w:7.49,h:7.752},"scripts.thumb":{d:[["M",-.54,-3.69],["c",.15,-.03,.36,-.06,.51,-.06],["c",1.44,0,2.58,1.11,2.94,2.85],["c",.09,.48,.09,1.32,0,1.8],["c",-.27,1.41,-1.08,2.43,-2.16,2.73],["l",-.18,.06],["l",0,.12],["c",.03,.06,.06,.45,.09,.87],["c",.03,.57,.03,.78,0,.84],["c",-.09,.27,-.39,.48,-.66,.48],["c",-.27,0,-.57,-.21,-.66,-.48],["c",-.03,-.06,-.03,-.27,0,-.84],["c",.03,-.42,.06,-.81,.09,-.87],["l",0,-.12],["l",-.18,-.06],["c",-1.08,-.3,-1.89,-1.32,-2.16,-2.73],["c",-.09,-.48,-.09,-1.32,0,-1.8],["c",.15,-.84,.51,-1.53,1.02,-2.04],["c",.39,-.39,.84,-.63,1.35,-.75],["z"],["m",1.05,.9],["c",-.15,-.09,-.21,-.09,-.45,-.12],["c",-.15,0,-.3,.03,-.39,.03],["c",-.57,.18,-.9,.72,-1.08,1.74],["c",-.06,.48,-.06,1.8,0,2.28],["c",.15,.9,.42,1.44,.9,1.65],["c",.18,.09,.21,.09,.51,.09],["c",.3,0,.33,0,.51,-.09],["c",.48,-.21,.75,-.75,.9,-1.65],["c",.03,-.27,.03,-.54,.03,-1.14],["c",0,-.6,0,-.87,-.03,-1.14],["c",-.15,-.9,-.45,-1.44,-.9,-1.65],["z"]],w:5.955,h:9.75},"scripts.open":{d:[["M",-.54,-3.69],["c",.15,-.03,.36,-.06,.51,-.06],["c",1.44,0,2.58,1.11,2.94,2.85],["c",.09,.48,.09,1.32,0,1.8],["c",-.33,1.74,-1.47,2.85,-2.91,2.85],["c",-1.44,0,-2.58,-1.11,-2.91,-2.85],["c",-.09,-.48,-.09,-1.32,0,-1.8],["c",.15,-.84,.51,-1.53,1.02,-2.04],["c",.39,-.39,.84,-.63,1.35,-.75],["z"],["m",1.11,.9],["c",-.21,-.09,-.27,-.09,-.51,-.12],["c",-.3,0,-.42,.03,-.66,.15],["c",-.24,.12,-.51,.39,-.66,.63],["c",-.54,.93,-.63,2.64,-.21,3.81],["c",.21,.54,.51,.9,.93,1.11],["c",.21,.09,.24,.09,.54,.09],["c",.3,0,.33,0,.54,-.09],["c",.42,-.21,.72,-.57,.93,-1.11],["c",.36,-.99,.36,-2.37,0,-3.36],["c",-.21,-.54,-.51,-.9,-.9,-1.11],["z"]],w:5.955,h:7.5},"scripts.longphrase":{d:[["M",1.47,-15.09],["c",.36,-.09,.66,-.18,.69,-.18],["c",.06,0,.06,.54,.06,11.25],["l",0,11.25],["l",-.63,.15],["c",-.66,.18,-1.44,.39,-1.5,.39],["c",-.03,0,-.03,-3.39,-.03,-11.25],["l",0,-11.25],["l",.36,-.09],["c",.21,-.06,.66,-.18,1.05,-.27],["z"]],w:2.16,h:23.04},"scripts.mediumphrase":{d:[["M",1.47,-7.59],["c",.36,-.09,.66,-.18,.69,-.18],["c",.06,0,.06,.39,.06,7.5],["l",0,7.5],["l",-.63,.15],["c",-.66,.18,-1.44,.39,-1.5,.39],["c",-.03,0,-.03,-2.28,-.03,-7.5],["l",0,-7.5],["l",.36,-.09],["c",.21,-.06,.66,-.18,1.05,-.27],["z"]],w:2.16,h:15.54},"scripts.shortphrase":{d:[["M",1.47,-7.59],["c",.36,-.09,.66,-.18,.69,-.18],["c",.06,0,.06,.21,.06,3.75],["l",0,3.75],["l",-.42,.09],["c",-.57,.18,-1.65,.45,-1.71,.45],["c",-.03,0,-.03,-.72,-.03,-3.75],["l",0,-3.75],["l",.36,-.09],["c",.21,-.06,.66,-.18,1.05,-.27],["z"]],w:2.16,h:8.04},"scripts.snap":{d:[["M",4.5,-3.39],["c",.36,-.03,.96,-.03,1.35,0],["c",1.56,.15,3.15,.9,4.2,2.01],["c",.24,.27,.33,.42,.33,.6],["c",0,.27,.03,.24,-2.46,2.22],["c",-1.29,1.02,-2.4,1.86,-2.49,1.92],["c",-.18,.09,-.3,.09,-.48,0],["c",-.09,-.06,-1.2,-.9,-2.49,-1.92],["c",-2.49,-1.98,-2.46,-1.95,-2.46,-2.22],["c",0,-.18,.09,-.33,.33,-.6],["c",1.05,-1.08,2.64,-1.86,4.17,-2.01],["z"],["m",1.29,1.17],["c",-1.47,-.15,-2.97,.3,-4.14,1.2],["l",-.18,.15],["l",.06,.09],["c",.15,.12,3.63,2.85,3.66,2.85],["c",.03,0,3.51,-2.73,3.66,-2.85],["l",.06,-.09],["l",-.18,-.15],["c",-.84,-.66,-1.89,-1.08,-2.94,-1.2],["z"]],w:10.38,h:6.84},"noteheads.slash.whole":{d:[["M",5,-5],["l",1,1],["l",-5,5],["l",-1,-1],["z"],["m",4,6],["l",-5,-5],["l",2,-2],["l",5,5],["z"],["m",0,-2],["l",1,1],["l",-5,5],["l",-1,-1],["z"],["m",-4,6],["l",-5,-5],["l",2,-2],["l",5,5],["z"]],w:10.81,h:15.63},"noteheads.slash.quarter":{d:[["M",9,-6],["l",0,4],["l",-9,9],["l",0,-4],["z"]],w:9,h:9},"noteheads.harmonic.quarter":{d:[["M",3.63,-4.02],["c",.09,-.06,.18,-.09,.24,-.03],["c",.03,.03,.87,.93,1.83,2.01],["c",1.5,1.65,1.8,1.98,1.8,2.04],["c",0,.06,-.3,.39,-1.8,2.04],["c",-.96,1.08,-1.8,1.98,-1.83,2.01],["c",-.06,.06,-.15,.03,-.24,-.03],["c",-.12,-.09,-3.54,-3.84,-3.6,-3.93],["c",-.03,-.03,-.03,-.09,-.03,-.15],["c",.03,-.06,3.45,-3.84,3.63,-3.96],["z"]],w:7.5,h:8.165}};this.printSymbol=function(t,i,r,n,a){if(!e[r])return null;var s=this.pathClone(e[r].d);s[0][1]+=t,s[0][2]+=i;for(var o="",c=0;c<s.length;c++)o+=s[c].join(" ");return n.path({path:o,stroke:"none",fill:"#000000",class:a})},this.getPathForSymbol=function(t,i,r,n,a){if(n=n||1,a=a||1,!e[r])return null;var s=this.pathClone(e[r].d);return 1===n&&1===a||this.pathScale(s,n,a),s[0][1]+=t,s[0][2]+=i,s},this.getSymbolWidth=function(t){return e[t]?e[t].w:0},this.getSymbolHeight=function(t){return e[t]?e[t].h:0},this.symbolHeightInPitches=function(e){return this.getSymbolHeight(e)/r.STEP},this.getSymbolAlign=function(e){return"scripts"===e.substring(0,7)&&"scripts.roll"!==e?"center":"left"},this.pathClone=function(e){for(var t=[],i=0,r=e.length;i<r;i++){t[i]=[];for(var n=0,a=e[i].length;n<a;n++)t[i][n]=e[i][n]}return t},this.pathScale=function(e,t,i){for(var r=0,n=e.length;r<n;r++){var a,s,o=e[r];for(a=1,s=o.length;a<s;a++)o[a]*=a%2?t:i}},this.getYCorr=function(e){switch(e){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":case"+":return-2;case"timesig.common":case"timesig.cut":return 0;case"flags.d32nd":return-1;case"flags.d64th":return-2;case"flags.u32nd":return 1;case"flags.u64th":return 3;case"rests.whole":return 1;case"rests.half":case"rests.8th":case"rests.quarter":case"rests.16th":case"rests.32nd":case"rests.64th":return-1;case"f":case"m":case"p":case"s":case"z":return-4;case"scripts.trill":case"scripts.upbow":case"scripts.downbow":return-2;case"scripts.ufermata":case"scripts.wedge":case"scripts.roll":case"scripts.shortphrase":case"scripts.longphrase":return-1;case"scripts.dfermata":return 1;default:return 0}}}},function(e,t,i){var r=i(1),n=function(e,t,i,r,n,a){a||(a={}),this.tuneNumber=n,this.abcelem=e,this.duration=t,this.durationClass=a.durationClassOveride?a.durationClassOveride:this.duration,this.minspacing=i||0,this.x=0,this.children=[],this.heads=[],this.extra=[],this.extraw=0,this.w=0,this.right=[],this.invisible=!1,this.bottom=void 0,this.top=void 0,this.type=r,this.specialY={tempoHeightAbove:0,partHeightAbove:0,volumeHeightAbove:0,dynamicHeightAbove:0,endingHeightAbove:0,chordHeightAbove:0,lyricHeightAbove:0,lyricHeightBelow:0,chordHeightBelow:0,volumeHeightBelow:0,dynamicHeightBelow:0}};n.prototype.setUpperAndLowerElements=function(e){for(var t=0;t<this.children.length;t++){var i=this.children[t];for(var r in this.specialY)this.specialY.hasOwnProperty(r)&&i[r]&&(i.pitch=e[r],void 0===i.top&&(i.setUpperAndLowerElements(e),this.pushTop(i.top),this.pushBottom(i.bottom)))}},n.prototype.getMinWidth=function(){return this.w},n.prototype.getExtraWidth=function(){return-this.extraw},n.prototype.addExtra=function(e){e.dx<this.extraw&&(this.extraw=e.dx),this.extra[this.extra.length]=e,this.addChild(e)},n.prototype.addHead=function(e){e.dx<this.extraw&&(this.extraw=e.dx),this.heads[this.heads.length]=e,this.addRight(e)},n.prototype.addRight=function(e){e.dx+e.w>this.w&&(this.w=e.dx+e.w),this.right[this.right.length]=e,this.addChild(e)},n.prototype.addCentered=function(e){var t=e.w/2;-t<this.extraw&&(this.extraw=-t),this.extra[this.extra.length]=e,e.dx+t>this.w&&(this.w=e.dx+t),this.right[this.right.length]=e,this.addChild(e)},n.prototype.setLimit=function(e,t){t[e]&&(this.specialY[e]?this.specialY[e]=Math.max(this.specialY[e],t[e]):this.specialY[e]=t[e])},n.prototype.addChild=function(e){e.parent=this,this.children[this.children.length]=e,this.pushTop(e.top),this.pushBottom(e.bottom),this.setLimit("tempoHeightAbove",e),this.setLimit("partHeightAbove",e),this.setLimit("volumeHeightAbove",e),this.setLimit("dynamicHeightAbove",e),this.setLimit("endingHeightAbove",e),this.setLimit("chordHeightAbove",e),this.setLimit("lyricHeightAbove",e),this.setLimit("lyricHeightBelow",e),this.setLimit("chordHeightBelow",e),this.setLimit("volumeHeightBelow",e),this.setLimit("dynamicHeightBelow",e)},n.prototype.pushTop=function(e){void 0!==e&&(void 0===this.top?this.top=e:this.top=Math.max(e,this.top))},n.prototype.pushBottom=function(e){void 0!==e&&(void 0===this.bottom?this.bottom=e:this.bottom=Math.min(e,this.bottom))},n.prototype.setX=function(e){this.x=e;for(var t=0;t<this.children.length;t++)this.children[t].setX(e)},n.prototype.setHint=function(){this.hint=!0},n.prototype.draw=function(e,t){if(!this.invisible){this.elemset=[],e.beginGroup();for(var i=0;i<this.children.length;i++){0;var n=this.children[i].draw(e,t);n&&this.elemset.push(n)}var a=this.type;if(("note"===this.type||"rest"===this.type)&&(a=(a+=" d"+this.durationClass).replace(/\./g,"-"),this.abcelem.pitches))for(var s=0;s<this.abcelem.pitches.length;s++)a+=" p"+this.abcelem.pitches[s].pitch;var o=e.endGroup(a);o&&this.elemset.push(o),this.klass&&this.setClass("mark","","#00ff00"),this.hint&&this.setClass("abcjs-hint","",null);var c=e.printShadedBox(this.x,e.calcY(this.top),this.w,e.calcY(this.bottom)-e.calcY(this.top),"#000000",0),l=this,h=e.controller;c.addEventListener("mouseup",(function(){var e=[];if(l.elemset)for(var t=0;t<l.elemset.length;t++){var i=l.elemset[t];i&&e.push(i.getAttribute("class"))}h.notifySelect(l,l.tuneNumber,e)})),this.abcelem.abselem=this;r.STEP}},n.prototype.isIE=!1,n.prototype.setClass=function(e,t,i){for(var r=0;r<this.elemset.length;r++){var n=this.elemset[r];n.setAttribute("fill",i);var a=n.getAttribute("class");a||(a=""),a=(a=a.replace(t,"")).replace(e,""),e.length>0&&(a.length>0&&" "!==a.charAt(a.length-1)&&(a+=" "),a+=e),n.setAttribute("class",a)}},n.prototype.highlight=function(e,t){void 0===e&&(e="abcjs-note_selected"),void 0===t&&(t="#ff0000"),this.setClass(e,"",t)},n.prototype.unhighlight=function(e,t){void 0===e&&(e="abcjs-note_selected"),void 0===t&&(t="#000000"),this.setClass("",e,t)},e.exports=n},function(e,t){function i(e){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}e.exports=function(){for(var e,t,r,n,a,s=0,o=arguments[s++],c=[];o;){if(t=/^[^\x25]+/.exec(o))c.push(t[0]);else if(t=/^\x25{2}/.exec(o))c.push("%");else{if(!(t=/^\x25(?:(\d+)\$)?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-fosuxX])/.exec(o)))throw"Huh ?!";if(null==(e=arguments[t[1]||s++])||null==e)throw"Too few arguments.";if(/[^s]/.test(t[7])&&"number"!=typeof e)throw"Expecting number but found "+i(e);switch(t[7]){case"b":e=e.toString(2);break;case"c":e=String.fromCharCode(e);break;case"d":e=parseInt(e);break;case"e":e=t[6]?e.toExponential(t[6]):e.toExponential();break;case"f":e=t[6]?parseFloat(e).toFixed(t[6]):parseFloat(e);break;case"o":e=e.toString(8);break;case"s":e=(e=String(e))&&t[6]?e.substring(0,t[6]):e;break;case"u":e=Math.abs(e);break;case"x":e=e.toString(16);break;case"X":e=e.toString(16).toUpperCase()}e=/[def]/.test(t[7])&&t[2]&&e>0?"+"+e:e,n=t[3]?"0"==t[3]?"0":t[3].charAt(1):" ",a=t[5]-String(e).length,r=t[5]?str_repeat(n,a):"",c.push(t[4]?e+r:r+e)}o=o.substring(t[0].length)}return c.join("")}},function(e,t){e.exports=function(){return window.abcjsAudioContext}},function(e,t,i){var r=i(6);e.exports=function(){var e=r();return e?void 0!==e.resume:!!window.Promise&&(window.AudioContext||window.webkitAudioContext||navigator.mozAudioContext||navigator.msAudioContext)}},function(e,t){function i(e,t){for(var i=[],r=null,n=0;n<e.length;n++){var a=e[n];a.top!==r&&(i.push({milliseconds:a.milliseconds-t,top:a.top,bottom:a.top+a.height}),r=a.top)}return i}e.exports=function(e,t){var r=this;if(t||(t={}),r.qpm=t.qpm,!r.qpm){var n=e.metaText?e.metaText.tempo:null;r.qpm=e.getBpm(n)}r.extraMeasuresAtBeginning=t.extraMeasuresAtBeginning?t.extraMeasuresAtBeginning:0,r.beatCallback=t.beatCallback,r.eventCallback=t.eventCallback,r.lineEndCallback=t.lineEndCallback,r.lineEndAnticipation=t.lineEndAnticipation?t.lineEndAnticipation:0,r.beatSubdivisions=t.beatSubdivisions?parseInt(t.beatSubdivisions,10):1,r.replaceTarget=function(e){e.setTiming(r.qpm,r.extraMeasuresAtBeginning),0!==e.noteTimings.length&&(r.lineEndCallback&&(r.lineEndTimings=i(e.noteTimings,r.lineEndAnticipation)),r.noteTimings=e.noteTimings)},r.replaceTarget(e),0!==r.noteTimings.length&&(r.noteTimings=e.noteTimings,r.millisecondsPerBeat=1e3/(r.qpm/60)/r.beatSubdivisions,r.lastMoment=r.noteTimings[r.noteTimings.length-1].milliseconds,r.totalBeats=Math.round(r.lastMoment/r.millisecondsPerBeat),r.startTime=null,r.currentBeat=0,r.currentEvent=0,r.isPaused=!1,r.isRunning=!1,r.pausedTime=null,r.justUnpaused=!1,r.newSeekPercent=0,r.justSeeked=!1,r.doTiming=function(e){if(r.startTime){if(r.justUnpaused){var t=e-r.pausedTime;r.startTime+=t}}else r.startTime=e;if(r.justUnpaused=!1,r.justSeeked&&(!function(e){var t=(e-r.startTime)/r.lastMoment-r.newSeekPercent,i=r.lastMoment*t;r.startTime=r.startTime+i;var n=e-r.startTime;n+=50;var a=r.currentBeat;for(r.currentBeat=Math.floor(n/r.millisecondsPerBeat),r.beatCallback&&a!==r.currentBeat&&r.beatCallback(r.currentBeat/r.beatSubdivisions,r.totalBeats/r.beatSubdivisions,r.lastMoment),r.currentEvent=0;r.noteTimings.length>r.currentEvent&&r.noteTimings[r.currentEvent].milliseconds<n;)r.currentEvent++;r.eventCallback&&r.currentEvent>0&&"event"===r.noteTimings[r.currentEvent-1].type&&r.eventCallback(r.noteTimings[r.currentEvent-1])}(e),r.justSeeked=!1),r.isPaused)r.pausedTime=e;else if(r.isRunning){var i=e-r.startTime;for(i+=50;r.noteTimings.length>r.currentEvent&&r.noteTimings[r.currentEvent].milliseconds<i;)r.eventCallback&&"event"===r.noteTimings[r.currentEvent].type&&r.eventCallback(r.noteTimings[r.currentEvent]),r.currentEvent++;i<r.lastMoment?(requestAnimationFrame(r.doTiming),r.currentBeat*r.millisecondsPerBeat<i&&(r.beatCallback&&r.beatCallback(r.currentBeat/r.beatSubdivisions,r.totalBeats/r.beatSubdivisions,r.lastMoment),r.currentBeat++)):r.currentBeat<=r.totalBeats&&r.beatCallback&&(r.beatCallback(r.currentBeat/r.beatSubdivisions,r.totalBeats/r.beatSubdivisions,r.lastMoment),r.currentBeat++,requestAnimationFrame(r.doTiming)),r.lineEndCallback&&r.lineEndTimings.length&&r.lineEndTimings[0].milliseconds<=i&&(r.lineEndCallback(r.lineEndTimings[0]),r.lineEndTimings.shift()),i>=r.lastMoment&&r.eventCallback&&r.eventCallback(null)}},r.start=function(){r.isRunning=!0,r.isPaused&&(r.isPaused=!1,r.justUnpaused=!0),requestAnimationFrame(r.doTiming)},r.pause=function(){r.isPaused=!0,r.isRunning=!1},r.reset=function(){r.currentBeat=0,r.currentEvent=0,r.startTime=null,r.pausedTime=null,r.lineEndCallback&&(r.lineEndTimings=i(r.noteTimings,r.lineEndAnticipation))},r.stop=function(){r.pause(),r.reset()},r.setProgress=function(e){e<0&&(e=0),e>1&&(e=1),r.newSeekPercent=e,r.justSeeked=!0,requestAnimationFrame(r.doTiming)})}},function(e,t,i){function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var n=i(0),a=i(10),s={};!function(){"use strict";s.numberOfTunes=function(e){var t=e.split("\nX:").length;return 0===t&&(t=1),t};var e=s.TuneBook=function(e){for(var t=this,i="",r=(e=n.strip(e)).split("\nX:"),a=1;a<r.length;a++)r[a]="X:"+r[a];var s=0;if(t.tunes=[],n.each(r,(function(e){t.tunes.push({abc:e,startPos:s}),s+=e.length+1})),t.tunes.length>1&&!n.startsWith(t.tunes[0].abc,"X:")){var o=t.tunes.shift().abc.split("\n");n.each(o,(function(e){n.startsWith(e,"%%")&&(i+=e+"\n")}))}t.header=i,n.each(t.tunes,(function(e){var t=e.abc.indexOf("\n\n");t>0&&(e.abc=e.abc.substring(0,t)),e.pure=e.abc,e.abc=i+e.abc;var r=e.pure.split("T:");r.length>1?(r=r[1].split("\n"),e.title=r[0].replace(/^\s+|\s+$/g,"")):e.title="";var n=e.pure.substring(2,e.pure.indexOf("\n"));e.id=n.replace(/^\s+|\s+$/g,"")}))};e.prototype.getTuneById=function(e){for(var t=0;t<this.tunes.length;t++)if(this.tunes[t].id===e)return this.tunes[t];return null},e.prototype.getTuneByTitle=function(e){for(var t=0;t<this.tunes.length;t++)if(this.tunes[t].title===e)return this.tunes[t];return null},s.parseOnly=function(e,t){for(var i=s.numberOfTunes(e),r=[],n=0;n<i;n++)r.push(1);return s.renderEngine((function(){}),r,e,t)},s.renderEngine=function(t,i,n,s){var o=[];if(void 0!==i&&void 0!==n){var c;(!(c=i)||c.propertyIsEnumerable("length")||"object"!==r(c)||"number"!=typeof c.length)&&(i=[i]),void 0===s&&(s={});for(var l=s.startingTune?parseInt(s.startingTune,10):0,h=new e(n),u=new a,d=0;d<i.length;d++){var p=i[d];if("string"==typeof p&&(p=document.getElementById(p)),p)if(l>=0&&l<h.tunes.length){u.parse(h.tunes[l].abc,s,h.tunes[l].startPos-h.header.length);var f=u.getTune(),m=t(p,f,d,h.tunes[l].abc);o.push(m||f)}else p.hasOwnProperty("innerHTML")&&(p.innerHTML="");l++}return o}},s.extractMeasures=function(t){for(var i=[],r=new e(t),n=0;n<r.tunes.length;n++){for(var a=r.tunes[n],o=a.abc.split("K:"),c=o[1].split("\n"),l=o[0]+"K:"+c[0]+"\n",h=null,u=null,d=null,p=[],f=!1,m=s.parseOnly(a.abc)[0],g=m.getPickupLength()>0,v=0;v<m.lines.length;v++){var b=m.lines[v];if(b.staff)for(var y=0;y<1;y++)for(var w=b.staff[y],k=0;k<1;k++)for(var x=w.voices[k],S=0;S<x.length;S++){var _=x[S];if(null===d&&_.startChar>=0&&(d=_.startChar,u=void 0===_.chord?h:null),_.chord&&(h=_),"bar"===_.el_type){if(f){var T={abc:a.abc.substring(d,_.endChar)};(h=u&&u.chord&&u.chord.length>0?u.chord[0].name:null)&&(T.lastChord=h),_.startEnding&&(T.startEnding=_.startEnding),_.endEnding&&(T.endEnding=_.endEnding),p.push(T),d=null,f=!1}}else"note"===_.el_type&&(f=!0)}}i.push({header:l,measures:p,hasPickup:g})}return i}}(),e.exports=s},function(e,t,i){var r=i(0),n=i(11),a=i(31),s=i(12),o=i(32),c=i(16),l=i(17),h=i(18);e.exports=function(){"use strict";var e=new h,t=new o;function i(e,t,i){e.positioning||(e.positioning={}),e.positioning[t]=i}function u(e,t,i){e.fonts||(e.fonts={}),e.fonts[t]=i}this.getTune=function(){return{formatting:e.formatting,lines:e.lines,media:e.media,metaText:e.metaText,version:e.version,addElementToEvents:e.addElementToEvents,addUsefulCallbackInfo:e.addUsefulCallbackInfo,getBarLength:e.getBarLength,getBeatLength:e.getBeatLength,getBeatsPerMeasure:e.getBeatsPerMeasure,getBpm:e.getBpm,getMeter:e.getMeter,getMeterFraction:e.getMeterFraction,getPickupLength:e.getPickupLength,getKeySignature:e.getKeySignature,makeVoicesArray:e.makeVoicesArray,millisecondsPerMeasure:e.millisecondsPerMeasure,setupEvents:e.setupEvents,setTiming:e.setTiming}};var d={reset:function(){for(var e in this)this.hasOwnProperty(e)&&"function"!=typeof this[e]&&delete this[e];this.iChar=0,this.key={accidentals:[],root:"none",acc:"",mode:""},this.meter=null,this.origMeter=null,this.hasMainTitle=!1,this.default_length=.125,this.clef={type:"treble",verticalPos:0},this.next_note_duration=0,this.start_new_line=!0,this.is_in_header=!0,this.is_in_history=!1,this.partForNextLine={},this.havent_set_length=!0,this.voices={},this.staves=[],this.macros={},this.currBarNumber=1,this.barCounter={},this.inTextBlock=!1,this.inPsBlock=!1,this.ignoredDecorations=[],this.textBlock="",this.score_is_present=!1,this.inEnding=!1,this.inTie=[!1],this.inTieChord={},this.vocalPosition="auto",this.dynamicPosition="auto",this.chordPosition="auto",this.ornamentPosition="auto",this.volumePosition="auto",this.openSlurs=[],this.freegchord=!1},differentFont:function(e,t){return this[e].decoration!==t[e].decoration||(this[e].face!==t[e].face||(this[e].size!==t[e].size||(this[e].style!==t[e].style||this[e].weight!==t[e].weight)))},addFormattingOptions:function(e,t,r){"note"===r?("auto"!==this.vocalPosition&&i(e,"vocalPosition",this.vocalPosition),"auto"!==this.dynamicPosition&&i(e,"dynamicPosition",this.dynamicPosition),"auto"!==this.chordPosition&&i(e,"chordPosition",this.chordPosition),"auto"!==this.ornamentPosition&&i(e,"ornamentPosition",this.ornamentPosition),"auto"!==this.volumePosition&&i(e,"volumePosition",this.volumePosition),this.differentFont("annotationfont",t)&&u(e,"annotationfont",this.annotationfont),this.differentFont("gchordfont",t)&&u(e,"gchordfont",this.gchordfont),this.differentFont("vocalfont",t)&&u(e,"vocalfont",this.vocalfont),this.differentFont("tripletfont",t)&&u(e,"tripletfont",this.tripletfont)):"bar"===r&&("auto"!==this.dynamicPosition&&i(e,"dynamicPosition",this.dynamicPosition),"auto"!==this.chordPosition&&i(e,"chordPosition",this.chordPosition),"auto"!==this.ornamentPosition&&i(e,"ornamentPosition",this.ornamentPosition),"auto"!==this.volumePosition&&i(e,"volumePosition",this.volumePosition),this.differentFont("measurefont",t)&&u(e,"measurefont",this.measurefont),this.differentFont("repeatfont",t)&&u(e,"repeatfont",this.repeatfont))}},p=function(e){var t=r.gsub(e,""," ");return t=r.gsub(t,"&","&"),t=r.gsub(t,"<","<"),r.gsub(t,">",">")},f=function(t,i,r){i||(i=" ");var n=i.charAt(r);" "===n&&(n="SPACE");var a,s=p(i.substring(0,r))+'<span style="text-decoration:underline;font-size:1.3em;font-weight:bold;">'+n+"</span>"+p(i.substring(r+1));!function(e){d.warnings||(d.warnings=[]),d.warnings.push(e)}("Music Line:"+e.getNumLines()+":"+(r+1)+": "+t+": "+s),a={message:t,line:i,startChar:d.iChar+r,column:r},d.warningObjects||(d.warningObjects=[]),d.warningObjects.push(a)},m=new a(t,f,d,e);this.getWarnings=function(){return d.warnings},this.getWarningObjects=function(){return d.warningObjects};var g=function(e,i){if('"'===e.charAt(i)){var r=t.getBrackettedSubstring(e,i,5);if(r[2]||f("Missing the closing quote while parsing the chord symbol",e,i),r[0]>0&&r[1].length>0&&"^"===r[1].charAt(0))r[1]=r[1].substring(1),r[2]="above";else if(r[0]>0&&r[1].length>0&&"_"===r[1].charAt(0))r[1]=r[1].substring(1),r[2]="below";else if(r[0]>0&&r[1].length>0&&"<"===r[1].charAt(0))r[1]=r[1].substring(1),r[2]="left";else if(r[0]>0&&r[1].length>0&&">"===r[1].charAt(0))r[1]=r[1].substring(1),r[2]="right";else if(r[0]>0&&r[1].length>0&&"@"===r[1].charAt(0)){r[1]=r[1].substring(1);var n=t.getFloat(r[1]);0===n.digits&&f("Missing first position in absolutely positioned annotation.",e,i),r[1]=r[1].substring(n.digits),","!==r[1][0]&&f("Missing comma absolutely positioned annotation.",e,i),r[1]=r[1].substring(1);var a=t.getFloat(r[1]);0===a.digits&&f("Missing second position in absolutely positioned annotation.",e,i),r[1]=r[1].substring(a.digits);var s=t.skipWhiteSpace(r[1]);r[1]=r[1].substring(s),r[2]=null,r[3]={x:n.value,y:a.value}}else!0!==d.freegchord&&(r[1]=r[1].replace(/([ABCDEFG0-9])b/g,"$1♭"),r[1]=r[1].replace(/([ABCDEFG0-9])#/g,"$1♯")),r[2]="default",r[1]=c.chordName(d,r[1]);return r}return[0,""]},v=["trill","lowermordent","uppermordent","mordent","pralltriller","accent","fermata","invertedfermata","tenuto","0","1","2","3","4","5","+","wedge","open","thumb","snap","turn","roll","breath","shortphrase","mediumphrase","longphrase","segno","coda","D.S.","D.C.","fine","slide","^","marcato","upbow","downbow","/","//","///","////","trem1","trem2","trem3","trem4","turnx","invertedturn","invertedturnx","trill(","trill)","arpeggio","xstem","mark","umarcato","style=normal","style=harmonic","style=rhythm","style=x"],b=["p","pp","f","ff","mf","mp","ppp","pppp","fff","ffff","sfz"],y=["crescendo(","crescendo)","diminuendo(","diminuendo)"],w=[["<","accent"],[">","accent"],["tr","trill"],["plus","+"],["emphasis","accent"],["^","umarcato"],["marcato","umarcato"]],k=[["<(","crescendo("],["<)","crescendo)"],[">(","diminuendo("],[">)","diminuendo)"]],x=function(e,i){var n=d.macros[e.charAt(i)];if(void 0!==n)return"!"!==n.charAt(0)&&"+"!==n.charAt(0)||(n=n.substring(1)),"!"!==n.charAt(n.length-1)&&"+"!==n.charAt(n.length-1)||(n=n.substring(0,n.length-1)),r.detect(v,(function(e){return n===e}))?[1,n]:r.detect(b,(function(e){return n===e}))?("hidden"===d.volumePosition&&(n=""),[1,n]):r.detect(y,(function(e){return"hidden"===d.dynamicPosition&&(n=""),n===e}))?[1,n]:(r.detect(d.ignoredDecorations,(function(e){return n===e}))||f("Unknown macro: "+n,e,i),[1,""]);switch(e.charAt(i)){case".":return[1,"staccato"];case"u":return[1,"upbow"];case"v":return[1,"downbow"];case"~":return[1,"irishroll"];case"!":case"+":var a=t.getBrackettedSubstring(e,i,5);return a[1].length>0&&("^"===a[1].charAt(0)||"_"===a[1].charAt(0))&&(a[1]=a[1].substring(1)),r.detect(v,(function(e){return a[1]===e}))?a:r.detect(b,(function(e){return a[1]===e}))?("hidden"===d.volumePosition&&(a[1]=""),a):r.detect(y,(function(e){return a[1]===e}))?("hidden"===d.dynamicPosition&&(a[1]=""),a):r.detect(w,(function(e){return a[1]===e[0]&&(a[1]=e[1],!0)}))?a:r.detect(k,(function(e){return a[1]===e[0]&&(a[1]=e[1],!0)}))?("hidden"===d.dynamicPosition&&(a[1]=""),a):"!"!==e.charAt(i)||1!==a[0]&&"!"===e.charAt(i+a[0]-1)?(f("Unknown decoration: "+a[1],e,i),a[1]="",a):[1,null];case"H":return[1,"fermata"];case"J":return[1,"slide"];case"L":return[1,"accent"];case"M":return[1,"mordent"];case"O":return[1,"coda"];case"P":return[1,"pralltriller"];case"R":return[1,"roll"];case"S":return[1,"segno"];case"T":return[1,"trill"]}return[0,0]},S=function(e,i){for(var r=i;t.isWhiteSpace(e.charAt(i));)i++;return[i-r]},_=function(e,i){var r=t.getBarLine(e,i);if(0===r.len)return[0,""];if(r.warn)return f(r.warn,e,i),[r.len,""];for(var n=0;n<e.length&&" "===e.charAt(i+r.len+n);n++);var a=r.len;if("["===e.charAt(i+r.len+n)&&(r.len+=n+1),'"'===e.charAt(i+r.len)&&"["===e.charAt(i+r.len-1)){var s=t.getBrackettedSubstring(e,i+r.len,5);return[r.len+s[0],r.token,s[1]]}var o=t.getTokenOf(e.substring(i+r.len),"1234567890-,");return 0===o.len||"-"===o.token[0]?[a,r.token]:[r.len+o.len,r.token,o.token]},T={2:3,3:2,4:3,5:2,6:2,7:2,8:3,9:2},A=function(e,i){for(var r={},n=i;"("===e.charAt(i)||t.isWhiteSpace(e.charAt(i));)"("===e.charAt(i)&&(i+1<e.length&&e.charAt(i+1)>="2"&&e.charAt(i+1)<="9"?(void 0!==r.triplet?f("Can't nest triplets",e,i):(r.triplet=e.charAt(i+1)-"0",r.tripletQ=T[r.triplet],r.num_notes=r.triplet,i+2<e.length&&":"===e.charAt(i+2)&&(i+3<e.length&&":"===e.charAt(i+3)?i+4<e.length&&e.charAt(i+4)>="1"&&e.charAt(i+4)<="9"?(r.num_notes=e.charAt(i+4)-"0",i+=3):f("expected number after the two colons after the triplet to mark the duration",e,i):i+3<e.length&&e.charAt(i+3)>="1"&&e.charAt(i+3)<="9"?(r.tripletQ=e.charAt(i+3)-"0",i+4<e.length&&":"===e.charAt(i+4)?i+5<e.length&&e.charAt(i+5)>="1"&&e.charAt(i+5)<="9"&&(r.num_notes=e.charAt(i+5)-"0",i+=4):i+=2):f("expected number after the triplet to mark the duration",e,i))),i++):void 0===r.startSlur?r.startSlur=1:r.startSlur++),i++;return r.consumed=i-n,r},C=function(e,t){switch(e.charAt(t)){case">":return t<e.length-1&&">"===e.charAt(t+1)?[2,1.75,.25]:[1,1.5,.5];case"<":return t<e.length-1&&"<"===e.charAt(t+1)?[2,.25,1.75]:[1,.5,1.5]}return null},N=function(e){return void 0!==e.duration&&e.duration<.25&&(e.end_beam=!0),e},E={A:5,B:6,C:0,D:1,E:2,F:3,G:4,a:12,b:13,c:7,d:8,e:9,f:10,g:11},M={x:"invisible",y:"spacer",z:"rest",Z:"multimeasure"},B=function(i,r,n,a){for(var s=function(e){return"octave"===e||"duration"===e||"Zduration"===e||"broken_rhythm"===e||"end_slur"===e},o="startSlur",l=!1;;){switch(i.charAt(r)){case"(":if("startSlur"!==o)return s(o)?(n.endChar=r,n):null;void 0===n.startSlur?n.startSlur=1:n.startSlur++;break;case")":if(!s(o))return null;void 0===n.endSlur?n.endSlur=1:n.endSlur++;break;case"^":if("startSlur"===o)n.accidental="sharp",o="sharp2";else{if("sharp2"!==o)return s(o)?(n.endChar=r,n):null;n.accidental="dblsharp",o="pitch"}break;case"_":if("startSlur"===o)n.accidental="flat",o="flat2";else{if("flat2"!==o)return s(o)?(n.endChar=r,n):null;n.accidental="dblflat",o="pitch"}break;case"=":if("startSlur"!==o)return s(o)?(n.endChar=r,n):null;n.accidental="natural",o="pitch";break;case"A":case"B":case"C":case"D":case"E":case"F":case"G":case"a":case"b":case"c":case"d":case"e":case"f":case"g":if("startSlur"!==o&&"sharp2"!==o&&"flat2"!==o&&"pitch"!==o)return s(o)?(n.endChar=r,n):null;if(n.pitch=E[i.charAt(r)],c.note(d,n),o="octave",a&&0!==d.next_note_duration?(n.duration=d.default_length*d.next_note_duration,d.next_note_duration=0,l=!0):n.duration=d.default_length,d.clef&&"perc"===d.clef.type||d.currentVoice&&"perc"===d.currentVoice.clef){var h=i.charAt(r);if(n.accidental){h={dblflat:"__",flat:"_",natural:"=",sharp:"^",dblsharp:"^^"}[n.accidental]+h}e.formatting&&e.formatting.midi&&e.formatting.midi.drummap&&(n.midipitch=e.formatting.midi.drummap[h])}break;case",":if("octave"!==o)return s(o)?(n.endChar=r,n):null;n.pitch-=7;break;case"'":if("octave"!==o)return s(o)?(n.endChar=r,n):null;n.pitch+=7;break;case"x":case"y":case"z":case"Z":if("startSlur"!==o)return s(o)?(n.endChar=r,n):null;n.rest={type:M[i.charAt(r)]},delete n.accidental,delete n.startSlur,delete n.startTie,delete n.endSlur,delete n.endTie,delete n.end_beam,delete n.grace_notes,"multimeasure"===n.rest.type?(n.duration=1,o="Zduration"):(a&&0!==d.next_note_duration?(n.duration=d.default_length*d.next_note_duration,d.next_note_duration=0,l=!0):n.duration=d.default_length,o="duration");break;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":case"0":case"/":if("octave"===o||"duration"===o){var u=t.getFraction(i,r);for(n.duration=n.duration*u.value,n.endChar=u.index;u.index<i.length&&(t.isWhiteSpace(i.charAt(u.index))||"-"===i.charAt(u.index));)"-"===i.charAt(u.index)?n.startTie={}:n=N(n),u.index++;r=u.index-1,o="broken_rhythm"}else if("sharp2"===o)n.accidental="quartersharp",o="pitch";else{if("flat2"!==o){if("Zduration"===o){var p=t.getNumber(i,r);return n.duration=p.num,n.endChar=p.index,n}return null}n.accidental="quarterflat",o="pitch"}break;case"-":if("startSlur"===o)e.addTieToLastNote(),n.endTie=!0;else{if("octave"!==o&&"duration"!==o&&"end_slur"!==o)return"broken_rhythm"===o?(n.endChar=r,n):null;if(n.startTie={},l||!a)return t.isWhiteSpace(i.charAt(r+1))&&N(n),n.endChar=r+1,n;o="broken_rhythm"}break;case" ":case"\t":if(!s(o))return null;n.end_beam=!0;do{"-"===i.charAt(r)&&(n.startTie={}),r++}while(r<i.length&&(t.isWhiteSpace(i.charAt(r))||"-"===i.charAt(r)));if(n.endChar=r,l||!a||"<"!==i.charAt(r)&&">"!==i.charAt(r))return n;r--,o="broken_rhythm";break;case">":case"<":if(!s(o))return null;if(!a)return n.endChar=r,n;var f=C(i,r);r+=f[0]-1,d.next_note_duration=f[2],n.duration=f[1]*n.duration,o="end_slur";break;default:return s(o)?(n.endChar=r,n):null}if(++r===i.length)return s(o)?(n.endChar=r,n):null}return null};function P(){var t={startChar:-1,endChar:-1};d.partForNextLine.title&&(t.part=d.partForNextLine),t.clef=d.currentVoice&&void 0!==d.staves[d.currentVoice.staffNum].clef?r.clone(d.staves[d.currentVoice.staffNum].clef):r.clone(d.clef);var i=d.currentVoice?d.currentVoice.scoreTranspose:0;if(t.key=s.standardKey(d.key.root+d.key.acc+d.key.mode,d.key.root,d.key.acc,i),t.key.mode=d.key.mode,d.key.impliedNaturals&&(t.key.impliedNaturals=d.key.impliedNaturals),d.key.explicitAccidentals)for(var n=0;n<d.key.explicitAccidentals.length;n++){for(var a=!1,o=0;o<t.key.accidentals.length;o++)t.key.accidentals[o].note===d.key.explicitAccidentals[n].note&&(t.key.accidentals[o].acc=d.key.explicitAccidentals[n].acc,a=!0);a||t.key.accidentals.push(d.key.explicitAccidentals[n])}if(d.targetKey=t.key,t.key.explicitAccidentals&&delete t.key.explicitAccidentals,s.addPosToKey(t.clef,t.key),null!==d.meter?(d.currentVoice?(r.each(d.staves,(function(e){e.meter=d.meter})),t.meter=d.staves[d.currentVoice.staffNum].meter,d.staves[d.currentVoice.staffNum].meter=null):t.meter=d.meter,d.meter=null):d.currentVoice&&d.staves[d.currentVoice.staffNum].meter&&(t.meter=d.staves[d.currentVoice.staffNum].meter,d.staves[d.currentVoice.staffNum].meter=null),d.currentVoice&&d.currentVoice.name&&(t.name=d.currentVoice.name),d.vocalfont&&(t.vocalfont=d.vocalfont),d.tripletfont&&(t.tripletfont=d.tripletfont),d.style&&(t.style=d.style),d.currentVoice){var c=d.staves[d.currentVoice.staffNum];c.brace&&(t.brace=c.brace),c.bracket&&(t.bracket=c.bracket),c.connectBarLines&&(t.connectBarLines=c.connectBarLines),c.name&&(t.name=c.name[d.currentVoice.index]),c.subname&&(t.subname=c.subname[d.currentVoice.index]),d.currentVoice.stem&&(t.stem=d.currentVoice.stem),d.currentVoice.stafflines&&(t.stafflines=d.currentVoice.stafflines),d.currentVoice.staffscale&&(t.staffscale=d.currentVoice.staffscale),d.currentVoice.scale&&(t.scale=d.currentVoice.scale),d.currentVoice.style&&(t.style=d.currentVoice.style),d.currentVoice.transpose&&(t.clef.transpose=d.currentVoice.transpose)}var l=void 0===d.currentVoice||0===d.currentVoice.staffNum&&0===d.currentVoice.index;0===d.barNumbers&&l&&1!==d.currBarNumber&&(t.barNumber=d.currBarNumber),e.startNewLine(t),d.key.impliedNaturals&&delete d.key.impliedNaturals,d.partForNextLine={}}var L=function(e,i){if("{"===e.charAt(i)){var r=t.getBrackettedSubstring(e,i,1,"}");r[2]||f("Missing the closing '}' while parsing grace note",e,i),")"===e[i+r[0]]&&(r[0]++,r[1]+=")");for(var n=[],a=0,s=!1;a<r[1].length;){var o=!1;"/"===r[1].charAt(a)&&(o=!0,a++);var c=B(r[1],a,{},!1);null!==c?(c.duration=c.duration/(8*d.default_length),o&&(c.acciaccatura=!0),n.push(c),s&&(c.endTie=!0,s=!1),c.startTie&&(s=!0),a=c.endChar,delete c.endChar):(" "===r[1].charAt(a)?n.length>0&&(n[n.length-1].end_beam=!0):f("Unknown character '"+r[1].charAt(a)+"' while parsing grace note",e,i),a++)}if(n.length)return[r[0],n]}return[0]};function H(e,t){if("&"===e.charAt(t)){for(var i=t;e.charAt(t)&&":"!==e.charAt(t)&&"|"!==e.charAt(t);)t++;return[t-i,e.substring(i+1,t)]}return[0]}function z(e){var t=e.origMeter;return t&&"specified"===t.type&&t.value&&0!==t.value.length?parseInt(t.value[0].num,10)/parseInt(t.value[0].den,10):1}var I=function i(n){var a=m.parseHeader(n);a.regular&&function(i){m.resolveTempo(),d.is_in_header=!1;for(var n=0,a=d.iChar;t.isWhiteSpace(i.charAt(n))&&n<i.length;)n++;if(n!==i.length&&"%"!==i.charAt(n)){var s=d.start_new_line;void 0===d.continueall?d.start_new_line=!0:d.start_new_line=!1;var o=0,c=m.letter_to_body_header(i,n);c[0]>0&&(n+=c[0],"V"===c[1]&&(s=!0));for(var l={},h=0;n<i.length;){var u=n;if("%"===i.charAt(n))break;var p=m.letter_to_inline_header(i,n);if(p[0]>0)n+=p[0],"V"===p[1]&&(s=!0);else{var v;for(s&&(P(),s=!1);;)if((v=t.eatWhiteSpace(i,n))>0&&(n+=v),n>0&&""===i.charAt(n-1)&&(v=m.letter_to_body_header(i,n))[0]>0&&("V"===v[1]&&P(),n=v[0],d.start_new_line=!1),(v=S(i,n))[0]>0&&(n+=v[0]),(v=g(i,n))[0]>0){l.chord||(l.chord=[]);var b=t.translateString(v[1]);b=b.replace(/;/g,"\n");for(var y=!1,w=0;w<l.chord.length;w++)l.chord[w].position===v[2]&&(y=!0,l.chord[w].name+="\n"+b);!1===y&&(null===v[2]&&v[3]?l.chord.push({name:b,rel_position:v[3]}):l.chord.push({name:b,position:v[2]})),n+=v[0];var k=t.skipWhiteSpace(i.substring(n));k>0&&(l.force_end_beam_last=!0),n+=k}else if((v=-1==="ABCDEFGabcdefgxyzZ[]|^_{".indexOf(i.charAt(n))?x(i,n):[0])[0]>0)null===v[1]?n+1<i.length&&P():v[1].length>0&&(0===v[1].indexOf("style=")?l.style=v[1].substr(6):(void 0===l.decoration&&(l.decoration=[]),l.decoration.push(v[1]))),n+=v[0];else{if(!((v=L(i,n))[0]>0))break;l.gracenotes=v[1],n+=v[0]}if((v=_(i,n))[0]>0){h=0,void 0!==l.gracenotes&&(l.rest={type:"spacer"},l.duration=.125,d.addFormattingOptions(l,e.formatting,"note"),e.appendElement("note",a+n,a+n+v[0],l),d.measureNotEmpty=!0,l={});var T={type:v[1]};if(0===T.type.length)f("Unknown bar type",i,n);else{if(d.inEnding&&"bar_thin"!==T.type&&(T.endEnding=!0,d.inEnding=!1),v[2]&&(T.startEnding=v[2],d.inEnding&&(T.endEnding=!0),d.inEnding=!0),void 0!==l.decoration&&(T.decoration=l.decoration),void 0!==l.chord&&(T.chord=l.chord),T.startEnding&&void 0===d.barFirstEndingNum?d.barFirstEndingNum=d.currBarNumber:T.startEnding&&T.endEnding&&d.barFirstEndingNum?d.currBarNumber=d.barFirstEndingNum:T.endEnding&&(d.barFirstEndingNum=void 0),"bar_invisible"!==T.type&&d.measureNotEmpty)(void 0===d.currentVoice||0===d.currentVoice.staffNum&&0===d.currentVoice.index)&&(d.currBarNumber++,d.barNumbers&&d.currBarNumber%d.barNumbers==0&&(T.barNumber=d.currBarNumber));d.addFormattingOptions(l,e.formatting,"bar"),e.appendElement("bar",a+n,a+n+v[0],T),d.measureNotEmpty=!1,l={}}n+=v[0];d.currentVoice&&(d.currentVoice.staffNum,d.currentVoice.index)}else if("&"===i[n])(v=H(i,n))[0]>0&&(e.appendElement("overlay",a,a+1,{}),n+=1,h++);else{if((v=A(i,n)).consumed>0&&(void 0!==v.startSlur&&(l.startSlur=v.startSlur),void 0!==v.triplet&&(o>0?f("Can't nest triplets",i,n):(l.startTriplet=v.triplet,l.tripletMultiplier=v.tripletQ/v.triplet,o=void 0===v.num_notes?v.triplet:v.num_notes)),n+=v.consumed),"["===i.charAt(n)){var E=n;n++;for(var M=null,I=!1,D=!1;!D;){var O=x(i,n);O[0]>0&&(n+=O[0]);var F=B(i,n,{},!1);if(null!==F)O[0]>0&&0!==O[1].indexOf("style=")&&(void 0===l.decoration&&(l.decoration=[]),l.decoration.push(O[1])),F.end_beam&&(l.end_beam=!0,delete F.end_beam),void 0===l.pitches?(l.duration=F.duration,l.pitches=[F]):l.pitches.push(F),delete F.duration,O[0]>0&&0===O[1].indexOf("style=")&&(l.pitches[l.pitches.length-1].style=O[1].substr(6)),d.inTieChord[l.pitches.length]&&(F.endTie=!0,d.inTieChord[l.pitches.length]=void 0),F.startTie&&(d.inTieChord[l.pitches.length]=!0),n=F.endChar,delete F.endChar;else if(" "===i.charAt(n))f("Spaces are not allowed in chords",i,n),n++;else{if(n<i.length&&"]"===i.charAt(n)){n++,0!==d.next_note_duration&&(l.duration=l.duration*d.next_note_duration,d.next_note_duration=0),d.inTie[h]&&(r.each(l.pitches,(function(e){e.endTie=!0})),d.inTie[h]=!1),o>0&&0===--o&&(l.endTriplet=!0);for(var Y=!1;n<i.length&&!Y;){switch(i.charAt(n)){case" ":case"\t":N(l);break;case")":void 0===l.endSlur?l.endSlur=1:l.endSlur++;break;case"-":r.each(l.pitches,(function(e){e.startTie={}})),d.inTie[h]=!0;break;case">":case"<":var j=C(i,n);n+=j[0]-1,d.next_note_duration=j[2],M?M*=j[1]:M=j[1];break;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":case"/":var V=t.getFraction(i,n);M=V.value,n=V.index," "===i.charAt(n)&&(I=!0),"-"===i.charAt(n)||")"===i.charAt(n)||" "===i.charAt(n)||"<"===i.charAt(n)||">"===i.charAt(n)?n--:Y=!0;break;default:Y=!0}Y||n++}}else f("Expected ']' to end the chords",i,n);void 0!==l.pitches&&(null!==M&&(l.duration=l.duration*M,I&&N(l)),d.addFormattingOptions(l,e.formatting,"note"),e.appendElement("note",a+E,a+n,l),d.measureNotEmpty=!0,l={}),D=!0}}}else{var G={},R=B(i,n,G,!0);void 0!==G.endTie&&(d.inTie[h]=!0),null!==R&&(void 0!==R.pitch?(l.pitches=[{}],void 0!==R.accidental&&(l.pitches[0].accidental=R.accidental),l.pitches[0].pitch=R.pitch,R.midipitch&&(l.pitches[0].midipitch=R.midipitch),void 0!==R.endSlur&&(l.pitches[0].endSlur=R.endSlur),void 0!==R.endTie&&(l.pitches[0].endTie=R.endTie),void 0!==R.startSlur&&(l.pitches[0].startSlur=R.startSlur),void 0!==l.startSlur&&(l.pitches[0].startSlur=l.startSlur),void 0!==R.startTie&&(l.pitches[0].startTie=R.startTie),void 0!==l.startTie&&(l.pitches[0].startTie=l.startTie)):(l.rest=R.rest,void 0!==R.endSlur&&(l.endSlur=R.endSlur),void 0!==R.endTie&&(l.rest.endTie=R.endTie),void 0!==R.startSlur&&(l.startSlur=R.startSlur),void 0!==R.startTie&&(l.rest.startTie=R.startTie),void 0!==l.startTie&&(l.rest.startTie=l.startTie)),void 0!==R.chord&&(l.chord=R.chord),void 0!==R.duration&&(l.duration=R.duration),void 0!==R.decoration&&(l.decoration=R.decoration),void 0!==R.graceNotes&&(l.graceNotes=R.graceNotes),delete l.startSlur,d.inTie[h]&&(void 0!==l.pitches?(l.pitches[0].endTie=!0,d.inTie[h]=!1):"spacer"!==l.rest.type&&(l.rest.endTie=!0,d.inTie[h]=!1)),(R.startTie||l.startTie)&&(d.inTie[h]=!0),n=R.endChar,o>0&&0===--o&&(l.endTriplet=!0),R.end_beam&&N(l),l.rest&&"rest"===l.rest.type&&1===l.duration&&z(d)<=1&&(l.rest.type="whole",l.duration=z(d)),d.addFormattingOptions(l,e.formatting,"note"),e.appendElement("note",a+u,a+n,l),d.measureNotEmpty=!0,l={})}n===u&&(" "!==i.charAt(n)&&"`"!==i.charAt(n)&&f("Unknown character ignored",i,n),n++)}}}}}(a.str),a.newline&&P(),a.words&&function(e,i){if(e){"-"!==(i=r.strip(i)).charAt(i.length-1)&&(i+=" ");for(var n=[],a=0,s=!1,o=function(e){var o=r.strip(i.substring(a,e));if(a=e+1,o.length>0){s&&(o=r.gsub(o,"~"," "));var c=i.charAt(e);return"_"!==c&&"-"!==c&&(c=" "),n.push({syllable:t.translateString(o),divider:c}),s=!1,!0}return!1},c=0;c<i.length;c++)switch(i.charAt(c)){case" ":case"":o(c);break;case"-":!o(c)&&n.length>0&&(r.last(n).divider="-",n.push({skip:!0,to:"next"}));break;case"_":o(c),n.push({skip:!0,to:"slur"});break;case"*":o(c),n.push({skip:!0,to:"next"});break;case"|":o(c),n.push({skip:!0,to:"bar"});break;case"~":s=!0}r.each(e,(function(e){if(0!==n.length)if(n[0].skip){switch(n[0].to){case"next":case"slur":"note"===e.el_type&&null!==e.pitches&&n.shift();break;case"bar":"bar"===e.el_type&&n.shift()}"bar"!==e.el_type&&(void 0===e.lyric?e.lyric=[{syllable:"",divider:" "}]:e.lyric.push({syllable:"",divider:" "}))}else if("note"===e.el_type&&void 0===e.rest){var t=n.shift();t.syllable&&(t.syllable=t.syllable.replace(/ +/g," ")),void 0===e.lyric?e.lyric=[t]:e.lyric.push(t)}}))}else f("Can't add words before the first line of music",e,0)}(e.getCurrentVoice(),n.substring(2)),a.symbols&&function(e,i){if(e){"-"!==(i=r.strip(i)).charAt(i.length-1)&&(i+=" ");for(var n=[],a=0,s=!1,o=function(e){var o=r.strip(i.substring(a,e));if(a=e+1,o.length>0){s&&(o=r.gsub(o,"~"," "));var c=i.charAt(e);return"_"!==c&&"-"!==c&&(c=" "),n.push({syllable:t.translateString(o),divider:c}),s=!1,!0}return!1},c=0;c<i.length;c++)switch(i.charAt(c)){case" ":case"":o(c);break;case"-":!o(c)&&n.length>0&&(r.last(n).divider="-",n.push({skip:!0,to:"next"}));break;case"_":o(c),n.push({skip:!0,to:"slur"});break;case"*":o(c),n.push({skip:!0,to:"next"});break;case"|":o(c),n.push({skip:!0,to:"bar"});break;case"~":s=!0}r.each(e,(function(e){if(0!==n.length)if(n[0].skip)switch(n[0].to){case"next":case"slur":"note"===e.el_type&&null!==e.pitches&&n.shift();break;case"bar":"bar"===e.el_type&&n.shift()}else if("note"===e.el_type&&void 0===e.rest){var t=n.shift();void 0===e.lyric?e.lyric=[t]:e.lyric.push(t)}}))}else f("Can't add symbols before the first line of music",e,0)}(e.getCurrentVoice(),n.substring(2)),a.recurse&&i(a.str)};function D(e,t){e.push({el_type:"hint"});for(var i=0;i<t.length;i++){var n=t[i],a=r.clone(n);if(e.push(a),"bar"===n.el_type)return}}function O(e,t){for(var i=0;i<e.length;i++){var r=e[i],n=t[i];if(n)for(var a=0;a<n.voices.length;a++){var s=n.voices[a],o=r.voices[a];o&&D(o,s)}}}this.parse=function(i,a,s){if(a||(a={}),s||(s=0),e.reset(),a.print&&(e.media="print"),d.reset(),d.iChar=s,a.visualTranspose?(d.globalTranspose=parseInt(a.visualTranspose),0===d.globalTranspose&&(d.globalTranspose=void 0)):d.globalTranspose=void 0,a.lineBreaks){d.lineBreaks={};for(var o=0;o<a.lineBreaks.length;o++)d.lineBreaks[""+(a.lineBreaks[o]+1)]=!0}m.reset(t,f,d,e),i=r.gsub(i,"\r\n","\n"),i=r.gsub(i,"\r","\n");var c=(i=(i=(i+="\n").replace(/\n\\.*\n/g,"\n")).replace(/\\([ \t]*)(%.*)*\n/g,(function(e,t,i){return t+" "+(i?" ".substring(0,i.length):"")}))).split("\n");0===r.last(c).length&&c.pop();try{a.format&&n.globalFormatting(a.format),r.each(c,(function(i){if(a.header_only&&!1===d.is_in_header)throw"normal_abort";if(a.stop_on_warning&&d.warnings)throw"normal_abort";d.is_in_history?":"===i.charAt(1)?(d.is_in_history=!1,I(i)):e.addMetaText("history",t.translateString(t.stripComment(i))):d.inTextBlock?r.startsWith(i,"%%endtext")?(e.addText(d.textBlock),d.inTextBlock=!1):r.startsWith(i,"%%")?d.textBlock+=" "+i.substring(2):d.textBlock+=" "+i:d.inPsBlock?r.startsWith(i,"%%endps")?d.inPsBlock=!1:d.textBlock+=" "+i:I(i),d.iChar+=i.length+1}));var h=792,u=612;switch(d.papersize){case"legal":h=1008,u=612;break;case"A4":h=842.4,u=597.6}if(d.landscape){var p=h;h=u,u=p}d.openSlurs=e.cleanUp(u,h,d.barsperstaff,d.staffnonote,d.openSlurs)}catch(e){if("normal_abort"!==e)throw e}a.hint_measures&&function(){for(var t=0;t<e.lines.length;t++){var i=e.lines[t].staff;if(i){for(var r=t+1;r<e.lines.length&&void 0===e.lines[r].staff;)r++;if(r<e.lines.length)O(i,e.lines[r].staff)}}}(),l.wrapLines(e,d.lineBreaks)}}},function(e,t,i){var r=i(0),n={};!function(){"use strict";var e,t,i,a;n.initialize=function(r,n,s,o){e=r,t=n,a=o,(i=s).annotationfont={face:"Helvetica",size:12,weight:"normal",style:"normal",decoration:"none"},i.gchordfont={face:"Helvetica",size:12,weight:"normal",style:"normal",decoration:"none"},i.historyfont={face:'"Times New Roman"',size:16,weight:"normal",style:"normal",decoration:"none"},i.infofont={face:'"Times New Roman"',size:14,weight:"normal",style:"italic",decoration:"none"},i.measurefont={face:'"Times New Roman"',size:14,weight:"normal",style:"italic",decoration:"none"},i.partsfont={face:'"Times New Roman"',size:15,weight:"normal",style:"normal",decoration:"none"},i.repeatfont={face:'"Times New Roman"',size:13,weight:"normal",style:"normal",decoration:"none"},i.textfont={face:'"Times New Roman"',size:16,weight:"normal",style:"normal",decoration:"none"},i.tripletfont={face:"Times",size:11,weight:"normal",style:"italic",decoration:"none"},i.vocalfont={face:'"Times New Roman"',size:13,weight:"bold",style:"normal",decoration:"none"},i.wordsfont={face:'"Times New Roman"',size:16,weight:"normal",style:"normal",decoration:"none"},a.formatting.composerfont={face:'"Times New Roman"',size:14,weight:"normal",style:"italic",decoration:"none"},a.formatting.subtitlefont={face:'"Times New Roman"',size:16,weight:"normal",style:"normal",decoration:"none"},a.formatting.tempofont={face:'"Times New Roman"',size:15,weight:"bold",style:"normal",decoration:"none"},a.formatting.titlefont={face:'"Times New Roman"',size:20,weight:"normal",style:"normal",decoration:"none"},a.formatting.footerfont={face:'"Times New Roman"',size:12,weight:"normal",style:"normal",decoration:"none"},a.formatting.headerfont={face:'"Times New Roman"',size:12,weight:"normal",style:"normal",decoration:"none"},a.formatting.voicefont={face:'"Times New Roman"',size:13,weight:"bold",style:"normal",decoration:"none"},a.formatting.annotationfont=i.annotationfont,a.formatting.gchordfont=i.gchordfont,a.formatting.historyfont=i.historyfont,a.formatting.infofont=i.infofont,a.formatting.measurefont=i.measurefont,a.formatting.partsfont=i.partsfont,a.formatting.repeatfont=i.repeatfont,a.formatting.textfont=i.textfont,a.formatting.tripletfont=i.tripletfont,a.formatting.vocalfont=i.vocalfont,a.formatting.wordsfont=i.wordsfont};var s={gchordfont:!0,measurefont:!0,partsfont:!0},o=function(e,i,r,n,a){function o(){var o=parseInt(e[0].token);return e.shift(),i?0===e.length?{face:i.face,weight:i.weight,style:i.style,decoration:i.decoration,size:o}:1===e.length&&"box"===e[0].token&&s[a]?{face:i.face,weight:i.weight,style:i.style,decoration:i.decoration,size:o,box:!0}:(t("Extra parameters in font definition.",r,n),{face:i.face,weight:i.weight,style:i.style,decoration:i.decoration,size:o}):(t("Can't set just the size of the font since there is no default value.",r,n),{face:'"Times New Roman"',weight:"normal",style:"normal",decoration:"none",size:o})}if("*"===e[0].token){if(e.shift(),"number"===e[0].type)return o();t("Expected font size number after *.",r,n)}if("number"===e[0].type)return o();for(var c,l=[],h="normal",u="normal",d="none",p=!1,f="face",m=!1;e.length;){var g=e.shift(),v=g.token.toLowerCase();switch(f){case"face":m||"utf"!==v&&"number"!==g.type&&"bold"!==v&&"italic"!==v&&"underline"!==v&&"box"!==v?l.length>0&&"-"===g.token?(m=!0,l[l.length-1]=l[l.length-1]+g.token):m?(m=!1,l[l.length-1]=l[l.length-1]+g.token):l.push(g.token):"number"===g.type?(c?t("Font size specified twice in font definition.",r,n):c=g.token,f="modifier"):"bold"===v?h="bold":"italic"===v?u="italic":"underline"===v?d="underline":"box"===v?(s[a]?p=!0:t('This font style doesn\'t support "box"',r,n),f="finished"):"utf"===v?(g=e.shift(),f="size"):t("Unknown parameter "+g.token+" in font definition.",r,n);break;case"size":"number"===g.type?c?t("Font size specified twice in font definition.",r,n):c=g.token:t("Expected font size in font definition.",r,n),f="modifier";break;case"modifier":"bold"===v?h="bold":"italic"===v?u="italic":"underline"===v?d="underline":"box"===v?(s[a]?p=!0:t('This font style doesn\'t support "box"',r,n),f="finished"):t("Unknown parameter "+g.token+" in font definition.",r,n);break;case"finished":t('Extra characters found after "box" in font definition.',r,n)}}void 0===c?i?c=i.size:(t("Must specify the size of the font since there is no default value.",r,n),c=12):c=parseFloat(c);var b=function(e){switch(e){case"Arial-Italic":return{face:"Arial",weight:"normal",style:"italic",decoration:"none"};case"Arial-Bold":return{face:"Arial",weight:"bold",style:"normal",decoration:"none"};case"Bookman-Demi":return{face:"Bookman,serif",weight:"bold",style:"normal",decoration:"none"};case"Bookman-DemiItalic":return{face:"Bookman,serif",weight:"bold",style:"italic",decoration:"none"};case"Bookman-Light":return{face:"Bookman,serif",weight:"normal",style:"normal",decoration:"none"};case"Bookman-LightItalic":return{face:"Bookman,serif",weight:"normal",style:"italic",decoration:"none"};case"Courier":return{face:'"Courier New"',weight:"normal",style:"normal",decoration:"none"};case"Courier-Oblique":return{face:'"Courier New"',weight:"normal",style:"italic",decoration:"none"};case"Courier-Bold":return{face:'"Courier New"',weight:"bold",style:"normal",decoration:"none"};case"Courier-BoldOblique":return{face:'"Courier New"',weight:"bold",style:"italic",decoration:"none"};case"AvantGarde-Book":return{face:"AvantGarde,Arial",weight:"normal",style:"normal",decoration:"none"};case"AvantGarde-BookOblique":return{face:"AvantGarde,Arial",weight:"normal",style:"italic",decoration:"none"};case"AvantGarde-Demi":case"Avant-Garde-Demi":return{face:"AvantGarde,Arial",weight:"bold",style:"normal",decoration:"none"};case"AvantGarde-DemiOblique":return{face:"AvantGarde,Arial",weight:"bold",style:"italic",decoration:"none"};case"Helvetica-Oblique":return{face:"Helvetica",weight:"normal",style:"italic",decoration:"none"};case"Helvetica-Bold":return{face:"Helvetica",weight:"bold",style:"normal",decoration:"none"};case"Helvetica-BoldOblique":return{face:"Helvetica",weight:"bold",style:"italic",decoration:"none"};case"Helvetica-Narrow":return{face:'"Helvetica Narrow",Helvetica',weight:"normal",style:"normal",decoration:"none"};case"Helvetica-Narrow-Oblique":return{face:'"Helvetica Narrow",Helvetica',weight:"normal",style:"italic",decoration:"none"};case"Helvetica-Narrow-Bold":return{face:'"Helvetica Narrow",Helvetica',weight:"bold",style:"normal",decoration:"none"};case"Helvetica-Narrow-BoldOblique":return{face:'"Helvetica Narrow",Helvetica',weight:"bold",style:"italic",decoration:"none"};case"Palatino-Roman":return{face:"Palatino",weight:"normal",style:"normal",decoration:"none"};case"Palatino-Italic":return{face:"Palatino",weight:"normal",style:"italic",decoration:"none"};case"Palatino-Bold":return{face:"Palatino",weight:"bold",style:"normal",decoration:"none"};case"Palatino-BoldItalic":return{face:"Palatino",weight:"bold",style:"italic",decoration:"none"};case"NewCenturySchlbk-Roman":return{face:'"New Century",serif',weight:"normal",style:"normal",decoration:"none"};case"NewCenturySchlbk-Italic":return{face:'"New Century",serif',weight:"normal",style:"italic",decoration:"none"};case"NewCenturySchlbk-Bold":return{face:'"New Century",serif',weight:"bold",style:"normal",decoration:"none"};case"NewCenturySchlbk-BoldItalic":return{face:'"New Century",serif',weight:"bold",style:"italic",decoration:"none"};case"Times":case"Times-Roman":case"Times-Narrow":case"Times-Courier":case"Times-New-Roman":return{face:'"Times New Roman"',weight:"normal",style:"normal",decoration:"none"};case"Times-Italic":case"Times-Italics":return{face:'"Times New Roman"',weight:"normal",style:"italic",decoration:"none"};case"Times-Bold":return{face:'"Times New Roman"',weight:"bold",style:"normal",decoration:"none"};case"Times-BoldItalic":return{face:'"Times New Roman"',weight:"bold",style:"italic",decoration:"none"};case"ZapfChancery-MediumItalic":return{face:'"Zapf Chancery",cursive,serif',weight:"normal",style:"normal",decoration:"none"};default:return null}}(l=l.join(" ")),y={};return b?(y.face=b.face,y.weight=b.weight,y.style=b.style,y.decoration=b.decoration,y.size=c,p&&(y.box=!0),y):(y.face=l,y.weight=h,y.style=u,y.decoration=d,y.size=c,p&&(y.box=!0),y)},c=function(e,t,r){return 0===t.length?'Directive "'+e+'" requires a font as a parameter.':(i[e]=o(t,i[e],r,0,e),i.is_in_header&&(a.formatting[e]=i[e]),null)},l=function(e,t){var i="";r.each(t,(function(e){i+=e.token}));var n=parseFloat(i);if(isNaN(n)||0===n)return'Directive "'+e+'" requires a number as a parameter.';a.formatting.scale=n},h=function(e,t,r,n,a){if(1!==r.length||"number"!==r[0].type)return'Directive "'+t+'" requires a number as a parameter.';var s=r[0].intt;return void 0!==n&&s<n?'Directive "'+t+'" requires a number greater than or equal to '+n+" as a parameter.":void 0!==a&&s>a?'Directive "'+t+'" requires a number less than or equal to '+a+" as a parameter.":(i[e]=s,null)},u=function(e,t,r){if(1===r.length&&("true"===r[0].token||"false"===r[0].token))return i[e]="true"===r[0].token,null;var n=h(e,t,r,0,1);return null!==n?n:(i[e]=1===i[e],null)},d=function(e,t,r,n){if(1!==r.length)return'Directive "'+t+'" requires one of [ '+n.join(", ")+" ] as a parameter.";for(var a=r[0].token,s=!1,o=0;!s&&o<n.length;o++)n[o]===a&&(s=!0);return s?(i[e]=a,null):'Directive "'+t+'" requires one of [ '+n.join(", ")+" ] as a parameter."},p=["nobarlines","barlines","beataccents","nobeataccents","droneon","droneoff","drumon","drumoff","fermatafixed","fermataproportional","gchordon","gchordoff","controlcombo","temperamentnormal","noportamento"],f=["gchord","ptstress","beatstring"],m=["bassvol","chordvol","c","channel","beatmod","deltaloudness","drumbars","gracedivider","makechordchannels","randomchordattack","chordattack","stressmodel","transpose","rtranspose","volinc"],g=["program"],v=["ratio","snt","bendvelocity","pitchbend","control","temperamentlinear"],b=["beat"],y=["drone"],w=["portamento"],k=["expand","grace","trim"],x=["drum","chordname"];n.parseFontChangeLine=function(e){var t=e.split("$");if(t.length>1&&i.setfont){for(var r=[{text:t[0]}],n=1;n<t.length;n++)"0"===t[n].charAt(0)?r.push({text:t[n].substring(1)}):"1"===t[n].charAt(0)&&i.setfont[1]?r.push({font:i.setfont[1],text:t[n].substring(1)}):"2"===t[n].charAt(0)&&i.setfont[2]?r.push({font:i.setfont[2],text:t[n].substring(1)}):"3"===t[n].charAt(0)&&i.setfont[3]?r.push({font:i.setfont[3],text:t[n].substring(1)}):"4"===t[n].charAt(0)&&i.setfont[4]?r.push({font:i.setfont[4],text:t[n].substring(1)}):r[r.length-1].text+="$"+t[n];if(r.length>1)return r}return e};var S=["auto","above","below","hidden"];n.addDirective=function(s){var _=e.tokenize(s,0,s.length);if(0===_.length||"alpha"!==_[0].type)return null;var T=s.substring(s.indexOf(_[0].token)+_[0].token.length);T=e.stripComment(T);var A=_.shift().token.toLowerCase(),C="";switch(A){case"bagpipes":a.formatting.bagpipes=!0;break;case"flatbeams":a.formatting.flatbeams=!0;break;case"landscape":i.landscape=!0;break;case"papersize":i.papersize=T;break;case"slurgraces":a.formatting.slurgraces=!0;break;case"stretchlast":a.formatting.stretchlast=!0;break;case"titlecaps":i.titlecaps=!0;break;case"titleleft":a.formatting.titleleft=!0;break;case"measurebox":a.formatting.measurebox=!0;break;case"vocal":return d("vocalPosition",A,_,S);case"dynamic":return d("dynamicPosition",A,_,S);case"gchord":return d("chordPosition",A,_,S);case"ornament":return d("ornamentPosition",A,_,S);case"volume":return d("volumePosition",A,_,S);case"botmargin":case"botspace":case"composerspace":case"indent":case"leftmargin":case"linesep":case"musicspace":case"partsspace":case"pageheight":case"pagewidth":case"rightmargin":case"staffsep":case"staffwidth":case"subtitlespace":case"sysstaffsep":case"systemsep":case"textspace":case"titlespace":case"topmargin":case"topspace":case"vocalspace":case"wordsspace":return function(t,i){var r=e.getMeasurement(i);return 0===r.used||0!==i.length?'Directive "'+t+'" requires a measurement as a parameter.':(a.formatting[t]=r.value,null)}(A,_);case"voicescale":if(1!==_.length||"number"!==_[0].type)return"voicescale requires one float as a parameter";var N=_.shift();return i.currentVoice&&(i.currentVoice.scale=N.floatt,a.changeVoiceScale(i.currentVoice.scale)),null;case"vskip":var E=function(t,i){var r=e.getMeasurement(i);return 0===r.used||0!==i.length?{error:'Directive "'+t+'" requires a measurement as a parameter.'}:r.value}(A,_);return E.error?E.error:(a.addSpacing(E),null);case"scale":l(A,_);break;case"sep":if(0===_.length)a.addSeparator();else{var M=e.getMeasurement(_);if(0===M.used)return'Directive "'+A+'" requires 3 numbers: space above, space below, length of line';var B=M.value;if(0===(M=e.getMeasurement(_)).used)return'Directive "'+A+'" requires 3 numbers: space above, space below, length of line';var P=M.value;if(0===(M=e.getMeasurement(_)).used||0!==_.length)return'Directive "'+A+'" requires 3 numbers: space above, space below, length of line';var L=M.value;a.addSeparator(B,P,L)}break;case"barsperstaff":if(null!==(C=h("barsperstaff",A,_)))return C;break;case"staffnonote":if(1!==_.length)return"Directive staffnonote requires one parameter: 0 or 1";if("0"===_[0].token)i.staffnonote=!0;else{if("1"!==_[0].token)return"Directive staffnonote requires one parameter: 0 or 1 (received "+_[0].token+")";i.staffnonote=!1}break;case"printtempo":if(null!==(C=u("printTempo",A,_)))return C;break;case"partsbox":if(null!==(C=u("partsBox",A,_)))return C;i.partsfont.box=i.partsBox;break;case"freegchord":if(null!==(C=u("freegchord",A,_)))return C;break;case"measurenb":case"barnumbers":if(null!==(C=h("barNumbers",A,_)))return C;break;case"setbarnb":if(1!==_.length||"number"!==_[0].type)return"Directive setbarnb requires a number as a parameter.";i.currBarNumber=a.setBarNumberImmediate(_[0].intt);break;case"begintext":i.inTextBlock=!0;break;case"continueall":i.continueall=!0;break;case"beginps":i.inPsBlock=!0,t("Postscript ignored",s,0);break;case"deco":T.length>0&&i.ignoredDecorations.push(T.substring(0,T.indexOf(" "))),t("Decoration redefinition ignored",s,0);break;case"text":var H=e.translateString(T);a.addText(n.parseFontChangeLine(H));break;case"center":var z=e.translateString(T);a.addCentered(n.parseFontChangeLine(z));break;case"font":break;case"setfont":var I=e.tokenize(T,0,T.length);if(I.length>=4&&"-"===I[0].token&&"number"===I[1].type){var D=parseInt(I[1].token);D>=1&&D<=4&&(i.setfont||(i.setfont=[]),I.shift(),I.shift(),i.setfont[D]=o(I,i.setfont[D],s,0,"setfont"))}break;case"gchordfont":case"partsfont":case"tripletfont":case"vocalfont":case"textfont":case"annotationfont":case"historyfont":case"infofont":case"measurefont":case"repeatfont":case"wordsfont":return c(A,_,s);case"composerfont":case"subtitlefont":case"tempofont":case"titlefont":case"voicefont":case"footerfont":case"headerfont":return function(e,t,i){return 0===t.length?'Directive "'+e+'" requires a font as a parameter.':(a.formatting[e]=o(t,a.formatting[e],i,0,e),null)}(A,_,s);case"barlabelfont":case"barnumberfont":case"barnumfont":return c("measurefont",_,s);case"staves":case"score":i.score_is_present=!0;for(var O,F=function(e,t,n,a,s){(t||0===i.staves.length)&&i.staves.push({index:i.staves.length,numVoices:0});var o=r.last(i.staves);void 0!==n&&(o.bracket=n),void 0!==a&&(o.brace=a),s&&(o.connectBarLines="end"),void 0===i.voices[e]&&(i.voices[e]={staffNum:o.index,index:o.numVoices},o.numVoices++)},Y=!1,j=!1,V=!1,G=!1,R=!1,W=!1,q=!1,U=function(){if(q=!0,O){var e="start";O.staffNum>0&&("start"!==i.staves[O.staffNum-1].connectBarLines&&"continue"!==i.staves[O.staffNum-1].connectBarLines||(e="continue")),i.staves[O.staffNum].connectBarLines=e}};_.length;){var X=_.shift();switch(X.token){case"(":Y?t("Can't nest parenthesis in %%score",s,X.start):(Y=!0,G=!0);break;case")":!Y||G?t("Unexpected close parenthesis in %%score",s,X.start):Y=!1;break;case"[":j?t("Can't nest brackets in %%score",s,X.start):(j=!0,R=!0);break;case"]":!j||R?t("Unexpected close bracket in %%score",s,X.start):(j=!1,i.staves[O.staffNum].bracket="end");break;case"{":V?t("Can't nest braces in %%score",s,X.start):(V=!0,W=!0);break;case"}":!V||W?t("Unexpected close brace in %%score",s,X.start):(V=!1,i.staves[O.staffNum].brace="end");break;case"|":U();break;default:for(var K="";("alpha"===X.type||"number"===X.type)&&(K+=X.token,X.continueId);)X=_.shift();F(K,!Y||G,R?"start":j?"continue":void 0,W?"start":V?"continue":void 0,q),G=!1,R=!1,W=!1,q=!1,O=i.voices[K],"staves"===A&&U()}}break;case"newpage":var Q=e.getInt(T);a.addNewPage(0===Q.digits?-1:Q.value);break;case"abc":var Z=T.split(" ");switch(Z[0]){case"-copyright":case"-creator":case"-edited-by":case"-version":case"-charset":var $=Z.shift();a.addMetaText(A+$,Z.join(" "));break;default:return"Unknown directive: "+A+Z[0]}break;case"header":case"footer":var J=e.getMeat(T,0,T.length);'"'===(J=T.substring(J.start,J.end)).charAt(0)&&'"'===J.charAt(J.length-1)&&(J=J.substring(1,J.length-1));var ee=J.split("\t"),te={};te=1===ee.length?{left:"",center:ee[0],right:""}:2===ee.length?{left:ee[0],center:ee[1],right:""}:{left:ee[0],center:ee[1],right:ee[2]},ee.length>3&&t("Too many tabs in "+A+": "+ee.length+" found.",T,0),a.addMetaTextObj(A,te);break;case"midi":var ie=e.tokenize(T,0,T.length,!0);ie.length>0&&"="===ie[0].token&&ie.shift(),0===ie.length?t("Expected midi command",T,0):function(e,i,r){var n=e.shift().token,a=[];if(p.indexOf(n)>=0)0!==e.length&&t("Unexpected parameter in MIDI "+n,r,0);else if(f.indexOf(n)>=0)1!==e.length?t("Expected one parameter in MIDI "+n,r,0):a.push(e[0].token);else if(m.indexOf(n)>=0)1!==e.length?t("Expected one parameter in MIDI "+n,r,0):"number"!==e[0].type?t("Expected one integer parameter in MIDI "+n,r,0):a.push(e[0].intt);else if(g.indexOf(n)>=0)1!==e.length&&2!==e.length?t("Expected one or two parameters in MIDI "+n,r,0):"number"!==e[0].type?t("Expected integer parameter in MIDI "+n,r,0):2===e.length&&"number"!==e[1].type?t("Expected integer parameter in MIDI "+n,r,0):(a.push(e[0].intt),2===e.length&&a.push(e[1].intt));else if(v.indexOf(n)>=0)2!==e.length?t("Expected two parameters in MIDI "+n,r,0):"number"!==e[0].type||"number"!==e[1].type?t("Expected two integer parameters in MIDI "+n,r,0):(a.push(e[0].intt),a.push(e[1].intt));else if(w.indexOf(n)>=0)2!==e.length?t("Expected two parameters in MIDI "+n,r,0):"alpha"!==e[0].type||"number"!==e[1].type?t("Expected one string and one integer parameters in MIDI "+n,r,0):(a.push(e[0].token),a.push(e[1].intt));else if("drummap"===n)2===e.length&&"alpha"===e[0].type&&"number"===e[1].type?(i.formatting||(i.formatting={}),i.formatting.midi||(i.formatting.midi={}),i.formatting.midi.drummap||(i.formatting.midi.drummap={}),i.formatting.midi.drummap[e[0].token]=e[1].intt,a=i.formatting.midi.drummap):3===e.length&&"punct"===e[0].type&&"alpha"===e[1].type&&"number"===e[2].type?(i.formatting||(i.formatting={}),i.formatting.midi||(i.formatting.midi={}),i.formatting.midi.drummap||(i.formatting.midi.drummap={}),i.formatting.midi.drummap[e[0].token+e[1].token]=e[2].intt,a=i.formatting.midi.drummap):t("Expected one note name and one integer parameter in MIDI "+n,r,0);else if(k.indexOf(n)>=0)3!==e.length?t("Expected fraction parameter in MIDI "+n,r,0):"number"!==e[0].type||"/"!==e[1].token||"number"!==e[2].type?t("Expected fraction parameter in MIDI "+n,r,0):(a.push(e[0].intt),a.push(e[2].intt));else if(b.indexOf(n)>=0)4!==e.length?t("Expected four parameters in MIDI "+n,r,0):"number"!==e[0].type||"number"!==e[1].type||"number"!==e[2].type||"number"!==e[3].type?t("Expected four integer parameters in MIDI "+n,r,0):(a.push(e[0].intt),a.push(e[1].intt),a.push(e[2].intt),a.push(e[3].intt));else if(y.indexOf(n)>=0)5!==e.length?t("Expected five parameters in MIDI "+n,r,0):"number"!==e[0].type||"number"!==e[1].type||"number"!==e[2].type||"number"!==e[3].type||"number"!==e[4].type?t("Expected five integer parameters in MIDI "+n,r,0):(a.push(e[0].intt),a.push(e[1].intt),a.push(e[2].intt),a.push(e[3].intt),a.push(e[4].intt));else if(g.indexOf(n)>=0)1!==e.length||4!==e.length?t("Expected one or two parameters in MIDI "+n,r,0):"number"!==e[0].type?t("Expected integer parameter in MIDI "+n,r,0):4===e.length?("octave"!==e[1].token&&t("Expected octave parameter in MIDI "+n,r,0),"="!==e[2].token&&t("Expected octave parameter in MIDI "+n,r,0),"number"!==e[3].type&&t("Expected integer parameter for octave in MIDI "+n,r,0)):(a.push(e[0].intt),4===e.length&&a.push(e[3].intt));else if(x.indexOf(n)>=0)if(e.length<2)t("Expected string parameter and at least one integer parameter in MIDI "+n,r,0);else if("alpha"!==e[0].type)t("Expected string parameter and at least one integer parameter in MIDI "+n,r,0);else{var s=e.shift();for(a.push(s.token);e.length>0;)"number"!==(s=e.shift()).type&&t("Expected integer parameter in MIDI "+n,r,0),a.push(s.intt)}i.hasBeginMusic()?i.appendElement("midi",-1,-1,{cmd:n,params:a}):(void 0===i.formatting.midi&&(i.formatting.midi={}),i.formatting.midi[n]=a)}(ie,a,T);break;case"map":case"percmap":case"playtempo":case"auquality":case"continuous":case"nobarcheck":a.formatting[A]=T;break;default:return"Unknown directive: "+A}return null},n.globalFormatting=function(r){for(var n in r)if(r.hasOwnProperty(n)){var a,s=""+r[n],o=e.tokenize(s,0,s.length);switch(n){case"titlefont":case"gchordfont":case"composerfont":case"footerfont":case"headerfont":case"historyfont":case"infofont":case"measurefont":case"partsfont":case"repeatfont":case"subtitlefont":case"tempofont":case"textfont":case"voicefont":case"tripletfont":case"vocalfont":case"wordsfont":case"annotationfont":c(n,o,s);break;case"scale":l(n,o);break;case"partsbox":null!==(a=u("partsBox",n,o))&&t(a),i.partsfont.box=i.partsBox;break;case"freegchord":null!==(a=u("freegchord",n,o))&&t(a);default:t("Formatting directive unrecognized: ",n,0)}}}}(),e.exports=n},function(e,t,i){var r=i(0),n=i(11),a=i(16),s={};!function(){var e,t,i,o;s.initialize=function(r,n,a,s){e=r,t=n,i=a,o=s},s.standardKey=function(e,t,r,n){var s={acc:"sharp",note:"f"},o={acc:"sharp",note:"c"},c={acc:"sharp",note:"g"},l={acc:"sharp",note:"d"},h={acc:"sharp",note:"A"},u={acc:"sharp",note:"e"},d={acc:"sharp",note:"B"},p={acc:"flat",note:"B"},f={acc:"flat",note:"e"},m={acc:"flat",note:"A"},g={acc:"flat",note:"d"},v={acc:"flat",note:"G"},b={acc:"flat",note:"c"},y={acc:"flat",note:"F"},w={"C#":[s,o,c,l,h,u,d],"A#m":[s,o,c,l,h,u,d],"G#Mix":[s,o,c,l,h,u,d],"D#Dor":[s,o,c,l,h,u,d],"E#Phr":[s,o,c,l,h,u,d],"F#Lyd":[s,o,c,l,h,u,d],"B#Loc":[s,o,c,l,h,u,d],"F#":[s,o,c,l,h,u],"D#m":[s,o,c,l,h,u],"C#Mix":[s,o,c,l,h,u],"G#Dor":[s,o,c,l,h,u],"A#Phr":[s,o,c,l,h,u],BLyd:[s,o,c,l,h,u],"E#Loc":[s,o,c,l,h,u],B:[s,o,c,l,h],"G#m":[s,o,c,l,h],"F#Mix":[s,o,c,l,h],"C#Dor":[s,o,c,l,h],"D#Phr":[s,o,c,l,h],ELyd:[s,o,c,l,h],"A#Loc":[s,o,c,l,h],E:[s,o,c,l],"C#m":[s,o,c,l],BMix:[s,o,c,l],"F#Dor":[s,o,c,l],"G#Phr":[s,o,c,l],ALyd:[s,o,c,l],"D#Loc":[s,o,c,l],A:[s,o,c],"F#m":[s,o,c],EMix:[s,o,c],BDor:[s,o,c],"C#Phr":[s,o,c],DLyd:[s,o,c],"G#Loc":[s,o,c],D:[s,o],Bm:[s,o],AMix:[s,o],EDor:[s,o],"F#Phr":[s,o],GLyd:[s,o],"C#Loc":[s,o],G:[s],Em:[s],DMix:[s],ADor:[s],BPhr:[s],CLyd:[s],"F#Loc":[s],C:[],Am:[],GMix:[],DDor:[],EPhr:[],FLyd:[],BLoc:[],F:[p],Dm:[p],CMix:[p],GDor:[p],APhr:[p],BbLyd:[p],ELoc:[p],Bb:[p,f],Gm:[p,f],FMix:[p,f],CDor:[p,f],DPhr:[p,f],EbLyd:[p,f],ALoc:[p,f],Eb:[p,f,m],Cm:[p,f,m],BbMix:[p,f,m],FDor:[p,f,m],GPhr:[p,f,m],AbLyd:[p,f,m],DLoc:[p,f,m],Ab:[p,f,m,g],Fm:[p,f,m,g],EbMix:[p,f,m,g],BbDor:[p,f,m,g],CPhr:[p,f,m,g],DbLyd:[p,f,m,g],GLoc:[p,f,m,g],Db:[p,f,m,g,v],Bbm:[p,f,m,g,v],AbMix:[p,f,m,g,v],EbDor:[p,f,m,g,v],FPhr:[p,f,m,g,v],GbLyd:[p,f,m,g,v],CLoc:[p,f,m,g,v],Gb:[p,f,m,g,v,b],Ebm:[p,f,m,g,v,b],DbMix:[p,f,m,g,v,b],AbDor:[p,f,m,g,v,b],BbPhr:[p,f,m,g,v,b],CbLyd:[p,f,m,g,v,b],FLoc:[p,f,m,g,v,b],Cb:[p,f,m,g,v,b,y],Abm:[p,f,m,g,v,b,y],GbMix:[p,f,m,g,v,b,y],DbDor:[p,f,m,g,v,b,y],EbPhr:[p,f,m,g,v,b,y],FbLyd:[p,f,m,g,v,b,y],BbLoc:[p,f,m,g,v,b,y],"A#":[p,f],"B#":[],"D#":[p,f,m],"E#":[p],"G#":[p,f,m,g],Gbm:[s,o,c,l,h,u,d]};return a.keySignature(i,w,e,t,r,n)};var c={treble:{clef:"treble",pitch:4,mid:0},"treble+8":{clef:"treble+8",pitch:4,mid:0},"treble-8":{clef:"treble-8",pitch:4,mid:0},"treble^8":{clef:"treble+8",pitch:4,mid:0},treble_8:{clef:"treble-8",pitch:4,mid:0},treble1:{clef:"treble",pitch:2,mid:2},treble2:{clef:"treble",pitch:4,mid:0},treble3:{clef:"treble",pitch:6,mid:-2},treble4:{clef:"treble",pitch:8,mid:-4},treble5:{clef:"treble",pitch:10,mid:-6},perc:{clef:"perc",pitch:6,mid:0},none:{clef:"none",mid:0},bass:{clef:"bass",pitch:8,mid:-12},"bass+8":{clef:"bass+8",pitch:8,mid:-12},"bass-8":{clef:"bass-8",pitch:8,mid:-12},"bass^8":{clef:"bass+8",pitch:8,mid:-12},bass_8:{clef:"bass-8",pitch:8,mid:-12},"bass+16":{clef:"bass",pitch:8,mid:-12},"bass-16":{clef:"bass",pitch:8,mid:-12},"bass^16":{clef:"bass",pitch:8,mid:-12},bass_16:{clef:"bass",pitch:8,mid:-12},bass1:{clef:"bass",pitch:2,mid:-6},bass2:{clef:"bass",pitch:4,mid:-8},bass3:{clef:"bass",pitch:6,mid:-10},bass4:{clef:"bass",pitch:8,mid:-12},bass5:{clef:"bass",pitch:10,mid:-14},tenor:{clef:"alto",pitch:8,mid:-8},tenor1:{clef:"alto",pitch:2,mid:-2},tenor2:{clef:"alto",pitch:4,mid:-4},tenor3:{clef:"alto",pitch:6,mid:-6},tenor4:{clef:"alto",pitch:8,mid:-8},tenor5:{clef:"alto",pitch:10,mid:-10},alto:{clef:"alto",pitch:6,mid:-6},alto1:{clef:"alto",pitch:2,mid:-2},alto2:{clef:"alto",pitch:4,mid:-4},alto3:{clef:"alto",pitch:6,mid:-6},alto4:{clef:"alto",pitch:8,mid:-8},alto5:{clef:"alto",pitch:10,mid:-10},"alto+8":{clef:"alto+8",pitch:6,mid:-6},"alto-8":{clef:"alto-8",pitch:6,mid:-6},"alto^8":{clef:"alto+8",pitch:6,mid:-6},alto_8:{clef:"alto-8",pitch:6,mid:-6}},l=function(e,t){var i=c[e];return(i?i.mid:0)+t};s.fixClef=function(e){var t=c[e.type];t&&(e.clefPos=t.pitch,e.type=t.clef)},s.deepCopyKey=function(e){var t={accidentals:[],root:e.root,acc:e.acc,mode:e.mode};return r.each(e.accidentals,(function(e){t.accidentals.push(r.clone(e))})),t};var h={A:5,B:6,C:0,D:1,E:2,F:3,G:4,a:12,b:13,c:7,d:8,e:9,f:10,g:11};s.addPosToKey=function(e,t){var i=e.verticalPos;r.each(t.accidentals,(function(e){var t=h[e.note];t-=i,e.verticalPos=t})),t.impliedNaturals&&r.each(t.impliedNaturals,(function(e){var t=h[e.note];t-=i,e.verticalPos=t})),i<-10?(r.each(t.accidentals,(function(e){e.verticalPos-=7,(e.verticalPos>=11||10===e.verticalPos&&"flat"===e.acc)&&(e.verticalPos-=7),"A"===e.note&&"sharp"===e.acc&&(e.verticalPos-=7),"G"!==e.note&&"F"!==e.note||"flat"!==e.acc||(e.verticalPos-=7)})),t.impliedNaturals&&r.each(t.impliedNaturals,(function(e){e.verticalPos-=7,(e.verticalPos>=11||10===e.verticalPos&&"flat"===e.acc)&&(e.verticalPos-=7),"A"===e.note&&"sharp"===e.acc&&(e.verticalPos-=7),"G"!==e.note&&"F"!==e.note||"flat"!==e.acc||(e.verticalPos-=7)}))):i<-4?(r.each(t.accidentals,(function(e){e.verticalPos-=7,-8!==i||"f"!==e.note&&"g"!==e.note||"sharp"!==e.acc||(e.verticalPos-=7)})),t.impliedNaturals&&r.each(t.impliedNaturals,(function(e){e.verticalPos-=7,-8!==i||"f"!==e.note&&"g"!==e.note||"sharp"!==e.acc||(e.verticalPos-=7)}))):i>=7&&(r.each(t.accidentals,(function(e){e.verticalPos+=7})),t.impliedNaturals&&r.each(t.impliedNaturals,(function(e){e.verticalPos+=7})))},s.fixKey=function(e,t){var i=r.clone(t);return s.addPosToKey(e,i),i};var u=function(e){var t=0,i=e.charAt(t++);"^"!==i&&"_"!==i||(i=e.charAt(t++));var r=h[i];for(void 0===r&&(r=6);t<e.length;t++)if(","===e.charAt(t))r-=7;else{if("'"!==e.charAt(t))break;r+=7}return{mid:r-6,str:e.substring(t)}};s.parseKey=function(r){0===r.length&&(r="none");var a=e.tokenize(r,0,r.length),o={};switch(a[0].token){case"HP":n.addDirective("bagpipes"),i.key={root:"HP",accidentals:[],acc:"",mode:""},o.foundKey=!0,a.shift();break;case"Hp":n.addDirective("bagpipes"),i.key={root:"Hp",accidentals:[{acc:"natural",note:"g"},{acc:"sharp",note:"f"},{acc:"sharp",note:"c"}],acc:"",mode:""},o.foundKey=!0,a.shift();break;case"none":i.key={root:"none",accidentals:[],acc:"",mode:""},o.foundKey=!0,a.shift();break;default:var c=e.getKeyPitch(a[0].token);if(c.len>0){o.foundKey=!0;var h="",u="";a[0].token.length>1?a[0].token=a[0].token.substring(1):a.shift();var d=c.token;if(a.length>0){var p=e.getSharpFlat(a[0].token);if(p.len>0&&(a[0].token.length>1?a[0].token=a[0].token.substring(1):a.shift(),d+=p.token,h=p.token),a.length>0){var f=e.getMode(a[0].token);f.len>0&&(a.shift(),d+=f.token,u=f.token)}if(void 0===s.standardKey(d,c.token,h,0))return t("Unsupported key signature: "+d,r,0),o}var m=s.deepCopyKey(i.key),g=i.globalTranspose?-i.globalTranspose:0;if(i.key=s.deepCopyKey(s.standardKey(d,c.token,h,g)),i.key.mode=u,m){for(var v,b=0;b<i.key.accidentals.length;b++)for(v=0;v<m.accidentals.length;v++)m.accidentals[v].note&&i.key.accidentals[b].note.toLowerCase()===m.accidentals[v].note.toLowerCase()&&(m.accidentals[v].note=null);for(v=0;v<m.accidentals.length;v++)m.accidentals[v].note&&(i.key.impliedNaturals||(i.key.impliedNaturals=[]),i.key.impliedNaturals.push({acc:"natural",note:m.accidentals[v].note}))}}}if(0===a.length)return o;if("exp"===a[0].token&&a.shift(),0===a.length)return o;if("oct"===a[0].token&&a.shift(),0===a.length)return o;var y,w=e.getKeyAccidentals2(a);if(w.warn&&t(w.warn,r,0),w.accs){o.foundKey||(o.foundKey=!0,i.key={root:"none",acc:"",mode:"",accidentals:[]}),function(e){for(var t=0;t<e.length;t++)"b"===e[t].note?e[t].note="B":"a"===e[t].note?e[t].note="A":"F"===e[t].note?e[t].note="f":"E"===e[t].note?e[t].note="e":"D"===e[t].note?e[t].note="d":"C"===e[t].note?e[t].note="c":"G"===e[t].note&&"sharp"===e[t].acc?e[t].note="g":"g"===e[t].note&&"flat"===e[t].acc&&(e[t].note="G")}(w.accs);for(var k=0;k<w.accs.length;k++){for(var x=!1,S=0;S<i.key.accidentals.length&&!x;S++)i.key.accidentals[S].note===w.accs[k].note&&(x=!0,i.key.accidentals[S].acc!==w.accs[k].acc&&(i.key.accidentals[S].acc=w.accs[k].acc,i.key.explicitAccidentals||(i.key.explicitAccidentals=[]),i.key.explicitAccidentals.push(w.accs[k])));if(!x&&(i.key.explicitAccidentals||(i.key.explicitAccidentals=[]),i.key.explicitAccidentals.push(w.accs[k]),i.key.accidentals.push(w.accs[k]),i.key.impliedNaturals))for(var _=0;_<i.key.impliedNaturals.length;_++)i.key.impliedNaturals[_].note===w.accs[k].note&&i.key.impliedNaturals.splice(_,1)}}for(;a.length>0;)switch(a[0].token){case"m":case"middle":if(a.shift(),0===a.length)return t("Expected = after middle",r,0),o;if("="!==(y=a.shift()).token){t("Expected = after middle",r,y.start);break}if(0===a.length)return t("Expected parameter after middle=",r,0),o;var T=e.getPitchFromTokens(a);T.warn&&t(T.warn,r,0),T.position&&(i.clef.verticalPos=T.position-6);break;case"transpose":if(a.shift(),0===a.length)return t("Expected = after transpose",r,0),o;if("="!==(y=a.shift()).token){t("Expected = after transpose",r,y.start);break}if(0===a.length)return t("Expected parameter after transpose=",r,0),o;if("number"!==a[0].type){t("Expected number after transpose",r,a[0].start);break}i.clef.transpose=a[0].intt,a.shift();break;case"stafflines":if(a.shift(),0===a.length)return t("Expected = after stafflines",r,0),o;if("="!==(y=a.shift()).token){t("Expected = after stafflines",r,y.start);break}if(0===a.length)return t("Expected parameter after stafflines=",r,0),o;if("number"!==a[0].type){t("Expected number after stafflines",r,a[0].start);break}i.clef.stafflines=a[0].intt,a.shift();break;case"staffscale":if(a.shift(),0===a.length)return t("Expected = after staffscale",r,0),o;if("="!==(y=a.shift()).token){t("Expected = after staffscale",r,y.start);break}if(0===a.length)return t("Expected parameter after staffscale=",r,0),o;if("number"!==a[0].type){t("Expected number after staffscale",r,a[0].start);break}i.clef.staffscale=a[0].floatt,a.shift();break;case"style":if(a.shift(),0===a.length)return t("Expected = after style",r,0),o;if("="!==(y=a.shift()).token){t("Expected = after style",r,y.start);break}if(0===a.length)return t("Expected parameter after style=",r,0),o;switch(a[0].token){case"normal":case"harmonic":case"rhythm":case"x":i.style=a[0].token,a.shift();break;default:t("error parsing style element: "+a[0].token,r,a[0].start)}break;case"clef":if(a.shift(),0===a.length)return t("Expected = after clef",r,0),o;if("="!==(y=a.shift()).token){t("Expected = after clef",r,y.start);break}if(0===a.length)return t("Expected parameter after clef=",r,0),o;case"treble":case"bass":case"alto":case"tenor":case"perc":var A=a.shift();switch(A.token){case"treble":case"tenor":case"alto":case"bass":case"perc":case"none":break;case"C":A.token="alto";break;case"F":A.token="bass";break;case"G":A.token="treble";break;case"c":A.token="alto";break;case"f":A.token="bass";break;case"g":A.token="treble";break;default:t("Expected clef name. Found "+A.token,r,A.start)}a.length>0&&"number"===a[0].type&&(A.token+=a[0].token,a.shift()),a.length>1&&("-"===a[0].token||"+"===a[0].token||"^"===a[0].token||"_"===a[0].token)&&"8"===a[1].token&&(A.token+=a[0].token+a[1].token,a.shift(),a.shift()),i.clef={type:A.token,verticalPos:l(A.token,0)},i.currentVoice&&void 0!==i.currentVoice.transpose&&(i.clef.transpose=i.currentVoice.transpose),o.foundClef=!0;break;default:t("Unknown parameter: "+a[0].token,r,a[0].start),a.shift()}return o};s.parseVoice=function(r,n,a){var s=e.getMeat(r,n,a),c=s.start,h=s.end,d=e.getToken(r,c,h);if(0!==d.length){var p=!1;void 0===i.voices[d]&&(i.voices[d]={},p=!0,i.score_is_present&&t("Can't have an unknown V: id when the %score directive is present",r,c)),c+=d.length,c+=e.eatWhiteSpace(r,c);for(var f={startStaff:p},m=function(i){var n=e.getVoiceToken(r,c,h);void 0!==n.warn?t("Expected value for "+i+" in voice: "+n.warn,r,c):0===n.token.length&&'"'!==r.charAt(c)?t("Expected value for "+i+" in voice",r,c):f[i]=n.token,c+=n.len},g=function(n,a,s){var o=e.getVoiceToken(r,c,h);void 0!==o.warn?t("Expected value for "+a+" in voice: "+o.warn,r,c):0===o.token.length&&'"'!==r.charAt(c)?t("Expected value for "+a+" in voice",r,c):("number"===s&&(o.token=parseFloat(o.token)),i.voices[n][a]=o.token),c+=o.len},v=function(i,n){var a=e.getVoiceToken(r,c,h);if(void 0!==a.warn)t("Expected value for "+i+" in voice: "+a.warn,r,c);else{if(0!==a.token.length||'"'===r.charAt(c))return"number"===n&&(a.token=parseFloat(a.token)),a.token;t("Expected value for "+i+" in voice",r,c)}c+=a.len},b=function(n,a){var s=e.getVoiceToken(r,c,h);if(void 0!==s.warn)t("Expected one of (_B, _E, _b, _e) for "+a+" in voice: "+s.warn,r,c);else if(0===s.token.length&&'"'!==r.charAt(c))t("Expected one of (_B, _E, _b, _e) for "+a+" in voice",r,c);else{var o={_B:2,_E:9,_b:-10,_e:-3}[s.token];o?i.voices[n][a]=o:t("Expected one of (_B, _E, _b, _e) for "+a+" in voice",r,c)}c+=s.len};c<h;){var y=e.getVoiceToken(r,c,h);if(c+=y.len,y.warn)t("Error parsing voice: "+y.warn,r,c);else{var w=null;switch(y.token){case"clef":case"cl":m("clef");var k=0;void 0!==f.clef&&(f.clef=f.clef.replace(/[',]/g,""),-1!==f.clef.indexOf("+16")&&(k+=14,f.clef=f.clef.replace("+16","")),f.verticalPos=l(f.clef,k));break;case"treble":case"bass":case"tenor":case"alto":case"perc":case"none":case"treble'":case"bass'":case"tenor'":case"alto'":case"none'":case"treble''":case"bass''":case"tenor''":case"alto''":case"none''":case"treble,":case"bass,":case"tenor,":case"alto,":case"none,":case"treble,,":case"bass,,":case"tenor,,":case"alto,,":case"none,,":f.clef=y.token.replace(/[',]/g,""),f.verticalPos=l(f.clef,0),i.voices[d].clef=y.token;break;case"staves":case"stave":case"stv":m("staves");break;case"brace":case"brc":m("brace");break;case"bracket":case"brk":m("bracket");break;case"name":case"nm":m("name");break;case"subname":case"sname":case"snm":m("subname");break;case"merge":f.startStaff=!1;break;case"stem":case"stems":void 0!==(w=e.getVoiceToken(r,c,h)).warn?t("Expected value for stems in voice: "+w.warn,r,c):"up"===w.token||"down"===w.token?i.voices[d].stem=w.token:t("Expected up or down for voice stem",r,c),c+=w.len;break;case"up":case"down":i.voices[d].stem=y.token;break;case"middle":case"m":m("verticalPos"),f.verticalPos=u(f.verticalPos).mid;break;case"gchords":case"gch":i.voices[d].suppressChords=!0,"0"===(w=e.getVoiceToken(r,c,h)).token&&(c+=w.len);break;case"space":case"spc":m("spacing");break;case"scale":g(d,"scale","number");break;case"score":b(d,"scoreTranspose");break;case"transpose":g(d,"transpose","number");break;case"stafflines":g(d,"stafflines","number");break;case"staffscale":g(d,"staffscale","number");break;case"octave":g(d,"octave","number");break;case"volume":g(d,"volume","number");break;case"cue":var x=v("cue","string");i.voices[d].scale="on"===x?.6:1;break;case"style":void 0!==(w=e.getVoiceToken(r,c,h)).warn?t("Expected value for style in voice: "+w.warn,r,c):"normal"===w.token||"harmonic"===w.token||"rhythm"===w.token||"x"===w.token?i.voices[d].style=w.token:t("Expected one of [normal, harmonic, rhythm, x] for voice style",r,c),c+=w.len}}c+=e.eatWhiteSpace(r,c)}if((f.startStaff||0===i.staves.length)&&(i.staves.push({index:i.staves.length,meter:i.origMeter}),i.score_is_present||(i.staves[i.staves.length-1].numVoices=0)),void 0===i.voices[d].staffNum){i.voices[d].staffNum=i.staves.length-1;var S=0;for(var _ in i.voices)i.voices.hasOwnProperty(_)&&i.voices[_].staffNum===i.voices[d].staffNum&&S++;i.voices[d].index=S-1}var T=i.staves[i.voices[d].staffNum];i.score_is_present||T.numVoices++,f.clef&&(T.clef={type:f.clef,verticalPos:f.verticalPos}),f.spacing&&(T.spacing_below_offset=f.spacing),f.verticalPos&&(T.verticalPos=f.verticalPos),f.name&&(T.name?T.name.push(f.name):T.name=[f.name]),f.subname&&(T.subname?T.subname.push(f.subname):T.subname=[f.subname]),function(e){i.currentVoice=i.voices[e],o.setCurrentVoice(i.currentVoice.staffNum,i.currentVoice.index)}(d)}else t("Expected a voice id",r,c)}}(),e.exports=s},function(e,t,i){var r=i(50),n=i(21),a=i(51),s=i(15),o=i(6),c=i(7),l=i(22),h=i(14),u=i(52),d=i(53),p=i(54),f="MIDI is not supported in this browser.",m="https://paulrosen.github.io/midi-js-soundfonts/FluidR3_GM/";e.exports=function(){var e=this;e.audioBufferPossible=void 0,e.directSource=[],e.startTimeSec=void 0,e.pausedTimeSec=void 0,e.audioBuffers=[],e.duration=void 0,e.isRunning=!1,e.init=function(t){t||(t={}),s(t.audioContext);var i=o().currentTime;if(e.debugCallback=t.debugCallback,e.debugCallback&&e.debugCallback("init called"),e.audioBufferPossible=e._deviceCapable(),!e.audioBufferPossible)return Promise.reject({status:"NotSupported",message:f});e.soundFontUrl=t.soundFontUrl?t.soundFontUrl:m,e.millisecondsPerMeasure=t.millisecondsPerMeasure?t.millisecondsPerMeasure:t.visualObj?t.visualObj.millisecondsPerMeasure():1e3;var r=t.options?t.options:{};if(e.meterSize=1,t.visualObj){var n=d(t.visualObj,r);e.flattened=p(n,r),e.meterSize=t.visualObj.getMeterFraction().num/t.visualObj.getMeterFraction().den}else{if(!t.sequence)return Promise.reject(new Error("Must pass in either a visualObj or a sequence"));e.flattened=t.sequence}e.sequenceCallback=r.sequenceCallback;var a={},c=h[0];e.flattened.tracks.forEach((function(e){e.forEach((function(e){"program"===e.cmd&&h[e.instrument]&&(c=h[e.instrument]);var t=e.pitch+60;void 0!==e.pitch&&(l[t]?(a[c]||(a[c]={}),a[c][l[t]]=!0):console.log("Can't find note: ",t))}))})),e.debugCallback&&e.debugCallback("note gathering time = "+Math.floor(1e3*(o().currentTime-i))+"ms"),i=o().currentTime;var u=[];Object.keys(a).forEach((function(e){Object.keys(a[e]).forEach((function(t){u.push({instrument:e,note:t})}))}));for(var g=[],v=0;v<u.length;v+=256)g.push(u.slice(v,v+256));return new Promise((function(t,r){var n=[],a=0;!function s(){a<g.length?e._loadBatch(g[a],e.soundFontUrl,i).then((function(e){i=o().currentTime,n.push(e),a++,s()}),r):t(n)}()}))},e._loadBatch=function(t,i,n){var a=[];return t.forEach((function(e){a.push(r(i,e.instrument,e.note,o()))})),Promise.all(a).then((function(t){return e.debugCallback&&e.debugCallback("mp3 load time = "+Math.floor(1e3*(o().currentTime-n))+"ms"),Promise.resolve(t)}))},e.prime=function(){return e.isRunning=!1,e.audioBufferPossible?(e.debugCallback&&e.debugCallback("prime called"),new Promise((function(t){var i=o().currentTime,r=e.millisecondsPerMeasure/1e3/e.meterSize;e.duration=e.flattened.totalDuration*r;var s=Math.floor(o().sampleRate*e.duration);e.stop();var c=a(e.flattened);e.sequenceCallback&&e.sequenceCallback(c),e.audioBuffers=[],c.forEach((function(t){var i=o().createBuffer(1,s,o().sampleRate),a=i.getChannelData(0);t.forEach((function(t){e._placeNote(a,t,r,n)})),e.audioBuffers.push(i)})),e.debugCallback&&(e.debugCallback("sampleRate = "+o().sampleRate),e.debugCallback("totalSamples = "+s),e.debugCallback("creationTime = "+Math.floor(1e3*(o().currentTime-i))+"ms")),t({status:"ok",seconds:0})}))):Promise.reject(new Error(f))},e.start=function(){if(e.pausedTimeSec)e.resume();else{if(!e.audioBufferPossible)throw new Error(f);e.debugCallback&&e.debugCallback("start called"),e._kickOffSound(0),e.startTimeSec=o().currentTime,e.pausedTimeSec=void 0,e.debugCallback&&e.debugCallback("MIDI STARTED",e.startTimeSec)}},e.pause=function(){if(!e.audioBufferPossible)throw new Error(f);e.debugCallback&&e.debugCallback("pause called"),e.pausedTimeSec||(e.stop(),e.pausedTimeSec=o().currentTime)},e.resume=function(){if(!e.audioBufferPossible)throw new Error(f);e.debugCallback&&e.debugCallback("resume called");var t=e.pausedTimeSec-e.startTimeSec;e.startTimeSec=o().currentTime-t,e.pausedTimeSec=void 0,e._kickOffSound(t)},e.seek=function(t){var i=e.duration*t;if(!e.audioBufferPossible)throw new Error(f);e.debugCallback&&e.debugCallback("seek called sec="+i),e.isRunning&&(e.stop(),e._kickOffSound(i));var r=e.pausedTimeSec?e.pausedTimeSec-e.startTimeSec:void 0;e.startTimeSec=o().currentTime-i,e.pausedTimeSec&&(e.pausedTimeSec=e.startTimeSec+r)},e.stop=function(){e.isRunning=!1,e.pausedTimeSec=void 0,e.directSource.forEach((function(e){try{e.stop()}catch(e){console.log("direct source didn't stop:",e)}})),e.directSource=[]},e.download=function(){return u(e)},e._deviceCapable=function(){return!!c()||(console.warn(f),e.debugCallback&&e.debugCallback(f),!1)},e._kickOffSound=function(t){e.isRunning=!0,e.directSource=[],e.audioBuffers.forEach((function(t,i){e.directSource[i]=o().createBufferSource(),e.directSource[i].buffer=t,e.directSource[i].connect(o().destination)})),e.directSource.forEach((function(e){e.start(0,t)}))},e._placeNote=function(e,t,i,r){var n=Math.floor(t.start*o().sampleRate*i),a=(t.end-t.start)*i,s=l[t.pitch+60];if(s)for(var c=r[t.instrument][s].getChannelData(0),h=Math.min(c.length,Math.floor(a*o().sampleRate)),u=0;u<h;u++){var d=c[u]*t.volume/128;e[n+u]?e[n+u]=.75*(e[n+u]+d):e[n+u]=d}}}},function(e,t){e.exports=["acoustic_grand_piano","bright_acoustic_piano","electric_grand_piano","honkytonk_piano","electric_piano_1","electric_piano_2","harpsichord","clavinet","celesta","glockenspiel","music_box","vibraphone","marimba","xylophone","tubular_bells","dulcimer","drawbar_organ","percussive_organ","rock_organ","church_organ","reed_organ","accordion","harmonica","tango_accordion","acoustic_guitar_nylon","acoustic_guitar_steel","electric_guitar_jazz","electric_guitar_clean","electric_guitar_muted","overdriven_guitar","distortion_guitar","guitar_harmonics","acoustic_bass","electric_bass_finger","electric_bass_pick","fretless_bass","slap_bass_1","slap_bass_2","synth_bass_1","synth_bass_2","violin","viola","cello","contrabass","tremolo_strings","pizzicato_strings","orchestral_harp","timpani","string_ensemble_1","string_ensemble_2","synth_strings_1","synth_strings_2","choir_aahs","voice_oohs","synth_choir","orchestra_hit","trumpet","trombone","tuba","muted_trumpet","french_horn","brass_section","synth_brass_1","synth_brass_2","soprano_sax","alto_sax","tenor_sax","baritone_sax","oboe","english_horn","bassoon","clarinet","piccolo","flute","recorder","pan_flute","blown_bottle","shakuhachi","whistle","ocarina","lead_1_square","lead_2_sawtooth","lead_3_calliope","lead_4_chiff","lead_5_charang","lead_6_voice","lead_7_fifths","lead_8_bass__lead","pad_1_new_age","pad_2_warm","pad_3_polysynth","pad_4_choir","pad_5_bowed","pad_6_metallic","pad_7_halo","pad_8_sweep","fx_1_rain","fx_2_soundtrack","fx_3_crystal","fx_4_atmosphere","fx_5_brightness","fx_6_goblins","fx_7_echoes","fx_8_scifi","sitar","banjo","shamisen","koto","kalimba","bagpipe","fiddle","shanai","tinkle_bell","agogo","steel_drums","woodblock","taiko_drum","melodic_tom","synth_drum","reverse_cymbal","guitar_fret_noise","breath_noise","seashore","bird_tweet","telephone_ring","helicopter","applause","gunshot","percussion"]},function(e,t){e.exports=function(e){return window.abcjsAudioContext||(e||(e=new(e=window.AudioContext||window.webkitAudioContext||navigator.mozAudioContext||navigator.msAudioContext)),window.abcjsAudioContext=e),"suspended"!==window.abcjsAudioContext.state}},function(e,t){var i={},r={C:0,"C#":1,Db:1,D:2,"D#":3,Eb:3,E:4,F:5,"F#":6,Gb:6,G:7,"G#":8,Ab:8,A:9,"A#":10,Bb:10,B:11},n=["C","Db","D","Eb","E","F","F#","G","Ab","A","Bb","B"],a=["C","C#","D","D#","E","F","F#","G","G#","A","Bb","B"];i.keySignature=function(e,t,i,s,o,c){c||(c=0),e.localTransposeVerticalMovement=0,e.localTransposePreferFlats=!1;var l=t[i];if(!l)return e.key;if(e.localTranspose=(e.globalTranspose?e.globalTranspose:0)+c,!e.localTranspose)return{accidentals:l,root:s,acc:o};if(e.globalTransposeOrigKeySig=l,e.localTranspose%12==0)return e.localTransposeVerticalMovement=e.localTranspose/12*7,{accidentals:l,root:s,acc:o};var h=i[0];"b"===i[1]||"#"===i[1]?(h+=i[1],i=i.substr(2)):i=i.substr(1);for(var u=r[h]+e.localTranspose;u<0;)u+=12;u>11&&(u%=12);var d="m"===i[0]?a[u]:n[u],p=d+i,f=t[p];f.length>0&&"flat"===f[0].acc&&(e.localTransposePreferFlats=!0);var m=p.charCodeAt(0)-h.charCodeAt(0);return e.localTranspose>0?m<0?m+=7:0===m&&("#"!==h[1]&&"b"!==p[1]||(m+=7)):e.localTranspose<0&&(m>0?m-=7:0===m&&("b"!==h[1]&&"#"!==p[1]||(m-=7))),e.localTranspose>0?e.localTransposeVerticalMovement=m+7*Math.floor(e.localTranspose/12):e.localTransposeVerticalMovement=m+7*Math.ceil(e.localTranspose/12),{accidentals:f,root:d[0],acc:d.length>1?d[1]:""}};var s=["C","C♯","D","D♯","E","F","F♯","G","G♯","A","A♯","B"],o=["C","D♭","D","E♭","E","F","G♭","G","A♭","A","B♭","B"],c=["C","C#","D","D#","E","F","F#","G","G#","A","A#","B"],l=["C","Db","D","Eb","E","F","Gb","G","Ab","A","Bb","B"];i.chordName=function(e,t){if(e.localTranspose&&e.localTranspose%12!=0){for(var i=e.localTranspose;i<0;)i+=12;i>11&&(i%=12);for(var r=(t=(t=(t=(t=(t=(t=(t=(t=e.freegchord?(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=t.replace(/Cb/g,"`~11`")).replace(/Db/g,"`~1`")).replace(/Eb/g,"`~3`")).replace(/Fb/g,"`~4`")).replace(/Gb/g,"`~6`")).replace(/Ab/g,"`~8`")).replace(/Bb/g,"`~10`")).replace(/C#/g,"`~1`")).replace(/D#/g,"`~3`")).replace(/E#/g,"`~5`")).replace(/F#/g,"`~6`")).replace(/G#/g,"`~8`")).replace(/A#/g,"`~10`")).replace(/B#/g,"`~0`"):(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=t.replace(/C♭/g,"`~11`")).replace(/D♭/g,"`~1`")).replace(/E♭/g,"`~3`")).replace(/F♭/g,"`~4`")).replace(/G♭/g,"`~6`")).replace(/A♭/g,"`~8`")).replace(/B♭/g,"`~10`")).replace(/C♯/g,"`~1`")).replace(/D♯/g,"`~3`")).replace(/E♯/g,"`~5`")).replace(/F♯/g,"`~6`")).replace(/G♯/g,"`~8`")).replace(/A♯/g,"`~10`")).replace(/B♯/g,"`~0`")).replace(/C/g,"`~0`")).replace(/D/g,"`~2`")).replace(/E/g,"`~4`")).replace(/F/g,"`~5`")).replace(/G/g,"`~7`")).replace(/A/g,"`~9`")).replace(/B/g,"`~11`")).split("`"),n=0;n<r.length;n++)if("~"===r[n][0]){var a=parseInt(r[n].substr(1),10);(a+=i)>11&&(a-=12),e.freegchord?r[n]=e.localTransposePreferFlats?l[a]:c[a]:r[n]=e.localTransposePreferFlats?o[a]:s[a]}t=r.join("")}return t};var h=["c","d","e","f","g","a","b"];var u={dblflat:-2,flat:-1,natural:0,sharp:1,dblsharp:2},d={"-2":"dblflat","-1":"flat",0:"natural",1:"sharp",2:"dblsharp"};i.note=function(e,t){if(e.localTranspose){var i=t.pitch;if(t.pitch=t.pitch+e.localTransposeVerticalMovement,t.accidental){var r=function(e,t,i,r,n){for(var a=h[(e+49)%7],s=0,o=0;o<r.length;o++)r[o].note.toLowerCase()===a&&(s=u[r[o].acc]);for(var c=u[i]-s,l=h[(t+49)%7],d=0,p=0;p<n.accidentals.length;p++)n.accidentals[p].note.toLowerCase()===l&&(d=u[n.accidentals[p].acc]);var f=c+d;return f<-2&&(t--,f+="c"===l||"f"===l?1:2),f>2&&(t++,f-="b"===l||"e"===l?1:2),[t,f]}(i,t.pitch,t.accidental,e.globalTransposeOrigKeySig,e.targetKey);t.pitch=r[0],t.accidental=d[r[1]]}}},e.exports=i},function(e,t){function i(e){for(var t=[],i=0;i<e.length;i++)t.push(e[i]);return t}function r(e,t,r,n,a,s,o,c,l,h,u){for(var d=h;d<e.length;d++){var p=e[d];r+=p,n+=p;var f=Math.abs(r-t[c]);if(Math.abs(f-s)<t[0]/10)if(f<s){var m=i(a),g=i(l);g.push(d-1),m.push(n-p),u.push({accumulator:r,lineAccumulator:p,lineWidths:m,lastVariance:Math.abs(r-t[c+1]),highestVariance:Math.max(o,s),currLine:c+1,lineBreaks:g,startIndex:d+1})}else f>s&&d<e.length-1&&(m=i(a),g=i(l),u.push({accumulator:r,lineAccumulator:n,lineWidths:m,lastVariance:f,highestVariance:Math.max(o,f),currLine:c,lineBreaks:g,startIndex:d+1}));f>s?(l.push(d-1),c++,o=Math.max(o,s),s=Math.abs(r-t[c]),a.push(n-p),n=p):s=f}a.push(n)}function n(e,t,i,r,n){var a=new n,s={lineBreaks:e,staffwidth:t};for(var o in r)r.hasOwnProperty(o)&&"wrap"!==o&&"staffwidth"!==o&&(s[o]=r[o]);return a.parse(i,s),{tune:a.getTune(),revisedParams:s}}e.exports={wrapLines:function(e,t){if(t&&0!==e.lines.length){for(var i=[],r=[],n=[],a=[],s=[],o="",c={},l=0;l<e.lines.length;l++){var h=e.lines[l];if(h.staff)for(var u=h.staff,d=0;d<u.length;d++){void 0===r[d]&&(r[d]=[],n[d]=[],a[d]=[],s[d]=[]);for(var p=u[d],f=p.voices,m=0;m<f.length;m++){void 0===r[d][m]&&(r[d][m]=!0,n[d][m]=0,a[d][m]=0,s[d][m]=0);for(var g=f[m],v=0;v<g.length;v++){if(r[d][m]){if(i[n[d][m]]||(i[n[d][m]]={staff:[]}),!i[n[d][m]].staff[d])for(var b in i[n[d][m]].staff[d]={voices:[]},p)p.hasOwnProperty(b)&&("meter"===b?1!==i.length&&o===JSON.stringify(p[b])||(o=JSON.stringify(p[b]),i[n[d][m]].staff[d][b]=p[b]):"voices"!==b&&(i[n[d][m]].staff[d][b]=p[b]));s[d][m]&&(i[n[d][m]].staff[d].barNumber=s[d][m]),r[d][m]=!1}var y=g[v];if(!i[n[d][m]].staff[d].voices[m])for(var w in i[n[d][m]].staff[d].voices[m]=[],c)c.hasOwnProperty(w)&&i[n[d][m]].staff[d].voices[m].push(c[w]);i[n[d][m]].staff[d].voices[m].push(y),"stem"===y.el_type&&(c[y.el_type]=y),"bar"===y.el_type&&(a[d][m]++,t[a[d][m]]&&(r[d][m]=!0,n[d][m]++,s[d][m]=y.barNumber,delete y.barNumber))}}}else i.push(h),n++}e.lines=i}},calcLineWraps:function(e,t,i,a,s,o){if(a.staffwidth<t.left)return{explanation:"Staffwidth is narrower than the margin",tune:e,revisedParams:a};var c=a.scale?Math.max(a.scale,.1):1,l=a.wrap.minSpacing?Math.max(parseFloat(a.wrap.minSpacing),1):1,h=a.wrap.minSpacingLimit?Math.max(parseFloat(a.wrap.minSpacingLimit),1):l-.1,u=a.wrap.maxSpacing?Math.max(parseFloat(a.wrap.maxSpacing),1):void 0;a.wrap.lastLineLimit&&!u&&(u=Math.max(parseFloat(a.wrap.lastLineLimit),1)),a.wrap.targetHeight&&Math.max(parseInt(a.wrap.targetHeight,10),100);var d=a.wrap.preferredMeasuresPerLine?Math.max(parseInt(a.wrap.preferredMeasuresPerLine,10),1):void 0,p=(a.staffwidth-t.left)/l/c,f=(a.staffwidth-t.left)/u/c,m=(a.staffwidth-t.left)/h/c,g={widths:t,lineBreakPoint:p,minLineSize:f,attempts:[],staffWidth:a.staffwidth,minWidth:Math.round(m)},v=null;if(d){var b=function(e,t,i){for(var r=[],n=[],a=0,s=!1,o=0;o<e.length;o++)(a+=e[o])>t&&(s=!0),o%i==i-1&&(o!==e.length-1&&r.push(o),n.push(Math.round(a)),a=0);return{failed:s,totals:n,lineBreaks:r}}(t.measureWidths,p,d);g.attempts.push({type:"Fixed Measures Per Line",preferredMeasuresPerLine:d,lineBreaks:b.lineBreaks,failed:b.failed,totals:b.totals}),b.failed||(v=b.lineBreaks)}if(!v){var y=function(e,t){for(var i=[],r=[],n=0,a=0;a<e.length;a++){var s=e[a],o=n+s;if(o<t)n=o;else t-n<o-t&&n>0?(i.push(a-1),r.push(Math.round(n-s)),n=s):a<e.length-1&&(i.push(a),r.push(Math.round(n)),n=0)}return r.push(Math.round(n)),{lineBreaks:i,totals:r}}(t.measureWidths,p);g.attempts.push({type:"Free Form",lineBreaks:y.lineBreaks,totals:y.totals}),v=y.lineBreaks,y=function(e,t,i,n){for(var a=Math.ceil(e.total/t)+1,s=Math.floor(e.total/a),o=[],c=0;c<a;c++)o.push(s*(c+1));var l=[];l.push({accumulator:0,lineAccumulator:0,lineWidths:[],lastVariance:999999,highestVariance:0,currLine:0,lineBreaks:[],startIndex:0});for(var h=0;h<l.length;)r(e.measureWidths,o,l[h].accumulator,l[h].lineAccumulator,l[h].lineWidths,l[h].lastVariance,l[h].highestVariance,l[h].currLine,l[h].lineBreaks,l[h].startIndex,l),h++;for(c=0;c<l.length;c++){var u=l[c];u.variances=[],u.aveVariance=0;for(var d=0;d<u.lineWidths.length;d++){var p=u.lineWidths[d];u.variances.push(p-o[0]),u.aveVariance+=Math.abs(p-o[0])}u.aveVariance=u.aveVariance/u.lineWidths.length,n.attempts.push({type:"optimizeLineWidths",lineBreaks:u.lineBreaks,variances:u.variances,aveVariance:u.aveVariance,widths:e.measureWidths})}var f=9999999,m=-1;for(c=0;c<l.length;c++)(u=l[c]).aveVariance<f&&(f=u.aveVariance,m=c);return{failed:!1,lineBreaks:l[m].lineBreaks,variance:l[m].highestVariance}}(t,p,0,g),g.attempts.push({type:"Optimize",failed:y.failed,reason:y.reason,lineBreaks:y.lineBreaks,totals:y.totals}),y.failed||(v=y.lineBreaks)}var w=a.staffwidth,k=n(v,w,i,a,s),x=o.getMeasureWidths(k.tune),S=!0;return g.attempts.push({type:"heightCheck",height:x.height}),0===v.length&&f>t.total&&(w=t.total*u*c+t.left,g.attempts.push({type:"too sparse",newWidth:Math.round(w)}),S=!1),S||(k=n(v,w,i,a,s)),k.explanation=g,k}}},function(e,t,i){var r=i(0),n=i(12),a=i(1);e.exports=function(){this.getBeatLength=function(){for(var e=0;e<this.lines.length;e++)if(this.lines[e].staff)for(var t=0;t<this.lines[e].staff.length;t++)if(this.lines[e].staff[t].meter){var i=this.lines[e].staff[t].meter;if("specified"===i.type){if(i.value.length>0){var r=parseInt(i.value[0].num,10),n=parseInt(i.value[0].den,10);return 3===r&&8===n?3/8:6===r&&8===n?3/8:6===r&&4===n?.75:9===r&&8===n?3/8:12===r&&8===n?3/8:1/n}return.25}return"cut_time"===i.type?.5:.25}return.25},this.getPickupLength=function(){for(var e=0,t=this.getBarLength(),i=0;i<this.lines.length;i++)if(this.lines[i].staff)for(var r=0;r<this.lines[i].staff.length;r++)for(var n=0;n<this.lines[i].staff[r].voices.length;n++)for(var a=this.lines[i].staff[r].voices[n],s=1,o=0;o<a.length;o++){var c=a[o].rest&&"spacer"===a[o].rest.type;if(a[o].startTriplet&&(s=a[o].tripletMultiplier),a[o].duration&&!c&&(e+=a[o].duration*s),a[o].endTriplet&&(s=1),e>=t&&(e-=t),"bar"===a[o].el_type)return e}return e},this.getBarLength=function(){var e=this.getMeterFraction();return e.num/e.den},this.millisecondsPerMeasure=function(e){var t;if(e)t=e;else{var i=this.metaText?this.metaText.tempo:null;t=this.getBpm(i)}return t<=0&&(t=1),6e4*(this.getBeatsPerMeasure()/t)},this.getBeatsPerMeasure=function(){var e,t=this.getMeterFraction();return(e=8===t.den?t.num/3:t.num)<=0&&(e=1),e},this.reset=function(){this.version="1.0.1",this.media="screen",this.metaText={},this.formatting={},this.lines=[],this.staffNum=0,this.voiceNum=0,this.lineNum=0},this.resolveOverlays=function(){for(var e=!1,t=0;t<this.lines.length;t++){var i=this.lines[t];if(i.staff)for(var n=0;n<i.staff.length;n++){for(var a=i.staff[n],s=[],o=0;o<a.voices.length;o++){var c=a.voices[o];s.push({hasOverlay:!1,voice:[],snip:[]});for(var l=0,h=!1,u=-1,d=0;d<c.length;d++){var p=c[d];"overlay"!==p.el_type||h?"bar"===p.el_type?(h?(h=!1,s[o].snip.push({start:u,len:d-u}),s[o].voice.push(p)):(l>0&&s[o].voice.push({el_type:"note",duration:l,rest:{type:"invisible"},startChar:p.startChar,endChar:p.endChar}),s[o].voice.push(p)),l=0):"note"===p.el_type?h?s[o].voice.push(p):l+=p.duration:"scale"!==p.el_type&&"stem"!==p.el_type&&"overlay"!==p.el_type&&"style"!==p.el_type&&"transpose"!==p.el_type||s[o].voice.push(p):(e=!0,h=!0,u=d,s[o].hasOverlay=!0)}s[o].hasOverlay&&0===s[o].snip.length&&s[o].snip.push({start:u,len:c.length-u})}for(o=0;o<s.length;o++){var f=s[o];if(f.hasOverlay){a.voices.push(f.voice);for(var m=f.snip.length-1;m>=0;m--){var g=f.snip[m];a.voices[o].splice(g.start,g.len)}for(m=0;m<a.voices[a.voices.length-1].length;m++){a.voices[a.voices.length-1][m]=r.clone(a.voices[a.voices.length-1][m]);var v=a.voices[a.voices.length-1][m];"bar"===v.el_type&&v.startEnding&&delete v.startEnding,"bar"===v.el_type&&v.endEnding&&delete v.endEnding}}}}}return e},this.cleanUp=function(e,t,i,a,s){this.closeLine(),this.metaText.tempo&&this.metaText.tempo.bpm&&!this.metaText.tempo.duration&&(this.metaText.tempo.duration=[this.getBeatLength()]);var o,c,l,h=!1;for(o=0;o<this.lines.length;o++)if(void 0!==this.lines[o].staff){var u=!1;for(c=0;c<this.lines[o].staff.length;c++)if(void 0===this.lines[o].staff[c])h=!0,this.lines[o].staff[c]=null;else for(l=0;l<this.lines[o].staff[c].voices.length;l++)void 0===this.lines[o].staff[c].voices[l]?this.lines[o].staff[c].voices[l]=[]:this.containsNotes(this.lines[o].staff[c].voices[l])&&(u=!0);u||(this.lines[o]=null,h=!0)}if(h&&(this.lines=r.compact(this.lines),r.each(this.lines,(function(e){e.staff&&(e.staff=r.compact(e.staff))}))),i)for(;m(this.lines,i););if(a){for(h=!1,o=0;o<this.lines.length;o++)if(void 0!==this.lines[o].staff)for(c=0;c<this.lines[o].staff.length;c++){var d=!1;for(l=0;l<this.lines[o].staff[c].voices.length;l++)this.containsNotesStrict(this.lines[o].staff[c].voices[l])&&(d=!0);d||(h=!0,this.lines[o].staff[c]=null)}h&&r.each(this.lines,(function(e){e.staff&&(e.staff=r.compact(e.staff))}))}for(function(e){for(var t=!0,i=0;i<e.length;i++){var r=e[i];if(r.staff){for(var n=0;n<r.staff.length;n++){var a=r.staff[n];if(a.title){for(var s=!1,o=0;o<a.title.length;o++)a.title[o]?(a.title[o]=t?a.title[o].name:a.title[o].subname,a.title[o]?s=!0:a.title[o]=""):a.title[o]="";s||delete a.title}}t=!1}}}(this.lines),o=0;o<this.lines.length;o++)if(this.lines[o].staff)for(c=0;c<this.lines[o].staff.length;c++)delete this.lines[o].staff[c].workingClef;for(;this.resolveOverlays(););function p(e){for(var t,i=function(e,i,n){if(void 0===s[n]){for(t=0;t<s.length;t++)if(void 0!==s[t]){n=t;break}if(void 0===s[n]){var a=100*n+1;r.each(e.endSlur,(function(e){a===e&&--a})),s[n]=[a]}}for(var o,c=0;c<i;c++)o=s[n].pop(),e.endSlur.push(o);return 0===s[n].length&&delete s[n],o},n=function(e,t,i,n){e.startSlur=[],void 0===s[i]&&(s[i]=[]);for(var a=100*i+1,o=0;o<t;o++)n&&(r.each(n,(function(e){a===e&&++a})),r.each(n,(function(e){a===e&&++a})),r.each(n,(function(e){a===e&&++a}))),r.each(s[i],(function(e){a===e&&++a})),r.each(s[i],(function(e){a===e&&++a})),s[i].push(a),e.startSlur.push({label:a}),a++},a=0;a<e.length;a++){var o=e[a];if("note"===o.el_type){if(o.gracenotes)for(var c=0;c<o.gracenotes.length;c++){if(o.gracenotes[c].endSlur){var l=o.gracenotes[c].endSlur;o.gracenotes[c].endSlur=[];for(var h=0;h<l;h++)i(o.gracenotes[c],1,20)}o.gracenotes[c].startSlur&&(t=o.gracenotes[c].startSlur,n(o.gracenotes[c],t,20))}if(o.endSlur&&(t=o.endSlur,o.endSlur=[],i(o,t,0)),o.startSlur&&n(o,t=o.startSlur,0),o.pitches){for(var u=[],d=0;d<o.pitches.length;d++)if(o.pitches[d].endSlur){var p=o.pitches[d].endSlur;o.pitches[d].endSlur=[];for(var f=0;f<p;f++){var m=i(o.pitches[d],1,d+1);u.push(m)}}for(d=0;d<o.pitches.length;d++)o.pitches[d].startSlur&&(t=o.pitches[d].startSlur,n(o.pitches[d],t,d+1,u));o.gracenotes&&o.pitches[0].endSlur&&100===o.pitches[0].endSlur[0]&&o.pitches[0].startSlur&&(o.gracenotes[0].endSlur?o.gracenotes[0].endSlur.push(o.pitches[0].startSlur[0].label):o.gracenotes[0].endSlur=[o.pitches[0].startSlur[0].label],1===o.pitches[0].endSlur.length?delete o.pitches[0].endSlur:100===o.pitches[0].endSlur[0]?o.pitches[0].endSlur.shift():100===o.pitches[0].endSlur[o.pitches[0].endSlur.length-1]&&o.pitches[0].endSlur.pop(),1===s[1].length?delete s[1]:s[1].pop())}}}}function f(e){n.fixClef(e)}function m(e,t){for(o=0;o<e.length;o++)if(void 0!==e[o].staff)for(c=0;c<e[o].staff.length;c++){var i=[];for(l=0;l<e[o].staff[c].voices.length;l++)for(var n=e[o].staff[c].voices[l],a=0,s=0;s<n.length;s++)if("bar"===n[s].el_type){if(++a>=t&&s<n.length-1){var h=g(e,o);if(!h){var u=JSON.parse(JSON.stringify(e[o]));e.push(r.clone(u)),h=e[e.length-1];for(var d=0;d<h.staff.length;d++)for(var p=0;p<h.staff[d].voices.length;p++)h.staff[d].voices[p]=[]}var f=s+1,m=e[o].staff[c].voices[l].slice(f);return e[o].staff[c].voices[l]=e[o].staff[c].voices[l].slice(0,f),h.staff[c].voices[l]=i.concat(m.concat(h.staff[c].voices[l])),!0}}else n[s].duration||i.push(n[s])}return!1}function g(e,t){for(t++;e.length>t;){if(e[t].staff)return e[t];t++}return null}for(this.lineNum=0;this.lineNum<this.lines.length;this.lineNum++){var v=this.lines[this.lineNum].staff;if(v)for(this.staffNum=0;this.staffNum<v.length;this.staffNum++)for(v[this.staffNum].clef&&f(v[this.staffNum].clef),this.voiceNum=0;this.voiceNum<v[this.staffNum].voices.length;this.voiceNum++){var b=v[this.staffNum].voices[this.voiceNum];p(b);for(var y=0;y<b.length;y++)"clef"===b[y].el_type&&f(b[y]);if(b.length>0&&b[b.length-1].barNumber){var w=g(this.lines,this.lineNum);w&&(w.staff[0].barNumber=b[b.length-1].barNumber),delete b[b.length-1].barNumber}}}return this.formatting.pagewidth||(this.formatting.pagewidth=e),this.formatting.pageheight||(this.formatting.pageheight=t),delete this.staffNum,delete this.voiceNum,delete this.lineNum,delete this.potentialStartBeam,delete this.potentialEndBeam,delete this.vskipPending,s},this.reset(),this.getLastNote=function(){if(this.lines[this.lineNum]&&this.lines[this.lineNum].staff&&this.lines[this.lineNum].staff[this.staffNum]&&this.lines[this.lineNum].staff[this.staffNum].voices[this.voiceNum])for(var e=this.lines[this.lineNum].staff[this.staffNum].voices[this.voiceNum].length-1;e>=0;e--){var t=this.lines[this.lineNum].staff[this.staffNum].voices[this.voiceNum][e];if("note"===t.el_type)return t}return null},this.addTieToLastNote=function(){var e=this.getLastNote();return!!(e&&e.pitches&&e.pitches.length>0)&&(e.pitches[0].startTie={},!0)},this.getDuration=function(e){return e.duration?e.duration:0},this.closeLine=function(){this.potentialStartBeam&&this.potentialEndBeam&&(this.potentialStartBeam.startBeam=!0,this.potentialEndBeam.endBeam=!0),delete this.potentialStartBeam,delete this.potentialEndBeam},this.appendElement=function(e,t,i,n){var a=this;n.el_type=e,null!==t&&(n.startChar=t),null!==i&&(n.endChar=i);var s=function(){void 0!==a.potentialStartBeam&&void 0!==a.potentialEndBeam&&(a.potentialStartBeam.startBeam=!0,a.potentialEndBeam.endBeam=!0),delete a.potentialStartBeam,delete a.potentialEndBeam};"note"===e?a.getDuration(n)>=.25?s():n.force_end_beam_last&&void 0!==a.potentialStartBeam?s():n.end_beam&&void 0!==a.potentialStartBeam?void 0===n.rest?(a.potentialStartBeam.startBeam=!0,n.endBeam=!0,delete a.potentialStartBeam,delete a.potentialEndBeam):s():void 0===n.rest&&(void 0===a.potentialStartBeam?n.end_beam||(a.potentialStartBeam=n,delete a.potentialEndBeam):a.potentialEndBeam=n):s();delete n.end_beam,delete n.force_end_beam_last,function(e){var t=a.lines[a.lineNum].staff[a.staffNum];if(t){if(void 0!==e.pitches){var i=t.workingClef.verticalPos;r.each(e.pitches,(function(e){e.verticalPos=e.pitch-i}))}if(void 0!==e.gracenotes){var n=t.workingClef.verticalPos;r.each(e.gracenotes,(function(e){e.verticalPos=e.pitch-n}))}t.voices[a.voiceNum].push(e)}}(n)},this.appendStartingElement=function(e,t,i,n){var a;this.closeLine(),"key"===e&&(a=n.impliedNaturals,delete n.impliedNaturals,delete n.explicitAccidentals);var s=r.clone(n);if(this.lines[this.lineNum].staff){this.lines[this.lineNum].staff.length<=this.staffNum&&(this.lines[this.lineNum].staff[this.staffNum]={},this.lines[this.lineNum].staff[this.staffNum].clef=r.clone(this.lines[this.lineNum].staff[0].clef),this.lines[this.lineNum].staff[this.staffNum].key=r.clone(this.lines[this.lineNum].staff[0].key),this.lines[this.lineNum].staff[0].meter&&(this.lines[this.lineNum].staff[this.staffNum].meter=r.clone(this.lines[this.lineNum].staff[0].meter)),this.lines[this.lineNum].staff[this.staffNum].workingClef=r.clone(this.lines[this.lineNum].staff[0].workingClef),this.lines[this.lineNum].staff[this.staffNum].voices=[[]]),"clef"===e&&(this.lines[this.lineNum].staff[this.staffNum].workingClef=s);for(var o=this.lines[this.lineNum].staff[this.staffNum].voices[this.voiceNum],c=0;c<o.length;c++){if("note"===o[c].el_type||"bar"===o[c].el_type)return s.el_type=e,s.startChar=t,s.endChar=i,a&&(s.accidentals=a.concat(s.accidentals)),void o.push(s);if(o[c].el_type===e)return s.el_type=e,s.startChar=t,s.endChar=i,a&&(s.accidentals=a.concat(s.accidentals)),void(o[c]=s)}this.lines[this.lineNum].staff[this.staffNum][e]=n}},this.getNumLines=function(){return this.lines.length},this.pushLine=function(e){this.vskipPending&&(e.vskip=this.vskipPending,delete this.vskipPending),this.lines.push(e)},this.addSubtitle=function(e){this.pushLine({subtitle:e})},this.addSpacing=function(e){this.vskipPending=e},this.addNewPage=function(e){this.pushLine({newpage:e})},this.addSeparator=function(e,t,i){this.pushLine({separator:{spaceAbove:e,spaceBelow:t,lineLength:i}})},this.addText=function(e){this.pushLine({text:e})},this.addCentered=function(e){this.pushLine({text:[{text:e,center:!0}]})},this.containsNotes=function(e){for(var t=0;t<e.length;t++)if("note"===e[t].el_type||"bar"===e[t].el_type)return!0;return!1},this.containsNotesStrict=function(e){for(var t=0;t<e.length;t++)if("note"===e[t].el_type&&void 0===e[t].rest)return!0;return!1},this.changeVoiceScale=function(e){this.appendElement("scale",null,null,{size:e})},this.startNewLine=function(e){var t=this;this.closeLine();var i=function(e){var i=t.lines[t.lineNum].staff[t.staffNum];if(i.voices[t.voiceNum]=[],i.title||(i.title=[]),i.title[t.voiceNum]={name:e.name,subname:e.subname},e.style&&t.appendElement("style",null,null,{head:e.style}),e.stem)t.appendElement("stem",null,null,{direction:e.stem});else if(t.voiceNum>0){if(void 0!==i.voices[0]){for(var r=!1,n=0;n<i.voices[0].length;n++)"stem"===i.voices[0].el_type&&(r=!0);if(!r){i.voices[0].splice(0,0,{el_type:"stem",direction:"up"})}}t.appendElement("stem",null,null,{direction:"down"})}e.scale&&t.appendElement("scale",null,null,{size:e.scale})},r=function(e){e.key&&e.key.impliedNaturals&&(e.key.accidentals=e.key.accidentals.concat(e.key.impliedNaturals),delete e.key.impliedNaturals),t.lines[t.lineNum].staff[t.staffNum]={voices:[],clef:e.clef,key:e.key,workingClef:e.clef},void 0!==e.stafflines&&(t.lines[t.lineNum].staff[t.staffNum].clef.stafflines=e.stafflines,t.lines[t.lineNum].staff[t.staffNum].workingClef.stafflines=e.stafflines),e.staffscale&&(t.lines[t.lineNum].staff[t.staffNum].staffscale=e.staffscale),e.tripletfont&&(t.lines[t.lineNum].staff[t.staffNum].tripletfont=e.tripletfont),e.vocalfont&&(t.lines[t.lineNum].staff[t.staffNum].vocalfont=e.vocalfont),e.bracket&&(t.lines[t.lineNum].staff[t.staffNum].bracket=e.bracket),e.brace&&(t.lines[t.lineNum].staff[t.staffNum].brace=e.brace),e.connectBarLines&&(t.lines[t.lineNum].staff[t.staffNum].connectBarLines=e.connectBarLines),e.barNumber&&(t.lines[t.lineNum].staff[t.staffNum].barNumber=e.barNumber),i(e),e.part&&t.appendElement("part",e.part.startChar,e.part.endChar,{title:e.part.title}),void 0!==e.meter&&(t.lines[t.lineNum].staff[t.staffNum].meter=e.meter)};if(void 0===this.lines[this.lineNum])!function(e){t.lines[t.lineNum]={staff:[]},r(e)}(e);else if(void 0===this.lines[this.lineNum].staff)this.lineNum++,this.startNewLine(e);else if(void 0===this.lines[this.lineNum].staff[this.staffNum])r(e);else if(void 0===this.lines[this.lineNum].staff[this.staffNum].voices[this.voiceNum])i(e);else{if(!this.containsNotes(this.lines[this.lineNum].staff[this.staffNum].voices[this.voiceNum]))return;this.lineNum++,this.startNewLine(e)}},this.setBarNumberImmediate=function(e){var t=this.getCurrentVoice();if(t&&t.length>0){var i=t[t.length-1];if("bar"!==i.el_type)return e-1;void 0!==i.barNumber&&(i.barNumber=e)}return e},this.hasBeginMusic=function(){for(var e=0;e<this.lines.length;e++)if(this.lines[e].staff)return!0;return!1},this.isFirstLine=function(e){for(var t=e-1;t>=0;t--)if(void 0!==this.lines[t].staff)return!1;return!0},this.getMeter=function(){for(var e=0;e<this.lines.length;e++){var t=this.lines[e];if(t.staff)for(var i=0;i<t.staff.length;i++){var r=t.staff[i].meter;if(r)return r}}return{type:"common_time"}},this.getMeterFraction=function(){var e=this.getMeter(),t=4,i=4;return e&&("specified"===e.type?(t=parseInt(e.value[0].num,10),i=parseInt(e.value[0].den,10)):"cut_time"===e.type?(t=2,i=2):"common_time"===e.type&&(t=4,i=4)),this.meter={num:t,den:i},this.meter},this.getKeySignature=function(){for(var e=0;e<this.lines.length;e++){var t=this.lines[e];if(t.staff)for(var i=0;i<t.staff.length;i++)if(t.staff[i].key)return t.staff[i].key}return{}},this.getCurrentVoice=function(){return void 0!==this.lines[this.lineNum]&&void 0!==this.lines[this.lineNum].staff[this.staffNum]&&void 0!==this.lines[this.lineNum].staff[this.staffNum].voices[this.voiceNum]?this.lines[this.lineNum].staff[this.staffNum].voices[this.voiceNum]:null},this.setCurrentVoice=function(e,t){this.staffNum=e,this.voiceNum=t;for(var i=0;i<this.lines.length;i++)if(this.lines[i].staff&&(void 0===this.lines[i].staff[e]||void 0===this.lines[i].staff[e].voices[t]||!this.containsNotes(this.lines[i].staff[e].voices[t])))return void(this.lineNum=i);this.lineNum=i},this.addMetaText=function(e,t){void 0===this.metaText[e]?this.metaText[e]=t:this.metaText[e]+="\n"+t},this.addMetaTextArray=function(e,t){void 0===this.metaText[e]?this.metaText[e]=[t]:this.metaText[e].push(t)},this.addMetaTextObj=function(e,t){this.metaText[e]=t},this.addElementToEvents=function(e,t,i,n,a,s,o,c,l,h){if(t.hint)return{isTiedState:void 0,duration:0};var u=t.durationClass?t.durationClass:t.duration;if(t.abcelem.rest&&"spacer"===t.abcelem.rest.type&&(u=0),u>0){for(var d=[],p=0;p<t.elemset.length;p++)null!==t.elemset[p]&&d.push(t.elemset[p]);var f=t.startTie;if(void 0!==l)e["event"+l].elements.push(d),h&&(e["event"+i]||(e["event"+i]={type:"event",milliseconds:i,line:s,measureNumber:o,top:n,height:a,left:null,width:0,elements:[],startChar:null,endChar:null,startCharArray:[],endCharArray:[]}),e["event"+i].measureStart=!0,h=!1),f||(l=void 0);else{if(e["event"+i]){if(e["event"+i].left?e["event"+i].left=Math.min(e["event"+i].left,t.x):e["event"+i].left=t.x,e["event"+i].elements.push(d),e["event"+i].startCharArray.push(t.abcelem.startChar),e["event"+i].endCharArray.push(t.abcelem.endChar),null===e["event"+i].startChar&&(e["event"+i].startChar=t.abcelem.startChar),null===e["event"+i].endChar&&(e["event"+i].endChar=t.abcelem.endChar),t.abcelem.midiPitches&&t.abcelem.midiPitches.length){e["event"+i].midiPitches||(e["event"+i].midiPitches=[]);for(p=0;p<t.abcelem.midiPitches.length;p++)e["event"+i].midiPitches.push(t.abcelem.midiPitches[p])}if(t.abcelem.midiGraceNotePitches&&t.abcelem.midiGraceNotePitches.length){e["event"+i].midiGraceNotePitches||(e["event"+i].midiGraceNotePitches=[]);for(var m=0;m<t.abcelem.midiGraceNotePitches.length;m++)e["event"+i].midiGraceNotePitches.push(t.abcelem.midiGraceNotePitches[m])}}else e["event"+i]={type:"event",milliseconds:i,line:s,measureNumber:o,top:n,height:a,left:t.x,width:t.w,elements:[d],startChar:t.abcelem.startChar,endChar:t.abcelem.endChar,startCharArray:[t.abcelem.startChar],endCharArray:[t.abcelem.endChar],midiPitches:t.abcelem.midiPitches?r.cloneArray(t.abcelem.midiPitches):[]},t.abcelem.midiGraceNotePitches&&(e["event"+i].midiGraceNotePitches=r.cloneArray(t.abcelem.midiGraceNotePitches));h&&(e["event"+i].measureStart=!0,h=!1),f&&(l=i)}}return{isTiedState:l,duration:u/c,nextIsBar:h||"bar"===t.type}},this.makeVoicesArray=function(){for(var e=[],t=0;t<this.engraver.staffgroups.length;t++)for(var i=this.engraver.staffgroups[t],r=i.staffs[0],n=r.absoluteY,s=n-r.top*a.STEP,o=i.staffs[i.staffs.length-1],c=(n=o.absoluteY)-o.bottom*a.STEP-s,l=i.voices,h=0;h<l.length;h++){var u=0,d=!1;e[h]||(e[h]=[]);for(var p=l[h].children,f=0;f<p.length;f++)e[h].push({top:s,height:c,line:t,measureNumber:u,elem:p[f]}),"bar"===p[f].type&&d&&u++,"note"!==p[f].type&&"rest"!==p[f].type||(d=!0)}return e},this.setupEvents=function(e,t,i){for(var r,n=[],a={},s=e,o=!0,c=this.makeVoicesArray(),l=0;l<c.length;l++)for(var h=s,u=Math.round(1e3*h),d=0,p=-1,f=c[l],m=0;m<f.length;m++){var g=f[m].elem;if("tempo"===g.abcelem.el_type){i=this.getBpm(g.abcelem);t=this.getBeatLength()*(i/60)}var v=this.addElementToEvents(a,g,u,f[m].top,f[m].height,f[m].line,f[m].measureNumber,t,r,o);if(r=v.isTiedState,o=v.nextIsBar,h+=v.duration,u=Math.round(1e3*h),"bar"===g.type){var b=g.abcelem.type,y="bar_right_repeat"===b||"bar_dbl_repeat"===b,w="1"===g.abcelem.startEnding,k="bar_left_repeat"===b||"bar_dbl_repeat"===b||"bar_right_repeat"===b;if(y){-1===p&&(p=m);for(var x=d;x<p;x++){var S=f[x].elem;r=(v=this.addElementToEvents(a,S,u,f[x].top,f[x].height,f[x].line,f[x].measureNumber,t,r,o)).isTiedState,o=v.nextIsBar,h+=v.duration,u=Math.round(1e3*h)}o=!0,p=-1}w&&(p=m),k&&(d=m)}}return function(e){for(var t,i,r,n,a=e.length-1;a>=0;a--){var s=e[a];"bar"===s.type?(s.top=r,s.nextTop=t,t=r,s.bottom=n,s.nextBottom=i,i=n):"event"===s.type&&(r=s.top,n=s.top+s.height)}}(n=function(e){var t=[];for(var i in e)e.hasOwnProperty(i)&&t.push(e[i]);return t=t.sort((function(e,t){var i=e.milliseconds-t.milliseconds;return 0!==i?i:"bar"===e.type?-1:1}))}(a)),n.push({type:"end",milliseconds:u}),this.addUsefulCallbackInfo(n,i),n},this.addUsefulCallbackInfo=function(e,t){for(var i=this.millisecondsPerMeasure(t),r=0;r<e.length;r++){e[r].millisecondsPerMeasure=i}},this.getBpm=function(e){var t;if(e){t=e.bpm;var i=this.getBeatLength();t=t*(e.duration&&e.duration.length>0?e.duration[0]:i)/i}if(!t){t=180;var r=this.getMeterFraction();r&&8===r.den&&(t=120)}return t},this.setTiming=function(e,t){if(!e){var i=this.metaText?this.metaText.tempo:null;e=this.getBpm(i)}var r=this.getBeatLength(),n=e/60,a=this.getBarLength()/r*t/n;a&&(a-=this.getPickupLength()/r/n);var s=r*n;this.noteTimings=this.setupEvents(a,s,e)}}},function(e,t,i){var r=i(1),n=i(34),a=i(48),s=function(e,t){t=t||{},this.responsive=t.responsive,this.space=3*r.SPACE,this.scale=t.scale?parseFloat(t.scale):0,this.scale>.1||(this.scale=void 0),t.staffwidth?(this.staffwidthScreen=t.staffwidth,this.staffwidthPrint=t.staffwidth):(this.staffwidthScreen=740,this.staffwidthPrint=680),this.editable=t.editable||!1,this.listeners=[],t.clickListener&&this.addSelectListener(t.clickListener),this.renderer=new a(e,t.regression,t.add_classes),this.renderer.setPaddingOverride(t),this.renderer.controller=this,this.reset()};function o(e,t,i,r,n,a,s){return e&&r/i<.66&&!t?null:Math.abs(i-r)<2?null:a>0?((n=(i-(r-a*n))/a)*s>50&&(n=50/s),n):null}s.prototype.reset=function(){this.selected=[],this.ingroup=!1,this.staffgroups=[],this.lastStaffGroupIndex=-1,this.engraver&&this.engraver.reset(),this.engraver=null,this.renderer.reset()},s.prototype.engraveABC=function(e,t){void 0===e[0]&&(e=[e]),this.reset();for(var i=0;i<e.length;i++)void 0===t&&(t=i),this.engraveTune(e[i],t);if(this.renderer.doRegression)return this.renderer.regressionLines.join("\n")},s.prototype.adjustNonScaledItems=function(e){this.width/=e,this.renderer.adjustNonScaledItems(e)},s.prototype.getMeasureWidths=function(e){this.reset(),this.renderer.lineNumber=null,this.renderer.newTune(e),this.engraver=new n(this.renderer,0,{bagpipes:e.formatting.bagpipes,flatbeams:e.formatting.flatbeams}),this.engraver.setStemHeight(this.renderer.spacing.stemHeight),e.formatting.staffwidth?this.width=1.33*e.formatting.staffwidth:this.width=this.renderer.isPrint?this.staffwidthPrint:this.staffwidthScreen;var t=e.formatting.scale?e.formatting.scale:this.scale;"resize"===this.responsive&&(t=void 0),void 0===t&&(t=this.renderer.isPrint?.75:1),this.adjustNonScaledItems(t);var i={left:0,measureWidths:[],height:0,total:0};i.height=this.renderer.padding.top+this.renderer.spacing.music+this.renderer.padding.bottom+24;for(var a=!1,s=0;s<e.lines.length;s++){var o=e.lines[s];if(o.staff){if(o.staffGroup=this.engraver.createABCLine(o.staff,a?null:e.metaText.tempo),o.staffGroup.layout(0,this.renderer,!1),o.staffGroup.voices.length>0)for(var c=o.staffGroup.voices[0],l=!1,h=0,u=0;u<c.children.length;u++){var d=c.children[u];l||d.isClef||d.isKeySig||(l=!0,i.left=d.x,h=d.x),"bar"===d.type&&(i.measureWidths.push(d.x-h),i.total+=d.x-h,h=d.x)}a=!0,i.height+=o.staffGroup.calcHeight()*r.STEP}}return i},s.prototype.engraveTune=function(e,t){this.renderer.lineNumber=null,this.renderer.newTune(e),this.engraver=new n(this.renderer,t,{bagpipes:e.formatting.bagpipes,flatbeams:e.formatting.flatbeams}),this.engraver.setStemHeight(this.renderer.spacing.stemHeight),this.engraver.measureLength=e.getMeterFraction().num/e.getMeterFraction().den,e.formatting.staffwidth?this.width=1.33*e.formatting.staffwidth:this.width=this.renderer.isPrint?this.staffwidthPrint:this.staffwidthScreen;var i,r,a=e.formatting.scale?e.formatting.scale:this.scale;"resize"===this.responsive&&(a=void 0),void 0===a&&(a=this.renderer.isPrint?.75:1),this.adjustNonScaledItems(a);var s=!1;for(i=0;i<e.lines.length;i++)(r=e.lines[i]).staff&&(r.staffGroup=this.engraver.createABCLine(r.staff,s?null:e.metaText.tempo),s=!0);var o=this.width;for(i=0;i<e.lines.length;i++)(r=e.lines[i]).staff&&(this.setXSpacing(r.staffGroup,e.formatting,i===e.lines.length-1,!1),r.staffGroup.w>o&&(o=r.staffGroup.w));for(i=0;i<e.lines.length;i++)if((r=e.lines[i]).staffGroup&&r.staffGroup.voices){for(var c=0;c<r.staffGroup.voices.length;c++)r.staffGroup.voices[c].layoutBeams();r.staffGroup.setUpperAndLowerElements(this.renderer)}for(i=0;i<e.lines.length;i++)(r=e.lines[i]).staffGroup&&(r.staffGroup.height=r.staffGroup.calcHeight());this.renderer.topMargin(e),this.renderer.engraveTopText(this.width,e),this.renderer.addMusicPadding(),this.staffgroups=[],this.lastStaffGroupIndex=-1;for(var l=0;l<e.lines.length;l++)this.renderer.lineNumber=l,(r=e.lines[l]).staff?this.engraveStaffLine(r.staffGroup):r.subtitle&&0!==l?this.renderer.outputSubtitle(this.width,r.subtitle):void 0!==r.text?this.renderer.outputFreeText(r.text,r.vskip):void 0!==r.separator&&this.renderer.outputSeparator(r.separator);this.renderer.moveY(24),this.renderer.engraveExtraText(this.width,e),this.renderer.setPaperSize(o,a,this.responsive)},s.prototype.setXSpacing=function(e,t,i,r){for(var n=this.space,a=0;a<8;a++){var s=e.layout(n,this.renderer,r);if(n=o(i,!!t.stretchlast&&t.stretchlast,this.width+this.renderer.padding.left,e.w,n,s.spacingUnits,s.minSpace),r&&console.log("setXSpace",a,e.w,n,e.minspace),null===n)break}!function(e){for(var t=0;t<e.length;t++)for(var i=e[t],r=1;r<i.children.length-1;r++){var n=i.children[r];if(n.abcelem.rest&&("whole"===n.abcelem.rest.type||"multimeasure"===n.abcelem.rest.type)){var a=i.children[r-1],s=(i.children[r+1].x-a.x)/2+a.x;n.x=s-n.w/2;for(var o=0;o<n.children.length;o++)n.children[o].x=n.x}}}(e.voices)},s.prototype.engraveStaffLine=function(e){this.lastStaffGroupIndex>-1&&this.renderer.addStaffPadding(this.staffgroups[this.lastStaffGroupIndex],e),this.renderer.voiceNumber=null,e.draw(this.renderer);var t=e.height*r.STEP;this.staffgroups[this.staffgroups.length]=e,this.lastStaffGroupIndex=this.staffgroups.length-1,this.renderer.y+=t},s.prototype.notifySelect=function(e,t,i){this.clearSelection(),e.highlight&&(this.selected=[e],e.highlight());for(var r=e.abcelem||{},n=0;n<this.listeners.length;n++)this.listeners[n](r,t,i)},s.prototype.clearSelection=function(){for(var e=0;e<this.selected.length;e++)this.selected[e].unhighlight();this.selected=[]},s.prototype.addSelectListener=function(e){this.listeners[this.listeners.length]=e},s.prototype.rangeHighlight=function(e,t){this.clearSelection();for(var i=0;i<this.staffgroups.length;i++)for(var r=this.staffgroups[i].voices,n=0;n<r.length;n++)for(var a=r[n].children,s=0;s<a.length;s++){var o=a[s].abcelem.startChar,c=a[s].abcelem.endChar;(t>o&&e<c||t===e&&t===c)&&(this.selected[this.selected.length]=a[s],a[s].highlight())}},e.exports=s},function(e,t){var i=function(e){this.anchor1=e.anchor1,this.anchor2=e.anchor2,e.isGrace&&(this.isGrace=!0),e.fixedY&&(this.fixedY=!0),e.stemDir&&(this.stemDir=e.stemDir),void 0!==e.voiceNumber&&(this.voiceNumber=e.voiceNumber),this.internalNotes=[]};i.prototype.addInternalNote=function(e){this.internalNotes.push(e)},i.prototype.setEndAnchor=function(e){this.anchor2=e},i.prototype.setStartX=function(e){this.startLimitX=e},i.prototype.setEndX=function(e){this.endLimitX=e},i.prototype.setHint=function(){this.hint=!0},i.prototype.setUpperAndLowerElements=function(e){},i.prototype.calcTieDirection=function(){if(this.isGrace)this.above=!1;else if(0===this.voiceNumber)this.above=!0;else if(this.voiceNumber>0)this.above=!1;else{var e;e=this.anchor1?this.anchor1.pitch:this.anchor2?this.anchor2.pitch:14,this.anchor1&&"down"===this.anchor1.stemDir&&this.anchor2&&"down"===this.anchor2.stemDir?this.above=!0:this.anchor1&&"up"===this.anchor1.stemDir&&this.anchor2&&"up"===this.anchor2.stemDir?this.above=!1:this.anchor1&&this.anchor2?this.above=e>=6:this.anchor1?this.above="down"===this.anchor1.stemDir:this.anchor2?this.above="down"===this.anchor2.stemDir:this.above=e>=6}},i.prototype.calcSlurDirection=function(){if(this.isGrace)this.above=!1;else if(0===this.voiceNumber)this.above=!0;else if(this.voiceNumber>0)this.above=!1;else{var e=!1;this.anchor1&&"down"===this.anchor1.stemDir&&(e=!0),this.anchor2&&"down"===this.anchor2.stemDir&&(e=!0);for(var t=0;t<this.internalNotes.length;t++){"down"===this.internalNotes[t].stemDir&&(e=!0)}this.above=e}},i.prototype.calcX=function(e,t){this.anchor1?(this.startX=this.anchor1.x,this.anchor1.scalex<1&&(this.startX-=3)):this.startLimitX?this.startX=this.startLimitX.x+this.startLimitX.w:this.startX=e,this.anchor2?this.endX=this.anchor2.x:this.endLimitX?this.endX=this.endLimitX.x:this.endX=t},i.prototype.calcTieY=function(){this.anchor1?this.startY=this.anchor1.pitch:this.anchor2?this.startY=this.anchor2.pitch:this.startY=this.above?14:0,this.anchor2?this.endY=this.anchor2.pitch:this.anchor1?this.endY=this.anchor1.pitch:this.endY=this.above?14:0},i.prototype.calcSlurY=function(){if(this.anchor1&&this.anchor2){this.above&&"up"===this.anchor1.stemDir&&!this.fixedY?(this.startY=(this.anchor1.highestVert+this.anchor1.pitch)/2,this.startX+=this.anchor1.w/2):this.startY=this.anchor1.pitch;var e=this.anchor2.parent.beam&&this.anchor2.parent.beam.stemsUp&&this.anchor2.parent.beam.elems[0]!==this.anchor2.parent,t=(this.anchor2.highestVert+this.anchor2.pitch)/2;this.above&&"up"===this.anchor2.stemDir&&!this.fixedY&&!e&&t<this.startY?(this.endY=t,this.endX+=this.anchor2.w/2):this.endY=this.above&&e?this.anchor2.highestVert:this.anchor2.pitch}else this.anchor1?this.startY=this.endY=this.anchor1.pitch:this.anchor2?this.startY=this.endY=this.anchor2.pitch:(this.startY=this.above?14:0,this.endY=this.above?14:0)},i.prototype.avoidCollisionAbove=function(){if(this.above){for(var e=-50,t=0;t<this.internalNotes.length;t++)this.internalNotes[t].highestVert>e&&(e=this.internalNotes[t].highestVert);e>this.startY&&e>this.endY&&(this.startY=this.endY=e-1)}},i.prototype.layout=function(e,t){this.anchor1&&this.anchor2?this.anchor1.pitch===this.anchor2.pitch&&0===this.internalNotes.length?this.isTie=!0:this.isTie=!1:this.isTie=!0,this.isTie?(this.calcTieDirection(),this.calcX(e,t),this.calcTieY()):(this.calcSlurDirection(),this.calcX(e,t),this.calcSlurY()),this.avoidCollisionAbove()},i.prototype.draw=function(e,t,i){var r;this.layout(t,i),this.hint&&(r="abcjs-hint");var n=this.fixedY?1.5:0;e.drawArc(this.startX,this.endX,this.startY+n,this.endY+n,this.above,r,this.isTie)},e.exports=i},function(e,t){e.exports={}},function(e,t){e.exports={21:"A0",22:"Bb0",23:"B0",24:"C1",25:"Db1",26:"D1",27:"Eb1",28:"E1",29:"F1",30:"Gb1",31:"G1",32:"Ab1",33:"A1",34:"Bb1",35:"B1",36:"C2",37:"Db2",38:"D2",39:"Eb2",40:"E2",41:"F2",42:"Gb2",43:"G2",44:"Ab2",45:"A2",46:"Bb2",47:"B2",48:"C3",49:"Db3",50:"D3",51:"Eb3",52:"E3",53:"F3",54:"Gb3",55:"G3",56:"Ab3",57:"A3",58:"Bb3",59:"B3",60:"C4",61:"Db4",62:"D4",63:"Eb4",64:"E4",65:"F4",66:"Gb4",67:"G4",68:"Ab4",69:"A4",70:"Bb4",71:"B4",72:"C5",73:"Db5",74:"D5",75:"Eb5",76:"E5",77:"F5",78:"Gb5",79:"G5",80:"Ab5",81:"A5",82:"Bb5",83:"B5",84:"C6",85:"Db6",86:"D6",87:"Eb6",88:"E6",89:"F6",90:"Gb6",91:"G6",92:"Ab6",93:"A6",94:"Bb6",95:"B6",96:"C7",97:"Db7",98:"D7",99:"Eb7",100:"E7",101:"F7",102:"Gb7",103:"G7",104:"Ab7",105:"A7",106:"Bb7",107:"B7",108:"C8",109:"Db8",110:"D8",111:"Eb8",112:"E8",113:"F8",114:"Gb8",115:"G8",116:"Ab8",117:"A8",118:"Bb8",119:"B8",120:"C9",121:"Db9"}},function(e,t){e.exports=function(){var e=this;e.tracks=[],e.totalDuration=0,e.addTrack=function(){return e.tracks.push([]),e.tracks.length-1},e.setInstrument=function(t,i){e.tracks[t].push({channel:0,cmd:"program",instrument:i})},e.appendNote=function(t,i,r,n){e.tracks[t].push({cmd:"start",pitch:i-60,volume:n}),e.tracks[t].push({cmd:"move",duration:r}),e.tracks[t].push({cmd:"stop",pitch:i-60});var a=0;e.tracks[t].forEach((function(e){e.duration&&(a+=e.duration)})),e.totalDuration=Math.max(e.totalDuration,a)}}},function(e,t,i){var r=i(7),n=i(15),a=i(6),s=i(0),o='<svg version="1.0" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 700 700" preserveAspectRatio="xMidYMid meet">\n<g transform="translate(0,700) scale(0.1,-0.1)" >\n<path d="M3111 6981 c-20 -37 -90 -55 -364 -96 -120 -18 -190 -33 -244 -55 -42 -17 -124 -42 -182 -56 -78 -18 -119 -34 -157 -60 -28 -19 -86 -46 -128 -60 -43 -13 -107 -42 -144 -64 -37 -23 -84 -46 -106 -52 -21 -7 -56 -29 -79 -50 -22 -22 -61 -50 -86 -63 -26 -13 -67 -40 -91 -60 -24 -20 -65 -47 -90 -60 -25 -13 -53 -31 -61 -41 -8 -9 -32 -30 -54 -46 -75 -54 -486 -460 -512 -507 -15 -25 -48 -69 -75 -98 -26 -28 -48 -57 -48 -63 0 -6 -18 -29 -39 -53 -21 -23 -56 -71 -77 -107 -20 -36 -50 -80 -65 -97 -16 -18 -33 -52 -40 -75 -12 -47 -47 -115 -84 -166 -13 -18 -30 -56 -38 -83 -8 -27 -34 -80 -56 -118 -33 -53 -46 -91 -62 -167 -12 -63 -34 -127 -59 -179 -42 -84 -60 -166 -60 -270 0 -90 26 -122 125 -154 54 -17 96 -19 430 -20 305 -1 381 2 430 14 82 22 140 51 153 78 6 12 22 47 37 77 14 30 38 77 54 103 15 27 34 73 40 103 7 30 28 78 48 107 19 28 44 74 55 101 10 28 34 67 53 87 18 20 49 61 68 90 19 30 44 63 57 74 13 11 36 40 52 65 59 94 232 270 306 313 20 11 57 37 82 58 25 20 70 52 100 72 30 19 66 47 79 61 13 14 49 35 80 46 30 12 80 37 111 56 31 19 95 45 143 58 48 12 110 37 139 55 63 40 127 55 323 76 83 9 208 28 279 41 156 29 165 29 330 4 453 -71 514 -84 606 -130 31 -16 83 -36 116 -45 32 -9 84 -34 115 -56 31 -21 82 -48 113 -60 32 -11 72 -33 89 -48 18 -16 59 -45 92 -65 33 -21 74 -51 90 -66 17 -15 49 -40 73 -54 52 -32 65 -61 50 -113 -8 -31 -61 -90 -277 -308 -300 -303 -361 -382 -369 -481 -2 -29 0 -66 6 -81 13 -40 88 -138 115 -151 12 -6 54 -26 92 -44 l70 -33 945 -2 c520 -1 975 2 1012 7 64 8 191 50 231 76 11 7 33 34 50 60 22 34 42 51 65 58 l32 9 0 1101 0 1102 -32 9 c-21 7 -44 26 -64 55 -60 84 -77 97 -140 110 -44 9 -76 10 -127 2 -59 -9 -77 -17 -134 -62 -37 -28 -172 -155 -301 -281 -129 -127 -249 -237 -267 -245 -25 -10 -41 -11 -71 -2 -58 15 -112 45 -124 69 -6 11 -35 35 -64 54 -28 18 -58 41 -66 50 -8 9 -41 35 -75 58 -33 22 -77 56 -99 75 -21 18 -64 46 -95 61 -31 14 -73 39 -93 55 -20 15 -70 40 -110 55 -40 15 -97 44 -127 64 -29 21 -78 44 -107 53 -30 8 -77 31 -105 51 -42 28 -73 39 -173 60 -68 14 -154 39 -196 58 -95 43 -131 51 -343 76 -209 24 -242 32 -279 70 l-30 29 -328 0 c-312 0 -330 -1 -339 -19z"></path>\n<path d="M254 2875 c-89 -16 -107 -26 -145 -78 -32 -44 -62 -66 -91 -67 -17 0 -18 -61 -18 -1140 l0 -1140 24 0 c16 0 41 -17 72 -50 40 -42 61 -55 117 -72 l69 -21 82 23 c44 12 96 30 114 39 18 9 148 132 290 272 141 141 267 261 279 268 51 26 86 14 176 -61 32 -26 62 -48 66 -48 5 0 36 -25 70 -55 34 -30 74 -61 89 -69 15 -8 37 -28 50 -45 12 -17 50 -45 84 -62 34 -17 78 -44 98 -60 19 -16 61 -37 93 -48 32 -11 81 -37 107 -56 27 -20 76 -45 109 -56 33 -12 75 -31 93 -44 62 -45 93 -58 191 -82 54 -12 130 -37 168 -54 68 -29 180 -58 226 -59 62 0 183 -64 183 -96 0 -12 88 -14 639 -14 l639 0 12 30 c18 44 76 66 233 89 89 14 160 30 200 47 34 15 106 42 159 60 54 18 112 44 130 57 47 35 85 52 146 67 29 7 76 28 105 48 29 20 77 48 107 63 30 15 66 39 80 54 14 15 50 40 81 56 31 15 78 46 104 69 26 22 61 46 79 54 17 7 43 26 56 42 14 16 41 41 60 56 64 48 380 362 408 405 15 23 40 51 55 63 15 12 36 38 46 58 11 21 37 57 58 82 22 25 49 62 62 83 13 20 38 56 57 78 19 23 50 74 69 113 19 39 46 86 59 104 14 18 34 62 46 98 12 36 32 77 45 92 31 38 60 97 80 167 9 33 26 76 37 95 29 50 47 103 68 206 10 52 32 117 51 155 29 56 33 74 34 140 0 94 -10 108 -101 138 -61 20 -83 21 -463 21 -226 0 -421 -4 -451 -10 -63 -12 -86 -30 -110 -85 -10 -22 -33 -63 -52 -92 -21 -31 -42 -80 -53 -123 -11 -44 -32 -93 -56 -128 -20 -32 -47 -83 -59 -115 -12 -32 -37 -77 -56 -100 -19 -23 -50 -65 -69 -94 -19 -29 -44 -57 -54 -63 -11 -5 -29 -27 -42 -47 -52 -85 -234 -277 -300 -315 -25 -15 -53 -38 -62 -51 -9 -14 -42 -39 -74 -57 -32 -18 -75 -48 -95 -66 -21 -18 -59 -44 -85 -58 -26 -13 -72 -40 -100 -59 -35 -24 -78 -41 -128 -52 -47 -11 -99 -31 -139 -56 -69 -42 -94 -49 -391 -110 -245 -51 -425 -66 -595 -50 -168 16 -230 27 -330 61 -47 16 -123 35 -170 44 -98 17 -123 25 -172 58 -20 14 -71 37 -114 53 -44 15 -95 40 -115 56 -20 16 -70 42 -110 59 -40 16 -88 45 -108 63 -20 19 -55 46 -78 61 -24 14 -49 35 -55 47 -7 11 -34 33 -60 49 -50 31 -65 61 -53 102 4 13 130 147 281 298 236 238 277 283 299 335 15 32 35 71 46 86 12 18 19 44 19 76 0 42 -8 63 -53 138 -92 151 11 139 -1207 141 -798 2 -1030 0 -1086 -11z"></path>\n</g>\n</svg>\n',c='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 25 25" class="abcjs-play-svg">\n <g>\n <polygon points="4 0 23 12.5 4 25"/>\n </g>\n</svg>',l='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 25 25" class="abcjs-pause-svg">\n <g>\n <rect width="8.23" height="25"/>\n <rect width="8.23" height="25" x="17"/>\n </g>\n</svg>',h='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" class="abcjs-loading-svg">\n <circle cx="50" cy="50" fill="none" stroke-width="20" r="35" stroke-dasharray="160 55"></circle>\n</svg>',u='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 25 25">\n <g>\n <polygon points="5 12.5 24 0 24 25"/>\n <rect width="3" height="25" x="0" y="0"/>\n </g>\n</svg>';function d(e,t,i,s,o){var c=!0;if(a()?c="suspended"===a().state:n(),!r())throw{status:"NotSupported",message:"This browser does not support audio."};(c||o)&&i&&i.classList.add("abcjs-loading"),c?a().resume().then((function(){s?s().then((function(r){p(e,t,i,o)})):p(e,t,i,o)})):p(e,t,i,o)}function p(e,t,i,r){r?e(t).then((function(){i&&i.classList.remove("abcjs-loading")})):(e(t),i&&i.classList.remove("abcjs-loading"))}e.exports=function(e,t){var i=this;if("string"==typeof e){var r=e;if(!(e=document.querySelector(r)))throw new Error('Cannot find element "'+r+'" in the DOM.')}else if(!(e instanceof HTMLElement))throw new Error("The first parameter must be a valid element or selector in the DOM.");if(i.parent=e,i.options={},t&&(i.options=s.clone(t)),i.options.ac&&n(i.options.ac),function(e,t){var i=!!t.loopHandler,r=!!t.restartHandler,n=!!t.playHandler||!!t.playPromiseHandler,a=!!t.progressHandler,s=!!t.warpHandler,d=!1!==t.hasClock,p='<div class="abcjs-inline-audio">\n';if(i){var f=t.repeatTitle?t.repeatTitle:"Click to toggle play once/repeat.",m=t.repeatAria?t.repeatAria:f;p+='<button type="button" class="abcjs-midi-loop abcjs-btn" title="'+f+'" aria-label="'+m+'">'+o+"</button>\n"}if(r){var g=t.restartTitle?t.restartTitle:"Click to go to beginning.",v=t.restartAria?t.restartAria:g;p+='<button type="button" class="abcjs-midi-reset abcjs-btn" title="'+g+'" aria-label="'+v+'">'+u+"</button>\n"}if(n){var b=t.playTitle?t.playTitle:"Click to play/pause.",y=t.playAria?t.playAria:b;p+='<button type="button" class="abcjs-midi-start abcjs-btn" title="'+b+'" aria-label="'+y+'">'+c+l+h+"</button>\n"}if(a){var w=t.randomTitle?t.randomTitle:"Click to change the playback position.",k=t.randomAria?t.randomAria:w;p+='<button type="button" class="abcjs-midi-progress-background" title="'+w+'" aria-label="'+k+'"><span class="abcjs-midi-progress-indicator"></span></button>\n'}d&&(p+='<span class="abcjs-midi-clock"></span>\n');if(s){var x=t.warpTitle?t.warpTitle:"Change the playback speed.",S=t.warpAria?t.warpAria:x,_=t.bpm?t.bpm:"BPM";p+='<span class="abcjs-tempo-wrapper"><label><input class="abcjs-midi-tempo" type="number" min="1" max="300" value="100" title="'+x+'" aria-label="'+S+'">%</label><span> (<span class="abcjs-midi-current-tempo"></span> '+_+")</span></span>\n"}p+="</div>\n",e.innerHTML=p}(i.parent,i.options),function(e){var t=!!e.options.loopHandler,i=!!e.options.restartHandler,r=!!e.options.playHandler||!!e.options.playPromiseHandler,n=!!e.options.progressHandler,a=!!e.options.warpHandler,s=e.parent.querySelector(".abcjs-midi-start");t&&e.parent.querySelector(".abcjs-midi-loop").addEventListener("click",(function(t){d(e.options.loopHandler,t,s,e.options.afterResume)}));i&&e.parent.querySelector(".abcjs-midi-reset").addEventListener("click",(function(t){d(e.options.restartHandler,t,s,e.options.afterResume)}));r&&s.addEventListener("click",(function(t){d(e.options.playPromiseHandler||e.options.playHandler,t,s,e.options.afterResume,!!e.options.playPromiseHandler)}));n&&e.parent.querySelector(".abcjs-midi-progress-background").addEventListener("click",(function(t){d(e.options.progressHandler,t,s,e.options.afterResume)}));a&&e.parent.querySelector(".abcjs-midi-tempo").addEventListener("change",(function(t){d(e.options.warpHandler,t,s,e.options.afterResume)}))}(i),i.setTempo=function(e){var t=i.parent.querySelector(".abcjs-midi-current-tempo");t&&(t.innerHTML=e)},i.resetAll=function(){for(var e=i.parent.querySelectorAll(".abcjs-pushed"),t=0;t<e.length;t++){e[t].classList.remove("abcjs-pushed")}},i.pushPlay=function(e){var t=i.parent.querySelector(".abcjs-midi-start");t&&(e?t.classList.add("abcjs-pushed"):t.classList.remove("abcjs-pushed"))},i.pushLoop=function(e){var t=i.parent.querySelector(".abcjs-midi-loop");t&&(e?t.classList.add("abcjs-pushed"):t.classList.remove("abcjs-pushed"))},i.setProgress=function(e,t){var r=i.parent.querySelector(".abcjs-midi-progress-background"),n=i.parent.querySelector(".abcjs-midi-progress-indicator");if(r&&n){var a=r.clientWidth*e;n.style.left=a+"px";var s=i.parent.querySelector(".abcjs-midi-clock");if(s){var o=t*e/1e3,c=Math.floor(o/60),l=Math.floor(o%60),h=l<10?"0"+l:l;s.innerHTML=c+":"+h}}},i.options.afterResume){var p=!1;i.options.ac?p="suspended"!==i.options.ac.state:a()&&(p="suspended"!==a().state),p&&i.options.afterResume()}}},function(e,t,i){var r=i(24),n=i(13),a=i(8);e.exports=function(){var e=this;e.warp=100,e.cursorControl=null,e.visualObj=null,e.timer=null,e.midiBuffer=null,e.options=null,e.currentTempo=null,e.control=null,e.isLooping=!1,e.isStarted=!1,e.isLoaded=!1,e.load=function(t,i,n){n||(n={}),e.control=new r(t,{loopHandler:n.displayLoop?e.toggleLoop:void 0,restartHandler:n.displayRestart?e.restart:void 0,playPromiseHandler:n.displayPlay?e.play:void 0,progressHandler:n.displayProgress?e.randomAccess:void 0,warpHandler:n.displayWarp?e.onWarp:void 0,afterResume:e.init}),e.cursorControl=i},e.setTune=function(t,i,r){return e.isLoaded=!1,e.visualObj=t,e.options=r,e.control&&(e.pause(),e.setProgress(0,1),e.control.resetAll(),e.restart(),e.isStarted=!1),e.isLooping=!1,i?e.go():Promise.resolve({status:"no-audio-context"})},e.go=function(){var t=100*e.visualObj.millisecondsPerMeasure()/e.warp;return e.currentTempo=Math.round(e.visualObj.getBeatsPerMeasure()/t*6e4),e.control.setTempo(e.currentTempo),e.percent=0,e.midiBuffer||(e.midiBuffer=new n),e.midiBuffer.init({visualObj:e.visualObj,options:e.options,millisecondsPerMeasure:t}).then((function(){return e.midiBuffer.prime()})).then((function(){var t=16;return e.cursorControl&&void 0!==e.cursorControl.beatSubdivisions&&parseInt(e.cursorControl.beatSubdivisions,10)>=1&&parseInt(e.cursorControl.beatSubdivisions,10)<=64&&(t=parseInt(e.cursorControl.beatSubdivisions,10)),e.timer=new a(e.visualObj,{beatCallback:e.beatCallback,eventCallback:e.eventCallback,lineEndCallback:e.lineEndCallback,qpm:e.currentTempo,extraMeasuresAtBeginning:e.cursorControl?e.cursorControl.extraMeasuresAtBeginning:void 0,lineEndAnticipation:e.cursorControl?e.cursorControl.lineEndAnticipation:void 0,beatSubdivisions:t}),e.cursorControl&&e.cursorControl.onReady&&"function"==typeof e.cursorControl.onReady&&e.cursorControl.onReady(e),e.isLoaded=!0,Promise.resolve({status:"created"})}))},e.destroy=function(){e.timer&&(e.timer.reset(),e.timer.stop(),e.timer=null),e.midiBuffer&&(e.midiBuffer.stop(),e.midiBuffer=null),e.setProgress(0,1),e.control.resetAll()},e.play=function(){return e.isLoaded?e._play():e.go().then((function(){return e._play()}))},e._play=function(){return e.isStarted=!e.isStarted,e.isStarted?(e.cursorControl&&e.cursorControl.onStart&&"function"==typeof e.cursorControl.onStart&&e.cursorControl.onStart(),e.midiBuffer.start(),e.timer.start(),e.control.pushPlay(!0)):e.pause(),Promise.resolve({status:"ok"})},e.pause=function(){e.timer&&(e.timer.pause(),e.midiBuffer.pause(),e.control.pushPlay(!1))},e.toggleLoop=function(){e.isLooping=!e.isLooping,e.control.pushLoop(e.isLooping)},e.restart=function(){e.timer&&(e.timer.setProgress(0),e.midiBuffer.seek(0))},e.randomAccess=function(t){return e.isLoaded?e._randomAccess(t):e.go().then((function(){return e._randomAccess(t)}))},e._randomAccess=function(t){var i=t.target.classList.contains("abcjs-midi-progress-indicator")?t.target.parentNode:t.target,r=(t.x-i.offsetLeft)/i.offsetWidth;r<0&&(r=0),r>100&&(r=100),e.timer.setProgress(r),e.midiBuffer.seek(r)},e.onWarp=function(t){var i=t.target.value;if(parseInt(i,10)>0){e.warp=parseInt(i,10);var r=e.isStarted,n=e.percent;e.destroy(),e.isStarted=!1,e.go().then((function(){e.setProgress(n,1e3*e.midiBuffer.duration),r&&e.play(),e.timer.setProgress(n),e.midiBuffer.seek(n)}))}},e.setProgress=function(t,i){e.percent=t,e.control.setProgress(t,i)},e.finished=function(){e.timer.reset(),e.isLooping?(e.timer.start(),e.midiBuffer.start()):(e.timer.stop(),e.isStarted&&(e.control.pushPlay(!1),e.isStarted=!1,e.cursorControl&&e.cursorControl.onFinished&&"function"==typeof e.cursorControl.onFinished&&e.cursorControl.onFinished(),e.setProgress(0,1)))},e.beatCallback=function(t,i,r){var n=t/i;e.setProgress(n,r),e.cursorControl&&e.cursorControl.onBeat&&"function"==typeof e.cursorControl.onBeat&&e.cursorControl.onBeat(t,i,r)},e.eventCallback=function(t){t?e.cursorControl&&e.cursorControl.onEvent&&"function"==typeof e.cursorControl.onEvent&&e.cursorControl.onEvent(t):e.finished()},e.lineEndCallback=function(t){e.cursorControl&&e.cursorControl.onLineEnd&&"function"==typeof e.cursorControl.onLineEnd&&e.cursorControl.onLineEnd(t)},e.getUrl=function(){return e.midiBuffer.download()},e.download=function(t){var i=e.getUrl(),r=document.createElement("a");document.body.appendChild(r),r.setAttribute("style","display: none;"),r.href=i,r.download=t||"output.wav",r.click(),window.URL.revokeObjectURL(i),document.body.removeChild(r)}}},function(e,t,i){i(27),window.ABCJS=i(28)},function(e,t){},function(e,t,i){var r=i(29),n=i(30),a=i(9),s={};s.signature="abcjs-basic v"+r,Object.keys(n).forEach((function(e){s[e]=n[e]})),Object.keys(a).forEach((function(e){s[e]=a[e]})),s.renderAbc=i(33),s.TimingCallbacks=i(8);var o=i(13),c=i(14),l=i(22),h=i(23),u=i(24),d=i(15),p=i(6),f=i(7),m=i(55),g=i(25);s.synth={CreateSynth:o,instrumentIndexToName:c,pitchToNoteName:l,SynthController:g,SynthSequence:h,CreateSynthControl:u,registerAudioContext:d,activeAudioContext:p,supportsAudio:f,playEvent:m};var v=i(56);s.Editor=v,e.exports=s},function(e,t){e.exports="5.10.3"},function(e,t,i){i(1),i(0);var r=i(8),n={};!function(){"use strict";var e,t;n.startAnimation=function(i,n,a){function s(e){for(var t=0;t<e.length;t++){var i=e[t];i.classList.contains("abcjs-bar")||(i.style.display="none")}}var o;function c(e){a.hideCurrentMeasure?function(e){s(i.querySelectorAll(e))}(e):a.hideFinishedMeasures&&function(e){o&&s(i.querySelectorAll(o)),o=e}(e)}e&&(e.stop(),e=void 0),a.showCursor&&((t=i.querySelector(".abcjs-cursor"))||((t=document.createElement("DIV")).className="abcjs-cursor cursor",t.style.position="absolute",i.appendChild(t),i.style.position="relative")),(e=new r(n,{qpm:a.bpm,eventCallback:function(i){if(i){if(i.measureStart){var r=".abcjs-l"+(n=i).line+".abcjs-m"+n.measureNumber;r&&c(r)}t&&(t.style.left=i.left+"px",t.style.top=i.top+"px",t.style.width=i.width+"px",t.style.height=i.height+"px")}else e.stop(),e=void 0;var n}})).start()},n.pauseAnimation=function(t){e&&(t?e.pause():e.start())},n.stopAnimation=function(){e&&(e.stop(),e=void 0)}}(),e.exports=n},function(e,t,i){var r=i(0),n=i(11),a=i(12);e.exports=function(e,t,i,s){this.reset=function(e,t,i,r){a.initialize(e,t,i,r),n.initialize(e,t,i,r)},this.reset(e,t,i,s),this.setTitle=function(t){if(i.hasMainTitle)s.addSubtitle(e.translateString(e.stripComment(t)));else{var r=e.translateString(e.theReverser(e.stripComment(t)));i.titlecaps&&(r=r.toUpperCase()),s.addMetaText("title",r),i.hasMainTitle=!0}},this.setMeter=function(r){if("C"===(r=e.stripComment(r)))return!0===i.havent_set_length&&(i.default_length=.125,i.havent_set_length=!1),{type:"common_time"};if("C|"===r)return!0===i.havent_set_length&&(i.default_length=.125,i.havent_set_length=!1),{type:"cut_time"};if("o"===r)return!0===i.havent_set_length&&(i.default_length=.125,i.havent_set_length=!1),{type:"tempus_perfectum"};if("c"===r)return!0===i.havent_set_length&&(i.default_length=.125,i.havent_set_length=!1),{type:"tempus_imperfectum"};if("o."===r)return!0===i.havent_set_length&&(i.default_length=.125,i.havent_set_length=!1),{type:"tempus_perfectum_prolatio"};if("c."===r)return!0===i.havent_set_length&&(i.default_length=.125,i.havent_set_length=!1),{type:"tempus_imperfectum_prolatio"};if(0===r.length||"none"===r.toLowerCase())return!0===i.havent_set_length&&(i.default_length=.125,i.havent_set_length=!1),null;var n=e.tokenize(r,0,r.length);try{var a=function(){var e=function(){var e={value:0,num:""},t=n.shift();for("("===t.token&&(t=n.shift());;){if("number"!==t.type)throw"Expected top number of meter";if(e.value+=parseInt(t.token),e.num+=t.token,0===n.length||"/"===n[0].token)return e;if(")"===(t=n.shift()).token){if(0===n.length||"/"===n[0].token)return e;throw"Unexpected paren in meter"}if("."!==t.token&&"+"!==t.token)throw"Expected top number of meter";if(e.num+=t.token,0===n.length)throw"Expected top number of meter";t=n.shift()}return e}();if(0===n.length)return e;var t=n.shift();if("/"!==t.token)throw"Expected slash in meter";if("number"!==(t=n.shift()).type)throw"Expected bottom number of meter";return e.den=t.token,e.value=e.value/parseInt(e.den),e};if(0===n.length)throw"Expected meter definition in M: line";for(var s={type:"specified",value:[]},o=0;;){var c=a();o+=c.value;var l={num:c.num};if(void 0!==c.den&&(l.den=c.den),s.value.push(l),0===n.length)break}return!0===i.havent_set_length&&(i.default_length=o<.75?.0625:.125,i.havent_set_length=!1),s}catch(e){t(e,r,0)}return null},this.calcTempo=function(e){var t=.25;i.meter&&"specified"===i.meter.type?t=1/parseInt(i.meter.value[0].den):i.origMeter&&"specified"===i.origMeter.type&&(t=1/parseInt(i.origMeter.value[0].den));for(var r=0;r<e.duration;r++)e.duration[r]=t*e.duration[r];return e},this.resolveTempo=function(){i.tempo&&(this.calcTempo(i.tempo),s.metaText.tempo=i.tempo,delete i.tempo)},this.addUserDefinition=function(e,n,a){var s=e.indexOf("=",n);if(-1!==s){var o=r.strip(e.substring(n,s)),c=r.strip(e.substring(s+1));if(1===o.length){-1!=="HIJKLMNOPQRSTUVWXYhijklmnopqrstuvw~".indexOf(o)?0!==c.length?(void 0===i.macros&&(i.macros={}),i.macros[o]=c):t("Missing macro definition",e,n):t("Macro definitions must be H-Y, h-w, or tilde",e,n)}else t("Macro definitions can only be one character",e,n)}else t("Need an = in a macro definition",e,n)},this.setDefaultLength=function(e,t,n){var a=r.gsub(e.substring(t,n)," ","").split("/");if(2===a.length){var s=parseInt(a[0]),o=parseInt(a[1]);o>0&&(i.default_length=s/o,i.havent_set_length=!1)}else 1===a.length&&"1"===a[0]&&(i.default_length=1,i.havent_set_length=!1)};var o={larghissimo:20,adagissimo:24,sostenuto:28,grave:32,largo:40,lento:50,larghetto:60,adagio:68,adagietto:74,andante:80,andantino:88,"marcia moderato":84,"andante moderato":100,moderato:112,allegretto:116,"allegro moderato":120,allegro:126,animato:132,agitato:140,veloce:148,"mosso vivo":156,vivace:164,vivacissimo:172,allegrissimo:176,presto:184,prestissimo:210};this.setTempo=function(r,n,a){try{var s=e.tokenize(r,n,a);if(0===s.length)throw"Missing parameter in Q: field";var c={},l=!0,h=s.shift();if("quote"===h.type&&(c.preString=h.token,h=s.shift(),0===s.length))return o[c.preString.toLowerCase()]&&(c.bpm=o[c.preString.toLowerCase()],c.suppressBpm=!0),{type:"immediate",tempo:c};if("alpha"===h.type&&"C"===h.token){if(0===s.length)throw"Missing tempo after C in Q: field";if("punct"===(h=s.shift()).type&&"="===h.token){if(0===s.length)throw"Missing tempo after = in Q: field";if("number"!==(h=s.shift()).type)throw"Expected number after = in Q: field";c.duration=[1],c.bpm=parseInt(h.token)}else{if("number"!==h.type)throw"Expected number or equal after C in Q: field";if(c.duration=[parseInt(h.token)],0===s.length)throw"Missing = after duration in Q: field";if("punct"!==(h=s.shift()).type||"="!==h.token)throw"Expected = after duration in Q: field";if(0===s.length)throw"Missing tempo after = in Q: field";if("number"!==(h=s.shift()).type)throw"Expected number after = in Q: field";c.bpm=parseInt(h.token)}}else{if("number"!==h.type)throw"Unknown value in Q: field";var u=parseInt(h.token);if(0===s.length||"quote"===s[0].type)c.duration=[1],c.bpm=u;else{if(l=!1,"punct"!==(h=s.shift()).type&&"/"!==h.token)throw"Expected fraction in Q: field";if("number"!==(h=s.shift()).type)throw"Expected fraction in Q: field";var d=parseInt(h.token);for(c.duration=[u/d];s.length>0&&"="!==s[0].token&&"quote"!==s[0].type;){if("number"!==(h=s.shift()).type)throw"Expected fraction in Q: field";if(u=parseInt(h.token),"punct"!==(h=s.shift()).type&&"/"!==h.token)throw"Expected fraction in Q: field";if("number"!==(h=s.shift()).type)throw"Expected fraction in Q: field";d=parseInt(h.token),c.duration.push(u/d)}if("punct"!==(h=s.shift()).type&&"="!==h.token)throw"Expected = in Q: field";if("number"!==(h=s.shift()).type)throw"Expected tempo in Q: field";c.bpm=parseInt(h.token)}}if(0!==s.length&&("quote"===(h=s.shift()).type&&(c.postString=h.token,h=s.shift()),0!==s.length))throw"Unexpected string at end of Q: field";return!1===i.printTempo&&(c.suppress=!0),{type:l?"delaySet":"immediate",tempo:c}}catch(e){return t(e,r,n),{type:"none"}}},this.letter_to_inline_header=function(r,o){var c=e.eatWhiteSpace(r,o);if(o+=c,r.length>=o+5&&"["===r.charAt(o)&&":"===r.charAt(o+2)){var l=r.indexOf("]",o),h=i.iChar+o,u=i.iChar+l+1;switch(r.substring(o,o+3)){case"[I:":var d=n.addDirective(r.substring(o+3,l));return d&&t(d,r,o),[l-o+1+c];case"[M:":var p=this.setMeter(r.substring(o+3,l));return s.hasBeginMusic()&&p?s.appendStartingElement("meter",h,u,p):i.meter=p,[l-o+1+c];case"[K:":var f=a.parseKey(r.substring(o+3,l));return f.foundClef&&s.hasBeginMusic()&&s.appendStartingElement("clef",h,u,i.clef),f.foundKey&&s.hasBeginMusic()&&s.appendStartingElement("key",h,u,a.fixKey(i.clef,i.key)),[l-o+1+c];case"[P:":return s.lines.length<=s.lineNum?i.partForNextLine={title:r.substring(o+3,l),startChar:h,endChar:u}:s.appendElement("part",h,u,{title:r.substring(o+3,l)}),[l-o+1+c];case"[L:":return this.setDefaultLength(r,o+3,l),[l-o+1+c];case"[Q:":if(l>0){var m=this.setTempo(r,o+3,l);return"delaySet"===m.type?s.appendElement("tempo",h,u,this.calcTempo(m.tempo)):"immediate"===m.type&&s.appendElement("tempo",h,u,m.tempo),[l-o+1+c,r.charAt(o+1),r.substring(o+3,l)]}break;case"[V:":if(l>0)return a.parseVoice(r,o+3,l),[l-o+1+c,r.charAt(o+1),r.substring(o+3,l)]}}return[0]},this.letter_to_body_header=function(e,o){if(e.length>=o+3)switch(e.substring(o,o+2)){case"I:":var c=n.addDirective(e.substring(o+2));return c&&t(c,e,o),[e.length];case"M:":var l=this.setMeter(e.substring(o+2));return s.hasBeginMusic()&&l&&s.appendStartingElement("meter",i.iChar+o,i.iChar+e.length,l),[e.length];case"K:":var h=a.parseKey(e.substring(o+2));return h.foundClef&&s.hasBeginMusic()&&s.appendStartingElement("clef",i.iChar+o,i.iChar+e.length,i.clef),h.foundKey&&s.hasBeginMusic()&&s.appendStartingElement("key",i.iChar+o,i.iChar+e.length,a.fixKey(i.clef,i.key)),[e.length];case"P:":return s.hasBeginMusic()&&s.appendElement("part",i.iChar+o,i.iChar+e.length,{title:e.substring(o+2)}),[e.length];case"L:":return this.setDefaultLength(e,o+2,e.length),[e.length];case"Q:":var u=e.indexOf("",o+2);-1===u&&(u=e.length);var d=this.setTempo(e,o+2,u);return"delaySet"===d.type?s.appendElement("tempo",i.iChar+o,i.iChar+e.length,this.calcTempo(d.tempo)):"immediate"===d.type&&s.appendElement("tempo",i.iChar+o,i.iChar+e.length,d.tempo),[u,e.charAt(o),r.strip(e.substring(o+2))];case"V:":return a.parseVoice(e,o+2,e.length),[e.length,e.charAt(o),r.strip(e.substring(o+2))]}return[0]};var c={A:"author",B:"book",C:"composer",D:"discography",F:"url",G:"group",I:"instruction",N:"notes",O:"origin",R:"rhythm",S:"source",W:"unalignedWords",Z:"transcription"};this.parseHeader=function(o){if(r.startsWith(o,"%%")){var l=n.addDirective(o.substring(2));return l&&t(l,o,2),{}}var h=o.indexOf("%");if(h>=0&&(o=o.substring(0,h)),0===(o=o.replace(/\s+$/,"")).length)return{};if(o.length>=2&&":"===o.charAt(1)){var u="";o.indexOf("")>=0&&"w"!==o.charAt(0)&&(u=o.substring(o.indexOf("")+1),o=o.substring(0,o.indexOf("")));var d=c[o.charAt(0)];if(void 0!==d)return"unalignedWords"===d?s.addMetaTextArray(d,n.parseFontChangeLine(e.translateString(e.stripComment(o.substring(2))))):s.addMetaText(d,e.translateString(e.stripComment(o.substring(2)))),{};var p=i.iChar,f=p+o.length;switch(o.charAt(0)){case"H":s.addMetaText("history",e.translateString(e.stripComment(o.substring(2)))),i.is_in_history=!0;break;case"K":this.resolveTempo();var m=a.parseKey(o.substring(2));!i.is_in_header&&s.hasBeginMusic()&&(m.foundClef&&s.appendStartingElement("clef",p,f,i.clef),m.foundKey&&s.appendStartingElement("key",p,f,a.fixKey(i.clef,i.key))),i.is_in_header=!1;break;case"L":this.setDefaultLength(o,2,o.length);break;case"M":i.origMeter=i.meter=this.setMeter(o.substring(2));break;case"P":i.is_in_header?s.addMetaText("partOrder",e.translateString(e.stripComment(o.substring(2)))):i.partForNextLine={title:e.translateString(e.stripComment(o.substring(2))),startChar:p,endChar:f};break;case"Q":var g=this.setTempo(o,2,o.length);"delaySet"===g.type?i.tempo=g.tempo:"immediate"===g.type&&(s.metaText.tempo=g.tempo);break;case"T":this.setTitle(o.substring(2));break;case"U":this.addUserDefinition(o,2,o.length);break;case"V":if(a.parseVoice(o,2,o.length),!i.is_in_header)return{newline:!0};break;case"s":return{symbols:!0};case"w":return{words:!0};case"X":break;case"E":case"m":t("Ignored header",o,0);break;default:return u.length&&(u=""+u),{regular:!0,str:o+u}}return u.length>0?{recurse:!0,str:u}:{}}return{regular:!0,str:o}}}},function(e,t,i){var r=i(0);e.exports=function(){this.skipWhiteSpace=function(e){for(var t=0;t<e.length;t++)if(!this.isWhiteSpace(e.charAt(t)))return t;return e.length};var e=function(e,t){return t>=e.length};this.eatWhiteSpace=function(e,t){for(var i=t;i<e.length;i++)if(!this.isWhiteSpace(e.charAt(i)))return i-t;return i-t},this.getKeyPitch=function(t){var i=this.skipWhiteSpace(t);if(e(t,i))return{len:0};switch(t.charAt(i)){case"A":return{len:i+1,token:"A"};case"B":return{len:i+1,token:"B"};case"C":return{len:i+1,token:"C"};case"D":return{len:i+1,token:"D"};case"E":return{len:i+1,token:"E"};case"F":return{len:i+1,token:"F"};case"G":return{len:i+1,token:"G"}}return{len:0}},this.getSharpFlat=function(e){if("bass"===e)return{len:0};switch(e.charAt(0)){case"#":return{len:1,token:"#"};case"b":return{len:1,token:"b"}}return{len:0}},this.getMode=function(t){var i=function(e,t){for(;t<e.length&&(e.charAt(t)>="a"&&e.charAt(t)<="z"||e.charAt(t)>="A"&&e.charAt(t)<="Z");)t++;return t},r=this.skipWhiteSpace(t);if(e(t,r))return{len:0};var n=t.substring(r,r+3).toLowerCase();switch((n.length>1&&" "===n.charAt(1)||"^"===n.charAt(1)||"_"===n.charAt(1)||"="===n.charAt(1))&&(n=n.charAt(0)),n){case"mix":return{len:i(t,r),token:"Mix"};case"dor":return{len:i(t,r),token:"Dor"};case"phr":return{len:i(t,r),token:"Phr"};case"lyd":return{len:i(t,r),token:"Lyd"};case"loc":return{len:i(t,r),token:"Loc"};case"aeo":return{len:i(t,r),token:"m"};case"maj":case"ion":return{len:i(t,r),token:""};case"min":case"m":return{len:i(t,r),token:"m"}}return{len:0}},this.getClef=function(t,i){var n=t,a=this.skipWhiteSpace(t);if(e(t,a))return{len:0};var s=!1,o=t.substring(a);if(r.startsWith(o,"clef=")&&(s=!0,o=o.substring(5),a+=5),0===o.length&&s)return{len:a+5,warn:"No clef specified: "+n};var c=this.skipWhiteSpace(o);if(e(o,c))return{len:0};c>0&&(a+=c,o=o.substring(c));var l=null;if(r.startsWith(o,"treble"))l="treble";else if(r.startsWith(o,"bass3"))l="bass3";else if(r.startsWith(o,"bass"))l="bass";else if(r.startsWith(o,"tenor"))l="tenor";else if(r.startsWith(o,"alto2"))l="alto2";else if(r.startsWith(o,"alto1"))l="alto1";else if(r.startsWith(o,"alto"))l="alto";else if(!i&&s&&r.startsWith(o,"none"))l="none";else if(r.startsWith(o,"perc"))l="perc";else if(!i&&s&&r.startsWith(o,"C"))l="tenor";else if(!i&&s&&r.startsWith(o,"F"))l="bass";else{if(i||!s||!r.startsWith(o,"G"))return{len:a+5,warn:"Unknown clef specified: "+n};l="treble"}return o=o.substring(l.length),(c=this.isMatch(o,"+8"))>0?l+="+8":(c=this.isMatch(o,"-8"))>0&&(l+="-8"),{len:a+l.length,token:l,explicit:s}},this.getBarLine=function(e,t){switch(e.charAt(t)){case"]":switch(++t,e.charAt(t)){case"|":return{len:2,token:"bar_thick_thin"};case"[":return++t,e.charAt(t)>="1"&&e.charAt(t)<="9"||'"'===e.charAt(t)?{len:2,token:"bar_invisible"}:{len:1,warn:"Unknown bar symbol"};default:return{len:1,token:"bar_invisible"}}break;case":":switch(++t,e.charAt(t)){case":":return{len:2,token:"bar_dbl_repeat"};case"|":switch(++t,e.charAt(t)){case"]":switch(++t,e.charAt(t)){case"|":return++t,":"===e.charAt(t)?{len:5,token:"bar_dbl_repeat"}:{len:3,token:"bar_right_repeat"};default:return{len:3,token:"bar_right_repeat"}}break;case"|":return++t,":"===e.charAt(t)?{len:4,token:"bar_dbl_repeat"}:{len:3,token:"bar_right_repeat"};default:return{len:2,token:"bar_right_repeat"}}break;default:return{len:1,warn:"Unknown bar symbol"}}break;case"[":if(++t,"|"!==e.charAt(t))return e.charAt(t)>="1"&&e.charAt(t)<="9"||'"'===e.charAt(t)?{len:1,token:"bar_invisible"}:{len:0};switch(++t,e.charAt(t)){case":":return{len:3,token:"bar_left_repeat"};case"]":return{len:3,token:"bar_invisible"};default:return{len:2,token:"bar_thick_thin"}}break;case"|":switch(++t,e.charAt(t)){case"]":return{len:2,token:"bar_thin_thick"};case"|":return++t,":"===e.charAt(t)?{len:3,token:"bar_left_repeat"}:{len:2,token:"bar_thin_thin"};case":":for(var i=0;":"===e.charAt(t+i);)i++;return{len:1+i,token:"bar_left_repeat"};default:return{len:1,token:"bar_thin"}}}return{len:0}},this.getTokenOf=function(e,t){for(var i=0;i<e.length;i++)if(t.indexOf(e.charAt(i))<0)return{len:i,token:e.substring(0,i)};return{len:i,token:e}},this.getToken=function(e,t,i){for(var r=t;r<i&&!this.isWhiteSpace(e.charAt(r));)r++;return e.substring(t,r)},this.isMatch=function(t,i){var n=this.skipWhiteSpace(t);return e(t,n)?0:r.startsWith(t.substring(n),i)?n+i.length:0},this.getPitchFromTokens=function(e){var t={};if(t.position={A:5,B:6,C:0,D:1,E:2,F:3,G:4,a:12,b:13,c:7,d:8,e:9,f:10,g:11}[e[0].token],void 0===t.position)return{warn:"Pitch expected. Found: "+e[0].token};for(e.shift();e.length;)switch(e[0].token){case",":t.position-=7,e.shift();break;case"'":t.position+=7,e.shift();break;default:return t}return t},this.getKeyAccidentals2=function(e){for(var t;e.length>0;){var i;if("^"===e[0].token){if(i="sharp",e.shift(),0===e.length)return{accs:t,warn:"Expected note name after "+i};switch(e[0].token){case"^":i="dblsharp",e.shift();break;case"/":i="quartersharp",e.shift()}}else if("="===e[0].token)i="natural",e.shift();else{if("_"!==e[0].token)return{accs:t};if(i="flat",e.shift(),0===e.length)return{accs:t,warn:"Expected note name after "+i};switch(e[0].token){case"_":i="dblflat",e.shift();break;case"/":i="quarterflat",e.shift()}}if(0===e.length)return{accs:t,warn:"Expected note name after "+i};switch(e[0].token.charAt(0)){case"a":case"b":case"c":case"d":case"e":case"f":case"g":case"A":case"B":case"C":case"D":case"E":case"F":case"G":void 0===t&&(t=[]),t.push({acc:i,note:e[0].token.charAt(0)}),1===e[0].token.length?e.shift():e[0].token=e[0].token.substring(1);break;default:return{accs:t,warn:"Expected note name after "+i+" Found: "+e[0].token}}}return{accs:t}},this.getKeyAccidental=function(t){var i={"^":"sharp","^^":"dblsharp","=":"natural",_:"flat",__:"dblflat","_/":"quarterflat","^/":"quartersharp"},r=this.skipWhiteSpace(t);if(e(t,r))return{len:0};var n=null;switch(t.charAt(r)){case"^":case"_":case"=":n=t.charAt(r);break;default:return{len:0}}if(e(t,++r))return{len:1,warn:"Expected note name after accidental"};switch(t.charAt(r)){case"a":case"b":case"c":case"d":case"e":case"f":case"g":case"A":case"B":case"C":case"D":case"E":case"F":case"G":return{len:r+1,token:{acc:i[n],note:t.charAt(r)}};case"^":case"_":case"/":if(n+=t.charAt(r),e(t,++r))return{len:2,warn:"Expected note name after accidental"};switch(t.charAt(r)){case"a":case"b":case"c":case"d":case"e":case"f":case"g":case"A":case"B":case"C":case"D":case"E":case"F":case"G":return{len:r+1,token:{acc:i[n],note:t.charAt(r)}};default:return{len:2,warn:"Expected note name after accidental"}}break;default:return{len:1,warn:"Expected note name after accidental"}}},this.isWhiteSpace=function(e){return" "===e||"\t"===e||""===e},this.getMeat=function(e,t,i){var r=e.indexOf("%",t);for(r>=0&&r<i&&(i=r);t<i&&(" "===e.charAt(t)||"\t"===e.charAt(t)||""===e.charAt(t));)t++;for(;t<i&&(" "===e.charAt(i-1)||"\t"===e.charAt(i-1)||""===e.charAt(i-1));)i--;return{start:t,end:i}};var t=function(e){return e>="A"&&e<="Z"||e>="a"&&e<="z"},i=function(e){return e>="0"&&e<="9"};this.tokenize=function(e,r,n,a){var s=this.getMeat(e,r,n);r=s.start,n=s.end;for(var o,c=[];r<n;){if('"'===e.charAt(r)){for(o=r+1;o<n&&'"'!==e.charAt(o);)o++;c.push({type:"quote",token:e.substring(r+1,o),start:r+1,end:o}),o++}else if(t(e.charAt(r))){if(o=r+1,a)for(;o<n&&!this.isWhiteSpace(e.charAt(o));)o++;else for(;o<n&&t(e.charAt(o));)o++;c.push({type:"alpha",token:e.substring(r,o),continueId:i(e.charAt(o)),start:r,end:o}),r=o+1}else if("."===e.charAt(r)&&i(e.charAt(o+1))){o=r+1;for(var l;o<n&&i(e.charAt(o));)o++;l=parseFloat(e.substring(r,o)),c.push({type:"number",token:e.substring(r,o),intt:null,floatt:l,continueId:t(e.charAt(o)),start:r,end:o}),r=o+1}else if(i(e.charAt(r))||"-"===e.charAt(r)&&i(e.charAt(o+1))){o=r+1;for(var h,u=null;o<n&&i(e.charAt(o));)o++;if("."===e.charAt(o)&&i(e.charAt(o+1)))for(o++;o<n&&i(e.charAt(o));)o++;else u=parseInt(e.substring(r,o));h=parseFloat(e.substring(r,o)),c.push({type:"number",token:e.substring(r,o),intt:u,floatt:h,continueId:t(e.charAt(o)),start:r,end:o}),r=o+1}else" "===e.charAt(r)||"\t"===e.charAt(r)?o=r+1:(c.push({type:"punct",token:e.charAt(r),start:r,end:r+1}),o=r+1);r=o}return c},this.getVoiceToken=function(e,t,i){for(var r=t;r<i&&this.isWhiteSpace(e.charAt(r))||"="===e.charAt(r);)r++;if('"'===e.charAt(r)){var n=e.indexOf('"',r+1);return-1===n||n>=i?{len:1,err:"Missing close quote"}:{len:n-t+1,token:this.translateString(e.substring(r+1,n))}}for(var a=r;a<i&&!this.isWhiteSpace(e.charAt(a))&&"="!==e.charAt(a);)a++;return{len:a-t+1,token:e.substring(r,a)}};var n={"`a":"à","'a":"á","^a":"â","~a":"ã",'"a':"ä",oa:"å",aa:"å","=a":"ā",ua:"ă",";a":"ą","`e":"è","'e":"é","^e":"ê",'"e':"ë","=e":"ē",ue:"ĕ",";e":"ę",".e":"ė","`i":"ì","'i":"í","^i":"î",'"i':"ï","=i":"ī",ui:"ĭ",";i":"į","`o":"ò","'o":"ó","^o":"ô","~o":"õ",'"o':"ö","=o":"ō",uo:"ŏ","/o":"ø","`u":"ù","'u":"ú","^u":"û","~u":"ũ",'"u':"ü",ou:"ů","=u":"ū",uu:"ŭ",";u":"ų","`A":"À","'A":"Á","^A":"Â","~A":"Ã",'"A':"Ä",oA:"Å",AA:"Å","=A":"Ā",uA:"Ă",";A":"Ą","`E":"È","'E":"É","^E":"Ê",'"E':"Ë","=E":"Ē",uE:"Ĕ",";E":"Ę",".E":"Ė","`I":"Ì","'I":"Í","^I":"Î","~I":"Ĩ",'"I':"Ï","=I":"Ī",uI:"Ĭ",";I":"Į",".I":"İ","`O":"Ò","'O":"Ó","^O":"Ô","~O":"Õ",'"O':"Ö","=O":"Ō",uO:"Ŏ","/O":"Ø","`U":"Ù","'U":"Ú","^U":"Û","~U":"Ũ",'"U':"Ü",oU:"Ů","=U":"Ū",uU:"Ŭ",";U":"Ų",ae:"æ",AE:"Æ",oe:"œ",OE:"Œ",ss:"ß","'c":"ć","^c":"ĉ",uc:"č",cc:"ç",".c":"ċ",cC:"Ç","'C":"Ć","^C":"Ĉ",uC:"Č",".C":"Ċ","~N":"Ñ","~n":"ñ","=s":"š",vs:"š",DH:"Ð",dh:"ð",HO:"Ő",Ho:"ő",HU:"Ű",Hu:"ű","'Y":"Ý","'y":"ý","^Y":"Ŷ","^y":"ŷ",'"Y':"Ÿ",'"y':"ÿ",vS:"Š",vZ:"Ž",vz:"ž"},a={"#":"♯",b:"♭","=":"♮"},s={201:"♯",202:"♭",203:"♮",241:"¡",242:"¢",252:"a",262:"2",272:"o",302:"Â",312:"Ê",322:"Ò",332:"Ú",342:"â",352:"ê",362:"ò",372:"ú",243:"£",253:"«",263:"3",273:"»",303:"Ã",313:"Ë",323:"Ó",333:"Û",343:"ã",353:"ë",363:"ó",373:"û",244:"¤",254:"¬",264:" ́",274:"1⁄4",304:"Ä",314:"Ì",324:"Ô",334:"Ü",344:"ä",354:"ì",364:"ô",374:"ü",245:"¥",255:"-",265:"μ",275:"1⁄2",305:"Å",315:"Í",325:"Õ",335:"Ý",345:"å",355:"í",365:"õ",375:"ý",246:"¦",256:"®",266:"¶",276:"3⁄4",306:"Æ",316:"Î",326:"Ö",336:"Þ",346:"æ",356:"î",366:"ö",376:"þ",247:"§",257:" ̄",267:"·",277:"¿",307:"Ç",317:"Ï",327:"×",337:"ß",347:"ç",357:"ï",367:"÷",377:"ÿ",250:" ̈",260:"°",270:" ̧",300:"À",310:"È",320:"Ð",330:"Ø",340:"à",350:"è",360:"ð",370:"ø",251:"©",261:"±",271:"1",301:"Á",311:"É",321:"Ñ",331:"Ù",341:"á",351:"é",361:"ñ",371:"ù"};this.translateString=function(e){var t=e.split("\\");if(1===t.length)return e;var i=null;return r.each(t,(function(e){if(null===i)i=e;else{var t=n[e.substring(0,2)];void 0!==t?i+=t+e.substring(2):void 0!==(t=s[e.substring(0,3)])?i+=t+e.substring(3):(t=a[e.substring(0,1)],i+=void 0!==t?t+e.substring(1):"\\"+e)}})),i},this.getNumber=function(e,t){for(var i=0;t<e.length;)switch(e.charAt(t)){case"0":i*=10,t++;break;case"1":i=10*i+1,t++;break;case"2":i=10*i+2,t++;break;case"3":i=10*i+3,t++;break;case"4":i=10*i+4,t++;break;case"5":i=10*i+5,t++;break;case"6":i=10*i+6,t++;break;case"7":i=10*i+7,t++;break;case"8":i=10*i+8,t++;break;case"9":i=10*i+9,t++;break;default:return{num:i,index:t}}return{num:i,index:t}},this.getFraction=function(e,t){var i=1,r=1;if("/"!==e.charAt(t)){var n=this.getNumber(e,t);i=n.num,t=n.index}if("/"===e.charAt(t)){if(t++,"/"===e.charAt(t)){for(var a=.5;"/"===e.charAt(t++);)a/=2;return{value:i*a,index:t-1}}var s=t,o=this.getNumber(e,t);0===o.num&&s===t&&(o.num=2),0!==o.num&&(r=o.num),t=o.index}return{value:i/r,index:t}},this.theReverser=function(e){return r.endsWith(e,", The")?"The "+e.substring(0,e.length-5):r.endsWith(e,", A")?"A "+e.substring(0,e.length-3):e},this.stripComment=function(e){var t=e.indexOf("%");return t>=0?r.strip(e.substring(0,t)):r.strip(e)},this.getInt=function(e){var t=parseInt(e);if(isNaN(t))return{digits:0};var i=""+t;return{value:t,digits:e.indexOf(i)+i.length}},this.getFloat=function(e){var t=parseFloat(e);if(isNaN(t))return{digits:0};var i=""+t;return{value:t,digits:e.indexOf(i)+i.length}},this.getMeasurement=function(e){if(0===e.length)return{used:0};var t=1,i="";if("-"===e[0].token)e.shift(),i="-",t++;else if("number"!==e[0].type)return{used:0};if(i+=e.shift().token,0===e.length)return{used:1,value:parseInt(i)};var r=e.shift();if("."===r.token){if(t++,0===e.length)return{used:t,value:parseInt(i)};if("number"===e[0].type&&(i=i+"."+(r=e.shift()).token,t++,0===e.length))return{used:t,value:parseFloat(i)};r=e.shift()}switch(r.token){case"pt":return{used:t+1,value:parseFloat(i)};case"cm":return{used:t+1,value:parseFloat(i)/2.54*72};case"in":return{used:t+1,value:72*parseFloat(i)};default:return e.unshift(r),{used:t,value:parseFloat(i)}}return{used:0}};var o=function(e){for(;-1!==e.indexOf("\\n");)e=e.replace("\\n","\n");return e};this.getBrackettedSubstring=function(e,t,i,r){for(var n=r||e.charAt(t),a=t+1;a<e.length&&e.charAt(a)!==n;)++a;return e.charAt(a)===n?[a-t+1,o(e.substring(t+1,a)),!0]:((a=t+i)>e.length-1&&(a=e.length-1),[a-t+1,o(e.substring(t+1,a)),!1])}}},function(e,t,i){var r=i(9),n=i(18),a=i(19),s=i(10),o=i(17),c={};function l(){var e=window.innerWidth;for(var t in c)if(c.hasOwnProperty(t)){var i=c[t];e-=2*i.offsetLeft,i.style.width=e+"px"}}function h(e,t,i,r){i.viewportHorizontal?(e.innerHTML='<div class="abcjs-inner"></div>',i.scrollHorizontal?(e.style.overflowX="auto",e.style.overflowY="hidden"):e.style.overflow="hidden",c[e.id]=e,e=e.children[0]):i.viewportVertical?(e.innerHTML='<div class="abcjs-inner scroll-amount"></div>',e.style.overflowX="hidden",e.style.overflowY="auto",e=e.children[0]):e.innerHTML="";var n=new a(e,i);(n.engraveABC(t,r),t.engraver=n,i.viewportVertical||i.viewportHorizontal)&&(e.parentNode.style.width=e.style.width)}function u(e,t,i,r){function a(e){var t=new n;return t.formatting=e.formatting,t.media=e.media,t.version=e.version,t.metaText={},t.lines=[],t}for(var s,o=[],c=0;c<t.lines.length;c++){var l=t.lines[c];s||(s=a(t)),0===c&&(s.metaText.tempo=t.metaText.tempo,s.metaText.title=t.metaText.title,s.metaText.header=t.metaText.header,s.metaText.rhythm=t.metaText.rhythm,s.metaText.origin=t.metaText.origin,s.metaText.composer=t.metaText.composer,s.metaText.author=t.metaText.author,s.metaText.partOrder=t.metaText.partOrder),s.lines.push(l),l.staff&&(o.push(s),s=void 0)}if(s)for(var u=o[o.length-1],d=0;d<s.lines.length;d++)u.lines.push(s.lines[d]);(s=o[o.length-1]).metaText.unalignedWords=t.metaText.unalignedWords,s.metaText.book=t.metaText.book,s.metaText.source=t.metaText.source,s.metaText.discography=t.metaText.discography,s.metaText.notes=t.metaText.notes,s.metaText.transcription=t.metaText.transcription,s.metaText.history=t.metaText.history,s.metaText["abc-copyright"]=t.metaText["abc-copyright"],s.metaText["abc-creator"]=t.metaText["abc-creator"],s.metaText["abc-edited-by"]=t.metaText["abc-edited-by"],s.metaText.footer=t.metaText.footer;var p={};for(var f in i)i.hasOwnProperty(f)&&(p[f]=i[f]);var m=p.paddingtop,g=p.paddingbottom;e.innerHTML="";for(var v=0;v<o.length;v++){var b=document.createElement("div");e.appendChild(b),0===v?(p.paddingtop=m,p.paddingbottom=-20):v===o.length-1?(p.paddingtop=10,p.paddingbottom=g):(p.paddingtop=10,p.paddingbottom=-20),h(b,o[v],p,r),0===v?t.engraver=o[v].engraver:t.engraver.staffgroups?o[v].engraver.staffgroups.length>0&&t.engraver.staffgroups.push(o[v].engraver.staffgroups[0]):t.engraver.staffgroups=o[v].engraver.staffgroups}}window.addEventListener("resize",l),window.addEventListener("orientationChange",l);e.exports=function(e,t,i,n,c){var l,d={};if(i)for(l in i)i.hasOwnProperty(l)&&(d[l]=i[l]);if(n)for(l in n)n.hasOwnProperty(l)&&("listener"===l?n[l].highlight&&(d.clickListener=n[l].highlight):d[l]=n[l]);if(c)for(l in c)c.hasOwnProperty(l)&&(d[l]=c[l]);return r.renderEngine((function(e,t,i,r){return d.afterParsing&&d.afterParsing(t,i,r),d.wrap&&d.staffwidth?t=function(e,t,i,r,n){var c=new a(e,n),l=c.getMeasureWidths(t),d=o.calcLineWraps(t,l,r,n,s,c);!n.oneSvgPerLine||d.tune.lines.length<2?h(e,d.tune,d.revisedParams,i):u(e,d.tune,d.revisedParams,i);return d.tune.explanation=d.explanation,d.tune}(e,t,i,r,d):(!d.oneSvgPerLine||t.lines.length<2?h(e,t,d,i):u(e,t,d,i),null)}),e,t,d)}},function(e,t,i){var r,n=i(4),a=i(35),s=i(36),o=i(37),c=i(38),l=i(39),h=i(40),u=i(43),d=i(3),p=i(2),f=i(1),m=i(44),g=i(45),v=i(20),b=i(46),y=i(47),w=i(0);!function(){"use strict";var e=function(e){var t=0;return e.duration&&(t=e.duration),t},t=!1,i={rest:{0:"rests.whole",1:"rests.half",2:"rests.quarter",3:"rests.8th",4:"rests.16th",5:"rests.32nd",6:"rests.64th",7:"rests.128th",multi:"rests.multimeasure"},note:{"-1":"noteheads.dbl",0:"noteheads.whole",1:"noteheads.half",2:"noteheads.quarter",3:"noteheads.quarter",4:"noteheads.quarter",5:"noteheads.quarter",6:"noteheads.quarter",7:"noteheads.quarter",nostem:"noteheads.quarter"},rhythm:{"-1":"noteheads.slash.whole",0:"noteheads.slash.whole",1:"noteheads.slash.whole",2:"noteheads.slash.quarter",3:"noteheads.slash.quarter",4:"noteheads.slash.quarter",5:"noteheads.slash.quarter",6:"noteheads.slash.quarter",7:"noteheads.slash.quarter",nostem:"noteheads.slash.nostem"},x:{"-1":"noteheads.indeterminate",0:"noteheads.indeterminate",1:"noteheads.indeterminate",2:"noteheads.indeterminate",3:"noteheads.indeterminate",4:"noteheads.indeterminate",5:"noteheads.indeterminate",6:"noteheads.indeterminate",7:"noteheads.indeterminate",nostem:"noteheads.indeterminate"},harmonic:{"-1":"noteheads.harmonic.quarter",0:"noteheads.harmonic.quarter",1:"noteheads.harmonic.quarter",2:"noteheads.harmonic.quarter",3:"noteheads.harmonic.quarter",4:"noteheads.harmonic.quarter",5:"noteheads.harmonic.quarter",6:"noteheads.harmonic.quarter",7:"noteheads.harmonic.quarter",nostem:"noteheads.harmonic.quarter"},uflags:{3:"flags.u8th",4:"flags.u16th",5:"flags.u32nd",6:"flags.u64th"},dflags:{3:"flags.d8th",4:"flags.d16th",5:"flags.d32nd",6:"flags.d64th"}};function k(e,t){var i=e[t];if("note"!==i.el_type||!i.startBeam||i.endBeam)return{count:1,elem:i};for(var r=[];t<e.length&&"note"===e[t].el_type&&(r.push(e[t]),!e[t].endBeam);)t++;return{count:r.length,elem:r}}function x(e){if(e.pitches){S(e);for(var t=0,i=0;i<e.pitches.length;i++)t+=e.pitches[i].verticalPos;e.averagepitch=t/e.pitches.length,e.minpitch=e.pitches[0].verticalPos,e.maxpitch=e.pitches[e.pitches.length-1].verticalPos}}(r=function(e,t,i){this.decoration=new h,this.renderer=e,this.tuneNumber=t,this.isBagpipes=i.bagpipes,this.flatBeams=i.flatbeams,this.reset()}).prototype.reset=function(){this.slurs={},this.ties=[],this.voiceScale=1,this.slursbyvoice={},this.tiesbyvoice={},this.endingsbyvoice={},this.scaleByVoice={},this.tripletmultiplier=1,this.abcline=void 0,this.accidentalSlot=void 0,this.accidentalshiftx=void 0,this.dotshiftx=void 0,this.hasVocals=!1,this.minY=void 0,this.partstartelem=void 0,this.startlimitelem=void 0,this.stemdir=void 0},r.prototype.setStemHeight=function(e){this.stemHeight=e/f.STEP},r.prototype.getCurrentVoiceId=function(e,t){return"s"+e+"v"+t},r.prototype.pushCrossLineElems=function(e,t){this.slursbyvoice[this.getCurrentVoiceId(e,t)]=this.slurs,this.tiesbyvoice[this.getCurrentVoiceId(e,t)]=this.ties,this.endingsbyvoice[this.getCurrentVoiceId(e,t)]=this.partstartelem,this.scaleByVoice[this.getCurrentVoiceId(e,t)]=this.voiceScale},r.prototype.popCrossLineElems=function(e,t){this.slurs=this.slursbyvoice[this.getCurrentVoiceId(e,t)]||{},this.ties=this.tiesbyvoice[this.getCurrentVoiceId(e,t)]||[],this.partstartelem=this.endingsbyvoice[this.getCurrentVoiceId(e,t)],this.voiceScale=this.scaleByVoice[this.getCurrentVoiceId(e,t)],void 0===this.voiceScale&&(this.voiceScale=1)},r.prototype.containsLyrics=function(e){for(var t=0;t<e.length;t++)for(var i=0;i<e[t].voices.length;i++)for(var r=0;r<e[t].voices[i].length;r++){var n=e[t].voices[i][r];if(n.lyric)return void(n.positioning&&"below"!==n.positioning.vocalPosition||(this.hasVocals=!0))}},r.prototype.createABCLine=function(e,i){this.minY=2,this.containsLyrics(e);var r=new m;this.tempoSet=!1;for(var n=0;n<e.length;n++)t&&this.restoreState(),t=!1,this.createABCStaff(r,e[n],i,n);return r},r.prototype.createABCStaff=function(e,t,i,r){for(var n=0;n<t.voices.length;n++){var a=new y(n,t.voices.length);0===n?(a.barfrom="start"===t.connectBarLines||"continue"===t.connectBarLines,a.barto="continue"===t.connectBarLines||"end"===t.connectBarLines):a.duplicate=!0,t.title&&t.title[n]&&(a.header=t.title[n]);var h=o(t.clef,this.tuneNumber);h&&(0===n&&t.barNumber&&this.addMeasureNumber(t.barNumber,h),a.addChild(h));var u=c(t.key,this.tuneNumber);if(u&&(a.addChild(u),this.startlimitelem=u),t.meter){"specified"===t.meter.type?this.measureLength=t.meter.value[0].num/t.meter.value[0].den:this.measureLength=1;var d=l(t.meter,this.tuneNumber);a.addChild(d),this.startlimitelem=d}a.duplicate&&(a.children=[]);var p=t.clef.stafflines||0===t.clef.stafflines?t.clef.stafflines:5;e.addVoice(a,r,p);var f=1===p;this.createABCVoice(t.voices[n],i,r,n,f,a),e.setStaffLimits(a),"start"===t.brace?e.brace=new s(1,!0):"end"===t.brace&&e.brace?e.brace.increaseStavesIncluded():"continue"===t.brace&&e.brace&&e.brace.increaseStavesIncluded()}},r.prototype.createABCVoice=function(e,i,r,a,s,o){this.popCrossLineElems(r,a),this.stemdir=this.isBagpipes?"down":null,this.abcline=e,this.partstartelem&&(this.partstartelem=new u("",null,null),o.addOther(this.partstartelem));var c=o.voicetotal<2?-1:o.voicenumber;for(var l in this.slurs)this.slurs.hasOwnProperty(l)&&(this.slurs[l]=new v({force:this.slurs[l].force,voiceNumber:c,stemDir:this.slurs[l].stemDir}),t&&this.slurs[l].setHint(),o.addOther(this.slurs[l]));for(var h=0;h<this.ties.length;h++)this.ties[h]=new v({force:this.ties[h].force,stemDir:this.ties[h].stemDir,voiceNumber:c}),t&&this.ties[h].setHint(),o.addOther(this.ties[h]);for(var d=0;d<this.abcline.length;d++)x(this.abcline[d]),this.minY=Math.min(this.abcline[d].minpitch,this.minY);for(var p=0===r,f=0;f<this.abcline.length;){var m=k(this.abcline,f),b=this.createABCElement(p,s,o,m.elem);if(b)for(h=0;h<b.length;h++){if(!this.tempoSet&&i&&!i.suppress){this.tempoSet=!0;var y=new n(m.elem,0,0,"tempo",this.tuneNumber,{});y.addChild(new g(i,this.tuneNumber,A)),o.addChild(y)}o.addChild(b[h])}f+=m.count}this.pushCrossLineElems(r,a)},r.prototype.saveState=function(){this.tiesSave=w.cloneArray(this.ties),this.slursSave=w.cloneHashOfHash(this.slurs),this.slursbyvoiceSave=w.cloneHashOfHash(this.slursbyvoice),this.tiesbyvoiceSave=w.cloneHashOfArrayOfHash(this.tiesbyvoice)},r.prototype.restoreState=function(){this.ties=w.cloneArray(this.tiesSave),this.slurs=w.cloneHashOfHash(this.slursSave),this.slursbyvoice=w.cloneHashOfHash(this.slursbyvoiceSave),this.tiesbyvoice=w.cloneHashOfArrayOfHash(this.tiesbyvoiceSave)},r.prototype.createABCElement=function(e,i,r,a){var s=[];switch(a.el_type){case void 0:s=this.createBeam(i,r,a);break;case"note":s[0]=this.createNote(a,!1,i,r),this.triplet&&this.triplet.isClosed()&&(r.addOther(this.triplet),this.triplet=null,this.tripletmultiplier=1);break;case"bar":s[0]=this.createBarLine(r,a,e),r.duplicate&&s.length>0&&(s[0].invisible=!0);break;case"meter":s[0]=l(a,this.tuneNumber),this.startlimitelem=s[0],r.duplicate&&s.length>0&&(s[0].invisible=!0);break;case"clef":if(s[0]=o(a,this.tuneNumber),!s[0])return null;r.duplicate&&s.length>0&&(s[0].invisible=!0);break;case"key":var h=c(a,this.tuneNumber);h&&(s[0]=h,this.startlimitelem=s[0]),r.duplicate&&s.length>0&&(s[0].invisible=!0);break;case"stem":this.stemdir=a.direction;break;case"part":var u=new n(a,0,0,"part",this.tuneNumber),d=this.renderer.getTextSize(a.title,"partsfont","part");u.addChild(new p(a.title,0,0,void 0,{type:"part",height:d.height/f.STEP})),s[0]=u;break;case"tempo":var m=new n(a,0,0,"tempo",this.tuneNumber);m.addChild(new g(a,this.tuneNumber,A)),s[0]=m;break;case"style":"normal"===a.head?delete this.style:this.style=a.head;break;case"hint":t=!0,this.saveState();break;case"midi":break;case"scale":this.voiceScale=a.size;break;default:var v=new n(a,0,0,"unsupported",this.tuneNumber);v.addChild(new p("element type "+a.el_type,0,0,void 0,{type:"debug"})),s[0]=v}return s},r.prototype.calcBeamDir=function(e,t,i){if(this.stemdir)return this.stemdir;for(var r=new a(this.stemHeight*this.voiceScale,this.stemdir,this.flatBeams),n=0;n<i.length;n++)r.add({abcelem:i[n]});return r.calcDir()?"up":"down"},r.prototype.createBeam=function(e,i,r){var n=[],s=this.calcBeamDir(e,i,r),o=new a(this.stemHeight*this.voiceScale,s,this.flatBeams);t&&o.setHint();var c=this.stemdir;this.stemdir=s;for(var l=0;l<r.length;l++){var h=r[l],u=this.createNote(h,!0,e,i);n.push(u),o.add(u),this.triplet&&this.triplet.isClosed()&&(i.addOther(this.triplet),this.triplet=null,this.tripletmultiplier=1)}return this.stemdir=c,i.addBeam(o),n};var S=function(e){var t;do{t=!0;for(var i=0;i<e.pitches.length-1;i++)if(e.pitches[i].pitch>e.pitches[i+1].pitch){t=!1;var r=e.pitches[i];e.pitches[i]=e.pitches[i+1],e.pitches[i+1]=r}}while(!t)},_=function(e,t,i,r,n,a,s,o,c){for(var l=i;l>11;l--)l%2!=0||r||e.addChild(new p(null,o,(n+4)*c,l,{type:"ledger"}));for(l=t;l<1;l++)l%2!=0||r||e.addChild(new p(null,o,(n+4)*c,l,{type:"ledger"}));for(l=0;l<a.length;l++){var h=n;"down"===s&&(h=-h),e.addChild(new p(null,h+o,(n+4)*c,a[l],{type:"ledger"}))}};function T(e,t){for(var i=0;i<e.length;i++)if(JSON.stringify(e[i])===JSON.stringify(t))return;e.push(t)}r.prototype.addGraceNotes=function(e,r,n,s,o,c,l){var h,u=null;e.gracenotes.length>1&&(u=new a(.7*o,"grace",c),t&&u.setHint(),u.mainNote=n);var f,m=[];for(f=e.gracenotes.length-1;f>=0;f--)l+=10,m[f]=l,e.gracenotes[f].accidental&&(l+=7);for(f=0;f<e.gracenotes.length;f++){var g=e.gracenotes[f].verticalPos;h=u?null:i.uflags[c?5:3];var b=A(n,"noteheads.quarter",e.gracenotes[f],"up",-m[f],-m[f],h,0,0,.6*this.voiceScale,[],!1);b.notehead.highestVert=b.notehead.pitch+.7*o;var y=b.notehead;if(this.addSlursAndTies(n,e.gracenotes[f],y,r,"up",!0),n.addExtra(y),e.gracenotes[f].acciaccatura){var w=e.gracenotes[f].verticalPos+4.2,k=u?5:6;n.addRight(new p("flags.ugrace",-m[f]+k,0,w,{scalex:.6,scaley:.6}))}if(u){var x=e.gracenotes[f].duration/2;c&&(x/=2);var S={heads:[y],abcelem:{averagepitch:g,minpitch:g,maxpitch:g,duration:x}};u.add(S)}else{var T=g+1/3*.6,C=g+4.2,N=y.dx+y.w;n.addExtra(new p(null,N,0,T,{type:"stem",pitch2:C,linewidth:-.6}))}if(_(n,g,g,!1,d.getSymbolWidth("noteheads.quarter"),[],!0,y.dx-1,.6),0===f&&!c&&(!e.rest||"spacer"!==e.rest.type&&"invisible"!==e.rest.type)){1===e.gracenotes.length&&(y.pitch,s.pitch);r.addOther(new v({anchor1:y,anchor2:s,isGrace:!0}))}}return u&&r.addBeam(u),l},r.prototype.addNoteToAbcElement=function(t,r,n,a,s,o,c,l,h){var u,f,m,g,v,b=0,y=0,w=0,k=[],x=[],S=0,_=r.averagepitch>=6?"down":"up";for(a&&(_=a),(s=r.style?r.style:s)&&"normal"!==s||(s="note"),(g=o?i[s].nostem:i[s][-c])||console.log("noteSymbol:",s,c,o),v="down"===_?r.pitches.length-2:1;"down"===_?v>=0:v<r.pitches.length;v="down"===_?v-1:v+1){var C=r.pitches["down"===_?v+1:v-1],N=r.pitches[v],E="down"===_?C.pitch-N.pitch:N.pitch-C.pitch;E<=1&&!C.printer_shift&&(N.printer_shift=E?"different":"same",(N.verticalPos>11||N.verticalPos<1)&&k.push(N.verticalPos-N.verticalPos%2),"down"===_?y=d.getSymbolWidth(g)+2:b=d.getSymbolWidth(g)+2)}var M=r.pitches.length;for(v=0;v<r.pitches.length;v++){var B,P;if(!l)B="down"===_&&0!==v||"up"===_&&v!==M-1?null:i["down"===_?"dflags":"uflags"][-c];if(P=r.pitches[v].style?i[r.pitches[v].style][-c]:g,r.pitches[v].highestVert=r.pitches[v].verticalPos,("up"===a||"up"===_)&&0===v||("down"===a||"down"===_)&&v===M-1){if((r.startSlur||1===M)&&(r.pitches[v].highestVert=r.pitches[M-1].verticalPos,e(r)<1&&("up"===a||"up"===_)&&(r.pitches[v].highestVert+=6)),r.startSlur)for(r.pitches[v].startSlur||(r.pitches[v].startSlur=[]),m=0;m<r.startSlur.length;m++)T(r.pitches[v].startSlur,r.startSlur[m]);if(r.endSlur)for(r.pitches[v].highestVert=r.pitches[M-1].verticalPos,e(r)<1&&("up"===a||"up"===_)&&(r.pitches[v].highestVert+=6),r.pitches[v].endSlur||(r.pitches[v].endSlur=[]),m=0;m<r.endSlur.length;m++)T(r.pitches[v].endSlur,r.endSlur[m])}var L=!l&&c<=-1,H=A(t,P,r.pitches[v],_,0,-y,B,n,b,this.voiceScale,x,!a);S=Math.max(d.getSymbolWidth(P),S),t.extraw-=H.extraLeft,(u=H.notehead)&&(this.addSlursAndTies(t,r.pitches[v],u,h,L?_:null,!1),r.gracenotes&&r.gracenotes.length>0&&(u.bottom=u.bottom-1),t.addHead(u)),y+=H.accidentalshiftx,w=Math.max(w,H.dotshiftx)}if(L){var z=7*this.voiceScale,I="down"===_?r.minpitch-z:r.minpitch+1/3;I>6&&!a&&(I=6);var D="down"===_?r.maxpitch-1/3:r.maxpitch+z;D<6&&!a&&(D=6);var O="down"===_||0===t.heads.length?0:t.heads[0].w,F="down"===_?1:-1;"noteheads.slash.quarter"===u.c&&("down"===_?D-=1:I+=1),t.addExtra(new p(null,O,0,I,{type:"stem",pitch2:D,linewidth:F})),f=Math.min(I,D)}return{noteHead:u,roomTaken:y,roomTakenRight:w,min:f,additionalLedgers:k,dir:_,symbolWidth:S}},r.prototype.addLyric=function(e,t){var i="";w.each(t.lyric,(function(e){var t=" "===e.divider?"":e.divider;i+=e.syllable+t+"\n"}));var r=this.renderer.getTextSize(i,"vocalfont","lyric"),n=t.positioning?t.positioning.vocalPosition:"below";e.addCentered(new p(i,0,r.width,void 0,{type:"lyric",position:n,height:r.height/f.STEP}))},r.prototype.addChord=function(e,t,i,r){for(var n=0;n<t.chord.length;n++){var a,s=0,o=this.renderer.getTextSize(t.chord[n].name,"annotationfont","annotation"),c=o.width,l=o.height/f.STEP;switch(t.chord[n].position){case"left":s=-(i+=c+7),a=t.averagepitch,e.addExtra(new p(t.chord[n].name,s,c+4,a,{type:"text",height:l}));break;case"right":s=r+=4,a=t.averagepitch,e.addRight(new p(t.chord[n].name,s,c+4,a,{type:"text",height:l}));break;case"below":e.addRight(new p(t.chord[n].name,0,c+8,void 0,{type:"text",position:"below",height:l}));break;case"above":e.addRight(new p(t.chord[n].name,0,c+8,void 0,{type:"text",height:l}));break;default:if(t.chord[n].rel_position){var h=t.chord[n].rel_position.y+3*f.STEP;e.addChild(new p(t.chord[n].name,s+t.chord[n].rel_position.x,0,t.minpitch+h/f.STEP,{type:"text",height:l}))}else{var u="above";t.positioning&&t.positioning.chordPosition&&(u=t.positioning.chordPosition),l=(o=this.renderer.getTextSize(t.chord[n].name,"gchordfont","chord")).height/f.STEP,c=o.width,e.addCentered(new p(t.chord[n].name,s,c,void 0,{type:"chord",position:u,height:l}))}}}return{roomTaken:i,roomTakenRight:r}},r.prototype.createNote=function(r,a,s,o){var c,l=null,h=0,u=0,f=0,m=[],g=e(r),v=!1;0===g&&(v=!0,g=.25,a=!0);for(var y=Math.floor(Math.log(g)/Math.log(2)),w=0,k=Math.pow(2,y),x=k/2;k<g;w++,k+=x,x/=2);r.startTriplet&&(this.tripletmultiplier=r.tripletMultiplier);var S=g*this.tripletmultiplier;r.rest&&"multimeasure"===r.rest.type&&(S=1);var T=r.rest?"rest":"note",C=new n(r,S,1,T,this.tuneNumber,{durationClassOveride:r.duration*this.tripletmultiplier});if(t&&C.setHint(),r.rest){this.measureLength===g&&"invisible"!==r.rest.type&&"spacer"!==r.rest.type&&(r.rest.type="whole");var N=function(e,t,r,n,a,s,o,c,l){var h,u,f,m,g=7;switch(a&&("down"===s&&(g=3),"up"===s&&(g=11)),o&&(g=r<.5?7:r<1?7:5),t.rest.type){case"whole":h=i.rest[0],t.averagepitch=g,t.minpitch=g,t.maxpitch=g,n=0;break;case"rest":h="rhythm"===t.style?i.rhythm[-c]:i.rest[-c],t.averagepitch=g,t.minpitch=g,t.maxpitch=g;break;case"invisible":case"spacer":h="",t.averagepitch=g,t.minpitch=g,t.maxpitch=g;break;case"multimeasure":h=i.rest.multi,t.averagepitch=g,t.minpitch=g,t.maxpitch=g,n=0;var v=d.getSymbolWidth(h);e.addHead(new p(h,-v,2*v,7));var b=new p(""+t.duration,0,v,16,{type:"multimeasure-text"});e.addExtra(b)}if("multimeasure"!==t.rest.type){var y=A(e,h,{verticalPos:g},null,0,0,null,n,0,l,[],!1);(u=y.notehead)&&(e.addHead(u),f=y.accidentalshiftx,m=y.dotshiftx)}return{noteHead:u,roomTaken:f,roomTakenRight:m}}(C,r,g,w,o.voicetotal>1,this.stemdir,s,y,this.voiceScale);l=N.noteHead,h=N.roomTaken,u=N.roomTakenRight}else{var E=this.addNoteToAbcElement(C,r,w,this.stemdir,this.style,v,y,a,o);void 0!==E.min&&(this.minY=Math.min(E.min,this.minY)),l=E.noteHead,h=E.roomTaken,u=E.roomTakenRight,m=E.additionalLedgers,c=E.dir,f=E.symbolWidth}if(void 0!==r.lyric&&this.addLyric(C,r),void 0!==r.gracenotes&&(h+=this.addGraceNotes(r,o,C,l,this.stemHeight*this.voiceScale,this.isBagpipes,h)),r.decoration&&this.decoration.createDecoration(o,r.decoration,C.top,l?l.w:0,C,h,c,C.bottom,r.positioning,this.hasVocals),r.barNumber&&C.addChild(new p(r.barNumber,-10,0,0,{type:"barNumber"})),_(C,r.minpitch,r.maxpitch,r.rest,f,m,c,-2,1),void 0!==r.chord){var M=this.addChord(C,r,h,u);h=M.roomTaken,u=M.roomTakenRight}return r.startTriplet&&(this.triplet=new b(r.startTriplet,l,{flatBeams:this.flatBeams})),r.endTriplet&&this.triplet&&this.triplet.setCloseAnchor(l),!this.triplet||r.startTriplet||r.endTriplet||this.triplet.middleNote(l),C};var A=function(e,t,i,r,n,a,s,o,c,l,h,u){var f,m=i.verticalPos,g=0,v=0,b=0;if(void 0===t)e.addChild(new p("pitch is undefined",0,0,0,{type:"debug"}));else if(""===t)f=new p(null,0,0,m);else{var y=n;if(i.printer_shift){var w="same"===i.printer_shift?1:0;y="down"===r?-d.getSymbolWidth(t)*l+w:d.getSymbolWidth(t)*l-w}var k={scalex:l,scaley:l,thickness:d.symbolHeightInPitches(t)*l};if((f=new p(t,y,d.getSymbolWidth(t)*l,m,k)).stemDir=r,s){var x=m+("down"===r?-7:7)*l;u&&("down"===r&&x>6&&(x=6),"up"===r&&x<6&&(x=6));var S="down"===r?n:n+f.w-.6;e.addRight(new p(s,S,d.getSymbolWidth(s)*l,x,{scalex:l,scaley:l}))}for(v=f.w+c-2+5*o;o>0;o--){var _=1-Math.abs(m)%2;e.addRight(new p("dots.dot",f.w+c-2+5*o,d.getSymbolWidth("dots.dot"),m+_))}}if(f&&(f.highestVert=i.highestVert),i.accidental){var T;switch(i.accidental){case"quartersharp":T="accidentals.halfsharp";break;case"dblsharp":T="accidentals.dblsharp";break;case"sharp":T="accidentals.sharp";break;case"quarterflat":T="accidentals.halfflat";break;case"flat":T="accidentals.flat";break;case"dblflat":T="accidentals.dblflat";break;case"natural":T="accidentals.nat"}for(var A=!1,C=a,N=0;N<h.length;N++)if(m-h[N][0]>=6){h[N][0]=m,C=h[N][1],A=!0;break}!1===A&&(C-=d.getSymbolWidth(T)*l+2,h.push([m,C]),g=d.getSymbolWidth(T)*l+2),e.addExtra(new p(T,C,d.getSymbolWidth(T),m,{scalex:l,scaley:l})),b=d.getSymbolWidth(T)/2}return{notehead:f,accidentalshiftx:g,dotshiftx:v,extraLeft:b}};r.prototype.addSlursAndTies=function(e,i,r,n,a,s){if(i.endTie&&this.ties.length>0){for(var o=!1,c=0;c<this.ties.length;c++)if(this.ties[c].anchor1&&this.ties[c].anchor1.pitch===r.pitch){this.ties[c].setEndAnchor(r),this.ties.splice(c,1),o=!0;break}o||(this.ties[0].setEndAnchor(r),this.ties.splice(0,1))}var l=n.voicetotal<2?-1:n.voicenumber;if(i.startTie){var h=new v({anchor1:r,force:"down"===this.stemdir||"up"===this.stemdir,stemDir:this.stemdir,isGrace:s,voiceNumber:l});t&&h.setHint(),this.ties[this.ties.length]=h,n.addOther(h),e.startTie=!0}if(i.endSlur)for(var u=0;u<i.endSlur.length;u++){var d=i.endSlur[u];this.slurs[d]?((f=this.slurs[d]).setEndAnchor(r),delete this.slurs[d]):(f=new v({anchor2:r,stemDir:this.stemdir,voiceNumber:l}),t&&f.setHint(),n.addOther(f)),this.startlimitelem&&f.setStartX(this.startlimitelem)}else if(!s)for(var p in this.slurs)this.slurs.hasOwnProperty(p)&&this.slurs[p].addInternalNote(r);if(i.startSlur)for(u=0;u<i.startSlur.length;u++){d=i.startSlur[u].label;var f=new v({anchor1:r,stemDir:this.stemdir,voiceNumber:l});t&&f.setHint(),this.slurs[d]=f,n.addOther(f)}},r.prototype.addMeasureNumber=function(e,t){var i=this.renderer.getTextSize(e,"measurefont","bar-number");t.addChild(new p(e,0,0,11+i.height/f.STEP,{type:"barNumber"}))},r.prototype.createBarLine=function(e,t,i){var r=new n(t,0,10,"bar",this.tuneNumber),a=null,s=0;t.barNumber&&this.addMeasureNumber(t.barNumber,r);var o="bar_right_repeat"===t.type||"bar_dbl_repeat"===t.type,c="bar_left_repeat"!==t.type&&"bar_thick_thin"!==t.type&&"bar_invisible"!==t.type,l="bar_right_repeat"===t.type||"bar_dbl_repeat"===t.type||"bar_left_repeat"===t.type||"bar_thin_thick"===t.type||"bar_thick_thin"===t.type,h="bar_left_repeat"===t.type||"bar_thick_thin"===t.type||"bar_thin_thin"===t.type||"bar_dbl_repeat"===t.type,d="bar_left_repeat"===t.type||"bar_dbl_repeat"===t.type;if(o||d){for(var f in this.slurs)this.slurs.hasOwnProperty(f)&&this.slurs[f].setEndX(r);this.startlimitelem=r}if(o&&(r.addRight(new p("dots.dot",s,1,7)),r.addRight(new p("dots.dot",s,1,5)),s+=6),c&&(a=new p(null,s,1,2,{type:"bar",pitch2:10,linewidth:.6}),r.addRight(a)),"bar_invisible"===t.type&&(a=new p(null,s,1,2,{type:"none",pitch2:10,linewidth:.6}),r.addRight(a)),t.decoration&&this.decoration.createDecoration(e,t.decoration,12,l?3:1,r,0,"down",2,t.positioning,this.hasVocals),l&&(a=new p(null,s+=4,4,2,{type:"bar",pitch2:10,linewidth:4}),r.addRight(a),s+=5),this.partstartelem&&t.endEnding&&(this.partstartelem.anchor2=a,this.partstartelem=null),h&&(a=new p(null,s+=3,1,2,{type:"bar",pitch2:10,linewidth:.6}),r.addRight(a)),d&&(s+=3,r.addRight(new p("dots.dot",s,1,7)),r.addRight(new p("dots.dot",s,1,5))),t.startEnding&&i){var m=this.renderer.getTextSize(t.startEnding,"repeatfont","").width;r.minspacing+=m+10,this.partstartelem=new u(t.startEnding,a,null),e.addOther(this.partstartelem)}return r.extraw-=5,r}}(),e.exports=r},function(e,t,i){i(4);var r,n=i(2),a=i(1),s=function(e){return void 0===e?0:Math.floor(Math.log(e)/Math.log(2))};!function(){"use strict";(r=function(e,t,i){this.isflat=i,this.isgrace=t&&"grace"===t,this.forceup=this.isgrace||t&&"up"===t,this.forcedown=t&&"down"===t,this.elems=[],this.total=0,this.allrests=!0,this.stemHeight=e,this.beams=[]}).prototype.setHint=function(){this.hint=!0},r.prototype.add=function(e){var t=e.abcelem.averagepitch;void 0!==t&&(this.allrests=this.allrests&&e.abcelem.rest,e.beam=this,this.elems.push(e),this.total+=t,(void 0===this.min||e.abcelem.minpitch<this.min)&&(this.min=e.abcelem.minpitch),(void 0===this.max||e.abcelem.maxpitch>this.max)&&(this.max=e.abcelem.maxpitch))};function e(e,t,i,r){if(!e.children)return r;for(var n=0;n<e.children.length;n++){var a=e.children[n];t&&void 0!==a.top&&"flags.ugrace"===a.c?r=Math.max(r,a.top-i):t||void 0===a.bottom||"flags.ugrace"!==a.c||(r=Math.max(r,i-a.bottom+7))}return r}function t(e,t){return t?e/t:0}function i(e,t,i,r,n){return t+(r-t)/(i-e)*(n-e)}function o(e,t,i,r,n,a,s){var o="beam-elem";s&&(o+=" abcjs-hint");var c="M"+t+" "+(i=e.calcY(i))+" L"+r+" "+(n=e.calcY(n))+"L"+r+" "+(n+a)+" L"+t+" "+(i+a)+"z";e.printPath({path:c,stroke:"none",fill:"#000000",class:e.addClasses(o)})}r.prototype.calcDir=function(){return!!this.forceup||!this.forcedown&&t(this.total,this.elems.length)<6},r.prototype.layout=function(){if(0!==this.elems.length&&!this.allrests){this.stemsUp=this.calcDir();var r=function(e,t){var i=e?a.STEP:-a.STEP;t&&(i*=.4);return i}(this.stemsUp,this.isgrace),o=this.elems[0],c=this.elems[this.elems.length-1],l=0,h=this.stemsUp?o.abcelem.maxpitch:o.abcelem.minpitch;l=e(o,this.stemsUp,h,l),l=e(c,this.stemsUp,h,l),l=Math.max(this.stemHeight,l+3);var u=function(e,i,r,n,a,s,o,c,l,h){var u=t(e,i),d=r-2,p=r-2,f=Math.round(n?Math.max(u+d,l+p):Math.min(u-d,c-p)),m=function(e,t,i,r){if(r)return 0;var n=e-t,a=i/2;n>a&&(n=a);n<-a&&(n=-a);return n}(a,s,i,o),g=f+Math.floor(m/2),v=f+Math.floor(-m/2);h||(n&&f<6?(g=6,v=6):!n&&f>6&&(g=6,v=6));return[g,v]}(this.total,this.elems.length,l,this.stemsUp,o.abcelem.averagepitch,c.abcelem.averagepitch,this.isflat,this.min,this.max,this.isgrace),d=function(e,t,i){var r=t.heads[e?0:t.heads.length-1],n=i.heads[e?0:i.heads.length-1],a=r.x;e&&(a+=r.w-.6);var s=n.x;e&&(s+=n.w);return[a,s]}(this.stemsUp,o,c);this.beams.push({startX:d[0],endX:d[1],startY:u[0],endY:u[1],dy:r});for(var p=function(e,t,r,n,a){for(var o=[],c=[],l=0;l<e.length;l++){var h=e[l];if(!h.abcelem.rest){var u=h.heads[t?0:h.heads.length-1],d=u.x+(t?u.w:0),p=i(r.startX,r.startY,r.endX,r.endY,d),f=t?-1.5:1.5;n&&(f=2*f/3);var m=h.abcelem.duration;0===m&&(m=.25);for(var g=s(m);g<-3;g++)c[-4-g]?c[-4-g].single=!1:c[-4-g]={x:d+(t?-.6:0),y:p+f*(-4-g+1),durlog:g,single:!0};for(var v=c.length-1;v>=0;v--)if(l===e.length-1||s(e[l+1].abcelem.duration)>-v-4){var b=d,y=p+f*(v+1);c[v].single&&(b=0===l?d+5:d-5,y=i(r.startX,r.startY,r.endX,r.endY,b)+f*(v+1)),o.push({startX:c[v].x,endX:b,startY:c[v].y,endY:y,dy:a}),c=c.slice(0,v)}}}return o}(this.elems,this.stemsUp,this.beams[0],this.isgrace,r),f=0;f<p.length;f++)this.beams.push(p[f]);!function(e,t,r,s,o){for(var c=0;c<e.length;c++){var l=e[c];if(!l.abcelem.rest){var h=!l.addExtra,u=h?o:l,d=l.heads[t?0:l.heads.length-1],p=d.pitch+(t?.2:-.2),f=t?d.w:0,m=d.x+f,g=i(r.startX,r.startY,r.endX,r.endY,m),v=t?-.6:.6;t||(g-=s/2/a.STEP),h&&(f+=l.heads[0].dx),"noteheads.slash.quarter"===d.c&&(t?p+=1:p-=1);var b=new n(null,f,0,p,{type:"stem",pitch2:g,linewidth:v});b.setX(u.x),u.addExtra(b)}}}(this.elems,this.stemsUp,this.beams[0],r,this.mainNote)}},r.prototype.isAbove=function(){return this.stemsUp},r.prototype.heightAtMidpoint=function(e,t){if(0===this.beams.length)return 0;var r=this.beams[0],n=e+(t-e)/2;return i(r.startX,r.startY,r.endX,r.endY,n)},r.prototype.yAtNote=function(e){var t=this.beams[0];return i(t.startX,t.startY,t.endX,t.endY,e.x)},r.prototype.xAtMidpoint=function(e,t){return e+(t-e)/2},r.prototype.draw=function(e){if(0!==this.beams.length){e.beginGroup();for(var t=0;t<this.beams.length;t++){var i=this.beams[t];o(e,i.startX,i.startY,i.endX,i.endY,i.dy,this.hint)}e.endGroup("beam-elem")}}}(),e.exports=r},function(e,t){var i=function(){this.length=1};i.prototype.increaseStavesIncluded=function(){this.length++},i.prototype.setLocation=function(e){this.x=e},i.prototype.getWidth=function(){return 10},i.prototype.layout=function(e,t,i){this.startY=t,this.endY=i},i.prototype.draw=function(e,t,i){this.layout(e,t,i),e.drawBrace(this.x,this.startY,this.endY)},e.exports=i},function(e,t,i){var r,n=i(4),a=i(3),s=i(2);!function(){"use strict";r=function(e,t){var i,r=0,o=new n(e,0,10,"staff-extra",t);switch(o.isClef=!0,e.type){case"treble":i="clefs.G";break;case"tenor":case"alto":i="clefs.C";break;case"bass":i="clefs.F";break;case"treble+8":i="clefs.G",r=1;break;case"tenor+8":i="clefs.C",r=1;break;case"bass+8":i="clefs.F",r=1;break;case"alto+8":i="clefs.C",r=1;break;case"treble-8":i="clefs.G",r=-1;break;case"tenor-8":i="clefs.C",r=-1;break;case"bass-8":i="clefs.F",r=-1;break;case"alto-8":i="clefs.C",r=-1;break;case"none":return null;case"perc":i="clefs.perc";break;default:o.addChild(new s("clef="+e.type,0,0,void 0,{type:"debug"}))}if(i&&(o.addRight(new s(i,5,a.getSymbolWidth(i),e.clefPos)),"clefs.G"===i?(o.top=13,o.bottom=-1):(o.top=10,o.bottom=2),0!==r)){var c=(a.getSymbolWidth(i)-a.getSymbolWidth("8")*(2/3))/2;o.addRight(new s("8",5+c,a.getSymbolWidth("8")*(2/3),r>0?o.top+3:o.bottom-1,{scalex:2/3,scaley:2/3})),o.top+=2}return o}}(),e.exports=r},function(e,t,i){var r,n=i(4),a=i(3),s=i(2),o=i(0);!function(){"use strict";r=function(e,t){if(!e.accidentals||0===e.accidentals.length)return null;var i=new n(e,0,10,"staff-extra",t);i.isKeySig=!0;var r=0;return o.each(e.accidentals,(function(e){var t="sharp"===e.acc?"accidentals.sharp":"natural"===e.acc?"accidentals.nat":"accidentals.flat";i.addRight(new s(t,r,a.getSymbolWidth(t),e.verticalPos,{thickness:a.symbolHeightInPitches(t)})),r+=a.getSymbolWidth(t)+2}),this),i}}(),e.exports=r},function(e,t,i){var r,n=i(4),a=i(3),s=i(2);!function(){"use strict";r=function(e,t){var i=new n(e,0,10,"staff-extra",t);if("specified"===e.type)for(var r=0,o=0;o<e.value.length;o++)if(0!==o&&(i.addRight(new s("+",r+1,a.getSymbolWidth("+"),6,{thickness:a.symbolHeightInPitches("+")})),r+=a.getSymbolWidth("+")+2),e.value[o].den){for(var c=0,l=0;l<e.value[o].num.length;l++)c+=a.getSymbolWidth(e.value[o].num.charAt(l));var h=0;for(l=0;l<e.value[o].num.length;l++)h+=a.getSymbolWidth(e.value[o].den.charAt(l));var u=Math.max(c,h);i.addRight(new s(e.value[o].num,r+(u-c)/2,c,8,{thickness:a.symbolHeightInPitches(e.value[o].num.charAt(0))})),i.addRight(new s(e.value[o].den,r+(u-h)/2,h,4,{thickness:a.symbolHeightInPitches(e.value[o].den.charAt(0))})),r+=u}else{for(var d=0,p=0;p<e.value[o].num.length;p++)d+=a.getSymbolWidth(e.value[o].num.charAt(p));i.addRight(new s(e.value[o].num,r,d,6,{thickness:a.symbolHeightInPitches(e.value[o].num.charAt(0))})),r+=d}else"common_time"===e.type?i.addRight(new s("timesig.common",0,a.getSymbolWidth("timesig.common"),6,{thickness:a.symbolHeightInPitches("timesig.common")})):"cut_time"===e.type?i.addRight(new s("timesig.cut",0,a.getSymbolWidth("timesig.cut"),6,{thickness:a.symbolHeightInPitches("timesig.cut")})):"tempus_imperfectum"===e.type?i.addRight(new s("timesig.imperfectum",0,a.getSymbolWidth("timesig.imperfectum"),6,{thickness:a.symbolHeightInPitches("timesig.imperfectum")})):"tempus_imperfectum_prolatio"===e.type?i.addRight(new s("timesig.imperfectum2",0,a.getSymbolWidth("timesig.imperfectum2"),6,{thickness:a.symbolHeightInPitches("timesig.imperfectum2")})):"tempus_perfectum"===e.type?i.addRight(new s("timesig.perfectum",0,a.getSymbolWidth("timesig.perfectum"),6,{thickness:a.symbolHeightInPitches("timesig.perfectum")})):"tempus_perfectum_prolatio"===e.type?i.addRight(new s("timesig.perfectum2",0,a.getSymbolWidth("timesig.perfectum2"),6,{thickness:a.symbolHeightInPitches("timesig.perfectum2")})):console.log("time signature:",e);return i}}(),e.exports=r},function(e,t,i){var r,n=i(41),a=i(42),s=i(3),o=i(2),c=i(20);!function(){"use strict";var e=function(e,t,i,r,n){function a(e,t){var a="down"===n?function(){if(0===r.heads.length)return 2;for(var e=r.heads[0].pitch,t=1;t<r.heads.length;t++)e=Math.min(e,r.heads[t].pitch);return e}()+1:function(){if(0===r.heads.length)return 10;for(var e=r.heads[0].pitch,t=1;t<r.heads.length;t++)e=Math.max(e,r.heads[t].pitch);return e}()+9;"down"!==n&&1===t&&a--;var c=i/2;c+="down"===n?-5:3;for(var l=0;l<t;l++)a-=1,r.addChild(new o(e,c,s.getSymbolWidth(e),a))}for(var c=0;c<e.length;c++)switch(e[c]){case"/":a("flags.ugrace",1);break;case"//":a("flags.ugrace",2);break;case"///":a("flags.ugrace",3);break;case"////":a("flags.ugrace",4)}};(r=function(){this.startDiminuendoX=void 0,this.startCrescendoX=void 0,this.minTop=12,this.minBottom=0}).prototype.dynamicDecoration=function(e,t,i,r){for(var n,s,o=0;o<t.length;o++)switch(t[o]){case"diminuendo(":this.startDiminuendoX=i,n=void 0;break;case"diminuendo)":n={start:this.startDiminuendoX,stop:i},this.startDiminuendoX=void 0;break;case"crescendo(":this.startCrescendoX=i,s=void 0;break;case"crescendo)":s={start:this.startCrescendoX,stop:i},this.startCrescendoX=void 0}n&&e.addOther(new a(n.start,n.stop,">",r)),s&&e.addOther(new a(s.start,s.stop,"<",r))},r.prototype.createDecoration=function(t,i,r,a,l,h,u,d,p,f){p||(p={ornamentPosition:"above",volumePosition:f?"above":"below",dynamicPosition:f?"above":"below"}),function(e,t,i,r){for(var a=0;a<t.length;a++)switch(t[a]){case"p":case"mp":case"pp":case"ppp":case"pppp":case"f":case"ff":case"fff":case"ffff":case"sfz":case"mf":var s=new n(i,t[a],r);e.addOther(s)}}(t,i,l,p.volumePosition),this.dynamicDecoration(t,i,l,p.dynamicPosition),e(i,0,a,l,u);var m=function(e,t,i,r,n,a,l,h){for(var u,d=0;d<t.length;d++){if("staccato"===t[d]||"tenuto"===t[d]||"accent"===t[d]){var p="scripts."+t[d];if("accent"===t[d]&&(p="scripts.sforzato"),u=void 0===u?"down"===l?i+2:h-2:"down"===l?u+2:u-2,"accent"===t[d])"up"===l?u--:u++;else switch(u){case 2:case 4:case 6:case 8:case 10:"up"===l?u--:u++}i>9&&u++;var f=r/2;"center"!==s.getSymbolAlign(p)&&(f-=s.getSymbolWidth(p)/2),n.addChild(new o(p,f,s.getSymbolWidth(p),u))}if("slide"===t[d]&&n.heads[0]){var m=n.heads[0].pitch,g=new o("",-a-15,0,(m-=2)-1),v=new o("",-a-5,0,m+1);n.addChild(g),n.addChild(v),e.addOther(new c({anchor1:g,anchor2:v,fixedY:!0}))}}return void 0===u&&(u=i),{above:u,below:n.bottom}}(t,i,r,a,l,h,u,d);m.above=Math.max(m.above,this.minTop);!function(e,t,i,r,n,a,c){function l(e,t){"above"===e?r.above+=t:r.below-=t}function h(e){var t;return"above"===e?(t=r.above)<a&&(t=a):(t=r.below)>c&&(t=c),t}function u(e,r){var n=h(r);i.addChild(new o(e,t/2,0,n+2,{type:"decoration",klass:"ornament",thickness:3})),l(r,5)}function d(e,r){var n=t/2;"center"!==s.getSymbolAlign(e)&&(n-=s.getSymbolWidth(e)/2);var a=s.symbolHeightInPitches(e)+1,c=h(r);c="above"===r?c+a/2:c-a/2,i.addChild(new o(e,n,s.getSymbolWidth(e),c,{klass:"ornament",thickness:s.symbolHeightInPitches(e)})),l(r,a)}for(var p={"+":"scripts.stopped",open:"scripts.open",snap:"scripts.snap",wedge:"scripts.wedge",thumb:"scripts.thumb",shortphrase:"scripts.shortphrase",mediumphrase:"scripts.mediumphrase",longphrase:"scripts.longphrase",trill:"scripts.trill",roll:"scripts.roll",irishroll:"scripts.roll",marcato:"scripts.umarcato",dmarcato:"scripts.dmarcato",umarcato:"scripts.umarcato",turn:"scripts.turn",uppermordent:"scripts.prall",pralltriller:"scripts.prall",mordent:"scripts.mordent",lowermordent:"scripts.mordent",downbow:"scripts.downbow",upbow:"scripts.upbow",fermata:"scripts.ufermata",invertedfermata:"scripts.dfermata",breath:",",coda:"scripts.coda",segno:"scripts.segno"},f=!1,m=0;m<e.length;m++)switch(e[m]){case"0":case"1":case"2":case"3":case"4":case"5":case"D.C.":case"D.S.":u(e[m],n),f=!0;break;case"fine":u("FINE",n),f=!0;break;case"+":case"open":case"snap":case"wedge":case"thumb":case"shortphrase":case"mediumphrase":case"longphrase":case"trill":case"roll":case"irishroll":case"marcato":case"dmarcato":case"turn":case"uppermordent":case"pralltriller":case"mordent":case"lowermordent":case"downbow":case"upbow":case"fermata":case"breath":case"umarcato":case"coda":case"segno":d(p[e[m]],n),f=!0;break;case"invertedfermata":d(p[e[m]],"below"),f=!0;break;case"mark":i.klass="mark"}}(i,a,l,m,p.ornamentPosition,this.minTop,this.minBottom);!function(e,t,i){for(var r=0;r<e.length;r++)switch(e[r]){case"arpeggio":for(var n=t.abcelem.minpitch-1;n<=t.abcelem.maxpitch;n+=2)t.addExtra(new o("scripts.arpeggio",2*-s.getSymbolWidth("scripts.arpeggio")-i,0,n+2,{klass:"ornament",thickness:s.symbolHeightInPitches("scripts.arpeggio")}))}}(i,l,h)}}(),e.exports=r},function(e,t,i){i(1);var r=function(e,t,i){this.anchor=e,this.dec=t,"below"===i?this.volumeHeightBelow=5:this.volumeHeightAbove=5,this.pitch=void 0};r.prototype.setUpperAndLowerElements=function(e){this.volumeHeightAbove?this.pitch=e.volumeHeightAbove:this.pitch=e.volumeHeightBelow},r.prototype.draw=function(e,t,i){void 0===this.pitch&&window.console.error("Dynamic Element y-coordinate not set.");e.printSymbol(this.anchor.x,this.pitch,this.dec,1,1,e.addClasses("decoration"))},e.exports=r},function(e,t,i){var r=i(5),n=function(e,t,i,r){this.anchor1=e,this.anchor2=t,this.dir=i,"above"===r?this.dynamicHeightAbove=4:this.dynamicHeightBelow=4,this.pitch=void 0};n.prototype.setUpperAndLowerElements=function(e){this.dynamicHeightAbove?this.pitch=e.dynamicHeightAbove:this.pitch=e.dynamicHeightBelow},n.prototype.draw=function(e){void 0===this.pitch&&window.console.error("Crescendo Element y-coordinate not set.");var t=e.calcY(this.pitch)+4;"<"===this.dir?(this.drawLine(e,t+4,t),this.drawLine(e,t+4,t+8)):(this.drawLine(e,t,t+4),this.drawLine(e,t+8,t+4))},n.prototype.drawLine=function(e,t,i){var n=this.anchor1?this.anchor1.x:0,a=this.anchor2?this.anchor2.x:800,s=r("M %f %f L %f %f",n,t,a,i);e.printPath({path:s,stroke:"#000000",class:e.addClasses("decoration")})},e.exports=n},function(e,t,i){var r=i(5),n=function(e,t,i){this.text=e,this.anchor1=t,this.anchor2=i,this.endingHeightAbove=5,this.pitch=void 0};n.prototype.setUpperAndLowerElements=function(e){this.pitch=e.endingHeightAbove-2},n.prototype.draw=function(e,t,i){void 0===this.pitch&&window.console.error("Ending Element y-coordinate not set.");var n,a=e.calcY(this.pitch);this.anchor1&&(t=this.anchor1.x+this.anchor1.w,n=r("M %f %f L %f %f",t,a,t,a+20),e.printPath({path:n,stroke:"#000000",fill:"#000000",class:e.addClasses("ending")}),e.renderText(t+5,e.calcY(this.pitch-.5),this.text,"repeatfont","ending","start")),this.anchor2&&(i=this.anchor2.x,n=r("M %f %f L %f %f",i,a,i,a+20),e.printPath({path:n,stroke:"#000000",fill:"#000000",class:e.addClasses("ending")})),n=r("M %f %f L %f %f",t,a,i,a),e.printPath({path:n,stroke:"#000000",fill:"#000000",class:e.addClasses("ending")})},e.exports=n},function(e,t,i){var r=i(1),n=function(){this.voices=[],this.staffs=[],this.brace=void 0};n.prototype.setLimit=function(e,t){t.specialY[e]&&(t.staff.specialY[e]?t.staff.specialY[e]=Math.max(t.staff.specialY[e],t.specialY[e]):t.staff.specialY[e]=t.specialY[e])},n.prototype.addVoice=function(e,t,i){var r=this.voices.length;this.voices[r]=e,this.staffs[t]?this.staffs[t].voices.push(r):this.staffs[this.staffs.length]={top:10,bottom:2,lines:i,voices:[r],specialY:{tempoHeightAbove:0,partHeightAbove:0,volumeHeightAbove:0,dynamicHeightAbove:0,endingHeightAbove:0,chordHeightAbove:0,lyricHeightAbove:0,lyricHeightBelow:0,chordHeightBelow:0,volumeHeightBelow:0,dynamicHeightBelow:0}},e.staff=this.staffs[t]},n.prototype.setStaffLimits=function(e){e.staff.top=Math.max(e.staff.top,e.top),e.staff.bottom=Math.min(e.staff.bottom,e.bottom),this.setLimit("tempoHeightAbove",e),this.setLimit("partHeightAbove",e),this.setLimit("volumeHeightAbove",e),this.setLimit("dynamicHeightAbove",e),this.setLimit("endingHeightAbove",e),this.setLimit("chordHeightAbove",e),this.setLimit("lyricHeightAbove",e),this.setLimit("lyricHeightBelow",e),this.setLimit("chordHeightBelow",e),this.setLimit("volumeHeightBelow",e),this.setLimit("dynamicHeightBelow",e)},n.prototype.setUpperAndLowerElements=function(e){for(var t,i=0;i<this.staffs.length;i++){var n=this.staffs[i],a={tempoHeightAbove:0,partHeightAbove:0,volumeHeightAbove:0,dynamicHeightAbove:0,endingHeightAbove:0,chordHeightAbove:0,lyricHeightAbove:0,lyricHeightBelow:0,chordHeightBelow:0,volumeHeightBelow:0,dynamicHeightBelow:0};0,n.specialY.lyricHeightAbove&&(n.top+=n.specialY.lyricHeightAbove,a.lyricHeightAbove=n.top),n.specialY.chordHeightAbove&&(n.top+=n.specialY.chordHeightAbove,a.chordHeightAbove=n.top),n.specialY.endingHeightAbove&&(n.specialY.chordHeightAbove?n.top+=2:n.top+=n.specialY.endingHeightAbove,a.endingHeightAbove=n.top),n.specialY.dynamicHeightAbove&&n.specialY.volumeHeightAbove?(n.top+=Math.max(n.specialY.dynamicHeightAbove,n.specialY.volumeHeightAbove),a.dynamicHeightAbove=n.top,a.volumeHeightAbove=n.top):n.specialY.dynamicHeightAbove?(n.top+=n.specialY.dynamicHeightAbove,a.dynamicHeightAbove=n.top):n.specialY.volumeHeightAbove&&(n.top+=n.specialY.volumeHeightAbove,a.volumeHeightAbove=n.top),n.specialY.partHeightAbove&&(n.top+=n.specialY.partHeightAbove,a.partHeightAbove=n.top),n.specialY.tempoHeightAbove&&(n.top+=n.specialY.tempoHeightAbove,a.tempoHeightAbove=n.top),n.specialY.lyricHeightBelow&&(a.lyricHeightBelow=n.bottom,n.bottom-=n.specialY.lyricHeightBelow),n.specialY.chordHeightBelow&&(a.chordHeightBelow=n.bottom,n.bottom-=n.specialY.chordHeightBelow),n.specialY.volumeHeightBelow&&n.specialY.dynamicHeightBelow?(a.volumeHeightBelow=n.bottom,a.dynamicHeightBelow=n.bottom,n.bottom-=Math.max(n.specialY.volumeHeightBelow,n.specialY.dynamicHeightBelow)):n.specialY.volumeHeightBelow?(a.volumeHeightBelow=n.bottom,n.bottom-=n.specialY.volumeHeightBelow):n.specialY.dynamicHeightBelow&&(a.dynamicHeightBelow=n.bottom,n.bottom-=n.specialY.dynamicHeightBelow);for(var s=0;s<n.voices.length;s++){this.voices[n.voices[s]].setUpperAndLowerElements(a)}if(void 0!==t){var o=t+(n.top-10),c=e.spacing.systemStaffSeparation/r.STEP-o;c>0&&(n.top+=c)}t=2-n.bottom}},n.prototype.finished=function(){for(var e=0;e<this.voices.length;e++)if(!this.voices[e].layoutEnded())return!1;return!0},n.prototype.layout=function(e,t,i){var r,n=0,a=1e3,s=function(e,t,i){for(var r=e.padding.left,n=0,a=0;a<t.length;a++)if(t[a].header){var s=e.getTextSize(t[a].header,"voicefont","");n=Math.max(n,s.width)}return n&&(n+=e.getTextSize("A","voicefont","").width),r+=n,i&&(i.setLocation(r),r+=i.getWidth()),r}(t,this.voices,this.brace);this.startx=s;var o=0;for(i&&console.log("init layout",e),r=0;r<this.voices.length;r++)this.voices[r].beginLayout(s);for(var c=0;!this.finished();){for(o=null,r=0;r<this.voices.length;r++)this.voices[r].layoutEnded()||o&&!(this.voices[r].getDurationIndex()<o)||(o=this.voices[r].getDurationIndex());var l=[],h=[];for(r=0;r<this.voices.length;r++){this.voices[r].getDurationIndex()-o>1e-7?h.push(this.voices[r]):l.push(this.voices[r])}c=0;var u=0;for(r=0;r<l.length;r++)l[r].getNextX()>s&&(s=l[r].getNextX(),c=l[r].getSpacingUnits(),u=l[r].spacingduration);for(n+=c,a=Math.min(a,c),i&&console.log("currentduration: ",o,n,a),r=0;r<l.length;r++){var d=l[r].layoutOneItem(s,e),p=d-s;if(p>0){s=d;for(var f=0;f<r;f++)l[f].shiftRight(p)}}for(r=0;r<h.length;r++)h[r].spacingduration-=u,h[r].updateNextX(s,e);for(r=0;r<l.length;r++){l[r].updateIndices()}}for(r=0;r<this.voices.length;r++)this.voices[r].getNextX()>s&&(s=this.voices[r].getNextX(),c=this.voices[r].getSpacingUnits());for(n+=c,this.w=s,r=0;r<this.voices.length;r++)this.voices[r].w=this.w;return{spacingUnits:n,minSpace:a}},n.prototype.calcHeight=function(){for(var e=0,t=0;t<this.voices.length;t++){var i=this.voices[t].staff;this.voices[t].duplicate||(e+=i.top,i.bottom<0&&(e+=-i.bottom))}return e},n.prototype.draw=function(e){e.addInvisibleMarker("abcjs-top-of-system");for(var t,i,n=e.y,a=0;a<this.staffs.length;a++){var s=this.staffs[a];e.moveY(r.STEP,s.top),s.absoluteY=e.y,s.bottom<0&&e.moveY(r.STEP,-s.bottom)}var o=0;e.measureNumber=null,e.noteNumber=null;for(var c=0;c<this.voices.length;c++){var l=this.voices[c].staff;e.y=l.absoluteY,e.voiceNumber=c,this.voices[c].duplicate||(t||(t=e.calcY(10)),i=e.calcY(2),0!==l.lines&&(e.measureNumber=null,e.noteNumber=null,e.printStave(this.startx,this.w,l.lines))),this.voices[c].draw(e,o),e.measureNumber=null,e.noteNumber=null,this.voices[c].duplicate||(o=e.calcY(2)),this.brace&&c===this.brace.length-1&&this.brace&&this.brace.draw(e,t,i)}e.measureNumber=null,e.noteNumber=null,this.staffs.length>1&&e.printStem(this.startx,.6,t,i),e.y=n},e.exports=n},function(e,t,i){var r,n=i(4),a=i(2);!function(){"use strict";(r=function(e,t,i){this.tempo=e,this.tuneNumber=t,this.tempoHeightAbove=5,this.pitch=void 0,this.tempo.duration&&!this.tempo.suppressBpm&&(this.note=this.createNote(i,e,t))}).prototype.setUpperAndLowerElements=function(e){if(this.pitch=e.tempoHeightAbove,this.top=e.tempoHeightAbove,this.bottom=e.tempoHeightAbove,this.note){var t=this.pitch-5+1;this.note.top=t,this.note.bottom=t;for(var i=0;i<this.note.children.length;i++){var r=this.note.children[i];r.top+=t,r.bottom+=t,r.pitch+=t,void 0!==r.pitch2&&(r.pitch2+=t)}}},r.prototype.setX=function(e){this.x=e},r.prototype.createNote=function(e,t,i){var r,s,o,c=t.duration[0],l=new n(t,c,1,"tempo",i);c<=1/32?(o="noteheads.quarter",s="flags.u32nd",r=0):c<=1/16?(o="noteheads.quarter",s="flags.u16th",r=0):c<=3/32?(o="noteheads.quarter",s="flags.u16nd",r=1):c<=1/8?(o="noteheads.quarter",s="flags.u8th",r=0):c<=3/16?(o="noteheads.quarter",s="flags.u8th",r=1):c<=.25?(o="noteheads.quarter",r=0):c<=3/8?(o="noteheads.quarter",r=1):c<=.5?(o="noteheads.half",r=0):c<=.75?(o="noteheads.half",r=1):c<=1?(o="noteheads.whole",r=0):c<=1.5?(o="noteheads.whole",r=1):c<=2?(o="noteheads.dbl",r=0):(o="noteheads.dbl",r=1);var h,u=e(l,o,{verticalPos:0},"up",0,0,s,r,0,.75,[],!1).notehead;if(l.addHead(u),"noteheads.whole"!==o&&"noteheads.dbl"!==o){var d=u.dx+u.w;h=new a(null,d,0,.25,{type:"stem",pitch2:5.25,linewidth:-.6}),l.addExtra(h)}return l},r.prototype.draw=function(e){var t=this.x;void 0===this.pitch&&window.console.error("Tempo Element y-coordinate not set.");var i,r=e.calcY(this.pitch);if(this.tempo.preString){i=e.renderText(t,r,this.tempo.preString,"tempofont","tempo","start");var n=e.getTextSize(this.tempo.preString,"tempofont","tempo",i),a=n.width;t+=a+a/this.tempo.preString.length}if(this.note){this.note&&this.note.setX(t);for(var s=0;s<this.note.children.length;s++)this.note.children[s].draw(e,t);t+=this.note.w+5;var o="= "+this.tempo.bpm;i=e.renderText(t,r,o,"tempofont","tempo","start");var c=(n=e.getTextSize(o,"tempofont","tempo",i)).width;t+=c+c/o.length}this.tempo.postString&&e.renderText(t,r,this.tempo.postString,"tempofont","tempo","start")}}(),e.exports=r},function(e,t,i){var r,n=i(5);!function(){"use strict";function e(e,t,i,r,a,s){var o=n("M %f %f L %f %f",t,i,r,a);e.printPath({path:o,stroke:"#000000",class:e.addClasses("triplet d"+s)})}(r=function(e,t,i){this.anchor1=t,this.number=e,this.duration=(""+t.parent.durationClass).replace(/\./,"-"),this.middleElems=[],this.flatBeams=i.flatBeams}).prototype.isClosed=function(){return this.anchor2},r.prototype.middleNote=function(e){this.middleElems.push(e)},r.prototype.setCloseAnchor=function(e){this.anchor2=e,this.anchor1.parent.beam&&(this.endingHeightAbove=4)},r.prototype.setUpperAndLowerElements=function(){},r.prototype.layout=function(){if(this.anchor1&&this.anchor2)if(this.hasBeam=this.anchor1.parent.beam&&this.anchor1.parent.beam===this.anchor2.parent.beam,this.hasBeam){var e=this.anchor1.parent.beam,t=e.isAbove()?this.anchor1.x+this.anchor1.w:this.anchor1.x;this.yTextPos=e.heightAtMidpoint(t,this.anchor2.x),this.yTextPos+=e.isAbove()?3:-2,this.top=this.yTextPos+1,this.bottom=this.yTextPos-2,e.isAbove()&&(this.endingHeightAbove=4)}else{this.startNote=Math.max(this.anchor1.parent.top,9)+4,this.endNote=Math.max(this.anchor2.parent.top,9)+4,"rest"===this.anchor1.parent.type&&"rest"!==this.anchor2.parent.type?this.startNote=this.endNote:"rest"===this.anchor2.parent.type&&"rest"!==this.anchor1.parent.type&&(this.endNote=this.startNote);for(var i=0,r=0;r<this.middleElems.length;r++)i=Math.max(i,this.middleElems[r].top);((i+=4)>this.startNote||i>this.endNote)&&(this.startNote=i,this.endNote=i),this.flatBeams&&(this.startNote=Math.max(this.startNote,this.endNote),this.endNote=Math.max(this.startNote,this.endNote)),this.yTextPos=this.startNote+(this.endNote-this.startNote)/2,this.top=this.yTextPos+1}delete this.middleElems,delete this.flatBeams},r.prototype.draw=function(t){var i;if(this.hasBeam){var r=this.anchor1.parent.beam.isAbove()?this.anchor1.x+this.anchor1.w:this.anchor1.x;i=this.anchor1.parent.beam.xAtMidpoint(r,this.anchor2.x)}else i=this.anchor1.x+(this.anchor2.x+this.anchor2.w-this.anchor1.x)/2,function(t,i,r,n,a,s){r=t.calcY(r),a=t.calcY(a);e(t,i,r,i,r+5,s),e(t,n,a,n,a+5,s);var o=i+(n-i)/2,c=(a-r)/(n-i),l=o-8;e(t,i,r,l,r+(l-i)*c,s);var h=o+8;e(t,h,r+(h-i)*c,n,a,s)}(t,this.anchor1.x,this.startNote,this.anchor2.x+this.anchor2.w,this.endNote,this.duration);t.renderText(i,t.calcY(this.yTextPos),""+this.number,"tripletfont",t.addClasses("triplet d"+this.duration),"middle",!0)}}(),e.exports=r},function(e,t,i){var r=i(0),n=function(e,t){this.children=[],this.beams=[],this.otherchildren=[],this.w=0,this.duplicate=!1,this.voicenumber=e,this.voicetotal=t,this.bottom=7,this.top=7,this.specialY={tempoHeightAbove:0,partHeightAbove:0,volumeHeightAbove:0,dynamicHeightAbove:0,endingHeightAbove:0,chordHeightAbove:0,lyricHeightAbove:0,lyricHeightBelow:0,chordHeightBelow:0,volumeHeightBelow:0,dynamicHeightBelow:0}};n.prototype.addChild=function(e){if("bar"===e.type){for(var t=!0,i=0;t&&i<this.children.length;i++)"staff-extra"!==this.children[i].type&&"tempo"!==this.children[i].type&&(t=!1);t||(this.beams.push("bar"),this.otherchildren.push("bar"))}this.children[this.children.length]=e,this.setRange(e)},n.prototype.setLimit=function(e,t){var i=t.specialY;i||(i=t),i[e]&&(this.specialY[e]?this.specialY[e]=Math.max(this.specialY[e],i[e]):this.specialY[e]=i[e])},n.prototype.moveDecorations=function(e){for(var t=0;t<e.elems.length;t++){var i=e.elems[t];if(i.top)for(var r=e.yAtNote(i),n=0;n<i.children.length;n++){var a=i.children[n];if("ornament"===a.klass&&a.bottom-1.5<r){var s=r-a.bottom+1.5;a.bottom+=s,a.top+=s,a.pitch+=s,r=i.top=a.top}}}},n.prototype.adjustRange=function(e){void 0!==e.bottom&&(this.bottom=Math.min(this.bottom,e.bottom)),void 0!==e.top&&(this.top=Math.max(this.top,e.top))},n.prototype.setRange=function(e){this.adjustRange(e),this.setLimit("tempoHeightAbove",e),this.setLimit("partHeightAbove",e),this.setLimit("volumeHeightAbove",e),this.setLimit("dynamicHeightAbove",e),this.setLimit("endingHeightAbove",e),this.setLimit("chordHeightAbove",e),this.setLimit("lyricHeightAbove",e),this.setLimit("lyricHeightBelow",e),this.setLimit("chordHeightBelow",e),this.setLimit("volumeHeightBelow",e),this.setLimit("dynamicHeightBelow",e)},n.prototype.setUpperAndLowerElements=function(e){var t;for(t=0;t<this.children.length;t++){(i=this.children[t]).setUpperAndLowerElements(e)}for(t=0;t<this.otherchildren.length;t++){var i;"string"!=typeof(i=this.otherchildren[t])&&i.setUpperAndLowerElements(e)}},n.prototype.addOther=function(e){this.otherchildren.push(e),this.setRange(e)},n.prototype.addBeam=function(e){this.beams.push(e)},n.prototype.updateIndices=function(){this.layoutEnded()||(this.durationindex+=this.children[this.i].duration,"bar"===this.children[this.i].type&&(this.durationindex=Math.round(64*this.durationindex)/64),this.i++)},n.prototype.layoutEnded=function(){return this.i>=this.children.length},n.prototype.getDurationIndex=function(){return this.durationindex-(this.children[this.i]&&this.children[this.i].duration>0?0:5e-7)},n.prototype.getSpacingUnits=function(){return Math.sqrt(8*this.spacingduration)},n.prototype.getNextX=function(){return Math.max(this.minx,this.nextx)},n.prototype.beginLayout=function(e){this.i=0,this.durationindex=0,this.startx=e,this.minx=e,this.nextx=e,this.spacingduration=0},n.prototype.layoutOneItem=function(e,t){var i=this.children[this.i];if(!i)return 0;var r=e-this.minx,n=i.getExtraWidth();return r<n&&(0===this.i||"bar"!==i.type||"part"!==this.children[this.i-1].type&&"tempo"!==this.children[this.i-1].type)&&(e+=n-r),i.setX(e),this.spacingduration=i.duration,this.minx=e+i.getMinWidth(),this.i!==this.children.length-1&&(this.minx+=i.minspacing),this.updateNextX(e,t),e},n.prototype.updateNextX=function(e,t){this.nextx=e+t*Math.sqrt(8*this.spacingduration)},n.prototype.shiftRight=function(e){var t=this.children[this.i];t&&(t.setX(t.x+e),this.minx+=e,this.nextx+=e)},n.prototype.draw=function(e,t){var i,n=this.w-1;if(e.staffbottom=this.staff.bottom,e.measureNumber=null,e.noteNumber=null,this.header){var a=14-(this.voicenumber+1)*(12/(this.voicetotal+1));e.renderText(e.padding.left,e.calcY(a),this.header,"voicefont","staff-extra voice-name","start")}for(var s=0,o=this.children.length;s<o;s++){var c=this.children[s],l=!1;"staff-extra"!==c.type&&null===e.measureNumber&&(e.measureNumber=0,e.noteNumber=0,l=!0),c.draw(e,this.barto||s===o-1?t:0),("note"===c.type||"rest"===(i=c).type&&i.abcelem&&i.abcelem.rest&&"spacer"!==i.abcelem.rest.type)&&e.noteNumber++,"bar"!==c.type||l||(e.measureNumber++,e.noteNumber=0)}e.measureNumber=0,e.noteNumber=0,r.each(this.beams,(function(t){"bar"===t?(e.measureNumber++,e.noteNumber=0):t.draw(e)})),e.measureNumber=0,e.noteNumber=0;var h=this;r.each(this.otherchildren,(function(t){"bar"===t?(e.measureNumber++,e.noteNumber=0):t.draw(e,h.startx+10,n)}))},n.prototype.layoutBeams=function(){for(var e=0;e<this.beams.length;e++)if(this.beams[e].layout){this.beams[e].layout(),this.moveDecorations(this.beams[e]);for(var t=0;t<this.beams[e].elems.length;t++)this.adjustRange(this.beams[e].elems[t])}for(e=0;e<this.otherchildren.length;e++){var i=this.otherchildren[e];i.layout&&(i.layout(),this.adjustRange(i))}this.staff.top=Math.max(this.staff.top,this.top),this.staff.bottom=Math.min(this.staff.bottom,this.bottom)},e.exports=n},function(e,t,i){var r=i(3),n=i(1),a=i(5),s=i(49),o=function(e,t,i){this.paper=new s(e),this.controller=null,this.space=3*n.SPACE,this.padding={},this.doRegression=t,this.shouldAddClasses=i,this.doRegression&&(this.regressionLines=[]),this.reset()};o.prototype.reset=function(){this.paper.clear(),this.y=0,this.abctune=null,this.lastM=null,this.ingroup=!1,this.path=null,this.isPrint=!1,this.initVerticalSpace(),this.doRegression&&(this.regressionLines=[])},o.prototype.newTune=function(e){this.abctune=e,this.setVerticalSpace(e.formatting),this.measureNumber=null,this.noteNumber=null,this.setPrintMode("print"===e.media),this.setPadding(e)},o.prototype.createElemSet=function(){return this.paper.openGroup()},o.prototype.closeElemSet=function(){return this.paper.closeGroup()},o.prototype.setPrintMode=function(e){this.isPrint=e},o.prototype.setPaperSize=function(e,t,i){var r=(e+this.padding.right)*t,n=(this.y+this.padding.bottom)*t;this.isPrint&&(n=Math.max(n,1056)),this.doRegression&&this.regressionLines.push("PAPER SIZE: ("+r+","+n+")");var a="Sheet Music";this.abctune&&this.abctune.metaText&&this.abctune.metaText.title&&(a+=' for "'+this.abctune.metaText.title+'"'),this.paper.setTitle(a);var s={overflow:"hidden"};"resize"===i?this.paper.setResponsiveWidth(r,n):(s.width="",s.height=n+"px",t<1?(s.width=r+"px",this.paper.setSize(r/t,n/t)):this.paper.setSize(r,n)),this.paper.setScale(t),this.paper.setParentStyles(s)},o.prototype.setPaddingOverride=function(e){this.paddingOverride={top:e.paddingtop,bottom:e.paddingbottom,right:e.paddingright,left:e.paddingleft}},o.prototype.setPadding=function(e){function t(t,i,r,n,a){void 0!==e.formatting[r]?t.padding[i]=e.formatting[r]:void 0!==t.paddingOverride[i]?t.padding[i]=t.paddingOverride[i]:t.isPrint?t.padding[i]=n:t.padding[i]=a}t(this,"top","topmargin",38,15),t(this,"bottom","botmargin",38,15),t(this,"left","leftmargin",68,15),t(this,"right","rightmargin",68,15)},o.prototype.adjustNonScaledItems=function(e){this.padding.top/=e,this.padding.bottom/=e,this.padding.left/=e,this.padding.right/=e,this.abctune.formatting.headerfont.size/=e,this.abctune.formatting.footerfont.size/=e},o.prototype.initVerticalSpace=function(){this.spacing={composer:7.56,graceBefore:8.67,graceInside:10.67,graceAfter:16,info:0,lineSkipFactor:1.1,music:7.56,paragraphSkipFactor:.4,parts:11.33,slurHeight:1,staffSeparation:61.33,stemHeight:36.67,subtitle:3.78,systemStaffSeparation:48,text:18.9,title:7.56,top:30.24,vocal:30.67,words:0}},o.prototype.setVerticalSpace=function(e){void 0!==e.staffsep&&(this.spacing.staffSeparation=4*e.staffsep/3),void 0!==e.composerspace&&(this.spacing.composer=4*e.composerspace/3),void 0!==e.partsspace&&(this.spacing.parts=4*e.partsspace/3),void 0!==e.textspace&&(this.spacing.text=4*e.textspace/3),void 0!==e.musicspace&&(this.spacing.music=4*e.musicspace/3),void 0!==e.titlespace&&(this.spacing.title=4*e.titlespace/3),void 0!==e.sysstaffsep&&(this.spacing.systemStaffSeparation=4*e.sysstaffsep/3),void 0!==e.subtitlespace&&(this.spacing.subtitle=4*e.subtitlespace/3),void 0!==e.topspace&&(this.spacing.top=4*e.topspace/3),void 0!==e.vocalspace&&(this.spacing.vocal=4*e.vocalspace/3),void 0!==e.wordsspace&&(this.spacing.words=4*e.wordsspace/3)},o.prototype.topMargin=function(e){this.moveY(this.padding.top)},o.prototype.addMusicPadding=function(){this.moveY(this.spacing.music)},o.prototype.addStaffPadding=function(e,t){var i=-(e.staffs[e.staffs.length-1].bottom-2),r=(t.staffs[0].top-10+i)*n.STEP;r<this.spacing.staffSeparation&&this.moveY(this.spacing.staffSeparation-r)},o.prototype.engraveTopText=function(e,t){if(t.metaText.header&&this.isPrint){var i=this.getTextSize("XXXX","headerfont","abcjs-header abcjs-meta-top").height;this.y-=i,this.outputTextIf(this.padding.left,t.metaText.header.left,"headerfont","header meta-top",0,null,"start"),this.outputTextIf(this.padding.left+e/2,t.metaText.header.center,"headerfont","header meta-top",0,null,"middle"),this.outputTextIf(this.padding.left+e,t.metaText.header.right,"headerfont","header meta-top",0,null,"end"),this.y+=i}if(this.isPrint&&this.moveY(this.spacing.top),this.outputTextIf(this.padding.left+e/2,t.metaText.title,"titlefont","title meta-top",this.spacing.title,0,"middle"),t.lines[0]&&this.outputTextIf(this.padding.left+e/2,t.lines[0].subtitle,"subtitlefont","text meta-top",this.spacing.subtitle,0,"middle"),t.metaText.rhythm||t.metaText.origin||t.metaText.composer){this.moveY(this.spacing.composer);var r=this.outputTextIf(this.padding.left,t.metaText.rhythm,"infofont","meta-top",0,null,"start"),n="";if(t.metaText.composer&&(n+=t.metaText.composer),t.metaText.origin&&(n+=" ("+t.metaText.origin+")"),n.length>0){var a=this.outputTextIf(this.padding.left+e,n,"composerfont","meta-top",0,null,"end");this.moveY(a[1])}else this.moveY(r[1]);this.moveY(-6)}this.outputTextIf(this.padding.left+e,t.metaText.author,"composerfont","meta-top",0,0,"end"),this.outputTextIf(this.padding.left,t.metaText.partOrder,"partsfont","meta-bottom",0,0,"start")},o.prototype.engraveExtraText=function(e,t){if(this.lineNumber=null,this.measureNumber=null,this.noteNumber=null,this.voiceNumber=null,t.metaText.unalignedWords){var i=this.getFontAndAttr("wordsfont","meta-bottom"),r=this.getTextSize("i","wordsfont","meta-bottom");t.metaText.unalignedWords.length>0&&this.moveY(this.spacing.words,1);for(var a=0;a<t.metaText.unalignedWords.length;a++)if(""===t.metaText.unalignedWords[a])this.moveY(i.font.size,1);else if("string"==typeof t.metaText.unalignedWords[a])this.outputTextIf(this.padding.left+n.INDENT,t.metaText.unalignedWords[a],"wordsfont","meta-bottom",0,0,"start");else{for(var s=0,o=0,c=0;c<t.metaText.unalignedWords[a].length;c++){var l=t.metaText.unalignedWords[a][c],h=l.font?l.font:"wordsfont",u=(this.renderText(this.padding.left+n.INDENT+o,this.y,l.text,h,"meta-bottom",!1),this.getTextSize(l.text,h,"meta-bottom"));s=Math.max(s,u.height),o+=u.width," "===l.text[l.text.length-1]&&(o+=r.width)}this.moveY(s,1)}t.metaText.unalignedWords.length>0&&this.moveY(i.font.size,2)}var d="";t.metaText.book&&(d+="Book: "+t.metaText.book+"\n"),t.metaText.source&&(d+="Source: "+t.metaText.source+"\n"),t.metaText.discography&&(d+="Discography: "+t.metaText.discography+"\n"),t.metaText.notes&&(d+="Notes: "+t.metaText.notes+"\n"),t.metaText.transcription&&(d+="Transcription: "+t.metaText.transcription+"\n"),t.metaText.history&&(d+="History: "+t.metaText.history+"\n"),t.metaText["abc-copyright"]&&(d+="Copyright: "+t.metaText["abc-copyright"]+"\n"),t.metaText["abc-creator"]&&(d+="Creator: "+t.metaText["abc-creator"]+"\n"),t.metaText["abc-edited-by"]&&(d+="Edited By: "+t.metaText["abc-edited-by"]+"\n"),this.outputTextIf(this.padding.left,d,"historyfont","meta-bottom",this.spacing.info,0,"start"),t.metaText.footer&&this.isPrint&&(this.outputTextIf(this.padding.left,t.metaText.footer.left,"footerfont","header meta-bottom",0,null,"start"),this.outputTextIf(this.padding.left+e/2,t.metaText.footer.center,"footerfont","header meta-bottom",0,null,"middle"),this.outputTextIf(this.padding.left+e,t.metaText.footer.right,"footerfont","header meta-bottom",0,null,"end"))},o.prototype.outputFreeText=function(e,t){t&&this.moveY(t);var i=this.getFontAndAttr("textfont","defined-text");if(""===e)this.moveY(2*i.attr["font-size"]);else if("string"==typeof e)this.moveY(i.attr["font-size"]/2),this.outputTextIf(this.padding.left,e,"textfont","defined-text",0,0,"start");else{for(var r="",n=!1,a=0;a<e.length;a++)e[a].font&&(r+="FONT("+e[a].font+")"),r+=e[a].text,e[a].center&&(n=!0);var s=n?"middle":"start",o=n?this.controller.width/2:this.padding.left;this.outputTextIf(o,r,"textfont","defined-text",0,1,s)}},o.prototype.outputSeparator=function(e){e.lineLength&&(this.moveY(e.spaceAbove),this.printSeparator(e.lineLength),this.moveY(e.spaceBelow))},o.prototype.outputSubtitle=function(e,t){this.outputTextIf(this.padding.left+e/2,t,"subtitlefont","text meta-top",this.spacing.subtitle,0,"middle")},o.prototype.beginGroup=function(){this.path=[],this.lastM=[0,0],this.ingroup=!0},o.prototype.addPath=function(e){if(0!==(e=e||[]).length){e[0][0]="m",e[0][1]-=this.lastM[0],e[0][2]-=this.lastM[1],this.lastM[0]+=e[0][1],this.lastM[1]+=e[0][2],this.path.push(e[0]);for(var t=1,i=e.length;t<i;t++)"m"===e[t][0]&&(this.lastM[0]+=e[t][1],this.lastM[1]+=e[t][2]),this.path.push(e[t])}},o.prototype.endGroup=function(e){if(this.ingroup=!1,0===this.path.length)return null;for(var t="",i=0;i<this.path.length;i++)t+=this.path[i].join(" ");var r=this.paper.path({path:t,stroke:"none",fill:"#000000",class:this.addClasses(e)});return this.path=[],this.doRegression&&this.addToRegression(r),r},o.prototype.printStaveLine=function(e,t,i,r){var n="staff";void 0!==r&&(n+=" "+r);var s=.35,o="#000000";var c=this.calcY(i),l=a("M %f %f L %f %f L %f %f L %f %f z",e,c-s,t,c-s,t,c+s,e,c+s),h=this.paper.pathToBack({path:l,stroke:"none",fill:o,class:this.addClasses(n)});return this.doRegression&&this.addToRegression(h),h},o.prototype.printStem=function(e,t,i,r){if(t<0){var n=r;r=i,i=n}var a="#000000";~~e===e&&(e+=.05);var s=[["M",e,i],["L",e,r],["L",e+t,r],["L",e+t,i],["z"]];if(!this.ingroup){for(var o="",c=0;c<s.length;c++)o+=s[c].join(" ");var l=this.paper.pathToBack({path:o,stroke:"none",fill:a,class:this.addClasses("stem")});return this.doRegression&&this.addToRegression(l),l}this.addPath(s)},o.prototype.printSymbol=function(e,t,i,n,a,s){var o,c,l,h,u,d;if(!i)return null;if(i.length>1&&i.indexOf(".")<0){this.paper.openGroup();for(var p=0,f=0;f<i.length;f++){var m=i.charAt(f);c=r.getYCorr(m),(o=r.printSymbol(e+p,this.calcY(t+c),m,this.paper,s))?(this.doRegression&&this.addToRegression(o),f<i.length-1&&(p+=(l=m,h=i.charAt(f+1),u=r.getSymbolWidth(m),d=void 0,d=u,"f"===l&&"f"===h&&(d=2*d/3),"p"===l&&"p"===h&&(d=5*d/6),"f"===l&&"z"===h&&(d=5*d/8),d))):this.renderText(e,this.y,"no symbol:"+i,"debugfont","debug-msg","start")}return this.paper.closeGroup()}if(c=r.getYCorr(i),this.ingroup)this.addPath(r.getPathForSymbol(e,this.calcY(t+c),i,n,a));else{if(o=r.printSymbol(e,this.calcY(t+c),i,this.paper,s))return this.doRegression&&this.addToRegression(o),o;this.renderText(e,this.y,"no symbol:"+i,"debugfont","debug-msg","start")}return null},o.prototype.scaleExistingElem=function(e,t,i,r,n){this.paper.setAttributeOnElement(e,{style:"transform:scale("+t+","+i+");transform-origin:"+r+"px "+n+"px;"})},o.prototype.printPath=function(e){var t=this.paper.path(e);return this.doRegression&&this.addToRegression(t),t},o.prototype.drawBrace=function(e,t,i){var r=i-t,n=[7.5,-8,21,0,18.5,-10.5,7.5],s=[0,r/5.5,r/3.14,r/2,r/2.93,r/4.88,0],o=a("M %f %f C %f %f %f %f %f %f C %f %f %f %f %f %f z",e+n[0],t+s[0],e+n[1],t+s[1],e+n[2],t+s[2],e+n[3],t+s[3],e+n[4],t+s[4],e+n[5],t+s[5],e+n[6],t+s[6]),c=this.paper.path({path:o,stroke:"#000000",fill:"#000000",class:this.addClasses("brace")});o=a("M %f %f C %f %f %f %f %f %f C %f %f %f %f %f %f z",e+(n=[0,17.5,-7.5,6.6,-5,20,0])[0],t+(s=[r/2,r/1.46,r/1.22,r,r/1.19,r/1.42,r/2])[0],e+n[1],t+s[1],e+n[2],t+s[2],e+n[3],t+s[3],e+n[4],t+s[4],e+n[5],t+s[5],e+n[6],t+s[6]);var l=this.paper.path({path:o,stroke:"#000000",fill:"#000000",class:this.addClasses("brace")});return this.doRegression&&(this.addToRegression(c),this.addToRegression(l)),c+l},o.prototype.drawArc=function(e,t,i,r,n,s,o){var c=o?1.2:1.5;e+=6,t+=4,i+=n?c:-c,r+=n?c:-c;var l=this.calcY(i),h=this.calcY(r),u=t-e,d=h-l,p=Math.sqrt(u*u+d*d),f=u/p,m=d/p,g=p/3.5,v=o?10:25,b=(n?-1:1)*Math.min(v,Math.max(4,g)),y=e+g*f-b*m,w=l+g*m+b*f,k=t-g*f-b*m,x=h-g*m+b*f,S=a("M %f %f C %f %f %f %f %f %f C %f %f %f %f %f %f z",e,l,y,w,k,x,t,h,k-2*m,x+2*f,y-2*m,w+2*f,e,l);s?s+=" slur":s="slur";var _=this.paper.path({path:S,stroke:"none",fill:"#000000",class:this.addClasses(s)});return this.doRegression&&this.addToRegression(_),_},o.prototype.calcY=function(e){return this.y-e*n.STEP},o.prototype.printStave=function(e,t,i){var r="top-line";if(this.paper.openGroup({prepend:!0}),1!==i){for(var n=i-1;n>=0;n--)this.printStaveLine(e,t,2*(n+1),r),r=void 0;this.paper.closeGroup()}else this.printStaveLine(e,t,6,r)},o.prototype.addClasses=function(e,t){if(!this.shouldAddClasses)return"";var i=[];if(e.length>0&&i.push(e),null!==this.lineNumber&&void 0!==this.lineNumber&&i.push("l"+this.lineNumber),null!==this.measureNumber&&void 0!==this.measureNumber&&i.push("m"+this.measureNumber),null!==this.voiceNumber&&void 0!==this.voiceNumber&&i.push("v"+this.voiceNumber),(e.indexOf("note")>=0||e.indexOf("rest")>=0||e.indexOf("lyric")>=0)&&null!==this.noteNumber&&void 0!==this.noteNumber&&i.push("n"+this.noteNumber),i.length>0){i=(i=i.join(" ")).split(" ");for(var r=0;r<i.length;r++)0!==i[r].indexOf("abcjs-")&&i[r].length>0&&(i[r]="abcjs-"+i[r])}return i.join(" ")},o.prototype.getFontAndAttr=function(e,t){var i,r={"font-size":(i="string"==typeof e?(i=this.abctune.formatting[e])?{face:i.face,size:4*i.size/3,decoration:i.decoration,style:i.style,weight:i.weight,box:i.box}:{face:"Arial",size:16,decoration:"underline",style:"normal",weight:"normal"}:{face:e.face,size:4*e.size/3,decoration:e.decoration,style:e.style,weight:e.weight,box:e.box}).size,"font-style":i.style,"font-family":i.face,"font-weight":i.weight,"text-decoration":i.decoration,class:this.addClasses(t),font:""};return{font:i,attr:r}},o.prototype.getTextSize=function(e,t,i,r){var n=this.getFontAndAttr(t,i),a=this.paper.getTextSize(e,n.attr,r);return n.font.box&&(a.height+=8,a.width+=8),a},o.prototype.renderText=function(e,t,i,r,n,a,s){var o=this.getFontAndAttr(r,n);a&&(o.attr["text-anchor"]=a),o.attr.x=e,o.attr.y=t+7,s||(o.attr.dy="0.5em"),"debugfont"===r&&(console.log("Debug msg: "+i),o.attr.stroke="#ff0000"),i=(i=i.replace(/\n\n/g,"\n \n")).replace(/^\n/," \n"),o.font.box&&(o.attr.x+=2,o.attr.y+=4);var c=this.paper.text(i,o.attr);if(o.font.box){var l=this.getTextSize(i,r,n);this.paper.rect({x:e-2,y:t,width:l.width+4,height:l.height+4-2,stroke:"#888888",fill:"transparent"})}return this.doRegression&&this.addToRegression(c),c},o.prototype.moveY=function(e,t){void 0===t&&(t=1),this.y+=e*t},o.prototype.skipSpaceY=function(){this.y+=this.space},o.prototype.outputTextIf=function(e,t,i,r,n,a,s){if(t){n&&this.moveY(n);this.renderText(e,this.y,t,i,r,s);var o=this.getTextSize(t,i,r),c=isNaN(o.width)?0:o.width,l=isNaN(o.height)?0:o.height;if(this.getFontAndAttr(i,r).font.box&&(c+=8,l+=8),null!==a){var h=t.split("\n").length;isNaN(o.height)||this.moveY(l/h,h+a)}return[c,l]}return[0,0]},o.prototype.addInvisibleMarker=function(e){var t=this.y;t=Math.round(t);var i=a("M %f %f L %f %f L %f %f L %f %f z",0,t-.35,100,t-.35,100,t+.35,0,t+.35);this.paper.pathToBack({path:i,stroke:"none",fill:"rgba(0,0,0,0)","fill-opacity":0,class:this.addClasses(e),"data-vertical":t})},o.prototype.printSeparator=function(e){var t=Math.round(this.y),i=(this.controller.width-e)/2,r=i+e,n="M "+i+" "+t+" L "+r+" "+t+" L "+r+" "+(t+1)+" L "+i+" "+(t+1)+" L "+i+" "+t+" z";this.paper.pathToBack({path:n,stroke:"rgba(0,0,0,0)",fill:"rgba(0,0,0,255)",class:this.addClasses("defined-text")})},o.prototype.printHorizontalLine=function(e,t,i){var r=.35,n="rgba(0,0,255,.4)",s=this.y;t&&(s=t),s=Math.round(s),this.paper.text(""+Math.round(s),{x:10,y:s,"text-anchor":"start","font-size":"18px",fill:n,stroke:n});var o=a("M %f %f L %f %f L %f %f L %f %f z",50,s-r,50+e,s-r,e,s+r,50,s+r);this.paper.pathToBack({path:o,stroke:"none",fill:n,class:this.addClasses("staff")});for(var c=1;c<e/100;c++)o=a("M %f %f L %f %f L %f %f L %f %f z",100*c-r,s-5,100*c-r,s+5,100*c+r,s-5,100*c+r,s+5),this.paper.pathToBack({path:o,stroke:"none",fill:n,class:this.addClasses("staff")});i&&this.paper.text(i,{x:e+70,y:s,"text-anchor":"start","font-size":"18px",fill:n,stroke:n})},o.prototype.printShadedBox=function(e,t,i,r,n,a,s){var o=this.paper.rect({x:e,y:t,width:i,height:r,fill:n,stroke:n,"fill-opacity":a,"stroke-opacity":a});return s&&this.paper.text(s,{x:0,y:t+7,"text-anchor":"start","font-size":"14px",fill:"rgba(0,0,255,.4)",stroke:"rgba(0,0,255,.4)"}),o},o.prototype.printVerticalLine=function(e,t,i){var r=a("M %f %f L %f %f L %f %f L %f %f z",e-.35,t,e-.35,i,e+.35,t,e+.35,i);this.paper.pathToBack({path:r,stroke:"none",fill:"#00aaaa",class:this.addClasses("staff")}),r=a("M %f %f L %f %f L %f %f L %f %f z",e-20,t,e-20,t+3,e,t,e,t+3),this.paper.pathToBack({path:r,stroke:"none",fill:"#00aaaa",class:this.addClasses("staff")}),r=a("M %f %f L %f %f L %f %f L %f %f z",e+20,i,e+20,i+3,e,i,e,i+3),this.paper.pathToBack({path:r,stroke:"none",fill:"#00aaaa",class:this.addClasses("staff")})},o.prototype.addToRegression=function(e){var t;try{t=e.getBBox()}catch(e){t={width:0,height:0}}var i=e.type+" "+t.toString()+" ",r=[];for(var n in e.attrs)e.attrs.hasOwnProperty(n)&&("class"===n?i=e.attrs[n]+" "+i:r.push(n+": "+e.attrs[n]));r.sort(),i+="{ "+r.join(" ")+" }",this.regressionLines.push(i)},e.exports=o},function(e,t){var i="http://www.w3.org/2000/svg";function r(e){this.svg=n(),e.appendChild(this.svg)}function n(){var e=document.createElementNS(i,"svg");return e.setAttributeNS("http://www.w3.org/2000/xmlns/","xmlns:xlink","http://www.w3.org/1999/xlink"),e.setAttribute("role","img"),e}r.prototype.clear=function(){if(this.svg){var e=this.svg.parentNode;this.svg=n(),e&&(e.innerHTML="",e.appendChild(this.svg))}},r.prototype.setTitle=function(e){var t=document.createElement("title"),i=document.createTextNode(e);t.appendChild(i),this.svg.insertBefore(t,this.svg.firstChild)},r.prototype.setResponsiveWidth=function(e,t){if(this.svg.setAttribute("viewBox","0 0 "+e+" "+t),this.svg.setAttribute("preserveAspectRatio","xMinYMin meet"),this.svg.removeAttribute("height"),this.svg.removeAttribute("width"),this.svg.style.display="inline-block",this.svg.style.position="absolute",this.svg.style.top="0",this.svg.style.left="0",this.svg.parentNode){var i=this.svg.parentNode.getAttribute("class");i?i.indexOf("abcjs-container")<0&&this.svg.parentNode.setAttribute("class",i+" abcjs-container"):this.svg.parentNode.setAttribute("class","abcjs-container"),this.svg.parentNode.style.display="inline-block",this.svg.parentNode.style.position="relative",this.svg.parentNode.style.width="100%";var r=t/e*100;this.svg.parentNode.style["padding-bottom"]=r+"%",this.svg.parentNode.style["vertical-align"]="middle",this.svg.parentNode.style.overflow="hidden"}},r.prototype.setSize=function(e,t){this.svg.setAttribute("width",e),this.svg.setAttribute("height",t)},r.prototype.setScale=function(e){1!==e?(this.svg.style.transform="scale("+e+","+e+")",this.svg.style["-ms-transform"]="scale("+e+","+e+")",this.svg.style["-webkit-transform"]="scale("+e+","+e+")",this.svg.style["transform-origin"]="0 0",this.svg.style["-ms-transform-origin-x"]="0",this.svg.style["-ms-transform-origin-y"]="0",this.svg.style["-webkit-transform-origin-x"]="0",this.svg.style["-webkit-transform-origin-y"]="0"):(this.svg.style.transform="",this.svg.style["-ms-transform"]="",this.svg.style["-webkit-transform"]="")},r.prototype.setParentStyles=function(e){for(var t in e)e.hasOwnProperty(t)&&this.svg.parentNode&&(this.svg.parentNode.style[t]=e[t]);this.dummySvg&&(document.querySelector("body").removeChild(this.dummySvg),this.dummySvg=null)},r.prototype.rect=function(e){var t=document.createElementNS(i,"rect");for(var r in e){if(e.hasOwnProperty(r))(""+e[r]).indexOf("NaN"),t.setAttributeNS(null,r,e[r])}return this.append(t),t},r.prototype.text=function(e,t,r){var n=document.createElementNS(i,"text");for(var a in t)t.hasOwnProperty(a)&&n.setAttribute(a,t[a]);for(var s=(""+e).split("\n"),o=0;o<s.length;o++){var c=document.createElementNS(i,"tspan");c.textContent=s[o],c.setAttribute("x",t.x?t.x:0),0!==o&&c.setAttribute("dy","1.2em"),n.appendChild(c)}return r?r.appendChild(n):this.append(n),n},r.prototype.guessWidth=function(e,t){var i,r=this.createDummySvg(),n=this.text(e,t,r);try{i=n.getBBox(),i=isNaN(i.height)||!i.height?{width:t["font-size"]/2,height:t["font-size"]+2}:{width:i.width,height:i.height}}catch(e){i={width:t["font-size"]/2,height:t["font-size"]+2}}return r.removeChild(n),i},r.prototype.createDummySvg=function(){if(!this.dummySvg){this.dummySvg=n();this.dummySvg.setAttribute("style",["display: block !important;","height: 1px;","width: 1px;","position: absolute;"].join("")),document.querySelector("body").appendChild(this.dummySvg)}return this.dummySvg},r.prototype.getTextSize=function(e,t,i){if("number"==typeof e&&(e=""+e),!e||e.match(/^\s+$/))return{width:0,height:0};var r,n=!i;i||(i=this.text(e,t));try{r=i.getBBox(),r=isNaN(r.height)||!r.height?this.guessWidth(e,t):{width:r.width,height:r.height}}catch(i){r=this.guessWidth(e,t)}return n&&(this.currentGroup?this.currentGroup.removeChild(i):this.svg.removeChild(i)),r},r.prototype.openGroup=function(e){e=e||{};var t=document.createElementNS(i,"g");return e.prepend?this.svg.insertBefore(t,this.svg.firstChild):this.svg.appendChild(t),this.currentGroup=t,t},r.prototype.closeGroup=function(){var e=this.currentGroup;return this.currentGroup=null,e},r.prototype.path=function(e){var t=document.createElementNS(i,"path");for(var r in e)e.hasOwnProperty(r)&&("path"===r?t.setAttributeNS(null,"d",e.path):t.setAttributeNS(null,r,e[r]));return this.append(t),t},r.prototype.pathToBack=function(e){var t=document.createElementNS(i,"path");for(var r in e)e.hasOwnProperty(r)&&("path"===r?t.setAttributeNS(null,"d",e.path):t.setAttributeNS(null,r,e[r]));return this.prepend(t),t},r.prototype.append=function(e){this.currentGroup?this.currentGroup.appendChild(e):this.svg.appendChild(e)},r.prototype.prepend=function(e){this.currentGroup?this.currentGroup.appendChild(e):this.svg.insertBefore(e,this.svg.firstChild)},r.prototype.setAttributeOnElement=function(e,t){for(var i in t)t.hasOwnProperty(i)&&e.setAttributeNS(null,i,t[i])},e.exports=r},function(e,t,i){var r=i(21);e.exports=function(e,t,i,n){return new Promise((function(a,s){r[t]||(r[t]={});var o=r[t];if("error"===o[i])return s(new Error("Unable to load sound font "+e+" "+t+" "+i));if(o[i])return a({instrument:t,name:i});o[i]="pending";var c=new XMLHttpRequest;c.open("GET",e+t+"-mp3/"+i+".mp3",!0),c.responseType="arraybuffer";var l=this;function h(e){o[i]=e,a({instrument:t,name:i})}function u(e){l.debugCallback&&l.debugCallback(e),console.log(e),s(e)}c.onload=function(t){if(200!==this.status){o[i]="error";var r="Onload error loading sound: "+i+" "+e+" "+t.currentTarget.status+" "+t.currentTarget.statusText;return l.debugCallback&&l.debugCallback(r),s(new Error(r))}n.decodeAudioData(this.response,h,u)},c.addEventListener("error",(function(){o[i]="error";var t="Error in loading sound: "+e;return l.debugCallback&&l.debugCallback(t),s(new Error(t))}),!1),c.send()}))}},function(e,t,i){var r=i(14);e.exports=function(e){for(var t=[],i=0;i<e.tracks.length;i++)t.push([]);var n={},a=r[0];return e.tracks.forEach((function(e,i){var s=0;e.forEach((function(e){switch(e.cmd){case"start":n[e.pitch]={time:s,instrument:a,volume:e.volume};break;case"move":s+=e.duration;break;case"stop":t[i].push({pitch:e.pitch,instrument:n[e.pitch].instrument,start:n[e.pitch].time,end:s,volume:n[e.pitch].volume}),delete n[e.pitch];break;case"program":a=r[e.instrument];break;default:console.log("Unhanded midi event",e)}}))})),t}},function(e,t){e.exports=function(e){return window.URL.createObjectURL(function(e){var t,i,r=e.length,n=e[0].length*r*2+44,a=new ArrayBuffer(n),s=new DataView(a),o=[],c=0,l=0;for(u(1179011410),u(n-8),u(1163280727),u(544501094),u(16),h(1),h(r),u(e[0].sampleRate),u(2*e[0].sampleRate*r),h(2*r),h(16),u(1635017060),u(n-l-4),t=0;t<e.length;t++)o.push(e[t].getChannelData(0));for(;l<n;){for(t=0;t<o.length;t++)i=0|(.5+(i=Math.max(-1,Math.min(1,o[t][c])))<0?32768*i:32767*i),s.setInt16(l,i,!0),l+=2;c++}return new Blob([a],{type:"audio/wav"});function h(e){s.setUint16(l,e,!0),l+=2}function u(e){s.setUint32(l,e,!0),l+=4}}(e.audioBuffers))}},function(e,t){var i;!function(){"use strict";var e;function t(e){var t=.25;e.duration&&(t=e.duration[0]);var i=60;return e.bpm&&(i=e.bpm),t*i/.25}function r(t){var i;switch(t.type){case"common_time":i={el_type:"meter",num:4,den:4};break;case"cut_time":i={el_type:"meter",num:2,den:2};break;case"specified":i={el_type:"meter",num:t.value[0].num,den:t.value[0].den};break;default:i={el_type:"meter"}}return e=i.num/i.den,i}i=function(i,n){var a=180,s=(n=n||{}).program||0,o=n.midiTranspose||0,c=n.channel||0,l=n.drum||"",h=n.drumBars||1,u=n.drumIntro||0,d=""!==l;s=parseInt(s,10),o=parseInt(o,10),10===(c=parseInt(c,10))&&(s=128),l=l.split(" "),h=parseInt(h,10),u=parseInt(u,10);var p=i.formatting.bagpipes;if(p&&(s=71),i.formatting.midi){var f=i.formatting.midi;f.program&&f.program.length>0&&(s=f.program[0],f.program.length>1&&(s=f.program[1],c=f.program[0])),f.transpose&&(o=f.transpose[0]),f.channel&&(c=f.channel[0]),f.drum&&(l=f.drum),f.drumbars&&(h=f.drumbars[0]),f.drumon&&(d=!0),10===c&&(s=128)}i.metaText.tempo&&(a=t(i.metaText.tempo)),n.qpm&&(a=parseInt(n.qpm,10));var m=[];p&&m.push({el_type:"bagpipes"}),m.push({el_type:"instrument",program:s}),c&&m.push({el_type:"channel",channel:c}),o&&m.push({el_type:"transpose",transpose:o}),m.push({el_type:"tempo",qpm:a});for(var g=[],v=[],b=[],y=!1,w=0;w<i.lines.length;w++){var k=i.lines[w];if(k.staff)for(var x=k.staff,S=0,_=0;_<x.length;_++)for(var T=x[_],A=0;A<T.voices.length;A++){var C=T.voices[A];if(g[S]||(g[S]=[].concat(JSON.parse(JSON.stringify(m)))),T.clef&&"perc"===T.clef.type)for(var N=0;N<g[S].length;N++)"instrument"===g[S][N].el_type&&(g[S][N].program=128);else T.key&&("HP"===T.key.root?g[S].push({el_type:"key",accidentals:[{acc:"natural",note:"g"},{acc:"sharp",note:"f"},{acc:"sharp",note:"c"}]}):g[S].push({el_type:"key",accidentals:T.key.accidentals}));T.meter&&g[S].push(r(T.meter)),!y&&d&&(g[S].push({el_type:"drum",params:{pattern:l,bars:h,on:d,intro:u}}),y=!0),T.clef&&T.clef.transpose&&(T.clef.el_type="clef",g[S].push({el_type:"transpose",transpose:T.clef.transpose})),i.formatting.midi&&i.formatting.midi.drumoff&&(g[S].push({el_type:"bar"}),g[S].push({el_type:"drum",params:{pattern:"",on:!1}}));for(var E=0,M=0;M<C.length;M++){var B=C[M];switch(B.el_type){case"note":B.rest&&"spacer"===B.rest.type||(g[S].push(B),E++);break;case"key":"HP"===B.root?g[S].push({el_type:"key",accidentals:[{acc:"natural",note:"g"},{acc:"sharp",note:"f"},{acc:"sharp",note:"c"}]}):g[S].push({el_type:"key",accidentals:B.accidentals});break;case"meter":g[S].push(r(B));break;case"clef":B.transpose&&g[S].push({el_type:"transpose",transpose:B.transpose});break;case"tempo":a=t(B),g[S].push({el_type:"tempo",qpm:a});break;case"bar":E>0&&g[S].push({el_type:"bar"}),E=0;var P="bar_right_repeat"===B.type||"bar_dbl_repeat"===B.type,L="1"===B.startEnding,H="bar_left_repeat"===B.type||"bar_dbl_repeat"===B.type||"bar_right_repeat"===B.type;if(P){var z=v[S];z||(z=0);var I=b[S];I||(I=g[S].length),g[S]=g[S].concat(g[S].slice(z,I)),b[S]=void 0,v[S]=void 0}L&&(b[S]=g[S].length),H&&(v[S]=g[S].length);break;case"style":case"part":break;case"stem":case"scale":break;case"midi":var D=!1;switch(B.cmd){case"drumon":d=!0,D=!0;break;case"drumoff":d=!1,D=!0;break;case"drum":l=B.params,D=!0;break;case"drumbars":h=B.params[0],D=!0;break;case"drummap":break;case"program":g[S].push({el_type:"instrument",program:B.params[0]});break;case"transpose":g[S].push({el_type:"transpose",transpose:B.params[0]});break;case"gchordoff":g[S].push({el_type:"gchord",tacet:!0});break;case"gchordon":g[S].push({el_type:"gchord",tacet:!1});break;case"beat":g[S].push({el_type:"beat",beats:B.params});break;default:console.log("MIDI seq: midi cmd not handled: ",B.cmd,B)}D&&(g[0].push({el_type:"drum",params:{pattern:l,bars:h,intro:u,on:d}}),y=!0);break;default:console.log("MIDI: element type "+B.el_type+" not handled.")}}S++}}if(u)for(var O=i.getPickupLength(),F=0;F<g.length;F++){for(var Y=0;"note"!==g[F][Y].el_type&&g[F].length>Y;)Y++;if(g[F].length>Y)for(var j=0;j<u;j++)0===O||j<u-1?g[F].splice(Y,0,{el_type:"note",rest:{type:"rest"},duration:e},{el_type:"bar"}):g[F].splice(Y,0,{el_type:"note",rest:{type:"rest"},duration:e-O})}return g}}(),e.exports=i},function(e,t){var i;!function(){"use strict";var e,t,r,n,a,s,o,c,l,h,u,d,p,f,m,g,v,b,y,w,k,x=1,S={num:4,den:4},_=0,T=128,A=!1,C=64,N=64,E=64,M=.25,B={},P=1/128;function L(e){for(var t=0,i=0;i<e.length;i++){for(var r=e[i],n=0,a=0;a<r.length;a++){var s=r[a];s.duration&&(n+=s.duration)}t=Math.max(t,n)}return t}function H(e){switch(e.den){case 2:return.5;case 4:return.25;case 8:return.375;case 16:return.125}return.25}i=function(i,_){_||(_={}),e=[],t=[0,0,0,0,0,0,0],n=!1,a=1,s=[],o=void 0,c=void 0,x=1,l=void 0,h=void 0,u=void 0,f=void 0,d={},S={num:4,den:4},m=[],v=i.length,g=!1,b=[],y=void 0,w=0,A=!!_.chordsOff,C=64,N=64,E=64,M=.25,k=[],!1,B={};for(var T=0;T<i.length;T++){r=0,p=-1;var P=i[T];u=[{cmd:"program",channel:T,instrument:l}],f=0,d={};for(var z=0;z<P.length;z++){var I=P[z];switch(I.el_type){case"note":D(I,_.voicesOff);break;case"key":t=Y(I);break;case"meter":c||(c=I),M=H(S=I);break;case"tempo":o?x=I.qpm?o/I.qpm:1:o=I.qpm;break;case"transpose":r=I.transpose;break;case"bar":m.length>0&&0===T&&(Q(),b=[]),w=0,e=[],0===T&&$(i.length+1);break;case"bagpipes":n=!0;break;case"instrument":void 0===l&&(l=I.program),h=I.program,u.push({cmd:"program",channel:T,instrument:I.program});break;case"channel":break;case"drum":B=Z(I.params);break;case"gchord":_.chordsOff||(A=I.tacet);break;case"beat":C=I.beats[0],N=I.beats[1],E=I.beats[2];break;default:console.log("MIDI creation. Unknown el_type: "+I.el_type+"\n")}}void 0===u[0].instrument&&(u[0].instrument=l||0),s.push(u),m.length>0&&(g=!0),k.length>0&&!0}return m.length>0&&s.push(m),k.length>0&&s.push(k),{tempo:o,instrument:l,tracks:s,totalDuration:L(s)}};var z=["break","(break)","no chord","n.c.","tacet"];function I(){for(var e=0,t=0;t<u.length;t++)"move"===u[t].cmd&&(e+=u[t].duration);return e}function D(e,t){var i;i=0===w?C:w%M<.001?N:E;var s=t?0:i,o=function(e){if(A)return"break";if(g||!e.chord||0===e.chord.length)return null;for(var t=0;t<e.chord.length;t++){var i=e.chord[t];if("default"===i.position)return i.name;if(z.indexOf(i.name.toLowerCase())>=0)return"break"}return null}(e);if(o){var c=function(e){if(0===e.length)return;if("break"===e)return{chick:[]};var t=e.substring(0,1);if("("===t){if(0===(e=e.substring(1,e.length-2)).length)return;t=e.substring(0,1)}var i=R[t];if(!i)return;var n,a=(i+=r)-5;1===e.length&&(n=q(i,""));var s=e.substring(1),o=s.substring(0,1);"b"===o||"♭"===o?(i--,a--,s=s.substring(1)):"#"!==o&&"♯"!==o||(i++,a++,s=s.substring(1));var c=s.split("/");if(n=q(i,c[0]),2===c.length){R[c[1]]&&(i=R[c[1]]+r,a=i)}return{boom:i,boom2:a,chick:n}}(o);if(c){if(0===m.length){m.push({cmd:"program",channel:v,instrument:_});var l=I();l>0&&m.push({cmd:"move",duration:l*x})}y=c,b.push({chord:y,beat:w})}}e.startTriplet&&(a=e.tripletMultiplier);var k,S=(e.durationClass?e.durationClass:e.duration)*a;if(w+=S,e.gracenotes){var T=n||p<0||0===u.length,B=T?S:u[p].duration;k=function(e,t){for(var i,r=0,n=[],a=0;a<e.length;a++)i=e[a],r+=i.duration;var s=2*(r/=j)>t?t/(2*r):1;for(a=0;a<e.length;a++){var o=(i=e[a]).midipitch?i.midipitch-60:i.pitch;n.push({pitch:o,duration:i.duration/j*s})}return n}(e.gracenotes,B),n||(S=V(k,T,S,null,s))}if(e.currentTrackMilliseconds=f,e.pitches){k&&n&&(S=V(k,!0,S,null,s));var L=[];e.midiPitches=[];for(var H=0;H<e.pitches.length;H++){var D=e.pitches[H],O=F(D);if(L.push({pitch:O,startTie:D.startTie}),e.midiPitches.push({pitch:O+60,durationInMeasures:S*x,volume:i,instrument:h}),d[""+O]){for(var Y=u.length-1;Y>=0;Y--)if("start"===u[Y].cmd&&u[Y].pitch===O){for(var G=u[Y].elem.midiPitches,W=0;W<G.length;W++)G[W].pitch-60===O&&(G[W].durationInMeasures+=S*x);break}}else u.push({cmd:"start",pitch:O,volume:s});D.startTie?(d[""+O]=!0,u[u.length-1].elem=e):D.endTie&&(d[""+O]=!1)}if(e.gracenotes)for(var U=0;U<e.gracenotes.length;U++){e.midiGraceNotePitches=[];var X=e.gracenotes[U];e.midiGraceNotePitches.push({pitch:F(X)+60,durationInMeasures:0,volume:i,instrument:h})}var K=P,Q=S-P;Q<0&&(Q=0,K=0),u.push({cmd:"move",duration:Q*x}),p=u.length-1,f+=Q*x;for(var Z=0;Z<L.length;Z++)d[""+L[Z].pitch]||u.push({cmd:"stop",pitch:L[Z].pitch});u.push({cmd:"move",duration:K*x}),f+=K*x}else e.rest&&(u.push({cmd:"move",duration:S*x}),f+=S*x);e.endTriplet&&(a=1)}var O=[0,2,4,5,7,9,11];function F(i){if(i.midipitch)return i.midipitch-60;var n=i.pitch;if(i.accidental)switch(i.accidental){case"sharp":e[n]=1;break;case"flat":e[n]=-1;break;case"natural":e[n]=0;break;case"dblsharp":e[n]=2;break;case"dblflat":e[n]=-2}var a=12*function(e){return Math.floor(e/7)}(n)+O[G(n)];return void 0!==e[n]?a+=e[n]:a+=t[G(n)],a+=r}function Y(e){var t=[0,0,0,0,0,0,0];if(!e.accidentals)return t;for(var i=0;i<e.accidentals.length;i++){var r=e.accidentals[i],n="sharp"===r.acc?1:"natural"===r.acc?0:-1;t[G(r.note.toLowerCase().charCodeAt(0)-"c".charCodeAt(0))]+=n}return t}var j=8;function V(e,t,i,r,n){for(var a=0;a<e.length;a++){var s=F(e[a]);s!==r&&u.push({cmd:"start",pitch:s,volume:n}),u.push({cmd:"move",duration:e[a].duration*x}),s!==r&&u.push({cmd:"stop",pitch:s}),t||(u[p].duration-=e[a].duration),i-=e[a].duration}return i}function G(e){return(e%=7)<0&&(e+=7),e}var R={A:-27,B:-25,C:-24,D:-22,E:-20,F:-19,G:-17};var W={dim:[0,3,6],"°":[0,3,6],"˚":[0,3,6],dim7:[0,3,6,9],"°7":[0,3,6,9],"˚7":[0,3,6,9],"ø7":[0,3,6,10],"m7(b5)":[0,3,6,10],m7b5:[0,3,6,10],"-7(b5)":[0,3,6,10],"-7b5":[0,3,6,10],"7b5":[0,4,6,10],"7(b5)":[0,4,6,10],"7♭5":[0,4,6,10],"7(b9,b5)":[0,4,6,10,13],"7b9,b5":[0,4,6,10,13],"7(#9,b5)":[0,4,6,10,15],"7#9b5":[0,4,6,10,15],"maj7(b5)":[0,3,6,11],maj7b5:[0,3,6,11],"13(b5)":[0,4,6,10,14,18],"13b5":[0,4,6,10,14,18],m:[0,3,7],"-":[0,3,7],m6:[0,3,7,9],"-6":[0,3,7,9],m7:[0,3,7,10],"-7":[0,3,7,10],"-(b6)":[0,3,7,8],"-b6":[0,3,7,8],"-6/9":[0,3,7,9,14],"-7(b9)":[0,3,7,10,13],"-7b9":[0,3,7,10,13],"-maj7":[0,3,7,11],"-9+7":[0,3,7,11,13],"-11":[0,3,7,11,14,16],M:[0,4,7],6:[0,4,7,9],"6/9":[0,4,7,9,14],7:[0,4,7,10],9:[0,4,7,10,14],11:[0,4,7,10,14,16],13:[0,4,7,10,14,18],"7b9":[0,4,7,10,13],"7♭9":[0,4,7,10,13],"7(b9)":[0,4,7,10,13],"7(#9)":[0,4,7,10,15],"7#9":[0,4,7,10,15],"(13)":[0,4,7,10,14,18],"7(9,13)":[0,4,7,10,14,18],"7(#9,b13)":[0,4,7,10,15,17],"7(#11)":[0,4,7,10,14,17],"7#11":[0,4,7,10,14,17],"7(b13)":[0,4,7,10,17],"7b13":[0,4,7,10,17],"9(#11)":[0,4,7,10,14,17],"9#11":[0,4,7,10,14,17],"13(#11)":[0,4,7,10,15,18],"13#11":[0,4,7,10,15,18],maj7:[0,4,7,11],"∆7":[0,4,7,11],"Δ7":[0,4,7,11],maj9:[0,4,7,11,14],"maj7(9)":[0,4,7,11,14],"maj7(11)":[0,4,7,11,16],"maj7(#11)":[0,4,7,11,17],"maj7(13)":[0,4,7,11,18],"maj7(9,13)":[0,4,7,11,14,18],"7sus4":[0,5,7,10],m7sus4:[0,5,7,10],sus4:[0,5,7],sus2:[0,2,7],"7sus2":[0,2,7,10],"9sus4":[0,5,7,14],"13sus4":[0,5,7,18],aug7:[0,4,8,10],"+7":[0,4,8,10],"+":[0,4,8],"7#5":[0,4,8,10],"7♯5":[0,4,8,10],"7+5":[0,4,8,10],"9#5":[0,4,8,10,14],"9♯5":[0,4,8,10,14],"9+5":[0,4,8,10,14],"-7(#5)":[0,3,8,10],"-7#5":[0,3,8,10],"7(#5)":[0,4,8,10],"7(b9,#5)":[0,4,8,10,13],"7b9#5":[0,4,8,10,13],"maj7(#5)":[0,4,8,11],"maj7#5":[0,4,8,11],"maj7(#5,#11)":[0,4,8,11,14],"maj7#5#11":[0,4,8,11,14],"9(#5)":[0,4,8,10,14],"13(#5)":[0,4,8,10,14,18],"13#5":[0,4,8,10,14,18]};function q(e,t){var i=W[t];i||(i=W.M),e+=12;for(var r=[],n=0;n<i.length;n++)r.push(e+i[n]);return r}function U(e,t){void 0!==e&&m.push({cmd:"start",pitch:e,volume:64}),m.push({cmd:"move",duration:t/2*x}),void 0!==e&&m.push({cmd:"stop",pitch:e}),m.push({cmd:"move",duration:t/2*x})}function X(e,t){for(var i=0;i<e.length;i++)m.push({cmd:"start",pitch:e[i],volume:48});for(m.push({cmd:"move",duration:t/2*x}),i=0;i<e.length;i++)m.push({cmd:"stop",pitch:e[i]});m.push({cmd:"move",duration:t/2*x})}var K={"2/2":["boom","chick"],"2/4":["boom","chick"],"3/4":["boom","chick","chick"],"4/4":["boom","chick","boom2","chick"],"5/4":["boom","chick","chick","boom2","chick"],"6/8":["boom","","chick","boom2","","chick"],"9/8":["boom","","chick","boom2","","chick","boom2","","chick"],"12/8":["boom","","chick","boom2","","chick","boom2","","chick","boom2","","chick"]};function Q(){var e=S.num,t=S.den,i=1/t,r=K[e+"/"+t],n=parseInt(e,10)/parseInt(t,10),a=Math.abs(n-w);if(!r||a>.0078125){r=[];for(var s=w/i,o=0;o<s;o++)r.push("chick")}if(0===b.length&&b.push({beat:0,chord:y}),0!==b[0].beat&&y&&b.unshift({beat:0,chord:y}),1!==b.length){for(var c={},l=0;l<b.length;l++){var h=b[l];c[""+Math.floor(h.beat/i)]=h}for(var u=0;u<r.length;u++){var d;switch(c[""+u]&&(d=c[""+u]),r[u]){case"boom":c[""+(u+1)]?X(d.chord.chick,i):U(d.chord.boom,i);break;case"boom2":c[""+(u+1)]?X(d.chord.chick,i):U(d.chord.boom2,i);break;case"chick":X(d.chord.chick,i);break;case"":c[""+u]?X(d.chord.chick,i):m.push({cmd:"move",duration:i*x})}}}else for(var p=0;p<r.length;p++)switch(r[p]){case"boom":U(b[0].chord.boom,i);break;case"boom2":U(b[0].chord.boom2,i);break;case"chick":X(b[0].chord.chick,i);break;case"":m.push({cmd:"move",duration:i*x})}}function Z(e){if(0===e.pattern.length||!1===e.on)return{on:!1};for(var t=e.pattern[0],i=[],r="",n=0,a=0;a<t.length;a++)if("d"===t[a]&&n++,"d"===t[a]||"z"===t[a])0!==r.length?(i.push(r),r=t[a]):r+=t[a];else{if(0===r.length)return{on:!1};r+=t[a]}if(0!==r.length&&i.push(r),e.pattern.length!==2*n+1)return{on:!1};for(var s={on:!0,bars:e.bars,pattern:[]},o=1/S.den,c=0,l=0;l<i.length;l++){r=i[l];for(var h=1,u=!1,d=0,p=1;p<r.length;p++)switch(r[p]){case"/":0!==d&&(h*=d),d=0,u=!0;break;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":d=10*d+r[p];break;default:return{on:!1}}u?(0===d&&(d=2),h/=d):d&&(h*=d),"d"===r[0]?(s.pattern.push({len:h*o,pitch:e.pattern[1+c],velocity:e.pattern[1+c+n]}),c++):s.pattern.push({len:h*o,pitch:null})}for(var f=0,m=S.num/S.den,g=0;g<s.pattern.length;g++)f+=s.pattern[g].len;var v=f/(e.bars?e.bars:1)/m;for(g=0;g<s.pattern.length;g++)s.pattern[g].len=s.pattern[g].len/v;return s}function $(e){if(0!==k.length||B.on){var t,i,r,n=S.num/S.den;if(0===k.length){k.push({cmd:"program",channel:e,instrument:T});var a=I();if(a>0&&a<n-.01)return void k.push({cmd:"move",duration:a*x})}if(B.on)for(var s=0;s<B.pattern.length;s++){var o=B.pattern[s].len*x;B.pattern[s].pitch?(t=B.pattern[s].pitch,i=o,r=B.pattern[s].velocity,k.push({cmd:"start",pitch:t-60,volume:r}),k.push({cmd:"move",duration:i}),k.push({cmd:"stop",pitch:t-60})):k.push({cmd:"move",duration:o})}else k.push({cmd:"move",duration:n*x})}}}(),e.exports=i},function(e,t,i){var r=i(23),n=i(13);e.exports=function(e,t,i){for(var a=new r,s=0;s<e.length;s++){var o=e[s],c=a.addTrack();if(a.setInstrument(c,o.instrument),0===s&&t)for(var l=0;l<t.length;l++){var h=t[l];a.appendNote(c,h.pitch,1/64,h.volume)}a.appendNote(c,o.pitch,o.durationInMeasures,o.volume)}var u=new n;return u.init({sequence:a,millisecondsPerMeasure:i}).then((function(){return u.prime()})).then((function(){return u.start()}))}},function(e,t,i){var r=i(9).TuneBook,n=i(0),a=i(10),s=i(57),o=i(19),c=i(25),l=i(7);if("function"!=typeof window.CustomEvent){var h=function(e,t){t=t||{bubbles:!1,cancelable:!1,detail:void 0};var i=document.createEvent("CustomEvent");return i.initCustomEvent(e,t.bubbles,t.cancelable,t.detail),i};h.prototype=window.Event.prototype,window.CustomEvent=h}var u=function(e){this.textarea=document.getElementById(e),this.initialText=this.textarea.value,this.isDragging=!1};u.prototype.addSelectionListener=function(e){this.textarea.onmousemove=function(t){this.isDragging&&e.fireSelectionChanged()}},u.prototype.addChangeListener=function(e){this.changelistener=e,this.textarea.onkeyup=function(){e.fireChanged()},this.textarea.onmousedown=function(){this.isDragging=!0,e.fireSelectionChanged()},this.textarea.onmouseup=function(){this.isDragging=!1,e.fireChanged()},this.textarea.onchange=function(){e.fireChanged()}},u.prototype.getSelection=function(){return{start:this.textarea.selectionStart,end:this.textarea.selectionEnd}},u.prototype.setSelection=function(e,t){if(this.textarea.setSelectionRange)this.textarea.setSelectionRange(e,t);else if(this.textarea.createTextRange){var i=this.textarea.createTextRange();i.collapse(!0),i.moveEnd("character",t),i.moveStart("character",e),i.select()}this.textarea.focus()},u.prototype.getString=function(){return this.textarea.value},u.prototype.setString=function(e){this.textarea.value=e,this.initialText=this.getString(),this.changelistener&&this.changelistener.fireChanged()},u.prototype.getElem=function(){return this.textarea};var d=function(e,t){var i;if(this.abcjsParams={},t.abcjsParams)for(i in t.abcjsParams)t.abcjsParams.hasOwnProperty(i)&&(this.abcjsParams[i]=t.abcjsParams[i]);if(t.midi_options)for(i in t.midi_options)t.midi_options.hasOwnProperty(i)&&(this.abcjsParams[i]=t.midi_options[i]);if(t.parser_options)for(i in t.parser_options)t.parser_options.hasOwnProperty(i)&&(this.abcjsParams[i]=t.parser_options[i]);if(t.render_options)for(i in t.render_options)t.render_options.hasOwnProperty(i)&&(this.abcjsParams[i]=t.render_options[i]);t.indicate_changed&&(this.indicate_changed=!0),this.editarea="string"==typeof e?new u(e):e,this.editarea.addSelectionListener(this),this.editarea.addChangeListener(this),t.canvas_id?this.div=document.getElementById(t.canvas_id):t.paper_id?this.div=document.getElementById(t.paper_id):(this.div=document.createElement("DIV"),this.editarea.getElem().parentNode.insertBefore(this.div,this.editarea.getElem())),t.synth&&l()&&(this.synth={el:t.synth.el,cursorControl:t.synth.cursorControl,options:t.synth.options}),t.generate_midi&&(this.generate_midi=t.generate_midi,this.abcjsParams.generateDownload&&("string"==typeof t.midi_download_id?this.downloadMidi=document.getElementById(t.midi_download_id):t.midi_download_id&&(this.downloadMidi=t.midi_download_id)),!1!==this.abcjsParams.generateInline&&("string"==typeof t.midi_id?this.inlineMidi=document.getElementById(t.midi_id):t.midi_id&&(this.inlineMidi=t.midi_id))),(t.generate_warnings||t.warnings_id)&&(t.warnings_id?this.warningsdiv=document.getElementById(t.warnings_id):this.warningsdiv=this.div),this.onchangeCallback=t.onchange,t.gui&&(this.target=document.getElementById(e),this.abcjsParams.editable=!0),this.oldt="",this.bReentry=!1,this.parseABC(),this.modelChanged(),this.addClassName=function(e,t){return function(e,t){var i=e.className;return i.length>0&&(i===t||new RegExp("(^|\\s)"+t+"(\\s|$)").test(i))}(e,t)||(e.className+=(e.className?" ":"")+t),e},this.removeClassName=function(e,t){return e.className=n.strip(e.className.replace(new RegExp("(^|\\s+)"+t+"(\\s+|$)")," ")),e},this.setReadOnly=function(e){var t=this.editarea.getElem();e?(t.setAttribute("readonly","yes"),this.addClassName(t,"abc_textarea_readonly")):(t.removeAttribute("readonly"),this.removeClassName(t,"abc_textarea_readonly"))}};d.prototype.renderTune=function(e,t,i){var n=new r(e),s=a();s.parse(n.tunes[0].abc,t,n.tunes[0].startPos-n.header.length);var c=s.getTune();new o(i,this.abcjsParams).engraveABC(c)},d.prototype.redrawMidi=function(){if(this.generate_midi&&!this.midiPause){var e=new window.CustomEvent("generateMidi",{detail:{tunes:this.tunes,abcjsParams:this.abcjsParams,downloadMidiEl:this.downloadMidi,inlineMidiEl:this.inlineMidi,engravingEl:this.div}});window.dispatchEvent(e)}this.synth&&(this.synth.synthControl||(this.synth.synthControl=new c,this.synth.synthControl.load(this.synth.el,this.synth.cursorControl,this.synth.options)),this.synth.synthControl.setTune(this.tunes[0],!1))},d.prototype.modelChanged=function(){if(void 0===this.tunes)return void 0!==this.downloadMidi&&(this.downloadMidi.innerHTML=""),void 0!==this.inlineMidi&&(this.inlineMidi.innerHTML=""),void(this.div.innerHTML="");if(!this.bReentry){if(this.bReentry=!0,this.timerId=null,this.div.innerHTML="",this.engraver_controller=new o(this.div,this.abcjsParams),this.engraver_controller.engraveABC(this.tunes),this.tunes[0].engraver=this.engraver_controller,this.redrawMidi(),this.warningsdiv&&(this.warningsdiv.innerHTML=this.warnings?this.warnings.join("<br />"):"No errors"),this.target)new s(this.target,!0).printABC(this.tunes[0]);this.engraver_controller.addSelectListener(this.highlight.bind(this)),this.updateSelection(),this.bReentry=!1}},d.prototype.paramChanged=function(e){if(e)for(var t in e)e.hasOwnProperty(t)&&(this.abcjsParams[t]=e[t]);this.oldt="",this.fireChanged()},d.prototype.parseABC=function(){var e=this.editarea.getString();if(e===this.oldt)return this.updateSelection(),!1;if(this.oldt=e,""===e)return this.tunes=void 0,this.warnings="",!0;var t=new r(e);this.tunes=[],this.startPos=[],this.warnings=[];for(var i=0;i<t.tunes.length;i++){var n=new a;n.parse(t.tunes[i].abc,this.abcjsParams,t.tunes[i].startPos-t.header.length),this.tunes[i]=n.getTune(),this.startPos[i]=t.tunes[i].startPos;for(var s=n.getWarnings()||[],o=0;o<s.length;o++)this.warnings.push(s[o])}return!0},d.prototype.updateSelection=function(){var e=this.editarea.getSelection();try{this.engraver_controller.rangeHighlight(e.start,e.end)}catch(e){}},d.prototype.fireSelectionChanged=function(){this.updateSelection()},d.prototype.setDirtyStyle=function(e){if(void 0!==this.indicate_changed){var t,i,r=this.editarea.getElem();e?function(e,t){var i=e.className;return i.length>0&&(i===t||new RegExp("(^|\\s)"+t+"(\\s|$)").test(i))}(t=r,i="abc_textarea_dirty")||(t.className+=(t.className?" ":"")+i):function(e,t){e.className=n.strip(e.className.replace(new RegExp("(^|\\s+)"+t+"(\\s+|$)")," "))}(r,"abc_textarea_dirty")}},d.prototype.fireChanged=function(){if(!this.bIsPaused&&this.parseABC()){var e=this;this.timerId&&clearTimeout(this.timerId),this.timerId=setTimeout((function(){e.modelChanged()}),300);var t=this.isDirty();this.wasDirty!==t&&(this.wasDirty=t,this.setDirtyStyle(t)),this.onchangeCallback&&this.onchangeCallback(this)}},d.prototype.setNotDirty=function(){this.editarea.initialText=this.editarea.getString(),this.wasDirty=!1,this.setDirtyStyle(!1)},d.prototype.isDirty=function(){return void 0!==this.indicate_changed&&this.editarea.initialText!==this.editarea.getString()},d.prototype.highlight=function(e,t,i){this.editarea.setSelection(e.startChar,e.endChar)},d.prototype.pause=function(e){this.bIsPaused=e,e||this.fireChanged()},d.prototype.millisecondsPerMeasure=function(){return this.synth.synthControl.visualObj.millisecondsPerMeasure()},d.prototype.pauseMidi=function(e){this.midiPause=e,e||this.redrawMidi()},e.exports=d},function(e,t){var i=function(e,t){this.elem=e,this.text="",this.l=1/8,this.reposition=t||!1};i.prototype.printString=function(e,t){this.reposition&&t&&(t.startChar=this.text.length),this.text+=e,this.reposition&&t&&(t.endChar=this.text.length)},i.prototype.printNewLine=function(){this.text+="\n"},i.prototype.printSpace=function(){this.text[this.text.length-1].match(/\s/)||(this.text+=" ")},i.prototype.printABC=function(e){this.text="",this.abctune=e,this.printHeader(),this.printBody(),this.elem.value=this.text},i.prototype.printHeader=function(){this.printHeaderLine("x","X","1"),this.printHeaderLine("title","T"),this.printHeaderLine("composer","C"),this.printHeaderLine("history","H"),this.printHeaderLine("author","A"),this.printHeaderLine("book","B"),this.printHeaderLine("discography","D"),this.printHeaderLine("url","F"),this.printHeaderLine("group","G"),this.printHeaderLine("instruction","I"),this.printHeaderLine("notes","N"),this.printHeaderLine("origin","O"),this.printHeaderLine("rhythm","R"),this.printHeaderLine("source","S"),this.printHeaderLine("unalignedwords","W"),this.printHeaderLine("transcription","Z"),this.printHeaderLine("NULL","L","1/8"),this.printHeaderLine("NULL","M",this.getMeterString(this.abctune.lines[0].staff[0].meter)),this.printHeaderLine("NULL","K",this.getKeyString(this.abctune.lines[0].staff[0].key))},i.prototype.getKeyString=function(e){return e.root+e.acc+e.mode},i.prototype.getMeterString=function(e){switch(e.type){case"cut_time":return"C|";case"common_time":return"C";case"specified":return e.value[0].den?e.value[0].num+"/"+e.value[0].den:e.value[0].num}return""},i.prototype.printHeaderLine=function(e,t,i){var r=this.abctune.metaText[e]||i;if(void 0!==r)for(var n=r.split("\n"),a=0;a<n.length;a++)this.printString(t+": "+n[a]),this.printNewLine()},i.prototype.getElem=function(){return this.abcline.length<=this.pos?null:this.abcline[this.pos]},i.prototype.getNextElem=function(){return this.abcline.length<=this.pos+1?null:this.abcline[this.pos+1]},i.prototype.printBody=function(){for(var e=0;e<this.abctune.lines.length;e++){var t=this.abctune.lines[e];t.staff?this.printABCLine(t.staff):t.subtitle&&0!==e||t.text}},i.prototype.printABCLine=function(e){for(this.s=0;this.s<e.length;this.s++)this.printABCStaff(e[this.s])},i.prototype.printABCStaff=function(e){for(this.v=0;this.v<e.voices.length;this.v++)this.printABCVoice(e.voices[this.v])},i.prototype.printABCVoice=function(e){for(this.abcline=e,this.pos=0;this.pos<this.abcline.length;this.pos++)this.printABCElement();this.printNewLine()},i.prototype.printABCElement=function(){var e=this.getElem();switch(e.el_type){case"note":this.printBeam();break;case"bar":this.printBarLine(e)}},i.prototype.printBeam=function(){if(this.printSpace(),this.getElem().startBeam&&!this.getElem().endBeam)for(;this.getElem()&&(this.printNote(this.getElem()),!this.getElem().endBeam);)this.pos++;else this.printNote(this.getElem());this.printSpace()},i.prototype.printNote=function(e){var t,i="";if(void 0!==e.chord)for(t=0;t<e.chord.length;t++)i+='"'+e.chord[t].name+'"';var r={staccato:".",upbow:"u",downbow:"v",roll:"~",fermata:"H",slide:"J",accent:"L",mordent:"M",pralltriller:"P",trill:"T",lower:"."};if(void 0!==e.decoration)for(t=0;t<e.decoration.length;t++){var n=e.decoration[t];r[n]?i+=r[n]:(i+="!",i+=n,i+="!")}if(void 0!==e.gracenotes){for(i+="{",t=0;t<e.gracenotes.length;t++)i+=this.getNoteString(e.gracenotes[t]);i+="}"}var a=!1;if(1===e.pitches.length&&e.pitches[0].startSlur&&(a=!0,i+=this.multiplyString("(",e.pitches[0].startSlur.length)),e.startSlur&&(i+=this.multiplyString("(",e.startSlur.length)),(1===e.pitches.length&&e.pitches[0].endSlur||e.endSlur)&&(a=!0),e.startTriplet&&(i+="(3"),e.pitches){for(e.pitches.length>1&&(i+="["),t=0;t<e.pitches.length;t++)e.pitches[t].duration=e.duration,i+=this.getNoteString(e.pitches[t],a);e.pitches.length>1&&(i+="]")}1===e.pitches.length&&e.pitches[0].endSlur&&(i+=this.multiplyString(")",e.pitches[0].endSlur.length)),e.endSlur&&(i+=this.multiplyString(")",e.endSlur.length)),this.printString(i,e)},i.prototype.getNoteString=function(e,t){var i="";!t&&e.startSlur&&(i+="(");var r="";switch(e.accidental){case"quartersharp":r="^/";break;case"dblsharp":r="^^";break;case"sharp":r="^";break;case"quarterflat":r="_/";break;case"flat":r="_";break;case"dblflat":r="__";break;case"natural":r="="}i+=r;var n=["C","D","E","F","G","A","B"][this.extractNote(e.pitch)],a=this.extractOctave(e.pitch);if(a>0)for(n=n.toLowerCase(),a--;a>0;)n+="'",a--;else for(;a<0;)n+=",",a++;return i+=n,e.duration&&(i+=this.getDurationString(e.duration)),!t&&e.endSlur&&(i+=")"),e.startTie&&(i+="-"),i},i.prototype.getDurationString=function(e){if(e/this.l>1)return e/this.l;var t="";return this.l/e>1&&(t+="/",this.l/e>2&&(t+=this.l/e)),t},i.prototype.extractNote=function(e){var t=e%7;return t<0&&(t+=7),t},i.prototype.extractOctave=function(e){return Math.floor(e/7)},i.prototype.printBarLine=function(e){var t="";switch(e.type){case"bar_thin":t+="|";break;case"bar_thin_thick":t+="|]";break;case"bar_thin_thin":t+="||";break;case"bar_thick_thin":t+="[|";break;case"bar_dbl_repeat":t+=":||:";break;case"bar_left_repeat":t+="|:";break;case"bar_right_repeat":t+=":|";break;case"bar_invisible":t+=""}this.printString(t,e)},i.prototype.multiplyString=function(e,t){for(var i="";t>0;t--)i+=e;return i},e.exports=i}]); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/echarts/echarts.min.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/echarts/echarts.min.js new file mode 100644 index 0000000..835966f --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/echarts/echarts.min.js @@ -0,0 +1,45 @@ + +/* +* Licensed to the Apache Software Foundation (ASF) under one +* or more contributor license agreements. See the NOTICE file +* distributed with this work for additional information +* regarding copyright ownership. The ASF licenses this file +* to you under the Apache License, Version 2.0 (the +* "License"); you may not use this file except in compliance +* with the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. See the License for the +* specific language governing permissions and limitations +* under the License. +*/ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).echarts={})}(this,(function(t){"use strict"; +/*! ***************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])},e(t,n)};function n(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}var i=function(){this.firefox=!1,this.ie=!1,this.edge=!1,this.newEdge=!1,this.weChat=!1},r=new function(){this.browser=new i,this.node=!1,this.wxa=!1,this.worker=!1,this.svgSupported=!1,this.touchEventsSupported=!1,this.pointerEventsSupported=!1,this.domSupported=!1,this.transformSupported=!1,this.transform3dSupported=!1,this.hasGlobalWindow="undefined"!=typeof window};"object"==typeof wx&&"function"==typeof wx.getSystemInfoSync?(r.wxa=!0,r.touchEventsSupported=!0):"undefined"==typeof document&&"undefined"!=typeof self?r.worker=!0:"undefined"==typeof navigator||0===navigator.userAgent.indexOf("Node.js")?(r.node=!0,r.svgSupported=!0):function(t,e){var n=e.browser,i=t.match(/Firefox\/([\d.]+)/),r=t.match(/MSIE\s([\d.]+)/)||t.match(/Trident\/.+?rv:(([\d.]+))/),o=t.match(/Edge?\/([\d.]+)/),a=/micromessenger/i.test(t);i&&(n.firefox=!0,n.version=i[1]);r&&(n.ie=!0,n.version=r[1]);o&&(n.edge=!0,n.version=o[1],n.newEdge=+o[1].split(".")[0]>18);a&&(n.weChat=!0);e.svgSupported="undefined"!=typeof SVGRect,e.touchEventsSupported="ontouchstart"in window&&!n.ie&&!n.edge,e.pointerEventsSupported="onpointerdown"in window&&(n.edge||n.ie&&+n.version>=11),e.domSupported="undefined"!=typeof document;var s=document.documentElement.style;e.transform3dSupported=(n.ie&&"transition"in s||n.edge||"WebKitCSSMatrix"in window&&"m11"in new WebKitCSSMatrix||"MozPerspective"in s)&&!("OTransition"in s),e.transformSupported=e.transform3dSupported||n.ie&&+n.version>=9}(navigator.userAgent,r);var o="sans-serif",a="12px "+o;var s,l,u=function(t){var e={};if("undefined"==typeof JSON)return e;for(var n=0;n<t.length;n++){var i=String.fromCharCode(n+32),r=(t.charCodeAt(n)-20)/100;e[i]=r}return e}("007LLmW'55;N0500LLLLLLLLLL00NNNLzWW\\\\WQb\\0FWLg\\bWb\\WQ\\WrWWQ000CL5LLFLL0LL**F*gLLLL5F0LF\\FFF5.5N"),h={createCanvas:function(){return"undefined"!=typeof document&&document.createElement("canvas")},measureText:function(t,e){if(!s){var n=h.createCanvas();s=n&&n.getContext("2d")}if(s)return l!==e&&(l=s.font=e||a),s.measureText(t);t=t||"";var i=/((?:\d+)?\.?\d*)px/.exec(e=e||a),r=i&&+i[1]||12,o=0;if(e.indexOf("mono")>=0)o=r*t.length;else for(var c=0;c<t.length;c++){var p=u[t[c]];o+=null==p?r:p*r}return{width:o}},loadImage:function(t,e,n){var i=new Image;return i.onload=e,i.onerror=n,i.src=t,i}};function c(t){for(var e in h)t[e]&&(h[e]=t[e])}var p=V(["Function","RegExp","Date","Error","CanvasGradient","CanvasPattern","Image","Canvas"],(function(t,e){return t["[object "+e+"]"]=!0,t}),{}),d=V(["Int8","Uint8","Uint8Clamped","Int16","Uint16","Int32","Uint32","Float32","Float64"],(function(t,e){return t["[object "+e+"Array]"]=!0,t}),{}),f=Object.prototype.toString,g=Array.prototype,y=g.forEach,v=g.filter,m=g.slice,x=g.map,_=function(){}.constructor,b=_?_.prototype:null,w="__proto__",S=2311;function M(){return S++}function I(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];"undefined"!=typeof console&&console.error.apply(console,t)}function T(t){if(null==t||"object"!=typeof t)return t;var e=t,n=f.call(t);if("[object Array]"===n){if(!pt(t)){e=[];for(var i=0,r=t.length;i<r;i++)e[i]=T(t[i])}}else if(d[n]){if(!pt(t)){var o=t.constructor;if(o.from)e=o.from(t);else{e=new o(t.length);for(i=0,r=t.length;i<r;i++)e[i]=t[i]}}}else if(!p[n]&&!pt(t)&&!J(t))for(var a in e={},t)t.hasOwnProperty(a)&&a!==w&&(e[a]=T(t[a]));return e}function C(t,e,n){if(!q(e)||!q(t))return n?T(e):t;for(var i in e)if(e.hasOwnProperty(i)&&i!==w){var r=t[i],o=e[i];!q(o)||!q(r)||Y(o)||Y(r)||J(o)||J(r)||K(o)||K(r)||pt(o)||pt(r)?!n&&i in t||(t[i]=T(e[i])):C(r,o,n)}return t}function D(t,e){for(var n=t[0],i=1,r=t.length;i<r;i++)n=C(n,t[i],e);return n}function A(t,e){if(Object.assign)Object.assign(t,e);else for(var n in e)e.hasOwnProperty(n)&&n!==w&&(t[n]=e[n]);return t}function k(t,e,n){for(var i=G(e),r=0;r<i.length;r++){var o=i[r];(n?null!=e[o]:null==t[o])&&(t[o]=e[o])}return t}var L=h.createCanvas;function P(t,e){if(t){if(t.indexOf)return t.indexOf(e);for(var n=0,i=t.length;n<i;n++)if(t[n]===e)return n}return-1}function O(t,e){var n=t.prototype;function i(){}for(var r in i.prototype=e.prototype,t.prototype=new i,n)n.hasOwnProperty(r)&&(t.prototype[r]=n[r]);t.prototype.constructor=t,t.superClass=e}function R(t,e,n){if(t="prototype"in t?t.prototype:t,e="prototype"in e?e.prototype:e,Object.getOwnPropertyNames)for(var i=Object.getOwnPropertyNames(e),r=0;r<i.length;r++){var o=i[r];"constructor"!==o&&(n?null!=e[o]:null==t[o])&&(t[o]=e[o])}else k(t,e,n)}function N(t){return!!t&&("string"!=typeof t&&"number"==typeof t.length)}function E(t,e,n){if(t&&e)if(t.forEach&&t.forEach===y)t.forEach(e,n);else if(t.length===+t.length)for(var i=0,r=t.length;i<r;i++)e.call(n,t[i],i,t);else for(var o in t)t.hasOwnProperty(o)&&e.call(n,t[o],o,t)}function z(t,e,n){if(!t)return[];if(!e)return at(t);if(t.map&&t.map===x)return t.map(e,n);for(var i=[],r=0,o=t.length;r<o;r++)i.push(e.call(n,t[r],r,t));return i}function V(t,e,n,i){if(t&&e){for(var r=0,o=t.length;r<o;r++)n=e.call(i,n,t[r],r,t);return n}}function B(t,e,n){if(!t)return[];if(!e)return at(t);if(t.filter&&t.filter===v)return t.filter(e,n);for(var i=[],r=0,o=t.length;r<o;r++)e.call(n,t[r],r,t)&&i.push(t[r]);return i}function F(t,e,n){if(t&&e)for(var i=0,r=t.length;i<r;i++)if(e.call(n,t[i],i,t))return t[i]}function G(t){if(!t)return[];if(Object.keys)return Object.keys(t);var e=[];for(var n in t)t.hasOwnProperty(n)&&e.push(n);return e}var W=b&&X(b.bind)?b.call.bind(b.bind):function(t,e){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];return function(){return t.apply(e,n.concat(m.call(arguments)))}};function H(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];return function(){return t.apply(this,e.concat(m.call(arguments)))}}function Y(t){return Array.isArray?Array.isArray(t):"[object Array]"===f.call(t)}function X(t){return"function"==typeof t}function U(t){return"string"==typeof t}function Z(t){return"[object String]"===f.call(t)}function j(t){return"number"==typeof t}function q(t){var e=typeof t;return"function"===e||!!t&&"object"===e}function K(t){return!!p[f.call(t)]}function $(t){return!!d[f.call(t)]}function J(t){return"object"==typeof t&&"number"==typeof t.nodeType&&"object"==typeof t.ownerDocument}function Q(t){return null!=t.colorStops}function tt(t){return null!=t.image}function et(t){return"[object RegExp]"===f.call(t)}function nt(t){return t!=t}function it(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];for(var n=0,i=t.length;n<i;n++)if(null!=t[n])return t[n]}function rt(t,e){return null!=t?t:e}function ot(t,e,n){return null!=t?t:null!=e?e:n}function at(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];return m.apply(t,e)}function st(t){if("number"==typeof t)return[t,t,t,t];var e=t.length;return 2===e?[t[0],t[1],t[0],t[1]]:3===e?[t[0],t[1],t[2],t[1]]:t}function lt(t,e){if(!t)throw new Error(e)}function ut(t){return null==t?null:"function"==typeof t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}var ht="__ec_primitive__";function ct(t){t[ht]=!0}function pt(t){return t[ht]}var dt=function(){function t(){this.data={}}return t.prototype.delete=function(t){var e=this.has(t);return e&&delete this.data[t],e},t.prototype.has=function(t){return this.data.hasOwnProperty(t)},t.prototype.get=function(t){return this.data[t]},t.prototype.set=function(t,e){return this.data[t]=e,this},t.prototype.keys=function(){return G(this.data)},t.prototype.forEach=function(t){var e=this.data;for(var n in e)e.hasOwnProperty(n)&&t(e[n],n)},t}(),ft="function"==typeof Map;var gt=function(){function t(e){var n=Y(e);this.data=ft?new Map:new dt;var i=this;function r(t,e){n?i.set(t,e):i.set(e,t)}e instanceof t?e.each(r):e&&E(e,r)}return t.prototype.hasKey=function(t){return this.data.has(t)},t.prototype.get=function(t){return this.data.get(t)},t.prototype.set=function(t,e){return this.data.set(t,e),e},t.prototype.each=function(t,e){this.data.forEach((function(n,i){t.call(e,n,i)}))},t.prototype.keys=function(){var t=this.data.keys();return ft?Array.from(t):t},t.prototype.removeKey=function(t){this.data.delete(t)},t}();function yt(t){return new gt(t)}function vt(t,e){for(var n=new t.constructor(t.length+e.length),i=0;i<t.length;i++)n[i]=t[i];var r=t.length;for(i=0;i<e.length;i++)n[i+r]=e[i];return n}function mt(t,e){var n;if(Object.create)n=Object.create(t);else{var i=function(){};i.prototype=t,n=new i}return e&&A(n,e),n}function xt(t){var e=t.style;e.webkitUserSelect="none",e.userSelect="none",e.webkitTapHighlightColor="rgba(0,0,0,0)",e["-webkit-touch-callout"]="none"}function _t(t,e){return t.hasOwnProperty(e)}function bt(){}var wt=180/Math.PI,St=Object.freeze({__proto__:null,guid:M,logError:I,clone:T,merge:C,mergeAll:D,extend:A,defaults:k,createCanvas:L,indexOf:P,inherits:O,mixin:R,isArrayLike:N,each:E,map:z,reduce:V,filter:B,find:F,keys:G,bind:W,curry:H,isArray:Y,isFunction:X,isString:U,isStringSafe:Z,isNumber:j,isObject:q,isBuiltInObject:K,isTypedArray:$,isDom:J,isGradientObject:Q,isImagePatternObject:tt,isRegExp:et,eqNaN:nt,retrieve:it,retrieve2:rt,retrieve3:ot,slice:at,normalizeCssArray:st,assert:lt,trim:ut,setAsPrimitive:ct,isPrimitive:pt,HashMap:gt,createHashMap:yt,concatArray:vt,createObject:mt,disableUserSelect:xt,hasOwn:_t,noop:bt,RADIAN_TO_DEGREE:wt});function Mt(t,e){return null==t&&(t=0),null==e&&(e=0),[t,e]}function It(t,e){return t[0]=e[0],t[1]=e[1],t}function Tt(t){return[t[0],t[1]]}function Ct(t,e,n){return t[0]=e,t[1]=n,t}function Dt(t,e,n){return t[0]=e[0]+n[0],t[1]=e[1]+n[1],t}function At(t,e,n,i){return t[0]=e[0]+n[0]*i,t[1]=e[1]+n[1]*i,t}function kt(t,e,n){return t[0]=e[0]-n[0],t[1]=e[1]-n[1],t}function Lt(t){return Math.sqrt(Ot(t))}var Pt=Lt;function Ot(t){return t[0]*t[0]+t[1]*t[1]}var Rt=Ot;function Nt(t,e,n){return t[0]=e[0]*n,t[1]=e[1]*n,t}function Et(t,e){var n=Lt(e);return 0===n?(t[0]=0,t[1]=0):(t[0]=e[0]/n,t[1]=e[1]/n),t}function zt(t,e){return Math.sqrt((t[0]-e[0])*(t[0]-e[0])+(t[1]-e[1])*(t[1]-e[1]))}var Vt=zt;function Bt(t,e){return(t[0]-e[0])*(t[0]-e[0])+(t[1]-e[1])*(t[1]-e[1])}var Ft=Bt;function Gt(t,e,n,i){return t[0]=e[0]+i*(n[0]-e[0]),t[1]=e[1]+i*(n[1]-e[1]),t}function Wt(t,e,n){var i=e[0],r=e[1];return t[0]=n[0]*i+n[2]*r+n[4],t[1]=n[1]*i+n[3]*r+n[5],t}function Ht(t,e,n){return t[0]=Math.min(e[0],n[0]),t[1]=Math.min(e[1],n[1]),t}function Yt(t,e,n){return t[0]=Math.max(e[0],n[0]),t[1]=Math.max(e[1],n[1]),t}var Xt=Object.freeze({__proto__:null,create:Mt,copy:It,clone:Tt,set:Ct,add:Dt,scaleAndAdd:At,sub:kt,len:Lt,length:Pt,lenSquare:Ot,lengthSquare:Rt,mul:function(t,e,n){return t[0]=e[0]*n[0],t[1]=e[1]*n[1],t},div:function(t,e,n){return t[0]=e[0]/n[0],t[1]=e[1]/n[1],t},dot:function(t,e){return t[0]*e[0]+t[1]*e[1]},scale:Nt,normalize:Et,distance:zt,dist:Vt,distanceSquare:Bt,distSquare:Ft,negate:function(t,e){return t[0]=-e[0],t[1]=-e[1],t},lerp:Gt,applyTransform:Wt,min:Ht,max:Yt}),Ut=function(t,e){this.target=t,this.topTarget=e&&e.topTarget},Zt=function(){function t(t){this.handler=t,t.on("mousedown",this._dragStart,this),t.on("mousemove",this._drag,this),t.on("mouseup",this._dragEnd,this)}return t.prototype._dragStart=function(t){for(var e=t.target;e&&!e.draggable;)e=e.parent||e.__hostTarget;e&&(this._draggingTarget=e,e.dragging=!0,this._x=t.offsetX,this._y=t.offsetY,this.handler.dispatchToElement(new Ut(e,t),"dragstart",t.event))},t.prototype._drag=function(t){var e=this._draggingTarget;if(e){var n=t.offsetX,i=t.offsetY,r=n-this._x,o=i-this._y;this._x=n,this._y=i,e.drift(r,o,t),this.handler.dispatchToElement(new Ut(e,t),"drag",t.event);var a=this.handler.findHover(n,i,e).target,s=this._dropTarget;this._dropTarget=a,e!==a&&(s&&a!==s&&this.handler.dispatchToElement(new Ut(s,t),"dragleave",t.event),a&&a!==s&&this.handler.dispatchToElement(new Ut(a,t),"dragenter",t.event))}},t.prototype._dragEnd=function(t){var e=this._draggingTarget;e&&(e.dragging=!1),this.handler.dispatchToElement(new Ut(e,t),"dragend",t.event),this._dropTarget&&this.handler.dispatchToElement(new Ut(this._dropTarget,t),"drop",t.event),this._draggingTarget=null,this._dropTarget=null},t}(),jt=function(){function t(t){t&&(this._$eventProcessor=t)}return t.prototype.on=function(t,e,n,i){this._$handlers||(this._$handlers={});var r=this._$handlers;if("function"==typeof e&&(i=n,n=e,e=null),!n||!t)return this;var o=this._$eventProcessor;null!=e&&o&&o.normalizeQuery&&(e=o.normalizeQuery(e)),r[t]||(r[t]=[]);for(var a=0;a<r[t].length;a++)if(r[t][a].h===n)return this;var s={h:n,query:e,ctx:i||this,callAtLast:n.zrEventfulCallAtLast},l=r[t].length-1,u=r[t][l];return u&&u.callAtLast?r[t].splice(l,0,s):r[t].push(s),this},t.prototype.isSilent=function(t){var e=this._$handlers;return!e||!e[t]||!e[t].length},t.prototype.off=function(t,e){var n=this._$handlers;if(!n)return this;if(!t)return this._$handlers={},this;if(e){if(n[t]){for(var i=[],r=0,o=n[t].length;r<o;r++)n[t][r].h!==e&&i.push(n[t][r]);n[t]=i}n[t]&&0===n[t].length&&delete n[t]}else delete n[t];return this},t.prototype.trigger=function(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];if(!this._$handlers)return this;var i=this._$handlers[t],r=this._$eventProcessor;if(i)for(var o=e.length,a=i.length,s=0;s<a;s++){var l=i[s];if(!r||!r.filter||null==l.query||r.filter(t,l.query))switch(o){case 0:l.h.call(l.ctx);break;case 1:l.h.call(l.ctx,e[0]);break;case 2:l.h.call(l.ctx,e[0],e[1]);break;default:l.h.apply(l.ctx,e)}}return r&&r.afterTrigger&&r.afterTrigger(t),this},t.prototype.triggerWithContext=function(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];if(!this._$handlers)return this;var i=this._$handlers[t],r=this._$eventProcessor;if(i)for(var o=e.length,a=e[o-1],s=i.length,l=0;l<s;l++){var u=i[l];if(!r||!r.filter||null==u.query||r.filter(t,u.query))switch(o){case 0:u.h.call(a);break;case 1:u.h.call(a,e[0]);break;case 2:u.h.call(a,e[0],e[1]);break;default:u.h.apply(a,e.slice(1,o-1))}}return r&&r.afterTrigger&&r.afterTrigger(t),this},t}(),qt=Math.log(2);function Kt(t,e,n,i,r,o){var a=i+"-"+r,s=t.length;if(o.hasOwnProperty(a))return o[a];if(1===e){var l=Math.round(Math.log((1<<s)-1&~r)/qt);return t[n][l]}for(var u=i|1<<n,h=n+1;i&1<<h;)h++;for(var c=0,p=0,d=0;p<s;p++){var f=1<<p;f&r||(c+=(d%2?-1:1)*t[n][p]*Kt(t,e-1,h,u,r|f,o),d++)}return o[a]=c,c}function $t(t,e){var n=[[t[0],t[1],1,0,0,0,-e[0]*t[0],-e[0]*t[1]],[0,0,0,t[0],t[1],1,-e[1]*t[0],-e[1]*t[1]],[t[2],t[3],1,0,0,0,-e[2]*t[2],-e[2]*t[3]],[0,0,0,t[2],t[3],1,-e[3]*t[2],-e[3]*t[3]],[t[4],t[5],1,0,0,0,-e[4]*t[4],-e[4]*t[5]],[0,0,0,t[4],t[5],1,-e[5]*t[4],-e[5]*t[5]],[t[6],t[7],1,0,0,0,-e[6]*t[6],-e[6]*t[7]],[0,0,0,t[6],t[7],1,-e[7]*t[6],-e[7]*t[7]]],i={},r=Kt(n,8,0,0,0,i);if(0!==r){for(var o=[],a=0;a<8;a++)for(var s=0;s<8;s++)null==o[s]&&(o[s]=0),o[s]+=((a+s)%2?-1:1)*Kt(n,7,0===a?1:0,1<<a,1<<s,i)/r*e[a];return function(t,e,n){var i=e*o[6]+n*o[7]+1;t[0]=(e*o[0]+n*o[1]+o[2])/i,t[1]=(e*o[3]+n*o[4]+o[5])/i}}}var Jt="___zrEVENTSAVED",Qt=[];function te(t,e,n,i,o){if(e.getBoundingClientRect&&r.domSupported&&!ee(e)){var a=e[Jt]||(e[Jt]={}),s=function(t,e){var n=e.markers;if(n)return n;n=e.markers=[];for(var i=["left","right"],r=["top","bottom"],o=0;o<4;o++){var a=document.createElement("div"),s=o%2,l=(o>>1)%2;a.style.cssText=["position: absolute","visibility: hidden","padding: 0","margin: 0","border-width: 0","user-select: none","width:0","height:0",i[s]+":0",r[l]+":0",i[1-s]+":auto",r[1-l]+":auto",""].join("!important;"),t.appendChild(a),n.push(a)}return n}(e,a),l=function(t,e,n){for(var i=n?"invTrans":"trans",r=e[i],o=e.srcCoords,a=[],s=[],l=!0,u=0;u<4;u++){var h=t[u].getBoundingClientRect(),c=2*u,p=h.left,d=h.top;a.push(p,d),l=l&&o&&p===o[c]&&d===o[c+1],s.push(t[u].offsetLeft,t[u].offsetTop)}return l&&r?r:(e.srcCoords=a,e[i]=n?$t(s,a):$t(a,s))}(s,a,o);if(l)return l(t,n,i),!0}return!1}function ee(t){return"CANVAS"===t.nodeName.toUpperCase()}var ne=/([&<>"'])/g,ie={"&":"&","<":"<",">":">",'"':""","'":"'"};function re(t){return null==t?"":(t+"").replace(ne,(function(t,e){return ie[e]}))}var oe=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,ae=[],se=r.browser.firefox&&+r.browser.version.split(".")[0]<39;function le(t,e,n,i){return n=n||{},i?ue(t,e,n):se&&null!=e.layerX&&e.layerX!==e.offsetX?(n.zrX=e.layerX,n.zrY=e.layerY):null!=e.offsetX?(n.zrX=e.offsetX,n.zrY=e.offsetY):ue(t,e,n),n}function ue(t,e,n){if(r.domSupported&&t.getBoundingClientRect){var i=e.clientX,o=e.clientY;if(ee(t)){var a=t.getBoundingClientRect();return n.zrX=i-a.left,void(n.zrY=o-a.top)}if(te(ae,t,i,o))return n.zrX=ae[0],void(n.zrY=ae[1])}n.zrX=n.zrY=0}function he(t){return t||window.event}function ce(t,e,n){if(null!=(e=he(e)).zrX)return e;var i=e.type;if(i&&i.indexOf("touch")>=0){var r="touchend"!==i?e.targetTouches[0]:e.changedTouches[0];r&&le(t,r,e,n)}else{le(t,e,e,n);var o=function(t){var e=t.wheelDelta;if(e)return e;var n=t.deltaX,i=t.deltaY;if(null==n||null==i)return e;return 3*(0!==i?Math.abs(i):Math.abs(n))*(i>0?-1:i<0?1:n>0?-1:1)}(e);e.zrDelta=o?o/120:-(e.detail||0)/3}var a=e.button;return null==e.which&&void 0!==a&&oe.test(e.type)&&(e.which=1&a?1:2&a?3:4&a?2:0),e}function pe(t,e,n,i){t.addEventListener(e,n,i)}var de=function(t){t.preventDefault(),t.stopPropagation(),t.cancelBubble=!0};function fe(t){return 2===t.which||3===t.which}var ge=function(){function t(){this._track=[]}return t.prototype.recognize=function(t,e,n){return this._doTrack(t,e,n),this._recognize(t)},t.prototype.clear=function(){return this._track.length=0,this},t.prototype._doTrack=function(t,e,n){var i=t.touches;if(i){for(var r={points:[],touches:[],target:e,event:t},o=0,a=i.length;o<a;o++){var s=i[o],l=le(n,s,{});r.points.push([l.zrX,l.zrY]),r.touches.push(s)}this._track.push(r)}},t.prototype._recognize=function(t){for(var e in ve)if(ve.hasOwnProperty(e)){var n=ve[e](this._track,t);if(n)return n}},t}();function ye(t){var e=t[1][0]-t[0][0],n=t[1][1]-t[0][1];return Math.sqrt(e*e+n*n)}var ve={pinch:function(t,e){var n=t.length;if(n){var i,r=(t[n-1]||{}).points,o=(t[n-2]||{}).points||r;if(o&&o.length>1&&r&&r.length>1){var a=ye(r)/ye(o);!isFinite(a)&&(a=1),e.pinchScale=a;var s=[((i=r)[0][0]+i[1][0])/2,(i[0][1]+i[1][1])/2];return e.pinchX=s[0],e.pinchY=s[1],{type:"pinch",target:t[0].target,event:e}}}}};function me(){return[1,0,0,1,0,0]}function xe(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t[4]=0,t[5]=0,t}function _e(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t}function be(t,e,n){var i=e[0]*n[0]+e[2]*n[1],r=e[1]*n[0]+e[3]*n[1],o=e[0]*n[2]+e[2]*n[3],a=e[1]*n[2]+e[3]*n[3],s=e[0]*n[4]+e[2]*n[5]+e[4],l=e[1]*n[4]+e[3]*n[5]+e[5];return t[0]=i,t[1]=r,t[2]=o,t[3]=a,t[4]=s,t[5]=l,t}function we(t,e,n){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4]+n[0],t[5]=e[5]+n[1],t}function Se(t,e,n,i){void 0===i&&(i=[0,0]);var r=e[0],o=e[2],a=e[4],s=e[1],l=e[3],u=e[5],h=Math.sin(n),c=Math.cos(n);return t[0]=r*c+s*h,t[1]=-r*h+s*c,t[2]=o*c+l*h,t[3]=-o*h+c*l,t[4]=c*(a-i[0])+h*(u-i[1])+i[0],t[5]=c*(u-i[1])-h*(a-i[0])+i[1],t}function Me(t,e,n){var i=n[0],r=n[1];return t[0]=e[0]*i,t[1]=e[1]*r,t[2]=e[2]*i,t[3]=e[3]*r,t[4]=e[4]*i,t[5]=e[5]*r,t}function Ie(t,e){var n=e[0],i=e[2],r=e[4],o=e[1],a=e[3],s=e[5],l=n*a-o*i;return l?(l=1/l,t[0]=a*l,t[1]=-o*l,t[2]=-i*l,t[3]=n*l,t[4]=(i*s-a*r)*l,t[5]=(o*r-n*s)*l,t):null}function Te(t){var e=[1,0,0,1,0,0];return _e(e,t),e}var Ce=Object.freeze({__proto__:null,create:me,identity:xe,copy:_e,mul:be,translate:we,rotate:Se,scale:Me,invert:Ie,clone:Te}),De=function(){function t(t,e){this.x=t||0,this.y=e||0}return t.prototype.copy=function(t){return this.x=t.x,this.y=t.y,this},t.prototype.clone=function(){return new t(this.x,this.y)},t.prototype.set=function(t,e){return this.x=t,this.y=e,this},t.prototype.equal=function(t){return t.x===this.x&&t.y===this.y},t.prototype.add=function(t){return this.x+=t.x,this.y+=t.y,this},t.prototype.scale=function(t){this.x*=t,this.y*=t},t.prototype.scaleAndAdd=function(t,e){this.x+=t.x*e,this.y+=t.y*e},t.prototype.sub=function(t){return this.x-=t.x,this.y-=t.y,this},t.prototype.dot=function(t){return this.x*t.x+this.y*t.y},t.prototype.len=function(){return Math.sqrt(this.x*this.x+this.y*this.y)},t.prototype.lenSquare=function(){return this.x*this.x+this.y*this.y},t.prototype.normalize=function(){var t=this.len();return this.x/=t,this.y/=t,this},t.prototype.distance=function(t){var e=this.x-t.x,n=this.y-t.y;return Math.sqrt(e*e+n*n)},t.prototype.distanceSquare=function(t){var e=this.x-t.x,n=this.y-t.y;return e*e+n*n},t.prototype.negate=function(){return this.x=-this.x,this.y=-this.y,this},t.prototype.transform=function(t){if(t){var e=this.x,n=this.y;return this.x=t[0]*e+t[2]*n+t[4],this.y=t[1]*e+t[3]*n+t[5],this}},t.prototype.toArray=function(t){return t[0]=this.x,t[1]=this.y,t},t.prototype.fromArray=function(t){this.x=t[0],this.y=t[1]},t.set=function(t,e,n){t.x=e,t.y=n},t.copy=function(t,e){t.x=e.x,t.y=e.y},t.len=function(t){return Math.sqrt(t.x*t.x+t.y*t.y)},t.lenSquare=function(t){return t.x*t.x+t.y*t.y},t.dot=function(t,e){return t.x*e.x+t.y*e.y},t.add=function(t,e,n){t.x=e.x+n.x,t.y=e.y+n.y},t.sub=function(t,e,n){t.x=e.x-n.x,t.y=e.y-n.y},t.scale=function(t,e,n){t.x=e.x*n,t.y=e.y*n},t.scaleAndAdd=function(t,e,n,i){t.x=e.x+n.x*i,t.y=e.y+n.y*i},t.lerp=function(t,e,n,i){var r=1-i;t.x=r*e.x+i*n.x,t.y=r*e.y+i*n.y},t}(),Ae=Math.min,ke=Math.max,Le=new De,Pe=new De,Oe=new De,Re=new De,Ne=new De,Ee=new De,ze=function(){function t(t,e,n,i){n<0&&(t+=n,n=-n),i<0&&(e+=i,i=-i),this.x=t,this.y=e,this.width=n,this.height=i}return t.prototype.union=function(t){var e=Ae(t.x,this.x),n=Ae(t.y,this.y);isFinite(this.x)&&isFinite(this.width)?this.width=ke(t.x+t.width,this.x+this.width)-e:this.width=t.width,isFinite(this.y)&&isFinite(this.height)?this.height=ke(t.y+t.height,this.y+this.height)-n:this.height=t.height,this.x=e,this.y=n},t.prototype.applyTransform=function(e){t.applyTransform(this,this,e)},t.prototype.calculateTransform=function(t){var e=this,n=t.width/e.width,i=t.height/e.height,r=[1,0,0,1,0,0];return we(r,r,[-e.x,-e.y]),Me(r,r,[n,i]),we(r,r,[t.x,t.y]),r},t.prototype.intersect=function(e,n){if(!e)return!1;e instanceof t||(e=t.create(e));var i=this,r=i.x,o=i.x+i.width,a=i.y,s=i.y+i.height,l=e.x,u=e.x+e.width,h=e.y,c=e.y+e.height,p=!(o<l||u<r||s<h||c<a);if(n){var d=1/0,f=0,g=Math.abs(o-l),y=Math.abs(u-r),v=Math.abs(s-h),m=Math.abs(c-a),x=Math.min(g,y),_=Math.min(v,m);o<l||u<r?x>f&&(f=x,g<y?De.set(Ee,-g,0):De.set(Ee,y,0)):x<d&&(d=x,g<y?De.set(Ne,g,0):De.set(Ne,-y,0)),s<h||c<a?_>f&&(f=_,v<m?De.set(Ee,0,-v):De.set(Ee,0,m)):x<d&&(d=x,v<m?De.set(Ne,0,v):De.set(Ne,0,-m))}return n&&De.copy(n,p?Ne:Ee),p},t.prototype.contain=function(t,e){var n=this;return t>=n.x&&t<=n.x+n.width&&e>=n.y&&e<=n.y+n.height},t.prototype.clone=function(){return new t(this.x,this.y,this.width,this.height)},t.prototype.copy=function(e){t.copy(this,e)},t.prototype.plain=function(){return{x:this.x,y:this.y,width:this.width,height:this.height}},t.prototype.isFinite=function(){return isFinite(this.x)&&isFinite(this.y)&&isFinite(this.width)&&isFinite(this.height)},t.prototype.isZero=function(){return 0===this.width||0===this.height},t.create=function(e){return new t(e.x,e.y,e.width,e.height)},t.copy=function(t,e){t.x=e.x,t.y=e.y,t.width=e.width,t.height=e.height},t.applyTransform=function(e,n,i){if(i){if(i[1]<1e-5&&i[1]>-1e-5&&i[2]<1e-5&&i[2]>-1e-5){var r=i[0],o=i[3],a=i[4],s=i[5];return e.x=n.x*r+a,e.y=n.y*o+s,e.width=n.width*r,e.height=n.height*o,e.width<0&&(e.x+=e.width,e.width=-e.width),void(e.height<0&&(e.y+=e.height,e.height=-e.height))}Le.x=Oe.x=n.x,Le.y=Re.y=n.y,Pe.x=Re.x=n.x+n.width,Pe.y=Oe.y=n.y+n.height,Le.transform(i),Re.transform(i),Pe.transform(i),Oe.transform(i),e.x=Ae(Le.x,Pe.x,Oe.x,Re.x),e.y=Ae(Le.y,Pe.y,Oe.y,Re.y);var l=ke(Le.x,Pe.x,Oe.x,Re.x),u=ke(Le.y,Pe.y,Oe.y,Re.y);e.width=l-e.x,e.height=u-e.y}else e!==n&&t.copy(e,n)},t}(),Ve="silent";function Be(){de(this.event)}var Fe=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.handler=null,e}return n(e,t),e.prototype.dispose=function(){},e.prototype.setCursor=function(){},e}(jt),Ge=function(t,e){this.x=t,this.y=e},We=["click","dblclick","mousewheel","mouseout","mouseup","mousedown","mousemove","contextmenu"],He=new ze(0,0,0,0),Ye=function(t){function e(e,n,i,r,o){var a=t.call(this)||this;return a._hovered=new Ge(0,0),a.storage=e,a.painter=n,a.painterRoot=r,a._pointerSize=o,i=i||new Fe,a.proxy=null,a.setHandlerProxy(i),a._draggingMgr=new Zt(a),a}return n(e,t),e.prototype.setHandlerProxy=function(t){this.proxy&&this.proxy.dispose(),t&&(E(We,(function(e){t.on&&t.on(e,this[e],this)}),this),t.handler=this),this.proxy=t},e.prototype.mousemove=function(t){var e=t.zrX,n=t.zrY,i=Ze(this,e,n),r=this._hovered,o=r.target;o&&!o.__zr&&(o=(r=this.findHover(r.x,r.y)).target);var a=this._hovered=i?new Ge(e,n):this.findHover(e,n),s=a.target,l=this.proxy;l.setCursor&&l.setCursor(s?s.cursor:"default"),o&&s!==o&&this.dispatchToElement(r,"mouseout",t),this.dispatchToElement(a,"mousemove",t),s&&s!==o&&this.dispatchToElement(a,"mouseover",t)},e.prototype.mouseout=function(t){var e=t.zrEventControl;"only_globalout"!==e&&this.dispatchToElement(this._hovered,"mouseout",t),"no_globalout"!==e&&this.trigger("globalout",{type:"globalout",event:t})},e.prototype.resize=function(){this._hovered=new Ge(0,0)},e.prototype.dispatch=function(t,e){var n=this[t];n&&n.call(this,e)},e.prototype.dispose=function(){this.proxy.dispose(),this.storage=null,this.proxy=null,this.painter=null},e.prototype.setCursorStyle=function(t){var e=this.proxy;e.setCursor&&e.setCursor(t)},e.prototype.dispatchToElement=function(t,e,n){var i=(t=t||{}).target;if(!i||!i.silent){for(var r="on"+e,o=function(t,e,n){return{type:t,event:n,target:e.target,topTarget:e.topTarget,cancelBubble:!1,offsetX:n.zrX,offsetY:n.zrY,gestureEvent:n.gestureEvent,pinchX:n.pinchX,pinchY:n.pinchY,pinchScale:n.pinchScale,wheelDelta:n.zrDelta,zrByTouch:n.zrByTouch,which:n.which,stop:Be}}(e,t,n);i&&(i[r]&&(o.cancelBubble=!!i[r].call(i,o)),i.trigger(e,o),i=i.__hostTarget?i.__hostTarget:i.parent,!o.cancelBubble););o.cancelBubble||(this.trigger(e,o),this.painter&&this.painter.eachOtherLayer&&this.painter.eachOtherLayer((function(t){"function"==typeof t[r]&&t[r].call(t,o),t.trigger&&t.trigger(e,o)})))}},e.prototype.findHover=function(t,e,n){var i=this.storage.getDisplayList(),r=new Ge(t,e);if(Ue(i,r,t,e,n),this._pointerSize&&!r.target){for(var o=[],a=this._pointerSize,s=a/2,l=new ze(t-s,e-s,a,a),u=i.length-1;u>=0;u--){var h=i[u];h===n||h.ignore||h.ignoreCoarsePointer||h.parent&&h.parent.ignoreCoarsePointer||(He.copy(h.getBoundingRect()),h.transform&&He.applyTransform(h.transform),He.intersect(l)&&o.push(h))}if(o.length)for(var c=Math.PI/12,p=2*Math.PI,d=0;d<s;d+=4)for(var f=0;f<p;f+=c){if(Ue(o,r,t+d*Math.cos(f),e+d*Math.sin(f),n),r.target)return r}}return r},e.prototype.processGesture=function(t,e){this._gestureMgr||(this._gestureMgr=new ge);var n=this._gestureMgr;"start"===e&&n.clear();var i=n.recognize(t,this.findHover(t.zrX,t.zrY,null).target,this.proxy.dom);if("end"===e&&n.clear(),i){var r=i.type;t.gestureEvent=r;var o=new Ge;o.target=i.target,this.dispatchToElement(o,r,i.event)}},e}(jt);function Xe(t,e,n){if(t[t.rectHover?"rectContain":"contain"](e,n)){for(var i=t,r=void 0,o=!1;i;){if(i.ignoreClip&&(o=!0),!o){var a=i.getClipPath();if(a&&!a.contain(e,n))return!1}i.silent&&(r=!0);var s=i.__hostTarget;i=s||i.parent}return!r||Ve}return!1}function Ue(t,e,n,i,r){for(var o=t.length-1;o>=0;o--){var a=t[o],s=void 0;if(a!==r&&!a.ignore&&(s=Xe(a,n,i))&&(!e.topTarget&&(e.topTarget=a),s!==Ve)){e.target=a;break}}}function Ze(t,e,n){var i=t.painter;return e<0||e>i.getWidth()||n<0||n>i.getHeight()}E(["click","mousedown","mouseup","mousewheel","dblclick","contextmenu"],(function(t){Ye.prototype[t]=function(e){var n,i,r=e.zrX,o=e.zrY,a=Ze(this,r,o);if("mouseup"===t&&a||(i=(n=this.findHover(r,o)).target),"mousedown"===t)this._downEl=i,this._downPoint=[e.zrX,e.zrY],this._upEl=i;else if("mouseup"===t)this._upEl=i;else if("click"===t){if(this._downEl!==this._upEl||!this._downPoint||Vt(this._downPoint,[e.zrX,e.zrY])>4)return;this._downPoint=null}this.dispatchToElement(n,t,e)}}));function je(t,e,n,i){var r=e+1;if(r===n)return 1;if(i(t[r++],t[e])<0){for(;r<n&&i(t[r],t[r-1])<0;)r++;!function(t,e,n){n--;for(;e<n;){var i=t[e];t[e++]=t[n],t[n--]=i}}(t,e,r)}else for(;r<n&&i(t[r],t[r-1])>=0;)r++;return r-e}function qe(t,e,n,i,r){for(i===e&&i++;i<n;i++){for(var o,a=t[i],s=e,l=i;s<l;)r(a,t[o=s+l>>>1])<0?l=o:s=o+1;var u=i-s;switch(u){case 3:t[s+3]=t[s+2];case 2:t[s+2]=t[s+1];case 1:t[s+1]=t[s];break;default:for(;u>0;)t[s+u]=t[s+u-1],u--}t[s]=a}}function Ke(t,e,n,i,r,o){var a=0,s=0,l=1;if(o(t,e[n+r])>0){for(s=i-r;l<s&&o(t,e[n+r+l])>0;)a=l,(l=1+(l<<1))<=0&&(l=s);l>s&&(l=s),a+=r,l+=r}else{for(s=r+1;l<s&&o(t,e[n+r-l])<=0;)a=l,(l=1+(l<<1))<=0&&(l=s);l>s&&(l=s);var u=a;a=r-l,l=r-u}for(a++;a<l;){var h=a+(l-a>>>1);o(t,e[n+h])>0?a=h+1:l=h}return l}function $e(t,e,n,i,r,o){var a=0,s=0,l=1;if(o(t,e[n+r])<0){for(s=r+1;l<s&&o(t,e[n+r-l])<0;)a=l,(l=1+(l<<1))<=0&&(l=s);l>s&&(l=s);var u=a;a=r-l,l=r-u}else{for(s=i-r;l<s&&o(t,e[n+r+l])>=0;)a=l,(l=1+(l<<1))<=0&&(l=s);l>s&&(l=s),a+=r,l+=r}for(a++;a<l;){var h=a+(l-a>>>1);o(t,e[n+h])<0?l=h:a=h+1}return l}function Je(t,e){var n,i,r=7,o=0,a=[];function s(s){var l=n[s],u=i[s],h=n[s+1],c=i[s+1];i[s]=u+c,s===o-3&&(n[s+1]=n[s+2],i[s+1]=i[s+2]),o--;var p=$e(t[h],t,l,u,0,e);l+=p,0!==(u-=p)&&0!==(c=Ke(t[l+u-1],t,h,c,c-1,e))&&(u<=c?function(n,i,o,s){var l=0;for(l=0;l<i;l++)a[l]=t[n+l];var u=0,h=o,c=n;if(t[c++]=t[h++],0==--s){for(l=0;l<i;l++)t[c+l]=a[u+l];return}if(1===i){for(l=0;l<s;l++)t[c+l]=t[h+l];return void(t[c+s]=a[u])}var p,d,f,g=r;for(;;){p=0,d=0,f=!1;do{if(e(t[h],a[u])<0){if(t[c++]=t[h++],d++,p=0,0==--s){f=!0;break}}else if(t[c++]=a[u++],p++,d=0,1==--i){f=!0;break}}while((p|d)<g);if(f)break;do{if(0!==(p=$e(t[h],a,u,i,0,e))){for(l=0;l<p;l++)t[c+l]=a[u+l];if(c+=p,u+=p,(i-=p)<=1){f=!0;break}}if(t[c++]=t[h++],0==--s){f=!0;break}if(0!==(d=Ke(a[u],t,h,s,0,e))){for(l=0;l<d;l++)t[c+l]=t[h+l];if(c+=d,h+=d,0===(s-=d)){f=!0;break}}if(t[c++]=a[u++],1==--i){f=!0;break}g--}while(p>=7||d>=7);if(f)break;g<0&&(g=0),g+=2}if((r=g)<1&&(r=1),1===i){for(l=0;l<s;l++)t[c+l]=t[h+l];t[c+s]=a[u]}else{if(0===i)throw new Error;for(l=0;l<i;l++)t[c+l]=a[u+l]}}(l,u,h,c):function(n,i,o,s){var l=0;for(l=0;l<s;l++)a[l]=t[o+l];var u=n+i-1,h=s-1,c=o+s-1,p=0,d=0;if(t[c--]=t[u--],0==--i){for(p=c-(s-1),l=0;l<s;l++)t[p+l]=a[l];return}if(1===s){for(d=(c-=i)+1,p=(u-=i)+1,l=i-1;l>=0;l--)t[d+l]=t[p+l];return void(t[c]=a[h])}var f=r;for(;;){var g=0,y=0,v=!1;do{if(e(a[h],t[u])<0){if(t[c--]=t[u--],g++,y=0,0==--i){v=!0;break}}else if(t[c--]=a[h--],y++,g=0,1==--s){v=!0;break}}while((g|y)<f);if(v)break;do{if(0!==(g=i-$e(a[h],t,n,i,i-1,e))){for(i-=g,d=(c-=g)+1,p=(u-=g)+1,l=g-1;l>=0;l--)t[d+l]=t[p+l];if(0===i){v=!0;break}}if(t[c--]=a[h--],1==--s){v=!0;break}if(0!==(y=s-Ke(t[u],a,0,s,s-1,e))){for(s-=y,d=(c-=y)+1,p=(h-=y)+1,l=0;l<y;l++)t[d+l]=a[p+l];if(s<=1){v=!0;break}}if(t[c--]=t[u--],0==--i){v=!0;break}f--}while(g>=7||y>=7);if(v)break;f<0&&(f=0),f+=2}(r=f)<1&&(r=1);if(1===s){for(d=(c-=i)+1,p=(u-=i)+1,l=i-1;l>=0;l--)t[d+l]=t[p+l];t[c]=a[h]}else{if(0===s)throw new Error;for(p=c-(s-1),l=0;l<s;l++)t[p+l]=a[l]}}(l,u,h,c))}return n=[],i=[],{mergeRuns:function(){for(;o>1;){var t=o-2;if(t>=1&&i[t-1]<=i[t]+i[t+1]||t>=2&&i[t-2]<=i[t]+i[t-1])i[t-1]<i[t+1]&&t--;else if(i[t]>i[t+1])break;s(t)}},forceMergeRuns:function(){for(;o>1;){var t=o-2;t>0&&i[t-1]<i[t+1]&&t--,s(t)}},pushRun:function(t,e){n[o]=t,i[o]=e,o+=1}}}function Qe(t,e,n,i){n||(n=0),i||(i=t.length);var r=i-n;if(!(r<2)){var o=0;if(r<32)qe(t,n,i,n+(o=je(t,n,i,e)),e);else{var a=Je(t,e),s=function(t){for(var e=0;t>=32;)e|=1&t,t>>=1;return t+e}(r);do{if((o=je(t,n,i,e))<s){var l=r;l>s&&(l=s),qe(t,n,n+l,n+o,e),o=l}a.pushRun(n,o),a.mergeRuns(),r-=o,n+=o}while(0!==r);a.forceMergeRuns()}}}var tn=!1;function en(){tn||(tn=!0,console.warn("z / z2 / zlevel of displayable is invalid, which may cause unexpected errors"))}function nn(t,e){return t.zlevel===e.zlevel?t.z===e.z?t.z2-e.z2:t.z-e.z:t.zlevel-e.zlevel}var rn=function(){function t(){this._roots=[],this._displayList=[],this._displayListLen=0,this.displayableSortFunc=nn}return t.prototype.traverse=function(t,e){for(var n=0;n<this._roots.length;n++)this._roots[n].traverse(t,e)},t.prototype.getDisplayList=function(t,e){e=e||!1;var n=this._displayList;return!t&&n.length||this.updateDisplayList(e),n},t.prototype.updateDisplayList=function(t){this._displayListLen=0;for(var e=this._roots,n=this._displayList,i=0,r=e.length;i<r;i++)this._updateAndAddDisplayable(e[i],null,t);n.length=this._displayListLen,Qe(n,nn)},t.prototype._updateAndAddDisplayable=function(t,e,n){if(!t.ignore||n){t.beforeUpdate(),t.update(),t.afterUpdate();var i=t.getClipPath();if(t.ignoreClip)e=null;else if(i){e=e?e.slice():[];for(var r=i,o=t;r;)r.parent=o,r.updateTransform(),e.push(r),o=r,r=r.getClipPath()}if(t.childrenRef){for(var a=t.childrenRef(),s=0;s<a.length;s++){var l=a[s];t.__dirty&&(l.__dirty|=1),this._updateAndAddDisplayable(l,e,n)}t.__dirty=0}else{var u=t;e&&e.length?u.__clipPaths=e:u.__clipPaths&&u.__clipPaths.length>0&&(u.__clipPaths=[]),isNaN(u.z)&&(en(),u.z=0),isNaN(u.z2)&&(en(),u.z2=0),isNaN(u.zlevel)&&(en(),u.zlevel=0),this._displayList[this._displayListLen++]=u}var h=t.getDecalElement&&t.getDecalElement();h&&this._updateAndAddDisplayable(h,e,n);var c=t.getTextGuideLine();c&&this._updateAndAddDisplayable(c,e,n);var p=t.getTextContent();p&&this._updateAndAddDisplayable(p,e,n)}},t.prototype.addRoot=function(t){t.__zr&&t.__zr.storage===this||this._roots.push(t)},t.prototype.delRoot=function(t){if(t instanceof Array)for(var e=0,n=t.length;e<n;e++)this.delRoot(t[e]);else{var i=P(this._roots,t);i>=0&&this._roots.splice(i,1)}},t.prototype.delAllRoots=function(){this._roots=[],this._displayList=[],this._displayListLen=0},t.prototype.getRoots=function(){return this._roots},t.prototype.dispose=function(){this._displayList=null,this._roots=null},t}(),on=r.hasGlobalWindow&&(window.requestAnimationFrame&&window.requestAnimationFrame.bind(window)||window.msRequestAnimationFrame&&window.msRequestAnimationFrame.bind(window)||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame)||function(t){return setTimeout(t,16)},an={linear:function(t){return t},quadraticIn:function(t){return t*t},quadraticOut:function(t){return t*(2-t)},quadraticInOut:function(t){return(t*=2)<1?.5*t*t:-.5*(--t*(t-2)-1)},cubicIn:function(t){return t*t*t},cubicOut:function(t){return--t*t*t+1},cubicInOut:function(t){return(t*=2)<1?.5*t*t*t:.5*((t-=2)*t*t+2)},quarticIn:function(t){return t*t*t*t},quarticOut:function(t){return 1- --t*t*t*t},quarticInOut:function(t){return(t*=2)<1?.5*t*t*t*t:-.5*((t-=2)*t*t*t-2)},quinticIn:function(t){return t*t*t*t*t},quinticOut:function(t){return--t*t*t*t*t+1},quinticInOut:function(t){return(t*=2)<1?.5*t*t*t*t*t:.5*((t-=2)*t*t*t*t+2)},sinusoidalIn:function(t){return 1-Math.cos(t*Math.PI/2)},sinusoidalOut:function(t){return Math.sin(t*Math.PI/2)},sinusoidalInOut:function(t){return.5*(1-Math.cos(Math.PI*t))},exponentialIn:function(t){return 0===t?0:Math.pow(1024,t-1)},exponentialOut:function(t){return 1===t?1:1-Math.pow(2,-10*t)},exponentialInOut:function(t){return 0===t?0:1===t?1:(t*=2)<1?.5*Math.pow(1024,t-1):.5*(2-Math.pow(2,-10*(t-1)))},circularIn:function(t){return 1-Math.sqrt(1-t*t)},circularOut:function(t){return Math.sqrt(1- --t*t)},circularInOut:function(t){return(t*=2)<1?-.5*(Math.sqrt(1-t*t)-1):.5*(Math.sqrt(1-(t-=2)*t)+1)},elasticIn:function(t){var e,n=.1;return 0===t?0:1===t?1:(!n||n<1?(n=1,e=.1):e=.4*Math.asin(1/n)/(2*Math.PI),-n*Math.pow(2,10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/.4))},elasticOut:function(t){var e,n=.1;return 0===t?0:1===t?1:(!n||n<1?(n=1,e=.1):e=.4*Math.asin(1/n)/(2*Math.PI),n*Math.pow(2,-10*t)*Math.sin((t-e)*(2*Math.PI)/.4)+1)},elasticInOut:function(t){var e,n=.1,i=.4;return 0===t?0:1===t?1:(!n||n<1?(n=1,e=.1):e=i*Math.asin(1/n)/(2*Math.PI),(t*=2)<1?n*Math.pow(2,10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/i)*-.5:n*Math.pow(2,-10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/i)*.5+1)},backIn:function(t){var e=1.70158;return t*t*((e+1)*t-e)},backOut:function(t){var e=1.70158;return--t*t*((e+1)*t+e)+1},backInOut:function(t){var e=2.5949095;return(t*=2)<1?t*t*((e+1)*t-e)*.5:.5*((t-=2)*t*((e+1)*t+e)+2)},bounceIn:function(t){return 1-an.bounceOut(1-t)},bounceOut:function(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375},bounceInOut:function(t){return t<.5?.5*an.bounceIn(2*t):.5*an.bounceOut(2*t-1)+.5}},sn=Math.pow,ln=Math.sqrt,un=1e-8,hn=1e-4,cn=ln(3),pn=1/3,dn=Mt(),fn=Mt(),gn=Mt();function yn(t){return t>-1e-8&&t<un}function vn(t){return t>un||t<-1e-8}function mn(t,e,n,i,r){var o=1-r;return o*o*(o*t+3*r*e)+r*r*(r*i+3*o*n)}function xn(t,e,n,i,r){var o=1-r;return 3*(((e-t)*o+2*(n-e)*r)*o+(i-n)*r*r)}function _n(t,e,n,i,r,o){var a=i+3*(e-n)-t,s=3*(n-2*e+t),l=3*(e-t),u=t-r,h=s*s-3*a*l,c=s*l-9*a*u,p=l*l-3*s*u,d=0;if(yn(h)&&yn(c)){if(yn(s))o[0]=0;else(M=-l/s)>=0&&M<=1&&(o[d++]=M)}else{var f=c*c-4*h*p;if(yn(f)){var g=c/h,y=-g/2;(M=-s/a+g)>=0&&M<=1&&(o[d++]=M),y>=0&&y<=1&&(o[d++]=y)}else if(f>0){var v=ln(f),m=h*s+1.5*a*(-c+v),x=h*s+1.5*a*(-c-v);(M=(-s-((m=m<0?-sn(-m,pn):sn(m,pn))+(x=x<0?-sn(-x,pn):sn(x,pn))))/(3*a))>=0&&M<=1&&(o[d++]=M)}else{var _=(2*h*s-3*a*c)/(2*ln(h*h*h)),b=Math.acos(_)/3,w=ln(h),S=Math.cos(b),M=(-s-2*w*S)/(3*a),I=(y=(-s+w*(S+cn*Math.sin(b)))/(3*a),(-s+w*(S-cn*Math.sin(b)))/(3*a));M>=0&&M<=1&&(o[d++]=M),y>=0&&y<=1&&(o[d++]=y),I>=0&&I<=1&&(o[d++]=I)}}return d}function bn(t,e,n,i,r){var o=6*n-12*e+6*t,a=9*e+3*i-3*t-9*n,s=3*e-3*t,l=0;if(yn(a)){if(vn(o))(h=-s/o)>=0&&h<=1&&(r[l++]=h)}else{var u=o*o-4*a*s;if(yn(u))r[0]=-o/(2*a);else if(u>0){var h,c=ln(u),p=(-o-c)/(2*a);(h=(-o+c)/(2*a))>=0&&h<=1&&(r[l++]=h),p>=0&&p<=1&&(r[l++]=p)}}return l}function wn(t,e,n,i,r,o){var a=(e-t)*r+t,s=(n-e)*r+e,l=(i-n)*r+n,u=(s-a)*r+a,h=(l-s)*r+s,c=(h-u)*r+u;o[0]=t,o[1]=a,o[2]=u,o[3]=c,o[4]=c,o[5]=h,o[6]=l,o[7]=i}function Sn(t,e,n,i,r,o,a,s,l,u,h){var c,p,d,f,g,y=.005,v=1/0;dn[0]=l,dn[1]=u;for(var m=0;m<1;m+=.05)fn[0]=mn(t,n,r,a,m),fn[1]=mn(e,i,o,s,m),(f=Ft(dn,fn))<v&&(c=m,v=f);v=1/0;for(var x=0;x<32&&!(y<hn);x++)p=c-y,d=c+y,fn[0]=mn(t,n,r,a,p),fn[1]=mn(e,i,o,s,p),f=Ft(fn,dn),p>=0&&f<v?(c=p,v=f):(gn[0]=mn(t,n,r,a,d),gn[1]=mn(e,i,o,s,d),g=Ft(gn,dn),d<=1&&g<v?(c=d,v=g):y*=.5);return h&&(h[0]=mn(t,n,r,a,c),h[1]=mn(e,i,o,s,c)),ln(v)}function Mn(t,e,n,i,r,o,a,s,l){for(var u=t,h=e,c=0,p=1/l,d=1;d<=l;d++){var f=d*p,g=mn(t,n,r,a,f),y=mn(e,i,o,s,f),v=g-u,m=y-h;c+=Math.sqrt(v*v+m*m),u=g,h=y}return c}function In(t,e,n,i){var r=1-i;return r*(r*t+2*i*e)+i*i*n}function Tn(t,e,n,i){return 2*((1-i)*(e-t)+i*(n-e))}function Cn(t,e,n){var i=t+n-2*e;return 0===i?.5:(t-e)/i}function Dn(t,e,n,i,r){var o=(e-t)*i+t,a=(n-e)*i+e,s=(a-o)*i+o;r[0]=t,r[1]=o,r[2]=s,r[3]=s,r[4]=a,r[5]=n}function An(t,e,n,i,r,o,a,s,l){var u,h=.005,c=1/0;dn[0]=a,dn[1]=s;for(var p=0;p<1;p+=.05){fn[0]=In(t,n,r,p),fn[1]=In(e,i,o,p),(y=Ft(dn,fn))<c&&(u=p,c=y)}c=1/0;for(var d=0;d<32&&!(h<hn);d++){var f=u-h,g=u+h;fn[0]=In(t,n,r,f),fn[1]=In(e,i,o,f);var y=Ft(fn,dn);if(f>=0&&y<c)u=f,c=y;else{gn[0]=In(t,n,r,g),gn[1]=In(e,i,o,g);var v=Ft(gn,dn);g<=1&&v<c?(u=g,c=v):h*=.5}}return l&&(l[0]=In(t,n,r,u),l[1]=In(e,i,o,u)),ln(c)}function kn(t,e,n,i,r,o,a){for(var s=t,l=e,u=0,h=1/a,c=1;c<=a;c++){var p=c*h,d=In(t,n,r,p),f=In(e,i,o,p),g=d-s,y=f-l;u+=Math.sqrt(g*g+y*y),s=d,l=f}return u}var Ln=/cubic-bezier\(([0-9,\.e ]+)\)/;function Pn(t){var e=t&&Ln.exec(t);if(e){var n=e[1].split(","),i=+ut(n[0]),r=+ut(n[1]),o=+ut(n[2]),a=+ut(n[3]);if(isNaN(i+r+o+a))return;var s=[];return function(t){return t<=0?0:t>=1?1:_n(0,i,o,1,t,s)&&mn(0,r,a,1,s[0])}}}var On=function(){function t(t){this._inited=!1,this._startTime=0,this._pausedTime=0,this._paused=!1,this._life=t.life||1e3,this._delay=t.delay||0,this.loop=t.loop||!1,this.onframe=t.onframe||bt,this.ondestroy=t.ondestroy||bt,this.onrestart=t.onrestart||bt,t.easing&&this.setEasing(t.easing)}return t.prototype.step=function(t,e){if(this._inited||(this._startTime=t+this._delay,this._inited=!0),!this._paused){var n=this._life,i=t-this._startTime-this._pausedTime,r=i/n;r<0&&(r=0),r=Math.min(r,1);var o=this.easingFunc,a=o?o(r):r;if(this.onframe(a),1===r){if(!this.loop)return!0;var s=i%n;this._startTime=t-s,this._pausedTime=0,this.onrestart()}return!1}this._pausedTime+=e},t.prototype.pause=function(){this._paused=!0},t.prototype.resume=function(){this._paused=!1},t.prototype.setEasing=function(t){this.easing=t,this.easingFunc=X(t)?t:an[t]||Pn(t)},t}(),Rn=function(t){this.value=t},Nn=function(){function t(){this._len=0}return t.prototype.insert=function(t){var e=new Rn(t);return this.insertEntry(e),e},t.prototype.insertEntry=function(t){this.head?(this.tail.next=t,t.prev=this.tail,t.next=null,this.tail=t):this.head=this.tail=t,this._len++},t.prototype.remove=function(t){var e=t.prev,n=t.next;e?e.next=n:this.head=n,n?n.prev=e:this.tail=e,t.next=t.prev=null,this._len--},t.prototype.len=function(){return this._len},t.prototype.clear=function(){this.head=this.tail=null,this._len=0},t}(),En=function(){function t(t){this._list=new Nn,this._maxSize=10,this._map={},this._maxSize=t}return t.prototype.put=function(t,e){var n=this._list,i=this._map,r=null;if(null==i[t]){var o=n.len(),a=this._lastRemovedEntry;if(o>=this._maxSize&&o>0){var s=n.head;n.remove(s),delete i[s.key],r=s.value,this._lastRemovedEntry=s}a?a.value=e:a=new Rn(e),a.key=t,n.insertEntry(a),i[t]=a}return r},t.prototype.get=function(t){var e=this._map[t],n=this._list;if(null!=e)return e!==n.tail&&(n.remove(e),n.insertEntry(e)),e.value},t.prototype.clear=function(){this._list.clear(),this._map={}},t.prototype.len=function(){return this._list.len()},t}(),zn={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};function Vn(t){return(t=Math.round(t))<0?0:t>255?255:t}function Bn(t){return t<0?0:t>1?1:t}function Fn(t){var e=t;return e.length&&"%"===e.charAt(e.length-1)?Vn(parseFloat(e)/100*255):Vn(parseInt(e,10))}function Gn(t){var e=t;return e.length&&"%"===e.charAt(e.length-1)?Bn(parseFloat(e)/100):Bn(parseFloat(e))}function Wn(t,e,n){return n<0?n+=1:n>1&&(n-=1),6*n<1?t+(e-t)*n*6:2*n<1?e:3*n<2?t+(e-t)*(2/3-n)*6:t}function Hn(t,e,n){return t+(e-t)*n}function Yn(t,e,n,i,r){return t[0]=e,t[1]=n,t[2]=i,t[3]=r,t}function Xn(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t}var Un=new En(20),Zn=null;function jn(t,e){Zn&&Xn(Zn,e),Zn=Un.put(t,Zn||e.slice())}function qn(t,e){if(t){e=e||[];var n=Un.get(t);if(n)return Xn(e,n);var i=(t+="").replace(/ /g,"").toLowerCase();if(i in zn)return Xn(e,zn[i]),jn(t,e),e;var r,o=i.length;if("#"===i.charAt(0))return 4===o||5===o?(r=parseInt(i.slice(1,4),16))>=0&&r<=4095?(Yn(e,(3840&r)>>4|(3840&r)>>8,240&r|(240&r)>>4,15&r|(15&r)<<4,5===o?parseInt(i.slice(4),16)/15:1),jn(t,e),e):void Yn(e,0,0,0,1):7===o||9===o?(r=parseInt(i.slice(1,7),16))>=0&&r<=16777215?(Yn(e,(16711680&r)>>16,(65280&r)>>8,255&r,9===o?parseInt(i.slice(7),16)/255:1),jn(t,e),e):void Yn(e,0,0,0,1):void 0;var a=i.indexOf("("),s=i.indexOf(")");if(-1!==a&&s+1===o){var l=i.substr(0,a),u=i.substr(a+1,s-(a+1)).split(","),h=1;switch(l){case"rgba":if(4!==u.length)return 3===u.length?Yn(e,+u[0],+u[1],+u[2],1):Yn(e,0,0,0,1);h=Gn(u.pop());case"rgb":return u.length>=3?(Yn(e,Fn(u[0]),Fn(u[1]),Fn(u[2]),3===u.length?h:Gn(u[3])),jn(t,e),e):void Yn(e,0,0,0,1);case"hsla":return 4!==u.length?void Yn(e,0,0,0,1):(u[3]=Gn(u[3]),Kn(u,e),jn(t,e),e);case"hsl":return 3!==u.length?void Yn(e,0,0,0,1):(Kn(u,e),jn(t,e),e);default:return}}Yn(e,0,0,0,1)}}function Kn(t,e){var n=(parseFloat(t[0])%360+360)%360/360,i=Gn(t[1]),r=Gn(t[2]),o=r<=.5?r*(i+1):r+i-r*i,a=2*r-o;return Yn(e=e||[],Vn(255*Wn(a,o,n+1/3)),Vn(255*Wn(a,o,n)),Vn(255*Wn(a,o,n-1/3)),1),4===t.length&&(e[3]=t[3]),e}function $n(t,e){var n=qn(t);if(n){for(var i=0;i<3;i++)n[i]=e<0?n[i]*(1-e)|0:(255-n[i])*e+n[i]|0,n[i]>255?n[i]=255:n[i]<0&&(n[i]=0);return ri(n,4===n.length?"rgba":"rgb")}}function Jn(t,e,n){if(e&&e.length&&t>=0&&t<=1){n=n||[];var i=t*(e.length-1),r=Math.floor(i),o=Math.ceil(i),a=e[r],s=e[o],l=i-r;return n[0]=Vn(Hn(a[0],s[0],l)),n[1]=Vn(Hn(a[1],s[1],l)),n[2]=Vn(Hn(a[2],s[2],l)),n[3]=Bn(Hn(a[3],s[3],l)),n}}var Qn=Jn;function ti(t,e,n){if(e&&e.length&&t>=0&&t<=1){var i=t*(e.length-1),r=Math.floor(i),o=Math.ceil(i),a=qn(e[r]),s=qn(e[o]),l=i-r,u=ri([Vn(Hn(a[0],s[0],l)),Vn(Hn(a[1],s[1],l)),Vn(Hn(a[2],s[2],l)),Bn(Hn(a[3],s[3],l))],"rgba");return n?{color:u,leftIndex:r,rightIndex:o,value:i}:u}}var ei=ti;function ni(t,e,n,i){var r=qn(t);if(t)return r=function(t){if(t){var e,n,i=t[0]/255,r=t[1]/255,o=t[2]/255,a=Math.min(i,r,o),s=Math.max(i,r,o),l=s-a,u=(s+a)/2;if(0===l)e=0,n=0;else{n=u<.5?l/(s+a):l/(2-s-a);var h=((s-i)/6+l/2)/l,c=((s-r)/6+l/2)/l,p=((s-o)/6+l/2)/l;i===s?e=p-c:r===s?e=1/3+h-p:o===s&&(e=2/3+c-h),e<0&&(e+=1),e>1&&(e-=1)}var d=[360*e,n,u];return null!=t[3]&&d.push(t[3]),d}}(r),null!=e&&(r[0]=function(t){return(t=Math.round(t))<0?0:t>360?360:t}(e)),null!=n&&(r[1]=Gn(n)),null!=i&&(r[2]=Gn(i)),ri(Kn(r),"rgba")}function ii(t,e){var n=qn(t);if(n&&null!=e)return n[3]=Bn(e),ri(n,"rgba")}function ri(t,e){if(t&&t.length){var n=t[0]+","+t[1]+","+t[2];return"rgba"!==e&&"hsva"!==e&&"hsla"!==e||(n+=","+t[3]),e+"("+n+")"}}function oi(t,e){var n=qn(t);return n?(.299*n[0]+.587*n[1]+.114*n[2])*n[3]/255+(1-n[3])*e:0}var ai=new En(100);function si(t){if(U(t)){var e=ai.get(t);return e||(e=$n(t,-.1),ai.put(t,e)),e}if(Q(t)){var n=A({},t);return n.colorStops=z(t.colorStops,(function(t){return{offset:t.offset,color:$n(t.color,-.1)}})),n}return t}var li=Object.freeze({__proto__:null,parse:qn,lift:$n,toHex:function(t){var e=qn(t);if(e)return((1<<24)+(e[0]<<16)+(e[1]<<8)+ +e[2]).toString(16).slice(1)},fastLerp:Jn,fastMapToColor:Qn,lerp:ti,mapToColor:ei,modifyHSL:ni,modifyAlpha:ii,stringify:ri,lum:oi,random:function(){return ri([Math.round(255*Math.random()),Math.round(255*Math.random()),Math.round(255*Math.random())],"rgb")},liftColor:si}),ui=Math.round;function hi(t){var e;if(t&&"transparent"!==t){if("string"==typeof t&&t.indexOf("rgba")>-1){var n=qn(t);n&&(t="rgb("+n[0]+","+n[1]+","+n[2]+")",e=n[3])}}else t="none";return{color:t,opacity:null==e?1:e}}var ci=1e-4;function pi(t){return t<ci&&t>-1e-4}function di(t){return ui(1e3*t)/1e3}function fi(t){return ui(1e4*t)/1e4}var gi={left:"start",right:"end",center:"middle",middle:"middle"};function yi(t){return t&&!!t.image}function vi(t){return yi(t)||function(t){return t&&!!t.svgElement}(t)}function mi(t){return"linear"===t.type}function xi(t){return"radial"===t.type}function _i(t){return t&&("linear"===t.type||"radial"===t.type)}function bi(t){return"url(#"+t+")"}function wi(t){var e=t.getGlobalScale(),n=Math.max(e[0],e[1]);return Math.max(Math.ceil(Math.log(n)/Math.log(10)),1)}function Si(t){var e=t.x||0,n=t.y||0,i=(t.rotation||0)*wt,r=rt(t.scaleX,1),o=rt(t.scaleY,1),a=t.skewX||0,s=t.skewY||0,l=[];return(e||n)&&l.push("translate("+e+"px,"+n+"px)"),i&&l.push("rotate("+i+")"),1===r&&1===o||l.push("scale("+r+","+o+")"),(a||s)&&l.push("skew("+ui(a*wt)+"deg, "+ui(s*wt)+"deg)"),l.join(" ")}var Mi=r.hasGlobalWindow&&X(window.btoa)?function(t){return window.btoa(unescape(encodeURIComponent(t)))}:"undefined"!=typeof Buffer?function(t){return Buffer.from(t).toString("base64")}:function(t){return null},Ii=Array.prototype.slice;function Ti(t,e,n){return(e-t)*n+t}function Ci(t,e,n,i){for(var r=e.length,o=0;o<r;o++)t[o]=Ti(e[o],n[o],i);return t}function Di(t,e,n,i){for(var r=e.length,o=0;o<r;o++)t[o]=e[o]+n[o]*i;return t}function Ai(t,e,n,i){for(var r=e.length,o=r&&e[0].length,a=0;a<r;a++){t[a]||(t[a]=[]);for(var s=0;s<o;s++)t[a][s]=e[a][s]+n[a][s]*i}return t}function ki(t,e){for(var n=t.length,i=e.length,r=n>i?e:t,o=Math.min(n,i),a=r[o-1]||{color:[0,0,0,0],offset:0},s=o;s<Math.max(n,i);s++)r.push({offset:a.offset,color:a.color.slice()})}function Li(t,e,n){var i=t,r=e;if(i.push&&r.push){var o=i.length,a=r.length;if(o!==a)if(o>a)i.length=a;else for(var s=o;s<a;s++)i.push(1===n?r[s]:Ii.call(r[s]));var l=i[0]&&i[0].length;for(s=0;s<i.length;s++)if(1===n)isNaN(i[s])&&(i[s]=r[s]);else for(var u=0;u<l;u++)isNaN(i[s][u])&&(i[s][u]=r[s][u])}}function Pi(t){if(N(t)){var e=t.length;if(N(t[0])){for(var n=[],i=0;i<e;i++)n.push(Ii.call(t[i]));return n}return Ii.call(t)}return t}function Oi(t){return t[0]=Math.floor(t[0])||0,t[1]=Math.floor(t[1])||0,t[2]=Math.floor(t[2])||0,t[3]=null==t[3]?1:t[3],"rgba("+t.join(",")+")"}function Ri(t){return 4===t||5===t}function Ni(t){return 1===t||2===t}var Ei=[0,0,0,0],zi=function(){function t(t){this.keyframes=[],this.discrete=!1,this._invalid=!1,this._needsSort=!1,this._lastFr=0,this._lastFrP=0,this.propName=t}return t.prototype.isFinished=function(){return this._finished},t.prototype.setFinished=function(){this._finished=!0,this._additiveTrack&&this._additiveTrack.setFinished()},t.prototype.needsAnimate=function(){return this.keyframes.length>=1},t.prototype.getAdditiveTrack=function(){return this._additiveTrack},t.prototype.addKeyframe=function(t,e,n){this._needsSort=!0;var i=this.keyframes,r=i.length,o=!1,a=6,s=e;if(N(e)){var l=function(t){return N(t&&t[0])?2:1}(e);a=l,(1===l&&!j(e[0])||2===l&&!j(e[0][0]))&&(o=!0)}else if(j(e)&&!nt(e))a=0;else if(U(e))if(isNaN(+e)){var u=qn(e);u&&(s=u,a=3)}else a=0;else if(Q(e)){var h=A({},s);h.colorStops=z(e.colorStops,(function(t){return{offset:t.offset,color:qn(t.color)}})),mi(e)?a=4:xi(e)&&(a=5),s=h}0===r?this.valType=a:a===this.valType&&6!==a||(o=!0),this.discrete=this.discrete||o;var c={time:t,value:s,rawValue:e,percent:0};return n&&(c.easing=n,c.easingFunc=X(n)?n:an[n]||Pn(n)),i.push(c),c},t.prototype.prepare=function(t,e){var n=this.keyframes;this._needsSort&&n.sort((function(t,e){return t.time-e.time}));for(var i=this.valType,r=n.length,o=n[r-1],a=this.discrete,s=Ni(i),l=Ri(i),u=0;u<r;u++){var h=n[u],c=h.value,p=o.value;h.percent=h.time/t,a||(s&&u!==r-1?Li(c,p,i):l&&ki(c.colorStops,p.colorStops))}if(!a&&5!==i&&e&&this.needsAnimate()&&e.needsAnimate()&&i===e.valType&&!e._finished){this._additiveTrack=e;var d=n[0].value;for(u=0;u<r;u++)0===i?n[u].additiveValue=n[u].value-d:3===i?n[u].additiveValue=Di([],n[u].value,d,-1):Ni(i)&&(n[u].additiveValue=1===i?Di([],n[u].value,d,-1):Ai([],n[u].value,d,-1))}},t.prototype.step=function(t,e){if(!this._finished){this._additiveTrack&&this._additiveTrack._finished&&(this._additiveTrack=null);var n,i,r,o=null!=this._additiveTrack,a=o?"additiveValue":"value",s=this.valType,l=this.keyframes,u=l.length,h=this.propName,c=3===s,p=this._lastFr,d=Math.min;if(1===u)i=r=l[0];else{if(e<0)n=0;else if(e<this._lastFrP){for(n=d(p+1,u-1);n>=0&&!(l[n].percent<=e);n--);n=d(n,u-2)}else{for(n=p;n<u&&!(l[n].percent>e);n++);n=d(n-1,u-2)}r=l[n+1],i=l[n]}if(i&&r){this._lastFr=n,this._lastFrP=e;var f=r.percent-i.percent,g=0===f?1:d((e-i.percent)/f,1);r.easingFunc&&(g=r.easingFunc(g));var y=o?this._additiveValue:c?Ei:t[h];if(!Ni(s)&&!c||y||(y=this._additiveValue=[]),this.discrete)t[h]=g<1?i.rawValue:r.rawValue;else if(Ni(s))1===s?Ci(y,i[a],r[a],g):function(t,e,n,i){for(var r=e.length,o=r&&e[0].length,a=0;a<r;a++){t[a]||(t[a]=[]);for(var s=0;s<o;s++)t[a][s]=Ti(e[a][s],n[a][s],i)}}(y,i[a],r[a],g);else if(Ri(s)){var v=i[a],m=r[a],x=4===s;t[h]={type:x?"linear":"radial",x:Ti(v.x,m.x,g),y:Ti(v.y,m.y,g),colorStops:z(v.colorStops,(function(t,e){var n=m.colorStops[e];return{offset:Ti(t.offset,n.offset,g),color:Oi(Ci([],t.color,n.color,g))}})),global:m.global},x?(t[h].x2=Ti(v.x2,m.x2,g),t[h].y2=Ti(v.y2,m.y2,g)):t[h].r=Ti(v.r,m.r,g)}else if(c)Ci(y,i[a],r[a],g),o||(t[h]=Oi(y));else{var _=Ti(i[a],r[a],g);o?this._additiveValue=_:t[h]=_}o&&this._addToTarget(t)}}},t.prototype._addToTarget=function(t){var e=this.valType,n=this.propName,i=this._additiveValue;0===e?t[n]=t[n]+i:3===e?(qn(t[n],Ei),Di(Ei,Ei,i,1),t[n]=Oi(Ei)):1===e?Di(t[n],t[n],i,1):2===e&&Ai(t[n],t[n],i,1)},t}(),Vi=function(){function t(t,e,n,i){this._tracks={},this._trackKeys=[],this._maxTime=0,this._started=0,this._clip=null,this._target=t,this._loop=e,e&&i?I("Can' use additive animation on looped animation."):(this._additiveAnimators=i,this._allowDiscrete=n)}return t.prototype.getMaxTime=function(){return this._maxTime},t.prototype.getDelay=function(){return this._delay},t.prototype.getLoop=function(){return this._loop},t.prototype.getTarget=function(){return this._target},t.prototype.changeTarget=function(t){this._target=t},t.prototype.when=function(t,e,n){return this.whenWithKeys(t,e,G(e),n)},t.prototype.whenWithKeys=function(t,e,n,i){for(var r=this._tracks,o=0;o<n.length;o++){var a=n[o],s=r[a];if(!s){s=r[a]=new zi(a);var l=void 0,u=this._getAdditiveTrack(a);if(u){var h=u.keyframes,c=h[h.length-1];l=c&&c.value,3===u.valType&&l&&(l=Oi(l))}else l=this._target[a];if(null==l)continue;t>0&&s.addKeyframe(0,Pi(l),i),this._trackKeys.push(a)}s.addKeyframe(t,Pi(e[a]),i)}return this._maxTime=Math.max(this._maxTime,t),this},t.prototype.pause=function(){this._clip.pause(),this._paused=!0},t.prototype.resume=function(){this._clip.resume(),this._paused=!1},t.prototype.isPaused=function(){return!!this._paused},t.prototype.duration=function(t){return this._maxTime=t,this._force=!0,this},t.prototype._doneCallback=function(){this._setTracksFinished(),this._clip=null;var t=this._doneCbs;if(t)for(var e=t.length,n=0;n<e;n++)t[n].call(this)},t.prototype._abortedCallback=function(){this._setTracksFinished();var t=this.animation,e=this._abortedCbs;if(t&&t.removeClip(this._clip),this._clip=null,e)for(var n=0;n<e.length;n++)e[n].call(this)},t.prototype._setTracksFinished=function(){for(var t=this._tracks,e=this._trackKeys,n=0;n<e.length;n++)t[e[n]].setFinished()},t.prototype._getAdditiveTrack=function(t){var e,n=this._additiveAnimators;if(n)for(var i=0;i<n.length;i++){var r=n[i].getTrack(t);r&&(e=r)}return e},t.prototype.start=function(t){if(!(this._started>0)){this._started=1;for(var e=this,n=[],i=this._maxTime||0,r=0;r<this._trackKeys.length;r++){var o=this._trackKeys[r],a=this._tracks[o],s=this._getAdditiveTrack(o),l=a.keyframes,u=l.length;if(a.prepare(i,s),a.needsAnimate())if(!this._allowDiscrete&&a.discrete){var h=l[u-1];h&&(e._target[a.propName]=h.rawValue),a.setFinished()}else n.push(a)}if(n.length||this._force){var c=new On({life:i,loop:this._loop,delay:this._delay||0,onframe:function(t){e._started=2;var i=e._additiveAnimators;if(i){for(var r=!1,o=0;o<i.length;o++)if(i[o]._clip){r=!0;break}r||(e._additiveAnimators=null)}for(o=0;o<n.length;o++)n[o].step(e._target,t);var a=e._onframeCbs;if(a)for(o=0;o<a.length;o++)a[o](e._target,t)},ondestroy:function(){e._doneCallback()}});this._clip=c,this.animation&&this.animation.addClip(c),t&&c.setEasing(t)}else this._doneCallback();return this}},t.prototype.stop=function(t){if(this._clip){var e=this._clip;t&&e.onframe(1),this._abortedCallback()}},t.prototype.delay=function(t){return this._delay=t,this},t.prototype.during=function(t){return t&&(this._onframeCbs||(this._onframeCbs=[]),this._onframeCbs.push(t)),this},t.prototype.done=function(t){return t&&(this._doneCbs||(this._doneCbs=[]),this._doneCbs.push(t)),this},t.prototype.aborted=function(t){return t&&(this._abortedCbs||(this._abortedCbs=[]),this._abortedCbs.push(t)),this},t.prototype.getClip=function(){return this._clip},t.prototype.getTrack=function(t){return this._tracks[t]},t.prototype.getTracks=function(){var t=this;return z(this._trackKeys,(function(e){return t._tracks[e]}))},t.prototype.stopTracks=function(t,e){if(!t.length||!this._clip)return!0;for(var n=this._tracks,i=this._trackKeys,r=0;r<t.length;r++){var o=n[t[r]];o&&!o.isFinished()&&(e?o.step(this._target,1):1===this._started&&o.step(this._target,0),o.setFinished())}var a=!0;for(r=0;r<i.length;r++)if(!n[i[r]].isFinished()){a=!1;break}return a&&this._abortedCallback(),a},t.prototype.saveTo=function(t,e,n){if(t){e=e||this._trackKeys;for(var i=0;i<e.length;i++){var r=e[i],o=this._tracks[r];if(o&&!o.isFinished()){var a=o.keyframes,s=a[n?0:a.length-1];s&&(t[r]=Pi(s.rawValue))}}}},t.prototype.__changeFinalValue=function(t,e){e=e||G(t);for(var n=0;n<e.length;n++){var i=e[n],r=this._tracks[i];if(r){var o=r.keyframes;if(o.length>1){var a=o.pop();r.addKeyframe(a.time,t[i]),r.prepare(this._maxTime,r.getAdditiveTrack())}}}},t}();function Bi(){return(new Date).getTime()}var Fi,Gi,Wi=function(t){function e(e){var n=t.call(this)||this;return n._running=!1,n._time=0,n._pausedTime=0,n._pauseStart=0,n._paused=!1,e=e||{},n.stage=e.stage||{},n}return n(e,t),e.prototype.addClip=function(t){t.animation&&this.removeClip(t),this._head?(this._tail.next=t,t.prev=this._tail,t.next=null,this._tail=t):this._head=this._tail=t,t.animation=this},e.prototype.addAnimator=function(t){t.animation=this;var e=t.getClip();e&&this.addClip(e)},e.prototype.removeClip=function(t){if(t.animation){var e=t.prev,n=t.next;e?e.next=n:this._head=n,n?n.prev=e:this._tail=e,t.next=t.prev=t.animation=null}},e.prototype.removeAnimator=function(t){var e=t.getClip();e&&this.removeClip(e),t.animation=null},e.prototype.update=function(t){for(var e=Bi()-this._pausedTime,n=e-this._time,i=this._head;i;){var r=i.next;i.step(e,n)?(i.ondestroy(),this.removeClip(i),i=r):i=r}this._time=e,t||(this.trigger("frame",n),this.stage.update&&this.stage.update())},e.prototype._startLoop=function(){var t=this;this._running=!0,on((function e(){t._running&&(on(e),!t._paused&&t.update())}))},e.prototype.start=function(){this._running||(this._time=Bi(),this._pausedTime=0,this._startLoop())},e.prototype.stop=function(){this._running=!1},e.prototype.pause=function(){this._paused||(this._pauseStart=Bi(),this._paused=!0)},e.prototype.resume=function(){this._paused&&(this._pausedTime+=Bi()-this._pauseStart,this._paused=!1)},e.prototype.clear=function(){for(var t=this._head;t;){var e=t.next;t.prev=t.next=t.animation=null,t=e}this._head=this._tail=null},e.prototype.isFinished=function(){return null==this._head},e.prototype.animate=function(t,e){e=e||{},this.start();var n=new Vi(t,e.loop);return this.addAnimator(n),n},e}(jt),Hi=r.domSupported,Yi=(Gi={pointerdown:1,pointerup:1,pointermove:1,pointerout:1},{mouse:Fi=["click","dblclick","mousewheel","wheel","mouseout","mouseup","mousedown","mousemove","contextmenu"],touch:["touchstart","touchend","touchmove"],pointer:z(Fi,(function(t){var e=t.replace("mouse","pointer");return Gi.hasOwnProperty(e)?e:t}))}),Xi=["mousemove","mouseup"],Ui=["pointermove","pointerup"],Zi=!1;function ji(t){var e=t.pointerType;return"pen"===e||"touch"===e}function qi(t){t&&(t.zrByTouch=!0)}function Ki(t,e){for(var n=e,i=!1;n&&9!==n.nodeType&&!(i=n.domBelongToZr||n!==e&&n===t.painterRoot);)n=n.parentNode;return i}var $i=function(t,e){this.stopPropagation=bt,this.stopImmediatePropagation=bt,this.preventDefault=bt,this.type=e.type,this.target=this.currentTarget=t.dom,this.pointerType=e.pointerType,this.clientX=e.clientX,this.clientY=e.clientY},Ji={mousedown:function(t){t=ce(this.dom,t),this.__mayPointerCapture=[t.zrX,t.zrY],this.trigger("mousedown",t)},mousemove:function(t){t=ce(this.dom,t);var e=this.__mayPointerCapture;!e||t.zrX===e[0]&&t.zrY===e[1]||this.__togglePointerCapture(!0),this.trigger("mousemove",t)},mouseup:function(t){t=ce(this.dom,t),this.__togglePointerCapture(!1),this.trigger("mouseup",t)},mouseout:function(t){Ki(this,(t=ce(this.dom,t)).toElement||t.relatedTarget)||(this.__pointerCapturing&&(t.zrEventControl="no_globalout"),this.trigger("mouseout",t))},wheel:function(t){Zi=!0,t=ce(this.dom,t),this.trigger("mousewheel",t)},mousewheel:function(t){Zi||(t=ce(this.dom,t),this.trigger("mousewheel",t))},touchstart:function(t){qi(t=ce(this.dom,t)),this.__lastTouchMoment=new Date,this.handler.processGesture(t,"start"),Ji.mousemove.call(this,t),Ji.mousedown.call(this,t)},touchmove:function(t){qi(t=ce(this.dom,t)),this.handler.processGesture(t,"change"),Ji.mousemove.call(this,t)},touchend:function(t){qi(t=ce(this.dom,t)),this.handler.processGesture(t,"end"),Ji.mouseup.call(this,t),+new Date-+this.__lastTouchMoment<300&&Ji.click.call(this,t)},pointerdown:function(t){Ji.mousedown.call(this,t)},pointermove:function(t){ji(t)||Ji.mousemove.call(this,t)},pointerup:function(t){Ji.mouseup.call(this,t)},pointerout:function(t){ji(t)||Ji.mouseout.call(this,t)}};E(["click","dblclick","contextmenu"],(function(t){Ji[t]=function(e){e=ce(this.dom,e),this.trigger(t,e)}}));var Qi={pointermove:function(t){ji(t)||Qi.mousemove.call(this,t)},pointerup:function(t){Qi.mouseup.call(this,t)},mousemove:function(t){this.trigger("mousemove",t)},mouseup:function(t){var e=this.__pointerCapturing;this.__togglePointerCapture(!1),this.trigger("mouseup",t),e&&(t.zrEventControl="only_globalout",this.trigger("mouseout",t))}};function tr(t,e){var n=e.domHandlers;r.pointerEventsSupported?E(Yi.pointer,(function(i){nr(e,i,(function(e){n[i].call(t,e)}))})):(r.touchEventsSupported&&E(Yi.touch,(function(i){nr(e,i,(function(r){n[i].call(t,r),function(t){t.touching=!0,null!=t.touchTimer&&(clearTimeout(t.touchTimer),t.touchTimer=null),t.touchTimer=setTimeout((function(){t.touching=!1,t.touchTimer=null}),700)}(e)}))})),E(Yi.mouse,(function(i){nr(e,i,(function(r){r=he(r),e.touching||n[i].call(t,r)}))})))}function er(t,e){function n(n){nr(e,n,(function(i){i=he(i),Ki(t,i.target)||(i=function(t,e){return ce(t.dom,new $i(t,e),!0)}(t,i),e.domHandlers[n].call(t,i))}),{capture:!0})}r.pointerEventsSupported?E(Ui,n):r.touchEventsSupported||E(Xi,n)}function nr(t,e,n,i){t.mounted[e]=n,t.listenerOpts[e]=i,pe(t.domTarget,e,n,i)}function ir(t){var e,n,i,r,o=t.mounted;for(var a in o)o.hasOwnProperty(a)&&(e=t.domTarget,n=a,i=o[a],r=t.listenerOpts[a],e.removeEventListener(n,i,r));t.mounted={}}var rr=function(t,e){this.mounted={},this.listenerOpts={},this.touching=!1,this.domTarget=t,this.domHandlers=e},or=function(t){function e(e,n){var i=t.call(this)||this;return i.__pointerCapturing=!1,i.dom=e,i.painterRoot=n,i._localHandlerScope=new rr(e,Ji),Hi&&(i._globalHandlerScope=new rr(document,Qi)),tr(i,i._localHandlerScope),i}return n(e,t),e.prototype.dispose=function(){ir(this._localHandlerScope),Hi&&ir(this._globalHandlerScope)},e.prototype.setCursor=function(t){this.dom.style&&(this.dom.style.cursor=t||"default")},e.prototype.__togglePointerCapture=function(t){if(this.__mayPointerCapture=null,Hi&&+this.__pointerCapturing^+t){this.__pointerCapturing=t;var e=this._globalHandlerScope;t?er(this,e):ir(e)}},e}(jt),ar=1;r.hasGlobalWindow&&(ar=Math.max(window.devicePixelRatio||window.screen&&window.screen.deviceXDPI/window.screen.logicalXDPI||1,1));var sr=ar,lr="#333",ur="#ccc",hr=xe,cr=5e-5;function pr(t){return t>cr||t<-5e-5}var dr=[],fr=[],gr=[1,0,0,1,0,0],yr=Math.abs,vr=function(){function t(){}return t.prototype.getLocalTransform=function(e){return t.getLocalTransform(this,e)},t.prototype.setPosition=function(t){this.x=t[0],this.y=t[1]},t.prototype.setScale=function(t){this.scaleX=t[0],this.scaleY=t[1]},t.prototype.setSkew=function(t){this.skewX=t[0],this.skewY=t[1]},t.prototype.setOrigin=function(t){this.originX=t[0],this.originY=t[1]},t.prototype.needLocalTransform=function(){return pr(this.rotation)||pr(this.x)||pr(this.y)||pr(this.scaleX-1)||pr(this.scaleY-1)||pr(this.skewX)||pr(this.skewY)},t.prototype.updateTransform=function(){var t=this.parent&&this.parent.transform,e=this.needLocalTransform(),n=this.transform;e||t?(n=n||[1,0,0,1,0,0],e?this.getLocalTransform(n):hr(n),t&&(e?be(n,t,n):_e(n,t)),this.transform=n,this._resolveGlobalScaleRatio(n)):n&&(hr(n),this.invTransform=null)},t.prototype._resolveGlobalScaleRatio=function(t){var e=this.globalScaleRatio;if(null!=e&&1!==e){this.getGlobalScale(dr);var n=dr[0]<0?-1:1,i=dr[1]<0?-1:1,r=((dr[0]-n)*e+n)/dr[0]||0,o=((dr[1]-i)*e+i)/dr[1]||0;t[0]*=r,t[1]*=r,t[2]*=o,t[3]*=o}this.invTransform=this.invTransform||[1,0,0,1,0,0],Ie(this.invTransform,t)},t.prototype.getComputedTransform=function(){for(var t=this,e=[];t;)e.push(t),t=t.parent;for(;t=e.pop();)t.updateTransform();return this.transform},t.prototype.setLocalTransform=function(t){if(t){var e=t[0]*t[0]+t[1]*t[1],n=t[2]*t[2]+t[3]*t[3],i=Math.atan2(t[1],t[0]),r=Math.PI/2+i-Math.atan2(t[3],t[2]);n=Math.sqrt(n)*Math.cos(r),e=Math.sqrt(e),this.skewX=r,this.skewY=0,this.rotation=-i,this.x=+t[4],this.y=+t[5],this.scaleX=e,this.scaleY=n,this.originX=0,this.originY=0}},t.prototype.decomposeTransform=function(){if(this.transform){var t=this.parent,e=this.transform;t&&t.transform&&(t.invTransform=t.invTransform||[1,0,0,1,0,0],be(fr,t.invTransform,e),e=fr);var n=this.originX,i=this.originY;(n||i)&&(gr[4]=n,gr[5]=i,be(fr,e,gr),fr[4]-=n,fr[5]-=i,e=fr),this.setLocalTransform(e)}},t.prototype.getGlobalScale=function(t){var e=this.transform;return t=t||[],e?(t[0]=Math.sqrt(e[0]*e[0]+e[1]*e[1]),t[1]=Math.sqrt(e[2]*e[2]+e[3]*e[3]),e[0]<0&&(t[0]=-t[0]),e[3]<0&&(t[1]=-t[1]),t):(t[0]=1,t[1]=1,t)},t.prototype.transformCoordToLocal=function(t,e){var n=[t,e],i=this.invTransform;return i&&Wt(n,n,i),n},t.prototype.transformCoordToGlobal=function(t,e){var n=[t,e],i=this.transform;return i&&Wt(n,n,i),n},t.prototype.getLineScale=function(){var t=this.transform;return t&&yr(t[0]-1)>1e-10&&yr(t[3]-1)>1e-10?Math.sqrt(yr(t[0]*t[3]-t[2]*t[1])):1},t.prototype.copyTransform=function(t){xr(this,t)},t.getLocalTransform=function(t,e){e=e||[];var n=t.originX||0,i=t.originY||0,r=t.scaleX,o=t.scaleY,a=t.anchorX,s=t.anchorY,l=t.rotation||0,u=t.x,h=t.y,c=t.skewX?Math.tan(t.skewX):0,p=t.skewY?Math.tan(-t.skewY):0;if(n||i||a||s){var d=n+a,f=i+s;e[4]=-d*r-c*f*o,e[5]=-f*o-p*d*r}else e[4]=e[5]=0;return e[0]=r,e[3]=o,e[1]=p*r,e[2]=c*o,l&&Se(e,e,l),e[4]+=n+u,e[5]+=i+h,e},t.initDefaultProps=function(){var e=t.prototype;e.scaleX=e.scaleY=e.globalScaleRatio=1,e.x=e.y=e.originX=e.originY=e.skewX=e.skewY=e.rotation=e.anchorX=e.anchorY=0}(),t}(),mr=["x","y","originX","originY","anchorX","anchorY","rotation","scaleX","scaleY","skewX","skewY"];function xr(t,e){for(var n=0;n<mr.length;n++){var i=mr[n];t[i]=e[i]}}var _r={};function br(t,e){var n=_r[e=e||a];n||(n=_r[e]=new En(500));var i=n.get(t);return null==i&&(i=h.measureText(t,e).width,n.put(t,i)),i}function wr(t,e,n,i){var r=br(t,e),o=Tr(e),a=Mr(0,r,n),s=Ir(0,o,i);return new ze(a,s,r,o)}function Sr(t,e,n,i){var r=((t||"")+"").split("\n");if(1===r.length)return wr(r[0],e,n,i);for(var o=new ze(0,0,0,0),a=0;a<r.length;a++){var s=wr(r[a],e,n,i);0===a?o.copy(s):o.union(s)}return o}function Mr(t,e,n){return"right"===n?t-=e:"center"===n&&(t-=e/2),t}function Ir(t,e,n){return"middle"===n?t-=e/2:"bottom"===n&&(t-=e),t}function Tr(t){return br("国",t)}function Cr(t,e){return"string"==typeof t?t.lastIndexOf("%")>=0?parseFloat(t)/100*e:parseFloat(t):t}function Dr(t,e,n){var i=e.position||"inside",r=null!=e.distance?e.distance:5,o=n.height,a=n.width,s=o/2,l=n.x,u=n.y,h="left",c="top";if(i instanceof Array)l+=Cr(i[0],n.width),u+=Cr(i[1],n.height),h=null,c=null;else switch(i){case"left":l-=r,u+=s,h="right",c="middle";break;case"right":l+=r+a,u+=s,c="middle";break;case"top":l+=a/2,u-=r,h="center",c="bottom";break;case"bottom":l+=a/2,u+=o+r,h="center";break;case"inside":l+=a/2,u+=s,h="center",c="middle";break;case"insideLeft":l+=r,u+=s,c="middle";break;case"insideRight":l+=a-r,u+=s,h="right",c="middle";break;case"insideTop":l+=a/2,u+=r,h="center";break;case"insideBottom":l+=a/2,u+=o-r,h="center",c="bottom";break;case"insideTopLeft":l+=r,u+=r;break;case"insideTopRight":l+=a-r,u+=r,h="right";break;case"insideBottomLeft":l+=r,u+=o-r,c="bottom";break;case"insideBottomRight":l+=a-r,u+=o-r,h="right",c="bottom"}return(t=t||{}).x=l,t.y=u,t.align=h,t.verticalAlign=c,t}var Ar="__zr_normal__",kr=mr.concat(["ignore"]),Lr=V(mr,(function(t,e){return t[e]=!0,t}),{ignore:!1}),Pr={},Or=new ze(0,0,0,0),Rr=function(){function t(t){this.id=M(),this.animators=[],this.currentStates=[],this.states={},this._init(t)}return t.prototype._init=function(t){this.attr(t)},t.prototype.drift=function(t,e,n){switch(this.draggable){case"horizontal":e=0;break;case"vertical":t=0}var i=this.transform;i||(i=this.transform=[1,0,0,1,0,0]),i[4]+=t,i[5]+=e,this.decomposeTransform(),this.markRedraw()},t.prototype.beforeUpdate=function(){},t.prototype.afterUpdate=function(){},t.prototype.update=function(){this.updateTransform(),this.__dirty&&this.updateInnerText()},t.prototype.updateInnerText=function(t){var e=this._textContent;if(e&&(!e.ignore||t)){this.textConfig||(this.textConfig={});var n=this.textConfig,i=n.local,r=e.innerTransformable,o=void 0,a=void 0,s=!1;r.parent=i?this:null;var l=!1;if(r.copyTransform(e),null!=n.position){var u=Or;n.layoutRect?u.copy(n.layoutRect):u.copy(this.getBoundingRect()),i||u.applyTransform(this.transform),this.calculateTextPosition?this.calculateTextPosition(Pr,n,u):Dr(Pr,n,u),r.x=Pr.x,r.y=Pr.y,o=Pr.align,a=Pr.verticalAlign;var h=n.origin;if(h&&null!=n.rotation){var c=void 0,p=void 0;"center"===h?(c=.5*u.width,p=.5*u.height):(c=Cr(h[0],u.width),p=Cr(h[1],u.height)),l=!0,r.originX=-r.x+c+(i?0:u.x),r.originY=-r.y+p+(i?0:u.y)}}null!=n.rotation&&(r.rotation=n.rotation);var d=n.offset;d&&(r.x+=d[0],r.y+=d[1],l||(r.originX=-d[0],r.originY=-d[1]));var f=null==n.inside?"string"==typeof n.position&&n.position.indexOf("inside")>=0:n.inside,g=this._innerTextDefaultStyle||(this._innerTextDefaultStyle={}),y=void 0,v=void 0,m=void 0;f&&this.canBeInsideText()?(y=n.insideFill,v=n.insideStroke,null!=y&&"auto"!==y||(y=this.getInsideTextFill()),null!=v&&"auto"!==v||(v=this.getInsideTextStroke(y),m=!0)):(y=n.outsideFill,v=n.outsideStroke,null!=y&&"auto"!==y||(y=this.getOutsideFill()),null!=v&&"auto"!==v||(v=this.getOutsideStroke(y),m=!0)),(y=y||"#000")===g.fill&&v===g.stroke&&m===g.autoStroke&&o===g.align&&a===g.verticalAlign||(s=!0,g.fill=y,g.stroke=v,g.autoStroke=m,g.align=o,g.verticalAlign=a,e.setDefaultTextStyle(g)),e.__dirty|=1,s&&e.dirtyStyle(!0)}},t.prototype.canBeInsideText=function(){return!0},t.prototype.getInsideTextFill=function(){return"#fff"},t.prototype.getInsideTextStroke=function(t){return"#000"},t.prototype.getOutsideFill=function(){return this.__zr&&this.__zr.isDarkMode()?ur:lr},t.prototype.getOutsideStroke=function(t){var e=this.__zr&&this.__zr.getBackgroundColor(),n="string"==typeof e&&qn(e);n||(n=[255,255,255,1]);for(var i=n[3],r=this.__zr.isDarkMode(),o=0;o<3;o++)n[o]=n[o]*i+(r?0:255)*(1-i);return n[3]=1,ri(n,"rgba")},t.prototype.traverse=function(t,e){},t.prototype.attrKV=function(t,e){"textConfig"===t?this.setTextConfig(e):"textContent"===t?this.setTextContent(e):"clipPath"===t?this.setClipPath(e):"extra"===t?(this.extra=this.extra||{},A(this.extra,e)):this[t]=e},t.prototype.hide=function(){this.ignore=!0,this.markRedraw()},t.prototype.show=function(){this.ignore=!1,this.markRedraw()},t.prototype.attr=function(t,e){if("string"==typeof t)this.attrKV(t,e);else if(q(t))for(var n=G(t),i=0;i<n.length;i++){var r=n[i];this.attrKV(r,t[r])}return this.markRedraw(),this},t.prototype.saveCurrentToNormalState=function(t){this._innerSaveToNormal(t);for(var e=this._normalState,n=0;n<this.animators.length;n++){var i=this.animators[n],r=i.__fromStateTransition;if(!(i.getLoop()||r&&r!==Ar)){var o=i.targetName,a=o?e[o]:e;i.saveTo(a)}}},t.prototype._innerSaveToNormal=function(t){var e=this._normalState;e||(e=this._normalState={}),t.textConfig&&!e.textConfig&&(e.textConfig=this.textConfig),this._savePrimaryToNormal(t,e,kr)},t.prototype._savePrimaryToNormal=function(t,e,n){for(var i=0;i<n.length;i++){var r=n[i];null==t[r]||r in e||(e[r]=this[r])}},t.prototype.hasState=function(){return this.currentStates.length>0},t.prototype.getState=function(t){return this.states[t]},t.prototype.ensureState=function(t){var e=this.states;return e[t]||(e[t]={}),e[t]},t.prototype.clearStates=function(t){this.useState(Ar,!1,t)},t.prototype.useState=function(t,e,n,i){var r=t===Ar;if(this.hasState()||!r){var o=this.currentStates,a=this.stateTransition;if(!(P(o,t)>=0)||!e&&1!==o.length){var s;if(this.stateProxy&&!r&&(s=this.stateProxy(t)),s||(s=this.states&&this.states[t]),s||r){r||this.saveCurrentToNormalState(s);var l=!!(s&&s.hoverLayer||i);l&&this._toggleHoverLayerFlag(!0),this._applyStateObj(t,s,this._normalState,e,!n&&!this.__inHover&&a&&a.duration>0,a);var u=this._textContent,h=this._textGuide;return u&&u.useState(t,e,n,l),h&&h.useState(t,e,n,l),r?(this.currentStates=[],this._normalState={}):e?this.currentStates.push(t):this.currentStates=[t],this._updateAnimationTargets(),this.markRedraw(),!l&&this.__inHover&&(this._toggleHoverLayerFlag(!1),this.__dirty&=-2),s}I("State "+t+" not exists.")}}},t.prototype.useStates=function(t,e,n){if(t.length){var i=[],r=this.currentStates,o=t.length,a=o===r.length;if(a)for(var s=0;s<o;s++)if(t[s]!==r[s]){a=!1;break}if(a)return;for(s=0;s<o;s++){var l=t[s],u=void 0;this.stateProxy&&(u=this.stateProxy(l,t)),u||(u=this.states[l]),u&&i.push(u)}var h=i[o-1],c=!!(h&&h.hoverLayer||n);c&&this._toggleHoverLayerFlag(!0);var p=this._mergeStates(i),d=this.stateTransition;this.saveCurrentToNormalState(p),this._applyStateObj(t.join(","),p,this._normalState,!1,!e&&!this.__inHover&&d&&d.duration>0,d);var f=this._textContent,g=this._textGuide;f&&f.useStates(t,e,c),g&&g.useStates(t,e,c),this._updateAnimationTargets(),this.currentStates=t.slice(),this.markRedraw(),!c&&this.__inHover&&(this._toggleHoverLayerFlag(!1),this.__dirty&=-2)}else this.clearStates()},t.prototype.isSilent=function(){for(var t=this.silent,e=this.parent;!t&&e;){if(e.silent){t=!0;break}e=e.parent}return t},t.prototype._updateAnimationTargets=function(){for(var t=0;t<this.animators.length;t++){var e=this.animators[t];e.targetName&&e.changeTarget(this[e.targetName])}},t.prototype.removeState=function(t){var e=P(this.currentStates,t);if(e>=0){var n=this.currentStates.slice();n.splice(e,1),this.useStates(n)}},t.prototype.replaceState=function(t,e,n){var i=this.currentStates.slice(),r=P(i,t),o=P(i,e)>=0;r>=0?o?i.splice(r,1):i[r]=e:n&&!o&&i.push(e),this.useStates(i)},t.prototype.toggleState=function(t,e){e?this.useState(t,!0):this.removeState(t)},t.prototype._mergeStates=function(t){for(var e,n={},i=0;i<t.length;i++){var r=t[i];A(n,r),r.textConfig&&A(e=e||{},r.textConfig)}return e&&(n.textConfig=e),n},t.prototype._applyStateObj=function(t,e,n,i,r,o){var a=!(e&&i);e&&e.textConfig?(this.textConfig=A({},i?this.textConfig:n.textConfig),A(this.textConfig,e.textConfig)):a&&n.textConfig&&(this.textConfig=n.textConfig);for(var s={},l=!1,u=0;u<kr.length;u++){var h=kr[u],c=r&&Lr[h];e&&null!=e[h]?c?(l=!0,s[h]=e[h]):this[h]=e[h]:a&&null!=n[h]&&(c?(l=!0,s[h]=n[h]):this[h]=n[h])}if(!r)for(u=0;u<this.animators.length;u++){var p=this.animators[u],d=p.targetName;p.getLoop()||p.__changeFinalValue(d?(e||n)[d]:e||n)}l&&this._transitionState(t,s,o)},t.prototype._attachComponent=function(t){if((!t.__zr||t.__hostTarget)&&t!==this){var e=this.__zr;e&&t.addSelfToZr(e),t.__zr=e,t.__hostTarget=this}},t.prototype._detachComponent=function(t){t.__zr&&t.removeSelfFromZr(t.__zr),t.__zr=null,t.__hostTarget=null},t.prototype.getClipPath=function(){return this._clipPath},t.prototype.setClipPath=function(t){this._clipPath&&this._clipPath!==t&&this.removeClipPath(),this._attachComponent(t),this._clipPath=t,this.markRedraw()},t.prototype.removeClipPath=function(){var t=this._clipPath;t&&(this._detachComponent(t),this._clipPath=null,this.markRedraw())},t.prototype.getTextContent=function(){return this._textContent},t.prototype.setTextContent=function(t){var e=this._textContent;e!==t&&(e&&e!==t&&this.removeTextContent(),t.innerTransformable=new vr,this._attachComponent(t),this._textContent=t,this.markRedraw())},t.prototype.setTextConfig=function(t){this.textConfig||(this.textConfig={}),A(this.textConfig,t),this.markRedraw()},t.prototype.removeTextConfig=function(){this.textConfig=null,this.markRedraw()},t.prototype.removeTextContent=function(){var t=this._textContent;t&&(t.innerTransformable=null,this._detachComponent(t),this._textContent=null,this._innerTextDefaultStyle=null,this.markRedraw())},t.prototype.getTextGuideLine=function(){return this._textGuide},t.prototype.setTextGuideLine=function(t){this._textGuide&&this._textGuide!==t&&this.removeTextGuideLine(),this._attachComponent(t),this._textGuide=t,this.markRedraw()},t.prototype.removeTextGuideLine=function(){var t=this._textGuide;t&&(this._detachComponent(t),this._textGuide=null,this.markRedraw())},t.prototype.markRedraw=function(){this.__dirty|=1;var t=this.__zr;t&&(this.__inHover?t.refreshHover():t.refresh()),this.__hostTarget&&this.__hostTarget.markRedraw()},t.prototype.dirty=function(){this.markRedraw()},t.prototype._toggleHoverLayerFlag=function(t){this.__inHover=t;var e=this._textContent,n=this._textGuide;e&&(e.__inHover=t),n&&(n.__inHover=t)},t.prototype.addSelfToZr=function(t){if(this.__zr!==t){this.__zr=t;var e=this.animators;if(e)for(var n=0;n<e.length;n++)t.animation.addAnimator(e[n]);this._clipPath&&this._clipPath.addSelfToZr(t),this._textContent&&this._textContent.addSelfToZr(t),this._textGuide&&this._textGuide.addSelfToZr(t)}},t.prototype.removeSelfFromZr=function(t){if(this.__zr){this.__zr=null;var e=this.animators;if(e)for(var n=0;n<e.length;n++)t.animation.removeAnimator(e[n]);this._clipPath&&this._clipPath.removeSelfFromZr(t),this._textContent&&this._textContent.removeSelfFromZr(t),this._textGuide&&this._textGuide.removeSelfFromZr(t)}},t.prototype.animate=function(t,e,n){var i=t?this[t]:this;var r=new Vi(i,e,n);return t&&(r.targetName=t),this.addAnimator(r,t),r},t.prototype.addAnimator=function(t,e){var n=this.__zr,i=this;t.during((function(){i.updateDuringAnimation(e)})).done((function(){var e=i.animators,n=P(e,t);n>=0&&e.splice(n,1)})),this.animators.push(t),n&&n.animation.addAnimator(t),n&&n.wakeUp()},t.prototype.updateDuringAnimation=function(t){this.markRedraw()},t.prototype.stopAnimation=function(t,e){for(var n=this.animators,i=n.length,r=[],o=0;o<i;o++){var a=n[o];t&&t!==a.scope?r.push(a):a.stop(e)}return this.animators=r,this},t.prototype.animateTo=function(t,e,n){Nr(this,t,e,n)},t.prototype.animateFrom=function(t,e,n){Nr(this,t,e,n,!0)},t.prototype._transitionState=function(t,e,n,i){for(var r=Nr(this,e,n,i),o=0;o<r.length;o++)r[o].__fromStateTransition=t},t.prototype.getBoundingRect=function(){return null},t.prototype.getPaintRect=function(){return null},t.initDefaultProps=function(){var e=t.prototype;e.type="element",e.name="",e.ignore=e.silent=e.isGroup=e.draggable=e.dragging=e.ignoreClip=e.__inHover=!1,e.__dirty=1;function n(t,n,i,r){function o(t,e){Object.defineProperty(e,0,{get:function(){return t[i]},set:function(e){t[i]=e}}),Object.defineProperty(e,1,{get:function(){return t[r]},set:function(e){t[r]=e}})}Object.defineProperty(e,t,{get:function(){this[n]||o(this,this[n]=[]);return this[n]},set:function(t){this[i]=t[0],this[r]=t[1],this[n]=t,o(this,t)}})}Object.defineProperty&&(n("position","_legacyPos","x","y"),n("scale","_legacyScale","scaleX","scaleY"),n("origin","_legacyOrigin","originX","originY"))}(),t}();function Nr(t,e,n,i,r){var o=[];Vr(t,"",t,e,n=n||{},i,o,r);var a=o.length,s=!1,l=n.done,u=n.aborted,h=function(){s=!0,--a<=0&&(s?l&&l():u&&u())},c=function(){--a<=0&&(s?l&&l():u&&u())};a||l&&l(),o.length>0&&n.during&&o[0].during((function(t,e){n.during(e)}));for(var p=0;p<o.length;p++){var d=o[p];h&&d.done(h),c&&d.aborted(c),n.force&&d.duration(n.duration),d.start(n.easing)}return o}function Er(t,e,n){for(var i=0;i<n;i++)t[i]=e[i]}function zr(t,e,n){if(N(e[n]))if(N(t[n])||(t[n]=[]),$(e[n])){var i=e[n].length;t[n].length!==i&&(t[n]=new e[n].constructor(i),Er(t[n],e[n],i))}else{var r=e[n],o=t[n],a=r.length;if(N(r[0]))for(var s=r[0].length,l=0;l<a;l++)o[l]?Er(o[l],r[l],s):o[l]=Array.prototype.slice.call(r[l]);else Er(o,r,a);o.length=r.length}else t[n]=e[n]}function Vr(t,e,n,i,r,o,a,s){for(var l=G(i),u=r.duration,h=r.delay,c=r.additive,p=r.setToFinal,d=!q(o),f=t.animators,g=[],y=0;y<l.length;y++){var v=l[y],m=i[v];if(null!=m&&null!=n[v]&&(d||o[v]))if(!q(m)||N(m)||Q(m))g.push(v);else{if(e){s||(n[v]=m,t.updateDuringAnimation(e));continue}Vr(t,v,n[v],m,r,o&&o[v],a,s)}else s||(n[v]=m,t.updateDuringAnimation(e),g.push(v))}var x=g.length;if(!c&&x)for(var _=0;_<f.length;_++){if((w=f[_]).targetName===e)if(w.stopTracks(g)){var b=P(f,w);f.splice(b,1)}}if(r.force||(g=B(g,(function(t){return e=i[t],r=n[t],!(e===r||N(e)&&N(r)&&function(t,e){var n=t.length;if(n!==e.length)return!1;for(var i=0;i<n;i++)if(t[i]!==e[i])return!1;return!0}(e,r));var e,r})),x=g.length),x>0||r.force&&!a.length){var w,S=void 0,M=void 0,I=void 0;if(s){M={},p&&(S={});for(_=0;_<x;_++){M[v=g[_]]=n[v],p?S[v]=i[v]:n[v]=i[v]}}else if(p){I={};for(_=0;_<x;_++){I[v=g[_]]=Pi(n[v]),zr(n,i,v)}}(w=new Vi(n,!1,!1,c?B(f,(function(t){return t.targetName===e})):null)).targetName=e,r.scope&&(w.scope=r.scope),p&&S&&w.whenWithKeys(0,S,g),I&&w.whenWithKeys(0,I,g),w.whenWithKeys(null==u?500:u,s?M:i,g).delay(h||0),t.addAnimator(w,e),a.push(w)}}R(Rr,jt),R(Rr,vr);var Br=function(t){function e(e){var n=t.call(this)||this;return n.isGroup=!0,n._children=[],n.attr(e),n}return n(e,t),e.prototype.childrenRef=function(){return this._children},e.prototype.children=function(){return this._children.slice()},e.prototype.childAt=function(t){return this._children[t]},e.prototype.childOfName=function(t){for(var e=this._children,n=0;n<e.length;n++)if(e[n].name===t)return e[n]},e.prototype.childCount=function(){return this._children.length},e.prototype.add=function(t){return t&&t!==this&&t.parent!==this&&(this._children.push(t),this._doAdd(t)),this},e.prototype.addBefore=function(t,e){if(t&&t!==this&&t.parent!==this&&e&&e.parent===this){var n=this._children,i=n.indexOf(e);i>=0&&(n.splice(i,0,t),this._doAdd(t))}return this},e.prototype.replace=function(t,e){var n=P(this._children,t);return n>=0&&this.replaceAt(e,n),this},e.prototype.replaceAt=function(t,e){var n=this._children,i=n[e];if(t&&t!==this&&t.parent!==this&&t!==i){n[e]=t,i.parent=null;var r=this.__zr;r&&i.removeSelfFromZr(r),this._doAdd(t)}return this},e.prototype._doAdd=function(t){t.parent&&t.parent.remove(t),t.parent=this;var e=this.__zr;e&&e!==t.__zr&&t.addSelfToZr(e),e&&e.refresh()},e.prototype.remove=function(t){var e=this.__zr,n=this._children,i=P(n,t);return i<0||(n.splice(i,1),t.parent=null,e&&t.removeSelfFromZr(e),e&&e.refresh()),this},e.prototype.removeAll=function(){for(var t=this._children,e=this.__zr,n=0;n<t.length;n++){var i=t[n];e&&i.removeSelfFromZr(e),i.parent=null}return t.length=0,this},e.prototype.eachChild=function(t,e){for(var n=this._children,i=0;i<n.length;i++){var r=n[i];t.call(e,r,i)}return this},e.prototype.traverse=function(t,e){for(var n=0;n<this._children.length;n++){var i=this._children[n],r=t.call(e,i);i.isGroup&&!r&&i.traverse(t,e)}return this},e.prototype.addSelfToZr=function(e){t.prototype.addSelfToZr.call(this,e);for(var n=0;n<this._children.length;n++){this._children[n].addSelfToZr(e)}},e.prototype.removeSelfFromZr=function(e){t.prototype.removeSelfFromZr.call(this,e);for(var n=0;n<this._children.length;n++){this._children[n].removeSelfFromZr(e)}},e.prototype.getBoundingRect=function(t){for(var e=new ze(0,0,0,0),n=t||this._children,i=[],r=null,o=0;o<n.length;o++){var a=n[o];if(!a.ignore&&!a.invisible){var s=a.getBoundingRect(),l=a.getLocalTransform(i);l?(ze.applyTransform(e,s,l),(r=r||e.clone()).union(e)):(r=r||s.clone()).union(s)}}return r||e},e}(Rr);Br.prototype.type="group"; +/*! + * ZRender, a high performance 2d drawing library. + * + * Copyright (c) 2013, Baidu Inc. + * All rights reserved. + * + * LICENSE + * https://github.com/ecomfe/zrender/blob/master/LICENSE.txt + */ +var Fr={},Gr={};var Wr,Hr=function(){function t(t,e,n){var i=this;this._sleepAfterStill=10,this._stillFrameAccum=0,this._needsRefresh=!0,this._needsRefreshHover=!0,this._darkMode=!1,n=n||{},this.dom=e,this.id=t;var o=new rn,a=n.renderer||"canvas";Fr[a]||(a=G(Fr)[0]),n.useDirtyRect=null!=n.useDirtyRect&&n.useDirtyRect;var s=new Fr[a](e,o,n,t),l=n.ssr||s.ssrOnly;this.storage=o,this.painter=s;var u,h=r.node||r.worker||l?null:new or(s.getViewportRoot(),s.root),c=n.useCoarsePointer;(null==c||"auto"===c?r.touchEventsSupported:!!c)&&(u=rt(n.pointerSize,44)),this.handler=new Ye(o,s,h,s.root,u),this.animation=new Wi({stage:{update:l?null:function(){return i._flush(!0)}}}),l||this.animation.start()}return t.prototype.add=function(t){!this._disposed&&t&&(this.storage.addRoot(t),t.addSelfToZr(this),this.refresh())},t.prototype.remove=function(t){!this._disposed&&t&&(this.storage.delRoot(t),t.removeSelfFromZr(this),this.refresh())},t.prototype.configLayer=function(t,e){this._disposed||(this.painter.configLayer&&this.painter.configLayer(t,e),this.refresh())},t.prototype.setBackgroundColor=function(t){this._disposed||(this.painter.setBackgroundColor&&this.painter.setBackgroundColor(t),this.refresh(),this._backgroundColor=t,this._darkMode=function(t){if(!t)return!1;if("string"==typeof t)return oi(t,1)<.4;if(t.colorStops){for(var e=t.colorStops,n=0,i=e.length,r=0;r<i;r++)n+=oi(e[r].color,1);return(n/=i)<.4}return!1}(t))},t.prototype.getBackgroundColor=function(){return this._backgroundColor},t.prototype.setDarkMode=function(t){this._darkMode=t},t.prototype.isDarkMode=function(){return this._darkMode},t.prototype.refreshImmediately=function(t){this._disposed||(t||this.animation.update(!0),this._needsRefresh=!1,this.painter.refresh(),this._needsRefresh=!1)},t.prototype.refresh=function(){this._disposed||(this._needsRefresh=!0,this.animation.start())},t.prototype.flush=function(){this._disposed||this._flush(!1)},t.prototype._flush=function(t){var e,n=Bi();this._needsRefresh&&(e=!0,this.refreshImmediately(t)),this._needsRefreshHover&&(e=!0,this.refreshHoverImmediately());var i=Bi();e?(this._stillFrameAccum=0,this.trigger("rendered",{elapsedTime:i-n})):this._sleepAfterStill>0&&(this._stillFrameAccum++,this._stillFrameAccum>this._sleepAfterStill&&this.animation.stop())},t.prototype.setSleepAfterStill=function(t){this._sleepAfterStill=t},t.prototype.wakeUp=function(){this._disposed||(this.animation.start(),this._stillFrameAccum=0)},t.prototype.refreshHover=function(){this._needsRefreshHover=!0},t.prototype.refreshHoverImmediately=function(){this._disposed||(this._needsRefreshHover=!1,this.painter.refreshHover&&"canvas"===this.painter.getType()&&this.painter.refreshHover())},t.prototype.resize=function(t){this._disposed||(t=t||{},this.painter.resize(t.width,t.height),this.handler.resize())},t.prototype.clearAnimation=function(){this._disposed||this.animation.clear()},t.prototype.getWidth=function(){if(!this._disposed)return this.painter.getWidth()},t.prototype.getHeight=function(){if(!this._disposed)return this.painter.getHeight()},t.prototype.setCursorStyle=function(t){this._disposed||this.handler.setCursorStyle(t)},t.prototype.findHover=function(t,e){if(!this._disposed)return this.handler.findHover(t,e)},t.prototype.on=function(t,e,n){return this._disposed||this.handler.on(t,e,n),this},t.prototype.off=function(t,e){this._disposed||this.handler.off(t,e)},t.prototype.trigger=function(t,e){this._disposed||this.handler.trigger(t,e)},t.prototype.clear=function(){if(!this._disposed){for(var t=this.storage.getRoots(),e=0;e<t.length;e++)t[e]instanceof Br&&t[e].removeSelfFromZr(this);this.storage.delAllRoots(),this.painter.clear()}},t.prototype.dispose=function(){var t;this._disposed||(this.animation.stop(),this.clear(),this.storage.dispose(),this.painter.dispose(),this.handler.dispose(),this.animation=this.storage=this.painter=this.handler=null,this._disposed=!0,t=this.id,delete Gr[t])},t}();function Yr(t,e){var n=new Hr(M(),t,e);return Gr[n.id]=n,n}function Xr(t,e){Fr[t]=e}function Ur(t){if("function"==typeof Wr)return Wr(t)}function Zr(t){Wr=t}var jr=Object.freeze({__proto__:null,init:Yr,dispose:function(t){t.dispose()},disposeAll:function(){for(var t in Gr)Gr.hasOwnProperty(t)&&Gr[t].dispose();Gr={}},getInstance:function(t){return Gr[t]},registerPainter:Xr,getElementSSRData:Ur,registerSSRDataGetter:Zr,version:"5.6.0"}),qr=1e-4;function Kr(t,e,n,i){var r=e[0],o=e[1],a=n[0],s=n[1],l=o-r,u=s-a;if(0===l)return 0===u?a:(a+s)/2;if(i)if(l>0){if(t<=r)return a;if(t>=o)return s}else{if(t>=r)return a;if(t<=o)return s}else{if(t===r)return a;if(t===o)return s}return(t-r)/l*u+a}function $r(t,e){switch(t){case"center":case"middle":t="50%";break;case"left":case"top":t="0%";break;case"right":case"bottom":t="100%"}return U(t)?(n=t,n.replace(/^\s+|\s+$/g,"")).match(/%$/)?parseFloat(t)/100*e:parseFloat(t):null==t?NaN:+t;var n}function Jr(t,e,n){return null==e&&(e=10),e=Math.min(Math.max(0,e),20),t=(+t).toFixed(e),n?t:+t}function Qr(t){return t.sort((function(t,e){return t-e})),t}function to(t){if(t=+t,isNaN(t))return 0;if(t>1e-14)for(var e=1,n=0;n<15;n++,e*=10)if(Math.round(t*e)/e===t)return n;return eo(t)}function eo(t){var e=t.toString().toLowerCase(),n=e.indexOf("e"),i=n>0?+e.slice(n+1):0,r=n>0?n:e.length,o=e.indexOf("."),a=o<0?0:r-1-o;return Math.max(0,a-i)}function no(t,e){var n=Math.log,i=Math.LN10,r=Math.floor(n(t[1]-t[0])/i),o=Math.round(n(Math.abs(e[1]-e[0]))/i),a=Math.min(Math.max(-r+o,0),20);return isFinite(a)?a:20}function io(t,e){var n=V(t,(function(t,e){return t+(isNaN(e)?0:e)}),0);if(0===n)return[];for(var i=Math.pow(10,e),r=z(t,(function(t){return(isNaN(t)?0:t)/n*i*100})),o=100*i,a=z(r,(function(t){return Math.floor(t)})),s=V(a,(function(t,e){return t+e}),0),l=z(r,(function(t,e){return t-a[e]}));s<o;){for(var u=Number.NEGATIVE_INFINITY,h=null,c=0,p=l.length;c<p;++c)l[c]>u&&(u=l[c],h=c);++a[h],l[h]=0,++s}return z(a,(function(t){return t/i}))}function ro(t,e){var n=Math.max(to(t),to(e)),i=t+e;return n>20?i:Jr(i,n)}var oo=9007199254740991;function ao(t){var e=2*Math.PI;return(t%e+e)%e}function so(t){return t>-1e-4&&t<qr}var lo=/^(?:(\d{4})(?:[-\/](\d{1,2})(?:[-\/](\d{1,2})(?:[T ](\d{1,2})(?::(\d{1,2})(?::(\d{1,2})(?:[.,](\d+))?)?)?(Z|[\+\-]\d\d:?\d\d)?)?)?)?)?$/;function uo(t){if(t instanceof Date)return t;if(U(t)){var e=lo.exec(t);if(!e)return new Date(NaN);if(e[8]){var n=+e[4]||0;return"Z"!==e[8].toUpperCase()&&(n-=+e[8].slice(0,3)),new Date(Date.UTC(+e[1],+(e[2]||1)-1,+e[3]||1,n,+(e[5]||0),+e[6]||0,e[7]?+e[7].substring(0,3):0))}return new Date(+e[1],+(e[2]||1)-1,+e[3]||1,+e[4]||0,+(e[5]||0),+e[6]||0,e[7]?+e[7].substring(0,3):0)}return null==t?new Date(NaN):new Date(Math.round(t))}function ho(t){return Math.pow(10,co(t))}function co(t){if(0===t)return 0;var e=Math.floor(Math.log(t)/Math.LN10);return t/Math.pow(10,e)>=10&&e++,e}function po(t,e){var n=co(t),i=Math.pow(10,n),r=t/i;return t=(e?r<1.5?1:r<2.5?2:r<4?3:r<7?5:10:r<1?1:r<2?2:r<3?3:r<5?5:10)*i,n>=-20?+t.toFixed(n<0?-n:0):t}function fo(t,e){var n=(t.length-1)*e+1,i=Math.floor(n),r=+t[i-1],o=n-i;return o?r+o*(t[i]-r):r}function go(t){t.sort((function(t,e){return s(t,e,0)?-1:1}));for(var e=-1/0,n=1,i=0;i<t.length;){for(var r=t[i].interval,o=t[i].close,a=0;a<2;a++)r[a]<=e&&(r[a]=e,o[a]=a?1:1-n),e=r[a],n=o[a];r[0]===r[1]&&o[0]*o[1]!=1?t.splice(i,1):i++}return t;function s(t,e,n){return t.interval[n]<e.interval[n]||t.interval[n]===e.interval[n]&&(t.close[n]-e.close[n]==(n?-1:1)||!n&&s(t,e,1))}}function yo(t){var e=parseFloat(t);return e==t&&(0!==e||!U(t)||t.indexOf("x")<=0)?e:NaN}function vo(t){return!isNaN(yo(t))}function mo(){return Math.round(9*Math.random())}function xo(t,e){return 0===e?t:xo(e,t%e)}function _o(t,e){return null==t?e:null==e?t:t*e/xo(t,e)}"undefined"!=typeof console&&console.warn&&console.log;function bo(t){0}function wo(t){throw new Error(t)}function So(t,e,n){return(e-t)*n+t}var Mo="series\0",Io="\0_ec_\0";function To(t){return t instanceof Array?t:null==t?[]:[t]}function Co(t,e,n){if(t){t[e]=t[e]||{},t.emphasis=t.emphasis||{},t.emphasis[e]=t.emphasis[e]||{};for(var i=0,r=n.length;i<r;i++){var o=n[i];!t.emphasis[e].hasOwnProperty(o)&&t[e].hasOwnProperty(o)&&(t.emphasis[e][o]=t[e][o])}}}var Do=["fontStyle","fontWeight","fontSize","fontFamily","rich","tag","color","textBorderColor","textBorderWidth","width","height","lineHeight","align","verticalAlign","baseline","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY","textShadowColor","textShadowBlur","textShadowOffsetX","textShadowOffsetY","backgroundColor","borderColor","borderWidth","borderRadius","padding"];function Ao(t){return!q(t)||Y(t)||t instanceof Date?t:t.value}function ko(t){return q(t)&&!(t instanceof Array)}function Lo(t,e,n){var i="normalMerge"===n,r="replaceMerge"===n,o="replaceAll"===n;t=t||[],e=(e||[]).slice();var a=yt();E(e,(function(t,n){q(t)||(e[n]=null)}));var s,l,u=function(t,e,n){var i=[];if("replaceAll"===n)return i;for(var r=0;r<t.length;r++){var o=t[r];o&&null!=o.id&&e.set(o.id,r),i.push({existing:"replaceMerge"===n||Eo(o)?null:o,newOption:null,keyInfo:null,brandNew:null})}return i}(t,a,n);return(i||r)&&function(t,e,n,i){E(i,(function(r,o){if(r&&null!=r.id){var a=Oo(r.id),s=n.get(a);if(null!=s){var l=t[s];lt(!l.newOption,'Duplicated option on id "'+a+'".'),l.newOption=r,l.existing=e[s],i[o]=null}}}))}(u,t,a,e),i&&function(t,e){E(e,(function(n,i){if(n&&null!=n.name)for(var r=0;r<t.length;r++){var o=t[r].existing;if(!t[r].newOption&&o&&(null==o.id||null==n.id)&&!Eo(n)&&!Eo(o)&&Po("name",o,n))return t[r].newOption=n,void(e[i]=null)}}))}(u,e),i||r?function(t,e,n){E(e,(function(e){if(e){for(var i,r=0;(i=t[r])&&(i.newOption||Eo(i.existing)||i.existing&&null!=e.id&&!Po("id",e,i.existing));)r++;i?(i.newOption=e,i.brandNew=n):t.push({newOption:e,brandNew:n,existing:null,keyInfo:null}),r++}}))}(u,e,r):o&&function(t,e){E(e,(function(e){t.push({newOption:e,brandNew:!0,existing:null,keyInfo:null})}))}(u,e),s=u,l=yt(),E(s,(function(t){var e=t.existing;e&&l.set(e.id,t)})),E(s,(function(t){var e=t.newOption;lt(!e||null==e.id||!l.get(e.id)||l.get(e.id)===t,"id duplicates: "+(e&&e.id)),e&&null!=e.id&&l.set(e.id,t),!t.keyInfo&&(t.keyInfo={})})),E(s,(function(t,e){var n=t.existing,i=t.newOption,r=t.keyInfo;if(q(i)){if(r.name=null!=i.name?Oo(i.name):n?n.name:Mo+e,n)r.id=Oo(n.id);else if(null!=i.id)r.id=Oo(i.id);else{var o=0;do{r.id="\0"+r.name+"\0"+o++}while(l.get(r.id))}l.set(r.id,t)}})),u}function Po(t,e,n){var i=Ro(e[t],null),r=Ro(n[t],null);return null!=i&&null!=r&&i===r}function Oo(t){return Ro(t,"")}function Ro(t,e){return null==t?e:U(t)?t:j(t)||Z(t)?t+"":e}function No(t){var e=t.name;return!(!e||!e.indexOf(Mo))}function Eo(t){return t&&null!=t.id&&0===Oo(t.id).indexOf(Io)}function zo(t,e){return null!=e.dataIndexInside?e.dataIndexInside:null!=e.dataIndex?Y(e.dataIndex)?z(e.dataIndex,(function(e){return t.indexOfRawIndex(e)})):t.indexOfRawIndex(e.dataIndex):null!=e.name?Y(e.name)?z(e.name,(function(e){return t.indexOfName(e)})):t.indexOfName(e.name):void 0}function Vo(){var t="__ec_inner_"+Bo++;return function(e){return e[t]||(e[t]={})}}var Bo=mo();function Fo(t,e,n){var i=Go(e,n),r=i.mainTypeSpecified,o=i.queryOptionMap,a=i.others,s=n?n.defaultMainType:null;return!r&&s&&o.set(s,{}),o.each((function(e,i){var r=Yo(t,i,e,{useDefault:s===i,enableAll:!n||null==n.enableAll||n.enableAll,enableNone:!n||null==n.enableNone||n.enableNone});a[i+"Models"]=r.models,a[i+"Model"]=r.models[0]})),a}function Go(t,e){var n;if(U(t)){var i={};i[t+"Index"]=0,n=i}else n=t;var r=yt(),o={},a=!1;return E(n,(function(t,n){if("dataIndex"!==n&&"dataIndexInside"!==n){var i=n.match(/^(\w+)(Index|Id|Name)$/)||[],s=i[1],l=(i[2]||"").toLowerCase();if(s&&l&&!(e&&e.includeMainTypes&&P(e.includeMainTypes,s)<0))a=a||!!s,(r.get(s)||r.set(s,{}))[l]=t}else o[n]=t})),{mainTypeSpecified:a,queryOptionMap:r,others:o}}var Wo={useDefault:!0,enableAll:!1,enableNone:!1},Ho={useDefault:!1,enableAll:!0,enableNone:!0};function Yo(t,e,n,i){i=i||Wo;var r=n.index,o=n.id,a=n.name,s={models:null,specified:null!=r||null!=o||null!=a};if(!s.specified){var l=void 0;return s.models=i.useDefault&&(l=t.getComponent(e))?[l]:[],s}return"none"===r||!1===r?(lt(i.enableNone,'`"none"` or `false` is not a valid value on index option.'),s.models=[],s):("all"===r&&(lt(i.enableAll,'`"all"` is not a valid value on index option.'),r=o=a=null),s.models=t.queryComponents({mainType:e,index:r,id:o,name:a}),s)}function Xo(t,e,n){t.setAttribute?t.setAttribute(e,n):t[e]=n}function Uo(t,e){var n=yt(),i=[];return E(t,(function(t){var r=e(t);(n.get(r)||(i.push(r),n.set(r,[]))).push(t)})),{keys:i,buckets:n}}function Zo(t,e,n,i,r){var o=null==e||"auto"===e;if(null==i)return i;if(j(i))return Jr(f=So(n||0,i,r),o?Math.max(to(n||0),to(i)):e);if(U(i))return r<1?n:i;for(var a=[],s=n,l=i,u=Math.max(s?s.length:0,l.length),h=0;h<u;++h){var c=t.getDimensionInfo(h);if(c&&"ordinal"===c.type)a[h]=(r<1&&s?s:l)[h];else{var p=s&&s[h]?s[h]:0,d=l[h],f=So(p,d,r);a[h]=Jr(f,o?Math.max(to(p),to(d)):e)}}return a}var jo="___EC__COMPONENT__CONTAINER___",qo="___EC__EXTENDED_CLASS___";function Ko(t){var e={main:"",sub:""};if(t){var n=t.split(".");e.main=n[0]||"",e.sub=n[1]||""}return e}function $o(t,e){t.$constructor=t,t.extend=function(t){var e,i,r=this;return X(i=r)&&/^class\s/.test(Function.prototype.toString.call(i))?e=function(t){function e(){return t.apply(this,arguments)||this}return n(e,t),e}(r):(e=function(){(t.$constructor||r).apply(this,arguments)},O(e,this)),A(e.prototype,t),e[qo]=!0,e.extend=this.extend,e.superCall=ta,e.superApply=ea,e.superClass=r,e}}function Jo(t,e){t.extend=e.extend}var Qo=Math.round(10*Math.random());function ta(t,e){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];return this.superClass.prototype[e].apply(t,n)}function ea(t,e,n){return this.superClass.prototype[e].apply(t,n)}function na(t){var e={};t.registerClass=function(t){var n,i=t.type||t.prototype.type;if(i){lt(/^[a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)?$/.test(n=i),'componentType "'+n+'" illegal'),t.prototype.type=i;var r=Ko(i);if(r.sub){if(r.sub!==jo){var o=function(t){var n=e[t.main];n&&n[jo]||((n=e[t.main]={})[jo]=!0);return n}(r);o[r.sub]=t}}else e[r.main]=t}return t},t.getClass=function(t,n,i){var r=e[t];if(r&&r[jo]&&(r=n?r[n]:null),i&&!r)throw new Error(n?"Component "+t+"."+(n||"")+" is used but not imported.":t+".type should be specified.");return r},t.getClassesByMainType=function(t){var n=Ko(t),i=[],r=e[n.main];return r&&r[jo]?E(r,(function(t,e){e!==jo&&i.push(t)})):i.push(r),i},t.hasClass=function(t){var n=Ko(t);return!!e[n.main]},t.getAllClassMainTypes=function(){var t=[];return E(e,(function(e,n){t.push(n)})),t},t.hasSubTypes=function(t){var n=Ko(t),i=e[n.main];return i&&i[jo]}}function ia(t,e){for(var n=0;n<t.length;n++)t[n][1]||(t[n][1]=t[n][0]);return e=e||!1,function(n,i,r){for(var o={},a=0;a<t.length;a++){var s=t[a][1];if(!(i&&P(i,s)>=0||r&&P(r,s)<0)){var l=n.getShallow(s,e);null!=l&&(o[t[a][0]]=l)}}return o}}var ra=ia([["fill","color"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["opacity"],["shadowColor"]]),oa=function(){function t(){}return t.prototype.getAreaStyle=function(t,e){return ra(this,t,e)},t}(),aa=new En(50);function sa(t){if("string"==typeof t){var e=aa.get(t);return e&&e.image}return t}function la(t,e,n,i,r){if(t){if("string"==typeof t){if(e&&e.__zrImageSrc===t||!n)return e;var o=aa.get(t),a={hostEl:n,cb:i,cbPayload:r};return o?!ha(e=o.image)&&o.pending.push(a):((e=h.loadImage(t,ua,ua)).__zrImageSrc=t,aa.put(t,e.__cachedImgObj={image:e,pending:[a]})),e}return t}return e}function ua(){var t=this.__cachedImgObj;this.onload=this.onerror=this.__cachedImgObj=null;for(var e=0;e<t.pending.length;e++){var n=t.pending[e],i=n.cb;i&&i(this,n.cbPayload),n.hostEl.dirty()}t.pending.length=0}function ha(t){return t&&t.width&&t.height}var ca=/\{([a-zA-Z0-9_]+)\|([^}]*)\}/g;function pa(t,e,n,i,r){if(!e)return"";var o=(t+"").split("\n");r=da(e,n,i,r);for(var a=0,s=o.length;a<s;a++)o[a]=fa(o[a],r);return o.join("\n")}function da(t,e,n,i){var r=A({},i=i||{});r.font=e,n=rt(n,"..."),r.maxIterations=rt(i.maxIterations,2);var o=r.minChar=rt(i.minChar,0);r.cnCharWidth=br("国",e);var a=r.ascCharWidth=br("a",e);r.placeholder=rt(i.placeholder,"");for(var s=t=Math.max(0,t-1),l=0;l<o&&s>=a;l++)s-=a;var u=br(n,e);return u>s&&(n="",u=0),s=t-u,r.ellipsis=n,r.ellipsisWidth=u,r.contentWidth=s,r.containerWidth=t,r}function fa(t,e){var n=e.containerWidth,i=e.font,r=e.contentWidth;if(!n)return"";var o=br(t,i);if(o<=n)return t;for(var a=0;;a++){if(o<=r||a>=e.maxIterations){t+=e.ellipsis;break}var s=0===a?ga(t,r,e.ascCharWidth,e.cnCharWidth):o>0?Math.floor(t.length*r/o):0;o=br(t=t.substr(0,s),i)}return""===t&&(t=e.placeholder),t}function ga(t,e,n,i){for(var r=0,o=0,a=t.length;o<a&&r<e;o++){var s=t.charCodeAt(o);r+=0<=s&&s<=127?n:i}return o}var ya=function(){},va=function(t){this.tokens=[],t&&(this.tokens=t)},ma=function(){this.width=0,this.height=0,this.contentWidth=0,this.contentHeight=0,this.outerWidth=0,this.outerHeight=0,this.lines=[]};function xa(t,e,n,i,r){var o,a,s=""===e,l=r&&n.rich[r]||{},u=t.lines,h=l.font||n.font,c=!1;if(i){var p=l.padding,d=p?p[1]+p[3]:0;if(null!=l.width&&"auto"!==l.width){var f=Cr(l.width,i.width)+d;u.length>0&&f+i.accumWidth>i.width&&(o=e.split("\n"),c=!0),i.accumWidth=f}else{var g=wa(e,h,i.width,i.breakAll,i.accumWidth);i.accumWidth=g.accumWidth+d,a=g.linesWidths,o=g.lines}}else o=e.split("\n");for(var y=0;y<o.length;y++){var v=o[y],m=new ya;if(m.styleName=r,m.text=v,m.isLineHolder=!v&&!s,"number"==typeof l.width?m.width=l.width:m.width=a?a[y]:br(v,h),y||c)u.push(new va([m]));else{var x=(u[u.length-1]||(u[0]=new va)).tokens,_=x.length;1===_&&x[0].isLineHolder?x[0]=m:(v||!_||s)&&x.push(m)}}}var _a=V(",&?/;] ".split(""),(function(t,e){return t[e]=!0,t}),{});function ba(t){return!function(t){var e=t.charCodeAt(0);return e>=32&&e<=591||e>=880&&e<=4351||e>=4608&&e<=5119||e>=7680&&e<=8303}(t)||!!_a[t]}function wa(t,e,n,i,r){for(var o=[],a=[],s="",l="",u=0,h=0,c=0;c<t.length;c++){var p=t.charAt(c);if("\n"!==p){var d=br(p,e),f=!i&&!ba(p);(o.length?h+d>n:r+h+d>n)?h?(s||l)&&(f?(s||(s=l,l="",h=u=0),o.push(s),a.push(h-u),l+=p,s="",h=u+=d):(l&&(s+=l,l="",u=0),o.push(s),a.push(h),s=p,h=d)):f?(o.push(l),a.push(u),l=p,u=d):(o.push(p),a.push(d)):(h+=d,f?(l+=p,u+=d):(l&&(s+=l,l="",u=0),s+=p))}else l&&(s+=l,h+=u),o.push(s),a.push(h),s="",l="",u=0,h=0}return o.length||s||(s=t,l="",u=0),l&&(s+=l),s&&(o.push(s),a.push(h)),1===o.length&&(h+=r),{accumWidth:h,lines:o,linesWidths:a}}var Sa="__zr_style_"+Math.round(10*Math.random()),Ma={shadowBlur:0,shadowOffsetX:0,shadowOffsetY:0,shadowColor:"#000",opacity:1,blend:"source-over"},Ia={style:{shadowBlur:!0,shadowOffsetX:!0,shadowOffsetY:!0,shadowColor:!0,opacity:!0}};Ma[Sa]=!0;var Ta=["z","z2","invisible"],Ca=["invisible"],Da=function(t){function e(e){return t.call(this,e)||this}var i;return n(e,t),e.prototype._init=function(e){for(var n=G(e),i=0;i<n.length;i++){var r=n[i];"style"===r?this.useStyle(e[r]):t.prototype.attrKV.call(this,r,e[r])}this.style||this.useStyle({})},e.prototype.beforeBrush=function(){},e.prototype.afterBrush=function(){},e.prototype.innerBeforeBrush=function(){},e.prototype.innerAfterBrush=function(){},e.prototype.shouldBePainted=function(t,e,n,i){var r=this.transform;if(this.ignore||this.invisible||0===this.style.opacity||this.culling&&function(t,e,n){Aa.copy(t.getBoundingRect()),t.transform&&Aa.applyTransform(t.transform);return ka.width=e,ka.height=n,!Aa.intersect(ka)}(this,t,e)||r&&!r[0]&&!r[3])return!1;if(n&&this.__clipPaths)for(var o=0;o<this.__clipPaths.length;++o)if(this.__clipPaths[o].isZeroArea())return!1;if(i&&this.parent)for(var a=this.parent;a;){if(a.ignore)return!1;a=a.parent}return!0},e.prototype.contain=function(t,e){return this.rectContain(t,e)},e.prototype.traverse=function(t,e){t.call(e,this)},e.prototype.rectContain=function(t,e){var n=this.transformCoordToLocal(t,e);return this.getBoundingRect().contain(n[0],n[1])},e.prototype.getPaintRect=function(){var t=this._paintRect;if(!this._paintRect||this.__dirty){var e=this.transform,n=this.getBoundingRect(),i=this.style,r=i.shadowBlur||0,o=i.shadowOffsetX||0,a=i.shadowOffsetY||0;t=this._paintRect||(this._paintRect=new ze(0,0,0,0)),e?ze.applyTransform(t,n,e):t.copy(n),(r||o||a)&&(t.width+=2*r+Math.abs(o),t.height+=2*r+Math.abs(a),t.x=Math.min(t.x,t.x+o-r),t.y=Math.min(t.y,t.y+a-r));var s=this.dirtyRectTolerance;t.isZero()||(t.x=Math.floor(t.x-s),t.y=Math.floor(t.y-s),t.width=Math.ceil(t.width+1+2*s),t.height=Math.ceil(t.height+1+2*s))}return t},e.prototype.setPrevPaintRect=function(t){t?(this._prevPaintRect=this._prevPaintRect||new ze(0,0,0,0),this._prevPaintRect.copy(t)):this._prevPaintRect=null},e.prototype.getPrevPaintRect=function(){return this._prevPaintRect},e.prototype.animateStyle=function(t){return this.animate("style",t)},e.prototype.updateDuringAnimation=function(t){"style"===t?this.dirtyStyle():this.markRedraw()},e.prototype.attrKV=function(e,n){"style"!==e?t.prototype.attrKV.call(this,e,n):this.style?this.setStyle(n):this.useStyle(n)},e.prototype.setStyle=function(t,e){return"string"==typeof t?this.style[t]=e:A(this.style,t),this.dirtyStyle(),this},e.prototype.dirtyStyle=function(t){t||this.markRedraw(),this.__dirty|=2,this._rect&&(this._rect=null)},e.prototype.dirty=function(){this.dirtyStyle()},e.prototype.styleChanged=function(){return!!(2&this.__dirty)},e.prototype.styleUpdated=function(){this.__dirty&=-3},e.prototype.createStyle=function(t){return mt(Ma,t)},e.prototype.useStyle=function(t){t[Sa]||(t=this.createStyle(t)),this.__inHover?this.__hoverStyle=t:this.style=t,this.dirtyStyle()},e.prototype.isStyleObject=function(t){return t[Sa]},e.prototype._innerSaveToNormal=function(e){t.prototype._innerSaveToNormal.call(this,e);var n=this._normalState;e.style&&!n.style&&(n.style=this._mergeStyle(this.createStyle(),this.style)),this._savePrimaryToNormal(e,n,Ta)},e.prototype._applyStateObj=function(e,n,i,r,o,a){t.prototype._applyStateObj.call(this,e,n,i,r,o,a);var s,l=!(n&&r);if(n&&n.style?o?r?s=n.style:(s=this._mergeStyle(this.createStyle(),i.style),this._mergeStyle(s,n.style)):(s=this._mergeStyle(this.createStyle(),r?this.style:i.style),this._mergeStyle(s,n.style)):l&&(s=i.style),s)if(o){var u=this.style;if(this.style=this.createStyle(l?{}:u),l)for(var h=G(u),c=0;c<h.length;c++){(d=h[c])in s&&(s[d]=s[d],this.style[d]=u[d])}var p=G(s);for(c=0;c<p.length;c++){var d=p[c];this.style[d]=this.style[d]}this._transitionState(e,{style:s},a,this.getAnimationStyleProps())}else this.useStyle(s);var f=this.__inHover?Ca:Ta;for(c=0;c<f.length;c++){d=f[c];n&&null!=n[d]?this[d]=n[d]:l&&null!=i[d]&&(this[d]=i[d])}},e.prototype._mergeStates=function(e){for(var n,i=t.prototype._mergeStates.call(this,e),r=0;r<e.length;r++){var o=e[r];o.style&&(n=n||{},this._mergeStyle(n,o.style))}return n&&(i.style=n),i},e.prototype._mergeStyle=function(t,e){return A(t,e),t},e.prototype.getAnimationStyleProps=function(){return Ia},e.initDefaultProps=((i=e.prototype).type="displayable",i.invisible=!1,i.z=0,i.z2=0,i.zlevel=0,i.culling=!1,i.cursor="pointer",i.rectHover=!1,i.incremental=!1,i._rect=null,i.dirtyRectTolerance=0,void(i.__dirty=3)),e}(Rr),Aa=new ze(0,0,0,0),ka=new ze(0,0,0,0);var La=Math.min,Pa=Math.max,Oa=Math.sin,Ra=Math.cos,Na=2*Math.PI,Ea=Mt(),za=Mt(),Va=Mt();function Ba(t,e,n){if(0!==t.length){for(var i=t[0],r=i[0],o=i[0],a=i[1],s=i[1],l=1;l<t.length;l++)i=t[l],r=La(r,i[0]),o=Pa(o,i[0]),a=La(a,i[1]),s=Pa(s,i[1]);e[0]=r,e[1]=a,n[0]=o,n[1]=s}}function Fa(t,e,n,i,r,o){r[0]=La(t,n),r[1]=La(e,i),o[0]=Pa(t,n),o[1]=Pa(e,i)}var Ga=[],Wa=[];function Ha(t,e,n,i,r,o,a,s,l,u){var h=bn,c=mn,p=h(t,n,r,a,Ga);l[0]=1/0,l[1]=1/0,u[0]=-1/0,u[1]=-1/0;for(var d=0;d<p;d++){var f=c(t,n,r,a,Ga[d]);l[0]=La(f,l[0]),u[0]=Pa(f,u[0])}p=h(e,i,o,s,Wa);for(d=0;d<p;d++){var g=c(e,i,o,s,Wa[d]);l[1]=La(g,l[1]),u[1]=Pa(g,u[1])}l[0]=La(t,l[0]),u[0]=Pa(t,u[0]),l[0]=La(a,l[0]),u[0]=Pa(a,u[0]),l[1]=La(e,l[1]),u[1]=Pa(e,u[1]),l[1]=La(s,l[1]),u[1]=Pa(s,u[1])}function Ya(t,e,n,i,r,o,a,s){var l=Cn,u=In,h=Pa(La(l(t,n,r),1),0),c=Pa(La(l(e,i,o),1),0),p=u(t,n,r,h),d=u(e,i,o,c);a[0]=La(t,r,p),a[1]=La(e,o,d),s[0]=Pa(t,r,p),s[1]=Pa(e,o,d)}function Xa(t,e,n,i,r,o,a,s,l){var u=Ht,h=Yt,c=Math.abs(r-o);if(c%Na<1e-4&&c>1e-4)return s[0]=t-n,s[1]=e-i,l[0]=t+n,void(l[1]=e+i);if(Ea[0]=Ra(r)*n+t,Ea[1]=Oa(r)*i+e,za[0]=Ra(o)*n+t,za[1]=Oa(o)*i+e,u(s,Ea,za),h(l,Ea,za),(r%=Na)<0&&(r+=Na),(o%=Na)<0&&(o+=Na),r>o&&!a?o+=Na:r<o&&a&&(r+=Na),a){var p=o;o=r,r=p}for(var d=0;d<o;d+=Math.PI/2)d>r&&(Va[0]=Ra(d)*n+t,Va[1]=Oa(d)*i+e,u(s,Va,s),h(l,Va,l))}var Ua={M:1,L:2,C:3,Q:4,A:5,Z:6,R:7},Za=[],ja=[],qa=[],Ka=[],$a=[],Ja=[],Qa=Math.min,ts=Math.max,es=Math.cos,ns=Math.sin,is=Math.abs,rs=Math.PI,os=2*rs,as="undefined"!=typeof Float32Array,ss=[];function ls(t){return Math.round(t/rs*1e8)/1e8%2*rs}function us(t,e){var n=ls(t[0]);n<0&&(n+=os);var i=n-t[0],r=t[1];r+=i,!e&&r-n>=os?r=n+os:e&&n-r>=os?r=n-os:!e&&n>r?r=n+(os-ls(n-r)):e&&n<r&&(r=n-(os-ls(r-n))),t[0]=n,t[1]=r}var hs=function(){function t(t){this.dpr=1,this._xi=0,this._yi=0,this._x0=0,this._y0=0,this._len=0,t&&(this._saveData=!1),this._saveData&&(this.data=[])}return t.prototype.increaseVersion=function(){this._version++},t.prototype.getVersion=function(){return this._version},t.prototype.setScale=function(t,e,n){(n=n||0)>0&&(this._ux=is(n/sr/t)||0,this._uy=is(n/sr/e)||0)},t.prototype.setDPR=function(t){this.dpr=t},t.prototype.setContext=function(t){this._ctx=t},t.prototype.getContext=function(){return this._ctx},t.prototype.beginPath=function(){return this._ctx&&this._ctx.beginPath(),this.reset(),this},t.prototype.reset=function(){this._saveData&&(this._len=0),this._pathSegLen&&(this._pathSegLen=null,this._pathLen=0),this._version++},t.prototype.moveTo=function(t,e){return this._drawPendingPt(),this.addData(Ua.M,t,e),this._ctx&&this._ctx.moveTo(t,e),this._x0=t,this._y0=e,this._xi=t,this._yi=e,this},t.prototype.lineTo=function(t,e){var n=is(t-this._xi),i=is(e-this._yi),r=n>this._ux||i>this._uy;if(this.addData(Ua.L,t,e),this._ctx&&r&&this._ctx.lineTo(t,e),r)this._xi=t,this._yi=e,this._pendingPtDist=0;else{var o=n*n+i*i;o>this._pendingPtDist&&(this._pendingPtX=t,this._pendingPtY=e,this._pendingPtDist=o)}return this},t.prototype.bezierCurveTo=function(t,e,n,i,r,o){return this._drawPendingPt(),this.addData(Ua.C,t,e,n,i,r,o),this._ctx&&this._ctx.bezierCurveTo(t,e,n,i,r,o),this._xi=r,this._yi=o,this},t.prototype.quadraticCurveTo=function(t,e,n,i){return this._drawPendingPt(),this.addData(Ua.Q,t,e,n,i),this._ctx&&this._ctx.quadraticCurveTo(t,e,n,i),this._xi=n,this._yi=i,this},t.prototype.arc=function(t,e,n,i,r,o){this._drawPendingPt(),ss[0]=i,ss[1]=r,us(ss,o),i=ss[0];var a=(r=ss[1])-i;return this.addData(Ua.A,t,e,n,n,i,a,0,o?0:1),this._ctx&&this._ctx.arc(t,e,n,i,r,o),this._xi=es(r)*n+t,this._yi=ns(r)*n+e,this},t.prototype.arcTo=function(t,e,n,i,r){return this._drawPendingPt(),this._ctx&&this._ctx.arcTo(t,e,n,i,r),this},t.prototype.rect=function(t,e,n,i){return this._drawPendingPt(),this._ctx&&this._ctx.rect(t,e,n,i),this.addData(Ua.R,t,e,n,i),this},t.prototype.closePath=function(){this._drawPendingPt(),this.addData(Ua.Z);var t=this._ctx,e=this._x0,n=this._y0;return t&&t.closePath(),this._xi=e,this._yi=n,this},t.prototype.fill=function(t){t&&t.fill(),this.toStatic()},t.prototype.stroke=function(t){t&&t.stroke(),this.toStatic()},t.prototype.len=function(){return this._len},t.prototype.setData=function(t){var e=t.length;this.data&&this.data.length===e||!as||(this.data=new Float32Array(e));for(var n=0;n<e;n++)this.data[n]=t[n];this._len=e},t.prototype.appendPath=function(t){t instanceof Array||(t=[t]);for(var e=t.length,n=0,i=this._len,r=0;r<e;r++)n+=t[r].len();as&&this.data instanceof Float32Array&&(this.data=new Float32Array(i+n));for(r=0;r<e;r++)for(var o=t[r].data,a=0;a<o.length;a++)this.data[i++]=o[a];this._len=i},t.prototype.addData=function(t,e,n,i,r,o,a,s,l){if(this._saveData){var u=this.data;this._len+arguments.length>u.length&&(this._expandData(),u=this.data);for(var h=0;h<arguments.length;h++)u[this._len++]=arguments[h]}},t.prototype._drawPendingPt=function(){this._pendingPtDist>0&&(this._ctx&&this._ctx.lineTo(this._pendingPtX,this._pendingPtY),this._pendingPtDist=0)},t.prototype._expandData=function(){if(!(this.data instanceof Array)){for(var t=[],e=0;e<this._len;e++)t[e]=this.data[e];this.data=t}},t.prototype.toStatic=function(){if(this._saveData){this._drawPendingPt();var t=this.data;t instanceof Array&&(t.length=this._len,as&&this._len>11&&(this.data=new Float32Array(t)))}},t.prototype.getBoundingRect=function(){qa[0]=qa[1]=$a[0]=$a[1]=Number.MAX_VALUE,Ka[0]=Ka[1]=Ja[0]=Ja[1]=-Number.MAX_VALUE;var t,e=this.data,n=0,i=0,r=0,o=0;for(t=0;t<this._len;){var a=e[t++],s=1===t;switch(s&&(r=n=e[t],o=i=e[t+1]),a){case Ua.M:n=r=e[t++],i=o=e[t++],$a[0]=r,$a[1]=o,Ja[0]=r,Ja[1]=o;break;case Ua.L:Fa(n,i,e[t],e[t+1],$a,Ja),n=e[t++],i=e[t++];break;case Ua.C:Ha(n,i,e[t++],e[t++],e[t++],e[t++],e[t],e[t+1],$a,Ja),n=e[t++],i=e[t++];break;case Ua.Q:Ya(n,i,e[t++],e[t++],e[t],e[t+1],$a,Ja),n=e[t++],i=e[t++];break;case Ua.A:var l=e[t++],u=e[t++],h=e[t++],c=e[t++],p=e[t++],d=e[t++]+p;t+=1;var f=!e[t++];s&&(r=es(p)*h+l,o=ns(p)*c+u),Xa(l,u,h,c,p,d,f,$a,Ja),n=es(d)*h+l,i=ns(d)*c+u;break;case Ua.R:Fa(r=n=e[t++],o=i=e[t++],r+e[t++],o+e[t++],$a,Ja);break;case Ua.Z:n=r,i=o}Ht(qa,qa,$a),Yt(Ka,Ka,Ja)}return 0===t&&(qa[0]=qa[1]=Ka[0]=Ka[1]=0),new ze(qa[0],qa[1],Ka[0]-qa[0],Ka[1]-qa[1])},t.prototype._calculateLength=function(){var t=this.data,e=this._len,n=this._ux,i=this._uy,r=0,o=0,a=0,s=0;this._pathSegLen||(this._pathSegLen=[]);for(var l=this._pathSegLen,u=0,h=0,c=0;c<e;){var p=t[c++],d=1===c;d&&(a=r=t[c],s=o=t[c+1]);var f=-1;switch(p){case Ua.M:r=a=t[c++],o=s=t[c++];break;case Ua.L:var g=t[c++],y=(x=t[c++])-o;(is(A=g-r)>n||is(y)>i||c===e-1)&&(f=Math.sqrt(A*A+y*y),r=g,o=x);break;case Ua.C:var v=t[c++],m=t[c++],x=(g=t[c++],t[c++]),_=t[c++],b=t[c++];f=Mn(r,o,v,m,g,x,_,b,10),r=_,o=b;break;case Ua.Q:f=kn(r,o,v=t[c++],m=t[c++],g=t[c++],x=t[c++],10),r=g,o=x;break;case Ua.A:var w=t[c++],S=t[c++],M=t[c++],I=t[c++],T=t[c++],C=t[c++],D=C+T;c+=1,d&&(a=es(T)*M+w,s=ns(T)*I+S),f=ts(M,I)*Qa(os,Math.abs(C)),r=es(D)*M+w,o=ns(D)*I+S;break;case Ua.R:a=r=t[c++],s=o=t[c++],f=2*t[c++]+2*t[c++];break;case Ua.Z:var A=a-r;y=s-o;f=Math.sqrt(A*A+y*y),r=a,o=s}f>=0&&(l[h++]=f,u+=f)}return this._pathLen=u,u},t.prototype.rebuildPath=function(t,e){var n,i,r,o,a,s,l,u,h,c,p=this.data,d=this._ux,f=this._uy,g=this._len,y=e<1,v=0,m=0,x=0;if(!y||(this._pathSegLen||this._calculateLength(),l=this._pathSegLen,u=e*this._pathLen))t:for(var _=0;_<g;){var b=p[_++],w=1===_;switch(w&&(n=r=p[_],i=o=p[_+1]),b!==Ua.L&&x>0&&(t.lineTo(h,c),x=0),b){case Ua.M:n=r=p[_++],i=o=p[_++],t.moveTo(r,o);break;case Ua.L:a=p[_++],s=p[_++];var S=is(a-r),M=is(s-o);if(S>d||M>f){if(y){if(v+(j=l[m++])>u){var I=(u-v)/j;t.lineTo(r*(1-I)+a*I,o*(1-I)+s*I);break t}v+=j}t.lineTo(a,s),r=a,o=s,x=0}else{var T=S*S+M*M;T>x&&(h=a,c=s,x=T)}break;case Ua.C:var C=p[_++],D=p[_++],A=p[_++],k=p[_++],L=p[_++],P=p[_++];if(y){if(v+(j=l[m++])>u){wn(r,C,A,L,I=(u-v)/j,Za),wn(o,D,k,P,I,ja),t.bezierCurveTo(Za[1],ja[1],Za[2],ja[2],Za[3],ja[3]);break t}v+=j}t.bezierCurveTo(C,D,A,k,L,P),r=L,o=P;break;case Ua.Q:C=p[_++],D=p[_++],A=p[_++],k=p[_++];if(y){if(v+(j=l[m++])>u){Dn(r,C,A,I=(u-v)/j,Za),Dn(o,D,k,I,ja),t.quadraticCurveTo(Za[1],ja[1],Za[2],ja[2]);break t}v+=j}t.quadraticCurveTo(C,D,A,k),r=A,o=k;break;case Ua.A:var O=p[_++],R=p[_++],N=p[_++],E=p[_++],z=p[_++],V=p[_++],B=p[_++],F=!p[_++],G=N>E?N:E,W=is(N-E)>.001,H=z+V,Y=!1;if(y)v+(j=l[m++])>u&&(H=z+V*(u-v)/j,Y=!0),v+=j;if(W&&t.ellipse?t.ellipse(O,R,N,E,B,z,H,F):t.arc(O,R,G,z,H,F),Y)break t;w&&(n=es(z)*N+O,i=ns(z)*E+R),r=es(H)*N+O,o=ns(H)*E+R;break;case Ua.R:n=r=p[_],i=o=p[_+1],a=p[_++],s=p[_++];var X=p[_++],U=p[_++];if(y){if(v+(j=l[m++])>u){var Z=u-v;t.moveTo(a,s),t.lineTo(a+Qa(Z,X),s),(Z-=X)>0&&t.lineTo(a+X,s+Qa(Z,U)),(Z-=U)>0&&t.lineTo(a+ts(X-Z,0),s+U),(Z-=X)>0&&t.lineTo(a,s+ts(U-Z,0));break t}v+=j}t.rect(a,s,X,U);break;case Ua.Z:if(y){var j;if(v+(j=l[m++])>u){I=(u-v)/j;t.lineTo(r*(1-I)+n*I,o*(1-I)+i*I);break t}v+=j}t.closePath(),r=n,o=i}}},t.prototype.clone=function(){var e=new t,n=this.data;return e.data=n.slice?n.slice():Array.prototype.slice.call(n),e._len=this._len,e},t.CMD=Ua,t.initDefaultProps=function(){var e=t.prototype;e._saveData=!0,e._ux=0,e._uy=0,e._pendingPtDist=0,e._version=0}(),t}();function cs(t,e,n,i,r,o,a){if(0===r)return!1;var s=r,l=0;if(a>e+s&&a>i+s||a<e-s&&a<i-s||o>t+s&&o>n+s||o<t-s&&o<n-s)return!1;if(t===n)return Math.abs(o-t)<=s/2;var u=(l=(e-i)/(t-n))*o-a+(t*i-n*e)/(t-n);return u*u/(l*l+1)<=s/2*s/2}function ps(t,e,n,i,r,o,a,s,l,u,h){if(0===l)return!1;var c=l;return!(h>e+c&&h>i+c&&h>o+c&&h>s+c||h<e-c&&h<i-c&&h<o-c&&h<s-c||u>t+c&&u>n+c&&u>r+c&&u>a+c||u<t-c&&u<n-c&&u<r-c&&u<a-c)&&Sn(t,e,n,i,r,o,a,s,u,h,null)<=c/2}function ds(t,e,n,i,r,o,a,s,l){if(0===a)return!1;var u=a;return!(l>e+u&&l>i+u&&l>o+u||l<e-u&&l<i-u&&l<o-u||s>t+u&&s>n+u&&s>r+u||s<t-u&&s<n-u&&s<r-u)&&An(t,e,n,i,r,o,s,l,null)<=u/2}var fs=2*Math.PI;function gs(t){return(t%=fs)<0&&(t+=fs),t}var ys=2*Math.PI;function vs(t,e,n,i,r,o,a,s,l){if(0===a)return!1;var u=a;s-=t,l-=e;var h=Math.sqrt(s*s+l*l);if(h-u>n||h+u<n)return!1;if(Math.abs(i-r)%ys<1e-4)return!0;if(o){var c=i;i=gs(r),r=gs(c)}else i=gs(i),r=gs(r);i>r&&(r+=ys);var p=Math.atan2(l,s);return p<0&&(p+=ys),p>=i&&p<=r||p+ys>=i&&p+ys<=r}function ms(t,e,n,i,r,o){if(o>e&&o>i||o<e&&o<i)return 0;if(i===e)return 0;var a=(o-e)/(i-e),s=i<e?1:-1;1!==a&&0!==a||(s=i<e?.5:-.5);var l=a*(n-t)+t;return l===r?1/0:l>r?s:0}var xs=hs.CMD,_s=2*Math.PI;var bs=[-1,-1,-1],ws=[-1,-1];function Ss(t,e,n,i,r,o,a,s,l,u){if(u>e&&u>i&&u>o&&u>s||u<e&&u<i&&u<o&&u<s)return 0;var h,c=_n(e,i,o,s,u,bs);if(0===c)return 0;for(var p=0,d=-1,f=void 0,g=void 0,y=0;y<c;y++){var v=bs[y],m=0===v||1===v?.5:1;mn(t,n,r,a,v)<l||(d<0&&(d=bn(e,i,o,s,ws),ws[1]<ws[0]&&d>1&&(h=void 0,h=ws[0],ws[0]=ws[1],ws[1]=h),f=mn(e,i,o,s,ws[0]),d>1&&(g=mn(e,i,o,s,ws[1]))),2===d?v<ws[0]?p+=f<e?m:-m:v<ws[1]?p+=g<f?m:-m:p+=s<g?m:-m:v<ws[0]?p+=f<e?m:-m:p+=s<f?m:-m)}return p}function Ms(t,e,n,i,r,o,a,s){if(s>e&&s>i&&s>o||s<e&&s<i&&s<o)return 0;var l=function(t,e,n,i,r){var o=t-2*e+n,a=2*(e-t),s=t-i,l=0;if(yn(o))vn(a)&&(h=-s/a)>=0&&h<=1&&(r[l++]=h);else{var u=a*a-4*o*s;if(yn(u))(h=-a/(2*o))>=0&&h<=1&&(r[l++]=h);else if(u>0){var h,c=ln(u),p=(-a-c)/(2*o);(h=(-a+c)/(2*o))>=0&&h<=1&&(r[l++]=h),p>=0&&p<=1&&(r[l++]=p)}}return l}(e,i,o,s,bs);if(0===l)return 0;var u=Cn(e,i,o);if(u>=0&&u<=1){for(var h=0,c=In(e,i,o,u),p=0;p<l;p++){var d=0===bs[p]||1===bs[p]?.5:1;In(t,n,r,bs[p])<a||(bs[p]<u?h+=c<e?d:-d:h+=o<c?d:-d)}return h}d=0===bs[0]||1===bs[0]?.5:1;return In(t,n,r,bs[0])<a?0:o<e?d:-d}function Is(t,e,n,i,r,o,a,s){if((s-=e)>n||s<-n)return 0;var l=Math.sqrt(n*n-s*s);bs[0]=-l,bs[1]=l;var u=Math.abs(i-r);if(u<1e-4)return 0;if(u>=_s-1e-4){i=0,r=_s;var h=o?1:-1;return a>=bs[0]+t&&a<=bs[1]+t?h:0}if(i>r){var c=i;i=r,r=c}i<0&&(i+=_s,r+=_s);for(var p=0,d=0;d<2;d++){var f=bs[d];if(f+t>a){var g=Math.atan2(s,f);h=o?1:-1;g<0&&(g=_s+g),(g>=i&&g<=r||g+_s>=i&&g+_s<=r)&&(g>Math.PI/2&&g<1.5*Math.PI&&(h=-h),p+=h)}}return p}function Ts(t,e,n,i,r){for(var o,a,s,l,u=t.data,h=t.len(),c=0,p=0,d=0,f=0,g=0,y=0;y<h;){var v=u[y++],m=1===y;switch(v===xs.M&&y>1&&(n||(c+=ms(p,d,f,g,i,r))),m&&(f=p=u[y],g=d=u[y+1]),v){case xs.M:p=f=u[y++],d=g=u[y++];break;case xs.L:if(n){if(cs(p,d,u[y],u[y+1],e,i,r))return!0}else c+=ms(p,d,u[y],u[y+1],i,r)||0;p=u[y++],d=u[y++];break;case xs.C:if(n){if(ps(p,d,u[y++],u[y++],u[y++],u[y++],u[y],u[y+1],e,i,r))return!0}else c+=Ss(p,d,u[y++],u[y++],u[y++],u[y++],u[y],u[y+1],i,r)||0;p=u[y++],d=u[y++];break;case xs.Q:if(n){if(ds(p,d,u[y++],u[y++],u[y],u[y+1],e,i,r))return!0}else c+=Ms(p,d,u[y++],u[y++],u[y],u[y+1],i,r)||0;p=u[y++],d=u[y++];break;case xs.A:var x=u[y++],_=u[y++],b=u[y++],w=u[y++],S=u[y++],M=u[y++];y+=1;var I=!!(1-u[y++]);o=Math.cos(S)*b+x,a=Math.sin(S)*w+_,m?(f=o,g=a):c+=ms(p,d,o,a,i,r);var T=(i-x)*w/b+x;if(n){if(vs(x,_,w,S,S+M,I,e,T,r))return!0}else c+=Is(x,_,w,S,S+M,I,T,r);p=Math.cos(S+M)*b+x,d=Math.sin(S+M)*w+_;break;case xs.R:if(f=p=u[y++],g=d=u[y++],o=f+u[y++],a=g+u[y++],n){if(cs(f,g,o,g,e,i,r)||cs(o,g,o,a,e,i,r)||cs(o,a,f,a,e,i,r)||cs(f,a,f,g,e,i,r))return!0}else c+=ms(o,g,o,a,i,r),c+=ms(f,a,f,g,i,r);break;case xs.Z:if(n){if(cs(p,d,f,g,e,i,r))return!0}else c+=ms(p,d,f,g,i,r);p=f,d=g}}return n||(s=d,l=g,Math.abs(s-l)<1e-4)||(c+=ms(p,d,f,g,i,r)||0),0!==c}var Cs=k({fill:"#000",stroke:null,strokePercent:1,fillOpacity:1,strokeOpacity:1,lineDashOffset:0,lineWidth:1,lineCap:"butt",miterLimit:10,strokeNoScale:!1,strokeFirst:!1},Ma),Ds={style:k({fill:!0,stroke:!0,strokePercent:!0,fillOpacity:!0,strokeOpacity:!0,lineDashOffset:!0,lineWidth:!0,miterLimit:!0},Ia.style)},As=mr.concat(["invisible","culling","z","z2","zlevel","parent"]),ks=function(t){function e(e){return t.call(this,e)||this}var i;return n(e,t),e.prototype.update=function(){var n=this;t.prototype.update.call(this);var i=this.style;if(i.decal){var r=this._decalEl=this._decalEl||new e;r.buildPath===e.prototype.buildPath&&(r.buildPath=function(t){n.buildPath(t,n.shape)}),r.silent=!0;var o=r.style;for(var a in i)o[a]!==i[a]&&(o[a]=i[a]);o.fill=i.fill?i.decal:null,o.decal=null,o.shadowColor=null,i.strokeFirst&&(o.stroke=null);for(var s=0;s<As.length;++s)r[As[s]]=this[As[s]];r.__dirty|=1}else this._decalEl&&(this._decalEl=null)},e.prototype.getDecalElement=function(){return this._decalEl},e.prototype._init=function(e){var n=G(e);this.shape=this.getDefaultShape();var i=this.getDefaultStyle();i&&this.useStyle(i);for(var r=0;r<n.length;r++){var o=n[r],a=e[o];"style"===o?this.style?A(this.style,a):this.useStyle(a):"shape"===o?A(this.shape,a):t.prototype.attrKV.call(this,o,a)}this.style||this.useStyle({})},e.prototype.getDefaultStyle=function(){return null},e.prototype.getDefaultShape=function(){return{}},e.prototype.canBeInsideText=function(){return this.hasFill()},e.prototype.getInsideTextFill=function(){var t=this.style.fill;if("none"!==t){if(U(t)){var e=oi(t,0);return e>.5?lr:e>.2?"#eee":ur}if(t)return ur}return lr},e.prototype.getInsideTextStroke=function(t){var e=this.style.fill;if(U(e)){var n=this.__zr;if(!(!n||!n.isDarkMode())===oi(t,0)<.4)return e}},e.prototype.buildPath=function(t,e,n){},e.prototype.pathUpdated=function(){this.__dirty&=-5},e.prototype.getUpdatedPathProxy=function(t){return!this.path&&this.createPathProxy(),this.path.beginPath(),this.buildPath(this.path,this.shape,t),this.path},e.prototype.createPathProxy=function(){this.path=new hs(!1)},e.prototype.hasStroke=function(){var t=this.style,e=t.stroke;return!(null==e||"none"===e||!(t.lineWidth>0))},e.prototype.hasFill=function(){var t=this.style.fill;return null!=t&&"none"!==t},e.prototype.getBoundingRect=function(){var t=this._rect,e=this.style,n=!t;if(n){var i=!1;this.path||(i=!0,this.createPathProxy());var r=this.path;(i||4&this.__dirty)&&(r.beginPath(),this.buildPath(r,this.shape,!1),this.pathUpdated()),t=r.getBoundingRect()}if(this._rect=t,this.hasStroke()&&this.path&&this.path.len()>0){var o=this._rectStroke||(this._rectStroke=t.clone());if(this.__dirty||n){o.copy(t);var a=e.strokeNoScale?this.getLineScale():1,s=e.lineWidth;if(!this.hasFill()){var l=this.strokeContainThreshold;s=Math.max(s,null==l?4:l)}a>1e-10&&(o.width+=s/a,o.height+=s/a,o.x-=s/a/2,o.y-=s/a/2)}return o}return t},e.prototype.contain=function(t,e){var n=this.transformCoordToLocal(t,e),i=this.getBoundingRect(),r=this.style;if(t=n[0],e=n[1],i.contain(t,e)){var o=this.path;if(this.hasStroke()){var a=r.lineWidth,s=r.strokeNoScale?this.getLineScale():1;if(s>1e-10&&(this.hasFill()||(a=Math.max(a,this.strokeContainThreshold)),function(t,e,n,i){return Ts(t,e,!0,n,i)}(o,a/s,t,e)))return!0}if(this.hasFill())return function(t,e,n){return Ts(t,0,!1,e,n)}(o,t,e)}return!1},e.prototype.dirtyShape=function(){this.__dirty|=4,this._rect&&(this._rect=null),this._decalEl&&this._decalEl.dirtyShape(),this.markRedraw()},e.prototype.dirty=function(){this.dirtyStyle(),this.dirtyShape()},e.prototype.animateShape=function(t){return this.animate("shape",t)},e.prototype.updateDuringAnimation=function(t){"style"===t?this.dirtyStyle():"shape"===t?this.dirtyShape():this.markRedraw()},e.prototype.attrKV=function(e,n){"shape"===e?this.setShape(n):t.prototype.attrKV.call(this,e,n)},e.prototype.setShape=function(t,e){var n=this.shape;return n||(n=this.shape={}),"string"==typeof t?n[t]=e:A(n,t),this.dirtyShape(),this},e.prototype.shapeChanged=function(){return!!(4&this.__dirty)},e.prototype.createStyle=function(t){return mt(Cs,t)},e.prototype._innerSaveToNormal=function(e){t.prototype._innerSaveToNormal.call(this,e);var n=this._normalState;e.shape&&!n.shape&&(n.shape=A({},this.shape))},e.prototype._applyStateObj=function(e,n,i,r,o,a){t.prototype._applyStateObj.call(this,e,n,i,r,o,a);var s,l=!(n&&r);if(n&&n.shape?o?r?s=n.shape:(s=A({},i.shape),A(s,n.shape)):(s=A({},r?this.shape:i.shape),A(s,n.shape)):l&&(s=i.shape),s)if(o){this.shape=A({},this.shape);for(var u={},h=G(s),c=0;c<h.length;c++){var p=h[c];"object"==typeof s[p]?this.shape[p]=s[p]:u[p]=s[p]}this._transitionState(e,{shape:u},a)}else this.shape=s,this.dirtyShape()},e.prototype._mergeStates=function(e){for(var n,i=t.prototype._mergeStates.call(this,e),r=0;r<e.length;r++){var o=e[r];o.shape&&(n=n||{},this._mergeStyle(n,o.shape))}return n&&(i.shape=n),i},e.prototype.getAnimationStyleProps=function(){return Ds},e.prototype.isZeroArea=function(){return!1},e.extend=function(t){var i=function(e){function i(n){var i=e.call(this,n)||this;return t.init&&t.init.call(i,n),i}return n(i,e),i.prototype.getDefaultStyle=function(){return T(t.style)},i.prototype.getDefaultShape=function(){return T(t.shape)},i}(e);for(var r in t)"function"==typeof t[r]&&(i.prototype[r]=t[r]);return i},e.initDefaultProps=((i=e.prototype).type="path",i.strokeContainThreshold=5,i.segmentIgnoreThreshold=0,i.subPixelOptimize=!1,i.autoBatch=!1,void(i.__dirty=7)),e}(Da),Ls=k({strokeFirst:!0,font:a,x:0,y:0,textAlign:"left",textBaseline:"top",miterLimit:2},Cs),Ps=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.hasStroke=function(){var t=this.style,e=t.stroke;return null!=e&&"none"!==e&&t.lineWidth>0},e.prototype.hasFill=function(){var t=this.style.fill;return null!=t&&"none"!==t},e.prototype.createStyle=function(t){return mt(Ls,t)},e.prototype.setBoundingRect=function(t){this._rect=t},e.prototype.getBoundingRect=function(){var t=this.style;if(!this._rect){var e=t.text;null!=e?e+="":e="";var n=Sr(e,t.font,t.textAlign,t.textBaseline);if(n.x+=t.x||0,n.y+=t.y||0,this.hasStroke()){var i=t.lineWidth;n.x-=i/2,n.y-=i/2,n.width+=i,n.height+=i}this._rect=n}return this._rect},e.initDefaultProps=void(e.prototype.dirtyRectTolerance=10),e}(Da);Ps.prototype.type="tspan";var Os=k({x:0,y:0},Ma),Rs={style:k({x:!0,y:!0,width:!0,height:!0,sx:!0,sy:!0,sWidth:!0,sHeight:!0},Ia.style)};var Ns=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.createStyle=function(t){return mt(Os,t)},e.prototype._getSize=function(t){var e=this.style,n=e[t];if(null!=n)return n;var i,r=(i=e.image)&&"string"!=typeof i&&i.width&&i.height?e.image:this.__image;if(!r)return 0;var o="width"===t?"height":"width",a=e[o];return null==a?r[t]:r[t]/r[o]*a},e.prototype.getWidth=function(){return this._getSize("width")},e.prototype.getHeight=function(){return this._getSize("height")},e.prototype.getAnimationStyleProps=function(){return Rs},e.prototype.getBoundingRect=function(){var t=this.style;return this._rect||(this._rect=new ze(t.x||0,t.y||0,this.getWidth(),this.getHeight())),this._rect},e}(Da);Ns.prototype.type="image";var Es=Math.round;function zs(t,e,n){if(e){var i=e.x1,r=e.x2,o=e.y1,a=e.y2;t.x1=i,t.x2=r,t.y1=o,t.y2=a;var s=n&&n.lineWidth;return s?(Es(2*i)===Es(2*r)&&(t.x1=t.x2=Bs(i,s,!0)),Es(2*o)===Es(2*a)&&(t.y1=t.y2=Bs(o,s,!0)),t):t}}function Vs(t,e,n){if(e){var i=e.x,r=e.y,o=e.width,a=e.height;t.x=i,t.y=r,t.width=o,t.height=a;var s=n&&n.lineWidth;return s?(t.x=Bs(i,s,!0),t.y=Bs(r,s,!0),t.width=Math.max(Bs(i+o,s,!1)-t.x,0===o?0:1),t.height=Math.max(Bs(r+a,s,!1)-t.y,0===a?0:1),t):t}}function Bs(t,e,n){if(!e)return t;var i=Es(2*t);return(i+Es(e))%2==0?i/2:(i+(n?1:-1))/2}var Fs=function(){this.x=0,this.y=0,this.width=0,this.height=0},Gs={},Ws=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultShape=function(){return new Fs},e.prototype.buildPath=function(t,e){var n,i,r,o;if(this.subPixelOptimize){var a=Vs(Gs,e,this.style);n=a.x,i=a.y,r=a.width,o=a.height,a.r=e.r,e=a}else n=e.x,i=e.y,r=e.width,o=e.height;e.r?function(t,e){var n,i,r,o,a,s=e.x,l=e.y,u=e.width,h=e.height,c=e.r;u<0&&(s+=u,u=-u),h<0&&(l+=h,h=-h),"number"==typeof c?n=i=r=o=c:c instanceof Array?1===c.length?n=i=r=o=c[0]:2===c.length?(n=r=c[0],i=o=c[1]):3===c.length?(n=c[0],i=o=c[1],r=c[2]):(n=c[0],i=c[1],r=c[2],o=c[3]):n=i=r=o=0,n+i>u&&(n*=u/(a=n+i),i*=u/a),r+o>u&&(r*=u/(a=r+o),o*=u/a),i+r>h&&(i*=h/(a=i+r),r*=h/a),n+o>h&&(n*=h/(a=n+o),o*=h/a),t.moveTo(s+n,l),t.lineTo(s+u-i,l),0!==i&&t.arc(s+u-i,l+i,i,-Math.PI/2,0),t.lineTo(s+u,l+h-r),0!==r&&t.arc(s+u-r,l+h-r,r,0,Math.PI/2),t.lineTo(s+o,l+h),0!==o&&t.arc(s+o,l+h-o,o,Math.PI/2,Math.PI),t.lineTo(s,l+n),0!==n&&t.arc(s+n,l+n,n,Math.PI,1.5*Math.PI)}(t,e):t.rect(n,i,r,o)},e.prototype.isZeroArea=function(){return!this.shape.width||!this.shape.height},e}(ks);Ws.prototype.type="rect";var Hs={fill:"#000"},Ys={style:k({fill:!0,stroke:!0,fillOpacity:!0,strokeOpacity:!0,lineWidth:!0,fontSize:!0,lineHeight:!0,width:!0,height:!0,textShadowColor:!0,textShadowBlur:!0,textShadowOffsetX:!0,textShadowOffsetY:!0,backgroundColor:!0,padding:!0,borderColor:!0,borderWidth:!0,borderRadius:!0},Ia.style)},Xs=function(t){function e(e){var n=t.call(this)||this;return n.type="text",n._children=[],n._defaultStyle=Hs,n.attr(e),n}return n(e,t),e.prototype.childrenRef=function(){return this._children},e.prototype.update=function(){t.prototype.update.call(this),this.styleChanged()&&this._updateSubTexts();for(var e=0;e<this._children.length;e++){var n=this._children[e];n.zlevel=this.zlevel,n.z=this.z,n.z2=this.z2,n.culling=this.culling,n.cursor=this.cursor,n.invisible=this.invisible}},e.prototype.updateTransform=function(){var e=this.innerTransformable;e?(e.updateTransform(),e.transform&&(this.transform=e.transform)):t.prototype.updateTransform.call(this)},e.prototype.getLocalTransform=function(e){var n=this.innerTransformable;return n?n.getLocalTransform(e):t.prototype.getLocalTransform.call(this,e)},e.prototype.getComputedTransform=function(){return this.__hostTarget&&(this.__hostTarget.getComputedTransform(),this.__hostTarget.updateInnerText(!0)),t.prototype.getComputedTransform.call(this)},e.prototype._updateSubTexts=function(){var t;this._childCursor=0,Js(t=this.style),E(t.rich,Js),this.style.rich?this._updateRichTexts():this._updatePlainTexts(),this._children.length=this._childCursor,this.styleUpdated()},e.prototype.addSelfToZr=function(e){t.prototype.addSelfToZr.call(this,e);for(var n=0;n<this._children.length;n++)this._children[n].__zr=e},e.prototype.removeSelfFromZr=function(e){t.prototype.removeSelfFromZr.call(this,e);for(var n=0;n<this._children.length;n++)this._children[n].__zr=null},e.prototype.getBoundingRect=function(){if(this.styleChanged()&&this._updateSubTexts(),!this._rect){for(var t=new ze(0,0,0,0),e=this._children,n=[],i=null,r=0;r<e.length;r++){var o=e[r],a=o.getBoundingRect(),s=o.getLocalTransform(n);s?(t.copy(a),t.applyTransform(s),(i=i||t.clone()).union(t)):(i=i||a.clone()).union(a)}this._rect=i||t}return this._rect},e.prototype.setDefaultTextStyle=function(t){this._defaultStyle=t||Hs},e.prototype.setTextContent=function(t){0},e.prototype._mergeStyle=function(t,e){if(!e)return t;var n=e.rich,i=t.rich||n&&{};return A(t,e),n&&i?(this._mergeRich(i,n),t.rich=i):i&&(t.rich=i),t},e.prototype._mergeRich=function(t,e){for(var n=G(e),i=0;i<n.length;i++){var r=n[i];t[r]=t[r]||{},A(t[r],e[r])}},e.prototype.getAnimationStyleProps=function(){return Ys},e.prototype._getOrCreateChild=function(t){var e=this._children[this._childCursor];return e&&e instanceof t||(e=new t),this._children[this._childCursor++]=e,e.__zr=this.__zr,e.parent=this,e},e.prototype._updatePlainTexts=function(){var t=this.style,e=t.font||a,n=t.padding,i=function(t,e){null!=t&&(t+="");var n,i=e.overflow,r=e.padding,o=e.font,a="truncate"===i,s=Tr(o),l=rt(e.lineHeight,s),u=!!e.backgroundColor,h="truncate"===e.lineOverflow,c=e.width,p=(n=null==c||"break"!==i&&"breakAll"!==i?t?t.split("\n"):[]:t?wa(t,e.font,c,"breakAll"===i,0).lines:[]).length*l,d=rt(e.height,p);if(p>d&&h){var f=Math.floor(d/l);n=n.slice(0,f)}if(t&&a&&null!=c)for(var g=da(c,o,e.ellipsis,{minChar:e.truncateMinChar,placeholder:e.placeholder}),y=0;y<n.length;y++)n[y]=fa(n[y],g);var v=d,m=0;for(y=0;y<n.length;y++)m=Math.max(br(n[y],o),m);null==c&&(c=m);var x=m;return r&&(v+=r[0]+r[2],x+=r[1]+r[3],c+=r[1]+r[3]),u&&(x=c),{lines:n,height:d,outerWidth:x,outerHeight:v,lineHeight:l,calculatedLineHeight:s,contentWidth:m,contentHeight:p,width:c}}(nl(t),t),r=il(t),o=!!t.backgroundColor,s=i.outerHeight,l=i.outerWidth,u=i.contentWidth,h=i.lines,c=i.lineHeight,p=this._defaultStyle,d=t.x||0,f=t.y||0,g=t.align||p.align||"left",y=t.verticalAlign||p.verticalAlign||"top",v=d,m=Ir(f,i.contentHeight,y);if(r||n){var x=Mr(d,l,g),_=Ir(f,s,y);r&&this._renderBackground(t,t,x,_,l,s)}m+=c/2,n&&(v=el(d,g,n),"top"===y?m+=n[0]:"bottom"===y&&(m-=n[2]));for(var b=0,w=!1,S=(tl("fill"in t?t.fill:(w=!0,p.fill))),M=(Qs("stroke"in t?t.stroke:o||p.autoStroke&&!w?null:(b=2,p.stroke))),I=t.textShadowBlur>0,T=null!=t.width&&("truncate"===t.overflow||"break"===t.overflow||"breakAll"===t.overflow),C=i.calculatedLineHeight,D=0;D<h.length;D++){var A=this._getOrCreateChild(Ps),k=A.createStyle();A.useStyle(k),k.text=h[D],k.x=v,k.y=m,g&&(k.textAlign=g),k.textBaseline="middle",k.opacity=t.opacity,k.strokeFirst=!0,I&&(k.shadowBlur=t.textShadowBlur||0,k.shadowColor=t.textShadowColor||"transparent",k.shadowOffsetX=t.textShadowOffsetX||0,k.shadowOffsetY=t.textShadowOffsetY||0),k.stroke=M,k.fill=S,M&&(k.lineWidth=t.lineWidth||b,k.lineDash=t.lineDash,k.lineDashOffset=t.lineDashOffset||0),k.font=e,Ks(k,t),m+=c,T&&A.setBoundingRect(new ze(Mr(k.x,t.width,k.textAlign),Ir(k.y,C,k.textBaseline),u,C))}},e.prototype._updateRichTexts=function(){var t=this.style,e=function(t,e){var n=new ma;if(null!=t&&(t+=""),!t)return n;for(var i,r=e.width,o=e.height,a=e.overflow,s="break"!==a&&"breakAll"!==a||null==r?null:{width:r,accumWidth:0,breakAll:"breakAll"===a},l=ca.lastIndex=0;null!=(i=ca.exec(t));){var u=i.index;u>l&&xa(n,t.substring(l,u),e,s),xa(n,i[2],e,s,i[1]),l=ca.lastIndex}l<t.length&&xa(n,t.substring(l,t.length),e,s);var h=[],c=0,p=0,d=e.padding,f="truncate"===a,g="truncate"===e.lineOverflow;function y(t,e,n){t.width=e,t.lineHeight=n,c+=n,p=Math.max(p,e)}t:for(var v=0;v<n.lines.length;v++){for(var m=n.lines[v],x=0,_=0,b=0;b<m.tokens.length;b++){var w=(P=m.tokens[b]).styleName&&e.rich[P.styleName]||{},S=P.textPadding=w.padding,M=S?S[1]+S[3]:0,I=P.font=w.font||e.font;P.contentHeight=Tr(I);var T=rt(w.height,P.contentHeight);if(P.innerHeight=T,S&&(T+=S[0]+S[2]),P.height=T,P.lineHeight=ot(w.lineHeight,e.lineHeight,T),P.align=w&&w.align||e.align,P.verticalAlign=w&&w.verticalAlign||"middle",g&&null!=o&&c+P.lineHeight>o){b>0?(m.tokens=m.tokens.slice(0,b),y(m,_,x),n.lines=n.lines.slice(0,v+1)):n.lines=n.lines.slice(0,v);break t}var C=w.width,D=null==C||"auto"===C;if("string"==typeof C&&"%"===C.charAt(C.length-1))P.percentWidth=C,h.push(P),P.contentWidth=br(P.text,I);else{if(D){var A=w.backgroundColor,k=A&&A.image;k&&ha(k=sa(k))&&(P.width=Math.max(P.width,k.width*T/k.height))}var L=f&&null!=r?r-_:null;null!=L&&L<P.width?!D||L<M?(P.text="",P.width=P.contentWidth=0):(P.text=pa(P.text,L-M,I,e.ellipsis,{minChar:e.truncateMinChar}),P.width=P.contentWidth=br(P.text,I)):P.contentWidth=br(P.text,I)}P.width+=M,_+=P.width,w&&(x=Math.max(x,P.lineHeight))}y(m,_,x)}for(n.outerWidth=n.width=rt(r,p),n.outerHeight=n.height=rt(o,c),n.contentHeight=c,n.contentWidth=p,d&&(n.outerWidth+=d[1]+d[3],n.outerHeight+=d[0]+d[2]),v=0;v<h.length;v++){var P,O=(P=h[v]).percentWidth;P.width=parseInt(O,10)/100*n.width}return n}(nl(t),t),n=e.width,i=e.outerWidth,r=e.outerHeight,o=t.padding,a=t.x||0,s=t.y||0,l=this._defaultStyle,u=t.align||l.align,h=t.verticalAlign||l.verticalAlign,c=Mr(a,i,u),p=Ir(s,r,h),d=c,f=p;o&&(d+=o[3],f+=o[0]);var g=d+n;il(t)&&this._renderBackground(t,t,c,p,i,r);for(var y=!!t.backgroundColor,v=0;v<e.lines.length;v++){for(var m=e.lines[v],x=m.tokens,_=x.length,b=m.lineHeight,w=m.width,S=0,M=d,I=g,T=_-1,C=void 0;S<_&&(!(C=x[S]).align||"left"===C.align);)this._placeToken(C,t,b,f,M,"left",y),w-=C.width,M+=C.width,S++;for(;T>=0&&"right"===(C=x[T]).align;)this._placeToken(C,t,b,f,I,"right",y),w-=C.width,I-=C.width,T--;for(M+=(n-(M-d)-(g-I)-w)/2;S<=T;)C=x[S],this._placeToken(C,t,b,f,M+C.width/2,"center",y),M+=C.width,S++;f+=b}},e.prototype._placeToken=function(t,e,n,i,r,o,s){var l=e.rich[t.styleName]||{};l.text=t.text;var u=t.verticalAlign,h=i+n/2;"top"===u?h=i+t.height/2:"bottom"===u&&(h=i+n-t.height/2),!t.isLineHolder&&il(l)&&this._renderBackground(l,e,"right"===o?r-t.width:"center"===o?r-t.width/2:r,h-t.height/2,t.width,t.height);var c=!!l.backgroundColor,p=t.textPadding;p&&(r=el(r,o,p),h-=t.height/2-p[0]-t.innerHeight/2);var d=this._getOrCreateChild(Ps),f=d.createStyle();d.useStyle(f);var g=this._defaultStyle,y=!1,v=0,m=tl("fill"in l?l.fill:"fill"in e?e.fill:(y=!0,g.fill)),x=Qs("stroke"in l?l.stroke:"stroke"in e?e.stroke:c||s||g.autoStroke&&!y?null:(v=2,g.stroke)),_=l.textShadowBlur>0||e.textShadowBlur>0;f.text=t.text,f.x=r,f.y=h,_&&(f.shadowBlur=l.textShadowBlur||e.textShadowBlur||0,f.shadowColor=l.textShadowColor||e.textShadowColor||"transparent",f.shadowOffsetX=l.textShadowOffsetX||e.textShadowOffsetX||0,f.shadowOffsetY=l.textShadowOffsetY||e.textShadowOffsetY||0),f.textAlign=o,f.textBaseline="middle",f.font=t.font||a,f.opacity=ot(l.opacity,e.opacity,1),Ks(f,l),x&&(f.lineWidth=ot(l.lineWidth,e.lineWidth,v),f.lineDash=rt(l.lineDash,e.lineDash),f.lineDashOffset=e.lineDashOffset||0,f.stroke=x),m&&(f.fill=m);var b=t.contentWidth,w=t.contentHeight;d.setBoundingRect(new ze(Mr(f.x,b,f.textAlign),Ir(f.y,w,f.textBaseline),b,w))},e.prototype._renderBackground=function(t,e,n,i,r,o){var a,s,l,u=t.backgroundColor,h=t.borderWidth,c=t.borderColor,p=u&&u.image,d=u&&!p,f=t.borderRadius,g=this;if(d||t.lineHeight||h&&c){(a=this._getOrCreateChild(Ws)).useStyle(a.createStyle()),a.style.fill=null;var y=a.shape;y.x=n,y.y=i,y.width=r,y.height=o,y.r=f,a.dirtyShape()}if(d)(l=a.style).fill=u||null,l.fillOpacity=rt(t.fillOpacity,1);else if(p){(s=this._getOrCreateChild(Ns)).onload=function(){g.dirtyStyle()};var v=s.style;v.image=u.image,v.x=n,v.y=i,v.width=r,v.height=o}h&&c&&((l=a.style).lineWidth=h,l.stroke=c,l.strokeOpacity=rt(t.strokeOpacity,1),l.lineDash=t.borderDash,l.lineDashOffset=t.borderDashOffset||0,a.strokeContainThreshold=0,a.hasFill()&&a.hasStroke()&&(l.strokeFirst=!0,l.lineWidth*=2));var m=(a||s).style;m.shadowBlur=t.shadowBlur||0,m.shadowColor=t.shadowColor||"transparent",m.shadowOffsetX=t.shadowOffsetX||0,m.shadowOffsetY=t.shadowOffsetY||0,m.opacity=ot(t.opacity,e.opacity,1)},e.makeFont=function(t){var e="";return $s(t)&&(e=[t.fontStyle,t.fontWeight,qs(t.fontSize),t.fontFamily||"sans-serif"].join(" ")),e&&ut(e)||t.textFont||t.font},e}(Da),Us={left:!0,right:1,center:1},Zs={top:1,bottom:1,middle:1},js=["fontStyle","fontWeight","fontSize","fontFamily"];function qs(t){return"string"!=typeof t||-1===t.indexOf("px")&&-1===t.indexOf("rem")&&-1===t.indexOf("em")?isNaN(+t)?"12px":t+"px":t}function Ks(t,e){for(var n=0;n<js.length;n++){var i=js[n],r=e[i];null!=r&&(t[i]=r)}}function $s(t){return null!=t.fontSize||t.fontFamily||t.fontWeight}function Js(t){if(t){t.font=Xs.makeFont(t);var e=t.align;"middle"===e&&(e="center"),t.align=null==e||Us[e]?e:"left";var n=t.verticalAlign;"center"===n&&(n="middle"),t.verticalAlign=null==n||Zs[n]?n:"top",t.padding&&(t.padding=st(t.padding))}}function Qs(t,e){return null==t||e<=0||"transparent"===t||"none"===t?null:t.image||t.colorStops?"#000":t}function tl(t){return null==t||"none"===t?null:t.image||t.colorStops?"#000":t}function el(t,e,n){return"right"===e?t-n[1]:"center"===e?t+n[3]/2-n[1]/2:t+n[3]}function nl(t){var e=t.text;return null!=e&&(e+=""),e}function il(t){return!!(t.backgroundColor||t.lineHeight||t.borderWidth&&t.borderColor)}var rl=Vo(),ol=function(t,e,n,i){if(i){var r=rl(i);r.dataIndex=n,r.dataType=e,r.seriesIndex=t,r.ssrType="chart","group"===i.type&&i.traverse((function(i){var r=rl(i);r.seriesIndex=t,r.dataIndex=n,r.dataType=e,r.ssrType="chart"}))}},al=1,sl={},ll=Vo(),ul=Vo(),hl=["emphasis","blur","select"],cl=["normal","emphasis","blur","select"],pl=10,dl="highlight",fl="downplay",gl="select",yl="unselect",vl="toggleSelect";function ml(t){return null!=t&&"none"!==t}function xl(t,e,n){t.onHoverStateChange&&(t.hoverState||0)!==n&&t.onHoverStateChange(e),t.hoverState=n}function _l(t){xl(t,"emphasis",2)}function bl(t){2===t.hoverState&&xl(t,"normal",0)}function wl(t){xl(t,"blur",1)}function Sl(t){1===t.hoverState&&xl(t,"normal",0)}function Ml(t){t.selected=!0}function Il(t){t.selected=!1}function Tl(t,e,n){e(t,n)}function Cl(t,e,n){Tl(t,e,n),t.isGroup&&t.traverse((function(t){Tl(t,e,n)}))}function Dl(t,e){switch(e){case"emphasis":t.hoverState=2;break;case"normal":t.hoverState=0;break;case"blur":t.hoverState=1;break;case"select":t.selected=!0}}function Al(t,e){var n=this.states[t];if(this.style){if("emphasis"===t)return function(t,e,n,i){var r=n&&P(n,"select")>=0,o=!1;if(t instanceof ks){var a=ll(t),s=r&&a.selectFill||a.normalFill,l=r&&a.selectStroke||a.normalStroke;if(ml(s)||ml(l)){var u=(i=i||{}).style||{};"inherit"===u.fill?(o=!0,i=A({},i),(u=A({},u)).fill=s):!ml(u.fill)&&ml(s)?(o=!0,i=A({},i),(u=A({},u)).fill=si(s)):!ml(u.stroke)&&ml(l)&&(o||(i=A({},i),u=A({},u)),u.stroke=si(l)),i.style=u}}if(i&&null==i.z2){o||(i=A({},i));var h=t.z2EmphasisLift;i.z2=t.z2+(null!=h?h:pl)}return i}(this,0,e,n);if("blur"===t)return function(t,e,n){var i=P(t.currentStates,e)>=0,r=t.style.opacity,o=i?null:function(t,e,n,i){for(var r=t.style,o={},a=0;a<e.length;a++){var s=e[a],l=r[s];o[s]=null==l?i&&i[s]:l}for(a=0;a<t.animators.length;a++){var u=t.animators[a];u.__fromStateTransition&&u.__fromStateTransition.indexOf(n)<0&&"style"===u.targetName&&u.saveTo(o,e)}return o}(t,["opacity"],e,{opacity:1}),a=(n=n||{}).style||{};return null==a.opacity&&(n=A({},n),a=A({opacity:i?r:.1*o.opacity},a),n.style=a),n}(this,t,n);if("select"===t)return function(t,e,n){if(n&&null==n.z2){n=A({},n);var i=t.z2SelectLift;n.z2=t.z2+(null!=i?i:9)}return n}(this,0,n)}return n}function kl(t){t.stateProxy=Al;var e=t.getTextContent(),n=t.getTextGuideLine();e&&(e.stateProxy=Al),n&&(n.stateProxy=Al)}function Ll(t,e){!Bl(t,e)&&!t.__highByOuter&&Cl(t,_l)}function Pl(t,e){!Bl(t,e)&&!t.__highByOuter&&Cl(t,bl)}function Ol(t,e){t.__highByOuter|=1<<(e||0),Cl(t,_l)}function Rl(t,e){!(t.__highByOuter&=~(1<<(e||0)))&&Cl(t,bl)}function Nl(t){Cl(t,wl)}function El(t){Cl(t,Sl)}function zl(t){Cl(t,Ml)}function Vl(t){Cl(t,Il)}function Bl(t,e){return t.__highDownSilentOnTouch&&e.zrByTouch}function Fl(t){var e=t.getModel(),n=[],i=[];e.eachComponent((function(e,r){var o=ul(r),a="series"===e,s=a?t.getViewOfSeriesModel(r):t.getViewOfComponentModel(r);!a&&i.push(s),o.isBlured&&(s.group.traverse((function(t){Sl(t)})),a&&n.push(r)),o.isBlured=!1})),E(i,(function(t){t&&t.toggleBlurSeries&&t.toggleBlurSeries(n,!1,e)}))}function Gl(t,e,n,i){var r=i.getModel();function o(t,e){for(var n=0;n<e.length;n++){var i=t.getItemGraphicEl(e[n]);i&&El(i)}}if(n=n||"coordinateSystem",null!=t&&e&&"none"!==e){var a=r.getSeriesByIndex(t),s=a.coordinateSystem;s&&s.master&&(s=s.master);var l=[];r.eachSeries((function(t){var r=a===t,u=t.coordinateSystem;if(u&&u.master&&(u=u.master),!("series"===n&&!r||"coordinateSystem"===n&&!(u&&s?u===s:r)||"series"===e&&r)){if(i.getViewOfSeriesModel(t).group.traverse((function(t){t.__highByOuter&&r&&"self"===e||wl(t)})),N(e))o(t.getData(),e);else if(q(e))for(var h=G(e),c=0;c<h.length;c++)o(t.getData(h[c]),e[h[c]]);l.push(t),ul(t).isBlured=!0}})),r.eachComponent((function(t,e){if("series"!==t){var n=i.getViewOfComponentModel(e);n&&n.toggleBlurSeries&&n.toggleBlurSeries(l,!0,r)}}))}}function Wl(t,e,n){if(null!=t&&null!=e){var i=n.getModel().getComponent(t,e);if(i){ul(i).isBlured=!0;var r=n.getViewOfComponentModel(i);r&&r.focusBlurEnabled&&r.group.traverse((function(t){wl(t)}))}}}function Hl(t,e,n,i){var r={focusSelf:!1,dispatchers:null};if(null==t||"series"===t||null==e||null==n)return r;var o=i.getModel().getComponent(t,e);if(!o)return r;var a=i.getViewOfComponentModel(o);if(!a||!a.findHighDownDispatchers)return r;for(var s,l=a.findHighDownDispatchers(n),u=0;u<l.length;u++)if("self"===rl(l[u]).focus){s=!0;break}return{focusSelf:s,dispatchers:l}}function Yl(t){E(t.getAllData(),(function(e){var n=e.data,i=e.type;n.eachItemGraphicEl((function(e,n){t.isSelected(n,i)?zl(e):Vl(e)}))}))}function Xl(t){var e=[];return t.eachSeries((function(t){E(t.getAllData(),(function(n){n.data;var i=n.type,r=t.getSelectedDataIndices();if(r.length>0){var o={dataIndex:r,seriesIndex:t.seriesIndex};null!=i&&(o.dataType=i),e.push(o)}}))})),e}function Ul(t,e,n){Jl(t,!0),Cl(t,kl),jl(t,e,n)}function Zl(t,e,n,i){i?function(t){Jl(t,!1)}(t):Ul(t,e,n)}function jl(t,e,n){var i=rl(t);null!=e?(i.focus=e,i.blurScope=n):i.focus&&(i.focus=null)}var ql=["emphasis","blur","select"],Kl={itemStyle:"getItemStyle",lineStyle:"getLineStyle",areaStyle:"getAreaStyle"};function $l(t,e,n,i){n=n||"itemStyle";for(var r=0;r<ql.length;r++){var o=ql[r],a=e.getModel([o,n]);t.ensureState(o).style=i?i(a):a[Kl[n]]()}}function Jl(t,e){var n=!1===e,i=t;t.highDownSilentOnTouch&&(i.__highDownSilentOnTouch=t.highDownSilentOnTouch),n&&!i.__highDownDispatcher||(i.__highByOuter=i.__highByOuter||0,i.__highDownDispatcher=!n)}function Ql(t){return!(!t||!t.__highDownDispatcher)}function tu(t){var e=t.type;return e===gl||e===yl||e===vl}function eu(t){var e=t.type;return e===dl||e===fl}var nu=hs.CMD,iu=[[],[],[]],ru=Math.sqrt,ou=Math.atan2;function au(t,e){if(e){var n,i,r,o,a,s,l=t.data,u=t.len(),h=nu.M,c=nu.C,p=nu.L,d=nu.R,f=nu.A,g=nu.Q;for(r=0,o=0;r<u;){switch(n=l[r++],o=r,i=0,n){case h:case p:i=1;break;case c:i=3;break;case g:i=2;break;case f:var y=e[4],v=e[5],m=ru(e[0]*e[0]+e[1]*e[1]),x=ru(e[2]*e[2]+e[3]*e[3]),_=ou(-e[1]/x,e[0]/m);l[r]*=m,l[r++]+=y,l[r]*=x,l[r++]+=v,l[r++]*=m,l[r++]*=x,l[r++]+=_,l[r++]+=_,o=r+=2;break;case d:s[0]=l[r++],s[1]=l[r++],Wt(s,s,e),l[o++]=s[0],l[o++]=s[1],s[0]+=l[r++],s[1]+=l[r++],Wt(s,s,e),l[o++]=s[0],l[o++]=s[1]}for(a=0;a<i;a++){var b=iu[a];b[0]=l[r++],b[1]=l[r++],Wt(b,b,e),l[o++]=b[0],l[o++]=b[1]}}t.increaseVersion()}}var su=Math.sqrt,lu=Math.sin,uu=Math.cos,hu=Math.PI;function cu(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function pu(t,e){return(t[0]*e[0]+t[1]*e[1])/(cu(t)*cu(e))}function du(t,e){return(t[0]*e[1]<t[1]*e[0]?-1:1)*Math.acos(pu(t,e))}function fu(t,e,n,i,r,o,a,s,l,u,h){var c=l*(hu/180),p=uu(c)*(t-n)/2+lu(c)*(e-i)/2,d=-1*lu(c)*(t-n)/2+uu(c)*(e-i)/2,f=p*p/(a*a)+d*d/(s*s);f>1&&(a*=su(f),s*=su(f));var g=(r===o?-1:1)*su((a*a*(s*s)-a*a*(d*d)-s*s*(p*p))/(a*a*(d*d)+s*s*(p*p)))||0,y=g*a*d/s,v=g*-s*p/a,m=(t+n)/2+uu(c)*y-lu(c)*v,x=(e+i)/2+lu(c)*y+uu(c)*v,_=du([1,0],[(p-y)/a,(d-v)/s]),b=[(p-y)/a,(d-v)/s],w=[(-1*p-y)/a,(-1*d-v)/s],S=du(b,w);if(pu(b,w)<=-1&&(S=hu),pu(b,w)>=1&&(S=0),S<0){var M=Math.round(S/hu*1e6)/1e6;S=2*hu+M%2*hu}h.addData(u,m,x,a,s,_,S,c,o)}var gu=/([mlvhzcqtsa])([^mlvhzcqtsa]*)/gi,yu=/-?([0-9]*\.)?[0-9]+([eE]-?[0-9]+)?/g;var vu=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.applyTransform=function(t){},e}(ks);function mu(t){return null!=t.setData}function xu(t,e){var n=function(t){var e=new hs;if(!t)return e;var n,i=0,r=0,o=i,a=r,s=hs.CMD,l=t.match(gu);if(!l)return e;for(var u=0;u<l.length;u++){for(var h=l[u],c=h.charAt(0),p=void 0,d=h.match(yu)||[],f=d.length,g=0;g<f;g++)d[g]=parseFloat(d[g]);for(var y=0;y<f;){var v=void 0,m=void 0,x=void 0,_=void 0,b=void 0,w=void 0,S=void 0,M=i,I=r,T=void 0,C=void 0;switch(c){case"l":i+=d[y++],r+=d[y++],p=s.L,e.addData(p,i,r);break;case"L":i=d[y++],r=d[y++],p=s.L,e.addData(p,i,r);break;case"m":i+=d[y++],r+=d[y++],p=s.M,e.addData(p,i,r),o=i,a=r,c="l";break;case"M":i=d[y++],r=d[y++],p=s.M,e.addData(p,i,r),o=i,a=r,c="L";break;case"h":i+=d[y++],p=s.L,e.addData(p,i,r);break;case"H":i=d[y++],p=s.L,e.addData(p,i,r);break;case"v":r+=d[y++],p=s.L,e.addData(p,i,r);break;case"V":r=d[y++],p=s.L,e.addData(p,i,r);break;case"C":p=s.C,e.addData(p,d[y++],d[y++],d[y++],d[y++],d[y++],d[y++]),i=d[y-2],r=d[y-1];break;case"c":p=s.C,e.addData(p,d[y++]+i,d[y++]+r,d[y++]+i,d[y++]+r,d[y++]+i,d[y++]+r),i+=d[y-2],r+=d[y-1];break;case"S":v=i,m=r,T=e.len(),C=e.data,n===s.C&&(v+=i-C[T-4],m+=r-C[T-3]),p=s.C,M=d[y++],I=d[y++],i=d[y++],r=d[y++],e.addData(p,v,m,M,I,i,r);break;case"s":v=i,m=r,T=e.len(),C=e.data,n===s.C&&(v+=i-C[T-4],m+=r-C[T-3]),p=s.C,M=i+d[y++],I=r+d[y++],i+=d[y++],r+=d[y++],e.addData(p,v,m,M,I,i,r);break;case"Q":M=d[y++],I=d[y++],i=d[y++],r=d[y++],p=s.Q,e.addData(p,M,I,i,r);break;case"q":M=d[y++]+i,I=d[y++]+r,i+=d[y++],r+=d[y++],p=s.Q,e.addData(p,M,I,i,r);break;case"T":v=i,m=r,T=e.len(),C=e.data,n===s.Q&&(v+=i-C[T-4],m+=r-C[T-3]),i=d[y++],r=d[y++],p=s.Q,e.addData(p,v,m,i,r);break;case"t":v=i,m=r,T=e.len(),C=e.data,n===s.Q&&(v+=i-C[T-4],m+=r-C[T-3]),i+=d[y++],r+=d[y++],p=s.Q,e.addData(p,v,m,i,r);break;case"A":x=d[y++],_=d[y++],b=d[y++],w=d[y++],S=d[y++],fu(M=i,I=r,i=d[y++],r=d[y++],w,S,x,_,b,p=s.A,e);break;case"a":x=d[y++],_=d[y++],b=d[y++],w=d[y++],S=d[y++],fu(M=i,I=r,i+=d[y++],r+=d[y++],w,S,x,_,b,p=s.A,e)}}"z"!==c&&"Z"!==c||(p=s.Z,e.addData(p),i=o,r=a),n=p}return e.toStatic(),e}(t),i=A({},e);return i.buildPath=function(t){if(mu(t)){t.setData(n.data),(e=t.getContext())&&t.rebuildPath(e,1)}else{var e=t;n.rebuildPath(e,1)}},i.applyTransform=function(t){au(n,t),this.dirtyShape()},i}function _u(t,e){return new vu(xu(t,e))}function bu(t,e){e=e||{};var n=new ks;return t.shape&&n.setShape(t.shape),n.setStyle(t.style),e.bakeTransform?au(n.path,t.getComputedTransform()):e.toLocal?n.setLocalTransform(t.getComputedTransform()):n.copyTransform(t),n.buildPath=t.buildPath,n.applyTransform=n.applyTransform,n.z=t.z,n.z2=t.z2,n.zlevel=t.zlevel,n}var wu=function(){this.cx=0,this.cy=0,this.r=0},Su=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultShape=function(){return new wu},e.prototype.buildPath=function(t,e){t.moveTo(e.cx+e.r,e.cy),t.arc(e.cx,e.cy,e.r,0,2*Math.PI)},e}(ks);Su.prototype.type="circle";var Mu=function(){this.cx=0,this.cy=0,this.rx=0,this.ry=0},Iu=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultShape=function(){return new Mu},e.prototype.buildPath=function(t,e){var n=.5522848,i=e.cx,r=e.cy,o=e.rx,a=e.ry,s=o*n,l=a*n;t.moveTo(i-o,r),t.bezierCurveTo(i-o,r-l,i-s,r-a,i,r-a),t.bezierCurveTo(i+s,r-a,i+o,r-l,i+o,r),t.bezierCurveTo(i+o,r+l,i+s,r+a,i,r+a),t.bezierCurveTo(i-s,r+a,i-o,r+l,i-o,r),t.closePath()},e}(ks);Iu.prototype.type="ellipse";var Tu=Math.PI,Cu=2*Tu,Du=Math.sin,Au=Math.cos,ku=Math.acos,Lu=Math.atan2,Pu=Math.abs,Ou=Math.sqrt,Ru=Math.max,Nu=Math.min,Eu=1e-4;function zu(t,e,n,i,r,o,a){var s=t-n,l=e-i,u=(a?o:-o)/Ou(s*s+l*l),h=u*l,c=-u*s,p=t+h,d=e+c,f=n+h,g=i+c,y=(p+f)/2,v=(d+g)/2,m=f-p,x=g-d,_=m*m+x*x,b=r-o,w=p*g-f*d,S=(x<0?-1:1)*Ou(Ru(0,b*b*_-w*w)),M=(w*x-m*S)/_,I=(-w*m-x*S)/_,T=(w*x+m*S)/_,C=(-w*m+x*S)/_,D=M-y,A=I-v,k=T-y,L=C-v;return D*D+A*A>k*k+L*L&&(M=T,I=C),{cx:M,cy:I,x0:-h,y0:-c,x1:M*(r/b-1),y1:I*(r/b-1)}}function Vu(t,e){var n,i=Ru(e.r,0),r=Ru(e.r0||0,0),o=i>0;if(o||r>0){if(o||(i=r,r=0),r>i){var a=i;i=r,r=a}var s=e.startAngle,l=e.endAngle;if(!isNaN(s)&&!isNaN(l)){var u=e.cx,h=e.cy,c=!!e.clockwise,p=Pu(l-s),d=p>Cu&&p%Cu;if(d>Eu&&(p=d),i>Eu)if(p>Cu-Eu)t.moveTo(u+i*Au(s),h+i*Du(s)),t.arc(u,h,i,s,l,!c),r>Eu&&(t.moveTo(u+r*Au(l),h+r*Du(l)),t.arc(u,h,r,l,s,c));else{var f=void 0,g=void 0,y=void 0,v=void 0,m=void 0,x=void 0,_=void 0,b=void 0,w=void 0,S=void 0,M=void 0,I=void 0,T=void 0,C=void 0,D=void 0,A=void 0,k=i*Au(s),L=i*Du(s),P=r*Au(l),O=r*Du(l),R=p>Eu;if(R){var N=e.cornerRadius;N&&(n=function(t){var e;if(Y(t)){var n=t.length;if(!n)return t;e=1===n?[t[0],t[0],0,0]:2===n?[t[0],t[0],t[1],t[1]]:3===n?t.concat(t[2]):t}else e=[t,t,t,t];return e}(N),f=n[0],g=n[1],y=n[2],v=n[3]);var E=Pu(i-r)/2;if(m=Nu(E,y),x=Nu(E,v),_=Nu(E,f),b=Nu(E,g),M=w=Ru(m,x),I=S=Ru(_,b),(w>Eu||S>Eu)&&(T=i*Au(l),C=i*Du(l),D=r*Au(s),A=r*Du(s),p<Tu)){var z=function(t,e,n,i,r,o,a,s){var l=n-t,u=i-e,h=a-r,c=s-o,p=c*l-h*u;if(!(p*p<Eu))return[t+(p=(h*(e-o)-c*(t-r))/p)*l,e+p*u]}(k,L,D,A,T,C,P,O);if(z){var V=k-z[0],B=L-z[1],F=T-z[0],G=C-z[1],W=1/Du(ku((V*F+B*G)/(Ou(V*V+B*B)*Ou(F*F+G*G)))/2),H=Ou(z[0]*z[0]+z[1]*z[1]);M=Nu(w,(i-H)/(W+1)),I=Nu(S,(r-H)/(W-1))}}}if(R)if(M>Eu){var X=Nu(y,M),U=Nu(v,M),Z=zu(D,A,k,L,i,X,c),j=zu(T,C,P,O,i,U,c);t.moveTo(u+Z.cx+Z.x0,h+Z.cy+Z.y0),M<w&&X===U?t.arc(u+Z.cx,h+Z.cy,M,Lu(Z.y0,Z.x0),Lu(j.y0,j.x0),!c):(X>0&&t.arc(u+Z.cx,h+Z.cy,X,Lu(Z.y0,Z.x0),Lu(Z.y1,Z.x1),!c),t.arc(u,h,i,Lu(Z.cy+Z.y1,Z.cx+Z.x1),Lu(j.cy+j.y1,j.cx+j.x1),!c),U>0&&t.arc(u+j.cx,h+j.cy,U,Lu(j.y1,j.x1),Lu(j.y0,j.x0),!c))}else t.moveTo(u+k,h+L),t.arc(u,h,i,s,l,!c);else t.moveTo(u+k,h+L);if(r>Eu&&R)if(I>Eu){X=Nu(f,I),Z=zu(P,O,T,C,r,-(U=Nu(g,I)),c),j=zu(k,L,D,A,r,-X,c);t.lineTo(u+Z.cx+Z.x0,h+Z.cy+Z.y0),I<S&&X===U?t.arc(u+Z.cx,h+Z.cy,I,Lu(Z.y0,Z.x0),Lu(j.y0,j.x0),!c):(U>0&&t.arc(u+Z.cx,h+Z.cy,U,Lu(Z.y0,Z.x0),Lu(Z.y1,Z.x1),!c),t.arc(u,h,r,Lu(Z.cy+Z.y1,Z.cx+Z.x1),Lu(j.cy+j.y1,j.cx+j.x1),c),X>0&&t.arc(u+j.cx,h+j.cy,X,Lu(j.y1,j.x1),Lu(j.y0,j.x0),!c))}else t.lineTo(u+P,h+O),t.arc(u,h,r,l,s,c);else t.lineTo(u+P,h+O)}else t.moveTo(u,h);t.closePath()}}}var Bu=function(){this.cx=0,this.cy=0,this.r0=0,this.r=0,this.startAngle=0,this.endAngle=2*Math.PI,this.clockwise=!0,this.cornerRadius=0},Fu=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultShape=function(){return new Bu},e.prototype.buildPath=function(t,e){Vu(t,e)},e.prototype.isZeroArea=function(){return this.shape.startAngle===this.shape.endAngle||this.shape.r===this.shape.r0},e}(ks);Fu.prototype.type="sector";var Gu=function(){this.cx=0,this.cy=0,this.r=0,this.r0=0},Wu=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultShape=function(){return new Gu},e.prototype.buildPath=function(t,e){var n=e.cx,i=e.cy,r=2*Math.PI;t.moveTo(n+e.r,i),t.arc(n,i,e.r,0,r,!1),t.moveTo(n+e.r0,i),t.arc(n,i,e.r0,0,r,!0)},e}(ks);function Hu(t,e,n){var i=e.smooth,r=e.points;if(r&&r.length>=2){if(i){var o=function(t,e,n,i){var r,o,a,s,l=[],u=[],h=[],c=[];if(i){a=[1/0,1/0],s=[-1/0,-1/0];for(var p=0,d=t.length;p<d;p++)Ht(a,a,t[p]),Yt(s,s,t[p]);Ht(a,a,i[0]),Yt(s,s,i[1])}for(p=0,d=t.length;p<d;p++){var f=t[p];if(n)r=t[p?p-1:d-1],o=t[(p+1)%d];else{if(0===p||p===d-1){l.push(Tt(t[p]));continue}r=t[p-1],o=t[p+1]}kt(u,o,r),Nt(u,u,e);var g=zt(f,r),y=zt(f,o),v=g+y;0!==v&&(g/=v,y/=v),Nt(h,u,-g),Nt(c,u,y);var m=Dt([],f,h),x=Dt([],f,c);i&&(Yt(m,m,a),Ht(m,m,s),Yt(x,x,a),Ht(x,x,s)),l.push(m),l.push(x)}return n&&l.push(l.shift()),l}(r,i,n,e.smoothConstraint);t.moveTo(r[0][0],r[0][1]);for(var a=r.length,s=0;s<(n?a:a-1);s++){var l=o[2*s],u=o[2*s+1],h=r[(s+1)%a];t.bezierCurveTo(l[0],l[1],u[0],u[1],h[0],h[1])}}else{t.moveTo(r[0][0],r[0][1]);s=1;for(var c=r.length;s<c;s++)t.lineTo(r[s][0],r[s][1])}n&&t.closePath()}}Wu.prototype.type="ring";var Yu=function(){this.points=null,this.smooth=0,this.smoothConstraint=null},Xu=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultShape=function(){return new Yu},e.prototype.buildPath=function(t,e){Hu(t,e,!0)},e}(ks);Xu.prototype.type="polygon";var Uu=function(){this.points=null,this.percent=1,this.smooth=0,this.smoothConstraint=null},Zu=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new Uu},e.prototype.buildPath=function(t,e){Hu(t,e,!1)},e}(ks);Zu.prototype.type="polyline";var ju={},qu=function(){this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.percent=1},Ku=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new qu},e.prototype.buildPath=function(t,e){var n,i,r,o;if(this.subPixelOptimize){var a=zs(ju,e,this.style);n=a.x1,i=a.y1,r=a.x2,o=a.y2}else n=e.x1,i=e.y1,r=e.x2,o=e.y2;var s=e.percent;0!==s&&(t.moveTo(n,i),s<1&&(r=n*(1-s)+r*s,o=i*(1-s)+o*s),t.lineTo(r,o))},e.prototype.pointAt=function(t){var e=this.shape;return[e.x1*(1-t)+e.x2*t,e.y1*(1-t)+e.y2*t]},e}(ks);Ku.prototype.type="line";var $u=[],Ju=function(){this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.cpx1=0,this.cpy1=0,this.percent=1};function Qu(t,e,n){var i=t.cpx2,r=t.cpy2;return null!=i||null!=r?[(n?xn:mn)(t.x1,t.cpx1,t.cpx2,t.x2,e),(n?xn:mn)(t.y1,t.cpy1,t.cpy2,t.y2,e)]:[(n?Tn:In)(t.x1,t.cpx1,t.x2,e),(n?Tn:In)(t.y1,t.cpy1,t.y2,e)]}var th=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new Ju},e.prototype.buildPath=function(t,e){var n=e.x1,i=e.y1,r=e.x2,o=e.y2,a=e.cpx1,s=e.cpy1,l=e.cpx2,u=e.cpy2,h=e.percent;0!==h&&(t.moveTo(n,i),null==l||null==u?(h<1&&(Dn(n,a,r,h,$u),a=$u[1],r=$u[2],Dn(i,s,o,h,$u),s=$u[1],o=$u[2]),t.quadraticCurveTo(a,s,r,o)):(h<1&&(wn(n,a,l,r,h,$u),a=$u[1],l=$u[2],r=$u[3],wn(i,s,u,o,h,$u),s=$u[1],u=$u[2],o=$u[3]),t.bezierCurveTo(a,s,l,u,r,o)))},e.prototype.pointAt=function(t){return Qu(this.shape,t,!1)},e.prototype.tangentAt=function(t){var e=Qu(this.shape,t,!0);return Et(e,e)},e}(ks);th.prototype.type="bezier-curve";var eh=function(){this.cx=0,this.cy=0,this.r=0,this.startAngle=0,this.endAngle=2*Math.PI,this.clockwise=!0},nh=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new eh},e.prototype.buildPath=function(t,e){var n=e.cx,i=e.cy,r=Math.max(e.r,0),o=e.startAngle,a=e.endAngle,s=e.clockwise,l=Math.cos(o),u=Math.sin(o);t.moveTo(l*r+n,u*r+i),t.arc(n,i,r,o,a,!s)},e}(ks);nh.prototype.type="arc";var ih=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="compound",e}return n(e,t),e.prototype._updatePathDirty=function(){for(var t=this.shape.paths,e=this.shapeChanged(),n=0;n<t.length;n++)e=e||t[n].shapeChanged();e&&this.dirtyShape()},e.prototype.beforeBrush=function(){this._updatePathDirty();for(var t=this.shape.paths||[],e=this.getGlobalScale(),n=0;n<t.length;n++)t[n].path||t[n].createPathProxy(),t[n].path.setScale(e[0],e[1],t[n].segmentIgnoreThreshold)},e.prototype.buildPath=function(t,e){for(var n=e.paths||[],i=0;i<n.length;i++)n[i].buildPath(t,n[i].shape,!0)},e.prototype.afterBrush=function(){for(var t=this.shape.paths||[],e=0;e<t.length;e++)t[e].pathUpdated()},e.prototype.getBoundingRect=function(){return this._updatePathDirty.call(this),ks.prototype.getBoundingRect.call(this)},e}(ks),rh=function(){function t(t){this.colorStops=t||[]}return t.prototype.addColorStop=function(t,e){this.colorStops.push({offset:t,color:e})},t}(),oh=function(t){function e(e,n,i,r,o,a){var s=t.call(this,o)||this;return s.x=null==e?0:e,s.y=null==n?0:n,s.x2=null==i?1:i,s.y2=null==r?0:r,s.type="linear",s.global=a||!1,s}return n(e,t),e}(rh),ah=function(t){function e(e,n,i,r,o){var a=t.call(this,r)||this;return a.x=null==e?.5:e,a.y=null==n?.5:n,a.r=null==i?.5:i,a.type="radial",a.global=o||!1,a}return n(e,t),e}(rh),sh=[0,0],lh=[0,0],uh=new De,hh=new De,ch=function(){function t(t,e){this._corners=[],this._axes=[],this._origin=[0,0];for(var n=0;n<4;n++)this._corners[n]=new De;for(n=0;n<2;n++)this._axes[n]=new De;t&&this.fromBoundingRect(t,e)}return t.prototype.fromBoundingRect=function(t,e){var n=this._corners,i=this._axes,r=t.x,o=t.y,a=r+t.width,s=o+t.height;if(n[0].set(r,o),n[1].set(a,o),n[2].set(a,s),n[3].set(r,s),e)for(var l=0;l<4;l++)n[l].transform(e);De.sub(i[0],n[1],n[0]),De.sub(i[1],n[3],n[0]),i[0].normalize(),i[1].normalize();for(l=0;l<2;l++)this._origin[l]=i[l].dot(n[0])},t.prototype.intersect=function(t,e){var n=!0,i=!e;return uh.set(1/0,1/0),hh.set(0,0),!this._intersectCheckOneSide(this,t,uh,hh,i,1)&&(n=!1,i)||!this._intersectCheckOneSide(t,this,uh,hh,i,-1)&&(n=!1,i)||i||De.copy(e,n?uh:hh),n},t.prototype._intersectCheckOneSide=function(t,e,n,i,r,o){for(var a=!0,s=0;s<2;s++){var l=this._axes[s];if(this._getProjMinMaxOnAxis(s,t._corners,sh),this._getProjMinMaxOnAxis(s,e._corners,lh),sh[1]<lh[0]||sh[0]>lh[1]){if(a=!1,r)return a;var u=Math.abs(lh[0]-sh[1]),h=Math.abs(sh[0]-lh[1]);Math.min(u,h)>i.len()&&(u<h?De.scale(i,l,-u*o):De.scale(i,l,h*o))}else if(n){u=Math.abs(lh[0]-sh[1]),h=Math.abs(sh[0]-lh[1]);Math.min(u,h)<n.len()&&(u<h?De.scale(n,l,u*o):De.scale(n,l,-h*o))}}return a},t.prototype._getProjMinMaxOnAxis=function(t,e,n){for(var i=this._axes[t],r=this._origin,o=e[0].dot(i)+r[t],a=o,s=o,l=1;l<e.length;l++){var u=e[l].dot(i)+r[t];a=Math.min(u,a),s=Math.max(u,s)}n[0]=a,n[1]=s},t}(),ph=[],dh=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.notClear=!0,e.incremental=!0,e._displayables=[],e._temporaryDisplayables=[],e._cursor=0,e}return n(e,t),e.prototype.traverse=function(t,e){t.call(e,this)},e.prototype.useStyle=function(){this.style={}},e.prototype.getCursor=function(){return this._cursor},e.prototype.innerAfterBrush=function(){this._cursor=this._displayables.length},e.prototype.clearDisplaybles=function(){this._displayables=[],this._temporaryDisplayables=[],this._cursor=0,this.markRedraw(),this.notClear=!1},e.prototype.clearTemporalDisplayables=function(){this._temporaryDisplayables=[]},e.prototype.addDisplayable=function(t,e){e?this._temporaryDisplayables.push(t):this._displayables.push(t),this.markRedraw()},e.prototype.addDisplayables=function(t,e){e=e||!1;for(var n=0;n<t.length;n++)this.addDisplayable(t[n],e)},e.prototype.getDisplayables=function(){return this._displayables},e.prototype.getTemporalDisplayables=function(){return this._temporaryDisplayables},e.prototype.eachPendingDisplayable=function(t){for(var e=this._cursor;e<this._displayables.length;e++)t&&t(this._displayables[e]);for(e=0;e<this._temporaryDisplayables.length;e++)t&&t(this._temporaryDisplayables[e])},e.prototype.update=function(){this.updateTransform();for(var t=this._cursor;t<this._displayables.length;t++){(e=this._displayables[t]).parent=this,e.update(),e.parent=null}for(t=0;t<this._temporaryDisplayables.length;t++){var e;(e=this._temporaryDisplayables[t]).parent=this,e.update(),e.parent=null}},e.prototype.getBoundingRect=function(){if(!this._rect){for(var t=new ze(1/0,1/0,-1/0,-1/0),e=0;e<this._displayables.length;e++){var n=this._displayables[e],i=n.getBoundingRect().clone();n.needLocalTransform()&&i.applyTransform(n.getLocalTransform(ph)),t.union(i)}this._rect=t}return this._rect},e.prototype.contain=function(t,e){var n=this.transformCoordToLocal(t,e);if(this.getBoundingRect().contain(n[0],n[1]))for(var i=0;i<this._displayables.length;i++){if(this._displayables[i].contain(t,e))return!0}return!1},e}(Da),fh=Vo();function gh(t,e,n,i,r){var o;if(e&&e.ecModel){var a=e.ecModel.getUpdatePayload();o=a&&a.animation}var s="update"===t;if(e&&e.isAnimationEnabled()){var l=void 0,u=void 0,h=void 0;return i?(l=rt(i.duration,200),u=rt(i.easing,"cubicOut"),h=0):(l=e.getShallow(s?"animationDurationUpdate":"animationDuration"),u=e.getShallow(s?"animationEasingUpdate":"animationEasing"),h=e.getShallow(s?"animationDelayUpdate":"animationDelay")),o&&(null!=o.duration&&(l=o.duration),null!=o.easing&&(u=o.easing),null!=o.delay&&(h=o.delay)),X(h)&&(h=h(n,r)),X(l)&&(l=l(n)),{duration:l||0,delay:h,easing:u}}return null}function yh(t,e,n,i,r,o,a){var s,l=!1;X(r)?(a=o,o=r,r=null):q(r)&&(o=r.cb,a=r.during,l=r.isFrom,s=r.removeOpt,r=r.dataIndex);var u="leave"===t;u||e.stopAnimation("leave");var h=gh(t,i,r,u?s||{}:null,i&&i.getAnimationDelayParams?i.getAnimationDelayParams(e,r):null);if(h&&h.duration>0){var c={duration:h.duration,delay:h.delay||0,easing:h.easing,done:o,force:!!o||!!a,setToFinal:!u,scope:t,during:a};l?e.animateFrom(n,c):e.animateTo(n,c)}else e.stopAnimation(),!l&&e.attr(n),a&&a(1),o&&o()}function vh(t,e,n,i,r,o){yh("update",t,e,n,i,r,o)}function mh(t,e,n,i,r,o){yh("enter",t,e,n,i,r,o)}function xh(t){if(!t.__zr)return!0;for(var e=0;e<t.animators.length;e++){if("leave"===t.animators[e].scope)return!0}return!1}function _h(t,e,n,i,r,o){xh(t)||yh("leave",t,e,n,i,r,o)}function bh(t,e,n,i){t.removeTextContent(),t.removeTextGuideLine(),_h(t,{style:{opacity:0}},e,n,i)}function wh(t,e,n){function i(){t.parent&&t.parent.remove(t)}t.isGroup?t.traverse((function(t){t.isGroup||bh(t,e,n,i)})):bh(t,e,n,i)}function Sh(t){fh(t).oldStyle=t.style}var Mh=Math.max,Ih=Math.min,Th={};function Ch(t){return ks.extend(t)}var Dh=function(t,e){var i=xu(t,e);return function(t){function e(e){var n=t.call(this,e)||this;return n.applyTransform=i.applyTransform,n.buildPath=i.buildPath,n}return n(e,t),e}(vu)};function Ah(t,e){return Dh(t,e)}function kh(t,e){Th[t]=e}function Lh(t){if(Th.hasOwnProperty(t))return Th[t]}function Ph(t,e,n,i){var r=_u(t,e);return n&&("center"===i&&(n=Rh(n,r.getBoundingRect())),Eh(r,n)),r}function Oh(t,e,n){var i=new Ns({style:{image:t,x:e.x,y:e.y,width:e.width,height:e.height},onload:function(t){if("center"===n){var r={width:t.width,height:t.height};i.setStyle(Rh(e,r))}}});return i}function Rh(t,e){var n,i=e.width/e.height,r=t.height*i;return n=r<=t.width?t.height:(r=t.width)/i,{x:t.x+t.width/2-r/2,y:t.y+t.height/2-n/2,width:r,height:n}}var Nh=function(t,e){for(var n=[],i=t.length,r=0;r<i;r++){var o=t[r];n.push(o.getUpdatedPathProxy(!0))}var a=new ks(e);return a.createPathProxy(),a.buildPath=function(t){if(mu(t)){t.appendPath(n);var e=t.getContext();e&&t.rebuildPath(e,1)}},a};function Eh(t,e){if(t.applyTransform){var n=t.getBoundingRect().calculateTransform(e);t.applyTransform(n)}}function zh(t,e){return zs(t,t,{lineWidth:e}),t}var Vh=Bs;function Bh(t,e){for(var n=xe([]);t&&t!==e;)be(n,t.getLocalTransform(),n),t=t.parent;return n}function Fh(t,e,n){return e&&!N(e)&&(e=vr.getLocalTransform(e)),n&&(e=Ie([],e)),Wt([],t,e)}function Gh(t,e,n){var i=0===e[4]||0===e[5]||0===e[0]?1:Math.abs(2*e[4]/e[0]),r=0===e[4]||0===e[5]||0===e[2]?1:Math.abs(2*e[4]/e[2]),o=["left"===t?-i:"right"===t?i:0,"top"===t?-r:"bottom"===t?r:0];return o=Fh(o,e,n),Math.abs(o[0])>Math.abs(o[1])?o[0]>0?"right":"left":o[1]>0?"bottom":"top"}function Wh(t){return!t.isGroup}function Hh(t,e,n){if(t&&e){var i,r=(i={},t.traverse((function(t){Wh(t)&&t.anid&&(i[t.anid]=t)})),i);e.traverse((function(t){if(Wh(t)&&t.anid){var e=r[t.anid];if(e){var i=o(t);t.attr(o(e)),vh(t,i,n,rl(t).dataIndex)}}}))}function o(t){var e={x:t.x,y:t.y,rotation:t.rotation};return function(t){return null!=t.shape}(t)&&(e.shape=A({},t.shape)),e}}function Yh(t,e){return z(t,(function(t){var n=t[0];n=Mh(n,e.x),n=Ih(n,e.x+e.width);var i=t[1];return i=Mh(i,e.y),[n,i=Ih(i,e.y+e.height)]}))}function Xh(t,e){var n=Mh(t.x,e.x),i=Ih(t.x+t.width,e.x+e.width),r=Mh(t.y,e.y),o=Ih(t.y+t.height,e.y+e.height);if(i>=n&&o>=r)return{x:n,y:r,width:i-n,height:o-r}}function Uh(t,e,n){var i=A({rectHover:!0},e),r=i.style={strokeNoScale:!0};if(n=n||{x:-1,y:-1,width:2,height:2},t)return 0===t.indexOf("image://")?(r.image=t.slice(8),k(r,n),new Ns(i)):Ph(t.replace("path://",""),i,n,"center")}function Zh(t,e,n,i,r){for(var o=0,a=r[r.length-1];o<r.length;o++){var s=r[o];if(jh(t,e,n,i,s[0],s[1],a[0],a[1]))return!0;a=s}}function jh(t,e,n,i,r,o,a,s){var l,u=n-t,h=i-e,c=a-r,p=s-o,d=qh(c,p,u,h);if((l=d)<=1e-6&&l>=-1e-6)return!1;var f=t-r,g=e-o,y=qh(f,g,u,h)/d;if(y<0||y>1)return!1;var v=qh(f,g,c,p)/d;return!(v<0||v>1)}function qh(t,e,n,i){return t*i-n*e}function Kh(t){var e=t.itemTooltipOption,n=t.componentModel,i=t.itemName,r=U(e)?{formatter:e}:e,o=n.mainType,a=n.componentIndex,s={componentType:o,name:i,$vars:["name"]};s[o+"Index"]=a;var l=t.formatterParamsExtra;l&&E(G(l),(function(t){_t(s,t)||(s[t]=l[t],s.$vars.push(t))}));var u=rl(t.el);u.componentMainType=o,u.componentIndex=a,u.tooltipConfig={name:i,option:k({content:i,encodeHTMLContent:!0,formatterParams:s},r)}}function $h(t,e){var n;t.isGroup&&(n=e(t)),n||t.traverse(e)}function Jh(t,e){if(t)if(Y(t))for(var n=0;n<t.length;n++)$h(t[n],e);else $h(t,e)}kh("circle",Su),kh("ellipse",Iu),kh("sector",Fu),kh("ring",Wu),kh("polygon",Xu),kh("polyline",Zu),kh("rect",Ws),kh("line",Ku),kh("bezierCurve",th),kh("arc",nh);var Qh=Object.freeze({__proto__:null,updateProps:vh,initProps:mh,removeElement:_h,removeElementWithFadeOut:wh,isElementRemoved:xh,extendShape:Ch,extendPath:Ah,registerShape:kh,getShapeClass:Lh,makePath:Ph,makeImage:Oh,mergePath:Nh,resizePath:Eh,subPixelOptimizeLine:zh,subPixelOptimizeRect:function(t){return Vs(t.shape,t.shape,t.style),t},subPixelOptimize:Vh,getTransform:Bh,applyTransform:Fh,transformDirection:Gh,groupTransition:Hh,clipPointsByRect:Yh,clipRectByRect:Xh,createIcon:Uh,linePolygonIntersect:Zh,lineLineIntersect:jh,setTooltipConfig:Kh,traverseElements:Jh,Group:Br,Image:Ns,Text:Xs,Circle:Su,Ellipse:Iu,Sector:Fu,Ring:Wu,Polygon:Xu,Polyline:Zu,Rect:Ws,Line:Ku,BezierCurve:th,Arc:nh,IncrementalDisplayable:dh,CompoundPath:ih,LinearGradient:oh,RadialGradient:ah,BoundingRect:ze,OrientedBoundingRect:ch,Point:De,Path:ks}),tc={};function ec(t,e){for(var n=0;n<hl.length;n++){var i=hl[n],r=e[i],o=t.ensureState(i);o.style=o.style||{},o.style.text=r}var a=t.currentStates.slice();t.clearStates(!0),t.setStyle({text:e.normal}),t.useStates(a,!0)}function nc(t,e,n){var i,r=t.labelFetcher,o=t.labelDataIndex,a=t.labelDimIndex,s=e.normal;r&&(i=r.getFormattedLabel(o,"normal",null,a,s&&s.get("formatter"),null!=n?{interpolatedValue:n}:null)),null==i&&(i=X(t.defaultText)?t.defaultText(o,t,n):t.defaultText);for(var l={normal:i},u=0;u<hl.length;u++){var h=hl[u],c=e[h];l[h]=rt(r?r.getFormattedLabel(o,h,null,a,c&&c.get("formatter")):null,i)}return l}function ic(t,e,n,i){n=n||tc;for(var r=t instanceof Xs,o=!1,a=0;a<cl.length;a++){if((p=e[cl[a]])&&p.getShallow("show")){o=!0;break}}var s=r?t:t.getTextContent();if(o){r||(s||(s=new Xs,t.setTextContent(s)),t.stateProxy&&(s.stateProxy=t.stateProxy));var l=nc(n,e),u=e.normal,h=!!u.getShallow("show"),c=oc(u,i&&i.normal,n,!1,!r);c.text=l.normal,r||t.setTextConfig(ac(u,n,!1));for(a=0;a<hl.length;a++){var p,d=hl[a];if(p=e[d]){var f=s.ensureState(d),g=!!rt(p.getShallow("show"),h);if(g!==h&&(f.ignore=!g),f.style=oc(p,i&&i[d],n,!0,!r),f.style.text=l[d],!r)t.ensureState(d).textConfig=ac(p,n,!0)}}s.silent=!!u.getShallow("silent"),null!=s.style.x&&(c.x=s.style.x),null!=s.style.y&&(c.y=s.style.y),s.ignore=!h,s.useStyle(c),s.dirty(),n.enableTextSetter&&(pc(s).setLabelText=function(t){var i=nc(n,e,t);ec(s,i)})}else s&&(s.ignore=!0);t.dirty()}function rc(t,e){e=e||"label";for(var n={normal:t.getModel(e)},i=0;i<hl.length;i++){var r=hl[i];n[r]=t.getModel([r,e])}return n}function oc(t,e,n,i,r){var o={};return function(t,e,n,i,r){n=n||tc;var o,a=e.ecModel,s=a&&a.option.textStyle,l=function(t){var e;for(;t&&t!==t.ecModel;){var n=(t.option||tc).rich;if(n){e=e||{};for(var i=G(n),r=0;r<i.length;r++){e[i[r]]=1}}t=t.parentModel}return e}(e);if(l)for(var u in o={},l)if(l.hasOwnProperty(u)){var h=e.getModel(["rich",u]);hc(o[u]={},h,s,n,i,r,!1,!0)}o&&(t.rich=o);var c=e.get("overflow");c&&(t.overflow=c);var p=e.get("minMargin");null!=p&&(t.margin=p);hc(t,e,s,n,i,r,!0,!1)}(o,t,n,i,r),e&&A(o,e),o}function ac(t,e,n){e=e||{};var i,r={},o=t.getShallow("rotate"),a=rt(t.getShallow("distance"),n?null:5),s=t.getShallow("offset");return"outside"===(i=t.getShallow("position")||(n?null:"inside"))&&(i=e.defaultOutsidePosition||"top"),null!=i&&(r.position=i),null!=s&&(r.offset=s),null!=o&&(o*=Math.PI/180,r.rotation=o),null!=a&&(r.distance=a),r.outsideFill="inherit"===t.get("color")?e.inheritColor||null:"auto",r}var sc=["fontStyle","fontWeight","fontSize","fontFamily","textShadowColor","textShadowBlur","textShadowOffsetX","textShadowOffsetY"],lc=["align","lineHeight","width","height","tag","verticalAlign","ellipsis"],uc=["padding","borderWidth","borderRadius","borderDashOffset","backgroundColor","borderColor","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY"];function hc(t,e,n,i,r,o,a,s){n=!r&&n||tc;var l=i&&i.inheritColor,u=e.getShallow("color"),h=e.getShallow("textBorderColor"),c=rt(e.getShallow("opacity"),n.opacity);"inherit"!==u&&"auto"!==u||(u=l||null),"inherit"!==h&&"auto"!==h||(h=l||null),o||(u=u||n.color,h=h||n.textBorderColor),null!=u&&(t.fill=u),null!=h&&(t.stroke=h);var p=rt(e.getShallow("textBorderWidth"),n.textBorderWidth);null!=p&&(t.lineWidth=p);var d=rt(e.getShallow("textBorderType"),n.textBorderType);null!=d&&(t.lineDash=d);var f=rt(e.getShallow("textBorderDashOffset"),n.textBorderDashOffset);null!=f&&(t.lineDashOffset=f),r||null!=c||s||(c=i&&i.defaultOpacity),null!=c&&(t.opacity=c),r||o||null==t.fill&&i.inheritColor&&(t.fill=i.inheritColor);for(var g=0;g<sc.length;g++){var y=sc[g];null!=(m=rt(e.getShallow(y),n[y]))&&(t[y]=m)}for(g=0;g<lc.length;g++){y=lc[g];null!=(m=e.getShallow(y))&&(t[y]=m)}if(null==t.verticalAlign){var v=e.getShallow("baseline");null!=v&&(t.verticalAlign=v)}if(!a||!i.disableBox){for(g=0;g<uc.length;g++){var m;y=uc[g];null!=(m=e.getShallow(y))&&(t[y]=m)}var x=e.getShallow("borderType");null!=x&&(t.borderDash=x),"auto"!==t.backgroundColor&&"inherit"!==t.backgroundColor||!l||(t.backgroundColor=l),"auto"!==t.borderColor&&"inherit"!==t.borderColor||!l||(t.borderColor=l)}}function cc(t,e){var n=e&&e.getModel("textStyle");return ut([t.fontStyle||n&&n.getShallow("fontStyle")||"",t.fontWeight||n&&n.getShallow("fontWeight")||"",(t.fontSize||n&&n.getShallow("fontSize")||12)+"px",t.fontFamily||n&&n.getShallow("fontFamily")||"sans-serif"].join(" "))}var pc=Vo();function dc(t,e,n,i){if(t){var r=pc(t);r.prevValue=r.value,r.value=n;var o=e.normal;r.valueAnimation=o.get("valueAnimation"),r.valueAnimation&&(r.precision=o.get("precision"),r.defaultInterpolatedText=i,r.statesModels=e)}}function fc(t,e,n,i,r){var o=pc(t);if(o.valueAnimation&&o.prevValue!==o.value){var a=o.defaultInterpolatedText,s=rt(o.interpolatedValue,o.prevValue),l=o.value;t.percent=0,(null==o.prevValue?mh:vh)(t,{percent:1},i,e,null,(function(i){var u=Zo(n,o.precision,s,l,i);o.interpolatedValue=1===i?null:u;var h=nc({labelDataIndex:e,labelFetcher:r,defaultText:a?a(u):u+""},o.statesModels,u);ec(t,h)}))}}var gc,yc,vc=["textStyle","color"],mc=["fontStyle","fontWeight","fontSize","fontFamily","padding","lineHeight","rich","width","height","overflow"],xc=new Xs,_c=function(){function t(){}return t.prototype.getTextColor=function(t){var e=this.ecModel;return this.getShallow("color")||(!t&&e?e.get(vc):null)},t.prototype.getFont=function(){return cc({fontStyle:this.getShallow("fontStyle"),fontWeight:this.getShallow("fontWeight"),fontSize:this.getShallow("fontSize"),fontFamily:this.getShallow("fontFamily")},this.ecModel)},t.prototype.getTextRect=function(t){for(var e={text:t,verticalAlign:this.getShallow("verticalAlign")||this.getShallow("baseline")},n=0;n<mc.length;n++)e[mc[n]]=this.getShallow(mc[n]);return xc.useStyle(e),xc.update(),xc.getBoundingRect()},t}(),bc=[["lineWidth","width"],["stroke","color"],["opacity"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["shadowColor"],["lineDash","type"],["lineDashOffset","dashOffset"],["lineCap","cap"],["lineJoin","join"],["miterLimit"]],wc=ia(bc),Sc=function(){function t(){}return t.prototype.getLineStyle=function(t){return wc(this,t)},t}(),Mc=[["fill","color"],["stroke","borderColor"],["lineWidth","borderWidth"],["opacity"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["shadowColor"],["lineDash","borderType"],["lineDashOffset","borderDashOffset"],["lineCap","borderCap"],["lineJoin","borderJoin"],["miterLimit","borderMiterLimit"]],Ic=ia(Mc),Tc=function(){function t(){}return t.prototype.getItemStyle=function(t,e){return Ic(this,t,e)},t}(),Cc=function(){function t(t,e,n){this.parentModel=e,this.ecModel=n,this.option=t}return t.prototype.init=function(t,e,n){for(var i=[],r=3;r<arguments.length;r++)i[r-3]=arguments[r]},t.prototype.mergeOption=function(t,e){C(this.option,t,!0)},t.prototype.get=function(t,e){return null==t?this.option:this._doGet(this.parsePath(t),!e&&this.parentModel)},t.prototype.getShallow=function(t,e){var n=this.option,i=null==n?n:n[t];if(null==i&&!e){var r=this.parentModel;r&&(i=r.getShallow(t))}return i},t.prototype.getModel=function(e,n){var i=null!=e,r=i?this.parsePath(e):null;return new t(i?this._doGet(r):this.option,n=n||this.parentModel&&this.parentModel.getModel(this.resolveParentPath(r)),this.ecModel)},t.prototype.isEmpty=function(){return null==this.option},t.prototype.restoreData=function(){},t.prototype.clone=function(){return new(0,this.constructor)(T(this.option))},t.prototype.parsePath=function(t){return"string"==typeof t?t.split("."):t},t.prototype.resolveParentPath=function(t){return t},t.prototype.isAnimationEnabled=function(){if(!r.node&&this.option){if(null!=this.option.animation)return!!this.option.animation;if(this.parentModel)return this.parentModel.isAnimationEnabled()}},t.prototype._doGet=function(t,e){var n=this.option;if(!t)return n;for(var i=0;i<t.length&&(!t[i]||null!=(n=n&&"object"==typeof n?n[t[i]]:null));i++);return null==n&&e&&(n=e._doGet(this.resolveParentPath(t),e.parentModel)),n},t}();$o(Cc),gc=Cc,yc=["__\0is_clz",Qo++].join("_"),gc.prototype[yc]=!0,gc.isInstance=function(t){return!(!t||!t[yc])},R(Cc,Sc),R(Cc,Tc),R(Cc,oa),R(Cc,_c);var Dc=Math.round(10*Math.random());function Ac(t){return[t||"",Dc++].join("_")}function kc(t,e){return C(C({},t,!0),e,!0)}var Lc="ZH",Pc="EN",Oc=Pc,Rc={},Nc={},Ec=r.domSupported&&(document.documentElement.lang||navigator.language||navigator.browserLanguage||Oc).toUpperCase().indexOf(Lc)>-1?Lc:Oc;function zc(t,e){t=t.toUpperCase(),Nc[t]=new Cc(e),Rc[t]=e}function Vc(t){return Nc[t]}zc(Pc,{time:{month:["January","February","March","April","May","June","July","August","September","October","November","December"],monthAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayOfWeek:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayOfWeekAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]},legend:{selector:{all:"All",inverse:"Inv"}},toolbox:{brush:{title:{rect:"Box Select",polygon:"Lasso Select",lineX:"Horizontally Select",lineY:"Vertically Select",keep:"Keep Selections",clear:"Clear Selections"}},dataView:{title:"Data View",lang:["Data View","Close","Refresh"]},dataZoom:{title:{zoom:"Zoom",back:"Zoom Reset"}},magicType:{title:{line:"Switch to Line Chart",bar:"Switch to Bar Chart",stack:"Stack",tiled:"Tile"}},restore:{title:"Restore"},saveAsImage:{title:"Save as Image",lang:["Right Click to Save Image"]}},series:{typeNames:{pie:"Pie chart",bar:"Bar chart",line:"Line chart",scatter:"Scatter plot",effectScatter:"Ripple scatter plot",radar:"Radar chart",tree:"Tree",treemap:"Treemap",boxplot:"Boxplot",candlestick:"Candlestick",k:"K line chart",heatmap:"Heat map",map:"Map",parallel:"Parallel coordinate map",lines:"Line graph",graph:"Relationship graph",sankey:"Sankey diagram",funnel:"Funnel chart",gauge:"Gauge",pictorialBar:"Pictorial bar",themeRiver:"Theme River Map",sunburst:"Sunburst",custom:"Custom chart",chart:"Chart"}},aria:{general:{withTitle:'This is a chart about "{title}"',withoutTitle:"This is a chart"},series:{single:{prefix:"",withName:" with type {seriesType} named {seriesName}.",withoutName:" with type {seriesType}."},multiple:{prefix:". It consists of {seriesCount} series count.",withName:" The {seriesId} series is a {seriesType} representing {seriesName}.",withoutName:" The {seriesId} series is a {seriesType}.",separator:{middle:"",end:""}}},data:{allData:"The data is as follows: ",partialData:"The first {displayCnt} items are: ",withName:"the data for {name} is {value}",withoutName:"{value}",separator:{middle:", ",end:". "}}}}),zc(Lc,{time:{month:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],monthAbbr:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],dayOfWeek:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],dayOfWeekAbbr:["日","一","二","三","四","五","六"]},legend:{selector:{all:"全选",inverse:"反选"}},toolbox:{brush:{title:{rect:"矩形选择",polygon:"圈选",lineX:"横向选择",lineY:"纵向选择",keep:"保持选择",clear:"清除选择"}},dataView:{title:"数据视图",lang:["数据视图","关闭","刷新"]},dataZoom:{title:{zoom:"区域缩放",back:"区域缩放还原"}},magicType:{title:{line:"切换为折线图",bar:"切换为柱状图",stack:"切换为堆叠",tiled:"切换为平铺"}},restore:{title:"还原"},saveAsImage:{title:"保存为图片",lang:["右键另存为图片"]}},series:{typeNames:{pie:"饼图",bar:"柱状图",line:"折线图",scatter:"散点图",effectScatter:"涟漪散点图",radar:"雷达图",tree:"树图",treemap:"矩形树图",boxplot:"箱型图",candlestick:"K线图",k:"K线图",heatmap:"热力图",map:"地图",parallel:"平行坐标图",lines:"线图",graph:"关系图",sankey:"桑基图",funnel:"漏斗图",gauge:"仪表盘图",pictorialBar:"象形柱图",themeRiver:"主题河流图",sunburst:"旭日图",custom:"自定义图表",chart:"图表"}},aria:{general:{withTitle:"这是一个关于“{title}”的图表。",withoutTitle:"这是一个图表,"},series:{single:{prefix:"",withName:"图表类型是{seriesType},表示{seriesName}。",withoutName:"图表类型是{seriesType}。"},multiple:{prefix:"它由{seriesCount}个图表系列组成。",withName:"第{seriesId}个系列是一个表示{seriesName}的{seriesType},",withoutName:"第{seriesId}个系列是一个{seriesType},",separator:{middle:";",end:"。"}}},data:{allData:"其数据是——",partialData:"其中,前{displayCnt}项是——",withName:"{name}的数据是{value}",withoutName:"{value}",separator:{middle:",",end:""}}}});var Bc=1e3,Fc=6e4,Gc=36e5,Wc=864e5,Hc=31536e6,Yc={year:"{yyyy}",month:"{MMM}",day:"{d}",hour:"{HH}:{mm}",minute:"{HH}:{mm}",second:"{HH}:{mm}:{ss}",millisecond:"{HH}:{mm}:{ss} {SSS}",none:"{yyyy}-{MM}-{dd} {HH}:{mm}:{ss} {SSS}"},Xc="{yyyy}-{MM}-{dd}",Uc={year:"{yyyy}",month:"{yyyy}-{MM}",day:Xc,hour:Xc+" "+Yc.hour,minute:Xc+" "+Yc.minute,second:Xc+" "+Yc.second,millisecond:Yc.none},Zc=["year","month","day","hour","minute","second","millisecond"],jc=["year","half-year","quarter","month","week","half-week","day","half-day","quarter-day","hour","minute","second","millisecond"];function qc(t,e){return"0000".substr(0,e-(t+="").length)+t}function Kc(t){switch(t){case"half-year":case"quarter":return"month";case"week":case"half-week":return"day";case"half-day":case"quarter-day":return"hour";default:return t}}function $c(t){return t===Kc(t)}function Jc(t,e,n,i){var r=uo(t),o=r[ep(n)](),a=r[np(n)]()+1,s=Math.floor((a-1)/3)+1,l=r[ip(n)](),u=r["get"+(n?"UTC":"")+"Day"](),h=r[rp(n)](),c=(h-1)%12+1,p=r[op(n)](),d=r[ap(n)](),f=r[sp(n)](),g=h>=12?"pm":"am",y=g.toUpperCase(),v=(i instanceof Cc?i:Vc(i||Ec)||Nc[Oc]).getModel("time"),m=v.get("month"),x=v.get("monthAbbr"),_=v.get("dayOfWeek"),b=v.get("dayOfWeekAbbr");return(e||"").replace(/{a}/g,g+"").replace(/{A}/g,y+"").replace(/{yyyy}/g,o+"").replace(/{yy}/g,qc(o%100+"",2)).replace(/{Q}/g,s+"").replace(/{MMMM}/g,m[a-1]).replace(/{MMM}/g,x[a-1]).replace(/{MM}/g,qc(a,2)).replace(/{M}/g,a+"").replace(/{dd}/g,qc(l,2)).replace(/{d}/g,l+"").replace(/{eeee}/g,_[u]).replace(/{ee}/g,b[u]).replace(/{e}/g,u+"").replace(/{HH}/g,qc(h,2)).replace(/{H}/g,h+"").replace(/{hh}/g,qc(c+"",2)).replace(/{h}/g,c+"").replace(/{mm}/g,qc(p,2)).replace(/{m}/g,p+"").replace(/{ss}/g,qc(d,2)).replace(/{s}/g,d+"").replace(/{SSS}/g,qc(f,3)).replace(/{S}/g,f+"")}function Qc(t,e){var n=uo(t),i=n[np(e)]()+1,r=n[ip(e)](),o=n[rp(e)](),a=n[op(e)](),s=n[ap(e)](),l=0===n[sp(e)](),u=l&&0===s,h=u&&0===a,c=h&&0===o,p=c&&1===r;return p&&1===i?"year":p?"month":c?"day":h?"hour":u?"minute":l?"second":"millisecond"}function tp(t,e,n){var i=j(t)?uo(t):t;switch(e=e||Qc(t,n)){case"year":return i[ep(n)]();case"half-year":return i[np(n)]()>=6?1:0;case"quarter":return Math.floor((i[np(n)]()+1)/4);case"month":return i[np(n)]();case"day":return i[ip(n)]();case"half-day":return i[rp(n)]()/24;case"hour":return i[rp(n)]();case"minute":return i[op(n)]();case"second":return i[ap(n)]();case"millisecond":return i[sp(n)]()}}function ep(t){return t?"getUTCFullYear":"getFullYear"}function np(t){return t?"getUTCMonth":"getMonth"}function ip(t){return t?"getUTCDate":"getDate"}function rp(t){return t?"getUTCHours":"getHours"}function op(t){return t?"getUTCMinutes":"getMinutes"}function ap(t){return t?"getUTCSeconds":"getSeconds"}function sp(t){return t?"getUTCMilliseconds":"getMilliseconds"}function lp(t){return t?"setUTCFullYear":"setFullYear"}function up(t){return t?"setUTCMonth":"setMonth"}function hp(t){return t?"setUTCDate":"setDate"}function cp(t){return t?"setUTCHours":"setHours"}function pp(t){return t?"setUTCMinutes":"setMinutes"}function dp(t){return t?"setUTCSeconds":"setSeconds"}function fp(t){return t?"setUTCMilliseconds":"setMilliseconds"}function gp(t){if(!vo(t))return U(t)?t:"-";var e=(t+"").split(".");return e[0].replace(/(\d{1,3})(?=(?:\d{3})+(?!\d))/g,"$1,")+(e.length>1?"."+e[1]:"")}function yp(t,e){return t=(t||"").toLowerCase().replace(/-(.)/g,(function(t,e){return e.toUpperCase()})),e&&t&&(t=t.charAt(0).toUpperCase()+t.slice(1)),t}var vp=st;function mp(t,e,n){function i(t){return t&&ut(t)?t:"-"}function r(t){return!(null==t||isNaN(t)||!isFinite(t))}var o="time"===e,a=t instanceof Date;if(o||a){var s=o?uo(t):t;if(!isNaN(+s))return Jc(s,"{yyyy}-{MM}-{dd} {HH}:{mm}:{ss}",n);if(a)return"-"}if("ordinal"===e)return Z(t)?i(t):j(t)&&r(t)?t+"":"-";var l=yo(t);return r(l)?gp(l):Z(t)?i(t):"boolean"==typeof t?t+"":"-"}var xp=["a","b","c","d","e","f","g"],_p=function(t,e){return"{"+t+(null==e?"":e)+"}"};function bp(t,e,n){Y(e)||(e=[e]);var i=e.length;if(!i)return"";for(var r=e[0].$vars||[],o=0;o<r.length;o++){var a=xp[o];t=t.replace(_p(a),_p(a,0))}for(var s=0;s<i;s++)for(var l=0;l<r.length;l++){var u=e[s][r[l]];t=t.replace(_p(xp[l],s),n?re(u):u)}return t}function wp(t,e){var n=U(t)?{color:t,extraCssText:e}:t||{},i=n.color,r=n.type;e=n.extraCssText;var o=n.renderMode||"html";return i?"html"===o?"subItem"===r?'<span style="display:inline-block;vertical-align:middle;margin-right:8px;margin-left:3px;border-radius:4px;width:4px;height:4px;background-color:'+re(i)+";"+(e||"")+'"></span>':'<span style="display:inline-block;margin-right:4px;border-radius:10px;width:10px;height:10px;background-color:'+re(i)+";"+(e||"")+'"></span>':{renderMode:o,content:"{"+(n.markerId||"markerX")+"|} ",style:"subItem"===r?{width:4,height:4,borderRadius:2,backgroundColor:i}:{width:10,height:10,borderRadius:5,backgroundColor:i}}:""}function Sp(t,e){return e=e||"transparent",U(t)?t:q(t)&&t.colorStops&&(t.colorStops[0]||{}).color||e}function Mp(t,e){if("_blank"===e||"blank"===e){var n=window.open();n.opener=null,n.location.href=t}else window.open(t,e)}var Ip=E,Tp=["left","right","top","bottom","width","height"],Cp=[["width","left","right"],["height","top","bottom"]];function Dp(t,e,n,i,r){var o=0,a=0;null==i&&(i=1/0),null==r&&(r=1/0);var s=0;e.eachChild((function(l,u){var h,c,p=l.getBoundingRect(),d=e.childAt(u+1),f=d&&d.getBoundingRect();if("horizontal"===t){var g=p.width+(f?-f.x+p.x:0);(h=o+g)>i||l.newline?(o=0,h=g,a+=s+n,s=p.height):s=Math.max(s,p.height)}else{var y=p.height+(f?-f.y+p.y:0);(c=a+y)>r||l.newline?(o+=s+n,a=0,c=y,s=p.width):s=Math.max(s,p.width)}l.newline||(l.x=o,l.y=a,l.markRedraw(),"horizontal"===t?o=h+n:a=c+n)}))}var Ap=Dp;H(Dp,"vertical"),H(Dp,"horizontal");function kp(t,e,n){n=vp(n||0);var i=e.width,r=e.height,o=$r(t.left,i),a=$r(t.top,r),s=$r(t.right,i),l=$r(t.bottom,r),u=$r(t.width,i),h=$r(t.height,r),c=n[2]+n[0],p=n[1]+n[3],d=t.aspect;switch(isNaN(u)&&(u=i-s-p-o),isNaN(h)&&(h=r-l-c-a),null!=d&&(isNaN(u)&&isNaN(h)&&(d>i/r?u=.8*i:h=.8*r),isNaN(u)&&(u=d*h),isNaN(h)&&(h=u/d)),isNaN(o)&&(o=i-s-u-p),isNaN(a)&&(a=r-l-h-c),t.left||t.right){case"center":o=i/2-u/2-n[3];break;case"right":o=i-u-p}switch(t.top||t.bottom){case"middle":case"center":a=r/2-h/2-n[0];break;case"bottom":a=r-h-c}o=o||0,a=a||0,isNaN(u)&&(u=i-p-o-(s||0)),isNaN(h)&&(h=r-c-a-(l||0));var f=new ze(o+n[3],a+n[0],u,h);return f.margin=n,f}function Lp(t,e,n,i,r,o){var a,s=!r||!r.hv||r.hv[0],l=!r||!r.hv||r.hv[1],u=r&&r.boundingMode||"all";if((o=o||t).x=t.x,o.y=t.y,!s&&!l)return!1;if("raw"===u)a="group"===t.type?new ze(0,0,+e.width||0,+e.height||0):t.getBoundingRect();else if(a=t.getBoundingRect(),t.needLocalTransform()){var h=t.getLocalTransform();(a=a.clone()).applyTransform(h)}var c=kp(k({width:a.width,height:a.height},e),n,i),p=s?c.x-a.x:0,d=l?c.y-a.y:0;return"raw"===u?(o.x=p,o.y=d):(o.x+=p,o.y+=d),o===t&&t.markRedraw(),!0}function Pp(t){var e=t.layoutMode||t.constructor.layoutMode;return q(e)?e:e?{type:e}:null}function Op(t,e,n){var i=n&&n.ignoreSize;!Y(i)&&(i=[i,i]);var r=a(Cp[0],0),o=a(Cp[1],1);function a(n,r){var o={},a=0,u={},h=0;if(Ip(n,(function(e){u[e]=t[e]})),Ip(n,(function(t){s(e,t)&&(o[t]=u[t]=e[t]),l(o,t)&&a++,l(u,t)&&h++})),i[r])return l(e,n[1])?u[n[2]]=null:l(e,n[2])&&(u[n[1]]=null),u;if(2!==h&&a){if(a>=2)return o;for(var c=0;c<n.length;c++){var p=n[c];if(!s(o,p)&&s(t,p)){o[p]=t[p];break}}return o}return u}function s(t,e){return t.hasOwnProperty(e)}function l(t,e){return null!=t[e]&&"auto"!==t[e]}function u(t,e,n){Ip(t,(function(t){e[t]=n[t]}))}u(Cp[0],t,r),u(Cp[1],t,o)}function Rp(t){return Np({},t)}function Np(t,e){return e&&t&&Ip(Tp,(function(n){e.hasOwnProperty(n)&&(t[n]=e[n])})),t}var Ep=Vo(),zp=function(t){function e(e,n,i){var r=t.call(this,e,n,i)||this;return r.uid=Ac("ec_cpt_model"),r}return n(e,t),e.prototype.init=function(t,e,n){this.mergeDefaultAndTheme(t,n)},e.prototype.mergeDefaultAndTheme=function(t,e){var n=Pp(this),i=n?Rp(t):{};C(t,e.getTheme().get(this.mainType)),C(t,this.getDefaultOption()),n&&Op(t,i,n)},e.prototype.mergeOption=function(t,e){C(this.option,t,!0);var n=Pp(this);n&&Op(this.option,t,n)},e.prototype.optionUpdated=function(t,e){},e.prototype.getDefaultOption=function(){var t=this.constructor;if(!function(t){return!(!t||!t[qo])}(t))return t.defaultOption;var e=Ep(this);if(!e.defaultOption){for(var n=[],i=t;i;){var r=i.prototype.defaultOption;r&&n.push(r),i=i.superClass}for(var o={},a=n.length-1;a>=0;a--)o=C(o,n[a],!0);e.defaultOption=o}return e.defaultOption},e.prototype.getReferringComponents=function(t,e){var n=t+"Index",i=t+"Id";return Yo(this.ecModel,t,{index:this.get(n,!0),id:this.get(i,!0)},e)},e.prototype.getBoxLayoutParams=function(){var t=this;return{left:t.get("left"),top:t.get("top"),right:t.get("right"),bottom:t.get("bottom"),width:t.get("width"),height:t.get("height")}},e.prototype.getZLevelKey=function(){return""},e.prototype.setZLevel=function(t){this.option.zlevel=t},e.protoInitialize=function(){var t=e.prototype;t.type="component",t.id="",t.name="",t.mainType="",t.subType="",t.componentIndex=0}(),e}(Cc);Jo(zp,Cc),na(zp),function(t){var e={};t.registerSubTypeDefaulter=function(t,n){var i=Ko(t);e[i.main]=n},t.determineSubType=function(n,i){var r=i.type;if(!r){var o=Ko(n).main;t.hasSubTypes(n)&&e[o]&&(r=e[o](i))}return r}}(zp),function(t,e){function n(t,e){return t[e]||(t[e]={predecessor:[],successor:[]}),t[e]}t.topologicalTravel=function(t,i,r,o){if(t.length){var a=function(t){var i={},r=[];return E(t,(function(o){var a=n(i,o),s=function(t,e){var n=[];return E(t,(function(t){P(e,t)>=0&&n.push(t)})),n}(a.originalDeps=e(o),t);a.entryCount=s.length,0===a.entryCount&&r.push(o),E(s,(function(t){P(a.predecessor,t)<0&&a.predecessor.push(t);var e=n(i,t);P(e.successor,t)<0&&e.successor.push(o)}))})),{graph:i,noEntryList:r}}(i),s=a.graph,l=a.noEntryList,u={};for(E(t,(function(t){u[t]=!0}));l.length;){var h=l.pop(),c=s[h],p=!!u[h];p&&(r.call(o,h,c.originalDeps.slice()),delete u[h]),E(c.successor,p?f:d)}E(u,(function(){var t="";throw new Error(t)}))}function d(t){s[t].entryCount--,0===s[t].entryCount&&l.push(t)}function f(t){u[t]=!0,d(t)}}}(zp,(function(t){var e=[];E(zp.getClassesByMainType(t),(function(t){e=e.concat(t.dependencies||t.prototype.dependencies||[])})),e=z(e,(function(t){return Ko(t).main})),"dataset"!==t&&P(e,"dataset")<=0&&e.unshift("dataset");return e}));var Vp="";"undefined"!=typeof navigator&&(Vp=navigator.platform||"");var Bp="rgba(0, 0, 0, 0.2)",Fp={darkMode:"auto",colorBy:"series",color:["#5470c6","#91cc75","#fac858","#ee6666","#73c0de","#3ba272","#fc8452","#9a60b4","#ea7ccc"],gradientColor:["#f6efa6","#d88273","#bf444c"],aria:{decal:{decals:[{color:Bp,dashArrayX:[1,0],dashArrayY:[2,5],symbolSize:1,rotation:Math.PI/6},{color:Bp,symbol:"circle",dashArrayX:[[8,8],[0,8,8,0]],dashArrayY:[6,0],symbolSize:.8},{color:Bp,dashArrayX:[1,0],dashArrayY:[4,3],rotation:-Math.PI/4},{color:Bp,dashArrayX:[[6,6],[0,6,6,0]],dashArrayY:[6,0]},{color:Bp,dashArrayX:[[1,0],[1,6]],dashArrayY:[1,0,6,0],rotation:Math.PI/4},{color:Bp,symbol:"triangle",dashArrayX:[[9,9],[0,9,9,0]],dashArrayY:[7,2],symbolSize:.75}]}},textStyle:{fontFamily:Vp.match(/^Win/)?"Microsoft YaHei":"sans-serif",fontSize:12,fontStyle:"normal",fontWeight:"normal"},blendMode:null,stateAnimation:{duration:300,easing:"cubicOut"},animation:"auto",animationDuration:1e3,animationDurationUpdate:500,animationEasing:"cubicInOut",animationEasingUpdate:"cubicInOut",animationThreshold:2e3,progressiveThreshold:3e3,progressive:400,hoverLayerThreshold:3e3,useUTC:!1},Gp=yt(["tooltip","label","itemName","itemId","itemGroupId","itemChildGroupId","seriesName"]),Wp="original",Hp="arrayRows",Yp="objectRows",Xp="keyedColumns",Up="typedArray",Zp="unknown",jp="column",qp="row",Kp=1,$p=2,Jp=3,Qp=Vo();function td(t,e,n){var i={},r=nd(e);if(!r||!t)return i;var o,a,s=[],l=[],u=e.ecModel,h=Qp(u).datasetMap,c=r.uid+"_"+n.seriesLayoutBy;E(t=t.slice(),(function(e,n){var r=q(e)?e:t[n]={name:e};"ordinal"===r.type&&null==o&&(o=n,a=f(r)),i[r.name]=[]}));var p=h.get(c)||h.set(c,{categoryWayDim:a,valueWayDim:0});function d(t,e,n){for(var i=0;i<n;i++)t.push(e+i)}function f(t){var e=t.dimsDef;return e?e.length:1}return E(t,(function(t,e){var n=t.name,r=f(t);if(null==o){var a=p.valueWayDim;d(i[n],a,r),d(l,a,r),p.valueWayDim+=r}else if(o===e)d(i[n],0,r),d(s,0,r);else{a=p.categoryWayDim;d(i[n],a,r),d(l,a,r),p.categoryWayDim+=r}})),s.length&&(i.itemName=s),l.length&&(i.seriesName=l),i}function ed(t,e,n){var i={};if(!nd(t))return i;var r,o=e.sourceFormat,a=e.dimensionsDefine;o!==Yp&&o!==Xp||E(a,(function(t,e){"name"===(q(t)?t.name:t)&&(r=e)}));var s=function(){for(var t={},i={},s=[],l=0,u=Math.min(5,n);l<u;l++){var h=rd(e.data,o,e.seriesLayoutBy,a,e.startIndex,l);s.push(h);var c=h===Jp;if(c&&null==t.v&&l!==r&&(t.v=l),(null==t.n||t.n===t.v||!c&&s[t.n]===Jp)&&(t.n=l),p(t)&&s[t.n]!==Jp)return t;c||(h===$p&&null==i.v&&l!==r&&(i.v=l),null!=i.n&&i.n!==i.v||(i.n=l))}function p(t){return null!=t.v&&null!=t.n}return p(t)?t:p(i)?i:null}();if(s){i.value=[s.v];var l=null!=r?r:s.n;i.itemName=[l],i.seriesName=[l]}return i}function nd(t){if(!t.get("data",!0))return Yo(t.ecModel,"dataset",{index:t.get("datasetIndex",!0),id:t.get("datasetId",!0)},Wo).models[0]}function id(t,e){return rd(t.data,t.sourceFormat,t.seriesLayoutBy,t.dimensionsDefine,t.startIndex,e)}function rd(t,e,n,i,r,o){var a,s,l;if($(t))return Jp;if(i){var u=i[o];q(u)?(s=u.name,l=u.type):U(u)&&(s=u)}if(null!=l)return"ordinal"===l?Kp:Jp;if(e===Hp){var h=t;if(n===qp){for(var c=h[o],p=0;p<(c||[]).length&&p<5;p++)if(null!=(a=m(c[r+p])))return a}else for(p=0;p<h.length&&p<5;p++){var d=h[r+p];if(d&&null!=(a=m(d[o])))return a}}else if(e===Yp){var f=t;if(!s)return Jp;for(p=0;p<f.length&&p<5;p++){if((y=f[p])&&null!=(a=m(y[s])))return a}}else if(e===Xp){if(!s)return Jp;if(!(c=t[s])||$(c))return Jp;for(p=0;p<c.length&&p<5;p++)if(null!=(a=m(c[p])))return a}else if(e===Wp){var g=t;for(p=0;p<g.length&&p<5;p++){var y,v=Ao(y=g[p]);if(!Y(v))return Jp;if(null!=(a=m(v[o])))return a}}function m(t){var e=U(t);return null!=t&&Number.isFinite(Number(t))&&""!==t?e?$p:Jp:e&&"-"!==t?Kp:void 0}return Jp}var od=yt();var ad,sd,ld,ud=Vo(),hd=Vo(),cd=function(){function t(){}return t.prototype.getColorFromPalette=function(t,e,n){var i=To(this.get("color",!0)),r=this.get("colorLayer",!0);return dd(this,ud,i,r,t,e,n)},t.prototype.clearColorPalette=function(){!function(t,e){e(t).paletteIdx=0,e(t).paletteNameMap={}}(this,ud)},t}();function pd(t,e,n,i){var r=To(t.get(["aria","decal","decals"]));return dd(t,hd,r,null,e,n,i)}function dd(t,e,n,i,r,o,a){var s=e(o=o||t),l=s.paletteIdx||0,u=s.paletteNameMap=s.paletteNameMap||{};if(u.hasOwnProperty(r))return u[r];var h=null!=a&&i?function(t,e){for(var n=t.length,i=0;i<n;i++)if(t[i].length>e)return t[i];return t[n-1]}(i,a):n;if((h=h||n)&&h.length){var c=h[l];return r&&(u[r]=c),s.paletteIdx=(l+1)%h.length,c}}var fd="\0_ec_inner";var gd=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.init=function(t,e,n,i,r,o){i=i||{},this.option=null,this._theme=new Cc(i),this._locale=new Cc(r),this._optionManager=o},e.prototype.setOption=function(t,e,n){var i=md(e);this._optionManager.setOption(t,n,i),this._resetOption(null,i)},e.prototype.resetOption=function(t,e){return this._resetOption(t,md(e))},e.prototype._resetOption=function(t,e){var n=!1,i=this._optionManager;if(!t||"recreate"===t){var r=i.mountOption("recreate"===t);0,this.option&&"recreate"!==t?(this.restoreData(),this._mergeOption(r,e)):ld(this,r),n=!0}if("timeline"!==t&&"media"!==t||this.restoreData(),!t||"recreate"===t||"timeline"===t){var o=i.getTimelineOption(this);o&&(n=!0,this._mergeOption(o,e))}if(!t||"recreate"===t||"media"===t){var a=i.getMediaOption(this);a.length&&E(a,(function(t){n=!0,this._mergeOption(t,e)}),this)}return n},e.prototype.mergeOption=function(t){this._mergeOption(t,null)},e.prototype._mergeOption=function(t,e){var n=this.option,i=this._componentsMap,r=this._componentsCount,o=[],a=yt(),s=e&&e.replaceMergeMainTypeMap;Qp(this).datasetMap=yt(),E(t,(function(t,e){null!=t&&(zp.hasClass(e)?e&&(o.push(e),a.set(e,!0)):n[e]=null==n[e]?T(t):C(n[e],t,!0))})),s&&s.each((function(t,e){zp.hasClass(e)&&!a.get(e)&&(o.push(e),a.set(e,!0))})),zp.topologicalTravel(o,zp.getAllClassMainTypes(),(function(e){var o=function(t,e,n){var i=od.get(e);if(!i)return n;var r=i(t);return r?n.concat(r):n}(this,e,To(t[e])),a=i.get(e),l=a?s&&s.get(e)?"replaceMerge":"normalMerge":"replaceAll",u=Lo(a,o,l);(function(t,e,n){E(t,(function(t){var i=t.newOption;q(i)&&(t.keyInfo.mainType=e,t.keyInfo.subType=function(t,e,n,i){return e.type?e.type:n?n.subType:i.determineSubType(t,e)}(e,i,t.existing,n))}))})(u,e,zp),n[e]=null,i.set(e,null),r.set(e,0);var h,c=[],p=[],d=0;E(u,(function(t,n){var i=t.existing,r=t.newOption;if(r){var o="series"===e,a=zp.getClass(e,t.keyInfo.subType,!o);if(!a)return;if("tooltip"===e){if(h)return void 0;h=!0}if(i&&i.constructor===a)i.name=t.keyInfo.name,i.mergeOption(r,this),i.optionUpdated(r,!1);else{var s=A({componentIndex:n},t.keyInfo);A(i=new a(r,this,this,s),s),t.brandNew&&(i.__requireNewView=!0),i.init(r,this,this),i.optionUpdated(null,!0)}}else i&&(i.mergeOption({},this),i.optionUpdated({},!1));i?(c.push(i.option),p.push(i),d++):(c.push(void 0),p.push(void 0))}),this),n[e]=c,i.set(e,p),r.set(e,d),"series"===e&&ad(this)}),this),this._seriesIndices||ad(this)},e.prototype.getOption=function(){var t=T(this.option);return E(t,(function(e,n){if(zp.hasClass(n)){for(var i=To(e),r=i.length,o=!1,a=r-1;a>=0;a--)i[a]&&!Eo(i[a])?o=!0:(i[a]=null,!o&&r--);i.length=r,t[n]=i}})),delete t[fd],t},e.prototype.getTheme=function(){return this._theme},e.prototype.getLocaleModel=function(){return this._locale},e.prototype.setUpdatePayload=function(t){this._payload=t},e.prototype.getUpdatePayload=function(){return this._payload},e.prototype.getComponent=function(t,e){var n=this._componentsMap.get(t);if(n){var i=n[e||0];if(i)return i;if(null==e)for(var r=0;r<n.length;r++)if(n[r])return n[r]}},e.prototype.queryComponents=function(t){var e=t.mainType;if(!e)return[];var n,i=t.index,r=t.id,o=t.name,a=this._componentsMap.get(e);return a&&a.length?(null!=i?(n=[],E(To(i),(function(t){a[t]&&n.push(a[t])}))):n=null!=r?yd("id",r,a):null!=o?yd("name",o,a):B(a,(function(t){return!!t})),vd(n,t)):[]},e.prototype.findComponents=function(t){var e,n,i,r,o,a=t.query,s=t.mainType,l=(n=s+"Index",i=s+"Id",r=s+"Name",!(e=a)||null==e[n]&&null==e[i]&&null==e[r]?null:{mainType:s,index:e[n],id:e[i],name:e[r]}),u=l?this.queryComponents(l):B(this._componentsMap.get(s),(function(t){return!!t}));return o=vd(u,t),t.filter?B(o,t.filter):o},e.prototype.eachComponent=function(t,e,n){var i=this._componentsMap;if(X(t)){var r=e,o=t;i.each((function(t,e){for(var n=0;t&&n<t.length;n++){var i=t[n];i&&o.call(r,e,i,i.componentIndex)}}))}else for(var a=U(t)?i.get(t):q(t)?this.findComponents(t):null,s=0;a&&s<a.length;s++){var l=a[s];l&&e.call(n,l,l.componentIndex)}},e.prototype.getSeriesByName=function(t){var e=Ro(t,null);return B(this._componentsMap.get("series"),(function(t){return!!t&&null!=e&&t.name===e}))},e.prototype.getSeriesByIndex=function(t){return this._componentsMap.get("series")[t]},e.prototype.getSeriesByType=function(t){return B(this._componentsMap.get("series"),(function(e){return!!e&&e.subType===t}))},e.prototype.getSeries=function(){return B(this._componentsMap.get("series"),(function(t){return!!t}))},e.prototype.getSeriesCount=function(){return this._componentsCount.get("series")},e.prototype.eachSeries=function(t,e){sd(this),E(this._seriesIndices,(function(n){var i=this._componentsMap.get("series")[n];t.call(e,i,n)}),this)},e.prototype.eachRawSeries=function(t,e){E(this._componentsMap.get("series"),(function(n){n&&t.call(e,n,n.componentIndex)}))},e.prototype.eachSeriesByType=function(t,e,n){sd(this),E(this._seriesIndices,(function(i){var r=this._componentsMap.get("series")[i];r.subType===t&&e.call(n,r,i)}),this)},e.prototype.eachRawSeriesByType=function(t,e,n){return E(this.getSeriesByType(t),e,n)},e.prototype.isSeriesFiltered=function(t){return sd(this),null==this._seriesIndicesMap.get(t.componentIndex)},e.prototype.getCurrentSeriesIndices=function(){return(this._seriesIndices||[]).slice()},e.prototype.filterSeries=function(t,e){sd(this);var n=[];E(this._seriesIndices,(function(i){var r=this._componentsMap.get("series")[i];t.call(e,r,i)&&n.push(i)}),this),this._seriesIndices=n,this._seriesIndicesMap=yt(n)},e.prototype.restoreData=function(t){ad(this);var e=this._componentsMap,n=[];e.each((function(t,e){zp.hasClass(e)&&n.push(e)})),zp.topologicalTravel(n,zp.getAllClassMainTypes(),(function(n){E(e.get(n),(function(e){!e||"series"===n&&function(t,e){if(e){var n=e.seriesIndex,i=e.seriesId,r=e.seriesName;return null!=n&&t.componentIndex!==n||null!=i&&t.id!==i||null!=r&&t.name!==r}}(e,t)||e.restoreData()}))}))},e.internalField=(ad=function(t){var e=t._seriesIndices=[];E(t._componentsMap.get("series"),(function(t){t&&e.push(t.componentIndex)})),t._seriesIndicesMap=yt(e)},sd=function(t){},void(ld=function(t,e){t.option={},t.option[fd]=1,t._componentsMap=yt({series:[]}),t._componentsCount=yt();var n=e.aria;q(n)&&null==n.enabled&&(n.enabled=!0),function(t,e){var n=t.color&&!t.colorLayer;E(e,(function(e,i){"colorLayer"===i&&n||zp.hasClass(i)||("object"==typeof e?t[i]=t[i]?C(t[i],e,!1):T(e):null==t[i]&&(t[i]=e))}))}(e,t._theme.option),C(e,Fp,!1),t._mergeOption(e,null)})),e}(Cc);function yd(t,e,n){if(Y(e)){var i=yt();return E(e,(function(t){null!=t&&(null!=Ro(t,null)&&i.set(t,!0))})),B(n,(function(e){return e&&i.get(e[t])}))}var r=Ro(e,null);return B(n,(function(e){return e&&null!=r&&e[t]===r}))}function vd(t,e){return e.hasOwnProperty("subType")?B(t,(function(t){return t&&t.subType===e.subType})):t}function md(t){var e=yt();return t&&E(To(t.replaceMerge),(function(t){e.set(t,!0)})),{replaceMergeMainTypeMap:e}}R(gd,cd);var xd=["getDom","getZr","getWidth","getHeight","getDevicePixelRatio","dispatchAction","isSSR","isDisposed","on","off","getDataURL","getConnectedDataURL","getOption","getId","updateLabelLayout"],_d=function(t){E(xd,(function(e){this[e]=W(t[e],t)}),this)},bd={},wd=function(){function t(){this._coordinateSystems=[]}return t.prototype.create=function(t,e){var n=[];E(bd,(function(i,r){var o=i.create(t,e);n=n.concat(o||[])})),this._coordinateSystems=n},t.prototype.update=function(t,e){E(this._coordinateSystems,(function(n){n.update&&n.update(t,e)}))},t.prototype.getCoordinateSystems=function(){return this._coordinateSystems.slice()},t.register=function(t,e){bd[t]=e},t.get=function(t){return bd[t]},t}(),Sd=/^(min|max)?(.+)$/,Md=function(){function t(t){this._timelineOptions=[],this._mediaList=[],this._currentMediaIndices=[],this._api=t}return t.prototype.setOption=function(t,e,n){t&&(E(To(t.series),(function(t){t&&t.data&&$(t.data)&&ct(t.data)})),E(To(t.dataset),(function(t){t&&t.source&&$(t.source)&&ct(t.source)}))),t=T(t);var i=this._optionBackup,r=function(t,e,n){var i,r,o=[],a=t.baseOption,s=t.timeline,l=t.options,u=t.media,h=!!t.media,c=!!(l||s||a&&a.timeline);a?(r=a).timeline||(r.timeline=s):((c||h)&&(t.options=t.media=null),r=t);h&&Y(u)&&E(u,(function(t){t&&t.option&&(t.query?o.push(t):i||(i=t))}));function p(t){E(e,(function(e){e(t,n)}))}return p(r),E(l,(function(t){return p(t)})),E(o,(function(t){return p(t.option)})),{baseOption:r,timelineOptions:l||[],mediaDefault:i,mediaList:o}}(t,e,!i);this._newBaseOption=r.baseOption,i?(r.timelineOptions.length&&(i.timelineOptions=r.timelineOptions),r.mediaList.length&&(i.mediaList=r.mediaList),r.mediaDefault&&(i.mediaDefault=r.mediaDefault)):this._optionBackup=r},t.prototype.mountOption=function(t){var e=this._optionBackup;return this._timelineOptions=e.timelineOptions,this._mediaList=e.mediaList,this._mediaDefault=e.mediaDefault,this._currentMediaIndices=[],T(t?e.baseOption:this._newBaseOption)},t.prototype.getTimelineOption=function(t){var e,n=this._timelineOptions;if(n.length){var i=t.getComponent("timeline");i&&(e=T(n[i.getCurrentIndex()]))}return e},t.prototype.getMediaOption=function(t){var e,n,i=this._api.getWidth(),r=this._api.getHeight(),o=this._mediaList,a=this._mediaDefault,s=[],l=[];if(!o.length&&!a)return l;for(var u=0,h=o.length;u<h;u++)Id(o[u].query,i,r)&&s.push(u);return!s.length&&a&&(s=[-1]),s.length&&(e=s,n=this._currentMediaIndices,e.join(",")!==n.join(","))&&(l=z(s,(function(t){return T(-1===t?a.option:o[t].option)}))),this._currentMediaIndices=s,l},t}();function Id(t,e,n){var i={width:e,height:n,aspectratio:e/n},r=!0;return E(t,(function(t,e){var n=e.match(Sd);if(n&&n[1]&&n[2]){var o=n[1],a=n[2].toLowerCase();(function(t,e,n){return"min"===n?t>=e:"max"===n?t<=e:t===e})(i[a],t,o)||(r=!1)}})),r}var Td=E,Cd=q,Dd=["areaStyle","lineStyle","nodeStyle","linkStyle","chordStyle","label","labelLine"];function Ad(t){var e=t&&t.itemStyle;if(e)for(var n=0,i=Dd.length;n<i;n++){var r=Dd[n],o=e.normal,a=e.emphasis;o&&o[r]&&(t[r]=t[r]||{},t[r].normal?C(t[r].normal,o[r]):t[r].normal=o[r],o[r]=null),a&&a[r]&&(t[r]=t[r]||{},t[r].emphasis?C(t[r].emphasis,a[r]):t[r].emphasis=a[r],a[r]=null)}}function kd(t,e,n){if(t&&t[e]&&(t[e].normal||t[e].emphasis)){var i=t[e].normal,r=t[e].emphasis;i&&(n?(t[e].normal=t[e].emphasis=null,k(t[e],i)):t[e]=i),r&&(t.emphasis=t.emphasis||{},t.emphasis[e]=r,r.focus&&(t.emphasis.focus=r.focus),r.blurScope&&(t.emphasis.blurScope=r.blurScope))}}function Ld(t){kd(t,"itemStyle"),kd(t,"lineStyle"),kd(t,"areaStyle"),kd(t,"label"),kd(t,"labelLine"),kd(t,"upperLabel"),kd(t,"edgeLabel")}function Pd(t,e){var n=Cd(t)&&t[e],i=Cd(n)&&n.textStyle;if(i){0;for(var r=0,o=Do.length;r<o;r++){var a=Do[r];i.hasOwnProperty(a)&&(n[a]=i[a])}}}function Od(t){t&&(Ld(t),Pd(t,"label"),t.emphasis&&Pd(t.emphasis,"label"))}function Rd(t){return Y(t)?t:t?[t]:[]}function Nd(t){return(Y(t)?t[0]:t)||{}}function Ed(t,e){Td(Rd(t.series),(function(t){Cd(t)&&function(t){if(Cd(t)){Ad(t),Ld(t),Pd(t,"label"),Pd(t,"upperLabel"),Pd(t,"edgeLabel"),t.emphasis&&(Pd(t.emphasis,"label"),Pd(t.emphasis,"upperLabel"),Pd(t.emphasis,"edgeLabel"));var e=t.markPoint;e&&(Ad(e),Od(e));var n=t.markLine;n&&(Ad(n),Od(n));var i=t.markArea;i&&Od(i);var r=t.data;if("graph"===t.type){r=r||t.nodes;var o=t.links||t.edges;if(o&&!$(o))for(var a=0;a<o.length;a++)Od(o[a]);E(t.categories,(function(t){Ld(t)}))}if(r&&!$(r))for(a=0;a<r.length;a++)Od(r[a]);if((e=t.markPoint)&&e.data){var s=e.data;for(a=0;a<s.length;a++)Od(s[a])}if((n=t.markLine)&&n.data){var l=n.data;for(a=0;a<l.length;a++)Y(l[a])?(Od(l[a][0]),Od(l[a][1])):Od(l[a])}"gauge"===t.type?(Pd(t,"axisLabel"),Pd(t,"title"),Pd(t,"detail")):"treemap"===t.type?(kd(t.breadcrumb,"itemStyle"),E(t.levels,(function(t){Ld(t)}))):"tree"===t.type&&Ld(t.leaves)}}(t)}));var n=["xAxis","yAxis","radiusAxis","angleAxis","singleAxis","parallelAxis","radar"];e&&n.push("valueAxis","categoryAxis","logAxis","timeAxis"),Td(n,(function(e){Td(Rd(t[e]),(function(t){t&&(Pd(t,"axisLabel"),Pd(t.axisPointer,"label"))}))})),Td(Rd(t.parallel),(function(t){var e=t&&t.parallelAxisDefault;Pd(e,"axisLabel"),Pd(e&&e.axisPointer,"label")})),Td(Rd(t.calendar),(function(t){kd(t,"itemStyle"),Pd(t,"dayLabel"),Pd(t,"monthLabel"),Pd(t,"yearLabel")})),Td(Rd(t.radar),(function(t){Pd(t,"name"),t.name&&null==t.axisName&&(t.axisName=t.name,delete t.name),null!=t.nameGap&&null==t.axisNameGap&&(t.axisNameGap=t.nameGap,delete t.nameGap)})),Td(Rd(t.geo),(function(t){Cd(t)&&(Od(t),Td(Rd(t.regions),(function(t){Od(t)})))})),Td(Rd(t.timeline),(function(t){Od(t),kd(t,"label"),kd(t,"itemStyle"),kd(t,"controlStyle",!0);var e=t.data;Y(e)&&E(e,(function(t){q(t)&&(kd(t,"label"),kd(t,"itemStyle"))}))})),Td(Rd(t.toolbox),(function(t){kd(t,"iconStyle"),Td(t.feature,(function(t){kd(t,"iconStyle")}))})),Pd(Nd(t.axisPointer),"label"),Pd(Nd(t.tooltip).axisPointer,"label")}function zd(t){t&&E(Vd,(function(e){e[0]in t&&!(e[1]in t)&&(t[e[1]]=t[e[0]])}))}var Vd=[["x","left"],["y","top"],["x2","right"],["y2","bottom"]],Bd=["grid","geo","parallel","legend","toolbox","title","visualMap","dataZoom","timeline"],Fd=[["borderRadius","barBorderRadius"],["borderColor","barBorderColor"],["borderWidth","barBorderWidth"]];function Gd(t){var e=t&&t.itemStyle;if(e)for(var n=0;n<Fd.length;n++){var i=Fd[n][1],r=Fd[n][0];null!=e[i]&&(e[r]=e[i])}}function Wd(t){t&&"edge"===t.alignTo&&null!=t.margin&&null==t.edgeDistance&&(t.edgeDistance=t.margin)}function Hd(t){t&&t.downplay&&!t.blur&&(t.blur=t.downplay)}function Yd(t,e){if(t)for(var n=0;n<t.length;n++)e(t[n]),t[n]&&Yd(t[n].children,e)}function Xd(t,e){Ed(t,e),t.series=To(t.series),E(t.series,(function(t){if(q(t)){var e=t.type;if("line"===e)null!=t.clipOverflow&&(t.clip=t.clipOverflow);else if("pie"===e||"gauge"===e){if(null!=t.clockWise&&(t.clockwise=t.clockWise),Wd(t.label),(r=t.data)&&!$(r))for(var n=0;n<r.length;n++)Wd(r[n]);null!=t.hoverOffset&&(t.emphasis=t.emphasis||{},(t.emphasis.scaleSize=null)&&(t.emphasis.scaleSize=t.hoverOffset))}else if("gauge"===e){var i=function(t,e){for(var n=e.split(","),i=t,r=0;r<n.length&&null!=(i=i&&i[n[r]]);r++);return i}(t,"pointer.color");null!=i&&function(t,e,n,i){for(var r,o=e.split(","),a=t,s=0;s<o.length-1;s++)null==a[r=o[s]]&&(a[r]={}),a=a[r];(i||null==a[o[s]])&&(a[o[s]]=n)}(t,"itemStyle.color",i)}else if("bar"===e){var r;if(Gd(t),Gd(t.backgroundStyle),Gd(t.emphasis),(r=t.data)&&!$(r))for(n=0;n<r.length;n++)"object"==typeof r[n]&&(Gd(r[n]),Gd(r[n]&&r[n].emphasis))}else if("sunburst"===e){var o=t.highlightPolicy;o&&(t.emphasis=t.emphasis||{},t.emphasis.focus||(t.emphasis.focus=o)),Hd(t),Yd(t.data,Hd)}else"graph"===e||"sankey"===e?function(t){t&&null!=t.focusNodeAdjacency&&(t.emphasis=t.emphasis||{},null==t.emphasis.focus&&(t.emphasis.focus="adjacency"))}(t):"map"===e&&(t.mapType&&!t.map&&(t.map=t.mapType),t.mapLocation&&k(t,t.mapLocation));null!=t.hoverAnimation&&(t.emphasis=t.emphasis||{},t.emphasis&&null==t.emphasis.scale&&(t.emphasis.scale=t.hoverAnimation)),zd(t)}})),t.dataRange&&(t.visualMap=t.dataRange),E(Bd,(function(e){var n=t[e];n&&(Y(n)||(n=[n]),E(n,(function(t){zd(t)})))}))}function Ud(t){E(t,(function(e,n){var i=[],r=[NaN,NaN],o=[e.stackResultDimension,e.stackedOverDimension],a=e.data,s=e.isStackedByIndex,l=e.seriesModel.get("stackStrategy")||"samesign";a.modify(o,(function(o,u,h){var c,p,d=a.get(e.stackedDimension,h);if(isNaN(d))return r;s?p=a.getRawIndex(h):c=a.get(e.stackedByDimension,h);for(var f=NaN,g=n-1;g>=0;g--){var y=t[g];if(s||(p=y.data.rawIndexOf(y.stackedByDimension,c)),p>=0){var v=y.data.getByRawIndex(y.stackResultDimension,p);if("all"===l||"positive"===l&&v>0||"negative"===l&&v<0||"samesign"===l&&d>=0&&v>0||"samesign"===l&&d<=0&&v<0){d=ro(d,v),f=v;break}}}return i[0]=d,i[1]=f,i}))}))}var Zd,jd,qd,Kd,$d,Jd=function(t){this.data=t.data||(t.sourceFormat===Xp?{}:[]),this.sourceFormat=t.sourceFormat||Zp,this.seriesLayoutBy=t.seriesLayoutBy||jp,this.startIndex=t.startIndex||0,this.dimensionsDetectedCount=t.dimensionsDetectedCount,this.metaRawOption=t.metaRawOption;var e=this.dimensionsDefine=t.dimensionsDefine;if(e)for(var n=0;n<e.length;n++){var i=e[n];null==i.type&&id(this,n)===Kp&&(i.type="ordinal")}};function Qd(t){return t instanceof Jd}function tf(t,e,n){n=n||nf(t);var i=e.seriesLayoutBy,r=function(t,e,n,i,r){var o,a;if(!t)return{dimensionsDefine:rf(r),startIndex:a,dimensionsDetectedCount:o};if(e===Hp){var s=t;"auto"===i||null==i?of((function(t){null!=t&&"-"!==t&&(U(t)?null==a&&(a=1):a=0)}),n,s,10):a=j(i)?i:i?1:0,r||1!==a||(r=[],of((function(t,e){r[e]=null!=t?t+"":""}),n,s,1/0)),o=r?r.length:n===qp?s.length:s[0]?s[0].length:null}else if(e===Yp)r||(r=function(t){var e,n=0;for(;n<t.length&&!(e=t[n++]););if(e)return G(e)}(t));else if(e===Xp)r||(r=[],E(t,(function(t,e){r.push(e)})));else if(e===Wp){var l=Ao(t[0]);o=Y(l)&&l.length||1}return{startIndex:a,dimensionsDefine:rf(r),dimensionsDetectedCount:o}}(t,n,i,e.sourceHeader,e.dimensions);return new Jd({data:t,sourceFormat:n,seriesLayoutBy:i,dimensionsDefine:r.dimensionsDefine,startIndex:r.startIndex,dimensionsDetectedCount:r.dimensionsDetectedCount,metaRawOption:T(e)})}function ef(t){return new Jd({data:t,sourceFormat:$(t)?Up:Wp})}function nf(t){var e=Zp;if($(t))e=Up;else if(Y(t)){0===t.length&&(e=Hp);for(var n=0,i=t.length;n<i;n++){var r=t[n];if(null!=r){if(Y(r)||$(r)){e=Hp;break}if(q(r)){e=Yp;break}}}}else if(q(t))for(var o in t)if(_t(t,o)&&N(t[o])){e=Xp;break}return e}function rf(t){if(t){var e=yt();return z(t,(function(t,n){var i={name:(t=q(t)?t:{name:t}).name,displayName:t.displayName,type:t.type};if(null==i.name)return i;i.name+="",null==i.displayName&&(i.displayName=i.name);var r=e.get(i.name);return r?i.name+="-"+r.count++:e.set(i.name,{count:1}),i}))}}function of(t,e,n,i){if(e===qp)for(var r=0;r<n.length&&r<i;r++)t(n[r]?n[r][0]:null,r);else{var o=n[0]||[];for(r=0;r<o.length&&r<i;r++)t(o[r],r)}}function af(t){var e=t.sourceFormat;return e===Yp||e===Xp}var sf=function(){function t(t,e){var n=Qd(t)?t:ef(t);this._source=n;var i=this._data=n.data;n.sourceFormat===Up&&(this._offset=0,this._dimSize=e,this._data=i),$d(this,i,n)}return t.prototype.getSource=function(){return this._source},t.prototype.count=function(){return 0},t.prototype.getItem=function(t,e){},t.prototype.appendData=function(t){},t.prototype.clean=function(){},t.protoInitialize=function(){var e=t.prototype;e.pure=!1,e.persistent=!0}(),t.internalField=function(){var t;$d=function(t,r,o){var a=o.sourceFormat,s=o.seriesLayoutBy,l=o.startIndex,u=o.dimensionsDefine,h=Kd[vf(a,s)];if(A(t,h),a===Up)t.getItem=e,t.count=i,t.fillStorage=n;else{var c=hf(a,s);t.getItem=W(c,null,r,l,u);var p=df(a,s);t.count=W(p,null,r,l,u)}};var e=function(t,e){t-=this._offset,e=e||[];for(var n=this._data,i=this._dimSize,r=i*t,o=0;o<i;o++)e[o]=n[r+o];return e},n=function(t,e,n,i){for(var r=this._data,o=this._dimSize,a=0;a<o;a++){for(var s=i[a],l=null==s[0]?1/0:s[0],u=null==s[1]?-1/0:s[1],h=e-t,c=n[a],p=0;p<h;p++){var d=r[p*o+a];c[t+p]=d,d<l&&(l=d),d>u&&(u=d)}s[0]=l,s[1]=u}},i=function(){return this._data?this._data.length/this._dimSize:0};function r(t){for(var e=0;e<t.length;e++)this._data.push(t[e])}(t={})[Hp+"_"+jp]={pure:!0,appendData:r},t[Hp+"_"+qp]={pure:!0,appendData:function(){throw new Error('Do not support appendData when set seriesLayoutBy: "row".')}},t[Yp]={pure:!0,appendData:r},t[Xp]={pure:!0,appendData:function(t){var e=this._data;E(t,(function(t,n){for(var i=e[n]||(e[n]=[]),r=0;r<(t||[]).length;r++)i.push(t[r])}))}},t[Wp]={appendData:r},t[Up]={persistent:!1,pure:!0,appendData:function(t){this._data=t},clean:function(){this._offset+=this.count(),this._data=null}},Kd=t}(),t}(),lf=function(t,e,n,i){return t[i]},uf=((Zd={})[Hp+"_"+jp]=function(t,e,n,i){return t[i+e]},Zd[Hp+"_"+qp]=function(t,e,n,i,r){i+=e;for(var o=r||[],a=t,s=0;s<a.length;s++){var l=a[s];o[s]=l?l[i]:null}return o},Zd[Yp]=lf,Zd[Xp]=function(t,e,n,i,r){for(var o=r||[],a=0;a<n.length;a++){var s=n[a].name;0;var l=t[s];o[a]=l?l[i]:null}return o},Zd[Wp]=lf,Zd);function hf(t,e){var n=uf[vf(t,e)];return n}var cf=function(t,e,n){return t.length},pf=((jd={})[Hp+"_"+jp]=function(t,e,n){return Math.max(0,t.length-e)},jd[Hp+"_"+qp]=function(t,e,n){var i=t[0];return i?Math.max(0,i.length-e):0},jd[Yp]=cf,jd[Xp]=function(t,e,n){var i=n[0].name;var r=t[i];return r?r.length:0},jd[Wp]=cf,jd);function df(t,e){var n=pf[vf(t,e)];return n}var ff=function(t,e,n){return t[e]},gf=((qd={})[Hp]=ff,qd[Yp]=function(t,e,n){return t[n]},qd[Xp]=ff,qd[Wp]=function(t,e,n){var i=Ao(t);return i instanceof Array?i[e]:i},qd[Up]=ff,qd);function yf(t){var e=gf[t];return e}function vf(t,e){return t===Hp?t+"_"+e:t}function mf(t,e,n){if(t){var i=t.getRawDataItem(e);if(null!=i){var r=t.getStore(),o=r.getSource().sourceFormat;if(null!=n){var a=t.getDimensionIndex(n),s=r.getDimensionProperty(a);return yf(o)(i,a,s)}var l=i;return o===Wp&&(l=Ao(i)),l}}}var xf=/\{@(.+?)\}/g,_f=function(){function t(){}return t.prototype.getDataParams=function(t,e){var n=this.getData(e),i=this.getRawValue(t,e),r=n.getRawIndex(t),o=n.getName(t),a=n.getRawDataItem(t),s=n.getItemVisual(t,"style"),l=s&&s[n.getItemVisual(t,"drawType")||"fill"],u=s&&s.stroke,h=this.mainType,c="series"===h,p=n.userOutput&&n.userOutput.get();return{componentType:h,componentSubType:this.subType,componentIndex:this.componentIndex,seriesType:c?this.subType:null,seriesIndex:this.seriesIndex,seriesId:c?this.id:null,seriesName:c?this.name:null,name:o,dataIndex:r,data:a,dataType:e,value:i,color:l,borderColor:u,dimensionNames:p?p.fullDimensions:null,encode:p?p.encode:null,$vars:["seriesName","name","value"]}},t.prototype.getFormattedLabel=function(t,e,n,i,r,o){e=e||"normal";var a=this.getData(n),s=this.getDataParams(t,n);(o&&(s.value=o.interpolatedValue),null!=i&&Y(s.value)&&(s.value=s.value[i]),r)||(r=a.getItemModel(t).get("normal"===e?["label","formatter"]:[e,"label","formatter"]));return X(r)?(s.status=e,s.dimensionIndex=i,r(s)):U(r)?bp(r,s).replace(xf,(function(e,n){var i=n.length,r=n;"["===r.charAt(0)&&"]"===r.charAt(i-1)&&(r=+r.slice(1,i-1));var s=mf(a,t,r);if(o&&Y(o.interpolatedValue)){var l=a.getDimensionIndex(r);l>=0&&(s=o.interpolatedValue[l])}return null!=s?s+"":""})):void 0},t.prototype.getRawValue=function(t,e){return mf(this.getData(e),t)},t.prototype.formatTooltip=function(t,e,n){},t}();function bf(t){var e,n;return q(t)?t.type&&(n=t):e=t,{text:e,frag:n}}function wf(t){return new Sf(t)}var Sf=function(){function t(t){t=t||{},this._reset=t.reset,this._plan=t.plan,this._count=t.count,this._onDirty=t.onDirty,this._dirty=!0}return t.prototype.perform=function(t){var e,n=this._upstream,i=t&&t.skip;if(this._dirty&&n){var r=this.context;r.data=r.outputData=n.context.outputData}this.__pipeline&&(this.__pipeline.currentTask=this),this._plan&&!i&&(e=this._plan(this.context));var o,a=h(this._modBy),s=this._modDataCount||0,l=h(t&&t.modBy),u=t&&t.modDataCount||0;function h(t){return!(t>=1)&&(t=1),t}a===l&&s===u||(e="reset"),(this._dirty||"reset"===e)&&(this._dirty=!1,o=this._doReset(i)),this._modBy=l,this._modDataCount=u;var c=t&&t.step;if(this._dueEnd=n?n._outputDueEnd:this._count?this._count(this.context):1/0,this._progress){var p=this._dueIndex,d=Math.min(null!=c?this._dueIndex+c:1/0,this._dueEnd);if(!i&&(o||p<d)){var f=this._progress;if(Y(f))for(var g=0;g<f.length;g++)this._doProgress(f[g],p,d,l,u);else this._doProgress(f,p,d,l,u)}this._dueIndex=d;var y=null!=this._settedOutputEnd?this._settedOutputEnd:d;0,this._outputDueEnd=y}else this._dueIndex=this._outputDueEnd=null!=this._settedOutputEnd?this._settedOutputEnd:this._dueEnd;return this.unfinished()},t.prototype.dirty=function(){this._dirty=!0,this._onDirty&&this._onDirty(this.context)},t.prototype._doProgress=function(t,e,n,i,r){Mf.reset(e,n,i,r),this._callingProgress=t,this._callingProgress({start:e,end:n,count:n-e,next:Mf.next},this.context)},t.prototype._doReset=function(t){var e,n;this._dueIndex=this._outputDueEnd=this._dueEnd=0,this._settedOutputEnd=null,!t&&this._reset&&((e=this._reset(this.context))&&e.progress&&(n=e.forceFirstProgress,e=e.progress),Y(e)&&!e.length&&(e=null)),this._progress=e,this._modBy=this._modDataCount=null;var i=this._downstream;return i&&i.dirty(),n},t.prototype.unfinished=function(){return this._progress&&this._dueIndex<this._dueEnd},t.prototype.pipe=function(t){(this._downstream!==t||this._dirty)&&(this._downstream=t,t._upstream=this,t.dirty())},t.prototype.dispose=function(){this._disposed||(this._upstream&&(this._upstream._downstream=null),this._downstream&&(this._downstream._upstream=null),this._dirty=!1,this._disposed=!0)},t.prototype.getUpstream=function(){return this._upstream},t.prototype.getDownstream=function(){return this._downstream},t.prototype.setOutputEnd=function(t){this._outputDueEnd=this._settedOutputEnd=t},t}(),Mf=function(){var t,e,n,i,r,o={reset:function(l,u,h,c){e=l,t=u,n=h,i=c,r=Math.ceil(i/n),o.next=n>1&&i>0?s:a}};return o;function a(){return e<t?e++:null}function s(){var o=e%r*n+Math.ceil(e/r),a=e>=t?null:o<i?o:e;return e++,a}}();function If(t,e){var n=e&&e.type;return"ordinal"===n?t:("time"!==n||j(t)||null==t||"-"===t||(t=+uo(t)),null==t||""===t?NaN:Number(t))}var Tf=yt({number:function(t){return parseFloat(t)},time:function(t){return+uo(t)},trim:function(t){return U(t)?ut(t):t}});function Cf(t){return Tf.get(t)}var Df={lt:function(t,e){return t<e},lte:function(t,e){return t<=e},gt:function(t,e){return t>e},gte:function(t,e){return t>=e}},Af=function(){function t(t,e){if(!j(e)){var n="";0,wo(n)}this._opFn=Df[t],this._rvalFloat=yo(e)}return t.prototype.evaluate=function(t){return j(t)?this._opFn(t,this._rvalFloat):this._opFn(yo(t),this._rvalFloat)},t}(),kf=function(){function t(t,e){var n="desc"===t;this._resultLT=n?1:-1,null==e&&(e=n?"min":"max"),this._incomparable="min"===e?-1/0:1/0}return t.prototype.evaluate=function(t,e){var n=j(t)?t:yo(t),i=j(e)?e:yo(e),r=isNaN(n),o=isNaN(i);if(r&&(n=this._incomparable),o&&(i=this._incomparable),r&&o){var a=U(t),s=U(e);a&&(n=s?t:0),s&&(i=a?e:0)}return n<i?this._resultLT:n>i?-this._resultLT:0},t}(),Lf=function(){function t(t,e){this._rval=e,this._isEQ=t,this._rvalTypeof=typeof e,this._rvalFloat=yo(e)}return t.prototype.evaluate=function(t){var e=t===this._rval;if(!e){var n=typeof t;n===this._rvalTypeof||"number"!==n&&"number"!==this._rvalTypeof||(e=yo(t)===this._rvalFloat)}return this._isEQ?e:!e},t}();function Pf(t,e){return"eq"===t||"ne"===t?new Lf("eq"===t,e):_t(Df,t)?new Af(t,e):null}var Of=function(){function t(){}return t.prototype.getRawData=function(){throw new Error("not supported")},t.prototype.getRawDataItem=function(t){throw new Error("not supported")},t.prototype.cloneRawData=function(){},t.prototype.getDimensionInfo=function(t){},t.prototype.cloneAllDimensionInfo=function(){},t.prototype.count=function(){},t.prototype.retrieveValue=function(t,e){},t.prototype.retrieveValueFromItem=function(t,e){},t.prototype.convertValue=function(t,e){return If(t,e)},t}();function Rf(t){var e=t.sourceFormat;if(!Ff(e)){var n="";0,wo(n)}return t.data}function Nf(t){var e=t.sourceFormat,n=t.data;if(!Ff(e)){var i="";0,wo(i)}if(e===Hp){for(var r=[],o=0,a=n.length;o<a;o++)r.push(n[o].slice());return r}if(e===Yp){for(r=[],o=0,a=n.length;o<a;o++)r.push(A({},n[o]));return r}}function Ef(t,e,n){if(null!=n)return j(n)||!isNaN(n)&&!_t(e,n)?t[n]:_t(e,n)?e[n]:void 0}function zf(t){return T(t)}var Vf=yt();function Bf(t,e,n,i){var r="";e.length||wo(r),q(t)||wo(r);var o=t.type,a=Vf.get(o);a||wo(r);var s=z(e,(function(t){return function(t,e){var n=new Of,i=t.data,r=n.sourceFormat=t.sourceFormat,o=t.startIndex,a="";t.seriesLayoutBy!==jp&&wo(a);var s=[],l={},u=t.dimensionsDefine;if(u)E(u,(function(t,e){var n=t.name,i={index:e,name:n,displayName:t.displayName};if(s.push(i),null!=n){var r="";_t(l,n)&&wo(r),l[n]=i}}));else for(var h=0;h<t.dimensionsDetectedCount;h++)s.push({index:h});var c=hf(r,jp);e.__isBuiltIn&&(n.getRawDataItem=function(t){return c(i,o,s,t)},n.getRawData=W(Rf,null,t)),n.cloneRawData=W(Nf,null,t);var p=df(r,jp);n.count=W(p,null,i,o,s);var d=yf(r);n.retrieveValue=function(t,e){var n=c(i,o,s,t);return f(n,e)};var f=n.retrieveValueFromItem=function(t,e){if(null!=t){var n=s[e];return n?d(t,e,n.name):void 0}};return n.getDimensionInfo=W(Ef,null,s,l),n.cloneAllDimensionInfo=W(zf,null,s),n}(t,a)})),l=To(a.transform({upstream:s[0],upstreamList:s,config:T(t.config)}));return z(l,(function(t,n){var i,r="";q(t)||wo(r),t.data||wo(r),Ff(nf(t.data))||wo(r);var o=e[0];if(o&&0===n&&!t.dimensions){var a=o.startIndex;a&&(t.data=o.data.slice(0,a).concat(t.data)),i={seriesLayoutBy:jp,sourceHeader:a,dimensions:o.metaRawOption.dimensions}}else i={seriesLayoutBy:jp,sourceHeader:0,dimensions:t.dimensions};return tf(t.data,i,null)}))}function Ff(t){return t===Hp||t===Yp}var Gf,Wf="undefined",Hf=typeof Uint32Array===Wf?Array:Uint32Array,Yf=typeof Uint16Array===Wf?Array:Uint16Array,Xf=typeof Int32Array===Wf?Array:Int32Array,Uf=typeof Float64Array===Wf?Array:Float64Array,Zf={float:Uf,int:Xf,ordinal:Array,number:Array,time:Uf};function jf(t){return t>65535?Hf:Yf}function qf(t,e,n,i,r){var o=Zf[n||"float"];if(r){var a=t[e],s=a&&a.length;if(s!==i){for(var l=new o(i),u=0;u<s;u++)l[u]=a[u];t[e]=l}}else t[e]=new o(i)}var Kf=function(){function t(){this._chunks=[],this._rawExtent=[],this._extent=[],this._count=0,this._rawCount=0,this._calcDimNameToIdx=yt()}return t.prototype.initData=function(t,e,n){this._provider=t,this._chunks=[],this._indices=null,this.getRawIndex=this._getRawIdxIdentity;var i=t.getSource(),r=this.defaultDimValueGetter=Gf[i.sourceFormat];this._dimValueGetter=n||r,this._rawExtent=[];af(i);this._dimensions=z(e,(function(t){return{type:t.type,property:t.property}})),this._initDataFromProvider(0,t.count())},t.prototype.getProvider=function(){return this._provider},t.prototype.getSource=function(){return this._provider.getSource()},t.prototype.ensureCalculationDimension=function(t,e){var n=this._calcDimNameToIdx,i=this._dimensions,r=n.get(t);if(null!=r){if(i[r].type===e)return r}else r=i.length;return i[r]={type:e},n.set(t,r),this._chunks[r]=new Zf[e||"float"](this._rawCount),this._rawExtent[r]=[1/0,-1/0],r},t.prototype.collectOrdinalMeta=function(t,e){var n=this._chunks[t],i=this._dimensions[t],r=this._rawExtent,o=i.ordinalOffset||0,a=n.length;0===o&&(r[t]=[1/0,-1/0]);for(var s=r[t],l=o;l<a;l++){var u=n[l]=e.parseAndCollect(n[l]);isNaN(u)||(s[0]=Math.min(u,s[0]),s[1]=Math.max(u,s[1]))}i.ordinalMeta=e,i.ordinalOffset=a,i.type="ordinal"},t.prototype.getOrdinalMeta=function(t){return this._dimensions[t].ordinalMeta},t.prototype.getDimensionProperty=function(t){var e=this._dimensions[t];return e&&e.property},t.prototype.appendData=function(t){var e=this._provider,n=this.count();e.appendData(t);var i=e.count();return e.persistent||(i+=n),n<i&&this._initDataFromProvider(n,i,!0),[n,i]},t.prototype.appendValues=function(t,e){for(var n=this._chunks,i=this._dimensions,r=i.length,o=this._rawExtent,a=this.count(),s=a+Math.max(t.length,e||0),l=0;l<r;l++){qf(n,l,(d=i[l]).type,s,!0)}for(var u=[],h=a;h<s;h++)for(var c=h-a,p=0;p<r;p++){var d=i[p],f=Gf.arrayRows.call(this,t[c]||u,d.property,c,p);n[p][h]=f;var g=o[p];f<g[0]&&(g[0]=f),f>g[1]&&(g[1]=f)}return this._rawCount=this._count=s,{start:a,end:s}},t.prototype._initDataFromProvider=function(t,e,n){for(var i=this._provider,r=this._chunks,o=this._dimensions,a=o.length,s=this._rawExtent,l=z(o,(function(t){return t.property})),u=0;u<a;u++){var h=o[u];s[u]||(s[u]=[1/0,-1/0]),qf(r,u,h.type,e,n)}if(i.fillStorage)i.fillStorage(t,e,r,s);else for(var c=[],p=t;p<e;p++){c=i.getItem(p,c);for(var d=0;d<a;d++){var f=r[d],g=this._dimValueGetter(c,l[d],p,d);f[p]=g;var y=s[d];g<y[0]&&(y[0]=g),g>y[1]&&(y[1]=g)}}!i.persistent&&i.clean&&i.clean(),this._rawCount=this._count=e,this._extent=[]},t.prototype.count=function(){return this._count},t.prototype.get=function(t,e){if(!(e>=0&&e<this._count))return NaN;var n=this._chunks[t];return n?n[this.getRawIndex(e)]:NaN},t.prototype.getValues=function(t,e){var n=[],i=[];if(null==e){e=t,t=[];for(var r=0;r<this._dimensions.length;r++)i.push(r)}else i=t;r=0;for(var o=i.length;r<o;r++)n.push(this.get(i[r],e));return n},t.prototype.getByRawIndex=function(t,e){if(!(e>=0&&e<this._rawCount))return NaN;var n=this._chunks[t];return n?n[e]:NaN},t.prototype.getSum=function(t){var e=0;if(this._chunks[t])for(var n=0,i=this.count();n<i;n++){var r=this.get(t,n);isNaN(r)||(e+=r)}return e},t.prototype.getMedian=function(t){var e=[];this.each([t],(function(t){isNaN(t)||e.push(t)}));var n=e.sort((function(t,e){return t-e})),i=this.count();return 0===i?0:i%2==1?n[(i-1)/2]:(n[i/2]+n[i/2-1])/2},t.prototype.indexOfRawIndex=function(t){if(t>=this._rawCount||t<0)return-1;if(!this._indices)return t;var e=this._indices,n=e[t];if(null!=n&&n<this._count&&n===t)return t;for(var i=0,r=this._count-1;i<=r;){var o=(i+r)/2|0;if(e[o]<t)i=o+1;else{if(!(e[o]>t))return o;r=o-1}}return-1},t.prototype.indicesOfNearest=function(t,e,n){var i=this._chunks[t],r=[];if(!i)return r;null==n&&(n=1/0);for(var o=1/0,a=-1,s=0,l=0,u=this.count();l<u;l++){var h=e-i[this.getRawIndex(l)],c=Math.abs(h);c<=n&&((c<o||c===o&&h>=0&&a<0)&&(o=c,a=h,s=0),h===a&&(r[s++]=l))}return r.length=s,r},t.prototype.getIndices=function(){var t,e=this._indices;if(e){var n=e.constructor,i=this._count;if(n===Array){t=new n(i);for(var r=0;r<i;r++)t[r]=e[r]}else t=new n(e.buffer,0,i)}else{t=new(n=jf(this._rawCount))(this.count());for(r=0;r<t.length;r++)t[r]=r}return t},t.prototype.filter=function(t,e){if(!this._count)return this;for(var n=this.clone(),i=n.count(),r=new(jf(n._rawCount))(i),o=[],a=t.length,s=0,l=t[0],u=n._chunks,h=0;h<i;h++){var c=void 0,p=n.getRawIndex(h);if(0===a)c=e(h);else if(1===a){c=e(u[l][p],h)}else{for(var d=0;d<a;d++)o[d]=u[t[d]][p];o[d]=h,c=e.apply(null,o)}c&&(r[s++]=p)}return s<i&&(n._indices=r),n._count=s,n._extent=[],n._updateGetRawIdx(),n},t.prototype.selectRange=function(t){var e=this.clone(),n=e._count;if(!n)return this;var i=G(t),r=i.length;if(!r)return this;var o=e.count(),a=new(jf(e._rawCount))(o),s=0,l=i[0],u=t[l][0],h=t[l][1],c=e._chunks,p=!1;if(!e._indices){var d=0;if(1===r){for(var f=c[i[0]],g=0;g<n;g++){((x=f[g])>=u&&x<=h||isNaN(x))&&(a[s++]=d),d++}p=!0}else if(2===r){f=c[i[0]];var y=c[i[1]],v=t[i[1]][0],m=t[i[1]][1];for(g=0;g<n;g++){var x=f[g],_=y[g];(x>=u&&x<=h||isNaN(x))&&(_>=v&&_<=m||isNaN(_))&&(a[s++]=d),d++}p=!0}}if(!p)if(1===r)for(g=0;g<o;g++){var b=e.getRawIndex(g);((x=c[i[0]][b])>=u&&x<=h||isNaN(x))&&(a[s++]=b)}else for(g=0;g<o;g++){for(var w=!0,S=(b=e.getRawIndex(g),0);S<r;S++){var M=i[S];((x=c[M][b])<t[M][0]||x>t[M][1])&&(w=!1)}w&&(a[s++]=e.getRawIndex(g))}return s<o&&(e._indices=a),e._count=s,e._extent=[],e._updateGetRawIdx(),e},t.prototype.map=function(t,e){var n=this.clone(t);return this._updateDims(n,t,e),n},t.prototype.modify=function(t,e){this._updateDims(this,t,e)},t.prototype._updateDims=function(t,e,n){for(var i=t._chunks,r=[],o=e.length,a=t.count(),s=[],l=t._rawExtent,u=0;u<e.length;u++)l[e[u]]=[1/0,-1/0];for(var h=0;h<a;h++){for(var c=t.getRawIndex(h),p=0;p<o;p++)s[p]=i[e[p]][c];s[o]=h;var d=n&&n.apply(null,s);if(null!=d){"object"!=typeof d&&(r[0]=d,d=r);for(u=0;u<d.length;u++){var f=e[u],g=d[u],y=l[f],v=i[f];v&&(v[c]=g),g<y[0]&&(y[0]=g),g>y[1]&&(y[1]=g)}}}},t.prototype.lttbDownSample=function(t,e){var n,i,r,o=this.clone([t],!0),a=o._chunks[t],s=this.count(),l=0,u=Math.floor(1/e),h=this.getRawIndex(0),c=new(jf(this._rawCount))(Math.min(2*(Math.ceil(s/u)+2),s));c[l++]=h;for(var p=1;p<s-1;p+=u){for(var d=Math.min(p+u,s-1),f=Math.min(p+2*u,s),g=(f+d)/2,y=0,v=d;v<f;v++){var m=a[I=this.getRawIndex(v)];isNaN(m)||(y+=m)}y/=f-d;var x=p,_=Math.min(p+u,s),b=p-1,w=a[h];n=-1,r=x;var S=-1,M=0;for(v=x;v<_;v++){var I;m=a[I=this.getRawIndex(v)];isNaN(m)?(M++,S<0&&(S=I)):(i=Math.abs((b-g)*(m-w)-(b-v)*(y-w)))>n&&(n=i,r=I)}M>0&&M<_-x&&(c[l++]=Math.min(S,r),r=Math.max(S,r)),c[l++]=r,h=r}return c[l++]=this.getRawIndex(s-1),o._count=l,o._indices=c,o.getRawIndex=this._getRawIdx,o},t.prototype.downSample=function(t,e,n,i){for(var r=this.clone([t],!0),o=r._chunks,a=[],s=Math.floor(1/e),l=o[t],u=this.count(),h=r._rawExtent[t]=[1/0,-1/0],c=new(jf(this._rawCount))(Math.ceil(u/s)),p=0,d=0;d<u;d+=s){s>u-d&&(s=u-d,a.length=s);for(var f=0;f<s;f++){var g=this.getRawIndex(d+f);a[f]=l[g]}var y=n(a),v=this.getRawIndex(Math.min(d+i(a,y)||0,u-1));l[v]=y,y<h[0]&&(h[0]=y),y>h[1]&&(h[1]=y),c[p++]=v}return r._count=p,r._indices=c,r._updateGetRawIdx(),r},t.prototype.each=function(t,e){if(this._count)for(var n=t.length,i=this._chunks,r=0,o=this.count();r<o;r++){var a=this.getRawIndex(r);switch(n){case 0:e(r);break;case 1:e(i[t[0]][a],r);break;case 2:e(i[t[0]][a],i[t[1]][a],r);break;default:for(var s=0,l=[];s<n;s++)l[s]=i[t[s]][a];l[s]=r,e.apply(null,l)}}},t.prototype.getDataExtent=function(t){var e=this._chunks[t],n=[1/0,-1/0];if(!e)return n;var i,r=this.count();if(!this._indices)return this._rawExtent[t].slice();if(i=this._extent[t])return i.slice();for(var o=(i=n)[0],a=i[1],s=0;s<r;s++){var l=e[this.getRawIndex(s)];l<o&&(o=l),l>a&&(a=l)}return i=[o,a],this._extent[t]=i,i},t.prototype.getRawDataItem=function(t){var e=this.getRawIndex(t);if(this._provider.persistent)return this._provider.getItem(e);for(var n=[],i=this._chunks,r=0;r<i.length;r++)n.push(i[r][e]);return n},t.prototype.clone=function(e,n){var i,r,o=new t,a=this._chunks,s=e&&V(e,(function(t,e){return t[e]=!0,t}),{});if(s)for(var l=0;l<a.length;l++)o._chunks[l]=s[l]?(i=a[l],r=void 0,(r=i.constructor)===Array?i.slice():new r(i)):a[l];else o._chunks=a;return this._copyCommonProps(o),n||(o._indices=this._cloneIndices()),o._updateGetRawIdx(),o},t.prototype._copyCommonProps=function(t){t._count=this._count,t._rawCount=this._rawCount,t._provider=this._provider,t._dimensions=this._dimensions,t._extent=T(this._extent),t._rawExtent=T(this._rawExtent)},t.prototype._cloneIndices=function(){if(this._indices){var t=this._indices.constructor,e=void 0;if(t===Array){var n=this._indices.length;e=new t(n);for(var i=0;i<n;i++)e[i]=this._indices[i]}else e=new t(this._indices);return e}return null},t.prototype._getRawIdxIdentity=function(t){return t},t.prototype._getRawIdx=function(t){return t<this._count&&t>=0?this._indices[t]:-1},t.prototype._updateGetRawIdx=function(){this.getRawIndex=this._indices?this._getRawIdx:this._getRawIdxIdentity},t.internalField=function(){function t(t,e,n,i){return If(t[i],this._dimensions[i])}Gf={arrayRows:t,objectRows:function(t,e,n,i){return If(t[e],this._dimensions[i])},keyedColumns:t,original:function(t,e,n,i){var r=t&&(null==t.value?t:t.value);return If(r instanceof Array?r[i]:r,this._dimensions[i])},typedArray:function(t,e,n,i){return t[i]}}}(),t}(),$f=function(){function t(t){this._sourceList=[],this._storeList=[],this._upstreamSignList=[],this._versionSignBase=0,this._dirty=!0,this._sourceHost=t}return t.prototype.dirty=function(){this._setLocalSource([],[]),this._storeList=[],this._dirty=!0},t.prototype._setLocalSource=function(t,e){this._sourceList=t,this._upstreamSignList=e,this._versionSignBase++,this._versionSignBase>9e10&&(this._versionSignBase=0)},t.prototype._getVersionSign=function(){return this._sourceHost.uid+"_"+this._versionSignBase},t.prototype.prepareSource=function(){this._isDirty()&&(this._createSource(),this._dirty=!1)},t.prototype._createSource=function(){this._setLocalSource([],[]);var t,e,n=this._sourceHost,i=this._getUpstreamSourceManagers(),r=!!i.length;if(Qf(n)){var o=n,a=void 0,s=void 0,l=void 0;if(r){var u=i[0];u.prepareSource(),a=(l=u.getSource()).data,s=l.sourceFormat,e=[u._getVersionSign()]}else s=$(a=o.get("data",!0))?Up:Wp,e=[];var h=this._getSourceMetaRawOption()||{},c=l&&l.metaRawOption||{},p=rt(h.seriesLayoutBy,c.seriesLayoutBy)||null,d=rt(h.sourceHeader,c.sourceHeader),f=rt(h.dimensions,c.dimensions);t=p!==c.seriesLayoutBy||!!d!=!!c.sourceHeader||f?[tf(a,{seriesLayoutBy:p,sourceHeader:d,dimensions:f},s)]:[]}else{var g=n;if(r){var y=this._applyTransform(i);t=y.sourceList,e=y.upstreamSignList}else{t=[tf(g.get("source",!0),this._getSourceMetaRawOption(),null)],e=[]}}this._setLocalSource(t,e)},t.prototype._applyTransform=function(t){var e,n=this._sourceHost,i=n.get("transform",!0),r=n.get("fromTransformResult",!0);if(null!=r){var o="";1!==t.length&&tg(o)}var a,s=[],l=[];return E(t,(function(t){t.prepareSource();var e=t.getSource(r||0),n="";null==r||e||tg(n),s.push(e),l.push(t._getVersionSign())})),i?e=function(t,e,n){var i=To(t),r=i.length,o="";r||wo(o);for(var a=0,s=r;a<s;a++)e=Bf(i[a],e),a!==s-1&&(e.length=Math.max(e.length,1));return e}(i,s,n.componentIndex):null!=r&&(e=[(a=s[0],new Jd({data:a.data,sourceFormat:a.sourceFormat,seriesLayoutBy:a.seriesLayoutBy,dimensionsDefine:T(a.dimensionsDefine),startIndex:a.startIndex,dimensionsDetectedCount:a.dimensionsDetectedCount}))]),{sourceList:e,upstreamSignList:l}},t.prototype._isDirty=function(){if(this._dirty)return!0;for(var t=this._getUpstreamSourceManagers(),e=0;e<t.length;e++){var n=t[e];if(n._isDirty()||this._upstreamSignList[e]!==n._getVersionSign())return!0}},t.prototype.getSource=function(t){t=t||0;var e=this._sourceList[t];if(!e){var n=this._getUpstreamSourceManagers();return n[0]&&n[0].getSource(t)}return e},t.prototype.getSharedDataStore=function(t){var e=t.makeStoreSchema();return this._innerGetDataStore(e.dimensions,t.source,e.hash)},t.prototype._innerGetDataStore=function(t,e,n){var i=this._storeList,r=i[0];r||(r=i[0]={});var o=r[n];if(!o){var a=this._getUpstreamSourceManagers()[0];Qf(this._sourceHost)&&a?o=a._innerGetDataStore(t,e,n):(o=new Kf).initData(new sf(e,t.length),t),r[n]=o}return o},t.prototype._getUpstreamSourceManagers=function(){var t=this._sourceHost;if(Qf(t)){var e=nd(t);return e?[e.getSourceManager()]:[]}return z(function(t){return t.get("transform",!0)||t.get("fromTransformResult",!0)?Yo(t.ecModel,"dataset",{index:t.get("fromDatasetIndex",!0),id:t.get("fromDatasetId",!0)},Wo).models:[]}(t),(function(t){return t.getSourceManager()}))},t.prototype._getSourceMetaRawOption=function(){var t,e,n,i=this._sourceHost;if(Qf(i))t=i.get("seriesLayoutBy",!0),e=i.get("sourceHeader",!0),n=i.get("dimensions",!0);else if(!this._getUpstreamSourceManagers().length){var r=i;t=r.get("seriesLayoutBy",!0),e=r.get("sourceHeader",!0),n=r.get("dimensions",!0)}return{seriesLayoutBy:t,sourceHeader:e,dimensions:n}},t}();function Jf(t){t.option.transform&&ct(t.option.transform)}function Qf(t){return"series"===t.mainType}function tg(t){throw new Error(t)}var eg="line-height:1";function ng(t,e){var n=t.color||"#6e7079",i=t.fontSize||12,r=t.fontWeight||"400",o=t.color||"#464646",a=t.fontSize||14,s=t.fontWeight||"900";return"html"===e?{nameStyle:"font-size:"+re(i+"")+"px;color:"+re(n)+";font-weight:"+re(r+""),valueStyle:"font-size:"+re(a+"")+"px;color:"+re(o)+";font-weight:"+re(s+"")}:{nameStyle:{fontSize:i,fill:n,fontWeight:r},valueStyle:{fontSize:a,fill:o,fontWeight:s}}}var ig=[0,10,20,30],rg=["","\n","\n\n","\n\n\n"];function og(t,e){return e.type=t,e}function ag(t){return"section"===t.type}function sg(t){return ag(t)?ug:hg}function lg(t){if(ag(t)){var e=0,n=t.blocks.length,i=n>1||n>0&&!t.noHeader;return E(t.blocks,(function(t){var n=lg(t);n>=e&&(e=n+ +(i&&(!n||ag(t)&&!t.noHeader)))})),e}return 0}function ug(t,e,n,i){var r,o=e.noHeader,a=(r=lg(e),{html:ig[r],richText:rg[r]}),s=[],l=e.blocks||[];lt(!l||Y(l)),l=l||[];var u=t.orderMode;if(e.sortBlocks&&u){l=l.slice();var h={valueAsc:"asc",valueDesc:"desc"};if(_t(h,u)){var c=new kf(h[u],null);l.sort((function(t,e){return c.evaluate(t.sortParam,e.sortParam)}))}else"seriesDesc"===u&&l.reverse()}E(l,(function(n,r){var o=e.valueFormatter,l=sg(n)(o?A(A({},t),{valueFormatter:o}):t,n,r>0?a.html:0,i);null!=l&&s.push(l)}));var p="richText"===t.renderMode?s.join(a.richText):pg(s.join(""),o?n:a.html);if(o)return p;var d=mp(e.header,"ordinal",t.useUTC),f=ng(i,t.renderMode).nameStyle;return"richText"===t.renderMode?dg(t,d,f)+a.richText+p:pg('<div style="'+f+";"+eg+';">'+re(d)+"</div>"+p,n)}function hg(t,e,n,i){var r=t.renderMode,o=e.noName,a=e.noValue,s=!e.markerType,l=e.name,u=t.useUTC,h=e.valueFormatter||t.valueFormatter||function(t){return z(t=Y(t)?t:[t],(function(t,e){return mp(t,Y(d)?d[e]:d,u)}))};if(!o||!a){var c=s?"":t.markupStyleCreator.makeTooltipMarker(e.markerType,e.markerColor||"#333",r),p=o?"":mp(l,"ordinal",u),d=e.valueType,f=a?[]:h(e.value,e.dataIndex),g=!s||!o,y=!s&&o,v=ng(i,r),m=v.nameStyle,x=v.valueStyle;return"richText"===r?(s?"":c)+(o?"":dg(t,p,m))+(a?"":function(t,e,n,i,r){var o=[r],a=i?10:20;return n&&o.push({padding:[0,0,0,a],align:"right"}),t.markupStyleCreator.wrapRichTextStyle(Y(e)?e.join(" "):e,o)}(t,f,g,y,x)):pg((s?"":c)+(o?"":function(t,e,n){return'<span style="'+n+";"+(e?"margin-left:2px":"")+'">'+re(t)+"</span>"}(p,!s,m))+(a?"":function(t,e,n,i){var r=n?"10px":"20px",o=e?"float:right;margin-left:"+r:"";return t=Y(t)?t:[t],'<span style="'+o+";"+i+'">'+z(t,(function(t){return re(t)})).join("  ")+"</span>"}(f,g,y,x)),n)}}function cg(t,e,n,i,r,o){if(t)return sg(t)({useUTC:r,renderMode:n,orderMode:i,markupStyleCreator:e,valueFormatter:t.valueFormatter},t,0,o)}function pg(t,e){return'<div style="'+("margin: "+e+"px 0 0")+";"+eg+';">'+t+'<div style="clear:both"></div></div>'}function dg(t,e,n){return t.markupStyleCreator.wrapRichTextStyle(e,n)}function fg(t,e){return Sp(t.getData().getItemVisual(e,"style")[t.visualDrawType])}function gg(t,e){var n=t.get("padding");return null!=n?n:"richText"===e?[8,10]:10}var yg=function(){function t(){this.richTextStyles={},this._nextStyleNameId=mo()}return t.prototype._generateStyleName=function(){return"__EC_aUTo_"+this._nextStyleNameId++},t.prototype.makeTooltipMarker=function(t,e,n){var i="richText"===n?this._generateStyleName():null,r=wp({color:e,type:t,renderMode:n,markerId:i});return U(r)?r:(this.richTextStyles[i]=r.style,r.content)},t.prototype.wrapRichTextStyle=function(t,e){var n={};Y(e)?E(e,(function(t){return A(n,t)})):A(n,e);var i=this._generateStyleName();return this.richTextStyles[i]=n,"{"+i+"|"+t+"}"},t}();function vg(t){var e,n,i,r,o=t.series,a=t.dataIndex,s=t.multipleSeries,l=o.getData(),u=l.mapDimensionsAll("defaultedTooltip"),h=u.length,c=o.getRawValue(a),p=Y(c),d=fg(o,a);if(h>1||p&&!h){var f=function(t,e,n,i,r){var o=e.getData(),a=V(t,(function(t,e,n){var i=o.getDimensionInfo(n);return t||i&&!1!==i.tooltip&&null!=i.displayName}),!1),s=[],l=[],u=[];function h(t,e){var n=o.getDimensionInfo(e);n&&!1!==n.otherDims.tooltip&&(a?u.push(og("nameValue",{markerType:"subItem",markerColor:r,name:n.displayName,value:t,valueType:n.type})):(s.push(t),l.push(n.type)))}return i.length?E(i,(function(t){h(mf(o,n,t),t)})):E(t,h),{inlineValues:s,inlineValueTypes:l,blocks:u}}(c,o,a,u,d);e=f.inlineValues,n=f.inlineValueTypes,i=f.blocks,r=f.inlineValues[0]}else if(h){var g=l.getDimensionInfo(u[0]);r=e=mf(l,a,u[0]),n=g.type}else r=e=p?c[0]:c;var y=No(o),v=y&&o.name||"",m=l.getName(a),x=s?v:m;return og("section",{header:v,noHeader:s||!y,sortParam:r,blocks:[og("nameValue",{markerType:"item",markerColor:d,name:x,noName:!ut(x),value:e,valueType:n,dataIndex:a})].concat(i||[])})}var mg=Vo();function xg(t,e){return t.getName(e)||t.getId(e)}var _g="__universalTransitionEnabled",bg=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._selectedDataIndicesMap={},e}return n(e,t),e.prototype.init=function(t,e,n){this.seriesIndex=this.componentIndex,this.dataTask=wf({count:Sg,reset:Mg}),this.dataTask.context={model:this},this.mergeDefaultAndTheme(t,n),(mg(this).sourceManager=new $f(this)).prepareSource();var i=this.getInitialData(t,n);Tg(i,this),this.dataTask.context.data=i,mg(this).dataBeforeProcessed=i,wg(this),this._initSelectedMapFromData(i)},e.prototype.mergeDefaultAndTheme=function(t,e){var n=Pp(this),i=n?Rp(t):{},r=this.subType;zp.hasClass(r)&&(r+="Series"),C(t,e.getTheme().get(this.subType)),C(t,this.getDefaultOption()),Co(t,"label",["show"]),this.fillDataTextStyle(t.data),n&&Op(t,i,n)},e.prototype.mergeOption=function(t,e){t=C(this.option,t,!0),this.fillDataTextStyle(t.data);var n=Pp(this);n&&Op(this.option,t,n);var i=mg(this).sourceManager;i.dirty(),i.prepareSource();var r=this.getInitialData(t,e);Tg(r,this),this.dataTask.dirty(),this.dataTask.context.data=r,mg(this).dataBeforeProcessed=r,wg(this),this._initSelectedMapFromData(r)},e.prototype.fillDataTextStyle=function(t){if(t&&!$(t))for(var e=["show"],n=0;n<t.length;n++)t[n]&&t[n].label&&Co(t[n],"label",e)},e.prototype.getInitialData=function(t,e){},e.prototype.appendData=function(t){this.getRawData().appendData(t.data)},e.prototype.getData=function(t){var e=Dg(this);if(e){var n=e.context.data;return null!=t&&n.getLinkedData?n.getLinkedData(t):n}return mg(this).data},e.prototype.getAllData=function(){var t=this.getData();return t&&t.getLinkedDataAll?t.getLinkedDataAll():[{data:t}]},e.prototype.setData=function(t){var e=Dg(this);if(e){var n=e.context;n.outputData=t,e!==this.dataTask&&(n.data=t)}mg(this).data=t},e.prototype.getEncode=function(){var t=this.get("encode",!0);if(t)return yt(t)},e.prototype.getSourceManager=function(){return mg(this).sourceManager},e.prototype.getSource=function(){return this.getSourceManager().getSource()},e.prototype.getRawData=function(){return mg(this).dataBeforeProcessed},e.prototype.getColorBy=function(){return this.get("colorBy")||"series"},e.prototype.isColorBySeries=function(){return"series"===this.getColorBy()},e.prototype.getBaseAxis=function(){var t=this.coordinateSystem;return t&&t.getBaseAxis&&t.getBaseAxis()},e.prototype.formatTooltip=function(t,e,n){return vg({series:this,dataIndex:t,multipleSeries:e})},e.prototype.isAnimationEnabled=function(){var t=this.ecModel;if(r.node&&(!t||!t.ssr))return!1;var e=this.getShallow("animation");return e&&this.getData().count()>this.getShallow("animationThreshold")&&(e=!1),!!e},e.prototype.restoreData=function(){this.dataTask.dirty()},e.prototype.getColorFromPalette=function(t,e,n){var i=this.ecModel,r=cd.prototype.getColorFromPalette.call(this,t,e,n);return r||(r=i.getColorFromPalette(t,e,n)),r},e.prototype.coordDimToDataDim=function(t){return this.getRawData().mapDimensionsAll(t)},e.prototype.getProgressive=function(){return this.get("progressive")},e.prototype.getProgressiveThreshold=function(){return this.get("progressiveThreshold")},e.prototype.select=function(t,e){this._innerSelect(this.getData(e),t)},e.prototype.unselect=function(t,e){var n=this.option.selectedMap;if(n){var i=this.option.selectedMode,r=this.getData(e);if("series"===i||"all"===n)return this.option.selectedMap={},void(this._selectedDataIndicesMap={});for(var o=0;o<t.length;o++){var a=xg(r,t[o]);n[a]=!1,this._selectedDataIndicesMap[a]=-1}}},e.prototype.toggleSelect=function(t,e){for(var n=[],i=0;i<t.length;i++)n[0]=t[i],this.isSelected(t[i],e)?this.unselect(n,e):this.select(n,e)},e.prototype.getSelectedDataIndices=function(){if("all"===this.option.selectedMap)return[].slice.call(this.getData().getIndices());for(var t=this._selectedDataIndicesMap,e=G(t),n=[],i=0;i<e.length;i++){var r=t[e[i]];r>=0&&n.push(r)}return n},e.prototype.isSelected=function(t,e){var n=this.option.selectedMap;if(!n)return!1;var i=this.getData(e);return("all"===n||n[xg(i,t)])&&!i.getItemModel(t).get(["select","disabled"])},e.prototype.isUniversalTransitionEnabled=function(){if(this[_g])return!0;var t=this.option.universalTransition;return!!t&&(!0===t||t&&t.enabled)},e.prototype._innerSelect=function(t,e){var n,i,r=this.option,o=r.selectedMode,a=e.length;if(o&&a)if("series"===o)r.selectedMap="all";else if("multiple"===o){q(r.selectedMap)||(r.selectedMap={});for(var s=r.selectedMap,l=0;l<a;l++){var u=e[l];s[c=xg(t,u)]=!0,this._selectedDataIndicesMap[c]=t.getRawIndex(u)}}else if("single"===o||!0===o){var h=e[a-1],c=xg(t,h);r.selectedMap=((n={})[c]=!0,n),this._selectedDataIndicesMap=((i={})[c]=t.getRawIndex(h),i)}},e.prototype._initSelectedMapFromData=function(t){if(!this.option.selectedMap){var e=[];t.hasItemOption&&t.each((function(n){var i=t.getRawDataItem(n);i&&i.selected&&e.push(n)})),e.length>0&&this._innerSelect(t,e)}},e.registerClass=function(t){return zp.registerClass(t)},e.protoInitialize=function(){var t=e.prototype;t.type="series.__base__",t.seriesIndex=0,t.ignoreStyleOnData=!1,t.hasSymbolVisual=!1,t.defaultSymbol="circle",t.visualStyleAccessPath="itemStyle",t.visualDrawType="fill"}(),e}(zp);function wg(t){var e=t.name;No(t)||(t.name=function(t){var e=t.getRawData(),n=e.mapDimensionsAll("seriesName"),i=[];return E(n,(function(t){var n=e.getDimensionInfo(t);n.displayName&&i.push(n.displayName)})),i.join(" ")}(t)||e)}function Sg(t){return t.model.getRawData().count()}function Mg(t){var e=t.model;return e.setData(e.getRawData().cloneShallow()),Ig}function Ig(t,e){e.outputData&&t.end>e.outputData.count()&&e.model.getRawData().cloneShallow(e.outputData)}function Tg(t,e){E(vt(t.CHANGABLE_METHODS,t.DOWNSAMPLE_METHODS),(function(n){t.wrapMethod(n,H(Cg,e))}))}function Cg(t,e){var n=Dg(t);return n&&n.setOutputEnd((e||this).count()),e}function Dg(t){var e=(t.ecModel||{}).scheduler,n=e&&e.getPipeline(t.uid);if(n){var i=n.currentTask;if(i){var r=i.agentStubMap;r&&(i=r.get(t.uid))}return i}}R(bg,_f),R(bg,cd),Jo(bg,zp);var Ag=function(){function t(){this.group=new Br,this.uid=Ac("viewComponent")}return t.prototype.init=function(t,e){},t.prototype.render=function(t,e,n,i){},t.prototype.dispose=function(t,e){},t.prototype.updateView=function(t,e,n,i){},t.prototype.updateLayout=function(t,e,n,i){},t.prototype.updateVisual=function(t,e,n,i){},t.prototype.toggleBlurSeries=function(t,e,n){},t.prototype.eachRendered=function(t){var e=this.group;e&&e.traverse(t)},t}();function kg(){var t=Vo();return function(e){var n=t(e),i=e.pipelineContext,r=!!n.large,o=!!n.progressiveRender,a=n.large=!(!i||!i.large),s=n.progressiveRender=!(!i||!i.progressiveRender);return!(r===a&&o===s)&&"reset"}}$o(Ag),na(Ag);var Lg=Vo(),Pg=kg(),Og=function(){function t(){this.group=new Br,this.uid=Ac("viewChart"),this.renderTask=wf({plan:Eg,reset:zg}),this.renderTask.context={view:this}}return t.prototype.init=function(t,e){},t.prototype.render=function(t,e,n,i){0},t.prototype.highlight=function(t,e,n,i){var r=t.getData(i&&i.dataType);r&&Ng(r,i,"emphasis")},t.prototype.downplay=function(t,e,n,i){var r=t.getData(i&&i.dataType);r&&Ng(r,i,"normal")},t.prototype.remove=function(t,e){this.group.removeAll()},t.prototype.dispose=function(t,e){},t.prototype.updateView=function(t,e,n,i){this.render(t,e,n,i)},t.prototype.updateLayout=function(t,e,n,i){this.render(t,e,n,i)},t.prototype.updateVisual=function(t,e,n,i){this.render(t,e,n,i)},t.prototype.eachRendered=function(t){Jh(this.group,t)},t.markUpdateMethod=function(t,e){Lg(t).updateMethod=e},t.protoInitialize=void(t.prototype.type="chart"),t}();function Rg(t,e,n){t&&Ql(t)&&("emphasis"===e?Ol:Rl)(t,n)}function Ng(t,e,n){var i=zo(t,e),r=e&&null!=e.highlightKey?function(t){var e=sl[t];return null==e&&al<=32&&(e=sl[t]=al++),e}(e.highlightKey):null;null!=i?E(To(i),(function(e){Rg(t.getItemGraphicEl(e),n,r)})):t.eachItemGraphicEl((function(t){Rg(t,n,r)}))}function Eg(t){return Pg(t.model)}function zg(t){var e=t.model,n=t.ecModel,i=t.api,r=t.payload,o=e.pipelineContext.progressiveRender,a=t.view,s=r&&Lg(r).updateMethod,l=o?"incrementalPrepareRender":s&&a[s]?s:"render";return"render"!==l&&a[l](e,n,i,r),Vg[l]}$o(Og),na(Og);var Vg={incrementalPrepareRender:{progress:function(t,e){e.view.incrementalRender(t,e.model,e.ecModel,e.api,e.payload)}},render:{forceFirstProgress:!0,progress:function(t,e){e.view.render(e.model,e.ecModel,e.api,e.payload)}}},Bg="\0__throttleOriginMethod",Fg="\0__throttleRate",Gg="\0__throttleType";function Wg(t,e,n){var i,r,o,a,s,l=0,u=0,h=null;function c(){u=(new Date).getTime(),h=null,t.apply(o,a||[])}e=e||0;var p=function(){for(var t=[],p=0;p<arguments.length;p++)t[p]=arguments[p];i=(new Date).getTime(),o=this,a=t;var d=s||e,f=s||n;s=null,r=i-(f?l:u)-d,clearTimeout(h),f?h=setTimeout(c,d):r>=0?c():h=setTimeout(c,-r),l=i};return p.clear=function(){h&&(clearTimeout(h),h=null)},p.debounceNextCall=function(t){s=t},p}function Hg(t,e,n,i){var r=t[e];if(r){var o=r[Bg]||r,a=r[Gg];if(r[Fg]!==n||a!==i){if(null==n||!i)return t[e]=o;(r=t[e]=Wg(o,n,"debounce"===i))[Bg]=o,r[Gg]=i,r[Fg]=n}return r}}function Yg(t,e){var n=t[e];n&&n[Bg]&&(n.clear&&n.clear(),t[e]=n[Bg])}var Xg=Vo(),Ug={itemStyle:ia(Mc,!0),lineStyle:ia(bc,!0)},Zg={lineStyle:"stroke",itemStyle:"fill"};function jg(t,e){var n=t.visualStyleMapper||Ug[e];return n||(console.warn("Unknown style type '"+e+"'."),Ug.itemStyle)}function qg(t,e){var n=t.visualDrawType||Zg[e];return n||(console.warn("Unknown style type '"+e+"'."),"fill")}var Kg={createOnAllSeries:!0,performRawSeries:!0,reset:function(t,e){var n=t.getData(),i=t.visualStyleAccessPath||"itemStyle",r=t.getModel(i),o=jg(t,i)(r),a=r.getShallow("decal");a&&(n.setVisual("decal",a),a.dirty=!0);var s=qg(t,i),l=o[s],u=X(l)?l:null,h="auto"===o.fill||"auto"===o.stroke;if(!o[s]||u||h){var c=t.getColorFromPalette(t.name,null,e.getSeriesCount());o[s]||(o[s]=c,n.setVisual("colorFromPalette",!0)),o.fill="auto"===o.fill||X(o.fill)?c:o.fill,o.stroke="auto"===o.stroke||X(o.stroke)?c:o.stroke}if(n.setVisual("style",o),n.setVisual("drawType",s),!e.isSeriesFiltered(t)&&u)return n.setVisual("colorFromPalette",!1),{dataEach:function(e,n){var i=t.getDataParams(n),r=A({},o);r[s]=u(i),e.setItemVisual(n,"style",r)}}}},$g=new Cc,Jg={createOnAllSeries:!0,performRawSeries:!0,reset:function(t,e){if(!t.ignoreStyleOnData&&!e.isSeriesFiltered(t)){var n=t.getData(),i=t.visualStyleAccessPath||"itemStyle",r=jg(t,i),o=n.getVisual("drawType");return{dataEach:n.hasItemOption?function(t,e){var n=t.getRawDataItem(e);if(n&&n[i]){$g.option=n[i];var a=r($g);A(t.ensureUniqueItemVisual(e,"style"),a),$g.option.decal&&(t.setItemVisual(e,"decal",$g.option.decal),$g.option.decal.dirty=!0),o in a&&t.setItemVisual(e,"colorFromPalette",!1)}}:null}}}},Qg={performRawSeries:!0,overallReset:function(t){var e=yt();t.eachSeries((function(t){var n=t.getColorBy();if(!t.isColorBySeries()){var i=t.type+"-"+n,r=e.get(i);r||(r={},e.set(i,r)),Xg(t).scope=r}})),t.eachSeries((function(e){if(!e.isColorBySeries()&&!t.isSeriesFiltered(e)){var n=e.getRawData(),i={},r=e.getData(),o=Xg(e).scope,a=e.visualStyleAccessPath||"itemStyle",s=qg(e,a);r.each((function(t){var e=r.getRawIndex(t);i[e]=t})),n.each((function(t){var a=i[t];if(r.getItemVisual(a,"colorFromPalette")){var l=r.ensureUniqueItemVisual(a,"style"),u=n.getName(t)||t+"",h=n.count();l[s]=e.getColorFromPalette(u,o,h)}}))}}))}},ty=Math.PI;var ey=function(){function t(t,e,n,i){this._stageTaskMap=yt(),this.ecInstance=t,this.api=e,n=this._dataProcessorHandlers=n.slice(),i=this._visualHandlers=i.slice(),this._allHandlers=n.concat(i)}return t.prototype.restoreData=function(t,e){t.restoreData(e),this._stageTaskMap.each((function(t){var e=t.overallTask;e&&e.dirty()}))},t.prototype.getPerformArgs=function(t,e){if(t.__pipeline){var n=this._pipelineMap.get(t.__pipeline.id),i=n.context,r=!e&&n.progressiveEnabled&&(!i||i.progressiveRender)&&t.__idxInPipeline>n.blockIndex?n.step:null,o=i&&i.modDataCount;return{step:r,modBy:null!=o?Math.ceil(o/r):null,modDataCount:o}}},t.prototype.getPipeline=function(t){return this._pipelineMap.get(t)},t.prototype.updateStreamModes=function(t,e){var n=this._pipelineMap.get(t.uid),i=t.getData().count(),r=n.progressiveEnabled&&e.incrementalPrepareRender&&i>=n.threshold,o=t.get("large")&&i>=t.get("largeThreshold"),a="mod"===t.get("progressiveChunkMode")?i:null;t.pipelineContext=n.context={progressiveRender:r,modDataCount:a,large:o}},t.prototype.restorePipelines=function(t){var e=this,n=e._pipelineMap=yt();t.eachSeries((function(t){var i=t.getProgressive(),r=t.uid;n.set(r,{id:r,head:null,tail:null,threshold:t.getProgressiveThreshold(),progressiveEnabled:i&&!(t.preventIncremental&&t.preventIncremental()),blockIndex:-1,step:Math.round(i||700),count:0}),e._pipe(t,t.dataTask)}))},t.prototype.prepareStageTasks=function(){var t=this._stageTaskMap,e=this.api.getModel(),n=this.api;E(this._allHandlers,(function(i){var r=t.get(i.uid)||t.set(i.uid,{}),o="";lt(!(i.reset&&i.overallReset),o),i.reset&&this._createSeriesStageTask(i,r,e,n),i.overallReset&&this._createOverallStageTask(i,r,e,n)}),this)},t.prototype.prepareView=function(t,e,n,i){var r=t.renderTask,o=r.context;o.model=e,o.ecModel=n,o.api=i,r.__block=!t.incrementalPrepareRender,this._pipe(e,r)},t.prototype.performDataProcessorTasks=function(t,e){this._performStageTasks(this._dataProcessorHandlers,t,e,{block:!0})},t.prototype.performVisualTasks=function(t,e,n){this._performStageTasks(this._visualHandlers,t,e,n)},t.prototype._performStageTasks=function(t,e,n,i){i=i||{};var r=!1,o=this;function a(t,e){return t.setDirty&&(!t.dirtyMap||t.dirtyMap.get(e.__pipeline.id))}E(t,(function(t,s){if(!i.visualType||i.visualType===t.visualType){var l=o._stageTaskMap.get(t.uid),u=l.seriesTaskMap,h=l.overallTask;if(h){var c,p=h.agentStubMap;p.each((function(t){a(i,t)&&(t.dirty(),c=!0)})),c&&h.dirty(),o.updatePayload(h,n);var d=o.getPerformArgs(h,i.block);p.each((function(t){t.perform(d)})),h.perform(d)&&(r=!0)}else u&&u.each((function(s,l){a(i,s)&&s.dirty();var u=o.getPerformArgs(s,i.block);u.skip=!t.performRawSeries&&e.isSeriesFiltered(s.context.model),o.updatePayload(s,n),s.perform(u)&&(r=!0)}))}})),this.unfinished=r||this.unfinished},t.prototype.performSeriesTasks=function(t){var e;t.eachSeries((function(t){e=t.dataTask.perform()||e})),this.unfinished=e||this.unfinished},t.prototype.plan=function(){this._pipelineMap.each((function(t){var e=t.tail;do{if(e.__block){t.blockIndex=e.__idxInPipeline;break}e=e.getUpstream()}while(e)}))},t.prototype.updatePayload=function(t,e){"remain"!==e&&(t.context.payload=e)},t.prototype._createSeriesStageTask=function(t,e,n,i){var r=this,o=e.seriesTaskMap,a=e.seriesTaskMap=yt(),s=t.seriesType,l=t.getTargetSeries;function u(e){var s=e.uid,l=a.set(s,o&&o.get(s)||wf({plan:ay,reset:sy,count:hy}));l.context={model:e,ecModel:n,api:i,useClearVisual:t.isVisual&&!t.isLayout,plan:t.plan,reset:t.reset,scheduler:r},r._pipe(e,l)}t.createOnAllSeries?n.eachRawSeries(u):s?n.eachRawSeriesByType(s,u):l&&l(n,i).each(u)},t.prototype._createOverallStageTask=function(t,e,n,i){var r=this,o=e.overallTask=e.overallTask||wf({reset:ny});o.context={ecModel:n,api:i,overallReset:t.overallReset,scheduler:r};var a=o.agentStubMap,s=o.agentStubMap=yt(),l=t.seriesType,u=t.getTargetSeries,h=!0,c=!1,p="";function d(t){var e=t.uid,n=s.set(e,a&&a.get(e)||(c=!0,wf({reset:iy,onDirty:oy})));n.context={model:t,overallProgress:h},n.agent=o,n.__block=h,r._pipe(t,n)}lt(!t.createOnAllSeries,p),l?n.eachRawSeriesByType(l,d):u?u(n,i).each(d):(h=!1,E(n.getSeries(),d)),c&&o.dirty()},t.prototype._pipe=function(t,e){var n=t.uid,i=this._pipelineMap.get(n);!i.head&&(i.head=e),i.tail&&i.tail.pipe(e),i.tail=e,e.__idxInPipeline=i.count++,e.__pipeline=i},t.wrapStageHandler=function(t,e){return X(t)&&(t={overallReset:t,seriesType:cy(t)}),t.uid=Ac("stageHandler"),e&&(t.visualType=e),t},t}();function ny(t){t.overallReset(t.ecModel,t.api,t.payload)}function iy(t){return t.overallProgress&&ry}function ry(){this.agent.dirty(),this.getDownstream().dirty()}function oy(){this.agent&&this.agent.dirty()}function ay(t){return t.plan?t.plan(t.model,t.ecModel,t.api,t.payload):null}function sy(t){t.useClearVisual&&t.data.clearAllVisual();var e=t.resetDefines=To(t.reset(t.model,t.ecModel,t.api,t.payload));return e.length>1?z(e,(function(t,e){return uy(e)})):ly}var ly=uy(0);function uy(t){return function(e,n){var i=n.data,r=n.resetDefines[t];if(r&&r.dataEach)for(var o=e.start;o<e.end;o++)r.dataEach(i,o);else r&&r.progress&&r.progress(e,i)}}function hy(t){return t.data.count()}function cy(t){py=null;try{t(dy,fy)}catch(t){}return py}var py,dy={},fy={};function gy(t,e){for(var n in e.prototype)t[n]=bt}gy(dy,gd),gy(fy,_d),dy.eachSeriesByType=dy.eachRawSeriesByType=function(t){py=t},dy.eachComponent=function(t){"series"===t.mainType&&t.subType&&(py=t.subType)};var yy=["#37A2DA","#32C5E9","#67E0E3","#9FE6B8","#FFDB5C","#ff9f7f","#fb7293","#E062AE","#E690D1","#e7bcf3","#9d96f5","#8378EA","#96BFFF"],vy={color:yy,colorLayer:[["#37A2DA","#ffd85c","#fd7b5f"],["#37A2DA","#67E0E3","#FFDB5C","#ff9f7f","#E062AE","#9d96f5"],["#37A2DA","#32C5E9","#9FE6B8","#FFDB5C","#ff9f7f","#fb7293","#e7bcf3","#8378EA","#96BFFF"],yy]},my="#B9B8CE",xy="#100C2A",_y=function(){return{axisLine:{lineStyle:{color:my}},splitLine:{lineStyle:{color:"#484753"}},splitArea:{areaStyle:{color:["rgba(255,255,255,0.02)","rgba(255,255,255,0.05)"]}},minorSplitLine:{lineStyle:{color:"#20203B"}}}},by=["#4992ff","#7cffb2","#fddd60","#ff6e76","#58d9f9","#05c091","#ff8a45","#8d48e3","#dd79ff"],wy={darkMode:!0,color:by,backgroundColor:xy,axisPointer:{lineStyle:{color:"#817f91"},crossStyle:{color:"#817f91"},label:{color:"#fff"}},legend:{textStyle:{color:my}},textStyle:{color:my},title:{textStyle:{color:"#EEF1FA"},subtextStyle:{color:"#B9B8CE"}},toolbox:{iconStyle:{borderColor:my}},dataZoom:{borderColor:"#71708A",textStyle:{color:my},brushStyle:{color:"rgba(135,163,206,0.3)"},handleStyle:{color:"#353450",borderColor:"#C5CBE3"},moveHandleStyle:{color:"#B0B6C3",opacity:.3},fillerColor:"rgba(135,163,206,0.2)",emphasis:{handleStyle:{borderColor:"#91B7F2",color:"#4D587D"},moveHandleStyle:{color:"#636D9A",opacity:.7}},dataBackground:{lineStyle:{color:"#71708A",width:1},areaStyle:{color:"#71708A"}},selectedDataBackground:{lineStyle:{color:"#87A3CE"},areaStyle:{color:"#87A3CE"}}},visualMap:{textStyle:{color:my}},timeline:{lineStyle:{color:my},label:{color:my},controlStyle:{color:my,borderColor:my}},calendar:{itemStyle:{color:xy},dayLabel:{color:my},monthLabel:{color:my},yearLabel:{color:my}},timeAxis:_y(),logAxis:_y(),valueAxis:_y(),categoryAxis:_y(),line:{symbol:"circle"},graph:{color:by},gauge:{title:{color:my},axisLine:{lineStyle:{color:[[1,"rgba(207,212,219,0.2)"]]}},axisLabel:{color:my},detail:{color:"#EEF1FA"}},candlestick:{itemStyle:{color:"#f64e56",color0:"#54ea92",borderColor:"#f64e56",borderColor0:"#54ea92"}}};wy.categoryAxis.splitLine.show=!1;var Sy=function(){function t(){}return t.prototype.normalizeQuery=function(t){var e={},n={},i={};if(U(t)){var r=Ko(t);e.mainType=r.main||null,e.subType=r.sub||null}else{var o=["Index","Name","Id"],a={name:1,dataIndex:1,dataType:1};E(t,(function(t,r){for(var s=!1,l=0;l<o.length;l++){var u=o[l],h=r.lastIndexOf(u);if(h>0&&h===r.length-u.length){var c=r.slice(0,h);"data"!==c&&(e.mainType=c,e[u.toLowerCase()]=t,s=!0)}}a.hasOwnProperty(r)&&(n[r]=t,s=!0),s||(i[r]=t)}))}return{cptQuery:e,dataQuery:n,otherQuery:i}},t.prototype.filter=function(t,e){var n=this.eventInfo;if(!n)return!0;var i=n.targetEl,r=n.packedEvent,o=n.model,a=n.view;if(!o||!a)return!0;var s=e.cptQuery,l=e.dataQuery;return u(s,o,"mainType")&&u(s,o,"subType")&&u(s,o,"index","componentIndex")&&u(s,o,"name")&&u(s,o,"id")&&u(l,r,"name")&&u(l,r,"dataIndex")&&u(l,r,"dataType")&&(!a.filterForExposedEvent||a.filterForExposedEvent(t,e.otherQuery,i,r));function u(t,e,n,i){return null==t[n]||e[i||n]===t[n]}},t.prototype.afterTrigger=function(){this.eventInfo=null},t}(),My=["symbol","symbolSize","symbolRotate","symbolOffset"],Iy=My.concat(["symbolKeepAspect"]),Ty={createOnAllSeries:!0,performRawSeries:!0,reset:function(t,e){var n=t.getData();if(t.legendIcon&&n.setVisual("legendIcon",t.legendIcon),t.hasSymbolVisual){for(var i={},r={},o=!1,a=0;a<My.length;a++){var s=My[a],l=t.get(s);X(l)?(o=!0,r[s]=l):i[s]=l}if(i.symbol=i.symbol||t.defaultSymbol,n.setVisual(A({legendIcon:t.legendIcon||i.symbol,symbolKeepAspect:t.get("symbolKeepAspect")},i)),!e.isSeriesFiltered(t)){var u=G(r);return{dataEach:o?function(e,n){for(var i=t.getRawValue(n),o=t.getDataParams(n),a=0;a<u.length;a++){var s=u[a];e.setItemVisual(n,s,r[s](i,o))}}:null}}}}},Cy={createOnAllSeries:!0,performRawSeries:!0,reset:function(t,e){if(t.hasSymbolVisual&&!e.isSeriesFiltered(t))return{dataEach:t.getData().hasItemOption?function(t,e){for(var n=t.getItemModel(e),i=0;i<Iy.length;i++){var r=Iy[i],o=n.getShallow(r,!0);null!=o&&t.setItemVisual(e,r,o)}}:null}}};function Dy(t,e,n){switch(n){case"color":return t.getItemVisual(e,"style")[t.getVisual("drawType")];case"opacity":return t.getItemVisual(e,"style").opacity;case"symbol":case"symbolSize":case"liftZ":return t.getItemVisual(e,n)}}function Ay(t,e){switch(e){case"color":return t.getVisual("style")[t.getVisual("drawType")];case"opacity":return t.getVisual("style").opacity;case"symbol":case"symbolSize":case"liftZ":return t.getVisual(e)}}function ky(t,e,n,i){switch(n){case"color":t.ensureUniqueItemVisual(e,"style")[t.getVisual("drawType")]=i,t.setItemVisual(e,"colorFromPalette",!1);break;case"opacity":t.ensureUniqueItemVisual(e,"style").opacity=i;break;case"symbol":case"symbolSize":case"liftZ":t.setItemVisual(e,n,i)}}function Ly(t,e){function n(e,n){var i=[];return e.eachComponent({mainType:"series",subType:t,query:n},(function(t){i.push(t.seriesIndex)})),i}E([[t+"ToggleSelect","toggleSelect"],[t+"Select","select"],[t+"UnSelect","unselect"]],(function(t){e(t[0],(function(e,i,r){e=A({},e),r.dispatchAction(A(e,{type:t[1],seriesIndex:n(i,e)}))}))}))}function Py(t,e,n,i,r){var o=t+e;n.isSilent(o)||i.eachComponent({mainType:"series",subType:"pie"},(function(t){for(var e=t.seriesIndex,i=t.option.selectedMap,a=r.selected,s=0;s<a.length;s++)if(a[s].seriesIndex===e){var l=t.getData(),u=zo(l,r.fromActionPayload);n.trigger(o,{type:o,seriesId:t.id,name:Y(u)?l.getName(u[0]):l.getName(u),selected:U(i)?i:A({},i)})}}))}function Oy(t,e,n){for(var i;t&&(!e(t)||(i=t,!n));)t=t.__hostTarget||t.parent;return i}var Ry=Math.round(9*Math.random()),Ny="function"==typeof Object.defineProperty,Ey=function(){function t(){this._id="__ec_inner_"+Ry++}return t.prototype.get=function(t){return this._guard(t)[this._id]},t.prototype.set=function(t,e){var n=this._guard(t);return Ny?Object.defineProperty(n,this._id,{value:e,enumerable:!1,configurable:!0}):n[this._id]=e,this},t.prototype.delete=function(t){return!!this.has(t)&&(delete this._guard(t)[this._id],!0)},t.prototype.has=function(t){return!!this._guard(t)[this._id]},t.prototype._guard=function(t){if(t!==Object(t))throw TypeError("Value of WeakMap is not a non-null object.");return t},t}(),zy=ks.extend({type:"triangle",shape:{cx:0,cy:0,width:0,height:0},buildPath:function(t,e){var n=e.cx,i=e.cy,r=e.width/2,o=e.height/2;t.moveTo(n,i-o),t.lineTo(n+r,i+o),t.lineTo(n-r,i+o),t.closePath()}}),Vy=ks.extend({type:"diamond",shape:{cx:0,cy:0,width:0,height:0},buildPath:function(t,e){var n=e.cx,i=e.cy,r=e.width/2,o=e.height/2;t.moveTo(n,i-o),t.lineTo(n+r,i),t.lineTo(n,i+o),t.lineTo(n-r,i),t.closePath()}}),By=ks.extend({type:"pin",shape:{x:0,y:0,width:0,height:0},buildPath:function(t,e){var n=e.x,i=e.y,r=e.width/5*3,o=Math.max(r,e.height),a=r/2,s=a*a/(o-a),l=i-o+a+s,u=Math.asin(s/a),h=Math.cos(u)*a,c=Math.sin(u),p=Math.cos(u),d=.6*a,f=.7*a;t.moveTo(n-h,l+s),t.arc(n,l,a,Math.PI-u,2*Math.PI+u),t.bezierCurveTo(n+h-c*d,l+s+p*d,n,i-f,n,i),t.bezierCurveTo(n,i-f,n-h+c*d,l+s+p*d,n-h,l+s),t.closePath()}}),Fy=ks.extend({type:"arrow",shape:{x:0,y:0,width:0,height:0},buildPath:function(t,e){var n=e.height,i=e.width,r=e.x,o=e.y,a=i/3*2;t.moveTo(r,o),t.lineTo(r+a,o+n),t.lineTo(r,o+n/4*3),t.lineTo(r-a,o+n),t.lineTo(r,o),t.closePath()}}),Gy={line:function(t,e,n,i,r){r.x1=t,r.y1=e+i/2,r.x2=t+n,r.y2=e+i/2},rect:function(t,e,n,i,r){r.x=t,r.y=e,r.width=n,r.height=i},roundRect:function(t,e,n,i,r){r.x=t,r.y=e,r.width=n,r.height=i,r.r=Math.min(n,i)/4},square:function(t,e,n,i,r){var o=Math.min(n,i);r.x=t,r.y=e,r.width=o,r.height=o},circle:function(t,e,n,i,r){r.cx=t+n/2,r.cy=e+i/2,r.r=Math.min(n,i)/2},diamond:function(t,e,n,i,r){r.cx=t+n/2,r.cy=e+i/2,r.width=n,r.height=i},pin:function(t,e,n,i,r){r.x=t+n/2,r.y=e+i/2,r.width=n,r.height=i},arrow:function(t,e,n,i,r){r.x=t+n/2,r.y=e+i/2,r.width=n,r.height=i},triangle:function(t,e,n,i,r){r.cx=t+n/2,r.cy=e+i/2,r.width=n,r.height=i}},Wy={};E({line:Ku,rect:Ws,roundRect:Ws,square:Ws,circle:Su,diamond:Vy,pin:By,arrow:Fy,triangle:zy},(function(t,e){Wy[e]=new t}));var Hy=ks.extend({type:"symbol",shape:{symbolType:"",x:0,y:0,width:0,height:0},calculateTextPosition:function(t,e,n){var i=Dr(t,e,n),r=this.shape;return r&&"pin"===r.symbolType&&"inside"===e.position&&(i.y=n.y+.4*n.height),i},buildPath:function(t,e,n){var i=e.symbolType;if("none"!==i){var r=Wy[i];r||(r=Wy[i="rect"]),Gy[i](e.x,e.y,e.width,e.height,r.shape),r.buildPath(t,r.shape,n)}}});function Yy(t,e){if("image"!==this.type){var n=this.style;this.__isEmptyBrush?(n.stroke=t,n.fill=e||"#fff",n.lineWidth=2):"line"===this.shape.symbolType?n.stroke=t:n.fill=t,this.markRedraw()}}function Xy(t,e,n,i,r,o,a){var s,l=0===t.indexOf("empty");return l&&(t=t.substr(5,1).toLowerCase()+t.substr(6)),(s=0===t.indexOf("image://")?Oh(t.slice(8),new ze(e,n,i,r),a?"center":"cover"):0===t.indexOf("path://")?Ph(t.slice(7),{},new ze(e,n,i,r),a?"center":"cover"):new Hy({shape:{symbolType:t,x:e,y:n,width:i,height:r}})).__isEmptyBrush=l,s.setColor=Yy,o&&s.setColor(o),s}function Uy(t){return Y(t)||(t=[+t,+t]),[t[0]||0,t[1]||0]}function Zy(t,e){if(null!=t)return Y(t)||(t=[t,t]),[$r(t[0],e[0])||0,$r(rt(t[1],t[0]),e[1])||0]}function jy(t){return isFinite(t)}function qy(t,e,n){for(var i="radial"===e.type?function(t,e,n){var i=n.width,r=n.height,o=Math.min(i,r),a=null==e.x?.5:e.x,s=null==e.y?.5:e.y,l=null==e.r?.5:e.r;return e.global||(a=a*i+n.x,s=s*r+n.y,l*=o),a=jy(a)?a:.5,s=jy(s)?s:.5,l=l>=0&&jy(l)?l:.5,t.createRadialGradient(a,s,0,a,s,l)}(t,e,n):function(t,e,n){var i=null==e.x?0:e.x,r=null==e.x2?1:e.x2,o=null==e.y?0:e.y,a=null==e.y2?0:e.y2;return e.global||(i=i*n.width+n.x,r=r*n.width+n.x,o=o*n.height+n.y,a=a*n.height+n.y),i=jy(i)?i:0,r=jy(r)?r:1,o=jy(o)?o:0,a=jy(a)?a:0,t.createLinearGradient(i,o,r,a)}(t,e,n),r=e.colorStops,o=0;o<r.length;o++)i.addColorStop(r[o].offset,r[o].color);return i}function Ky(t){return parseInt(t,10)}function $y(t,e,n){var i=["width","height"][e],r=["clientWidth","clientHeight"][e],o=["paddingLeft","paddingTop"][e],a=["paddingRight","paddingBottom"][e];if(null!=n[i]&&"auto"!==n[i])return parseFloat(n[i]);var s=document.defaultView.getComputedStyle(t);return(t[r]||Ky(s[i])||Ky(t.style[i]))-(Ky(s[o])||0)-(Ky(s[a])||0)|0}function Jy(t){var e,n,i=t.style,r=i.lineDash&&i.lineWidth>0&&(e=i.lineDash,n=i.lineWidth,e&&"solid"!==e&&n>0?"dashed"===e?[4*n,2*n]:"dotted"===e?[n]:j(e)?[e]:Y(e)?e:null:null),o=i.lineDashOffset;if(r){var a=i.strokeNoScale&&t.getLineScale?t.getLineScale():1;a&&1!==a&&(r=z(r,(function(t){return t/a})),o/=a)}return[r,o]}var Qy=new hs(!0);function tv(t){var e=t.stroke;return!(null==e||"none"===e||!(t.lineWidth>0))}function ev(t){return"string"==typeof t&&"none"!==t}function nv(t){var e=t.fill;return null!=e&&"none"!==e}function iv(t,e){if(null!=e.fillOpacity&&1!==e.fillOpacity){var n=t.globalAlpha;t.globalAlpha=e.fillOpacity*e.opacity,t.fill(),t.globalAlpha=n}else t.fill()}function rv(t,e){if(null!=e.strokeOpacity&&1!==e.strokeOpacity){var n=t.globalAlpha;t.globalAlpha=e.strokeOpacity*e.opacity,t.stroke(),t.globalAlpha=n}else t.stroke()}function ov(t,e,n){var i=la(e.image,e.__image,n);if(ha(i)){var r=t.createPattern(i,e.repeat||"repeat");if("function"==typeof DOMMatrix&&r&&r.setTransform){var o=new DOMMatrix;o.translateSelf(e.x||0,e.y||0),o.rotateSelf(0,0,(e.rotation||0)*wt),o.scaleSelf(e.scaleX||1,e.scaleY||1),r.setTransform(o)}return r}}var av=["shadowBlur","shadowOffsetX","shadowOffsetY"],sv=[["lineCap","butt"],["lineJoin","miter"],["miterLimit",10]];function lv(t,e,n,i,r){var o=!1;if(!i&&e===(n=n||{}))return!1;if(i||e.opacity!==n.opacity){cv(t,r),o=!0;var a=Math.max(Math.min(e.opacity,1),0);t.globalAlpha=isNaN(a)?Ma.opacity:a}(i||e.blend!==n.blend)&&(o||(cv(t,r),o=!0),t.globalCompositeOperation=e.blend||Ma.blend);for(var s=0;s<av.length;s++){var l=av[s];(i||e[l]!==n[l])&&(o||(cv(t,r),o=!0),t[l]=t.dpr*(e[l]||0))}return(i||e.shadowColor!==n.shadowColor)&&(o||(cv(t,r),o=!0),t.shadowColor=e.shadowColor||Ma.shadowColor),o}function uv(t,e,n,i,r){var o=pv(e,r.inHover),a=i?null:n&&pv(n,r.inHover)||{};if(o===a)return!1;var s=lv(t,o,a,i,r);if((i||o.fill!==a.fill)&&(s||(cv(t,r),s=!0),ev(o.fill)&&(t.fillStyle=o.fill)),(i||o.stroke!==a.stroke)&&(s||(cv(t,r),s=!0),ev(o.stroke)&&(t.strokeStyle=o.stroke)),(i||o.opacity!==a.opacity)&&(s||(cv(t,r),s=!0),t.globalAlpha=null==o.opacity?1:o.opacity),e.hasStroke()){var l=o.lineWidth/(o.strokeNoScale&&e.getLineScale?e.getLineScale():1);t.lineWidth!==l&&(s||(cv(t,r),s=!0),t.lineWidth=l)}for(var u=0;u<sv.length;u++){var h=sv[u],c=h[0];(i||o[c]!==a[c])&&(s||(cv(t,r),s=!0),t[c]=o[c]||h[1])}return s}function hv(t,e){var n=e.transform,i=t.dpr||1;n?t.setTransform(i*n[0],i*n[1],i*n[2],i*n[3],i*n[4],i*n[5]):t.setTransform(i,0,0,i,0,0)}function cv(t,e){e.batchFill&&t.fill(),e.batchStroke&&t.stroke(),e.batchFill="",e.batchStroke=""}function pv(t,e){return e&&t.__hoverStyle||t.style}function dv(t,e){fv(t,e,{inHover:!1,viewWidth:0,viewHeight:0},!0)}function fv(t,e,n,i){var r=e.transform;if(!e.shouldBePainted(n.viewWidth,n.viewHeight,!1,!1))return e.__dirty&=-2,void(e.__isRendered=!1);var o=e.__clipPaths,s=n.prevElClipPaths,l=!1,u=!1;if(s&&!function(t,e){if(t===e||!t&&!e)return!1;if(!t||!e||t.length!==e.length)return!0;for(var n=0;n<t.length;n++)if(t[n]!==e[n])return!0;return!1}(o,s)||(s&&s.length&&(cv(t,n),t.restore(),u=l=!0,n.prevElClipPaths=null,n.allClipped=!1,n.prevEl=null),o&&o.length&&(cv(t,n),t.save(),function(t,e,n){for(var i=!1,r=0;r<t.length;r++){var o=t[r];i=i||o.isZeroArea(),hv(e,o),e.beginPath(),o.buildPath(e,o.shape),e.clip()}n.allClipped=i}(o,t,n),l=!0),n.prevElClipPaths=o),n.allClipped)e.__isRendered=!1;else{e.beforeBrush&&e.beforeBrush(),e.innerBeforeBrush();var h=n.prevEl;h||(u=l=!0);var c,p,d=e instanceof ks&&e.autoBatch&&function(t){var e=nv(t),n=tv(t);return!(t.lineDash||!(+e^+n)||e&&"string"!=typeof t.fill||n&&"string"!=typeof t.stroke||t.strokePercent<1||t.strokeOpacity<1||t.fillOpacity<1)}(e.style);l||(c=r,p=h.transform,c&&p?c[0]!==p[0]||c[1]!==p[1]||c[2]!==p[2]||c[3]!==p[3]||c[4]!==p[4]||c[5]!==p[5]:c||p)?(cv(t,n),hv(t,e)):d||cv(t,n);var f=pv(e,n.inHover);e instanceof ks?(1!==n.lastDrawType&&(u=!0,n.lastDrawType=1),uv(t,e,h,u,n),d&&(n.batchFill||n.batchStroke)||t.beginPath(),function(t,e,n,i){var r,o=tv(n),a=nv(n),s=n.strokePercent,l=s<1,u=!e.path;e.silent&&!l||!u||e.createPathProxy();var h=e.path||Qy,c=e.__dirty;if(!i){var p=n.fill,d=n.stroke,f=a&&!!p.colorStops,g=o&&!!d.colorStops,y=a&&!!p.image,v=o&&!!d.image,m=void 0,x=void 0,_=void 0,b=void 0,w=void 0;(f||g)&&(w=e.getBoundingRect()),f&&(m=c?qy(t,p,w):e.__canvasFillGradient,e.__canvasFillGradient=m),g&&(x=c?qy(t,d,w):e.__canvasStrokeGradient,e.__canvasStrokeGradient=x),y&&(_=c||!e.__canvasFillPattern?ov(t,p,e):e.__canvasFillPattern,e.__canvasFillPattern=_),v&&(b=c||!e.__canvasStrokePattern?ov(t,d,e):e.__canvasStrokePattern,e.__canvasStrokePattern=_),f?t.fillStyle=m:y&&(_?t.fillStyle=_:a=!1),g?t.strokeStyle=x:v&&(b?t.strokeStyle=b:o=!1)}var S,M,I=e.getGlobalScale();h.setScale(I[0],I[1],e.segmentIgnoreThreshold),t.setLineDash&&n.lineDash&&(S=(r=Jy(e))[0],M=r[1]);var T=!0;(u||4&c)&&(h.setDPR(t.dpr),l?h.setContext(null):(h.setContext(t),T=!1),h.reset(),e.buildPath(h,e.shape,i),h.toStatic(),e.pathUpdated()),T&&h.rebuildPath(t,l?s:1),S&&(t.setLineDash(S),t.lineDashOffset=M),i||(n.strokeFirst?(o&&rv(t,n),a&&iv(t,n)):(a&&iv(t,n),o&&rv(t,n))),S&&t.setLineDash([])}(t,e,f,d),d&&(n.batchFill=f.fill||"",n.batchStroke=f.stroke||"")):e instanceof Ps?(3!==n.lastDrawType&&(u=!0,n.lastDrawType=3),uv(t,e,h,u,n),function(t,e,n){var i,r=n.text;if(null!=r&&(r+=""),r){t.font=n.font||a,t.textAlign=n.textAlign,t.textBaseline=n.textBaseline;var o=void 0,s=void 0;t.setLineDash&&n.lineDash&&(o=(i=Jy(e))[0],s=i[1]),o&&(t.setLineDash(o),t.lineDashOffset=s),n.strokeFirst?(tv(n)&&t.strokeText(r,n.x,n.y),nv(n)&&t.fillText(r,n.x,n.y)):(nv(n)&&t.fillText(r,n.x,n.y),tv(n)&&t.strokeText(r,n.x,n.y)),o&&t.setLineDash([])}}(t,e,f)):e instanceof Ns?(2!==n.lastDrawType&&(u=!0,n.lastDrawType=2),function(t,e,n,i,r){lv(t,pv(e,r.inHover),n&&pv(n,r.inHover),i,r)}(t,e,h,u,n),function(t,e,n){var i=e.__image=la(n.image,e.__image,e,e.onload);if(i&&ha(i)){var r=n.x||0,o=n.y||0,a=e.getWidth(),s=e.getHeight(),l=i.width/i.height;if(null==a&&null!=s?a=s*l:null==s&&null!=a?s=a/l:null==a&&null==s&&(a=i.width,s=i.height),n.sWidth&&n.sHeight){var u=n.sx||0,h=n.sy||0;t.drawImage(i,u,h,n.sWidth,n.sHeight,r,o,a,s)}else if(n.sx&&n.sy){var c=a-(u=n.sx),p=s-(h=n.sy);t.drawImage(i,u,h,c,p,r,o,a,s)}else t.drawImage(i,r,o,a,s)}}(t,e,f)):e.getTemporalDisplayables&&(4!==n.lastDrawType&&(u=!0,n.lastDrawType=4),function(t,e,n){var i=e.getDisplayables(),r=e.getTemporalDisplayables();t.save();var o,a,s={prevElClipPaths:null,prevEl:null,allClipped:!1,viewWidth:n.viewWidth,viewHeight:n.viewHeight,inHover:n.inHover};for(o=e.getCursor(),a=i.length;o<a;o++){(h=i[o]).beforeBrush&&h.beforeBrush(),h.innerBeforeBrush(),fv(t,h,s,o===a-1),h.innerAfterBrush(),h.afterBrush&&h.afterBrush(),s.prevEl=h}for(var l=0,u=r.length;l<u;l++){var h;(h=r[l]).beforeBrush&&h.beforeBrush(),h.innerBeforeBrush(),fv(t,h,s,l===u-1),h.innerAfterBrush(),h.afterBrush&&h.afterBrush(),s.prevEl=h}e.clearTemporalDisplayables(),e.notClear=!0,t.restore()}(t,e,n)),d&&i&&cv(t,n),e.innerAfterBrush(),e.afterBrush&&e.afterBrush(),n.prevEl=e,e.__dirty=0,e.__isRendered=!0}}var gv=new Ey,yv=new En(100),vv=["symbol","symbolSize","symbolKeepAspect","color","backgroundColor","dashArrayX","dashArrayY","maxTileWidth","maxTileHeight"];function mv(t,e){if("none"===t)return null;var n=e.getDevicePixelRatio(),i=e.getZr(),r="svg"===i.painter.type;t.dirty&&gv.delete(t);var o=gv.get(t);if(o)return o;var a=k(t,{symbol:"rect",symbolSize:1,symbolKeepAspect:!0,color:"rgba(0, 0, 0, 0.2)",backgroundColor:null,dashArrayX:5,dashArrayY:5,rotation:0,maxTileWidth:512,maxTileHeight:512});"none"===a.backgroundColor&&(a.backgroundColor=null);var s={repeat:"repeat"};return function(t){for(var e,o=[n],s=!0,l=0;l<vv.length;++l){var u=a[vv[l]];if(null!=u&&!Y(u)&&!U(u)&&!j(u)&&"boolean"!=typeof u){s=!1;break}o.push(u)}if(s){e=o.join(",")+(r?"-svg":"");var c=yv.get(e);c&&(r?t.svgElement=c:t.image=c)}var p,d=_v(a.dashArrayX),f=function(t){if(!t||"object"==typeof t&&0===t.length)return[0,0];if(j(t)){var e=Math.ceil(t);return[e,e]}var n=z(t,(function(t){return Math.ceil(t)}));return t.length%2?n.concat(n):n}(a.dashArrayY),g=xv(a.symbol),y=(b=d,z(b,(function(t){return bv(t)}))),v=bv(f),m=!r&&h.createCanvas(),x=r&&{tag:"g",attrs:{},key:"dcl",children:[]},_=function(){for(var t=1,e=0,n=y.length;e<n;++e)t=_o(t,y[e]);var i=1;for(e=0,n=g.length;e<n;++e)i=_o(i,g[e].length);t*=i;var r=v*y.length*g.length;return{width:Math.max(1,Math.min(t,a.maxTileWidth)),height:Math.max(1,Math.min(r,a.maxTileHeight))}}();var b;m&&(m.width=_.width*n,m.height=_.height*n,p=m.getContext("2d"));(function(){p&&(p.clearRect(0,0,m.width,m.height),a.backgroundColor&&(p.fillStyle=a.backgroundColor,p.fillRect(0,0,m.width,m.height)));for(var t=0,e=0;e<f.length;++e)t+=f[e];if(t<=0)return;var o=-v,s=0,l=0,u=0;for(;o<_.height;){if(s%2==0){for(var h=l/2%g.length,c=0,y=0,b=0;c<2*_.width;){var w=0;for(e=0;e<d[u].length;++e)w+=d[u][e];if(w<=0)break;if(y%2==0){var S=.5*(1-a.symbolSize),M=c+d[u][y]*S,I=o+f[s]*S,T=d[u][y]*a.symbolSize,C=f[s]*a.symbolSize,D=b/2%g[h].length;A(M,I,T,C,g[h][D])}c+=d[u][y],++b,++y===d[u].length&&(y=0)}++u===d.length&&(u=0)}o+=f[s],++l,++s===f.length&&(s=0)}function A(t,e,o,s,l){var u=r?1:n,h=Xy(l,t*u,e*u,o*u,s*u,a.color,a.symbolKeepAspect);if(r){var c=i.painter.renderOneToVNode(h);c&&x.children.push(c)}else dv(p,h)}})(),s&&yv.put(e,m||x);t.image=m,t.svgElement=x,t.svgWidth=_.width,t.svgHeight=_.height}(s),s.rotation=a.rotation,s.scaleX=s.scaleY=r?1:1/n,gv.set(t,s),t.dirty=!1,s}function xv(t){if(!t||0===t.length)return[["rect"]];if(U(t))return[[t]];for(var e=!0,n=0;n<t.length;++n)if(!U(t[n])){e=!1;break}if(e)return xv([t]);var i=[];for(n=0;n<t.length;++n)U(t[n])?i.push([t[n]]):i.push(t[n]);return i}function _v(t){if(!t||0===t.length)return[[0,0]];if(j(t))return[[r=Math.ceil(t),r]];for(var e=!0,n=0;n<t.length;++n)if(!j(t[n])){e=!1;break}if(e)return _v([t]);var i=[];for(n=0;n<t.length;++n)if(j(t[n])){var r=Math.ceil(t[n]);i.push([r,r])}else{(r=z(t[n],(function(t){return Math.ceil(t)}))).length%2==1?i.push(r.concat(r)):i.push(r)}return i}function bv(t){for(var e=0,n=0;n<t.length;++n)e+=t[n];return t.length%2==1?2*e:e}var wv=new jt,Sv={};function Mv(t){return Sv[t]}var Iv=2e3,Tv=4500,Cv={PROCESSOR:{FILTER:1e3,SERIES_FILTER:800,STATISTIC:5e3},VISUAL:{LAYOUT:1e3,PROGRESSIVE_LAYOUT:1100,GLOBAL:Iv,CHART:3e3,POST_CHART_LAYOUT:4600,COMPONENT:4e3,BRUSH:5e3,CHART_ITEM:Tv,ARIA:6e3,DECAL:7e3}},Dv="__flagInMainProcess",Av="__pendingUpdate",kv="__needsUpdateStatus",Lv=/^[a-zA-Z0-9_]+$/,Pv="__connectUpdateStatus";function Ov(t){return function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];if(!this.isDisposed())return Nv(this,t,e);om(this.id)}}function Rv(t){return function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return Nv(this,t,e)}}function Nv(t,e,n){return n[0]=n[0]&&n[0].toLowerCase(),jt.prototype[e].apply(t,n)}var Ev,zv,Vv,Bv,Fv,Gv,Wv,Hv,Yv,Xv,Uv,Zv,jv,qv,Kv,$v,Jv,Qv,tm=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e}(jt),em=tm.prototype;em.on=Rv("on"),em.off=Rv("off");var nm=function(t){function e(e,n,i){var r=t.call(this,new Sy)||this;r._chartsViews=[],r._chartsMap={},r._componentsViews=[],r._componentsMap={},r._pendingActions=[],i=i||{},U(n)&&(n=cm[n]),r._dom=e;var o="canvas",a="auto",s=!1;i.ssr&&Zr((function(t){var e=rl(t),n=e.dataIndex;if(null!=n){var i=yt();return i.set("series_index",e.seriesIndex),i.set("data_index",n),e.ssrType&&i.set("ssr_type",e.ssrType),i}}));var l=r._zr=Yr(e,{renderer:i.renderer||o,devicePixelRatio:i.devicePixelRatio,width:i.width,height:i.height,ssr:i.ssr,useDirtyRect:rt(i.useDirtyRect,s),useCoarsePointer:rt(i.useCoarsePointer,a),pointerSize:i.pointerSize});r._ssr=i.ssr,r._throttledZrFlush=Wg(W(l.flush,l),17),(n=T(n))&&Xd(n,!0),r._theme=n,r._locale=function(t){if(U(t)){var e=Rc[t.toUpperCase()]||{};return t===Lc||t===Pc?T(e):C(T(e),T(Rc[Oc]),!1)}return C(T(t),T(Rc[Oc]),!1)}(i.locale||Ec),r._coordSysMgr=new wd;var u=r._api=Kv(r);function h(t,e){return t.__prio-e.__prio}return Qe(hm,h),Qe(lm,h),r._scheduler=new ey(r,u,lm,hm),r._messageCenter=new tm,r._initEvents(),r.resize=W(r.resize,r),l.animation.on("frame",r._onframe,r),Xv(l,r),Uv(l,r),ct(r),r}return n(e,t),e.prototype._onframe=function(){if(!this._disposed){Qv(this);var t=this._scheduler;if(this[Av]){var e=this[Av].silent;this[Dv]=!0;try{Ev(this),Bv.update.call(this,null,this[Av].updateParams)}catch(t){throw this[Dv]=!1,this[Av]=null,t}this._zr.flush(),this[Dv]=!1,this[Av]=null,Hv.call(this,e),Yv.call(this,e)}else if(t.unfinished){var n=1,i=this._model,r=this._api;t.unfinished=!1;do{var o=+new Date;t.performSeriesTasks(i),t.performDataProcessorTasks(i),Gv(this,i),t.performVisualTasks(i),qv(this,this._model,r,"remain",{}),n-=+new Date-o}while(n>0&&t.unfinished);t.unfinished||this._zr.flush()}}},e.prototype.getDom=function(){return this._dom},e.prototype.getId=function(){return this.id},e.prototype.getZr=function(){return this._zr},e.prototype.isSSR=function(){return this._ssr},e.prototype.setOption=function(t,e,n){if(!this[Dv])if(this._disposed)om(this.id);else{var i,r,o;if(q(e)&&(n=e.lazyUpdate,i=e.silent,r=e.replaceMerge,o=e.transition,e=e.notMerge),this[Dv]=!0,!this._model||e){var a=new Md(this._api),s=this._theme,l=this._model=new gd;l.scheduler=this._scheduler,l.ssr=this._ssr,l.init(null,null,null,s,this._locale,a)}this._model.setOption(t,{replaceMerge:r},um);var u={seriesTransition:o,optionChanged:!0};if(n)this[Av]={silent:i,updateParams:u},this[Dv]=!1,this.getZr().wakeUp();else{try{Ev(this),Bv.update.call(this,null,u)}catch(t){throw this[Av]=null,this[Dv]=!1,t}this._ssr||this._zr.flush(),this[Av]=null,this[Dv]=!1,Hv.call(this,i),Yv.call(this,i)}}},e.prototype.setTheme=function(){bo()},e.prototype.getModel=function(){return this._model},e.prototype.getOption=function(){return this._model&&this._model.getOption()},e.prototype.getWidth=function(){return this._zr.getWidth()},e.prototype.getHeight=function(){return this._zr.getHeight()},e.prototype.getDevicePixelRatio=function(){return this._zr.painter.dpr||r.hasGlobalWindow&&window.devicePixelRatio||1},e.prototype.getRenderedCanvas=function(t){return this.renderToCanvas(t)},e.prototype.renderToCanvas=function(t){t=t||{};var e=this._zr.painter;return e.getRenderedCanvas({backgroundColor:t.backgroundColor||this._model.get("backgroundColor"),pixelRatio:t.pixelRatio||this.getDevicePixelRatio()})},e.prototype.renderToSVGString=function(t){t=t||{};var e=this._zr.painter;return e.renderToString({useViewBox:t.useViewBox})},e.prototype.getSvgDataURL=function(){if(r.svgSupported){var t=this._zr;return E(t.storage.getDisplayList(),(function(t){t.stopAnimation(null,!0)})),t.painter.toDataURL()}},e.prototype.getDataURL=function(t){if(!this._disposed){var e=(t=t||{}).excludeComponents,n=this._model,i=[],r=this;E(e,(function(t){n.eachComponent({mainType:t},(function(t){var e=r._componentsMap[t.__viewId];e.group.ignore||(i.push(e),e.group.ignore=!0)}))}));var o="svg"===this._zr.painter.getType()?this.getSvgDataURL():this.renderToCanvas(t).toDataURL("image/"+(t&&t.type||"png"));return E(i,(function(t){t.group.ignore=!1})),o}om(this.id)},e.prototype.getConnectedDataURL=function(t){if(!this._disposed){var e="svg"===t.type,n=this.group,i=Math.min,r=Math.max,o=1/0;if(fm[n]){var a=o,s=o,l=-1/0,u=-1/0,c=[],p=t&&t.pixelRatio||this.getDevicePixelRatio();E(dm,(function(o,h){if(o.group===n){var p=e?o.getZr().painter.getSvgDom().innerHTML:o.renderToCanvas(T(t)),d=o.getDom().getBoundingClientRect();a=i(d.left,a),s=i(d.top,s),l=r(d.right,l),u=r(d.bottom,u),c.push({dom:p,left:d.left,top:d.top})}}));var d=(l*=p)-(a*=p),f=(u*=p)-(s*=p),g=h.createCanvas(),y=Yr(g,{renderer:e?"svg":"canvas"});if(y.resize({width:d,height:f}),e){var v="";return E(c,(function(t){var e=t.left-a,n=t.top-s;v+='<g transform="translate('+e+","+n+')">'+t.dom+"</g>"})),y.painter.getSvgRoot().innerHTML=v,t.connectedBackgroundColor&&y.painter.setBackgroundColor(t.connectedBackgroundColor),y.refreshImmediately(),y.painter.toDataURL()}return t.connectedBackgroundColor&&y.add(new Ws({shape:{x:0,y:0,width:d,height:f},style:{fill:t.connectedBackgroundColor}})),E(c,(function(t){var e=new Ns({style:{x:t.left*p-a,y:t.top*p-s,image:t.dom}});y.add(e)})),y.refreshImmediately(),g.toDataURL("image/"+(t&&t.type||"png"))}return this.getDataURL(t)}om(this.id)},e.prototype.convertToPixel=function(t,e){return Fv(this,"convertToPixel",t,e)},e.prototype.convertFromPixel=function(t,e){return Fv(this,"convertFromPixel",t,e)},e.prototype.containPixel=function(t,e){var n;if(!this._disposed)return E(Fo(this._model,t),(function(t,i){i.indexOf("Models")>=0&&E(t,(function(t){var r=t.coordinateSystem;if(r&&r.containPoint)n=n||!!r.containPoint(e);else if("seriesModels"===i){var o=this._chartsMap[t.__viewId];o&&o.containPoint&&(n=n||o.containPoint(e,t))}else 0}),this)}),this),!!n;om(this.id)},e.prototype.getVisual=function(t,e){var n=Fo(this._model,t,{defaultMainType:"series"}),i=n.seriesModel;var r=i.getData(),o=n.hasOwnProperty("dataIndexInside")?n.dataIndexInside:n.hasOwnProperty("dataIndex")?r.indexOfRawIndex(n.dataIndex):null;return null!=o?Dy(r,o,e):Ay(r,e)},e.prototype.getViewOfComponentModel=function(t){return this._componentsMap[t.__viewId]},e.prototype.getViewOfSeriesModel=function(t){return this._chartsMap[t.__viewId]},e.prototype._initEvents=function(){var t,e,n,i=this;E(rm,(function(t){var e=function(e){var n,r=i.getModel(),o=e.target,a="globalout"===t;if(a?n={}:o&&Oy(o,(function(t){var e=rl(t);if(e&&null!=e.dataIndex){var i=e.dataModel||r.getSeriesByIndex(e.seriesIndex);return n=i&&i.getDataParams(e.dataIndex,e.dataType,o)||{},!0}if(e.eventData)return n=A({},e.eventData),!0}),!0),n){var s=n.componentType,l=n.componentIndex;"markLine"!==s&&"markPoint"!==s&&"markArea"!==s||(s="series",l=n.seriesIndex);var u=s&&null!=l&&r.getComponent(s,l),h=u&&i["series"===u.mainType?"_chartsMap":"_componentsMap"][u.__viewId];0,n.event=e,n.type=t,i._$eventProcessor.eventInfo={targetEl:o,packedEvent:n,model:u,view:h},i.trigger(t,n)}};e.zrEventfulCallAtLast=!0,i._zr.on(t,e,i)})),E(sm,(function(t,e){i._messageCenter.on(e,(function(t){this.trigger(e,t)}),i)})),E(["selectchanged"],(function(t){i._messageCenter.on(t,(function(e){this.trigger(t,e)}),i)})),t=this._messageCenter,e=this,n=this._api,t.on("selectchanged",(function(t){var i=n.getModel();t.isFromClick?(Py("map","selectchanged",e,i,t),Py("pie","selectchanged",e,i,t)):"select"===t.fromAction?(Py("map","selected",e,i,t),Py("pie","selected",e,i,t)):"unselect"===t.fromAction&&(Py("map","unselected",e,i,t),Py("pie","unselected",e,i,t))}))},e.prototype.isDisposed=function(){return this._disposed},e.prototype.clear=function(){this._disposed?om(this.id):this.setOption({series:[]},!0)},e.prototype.dispose=function(){if(this._disposed)om(this.id);else{this._disposed=!0,this.getDom()&&Xo(this.getDom(),vm,"");var t=this,e=t._api,n=t._model;E(t._componentsViews,(function(t){t.dispose(n,e)})),E(t._chartsViews,(function(t){t.dispose(n,e)})),t._zr.dispose(),t._dom=t._model=t._chartsMap=t._componentsMap=t._chartsViews=t._componentsViews=t._scheduler=t._api=t._zr=t._throttledZrFlush=t._theme=t._coordSysMgr=t._messageCenter=null,delete dm[t.id]}},e.prototype.resize=function(t){if(!this[Dv])if(this._disposed)om(this.id);else{this._zr.resize(t);var e=this._model;if(this._loadingFX&&this._loadingFX.resize(),e){var n=e.resetOption("media"),i=t&&t.silent;this[Av]&&(null==i&&(i=this[Av].silent),n=!0,this[Av]=null),this[Dv]=!0;try{n&&Ev(this),Bv.update.call(this,{type:"resize",animation:A({duration:0},t&&t.animation)})}catch(t){throw this[Dv]=!1,t}this[Dv]=!1,Hv.call(this,i),Yv.call(this,i)}}},e.prototype.showLoading=function(t,e){if(this._disposed)om(this.id);else if(q(t)&&(e=t,t=""),t=t||"default",this.hideLoading(),pm[t]){var n=pm[t](this._api,e),i=this._zr;this._loadingFX=n,i.add(n)}},e.prototype.hideLoading=function(){this._disposed?om(this.id):(this._loadingFX&&this._zr.remove(this._loadingFX),this._loadingFX=null)},e.prototype.makeActionFromEvent=function(t){var e=A({},t);return e.type=sm[t.type],e},e.prototype.dispatchAction=function(t,e){if(this._disposed)om(this.id);else if(q(e)||(e={silent:!!e}),am[t.type]&&this._model)if(this[Dv])this._pendingActions.push(t);else{var n=e.silent;Wv.call(this,t,n);var i=e.flush;i?this._zr.flush():!1!==i&&r.browser.weChat&&this._throttledZrFlush(),Hv.call(this,n),Yv.call(this,n)}},e.prototype.updateLabelLayout=function(){wv.trigger("series:layoutlabels",this._model,this._api,{updatedSeries:[]})},e.prototype.appendData=function(t){if(this._disposed)om(this.id);else{var e=t.seriesIndex,n=this.getModel().getSeriesByIndex(e);0,n.appendData(t),this._scheduler.unfinished=!0,this.getZr().wakeUp()}},e.internalField=function(){function t(t){t.clearColorPalette(),t.eachSeries((function(t){t.clearColorPalette()}))}function e(t){for(var e=[],n=t.currentStates,i=0;i<n.length;i++){var r=n[i];"emphasis"!==r&&"blur"!==r&&"select"!==r&&e.push(r)}t.selected&&t.states.select&&e.push("select"),2===t.hoverState&&t.states.emphasis?e.push("emphasis"):1===t.hoverState&&t.states.blur&&e.push("blur"),t.useStates(e)}function i(t,e){if(!t.preventAutoZ){var n=t.get("z")||0,i=t.get("zlevel")||0;e.eachRendered((function(t){return o(t,n,i,-1/0),!0}))}}function o(t,e,n,i){var r=t.getTextContent(),a=t.getTextGuideLine();if(t.isGroup)for(var s=t.childrenRef(),l=0;l<s.length;l++)i=Math.max(o(s[l],e,n,i),i);else t.z=e,t.zlevel=n,i=Math.max(t.z2,i);if(r&&(r.z=e,r.zlevel=n,isFinite(i)&&(r.z2=i+2)),a){var u=t.textGuideLineConfig;a.z=e,a.zlevel=n,isFinite(i)&&(a.z2=i+(u&&u.showAbove?1:-1))}return i}function a(t,e){e.eachRendered((function(t){if(!xh(t)){var e=t.getTextContent(),n=t.getTextGuideLine();t.stateTransition&&(t.stateTransition=null),e&&e.stateTransition&&(e.stateTransition=null),n&&n.stateTransition&&(n.stateTransition=null),t.hasState()?(t.prevStates=t.currentStates,t.clearStates()):t.prevStates&&(t.prevStates=null)}}))}function s(t,n){var i=t.getModel("stateAnimation"),r=t.isAnimationEnabled(),o=i.get("duration"),a=o>0?{duration:o,delay:i.get("delay"),easing:i.get("easing")}:null;n.eachRendered((function(t){if(t.states&&t.states.emphasis){if(xh(t))return;if(t instanceof ks&&function(t){var e=ll(t);e.normalFill=t.style.fill,e.normalStroke=t.style.stroke;var n=t.states.select||{};e.selectFill=n.style&&n.style.fill||null,e.selectStroke=n.style&&n.style.stroke||null}(t),t.__dirty){var n=t.prevStates;n&&t.useStates(n)}if(r){t.stateTransition=a;var i=t.getTextContent(),o=t.getTextGuideLine();i&&(i.stateTransition=a),o&&(o.stateTransition=a)}t.__dirty&&e(t)}}))}Ev=function(t){var e=t._scheduler;e.restorePipelines(t._model),e.prepareStageTasks(),zv(t,!0),zv(t,!1),e.plan()},zv=function(t,e){for(var n=t._model,i=t._scheduler,r=e?t._componentsViews:t._chartsViews,o=e?t._componentsMap:t._chartsMap,a=t._zr,s=t._api,l=0;l<r.length;l++)r[l].__alive=!1;function u(t){var l=t.__requireNewView;t.__requireNewView=!1;var u="_ec_"+t.id+"_"+t.type,h=!l&&o[u];if(!h){var c=Ko(t.type),p=e?Ag.getClass(c.main,c.sub):Og.getClass(c.sub);0,(h=new p).init(n,s),o[u]=h,r.push(h),a.add(h.group)}t.__viewId=h.__id=u,h.__alive=!0,h.__model=t,h.group.__ecComponentInfo={mainType:t.mainType,index:t.componentIndex},!e&&i.prepareView(h,t,n,s)}e?n.eachComponent((function(t,e){"series"!==t&&u(e)})):n.eachSeries(u);for(l=0;l<r.length;){var h=r[l];h.__alive?l++:(!e&&h.renderTask.dispose(),a.remove(h.group),h.dispose(n,s),r.splice(l,1),o[h.__id]===h&&delete o[h.__id],h.__id=h.group.__ecComponentInfo=null)}},Vv=function(t,e,n,i,r){var o=t._model;if(o.setUpdatePayload(n),i){var a={};a[i+"Id"]=n[i+"Id"],a[i+"Index"]=n[i+"Index"],a[i+"Name"]=n[i+"Name"];var s={mainType:i,query:a};r&&(s.subType=r);var l,u=n.excludeSeriesId;null!=u&&(l=yt(),E(To(u),(function(t){var e=Ro(t,null);null!=e&&l.set(e,!0)}))),o&&o.eachComponent(s,(function(e){if(!(l&&null!=l.get(e.id)))if(eu(n))if(e instanceof bg)n.type!==dl||n.notBlur||e.get(["emphasis","disabled"])||function(t,e,n){var i=t.seriesIndex,r=t.getData(e.dataType);if(r){var o=zo(r,e);o=(Y(o)?o[0]:o)||0;var a=r.getItemGraphicEl(o);if(!a)for(var s=r.count(),l=0;!a&&l<s;)a=r.getItemGraphicEl(l++);if(a){var u=rl(a);Gl(i,u.focus,u.blurScope,n)}else{var h=t.get(["emphasis","focus"]),c=t.get(["emphasis","blurScope"]);null!=h&&Gl(i,h,c,n)}}}(e,n,t._api);else{var i=Hl(e.mainType,e.componentIndex,n.name,t._api),r=i.focusSelf,o=i.dispatchers;n.type===dl&&r&&!n.notBlur&&Wl(e.mainType,e.componentIndex,t._api),o&&E(o,(function(t){n.type===dl?Ol(t):Rl(t)}))}else tu(n)&&e instanceof bg&&(!function(t,e,n){if(tu(e)){var i=e.dataType,r=zo(t.getData(i),e);Y(r)||(r=[r]),t[e.type===vl?"toggleSelect":e.type===gl?"select":"unselect"](r,i)}}(e,n,t._api),Yl(e),Jv(t))}),t),o&&o.eachComponent(s,(function(e){l&&null!=l.get(e.id)||h(t["series"===i?"_chartsMap":"_componentsMap"][e.__viewId])}),t)}else E([].concat(t._componentsViews).concat(t._chartsViews),h);function h(i){i&&i.__alive&&i[e]&&i[e](i.__model,o,t._api,n)}},Bv={prepareAndUpdate:function(t){Ev(this),Bv.update.call(this,t,{optionChanged:null!=t.newOption})},update:function(e,n){var i=this._model,r=this._api,o=this._zr,a=this._coordSysMgr,s=this._scheduler;if(i){i.setUpdatePayload(e),s.restoreData(i,e),s.performSeriesTasks(i),a.create(i,r),s.performDataProcessorTasks(i,e),Gv(this,i),a.update(i,r),t(i),s.performVisualTasks(i,e),Zv(this,i,r,e,n);var l=i.get("backgroundColor")||"transparent",u=i.get("darkMode");o.setBackgroundColor(l),null!=u&&"auto"!==u&&o.setDarkMode(u),wv.trigger("afterupdate",i,r)}},updateTransform:function(e){var n=this,i=this._model,r=this._api;if(i){i.setUpdatePayload(e);var o=[];i.eachComponent((function(t,a){if("series"!==t){var s=n.getViewOfComponentModel(a);if(s&&s.__alive)if(s.updateTransform){var l=s.updateTransform(a,i,r,e);l&&l.update&&o.push(s)}else o.push(s)}}));var a=yt();i.eachSeries((function(t){var o=n._chartsMap[t.__viewId];if(o.updateTransform){var s=o.updateTransform(t,i,r,e);s&&s.update&&a.set(t.uid,1)}else a.set(t.uid,1)})),t(i),this._scheduler.performVisualTasks(i,e,{setDirty:!0,dirtyMap:a}),qv(this,i,r,e,{},a),wv.trigger("afterupdate",i,r)}},updateView:function(e){var n=this._model;n&&(n.setUpdatePayload(e),Og.markUpdateMethod(e,"updateView"),t(n),this._scheduler.performVisualTasks(n,e,{setDirty:!0}),Zv(this,n,this._api,e,{}),wv.trigger("afterupdate",n,this._api))},updateVisual:function(e){var n=this,i=this._model;i&&(i.setUpdatePayload(e),i.eachSeries((function(t){t.getData().clearAllVisual()})),Og.markUpdateMethod(e,"updateVisual"),t(i),this._scheduler.performVisualTasks(i,e,{visualType:"visual",setDirty:!0}),i.eachComponent((function(t,r){if("series"!==t){var o=n.getViewOfComponentModel(r);o&&o.__alive&&o.updateVisual(r,i,n._api,e)}})),i.eachSeries((function(t){n._chartsMap[t.__viewId].updateVisual(t,i,n._api,e)})),wv.trigger("afterupdate",i,this._api))},updateLayout:function(t){Bv.update.call(this,t)}},Fv=function(t,e,n,i){if(t._disposed)om(t.id);else{for(var r,o=t._model,a=t._coordSysMgr.getCoordinateSystems(),s=Fo(o,n),l=0;l<a.length;l++){var u=a[l];if(u[e]&&null!=(r=u[e](o,s,i)))return r}0}},Gv=function(t,e){var n=t._chartsMap,i=t._scheduler;e.eachSeries((function(t){i.updateStreamModes(t,n[t.__viewId])}))},Wv=function(t,e){var n=this,i=this.getModel(),r=t.type,o=t.escapeConnect,a=am[r],s=a.actionInfo,l=(s.update||"update").split(":"),u=l.pop(),h=null!=l[0]&&Ko(l[0]);this[Dv]=!0;var c=[t],p=!1;t.batch&&(p=!0,c=z(t.batch,(function(e){return(e=k(A({},e),t)).batch=null,e})));var d,f=[],g=tu(t),y=eu(t);if(y&&Fl(this._api),E(c,(function(e){if((d=(d=a.action(e,n._model,n._api))||A({},e)).type=s.event||d.type,f.push(d),y){var i=Go(t),r=i.queryOptionMap,o=i.mainTypeSpecified?r.keys()[0]:"series";Vv(n,u,e,o),Jv(n)}else g?(Vv(n,u,e,"series"),Jv(n)):h&&Vv(n,u,e,h.main,h.sub)})),"none"!==u&&!y&&!g&&!h)try{this[Av]?(Ev(this),Bv.update.call(this,t),this[Av]=null):Bv[u].call(this,t)}catch(t){throw this[Dv]=!1,t}if(d=p?{type:s.event||r,escapeConnect:o,batch:f}:f[0],this[Dv]=!1,!e){var v=this._messageCenter;if(v.trigger(d.type,d),g){var m={type:"selectchanged",escapeConnect:o,selected:Xl(i),isFromClick:t.isFromClick||!1,fromAction:t.type,fromActionPayload:t};v.trigger(m.type,m)}}},Hv=function(t){for(var e=this._pendingActions;e.length;){var n=e.shift();Wv.call(this,n,t)}},Yv=function(t){!t&&this.trigger("updated")},Xv=function(t,e){t.on("rendered",(function(n){e.trigger("rendered",n),!t.animation.isFinished()||e[Av]||e._scheduler.unfinished||e._pendingActions.length||e.trigger("finished")}))},Uv=function(t,e){t.on("mouseover",(function(t){var n=Oy(t.target,Ql);n&&(!function(t,e,n){var i=rl(t),r=Hl(i.componentMainType,i.componentIndex,i.componentHighDownName,n),o=r.dispatchers,a=r.focusSelf;o?(a&&Wl(i.componentMainType,i.componentIndex,n),E(o,(function(t){return Ll(t,e)}))):(Gl(i.seriesIndex,i.focus,i.blurScope,n),"self"===i.focus&&Wl(i.componentMainType,i.componentIndex,n),Ll(t,e))}(n,t,e._api),Jv(e))})).on("mouseout",(function(t){var n=Oy(t.target,Ql);n&&(!function(t,e,n){Fl(n);var i=rl(t),r=Hl(i.componentMainType,i.componentIndex,i.componentHighDownName,n).dispatchers;r?E(r,(function(t){return Pl(t,e)})):Pl(t,e)}(n,t,e._api),Jv(e))})).on("click",(function(t){var n=Oy(t.target,(function(t){return null!=rl(t).dataIndex}),!0);if(n){var i=n.selected?"unselect":"select",r=rl(n);e._api.dispatchAction({type:i,dataType:r.dataType,dataIndexInside:r.dataIndex,seriesIndex:r.seriesIndex,isFromClick:!0})}}))},Zv=function(t,e,n,i,r){!function(t){var e=[],n=[],i=!1;if(t.eachComponent((function(t,r){var o=r.get("zlevel")||0,a=r.get("z")||0,s=r.getZLevelKey();i=i||!!s,("series"===t?n:e).push({zlevel:o,z:a,idx:r.componentIndex,type:t,key:s})})),i){var r,o,a=e.concat(n);Qe(a,(function(t,e){return t.zlevel===e.zlevel?t.z-e.z:t.zlevel-e.zlevel})),E(a,(function(e){var n=t.getComponent(e.type,e.idx),i=e.zlevel,a=e.key;null!=r&&(i=Math.max(r,i)),a?(i===r&&a!==o&&i++,o=a):o&&(i===r&&i++,o=""),r=i,n.setZLevel(i)}))}}(e),jv(t,e,n,i,r),E(t._chartsViews,(function(t){t.__alive=!1})),qv(t,e,n,i,r),E(t._chartsViews,(function(t){t.__alive||t.remove(e,n)}))},jv=function(t,e,n,r,o,l){E(l||t._componentsViews,(function(t){var o=t.__model;a(o,t),t.render(o,e,n,r),i(o,t),s(o,t)}))},qv=function(t,e,n,o,l,u){var h=t._scheduler;l=A(l||{},{updatedSeries:e.getSeries()}),wv.trigger("series:beforeupdate",e,n,l);var c=!1;e.eachSeries((function(e){var n=t._chartsMap[e.__viewId];n.__alive=!0;var i=n.renderTask;h.updatePayload(i,o),a(e,n),u&&u.get(e.uid)&&i.dirty(),i.perform(h.getPerformArgs(i))&&(c=!0),n.group.silent=!!e.get("silent"),function(t,e){var n=t.get("blendMode")||null;e.eachRendered((function(t){t.isGroup||(t.style.blend=n)}))}(e,n),Yl(e)})),h.unfinished=c||h.unfinished,wv.trigger("series:layoutlabels",e,n,l),wv.trigger("series:transition",e,n,l),e.eachSeries((function(e){var n=t._chartsMap[e.__viewId];i(e,n),s(e,n)})),function(t,e){var n=t._zr,i=n.storage,o=0;i.traverse((function(t){t.isGroup||o++})),o>e.get("hoverLayerThreshold")&&!r.node&&!r.worker&&e.eachSeries((function(e){if(!e.preventUsingHoverLayer){var n=t._chartsMap[e.__viewId];n.__alive&&n.eachRendered((function(t){t.states.emphasis&&(t.states.emphasis.hoverLayer=!0)}))}}))}(t,e),wv.trigger("series:afterupdate",e,n,l)},Jv=function(t){t[kv]=!0,t.getZr().wakeUp()},Qv=function(t){t[kv]&&(t.getZr().storage.traverse((function(t){xh(t)||e(t)})),t[kv]=!1)},Kv=function(t){return new(function(e){function i(){return null!==e&&e.apply(this,arguments)||this}return n(i,e),i.prototype.getCoordinateSystems=function(){return t._coordSysMgr.getCoordinateSystems()},i.prototype.getComponentByElement=function(e){for(;e;){var n=e.__ecComponentInfo;if(null!=n)return t._model.getComponent(n.mainType,n.index);e=e.parent}},i.prototype.enterEmphasis=function(e,n){Ol(e,n),Jv(t)},i.prototype.leaveEmphasis=function(e,n){Rl(e,n),Jv(t)},i.prototype.enterBlur=function(e){Nl(e),Jv(t)},i.prototype.leaveBlur=function(e){El(e),Jv(t)},i.prototype.enterSelect=function(e){zl(e),Jv(t)},i.prototype.leaveSelect=function(e){Vl(e),Jv(t)},i.prototype.getModel=function(){return t.getModel()},i.prototype.getViewOfComponentModel=function(e){return t.getViewOfComponentModel(e)},i.prototype.getViewOfSeriesModel=function(e){return t.getViewOfSeriesModel(e)},i}(_d))(t)},$v=function(t){function e(t,e){for(var n=0;n<t.length;n++){t[n][Pv]=e}}E(sm,(function(n,i){t._messageCenter.on(i,(function(n){if(fm[t.group]&&0!==t[Pv]){if(n&&n.escapeConnect)return;var i=t.makeActionFromEvent(n),r=[];E(dm,(function(e){e!==t&&e.group===t.group&&r.push(e)})),e(r,0),E(r,(function(t){1!==t[Pv]&&t.dispatchAction(i)})),e(r,2)}}))}))}}(),e}(jt),im=nm.prototype;im.on=Ov("on"),im.off=Ov("off"),im.one=function(t,e,n){var i=this;bo(),this.on.call(this,t,(function n(){for(var r=[],o=0;o<arguments.length;o++)r[o]=arguments[o];e&&e.apply&&e.apply(this,r),i.off(t,n)}),n)};var rm=["click","dblclick","mouseover","mouseout","mousemove","mousedown","mouseup","globalout","contextmenu"];function om(t){0}var am={},sm={},lm=[],um=[],hm=[],cm={},pm={},dm={},fm={},gm=+new Date-0,ym=+new Date-0,vm="_echarts_instance_";function mm(t){fm[t]=!1}var xm=mm;function _m(t){return dm[function(t,e){return t.getAttribute?t.getAttribute(e):t[e]}(t,vm)]}function bm(t,e){cm[t]=e}function wm(t){P(um,t)<0&&um.push(t)}function Sm(t,e){Pm(lm,t,e,2e3)}function Mm(t){Tm("afterinit",t)}function Im(t){Tm("afterupdate",t)}function Tm(t,e){wv.on(t,e)}function Cm(t,e,n){X(e)&&(n=e,e="");var i=q(t)?t.type:[t,t={event:e}][0];t.event=(t.event||i).toLowerCase(),e=t.event,sm[e]||(lt(Lv.test(i)&&Lv.test(e)),am[i]||(am[i]={action:n,actionInfo:t}),sm[e]=i)}function Dm(t,e){wd.register(t,e)}function Am(t,e){Pm(hm,t,e,1e3,"layout")}function km(t,e){Pm(hm,t,e,3e3,"visual")}var Lm=[];function Pm(t,e,n,i,r){if((X(e)||q(e))&&(n=e,e=i),!(P(Lm,n)>=0)){Lm.push(n);var o=ey.wrapStageHandler(n,r);o.__prio=e,o.__raw=n,t.push(o)}}function Om(t,e){pm[t]=e}function Rm(t,e,n){var i=Mv("registerMap");i&&i(t,e,n)}var Nm=function(t){var e=(t=T(t)).type,n="";e||wo(n);var i=e.split(":");2!==i.length&&wo(n);var r=!1;"echarts"===i[0]&&(e=i[1],r=!0),t.__isBuiltIn=r,Vf.set(e,t)};km(Iv,Kg),km(Tv,Jg),km(Tv,Qg),km(Iv,Ty),km(Tv,Cy),km(7e3,(function(t,e){t.eachRawSeries((function(n){if(!t.isSeriesFiltered(n)){var i=n.getData();i.hasItemVisual()&&i.each((function(t){var n=i.getItemVisual(t,"decal");n&&(i.ensureUniqueItemVisual(t,"style").decal=mv(n,e))}));var r=i.getVisual("decal");if(r)i.getVisual("style").decal=mv(r,e)}}))})),wm(Xd),Sm(900,(function(t){var e=yt();t.eachSeries((function(t){var n=t.get("stack");if(n){var i=e.get(n)||e.set(n,[]),r=t.getData(),o={stackResultDimension:r.getCalculationInfo("stackResultDimension"),stackedOverDimension:r.getCalculationInfo("stackedOverDimension"),stackedDimension:r.getCalculationInfo("stackedDimension"),stackedByDimension:r.getCalculationInfo("stackedByDimension"),isStackedByIndex:r.getCalculationInfo("isStackedByIndex"),data:r,seriesModel:t};if(!o.stackedDimension||!o.isStackedByIndex&&!o.stackedByDimension)return;i.length&&r.setCalculationInfo("stackedOnSeries",i[i.length-1].seriesModel),i.push(o)}})),e.each(Ud)})),Om("default",(function(t,e){k(e=e||{},{text:"loading",textColor:"#000",fontSize:12,fontWeight:"normal",fontStyle:"normal",fontFamily:"sans-serif",maskColor:"rgba(255, 255, 255, 0.8)",showSpinner:!0,color:"#5470c6",spinnerRadius:10,lineWidth:5,zlevel:0});var n=new Br,i=new Ws({style:{fill:e.maskColor},zlevel:e.zlevel,z:1e4});n.add(i);var r,o=new Xs({style:{text:e.text,fill:e.textColor,fontSize:e.fontSize,fontWeight:e.fontWeight,fontStyle:e.fontStyle,fontFamily:e.fontFamily},zlevel:e.zlevel,z:10001}),a=new Ws({style:{fill:"none"},textContent:o,textConfig:{position:"right",distance:10},zlevel:e.zlevel,z:10001});return n.add(a),e.showSpinner&&((r=new nh({shape:{startAngle:-ty/2,endAngle:-ty/2+.1,r:e.spinnerRadius},style:{stroke:e.color,lineCap:"round",lineWidth:e.lineWidth},zlevel:e.zlevel,z:10001})).animateShape(!0).when(1e3,{endAngle:3*ty/2}).start("circularInOut"),r.animateShape(!0).when(1e3,{startAngle:3*ty/2}).delay(300).start("circularInOut"),n.add(r)),n.resize=function(){var n=o.getBoundingRect().width,s=e.showSpinner?e.spinnerRadius:0,l=(t.getWidth()-2*s-(e.showSpinner&&n?10:0)-n)/2-(e.showSpinner&&n?0:5+n/2)+(e.showSpinner?0:n/2)+(n?0:s),u=t.getHeight()/2;e.showSpinner&&r.setShape({cx:l,cy:u}),a.setShape({x:l-s,y:u-s,width:2*s,height:2*s}),i.setShape({x:0,y:0,width:t.getWidth(),height:t.getHeight()})},n.resize(),n})),Cm({type:dl,event:dl,update:dl},bt),Cm({type:fl,event:fl,update:fl},bt),Cm({type:gl,event:gl,update:gl},bt),Cm({type:yl,event:yl,update:yl},bt),Cm({type:vl,event:vl,update:vl},bt),bm("light",vy),bm("dark",wy);var Em=[],zm={registerPreprocessor:wm,registerProcessor:Sm,registerPostInit:Mm,registerPostUpdate:Im,registerUpdateLifecycle:Tm,registerAction:Cm,registerCoordinateSystem:Dm,registerLayout:Am,registerVisual:km,registerTransform:Nm,registerLoading:Om,registerMap:Rm,registerImpl:function(t,e){Sv[t]=e},PRIORITY:Cv,ComponentModel:zp,ComponentView:Ag,SeriesModel:bg,ChartView:Og,registerComponentModel:function(t){zp.registerClass(t)},registerComponentView:function(t){Ag.registerClass(t)},registerSeriesModel:function(t){bg.registerClass(t)},registerChartView:function(t){Og.registerClass(t)},registerSubTypeDefaulter:function(t,e){zp.registerSubTypeDefaulter(t,e)},registerPainter:function(t,e){Xr(t,e)}};function Vm(t){Y(t)?E(t,(function(t){Vm(t)})):P(Em,t)>=0||(Em.push(t),X(t)&&(t={install:t}),t.install(zm))}function Bm(t){return null==t?0:t.length||1}function Fm(t){return t}var Gm=function(){function t(t,e,n,i,r,o){this._old=t,this._new=e,this._oldKeyGetter=n||Fm,this._newKeyGetter=i||Fm,this.context=r,this._diffModeMultiple="multiple"===o}return t.prototype.add=function(t){return this._add=t,this},t.prototype.update=function(t){return this._update=t,this},t.prototype.updateManyToOne=function(t){return this._updateManyToOne=t,this},t.prototype.updateOneToMany=function(t){return this._updateOneToMany=t,this},t.prototype.updateManyToMany=function(t){return this._updateManyToMany=t,this},t.prototype.remove=function(t){return this._remove=t,this},t.prototype.execute=function(){this[this._diffModeMultiple?"_executeMultiple":"_executeOneToOne"]()},t.prototype._executeOneToOne=function(){var t=this._old,e=this._new,n={},i=new Array(t.length),r=new Array(e.length);this._initIndexMap(t,null,i,"_oldKeyGetter"),this._initIndexMap(e,n,r,"_newKeyGetter");for(var o=0;o<t.length;o++){var a=i[o],s=n[a],l=Bm(s);if(l>1){var u=s.shift();1===s.length&&(n[a]=s[0]),this._update&&this._update(u,o)}else 1===l?(n[a]=null,this._update&&this._update(s,o)):this._remove&&this._remove(o)}this._performRestAdd(r,n)},t.prototype._executeMultiple=function(){var t=this._old,e=this._new,n={},i={},r=[],o=[];this._initIndexMap(t,n,r,"_oldKeyGetter"),this._initIndexMap(e,i,o,"_newKeyGetter");for(var a=0;a<r.length;a++){var s=r[a],l=n[s],u=i[s],h=Bm(l),c=Bm(u);if(h>1&&1===c)this._updateManyToOne&&this._updateManyToOne(u,l),i[s]=null;else if(1===h&&c>1)this._updateOneToMany&&this._updateOneToMany(u,l),i[s]=null;else if(1===h&&1===c)this._update&&this._update(u,l),i[s]=null;else if(h>1&&c>1)this._updateManyToMany&&this._updateManyToMany(u,l),i[s]=null;else if(h>1)for(var p=0;p<h;p++)this._remove&&this._remove(l[p]);else this._remove&&this._remove(l)}this._performRestAdd(o,i)},t.prototype._performRestAdd=function(t,e){for(var n=0;n<t.length;n++){var i=t[n],r=e[i],o=Bm(r);if(o>1)for(var a=0;a<o;a++)this._add&&this._add(r[a]);else 1===o&&this._add&&this._add(r);e[i]=null}},t.prototype._initIndexMap=function(t,e,n,i){for(var r=this._diffModeMultiple,o=0;o<t.length;o++){var a="_ec_"+this[i](t[o],o);if(r||(n[o]=a),e){var s=e[a],l=Bm(s);0===l?(e[a]=o,r&&n.push(a)):1===l?e[a]=[s,o]:s.push(o)}}},t}(),Wm=function(){function t(t,e){this._encode=t,this._schema=e}return t.prototype.get=function(){return{fullDimensions:this._getFullDimensionNames(),encode:this._encode}},t.prototype._getFullDimensionNames=function(){return this._cachedDimNames||(this._cachedDimNames=this._schema?this._schema.makeOutputDimensionNames():[]),this._cachedDimNames},t}();function Hm(t,e){return t.hasOwnProperty(e)||(t[e]=[]),t[e]}function Ym(t){return"category"===t?"ordinal":"time"===t?"time":"float"}var Xm=function(t){this.otherDims={},null!=t&&A(this,t)},Um=Vo(),Zm={float:"f",int:"i",ordinal:"o",number:"n",time:"t"},jm=function(){function t(t){this.dimensions=t.dimensions,this._dimOmitted=t.dimensionOmitted,this.source=t.source,this._fullDimCount=t.fullDimensionCount,this._updateDimOmitted(t.dimensionOmitted)}return t.prototype.isDimensionOmitted=function(){return this._dimOmitted},t.prototype._updateDimOmitted=function(t){this._dimOmitted=t,t&&(this._dimNameMap||(this._dimNameMap=$m(this.source)))},t.prototype.getSourceDimensionIndex=function(t){return rt(this._dimNameMap.get(t),-1)},t.prototype.getSourceDimension=function(t){var e=this.source.dimensionsDefine;if(e)return e[t]},t.prototype.makeStoreSchema=function(){for(var t=this._fullDimCount,e=af(this.source),n=!Jm(t),i="",r=[],o=0,a=0;o<t;o++){var s=void 0,l=void 0,u=void 0,h=this.dimensions[a];if(h&&h.storeDimIndex===o)s=e?h.name:null,l=h.type,u=h.ordinalMeta,a++;else{var c=this.getSourceDimension(o);c&&(s=e?c.name:null,l=c.type)}r.push({property:s,type:l,ordinalMeta:u}),!e||null==s||h&&h.isCalculationCoord||(i+=n?s.replace(/\`/g,"`1").replace(/\$/g,"`2"):s),i+="$",i+=Zm[l]||"f",u&&(i+=u.uid),i+="$"}var p=this.source;return{dimensions:r,hash:[p.seriesLayoutBy,p.startIndex,i].join("$$")}},t.prototype.makeOutputDimensionNames=function(){for(var t=[],e=0,n=0;e<this._fullDimCount;e++){var i=void 0,r=this.dimensions[n];if(r&&r.storeDimIndex===e)r.isCalculationCoord||(i=r.name),n++;else{var o=this.getSourceDimension(e);o&&(i=o.name)}t.push(i)}return t},t.prototype.appendCalculationDimension=function(t){this.dimensions.push(t),t.isCalculationCoord=!0,this._fullDimCount++,this._updateDimOmitted(!0)},t}();function qm(t){return t instanceof jm}function Km(t){for(var e=yt(),n=0;n<(t||[]).length;n++){var i=t[n],r=q(i)?i.name:i;null!=r&&null==e.get(r)&&e.set(r,n)}return e}function $m(t){var e=Um(t);return e.dimNameMap||(e.dimNameMap=Km(t.dimensionsDefine))}function Jm(t){return t>30}var Qm,tx,ex,nx,ix,rx,ox,ax=q,sx=z,lx="undefined"==typeof Int32Array?Array:Int32Array,ux=["hasItemOption","_nameList","_idList","_invertedIndicesMap","_dimSummary","userOutput","_rawData","_dimValueGetter","_nameDimIdx","_idDimIdx","_nameRepeatCount"],hx=["_approximateExtent"],cx=function(){function t(t,e){var n;this.type="list",this._dimOmitted=!1,this._nameList=[],this._idList=[],this._visual={},this._layout={},this._itemVisuals=[],this._itemLayouts=[],this._graphicEls=[],this._approximateExtent={},this._calculationInfo={},this.hasItemOption=!1,this.TRANSFERABLE_METHODS=["cloneShallow","downSample","lttbDownSample","map"],this.CHANGABLE_METHODS=["filterSelf","selectRange"],this.DOWNSAMPLE_METHODS=["downSample","lttbDownSample"];var i=!1;qm(t)?(n=t.dimensions,this._dimOmitted=t.isDimensionOmitted(),this._schema=t):(i=!0,n=t),n=n||["x","y"];for(var r={},o=[],a={},s=!1,l={},u=0;u<n.length;u++){var h=n[u],c=U(h)?new Xm({name:h}):h instanceof Xm?h:new Xm(h),p=c.name;c.type=c.type||"float",c.coordDim||(c.coordDim=p,c.coordDimIndex=0);var d=c.otherDims=c.otherDims||{};o.push(p),r[p]=c,null!=l[p]&&(s=!0),c.createInvertedIndices&&(a[p]=[]),0===d.itemName&&(this._nameDimIdx=u),0===d.itemId&&(this._idDimIdx=u),i&&(c.storeDimIndex=u)}if(this.dimensions=o,this._dimInfos=r,this._initGetDimensionInfo(s),this.hostModel=e,this._invertedIndicesMap=a,this._dimOmitted){var f=this._dimIdxToName=yt();E(o,(function(t){f.set(r[t].storeDimIndex,t)}))}}return t.prototype.getDimension=function(t){var e=this._recognizeDimIndex(t);if(null==e)return t;if(e=t,!this._dimOmitted)return this.dimensions[e];var n=this._dimIdxToName.get(e);if(null!=n)return n;var i=this._schema.getSourceDimension(e);return i?i.name:void 0},t.prototype.getDimensionIndex=function(t){var e=this._recognizeDimIndex(t);if(null!=e)return e;if(null==t)return-1;var n=this._getDimInfo(t);return n?n.storeDimIndex:this._dimOmitted?this._schema.getSourceDimensionIndex(t):-1},t.prototype._recognizeDimIndex=function(t){if(j(t)||null!=t&&!isNaN(t)&&!this._getDimInfo(t)&&(!this._dimOmitted||this._schema.getSourceDimensionIndex(t)<0))return+t},t.prototype._getStoreDimIndex=function(t){var e=this.getDimensionIndex(t);return e},t.prototype.getDimensionInfo=function(t){return this._getDimInfo(this.getDimension(t))},t.prototype._initGetDimensionInfo=function(t){var e=this._dimInfos;this._getDimInfo=t?function(t){return e.hasOwnProperty(t)?e[t]:void 0}:function(t){return e[t]}},t.prototype.getDimensionsOnCoord=function(){return this._dimSummary.dataDimsOnCoord.slice()},t.prototype.mapDimension=function(t,e){var n=this._dimSummary;if(null==e)return n.encodeFirstDimNotExtra[t];var i=n.encode[t];return i?i[e]:null},t.prototype.mapDimensionsAll=function(t){return(this._dimSummary.encode[t]||[]).slice()},t.prototype.getStore=function(){return this._store},t.prototype.initData=function(t,e,n){var i,r=this;if(t instanceof Kf&&(i=t),!i){var o=this.dimensions,a=Qd(t)||N(t)?new sf(t,o.length):t;i=new Kf;var s=sx(o,(function(t){return{type:r._dimInfos[t].type,property:t}}));i.initData(a,s,n)}this._store=i,this._nameList=(e||[]).slice(),this._idList=[],this._nameRepeatCount={},this._doInit(0,i.count()),this._dimSummary=function(t,e){var n={},i=n.encode={},r=yt(),o=[],a=[],s={};E(t.dimensions,(function(e){var n,l=t.getDimensionInfo(e),u=l.coordDim;if(u){var h=l.coordDimIndex;Hm(i,u)[h]=e,l.isExtraCoord||(r.set(u,1),"ordinal"!==(n=l.type)&&"time"!==n&&(o[0]=e),Hm(s,u)[h]=t.getDimensionIndex(l.name)),l.defaultTooltip&&a.push(e)}Gp.each((function(t,e){var n=Hm(i,e),r=l.otherDims[e];null!=r&&!1!==r&&(n[r]=l.name)}))}));var l=[],u={};r.each((function(t,e){var n=i[e];u[e]=n[0],l=l.concat(n)})),n.dataDimsOnCoord=l,n.dataDimIndicesOnCoord=z(l,(function(e){return t.getDimensionInfo(e).storeDimIndex})),n.encodeFirstDimNotExtra=u;var h=i.label;h&&h.length&&(o=h.slice());var c=i.tooltip;return c&&c.length?a=c.slice():a.length||(a=o.slice()),i.defaultedLabel=o,i.defaultedTooltip=a,n.userOutput=new Wm(s,e),n}(this,this._schema),this.userOutput=this._dimSummary.userOutput},t.prototype.appendData=function(t){var e=this._store.appendData(t);this._doInit(e[0],e[1])},t.prototype.appendValues=function(t,e){var n=this._store.appendValues(t,e.length),i=n.start,r=n.end,o=this._shouldMakeIdFromName();if(this._updateOrdinalMeta(),e)for(var a=i;a<r;a++){var s=a-i;this._nameList[a]=e[s],o&&ox(this,a)}},t.prototype._updateOrdinalMeta=function(){for(var t=this._store,e=this.dimensions,n=0;n<e.length;n++){var i=this._dimInfos[e[n]];i.ordinalMeta&&t.collectOrdinalMeta(i.storeDimIndex,i.ordinalMeta)}},t.prototype._shouldMakeIdFromName=function(){var t=this._store.getProvider();return null==this._idDimIdx&&t.getSource().sourceFormat!==Up&&!t.fillStorage},t.prototype._doInit=function(t,e){if(!(t>=e)){var n=this._store.getProvider();this._updateOrdinalMeta();var i=this._nameList,r=this._idList;if(n.getSource().sourceFormat===Wp&&!n.pure)for(var o=[],a=t;a<e;a++){var s=n.getItem(a,o);if(!this.hasItemOption&&ko(s)&&(this.hasItemOption=!0),s){var l=s.name;null==i[a]&&null!=l&&(i[a]=Ro(l,null));var u=s.id;null==r[a]&&null!=u&&(r[a]=Ro(u,null))}}if(this._shouldMakeIdFromName())for(a=t;a<e;a++)ox(this,a);Qm(this)}},t.prototype.getApproximateExtent=function(t){return this._approximateExtent[t]||this._store.getDataExtent(this._getStoreDimIndex(t))},t.prototype.setApproximateExtent=function(t,e){e=this.getDimension(e),this._approximateExtent[e]=t.slice()},t.prototype.getCalculationInfo=function(t){return this._calculationInfo[t]},t.prototype.setCalculationInfo=function(t,e){ax(t)?A(this._calculationInfo,t):this._calculationInfo[t]=e},t.prototype.getName=function(t){var e=this.getRawIndex(t),n=this._nameList[e];return null==n&&null!=this._nameDimIdx&&(n=ex(this,this._nameDimIdx,e)),null==n&&(n=""),n},t.prototype._getCategory=function(t,e){var n=this._store.get(t,e),i=this._store.getOrdinalMeta(t);return i?i.categories[n]:n},t.prototype.getId=function(t){return tx(this,this.getRawIndex(t))},t.prototype.count=function(){return this._store.count()},t.prototype.get=function(t,e){var n=this._store,i=this._dimInfos[t];if(i)return n.get(i.storeDimIndex,e)},t.prototype.getByRawIndex=function(t,e){var n=this._store,i=this._dimInfos[t];if(i)return n.getByRawIndex(i.storeDimIndex,e)},t.prototype.getIndices=function(){return this._store.getIndices()},t.prototype.getDataExtent=function(t){return this._store.getDataExtent(this._getStoreDimIndex(t))},t.prototype.getSum=function(t){return this._store.getSum(this._getStoreDimIndex(t))},t.prototype.getMedian=function(t){return this._store.getMedian(this._getStoreDimIndex(t))},t.prototype.getValues=function(t,e){var n=this,i=this._store;return Y(t)?i.getValues(sx(t,(function(t){return n._getStoreDimIndex(t)})),e):i.getValues(t)},t.prototype.hasValue=function(t){for(var e=this._dimSummary.dataDimIndicesOnCoord,n=0,i=e.length;n<i;n++)if(isNaN(this._store.get(e[n],t)))return!1;return!0},t.prototype.indexOfName=function(t){for(var e=0,n=this._store.count();e<n;e++)if(this.getName(e)===t)return e;return-1},t.prototype.getRawIndex=function(t){return this._store.getRawIndex(t)},t.prototype.indexOfRawIndex=function(t){return this._store.indexOfRawIndex(t)},t.prototype.rawIndexOf=function(t,e){var n=t&&this._invertedIndicesMap[t];var i=n[e];return null==i||isNaN(i)?-1:i},t.prototype.indicesOfNearest=function(t,e,n){return this._store.indicesOfNearest(this._getStoreDimIndex(t),e,n)},t.prototype.each=function(t,e,n){X(t)&&(n=e,e=t,t=[]);var i=n||this,r=sx(nx(t),this._getStoreDimIndex,this);this._store.each(r,i?W(e,i):e)},t.prototype.filterSelf=function(t,e,n){X(t)&&(n=e,e=t,t=[]);var i=n||this,r=sx(nx(t),this._getStoreDimIndex,this);return this._store=this._store.filter(r,i?W(e,i):e),this},t.prototype.selectRange=function(t){var e=this,n={};return E(G(t),(function(i){var r=e._getStoreDimIndex(i);n[r]=t[i]})),this._store=this._store.selectRange(n),this},t.prototype.mapArray=function(t,e,n){X(t)&&(n=e,e=t,t=[]),n=n||this;var i=[];return this.each(t,(function(){i.push(e&&e.apply(this,arguments))}),n),i},t.prototype.map=function(t,e,n,i){var r=n||i||this,o=sx(nx(t),this._getStoreDimIndex,this),a=rx(this);return a._store=this._store.map(o,r?W(e,r):e),a},t.prototype.modify=function(t,e,n,i){var r=n||i||this;var o=sx(nx(t),this._getStoreDimIndex,this);this._store.modify(o,r?W(e,r):e)},t.prototype.downSample=function(t,e,n,i){var r=rx(this);return r._store=this._store.downSample(this._getStoreDimIndex(t),e,n,i),r},t.prototype.lttbDownSample=function(t,e){var n=rx(this);return n._store=this._store.lttbDownSample(this._getStoreDimIndex(t),e),n},t.prototype.getRawDataItem=function(t){return this._store.getRawDataItem(t)},t.prototype.getItemModel=function(t){var e=this.hostModel,n=this.getRawDataItem(t);return new Cc(n,e,e&&e.ecModel)},t.prototype.diff=function(t){var e=this;return new Gm(t?t.getStore().getIndices():[],this.getStore().getIndices(),(function(e){return tx(t,e)}),(function(t){return tx(e,t)}))},t.prototype.getVisual=function(t){var e=this._visual;return e&&e[t]},t.prototype.setVisual=function(t,e){this._visual=this._visual||{},ax(t)?A(this._visual,t):this._visual[t]=e},t.prototype.getItemVisual=function(t,e){var n=this._itemVisuals[t],i=n&&n[e];return null==i?this.getVisual(e):i},t.prototype.hasItemVisual=function(){return this._itemVisuals.length>0},t.prototype.ensureUniqueItemVisual=function(t,e){var n=this._itemVisuals,i=n[t];i||(i=n[t]={});var r=i[e];return null==r&&(Y(r=this.getVisual(e))?r=r.slice():ax(r)&&(r=A({},r)),i[e]=r),r},t.prototype.setItemVisual=function(t,e,n){var i=this._itemVisuals[t]||{};this._itemVisuals[t]=i,ax(e)?A(i,e):i[e]=n},t.prototype.clearAllVisual=function(){this._visual={},this._itemVisuals=[]},t.prototype.setLayout=function(t,e){ax(t)?A(this._layout,t):this._layout[t]=e},t.prototype.getLayout=function(t){return this._layout[t]},t.prototype.getItemLayout=function(t){return this._itemLayouts[t]},t.prototype.setItemLayout=function(t,e,n){this._itemLayouts[t]=n?A(this._itemLayouts[t]||{},e):e},t.prototype.clearItemLayouts=function(){this._itemLayouts.length=0},t.prototype.setItemGraphicEl=function(t,e){var n=this.hostModel&&this.hostModel.seriesIndex;ol(n,this.dataType,t,e),this._graphicEls[t]=e},t.prototype.getItemGraphicEl=function(t){return this._graphicEls[t]},t.prototype.eachItemGraphicEl=function(t,e){E(this._graphicEls,(function(n,i){n&&t&&t.call(e,n,i)}))},t.prototype.cloneShallow=function(e){return e||(e=new t(this._schema?this._schema:sx(this.dimensions,this._getDimInfo,this),this.hostModel)),ix(e,this),e._store=this._store,e},t.prototype.wrapMethod=function(t,e){var n=this[t];X(n)&&(this.__wrappedMethods=this.__wrappedMethods||[],this.__wrappedMethods.push(t),this[t]=function(){var t=n.apply(this,arguments);return e.apply(this,[t].concat(at(arguments)))})},t.internalField=(Qm=function(t){var e=t._invertedIndicesMap;E(e,(function(n,i){var r=t._dimInfos[i],o=r.ordinalMeta,a=t._store;if(o){n=e[i]=new lx(o.categories.length);for(var s=0;s<n.length;s++)n[s]=-1;for(s=0;s<a.count();s++)n[a.get(r.storeDimIndex,s)]=s}}))},ex=function(t,e,n){return Ro(t._getCategory(e,n),null)},tx=function(t,e){var n=t._idList[e];return null==n&&null!=t._idDimIdx&&(n=ex(t,t._idDimIdx,e)),null==n&&(n="e\0\0"+e),n},nx=function(t){return Y(t)||(t=null!=t?[t]:[]),t},rx=function(e){var n=new t(e._schema?e._schema:sx(e.dimensions,e._getDimInfo,e),e.hostModel);return ix(n,e),n},ix=function(t,e){E(ux.concat(e.__wrappedMethods||[]),(function(n){e.hasOwnProperty(n)&&(t[n]=e[n])})),t.__wrappedMethods=e.__wrappedMethods,E(hx,(function(n){t[n]=T(e[n])})),t._calculationInfo=A({},e._calculationInfo)},void(ox=function(t,e){var n=t._nameList,i=t._idList,r=t._nameDimIdx,o=t._idDimIdx,a=n[e],s=i[e];if(null==a&&null!=r&&(n[e]=a=ex(t,r,e)),null==s&&null!=o&&(i[e]=s=ex(t,o,e)),null==s&&null!=a){var l=t._nameRepeatCount,u=l[a]=(l[a]||0)+1;s=a,u>1&&(s+="__ec__"+u),i[e]=s}})),t}();function px(t,e){Qd(t)||(t=ef(t));var n=(e=e||{}).coordDimensions||[],i=e.dimensionsDefine||t.dimensionsDefine||[],r=yt(),o=[],a=function(t,e,n,i){var r=Math.max(t.dimensionsDetectedCount||1,e.length,n.length,i||0);return E(e,(function(t){var e;q(t)&&(e=t.dimsDef)&&(r=Math.max(r,e.length))})),r}(t,n,i,e.dimensionsCount),s=e.canOmitUnusedDimensions&&Jm(a),l=i===t.dimensionsDefine,u=l?$m(t):Km(i),h=e.encodeDefine;!h&&e.encodeDefaulter&&(h=e.encodeDefaulter(t,a));for(var c=yt(h),p=new Xf(a),d=0;d<p.length;d++)p[d]=-1;function f(t){var e=p[t];if(e<0){var n=i[t],r=q(n)?n:{name:n},a=new Xm,s=r.name;null!=s&&null!=u.get(s)&&(a.name=a.displayName=s),null!=r.type&&(a.type=r.type),null!=r.displayName&&(a.displayName=r.displayName);var l=o.length;return p[t]=l,a.storeDimIndex=t,o.push(a),a}return o[e]}if(!s)for(d=0;d<a;d++)f(d);c.each((function(t,e){var n=To(t).slice();if(1===n.length&&!U(n[0])&&n[0]<0)c.set(e,!1);else{var i=c.set(e,[]);E(n,(function(t,n){var r=U(t)?u.get(t):t;null!=r&&r<a&&(i[n]=r,y(f(r),e,n))}))}}));var g=0;function y(t,e,n){null!=Gp.get(e)?t.otherDims[e]=n:(t.coordDim=e,t.coordDimIndex=n,r.set(e,!0))}E(n,(function(t){var e,n,i,r;if(U(t))e=t,r={};else{e=(r=t).name;var o=r.ordinalMeta;r.ordinalMeta=null,(r=A({},r)).ordinalMeta=o,n=r.dimsDef,i=r.otherDims,r.name=r.coordDim=r.coordDimIndex=r.dimsDef=r.otherDims=null}var s=c.get(e);if(!1!==s){if(!(s=To(s)).length)for(var u=0;u<(n&&n.length||1);u++){for(;g<a&&null!=f(g).coordDim;)g++;g<a&&s.push(g++)}E(s,(function(t,o){var a=f(t);if(l&&null!=r.type&&(a.type=r.type),y(k(a,r),e,o),null==a.name&&n){var s=n[o];!q(s)&&(s={name:s}),a.name=a.displayName=s.name,a.defaultTooltip=s.defaultTooltip}i&&k(a.otherDims,i)}))}}));var v=e.generateCoord,m=e.generateCoordCount,x=null!=m;m=v?m||1:0;var _=v||"value";function b(t){null==t.name&&(t.name=t.coordDim)}if(s)E(o,(function(t){b(t)})),o.sort((function(t,e){return t.storeDimIndex-e.storeDimIndex}));else for(var w=0;w<a;w++){var S=f(w);null==S.coordDim&&(S.coordDim=dx(_,r,x),S.coordDimIndex=0,(!v||m<=0)&&(S.isExtraCoord=!0),m--),b(S),null!=S.type||id(t,w)!==Kp&&(!S.isExtraCoord||null==S.otherDims.itemName&&null==S.otherDims.seriesName)||(S.type="ordinal")}return function(t){for(var e=yt(),n=0;n<t.length;n++){var i=t[n],r=i.name,o=e.get(r)||0;o>0&&(i.name=r+(o-1)),o++,e.set(r,o)}}(o),new jm({source:t,dimensions:o,fullDimensionCount:a,dimensionOmitted:s})}function dx(t,e,n){if(n||e.hasKey(t)){for(var i=0;e.hasKey(t+i);)i++;t+=i}return e.set(t,!0),t}var fx=function(t){this.coordSysDims=[],this.axisMap=yt(),this.categoryAxisMap=yt(),this.coordSysName=t};var gx={cartesian2d:function(t,e,n,i){var r=t.getReferringComponents("xAxis",Wo).models[0],o=t.getReferringComponents("yAxis",Wo).models[0];e.coordSysDims=["x","y"],n.set("x",r),n.set("y",o),yx(r)&&(i.set("x",r),e.firstCategoryDimIndex=0),yx(o)&&(i.set("y",o),null==e.firstCategoryDimIndex&&(e.firstCategoryDimIndex=1))},singleAxis:function(t,e,n,i){var r=t.getReferringComponents("singleAxis",Wo).models[0];e.coordSysDims=["single"],n.set("single",r),yx(r)&&(i.set("single",r),e.firstCategoryDimIndex=0)},polar:function(t,e,n,i){var r=t.getReferringComponents("polar",Wo).models[0],o=r.findAxisModel("radiusAxis"),a=r.findAxisModel("angleAxis");e.coordSysDims=["radius","angle"],n.set("radius",o),n.set("angle",a),yx(o)&&(i.set("radius",o),e.firstCategoryDimIndex=0),yx(a)&&(i.set("angle",a),null==e.firstCategoryDimIndex&&(e.firstCategoryDimIndex=1))},geo:function(t,e,n,i){e.coordSysDims=["lng","lat"]},parallel:function(t,e,n,i){var r=t.ecModel,o=r.getComponent("parallel",t.get("parallelIndex")),a=e.coordSysDims=o.dimensions.slice();E(o.parallelAxisIndex,(function(t,o){var s=r.getComponent("parallelAxis",t),l=a[o];n.set(l,s),yx(s)&&(i.set(l,s),null==e.firstCategoryDimIndex&&(e.firstCategoryDimIndex=o))}))}};function yx(t){return"category"===t.get("type")}function vx(t,e,n){var i,r,o,a=(n=n||{}).byIndex,s=n.stackedCoordDimension;!function(t){return!qm(t.schema)}(e)?(r=e.schema,i=r.dimensions,o=e.store):i=e;var l,u,h,c,p=!(!t||!t.get("stack"));if(E(i,(function(t,e){U(t)&&(i[e]=t={name:t}),p&&!t.isExtraCoord&&(a||l||!t.ordinalMeta||(l=t),u||"ordinal"===t.type||"time"===t.type||s&&s!==t.coordDim||(u=t))})),!u||a||l||(a=!0),u){h="__\0ecstackresult_"+t.id,c="__\0ecstackedover_"+t.id,l&&(l.createInvertedIndices=!0);var d=u.coordDim,f=u.type,g=0;E(i,(function(t){t.coordDim===d&&g++}));var y={name:h,coordDim:d,coordDimIndex:g,type:f,isExtraCoord:!0,isCalculationCoord:!0,storeDimIndex:i.length},v={name:c,coordDim:c,coordDimIndex:g+1,type:f,isExtraCoord:!0,isCalculationCoord:!0,storeDimIndex:i.length+1};r?(o&&(y.storeDimIndex=o.ensureCalculationDimension(c,f),v.storeDimIndex=o.ensureCalculationDimension(h,f)),r.appendCalculationDimension(y),r.appendCalculationDimension(v)):(i.push(y),i.push(v))}return{stackedDimension:u&&u.name,stackedByDimension:l&&l.name,isStackedByIndex:a,stackedOverDimension:c,stackResultDimension:h}}function mx(t,e){return!!e&&e===t.getCalculationInfo("stackedDimension")}function xx(t,e){return mx(t,e)?t.getCalculationInfo("stackResultDimension"):e}function _x(t,e,n){n=n||{};var i,r=e.getSourceManager(),o=!1;t?(o=!0,i=ef(t)):o=(i=r.getSource()).sourceFormat===Wp;var a=function(t){var e=t.get("coordinateSystem"),n=new fx(e),i=gx[e];if(i)return i(t,n,n.axisMap,n.categoryAxisMap),n}(e),s=function(t,e){var n,i=t.get("coordinateSystem"),r=wd.get(i);return e&&e.coordSysDims&&(n=z(e.coordSysDims,(function(t){var n={name:t},i=e.axisMap.get(t);if(i){var r=i.get("type");n.type=Ym(r)}return n}))),n||(n=r&&(r.getDimensionsInfo?r.getDimensionsInfo():r.dimensions.slice())||["x","y"]),n}(e,a),l=n.useEncodeDefaulter,u=X(l)?l:l?H(td,s,e):null,h=px(i,{coordDimensions:s,generateCoord:n.generateCoord,encodeDefine:e.getEncode(),encodeDefaulter:u,canOmitUnusedDimensions:!o}),c=function(t,e,n){var i,r;return n&&E(t,(function(t,o){var a=t.coordDim,s=n.categoryAxisMap.get(a);s&&(null==i&&(i=o),t.ordinalMeta=s.getOrdinalMeta(),e&&(t.createInvertedIndices=!0)),null!=t.otherDims.itemName&&(r=!0)})),r||null==i||(t[i].otherDims.itemName=0),i}(h.dimensions,n.createInvertedIndices,a),p=o?null:r.getSharedDataStore(h),d=vx(e,{schema:h,store:p}),f=new cx(h,e);f.setCalculationInfo(d);var g=null!=c&&function(t){if(t.sourceFormat===Wp){var e=function(t){var e=0;for(;e<t.length&&null==t[e];)e++;return t[e]}(t.data||[]);return!Y(Ao(e))}}(i)?function(t,e,n,i){return i===c?n:this.defaultDimValueGetter(t,e,n,i)}:null;return f.hasItemOption=!1,f.initData(o?i:p,null,g),f}var bx=function(){function t(t){this._setting=t||{},this._extent=[1/0,-1/0]}return t.prototype.getSetting=function(t){return this._setting[t]},t.prototype.unionExtent=function(t){var e=this._extent;t[0]<e[0]&&(e[0]=t[0]),t[1]>e[1]&&(e[1]=t[1])},t.prototype.unionExtentFromData=function(t,e){this.unionExtent(t.getApproximateExtent(e))},t.prototype.getExtent=function(){return this._extent.slice()},t.prototype.setExtent=function(t,e){var n=this._extent;isNaN(t)||(n[0]=t),isNaN(e)||(n[1]=e)},t.prototype.isInExtentRange=function(t){return this._extent[0]<=t&&this._extent[1]>=t},t.prototype.isBlank=function(){return this._isBlank},t.prototype.setBlank=function(t){this._isBlank=t},t}();na(bx);var Sx=0,Mx=function(){function t(t){this.categories=t.categories||[],this._needCollect=t.needCollect,this._deduplication=t.deduplication,this.uid=++Sx}return t.createByAxisModel=function(e){var n=e.option,i=n.data,r=i&&z(i,Ix);return new t({categories:r,needCollect:!r,deduplication:!1!==n.dedplication})},t.prototype.getOrdinal=function(t){return this._getOrCreateMap().get(t)},t.prototype.parseAndCollect=function(t){var e,n=this._needCollect;if(!U(t)&&!n)return t;if(n&&!this._deduplication)return e=this.categories.length,this.categories[e]=t,e;var i=this._getOrCreateMap();return null==(e=i.get(t))&&(n?(e=this.categories.length,this.categories[e]=t,i.set(t,e)):e=NaN),e},t.prototype._getOrCreateMap=function(){return this._map||(this._map=yt(this.categories))},t}();function Ix(t){return q(t)&&null!=t.value?t.value:t+""}function Tx(t){return"interval"===t.type||"log"===t.type}function Cx(t,e,n,i){var r={},o=t[1]-t[0],a=r.interval=po(o/e,!0);null!=n&&a<n&&(a=r.interval=n),null!=i&&a>i&&(a=r.interval=i);var s=r.intervalPrecision=Ax(a);return function(t,e){!isFinite(t[0])&&(t[0]=e[0]),!isFinite(t[1])&&(t[1]=e[1]),kx(t,0,e),kx(t,1,e),t[0]>t[1]&&(t[0]=t[1])}(r.niceTickExtent=[Jr(Math.ceil(t[0]/a)*a,s),Jr(Math.floor(t[1]/a)*a,s)],t),r}function Dx(t){var e=Math.pow(10,co(t)),n=t/e;return n?2===n?n=3:3===n?n=5:n*=2:n=1,Jr(n*e)}function Ax(t){return to(t)+2}function kx(t,e,n){t[e]=Math.max(Math.min(t[e],n[1]),n[0])}function Lx(t,e){return t>=e[0]&&t<=e[1]}function Px(t,e){return e[1]===e[0]?.5:(t-e[0])/(e[1]-e[0])}function Ox(t,e){return t*(e[1]-e[0])+e[0]}var Rx=function(t){function e(e){var n=t.call(this,e)||this;n.type="ordinal";var i=n.getSetting("ordinalMeta");return i||(i=new Mx({})),Y(i)&&(i=new Mx({categories:z(i,(function(t){return q(t)?t.value:t}))})),n._ordinalMeta=i,n._extent=n.getSetting("extent")||[0,i.categories.length-1],n}return n(e,t),e.prototype.parse=function(t){return null==t?NaN:U(t)?this._ordinalMeta.getOrdinal(t):Math.round(t)},e.prototype.contain=function(t){return Lx(t=this.parse(t),this._extent)&&null!=this._ordinalMeta.categories[t]},e.prototype.normalize=function(t){return Px(t=this._getTickNumber(this.parse(t)),this._extent)},e.prototype.scale=function(t){return t=Math.round(Ox(t,this._extent)),this.getRawOrdinalNumber(t)},e.prototype.getTicks=function(){for(var t=[],e=this._extent,n=e[0];n<=e[1];)t.push({value:n}),n++;return t},e.prototype.getMinorTicks=function(t){},e.prototype.setSortInfo=function(t){if(null!=t){for(var e=t.ordinalNumbers,n=this._ordinalNumbersByTick=[],i=this._ticksByOrdinalNumber=[],r=0,o=this._ordinalMeta.categories.length,a=Math.min(o,e.length);r<a;++r){var s=e[r];n[r]=s,i[s]=r}for(var l=0;r<o;++r){for(;null!=i[l];)l++;n.push(l),i[l]=r}}else this._ordinalNumbersByTick=this._ticksByOrdinalNumber=null},e.prototype._getTickNumber=function(t){var e=this._ticksByOrdinalNumber;return e&&t>=0&&t<e.length?e[t]:t},e.prototype.getRawOrdinalNumber=function(t){var e=this._ordinalNumbersByTick;return e&&t>=0&&t<e.length?e[t]:t},e.prototype.getLabel=function(t){if(!this.isBlank()){var e=this.getRawOrdinalNumber(t.value),n=this._ordinalMeta.categories[e];return null==n?"":n+""}},e.prototype.count=function(){return this._extent[1]-this._extent[0]+1},e.prototype.unionExtentFromData=function(t,e){this.unionExtent(t.getApproximateExtent(e))},e.prototype.isInExtentRange=function(t){return t=this._getTickNumber(t),this._extent[0]<=t&&this._extent[1]>=t},e.prototype.getOrdinalMeta=function(){return this._ordinalMeta},e.prototype.calcNiceTicks=function(){},e.prototype.calcNiceExtent=function(){},e.type="ordinal",e}(bx);bx.registerClass(Rx);var Nx=Jr,Ex=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="interval",e._interval=0,e._intervalPrecision=2,e}return n(e,t),e.prototype.parse=function(t){return t},e.prototype.contain=function(t){return Lx(t,this._extent)},e.prototype.normalize=function(t){return Px(t,this._extent)},e.prototype.scale=function(t){return Ox(t,this._extent)},e.prototype.setExtent=function(t,e){var n=this._extent;isNaN(t)||(n[0]=parseFloat(t)),isNaN(e)||(n[1]=parseFloat(e))},e.prototype.unionExtent=function(t){var e=this._extent;t[0]<e[0]&&(e[0]=t[0]),t[1]>e[1]&&(e[1]=t[1]),this.setExtent(e[0],e[1])},e.prototype.getInterval=function(){return this._interval},e.prototype.setInterval=function(t){this._interval=t,this._niceExtent=this._extent.slice(),this._intervalPrecision=Ax(t)},e.prototype.getTicks=function(t){var e=this._interval,n=this._extent,i=this._niceExtent,r=this._intervalPrecision,o=[];if(!e)return o;n[0]<i[0]&&(t?o.push({value:Nx(i[0]-e,r)}):o.push({value:n[0]}));for(var a=i[0];a<=i[1]&&(o.push({value:a}),(a=Nx(a+e,r))!==o[o.length-1].value);)if(o.length>1e4)return[];var s=o.length?o[o.length-1].value:i[1];return n[1]>s&&(t?o.push({value:Nx(s+e,r)}):o.push({value:n[1]})),o},e.prototype.getMinorTicks=function(t){for(var e=this.getTicks(!0),n=[],i=this.getExtent(),r=1;r<e.length;r++){for(var o=e[r],a=e[r-1],s=0,l=[],u=(o.value-a.value)/t;s<t-1;){var h=Nx(a.value+(s+1)*u);h>i[0]&&h<i[1]&&l.push(h),s++}n.push(l)}return n},e.prototype.getLabel=function(t,e){if(null==t)return"";var n=e&&e.precision;return null==n?n=to(t.value)||0:"auto"===n&&(n=this._intervalPrecision),gp(Nx(t.value,n,!0))},e.prototype.calcNiceTicks=function(t,e,n){t=t||5;var i=this._extent,r=i[1]-i[0];if(isFinite(r)){r<0&&(r=-r,i.reverse());var o=Cx(i,t,e,n);this._intervalPrecision=o.intervalPrecision,this._interval=o.interval,this._niceExtent=o.niceTickExtent}},e.prototype.calcNiceExtent=function(t){var e=this._extent;if(e[0]===e[1])if(0!==e[0]){var n=Math.abs(e[0]);t.fixMax||(e[1]+=n/2),e[0]-=n/2}else e[1]=1;var i=e[1]-e[0];isFinite(i)||(e[0]=0,e[1]=1),this.calcNiceTicks(t.splitNumber,t.minInterval,t.maxInterval);var r=this._interval;t.fixMin||(e[0]=Nx(Math.floor(e[0]/r)*r)),t.fixMax||(e[1]=Nx(Math.ceil(e[1]/r)*r))},e.prototype.setNiceExtent=function(t,e){this._niceExtent=[t,e]},e.type="interval",e}(bx);bx.registerClass(Ex);var zx="undefined"!=typeof Float32Array,Vx=zx?Float32Array:Array;function Bx(t){return Y(t)?zx?new Float32Array(t):t:new Vx(t)}var Fx="__ec_stack_";function Gx(t){return t.get("stack")||Fx+t.seriesIndex}function Wx(t){return t.dim+t.index}function Hx(t,e){var n=[];return e.eachSeriesByType(t,(function(t){jx(t)&&n.push(t)})),n}function Yx(t){var e=function(t){var e={};E(t,(function(t){var n=t.coordinateSystem.getBaseAxis();if("time"===n.type||"value"===n.type)for(var i=t.getData(),r=n.dim+"_"+n.index,o=i.getDimensionIndex(i.mapDimension(n.dim)),a=i.getStore(),s=0,l=a.count();s<l;++s){var u=a.get(o,s);e[r]?e[r].push(u):e[r]=[u]}}));var n={};for(var i in e)if(e.hasOwnProperty(i)){var r=e[i];if(r){r.sort((function(t,e){return t-e}));for(var o=null,a=1;a<r.length;++a){var s=r[a]-r[a-1];s>0&&(o=null===o?s:Math.min(o,s))}n[i]=o}}return n}(t),n=[];return E(t,(function(t){var i,r=t.coordinateSystem.getBaseAxis(),o=r.getExtent();if("category"===r.type)i=r.getBandWidth();else if("value"===r.type||"time"===r.type){var a=r.dim+"_"+r.index,s=e[a],l=Math.abs(o[1]-o[0]),u=r.scale.getExtent(),h=Math.abs(u[1]-u[0]);i=s?l/h*s:l}else{var c=t.getData();i=Math.abs(o[1]-o[0])/c.count()}var p=$r(t.get("barWidth"),i),d=$r(t.get("barMaxWidth"),i),f=$r(t.get("barMinWidth")||(qx(t)?.5:1),i),g=t.get("barGap"),y=t.get("barCategoryGap");n.push({bandWidth:i,barWidth:p,barMaxWidth:d,barMinWidth:f,barGap:g,barCategoryGap:y,axisKey:Wx(r),stackId:Gx(t)})})),Xx(n)}function Xx(t){var e={};E(t,(function(t,n){var i=t.axisKey,r=t.bandWidth,o=e[i]||{bandWidth:r,remainedWidth:r,autoWidthCount:0,categoryGap:null,gap:"20%",stacks:{}},a=o.stacks;e[i]=o;var s=t.stackId;a[s]||o.autoWidthCount++,a[s]=a[s]||{width:0,maxWidth:0};var l=t.barWidth;l&&!a[s].width&&(a[s].width=l,l=Math.min(o.remainedWidth,l),o.remainedWidth-=l);var u=t.barMaxWidth;u&&(a[s].maxWidth=u);var h=t.barMinWidth;h&&(a[s].minWidth=h);var c=t.barGap;null!=c&&(o.gap=c);var p=t.barCategoryGap;null!=p&&(o.categoryGap=p)}));var n={};return E(e,(function(t,e){n[e]={};var i=t.stacks,r=t.bandWidth,o=t.categoryGap;if(null==o){var a=G(i).length;o=Math.max(35-4*a,15)+"%"}var s=$r(o,r),l=$r(t.gap,1),u=t.remainedWidth,h=t.autoWidthCount,c=(u-s)/(h+(h-1)*l);c=Math.max(c,0),E(i,(function(t){var e=t.maxWidth,n=t.minWidth;if(t.width){i=t.width;e&&(i=Math.min(i,e)),n&&(i=Math.max(i,n)),t.width=i,u-=i+l*i,h--}else{var i=c;e&&e<i&&(i=Math.min(e,u)),n&&n>i&&(i=n),i!==c&&(t.width=i,u-=i+l*i,h--)}})),c=(u-s)/(h+(h-1)*l),c=Math.max(c,0);var p,d=0;E(i,(function(t,e){t.width||(t.width=c),p=t,d+=t.width*(1+l)})),p&&(d-=p.width*l);var f=-d/2;E(i,(function(t,i){n[e][i]=n[e][i]||{bandWidth:r,offset:f,width:t.width},f+=t.width*(1+l)}))})),n}function Ux(t,e){var n=Hx(t,e),i=Yx(n);E(n,(function(t){var e=t.getData(),n=t.coordinateSystem.getBaseAxis(),r=Gx(t),o=i[Wx(n)][r],a=o.offset,s=o.width;e.setLayout({bandWidth:o.bandWidth,offset:a,size:s})}))}function Zx(t){return{seriesType:t,plan:kg(),reset:function(t){if(jx(t)){var e=t.getData(),n=t.coordinateSystem,i=n.getBaseAxis(),r=n.getOtherAxis(i),o=e.getDimensionIndex(e.mapDimension(r.dim)),a=e.getDimensionIndex(e.mapDimension(i.dim)),s=t.get("showBackground",!0),l=e.mapDimension(r.dim),u=e.getCalculationInfo("stackResultDimension"),h=mx(e,l)&&!!e.getCalculationInfo("stackedOnSeries"),c=r.isHorizontal(),p=function(t,e){var n=e.model.get("startValue");n||(n=0);return e.toGlobalCoord(e.dataToCoord("log"===e.type?n>0?n:1:n))}(0,r),d=qx(t),f=t.get("barMinHeight")||0,g=u&&e.getDimensionIndex(u),y=e.getLayout("size"),v=e.getLayout("offset");return{progress:function(t,e){for(var i,r=t.count,l=d&&Bx(3*r),u=d&&s&&Bx(3*r),m=d&&Bx(r),x=n.master.getRect(),_=c?x.width:x.height,b=e.getStore(),w=0;null!=(i=t.next());){var S=b.get(h?g:o,i),M=b.get(a,i),I=p,T=void 0;h&&(T=+S-b.get(o,i));var C=void 0,D=void 0,A=void 0,k=void 0;if(c){var L=n.dataToPoint([S,M]);if(h)I=n.dataToPoint([T,M])[0];C=I,D=L[1]+v,A=L[0]-I,k=y,Math.abs(A)<f&&(A=(A<0?-1:1)*f)}else{L=n.dataToPoint([M,S]);if(h)I=n.dataToPoint([M,T])[1];C=L[0]+v,D=I,A=y,k=L[1]-I,Math.abs(k)<f&&(k=(k<=0?-1:1)*f)}d?(l[w]=C,l[w+1]=D,l[w+2]=c?A:k,u&&(u[w]=c?x.x:C,u[w+1]=c?D:x.y,u[w+2]=_),m[i]=i):e.setItemLayout(i,{x:C,y:D,width:A,height:k}),w+=3}d&&e.setLayout({largePoints:l,largeDataIndices:m,largeBackgroundPoints:u,valueAxisHorizontal:c})}}}}}}function jx(t){return t.coordinateSystem&&"cartesian2d"===t.coordinateSystem.type}function qx(t){return t.pipelineContext&&t.pipelineContext.large}var Kx=function(t){function e(e){var n=t.call(this,e)||this;return n.type="time",n}return n(e,t),e.prototype.getLabel=function(t){var e=this.getSetting("useUTC");return Jc(t.value,Uc[function(t){switch(t){case"year":case"month":return"day";case"millisecond":return"millisecond";default:return"second"}}(Kc(this._minLevelUnit))]||Uc.second,e,this.getSetting("locale"))},e.prototype.getFormattedLabel=function(t,e,n){var i=this.getSetting("useUTC");return function(t,e,n,i,r){var o=null;if(U(n))o=n;else if(X(n))o=n(t.value,e,{level:t.level});else{var a=A({},Yc);if(t.level>0)for(var s=0;s<Zc.length;++s)a[Zc[s]]="{primary|"+a[Zc[s]]+"}";var l=n?!1===n.inherit?n:k(n,a):a,u=Qc(t.value,r);if(l[u])o=l[u];else if(l.inherit){for(s=jc.indexOf(u)-1;s>=0;--s)if(l[u]){o=l[u];break}o=o||a.none}if(Y(o)){var h=null==t.level?0:t.level>=0?t.level:o.length+t.level;o=o[h=Math.min(h,o.length-1)]}}return Jc(new Date(t.value),o,r,i)}(t,e,n,this.getSetting("locale"),i)},e.prototype.getTicks=function(){var t=this._interval,e=this._extent,n=[];if(!t)return n;n.push({value:e[0],level:0});var i=this.getSetting("useUTC"),r=function(t,e,n,i){var r=1e4,o=jc,a=0;function s(t,e,n,r,o,a,s){for(var l=new Date(e),u=e,h=l[r]();u<n&&u<=i[1];)s.push({value:u}),h+=t,l[o](h),u=l.getTime();s.push({value:u,notAdd:!0})}function l(t,r,o){var a=[],l=!r.length;if(!function(t,e,n,i){var r=uo(e),o=uo(n),a=function(t){return tp(r,t,i)===tp(o,t,i)},s=function(){return a("year")},l=function(){return s()&&a("month")},u=function(){return l()&&a("day")},h=function(){return u()&&a("hour")},c=function(){return h()&&a("minute")},p=function(){return c()&&a("second")},d=function(){return p()&&a("millisecond")};switch(t){case"year":return s();case"month":return l();case"day":return u();case"hour":return h();case"minute":return c();case"second":return p();case"millisecond":return d()}}(Kc(t),i[0],i[1],n)){l&&(r=[{value:i_(new Date(i[0]),t,n)},{value:i[1]}]);for(var u=0;u<r.length-1;u++){var h=r[u].value,c=r[u+1].value;if(h!==c){var p=void 0,d=void 0,f=void 0,g=!1;switch(t){case"year":p=Math.max(1,Math.round(e/Wc/365)),d=ep(n),f=lp(n);break;case"half-year":case"quarter":case"month":p=Qx(e),d=np(n),f=up(n);break;case"week":case"half-week":case"day":p=Jx(e),d=ip(n),f=hp(n),g=!0;break;case"half-day":case"quarter-day":case"hour":p=t_(e),d=rp(n),f=cp(n);break;case"minute":p=e_(e,!0),d=op(n),f=pp(n);break;case"second":p=e_(e,!1),d=ap(n),f=dp(n);break;case"millisecond":p=n_(e),d=sp(n),f=fp(n)}s(p,h,c,d,f,g,a),"year"===t&&o.length>1&&0===u&&o.unshift({value:o[0].value-p})}}for(u=0;u<a.length;u++)o.push(a[u]);return a}}for(var u=[],h=[],c=0,p=0,d=0;d<o.length&&a++<r;++d){var f=Kc(o[d]);if($c(o[d]))if(l(o[d],u[u.length-1]||[],h),f!==(o[d+1]?Kc(o[d+1]):null)){if(h.length){p=c,h.sort((function(t,e){return t.value-e.value}));for(var g=[],y=0;y<h.length;++y){var v=h[y].value;0!==y&&h[y-1].value===v||(g.push(h[y]),v>=i[0]&&v<=i[1]&&c++)}var m=(i[1]-i[0])/e;if(c>1.5*m&&p>m/1.5)break;if(u.push(g),c>m||t===o[d])break}h=[]}}0;var x=B(z(u,(function(t){return B(t,(function(t){return t.value>=i[0]&&t.value<=i[1]&&!t.notAdd}))})),(function(t){return t.length>0})),_=[],b=x.length-1;for(d=0;d<x.length;++d)for(var w=x[d],S=0;S<w.length;++S)_.push({value:w[S].value,level:b-d});_.sort((function(t,e){return t.value-e.value}));var M=[];for(d=0;d<_.length;++d)0!==d&&_[d].value===_[d-1].value||M.push(_[d]);return M}(this._minLevelUnit,this._approxInterval,i,e);return(n=n.concat(r)).push({value:e[1],level:0}),n},e.prototype.calcNiceExtent=function(t){var e=this._extent;if(e[0]===e[1]&&(e[0]-=Wc,e[1]+=Wc),e[1]===-1/0&&e[0]===1/0){var n=new Date;e[1]=+new Date(n.getFullYear(),n.getMonth(),n.getDate()),e[0]=e[1]-Wc}this.calcNiceTicks(t.splitNumber,t.minInterval,t.maxInterval)},e.prototype.calcNiceTicks=function(t,e,n){t=t||10;var i=this._extent,r=i[1]-i[0];this._approxInterval=r/t,null!=e&&this._approxInterval<e&&(this._approxInterval=e),null!=n&&this._approxInterval>n&&(this._approxInterval=n);var o=$x.length,a=Math.min(function(t,e,n,i){for(;n<i;){var r=n+i>>>1;t[r][1]<e?n=r+1:i=r}return n}($x,this._approxInterval,0,o),o-1);this._interval=$x[a][1],this._minLevelUnit=$x[Math.max(a-1,0)][0]},e.prototype.parse=function(t){return j(t)?t:+uo(t)},e.prototype.contain=function(t){return Lx(this.parse(t),this._extent)},e.prototype.normalize=function(t){return Px(this.parse(t),this._extent)},e.prototype.scale=function(t){return Ox(t,this._extent)},e.type="time",e}(Ex),$x=[["second",Bc],["minute",Fc],["hour",Gc],["quarter-day",216e5],["half-day",432e5],["day",10368e4],["half-week",3024e5],["week",6048e5],["month",26784e5],["quarter",8208e6],["half-year",Hc/2],["year",Hc]];function Jx(t,e){return(t/=Wc)>16?16:t>7.5?7:t>3.5?4:t>1.5?2:1}function Qx(t){return(t/=2592e6)>6?6:t>3?3:t>2?2:1}function t_(t){return(t/=Gc)>12?12:t>6?6:t>3.5?4:t>2?2:1}function e_(t,e){return(t/=e?Fc:Bc)>30?30:t>20?20:t>15?15:t>10?10:t>5?5:t>2?2:1}function n_(t){return po(t,!0)}function i_(t,e,n){var i=new Date(t);switch(Kc(e)){case"year":case"month":i[up(n)](0);case"day":i[hp(n)](1);case"hour":i[cp(n)](0);case"minute":i[pp(n)](0);case"second":i[dp(n)](0),i[fp(n)](0)}return i.getTime()}bx.registerClass(Kx);var r_=bx.prototype,o_=Ex.prototype,a_=Jr,s_=Math.floor,l_=Math.ceil,u_=Math.pow,h_=Math.log,c_=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="log",e.base=10,e._originalScale=new Ex,e._interval=0,e}return n(e,t),e.prototype.getTicks=function(t){var e=this._originalScale,n=this._extent,i=e.getExtent();return z(o_.getTicks.call(this,t),(function(t){var e=t.value,r=Jr(u_(this.base,e));return r=e===n[0]&&this._fixMin?d_(r,i[0]):r,{value:r=e===n[1]&&this._fixMax?d_(r,i[1]):r}}),this)},e.prototype.setExtent=function(t,e){var n=h_(this.base);t=h_(Math.max(0,t))/n,e=h_(Math.max(0,e))/n,o_.setExtent.call(this,t,e)},e.prototype.getExtent=function(){var t=this.base,e=r_.getExtent.call(this);e[0]=u_(t,e[0]),e[1]=u_(t,e[1]);var n=this._originalScale.getExtent();return this._fixMin&&(e[0]=d_(e[0],n[0])),this._fixMax&&(e[1]=d_(e[1],n[1])),e},e.prototype.unionExtent=function(t){this._originalScale.unionExtent(t);var e=this.base;t[0]=h_(t[0])/h_(e),t[1]=h_(t[1])/h_(e),r_.unionExtent.call(this,t)},e.prototype.unionExtentFromData=function(t,e){this.unionExtent(t.getApproximateExtent(e))},e.prototype.calcNiceTicks=function(t){t=t||10;var e=this._extent,n=e[1]-e[0];if(!(n===1/0||n<=0)){var i=ho(n);for(t/n*i<=.5&&(i*=10);!isNaN(i)&&Math.abs(i)<1&&Math.abs(i)>0;)i*=10;var r=[Jr(l_(e[0]/i)*i),Jr(s_(e[1]/i)*i)];this._interval=i,this._niceExtent=r}},e.prototype.calcNiceExtent=function(t){o_.calcNiceExtent.call(this,t),this._fixMin=t.fixMin,this._fixMax=t.fixMax},e.prototype.parse=function(t){return t},e.prototype.contain=function(t){return Lx(t=h_(t)/h_(this.base),this._extent)},e.prototype.normalize=function(t){return Px(t=h_(t)/h_(this.base),this._extent)},e.prototype.scale=function(t){return t=Ox(t,this._extent),u_(this.base,t)},e.type="log",e}(bx),p_=c_.prototype;function d_(t,e){return a_(t,to(e))}p_.getMinorTicks=o_.getMinorTicks,p_.getLabel=o_.getLabel,bx.registerClass(c_);var f_=function(){function t(t,e,n){this._prepareParams(t,e,n)}return t.prototype._prepareParams=function(t,e,n){n[1]<n[0]&&(n=[NaN,NaN]),this._dataMin=n[0],this._dataMax=n[1];var i=this._isOrdinal="ordinal"===t.type;this._needCrossZero="interval"===t.type&&e.getNeedCrossZero&&e.getNeedCrossZero();var r=e.get("min",!0);null==r&&(r=e.get("startValue",!0));var o=this._modelMinRaw=r;X(o)?this._modelMinNum=m_(t,o({min:n[0],max:n[1]})):"dataMin"!==o&&(this._modelMinNum=m_(t,o));var a=this._modelMaxRaw=e.get("max",!0);if(X(a)?this._modelMaxNum=m_(t,a({min:n[0],max:n[1]})):"dataMax"!==a&&(this._modelMaxNum=m_(t,a)),i)this._axisDataLen=e.getCategories().length;else{var s=e.get("boundaryGap"),l=Y(s)?s:[s||0,s||0];"boolean"==typeof l[0]||"boolean"==typeof l[1]?this._boundaryGapInner=[0,0]:this._boundaryGapInner=[Cr(l[0],1),Cr(l[1],1)]}},t.prototype.calculate=function(){var t=this._isOrdinal,e=this._dataMin,n=this._dataMax,i=this._axisDataLen,r=this._boundaryGapInner,o=t?null:n-e||Math.abs(e),a="dataMin"===this._modelMinRaw?e:this._modelMinNum,s="dataMax"===this._modelMaxRaw?n:this._modelMaxNum,l=null!=a,u=null!=s;null==a&&(a=t?i?0:NaN:e-r[0]*o),null==s&&(s=t?i?i-1:NaN:n+r[1]*o),(null==a||!isFinite(a))&&(a=NaN),(null==s||!isFinite(s))&&(s=NaN);var h=nt(a)||nt(s)||t&&!i;this._needCrossZero&&(a>0&&s>0&&!l&&(a=0),a<0&&s<0&&!u&&(s=0));var c=this._determinedMin,p=this._determinedMax;return null!=c&&(a=c,l=!0),null!=p&&(s=p,u=!0),{min:a,max:s,minFixed:l,maxFixed:u,isBlank:h}},t.prototype.modifyDataMinMax=function(t,e){this[y_[t]]=e},t.prototype.setDeterminedMinMax=function(t,e){var n=g_[t];this[n]=e},t.prototype.freeze=function(){this.frozen=!0},t}(),g_={min:"_determinedMin",max:"_determinedMax"},y_={min:"_dataMin",max:"_dataMax"};function v_(t,e,n){var i=t.rawExtentInfo;return i||(i=new f_(t,e,n),t.rawExtentInfo=i,i)}function m_(t,e){return null==e?null:nt(e)?NaN:t.parse(e)}function x_(t,e){var n=t.type,i=v_(t,e,t.getExtent()).calculate();t.setBlank(i.isBlank);var r=i.min,o=i.max,a=e.ecModel;if(a&&"time"===n){var s=Hx("bar",a),l=!1;if(E(s,(function(t){l=l||t.getBaseAxis()===e.axis})),l){var u=Yx(s),h=function(t,e,n,i){var r=n.axis.getExtent(),o=r[1]-r[0],a=function(t,e,n){if(t&&e){var i=t[Wx(e)];return null!=i&&null!=n?i[Gx(n)]:i}}(i,n.axis);if(void 0===a)return{min:t,max:e};var s=1/0;E(a,(function(t){s=Math.min(t.offset,s)}));var l=-1/0;E(a,(function(t){l=Math.max(t.offset+t.width,l)})),s=Math.abs(s),l=Math.abs(l);var u=s+l,h=e-t,c=h/(1-(s+l)/o)-h;return e+=c*(l/u),t-=c*(s/u),{min:t,max:e}}(r,o,e,u);r=h.min,o=h.max}}return{extent:[r,o],fixMin:i.minFixed,fixMax:i.maxFixed}}function __(t,e){var n=e,i=x_(t,n),r=i.extent,o=n.get("splitNumber");t instanceof c_&&(t.base=n.get("logBase"));var a=t.type,s=n.get("interval"),l="interval"===a||"time"===a;t.setExtent(r[0],r[1]),t.calcNiceExtent({splitNumber:o,fixMin:i.fixMin,fixMax:i.fixMax,minInterval:l?n.get("minInterval"):null,maxInterval:l?n.get("maxInterval"):null}),null!=s&&t.setInterval&&t.setInterval(s)}function b_(t,e){if(e=e||t.get("type"))switch(e){case"category":return new Rx({ordinalMeta:t.getOrdinalMeta?t.getOrdinalMeta():t.getCategories(),extent:[1/0,-1/0]});case"time":return new Kx({locale:t.ecModel.getLocaleModel(),useUTC:t.ecModel.get("useUTC")});default:return new(bx.getClass(e)||Ex)}}function w_(t){var e,n,i=t.getLabelModel().get("formatter"),r="category"===t.type?t.scale.getExtent()[0]:null;return"time"===t.scale.type?(n=i,function(e,i){return t.scale.getFormattedLabel(e,i,n)}):U(i)?function(e){return function(n){var i=t.scale.getLabel(n);return e.replace("{value}",null!=i?i:"")}}(i):X(i)?(e=i,function(n,i){return null!=r&&(i=n.value-r),e(S_(t,n),i,null!=n.level?{level:n.level}:null)}):function(e){return t.scale.getLabel(e)}}function S_(t,e){return"category"===t.type?t.scale.getLabel(e):e.value}function M_(t,e){var n=e*Math.PI/180,i=t.width,r=t.height,o=i*Math.abs(Math.cos(n))+Math.abs(r*Math.sin(n)),a=i*Math.abs(Math.sin(n))+Math.abs(r*Math.cos(n));return new ze(t.x,t.y,o,a)}function I_(t){var e=t.get("interval");return null==e?"auto":e}function T_(t){return"category"===t.type&&0===I_(t.getLabelModel())}function C_(t,e){var n={};return E(t.mapDimensionsAll(e),(function(e){n[xx(t,e)]=!0})),G(n)}var D_=function(){function t(){}return t.prototype.getNeedCrossZero=function(){return!this.option.scale},t.prototype.getCoordSysModel=function(){},t}();var A_={isDimensionStacked:mx,enableDataStack:vx,getStackedDimension:xx};var k_=Object.freeze({__proto__:null,createList:function(t){return _x(null,t)},getLayoutRect:kp,dataStack:A_,createScale:function(t,e){var n=e;e instanceof Cc||(n=new Cc(e));var i=b_(n);return i.setExtent(t[0],t[1]),__(i,n),i},mixinAxisModelCommonMethods:function(t){R(t,D_)},getECData:rl,createTextStyle:function(t,e){return oc(t,null,null,"normal"!==(e=e||{}).state)},createDimensions:function(t,e){return px(t,e).dimensions},createSymbol:Xy,enableHoverEmphasis:Ul});function L_(t,e){return Math.abs(t-e)<1e-8}function P_(t,e,n){var i=0,r=t[0];if(!r)return!1;for(var o=1;o<t.length;o++){var a=t[o];i+=ms(r[0],r[1],a[0],a[1],e,n),r=a}var s=t[0];return L_(r[0],s[0])&&L_(r[1],s[1])||(i+=ms(r[0],r[1],s[0],s[1],e,n)),0!==i}var O_=[];function R_(t,e){for(var n=0;n<t.length;n++)Wt(t[n],t[n],e)}function N_(t,e,n,i){for(var r=0;r<t.length;r++){var o=t[r];i&&(o=i.project(o)),o&&isFinite(o[0])&&isFinite(o[1])&&(Ht(e,e,o),Yt(n,n,o))}}var E_=function(){function t(t){this.name=t}return t.prototype.setCenter=function(t){this._center=t},t.prototype.getCenter=function(){var t=this._center;return t||(t=this._center=this.calcCenter()),t},t}(),z_=function(t,e){this.type="polygon",this.exterior=t,this.interiors=e},V_=function(t){this.type="linestring",this.points=t},B_=function(t){function e(e,n,i){var r=t.call(this,e)||this;return r.type="geoJSON",r.geometries=n,r._center=i&&[i[0],i[1]],r}return n(e,t),e.prototype.calcCenter=function(){for(var t,e=this.geometries,n=0,i=0;i<e.length;i++){var r=e[i],o=r.exterior,a=o&&o.length;a>n&&(t=r,n=a)}if(t)return function(t){for(var e=0,n=0,i=0,r=t.length,o=t[r-1][0],a=t[r-1][1],s=0;s<r;s++){var l=t[s][0],u=t[s][1],h=o*u-l*a;e+=h,n+=(o+l)*h,i+=(a+u)*h,o=l,a=u}return e?[n/e/3,i/e/3,e]:[t[0][0]||0,t[0][1]||0]}(t.exterior);var s=this.getBoundingRect();return[s.x+s.width/2,s.y+s.height/2]},e.prototype.getBoundingRect=function(t){var e=this._rect;if(e&&!t)return e;var n=[1/0,1/0],i=[-1/0,-1/0];return E(this.geometries,(function(e){"polygon"===e.type?N_(e.exterior,n,i,t):E(e.points,(function(e){N_(e,n,i,t)}))})),isFinite(n[0])&&isFinite(n[1])&&isFinite(i[0])&&isFinite(i[1])||(n[0]=n[1]=i[0]=i[1]=0),e=new ze(n[0],n[1],i[0]-n[0],i[1]-n[1]),t||(this._rect=e),e},e.prototype.contain=function(t){var e=this.getBoundingRect(),n=this.geometries;if(!e.contain(t[0],t[1]))return!1;t:for(var i=0,r=n.length;i<r;i++){var o=n[i];if("polygon"===o.type){var a=o.exterior,s=o.interiors;if(P_(a,t[0],t[1])){for(var l=0;l<(s?s.length:0);l++)if(P_(s[l],t[0],t[1]))continue t;return!0}}}return!1},e.prototype.transformTo=function(t,e,n,i){var r=this.getBoundingRect(),o=r.width/r.height;n?i||(i=n/o):n=o*i;for(var a=new ze(t,e,n,i),s=r.calculateTransform(a),l=this.geometries,u=0;u<l.length;u++){var h=l[u];"polygon"===h.type?(R_(h.exterior,s),E(h.interiors,(function(t){R_(t,s)}))):E(h.points,(function(t){R_(t,s)}))}(r=this._rect).copy(a),this._center=[r.x+r.width/2,r.y+r.height/2]},e.prototype.cloneShallow=function(t){null==t&&(t=this.name);var n=new e(t,this.geometries,this._center);return n._rect=this._rect,n.transformTo=null,n},e}(E_),F_=function(t){function e(e,n){var i=t.call(this,e)||this;return i.type="geoSVG",i._elOnlyForCalculate=n,i}return n(e,t),e.prototype.calcCenter=function(){for(var t=this._elOnlyForCalculate,e=t.getBoundingRect(),n=[e.x+e.width/2,e.y+e.height/2],i=xe(O_),r=t;r&&!r.isGeoSVGGraphicRoot;)be(i,r.getLocalTransform(),i),r=r.parent;return Ie(i,i),Wt(n,n,i),n},e}(E_);function G_(t,e,n){for(var i=0;i<t.length;i++)t[i]=W_(t[i],e[i],n)}function W_(t,e,n){for(var i=[],r=e[0],o=e[1],a=0;a<t.length;a+=2){var s=t.charCodeAt(a)-64,l=t.charCodeAt(a+1)-64;s=s>>1^-(1&s),l=l>>1^-(1&l),r=s+=r,o=l+=o,i.push([s/n,l/n])}return i}function H_(t,e){return z(B((t=function(t){if(!t.UTF8Encoding)return t;var e=t,n=e.UTF8Scale;return null==n&&(n=1024),E(e.features,(function(t){var e=t.geometry,i=e.encodeOffsets,r=e.coordinates;if(i)switch(e.type){case"LineString":e.coordinates=W_(r,i,n);break;case"Polygon":case"MultiLineString":G_(r,i,n);break;case"MultiPolygon":E(r,(function(t,e){return G_(t,i[e],n)}))}})),e.UTF8Encoding=!1,e}(t)).features,(function(t){return t.geometry&&t.properties&&t.geometry.coordinates.length>0})),(function(t){var n=t.properties,i=t.geometry,r=[];switch(i.type){case"Polygon":var o=i.coordinates;r.push(new z_(o[0],o.slice(1)));break;case"MultiPolygon":E(i.coordinates,(function(t){t[0]&&r.push(new z_(t[0],t.slice(1)))}));break;case"LineString":r.push(new V_([i.coordinates]));break;case"MultiLineString":r.push(new V_(i.coordinates))}var a=new B_(n[e||"name"],r,n.cp);return a.properties=n,a}))}var Y_=Object.freeze({__proto__:null,linearMap:Kr,round:Jr,asc:Qr,getPrecision:to,getPrecisionSafe:eo,getPixelPrecision:no,getPercentWithPrecision:function(t,e,n){return t[e]&&io(t,n)[e]||0},MAX_SAFE_INTEGER:oo,remRadian:ao,isRadianAroundZero:so,parseDate:uo,quantity:ho,quantityExponent:co,nice:po,quantile:fo,reformIntervals:go,isNumeric:vo,numericToNumber:yo}),X_=Object.freeze({__proto__:null,parse:uo,format:Jc}),U_=Object.freeze({__proto__:null,extendShape:Ch,extendPath:Ah,makePath:Ph,makeImage:Oh,mergePath:Nh,resizePath:Eh,createIcon:Uh,updateProps:vh,initProps:mh,getTransform:Bh,clipPointsByRect:Yh,clipRectByRect:Xh,registerShape:kh,getShapeClass:Lh,Group:Br,Image:Ns,Text:Xs,Circle:Su,Ellipse:Iu,Sector:Fu,Ring:Wu,Polygon:Xu,Polyline:Zu,Rect:Ws,Line:Ku,BezierCurve:th,Arc:nh,IncrementalDisplayable:dh,CompoundPath:ih,LinearGradient:oh,RadialGradient:ah,BoundingRect:ze}),Z_=Object.freeze({__proto__:null,addCommas:gp,toCamelCase:yp,normalizeCssArray:vp,encodeHTML:re,formatTpl:bp,getTooltipMarker:wp,formatTime:function(t,e,n){"week"!==t&&"month"!==t&&"quarter"!==t&&"half-year"!==t&&"year"!==t||(t="MM-dd\nyyyy");var i=uo(e),r=n?"getUTC":"get",o=i[r+"FullYear"](),a=i[r+"Month"]()+1,s=i[r+"Date"](),l=i[r+"Hours"](),u=i[r+"Minutes"](),h=i[r+"Seconds"](),c=i[r+"Milliseconds"]();return t=t.replace("MM",qc(a,2)).replace("M",a).replace("yyyy",o).replace("yy",qc(o%100+"",2)).replace("dd",qc(s,2)).replace("d",s).replace("hh",qc(l,2)).replace("h",l).replace("mm",qc(u,2)).replace("m",u).replace("ss",qc(h,2)).replace("s",h).replace("SSS",qc(c,3))},capitalFirst:function(t){return t?t.charAt(0).toUpperCase()+t.substr(1):t},truncateText:pa,getTextRect:function(t,e,n,i,r,o,a,s){return new Xs({style:{text:t,font:e,align:n,verticalAlign:i,padding:r,rich:o,overflow:a?"truncate":null,lineHeight:s}}).getBoundingRect()}}),j_=Object.freeze({__proto__:null,map:z,each:E,indexOf:P,inherits:O,reduce:V,filter:B,bind:W,curry:H,isArray:Y,isString:U,isObject:q,isFunction:X,extend:A,defaults:k,clone:T,merge:C}),q_=Vo();function K_(t,e){var n=z(e,(function(e){return t.scale.parse(e)}));return"time"===t.type&&n.length>0&&(n.sort(),n.unshift(n[0]),n.push(n[n.length-1])),n}function $_(t){var e=t.getLabelModel().get("customValues");if(e){var n=w_(t);return{labels:K_(t,e).map((function(e){var i={value:e};return{formattedLabel:n(i),rawLabel:t.scale.getLabel(i),tickValue:e}}))}}return"category"===t.type?function(t){var e=t.getLabelModel(),n=Q_(t,e);return!e.get("show")||t.scale.isBlank()?{labels:[],labelCategoryInterval:n.labelCategoryInterval}:n}(t):function(t){var e=t.scale.getTicks(),n=w_(t);return{labels:z(e,(function(e,i){return{level:e.level,formattedLabel:n(e,i),rawLabel:t.scale.getLabel(e),tickValue:e.value}}))}}(t)}function J_(t,e){var n=t.getTickModel().get("customValues");return n?{ticks:K_(t,n)}:"category"===t.type?function(t,e){var n,i,r=tb(t,"ticks"),o=I_(e),a=eb(r,o);if(a)return a;e.get("show")&&!t.scale.isBlank()||(n=[]);if(X(o))n=rb(t,o,!0);else if("auto"===o){var s=Q_(t,t.getLabelModel());i=s.labelCategoryInterval,n=z(s.labels,(function(t){return t.tickValue}))}else n=ib(t,i=o,!0);return nb(r,o,{ticks:n,tickCategoryInterval:i})}(t,e):{ticks:z(t.scale.getTicks(),(function(t){return t.value}))}}function Q_(t,e){var n,i,r=tb(t,"labels"),o=I_(e),a=eb(r,o);return a||(X(o)?n=rb(t,o):(i="auto"===o?function(t){var e=q_(t).autoInterval;return null!=e?e:q_(t).autoInterval=t.calculateCategoryInterval()}(t):o,n=ib(t,i)),nb(r,o,{labels:n,labelCategoryInterval:i}))}function tb(t,e){return q_(t)[e]||(q_(t)[e]=[])}function eb(t,e){for(var n=0;n<t.length;n++)if(t[n].key===e)return t[n].value}function nb(t,e,n){return t.push({key:e,value:n}),n}function ib(t,e,n){var i=w_(t),r=t.scale,o=r.getExtent(),a=t.getLabelModel(),s=[],l=Math.max((e||0)+1,1),u=o[0],h=r.count();0!==u&&l>1&&h/l>2&&(u=Math.round(Math.ceil(u/l)*l));var c=T_(t),p=a.get("showMinLabel")||c,d=a.get("showMaxLabel")||c;p&&u!==o[0]&&g(o[0]);for(var f=u;f<=o[1];f+=l)g(f);function g(t){var e={value:t};s.push(n?t:{formattedLabel:i(e),rawLabel:r.getLabel(e),tickValue:t})}return d&&f-l!==o[1]&&g(o[1]),s}function rb(t,e,n){var i=t.scale,r=w_(t),o=[];return E(i.getTicks(),(function(t){var a=i.getLabel(t),s=t.value;e(t.value,a)&&o.push(n?s:{formattedLabel:r(t),rawLabel:a,tickValue:s})})),o}var ob=[0,1],ab=function(){function t(t,e,n){this.onBand=!1,this.inverse=!1,this.dim=t,this.scale=e,this._extent=n||[0,0]}return t.prototype.contain=function(t){var e=this._extent,n=Math.min(e[0],e[1]),i=Math.max(e[0],e[1]);return t>=n&&t<=i},t.prototype.containData=function(t){return this.scale.contain(t)},t.prototype.getExtent=function(){return this._extent.slice()},t.prototype.getPixelPrecision=function(t){return no(t||this.scale.getExtent(),this._extent)},t.prototype.setExtent=function(t,e){var n=this._extent;n[0]=t,n[1]=e},t.prototype.dataToCoord=function(t,e){var n=this._extent,i=this.scale;return t=i.normalize(t),this.onBand&&"ordinal"===i.type&&sb(n=n.slice(),i.count()),Kr(t,ob,n,e)},t.prototype.coordToData=function(t,e){var n=this._extent,i=this.scale;this.onBand&&"ordinal"===i.type&&sb(n=n.slice(),i.count());var r=Kr(t,n,ob,e);return this.scale.scale(r)},t.prototype.pointToData=function(t,e){},t.prototype.getTicksCoords=function(t){var e=(t=t||{}).tickModel||this.getTickModel(),n=z(J_(this,e).ticks,(function(t){return{coord:this.dataToCoord("ordinal"===this.scale.type?this.scale.getRawOrdinalNumber(t):t),tickValue:t}}),this);return function(t,e,n,i){var r=e.length;if(!t.onBand||n||!r)return;var o,a,s=t.getExtent();if(1===r)e[0].coord=s[0],o=e[1]={coord:s[1]};else{var l=e[r-1].tickValue-e[0].tickValue,u=(e[r-1].coord-e[0].coord)/l;E(e,(function(t){t.coord-=u/2})),a=1+t.scale.getExtent()[1]-e[r-1].tickValue,o={coord:e[r-1].coord+u*a},e.push(o)}var h=s[0]>s[1];c(e[0].coord,s[0])&&(i?e[0].coord=s[0]:e.shift());i&&c(s[0],e[0].coord)&&e.unshift({coord:s[0]});c(s[1],o.coord)&&(i?o.coord=s[1]:e.pop());i&&c(o.coord,s[1])&&e.push({coord:s[1]});function c(t,e){return t=Jr(t),e=Jr(e),h?t>e:t<e}}(this,n,e.get("alignWithLabel"),t.clamp),n},t.prototype.getMinorTicksCoords=function(){if("ordinal"===this.scale.type)return[];var t=this.model.getModel("minorTick").get("splitNumber");return t>0&&t<100||(t=5),z(this.scale.getMinorTicks(t),(function(t){return z(t,(function(t){return{coord:this.dataToCoord(t),tickValue:t}}),this)}),this)},t.prototype.getViewLabels=function(){return $_(this).labels},t.prototype.getLabelModel=function(){return this.model.getModel("axisLabel")},t.prototype.getTickModel=function(){return this.model.getModel("axisTick")},t.prototype.getBandWidth=function(){var t=this._extent,e=this.scale.getExtent(),n=e[1]-e[0]+(this.onBand?1:0);0===n&&(n=1);var i=Math.abs(t[1]-t[0]);return Math.abs(i)/n},t.prototype.calculateCategoryInterval=function(){return function(t){var e=function(t){var e=t.getLabelModel();return{axisRotate:t.getRotate?t.getRotate():t.isHorizontal&&!t.isHorizontal()?90:0,labelRotate:e.get("rotate")||0,font:e.getFont()}}(t),n=w_(t),i=(e.axisRotate-e.labelRotate)/180*Math.PI,r=t.scale,o=r.getExtent(),a=r.count();if(o[1]-o[0]<1)return 0;var s=1;a>40&&(s=Math.max(1,Math.floor(a/40)));for(var l=o[0],u=t.dataToCoord(l+1)-t.dataToCoord(l),h=Math.abs(u*Math.cos(i)),c=Math.abs(u*Math.sin(i)),p=0,d=0;l<=o[1];l+=s){var f,g,y=Sr(n({value:l}),e.font,"center","top");f=1.3*y.width,g=1.3*y.height,p=Math.max(p,f,7),d=Math.max(d,g,7)}var v=p/h,m=d/c;isNaN(v)&&(v=1/0),isNaN(m)&&(m=1/0);var x=Math.max(0,Math.floor(Math.min(v,m))),_=q_(t.model),b=t.getExtent(),w=_.lastAutoInterval,S=_.lastTickCount;return null!=w&&null!=S&&Math.abs(w-x)<=1&&Math.abs(S-a)<=1&&w>x&&_.axisExtent0===b[0]&&_.axisExtent1===b[1]?x=w:(_.lastTickCount=a,_.lastAutoInterval=x,_.axisExtent0=b[0],_.axisExtent1=b[1]),x}(this)},t}();function sb(t,e){var n=(t[1]-t[0])/e/2;t[0]+=n,t[1]-=n}var lb=2*Math.PI,ub=hs.CMD,hb=["top","right","bottom","left"];function cb(t,e,n,i,r){var o=n.width,a=n.height;switch(t){case"top":i.set(n.x+o/2,n.y-e),r.set(0,-1);break;case"bottom":i.set(n.x+o/2,n.y+a+e),r.set(0,1);break;case"left":i.set(n.x-e,n.y+a/2),r.set(-1,0);break;case"right":i.set(n.x+o+e,n.y+a/2),r.set(1,0)}}function pb(t,e,n,i,r,o,a,s,l){a-=t,s-=e;var u=Math.sqrt(a*a+s*s),h=(a/=u)*n+t,c=(s/=u)*n+e;if(Math.abs(i-r)%lb<1e-4)return l[0]=h,l[1]=c,u-n;if(o){var p=i;i=gs(r),r=gs(p)}else i=gs(i),r=gs(r);i>r&&(r+=lb);var d=Math.atan2(s,a);if(d<0&&(d+=lb),d>=i&&d<=r||d+lb>=i&&d+lb<=r)return l[0]=h,l[1]=c,u-n;var f=n*Math.cos(i)+t,g=n*Math.sin(i)+e,y=n*Math.cos(r)+t,v=n*Math.sin(r)+e,m=(f-a)*(f-a)+(g-s)*(g-s),x=(y-a)*(y-a)+(v-s)*(v-s);return m<x?(l[0]=f,l[1]=g,Math.sqrt(m)):(l[0]=y,l[1]=v,Math.sqrt(x))}function db(t,e,n,i,r,o,a,s){var l=r-t,u=o-e,h=n-t,c=i-e,p=Math.sqrt(h*h+c*c),d=(l*(h/=p)+u*(c/=p))/p;s&&(d=Math.min(Math.max(d,0),1)),d*=p;var f=a[0]=t+d*h,g=a[1]=e+d*c;return Math.sqrt((f-r)*(f-r)+(g-o)*(g-o))}function fb(t,e,n,i,r,o,a){n<0&&(t+=n,n=-n),i<0&&(e+=i,i=-i);var s=t+n,l=e+i,u=a[0]=Math.min(Math.max(r,t),s),h=a[1]=Math.min(Math.max(o,e),l);return Math.sqrt((u-r)*(u-r)+(h-o)*(h-o))}var gb=[];function yb(t,e,n){var i=fb(e.x,e.y,e.width,e.height,t.x,t.y,gb);return n.set(gb[0],gb[1]),i}function vb(t,e,n){for(var i,r,o=0,a=0,s=0,l=0,u=1/0,h=e.data,c=t.x,p=t.y,d=0;d<h.length;){var f=h[d++];1===d&&(s=o=h[d],l=a=h[d+1]);var g=u;switch(f){case ub.M:o=s=h[d++],a=l=h[d++];break;case ub.L:g=db(o,a,h[d],h[d+1],c,p,gb,!0),o=h[d++],a=h[d++];break;case ub.C:g=Sn(o,a,h[d++],h[d++],h[d++],h[d++],h[d],h[d+1],c,p,gb),o=h[d++],a=h[d++];break;case ub.Q:g=An(o,a,h[d++],h[d++],h[d],h[d+1],c,p,gb),o=h[d++],a=h[d++];break;case ub.A:var y=h[d++],v=h[d++],m=h[d++],x=h[d++],_=h[d++],b=h[d++];d+=1;var w=!!(1-h[d++]);i=Math.cos(_)*m+y,r=Math.sin(_)*x+v,d<=1&&(s=i,l=r),g=pb(y,v,x,_,_+b,w,(c-y)*x/m+y,p,gb),o=Math.cos(_+b)*m+y,a=Math.sin(_+b)*x+v;break;case ub.R:g=fb(s=o=h[d++],l=a=h[d++],h[d++],h[d++],c,p,gb);break;case ub.Z:g=db(o,a,s,l,c,p,gb,!0),o=s,a=l}g<u&&(u=g,n.set(gb[0],gb[1]))}return u}var mb=new De,xb=new De,_b=new De,bb=new De,wb=new De;function Sb(t,e){if(t){var n=t.getTextGuideLine(),i=t.getTextContent();if(i&&n){var r=t.textGuideLineConfig||{},o=[[0,0],[0,0],[0,0]],a=r.candidates||hb,s=i.getBoundingRect().clone();s.applyTransform(i.getComputedTransform());var l=1/0,u=r.anchor,h=t.getComputedTransform(),c=h&&Ie([],h),p=e.get("length2")||0;u&&_b.copy(u);for(var d=0;d<a.length;d++){cb(a[d],0,s,mb,bb),De.scaleAndAdd(xb,mb,bb,p),xb.transform(c);var f=t.getBoundingRect(),g=u?u.distance(xb):t instanceof ks?vb(xb,t.path,_b):yb(xb,f,_b);g<l&&(l=g,xb.transform(h),_b.transform(h),_b.toArray(o[0]),xb.toArray(o[1]),mb.toArray(o[2]))}Tb(o,e.get("minTurnAngle")),n.setShape({points:o})}}}var Mb=[],Ib=new De;function Tb(t,e){if(e<=180&&e>0){e=e/180*Math.PI,mb.fromArray(t[0]),xb.fromArray(t[1]),_b.fromArray(t[2]),De.sub(bb,mb,xb),De.sub(wb,_b,xb);var n=bb.len(),i=wb.len();if(!(n<.001||i<.001)){bb.scale(1/n),wb.scale(1/i);var r=bb.dot(wb);if(Math.cos(e)<r){var o=db(xb.x,xb.y,_b.x,_b.y,mb.x,mb.y,Mb,!1);Ib.fromArray(Mb),Ib.scaleAndAdd(wb,o/Math.tan(Math.PI-e));var a=_b.x!==xb.x?(Ib.x-xb.x)/(_b.x-xb.x):(Ib.y-xb.y)/(_b.y-xb.y);if(isNaN(a))return;a<0?De.copy(Ib,xb):a>1&&De.copy(Ib,_b),Ib.toArray(t[1])}}}}function Cb(t,e,n){if(n<=180&&n>0){n=n/180*Math.PI,mb.fromArray(t[0]),xb.fromArray(t[1]),_b.fromArray(t[2]),De.sub(bb,xb,mb),De.sub(wb,_b,xb);var i=bb.len(),r=wb.len();if(!(i<.001||r<.001))if(bb.scale(1/i),wb.scale(1/r),bb.dot(e)<Math.cos(n)){var o=db(xb.x,xb.y,_b.x,_b.y,mb.x,mb.y,Mb,!1);Ib.fromArray(Mb);var a=Math.PI/2,s=a+Math.acos(wb.dot(e))-n;if(s>=a)De.copy(Ib,_b);else{Ib.scaleAndAdd(wb,o/Math.tan(Math.PI/2-s));var l=_b.x!==xb.x?(Ib.x-xb.x)/(_b.x-xb.x):(Ib.y-xb.y)/(_b.y-xb.y);if(isNaN(l))return;l<0?De.copy(Ib,xb):l>1&&De.copy(Ib,_b)}Ib.toArray(t[1])}}}function Db(t,e,n,i){var r="normal"===n,o=r?t:t.ensureState(n);o.ignore=e;var a=i.get("smooth");a&&!0===a&&(a=.3),o.shape=o.shape||{},a>0&&(o.shape.smooth=a);var s=i.getModel("lineStyle").getLineStyle();r?t.useStyle(s):o.style=s}function Ab(t,e){var n=e.smooth,i=e.points;if(i)if(t.moveTo(i[0][0],i[0][1]),n>0&&i.length>=3){var r=Vt(i[0],i[1]),o=Vt(i[1],i[2]);if(!r||!o)return t.lineTo(i[1][0],i[1][1]),void t.lineTo(i[2][0],i[2][1]);var a=Math.min(r,o)*n,s=Gt([],i[1],i[0],a/r),l=Gt([],i[1],i[2],a/o),u=Gt([],s,l,.5);t.bezierCurveTo(s[0],s[1],s[0],s[1],u[0],u[1]),t.bezierCurveTo(l[0],l[1],l[0],l[1],i[2][0],i[2][1])}else for(var h=1;h<i.length;h++)t.lineTo(i[h][0],i[h][1])}function kb(t,e,n){var i=t.getTextGuideLine(),r=t.getTextContent();if(r){for(var o=e.normal,a=o.get("show"),s=r.ignore,l=0;l<cl.length;l++){var u=cl[l],h=e[u],c="normal"===u;if(h){var p=h.get("show");if((c?s:rt(r.states[u]&&r.states[u].ignore,s))||!rt(p,a)){var d=c?i:i&&i.states[u];d&&(d.ignore=!0),i&&Db(i,!0,u,h);continue}i||(i=new Zu,t.setTextGuideLine(i),c||!s&&a||Db(i,!0,"normal",e.normal),t.stateProxy&&(i.stateProxy=t.stateProxy)),Db(i,!1,u,h)}}if(i){k(i.style,n),i.style.fill=null;var f=o.get("showAbove");(t.textGuideLineConfig=t.textGuideLineConfig||{}).showAbove=f||!1,i.buildPath=Ab}}else i&&t.removeTextGuideLine()}function Lb(t,e){e=e||"labelLine";for(var n={normal:t.getModel(e)},i=0;i<hl.length;i++){var r=hl[i];n[r]=t.getModel([r,e])}return n}function Pb(t){for(var e=[],n=0;n<t.length;n++){var i=t[n];if(!i.defaultAttr.ignore){var r=i.label,o=r.getComputedTransform(),a=r.getBoundingRect(),s=!o||o[1]<1e-5&&o[2]<1e-5,l=r.style.margin||0,u=a.clone();u.applyTransform(o),u.x-=l/2,u.y-=l/2,u.width+=l,u.height+=l;var h=s?new ch(a,o):null;e.push({label:r,labelLine:i.labelLine,rect:u,localRect:a,obb:h,priority:i.priority,defaultAttr:i.defaultAttr,layoutOption:i.computedLayoutOption,axisAligned:s,transform:o})}}return e}function Ob(t,e,n,i,r,o){var a=t.length;if(!(a<2)){t.sort((function(t,n){return t.rect[e]-n.rect[e]}));for(var s,l=0,u=!1,h=0,c=0;c<a;c++){var p=t[c],d=p.rect;(s=d[e]-l)<0&&(d[e]-=s,p.label[e]-=s,u=!0),h+=Math.max(-s,0),l=d[e]+d[n]}h>0&&o&&_(-h/a,0,a);var f,g,y=t[0],v=t[a-1];return m(),f<0&&b(-f,.8),g<0&&b(g,.8),m(),x(f,g,1),x(g,f,-1),m(),f<0&&w(-f),g<0&&w(g),u}function m(){f=y.rect[e]-i,g=r-v.rect[e]-v.rect[n]}function x(t,e,n){if(t<0){var i=Math.min(e,-t);if(i>0){_(i*n,0,a);var r=i+t;r<0&&b(-r*n,1)}else b(-t*n,1)}}function _(n,i,r){0!==n&&(u=!0);for(var o=i;o<r;o++){var a=t[o];a.rect[e]+=n,a.label[e]+=n}}function b(i,r){for(var o=[],s=0,l=1;l<a;l++){var u=t[l-1].rect,h=Math.max(t[l].rect[e]-u[e]-u[n],0);o.push(h),s+=h}if(s){var c=Math.min(Math.abs(i)/s,r);if(i>0)for(l=0;l<a-1;l++){_(o[l]*c,0,l+1)}else for(l=a-1;l>0;l--){_(-(o[l-1]*c),l,a)}}}function w(t){var e=t<0?-1:1;t=Math.abs(t);for(var n=Math.ceil(t/(a-1)),i=0;i<a-1;i++)if(e>0?_(n,0,i+1):_(-n,a-i-1,a),(t-=n)<=0)return}}function Rb(t,e,n,i){return Ob(t,"y","height",e,n,i)}function Nb(t){var e=[];t.sort((function(t,e){return e.priority-t.priority}));var n=new ze(0,0,0,0);function i(t){if(!t.ignore){var e=t.ensureState("emphasis");null==e.ignore&&(e.ignore=!1)}t.ignore=!0}for(var r=0;r<t.length;r++){var o=t[r],a=o.axisAligned,s=o.localRect,l=o.transform,u=o.label,h=o.labelLine;n.copy(o.rect),n.width-=.1,n.height-=.1,n.x+=.05,n.y+=.05;for(var c=o.obb,p=!1,d=0;d<e.length;d++){var f=e[d];if(n.intersect(f.rect)){if(a&&f.axisAligned){p=!0;break}if(f.obb||(f.obb=new ch(f.localRect,f.transform)),c||(c=new ch(s,l)),c.intersect(f.obb)){p=!0;break}}}p?(i(u),h&&i(h)):(u.attr("ignore",o.defaultAttr.ignore),h&&h.attr("ignore",o.defaultAttr.labelGuideIgnore),e.push(o))}}function Eb(t){if(t){for(var e=[],n=0;n<t.length;n++)e.push(t[n].slice());return e}}function zb(t,e){var n=t.label,i=e&&e.getTextGuideLine();return{dataIndex:t.dataIndex,dataType:t.dataType,seriesIndex:t.seriesModel.seriesIndex,text:t.label.style.text,rect:t.hostRect,labelRect:t.rect,align:n.style.align,verticalAlign:n.style.verticalAlign,labelLinePoints:Eb(i&&i.shape.points)}}var Vb=["align","verticalAlign","width","height","fontSize"],Bb=new vr,Fb=Vo(),Gb=Vo();function Wb(t,e,n){for(var i=0;i<n.length;i++){var r=n[i];null!=e[r]&&(t[r]=e[r])}}var Hb=["x","y","rotation"],Yb=function(){function t(){this._labelList=[],this._chartViewList=[]}return t.prototype.clearLabels=function(){this._labelList=[],this._chartViewList=[]},t.prototype._addLabel=function(t,e,n,i,r){var o=i.style,a=i.__hostTarget.textConfig||{},s=i.getComputedTransform(),l=i.getBoundingRect().plain();ze.applyTransform(l,l,s),s?Bb.setLocalTransform(s):(Bb.x=Bb.y=Bb.rotation=Bb.originX=Bb.originY=0,Bb.scaleX=Bb.scaleY=1),Bb.rotation=gs(Bb.rotation);var u,h=i.__hostTarget;if(h){u=h.getBoundingRect().plain();var c=h.getComputedTransform();ze.applyTransform(u,u,c)}var p=u&&h.getTextGuideLine();this._labelList.push({label:i,labelLine:p,seriesModel:n,dataIndex:t,dataType:e,layoutOption:r,computedLayoutOption:null,rect:l,hostRect:u,priority:u?u.width*u.height:0,defaultAttr:{ignore:i.ignore,labelGuideIgnore:p&&p.ignore,x:Bb.x,y:Bb.y,scaleX:Bb.scaleX,scaleY:Bb.scaleY,rotation:Bb.rotation,style:{x:o.x,y:o.y,align:o.align,verticalAlign:o.verticalAlign,width:o.width,height:o.height,fontSize:o.fontSize},cursor:i.cursor,attachedPos:a.position,attachedRot:a.rotation}})},t.prototype.addLabelsOfSeries=function(t){var e=this;this._chartViewList.push(t);var n=t.__model,i=n.get("labelLayout");(X(i)||G(i).length)&&t.group.traverse((function(t){if(t.ignore)return!0;var r=t.getTextContent(),o=rl(t);r&&!r.disableLabelLayout&&e._addLabel(o.dataIndex,o.dataType,n,r,i)}))},t.prototype.updateLayoutConfig=function(t){var e=t.getWidth(),n=t.getHeight();function i(t,e){return function(){Sb(t,e)}}for(var r=0;r<this._labelList.length;r++){var o=this._labelList[r],a=o.label,s=a.__hostTarget,l=o.defaultAttr,u=void 0;u=(u=X(o.layoutOption)?o.layoutOption(zb(o,s)):o.layoutOption)||{},o.computedLayoutOption=u;var h=Math.PI/180;s&&s.setTextConfig({local:!1,position:null!=u.x||null!=u.y?null:l.attachedPos,rotation:null!=u.rotate?u.rotate*h:l.attachedRot,offset:[u.dx||0,u.dy||0]});var c=!1;if(null!=u.x?(a.x=$r(u.x,e),a.setStyle("x",0),c=!0):(a.x=l.x,a.setStyle("x",l.style.x)),null!=u.y?(a.y=$r(u.y,n),a.setStyle("y",0),c=!0):(a.y=l.y,a.setStyle("y",l.style.y)),u.labelLinePoints){var p=s.getTextGuideLine();p&&(p.setShape({points:u.labelLinePoints}),c=!1)}Fb(a).needsUpdateLabelLine=c,a.rotation=null!=u.rotate?u.rotate*h:l.rotation,a.scaleX=l.scaleX,a.scaleY=l.scaleY;for(var d=0;d<Vb.length;d++){var f=Vb[d];a.setStyle(f,null!=u[f]?u[f]:l.style[f])}if(u.draggable){if(a.draggable=!0,a.cursor="move",s){var g=o.seriesModel;if(null!=o.dataIndex)g=o.seriesModel.getData(o.dataType).getItemModel(o.dataIndex);a.on("drag",i(s,g.getModel("labelLine")))}}else a.off("drag"),a.cursor=l.cursor}},t.prototype.layout=function(t){var e,n=t.getWidth(),i=t.getHeight(),r=Pb(this._labelList),o=B(r,(function(t){return"shiftX"===t.layoutOption.moveOverlap})),a=B(r,(function(t){return"shiftY"===t.layoutOption.moveOverlap}));Ob(o,"x","width",0,n,e),Rb(a,0,i),Nb(B(r,(function(t){return t.layoutOption.hideOverlap})))},t.prototype.processLabelsOverall=function(){var t=this;E(this._chartViewList,(function(e){var n=e.__model,i=e.ignoreLabelLineUpdate,r=n.isAnimationEnabled();e.group.traverse((function(e){if(e.ignore&&!e.forceLabelAnimation)return!0;var o=!i,a=e.getTextContent();!o&&a&&(o=Fb(a).needsUpdateLabelLine),o&&t._updateLabelLine(e,n),r&&t._animateLabels(e,n)}))}))},t.prototype._updateLabelLine=function(t,e){var n=t.getTextContent(),i=rl(t),r=i.dataIndex;if(n&&null!=r){var o=e.getData(i.dataType),a=o.getItemModel(r),s={},l=o.getItemVisual(r,"style");if(l){var u=o.getVisual("drawType");s.stroke=l[u]}var h=a.getModel("labelLine");kb(t,Lb(a),s),Sb(t,h)}},t.prototype._animateLabels=function(t,e){var n=t.getTextContent(),i=t.getTextGuideLine();if(n&&(t.forceLabelAnimation||!n.ignore&&!n.invisible&&!t.disableLabelAnimation&&!xh(t))){var r=(d=Fb(n)).oldLayout,o=rl(t),a=o.dataIndex,s={x:n.x,y:n.y,rotation:n.rotation},l=e.getData(o.dataType);if(r){n.attr(r);var u=t.prevStates;u&&(P(u,"select")>=0&&n.attr(d.oldLayoutSelect),P(u,"emphasis")>=0&&n.attr(d.oldLayoutEmphasis)),vh(n,s,e,a)}else if(n.attr(s),!pc(n).valueAnimation){var h=rt(n.style.opacity,1);n.style.opacity=0,mh(n,{style:{opacity:h}},e,a)}if(d.oldLayout=s,n.states.select){var c=d.oldLayoutSelect={};Wb(c,s,Hb),Wb(c,n.states.select,Hb)}if(n.states.emphasis){var p=d.oldLayoutEmphasis={};Wb(p,s,Hb),Wb(p,n.states.emphasis,Hb)}fc(n,a,l,e,e)}if(i&&!i.ignore&&!i.invisible){r=(d=Gb(i)).oldLayout;var d,f={points:i.shape.points};r?(i.attr({shape:r}),vh(i,{shape:f},e)):(i.setShape(f),i.style.strokePercent=0,mh(i,{style:{strokePercent:1}},e)),d.oldLayout=f}},t}(),Xb=Vo();var Ub=Math.sin,Zb=Math.cos,jb=Math.PI,qb=2*Math.PI,Kb=180/jb,$b=function(){function t(){}return t.prototype.reset=function(t){this._start=!0,this._d=[],this._str="",this._p=Math.pow(10,t||4)},t.prototype.moveTo=function(t,e){this._add("M",t,e)},t.prototype.lineTo=function(t,e){this._add("L",t,e)},t.prototype.bezierCurveTo=function(t,e,n,i,r,o){this._add("C",t,e,n,i,r,o)},t.prototype.quadraticCurveTo=function(t,e,n,i){this._add("Q",t,e,n,i)},t.prototype.arc=function(t,e,n,i,r,o){this.ellipse(t,e,n,n,0,i,r,o)},t.prototype.ellipse=function(t,e,n,i,r,o,a,s){var l=a-o,u=!s,h=Math.abs(l),c=pi(h-qb)||(u?l>=qb:-l>=qb),p=l>0?l%qb:l%qb+qb,d=!1;d=!!c||!pi(h)&&p>=jb==!!u;var f=t+n*Zb(o),g=e+i*Ub(o);this._start&&this._add("M",f,g);var y=Math.round(r*Kb);if(c){var v=1/this._p,m=(u?1:-1)*(qb-v);this._add("A",n,i,y,1,+u,t+n*Zb(o+m),e+i*Ub(o+m)),v>.01&&this._add("A",n,i,y,0,+u,f,g)}else{var x=t+n*Zb(a),_=e+i*Ub(a);this._add("A",n,i,y,+d,+u,x,_)}},t.prototype.rect=function(t,e,n,i){this._add("M",t,e),this._add("l",n,0),this._add("l",0,i),this._add("l",-n,0),this._add("Z")},t.prototype.closePath=function(){this._d.length>0&&this._add("Z")},t.prototype._add=function(t,e,n,i,r,o,a,s,l){for(var u=[],h=this._p,c=1;c<arguments.length;c++){var p=arguments[c];if(isNaN(p))return void(this._invalid=!0);u.push(Math.round(p*h)/h)}this._d.push(t+u.join(" ")),this._start="Z"===t},t.prototype.generateStr=function(){this._str=this._invalid?"":this._d.join(""),this._d=[]},t.prototype.getStr=function(){return this._str},t}(),Jb="none",Qb=Math.round;var tw=["lineCap","miterLimit","lineJoin"],ew=z(tw,(function(t){return"stroke-"+t.toLowerCase()}));function nw(t,e,n,i){var r=null==e.opacity?1:e.opacity;if(n instanceof Ns)t("opacity",r);else{if(function(t){var e=t.fill;return null!=e&&e!==Jb}(e)){var o=hi(e.fill);t("fill",o.color);var a=null!=e.fillOpacity?e.fillOpacity*o.opacity*r:o.opacity*r;(i||a<1)&&t("fill-opacity",a)}else t("fill",Jb);if(function(t){var e=t.stroke;return null!=e&&e!==Jb}(e)){var s=hi(e.stroke);t("stroke",s.color);var l=e.strokeNoScale?n.getLineScale():1,u=l?(e.lineWidth||0)/l:0,h=null!=e.strokeOpacity?e.strokeOpacity*s.opacity*r:s.opacity*r,c=e.strokeFirst;if((i||1!==u)&&t("stroke-width",u),(i||c)&&t("paint-order",c?"stroke":"fill"),(i||h<1)&&t("stroke-opacity",h),e.lineDash){var p=Jy(n),d=p[0],f=p[1];d&&(f=Qb(f||0),t("stroke-dasharray",d.join(",")),(f||i)&&t("stroke-dashoffset",f))}else i&&t("stroke-dasharray",Jb);for(var g=0;g<tw.length;g++){var y=tw[g];if(i||e[y]!==Cs[y]){var v=e[y]||Cs[y];v&&t(ew[g],v)}}}else i&&t("stroke",Jb)}}var iw="http://www.w3.org/2000/svg",rw="http://www.w3.org/1999/xlink",ow="ecmeta_";function aw(t){return document.createElementNS(iw,t)}function sw(t,e,n,i,r){return{tag:t,attrs:n||{},children:i,text:r,key:e}}function lw(t,e){var n=(e=e||{}).newline?"\n":"";return function t(e){var i=e.children,r=e.tag,o=e.attrs,a=e.text;return function(t,e){var n=[];if(e)for(var i in e){var r=e[i],o=i;!1!==r&&(!0!==r&&null!=r&&(o+='="'+r+'"'),n.push(o))}return"<"+t+" "+n.join(" ")+">"}(r,o)+("style"!==r?re(a):a||"")+(i?""+n+z(i,(function(e){return t(e)})).join(n)+n:"")+("</"+r+">")}(t)}function uw(t){return{zrId:t,shadowCache:{},patternCache:{},gradientCache:{},clipPathCache:{},defs:{},cssNodes:{},cssAnims:{},cssStyleCache:{},cssAnimIdx:0,shadowIdx:0,gradientIdx:0,patternIdx:0,clipPathIdx:0}}function hw(t,e,n,i){return sw("svg","root",{width:t,height:e,xmlns:iw,"xmlns:xlink":rw,version:"1.1",baseProfile:"full",viewBox:!!i&&"0 0 "+t+" "+e},n)}var cw=0;function pw(){return cw++}var dw={cubicIn:"0.32,0,0.67,0",cubicOut:"0.33,1,0.68,1",cubicInOut:"0.65,0,0.35,1",quadraticIn:"0.11,0,0.5,0",quadraticOut:"0.5,1,0.89,1",quadraticInOut:"0.45,0,0.55,1",quarticIn:"0.5,0,0.75,0",quarticOut:"0.25,1,0.5,1",quarticInOut:"0.76,0,0.24,1",quinticIn:"0.64,0,0.78,0",quinticOut:"0.22,1,0.36,1",quinticInOut:"0.83,0,0.17,1",sinusoidalIn:"0.12,0,0.39,0",sinusoidalOut:"0.61,1,0.88,1",sinusoidalInOut:"0.37,0,0.63,1",exponentialIn:"0.7,0,0.84,0",exponentialOut:"0.16,1,0.3,1",exponentialInOut:"0.87,0,0.13,1",circularIn:"0.55,0,1,0.45",circularOut:"0,0.55,0.45,1",circularInOut:"0.85,0,0.15,1"},fw="transform-origin";function gw(t,e,n){var i=A({},t.shape);A(i,e),t.buildPath(n,i);var r=new $b;return r.reset(wi(t)),n.rebuildPath(r,1),r.generateStr(),r.getStr()}function yw(t,e){var n=e.originX,i=e.originY;(n||i)&&(t[fw]=n+"px "+i+"px")}var vw={fill:"fill",opacity:"opacity",lineWidth:"stroke-width",lineDashOffset:"stroke-dashoffset"};function mw(t,e){var n=e.zrId+"-ani-"+e.cssAnimIdx++;return e.cssAnims[n]=t,n}function xw(t){return U(t)?dw[t]?"cubic-bezier("+dw[t]+")":Pn(t)?t:"":""}function _w(t,e,n,i){var r=t.animators,o=r.length,a=[];if(t instanceof ih){var s=function(t,e,n){var i,r,o=t.shape.paths,a={};if(E(o,(function(t){var e=uw(n.zrId);e.animation=!0,_w(t,{},e,!0);var o=e.cssAnims,s=e.cssNodes,l=G(o),u=l.length;if(u){var h=o[r=l[u-1]];for(var c in h){var p=h[c];a[c]=a[c]||{d:""},a[c].d+=p.d||""}for(var d in s){var f=s[d].animation;f.indexOf(r)>=0&&(i=f)}}})),i){e.d=!1;var s=mw(a,n);return i.replace(r,s)}}(t,e,n);if(s)a.push(s);else if(!o)return}else if(!o)return;for(var l={},u=0;u<o;u++){var h=r[u],c=[h.getMaxTime()/1e3+"s"],p=xw(h.getClip().easing),d=h.getDelay();p?c.push(p):c.push("linear"),d&&c.push(d/1e3+"s"),h.getLoop()&&c.push("infinite");var f=c.join(" ");l[f]=l[f]||[f,[]],l[f][1].push(h)}function g(r){var o,a=r[1],s=a.length,l={},u={},h={},c="animation-timing-function";function p(t,e,n){for(var i=t.getTracks(),r=t.getMaxTime(),o=0;o<i.length;o++){var a=i[o];if(a.needsAnimate()){var s=a.keyframes,l=a.propName;if(n&&(l=n(l)),l)for(var u=0;u<s.length;u++){var h=s[u],p=Math.round(h.time/r*100)+"%",d=xw(h.easing),f=h.rawValue;(U(f)||j(f))&&(e[p]=e[p]||{},e[p][l]=h.rawValue,d&&(e[p][c]=d))}}}}for(var d=0;d<s;d++){(S=(w=a[d]).targetName)?"shape"===S&&p(w,u):!i&&p(w,l)}for(var f in l){var g={};xr(g,t),A(g,l[f]);var y=Si(g),v=l[f][c];h[f]=y?{transform:y}:{},yw(h[f],g),v&&(h[f][c]=v)}var m=!0;for(var f in u){h[f]=h[f]||{};var x=!o;v=u[f][c];x&&(o=new hs);var _=o.len();o.reset(),h[f].d=gw(t,u[f],o);var b=o.len();if(!x&&_!==b){m=!1;break}v&&(h[f][c]=v)}if(!m)for(var f in h)delete h[f].d;if(!i)for(d=0;d<s;d++){var w,S;"style"===(S=(w=a[d]).targetName)&&p(w,h,(function(t){return vw[t]}))}var M,I=G(h),T=!0;for(d=1;d<I.length;d++){var C=I[d-1],D=I[d];if(h[C][fw]!==h[D][fw]){T=!1;break}M=h[C][fw]}if(T&&M){for(var f in h)h[f][fw]&&delete h[f][fw];e[fw]=M}if(B(I,(function(t){return G(h[t]).length>0})).length)return mw(h,n)+" "+r[0]+" both"}for(var y in l){(s=g(l[y]))&&a.push(s)}if(a.length){var v=n.zrId+"-cls-"+pw();n.cssNodes["."+v]={animation:a.join(",")},e.class=v}}function bw(t,e,n,i){var r=JSON.stringify(t),o=n.cssStyleCache[r];o||(o=n.zrId+"-cls-"+pw(),n.cssStyleCache[r]=o,n.cssNodes["."+o+(i?":hover":"")]=t),e.class=e.class?e.class+" "+o:o}var ww=Math.round;function Sw(t){return t&&U(t.src)}function Mw(t){return t&&X(t.toDataURL)}function Iw(t,e,n,i){nw((function(r,o){var a="fill"===r||"stroke"===r;a&&_i(o)?Ew(e,t,r,i):a&&vi(o)?zw(n,t,r,i):t[r]=a&&"none"===o?"transparent":o}),e,n,!1),function(t,e,n){var i=t.style;if(function(t){return t&&(t.shadowBlur||t.shadowOffsetX||t.shadowOffsetY)}(i)){var r=function(t){var e=t.style,n=t.getGlobalScale();return[e.shadowColor,(e.shadowBlur||0).toFixed(2),(e.shadowOffsetX||0).toFixed(2),(e.shadowOffsetY||0).toFixed(2),n[0],n[1]].join(",")}(t),o=n.shadowCache,a=o[r];if(!a){var s=t.getGlobalScale(),l=s[0],u=s[1];if(!l||!u)return;var h=i.shadowOffsetX||0,c=i.shadowOffsetY||0,p=i.shadowBlur,d=hi(i.shadowColor),f=d.opacity,g=d.color,y=p/2/l+" "+p/2/u;a=n.zrId+"-s"+n.shadowIdx++,n.defs[a]=sw("filter",a,{id:a,x:"-100%",y:"-100%",width:"300%",height:"300%"},[sw("feDropShadow","",{dx:h/l,dy:c/u,stdDeviation:y,"flood-color":g,"flood-opacity":f})]),o[r]=a}e.filter=bi(a)}}(n,t,i)}function Tw(t,e){var n=Ur(e);n&&(n.each((function(e,n){null!=e&&(t[(ow+n).toLowerCase()]=e+"")})),e.isSilent()&&(t[ow+"silent"]="true"))}function Cw(t){return pi(t[0]-1)&&pi(t[1])&&pi(t[2])&&pi(t[3]-1)}function Dw(t,e,n){if(e&&(!function(t){return pi(t[4])&&pi(t[5])}(e)||!Cw(e))){var i=n?10:1e4;t.transform=Cw(e)?"translate("+ww(e[4]*i)/i+" "+ww(e[5]*i)/i+")":function(t){return"matrix("+di(t[0])+","+di(t[1])+","+di(t[2])+","+di(t[3])+","+fi(t[4])+","+fi(t[5])+")"}(e)}}function Aw(t,e,n){for(var i=t.points,r=[],o=0;o<i.length;o++)r.push(ww(i[o][0]*n)/n),r.push(ww(i[o][1]*n)/n);e.points=r.join(" ")}function kw(t){return!t.smooth}var Lw,Pw,Ow={circle:[(Lw=["cx","cy","r"],Pw=z(Lw,(function(t){return"string"==typeof t?[t,t]:t})),function(t,e,n){for(var i=0;i<Pw.length;i++){var r=Pw[i],o=t[r[0]];null!=o&&(e[r[1]]=ww(o*n)/n)}})],polyline:[Aw,kw],polygon:[Aw,kw]};function Rw(t,e){var n=t.style,i=t.shape,r=Ow[t.type],o={},a=e.animation,s="path",l=t.style.strokePercent,u=e.compress&&wi(t)||4;if(!r||e.willUpdate||r[1]&&!r[1](i)||a&&function(t){for(var e=t.animators,n=0;n<e.length;n++)if("shape"===e[n].targetName)return!0;return!1}(t)||l<1){var h=!t.path||t.shapeChanged();t.path||t.createPathProxy();var c=t.path;h&&(c.beginPath(),t.buildPath(c,t.shape),t.pathUpdated());var p=c.getVersion(),d=t,f=d.__svgPathBuilder;d.__svgPathVersion===p&&f&&l===d.__svgPathStrokePercent||(f||(f=d.__svgPathBuilder=new $b),f.reset(u),c.rebuildPath(f,l),f.generateStr(),d.__svgPathVersion=p,d.__svgPathStrokePercent=l),o.d=f.getStr()}else{s=t.type;var g=Math.pow(10,u);r[0](i,o,g)}return Dw(o,t.transform),Iw(o,n,t,e),Tw(o,t),e.animation&&_w(t,o,e),e.emphasis&&function(t,e,n){if(!t.ignore)if(t.isSilent())bw(u={"pointer-events":"none"},e,n,!0);else{var i=t.states.emphasis&&t.states.emphasis.style?t.states.emphasis.style:{},r=i.fill;if(!r){var o=t.style&&t.style.fill,a=t.states.select&&t.states.select.style&&t.states.select.style.fill,s=t.currentStates.indexOf("select")>=0&&a||o;s&&(r=si(s))}var l=i.lineWidth;l&&(l/=!i.strokeNoScale&&t.transform?t.transform[0]:1);var u={cursor:"pointer"};r&&(u.fill=r),i.stroke&&(u.stroke=i.stroke),l&&(u["stroke-width"]=l),bw(u,e,n,!0)}}(t,o,e),sw(s,t.id+"",o)}function Nw(t,e){return t instanceof ks?Rw(t,e):t instanceof Ns?function(t,e){var n=t.style,i=n.image;if(i&&!U(i)&&(Sw(i)?i=i.src:Mw(i)&&(i=i.toDataURL())),i){var r=n.x||0,o=n.y||0,a={href:i,width:n.width,height:n.height};return r&&(a.x=r),o&&(a.y=o),Dw(a,t.transform),Iw(a,n,t,e),Tw(a,t),e.animation&&_w(t,a,e),sw("image",t.id+"",a)}}(t,e):t instanceof Ps?function(t,e){var n=t.style,i=n.text;if(null!=i&&(i+=""),i&&!isNaN(n.x)&&!isNaN(n.y)){var r=n.font||a,s=n.x||0,l=function(t,e,n){return"top"===n?t+=e/2:"bottom"===n&&(t-=e/2),t}(n.y||0,Tr(r),n.textBaseline),u={"dominant-baseline":"central","text-anchor":gi[n.textAlign]||n.textAlign};if($s(n)){var h="",c=n.fontStyle,p=qs(n.fontSize);if(!parseFloat(p))return;var d=n.fontFamily||o,f=n.fontWeight;h+="font-size:"+p+";font-family:"+d+";",c&&"normal"!==c&&(h+="font-style:"+c+";"),f&&"normal"!==f&&(h+="font-weight:"+f+";"),u.style=h}else u.style="font: "+r;return i.match(/\s/)&&(u["xml:space"]="preserve"),s&&(u.x=s),l&&(u.y=l),Dw(u,t.transform),Iw(u,n,t,e),Tw(u,t),e.animation&&_w(t,u,e),sw("text",t.id+"",u,void 0,i)}}(t,e):void 0}function Ew(t,e,n,i){var r,o=t[n],a={gradientUnits:o.global?"userSpaceOnUse":"objectBoundingBox"};if(mi(o))r="linearGradient",a.x1=o.x,a.y1=o.y,a.x2=o.x2,a.y2=o.y2;else{if(!xi(o))return void 0;r="radialGradient",a.cx=rt(o.x,.5),a.cy=rt(o.y,.5),a.r=rt(o.r,.5)}for(var s=o.colorStops,l=[],u=0,h=s.length;u<h;++u){var c=100*fi(s[u].offset)+"%",p=hi(s[u].color),d=p.color,f=p.opacity,g={offset:c};g["stop-color"]=d,f<1&&(g["stop-opacity"]=f),l.push(sw("stop",u+"",g))}var y=lw(sw(r,"",a,l)),v=i.gradientCache,m=v[y];m||(m=i.zrId+"-g"+i.gradientIdx++,v[y]=m,a.id=m,i.defs[m]=sw(r,m,a,l)),e[n]=bi(m)}function zw(t,e,n,i){var r,o=t.style[n],a=t.getBoundingRect(),s={},l=o.repeat,u="no-repeat"===l,h="repeat-x"===l,c="repeat-y"===l;if(yi(o)){var p=o.imageWidth,d=o.imageHeight,f=void 0,g=o.image;if(U(g)?f=g:Sw(g)?f=g.src:Mw(g)&&(f=g.toDataURL()),"undefined"==typeof Image){var y="Image width/height must been given explictly in svg-ssr renderer.";lt(p,y),lt(d,y)}else if(null==p||null==d){var v=function(t,e){if(t){var n=t.elm,i=p||e.width,r=d||e.height;"pattern"===t.tag&&(h?(r=1,i/=a.width):c&&(i=1,r/=a.height)),t.attrs.width=i,t.attrs.height=r,n&&(n.setAttribute("width",i),n.setAttribute("height",r))}},m=la(f,null,t,(function(t){u||v(w,t),v(r,t)}));m&&m.width&&m.height&&(p=p||m.width,d=d||m.height)}r=sw("image","img",{href:f,width:p,height:d}),s.width=p,s.height=d}else o.svgElement&&(r=T(o.svgElement),s.width=o.svgWidth,s.height=o.svgHeight);if(r){var x,_;u?x=_=1:h?(_=1,x=s.width/a.width):c?(x=1,_=s.height/a.height):s.patternUnits="userSpaceOnUse",null==x||isNaN(x)||(s.width=x),null==_||isNaN(_)||(s.height=_);var b=Si(o);b&&(s.patternTransform=b);var w=sw("pattern","",s,[r]),S=lw(w),M=i.patternCache,I=M[S];I||(I=i.zrId+"-p"+i.patternIdx++,M[S]=I,s.id=I,w=i.defs[I]=sw("pattern",I,s,[r])),e[n]=bi(I)}}function Vw(t,e,n){var i=n.clipPathCache,r=n.defs,o=i[t.id];if(!o){var a={id:o=n.zrId+"-c"+n.clipPathIdx++};i[t.id]=o,r[o]=sw("clipPath",o,a,[Rw(t,n)])}e["clip-path"]=bi(o)}function Bw(t){return document.createTextNode(t)}function Fw(t,e,n){t.insertBefore(e,n)}function Gw(t,e){t.removeChild(e)}function Ww(t,e){t.appendChild(e)}function Hw(t){return t.parentNode}function Yw(t){return t.nextSibling}function Xw(t,e){t.textContent=e}var Uw=sw("","");function Zw(t){return void 0===t}function jw(t){return void 0!==t}function qw(t,e,n){for(var i={},r=e;r<=n;++r){var o=t[r].key;void 0!==o&&(i[o]=r)}return i}function Kw(t,e){var n=t.key===e.key;return t.tag===e.tag&&n}function $w(t){var e,n=t.children,i=t.tag;if(jw(i)){var r=t.elm=aw(i);if(tS(Uw,t),Y(n))for(e=0;e<n.length;++e){var o=n[e];null!=o&&Ww(r,$w(o))}else jw(t.text)&&!q(t.text)&&Ww(r,Bw(t.text))}else t.elm=Bw(t.text);return t.elm}function Jw(t,e,n,i,r){for(;i<=r;++i){var o=n[i];null!=o&&Fw(t,$w(o),e)}}function Qw(t,e,n,i){for(;n<=i;++n){var r=e[n];if(null!=r)if(jw(r.tag))Gw(Hw(r.elm),r.elm);else Gw(t,r.elm)}}function tS(t,e){var n,i=e.elm,r=t&&t.attrs||{},o=e.attrs||{};if(r!==o){for(n in o){var a=o[n];r[n]!==a&&(!0===a?i.setAttribute(n,""):!1===a?i.removeAttribute(n):"style"===n?i.style.cssText=a:120!==n.charCodeAt(0)?i.setAttribute(n,a):"xmlns:xlink"===n||"xmlns"===n?i.setAttributeNS("http://www.w3.org/2000/xmlns/",n,a):58===n.charCodeAt(3)?i.setAttributeNS("http://www.w3.org/XML/1998/namespace",n,a):58===n.charCodeAt(5)?i.setAttributeNS(rw,n,a):i.setAttribute(n,a))}for(n in r)n in o||i.removeAttribute(n)}}function eS(t,e){var n=e.elm=t.elm,i=t.children,r=e.children;t!==e&&(tS(t,e),Zw(e.text)?jw(i)&&jw(r)?i!==r&&function(t,e,n){for(var i,r,o,a=0,s=0,l=e.length-1,u=e[0],h=e[l],c=n.length-1,p=n[0],d=n[c];a<=l&&s<=c;)null==u?u=e[++a]:null==h?h=e[--l]:null==p?p=n[++s]:null==d?d=n[--c]:Kw(u,p)?(eS(u,p),u=e[++a],p=n[++s]):Kw(h,d)?(eS(h,d),h=e[--l],d=n[--c]):Kw(u,d)?(eS(u,d),Fw(t,u.elm,Yw(h.elm)),u=e[++a],d=n[--c]):Kw(h,p)?(eS(h,p),Fw(t,h.elm,u.elm),h=e[--l],p=n[++s]):(Zw(i)&&(i=qw(e,a,l)),Zw(r=i[p.key])||(o=e[r]).tag!==p.tag?Fw(t,$w(p),u.elm):(eS(o,p),e[r]=void 0,Fw(t,o.elm,u.elm)),p=n[++s]);(a<=l||s<=c)&&(a>l?Jw(t,null==n[c+1]?null:n[c+1].elm,n,s,c):Qw(t,e,a,l))}(n,i,r):jw(r)?(jw(t.text)&&Xw(n,""),Jw(n,null,r,0,r.length-1)):jw(i)?Qw(n,i,0,i.length-1):jw(t.text)&&Xw(n,""):t.text!==e.text&&(jw(i)&&Qw(n,i,0,i.length-1),Xw(n,e.text)))}var nS=0,iS=function(){function t(t,e,n){if(this.type="svg",this.refreshHover=rS("refreshHover"),this.configLayer=rS("configLayer"),this.storage=e,this._opts=n=A({},n),this.root=t,this._id="zr"+nS++,this._oldVNode=hw(n.width,n.height),t&&!n.ssr){var i=this._viewport=document.createElement("div");i.style.cssText="position:relative;overflow:hidden";var r=this._svgDom=this._oldVNode.elm=aw("svg");tS(null,this._oldVNode),i.appendChild(r),t.appendChild(i)}this.resize(n.width,n.height)}return t.prototype.getType=function(){return this.type},t.prototype.getViewportRoot=function(){return this._viewport},t.prototype.getViewportRootOffset=function(){var t=this.getViewportRoot();if(t)return{offsetLeft:t.offsetLeft||0,offsetTop:t.offsetTop||0}},t.prototype.getSvgDom=function(){return this._svgDom},t.prototype.refresh=function(){if(this.root){var t=this.renderToVNode({willUpdate:!0});t.attrs.style="position:absolute;left:0;top:0;user-select:none",function(t,e){if(Kw(t,e))eS(t,e);else{var n=t.elm,i=Hw(n);$w(e),null!==i&&(Fw(i,e.elm,Yw(n)),Qw(i,[t],0,0))}}(this._oldVNode,t),this._oldVNode=t}},t.prototype.renderOneToVNode=function(t){return Nw(t,uw(this._id))},t.prototype.renderToVNode=function(t){t=t||{};var e=this.storage.getDisplayList(!0),n=this._width,i=this._height,r=uw(this._id);r.animation=t.animation,r.willUpdate=t.willUpdate,r.compress=t.compress,r.emphasis=t.emphasis;var o=[],a=this._bgVNode=function(t,e,n,i){var r;if(n&&"none"!==n)if(r=sw("rect","bg",{width:t,height:e,x:"0",y:"0"}),_i(n))Ew({fill:n},r.attrs,"fill",i);else if(vi(n))zw({style:{fill:n},dirty:bt,getBoundingRect:function(){return{width:t,height:e}}},r.attrs,"fill",i);else{var o=hi(n),a=o.color,s=o.opacity;r.attrs.fill=a,s<1&&(r.attrs["fill-opacity"]=s)}return r}(n,i,this._backgroundColor,r);a&&o.push(a);var s=t.compress?null:this._mainVNode=sw("g","main",{},[]);this._paintList(e,r,s?s.children:o),s&&o.push(s);var l=z(G(r.defs),(function(t){return r.defs[t]}));if(l.length&&o.push(sw("defs","defs",{},l)),t.animation){var u=function(t,e,n){var i=(n=n||{}).newline?"\n":"",r=" {"+i,o=i+"}",a=z(G(t),(function(e){return e+r+z(G(t[e]),(function(n){return n+":"+t[e][n]+";"})).join(i)+o})).join(i),s=z(G(e),(function(t){return"@keyframes "+t+r+z(G(e[t]),(function(n){return n+r+z(G(e[t][n]),(function(i){var r=e[t][n][i];return"d"===i&&(r='path("'+r+'")'),i+":"+r+";"})).join(i)+o})).join(i)+o})).join(i);return a||s?["<![CDATA[",a,s,"]]>"].join(i):""}(r.cssNodes,r.cssAnims,{newline:!0});if(u){var h=sw("style","stl",{},[],u);o.push(h)}}return hw(n,i,o,t.useViewBox)},t.prototype.renderToString=function(t){return t=t||{},lw(this.renderToVNode({animation:rt(t.cssAnimation,!0),emphasis:rt(t.cssEmphasis,!0),willUpdate:!1,compress:!0,useViewBox:rt(t.useViewBox,!0)}),{newline:!0})},t.prototype.setBackgroundColor=function(t){this._backgroundColor=t},t.prototype.getSvgRoot=function(){return this._mainVNode&&this._mainVNode.elm},t.prototype._paintList=function(t,e,n){for(var i,r,o=t.length,a=[],s=0,l=0,u=0;u<o;u++){var h=t[u];if(!h.invisible){var c=h.__clipPaths,p=c&&c.length||0,d=r&&r.length||0,f=void 0;for(f=Math.max(p-1,d-1);f>=0&&(!c||!r||c[f]!==r[f]);f--);for(var g=d-1;g>f;g--)i=a[--s-1];for(var y=f+1;y<p;y++){var v={};Vw(c[y],v,e);var m=sw("g","clip-g-"+l++,v,[]);(i?i.children:n).push(m),a[s++]=m,i=m}r=c;var x=Nw(h,e);x&&(i?i.children:n).push(x)}}},t.prototype.resize=function(t,e){var n=this._opts,i=this.root,r=this._viewport;if(null!=t&&(n.width=t),null!=e&&(n.height=e),i&&r&&(r.style.display="none",t=$y(i,0,n),e=$y(i,1,n),r.style.display=""),this._width!==t||this._height!==e){if(this._width=t,this._height=e,r){var o=r.style;o.width=t+"px",o.height=e+"px"}if(vi(this._backgroundColor))this.refresh();else{var a=this._svgDom;a&&(a.setAttribute("width",t),a.setAttribute("height",e));var s=this._bgVNode&&this._bgVNode.elm;s&&(s.setAttribute("width",t),s.setAttribute("height",e))}}},t.prototype.getWidth=function(){return this._width},t.prototype.getHeight=function(){return this._height},t.prototype.dispose=function(){this.root&&(this.root.innerHTML=""),this._svgDom=this._viewport=this.storage=this._oldVNode=this._bgVNode=this._mainVNode=null},t.prototype.clear=function(){this._svgDom&&(this._svgDom.innerHTML=null),this._oldVNode=null},t.prototype.toDataURL=function(t){var e=this.renderToString(),n="data:image/svg+xml;";return t?(e=Mi(e))&&n+"base64,"+e:n+"charset=UTF-8,"+encodeURIComponent(e)},t}();function rS(t){return function(){0}}function oS(t,e,n){var i=h.createCanvas(),r=e.getWidth(),o=e.getHeight(),a=i.style;return a&&(a.position="absolute",a.left="0",a.top="0",a.width=r+"px",a.height=o+"px",i.setAttribute("data-zr-dom-id",t)),i.width=r*n,i.height=o*n,i}var aS=function(t){function e(e,n,i){var r,o=t.call(this)||this;o.motionBlur=!1,o.lastFrameAlpha=.7,o.dpr=1,o.virtual=!1,o.config={},o.incremental=!1,o.zlevel=0,o.maxRepaintRectCount=5,o.__dirty=!0,o.__firstTimePaint=!0,o.__used=!1,o.__drawIndex=0,o.__startIndex=0,o.__endIndex=0,o.__prevStartIndex=null,o.__prevEndIndex=null,i=i||sr,"string"==typeof e?r=oS(e,n,i):q(e)&&(e=(r=e).id),o.id=e,o.dom=r;var a=r.style;return a&&(xt(r),r.onselectstart=function(){return!1},a.padding="0",a.margin="0",a.borderWidth="0"),o.painter=n,o.dpr=i,o}return n(e,t),e.prototype.getElementCount=function(){return this.__endIndex-this.__startIndex},e.prototype.afterBrush=function(){this.__prevStartIndex=this.__startIndex,this.__prevEndIndex=this.__endIndex},e.prototype.initContext=function(){this.ctx=this.dom.getContext("2d"),this.ctx.dpr=this.dpr},e.prototype.setUnpainted=function(){this.__firstTimePaint=!0},e.prototype.createBackBuffer=function(){var t=this.dpr;this.domBack=oS("back-"+this.id,this.painter,t),this.ctxBack=this.domBack.getContext("2d"),1!==t&&this.ctxBack.scale(t,t)},e.prototype.createRepaintRects=function(t,e,n,i){if(this.__firstTimePaint)return this.__firstTimePaint=!1,null;var r,o=[],a=this.maxRepaintRectCount,s=!1,l=new ze(0,0,0,0);function u(t){if(t.isFinite()&&!t.isZero())if(0===o.length){(e=new ze(0,0,0,0)).copy(t),o.push(e)}else{for(var e,n=!1,i=1/0,r=0,u=0;u<o.length;++u){var h=o[u];if(h.intersect(t)){var c=new ze(0,0,0,0);c.copy(h),c.union(t),o[u]=c,n=!0;break}if(s){l.copy(t),l.union(h);var p=t.width*t.height,d=h.width*h.height,f=l.width*l.height-p-d;f<i&&(i=f,r=u)}}if(s&&(o[r].union(t),n=!0),!n)(e=new ze(0,0,0,0)).copy(t),o.push(e);s||(s=o.length>=a)}}for(var h=this.__startIndex;h<this.__endIndex;++h){if(d=t[h]){var c=d.shouldBePainted(n,i,!0,!0);(f=d.__isRendered&&(1&d.__dirty||!c)?d.getPrevPaintRect():null)&&u(f);var p=c&&(1&d.__dirty||!d.__isRendered)?d.getPaintRect():null;p&&u(p)}}for(h=this.__prevStartIndex;h<this.__prevEndIndex;++h){var d,f;c=(d=e[h])&&d.shouldBePainted(n,i,!0,!0);if(d&&(!c||!d.__zr)&&d.__isRendered)(f=d.getPrevPaintRect())&&u(f)}do{r=!1;for(h=0;h<o.length;)if(o[h].isZero())o.splice(h,1);else{for(var g=h+1;g<o.length;)o[h].intersect(o[g])?(r=!0,o[h].union(o[g]),o.splice(g,1)):g++;h++}}while(r);return this._paintRects=o,o},e.prototype.debugGetPaintRects=function(){return(this._paintRects||[]).slice()},e.prototype.resize=function(t,e){var n=this.dpr,i=this.dom,r=i.style,o=this.domBack;r&&(r.width=t+"px",r.height=e+"px"),i.width=t*n,i.height=e*n,o&&(o.width=t*n,o.height=e*n,1!==n&&this.ctxBack.scale(n,n))},e.prototype.clear=function(t,e,n){var i=this.dom,r=this.ctx,o=i.width,a=i.height;e=e||this.clearColor;var s=this.motionBlur&&!t,l=this.lastFrameAlpha,u=this.dpr,h=this;s&&(this.domBack||this.createBackBuffer(),this.ctxBack.globalCompositeOperation="copy",this.ctxBack.drawImage(i,0,0,o/u,a/u));var c=this.domBack;function p(t,n,i,o){if(r.clearRect(t,n,i,o),e&&"transparent"!==e){var a=void 0;if(Q(e))a=(e.global||e.__width===i&&e.__height===o)&&e.__canvasGradient||qy(r,e,{x:0,y:0,width:i,height:o}),e.__canvasGradient=a,e.__width=i,e.__height=o;else tt(e)&&(e.scaleX=e.scaleX||u,e.scaleY=e.scaleY||u,a=ov(r,e,{dirty:function(){h.setUnpainted(),h.painter.refresh()}}));r.save(),r.fillStyle=a||e,r.fillRect(t,n,i,o),r.restore()}s&&(r.save(),r.globalAlpha=l,r.drawImage(c,t,n,i,o),r.restore())}!n||s?p(0,0,o,a):n.length&&E(n,(function(t){p(t.x*u,t.y*u,t.width*u,t.height*u)}))},e}(jt),sS=1e5,lS=314159,uS=.01;var hS=function(){function t(t,e,n,i){this.type="canvas",this._zlevelList=[],this._prevDisplayList=[],this._layers={},this._layerConfig={},this._needsManuallyCompositing=!1,this.type="canvas";var r=!t.nodeName||"CANVAS"===t.nodeName.toUpperCase();this._opts=n=A({},n||{}),this.dpr=n.devicePixelRatio||sr,this._singleCanvas=r,this.root=t,t.style&&(xt(t),t.innerHTML=""),this.storage=e;var o=this._zlevelList;this._prevDisplayList=[];var a=this._layers;if(r){var s=t,l=s.width,u=s.height;null!=n.width&&(l=n.width),null!=n.height&&(u=n.height),this.dpr=n.devicePixelRatio||1,s.width=l*this.dpr,s.height=u*this.dpr,this._width=l,this._height=u;var h=new aS(s,this,this.dpr);h.__builtin__=!0,h.initContext(),a[314159]=h,h.zlevel=lS,o.push(lS),this._domRoot=t}else{this._width=$y(t,0,n),this._height=$y(t,1,n);var c=this._domRoot=function(t,e){var n=document.createElement("div");return n.style.cssText=["position:relative","width:"+t+"px","height:"+e+"px","padding:0","margin:0","border-width:0"].join(";")+";",n}(this._width,this._height);t.appendChild(c)}}return t.prototype.getType=function(){return"canvas"},t.prototype.isSingleCanvas=function(){return this._singleCanvas},t.prototype.getViewportRoot=function(){return this._domRoot},t.prototype.getViewportRootOffset=function(){var t=this.getViewportRoot();if(t)return{offsetLeft:t.offsetLeft||0,offsetTop:t.offsetTop||0}},t.prototype.refresh=function(t){var e=this.storage.getDisplayList(!0),n=this._prevDisplayList,i=this._zlevelList;this._redrawId=Math.random(),this._paintList(e,n,t,this._redrawId);for(var r=0;r<i.length;r++){var o=i[r],a=this._layers[o];if(!a.__builtin__&&a.refresh){var s=0===r?this._backgroundColor:null;a.refresh(s)}}return this._opts.useDirtyRect&&(this._prevDisplayList=e.slice()),this},t.prototype.refreshHover=function(){this._paintHoverList(this.storage.getDisplayList(!1))},t.prototype._paintHoverList=function(t){var e=t.length,n=this._hoverlayer;if(n&&n.clear(),e){for(var i,r={inHover:!0,viewWidth:this._width,viewHeight:this._height},o=0;o<e;o++){var a=t[o];a.__inHover&&(n||(n=this._hoverlayer=this.getLayer(sS)),i||(i=n.ctx).save(),fv(i,a,r,o===e-1))}i&&i.restore()}},t.prototype.getHoverLayer=function(){return this.getLayer(sS)},t.prototype.paintOne=function(t,e){dv(t,e)},t.prototype._paintList=function(t,e,n,i){if(this._redrawId===i){n=n||!1,this._updateLayerStatus(t);var r=this._doPaintList(t,e,n),o=r.finished,a=r.needsRefreshHover;if(this._needsManuallyCompositing&&this._compositeManually(),a&&this._paintHoverList(t),o)this.eachLayer((function(t){t.afterBrush&&t.afterBrush()}));else{var s=this;on((function(){s._paintList(t,e,n,i)}))}}},t.prototype._compositeManually=function(){var t=this.getLayer(lS).ctx,e=this._domRoot.width,n=this._domRoot.height;t.clearRect(0,0,e,n),this.eachBuiltinLayer((function(i){i.virtual&&t.drawImage(i.dom,0,0,e,n)}))},t.prototype._doPaintList=function(t,e,n){for(var i=this,o=[],a=this._opts.useDirtyRect,s=0;s<this._zlevelList.length;s++){var l=this._zlevelList[s],u=this._layers[l];u.__builtin__&&u!==this._hoverlayer&&(u.__dirty||n)&&o.push(u)}for(var h=!0,c=!1,p=function(r){var s,l=o[r],u=l.ctx,p=a&&l.createRepaintRects(t,e,d._width,d._height),f=n?l.__startIndex:l.__drawIndex,g=!n&&l.incremental&&Date.now,y=g&&Date.now(),v=l.zlevel===d._zlevelList[0]?d._backgroundColor:null;if(l.__startIndex===l.__endIndex)l.clear(!1,v,p);else if(f===l.__startIndex){var m=t[f];m.incremental&&m.notClear&&!n||l.clear(!1,v,p)}-1===f&&(console.error("For some unknown reason. drawIndex is -1"),f=l.__startIndex);var x=function(e){var n={inHover:!1,allClipped:!1,prevEl:null,viewWidth:i._width,viewHeight:i._height};for(s=f;s<l.__endIndex;s++){var r=t[s];if(r.__inHover&&(c=!0),i._doPaintEl(r,l,a,e,n,s===l.__endIndex-1),g)if(Date.now()-y>15)break}n.prevElClipPaths&&u.restore()};if(p)if(0===p.length)s=l.__endIndex;else for(var _=d.dpr,b=0;b<p.length;++b){var w=p[b];u.save(),u.beginPath(),u.rect(w.x*_,w.y*_,w.width*_,w.height*_),u.clip(),x(w),u.restore()}else u.save(),x(),u.restore();l.__drawIndex=s,l.__drawIndex<l.__endIndex&&(h=!1)},d=this,f=0;f<o.length;f++)p(f);return r.wxa&&E(this._layers,(function(t){t&&t.ctx&&t.ctx.draw&&t.ctx.draw()})),{finished:h,needsRefreshHover:c}},t.prototype._doPaintEl=function(t,e,n,i,r,o){var a=e.ctx;if(n){var s=t.getPaintRect();(!i||s&&s.intersect(i))&&(fv(a,t,r,o),t.setPrevPaintRect(s))}else fv(a,t,r,o)},t.prototype.getLayer=function(t,e){this._singleCanvas&&!this._needsManuallyCompositing&&(t=lS);var n=this._layers[t];return n||((n=new aS("zr_"+t,this,this.dpr)).zlevel=t,n.__builtin__=!0,this._layerConfig[t]?C(n,this._layerConfig[t],!0):this._layerConfig[t-uS]&&C(n,this._layerConfig[t-uS],!0),e&&(n.virtual=e),this.insertLayer(t,n),n.initContext()),n},t.prototype.insertLayer=function(t,e){var n=this._layers,i=this._zlevelList,r=i.length,o=this._domRoot,a=null,s=-1;if(!n[t]&&function(t){return!!t&&(!!t.__builtin__||"function"==typeof t.resize&&"function"==typeof t.refresh)}(e)){if(r>0&&t>i[0]){for(s=0;s<r-1&&!(i[s]<t&&i[s+1]>t);s++);a=n[i[s]]}if(i.splice(s+1,0,t),n[t]=e,!e.virtual)if(a){var l=a.dom;l.nextSibling?o.insertBefore(e.dom,l.nextSibling):o.appendChild(e.dom)}else o.firstChild?o.insertBefore(e.dom,o.firstChild):o.appendChild(e.dom);e.painter||(e.painter=this)}},t.prototype.eachLayer=function(t,e){for(var n=this._zlevelList,i=0;i<n.length;i++){var r=n[i];t.call(e,this._layers[r],r)}},t.prototype.eachBuiltinLayer=function(t,e){for(var n=this._zlevelList,i=0;i<n.length;i++){var r=n[i],o=this._layers[r];o.__builtin__&&t.call(e,o,r)}},t.prototype.eachOtherLayer=function(t,e){for(var n=this._zlevelList,i=0;i<n.length;i++){var r=n[i],o=this._layers[r];o.__builtin__||t.call(e,o,r)}},t.prototype.getLayers=function(){return this._layers},t.prototype._updateLayerStatus=function(t){function e(t){o&&(o.__endIndex!==t&&(o.__dirty=!0),o.__endIndex=t)}if(this.eachBuiltinLayer((function(t,e){t.__dirty=t.__used=!1})),this._singleCanvas)for(var n=1;n<t.length;n++){if((s=t[n]).zlevel!==t[n-1].zlevel||s.incremental){this._needsManuallyCompositing=!0;break}}var i,r,o=null,a=0;for(r=0;r<t.length;r++){var s,l=(s=t[r]).zlevel,u=void 0;i!==l&&(i=l,a=0),s.incremental?((u=this.getLayer(l+.001,this._needsManuallyCompositing)).incremental=!0,a=1):u=this.getLayer(l+(a>0?uS:0),this._needsManuallyCompositing),u.__builtin__||I("ZLevel "+l+" has been used by unkown layer "+u.id),u!==o&&(u.__used=!0,u.__startIndex!==r&&(u.__dirty=!0),u.__startIndex=r,u.incremental?u.__drawIndex=-1:u.__drawIndex=r,e(r),o=u),1&s.__dirty&&!s.__inHover&&(u.__dirty=!0,u.incremental&&u.__drawIndex<0&&(u.__drawIndex=r))}e(r),this.eachBuiltinLayer((function(t,e){!t.__used&&t.getElementCount()>0&&(t.__dirty=!0,t.__startIndex=t.__endIndex=t.__drawIndex=0),t.__dirty&&t.__drawIndex<0&&(t.__drawIndex=t.__startIndex)}))},t.prototype.clear=function(){return this.eachBuiltinLayer(this._clearLayer),this},t.prototype._clearLayer=function(t){t.clear()},t.prototype.setBackgroundColor=function(t){this._backgroundColor=t,E(this._layers,(function(t){t.setUnpainted()}))},t.prototype.configLayer=function(t,e){if(e){var n=this._layerConfig;n[t]?C(n[t],e,!0):n[t]=e;for(var i=0;i<this._zlevelList.length;i++){var r=this._zlevelList[i];if(r===t||r===t+uS)C(this._layers[r],n[t],!0)}}},t.prototype.delLayer=function(t){var e=this._layers,n=this._zlevelList,i=e[t];i&&(i.dom.parentNode.removeChild(i.dom),delete e[t],n.splice(P(n,t),1))},t.prototype.resize=function(t,e){if(this._domRoot.style){var n=this._domRoot;n.style.display="none";var i=this._opts,r=this.root;if(null!=t&&(i.width=t),null!=e&&(i.height=e),t=$y(r,0,i),e=$y(r,1,i),n.style.display="",this._width!==t||e!==this._height){for(var o in n.style.width=t+"px",n.style.height=e+"px",this._layers)this._layers.hasOwnProperty(o)&&this._layers[o].resize(t,e);this.refresh(!0)}this._width=t,this._height=e}else{if(null==t||null==e)return;this._width=t,this._height=e,this.getLayer(lS).resize(t,e)}return this},t.prototype.clearLayer=function(t){var e=this._layers[t];e&&e.clear()},t.prototype.dispose=function(){this.root.innerHTML="",this.root=this.storage=this._domRoot=this._layers=null},t.prototype.getRenderedCanvas=function(t){if(t=t||{},this._singleCanvas&&!this._compositeManually)return this._layers[314159].dom;var e=new aS("image",this,t.pixelRatio||this.dpr);e.initContext(),e.clear(!1,t.backgroundColor||this._backgroundColor);var n=e.ctx;if(t.pixelRatio<=this.dpr){this.refresh();var i=e.dom.width,r=e.dom.height;this.eachLayer((function(t){t.__builtin__?n.drawImage(t.dom,0,0,i,r):t.renderToCanvas&&(n.save(),t.renderToCanvas(n),n.restore())}))}else for(var o={inHover:!1,viewWidth:this._width,viewHeight:this._height},a=this.storage.getDisplayList(!0),s=0,l=a.length;s<l;s++){var u=a[s];fv(n,u,o,s===l-1)}return e.dom},t.prototype.getWidth=function(){return this._width},t.prototype.getHeight=function(){return this._height},t}();var cS=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.hasSymbolVisual=!0,n}return n(e,t),e.prototype.getInitialData=function(t){return _x(null,this,{useEncodeDefaulter:!0})},e.prototype.getLegendIcon=function(t){var e=new Br,n=Xy("line",0,t.itemHeight/2,t.itemWidth,0,t.lineStyle.stroke,!1);e.add(n),n.setStyle(t.lineStyle);var i=this.getData().getVisual("symbol"),r=this.getData().getVisual("symbolRotate"),o="none"===i?"circle":i,a=.8*t.itemHeight,s=Xy(o,(t.itemWidth-a)/2,(t.itemHeight-a)/2,a,a,t.itemStyle.fill);e.add(s),s.setStyle(t.itemStyle);var l="inherit"===t.iconRotate?r:t.iconRotate||0;return s.rotation=l*Math.PI/180,s.setOrigin([t.itemWidth/2,t.itemHeight/2]),o.indexOf("empty")>-1&&(s.style.stroke=s.style.fill,s.style.fill="#fff",s.style.lineWidth=2),e},e.type="series.line",e.dependencies=["grid","polar"],e.defaultOption={z:3,coordinateSystem:"cartesian2d",legendHoverLink:!0,clip:!0,label:{position:"top"},endLabel:{show:!1,valueAnimation:!0,distance:8},lineStyle:{width:2,type:"solid"},emphasis:{scale:!0},step:!1,smooth:!1,smoothMonotone:null,symbol:"emptyCircle",symbolSize:4,symbolRotate:null,showSymbol:!0,showAllSymbol:"auto",connectNulls:!1,sampling:"none",animationEasing:"linear",progressive:0,hoverLayerThreshold:1/0,universalTransition:{divideShape:"clone"},triggerLineEvent:!1},e}(bg);function pS(t,e){var n=t.mapDimensionsAll("defaultedLabel"),i=n.length;if(1===i){var r=mf(t,e,n[0]);return null!=r?r+"":null}if(i){for(var o=[],a=0;a<n.length;a++)o.push(mf(t,e,n[a]));return o.join(" ")}}function dS(t,e){var n=t.mapDimensionsAll("defaultedLabel");if(!Y(e))return e+"";for(var i=[],r=0;r<n.length;r++){var o=t.getDimensionIndex(n[r]);o>=0&&i.push(e[o])}return i.join(" ")}var fS=function(t){function e(e,n,i,r){var o=t.call(this)||this;return o.updateData(e,n,i,r),o}return n(e,t),e.prototype._createSymbol=function(t,e,n,i,r){this.removeAll();var o=Xy(t,-1,-1,2,2,null,r);o.attr({z2:100,culling:!0,scaleX:i[0]/2,scaleY:i[1]/2}),o.drift=gS,this._symbolType=t,this.add(o)},e.prototype.stopSymbolAnimation=function(t){this.childAt(0).stopAnimation(null,t)},e.prototype.getSymbolType=function(){return this._symbolType},e.prototype.getSymbolPath=function(){return this.childAt(0)},e.prototype.highlight=function(){Ol(this.childAt(0))},e.prototype.downplay=function(){Rl(this.childAt(0))},e.prototype.setZ=function(t,e){var n=this.childAt(0);n.zlevel=t,n.z=e},e.prototype.setDraggable=function(t,e){var n=this.childAt(0);n.draggable=t,n.cursor=!e&&t?"move":n.cursor},e.prototype.updateData=function(t,n,i,r){this.silent=!1;var o=t.getItemVisual(n,"symbol")||"circle",a=t.hostModel,s=e.getSymbolSize(t,n),l=o!==this._symbolType,u=r&&r.disableAnimation;if(l){var h=t.getItemVisual(n,"symbolKeepAspect");this._createSymbol(o,t,n,s,h)}else{(p=this.childAt(0)).silent=!1;var c={scaleX:s[0]/2,scaleY:s[1]/2};u?p.attr(c):vh(p,c,a,n),Sh(p)}if(this._updateCommon(t,n,s,i,r),l){var p=this.childAt(0);if(!u){c={scaleX:this._sizeX,scaleY:this._sizeY,style:{opacity:p.style.opacity}};p.scaleX=p.scaleY=0,p.style.opacity=0,mh(p,c,a,n)}}u&&this.childAt(0).stopAnimation("leave")},e.prototype._updateCommon=function(t,e,n,i,r){var o,a,s,l,u,h,c,p,d,f=this.childAt(0),g=t.hostModel;if(i&&(o=i.emphasisItemStyle,a=i.blurItemStyle,s=i.selectItemStyle,l=i.focus,u=i.blurScope,c=i.labelStatesModels,p=i.hoverScale,d=i.cursorStyle,h=i.emphasisDisabled),!i||t.hasItemOption){var y=i&&i.itemModel?i.itemModel:t.getItemModel(e),v=y.getModel("emphasis");o=v.getModel("itemStyle").getItemStyle(),s=y.getModel(["select","itemStyle"]).getItemStyle(),a=y.getModel(["blur","itemStyle"]).getItemStyle(),l=v.get("focus"),u=v.get("blurScope"),h=v.get("disabled"),c=rc(y),p=v.getShallow("scale"),d=y.getShallow("cursor")}var m=t.getItemVisual(e,"symbolRotate");f.attr("rotation",(m||0)*Math.PI/180||0);var x=Zy(t.getItemVisual(e,"symbolOffset"),n);x&&(f.x=x[0],f.y=x[1]),d&&f.attr("cursor",d);var _=t.getItemVisual(e,"style"),b=_.fill;if(f instanceof Ns){var w=f.style;f.useStyle(A({image:w.image,x:w.x,y:w.y,width:w.width,height:w.height},_))}else f.__isEmptyBrush?f.useStyle(A({},_)):f.useStyle(_),f.style.decal=null,f.setColor(b,r&&r.symbolInnerColor),f.style.strokeNoScale=!0;var S=t.getItemVisual(e,"liftZ"),M=this._z2;null!=S?null==M&&(this._z2=f.z2,f.z2+=S):null!=M&&(f.z2=M,this._z2=null);var I=r&&r.useNameLabel;ic(f,c,{labelFetcher:g,labelDataIndex:e,defaultText:function(e){return I?t.getName(e):pS(t,e)},inheritColor:b,defaultOpacity:_.opacity}),this._sizeX=n[0]/2,this._sizeY=n[1]/2;var T=f.ensureState("emphasis");T.style=o,f.ensureState("select").style=s,f.ensureState("blur").style=a;var C=null==p||!0===p?Math.max(1.1,3/this._sizeY):isFinite(p)&&p>0?+p:1;T.scaleX=this._sizeX*C,T.scaleY=this._sizeY*C,this.setSymbolScale(1),Zl(this,l,u,h)},e.prototype.setSymbolScale=function(t){this.scaleX=this.scaleY=t},e.prototype.fadeOut=function(t,e,n){var i=this.childAt(0),r=rl(this).dataIndex,o=n&&n.animation;if(this.silent=i.silent=!0,n&&n.fadeLabel){var a=i.getTextContent();a&&_h(a,{style:{opacity:0}},e,{dataIndex:r,removeOpt:o,cb:function(){i.removeTextContent()}})}else i.removeTextContent();_h(i,{style:{opacity:0},scaleX:0,scaleY:0},e,{dataIndex:r,cb:t,removeOpt:o})},e.getSymbolSize=function(t,e){return Uy(t.getItemVisual(e,"symbolSize"))},e}(Br);function gS(t,e){this.parent.drift(t,e)}function yS(t,e,n,i){return e&&!isNaN(e[0])&&!isNaN(e[1])&&!(i.isIgnore&&i.isIgnore(n))&&!(i.clipShape&&!i.clipShape.contain(e[0],e[1]))&&"none"!==t.getItemVisual(n,"symbol")}function vS(t){return null==t||q(t)||(t={isIgnore:t}),t||{}}function mS(t){var e=t.hostModel,n=e.getModel("emphasis");return{emphasisItemStyle:n.getModel("itemStyle").getItemStyle(),blurItemStyle:e.getModel(["blur","itemStyle"]).getItemStyle(),selectItemStyle:e.getModel(["select","itemStyle"]).getItemStyle(),focus:n.get("focus"),blurScope:n.get("blurScope"),emphasisDisabled:n.get("disabled"),hoverScale:n.get("scale"),labelStatesModels:rc(e),cursorStyle:e.get("cursor")}}var xS=function(){function t(t){this.group=new Br,this._SymbolCtor=t||fS}return t.prototype.updateData=function(t,e){this._progressiveEls=null,e=vS(e);var n=this.group,i=t.hostModel,r=this._data,o=this._SymbolCtor,a=e.disableAnimation,s=mS(t),l={disableAnimation:a},u=e.getSymbolPoint||function(e){return t.getItemLayout(e)};r||n.removeAll(),t.diff(r).add((function(i){var r=u(i);if(yS(t,r,i,e)){var a=new o(t,i,s,l);a.setPosition(r),t.setItemGraphicEl(i,a),n.add(a)}})).update((function(h,c){var p=r.getItemGraphicEl(c),d=u(h);if(yS(t,d,h,e)){var f=t.getItemVisual(h,"symbol")||"circle",g=p&&p.getSymbolType&&p.getSymbolType();if(!p||g&&g!==f)n.remove(p),(p=new o(t,h,s,l)).setPosition(d);else{p.updateData(t,h,s,l);var y={x:d[0],y:d[1]};a?p.attr(y):vh(p,y,i)}n.add(p),t.setItemGraphicEl(h,p)}else n.remove(p)})).remove((function(t){var e=r.getItemGraphicEl(t);e&&e.fadeOut((function(){n.remove(e)}),i)})).execute(),this._getSymbolPoint=u,this._data=t},t.prototype.updateLayout=function(){var t=this,e=this._data;e&&e.eachItemGraphicEl((function(e,n){var i=t._getSymbolPoint(n);e.setPosition(i),e.markRedraw()}))},t.prototype.incrementalPrepareUpdate=function(t){this._seriesScope=mS(t),this._data=null,this.group.removeAll()},t.prototype.incrementalUpdate=function(t,e,n){function i(t){t.isGroup||(t.incremental=!0,t.ensureState("emphasis").hoverLayer=!0)}this._progressiveEls=[],n=vS(n);for(var r=t.start;r<t.end;r++){var o=e.getItemLayout(r);if(yS(e,o,r,n)){var a=new this._SymbolCtor(e,r,this._seriesScope);a.traverse(i),a.setPosition(o),this.group.add(a),e.setItemGraphicEl(r,a),this._progressiveEls.push(a)}}},t.prototype.eachRendered=function(t){Jh(this._progressiveEls||this.group,t)},t.prototype.remove=function(t){var e=this.group,n=this._data;n&&t?n.eachItemGraphicEl((function(t){t.fadeOut((function(){e.remove(t)}),n.hostModel)})):e.removeAll()},t}();function _S(t,e,n){var i=t.getBaseAxis(),r=t.getOtherAxis(i),o=function(t,e){var n=0,i=t.scale.getExtent();"start"===e?n=i[0]:"end"===e?n=i[1]:j(e)&&!isNaN(e)?n=e:i[0]>0?n=i[0]:i[1]<0&&(n=i[1]);return n}(r,n),a=i.dim,s=r.dim,l=e.mapDimension(s),u=e.mapDimension(a),h="x"===s||"radius"===s?1:0,c=z(t.dimensions,(function(t){return e.mapDimension(t)})),p=!1,d=e.getCalculationInfo("stackResultDimension");return mx(e,c[0])&&(p=!0,c[0]=d),mx(e,c[1])&&(p=!0,c[1]=d),{dataDimsForPoint:c,valueStart:o,valueAxisDim:s,baseAxisDim:a,stacked:!!p,valueDim:l,baseDim:u,baseDataOffset:h,stackedOverDimension:e.getCalculationInfo("stackedOverDimension")}}function bS(t,e,n,i){var r=NaN;t.stacked&&(r=n.get(n.getCalculationInfo("stackedOverDimension"),i)),isNaN(r)&&(r=t.valueStart);var o=t.baseDataOffset,a=[];return a[o]=n.get(t.baseDim,i),a[1-o]=r,e.dataToPoint(a)}var wS=Math.min,SS=Math.max;function MS(t,e){return isNaN(t)||isNaN(e)}function IS(t,e,n,i,r,o,a,s,l){for(var u,h,c,p,d,f,g=n,y=0;y<i;y++){var v=e[2*g],m=e[2*g+1];if(g>=r||g<0)break;if(MS(v,m)){if(l){g+=o;continue}break}if(g===n)t[o>0?"moveTo":"lineTo"](v,m),c=v,p=m;else{var x=v-u,_=m-h;if(x*x+_*_<.5){g+=o;continue}if(a>0){for(var b=g+o,w=e[2*b],S=e[2*b+1];w===v&&S===m&&y<i;)y++,g+=o,w=e[2*(b+=o)],S=e[2*b+1],x=(v=e[2*g])-u,_=(m=e[2*g+1])-h;var M=y+1;if(l)for(;MS(w,S)&&M<i;)M++,w=e[2*(b+=o)],S=e[2*b+1];var I=.5,T=0,C=0,D=void 0,A=void 0;if(M>=i||MS(w,S))d=v,f=m;else{T=w-u,C=S-h;var k=v-u,L=w-v,P=m-h,O=S-m,R=void 0,N=void 0;if("x"===s){var E=T>0?1:-1;d=v-E*(R=Math.abs(k))*a,f=m,D=v+E*(N=Math.abs(L))*a,A=m}else if("y"===s){var z=C>0?1:-1;d=v,f=m-z*(R=Math.abs(P))*a,D=v,A=m+z*(N=Math.abs(O))*a}else R=Math.sqrt(k*k+P*P),d=v-T*a*(1-(I=(N=Math.sqrt(L*L+O*O))/(N+R))),f=m-C*a*(1-I),A=m+C*a*I,D=wS(D=v+T*a*I,SS(w,v)),A=wS(A,SS(S,m)),D=SS(D,wS(w,v)),f=m-(C=(A=SS(A,wS(S,m)))-m)*R/N,d=wS(d=v-(T=D-v)*R/N,SS(u,v)),f=wS(f,SS(h,m)),D=v+(T=v-(d=SS(d,wS(u,v))))*N/R,A=m+(C=m-(f=SS(f,wS(h,m))))*N/R}t.bezierCurveTo(c,p,d,f,v,m),c=D,p=A}else t.lineTo(v,m)}u=v,h=m,g+=o}return y}var TS=function(){this.smooth=0,this.smoothConstraint=!0},CS=function(t){function e(e){var n=t.call(this,e)||this;return n.type="ec-polyline",n}return n(e,t),e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new TS},e.prototype.buildPath=function(t,e){var n=e.points,i=0,r=n.length/2;if(e.connectNulls){for(;r>0&&MS(n[2*r-2],n[2*r-1]);r--);for(;i<r&&MS(n[2*i],n[2*i+1]);i++);}for(;i<r;)i+=IS(t,n,i,r,r,1,e.smooth,e.smoothMonotone,e.connectNulls)+1},e.prototype.getPointOn=function(t,e){this.path||(this.createPathProxy(),this.buildPath(this.path,this.shape));for(var n,i,r=this.path.data,o=hs.CMD,a="x"===e,s=[],l=0;l<r.length;){var u=void 0,h=void 0,c=void 0,p=void 0,d=void 0,f=void 0,g=void 0;switch(r[l++]){case o.M:n=r[l++],i=r[l++];break;case o.L:if(u=r[l++],h=r[l++],(g=a?(t-n)/(u-n):(t-i)/(h-i))<=1&&g>=0){var y=a?(h-i)*g+i:(u-n)*g+n;return a?[t,y]:[y,t]}n=u,i=h;break;case o.C:u=r[l++],h=r[l++],c=r[l++],p=r[l++],d=r[l++],f=r[l++];var v=a?_n(n,u,c,d,t,s):_n(i,h,p,f,t,s);if(v>0)for(var m=0;m<v;m++){var x=s[m];if(x<=1&&x>=0){y=a?mn(i,h,p,f,x):mn(n,u,c,d,x);return a?[t,y]:[y,t]}}n=d,i=f}}},e}(ks),DS=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e}(TS),AS=function(t){function e(e){var n=t.call(this,e)||this;return n.type="ec-polygon",n}return n(e,t),e.prototype.getDefaultShape=function(){return new DS},e.prototype.buildPath=function(t,e){var n=e.points,i=e.stackedOnPoints,r=0,o=n.length/2,a=e.smoothMonotone;if(e.connectNulls){for(;o>0&&MS(n[2*o-2],n[2*o-1]);o--);for(;r<o&&MS(n[2*r],n[2*r+1]);r++);}for(;r<o;){var s=IS(t,n,r,o,o,1,e.smooth,a,e.connectNulls);IS(t,i,r+s-1,s,o,-1,e.stackedOnSmooth,a,e.connectNulls),r+=s+1,t.closePath()}},e}(ks);function kS(t,e,n,i,r){var o=t.getArea(),a=o.x,s=o.y,l=o.width,u=o.height,h=n.get(["lineStyle","width"])||2;a-=h/2,s-=h/2,l+=h,u+=h,l=Math.ceil(l),a!==Math.floor(a)&&(a=Math.floor(a),l++);var c=new Ws({shape:{x:a,y:s,width:l,height:u}});if(e){var p=t.getBaseAxis(),d=p.isHorizontal(),f=p.inverse;d?(f&&(c.shape.x+=l),c.shape.width=0):(f||(c.shape.y+=u),c.shape.height=0);var g=X(r)?function(t){r(t,c)}:null;mh(c,{shape:{width:l,height:u,x:a,y:s}},n,null,i,g)}return c}function LS(t,e,n){var i=t.getArea(),r=Jr(i.r0,1),o=Jr(i.r,1),a=new Fu({shape:{cx:Jr(t.cx,1),cy:Jr(t.cy,1),r0:r,r:o,startAngle:i.startAngle,endAngle:i.endAngle,clockwise:i.clockwise}});e&&("angle"===t.getBaseAxis().dim?a.shape.endAngle=i.startAngle:a.shape.r=r,mh(a,{shape:{endAngle:i.endAngle,r:o}},n));return a}function PS(t,e,n,i,r){return t?"polar"===t.type?LS(t,e,n):"cartesian2d"===t.type?kS(t,e,n,i,r):null:null}function OS(t,e){return t.type===e}function RS(t,e){if(t.length===e.length){for(var n=0;n<t.length;n++)if(t[n]!==e[n])return;return!0}}function NS(t){for(var e=1/0,n=1/0,i=-1/0,r=-1/0,o=0;o<t.length;){var a=t[o++],s=t[o++];isNaN(a)||(e=Math.min(a,e),i=Math.max(a,i)),isNaN(s)||(n=Math.min(s,n),r=Math.max(s,r))}return[[e,n],[i,r]]}function ES(t,e){var n=NS(t),i=n[0],r=n[1],o=NS(e),a=o[0],s=o[1];return Math.max(Math.abs(i[0]-a[0]),Math.abs(i[1]-a[1]),Math.abs(r[0]-s[0]),Math.abs(r[1]-s[1]))}function zS(t){return j(t)?t:t?.5:0}function VS(t,e,n,i){var r=e.getBaseAxis(),o="x"===r.dim||"radius"===r.dim?0:1,a=[],s=0,l=[],u=[],h=[],c=[];if(i){for(s=0;s<t.length;s+=2)isNaN(t[s])||isNaN(t[s+1])||c.push(t[s],t[s+1]);t=c}for(s=0;s<t.length-2;s+=2)switch(h[0]=t[s+2],h[1]=t[s+3],u[0]=t[s],u[1]=t[s+1],a.push(u[0],u[1]),n){case"end":l[o]=h[o],l[1-o]=u[1-o],a.push(l[0],l[1]);break;case"middle":var p=(u[o]+h[o])/2,d=[];l[o]=d[o]=p,l[1-o]=u[1-o],d[1-o]=h[1-o],a.push(l[0],l[1]),a.push(d[0],d[1]);break;default:l[o]=u[o],l[1-o]=h[1-o],a.push(l[0],l[1])}return a.push(t[s++],t[s++]),a}function BS(t,e,n){var i=t.getVisual("visualMeta");if(i&&i.length&&t.count()&&"cartesian2d"===e.type){for(var r,o,a=i.length-1;a>=0;a--){var s=t.getDimensionInfo(i[a].dimension);if("x"===(r=s&&s.coordDim)||"y"===r){o=i[a];break}}if(o){var l=e.getAxis(r),u=z(o.stops,(function(t){return{coord:l.toGlobalCoord(l.dataToCoord(t.value)),color:t.color}})),h=u.length,c=o.outerColors.slice();h&&u[0].coord>u[h-1].coord&&(u.reverse(),c.reverse());var p=function(t,e){var n,i,r=[],o=t.length;function a(t,e,n){var i=t.coord;return{coord:n,color:ti((n-i)/(e.coord-i),[t.color,e.color])}}for(var s=0;s<o;s++){var l=t[s],u=l.coord;if(u<0)n=l;else{if(u>e){i?r.push(a(i,l,e)):n&&r.push(a(n,l,0),a(n,l,e));break}n&&(r.push(a(n,l,0)),n=null),r.push(l),i=l}}return r}(u,"x"===r?n.getWidth():n.getHeight()),d=p.length;if(!d&&h)return u[0].coord<0?c[1]?c[1]:u[h-1].color:c[0]?c[0]:u[0].color;var f=p[0].coord-10,g=p[d-1].coord+10,y=g-f;if(y<.001)return"transparent";E(p,(function(t){t.offset=(t.coord-f)/y})),p.push({offset:d?p[d-1].offset:.5,color:c[1]||"transparent"}),p.unshift({offset:d?p[0].offset:.5,color:c[0]||"transparent"});var v=new oh(0,0,0,0,p,!0);return v[r]=f,v[r+"2"]=g,v}}}function FS(t,e,n){var i=t.get("showAllSymbol"),r="auto"===i;if(!i||r){var o=n.getAxesByScale("ordinal")[0];if(o&&(!r||!function(t,e){var n=t.getExtent(),i=Math.abs(n[1]-n[0])/t.scale.count();isNaN(i)&&(i=0);for(var r=e.count(),o=Math.max(1,Math.round(r/5)),a=0;a<r;a+=o)if(1.5*fS.getSymbolSize(e,a)[t.isHorizontal()?1:0]>i)return!1;return!0}(o,e))){var a=e.mapDimension(o.dim),s={};return E(o.getViewLabels(),(function(t){var e=o.scale.getRawOrdinalNumber(t.tickValue);s[e]=1})),function(t){return!s.hasOwnProperty(e.get(a,t))}}}}function GS(t,e){return[t[2*e],t[2*e+1]]}function WS(t){if(t.get(["endLabel","show"]))return!0;for(var e=0;e<hl.length;e++)if(t.get([hl[e],"endLabel","show"]))return!0;return!1}function HS(t,e,n,i){if(OS(e,"cartesian2d")){var r=i.getModel("endLabel"),o=r.get("valueAnimation"),a=i.getData(),s={lastFrameIndex:0},l=WS(i)?function(n,i){t._endLabelOnDuring(n,i,a,s,o,r,e)}:null,u=e.getBaseAxis().isHorizontal(),h=kS(e,n,i,(function(){var e=t._endLabel;e&&n&&null!=s.originalX&&e.attr({x:s.originalX,y:s.originalY})}),l);if(!i.get("clip",!0)){var c=h.shape,p=Math.max(c.width,c.height);u?(c.y-=p,c.height+=2*p):(c.x-=p,c.width+=2*p)}return l&&l(1,h),h}return LS(e,n,i)}var YS=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.init=function(){var t=new Br,e=new xS;this.group.add(e.group),this._symbolDraw=e,this._lineGroup=t},e.prototype.render=function(t,e,n){var i=this,r=t.coordinateSystem,o=this.group,a=t.getData(),s=t.getModel("lineStyle"),l=t.getModel("areaStyle"),u=a.getLayout("points")||[],h="polar"===r.type,c=this._coordSys,p=this._symbolDraw,d=this._polyline,f=this._polygon,g=this._lineGroup,y=!e.ssr&&t.get("animation"),v=!l.isEmpty(),m=l.get("origin"),x=_S(r,a,m),_=v&&function(t,e,n){if(!n.valueDim)return[];for(var i=e.count(),r=Bx(2*i),o=0;o<i;o++){var a=bS(n,t,e,o);r[2*o]=a[0],r[2*o+1]=a[1]}return r}(r,a,x),b=t.get("showSymbol"),w=t.get("connectNulls"),S=b&&!h&&FS(t,a,r),M=this._data;M&&M.eachItemGraphicEl((function(t,e){t.__temp&&(o.remove(t),M.setItemGraphicEl(e,null))})),b||p.remove(),o.add(g);var I,T=!h&&t.get("step");r&&r.getArea&&t.get("clip",!0)&&(null!=(I=r.getArea()).width?(I.x-=.1,I.y-=.1,I.width+=.2,I.height+=.2):I.r0&&(I.r0-=.5,I.r+=.5)),this._clipShapeForSymbol=I;var C=BS(a,r,n)||a.getVisual("style")[a.getVisual("drawType")];if(d&&c.type===r.type&&T===this._step){v&&!f?f=this._newPolygon(u,_):f&&!v&&(g.remove(f),f=this._polygon=null),h||this._initOrUpdateEndLabel(t,r,Sp(C));var D=g.getClipPath();if(D)mh(D,{shape:HS(this,r,!1,t).shape},t);else g.setClipPath(HS(this,r,!0,t));b&&p.updateData(a,{isIgnore:S,clipShape:I,disableAnimation:!0,getSymbolPoint:function(t){return[u[2*t],u[2*t+1]]}}),RS(this._stackedOnPoints,_)&&RS(this._points,u)||(y?this._doUpdateAnimation(a,_,r,n,T,m,w):(T&&(u=VS(u,r,T,w),_&&(_=VS(_,r,T,w))),d.setShape({points:u}),f&&f.setShape({points:u,stackedOnPoints:_})))}else b&&p.updateData(a,{isIgnore:S,clipShape:I,disableAnimation:!0,getSymbolPoint:function(t){return[u[2*t],u[2*t+1]]}}),y&&this._initSymbolLabelAnimation(a,r,I),T&&(u=VS(u,r,T,w),_&&(_=VS(_,r,T,w))),d=this._newPolyline(u),v?f=this._newPolygon(u,_):f&&(g.remove(f),f=this._polygon=null),h||this._initOrUpdateEndLabel(t,r,Sp(C)),g.setClipPath(HS(this,r,!0,t));var A=t.getModel("emphasis"),L=A.get("focus"),P=A.get("blurScope"),O=A.get("disabled");(d.useStyle(k(s.getLineStyle(),{fill:"none",stroke:C,lineJoin:"bevel"})),$l(d,t,"lineStyle"),d.style.lineWidth>0&&"bolder"===t.get(["emphasis","lineStyle","width"]))&&(d.getState("emphasis").style.lineWidth=+d.style.lineWidth+1);rl(d).seriesIndex=t.seriesIndex,Zl(d,L,P,O);var R=zS(t.get("smooth")),N=t.get("smoothMonotone");if(d.setShape({smooth:R,smoothMonotone:N,connectNulls:w}),f){var E=a.getCalculationInfo("stackedOnSeries"),z=0;f.useStyle(k(l.getAreaStyle(),{fill:C,opacity:.7,lineJoin:"bevel",decal:a.getVisual("style").decal})),E&&(z=zS(E.get("smooth"))),f.setShape({smooth:R,stackedOnSmooth:z,smoothMonotone:N,connectNulls:w}),$l(f,t,"areaStyle"),rl(f).seriesIndex=t.seriesIndex,Zl(f,L,P,O)}var V=function(t){i._changePolyState(t)};a.eachItemGraphicEl((function(t){t&&(t.onHoverStateChange=V)})),this._polyline.onHoverStateChange=V,this._data=a,this._coordSys=r,this._stackedOnPoints=_,this._points=u,this._step=T,this._valueOrigin=m,t.get("triggerLineEvent")&&(this.packEventData(t,d),f&&this.packEventData(t,f))},e.prototype.packEventData=function(t,e){rl(e).eventData={componentType:"series",componentSubType:"line",componentIndex:t.componentIndex,seriesIndex:t.seriesIndex,seriesName:t.name,seriesType:"line"}},e.prototype.highlight=function(t,e,n,i){var r=t.getData(),o=zo(r,i);if(this._changePolyState("emphasis"),!(o instanceof Array)&&null!=o&&o>=0){var a=r.getLayout("points"),s=r.getItemGraphicEl(o);if(!s){var l=a[2*o],u=a[2*o+1];if(isNaN(l)||isNaN(u))return;if(this._clipShapeForSymbol&&!this._clipShapeForSymbol.contain(l,u))return;var h=t.get("zlevel")||0,c=t.get("z")||0;(s=new fS(r,o)).x=l,s.y=u,s.setZ(h,c);var p=s.getSymbolPath().getTextContent();p&&(p.zlevel=h,p.z=c,p.z2=this._polyline.z2+1),s.__temp=!0,r.setItemGraphicEl(o,s),s.stopSymbolAnimation(!0),this.group.add(s)}s.highlight()}else Og.prototype.highlight.call(this,t,e,n,i)},e.prototype.downplay=function(t,e,n,i){var r=t.getData(),o=zo(r,i);if(this._changePolyState("normal"),null!=o&&o>=0){var a=r.getItemGraphicEl(o);a&&(a.__temp?(r.setItemGraphicEl(o,null),this.group.remove(a)):a.downplay())}else Og.prototype.downplay.call(this,t,e,n,i)},e.prototype._changePolyState=function(t){var e=this._polygon;Dl(this._polyline,t),e&&Dl(e,t)},e.prototype._newPolyline=function(t){var e=this._polyline;return e&&this._lineGroup.remove(e),e=new CS({shape:{points:t},segmentIgnoreThreshold:2,z2:10}),this._lineGroup.add(e),this._polyline=e,e},e.prototype._newPolygon=function(t,e){var n=this._polygon;return n&&this._lineGroup.remove(n),n=new AS({shape:{points:t,stackedOnPoints:e},segmentIgnoreThreshold:2}),this._lineGroup.add(n),this._polygon=n,n},e.prototype._initSymbolLabelAnimation=function(t,e,n){var i,r,o=e.getBaseAxis(),a=o.inverse;"cartesian2d"===e.type?(i=o.isHorizontal(),r=!1):"polar"===e.type&&(i="angle"===o.dim,r=!0);var s=t.hostModel,l=s.get("animationDuration");X(l)&&(l=l(null));var u=s.get("animationDelay")||0,h=X(u)?u(null):u;t.eachItemGraphicEl((function(t,o){var s=t;if(s){var c=[t.x,t.y],p=void 0,d=void 0,f=void 0;if(n)if(r){var g=n,y=e.pointToCoord(c);i?(p=g.startAngle,d=g.endAngle,f=-y[1]/180*Math.PI):(p=g.r0,d=g.r,f=y[0])}else{var v=n;i?(p=v.x,d=v.x+v.width,f=t.x):(p=v.y+v.height,d=v.y,f=t.y)}var m=d===p?0:(f-p)/(d-p);a&&(m=1-m);var x=X(u)?u(o):l*m+h,_=s.getSymbolPath(),b=_.getTextContent();s.attr({scaleX:0,scaleY:0}),s.animateTo({scaleX:1,scaleY:1},{duration:200,setToFinal:!0,delay:x}),b&&b.animateFrom({style:{opacity:0}},{duration:300,delay:x}),_.disableLabelAnimation=!0}}))},e.prototype._initOrUpdateEndLabel=function(t,e,n){var i=t.getModel("endLabel");if(WS(t)){var r=t.getData(),o=this._polyline,a=r.getLayout("points");if(!a)return o.removeTextContent(),void(this._endLabel=null);var s=this._endLabel;s||((s=this._endLabel=new Xs({z2:200})).ignoreClip=!0,o.setTextContent(this._endLabel),o.disableLabelAnimation=!0);var l=function(t){for(var e,n,i=t.length/2;i>0&&(e=t[2*i-2],n=t[2*i-1],isNaN(e)||isNaN(n));i--);return i-1}(a);l>=0&&(ic(o,rc(t,"endLabel"),{inheritColor:n,labelFetcher:t,labelDataIndex:l,defaultText:function(t,e,n){return null!=n?dS(r,n):pS(r,t)},enableTextSetter:!0},function(t,e){var n=e.getBaseAxis(),i=n.isHorizontal(),r=n.inverse,o=i?r?"right":"left":"center",a=i?"middle":r?"top":"bottom";return{normal:{align:t.get("align")||o,verticalAlign:t.get("verticalAlign")||a}}}(i,e)),o.textConfig.position=null)}else this._endLabel&&(this._polyline.removeTextContent(),this._endLabel=null)},e.prototype._endLabelOnDuring=function(t,e,n,i,r,o,a){var s=this._endLabel,l=this._polyline;if(s){t<1&&null==i.originalX&&(i.originalX=s.x,i.originalY=s.y);var u=n.getLayout("points"),h=n.hostModel,c=h.get("connectNulls"),p=o.get("precision"),d=o.get("distance")||0,f=a.getBaseAxis(),g=f.isHorizontal(),y=f.inverse,v=e.shape,m=y?g?v.x:v.y+v.height:g?v.x+v.width:v.y,x=(g?d:0)*(y?-1:1),_=(g?0:-d)*(y?-1:1),b=g?"x":"y",w=function(t,e,n){for(var i,r,o=t.length/2,a="x"===n?0:1,s=0,l=-1,u=0;u<o;u++)if(r=t[2*u+a],!isNaN(r)&&!isNaN(t[2*u+1-a]))if(0!==u){if(i<=e&&r>=e||i>=e&&r<=e){l=u;break}s=u,i=r}else i=r;return{range:[s,l],t:(e-i)/(r-i)}}(u,m,b),S=w.range,M=S[1]-S[0],I=void 0;if(M>=1){if(M>1&&!c){var T=GS(u,S[0]);s.attr({x:T[0]+x,y:T[1]+_}),r&&(I=h.getRawValue(S[0]))}else{(T=l.getPointOn(m,b))&&s.attr({x:T[0]+x,y:T[1]+_});var C=h.getRawValue(S[0]),D=h.getRawValue(S[1]);r&&(I=Zo(n,p,C,D,w.t))}i.lastFrameIndex=S[0]}else{var A=1===t||i.lastFrameIndex>0?S[0]:0;T=GS(u,A);r&&(I=h.getRawValue(A)),s.attr({x:T[0]+x,y:T[1]+_})}if(r){var k=pc(s);"function"==typeof k.setLabelText&&k.setLabelText(I)}}},e.prototype._doUpdateAnimation=function(t,e,n,i,r,o,a){var s=this._polyline,l=this._polygon,u=t.hostModel,h=function(t,e,n,i,r,o,a,s){for(var l=function(t,e){var n=[];return e.diff(t).add((function(t){n.push({cmd:"+",idx:t})})).update((function(t,e){n.push({cmd:"=",idx:e,idx1:t})})).remove((function(t){n.push({cmd:"-",idx:t})})).execute(),n}(t,e),u=[],h=[],c=[],p=[],d=[],f=[],g=[],y=_S(r,e,a),v=t.getLayout("points")||[],m=e.getLayout("points")||[],x=0;x<l.length;x++){var _=l[x],b=!0,w=void 0,S=void 0;switch(_.cmd){case"=":w=2*_.idx,S=2*_.idx1;var M=v[w],I=v[w+1],T=m[S],C=m[S+1];(isNaN(M)||isNaN(I))&&(M=T,I=C),u.push(M,I),h.push(T,C),c.push(n[w],n[w+1]),p.push(i[S],i[S+1]),g.push(e.getRawIndex(_.idx1));break;case"+":var D=_.idx,A=y.dataDimsForPoint,k=r.dataToPoint([e.get(A[0],D),e.get(A[1],D)]);S=2*D,u.push(k[0],k[1]),h.push(m[S],m[S+1]);var L=bS(y,r,e,D);c.push(L[0],L[1]),p.push(i[S],i[S+1]),g.push(e.getRawIndex(D));break;case"-":b=!1}b&&(d.push(_),f.push(f.length))}f.sort((function(t,e){return g[t]-g[e]}));var P=u.length,O=Bx(P),R=Bx(P),N=Bx(P),E=Bx(P),z=[];for(x=0;x<f.length;x++){var V=f[x],B=2*x,F=2*V;O[B]=u[F],O[B+1]=u[F+1],R[B]=h[F],R[B+1]=h[F+1],N[B]=c[F],N[B+1]=c[F+1],E[B]=p[F],E[B+1]=p[F+1],z[x]=d[V]}return{current:O,next:R,stackedOnCurrent:N,stackedOnNext:E,status:z}}(this._data,t,this._stackedOnPoints,e,this._coordSys,0,this._valueOrigin),c=h.current,p=h.stackedOnCurrent,d=h.next,f=h.stackedOnNext;if(r&&(c=VS(h.current,n,r,a),p=VS(h.stackedOnCurrent,n,r,a),d=VS(h.next,n,r,a),f=VS(h.stackedOnNext,n,r,a)),ES(c,d)>3e3||l&&ES(p,f)>3e3)return s.stopAnimation(),s.setShape({points:d}),void(l&&(l.stopAnimation(),l.setShape({points:d,stackedOnPoints:f})));s.shape.__points=h.current,s.shape.points=c;var g={shape:{points:d}};h.current!==c&&(g.shape.__points=h.next),s.stopAnimation(),vh(s,g,u),l&&(l.setShape({points:c,stackedOnPoints:p}),l.stopAnimation(),vh(l,{shape:{stackedOnPoints:f}},u),s.shape.points!==l.shape.points&&(l.shape.points=s.shape.points));for(var y=[],v=h.status,m=0;m<v.length;m++){if("="===v[m].cmd){var x=t.getItemGraphicEl(v[m].idx1);x&&y.push({el:x,ptIdx:m})}}s.animators&&s.animators.length&&s.animators[0].during((function(){l&&l.dirtyShape();for(var t=s.shape.__points,e=0;e<y.length;e++){var n=y[e].el,i=2*y[e].ptIdx;n.x=t[i],n.y=t[i+1],n.markRedraw()}}))},e.prototype.remove=function(t){var e=this.group,n=this._data;this._lineGroup.removeAll(),this._symbolDraw.remove(!0),n&&n.eachItemGraphicEl((function(t,i){t.__temp&&(e.remove(t),n.setItemGraphicEl(i,null))})),this._polyline=this._polygon=this._coordSys=this._points=this._stackedOnPoints=this._endLabel=this._data=null},e.type="line",e}(Og);function XS(t,e){return{seriesType:t,plan:kg(),reset:function(t){var n=t.getData(),i=t.coordinateSystem,r=t.pipelineContext,o=e||r.large;if(i){var a=z(i.dimensions,(function(t){return n.mapDimension(t)})).slice(0,2),s=a.length,l=n.getCalculationInfo("stackResultDimension");mx(n,a[0])&&(a[0]=l),mx(n,a[1])&&(a[1]=l);var u=n.getStore(),h=n.getDimensionIndex(a[0]),c=n.getDimensionIndex(a[1]);return s&&{progress:function(t,e){for(var n=t.end-t.start,r=o&&Bx(n*s),a=[],l=[],p=t.start,d=0;p<t.end;p++){var f=void 0;if(1===s){var g=u.get(h,p);f=i.dataToPoint(g,null,l)}else a[0]=u.get(h,p),a[1]=u.get(c,p),f=i.dataToPoint(a,null,l);o?(r[d++]=f[0],r[d++]=f[1]):e.setItemLayout(p,f.slice())}o&&e.setLayout("points",r)}}}}}}var US={average:function(t){for(var e=0,n=0,i=0;i<t.length;i++)isNaN(t[i])||(e+=t[i],n++);return 0===n?NaN:e/n},sum:function(t){for(var e=0,n=0;n<t.length;n++)e+=t[n]||0;return e},max:function(t){for(var e=-1/0,n=0;n<t.length;n++)t[n]>e&&(e=t[n]);return isFinite(e)?e:NaN},min:function(t){for(var e=1/0,n=0;n<t.length;n++)t[n]<e&&(e=t[n]);return isFinite(e)?e:NaN},minmax:function(t){for(var e=-1/0,n=-1/0,i=0;i<t.length;i++){var r=t[i],o=Math.abs(r);o>e&&(e=o,n=r)}return isFinite(n)?n:NaN},nearest:function(t){return t[0]}},ZS=function(t){return Math.round(t.length/2)};function jS(t){return{seriesType:t,reset:function(t,e,n){var i=t.getData(),r=t.get("sampling"),o=t.coordinateSystem,a=i.count();if(a>10&&"cartesian2d"===o.type&&r){var s=o.getBaseAxis(),l=o.getOtherAxis(s),u=s.getExtent(),h=n.getDevicePixelRatio(),c=Math.abs(u[1]-u[0])*(h||1),p=Math.round(a/c);if(isFinite(p)&&p>1){"lttb"===r&&t.setData(i.lttbDownSample(i.mapDimension(l.dim),1/p));var d=void 0;U(r)?d=US[r]:X(r)&&(d=r),d&&t.setData(i.downSample(i.mapDimension(l.dim),1/p,d,ZS))}}}}}var qS=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.getInitialData=function(t,e){return _x(null,this,{useEncodeDefaulter:!0})},e.prototype.getMarkerPosition=function(t,e,n){var i=this.coordinateSystem;if(i&&i.clampData){var r=i.clampData(t),o=i.dataToPoint(r);if(n)E(i.getAxes(),(function(t,n){if("category"===t.type&&null!=e){var i=t.getTicksCoords(),a=t.getTickModel().get("alignWithLabel"),s=r[n],l="x1"===e[n]||"y1"===e[n];if(l&&!a&&(s+=1),i.length<2)return;if(2===i.length)return void(o[n]=t.toGlobalCoord(t.getExtent()[l?1:0]));for(var u=void 0,h=void 0,c=1,p=0;p<i.length;p++){var d=i[p].coord,f=p===i.length-1?i[p-1].tickValue+c:i[p].tickValue;if(f===s){h=d;break}if(f<s)u=d;else if(null!=u&&f>s){h=(d+u)/2;break}1===p&&(c=f-i[0].tickValue)}null==h&&(u?u&&(h=i[i.length-1].coord):h=i[0].coord),o[n]=t.toGlobalCoord(h)}}));else{var a=this.getData(),s=a.getLayout("offset"),l=a.getLayout("size"),u=i.getBaseAxis().isHorizontal()?0:1;o[u]+=s+l/2}return o}return[NaN,NaN]},e.type="series.__base_bar__",e.defaultOption={z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,barMinHeight:0,barMinAngle:0,large:!1,largeThreshold:400,progressive:3e3,progressiveChunkMode:"mod"},e}(bg);bg.registerClass(qS);var KS=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.getInitialData=function(){return _x(null,this,{useEncodeDefaulter:!0,createInvertedIndices:!!this.get("realtimeSort",!0)||null})},e.prototype.getProgressive=function(){return!!this.get("large")&&this.get("progressive")},e.prototype.getProgressiveThreshold=function(){var t=this.get("progressiveThreshold"),e=this.get("largeThreshold");return e>t&&(t=e),t},e.prototype.brushSelector=function(t,e,n){return n.rect(e.getItemLayout(t))},e.type="series.bar",e.dependencies=["grid","polar"],e.defaultOption=kc(qS.defaultOption,{clip:!0,roundCap:!1,showBackground:!1,backgroundStyle:{color:"rgba(180, 180, 180, 0.2)",borderColor:null,borderWidth:0,borderType:"solid",borderRadius:0,shadowBlur:0,shadowColor:null,shadowOffsetX:0,shadowOffsetY:0,opacity:1},select:{itemStyle:{borderColor:"#212121"}},realtimeSort:!1}),e}(qS),$S=function(){this.cx=0,this.cy=0,this.r0=0,this.r=0,this.startAngle=0,this.endAngle=2*Math.PI,this.clockwise=!0},JS=function(t){function e(e){var n=t.call(this,e)||this;return n.type="sausage",n}return n(e,t),e.prototype.getDefaultShape=function(){return new $S},e.prototype.buildPath=function(t,e){var n=e.cx,i=e.cy,r=Math.max(e.r0||0,0),o=Math.max(e.r,0),a=.5*(o-r),s=r+a,l=e.startAngle,u=e.endAngle,h=e.clockwise,c=2*Math.PI,p=h?u-l<c:l-u<c;p||(l=u-(h?c:-c));var d=Math.cos(l),f=Math.sin(l),g=Math.cos(u),y=Math.sin(u);p?(t.moveTo(d*r+n,f*r+i),t.arc(d*s+n,f*s+i,a,-Math.PI+l,l,!h)):t.moveTo(d*o+n,f*o+i),t.arc(n,i,o,l,u,!h),t.arc(g*s+n,y*s+i,a,u-2*Math.PI,u-Math.PI,!h),0!==r&&t.arc(n,i,r,u,l,h)},e}(ks);function QS(t,e,n){return e*Math.sin(t)*(n?-1:1)}function tM(t,e,n){return e*Math.cos(t)*(n?1:-1)}function eM(t,e,n){var i=t.get("borderRadius");if(null==i)return n?{cornerRadius:0}:null;Y(i)||(i=[i,i,i,i]);var r=Math.abs(e.r||0-e.r0||0);return{cornerRadius:z(i,(function(t){return Cr(t,r)}))}}var nM=Math.max,iM=Math.min;var rM=function(t){function e(){var n=t.call(this)||this;return n.type=e.type,n._isFirstFrame=!0,n}return n(e,t),e.prototype.render=function(t,e,n,i){this._model=t,this._removeOnRenderedListener(n),this._updateDrawMode(t);var r=t.get("coordinateSystem");("cartesian2d"===r||"polar"===r)&&(this._progressiveEls=null,this._isLargeDraw?this._renderLarge(t,e,n):this._renderNormal(t,e,n,i))},e.prototype.incrementalPrepareRender=function(t){this._clear(),this._updateDrawMode(t),this._updateLargeClip(t)},e.prototype.incrementalRender=function(t,e){this._progressiveEls=[],this._incrementalRenderLarge(t,e)},e.prototype.eachRendered=function(t){Jh(this._progressiveEls||this.group,t)},e.prototype._updateDrawMode=function(t){var e=t.pipelineContext.large;null!=this._isLargeDraw&&e===this._isLargeDraw||(this._isLargeDraw=e,this._clear())},e.prototype._renderNormal=function(t,e,n,i){var r,o=this.group,a=t.getData(),s=this._data,l=t.coordinateSystem,u=l.getBaseAxis();"cartesian2d"===l.type?r=u.isHorizontal():"polar"===l.type&&(r="angle"===u.dim);var h=t.isAnimationEnabled()?t:null,c=function(t,e){var n=t.get("realtimeSort",!0),i=e.getBaseAxis();0;if(n&&"category"===i.type&&"cartesian2d"===e.type)return{baseAxis:i,otherAxis:e.getOtherAxis(i)}}(t,l);c&&this._enableRealtimeSort(c,a,n);var p=t.get("clip",!0)||c,d=function(t,e){var n=t.getArea&&t.getArea();if(OS(t,"cartesian2d")){var i=t.getBaseAxis();if("category"!==i.type||!i.onBand){var r=e.getLayout("bandWidth");i.isHorizontal()?(n.x-=r,n.width+=2*r):(n.y-=r,n.height+=2*r)}}return n}(l,a);o.removeClipPath();var f=t.get("roundCap",!0),g=t.get("showBackground",!0),y=t.getModel("backgroundStyle"),v=y.get("borderRadius")||0,m=[],x=this._backgroundEls,_=i&&i.isInitSort,b=i&&"changeAxisOrder"===i.type;function w(t){var e=pM[l.type](a,t),n=function(t,e,n){var i="polar"===t.type?Fu:Ws;return new i({shape:xM(e,n,t),silent:!0,z2:0})}(l,r,e);return n.useStyle(y.getItemStyle()),"cartesian2d"===l.type?n.setShape("r",v):n.setShape("cornerRadius",v),m[t]=n,n}a.diff(s).add((function(e){var n=a.getItemModel(e),i=pM[l.type](a,e,n);if(g&&w(e),a.hasValue(e)&&cM[l.type](i)){var s=!1;p&&(s=oM[l.type](d,i));var y=aM[l.type](t,a,e,i,r,h,u.model,!1,f);c&&(y.forceLabelAnimation=!0),fM(y,a,e,n,i,t,r,"polar"===l.type),_?y.attr({shape:i}):c?sM(c,h,y,i,e,r,!1,!1):mh(y,{shape:i},t,e),a.setItemGraphicEl(e,y),o.add(y),y.ignore=s}})).update((function(e,n){var i=a.getItemModel(e),S=pM[l.type](a,e,i);if(g){var M=void 0;0===x.length?M=w(n):((M=x[n]).useStyle(y.getItemStyle()),"cartesian2d"===l.type?M.setShape("r",v):M.setShape("cornerRadius",v),m[e]=M);var I=pM[l.type](a,e);vh(M,{shape:xM(r,I,l)},h,e)}var T=s.getItemGraphicEl(n);if(a.hasValue(e)&&cM[l.type](S)){var C=!1;if(p&&(C=oM[l.type](d,S))&&o.remove(T),T?Sh(T):T=aM[l.type](t,a,e,S,r,h,u.model,!!T,f),c&&(T.forceLabelAnimation=!0),b){var D=T.getTextContent();if(D){var A=pc(D);null!=A.prevValue&&(A.prevValue=A.value)}}else fM(T,a,e,i,S,t,r,"polar"===l.type);_?T.attr({shape:S}):c?sM(c,h,T,S,e,r,!0,b):vh(T,{shape:S},t,e,null),a.setItemGraphicEl(e,T),T.ignore=C,o.add(T)}else o.remove(T)})).remove((function(e){var n=s.getItemGraphicEl(e);n&&wh(n,t,e)})).execute();var S=this._backgroundGroup||(this._backgroundGroup=new Br);S.removeAll();for(var M=0;M<m.length;++M)S.add(m[M]);o.add(S),this._backgroundEls=m,this._data=a},e.prototype._renderLarge=function(t,e,n){this._clear(),vM(t,this.group),this._updateLargeClip(t)},e.prototype._incrementalRenderLarge=function(t,e){this._removeBackground(),vM(e,this.group,this._progressiveEls,!0)},e.prototype._updateLargeClip=function(t){var e=t.get("clip",!0)&&PS(t.coordinateSystem,!1,t),n=this.group;e?n.setClipPath(e):n.removeClipPath()},e.prototype._enableRealtimeSort=function(t,e,n){var i=this;if(e.count()){var r=t.baseAxis;if(this._isFirstFrame)this._dispatchInitSort(e,t,n),this._isFirstFrame=!1;else{var o=function(t){var n=e.getItemGraphicEl(t),i=n&&n.shape;return i&&Math.abs(r.isHorizontal()?i.height:i.width)||0};this._onRendered=function(){i._updateSortWithinSameData(e,o,r,n)},n.getZr().on("rendered",this._onRendered)}}},e.prototype._dataSort=function(t,e,n){var i=[];return t.each(t.mapDimension(e.dim),(function(t,e){var r=n(e);r=null==r?NaN:r,i.push({dataIndex:e,mappedValue:r,ordinalNumber:t})})),i.sort((function(t,e){return e.mappedValue-t.mappedValue})),{ordinalNumbers:z(i,(function(t){return t.ordinalNumber}))}},e.prototype._isOrderChangedWithinSameData=function(t,e,n){for(var i=n.scale,r=t.mapDimension(n.dim),o=Number.MAX_VALUE,a=0,s=i.getOrdinalMeta().categories.length;a<s;++a){var l=t.rawIndexOf(r,i.getRawOrdinalNumber(a)),u=l<0?Number.MIN_VALUE:e(t.indexOfRawIndex(l));if(u>o)return!0;o=u}return!1},e.prototype._isOrderDifferentInView=function(t,e){for(var n=e.scale,i=n.getExtent(),r=Math.max(0,i[0]),o=Math.min(i[1],n.getOrdinalMeta().categories.length-1);r<=o;++r)if(t.ordinalNumbers[r]!==n.getRawOrdinalNumber(r))return!0},e.prototype._updateSortWithinSameData=function(t,e,n,i){if(this._isOrderChangedWithinSameData(t,e,n)){var r=this._dataSort(t,n,e);this._isOrderDifferentInView(r,n)&&(this._removeOnRenderedListener(i),i.dispatchAction({type:"changeAxisOrder",componentType:n.dim+"Axis",axisId:n.index,sortInfo:r}))}},e.prototype._dispatchInitSort=function(t,e,n){var i=e.baseAxis,r=this._dataSort(t,i,(function(n){return t.get(t.mapDimension(e.otherAxis.dim),n)}));n.dispatchAction({type:"changeAxisOrder",componentType:i.dim+"Axis",isInitSort:!0,axisId:i.index,sortInfo:r})},e.prototype.remove=function(t,e){this._clear(this._model),this._removeOnRenderedListener(e)},e.prototype.dispose=function(t,e){this._removeOnRenderedListener(e)},e.prototype._removeOnRenderedListener=function(t){this._onRendered&&(t.getZr().off("rendered",this._onRendered),this._onRendered=null)},e.prototype._clear=function(t){var e=this.group,n=this._data;t&&t.isAnimationEnabled()&&n&&!this._isLargeDraw?(this._removeBackground(),this._backgroundEls=[],n.eachItemGraphicEl((function(e){wh(e,t,rl(e).dataIndex)}))):e.removeAll(),this._data=null,this._isFirstFrame=!0},e.prototype._removeBackground=function(){this.group.remove(this._backgroundGroup),this._backgroundGroup=null},e.type="bar",e}(Og),oM={cartesian2d:function(t,e){var n=e.width<0?-1:1,i=e.height<0?-1:1;n<0&&(e.x+=e.width,e.width=-e.width),i<0&&(e.y+=e.height,e.height=-e.height);var r=t.x+t.width,o=t.y+t.height,a=nM(e.x,t.x),s=iM(e.x+e.width,r),l=nM(e.y,t.y),u=iM(e.y+e.height,o),h=s<a,c=u<l;return e.x=h&&a>r?s:a,e.y=c&&l>o?u:l,e.width=h?0:s-a,e.height=c?0:u-l,n<0&&(e.x+=e.width,e.width=-e.width),i<0&&(e.y+=e.height,e.height=-e.height),h||c},polar:function(t,e){var n=e.r0<=e.r?1:-1;if(n<0){var i=e.r;e.r=e.r0,e.r0=i}var r=iM(e.r,t.r),o=nM(e.r0,t.r0);e.r=r,e.r0=o;var a=r-o<0;if(n<0){i=e.r;e.r=e.r0,e.r0=i}return a}},aM={cartesian2d:function(t,e,n,i,r,o,a,s,l){var u=new Ws({shape:A({},i),z2:1});(u.__dataIndex=n,u.name="item",o)&&(u.shape[r?"height":"width"]=0);return u},polar:function(t,e,n,i,r,o,a,s,l){var u=!r&&l?JS:Fu,h=new u({shape:i,z2:1});h.name="item";var c,p,d=dM(r);if(h.calculateTextPosition=(c=d,p=({isRoundCap:u===JS}||{}).isRoundCap,function(t,e,n){var i=e.position;if(!i||i instanceof Array)return Dr(t,e,n);var r=c(i),o=null!=e.distance?e.distance:5,a=this.shape,s=a.cx,l=a.cy,u=a.r,h=a.r0,d=(u+h)/2,f=a.startAngle,g=a.endAngle,y=(f+g)/2,v=p?Math.abs(u-h)/2:0,m=Math.cos,x=Math.sin,_=s+u*m(f),b=l+u*x(f),w="left",S="top";switch(r){case"startArc":_=s+(h-o)*m(y),b=l+(h-o)*x(y),w="center",S="top";break;case"insideStartArc":_=s+(h+o)*m(y),b=l+(h+o)*x(y),w="center",S="bottom";break;case"startAngle":_=s+d*m(f)+QS(f,o+v,!1),b=l+d*x(f)+tM(f,o+v,!1),w="right",S="middle";break;case"insideStartAngle":_=s+d*m(f)+QS(f,-o+v,!1),b=l+d*x(f)+tM(f,-o+v,!1),w="left",S="middle";break;case"middle":_=s+d*m(y),b=l+d*x(y),w="center",S="middle";break;case"endArc":_=s+(u+o)*m(y),b=l+(u+o)*x(y),w="center",S="bottom";break;case"insideEndArc":_=s+(u-o)*m(y),b=l+(u-o)*x(y),w="center",S="top";break;case"endAngle":_=s+d*m(g)+QS(g,o+v,!0),b=l+d*x(g)+tM(g,o+v,!0),w="left",S="middle";break;case"insideEndAngle":_=s+d*m(g)+QS(g,-o+v,!0),b=l+d*x(g)+tM(g,-o+v,!0),w="right",S="middle";break;default:return Dr(t,e,n)}return(t=t||{}).x=_,t.y=b,t.align=w,t.verticalAlign=S,t}),o){var f=r?"r":"endAngle",g={};h.shape[f]=r?i.r0:i.startAngle,g[f]=i[f],(s?vh:mh)(h,{shape:g},o)}return h}};function sM(t,e,n,i,r,o,a,s){var l,u;o?(u={x:i.x,width:i.width},l={y:i.y,height:i.height}):(u={y:i.y,height:i.height},l={x:i.x,width:i.width}),s||(a?vh:mh)(n,{shape:l},e,r,null),(a?vh:mh)(n,{shape:u},e?t.baseAxis.model:null,r)}function lM(t,e){for(var n=0;n<e.length;n++)if(!isFinite(t[e[n]]))return!0;return!1}var uM=["x","y","width","height"],hM=["cx","cy","r","startAngle","endAngle"],cM={cartesian2d:function(t){return!lM(t,uM)},polar:function(t){return!lM(t,hM)}},pM={cartesian2d:function(t,e,n){var i=t.getItemLayout(e),r=n?function(t,e){var n=t.get(["itemStyle","borderColor"]);if(!n||"none"===n)return 0;var i=t.get(["itemStyle","borderWidth"])||0,r=isNaN(e.width)?Number.MAX_VALUE:Math.abs(e.width),o=isNaN(e.height)?Number.MAX_VALUE:Math.abs(e.height);return Math.min(i,r,o)}(n,i):0,o=i.width>0?1:-1,a=i.height>0?1:-1;return{x:i.x+o*r/2,y:i.y+a*r/2,width:i.width-o*r,height:i.height-a*r}},polar:function(t,e,n){var i=t.getItemLayout(e);return{cx:i.cx,cy:i.cy,r0:i.r0,r:i.r,startAngle:i.startAngle,endAngle:i.endAngle,clockwise:i.clockwise}}};function dM(t){return function(t){var e=t?"Arc":"Angle";return function(t){switch(t){case"start":case"insideStart":case"end":case"insideEnd":return t+e;default:return t}}}(t)}function fM(t,e,n,i,r,o,a,s){var l=e.getItemVisual(n,"style");if(s){if(!o.get("roundCap")){var u=t.shape;A(u,eM(i.getModel("itemStyle"),u,!0)),t.setShape(u)}}else{var h=i.get(["itemStyle","borderRadius"])||0;t.setShape("r",h)}t.useStyle(l);var c=i.getShallow("cursor");c&&t.attr("cursor",c);var p=s?a?r.r>=r.r0?"endArc":"startArc":r.endAngle>=r.startAngle?"endAngle":"startAngle":a?r.height>=0?"bottom":"top":r.width>=0?"right":"left",d=rc(i);ic(t,d,{labelFetcher:o,labelDataIndex:n,defaultText:pS(o.getData(),n),inheritColor:l.fill,defaultOpacity:l.opacity,defaultOutsidePosition:p});var f=t.getTextContent();if(s&&f){var g=i.get(["label","position"]);t.textConfig.inside="middle"===g||null,function(t,e,n,i){if(j(i))t.setTextConfig({rotation:i});else if(Y(e))t.setTextConfig({rotation:0});else{var r,o=t.shape,a=o.clockwise?o.startAngle:o.endAngle,s=o.clockwise?o.endAngle:o.startAngle,l=(a+s)/2,u=n(e);switch(u){case"startArc":case"insideStartArc":case"middle":case"insideEndArc":case"endArc":r=l;break;case"startAngle":case"insideStartAngle":r=a;break;case"endAngle":case"insideEndAngle":r=s;break;default:return void t.setTextConfig({rotation:0})}var h=1.5*Math.PI-r;"middle"===u&&h>Math.PI/2&&h<1.5*Math.PI&&(h-=Math.PI),t.setTextConfig({rotation:h})}}(t,"outside"===g?p:g,dM(a),i.get(["label","rotate"]))}dc(f,d,o.getRawValue(n),(function(t){return dS(e,t)}));var y=i.getModel(["emphasis"]);Zl(t,y.get("focus"),y.get("blurScope"),y.get("disabled")),$l(t,i),function(t){return null!=t.startAngle&&null!=t.endAngle&&t.startAngle===t.endAngle}(r)&&(t.style.fill="none",t.style.stroke="none",E(t.states,(function(t){t.style&&(t.style.fill=t.style.stroke="none")})))}var gM=function(){},yM=function(t){function e(e){var n=t.call(this,e)||this;return n.type="largeBar",n}return n(e,t),e.prototype.getDefaultShape=function(){return new gM},e.prototype.buildPath=function(t,e){for(var n=e.points,i=this.baseDimIdx,r=1-this.baseDimIdx,o=[],a=[],s=this.barWidth,l=0;l<n.length;l+=3)a[i]=s,a[r]=n[l+2],o[i]=n[l+i],o[r]=n[l+r],t.rect(o[0],o[1],a[0],a[1])},e}(ks);function vM(t,e,n,i){var r=t.getData(),o=r.getLayout("valueAxisHorizontal")?1:0,a=r.getLayout("largeDataIndices"),s=r.getLayout("size"),l=t.getModel("backgroundStyle"),u=r.getLayout("largeBackgroundPoints");if(u){var h=new yM({shape:{points:u},incremental:!!i,silent:!0,z2:0});h.baseDimIdx=o,h.largeDataIndices=a,h.barWidth=s,h.useStyle(l.getItemStyle()),e.add(h),n&&n.push(h)}var c=new yM({shape:{points:r.getLayout("largePoints")},incremental:!!i,ignoreCoarsePointer:!0,z2:1});c.baseDimIdx=o,c.largeDataIndices=a,c.barWidth=s,e.add(c),c.useStyle(r.getVisual("style")),rl(c).seriesIndex=t.seriesIndex,t.get("silent")||(c.on("mousedown",mM),c.on("mousemove",mM)),n&&n.push(c)}var mM=Wg((function(t){var e=function(t,e,n){for(var i=t.baseDimIdx,r=1-i,o=t.shape.points,a=t.largeDataIndices,s=[],l=[],u=t.barWidth,h=0,c=o.length/3;h<c;h++){var p=3*h;if(l[i]=u,l[r]=o[p+2],s[i]=o[p+i],s[r]=o[p+r],l[r]<0&&(s[r]+=l[r],l[r]=-l[r]),e>=s[0]&&e<=s[0]+l[0]&&n>=s[1]&&n<=s[1]+l[1])return a[h]}return-1}(this,t.offsetX,t.offsetY);rl(this).dataIndex=e>=0?e:null}),30,!1);function xM(t,e,n){if(OS(n,"cartesian2d")){var i=e,r=n.getArea();return{x:t?i.x:r.x,y:t?r.y:i.y,width:t?i.width:r.width,height:t?r.height:i.height}}var o=e;return{cx:(r=n.getArea()).cx,cy:r.cy,r0:t?r.r0:o.r0,r:t?r.r:o.r,startAngle:t?o.startAngle:0,endAngle:t?o.endAngle:2*Math.PI}}var _M=2*Math.PI,bM=Math.PI/180;function wM(t,e){return kp(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()})}function SM(t,e){var n=wM(t,e),i=t.get("center"),r=t.get("radius");Y(r)||(r=[0,r]);var o,a,s=$r(n.width,e.getWidth()),l=$r(n.height,e.getHeight()),u=Math.min(s,l),h=$r(r[0],u/2),c=$r(r[1],u/2),p=t.coordinateSystem;if(p){var d=p.dataToPoint(i);o=d[0]||0,a=d[1]||0}else Y(i)||(i=[i,i]),o=$r(i[0],s)+n.x,a=$r(i[1],l)+n.y;return{cx:o,cy:a,r0:h,r:c}}function MM(t,e,n){e.eachSeriesByType(t,(function(t){var e=t.getData(),i=e.mapDimension("value"),r=wM(t,n),o=SM(t,n),a=o.cx,s=o.cy,l=o.r,u=o.r0,h=-t.get("startAngle")*bM,c=t.get("endAngle"),p=t.get("padAngle")*bM;c="auto"===c?h-_M:-c*bM;var d=t.get("minAngle")*bM+p,f=0;e.each(i,(function(t){!isNaN(t)&&f++}));var g=e.getSum(i),y=Math.PI/(g||f)*2,v=t.get("clockwise"),m=t.get("roseType"),x=t.get("stillShowZeroSum"),_=e.getDataExtent(i);_[0]=0;var b=v?1:-1,w=[h,c],S=b*p/2;us(w,!v),h=w[0],c=w[1];var M=IM(t);M.startAngle=h,M.endAngle=c,M.clockwise=v;var I=Math.abs(c-h),T=I,C=0,D=h;if(e.setLayout({viewRect:r,r:l}),e.each(i,(function(t,n){var i;if(isNaN(t))e.setItemLayout(n,{angle:NaN,startAngle:NaN,endAngle:NaN,clockwise:v,cx:a,cy:s,r0:u,r:m?NaN:l});else{(i="area"!==m?0===g&&x?y:t*y:I/f)<d?(i=d,T-=d):C+=t;var r=D+b*i,o=0,h=0;p>i?h=o=D+b*i/2:(o=D+S,h=r-S),e.setItemLayout(n,{angle:i,startAngle:o,endAngle:h,clockwise:v,cx:a,cy:s,r0:u,r:m?Kr(t,_,[u,l]):l}),D=r}})),T<_M&&f)if(T<=.001){var A=I/f;e.each(i,(function(t,n){if(!isNaN(t)){var i=e.getItemLayout(n);i.angle=A;var r=0,o=0;A<p?o=r=h+b*(n+.5)*A:(r=h+b*n*A+S,o=h+b*(n+1)*A-S),i.startAngle=r,i.endAngle=o}}))}else y=T/C,D=h,e.each(i,(function(t,n){if(!isNaN(t)){var i=e.getItemLayout(n),r=i.angle===d?d:t*y,o=0,a=0;r<p?a=o=D+b*r/2:(o=D+S,a=D+b*r-S),i.startAngle=o,i.endAngle=a,D+=b*r}}))}))}var IM=Vo();function TM(t){return{seriesType:t,reset:function(t,e){var n=e.findComponents({mainType:"legend"});if(n&&n.length){var i=t.getData();i.filterSelf((function(t){for(var e=i.getName(t),r=0;r<n.length;r++)if(!n[r].isSelected(e))return!1;return!0}))}}}}var CM=Math.PI/180;function DM(t,e,n,i,r,o,a,s,l,u){if(!(t.length<2)){for(var h=t.length,c=0;c<h;c++)if("outer"===t[c].position&&"labelLine"===t[c].labelAlignTo){var p=t[c].label.x-u;t[c].linePoints[1][0]+=p,t[c].label.x=u}Rb(t,l,l+a)&&function(t){for(var o={list:[],maxY:0},a={list:[],maxY:0},s=0;s<t.length;s++)if("none"===t[s].labelAlignTo){var l=t[s],u=l.label.y>n?a:o,h=Math.abs(l.label.y-n);if(h>=u.maxY){var c=l.label.x-e-l.len2*r,p=i+l.len,f=Math.abs(c)<p?Math.sqrt(h*h/(1-c*c/p/p)):p;u.rB=f,u.maxY=h}u.list.push(l)}d(o),d(a)}(t)}function d(t){for(var o=t.rB,a=o*o,s=0;s<t.list.length;s++){var l=t.list[s],u=Math.abs(l.label.y-n),h=i+l.len,c=h*h,p=Math.sqrt((1-Math.abs(u*u/a))*c),d=e+(p+l.len2)*r,f=d-l.label.x;AM(l,l.targetTextWidth-f*r,!0),l.label.x=d}}}function AM(t,e,n){if(void 0===n&&(n=!1),null==t.labelStyleWidth){var i=t.label,r=i.style,o=t.rect,a=r.backgroundColor,s=r.padding,l=s?s[1]+s[3]:0,u=r.overflow,h=o.width+(a?0:l);if(e<h||n){var c=o.height;if(u&&u.match("break")){i.setStyle("backgroundColor",null),i.setStyle("width",e-l);var p=i.getBoundingRect();i.setStyle("width",Math.ceil(p.width)),i.setStyle("backgroundColor",a)}else{var d=e-l,f=e<h?d:n?d>t.unconstrainedWidth?null:d:null;i.setStyle("width",f)}var g=i.getBoundingRect();o.width=g.width;var y=(i.style.margin||0)+2.1;o.height=g.height+y,o.y-=(o.height-c)/2}}}function kM(t){return"center"===t.position}function LM(t){var e,n,i=t.getData(),r=[],o=!1,a=(t.get("minShowLabelAngle")||0)*CM,s=i.getLayout("viewRect"),l=i.getLayout("r"),u=s.width,h=s.x,c=s.y,p=s.height;function d(t){t.ignore=!0}i.each((function(t){var s=i.getItemGraphicEl(t),c=s.shape,p=s.getTextContent(),f=s.getTextGuideLine(),g=i.getItemModel(t),y=g.getModel("label"),v=y.get("position")||g.get(["emphasis","label","position"]),m=y.get("distanceToLabelLine"),x=y.get("alignTo"),_=$r(y.get("edgeDistance"),u),b=y.get("bleedMargin"),w=g.getModel("labelLine"),S=w.get("length");S=$r(S,u);var M=w.get("length2");if(M=$r(M,u),Math.abs(c.endAngle-c.startAngle)<a)return E(p.states,d),p.ignore=!0,void(f&&(E(f.states,d),f.ignore=!0));if(function(t){if(!t.ignore)return!0;for(var e in t.states)if(!1===t.states[e].ignore)return!0;return!1}(p)){var I,T,C,D,A=(c.startAngle+c.endAngle)/2,k=Math.cos(A),L=Math.sin(A);e=c.cx,n=c.cy;var P="inside"===v||"inner"===v;if("center"===v)I=c.cx,T=c.cy,D="center";else{var O=(P?(c.r+c.r0)/2*k:c.r*k)+e,R=(P?(c.r+c.r0)/2*L:c.r*L)+n;if(I=O+3*k,T=R+3*L,!P){var N=O+k*(S+l-c.r),z=R+L*(S+l-c.r),V=N+(k<0?-1:1)*M;I="edge"===x?k<0?h+_:h+u-_:V+(k<0?-m:m),T=z,C=[[O,R],[N,z],[V,z]]}D=P?"center":"edge"===x?k>0?"right":"left":k>0?"left":"right"}var B=Math.PI,F=0,G=y.get("rotate");if(j(G))F=G*(B/180);else if("center"===v)F=0;else if("radial"===G||!0===G){F=k<0?-A+B:-A}else if("tangential"===G&&"outside"!==v&&"outer"!==v){var W=Math.atan2(k,L);W<0&&(W=2*B+W),L>0&&(W=B+W),F=W-B}if(o=!!F,p.x=I,p.y=T,p.rotation=F,p.setStyle({verticalAlign:"middle"}),P){p.setStyle({align:D});var H=p.states.select;H&&(H.x+=p.x,H.y+=p.y)}else{var Y=p.getBoundingRect().clone();Y.applyTransform(p.getComputedTransform());var X=(p.style.margin||0)+2.1;Y.y-=X/2,Y.height+=X,r.push({label:p,labelLine:f,position:v,len:S,len2:M,minTurnAngle:w.get("minTurnAngle"),maxSurfaceAngle:w.get("maxSurfaceAngle"),surfaceNormal:new De(k,L),linePoints:C,textAlign:D,labelDistance:m,labelAlignTo:x,edgeDistance:_,bleedMargin:b,rect:Y,unconstrainedWidth:Y.width,labelStyleWidth:p.style.width})}s.setTextConfig({inside:P})}})),!o&&t.get("avoidLabelOverlap")&&function(t,e,n,i,r,o,a,s){for(var l=[],u=[],h=Number.MAX_VALUE,c=-Number.MAX_VALUE,p=0;p<t.length;p++){var d=t[p].label;kM(t[p])||(d.x<e?(h=Math.min(h,d.x),l.push(t[p])):(c=Math.max(c,d.x),u.push(t[p])))}for(p=0;p<t.length;p++)if(!kM(y=t[p])&&y.linePoints){if(null!=y.labelStyleWidth)continue;d=y.label;var f=y.linePoints,g=void 0;g="edge"===y.labelAlignTo?d.x<e?f[2][0]-y.labelDistance-a-y.edgeDistance:a+r-y.edgeDistance-f[2][0]-y.labelDistance:"labelLine"===y.labelAlignTo?d.x<e?h-a-y.bleedMargin:a+r-c-y.bleedMargin:d.x<e?d.x-a-y.bleedMargin:a+r-d.x-y.bleedMargin,y.targetTextWidth=g,AM(y,g)}for(DM(u,e,n,i,1,0,o,0,s,c),DM(l,e,n,i,-1,0,o,0,s,h),p=0;p<t.length;p++){var y;if(!kM(y=t[p])&&y.linePoints){d=y.label,f=y.linePoints;var v="edge"===y.labelAlignTo,m=d.style.padding,x=m?m[1]+m[3]:0,_=d.style.backgroundColor?0:x,b=y.rect.width+_,w=f[1][0]-f[2][0];v?d.x<e?f[2][0]=a+y.edgeDistance+b+y.labelDistance:f[2][0]=a+r-y.edgeDistance-b-y.labelDistance:(d.x<e?f[2][0]=d.x+y.labelDistance:f[2][0]=d.x-y.labelDistance,f[1][0]=f[2][0]+w),f[1][1]=f[2][1]=d.y}}}(r,e,n,l,u,p,h,c);for(var f=0;f<r.length;f++){var g=r[f],y=g.label,v=g.labelLine,m=isNaN(y.x)||isNaN(y.y);if(y){y.setStyle({align:g.textAlign}),m&&(E(y.states,d),y.ignore=!0);var x=y.states.select;x&&(x.x+=y.x,x.y+=y.y)}if(v){var _=g.linePoints;m||!_?(E(v.states,d),v.ignore=!0):(Tb(_,g.minTurnAngle),Cb(_,g.surfaceNormal,g.maxSurfaceAngle),v.setShape({points:_}),y.__hostTarget.textGuideLineConfig={anchor:new De(_[0][0],_[0][1])})}}}var PM=function(t){function e(e,n,i){var r=t.call(this)||this;r.z2=2;var o=new Xs;return r.setTextContent(o),r.updateData(e,n,i,!0),r}return n(e,t),e.prototype.updateData=function(t,e,n,i){var r=this,o=t.hostModel,a=t.getItemModel(e),s=a.getModel("emphasis"),l=t.getItemLayout(e),u=A(eM(a.getModel("itemStyle"),l,!0),l);if(isNaN(u.startAngle))r.setShape(u);else{if(i){r.setShape(u);var h=o.getShallow("animationType");o.ecModel.ssr?(mh(r,{scaleX:0,scaleY:0},o,{dataIndex:e,isFrom:!0}),r.originX=u.cx,r.originY=u.cy):"scale"===h?(r.shape.r=l.r0,mh(r,{shape:{r:l.r}},o,e)):null!=n?(r.setShape({startAngle:n,endAngle:n}),mh(r,{shape:{startAngle:l.startAngle,endAngle:l.endAngle}},o,e)):(r.shape.endAngle=l.startAngle,vh(r,{shape:{endAngle:l.endAngle}},o,e))}else Sh(r),vh(r,{shape:u},o,e);r.useStyle(t.getItemVisual(e,"style")),$l(r,a);var c=(l.startAngle+l.endAngle)/2,p=o.get("selectedOffset"),d=Math.cos(c)*p,f=Math.sin(c)*p,g=a.getShallow("cursor");g&&r.attr("cursor",g),this._updateLabel(o,t,e),r.ensureState("emphasis").shape=A({r:l.r+(s.get("scale")&&s.get("scaleSize")||0)},eM(s.getModel("itemStyle"),l)),A(r.ensureState("select"),{x:d,y:f,shape:eM(a.getModel(["select","itemStyle"]),l)}),A(r.ensureState("blur"),{shape:eM(a.getModel(["blur","itemStyle"]),l)});var y=r.getTextGuideLine(),v=r.getTextContent();y&&A(y.ensureState("select"),{x:d,y:f}),A(v.ensureState("select"),{x:d,y:f}),Zl(this,s.get("focus"),s.get("blurScope"),s.get("disabled"))}},e.prototype._updateLabel=function(t,e,n){var i=this,r=e.getItemModel(n),o=r.getModel("labelLine"),a=e.getItemVisual(n,"style"),s=a&&a.fill,l=a&&a.opacity;ic(i,rc(r),{labelFetcher:e.hostModel,labelDataIndex:n,inheritColor:s,defaultOpacity:l,defaultText:t.getFormattedLabel(n,"normal")||e.getName(n)});var u=i.getTextContent();i.setTextConfig({position:null,rotation:null}),u.attr({z2:10});var h=t.get(["label","position"]);if("outside"!==h&&"outer"!==h)i.removeTextGuideLine();else{var c=this.getTextGuideLine();c||(c=new Zu,this.setTextGuideLine(c)),kb(this,Lb(r),{stroke:s,opacity:ot(o.get(["lineStyle","opacity"]),l,1)})}},e}(Fu),OM=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.ignoreLabelLineUpdate=!0,e}return n(e,t),e.prototype.render=function(t,e,n,i){var r,o=t.getData(),a=this._data,s=this.group;if(!a&&o.count()>0){for(var l=o.getItemLayout(0),u=1;isNaN(l&&l.startAngle)&&u<o.count();++u)l=o.getItemLayout(u);l&&(r=l.startAngle)}if(this._emptyCircleSector&&s.remove(this._emptyCircleSector),0===o.count()&&t.get("showEmptyCircle")){var h=IM(t),c=new Fu({shape:A(SM(t,n),h)});c.useStyle(t.getModel("emptyCircleStyle").getItemStyle()),this._emptyCircleSector=c,s.add(c)}o.diff(a).add((function(t){var e=new PM(o,t,r);o.setItemGraphicEl(t,e),s.add(e)})).update((function(t,e){var n=a.getItemGraphicEl(e);n.updateData(o,t,r),n.off("click"),s.add(n),o.setItemGraphicEl(t,n)})).remove((function(e){wh(a.getItemGraphicEl(e),t,e)})).execute(),LM(t),"expansion"!==t.get("animationTypeUpdate")&&(this._data=o)},e.prototype.dispose=function(){},e.prototype.containPoint=function(t,e){var n=e.getData().getItemLayout(0);if(n){var i=t[0]-n.cx,r=t[1]-n.cy,o=Math.sqrt(i*i+r*r);return o<=n.r&&o>=n.r0}},e.type="pie",e}(Og);function RM(t,e,n){e=Y(e)&&{coordDimensions:e}||A({encodeDefine:t.getEncode()},e);var i=t.getSource(),r=px(i,e).dimensions,o=new cx(r,t);return o.initData(i,n),o}var NM=function(){function t(t,e){this._getDataWithEncodedVisual=t,this._getRawData=e}return t.prototype.getAllNames=function(){var t=this._getRawData();return t.mapArray(t.getName)},t.prototype.containName=function(t){return this._getRawData().indexOfName(t)>=0},t.prototype.indexOfName=function(t){return this._getDataWithEncodedVisual().indexOfName(t)},t.prototype.getItemVisual=function(t,e){return this._getDataWithEncodedVisual().getItemVisual(t,e)},t}(),EM=Vo(),zM=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.init=function(e){t.prototype.init.apply(this,arguments),this.legendVisualProvider=new NM(W(this.getData,this),W(this.getRawData,this)),this._defaultLabelLine(e)},e.prototype.mergeOption=function(){t.prototype.mergeOption.apply(this,arguments)},e.prototype.getInitialData=function(){return RM(this,{coordDimensions:["value"],encodeDefaulter:H(ed,this)})},e.prototype.getDataParams=function(e){var n=this.getData(),i=EM(n),r=i.seats;if(!r){var o=[];n.each(n.mapDimension("value"),(function(t){o.push(t)})),r=i.seats=io(o,n.hostModel.get("percentPrecision"))}var a=t.prototype.getDataParams.call(this,e);return a.percent=r[e]||0,a.$vars.push("percent"),a},e.prototype._defaultLabelLine=function(t){Co(t,"labelLine",["show"]);var e=t.labelLine,n=t.emphasis.labelLine;e.show=e.show&&t.label.show,n.show=n.show&&t.emphasis.label.show},e.type="series.pie",e.defaultOption={z:2,legendHoverLink:!0,colorBy:"data",center:["50%","50%"],radius:[0,"75%"],clockwise:!0,startAngle:90,endAngle:"auto",padAngle:0,minAngle:0,minShowLabelAngle:0,selectedOffset:10,percentPrecision:2,stillShowZeroSum:!0,left:0,top:0,right:0,bottom:0,width:null,height:null,label:{rotate:0,show:!0,overflow:"truncate",position:"outer",alignTo:"none",edgeDistance:"25%",bleedMargin:10,distanceToLabelLine:5},labelLine:{show:!0,length:15,length2:15,smooth:!1,minTurnAngle:90,maxSurfaceAngle:90,lineStyle:{width:1,type:"solid"}},itemStyle:{borderWidth:1,borderJoin:"round"},showEmptyCircle:!0,emptyCircleStyle:{color:"lightgray",opacity:1},labelLayout:{hideOverlap:!0},emphasis:{scale:!0,scaleSize:5},avoidLabelOverlap:!0,animationType:"expansion",animationDuration:1e3,animationTypeUpdate:"transition",animationEasingUpdate:"cubicInOut",animationDurationUpdate:500,animationEasing:"cubicInOut"},e}(bg);var VM=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.hasSymbolVisual=!0,n}return n(e,t),e.prototype.getInitialData=function(t,e){return _x(null,this,{useEncodeDefaulter:!0})},e.prototype.getProgressive=function(){var t=this.option.progressive;return null==t?this.option.large?5e3:this.get("progressive"):t},e.prototype.getProgressiveThreshold=function(){var t=this.option.progressiveThreshold;return null==t?this.option.large?1e4:this.get("progressiveThreshold"):t},e.prototype.brushSelector=function(t,e,n){return n.point(e.getItemLayout(t))},e.prototype.getZLevelKey=function(){return this.getData().count()>this.getProgressiveThreshold()?this.id:""},e.type="series.scatter",e.dependencies=["grid","polar","geo","singleAxis","calendar"],e.defaultOption={coordinateSystem:"cartesian2d",z:2,legendHoverLink:!0,symbolSize:10,large:!1,largeThreshold:2e3,itemStyle:{opacity:.8},emphasis:{scale:!0},clip:!0,select:{itemStyle:{borderColor:"#212121"}},universalTransition:{divideShape:"clone"}},e}(bg),BM=function(){},FM=function(t){function e(e){var n=t.call(this,e)||this;return n._off=0,n.hoverDataIdx=-1,n}return n(e,t),e.prototype.getDefaultShape=function(){return new BM},e.prototype.reset=function(){this.notClear=!1,this._off=0},e.prototype.buildPath=function(t,e){var n,i=e.points,r=e.size,o=this.symbolProxy,a=o.shape,s=t.getContext?t.getContext():t,l=s&&r[0]<4,u=this.softClipShape;if(l)this._ctx=s;else{for(this._ctx=null,n=this._off;n<i.length;){var h=i[n++],c=i[n++];isNaN(h)||isNaN(c)||(u&&!u.contain(h,c)||(a.x=h-r[0]/2,a.y=c-r[1]/2,a.width=r[0],a.height=r[1],o.buildPath(t,a,!0)))}this.incremental&&(this._off=n,this.notClear=!0)}},e.prototype.afterBrush=function(){var t,e=this.shape,n=e.points,i=e.size,r=this._ctx,o=this.softClipShape;if(r){for(t=this._off;t<n.length;){var a=n[t++],s=n[t++];isNaN(a)||isNaN(s)||(o&&!o.contain(a,s)||r.fillRect(a-i[0]/2,s-i[1]/2,i[0],i[1]))}this.incremental&&(this._off=t,this.notClear=!0)}},e.prototype.findDataIndex=function(t,e){for(var n=this.shape,i=n.points,r=n.size,o=Math.max(r[0],4),a=Math.max(r[1],4),s=i.length/2-1;s>=0;s--){var l=2*s,u=i[l]-o/2,h=i[l+1]-a/2;if(t>=u&&e>=h&&t<=u+o&&e<=h+a)return s}return-1},e.prototype.contain=function(t,e){var n=this.transformCoordToLocal(t,e),i=this.getBoundingRect();return t=n[0],e=n[1],i.contain(t,e)?(this.hoverDataIdx=this.findDataIndex(t,e))>=0:(this.hoverDataIdx=-1,!1)},e.prototype.getBoundingRect=function(){var t=this._rect;if(!t){for(var e=this.shape,n=e.points,i=e.size,r=i[0],o=i[1],a=1/0,s=1/0,l=-1/0,u=-1/0,h=0;h<n.length;){var c=n[h++],p=n[h++];a=Math.min(c,a),l=Math.max(c,l),s=Math.min(p,s),u=Math.max(p,u)}t=this._rect=new ze(a-r/2,s-o/2,l-a+r,u-s+o)}return t},e}(ks),GM=function(){function t(){this.group=new Br}return t.prototype.updateData=function(t,e){this._clear();var n=this._create();n.setShape({points:t.getLayout("points")}),this._setCommon(n,t,e)},t.prototype.updateLayout=function(t){var e=t.getLayout("points");this.group.eachChild((function(t){if(null!=t.startIndex){var n=2*(t.endIndex-t.startIndex),i=4*t.startIndex*2;e=new Float32Array(e.buffer,i,n)}t.setShape("points",e),t.reset()}))},t.prototype.incrementalPrepareUpdate=function(t){this._clear()},t.prototype.incrementalUpdate=function(t,e,n){var i=this._newAdded[0],r=e.getLayout("points"),o=i&&i.shape.points;if(o&&o.length<2e4){var a=o.length,s=new Float32Array(a+r.length);s.set(o),s.set(r,a),i.endIndex=t.end,i.setShape({points:s})}else{this._newAdded=[];var l=this._create();l.startIndex=t.start,l.endIndex=t.end,l.incremental=!0,l.setShape({points:r}),this._setCommon(l,e,n)}},t.prototype.eachRendered=function(t){this._newAdded[0]&&t(this._newAdded[0])},t.prototype._create=function(){var t=new FM({cursor:"default"});return t.ignoreCoarsePointer=!0,this.group.add(t),this._newAdded.push(t),t},t.prototype._setCommon=function(t,e,n){var i=e.hostModel;n=n||{};var r=e.getVisual("symbolSize");t.setShape("size",r instanceof Array?r:[r,r]),t.softClipShape=n.clipShape||null,t.symbolProxy=Xy(e.getVisual("symbol"),0,0,0,0),t.setColor=t.symbolProxy.setColor;var o=t.shape.size[0]<4;t.useStyle(i.getModel("itemStyle").getItemStyle(o?["color","shadowBlur","shadowColor"]:["color"]));var a=e.getVisual("style"),s=a&&a.fill;s&&t.setColor(s);var l=rl(t);l.seriesIndex=i.seriesIndex,t.on("mousemove",(function(e){l.dataIndex=null;var n=t.hoverDataIdx;n>=0&&(l.dataIndex=n+(t.startIndex||0))}))},t.prototype.remove=function(){this._clear()},t.prototype._clear=function(){this._newAdded=[],this.group.removeAll()},t}(),WM=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i=t.getData();this._updateSymbolDraw(i,t).updateData(i,{clipShape:this._getClipShape(t)}),this._finished=!0},e.prototype.incrementalPrepareRender=function(t,e,n){var i=t.getData();this._updateSymbolDraw(i,t).incrementalPrepareUpdate(i),this._finished=!1},e.prototype.incrementalRender=function(t,e,n){this._symbolDraw.incrementalUpdate(t,e.getData(),{clipShape:this._getClipShape(e)}),this._finished=t.end===e.getData().count()},e.prototype.updateTransform=function(t,e,n){var i=t.getData();if(this.group.dirty(),!this._finished||i.count()>1e4)return{update:!0};var r=XS("").reset(t,e,n);r.progress&&r.progress({start:0,end:i.count(),count:i.count()},i),this._symbolDraw.updateLayout(i)},e.prototype.eachRendered=function(t){this._symbolDraw&&this._symbolDraw.eachRendered(t)},e.prototype._getClipShape=function(t){if(t.get("clip",!0)){var e=t.coordinateSystem;return e&&e.getArea&&e.getArea(.1)}},e.prototype._updateSymbolDraw=function(t,e){var n=this._symbolDraw,i=e.pipelineContext.large;return n&&i===this._isLargeDraw||(n&&n.remove(),n=this._symbolDraw=i?new GM:new xS,this._isLargeDraw=i,this.group.removeAll()),this.group.add(n.group),n},e.prototype.remove=function(t,e){this._symbolDraw&&this._symbolDraw.remove(!0),this._symbolDraw=null},e.prototype.dispose=function(){},e.type="scatter",e}(Og),HM=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.type="grid",e.dependencies=["xAxis","yAxis"],e.layoutMode="box",e.defaultOption={show:!1,z:0,left:"10%",top:60,right:"10%",bottom:70,containLabel:!1,backgroundColor:"rgba(0,0,0,0)",borderWidth:1,borderColor:"#ccc"},e}(zp),YM=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.getCoordSysModel=function(){return this.getReferringComponents("grid",Wo).models[0]},e.type="cartesian2dAxis",e}(zp);R(YM,D_);var XM={show:!0,z:0,inverse:!1,name:"",nameLocation:"end",nameRotate:null,nameTruncate:{maxWidth:null,ellipsis:"...",placeholder:"."},nameTextStyle:{},nameGap:15,silent:!1,triggerEvent:!1,tooltip:{show:!1},axisPointer:{},axisLine:{show:!0,onZero:!0,onZeroAxisIndex:null,lineStyle:{color:"#6E7079",width:1,type:"solid"},symbol:["none","none"],symbolSize:[10,15]},axisTick:{show:!0,inside:!1,length:5,lineStyle:{width:1}},axisLabel:{show:!0,inside:!1,rotate:0,showMinLabel:null,showMaxLabel:null,margin:8,fontSize:12},splitLine:{show:!0,lineStyle:{color:["#E0E6F1"],width:1,type:"solid"}},splitArea:{show:!1,areaStyle:{color:["rgba(250,250,250,0.2)","rgba(210,219,238,0.2)"]}}},UM=C({boundaryGap:!0,deduplication:null,splitLine:{show:!1},axisTick:{alignWithLabel:!1,interval:"auto"},axisLabel:{interval:"auto"}},XM),ZM=C({boundaryGap:[0,0],axisLine:{show:"auto"},axisTick:{show:"auto"},splitNumber:5,minorTick:{show:!1,splitNumber:5,length:3,lineStyle:{}},minorSplitLine:{show:!1,lineStyle:{color:"#F4F7FD",width:1}}},XM),jM={category:UM,value:ZM,time:C({splitNumber:6,axisLabel:{showMinLabel:!1,showMaxLabel:!1,rich:{primary:{fontWeight:"bold"}}},splitLine:{show:!1}},ZM),log:k({logBase:10},ZM)},qM={value:1,category:1,time:1,log:1};function KM(t,e,i,r){E(qM,(function(o,a){var s=C(C({},jM[a],!0),r,!0),l=function(t){function i(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e+"Axis."+a,n}return n(i,t),i.prototype.mergeDefaultAndTheme=function(t,e){var n=Pp(this),i=n?Rp(t):{};C(t,e.getTheme().get(a+"Axis")),C(t,this.getDefaultOption()),t.type=$M(t),n&&Op(t,i,n)},i.prototype.optionUpdated=function(){"category"===this.option.type&&(this.__ordinalMeta=Mx.createByAxisModel(this))},i.prototype.getCategories=function(t){var e=this.option;if("category"===e.type)return t?e.data:this.__ordinalMeta.categories},i.prototype.getOrdinalMeta=function(){return this.__ordinalMeta},i.type=e+"Axis."+a,i.defaultOption=s,i}(i);t.registerComponentModel(l)})),t.registerSubTypeDefaulter(e+"Axis",$M)}function $M(t){return t.type||(t.data?"category":"value")}var JM=function(){function t(t){this.type="cartesian",this._dimList=[],this._axes={},this.name=t||""}return t.prototype.getAxis=function(t){return this._axes[t]},t.prototype.getAxes=function(){return z(this._dimList,(function(t){return this._axes[t]}),this)},t.prototype.getAxesByScale=function(t){return t=t.toLowerCase(),B(this.getAxes(),(function(e){return e.scale.type===t}))},t.prototype.addAxis=function(t){var e=t.dim;this._axes[e]=t,this._dimList.push(e)},t}(),QM=["x","y"];function tI(t){return"interval"===t.type||"time"===t.type}var eI=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="cartesian2d",e.dimensions=QM,e}return n(e,t),e.prototype.calcAffineTransform=function(){this._transform=this._invTransform=null;var t=this.getAxis("x").scale,e=this.getAxis("y").scale;if(tI(t)&&tI(e)){var n=t.getExtent(),i=e.getExtent(),r=this.dataToPoint([n[0],i[0]]),o=this.dataToPoint([n[1],i[1]]),a=n[1]-n[0],s=i[1]-i[0];if(a&&s){var l=(o[0]-r[0])/a,u=(o[1]-r[1])/s,h=r[0]-n[0]*l,c=r[1]-i[0]*u,p=this._transform=[l,0,0,u,h,c];this._invTransform=Ie([],p)}}},e.prototype.getBaseAxis=function(){return this.getAxesByScale("ordinal")[0]||this.getAxesByScale("time")[0]||this.getAxis("x")},e.prototype.containPoint=function(t){var e=this.getAxis("x"),n=this.getAxis("y");return e.contain(e.toLocalCoord(t[0]))&&n.contain(n.toLocalCoord(t[1]))},e.prototype.containData=function(t){return this.getAxis("x").containData(t[0])&&this.getAxis("y").containData(t[1])},e.prototype.containZone=function(t,e){var n=this.dataToPoint(t),i=this.dataToPoint(e),r=this.getArea(),o=new ze(n[0],n[1],i[0]-n[0],i[1]-n[1]);return r.intersect(o)},e.prototype.dataToPoint=function(t,e,n){n=n||[];var i=t[0],r=t[1];if(this._transform&&null!=i&&isFinite(i)&&null!=r&&isFinite(r))return Wt(n,t,this._transform);var o=this.getAxis("x"),a=this.getAxis("y");return n[0]=o.toGlobalCoord(o.dataToCoord(i,e)),n[1]=a.toGlobalCoord(a.dataToCoord(r,e)),n},e.prototype.clampData=function(t,e){var n=this.getAxis("x").scale,i=this.getAxis("y").scale,r=n.getExtent(),o=i.getExtent(),a=n.parse(t[0]),s=i.parse(t[1]);return(e=e||[])[0]=Math.min(Math.max(Math.min(r[0],r[1]),a),Math.max(r[0],r[1])),e[1]=Math.min(Math.max(Math.min(o[0],o[1]),s),Math.max(o[0],o[1])),e},e.prototype.pointToData=function(t,e){var n=[];if(this._invTransform)return Wt(n,t,this._invTransform);var i=this.getAxis("x"),r=this.getAxis("y");return n[0]=i.coordToData(i.toLocalCoord(t[0]),e),n[1]=r.coordToData(r.toLocalCoord(t[1]),e),n},e.prototype.getOtherAxis=function(t){return this.getAxis("x"===t.dim?"y":"x")},e.prototype.getArea=function(t){t=t||0;var e=this.getAxis("x").getGlobalExtent(),n=this.getAxis("y").getGlobalExtent(),i=Math.min(e[0],e[1])-t,r=Math.min(n[0],n[1])-t,o=Math.max(e[0],e[1])-i+t,a=Math.max(n[0],n[1])-r+t;return new ze(i,r,o,a)},e}(JM),nI=function(t){function e(e,n,i,r,o){var a=t.call(this,e,n,i)||this;return a.index=0,a.type=r||"value",a.position=o||"bottom",a}return n(e,t),e.prototype.isHorizontal=function(){var t=this.position;return"top"===t||"bottom"===t},e.prototype.getGlobalExtent=function(t){var e=this.getExtent();return e[0]=this.toGlobalCoord(e[0]),e[1]=this.toGlobalCoord(e[1]),t&&e[0]>e[1]&&e.reverse(),e},e.prototype.pointToData=function(t,e){return this.coordToData(this.toLocalCoord(t["x"===this.dim?0:1]),e)},e.prototype.setCategorySortInfo=function(t){if("category"!==this.type)return!1;this.model.option.categorySortInfo=t,this.scale.setSortInfo(t)},e}(ab);function iI(t,e,n){n=n||{};var i=t.coordinateSystem,r=e.axis,o={},a=r.getAxesOnZeroOf()[0],s=r.position,l=a?"onZero":s,u=r.dim,h=i.getRect(),c=[h.x,h.x+h.width,h.y,h.y+h.height],p={left:0,right:1,top:0,bottom:1,onZero:2},d=e.get("offset")||0,f="x"===u?[c[2]-d,c[3]+d]:[c[0]-d,c[1]+d];if(a){var g=a.toGlobalCoord(a.dataToCoord(0));f[p.onZero]=Math.max(Math.min(g,f[1]),f[0])}o.position=["y"===u?f[p[l]]:c[0],"x"===u?f[p[l]]:c[3]],o.rotation=Math.PI/2*("x"===u?0:1);o.labelDirection=o.tickDirection=o.nameDirection={top:-1,bottom:1,left:-1,right:1}[s],o.labelOffset=a?f[p[s]]-f[p.onZero]:0,e.get(["axisTick","inside"])&&(o.tickDirection=-o.tickDirection),it(n.labelInside,e.get(["axisLabel","inside"]))&&(o.labelDirection=-o.labelDirection);var y=e.get(["axisLabel","rotate"]);return o.labelRotate="top"===l?-y:y,o.z2=1,o}function rI(t){return"cartesian2d"===t.get("coordinateSystem")}function oI(t){var e={xAxisModel:null,yAxisModel:null};return E(e,(function(n,i){var r=i.replace(/Model$/,""),o=t.getReferringComponents(r,Wo).models[0];e[i]=o})),e}var aI=Math.log;function sI(t,e,n){var i=Ex.prototype,r=i.getTicks.call(n),o=i.getTicks.call(n,!0),a=r.length-1,s=i.getInterval.call(n),l=x_(t,e),u=l.extent,h=l.fixMin,c=l.fixMax;if("log"===t.type){var p=aI(t.base);u=[aI(u[0])/p,aI(u[1])/p]}t.setExtent(u[0],u[1]),t.calcNiceExtent({splitNumber:a,fixMin:h,fixMax:c});var d=i.getExtent.call(t);h&&(u[0]=d[0]),c&&(u[1]=d[1]);var f=i.getInterval.call(t),g=u[0],y=u[1];if(h&&c)f=(y-g)/a;else if(h)for(y=u[0]+f*a;y<u[1]&&isFinite(y)&&isFinite(u[1]);)f=Dx(f),y=u[0]+f*a;else if(c)for(g=u[1]-f*a;g>u[0]&&isFinite(g)&&isFinite(u[0]);)f=Dx(f),g=u[1]-f*a;else{t.getTicks().length-1>a&&(f=Dx(f));var v=f*a;(g=Jr((y=Math.ceil(u[1]/f)*f)-v))<0&&u[0]>=0?(g=0,y=Jr(v)):y>0&&u[1]<=0&&(y=0,g=-Jr(v))}var m=(r[0].value-o[0].value)/s,x=(r[a].value-o[a].value)/s;i.setExtent.call(t,g+f*m,y+f*x),i.setInterval.call(t,f),(m||x)&&i.setNiceExtent.call(t,g+f,y-f)}var lI=function(){function t(t,e,n){this.type="grid",this._coordsMap={},this._coordsList=[],this._axesMap={},this._axesList=[],this.axisPointerEnabled=!0,this.dimensions=QM,this._initCartesian(t,e,n),this.model=t}return t.prototype.getRect=function(){return this._rect},t.prototype.update=function(t,e){var n=this._axesMap;function i(t){var e,n=G(t),i=n.length;if(i){for(var r=[],o=i-1;o>=0;o--){var a=t[+n[o]],s=a.model,l=a.scale;Tx(l)&&s.get("alignTicks")&&null==s.get("interval")?r.push(a):(__(l,s),Tx(l)&&(e=a))}r.length&&(e||__((e=r.pop()).scale,e.model),E(r,(function(t){sI(t.scale,t.model,e.scale)})))}}this._updateScale(t,this.model),i(n.x),i(n.y);var r={};E(n.x,(function(t){hI(n,"y",t,r)})),E(n.y,(function(t){hI(n,"x",t,r)})),this.resize(this.model,e)},t.prototype.resize=function(t,e,n){var i=t.getBoxLayoutParams(),r=!n&&t.get("containLabel"),o=kp(i,{width:e.getWidth(),height:e.getHeight()});this._rect=o;var a=this._axesList;function s(){E(a,(function(t){var e=t.isHorizontal(),n=e?[0,o.width]:[0,o.height],i=t.inverse?1:0;t.setExtent(n[i],n[1-i]),function(t,e){var n=t.getExtent(),i=n[0]+n[1];t.toGlobalCoord="x"===t.dim?function(t){return t+e}:function(t){return i-t+e},t.toLocalCoord="x"===t.dim?function(t){return t-e}:function(t){return i-t+e}}(t,e?o.x:o.y)}))}s(),r&&(E(a,(function(t){if(!t.model.get(["axisLabel","inside"])){var e=function(t){var e=t.model,n=t.scale;if(e.get(["axisLabel","show"])&&!n.isBlank()){var i,r,o=n.getExtent();r=n instanceof Rx?n.count():(i=n.getTicks()).length;var a,s=t.getLabelModel(),l=w_(t),u=1;r>40&&(u=Math.ceil(r/40));for(var h=0;h<r;h+=u){var c=l(i?i[h]:{value:o[0]+h},h),p=M_(s.getTextRect(c),s.get("rotate")||0);a?a.union(p):a=p}return a}}(t);if(e){var n=t.isHorizontal()?"height":"width",i=t.model.get(["axisLabel","margin"]);o[n]-=e[n]+i,"top"===t.position?o.y+=e.height+i:"left"===t.position&&(o.x+=e.width+i)}}})),s()),E(this._coordsList,(function(t){t.calcAffineTransform()}))},t.prototype.getAxis=function(t,e){var n=this._axesMap[t];if(null!=n)return n[e||0]},t.prototype.getAxes=function(){return this._axesList.slice()},t.prototype.getCartesian=function(t,e){if(null!=t&&null!=e){var n="x"+t+"y"+e;return this._coordsMap[n]}q(t)&&(e=t.yAxisIndex,t=t.xAxisIndex);for(var i=0,r=this._coordsList;i<r.length;i++)if(r[i].getAxis("x").index===t||r[i].getAxis("y").index===e)return r[i]},t.prototype.getCartesians=function(){return this._coordsList.slice()},t.prototype.convertToPixel=function(t,e,n){var i=this._findConvertTarget(e);return i.cartesian?i.cartesian.dataToPoint(n):i.axis?i.axis.toGlobalCoord(i.axis.dataToCoord(n)):null},t.prototype.convertFromPixel=function(t,e,n){var i=this._findConvertTarget(e);return i.cartesian?i.cartesian.pointToData(n):i.axis?i.axis.coordToData(i.axis.toLocalCoord(n)):null},t.prototype._findConvertTarget=function(t){var e,n,i=t.seriesModel,r=t.xAxisModel||i&&i.getReferringComponents("xAxis",Wo).models[0],o=t.yAxisModel||i&&i.getReferringComponents("yAxis",Wo).models[0],a=t.gridModel,s=this._coordsList;if(i)P(s,e=i.coordinateSystem)<0&&(e=null);else if(r&&o)e=this.getCartesian(r.componentIndex,o.componentIndex);else if(r)n=this.getAxis("x",r.componentIndex);else if(o)n=this.getAxis("y",o.componentIndex);else if(a){a.coordinateSystem===this&&(e=this._coordsList[0])}return{cartesian:e,axis:n}},t.prototype.containPoint=function(t){var e=this._coordsList[0];if(e)return e.containPoint(t)},t.prototype._initCartesian=function(t,e,n){var i=this,r=this,o={left:!1,right:!1,top:!1,bottom:!1},a={x:{},y:{}},s={x:0,y:0};if(e.eachComponent("xAxis",l("x"),this),e.eachComponent("yAxis",l("y"),this),!s.x||!s.y)return this._axesMap={},void(this._axesList=[]);function l(e){return function(n,i){if(uI(n,t)){var l=n.get("position");"x"===e?"top"!==l&&"bottom"!==l&&(l=o.bottom?"top":"bottom"):"left"!==l&&"right"!==l&&(l=o.left?"right":"left"),o[l]=!0;var u=new nI(e,b_(n),[0,0],n.get("type"),l),h="category"===u.type;u.onBand=h&&n.get("boundaryGap"),u.inverse=n.get("inverse"),n.axis=u,u.model=n,u.grid=r,u.index=i,r._axesList.push(u),a[e][i]=u,s[e]++}}}this._axesMap=a,E(a.x,(function(e,n){E(a.y,(function(r,o){var a="x"+n+"y"+o,s=new eI(a);s.master=i,s.model=t,i._coordsMap[a]=s,i._coordsList.push(s),s.addAxis(e),s.addAxis(r)}))}))},t.prototype._updateScale=function(t,e){function n(t,e){E(C_(t,e.dim),(function(n){e.scale.unionExtentFromData(t,n)}))}E(this._axesList,(function(t){if(t.scale.setExtent(1/0,-1/0),"category"===t.type){var e=t.model.get("categorySortInfo");t.scale.setSortInfo(e)}})),t.eachSeries((function(t){if(rI(t)){var i=oI(t),r=i.xAxisModel,o=i.yAxisModel;if(!uI(r,e)||!uI(o,e))return;var a=this.getCartesian(r.componentIndex,o.componentIndex),s=t.getData(),l=a.getAxis("x"),u=a.getAxis("y");n(s,l),n(s,u)}}),this)},t.prototype.getTooltipAxes=function(t){var e=[],n=[];return E(this.getCartesians(),(function(i){var r=null!=t&&"auto"!==t?i.getAxis(t):i.getBaseAxis(),o=i.getOtherAxis(r);P(e,r)<0&&e.push(r),P(n,o)<0&&n.push(o)})),{baseAxes:e,otherAxes:n}},t.create=function(e,n){var i=[];return e.eachComponent("grid",(function(r,o){var a=new t(r,e,n);a.name="grid_"+o,a.resize(r,n,!0),r.coordinateSystem=a,i.push(a)})),e.eachSeries((function(t){if(rI(t)){var e=oI(t),n=e.xAxisModel,i=e.yAxisModel,r=n.getCoordSysModel();0;var o=r.coordinateSystem;t.coordinateSystem=o.getCartesian(n.componentIndex,i.componentIndex)}})),i},t.dimensions=QM,t}();function uI(t,e){return t.getCoordSysModel()===e}function hI(t,e,n,i){n.getAxesOnZeroOf=function(){return r?[r]:[]};var r,o=t[e],a=n.model,s=a.get(["axisLine","onZero"]),l=a.get(["axisLine","onZeroAxisIndex"]);if(s){if(null!=l)cI(o[l])&&(r=o[l]);else for(var u in o)if(o.hasOwnProperty(u)&&cI(o[u])&&!i[h(o[u])]){r=o[u];break}r&&(i[h(r)]=!0)}function h(t){return t.dim+"_"+t.index}}function cI(t){return t&&"category"!==t.type&&"time"!==t.type&&function(t){var e=t.scale.getExtent(),n=e[0],i=e[1];return!(n>0&&i>0||n<0&&i<0)}(t)}var pI=Math.PI,dI=function(){function t(t,e){this.group=new Br,this.opt=e,this.axisModel=t,k(e,{labelOffset:0,nameDirection:1,tickDirection:1,labelDirection:1,silent:!0,handleAutoShown:function(){return!0}});var n=new Br({x:e.position[0],y:e.position[1],rotation:e.rotation});n.updateTransform(),this._transformGroup=n}return t.prototype.hasBuilder=function(t){return!!fI[t]},t.prototype.add=function(t){fI[t](this.opt,this.axisModel,this.group,this._transformGroup)},t.prototype.getGroup=function(){return this.group},t.innerTextLayout=function(t,e,n){var i,r,o=ao(e-t);return so(o)?(r=n>0?"top":"bottom",i="center"):so(o-pI)?(r=n>0?"bottom":"top",i="center"):(r="middle",i=o>0&&o<pI?n>0?"right":"left":n>0?"left":"right"),{rotation:o,textAlign:i,textVerticalAlign:r}},t.makeAxisEventDataBase=function(t){var e={componentType:t.mainType,componentIndex:t.componentIndex};return e[t.mainType+"Index"]=t.componentIndex,e},t.isLabelSilent=function(t){var e=t.get("tooltip");return t.get("silent")||!(t.get("triggerEvent")||e&&e.show)},t}(),fI={axisLine:function(t,e,n,i){var r=e.get(["axisLine","show"]);if("auto"===r&&t.handleAutoShown&&(r=t.handleAutoShown("axisLine")),r){var o=e.axis.getExtent(),a=i.transform,s=[o[0],0],l=[o[1],0],u=s[0]>l[0];a&&(Wt(s,s,a),Wt(l,l,a));var h=A({lineCap:"round"},e.getModel(["axisLine","lineStyle"]).getLineStyle()),c=new Ku({shape:{x1:s[0],y1:s[1],x2:l[0],y2:l[1]},style:h,strokeContainThreshold:t.strokeContainThreshold||5,silent:!0,z2:1});zh(c.shape,c.style.lineWidth),c.anid="line",n.add(c);var p=e.get(["axisLine","symbol"]);if(null!=p){var d=e.get(["axisLine","symbolSize"]);U(p)&&(p=[p,p]),(U(d)||j(d))&&(d=[d,d]);var f=Zy(e.get(["axisLine","symbolOffset"])||0,d),g=d[0],y=d[1];E([{rotate:t.rotation+Math.PI/2,offset:f[0],r:0},{rotate:t.rotation-Math.PI/2,offset:f[1],r:Math.sqrt((s[0]-l[0])*(s[0]-l[0])+(s[1]-l[1])*(s[1]-l[1]))}],(function(e,i){if("none"!==p[i]&&null!=p[i]){var r=Xy(p[i],-g/2,-y/2,g,y,h.stroke,!0),o=e.r+e.offset,a=u?l:s;r.attr({rotation:e.rotate,x:a[0]+o*Math.cos(t.rotation),y:a[1]-o*Math.sin(t.rotation),silent:!0,z2:11}),n.add(r)}}))}}},axisTickLabel:function(t,e,n,i){var r=function(t,e,n,i){var r=n.axis,o=n.getModel("axisTick"),a=o.get("show");"auto"===a&&i.handleAutoShown&&(a=i.handleAutoShown("axisTick"));if(!a||r.scale.isBlank())return;for(var s=o.getModel("lineStyle"),l=i.tickDirection*o.get("length"),u=mI(r.getTicksCoords(),e.transform,l,k(s.getLineStyle(),{stroke:n.get(["axisLine","lineStyle","color"])}),"ticks"),h=0;h<u.length;h++)t.add(u[h]);return u}(n,i,e,t),o=function(t,e,n,i){var r=n.axis,o=it(i.axisLabelShow,n.get(["axisLabel","show"]));if(!o||r.scale.isBlank())return;var a=n.getModel("axisLabel"),s=a.get("margin"),l=r.getViewLabels(),u=(it(i.labelRotate,a.get("rotate"))||0)*pI/180,h=dI.innerTextLayout(i.rotation,u,i.labelDirection),c=n.getCategories&&n.getCategories(!0),p=[],d=dI.isLabelSilent(n),f=n.get("triggerEvent");return E(l,(function(o,u){var g="ordinal"===r.scale.type?r.scale.getRawOrdinalNumber(o.tickValue):o.tickValue,y=o.formattedLabel,v=o.rawLabel,m=a;if(c&&c[g]){var x=c[g];q(x)&&x.textStyle&&(m=new Cc(x.textStyle,a,n.ecModel))}var _=m.getTextColor()||n.get(["axisLine","lineStyle","color"]),b=r.dataToCoord(g),w=m.getShallow("align",!0)||h.textAlign,S=rt(m.getShallow("alignMinLabel",!0),w),M=rt(m.getShallow("alignMaxLabel",!0),w),I=m.getShallow("verticalAlign",!0)||m.getShallow("baseline",!0)||h.textVerticalAlign,T=rt(m.getShallow("verticalAlignMinLabel",!0),I),C=rt(m.getShallow("verticalAlignMaxLabel",!0),I),D=new Xs({x:b,y:i.labelOffset+i.labelDirection*s,rotation:h.rotation,silent:d,z2:10+(o.level||0),style:oc(m,{text:y,align:0===u?S:u===l.length-1?M:w,verticalAlign:0===u?T:u===l.length-1?C:I,fill:X(_)?_("category"===r.type?v:"value"===r.type?g+"":g,u):_})});if(D.anid="label_"+g,f){var A=dI.makeAxisEventDataBase(n);A.targetType="axisLabel",A.value=v,A.tickIndex=u,"category"===r.type&&(A.dataIndex=g),rl(D).eventData=A}e.add(D),D.updateTransform(),p.push(D),t.add(D),D.decomposeTransform()})),p}(n,i,e,t);(function(t,e,n){if(T_(t.axis))return;var i=t.get(["axisLabel","showMinLabel"]),r=t.get(["axisLabel","showMaxLabel"]);e=e||[],n=n||[];var o=e[0],a=e[1],s=e[e.length-1],l=e[e.length-2],u=n[0],h=n[1],c=n[n.length-1],p=n[n.length-2];!1===i?(gI(o),gI(u)):yI(o,a)&&(i?(gI(a),gI(h)):(gI(o),gI(u)));!1===r?(gI(s),gI(c)):yI(l,s)&&(r?(gI(l),gI(p)):(gI(s),gI(c)))}(e,o,r),function(t,e,n,i){var r=n.axis,o=n.getModel("minorTick");if(!o.get("show")||r.scale.isBlank())return;var a=r.getMinorTicksCoords();if(!a.length)return;for(var s=o.getModel("lineStyle"),l=i*o.get("length"),u=k(s.getLineStyle(),k(n.getModel("axisTick").getLineStyle(),{stroke:n.get(["axisLine","lineStyle","color"])})),h=0;h<a.length;h++)for(var c=mI(a[h],e.transform,l,u,"minorticks_"+h),p=0;p<c.length;p++)t.add(c[p])}(n,i,e,t.tickDirection),e.get(["axisLabel","hideOverlap"]))&&Nb(Pb(z(o,(function(t){return{label:t,priority:t.z2,defaultAttr:{ignore:t.ignore}}}))))},axisName:function(t,e,n,i){var r=it(t.axisName,e.get("name"));if(r){var o,a,s=e.get("nameLocation"),l=t.nameDirection,u=e.getModel("nameTextStyle"),h=e.get("nameGap")||0,c=e.axis.getExtent(),p=c[0]>c[1]?-1:1,d=["start"===s?c[0]-p*h:"end"===s?c[1]+p*h:(c[0]+c[1])/2,vI(s)?t.labelOffset+l*h:0],f=e.get("nameRotate");null!=f&&(f=f*pI/180),vI(s)?o=dI.innerTextLayout(t.rotation,null!=f?f:t.rotation,l):(o=function(t,e,n,i){var r,o,a=ao(n-t),s=i[0]>i[1],l="start"===e&&!s||"start"!==e&&s;so(a-pI/2)?(o=l?"bottom":"top",r="center"):so(a-1.5*pI)?(o=l?"top":"bottom",r="center"):(o="middle",r=a<1.5*pI&&a>pI/2?l?"left":"right":l?"right":"left");return{rotation:a,textAlign:r,textVerticalAlign:o}}(t.rotation,s,f||0,c),null!=(a=t.axisNameAvailableWidth)&&(a=Math.abs(a/Math.sin(o.rotation)),!isFinite(a)&&(a=null)));var g=u.getFont(),y=e.get("nameTruncate",!0)||{},v=y.ellipsis,m=it(t.nameTruncateMaxWidth,y.maxWidth,a),x=new Xs({x:d[0],y:d[1],rotation:o.rotation,silent:dI.isLabelSilent(e),style:oc(u,{text:r,font:g,overflow:"truncate",width:m,ellipsis:v,fill:u.getTextColor()||e.get(["axisLine","lineStyle","color"]),align:u.get("align")||o.textAlign,verticalAlign:u.get("verticalAlign")||o.textVerticalAlign}),z2:1});if(Kh({el:x,componentModel:e,itemName:r}),x.__fullText=r,x.anid="name",e.get("triggerEvent")){var _=dI.makeAxisEventDataBase(e);_.targetType="axisName",_.name=r,rl(x).eventData=_}i.add(x),x.updateTransform(),n.add(x),x.decomposeTransform()}}};function gI(t){t&&(t.ignore=!0)}function yI(t,e){var n=t&&t.getBoundingRect().clone(),i=e&&e.getBoundingRect().clone();if(n&&i){var r=xe([]);return Se(r,r,-t.rotation),n.applyTransform(be([],r,t.getLocalTransform())),i.applyTransform(be([],r,e.getLocalTransform())),n.intersect(i)}}function vI(t){return"middle"===t||"center"===t}function mI(t,e,n,i,r){for(var o=[],a=[],s=[],l=0;l<t.length;l++){var u=t[l].coord;a[0]=u,a[1]=0,s[0]=u,s[1]=n,e&&(Wt(a,a,e),Wt(s,s,e));var h=new Ku({shape:{x1:a[0],y1:a[1],x2:s[0],y2:s[1]},style:i,z2:2,autoBatch:!0,silent:!0});zh(h.shape,h.style.lineWidth),h.anid=r+"_"+t[l].tickValue,o.push(h)}return o}function xI(t,e){var n={axesInfo:{},seriesInvolved:!1,coordSysAxesInfo:{},coordSysMap:{}};return function(t,e,n){var i=e.getComponent("tooltip"),r=e.getComponent("axisPointer"),o=r.get("link",!0)||[],a=[];E(n.getCoordinateSystems(),(function(n){if(n.axisPointerEnabled){var s=MI(n.model),l=t.coordSysAxesInfo[s]={};t.coordSysMap[s]=n;var u=n.model.getModel("tooltip",i);if(E(n.getAxes(),H(d,!1,null)),n.getTooltipAxes&&i&&u.get("show")){var h="axis"===u.get("trigger"),c="cross"===u.get(["axisPointer","type"]),p=n.getTooltipAxes(u.get(["axisPointer","axis"]));(h||c)&&E(p.baseAxes,H(d,!c||"cross",h)),c&&E(p.otherAxes,H(d,"cross",!1))}}function d(i,s,h){var c=h.model.getModel("axisPointer",r),p=c.get("show");if(p&&("auto"!==p||i||SI(c))){null==s&&(s=c.get("triggerTooltip")),c=i?function(t,e,n,i,r,o){var a=e.getModel("axisPointer"),s={};E(["type","snap","lineStyle","shadowStyle","label","animation","animationDurationUpdate","animationEasingUpdate","z"],(function(t){s[t]=T(a.get(t))})),s.snap="category"!==t.type&&!!o,"cross"===a.get("type")&&(s.type="line");var l=s.label||(s.label={});if(null==l.show&&(l.show=!1),"cross"===r){var u=a.get(["label","show"]);if(l.show=null==u||u,!o){var h=s.lineStyle=a.get("crossStyle");h&&k(l,h.textStyle)}}return t.model.getModel("axisPointer",new Cc(s,n,i))}(h,u,r,e,i,s):c;var d=c.get("snap"),f=c.get("triggerEmphasis"),g=MI(h.model),y=s||d||"category"===h.type,v=t.axesInfo[g]={key:g,axis:h,coordSys:n,axisPointerModel:c,triggerTooltip:s,triggerEmphasis:f,involveSeries:y,snap:d,useHandle:SI(c),seriesModels:[],linkGroup:null};l[g]=v,t.seriesInvolved=t.seriesInvolved||y;var m=function(t,e){for(var n=e.model,i=e.dim,r=0;r<t.length;r++){var o=t[r]||{};if(_I(o[i+"AxisId"],n.id)||_I(o[i+"AxisIndex"],n.componentIndex)||_I(o[i+"AxisName"],n.name))return r}}(o,h);if(null!=m){var x=a[m]||(a[m]={axesInfo:{}});x.axesInfo[g]=v,x.mapper=o[m].mapper,v.linkGroup=x}}}}))}(n,t,e),n.seriesInvolved&&function(t,e){e.eachSeries((function(e){var n=e.coordinateSystem,i=e.get(["tooltip","trigger"],!0),r=e.get(["tooltip","show"],!0);n&&"none"!==i&&!1!==i&&"item"!==i&&!1!==r&&!1!==e.get(["axisPointer","show"],!0)&&E(t.coordSysAxesInfo[MI(n.model)],(function(t){var i=t.axis;n.getAxis(i.dim)===i&&(t.seriesModels.push(e),null==t.seriesDataCount&&(t.seriesDataCount=0),t.seriesDataCount+=e.getData().count())}))}))}(n,t),n}function _I(t,e){return"all"===t||Y(t)&&P(t,e)>=0||t===e}function bI(t){var e=wI(t);if(e){var n=e.axisPointerModel,i=e.axis.scale,r=n.option,o=n.get("status"),a=n.get("value");null!=a&&(a=i.parse(a));var s=SI(n);null==o&&(r.status=s?"show":"hide");var l=i.getExtent().slice();l[0]>l[1]&&l.reverse(),(null==a||a>l[1])&&(a=l[1]),a<l[0]&&(a=l[0]),r.value=a,s&&(r.status=e.axis.scale.isBlank()?"hide":"show")}}function wI(t){var e=(t.ecModel.getComponent("axisPointer")||{}).coordSysAxesInfo;return e&&e.axesInfo[MI(t)]}function SI(t){return!!t.get(["handle","show"])}function MI(t){return t.type+"||"+t.id}var II={},TI=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(e,n,i,r){this.axisPointerClass&&bI(e),t.prototype.render.apply(this,arguments),this._doUpdateAxisPointerClass(e,i,!0)},e.prototype.updateAxisPointer=function(t,e,n,i){this._doUpdateAxisPointerClass(t,n,!1)},e.prototype.remove=function(t,e){var n=this._axisPointer;n&&n.remove(e)},e.prototype.dispose=function(e,n){this._disposeAxisPointer(n),t.prototype.dispose.apply(this,arguments)},e.prototype._doUpdateAxisPointerClass=function(t,n,i){var r=e.getAxisPointerClass(this.axisPointerClass);if(r){var o=function(t){var e=wI(t);return e&&e.axisPointerModel}(t);o?(this._axisPointer||(this._axisPointer=new r)).render(t,o,n,i):this._disposeAxisPointer(n)}},e.prototype._disposeAxisPointer=function(t){this._axisPointer&&this._axisPointer.dispose(t),this._axisPointer=null},e.registerAxisPointerClass=function(t,e){II[t]=e},e.getAxisPointerClass=function(t){return t&&II[t]},e.type="axis",e}(Ag),CI=Vo();function DI(t,e,n,i){var r=n.axis;if(!r.scale.isBlank()){var o=n.getModel("splitArea"),a=o.getModel("areaStyle"),s=a.get("color"),l=i.coordinateSystem.getRect(),u=r.getTicksCoords({tickModel:o,clamp:!0});if(u.length){var h=s.length,c=CI(t).splitAreaColors,p=yt(),d=0;if(c)for(var f=0;f<u.length;f++){var g=c.get(u[f].tickValue);if(null!=g){d=(g+(h-1)*f)%h;break}}var y=r.toGlobalCoord(u[0].coord),v=a.getAreaStyle();s=Y(s)?s:[s];for(f=1;f<u.length;f++){var m=r.toGlobalCoord(u[f].coord),x=void 0,_=void 0,b=void 0,w=void 0;r.isHorizontal()?(x=y,_=l.y,b=m-x,w=l.height,y=x+b):(x=l.x,_=y,b=l.width,y=_+(w=m-_));var S=u[f-1].tickValue;null!=S&&p.set(S,d),e.add(new Ws({anid:null!=S?"area_"+S:null,shape:{x:x,y:_,width:b,height:w},style:k({fill:s[d]},v),autoBatch:!0,silent:!0})),d=(d+1)%h}CI(t).splitAreaColors=p}}}function AI(t){CI(t).splitAreaColors=null}var kI=["axisLine","axisTickLabel","axisName"],LI=["splitArea","splitLine","minorSplitLine"],PI=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.axisPointerClass="CartesianAxisPointer",n}return n(e,t),e.prototype.render=function(e,n,i,r){this.group.removeAll();var o=this._axisGroup;if(this._axisGroup=new Br,this.group.add(this._axisGroup),e.get("show")){var a=e.getCoordSysModel(),s=iI(a,e),l=new dI(e,A({handleAutoShown:function(t){for(var n=a.coordinateSystem.getCartesians(),i=0;i<n.length;i++)if(Tx(n[i].getOtherAxis(e.axis).scale))return!0;return!1}},s));E(kI,l.add,l),this._axisGroup.add(l.getGroup()),E(LI,(function(t){e.get([t,"show"])&&OI[t](this,this._axisGroup,e,a)}),this),r&&"changeAxisOrder"===r.type&&r.isInitSort||Hh(o,this._axisGroup,e),t.prototype.render.call(this,e,n,i,r)}},e.prototype.remove=function(){AI(this)},e.type="cartesianAxis",e}(TI),OI={splitLine:function(t,e,n,i){var r=n.axis;if(!r.scale.isBlank()){var o=n.getModel("splitLine"),a=o.getModel("lineStyle"),s=a.get("color");s=Y(s)?s:[s];for(var l=i.coordinateSystem.getRect(),u=r.isHorizontal(),h=0,c=r.getTicksCoords({tickModel:o}),p=[],d=[],f=a.getLineStyle(),g=0;g<c.length;g++){var y=r.toGlobalCoord(c[g].coord);u?(p[0]=y,p[1]=l.y,d[0]=y,d[1]=l.y+l.height):(p[0]=l.x,p[1]=y,d[0]=l.x+l.width,d[1]=y);var v=h++%s.length,m=c[g].tickValue,x=new Ku({anid:null!=m?"line_"+c[g].tickValue:null,autoBatch:!0,shape:{x1:p[0],y1:p[1],x2:d[0],y2:d[1]},style:k({stroke:s[v]},f),silent:!0});zh(x.shape,f.lineWidth),e.add(x)}}},minorSplitLine:function(t,e,n,i){var r=n.axis,o=n.getModel("minorSplitLine").getModel("lineStyle"),a=i.coordinateSystem.getRect(),s=r.isHorizontal(),l=r.getMinorTicksCoords();if(l.length)for(var u=[],h=[],c=o.getLineStyle(),p=0;p<l.length;p++)for(var d=0;d<l[p].length;d++){var f=r.toGlobalCoord(l[p][d].coord);s?(u[0]=f,u[1]=a.y,h[0]=f,h[1]=a.y+a.height):(u[0]=a.x,u[1]=f,h[0]=a.x+a.width,h[1]=f);var g=new Ku({anid:"minor_line_"+l[p][d].tickValue,autoBatch:!0,shape:{x1:u[0],y1:u[1],x2:h[0],y2:h[1]},style:c,silent:!0});zh(g.shape,c.lineWidth),e.add(g)}},splitArea:function(t,e,n,i){DI(t,e,n,i)}},RI=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="xAxis",e}(PI),NI=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type=RI.type,e}return n(e,t),e.type="yAxis",e}(PI),EI=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="grid",e}return n(e,t),e.prototype.render=function(t,e){this.group.removeAll(),t.get("show")&&this.group.add(new Ws({shape:t.coordinateSystem.getRect(),style:k({fill:t.get("backgroundColor")},t.getItemStyle()),silent:!0,z2:-1}))},e.type="grid",e}(Ag),zI={offset:0};function VI(t){t.registerComponentView(EI),t.registerComponentModel(HM),t.registerCoordinateSystem("cartesian2d",lI),KM(t,"x",YM,zI),KM(t,"y",YM,zI),t.registerComponentView(RI),t.registerComponentView(NI),t.registerPreprocessor((function(t){t.xAxis&&t.yAxis&&!t.grid&&(t.grid={})}))}function BI(t){t.eachSeriesByType("radar",(function(t){var e=t.getData(),n=[],i=t.coordinateSystem;if(i){var r=i.getIndicatorAxes();E(r,(function(t,o){e.each(e.mapDimension(r[o].dim),(function(t,e){n[e]=n[e]||[];var r=i.dataToPoint(t,o);n[e][o]=FI(r)?r:GI(i)}))})),e.each((function(t){var r=F(n[t],(function(t){return FI(t)}))||GI(i);n[t].push(r.slice()),e.setItemLayout(t,n[t])}))}}))}function FI(t){return!isNaN(t[0])&&!isNaN(t[1])}function GI(t){return[t.cx,t.cy]}function WI(t){var e=t.polar;if(e){Y(e)||(e=[e]);var n=[];E(e,(function(e,i){e.indicator?(e.type&&!e.shape&&(e.shape=e.type),t.radar=t.radar||[],Y(t.radar)||(t.radar=[t.radar]),t.radar.push(e)):n.push(e)})),t.polar=n}E(t.series,(function(t){t&&"radar"===t.type&&t.polarIndex&&(t.radarIndex=t.polarIndex)}))}var HI=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i=t.coordinateSystem,r=this.group,o=t.getData(),a=this._data;function s(t,e){var n=t.getItemVisual(e,"symbol")||"circle";if("none"!==n){var i=Uy(t.getItemVisual(e,"symbolSize")),r=Xy(n,-1,-1,2,2),o=t.getItemVisual(e,"symbolRotate")||0;return r.attr({style:{strokeNoScale:!0},z2:100,scaleX:i[0]/2,scaleY:i[1]/2,rotation:o*Math.PI/180||0}),r}}function l(e,n,i,r,o,a){i.removeAll();for(var l=0;l<n.length-1;l++){var u=s(r,o);u&&(u.__dimIdx=l,e[l]?(u.setPosition(e[l]),Qh[a?"initProps":"updateProps"](u,{x:n[l][0],y:n[l][1]},t,o)):u.setPosition(n[l]),i.add(u))}}function u(t){return z(t,(function(t){return[i.cx,i.cy]}))}o.diff(a).add((function(e){var n=o.getItemLayout(e);if(n){var i=new Xu,r=new Zu,a={shape:{points:n}};i.shape.points=u(n),r.shape.points=u(n),mh(i,a,t,e),mh(r,a,t,e);var s=new Br,h=new Br;s.add(r),s.add(i),s.add(h),l(r.shape.points,n,h,o,e,!0),o.setItemGraphicEl(e,s)}})).update((function(e,n){var i=a.getItemGraphicEl(n),r=i.childAt(0),s=i.childAt(1),u=i.childAt(2),h={shape:{points:o.getItemLayout(e)}};h.shape.points&&(l(r.shape.points,h.shape.points,u,o,e,!1),Sh(s),Sh(r),vh(r,h,t),vh(s,h,t),o.setItemGraphicEl(e,i))})).remove((function(t){r.remove(a.getItemGraphicEl(t))})).execute(),o.eachItemGraphicEl((function(t,e){var n=o.getItemModel(e),i=t.childAt(0),a=t.childAt(1),s=t.childAt(2),l=o.getItemVisual(e,"style"),u=l.fill;r.add(t),i.useStyle(k(n.getModel("lineStyle").getLineStyle(),{fill:"none",stroke:u})),$l(i,n,"lineStyle"),$l(a,n,"areaStyle");var h=n.getModel("areaStyle"),c=h.isEmpty()&&h.parentModel.isEmpty();a.ignore=c,E(["emphasis","select","blur"],(function(t){var e=n.getModel([t,"areaStyle"]),i=e.isEmpty()&&e.parentModel.isEmpty();a.ensureState(t).ignore=i&&c})),a.useStyle(k(h.getAreaStyle(),{fill:u,opacity:.7,decal:l.decal}));var p=n.getModel("emphasis"),d=p.getModel("itemStyle").getItemStyle();s.eachChild((function(t){if(t instanceof Ns){var i=t.style;t.useStyle(A({image:i.image,x:i.x,y:i.y,width:i.width,height:i.height},l))}else t.useStyle(l),t.setColor(u),t.style.strokeNoScale=!0;t.ensureState("emphasis").style=T(d);var r=o.getStore().get(o.getDimensionIndex(t.__dimIdx),e);(null==r||isNaN(r))&&(r=""),ic(t,rc(n),{labelFetcher:o.hostModel,labelDataIndex:e,labelDimIndex:t.__dimIdx,defaultText:r,inheritColor:u,defaultOpacity:l.opacity})})),Zl(t,p.get("focus"),p.get("blurScope"),p.get("disabled"))})),this._data=o},e.prototype.remove=function(){this.group.removeAll(),this._data=null},e.type="radar",e}(Og),YI=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.hasSymbolVisual=!0,n}return n(e,t),e.prototype.init=function(e){t.prototype.init.apply(this,arguments),this.legendVisualProvider=new NM(W(this.getData,this),W(this.getRawData,this))},e.prototype.getInitialData=function(t,e){return RM(this,{generateCoord:"indicator_",generateCoordCount:1/0})},e.prototype.formatTooltip=function(t,e,n){var i=this.getData(),r=this.coordinateSystem.getIndicatorAxes(),o=this.getData().getName(t),a=""===o?this.name:o,s=fg(this,t);return og("section",{header:a,sortBlocks:!0,blocks:z(r,(function(e){var n=i.get(i.mapDimension(e.dim),t);return og("nameValue",{markerType:"subItem",markerColor:s,name:e.name,value:n,sortParam:n})}))})},e.prototype.getTooltipPosition=function(t){if(null!=t)for(var e=this.getData(),n=this.coordinateSystem,i=e.getValues(z(n.dimensions,(function(t){return e.mapDimension(t)})),t),r=0,o=i.length;r<o;r++)if(!isNaN(i[r])){var a=n.getIndicatorAxes();return n.coordToPoint(a[r].dataToCoord(i[r]),r)}},e.type="series.radar",e.dependencies=["radar"],e.defaultOption={z:2,colorBy:"data",coordinateSystem:"radar",legendHoverLink:!0,radarIndex:0,lineStyle:{width:2,type:"solid",join:"round"},label:{position:"top"},symbolSize:8},e}(bg),XI=jM.value;function UI(t,e){return k({show:e},t)}var ZI=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.optionUpdated=function(){var t=this.get("boundaryGap"),e=this.get("splitNumber"),n=this.get("scale"),i=this.get("axisLine"),r=this.get("axisTick"),o=this.get("axisLabel"),a=this.get("axisName"),s=this.get(["axisName","show"]),l=this.get(["axisName","formatter"]),u=this.get("axisNameGap"),h=this.get("triggerEvent"),c=z(this.get("indicator")||[],(function(c){null!=c.max&&c.max>0&&!c.min?c.min=0:null!=c.min&&c.min<0&&!c.max&&(c.max=0);var p=a;null!=c.color&&(p=k({color:c.color},a));var d=C(T(c),{boundaryGap:t,splitNumber:e,scale:n,axisLine:i,axisTick:r,axisLabel:o,name:c.text,showName:s,nameLocation:"end",nameGap:u,nameTextStyle:p,triggerEvent:h},!1);if(U(l)){var f=d.name;d.name=l.replace("{value}",null!=f?f:"")}else X(l)&&(d.name=l(d.name,d));var g=new Cc(d,null,this.ecModel);return R(g,D_.prototype),g.mainType="radar",g.componentIndex=this.componentIndex,g}),this);this._indicatorModels=c},e.prototype.getIndicatorModels=function(){return this._indicatorModels},e.type="radar",e.defaultOption={z:0,center:["50%","50%"],radius:"75%",startAngle:90,axisName:{show:!0},boundaryGap:[0,0],splitNumber:5,axisNameGap:15,scale:!1,shape:"polygon",axisLine:C({lineStyle:{color:"#bbb"}},XI.axisLine),axisLabel:UI(XI.axisLabel,!1),axisTick:UI(XI.axisTick,!1),splitLine:UI(XI.splitLine,!0),splitArea:UI(XI.splitArea,!0),indicator:[]},e}(zp),jI=["axisLine","axisTickLabel","axisName"],qI=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){this.group.removeAll(),this._buildAxes(t),this._buildSplitLineAndArea(t)},e.prototype._buildAxes=function(t){var e=t.coordinateSystem;E(z(e.getIndicatorAxes(),(function(t){var n=t.model.get("showName")?t.name:"";return new dI(t.model,{axisName:n,position:[e.cx,e.cy],rotation:t.angle,labelDirection:-1,tickDirection:-1,nameDirection:1})})),(function(t){E(jI,t.add,t),this.group.add(t.getGroup())}),this)},e.prototype._buildSplitLineAndArea=function(t){var e=t.coordinateSystem,n=e.getIndicatorAxes();if(n.length){var i=t.get("shape"),r=t.getModel("splitLine"),o=t.getModel("splitArea"),a=r.getModel("lineStyle"),s=o.getModel("areaStyle"),l=r.get("show"),u=o.get("show"),h=a.get("color"),c=s.get("color"),p=Y(h)?h:[h],d=Y(c)?c:[c],f=[],g=[];if("circle"===i)for(var y=n[0].getTicksCoords(),v=e.cx,m=e.cy,x=0;x<y.length;x++){if(l)f[C(f,p,x)].push(new Su({shape:{cx:v,cy:m,r:y[x].coord}}));if(u&&x<y.length-1)g[C(g,d,x)].push(new Wu({shape:{cx:v,cy:m,r0:y[x].coord,r:y[x+1].coord}}))}else{var _,b=z(n,(function(t,n){var i=t.getTicksCoords();return _=null==_?i.length-1:Math.min(i.length-1,_),z(i,(function(t){return e.coordToPoint(t.coord,n)}))})),w=[];for(x=0;x<=_;x++){for(var S=[],M=0;M<n.length;M++)S.push(b[M][x]);if(S[0]&&S.push(S[0].slice()),l)f[C(f,p,x)].push(new Zu({shape:{points:S}}));if(u&&w)g[C(g,d,x-1)].push(new Xu({shape:{points:S.concat(w)}}));w=S.slice().reverse()}}var I=a.getLineStyle(),T=s.getAreaStyle();E(g,(function(t,e){this.group.add(Nh(t,{style:k({stroke:"none",fill:d[e%d.length]},T),silent:!0}))}),this),E(f,(function(t,e){this.group.add(Nh(t,{style:k({fill:"none",stroke:p[e%p.length]},I),silent:!0}))}),this)}function C(t,e,n){var i=n%e.length;return t[i]=t[i]||[],i}},e.type="radar",e}(Ag),KI=function(t){function e(e,n,i){var r=t.call(this,e,n,i)||this;return r.type="value",r.angle=0,r.name="",r}return n(e,t),e}(ab),$I=function(){function t(t,e,n){this.dimensions=[],this._model=t,this._indicatorAxes=z(t.getIndicatorModels(),(function(t,e){var n="indicator_"+e,i=new KI(n,new Ex);return i.name=t.get("name"),i.model=t,t.axis=i,this.dimensions.push(n),i}),this),this.resize(t,n)}return t.prototype.getIndicatorAxes=function(){return this._indicatorAxes},t.prototype.dataToPoint=function(t,e){var n=this._indicatorAxes[e];return this.coordToPoint(n.dataToCoord(t),e)},t.prototype.coordToPoint=function(t,e){var n=this._indicatorAxes[e].angle;return[this.cx+t*Math.cos(n),this.cy-t*Math.sin(n)]},t.prototype.pointToData=function(t){var e=t[0]-this.cx,n=t[1]-this.cy,i=Math.sqrt(e*e+n*n);e/=i,n/=i;for(var r,o=Math.atan2(-n,e),a=1/0,s=-1,l=0;l<this._indicatorAxes.length;l++){var u=this._indicatorAxes[l],h=Math.abs(o-u.angle);h<a&&(r=u,s=l,a=h)}return[s,+(r&&r.coordToData(i))]},t.prototype.resize=function(t,e){var n=t.get("center"),i=e.getWidth(),r=e.getHeight(),o=Math.min(i,r)/2;this.cx=$r(n[0],i),this.cy=$r(n[1],r),this.startAngle=t.get("startAngle")*Math.PI/180;var a=t.get("radius");(U(a)||j(a))&&(a=[0,a]),this.r0=$r(a[0],o),this.r=$r(a[1],o),E(this._indicatorAxes,(function(t,e){t.setExtent(this.r0,this.r);var n=this.startAngle+e*Math.PI*2/this._indicatorAxes.length;n=Math.atan2(Math.sin(n),Math.cos(n)),t.angle=n}),this)},t.prototype.update=function(t,e){var n=this._indicatorAxes,i=this._model;E(n,(function(t){t.scale.setExtent(1/0,-1/0)})),t.eachSeriesByType("radar",(function(e,r){if("radar"===e.get("coordinateSystem")&&t.getComponent("radar",e.get("radarIndex"))===i){var o=e.getData();E(n,(function(t){t.scale.unionExtentFromData(o,o.mapDimension(t.dim))}))}}),this);var r=i.get("splitNumber"),o=new Ex;o.setExtent(0,r),o.setInterval(1),E(n,(function(t,e){sI(t.scale,t.model,o)}))},t.prototype.convertToPixel=function(t,e,n){return console.warn("Not implemented."),null},t.prototype.convertFromPixel=function(t,e,n){return console.warn("Not implemented."),null},t.prototype.containPoint=function(t){return console.warn("Not implemented."),!1},t.create=function(e,n){var i=[];return e.eachComponent("radar",(function(r){var o=new t(r,e,n);i.push(o),r.coordinateSystem=o})),e.eachSeriesByType("radar",(function(t){"radar"===t.get("coordinateSystem")&&(t.coordinateSystem=i[t.get("radarIndex")||0])})),i},t.dimensions=[],t}();function JI(t){t.registerCoordinateSystem("radar",$I),t.registerComponentModel(ZI),t.registerComponentView(qI),t.registerVisual({seriesType:"radar",reset:function(t){var e=t.getData();e.each((function(t){e.setItemVisual(t,"legendIcon","roundRect")})),e.setVisual("legendIcon","roundRect")}})}var QI="\0_ec_interaction_mutex";function tT(t,e){return!!eT(t)[e]}function eT(t){return t[QI]||(t[QI]={})}Cm({type:"takeGlobalCursor",event:"globalCursorTaken",update:"update"},bt);var nT=function(t){function e(e){var n=t.call(this)||this;n._zr=e;var i=W(n._mousedownHandler,n),r=W(n._mousemoveHandler,n),o=W(n._mouseupHandler,n),a=W(n._mousewheelHandler,n),s=W(n._pinchHandler,n);return n.enable=function(t,n){this.disable(),this._opt=k(T(n)||{},{zoomOnMouseWheel:!0,moveOnMouseMove:!0,moveOnMouseWheel:!1,preventDefaultMouseMove:!0}),null==t&&(t=!0),!0!==t&&"move"!==t&&"pan"!==t||(e.on("mousedown",i),e.on("mousemove",r),e.on("mouseup",o)),!0!==t&&"scale"!==t&&"zoom"!==t||(e.on("mousewheel",a),e.on("pinch",s))},n.disable=function(){e.off("mousedown",i),e.off("mousemove",r),e.off("mouseup",o),e.off("mousewheel",a),e.off("pinch",s)},n}return n(e,t),e.prototype.isDragging=function(){return this._dragging},e.prototype.isPinching=function(){return this._pinching},e.prototype.setPointerChecker=function(t){this.pointerChecker=t},e.prototype.dispose=function(){this.disable()},e.prototype._mousedownHandler=function(t){if(!fe(t)){for(var e=t.target;e;){if(e.draggable)return;e=e.__hostTarget||e.parent}var n=t.offsetX,i=t.offsetY;this.pointerChecker&&this.pointerChecker(t,n,i)&&(this._x=n,this._y=i,this._dragging=!0)}},e.prototype._mousemoveHandler=function(t){if(this._dragging&&oT("moveOnMouseMove",t,this._opt)&&"pinch"!==t.gestureEvent&&!tT(this._zr,"globalPan")){var e=t.offsetX,n=t.offsetY,i=this._x,r=this._y,o=e-i,a=n-r;this._x=e,this._y=n,this._opt.preventDefaultMouseMove&&de(t.event),rT(this,"pan","moveOnMouseMove",t,{dx:o,dy:a,oldX:i,oldY:r,newX:e,newY:n,isAvailableBehavior:null})}},e.prototype._mouseupHandler=function(t){fe(t)||(this._dragging=!1)},e.prototype._mousewheelHandler=function(t){var e=oT("zoomOnMouseWheel",t,this._opt),n=oT("moveOnMouseWheel",t,this._opt),i=t.wheelDelta,r=Math.abs(i),o=t.offsetX,a=t.offsetY;if(0!==i&&(e||n)){if(e){var s=r>3?1.4:r>1?1.2:1.1;iT(this,"zoom","zoomOnMouseWheel",t,{scale:i>0?s:1/s,originX:o,originY:a,isAvailableBehavior:null})}if(n){var l=Math.abs(i);iT(this,"scrollMove","moveOnMouseWheel",t,{scrollDelta:(i>0?1:-1)*(l>3?.4:l>1?.15:.05),originX:o,originY:a,isAvailableBehavior:null})}}},e.prototype._pinchHandler=function(t){tT(this._zr,"globalPan")||iT(this,"zoom",null,t,{scale:t.pinchScale>1?1.1:1/1.1,originX:t.pinchX,originY:t.pinchY,isAvailableBehavior:null})},e}(jt);function iT(t,e,n,i,r){t.pointerChecker&&t.pointerChecker(i,r.originX,r.originY)&&(de(i.event),rT(t,e,n,i,r))}function rT(t,e,n,i,r){r.isAvailableBehavior=W(oT,null,n,i),t.trigger(e,r)}function oT(t,e,n){var i=n[t];return!t||i&&(!U(i)||e.event[i+"Key"])}function aT(t,e,n){var i=t.target;i.x+=e,i.y+=n,i.dirty()}function sT(t,e,n,i){var r=t.target,o=t.zoomLimit,a=t.zoom=t.zoom||1;if(a*=e,o){var s=o.min||0,l=o.max||1/0;a=Math.max(Math.min(l,a),s)}var u=a/t.zoom;t.zoom=a,r.x-=(n-r.x)*(u-1),r.y-=(i-r.y)*(u-1),r.scaleX*=u,r.scaleY*=u,r.dirty()}var lT,uT={axisPointer:1,tooltip:1,brush:1};function hT(t,e,n){var i=e.getComponentByElement(t.topTarget),r=i&&i.coordinateSystem;return i&&i!==n&&!uT.hasOwnProperty(i.mainType)&&r&&r.model!==n}function cT(t){U(t)&&(t=(new DOMParser).parseFromString(t,"text/xml"));var e=t;for(9===e.nodeType&&(e=e.firstChild);"svg"!==e.nodeName.toLowerCase()||1!==e.nodeType;)e=e.nextSibling;return e}var pT={fill:"fill",stroke:"stroke","stroke-width":"lineWidth",opacity:"opacity","fill-opacity":"fillOpacity","stroke-opacity":"strokeOpacity","stroke-dasharray":"lineDash","stroke-dashoffset":"lineDashOffset","stroke-linecap":"lineCap","stroke-linejoin":"lineJoin","stroke-miterlimit":"miterLimit","font-family":"fontFamily","font-size":"fontSize","font-style":"fontStyle","font-weight":"fontWeight","text-anchor":"textAlign",visibility:"visibility",display:"display"},dT=G(pT),fT={"alignment-baseline":"textBaseline","stop-color":"stopColor"},gT=G(fT),yT=function(){function t(){this._defs={},this._root=null}return t.prototype.parse=function(t,e){e=e||{};var n=cT(t);this._defsUsePending=[];var i=new Br;this._root=i;var r=[],o=n.getAttribute("viewBox")||"",a=parseFloat(n.getAttribute("width")||e.width),s=parseFloat(n.getAttribute("height")||e.height);isNaN(a)&&(a=null),isNaN(s)&&(s=null),wT(n,i,null,!0,!1);for(var l,u,h=n.firstChild;h;)this._parseNode(h,i,r,null,!1,!1),h=h.nextSibling;if(function(t,e){for(var n=0;n<e.length;n++){var i=e[n];i[0].style[i[1]]=t[i[2]]}}(this._defs,this._defsUsePending),this._defsUsePending=[],o){var c=TT(o);c.length>=4&&(l={x:parseFloat(c[0]||0),y:parseFloat(c[1]||0),width:parseFloat(c[2]),height:parseFloat(c[3])})}if(l&&null!=a&&null!=s&&(u=LT(l,{x:0,y:0,width:a,height:s}),!e.ignoreViewBox)){var p=i;(i=new Br).add(p),p.scaleX=p.scaleY=u.scale,p.x=u.x,p.y=u.y}return e.ignoreRootClip||null==a||null==s||i.setClipPath(new Ws({shape:{x:0,y:0,width:a,height:s}})),{root:i,width:a,height:s,viewBoxRect:l,viewBoxTransform:u,named:r}},t.prototype._parseNode=function(t,e,n,i,r,o){var a,s=t.nodeName.toLowerCase(),l=i;if("defs"===s&&(r=!0),"text"===s&&(o=!0),"defs"===s||"switch"===s)a=e;else{if(!r){var u=lT[s];if(u&&_t(lT,s)){a=u.call(this,t,e);var h=t.getAttribute("name");if(h){var c={name:h,namedFrom:null,svgNodeTagLower:s,el:a};n.push(c),"g"===s&&(l=c)}else i&&n.push({name:i.name,namedFrom:i,svgNodeTagLower:s,el:a});e.add(a)}}var p=vT[s];if(p&&_t(vT,s)){var d=p.call(this,t),f=t.getAttribute("id");f&&(this._defs[f]=d)}}if(a&&a.isGroup)for(var g=t.firstChild;g;)1===g.nodeType?this._parseNode(g,a,n,l,r,o):3===g.nodeType&&o&&this._parseText(g,a),g=g.nextSibling},t.prototype._parseText=function(t,e){var n=new Ps({style:{text:t.textContent},silent:!0,x:this._textX||0,y:this._textY||0});_T(e,n),wT(t,n,this._defsUsePending,!1,!1),function(t,e){var n=e.__selfStyle;if(n){var i=n.textBaseline,r=i;i&&"auto"!==i?"baseline"===i?r="alphabetic":"before-edge"===i||"text-before-edge"===i?r="top":"after-edge"===i||"text-after-edge"===i?r="bottom":"central"!==i&&"mathematical"!==i||(r="middle"):r="alphabetic",t.style.textBaseline=r}var o=e.__inheritedStyle;if(o){var a=o.textAlign,s=a;a&&("middle"===a&&(s="center"),t.style.textAlign=s)}}(n,e);var i=n.style,r=i.fontSize;r&&r<9&&(i.fontSize=9,n.scaleX*=r/9,n.scaleY*=r/9);var o=(i.fontSize||i.fontFamily)&&[i.fontStyle,i.fontWeight,(i.fontSize||12)+"px",i.fontFamily||"sans-serif"].join(" ");i.font=o;var a=n.getBoundingRect();return this._textX+=a.width,e.add(n),n},t.internalField=void(lT={g:function(t,e){var n=new Br;return _T(e,n),wT(t,n,this._defsUsePending,!1,!1),n},rect:function(t,e){var n=new Ws;return _T(e,n),wT(t,n,this._defsUsePending,!1,!1),n.setShape({x:parseFloat(t.getAttribute("x")||"0"),y:parseFloat(t.getAttribute("y")||"0"),width:parseFloat(t.getAttribute("width")||"0"),height:parseFloat(t.getAttribute("height")||"0")}),n.silent=!0,n},circle:function(t,e){var n=new Su;return _T(e,n),wT(t,n,this._defsUsePending,!1,!1),n.setShape({cx:parseFloat(t.getAttribute("cx")||"0"),cy:parseFloat(t.getAttribute("cy")||"0"),r:parseFloat(t.getAttribute("r")||"0")}),n.silent=!0,n},line:function(t,e){var n=new Ku;return _T(e,n),wT(t,n,this._defsUsePending,!1,!1),n.setShape({x1:parseFloat(t.getAttribute("x1")||"0"),y1:parseFloat(t.getAttribute("y1")||"0"),x2:parseFloat(t.getAttribute("x2")||"0"),y2:parseFloat(t.getAttribute("y2")||"0")}),n.silent=!0,n},ellipse:function(t,e){var n=new Iu;return _T(e,n),wT(t,n,this._defsUsePending,!1,!1),n.setShape({cx:parseFloat(t.getAttribute("cx")||"0"),cy:parseFloat(t.getAttribute("cy")||"0"),rx:parseFloat(t.getAttribute("rx")||"0"),ry:parseFloat(t.getAttribute("ry")||"0")}),n.silent=!0,n},polygon:function(t,e){var n,i=t.getAttribute("points");i&&(n=bT(i));var r=new Xu({shape:{points:n||[]},silent:!0});return _T(e,r),wT(t,r,this._defsUsePending,!1,!1),r},polyline:function(t,e){var n,i=t.getAttribute("points");i&&(n=bT(i));var r=new Zu({shape:{points:n||[]},silent:!0});return _T(e,r),wT(t,r,this._defsUsePending,!1,!1),r},image:function(t,e){var n=new Ns;return _T(e,n),wT(t,n,this._defsUsePending,!1,!1),n.setStyle({image:t.getAttribute("xlink:href")||t.getAttribute("href"),x:+t.getAttribute("x"),y:+t.getAttribute("y"),width:+t.getAttribute("width"),height:+t.getAttribute("height")}),n.silent=!0,n},text:function(t,e){var n=t.getAttribute("x")||"0",i=t.getAttribute("y")||"0",r=t.getAttribute("dx")||"0",o=t.getAttribute("dy")||"0";this._textX=parseFloat(n)+parseFloat(r),this._textY=parseFloat(i)+parseFloat(o);var a=new Br;return _T(e,a),wT(t,a,this._defsUsePending,!1,!0),a},tspan:function(t,e){var n=t.getAttribute("x"),i=t.getAttribute("y");null!=n&&(this._textX=parseFloat(n)),null!=i&&(this._textY=parseFloat(i));var r=t.getAttribute("dx")||"0",o=t.getAttribute("dy")||"0",a=new Br;return _T(e,a),wT(t,a,this._defsUsePending,!1,!0),this._textX+=parseFloat(r),this._textY+=parseFloat(o),a},path:function(t,e){var n=_u(t.getAttribute("d")||"");return _T(e,n),wT(t,n,this._defsUsePending,!1,!1),n.silent=!0,n}}),t}(),vT={lineargradient:function(t){var e=parseInt(t.getAttribute("x1")||"0",10),n=parseInt(t.getAttribute("y1")||"0",10),i=parseInt(t.getAttribute("x2")||"10",10),r=parseInt(t.getAttribute("y2")||"0",10),o=new oh(e,n,i,r);return mT(t,o),xT(t,o),o},radialgradient:function(t){var e=parseInt(t.getAttribute("cx")||"0",10),n=parseInt(t.getAttribute("cy")||"0",10),i=parseInt(t.getAttribute("r")||"0",10),r=new ah(e,n,i);return mT(t,r),xT(t,r),r}};function mT(t,e){"userSpaceOnUse"===t.getAttribute("gradientUnits")&&(e.global=!0)}function xT(t,e){for(var n=t.firstChild;n;){if(1===n.nodeType&&"stop"===n.nodeName.toLocaleLowerCase()){var i=n.getAttribute("offset"),r=void 0;r=i&&i.indexOf("%")>0?parseInt(i,10)/100:i?parseFloat(i):0;var o={};kT(n,o,o);var a=o.stopColor||n.getAttribute("stop-color")||"#000000";e.colorStops.push({offset:r,color:a})}n=n.nextSibling}}function _T(t,e){t&&t.__inheritedStyle&&(e.__inheritedStyle||(e.__inheritedStyle={}),k(e.__inheritedStyle,t.__inheritedStyle))}function bT(t){for(var e=TT(t),n=[],i=0;i<e.length;i+=2){var r=parseFloat(e[i]),o=parseFloat(e[i+1]);n.push([r,o])}return n}function wT(t,e,n,i,r){var o=e,a=o.__inheritedStyle=o.__inheritedStyle||{},s={};1===t.nodeType&&(function(t,e){var n=t.getAttribute("transform");if(n){n=n.replace(/,/g," ");var i=[],r=null;n.replace(CT,(function(t,e,n){return i.push(e,n),""}));for(var o=i.length-1;o>0;o-=2){var a=i[o],s=i[o-1],l=TT(a);switch(r=r||[1,0,0,1,0,0],s){case"translate":we(r,r,[parseFloat(l[0]),parseFloat(l[1]||"0")]);break;case"scale":Me(r,r,[parseFloat(l[0]),parseFloat(l[1]||l[0])]);break;case"rotate":Se(r,r,-parseFloat(l[0])*DT,[parseFloat(l[1]||"0"),parseFloat(l[2]||"0")]);break;case"skewX":be(r,[1,0,Math.tan(parseFloat(l[0])*DT),1,0,0],r);break;case"skewY":be(r,[1,Math.tan(parseFloat(l[0])*DT),0,1,0,0],r);break;case"matrix":r[0]=parseFloat(l[0]),r[1]=parseFloat(l[1]),r[2]=parseFloat(l[2]),r[3]=parseFloat(l[3]),r[4]=parseFloat(l[4]),r[5]=parseFloat(l[5])}}e.setLocalTransform(r)}}(t,e),kT(t,a,s),i||function(t,e,n){for(var i=0;i<dT.length;i++){var r=dT[i];null!=(o=t.getAttribute(r))&&(e[pT[r]]=o)}for(i=0;i<gT.length;i++){var o;r=gT[i];null!=(o=t.getAttribute(r))&&(n[fT[r]]=o)}}(t,a,s)),o.style=o.style||{},null!=a.fill&&(o.style.fill=MT(o,"fill",a.fill,n)),null!=a.stroke&&(o.style.stroke=MT(o,"stroke",a.stroke,n)),E(["lineWidth","opacity","fillOpacity","strokeOpacity","miterLimit","fontSize"],(function(t){null!=a[t]&&(o.style[t]=parseFloat(a[t]))})),E(["lineDashOffset","lineCap","lineJoin","fontWeight","fontFamily","fontStyle","textAlign"],(function(t){null!=a[t]&&(o.style[t]=a[t])})),r&&(o.__selfStyle=s),a.lineDash&&(o.style.lineDash=z(TT(a.lineDash),(function(t){return parseFloat(t)}))),"hidden"!==a.visibility&&"collapse"!==a.visibility||(o.invisible=!0),"none"===a.display&&(o.ignore=!0)}var ST=/^url\(\s*#(.*?)\)/;function MT(t,e,n,i){var r=n&&n.match(ST);if(!r)return"none"===n&&(n=null),n;var o=ut(r[1]);i.push([t,e,o])}var IT=/-?([0-9]*\.)?[0-9]+([eE]-?[0-9]+)?/g;function TT(t){return t.match(IT)||[]}var CT=/(translate|scale|rotate|skewX|skewY|matrix)\(([\-\s0-9\.eE,]*)\)/g,DT=Math.PI/180;var AT=/([^\s:;]+)\s*:\s*([^:;]+)/g;function kT(t,e,n){var i,r=t.getAttribute("style");if(r)for(AT.lastIndex=0;null!=(i=AT.exec(r));){var o=i[1],a=_t(pT,o)?pT[o]:null;a&&(e[a]=i[2]);var s=_t(fT,o)?fT[o]:null;s&&(n[s]=i[2])}}function LT(t,e){var n=e.width/t.width,i=e.height/t.height,r=Math.min(n,i);return{scale:r,x:-(t.x+t.width/2)*r+(e.x+e.width/2),y:-(t.y+t.height/2)*r+(e.y+e.height/2)}}var PT=yt(["rect","circle","line","ellipse","polygon","polyline","path","text","tspan","g"]),OT=function(){function t(t,e){this.type="geoSVG",this._usedGraphicMap=yt(),this._freedGraphics=[],this._mapName=t,this._parsedXML=cT(e)}return t.prototype.load=function(){var t=this._firstGraphic;if(!t){t=this._firstGraphic=this._buildGraphic(this._parsedXML),this._freedGraphics.push(t),this._boundingRect=this._firstGraphic.boundingRect.clone();var e=function(t){var e=[],n=yt();return E(t,(function(t){if(null==t.namedFrom){var i=new F_(t.name,t.el);e.push(i),n.set(t.name,i)}})),{regions:e,regionsMap:n}}(t.named),n=e.regions,i=e.regionsMap;this._regions=n,this._regionsMap=i}return{boundingRect:this._boundingRect,regions:this._regions,regionsMap:this._regionsMap}},t.prototype._buildGraphic=function(t){var e,n,i,r;try{lt(null!=(n=(e=t&&(i=t,r={ignoreViewBox:!0,ignoreRootClip:!0},(new yT).parse(i,r))||{}).root))}catch(t){throw new Error("Invalid svg format\n"+t.message)}var o=new Br;o.add(n),o.isGeoSVGGraphicRoot=!0;var a=e.width,s=e.height,l=e.viewBoxRect,u=this._boundingRect;if(!u){var h=void 0,c=void 0,p=void 0,d=void 0;if(null!=a?(h=0,p=a):l&&(h=l.x,p=l.width),null!=s?(c=0,d=s):l&&(c=l.y,d=l.height),null==h||null==c){var f=n.getBoundingRect();null==h&&(h=f.x,p=f.width),null==c&&(c=f.y,d=f.height)}u=this._boundingRect=new ze(h,c,p,d)}if(l){var g=LT(l,u);n.scaleX=n.scaleY=g.scale,n.x=g.x,n.y=g.y}o.setClipPath(new Ws({shape:u.plain()}));var y=[];return E(e.named,(function(t){var e;null!=PT.get(t.svgNodeTagLower)&&(y.push(t),(e=t.el).silent=!1,e.isGroup&&e.traverse((function(t){t.silent=!1})))})),{root:o,boundingRect:u,named:y}},t.prototype.useGraphic=function(t){var e=this._usedGraphicMap,n=e.get(t);return n||(n=this._freedGraphics.pop()||this._buildGraphic(this._parsedXML),e.set(t,n),n)},t.prototype.freeGraphic=function(t){var e=this._usedGraphicMap,n=e.get(t);n&&(e.removeKey(t),this._freedGraphics.push(n))},t}();for(var RT=[126,25],NT="南海诸岛",ET=[[[0,3.5],[7,11.2],[15,11.9],[30,7],[42,.7],[52,.7],[56,7.7],[59,.7],[64,.7],[64,0],[5,0],[0,3.5]],[[13,16.1],[19,14.7],[16,21.7],[11,23.1],[13,16.1]],[[12,32.2],[14,38.5],[15,38.5],[13,32.2],[12,32.2]],[[16,47.6],[12,53.2],[13,53.2],[18,47.6],[16,47.6]],[[6,64.4],[8,70],[9,70],[8,64.4],[6,64.4]],[[23,82.6],[29,79.8],[30,79.8],[25,82.6],[23,82.6]],[[37,70.7],[43,62.3],[44,62.3],[39,70.7],[37,70.7]],[[48,51.1],[51,45.5],[53,45.5],[50,51.1],[48,51.1]],[[51,35],[51,28.7],[53,28.7],[53,35],[51,35]],[[52,22.4],[55,17.5],[56,17.5],[53,22.4],[52,22.4]],[[58,12.6],[62,7],[63,7],[60,12.6],[58,12.6]],[[0,3.5],[0,93.1],[64,93.1],[64,0],[63,0],[63,92.4],[1,92.4],[1,3.5],[0,3.5]]],zT=0;zT<ET.length;zT++)for(var VT=0;VT<ET[zT].length;VT++)ET[zT][VT][0]/=10.5,ET[zT][VT][1]/=-14,ET[zT][VT][0]+=RT[0],ET[zT][VT][1]+=RT[1];var BT={"南海诸岛":[32,80],"广东":[0,-10],"香港":[10,5],"澳门":[-10,10],"天津":[5,5]};var FT=[[[123.45165252685547,25.73527164402261],[123.49731445312499,25.73527164402261],[123.49731445312499,25.750734064600884],[123.45165252685547,25.750734064600884],[123.45165252685547,25.73527164402261]]];var GT=function(){function t(t,e,n){var i;this.type="geoJSON",this._parsedMap=yt(),this._mapName=t,this._specialAreas=n,this._geoJSON=U(i=e)?"undefined"!=typeof JSON&&JSON.parse?JSON.parse(i):new Function("return ("+i+");")():i}return t.prototype.load=function(t,e){e=e||"name";var n=this._parsedMap.get(e);if(!n){var i=this._parseToRegions(e);n=this._parsedMap.set(e,{regions:i,boundingRect:WT(i)})}var r=yt(),o=[];return E(n.regions,(function(e){var n=e.name;t&&_t(t,n)&&(e=e.cloneShallow(n=t[n])),o.push(e),r.set(n,e)})),{regions:o,boundingRect:n.boundingRect||new ze(0,0,0,0),regionsMap:r}},t.prototype._parseToRegions=function(t){var e,n=this._mapName,i=this._geoJSON;try{e=i?H_(i,t):[]}catch(t){throw new Error("Invalid geoJson format\n"+t.message)}return function(t,e){if("china"===t){for(var n=0;n<e.length;n++)if(e[n].name===NT)return;e.push(new B_(NT,z(ET,(function(t){return{type:"polygon",exterior:t}})),RT))}}(n,e),E(e,(function(t){var e=t.name;!function(t,e){if("china"===t){var n=BT[e.name];if(n){var i=e.getCenter();i[0]+=n[0]/10.5,i[1]+=-n[1]/14,e.setCenter(i)}}}(n,t),function(t,e){"china"===t&&"台湾"===e.name&&e.geometries.push({type:"polygon",exterior:FT[0]})}(n,t);var i=this._specialAreas&&this._specialAreas[e];i&&t.transformTo(i.left,i.top,i.width,i.height)}),this),e},t.prototype.getMapForUser=function(){return{geoJson:this._geoJSON,geoJSON:this._geoJSON,specialAreas:this._specialAreas}},t}();function WT(t){for(var e,n=0;n<t.length;n++){var i=t[n].getBoundingRect();(e=e||i.clone()).union(i)}return e}var HT=yt(),YT=function(t,e,n){if(e.svg){var i=new OT(t,e.svg);HT.set(t,i)}else{var r=e.geoJson||e.geoJSON;r&&!e.features?n=e.specialAreas:r=e;i=new GT(t,r,n);HT.set(t,i)}},XT=function(t){return HT.get(t)},UT=function(t){var e=HT.get(t);return e&&"geoJSON"===e.type&&e.getMapForUser()},ZT=function(t,e,n){var i=HT.get(t);if(i)return i.load(e,n)},jT=["rect","circle","line","ellipse","polygon","polyline","path"],qT=yt(jT),KT=yt(jT.concat(["g"])),$T=yt(jT.concat(["g"])),JT=Vo();function QT(t){var e=t.getItemStyle(),n=t.get("areaColor");return null!=n&&(e.fill=n),e}function tC(t){var e=t.style;e&&(e.stroke=e.stroke||e.fill,e.fill=null)}var eC=function(){function t(t){var e=new Br;this.uid=Ac("ec_map_draw"),this._controller=new nT(t.getZr()),this._controllerHost={target:e},this.group=e,e.add(this._regionsGroup=new Br),e.add(this._svgGroup=new Br)}return t.prototype.draw=function(t,e,n,i,r){var o="geo"===t.mainType,a=t.getData&&t.getData();o&&e.eachComponent({mainType:"series",subType:"map"},(function(e){a||e.getHostGeoModel()!==t||(a=e.getData())}));var s=t.coordinateSystem,l=this._regionsGroup,u=this.group,h=s.getTransformInfo(),c=h.raw,p=h.roam;!l.childAt(0)||r?(u.x=p.x,u.y=p.y,u.scaleX=p.scaleX,u.scaleY=p.scaleY,u.dirty()):vh(u,p,t);var d=a&&a.getVisual("visualMeta")&&a.getVisual("visualMeta").length>0,f={api:n,geo:s,mapOrGeoModel:t,data:a,isVisualEncodedByVisualMap:d,isGeo:o,transformInfoRaw:c};"geoJSON"===s.resourceType?this._buildGeoJSON(f):"geoSVG"===s.resourceType&&this._buildSVG(f),this._updateController(t,e,n),this._updateMapSelectHandler(t,l,n,i)},t.prototype._buildGeoJSON=function(t){var e=this._regionsGroupByName=yt(),n=yt(),i=this._regionsGroup,r=t.transformInfoRaw,o=t.mapOrGeoModel,a=t.data,s=t.geo.projection,l=s&&s.stream;function u(t,e){return e&&(t=e(t)),t&&[t[0]*r.scaleX+r.x,t[1]*r.scaleY+r.y]}function h(t){for(var e=[],n=!l&&s&&s.project,i=0;i<t.length;++i){var r=u(t[i],n);r&&e.push(r)}return e}function c(t){return{shape:{points:h(t)}}}i.removeAll(),E(t.geo.regions,(function(r){var h=r.name,p=e.get(h),d=n.get(h)||{},f=d.dataIdx,g=d.regionModel;p||(p=e.set(h,new Br),i.add(p),f=a?a.indexOfName(h):null,g=t.isGeo?o.getRegionModel(h):a?a.getItemModel(f):null,n.set(h,{dataIdx:f,regionModel:g}));var y=[],v=[];E(r.geometries,(function(t){if("polygon"===t.type){var e=[t.exterior].concat(t.interiors||[]);l&&(e=sC(e,l)),E(e,(function(t){y.push(new Xu(c(t)))}))}else{var n=t.points;l&&(n=sC(n,l,!0)),E(n,(function(t){v.push(new Zu(c(t)))}))}}));var m=u(r.getCenter(),s&&s.project);function x(e,n){if(e.length){var i=new ih({culling:!0,segmentIgnoreThreshold:1,shape:{paths:e}});p.add(i),nC(t,i,f,g),iC(t,i,h,g,o,f,m),n&&(tC(i),E(i.states,tC))}}x(y),x(v,!0)})),e.each((function(e,i){var r=n.get(i),a=r.dataIdx,s=r.regionModel;rC(t,e,i,s,o,a),oC(t,e,i,s,o),aC(t,e,i,s,o)}),this)},t.prototype._buildSVG=function(t){var e=t.geo.map,n=t.transformInfoRaw;this._svgGroup.x=n.x,this._svgGroup.y=n.y,this._svgGroup.scaleX=n.scaleX,this._svgGroup.scaleY=n.scaleY,this._svgResourceChanged(e)&&(this._freeSVG(),this._useSVG(e));var i=this._svgDispatcherMap=yt(),r=!1;E(this._svgGraphicRecord.named,(function(e){var n=e.name,o=t.mapOrGeoModel,a=t.data,s=e.svgNodeTagLower,l=e.el,u=a?a.indexOfName(n):null,h=o.getRegionModel(n);(null!=qT.get(s)&&l instanceof Da&&nC(t,l,u,h),l instanceof Da&&(l.culling=!0),l.z2EmphasisLift=0,e.namedFrom)||(null!=$T.get(s)&&iC(t,l,n,h,o,u,null),rC(t,l,n,h,o,u),oC(t,l,n,h,o),null!=KT.get(s)&&("self"===aC(t,l,n,h,o)&&(r=!0),(i.get(n)||i.set(n,[])).push(l)))}),this),this._enableBlurEntireSVG(r,t)},t.prototype._enableBlurEntireSVG=function(t,e){if(t&&e.isGeo){var n=e.mapOrGeoModel.getModel(["blur","itemStyle"]).getItemStyle().opacity;this._svgGraphicRecord.root.traverse((function(t){if(!t.isGroup){kl(t);var e=t.ensureState("blur").style||{};null==e.opacity&&null!=n&&(e.opacity=n),t.ensureState("emphasis")}}))}},t.prototype.remove=function(){this._regionsGroup.removeAll(),this._regionsGroupByName=null,this._svgGroup.removeAll(),this._freeSVG(),this._controller.dispose(),this._controllerHost=null},t.prototype.findHighDownDispatchers=function(t,e){if(null==t)return[];var n=e.coordinateSystem;if("geoJSON"===n.resourceType){var i=this._regionsGroupByName;if(i){var r=i.get(t);return r?[r]:[]}}else if("geoSVG"===n.resourceType)return this._svgDispatcherMap&&this._svgDispatcherMap.get(t)||[]},t.prototype._svgResourceChanged=function(t){return this._svgMapName!==t},t.prototype._useSVG=function(t){var e=XT(t);if(e&&"geoSVG"===e.type){var n=e.useGraphic(this.uid);this._svgGroup.add(n.root),this._svgGraphicRecord=n,this._svgMapName=t}},t.prototype._freeSVG=function(){var t=this._svgMapName;if(null!=t){var e=XT(t);e&&"geoSVG"===e.type&&e.freeGraphic(this.uid),this._svgGraphicRecord=null,this._svgDispatcherMap=null,this._svgGroup.removeAll(),this._svgMapName=null}},t.prototype._updateController=function(t,e,n){var i=t.coordinateSystem,r=this._controller,o=this._controllerHost;o.zoomLimit=t.get("scaleLimit"),o.zoom=i.getZoom(),r.enable(t.get("roam")||!1);var a=t.mainType;function s(){var e={type:"geoRoam",componentType:a};return e[a+"Id"]=t.id,e}r.off("pan").on("pan",(function(t){this._mouseDownFlag=!1,aT(o,t.dx,t.dy),n.dispatchAction(A(s(),{dx:t.dx,dy:t.dy,animation:{duration:0}}))}),this),r.off("zoom").on("zoom",(function(t){this._mouseDownFlag=!1,sT(o,t.scale,t.originX,t.originY),n.dispatchAction(A(s(),{totalZoom:o.zoom,zoom:t.scale,originX:t.originX,originY:t.originY,animation:{duration:0}}))}),this),r.setPointerChecker((function(e,r,o){return i.containPoint([r,o])&&!hT(e,n,t)}))},t.prototype.resetForLabelLayout=function(){this.group.traverse((function(t){var e=t.getTextContent();e&&(e.ignore=JT(e).ignore)}))},t.prototype._updateMapSelectHandler=function(t,e,n,i){var r=this;e.off("mousedown"),e.off("click"),t.get("selectedMode")&&(e.on("mousedown",(function(){r._mouseDownFlag=!0})),e.on("click",(function(t){r._mouseDownFlag&&(r._mouseDownFlag=!1)})))},t}();function nC(t,e,n,i){var r=i.getModel("itemStyle"),o=i.getModel(["emphasis","itemStyle"]),a=i.getModel(["blur","itemStyle"]),s=i.getModel(["select","itemStyle"]),l=QT(r),u=QT(o),h=QT(s),c=QT(a),p=t.data;if(p){var d=p.getItemVisual(n,"style"),f=p.getItemVisual(n,"decal");t.isVisualEncodedByVisualMap&&d.fill&&(l.fill=d.fill),f&&(l.decal=mv(f,t.api))}e.setStyle(l),e.style.strokeNoScale=!0,e.ensureState("emphasis").style=u,e.ensureState("select").style=h,e.ensureState("blur").style=c,kl(e)}function iC(t,e,n,i,r,o,a){var s=t.data,l=t.isGeo,u=s&&isNaN(s.get(s.mapDimension("value"),o)),h=s&&s.getItemLayout(o);if(l||u||h&&h.showLabel){var c=l?n:o,p=void 0;(!s||o>=0)&&(p=r);var d=a?{normal:{align:"center",verticalAlign:"middle"}}:null;ic(e,rc(i),{labelFetcher:p,labelDataIndex:c,defaultText:n},d);var f=e.getTextContent();if(f&&(JT(f).ignore=f.ignore,e.textConfig&&a)){var g=e.getBoundingRect().clone();e.textConfig.layoutRect=g,e.textConfig.position=[(a[0]-g.x)/g.width*100+"%",(a[1]-g.y)/g.height*100+"%"]}e.disableLabelAnimation=!0}else e.removeTextContent(),e.removeTextConfig(),e.disableLabelAnimation=null}function rC(t,e,n,i,r,o){t.data?t.data.setItemGraphicEl(o,e):rl(e).eventData={componentType:"geo",componentIndex:r.componentIndex,geoIndex:r.componentIndex,name:n,region:i&&i.option||{}}}function oC(t,e,n,i,r){t.data||Kh({el:e,componentModel:r,itemName:n,itemTooltipOption:i.get("tooltip")})}function aC(t,e,n,i,r){e.highDownSilentOnTouch=!!r.get("selectedMode");var o=i.getModel("emphasis"),a=o.get("focus");return Zl(e,a,o.get("blurScope"),o.get("disabled")),t.isGeo&&function(t,e,n){var i=rl(t);i.componentMainType=e.mainType,i.componentIndex=e.componentIndex,i.componentHighDownName=n}(e,r,n),a}function sC(t,e,n){var i,r=[];function o(){i=[]}function a(){i.length&&(r.push(i),i=[])}var s=e({polygonStart:o,polygonEnd:a,lineStart:o,lineEnd:a,point:function(t,e){isFinite(t)&&isFinite(e)&&i.push([t,e])},sphere:function(){}});return!n&&s.polygonStart(),E(t,(function(t){s.lineStart();for(var e=0;e<t.length;e++)s.point(t[e][0],t[e][1]);s.lineEnd()})),!n&&s.polygonEnd(),r}var lC=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n,i){if(!i||"mapToggleSelect"!==i.type||i.from!==this.uid){var r=this.group;if(r.removeAll(),!t.getHostGeoModel()){if(this._mapDraw&&i&&"geoRoam"===i.type&&this._mapDraw.resetForLabelLayout(),i&&"geoRoam"===i.type&&"series"===i.componentType&&i.seriesId===t.id)(o=this._mapDraw)&&r.add(o.group);else if(t.needsDrawMap){var o=this._mapDraw||new eC(n);r.add(o.group),o.draw(t,e,n,this,i),this._mapDraw=o}else this._mapDraw&&this._mapDraw.remove(),this._mapDraw=null;t.get("showLegendSymbol")&&e.getComponent("legend")&&this._renderSymbols(t,e,n)}}},e.prototype.remove=function(){this._mapDraw&&this._mapDraw.remove(),this._mapDraw=null,this.group.removeAll()},e.prototype.dispose=function(){this._mapDraw&&this._mapDraw.remove(),this._mapDraw=null},e.prototype._renderSymbols=function(t,e,n){var i=t.originalData,r=this.group;i.each(i.mapDimension("value"),(function(e,n){if(!isNaN(e)){var o=i.getItemLayout(n);if(o&&o.point){var a=o.point,s=o.offset,l=new Su({style:{fill:t.getData().getVisual("style").fill},shape:{cx:a[0]+9*s,cy:a[1],r:3},silent:!0,z2:8+(s?0:11)});if(!s){var u=t.mainSeries.getData(),h=i.getName(n),c=u.indexOfName(h),p=i.getItemModel(n),d=p.getModel("label"),f=u.getItemGraphicEl(c);ic(l,rc(p),{labelFetcher:{getFormattedLabel:function(e,n){return t.getFormattedLabel(c,n)}},defaultText:h}),l.disableLabelAnimation=!0,d.get("position")||l.setTextConfig({position:"bottom"}),f.onHoverStateChange=function(t){Dl(l,t)}}r.add(l)}}}))},e.type="map",e}(Og),uC=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.needsDrawMap=!1,n.seriesGroup=[],n.getTooltipPosition=function(t){if(null!=t){var e=this.getData().getName(t),n=this.coordinateSystem,i=n.getRegion(e);return i&&n.dataToPoint(i.getCenter())}},n}return n(e,t),e.prototype.getInitialData=function(t){for(var e=RM(this,{coordDimensions:["value"],encodeDefaulter:H(ed,this)}),n=yt(),i=[],r=0,o=e.count();r<o;r++){var a=e.getName(r);n.set(a,!0)}return E(ZT(this.getMapType(),this.option.nameMap,this.option.nameProperty).regions,(function(t){var e=t.name;n.get(e)||i.push(e)})),e.appendValues([],i),e},e.prototype.getHostGeoModel=function(){var t=this.option.geoIndex;return null!=t?this.ecModel.getComponent("geo",t):null},e.prototype.getMapType=function(){return(this.getHostGeoModel()||this).option.map},e.prototype.getRawValue=function(t){var e=this.getData();return e.get(e.mapDimension("value"),t)},e.prototype.getRegionModel=function(t){var e=this.getData();return e.getItemModel(e.indexOfName(t))},e.prototype.formatTooltip=function(t,e,n){for(var i=this.getData(),r=this.getRawValue(t),o=i.getName(t),a=this.seriesGroup,s=[],l=0;l<a.length;l++){var u=a[l].originalData.indexOfName(o),h=i.mapDimension("value");isNaN(a[l].originalData.get(h,u))||s.push(a[l].name)}return og("section",{header:s.join(", "),noHeader:!s.length,blocks:[og("nameValue",{name:o,value:r})]})},e.prototype.setZoom=function(t){this.option.zoom=t},e.prototype.setCenter=function(t){this.option.center=t},e.prototype.getLegendIcon=function(t){var e=t.icon||"roundRect",n=Xy(e,0,0,t.itemWidth,t.itemHeight,t.itemStyle.fill);return n.setStyle(t.itemStyle),n.style.stroke="none",e.indexOf("empty")>-1&&(n.style.stroke=n.style.fill,n.style.fill="#fff",n.style.lineWidth=2),n},e.type="series.map",e.dependencies=["geo"],e.layoutMode="box",e.defaultOption={z:2,coordinateSystem:"geo",map:"",left:"center",top:"center",aspectScale:null,showLegendSymbol:!0,boundingCoords:null,center:null,zoom:1,scaleLimit:null,selectedMode:!0,label:{show:!1,color:"#000"},itemStyle:{borderWidth:.5,borderColor:"#444",areaColor:"#eee"},emphasis:{label:{show:!0,color:"rgb(100,0,0)"},itemStyle:{areaColor:"rgba(255,215,0,0.8)"}},select:{label:{show:!0,color:"rgb(100,0,0)"},itemStyle:{color:"rgba(255,215,0,0.8)"}},nameProperty:"name"},e}(bg);function hC(t){var e={};t.eachSeriesByType("map",(function(t){var n=t.getHostGeoModel(),i=n?"o"+n.id:"i"+t.getMapType();(e[i]=e[i]||[]).push(t)})),E(e,(function(t,e){for(var n,i,r,o=(n=z(t,(function(t){return t.getData()})),i=t[0].get("mapValueCalculation"),r={},E(n,(function(t){t.each(t.mapDimension("value"),(function(e,n){var i="ec-"+t.getName(n);r[i]=r[i]||[],isNaN(e)||r[i].push(e)}))})),n[0].map(n[0].mapDimension("value"),(function(t,e){for(var o="ec-"+n[0].getName(e),a=0,s=1/0,l=-1/0,u=r[o].length,h=0;h<u;h++)s=Math.min(s,r[o][h]),l=Math.max(l,r[o][h]),a+=r[o][h];return 0===u?NaN:"min"===i?s:"max"===i?l:"average"===i?a/u:a}))),a=0;a<t.length;a++)t[a].originalData=t[a].getData();for(a=0;a<t.length;a++)t[a].seriesGroup=t,t[a].needsDrawMap=0===a&&!t[a].getHostGeoModel(),t[a].setData(o.cloneShallow()),t[a].mainSeries=t[0]}))}function cC(t){var e={};t.eachSeriesByType("map",(function(n){var i=n.getMapType();if(!n.getHostGeoModel()&&!e[i]){var r={};E(n.seriesGroup,(function(e){var n=e.coordinateSystem,i=e.originalData;e.get("showLegendSymbol")&&t.getComponent("legend")&&i.each(i.mapDimension("value"),(function(t,e){var o=i.getName(e),a=n.getRegion(o);if(a&&!isNaN(t)){var s=r[o]||0,l=n.dataToPoint(a.getCenter());r[o]=s+1,i.setItemLayout(e,{point:l,offset:s})}}))}));var o=n.getData();o.each((function(t){var e=o.getName(t),n=o.getItemLayout(t)||{};n.showLabel=!r[e],o.setItemLayout(t,n)})),e[i]=!0}}))}var pC=Wt,dC=function(t){function e(e){var n=t.call(this)||this;return n.type="view",n.dimensions=["x","y"],n._roamTransformable=new vr,n._rawTransformable=new vr,n.name=e,n}return n(e,t),e.prototype.setBoundingRect=function(t,e,n,i){return this._rect=new ze(t,e,n,i),this._rect},e.prototype.getBoundingRect=function(){return this._rect},e.prototype.setViewRect=function(t,e,n,i){this._transformTo(t,e,n,i),this._viewRect=new ze(t,e,n,i)},e.prototype._transformTo=function(t,e,n,i){var r=this.getBoundingRect(),o=this._rawTransformable;o.transform=r.calculateTransform(new ze(t,e,n,i));var a=o.parent;o.parent=null,o.decomposeTransform(),o.parent=a,this._updateTransform()},e.prototype.setCenter=function(t,e){t&&(this._center=[$r(t[0],e.getWidth()),$r(t[1],e.getHeight())],this._updateCenterAndZoom())},e.prototype.setZoom=function(t){t=t||1;var e=this.zoomLimit;e&&(null!=e.max&&(t=Math.min(e.max,t)),null!=e.min&&(t=Math.max(e.min,t))),this._zoom=t,this._updateCenterAndZoom()},e.prototype.getDefaultCenter=function(){var t=this.getBoundingRect();return[t.x+t.width/2,t.y+t.height/2]},e.prototype.getCenter=function(){return this._center||this.getDefaultCenter()},e.prototype.getZoom=function(){return this._zoom||1},e.prototype.getRoamTransform=function(){return this._roamTransformable.getLocalTransform()},e.prototype._updateCenterAndZoom=function(){var t=this._rawTransformable.getLocalTransform(),e=this._roamTransformable,n=this.getDefaultCenter(),i=this.getCenter(),r=this.getZoom();i=Wt([],i,t),n=Wt([],n,t),e.originX=i[0],e.originY=i[1],e.x=n[0]-i[0],e.y=n[1]-i[1],e.scaleX=e.scaleY=r,this._updateTransform()},e.prototype._updateTransform=function(){var t=this._roamTransformable,e=this._rawTransformable;e.parent=t,t.updateTransform(),e.updateTransform(),_e(this.transform||(this.transform=[]),e.transform||[1,0,0,1,0,0]),this._rawTransform=e.getLocalTransform(),this.invTransform=this.invTransform||[],Ie(this.invTransform,this.transform),this.decomposeTransform()},e.prototype.getTransformInfo=function(){var t=this._rawTransformable,e=this._roamTransformable,n=new vr;return n.transform=e.transform,n.decomposeTransform(),{roam:{x:n.x,y:n.y,scaleX:n.scaleX,scaleY:n.scaleY},raw:{x:t.x,y:t.y,scaleX:t.scaleX,scaleY:t.scaleY}}},e.prototype.getViewRect=function(){return this._viewRect},e.prototype.getViewRectAfterRoam=function(){var t=this.getBoundingRect().clone();return t.applyTransform(this.transform),t},e.prototype.dataToPoint=function(t,e,n){var i=e?this._rawTransform:this.transform;return n=n||[],i?pC(n,t,i):It(n,t)},e.prototype.pointToData=function(t){var e=this.invTransform;return e?pC([],t,e):[t[0],t[1]]},e.prototype.convertToPixel=function(t,e,n){var i=fC(e);return i===this?i.dataToPoint(n):null},e.prototype.convertFromPixel=function(t,e,n){var i=fC(e);return i===this?i.pointToData(n):null},e.prototype.containPoint=function(t){return this.getViewRectAfterRoam().contain(t[0],t[1])},e.dimensions=["x","y"],e}(vr);function fC(t){var e=t.seriesModel;return e?e.coordinateSystem:null}var gC={geoJSON:{aspectScale:.75,invertLongitute:!0},geoSVG:{aspectScale:1,invertLongitute:!1}},yC=["lng","lat"],vC=function(t){function e(e,n,i){var r=t.call(this,e)||this;r.dimensions=yC,r.type="geo",r._nameCoordMap=yt(),r.map=n;var o,a=i.projection,s=ZT(n,i.nameMap,i.nameProperty),l=XT(n),u=(r.resourceType=l?l.type:null,r.regions=s.regions),h=gC[l.type];if(r._regionsMap=s.regionsMap,r.regions=s.regions,r.projection=a,a)for(var c=0;c<u.length;c++){var p=u[c].getBoundingRect(a);(o=o||p.clone()).union(p)}else o=s.boundingRect;return r.setBoundingRect(o.x,o.y,o.width,o.height),r.aspectScale=a?1:rt(i.aspectScale,h.aspectScale),r._invertLongitute=!a&&h.invertLongitute,r}return n(e,t),e.prototype._transformTo=function(t,e,n,i){var r=this.getBoundingRect(),o=this._invertLongitute;r=r.clone(),o&&(r.y=-r.y-r.height);var a=this._rawTransformable;a.transform=r.calculateTransform(new ze(t,e,n,i));var s=a.parent;a.parent=null,a.decomposeTransform(),a.parent=s,o&&(a.scaleY=-a.scaleY),this._updateTransform()},e.prototype.getRegion=function(t){return this._regionsMap.get(t)},e.prototype.getRegionByCoord=function(t){for(var e=this.regions,n=0;n<e.length;n++){var i=e[n];if("geoJSON"===i.type&&i.contain(t))return e[n]}},e.prototype.addGeoCoord=function(t,e){this._nameCoordMap.set(t,e)},e.prototype.getGeoCoord=function(t){var e=this._regionsMap.get(t);return this._nameCoordMap.get(t)||e&&e.getCenter()},e.prototype.dataToPoint=function(t,e,n){if(U(t)&&(t=this.getGeoCoord(t)),t){var i=this.projection;return i&&(t=i.project(t)),t&&this.projectedToPoint(t,e,n)}},e.prototype.pointToData=function(t){var e=this.projection;return e&&(t=e.unproject(t)),t&&this.pointToProjected(t)},e.prototype.pointToProjected=function(e){return t.prototype.pointToData.call(this,e)},e.prototype.projectedToPoint=function(e,n,i){return t.prototype.dataToPoint.call(this,e,n,i)},e.prototype.convertToPixel=function(t,e,n){var i=mC(e);return i===this?i.dataToPoint(n):null},e.prototype.convertFromPixel=function(t,e,n){var i=mC(e);return i===this?i.pointToData(n):null},e}(dC);function mC(t){var e=t.geoModel,n=t.seriesModel;return e?e.coordinateSystem:n?n.coordinateSystem||(n.getReferringComponents("geo",Wo).models[0]||{}).coordinateSystem:null}function xC(t,e){var n=t.get("boundingCoords");if(null!=n){var i=n[0],r=n[1];if(isFinite(i[0])&&isFinite(i[1])&&isFinite(r[0])&&isFinite(r[1])){var o=this.projection;if(o){var a=i[0],s=i[1],l=r[0],u=r[1];i=[1/0,1/0],r=[-1/0,-1/0];var h=function(t,e,n,a){for(var s=n-t,l=a-e,u=0;u<=100;u++){var h=u/100,c=o.project([t+s*h,e+l*h]);Ht(i,i,c),Yt(r,r,c)}};h(a,s,l,s),h(l,s,l,u),h(l,u,a,u),h(a,u,l,s)}this.setBoundingRect(i[0],i[1],r[0]-i[0],r[1]-i[1])}else 0}var c,p,d,f=this.getBoundingRect(),g=t.get("layoutCenter"),y=t.get("layoutSize"),v=e.getWidth(),m=e.getHeight(),x=f.width/f.height*this.aspectScale,_=!1;if(g&&y&&(c=[$r(g[0],v),$r(g[1],m)],p=$r(y,Math.min(v,m)),isNaN(c[0])||isNaN(c[1])||isNaN(p)||(_=!0)),_)d={},x>1?(d.width=p,d.height=p/x):(d.height=p,d.width=p*x),d.y=c[1]-d.height/2,d.x=c[0]-d.width/2;else{var b=t.getBoxLayoutParams();b.aspect=x,d=kp(b,{width:v,height:m})}this.setViewRect(d.x,d.y,d.width,d.height),this.setCenter(t.get("center"),e),this.setZoom(t.get("zoom"))}R(vC,dC);var _C=function(){function t(){this.dimensions=yC}return t.prototype.create=function(t,e){var n=[];function i(t){return{nameProperty:t.get("nameProperty"),aspectScale:t.get("aspectScale"),projection:t.get("projection")}}t.eachComponent("geo",(function(t,r){var o=t.get("map"),a=new vC(o+r,o,A({nameMap:t.get("nameMap")},i(t)));a.zoomLimit=t.get("scaleLimit"),n.push(a),t.coordinateSystem=a,a.model=t,a.resize=xC,a.resize(t,e)})),t.eachSeries((function(t){if("geo"===t.get("coordinateSystem")){var e=t.get("geoIndex")||0;t.coordinateSystem=n[e]}}));var r={};return t.eachSeriesByType("map",(function(t){if(!t.getHostGeoModel()){var e=t.getMapType();r[e]=r[e]||[],r[e].push(t)}})),E(r,(function(t,r){var o=z(t,(function(t){return t.get("nameMap")})),a=new vC(r,r,A({nameMap:D(o)},i(t[0])));a.zoomLimit=it.apply(null,z(t,(function(t){return t.get("scaleLimit")}))),n.push(a),a.resize=xC,a.resize(t[0],e),E(t,(function(t){t.coordinateSystem=a,function(t,e){E(e.get("geoCoord"),(function(e,n){t.addGeoCoord(n,e)}))}(a,t)}))})),n},t.prototype.getFilledRegions=function(t,e,n,i){for(var r=(t||[]).slice(),o=yt(),a=0;a<r.length;a++)o.set(r[a].name,r[a]);return E(ZT(e,n,i).regions,(function(t){var e=t.name;!o.get(e)&&r.push({name:e})})),r},t}(),bC=new _C,wC=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(t,e,n){var i=XT(t.map);if(i&&"geoJSON"===i.type){var r=t.itemStyle=t.itemStyle||{};"color"in r||(r.color="#eee")}this.mergeDefaultAndTheme(t,n),Co(t,"label",["show"])},e.prototype.optionUpdated=function(){var t=this,e=this.option;e.regions=bC.getFilledRegions(e.regions,e.map,e.nameMap,e.nameProperty);var n={};this._optionModelMap=V(e.regions||[],(function(e,i){var r=i.name;return r&&(e.set(r,new Cc(i,t,t.ecModel)),i.selected&&(n[r]=!0)),e}),yt()),e.selectedMap||(e.selectedMap=n)},e.prototype.getRegionModel=function(t){return this._optionModelMap.get(t)||new Cc(null,this,this.ecModel)},e.prototype.getFormattedLabel=function(t,e){var n=this.getRegionModel(t),i="normal"===e?n.get(["label","formatter"]):n.get(["emphasis","label","formatter"]),r={name:t};return X(i)?(r.status=e,i(r)):U(i)?i.replace("{a}",null!=t?t:""):void 0},e.prototype.setZoom=function(t){this.option.zoom=t},e.prototype.setCenter=function(t){this.option.center=t},e.prototype.select=function(t){var e=this.option,n=e.selectedMode;n&&("multiple"!==n&&(e.selectedMap=null),(e.selectedMap||(e.selectedMap={}))[t]=!0)},e.prototype.unSelect=function(t){var e=this.option.selectedMap;e&&(e[t]=!1)},e.prototype.toggleSelected=function(t){this[this.isSelected(t)?"unSelect":"select"](t)},e.prototype.isSelected=function(t){var e=this.option.selectedMap;return!(!e||!e[t])},e.type="geo",e.layoutMode="box",e.defaultOption={z:0,show:!0,left:"center",top:"center",aspectScale:null,silent:!1,map:"",boundingCoords:null,center:null,zoom:1,scaleLimit:null,label:{show:!1,color:"#000"},itemStyle:{borderWidth:.5,borderColor:"#444"},emphasis:{label:{show:!0,color:"rgb(100,0,0)"},itemStyle:{color:"rgba(255,215,0,0.8)"}},select:{label:{show:!0,color:"rgb(100,0,0)"},itemStyle:{color:"rgba(255,215,0,0.8)"}},regions:[]},e}(zp);function SC(t,e){return t.pointToProjected?t.pointToProjected(e):t.pointToData(e)}function MC(t,e,n,i){var r=t.getZoom(),o=t.getCenter(),a=e.zoom,s=t.projectedToPoint?t.projectedToPoint(o):t.dataToPoint(o);if(null!=e.dx&&null!=e.dy&&(s[0]-=e.dx,s[1]-=e.dy,t.setCenter(SC(t,s),i)),null!=a){if(n){var l=n.min||0,u=n.max||1/0;a=Math.max(Math.min(r*a,u),l)/r}t.scaleX*=a,t.scaleY*=a;var h=(e.originX-t.x)*(a-1),c=(e.originY-t.y)*(a-1);t.x-=h,t.y-=c,t.updateTransform(),t.setCenter(SC(t,s),i),t.setZoom(a*r)}return{center:t.getCenter(),zoom:t.getZoom()}}var IC=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.focusBlurEnabled=!0,n}return n(e,t),e.prototype.init=function(t,e){this._api=e},e.prototype.render=function(t,e,n,i){if(this._model=t,!t.get("show"))return this._mapDraw&&this._mapDraw.remove(),void(this._mapDraw=null);this._mapDraw||(this._mapDraw=new eC(n));var r=this._mapDraw;r.draw(t,e,n,this,i),r.group.on("click",this._handleRegionClick,this),r.group.silent=t.get("silent"),this.group.add(r.group),this.updateSelectStatus(t,e,n)},e.prototype._handleRegionClick=function(t){var e;Oy(t.target,(function(t){return null!=(e=rl(t).eventData)}),!0),e&&this._api.dispatchAction({type:"geoToggleSelect",geoId:this._model.id,name:e.name})},e.prototype.updateSelectStatus=function(t,e,n){var i=this;this._mapDraw.group.traverse((function(t){var e=rl(t).eventData;if(e)return i._model.isSelected(e.name)?n.enterSelect(t):n.leaveSelect(t),!0}))},e.prototype.findHighDownDispatchers=function(t){return this._mapDraw&&this._mapDraw.findHighDownDispatchers(t,this._model)},e.prototype.dispose=function(){this._mapDraw&&this._mapDraw.remove()},e.type="geo",e}(Ag);function TC(t,e,n){YT(t,e,n)}function CC(t){function e(e,n){n.update="geo:updateSelectStatus",t.registerAction(n,(function(t,n){var i={},r=[];return n.eachComponent({mainType:"geo",query:t},(function(n){n[e](t.name),E(n.coordinateSystem.regions,(function(t){i[t.name]=n.isSelected(t.name)||!1}));var o=[];E(i,(function(t,e){i[e]&&o.push(e)})),r.push({geoIndex:n.componentIndex,name:o})})),{selected:i,allSelected:r,name:t.name}}))}t.registerCoordinateSystem("geo",bC),t.registerComponentModel(wC),t.registerComponentView(IC),t.registerImpl("registerMap",TC),t.registerImpl("getMap",(function(t){return UT(t)})),e("toggleSelected",{type:"geoToggleSelect",event:"geoselectchanged"}),e("select",{type:"geoSelect",event:"geoselected"}),e("unSelect",{type:"geoUnSelect",event:"geounselected"}),t.registerAction({type:"geoRoam",event:"geoRoam",update:"updateTransform"},(function(t,e,n){var i=t.componentType||"series";e.eachComponent({mainType:i,query:t},(function(e){var r=e.coordinateSystem;if("geo"===r.type){var o=MC(r,t,e.get("scaleLimit"),n);e.setCenter&&e.setCenter(o.center),e.setZoom&&e.setZoom(o.zoom),"series"===i&&E(e.seriesGroup,(function(t){t.setCenter(o.center),t.setZoom(o.zoom)}))}}))}))}function DC(t,e){var n=t.isExpand?t.children:[],i=t.parentNode.children,r=t.hierNode.i?i[t.hierNode.i-1]:null;if(n.length){!function(t){var e=t.children,n=e.length,i=0,r=0;for(;--n>=0;){var o=e[n];o.hierNode.prelim+=i,o.hierNode.modifier+=i,r+=o.hierNode.change,i+=o.hierNode.shift+r}}(t);var o=(n[0].hierNode.prelim+n[n.length-1].hierNode.prelim)/2;r?(t.hierNode.prelim=r.hierNode.prelim+e(t,r),t.hierNode.modifier=t.hierNode.prelim-o):t.hierNode.prelim=o}else r&&(t.hierNode.prelim=r.hierNode.prelim+e(t,r));t.parentNode.hierNode.defaultAncestor=function(t,e,n,i){if(e){for(var r=t,o=t,a=o.parentNode.children[0],s=e,l=r.hierNode.modifier,u=o.hierNode.modifier,h=a.hierNode.modifier,c=s.hierNode.modifier;s=PC(s),o=OC(o),s&&o;){r=PC(r),a=OC(a),r.hierNode.ancestor=t;var p=s.hierNode.prelim+c-o.hierNode.prelim-u+i(s,o);p>0&&(NC(RC(s,t,n),t,p),u+=p,l+=p),c+=s.hierNode.modifier,u+=o.hierNode.modifier,l+=r.hierNode.modifier,h+=a.hierNode.modifier}s&&!PC(r)&&(r.hierNode.thread=s,r.hierNode.modifier+=c-l),o&&!OC(a)&&(a.hierNode.thread=o,a.hierNode.modifier+=u-h,n=t)}return n}(t,r,t.parentNode.hierNode.defaultAncestor||i[0],e)}function AC(t){var e=t.hierNode.prelim+t.parentNode.hierNode.modifier;t.setLayout({x:e},!0),t.hierNode.modifier+=t.parentNode.hierNode.modifier}function kC(t){return arguments.length?t:EC}function LC(t,e){return t-=Math.PI/2,{x:e*Math.cos(t),y:e*Math.sin(t)}}function PC(t){var e=t.children;return e.length&&t.isExpand?e[e.length-1]:t.hierNode.thread}function OC(t){var e=t.children;return e.length&&t.isExpand?e[0]:t.hierNode.thread}function RC(t,e,n){return t.hierNode.ancestor.parentNode===e.parentNode?t.hierNode.ancestor:n}function NC(t,e,n){var i=n/(e.hierNode.i-t.hierNode.i);e.hierNode.change-=i,e.hierNode.shift+=n,e.hierNode.modifier+=n,e.hierNode.prelim+=n,t.hierNode.change+=i}function EC(t,e){return t.parentNode===e.parentNode?1:2}var zC=function(){this.parentPoint=[],this.childPoints=[]},VC=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new zC},e.prototype.buildPath=function(t,e){var n=e.childPoints,i=n.length,r=e.parentPoint,o=n[0],a=n[i-1];if(1===i)return t.moveTo(r[0],r[1]),void t.lineTo(o[0],o[1]);var s=e.orient,l="TB"===s||"BT"===s?0:1,u=1-l,h=$r(e.forkPosition,1),c=[];c[l]=r[l],c[u]=r[u]+(a[u]-r[u])*h,t.moveTo(r[0],r[1]),t.lineTo(c[0],c[1]),t.moveTo(o[0],o[1]),c[l]=o[l],t.lineTo(c[0],c[1]),c[l]=a[l],t.lineTo(c[0],c[1]),t.lineTo(a[0],a[1]);for(var p=1;p<i-1;p++){var d=n[p];t.moveTo(d[0],d[1]),c[l]=d[l],t.lineTo(c[0],c[1])}},e}(ks),BC=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._mainGroup=new Br,n}return n(e,t),e.prototype.init=function(t,e){this._controller=new nT(e.getZr()),this._controllerHost={target:this.group},this.group.add(this._mainGroup)},e.prototype.render=function(t,e,n){var i=t.getData(),r=t.layoutInfo,o=this._mainGroup;"radial"===t.get("layout")?(o.x=r.x+r.width/2,o.y=r.y+r.height/2):(o.x=r.x,o.y=r.y),this._updateViewCoordSys(t,n),this._updateController(t,e,n);var a=this._data;i.diff(a).add((function(e){FC(i,e)&&GC(i,e,null,o,t)})).update((function(e,n){var r=a.getItemGraphicEl(n);FC(i,e)?GC(i,e,r,o,t):r&&YC(a,n,r,o,t)})).remove((function(e){var n=a.getItemGraphicEl(e);n&&YC(a,e,n,o,t)})).execute(),this._nodeScaleRatio=t.get("nodeScaleRatio"),this._updateNodeAndLinkScale(t),!0===t.get("expandAndCollapse")&&i.eachItemGraphicEl((function(e,i){e.off("click").on("click",(function(){n.dispatchAction({type:"treeExpandAndCollapse",seriesId:t.id,dataIndex:i})}))})),this._data=i},e.prototype._updateViewCoordSys=function(t,e){var n=t.getData(),i=[];n.each((function(t){var e=n.getItemLayout(t);!e||isNaN(e.x)||isNaN(e.y)||i.push([+e.x,+e.y])}));var r=[],o=[];Ba(i,r,o);var a=this._min,s=this._max;o[0]-r[0]==0&&(r[0]=a?a[0]:r[0]-1,o[0]=s?s[0]:o[0]+1),o[1]-r[1]==0&&(r[1]=a?a[1]:r[1]-1,o[1]=s?s[1]:o[1]+1);var l=t.coordinateSystem=new dC;l.zoomLimit=t.get("scaleLimit"),l.setBoundingRect(r[0],r[1],o[0]-r[0],o[1]-r[1]),l.setCenter(t.get("center"),e),l.setZoom(t.get("zoom")),this.group.attr({x:l.x,y:l.y,scaleX:l.scaleX,scaleY:l.scaleY}),this._min=r,this._max=o},e.prototype._updateController=function(t,e,n){var i=this,r=this._controller,o=this._controllerHost,a=this.group;r.setPointerChecker((function(e,i,r){var o=a.getBoundingRect();return o.applyTransform(a.transform),o.contain(i,r)&&!hT(e,n,t)})),r.enable(t.get("roam")),o.zoomLimit=t.get("scaleLimit"),o.zoom=t.coordinateSystem.getZoom(),r.off("pan").off("zoom").on("pan",(function(e){aT(o,e.dx,e.dy),n.dispatchAction({seriesId:t.id,type:"treeRoam",dx:e.dx,dy:e.dy})})).on("zoom",(function(e){sT(o,e.scale,e.originX,e.originY),n.dispatchAction({seriesId:t.id,type:"treeRoam",zoom:e.scale,originX:e.originX,originY:e.originY}),i._updateNodeAndLinkScale(t),n.updateLabelLayout()}))},e.prototype._updateNodeAndLinkScale=function(t){var e=t.getData(),n=this._getNodeGlobalScale(t);e.eachItemGraphicEl((function(t,e){t.setSymbolScale(n)}))},e.prototype._getNodeGlobalScale=function(t){var e=t.coordinateSystem;if("view"!==e.type)return 1;var n=this._nodeScaleRatio,i=e.scaleX||1;return((e.getZoom()-1)*n+1)/i},e.prototype.dispose=function(){this._controller&&this._controller.dispose(),this._controllerHost=null},e.prototype.remove=function(){this._mainGroup.removeAll(),this._data=null},e.type="tree",e}(Og);function FC(t,e){var n=t.getItemLayout(e);return n&&!isNaN(n.x)&&!isNaN(n.y)}function GC(t,e,n,i,r){var o=!n,a=t.tree.getNodeByDataIndex(e),s=a.getModel(),l=a.getVisual("style").fill,u=!1===a.isExpand&&0!==a.children.length?l:"#fff",h=t.tree.root,c=a.parentNode===h?a:a.parentNode||a,p=t.getItemGraphicEl(c.dataIndex),d=c.getLayout(),f=p?{x:p.__oldX,y:p.__oldY,rawX:p.__radialOldRawX,rawY:p.__radialOldRawY}:d,g=a.getLayout();o?((n=new fS(t,e,null,{symbolInnerColor:u,useNameLabel:!0})).x=f.x,n.y=f.y):n.updateData(t,e,null,{symbolInnerColor:u,useNameLabel:!0}),n.__radialOldRawX=n.__radialRawX,n.__radialOldRawY=n.__radialRawY,n.__radialRawX=g.rawX,n.__radialRawY=g.rawY,i.add(n),t.setItemGraphicEl(e,n),n.__oldX=n.x,n.__oldY=n.y,vh(n,{x:g.x,y:g.y},r);var y=n.getSymbolPath();if("radial"===r.get("layout")){var v=h.children[0],m=v.getLayout(),x=v.children.length,_=void 0,b=void 0;if(g.x===m.x&&!0===a.isExpand&&v.children.length){var w={x:(v.children[0].getLayout().x+v.children[x-1].getLayout().x)/2,y:(v.children[0].getLayout().y+v.children[x-1].getLayout().y)/2};(_=Math.atan2(w.y-m.y,w.x-m.x))<0&&(_=2*Math.PI+_),(b=w.x<m.x)&&(_-=Math.PI)}else(_=Math.atan2(g.y-m.y,g.x-m.x))<0&&(_=2*Math.PI+_),0===a.children.length||0!==a.children.length&&!1===a.isExpand?(b=g.x<m.x)&&(_-=Math.PI):(b=g.x>m.x)||(_-=Math.PI);var S=b?"left":"right",M=s.getModel("label"),I=M.get("rotate"),T=I*(Math.PI/180),C=y.getTextContent();C&&(y.setTextConfig({position:M.get("position")||S,rotation:null==I?-_:T,origin:"center"}),C.setStyle("verticalAlign","middle"))}var D=s.get(["emphasis","focus"]),A="relative"===D?vt(a.getAncestorsIndices(),a.getDescendantIndices()):"ancestor"===D?a.getAncestorsIndices():"descendant"===D?a.getDescendantIndices():null;A&&(rl(n).focus=A),function(t,e,n,i,r,o,a,s){var l=e.getModel(),u=t.get("edgeShape"),h=t.get("layout"),c=t.getOrient(),p=t.get(["lineStyle","curveness"]),d=t.get("edgeForkPosition"),f=l.getModel("lineStyle").getLineStyle(),g=i.__edge;if("curve"===u)e.parentNode&&e.parentNode!==n&&(g||(g=i.__edge=new th({shape:XC(h,c,p,r,r)})),vh(g,{shape:XC(h,c,p,o,a)},t));else if("polyline"===u)if("orthogonal"===h){if(e!==n&&e.children&&0!==e.children.length&&!0===e.isExpand){for(var y=e.children,v=[],m=0;m<y.length;m++){var x=y[m].getLayout();v.push([x.x,x.y])}g||(g=i.__edge=new VC({shape:{parentPoint:[a.x,a.y],childPoints:[[a.x,a.y]],orient:c,forkPosition:d}})),vh(g,{shape:{parentPoint:[a.x,a.y],childPoints:v}},t)}}else 0;g&&("polyline"!==u||e.isExpand)&&(g.useStyle(k({strokeNoScale:!0,fill:null},f)),$l(g,l,"lineStyle"),kl(g),s.add(g))}(r,a,h,n,f,d,g,i),n.__edge&&(n.onHoverStateChange=function(e){if("blur"!==e){var i=a.parentNode&&t.getItemGraphicEl(a.parentNode.dataIndex);i&&1===i.hoverState||Dl(n.__edge,e)}})}function WC(t,e,n,i,r){var o=HC(e.tree.root,t),a=o.source,s=o.sourceLayout,l=e.getItemGraphicEl(t.dataIndex);if(l){var u=e.getItemGraphicEl(a.dataIndex).__edge,h=l.__edge||(!1===a.isExpand||1===a.children.length?u:void 0),c=i.get("edgeShape"),p=i.get("layout"),d=i.get("orient"),f=i.get(["lineStyle","curveness"]);h&&("curve"===c?_h(h,{shape:XC(p,d,f,s,s),style:{opacity:0}},i,{cb:function(){n.remove(h)},removeOpt:r}):"polyline"===c&&"orthogonal"===i.get("layout")&&_h(h,{shape:{parentPoint:[s.x,s.y],childPoints:[[s.x,s.y]]},style:{opacity:0}},i,{cb:function(){n.remove(h)},removeOpt:r}))}}function HC(t,e){for(var n,i=e.parentNode===t?e:e.parentNode||e;null==(n=i.getLayout());)i=i.parentNode===t?i:i.parentNode||i;return{source:i,sourceLayout:n}}function YC(t,e,n,i,r){var o=t.tree.getNodeByDataIndex(e),a=HC(t.tree.root,o).sourceLayout,s={duration:r.get("animationDurationUpdate"),easing:r.get("animationEasingUpdate")};_h(n,{x:a.x+1,y:a.y+1},r,{cb:function(){i.remove(n),t.setItemGraphicEl(e,null)},removeOpt:s}),n.fadeOut(null,t.hostModel,{fadeLabel:!0,animation:s}),o.children.forEach((function(e){WC(e,t,i,r,s)})),WC(o,t,i,r,s)}function XC(t,e,n,i,r){var o,a,s,l,u,h,c,p;if("radial"===t){u=i.rawX,c=i.rawY,h=r.rawX,p=r.rawY;var d=LC(u,c),f=LC(u,c+(p-c)*n),g=LC(h,p+(c-p)*n),y=LC(h,p);return{x1:d.x||0,y1:d.y||0,x2:y.x||0,y2:y.y||0,cpx1:f.x||0,cpy1:f.y||0,cpx2:g.x||0,cpy2:g.y||0}}return u=i.x,c=i.y,h=r.x,p=r.y,"LR"!==e&&"RL"!==e||(o=u+(h-u)*n,a=c,s=h+(u-h)*n,l=p),"TB"!==e&&"BT"!==e||(o=u,a=c+(p-c)*n,s=h,l=p+(c-p)*n),{x1:u,y1:c,x2:h,y2:p,cpx1:o,cpy1:a,cpx2:s,cpy2:l}}var UC=Vo();function ZC(t){var e=t.mainData,n=t.datas;n||(n={main:e},t.datasAttr={main:"data"}),t.datas=t.mainData=null,QC(e,n,t),E(n,(function(n){E(e.TRANSFERABLE_METHODS,(function(e){n.wrapMethod(e,H(jC,t))}))})),e.wrapMethod("cloneShallow",H(KC,t)),E(e.CHANGABLE_METHODS,(function(n){e.wrapMethod(n,H(qC,t))})),lt(n[e.dataType]===e)}function jC(t,e){if(UC(i=this).mainData===i){var n=A({},UC(this).datas);n[this.dataType]=e,QC(e,n,t)}else tD(e,this.dataType,UC(this).mainData,t);var i;return e}function qC(t,e){return t.struct&&t.struct.update(),e}function KC(t,e){return E(UC(e).datas,(function(n,i){n!==e&&tD(n.cloneShallow(),i,e,t)})),e}function $C(t){var e=UC(this).mainData;return null==t||null==e?e:UC(e).datas[t]}function JC(){var t=UC(this).mainData;return null==t?[{data:t}]:z(G(UC(t).datas),(function(e){return{type:e,data:UC(t).datas[e]}}))}function QC(t,e,n){UC(t).datas={},E(e,(function(e,i){tD(e,i,t,n)}))}function tD(t,e,n,i){UC(n).datas[e]=t,UC(t).mainData=n,t.dataType=e,i.struct&&(t[i.structAttr]=i.struct,i.struct[i.datasAttr[e]]=t),t.getLinkedData=$C,t.getLinkedDataAll=JC}var eD=function(){function t(t,e){this.depth=0,this.height=0,this.dataIndex=-1,this.children=[],this.viewChildren=[],this.isExpand=!1,this.name=t||"",this.hostTree=e}return t.prototype.isRemoved=function(){return this.dataIndex<0},t.prototype.eachNode=function(t,e,n){X(t)&&(n=e,e=t,t=null),U(t=t||{})&&(t={order:t});var i,r=t.order||"preorder",o=this[t.attr||"children"];"preorder"===r&&(i=e.call(n,this));for(var a=0;!i&&a<o.length;a++)o[a].eachNode(t,e,n);"postorder"===r&&e.call(n,this)},t.prototype.updateDepthAndHeight=function(t){var e=0;this.depth=t;for(var n=0;n<this.children.length;n++){var i=this.children[n];i.updateDepthAndHeight(t+1),i.height>e&&(e=i.height)}this.height=e+1},t.prototype.getNodeById=function(t){if(this.getId()===t)return this;for(var e=0,n=this.children,i=n.length;e<i;e++){var r=n[e].getNodeById(t);if(r)return r}},t.prototype.contains=function(t){if(t===this)return!0;for(var e=0,n=this.children,i=n.length;e<i;e++){var r=n[e].contains(t);if(r)return r}},t.prototype.getAncestors=function(t){for(var e=[],n=t?this:this.parentNode;n;)e.push(n),n=n.parentNode;return e.reverse(),e},t.prototype.getAncestorsIndices=function(){for(var t=[],e=this;e;)t.push(e.dataIndex),e=e.parentNode;return t.reverse(),t},t.prototype.getDescendantIndices=function(){var t=[];return this.eachNode((function(e){t.push(e.dataIndex)})),t},t.prototype.getValue=function(t){var e=this.hostTree.data;return e.getStore().get(e.getDimensionIndex(t||"value"),this.dataIndex)},t.prototype.setLayout=function(t,e){this.dataIndex>=0&&this.hostTree.data.setItemLayout(this.dataIndex,t,e)},t.prototype.getLayout=function(){return this.hostTree.data.getItemLayout(this.dataIndex)},t.prototype.getModel=function(t){if(!(this.dataIndex<0))return this.hostTree.data.getItemModel(this.dataIndex).getModel(t)},t.prototype.getLevelModel=function(){return(this.hostTree.levelModels||[])[this.depth]},t.prototype.setVisual=function(t,e){this.dataIndex>=0&&this.hostTree.data.setItemVisual(this.dataIndex,t,e)},t.prototype.getVisual=function(t){return this.hostTree.data.getItemVisual(this.dataIndex,t)},t.prototype.getRawIndex=function(){return this.hostTree.data.getRawIndex(this.dataIndex)},t.prototype.getId=function(){return this.hostTree.data.getId(this.dataIndex)},t.prototype.getChildIndex=function(){if(this.parentNode){for(var t=this.parentNode.children,e=0;e<t.length;++e)if(t[e]===this)return e;return-1}return-1},t.prototype.isAncestorOf=function(t){for(var e=t.parentNode;e;){if(e===this)return!0;e=e.parentNode}return!1},t.prototype.isDescendantOf=function(t){return t!==this&&t.isAncestorOf(this)},t}(),nD=function(){function t(t){this.type="tree",this._nodes=[],this.hostModel=t}return t.prototype.eachNode=function(t,e,n){this.root.eachNode(t,e,n)},t.prototype.getNodeByDataIndex=function(t){var e=this.data.getRawIndex(t);return this._nodes[e]},t.prototype.getNodeById=function(t){return this.root.getNodeById(t)},t.prototype.update=function(){for(var t=this.data,e=this._nodes,n=0,i=e.length;n<i;n++)e[n].dataIndex=-1;for(n=0,i=t.count();n<i;n++)e[t.getRawIndex(n)].dataIndex=n},t.prototype.clearLayouts=function(){this.data.clearItemLayouts()},t.createTree=function(e,n,i){var r=new t(n),o=[],a=1;!function t(e,n){var i=e.value;a=Math.max(a,Y(i)?i.length:1),o.push(e);var s=new eD(Ro(e.name,""),r);n?function(t,e){var n=e.children;if(t.parentNode===e)return;n.push(t),t.parentNode=e}(s,n):r.root=s,r._nodes.push(s);var l=e.children;if(l)for(var u=0;u<l.length;u++)t(l[u],s)}(e),r.root.updateDepthAndHeight(0);var s=px(o,{coordDimensions:["value"],dimensionsCount:a}).dimensions,l=new cx(s,n);return l.initData(o),i&&i(l),ZC({mainData:l,struct:r,structAttr:"tree"}),r.update(),r},t}();function iD(t,e,n){if(t&&P(e,t.type)>=0){var i=n.getData().tree.root,r=t.targetNode;if(U(r)&&(r=i.getNodeById(r)),r&&i.contains(r))return{node:r};var o=t.targetNodeId;if(null!=o&&(r=i.getNodeById(o)))return{node:r}}}function rD(t){for(var e=[];t;)(t=t.parentNode)&&e.push(t);return e.reverse()}function oD(t,e){return P(rD(t),e)>=0}function aD(t,e){for(var n=[];t;){var i=t.dataIndex;n.push({name:t.name,dataIndex:i,value:e.getRawValue(i)}),t=t.parentNode}return n.reverse(),n}var sD=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.hasSymbolVisual=!0,e.ignoreStyleOnData=!0,e}return n(e,t),e.prototype.getInitialData=function(t){var e={name:t.name,children:t.data},n=t.leaves||{},i=new Cc(n,this,this.ecModel),r=nD.createTree(e,this,(function(t){t.wrapMethod("getItemModel",(function(t,e){var n=r.getNodeByDataIndex(e);return n&&n.children.length&&n.isExpand||(t.parentModel=i),t}))}));var o=0;r.eachNode("preorder",(function(t){t.depth>o&&(o=t.depth)}));var a=t.expandAndCollapse&&t.initialTreeDepth>=0?t.initialTreeDepth:o;return r.root.eachNode("preorder",(function(t){var e=t.hostTree.data.getRawDataItem(t.dataIndex);t.isExpand=e&&null!=e.collapsed?!e.collapsed:t.depth<=a})),r.data},e.prototype.getOrient=function(){var t=this.get("orient");return"horizontal"===t?t="LR":"vertical"===t&&(t="TB"),t},e.prototype.setZoom=function(t){this.option.zoom=t},e.prototype.setCenter=function(t){this.option.center=t},e.prototype.formatTooltip=function(t,e,n){for(var i=this.getData().tree,r=i.root.children[0],o=i.getNodeByDataIndex(t),a=o.getValue(),s=o.name;o&&o!==r;)s=o.parentNode.name+"."+s,o=o.parentNode;return og("nameValue",{name:s,value:a,noValue:isNaN(a)||null==a})},e.prototype.getDataParams=function(e){var n=t.prototype.getDataParams.apply(this,arguments),i=this.getData().tree.getNodeByDataIndex(e);return n.treeAncestors=aD(i,this),n.collapsed=!i.isExpand,n},e.type="series.tree",e.layoutMode="box",e.defaultOption={z:2,coordinateSystem:"view",left:"12%",top:"12%",right:"12%",bottom:"12%",layout:"orthogonal",edgeShape:"curve",edgeForkPosition:"50%",roam:!1,nodeScaleRatio:.4,center:null,zoom:1,orient:"LR",symbol:"emptyCircle",symbolSize:7,expandAndCollapse:!0,initialTreeDepth:2,lineStyle:{color:"#ccc",width:1.5,curveness:.5},itemStyle:{color:"lightsteelblue",borderWidth:1.5},label:{show:!0},animationEasing:"linear",animationDuration:700,animationDurationUpdate:500},e}(bg);function lD(t,e){for(var n,i=[t];n=i.pop();)if(e(n),n.isExpand){var r=n.children;if(r.length)for(var o=r.length-1;o>=0;o--)i.push(r[o])}}function uD(t,e){t.eachSeriesByType("tree",(function(t){!function(t,e){var n=function(t,e){return kp(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()})}(t,e);t.layoutInfo=n;var i=t.get("layout"),r=0,o=0,a=null;"radial"===i?(r=2*Math.PI,o=Math.min(n.height,n.width)/2,a=kC((function(t,e){return(t.parentNode===e.parentNode?1:2)/t.depth}))):(r=n.width,o=n.height,a=kC());var s=t.getData().tree.root,l=s.children[0];if(l){!function(t){var e=t;e.hierNode={defaultAncestor:null,ancestor:e,prelim:0,modifier:0,change:0,shift:0,i:0,thread:null};for(var n,i,r=[e];n=r.pop();)if(i=n.children,n.isExpand&&i.length)for(var o=i.length-1;o>=0;o--){var a=i[o];a.hierNode={defaultAncestor:null,ancestor:a,prelim:0,modifier:0,change:0,shift:0,i:o,thread:null},r.push(a)}}(s),function(t,e,n){for(var i,r=[t],o=[];i=r.pop();)if(o.push(i),i.isExpand){var a=i.children;if(a.length)for(var s=0;s<a.length;s++)r.push(a[s])}for(;i=o.pop();)e(i,n)}(l,DC,a),s.hierNode.modifier=-l.hierNode.prelim,lD(l,AC);var u=l,h=l,c=l;lD(l,(function(t){var e=t.getLayout().x;e<u.getLayout().x&&(u=t),e>h.getLayout().x&&(h=t),t.depth>c.depth&&(c=t)}));var p=u===h?1:a(u,h)/2,d=p-u.getLayout().x,f=0,g=0,y=0,v=0;if("radial"===i)f=r/(h.getLayout().x+p+d),g=o/(c.depth-1||1),lD(l,(function(t){y=(t.getLayout().x+d)*f,v=(t.depth-1)*g;var e=LC(y,v);t.setLayout({x:e.x,y:e.y,rawX:y,rawY:v},!0)}));else{var m=t.getOrient();"RL"===m||"LR"===m?(g=o/(h.getLayout().x+p+d),f=r/(c.depth-1||1),lD(l,(function(t){v=(t.getLayout().x+d)*g,y="LR"===m?(t.depth-1)*f:r-(t.depth-1)*f,t.setLayout({x:y,y:v},!0)}))):"TB"!==m&&"BT"!==m||(f=r/(h.getLayout().x+p+d),g=o/(c.depth-1||1),lD(l,(function(t){y=(t.getLayout().x+d)*f,v="TB"===m?(t.depth-1)*g:o-(t.depth-1)*g,t.setLayout({x:y,y:v},!0)})))}}}(t,e)}))}function hD(t){t.eachSeriesByType("tree",(function(t){var e=t.getData();e.tree.eachNode((function(t){var n=t.getModel().getModel("itemStyle").getItemStyle();A(e.ensureUniqueItemVisual(t.dataIndex,"style"),n)}))}))}var cD=["treemapZoomToNode","treemapRender","treemapMove"];function pD(t){var e=t.getData().tree,n={};e.eachNode((function(e){for(var i=e;i&&i.depth>1;)i=i.parentNode;var r=pd(t.ecModel,i.name||i.dataIndex+"",n);e.setVisual("decal",r)}))}var dD=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.preventUsingHoverLayer=!0,n}return n(e,t),e.prototype.getInitialData=function(t,e){var n={name:t.name,children:t.data};fD(n);var i=t.levels||[],r=this.designatedVisualItemStyle={},o=new Cc({itemStyle:r},this,e);i=t.levels=function(t,e){var n,i,r=To(e.get("color")),o=To(e.get(["aria","decal","decals"]));if(!r)return;t=t||[],E(t,(function(t){var e=new Cc(t),r=e.get("color"),o=e.get("decal");(e.get(["itemStyle","color"])||r&&"none"!==r)&&(n=!0),(e.get(["itemStyle","decal"])||o&&"none"!==o)&&(i=!0)}));var a=t[0]||(t[0]={});n||(a.color=r.slice());!i&&o&&(a.decal=o.slice());return t}(i,e);var a=z(i||[],(function(t){return new Cc(t,o,e)}),this),s=nD.createTree(n,this,(function(t){t.wrapMethod("getItemModel",(function(t,e){var n=s.getNodeByDataIndex(e),i=n?a[n.depth]:null;return t.parentModel=i||o,t}))}));return s.data},e.prototype.optionUpdated=function(){this.resetViewRoot()},e.prototype.formatTooltip=function(t,e,n){var i=this.getData(),r=this.getRawValue(t);return og("nameValue",{name:i.getName(t),value:r})},e.prototype.getDataParams=function(e){var n=t.prototype.getDataParams.apply(this,arguments),i=this.getData().tree.getNodeByDataIndex(e);return n.treeAncestors=aD(i,this),n.treePathInfo=n.treeAncestors,n},e.prototype.setLayoutInfo=function(t){this.layoutInfo=this.layoutInfo||{},A(this.layoutInfo,t)},e.prototype.mapIdToIndex=function(t){var e=this._idIndexMap;e||(e=this._idIndexMap=yt(),this._idIndexMapCount=0);var n=e.get(t);return null==n&&e.set(t,n=this._idIndexMapCount++),n},e.prototype.getViewRoot=function(){return this._viewRoot},e.prototype.resetViewRoot=function(t){t?this._viewRoot=t:t=this._viewRoot;var e=this.getRawData().tree.root;t&&(t===e||e.contains(t))||(this._viewRoot=e)},e.prototype.enableAriaDecal=function(){pD(this)},e.type="series.treemap",e.layoutMode="box",e.defaultOption={progressive:0,left:"center",top:"middle",width:"80%",height:"80%",sort:!0,clipWindow:"origin",squareRatio:.5*(1+Math.sqrt(5)),leafDepth:null,drillDownIcon:"▶",zoomToNodeRatio:.1024,scaleLimit:null,roam:!0,nodeClick:"zoomToNode",animation:!0,animationDurationUpdate:900,animationEasing:"quinticInOut",breadcrumb:{show:!0,height:22,left:"center",top:"bottom",emptyItemWidth:25,itemStyle:{color:"rgba(0,0,0,0.7)",textStyle:{color:"#fff"}},emphasis:{itemStyle:{color:"rgba(0,0,0,0.9)"}}},label:{show:!0,distance:0,padding:5,position:"inside",color:"#fff",overflow:"truncate"},upperLabel:{show:!1,position:[0,"50%"],height:20,overflow:"truncate",verticalAlign:"middle"},itemStyle:{color:null,colorAlpha:null,colorSaturation:null,borderWidth:0,gapWidth:0,borderColor:"#fff",borderColorSaturation:null},emphasis:{upperLabel:{show:!0,position:[0,"50%"],overflow:"truncate",verticalAlign:"middle"}},visualDimension:0,visualMin:null,visualMax:null,color:[],colorAlpha:null,colorSaturation:null,colorMappingBy:"index",visibleMin:10,childrenVisibleMin:null,levels:[]},e}(bg);function fD(t){var e=0;E(t.children,(function(t){fD(t);var n=t.value;Y(n)&&(n=n[0]),e+=n}));var n=t.value;Y(n)&&(n=n[0]),(null==n||isNaN(n))&&(n=e),n<0&&(n=0),Y(t.value)?t.value[0]=n:t.value=n}var gD=function(){function t(t){this.group=new Br,t.add(this.group)}return t.prototype.render=function(t,e,n,i){var r=t.getModel("breadcrumb"),o=this.group;if(o.removeAll(),r.get("show")&&n){var a=r.getModel("itemStyle"),s=r.getModel("emphasis"),l=a.getModel("textStyle"),u=s.getModel(["itemStyle","textStyle"]),h={pos:{left:r.get("left"),right:r.get("right"),top:r.get("top"),bottom:r.get("bottom")},box:{width:e.getWidth(),height:e.getHeight()},emptyItemWidth:r.get("emptyItemWidth"),totalWidth:0,renderList:[]};this._prepare(n,h,l),this._renderContent(t,h,a,s,l,u,i),Lp(o,h.pos,h.box)}},t.prototype._prepare=function(t,e,n){for(var i=t;i;i=i.parentNode){var r=Ro(i.getModel().get("name"),""),o=n.getTextRect(r),a=Math.max(o.width+16,e.emptyItemWidth);e.totalWidth+=a+8,e.renderList.push({node:i,text:r,width:a})}},t.prototype._renderContent=function(t,e,n,i,r,o,a){for(var s,l,u,h,c,p,d,f,g,y=0,v=e.emptyItemWidth,m=t.get(["breadcrumb","height"]),x=(s=e.pos,l=e.box,h=l.width,c=l.height,p=$r(s.left,h),d=$r(s.top,c),f=$r(s.right,h),g=$r(s.bottom,c),(isNaN(p)||isNaN(parseFloat(s.left)))&&(p=0),(isNaN(f)||isNaN(parseFloat(s.right)))&&(f=h),(isNaN(d)||isNaN(parseFloat(s.top)))&&(d=0),(isNaN(g)||isNaN(parseFloat(s.bottom)))&&(g=c),u=vp(u||0),{width:Math.max(f-p-u[1]-u[3],0),height:Math.max(g-d-u[0]-u[2],0)}),_=e.totalWidth,b=e.renderList,w=i.getModel("itemStyle").getItemStyle(),S=b.length-1;S>=0;S--){var M=b[S],I=M.node,T=M.width,C=M.text;_>x.width&&(_-=T-v,T=v,C=null);var D=new Xu({shape:{points:yD(y,0,T,m,S===b.length-1,0===S)},style:k(n.getItemStyle(),{lineJoin:"bevel"}),textContent:new Xs({style:oc(r,{text:C})}),textConfig:{position:"inside"},z2:1e5,onclick:H(a,I)});D.disableLabelAnimation=!0,D.getTextContent().ensureState("emphasis").style=oc(o,{text:C}),D.ensureState("emphasis").style=w,Zl(D,i.get("focus"),i.get("blurScope"),i.get("disabled")),this.group.add(D),vD(D,t,I),y+=T+8}},t.prototype.remove=function(){this.group.removeAll()},t}();function yD(t,e,n,i,r,o){var a=[[r?t:t-5,e],[t+n,e],[t+n,e+i],[r?t:t-5,e+i]];return!o&&a.splice(2,0,[t+n+5,e+i/2]),!r&&a.push([t,e+i/2]),a}function vD(t,e,n){rl(t).eventData={componentType:"series",componentSubType:"treemap",componentIndex:e.componentIndex,seriesIndex:e.seriesIndex,seriesName:e.name,seriesType:"treemap",selfType:"breadcrumb",nodeData:{dataIndex:n&&n.dataIndex,name:n&&n.name},treePathInfo:n&&aD(n,e)}}var mD=function(){function t(){this._storage=[],this._elExistsMap={}}return t.prototype.add=function(t,e,n,i,r){return!this._elExistsMap[t.id]&&(this._elExistsMap[t.id]=!0,this._storage.push({el:t,target:e,duration:n,delay:i,easing:r}),!0)},t.prototype.finished=function(t){return this._finishedCallback=t,this},t.prototype.start=function(){for(var t=this,e=this._storage.length,n=function(){--e<=0&&(t._storage.length=0,t._elExistsMap={},t._finishedCallback&&t._finishedCallback())},i=0,r=this._storage.length;i<r;i++){var o=this._storage[i];o.el.animateTo(o.target,{duration:o.duration,delay:o.delay,easing:o.easing,setToFinal:!0,done:n,aborted:n})}return this},t}();var xD=Br,_D=Ws,bD="label",wD="upperLabel",SD=ia([["fill","color"],["stroke","strokeColor"],["lineWidth","strokeWidth"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["shadowColor"]]),MD=function(t){var e=SD(t);return e.stroke=e.fill=e.lineWidth=null,e},ID=Vo(),TD=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._state="ready",n._storage={nodeGroup:[],background:[],content:[]},n}return n(e,t),e.prototype.render=function(t,e,n,i){if(!(P(e.findComponents({mainType:"series",subType:"treemap",query:i}),t)<0)){this.seriesModel=t,this.api=n,this.ecModel=e;var r=iD(i,["treemapZoomToNode","treemapRootToNode"],t),o=i&&i.type,a=t.layoutInfo,s=!this._oldTree,l=this._storage,u="treemapRootToNode"===o&&r&&l?{rootNodeGroup:l.nodeGroup[r.node.getRawIndex()],direction:i.direction}:null,h=this._giveContainerGroup(a),c=t.get("animation"),p=this._doRender(h,t,u);!c||s||o&&"treemapZoomToNode"!==o&&"treemapRootToNode"!==o?p.renderFinally():this._doAnimation(h,p,t,u),this._resetController(n),this._renderBreadcrumb(t,n,r)}},e.prototype._giveContainerGroup=function(t){var e=this._containerGroup;return e||(e=this._containerGroup=new xD,this._initEvents(e),this.group.add(e)),e.x=t.x,e.y=t.y,e},e.prototype._doRender=function(t,e,n){var i=e.getData().tree,r=this._oldTree,o={nodeGroup:[],background:[],content:[]},a={nodeGroup:[],background:[],content:[]},s=this._storage,l=[];function u(t,i,r,u){return function(t,e,n,i,r,o,a,s,l,u){if(!a)return;var h=a.getLayout(),c=t.getData(),p=a.getModel();if(c.setItemGraphicEl(a.dataIndex,null),!h||!h.isInView)return;var d=h.width,f=h.height,g=h.borderWidth,y=h.invisible,v=a.getRawIndex(),m=s&&s.getRawIndex(),x=a.viewChildren,_=h.upperHeight,b=x&&x.length,w=p.getModel("itemStyle"),S=p.getModel(["emphasis","itemStyle"]),M=p.getModel(["blur","itemStyle"]),I=p.getModel(["select","itemStyle"]),T=w.get("borderRadius")||0,C=G("nodeGroup",xD);if(!C)return;if(l.add(C),C.x=h.x||0,C.y=h.y||0,C.markRedraw(),ID(C).nodeWidth=d,ID(C).nodeHeight=f,h.isAboveViewRoot)return C;var D=G("background",_D,u,20);D&&E(C,D,b&&h.upperLabelHeight);var k=p.getModel("emphasis"),L=k.get("focus"),P=k.get("blurScope"),O=k.get("disabled"),R="ancestor"===L?a.getAncestorsIndices():"descendant"===L?a.getDescendantIndices():L;if(b)Ql(C)&&Jl(C,!1),D&&(Jl(D,!O),c.setItemGraphicEl(a.dataIndex,D),jl(D,R,P));else{var N=G("content",_D,u,30);N&&z(C,N),D.disableMorphing=!0,D&&Ql(D)&&Jl(D,!1),Jl(C,!O),c.setItemGraphicEl(a.dataIndex,C),jl(C,R,P)}return C;function E(e,n,i){var r=rl(n);if(r.dataIndex=a.dataIndex,r.seriesIndex=t.seriesIndex,n.setShape({x:0,y:0,width:d,height:f,r:T}),y)V(n);else{n.invisible=!1;var o=a.getVisual("style"),s=o.stroke,l=MD(w);l.fill=s;var u=SD(S);u.fill=S.get("borderColor");var h=SD(M);h.fill=M.get("borderColor");var c=SD(I);if(c.fill=I.get("borderColor"),i){var p=d-2*g;B(n,s,o.opacity,{x:g,y:0,width:p,height:_})}else n.removeTextContent();n.setStyle(l),n.ensureState("emphasis").style=u,n.ensureState("blur").style=h,n.ensureState("select").style=c,kl(n)}e.add(n)}function z(e,n){var i=rl(n);i.dataIndex=a.dataIndex,i.seriesIndex=t.seriesIndex;var r=Math.max(d-2*g,0),o=Math.max(f-2*g,0);if(n.culling=!0,n.setShape({x:g,y:g,width:r,height:o,r:T}),y)V(n);else{n.invisible=!1;var s=a.getVisual("style"),l=s.fill,u=MD(w);u.fill=l,u.decal=s.decal;var h=SD(S),c=SD(M),p=SD(I);B(n,l,s.opacity,null),n.setStyle(u),n.ensureState("emphasis").style=h,n.ensureState("blur").style=c,n.ensureState("select").style=p,kl(n)}e.add(n)}function V(t){!t.invisible&&o.push(t)}function B(e,n,i,r){var o=p.getModel(r?wD:bD),s=Ro(p.get("name"),null),l=o.getShallow("show");ic(e,rc(p,r?wD:bD),{defaultText:l?s:null,inheritColor:n,defaultOpacity:i,labelFetcher:t,labelDataIndex:a.dataIndex});var u=e.getTextContent();if(u){var c=u.style,d=st(c.padding||0);r&&(e.setTextConfig({layoutRect:r}),u.disableLabelLayout=!0),u.beforeUpdate=function(){var t=Math.max((r?r.width:e.shape.width)-d[1]-d[3],0),n=Math.max((r?r.height:e.shape.height)-d[0]-d[2],0);c.width===t&&c.height===n||u.setStyle({width:t,height:n})},c.truncateMinChar=2,c.lineOverflow="truncate",F(c,r,h);var f=u.getState("emphasis");F(f?f.style:null,r,h)}}function F(e,n,i){var r=e?e.text:null;if(!n&&i.isLeafRoot&&null!=r){var o=t.get("drillDownIcon",!0);e.text=o?o+" "+r:r}}function G(t,i,o,a){var s=null!=m&&n[t][m],l=r[t];return s?(n[t][m]=null,W(l,s)):y||((s=new i)instanceof Da&&(s.z2=function(t,e){return 100*t+e}(o,a)),H(l,s)),e[t][v]=s}function W(t,e){var n=t[v]={};e instanceof xD?(n.oldX=e.x,n.oldY=e.y):n.oldShape=A({},e.shape)}function H(t,e){var n=t[v]={},o=a.parentNode,s=e instanceof Br;if(o&&(!i||"drillDown"===i.direction)){var l=0,u=0,h=r.background[o.getRawIndex()];!i&&h&&h.oldShape&&(l=h.oldShape.width,u=h.oldShape.height),s?(n.oldX=0,n.oldY=u):n.oldShape={x:l,y:u,width:0,height:0}}n.fadein=!s}}(e,a,s,n,o,l,t,i,r,u)}!function t(e,n,i,r,o){r?(n=e,E(e,(function(t,e){!t.isRemoved()&&s(e,e)}))):new Gm(n,e,a,a).add(s).update(s).remove(H(s,null)).execute();function a(t){return t.getId()}function s(a,s){var l=null!=a?e[a]:null,h=null!=s?n[s]:null,c=u(l,h,i,o);c&&t(l&&l.viewChildren||[],h&&h.viewChildren||[],c,r,o+1)}}(i.root?[i.root]:[],r&&r.root?[r.root]:[],t,i===r||!r,0);var h=function(t){var e={nodeGroup:[],background:[],content:[]};return t&&E(t,(function(t,n){var i=e[n];E(t,(function(t){t&&(i.push(t),ID(t).willDelete=!0)}))})),e}(s);if(this._oldTree=i,this._storage=a,this._controllerHost){var c=this.seriesModel.layoutInfo,p=i.root.getLayout();p.width===c.width&&p.height===c.height&&(this._controllerHost.zoom=1)}return{lastsForAnimation:o,willDeleteEls:h,renderFinally:function(){E(h,(function(t){E(t,(function(t){t.parent&&t.parent.remove(t)}))})),E(l,(function(t){t.invisible=!0,t.dirty()}))}}},e.prototype._doAnimation=function(t,e,n,i){var r=n.get("animationDurationUpdate"),o=n.get("animationEasing"),a=(X(r)?0:r)||0,s=(X(o)?null:o)||"cubicOut",l=new mD;E(e.willDeleteEls,(function(t,e){E(t,(function(t,n){if(!t.invisible){var r,o=t.parent,u=ID(o);if(i&&"drillDown"===i.direction)r=o===i.rootNodeGroup?{shape:{x:0,y:0,width:u.nodeWidth,height:u.nodeHeight},style:{opacity:0}}:{style:{opacity:0}};else{var h=0,c=0;u.willDelete||(h=u.nodeWidth/2,c=u.nodeHeight/2),r="nodeGroup"===e?{x:h,y:c,style:{opacity:0}}:{shape:{x:h,y:c,width:0,height:0},style:{opacity:0}}}r&&l.add(t,r,a,0,s)}}))})),E(this._storage,(function(t,n){E(t,(function(t,i){var r=e.lastsForAnimation[n][i],o={};r&&(t instanceof Br?null!=r.oldX&&(o.x=t.x,o.y=t.y,t.x=r.oldX,t.y=r.oldY):(r.oldShape&&(o.shape=A({},t.shape),t.setShape(r.oldShape)),r.fadein?(t.setStyle("opacity",0),o.style={opacity:1}):1!==t.style.opacity&&(o.style={opacity:1})),l.add(t,o,a,0,s))}))}),this),this._state="animating",l.finished(W((function(){this._state="ready",e.renderFinally()}),this)).start()},e.prototype._resetController=function(t){var e=this._controller,n=this._controllerHost;n||(this._controllerHost={target:this.group},n=this._controllerHost),e||((e=this._controller=new nT(t.getZr())).enable(this.seriesModel.get("roam")),n.zoomLimit=this.seriesModel.get("scaleLimit"),n.zoom=this.seriesModel.get("zoom"),e.on("pan",W(this._onPan,this)),e.on("zoom",W(this._onZoom,this)));var i=new ze(0,0,t.getWidth(),t.getHeight());e.setPointerChecker((function(t,e,n){return i.contain(e,n)}))},e.prototype._clearController=function(){var t=this._controller;this._controllerHost=null,t&&(t.dispose(),t=null)},e.prototype._onPan=function(t){if("animating"!==this._state&&(Math.abs(t.dx)>3||Math.abs(t.dy)>3)){var e=this.seriesModel.getData().tree.root;if(!e)return;var n=e.getLayout();if(!n)return;this.api.dispatchAction({type:"treemapMove",from:this.uid,seriesId:this.seriesModel.id,rootRect:{x:n.x+t.dx,y:n.y+t.dy,width:n.width,height:n.height}})}},e.prototype._onZoom=function(t){var e=t.originX,n=t.originY,i=t.scale;if("animating"!==this._state){var r=this.seriesModel.getData().tree.root;if(!r)return;var o=r.getLayout();if(!o)return;var a,s=new ze(o.x,o.y,o.width,o.height),l=this._controllerHost;a=l.zoomLimit;var u=l.zoom=l.zoom||1;if(u*=i,a){var h=a.min||0,c=a.max||1/0;u=Math.max(Math.min(c,u),h)}var p=u/l.zoom;l.zoom=u;var d=this.seriesModel.layoutInfo,f=[1,0,0,1,0,0];we(f,f,[-(e-=d.x),-(n-=d.y)]),Me(f,f,[p,p]),we(f,f,[e,n]),s.applyTransform(f),this.api.dispatchAction({type:"treemapRender",from:this.uid,seriesId:this.seriesModel.id,rootRect:{x:s.x,y:s.y,width:s.width,height:s.height}})}},e.prototype._initEvents=function(t){var e=this;t.on("click",(function(t){if("ready"===e._state){var n=e.seriesModel.get("nodeClick",!0);if(n){var i=e.findTarget(t.offsetX,t.offsetY);if(i){var r=i.node;if(r.getLayout().isLeafRoot)e._rootToNode(i);else if("zoomToNode"===n)e._zoomToNode(i);else if("link"===n){var o=r.hostTree.data.getItemModel(r.dataIndex),a=o.get("link",!0),s=o.get("target",!0)||"blank";a&&Mp(a,s)}}}}}),this)},e.prototype._renderBreadcrumb=function(t,e,n){var i=this;n||(n=null!=t.get("leafDepth",!0)?{node:t.getViewRoot()}:this.findTarget(e.getWidth()/2,e.getHeight()/2))||(n={node:t.getData().tree.root}),(this._breadcrumb||(this._breadcrumb=new gD(this.group))).render(t,e,n.node,(function(e){"animating"!==i._state&&(oD(t.getViewRoot(),e)?i._rootToNode({node:e}):i._zoomToNode({node:e}))}))},e.prototype.remove=function(){this._clearController(),this._containerGroup&&this._containerGroup.removeAll(),this._storage={nodeGroup:[],background:[],content:[]},this._state="ready",this._breadcrumb&&this._breadcrumb.remove()},e.prototype.dispose=function(){this._clearController()},e.prototype._zoomToNode=function(t){this.api.dispatchAction({type:"treemapZoomToNode",from:this.uid,seriesId:this.seriesModel.id,targetNode:t.node})},e.prototype._rootToNode=function(t){this.api.dispatchAction({type:"treemapRootToNode",from:this.uid,seriesId:this.seriesModel.id,targetNode:t.node})},e.prototype.findTarget=function(t,e){var n;return this.seriesModel.getViewRoot().eachNode({attr:"viewChildren",order:"preorder"},(function(i){var r=this._storage.background[i.getRawIndex()];if(r){var o=r.transformCoordToLocal(t,e),a=r.shape;if(!(a.x<=o[0]&&o[0]<=a.x+a.width&&a.y<=o[1]&&o[1]<=a.y+a.height))return!1;n={node:i,offsetX:o[0],offsetY:o[1]}}}),this),n},e.type="treemap",e}(Og);var CD=E,DD=q,AD=-1,kD=function(){function t(e){var n=e.mappingMethod,i=e.type,r=this.option=T(e);this.type=i,this.mappingMethod=n,this._normalizeData=FD[n];var o=t.visualHandlers[i];this.applyVisual=o.applyVisual,this.getColorMapper=o.getColorMapper,this._normalizedToVisual=o._normalizedToVisual[n],"piecewise"===n?(LD(r),function(t){var e=t.pieceList;t.hasSpecialVisual=!1,E(e,(function(e,n){e.originIndex=n,null!=e.visual&&(t.hasSpecialVisual=!0)}))}(r)):"category"===n?r.categories?function(t){var e=t.categories,n=t.categoryMap={},i=t.visual;if(CD(e,(function(t,e){n[t]=e})),!Y(i)){var r=[];q(i)?CD(i,(function(t,e){var i=n[e];r[null!=i?i:AD]=t})):r[-1]=i,i=BD(t,r)}for(var o=e.length-1;o>=0;o--)null==i[o]&&(delete n[e[o]],e.pop())}(r):LD(r,!0):(lt("linear"!==n||r.dataExtent),LD(r))}return t.prototype.mapValueToVisual=function(t){var e=this._normalizeData(t);return this._normalizedToVisual(e,t)},t.prototype.getNormalizer=function(){return W(this._normalizeData,this)},t.listVisualTypes=function(){return G(t.visualHandlers)},t.isValidType=function(e){return t.visualHandlers.hasOwnProperty(e)},t.eachVisual=function(t,e,n){q(t)?E(t,e,n):e.call(n,t)},t.mapVisual=function(e,n,i){var r,o=Y(e)?[]:q(e)?{}:(r=!0,null);return t.eachVisual(e,(function(t,e){var a=n.call(i,t,e);r?o=a:o[e]=a})),o},t.retrieveVisuals=function(e){var n,i={};return e&&CD(t.visualHandlers,(function(t,r){e.hasOwnProperty(r)&&(i[r]=e[r],n=!0)})),n?i:null},t.prepareVisualTypes=function(t){if(Y(t))t=t.slice();else{if(!DD(t))return[];var e=[];CD(t,(function(t,n){e.push(n)})),t=e}return t.sort((function(t,e){return"color"===e&&"color"!==t&&0===t.indexOf("color")?1:-1})),t},t.dependsOn=function(t,e){return"color"===e?!(!t||0!==t.indexOf(e)):t===e},t.findPieceIndex=function(t,e,n){for(var i,r=1/0,o=0,a=e.length;o<a;o++){var s=e[o].value;if(null!=s){if(s===t||U(s)&&s===t+"")return o;n&&c(s,o)}}for(o=0,a=e.length;o<a;o++){var l=e[o],u=l.interval,h=l.close;if(u){if(u[0]===-1/0){if(GD(h[1],t,u[1]))return o}else if(u[1]===1/0){if(GD(h[0],u[0],t))return o}else if(GD(h[0],u[0],t)&&GD(h[1],t,u[1]))return o;n&&c(u[0],o),n&&c(u[1],o)}}if(n)return t===1/0?e.length-1:t===-1/0?0:i;function c(e,n){var o=Math.abs(e-t);o<r&&(r=o,i=n)}},t.visualHandlers={color:{applyVisual:RD("color"),getColorMapper:function(){var t=this.option;return W("category"===t.mappingMethod?function(t,e){return!e&&(t=this._normalizeData(t)),ND.call(this,t)}:function(e,n,i){var r=!!i;return!n&&(e=this._normalizeData(e)),i=Jn(e,t.parsedVisual,i),r?i:ri(i,"rgba")},this)},_normalizedToVisual:{linear:function(t){return ri(Jn(t,this.option.parsedVisual),"rgba")},category:ND,piecewise:function(t,e){var n=VD.call(this,e);return null==n&&(n=ri(Jn(t,this.option.parsedVisual),"rgba")),n},fixed:ED}},colorHue:PD((function(t,e){return ni(t,e)})),colorSaturation:PD((function(t,e){return ni(t,null,e)})),colorLightness:PD((function(t,e){return ni(t,null,null,e)})),colorAlpha:PD((function(t,e){return ii(t,e)})),decal:{applyVisual:RD("decal"),_normalizedToVisual:{linear:null,category:ND,piecewise:null,fixed:null}},opacity:{applyVisual:RD("opacity"),_normalizedToVisual:zD([0,1])},liftZ:{applyVisual:RD("liftZ"),_normalizedToVisual:{linear:ED,category:ED,piecewise:ED,fixed:ED}},symbol:{applyVisual:function(t,e,n){n("symbol",this.mapValueToVisual(t))},_normalizedToVisual:{linear:OD,category:ND,piecewise:function(t,e){var n=VD.call(this,e);return null==n&&(n=OD.call(this,t)),n},fixed:ED}},symbolSize:{applyVisual:RD("symbolSize"),_normalizedToVisual:zD([0,1])}},t}();function LD(t,e){var n=t.visual,i=[];q(n)?CD(n,(function(t){i.push(t)})):null!=n&&i.push(n);e||1!==i.length||{color:1,symbol:1}.hasOwnProperty(t.type)||(i[1]=i[0]),BD(t,i)}function PD(t){return{applyVisual:function(e,n,i){var r=this.mapValueToVisual(e);i("color",t(n("color"),r))},_normalizedToVisual:zD([0,1])}}function OD(t){var e=this.option.visual;return e[Math.round(Kr(t,[0,1],[0,e.length-1],!0))]||{}}function RD(t){return function(e,n,i){i(t,this.mapValueToVisual(e))}}function ND(t){var e=this.option.visual;return e[this.option.loop&&t!==AD?t%e.length:t]}function ED(){return this.option.visual[0]}function zD(t){return{linear:function(e){return Kr(e,t,this.option.visual,!0)},category:ND,piecewise:function(e,n){var i=VD.call(this,n);return null==i&&(i=Kr(e,t,this.option.visual,!0)),i},fixed:ED}}function VD(t){var e=this.option,n=e.pieceList;if(e.hasSpecialVisual){var i=n[kD.findPieceIndex(t,n)];if(i&&i.visual)return i.visual[this.type]}}function BD(t,e){return t.visual=e,"color"===t.type&&(t.parsedVisual=z(e,(function(t){var e=qn(t);return e||[0,0,0,1]}))),e}var FD={linear:function(t){return Kr(t,this.option.dataExtent,[0,1],!0)},piecewise:function(t){var e=this.option.pieceList,n=kD.findPieceIndex(t,e,!0);if(null!=n)return Kr(n,[0,e.length-1],[0,1],!0)},category:function(t){var e=this.option.categories?this.option.categoryMap[t]:t;return null==e?AD:e},fixed:bt};function GD(t,e,n){return t?e<=n:e<n}var WD=Vo(),HD={seriesType:"treemap",reset:function(t){var e=t.getData().tree.root;e.isRemoved()||YD(e,{},t.getViewRoot().getAncestors(),t)}};function YD(t,e,n,i){var r=t.getModel(),o=t.getLayout(),a=t.hostTree.data;if(o&&!o.invisible&&o.isInView){var s,l=r.getModel("itemStyle"),u=function(t,e,n){var i=A({},e),r=n.designatedVisualItemStyle;return E(["color","colorAlpha","colorSaturation"],(function(n){r[n]=e[n];var o=t.get(n);r[n]=null,null!=o&&(i[n]=o)})),i}(l,e,i),h=a.ensureUniqueItemVisual(t.dataIndex,"style"),c=l.get("borderColor"),p=l.get("borderColorSaturation");null!=p&&(c=function(t,e){return null!=e?ni(e,null,null,t):null}(p,s=XD(u))),h.stroke=c;var d=t.viewChildren;if(d&&d.length){var f=function(t,e,n,i,r,o){if(!o||!o.length)return;var a=ZD(e,"color")||null!=r.color&&"none"!==r.color&&(ZD(e,"colorAlpha")||ZD(e,"colorSaturation"));if(!a)return;var s=e.get("visualMin"),l=e.get("visualMax"),u=n.dataExtent.slice();null!=s&&s<u[0]&&(u[0]=s),null!=l&&l>u[1]&&(u[1]=l);var h=e.get("colorMappingBy"),c={type:a.name,dataExtent:u,visual:a.range};"color"!==c.type||"index"!==h&&"id"!==h?c.mappingMethod="linear":(c.mappingMethod="category",c.loop=!0);var p=new kD(c);return WD(p).drColorMappingBy=h,p}(0,r,o,0,u,d);E(d,(function(t,e){if(t.depth>=n.length||t===n[t.depth]){var o=function(t,e,n,i,r,o){var a=A({},e);if(r){var s=r.type,l="color"===s&&WD(r).drColorMappingBy,u="index"===l?i:"id"===l?o.mapIdToIndex(n.getId()):n.getValue(t.get("visualDimension"));a[s]=r.mapValueToVisual(u)}return a}(r,u,t,e,f,i);YD(t,o,n,i)}}))}else s=XD(u),h.fill=s}}function XD(t){var e=UD(t,"color");if(e){var n=UD(t,"colorAlpha"),i=UD(t,"colorSaturation");return i&&(e=ni(e,null,null,i)),n&&(e=ii(e,n)),e}}function UD(t,e){var n=t[e];if(null!=n&&"none"!==n)return n}function ZD(t,e){var n=t.get(e);return Y(n)&&n.length?{name:e,range:n}:null}var jD=Math.max,qD=Math.min,KD=it,$D=E,JD=["itemStyle","borderWidth"],QD=["itemStyle","gapWidth"],tA=["upperLabel","show"],eA=["upperLabel","height"],nA={seriesType:"treemap",reset:function(t,e,n,i){var r=n.getWidth(),o=n.getHeight(),a=t.option,s=kp(t.getBoxLayoutParams(),{width:n.getWidth(),height:n.getHeight()}),l=a.size||[],u=$r(KD(s.width,l[0]),r),h=$r(KD(s.height,l[1]),o),c=i&&i.type,p=iD(i,["treemapZoomToNode","treemapRootToNode"],t),d="treemapRender"===c||"treemapMove"===c?i.rootRect:null,f=t.getViewRoot(),g=rD(f);if("treemapMove"!==c){var y="treemapZoomToNode"===c?function(t,e,n,i,r){var o,a=(e||{}).node,s=[i,r];if(!a||a===n)return s;var l=i*r,u=l*t.option.zoomToNodeRatio;for(;o=a.parentNode;){for(var h=0,c=o.children,p=0,d=c.length;p<d;p++)h+=c[p].getValue();var f=a.getValue();if(0===f)return s;u*=h/f;var g=o.getModel(),y=g.get(JD);(u+=4*y*y+(3*y+Math.max(y,sA(g)))*Math.pow(u,.5))>oo&&(u=oo),a=o}u<l&&(u=l);var v=Math.pow(u/l,.5);return[i*v,r*v]}(t,p,f,u,h):d?[d.width,d.height]:[u,h],v=a.sort;v&&"asc"!==v&&"desc"!==v&&(v="desc");var m={squareRatio:a.squareRatio,sort:v,leafDepth:a.leafDepth};f.hostTree.clearLayouts();var x={x:0,y:0,width:y[0],height:y[1],area:y[0]*y[1]};f.setLayout(x),iA(f,m,!1,0),x=f.getLayout(),$D(g,(function(t,e){var n=(g[e+1]||f).getValue();t.setLayout(A({dataExtent:[n,n],borderWidth:0,upperHeight:0},x))}))}var _=t.getData().tree.root;_.setLayout(function(t,e,n){if(e)return{x:e.x,y:e.y};var i={x:0,y:0};if(!n)return i;var r=n.node,o=r.getLayout();if(!o)return i;var a=[o.width/2,o.height/2],s=r;for(;s;){var l=s.getLayout();a[0]+=l.x,a[1]+=l.y,s=s.parentNode}return{x:t.width/2-a[0],y:t.height/2-a[1]}}(s,d,p),!0),t.setLayoutInfo(s),aA(_,new ze(-s.x,-s.y,r,o),g,f,0)}};function iA(t,e,n,i){var r,o;if(!t.isRemoved()){var a=t.getLayout();r=a.width,o=a.height;var s=t.getModel(),l=s.get(JD),u=s.get(QD)/2,h=sA(s),c=Math.max(l,h),p=l-u,d=c-u;t.setLayout({borderWidth:l,upperHeight:c,upperLabelHeight:h},!0);var f=(r=jD(r-2*p,0))*(o=jD(o-p-d,0)),g=function(t,e,n,i,r,o){var a=t.children||[],s=i.sort;"asc"!==s&&"desc"!==s&&(s=null);var l=null!=i.leafDepth&&i.leafDepth<=o;if(r&&!l)return t.viewChildren=[];a=B(a,(function(t){return!t.isRemoved()})),function(t,e){e&&t.sort((function(t,n){var i="asc"===e?t.getValue()-n.getValue():n.getValue()-t.getValue();return 0===i?"asc"===e?t.dataIndex-n.dataIndex:n.dataIndex-t.dataIndex:i}))}(a,s);var u=function(t,e,n){for(var i=0,r=0,o=e.length;r<o;r++)i+=e[r].getValue();var a,s=t.get("visualDimension");e&&e.length?"value"===s&&n?(a=[e[e.length-1].getValue(),e[0].getValue()],"asc"===n&&a.reverse()):(a=[1/0,-1/0],$D(e,(function(t){var e=t.getValue(s);e<a[0]&&(a[0]=e),e>a[1]&&(a[1]=e)}))):a=[NaN,NaN];return{sum:i,dataExtent:a}}(e,a,s);if(0===u.sum)return t.viewChildren=[];if(u.sum=function(t,e,n,i,r){if(!i)return n;for(var o=t.get("visibleMin"),a=r.length,s=a,l=a-1;l>=0;l--){var u=r["asc"===i?a-l-1:l].getValue();u/n*e<o&&(s=l,n-=u)}return"asc"===i?r.splice(0,a-s):r.splice(s,a-s),n}(e,n,u.sum,s,a),0===u.sum)return t.viewChildren=[];for(var h=0,c=a.length;h<c;h++){var p=a[h].getValue()/u.sum*n;a[h].setLayout({area:p})}l&&(a.length&&t.setLayout({isLeafRoot:!0},!0),a.length=0);return t.viewChildren=a,t.setLayout({dataExtent:u.dataExtent},!0),a}(t,s,f,e,n,i);if(g.length){var y={x:p,y:d,width:r,height:o},v=qD(r,o),m=1/0,x=[];x.area=0;for(var _=0,b=g.length;_<b;){var w=g[_];x.push(w),x.area+=w.getLayout().area;var S=rA(x,v,e.squareRatio);S<=m?(_++,m=S):(x.area-=x.pop().getLayout().area,oA(x,v,y,u,!1),v=qD(y.width,y.height),x.length=x.area=0,m=1/0)}if(x.length&&oA(x,v,y,u,!0),!n){var M=s.get("childrenVisibleMin");null!=M&&f<M&&(n=!0)}for(_=0,b=g.length;_<b;_++)iA(g[_],e,n,i+1)}}}function rA(t,e,n){for(var i=0,r=1/0,o=0,a=void 0,s=t.length;o<s;o++)(a=t[o].getLayout().area)&&(a<r&&(r=a),a>i&&(i=a));var l=t.area*t.area,u=e*e*n;return l?jD(u*i/l,l/(u*r)):1/0}function oA(t,e,n,i,r){var o=e===n.width?0:1,a=1-o,s=["x","y"],l=["width","height"],u=n[s[o]],h=e?t.area/e:0;(r||h>n[l[a]])&&(h=n[l[a]]);for(var c=0,p=t.length;c<p;c++){var d=t[c],f={},g=h?d.getLayout().area/h:0,y=f[l[a]]=jD(h-2*i,0),v=n[s[o]]+n[l[o]]-u,m=c===p-1||v<g?v:g,x=f[l[o]]=jD(m-2*i,0);f[s[a]]=n[s[a]]+qD(i,y/2),f[s[o]]=u+qD(i,x/2),u+=m,d.setLayout(f,!0)}n[s[a]]+=h,n[l[a]]-=h}function aA(t,e,n,i,r){var o=t.getLayout(),a=n[r],s=a&&a===t;if(!(a&&!s||r===n.length&&t!==i)){t.setLayout({isInView:!0,invisible:!s&&!e.intersect(o),isAboveViewRoot:s},!0);var l=new ze(e.x-o.x,e.y-o.y,e.width,e.height);$D(t.viewChildren||[],(function(t){aA(t,l,n,i,r+1)}))}}function sA(t){return t.get(tA)?t.get(eA):0}function lA(t){var e=t.findComponents({mainType:"legend"});e&&e.length&&t.eachSeriesByType("graph",(function(t){var n=t.getCategoriesData(),i=t.getGraph().data,r=n.mapArray(n.getName);i.filterSelf((function(t){var n=i.getItemModel(t).getShallow("category");if(null!=n){j(n)&&(n=r[n]);for(var o=0;o<e.length;o++)if(!e[o].isSelected(n))return!1}return!0}))}))}function uA(t){var e={};t.eachSeriesByType("graph",(function(t){var n=t.getCategoriesData(),i=t.getData(),r={};n.each((function(i){var o=n.getName(i);r["ec-"+o]=i;var a=n.getItemModel(i),s=a.getModel("itemStyle").getItemStyle();s.fill||(s.fill=t.getColorFromPalette(o,e)),n.setItemVisual(i,"style",s);for(var l=["symbol","symbolSize","symbolKeepAspect"],u=0;u<l.length;u++){var h=a.getShallow(l[u],!0);null!=h&&n.setItemVisual(i,l[u],h)}})),n.count()&&i.each((function(t){var e=i.getItemModel(t).getShallow("category");if(null!=e){U(e)&&(e=r["ec-"+e]);var o=n.getItemVisual(e,"style");A(i.ensureUniqueItemVisual(t,"style"),o);for(var a=["symbol","symbolSize","symbolKeepAspect"],s=0;s<a.length;s++)i.setItemVisual(t,a[s],n.getItemVisual(e,a[s]))}}))}))}function hA(t){return t instanceof Array||(t=[t,t]),t}function cA(t){t.eachSeriesByType("graph",(function(t){var e=t.getGraph(),n=t.getEdgeData(),i=hA(t.get("edgeSymbol")),r=hA(t.get("edgeSymbolSize"));n.setVisual("fromSymbol",i&&i[0]),n.setVisual("toSymbol",i&&i[1]),n.setVisual("fromSymbolSize",r&&r[0]),n.setVisual("toSymbolSize",r&&r[1]),n.setVisual("style",t.getModel("lineStyle").getLineStyle()),n.each((function(t){var i=n.getItemModel(t),r=e.getEdgeByIndex(t),o=hA(i.getShallow("symbol",!0)),a=hA(i.getShallow("symbolSize",!0)),s=i.getModel("lineStyle").getLineStyle(),l=n.ensureUniqueItemVisual(t,"style");switch(A(l,s),l.stroke){case"source":var u=r.node1.getVisual("style");l.stroke=u&&u.fill;break;case"target":u=r.node2.getVisual("style");l.stroke=u&&u.fill}o[0]&&r.setVisual("fromSymbol",o[0]),o[1]&&r.setVisual("toSymbol",o[1]),a[0]&&r.setVisual("fromSymbolSize",a[0]),a[1]&&r.setVisual("toSymbolSize",a[1])}))}))}var pA="--\x3e",dA=function(t){return t.get("autoCurveness")||null},fA=function(t,e){var n=dA(t),i=20,r=[];if(j(n))i=n;else if(Y(n))return void(t.__curvenessList=n);e>i&&(i=e);var o=i%2?i+2:i+3;r=[];for(var a=0;a<o;a++)r.push((a%2?a+1:a)/10*(a%2?-1:1));t.__curvenessList=r},gA=function(t,e,n){var i=[t.id,t.dataIndex].join("."),r=[e.id,e.dataIndex].join(".");return[n.uid,i,r].join(pA)},yA=function(t){var e=t.split(pA);return[e[0],e[2],e[1]].join(pA)},vA=function(t,e){var n=e.__edgeMap;return n[t]?n[t].length:0};function mA(t,e,n,i){var r=dA(e),o=Y(r);if(!r)return null;var a=function(t,e){var n=gA(t.node1,t.node2,e);return e.__edgeMap[n]}(t,e);if(!a)return null;for(var s=-1,l=0;l<a.length;l++)if(a[l]===n){s=l;break}var u=function(t,e){return vA(gA(t.node1,t.node2,e),e)+vA(gA(t.node2,t.node1,e),e)}(t,e);fA(e,u),t.lineStyle=t.lineStyle||{};var h=gA(t.node1,t.node2,e),c=e.__curvenessList,p=o||u%2?0:1;if(a.isForward)return c[p+s];var d=yA(h),f=vA(d,e),g=c[s+f+p];return i?o?r&&0===r[0]?(f+p)%2?g:-g:((f%2?0:1)+p)%2?g:-g:(f+p)%2?g:-g:c[s+f+p]}function xA(t){var e=t.coordinateSystem;if(!e||"view"===e.type){var n=t.getGraph();n.eachNode((function(t){var e=t.getModel();t.setLayout([+e.get("x"),+e.get("y")])})),_A(n,t)}}function _A(t,e){t.eachEdge((function(t,n){var i=ot(t.getModel().get(["lineStyle","curveness"]),-mA(t,e,n,!0),0),r=Tt(t.node1.getLayout()),o=Tt(t.node2.getLayout()),a=[r,o];+i&&a.push([(r[0]+o[0])/2-(r[1]-o[1])*i,(r[1]+o[1])/2-(o[0]-r[0])*i]),t.setLayout(a)}))}function bA(t,e){t.eachSeriesByType("graph",(function(t){var e=t.get("layout"),n=t.coordinateSystem;if(n&&"view"!==n.type){var i=t.getData(),r=[];E(n.dimensions,(function(t){r=r.concat(i.mapDimensionsAll(t))}));for(var o=0;o<i.count();o++){for(var a=[],s=!1,l=0;l<r.length;l++){var u=i.get(r[l],o);isNaN(u)||(s=!0),a.push(u)}s?i.setItemLayout(o,n.dataToPoint(a)):i.setItemLayout(o,[NaN,NaN])}_A(i.graph,t)}else e&&"none"!==e||xA(t)}))}function wA(t){var e=t.coordinateSystem;if("view"!==e.type)return 1;var n=t.option.nodeScaleRatio,i=e.scaleX;return((e.getZoom()-1)*n+1)/i}function SA(t){var e=t.getVisual("symbolSize");return e instanceof Array&&(e=(e[0]+e[1])/2),+e}var MA=Math.PI,IA=[];function TA(t,e,n,i){var r=t.coordinateSystem;if(!r||"view"===r.type){var o=r.getBoundingRect(),a=t.getData(),s=a.graph,l=o.width/2+o.x,u=o.height/2+o.y,h=Math.min(o.width,o.height)/2,c=a.count();if(a.setLayout({cx:l,cy:u}),c){if(n){var p=r.pointToData(i),d=p[0],f=p[1],g=[d-l,f-u];Et(g,g),Nt(g,g,h),n.setLayout([l+g[0],u+g[1]],!0),DA(n,t.get(["circular","rotateLabel"]),l,u)}CA[e](t,s,a,h,l,u,c),s.eachEdge((function(e,n){var i,r=ot(e.getModel().get(["lineStyle","curveness"]),mA(e,t,n),0),o=Tt(e.node1.getLayout()),a=Tt(e.node2.getLayout()),s=(o[0]+a[0])/2,h=(o[1]+a[1])/2;+r&&(i=[l*(r*=3)+s*(1-r),u*r+h*(1-r)]),e.setLayout([o,a,i])}))}}}var CA={value:function(t,e,n,i,r,o,a){var s=0,l=n.getSum("value"),u=2*Math.PI/(l||a);e.eachNode((function(t){var e=t.getValue("value"),n=u*(l?e:1)/2;s+=n,t.setLayout([i*Math.cos(s)+r,i*Math.sin(s)+o]),s+=n}))},symbolSize:function(t,e,n,i,r,o,a){var s=0;IA.length=a;var l=wA(t);e.eachNode((function(t){var e=SA(t);isNaN(e)&&(e=2),e<0&&(e=0),e*=l;var n=Math.asin(e/2/i);isNaN(n)&&(n=MA/2),IA[t.dataIndex]=n,s+=2*n}));var u=(2*MA-s)/a/2,h=0;e.eachNode((function(t){var e=u+IA[t.dataIndex];h+=e,(!t.getLayout()||!t.getLayout().fixed)&&t.setLayout([i*Math.cos(h)+r,i*Math.sin(h)+o]),h+=e}))}};function DA(t,e,n,i){var r=t.getGraphicEl();if(r){var o=t.getModel().get(["label","rotate"])||0,a=r.getSymbolPath();if(e){var s=t.getLayout(),l=Math.atan2(s[1]-i,s[0]-n);l<0&&(l=2*Math.PI+l);var u=s[0]<n;u&&(l-=Math.PI);var h=u?"left":"right";a.setTextConfig({rotation:-l,position:h,origin:"center"});var c=a.ensureState("emphasis");A(c.textConfig||(c.textConfig={}),{position:h})}else a.setTextConfig({rotation:o*=Math.PI/180})}}function AA(t){t.eachSeriesByType("graph",(function(t){"circular"===t.get("layout")&&TA(t,"symbolSize")}))}var kA=At;function LA(t){t.eachSeriesByType("graph",(function(t){var e=t.coordinateSystem;if(!e||"view"===e.type)if("force"===t.get("layout")){var n=t.preservedPoints||{},i=t.getGraph(),r=i.data,o=i.edgeData,a=t.getModel("force"),s=a.get("initLayout");t.preservedPoints?r.each((function(t){var e=r.getId(t);r.setItemLayout(t,n[e]||[NaN,NaN])})):s&&"none"!==s?"circular"===s&&TA(t,"value"):xA(t);var l=r.getDataExtent("value"),u=o.getDataExtent("value"),h=a.get("repulsion"),c=a.get("edgeLength"),p=Y(h)?h:[h,h],d=Y(c)?c:[c,c];d=[d[1],d[0]];var f=r.mapArray("value",(function(t,e){var n=r.getItemLayout(e),i=Kr(t,l,p);return isNaN(i)&&(i=(p[0]+p[1])/2),{w:i,rep:i,fixed:r.getItemModel(e).get("fixed"),p:!n||isNaN(n[0])||isNaN(n[1])?null:n}})),g=o.mapArray("value",(function(e,n){var r=i.getEdgeByIndex(n),o=Kr(e,u,d);isNaN(o)&&(o=(d[0]+d[1])/2);var a=r.getModel(),s=ot(r.getModel().get(["lineStyle","curveness"]),-mA(r,t,n,!0),0);return{n1:f[r.node1.dataIndex],n2:f[r.node2.dataIndex],d:o,curveness:s,ignoreForceLayout:a.get("ignoreForceLayout")}})),y=e.getBoundingRect(),v=function(t,e,n){for(var i=t,r=e,o=n.rect,a=o.width,s=o.height,l=[o.x+a/2,o.y+s/2],u=null==n.gravity?.1:n.gravity,h=0;h<i.length;h++){var c=i[h];c.p||(c.p=Mt(a*(Math.random()-.5)+l[0],s*(Math.random()-.5)+l[1])),c.pp=Tt(c.p),c.edges=null}var p,d,f=null==n.friction?.6:n.friction,g=f;return{warmUp:function(){g=.8*f},setFixed:function(t){i[t].fixed=!0},setUnfixed:function(t){i[t].fixed=!1},beforeStep:function(t){p=t},afterStep:function(t){d=t},step:function(t){p&&p(i,r);for(var e=[],n=i.length,o=0;o<r.length;o++){var a=r[o];if(!a.ignoreForceLayout){var s=a.n1;kt(e,(y=a.n2).p,s.p);var h=Lt(e)-a.d,c=y.w/(s.w+y.w);isNaN(c)&&(c=0),Et(e,e),!s.fixed&&kA(s.p,s.p,e,c*h*g),!y.fixed&&kA(y.p,y.p,e,-(1-c)*h*g)}}for(o=0;o<n;o++)(x=i[o]).fixed||(kt(e,l,x.p),kA(x.p,x.p,e,u*g));for(o=0;o<n;o++){s=i[o];for(var f=o+1;f<n;f++){var y;kt(e,(y=i[f]).p,s.p),0===(h=Lt(e))&&(Ct(e,Math.random()-.5,Math.random()-.5),h=1);var v=(s.rep+y.rep)/h/h;!s.fixed&&kA(s.pp,s.pp,e,v),!y.fixed&&kA(y.pp,y.pp,e,-v)}}var m=[];for(o=0;o<n;o++){var x;(x=i[o]).fixed||(kt(m,x.p,x.pp),kA(x.p,x.p,m,g),It(x.pp,x.p))}var _=(g*=.992)<.01;d&&d(i,r,_),t&&t(_)}}}(f,g,{rect:y,gravity:a.get("gravity"),friction:a.get("friction")});v.beforeStep((function(t,e){for(var n=0,r=t.length;n<r;n++)t[n].fixed&&It(t[n].p,i.getNodeByIndex(n).getLayout())})),v.afterStep((function(t,e,o){for(var a=0,s=t.length;a<s;a++)t[a].fixed||i.getNodeByIndex(a).setLayout(t[a].p),n[r.getId(a)]=t[a].p;for(a=0,s=e.length;a<s;a++){var l=e[a],u=i.getEdgeByIndex(a),h=l.n1.p,c=l.n2.p,p=u.getLayout();(p=p?p.slice():[])[0]=p[0]||[],p[1]=p[1]||[],It(p[0],h),It(p[1],c),+l.curveness&&(p[2]=[(h[0]+c[0])/2-(h[1]-c[1])*l.curveness,(h[1]+c[1])/2-(c[0]-h[0])*l.curveness]),u.setLayout(p)}})),t.forceLayout=v,t.preservedPoints=n,v.step()}else t.forceLayout=null}))}function PA(t,e){var n=[];return t.eachSeriesByType("graph",(function(t){var i=t.get("coordinateSystem");if(!i||"view"===i){var r=t.getData(),o=[],a=[];Ba(r.mapArray((function(t){var e=r.getItemModel(t);return[+e.get("x"),+e.get("y")]})),o,a),a[0]-o[0]==0&&(a[0]+=1,o[0]-=1),a[1]-o[1]==0&&(a[1]+=1,o[1]-=1);var s=(a[0]-o[0])/(a[1]-o[1]),l=function(t,e,n){return kp(A(t.getBoxLayoutParams(),{aspect:n}),{width:e.getWidth(),height:e.getHeight()})}(t,e,s);isNaN(s)&&(o=[l.x,l.y],a=[l.x+l.width,l.y+l.height]);var u=a[0]-o[0],h=a[1]-o[1],c=l.width,p=l.height,d=t.coordinateSystem=new dC;d.zoomLimit=t.get("scaleLimit"),d.setBoundingRect(o[0],o[1],u,h),d.setViewRect(l.x,l.y,c,p),d.setCenter(t.get("center"),e),d.setZoom(t.get("zoom")),n.push(d)}})),n}var OA=Ku.prototype,RA=th.prototype,NA=function(){this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.percent=1};!function(t){function e(){return null!==t&&t.apply(this,arguments)||this}n(e,t)}(NA);function EA(t){return isNaN(+t.cpx1)||isNaN(+t.cpy1)}var zA=function(t){function e(e){var n=t.call(this,e)||this;return n.type="ec-line",n}return n(e,t),e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new NA},e.prototype.buildPath=function(t,e){EA(e)?OA.buildPath.call(this,t,e):RA.buildPath.call(this,t,e)},e.prototype.pointAt=function(t){return EA(this.shape)?OA.pointAt.call(this,t):RA.pointAt.call(this,t)},e.prototype.tangentAt=function(t){var e=this.shape,n=EA(e)?[e.x2-e.x1,e.y2-e.y1]:RA.tangentAt.call(this,t);return Et(n,n)},e}(ks),VA=["fromSymbol","toSymbol"];function BA(t){return"_"+t+"Type"}function FA(t,e,n){var i=e.getItemVisual(n,t);if(!i||"none"===i)return i;var r=e.getItemVisual(n,t+"Size"),o=e.getItemVisual(n,t+"Rotate"),a=e.getItemVisual(n,t+"Offset"),s=e.getItemVisual(n,t+"KeepAspect"),l=Uy(r);return i+l+Zy(a||0,l)+(o||"")+(s||"")}function GA(t,e,n){var i=e.getItemVisual(n,t);if(i&&"none"!==i){var r=e.getItemVisual(n,t+"Size"),o=e.getItemVisual(n,t+"Rotate"),a=e.getItemVisual(n,t+"Offset"),s=e.getItemVisual(n,t+"KeepAspect"),l=Uy(r),u=Zy(a||0,l),h=Xy(i,-l[0]/2+u[0],-l[1]/2+u[1],l[0],l[1],null,s);return h.__specifiedRotation=null==o||isNaN(o)?void 0:+o*Math.PI/180||0,h.name=t,h}}function WA(t,e){t.x1=e[0][0],t.y1=e[0][1],t.x2=e[1][0],t.y2=e[1][1],t.percent=1;var n=e[2];n?(t.cpx1=n[0],t.cpy1=n[1]):(t.cpx1=NaN,t.cpy1=NaN)}var HA=function(t){function e(e,n,i){var r=t.call(this)||this;return r._createLine(e,n,i),r}return n(e,t),e.prototype._createLine=function(t,e,n){var i=t.hostModel,r=function(t){var e=new zA({name:"line",subPixelOptimize:!0});return WA(e.shape,t),e}(t.getItemLayout(e));r.shape.percent=0,mh(r,{shape:{percent:1}},i,e),this.add(r),E(VA,(function(n){var i=GA(n,t,e);this.add(i),this[BA(n)]=FA(n,t,e)}),this),this._updateCommonStl(t,e,n)},e.prototype.updateData=function(t,e,n){var i=t.hostModel,r=this.childOfName("line"),o=t.getItemLayout(e),a={shape:{}};WA(a.shape,o),vh(r,a,i,e),E(VA,(function(n){var i=FA(n,t,e),r=BA(n);if(this[r]!==i){this.remove(this.childOfName(n));var o=GA(n,t,e);this.add(o)}this[r]=i}),this),this._updateCommonStl(t,e,n)},e.prototype.getLinePath=function(){return this.childAt(0)},e.prototype._updateCommonStl=function(t,e,n){var i=t.hostModel,r=this.childOfName("line"),o=n&&n.emphasisLineStyle,a=n&&n.blurLineStyle,s=n&&n.selectLineStyle,l=n&&n.labelStatesModels,u=n&&n.emphasisDisabled,h=n&&n.focus,c=n&&n.blurScope;if(!n||t.hasItemOption){var p=t.getItemModel(e),d=p.getModel("emphasis");o=d.getModel("lineStyle").getLineStyle(),a=p.getModel(["blur","lineStyle"]).getLineStyle(),s=p.getModel(["select","lineStyle"]).getLineStyle(),u=d.get("disabled"),h=d.get("focus"),c=d.get("blurScope"),l=rc(p)}var f=t.getItemVisual(e,"style"),g=f.stroke;r.useStyle(f),r.style.fill=null,r.style.strokeNoScale=!0,r.ensureState("emphasis").style=o,r.ensureState("blur").style=a,r.ensureState("select").style=s,E(VA,(function(t){var e=this.childOfName(t);if(e){e.setColor(g),e.style.opacity=f.opacity;for(var n=0;n<hl.length;n++){var i=hl[n],o=r.getState(i);if(o){var a=o.style||{},s=e.ensureState(i),l=s.style||(s.style={});null!=a.stroke&&(l[e.__isEmptyBrush?"stroke":"fill"]=a.stroke),null!=a.opacity&&(l.opacity=a.opacity)}}e.markRedraw()}}),this);var y=i.getRawValue(e);ic(this,l,{labelDataIndex:e,labelFetcher:{getFormattedLabel:function(e,n){return i.getFormattedLabel(e,n,t.dataType)}},inheritColor:g||"#000",defaultOpacity:f.opacity,defaultText:(null==y?t.getName(e):isFinite(y)?Jr(y):y)+""});var v=this.getTextContent();if(v){var m=l.normal;v.__align=v.style.align,v.__verticalAlign=v.style.verticalAlign,v.__position=m.get("position")||"middle";var x=m.get("distance");Y(x)||(x=[x,x]),v.__labelDistance=x}this.setTextConfig({position:null,local:!0,inside:!1}),Zl(this,h,c,u)},e.prototype.highlight=function(){Ol(this)},e.prototype.downplay=function(){Rl(this)},e.prototype.updateLayout=function(t,e){this.setLinePoints(t.getItemLayout(e))},e.prototype.setLinePoints=function(t){var e=this.childOfName("line");WA(e.shape,t),e.dirty()},e.prototype.beforeUpdate=function(){var t=this,e=t.childOfName("fromSymbol"),n=t.childOfName("toSymbol"),i=t.getTextContent();if(e||n||i&&!i.ignore){for(var r=1,o=this.parent;o;)o.scaleX&&(r/=o.scaleX),o=o.parent;var a=t.childOfName("line");if(this.__dirty||a.__dirty){var s=a.shape.percent,l=a.pointAt(0),u=a.pointAt(s),h=kt([],u,l);if(Et(h,h),e&&(e.setPosition(l),S(e,0),e.scaleX=e.scaleY=r*s,e.markRedraw()),n&&(n.setPosition(u),S(n,1),n.scaleX=n.scaleY=r*s,n.markRedraw()),i&&!i.ignore){i.x=i.y=0,i.originX=i.originY=0;var c=void 0,p=void 0,d=i.__labelDistance,f=d[0]*r,g=d[1]*r,y=s/2,v=a.tangentAt(y),m=[v[1],-v[0]],x=a.pointAt(y);m[1]>0&&(m[0]=-m[0],m[1]=-m[1]);var _=v[0]<0?-1:1;if("start"!==i.__position&&"end"!==i.__position){var b=-Math.atan2(v[1],v[0]);u[0]<l[0]&&(b=Math.PI+b),i.rotation=b}var w=void 0;switch(i.__position){case"insideStartTop":case"insideMiddleTop":case"insideEndTop":case"middle":w=-g,p="bottom";break;case"insideStartBottom":case"insideMiddleBottom":case"insideEndBottom":w=g,p="top";break;default:w=0,p="middle"}switch(i.__position){case"end":i.x=h[0]*f+u[0],i.y=h[1]*g+u[1],c=h[0]>.8?"left":h[0]<-.8?"right":"center",p=h[1]>.8?"top":h[1]<-.8?"bottom":"middle";break;case"start":i.x=-h[0]*f+l[0],i.y=-h[1]*g+l[1],c=h[0]>.8?"right":h[0]<-.8?"left":"center",p=h[1]>.8?"bottom":h[1]<-.8?"top":"middle";break;case"insideStartTop":case"insideStart":case"insideStartBottom":i.x=f*_+l[0],i.y=l[1]+w,c=v[0]<0?"right":"left",i.originX=-f*_,i.originY=-w;break;case"insideMiddleTop":case"insideMiddle":case"insideMiddleBottom":case"middle":i.x=x[0],i.y=x[1]+w,c="center",i.originY=-w;break;case"insideEndTop":case"insideEnd":case"insideEndBottom":i.x=-f*_+u[0],i.y=u[1]+w,c=v[0]>=0?"right":"left",i.originX=f*_,i.originY=-w}i.scaleX=i.scaleY=r,i.setStyle({verticalAlign:i.__verticalAlign||p,align:i.__align||c})}}}function S(t,e){var n=t.__specifiedRotation;if(null==n){var i=a.tangentAt(e);t.attr("rotation",(1===e?-1:1)*Math.PI/2-Math.atan2(i[1],i[0]))}else t.attr("rotation",n)}},e}(Br),YA=function(){function t(t){this.group=new Br,this._LineCtor=t||HA}return t.prototype.updateData=function(t){var e=this;this._progressiveEls=null;var n=this,i=n.group,r=n._lineData;n._lineData=t,r||i.removeAll();var o=XA(t);t.diff(r).add((function(n){e._doAdd(t,n,o)})).update((function(n,i){e._doUpdate(r,t,i,n,o)})).remove((function(t){i.remove(r.getItemGraphicEl(t))})).execute()},t.prototype.updateLayout=function(){var t=this._lineData;t&&t.eachItemGraphicEl((function(e,n){e.updateLayout(t,n)}),this)},t.prototype.incrementalPrepareUpdate=function(t){this._seriesScope=XA(t),this._lineData=null,this.group.removeAll()},t.prototype.incrementalUpdate=function(t,e){function n(t){t.isGroup||function(t){return t.animators&&t.animators.length>0}(t)||(t.incremental=!0,t.ensureState("emphasis").hoverLayer=!0)}this._progressiveEls=[];for(var i=t.start;i<t.end;i++){if(ZA(e.getItemLayout(i))){var r=new this._LineCtor(e,i,this._seriesScope);r.traverse(n),this.group.add(r),e.setItemGraphicEl(i,r),this._progressiveEls.push(r)}}},t.prototype.remove=function(){this.group.removeAll()},t.prototype.eachRendered=function(t){Jh(this._progressiveEls||this.group,t)},t.prototype._doAdd=function(t,e,n){if(ZA(t.getItemLayout(e))){var i=new this._LineCtor(t,e,n);t.setItemGraphicEl(e,i),this.group.add(i)}},t.prototype._doUpdate=function(t,e,n,i,r){var o=t.getItemGraphicEl(n);ZA(e.getItemLayout(i))?(o?o.updateData(e,i,r):o=new this._LineCtor(e,i,r),e.setItemGraphicEl(i,o),this.group.add(o)):this.group.remove(o)},t}();function XA(t){var e=t.hostModel,n=e.getModel("emphasis");return{lineStyle:e.getModel("lineStyle").getLineStyle(),emphasisLineStyle:n.getModel(["lineStyle"]).getLineStyle(),blurLineStyle:e.getModel(["blur","lineStyle"]).getLineStyle(),selectLineStyle:e.getModel(["select","lineStyle"]).getLineStyle(),emphasisDisabled:n.get("disabled"),blurScope:n.get("blurScope"),focus:n.get("focus"),labelStatesModels:rc(e)}}function UA(t){return isNaN(t[0])||isNaN(t[1])}function ZA(t){return t&&!UA(t[0])&&!UA(t[1])}var jA=[],qA=[],KA=[],$A=In,JA=Ft,QA=Math.abs;function tk(t,e,n){for(var i,r=t[0],o=t[1],a=t[2],s=1/0,l=n*n,u=.1,h=.1;h<=.9;h+=.1){jA[0]=$A(r[0],o[0],a[0],h),jA[1]=$A(r[1],o[1],a[1],h),(d=QA(JA(jA,e)-l))<s&&(s=d,i=h)}for(var c=0;c<32;c++){var p=i+u;qA[0]=$A(r[0],o[0],a[0],i),qA[1]=$A(r[1],o[1],a[1],i),KA[0]=$A(r[0],o[0],a[0],p),KA[1]=$A(r[1],o[1],a[1],p);var d=JA(qA,e)-l;if(QA(d)<.01)break;var f=JA(KA,e)-l;u/=2,d<0?f>=0?i+=u:i-=u:f>=0?i-=u:i+=u}return i}function ek(t,e){var n=[],i=Dn,r=[[],[],[]],o=[[],[]],a=[];e/=2,t.eachEdge((function(t,s){var l=t.getLayout(),u=t.getVisual("fromSymbol"),h=t.getVisual("toSymbol");l.__original||(l.__original=[Tt(l[0]),Tt(l[1])],l[2]&&l.__original.push(Tt(l[2])));var c=l.__original;if(null!=l[2]){if(It(r[0],c[0]),It(r[1],c[2]),It(r[2],c[1]),u&&"none"!==u){var p=SA(t.node1),d=tk(r,c[0],p*e);i(r[0][0],r[1][0],r[2][0],d,n),r[0][0]=n[3],r[1][0]=n[4],i(r[0][1],r[1][1],r[2][1],d,n),r[0][1]=n[3],r[1][1]=n[4]}if(h&&"none"!==h){p=SA(t.node2),d=tk(r,c[1],p*e);i(r[0][0],r[1][0],r[2][0],d,n),r[1][0]=n[1],r[2][0]=n[2],i(r[0][1],r[1][1],r[2][1],d,n),r[1][1]=n[1],r[2][1]=n[2]}It(l[0],r[0]),It(l[1],r[2]),It(l[2],r[1])}else{if(It(o[0],c[0]),It(o[1],c[1]),kt(a,o[1],o[0]),Et(a,a),u&&"none"!==u){p=SA(t.node1);At(o[0],o[0],a,p*e)}if(h&&"none"!==h){p=SA(t.node2);At(o[1],o[1],a,-p*e)}It(l[0],o[0]),It(l[1],o[1])}}))}function nk(t){return"view"===t.type}var ik=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(t,e){var n=new xS,i=new YA,r=this.group;this._controller=new nT(e.getZr()),this._controllerHost={target:r},r.add(n.group),r.add(i.group),this._symbolDraw=n,this._lineDraw=i,this._firstRender=!0},e.prototype.render=function(t,e,n){var i=this,r=t.coordinateSystem;this._model=t;var o=this._symbolDraw,a=this._lineDraw,s=this.group;if(nk(r)){var l={x:r.x,y:r.y,scaleX:r.scaleX,scaleY:r.scaleY};this._firstRender?s.attr(l):vh(s,l,t)}ek(t.getGraph(),wA(t));var u=t.getData();o.updateData(u);var h=t.getEdgeData();a.updateData(h),this._updateNodeAndLinkScale(),this._updateController(t,e,n),clearTimeout(this._layoutTimeout);var c=t.forceLayout,p=t.get(["force","layoutAnimation"]);c&&this._startForceLayoutIteration(c,p);var d=t.get("layout");u.graph.eachNode((function(e){var n=e.dataIndex,r=e.getGraphicEl(),o=e.getModel();if(r){r.off("drag").off("dragend");var a=o.get("draggable");a&&r.on("drag",(function(o){switch(d){case"force":c.warmUp(),!i._layouting&&i._startForceLayoutIteration(c,p),c.setFixed(n),u.setItemLayout(n,[r.x,r.y]);break;case"circular":u.setItemLayout(n,[r.x,r.y]),e.setLayout({fixed:!0},!0),TA(t,"symbolSize",e,[o.offsetX,o.offsetY]),i.updateLayout(t);break;default:u.setItemLayout(n,[r.x,r.y]),_A(t.getGraph(),t),i.updateLayout(t)}})).on("dragend",(function(){c&&c.setUnfixed(n)})),r.setDraggable(a,!!o.get("cursor")),"adjacency"===o.get(["emphasis","focus"])&&(rl(r).focus=e.getAdjacentDataIndices())}})),u.graph.eachEdge((function(t){var e=t.getGraphicEl(),n=t.getModel().get(["emphasis","focus"]);e&&"adjacency"===n&&(rl(e).focus={edge:[t.dataIndex],node:[t.node1.dataIndex,t.node2.dataIndex]})}));var f="circular"===t.get("layout")&&t.get(["circular","rotateLabel"]),g=u.getLayout("cx"),y=u.getLayout("cy");u.graph.eachNode((function(t){DA(t,f,g,y)})),this._firstRender=!1},e.prototype.dispose=function(){this.remove(),this._controller&&this._controller.dispose(),this._controllerHost=null},e.prototype._startForceLayoutIteration=function(t,e){var n=this;!function i(){t.step((function(t){n.updateLayout(n._model),(n._layouting=!t)&&(e?n._layoutTimeout=setTimeout(i,16):i())}))}()},e.prototype._updateController=function(t,e,n){var i=this,r=this._controller,o=this._controllerHost,a=this.group;r.setPointerChecker((function(e,i,r){var o=a.getBoundingRect();return o.applyTransform(a.transform),o.contain(i,r)&&!hT(e,n,t)})),nk(t.coordinateSystem)?(r.enable(t.get("roam")),o.zoomLimit=t.get("scaleLimit"),o.zoom=t.coordinateSystem.getZoom(),r.off("pan").off("zoom").on("pan",(function(e){aT(o,e.dx,e.dy),n.dispatchAction({seriesId:t.id,type:"graphRoam",dx:e.dx,dy:e.dy})})).on("zoom",(function(e){sT(o,e.scale,e.originX,e.originY),n.dispatchAction({seriesId:t.id,type:"graphRoam",zoom:e.scale,originX:e.originX,originY:e.originY}),i._updateNodeAndLinkScale(),ek(t.getGraph(),wA(t)),i._lineDraw.updateLayout(),n.updateLabelLayout()}))):r.disable()},e.prototype._updateNodeAndLinkScale=function(){var t=this._model,e=t.getData(),n=wA(t);e.eachItemGraphicEl((function(t,e){t&&t.setSymbolScale(n)}))},e.prototype.updateLayout=function(t){ek(t.getGraph(),wA(t)),this._symbolDraw.updateLayout(),this._lineDraw.updateLayout()},e.prototype.remove=function(){clearTimeout(this._layoutTimeout),this._layouting=!1,this._layoutTimeout=null,this._symbolDraw&&this._symbolDraw.remove(),this._lineDraw&&this._lineDraw.remove()},e.type="graph",e}(Og);function rk(t){return"_EC_"+t}var ok=function(){function t(t){this.type="graph",this.nodes=[],this.edges=[],this._nodesMap={},this._edgesMap={},this._directed=t||!1}return t.prototype.isDirected=function(){return this._directed},t.prototype.addNode=function(t,e){t=null==t?""+e:""+t;var n=this._nodesMap;if(!n[rk(t)]){var i=new ak(t,e);return i.hostGraph=this,this.nodes.push(i),n[rk(t)]=i,i}},t.prototype.getNodeByIndex=function(t){var e=this.data.getRawIndex(t);return this.nodes[e]},t.prototype.getNodeById=function(t){return this._nodesMap[rk(t)]},t.prototype.addEdge=function(t,e,n){var i=this._nodesMap,r=this._edgesMap;if(j(t)&&(t=this.nodes[t]),j(e)&&(e=this.nodes[e]),t instanceof ak||(t=i[rk(t)]),e instanceof ak||(e=i[rk(e)]),t&&e){var o=t.id+"-"+e.id,a=new sk(t,e,n);return a.hostGraph=this,this._directed&&(t.outEdges.push(a),e.inEdges.push(a)),t.edges.push(a),t!==e&&e.edges.push(a),this.edges.push(a),r[o]=a,a}},t.prototype.getEdgeByIndex=function(t){var e=this.edgeData.getRawIndex(t);return this.edges[e]},t.prototype.getEdge=function(t,e){t instanceof ak&&(t=t.id),e instanceof ak&&(e=e.id);var n=this._edgesMap;return this._directed?n[t+"-"+e]:n[t+"-"+e]||n[e+"-"+t]},t.prototype.eachNode=function(t,e){for(var n=this.nodes,i=n.length,r=0;r<i;r++)n[r].dataIndex>=0&&t.call(e,n[r],r)},t.prototype.eachEdge=function(t,e){for(var n=this.edges,i=n.length,r=0;r<i;r++)n[r].dataIndex>=0&&n[r].node1.dataIndex>=0&&n[r].node2.dataIndex>=0&&t.call(e,n[r],r)},t.prototype.breadthFirstTraverse=function(t,e,n,i){if(e instanceof ak||(e=this._nodesMap[rk(e)]),e){for(var r="out"===n?"outEdges":"in"===n?"inEdges":"edges",o=0;o<this.nodes.length;o++)this.nodes[o].__visited=!1;if(!t.call(i,e,null))for(var a=[e];a.length;){var s=a.shift(),l=s[r];for(o=0;o<l.length;o++){var u=l[o],h=u.node1===s?u.node2:u.node1;if(!h.__visited){if(t.call(i,h,s))return;a.push(h),h.__visited=!0}}}}},t.prototype.update=function(){for(var t=this.data,e=this.edgeData,n=this.nodes,i=this.edges,r=0,o=n.length;r<o;r++)n[r].dataIndex=-1;for(r=0,o=t.count();r<o;r++)n[t.getRawIndex(r)].dataIndex=r;e.filterSelf((function(t){var n=i[e.getRawIndex(t)];return n.node1.dataIndex>=0&&n.node2.dataIndex>=0}));for(r=0,o=i.length;r<o;r++)i[r].dataIndex=-1;for(r=0,o=e.count();r<o;r++)i[e.getRawIndex(r)].dataIndex=r},t.prototype.clone=function(){for(var e=new t(this._directed),n=this.nodes,i=this.edges,r=0;r<n.length;r++)e.addNode(n[r].id,n[r].dataIndex);for(r=0;r<i.length;r++){var o=i[r];e.addEdge(o.node1.id,o.node2.id,o.dataIndex)}return e},t}(),ak=function(){function t(t,e){this.inEdges=[],this.outEdges=[],this.edges=[],this.dataIndex=-1,this.id=null==t?"":t,this.dataIndex=null==e?-1:e}return t.prototype.degree=function(){return this.edges.length},t.prototype.inDegree=function(){return this.inEdges.length},t.prototype.outDegree=function(){return this.outEdges.length},t.prototype.getModel=function(t){if(!(this.dataIndex<0))return this.hostGraph.data.getItemModel(this.dataIndex).getModel(t)},t.prototype.getAdjacentDataIndices=function(){for(var t={edge:[],node:[]},e=0;e<this.edges.length;e++){var n=this.edges[e];n.dataIndex<0||(t.edge.push(n.dataIndex),t.node.push(n.node1.dataIndex,n.node2.dataIndex))}return t},t.prototype.getTrajectoryDataIndices=function(){for(var t=yt(),e=yt(),n=0;n<this.edges.length;n++){var i=this.edges[n];if(!(i.dataIndex<0)){t.set(i.dataIndex,!0);for(var r=[i.node1],o=[i.node2],a=0;a<r.length;){var s=r[a];a++,e.set(s.dataIndex,!0);for(var l=0;l<s.inEdges.length;l++)t.set(s.inEdges[l].dataIndex,!0),r.push(s.inEdges[l].node1)}for(a=0;a<o.length;){var u=o[a];a++,e.set(u.dataIndex,!0);for(l=0;l<u.outEdges.length;l++)t.set(u.outEdges[l].dataIndex,!0),o.push(u.outEdges[l].node2)}}}return{edge:t.keys(),node:e.keys()}},t}(),sk=function(){function t(t,e,n){this.dataIndex=-1,this.node1=t,this.node2=e,this.dataIndex=null==n?-1:n}return t.prototype.getModel=function(t){if(!(this.dataIndex<0))return this.hostGraph.edgeData.getItemModel(this.dataIndex).getModel(t)},t.prototype.getAdjacentDataIndices=function(){return{edge:[this.dataIndex],node:[this.node1.dataIndex,this.node2.dataIndex]}},t.prototype.getTrajectoryDataIndices=function(){var t=yt(),e=yt();t.set(this.dataIndex,!0);for(var n=[this.node1],i=[this.node2],r=0;r<n.length;){var o=n[r];r++,e.set(o.dataIndex,!0);for(var a=0;a<o.inEdges.length;a++)t.set(o.inEdges[a].dataIndex,!0),n.push(o.inEdges[a].node1)}for(r=0;r<i.length;){var s=i[r];r++,e.set(s.dataIndex,!0);for(a=0;a<s.outEdges.length;a++)t.set(s.outEdges[a].dataIndex,!0),i.push(s.outEdges[a].node2)}return{edge:t.keys(),node:e.keys()}},t}();function lk(t,e){return{getValue:function(n){var i=this[t][e];return i.getStore().get(i.getDimensionIndex(n||"value"),this.dataIndex)},setVisual:function(n,i){this.dataIndex>=0&&this[t][e].setItemVisual(this.dataIndex,n,i)},getVisual:function(n){return this[t][e].getItemVisual(this.dataIndex,n)},setLayout:function(n,i){this.dataIndex>=0&&this[t][e].setItemLayout(this.dataIndex,n,i)},getLayout:function(){return this[t][e].getItemLayout(this.dataIndex)},getGraphicEl:function(){return this[t][e].getItemGraphicEl(this.dataIndex)},getRawIndex:function(){return this[t][e].getRawIndex(this.dataIndex)}}}function uk(t,e,n,i,r){for(var o=new ok(i),a=0;a<t.length;a++)o.addNode(it(t[a].id,t[a].name,a),a);var s=[],l=[],u=0;for(a=0;a<e.length;a++){var h=e[a],c=h.source,p=h.target;o.addEdge(c,p,u)&&(l.push(h),s.push(it(Ro(h.id,null),c+" > "+p)),u++)}var d,f=n.get("coordinateSystem");if("cartesian2d"===f||"polar"===f)d=_x(t,n);else{var g=wd.get(f),y=g&&g.dimensions||[];P(y,"value")<0&&y.concat(["value"]);var v=px(t,{coordDimensions:y,encodeDefine:n.getEncode()}).dimensions;(d=new cx(v,n)).initData(t)}var m=new cx(["value"],n);return m.initData(l,s),r&&r(d,m),ZC({mainData:d,struct:o,structAttr:"graph",datas:{node:d,edge:m},datasAttr:{node:"data",edge:"edgeData"}}),o.update(),o}R(ak,lk("hostGraph","data")),R(sk,lk("hostGraph","edgeData"));var hk=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.hasSymbolVisual=!0,n}return n(e,t),e.prototype.init=function(e){t.prototype.init.apply(this,arguments);var n=this;function i(){return n._categoriesData}this.legendVisualProvider=new NM(i,i),this.fillDataTextStyle(e.edges||e.links),this._updateCategoriesData()},e.prototype.mergeOption=function(e){t.prototype.mergeOption.apply(this,arguments),this.fillDataTextStyle(e.edges||e.links),this._updateCategoriesData()},e.prototype.mergeDefaultAndTheme=function(e){t.prototype.mergeDefaultAndTheme.apply(this,arguments),Co(e,"edgeLabel",["show"])},e.prototype.getInitialData=function(t,e){var n,i=t.edges||t.links||[],r=t.data||t.nodes||[],o=this;if(r&&i){dA(n=this)&&(n.__curvenessList=[],n.__edgeMap={},fA(n));var a=uk(r,i,this,!0,(function(t,e){t.wrapMethod("getItemModel",(function(t){var e=o._categoriesModels[t.getShallow("category")];return e&&(e.parentModel=t.parentModel,t.parentModel=e),t}));var n=Cc.prototype.getModel;function i(t,e){var i=n.call(this,t,e);return i.resolveParentPath=r,i}function r(t){if(t&&("label"===t[0]||"label"===t[1])){var e=t.slice();return"label"===t[0]?e[0]="edgeLabel":"label"===t[1]&&(e[1]="edgeLabel"),e}return t}e.wrapMethod("getItemModel",(function(t){return t.resolveParentPath=r,t.getModel=i,t}))}));return E(a.edges,(function(t){!function(t,e,n,i){if(dA(n)){var r=gA(t,e,n),o=n.__edgeMap,a=o[yA(r)];o[r]&&!a?o[r].isForward=!0:a&&o[r]&&(a.isForward=!0,o[r].isForward=!1),o[r]=o[r]||[],o[r].push(i)}}(t.node1,t.node2,this,t.dataIndex)}),this),a.data}},e.prototype.getGraph=function(){return this.getData().graph},e.prototype.getEdgeData=function(){return this.getGraph().edgeData},e.prototype.getCategoriesData=function(){return this._categoriesData},e.prototype.formatTooltip=function(t,e,n){if("edge"===n){var i=this.getData(),r=this.getDataParams(t,n),o=i.graph.getEdgeByIndex(t),a=i.getName(o.node1.dataIndex),s=i.getName(o.node2.dataIndex),l=[];return null!=a&&l.push(a),null!=s&&l.push(s),og("nameValue",{name:l.join(" > "),value:r.value,noValue:null==r.value})}return vg({series:this,dataIndex:t,multipleSeries:e})},e.prototype._updateCategoriesData=function(){var t=z(this.option.categories||[],(function(t){return null!=t.value?t:A({value:0},t)})),e=new cx(["value"],this);e.initData(t),this._categoriesData=e,this._categoriesModels=e.mapArray((function(t){return e.getItemModel(t)}))},e.prototype.setZoom=function(t){this.option.zoom=t},e.prototype.setCenter=function(t){this.option.center=t},e.prototype.isAnimationEnabled=function(){return t.prototype.isAnimationEnabled.call(this)&&!("force"===this.get("layout")&&this.get(["force","layoutAnimation"]))},e.type="series.graph",e.dependencies=["grid","polar","geo","singleAxis","calendar"],e.defaultOption={z:2,coordinateSystem:"view",legendHoverLink:!0,layout:null,circular:{rotateLabel:!1},force:{initLayout:null,repulsion:[0,50],gravity:.1,friction:.6,edgeLength:30,layoutAnimation:!0},left:"center",top:"center",symbol:"circle",symbolSize:10,edgeSymbol:["none","none"],edgeSymbolSize:10,edgeLabel:{position:"middle",distance:5},draggable:!1,roam:!1,center:null,zoom:1,nodeScaleRatio:.6,label:{show:!1,formatter:"{b}"},itemStyle:{},lineStyle:{color:"#aaa",width:1,opacity:.5},emphasis:{scale:!0,label:{show:!0}},select:{itemStyle:{borderColor:"#212121"}}},e}(bg),ck={type:"graphRoam",event:"graphRoam",update:"none"};var pk=function(){this.angle=0,this.width=10,this.r=10,this.x=0,this.y=0},dk=function(t){function e(e){var n=t.call(this,e)||this;return n.type="pointer",n}return n(e,t),e.prototype.getDefaultShape=function(){return new pk},e.prototype.buildPath=function(t,e){var n=Math.cos,i=Math.sin,r=e.r,o=e.width,a=e.angle,s=e.x-n(a)*o*(o>=r/3?1:2),l=e.y-i(a)*o*(o>=r/3?1:2);a=e.angle-Math.PI/2,t.moveTo(s,l),t.lineTo(e.x+n(a)*o,e.y+i(a)*o),t.lineTo(e.x+n(e.angle)*r,e.y+i(e.angle)*r),t.lineTo(e.x-n(a)*o,e.y-i(a)*o),t.lineTo(s,l)},e}(ks);function fk(t,e){var n=null==t?"":t+"";return e&&(U(e)?n=e.replace("{value}",n):X(e)&&(n=e(t))),n}var gk=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){this.group.removeAll();var i=t.get(["axisLine","lineStyle","color"]),r=function(t,e){var n=t.get("center"),i=e.getWidth(),r=e.getHeight(),o=Math.min(i,r);return{cx:$r(n[0],e.getWidth()),cy:$r(n[1],e.getHeight()),r:$r(t.get("radius"),o/2)}}(t,n);this._renderMain(t,e,n,i,r),this._data=t.getData()},e.prototype.dispose=function(){},e.prototype._renderMain=function(t,e,n,i,r){var o=this.group,a=t.get("clockwise"),s=-t.get("startAngle")/180*Math.PI,l=-t.get("endAngle")/180*Math.PI,u=t.getModel("axisLine"),h=u.get("roundCap")?JS:Fu,c=u.get("show"),p=u.getModel("lineStyle"),d=p.get("width"),f=[s,l];us(f,!a);for(var g=(l=f[1])-(s=f[0]),y=s,v=[],m=0;c&&m<i.length;m++){var x=new h({shape:{startAngle:y,endAngle:l=s+g*Math.min(Math.max(i[m][0],0),1),cx:r.cx,cy:r.cy,clockwise:a,r0:r.r-d,r:r.r},silent:!0});x.setStyle({fill:i[m][1]}),x.setStyle(p.getLineStyle(["color","width"])),v.push(x),y=l}v.reverse(),E(v,(function(t){return o.add(t)}));var _=function(t){if(t<=0)return i[0][1];var e;for(e=0;e<i.length;e++)if(i[e][0]>=t&&(0===e?0:i[e-1][0])<t)return i[e][1];return i[e-1][1]};this._renderTicks(t,e,n,_,r,s,l,a,d),this._renderTitleAndDetail(t,e,n,_,r),this._renderAnchor(t,r),this._renderPointer(t,e,n,_,r,s,l,a,d)},e.prototype._renderTicks=function(t,e,n,i,r,o,a,s,l){for(var u,h,c=this.group,p=r.cx,d=r.cy,f=r.r,g=+t.get("min"),y=+t.get("max"),v=t.getModel("splitLine"),m=t.getModel("axisTick"),x=t.getModel("axisLabel"),_=t.get("splitNumber"),b=m.get("splitNumber"),w=$r(v.get("length"),f),S=$r(m.get("length"),f),M=o,I=(a-o)/_,T=I/b,C=v.getModel("lineStyle").getLineStyle(),D=m.getModel("lineStyle").getLineStyle(),A=v.get("distance"),k=0;k<=_;k++){if(u=Math.cos(M),h=Math.sin(M),v.get("show")){var L=new Ku({shape:{x1:u*(f-(P=A?A+l:l))+p,y1:h*(f-P)+d,x2:u*(f-w-P)+p,y2:h*(f-w-P)+d},style:C,silent:!0});"auto"===C.stroke&&L.setStyle({stroke:i(k/_)}),c.add(L)}if(x.get("show")){var P=x.get("distance")+A,O=fk(Jr(k/_*(y-g)+g),x.get("formatter")),R=i(k/_),N=u*(f-w-P)+p,E=h*(f-w-P)+d,z=x.get("rotate"),V=0;"radial"===z?(V=-M+2*Math.PI)>Math.PI/2&&(V+=Math.PI):"tangential"===z?V=-M-Math.PI/2:j(z)&&(V=z*Math.PI/180),0===V?c.add(new Xs({style:oc(x,{text:O,x:N,y:E,verticalAlign:h<-.8?"top":h>.8?"bottom":"middle",align:u<-.4?"left":u>.4?"right":"center"},{inheritColor:R}),silent:!0})):c.add(new Xs({style:oc(x,{text:O,x:N,y:E,verticalAlign:"middle",align:"center"},{inheritColor:R}),silent:!0,originX:N,originY:E,rotation:V}))}if(m.get("show")&&k!==_){P=(P=m.get("distance"))?P+l:l;for(var B=0;B<=b;B++){u=Math.cos(M),h=Math.sin(M);var F=new Ku({shape:{x1:u*(f-P)+p,y1:h*(f-P)+d,x2:u*(f-S-P)+p,y2:h*(f-S-P)+d},silent:!0,style:D});"auto"===D.stroke&&F.setStyle({stroke:i((k+B/b)/_)}),c.add(F),M+=T}M-=T}else M+=I}},e.prototype._renderPointer=function(t,e,n,i,r,o,a,s,l){var u=this.group,h=this._data,c=this._progressEls,p=[],d=t.get(["pointer","show"]),f=t.getModel("progress"),g=f.get("show"),y=t.getData(),v=y.mapDimension("value"),m=+t.get("min"),x=+t.get("max"),_=[m,x],b=[o,a];function w(e,n){var i,o=y.getItemModel(e).getModel("pointer"),a=$r(o.get("width"),r.r),s=$r(o.get("length"),r.r),l=t.get(["pointer","icon"]),u=o.get("offsetCenter"),h=$r(u[0],r.r),c=$r(u[1],r.r),p=o.get("keepAspect");return(i=l?Xy(l,h-a/2,c-s,a,s,null,p):new dk({shape:{angle:-Math.PI/2,width:a,r:s,x:h,y:c}})).rotation=-(n+Math.PI/2),i.x=r.cx,i.y=r.cy,i}function S(t,e){var n=f.get("roundCap")?JS:Fu,i=f.get("overlap"),a=i?f.get("width"):l/y.count(),u=i?r.r-a:r.r-(t+1)*a,h=i?r.r:r.r-t*a,c=new n({shape:{startAngle:o,endAngle:e,cx:r.cx,cy:r.cy,clockwise:s,r0:u,r:h}});return i&&(c.z2=x-y.get(v,t)%x),c}(g||d)&&(y.diff(h).add((function(e){var n=y.get(v,e);if(d){var i=w(e,o);mh(i,{rotation:-((isNaN(+n)?b[0]:Kr(n,_,b,!0))+Math.PI/2)},t),u.add(i),y.setItemGraphicEl(e,i)}if(g){var r=S(e,o),a=f.get("clip");mh(r,{shape:{endAngle:Kr(n,_,b,a)}},t),u.add(r),ol(t.seriesIndex,y.dataType,e,r),p[e]=r}})).update((function(e,n){var i=y.get(v,e);if(d){var r=h.getItemGraphicEl(n),a=r?r.rotation:o,s=w(e,a);s.rotation=a,vh(s,{rotation:-((isNaN(+i)?b[0]:Kr(i,_,b,!0))+Math.PI/2)},t),u.add(s),y.setItemGraphicEl(e,s)}if(g){var l=c[n],m=S(e,l?l.shape.endAngle:o),x=f.get("clip");vh(m,{shape:{endAngle:Kr(i,_,b,x)}},t),u.add(m),ol(t.seriesIndex,y.dataType,e,m),p[e]=m}})).execute(),y.each((function(t){var e=y.getItemModel(t),n=e.getModel("emphasis"),r=n.get("focus"),o=n.get("blurScope"),a=n.get("disabled");if(d){var s=y.getItemGraphicEl(t),l=y.getItemVisual(t,"style"),u=l.fill;if(s instanceof Ns){var h=s.style;s.useStyle(A({image:h.image,x:h.x,y:h.y,width:h.width,height:h.height},l))}else s.useStyle(l),"pointer"!==s.type&&s.setColor(u);s.setStyle(e.getModel(["pointer","itemStyle"]).getItemStyle()),"auto"===s.style.fill&&s.setStyle("fill",i(Kr(y.get(v,t),_,[0,1],!0))),s.z2EmphasisLift=0,$l(s,e),Zl(s,r,o,a)}if(g){var c=p[t];c.useStyle(y.getItemVisual(t,"style")),c.setStyle(e.getModel(["progress","itemStyle"]).getItemStyle()),c.z2EmphasisLift=0,$l(c,e),Zl(c,r,o,a)}})),this._progressEls=p)},e.prototype._renderAnchor=function(t,e){var n=t.getModel("anchor");if(n.get("show")){var i=n.get("size"),r=n.get("icon"),o=n.get("offsetCenter"),a=n.get("keepAspect"),s=Xy(r,e.cx-i/2+$r(o[0],e.r),e.cy-i/2+$r(o[1],e.r),i,i,null,a);s.z2=n.get("showAbove")?1:0,s.setStyle(n.getModel("itemStyle").getItemStyle()),this.group.add(s)}},e.prototype._renderTitleAndDetail=function(t,e,n,i,r){var o=this,a=t.getData(),s=a.mapDimension("value"),l=+t.get("min"),u=+t.get("max"),h=new Br,c=[],p=[],d=t.isAnimationEnabled(),f=t.get(["pointer","showAbove"]);a.diff(this._data).add((function(t){c[t]=new Xs({silent:!0}),p[t]=new Xs({silent:!0})})).update((function(t,e){c[t]=o._titleEls[e],p[t]=o._detailEls[e]})).execute(),a.each((function(e){var n=a.getItemModel(e),o=a.get(s,e),g=new Br,y=i(Kr(o,[l,u],[0,1],!0)),v=n.getModel("title");if(v.get("show")){var m=v.get("offsetCenter"),x=r.cx+$r(m[0],r.r),_=r.cy+$r(m[1],r.r);(D=c[e]).attr({z2:f?0:2,style:oc(v,{x:x,y:_,text:a.getName(e),align:"center",verticalAlign:"middle"},{inheritColor:y})}),g.add(D)}var b=n.getModel("detail");if(b.get("show")){var w=b.get("offsetCenter"),S=r.cx+$r(w[0],r.r),M=r.cy+$r(w[1],r.r),I=$r(b.get("width"),r.r),T=$r(b.get("height"),r.r),C=t.get(["progress","show"])?a.getItemVisual(e,"style").fill:y,D=p[e],A=b.get("formatter");D.attr({z2:f?0:2,style:oc(b,{x:S,y:M,text:fk(o,A),width:isNaN(I)?null:I,height:isNaN(T)?null:T,align:"center",verticalAlign:"middle"},{inheritColor:C})}),dc(D,{normal:b},o,(function(t){return fk(t,A)})),d&&fc(D,e,a,t,{getFormattedLabel:function(t,e,n,i,r,a){return fk(a?a.interpolatedValue:o,A)}}),g.add(D)}h.add(g)})),this.group.add(h),this._titleEls=c,this._detailEls=p},e.type="gauge",e}(Og),yk=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.visualStyleAccessPath="itemStyle",n}return n(e,t),e.prototype.getInitialData=function(t,e){return RM(this,["value"])},e.type="series.gauge",e.defaultOption={z:2,colorBy:"data",center:["50%","50%"],legendHoverLink:!0,radius:"75%",startAngle:225,endAngle:-45,clockwise:!0,min:0,max:100,splitNumber:10,axisLine:{show:!0,roundCap:!1,lineStyle:{color:[[1,"#E6EBF8"]],width:10}},progress:{show:!1,overlap:!0,width:10,roundCap:!1,clip:!0},splitLine:{show:!0,length:10,distance:10,lineStyle:{color:"#63677A",width:3,type:"solid"}},axisTick:{show:!0,splitNumber:5,length:6,distance:10,lineStyle:{color:"#63677A",width:1,type:"solid"}},axisLabel:{show:!0,distance:15,color:"#464646",fontSize:12,rotate:0},pointer:{icon:null,offsetCenter:[0,0],show:!0,showAbove:!0,length:"60%",width:6,keepAspect:!1},anchor:{show:!1,showAbove:!1,size:6,icon:"circle",offsetCenter:[0,0],keepAspect:!1,itemStyle:{color:"#fff",borderWidth:0,borderColor:"#5470c6"}},title:{show:!0,offsetCenter:[0,"20%"],color:"#464646",fontSize:16,valueAnimation:!1},detail:{show:!0,backgroundColor:"rgba(0,0,0,0)",borderWidth:0,borderColor:"#ccc",width:100,height:null,padding:[5,10],offsetCenter:[0,"40%"],color:"#464646",fontSize:30,fontWeight:"bold",lineHeight:30,valueAnimation:!1}},e}(bg);var vk=["itemStyle","opacity"],mk=function(t){function e(e,n){var i=t.call(this)||this,r=i,o=new Zu,a=new Xs;return r.setTextContent(a),i.setTextGuideLine(o),i.updateData(e,n,!0),i}return n(e,t),e.prototype.updateData=function(t,e,n){var i=this,r=t.hostModel,o=t.getItemModel(e),a=t.getItemLayout(e),s=o.getModel("emphasis"),l=o.get(vk);l=null==l?1:l,n||Sh(i),i.useStyle(t.getItemVisual(e,"style")),i.style.lineJoin="round",n?(i.setShape({points:a.points}),i.style.opacity=0,mh(i,{style:{opacity:l}},r,e)):vh(i,{style:{opacity:l},shape:{points:a.points}},r,e),$l(i,o),this._updateLabel(t,e),Zl(this,s.get("focus"),s.get("blurScope"),s.get("disabled"))},e.prototype._updateLabel=function(t,e){var n=this,i=this.getTextGuideLine(),r=n.getTextContent(),o=t.hostModel,a=t.getItemModel(e),s=t.getItemLayout(e).label,l=t.getItemVisual(e,"style"),u=l.fill;ic(r,rc(a),{labelFetcher:t.hostModel,labelDataIndex:e,defaultOpacity:l.opacity,defaultText:t.getName(e)},{normal:{align:s.textAlign,verticalAlign:s.verticalAlign}}),n.setTextConfig({local:!0,inside:!!s.inside,insideStroke:u,outsideFill:u});var h=s.linePoints;i.setShape({points:h}),n.textGuideLineConfig={anchor:h?new De(h[0][0],h[0][1]):null},vh(r,{style:{x:s.x,y:s.y}},o,e),r.attr({rotation:s.rotation,originX:s.x,originY:s.y,z2:10}),kb(n,Lb(a),{stroke:u})},e}(Xu),xk=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.ignoreLabelLineUpdate=!0,n}return n(e,t),e.prototype.render=function(t,e,n){var i=t.getData(),r=this._data,o=this.group;i.diff(r).add((function(t){var e=new mk(i,t);i.setItemGraphicEl(t,e),o.add(e)})).update((function(t,e){var n=r.getItemGraphicEl(e);n.updateData(i,t),o.add(n),i.setItemGraphicEl(t,n)})).remove((function(e){wh(r.getItemGraphicEl(e),t,e)})).execute(),this._data=i},e.prototype.remove=function(){this.group.removeAll(),this._data=null},e.prototype.dispose=function(){},e.type="funnel",e}(Og),_k=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(e){t.prototype.init.apply(this,arguments),this.legendVisualProvider=new NM(W(this.getData,this),W(this.getRawData,this)),this._defaultLabelLine(e)},e.prototype.getInitialData=function(t,e){return RM(this,{coordDimensions:["value"],encodeDefaulter:H(ed,this)})},e.prototype._defaultLabelLine=function(t){Co(t,"labelLine",["show"]);var e=t.labelLine,n=t.emphasis.labelLine;e.show=e.show&&t.label.show,n.show=n.show&&t.emphasis.label.show},e.prototype.getDataParams=function(e){var n=this.getData(),i=t.prototype.getDataParams.call(this,e),r=n.mapDimension("value"),o=n.getSum(r);return i.percent=o?+(n.get(r,e)/o*100).toFixed(2):0,i.$vars.push("percent"),i},e.type="series.funnel",e.defaultOption={z:2,legendHoverLink:!0,colorBy:"data",left:80,top:60,right:80,bottom:60,minSize:"0%",maxSize:"100%",sort:"descending",orient:"vertical",gap:0,funnelAlign:"center",label:{show:!0,position:"outer"},labelLine:{show:!0,length:20,lineStyle:{width:1}},itemStyle:{borderColor:"#fff",borderWidth:1},emphasis:{label:{show:!0}},select:{itemStyle:{borderColor:"#212121"}}},e}(bg);function bk(t,e){t.eachSeriesByType("funnel",(function(t){var n=t.getData(),i=n.mapDimension("value"),r=t.get("sort"),o=function(t,e){return kp(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()})}(t,e),a=t.get("orient"),s=o.width,l=o.height,u=function(t,e){for(var n=t.mapDimension("value"),i=t.mapArray(n,(function(t){return t})),r=[],o="ascending"===e,a=0,s=t.count();a<s;a++)r[a]=a;return X(e)?r.sort(e):"none"!==e&&r.sort((function(t,e){return o?i[t]-i[e]:i[e]-i[t]})),r}(n,r),h=o.x,c=o.y,p="horizontal"===a?[$r(t.get("minSize"),l),$r(t.get("maxSize"),l)]:[$r(t.get("minSize"),s),$r(t.get("maxSize"),s)],d=n.getDataExtent(i),f=t.get("min"),g=t.get("max");null==f&&(f=Math.min(d[0],0)),null==g&&(g=d[1]);var y=t.get("funnelAlign"),v=t.get("gap"),m=(("horizontal"===a?s:l)-v*(n.count()-1))/n.count(),x=function(t,e){if("horizontal"===a){var r=Kr(n.get(i,t)||0,[f,g],p,!0),o=void 0;switch(y){case"top":o=c;break;case"center":o=c+(l-r)/2;break;case"bottom":o=c+(l-r)}return[[e,o],[e,o+r]]}var u,d=Kr(n.get(i,t)||0,[f,g],p,!0);switch(y){case"left":u=h;break;case"center":u=h+(s-d)/2;break;case"right":u=h+s-d}return[[u,e],[u+d,e]]};"ascending"===r&&(m=-m,v=-v,"horizontal"===a?h+=s:c+=l,u=u.reverse());for(var _=0;_<u.length;_++){var b=u[_],w=u[_+1],S=n.getItemModel(b);if("horizontal"===a){var M=S.get(["itemStyle","width"]);null==M?M=m:(M=$r(M,s),"ascending"===r&&(M=-M));var I=x(b,h),T=x(w,h+M);h+=M+v,n.setItemLayout(b,{points:I.concat(T.slice().reverse())})}else{var C=S.get(["itemStyle","height"]);null==C?C=m:(C=$r(C,l),"ascending"===r&&(C=-C));I=x(b,c),T=x(w,c+C);c+=C+v,n.setItemLayout(b,{points:I.concat(T.slice().reverse())})}}!function(t){var e=t.hostModel.get("orient");t.each((function(n){var i,r,o,a,s=t.getItemModel(n),l=s.getModel("label").get("position"),u=s.getModel("labelLine"),h=t.getItemLayout(n),c=h.points,p="inner"===l||"inside"===l||"center"===l||"insideLeft"===l||"insideRight"===l;if(p)"insideLeft"===l?(r=(c[0][0]+c[3][0])/2+5,o=(c[0][1]+c[3][1])/2,i="left"):"insideRight"===l?(r=(c[1][0]+c[2][0])/2-5,o=(c[1][1]+c[2][1])/2,i="right"):(r=(c[0][0]+c[1][0]+c[2][0]+c[3][0])/4,o=(c[0][1]+c[1][1]+c[2][1]+c[3][1])/4,i="center"),a=[[r,o],[r,o]];else{var d=void 0,f=void 0,g=void 0,y=void 0,v=u.get("length");"left"===l?(d=(c[3][0]+c[0][0])/2,f=(c[3][1]+c[0][1])/2,r=(g=d-v)-5,i="right"):"right"===l?(d=(c[1][0]+c[2][0])/2,f=(c[1][1]+c[2][1])/2,r=(g=d+v)+5,i="left"):"top"===l?(d=(c[3][0]+c[0][0])/2,o=(y=(f=(c[3][1]+c[0][1])/2)-v)-5,i="center"):"bottom"===l?(d=(c[1][0]+c[2][0])/2,o=(y=(f=(c[1][1]+c[2][1])/2)+v)+5,i="center"):"rightTop"===l?(d="horizontal"===e?c[3][0]:c[1][0],f="horizontal"===e?c[3][1]:c[1][1],"horizontal"===e?(o=(y=f-v)-5,i="center"):(r=(g=d+v)+5,i="top")):"rightBottom"===l?(d=c[2][0],f=c[2][1],"horizontal"===e?(o=(y=f+v)+5,i="center"):(r=(g=d+v)+5,i="bottom")):"leftTop"===l?(d=c[0][0],f="horizontal"===e?c[0][1]:c[1][1],"horizontal"===e?(o=(y=f-v)-5,i="center"):(r=(g=d-v)-5,i="right")):"leftBottom"===l?(d="horizontal"===e?c[1][0]:c[3][0],f="horizontal"===e?c[1][1]:c[2][1],"horizontal"===e?(o=(y=f+v)+5,i="center"):(r=(g=d-v)-5,i="right")):(d=(c[1][0]+c[2][0])/2,f=(c[1][1]+c[2][1])/2,"horizontal"===e?(o=(y=f+v)+5,i="center"):(r=(g=d+v)+5,i="left")),"horizontal"===e?r=g=d:o=y=f,a=[[d,f],[g,y]]}h.label={linePoints:a,x:r,y:o,verticalAlign:"middle",textAlign:i,inside:p}}))}(n)}))}var wk=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._dataGroup=new Br,n._initialized=!1,n}return n(e,t),e.prototype.init=function(){this.group.add(this._dataGroup)},e.prototype.render=function(t,e,n,i){this._progressiveEls=null;var r=this._dataGroup,o=t.getData(),a=this._data,s=t.coordinateSystem,l=s.dimensions,u=Ik(t);if(o.diff(a).add((function(t){Tk(Mk(o,r,t,l,s),o,t,u)})).update((function(e,n){var i=a.getItemGraphicEl(n),r=Sk(o,e,l,s);o.setItemGraphicEl(e,i),vh(i,{shape:{points:r}},t,e),Sh(i),Tk(i,o,e,u)})).remove((function(t){var e=a.getItemGraphicEl(t);r.remove(e)})).execute(),!this._initialized){this._initialized=!0;var h=function(t,e,n){var i=t.model,r=t.getRect(),o=new Ws({shape:{x:r.x,y:r.y,width:r.width,height:r.height}}),a="horizontal"===i.get("layout")?"width":"height";return o.setShape(a,0),mh(o,{shape:{width:r.width,height:r.height}},e,n),o}(s,t,(function(){setTimeout((function(){r.removeClipPath()}))}));r.setClipPath(h)}this._data=o},e.prototype.incrementalPrepareRender=function(t,e,n){this._initialized=!0,this._data=null,this._dataGroup.removeAll()},e.prototype.incrementalRender=function(t,e,n){for(var i=e.getData(),r=e.coordinateSystem,o=r.dimensions,a=Ik(e),s=this._progressiveEls=[],l=t.start;l<t.end;l++){var u=Mk(i,this._dataGroup,l,o,r);u.incremental=!0,Tk(u,i,l,a),s.push(u)}},e.prototype.remove=function(){this._dataGroup&&this._dataGroup.removeAll(),this._data=null},e.type="parallel",e}(Og);function Sk(t,e,n,i){for(var r,o=[],a=0;a<n.length;a++){var s=n[a],l=t.get(t.mapDimension(s),e);r=l,("category"===i.getAxis(s).type?null==r:null==r||isNaN(r))||o.push(i.dataToPoint(l,s))}return o}function Mk(t,e,n,i,r){var o=Sk(t,n,i,r),a=new Zu({shape:{points:o},z2:10});return e.add(a),t.setItemGraphicEl(n,a),a}function Ik(t){var e=t.get("smooth",!0);return!0===e&&(e=.3),nt(e=yo(e))&&(e=0),{smooth:e}}function Tk(t,e,n,i){t.useStyle(e.getItemVisual(n,"style")),t.style.fill=null,t.setShape("smooth",i.smooth);var r=e.getItemModel(n),o=r.getModel("emphasis");$l(t,r,"lineStyle"),Zl(t,o.get("focus"),o.get("blurScope"),o.get("disabled"))}var Ck=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.visualStyleAccessPath="lineStyle",n.visualDrawType="stroke",n}return n(e,t),e.prototype.getInitialData=function(t,e){return _x(null,this,{useEncodeDefaulter:W(Dk,null,this)})},e.prototype.getRawIndicesByActiveState=function(t){var e=this.coordinateSystem,n=this.getData(),i=[];return e.eachActiveState(n,(function(e,r){t===e&&i.push(n.getRawIndex(r))})),i},e.type="series.parallel",e.dependencies=["parallel"],e.defaultOption={z:2,coordinateSystem:"parallel",parallelIndex:0,label:{show:!1},inactiveOpacity:.05,activeOpacity:1,lineStyle:{width:1,opacity:.45,type:"solid"},emphasis:{label:{show:!1}},progressive:500,smooth:!1,animationEasing:"linear"},e}(bg);function Dk(t){var e=t.ecModel.getComponent("parallel",t.get("parallelIndex"));if(e){var n={};return E(e.dimensions,(function(t){var e=+t.replace("dim","");n[t]=e})),n}}var Ak=["lineStyle","opacity"],kk={seriesType:"parallel",reset:function(t,e){var n=t.coordinateSystem,i={normal:t.get(["lineStyle","opacity"]),active:t.get("activeOpacity"),inactive:t.get("inactiveOpacity")};return{progress:function(t,e){n.eachActiveState(e,(function(t,n){var r=i[t];if("normal"===t&&e.hasItemOption){var o=e.getItemModel(n).get(Ak,!0);null!=o&&(r=o)}e.ensureUniqueItemVisual(n,"style").opacity=r}),t.start,t.end)}}}};function Lk(t){!function(t){if(t.parallel)return;var e=!1;E(t.series,(function(t){t&&"parallel"===t.type&&(e=!0)})),e&&(t.parallel=[{}])}(t),function(t){var e=To(t.parallelAxis);E(e,(function(e){if(q(e)){var n=e.parallelIndex||0,i=To(t.parallel)[n];i&&i.parallelAxisDefault&&C(e,i.parallelAxisDefault,!1)}}))}(t)}var Pk=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){this._model=t,this._api=n,this._handlers||(this._handlers={},E(Ok,(function(t,e){n.getZr().on(e,this._handlers[e]=W(t,this))}),this)),Hg(this,"_throttledDispatchExpand",t.get("axisExpandRate"),"fixRate")},e.prototype.dispose=function(t,e){Yg(this,"_throttledDispatchExpand"),E(this._handlers,(function(t,n){e.getZr().off(n,t)})),this._handlers=null},e.prototype._throttledDispatchExpand=function(t){this._dispatchExpand(t)},e.prototype._dispatchExpand=function(t){t&&this._api.dispatchAction(A({type:"parallelAxisExpand"},t))},e.type="parallel",e}(Ag),Ok={mousedown:function(t){Rk(this,"click")&&(this._mouseDownPoint=[t.offsetX,t.offsetY])},mouseup:function(t){var e=this._mouseDownPoint;if(Rk(this,"click")&&e){var n=[t.offsetX,t.offsetY];if(Math.pow(e[0]-n[0],2)+Math.pow(e[1]-n[1],2)>5)return;var i=this._model.coordinateSystem.getSlidedAxisExpandWindow([t.offsetX,t.offsetY]);"none"!==i.behavior&&this._dispatchExpand({axisExpandWindow:i.axisExpandWindow})}this._mouseDownPoint=null},mousemove:function(t){if(!this._mouseDownPoint&&Rk(this,"mousemove")){var e=this._model,n=e.coordinateSystem.getSlidedAxisExpandWindow([t.offsetX,t.offsetY]),i=n.behavior;"jump"===i&&this._throttledDispatchExpand.debounceNextCall(e.get("axisExpandDebounce")),this._throttledDispatchExpand("none"===i?null:{axisExpandWindow:n.axisExpandWindow,animation:"jump"===i?null:{duration:0}})}}};function Rk(t,e){var n=t._model;return n.get("axisExpandable")&&n.get("axisExpandTriggerOn")===e}var Nk=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(){t.prototype.init.apply(this,arguments),this.mergeOption({})},e.prototype.mergeOption=function(t){var e=this.option;t&&C(e,t,!0),this._initDimensions()},e.prototype.contains=function(t,e){var n=t.get("parallelIndex");return null!=n&&e.getComponent("parallel",n)===this},e.prototype.setAxisExpand=function(t){E(["axisExpandable","axisExpandCenter","axisExpandCount","axisExpandWidth","axisExpandWindow"],(function(e){t.hasOwnProperty(e)&&(this.option[e]=t[e])}),this)},e.prototype._initDimensions=function(){var t=this.dimensions=[],e=this.parallelAxisIndex=[];E(B(this.ecModel.queryComponents({mainType:"parallelAxis"}),(function(t){return(t.get("parallelIndex")||0)===this.componentIndex}),this),(function(n){t.push("dim"+n.get("dim")),e.push(n.componentIndex)}))},e.type="parallel",e.dependencies=["parallelAxis"],e.layoutMode="box",e.defaultOption={z:0,left:80,top:60,right:80,bottom:60,layout:"horizontal",axisExpandable:!1,axisExpandCenter:null,axisExpandCount:0,axisExpandWidth:50,axisExpandRate:17,axisExpandDebounce:50,axisExpandSlideTriggerArea:[-.15,.05,.4],axisExpandTriggerOn:"click",parallelAxisDefault:null},e}(zp),Ek=function(t){function e(e,n,i,r,o){var a=t.call(this,e,n,i)||this;return a.type=r||"value",a.axisIndex=o,a}return n(e,t),e.prototype.isHorizontal=function(){return"horizontal"!==this.coordinateSystem.getModel().get("layout")},e}(ab);function zk(t,e,n,i,r,o){t=t||0;var a=n[1]-n[0];if(null!=r&&(r=Bk(r,[0,a])),null!=o&&(o=Math.max(o,null!=r?r:0)),"all"===i){var s=Math.abs(e[1]-e[0]);s=Bk(s,[0,a]),r=o=Bk(s,[r,o]),i=0}e[0]=Bk(e[0],n),e[1]=Bk(e[1],n);var l=Vk(e,i);e[i]+=t;var u,h=r||0,c=n.slice();return l.sign<0?c[0]+=h:c[1]-=h,e[i]=Bk(e[i],c),u=Vk(e,i),null!=r&&(u.sign!==l.sign||u.span<r)&&(e[1-i]=e[i]+l.sign*r),u=Vk(e,i),null!=o&&u.span>o&&(e[1-i]=e[i]+u.sign*o),e}function Vk(t,e){var n=t[e]-t[1-e];return{span:Math.abs(n),sign:n>0?-1:n<0?1:e?-1:1}}function Bk(t,e){return Math.min(null!=e[1]?e[1]:1/0,Math.max(null!=e[0]?e[0]:-1/0,t))}var Fk=E,Gk=Math.min,Wk=Math.max,Hk=Math.floor,Yk=Math.ceil,Xk=Jr,Uk=Math.PI,Zk=function(){function t(t,e,n){this.type="parallel",this._axesMap=yt(),this._axesLayout={},this.dimensions=t.dimensions,this._model=t,this._init(t,e,n)}return t.prototype._init=function(t,e,n){var i=t.dimensions,r=t.parallelAxisIndex;Fk(i,(function(t,n){var i=r[n],o=e.getComponent("parallelAxis",i),a=this._axesMap.set(t,new Ek(t,b_(o),[0,0],o.get("type"),i)),s="category"===a.type;a.onBand=s&&o.get("boundaryGap"),a.inverse=o.get("inverse"),o.axis=a,a.model=o,a.coordinateSystem=o.coordinateSystem=this}),this)},t.prototype.update=function(t,e){this._updateAxesFromSeries(this._model,t)},t.prototype.containPoint=function(t){var e=this._makeLayoutInfo(),n=e.axisBase,i=e.layoutBase,r=e.pixelDimIndex,o=t[1-r],a=t[r];return o>=n&&o<=n+e.axisLength&&a>=i&&a<=i+e.layoutLength},t.prototype.getModel=function(){return this._model},t.prototype._updateAxesFromSeries=function(t,e){e.eachSeries((function(n){if(t.contains(n,e)){var i=n.getData();Fk(this.dimensions,(function(t){var e=this._axesMap.get(t);e.scale.unionExtentFromData(i,i.mapDimension(t)),__(e.scale,e.model)}),this)}}),this)},t.prototype.resize=function(t,e){this._rect=kp(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()}),this._layoutAxes()},t.prototype.getRect=function(){return this._rect},t.prototype._makeLayoutInfo=function(){var t,e=this._model,n=this._rect,i=["x","y"],r=["width","height"],o=e.get("layout"),a="horizontal"===o?0:1,s=n[r[a]],l=[0,s],u=this.dimensions.length,h=jk(e.get("axisExpandWidth"),l),c=jk(e.get("axisExpandCount")||0,[0,u]),p=e.get("axisExpandable")&&u>3&&u>c&&c>1&&h>0&&s>0,d=e.get("axisExpandWindow");d?(t=jk(d[1]-d[0],l),d[1]=d[0]+t):(t=jk(h*(c-1),l),(d=[h*(e.get("axisExpandCenter")||Hk(u/2))-t/2])[1]=d[0]+t);var f=(s-t)/(u-c);f<3&&(f=0);var g=[Hk(Xk(d[0]/h,1))+1,Yk(Xk(d[1]/h,1))-1],y=f/h*d[0];return{layout:o,pixelDimIndex:a,layoutBase:n[i[a]],layoutLength:s,axisBase:n[i[1-a]],axisLength:n[r[1-a]],axisExpandable:p,axisExpandWidth:h,axisCollapseWidth:f,axisExpandWindow:d,axisCount:u,winInnerIndices:g,axisExpandWindow0Pos:y}},t.prototype._layoutAxes=function(){var t=this._rect,e=this._axesMap,n=this.dimensions,i=this._makeLayoutInfo(),r=i.layout;e.each((function(t){var e=[0,i.axisLength],n=t.inverse?1:0;t.setExtent(e[n],e[1-n])})),Fk(n,(function(e,n){var o=(i.axisExpandable?Kk:qk)(n,i),a={horizontal:{x:o.position,y:i.axisLength},vertical:{x:0,y:o.position}},s={horizontal:Uk/2,vertical:0},l=[a[r].x+t.x,a[r].y+t.y],u=s[r],h=[1,0,0,1,0,0];Se(h,h,u),we(h,h,l),this._axesLayout[e]={position:l,rotation:u,transform:h,axisNameAvailableWidth:o.axisNameAvailableWidth,axisLabelShow:o.axisLabelShow,nameTruncateMaxWidth:o.nameTruncateMaxWidth,tickDirection:1,labelDirection:1}}),this)},t.prototype.getAxis=function(t){return this._axesMap.get(t)},t.prototype.dataToPoint=function(t,e){return this.axisCoordToPoint(this._axesMap.get(e).dataToCoord(t),e)},t.prototype.eachActiveState=function(t,e,n,i){null==n&&(n=0),null==i&&(i=t.count());var r=this._axesMap,o=this.dimensions,a=[],s=[];E(o,(function(e){a.push(t.mapDimension(e)),s.push(r.get(e).model)}));for(var l=this.hasAxisBrushed(),u=n;u<i;u++){var h=void 0;if(l){h="active";for(var c=t.getValues(a,u),p=0,d=o.length;p<d;p++){if("inactive"===s[p].getActiveState(c[p])){h="inactive";break}}}else h="normal";e(h,u)}},t.prototype.hasAxisBrushed=function(){for(var t=this.dimensions,e=this._axesMap,n=!1,i=0,r=t.length;i<r;i++)"normal"!==e.get(t[i]).model.getActiveState()&&(n=!0);return n},t.prototype.axisCoordToPoint=function(t,e){return Fh([t,0],this._axesLayout[e].transform)},t.prototype.getAxisLayout=function(t){return T(this._axesLayout[t])},t.prototype.getSlidedAxisExpandWindow=function(t){var e=this._makeLayoutInfo(),n=e.pixelDimIndex,i=e.axisExpandWindow.slice(),r=i[1]-i[0],o=[0,e.axisExpandWidth*(e.axisCount-1)];if(!this.containPoint(t))return{behavior:"none",axisExpandWindow:i};var a,s=t[n]-e.layoutBase-e.axisExpandWindow0Pos,l="slide",u=e.axisCollapseWidth,h=this._model.get("axisExpandSlideTriggerArea"),c=null!=h[0];if(u)c&&u&&s<r*h[0]?(l="jump",a=s-r*h[2]):c&&u&&s>r*(1-h[0])?(l="jump",a=s-r*(1-h[2])):(a=s-r*h[1])>=0&&(a=s-r*(1-h[1]))<=0&&(a=0),(a*=e.axisExpandWidth/u)?zk(a,i,o,"all"):l="none";else{var p=i[1]-i[0];(i=[Wk(0,o[1]*s/p-p/2)])[1]=Gk(o[1],i[0]+p),i[0]=i[1]-p}return{axisExpandWindow:i,behavior:l}},t}();function jk(t,e){return Gk(Wk(t,e[0]),e[1])}function qk(t,e){var n=e.layoutLength/(e.axisCount-1);return{position:n*t,axisNameAvailableWidth:n,axisLabelShow:!0}}function Kk(t,e){var n,i,r=e.layoutLength,o=e.axisExpandWidth,a=e.axisCount,s=e.axisCollapseWidth,l=e.winInnerIndices,u=s,h=!1;return t<l[0]?(n=t*s,i=s):t<=l[1]?(n=e.axisExpandWindow0Pos+t*o-e.axisExpandWindow[0],u=o,h=!0):(n=r-(a-1-t)*s,i=s),{position:n,axisNameAvailableWidth:u,axisLabelShow:h,nameTruncateMaxWidth:i}}var $k={create:function(t,e){var n=[];return t.eachComponent("parallel",(function(i,r){var o=new Zk(i,t,e);o.name="parallel_"+r,o.resize(i,e),i.coordinateSystem=o,o.model=i,n.push(o)})),t.eachSeries((function(t){if("parallel"===t.get("coordinateSystem")){var e=t.getReferringComponents("parallel",Wo).models[0];t.coordinateSystem=e.coordinateSystem}})),n}},Jk=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.activeIntervals=[],n}return n(e,t),e.prototype.getAreaSelectStyle=function(){return ia([["fill","color"],["lineWidth","borderWidth"],["stroke","borderColor"],["width","width"],["opacity","opacity"]])(this.getModel("areaSelectStyle"))},e.prototype.setActiveIntervals=function(t){var e=this.activeIntervals=T(t);if(e)for(var n=e.length-1;n>=0;n--)Qr(e[n])},e.prototype.getActiveState=function(t){var e=this.activeIntervals;if(!e.length)return"normal";if(null==t||isNaN(+t))return"inactive";if(1===e.length){var n=e[0];if(n[0]<=t&&t<=n[1])return"active"}else for(var i=0,r=e.length;i<r;i++)if(e[i][0]<=t&&t<=e[i][1])return"active";return"inactive"},e}(zp);R(Jk,D_);var Qk=!0,tL=Math.min,eL=Math.max,nL=Math.pow,iL="globalPan",rL={w:[0,0],e:[0,1],n:[1,0],s:[1,1]},oL={w:"ew",e:"ew",n:"ns",s:"ns",ne:"nesw",sw:"nesw",nw:"nwse",se:"nwse"},aL={brushStyle:{lineWidth:2,stroke:"rgba(210,219,238,0.3)",fill:"#D2DBEE"},transformable:!0,brushMode:"single",removeOnClick:!1},sL=0,lL=function(t){function e(e){var n=t.call(this)||this;return n._track=[],n._covers=[],n._handlers={},n._zr=e,n.group=new Br,n._uid="brushController_"+sL++,E(NL,(function(t,e){this._handlers[e]=W(t,this)}),n),n}return n(e,t),e.prototype.enableBrush=function(t){return this._brushType&&this._doDisableBrush(),t.brushType&&this._doEnableBrush(t),this},e.prototype._doEnableBrush=function(t){var e=this._zr;this._enableGlobalPan||function(t,e,n){eT(t)[e]=n}(e,iL,this._uid),E(this._handlers,(function(t,n){e.on(n,t)})),this._brushType=t.brushType,this._brushOption=C(T(aL),t,!0)},e.prototype._doDisableBrush=function(){var t=this._zr;!function(t,e,n){var i=eT(t);i[e]===n&&(i[e]=null)}(t,iL,this._uid),E(this._handlers,(function(e,n){t.off(n,e)})),this._brushType=this._brushOption=null},e.prototype.setPanels=function(t){if(t&&t.length){var e=this._panels={};E(t,(function(t){e[t.panelId]=T(t)}))}else this._panels=null;return this},e.prototype.mount=function(t){t=t||{},this._enableGlobalPan=t.enableGlobalPan;var e=this.group;return this._zr.add(e),e.attr({x:t.x||0,y:t.y||0,rotation:t.rotation||0,scaleX:t.scaleX||1,scaleY:t.scaleY||1}),this._transform=e.getLocalTransform(),this},e.prototype.updateCovers=function(t){t=z(t,(function(t){return C(T(aL),t,!0)}));var e=this._covers,n=this._covers=[],i=this,r=this._creatingCover;return new Gm(e,t,(function(t,e){return o(t.__brushOption,e)}),o).add(a).update(a).remove((function(t){e[t]!==r&&i.group.remove(e[t])})).execute(),this;function o(t,e){return(null!=t.id?t.id:"\0-brush-index-"+e)+"-"+t.brushType}function a(o,a){var s=t[o];if(null!=a&&e[a]===r)n[o]=e[a];else{var l=n[o]=null!=a?(e[a].__brushOption=s,e[a]):hL(i,uL(i,s));dL(i,l)}}},e.prototype.unmount=function(){return this.enableBrush(!1),vL(this),this._zr.remove(this.group),this},e.prototype.dispose=function(){this.unmount(),this.off()},e}(jt);function uL(t,e){var n=zL[e.brushType].createCover(t,e);return n.__brushOption=e,pL(n,e),t.group.add(n),n}function hL(t,e){var n=fL(e);return n.endCreating&&(n.endCreating(t,e),pL(e,e.__brushOption)),e}function cL(t,e){var n=e.__brushOption;fL(e).updateCoverShape(t,e,n.range,n)}function pL(t,e){var n=e.z;null==n&&(n=1e4),t.traverse((function(t){t.z=n,t.z2=n}))}function dL(t,e){fL(e).updateCommon(t,e),cL(t,e)}function fL(t){return zL[t.__brushOption.brushType]}function gL(t,e,n){var i,r=t._panels;if(!r)return Qk;var o=t._transform;return E(r,(function(t){t.isTargetByCursor(e,n,o)&&(i=t)})),i}function yL(t,e){var n=t._panels;if(!n)return Qk;var i=e.__brushOption.panelId;return null!=i?n[i]:Qk}function vL(t){var e=t._covers,n=e.length;return E(e,(function(e){t.group.remove(e)}),t),e.length=0,!!n}function mL(t,e){var n=z(t._covers,(function(t){var e=t.__brushOption,n=T(e.range);return{brushType:e.brushType,panelId:e.panelId,range:n}}));t.trigger("brush",{areas:n,isEnd:!!e.isEnd,removeOnClick:!!e.removeOnClick})}function xL(t){var e=t.length-1;return e<0&&(e=0),[t[0],t[e]]}function _L(t,e,n,i){var r=new Br;return r.add(new Ws({name:"main",style:ML(n),silent:!0,draggable:!0,cursor:"move",drift:H(CL,t,e,r,["n","s","w","e"]),ondragend:H(mL,e,{isEnd:!0})})),E(i,(function(n){r.add(new Ws({name:n.join(""),style:{opacity:0},draggable:!0,silent:!0,invisible:!0,drift:H(CL,t,e,r,n),ondragend:H(mL,e,{isEnd:!0})}))})),r}function bL(t,e,n,i){var r=i.brushStyle.lineWidth||0,o=eL(r,6),a=n[0][0],s=n[1][0],l=a-r/2,u=s-r/2,h=n[0][1],c=n[1][1],p=h-o+r/2,d=c-o+r/2,f=h-a,g=c-s,y=f+r,v=g+r;SL(t,e,"main",a,s,f,g),i.transformable&&(SL(t,e,"w",l,u,o,v),SL(t,e,"e",p,u,o,v),SL(t,e,"n",l,u,y,o),SL(t,e,"s",l,d,y,o),SL(t,e,"nw",l,u,o,o),SL(t,e,"ne",p,u,o,o),SL(t,e,"sw",l,d,o,o),SL(t,e,"se",p,d,o,o))}function wL(t,e){var n=e.__brushOption,i=n.transformable,r=e.childAt(0);r.useStyle(ML(n)),r.attr({silent:!i,cursor:i?"move":"default"}),E([["w"],["e"],["n"],["s"],["s","e"],["s","w"],["n","e"],["n","w"]],(function(n){var r=e.childOfName(n.join("")),o=1===n.length?TL(t,n[0]):function(t,e){var n=[TL(t,e[0]),TL(t,e[1])];return("e"===n[0]||"w"===n[0])&&n.reverse(),n.join("")}(t,n);r&&r.attr({silent:!i,invisible:!i,cursor:i?oL[o]+"-resize":null})}))}function SL(t,e,n,i,r,o,a){var s=e.childOfName(n);s&&s.setShape(function(t){var e=tL(t[0][0],t[1][0]),n=tL(t[0][1],t[1][1]),i=eL(t[0][0],t[1][0]),r=eL(t[0][1],t[1][1]);return{x:e,y:n,width:i-e,height:r-n}}(kL(t,e,[[i,r],[i+o,r+a]])))}function ML(t){return k({strokeNoScale:!0},t.brushStyle)}function IL(t,e,n,i){var r=[tL(t,n),tL(e,i)],o=[eL(t,n),eL(e,i)];return[[r[0],o[0]],[r[1],o[1]]]}function TL(t,e){var n=Gh({w:"left",e:"right",n:"top",s:"bottom"}[e],function(t){return Bh(t.group)}(t));return{left:"w",right:"e",top:"n",bottom:"s"}[n]}function CL(t,e,n,i,r,o){var a=n.__brushOption,s=t.toRectRange(a.range),l=AL(e,r,o);E(i,(function(t){var e=rL[t];s[e[0]][e[1]]+=l[e[0]]})),a.range=t.fromRectRange(IL(s[0][0],s[1][0],s[0][1],s[1][1])),dL(e,n),mL(e,{isEnd:!1})}function DL(t,e,n,i){var r=e.__brushOption.range,o=AL(t,n,i);E(r,(function(t){t[0]+=o[0],t[1]+=o[1]})),dL(t,e),mL(t,{isEnd:!1})}function AL(t,e,n){var i=t.group,r=i.transformCoordToLocal(e,n),o=i.transformCoordToLocal(0,0);return[r[0]-o[0],r[1]-o[1]]}function kL(t,e,n){var i=yL(t,e);return i&&i!==Qk?i.clipPath(n,t._transform):T(n)}function LL(t){var e=t.event;e.preventDefault&&e.preventDefault()}function PL(t,e,n){return t.childOfName("main").contain(e,n)}function OL(t,e,n,i){var r,o=t._creatingCover,a=t._creatingPanel,s=t._brushOption;if(t._track.push(n.slice()),function(t){var e=t._track;if(!e.length)return!1;var n=e[e.length-1],i=e[0],r=n[0]-i[0],o=n[1]-i[1];return nL(r*r+o*o,.5)>6}(t)||o){if(a&&!o){"single"===s.brushMode&&vL(t);var l=T(s);l.brushType=RL(l.brushType,a),l.panelId=a===Qk?null:a.panelId,o=t._creatingCover=uL(t,l),t._covers.push(o)}if(o){var u=zL[RL(t._brushType,a)];o.__brushOption.range=u.getCreatingRange(kL(t,o,t._track)),i&&(hL(t,o),u.updateCommon(t,o)),cL(t,o),r={isEnd:i}}}else i&&"single"===s.brushMode&&s.removeOnClick&&gL(t,e,n)&&vL(t)&&(r={isEnd:i,removeOnClick:!0});return r}function RL(t,e){return"auto"===t?e.defaultBrushType:t}var NL={mousedown:function(t){if(this._dragging)EL(this,t);else if(!t.target||!t.target.draggable){LL(t);var e=this.group.transformCoordToLocal(t.offsetX,t.offsetY);this._creatingCover=null,(this._creatingPanel=gL(this,t,e))&&(this._dragging=!0,this._track=[e.slice()])}},mousemove:function(t){var e=t.offsetX,n=t.offsetY,i=this.group.transformCoordToLocal(e,n);if(function(t,e,n){if(t._brushType&&!function(t,e,n){var i=t._zr;return e<0||e>i.getWidth()||n<0||n>i.getHeight()}(t,e.offsetX,e.offsetY)){var i=t._zr,r=t._covers,o=gL(t,e,n);if(!t._dragging)for(var a=0;a<r.length;a++){var s=r[a].__brushOption;if(o&&(o===Qk||s.panelId===o.panelId)&&zL[s.brushType].contain(r[a],n[0],n[1]))return}o&&i.setCursorStyle("crosshair")}}(this,t,i),this._dragging){LL(t);var r=OL(this,t,i,!1);r&&mL(this,r)}},mouseup:function(t){EL(this,t)}};function EL(t,e){if(t._dragging){LL(e);var n=e.offsetX,i=e.offsetY,r=t.group.transformCoordToLocal(n,i),o=OL(t,e,r,!0);t._dragging=!1,t._track=[],t._creatingCover=null,o&&mL(t,o)}}var zL={lineX:VL(0),lineY:VL(1),rect:{createCover:function(t,e){function n(t){return t}return _L({toRectRange:n,fromRectRange:n},t,e,[["w"],["e"],["n"],["s"],["s","e"],["s","w"],["n","e"],["n","w"]])},getCreatingRange:function(t){var e=xL(t);return IL(e[1][0],e[1][1],e[0][0],e[0][1])},updateCoverShape:function(t,e,n,i){bL(t,e,n,i)},updateCommon:wL,contain:PL},polygon:{createCover:function(t,e){var n=new Br;return n.add(new Zu({name:"main",style:ML(e),silent:!0})),n},getCreatingRange:function(t){return t},endCreating:function(t,e){e.remove(e.childAt(0)),e.add(new Xu({name:"main",draggable:!0,drift:H(DL,t,e),ondragend:H(mL,t,{isEnd:!0})}))},updateCoverShape:function(t,e,n,i){e.childAt(0).setShape({points:kL(t,e,n)})},updateCommon:wL,contain:PL}};function VL(t){return{createCover:function(e,n){return _L({toRectRange:function(e){var n=[e,[0,100]];return t&&n.reverse(),n},fromRectRange:function(e){return e[t]}},e,n,[[["w"],["e"]],[["n"],["s"]]][t])},getCreatingRange:function(e){var n=xL(e);return[tL(n[0][t],n[1][t]),eL(n[0][t],n[1][t])]},updateCoverShape:function(e,n,i,r){var o,a=yL(e,n);if(a!==Qk&&a.getLinearBrushOtherExtent)o=a.getLinearBrushOtherExtent(t);else{var s=e._zr;o=[0,[s.getWidth(),s.getHeight()][1-t]]}var l=[i,o];t&&l.reverse(),bL(e,n,l,r)},updateCommon:wL,contain:PL}}function BL(t){return t=WL(t),function(e){return Yh(e,t)}}function FL(t,e){return t=WL(t),function(n){var i=null!=e?e:n,r=i?t.width:t.height,o=i?t.x:t.y;return[o,o+(r||0)]}}function GL(t,e,n){var i=WL(t);return function(t,r){return i.contain(r[0],r[1])&&!hT(t,e,n)}}function WL(t){return ze.create(t)}var HL=["axisLine","axisTickLabel","axisName"],YL=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(e,n){t.prototype.init.apply(this,arguments),(this._brushController=new lL(n.getZr())).on("brush",W(this._onBrush,this))},e.prototype.render=function(t,e,n,i){if(!function(t,e,n){return n&&"axisAreaSelect"===n.type&&e.findComponents({mainType:"parallelAxis",query:n})[0]===t}(t,e,i)){this.axisModel=t,this.api=n,this.group.removeAll();var r=this._axisGroup;if(this._axisGroup=new Br,this.group.add(this._axisGroup),t.get("show")){var o=function(t,e){return e.getComponent("parallel",t.get("parallelIndex"))}(t,e),a=o.coordinateSystem,s=t.getAreaSelectStyle(),l=s.width,u=t.axis.dim,h=A({strokeContainThreshold:l},a.getAxisLayout(u)),c=new dI(t,h);E(HL,c.add,c),this._axisGroup.add(c.getGroup()),this._refreshBrushController(h,s,t,o,l,n),Hh(r,this._axisGroup,t)}}},e.prototype._refreshBrushController=function(t,e,n,i,r,o){var a=n.axis.getExtent(),s=a[1]-a[0],l=Math.min(30,.1*Math.abs(s)),u=ze.create({x:a[0],y:-r/2,width:s,height:r});u.x-=l,u.width+=2*l,this._brushController.mount({enableGlobalPan:!0,rotation:t.rotation,x:t.position[0],y:t.position[1]}).setPanels([{panelId:"pl",clipPath:BL(u),isTargetByCursor:GL(u,o,i),getLinearBrushOtherExtent:FL(u,0)}]).enableBrush({brushType:"lineX",brushStyle:e,removeOnClick:!0}).updateCovers(function(t){var e=t.axis;return z(t.activeIntervals,(function(t){return{brushType:"lineX",panelId:"pl",range:[e.dataToCoord(t[0],!0),e.dataToCoord(t[1],!0)]}}))}(n))},e.prototype._onBrush=function(t){var e=t.areas,n=this.axisModel,i=n.axis,r=z(e,(function(t){return[i.coordToData(t.range[0],!0),i.coordToData(t.range[1],!0)]}));(!n.option.realtime===t.isEnd||t.removeOnClick)&&this.api.dispatchAction({type:"axisAreaSelect",parallelAxisId:n.id,intervals:r})},e.prototype.dispose=function(){this._brushController.dispose()},e.type="parallelAxis",e}(Ag);var XL={type:"axisAreaSelect",event:"axisAreaSelected"};var UL={type:"value",areaSelectStyle:{width:20,borderWidth:1,borderColor:"rgba(160,197,232)",color:"rgba(160,197,232)",opacity:.3},realtime:!0,z:10};function ZL(t){t.registerComponentView(Pk),t.registerComponentModel(Nk),t.registerCoordinateSystem("parallel",$k),t.registerPreprocessor(Lk),t.registerComponentModel(Jk),t.registerComponentView(YL),KM(t,"parallel",Jk,UL),function(t){t.registerAction(XL,(function(t,e){e.eachComponent({mainType:"parallelAxis",query:t},(function(e){e.axis.model.setActiveIntervals(t.intervals)}))})),t.registerAction("parallelAxisExpand",(function(t,e){e.eachComponent({mainType:"parallel",query:t},(function(e){e.setAxisExpand(t)}))}))}(t)}var jL=function(){this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.cpx1=0,this.cpy1=0,this.cpx2=0,this.cpy2=0,this.extent=0},qL=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultShape=function(){return new jL},e.prototype.buildPath=function(t,e){var n=e.extent;t.moveTo(e.x1,e.y1),t.bezierCurveTo(e.cpx1,e.cpy1,e.cpx2,e.cpy2,e.x2,e.y2),"vertical"===e.orient?(t.lineTo(e.x2+n,e.y2),t.bezierCurveTo(e.cpx2+n,e.cpy2,e.cpx1+n,e.cpy1,e.x1+n,e.y1)):(t.lineTo(e.x2,e.y2+n),t.bezierCurveTo(e.cpx2,e.cpy2+n,e.cpx1,e.cpy1+n,e.x1,e.y1+n)),t.closePath()},e.prototype.highlight=function(){Ol(this)},e.prototype.downplay=function(){Rl(this)},e}(ks),KL=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._focusAdjacencyDisabled=!1,n}return n(e,t),e.prototype.render=function(t,e,n){var i=this,r=t.getGraph(),o=this.group,a=t.layoutInfo,s=a.width,l=a.height,u=t.getData(),h=t.getData("edge"),c=t.get("orient");this._model=t,o.removeAll(),o.x=a.x,o.y=a.y,r.eachEdge((function(e){var n=new qL,i=rl(n);i.dataIndex=e.dataIndex,i.seriesIndex=t.seriesIndex,i.dataType="edge";var r,a,u,p,d,f,g,y,v=e.getModel(),m=v.getModel("lineStyle"),x=m.get("curveness"),_=e.node1.getLayout(),b=e.node1.getModel(),w=b.get("localX"),S=b.get("localY"),M=e.node2.getLayout(),I=e.node2.getModel(),T=I.get("localX"),C=I.get("localY"),D=e.getLayout();n.shape.extent=Math.max(1,D.dy),n.shape.orient=c,"vertical"===c?(r=(null!=w?w*s:_.x)+D.sy,a=(null!=S?S*l:_.y)+_.dy,u=(null!=T?T*s:M.x)+D.ty,d=r,f=a*(1-x)+(p=null!=C?C*l:M.y)*x,g=u,y=a*x+p*(1-x)):(r=(null!=w?w*s:_.x)+_.dx,a=(null!=S?S*l:_.y)+D.sy,d=r*(1-x)+(u=null!=T?T*s:M.x)*x,f=a,g=r*x+u*(1-x),y=p=(null!=C?C*l:M.y)+D.ty),n.setShape({x1:r,y1:a,x2:u,y2:p,cpx1:d,cpy1:f,cpx2:g,cpy2:y}),n.useStyle(m.getItemStyle()),$L(n.style,c,e);var A=""+v.get("value"),k=rc(v,"edgeLabel");ic(n,k,{labelFetcher:{getFormattedLabel:function(e,n,i,r,o,a){return t.getFormattedLabel(e,n,"edge",r,ot(o,k.normal&&k.normal.get("formatter"),A),a)}},labelDataIndex:e.dataIndex,defaultText:A}),n.setTextConfig({position:"inside"});var L=v.getModel("emphasis");$l(n,v,"lineStyle",(function(t){var n=t.getItemStyle();return $L(n,c,e),n})),o.add(n),h.setItemGraphicEl(e.dataIndex,n);var P=L.get("focus");Zl(n,"adjacency"===P?e.getAdjacentDataIndices():"trajectory"===P?e.getTrajectoryDataIndices():P,L.get("blurScope"),L.get("disabled"))})),r.eachNode((function(e){var n=e.getLayout(),i=e.getModel(),r=i.get("localX"),a=i.get("localY"),h=i.getModel("emphasis"),c=i.get(["itemStyle","borderRadius"])||0,p=new Ws({shape:{x:null!=r?r*s:n.x,y:null!=a?a*l:n.y,width:n.dx,height:n.dy,r:c},style:i.getModel("itemStyle").getItemStyle(),z2:10});ic(p,rc(i),{labelFetcher:{getFormattedLabel:function(e,n){return t.getFormattedLabel(e,n,"node")}},labelDataIndex:e.dataIndex,defaultText:e.id}),p.disableLabelAnimation=!0,p.setStyle("fill",e.getVisual("color")),p.setStyle("decal",e.getVisual("style").decal),$l(p,i),o.add(p),u.setItemGraphicEl(e.dataIndex,p),rl(p).dataType="node";var d=h.get("focus");Zl(p,"adjacency"===d?e.getAdjacentDataIndices():"trajectory"===d?e.getTrajectoryDataIndices():d,h.get("blurScope"),h.get("disabled"))})),u.eachItemGraphicEl((function(e,r){u.getItemModel(r).get("draggable")&&(e.drift=function(e,o){i._focusAdjacencyDisabled=!0,this.shape.x+=e,this.shape.y+=o,this.dirty(),n.dispatchAction({type:"dragNode",seriesId:t.id,dataIndex:u.getRawIndex(r),localX:this.shape.x/s,localY:this.shape.y/l})},e.ondragend=function(){i._focusAdjacencyDisabled=!1},e.draggable=!0,e.cursor="move")})),!this._data&&t.isAnimationEnabled()&&o.setClipPath(function(t,e,n){var i=new Ws({shape:{x:t.x-10,y:t.y-10,width:0,height:t.height+20}});return mh(i,{shape:{width:t.width+20}},e,n),i}(o.getBoundingRect(),t,(function(){o.removeClipPath()}))),this._data=t.getData()},e.prototype.dispose=function(){},e.type="sankey",e}(Og);function $L(t,e,n){switch(t.fill){case"source":t.fill=n.node1.getVisual("color"),t.decal=n.node1.getVisual("style").decal;break;case"target":t.fill=n.node2.getVisual("color"),t.decal=n.node2.getVisual("style").decal;break;case"gradient":var i=n.node1.getVisual("color"),r=n.node2.getVisual("color");U(i)&&U(r)&&(t.fill=new oh(0,0,+("horizontal"===e),+("vertical"===e),[{color:i,offset:0},{color:r,offset:1}]))}}var JL=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.getInitialData=function(t,e){var n=t.edges||t.links,i=t.data||t.nodes,r=t.levels;this.levelModels=[];for(var o=this.levelModels,a=0;a<r.length;a++)null!=r[a].depth&&r[a].depth>=0&&(o[r[a].depth]=new Cc(r[a],this,e));if(i&&n){var s=uk(i,n,this,!0,(function(t,e){t.wrapMethod("getItemModel",(function(t,e){var n=t.parentModel,i=n.getData().getItemLayout(e);if(i){var r=i.depth,o=n.levelModels[r];o&&(t.parentModel=o)}return t})),e.wrapMethod("getItemModel",(function(t,e){var n=t.parentModel,i=n.getGraph().getEdgeByIndex(e).node1.getLayout();if(i){var r=i.depth,o=n.levelModels[r];o&&(t.parentModel=o)}return t}))}));return s.data}},e.prototype.setNodePosition=function(t,e){var n=(this.option.data||this.option.nodes)[t];n.localX=e[0],n.localY=e[1]},e.prototype.getGraph=function(){return this.getData().graph},e.prototype.getEdgeData=function(){return this.getGraph().edgeData},e.prototype.formatTooltip=function(t,e,n){function i(t){return isNaN(t)||null==t}if("edge"===n){var r=this.getDataParams(t,n),o=r.data,a=r.value;return og("nameValue",{name:o.source+" -- "+o.target,value:a,noValue:i(a)})}var s=this.getGraph().getNodeByIndex(t).getLayout().value,l=this.getDataParams(t,n).data.name;return og("nameValue",{name:null!=l?l+"":null,value:s,noValue:i(s)})},e.prototype.optionUpdated=function(){},e.prototype.getDataParams=function(e,n){var i=t.prototype.getDataParams.call(this,e,n);if(null==i.value&&"node"===n){var r=this.getGraph().getNodeByIndex(e).getLayout().value;i.value=r}return i},e.type="series.sankey",e.defaultOption={z:2,coordinateSystem:"view",left:"5%",top:"5%",right:"20%",bottom:"5%",orient:"horizontal",nodeWidth:20,nodeGap:8,draggable:!0,layoutIterations:32,label:{show:!0,position:"right",fontSize:12},edgeLabel:{show:!1,fontSize:12},levels:[],nodeAlign:"justify",lineStyle:{color:"#314656",opacity:.2,curveness:.5},emphasis:{label:{show:!0},lineStyle:{opacity:.5}},select:{itemStyle:{borderColor:"#212121"}},animationEasing:"linear",animationDuration:1e3},e}(bg);function QL(t,e){t.eachSeriesByType("sankey",(function(t){var n=t.get("nodeWidth"),i=t.get("nodeGap"),r=function(t,e){return kp(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()})}(t,e);t.layoutInfo=r;var o=r.width,a=r.height,s=t.getGraph(),l=s.nodes,u=s.edges;!function(t){E(t,(function(t){var e=uP(t.outEdges,lP),n=uP(t.inEdges,lP),i=t.getValue()||0,r=Math.max(e,n,i);t.setLayout({value:r},!0)}))}(l),function(t,e,n,i,r,o,a,s,l){(function(t,e,n,i,r,o,a){for(var s=[],l=[],u=[],h=[],c=0,p=0;p<e.length;p++)s[p]=1;for(p=0;p<t.length;p++)l[p]=t[p].inEdges.length,0===l[p]&&u.push(t[p]);var d=-1;for(;u.length;){for(var f=0;f<u.length;f++){var g=u[f],y=g.hostGraph.data.getRawDataItem(g.dataIndex),v=null!=y.depth&&y.depth>=0;v&&y.depth>d&&(d=y.depth),g.setLayout({depth:v?y.depth:c},!0),"vertical"===o?g.setLayout({dy:n},!0):g.setLayout({dx:n},!0);for(var m=0;m<g.outEdges.length;m++){var x=g.outEdges[m];s[e.indexOf(x)]=0;var _=x.node2;0==--l[t.indexOf(_)]&&h.indexOf(_)<0&&h.push(_)}}++c,u=h,h=[]}for(p=0;p<s.length;p++)if(1===s[p])throw new Error("Sankey is a DAG, the original data has cycle!");var b=d>c-1?d:c-1;a&&"left"!==a&&function(t,e,n,i){if("right"===e){for(var r=[],o=t,a=0;o.length;){for(var s=0;s<o.length;s++){var l=o[s];l.setLayout({skNodeHeight:a},!0);for(var u=0;u<l.inEdges.length;u++){var h=l.inEdges[u];r.indexOf(h.node1)<0&&r.push(h.node1)}}o=r,r=[],++a}E(t,(function(t){tP(t)||t.setLayout({depth:Math.max(0,i-t.getLayout().skNodeHeight)},!0)}))}else"justify"===e&&function(t,e){E(t,(function(t){tP(t)||t.outEdges.length||t.setLayout({depth:e},!0)}))}(t,i)}(t,a,0,b);var w="vertical"===o?(r-n)/b:(i-n)/b;!function(t,e,n){E(t,(function(t){var i=t.getLayout().depth*e;"vertical"===n?t.setLayout({y:i},!0):t.setLayout({x:i},!0)}))}(t,w,o)})(t,e,n,r,o,s,l),function(t,e,n,i,r,o,a){var s=function(t,e){var n=[],i="vertical"===e?"y":"x",r=Uo(t,(function(t){return t.getLayout()[i]}));return r.keys.sort((function(t,e){return t-e})),E(r.keys,(function(t){n.push(r.buckets.get(t))})),n}(t,a);(function(t,e,n,i,r,o){var a=1/0;E(t,(function(t){var e=t.length,s=0;E(t,(function(t){s+=t.getLayout().value}));var l="vertical"===o?(i-(e-1)*r)/s:(n-(e-1)*r)/s;l<a&&(a=l)})),E(t,(function(t){E(t,(function(t,e){var n=t.getLayout().value*a;"vertical"===o?(t.setLayout({x:e},!0),t.setLayout({dx:n},!0)):(t.setLayout({y:e},!0),t.setLayout({dy:n},!0))}))})),E(e,(function(t){var e=+t.getValue()*a;t.setLayout({dy:e},!0)}))})(s,e,n,i,r,a),eP(s,r,n,i,a);for(var l=1;o>0;o--)nP(s,l*=.99,a),eP(s,r,n,i,a),hP(s,l,a),eP(s,r,n,i,a)}(t,e,o,r,i,a,s),function(t,e){var n="vertical"===e?"x":"y";E(t,(function(t){t.outEdges.sort((function(t,e){return t.node2.getLayout()[n]-e.node2.getLayout()[n]})),t.inEdges.sort((function(t,e){return t.node1.getLayout()[n]-e.node1.getLayout()[n]}))})),E(t,(function(t){var e=0,n=0;E(t.outEdges,(function(t){t.setLayout({sy:e},!0),e+=t.getLayout().dy})),E(t.inEdges,(function(t){t.setLayout({ty:n},!0),n+=t.getLayout().dy}))}))}(t,s)}(l,u,n,i,o,a,0!==B(l,(function(t){return 0===t.getLayout().value})).length?0:t.get("layoutIterations"),t.get("orient"),t.get("nodeAlign"))}))}function tP(t){var e=t.hostGraph.data.getRawDataItem(t.dataIndex);return null!=e.depth&&e.depth>=0}function eP(t,e,n,i,r){var o="vertical"===r?"x":"y";E(t,(function(t){var a,s,l;t.sort((function(t,e){return t.getLayout()[o]-e.getLayout()[o]}));for(var u=0,h=t.length,c="vertical"===r?"dx":"dy",p=0;p<h;p++)(l=u-(s=t[p]).getLayout()[o])>0&&(a=s.getLayout()[o]+l,"vertical"===r?s.setLayout({x:a},!0):s.setLayout({y:a},!0)),u=s.getLayout()[o]+s.getLayout()[c]+e;if((l=u-e-("vertical"===r?i:n))>0){a=s.getLayout()[o]-l,"vertical"===r?s.setLayout({x:a},!0):s.setLayout({y:a},!0),u=a;for(p=h-2;p>=0;--p)(l=(s=t[p]).getLayout()[o]+s.getLayout()[c]+e-u)>0&&(a=s.getLayout()[o]-l,"vertical"===r?s.setLayout({x:a},!0):s.setLayout({y:a},!0)),u=s.getLayout()[o]}}))}function nP(t,e,n){E(t.slice().reverse(),(function(t){E(t,(function(t){if(t.outEdges.length){var i=uP(t.outEdges,iP,n)/uP(t.outEdges,lP);if(isNaN(i)){var r=t.outEdges.length;i=r?uP(t.outEdges,rP,n)/r:0}if("vertical"===n){var o=t.getLayout().x+(i-sP(t,n))*e;t.setLayout({x:o},!0)}else{var a=t.getLayout().y+(i-sP(t,n))*e;t.setLayout({y:a},!0)}}}))}))}function iP(t,e){return sP(t.node2,e)*t.getValue()}function rP(t,e){return sP(t.node2,e)}function oP(t,e){return sP(t.node1,e)*t.getValue()}function aP(t,e){return sP(t.node1,e)}function sP(t,e){return"vertical"===e?t.getLayout().x+t.getLayout().dx/2:t.getLayout().y+t.getLayout().dy/2}function lP(t){return t.getValue()}function uP(t,e,n){for(var i=0,r=t.length,o=-1;++o<r;){var a=+e(t[o],n);isNaN(a)||(i+=a)}return i}function hP(t,e,n){E(t,(function(t){E(t,(function(t){if(t.inEdges.length){var i=uP(t.inEdges,oP,n)/uP(t.inEdges,lP);if(isNaN(i)){var r=t.inEdges.length;i=r?uP(t.inEdges,aP,n)/r:0}if("vertical"===n){var o=t.getLayout().x+(i-sP(t,n))*e;t.setLayout({x:o},!0)}else{var a=t.getLayout().y+(i-sP(t,n))*e;t.setLayout({y:a},!0)}}}))}))}function cP(t){t.eachSeriesByType("sankey",(function(t){var e=t.getGraph(),n=e.nodes,i=e.edges;if(n.length){var r=1/0,o=-1/0;E(n,(function(t){var e=t.getLayout().value;e<r&&(r=e),e>o&&(o=e)})),E(n,(function(e){var n=new kD({type:"color",mappingMethod:"linear",dataExtent:[r,o],visual:t.get("color")}).mapValueToVisual(e.getLayout().value),i=e.getModel().get(["itemStyle","color"]);null!=i?(e.setVisual("color",i),e.setVisual("style",{fill:i})):(e.setVisual("color",n),e.setVisual("style",{fill:n}))}))}i.length&&E(i,(function(t){var e=t.getModel().get("lineStyle");t.setVisual("style",e)}))}))}var pP=function(){function t(){}return t.prototype.getInitialData=function(t,e){var n,i,r=e.getComponent("xAxis",this.get("xAxisIndex")),o=e.getComponent("yAxis",this.get("yAxisIndex")),a=r.get("type"),s=o.get("type");"category"===a?(t.layout="horizontal",n=r.getOrdinalMeta(),i=!0):"category"===s?(t.layout="vertical",n=o.getOrdinalMeta(),i=!0):t.layout=t.layout||"horizontal";var l=["x","y"],u="horizontal"===t.layout?0:1,h=this._baseAxisDim=l[u],c=l[1-u],p=[r,o],d=p[u].get("type"),f=p[1-u].get("type"),g=t.data;if(g&&i){var y=[];E(g,(function(t,e){var n;Y(t)?(n=t.slice(),t.unshift(e)):Y(t.value)?((n=A({},t)).value=n.value.slice(),t.value.unshift(e)):n=t,y.push(n)})),t.data=y}var v=this.defaultValueDimensions,m=[{name:h,type:Ym(d),ordinalMeta:n,otherDims:{tooltip:!1,itemName:0},dimsDef:["base"]},{name:c,type:Ym(f),dimsDef:v.slice()}];return RM(this,{coordDimensions:m,dimensionsCount:v.length+1,encodeDefaulter:H(td,m,this)})},t.prototype.getBaseAxis=function(){var t=this._baseAxisDim;return this.ecModel.getComponent(t+"Axis",this.get(t+"AxisIndex")).axis},t}(),dP=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.defaultValueDimensions=[{name:"min",defaultTooltip:!0},{name:"Q1",defaultTooltip:!0},{name:"median",defaultTooltip:!0},{name:"Q3",defaultTooltip:!0},{name:"max",defaultTooltip:!0}],n.visualDrawType="stroke",n}return n(e,t),e.type="series.boxplot",e.dependencies=["xAxis","yAxis","grid"],e.defaultOption={z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,layout:null,boxWidth:[7,50],itemStyle:{color:"#fff",borderWidth:1},emphasis:{scale:!0,itemStyle:{borderWidth:2,shadowBlur:5,shadowOffsetX:1,shadowOffsetY:1,shadowColor:"rgba(0,0,0,0.2)"}},animationDuration:800},e}(bg);R(dP,pP,!0);var fP=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i=t.getData(),r=this.group,o=this._data;this._data||r.removeAll();var a="horizontal"===t.get("layout")?1:0;i.diff(o).add((function(t){if(i.hasValue(t)){var e=vP(i.getItemLayout(t),i,t,a,!0);i.setItemGraphicEl(t,e),r.add(e)}})).update((function(t,e){var n=o.getItemGraphicEl(e);if(i.hasValue(t)){var s=i.getItemLayout(t);n?(Sh(n),mP(s,n,i,t)):n=vP(s,i,t,a),r.add(n),i.setItemGraphicEl(t,n)}else r.remove(n)})).remove((function(t){var e=o.getItemGraphicEl(t);e&&r.remove(e)})).execute(),this._data=i},e.prototype.remove=function(t){var e=this.group,n=this._data;this._data=null,n&&n.eachItemGraphicEl((function(t){t&&e.remove(t)}))},e.type="boxplot",e}(Og),gP=function(){},yP=function(t){function e(e){var n=t.call(this,e)||this;return n.type="boxplotBoxPath",n}return n(e,t),e.prototype.getDefaultShape=function(){return new gP},e.prototype.buildPath=function(t,e){var n=e.points,i=0;for(t.moveTo(n[i][0],n[i][1]),i++;i<4;i++)t.lineTo(n[i][0],n[i][1]);for(t.closePath();i<n.length;i++)t.moveTo(n[i][0],n[i][1]),i++,t.lineTo(n[i][0],n[i][1])},e}(ks);function vP(t,e,n,i,r){var o=t.ends,a=new yP({shape:{points:r?xP(o,i,t):o}});return mP(t,a,e,n,r),a}function mP(t,e,n,i,r){var o=n.hostModel;(0,Qh[r?"initProps":"updateProps"])(e,{shape:{points:t.ends}},o,i),e.useStyle(n.getItemVisual(i,"style")),e.style.strokeNoScale=!0,e.z2=100;var a=n.getItemModel(i),s=a.getModel("emphasis");$l(e,a),Zl(e,s.get("focus"),s.get("blurScope"),s.get("disabled"))}function xP(t,e,n){return z(t,(function(t){return(t=t.slice())[e]=n.initBaseline,t}))}var _P=E;function bP(t){var e=function(t){var e=[],n=[];return t.eachSeriesByType("boxplot",(function(t){var i=t.getBaseAxis(),r=P(n,i);r<0&&(r=n.length,n[r]=i,e[r]={axis:i,seriesModels:[]}),e[r].seriesModels.push(t)})),e}(t);_P(e,(function(t){var e=t.seriesModels;e.length&&(!function(t){var e,n=t.axis,i=t.seriesModels,r=i.length,o=t.boxWidthList=[],a=t.boxOffsetList=[],s=[];if("category"===n.type)e=n.getBandWidth();else{var l=0;_P(i,(function(t){l=Math.max(l,t.getData().count())}));var u=n.getExtent();e=Math.abs(u[1]-u[0])/l}_P(i,(function(t){var n=t.get("boxWidth");Y(n)||(n=[n,n]),s.push([$r(n[0],e)||0,$r(n[1],e)||0])}));var h=.8*e-2,c=h/r*.3,p=(h-c*(r-1))/r,d=p/2-h/2;_P(i,(function(t,e){a.push(d),d+=c+p,o.push(Math.min(Math.max(p,s[e][0]),s[e][1]))}))}(t),_P(e,(function(e,n){!function(t,e,n){var i=t.coordinateSystem,r=t.getData(),o=n/2,a="horizontal"===t.get("layout")?0:1,s=1-a,l=["x","y"],u=r.mapDimension(l[a]),h=r.mapDimensionsAll(l[s]);if(null==u||h.length<5)return;for(var c=0;c<r.count();c++){var p=r.get(u,c),d=x(p,h[2],c),f=x(p,h[0],c),g=x(p,h[1],c),y=x(p,h[3],c),v=x(p,h[4],c),m=[];_(m,g,!1),_(m,y,!0),m.push(f,g,v,y),b(m,f),b(m,v),b(m,d),r.setItemLayout(c,{initBaseline:d[s],ends:m})}function x(t,n,o){var l,u=r.get(n,o),h=[];return h[a]=t,h[s]=u,isNaN(t)||isNaN(u)?l=[NaN,NaN]:(l=i.dataToPoint(h))[a]+=e,l}function _(t,e,n){var i=e.slice(),r=e.slice();i[a]+=o,r[a]-=o,n?t.push(i,r):t.push(r,i)}function b(t,e){var n=e.slice(),i=e.slice();n[a]-=o,i[a]+=o,t.push(n,i)}}(e,t.boxOffsetList[n],t.boxWidthList[n])})))}))}var wP={type:"echarts:boxplot",transform:function(t){var e=t.upstream;if(e.sourceFormat!==Hp){var n="";0,wo(n)}var i=function(t,e){for(var n=[],i=[],r=(e=e||{}).boundIQR,o="none"===r||0===r,a=0;a<t.length;a++){var s=Qr(t[a].slice()),l=fo(s,.25),u=fo(s,.5),h=fo(s,.75),c=s[0],p=s[s.length-1],d=(null==r?1.5:r)*(h-l),f=o?c:Math.max(c,l-d),g=o?p:Math.min(p,h+d),y=e.itemNameFormatter,v=X(y)?y({value:a}):U(y)?y.replace("{value}",a+""):a+"";n.push([v,f,l,u,h,g]);for(var m=0;m<s.length;m++){var x=s[m];if(x<f||x>g){var _=[v,x];i.push(_)}}}return{boxData:n,outliers:i}}(e.getRawData(),t.config);return[{dimensions:["ItemName","Low","Q1","Q2","Q3","High"],data:i.boxData},{data:i.outliers}]}};var SP=["color","borderColor"],MP=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){this.group.removeClipPath(),this._progressiveEls=null,this._updateDrawMode(t),this._isLargeDraw?this._renderLarge(t):this._renderNormal(t)},e.prototype.incrementalPrepareRender=function(t,e,n){this._clear(),this._updateDrawMode(t)},e.prototype.incrementalRender=function(t,e,n,i){this._progressiveEls=[],this._isLargeDraw?this._incrementalRenderLarge(t,e):this._incrementalRenderNormal(t,e)},e.prototype.eachRendered=function(t){Jh(this._progressiveEls||this.group,t)},e.prototype._updateDrawMode=function(t){var e=t.pipelineContext.large;null!=this._isLargeDraw&&e===this._isLargeDraw||(this._isLargeDraw=e,this._clear())},e.prototype._renderNormal=function(t){var e=t.getData(),n=this._data,i=this.group,r=e.getLayout("isSimpleBox"),o=t.get("clip",!0),a=t.coordinateSystem,s=a.getArea&&a.getArea();this._data||i.removeAll(),e.diff(n).add((function(n){if(e.hasValue(n)){var a=e.getItemLayout(n);if(o&&DP(s,a))return;var l=CP(a,n,!0);mh(l,{shape:{points:a.ends}},t,n),AP(l,e,n,r),i.add(l),e.setItemGraphicEl(n,l)}})).update((function(a,l){var u=n.getItemGraphicEl(l);if(e.hasValue(a)){var h=e.getItemLayout(a);o&&DP(s,h)?i.remove(u):(u?(vh(u,{shape:{points:h.ends}},t,a),Sh(u)):u=CP(h),AP(u,e,a,r),i.add(u),e.setItemGraphicEl(a,u))}else i.remove(u)})).remove((function(t){var e=n.getItemGraphicEl(t);e&&i.remove(e)})).execute(),this._data=e},e.prototype._renderLarge=function(t){this._clear(),OP(t,this.group);var e=t.get("clip",!0)?PS(t.coordinateSystem,!1,t):null;e?this.group.setClipPath(e):this.group.removeClipPath()},e.prototype._incrementalRenderNormal=function(t,e){for(var n,i=e.getData(),r=i.getLayout("isSimpleBox");null!=(n=t.next());){var o=CP(i.getItemLayout(n));AP(o,i,n,r),o.incremental=!0,this.group.add(o),this._progressiveEls.push(o)}},e.prototype._incrementalRenderLarge=function(t,e){OP(e,this.group,this._progressiveEls,!0)},e.prototype.remove=function(t){this._clear()},e.prototype._clear=function(){this.group.removeAll(),this._data=null},e.type="candlestick",e}(Og),IP=function(){},TP=function(t){function e(e){var n=t.call(this,e)||this;return n.type="normalCandlestickBox",n}return n(e,t),e.prototype.getDefaultShape=function(){return new IP},e.prototype.buildPath=function(t,e){var n=e.points;this.__simpleBox?(t.moveTo(n[4][0],n[4][1]),t.lineTo(n[6][0],n[6][1])):(t.moveTo(n[0][0],n[0][1]),t.lineTo(n[1][0],n[1][1]),t.lineTo(n[2][0],n[2][1]),t.lineTo(n[3][0],n[3][1]),t.closePath(),t.moveTo(n[4][0],n[4][1]),t.lineTo(n[5][0],n[5][1]),t.moveTo(n[6][0],n[6][1]),t.lineTo(n[7][0],n[7][1]))},e}(ks);function CP(t,e,n){var i=t.ends;return new TP({shape:{points:n?kP(i,t):i},z2:100})}function DP(t,e){for(var n=!0,i=0;i<e.ends.length;i++)if(t.contain(e.ends[i][0],e.ends[i][1])){n=!1;break}return n}function AP(t,e,n,i){var r=e.getItemModel(n);t.useStyle(e.getItemVisual(n,"style")),t.style.strokeNoScale=!0,t.__simpleBox=i,$l(t,r)}function kP(t,e){return z(t,(function(t){return(t=t.slice())[1]=e.initBaseline,t}))}var LP=function(){},PP=function(t){function e(e){var n=t.call(this,e)||this;return n.type="largeCandlestickBox",n}return n(e,t),e.prototype.getDefaultShape=function(){return new LP},e.prototype.buildPath=function(t,e){for(var n=e.points,i=0;i<n.length;)if(this.__sign===n[i++]){var r=n[i++];t.moveTo(r,n[i++]),t.lineTo(r,n[i++])}else i+=3},e}(ks);function OP(t,e,n,i){var r=t.getData().getLayout("largePoints"),o=new PP({shape:{points:r},__sign:1,ignoreCoarsePointer:!0});e.add(o);var a=new PP({shape:{points:r},__sign:-1,ignoreCoarsePointer:!0});e.add(a);var s=new PP({shape:{points:r},__sign:0,ignoreCoarsePointer:!0});e.add(s),RP(1,o,t),RP(-1,a,t),RP(0,s,t),i&&(o.incremental=!0,a.incremental=!0),n&&n.push(o,a)}function RP(t,e,n,i){var r=n.get(["itemStyle",t>0?"borderColor":"borderColor0"])||n.get(["itemStyle",t>0?"color":"color0"]);0===t&&(r=n.get(["itemStyle","borderColorDoji"]));var o=n.getModel("itemStyle").getItemStyle(SP);e.useStyle(o),e.style.fill=null,e.style.stroke=r}var NP=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.defaultValueDimensions=[{name:"open",defaultTooltip:!0},{name:"close",defaultTooltip:!0},{name:"lowest",defaultTooltip:!0},{name:"highest",defaultTooltip:!0}],n}return n(e,t),e.prototype.getShadowDim=function(){return"open"},e.prototype.brushSelector=function(t,e,n){var i=e.getItemLayout(t);return i&&n.rect(i.brushRect)},e.type="series.candlestick",e.dependencies=["xAxis","yAxis","grid"],e.defaultOption={z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,layout:null,clip:!0,itemStyle:{color:"#eb5454",color0:"#47b262",borderColor:"#eb5454",borderColor0:"#47b262",borderColorDoji:null,borderWidth:1},emphasis:{scale:!0,itemStyle:{borderWidth:2}},barMaxWidth:null,barMinWidth:null,barWidth:null,large:!0,largeThreshold:600,progressive:3e3,progressiveThreshold:1e4,progressiveChunkMode:"mod",animationEasing:"linear",animationDuration:300},e}(bg);function EP(t){t&&Y(t.series)&&E(t.series,(function(t){q(t)&&"k"===t.type&&(t.type="candlestick")}))}R(NP,pP,!0);var zP=["itemStyle","borderColor"],VP=["itemStyle","borderColor0"],BP=["itemStyle","borderColorDoji"],FP=["itemStyle","color"],GP=["itemStyle","color0"],WP={seriesType:"candlestick",plan:kg(),performRawSeries:!0,reset:function(t,e){function n(t,e){return e.get(t>0?FP:GP)}function i(t,e){return e.get(0===t?BP:t>0?zP:VP)}if(!e.isSeriesFiltered(t))return!t.pipelineContext.large&&{progress:function(t,e){for(var r;null!=(r=t.next());){var o=e.getItemModel(r),a=e.getItemLayout(r).sign,s=o.getItemStyle();s.fill=n(a,o),s.stroke=i(a,o)||s.fill,A(e.ensureUniqueItemVisual(r,"style"),s)}}}}},HP={seriesType:"candlestick",plan:kg(),reset:function(t){var e=t.coordinateSystem,n=t.getData(),i=function(t,e){var n,i=t.getBaseAxis(),r="category"===i.type?i.getBandWidth():(n=i.getExtent(),Math.abs(n[1]-n[0])/e.count()),o=$r(rt(t.get("barMaxWidth"),r),r),a=$r(rt(t.get("barMinWidth"),1),r),s=t.get("barWidth");return null!=s?$r(s,r):Math.max(Math.min(r/2,o),a)}(t,n),r=["x","y"],o=n.getDimensionIndex(n.mapDimension(r[0])),a=z(n.mapDimensionsAll(r[1]),n.getDimensionIndex,n),s=a[0],l=a[1],u=a[2],h=a[3];if(n.setLayout({candleWidth:i,isSimpleBox:i<=1.3}),!(o<0||a.length<4))return{progress:t.pipelineContext.large?function(n,i){var r,a,c=Bx(4*n.count),p=0,d=[],f=[],g=i.getStore(),y=!!t.get(["itemStyle","borderColorDoji"]);for(;null!=(a=n.next());){var v=g.get(o,a),m=g.get(s,a),x=g.get(l,a),_=g.get(u,a),b=g.get(h,a);isNaN(v)||isNaN(_)||isNaN(b)?(c[p++]=NaN,p+=3):(c[p++]=YP(g,a,m,x,l,y),d[0]=v,d[1]=_,r=e.dataToPoint(d,null,f),c[p++]=r?r[0]:NaN,c[p++]=r?r[1]:NaN,d[1]=b,r=e.dataToPoint(d,null,f),c[p++]=r?r[1]:NaN)}i.setLayout("largePoints",c)}:function(t,n){var r,a=n.getStore();for(;null!=(r=t.next());){var c=a.get(o,r),p=a.get(s,r),d=a.get(l,r),f=a.get(u,r),g=a.get(h,r),y=Math.min(p,d),v=Math.max(p,d),m=M(y,c),x=M(v,c),_=M(f,c),b=M(g,c),w=[];I(w,x,0),I(w,m,1),w.push(C(b),C(x),C(_),C(m));var S=!!n.getItemModel(r).get(["itemStyle","borderColorDoji"]);n.setItemLayout(r,{sign:YP(a,r,p,d,l,S),initBaseline:p>d?x[1]:m[1],ends:w,brushRect:T(f,g,c)})}function M(t,n){var i=[];return i[0]=n,i[1]=t,isNaN(n)||isNaN(t)?[NaN,NaN]:e.dataToPoint(i)}function I(t,e,n){var r=e.slice(),o=e.slice();r[0]=Vh(r[0]+i/2,1,!1),o[0]=Vh(o[0]-i/2,1,!0),n?t.push(r,o):t.push(o,r)}function T(t,e,n){var r=M(t,n),o=M(e,n);return r[0]-=i/2,o[0]-=i/2,{x:r[0],y:r[1],width:i,height:o[1]-r[1]}}function C(t){return t[0]=Vh(t[0],1),t}}}}};function YP(t,e,n,i,r,o){return n>i?-1:n<i?1:o?0:e>0?t.get(r,e-1)<=i?1:-1:1}function XP(t,e){var n=e.rippleEffectColor||e.color;t.eachChild((function(t){t.attr({z:e.z,zlevel:e.zlevel,style:{stroke:"stroke"===e.brushType?n:null,fill:"fill"===e.brushType?n:null}})}))}var UP=function(t){function e(e,n){var i=t.call(this)||this,r=new fS(e,n),o=new Br;return i.add(r),i.add(o),i.updateData(e,n),i}return n(e,t),e.prototype.stopEffectAnimation=function(){this.childAt(1).removeAll()},e.prototype.startEffectAnimation=function(t){for(var e=t.symbolType,n=t.color,i=t.rippleNumber,r=this.childAt(1),o=0;o<i;o++){var a=Xy(e,-1,-1,2,2,n);a.attr({style:{strokeNoScale:!0},z2:99,silent:!0,scaleX:.5,scaleY:.5});var s=-o/i*t.period+t.effectOffset;a.animate("",!0).when(t.period,{scaleX:t.rippleScale/2,scaleY:t.rippleScale/2}).delay(s).start(),a.animateStyle(!0).when(t.period,{opacity:0}).delay(s).start(),r.add(a)}XP(r,t)},e.prototype.updateEffectAnimation=function(t){for(var e=this._effectCfg,n=this.childAt(1),i=["symbolType","period","rippleScale","rippleNumber"],r=0;r<i.length;r++){var o=i[r];if(e[o]!==t[o])return this.stopEffectAnimation(),void this.startEffectAnimation(t)}XP(n,t)},e.prototype.highlight=function(){Ol(this)},e.prototype.downplay=function(){Rl(this)},e.prototype.getSymbolType=function(){var t=this.childAt(0);return t&&t.getSymbolType()},e.prototype.updateData=function(t,e){var n=this,i=t.hostModel;this.childAt(0).updateData(t,e);var r=this.childAt(1),o=t.getItemModel(e),a=t.getItemVisual(e,"symbol"),s=Uy(t.getItemVisual(e,"symbolSize")),l=t.getItemVisual(e,"style"),u=l&&l.fill,h=o.getModel("emphasis");r.setScale(s),r.traverse((function(t){t.setStyle("fill",u)}));var c=Zy(t.getItemVisual(e,"symbolOffset"),s);c&&(r.x=c[0],r.y=c[1]);var p=t.getItemVisual(e,"symbolRotate");r.rotation=(p||0)*Math.PI/180||0;var d={};d.showEffectOn=i.get("showEffectOn"),d.rippleScale=o.get(["rippleEffect","scale"]),d.brushType=o.get(["rippleEffect","brushType"]),d.period=1e3*o.get(["rippleEffect","period"]),d.effectOffset=e/t.count(),d.z=i.getShallow("z")||0,d.zlevel=i.getShallow("zlevel")||0,d.symbolType=a,d.color=u,d.rippleEffectColor=o.get(["rippleEffect","color"]),d.rippleNumber=o.get(["rippleEffect","number"]),"render"===d.showEffectOn?(this._effectCfg?this.updateEffectAnimation(d):this.startEffectAnimation(d),this._effectCfg=d):(this._effectCfg=null,this.stopEffectAnimation(),this.onHoverStateChange=function(t){"emphasis"===t?"render"!==d.showEffectOn&&n.startEffectAnimation(d):"normal"===t&&"render"!==d.showEffectOn&&n.stopEffectAnimation()}),this._effectCfg=d,Zl(this,h.get("focus"),h.get("blurScope"),h.get("disabled"))},e.prototype.fadeOut=function(t){t&&t()},e}(Br),ZP=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(){this._symbolDraw=new xS(UP)},e.prototype.render=function(t,e,n){var i=t.getData(),r=this._symbolDraw;r.updateData(i,{clipShape:this._getClipShape(t)}),this.group.add(r.group)},e.prototype._getClipShape=function(t){var e=t.coordinateSystem,n=e&&e.getArea&&e.getArea();return t.get("clip",!0)?n:null},e.prototype.updateTransform=function(t,e,n){var i=t.getData();this.group.dirty();var r=XS("").reset(t,e,n);r.progress&&r.progress({start:0,end:i.count(),count:i.count()},i),this._symbolDraw.updateLayout()},e.prototype._updateGroupTransform=function(t){var e=t.coordinateSystem;e&&e.getRoamTransform&&(this.group.transform=Te(e.getRoamTransform()),this.group.decomposeTransform())},e.prototype.remove=function(t,e){this._symbolDraw&&this._symbolDraw.remove(!0)},e.type="effectScatter",e}(Og),jP=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.hasSymbolVisual=!0,n}return n(e,t),e.prototype.getInitialData=function(t,e){return _x(null,this,{useEncodeDefaulter:!0})},e.prototype.brushSelector=function(t,e,n){return n.point(e.getItemLayout(t))},e.type="series.effectScatter",e.dependencies=["grid","polar"],e.defaultOption={coordinateSystem:"cartesian2d",z:2,legendHoverLink:!0,effectType:"ripple",progressive:0,showEffectOn:"render",clip:!0,rippleEffect:{period:4,scale:2.5,brushType:"fill",number:3},universalTransition:{divideShape:"clone"},symbolSize:10},e}(bg);var qP=function(t){function e(e,n,i){var r=t.call(this)||this;return r.add(r.createLine(e,n,i)),r._updateEffectSymbol(e,n),r}return n(e,t),e.prototype.createLine=function(t,e,n){return new HA(t,e,n)},e.prototype._updateEffectSymbol=function(t,e){var n=t.getItemModel(e).getModel("effect"),i=n.get("symbolSize"),r=n.get("symbol");Y(i)||(i=[i,i]);var o=t.getItemVisual(e,"style"),a=n.get("color")||o&&o.stroke,s=this.childAt(1);this._symbolType!==r&&(this.remove(s),(s=Xy(r,-.5,-.5,1,1,a)).z2=100,s.culling=!0,this.add(s)),s&&(s.setStyle("shadowColor",a),s.setStyle(n.getItemStyle(["color"])),s.scaleX=i[0],s.scaleY=i[1],s.setColor(a),this._symbolType=r,this._symbolScale=i,this._updateEffectAnimation(t,n,e))},e.prototype._updateEffectAnimation=function(t,e,n){var i=this.childAt(1);if(i){var r=t.getItemLayout(n),o=1e3*e.get("period"),a=e.get("loop"),s=e.get("roundTrip"),l=e.get("constantSpeed"),u=it(e.get("delay"),(function(e){return e/t.count()*o/3}));if(i.ignore=!0,this._updateAnimationPoints(i,r),l>0&&(o=this._getLineLength(i)/l*1e3),o!==this._period||a!==this._loop||s!==this._roundTrip){i.stopAnimation();var h=void 0;h=X(u)?u(n):u,i.__t>0&&(h=-o*i.__t),this._animateSymbol(i,o,h,a,s)}this._period=o,this._loop=a,this._roundTrip=s}},e.prototype._animateSymbol=function(t,e,n,i,r){if(e>0){t.__t=0;var o=this,a=t.animate("",i).when(r?2*e:e,{__t:r?2:1}).delay(n).during((function(){o._updateSymbolPosition(t)}));i||a.done((function(){o.remove(t)})),a.start()}},e.prototype._getLineLength=function(t){return Vt(t.__p1,t.__cp1)+Vt(t.__cp1,t.__p2)},e.prototype._updateAnimationPoints=function(t,e){t.__p1=e[0],t.__p2=e[1],t.__cp1=e[2]||[(e[0][0]+e[1][0])/2,(e[0][1]+e[1][1])/2]},e.prototype.updateData=function(t,e,n){this.childAt(0).updateData(t,e,n),this._updateEffectSymbol(t,e)},e.prototype._updateSymbolPosition=function(t){var e=t.__p1,n=t.__p2,i=t.__cp1,r=t.__t<1?t.__t:2-t.__t,o=[t.x,t.y],a=o.slice(),s=In,l=Tn;o[0]=s(e[0],i[0],n[0],r),o[1]=s(e[1],i[1],n[1],r);var u=t.__t<1?l(e[0],i[0],n[0],r):l(n[0],i[0],e[0],1-r),h=t.__t<1?l(e[1],i[1],n[1],r):l(n[1],i[1],e[1],1-r);t.rotation=-Math.atan2(h,u)-Math.PI/2,"line"!==this._symbolType&&"rect"!==this._symbolType&&"roundRect"!==this._symbolType||(void 0!==t.__lastT&&t.__lastT<t.__t?(t.scaleY=1.05*Vt(a,o),1===r&&(o[0]=a[0]+(o[0]-a[0])/2,o[1]=a[1]+(o[1]-a[1])/2)):1===t.__lastT?t.scaleY=2*Vt(e,o):t.scaleY=this._symbolScale[1]),t.__lastT=t.__t,t.ignore=!1,t.x=o[0],t.y=o[1]},e.prototype.updateLayout=function(t,e){this.childAt(0).updateLayout(t,e);var n=t.getItemModel(e).getModel("effect");this._updateEffectAnimation(t,n,e)},e}(Br),KP=function(t){function e(e,n,i){var r=t.call(this)||this;return r._createPolyline(e,n,i),r}return n(e,t),e.prototype._createPolyline=function(t,e,n){var i=t.getItemLayout(e),r=new Zu({shape:{points:i}});this.add(r),this._updateCommonStl(t,e,n)},e.prototype.updateData=function(t,e,n){var i=t.hostModel;vh(this.childAt(0),{shape:{points:t.getItemLayout(e)}},i,e),this._updateCommonStl(t,e,n)},e.prototype._updateCommonStl=function(t,e,n){var i=this.childAt(0),r=t.getItemModel(e),o=n&&n.emphasisLineStyle,a=n&&n.focus,s=n&&n.blurScope,l=n&&n.emphasisDisabled;if(!n||t.hasItemOption){var u=r.getModel("emphasis");o=u.getModel("lineStyle").getLineStyle(),l=u.get("disabled"),a=u.get("focus"),s=u.get("blurScope")}i.useStyle(t.getItemVisual(e,"style")),i.style.fill=null,i.style.strokeNoScale=!0,i.ensureState("emphasis").style=o,Zl(this,a,s,l)},e.prototype.updateLayout=function(t,e){this.childAt(0).setShape("points",t.getItemLayout(e))},e}(Br),$P=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._lastFrame=0,e._lastFramePercent=0,e}return n(e,t),e.prototype.createLine=function(t,e,n){return new KP(t,e,n)},e.prototype._updateAnimationPoints=function(t,e){this._points=e;for(var n=[0],i=0,r=1;r<e.length;r++){var o=e[r-1],a=e[r];i+=Vt(o,a),n.push(i)}if(0!==i){for(r=0;r<n.length;r++)n[r]/=i;this._offsets=n,this._length=i}else this._length=0},e.prototype._getLineLength=function(){return this._length},e.prototype._updateSymbolPosition=function(t){var e=t.__t<1?t.__t:2-t.__t,n=this._points,i=this._offsets,r=n.length;if(i){var o,a=this._lastFrame;if(e<this._lastFramePercent){for(o=Math.min(a+1,r-1);o>=0&&!(i[o]<=e);o--);o=Math.min(o,r-2)}else{for(o=a;o<r&&!(i[o]>e);o++);o=Math.min(o-1,r-2)}var s=(e-i[o])/(i[o+1]-i[o]),l=n[o],u=n[o+1];t.x=l[0]*(1-s)+s*u[0],t.y=l[1]*(1-s)+s*u[1];var h=t.__t<1?u[0]-l[0]:l[0]-u[0],c=t.__t<1?u[1]-l[1]:l[1]-u[1];t.rotation=-Math.atan2(c,h)-Math.PI/2,this._lastFrame=o,this._lastFramePercent=e,t.ignore=!1}},e}(qP),JP=function(){this.polyline=!1,this.curveness=0,this.segs=[]},QP=function(t){function e(e){var n=t.call(this,e)||this;return n._off=0,n.hoverDataIdx=-1,n}return n(e,t),e.prototype.reset=function(){this.notClear=!1,this._off=0},e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new JP},e.prototype.buildPath=function(t,e){var n,i=e.segs,r=e.curveness;if(e.polyline)for(n=this._off;n<i.length;){var o=i[n++];if(o>0){t.moveTo(i[n++],i[n++]);for(var a=1;a<o;a++)t.lineTo(i[n++],i[n++])}}else for(n=this._off;n<i.length;){var s=i[n++],l=i[n++],u=i[n++],h=i[n++];if(t.moveTo(s,l),r>0){var c=(s+u)/2-(l-h)*r,p=(l+h)/2-(u-s)*r;t.quadraticCurveTo(c,p,u,h)}else t.lineTo(u,h)}this.incremental&&(this._off=n,this.notClear=!0)},e.prototype.findDataIndex=function(t,e){var n=this.shape,i=n.segs,r=n.curveness,o=this.style.lineWidth;if(n.polyline)for(var a=0,s=0;s<i.length;){var l=i[s++];if(l>0)for(var u=i[s++],h=i[s++],c=1;c<l;c++){if(cs(u,h,p=i[s++],d=i[s++],o,t,e))return a}a++}else for(a=0,s=0;s<i.length;){u=i[s++],h=i[s++];var p=i[s++],d=i[s++];if(r>0){if(ds(u,h,(u+p)/2-(h-d)*r,(h+d)/2-(p-u)*r,p,d,o,t,e))return a}else if(cs(u,h,p,d,o,t,e))return a;a++}return-1},e.prototype.contain=function(t,e){var n=this.transformCoordToLocal(t,e),i=this.getBoundingRect();return t=n[0],e=n[1],i.contain(t,e)?(this.hoverDataIdx=this.findDataIndex(t,e))>=0:(this.hoverDataIdx=-1,!1)},e.prototype.getBoundingRect=function(){var t=this._rect;if(!t){for(var e=this.shape.segs,n=1/0,i=1/0,r=-1/0,o=-1/0,a=0;a<e.length;){var s=e[a++],l=e[a++];n=Math.min(s,n),r=Math.max(s,r),i=Math.min(l,i),o=Math.max(l,o)}t=this._rect=new ze(n,i,r,o)}return t},e}(ks),tO=function(){function t(){this.group=new Br}return t.prototype.updateData=function(t){this._clear();var e=this._create();e.setShape({segs:t.getLayout("linesPoints")}),this._setCommon(e,t)},t.prototype.incrementalPrepareUpdate=function(t){this.group.removeAll(),this._clear()},t.prototype.incrementalUpdate=function(t,e){var n=this._newAdded[0],i=e.getLayout("linesPoints"),r=n&&n.shape.segs;if(r&&r.length<2e4){var o=r.length,a=new Float32Array(o+i.length);a.set(r),a.set(i,o),n.setShape({segs:a})}else{this._newAdded=[];var s=this._create();s.incremental=!0,s.setShape({segs:i}),this._setCommon(s,e),s.__startIndex=t.start}},t.prototype.remove=function(){this._clear()},t.prototype.eachRendered=function(t){this._newAdded[0]&&t(this._newAdded[0])},t.prototype._create=function(){var t=new QP({cursor:"default",ignoreCoarsePointer:!0});return this._newAdded.push(t),this.group.add(t),t},t.prototype._setCommon=function(t,e,n){var i=e.hostModel;t.setShape({polyline:i.get("polyline"),curveness:i.get(["lineStyle","curveness"])}),t.useStyle(i.getModel("lineStyle").getLineStyle()),t.style.strokeNoScale=!0;var r=e.getVisual("style");r&&r.stroke&&t.setStyle("stroke",r.stroke),t.setStyle("fill",null);var o=rl(t);o.seriesIndex=i.seriesIndex,t.on("mousemove",(function(e){o.dataIndex=null;var n=t.hoverDataIdx;n>0&&(o.dataIndex=n+t.__startIndex)}))},t.prototype._clear=function(){this._newAdded=[],this.group.removeAll()},t}(),eO={seriesType:"lines",plan:kg(),reset:function(t){var e=t.coordinateSystem;if(e){var n=t.get("polyline"),i=t.pipelineContext.large;return{progress:function(r,o){var a=[];if(i){var s=void 0,l=r.end-r.start;if(n){for(var u=0,h=r.start;h<r.end;h++)u+=t.getLineCoordsCount(h);s=new Float32Array(l+2*u)}else s=new Float32Array(4*l);var c=0,p=[];for(h=r.start;h<r.end;h++){var d=t.getLineCoords(h,a);n&&(s[c++]=d);for(var f=0;f<d;f++)p=e.dataToPoint(a[f],!1,p),s[c++]=p[0],s[c++]=p[1]}o.setLayout("linesPoints",s)}else for(h=r.start;h<r.end;h++){var g=o.getItemModel(h),y=(d=t.getLineCoords(h,a),[]);if(n)for(var v=0;v<d;v++)y.push(e.dataToPoint(a[v]));else{y[0]=e.dataToPoint(a[0]),y[1]=e.dataToPoint(a[1]);var m=g.get(["lineStyle","curveness"]);+m&&(y[2]=[(y[0][0]+y[1][0])/2-(y[0][1]-y[1][1])*m,(y[0][1]+y[1][1])/2-(y[1][0]-y[0][0])*m])}o.setItemLayout(h,y)}}}}}},nO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i=t.getData(),r=this._updateLineDraw(i,t),o=t.get("zlevel"),a=t.get(["effect","trailLength"]),s=n.getZr(),l="svg"===s.painter.getType();l||s.painter.getLayer(o).clear(!0),null==this._lastZlevel||l||s.configLayer(this._lastZlevel,{motionBlur:!1}),this._showEffect(t)&&a>0&&(l||s.configLayer(o,{motionBlur:!0,lastFrameAlpha:Math.max(Math.min(a/10+.9,1),0)})),r.updateData(i);var u=t.get("clip",!0)&&PS(t.coordinateSystem,!1,t);u?this.group.setClipPath(u):this.group.removeClipPath(),this._lastZlevel=o,this._finished=!0},e.prototype.incrementalPrepareRender=function(t,e,n){var i=t.getData();this._updateLineDraw(i,t).incrementalPrepareUpdate(i),this._clearLayer(n),this._finished=!1},e.prototype.incrementalRender=function(t,e,n){this._lineDraw.incrementalUpdate(t,e.getData()),this._finished=t.end===e.getData().count()},e.prototype.eachRendered=function(t){this._lineDraw&&this._lineDraw.eachRendered(t)},e.prototype.updateTransform=function(t,e,n){var i=t.getData(),r=t.pipelineContext;if(!this._finished||r.large||r.progressiveRender)return{update:!0};var o=eO.reset(t,e,n);o.progress&&o.progress({start:0,end:i.count(),count:i.count()},i),this._lineDraw.updateLayout(),this._clearLayer(n)},e.prototype._updateLineDraw=function(t,e){var n=this._lineDraw,i=this._showEffect(e),r=!!e.get("polyline"),o=e.pipelineContext.large;return n&&i===this._hasEffet&&r===this._isPolyline&&o===this._isLargeDraw||(n&&n.remove(),n=this._lineDraw=o?new tO:new YA(r?i?$P:KP:i?qP:HA),this._hasEffet=i,this._isPolyline=r,this._isLargeDraw=o),this.group.add(n.group),n},e.prototype._showEffect=function(t){return!!t.get(["effect","show"])},e.prototype._clearLayer=function(t){var e=t.getZr();"svg"===e.painter.getType()||null==this._lastZlevel||e.painter.getLayer(this._lastZlevel).clear(!0)},e.prototype.remove=function(t,e){this._lineDraw&&this._lineDraw.remove(),this._lineDraw=null,this._clearLayer(e)},e.prototype.dispose=function(t,e){this.remove(t,e)},e.type="lines",e}(Og),iO="undefined"==typeof Uint32Array?Array:Uint32Array,rO="undefined"==typeof Float64Array?Array:Float64Array;function oO(t){var e=t.data;e&&e[0]&&e[0][0]&&e[0][0].coord&&(t.data=z(e,(function(t){var e={coords:[t[0].coord,t[1].coord]};return t[0].name&&(e.fromName=t[0].name),t[1].name&&(e.toName=t[1].name),D([e,t[0],t[1]])})))}var aO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.visualStyleAccessPath="lineStyle",n.visualDrawType="stroke",n}return n(e,t),e.prototype.init=function(e){e.data=e.data||[],oO(e);var n=this._processFlatCoordsArray(e.data);this._flatCoords=n.flatCoords,this._flatCoordsOffset=n.flatCoordsOffset,n.flatCoords&&(e.data=new Float32Array(n.count)),t.prototype.init.apply(this,arguments)},e.prototype.mergeOption=function(e){if(oO(e),e.data){var n=this._processFlatCoordsArray(e.data);this._flatCoords=n.flatCoords,this._flatCoordsOffset=n.flatCoordsOffset,n.flatCoords&&(e.data=new Float32Array(n.count))}t.prototype.mergeOption.apply(this,arguments)},e.prototype.appendData=function(t){var e=this._processFlatCoordsArray(t.data);e.flatCoords&&(this._flatCoords?(this._flatCoords=vt(this._flatCoords,e.flatCoords),this._flatCoordsOffset=vt(this._flatCoordsOffset,e.flatCoordsOffset)):(this._flatCoords=e.flatCoords,this._flatCoordsOffset=e.flatCoordsOffset),t.data=new Float32Array(e.count)),this.getRawData().appendData(t.data)},e.prototype._getCoordsFromItemModel=function(t){var e=this.getData().getItemModel(t),n=e.option instanceof Array?e.option:e.getShallow("coords");return n},e.prototype.getLineCoordsCount=function(t){return this._flatCoordsOffset?this._flatCoordsOffset[2*t+1]:this._getCoordsFromItemModel(t).length},e.prototype.getLineCoords=function(t,e){if(this._flatCoordsOffset){for(var n=this._flatCoordsOffset[2*t],i=this._flatCoordsOffset[2*t+1],r=0;r<i;r++)e[r]=e[r]||[],e[r][0]=this._flatCoords[n+2*r],e[r][1]=this._flatCoords[n+2*r+1];return i}var o=this._getCoordsFromItemModel(t);for(r=0;r<o.length;r++)e[r]=e[r]||[],e[r][0]=o[r][0],e[r][1]=o[r][1];return o.length},e.prototype._processFlatCoordsArray=function(t){var e=0;if(this._flatCoords&&(e=this._flatCoords.length),j(t[0])){for(var n=t.length,i=new iO(n),r=new rO(n),o=0,a=0,s=0,l=0;l<n;){s++;var u=t[l++];i[a++]=o+e,i[a++]=u;for(var h=0;h<u;h++){var c=t[l++],p=t[l++];r[o++]=c,r[o++]=p}}return{flatCoordsOffset:new Uint32Array(i.buffer,0,a),flatCoords:r,count:s}}return{flatCoordsOffset:null,flatCoords:null,count:t.length}},e.prototype.getInitialData=function(t,e){var n=new cx(["value"],this);return n.hasItemOption=!1,n.initData(t.data,[],(function(t,e,i,r){if(t instanceof Array)return NaN;n.hasItemOption=!0;var o=t.value;return null!=o?o instanceof Array?o[r]:o:void 0})),n},e.prototype.formatTooltip=function(t,e,n){var i=this.getData().getItemModel(t),r=i.get("name");if(r)return r;var o=i.get("fromName"),a=i.get("toName"),s=[];return null!=o&&s.push(o),null!=a&&s.push(a),og("nameValue",{name:s.join(" > ")})},e.prototype.preventIncremental=function(){return!!this.get(["effect","show"])},e.prototype.getProgressive=function(){var t=this.option.progressive;return null==t?this.option.large?1e4:this.get("progressive"):t},e.prototype.getProgressiveThreshold=function(){var t=this.option.progressiveThreshold;return null==t?this.option.large?2e4:this.get("progressiveThreshold"):t},e.prototype.getZLevelKey=function(){var t=this.getModel("effect"),e=t.get("trailLength");return this.getData().count()>this.getProgressiveThreshold()?this.id:t.get("show")&&e>0?e+"":""},e.type="series.lines",e.dependencies=["grid","polar","geo","calendar"],e.defaultOption={coordinateSystem:"geo",z:2,legendHoverLink:!0,xAxisIndex:0,yAxisIndex:0,symbol:["none","none"],symbolSize:[10,10],geoIndex:0,effect:{show:!1,period:4,constantSpeed:0,symbol:"circle",symbolSize:3,loop:!0,trailLength:.2},large:!1,largeThreshold:2e3,polyline:!1,clip:!0,label:{show:!1,position:"end"},lineStyle:{opacity:.5}},e}(bg);function sO(t){return t instanceof Array||(t=[t,t]),t}var lO={seriesType:"lines",reset:function(t){var e=sO(t.get("symbol")),n=sO(t.get("symbolSize")),i=t.getData();return i.setVisual("fromSymbol",e&&e[0]),i.setVisual("toSymbol",e&&e[1]),i.setVisual("fromSymbolSize",n&&n[0]),i.setVisual("toSymbolSize",n&&n[1]),{dataEach:i.hasItemOption?function(t,e){var n=t.getItemModel(e),i=sO(n.getShallow("symbol",!0)),r=sO(n.getShallow("symbolSize",!0));i[0]&&t.setItemVisual(e,"fromSymbol",i[0]),i[1]&&t.setItemVisual(e,"toSymbol",i[1]),r[0]&&t.setItemVisual(e,"fromSymbolSize",r[0]),r[1]&&t.setItemVisual(e,"toSymbolSize",r[1])}:null}}};var uO=function(){function t(){this.blurSize=30,this.pointSize=20,this.maxOpacity=1,this.minOpacity=0,this._gradientPixels={inRange:null,outOfRange:null};var t=h.createCanvas();this.canvas=t}return t.prototype.update=function(t,e,n,i,r,o){var a=this._getBrush(),s=this._getGradient(r,"inRange"),l=this._getGradient(r,"outOfRange"),u=this.pointSize+this.blurSize,h=this.canvas,c=h.getContext("2d"),p=t.length;h.width=e,h.height=n;for(var d=0;d<p;++d){var f=t[d],g=f[0],y=f[1],v=i(f[2]);c.globalAlpha=v,c.drawImage(a,g-u,y-u)}if(!h.width||!h.height)return h;for(var m=c.getImageData(0,0,h.width,h.height),x=m.data,_=0,b=x.length,w=this.minOpacity,S=this.maxOpacity-w;_<b;){v=x[_+3]/256;var M=4*Math.floor(255*v);if(v>0){var I=o(v)?s:l;v>0&&(v=v*S+w),x[_++]=I[M],x[_++]=I[M+1],x[_++]=I[M+2],x[_++]=I[M+3]*v*256}else _+=4}return c.putImageData(m,0,0),h},t.prototype._getBrush=function(){var t=this._brushCanvas||(this._brushCanvas=h.createCanvas()),e=this.pointSize+this.blurSize,n=2*e;t.width=n,t.height=n;var i=t.getContext("2d");return i.clearRect(0,0,n,n),i.shadowOffsetX=n,i.shadowBlur=this.blurSize,i.shadowColor="#000",i.beginPath(),i.arc(-e,e,this.pointSize,0,2*Math.PI,!0),i.closePath(),i.fill(),t},t.prototype._getGradient=function(t,e){for(var n=this._gradientPixels,i=n[e]||(n[e]=new Uint8ClampedArray(1024)),r=[0,0,0,0],o=0,a=0;a<256;a++)t[e](a/255,!0,r),i[o++]=r[0],i[o++]=r[1],i[o++]=r[2],i[o++]=r[3];return i},t}();function hO(t){var e=t.dimensions;return"lng"===e[0]&&"lat"===e[1]}var cO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i;e.eachComponent("visualMap",(function(e){e.eachTargetSeries((function(n){n===t&&(i=e)}))})),this._progressiveEls=null,this.group.removeAll();var r=t.coordinateSystem;"cartesian2d"===r.type||"calendar"===r.type?this._renderOnCartesianAndCalendar(t,n,0,t.getData().count()):hO(r)&&this._renderOnGeo(r,t,i,n)},e.prototype.incrementalPrepareRender=function(t,e,n){this.group.removeAll()},e.prototype.incrementalRender=function(t,e,n,i){var r=e.coordinateSystem;r&&(hO(r)?this.render(e,n,i):(this._progressiveEls=[],this._renderOnCartesianAndCalendar(e,i,t.start,t.end,!0)))},e.prototype.eachRendered=function(t){Jh(this._progressiveEls||this.group,t)},e.prototype._renderOnCartesianAndCalendar=function(t,e,n,i,r){var o,a,s,l,u=t.coordinateSystem,h=OS(u,"cartesian2d");if(h){var c=u.getAxis("x"),p=u.getAxis("y");0,o=c.getBandWidth()+.5,a=p.getBandWidth()+.5,s=c.scale.getExtent(),l=p.scale.getExtent()}for(var d=this.group,f=t.getData(),g=t.getModel(["emphasis","itemStyle"]).getItemStyle(),y=t.getModel(["blur","itemStyle"]).getItemStyle(),v=t.getModel(["select","itemStyle"]).getItemStyle(),m=t.get(["itemStyle","borderRadius"]),x=rc(t),_=t.getModel("emphasis"),b=_.get("focus"),w=_.get("blurScope"),S=_.get("disabled"),M=h?[f.mapDimension("x"),f.mapDimension("y"),f.mapDimension("value")]:[f.mapDimension("time"),f.mapDimension("value")],I=n;I<i;I++){var T=void 0,C=f.getItemVisual(I,"style");if(h){var D=f.get(M[0],I),A=f.get(M[1],I);if(isNaN(f.get(M[2],I))||isNaN(D)||isNaN(A)||D<s[0]||D>s[1]||A<l[0]||A>l[1])continue;var k=u.dataToPoint([D,A]);T=new Ws({shape:{x:k[0]-o/2,y:k[1]-a/2,width:o,height:a},style:C})}else{if(isNaN(f.get(M[1],I)))continue;T=new Ws({z2:1,shape:u.dataToRect([f.get(M[0],I)]).contentShape,style:C})}if(f.hasItemOption){var L=f.getItemModel(I),P=L.getModel("emphasis");g=P.getModel("itemStyle").getItemStyle(),y=L.getModel(["blur","itemStyle"]).getItemStyle(),v=L.getModel(["select","itemStyle"]).getItemStyle(),m=L.get(["itemStyle","borderRadius"]),b=P.get("focus"),w=P.get("blurScope"),S=P.get("disabled"),x=rc(L)}T.shape.r=m;var O=t.getRawValue(I),R="-";O&&null!=O[2]&&(R=O[2]+""),ic(T,x,{labelFetcher:t,labelDataIndex:I,defaultOpacity:C.opacity,defaultText:R}),T.ensureState("emphasis").style=g,T.ensureState("blur").style=y,T.ensureState("select").style=v,Zl(T,b,w,S),T.incremental=r,r&&(T.states.emphasis.hoverLayer=!0),d.add(T),f.setItemGraphicEl(I,T),this._progressiveEls&&this._progressiveEls.push(T)}},e.prototype._renderOnGeo=function(t,e,n,i){var r=n.targetVisuals.inRange,o=n.targetVisuals.outOfRange,a=e.getData(),s=this._hmLayer||this._hmLayer||new uO;s.blurSize=e.get("blurSize"),s.pointSize=e.get("pointSize"),s.minOpacity=e.get("minOpacity"),s.maxOpacity=e.get("maxOpacity");var l=t.getViewRect().clone(),u=t.getRoamTransform();l.applyTransform(u);var h=Math.max(l.x,0),c=Math.max(l.y,0),p=Math.min(l.width+l.x,i.getWidth()),d=Math.min(l.height+l.y,i.getHeight()),f=p-h,g=d-c,y=[a.mapDimension("lng"),a.mapDimension("lat"),a.mapDimension("value")],v=a.mapArray(y,(function(e,n,i){var r=t.dataToPoint([e,n]);return r[0]-=h,r[1]-=c,r.push(i),r})),m=n.getExtent(),x="visualMap.continuous"===n.type?function(t,e){var n=t[1]-t[0];return e=[(e[0]-t[0])/n,(e[1]-t[0])/n],function(t){return t>=e[0]&&t<=e[1]}}(m,n.option.range):function(t,e,n){var i=t[1]-t[0],r=(e=z(e,(function(e){return{interval:[(e.interval[0]-t[0])/i,(e.interval[1]-t[0])/i]}}))).length,o=0;return function(t){var i;for(i=o;i<r;i++)if((a=e[i].interval)[0]<=t&&t<=a[1]){o=i;break}if(i===r)for(i=o-1;i>=0;i--){var a;if((a=e[i].interval)[0]<=t&&t<=a[1]){o=i;break}}return i>=0&&i<r&&n[i]}}(m,n.getPieceList(),n.option.selected);s.update(v,f,g,r.color.getNormalizer(),{inRange:r.color.getColorMapper(),outOfRange:o.color.getColorMapper()},x);var _=new Ns({style:{width:f,height:g,x:h,y:c,image:s.canvas},silent:!0});this.group.add(_)},e.type="heatmap",e}(Og),pO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.getInitialData=function(t,e){return _x(null,this,{generateCoord:"value"})},e.prototype.preventIncremental=function(){var t=wd.get(this.get("coordinateSystem"));if(t&&t.dimensions)return"lng"===t.dimensions[0]&&"lat"===t.dimensions[1]},e.type="series.heatmap",e.dependencies=["grid","geo","calendar"],e.defaultOption={coordinateSystem:"cartesian2d",z:2,geoIndex:0,blurSize:30,pointSize:20,maxOpacity:1,minOpacity:0,select:{itemStyle:{borderColor:"#212121"}}},e}(bg);var dO=["itemStyle","borderWidth"],fO=[{xy:"x",wh:"width",index:0,posDesc:["left","right"]},{xy:"y",wh:"height",index:1,posDesc:["top","bottom"]}],gO=new Su,yO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i=this.group,r=t.getData(),o=this._data,a=t.coordinateSystem,s=a.getBaseAxis().isHorizontal(),l=a.master.getRect(),u={ecSize:{width:n.getWidth(),height:n.getHeight()},seriesModel:t,coordSys:a,coordSysExtent:[[l.x,l.x+l.width],[l.y,l.y+l.height]],isHorizontal:s,valueDim:fO[+s],categoryDim:fO[1-+s]};r.diff(o).add((function(t){if(r.hasValue(t)){var e=MO(r,t),n=vO(r,t,e,u),o=CO(r,u,n);r.setItemGraphicEl(t,o),i.add(o),PO(o,u,n)}})).update((function(t,e){var n=o.getItemGraphicEl(e);if(r.hasValue(t)){var a=MO(r,t),s=vO(r,t,a,u),l=AO(r,s);n&&l!==n.__pictorialShapeStr&&(i.remove(n),r.setItemGraphicEl(t,null),n=null),n?function(t,e,n){var i=n.animationModel,r=n.dataIndex,o=t.__pictorialBundle;vh(o,{x:n.bundlePosition[0],y:n.bundlePosition[1]},i,r),n.symbolRepeat?_O(t,e,n,!0):bO(t,e,n,!0);wO(t,n,!0),SO(t,e,n,!0)}(n,u,s):n=CO(r,u,s,!0),r.setItemGraphicEl(t,n),n.__pictorialSymbolMeta=s,i.add(n),PO(n,u,s)}else i.remove(n)})).remove((function(t){var e=o.getItemGraphicEl(t);e&&DO(o,t,e.__pictorialSymbolMeta.animationModel,e)})).execute();var h=t.get("clip",!0)?PS(t.coordinateSystem,!1,t):null;return h?i.setClipPath(h):i.removeClipPath(),this._data=r,this.group},e.prototype.remove=function(t,e){var n=this.group,i=this._data;t.get("animation")?i&&i.eachItemGraphicEl((function(e){DO(i,rl(e).dataIndex,t,e)})):n.removeAll()},e.type="pictorialBar",e}(Og);function vO(t,e,n,i){var r=t.getItemLayout(e),o=n.get("symbolRepeat"),a=n.get("symbolClip"),s=n.get("symbolPosition")||"start",l=(n.get("symbolRotate")||0)*Math.PI/180||0,u=n.get("symbolPatternSize")||2,h=n.isAnimationEnabled(),c={dataIndex:e,layout:r,itemModel:n,symbolType:t.getItemVisual(e,"symbol")||"circle",style:t.getItemVisual(e,"style"),symbolClip:a,symbolRepeat:o,symbolRepeatDirection:n.get("symbolRepeatDirection"),symbolPatternSize:u,rotation:l,animationModel:h?n:null,hoverScale:h&&n.get(["emphasis","scale"]),z2:n.getShallow("z",!0)||0};!function(t,e,n,i,r){var o,a=i.valueDim,s=t.get("symbolBoundingData"),l=i.coordSys.getOtherAxis(i.coordSys.getBaseAxis()),u=l.toGlobalCoord(l.dataToCoord(0)),h=1-+(n[a.wh]<=0);if(Y(s)){var c=[mO(l,s[0])-u,mO(l,s[1])-u];c[1]<c[0]&&c.reverse(),o=c[h]}else o=null!=s?mO(l,s)-u:e?i.coordSysExtent[a.index][h]-u:n[a.wh];r.boundingLength=o,e&&(r.repeatCutLength=n[a.wh]);r.pxSign=o>0?1:-1}(n,o,r,i,c),function(t,e,n,i,r,o,a,s,l,u){var h,c=l.valueDim,p=l.categoryDim,d=Math.abs(n[p.wh]),f=t.getItemVisual(e,"symbolSize");h=Y(f)?f.slice():null==f?["100%","100%"]:[f,f];h[p.index]=$r(h[p.index],d),h[c.index]=$r(h[c.index],i?d:Math.abs(o)),u.symbolSize=h;var g=u.symbolScale=[h[0]/s,h[1]/s];g[c.index]*=(l.isHorizontal?-1:1)*a}(t,e,r,o,0,c.boundingLength,c.pxSign,u,i,c),function(t,e,n,i,r){var o=t.get(dO)||0;o&&(gO.attr({scaleX:e[0],scaleY:e[1],rotation:n}),gO.updateTransform(),o/=gO.getLineScale(),o*=e[i.valueDim.index]);r.valueLineWidth=o||0}(n,c.symbolScale,l,i,c);var p=c.symbolSize,d=Zy(n.get("symbolOffset"),p);return function(t,e,n,i,r,o,a,s,l,u,h,c){var p=h.categoryDim,d=h.valueDim,f=c.pxSign,g=Math.max(e[d.index]+s,0),y=g;if(i){var v=Math.abs(l),m=it(t.get("symbolMargin"),"15%")+"",x=!1;m.lastIndexOf("!")===m.length-1&&(x=!0,m=m.slice(0,m.length-1));var _=$r(m,e[d.index]),b=Math.max(g+2*_,0),w=x?0:2*_,S=vo(i),M=S?i:OO((v+w)/b);b=g+2*(_=(v-M*g)/2/(x?M:Math.max(M-1,1))),w=x?0:2*_,S||"fixed"===i||(M=u?OO((Math.abs(u)+w)/b):0),y=M*b-w,c.repeatTimes=M,c.symbolMargin=_}var I=f*(y/2),T=c.pathPosition=[];T[p.index]=n[p.wh]/2,T[d.index]="start"===a?I:"end"===a?l-I:l/2,o&&(T[0]+=o[0],T[1]+=o[1]);var C=c.bundlePosition=[];C[p.index]=n[p.xy],C[d.index]=n[d.xy];var D=c.barRectShape=A({},n);D[d.wh]=f*Math.max(Math.abs(n[d.wh]),Math.abs(T[d.index]+I)),D[p.wh]=n[p.wh];var k=c.clipShape={};k[p.xy]=-n[p.xy],k[p.wh]=h.ecSize[p.wh],k[d.xy]=0,k[d.wh]=n[d.wh]}(n,p,r,o,0,d,s,c.valueLineWidth,c.boundingLength,c.repeatCutLength,i,c),c}function mO(t,e){return t.toGlobalCoord(t.dataToCoord(t.scale.parse(e)))}function xO(t){var e=t.symbolPatternSize,n=Xy(t.symbolType,-e/2,-e/2,e,e);return n.attr({culling:!0}),"image"!==n.type&&n.setStyle({strokeNoScale:!0}),n}function _O(t,e,n,i){var r=t.__pictorialBundle,o=n.symbolSize,a=n.valueLineWidth,s=n.pathPosition,l=e.valueDim,u=n.repeatTimes||0,h=0,c=o[e.valueDim.index]+a+2*n.symbolMargin;for(kO(t,(function(t){t.__pictorialAnimationIndex=h,t.__pictorialRepeatTimes=u,h<u?LO(t,null,f(h),n,i):LO(t,null,{scaleX:0,scaleY:0},n,i,(function(){r.remove(t)})),h++}));h<u;h++){var p=xO(n);p.__pictorialAnimationIndex=h,p.__pictorialRepeatTimes=u,r.add(p);var d=f(h);LO(p,{x:d.x,y:d.y,scaleX:0,scaleY:0},{scaleX:d.scaleX,scaleY:d.scaleY,rotation:d.rotation},n,i)}function f(t){var e=s.slice(),i=n.pxSign,r=t;return("start"===n.symbolRepeatDirection?i>0:i<0)&&(r=u-1-t),e[l.index]=c*(r-u/2+.5)+s[l.index],{x:e[0],y:e[1],scaleX:n.symbolScale[0],scaleY:n.symbolScale[1],rotation:n.rotation}}}function bO(t,e,n,i){var r=t.__pictorialBundle,o=t.__pictorialMainPath;o?LO(o,null,{x:n.pathPosition[0],y:n.pathPosition[1],scaleX:n.symbolScale[0],scaleY:n.symbolScale[1],rotation:n.rotation},n,i):(o=t.__pictorialMainPath=xO(n),r.add(o),LO(o,{x:n.pathPosition[0],y:n.pathPosition[1],scaleX:0,scaleY:0,rotation:n.rotation},{scaleX:n.symbolScale[0],scaleY:n.symbolScale[1]},n,i))}function wO(t,e,n){var i=A({},e.barRectShape),r=t.__pictorialBarRect;r?LO(r,null,{shape:i},e,n):((r=t.__pictorialBarRect=new Ws({z2:2,shape:i,silent:!0,style:{stroke:"transparent",fill:"transparent",lineWidth:0}})).disableMorphing=!0,t.add(r))}function SO(t,e,n,i){if(n.symbolClip){var r=t.__pictorialClipPath,o=A({},n.clipShape),a=e.valueDim,s=n.animationModel,l=n.dataIndex;if(r)vh(r,{shape:o},s,l);else{o[a.wh]=0,r=new Ws({shape:o}),t.__pictorialBundle.setClipPath(r),t.__pictorialClipPath=r;var u={};u[a.wh]=n.clipShape[a.wh],Qh[i?"updateProps":"initProps"](r,{shape:u},s,l)}}}function MO(t,e){var n=t.getItemModel(e);return n.getAnimationDelayParams=IO,n.isAnimationEnabled=TO,n}function IO(t){return{index:t.__pictorialAnimationIndex,count:t.__pictorialRepeatTimes}}function TO(){return this.parentModel.isAnimationEnabled()&&!!this.getShallow("animation")}function CO(t,e,n,i){var r=new Br,o=new Br;return r.add(o),r.__pictorialBundle=o,o.x=n.bundlePosition[0],o.y=n.bundlePosition[1],n.symbolRepeat?_O(r,e,n):bO(r,0,n),wO(r,n,i),SO(r,e,n,i),r.__pictorialShapeStr=AO(t,n),r.__pictorialSymbolMeta=n,r}function DO(t,e,n,i){var r=i.__pictorialBarRect;r&&r.removeTextContent();var o=[];kO(i,(function(t){o.push(t)})),i.__pictorialMainPath&&o.push(i.__pictorialMainPath),i.__pictorialClipPath&&(n=null),E(o,(function(t){_h(t,{scaleX:0,scaleY:0},n,e,(function(){i.parent&&i.parent.remove(i)}))})),t.setItemGraphicEl(e,null)}function AO(t,e){return[t.getItemVisual(e.dataIndex,"symbol")||"none",!!e.symbolRepeat,!!e.symbolClip].join(":")}function kO(t,e,n){E(t.__pictorialBundle.children(),(function(i){i!==t.__pictorialBarRect&&e.call(n,i)}))}function LO(t,e,n,i,r,o){e&&t.attr(e),i.symbolClip&&!r?n&&t.attr(n):n&&Qh[r?"updateProps":"initProps"](t,n,i.animationModel,i.dataIndex,o)}function PO(t,e,n){var i=n.dataIndex,r=n.itemModel,o=r.getModel("emphasis"),a=o.getModel("itemStyle").getItemStyle(),s=r.getModel(["blur","itemStyle"]).getItemStyle(),l=r.getModel(["select","itemStyle"]).getItemStyle(),u=r.getShallow("cursor"),h=o.get("focus"),c=o.get("blurScope"),p=o.get("scale");kO(t,(function(t){if(t instanceof Ns){var e=t.style;t.useStyle(A({image:e.image,x:e.x,y:e.y,width:e.width,height:e.height},n.style))}else t.useStyle(n.style);var i=t.ensureState("emphasis");i.style=a,p&&(i.scaleX=1.1*t.scaleX,i.scaleY=1.1*t.scaleY),t.ensureState("blur").style=s,t.ensureState("select").style=l,u&&(t.cursor=u),t.z2=n.z2}));var d=e.valueDim.posDesc[+(n.boundingLength>0)],f=t.__pictorialBarRect;f.ignoreClip=!0,ic(f,rc(r),{labelFetcher:e.seriesModel,labelDataIndex:i,defaultText:pS(e.seriesModel.getData(),i),inheritColor:n.style.fill,defaultOpacity:n.style.opacity,defaultOutsidePosition:d}),Zl(t,h,c,o.get("disabled"))}function OO(t){var e=Math.round(t);return Math.abs(t-e)<1e-4?e:Math.ceil(t)}var RO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.hasSymbolVisual=!0,n.defaultSymbol="roundRect",n}return n(e,t),e.prototype.getInitialData=function(e){return e.stack=null,t.prototype.getInitialData.apply(this,arguments)},e.type="series.pictorialBar",e.dependencies=["grid"],e.defaultOption=kc(qS.defaultOption,{symbol:"circle",symbolSize:null,symbolRotate:null,symbolPosition:null,symbolOffset:null,symbolMargin:null,symbolRepeat:!1,symbolRepeatDirection:"end",symbolClip:!1,symbolBoundingData:null,symbolPatternSize:400,barGap:"-100%",clip:!1,progressive:0,emphasis:{scale:!1},select:{itemStyle:{borderColor:"#212121"}}}),e}(qS);var NO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._layers=[],n}return n(e,t),e.prototype.render=function(t,e,n){var i=t.getData(),r=this,o=this.group,a=t.getLayerSeries(),s=i.getLayout("layoutInfo"),l=s.rect,u=s.boundaryGap;function h(t){return t.name}o.x=0,o.y=l.y+u[0];var c=new Gm(this._layersSeries||[],a,h,h),p=[];function d(e,n,s){var l=r._layers;if("remove"!==e){for(var u,h,c=[],d=[],f=a[n].indices,g=0;g<f.length;g++){var y=i.getItemLayout(f[g]),v=y.x,m=y.y0,x=y.y;c.push(v,m),d.push(v,m+x),u=i.getItemVisual(f[g],"style")}var _=i.getItemLayout(f[0]),b=t.getModel("label").get("margin"),w=t.getModel("emphasis");if("add"===e){var S=p[n]=new Br;h=new AS({shape:{points:c,stackedOnPoints:d,smooth:.4,stackedOnSmooth:.4,smoothConstraint:!1},z2:0}),S.add(h),o.add(S),t.isAnimationEnabled()&&h.setClipPath(function(t,e,n){var i=new Ws({shape:{x:t.x-10,y:t.y-10,width:0,height:t.height+20}});return mh(i,{shape:{x:t.x-50,width:t.width+100,height:t.height+20}},e,n),i}(h.getBoundingRect(),t,(function(){h.removeClipPath()})))}else{S=l[s];h=S.childAt(0),o.add(S),p[n]=S,vh(h,{shape:{points:c,stackedOnPoints:d}},t),Sh(h)}ic(h,rc(t),{labelDataIndex:f[g-1],defaultText:i.getName(f[g-1]),inheritColor:u.fill},{normal:{verticalAlign:"middle"}}),h.setTextConfig({position:null,local:!0});var M=h.getTextContent();M&&(M.x=_.x-b,M.y=_.y0+_.y/2),h.useStyle(u),i.setItemGraphicEl(n,h),$l(h,t),Zl(h,w.get("focus"),w.get("blurScope"),w.get("disabled"))}else o.remove(l[n])}c.add(W(d,this,"add")).update(W(d,this,"update")).remove(W(d,this,"remove")).execute(),this._layersSeries=a,this._layers=p},e.type="themeRiver",e}(Og);var EO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(e){t.prototype.init.apply(this,arguments),this.legendVisualProvider=new NM(W(this.getData,this),W(this.getRawData,this))},e.prototype.fixData=function(t){var e=t.length,n={},i=Uo(t,(function(t){return n.hasOwnProperty(t[0]+"")||(n[t[0]+""]=-1),t[2]})),r=[];i.buckets.each((function(t,e){r.push({name:e,dataList:t})}));for(var o=r.length,a=0;a<o;++a){for(var s=r[a].name,l=0;l<r[a].dataList.length;++l){var u=r[a].dataList[l][0]+"";n[u]=a}for(var u in n)n.hasOwnProperty(u)&&n[u]!==a&&(n[u]=a,t[e]=[u,0,s],e++)}return t},e.prototype.getInitialData=function(t,e){for(var n=this.getReferringComponents("singleAxis",Wo).models[0].get("type"),i=B(t.data,(function(t){return void 0!==t[2]})),r=this.fixData(i||[]),o=[],a=this.nameMap=yt(),s=0,l=0;l<r.length;++l)o.push(r[l][2]),a.get(r[l][2])||(a.set(r[l][2],s),s++);var u=px(r,{coordDimensions:["single"],dimensionsDefine:[{name:"time",type:Ym(n)},{name:"value",type:"float"},{name:"name",type:"ordinal"}],encodeDefine:{single:0,value:1,itemName:2}}).dimensions,h=new cx(u,this);return h.initData(r),h},e.prototype.getLayerSeries=function(){for(var t=this.getData(),e=t.count(),n=[],i=0;i<e;++i)n[i]=i;var r=t.mapDimension("single"),o=Uo(n,(function(e){return t.get("name",e)})),a=[];return o.buckets.each((function(e,n){e.sort((function(e,n){return t.get(r,e)-t.get(r,n)})),a.push({name:n,indices:e})})),a},e.prototype.getAxisTooltipData=function(t,e,n){Y(t)||(t=t?[t]:[]);for(var i,r=this.getData(),o=this.getLayerSeries(),a=[],s=o.length,l=0;l<s;++l){for(var u=Number.MAX_VALUE,h=-1,c=o[l].indices.length,p=0;p<c;++p){var d=r.get(t[0],o[l].indices[p]),f=Math.abs(d-e);f<=u&&(i=d,u=f,h=o[l].indices[p])}a.push(h)}return{dataIndices:a,nestestValue:i}},e.prototype.formatTooltip=function(t,e,n){var i=this.getData();return og("nameValue",{name:i.getName(t),value:i.get(i.mapDimension("value"),t)})},e.type="series.themeRiver",e.dependencies=["singleAxis"],e.defaultOption={z:2,colorBy:"data",coordinateSystem:"singleAxis",boundaryGap:["10%","10%"],singleAxisIndex:0,animationEasing:"linear",label:{margin:4,show:!0,position:"left",fontSize:11},emphasis:{label:{show:!0}}},e}(bg);function zO(t,e){t.eachSeriesByType("themeRiver",(function(t){var e=t.getData(),n=t.coordinateSystem,i={},r=n.getRect();i.rect=r;var o=t.get("boundaryGap"),a=n.getAxis();(i.boundaryGap=o,"horizontal"===a.orient)?(o[0]=$r(o[0],r.height),o[1]=$r(o[1],r.height),VO(e,t,r.height-o[0]-o[1])):(o[0]=$r(o[0],r.width),o[1]=$r(o[1],r.width),VO(e,t,r.width-o[0]-o[1]));e.setLayout("layoutInfo",i)}))}function VO(t,e,n){if(t.count())for(var i,r=e.coordinateSystem,o=e.getLayerSeries(),a=t.mapDimension("single"),s=t.mapDimension("value"),l=z(o,(function(e){return z(e.indices,(function(e){var n=r.dataToPoint(t.get(a,e));return n[1]=t.get(s,e),n}))})),u=function(t){for(var e=t.length,n=t[0].length,i=[],r=[],o=0,a=0;a<n;++a){for(var s=0,l=0;l<e;++l)s+=t[l][a][1];s>o&&(o=s),i.push(s)}for(var u=0;u<n;++u)r[u]=(o-i[u])/2;o=0;for(var h=0;h<n;++h){var c=i[h]+r[h];c>o&&(o=c)}return{y0:r,max:o}}(l),h=u.y0,c=n/u.max,p=o.length,d=o[0].indices.length,f=0;f<d;++f){i=h[f]*c,t.setItemLayout(o[0].indices[f],{layerIndex:0,x:l[0][f][0],y0:i,y:l[0][f][1]*c});for(var g=1;g<p;++g)i+=l[g-1][f][1]*c,t.setItemLayout(o[g].indices[f],{layerIndex:g,x:l[g][f][0],y0:i,y:l[g][f][1]*c})}}var BO=function(t){function e(e,n,i,r){var o=t.call(this)||this;o.z2=2,o.textConfig={inside:!0},rl(o).seriesIndex=n.seriesIndex;var a=new Xs({z2:4,silent:e.getModel().get(["label","silent"])});return o.setTextContent(a),o.updateData(!0,e,n,i,r),o}return n(e,t),e.prototype.updateData=function(t,e,n,i,r){this.node=e,e.piece=this,n=n||this._seriesModel,i=i||this._ecModel;var o=this;rl(o).dataIndex=e.dataIndex;var a=e.getModel(),s=a.getModel("emphasis"),l=e.getLayout(),u=A({},l);u.label=null;var h=e.getVisual("style");h.lineJoin="bevel";var c=e.getVisual("decal");c&&(h.decal=mv(c,r));var p=eM(a.getModel("itemStyle"),u,!0);A(u,p),E(hl,(function(t){var e=o.ensureState(t),n=a.getModel([t,"itemStyle"]);e.style=n.getItemStyle();var i=eM(n,u);i&&(e.shape=i)})),t?(o.setShape(u),o.shape.r=l.r0,mh(o,{shape:{r:l.r}},n,e.dataIndex)):(vh(o,{shape:u},n),Sh(o)),o.useStyle(h),this._updateLabel(n);var d=a.getShallow("cursor");d&&o.attr("cursor",d),this._seriesModel=n||this._seriesModel,this._ecModel=i||this._ecModel;var f=s.get("focus");Zl(this,"ancestor"===f?e.getAncestorsIndices():"descendant"===f?e.getDescendantIndices():f,s.get("blurScope"),s.get("disabled"))},e.prototype._updateLabel=function(t){var e=this,n=this.node.getModel(),i=n.getModel("label"),r=this.node.getLayout(),o=r.endAngle-r.startAngle,a=(r.startAngle+r.endAngle)/2,s=Math.cos(a),l=Math.sin(a),u=this,h=u.getTextContent(),c=this.node.dataIndex,p=i.get("minAngle")/180*Math.PI,d=i.get("show")&&!(null!=p&&Math.abs(o)<p);function f(t,e){var n=t.get(e);return null==n?i.get(e):n}h.ignore=!d,E(cl,(function(i){var p="normal"===i?n.getModel("label"):n.getModel([i,"label"]),d="normal"===i,g=d?h:h.ensureState(i),y=t.getFormattedLabel(c,i);d&&(y=y||e.node.name),g.style=oc(p,{},null,"normal"!==i,!0),y&&(g.style.text=y);var v=p.get("show");null==v||d||(g.ignore=!v);var m,x=f(p,"position"),_=d?u:u.states[i],b=_.style.fill;_.textConfig={outsideFill:"inherit"===p.get("color")?b:null,inside:"outside"!==x};var w=f(p,"distance")||0,S=f(p,"align"),M=f(p,"rotate"),I=.5*Math.PI,T=1.5*Math.PI,C=gs("tangential"===M?Math.PI/2-a:a),D=C>I&&!so(C-I)&&C<T;"outside"===x?(m=r.r+w,S=D?"right":"left"):S&&"center"!==S?"left"===S?(m=r.r0+w,S=D?"right":"left"):"right"===S&&(m=r.r-w,S=D?"left":"right"):(m=o===2*Math.PI&&0===r.r0?0:(r.r+r.r0)/2,S="center"),g.style.align=S,g.style.verticalAlign=f(p,"verticalAlign")||"middle",g.x=m*s+r.cx,g.y=m*l+r.cy;var A=0;"radial"===M?A=gs(-a)+(D?Math.PI:0):"tangential"===M?A=gs(Math.PI/2-a)+(D?Math.PI:0):j(M)&&(A=M*Math.PI/180),g.rotation=gs(A)})),h.dirtyStyle()},e}(Fu),FO="sunburstRootToNode",GO="sunburstHighlight";var WO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n,i){var r=this;this.seriesModel=t,this.api=n,this.ecModel=e;var o=t.getData(),a=o.tree.root,s=t.getViewRoot(),l=this.group,u=t.get("renderLabelForZeroData"),h=[];s.eachNode((function(t){h.push(t)}));var c=this._oldChildren||[];!function(i,r){if(0===i.length&&0===r.length)return;function s(t){return t.getId()}function h(s,h){!function(i,r){u||!i||i.getValue()||(i=null);if(i!==a&&r!==a)if(r&&r.piece)i?(r.piece.updateData(!1,i,t,e,n),o.setItemGraphicEl(i.dataIndex,r.piece)):function(t){if(!t)return;t.piece&&(l.remove(t.piece),t.piece=null)}(r);else if(i){var s=new BO(i,t,e,n);l.add(s),o.setItemGraphicEl(i.dataIndex,s)}}(null==s?null:i[s],null==h?null:r[h])}new Gm(r,i,s,s).add(h).update(h).remove(H(h,null)).execute()}(h,c),function(i,o){o.depth>0?(r.virtualPiece?r.virtualPiece.updateData(!1,i,t,e,n):(r.virtualPiece=new BO(i,t,e,n),l.add(r.virtualPiece)),o.piece.off("click"),r.virtualPiece.on("click",(function(t){r._rootToNode(o.parentNode)}))):r.virtualPiece&&(l.remove(r.virtualPiece),r.virtualPiece=null)}(a,s),this._initEvents(),this._oldChildren=h},e.prototype._initEvents=function(){var t=this;this.group.off("click"),this.group.on("click",(function(e){var n=!1;t.seriesModel.getViewRoot().eachNode((function(i){if(!n&&i.piece&&i.piece===e.target){var r=i.getModel().get("nodeClick");if("rootToNode"===r)t._rootToNode(i);else if("link"===r){var o=i.getModel(),a=o.get("link");if(a)Mp(a,o.get("target",!0)||"_blank")}n=!0}}))}))},e.prototype._rootToNode=function(t){t!==this.seriesModel.getViewRoot()&&this.api.dispatchAction({type:FO,from:this.uid,seriesId:this.seriesModel.id,targetNode:t})},e.prototype.containPoint=function(t,e){var n=e.getData().getItemLayout(0);if(n){var i=t[0]-n.cx,r=t[1]-n.cy,o=Math.sqrt(i*i+r*r);return o<=n.r&&o>=n.r0}},e.type="sunburst",e}(Og),HO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.ignoreStyleOnData=!0,n}return n(e,t),e.prototype.getInitialData=function(t,e){var n={name:t.name,children:t.data};YO(n);var i=this._levelModels=z(t.levels||[],(function(t){return new Cc(t,this,e)}),this),r=nD.createTree(n,this,(function(t){t.wrapMethod("getItemModel",(function(t,e){var n=r.getNodeByDataIndex(e),o=i[n.depth];return o&&(t.parentModel=o),t}))}));return r.data},e.prototype.optionUpdated=function(){this.resetViewRoot()},e.prototype.getDataParams=function(e){var n=t.prototype.getDataParams.apply(this,arguments),i=this.getData().tree.getNodeByDataIndex(e);return n.treePathInfo=aD(i,this),n},e.prototype.getLevelModel=function(t){return this._levelModels&&this._levelModels[t.depth]},e.prototype.getViewRoot=function(){return this._viewRoot},e.prototype.resetViewRoot=function(t){t?this._viewRoot=t:t=this._viewRoot;var e=this.getRawData().tree.root;t&&(t===e||e.contains(t))||(this._viewRoot=e)},e.prototype.enableAriaDecal=function(){pD(this)},e.type="series.sunburst",e.defaultOption={z:2,center:["50%","50%"],radius:[0,"75%"],clockwise:!0,startAngle:90,minAngle:0,stillShowZeroSum:!0,nodeClick:"rootToNode",renderLabelForZeroData:!1,label:{rotate:"radial",show:!0,opacity:1,align:"center",position:"inside",distance:5,silent:!0},itemStyle:{borderWidth:1,borderColor:"white",borderType:"solid",shadowBlur:0,shadowColor:"rgba(0, 0, 0, 0.2)",shadowOffsetX:0,shadowOffsetY:0,opacity:1},emphasis:{focus:"descendant"},blur:{itemStyle:{opacity:.2},label:{opacity:.1}},animationType:"expansion",animationDuration:1e3,animationDurationUpdate:500,data:[],sort:"desc"},e}(bg);function YO(t){var e=0;E(t.children,(function(t){YO(t);var n=t.value;Y(n)&&(n=n[0]),e+=n}));var n=t.value;Y(n)&&(n=n[0]),(null==n||isNaN(n))&&(n=e),n<0&&(n=0),Y(t.value)?t.value[0]=n:t.value=n}var XO=Math.PI/180;function UO(t,e,n){e.eachSeriesByType(t,(function(t){var e=t.get("center"),i=t.get("radius");Y(i)||(i=[0,i]),Y(e)||(e=[e,e]);var r=n.getWidth(),o=n.getHeight(),a=Math.min(r,o),s=$r(e[0],r),l=$r(e[1],o),u=$r(i[0],a/2),h=$r(i[1],a/2),c=-t.get("startAngle")*XO,p=t.get("minAngle")*XO,d=t.getData().tree.root,f=t.getViewRoot(),g=f.depth,y=t.get("sort");null!=y&&ZO(f,y);var v=0;E(f.children,(function(t){!isNaN(t.getValue())&&v++}));var m=f.getValue(),x=Math.PI/(m||v)*2,_=f.depth>0,b=f.height-(_?-1:1),w=(h-u)/(b||1),S=t.get("clockwise"),M=t.get("stillShowZeroSum"),I=S?1:-1,T=function(e,n){if(e){var i=n;if(e!==d){var r=e.getValue(),o=0===m&&M?x:r*x;o<p&&(o=p),i=n+I*o;var h=e.depth-g-(_?-1:1),c=u+w*h,f=u+w*(h+1),y=t.getLevelModel(e);if(y){var v=y.get("r0",!0),b=y.get("r",!0),C=y.get("radius",!0);null!=C&&(v=C[0],b=C[1]),null!=v&&(c=$r(v,a/2)),null!=b&&(f=$r(b,a/2))}e.setLayout({angle:o,startAngle:n,endAngle:i,clockwise:S,cx:s,cy:l,r0:c,r:f})}if(e.children&&e.children.length){var D=0;E(e.children,(function(t){D+=T(t,n+D)}))}return i-n}};if(_){var C=u,D=u+w,A=2*Math.PI;d.setLayout({angle:A,startAngle:c,endAngle:c+A,clockwise:S,cx:s,cy:l,r0:C,r:D})}T(f,c)}))}function ZO(t,e){var n=t.children||[];t.children=function(t,e){if(X(e)){var n=z(t,(function(t,e){var n=t.getValue();return{params:{depth:t.depth,height:t.height,dataIndex:t.dataIndex,getValue:function(){return n}},index:e}}));return n.sort((function(t,n){return e(t.params,n.params)})),z(n,(function(e){return t[e.index]}))}var i="asc"===e;return t.sort((function(t,e){var n=(t.getValue()-e.getValue())*(i?1:-1);return 0===n?(t.dataIndex-e.dataIndex)*(i?-1:1):n}))}(n,e),n.length&&E(t.children,(function(t){ZO(t,e)}))}function jO(t){var e={};t.eachSeriesByType("sunburst",(function(t){var n=t.getData(),i=n.tree;i.eachNode((function(r){var o=r.getModel().getModel("itemStyle").getItemStyle();o.fill||(o.fill=function(t,n,i){for(var r=t;r&&r.depth>1;)r=r.parentNode;var o=n.getColorFromPalette(r.name||r.dataIndex+"",e);return t.depth>1&&U(o)&&(o=$n(o,(t.depth-1)/(i-1)*.5)),o}(r,t,i.root.height)),A(n.ensureUniqueItemVisual(r.dataIndex,"style"),o)}))}))}var qO={color:"fill",borderColor:"stroke"},KO={symbol:1,symbolSize:1,symbolKeepAspect:1,legendIcon:1,visualMeta:1,liftZ:1,decal:1},$O=Vo(),JO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.optionUpdated=function(){this.currentZLevel=this.get("zlevel",!0),this.currentZ=this.get("z",!0)},e.prototype.getInitialData=function(t,e){return _x(null,this)},e.prototype.getDataParams=function(e,n,i){var r=t.prototype.getDataParams.call(this,e,n);return i&&(r.info=$O(i).info),r},e.type="series.custom",e.dependencies=["grid","polar","geo","singleAxis","calendar"],e.defaultOption={coordinateSystem:"cartesian2d",z:2,legendHoverLink:!0,clip:!1},e}(bg);function QO(t,e){return e=e||[0,0],z(["x","y"],(function(n,i){var r=this.getAxis(n),o=e[i],a=t[i]/2;return"category"===r.type?r.getBandWidth():Math.abs(r.dataToCoord(o-a)-r.dataToCoord(o+a))}),this)}function tR(t,e){return e=e||[0,0],z([0,1],(function(n){var i=e[n],r=t[n]/2,o=[],a=[];return o[n]=i-r,a[n]=i+r,o[1-n]=a[1-n]=e[1-n],Math.abs(this.dataToPoint(o)[n]-this.dataToPoint(a)[n])}),this)}function eR(t,e){var n=this.getAxis(),i=e instanceof Array?e[0]:e,r=(t instanceof Array?t[0]:t)/2;return"category"===n.type?n.getBandWidth():Math.abs(n.dataToCoord(i-r)-n.dataToCoord(i+r))}function nR(t,e){return e=e||[0,0],z(["Radius","Angle"],(function(n,i){var r=this["get"+n+"Axis"](),o=e[i],a=t[i]/2,s="category"===r.type?r.getBandWidth():Math.abs(r.dataToCoord(o-a)-r.dataToCoord(o+a));return"Angle"===n&&(s=s*Math.PI/180),s}),this)}function iR(t,e,n,i){return t&&(t.legacy||!1!==t.legacy&&!n&&!i&&"tspan"!==e&&("text"===e||_t(t,"text")))}function rR(t,e,n){var i,r,o,a=t;if("text"===e)o=a;else{o={},_t(a,"text")&&(o.text=a.text),_t(a,"rich")&&(o.rich=a.rich),_t(a,"textFill")&&(o.fill=a.textFill),_t(a,"textStroke")&&(o.stroke=a.textStroke),_t(a,"fontFamily")&&(o.fontFamily=a.fontFamily),_t(a,"fontSize")&&(o.fontSize=a.fontSize),_t(a,"fontStyle")&&(o.fontStyle=a.fontStyle),_t(a,"fontWeight")&&(o.fontWeight=a.fontWeight),r={type:"text",style:o,silent:!0},i={};var s=_t(a,"textPosition");n?i.position=s?a.textPosition:"inside":s&&(i.position=a.textPosition),_t(a,"textPosition")&&(i.position=a.textPosition),_t(a,"textOffset")&&(i.offset=a.textOffset),_t(a,"textRotation")&&(i.rotation=a.textRotation),_t(a,"textDistance")&&(i.distance=a.textDistance)}return oR(o,t),E(o.rich,(function(t){oR(t,t)})),{textConfig:i,textContent:r}}function oR(t,e){e&&(e.font=e.textFont||e.font,_t(e,"textStrokeWidth")&&(t.lineWidth=e.textStrokeWidth),_t(e,"textAlign")&&(t.align=e.textAlign),_t(e,"textVerticalAlign")&&(t.verticalAlign=e.textVerticalAlign),_t(e,"textLineHeight")&&(t.lineHeight=e.textLineHeight),_t(e,"textWidth")&&(t.width=e.textWidth),_t(e,"textHeight")&&(t.height=e.textHeight),_t(e,"textBackgroundColor")&&(t.backgroundColor=e.textBackgroundColor),_t(e,"textPadding")&&(t.padding=e.textPadding),_t(e,"textBorderColor")&&(t.borderColor=e.textBorderColor),_t(e,"textBorderWidth")&&(t.borderWidth=e.textBorderWidth),_t(e,"textBorderRadius")&&(t.borderRadius=e.textBorderRadius),_t(e,"textBoxShadowColor")&&(t.shadowColor=e.textBoxShadowColor),_t(e,"textBoxShadowBlur")&&(t.shadowBlur=e.textBoxShadowBlur),_t(e,"textBoxShadowOffsetX")&&(t.shadowOffsetX=e.textBoxShadowOffsetX),_t(e,"textBoxShadowOffsetY")&&(t.shadowOffsetY=e.textBoxShadowOffsetY))}function aR(t,e,n){var i=t;i.textPosition=i.textPosition||n.position||"inside",null!=n.offset&&(i.textOffset=n.offset),null!=n.rotation&&(i.textRotation=n.rotation),null!=n.distance&&(i.textDistance=n.distance);var r=i.textPosition.indexOf("inside")>=0,o=t.fill||"#000";sR(i,e);var a=null==i.textFill;return r?a&&(i.textFill=n.insideFill||"#fff",!i.textStroke&&n.insideStroke&&(i.textStroke=n.insideStroke),!i.textStroke&&(i.textStroke=o),null==i.textStrokeWidth&&(i.textStrokeWidth=2)):(a&&(i.textFill=t.fill||n.outsideFill||"#000"),!i.textStroke&&n.outsideStroke&&(i.textStroke=n.outsideStroke)),i.text=e.text,i.rich=e.rich,E(e.rich,(function(t){sR(t,t)})),i}function sR(t,e){e&&(_t(e,"fill")&&(t.textFill=e.fill),_t(e,"stroke")&&(t.textStroke=e.fill),_t(e,"lineWidth")&&(t.textStrokeWidth=e.lineWidth),_t(e,"font")&&(t.font=e.font),_t(e,"fontStyle")&&(t.fontStyle=e.fontStyle),_t(e,"fontWeight")&&(t.fontWeight=e.fontWeight),_t(e,"fontSize")&&(t.fontSize=e.fontSize),_t(e,"fontFamily")&&(t.fontFamily=e.fontFamily),_t(e,"align")&&(t.textAlign=e.align),_t(e,"verticalAlign")&&(t.textVerticalAlign=e.verticalAlign),_t(e,"lineHeight")&&(t.textLineHeight=e.lineHeight),_t(e,"width")&&(t.textWidth=e.width),_t(e,"height")&&(t.textHeight=e.height),_t(e,"backgroundColor")&&(t.textBackgroundColor=e.backgroundColor),_t(e,"padding")&&(t.textPadding=e.padding),_t(e,"borderColor")&&(t.textBorderColor=e.borderColor),_t(e,"borderWidth")&&(t.textBorderWidth=e.borderWidth),_t(e,"borderRadius")&&(t.textBorderRadius=e.borderRadius),_t(e,"shadowColor")&&(t.textBoxShadowColor=e.shadowColor),_t(e,"shadowBlur")&&(t.textBoxShadowBlur=e.shadowBlur),_t(e,"shadowOffsetX")&&(t.textBoxShadowOffsetX=e.shadowOffsetX),_t(e,"shadowOffsetY")&&(t.textBoxShadowOffsetY=e.shadowOffsetY),_t(e,"textShadowColor")&&(t.textShadowColor=e.textShadowColor),_t(e,"textShadowBlur")&&(t.textShadowBlur=e.textShadowBlur),_t(e,"textShadowOffsetX")&&(t.textShadowOffsetX=e.textShadowOffsetX),_t(e,"textShadowOffsetY")&&(t.textShadowOffsetY=e.textShadowOffsetY))}var lR={position:["x","y"],scale:["scaleX","scaleY"],origin:["originX","originY"]},uR=G(lR),hR=(V(mr,(function(t,e){return t[e]=1,t}),{}),mr.join(", "),["","style","shape","extra"]),cR=Vo();function pR(t,e,n,i,r){var o=t+"Animation",a=gh(t,i,r)||{},s=cR(e).userDuring;return a.duration>0&&(a.during=s?W(xR,{el:e,userDuring:s}):null,a.setToFinal=!0,a.scope=t),A(a,n[o]),a}function dR(t,e,n,i){var r=(i=i||{}).dataIndex,o=i.isInit,a=i.clearStyle,s=n.isAnimationEnabled(),l=cR(t),u=e.style;l.userDuring=e.during;var h={},c={};if(function(t,e,n){for(var i=0;i<uR.length;i++){var r=uR[i],o=lR[r],a=e[r];a&&(n[o[0]]=a[0],n[o[1]]=a[1])}for(i=0;i<mr.length;i++){var s=mr[i];null!=e[s]&&(n[s]=e[s])}}(0,e,c),bR("shape",e,c),bR("extra",e,c),!o&&s&&(function(t,e,n){for(var i=e.transition,r=yR(i)?mr:To(i||[]),o=0;o<r.length;o++){var a=r[o];if("style"!==a&&"shape"!==a&&"extra"!==a){var s=t[a];0,n[a]=s}}}(t,e,h),_R("shape",t,e,h),_R("extra",t,e,h),function(t,e,n,i){if(!n)return;var r,o=t.style;if(o){var a=n.transition,s=e.transition;if(a&&!yR(a)){var l=To(a);!r&&(r=i.style={});for(var u=0;u<l.length;u++){var h=o[f=l[u]];r[f]=h}}else if(t.getAnimationStyleProps&&(yR(s)||yR(a)||P(s,"style")>=0)){var c=t.getAnimationStyleProps(),p=c?c.style:null;if(p){!r&&(r=i.style={});var d=G(n);for(u=0;u<d.length;u++){var f;if(p[f=d[u]]){h=o[f];r[f]=h}}}}}}(t,e,u,h)),c.style=u,function(t,e,n){var i=e.style;if(!t.isGroup&&i){if(n){t.useStyle({});for(var r=t.animators,o=0;o<r.length;o++){var a=r[o];"style"===a.targetName&&a.changeTarget(t.style)}}t.setStyle(i)}e&&(e.style=null,e&&t.attr(e),e.style=i)}(t,c,a),function(t,e){_t(e,"silent")&&(t.silent=e.silent),_t(e,"ignore")&&(t.ignore=e.ignore),t instanceof Da&&_t(e,"invisible")&&(t.invisible=e.invisible);t instanceof ks&&_t(e,"autoBatch")&&(t.autoBatch=e.autoBatch)}(t,e),s)if(o){var p={};E(hR,(function(t){var n=t?e[t]:e;n&&n.enterFrom&&(t&&(p[t]=p[t]||{}),A(t?p[t]:p,n.enterFrom))}));var d=pR("enter",t,e,n,r);d.duration>0&&t.animateFrom(p,d)}else!function(t,e,n,i,r){if(r){var o=pR("update",t,e,i,n);o.duration>0&&t.animateFrom(r,o)}}(t,e,r||0,n,h);fR(t,e),u?t.dirty():t.markRedraw()}function fR(t,e){for(var n=cR(t).leaveToProps,i=0;i<hR.length;i++){var r=hR[i],o=r?e[r]:e;o&&o.leaveTo&&(n||(n=cR(t).leaveToProps={}),r&&(n[r]=n[r]||{}),A(r?n[r]:n,o.leaveTo))}}function gR(t,e,n,i){if(t){var r=t.parent,o=cR(t).leaveToProps;if(o){var a=pR("update",t,e,n,0);a.done=function(){r.remove(t),i&&i()},t.animateTo(o,a)}else r.remove(t),i&&i()}}function yR(t){return"all"===t}var vR={},mR={setTransform:function(t,e){return vR.el[t]=e,this},getTransform:function(t){return vR.el[t]},setShape:function(t,e){var n=vR.el;return(n.shape||(n.shape={}))[t]=e,n.dirtyShape&&n.dirtyShape(),this},getShape:function(t){var e=vR.el.shape;if(e)return e[t]},setStyle:function(t,e){var n=vR.el,i=n.style;return i&&(i[t]=e,n.dirtyStyle&&n.dirtyStyle()),this},getStyle:function(t){var e=vR.el.style;if(e)return e[t]},setExtra:function(t,e){return(vR.el.extra||(vR.el.extra={}))[t]=e,this},getExtra:function(t){var e=vR.el.extra;if(e)return e[t]}};function xR(){var t=this,e=t.el;if(e){var n=cR(e).userDuring,i=t.userDuring;n===i?(vR.el=e,i(mR)):t.el=t.userDuring=null}}function _R(t,e,n,i){var r=n[t];if(r){var o,a=e[t];if(a){var s=n.transition,l=r.transition;if(l)if(!o&&(o=i[t]={}),yR(l))A(o,a);else for(var u=To(l),h=0;h<u.length;h++){var c=a[d=u[h]];o[d]=c}else if(yR(s)||P(s,t)>=0){!o&&(o=i[t]={});var p=G(a);for(h=0;h<p.length;h++){var d;c=a[d=p[h]];wR(r[d],c)&&(o[d]=c)}}}}}function bR(t,e,n){var i=e[t];if(i)for(var r=n[t]={},o=G(i),a=0;a<o.length;a++){var s=o[a];r[s]=Pi(i[s])}}function wR(t,e){return N(t)?t!==e:null!=t&&isFinite(t)}var SR=Vo(),MR=["percent","easing","shape","style","extra"];function IR(t){t.stopAnimation("keyframe"),t.attr(SR(t))}function TR(t,e,n){if(n.isAnimationEnabled()&&e)if(Y(e))E(e,(function(e){TR(t,e,n)}));else{var i=e.keyframes,r=e.duration;if(n&&null==r){var o=gh("enter",n,0);r=o&&o.duration}if(i&&r){var a=SR(t);E(hR,(function(n){if(!n||t[n]){var o;i.sort((function(t,e){return t.percent-e.percent})),E(i,(function(i){var s=t.animators,l=n?i[n]:i;if(l){var u=G(l);if(n||(u=B(u,(function(t){return P(MR,t)<0}))),u.length){o||((o=t.animate(n,e.loop,!0)).scope="keyframe");for(var h=0;h<s.length;h++)s[h]!==o&&s[h].targetName===o.targetName&&s[h].stopTracks(u);n&&(a[n]=a[n]||{});var c=n?a[n]:a;E(u,(function(e){c[e]=((n?t[n]:t)||{})[e]})),o.whenWithKeys(r*i.percent,l,u,i.easing)}}})),o&&o.delay(e.delay||0).duration(r).start(e.easing)}}))}}}var CR="emphasis",DR="normal",AR="blur",kR="select",LR=[DR,CR,AR,kR],PR={normal:["itemStyle"],emphasis:[CR,"itemStyle"],blur:[AR,"itemStyle"],select:[kR,"itemStyle"]},OR={normal:["label"],emphasis:[CR,"label"],blur:[AR,"label"],select:[kR,"label"]},RR=["x","y"],NR={normal:{},emphasis:{},blur:{},select:{}},ER={cartesian2d:function(t){var e=t.master.getRect();return{coordSys:{type:"cartesian2d",x:e.x,y:e.y,width:e.width,height:e.height},api:{coord:function(e){return t.dataToPoint(e)},size:W(QO,t)}}},geo:function(t){var e=t.getBoundingRect();return{coordSys:{type:"geo",x:e.x,y:e.y,width:e.width,height:e.height,zoom:t.getZoom()},api:{coord:function(e){return t.dataToPoint(e)},size:W(tR,t)}}},single:function(t){var e=t.getRect();return{coordSys:{type:"singleAxis",x:e.x,y:e.y,width:e.width,height:e.height},api:{coord:function(e){return t.dataToPoint(e)},size:W(eR,t)}}},polar:function(t){var e=t.getRadiusAxis(),n=t.getAngleAxis(),i=e.getExtent();return i[0]>i[1]&&i.reverse(),{coordSys:{type:"polar",cx:t.cx,cy:t.cy,r:i[1],r0:i[0]},api:{coord:function(i){var r=e.dataToRadius(i[0]),o=n.dataToAngle(i[1]),a=t.coordToPoint([r,o]);return a.push(r,o*Math.PI/180),a},size:W(nR,t)}}},calendar:function(t){var e=t.getRect(),n=t.getRangeInfo();return{coordSys:{type:"calendar",x:e.x,y:e.y,width:e.width,height:e.height,cellWidth:t.getCellWidth(),cellHeight:t.getCellHeight(),rangeInfo:{start:n.start,end:n.end,weeks:n.weeks,dayCount:n.allDay}},api:{coord:function(e,n){return t.dataToPoint(e,n)}}}}};function zR(t){return t instanceof ks}function VR(t){return t instanceof Da}var BR=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n,i){this._progressiveEls=null;var r=this._data,o=t.getData(),a=this.group,s=YR(t,o,e,n);r||a.removeAll(),o.diff(r).add((function(e){UR(n,null,e,s(e,i),t,a,o)})).remove((function(e){var n=r.getItemGraphicEl(e);n&&gR(n,$O(n).option,t)})).update((function(e,l){var u=r.getItemGraphicEl(l);UR(n,u,e,s(e,i),t,a,o)})).execute();var l=t.get("clip",!0)?PS(t.coordinateSystem,!1,t):null;l?a.setClipPath(l):a.removeClipPath(),this._data=o},e.prototype.incrementalPrepareRender=function(t,e,n){this.group.removeAll(),this._data=null},e.prototype.incrementalRender=function(t,e,n,i,r){var o=e.getData(),a=YR(e,o,n,i),s=this._progressiveEls=[];function l(t){t.isGroup||(t.incremental=!0,t.ensureState("emphasis").hoverLayer=!0)}for(var u=t.start;u<t.end;u++){var h=UR(null,null,u,a(u,r),e,this.group,o);h&&(h.traverse(l),s.push(h))}},e.prototype.eachRendered=function(t){Jh(this._progressiveEls||this.group,t)},e.prototype.filterForExposedEvent=function(t,e,n,i){var r=e.element;if(null==r||n.name===r)return!0;for(;(n=n.__hostTarget||n.parent)&&n!==this.group;)if(n.name===r)return!0;return!1},e.type="custom",e}(Og);function FR(t){var e,n=t.type;if("path"===n){var i=t.shape,r=null!=i.width&&null!=i.height?{x:i.x||0,y:i.y||0,width:i.width,height:i.height}:null,o=nN(i);e=Ph(o,null,r,i.layout||"center"),$O(e).customPathData=o}else if("image"===n)e=new Ns({}),$O(e).customImagePath=t.style.image;else if("text"===n)e=new Xs({});else if("group"===n)e=new Br;else{if("compoundPath"===n)throw new Error('"compoundPath" is not supported yet.');var a=Lh(n);if(!a){var s="";0,wo(s)}e=new a}return $O(e).customGraphicType=n,e.name=t.name,e.z2EmphasisLift=1,e.z2SelectLift=1,e}function GR(t,e,n,i,r,o,a){IR(e);var s=r&&r.normal.cfg;s&&e.setTextConfig(s),i&&null==i.transition&&(i.transition=RR);var l=i&&i.style;if(l){if("text"===e.type){var u=l;_t(u,"textFill")&&(u.fill=u.textFill),_t(u,"textStroke")&&(u.stroke=u.textStroke)}var h=void 0,c=zR(e)?l.decal:null;t&&c&&(c.dirty=!0,h=mv(c,t)),l.__decalPattern=h}VR(e)&&(l&&(h=l.__decalPattern)&&(l.decal=h));dR(e,i,o,{dataIndex:n,isInit:a,clearStyle:!0}),TR(e,i.keyframeAnimation,o)}function WR(t,e,n,i,r){var o=e.isGroup?null:e,a=r&&r[t].cfg;if(o){var s=o.ensureState(t);if(!1===i){var l=o.getState(t);l&&(l.style=null)}else s.style=i||null;a&&(s.textConfig=a),kl(o)}}function HR(t,e,n){var i=n===DR,r=i?e:KR(e,n),o=r?r.z2:null;null!=o&&((i?t:t.ensureState(n)).z2=o||0)}function YR(t,e,n,i){var r=t.get("renderItem"),o=t.coordinateSystem,a={};o&&(a=o.prepareCustoms?o.prepareCustoms(o):ER[o.type](o));for(var s,l,u=k({getWidth:i.getWidth,getHeight:i.getHeight,getZr:i.getZr,getDevicePixelRatio:i.getDevicePixelRatio,value:function(t,n){return null==n&&(n=s),e.getStore().get(e.getDimensionIndex(t||0),n)},style:function(n,i){0;null==i&&(i=s);var r=e.getItemVisual(i,"style"),o=r&&r.fill,a=r&&r.opacity,l=m(i,DR).getItemStyle();null!=o&&(l.fill=o),null!=a&&(l.opacity=a);var u={inheritColor:U(o)?o:"#000"},h=x(i,DR),c=oc(h,null,u,!1,!0);c.text=h.getShallow("show")?rt(t.getFormattedLabel(i,DR),pS(e,i)):null;var p=ac(h,u,!1);return b(n,l),l=aR(l,c,p),n&&_(l,n),l.legacy=!0,l},ordinalRawValue:function(t,n){null==n&&(n=s),t=t||0;var i=e.getDimensionInfo(t);if(!i){var r=e.getDimensionIndex(t);return r>=0?e.getStore().get(r,n):void 0}var o=e.get(i.name,n),a=i&&i.ordinalMeta;return a?a.categories[o]:o},styleEmphasis:function(n,i){0;null==i&&(i=s);var r=m(i,CR).getItemStyle(),o=x(i,CR),a=oc(o,null,null,!0,!0);a.text=o.getShallow("show")?ot(t.getFormattedLabel(i,CR),t.getFormattedLabel(i,DR),pS(e,i)):null;var l=ac(o,null,!0);return b(n,r),r=aR(r,a,l),n&&_(r,n),r.legacy=!0,r},visual:function(t,n){if(null==n&&(n=s),_t(qO,t)){var i=e.getItemVisual(n,"style");return i?i[qO[t]]:null}if(_t(KO,t))return e.getItemVisual(n,t)},barLayout:function(t){if("cartesian2d"===o.type){return function(t){var e=[],n=t.axis,i="axis0";if("category"===n.type){for(var r=n.getBandWidth(),o=0;o<t.count;o++)e.push(k({bandWidth:r,axisKey:i,stackId:Fx+o},t));var a=Xx(e),s=[];for(o=0;o<t.count;o++){var l=a[i][Fx+o];l.offsetCenter=l.offset+l.width/2,s.push(l)}return s}}(k({axis:o.getBaseAxis()},t))}},currentSeriesIndices:function(){return n.getCurrentSeriesIndices()},font:function(t){return cc(t,n)}},a.api||{}),h={context:{},seriesId:t.id,seriesName:t.name,seriesIndex:t.seriesIndex,coordSys:a.coordSys,dataInsideLength:e.count(),encode:XR(t.getData())},c={},p={},d={},f={},g=0;g<LR.length;g++){var y=LR[g];d[y]=t.getModel(PR[y]),f[y]=t.getModel(OR[y])}function v(t){return t===s?l||(l=e.getItemModel(t)):e.getItemModel(t)}function m(t,n){return e.hasItemOption?t===s?c[n]||(c[n]=v(t).getModel(PR[n])):v(t).getModel(PR[n]):d[n]}function x(t,n){return e.hasItemOption?t===s?p[n]||(p[n]=v(t).getModel(OR[n])):v(t).getModel(OR[n]):f[n]}return function(t,n){return s=t,l=null,c={},p={},r&&r(k({dataIndexInside:t,dataIndex:e.getRawIndex(t),actionType:n?n.type:null},h),u)};function _(t,e){for(var n in e)_t(e,n)&&(t[n]=e[n])}function b(t,e){t&&(t.textFill&&(e.textFill=t.textFill),t.textPosition&&(e.textPosition=t.textPosition))}}function XR(t){var e={};return E(t.dimensions,(function(n){var i=t.getDimensionInfo(n);if(!i.isExtraCoord){var r=i.coordDim;(e[r]=e[r]||[])[i.coordDimIndex]=t.getDimensionIndex(n)}})),e}function UR(t,e,n,i,r,o,a){if(i){var s=ZR(t,e,n,i,r,o);return s&&a.setItemGraphicEl(n,s),s&&Zl(s,i.focus,i.blurScope,i.emphasisDisabled),s}o.remove(e)}function ZR(t,e,n,i,r,o){var a=-1,s=e;e&&jR(e,i,r)&&(a=P(o.childrenRef(),e),e=null);var l,u,h=!e,c=e;c?c.clearStates():(c=FR(i),s&&(l=s,(u=c).copyTransform(l),VR(u)&&VR(l)&&(u.setStyle(l.style),u.z=l.z,u.z2=l.z2,u.zlevel=l.zlevel,u.invisible=l.invisible,u.ignore=l.ignore,zR(u)&&zR(l)&&u.setShape(l.shape)))),!1===i.morph?c.disableMorphing=!0:c.disableMorphing&&(c.disableMorphing=!1),NR.normal.cfg=NR.normal.conOpt=NR.emphasis.cfg=NR.emphasis.conOpt=NR.blur.cfg=NR.blur.conOpt=NR.select.cfg=NR.select.conOpt=null,NR.isLegacy=!1,function(t,e,n,i,r,o){if(t.isGroup)return;qR(n,null,o),qR(n,CR,o);var a=o.normal.conOpt,s=o.emphasis.conOpt,l=o.blur.conOpt,u=o.select.conOpt;if(null!=a||null!=s||null!=u||null!=l){var h=t.getTextContent();if(!1===a)h&&t.removeTextContent();else{a=o.normal.conOpt=a||{type:"text"},h?h.clearStates():(h=FR(a),t.setTextContent(h)),GR(null,h,e,a,null,i,r);for(var c=a&&a.style,p=0;p<LR.length;p++){var d=LR[p];if(d!==DR){var f=o[d].conOpt;WR(d,h,0,$R(a,f,d),null)}}c?h.dirty():h.markRedraw()}}}(c,n,i,r,h,NR),function(t,e,n,i,r){var o=n.clipPath;if(!1===o)t&&t.getClipPath()&&t.removeClipPath();else if(o){var a=t.getClipPath();a&&jR(a,o,i)&&(a=null),a||(a=FR(o),t.setClipPath(a)),GR(null,a,e,o,null,i,r)}}(c,n,i,r,h),GR(t,c,n,i,NR,r,h),_t(i,"info")&&($O(c).info=i.info);for(var p=0;p<LR.length;p++){var d=LR[p];if(d!==DR){var f=KR(i,d);WR(d,c,0,$R(i,f,d),NR)}}return function(t,e,n){if(!t.isGroup){var i=t,r=n.currentZ,o=n.currentZLevel;i.z=r,i.zlevel=o;var a=e.z2;null!=a&&(i.z2=a||0);for(var s=0;s<LR.length;s++)HR(i,e,LR[s])}}(c,i,r),"group"===i.type&&function(t,e,n,i,r){var o=i.children,a=o?o.length:0,s=i.$mergeChildren,l="byName"===s||i.diffChildrenByName,u=!1===s;if(!a&&!l&&!u)return;if(l)return h={api:t,oldChildren:e.children()||[],newChildren:o||[],dataIndex:n,seriesModel:r,group:e},void new Gm(h.oldChildren,h.newChildren,QR,QR,h).add(tN).update(tN).remove(eN).execute();var h;u&&e.removeAll();for(var c=0;c<a;c++){var p=o[c],d=e.childAt(c);p?(null==p.ignore&&(p.ignore=!1),ZR(t,d,n,p,r,e)):d.ignore=!0}for(var f=e.childCount()-1;f>=c;f--){var g=e.childAt(f);JR(e,g,r)}}(t,c,n,i,r),a>=0?o.replaceAt(c,a):o.add(c),c}function jR(t,e,n){var i,r=$O(t),o=e.type,a=e.shape,s=e.style;return n.isUniversalTransitionEnabled()||null!=o&&o!==r.customGraphicType||"path"===o&&((i=a)&&(_t(i,"pathData")||_t(i,"d")))&&nN(a)!==r.customPathData||"image"===o&&_t(s,"image")&&s.image!==r.customImagePath}function qR(t,e,n){var i=e?KR(t,e):t,r=e?$R(t,i,CR):t.style,o=t.type,a=i?i.textConfig:null,s=t.textContent,l=s?e?KR(s,e):s:null;if(r&&(n.isLegacy||iR(r,o,!!a,!!l))){n.isLegacy=!0;var u=rR(r,o,!e);!a&&u.textConfig&&(a=u.textConfig),!l&&u.textContent&&(l=u.textContent)}if(!e&&l){var h=l;!h.type&&(h.type="text")}var c=e?n[e]:n.normal;c.cfg=a,c.conOpt=l}function KR(t,e){return e?t?t[e]:null:t}function $R(t,e,n){var i=e&&e.style;return null==i&&n===CR&&t&&(i=t.styleEmphasis),i}function JR(t,e,n){e&&gR(e,$O(t).option,n)}function QR(t,e){var n=t&&t.name;return null!=n?n:"e\0\0"+e}function tN(t,e){var n=this.context,i=null!=t?n.newChildren[t]:null,r=null!=e?n.oldChildren[e]:null;ZR(n.api,r,n.dataIndex,i,n.seriesModel,n.group)}function eN(t){var e=this.context,n=e.oldChildren[t];n&&gR(n,$O(n).option,e.seriesModel)}function nN(t){return t&&(t.pathData||t.d)}var iN=Vo(),rN=T,oN=W,aN=function(){function t(){this._dragging=!1,this.animationThreshold=15}return t.prototype.render=function(t,e,n,i){var r=e.get("value"),o=e.get("status");if(this._axisModel=t,this._axisPointerModel=e,this._api=n,i||this._lastValue!==r||this._lastStatus!==o){this._lastValue=r,this._lastStatus=o;var a=this._group,s=this._handle;if(!o||"hide"===o)return a&&a.hide(),void(s&&s.hide());a&&a.show(),s&&s.show();var l={};this.makeElOption(l,r,t,e,n);var u=l.graphicKey;u!==this._lastGraphicKey&&this.clear(n),this._lastGraphicKey=u;var h=this._moveAnimation=this.determineAnimation(t,e);if(a){var c=H(sN,e,h);this.updatePointerEl(a,l,c),this.updateLabelEl(a,l,c,e)}else a=this._group=new Br,this.createPointerEl(a,l,t,e),this.createLabelEl(a,l,t,e),n.getZr().add(a);cN(a,e,!0),this._renderHandle(r)}},t.prototype.remove=function(t){this.clear(t)},t.prototype.dispose=function(t){this.clear(t)},t.prototype.determineAnimation=function(t,e){var n=e.get("animation"),i=t.axis,r="category"===i.type,o=e.get("snap");if(!o&&!r)return!1;if("auto"===n||null==n){var a=this.animationThreshold;if(r&&i.getBandWidth()>a)return!0;if(o){var s=wI(t).seriesDataCount,l=i.getExtent();return Math.abs(l[0]-l[1])/s>a}return!1}return!0===n},t.prototype.makeElOption=function(t,e,n,i,r){},t.prototype.createPointerEl=function(t,e,n,i){var r=e.pointer;if(r){var o=iN(t).pointerEl=new Qh[r.type](rN(e.pointer));t.add(o)}},t.prototype.createLabelEl=function(t,e,n,i){if(e.label){var r=iN(t).labelEl=new Xs(rN(e.label));t.add(r),uN(r,i)}},t.prototype.updatePointerEl=function(t,e,n){var i=iN(t).pointerEl;i&&e.pointer&&(i.setStyle(e.pointer.style),n(i,{shape:e.pointer.shape}))},t.prototype.updateLabelEl=function(t,e,n,i){var r=iN(t).labelEl;r&&(r.setStyle(e.label.style),n(r,{x:e.label.x,y:e.label.y}),uN(r,i))},t.prototype._renderHandle=function(t){if(!this._dragging&&this.updateHandleTransform){var e,n=this._axisPointerModel,i=this._api.getZr(),r=this._handle,o=n.getModel("handle"),a=n.get("status");if(!o.get("show")||!a||"hide"===a)return r&&i.remove(r),void(this._handle=null);this._handle||(e=!0,r=this._handle=Uh(o.get("icon"),{cursor:"move",draggable:!0,onmousemove:function(t){de(t.event)},onmousedown:oN(this._onHandleDragMove,this,0,0),drift:oN(this._onHandleDragMove,this),ondragend:oN(this._onHandleDragEnd,this)}),i.add(r)),cN(r,n,!1),r.setStyle(o.getItemStyle(null,["color","borderColor","borderWidth","opacity","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY"]));var s=o.get("size");Y(s)||(s=[s,s]),r.scaleX=s[0]/2,r.scaleY=s[1]/2,Hg(this,"_doDispatchAxisPointer",o.get("throttle")||0,"fixRate"),this._moveHandleToValue(t,e)}},t.prototype._moveHandleToValue=function(t,e){sN(this._axisPointerModel,!e&&this._moveAnimation,this._handle,hN(this.getHandleTransform(t,this._axisModel,this._axisPointerModel)))},t.prototype._onHandleDragMove=function(t,e){var n=this._handle;if(n){this._dragging=!0;var i=this.updateHandleTransform(hN(n),[t,e],this._axisModel,this._axisPointerModel);this._payloadInfo=i,n.stopAnimation(),n.attr(hN(i)),iN(n).lastProp=null,this._doDispatchAxisPointer()}},t.prototype._doDispatchAxisPointer=function(){if(this._handle){var t=this._payloadInfo,e=this._axisModel;this._api.dispatchAction({type:"updateAxisPointer",x:t.cursorPoint[0],y:t.cursorPoint[1],tooltipOption:t.tooltipOption,axesInfo:[{axisDim:e.axis.dim,axisIndex:e.componentIndex}]})}},t.prototype._onHandleDragEnd=function(){if(this._dragging=!1,this._handle){var t=this._axisPointerModel.get("value");this._moveHandleToValue(t),this._api.dispatchAction({type:"hideTip"})}},t.prototype.clear=function(t){this._lastValue=null,this._lastStatus=null;var e=t.getZr(),n=this._group,i=this._handle;e&&n&&(this._lastGraphicKey=null,n&&e.remove(n),i&&e.remove(i),this._group=null,this._handle=null,this._payloadInfo=null),Yg(this,"_doDispatchAxisPointer")},t.prototype.doClear=function(){},t.prototype.buildLabel=function(t,e,n){return{x:t[n=n||0],y:t[1-n],width:e[n],height:e[1-n]}},t}();function sN(t,e,n,i){lN(iN(n).lastProp,i)||(iN(n).lastProp=i,e?vh(n,i,t):(n.stopAnimation(),n.attr(i)))}function lN(t,e){if(q(t)&&q(e)){var n=!0;return E(e,(function(e,i){n=n&&lN(t[i],e)})),!!n}return t===e}function uN(t,e){t[e.get(["label","show"])?"show":"hide"]()}function hN(t){return{x:t.x||0,y:t.y||0,rotation:t.rotation||0}}function cN(t,e,n){var i=e.get("z"),r=e.get("zlevel");t&&t.traverse((function(t){"group"!==t.type&&(null!=i&&(t.z=i),null!=r&&(t.zlevel=r),t.silent=n)}))}function pN(t){var e,n=t.get("type"),i=t.getModel(n+"Style");return"line"===n?(e=i.getLineStyle()).fill=null:"shadow"===n&&((e=i.getAreaStyle()).stroke=null),e}function dN(t,e,n,i,r){var o=fN(n.get("value"),e.axis,e.ecModel,n.get("seriesDataIndices"),{precision:n.get(["label","precision"]),formatter:n.get(["label","formatter"])}),a=n.getModel("label"),s=vp(a.get("padding")||0),l=a.getFont(),u=Sr(o,l),h=r.position,c=u.width+s[1]+s[3],p=u.height+s[0]+s[2],d=r.align;"right"===d&&(h[0]-=c),"center"===d&&(h[0]-=c/2);var f=r.verticalAlign;"bottom"===f&&(h[1]-=p),"middle"===f&&(h[1]-=p/2),function(t,e,n,i){var r=i.getWidth(),o=i.getHeight();t[0]=Math.min(t[0]+e,r)-e,t[1]=Math.min(t[1]+n,o)-n,t[0]=Math.max(t[0],0),t[1]=Math.max(t[1],0)}(h,c,p,i);var g=a.get("backgroundColor");g&&"auto"!==g||(g=e.get(["axisLine","lineStyle","color"])),t.label={x:h[0],y:h[1],style:oc(a,{text:o,font:l,fill:a.getTextColor(),padding:s,backgroundColor:g}),z2:10}}function fN(t,e,n,i,r){t=e.scale.parse(t);var o=e.scale.getLabel({value:t},{precision:r.precision}),a=r.formatter;if(a){var s={value:S_(e,{value:t}),axisDimension:e.dim,axisIndex:e.index,seriesData:[]};E(i,(function(t){var e=n.getSeriesByIndex(t.seriesIndex),i=t.dataIndexInside,r=e&&e.getDataParams(i);r&&s.seriesData.push(r)})),U(a)?o=a.replace("{value}",o):X(a)&&(o=a(s))}return o}function gN(t,e,n){var i=[1,0,0,1,0,0];return Se(i,i,n.rotation),we(i,i,n.position),Fh([t.dataToCoord(e),(n.labelOffset||0)+(n.labelDirection||1)*(n.labelMargin||0)],i)}function yN(t,e,n,i,r,o){var a=dI.innerTextLayout(n.rotation,0,n.labelDirection);n.labelMargin=r.get(["label","margin"]),dN(e,i,r,o,{position:gN(i.axis,t,n),align:a.textAlign,verticalAlign:a.textVerticalAlign})}function vN(t,e,n){return{x1:t[n=n||0],y1:t[1-n],x2:e[n],y2:e[1-n]}}function mN(t,e,n){return{x:t[n=n||0],y:t[1-n],width:e[n],height:e[1-n]}}function xN(t,e,n,i,r,o){return{cx:t,cy:e,r0:n,r:i,startAngle:r,endAngle:o,clockwise:!0}}var _N=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.makeElOption=function(t,e,n,i,r){var o=n.axis,a=o.grid,s=i.get("type"),l=bN(a,o).getOtherAxis(o).getGlobalExtent(),u=o.toGlobalCoord(o.dataToCoord(e,!0));if(s&&"none"!==s){var h=pN(i),c=wN[s](o,u,l);c.style=h,t.graphicKey=c.type,t.pointer=c}yN(e,t,iI(a.model,n),n,i,r)},e.prototype.getHandleTransform=function(t,e,n){var i=iI(e.axis.grid.model,e,{labelInside:!1});i.labelMargin=n.get(["handle","margin"]);var r=gN(e.axis,t,i);return{x:r[0],y:r[1],rotation:i.rotation+(i.labelDirection<0?Math.PI:0)}},e.prototype.updateHandleTransform=function(t,e,n,i){var r=n.axis,o=r.grid,a=r.getGlobalExtent(!0),s=bN(o,r).getOtherAxis(r).getGlobalExtent(),l="x"===r.dim?0:1,u=[t.x,t.y];u[l]+=e[l],u[l]=Math.min(a[1],u[l]),u[l]=Math.max(a[0],u[l]);var h=(s[1]+s[0])/2,c=[h,h];c[l]=u[l];return{x:u[0],y:u[1],rotation:t.rotation,cursorPoint:c,tooltipOption:[{verticalAlign:"middle"},{align:"center"}][l]}},e}(aN);function bN(t,e){var n={};return n[e.dim+"AxisIndex"]=e.index,t.getCartesian(n)}var wN={line:function(t,e,n){return{type:"Line",subPixelOptimize:!0,shape:vN([e,n[0]],[e,n[1]],SN(t))}},shadow:function(t,e,n){var i=Math.max(1,t.getBandWidth()),r=n[1]-n[0];return{type:"Rect",shape:mN([e-i/2,n[0]],[i,r],SN(t))}}};function SN(t){return"x"===t.dim?0:1}var MN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="axisPointer",e.defaultOption={show:"auto",z:50,type:"line",snap:!1,triggerTooltip:!0,triggerEmphasis:!0,value:null,status:null,link:[],animation:null,animationDurationUpdate:200,lineStyle:{color:"#B9BEC9",width:1,type:"dashed"},shadowStyle:{color:"rgba(210,219,238,0.2)"},label:{show:!0,formatter:null,precision:"auto",margin:3,color:"#fff",padding:[5,7,5,7],backgroundColor:"auto",borderColor:null,borderWidth:0,borderRadius:3},handle:{show:!1,icon:"M10.7,11.9v-1.3H9.3v1.3c-4.9,0.3-8.8,4.4-8.8,9.4c0,5,3.9,9.1,8.8,9.4h1.3c4.9-0.3,8.8-4.4,8.8-9.4C19.5,16.3,15.6,12.2,10.7,11.9z M13.3,24.4H6.7v-1.2h6.6z M13.3,22H6.7v-1.2h6.6z M13.3,19.6H6.7v-1.2h6.6z",size:45,margin:50,color:"#333",shadowBlur:3,shadowColor:"#aaa",shadowOffsetX:0,shadowOffsetY:2,throttle:40}},e}(zp),IN=Vo(),TN=E;function CN(t,e,n){if(!r.node){var i=e.getZr();IN(i).records||(IN(i).records={}),function(t,e){if(IN(t).initialized)return;function n(n,i){t.on(n,(function(n){var r=function(t){var e={showTip:[],hideTip:[]},n=function(i){var r=e[i.type];r?r.push(i):(i.dispatchAction=n,t.dispatchAction(i))};return{dispatchAction:n,pendings:e}}(e);TN(IN(t).records,(function(t){t&&i(t,n,r.dispatchAction)})),function(t,e){var n,i=t.showTip.length,r=t.hideTip.length;i?n=t.showTip[i-1]:r&&(n=t.hideTip[r-1]);n&&(n.dispatchAction=null,e.dispatchAction(n))}(r.pendings,e)}))}IN(t).initialized=!0,n("click",H(AN,"click")),n("mousemove",H(AN,"mousemove")),n("globalout",DN)}(i,e),(IN(i).records[t]||(IN(i).records[t]={})).handler=n}}function DN(t,e,n){t.handler("leave",null,n)}function AN(t,e,n,i){e.handler(t,n,i)}function kN(t,e){if(!r.node){var n=e.getZr();(IN(n).records||{})[t]&&(IN(n).records[t]=null)}}var LN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i=e.getComponent("tooltip"),r=t.get("triggerOn")||i&&i.get("triggerOn")||"mousemove|click";CN("axisPointer",n,(function(t,e,n){"none"!==r&&("leave"===t||r.indexOf(t)>=0)&&n({type:"updateAxisPointer",currTrigger:t,x:e&&e.offsetX,y:e&&e.offsetY})}))},e.prototype.remove=function(t,e){kN("axisPointer",e)},e.prototype.dispose=function(t,e){kN("axisPointer",e)},e.type="axisPointer",e}(Ag);function PN(t,e){var n,i=[],r=t.seriesIndex;if(null==r||!(n=e.getSeriesByIndex(r)))return{point:[]};var o=n.getData(),a=zo(o,t);if(null==a||a<0||Y(a))return{point:[]};var s=o.getItemGraphicEl(a),l=n.coordinateSystem;if(n.getTooltipPosition)i=n.getTooltipPosition(a)||[];else if(l&&l.dataToPoint)if(t.isStacked){var u=l.getBaseAxis(),h=l.getOtherAxis(u).dim,c=u.dim,p="x"===h||"radius"===h?1:0,d=o.mapDimension(c),f=[];f[p]=o.get(d,a),f[1-p]=o.get(o.getCalculationInfo("stackResultDimension"),a),i=l.dataToPoint(f)||[]}else i=l.dataToPoint(o.getValues(z(l.dimensions,(function(t){return o.mapDimension(t)})),a))||[];else if(s){var g=s.getBoundingRect().clone();g.applyTransform(s.transform),i=[g.x+g.width/2,g.y+g.height/2]}return{point:i,el:s}}var ON=Vo();function RN(t,e,n){var i=t.currTrigger,r=[t.x,t.y],o=t,a=t.dispatchAction||W(n.dispatchAction,n),s=e.getComponent("axisPointer").coordSysAxesInfo;if(s){BN(r)&&(r=PN({seriesIndex:o.seriesIndex,dataIndex:o.dataIndex},e).point);var l=BN(r),u=o.axesInfo,h=s.axesInfo,c="leave"===i||BN(r),p={},d={},f={list:[],map:{}},g={showPointer:H(EN,d),showTooltip:H(zN,f)};E(s.coordSysMap,(function(t,e){var n=l||t.containPoint(r);E(s.coordSysAxesInfo[e],(function(t,e){var i=t.axis,o=function(t,e){for(var n=0;n<(t||[]).length;n++){var i=t[n];if(e.axis.dim===i.axisDim&&e.axis.model.componentIndex===i.axisIndex)return i}}(u,t);if(!c&&n&&(!u||o)){var a=o&&o.value;null!=a||l||(a=i.pointToData(r)),null!=a&&NN(t,a,g,!1,p)}}))}));var y={};return E(h,(function(t,e){var n=t.linkGroup;n&&!d[e]&&E(n.axesInfo,(function(e,i){var r=d[i];if(e!==t&&r){var o=r.value;n.mapper&&(o=t.axis.scale.parse(n.mapper(o,VN(e),VN(t)))),y[t.key]=o}}))})),E(y,(function(t,e){NN(h[e],t,g,!0,p)})),function(t,e,n){var i=n.axesInfo=[];E(e,(function(e,n){var r=e.axisPointerModel.option,o=t[n];o?(!e.useHandle&&(r.status="show"),r.value=o.value,r.seriesDataIndices=(o.payloadBatch||[]).slice()):!e.useHandle&&(r.status="hide"),"show"===r.status&&i.push({axisDim:e.axis.dim,axisIndex:e.axis.model.componentIndex,value:r.value})}))}(d,h,p),function(t,e,n,i){if(BN(e)||!t.list.length)return void i({type:"hideTip"});var r=((t.list[0].dataByAxis[0]||{}).seriesDataIndices||[])[0]||{};i({type:"showTip",escapeConnect:!0,x:e[0],y:e[1],tooltipOption:n.tooltipOption,position:n.position,dataIndexInside:r.dataIndexInside,dataIndex:r.dataIndex,seriesIndex:r.seriesIndex,dataByCoordSys:t.list})}(f,r,t,a),function(t,e,n){var i=n.getZr(),r="axisPointerLastHighlights",o=ON(i)[r]||{},a=ON(i)[r]={};E(t,(function(t,e){var n=t.axisPointerModel.option;"show"===n.status&&t.triggerEmphasis&&E(n.seriesDataIndices,(function(t){var e=t.seriesIndex+" | "+t.dataIndex;a[e]=t}))}));var s=[],l=[];E(o,(function(t,e){!a[e]&&l.push(t)})),E(a,(function(t,e){!o[e]&&s.push(t)})),l.length&&n.dispatchAction({type:"downplay",escapeConnect:!0,notBlur:!0,batch:l}),s.length&&n.dispatchAction({type:"highlight",escapeConnect:!0,notBlur:!0,batch:s})}(h,0,n),p}}function NN(t,e,n,i,r){var o=t.axis;if(!o.scale.isBlank()&&o.containData(e))if(t.involveSeries){var a=function(t,e){var n=e.axis,i=n.dim,r=t,o=[],a=Number.MAX_VALUE,s=-1;return E(e.seriesModels,(function(e,l){var u,h,c=e.getData().mapDimensionsAll(i);if(e.getAxisTooltipData){var p=e.getAxisTooltipData(c,t,n);h=p.dataIndices,u=p.nestestValue}else{if(!(h=e.getData().indicesOfNearest(c[0],t,"category"===n.type?.5:null)).length)return;u=e.getData().get(c[0],h[0])}if(null!=u&&isFinite(u)){var d=t-u,f=Math.abs(d);f<=a&&((f<a||d>=0&&s<0)&&(a=f,s=d,r=u,o.length=0),E(h,(function(t){o.push({seriesIndex:e.seriesIndex,dataIndexInside:t,dataIndex:e.getData().getRawIndex(t)})})))}})),{payloadBatch:o,snapToValue:r}}(e,t),s=a.payloadBatch,l=a.snapToValue;s[0]&&null==r.seriesIndex&&A(r,s[0]),!i&&t.snap&&o.containData(l)&&null!=l&&(e=l),n.showPointer(t,e,s),n.showTooltip(t,a,l)}else n.showPointer(t,e)}function EN(t,e,n,i){t[e.key]={value:n,payloadBatch:i}}function zN(t,e,n,i){var r=n.payloadBatch,o=e.axis,a=o.model,s=e.axisPointerModel;if(e.triggerTooltip&&r.length){var l=e.coordSys.model,u=MI(l),h=t.map[u];h||(h=t.map[u]={coordSysId:l.id,coordSysIndex:l.componentIndex,coordSysType:l.type,coordSysMainType:l.mainType,dataByAxis:[]},t.list.push(h)),h.dataByAxis.push({axisDim:o.dim,axisIndex:a.componentIndex,axisType:a.type,axisId:a.id,value:i,valueLabelOpt:{precision:s.get(["label","precision"]),formatter:s.get(["label","formatter"])},seriesDataIndices:r.slice()})}}function VN(t){var e=t.axis.model,n={},i=n.axisDim=t.axis.dim;return n.axisIndex=n[i+"AxisIndex"]=e.componentIndex,n.axisName=n[i+"AxisName"]=e.name,n.axisId=n[i+"AxisId"]=e.id,n}function BN(t){return!t||null==t[0]||isNaN(t[0])||null==t[1]||isNaN(t[1])}function FN(t){TI.registerAxisPointerClass("CartesianAxisPointer",_N),t.registerComponentModel(MN),t.registerComponentView(LN),t.registerPreprocessor((function(t){if(t){(!t.axisPointer||0===t.axisPointer.length)&&(t.axisPointer={});var e=t.axisPointer.link;e&&!Y(e)&&(t.axisPointer.link=[e])}})),t.registerProcessor(t.PRIORITY.PROCESSOR.STATISTIC,(function(t,e){t.getComponent("axisPointer").coordSysAxesInfo=xI(t,e)})),t.registerAction({type:"updateAxisPointer",event:"updateAxisPointer",update:":updateAxisPointer"},RN)}var GN=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.makeElOption=function(t,e,n,i,r){var o=n.axis;"angle"===o.dim&&(this.animationThreshold=Math.PI/18);var a=o.polar,s=a.getOtherAxis(o).getExtent(),l=o.dataToCoord(e),u=i.get("type");if(u&&"none"!==u){var h=pN(i),c=WN[u](o,a,l,s);c.style=h,t.graphicKey=c.type,t.pointer=c}var p=function(t,e,n,i,r){var o=e.axis,a=o.dataToCoord(t),s=i.getAngleAxis().getExtent()[0];s=s/180*Math.PI;var l,u,h,c=i.getRadiusAxis().getExtent();if("radius"===o.dim){var p=[1,0,0,1,0,0];Se(p,p,s),we(p,p,[i.cx,i.cy]),l=Fh([a,-r],p);var d=e.getModel("axisLabel").get("rotate")||0,f=dI.innerTextLayout(s,d*Math.PI/180,-1);u=f.textAlign,h=f.textVerticalAlign}else{var g=c[1];l=i.coordToPoint([g+r,a]);var y=i.cx,v=i.cy;u=Math.abs(l[0]-y)/g<.3?"center":l[0]>y?"left":"right",h=Math.abs(l[1]-v)/g<.3?"middle":l[1]>v?"top":"bottom"}return{position:l,align:u,verticalAlign:h}}(e,n,0,a,i.get(["label","margin"]));dN(t,n,i,r,p)},e}(aN);var WN={line:function(t,e,n,i){return"angle"===t.dim?{type:"Line",shape:vN(e.coordToPoint([i[0],n]),e.coordToPoint([i[1],n]))}:{type:"Circle",shape:{cx:e.cx,cy:e.cy,r:n}}},shadow:function(t,e,n,i){var r=Math.max(1,t.getBandWidth()),o=Math.PI/180;return"angle"===t.dim?{type:"Sector",shape:xN(e.cx,e.cy,i[0],i[1],(-n-r/2)*o,(r/2-n)*o)}:{type:"Sector",shape:xN(e.cx,e.cy,n-r/2,n+r/2,0,2*Math.PI)}}},HN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.findAxisModel=function(t){var e;return this.ecModel.eachComponent(t,(function(t){t.getCoordSysModel()===this&&(e=t)}),this),e},e.type="polar",e.dependencies=["radiusAxis","angleAxis"],e.defaultOption={z:0,center:["50%","50%"],radius:"80%"},e}(zp),YN=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.getCoordSysModel=function(){return this.getReferringComponents("polar",Wo).models[0]},e.type="polarAxis",e}(zp);R(YN,D_);var XN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="angleAxis",e}(YN),UN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="radiusAxis",e}(YN),ZN=function(t){function e(e,n){return t.call(this,"radius",e,n)||this}return n(e,t),e.prototype.pointToData=function(t,e){return this.polar.pointToData(t,e)["radius"===this.dim?0:1]},e}(ab);ZN.prototype.dataToRadius=ab.prototype.dataToCoord,ZN.prototype.radiusToData=ab.prototype.coordToData;var jN=Vo(),qN=function(t){function e(e,n){return t.call(this,"angle",e,n||[0,360])||this}return n(e,t),e.prototype.pointToData=function(t,e){return this.polar.pointToData(t,e)["radius"===this.dim?0:1]},e.prototype.calculateCategoryInterval=function(){var t=this,e=t.getLabelModel(),n=t.scale,i=n.getExtent(),r=n.count();if(i[1]-i[0]<1)return 0;var o=i[0],a=t.dataToCoord(o+1)-t.dataToCoord(o),s=Math.abs(a),l=Sr(null==o?"":o+"",e.getFont(),"center","top"),u=Math.max(l.height,7)/s;isNaN(u)&&(u=1/0);var h=Math.max(0,Math.floor(u)),c=jN(t.model),p=c.lastAutoInterval,d=c.lastTickCount;return null!=p&&null!=d&&Math.abs(p-h)<=1&&Math.abs(d-r)<=1&&p>h?h=p:(c.lastTickCount=r,c.lastAutoInterval=h),h},e}(ab);qN.prototype.dataToAngle=ab.prototype.dataToCoord,qN.prototype.angleToData=ab.prototype.coordToData;var KN=["radius","angle"],$N=function(){function t(t){this.dimensions=KN,this.type="polar",this.cx=0,this.cy=0,this._radiusAxis=new ZN,this._angleAxis=new qN,this.axisPointerEnabled=!0,this.name=t||"",this._radiusAxis.polar=this._angleAxis.polar=this}return t.prototype.containPoint=function(t){var e=this.pointToCoord(t);return this._radiusAxis.contain(e[0])&&this._angleAxis.contain(e[1])},t.prototype.containData=function(t){return this._radiusAxis.containData(t[0])&&this._angleAxis.containData(t[1])},t.prototype.getAxis=function(t){return this["_"+t+"Axis"]},t.prototype.getAxes=function(){return[this._radiusAxis,this._angleAxis]},t.prototype.getAxesByScale=function(t){var e=[],n=this._angleAxis,i=this._radiusAxis;return n.scale.type===t&&e.push(n),i.scale.type===t&&e.push(i),e},t.prototype.getAngleAxis=function(){return this._angleAxis},t.prototype.getRadiusAxis=function(){return this._radiusAxis},t.prototype.getOtherAxis=function(t){var e=this._angleAxis;return t===e?this._radiusAxis:e},t.prototype.getBaseAxis=function(){return this.getAxesByScale("ordinal")[0]||this.getAxesByScale("time")[0]||this.getAngleAxis()},t.prototype.getTooltipAxes=function(t){var e=null!=t&&"auto"!==t?this.getAxis(t):this.getBaseAxis();return{baseAxes:[e],otherAxes:[this.getOtherAxis(e)]}},t.prototype.dataToPoint=function(t,e){return this.coordToPoint([this._radiusAxis.dataToRadius(t[0],e),this._angleAxis.dataToAngle(t[1],e)])},t.prototype.pointToData=function(t,e){var n=this.pointToCoord(t);return[this._radiusAxis.radiusToData(n[0],e),this._angleAxis.angleToData(n[1],e)]},t.prototype.pointToCoord=function(t){var e=t[0]-this.cx,n=t[1]-this.cy,i=this.getAngleAxis(),r=i.getExtent(),o=Math.min(r[0],r[1]),a=Math.max(r[0],r[1]);i.inverse?o=a-360:a=o+360;var s=Math.sqrt(e*e+n*n);e/=s,n/=s;for(var l=Math.atan2(-n,e)/Math.PI*180,u=l<o?1:-1;l<o||l>a;)l+=360*u;return[s,l]},t.prototype.coordToPoint=function(t){var e=t[0],n=t[1]/180*Math.PI;return[Math.cos(n)*e+this.cx,-Math.sin(n)*e+this.cy]},t.prototype.getArea=function(){var t=this.getAngleAxis(),e=this.getRadiusAxis().getExtent().slice();e[0]>e[1]&&e.reverse();var n=t.getExtent(),i=Math.PI/180;return{cx:this.cx,cy:this.cy,r0:e[0],r:e[1],startAngle:-n[0]*i,endAngle:-n[1]*i,clockwise:t.inverse,contain:function(t,e){var n=t-this.cx,i=e-this.cy,r=n*n+i*i-1e-4,o=this.r,a=this.r0;return r<=o*o&&r>=a*a}}},t.prototype.convertToPixel=function(t,e,n){return JN(e)===this?this.dataToPoint(n):null},t.prototype.convertFromPixel=function(t,e,n){return JN(e)===this?this.pointToData(n):null},t}();function JN(t){var e=t.seriesModel,n=t.polarModel;return n&&n.coordinateSystem||e&&e.coordinateSystem}function QN(t,e){var n=this,i=n.getAngleAxis(),r=n.getRadiusAxis();if(i.scale.setExtent(1/0,-1/0),r.scale.setExtent(1/0,-1/0),t.eachSeries((function(t){if(t.coordinateSystem===n){var e=t.getData();E(C_(e,"radius"),(function(t){r.scale.unionExtentFromData(e,t)})),E(C_(e,"angle"),(function(t){i.scale.unionExtentFromData(e,t)}))}})),__(i.scale,i.model),__(r.scale,r.model),"category"===i.type&&!i.onBand){var o=i.getExtent(),a=360/i.scale.count();i.inverse?o[1]+=a:o[1]-=a,i.setExtent(o[0],o[1])}}function tE(t,e){var n;if(t.type=e.get("type"),t.scale=b_(e),t.onBand=e.get("boundaryGap")&&"category"===t.type,t.inverse=e.get("inverse"),function(t){return"angleAxis"===t.mainType}(e)){t.inverse=t.inverse!==e.get("clockwise");var i=e.get("startAngle"),r=null!==(n=e.get("endAngle"))&&void 0!==n?n:i+(t.inverse?-360:360);t.setExtent(i,r)}e.axis=t,t.model=e}var eE={dimensions:KN,create:function(t,e){var n=[];return t.eachComponent("polar",(function(t,i){var r=new $N(i+"");r.update=QN;var o=r.getRadiusAxis(),a=r.getAngleAxis(),s=t.findAxisModel("radiusAxis"),l=t.findAxisModel("angleAxis");tE(o,s),tE(a,l),function(t,e,n){var i=e.get("center"),r=n.getWidth(),o=n.getHeight();t.cx=$r(i[0],r),t.cy=$r(i[1],o);var a=t.getRadiusAxis(),s=Math.min(r,o)/2,l=e.get("radius");null==l?l=[0,"100%"]:Y(l)||(l=[0,l]);var u=[$r(l[0],s),$r(l[1],s)];a.inverse?a.setExtent(u[1],u[0]):a.setExtent(u[0],u[1])}(r,t,e),n.push(r),t.coordinateSystem=r,r.model=t})),t.eachSeries((function(t){if("polar"===t.get("coordinateSystem")){var e=t.getReferringComponents("polar",Wo).models[0];0,t.coordinateSystem=e.coordinateSystem}})),n}},nE=["axisLine","axisLabel","axisTick","minorTick","splitLine","minorSplitLine","splitArea"];function iE(t,e,n){e[1]>e[0]&&(e=e.slice().reverse());var i=t.coordToPoint([e[0],n]),r=t.coordToPoint([e[1],n]);return{x1:i[0],y1:i[1],x2:r[0],y2:r[1]}}function rE(t){return t.getRadiusAxis().inverse?0:1}function oE(t){var e=t[0],n=t[t.length-1];e&&n&&Math.abs(Math.abs(e.coord-n.coord)-360)<1e-4&&t.pop()}var aE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.axisPointerClass="PolarAxisPointer",n}return n(e,t),e.prototype.render=function(t,e){if(this.group.removeAll(),t.get("show")){var n=t.axis,i=n.polar,r=i.getRadiusAxis().getExtent(),o=n.getTicksCoords(),a=n.getMinorTicksCoords(),s=z(n.getViewLabels(),(function(t){t=T(t);var e=n.scale,i="ordinal"===e.type?e.getRawOrdinalNumber(t.tickValue):t.tickValue;return t.coord=n.dataToCoord(i),t}));oE(s),oE(o),E(nE,(function(e){!t.get([e,"show"])||n.scale.isBlank()&&"axisLine"!==e||sE[e](this.group,t,i,o,a,r,s)}),this)}},e.type="angleAxis",e}(TI),sE={axisLine:function(t,e,n,i,r,o){var a,s=e.getModel(["axisLine","lineStyle"]),l=n.getAngleAxis(),u=Math.PI/180,h=l.getExtent(),c=rE(n),p=c?0:1,d=360===Math.abs(h[1]-h[0])?"Circle":"Arc";(a=0===o[p]?new Qh[d]({shape:{cx:n.cx,cy:n.cy,r:o[c],startAngle:-h[0]*u,endAngle:-h[1]*u,clockwise:l.inverse},style:s.getLineStyle(),z2:1,silent:!0}):new Wu({shape:{cx:n.cx,cy:n.cy,r:o[c],r0:o[p]},style:s.getLineStyle(),z2:1,silent:!0})).style.fill=null,t.add(a)},axisTick:function(t,e,n,i,r,o){var a=e.getModel("axisTick"),s=(a.get("inside")?-1:1)*a.get("length"),l=o[rE(n)],u=z(i,(function(t){return new Ku({shape:iE(n,[l,l+s],t.coord)})}));t.add(Nh(u,{style:k(a.getModel("lineStyle").getLineStyle(),{stroke:e.get(["axisLine","lineStyle","color"])})}))},minorTick:function(t,e,n,i,r,o){if(r.length){for(var a=e.getModel("axisTick"),s=e.getModel("minorTick"),l=(a.get("inside")?-1:1)*s.get("length"),u=o[rE(n)],h=[],c=0;c<r.length;c++)for(var p=0;p<r[c].length;p++)h.push(new Ku({shape:iE(n,[u,u+l],r[c][p].coord)}));t.add(Nh(h,{style:k(s.getModel("lineStyle").getLineStyle(),k(a.getLineStyle(),{stroke:e.get(["axisLine","lineStyle","color"])}))}))}},axisLabel:function(t,e,n,i,r,o,a){var s=e.getCategories(!0),l=e.getModel("axisLabel"),u=l.get("margin"),h=e.get("triggerEvent");E(a,(function(i,r){var a=l,c=i.tickValue,p=o[rE(n)],d=n.coordToPoint([p+u,i.coord]),f=n.cx,g=n.cy,y=Math.abs(d[0]-f)/p<.3?"center":d[0]>f?"left":"right",v=Math.abs(d[1]-g)/p<.3?"middle":d[1]>g?"top":"bottom";if(s&&s[c]){var m=s[c];q(m)&&m.textStyle&&(a=new Cc(m.textStyle,l,l.ecModel))}var x=new Xs({silent:dI.isLabelSilent(e),style:oc(a,{x:d[0],y:d[1],fill:a.getTextColor()||e.get(["axisLine","lineStyle","color"]),text:i.formattedLabel,align:y,verticalAlign:v})});if(t.add(x),h){var _=dI.makeAxisEventDataBase(e);_.targetType="axisLabel",_.value=i.rawLabel,rl(x).eventData=_}}),this)},splitLine:function(t,e,n,i,r,o){var a=e.getModel("splitLine").getModel("lineStyle"),s=a.get("color"),l=0;s=s instanceof Array?s:[s];for(var u=[],h=0;h<i.length;h++){var c=l++%s.length;u[c]=u[c]||[],u[c].push(new Ku({shape:iE(n,o,i[h].coord)}))}for(h=0;h<u.length;h++)t.add(Nh(u[h],{style:k({stroke:s[h%s.length]},a.getLineStyle()),silent:!0,z:e.get("z")}))},minorSplitLine:function(t,e,n,i,r,o){if(r.length){for(var a=e.getModel("minorSplitLine").getModel("lineStyle"),s=[],l=0;l<r.length;l++)for(var u=0;u<r[l].length;u++)s.push(new Ku({shape:iE(n,o,r[l][u].coord)}));t.add(Nh(s,{style:a.getLineStyle(),silent:!0,z:e.get("z")}))}},splitArea:function(t,e,n,i,r,o){if(i.length){var a=e.getModel("splitArea").getModel("areaStyle"),s=a.get("color"),l=0;s=s instanceof Array?s:[s];for(var u=[],h=Math.PI/180,c=-i[0].coord*h,p=Math.min(o[0],o[1]),d=Math.max(o[0],o[1]),f=e.get("clockwise"),g=1,y=i.length;g<=y;g++){var v=g===y?i[0].coord:i[g].coord,m=l++%s.length;u[m]=u[m]||[],u[m].push(new Fu({shape:{cx:n.cx,cy:n.cy,r0:p,r:d,startAngle:c,endAngle:-v*h,clockwise:f},silent:!0})),c=-v*h}for(g=0;g<u.length;g++)t.add(Nh(u[g],{style:k({fill:s[g%s.length]},a.getAreaStyle()),silent:!0}))}}},lE=["axisLine","axisTickLabel","axisName"],uE=["splitLine","splitArea","minorSplitLine"],hE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.axisPointerClass="PolarAxisPointer",n}return n(e,t),e.prototype.render=function(t,e){if(this.group.removeAll(),t.get("show")){var n=this._axisGroup,i=this._axisGroup=new Br;this.group.add(i);var r=t.axis,o=r.polar,a=o.getAngleAxis(),s=r.getTicksCoords(),l=r.getMinorTicksCoords(),u=a.getExtent()[0],h=r.getExtent(),c=function(t,e,n){return{position:[t.cx,t.cy],rotation:n/180*Math.PI,labelDirection:-1,tickDirection:-1,nameDirection:1,labelRotate:e.getModel("axisLabel").get("rotate"),z2:1}}(o,t,u),p=new dI(t,c);E(lE,p.add,p),i.add(p.getGroup()),Hh(n,i,t),E(uE,(function(e){t.get([e,"show"])&&!r.scale.isBlank()&&cE[e](this.group,t,o,u,h,s,l)}),this)}},e.type="radiusAxis",e}(TI),cE={splitLine:function(t,e,n,i,r,o){var a=e.getModel("splitLine").getModel("lineStyle"),s=a.get("color"),l=0,u=n.getAngleAxis(),h=Math.PI/180,c=u.getExtent(),p=360===Math.abs(c[1]-c[0])?"Circle":"Arc";s=s instanceof Array?s:[s];for(var d=[],f=0;f<o.length;f++){var g=l++%s.length;d[g]=d[g]||[],d[g].push(new Qh[p]({shape:{cx:n.cx,cy:n.cy,r:Math.max(o[f].coord,0),startAngle:-c[0]*h,endAngle:-c[1]*h,clockwise:u.inverse}}))}for(f=0;f<d.length;f++)t.add(Nh(d[f],{style:k({stroke:s[f%s.length],fill:null},a.getLineStyle()),silent:!0}))},minorSplitLine:function(t,e,n,i,r,o,a){if(a.length){for(var s=e.getModel("minorSplitLine").getModel("lineStyle"),l=[],u=0;u<a.length;u++)for(var h=0;h<a[u].length;h++)l.push(new Su({shape:{cx:n.cx,cy:n.cy,r:a[u][h].coord}}));t.add(Nh(l,{style:k({fill:null},s.getLineStyle()),silent:!0}))}},splitArea:function(t,e,n,i,r,o){if(o.length){var a=e.getModel("splitArea").getModel("areaStyle"),s=a.get("color"),l=0;s=s instanceof Array?s:[s];for(var u=[],h=o[0].coord,c=1;c<o.length;c++){var p=l++%s.length;u[p]=u[p]||[],u[p].push(new Fu({shape:{cx:n.cx,cy:n.cy,r0:h,r:o[c].coord,startAngle:0,endAngle:2*Math.PI},silent:!0})),h=o[c].coord}for(c=0;c<u.length;c++)t.add(Nh(u[c],{style:k({fill:s[c%s.length]},a.getAreaStyle()),silent:!0}))}}};function pE(t){return t.get("stack")||"__ec_stack_"+t.seriesIndex}function dE(t,e){return e.dim+t.model.componentIndex}function fE(t,e,n){var i={},r=function(t){var e={};E(t,(function(t,n){var i=t.getData(),r=t.coordinateSystem,o=r.getBaseAxis(),a=dE(r,o),s=o.getExtent(),l="category"===o.type?o.getBandWidth():Math.abs(s[1]-s[0])/i.count(),u=e[a]||{bandWidth:l,remainedWidth:l,autoWidthCount:0,categoryGap:"20%",gap:"30%",stacks:{}},h=u.stacks;e[a]=u;var c=pE(t);h[c]||u.autoWidthCount++,h[c]=h[c]||{width:0,maxWidth:0};var p=$r(t.get("barWidth"),l),d=$r(t.get("barMaxWidth"),l),f=t.get("barGap"),g=t.get("barCategoryGap");p&&!h[c].width&&(p=Math.min(u.remainedWidth,p),h[c].width=p,u.remainedWidth-=p),d&&(h[c].maxWidth=d),null!=f&&(u.gap=f),null!=g&&(u.categoryGap=g)}));var n={};return E(e,(function(t,e){n[e]={};var i=t.stacks,r=t.bandWidth,o=$r(t.categoryGap,r),a=$r(t.gap,1),s=t.remainedWidth,l=t.autoWidthCount,u=(s-o)/(l+(l-1)*a);u=Math.max(u,0),E(i,(function(t,e){var n=t.maxWidth;n&&n<u&&(n=Math.min(n,s),t.width&&(n=Math.min(n,t.width)),s-=n,t.width=n,l--)})),u=(s-o)/(l+(l-1)*a),u=Math.max(u,0);var h,c=0;E(i,(function(t,e){t.width||(t.width=u),h=t,c+=t.width*(1+a)})),h&&(c-=h.width*a);var p=-c/2;E(i,(function(t,i){n[e][i]=n[e][i]||{offset:p,width:t.width},p+=t.width*(1+a)}))})),n}(B(e.getSeriesByType(t),(function(t){return!e.isSeriesFiltered(t)&&t.coordinateSystem&&"polar"===t.coordinateSystem.type})));e.eachSeriesByType(t,(function(t){if("polar"===t.coordinateSystem.type){var e=t.getData(),n=t.coordinateSystem,o=n.getBaseAxis(),a=dE(n,o),s=pE(t),l=r[a][s],u=l.offset,h=l.width,c=n.getOtherAxis(o),p=t.coordinateSystem.cx,d=t.coordinateSystem.cy,f=t.get("barMinHeight")||0,g=t.get("barMinAngle")||0;i[s]=i[s]||[];for(var y=e.mapDimension(c.dim),v=e.mapDimension(o.dim),m=mx(e,y),x="radius"!==o.dim||!t.get("roundCap",!0),_=c.model.get("startValue"),b=c.dataToCoord(_||0),w=0,S=e.count();w<S;w++){var M=e.get(y,w),I=e.get(v,w),T=M>=0?"p":"n",C=b;m&&(i[s][I]||(i[s][I]={p:b,n:b}),C=i[s][I][T]);var D=void 0,A=void 0,k=void 0,L=void 0;if("radius"===c.dim){var P=c.dataToCoord(M)-b,O=o.dataToCoord(I);Math.abs(P)<f&&(P=(P<0?-1:1)*f),D=C,A=C+P,L=(k=O-u)-h,m&&(i[s][I][T]=A)}else{var R=c.dataToCoord(M,x)-b,N=o.dataToCoord(I);Math.abs(R)<g&&(R=(R<0?-1:1)*g),A=(D=N+u)+h,k=C,L=C+R,m&&(i[s][I][T]=L)}e.setItemLayout(w,{cx:p,cy:d,r0:D,r:A,startAngle:-k*Math.PI/180,endAngle:-L*Math.PI/180,clockwise:k>=L})}}}))}var gE={startAngle:90,clockwise:!0,splitNumber:12,axisLabel:{rotate:0}},yE={splitNumber:5},vE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="polar",e}(Ag);function mE(t,e){e=e||{};var n=t.coordinateSystem,i=t.axis,r={},o=i.position,a=i.orient,s=n.getRect(),l=[s.x,s.x+s.width,s.y,s.y+s.height],u={horizontal:{top:l[2],bottom:l[3]},vertical:{left:l[0],right:l[1]}};r.position=["vertical"===a?u.vertical[o]:l[0],"horizontal"===a?u.horizontal[o]:l[3]];r.rotation=Math.PI/2*{horizontal:0,vertical:1}[a];r.labelDirection=r.tickDirection=r.nameDirection={top:-1,bottom:1,right:1,left:-1}[o],t.get(["axisTick","inside"])&&(r.tickDirection=-r.tickDirection),it(e.labelInside,t.get(["axisLabel","inside"]))&&(r.labelDirection=-r.labelDirection);var h=e.rotate;return null==h&&(h=t.get(["axisLabel","rotate"])),r.labelRotation="top"===o?-h:h,r.z2=1,r}var xE=["axisLine","axisTickLabel","axisName"],_E=["splitArea","splitLine"],bE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.axisPointerClass="SingleAxisPointer",n}return n(e,t),e.prototype.render=function(e,n,i,r){var o=this.group;o.removeAll();var a=this._axisGroup;this._axisGroup=new Br;var s=mE(e),l=new dI(e,s);E(xE,l.add,l),o.add(this._axisGroup),o.add(l.getGroup()),E(_E,(function(t){e.get([t,"show"])&&wE[t](this,this.group,this._axisGroup,e)}),this),Hh(a,this._axisGroup,e),t.prototype.render.call(this,e,n,i,r)},e.prototype.remove=function(){AI(this)},e.type="singleAxis",e}(TI),wE={splitLine:function(t,e,n,i){var r=i.axis;if(!r.scale.isBlank()){var o=i.getModel("splitLine"),a=o.getModel("lineStyle"),s=a.get("color");s=s instanceof Array?s:[s];for(var l=a.get("width"),u=i.coordinateSystem.getRect(),h=r.isHorizontal(),c=[],p=0,d=r.getTicksCoords({tickModel:o}),f=[],g=[],y=0;y<d.length;++y){var v=r.toGlobalCoord(d[y].coord);h?(f[0]=v,f[1]=u.y,g[0]=v,g[1]=u.y+u.height):(f[0]=u.x,f[1]=v,g[0]=u.x+u.width,g[1]=v);var m=new Ku({shape:{x1:f[0],y1:f[1],x2:g[0],y2:g[1]},silent:!0});zh(m.shape,l);var x=p++%s.length;c[x]=c[x]||[],c[x].push(m)}var _=a.getLineStyle(["color"]);for(y=0;y<c.length;++y)e.add(Nh(c[y],{style:k({stroke:s[y%s.length]},_),silent:!0}))}},splitArea:function(t,e,n,i){DI(t,n,i,i)}},SE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.getCoordSysModel=function(){return this},e.type="singleAxis",e.layoutMode="box",e.defaultOption={left:"5%",top:"5%",right:"5%",bottom:"5%",type:"value",position:"bottom",orient:"horizontal",axisLine:{show:!0,lineStyle:{width:1,type:"solid"}},tooltip:{show:!0},axisTick:{show:!0,length:6,lineStyle:{width:1}},axisLabel:{show:!0,interval:"auto"},splitLine:{show:!0,lineStyle:{type:"dashed",opacity:.2}}},e}(zp);R(SE,D_.prototype);var ME=function(t){function e(e,n,i,r,o){var a=t.call(this,e,n,i)||this;return a.type=r||"value",a.position=o||"bottom",a}return n(e,t),e.prototype.isHorizontal=function(){var t=this.position;return"top"===t||"bottom"===t},e.prototype.pointToData=function(t,e){return this.coordinateSystem.pointToData(t)[0]},e}(ab),IE=["single"],TE=function(){function t(t,e,n){this.type="single",this.dimension="single",this.dimensions=IE,this.axisPointerEnabled=!0,this.model=t,this._init(t,e,n)}return t.prototype._init=function(t,e,n){var i=this.dimension,r=new ME(i,b_(t),[0,0],t.get("type"),t.get("position")),o="category"===r.type;r.onBand=o&&t.get("boundaryGap"),r.inverse=t.get("inverse"),r.orient=t.get("orient"),t.axis=r,r.model=t,r.coordinateSystem=this,this._axis=r},t.prototype.update=function(t,e){t.eachSeries((function(t){if(t.coordinateSystem===this){var e=t.getData();E(e.mapDimensionsAll(this.dimension),(function(t){this._axis.scale.unionExtentFromData(e,t)}),this),__(this._axis.scale,this._axis.model)}}),this)},t.prototype.resize=function(t,e){this._rect=kp({left:t.get("left"),top:t.get("top"),right:t.get("right"),bottom:t.get("bottom"),width:t.get("width"),height:t.get("height")},{width:e.getWidth(),height:e.getHeight()}),this._adjustAxis()},t.prototype.getRect=function(){return this._rect},t.prototype._adjustAxis=function(){var t=this._rect,e=this._axis,n=e.isHorizontal(),i=n?[0,t.width]:[0,t.height],r=e.inverse?1:0;e.setExtent(i[r],i[1-r]),this._updateAxisTransform(e,n?t.x:t.y)},t.prototype._updateAxisTransform=function(t,e){var n=t.getExtent(),i=n[0]+n[1],r=t.isHorizontal();t.toGlobalCoord=r?function(t){return t+e}:function(t){return i-t+e},t.toLocalCoord=r?function(t){return t-e}:function(t){return i-t+e}},t.prototype.getAxis=function(){return this._axis},t.prototype.getBaseAxis=function(){return this._axis},t.prototype.getAxes=function(){return[this._axis]},t.prototype.getTooltipAxes=function(){return{baseAxes:[this.getAxis()],otherAxes:[]}},t.prototype.containPoint=function(t){var e=this.getRect(),n=this.getAxis();return"horizontal"===n.orient?n.contain(n.toLocalCoord(t[0]))&&t[1]>=e.y&&t[1]<=e.y+e.height:n.contain(n.toLocalCoord(t[1]))&&t[0]>=e.y&&t[0]<=e.y+e.height},t.prototype.pointToData=function(t){var e=this.getAxis();return[e.coordToData(e.toLocalCoord(t["horizontal"===e.orient?0:1]))]},t.prototype.dataToPoint=function(t){var e=this.getAxis(),n=this.getRect(),i=[],r="horizontal"===e.orient?0:1;return t instanceof Array&&(t=t[0]),i[r]=e.toGlobalCoord(e.dataToCoord(+t)),i[1-r]=0===r?n.y+n.height/2:n.x+n.width/2,i},t.prototype.convertToPixel=function(t,e,n){return CE(e)===this?this.dataToPoint(n):null},t.prototype.convertFromPixel=function(t,e,n){return CE(e)===this?this.pointToData(n):null},t}();function CE(t){var e=t.seriesModel,n=t.singleAxisModel;return n&&n.coordinateSystem||e&&e.coordinateSystem}var DE={create:function(t,e){var n=[];return t.eachComponent("singleAxis",(function(i,r){var o=new TE(i,t,e);o.name="single_"+r,o.resize(i,e),i.coordinateSystem=o,n.push(o)})),t.eachSeries((function(t){if("singleAxis"===t.get("coordinateSystem")){var e=t.getReferringComponents("singleAxis",Wo).models[0];t.coordinateSystem=e&&e.coordinateSystem}})),n},dimensions:IE},AE=["x","y"],kE=["width","height"],LE=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.makeElOption=function(t,e,n,i,r){var o=n.axis,a=o.coordinateSystem,s=RE(a,1-OE(o)),l=a.dataToPoint(e)[0],u=i.get("type");if(u&&"none"!==u){var h=pN(i),c=PE[u](o,l,s);c.style=h,t.graphicKey=c.type,t.pointer=c}yN(e,t,mE(n),n,i,r)},e.prototype.getHandleTransform=function(t,e,n){var i=mE(e,{labelInside:!1});i.labelMargin=n.get(["handle","margin"]);var r=gN(e.axis,t,i);return{x:r[0],y:r[1],rotation:i.rotation+(i.labelDirection<0?Math.PI:0)}},e.prototype.updateHandleTransform=function(t,e,n,i){var r=n.axis,o=r.coordinateSystem,a=OE(r),s=RE(o,a),l=[t.x,t.y];l[a]+=e[a],l[a]=Math.min(s[1],l[a]),l[a]=Math.max(s[0],l[a]);var u=RE(o,1-a),h=(u[1]+u[0])/2,c=[h,h];return c[a]=l[a],{x:l[0],y:l[1],rotation:t.rotation,cursorPoint:c,tooltipOption:{verticalAlign:"middle"}}},e}(aN),PE={line:function(t,e,n){return{type:"Line",subPixelOptimize:!0,shape:vN([e,n[0]],[e,n[1]],OE(t))}},shadow:function(t,e,n){var i=t.getBandWidth(),r=n[1]-n[0];return{type:"Rect",shape:mN([e-i/2,n[0]],[i,r],OE(t))}}};function OE(t){return t.isHorizontal()?0:1}function RE(t,e){var n=t.getRect();return[n[AE[e]],n[AE[e]]+n[kE[e]]]}var NE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="single",e}(Ag);var EE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(e,n,i){var r=Rp(e);t.prototype.init.apply(this,arguments),zE(e,r)},e.prototype.mergeOption=function(e){t.prototype.mergeOption.apply(this,arguments),zE(this.option,e)},e.prototype.getCellSize=function(){return this.option.cellSize},e.type="calendar",e.defaultOption={z:2,left:80,top:60,cellSize:20,orient:"horizontal",splitLine:{show:!0,lineStyle:{color:"#000",width:1,type:"solid"}},itemStyle:{color:"#fff",borderWidth:1,borderColor:"#ccc"},dayLabel:{show:!0,firstDay:0,position:"start",margin:"50%",color:"#000"},monthLabel:{show:!0,position:"start",margin:5,align:"center",formatter:null,color:"#000"},yearLabel:{show:!0,position:null,margin:30,formatter:null,color:"#ccc",fontFamily:"sans-serif",fontWeight:"bolder",fontSize:20}},e}(zp);function zE(t,e){var n,i=t.cellSize;1===(n=Y(i)?i:t.cellSize=[i,i]).length&&(n[1]=n[0]);var r=z([0,1],(function(t){return function(t,e){return null!=t[Cp[e][0]]||null!=t[Cp[e][1]]&&null!=t[Cp[e][2]]}(e,t)&&(n[t]="auto"),null!=n[t]&&"auto"!==n[t]}));Op(t,e,{type:"box",ignoreSize:r})}var VE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i=this.group;i.removeAll();var r=t.coordinateSystem,o=r.getRangeInfo(),a=r.getOrient(),s=e.getLocaleModel();this._renderDayRect(t,o,i),this._renderLines(t,o,a,i),this._renderYearText(t,o,a,i),this._renderMonthText(t,s,a,i),this._renderWeekText(t,s,o,a,i)},e.prototype._renderDayRect=function(t,e,n){for(var i=t.coordinateSystem,r=t.getModel("itemStyle").getItemStyle(),o=i.getCellWidth(),a=i.getCellHeight(),s=e.start.time;s<=e.end.time;s=i.getNextNDay(s,1).time){var l=i.dataToRect([s],!1).tl,u=new Ws({shape:{x:l[0],y:l[1],width:o,height:a},cursor:"default",style:r});n.add(u)}},e.prototype._renderLines=function(t,e,n,i){var r=this,o=t.coordinateSystem,a=t.getModel(["splitLine","lineStyle"]).getLineStyle(),s=t.get(["splitLine","show"]),l=a.lineWidth;this._tlpoints=[],this._blpoints=[],this._firstDayOfMonth=[],this._firstDayPoints=[];for(var u=e.start,h=0;u.time<=e.end.time;h++){p(u.formatedDate),0===h&&(u=o.getDateInfo(e.start.y+"-"+e.start.m));var c=u.date;c.setMonth(c.getMonth()+1),u=o.getDateInfo(c)}function p(e){r._firstDayOfMonth.push(o.getDateInfo(e)),r._firstDayPoints.push(o.dataToRect([e],!1).tl);var l=r._getLinePointsOfOneWeek(t,e,n);r._tlpoints.push(l[0]),r._blpoints.push(l[l.length-1]),s&&r._drawSplitline(l,a,i)}p(o.getNextNDay(e.end.time,1).formatedDate),s&&this._drawSplitline(r._getEdgesPoints(r._tlpoints,l,n),a,i),s&&this._drawSplitline(r._getEdgesPoints(r._blpoints,l,n),a,i)},e.prototype._getEdgesPoints=function(t,e,n){var i=[t[0].slice(),t[t.length-1].slice()],r="horizontal"===n?0:1;return i[0][r]=i[0][r]-e/2,i[1][r]=i[1][r]+e/2,i},e.prototype._drawSplitline=function(t,e,n){var i=new Zu({z2:20,shape:{points:t},style:e});n.add(i)},e.prototype._getLinePointsOfOneWeek=function(t,e,n){for(var i=t.coordinateSystem,r=i.getDateInfo(e),o=[],a=0;a<7;a++){var s=i.getNextNDay(r.time,a),l=i.dataToRect([s.time],!1);o[2*s.day]=l.tl,o[2*s.day+1]=l["horizontal"===n?"bl":"tr"]}return o},e.prototype._formatterLabel=function(t,e){return U(t)&&t?(n=t,E(e,(function(t,e){n=n.replace("{"+e+"}",i?re(t):t)})),n):X(t)?t(e):e.nameMap;var n,i},e.prototype._yearTextPositionControl=function(t,e,n,i,r){var o=e[0],a=e[1],s=["center","bottom"];"bottom"===i?(a+=r,s=["center","top"]):"left"===i?o-=r:"right"===i?(o+=r,s=["center","top"]):a-=r;var l=0;return"left"!==i&&"right"!==i||(l=Math.PI/2),{rotation:l,x:o,y:a,style:{align:s[0],verticalAlign:s[1]}}},e.prototype._renderYearText=function(t,e,n,i){var r=t.getModel("yearLabel");if(r.get("show")){var o=r.get("margin"),a=r.get("position");a||(a="horizontal"!==n?"top":"left");var s=[this._tlpoints[this._tlpoints.length-1],this._blpoints[0]],l=(s[0][0]+s[1][0])/2,u=(s[0][1]+s[1][1])/2,h="horizontal"===n?0:1,c={top:[l,s[h][1]],bottom:[l,s[1-h][1]],left:[s[1-h][0],u],right:[s[h][0],u]},p=e.start.y;+e.end.y>+e.start.y&&(p=p+"-"+e.end.y);var d=r.get("formatter"),f={start:e.start.y,end:e.end.y,nameMap:p},g=this._formatterLabel(d,f),y=new Xs({z2:30,style:oc(r,{text:g})});y.attr(this._yearTextPositionControl(y,c[a],n,a,o)),i.add(y)}},e.prototype._monthTextPositionControl=function(t,e,n,i,r){var o="left",a="top",s=t[0],l=t[1];return"horizontal"===n?(l+=r,e&&(o="center"),"start"===i&&(a="bottom")):(s+=r,e&&(a="middle"),"start"===i&&(o="right")),{x:s,y:l,align:o,verticalAlign:a}},e.prototype._renderMonthText=function(t,e,n,i){var r=t.getModel("monthLabel");if(r.get("show")){var o=r.get("nameMap"),a=r.get("margin"),s=r.get("position"),l=r.get("align"),u=[this._tlpoints,this._blpoints];o&&!U(o)||(o&&(e=Vc(o)||e),o=e.get(["time","monthAbbr"])||[]);var h="start"===s?0:1,c="horizontal"===n?0:1;a="start"===s?-a:a;for(var p="center"===l,d=0;d<u[h].length-1;d++){var f=u[h][d].slice(),g=this._firstDayOfMonth[d];if(p){var y=this._firstDayPoints[d];f[c]=(y[c]+u[0][d+1][c])/2}var v=r.get("formatter"),m=o[+g.m-1],x={yyyy:g.y,yy:(g.y+"").slice(2),MM:g.m,M:+g.m,nameMap:m},_=this._formatterLabel(v,x),b=new Xs({z2:30,style:A(oc(r,{text:_}),this._monthTextPositionControl(f,p,n,s,a))});i.add(b)}}},e.prototype._weekTextPositionControl=function(t,e,n,i,r){var o="center",a="middle",s=t[0],l=t[1],u="start"===n;return"horizontal"===e?(s=s+i+(u?1:-1)*r[0]/2,o=u?"right":"left"):(l=l+i+(u?1:-1)*r[1]/2,a=u?"bottom":"top"),{x:s,y:l,align:o,verticalAlign:a}},e.prototype._renderWeekText=function(t,e,n,i,r){var o=t.getModel("dayLabel");if(o.get("show")){var a=t.coordinateSystem,s=o.get("position"),l=o.get("nameMap"),u=o.get("margin"),h=a.getFirstDayOfWeek();if(!l||U(l))l&&(e=Vc(l)||e),l=e.get(["time","dayOfWeekShort"])||z(e.get(["time","dayOfWeekAbbr"]),(function(t){return t[0]}));var c=a.getNextNDay(n.end.time,7-n.lweek).time,p=[a.getCellWidth(),a.getCellHeight()];u=$r(u,Math.min(p[1],p[0])),"start"===s&&(c=a.getNextNDay(n.start.time,-(7+n.fweek)).time,u=-u);for(var d=0;d<7;d++){var f,g=a.getNextNDay(c,d),y=a.dataToRect([g.time],!1).center;f=Math.abs((d+h)%7);var v=new Xs({z2:30,style:A(oc(o,{text:l[f]}),this._weekTextPositionControl(y,i,s,u,p))});r.add(v)}}},e.type="calendar",e}(Ag),BE=864e5,FE=function(){function t(e,n,i){this.type="calendar",this.dimensions=t.dimensions,this.getDimensionsInfo=t.getDimensionsInfo,this._model=e}return t.getDimensionsInfo=function(){return[{name:"time",type:"time"},"value"]},t.prototype.getRangeInfo=function(){return this._rangeInfo},t.prototype.getModel=function(){return this._model},t.prototype.getRect=function(){return this._rect},t.prototype.getCellWidth=function(){return this._sw},t.prototype.getCellHeight=function(){return this._sh},t.prototype.getOrient=function(){return this._orient},t.prototype.getFirstDayOfWeek=function(){return this._firstDayOfWeek},t.prototype.getDateInfo=function(t){var e=(t=uo(t)).getFullYear(),n=t.getMonth()+1,i=n<10?"0"+n:""+n,r=t.getDate(),o=r<10?"0"+r:""+r,a=t.getDay();return{y:e+"",m:i,d:o,day:a=Math.abs((a+7-this.getFirstDayOfWeek())%7),time:t.getTime(),formatedDate:e+"-"+i+"-"+o,date:t}},t.prototype.getNextNDay=function(t,e){return 0===(e=e||0)||(t=new Date(this.getDateInfo(t).time)).setDate(t.getDate()+e),this.getDateInfo(t)},t.prototype.update=function(t,e){this._firstDayOfWeek=+this._model.getModel("dayLabel").get("firstDay"),this._orient=this._model.get("orient"),this._lineWidth=this._model.getModel("itemStyle").getItemStyle().lineWidth||0,this._rangeInfo=this._getRangeInfo(this._initRangeOption());var n=this._rangeInfo.weeks||1,i=["width","height"],r=this._model.getCellSize().slice(),o=this._model.getBoxLayoutParams(),a="horizontal"===this._orient?[n,7]:[7,n];E([0,1],(function(t){u(r,t)&&(o[i[t]]=r[t]*a[t])}));var s={width:e.getWidth(),height:e.getHeight()},l=this._rect=kp(o,s);function u(t,e){return null!=t[e]&&"auto"!==t[e]}E([0,1],(function(t){u(r,t)||(r[t]=l[i[t]]/a[t])})),this._sw=r[0],this._sh=r[1]},t.prototype.dataToPoint=function(t,e){Y(t)&&(t=t[0]),null==e&&(e=!0);var n=this.getDateInfo(t),i=this._rangeInfo,r=n.formatedDate;if(e&&!(n.time>=i.start.time&&n.time<i.end.time+BE))return[NaN,NaN];var o=n.day,a=this._getRangeInfo([i.start.time,r]).nthWeek;return"vertical"===this._orient?[this._rect.x+o*this._sw+this._sw/2,this._rect.y+a*this._sh+this._sh/2]:[this._rect.x+a*this._sw+this._sw/2,this._rect.y+o*this._sh+this._sh/2]},t.prototype.pointToData=function(t){var e=this.pointToDate(t);return e&&e.time},t.prototype.dataToRect=function(t,e){var n=this.dataToPoint(t,e);return{contentShape:{x:n[0]-(this._sw-this._lineWidth)/2,y:n[1]-(this._sh-this._lineWidth)/2,width:this._sw-this._lineWidth,height:this._sh-this._lineWidth},center:n,tl:[n[0]-this._sw/2,n[1]-this._sh/2],tr:[n[0]+this._sw/2,n[1]-this._sh/2],br:[n[0]+this._sw/2,n[1]+this._sh/2],bl:[n[0]-this._sw/2,n[1]+this._sh/2]}},t.prototype.pointToDate=function(t){var e=Math.floor((t[0]-this._rect.x)/this._sw)+1,n=Math.floor((t[1]-this._rect.y)/this._sh)+1,i=this._rangeInfo.range;return"vertical"===this._orient?this._getDateByWeeksAndDay(n,e-1,i):this._getDateByWeeksAndDay(e,n-1,i)},t.prototype.convertToPixel=function(t,e,n){var i=GE(e);return i===this?i.dataToPoint(n):null},t.prototype.convertFromPixel=function(t,e,n){var i=GE(e);return i===this?i.pointToData(n):null},t.prototype.containPoint=function(t){return console.warn("Not implemented."),!1},t.prototype._initRangeOption=function(){var t,e=this._model.get("range");if(Y(e)&&1===e.length&&(e=e[0]),Y(e))t=e;else{var n=e.toString();if(/^\d{4}$/.test(n)&&(t=[n+"-01-01",n+"-12-31"]),/^\d{4}[\/|-]\d{1,2}$/.test(n)){var i=this.getDateInfo(n),r=i.date;r.setMonth(r.getMonth()+1);var o=this.getNextNDay(r,-1);t=[i.formatedDate,o.formatedDate]}/^\d{4}[\/|-]\d{1,2}[\/|-]\d{1,2}$/.test(n)&&(t=[n,n])}if(!t)return e;var a=this._getRangeInfo(t);return a.start.time>a.end.time&&t.reverse(),t},t.prototype._getRangeInfo=function(t){var e,n=[this.getDateInfo(t[0]),this.getDateInfo(t[1])];n[0].time>n[1].time&&(e=!0,n.reverse());var i=Math.floor(n[1].time/BE)-Math.floor(n[0].time/BE)+1,r=new Date(n[0].time),o=r.getDate(),a=n[1].date.getDate();r.setDate(o+i-1);var s=r.getDate();if(s!==a)for(var l=r.getTime()-n[1].time>0?1:-1;(s=r.getDate())!==a&&(r.getTime()-n[1].time)*l>0;)i-=l,r.setDate(s-l);var u=Math.floor((i+n[0].day+6)/7),h=e?1-u:u-1;return e&&n.reverse(),{range:[n[0].formatedDate,n[1].formatedDate],start:n[0],end:n[1],allDay:i,weeks:u,nthWeek:h,fweek:n[0].day,lweek:n[1].day}},t.prototype._getDateByWeeksAndDay=function(t,e,n){var i=this._getRangeInfo(n);if(t>i.weeks||0===t&&e<i.fweek||t===i.weeks&&e>i.lweek)return null;var r=7*(t-1)-i.fweek+e,o=new Date(i.start.time);return o.setDate(+i.start.d+r),this.getDateInfo(o)},t.create=function(e,n){var i=[];return e.eachComponent("calendar",(function(r){var o=new t(r,e,n);i.push(o),r.coordinateSystem=o})),e.eachSeries((function(t){"calendar"===t.get("coordinateSystem")&&(t.coordinateSystem=i[t.get("calendarIndex")||0])})),i},t.dimensions=["time","value"],t}();function GE(t){var e=t.calendarModel,n=t.seriesModel;return e?e.coordinateSystem:n?n.coordinateSystem:null}function WE(t,e){var n;return E(e,(function(e){null!=t[e]&&"auto"!==t[e]&&(n=!0)})),n}var HE=["transition","enterFrom","leaveTo"],YE=HE.concat(["enterAnimation","updateAnimation","leaveAnimation"]);function XE(t,e,n){if(n&&(!t[n]&&e[n]&&(t[n]={}),t=t[n],e=e[n]),t&&e)for(var i=n?HE:YE,r=0;r<i.length;r++){var o=i[r];null==t[o]&&null!=e[o]&&(t[o]=e[o])}}var UE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.preventAutoZ=!0,n}return n(e,t),e.prototype.mergeOption=function(e,n){var i=this.option.elements;this.option.elements=null,t.prototype.mergeOption.call(this,e,n),this.option.elements=i},e.prototype.optionUpdated=function(t,e){var n=this.option,i=(e?n:t).elements,r=n.elements=e?[]:n.elements,o=[];this._flatten(i,o,null);var a=Lo(r,o,"normalMerge"),s=this._elOptionsToUpdate=[];E(a,(function(t,e){var n=t.newOption;n&&(s.push(n),function(t,e){var n=t.existing;if(e.id=t.keyInfo.id,!e.type&&n&&(e.type=n.type),null==e.parentId){var i=e.parentOption;i?e.parentId=i.id:n&&(e.parentId=n.parentId)}e.parentOption=null}(t,n),function(t,e,n){var i=A({},n),r=t[e],o=n.$action||"merge";"merge"===o?r?(C(r,i,!0),Op(r,i,{ignoreSize:!0}),Np(n,r),XE(n,r),XE(n,r,"shape"),XE(n,r,"style"),XE(n,r,"extra"),n.clipPath=r.clipPath):t[e]=i:"replace"===o?t[e]=i:"remove"===o&&r&&(t[e]=null)}(r,e,n),function(t,e){if(t&&(t.hv=e.hv=[WE(e,["left","right"]),WE(e,["top","bottom"])],"group"===t.type)){var n=t,i=e;null==n.width&&(n.width=i.width=0),null==n.height&&(n.height=i.height=0)}}(r[e],n))}),this),n.elements=B(r,(function(t){return t&&delete t.$action,null!=t}))},e.prototype._flatten=function(t,e,n){E(t,(function(t){if(t){n&&(t.parentOption=n),e.push(t);var i=t.children;i&&i.length&&this._flatten(i,e,t),delete t.children}}),this)},e.prototype.useElOptionsToUpdate=function(){var t=this._elOptionsToUpdate;return this._elOptionsToUpdate=null,t},e.type="graphic",e.defaultOption={elements:[]},e}(zp),ZE={path:null,compoundPath:null,group:Br,image:Ns,text:Xs},jE=Vo(),qE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(){this._elMap=yt()},e.prototype.render=function(t,e,n){t!==this._lastGraphicModel&&this._clear(),this._lastGraphicModel=t,this._updateElements(t),this._relocate(t,n)},e.prototype._updateElements=function(t){var e=t.useElOptionsToUpdate();if(e){var n=this._elMap,i=this.group,r=t.get("z"),o=t.get("zlevel");E(e,(function(e){var a=Ro(e.id,null),s=null!=a?n.get(a):null,l=Ro(e.parentId,null),u=null!=l?n.get(l):i,h=e.type,c=e.style;"text"===h&&c&&e.hv&&e.hv[1]&&(c.textVerticalAlign=c.textBaseline=c.verticalAlign=c.align=null);var p=e.textContent,d=e.textConfig;if(c&&iR(c,h,!!d,!!p)){var f=rR(c,h,!0);!d&&f.textConfig&&(d=e.textConfig=f.textConfig),!p&&f.textContent&&(p=f.textContent)}var g=function(t){return t=A({},t),E(["id","parentId","$action","hv","bounding","textContent","clipPath"].concat(Tp),(function(e){delete t[e]})),t}(e);var y=e.$action||"merge",v="merge"===y,m="replace"===y;if(v){var x=s;(T=!s)?x=$E(a,u,e.type,n):(x&&(jE(x).isNew=!1),IR(x)),x&&(dR(x,g,t,{isInit:T}),QE(x,e,r,o))}else if(m){JE(s,e,n,t);var _=$E(a,u,e.type,n);_&&(dR(_,g,t,{isInit:!0}),QE(_,e,r,o))}else"remove"===y&&(fR(s,e),JE(s,e,n,t));var b=n.get(a);if(b&&p)if(v){var w=b.getTextContent();w?w.attr(p):b.setTextContent(new Xs(p))}else m&&b.setTextContent(new Xs(p));if(b){var S=e.clipPath;if(S){var M=S.type,I=void 0,T=!1;if(v){var C=b.getClipPath();I=(T=!C||jE(C).type!==M)?KE(M):C}else m&&(T=!0,I=KE(M));b.setClipPath(I),dR(I,S,t,{isInit:T}),TR(I,S.keyframeAnimation,t)}var D=jE(b);b.setTextConfig(d),D.option=e,function(t,e,n){var i=rl(t).eventData;t.silent||t.ignore||i||(i=rl(t).eventData={componentType:"graphic",componentIndex:e.componentIndex,name:t.name});i&&(i.info=n.info)}(b,t,e),Kh({el:b,componentModel:t,itemName:b.name,itemTooltipOption:e.tooltip}),TR(b,e.keyframeAnimation,t)}}))}},e.prototype._relocate=function(t,e){for(var n=t.option.elements,i=this.group,r=this._elMap,o=e.getWidth(),a=e.getHeight(),s=["x","y"],l=0;l<n.length;l++){if((f=null!=(d=Ro((p=n[l]).id,null))?r.get(d):null)&&f.isGroup){var u=(g=f.parent)===i,h=jE(f),c=jE(g);h.width=$r(h.option.width,u?o:c.width)||0,h.height=$r(h.option.height,u?a:c.height)||0}}for(l=n.length-1;l>=0;l--){var p,d,f;if(f=null!=(d=Ro((p=n[l]).id,null))?r.get(d):null){var g=f.parent,y=(c=jE(g),{}),v=Lp(f,p,g===i?{width:o,height:a}:{width:c.width,height:c.height},null,{hv:p.hv,boundingMode:p.bounding},y);if(!jE(f).isNew&&v){for(var m=p.transition,x={},_=0;_<s.length;_++){var b=s[_],w=y[b];m&&(yR(m)||P(m,b)>=0)?x[b]=w:f[b]=w}vh(f,x,t,0)}else f.attr(y)}}},e.prototype._clear=function(){var t=this,e=this._elMap;e.each((function(n){JE(n,jE(n).option,e,t._lastGraphicModel)})),this._elMap=yt()},e.prototype.dispose=function(){this._clear()},e.type="graphic",e}(Ag);function KE(t){var e=_t(ZE,t)?ZE[t]:Lh(t);var n=new e({});return jE(n).type=t,n}function $E(t,e,n,i){var r=KE(n);return e.add(r),i.set(t,r),jE(r).id=t,jE(r).isNew=!0,r}function JE(t,e,n,i){t&&t.parent&&("group"===t.type&&t.traverse((function(t){JE(t,e,n,i)})),gR(t,e,i),n.removeKey(jE(t).id))}function QE(t,e,n,i){t.isGroup||E([["cursor",Da.prototype.cursor],["zlevel",i||0],["z",n||0],["z2",0]],(function(n){var i=n[0];_t(e,i)?t[i]=rt(e[i],n[1]):null==t[i]&&(t[i]=n[1])})),E(G(e),(function(n){if(0===n.indexOf("on")){var i=e[n];t[n]=X(i)?i:null}})),_t(e,"draggable")&&(t.draggable=e.draggable),null!=e.name&&(t.name=e.name),null!=e.id&&(t.id=e.id)}var tz=["x","y","radius","angle","single"],ez=["cartesian2d","polar","singleAxis"];function nz(t){return t+"Axis"}function iz(t,e){var n,i=yt(),r=[],o=yt();t.eachComponent({mainType:"dataZoom",query:e},(function(t){o.get(t.uid)||s(t)}));do{n=!1,t.eachComponent("dataZoom",a)}while(n);function a(t){!o.get(t.uid)&&function(t){var e=!1;return t.eachTargetAxis((function(t,n){var r=i.get(t);r&&r[n]&&(e=!0)})),e}(t)&&(s(t),n=!0)}function s(t){o.set(t.uid,!0),r.push(t),t.eachTargetAxis((function(t,e){(i.get(t)||i.set(t,[]))[e]=!0}))}return r}function rz(t){var e=t.ecModel,n={infoList:[],infoMap:yt()};return t.eachTargetAxis((function(t,i){var r=e.getComponent(nz(t),i);if(r){var o=r.getCoordSysModel();if(o){var a=o.uid,s=n.infoMap.get(a);s||(s={model:o,axisModels:[]},n.infoList.push(s),n.infoMap.set(a,s)),s.axisModels.push(r)}}})),n}var oz=function(){function t(){this.indexList=[],this.indexMap=[]}return t.prototype.add=function(t){this.indexMap[t]||(this.indexList.push(t),this.indexMap[t]=!0)},t}(),az=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._autoThrottle=!0,n._noTarget=!0,n._rangePropMode=["percent","percent"],n}return n(e,t),e.prototype.init=function(t,e,n){var i=sz(t);this.settledOption=i,this.mergeDefaultAndTheme(t,n),this._doInit(i)},e.prototype.mergeOption=function(t){var e=sz(t);C(this.option,t,!0),C(this.settledOption,e,!0),this._doInit(e)},e.prototype._doInit=function(t){var e=this.option;this._setDefaultThrottle(t),this._updateRangeUse(t);var n=this.settledOption;E([["start","startValue"],["end","endValue"]],(function(t,i){"value"===this._rangePropMode[i]&&(e[t[0]]=n[t[0]]=null)}),this),this._resetTarget()},e.prototype._resetTarget=function(){var t=this.get("orient",!0),e=this._targetAxisInfoMap=yt();this._fillSpecifiedTargetAxis(e)?this._orient=t||this._makeAutoOrientByTargetAxis():(this._orient=t||"horizontal",this._fillAutoTargetAxisByOrient(e,this._orient)),this._noTarget=!0,e.each((function(t){t.indexList.length&&(this._noTarget=!1)}),this)},e.prototype._fillSpecifiedTargetAxis=function(t){var e=!1;return E(tz,(function(n){var i=this.getReferringComponents(nz(n),Ho);if(i.specified){e=!0;var r=new oz;E(i.models,(function(t){r.add(t.componentIndex)})),t.set(n,r)}}),this),e},e.prototype._fillAutoTargetAxisByOrient=function(t,e){var n=this.ecModel,i=!0;if(i){var r="vertical"===e?"y":"x";o(n.findComponents({mainType:r+"Axis"}),r)}i&&o(n.findComponents({mainType:"singleAxis",filter:function(t){return t.get("orient",!0)===e}}),"single");function o(e,n){var r=e[0];if(r){var o=new oz;if(o.add(r.componentIndex),t.set(n,o),i=!1,"x"===n||"y"===n){var a=r.getReferringComponents("grid",Wo).models[0];a&&E(e,(function(t){r.componentIndex!==t.componentIndex&&a===t.getReferringComponents("grid",Wo).models[0]&&o.add(t.componentIndex)}))}}}i&&E(tz,(function(e){if(i){var r=n.findComponents({mainType:nz(e),filter:function(t){return"category"===t.get("type",!0)}});if(r[0]){var o=new oz;o.add(r[0].componentIndex),t.set(e,o),i=!1}}}),this)},e.prototype._makeAutoOrientByTargetAxis=function(){var t;return this.eachTargetAxis((function(e){!t&&(t=e)}),this),"y"===t?"vertical":"horizontal"},e.prototype._setDefaultThrottle=function(t){if(t.hasOwnProperty("throttle")&&(this._autoThrottle=!1),this._autoThrottle){var e=this.ecModel.option;this.option.throttle=e.animation&&e.animationDurationUpdate>0?100:20}},e.prototype._updateRangeUse=function(t){var e=this._rangePropMode,n=this.get("rangeMode");E([["start","startValue"],["end","endValue"]],(function(i,r){var o=null!=t[i[0]],a=null!=t[i[1]];o&&!a?e[r]="percent":!o&&a?e[r]="value":n?e[r]=n[r]:o&&(e[r]="percent")}))},e.prototype.noTarget=function(){return this._noTarget},e.prototype.getFirstTargetAxisModel=function(){var t;return this.eachTargetAxis((function(e,n){null==t&&(t=this.ecModel.getComponent(nz(e),n))}),this),t},e.prototype.eachTargetAxis=function(t,e){this._targetAxisInfoMap.each((function(n,i){E(n.indexList,(function(n){t.call(e,i,n)}))}))},e.prototype.getAxisProxy=function(t,e){var n=this.getAxisModel(t,e);if(n)return n.__dzAxisProxy},e.prototype.getAxisModel=function(t,e){var n=this._targetAxisInfoMap.get(t);if(n&&n.indexMap[e])return this.ecModel.getComponent(nz(t),e)},e.prototype.setRawRange=function(t){var e=this.option,n=this.settledOption;E([["start","startValue"],["end","endValue"]],(function(i){null==t[i[0]]&&null==t[i[1]]||(e[i[0]]=n[i[0]]=t[i[0]],e[i[1]]=n[i[1]]=t[i[1]])}),this),this._updateRangeUse(t)},e.prototype.setCalculatedRange=function(t){var e=this.option;E(["start","startValue","end","endValue"],(function(n){e[n]=t[n]}))},e.prototype.getPercentRange=function(){var t=this.findRepresentativeAxisProxy();if(t)return t.getDataPercentWindow()},e.prototype.getValueRange=function(t,e){if(null!=t||null!=e)return this.getAxisProxy(t,e).getDataValueWindow();var n=this.findRepresentativeAxisProxy();return n?n.getDataValueWindow():void 0},e.prototype.findRepresentativeAxisProxy=function(t){if(t)return t.__dzAxisProxy;for(var e,n=this._targetAxisInfoMap.keys(),i=0;i<n.length;i++)for(var r=n[i],o=this._targetAxisInfoMap.get(r),a=0;a<o.indexList.length;a++){var s=this.getAxisProxy(r,o.indexList[a]);if(s.hostedBy(this))return s;e||(e=s)}return e},e.prototype.getRangePropMode=function(){return this._rangePropMode.slice()},e.prototype.getOrient=function(){return this._orient},e.type="dataZoom",e.dependencies=["xAxis","yAxis","radiusAxis","angleAxis","singleAxis","series","toolbox"],e.defaultOption={z:4,filterMode:"filter",start:0,end:100},e}(zp);function sz(t){var e={};return E(["start","end","startValue","endValue","throttle"],(function(n){t.hasOwnProperty(n)&&(e[n]=t[n])})),e}var lz=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="dataZoom.select",e}(az),uz=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n,i){this.dataZoomModel=t,this.ecModel=e,this.api=n},e.type="dataZoom",e}(Ag),hz=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="dataZoom.select",e}(uz),cz=E,pz=Qr,dz=function(){function t(t,e,n,i){this._dimName=t,this._axisIndex=e,this.ecModel=i,this._dataZoomModel=n}return t.prototype.hostedBy=function(t){return this._dataZoomModel===t},t.prototype.getDataValueWindow=function(){return this._valueWindow.slice()},t.prototype.getDataPercentWindow=function(){return this._percentWindow.slice()},t.prototype.getTargetSeriesModels=function(){var t=[];return this.ecModel.eachSeries((function(e){if(function(t){var e=t.get("coordinateSystem");return P(ez,e)>=0}(e)){var n=nz(this._dimName),i=e.getReferringComponents(n,Wo).models[0];i&&this._axisIndex===i.componentIndex&&t.push(e)}}),this),t},t.prototype.getAxisModel=function(){return this.ecModel.getComponent(this._dimName+"Axis",this._axisIndex)},t.prototype.getMinMaxSpan=function(){return T(this._minMaxSpan)},t.prototype.calculateDataWindow=function(t){var e,n=this._dataExtent,i=this.getAxisModel().axis.scale,r=this._dataZoomModel.getRangePropMode(),o=[0,100],a=[],s=[];cz(["start","end"],(function(l,u){var h=t[l],c=t[l+"Value"];"percent"===r[u]?(null==h&&(h=o[u]),c=i.parse(Kr(h,o,n))):(e=!0,h=Kr(c=null==c?n[u]:i.parse(c),n,o)),s[u]=null==c||isNaN(c)?n[u]:c,a[u]=null==h||isNaN(h)?o[u]:h})),pz(s),pz(a);var l=this._minMaxSpan;function u(t,e,n,r,o){var a=o?"Span":"ValueSpan";zk(0,t,n,"all",l["min"+a],l["max"+a]);for(var s=0;s<2;s++)e[s]=Kr(t[s],n,r,!0),o&&(e[s]=i.parse(e[s]))}return e?u(s,a,n,o,!1):u(a,s,o,n,!0),{valueWindow:s,percentWindow:a}},t.prototype.reset=function(t){if(t===this._dataZoomModel){var e=this.getTargetSeriesModels();this._dataExtent=function(t,e,n){var i=[1/0,-1/0];cz(n,(function(t){!function(t,e,n){e&&E(C_(e,n),(function(n){var i=e.getApproximateExtent(n);i[0]<t[0]&&(t[0]=i[0]),i[1]>t[1]&&(t[1]=i[1])}))}(i,t.getData(),e)}));var r=t.getAxisModel(),o=v_(r.axis.scale,r,i).calculate();return[o.min,o.max]}(this,this._dimName,e),this._updateMinMaxSpan();var n=this.calculateDataWindow(t.settledOption);this._valueWindow=n.valueWindow,this._percentWindow=n.percentWindow,this._setAxisModel()}},t.prototype.filterData=function(t,e){if(t===this._dataZoomModel){var n=this._dimName,i=this.getTargetSeriesModels(),r=t.get("filterMode"),o=this._valueWindow;"none"!==r&&cz(i,(function(t){var e=t.getData(),i=e.mapDimensionsAll(n);if(i.length){if("weakFilter"===r){var a=e.getStore(),s=z(i,(function(t){return e.getDimensionIndex(t)}),e);e.filterSelf((function(t){for(var e,n,r,l=0;l<i.length;l++){var u=a.get(s[l],t),h=!isNaN(u),c=u<o[0],p=u>o[1];if(h&&!c&&!p)return!0;h&&(r=!0),c&&(e=!0),p&&(n=!0)}return r&&e&&n}))}else cz(i,(function(n){if("empty"===r)t.setData(e=e.map(n,(function(t){return function(t){return t>=o[0]&&t<=o[1]}(t)?t:NaN})));else{var i={};i[n]=o,e.selectRange(i)}}));cz(i,(function(t){e.setApproximateExtent(o,t)}))}}))}},t.prototype._updateMinMaxSpan=function(){var t=this._minMaxSpan={},e=this._dataZoomModel,n=this._dataExtent;cz(["min","max"],(function(i){var r=e.get(i+"Span"),o=e.get(i+"ValueSpan");null!=o&&(o=this.getAxisModel().axis.scale.parse(o)),null!=o?r=Kr(n[0]+o,n,[0,100],!0):null!=r&&(o=Kr(r,[0,100],n,!0)-n[0]),t[i+"Span"]=r,t[i+"ValueSpan"]=o}),this)},t.prototype._setAxisModel=function(){var t=this.getAxisModel(),e=this._percentWindow,n=this._valueWindow;if(e){var i=no(n,[0,500]);i=Math.min(i,20);var r=t.axis.scale.rawExtentInfo;0!==e[0]&&r.setDeterminedMinMax("min",+n[0].toFixed(i)),100!==e[1]&&r.setDeterminedMinMax("max",+n[1].toFixed(i)),r.freeze()}},t}();var fz={getTargetSeries:function(t){function e(e){t.eachComponent("dataZoom",(function(n){n.eachTargetAxis((function(i,r){var o=t.getComponent(nz(i),r);e(i,r,o,n)}))}))}e((function(t,e,n,i){n.__dzAxisProxy=null}));var n=[];e((function(e,i,r,o){r.__dzAxisProxy||(r.__dzAxisProxy=new dz(e,i,o,t),n.push(r.__dzAxisProxy))}));var i=yt();return E(n,(function(t){E(t.getTargetSeriesModels(),(function(t){i.set(t.uid,t)}))})),i},overallReset:function(t,e){t.eachComponent("dataZoom",(function(t){t.eachTargetAxis((function(e,n){t.getAxisProxy(e,n).reset(t)})),t.eachTargetAxis((function(n,i){t.getAxisProxy(n,i).filterData(t,e)}))})),t.eachComponent("dataZoom",(function(t){var e=t.findRepresentativeAxisProxy();if(e){var n=e.getDataPercentWindow(),i=e.getDataValueWindow();t.setCalculatedRange({start:n[0],end:n[1],startValue:i[0],endValue:i[1]})}}))}};var gz=!1;function yz(t){gz||(gz=!0,t.registerProcessor(t.PRIORITY.PROCESSOR.FILTER,fz),function(t){t.registerAction("dataZoom",(function(t,e){E(iz(e,t),(function(e){e.setRawRange({start:t.start,end:t.end,startValue:t.startValue,endValue:t.endValue})}))}))}(t),t.registerSubTypeDefaulter("dataZoom",(function(){return"slider"})))}function vz(t){t.registerComponentModel(lz),t.registerComponentView(hz),yz(t)}var mz=function(){},xz={};function _z(t,e){xz[t]=e}function bz(t){return xz[t]}var wz=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.optionUpdated=function(){t.prototype.optionUpdated.apply(this,arguments);var e=this.ecModel;E(this.option.feature,(function(t,n){var i=bz(n);i&&(i.getDefaultOption&&(i.defaultOption=i.getDefaultOption(e)),C(t,i.defaultOption))}))},e.type="toolbox",e.layoutMode={type:"box",ignoreSize:!0},e.defaultOption={show:!0,z:6,orient:"horizontal",left:"right",top:"top",backgroundColor:"transparent",borderColor:"#ccc",borderRadius:0,borderWidth:0,padding:5,itemSize:15,itemGap:8,showTitle:!0,iconStyle:{borderColor:"#666",color:"none"},emphasis:{iconStyle:{borderColor:"#3E98C5"}},tooltip:{show:!1,position:"bottom"}},e}(zp);function Sz(t,e){var n=vp(e.get("padding")),i=e.getItemStyle(["color","opacity"]);return i.fill=e.get("backgroundColor"),t=new Ws({shape:{x:t.x-n[3],y:t.y-n[0],width:t.width+n[1]+n[3],height:t.height+n[0]+n[2],r:e.get("borderRadius")},style:i,silent:!0,z2:-1})}var Mz=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.render=function(t,e,n,i){var r=this.group;if(r.removeAll(),t.get("show")){var o=+t.get("itemSize"),a="vertical"===t.get("orient"),s=t.get("feature")||{},l=this._features||(this._features={}),u=[];E(s,(function(t,e){u.push(e)})),new Gm(this._featureNames||[],u).add(h).update(h).remove(H(h,null)).execute(),this._featureNames=u,function(t,e,n){var i=e.getBoxLayoutParams(),r=e.get("padding"),o={width:n.getWidth(),height:n.getHeight()},a=kp(i,o,r);Ap(e.get("orient"),t,e.get("itemGap"),a.width,a.height),Lp(t,i,o,r)}(r,t,n),r.add(Sz(r.getBoundingRect(),t)),a||r.eachChild((function(t){var e=t.__title,i=t.ensureState("emphasis"),a=i.textConfig||(i.textConfig={}),s=t.getTextContent(),l=s&&s.ensureState("emphasis");if(l&&!X(l)&&e){var u=l.style||(l.style={}),h=Sr(e,Xs.makeFont(u)),c=t.x+r.x,p=!1;t.y+r.y+o+h.height>n.getHeight()&&(a.position="top",p=!0);var d=p?-5-h.height:o+10;c+h.width/2>n.getWidth()?(a.position=["100%",d],u.align="right"):c-h.width/2<0&&(a.position=[0,d],u.align="left")}}))}function h(h,c){var p,d=u[h],f=u[c],g=s[d],y=new Cc(g,t,t.ecModel);if(i&&null!=i.newTitle&&i.featureName===d&&(g.title=i.newTitle),d&&!f){if(function(t){return 0===t.indexOf("my")}(d))p={onclick:y.option.onclick,featureName:d};else{var v=bz(d);if(!v)return;p=new v}l[d]=p}else if(!(p=l[f]))return;p.uid=Ac("toolbox-feature"),p.model=y,p.ecModel=e,p.api=n;var m=p instanceof mz;d||!f?!y.get("show")||m&&p.unusable?m&&p.remove&&p.remove(e,n):(!function(i,s,l){var u,h,c=i.getModel("iconStyle"),p=i.getModel(["emphasis","iconStyle"]),d=s instanceof mz&&s.getIcons?s.getIcons():i.get("icon"),f=i.get("title")||{};U(d)?(u={})[l]=d:u=d;U(f)?(h={})[l]=f:h=f;var g=i.iconPaths={};E(u,(function(l,u){var d=Uh(l,{},{x:-o/2,y:-o/2,width:o,height:o});d.setStyle(c.getItemStyle()),d.ensureState("emphasis").style=p.getItemStyle();var f=new Xs({style:{text:h[u],align:p.get("textAlign"),borderRadius:p.get("textBorderRadius"),padding:p.get("textPadding"),fill:null,font:cc({fontStyle:p.get("textFontStyle"),fontFamily:p.get("textFontFamily"),fontSize:p.get("textFontSize"),fontWeight:p.get("textFontWeight")},e)},ignore:!0});d.setTextContent(f),Kh({el:d,componentModel:t,itemName:u,formatterParamsExtra:{title:h[u]}}),d.__title=h[u],d.on("mouseover",(function(){var e=p.getItemStyle(),i=a?null==t.get("right")&&"right"!==t.get("left")?"right":"left":null==t.get("bottom")&&"bottom"!==t.get("top")?"bottom":"top";f.setStyle({fill:p.get("textFill")||e.fill||e.stroke||"#000",backgroundColor:p.get("textBackgroundColor")}),d.setTextConfig({position:p.get("textPosition")||i}),f.ignore=!t.get("showTitle"),n.enterEmphasis(this)})).on("mouseout",(function(){"emphasis"!==i.get(["iconStatus",u])&&n.leaveEmphasis(this),f.hide()})),("emphasis"===i.get(["iconStatus",u])?Ol:Rl)(d),r.add(d),d.on("click",W(s.onclick,s,e,n,u)),g[u]=d}))}(y,p,d),y.setIconStatus=function(t,e){var n=this.option,i=this.iconPaths;n.iconStatus=n.iconStatus||{},n.iconStatus[t]=e,i[t]&&("emphasis"===e?Ol:Rl)(i[t])},p instanceof mz&&p.render&&p.render(y,e,n,i)):m&&p.dispose&&p.dispose(e,n)}},e.prototype.updateView=function(t,e,n,i){E(this._features,(function(t){t instanceof mz&&t.updateView&&t.updateView(t.model,e,n,i)}))},e.prototype.remove=function(t,e){E(this._features,(function(n){n instanceof mz&&n.remove&&n.remove(t,e)})),this.group.removeAll()},e.prototype.dispose=function(t,e){E(this._features,(function(n){n instanceof mz&&n.dispose&&n.dispose(t,e)}))},e.type="toolbox",e}(Ag);var Iz=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.onclick=function(t,e){var n=this.model,i=n.get("name")||t.get("title.0.text")||"echarts",o="svg"===e.getZr().painter.getType(),a=o?"svg":n.get("type",!0)||"png",s=e.getConnectedDataURL({type:a,backgroundColor:n.get("backgroundColor",!0)||t.get("backgroundColor")||"#fff",connectedBackgroundColor:n.get("connectedBackgroundColor"),excludeComponents:n.get("excludeComponents"),pixelRatio:n.get("pixelRatio")}),l=r.browser;if("function"!=typeof MouseEvent||!l.newEdge&&(l.ie||l.edge))if(window.navigator.msSaveOrOpenBlob||o){var u=s.split(","),h=u[0].indexOf("base64")>-1,c=o?decodeURIComponent(u[1]):u[1];h&&(c=window.atob(c));var p=i+"."+a;if(window.navigator.msSaveOrOpenBlob){for(var d=c.length,f=new Uint8Array(d);d--;)f[d]=c.charCodeAt(d);var g=new Blob([f]);window.navigator.msSaveOrOpenBlob(g,p)}else{var y=document.createElement("iframe");document.body.appendChild(y);var v=y.contentWindow,m=v.document;m.open("image/svg+xml","replace"),m.write(c),m.close(),v.focus(),m.execCommand("SaveAs",!0,p),document.body.removeChild(y)}}else{var x=n.get("lang"),_='<body style="margin:0;"><img src="'+s+'" style="max-width:100%;" title="'+(x&&x[0]||"")+'" /></body>',b=window.open();b.document.write(_),b.document.title=i}else{var w=document.createElement("a");w.download=i+"."+a,w.target="_blank",w.href=s;var S=new MouseEvent("click",{view:document.defaultView,bubbles:!0,cancelable:!1});w.dispatchEvent(S)}},e.getDefaultOption=function(t){return{show:!0,icon:"M4.7,22.9L29.3,45.5L54.7,23.4M4.6,43.6L4.6,58L53.8,58L53.8,43.6M29.2,45.1L29.2,0",title:t.getLocaleModel().get(["toolbox","saveAsImage","title"]),type:"png",connectedBackgroundColor:"#fff",name:"",excludeComponents:["toolbox"],lang:t.getLocaleModel().get(["toolbox","saveAsImage","lang"])}},e}(mz),Tz="__ec_magicType_stack__",Cz=[["line","bar"],["stack"]],Dz=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.getIcons=function(){var t=this.model,e=t.get("icon"),n={};return E(t.get("type"),(function(t){e[t]&&(n[t]=e[t])})),n},e.getDefaultOption=function(t){return{show:!0,type:[],icon:{line:"M4.1,28.9h7.1l9.3-22l7.4,38l9.7-19.7l3,12.8h14.9M4.1,58h51.4",bar:"M6.7,22.9h10V48h-10V22.9zM24.9,13h10v35h-10V13zM43.2,2h10v46h-10V2zM3.1,58h53.7",stack:"M8.2,38.4l-8.4,4.1l30.6,15.3L60,42.5l-8.1-4.1l-21.5,11L8.2,38.4z M51.9,30l-8.1,4.2l-13.4,6.9l-13.9-6.9L8.2,30l-8.4,4.2l8.4,4.2l22.2,11l21.5-11l8.1-4.2L51.9,30z M51.9,21.7l-8.1,4.2L35.7,30l-5.3,2.8L24.9,30l-8.4-4.1l-8.3-4.2l-8.4,4.2L8.2,30l8.3,4.2l13.9,6.9l13.4-6.9l8.1-4.2l8.1-4.1L51.9,21.7zM30.4,2.2L-0.2,17.5l8.4,4.1l8.3,4.2l8.4,4.2l5.5,2.7l5.3-2.7l8.1-4.2l8.1-4.2l8.1-4.1L30.4,2.2z"},title:t.getLocaleModel().get(["toolbox","magicType","title"]),option:{},seriesIndex:{}}},e.prototype.onclick=function(t,e,n){var i=this.model,r=i.get(["seriesIndex",n]);if(Az[n]){var o,a={series:[]};E(Cz,(function(t){P(t,n)>=0&&E(t,(function(t){i.setIconStatus(t,"normal")}))})),i.setIconStatus(n,"emphasis"),t.eachComponent({mainType:"series",query:null==r?null:{seriesIndex:r}},(function(t){var e=t.subType,r=t.id,o=Az[n](e,r,t,i);o&&(k(o,t.option),a.series.push(o));var s=t.coordinateSystem;if(s&&"cartesian2d"===s.type&&("line"===n||"bar"===n)){var l=s.getAxesByScale("ordinal")[0];if(l){var u=l.dim+"Axis",h=t.getReferringComponents(u,Wo).models[0].componentIndex;a[u]=a[u]||[];for(var c=0;c<=h;c++)a[u][h]=a[u][h]||{};a[u][h].boundaryGap="bar"===n}}}));var s=n;"stack"===n&&(o=C({stack:i.option.title.tiled,tiled:i.option.title.stack},i.option.title),"emphasis"!==i.get(["iconStatus",n])&&(s="tiled")),e.dispatchAction({type:"changeMagicType",currentType:s,newOption:a,newTitle:o,featureName:"magicType"})}},e}(mz),Az={line:function(t,e,n,i){if("bar"===t)return C({id:e,type:"line",data:n.get("data"),stack:n.get("stack"),markPoint:n.get("markPoint"),markLine:n.get("markLine")},i.get(["option","line"])||{},!0)},bar:function(t,e,n,i){if("line"===t)return C({id:e,type:"bar",data:n.get("data"),stack:n.get("stack"),markPoint:n.get("markPoint"),markLine:n.get("markLine")},i.get(["option","bar"])||{},!0)},stack:function(t,e,n,i){var r=n.get("stack")===Tz;if("line"===t||"bar"===t)return i.setIconStatus("stack",r?"normal":"emphasis"),C({id:e,stack:r?"":Tz},i.get(["option","stack"])||{},!0)}};Cm({type:"changeMagicType",event:"magicTypeChanged",update:"prepareAndUpdate"},(function(t,e){e.mergeOption(t.newOption)}));var kz=new Array(60).join("-"),Lz="\t";function Pz(t){return t.replace(/^\s\s*/,"").replace(/\s\s*$/,"")}var Oz=new RegExp("[\t]+","g");function Rz(t,e){var n=t.split(new RegExp("\n*"+kz+"\n*","g")),i={series:[]};return E(n,(function(t,n){if(function(t){if(t.slice(0,t.indexOf("\n")).indexOf(Lz)>=0)return!0}(t)){var r=function(t){for(var e=t.split(/\n+/g),n=[],i=z(Pz(e.shift()).split(Oz),(function(t){return{name:t,data:[]}})),r=0;r<e.length;r++){var o=Pz(e[r]).split(Oz);n.push(o.shift());for(var a=0;a<o.length;a++)i[a]&&(i[a].data[r]=o[a])}return{series:i,categories:n}}(t),o=e[n],a=o.axisDim+"Axis";o&&(i[a]=i[a]||[],i[a][o.axisIndex]={data:r.categories},i.series=i.series.concat(r.series))}else{r=function(t){for(var e=t.split(/\n+/g),n=Pz(e.shift()),i=[],r=0;r<e.length;r++){var o=Pz(e[r]);if(o){var a=o.split(Oz),s="",l=void 0,u=!1;isNaN(a[0])?(u=!0,s=a[0],a=a.slice(1),i[r]={name:s,value:[]},l=i[r].value):l=i[r]=[];for(var h=0;h<a.length;h++)l.push(+a[h]);1===l.length&&(u?i[r].value=l[0]:i[r]=l[0])}}return{name:n,data:i}}(t);i.series.push(r)}})),i}var Nz=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.onclick=function(t,e){setTimeout((function(){e.dispatchAction({type:"hideTip"})}));var n=e.getDom(),i=this.model;this._dom&&n.removeChild(this._dom);var r=document.createElement("div");r.style.cssText="position:absolute;top:0;bottom:0;left:0;right:0;padding:5px",r.style.backgroundColor=i.get("backgroundColor")||"#fff";var o=document.createElement("h4"),a=i.get("lang")||[];o.innerHTML=a[0]||i.get("title"),o.style.cssText="margin:10px 20px",o.style.color=i.get("textColor");var s=document.createElement("div"),l=document.createElement("textarea");s.style.cssText="overflow:auto";var u=i.get("optionToContent"),h=i.get("contentToOption"),c=function(t){var e,n,i,r=function(t){var e={},n=[],i=[];return t.eachRawSeries((function(t){var r=t.coordinateSystem;if(!r||"cartesian2d"!==r.type&&"polar"!==r.type)n.push(t);else{var o=r.getBaseAxis();if("category"===o.type){var a=o.dim+"_"+o.index;e[a]||(e[a]={categoryAxis:o,valueAxis:r.getOtherAxis(o),series:[]},i.push({axisDim:o.dim,axisIndex:o.index})),e[a].series.push(t)}else n.push(t)}})),{seriesGroupByCategoryAxis:e,other:n,meta:i}}(t);return{value:B([(n=r.seriesGroupByCategoryAxis,i=[],E(n,(function(t,e){var n=t.categoryAxis,r=t.valueAxis.dim,o=[" "].concat(z(t.series,(function(t){return t.name}))),a=[n.model.getCategories()];E(t.series,(function(t){var e=t.getRawData();a.push(t.getRawData().mapArray(e.mapDimension(r),(function(t){return t})))}));for(var s=[o.join(Lz)],l=0;l<a[0].length;l++){for(var u=[],h=0;h<a.length;h++)u.push(a[h][l]);s.push(u.join(Lz))}i.push(s.join("\n"))})),i.join("\n\n"+kz+"\n\n")),(e=r.other,z(e,(function(t){var e=t.getRawData(),n=[t.name],i=[];return e.each(e.dimensions,(function(){for(var t=arguments.length,r=arguments[t-1],o=e.getName(r),a=0;a<t-1;a++)i[a]=arguments[a];n.push((o?o+Lz:"")+i.join(Lz))})),n.join("\n")})).join("\n\n"+kz+"\n\n"))],(function(t){return!!t.replace(/[\n\t\s]/g,"")})).join("\n\n"+kz+"\n\n"),meta:r.meta}}(t);if(X(u)){var p=u(e.getOption());U(p)?s.innerHTML=p:J(p)&&s.appendChild(p)}else{l.readOnly=i.get("readOnly");var d=l.style;d.cssText="display:block;width:100%;height:100%;font-family:monospace;font-size:14px;line-height:1.6rem;resize:none;box-sizing:border-box;outline:none",d.color=i.get("textColor"),d.borderColor=i.get("textareaBorderColor"),d.backgroundColor=i.get("textareaColor"),l.value=c.value,s.appendChild(l)}var f=c.meta,g=document.createElement("div");g.style.cssText="position:absolute;bottom:5px;left:0;right:0";var y="float:right;margin-right:20px;border:none;cursor:pointer;padding:2px 5px;font-size:12px;border-radius:3px",v=document.createElement("div"),m=document.createElement("div");y+=";background-color:"+i.get("buttonColor"),y+=";color:"+i.get("buttonTextColor");var x=this;function _(){n.removeChild(r),x._dom=null}pe(v,"click",_),pe(m,"click",(function(){if(null==h&&null!=u||null!=h&&null==u)_();else{var t;try{t=X(h)?h(s,e.getOption()):Rz(l.value,f)}catch(t){throw _(),new Error("Data view format error "+t)}t&&e.dispatchAction({type:"changeDataView",newOption:t}),_()}})),v.innerHTML=a[1],m.innerHTML=a[2],m.style.cssText=v.style.cssText=y,!i.get("readOnly")&&g.appendChild(m),g.appendChild(v),r.appendChild(o),r.appendChild(s),r.appendChild(g),s.style.height=n.clientHeight-80+"px",n.appendChild(r),this._dom=r},e.prototype.remove=function(t,e){this._dom&&e.getDom().removeChild(this._dom)},e.prototype.dispose=function(t,e){this.remove(t,e)},e.getDefaultOption=function(t){return{show:!0,readOnly:!1,optionToContent:null,contentToOption:null,icon:"M17.5,17.3H33 M17.5,17.3H33 M45.4,29.5h-28 M11.5,2v56H51V14.8L38.4,2H11.5z M38.4,2.2v12.7H51 M45.4,41.7h-28",title:t.getLocaleModel().get(["toolbox","dataView","title"]),lang:t.getLocaleModel().get(["toolbox","dataView","lang"]),backgroundColor:"#fff",textColor:"#000",textareaColor:"#fff",textareaBorderColor:"#333",buttonColor:"#c23531",buttonTextColor:"#fff"}},e}(mz);function Ez(t,e){return z(t,(function(t,n){var i=e&&e[n];if(q(i)&&!Y(i)){q(t)&&!Y(t)||(t={value:t});var r=null!=i.name&&null==t.name;return t=k(t,i),r&&delete t.name,t}return t}))}Cm({type:"changeDataView",event:"dataViewChanged",update:"prepareAndUpdate"},(function(t,e){var n=[];E(t.newOption.series,(function(t){var i=e.getSeriesByName(t.name)[0];if(i){var r=i.get("data");n.push({name:t.name,data:Ez(t.data,r)})}else n.push(A({type:"scatter"},t))})),e.mergeOption(k({series:n},t.newOption))}));var zz=E,Vz=Vo();function Bz(t){var e=Vz(t);return e.snapshots||(e.snapshots=[{}]),e.snapshots}var Fz=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.onclick=function(t,e){!function(t){Vz(t).snapshots=null}(t),e.dispatchAction({type:"restore",from:this.uid})},e.getDefaultOption=function(t){return{show:!0,icon:"M3.8,33.4 M47,18.9h9.8V8.7 M56.3,20.1 C52.1,9,40.5,0.6,26.8,2.1C12.6,3.7,1.6,16.2,2.1,30.6 M13,41.1H3.1v10.2 M3.7,39.9c4.2,11.1,15.8,19.5,29.5,18 c14.2-1.6,25.2-14.1,24.7-28.5",title:t.getLocaleModel().get(["toolbox","restore","title"])}},e}(mz);Cm({type:"restore",event:"restore",update:"prepareAndUpdate"},(function(t,e){e.resetOption("recreate")}));var Gz=["grid","xAxis","yAxis","geo","graph","polar","radiusAxis","angleAxis","bmap"],Wz=function(){function t(t,e,n){var i=this;this._targetInfoList=[];var r=Yz(e,t);E(Xz,(function(t,e){(!n||!n.include||P(n.include,e)>=0)&&t(r,i._targetInfoList)}))}return t.prototype.setOutputRanges=function(t,e){return this.matchOutputRanges(t,e,(function(t,e,n){if((t.coordRanges||(t.coordRanges=[])).push(e),!t.coordRange){t.coordRange=e;var i=jz[t.brushType](0,n,e);t.__rangeOffset={offset:Kz[t.brushType](i.values,t.range,[1,1]),xyMinMax:i.xyMinMax}}})),t},t.prototype.matchOutputRanges=function(t,e,n){E(t,(function(t){var i=this.findTargetInfo(t,e);i&&!0!==i&&E(i.coordSyses,(function(i){var r=jz[t.brushType](1,i,t.range,!0);n(t,r.values,i,e)}))}),this)},t.prototype.setInputRanges=function(t,e){E(t,(function(t){var n,i,r,o,a,s=this.findTargetInfo(t,e);if(t.range=t.range||[],s&&!0!==s){t.panelId=s.panelId;var l=jz[t.brushType](0,s.coordSys,t.coordRange),u=t.__rangeOffset;t.range=u?Kz[t.brushType](l.values,u.offset,(n=l.xyMinMax,i=u.xyMinMax,r=Jz(n),o=Jz(i),a=[r[0]/o[0],r[1]/o[1]],isNaN(a[0])&&(a[0]=1),isNaN(a[1])&&(a[1]=1),a)):l.values}}),this)},t.prototype.makePanelOpts=function(t,e){return z(this._targetInfoList,(function(n){var i=n.getPanelRect();return{panelId:n.panelId,defaultBrushType:e?e(n):null,clipPath:BL(i),isTargetByCursor:GL(i,t,n.coordSysModel),getLinearBrushOtherExtent:FL(i)}}))},t.prototype.controlSeries=function(t,e,n){var i=this.findTargetInfo(t,n);return!0===i||i&&P(i.coordSyses,e.coordinateSystem)>=0},t.prototype.findTargetInfo=function(t,e){for(var n=this._targetInfoList,i=Yz(e,t),r=0;r<n.length;r++){var o=n[r],a=t.panelId;if(a){if(o.panelId===a)return o}else for(var s=0;s<Uz.length;s++)if(Uz[s](i,o))return o}return!0},t}();function Hz(t){return t[0]>t[1]&&t.reverse(),t}function Yz(t,e){return Fo(t,e,{includeMainTypes:Gz})}var Xz={grid:function(t,e){var n=t.xAxisModels,i=t.yAxisModels,r=t.gridModels,o=yt(),a={},s={};(n||i||r)&&(E(n,(function(t){var e=t.axis.grid.model;o.set(e.id,e),a[e.id]=!0})),E(i,(function(t){var e=t.axis.grid.model;o.set(e.id,e),s[e.id]=!0})),E(r,(function(t){o.set(t.id,t),a[t.id]=!0,s[t.id]=!0})),o.each((function(t){var r=t.coordinateSystem,o=[];E(r.getCartesians(),(function(t,e){(P(n,t.getAxis("x").model)>=0||P(i,t.getAxis("y").model)>=0)&&o.push(t)})),e.push({panelId:"grid--"+t.id,gridModel:t,coordSysModel:t,coordSys:o[0],coordSyses:o,getPanelRect:Zz.grid,xAxisDeclared:a[t.id],yAxisDeclared:s[t.id]})})))},geo:function(t,e){E(t.geoModels,(function(t){var n=t.coordinateSystem;e.push({panelId:"geo--"+t.id,geoModel:t,coordSysModel:t,coordSys:n,coordSyses:[n],getPanelRect:Zz.geo})}))}},Uz=[function(t,e){var n=t.xAxisModel,i=t.yAxisModel,r=t.gridModel;return!r&&n&&(r=n.axis.grid.model),!r&&i&&(r=i.axis.grid.model),r&&r===e.gridModel},function(t,e){var n=t.geoModel;return n&&n===e.geoModel}],Zz={grid:function(){return this.coordSys.master.getRect().clone()},geo:function(){var t=this.coordSys,e=t.getBoundingRect().clone();return e.applyTransform(Bh(t)),e}},jz={lineX:H(qz,0),lineY:H(qz,1),rect:function(t,e,n,i){var r=t?e.pointToData([n[0][0],n[1][0]],i):e.dataToPoint([n[0][0],n[1][0]],i),o=t?e.pointToData([n[0][1],n[1][1]],i):e.dataToPoint([n[0][1],n[1][1]],i),a=[Hz([r[0],o[0]]),Hz([r[1],o[1]])];return{values:a,xyMinMax:a}},polygon:function(t,e,n,i){var r=[[1/0,-1/0],[1/0,-1/0]];return{values:z(n,(function(n){var o=t?e.pointToData(n,i):e.dataToPoint(n,i);return r[0][0]=Math.min(r[0][0],o[0]),r[1][0]=Math.min(r[1][0],o[1]),r[0][1]=Math.max(r[0][1],o[0]),r[1][1]=Math.max(r[1][1],o[1]),o})),xyMinMax:r}}};function qz(t,e,n,i){var r=n.getAxis(["x","y"][t]),o=Hz(z([0,1],(function(t){return e?r.coordToData(r.toLocalCoord(i[t]),!0):r.toGlobalCoord(r.dataToCoord(i[t]))}))),a=[];return a[t]=o,a[1-t]=[NaN,NaN],{values:o,xyMinMax:a}}var Kz={lineX:H($z,0),lineY:H($z,1),rect:function(t,e,n){return[[t[0][0]-n[0]*e[0][0],t[0][1]-n[0]*e[0][1]],[t[1][0]-n[1]*e[1][0],t[1][1]-n[1]*e[1][1]]]},polygon:function(t,e,n){return z(t,(function(t,i){return[t[0]-n[0]*e[i][0],t[1]-n[1]*e[i][1]]}))}};function $z(t,e,n,i){return[e[0]-i[t]*n[0],e[1]-i[t]*n[1]]}function Jz(t){return t?[t[0][1]-t[0][0],t[1][1]-t[1][0]]:[NaN,NaN]}var Qz,tV,eV=E,nV=Io+"toolbox-dataZoom_",iV=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.render=function(t,e,n,i){this._brushController||(this._brushController=new lL(n.getZr()),this._brushController.on("brush",W(this._onBrush,this)).mount()),function(t,e,n,i,r){var o=n._isZoomActive;i&&"takeGlobalCursor"===i.type&&(o="dataZoomSelect"===i.key&&i.dataZoomSelectActive);n._isZoomActive=o,t.setIconStatus("zoom",o?"emphasis":"normal");var a=new Wz(oV(t),e,{include:["grid"]}),s=a.makePanelOpts(r,(function(t){return t.xAxisDeclared&&!t.yAxisDeclared?"lineX":!t.xAxisDeclared&&t.yAxisDeclared?"lineY":"rect"}));n._brushController.setPanels(s).enableBrush(!(!o||!s.length)&&{brushType:"auto",brushStyle:t.getModel("brushStyle").getItemStyle()})}(t,e,this,i,n),function(t,e){t.setIconStatus("back",function(t){return Bz(t).length}(e)>1?"emphasis":"normal")}(t,e)},e.prototype.onclick=function(t,e,n){rV[n].call(this)},e.prototype.remove=function(t,e){this._brushController&&this._brushController.unmount()},e.prototype.dispose=function(t,e){this._brushController&&this._brushController.dispose()},e.prototype._onBrush=function(t){var e=t.areas;if(t.isEnd&&e.length){var n={},i=this.ecModel;this._brushController.updateCovers([]),new Wz(oV(this.model),i,{include:["grid"]}).matchOutputRanges(e,i,(function(t,e,n){if("cartesian2d"===n.type){var i=t.brushType;"rect"===i?(r("x",n,e[0]),r("y",n,e[1])):r({lineX:"x",lineY:"y"}[i],n,e)}})),function(t,e){var n=Bz(t);zz(e,(function(e,i){for(var r=n.length-1;r>=0&&!n[r][i];r--);if(r<0){var o=t.queryComponents({mainType:"dataZoom",subType:"select",id:i})[0];if(o){var a=o.getPercentRange();n[0][i]={dataZoomId:i,start:a[0],end:a[1]}}}})),n.push(e)}(i,n),this._dispatchZoomAction(n)}function r(t,e,r){var o=e.getAxis(t),a=o.model,s=function(t,e,n){var i;return n.eachComponent({mainType:"dataZoom",subType:"select"},(function(n){n.getAxisModel(t,e.componentIndex)&&(i=n)})),i}(t,a,i),l=s.findRepresentativeAxisProxy(a).getMinMaxSpan();null==l.minValueSpan&&null==l.maxValueSpan||(r=zk(0,r.slice(),o.scale.getExtent(),0,l.minValueSpan,l.maxValueSpan)),s&&(n[s.id]={dataZoomId:s.id,startValue:r[0],endValue:r[1]})}},e.prototype._dispatchZoomAction=function(t){var e=[];eV(t,(function(t,n){e.push(T(t))})),e.length&&this.api.dispatchAction({type:"dataZoom",from:this.uid,batch:e})},e.getDefaultOption=function(t){return{show:!0,filterMode:"filter",icon:{zoom:"M0,13.5h26.9 M13.5,26.9V0 M32.1,13.5H58V58H13.5 V32.1",back:"M22,1.4L9.9,13.5l12.3,12.3 M10.3,13.5H54.9v44.6 H10.3v-26"},title:t.getLocaleModel().get(["toolbox","dataZoom","title"]),brushStyle:{borderWidth:0,color:"rgba(210,219,238,0.2)"}}},e}(mz),rV={zoom:function(){var t=!this._isZoomActive;this.api.dispatchAction({type:"takeGlobalCursor",key:"dataZoomSelect",dataZoomSelectActive:t})},back:function(){this._dispatchZoomAction(function(t){var e=Bz(t),n=e[e.length-1];e.length>1&&e.pop();var i={};return zz(n,(function(t,n){for(var r=e.length-1;r>=0;r--)if(t=e[r][n]){i[n]=t;break}})),i}(this.ecModel))}};function oV(t){var e={xAxisIndex:t.get("xAxisIndex",!0),yAxisIndex:t.get("yAxisIndex",!0),xAxisId:t.get("xAxisId",!0),yAxisId:t.get("yAxisId",!0)};return null==e.xAxisIndex&&null==e.xAxisId&&(e.xAxisIndex="all"),null==e.yAxisIndex&&null==e.yAxisId&&(e.yAxisIndex="all"),e}Qz="dataZoom",tV=function(t){var e=t.getComponent("toolbox",0),n=["feature","dataZoom"];if(e&&null!=e.get(n)){var i=e.getModel(n),r=[],o=Fo(t,oV(i));return eV(o.xAxisModels,(function(t){return a(t,"xAxis","xAxisIndex")})),eV(o.yAxisModels,(function(t){return a(t,"yAxis","yAxisIndex")})),r}function a(t,e,n){var o=t.componentIndex,a={type:"select",$fromToolbox:!0,filterMode:i.get("filterMode",!0)||"filter",id:nV+e+o};a[n]=o,r.push(a)}},lt(null==od.get(Qz)&&tV),od.set(Qz,tV);var aV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="tooltip",e.dependencies=["axisPointer"],e.defaultOption={z:60,show:!0,showContent:!0,trigger:"item",triggerOn:"mousemove|click",alwaysShowContent:!1,displayMode:"single",renderMode:"auto",confine:null,showDelay:0,hideDelay:100,transitionDuration:.4,enterable:!1,backgroundColor:"#fff",shadowBlur:10,shadowColor:"rgba(0, 0, 0, .2)",shadowOffsetX:1,shadowOffsetY:2,borderRadius:4,borderWidth:1,padding:null,extraCssText:"",axisPointer:{type:"line",axis:"auto",animation:"auto",animationDurationUpdate:200,animationEasingUpdate:"exponentialOut",crossStyle:{color:"#999",width:1,type:"dashed",textStyle:{}}},textStyle:{color:"#666",fontSize:14}},e}(zp);function sV(t){var e=t.get("confine");return null!=e?!!e:"richText"===t.get("renderMode")}function lV(t){if(r.domSupported)for(var e=document.documentElement.style,n=0,i=t.length;n<i;n++)if(t[n]in e)return t[n]}var uV=lV(["transform","webkitTransform","OTransform","MozTransform","msTransform"]);function hV(t,e){if(!t)return e;e=yp(e,!0);var n=t.indexOf(e);return(t=-1===n?e:"-"+t.slice(0,n)+"-"+e).toLowerCase()}var cV=hV(lV(["webkitTransition","transition","OTransition","MozTransition","msTransition"]),"transition"),pV=hV(uV,"transform"),dV="position:absolute;display:block;border-style:solid;white-space:nowrap;z-index:9999999;"+(r.transform3dSupported?"will-change:transform;":"");function fV(t,e,n){var i=t.toFixed(0)+"px",o=e.toFixed(0)+"px";if(!r.transformSupported)return n?"top:"+o+";left:"+i+";":[["top",o],["left",i]];var a=r.transform3dSupported,s="translate"+(a?"3d":"")+"("+i+","+o+(a?",0":"")+")";return n?"top:0;left:0;"+pV+":"+s+";":[["top",0],["left",0],[uV,s]]}function gV(t,e,n){var i=[],o=t.get("transitionDuration"),a=t.get("backgroundColor"),s=t.get("shadowBlur"),l=t.get("shadowColor"),u=t.get("shadowOffsetX"),h=t.get("shadowOffsetY"),c=t.getModel("textStyle"),p=gg(t,"html"),d=u+"px "+h+"px "+s+"px "+l;return i.push("box-shadow:"+d),e&&o&&i.push(function(t,e){var n="cubic-bezier(0.23,1,0.32,1)",i=" "+t/2+"s "+n,o="opacity"+i+",visibility"+i;return e||(i=" "+t+"s "+n,o+=r.transformSupported?","+pV+i:",left"+i+",top"+i),cV+":"+o}(o,n)),a&&i.push("background-color:"+a),E(["width","color","radius"],(function(e){var n="border-"+e,r=yp(n),o=t.get(r);null!=o&&i.push(n+":"+o+("color"===e?"":"px"))})),i.push(function(t){var e=[],n=t.get("fontSize"),i=t.getTextColor();i&&e.push("color:"+i),e.push("font:"+t.getFont()),n&&e.push("line-height:"+Math.round(3*n/2)+"px");var r=t.get("textShadowColor"),o=t.get("textShadowBlur")||0,a=t.get("textShadowOffsetX")||0,s=t.get("textShadowOffsetY")||0;return r&&o&&e.push("text-shadow:"+a+"px "+s+"px "+o+"px "+r),E(["decoration","align"],(function(n){var i=t.get(n);i&&e.push("text-"+n+":"+i)})),e.join(";")}(c)),null!=p&&i.push("padding:"+vp(p).join("px ")+"px"),i.join(";")+";"}function yV(t,e,n,i,r){var o=e&&e.painter;if(n){var a=o&&o.getViewportRoot();a&&function(t,e,n,i,r){te(Qt,e,i,r,!0)&&te(t,n,Qt[0],Qt[1])}(t,a,n,i,r)}else{t[0]=i,t[1]=r;var s=o&&o.getViewportRootOffset();s&&(t[0]+=s.offsetLeft,t[1]+=s.offsetTop)}t[2]=t[0]/e.getWidth(),t[3]=t[1]/e.getHeight()}var vV=function(){function t(t,e){if(this._show=!1,this._styleCoord=[0,0,0,0],this._enterable=!0,this._alwaysShowContent=!1,this._firstShow=!0,this._longHide=!0,r.wxa)return null;var n=document.createElement("div");n.domBelongToZr=!0,this.el=n;var i=this._zr=t.getZr(),o=e.appendTo,a=o&&(U(o)?document.querySelector(o):J(o)?o:X(o)&&o(t.getDom()));yV(this._styleCoord,i,a,t.getWidth()/2,t.getHeight()/2),(a||t.getDom()).appendChild(n),this._api=t,this._container=a;var s=this;n.onmouseenter=function(){s._enterable&&(clearTimeout(s._hideTimeout),s._show=!0),s._inContent=!0},n.onmousemove=function(t){if(t=t||window.event,!s._enterable){var e=i.handler;ce(i.painter.getViewportRoot(),t,!0),e.dispatch("mousemove",t)}},n.onmouseleave=function(){s._inContent=!1,s._enterable&&s._show&&s.hideLater(s._hideDelay)}}return t.prototype.update=function(t){if(!this._container){var e=this._api.getDom(),n=(o="position",(a=(r=e).currentStyle||document.defaultView&&document.defaultView.getComputedStyle(r))?o?a[o]:a:null),i=e.style;"absolute"!==i.position&&"absolute"!==n&&(i.position="relative")}var r,o,a,s=t.get("alwaysShowContent");s&&this._moveIfResized(),this._alwaysShowContent=s,this.el.className=t.get("className")||""},t.prototype.show=function(t,e){clearTimeout(this._hideTimeout),clearTimeout(this._longHideTimeout);var n=this.el,i=n.style,r=this._styleCoord;n.innerHTML?i.cssText=dV+gV(t,!this._firstShow,this._longHide)+fV(r[0],r[1],!0)+"border-color:"+Sp(e)+";"+(t.get("extraCssText")||"")+";pointer-events:"+(this._enterable?"auto":"none"):i.display="none",this._show=!0,this._firstShow=!1,this._longHide=!1},t.prototype.setContent=function(t,e,n,i,r){var o=this.el;if(null!=t){var a="";if(U(r)&&"item"===n.get("trigger")&&!sV(n)&&(a=function(t,e,n){if(!U(n)||"inside"===n)return"";var i=t.get("backgroundColor"),r=t.get("borderWidth");e=Sp(e);var o,a,s="left"===(o=n)?"right":"right"===o?"left":"top"===o?"bottom":"top",l=Math.max(1.5*Math.round(r),6),u="",h=pV+":";P(["left","right"],s)>-1?(u+="top:50%",h+="translateY(-50%) rotate("+(a="left"===s?-225:-45)+"deg)"):(u+="left:50%",h+="translateX(-50%) rotate("+(a="top"===s?225:45)+"deg)");var c=a*Math.PI/180,p=l+r,d=p*Math.abs(Math.cos(c))+p*Math.abs(Math.sin(c)),f=e+" solid "+r+"px;";return'<div style="'+["position:absolute;width:"+l+"px;height:"+l+"px;z-index:-1;",(u+=";"+s+":-"+Math.round(100*((d-Math.SQRT2*r)/2+Math.SQRT2*r-(d-p)/2))/100+"px")+";"+h+";","border-bottom:"+f,"border-right:"+f,"background-color:"+i+";"].join("")+'"></div>'}(n,i,r)),U(t))o.innerHTML=t+a;else if(t){o.innerHTML="",Y(t)||(t=[t]);for(var s=0;s<t.length;s++)J(t[s])&&t[s].parentNode!==o&&o.appendChild(t[s]);if(a&&o.childNodes.length){var l=document.createElement("div");l.innerHTML=a,o.appendChild(l)}}}else o.innerHTML=""},t.prototype.setEnterable=function(t){this._enterable=t},t.prototype.getSize=function(){var t=this.el;return[t.offsetWidth,t.offsetHeight]},t.prototype.moveTo=function(t,e){var n=this._styleCoord;if(yV(n,this._zr,this._container,t,e),null!=n[0]&&null!=n[1]){var i=this.el.style;E(fV(n[0],n[1]),(function(t){i[t[0]]=t[1]}))}},t.prototype._moveIfResized=function(){var t=this._styleCoord[2],e=this._styleCoord[3];this.moveTo(t*this._zr.getWidth(),e*this._zr.getHeight())},t.prototype.hide=function(){var t=this,e=this.el.style;e.visibility="hidden",e.opacity="0",r.transform3dSupported&&(e.willChange=""),this._show=!1,this._longHideTimeout=setTimeout((function(){return t._longHide=!0}),500)},t.prototype.hideLater=function(t){!this._show||this._inContent&&this._enterable||this._alwaysShowContent||(t?(this._hideDelay=t,this._show=!1,this._hideTimeout=setTimeout(W(this.hide,this),t)):this.hide())},t.prototype.isShow=function(){return this._show},t.prototype.dispose=function(){clearTimeout(this._hideTimeout),clearTimeout(this._longHideTimeout);var t=this.el.parentNode;t&&t.removeChild(this.el),this.el=this._container=null},t}(),mV=function(){function t(t){this._show=!1,this._styleCoord=[0,0,0,0],this._alwaysShowContent=!1,this._enterable=!0,this._zr=t.getZr(),bV(this._styleCoord,this._zr,t.getWidth()/2,t.getHeight()/2)}return t.prototype.update=function(t){var e=t.get("alwaysShowContent");e&&this._moveIfResized(),this._alwaysShowContent=e},t.prototype.show=function(){this._hideTimeout&&clearTimeout(this._hideTimeout),this.el.show(),this._show=!0},t.prototype.setContent=function(t,e,n,i,r){var o=this;q(t)&&wo(""),this.el&&this._zr.remove(this.el);var a=n.getModel("textStyle");this.el=new Xs({style:{rich:e.richTextStyles,text:t,lineHeight:22,borderWidth:1,borderColor:i,textShadowColor:a.get("textShadowColor"),fill:n.get(["textStyle","color"]),padding:gg(n,"richText"),verticalAlign:"top",align:"left"},z:n.get("z")}),E(["backgroundColor","borderRadius","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY"],(function(t){o.el.style[t]=n.get(t)})),E(["textShadowBlur","textShadowOffsetX","textShadowOffsetY"],(function(t){o.el.style[t]=a.get(t)||0})),this._zr.add(this.el);var s=this;this.el.on("mouseover",(function(){s._enterable&&(clearTimeout(s._hideTimeout),s._show=!0),s._inContent=!0})),this.el.on("mouseout",(function(){s._enterable&&s._show&&s.hideLater(s._hideDelay),s._inContent=!1}))},t.prototype.setEnterable=function(t){this._enterable=t},t.prototype.getSize=function(){var t=this.el,e=this.el.getBoundingRect(),n=_V(t.style);return[e.width+n.left+n.right,e.height+n.top+n.bottom]},t.prototype.moveTo=function(t,e){var n=this.el;if(n){var i=this._styleCoord;bV(i,this._zr,t,e),t=i[0],e=i[1];var r=n.style,o=xV(r.borderWidth||0),a=_V(r);n.x=t+o+a.left,n.y=e+o+a.top,n.markRedraw()}},t.prototype._moveIfResized=function(){var t=this._styleCoord[2],e=this._styleCoord[3];this.moveTo(t*this._zr.getWidth(),e*this._zr.getHeight())},t.prototype.hide=function(){this.el&&this.el.hide(),this._show=!1},t.prototype.hideLater=function(t){!this._show||this._inContent&&this._enterable||this._alwaysShowContent||(t?(this._hideDelay=t,this._show=!1,this._hideTimeout=setTimeout(W(this.hide,this),t)):this.hide())},t.prototype.isShow=function(){return this._show},t.prototype.dispose=function(){this._zr.remove(this.el)},t}();function xV(t){return Math.max(0,t)}function _V(t){var e=xV(t.shadowBlur||0),n=xV(t.shadowOffsetX||0),i=xV(t.shadowOffsetY||0);return{left:xV(e-n),right:xV(e+n),top:xV(e-i),bottom:xV(e+i)}}function bV(t,e,n,i){t[0]=n,t[1]=i,t[2]=t[0]/e.getWidth(),t[3]=t[1]/e.getHeight()}var wV=new Ws({shape:{x:-1,y:-1,width:2,height:2}}),SV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(t,e){if(!r.node&&e.getDom()){var n,i=t.getComponent("tooltip"),o=this._renderMode="auto"===(n=i.get("renderMode"))?r.domSupported?"html":"richText":n||"html";this._tooltipContent="richText"===o?new mV(e):new vV(e,{appendTo:i.get("appendToBody",!0)?"body":i.get("appendTo",!0)})}},e.prototype.render=function(t,e,n){if(!r.node&&n.getDom()){this.group.removeAll(),this._tooltipModel=t,this._ecModel=e,this._api=n;var i=this._tooltipContent;i.update(t),i.setEnterable(t.get("enterable")),this._initGlobalListener(),this._keepShow(),"richText"!==this._renderMode&&t.get("transitionDuration")?Hg(this,"_updatePosition",50,"fixRate"):Yg(this,"_updatePosition")}},e.prototype._initGlobalListener=function(){var t=this._tooltipModel.get("triggerOn");CN("itemTooltip",this._api,W((function(e,n,i){"none"!==t&&(t.indexOf(e)>=0?this._tryShow(n,i):"leave"===e&&this._hide(i))}),this))},e.prototype._keepShow=function(){var t=this._tooltipModel,e=this._ecModel,n=this._api,i=t.get("triggerOn");if(null!=this._lastX&&null!=this._lastY&&"none"!==i&&"click"!==i){var r=this;clearTimeout(this._refreshUpdateTimeout),this._refreshUpdateTimeout=setTimeout((function(){!n.isDisposed()&&r.manuallyShowTip(t,e,n,{x:r._lastX,y:r._lastY,dataByCoordSys:r._lastDataByCoordSys})}))}},e.prototype.manuallyShowTip=function(t,e,n,i){if(i.from!==this.uid&&!r.node&&n.getDom()){var o=IV(i,n);this._ticket="";var a=i.dataByCoordSys,s=function(t,e,n){var i=Go(t).queryOptionMap,r=i.keys()[0];if(!r||"series"===r)return;var o=Yo(e,r,i.get(r),{useDefault:!1,enableAll:!1,enableNone:!1}),a=o.models[0];if(!a)return;var s,l=n.getViewOfComponentModel(a);if(l.group.traverse((function(e){var n=rl(e).tooltipConfig;if(n&&n.name===t.name)return s=e,!0})),s)return{componentMainType:r,componentIndex:a.componentIndex,el:s}}(i,e,n);if(s){var l=s.el.getBoundingRect().clone();l.applyTransform(s.el.transform),this._tryShow({offsetX:l.x+l.width/2,offsetY:l.y+l.height/2,target:s.el,position:i.position,positionDefault:"bottom"},o)}else if(i.tooltip&&null!=i.x&&null!=i.y){var u=wV;u.x=i.x,u.y=i.y,u.update(),rl(u).tooltipConfig={name:null,option:i.tooltip},this._tryShow({offsetX:i.x,offsetY:i.y,target:u},o)}else if(a)this._tryShow({offsetX:i.x,offsetY:i.y,position:i.position,dataByCoordSys:a,tooltipOption:i.tooltipOption},o);else if(null!=i.seriesIndex){if(this._manuallyAxisShowTip(t,e,n,i))return;var h=PN(i,e),c=h.point[0],p=h.point[1];null!=c&&null!=p&&this._tryShow({offsetX:c,offsetY:p,target:h.el,position:i.position,positionDefault:"bottom"},o)}else null!=i.x&&null!=i.y&&(n.dispatchAction({type:"updateAxisPointer",x:i.x,y:i.y}),this._tryShow({offsetX:i.x,offsetY:i.y,position:i.position,target:n.getZr().findHover(i.x,i.y).target},o))}},e.prototype.manuallyHideTip=function(t,e,n,i){var r=this._tooltipContent;this._tooltipModel&&r.hideLater(this._tooltipModel.get("hideDelay")),this._lastX=this._lastY=this._lastDataByCoordSys=null,i.from!==this.uid&&this._hide(IV(i,n))},e.prototype._manuallyAxisShowTip=function(t,e,n,i){var r=i.seriesIndex,o=i.dataIndex,a=e.getComponent("axisPointer").coordSysAxesInfo;if(null!=r&&null!=o&&null!=a){var s=e.getSeriesByIndex(r);if(s)if("axis"===MV([s.getData().getItemModel(o),s,(s.coordinateSystem||{}).model],this._tooltipModel).get("trigger"))return n.dispatchAction({type:"updateAxisPointer",seriesIndex:r,dataIndex:o,position:i.position}),!0}},e.prototype._tryShow=function(t,e){var n=t.target;if(this._tooltipModel){this._lastX=t.offsetX,this._lastY=t.offsetY;var i=t.dataByCoordSys;if(i&&i.length)this._showAxisTooltip(i,t);else if(n){var r,o;if("legend"===rl(n).ssrType)return;this._lastDataByCoordSys=null,Oy(n,(function(t){return null!=rl(t).dataIndex?(r=t,!0):null!=rl(t).tooltipConfig?(o=t,!0):void 0}),!0),r?this._showSeriesItemTooltip(t,r,e):o?this._showComponentItemTooltip(t,o,e):this._hide(e)}else this._lastDataByCoordSys=null,this._hide(e)}},e.prototype._showOrMove=function(t,e){var n=t.get("showDelay");e=W(e,this),clearTimeout(this._showTimout),n>0?this._showTimout=setTimeout(e,n):e()},e.prototype._showAxisTooltip=function(t,e){var n=this._ecModel,i=this._tooltipModel,r=[e.offsetX,e.offsetY],o=MV([e.tooltipOption],i),a=this._renderMode,s=[],l=og("section",{blocks:[],noHeader:!0}),u=[],h=new yg;E(t,(function(t){E(t.dataByAxis,(function(t){var e=n.getComponent(t.axisDim+"Axis",t.axisIndex),r=t.value;if(e&&null!=r){var o=fN(r,e.axis,n,t.seriesDataIndices,t.valueLabelOpt),c=og("section",{header:o,noHeader:!ut(o),sortBlocks:!0,blocks:[]});l.blocks.push(c),E(t.seriesDataIndices,(function(l){var p=n.getSeriesByIndex(l.seriesIndex),d=l.dataIndexInside,f=p.getDataParams(d);if(!(f.dataIndex<0)){f.axisDim=t.axisDim,f.axisIndex=t.axisIndex,f.axisType=t.axisType,f.axisId=t.axisId,f.axisValue=S_(e.axis,{value:r}),f.axisValueLabel=o,f.marker=h.makeTooltipMarker("item",Sp(f.color),a);var g=bf(p.formatTooltip(d,!0,null)),y=g.frag;if(y){var v=MV([p],i).get("valueFormatter");c.blocks.push(v?A({valueFormatter:v},y):y)}g.text&&u.push(g.text),s.push(f)}}))}}))})),l.blocks.reverse(),u.reverse();var c=e.position,p=o.get("order"),d=cg(l,h,a,p,n.get("useUTC"),o.get("textStyle"));d&&u.unshift(d);var f="richText"===a?"\n\n":"<br/>",g=u.join(f);this._showOrMove(o,(function(){this._updateContentNotChangedOnAxis(t,s)?this._updatePosition(o,c,r[0],r[1],this._tooltipContent,s):this._showTooltipContent(o,g,s,Math.random()+"",r[0],r[1],c,null,h)}))},e.prototype._showSeriesItemTooltip=function(t,e,n){var i=this._ecModel,r=rl(e),o=r.seriesIndex,a=i.getSeriesByIndex(o),s=r.dataModel||a,l=r.dataIndex,u=r.dataType,h=s.getData(u),c=this._renderMode,p=t.positionDefault,d=MV([h.getItemModel(l),s,a&&(a.coordinateSystem||{}).model],this._tooltipModel,p?{position:p}:null),f=d.get("trigger");if(null==f||"item"===f){var g=s.getDataParams(l,u),y=new yg;g.marker=y.makeTooltipMarker("item",Sp(g.color),c);var v=bf(s.formatTooltip(l,!1,u)),m=d.get("order"),x=d.get("valueFormatter"),_=v.frag,b=_?cg(x?A({valueFormatter:x},_):_,y,c,m,i.get("useUTC"),d.get("textStyle")):v.text,w="item_"+s.name+"_"+l;this._showOrMove(d,(function(){this._showTooltipContent(d,b,g,w,t.offsetX,t.offsetY,t.position,t.target,y)})),n({type:"showTip",dataIndexInside:l,dataIndex:h.getRawIndex(l),seriesIndex:o,from:this.uid})}},e.prototype._showComponentItemTooltip=function(t,e,n){var i="html"===this._renderMode,r=rl(e),o=r.tooltipConfig.option||{},a=o.encodeHTMLContent;if(U(o)){o={content:o,formatter:o},a=!0}a&&i&&o.content&&((o=T(o)).content=re(o.content));var s=[o],l=this._ecModel.getComponent(r.componentMainType,r.componentIndex);l&&s.push(l),s.push({formatter:o.content});var u=t.positionDefault,h=MV(s,this._tooltipModel,u?{position:u}:null),c=h.get("content"),p=Math.random()+"",d=new yg;this._showOrMove(h,(function(){var n=T(h.get("formatterParams")||{});this._showTooltipContent(h,c,n,p,t.offsetX,t.offsetY,t.position,e,d)})),n({type:"showTip",from:this.uid})},e.prototype._showTooltipContent=function(t,e,n,i,r,o,a,s,l){if(this._ticket="",t.get("showContent")&&t.get("show")){var u=this._tooltipContent;u.setEnterable(t.get("enterable"));var h=t.get("formatter");a=a||t.get("position");var c=e,p=this._getNearestPoint([r,o],n,t.get("trigger"),t.get("borderColor")).color;if(h)if(U(h)){var d=t.ecModel.get("useUTC"),f=Y(n)?n[0]:n;c=h,f&&f.axisType&&f.axisType.indexOf("time")>=0&&(c=Jc(f.axisValue,c,d)),c=bp(c,n,!0)}else if(X(h)){var g=W((function(e,i){e===this._ticket&&(u.setContent(i,l,t,p,a),this._updatePosition(t,a,r,o,u,n,s))}),this);this._ticket=i,c=h(n,i,g)}else c=h;u.setContent(c,l,t,p,a),u.show(t,p),this._updatePosition(t,a,r,o,u,n,s)}},e.prototype._getNearestPoint=function(t,e,n,i){return"axis"===n||Y(e)?{color:i||("html"===this._renderMode?"#fff":"none")}:Y(e)?void 0:{color:i||e.color||e.borderColor}},e.prototype._updatePosition=function(t,e,n,i,r,o,a){var s=this._api.getWidth(),l=this._api.getHeight();e=e||t.get("position");var u=r.getSize(),h=t.get("align"),c=t.get("verticalAlign"),p=a&&a.getBoundingRect().clone();if(a&&p.applyTransform(a.transform),X(e)&&(e=e([n,i],o,r.el,p,{viewSize:[s,l],contentSize:u.slice()})),Y(e))n=$r(e[0],s),i=$r(e[1],l);else if(q(e)){var d=e;d.width=u[0],d.height=u[1];var f=kp(d,{width:s,height:l});n=f.x,i=f.y,h=null,c=null}else if(U(e)&&a){var g=function(t,e,n,i){var r=n[0],o=n[1],a=Math.ceil(Math.SQRT2*i)+8,s=0,l=0,u=e.width,h=e.height;switch(t){case"inside":s=e.x+u/2-r/2,l=e.y+h/2-o/2;break;case"top":s=e.x+u/2-r/2,l=e.y-o-a;break;case"bottom":s=e.x+u/2-r/2,l=e.y+h+a;break;case"left":s=e.x-r-a,l=e.y+h/2-o/2;break;case"right":s=e.x+u+a,l=e.y+h/2-o/2}return[s,l]}(e,p,u,t.get("borderWidth"));n=g[0],i=g[1]}else{g=function(t,e,n,i,r,o,a){var s=n.getSize(),l=s[0],u=s[1];null!=o&&(t+l+o+2>i?t-=l+o:t+=o);null!=a&&(e+u+a>r?e-=u+a:e+=a);return[t,e]}(n,i,r,s,l,h?null:20,c?null:20);n=g[0],i=g[1]}if(h&&(n-=TV(h)?u[0]/2:"right"===h?u[0]:0),c&&(i-=TV(c)?u[1]/2:"bottom"===c?u[1]:0),sV(t)){g=function(t,e,n,i,r){var o=n.getSize(),a=o[0],s=o[1];return t=Math.min(t+a,i)-a,e=Math.min(e+s,r)-s,t=Math.max(t,0),e=Math.max(e,0),[t,e]}(n,i,r,s,l);n=g[0],i=g[1]}r.moveTo(n,i)},e.prototype._updateContentNotChangedOnAxis=function(t,e){var n=this._lastDataByCoordSys,i=this._cbParamsList,r=!!n&&n.length===t.length;return r&&E(n,(function(n,o){var a=n.dataByAxis||[],s=(t[o]||{}).dataByAxis||[];(r=r&&a.length===s.length)&&E(a,(function(t,n){var o=s[n]||{},a=t.seriesDataIndices||[],l=o.seriesDataIndices||[];(r=r&&t.value===o.value&&t.axisType===o.axisType&&t.axisId===o.axisId&&a.length===l.length)&&E(a,(function(t,e){var n=l[e];r=r&&t.seriesIndex===n.seriesIndex&&t.dataIndex===n.dataIndex})),i&&E(t.seriesDataIndices,(function(t){var n=t.seriesIndex,o=e[n],a=i[n];o&&a&&a.data!==o.data&&(r=!1)}))}))})),this._lastDataByCoordSys=t,this._cbParamsList=e,!!r},e.prototype._hide=function(t){this._lastDataByCoordSys=null,t({type:"hideTip",from:this.uid})},e.prototype.dispose=function(t,e){!r.node&&e.getDom()&&(Yg(this,"_updatePosition"),this._tooltipContent.dispose(),kN("itemTooltip",e))},e.type="tooltip",e}(Ag);function MV(t,e,n){var i,r=e.ecModel;n?(i=new Cc(n,r,r),i=new Cc(e.option,i,r)):i=e;for(var o=t.length-1;o>=0;o--){var a=t[o];a&&(a instanceof Cc&&(a=a.get("tooltip",!0)),U(a)&&(a={formatter:a}),a&&(i=new Cc(a,i,r)))}return i}function IV(t,e){return t.dispatchAction||W(e.dispatchAction,e)}function TV(t){return"center"===t||"middle"===t}var CV=["rect","polygon","keep","clear"];function DV(t,e){var n=To(t?t.brush:[]);if(n.length){var i=[];E(n,(function(t){var e=t.hasOwnProperty("toolbox")?t.toolbox:[];e instanceof Array&&(i=i.concat(e))}));var r=t&&t.toolbox;Y(r)&&(r=r[0]),r||(r={feature:{}},t.toolbox=[r]);var o=r.feature||(r.feature={}),a=o.brush||(o.brush={}),s=a.type||(a.type=[]);s.push.apply(s,i),function(t){var e={};E(t,(function(t){e[t]=1})),t.length=0,E(e,(function(e,n){t.push(n)}))}(s),e&&!s.length&&s.push.apply(s,CV)}}var AV=E;function kV(t){if(t)for(var e in t)if(t.hasOwnProperty(e))return!0}function LV(t,e,n){var i={};return AV(e,(function(e){var r,o=i[e]=((r=function(){}).prototype.__hidden=r.prototype,new r);AV(t[e],(function(t,i){if(kD.isValidType(i)){var r={type:i,visual:t};n&&n(r,e),o[i]=new kD(r),"opacity"===i&&((r=T(r)).type="colorAlpha",o.__hidden.__alphaForOpacity=new kD(r))}}))})),i}function PV(t,e,n){var i;E(n,(function(t){e.hasOwnProperty(t)&&kV(e[t])&&(i=!0)})),i&&E(n,(function(n){e.hasOwnProperty(n)&&kV(e[n])?t[n]=T(e[n]):delete t[n]}))}var OV={lineX:RV(0),lineY:RV(1),rect:{point:function(t,e,n){return t&&n.boundingRect.contain(t[0],t[1])},rect:function(t,e,n){return t&&n.boundingRect.intersect(t)}},polygon:{point:function(t,e,n){return t&&n.boundingRect.contain(t[0],t[1])&&P_(n.range,t[0],t[1])},rect:function(t,e,n){var i=n.range;if(!t||i.length<=1)return!1;var r=t.x,o=t.y,a=t.width,s=t.height,l=i[0];return!!(P_(i,r,o)||P_(i,r+a,o)||P_(i,r,o+s)||P_(i,r+a,o+s)||ze.create(t).contain(l[0],l[1])||Zh(r,o,r+a,o,i)||Zh(r,o,r,o+s,i)||Zh(r+a,o,r+a,o+s,i)||Zh(r,o+s,r+a,o+s,i))||void 0}}};function RV(t){var e=["x","y"],n=["width","height"];return{point:function(e,n,i){if(e){var r=i.range;return NV(e[t],r)}},rect:function(i,r,o){if(i){var a=o.range,s=[i[e[t]],i[e[t]]+i[n[t]]];return s[1]<s[0]&&s.reverse(),NV(s[0],a)||NV(s[1],a)||NV(a[0],s)||NV(a[1],s)}}}}function NV(t,e){return e[0]<=t&&t<=e[1]}var EV=["inBrush","outOfBrush"],zV="__ecBrushSelect",VV="__ecInBrushSelectEvent";function BV(t){t.eachComponent({mainType:"brush"},(function(e){(e.brushTargetManager=new Wz(e.option,t)).setInputRanges(e.areas,t)}))}function FV(t,e,n){var i,r,o=[];t.eachComponent({mainType:"brush"},(function(t){n&&"takeGlobalCursor"===n.type&&t.setBrushOption("brush"===n.key?n.brushOption:{brushType:!1})})),BV(t),t.eachComponent({mainType:"brush"},(function(e,n){var a={brushId:e.id,brushIndex:n,brushName:e.name,areas:T(e.areas),selected:[]};o.push(a);var s=e.option,l=s.brushLink,u=[],h=[],c=[],p=!1;n||(i=s.throttleType,r=s.throttleDelay);var d=z(e.areas,(function(t){var e=HV[t.brushType],n=k({boundingRect:e?e(t):void 0},t);return n.selectors=function(t){var e=t.brushType,n={point:function(i){return OV[e].point(i,n,t)},rect:function(i){return OV[e].rect(i,n,t)}};return n}(n),n})),f=LV(e.option,EV,(function(t){t.mappingMethod="fixed"}));function g(t){return"all"===l||!!u[t]}function y(t){return!!t.length}Y(l)&&E(l,(function(t){u[t]=1})),t.eachSeries((function(n,i){var r=c[i]=[];"parallel"===n.subType?function(t,e){var n=t.coordinateSystem;p=p||n.hasAxisBrushed(),g(e)&&n.eachActiveState(t.getData(),(function(t,e){"active"===t&&(h[e]=1)}))}(n,i):function(n,i,r){if(!n.brushSelector||function(t,e){var n=t.option.seriesIndex;return null!=n&&"all"!==n&&(Y(n)?P(n,e)<0:e!==n)}(e,i))return;if(E(d,(function(i){e.brushTargetManager.controlSeries(i,n,t)&&r.push(i),p=p||y(r)})),g(i)&&y(r)){var o=n.getData();o.each((function(t){WV(n,r,o,t)&&(h[t]=1)}))}}(n,i,r)})),t.eachSeries((function(t,e){var n={seriesId:t.id,seriesIndex:e,seriesName:t.name,dataIndex:[]};a.selected.push(n);var i=c[e],r=t.getData(),o=g(e)?function(t){return h[t]?(n.dataIndex.push(r.getRawIndex(t)),"inBrush"):"outOfBrush"}:function(e){return WV(t,i,r,e)?(n.dataIndex.push(r.getRawIndex(e)),"inBrush"):"outOfBrush"};(g(e)?p:y(i))&&function(t,e,n,i,r,o){var a,s={};function l(t){return Dy(n,a,t)}function u(t,e){ky(n,a,t,e)}function h(t,h){a=null==o?t:h;var c=n.getRawDataItem(a);if(!c||!1!==c.visualMap)for(var p=i.call(r,t),d=e[p],f=s[p],g=0,y=f.length;g<y;g++){var v=f[g];d[v]&&d[v].applyVisual(t,l,u)}}E(t,(function(t){var n=kD.prepareVisualTypes(e[t]);s[t]=n})),null==o?n.each(h):n.each([o],h)}(EV,f,r,o)}))})),function(t,e,n,i,r){if(!r)return;var o=t.getZr();if(o[VV])return;o[zV]||(o[zV]=GV);var a=Hg(o,zV,n,e);a(t,i)}(e,i,r,o,n)}function GV(t,e){if(!t.isDisposed()){var n=t.getZr();n[VV]=!0,t.dispatchAction({type:"brushSelect",batch:e}),n[VV]=!1}}function WV(t,e,n,i){for(var r=0,o=e.length;r<o;r++){var a=e[r];if(t.brushSelector(i,n,a.selectors,a))return!0}}var HV={rect:function(t){return YV(t.range)},polygon:function(t){for(var e,n=t.range,i=0,r=n.length;i<r;i++){e=e||[[1/0,-1/0],[1/0,-1/0]];var o=n[i];o[0]<e[0][0]&&(e[0][0]=o[0]),o[0]>e[0][1]&&(e[0][1]=o[0]),o[1]<e[1][0]&&(e[1][0]=o[1]),o[1]>e[1][1]&&(e[1][1]=o[1])}return e&&YV(e)}};function YV(t){return new ze(t[0][0],t[1][0],t[0][1]-t[0][0],t[1][1]-t[1][0])}var XV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(t,e){this.ecModel=t,this.api=e,this.model,(this._brushController=new lL(e.getZr())).on("brush",W(this._onBrush,this)).mount()},e.prototype.render=function(t,e,n,i){this.model=t,this._updateController(t,e,n,i)},e.prototype.updateTransform=function(t,e,n,i){BV(e),this._updateController(t,e,n,i)},e.prototype.updateVisual=function(t,e,n,i){this.updateTransform(t,e,n,i)},e.prototype.updateView=function(t,e,n,i){this._updateController(t,e,n,i)},e.prototype._updateController=function(t,e,n,i){(!i||i.$from!==t.id)&&this._brushController.setPanels(t.brushTargetManager.makePanelOpts(n)).enableBrush(t.brushOption).updateCovers(t.areas.slice())},e.prototype.dispose=function(){this._brushController.dispose()},e.prototype._onBrush=function(t){var e=this.model.id,n=this.model.brushTargetManager.setOutputRanges(t.areas,this.ecModel);(!t.isEnd||t.removeOnClick)&&this.api.dispatchAction({type:"brush",brushId:e,areas:T(n),$from:e}),t.isEnd&&this.api.dispatchAction({type:"brushEnd",brushId:e,areas:T(n),$from:e})},e.type="brush",e}(Ag),UV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.areas=[],n.brushOption={},n}return n(e,t),e.prototype.optionUpdated=function(t,e){var n=this.option;!e&&PV(n,t,["inBrush","outOfBrush"]);var i=n.inBrush=n.inBrush||{};n.outOfBrush=n.outOfBrush||{color:"#ddd"},i.hasOwnProperty("liftZ")||(i.liftZ=5)},e.prototype.setAreas=function(t){t&&(this.areas=z(t,(function(t){return ZV(this.option,t)}),this))},e.prototype.setBrushOption=function(t){this.brushOption=ZV(this.option,t),this.brushType=this.brushOption.brushType},e.type="brush",e.dependencies=["geo","grid","xAxis","yAxis","parallel","series"],e.defaultOption={seriesIndex:"all",brushType:"rect",brushMode:"single",transformable:!0,brushStyle:{borderWidth:1,color:"rgba(210,219,238,0.3)",borderColor:"#D2DBEE"},throttleType:"fixRate",throttleDelay:0,removeOnClick:!0,z:1e4},e}(zp);function ZV(t,e){return C({brushType:t.brushType,brushMode:t.brushMode,transformable:t.transformable,brushStyle:new Cc(t.brushStyle).getItemStyle(),removeOnClick:t.removeOnClick,z:t.z},e,!0)}var jV=["rect","polygon","lineX","lineY","keep","clear"],qV=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.render=function(t,e,n){var i,r,o;e.eachComponent({mainType:"brush"},(function(t){i=t.brushType,r=t.brushOption.brushMode||"single",o=o||!!t.areas.length})),this._brushType=i,this._brushMode=r,E(t.get("type",!0),(function(e){t.setIconStatus(e,("keep"===e?"multiple"===r:"clear"===e?o:e===i)?"emphasis":"normal")}))},e.prototype.updateView=function(t,e,n){this.render(t,e,n)},e.prototype.getIcons=function(){var t=this.model,e=t.get("icon",!0),n={};return E(t.get("type",!0),(function(t){e[t]&&(n[t]=e[t])})),n},e.prototype.onclick=function(t,e,n){var i=this._brushType,r=this._brushMode;"clear"===n?(e.dispatchAction({type:"axisAreaSelect",intervals:[]}),e.dispatchAction({type:"brush",command:"clear",areas:[]})):e.dispatchAction({type:"takeGlobalCursor",key:"brush",brushOption:{brushType:"keep"===n?i:i!==n&&n,brushMode:"keep"===n?"multiple"===r?"single":"multiple":r}})},e.getDefaultOption=function(t){return{show:!0,type:jV.slice(),icon:{rect:"M7.3,34.7 M0.4,10V-0.2h9.8 M89.6,10V-0.2h-9.8 M0.4,60v10.2h9.8 M89.6,60v10.2h-9.8 M12.3,22.4V10.5h13.1 M33.6,10.5h7.8 M49.1,10.5h7.8 M77.5,22.4V10.5h-13 M12.3,31.1v8.2 M77.7,31.1v8.2 M12.3,47.6v11.9h13.1 M33.6,59.5h7.6 M49.1,59.5 h7.7 M77.5,47.6v11.9h-13",polygon:"M55.2,34.9c1.7,0,3.1,1.4,3.1,3.1s-1.4,3.1-3.1,3.1 s-3.1-1.4-3.1-3.1S53.5,34.9,55.2,34.9z M50.4,51c1.7,0,3.1,1.4,3.1,3.1c0,1.7-1.4,3.1-3.1,3.1c-1.7,0-3.1-1.4-3.1-3.1 C47.3,52.4,48.7,51,50.4,51z M55.6,37.1l1.5-7.8 M60.1,13.5l1.6-8.7l-7.8,4 M59,19l-1,5.3 M24,16.1l6.4,4.9l6.4-3.3 M48.5,11.6 l-5.9,3.1 M19.1,12.8L9.7,5.1l1.1,7.7 M13.4,29.8l1,7.3l6.6,1.6 M11.6,18.4l1,6.1 M32.8,41.9 M26.6,40.4 M27.3,40.2l6.1,1.6 M49.9,52.1l-5.6-7.6l-4.9-1.2",lineX:"M15.2,30 M19.7,15.6V1.9H29 M34.8,1.9H40.4 M55.3,15.6V1.9H45.9 M19.7,44.4V58.1H29 M34.8,58.1H40.4 M55.3,44.4 V58.1H45.9 M12.5,20.3l-9.4,9.6l9.6,9.8 M3.1,29.9h16.5 M62.5,20.3l9.4,9.6L62.3,39.7 M71.9,29.9H55.4",lineY:"M38.8,7.7 M52.7,12h13.2v9 M65.9,26.6V32 M52.7,46.3h13.2v-9 M24.9,12H11.8v9 M11.8,26.6V32 M24.9,46.3H11.8v-9 M48.2,5.1l-9.3-9l-9.4,9.2 M38.9-3.9V12 M48.2,53.3l-9.3,9l-9.4-9.2 M38.9,62.3V46.4",keep:"M4,10.5V1h10.3 M20.7,1h6.1 M33,1h6.1 M55.4,10.5V1H45.2 M4,17.3v6.6 M55.6,17.3v6.6 M4,30.5V40h10.3 M20.7,40 h6.1 M33,40h6.1 M55.4,30.5V40H45.2 M21,18.9h62.9v48.6H21V18.9z",clear:"M22,14.7l30.9,31 M52.9,14.7L22,45.7 M4.7,16.8V4.2h13.1 M26,4.2h7.8 M41.6,4.2h7.8 M70.3,16.8V4.2H57.2 M4.7,25.9v8.6 M70.3,25.9v8.6 M4.7,43.2v12.6h13.1 M26,55.8h7.8 M41.6,55.8h7.8 M70.3,43.2v12.6H57.2"},title:t.getLocaleModel().get(["toolbox","brush","title"])}},e}(mz);var KV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.layoutMode={type:"box",ignoreSize:!0},n}return n(e,t),e.type="title",e.defaultOption={z:6,show:!0,text:"",target:"blank",subtext:"",subtarget:"blank",left:0,top:0,backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",borderWidth:0,padding:5,itemGap:10,textStyle:{fontSize:18,fontWeight:"bold",color:"#464646"},subtextStyle:{fontSize:12,color:"#6E7079"}},e}(zp),$V=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){if(this.group.removeAll(),t.get("show")){var i=this.group,r=t.getModel("textStyle"),o=t.getModel("subtextStyle"),a=t.get("textAlign"),s=rt(t.get("textBaseline"),t.get("textVerticalAlign")),l=new Xs({style:oc(r,{text:t.get("text"),fill:r.getTextColor()},{disableBox:!0}),z2:10}),u=l.getBoundingRect(),h=t.get("subtext"),c=new Xs({style:oc(o,{text:h,fill:o.getTextColor(),y:u.height+t.get("itemGap"),verticalAlign:"top"},{disableBox:!0}),z2:10}),p=t.get("link"),d=t.get("sublink"),f=t.get("triggerEvent",!0);l.silent=!p&&!f,c.silent=!d&&!f,p&&l.on("click",(function(){Mp(p,"_"+t.get("target"))})),d&&c.on("click",(function(){Mp(d,"_"+t.get("subtarget"))})),rl(l).eventData=rl(c).eventData=f?{componentType:"title",componentIndex:t.componentIndex}:null,i.add(l),h&&i.add(c);var g=i.getBoundingRect(),y=t.getBoxLayoutParams();y.width=g.width,y.height=g.height;var v=kp(y,{width:n.getWidth(),height:n.getHeight()},t.get("padding"));a||("middle"===(a=t.get("left")||t.get("right"))&&(a="center"),"right"===a?v.x+=v.width:"center"===a&&(v.x+=v.width/2)),s||("center"===(s=t.get("top")||t.get("bottom"))&&(s="middle"),"bottom"===s?v.y+=v.height:"middle"===s&&(v.y+=v.height/2),s=s||"top"),i.x=v.x,i.y=v.y,i.markRedraw();var m={align:a,verticalAlign:s};l.setStyle(m),c.setStyle(m),g=i.getBoundingRect();var x=v.margin,_=t.getItemStyle(["color","opacity"]);_.fill=t.get("backgroundColor");var b=new Ws({shape:{x:g.x-x[3],y:g.y-x[0],width:g.width+x[1]+x[3],height:g.height+x[0]+x[2],r:t.get("borderRadius")},style:_,subPixelOptimize:!0,silent:!0});i.add(b)}},e.type="title",e}(Ag);var JV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.layoutMode="box",n}return n(e,t),e.prototype.init=function(t,e,n){this.mergeDefaultAndTheme(t,n),this._initData()},e.prototype.mergeOption=function(e){t.prototype.mergeOption.apply(this,arguments),this._initData()},e.prototype.setCurrentIndex=function(t){null==t&&(t=this.option.currentIndex);var e=this._data.count();this.option.loop?t=(t%e+e)%e:(t>=e&&(t=e-1),t<0&&(t=0)),this.option.currentIndex=t},e.prototype.getCurrentIndex=function(){return this.option.currentIndex},e.prototype.isIndexMax=function(){return this.getCurrentIndex()>=this._data.count()-1},e.prototype.setPlayState=function(t){this.option.autoPlay=!!t},e.prototype.getPlayState=function(){return!!this.option.autoPlay},e.prototype._initData=function(){var t,e=this.option,n=e.data||[],i=e.axisType,r=this._names=[];"category"===i?(t=[],E(n,(function(e,n){var i,o=Ro(Ao(e),"");q(e)?(i=T(e)).value=n:i=n,t.push(i),r.push(o)}))):t=n;var o={category:"ordinal",time:"time",value:"number"}[i]||"number";(this._data=new cx([{name:"value",type:o}],this)).initData(t,r)},e.prototype.getData=function(){return this._data},e.prototype.getCategories=function(){if("category"===this.get("axisType"))return this._names.slice()},e.type="timeline",e.defaultOption={z:4,show:!0,axisType:"time",realtime:!0,left:"20%",top:null,right:"20%",bottom:0,width:null,height:40,padding:5,controlPosition:"left",autoPlay:!1,rewind:!1,loop:!0,playInterval:2e3,currentIndex:0,itemStyle:{},label:{color:"#000"},data:[]},e}(zp),QV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="timeline.slider",e.defaultOption=kc(JV.defaultOption,{backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",borderWidth:0,orient:"horizontal",inverse:!1,tooltip:{trigger:"item"},symbol:"circle",symbolSize:12,lineStyle:{show:!0,width:2,color:"#DAE1F5"},label:{position:"auto",show:!0,interval:"auto",rotate:0,color:"#A4B1D7"},itemStyle:{color:"#A4B1D7",borderWidth:1},checkpointStyle:{symbol:"circle",symbolSize:15,color:"#316bf3",borderColor:"#fff",borderWidth:2,shadowBlur:2,shadowOffsetX:1,shadowOffsetY:1,shadowColor:"rgba(0, 0, 0, 0.3)",animation:!0,animationDuration:300,animationEasing:"quinticInOut"},controlStyle:{show:!0,showPlayBtn:!0,showPrevBtn:!0,showNextBtn:!0,itemSize:24,itemGap:12,position:"left",playIcon:"path://M31.6,53C17.5,53,6,41.5,6,27.4S17.5,1.8,31.6,1.8C45.7,1.8,57.2,13.3,57.2,27.4S45.7,53,31.6,53z M31.6,3.3 C18.4,3.3,7.5,14.1,7.5,27.4c0,13.3,10.8,24.1,24.1,24.1C44.9,51.5,55.7,40.7,55.7,27.4C55.7,14.1,44.9,3.3,31.6,3.3z M24.9,21.3 c0-2.2,1.6-3.1,3.5-2l10.5,6.1c1.899,1.1,1.899,2.9,0,4l-10.5,6.1c-1.9,1.1-3.5,0.2-3.5-2V21.3z",stopIcon:"path://M30.9,53.2C16.8,53.2,5.3,41.7,5.3,27.6S16.8,2,30.9,2C45,2,56.4,13.5,56.4,27.6S45,53.2,30.9,53.2z M30.9,3.5C17.6,3.5,6.8,14.4,6.8,27.6c0,13.3,10.8,24.1,24.101,24.1C44.2,51.7,55,40.9,55,27.6C54.9,14.4,44.1,3.5,30.9,3.5z M36.9,35.8c0,0.601-0.4,1-0.9,1h-1.3c-0.5,0-0.9-0.399-0.9-1V19.5c0-0.6,0.4-1,0.9-1H36c0.5,0,0.9,0.4,0.9,1V35.8z M27.8,35.8 c0,0.601-0.4,1-0.9,1h-1.3c-0.5,0-0.9-0.399-0.9-1V19.5c0-0.6,0.4-1,0.9-1H27c0.5,0,0.9,0.4,0.9,1L27.8,35.8L27.8,35.8z",nextIcon:"M2,18.5A1.52,1.52,0,0,1,.92,18a1.49,1.49,0,0,1,0-2.12L7.81,9.36,1,3.11A1.5,1.5,0,1,1,3,.89l8,7.34a1.48,1.48,0,0,1,.49,1.09,1.51,1.51,0,0,1-.46,1.1L3,18.08A1.5,1.5,0,0,1,2,18.5Z",prevIcon:"M10,.5A1.52,1.52,0,0,1,11.08,1a1.49,1.49,0,0,1,0,2.12L4.19,9.64,11,15.89a1.5,1.5,0,1,1-2,2.22L1,10.77A1.48,1.48,0,0,1,.5,9.68,1.51,1.51,0,0,1,1,8.58L9,.92A1.5,1.5,0,0,1,10,.5Z",prevBtnSize:18,nextBtnSize:18,color:"#A4B1D7",borderColor:"#A4B1D7",borderWidth:1},emphasis:{label:{show:!0,color:"#6f778d"},itemStyle:{color:"#316BF3"},controlStyle:{color:"#316BF3",borderColor:"#316BF3",borderWidth:2}},progress:{lineStyle:{color:"#316BF3"},itemStyle:{color:"#316BF3"},label:{color:"#6f778d"}},data:[]}),e}(JV);R(QV,_f.prototype);var tB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="timeline",e}(Ag),eB=function(t){function e(e,n,i,r){var o=t.call(this,e,n,i)||this;return o.type=r||"value",o}return n(e,t),e.prototype.getLabelModel=function(){return this.model.getModel("label")},e.prototype.isHorizontal=function(){return"horizontal"===this.model.get("orient")},e}(ab),nB=Math.PI,iB=Vo(),rB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(t,e){this.api=e},e.prototype.render=function(t,e,n){if(this.model=t,this.api=n,this.ecModel=e,this.group.removeAll(),t.get("show",!0)){var i=this._layout(t,n),r=this._createGroup("_mainGroup"),o=this._createGroup("_labelGroup"),a=this._axis=this._createAxis(i,t);t.formatTooltip=function(t){return og("nameValue",{noName:!0,value:a.scale.getLabel({value:t})})},E(["AxisLine","AxisTick","Control","CurrentPointer"],(function(e){this["_render"+e](i,r,a,t)}),this),this._renderAxisLabel(i,o,a,t),this._position(i,t)}this._doPlayStop(),this._updateTicksStatus()},e.prototype.remove=function(){this._clearTimer(),this.group.removeAll()},e.prototype.dispose=function(){this._clearTimer()},e.prototype._layout=function(t,e){var n,i,r,o,a=t.get(["label","position"]),s=t.get("orient"),l=function(t,e){return kp(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()},t.get("padding"))}(t,e),u={horizontal:"center",vertical:(n=null==a||"auto"===a?"horizontal"===s?l.y+l.height/2<e.getHeight()/2?"-":"+":l.x+l.width/2<e.getWidth()/2?"+":"-":U(a)?{horizontal:{top:"-",bottom:"+"},vertical:{left:"-",right:"+"}}[s][a]:a)>=0||"+"===n?"left":"right"},h={horizontal:n>=0||"+"===n?"top":"bottom",vertical:"middle"},c={horizontal:0,vertical:nB/2},p="vertical"===s?l.height:l.width,d=t.getModel("controlStyle"),f=d.get("show",!0),g=f?d.get("itemSize"):0,y=f?d.get("itemGap"):0,v=g+y,m=t.get(["label","rotate"])||0;m=m*nB/180;var x=d.get("position",!0),_=f&&d.get("showPlayBtn",!0),b=f&&d.get("showPrevBtn",!0),w=f&&d.get("showNextBtn",!0),S=0,M=p;"left"===x||"bottom"===x?(_&&(i=[0,0],S+=v),b&&(r=[S,0],S+=v),w&&(o=[M-g,0],M-=v)):(_&&(i=[M-g,0],M-=v),b&&(r=[0,0],S+=v),w&&(o=[M-g,0],M-=v));var I=[S,M];return t.get("inverse")&&I.reverse(),{viewRect:l,mainLength:p,orient:s,rotation:c[s],labelRotation:m,labelPosOpt:n,labelAlign:t.get(["label","align"])||u[s],labelBaseline:t.get(["label","verticalAlign"])||t.get(["label","baseline"])||h[s],playPosition:i,prevBtnPosition:r,nextBtnPosition:o,axisExtent:I,controlSize:g,controlGap:y}},e.prototype._position=function(t,e){var n=this._mainGroup,i=this._labelGroup,r=t.viewRect;if("vertical"===t.orient){var o=[1,0,0,1,0,0],a=r.x,s=r.y+r.height;we(o,o,[-a,-s]),Se(o,o,-nB/2),we(o,o,[a,s]),(r=r.clone()).applyTransform(o)}var l=y(r),u=y(n.getBoundingRect()),h=y(i.getBoundingRect()),c=[n.x,n.y],p=[i.x,i.y];p[0]=c[0]=l[0][0];var d,f=t.labelPosOpt;null==f||U(f)?(v(c,u,l,1,d="+"===f?0:1),v(p,h,l,1,1-d)):(v(c,u,l,1,d=f>=0?0:1),p[1]=c[1]+f);function g(t){t.originX=l[0][0]-t.x,t.originY=l[1][0]-t.y}function y(t){return[[t.x,t.x+t.width],[t.y,t.y+t.height]]}function v(t,e,n,i,r){t[i]+=n[i][r]-e[i][r]}n.setPosition(c),i.setPosition(p),n.rotation=i.rotation=t.rotation,g(n),g(i)},e.prototype._createAxis=function(t,e){var n=e.getData(),i=e.get("axisType"),r=function(t,e){if(e=e||t.get("type"),e)switch(e){case"category":return new Rx({ordinalMeta:t.getCategories(),extent:[1/0,-1/0]});case"time":return new Kx({locale:t.ecModel.getLocaleModel(),useUTC:t.ecModel.get("useUTC")});default:return new Ex}}(e,i);r.getTicks=function(){return n.mapArray(["value"],(function(t){return{value:t}}))};var o=n.getDataExtent("value");r.setExtent(o[0],o[1]),r.calcNiceTicks();var a=new eB("value",r,t.axisExtent,i);return a.model=e,a},e.prototype._createGroup=function(t){var e=this[t]=new Br;return this.group.add(e),e},e.prototype._renderAxisLine=function(t,e,n,i){var r=n.getExtent();if(i.get(["lineStyle","show"])){var o=new Ku({shape:{x1:r[0],y1:0,x2:r[1],y2:0},style:A({lineCap:"round"},i.getModel("lineStyle").getLineStyle()),silent:!0,z2:1});e.add(o);var a=this._progressLine=new Ku({shape:{x1:r[0],x2:this._currentPointer?this._currentPointer.x:r[0],y1:0,y2:0},style:k({lineCap:"round",lineWidth:o.style.lineWidth},i.getModel(["progress","lineStyle"]).getLineStyle()),silent:!0,z2:1});e.add(a)}},e.prototype._renderAxisTick=function(t,e,n,i){var r=this,o=i.getData(),a=n.scale.getTicks();this._tickSymbols=[],E(a,(function(t){var a=n.dataToCoord(t.value),s=o.getItemModel(t.value),l=s.getModel("itemStyle"),u=s.getModel(["emphasis","itemStyle"]),h=s.getModel(["progress","itemStyle"]),c={x:a,y:0,onclick:W(r._changeTimeline,r,t.value)},p=oB(s,l,e,c);p.ensureState("emphasis").style=u.getItemStyle(),p.ensureState("progress").style=h.getItemStyle(),Ul(p);var d=rl(p);s.get("tooltip")?(d.dataIndex=t.value,d.dataModel=i):d.dataIndex=d.dataModel=null,r._tickSymbols.push(p)}))},e.prototype._renderAxisLabel=function(t,e,n,i){var r=this;if(n.getLabelModel().get("show")){var o=i.getData(),a=n.getViewLabels();this._tickLabels=[],E(a,(function(i){var a=i.tickValue,s=o.getItemModel(a),l=s.getModel("label"),u=s.getModel(["emphasis","label"]),h=s.getModel(["progress","label"]),c=n.dataToCoord(i.tickValue),p=new Xs({x:c,y:0,rotation:t.labelRotation-t.rotation,onclick:W(r._changeTimeline,r,a),silent:!1,style:oc(l,{text:i.formattedLabel,align:t.labelAlign,verticalAlign:t.labelBaseline})});p.ensureState("emphasis").style=oc(u),p.ensureState("progress").style=oc(h),e.add(p),Ul(p),iB(p).dataIndex=a,r._tickLabels.push(p)}))}},e.prototype._renderControl=function(t,e,n,i){var r=t.controlSize,o=t.rotation,a=i.getModel("controlStyle").getItemStyle(),s=i.getModel(["emphasis","controlStyle"]).getItemStyle(),l=i.getPlayState(),u=i.get("inverse",!0);function h(t,n,l,u){if(t){var h=Cr(rt(i.get(["controlStyle",n+"BtnSize"]),r),r),c=function(t,e,n,i){var r=i.style,o=Uh(t.get(["controlStyle",e]),i||{},new ze(n[0],n[1],n[2],n[3]));r&&o.setStyle(r);return o}(i,n+"Icon",[0,-h/2,h,h],{x:t[0],y:t[1],originX:r/2,originY:0,rotation:u?-o:0,rectHover:!0,style:a,onclick:l});c.ensureState("emphasis").style=s,e.add(c),Ul(c)}}h(t.nextBtnPosition,"next",W(this._changeTimeline,this,u?"-":"+")),h(t.prevBtnPosition,"prev",W(this._changeTimeline,this,u?"+":"-")),h(t.playPosition,l?"stop":"play",W(this._handlePlayClick,this,!l),!0)},e.prototype._renderCurrentPointer=function(t,e,n,i){var r=i.getData(),o=i.getCurrentIndex(),a=r.getItemModel(o).getModel("checkpointStyle"),s=this,l={onCreate:function(t){t.draggable=!0,t.drift=W(s._handlePointerDrag,s),t.ondragend=W(s._handlePointerDragend,s),aB(t,s._progressLine,o,n,i,!0)},onUpdate:function(t){aB(t,s._progressLine,o,n,i)}};this._currentPointer=oB(a,a,this._mainGroup,{},this._currentPointer,l)},e.prototype._handlePlayClick=function(t){this._clearTimer(),this.api.dispatchAction({type:"timelinePlayChange",playState:t,from:this.uid})},e.prototype._handlePointerDrag=function(t,e,n){this._clearTimer(),this._pointerChangeTimeline([n.offsetX,n.offsetY])},e.prototype._handlePointerDragend=function(t){this._pointerChangeTimeline([t.offsetX,t.offsetY],!0)},e.prototype._pointerChangeTimeline=function(t,e){var n=this._toAxisCoord(t)[0],i=Qr(this._axis.getExtent().slice());n>i[1]&&(n=i[1]),n<i[0]&&(n=i[0]),this._currentPointer.x=n,this._currentPointer.markRedraw();var r=this._progressLine;r&&(r.shape.x2=n,r.dirty());var o=this._findNearestTick(n),a=this.model;(e||o!==a.getCurrentIndex()&&a.get("realtime"))&&this._changeTimeline(o)},e.prototype._doPlayStop=function(){var t=this;this._clearTimer(),this.model.getPlayState()&&(this._timer=setTimeout((function(){var e=t.model;t._changeTimeline(e.getCurrentIndex()+(e.get("rewind",!0)?-1:1))}),this.model.get("playInterval")))},e.prototype._toAxisCoord=function(t){return Fh(t,this._mainGroup.getLocalTransform(),!0)},e.prototype._findNearestTick=function(t){var e,n=this.model.getData(),i=1/0,r=this._axis;return n.each(["value"],(function(n,o){var a=r.dataToCoord(n),s=Math.abs(a-t);s<i&&(i=s,e=o)})),e},e.prototype._clearTimer=function(){this._timer&&(clearTimeout(this._timer),this._timer=null)},e.prototype._changeTimeline=function(t){var e=this.model.getCurrentIndex();"+"===t?t=e+1:"-"===t&&(t=e-1),this.api.dispatchAction({type:"timelineChange",currentIndex:t,from:this.uid})},e.prototype._updateTicksStatus=function(){var t=this.model.getCurrentIndex(),e=this._tickSymbols,n=this._tickLabels;if(e)for(var i=0;i<e.length;i++)e&&e[i]&&e[i].toggleState("progress",i<t);if(n)for(i=0;i<n.length;i++)n&&n[i]&&n[i].toggleState("progress",iB(n[i]).dataIndex<=t)},e.type="timeline.slider",e}(tB);function oB(t,e,n,i,r,o){var a=e.get("color");r?(r.setColor(a),n.add(r),o&&o.onUpdate(r)):((r=Xy(t.get("symbol"),-1,-1,2,2,a)).setStyle("strokeNoScale",!0),n.add(r),o&&o.onCreate(r));var s=e.getItemStyle(["color"]);r.setStyle(s),i=C({rectHover:!0,z2:100},i,!0);var l=Uy(t.get("symbolSize"));i.scaleX=l[0]/2,i.scaleY=l[1]/2;var u=Zy(t.get("symbolOffset"),l);u&&(i.x=(i.x||0)+u[0],i.y=(i.y||0)+u[1]);var h=t.get("symbolRotate");return i.rotation=(h||0)*Math.PI/180||0,r.attr(i),r.updateTransform(),r}function aB(t,e,n,i,r,o){if(!t.dragging){var a=r.getModel("checkpointStyle"),s=i.dataToCoord(r.getData().get("value",n));if(o||!a.get("animation",!0))t.attr({x:s,y:0}),e&&e.attr({shape:{x2:s}});else{var l={duration:a.get("animationDuration",!0),easing:a.get("animationEasing",!0)};t.stopAnimation(null,!0),t.animateTo({x:s,y:0},l),e&&e.animateTo({shape:{x2:s}},l)}}}function sB(t){var e=t&&t.timeline;Y(e)||(e=e?[e]:[]),E(e,(function(t){t&&function(t){var e=t.type,n={number:"value",time:"time"};n[e]&&(t.axisType=n[e],delete t.type);if(lB(t),uB(t,"controlPosition")){var i=t.controlStyle||(t.controlStyle={});uB(i,"position")||(i.position=t.controlPosition),"none"!==i.position||uB(i,"show")||(i.show=!1,delete i.position),delete t.controlPosition}E(t.data||[],(function(t){q(t)&&!Y(t)&&(!uB(t,"value")&&uB(t,"name")&&(t.value=t.name),lB(t))}))}(t)}))}function lB(t){var e=t.itemStyle||(t.itemStyle={}),n=e.emphasis||(e.emphasis={}),i=t.label||t.label||{},r=i.normal||(i.normal={}),o={normal:1,emphasis:1};E(i,(function(t,e){o[e]||uB(r,e)||(r[e]=t)})),n.label&&!uB(i,"emphasis")&&(i.emphasis=n.label,delete n.label)}function uB(t,e){return t.hasOwnProperty(e)}function hB(t,e){if(!t)return!1;for(var n=Y(t)?t:[t],i=0;i<n.length;i++)if(n[i]&&n[i][e])return!0;return!1}function cB(t){Co(t,"label",["show"])}var pB=Vo(),dB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.createdBySelf=!1,n}return n(e,t),e.prototype.init=function(t,e,n){this.mergeDefaultAndTheme(t,n),this._mergeOption(t,n,!1,!0)},e.prototype.isAnimationEnabled=function(){if(r.node)return!1;var t=this.__hostSeries;return this.getShallow("animation")&&t&&t.isAnimationEnabled()},e.prototype.mergeOption=function(t,e){this._mergeOption(t,e,!1,!1)},e.prototype._mergeOption=function(t,e,n,i){var r=this.mainType;n||e.eachSeries((function(t){var n=t.get(this.mainType,!0),o=pB(t)[r];n&&n.data?(o?o._mergeOption(n,e,!0):(i&&cB(n),E(n.data,(function(t){t instanceof Array?(cB(t[0]),cB(t[1])):cB(t)})),A(o=this.createMarkerModelFromSeries(n,this,e),{mainType:this.mainType,seriesIndex:t.seriesIndex,name:t.name,createdBySelf:!0}),o.__hostSeries=t),pB(t)[r]=o):pB(t)[r]=null}),this)},e.prototype.formatTooltip=function(t,e,n){var i=this.getData(),r=this.getRawValue(t),o=i.getName(t);return og("section",{header:this.name,blocks:[og("nameValue",{name:o,value:r,noName:!o,noValue:null==r})]})},e.prototype.getData=function(){return this._data},e.prototype.setData=function(t){this._data=t},e.prototype.getDataParams=function(t,e){var n=_f.prototype.getDataParams.call(this,t,e),i=this.__hostSeries;return i&&(n.seriesId=i.id,n.seriesName=i.name,n.seriesType=i.subType),n},e.getMarkerModelFromSeries=function(t,e){return pB(t)[e]},e.type="marker",e.dependencies=["series","grid","polar","geo"],e}(zp);R(dB,_f.prototype);var fB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.createMarkerModelFromSeries=function(t,n,i){return new e(t,n,i)},e.type="markPoint",e.defaultOption={z:5,symbol:"pin",symbolSize:50,tooltip:{trigger:"item"},label:{show:!0,position:"inside"},itemStyle:{borderWidth:2},emphasis:{label:{show:!0}}},e}(dB);function gB(t){return!(isNaN(parseFloat(t.x))&&isNaN(parseFloat(t.y)))}function yB(t,e,n,i,r,o){var a=[],s=mx(e,i)?e.getCalculationInfo("stackResultDimension"):i,l=wB(e,s,t),u=e.indicesOfNearest(s,l)[0];a[r]=e.get(n,u),a[o]=e.get(s,u);var h=e.get(i,u),c=to(e.get(i,u));return(c=Math.min(c,20))>=0&&(a[o]=+a[o].toFixed(c)),[a,h]}var vB={min:H(yB,"min"),max:H(yB,"max"),average:H(yB,"average"),median:H(yB,"median")};function mB(t,e){if(e){var n=t.getData(),i=t.coordinateSystem,r=i&&i.dimensions;if(!function(t){return!isNaN(parseFloat(t.x))&&!isNaN(parseFloat(t.y))}(e)&&!Y(e.coord)&&Y(r)){var o=xB(e,n,i,t);if((e=T(e)).type&&vB[e.type]&&o.baseAxis&&o.valueAxis){var a=P(r,o.baseAxis.dim),s=P(r,o.valueAxis.dim),l=vB[e.type](n,o.baseDataDim,o.valueDataDim,a,s);e.coord=l[0],e.value=l[1]}else e.coord=[null!=e.xAxis?e.xAxis:e.radiusAxis,null!=e.yAxis?e.yAxis:e.angleAxis]}if(null!=e.coord&&Y(r))for(var u=e.coord,h=0;h<2;h++)vB[u[h]]&&(u[h]=wB(n,n.mapDimension(r[h]),u[h]));else e.coord=[];return e}}function xB(t,e,n,i){var r={};return null!=t.valueIndex||null!=t.valueDim?(r.valueDataDim=null!=t.valueIndex?e.getDimension(t.valueIndex):t.valueDim,r.valueAxis=n.getAxis(function(t,e){var n=t.getData().getDimensionInfo(e);return n&&n.coordDim}(i,r.valueDataDim)),r.baseAxis=n.getOtherAxis(r.valueAxis),r.baseDataDim=e.mapDimension(r.baseAxis.dim)):(r.baseAxis=i.getBaseAxis(),r.valueAxis=n.getOtherAxis(r.baseAxis),r.baseDataDim=e.mapDimension(r.baseAxis.dim),r.valueDataDim=e.mapDimension(r.valueAxis.dim)),r}function _B(t,e){return!(t&&t.containData&&e.coord&&!gB(e))||t.containData(e.coord)}function bB(t,e){return t?function(t,n,i,r){return If(r<2?t.coord&&t.coord[r]:t.value,e[r])}:function(t,n,i,r){return If(t.value,e[r])}}function wB(t,e,n){if("average"===n){var i=0,r=0;return t.each(e,(function(t,e){isNaN(t)||(i+=t,r++)})),i/r}return"median"===n?t.getMedian(e):t.getDataExtent(e)["max"===n?1:0]}var SB=Vo(),MB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(){this.markerGroupMap=yt()},e.prototype.render=function(t,e,n){var i=this,r=this.markerGroupMap;r.each((function(t){SB(t).keep=!1})),e.eachSeries((function(t){var r=dB.getMarkerModelFromSeries(t,i.type);r&&i.renderSeries(t,r,e,n)})),r.each((function(t){!SB(t).keep&&i.group.remove(t.group)}))},e.prototype.markKeep=function(t){SB(t).keep=!0},e.prototype.toggleBlurSeries=function(t,e){var n=this;E(t,(function(t){var i=dB.getMarkerModelFromSeries(t,n.type);i&&i.getData().eachItemGraphicEl((function(t){t&&(e?Nl(t):El(t))}))}))},e.type="marker",e}(Ag);function IB(t,e,n){var i=e.coordinateSystem;t.each((function(r){var o,a=t.getItemModel(r),s=$r(a.get("x"),n.getWidth()),l=$r(a.get("y"),n.getHeight());if(isNaN(s)||isNaN(l)){if(e.getMarkerPosition)o=e.getMarkerPosition(t.getValues(t.dimensions,r));else if(i){var u=t.get(i.dimensions[0],r),h=t.get(i.dimensions[1],r);o=i.dataToPoint([u,h])}}else o=[s,l];isNaN(s)||(o[0]=s),isNaN(l)||(o[1]=l),t.setItemLayout(r,o)}))}var TB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.updateTransform=function(t,e,n){e.eachSeries((function(t){var e=dB.getMarkerModelFromSeries(t,"markPoint");e&&(IB(e.getData(),t,n),this.markerGroupMap.get(t.id).updateLayout())}),this)},e.prototype.renderSeries=function(t,e,n,i){var r=t.coordinateSystem,o=t.id,a=t.getData(),s=this.markerGroupMap,l=s.get(o)||s.set(o,new xS),u=function(t,e,n){var i;i=t?z(t&&t.dimensions,(function(t){return A(A({},e.getData().getDimensionInfo(e.getData().mapDimension(t))||{}),{name:t,ordinalMeta:null})})):[{name:"value",type:"float"}];var r=new cx(i,n),o=z(n.get("data"),H(mB,e));t&&(o=B(o,H(_B,t)));var a=bB(!!t,i);return r.initData(o,null,a),r}(r,t,e);e.setData(u),IB(e.getData(),t,i),u.each((function(t){var n=u.getItemModel(t),i=n.getShallow("symbol"),r=n.getShallow("symbolSize"),o=n.getShallow("symbolRotate"),s=n.getShallow("symbolOffset"),l=n.getShallow("symbolKeepAspect");if(X(i)||X(r)||X(o)||X(s)){var h=e.getRawValue(t),c=e.getDataParams(t);X(i)&&(i=i(h,c)),X(r)&&(r=r(h,c)),X(o)&&(o=o(h,c)),X(s)&&(s=s(h,c))}var p=n.getModel("itemStyle").getItemStyle(),d=Ay(a,"color");p.fill||(p.fill=d),u.setItemVisual(t,{symbol:i,symbolSize:r,symbolRotate:o,symbolOffset:s,symbolKeepAspect:l,style:p})})),l.updateData(u),this.group.add(l.group),u.eachItemGraphicEl((function(t){t.traverse((function(t){rl(t).dataModel=e}))})),this.markKeep(l),l.group.silent=e.get("silent")||t.get("silent")},e.type="markPoint",e}(MB);var CB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.createMarkerModelFromSeries=function(t,n,i){return new e(t,n,i)},e.type="markLine",e.defaultOption={z:5,symbol:["circle","arrow"],symbolSize:[8,16],symbolOffset:0,precision:2,tooltip:{trigger:"item"},label:{show:!0,position:"end",distance:5},lineStyle:{type:"dashed"},emphasis:{label:{show:!0},lineStyle:{width:3}},animationEasing:"linear"},e}(dB),DB=Vo(),AB=function(t,e,n,i){var r,o=t.getData();if(Y(i))r=i;else{var a=i.type;if("min"===a||"max"===a||"average"===a||"median"===a||null!=i.xAxis||null!=i.yAxis){var s=void 0,l=void 0;if(null!=i.yAxis||null!=i.xAxis)s=e.getAxis(null!=i.yAxis?"y":"x"),l=it(i.yAxis,i.xAxis);else{var u=xB(i,o,e,t);s=u.valueAxis,l=wB(o,xx(o,u.valueDataDim),a)}var h="x"===s.dim?0:1,c=1-h,p=T(i),d={coord:[]};p.type=null,p.coord=[],p.coord[c]=-1/0,d.coord[c]=1/0;var f=n.get("precision");f>=0&&j(l)&&(l=+l.toFixed(Math.min(f,20))),p.coord[h]=d.coord[h]=l,r=[p,d,{type:a,valueIndex:i.valueIndex,value:l}]}else r=[]}var g=[mB(t,r[0]),mB(t,r[1]),A({},r[2])];return g[2].type=g[2].type||null,C(g[2],g[0]),C(g[2],g[1]),g};function kB(t){return!isNaN(t)&&!isFinite(t)}function LB(t,e,n,i){var r=1-t,o=i.dimensions[t];return kB(e[r])&&kB(n[r])&&e[t]===n[t]&&i.getAxis(o).containData(e[t])}function PB(t,e){if("cartesian2d"===t.type){var n=e[0].coord,i=e[1].coord;if(n&&i&&(LB(1,n,i,t)||LB(0,n,i,t)))return!0}return _B(t,e[0])&&_B(t,e[1])}function OB(t,e,n,i,r){var o,a=i.coordinateSystem,s=t.getItemModel(e),l=$r(s.get("x"),r.getWidth()),u=$r(s.get("y"),r.getHeight());if(isNaN(l)||isNaN(u)){if(i.getMarkerPosition)o=i.getMarkerPosition(t.getValues(t.dimensions,e));else{var h=a.dimensions,c=t.get(h[0],e),p=t.get(h[1],e);o=a.dataToPoint([c,p])}if(OS(a,"cartesian2d")){var d=a.getAxis("x"),f=a.getAxis("y");h=a.dimensions;kB(t.get(h[0],e))?o[0]=d.toGlobalCoord(d.getExtent()[n?0:1]):kB(t.get(h[1],e))&&(o[1]=f.toGlobalCoord(f.getExtent()[n?0:1]))}isNaN(l)||(o[0]=l),isNaN(u)||(o[1]=u)}else o=[l,u];t.setItemLayout(e,o)}var RB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.updateTransform=function(t,e,n){e.eachSeries((function(t){var e=dB.getMarkerModelFromSeries(t,"markLine");if(e){var i=e.getData(),r=DB(e).from,o=DB(e).to;r.each((function(e){OB(r,e,!0,t,n),OB(o,e,!1,t,n)})),i.each((function(t){i.setItemLayout(t,[r.getItemLayout(t),o.getItemLayout(t)])})),this.markerGroupMap.get(t.id).updateLayout()}}),this)},e.prototype.renderSeries=function(t,e,n,i){var r=t.coordinateSystem,o=t.id,a=t.getData(),s=this.markerGroupMap,l=s.get(o)||s.set(o,new YA);this.group.add(l.group);var u=function(t,e,n){var i;i=t?z(t&&t.dimensions,(function(t){return A(A({},e.getData().getDimensionInfo(e.getData().mapDimension(t))||{}),{name:t,ordinalMeta:null})})):[{name:"value",type:"float"}];var r=new cx(i,n),o=new cx(i,n),a=new cx([],n),s=z(n.get("data"),H(AB,e,t,n));t&&(s=B(s,H(PB,t)));var l=bB(!!t,i);return r.initData(z(s,(function(t){return t[0]})),null,l),o.initData(z(s,(function(t){return t[1]})),null,l),a.initData(z(s,(function(t){return t[2]}))),a.hasItemOption=!0,{from:r,to:o,line:a}}(r,t,e),h=u.from,c=u.to,p=u.line;DB(e).from=h,DB(e).to=c,e.setData(p);var d=e.get("symbol"),f=e.get("symbolSize"),g=e.get("symbolRotate"),y=e.get("symbolOffset");function v(e,n,r){var o=e.getItemModel(n);OB(e,n,r,t,i);var s=o.getModel("itemStyle").getItemStyle();null==s.fill&&(s.fill=Ay(a,"color")),e.setItemVisual(n,{symbolKeepAspect:o.get("symbolKeepAspect"),symbolOffset:rt(o.get("symbolOffset",!0),y[r?0:1]),symbolRotate:rt(o.get("symbolRotate",!0),g[r?0:1]),symbolSize:rt(o.get("symbolSize"),f[r?0:1]),symbol:rt(o.get("symbol",!0),d[r?0:1]),style:s})}Y(d)||(d=[d,d]),Y(f)||(f=[f,f]),Y(g)||(g=[g,g]),Y(y)||(y=[y,y]),u.from.each((function(t){v(h,t,!0),v(c,t,!1)})),p.each((function(t){var e=p.getItemModel(t).getModel("lineStyle").getLineStyle();p.setItemLayout(t,[h.getItemLayout(t),c.getItemLayout(t)]),null==e.stroke&&(e.stroke=h.getItemVisual(t,"style").fill),p.setItemVisual(t,{fromSymbolKeepAspect:h.getItemVisual(t,"symbolKeepAspect"),fromSymbolOffset:h.getItemVisual(t,"symbolOffset"),fromSymbolRotate:h.getItemVisual(t,"symbolRotate"),fromSymbolSize:h.getItemVisual(t,"symbolSize"),fromSymbol:h.getItemVisual(t,"symbol"),toSymbolKeepAspect:c.getItemVisual(t,"symbolKeepAspect"),toSymbolOffset:c.getItemVisual(t,"symbolOffset"),toSymbolRotate:c.getItemVisual(t,"symbolRotate"),toSymbolSize:c.getItemVisual(t,"symbolSize"),toSymbol:c.getItemVisual(t,"symbol"),style:e})})),l.updateData(p),u.line.eachItemGraphicEl((function(t){rl(t).dataModel=e,t.traverse((function(t){rl(t).dataModel=e}))})),this.markKeep(l),l.group.silent=e.get("silent")||t.get("silent")},e.type="markLine",e}(MB);var NB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.createMarkerModelFromSeries=function(t,n,i){return new e(t,n,i)},e.type="markArea",e.defaultOption={z:1,tooltip:{trigger:"item"},animation:!1,label:{show:!0,position:"top"},itemStyle:{borderWidth:0},emphasis:{label:{show:!0,position:"top"}}},e}(dB),EB=Vo(),zB=function(t,e,n,i){var r=i[0],o=i[1];if(r&&o){var a=mB(t,r),s=mB(t,o),l=a.coord,u=s.coord;l[0]=it(l[0],-1/0),l[1]=it(l[1],-1/0),u[0]=it(u[0],1/0),u[1]=it(u[1],1/0);var h=D([{},a,s]);return h.coord=[a.coord,s.coord],h.x0=a.x,h.y0=a.y,h.x1=s.x,h.y1=s.y,h}};function VB(t){return!isNaN(t)&&!isFinite(t)}function BB(t,e,n,i){var r=1-t;return VB(e[r])&&VB(n[r])}function FB(t,e){var n=e.coord[0],i=e.coord[1],r={coord:n,x:e.x0,y:e.y0},o={coord:i,x:e.x1,y:e.y1};return OS(t,"cartesian2d")?!(!n||!i||!BB(1,n,i)&&!BB(0,n,i))||function(t,e,n){return!(t&&t.containZone&&e.coord&&n.coord&&!gB(e)&&!gB(n))||t.containZone(e.coord,n.coord)}(t,r,o):_B(t,r)||_B(t,o)}function GB(t,e,n,i,r){var o,a=i.coordinateSystem,s=t.getItemModel(e),l=$r(s.get(n[0]),r.getWidth()),u=$r(s.get(n[1]),r.getHeight());if(isNaN(l)||isNaN(u)){if(i.getMarkerPosition){var h=t.getValues(["x0","y0"],e),c=t.getValues(["x1","y1"],e),p=a.clampData(h),d=a.clampData(c),f=[];"x0"===n[0]?f[0]=p[0]>d[0]?c[0]:h[0]:f[0]=p[0]>d[0]?h[0]:c[0],"y0"===n[1]?f[1]=p[1]>d[1]?c[1]:h[1]:f[1]=p[1]>d[1]?h[1]:c[1],o=i.getMarkerPosition(f,n,!0)}else{var g=[m=t.get(n[0],e),x=t.get(n[1],e)];a.clampData&&a.clampData(g,g),o=a.dataToPoint(g,!0)}if(OS(a,"cartesian2d")){var y=a.getAxis("x"),v=a.getAxis("y"),m=t.get(n[0],e),x=t.get(n[1],e);VB(m)?o[0]=y.toGlobalCoord(y.getExtent()["x0"===n[0]?0:1]):VB(x)&&(o[1]=v.toGlobalCoord(v.getExtent()["y0"===n[1]?0:1]))}isNaN(l)||(o[0]=l),isNaN(u)||(o[1]=u)}else o=[l,u];return o}var WB=[["x0","y0"],["x1","y0"],["x1","y1"],["x0","y1"]],HB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.updateTransform=function(t,e,n){e.eachSeries((function(t){var e=dB.getMarkerModelFromSeries(t,"markArea");if(e){var i=e.getData();i.each((function(e){var r=z(WB,(function(r){return GB(i,e,r,t,n)}));i.setItemLayout(e,r),i.getItemGraphicEl(e).setShape("points",r)}))}}),this)},e.prototype.renderSeries=function(t,e,n,i){var r=t.coordinateSystem,o=t.id,a=t.getData(),s=this.markerGroupMap,l=s.get(o)||s.set(o,{group:new Br});this.group.add(l.group),this.markKeep(l);var u=function(t,e,n){var i,r,o=["x0","y0","x1","y1"];if(t){var a=z(t&&t.dimensions,(function(t){var n=e.getData();return A(A({},n.getDimensionInfo(n.mapDimension(t))||{}),{name:t,ordinalMeta:null})}));r=z(o,(function(t,e){return{name:t,type:a[e%2].type}})),i=new cx(r,n)}else i=new cx(r=[{name:"value",type:"float"}],n);var s=z(n.get("data"),H(zB,e,t,n));t&&(s=B(s,H(FB,t)));var l=t?function(t,e,n,i){return If(t.coord[Math.floor(i/2)][i%2],r[i])}:function(t,e,n,i){return If(t.value,r[i])};return i.initData(s,null,l),i.hasItemOption=!0,i}(r,t,e);e.setData(u),u.each((function(e){var n=z(WB,(function(n){return GB(u,e,n,t,i)})),o=r.getAxis("x").scale,s=r.getAxis("y").scale,l=o.getExtent(),h=s.getExtent(),c=[o.parse(u.get("x0",e)),o.parse(u.get("x1",e))],p=[s.parse(u.get("y0",e)),s.parse(u.get("y1",e))];Qr(c),Qr(p);var d=!!(l[0]>c[1]||l[1]<c[0]||h[0]>p[1]||h[1]<p[0]);u.setItemLayout(e,{points:n,allClipped:d});var f=u.getItemModel(e).getModel("itemStyle").getItemStyle(),g=Ay(a,"color");f.fill||(f.fill=g,U(f.fill)&&(f.fill=ii(f.fill,.4))),f.stroke||(f.stroke=g),u.setItemVisual(e,"style",f)})),u.diff(EB(l).data).add((function(t){var e=u.getItemLayout(t);if(!e.allClipped){var n=new Xu({shape:{points:e.points}});u.setItemGraphicEl(t,n),l.group.add(n)}})).update((function(t,n){var i=EB(l).data.getItemGraphicEl(n),r=u.getItemLayout(t);r.allClipped?i&&l.group.remove(i):(i?vh(i,{shape:{points:r.points}},e,t):i=new Xu({shape:{points:r.points}}),u.setItemGraphicEl(t,i),l.group.add(i))})).remove((function(t){var e=EB(l).data.getItemGraphicEl(t);l.group.remove(e)})).execute(),u.eachItemGraphicEl((function(t,n){var i=u.getItemModel(n),r=u.getItemVisual(n,"style");t.useStyle(u.getItemVisual(n,"style")),ic(t,rc(i),{labelFetcher:e,labelDataIndex:n,defaultText:u.getName(n)||"",inheritColor:U(r.fill)?ii(r.fill,1):"#000"}),$l(t,i),Zl(t,null,null,i.get(["emphasis","disabled"])),rl(t).dataModel=e})),EB(l).data=u,l.group.silent=e.get("silent")||t.get("silent")},e.type="markArea",e}(MB);var YB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.layoutMode={type:"box",ignoreSize:!0},n}return n(e,t),e.prototype.init=function(t,e,n){this.mergeDefaultAndTheme(t,n),t.selected=t.selected||{},this._updateSelector(t)},e.prototype.mergeOption=function(e,n){t.prototype.mergeOption.call(this,e,n),this._updateSelector(e)},e.prototype._updateSelector=function(t){var e=t.selector,n=this.ecModel;!0===e&&(e=t.selector=["all","inverse"]),Y(e)&&E(e,(function(t,i){U(t)&&(t={type:t}),e[i]=C(t,function(t,e){return"all"===e?{type:"all",title:t.getLocaleModel().get(["legend","selector","all"])}:"inverse"===e?{type:"inverse",title:t.getLocaleModel().get(["legend","selector","inverse"])}:void 0}(n,t.type))}))},e.prototype.optionUpdated=function(){this._updateData(this.ecModel);var t=this._data;if(t[0]&&"single"===this.get("selectedMode")){for(var e=!1,n=0;n<t.length;n++){var i=t[n].get("name");if(this.isSelected(i)){this.select(i),e=!0;break}}!e&&this.select(t[0].get("name"))}},e.prototype._updateData=function(t){var e=[],n=[];t.eachRawSeries((function(i){var r,o=i.name;if(n.push(o),i.legendVisualProvider){var a=i.legendVisualProvider.getAllNames();t.isSeriesFiltered(i)||(n=n.concat(a)),a.length?e=e.concat(a):r=!0}else r=!0;r&&No(i)&&e.push(i.name)})),this._availableNames=n;var i=this.get("data")||e,r=yt(),o=z(i,(function(t){return(U(t)||j(t))&&(t={name:t}),r.get(t.name)?null:(r.set(t.name,!0),new Cc(t,this,this.ecModel))}),this);this._data=B(o,(function(t){return!!t}))},e.prototype.getData=function(){return this._data},e.prototype.select=function(t){var e=this.option.selected;"single"===this.get("selectedMode")&&E(this._data,(function(t){e[t.get("name")]=!1}));e[t]=!0},e.prototype.unSelect=function(t){"single"!==this.get("selectedMode")&&(this.option.selected[t]=!1)},e.prototype.toggleSelected=function(t){var e=this.option.selected;e.hasOwnProperty(t)||(e[t]=!0),this[e[t]?"unSelect":"select"](t)},e.prototype.allSelect=function(){var t=this._data,e=this.option.selected;E(t,(function(t){e[t.get("name",!0)]=!0}))},e.prototype.inverseSelect=function(){var t=this._data,e=this.option.selected;E(t,(function(t){var n=t.get("name",!0);e.hasOwnProperty(n)||(e[n]=!0),e[n]=!e[n]}))},e.prototype.isSelected=function(t){var e=this.option.selected;return!(e.hasOwnProperty(t)&&!e[t])&&P(this._availableNames,t)>=0},e.prototype.getOrient=function(){return"vertical"===this.get("orient")?{index:1,name:"vertical"}:{index:0,name:"horizontal"}},e.type="legend.plain",e.dependencies=["series"],e.defaultOption={z:4,show:!0,orient:"horizontal",left:"center",top:0,align:"auto",backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",borderRadius:0,borderWidth:0,padding:5,itemGap:10,itemWidth:25,itemHeight:14,symbolRotate:"inherit",symbolKeepAspect:!0,inactiveColor:"#ccc",inactiveBorderColor:"#ccc",inactiveBorderWidth:"auto",itemStyle:{color:"inherit",opacity:"inherit",borderColor:"inherit",borderWidth:"auto",borderCap:"inherit",borderJoin:"inherit",borderDashOffset:"inherit",borderMiterLimit:"inherit"},lineStyle:{width:"auto",color:"inherit",inactiveColor:"#ccc",inactiveWidth:2,opacity:"inherit",type:"inherit",cap:"inherit",join:"inherit",dashOffset:"inherit",miterLimit:"inherit"},textStyle:{color:"#333"},selectedMode:!0,selector:!1,selectorLabel:{show:!0,borderRadius:10,padding:[3,5,3,5],fontSize:12,fontFamily:"sans-serif",color:"#666",borderWidth:1,borderColor:"#666"},emphasis:{selectorLabel:{show:!0,color:"#eee",backgroundColor:"#666"}},selectorPosition:"auto",selectorItemGap:7,selectorButtonGap:10,tooltip:{show:!1}},e}(zp),XB=H,UB=E,ZB=Br,jB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.newlineDisabled=!1,n}return n(e,t),e.prototype.init=function(){this.group.add(this._contentGroup=new ZB),this.group.add(this._selectorGroup=new ZB),this._isFirstRender=!0},e.prototype.getContentGroup=function(){return this._contentGroup},e.prototype.getSelectorGroup=function(){return this._selectorGroup},e.prototype.render=function(t,e,n){var i=this._isFirstRender;if(this._isFirstRender=!1,this.resetInner(),t.get("show",!0)){var r=t.get("align"),o=t.get("orient");r&&"auto"!==r||(r="right"===t.get("left")&&"vertical"===o?"right":"left");var a=t.get("selector",!0),s=t.get("selectorPosition",!0);!a||s&&"auto"!==s||(s="horizontal"===o?"end":"start"),this.renderInner(r,t,e,n,a,o,s);var l=t.getBoxLayoutParams(),u={width:n.getWidth(),height:n.getHeight()},h=t.get("padding"),c=kp(l,u,h),p=this.layoutInner(t,r,c,i,a,s),d=kp(k({width:p.width,height:p.height},l),u,h);this.group.x=d.x-p.x,this.group.y=d.y-p.y,this.group.markRedraw(),this.group.add(this._backgroundEl=Sz(p,t))}},e.prototype.resetInner=function(){this.getContentGroup().removeAll(),this._backgroundEl&&this.group.remove(this._backgroundEl),this.getSelectorGroup().removeAll()},e.prototype.renderInner=function(t,e,n,i,r,o,a){var s=this.getContentGroup(),l=yt(),u=e.get("selectedMode"),h=[];n.eachRawSeries((function(t){!t.get("legendHoverLink")&&h.push(t.id)})),UB(e.getData(),(function(r,o){var a=r.get("name");if(!this.newlineDisabled&&(""===a||"\n"===a)){var c=new ZB;return c.newline=!0,void s.add(c)}var p=n.getSeriesByName(a)[0];if(!l.get(a)){if(p){var d=p.getData(),f=d.getVisual("legendLineStyle")||{},g=d.getVisual("legendIcon"),y=d.getVisual("style"),v=this._createItem(p,a,o,r,e,t,f,y,g,u,i);v.on("click",XB(qB,a,null,i,h)).on("mouseover",XB($B,p.name,null,i,h)).on("mouseout",XB(JB,p.name,null,i,h)),n.ssr&&v.eachChild((function(t){var e=rl(t);e.seriesIndex=p.seriesIndex,e.dataIndex=o,e.ssrType="legend"})),l.set(a,!0)}else n.eachRawSeries((function(s){if(!l.get(a)&&s.legendVisualProvider){var c=s.legendVisualProvider;if(!c.containName(a))return;var p=c.indexOfName(a),d=c.getItemVisual(p,"style"),f=c.getItemVisual(p,"legendIcon"),g=qn(d.fill);g&&0===g[3]&&(g[3]=.2,d=A(A({},d),{fill:ri(g,"rgba")}));var y=this._createItem(s,a,o,r,e,t,{},d,f,u,i);y.on("click",XB(qB,null,a,i,h)).on("mouseover",XB($B,null,a,i,h)).on("mouseout",XB(JB,null,a,i,h)),n.ssr&&y.eachChild((function(t){var e=rl(t);e.seriesIndex=s.seriesIndex,e.dataIndex=o,e.ssrType="legend"})),l.set(a,!0)}}),this);0}}),this),r&&this._createSelector(r,e,i,o,a)},e.prototype._createSelector=function(t,e,n,i,r){var o=this.getSelectorGroup();UB(t,(function(t){var i=t.type,r=new Xs({style:{x:0,y:0,align:"center",verticalAlign:"middle"},onclick:function(){n.dispatchAction({type:"all"===i?"legendAllSelect":"legendInverseSelect"})}});o.add(r),ic(r,{normal:e.getModel("selectorLabel"),emphasis:e.getModel(["emphasis","selectorLabel"])},{defaultText:t.title}),Ul(r)}))},e.prototype._createItem=function(t,e,n,i,r,o,a,s,l,u,h){var c=t.visualDrawType,p=r.get("itemWidth"),d=r.get("itemHeight"),f=r.isSelected(e),g=i.get("symbolRotate"),y=i.get("symbolKeepAspect"),v=i.get("icon"),m=function(t,e,n,i,r,o,a){function s(t,e){"auto"===t.lineWidth&&(t.lineWidth=e.lineWidth>0?2:0),UB(t,(function(n,i){"inherit"===t[i]&&(t[i]=e[i])}))}var l=e.getModel("itemStyle"),u=l.getItemStyle(),h=0===t.lastIndexOf("empty",0)?"fill":"stroke",c=l.getShallow("decal");u.decal=c&&"inherit"!==c?mv(c,a):i.decal,"inherit"===u.fill&&(u.fill=i[r]);"inherit"===u.stroke&&(u.stroke=i[h]);"inherit"===u.opacity&&(u.opacity=("fill"===r?i:n).opacity);s(u,i);var p=e.getModel("lineStyle"),d=p.getLineStyle();if(s(d,n),"auto"===u.fill&&(u.fill=i.fill),"auto"===u.stroke&&(u.stroke=i.fill),"auto"===d.stroke&&(d.stroke=i.fill),!o){var f=e.get("inactiveBorderWidth"),g=u[h];u.lineWidth="auto"===f?i.lineWidth>0&&g?2:0:u.lineWidth,u.fill=e.get("inactiveColor"),u.stroke=e.get("inactiveBorderColor"),d.stroke=p.get("inactiveColor"),d.lineWidth=p.get("inactiveWidth")}return{itemStyle:u,lineStyle:d}}(l=v||l||"roundRect",i,a,s,c,f,h),x=new ZB,_=i.getModel("textStyle");if(!X(t.getLegendIcon)||v&&"inherit"!==v){var b="inherit"===v&&t.getData().getVisual("symbol")?"inherit"===g?t.getData().getVisual("symbolRotate"):g:0;x.add(function(t){var e=t.icon||"roundRect",n=Xy(e,0,0,t.itemWidth,t.itemHeight,t.itemStyle.fill,t.symbolKeepAspect);n.setStyle(t.itemStyle),n.rotation=(t.iconRotate||0)*Math.PI/180,n.setOrigin([t.itemWidth/2,t.itemHeight/2]),e.indexOf("empty")>-1&&(n.style.stroke=n.style.fill,n.style.fill="#fff",n.style.lineWidth=2);return n}({itemWidth:p,itemHeight:d,icon:l,iconRotate:b,itemStyle:m.itemStyle,lineStyle:m.lineStyle,symbolKeepAspect:y}))}else x.add(t.getLegendIcon({itemWidth:p,itemHeight:d,icon:l,iconRotate:g,itemStyle:m.itemStyle,lineStyle:m.lineStyle,symbolKeepAspect:y}));var w="left"===o?p+5:-5,S=o,M=r.get("formatter"),I=e;U(M)&&M?I=M.replace("{name}",null!=e?e:""):X(M)&&(I=M(e));var T=f?_.getTextColor():i.get("inactiveColor");x.add(new Xs({style:oc(_,{text:I,x:w,y:d/2,fill:T,align:S,verticalAlign:"middle"},{inheritColor:T})}));var C=new Ws({shape:x.getBoundingRect(),style:{fill:"transparent"}}),D=i.getModel("tooltip");return D.get("show")&&Kh({el:C,componentModel:r,itemName:e,itemTooltipOption:D.option}),x.add(C),x.eachChild((function(t){t.silent=!0})),C.silent=!u,this.getContentGroup().add(x),Ul(x),x.__legendDataIndex=n,x},e.prototype.layoutInner=function(t,e,n,i,r,o){var a=this.getContentGroup(),s=this.getSelectorGroup();Ap(t.get("orient"),a,t.get("itemGap"),n.width,n.height);var l=a.getBoundingRect(),u=[-l.x,-l.y];if(s.markRedraw(),a.markRedraw(),r){Ap("horizontal",s,t.get("selectorItemGap",!0));var h=s.getBoundingRect(),c=[-h.x,-h.y],p=t.get("selectorButtonGap",!0),d=t.getOrient().index,f=0===d?"width":"height",g=0===d?"height":"width",y=0===d?"y":"x";"end"===o?c[d]+=l[f]+p:u[d]+=h[f]+p,c[1-d]+=l[g]/2-h[g]/2,s.x=c[0],s.y=c[1],a.x=u[0],a.y=u[1];var v={x:0,y:0};return v[f]=l[f]+p+h[f],v[g]=Math.max(l[g],h[g]),v[y]=Math.min(0,h[y]+c[1-d]),v}return a.x=u[0],a.y=u[1],this.group.getBoundingRect()},e.prototype.remove=function(){this.getContentGroup().removeAll(),this._isFirstRender=!0},e.type="legend.plain",e}(Ag);function qB(t,e,n,i){JB(t,e,n,i),n.dispatchAction({type:"legendToggleSelect",name:null!=t?t:e}),$B(t,e,n,i)}function KB(t){for(var e,n=t.getZr().storage.getDisplayList(),i=0,r=n.length;i<r&&!(e=n[i].states.emphasis);)i++;return e&&e.hoverLayer}function $B(t,e,n,i){KB(n)||n.dispatchAction({type:"highlight",seriesName:t,name:e,excludeSeriesId:i})}function JB(t,e,n,i){KB(n)||n.dispatchAction({type:"downplay",seriesName:t,name:e,excludeSeriesId:i})}function QB(t){var e=t.findComponents({mainType:"legend"});e&&e.length&&t.filterSeries((function(t){for(var n=0;n<e.length;n++)if(!e[n].isSelected(t.name))return!1;return!0}))}function tF(t,e,n){var i,r={},o="toggleSelected"===t;return n.eachComponent("legend",(function(n){o&&null!=i?n[i?"select":"unSelect"](e.name):"allSelect"===t||"inverseSelect"===t?n[t]():(n[t](e.name),i=n.isSelected(e.name)),E(n.getData(),(function(t){var e=t.get("name");if("\n"!==e&&""!==e){var i=n.isSelected(e);r.hasOwnProperty(e)?r[e]=r[e]&&i:r[e]=i}}))})),"allSelect"===t||"inverseSelect"===t?{selected:r}:{name:e.name,selected:r}}function eF(t){t.registerComponentModel(YB),t.registerComponentView(jB),t.registerProcessor(t.PRIORITY.PROCESSOR.SERIES_FILTER,QB),t.registerSubTypeDefaulter("legend",(function(){return"plain"})),function(t){t.registerAction("legendToggleSelect","legendselectchanged",H(tF,"toggleSelected")),t.registerAction("legendAllSelect","legendselectall",H(tF,"allSelect")),t.registerAction("legendInverseSelect","legendinverseselect",H(tF,"inverseSelect")),t.registerAction("legendSelect","legendselected",H(tF,"select")),t.registerAction("legendUnSelect","legendunselected",H(tF,"unSelect"))}(t)}var nF=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.setScrollDataIndex=function(t){this.option.scrollDataIndex=t},e.prototype.init=function(e,n,i){var r=Rp(e);t.prototype.init.call(this,e,n,i),iF(this,e,r)},e.prototype.mergeOption=function(e,n){t.prototype.mergeOption.call(this,e,n),iF(this,this.option,e)},e.type="legend.scroll",e.defaultOption=kc(YB.defaultOption,{scrollDataIndex:0,pageButtonItemGap:5,pageButtonGap:null,pageButtonPosition:"end",pageFormatter:"{current}/{total}",pageIcons:{horizontal:["M0,0L12,-10L12,10z","M0,0L-12,-10L-12,10z"],vertical:["M0,0L20,0L10,-20z","M0,0L20,0L10,20z"]},pageIconColor:"#2f4554",pageIconInactiveColor:"#aaa",pageIconSize:15,pageTextStyle:{color:"#333"},animationDurationUpdate:800}),e}(YB);function iF(t,e,n){var i=[1,1];i[t.getOrient().index]=0,Op(e,n,{type:"box",ignoreSize:!!i})}var rF=Br,oF=["width","height"],aF=["x","y"],sF=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.newlineDisabled=!0,n._currentIndex=0,n}return n(e,t),e.prototype.init=function(){t.prototype.init.call(this),this.group.add(this._containerGroup=new rF),this._containerGroup.add(this.getContentGroup()),this.group.add(this._controllerGroup=new rF)},e.prototype.resetInner=function(){t.prototype.resetInner.call(this),this._controllerGroup.removeAll(),this._containerGroup.removeClipPath(),this._containerGroup.__rectSize=null},e.prototype.renderInner=function(e,n,i,r,o,a,s){var l=this;t.prototype.renderInner.call(this,e,n,i,r,o,a,s);var u=this._controllerGroup,h=n.get("pageIconSize",!0),c=Y(h)?h:[h,h];d("pagePrev",0);var p=n.getModel("pageTextStyle");function d(t,e){var i=t+"DataIndex",o=Uh(n.get("pageIcons",!0)[n.getOrient().name][e],{onclick:W(l._pageGo,l,i,n,r)},{x:-c[0]/2,y:-c[1]/2,width:c[0],height:c[1]});o.name=t,u.add(o)}u.add(new Xs({name:"pageText",style:{text:"xx/xx",fill:p.getTextColor(),font:p.getFont(),verticalAlign:"middle",align:"center"},silent:!0})),d("pageNext",1)},e.prototype.layoutInner=function(t,e,n,i,r,o){var a=this.getSelectorGroup(),s=t.getOrient().index,l=oF[s],u=aF[s],h=oF[1-s],c=aF[1-s];r&&Ap("horizontal",a,t.get("selectorItemGap",!0));var p=t.get("selectorButtonGap",!0),d=a.getBoundingRect(),f=[-d.x,-d.y],g=T(n);r&&(g[l]=n[l]-d[l]-p);var y=this._layoutContentAndController(t,i,g,s,l,h,c,u);if(r){if("end"===o)f[s]+=y[l]+p;else{var v=d[l]+p;f[s]-=v,y[u]-=v}y[l]+=d[l]+p,f[1-s]+=y[c]+y[h]/2-d[h]/2,y[h]=Math.max(y[h],d[h]),y[c]=Math.min(y[c],d[c]+f[1-s]),a.x=f[0],a.y=f[1],a.markRedraw()}return y},e.prototype._layoutContentAndController=function(t,e,n,i,r,o,a,s){var l=this.getContentGroup(),u=this._containerGroup,h=this._controllerGroup;Ap(t.get("orient"),l,t.get("itemGap"),i?n.width:null,i?null:n.height),Ap("horizontal",h,t.get("pageButtonItemGap",!0));var c=l.getBoundingRect(),p=h.getBoundingRect(),d=this._showController=c[r]>n[r],f=[-c.x,-c.y];e||(f[i]=l[s]);var g=[0,0],y=[-p.x,-p.y],v=rt(t.get("pageButtonGap",!0),t.get("itemGap",!0));d&&("end"===t.get("pageButtonPosition",!0)?y[i]+=n[r]-p[r]:g[i]+=p[r]+v);y[1-i]+=c[o]/2-p[o]/2,l.setPosition(f),u.setPosition(g),h.setPosition(y);var m={x:0,y:0};if(m[r]=d?n[r]:c[r],m[o]=Math.max(c[o],p[o]),m[a]=Math.min(0,p[a]+y[1-i]),u.__rectSize=n[r],d){var x={x:0,y:0};x[r]=Math.max(n[r]-p[r]-v,0),x[o]=m[o],u.setClipPath(new Ws({shape:x})),u.__rectSize=x[r]}else h.eachChild((function(t){t.attr({invisible:!0,silent:!0})}));var _=this._getPageInfo(t);return null!=_.pageIndex&&vh(l,{x:_.contentPosition[0],y:_.contentPosition[1]},d?t:null),this._updatePageInfoView(t,_),m},e.prototype._pageGo=function(t,e,n){var i=this._getPageInfo(e)[t];null!=i&&n.dispatchAction({type:"legendScroll",scrollDataIndex:i,legendId:e.id})},e.prototype._updatePageInfoView=function(t,e){var n=this._controllerGroup;E(["pagePrev","pageNext"],(function(i){var r=null!=e[i+"DataIndex"],o=n.childOfName(i);o&&(o.setStyle("fill",r?t.get("pageIconColor",!0):t.get("pageIconInactiveColor",!0)),o.cursor=r?"pointer":"default")}));var i=n.childOfName("pageText"),r=t.get("pageFormatter"),o=e.pageIndex,a=null!=o?o+1:0,s=e.pageCount;i&&r&&i.setStyle("text",U(r)?r.replace("{current}",null==a?"":a+"").replace("{total}",null==s?"":s+""):r({current:a,total:s}))},e.prototype._getPageInfo=function(t){var e=t.get("scrollDataIndex",!0),n=this.getContentGroup(),i=this._containerGroup.__rectSize,r=t.getOrient().index,o=oF[r],a=aF[r],s=this._findTargetItemIndex(e),l=n.children(),u=l[s],h=l.length,c=h?1:0,p={contentPosition:[n.x,n.y],pageCount:c,pageIndex:c-1,pagePrevDataIndex:null,pageNextDataIndex:null};if(!u)return p;var d=m(u);p.contentPosition[r]=-d.s;for(var f=s+1,g=d,y=d,v=null;f<=h;++f)(!(v=m(l[f]))&&y.e>g.s+i||v&&!x(v,g.s))&&(g=y.i>g.i?y:v)&&(null==p.pageNextDataIndex&&(p.pageNextDataIndex=g.i),++p.pageCount),y=v;for(f=s-1,g=d,y=d,v=null;f>=-1;--f)(v=m(l[f]))&&x(y,v.s)||!(g.i<y.i)||(y=g,null==p.pagePrevDataIndex&&(p.pagePrevDataIndex=g.i),++p.pageCount,++p.pageIndex),g=v;return p;function m(t){if(t){var e=t.getBoundingRect(),n=e[a]+t[a];return{s:n,e:n+e[o],i:t.__legendDataIndex}}}function x(t,e){return t.e>=e&&t.s<=e+i}},e.prototype._findTargetItemIndex=function(t){return this._showController?(this.getContentGroup().eachChild((function(i,r){var o=i.__legendDataIndex;null==n&&null!=o&&(n=r),o===t&&(e=r)})),null!=e?e:n):0;var e,n},e.type="legend.scroll",e}(jB);function lF(t){Vm(eF),t.registerComponentModel(nF),t.registerComponentView(sF),function(t){t.registerAction("legendScroll","legendscroll",(function(t,e){var n=t.scrollDataIndex;null!=n&&e.eachComponent({mainType:"legend",subType:"scroll",query:t},(function(t){t.setScrollDataIndex(n)}))}))}(t)}var uF=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="dataZoom.inside",e.defaultOption=kc(az.defaultOption,{disabled:!1,zoomLock:!1,zoomOnMouseWheel:!0,moveOnMouseMove:!0,moveOnMouseWheel:!1,preventDefaultMouseMove:!0}),e}(az),hF=Vo();function cF(t,e,n){hF(t).coordSysRecordMap.each((function(t){var i=t.dataZoomInfoMap.get(e.uid);i&&(i.getRange=n)}))}function pF(t,e){if(e){t.removeKey(e.model.uid);var n=e.controller;n&&n.dispose()}}function dF(t,e){t.isDisposed()||t.dispatchAction({type:"dataZoom",animation:{easing:"cubicOut",duration:100},batch:e})}function fF(t,e,n,i){return t.coordinateSystem.containPoint([n,i])}function gF(t){t.registerProcessor(t.PRIORITY.PROCESSOR.FILTER,(function(t,e){var n=hF(e),i=n.coordSysRecordMap||(n.coordSysRecordMap=yt());i.each((function(t){t.dataZoomInfoMap=null})),t.eachComponent({mainType:"dataZoom",subType:"inside"},(function(t){E(rz(t).infoList,(function(n){var r=n.model.uid,o=i.get(r)||i.set(r,function(t,e){var n={model:e,containsPoint:H(fF,e),dispatchAction:H(dF,t),dataZoomInfoMap:null,controller:null},i=n.controller=new nT(t.getZr());return E(["pan","zoom","scrollMove"],(function(t){i.on(t,(function(e){var i=[];n.dataZoomInfoMap.each((function(r){if(e.isAvailableBehavior(r.model.option)){var o=(r.getRange||{})[t],a=o&&o(r.dzReferCoordSysInfo,n.model.mainType,n.controller,e);!r.model.get("disabled",!0)&&a&&i.push({dataZoomId:r.model.id,start:a[0],end:a[1]})}})),i.length&&n.dispatchAction(i)}))})),n}(e,n.model));(o.dataZoomInfoMap||(o.dataZoomInfoMap=yt())).set(t.uid,{dzReferCoordSysInfo:n,model:t,getRange:null})}))})),i.each((function(t){var e,n=t.controller,r=t.dataZoomInfoMap;if(r){var o=r.keys()[0];null!=o&&(e=r.get(o))}if(e){var a=function(t){var e,n="type_",i={type_true:2,type_move:1,type_false:0,type_undefined:-1},r=!0;return t.each((function(t){var o=t.model,a=!o.get("disabled",!0)&&(!o.get("zoomLock",!0)||"move");i[n+a]>i[n+e]&&(e=a),r=r&&o.get("preventDefaultMouseMove",!0)})),{controlType:e,opt:{zoomOnMouseWheel:!0,moveOnMouseMove:!0,moveOnMouseWheel:!0,preventDefaultMouseMove:!!r}}}(r);n.enable(a.controlType,a.opt),n.setPointerChecker(t.containsPoint),Hg(t,"dispatchAction",e.model.get("throttle",!0),"fixRate")}else pF(i,t)}))}))}var yF=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="dataZoom.inside",e}return n(e,t),e.prototype.render=function(e,n,i){t.prototype.render.apply(this,arguments),e.noTarget()?this._clear():(this.range=e.getPercentRange(),cF(i,e,{pan:W(vF.pan,this),zoom:W(vF.zoom,this),scrollMove:W(vF.scrollMove,this)}))},e.prototype.dispose=function(){this._clear(),t.prototype.dispose.apply(this,arguments)},e.prototype._clear=function(){!function(t,e){for(var n=hF(t).coordSysRecordMap,i=n.keys(),r=0;r<i.length;r++){var o=i[r],a=n.get(o),s=a.dataZoomInfoMap;if(s){var l=e.uid;s.get(l)&&(s.removeKey(l),s.keys().length||pF(n,a))}}}(this.api,this.dataZoomModel),this.range=null},e.type="dataZoom.inside",e}(uz),vF={zoom:function(t,e,n,i){var r=this.range,o=r.slice(),a=t.axisModels[0];if(a){var s=xF[e](null,[i.originX,i.originY],a,n,t),l=(s.signal>0?s.pixelStart+s.pixelLength-s.pixel:s.pixel-s.pixelStart)/s.pixelLength*(o[1]-o[0])+o[0],u=Math.max(1/i.scale,0);o[0]=(o[0]-l)*u+l,o[1]=(o[1]-l)*u+l;var h=this.dataZoomModel.findRepresentativeAxisProxy().getMinMaxSpan();return zk(0,o,[0,100],0,h.minSpan,h.maxSpan),this.range=o,r[0]!==o[0]||r[1]!==o[1]?o:void 0}},pan:mF((function(t,e,n,i,r,o){var a=xF[i]([o.oldX,o.oldY],[o.newX,o.newY],e,r,n);return a.signal*(t[1]-t[0])*a.pixel/a.pixelLength})),scrollMove:mF((function(t,e,n,i,r,o){return xF[i]([0,0],[o.scrollDelta,o.scrollDelta],e,r,n).signal*(t[1]-t[0])*o.scrollDelta}))};function mF(t){return function(e,n,i,r){var o=this.range,a=o.slice(),s=e.axisModels[0];if(s)return zk(t(a,s,e,n,i,r),a,[0,100],"all"),this.range=a,o[0]!==a[0]||o[1]!==a[1]?a:void 0}}var xF={grid:function(t,e,n,i,r){var o=n.axis,a={},s=r.model.coordinateSystem.getRect();return t=t||[0,0],"x"===o.dim?(a.pixel=e[0]-t[0],a.pixelLength=s.width,a.pixelStart=s.x,a.signal=o.inverse?1:-1):(a.pixel=e[1]-t[1],a.pixelLength=s.height,a.pixelStart=s.y,a.signal=o.inverse?-1:1),a},polar:function(t,e,n,i,r){var o=n.axis,a={},s=r.model.coordinateSystem,l=s.getRadiusAxis().getExtent(),u=s.getAngleAxis().getExtent();return t=t?s.pointToCoord(t):[0,0],e=s.pointToCoord(e),"radiusAxis"===n.mainType?(a.pixel=e[0]-t[0],a.pixelLength=l[1]-l[0],a.pixelStart=l[0],a.signal=o.inverse?1:-1):(a.pixel=e[1]-t[1],a.pixelLength=u[1]-u[0],a.pixelStart=u[0],a.signal=o.inverse?-1:1),a},singleAxis:function(t,e,n,i,r){var o=n.axis,a=r.model.coordinateSystem.getRect(),s={};return t=t||[0,0],"horizontal"===o.orient?(s.pixel=e[0]-t[0],s.pixelLength=a.width,s.pixelStart=a.x,s.signal=o.inverse?1:-1):(s.pixel=e[1]-t[1],s.pixelLength=a.height,s.pixelStart=a.y,s.signal=o.inverse?-1:1),s}};function _F(t){yz(t),t.registerComponentModel(uF),t.registerComponentView(yF),gF(t)}var bF=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="dataZoom.slider",e.layoutMode="box",e.defaultOption=kc(az.defaultOption,{show:!0,right:"ph",top:"ph",width:"ph",height:"ph",left:null,bottom:null,borderColor:"#d2dbee",borderRadius:3,backgroundColor:"rgba(47,69,84,0)",dataBackground:{lineStyle:{color:"#d2dbee",width:.5},areaStyle:{color:"#d2dbee",opacity:.2}},selectedDataBackground:{lineStyle:{color:"#8fb0f7",width:.5},areaStyle:{color:"#8fb0f7",opacity:.2}},fillerColor:"rgba(135,175,274,0.2)",handleIcon:"path://M-9.35,34.56V42m0-40V9.5m-2,0h4a2,2,0,0,1,2,2v21a2,2,0,0,1-2,2h-4a2,2,0,0,1-2-2v-21A2,2,0,0,1-11.35,9.5Z",handleSize:"100%",handleStyle:{color:"#fff",borderColor:"#ACB8D1"},moveHandleSize:7,moveHandleIcon:"path://M-320.9-50L-320.9-50c18.1,0,27.1,9,27.1,27.1V85.7c0,18.1-9,27.1-27.1,27.1l0,0c-18.1,0-27.1-9-27.1-27.1V-22.9C-348-41-339-50-320.9-50z M-212.3-50L-212.3-50c18.1,0,27.1,9,27.1,27.1V85.7c0,18.1-9,27.1-27.1,27.1l0,0c-18.1,0-27.1-9-27.1-27.1V-22.9C-239.4-41-230.4-50-212.3-50z M-103.7-50L-103.7-50c18.1,0,27.1,9,27.1,27.1V85.7c0,18.1-9,27.1-27.1,27.1l0,0c-18.1,0-27.1-9-27.1-27.1V-22.9C-130.9-41-121.8-50-103.7-50z",moveHandleStyle:{color:"#D2DBEE",opacity:.7},showDetail:!0,showDataShadow:"auto",realtime:!0,zoomLock:!1,textStyle:{color:"#6E7079"},brushSelect:!0,brushStyle:{color:"rgba(135,175,274,0.15)"},emphasis:{handleStyle:{borderColor:"#8FB0F7"},moveHandleStyle:{color:"#8FB0F7"}}}),e}(az),wF=Ws,SF="horizontal",MF="vertical",IF=["line","bar","candlestick","scatter"],TF={easing:"cubicOut",duration:100,delay:0},CF=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._displayables={},n}return n(e,t),e.prototype.init=function(t,e){this.api=e,this._onBrush=W(this._onBrush,this),this._onBrushEnd=W(this._onBrushEnd,this)},e.prototype.render=function(e,n,i,r){if(t.prototype.render.apply(this,arguments),Hg(this,"_dispatchZoomAction",e.get("throttle"),"fixRate"),this._orient=e.getOrient(),!1!==e.get("show")){if(e.noTarget())return this._clear(),void this.group.removeAll();r&&"dataZoom"===r.type&&r.from===this.uid||this._buildView(),this._updateView()}else this.group.removeAll()},e.prototype.dispose=function(){this._clear(),t.prototype.dispose.apply(this,arguments)},e.prototype._clear=function(){Yg(this,"_dispatchZoomAction");var t=this.api.getZr();t.off("mousemove",this._onBrush),t.off("mouseup",this._onBrushEnd)},e.prototype._buildView=function(){var t=this.group;t.removeAll(),this._brushing=!1,this._displayables.brushRect=null,this._resetLocation(),this._resetInterval();var e=this._displayables.sliderGroup=new Br;this._renderBackground(),this._renderHandle(),this._renderDataShadow(),t.add(e),this._positionGroup()},e.prototype._resetLocation=function(){var t=this.dataZoomModel,e=this.api,n=t.get("brushSelect")?7:0,i=this._findCoordRect(),r={width:e.getWidth(),height:e.getHeight()},o=this._orient===SF?{right:r.width-i.x-i.width,top:r.height-30-7-n,width:i.width,height:30}:{right:7,top:i.y,width:30,height:i.height},a=Rp(t.option);E(["right","top","width","height"],(function(t){"ph"===a[t]&&(a[t]=o[t])}));var s=kp(a,r);this._location={x:s.x,y:s.y},this._size=[s.width,s.height],this._orient===MF&&this._size.reverse()},e.prototype._positionGroup=function(){var t=this.group,e=this._location,n=this._orient,i=this.dataZoomModel.getFirstTargetAxisModel(),r=i&&i.get("inverse"),o=this._displayables.sliderGroup,a=(this._dataShadowInfo||{}).otherAxisInverse;o.attr(n!==SF||r?n===SF&&r?{scaleY:a?1:-1,scaleX:-1}:n!==MF||r?{scaleY:a?-1:1,scaleX:-1,rotation:Math.PI/2}:{scaleY:a?-1:1,scaleX:1,rotation:Math.PI/2}:{scaleY:a?1:-1,scaleX:1});var s=t.getBoundingRect([o]);t.x=e.x-s.x,t.y=e.y-s.y,t.markRedraw()},e.prototype._getViewExtent=function(){return[0,this._size[0]]},e.prototype._renderBackground=function(){var t=this.dataZoomModel,e=this._size,n=this._displayables.sliderGroup,i=t.get("brushSelect");n.add(new wF({silent:!0,shape:{x:0,y:0,width:e[0],height:e[1]},style:{fill:t.get("backgroundColor")},z2:-40}));var r=new wF({shape:{x:0,y:0,width:e[0],height:e[1]},style:{fill:"transparent"},z2:0,onclick:W(this._onClickPanel,this)}),o=this.api.getZr();i?(r.on("mousedown",this._onBrushStart,this),r.cursor="crosshair",o.on("mousemove",this._onBrush),o.on("mouseup",this._onBrushEnd)):(o.off("mousemove",this._onBrush),o.off("mouseup",this._onBrushEnd)),n.add(r)},e.prototype._renderDataShadow=function(){var t=this._dataShadowInfo=this._prepareDataShadowInfo();if(this._displayables.dataShadowSegs=[],t){var e=this._size,n=this._shadowSize||[],i=t.series,r=i.getRawData(),o=i.getShadowDim&&i.getShadowDim(),a=o&&r.getDimensionInfo(o)?i.getShadowDim():t.otherDim;if(null!=a){var s=this._shadowPolygonPts,l=this._shadowPolylinePts;if(r!==this._shadowData||a!==this._shadowDim||e[0]!==n[0]||e[1]!==n[1]){var u=r.getDataExtent(a),h=.3*(u[1]-u[0]);u=[u[0]-h,u[1]+h];var c,p=[0,e[1]],d=[0,e[0]],f=[[e[0],0],[0,0]],g=[],y=d[1]/(r.count()-1),v=0,m=Math.round(r.count()/e[0]);r.each([a],(function(t,e){if(m>0&&e%m)v+=y;else{var n=null==t||isNaN(t)||""===t,i=n?0:Kr(t,u,p,!0);n&&!c&&e?(f.push([f[f.length-1][0],0]),g.push([g[g.length-1][0],0])):!n&&c&&(f.push([v,0]),g.push([v,0])),f.push([v,i]),g.push([v,i]),v+=y,c=n}})),s=this._shadowPolygonPts=f,l=this._shadowPolylinePts=g}this._shadowData=r,this._shadowDim=a,this._shadowSize=[e[0],e[1]];for(var x=this.dataZoomModel,_=0;_<3;_++){var b=w(1===_);this._displayables.sliderGroup.add(b),this._displayables.dataShadowSegs.push(b)}}}function w(t){var e=x.getModel(t?"selectedDataBackground":"dataBackground"),n=new Br,i=new Xu({shape:{points:s},segmentIgnoreThreshold:1,style:e.getModel("areaStyle").getAreaStyle(),silent:!0,z2:-20}),r=new Zu({shape:{points:l},segmentIgnoreThreshold:1,style:e.getModel("lineStyle").getLineStyle(),silent:!0,z2:-19});return n.add(i),n.add(r),n}},e.prototype._prepareDataShadowInfo=function(){var t=this.dataZoomModel,e=t.get("showDataShadow");if(!1!==e){var n,i=this.ecModel;return t.eachTargetAxis((function(r,o){E(t.getAxisProxy(r,o).getTargetSeriesModels(),(function(t){if(!(n||!0!==e&&P(IF,t.get("type"))<0)){var a,s=i.getComponent(nz(r),o).axis,l=function(t){var e={x:"y",y:"x",radius:"angle",angle:"radius"};return e[t]}(r),u=t.coordinateSystem;null!=l&&u.getOtherAxis&&(a=u.getOtherAxis(s).inverse),l=t.getData().mapDimension(l),n={thisAxis:s,series:t,thisDim:r,otherDim:l,otherAxisInverse:a}}}),this)}),this),n}},e.prototype._renderHandle=function(){var t=this.group,e=this._displayables,n=e.handles=[null,null],i=e.handleLabels=[null,null],r=this._displayables.sliderGroup,o=this._size,a=this.dataZoomModel,s=this.api,l=a.get("borderRadius")||0,u=a.get("brushSelect"),h=e.filler=new wF({silent:u,style:{fill:a.get("fillerColor")},textConfig:{position:"inside"}});r.add(h),r.add(new wF({silent:!0,subPixelOptimize:!0,shape:{x:0,y:0,width:o[0],height:o[1],r:l},style:{stroke:a.get("dataBackgroundColor")||a.get("borderColor"),lineWidth:1,fill:"rgba(0,0,0,0)"}})),E([0,1],(function(e){var o=a.get("handleIcon");!Wy[o]&&o.indexOf("path://")<0&&o.indexOf("image://")<0&&(o="path://"+o);var s=Xy(o,-1,0,2,2,null,!0);s.attr({cursor:DF(this._orient),draggable:!0,drift:W(this._onDragMove,this,e),ondragend:W(this._onDragEnd,this),onmouseover:W(this._showDataInfo,this,!0),onmouseout:W(this._showDataInfo,this,!1),z2:5});var l=s.getBoundingRect(),u=a.get("handleSize");this._handleHeight=$r(u,this._size[1]),this._handleWidth=l.width/l.height*this._handleHeight,s.setStyle(a.getModel("handleStyle").getItemStyle()),s.style.strokeNoScale=!0,s.rectHover=!0,s.ensureState("emphasis").style=a.getModel(["emphasis","handleStyle"]).getItemStyle(),Ul(s);var h=a.get("handleColor");null!=h&&(s.style.fill=h),r.add(n[e]=s);var c=a.getModel("textStyle");t.add(i[e]=new Xs({silent:!0,invisible:!0,style:oc(c,{x:0,y:0,text:"",verticalAlign:"middle",align:"center",fill:c.getTextColor(),font:c.getFont()}),z2:10}))}),this);var c=h;if(u){var p=$r(a.get("moveHandleSize"),o[1]),d=e.moveHandle=new Ws({style:a.getModel("moveHandleStyle").getItemStyle(),silent:!0,shape:{r:[0,0,2,2],y:o[1]-.5,height:p}}),f=.8*p,g=e.moveHandleIcon=Xy(a.get("moveHandleIcon"),-f/2,-f/2,f,f,"#fff",!0);g.silent=!0,g.y=o[1]+p/2-.5,d.ensureState("emphasis").style=a.getModel(["emphasis","moveHandleStyle"]).getItemStyle();var y=Math.min(o[1]/2,Math.max(p,10));(c=e.moveZone=new Ws({invisible:!0,shape:{y:o[1]-y,height:p+y}})).on("mouseover",(function(){s.enterEmphasis(d)})).on("mouseout",(function(){s.leaveEmphasis(d)})),r.add(d),r.add(g),r.add(c)}c.attr({draggable:!0,cursor:DF(this._orient),drift:W(this._onDragMove,this,"all"),ondragstart:W(this._showDataInfo,this,!0),ondragend:W(this._onDragEnd,this),onmouseover:W(this._showDataInfo,this,!0),onmouseout:W(this._showDataInfo,this,!1)})},e.prototype._resetInterval=function(){var t=this._range=this.dataZoomModel.getPercentRange(),e=this._getViewExtent();this._handleEnds=[Kr(t[0],[0,100],e,!0),Kr(t[1],[0,100],e,!0)]},e.prototype._updateInterval=function(t,e){var n=this.dataZoomModel,i=this._handleEnds,r=this._getViewExtent(),o=n.findRepresentativeAxisProxy().getMinMaxSpan(),a=[0,100];zk(e,i,r,n.get("zoomLock")?"all":t,null!=o.minSpan?Kr(o.minSpan,a,r,!0):null,null!=o.maxSpan?Kr(o.maxSpan,a,r,!0):null);var s=this._range,l=this._range=Qr([Kr(i[0],r,a,!0),Kr(i[1],r,a,!0)]);return!s||s[0]!==l[0]||s[1]!==l[1]},e.prototype._updateView=function(t){var e=this._displayables,n=this._handleEnds,i=Qr(n.slice()),r=this._size;E([0,1],(function(t){var i=e.handles[t],o=this._handleHeight;i.attr({scaleX:o/2,scaleY:o/2,x:n[t]+(t?-1:1),y:r[1]/2-o/2})}),this),e.filler.setShape({x:i[0],y:0,width:i[1]-i[0],height:r[1]});var o={x:i[0],width:i[1]-i[0]};e.moveHandle&&(e.moveHandle.setShape(o),e.moveZone.setShape(o),e.moveZone.getBoundingRect(),e.moveHandleIcon&&e.moveHandleIcon.attr("x",o.x+o.width/2));for(var a=e.dataShadowSegs,s=[0,i[0],i[1],r[0]],l=0;l<a.length;l++){var u=a[l],h=u.getClipPath();h||(h=new Ws,u.setClipPath(h)),h.setShape({x:s[l],y:0,width:s[l+1]-s[l],height:r[1]})}this._updateDataInfo(t)},e.prototype._updateDataInfo=function(t){var e=this.dataZoomModel,n=this._displayables,i=n.handleLabels,r=this._orient,o=["",""];if(e.get("showDetail")){var a=e.findRepresentativeAxisProxy();if(a){var s=a.getAxisModel().axis,l=this._range,u=t?a.calculateDataWindow({start:l[0],end:l[1]}).valueWindow:a.getDataValueWindow();o=[this._formatLabel(u[0],s),this._formatLabel(u[1],s)]}}var h=Qr(this._handleEnds.slice());function c(t){var e=Bh(n.handles[t].parent,this.group),a=Gh(0===t?"right":"left",e),s=this._handleWidth/2+5,l=Fh([h[t]+(0===t?-s:s),this._size[1]/2],e);i[t].setStyle({x:l[0],y:l[1],verticalAlign:r===SF?"middle":a,align:r===SF?a:"center",text:o[t]})}c.call(this,0),c.call(this,1)},e.prototype._formatLabel=function(t,e){var n=this.dataZoomModel,i=n.get("labelFormatter"),r=n.get("labelPrecision");null!=r&&"auto"!==r||(r=e.getPixelPrecision());var o=null==t||isNaN(t)?"":"category"===e.type||"time"===e.type?e.scale.getLabel({value:Math.round(t)}):t.toFixed(Math.min(r,20));return X(i)?i(t,o):U(i)?i.replace("{value}",o):o},e.prototype._showDataInfo=function(t){t=this._dragging||t;var e=this._displayables,n=e.handleLabels;n[0].attr("invisible",!t),n[1].attr("invisible",!t),e.moveHandle&&this.api[t?"enterEmphasis":"leaveEmphasis"](e.moveHandle,1)},e.prototype._onDragMove=function(t,e,n,i){this._dragging=!0,de(i.event);var r=Fh([e,n],this._displayables.sliderGroup.getLocalTransform(),!0),o=this._updateInterval(t,r[0]),a=this.dataZoomModel.get("realtime");this._updateView(!a),o&&a&&this._dispatchZoomAction(!0)},e.prototype._onDragEnd=function(){this._dragging=!1,this._showDataInfo(!1),!this.dataZoomModel.get("realtime")&&this._dispatchZoomAction(!1)},e.prototype._onClickPanel=function(t){var e=this._size,n=this._displayables.sliderGroup.transformCoordToLocal(t.offsetX,t.offsetY);if(!(n[0]<0||n[0]>e[0]||n[1]<0||n[1]>e[1])){var i=this._handleEnds,r=(i[0]+i[1])/2,o=this._updateInterval("all",n[0]-r);this._updateView(),o&&this._dispatchZoomAction(!1)}},e.prototype._onBrushStart=function(t){var e=t.offsetX,n=t.offsetY;this._brushStart=new De(e,n),this._brushing=!0,this._brushStartTime=+new Date},e.prototype._onBrushEnd=function(t){if(this._brushing){var e=this._displayables.brushRect;if(this._brushing=!1,e){e.attr("ignore",!0);var n=e.shape;if(!(+new Date-this._brushStartTime<200&&Math.abs(n.width)<5)){var i=this._getViewExtent(),r=[0,100];this._range=Qr([Kr(n.x,i,r,!0),Kr(n.x+n.width,i,r,!0)]),this._handleEnds=[n.x,n.x+n.width],this._updateView(),this._dispatchZoomAction(!1)}}}},e.prototype._onBrush=function(t){this._brushing&&(de(t.event),this._updateBrushRect(t.offsetX,t.offsetY))},e.prototype._updateBrushRect=function(t,e){var n=this._displayables,i=this.dataZoomModel,r=n.brushRect;r||(r=n.brushRect=new wF({silent:!0,style:i.getModel("brushStyle").getItemStyle()}),n.sliderGroup.add(r)),r.attr("ignore",!1);var o=this._brushStart,a=this._displayables.sliderGroup,s=a.transformCoordToLocal(t,e),l=a.transformCoordToLocal(o.x,o.y),u=this._size;s[0]=Math.max(Math.min(u[0],s[0]),0),r.setShape({x:l[0],y:0,width:s[0]-l[0],height:u[1]})},e.prototype._dispatchZoomAction=function(t){var e=this._range;this.api.dispatchAction({type:"dataZoom",from:this.uid,dataZoomId:this.dataZoomModel.id,animation:t?TF:null,start:e[0],end:e[1]})},e.prototype._findCoordRect=function(){var t,e=rz(this.dataZoomModel).infoList;if(!t&&e.length){var n=e[0].model.coordinateSystem;t=n.getRect&&n.getRect()}if(!t){var i=this.api.getWidth(),r=this.api.getHeight();t={x:.2*i,y:.2*r,width:.6*i,height:.6*r}}return t},e.type="dataZoom.slider",e}(uz);function DF(t){return"vertical"===t?"ns-resize":"ew-resize"}function AF(t){t.registerComponentModel(bF),t.registerComponentView(CF),yz(t)}var kF=function(t,e,n){var i=T((LF[t]||{})[e]);return n&&Y(i)?i[i.length-1]:i},LF={color:{active:["#006edd","#e0ffff"],inactive:["rgba(0,0,0,0)"]},colorHue:{active:[0,360],inactive:[0,0]},colorSaturation:{active:[.3,1],inactive:[0,0]},colorLightness:{active:[.9,.5],inactive:[0,0]},colorAlpha:{active:[.3,1],inactive:[0,0]},opacity:{active:[.3,1],inactive:[0,0]},symbol:{active:["circle","roundRect","diamond"],inactive:["none"]},symbolSize:{active:[10,50],inactive:[0,0]}},PF=kD.mapVisual,OF=kD.eachVisual,RF=Y,NF=E,EF=Qr,zF=Kr,VF=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.stateList=["inRange","outOfRange"],n.replacableOptionKeys=["inRange","outOfRange","target","controller","color"],n.layoutMode={type:"box",ignoreSize:!0},n.dataBound=[-1/0,1/0],n.targetVisuals={},n.controllerVisuals={},n}return n(e,t),e.prototype.init=function(t,e,n){this.mergeDefaultAndTheme(t,n)},e.prototype.optionUpdated=function(t,e){var n=this.option;!e&&PV(n,t,this.replacableOptionKeys),this.textStyleModel=this.getModel("textStyle"),this.resetItemSize(),this.completeVisualOption()},e.prototype.resetVisual=function(t){var e=this.stateList;t=W(t,this),this.controllerVisuals=LV(this.option.controller,e,t),this.targetVisuals=LV(this.option.target,e,t)},e.prototype.getItemSymbol=function(){return null},e.prototype.getTargetSeriesIndices=function(){var t=this.option.seriesIndex,e=[];return null==t||"all"===t?this.ecModel.eachSeries((function(t,n){e.push(n)})):e=To(t),e},e.prototype.eachTargetSeries=function(t,e){E(this.getTargetSeriesIndices(),(function(n){var i=this.ecModel.getSeriesByIndex(n);i&&t.call(e,i)}),this)},e.prototype.isTargetSeries=function(t){var e=!1;return this.eachTargetSeries((function(n){n===t&&(e=!0)})),e},e.prototype.formatValueText=function(t,e,n){var i,r=this.option,o=r.precision,a=this.dataBound,s=r.formatter;n=n||["<",">"],Y(t)&&(t=t.slice(),i=!0);var l=e?t:i?[u(t[0]),u(t[1])]:u(t);return U(s)?s.replace("{value}",i?l[0]:l).replace("{value2}",i?l[1]:l):X(s)?i?s(t[0],t[1]):s(t):i?t[0]===a[0]?n[0]+" "+l[1]:t[1]===a[1]?n[1]+" "+l[0]:l[0]+" - "+l[1]:l;function u(t){return t===a[0]?"min":t===a[1]?"max":(+t).toFixed(Math.min(o,20))}},e.prototype.resetExtent=function(){var t=this.option,e=EF([t.min,t.max]);this._dataExtent=e},e.prototype.getDataDimensionIndex=function(t){var e=this.option.dimension;if(null!=e)return t.getDimensionIndex(e);for(var n=t.dimensions,i=n.length-1;i>=0;i--){var r=n[i],o=t.getDimensionInfo(r);if(!o.isCalculationCoord)return o.storeDimIndex}},e.prototype.getExtent=function(){return this._dataExtent.slice()},e.prototype.completeVisualOption=function(){var t=this.ecModel,e=this.option,n={inRange:e.inRange,outOfRange:e.outOfRange},i=e.target||(e.target={}),r=e.controller||(e.controller={});C(i,n),C(r,n);var o=this.isCategory();function a(n){RF(e.color)&&!n.inRange&&(n.inRange={color:e.color.slice().reverse()}),n.inRange=n.inRange||{color:t.get("gradientColor")}}a.call(this,i),a.call(this,r),function(t,e,n){var i=t[e],r=t[n];i&&!r&&(r=t[n]={},NF(i,(function(t,e){if(kD.isValidType(e)){var n=kF(e,"inactive",o);null!=n&&(r[e]=n,"color"!==e||r.hasOwnProperty("opacity")||r.hasOwnProperty("colorAlpha")||(r.opacity=[0,0]))}})))}.call(this,i,"inRange","outOfRange"),function(t){var e=(t.inRange||{}).symbol||(t.outOfRange||{}).symbol,n=(t.inRange||{}).symbolSize||(t.outOfRange||{}).symbolSize,i=this.get("inactiveColor"),r=this.getItemSymbol()||"roundRect";NF(this.stateList,(function(a){var s=this.itemSize,l=t[a];l||(l=t[a]={color:o?i:[i]}),null==l.symbol&&(l.symbol=e&&T(e)||(o?r:[r])),null==l.symbolSize&&(l.symbolSize=n&&T(n)||(o?s[0]:[s[0],s[0]])),l.symbol=PF(l.symbol,(function(t){return"none"===t?r:t}));var u=l.symbolSize;if(null!=u){var h=-1/0;OF(u,(function(t){t>h&&(h=t)})),l.symbolSize=PF(u,(function(t){return zF(t,[0,h],[0,s[0]],!0)}))}}),this)}.call(this,r)},e.prototype.resetItemSize=function(){this.itemSize=[parseFloat(this.get("itemWidth")),parseFloat(this.get("itemHeight"))]},e.prototype.isCategory=function(){return!!this.option.categories},e.prototype.setSelected=function(t){},e.prototype.getSelected=function(){return null},e.prototype.getValueState=function(t){return null},e.prototype.getVisualMeta=function(t){return null},e.type="visualMap",e.dependencies=["series"],e.defaultOption={show:!0,z:4,seriesIndex:"all",min:0,max:200,left:0,right:null,top:null,bottom:0,itemWidth:null,itemHeight:null,inverse:!1,orient:"vertical",backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",contentColor:"#5793f3",inactiveColor:"#aaa",borderWidth:0,padding:5,textGap:10,precision:0,textStyle:{color:"#333"}},e}(zp),BF=[20,140],FF=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.optionUpdated=function(e,n){t.prototype.optionUpdated.apply(this,arguments),this.resetExtent(),this.resetVisual((function(t){t.mappingMethod="linear",t.dataExtent=this.getExtent()})),this._resetRange()},e.prototype.resetItemSize=function(){t.prototype.resetItemSize.apply(this,arguments);var e=this.itemSize;(null==e[0]||isNaN(e[0]))&&(e[0]=BF[0]),(null==e[1]||isNaN(e[1]))&&(e[1]=BF[1])},e.prototype._resetRange=function(){var t=this.getExtent(),e=this.option.range;!e||e.auto?(t.auto=1,this.option.range=t):Y(e)&&(e[0]>e[1]&&e.reverse(),e[0]=Math.max(e[0],t[0]),e[1]=Math.min(e[1],t[1]))},e.prototype.completeVisualOption=function(){t.prototype.completeVisualOption.apply(this,arguments),E(this.stateList,(function(t){var e=this.option.controller[t].symbolSize;e&&e[0]!==e[1]&&(e[0]=e[1]/3)}),this)},e.prototype.setSelected=function(t){this.option.range=t.slice(),this._resetRange()},e.prototype.getSelected=function(){var t=this.getExtent(),e=Qr((this.get("range")||[]).slice());return e[0]>t[1]&&(e[0]=t[1]),e[1]>t[1]&&(e[1]=t[1]),e[0]<t[0]&&(e[0]=t[0]),e[1]<t[0]&&(e[1]=t[0]),e},e.prototype.getValueState=function(t){var e=this.option.range,n=this.getExtent();return(e[0]<=n[0]||e[0]<=t)&&(e[1]>=n[1]||t<=e[1])?"inRange":"outOfRange"},e.prototype.findTargetDataIndices=function(t){var e=[];return this.eachTargetSeries((function(n){var i=[],r=n.getData();r.each(this.getDataDimensionIndex(r),(function(e,n){t[0]<=e&&e<=t[1]&&i.push(n)}),this),e.push({seriesId:n.id,dataIndex:i})}),this),e},e.prototype.getVisualMeta=function(t){var e=GF(this,"outOfRange",this.getExtent()),n=GF(this,"inRange",this.option.range.slice()),i=[];function r(e,n){i.push({value:e,color:t(e,n)})}for(var o=0,a=0,s=n.length,l=e.length;a<l&&(!n.length||e[a]<=n[0]);a++)e[a]<n[o]&&r(e[a],"outOfRange");for(var u=1;o<s;o++,u=0)u&&i.length&&r(n[o],"outOfRange"),r(n[o],"inRange");for(u=1;a<l;a++)(!n.length||n[n.length-1]<e[a])&&(u&&(i.length&&r(i[i.length-1].value,"outOfRange"),u=0),r(e[a],"outOfRange"));var h=i.length;return{stops:i,outerColors:[h?i[0].color:"transparent",h?i[h-1].color:"transparent"]}},e.type="visualMap.continuous",e.defaultOption=kc(VF.defaultOption,{align:"auto",calculable:!1,hoverLink:!0,realtime:!0,handleIcon:"path://M-11.39,9.77h0a3.5,3.5,0,0,1-3.5,3.5h-22a3.5,3.5,0,0,1-3.5-3.5h0a3.5,3.5,0,0,1,3.5-3.5h22A3.5,3.5,0,0,1-11.39,9.77Z",handleSize:"120%",handleStyle:{borderColor:"#fff",borderWidth:1},indicatorIcon:"circle",indicatorSize:"50%",indicatorStyle:{borderColor:"#fff",borderWidth:2,shadowBlur:2,shadowOffsetX:1,shadowOffsetY:1,shadowColor:"rgba(0,0,0,0.2)"}}),e}(VF);function GF(t,e,n){if(n[0]===n[1])return n.slice();for(var i=(n[1]-n[0])/200,r=n[0],o=[],a=0;a<=200&&r<n[1];a++)o.push(r),r+=i;return o.push(n[1]),o}var WF=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.autoPositionValues={left:1,right:1,top:1,bottom:1},n}return n(e,t),e.prototype.init=function(t,e){this.ecModel=t,this.api=e},e.prototype.render=function(t,e,n,i){this.visualMapModel=t,!1!==t.get("show")?this.doRender(t,e,n,i):this.group.removeAll()},e.prototype.renderBackground=function(t){var e=this.visualMapModel,n=vp(e.get("padding")||0),i=t.getBoundingRect();t.add(new Ws({z2:-1,silent:!0,shape:{x:i.x-n[3],y:i.y-n[0],width:i.width+n[3]+n[1],height:i.height+n[0]+n[2]},style:{fill:e.get("backgroundColor"),stroke:e.get("borderColor"),lineWidth:e.get("borderWidth")}}))},e.prototype.getControllerVisual=function(t,e,n){var i=(n=n||{}).forceState,r=this.visualMapModel,o={};if("color"===e){var a=r.get("contentColor");o.color=a}function s(t){return o[t]}function l(t,e){o[t]=e}var u=r.controllerVisuals[i||r.getValueState(t)];return E(kD.prepareVisualTypes(u),(function(i){var r=u[i];n.convertOpacityToAlpha&&"opacity"===i&&(i="colorAlpha",r=u.__alphaForOpacity),kD.dependsOn(i,e)&&r&&r.applyVisual(t,s,l)})),o[e]},e.prototype.positionGroup=function(t){var e=this.visualMapModel,n=this.api;Lp(t,e.getBoxLayoutParams(),{width:n.getWidth(),height:n.getHeight()})},e.prototype.doRender=function(t,e,n,i){},e.type="visualMap",e}(Ag),HF=[["left","right","width"],["top","bottom","height"]];function YF(t,e,n){var i=t.option,r=i.align;if(null!=r&&"auto"!==r)return r;for(var o={width:e.getWidth(),height:e.getHeight()},a="horizontal"===i.orient?1:0,s=HF[a],l=[0,null,10],u={},h=0;h<3;h++)u[HF[1-a][h]]=l[h],u[s[h]]=2===h?n[0]:i[s[h]];var c=[["x","width",3],["y","height",0]][a],p=kp(u,o,i.padding);return s[(p.margin[c[2]]||0)+p[c[0]]+.5*p[c[1]]<.5*o[c[1]]?0:1]}function XF(t,e){return E(t||[],(function(t){null!=t.dataIndex&&(t.dataIndexInside=t.dataIndex,t.dataIndex=null),t.highlightKey="visualMap"+(e?e.componentIndex:"")})),t}var UF=Kr,ZF=E,jF=Math.min,qF=Math.max,KF=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._shapes={},n._dataInterval=[],n._handleEnds=[],n._hoverLinkDataIndices=[],n}return n(e,t),e.prototype.init=function(e,n){t.prototype.init.call(this,e,n),this._hoverLinkFromSeriesMouseOver=W(this._hoverLinkFromSeriesMouseOver,this),this._hideIndicator=W(this._hideIndicator,this)},e.prototype.doRender=function(t,e,n,i){i&&"selectDataRange"===i.type&&i.from===this.uid||this._buildView()},e.prototype._buildView=function(){this.group.removeAll();var t=this.visualMapModel,e=this.group;this._orient=t.get("orient"),this._useHandle=t.get("calculable"),this._resetInterval(),this._renderBar(e);var n=t.get("text");this._renderEndsText(e,n,0),this._renderEndsText(e,n,1),this._updateView(!0),this.renderBackground(e),this._updateView(),this._enableHoverLinkToSeries(),this._enableHoverLinkFromSeries(),this.positionGroup(e)},e.prototype._renderEndsText=function(t,e,n){if(e){var i=e[1-n];i=null!=i?i+"":"";var r=this.visualMapModel,o=r.get("textGap"),a=r.itemSize,s=this._shapes.mainGroup,l=this._applyTransform([a[0]/2,0===n?-o:a[1]+o],s),u=this._applyTransform(0===n?"bottom":"top",s),h=this._orient,c=this.visualMapModel.textStyleModel;this.group.add(new Xs({style:oc(c,{x:l[0],y:l[1],verticalAlign:"horizontal"===h?"middle":u,align:"horizontal"===h?u:"center",text:i})}))}},e.prototype._renderBar=function(t){var e=this.visualMapModel,n=this._shapes,i=e.itemSize,r=this._orient,o=this._useHandle,a=YF(e,this.api,i),s=n.mainGroup=this._createBarGroup(a),l=new Br;s.add(l),l.add(n.outOfRange=$F()),l.add(n.inRange=$F(null,o?QF(this._orient):null,W(this._dragHandle,this,"all",!1),W(this._dragHandle,this,"all",!0))),l.setClipPath(new Ws({shape:{x:0,y:0,width:i[0],height:i[1],r:3}}));var u=e.textStyleModel.getTextRect("国"),h=qF(u.width,u.height);o&&(n.handleThumbs=[],n.handleLabels=[],n.handleLabelPoints=[],this._createHandle(e,s,0,i,h,r),this._createHandle(e,s,1,i,h,r)),this._createIndicator(e,s,i,h,r),t.add(s)},e.prototype._createHandle=function(t,e,n,i,r,o){var a=W(this._dragHandle,this,n,!1),s=W(this._dragHandle,this,n,!0),l=Cr(t.get("handleSize"),i[0]),u=Xy(t.get("handleIcon"),-l/2,-l/2,l,l,null,!0),h=QF(this._orient);u.attr({cursor:h,draggable:!0,drift:a,ondragend:s,onmousemove:function(t){de(t.event)}}),u.x=i[0]/2,u.useStyle(t.getModel("handleStyle").getItemStyle()),u.setStyle({strokeNoScale:!0,strokeFirst:!0}),u.style.lineWidth*=2,u.ensureState("emphasis").style=t.getModel(["emphasis","handleStyle"]).getItemStyle(),Jl(u,!0),e.add(u);var c=this.visualMapModel.textStyleModel,p=new Xs({cursor:h,draggable:!0,drift:a,onmousemove:function(t){de(t.event)},ondragend:s,style:oc(c,{x:0,y:0,text:""})});p.ensureState("blur").style={opacity:.1},p.stateTransition={duration:200},this.group.add(p);var d=[l,0],f=this._shapes;f.handleThumbs[n]=u,f.handleLabelPoints[n]=d,f.handleLabels[n]=p},e.prototype._createIndicator=function(t,e,n,i,r){var o=Cr(t.get("indicatorSize"),n[0]),a=Xy(t.get("indicatorIcon"),-o/2,-o/2,o,o,null,!0);a.attr({cursor:"move",invisible:!0,silent:!0,x:n[0]/2});var s=t.getModel("indicatorStyle").getItemStyle();if(a instanceof Ns){var l=a.style;a.useStyle(A({image:l.image,x:l.x,y:l.y,width:l.width,height:l.height},s))}else a.useStyle(s);e.add(a);var u=this.visualMapModel.textStyleModel,h=new Xs({silent:!0,invisible:!0,style:oc(u,{x:0,y:0,text:""})});this.group.add(h);var c=[("horizontal"===r?i/2:6)+n[0]/2,0],p=this._shapes;p.indicator=a,p.indicatorLabel=h,p.indicatorLabelPoint=c,this._firstShowIndicator=!0},e.prototype._dragHandle=function(t,e,n,i){if(this._useHandle){if(this._dragging=!e,!e){var r=this._applyTransform([n,i],this._shapes.mainGroup,!0);this._updateInterval(t,r[1]),this._hideIndicator(),this._updateView()}e===!this.visualMapModel.get("realtime")&&this.api.dispatchAction({type:"selectDataRange",from:this.uid,visualMapId:this.visualMapModel.id,selected:this._dataInterval.slice()}),e?!this._hovering&&this._clearHoverLinkToSeries():JF(this.visualMapModel)&&this._doHoverLinkToSeries(this._handleEnds[t],!1)}},e.prototype._resetInterval=function(){var t=this.visualMapModel,e=this._dataInterval=t.getSelected(),n=t.getExtent(),i=[0,t.itemSize[1]];this._handleEnds=[UF(e[0],n,i,!0),UF(e[1],n,i,!0)]},e.prototype._updateInterval=function(t,e){e=e||0;var n=this.visualMapModel,i=this._handleEnds,r=[0,n.itemSize[1]];zk(e,i,r,t,0);var o=n.getExtent();this._dataInterval=[UF(i[0],r,o,!0),UF(i[1],r,o,!0)]},e.prototype._updateView=function(t){var e=this.visualMapModel,n=e.getExtent(),i=this._shapes,r=[0,e.itemSize[1]],o=t?r:this._handleEnds,a=this._createBarVisual(this._dataInterval,n,o,"inRange"),s=this._createBarVisual(n,n,r,"outOfRange");i.inRange.setStyle({fill:a.barColor}).setShape("points",a.barPoints),i.outOfRange.setStyle({fill:s.barColor}).setShape("points",s.barPoints),this._updateHandle(o,a)},e.prototype._createBarVisual=function(t,e,n,i){var r={forceState:i,convertOpacityToAlpha:!0},o=this._makeColorGradient(t,r),a=[this.getControllerVisual(t[0],"symbolSize",r),this.getControllerVisual(t[1],"symbolSize",r)],s=this._createBarPoints(n,a);return{barColor:new oh(0,0,0,1,o),barPoints:s,handlesColor:[o[0].color,o[o.length-1].color]}},e.prototype._makeColorGradient=function(t,e){var n=[],i=(t[1]-t[0])/100;n.push({color:this.getControllerVisual(t[0],"color",e),offset:0});for(var r=1;r<100;r++){var o=t[0]+i*r;if(o>t[1])break;n.push({color:this.getControllerVisual(o,"color",e),offset:r/100})}return n.push({color:this.getControllerVisual(t[1],"color",e),offset:1}),n},e.prototype._createBarPoints=function(t,e){var n=this.visualMapModel.itemSize;return[[n[0]-e[0],t[0]],[n[0],t[0]],[n[0],t[1]],[n[0]-e[1],t[1]]]},e.prototype._createBarGroup=function(t){var e=this._orient,n=this.visualMapModel.get("inverse");return new Br("horizontal"!==e||n?"horizontal"===e&&n?{scaleX:"bottom"===t?-1:1,rotation:-Math.PI/2}:"vertical"!==e||n?{scaleX:"left"===t?1:-1}:{scaleX:"left"===t?1:-1,scaleY:-1}:{scaleX:"bottom"===t?1:-1,rotation:Math.PI/2})},e.prototype._updateHandle=function(t,e){if(this._useHandle){var n=this._shapes,i=this.visualMapModel,r=n.handleThumbs,o=n.handleLabels,a=i.itemSize,s=i.getExtent();ZF([0,1],(function(l){var u=r[l];u.setStyle("fill",e.handlesColor[l]),u.y=t[l];var h=UF(t[l],[0,a[1]],s,!0),c=this.getControllerVisual(h,"symbolSize");u.scaleX=u.scaleY=c/a[0],u.x=a[0]-c/2;var p=Fh(n.handleLabelPoints[l],Bh(u,this.group));o[l].setStyle({x:p[0],y:p[1],text:i.formatValueText(this._dataInterval[l]),verticalAlign:"middle",align:"vertical"===this._orient?this._applyTransform("left",n.mainGroup):"center"})}),this)}},e.prototype._showIndicator=function(t,e,n,i){var r=this.visualMapModel,o=r.getExtent(),a=r.itemSize,s=[0,a[1]],l=this._shapes,u=l.indicator;if(u){u.attr("invisible",!1);var h=this.getControllerVisual(t,"color",{convertOpacityToAlpha:!0}),c=this.getControllerVisual(t,"symbolSize"),p=UF(t,o,s,!0),d=a[0]-c/2,f={x:u.x,y:u.y};u.y=p,u.x=d;var g=Fh(l.indicatorLabelPoint,Bh(u,this.group)),y=l.indicatorLabel;y.attr("invisible",!1);var v=this._applyTransform("left",l.mainGroup),m="horizontal"===this._orient;y.setStyle({text:(n||"")+r.formatValueText(e),verticalAlign:m?v:"middle",align:m?"center":v});var x={x:d,y:p,style:{fill:h}},_={style:{x:g[0],y:g[1]}};if(r.ecModel.isAnimationEnabled()&&!this._firstShowIndicator){var b={duration:100,easing:"cubicInOut",additive:!0};u.x=f.x,u.y=f.y,u.animateTo(x,b),y.animateTo(_,b)}else u.attr(x),y.attr(_);this._firstShowIndicator=!1;var w=this._shapes.handleLabels;if(w)for(var S=0;S<w.length;S++)this.api.enterBlur(w[S])}},e.prototype._enableHoverLinkToSeries=function(){var t=this;this._shapes.mainGroup.on("mousemove",(function(e){if(t._hovering=!0,!t._dragging){var n=t.visualMapModel.itemSize,i=t._applyTransform([e.offsetX,e.offsetY],t._shapes.mainGroup,!0,!0);i[1]=jF(qF(0,i[1]),n[1]),t._doHoverLinkToSeries(i[1],0<=i[0]&&i[0]<=n[0])}})).on("mouseout",(function(){t._hovering=!1,!t._dragging&&t._clearHoverLinkToSeries()}))},e.prototype._enableHoverLinkFromSeries=function(){var t=this.api.getZr();this.visualMapModel.option.hoverLink?(t.on("mouseover",this._hoverLinkFromSeriesMouseOver,this),t.on("mouseout",this._hideIndicator,this)):this._clearHoverLinkFromSeries()},e.prototype._doHoverLinkToSeries=function(t,e){var n=this.visualMapModel,i=n.itemSize;if(n.option.hoverLink){var r=[0,i[1]],o=n.getExtent();t=jF(qF(r[0],t),r[1]);var a=function(t,e,n){var i=6,r=t.get("hoverLinkDataSize");r&&(i=UF(r,e,n,!0)/2);return i}(n,o,r),s=[t-a,t+a],l=UF(t,r,o,!0),u=[UF(s[0],r,o,!0),UF(s[1],r,o,!0)];s[0]<r[0]&&(u[0]=-1/0),s[1]>r[1]&&(u[1]=1/0),e&&(u[0]===-1/0?this._showIndicator(l,u[1],"< ",a):u[1]===1/0?this._showIndicator(l,u[0],"> ",a):this._showIndicator(l,l,"≈ ",a));var h=this._hoverLinkDataIndices,c=[];(e||JF(n))&&(c=this._hoverLinkDataIndices=n.findTargetDataIndices(u));var p=function(t,e){var n={},i={};return r(t||[],n),r(e||[],i,n),[o(n),o(i)];function r(t,e,n){for(var i=0,r=t.length;i<r;i++){var o=Ro(t[i].seriesId,null);if(null==o)return;for(var a=To(t[i].dataIndex),s=n&&n[o],l=0,u=a.length;l<u;l++){var h=a[l];s&&s[h]?s[h]=null:(e[o]||(e[o]={}))[h]=1}}}function o(t,e){var n=[];for(var i in t)if(t.hasOwnProperty(i)&&null!=t[i])if(e)n.push(+i);else{var r=o(t[i],!0);r.length&&n.push({seriesId:i,dataIndex:r})}return n}}(h,c);this._dispatchHighDown("downplay",XF(p[0],n)),this._dispatchHighDown("highlight",XF(p[1],n))}},e.prototype._hoverLinkFromSeriesMouseOver=function(t){var e;if(Oy(t.target,(function(t){var n=rl(t);if(null!=n.dataIndex)return e=n,!0}),!0),e){var n=this.ecModel.getSeriesByIndex(e.seriesIndex),i=this.visualMapModel;if(i.isTargetSeries(n)){var r=n.getData(e.dataType),o=r.getStore().get(i.getDataDimensionIndex(r),e.dataIndex);isNaN(o)||this._showIndicator(o,o)}}},e.prototype._hideIndicator=function(){var t=this._shapes;t.indicator&&t.indicator.attr("invisible",!0),t.indicatorLabel&&t.indicatorLabel.attr("invisible",!0);var e=this._shapes.handleLabels;if(e)for(var n=0;n<e.length;n++)this.api.leaveBlur(e[n])},e.prototype._clearHoverLinkToSeries=function(){this._hideIndicator();var t=this._hoverLinkDataIndices;this._dispatchHighDown("downplay",XF(t,this.visualMapModel)),t.length=0},e.prototype._clearHoverLinkFromSeries=function(){this._hideIndicator();var t=this.api.getZr();t.off("mouseover",this._hoverLinkFromSeriesMouseOver),t.off("mouseout",this._hideIndicator)},e.prototype._applyTransform=function(t,e,n,i){var r=Bh(e,i?null:this.group);return Y(t)?Fh(t,r,n):Gh(t,r,n)},e.prototype._dispatchHighDown=function(t,e){e&&e.length&&this.api.dispatchAction({type:t,batch:e})},e.prototype.dispose=function(){this._clearHoverLinkFromSeries(),this._clearHoverLinkToSeries()},e.type="visualMap.continuous",e}(WF);function $F(t,e,n,i){return new Xu({shape:{points:t},draggable:!!n,cursor:e,drift:n,onmousemove:function(t){de(t.event)},ondragend:i})}function JF(t){var e=t.get("hoverLinkOnHandle");return!!(null==e?t.get("realtime"):e)}function QF(t){return"vertical"===t?"ns-resize":"ew-resize"}var tG={type:"selectDataRange",event:"dataRangeSelected",update:"update"},eG=function(t,e){e.eachComponent({mainType:"visualMap",query:t},(function(e){e.setSelected(t.selected)}))},nG=[{createOnAllSeries:!0,reset:function(t,e){var n=[];return e.eachComponent("visualMap",(function(e){var i,r,o,a,s,l=t.pipelineContext;!e.isTargetSeries(t)||l&&l.large||n.push((i=e.stateList,r=e.targetVisuals,o=W(e.getValueState,e),a=e.getDataDimensionIndex(t.getData()),s={},E(i,(function(t){var e=kD.prepareVisualTypes(r[t]);s[t]=e})),{progress:function(t,e){var n,i;function l(t){return Dy(e,i,t)}function u(t,n){ky(e,i,t,n)}null!=a&&(n=e.getDimensionIndex(a));for(var h=e.getStore();null!=(i=t.next());){var c=e.getRawDataItem(i);if(!c||!1!==c.visualMap)for(var p=null!=a?h.get(n,i):i,d=o(p),f=r[d],g=s[d],y=0,v=g.length;y<v;y++){var m=g[y];f[m]&&f[m].applyVisual(p,l,u)}}}}))})),n}},{createOnAllSeries:!0,reset:function(t,e){var n=t.getData(),i=[];e.eachComponent("visualMap",(function(e){if(e.isTargetSeries(t)){var r=e.getVisualMeta(W(iG,null,t,e))||{stops:[],outerColors:[]},o=e.getDataDimensionIndex(n);o>=0&&(r.dimension=o,i.push(r))}})),t.getData().setVisual("visualMeta",i)}}];function iG(t,e,n,i){for(var r=e.targetVisuals[i],o=kD.prepareVisualTypes(r),a={color:Ay(t.getData(),"color")},s=0,l=o.length;s<l;s++){var u=o[s],h=r["opacity"===u?"__alphaForOpacity":u];h&&h.applyVisual(n,c,p)}return a.color;function c(t){return a[t]}function p(t,e){a[t]=e}}var rG=E;function oG(t){var e=t&&t.visualMap;Y(e)||(e=e?[e]:[]),rG(e,(function(t){if(t){aG(t,"splitList")&&!aG(t,"pieces")&&(t.pieces=t.splitList,delete t.splitList);var e=t.pieces;e&&Y(e)&&rG(e,(function(t){q(t)&&(aG(t,"start")&&!aG(t,"min")&&(t.min=t.start),aG(t,"end")&&!aG(t,"max")&&(t.max=t.end))}))}}))}function aG(t,e){return t&&t.hasOwnProperty&&t.hasOwnProperty(e)}var sG=!1;function lG(t){sG||(sG=!0,t.registerSubTypeDefaulter("visualMap",(function(t){return t.categories||(t.pieces?t.pieces.length>0:t.splitNumber>0)&&!t.calculable?"piecewise":"continuous"})),t.registerAction(tG,eG),E(nG,(function(e){t.registerVisual(t.PRIORITY.VISUAL.COMPONENT,e)})),t.registerPreprocessor(oG))}function uG(t){t.registerComponentModel(FF),t.registerComponentView(KF),lG(t)}var hG=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._pieceList=[],n}return n(e,t),e.prototype.optionUpdated=function(e,n){t.prototype.optionUpdated.apply(this,arguments),this.resetExtent();var i=this._mode=this._determineMode();this._pieceList=[],cG[this._mode].call(this,this._pieceList),this._resetSelected(e,n);var r=this.option.categories;this.resetVisual((function(t,e){"categories"===i?(t.mappingMethod="category",t.categories=T(r)):(t.dataExtent=this.getExtent(),t.mappingMethod="piecewise",t.pieceList=z(this._pieceList,(function(t){return t=T(t),"inRange"!==e&&(t.visual=null),t})))}))},e.prototype.completeVisualOption=function(){var e=this.option,n={},i=kD.listVisualTypes(),r=this.isCategory();function o(t,e,n){return t&&t[e]&&t[e].hasOwnProperty(n)}E(e.pieces,(function(t){E(i,(function(e){t.hasOwnProperty(e)&&(n[e]=1)}))})),E(n,(function(t,n){var i=!1;E(this.stateList,(function(t){i=i||o(e,t,n)||o(e.target,t,n)}),this),!i&&E(this.stateList,(function(t){(e[t]||(e[t]={}))[n]=kF(n,"inRange"===t?"active":"inactive",r)}))}),this),t.prototype.completeVisualOption.apply(this,arguments)},e.prototype._resetSelected=function(t,e){var n=this.option,i=this._pieceList,r=(e?n:t).selected||{};if(n.selected=r,E(i,(function(t,e){var n=this.getSelectedMapKey(t);r.hasOwnProperty(n)||(r[n]=!0)}),this),"single"===n.selectedMode){var o=!1;E(i,(function(t,e){var n=this.getSelectedMapKey(t);r[n]&&(o?r[n]=!1:o=!0)}),this)}},e.prototype.getItemSymbol=function(){return this.get("itemSymbol")},e.prototype.getSelectedMapKey=function(t){return"categories"===this._mode?t.value+"":t.index+""},e.prototype.getPieceList=function(){return this._pieceList},e.prototype._determineMode=function(){var t=this.option;return t.pieces&&t.pieces.length>0?"pieces":this.option.categories?"categories":"splitNumber"},e.prototype.setSelected=function(t){this.option.selected=T(t)},e.prototype.getValueState=function(t){var e=kD.findPieceIndex(t,this._pieceList);return null!=e&&this.option.selected[this.getSelectedMapKey(this._pieceList[e])]?"inRange":"outOfRange"},e.prototype.findTargetDataIndices=function(t){var e=[],n=this._pieceList;return this.eachTargetSeries((function(i){var r=[],o=i.getData();o.each(this.getDataDimensionIndex(o),(function(e,i){kD.findPieceIndex(e,n)===t&&r.push(i)}),this),e.push({seriesId:i.id,dataIndex:r})}),this),e},e.prototype.getRepresentValue=function(t){var e;if(this.isCategory())e=t.value;else if(null!=t.value)e=t.value;else{var n=t.interval||[];e=n[0]===-1/0&&n[1]===1/0?0:(n[0]+n[1])/2}return e},e.prototype.getVisualMeta=function(t){if(!this.isCategory()){var e=[],n=["",""],i=this,r=this._pieceList.slice();if(r.length){var o=r[0].interval[0];o!==-1/0&&r.unshift({interval:[-1/0,o]}),(o=r[r.length-1].interval[1])!==1/0&&r.push({interval:[o,1/0]})}else r.push({interval:[-1/0,1/0]});var a=-1/0;return E(r,(function(t){var e=t.interval;e&&(e[0]>a&&s([a,e[0]],"outOfRange"),s(e.slice()),a=e[1])}),this),{stops:e,outerColors:n}}function s(r,o){var a=i.getRepresentValue({interval:r});o||(o=i.getValueState(a));var s=t(a,o);r[0]===-1/0?n[0]=s:r[1]===1/0?n[1]=s:e.push({value:r[0],color:s},{value:r[1],color:s})}},e.type="visualMap.piecewise",e.defaultOption=kc(VF.defaultOption,{selected:null,minOpen:!1,maxOpen:!1,align:"auto",itemWidth:20,itemHeight:14,itemSymbol:"roundRect",pieces:null,categories:null,splitNumber:5,selectedMode:"multiple",itemGap:10,hoverLink:!0}),e}(VF),cG={splitNumber:function(t){var e=this.option,n=Math.min(e.precision,20),i=this.getExtent(),r=e.splitNumber;r=Math.max(parseInt(r,10),1),e.splitNumber=r;for(var o=(i[1]-i[0])/r;+o.toFixed(n)!==o&&n<5;)n++;e.precision=n,o=+o.toFixed(n),e.minOpen&&t.push({interval:[-1/0,i[0]],close:[0,0]});for(var a=0,s=i[0];a<r;s+=o,a++){var l=a===r-1?i[1]:s+o;t.push({interval:[s,l],close:[1,1]})}e.maxOpen&&t.push({interval:[i[1],1/0],close:[0,0]}),go(t),E(t,(function(t,e){t.index=e,t.text=this.formatValueText(t.interval)}),this)},categories:function(t){var e=this.option;E(e.categories,(function(e){t.push({text:this.formatValueText(e,!0),value:e})}),this),pG(e,t)},pieces:function(t){var e=this.option;E(e.pieces,(function(e,n){q(e)||(e={value:e});var i={text:"",index:n};if(null!=e.label&&(i.text=e.label),e.hasOwnProperty("value")){var r=i.value=e.value;i.interval=[r,r],i.close=[1,1]}else{for(var o=i.interval=[],a=i.close=[0,0],s=[1,0,1],l=[-1/0,1/0],u=[],h=0;h<2;h++){for(var c=[["gte","gt","min"],["lte","lt","max"]][h],p=0;p<3&&null==o[h];p++)o[h]=e[c[p]],a[h]=s[p],u[h]=2===p;null==o[h]&&(o[h]=l[h])}u[0]&&o[1]===1/0&&(a[0]=0),u[1]&&o[0]===-1/0&&(a[1]=0),o[0]===o[1]&&a[0]&&a[1]&&(i.value=o[0])}i.visual=kD.retrieveVisuals(e),t.push(i)}),this),pG(e,t),go(t),E(t,(function(t){var e=t.close,n=[["<","≤"][e[1]],[">","≥"][e[0]]];t.text=t.text||this.formatValueText(null!=t.value?t.value:t.interval,!1,n)}),this)}};function pG(t,e){var n=t.inverse;("vertical"===t.orient?!n:n)&&e.reverse()}var dG=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.doRender=function(){var t=this.group;t.removeAll();var e=this.visualMapModel,n=e.get("textGap"),i=e.textStyleModel,r=i.getFont(),o=i.getTextColor(),a=this._getItemAlign(),s=e.itemSize,l=this._getViewData(),u=l.endsText,h=it(e.get("showLabel",!0),!u);u&&this._renderEndsText(t,u[0],s,h,a),E(l.viewPieceList,(function(i){var l=i.piece,u=new Br;u.onclick=W(this._onItemClick,this,l),this._enableHoverLink(u,i.indexInModelPieceList);var c=e.getRepresentValue(l);if(this._createItemSymbol(u,c,[0,0,s[0],s[1]]),h){var p=this.visualMapModel.getValueState(c);u.add(new Xs({style:{x:"right"===a?-n:s[0]+n,y:s[1]/2,text:l.text,verticalAlign:"middle",align:a,font:r,fill:o,opacity:"outOfRange"===p?.5:1}}))}t.add(u)}),this),u&&this._renderEndsText(t,u[1],s,h,a),Ap(e.get("orient"),t,e.get("itemGap")),this.renderBackground(t),this.positionGroup(t)},e.prototype._enableHoverLink=function(t,e){var n=this;t.on("mouseover",(function(){return i("highlight")})).on("mouseout",(function(){return i("downplay")}));var i=function(t){var i=n.visualMapModel;i.option.hoverLink&&n.api.dispatchAction({type:t,batch:XF(i.findTargetDataIndices(e),i)})}},e.prototype._getItemAlign=function(){var t=this.visualMapModel,e=t.option;if("vertical"===e.orient)return YF(t,this.api,t.itemSize);var n=e.align;return n&&"auto"!==n||(n="left"),n},e.prototype._renderEndsText=function(t,e,n,i,r){if(e){var o=new Br,a=this.visualMapModel.textStyleModel;o.add(new Xs({style:oc(a,{x:i?"right"===r?n[0]:0:n[0]/2,y:n[1]/2,verticalAlign:"middle",align:i?r:"center",text:e})})),t.add(o)}},e.prototype._getViewData=function(){var t=this.visualMapModel,e=z(t.getPieceList(),(function(t,e){return{piece:t,indexInModelPieceList:e}})),n=t.get("text"),i=t.get("orient"),r=t.get("inverse");return("horizontal"===i?r:!r)?e.reverse():n&&(n=n.slice().reverse()),{viewPieceList:e,endsText:n}},e.prototype._createItemSymbol=function(t,e,n){t.add(Xy(this.getControllerVisual(e,"symbol"),n[0],n[1],n[2],n[3],this.getControllerVisual(e,"color")))},e.prototype._onItemClick=function(t){var e=this.visualMapModel,n=e.option,i=n.selectedMode;if(i){var r=T(n.selected),o=e.getSelectedMapKey(t);"single"===i||!0===i?(r[o]=!0,E(r,(function(t,e){r[e]=e===o}))):r[o]=!r[o],this.api.dispatchAction({type:"selectDataRange",from:this.uid,visualMapId:this.visualMapModel.id,selected:r})}},e.type="visualMap.piecewise",e}(WF);function fG(t){t.registerComponentModel(hG),t.registerComponentView(dG),lG(t)}var gG={label:{enabled:!0},decal:{show:!1}},yG=Vo(),vG={};function mG(t,e){var n=t.getModel("aria");if(n.get("enabled")){var i=T(gG);C(i.label,t.getLocaleModel().get("aria"),!1),C(n.option,i,!1),function(){if(n.getModel("decal").get("show")){var e=yt();t.eachSeries((function(t){if(!t.isColorBySeries()){var n=e.get(t.type);n||(n={},e.set(t.type,n)),yG(t).scope=n}})),t.eachRawSeries((function(e){if(!t.isSeriesFiltered(e))if(X(e.enableAriaDecal))e.enableAriaDecal();else{var n=e.getData();if(e.isColorBySeries()){var i=pd(e.ecModel,e.name,vG,t.getSeriesCount()),r=n.getVisual("decal");n.setVisual("decal",u(r,i))}else{var o=e.getRawData(),a={},s=yG(e).scope;n.each((function(t){var e=n.getRawIndex(t);a[e]=t}));var l=o.count();o.each((function(t){var i=a[t],r=o.getName(t)||t+"",h=pd(e.ecModel,r,s,l),c=n.getItemVisual(i,"decal");n.setItemVisual(i,"decal",u(c,h))}))}}function u(t,e){var n=t?A(A({},e),t):e;return n.dirty=!0,n}}))}}(),function(){var i=e.getZr().dom;if(!i)return;var o=t.getLocaleModel().get("aria"),a=n.getModel("label");if(a.option=k(a.option,o),!a.get("enabled"))return;if(a.get("description"))return void i.setAttribute("aria-label",a.get("description"));var s,l=t.getSeriesCount(),u=a.get(["data","maxCount"])||10,h=a.get(["series","maxCount"])||10,c=Math.min(l,h);if(l<1)return;var p=function(){var e=t.get("title");e&&e.length&&(e=e[0]);return e&&e.text}();s=p?r(a.get(["general","withTitle"]),{title:p}):a.get(["general","withoutTitle"]);var d=[];s+=r(l>1?a.get(["series","multiple","prefix"]):a.get(["series","single","prefix"]),{seriesCount:l}),t.eachSeries((function(e,n){if(n<c){var i=void 0,o=e.get("name")?"withName":"withoutName";i=r(i=l>1?a.get(["series","multiple",o]):a.get(["series","single",o]),{seriesId:e.seriesIndex,seriesName:e.get("name"),seriesType:(x=e.subType,_=t.getLocaleModel().get(["series","typeNames"]),_[x]||_.chart)});var s=e.getData();if(s.count()>u)i+=r(a.get(["data","partialData"]),{displayCnt:u});else i+=a.get(["data","allData"]);for(var h=a.get(["data","separator","middle"]),p=a.get(["data","separator","end"]),f=[],g=0;g<s.count();g++)if(g<u){var y=s.getName(g),v=s.getValues(g),m=a.get(["data",y?"withName":"withoutName"]);f.push(r(m,{name:y,value:v.join(h)}))}i+=f.join(h)+p,d.push(i)}var x,_}));var f=a.getModel(["series","multiple","separator"]),g=f.get("middle"),y=f.get("end");s+=d.join(g)+y,i.setAttribute("aria-label",s)}()}function r(t,e){if(!U(t))return t;var n=t;return E(e,(function(t,e){n=n.replace(new RegExp("\\{\\s*"+e+"\\s*\\}","g"),t)})),n}}function xG(t){if(t&&t.aria){var e=t.aria;null!=e.show&&(e.enabled=e.show),e.label=e.label||{},E(["description","general","series","data"],(function(t){null!=e[t]&&(e.label[t]=e[t])}))}}var _G={value:"eq","<":"lt","<=":"lte",">":"gt",">=":"gte","=":"eq","!=":"ne","<>":"ne"},bG=function(){function t(t){if(null==(this._condVal=U(t)?new RegExp(t):et(t)?t:null)){var e="";0,wo(e)}}return t.prototype.evaluate=function(t){var e=typeof t;return U(e)?this._condVal.test(t):!!j(e)&&this._condVal.test(t+"")},t}(),wG=function(){function t(){}return t.prototype.evaluate=function(){return this.value},t}(),SG=function(){function t(){}return t.prototype.evaluate=function(){for(var t=this.children,e=0;e<t.length;e++)if(!t[e].evaluate())return!1;return!0},t}(),MG=function(){function t(){}return t.prototype.evaluate=function(){for(var t=this.children,e=0;e<t.length;e++)if(t[e].evaluate())return!0;return!1},t}(),IG=function(){function t(){}return t.prototype.evaluate=function(){return!this.child.evaluate()},t}(),TG=function(){function t(){}return t.prototype.evaluate=function(){for(var t=!!this.valueParser,e=(0,this.getValue)(this.valueGetterParam),n=t?this.valueParser(e):null,i=0;i<this.subCondList.length;i++)if(!this.subCondList[i].evaluate(t?n:e))return!1;return!0},t}();function CG(t,e){if(!0===t||!1===t){var n=new wG;return n.value=t,n}var i="";return AG(t)||wo(i),t.and?DG("and",t,e):t.or?DG("or",t,e):t.not?function(t,e){var n=t.not,i="";0;AG(n)||wo(i);var r=new IG;r.child=CG(n,e),r.child||wo(i);return r}(t,e):function(t,e){for(var n="",i=e.prepareGetValue(t),r=[],o=G(t),a=t.parser,s=a?Cf(a):null,l=0;l<o.length;l++){var u=o[l];if("parser"!==u&&!e.valueGetterAttrMap.get(u)){var h=_t(_G,u)?_G[u]:u,c=t[u],p=s?s(c):c,d=Pf(h,p)||"reg"===h&&new bG(p);d||wo(n),r.push(d)}}r.length||wo(n);var f=new TG;return f.valueGetterParam=i,f.valueParser=s,f.getValue=e.getValue,f.subCondList=r,f}(t,e)}function DG(t,e,n){var i=e[t],r="";Y(i)||wo(r),i.length||wo(r);var o="and"===t?new SG:new MG;return o.children=z(i,(function(t){return CG(t,n)})),o.children.length||wo(r),o}function AG(t){return q(t)&&!N(t)}var kG=function(){function t(t,e){this._cond=CG(t,e)}return t.prototype.evaluate=function(){return this._cond.evaluate()},t}();var LG={type:"echarts:filter",transform:function(t){for(var e,n,i,r=t.upstream,o=(n=t.config,i={valueGetterAttrMap:yt({dimension:!0}),prepareGetValue:function(t){var e="",n=t.dimension;_t(t,"dimension")||wo(e);var i=r.getDimensionInfo(n);return i||wo(e),{dimIdx:i.index}},getValue:function(t){return r.retrieveValueFromItem(e,t.dimIdx)}},new kG(n,i)),a=[],s=0,l=r.count();s<l;s++)e=r.getRawDataItem(s),o.evaluate()&&a.push(e);return{data:a}}};var PG={type:"echarts:sort",transform:function(t){var e=t.upstream,n=t.config,i="",r=To(n);r.length||wo(i);var o=[];E(r,(function(t){var n=t.dimension,r=t.order,a=t.parser,s=t.incomparable;if(null==n&&wo(i),"asc"!==r&&"desc"!==r&&wo(i),s&&"min"!==s&&"max"!==s){var l="";0,wo(l)}if("asc"!==r&&"desc"!==r){var u="";0,wo(u)}var h=e.getDimensionInfo(n);h||wo(i);var c=a?Cf(a):null;a&&!c&&wo(i),o.push({dimIdx:h.index,parser:c,comparator:new kf(r,s)})}));var a=e.sourceFormat;a!==Hp&&a!==Yp&&wo(i);for(var s=[],l=0,u=e.count();l<u;l++)s.push(e.getRawDataItem(l));return s.sort((function(t,n){for(var i=0;i<o.length;i++){var r=o[i],a=e.retrieveValueFromItem(t,r.dimIdx),s=e.retrieveValueFromItem(n,r.dimIdx);r.parser&&(a=r.parser(a),s=r.parser(s));var l=r.comparator.evaluate(a,s);if(0!==l)return l}return 0})),{data:s}}};var OG=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="dataset",e}return n(e,t),e.prototype.init=function(e,n,i){t.prototype.init.call(this,e,n,i),this._sourceManager=new $f(this),Jf(this)},e.prototype.mergeOption=function(e,n){t.prototype.mergeOption.call(this,e,n),Jf(this)},e.prototype.optionUpdated=function(){this._sourceManager.dirty()},e.prototype.getSourceManager=function(){return this._sourceManager},e.type="dataset",e.defaultOption={seriesLayoutBy:jp},e}(zp),RG=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="dataset",e}return n(e,t),e.type="dataset",e}(Ag);var NG=hs.CMD;function EG(t,e){return Math.abs(t-e)<1e-5}function zG(t){var e,n,i,r,o,a=t.data,s=t.len(),l=[],u=0,h=0,c=0,p=0;function d(t,n){e&&e.length>2&&l.push(e),e=[t,n]}function f(t,n,i,r){EG(t,i)&&EG(n,r)||e.push(t,n,i,r,i,r)}function g(t,n,i,r,o,a){var s=Math.abs(n-t),l=4*Math.tan(s/4)/3,u=n<t?-1:1,h=Math.cos(t),c=Math.sin(t),p=Math.cos(n),d=Math.sin(n),f=h*o+i,g=c*a+r,y=p*o+i,v=d*a+r,m=o*l*u,x=a*l*u;e.push(f-m*c,g+x*h,y+m*d,v-x*p,y,v)}for(var y=0;y<s;){var v=a[y++],m=1===y;switch(m&&(c=u=a[y],p=h=a[y+1],v!==NG.L&&v!==NG.C&&v!==NG.Q||(e=[c,p])),v){case NG.M:u=c=a[y++],h=p=a[y++],d(c,p);break;case NG.L:f(u,h,n=a[y++],i=a[y++]),u=n,h=i;break;case NG.C:e.push(a[y++],a[y++],a[y++],a[y++],u=a[y++],h=a[y++]);break;case NG.Q:n=a[y++],i=a[y++],r=a[y++],o=a[y++],e.push(u+2/3*(n-u),h+2/3*(i-h),r+2/3*(n-r),o+2/3*(i-o),r,o),u=r,h=o;break;case NG.A:var x=a[y++],_=a[y++],b=a[y++],w=a[y++],S=a[y++],M=a[y++]+S;y+=1;var I=!a[y++];n=Math.cos(S)*b+x,i=Math.sin(S)*w+_,m?d(c=n,p=i):f(u,h,n,i),u=Math.cos(M)*b+x,h=Math.sin(M)*w+_;for(var T=(I?-1:1)*Math.PI/2,C=S;I?C>M:C<M;C+=T){g(C,I?Math.max(C+T,M):Math.min(C+T,M),x,_,b,w)}break;case NG.R:c=u=a[y++],p=h=a[y++],n=c+a[y++],i=p+a[y++],d(n,p),f(n,p,n,i),f(n,i,c,i),f(c,i,c,p),f(c,p,n,p);break;case NG.Z:e&&f(u,h,c,p),u=c,h=p}}return e&&e.length>2&&l.push(e),l}function VG(t,e,n,i,r,o,a,s,l,u){if(EG(t,n)&&EG(e,i)&&EG(r,a)&&EG(o,s))l.push(a,s);else{var h=2/u,c=h*h,p=a-t,d=s-e,f=Math.sqrt(p*p+d*d);p/=f,d/=f;var g=n-t,y=i-e,v=r-a,m=o-s,x=g*g+y*y,_=v*v+m*m;if(x<c&&_<c)l.push(a,s);else{var b=p*g+d*y,w=-p*v-d*m;if(x-b*b<c&&b>=0&&_-w*w<c&&w>=0)l.push(a,s);else{var S=[],M=[];wn(t,n,r,a,.5,S),wn(e,i,o,s,.5,M),VG(S[0],M[0],S[1],M[1],S[2],M[2],S[3],M[3],l,u),VG(S[4],M[4],S[5],M[5],S[6],M[6],S[7],M[7],l,u)}}}}function BG(t,e,n){var i=t[e],r=t[1-e],o=Math.abs(i/r),a=Math.ceil(Math.sqrt(o*n)),s=Math.floor(n/a);0===s&&(s=1,a=n);for(var l=[],u=0;u<a;u++)l.push(s);var h=n-a*s;if(h>0)for(u=0;u<h;u++)l[u%a]+=1;return l}function FG(t,e,n){for(var i=t.r0,r=t.r,o=t.startAngle,a=t.endAngle,s=Math.abs(a-o),l=s*r,u=r-i,h=l>Math.abs(u),c=BG([l,u],h?0:1,e),p=(h?s:u)/c.length,d=0;d<c.length;d++)for(var f=(h?u:s)/c[d],g=0;g<c[d];g++){var y={};h?(y.startAngle=o+p*d,y.endAngle=o+p*(d+1),y.r0=i+f*g,y.r=i+f*(g+1)):(y.startAngle=o+f*g,y.endAngle=o+f*(g+1),y.r0=i+p*d,y.r=i+p*(d+1)),y.clockwise=t.clockwise,y.cx=t.cx,y.cy=t.cy,n.push(y)}}function GG(t,e,n,i){return t*i-n*e}function WG(t,e,n,i,r,o,a,s){var l=n-t,u=i-e,h=a-r,c=s-o,p=GG(h,c,l,u);if(Math.abs(p)<1e-6)return null;var d=GG(t-r,e-o,h,c)/p;return d<0||d>1?null:new De(d*l+t,d*u+e)}function HG(t,e,n){var i=new De;De.sub(i,n,e),i.normalize();var r=new De;return De.sub(r,t,e),r.dot(i)}function YG(t,e){var n=t[t.length-1];n&&n[0]===e[0]&&n[1]===e[1]||t.push(e)}function XG(t){var e=t.points,n=[],i=[];Ba(e,n,i);var r=new ze(n[0],n[1],i[0]-n[0],i[1]-n[1]),o=r.width,a=r.height,s=r.x,l=r.y,u=new De,h=new De;return o>a?(u.x=h.x=s+o/2,u.y=l,h.y=l+a):(u.y=h.y=l+a/2,u.x=s,h.x=s+o),function(t,e,n){for(var i=t.length,r=[],o=0;o<i;o++){var a=t[o],s=t[(o+1)%i],l=WG(a[0],a[1],s[0],s[1],e.x,e.y,n.x,n.y);l&&r.push({projPt:HG(l,e,n),pt:l,idx:o})}if(r.length<2)return[{points:t},{points:t}];r.sort((function(t,e){return t.projPt-e.projPt}));var u=r[0],h=r[r.length-1];if(h.idx<u.idx){var c=u;u=h,h=c}var p=[u.pt.x,u.pt.y],d=[h.pt.x,h.pt.y],f=[p],g=[d];for(o=u.idx+1;o<=h.idx;o++)YG(f,t[o].slice());for(YG(f,d),YG(f,p),o=h.idx+1;o<=u.idx+i;o++)YG(g,t[o%i].slice());return YG(g,p),YG(g,d),[{points:f},{points:g}]}(e,u,h)}function UG(t,e,n,i){if(1===n)i.push(e);else{var r=Math.floor(n/2),o=t(e);UG(t,o[0],r,i),UG(t,o[1],n-r,i)}return i}function ZG(t,e){e.setStyle(t.style),e.z=t.z,e.z2=t.z2,e.zlevel=t.zlevel}function jG(t,e){var n,i=[],r=t.shape;switch(t.type){case"rect":!function(t,e,n){for(var i=t.width,r=t.height,o=i>r,a=BG([i,r],o?0:1,e),s=o?"width":"height",l=o?"height":"width",u=o?"x":"y",h=o?"y":"x",c=t[s]/a.length,p=0;p<a.length;p++)for(var d=t[l]/a[p],f=0;f<a[p];f++){var g={};g[u]=p*c,g[h]=f*d,g[s]=c,g[l]=d,g.x+=t.x,g.y+=t.y,n.push(g)}}(r,e,i),n=Ws;break;case"sector":FG(r,e,i),n=Fu;break;case"circle":FG({r0:0,r:r.r,startAngle:0,endAngle:2*Math.PI,cx:r.cx,cy:r.cy},e,i),n=Fu;break;default:var o=t.getComputedTransform(),a=o?Math.sqrt(Math.max(o[0]*o[0]+o[1]*o[1],o[2]*o[2]+o[3]*o[3])):1,s=z(function(t,e){var n=zG(t),i=[];e=e||1;for(var r=0;r<n.length;r++){var o=n[r],a=[],s=o[0],l=o[1];a.push(s,l);for(var u=2;u<o.length;){var h=o[u++],c=o[u++],p=o[u++],d=o[u++],f=o[u++],g=o[u++];VG(s,l,h,c,p,d,f,g,a,e),s=f,l=g}i.push(a)}return i}(t.getUpdatedPathProxy(),a),(function(t){return function(t){for(var e=[],n=0;n<t.length;)e.push([t[n++],t[n++]]);return e}(t)})),l=s.length;if(0===l)UG(XG,{points:s[0]},e,i);else if(l===e)for(var u=0;u<l;u++)i.push({points:s[u]});else{var h=0,c=z(s,(function(t){var e=[],n=[];Ba(t,e,n);var i=(n[1]-e[1])*(n[0]-e[0]);return h+=i,{poly:t,area:i}}));c.sort((function(t,e){return e.area-t.area}));var p=e;for(u=0;u<l;u++){var d=c[u];if(p<=0)break;var f=u===l-1?p:Math.ceil(d.area/h*e);f<0||(UG(XG,{points:d.poly},f,i),p-=f)}}n=Xu}if(!n)return function(t,e){for(var n=[],i=0;i<e;i++)n.push(bu(t));return n}(t,e);var g=[];for(u=0;u<i.length;u++){var y=new n;y.setShape(i[u]),ZG(t,y),g.push(y)}return g}function qG(t,e){var n=t.length,i=e.length;if(n===i)return[t,e];for(var r=[],o=[],a=n<i?t:e,s=Math.min(n,i),l=Math.abs(i-n)/6,u=(s-2)/6,h=Math.ceil(l/u)+1,c=[a[0],a[1]],p=l,d=2;d<s;){var f=a[d-2],g=a[d-1],y=a[d++],v=a[d++],m=a[d++],x=a[d++],_=a[d++],b=a[d++];if(p<=0)c.push(y,v,m,x,_,b);else{for(var w=Math.min(p,h-1)+1,S=1;S<=w;S++){var M=S/w;wn(f,y,m,_,M,r),wn(g,v,x,b,M,o),f=r[3],g=o[3],c.push(r[1],o[1],r[2],o[2],f,g),y=r[5],v=o[5],m=r[6],x=o[6]}p-=w-1}}return a===t?[c,e]:[t,c]}function KG(t,e){for(var n=t.length,i=t[n-2],r=t[n-1],o=[],a=0;a<e.length;)o[a++]=i,o[a++]=r;return o}function $G(t){for(var e=0,n=0,i=0,r=t.length,o=0,a=r-2;o<r;a=o,o+=2){var s=t[a],l=t[a+1],u=t[o],h=t[o+1],c=s*h-u*l;e+=c,n+=(s+u)*c,i+=(l+h)*c}return 0===e?[t[0]||0,t[1]||0]:[n/e/3,i/e/3,e]}function JG(t,e,n,i){for(var r=(t.length-2)/6,o=1/0,a=0,s=t.length,l=s-2,u=0;u<r;u++){for(var h=6*u,c=0,p=0;p<s;p+=2){var d=0===p?h:(h+p-2)%l+2,f=t[d]-n[0],g=t[d+1]-n[1],y=e[p]-i[0]-f,v=e[p+1]-i[1]-g;c+=y*y+v*v}c<o&&(o=c,a=u)}return a}function QG(t){for(var e=[],n=t.length,i=0;i<n;i+=2)e[i]=t[n-i-2],e[i+1]=t[n-i-1];return e}function tW(t){return t.__isCombineMorphing}var eW="__mOriginal_";function nW(t,e,n){var i=eW+e,r=t[i]||t[e];t[i]||(t[i]=t[e]);var o=n.replace,a=n.after,s=n.before;t[e]=function(){var t,e=arguments;return s&&s.apply(this,e),t=o?o.apply(this,e):r.apply(this,e),a&&a.apply(this,e),t}}function iW(t,e){var n=eW+e;t[n]&&(t[e]=t[n],t[n]=null)}function rW(t,e){for(var n=0;n<t.length;n++)for(var i=t[n],r=0;r<i.length;){var o=i[r],a=i[r+1];i[r++]=e[0]*o+e[2]*a+e[4],i[r++]=e[1]*o+e[3]*a+e[5]}}function oW(t,e){var n=t.getUpdatedPathProxy(),i=e.getUpdatedPathProxy(),r=function(t,e){for(var n,i,r,o=[],a=[],s=0;s<Math.max(t.length,e.length);s++){var l=t[s],u=e[s],h=void 0,c=void 0;l?u?(i=h=(n=qG(l,u))[0],r=c=n[1]):(c=KG(r||l,l),h=l):(h=KG(i||u,u),c=u),o.push(h),a.push(c)}return[o,a]}(zG(n),zG(i)),o=r[0],a=r[1],s=t.getComputedTransform(),l=e.getComputedTransform();s&&rW(o,s),l&&rW(a,l),nW(e,"updateTransform",{replace:function(){this.transform=null}}),e.transform=null;var u=function(t,e,n,i){for(var r,o=[],a=0;a<t.length;a++){var s=t[a],l=e[a],u=$G(s),h=$G(l);null==r&&(r=u[2]<0!=h[2]<0);var c=[],p=[],d=0,f=1/0,g=[],y=s.length;r&&(s=QG(s));for(var v=6*JG(s,l,u,h),m=y-2,x=0;x<m;x+=2){var _=(v+x)%m+2;c[x+2]=s[_]-u[0],c[x+3]=s[_+1]-u[1]}if(c[0]=s[v]-u[0],c[1]=s[v+1]-u[1],n>0)for(var b=i/n,w=-i/2;w<=i/2;w+=b){var S=Math.sin(w),M=Math.cos(w),I=0;for(x=0;x<s.length;x+=2){var T=c[x],C=c[x+1],D=l[x]-h[0],A=l[x+1]-h[1],k=D*M-A*S,L=D*S+A*M;g[x]=k,g[x+1]=L;var P=k-T,O=L-C;I+=P*P+O*O}if(I<f){f=I,d=w;for(var R=0;R<g.length;R++)p[R]=g[R]}}else for(var N=0;N<y;N+=2)p[N]=l[N]-h[0],p[N+1]=l[N+1]-h[1];o.push({from:c,to:p,fromCp:u,toCp:h,rotation:-d})}return o}(o,a,10,Math.PI),h=[];nW(e,"buildPath",{replace:function(t){for(var n=e.__morphT,i=1-n,r=[],o=0;o<u.length;o++){var a=u[o],s=a.from,l=a.to,c=a.rotation*n,p=a.fromCp,d=a.toCp,f=Math.sin(c),g=Math.cos(c);Gt(r,p,d,n);for(var y=0;y<s.length;y+=2){var v=s[y],m=s[y+1],x=v*i+(S=l[y])*n,_=m*i+(M=l[y+1])*n;h[y]=x*g-_*f+r[0],h[y+1]=x*f+_*g+r[1]}var b=h[0],w=h[1];t.moveTo(b,w);for(y=2;y<s.length;){var S=h[y++],M=h[y++],I=h[y++],T=h[y++],C=h[y++],D=h[y++];b===S&&w===M&&I===C&&T===D?t.lineTo(C,D):t.bezierCurveTo(S,M,I,T,C,D),b=C,w=D}}}})}function aW(t,e,n){if(!t||!e)return e;var i=n.done,r=n.during;return oW(t,e),e.__morphT=0,e.animateTo({__morphT:1},k({during:function(t){e.dirtyShape(),r&&r(t)},done:function(){iW(e,"buildPath"),iW(e,"updateTransform"),e.__morphT=-1,e.createPathProxy(),e.dirtyShape(),i&&i()}},n)),e}function sW(t,e,n,i,r,o){t=r===n?0:Math.round(32767*(t-n)/(r-n)),e=o===i?0:Math.round(32767*(e-i)/(o-i));for(var a,s=0,l=32768;l>0;l/=2){var u=0,h=0;(t&l)>0&&(u=1),(e&l)>0&&(h=1),s+=l*l*(3*u^h),0===h&&(1===u&&(t=l-1-t,e=l-1-e),a=t,t=e,e=a)}return s}function lW(t){var e=1/0,n=1/0,i=-1/0,r=-1/0,o=z(t,(function(t){var o=t.getBoundingRect(),a=t.getComputedTransform(),s=o.x+o.width/2+(a?a[4]:0),l=o.y+o.height/2+(a?a[5]:0);return e=Math.min(s,e),n=Math.min(l,n),i=Math.max(s,i),r=Math.max(l,r),[s,l]}));return z(o,(function(o,a){return{cp:o,z:sW(o[0],o[1],e,n,i,r),path:t[a]}})).sort((function(t,e){return t.z-e.z})).map((function(t){return t.path}))}function uW(t){return jG(t.path,t.count)}function hW(t){return Y(t[0])}function cW(t,e){for(var n=[],i=t.length,r=0;r<i;r++)n.push({one:t[r],many:[]});for(r=0;r<e.length;r++){var o=e[r].length,a=void 0;for(a=0;a<o;a++)n[a%i].many.push(e[r][a])}var s=0;for(r=i-1;r>=0;r--)if(!n[r].many.length){var l=n[s].many;if(l.length<=1){if(!s)return n;s=0}o=l.length;var u=Math.ceil(o/2);n[r].many=l.slice(u,o),n[s].many=l.slice(0,u),s++}return n}var pW={clone:function(t){for(var e=[],n=1-Math.pow(1-t.path.style.opacity,1/t.count),i=0;i<t.count;i++){var r=bu(t.path);r.setStyle("opacity",n),e.push(r)}return e},split:null};function dW(t,e,n,i,r,o){if(t.length&&e.length){var a=gh("update",i,r);if(a&&a.duration>0){var s,l,u=i.getModel("universalTransition").get("delay"),h=Object.assign({setToFinal:!0},a);hW(t)&&(s=t,l=e),hW(e)&&(s=e,l=t);for(var c=s?s===t:t.length>e.length,p=s?cW(l,s):cW(c?e:t,[c?t:e]),d=0,f=0;f<p.length;f++)d+=p[f].many.length;var g=0;for(f=0;f<p.length;f++)y(p[f],c,g,d),g+=p[f].many.length}}function y(t,e,i,r,a){var s=t.many,l=t.one;if(1!==s.length||a)for(var c=k({dividePath:pW[n],individualDelay:u&&function(t,e,n,o){return u(t+i,r)}},h),p=e?function(t,e,n){var i=[];!function t(e){for(var n=0;n<e.length;n++){var r=e[n];tW(r)?t(r.childrenRef()):r instanceof ks&&i.push(r)}}(t);var r=i.length;if(!r)return{fromIndividuals:[],toIndividuals:[],count:0};var o=(n.dividePath||uW)({path:e,count:r});if(o.length!==r)return console.error("Invalid morphing: unmatched splitted path"),{fromIndividuals:[],toIndividuals:[],count:0};i=lW(i),o=lW(o);for(var a=n.done,s=n.during,l=n.individualDelay,u=new vr,h=0;h<r;h++){var c=i[h],p=o[h];p.parent=e,p.copyTransform(u),l||oW(c,p)}function d(t){for(var e=0;e<o.length;e++)o[e].addSelfToZr(t)}function f(){e.__isCombineMorphing=!1,e.__morphT=-1,e.childrenRef=null,iW(e,"addSelfToZr"),iW(e,"removeSelfFromZr")}e.__isCombineMorphing=!0,e.childrenRef=function(){return o},nW(e,"addSelfToZr",{after:function(t){d(t)}}),nW(e,"removeSelfFromZr",{after:function(t){for(var e=0;e<o.length;e++)o[e].removeSelfFromZr(t)}});var g=o.length;if(l){var y=g,v=function(){0==--y&&(f(),a&&a())};for(h=0;h<g;h++){var m=l?k({delay:(n.delay||0)+l(h,g,i[h],o[h]),done:v},n):n;aW(i[h],o[h],m)}}else e.__morphT=0,e.animateTo({__morphT:1},k({during:function(t){for(var n=0;n<g;n++){var i=o[n];i.__morphT=e.__morphT,i.dirtyShape()}s&&s(t)},done:function(){f();for(var e=0;e<t.length;e++)iW(t[e],"updateTransform");a&&a()}},n));return e.__zr&&d(e.__zr),{fromIndividuals:i,toIndividuals:o,count:g}}(s,l,c):function(t,e,n){var i=e.length,r=[],o=n.dividePath||uW;if(tW(t)){!function t(e){for(var n=0;n<e.length;n++){var i=e[n];tW(i)?t(i.childrenRef()):i instanceof ks&&r.push(i)}}(t.childrenRef());var a=r.length;if(a<i)for(var s=0,l=a;l<i;l++)r.push(bu(r[s++%a]));r.length=i}else{r=o({path:t,count:i});var u=t.getComputedTransform();for(l=0;l<r.length;l++)r[l].setLocalTransform(u);if(r.length!==i)return console.error("Invalid morphing: unmatched splitted path"),{fromIndividuals:[],toIndividuals:[],count:0}}r=lW(r),e=lW(e);var h=n.individualDelay;for(l=0;l<i;l++){var c=h?k({delay:(n.delay||0)+h(l,i,r[l],e[l])},n):n;aW(r[l],e[l],c)}return{fromIndividuals:r,toIndividuals:e,count:e.length}}(l,s,c),d=p.fromIndividuals,f=p.toIndividuals,g=d.length,v=0;v<g;v++){m=u?k({delay:u(v,g)},h):h;o(d[v],f[v],e?s[v]:t.one,e?t.one:s[v],m)}else{var m,x=e?s[0]:l,_=e?l:s[0];if(tW(x))y({many:[x],one:_},!0,i,r,!0);else aW(x,_,m=u?k({delay:u(i,r)},h):h),o(x,_,x,_,m)}}}function fW(t){if(!t)return[];if(Y(t)){for(var e=[],n=0;n<t.length;n++)e.push(fW(t[n]));return e}var i=[];return t.traverse((function(t){t instanceof ks&&!t.disableMorphing&&!t.invisible&&!t.ignore&&i.push(t)})),i}var gW=Vo();function yW(t,e,n,i){var r=function(t,e){for(var n=t.dimensions,i=0;i<n.length;i++){var r=t.getDimensionInfo(n[i]);if(r&&0===r.otherDims[e])return n[i]}}(t,i?"itemChildGroupId":"itemGroupId");if(r){var o=function(t,e,n){var i=t.getDimensionInfo(n),r=i&&i.ordinalMeta;if(i){var o=t.get(i.name,e);return r&&r.categories[o]||o+""}}(t,e,r);return o}var a=t.getRawDataItem(e),s=i?"childGroupId":"groupId";return a&&a[s]?a[s]+"":i?void 0:n||t.getId(e)}function vW(t){var e=[];return E(t,(function(t){var n=t.data,i=t.dataGroupId;if(!(n.count()>1e4))for(var r=n.getIndices(),o=0;o<r.length;o++)e.push({data:n,groupId:yW(n,o,i,!1),childGroupId:yW(n,o,i,!0),divide:t.divide,dataIndex:o})})),e}function mW(t,e,n){t.traverse((function(t){t instanceof ks&&mh(t,{style:{opacity:0}},e,{dataIndex:n,isFrom:!0})}))}function xW(t){if(t.parent){var e=t.getComputedTransform();t.setLocalTransform(e),t.parent.remove(t)}}function _W(t){t.stopAnimation(),t.isGroup&&t.traverse((function(t){t.stopAnimation()}))}function bW(t,e,n){var i=gh("update",n,e);i&&t.traverse((function(t){if(t instanceof Da){var e=function(t){return fh(t).oldStyle}(t);e&&t.animateFrom({style:e},i)}}))}function wW(t,e,n){var i=vW(t),r=vW(e);function o(t,e,n,i,r){(n||t)&&e.animateFrom({style:n&&n!==t?A(A({},n.style),t.style):t.style},r)}var a=!1,s=0,l=yt(),u=yt();i.forEach((function(t){t.groupId&&l.set(t.groupId,!0),t.childGroupId&&u.set(t.childGroupId,!0)}));for(var h=0;h<r.length;h++){var c=r[h].groupId;if(u.get(c)){s=1;break}var p=r[h].childGroupId;if(p&&l.get(p)){s=2;break}}function d(t,e){return function(n){var i=n.data,r=n.dataIndex;return e?i.getId(r):t?1===s?n.childGroupId:n.groupId:2===s?n.childGroupId:n.groupId}}var f=function(t,e){var n=t.length;if(n!==e.length)return!1;for(var i=0;i<n;i++){var r=t[i],o=e[i];if(r.data.getId(r.dataIndex)!==o.data.getId(o.dataIndex))return!1}return!0}(i,r),g={};if(!f)for(h=0;h<r.length;h++){var y=r[h],v=y.data.getItemGraphicEl(y.dataIndex);v&&(g[v.id]=!0)}function m(t,e){var n=i[e],s=r[t],l=s.data.hostModel,u=n.data.getItemGraphicEl(n.dataIndex),h=s.data.getItemGraphicEl(s.dataIndex);u!==h?u&&g[u.id]||h&&(_W(h),u?(_W(u),xW(u),a=!0,dW(fW(u),fW(h),s.divide,l,t,o)):mW(h,l,t)):h&&bW(h,s.dataIndex,l)}new Gm(i,r,d(!0,f),d(!1,f),null,"multiple").update(m).updateManyToOne((function(t,e){var n=r[t],s=n.data,l=s.hostModel,u=s.getItemGraphicEl(n.dataIndex),h=B(z(e,(function(t){return i[t].data.getItemGraphicEl(i[t].dataIndex)})),(function(t){return t&&t!==u&&!g[t.id]}));u&&(_W(u),h.length?(E(h,(function(t){_W(t),xW(t)})),a=!0,dW(fW(h),fW(u),n.divide,l,t,o)):mW(u,l,n.dataIndex))})).updateOneToMany((function(t,e){var n=i[e],s=n.data.getItemGraphicEl(n.dataIndex);if(!s||!g[s.id]){var l=B(z(t,(function(t){return r[t].data.getItemGraphicEl(r[t].dataIndex)})),(function(t){return t&&t!==s})),u=r[t[0]].data.hostModel;l.length&&(E(l,(function(t){return _W(t)})),s?(_W(s),xW(s),a=!0,dW(fW(s),fW(l),n.divide,u,t[0],o)):E(l,(function(e){return mW(e,u,t[0])})))}})).updateManyToMany((function(t,e){new Gm(e,t,(function(t){return i[t].data.getId(i[t].dataIndex)}),(function(t){return r[t].data.getId(r[t].dataIndex)})).update((function(n,i){m(t[n],e[i])})).execute()})).execute(),a&&E(e,(function(t){var e=t.data.hostModel,i=e&&n.getViewOfSeriesModel(e),r=gh("update",e,0);i&&e.isAnimationEnabled()&&r&&r.duration>0&&i.group.traverse((function(t){t instanceof ks&&!t.animators.length&&t.animateFrom({style:{opacity:0}},r)}))}))}function SW(t){var e=t.getModel("universalTransition").get("seriesKey");return e||t.id}function MW(t){return Y(t)?t.sort().join(","):t}function IW(t){if(t.hostModel)return t.hostModel.getModel("universalTransition").get("divideShape")}function TW(t,e){for(var n=0;n<t.length;n++){if(null!=e.seriesIndex&&e.seriesIndex===t[n].seriesIndex||null!=e.seriesId&&e.seriesId===t[n].id)return n}}Vm([function(t){t.registerPainter("canvas",hS)}]),Vm([function(t){t.registerPainter("svg",iS)}]),Vm([function(t){t.registerChartView(YS),t.registerSeriesModel(cS),t.registerLayout(XS("line",!0)),t.registerVisual({seriesType:"line",reset:function(t){var e=t.getData(),n=t.getModel("lineStyle").getLineStyle();n&&!n.stroke&&(n.stroke=e.getVisual("style").fill),e.setVisual("legendLineStyle",n)}}),t.registerProcessor(t.PRIORITY.PROCESSOR.STATISTIC,jS("line"))},function(t){t.registerChartView(rM),t.registerSeriesModel(KS),t.registerLayout(t.PRIORITY.VISUAL.LAYOUT,H(Ux,"bar")),t.registerLayout(t.PRIORITY.VISUAL.PROGRESSIVE_LAYOUT,Zx("bar")),t.registerProcessor(t.PRIORITY.PROCESSOR.STATISTIC,jS("bar")),t.registerAction({type:"changeAxisOrder",event:"changeAxisOrder",update:"update"},(function(t,e){var n=t.componentType||"series";e.eachComponent({mainType:n,query:t},(function(e){t.sortInfo&&e.axis.setCategorySortInfo(t.sortInfo)}))}))},function(t){t.registerChartView(OM),t.registerSeriesModel(zM),Ly("pie",t.registerAction),t.registerLayout(H(MM,"pie")),t.registerProcessor(TM("pie")),t.registerProcessor(function(t){return{seriesType:t,reset:function(t,e){var n=t.getData();n.filterSelf((function(t){var e=n.mapDimension("value"),i=n.get(e,t);return!(j(i)&&!isNaN(i)&&i<0)}))}}}("pie"))},function(t){Vm(VI),t.registerSeriesModel(VM),t.registerChartView(WM),t.registerLayout(XS("scatter"))},function(t){Vm(JI),t.registerChartView(HI),t.registerSeriesModel(YI),t.registerLayout(BI),t.registerProcessor(TM("radar")),t.registerPreprocessor(WI)},function(t){Vm(CC),t.registerChartView(lC),t.registerSeriesModel(uC),t.registerLayout(cC),t.registerProcessor(t.PRIORITY.PROCESSOR.STATISTIC,hC),Ly("map",t.registerAction)},function(t){t.registerChartView(BC),t.registerSeriesModel(sD),t.registerLayout(uD),t.registerVisual(hD),function(t){t.registerAction({type:"treeExpandAndCollapse",event:"treeExpandAndCollapse",update:"update"},(function(t,e){e.eachComponent({mainType:"series",subType:"tree",query:t},(function(e){var n=t.dataIndex,i=e.getData().tree.getNodeByDataIndex(n);i.isExpand=!i.isExpand}))})),t.registerAction({type:"treeRoam",event:"treeRoam",update:"none"},(function(t,e,n){e.eachComponent({mainType:"series",subType:"tree",query:t},(function(e){var i=MC(e.coordinateSystem,t,void 0,n);e.setCenter&&e.setCenter(i.center),e.setZoom&&e.setZoom(i.zoom)}))}))}(t)},function(t){t.registerSeriesModel(dD),t.registerChartView(TD),t.registerVisual(HD),t.registerLayout(nA),function(t){for(var e=0;e<cD.length;e++)t.registerAction({type:cD[e],update:"updateView"},bt);t.registerAction({type:"treemapRootToNode",update:"updateView"},(function(t,e){e.eachComponent({mainType:"series",subType:"treemap",query:t},(function(e,n){var i=iD(t,["treemapZoomToNode","treemapRootToNode"],e);if(i){var r=e.getViewRoot();r&&(t.direction=oD(r,i.node)?"rollUp":"drillDown"),e.resetViewRoot(i.node)}}))}))}(t)},function(t){t.registerChartView(ik),t.registerSeriesModel(hk),t.registerProcessor(lA),t.registerVisual(uA),t.registerVisual(cA),t.registerLayout(bA),t.registerLayout(t.PRIORITY.VISUAL.POST_CHART_LAYOUT,AA),t.registerLayout(LA),t.registerCoordinateSystem("graphView",{dimensions:dC.dimensions,create:PA}),t.registerAction({type:"focusNodeAdjacency",event:"focusNodeAdjacency",update:"series:focusNodeAdjacency"},bt),t.registerAction({type:"unfocusNodeAdjacency",event:"unfocusNodeAdjacency",update:"series:unfocusNodeAdjacency"},bt),t.registerAction(ck,(function(t,e,n){e.eachComponent({mainType:"series",query:t},(function(e){var i=MC(e.coordinateSystem,t,void 0,n);e.setCenter&&e.setCenter(i.center),e.setZoom&&e.setZoom(i.zoom)}))}))},function(t){t.registerChartView(gk),t.registerSeriesModel(yk)},function(t){t.registerChartView(xk),t.registerSeriesModel(_k),t.registerLayout(bk),t.registerProcessor(TM("funnel"))},function(t){Vm(ZL),t.registerChartView(wk),t.registerSeriesModel(Ck),t.registerVisual(t.PRIORITY.VISUAL.BRUSH,kk)},function(t){t.registerChartView(KL),t.registerSeriesModel(JL),t.registerLayout(QL),t.registerVisual(cP),t.registerAction({type:"dragNode",event:"dragnode",update:"update"},(function(t,e){e.eachComponent({mainType:"series",subType:"sankey",query:t},(function(e){e.setNodePosition(t.dataIndex,[t.localX,t.localY])}))}))},function(t){t.registerSeriesModel(dP),t.registerChartView(fP),t.registerLayout(bP),t.registerTransform(wP)},function(t){t.registerChartView(MP),t.registerSeriesModel(NP),t.registerPreprocessor(EP),t.registerVisual(WP),t.registerLayout(HP)},function(t){t.registerChartView(ZP),t.registerSeriesModel(jP),t.registerLayout(XS("effectScatter"))},function(t){t.registerChartView(nO),t.registerSeriesModel(aO),t.registerLayout(eO),t.registerVisual(lO)},function(t){t.registerChartView(cO),t.registerSeriesModel(pO)},function(t){t.registerChartView(yO),t.registerSeriesModel(RO),t.registerLayout(t.PRIORITY.VISUAL.LAYOUT,H(Ux,"pictorialBar")),t.registerLayout(t.PRIORITY.VISUAL.PROGRESSIVE_LAYOUT,Zx("pictorialBar"))},function(t){t.registerChartView(NO),t.registerSeriesModel(EO),t.registerLayout(zO),t.registerProcessor(TM("themeRiver"))},function(t){t.registerChartView(WO),t.registerSeriesModel(HO),t.registerLayout(H(UO,"sunburst")),t.registerProcessor(H(TM,"sunburst")),t.registerVisual(jO),function(t){t.registerAction({type:FO,update:"updateView"},(function(t,e){e.eachComponent({mainType:"series",subType:"sunburst",query:t},(function(e,n){var i=iD(t,[FO],e);if(i){var r=e.getViewRoot();r&&(t.direction=oD(r,i.node)?"rollUp":"drillDown"),e.resetViewRoot(i.node)}}))})),t.registerAction({type:GO,update:"none"},(function(t,e,n){t=A({},t),e.eachComponent({mainType:"series",subType:"sunburst",query:t},(function(e){var n=iD(t,[GO],e);n&&(t.dataIndex=n.node.dataIndex)})),n.dispatchAction(A(t,{type:"highlight"}))})),t.registerAction({type:"sunburstUnhighlight",update:"updateView"},(function(t,e,n){t=A({},t),n.dispatchAction(A(t,{type:"downplay"}))}))}(t)},function(t){t.registerChartView(BR),t.registerSeriesModel(JO)}]),Vm((function(t){Vm(VI),Vm(FN)})),Vm((function(t){Vm(FN),TI.registerAxisPointerClass("PolarAxisPointer",GN),t.registerCoordinateSystem("polar",eE),t.registerComponentModel(HN),t.registerComponentView(vE),KM(t,"angle",XN,gE),KM(t,"radius",UN,yE),t.registerComponentView(aE),t.registerComponentView(hE),t.registerLayout(H(fE,"bar"))})),Vm(CC),Vm((function(t){Vm(FN),TI.registerAxisPointerClass("SingleAxisPointer",LE),t.registerComponentView(NE),t.registerComponentView(bE),t.registerComponentModel(SE),KM(t,"single",SE,SE.defaultOption),t.registerCoordinateSystem("single",DE)})),Vm(ZL),Vm((function(t){t.registerComponentModel(EE),t.registerComponentView(VE),t.registerCoordinateSystem("calendar",FE)})),Vm((function(t){t.registerComponentModel(UE),t.registerComponentView(qE),t.registerPreprocessor((function(t){var e=t.graphic;Y(e)?e[0]&&e[0].elements?t.graphic=[t.graphic[0]]:t.graphic=[{elements:e}]:e&&!e.elements&&(t.graphic=[{elements:[e]}])}))})),Vm((function(t){t.registerComponentModel(wz),t.registerComponentView(Mz),_z("saveAsImage",Iz),_z("magicType",Dz),_z("dataView",Nz),_z("dataZoom",iV),_z("restore",Fz),Vm(vz)})),Vm((function(t){Vm(FN),t.registerComponentModel(aV),t.registerComponentView(SV),t.registerAction({type:"showTip",event:"showTip",update:"tooltip:manuallyShowTip"},bt),t.registerAction({type:"hideTip",event:"hideTip",update:"tooltip:manuallyHideTip"},bt)})),Vm(FN),Vm((function(t){t.registerComponentView(XV),t.registerComponentModel(UV),t.registerPreprocessor(DV),t.registerVisual(t.PRIORITY.VISUAL.BRUSH,FV),t.registerAction({type:"brush",event:"brush",update:"updateVisual"},(function(t,e){e.eachComponent({mainType:"brush",query:t},(function(e){e.setAreas(t.areas)}))})),t.registerAction({type:"brushSelect",event:"brushSelected",update:"none"},bt),t.registerAction({type:"brushEnd",event:"brushEnd",update:"none"},bt),_z("brush",qV)})),Vm((function(t){t.registerComponentModel(KV),t.registerComponentView($V)})),Vm((function(t){t.registerComponentModel(QV),t.registerComponentView(rB),t.registerSubTypeDefaulter("timeline",(function(){return"slider"})),function(t){t.registerAction({type:"timelineChange",event:"timelineChanged",update:"prepareAndUpdate"},(function(t,e,n){var i=e.getComponent("timeline");return i&&null!=t.currentIndex&&(i.setCurrentIndex(t.currentIndex),!i.get("loop",!0)&&i.isIndexMax()&&i.getPlayState()&&(i.setPlayState(!1),n.dispatchAction({type:"timelinePlayChange",playState:!1,from:t.from}))),e.resetOption("timeline",{replaceMerge:i.get("replaceMerge",!0)}),k({currentIndex:i.option.currentIndex},t)})),t.registerAction({type:"timelinePlayChange",event:"timelinePlayChanged",update:"update"},(function(t,e){var n=e.getComponent("timeline");n&&null!=t.playState&&n.setPlayState(t.playState)}))}(t),t.registerPreprocessor(sB)})),Vm((function(t){t.registerComponentModel(fB),t.registerComponentView(TB),t.registerPreprocessor((function(t){hB(t.series,"markPoint")&&(t.markPoint=t.markPoint||{})}))})),Vm((function(t){t.registerComponentModel(CB),t.registerComponentView(RB),t.registerPreprocessor((function(t){hB(t.series,"markLine")&&(t.markLine=t.markLine||{})}))})),Vm((function(t){t.registerComponentModel(NB),t.registerComponentView(HB),t.registerPreprocessor((function(t){hB(t.series,"markArea")&&(t.markArea=t.markArea||{})}))})),Vm((function(t){Vm(eF),Vm(lF)})),Vm((function(t){Vm(_F),Vm(AF)})),Vm(_F),Vm(AF),Vm((function(t){Vm(uG),Vm(fG)})),Vm(uG),Vm(fG),Vm((function(t){t.registerPreprocessor(xG),t.registerVisual(t.PRIORITY.VISUAL.ARIA,mG)})),Vm((function(t){t.registerTransform(LG),t.registerTransform(PG)})),Vm((function(t){t.registerComponentModel(OG),t.registerComponentView(RG)})),Vm((function(t){t.registerUpdateLifecycle("series:beforeupdate",(function(t,e,n){E(To(n.seriesTransition),(function(t){E(To(t.to),(function(t){for(var e=n.updatedSeries,i=0;i<e.length;i++)(null!=t.seriesIndex&&t.seriesIndex===e[i].seriesIndex||null!=t.seriesId&&t.seriesId===e[i].id)&&(e[i][_g]=!0)}))}))})),t.registerUpdateLifecycle("series:transition",(function(t,e,n){var i=gW(e);if(i.oldSeries&&n.updatedSeries&&n.optionChanged){var r=n.seriesTransition;if(r)E(To(r),(function(t){!function(t,e,n,i){var r=[],o=[];E(To(t.from),(function(t){var n=TW(e.oldSeries,t);n>=0&&r.push({dataGroupId:e.oldDataGroupIds[n],data:e.oldData[n],divide:IW(e.oldData[n]),groupIdDim:t.dimension})})),E(To(t.to),(function(t){var i=TW(n.updatedSeries,t);if(i>=0){var r=n.updatedSeries[i].getData();o.push({dataGroupId:e.oldDataGroupIds[i],data:r,divide:IW(r),groupIdDim:t.dimension})}})),r.length>0&&o.length>0&&wW(r,o,i)}(t,i,n,e)}));else{var o=function(t,e){var n=yt(),i=yt(),r=yt();return E(t.oldSeries,(function(e,n){var o=t.oldDataGroupIds[n],a=t.oldData[n],s=SW(e),l=MW(s);i.set(l,{dataGroupId:o,data:a}),Y(s)&&E(s,(function(t){r.set(t,{key:l,dataGroupId:o,data:a})}))})),E(e.updatedSeries,(function(t){if(t.isUniversalTransitionEnabled()&&t.isAnimationEnabled()){var e=t.get("dataGroupId"),o=t.getData(),a=SW(t),s=MW(a),l=i.get(s);if(l)n.set(s,{oldSeries:[{dataGroupId:l.dataGroupId,divide:IW(l.data),data:l.data}],newSeries:[{dataGroupId:e,divide:IW(o),data:o}]});else if(Y(a)){var u=[];E(a,(function(t){var e=i.get(t);e.data&&u.push({dataGroupId:e.dataGroupId,divide:IW(e.data),data:e.data})})),u.length&&n.set(s,{oldSeries:u,newSeries:[{dataGroupId:e,data:o,divide:IW(o)}]})}else{var h=r.get(a);if(h){var c=n.get(h.key);c||(c={oldSeries:[{dataGroupId:h.dataGroupId,data:h.data,divide:IW(h.data)}],newSeries:[]},n.set(h.key,c)),c.newSeries.push({dataGroupId:e,data:o,divide:IW(o)})}}}})),n}(i,n);E(o.keys(),(function(t){var n=o.get(t);wW(n.oldSeries,n.newSeries,e)}))}E(n.updatedSeries,(function(t){t[_g]&&(t[_g]=!1)}))}for(var a=t.getSeries(),s=i.oldSeries=[],l=i.oldDataGroupIds=[],u=i.oldData=[],h=0;h<a.length;h++){var c=a[h].getData();c.count()<1e4&&(s.push(a[h]),l.push(a[h].get("dataGroupId")),u.push(c))}}))})),Vm((function(t){t.registerUpdateLifecycle("series:beforeupdate",(function(t,e,n){var i=Xb(e).labelManager;i||(i=Xb(e).labelManager=new Yb),i.clearLabels()})),t.registerUpdateLifecycle("series:layoutlabels",(function(t,e,n){var i=Xb(e).labelManager;n.updatedSeries.forEach((function(t){i.addLabelsOfSeries(e.getViewOfSeriesModel(t))})),i.updateLayoutConfig(e),i.layout(e),i.processLabelsOverall()}))})),t.Axis=ab,t.ChartView=Og,t.ComponentModel=zp,t.ComponentView=Ag,t.List=cx,t.Model=Cc,t.PRIORITY=Cv,t.SeriesModel=bg,t.color=li,t.connect=function(t){if(Y(t)){var e=t;t=null,E(e,(function(e){null!=e.group&&(t=e.group)})),t=t||"g_"+ym++,E(e,(function(e){e.group=t}))}return fm[t]=!0,t},t.dataTool={},t.dependencies={zrender:"5.6.0"},t.disConnect=xm,t.disconnect=mm,t.dispose=function(t){U(t)?t=dm[t]:t instanceof nm||(t=_m(t)),t instanceof nm&&!t.isDisposed()&&t.dispose()},t.env=r,t.extendChartView=function(t){var e=Og.extend(t);return Og.registerClass(e),e},t.extendComponentModel=function(t){var e=zp.extend(t);return zp.registerClass(e),e},t.extendComponentView=function(t){var e=Ag.extend(t);return Ag.registerClass(e),e},t.extendSeriesModel=function(t){var e=bg.extend(t);return bg.registerClass(e),e},t.format=Z_,t.getCoordinateSystemDimensions=function(t){var e=wd.get(t);if(e)return e.getDimensionsInfo?e.getDimensionsInfo():e.dimensions.slice()},t.getInstanceByDom=_m,t.getInstanceById=function(t){return dm[t]},t.getMap=function(t){var e=Mv("getMap");return e&&e(t)},t.graphic=U_,t.helper=k_,t.init=function(t,e,n){var i=!(n&&n.ssr);if(i){0;var r=_m(t);if(r)return r;0}var o=new nm(t,e,n);return o.id="ec_"+gm++,dm[o.id]=o,i&&Xo(t,vm,o.id),$v(o),wv.trigger("afterinit",o),o},t.innerDrawElementOnCanvas=dv,t.matrix=Ce,t.number=Y_,t.parseGeoJSON=H_,t.parseGeoJson=H_,t.registerAction=Cm,t.registerCoordinateSystem=Dm,t.registerLayout=Am,t.registerLoading=Om,t.registerLocale=zc,t.registerMap=Rm,t.registerPostInit=Mm,t.registerPostUpdate=Im,t.registerPreprocessor=wm,t.registerProcessor=Sm,t.registerTheme=bm,t.registerTransform=Nm,t.registerUpdateLifecycle=Tm,t.registerVisual=km,t.setCanvasCreator=function(t){c({createCanvas:t})},t.setPlatformAPI=c,t.throttle=Wg,t.time=X_,t.use=Vm,t.util=j_,t.vector=Xt,t.version="5.5.1",t.zrUtil=St,t.zrender=jr,Object.defineProperty(t,"__esModule",{value:!0})})); diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/flowchart.js/flowchart.min.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/flowchart.js/flowchart.min.js new file mode 100644 index 0000000..8f8c18b --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/flowchart.js/flowchart.min.js @@ -0,0 +1,8 @@ +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.Raphael=e():t.Raphael=e()}(window,function(){return function(t){var e={};function r(i){if(e[i])return e[i].exports;var n=e[i]={i:i,l:!1,exports:{}};return t[i].call(n.exports,n,n.exports,r),n.l=!0,n.exports}return r.m=t,r.c=e,r.d=function(t,e,i){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:i})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(t,e){if(1&e&&(t=r(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var i=Object.create(null);if(r.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var n in t)r.d(i,n,function(e){return t[e]}.bind(null,n));return i},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,"a",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p="",r(r.s=1)}([function(t,e,r){var i,n;i=[r(2)],void 0===(n=function(t){function e(i){if(e.is(i,"function"))return r?i():t.on("raphael.DOMload",i);if(e.is(i,A))return e._engine.create[c](e,i.splice(0,3+e.is(i[0],T))).add(i);var n=Array.prototype.slice.call(arguments,0);if(e.is(n[n.length-1],"function")){var a=n.pop();return r?a.call(e._engine.create[c](e,n)):t.on("raphael.DOMload",function(){a.call(e._engine.create[c](e,n))})}return e._engine.create[c](e,arguments)}e.version="2.3.0",e.eve=t;var r,i,n=/[, ]+/,a={circle:1,rect:1,path:1,ellipse:1,text:1,image:1},s=/\{(\d+)\}/g,o="hasOwnProperty",l={doc:document,win:window},h={was:Object.prototype[o].call(l.win,"Raphael"),is:l.win.Raphael},u=function(){this.ca=this.customAttributes={}},c="apply",f="concat",p="ontouchstart"in window||window.TouchEvent||window.DocumentTouch&&document instanceof DocumentTouch,d="",g=" ",x=String,v="split",y="click dblclick mousedown mousemove mouseout mouseover mouseup touchstart touchmove touchend touchcancel"[v](g),m={mousedown:"touchstart",mousemove:"touchmove",mouseup:"touchend"},b=x.prototype.toLowerCase,_=Math,w=_.max,k=_.min,B=_.abs,C=_.pow,S=_.PI,T="number",A="array",M=Object.prototype.toString,E=(e._ISURL=/^url\(['"]?(.+?)['"]?\)$/i,/^\s*((#[a-f\d]{6})|(#[a-f\d]{3})|rgba?\(\s*([\d\.]+%?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+%?(?:\s*,\s*[\d\.]+%?)?)\s*\)|hsba?\(\s*([\d\.]+(?:deg|\xb0|%)?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+(?:%?\s*,\s*[\d\.]+)?)%?\s*\)|hsla?\(\s*([\d\.]+(?:deg|\xb0|%)?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+(?:%?\s*,\s*[\d\.]+)?)%?\s*\))\s*$/i),N={NaN:1,Infinity:1,"-Infinity":1},L=/^(?:cubic-)?bezier\(([^,]+),([^,]+),([^,]+),([^\)]+)\)/,P=_.round,z=parseFloat,F=parseInt,R=x.prototype.toUpperCase,j=e._availableAttrs={"arrow-end":"none","arrow-start":"none",blur:0,"clip-rect":"0 0 1e9 1e9",cursor:"default",cx:0,cy:0,fill:"#fff","fill-opacity":1,font:'10px "Arial"',"font-family":'"Arial"',"font-size":"10","font-style":"normal","font-weight":400,gradient:0,height:0,href:"http://raphaeljs.com/","letter-spacing":0,opacity:1,path:"M0,0",r:0,rx:0,ry:0,src:"",stroke:"#000","stroke-dasharray":"","stroke-linecap":"butt","stroke-linejoin":"butt","stroke-miterlimit":0,"stroke-opacity":1,"stroke-width":1,target:"_blank","text-anchor":"middle",title:"Raphael",transform:"",width:0,x:0,y:0,class:""},I=e._availableAnimAttrs={blur:T,"clip-rect":"csv",cx:T,cy:T,fill:"colour","fill-opacity":T,"font-size":T,height:T,opacity:T,path:"path",r:T,rx:T,ry:T,stroke:"colour","stroke-opacity":T,"stroke-width":T,transform:"transform",width:T,x:T,y:T},D=/[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*/,q={hs:1,rg:1},O=/,?([achlmqrstvxz]),?/gi,V=/([achlmrqstvz])[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029,]*((-?\d*\.?\d*(?:e[\-+]?\d+)?[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,?[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*)+)/gi,W=/([rstm])[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029,]*((-?\d*\.?\d*(?:e[\-+]?\d+)?[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,?[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*)+)/gi,Y=/(-?\d*\.?\d*(?:e[\-+]?\d+)?)[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,?[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*/gi,G=(e._radial_gradient=/^r(?:\(([^,]+?)[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*([^\)]+?)\))?/,{}),H=function(t,e){return z(t)-z(e)},X=function(t){return t},U=e._rectPath=function(t,e,r,i,n){return n?[["M",t+n,e],["l",r-2*n,0],["a",n,n,0,0,1,n,n],["l",0,i-2*n],["a",n,n,0,0,1,-n,n],["l",2*n-r,0],["a",n,n,0,0,1,-n,-n],["l",0,2*n-i],["a",n,n,0,0,1,n,-n],["z"]]:[["M",t,e],["l",r,0],["l",0,i],["l",-r,0],["z"]]},$=function(t,e,r,i){return null==i&&(i=r),[["M",t,e],["m",0,-i],["a",r,i,0,1,1,0,2*i],["a",r,i,0,1,1,0,-2*i],["z"]]},Z=e._getPath={path:function(t){return t.attr("path")},circle:function(t){var e=t.attrs;return $(e.cx,e.cy,e.r)},ellipse:function(t){var e=t.attrs;return $(e.cx,e.cy,e.rx,e.ry)},rect:function(t){var e=t.attrs;return U(e.x,e.y,e.width,e.height,e.r)},image:function(t){var e=t.attrs;return U(e.x,e.y,e.width,e.height)},text:function(t){var e=t._getBBox();return U(e.x,e.y,e.width,e.height)},set:function(t){var e=t._getBBox();return U(e.x,e.y,e.width,e.height)}},Q=e.mapPath=function(t,e){if(!e)return t;var r,i,n,a,s,o,l;for(n=0,s=(t=Tt(t)).length;n<s;n++)for(a=1,o=(l=t[n]).length;a<o;a+=2)r=e.x(l[a],l[a+1]),i=e.y(l[a],l[a+1]),l[a]=r,l[a+1]=i;return t};if(e._g=l,e.type=l.win.SVGAngle||l.doc.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")?"SVG":"VML","VML"==e.type){var J,K=l.doc.createElement("div");if(K.innerHTML='<v:shape adj="1"/>',(J=K.firstChild).style.behavior="url(#default#VML)",!J||"object"!=typeof J.adj)return e.type=d;K=null}function tt(t){if("function"==typeof t||Object(t)!==t)return t;var e=new t.constructor;for(var r in t)t[o](r)&&(e[r]=tt(t[r]));return e}e.svg=!(e.vml="VML"==e.type),e._Paper=u,e.fn=i=u.prototype=e.prototype,e._id=0,e.is=function(t,e){return"finite"==(e=b.call(e))?!N[o](+t):"array"==e?t instanceof Array:"null"==e&&null===t||e==typeof t&&null!==t||"object"==e&&t===Object(t)||"array"==e&&Array.isArray&&Array.isArray(t)||M.call(t).slice(8,-1).toLowerCase()==e},e.angle=function(t,r,i,n,a,s){if(null==a){var o=t-i,l=r-n;return o||l?(180+180*_.atan2(-l,-o)/S+360)%360:0}return e.angle(t,r,a,s)-e.angle(i,n,a,s)},e.rad=function(t){return t%360*S/180},e.deg=function(t){return Math.round(180*t/S%360*1e3)/1e3},e.snapTo=function(t,r,i){if(i=e.is(i,"finite")?i:10,e.is(t,A)){for(var n=t.length;n--;)if(B(t[n]-r)<=i)return t[n]}else{var a=r%(t=+t);if(a<i)return r-a;if(a>t-i)return r-a+t}return r};var et,rt;e.createUUID=(et=/[xy]/g,rt=function(t){var e=16*_.random()|0;return("x"==t?e:3&e|8).toString(16)},function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(et,rt).toUpperCase()});e.setWindow=function(r){t("raphael.setWindow",e,l.win,r),l.win=r,l.doc=l.win.document,e._engine.initWin&&e._engine.initWin(l.win)};var it=function(t){if(e.vml){var r,i=/^\s+|\s+$/g;try{var n=new ActiveXObject("htmlfile");n.write("<body>"),n.close(),r=n.body}catch(t){r=createPopup().document.body}var a=r.createTextRange();it=ht(function(t){try{r.style.color=x(t).replace(i,d);var e=a.queryCommandValue("ForeColor");return"#"+("000000"+(e=(255&e)<<16|65280&e|(16711680&e)>>>16).toString(16)).slice(-6)}catch(t){return"none"}})}else{var s=l.doc.createElement("i");s.title="Raphaël Colour Picker",s.style.display="none",l.doc.body.appendChild(s),it=ht(function(t){return s.style.color=t,l.doc.defaultView.getComputedStyle(s,d).getPropertyValue("color")})}return it(t)},nt=function(){return"hsb("+[this.h,this.s,this.b]+")"},at=function(){return"hsl("+[this.h,this.s,this.l]+")"},st=function(){return this.hex},ot=function(t,r,i){if(null==r&&e.is(t,"object")&&"r"in t&&"g"in t&&"b"in t&&(i=t.b,r=t.g,t=t.r),null==r&&e.is(t,"string")){var n=e.getRGB(t);t=n.r,r=n.g,i=n.b}return(t>1||r>1||i>1)&&(t/=255,r/=255,i/=255),[t,r,i]},lt=function(t,r,i,n){var a={r:t*=255,g:r*=255,b:i*=255,hex:e.rgb(t,r,i),toString:st};return e.is(n,"finite")&&(a.opacity=n),a};function ht(t,e,r){return function i(){var n=Array.prototype.slice.call(arguments,0),a=n.join("␀"),s=i.cache=i.cache||{},l=i.count=i.count||[];return s[o](a)?(function(t,e){for(var r=0,i=t.length;r<i;r++)if(t[r]===e)return t.push(t.splice(r,1)[0])}(l,a),r?r(s[a]):s[a]):(l.length>=1e3&&delete s[l.shift()],l.push(a),s[a]=t[c](e,n),r?r(s[a]):s[a])}}e.color=function(t){var r;return e.is(t,"object")&&"h"in t&&"s"in t&&"b"in t?(r=e.hsb2rgb(t),t.r=r.r,t.g=r.g,t.b=r.b,t.hex=r.hex):e.is(t,"object")&&"h"in t&&"s"in t&&"l"in t?(r=e.hsl2rgb(t),t.r=r.r,t.g=r.g,t.b=r.b,t.hex=r.hex):(e.is(t,"string")&&(t=e.getRGB(t)),e.is(t,"object")&&"r"in t&&"g"in t&&"b"in t?(r=e.rgb2hsl(t),t.h=r.h,t.s=r.s,t.l=r.l,r=e.rgb2hsb(t),t.v=r.b):(t={hex:"none"}).r=t.g=t.b=t.h=t.s=t.v=t.l=-1),t.toString=st,t},e.hsb2rgb=function(t,e,r,i){var n,a,s,o,l;return this.is(t,"object")&&"h"in t&&"s"in t&&"b"in t&&(r=t.b,e=t.s,i=t.o,t=t.h),o=(l=r*e)*(1-B((t=(t*=360)%360/60)%2-1)),n=a=s=r-l,lt(n+=[l,o,0,0,o,l][t=~~t],a+=[o,l,l,o,0,0][t],s+=[0,0,o,l,l,o][t],i)},e.hsl2rgb=function(t,e,r,i){var n,a,s,o,l;return this.is(t,"object")&&"h"in t&&"s"in t&&"l"in t&&(r=t.l,e=t.s,t=t.h),(t>1||e>1||r>1)&&(t/=360,e/=100,r/=100),o=(l=2*e*(r<.5?r:1-r))*(1-B((t=(t*=360)%360/60)%2-1)),n=a=s=r-l/2,lt(n+=[l,o,0,0,o,l][t=~~t],a+=[o,l,l,o,0,0][t],s+=[0,0,o,l,l,o][t],i)},e.rgb2hsb=function(t,e,r){var i,n;return t=(r=ot(t,e,r))[0],e=r[1],r=r[2],{h:((0==(n=(i=w(t,e,r))-k(t,e,r))?null:i==t?(e-r)/n:i==e?(r-t)/n+2:(t-e)/n+4)+360)%6*60/360,s:0==n?0:n/i,b:i,toString:nt}},e.rgb2hsl=function(t,e,r){var i,n,a,s;return t=(r=ot(t,e,r))[0],e=r[1],r=r[2],i=((n=w(t,e,r))+(a=k(t,e,r)))/2,{h:((0==(s=n-a)?null:n==t?(e-r)/s:n==e?(r-t)/s+2:(t-e)/s+4)+360)%6*60/360,s:0==s?0:i<.5?s/(2*i):s/(2-2*i),l:i,toString:at}},e._path2string=function(){return this.join(",").replace(O,"$1")};e._preload=function(t,e){var r=l.doc.createElement("img");r.style.cssText="position:absolute;left:-9999em;top:-9999em",r.onload=function(){e.call(this),this.onload=null,l.doc.body.removeChild(this)},r.onerror=function(){l.doc.body.removeChild(this)},l.doc.body.appendChild(r),r.src=t};function ut(){return this.hex}function ct(t,e){for(var r=[],i=0,n=t.length;n-2*!e>i;i+=2){var a=[{x:+t[i-2],y:+t[i-1]},{x:+t[i],y:+t[i+1]},{x:+t[i+2],y:+t[i+3]},{x:+t[i+4],y:+t[i+5]}];e?i?n-4==i?a[3]={x:+t[0],y:+t[1]}:n-2==i&&(a[2]={x:+t[0],y:+t[1]},a[3]={x:+t[2],y:+t[3]}):a[0]={x:+t[n-2],y:+t[n-1]}:n-4==i?a[3]=a[2]:i||(a[0]={x:+t[i],y:+t[i+1]}),r.push(["C",(-a[0].x+6*a[1].x+a[2].x)/6,(-a[0].y+6*a[1].y+a[2].y)/6,(a[1].x+6*a[2].x-a[3].x)/6,(a[1].y+6*a[2].y-a[3].y)/6,a[2].x,a[2].y])}return r}e.getRGB=ht(function(t){if(!t||(t=x(t)).indexOf("-")+1)return{r:-1,g:-1,b:-1,hex:"none",error:1,toString:ut};if("none"==t)return{r:-1,g:-1,b:-1,hex:"none",toString:ut};!q[o](t.toLowerCase().substring(0,2))&&"#"!=t.charAt()&&(t=it(t));var r,i,n,a,s,l,h=t.match(E);return h?(h[2]&&(n=F(h[2].substring(5),16),i=F(h[2].substring(3,5),16),r=F(h[2].substring(1,3),16)),h[3]&&(n=F((s=h[3].charAt(3))+s,16),i=F((s=h[3].charAt(2))+s,16),r=F((s=h[3].charAt(1))+s,16)),h[4]&&(l=h[4][v](D),r=z(l[0]),"%"==l[0].slice(-1)&&(r*=2.55),i=z(l[1]),"%"==l[1].slice(-1)&&(i*=2.55),n=z(l[2]),"%"==l[2].slice(-1)&&(n*=2.55),"rgba"==h[1].toLowerCase().slice(0,4)&&(a=z(l[3])),l[3]&&"%"==l[3].slice(-1)&&(a/=100)),h[5]?(l=h[5][v](D),r=z(l[0]),"%"==l[0].slice(-1)&&(r*=2.55),i=z(l[1]),"%"==l[1].slice(-1)&&(i*=2.55),n=z(l[2]),"%"==l[2].slice(-1)&&(n*=2.55),("deg"==l[0].slice(-3)||"°"==l[0].slice(-1))&&(r/=360),"hsba"==h[1].toLowerCase().slice(0,4)&&(a=z(l[3])),l[3]&&"%"==l[3].slice(-1)&&(a/=100),e.hsb2rgb(r,i,n,a)):h[6]?(l=h[6][v](D),r=z(l[0]),"%"==l[0].slice(-1)&&(r*=2.55),i=z(l[1]),"%"==l[1].slice(-1)&&(i*=2.55),n=z(l[2]),"%"==l[2].slice(-1)&&(n*=2.55),("deg"==l[0].slice(-3)||"°"==l[0].slice(-1))&&(r/=360),"hsla"==h[1].toLowerCase().slice(0,4)&&(a=z(l[3])),l[3]&&"%"==l[3].slice(-1)&&(a/=100),e.hsl2rgb(r,i,n,a)):((h={r:r,g:i,b:n,toString:ut}).hex="#"+(16777216|n|i<<8|r<<16).toString(16).slice(1),e.is(a,"finite")&&(h.opacity=a),h)):{r:-1,g:-1,b:-1,hex:"none",error:1,toString:ut}},e),e.hsb=ht(function(t,r,i){return e.hsb2rgb(t,r,i).hex}),e.hsl=ht(function(t,r,i){return e.hsl2rgb(t,r,i).hex}),e.rgb=ht(function(t,e,r){function i(t){return t+.5|0}return"#"+(16777216|i(r)|i(e)<<8|i(t)<<16).toString(16).slice(1)}),e.getColor=function(t){var e=this.getColor.start=this.getColor.start||{h:0,s:1,b:t||.75},r=this.hsb2rgb(e.h,e.s,e.b);return e.h+=.075,e.h>1&&(e.h=0,e.s-=.2,e.s<=0&&(this.getColor.start={h:0,s:1,b:e.b})),r.hex},e.getColor.reset=function(){delete this.start},e.parsePathString=function(t){if(!t)return null;var r=ft(t);if(r.arr)return mt(r.arr);var i={a:7,c:6,h:1,l:2,m:2,r:4,q:4,s:4,t:2,v:1,z:0},n=[];return e.is(t,A)&&e.is(t[0],A)&&(n=mt(t)),n.length||x(t).replace(V,function(t,e,r){var a=[],s=e.toLowerCase();if(r.replace(Y,function(t,e){e&&a.push(+e)}),"m"==s&&a.length>2&&(n.push([e][f](a.splice(0,2))),s="l",e="m"==e?"l":"L"),"r"==s)n.push([e][f](a));else for(;a.length>=i[s]&&(n.push([e][f](a.splice(0,i[s]))),i[s]););}),n.toString=e._path2string,r.arr=mt(n),n},e.parseTransformString=ht(function(t){if(!t)return null;var r=[];return e.is(t,A)&&e.is(t[0],A)&&(r=mt(t)),r.length||x(t).replace(W,function(t,e,i){var n=[];b.call(e);i.replace(Y,function(t,e){e&&n.push(+e)}),r.push([e][f](n))}),r.toString=e._path2string,r},this,function(t){if(!t)return t;for(var e=[],r=0;r<t.length;r++){for(var i=[],n=0;n<t[r].length;n++)i.push(t[r][n]);e.push(i)}return e});var ft=function(t){var e=ft.ps=ft.ps||{};return e[t]?e[t].sleep=100:e[t]={sleep:100},setTimeout(function(){for(var r in e)e[o](r)&&r!=t&&(e[r].sleep--,!e[r].sleep&&delete e[r])}),e[t]};function pt(t,e,r,i,n){return t*(t*(-3*e+9*r-9*i+3*n)+6*e-12*r+6*i)-3*e+3*r}function dt(t,e,r,i,n,a,s,o,l){null==l&&(l=1);for(var h=(l=l>1?1:l<0?0:l)/2,u=[-.1252,.1252,-.3678,.3678,-.5873,.5873,-.7699,.7699,-.9041,.9041,-.9816,.9816],c=[.2491,.2491,.2335,.2335,.2032,.2032,.1601,.1601,.1069,.1069,.0472,.0472],f=0,p=0;p<12;p++){var d=h*u[p]+h,g=pt(d,t,r,n,s),x=pt(d,e,i,a,o),v=g*g+x*x;f+=c[p]*_.sqrt(v)}return h*f}function gt(t,e,r,i,n,a,s,o){if(!(w(t,r)<k(n,s)||k(t,r)>w(n,s)||w(e,i)<k(a,o)||k(e,i)>w(a,o))){var l=(t-r)*(a-o)-(e-i)*(n-s);if(l){var h=((t*i-e*r)*(n-s)-(t-r)*(n*o-a*s))/l,u=((t*i-e*r)*(a-o)-(e-i)*(n*o-a*s))/l,c=+h.toFixed(2),f=+u.toFixed(2);if(!(c<+k(t,r).toFixed(2)||c>+w(t,r).toFixed(2)||c<+k(n,s).toFixed(2)||c>+w(n,s).toFixed(2)||f<+k(e,i).toFixed(2)||f>+w(e,i).toFixed(2)||f<+k(a,o).toFixed(2)||f>+w(a,o).toFixed(2)))return{x:h,y:u}}}}function xt(t,r,i){var n=e.bezierBBox(t),a=e.bezierBBox(r);if(!e.isBBoxIntersect(n,a))return i?0:[];for(var s=dt.apply(0,t),o=dt.apply(0,r),l=w(~~(s/5),1),h=w(~~(o/5),1),u=[],c=[],f={},p=i?0:[],d=0;d<l+1;d++){var g=e.findDotsAtSegment.apply(e,t.concat(d/l));u.push({x:g.x,y:g.y,t:d/l})}for(d=0;d<h+1;d++)g=e.findDotsAtSegment.apply(e,r.concat(d/h)),c.push({x:g.x,y:g.y,t:d/h});for(d=0;d<l;d++)for(var x=0;x<h;x++){var v=u[d],y=u[d+1],m=c[x],b=c[x+1],_=B(y.x-v.x)<.001?"y":"x",C=B(b.x-m.x)<.001?"y":"x",S=gt(v.x,v.y,y.x,y.y,m.x,m.y,b.x,b.y);if(S){if(f[S.x.toFixed(4)]==S.y.toFixed(4))continue;f[S.x.toFixed(4)]=S.y.toFixed(4);var T=v.t+B((S[_]-v[_])/(y[_]-v[_]))*(y.t-v.t),A=m.t+B((S[C]-m[C])/(b[C]-m[C]))*(b.t-m.t);T>=0&&T<=1.001&&A>=0&&A<=1.001&&(i?p++:p.push({x:S.x,y:S.y,t1:k(T,1),t2:k(A,1)}))}}return p}function vt(t,r,i){t=e._path2curve(t),r=e._path2curve(r);for(var n,a,s,o,l,h,u,c,f,p,d=i?0:[],g=0,x=t.length;g<x;g++){var v=t[g];if("M"==v[0])n=l=v[1],a=h=v[2];else{"C"==v[0]?(f=[n,a].concat(v.slice(1)),n=f[6],a=f[7]):(f=[n,a,n,a,l,h,l,h],n=l,a=h);for(var y=0,m=r.length;y<m;y++){var b=r[y];if("M"==b[0])s=u=b[1],o=c=b[2];else{"C"==b[0]?(p=[s,o].concat(b.slice(1)),s=p[6],o=p[7]):(p=[s,o,s,o,u,c,u,c],s=u,o=c);var _=xt(f,p,i);if(i)d+=_;else{for(var w=0,k=_.length;w<k;w++)_[w].segment1=g,_[w].segment2=y,_[w].bez1=f,_[w].bez2=p;d=d.concat(_)}}}}}return d}e.findDotsAtSegment=function(t,e,r,i,n,a,s,o,l){var h=1-l,u=C(h,3),c=C(h,2),f=l*l,p=f*l,d=u*t+3*c*l*r+3*h*l*l*n+p*s,g=u*e+3*c*l*i+3*h*l*l*a+p*o,x=t+2*l*(r-t)+f*(n-2*r+t),v=e+2*l*(i-e)+f*(a-2*i+e),y=r+2*l*(n-r)+f*(s-2*n+r),m=i+2*l*(a-i)+f*(o-2*a+i),b=h*t+l*r,w=h*e+l*i,k=h*n+l*s,B=h*a+l*o,T=90-180*_.atan2(x-y,v-m)/S;return(x>y||v<m)&&(T+=180),{x:d,y:g,m:{x:x,y:v},n:{x:y,y:m},start:{x:b,y:w},end:{x:k,y:B},alpha:T}},e.bezierBBox=function(t,r,i,n,a,s,o,l){e.is(t,"array")||(t=[t,r,i,n,a,s,o,l]);var h=St.apply(null,t);return{x:h.min.x,y:h.min.y,x2:h.max.x,y2:h.max.y,width:h.max.x-h.min.x,height:h.max.y-h.min.y}},e.isPointInsideBBox=function(t,e,r){return e>=t.x&&e<=t.x2&&r>=t.y&&r<=t.y2},e.isBBoxIntersect=function(t,r){var i=e.isPointInsideBBox;return i(r,t.x,t.y)||i(r,t.x2,t.y)||i(r,t.x,t.y2)||i(r,t.x2,t.y2)||i(t,r.x,r.y)||i(t,r.x2,r.y)||i(t,r.x,r.y2)||i(t,r.x2,r.y2)||(t.x<r.x2&&t.x>r.x||r.x<t.x2&&r.x>t.x)&&(t.y<r.y2&&t.y>r.y||r.y<t.y2&&r.y>t.y)},e.pathIntersection=function(t,e){return vt(t,e)},e.pathIntersectionNumber=function(t,e){return vt(t,e,1)},e.isPointInsidePath=function(t,r,i){var n=e.pathBBox(t);return e.isPointInsideBBox(n,r,i)&&vt(t,[["M",r,i],["H",n.x2+10]],1)%2==1},e._removedFactory=function(e){return function(){t("raphael.log",null,"Raphaël: you are calling to method “"+e+"” of removed object",e)}};var yt=e.pathBBox=function(t){var e=ft(t);if(e.bbox)return tt(e.bbox);if(!t)return{x:0,y:0,width:0,height:0,x2:0,y2:0};for(var r,i=0,n=0,a=[],s=[],o=0,l=(t=Tt(t)).length;o<l;o++)if("M"==(r=t[o])[0])i=r[1],n=r[2],a.push(i),s.push(n);else{var h=St(i,n,r[1],r[2],r[3],r[4],r[5],r[6]);a=a[f](h.min.x,h.max.x),s=s[f](h.min.y,h.max.y),i=r[5],n=r[6]}var u=k[c](0,a),p=k[c](0,s),d=w[c](0,a),g=w[c](0,s),x=d-u,v=g-p,y={x:u,y:p,x2:d,y2:g,width:x,height:v,cx:u+x/2,cy:p+v/2};return e.bbox=tt(y),y},mt=function(t){var r=tt(t);return r.toString=e._path2string,r},bt=e._pathToRelative=function(t){var r=ft(t);if(r.rel)return mt(r.rel);e.is(t,A)&&e.is(t&&t[0],A)||(t=e.parsePathString(t));var i=[],n=0,a=0,s=0,o=0,l=0;"M"==t[0][0]&&(s=n=t[0][1],o=a=t[0][2],l++,i.push(["M",n,a]));for(var h=l,u=t.length;h<u;h++){var c=i[h]=[],f=t[h];if(f[0]!=b.call(f[0]))switch(c[0]=b.call(f[0]),c[0]){case"a":c[1]=f[1],c[2]=f[2],c[3]=f[3],c[4]=f[4],c[5]=f[5],c[6]=+(f[6]-n).toFixed(3),c[7]=+(f[7]-a).toFixed(3);break;case"v":c[1]=+(f[1]-a).toFixed(3);break;case"m":s=f[1],o=f[2];default:for(var p=1,d=f.length;p<d;p++)c[p]=+(f[p]-(p%2?n:a)).toFixed(3)}else{c=i[h]=[],"m"==f[0]&&(s=f[1]+n,o=f[2]+a);for(var g=0,x=f.length;g<x;g++)i[h][g]=f[g]}var v=i[h].length;switch(i[h][0]){case"z":n=s,a=o;break;case"h":n+=+i[h][v-1];break;case"v":a+=+i[h][v-1];break;default:n+=+i[h][v-2],a+=+i[h][v-1]}}return i.toString=e._path2string,r.rel=mt(i),i},_t=e._pathToAbsolute=function(t){var r=ft(t);if(r.abs)return mt(r.abs);if(e.is(t,A)&&e.is(t&&t[0],A)||(t=e.parsePathString(t)),!t||!t.length)return[["M",0,0]];var i=[],n=0,a=0,s=0,o=0,l=0;"M"==t[0][0]&&(s=n=+t[0][1],o=a=+t[0][2],l++,i[0]=["M",n,a]);for(var h,u,c=3==t.length&&"M"==t[0][0]&&"R"==t[1][0].toUpperCase()&&"Z"==t[2][0].toUpperCase(),p=l,d=t.length;p<d;p++){if(i.push(h=[]),(u=t[p])[0]!=R.call(u[0]))switch(h[0]=R.call(u[0]),h[0]){case"A":h[1]=u[1],h[2]=u[2],h[3]=u[3],h[4]=u[4],h[5]=u[5],h[6]=+(u[6]+n),h[7]=+(u[7]+a);break;case"V":h[1]=+u[1]+a;break;case"H":h[1]=+u[1]+n;break;case"R":for(var g=[n,a][f](u.slice(1)),x=2,v=g.length;x<v;x++)g[x]=+g[x]+n,g[++x]=+g[x]+a;i.pop(),i=i[f](ct(g,c));break;case"M":s=+u[1]+n,o=+u[2]+a;default:for(x=1,v=u.length;x<v;x++)h[x]=+u[x]+(x%2?n:a)}else if("R"==u[0])g=[n,a][f](u.slice(1)),i.pop(),i=i[f](ct(g,c)),h=["R"][f](u.slice(-2));else for(var y=0,m=u.length;y<m;y++)h[y]=u[y];switch(h[0]){case"Z":n=s,a=o;break;case"H":n=h[1];break;case"V":a=h[1];break;case"M":s=h[h.length-2],o=h[h.length-1];default:n=h[h.length-2],a=h[h.length-1]}}return i.toString=e._path2string,r.abs=mt(i),i},wt=function(t,e,r,i){return[t,e,r,i,r,i]},kt=function(t,e,r,i,n,a){return[1/3*t+2/3*r,1/3*e+2/3*i,1/3*n+2/3*r,1/3*a+2/3*i,n,a]},Bt=function(t,e,r,i,n,a,s,o,l,h){var u,c=120*S/180,p=S/180*(+n||0),d=[],g=ht(function(t,e,r){return{x:t*_.cos(r)-e*_.sin(r),y:t*_.sin(r)+e*_.cos(r)}});if(h)A=h[0],M=h[1],C=h[2],T=h[3];else{t=(u=g(t,e,-p)).x,e=u.y,o=(u=g(o,l,-p)).x,l=u.y;_.cos(S/180*n),_.sin(S/180*n);var x=(t-o)/2,y=(e-l)/2,m=x*x/(r*r)+y*y/(i*i);m>1&&(r*=m=_.sqrt(m),i*=m);var b=r*r,w=i*i,k=(a==s?-1:1)*_.sqrt(B((b*w-b*y*y-w*x*x)/(b*y*y+w*x*x))),C=k*r*y/i+(t+o)/2,T=k*-i*x/r+(e+l)/2,A=_.asin(((e-T)/i).toFixed(9)),M=_.asin(((l-T)/i).toFixed(9));(A=t<C?S-A:A)<0&&(A=2*S+A),(M=o<C?S-M:M)<0&&(M=2*S+M),s&&A>M&&(A-=2*S),!s&&M>A&&(M-=2*S)}var E=M-A;if(B(E)>c){var N=M,L=o,P=l;M=A+c*(s&&M>A?1:-1),o=C+r*_.cos(M),l=T+i*_.sin(M),d=Bt(o,l,r,i,n,0,s,L,P,[M,N,C,T])}E=M-A;var z=_.cos(A),F=_.sin(A),R=_.cos(M),j=_.sin(M),I=_.tan(E/4),D=4/3*r*I,q=4/3*i*I,O=[t,e],V=[t+D*F,e-q*z],W=[o+D*j,l-q*R],Y=[o,l];if(V[0]=2*O[0]-V[0],V[1]=2*O[1]-V[1],h)return[V,W,Y][f](d);for(var G=[],H=0,X=(d=[V,W,Y][f](d).join()[v](",")).length;H<X;H++)G[H]=H%2?g(d[H-1],d[H],p).y:g(d[H],d[H+1],p).x;return G},Ct=function(t,e,r,i,n,a,s,o,l){var h=1-l;return{x:C(h,3)*t+3*C(h,2)*l*r+3*h*l*l*n+C(l,3)*s,y:C(h,3)*e+3*C(h,2)*l*i+3*h*l*l*a+C(l,3)*o}},St=ht(function(t,e,r,i,n,a,s,o){var l,h=n-2*r+t-(s-2*n+r),u=2*(r-t)-2*(n-r),f=t-r,p=(-u+_.sqrt(u*u-4*h*f))/2/h,d=(-u-_.sqrt(u*u-4*h*f))/2/h,g=[e,o],x=[t,s];return B(p)>"1e12"&&(p=.5),B(d)>"1e12"&&(d=.5),p>0&&p<1&&(l=Ct(t,e,r,i,n,a,s,o,p),x.push(l.x),g.push(l.y)),d>0&&d<1&&(l=Ct(t,e,r,i,n,a,s,o,d),x.push(l.x),g.push(l.y)),h=a-2*i+e-(o-2*a+i),f=e-i,p=(-(u=2*(i-e)-2*(a-i))+_.sqrt(u*u-4*h*f))/2/h,d=(-u-_.sqrt(u*u-4*h*f))/2/h,B(p)>"1e12"&&(p=.5),B(d)>"1e12"&&(d=.5),p>0&&p<1&&(l=Ct(t,e,r,i,n,a,s,o,p),x.push(l.x),g.push(l.y)),d>0&&d<1&&(l=Ct(t,e,r,i,n,a,s,o,d),x.push(l.x),g.push(l.y)),{min:{x:k[c](0,x),y:k[c](0,g)},max:{x:w[c](0,x),y:w[c](0,g)}}}),Tt=e._path2curve=ht(function(t,e){var r=!e&&ft(t);if(!e&&r.curve)return mt(r.curve);for(var i=_t(t),n=e&&_t(e),a={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},s={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},o=function(t,e,r){var i,n;if(!t)return["C",e.x,e.y,e.x,e.y,e.x,e.y];switch(!(t[0]in{T:1,Q:1})&&(e.qx=e.qy=null),t[0]){case"M":e.X=t[1],e.Y=t[2];break;case"A":t=["C"][f](Bt[c](0,[e.x,e.y][f](t.slice(1))));break;case"S":"C"==r||"S"==r?(i=2*e.x-e.bx,n=2*e.y-e.by):(i=e.x,n=e.y),t=["C",i,n][f](t.slice(1));break;case"T":"Q"==r||"T"==r?(e.qx=2*e.x-e.qx,e.qy=2*e.y-e.qy):(e.qx=e.x,e.qy=e.y),t=["C"][f](kt(e.x,e.y,e.qx,e.qy,t[1],t[2]));break;case"Q":e.qx=t[1],e.qy=t[2],t=["C"][f](kt(e.x,e.y,t[1],t[2],t[3],t[4]));break;case"L":t=["C"][f](wt(e.x,e.y,t[1],t[2]));break;case"H":t=["C"][f](wt(e.x,e.y,t[1],e.y));break;case"V":t=["C"][f](wt(e.x,e.y,e.x,t[1]));break;case"Z":t=["C"][f](wt(e.x,e.y,e.X,e.Y))}return t},l=function(t,e){if(t[e].length>7){t[e].shift();for(var r=t[e];r.length;)u[e]="A",n&&(p[e]="A"),t.splice(e++,0,["C"][f](r.splice(0,6)));t.splice(e,1),v=w(i.length,n&&n.length||0)}},h=function(t,e,r,a,s){t&&e&&"M"==t[s][0]&&"M"!=e[s][0]&&(e.splice(s,0,["M",a.x,a.y]),r.bx=0,r.by=0,r.x=t[s][1],r.y=t[s][2],v=w(i.length,n&&n.length||0))},u=[],p=[],d="",g="",x=0,v=w(i.length,n&&n.length||0);x<v;x++){i[x]&&(d=i[x][0]),"C"!=d&&(u[x]=d,x&&(g=u[x-1])),i[x]=o(i[x],a,g),"A"!=u[x]&&"C"==d&&(u[x]="C"),l(i,x),n&&(n[x]&&(d=n[x][0]),"C"!=d&&(p[x]=d,x&&(g=p[x-1])),n[x]=o(n[x],s,g),"A"!=p[x]&&"C"==d&&(p[x]="C"),l(n,x)),h(i,n,a,s,x),h(n,i,s,a,x);var y=i[x],m=n&&n[x],b=y.length,_=n&&m.length;a.x=y[b-2],a.y=y[b-1],a.bx=z(y[b-4])||a.x,a.by=z(y[b-3])||a.y,s.bx=n&&(z(m[_-4])||s.x),s.by=n&&(z(m[_-3])||s.y),s.x=n&&m[_-2],s.y=n&&m[_-1]}return n||(r.curve=mt(i)),n?[i,n]:i},null,mt),At=(e._parseDots=ht(function(t){for(var r=[],i=0,n=t.length;i<n;i++){var a={},s=t[i].match(/^([^:]*):?([\d\.]*)/);if(a.color=e.getRGB(s[1]),a.color.error)return null;a.opacity=a.color.opacity,a.color=a.color.hex,s[2]&&(a.offset=s[2]+"%"),r.push(a)}for(i=1,n=r.length-1;i<n;i++)if(!r[i].offset){for(var o=z(r[i-1].offset||0),l=0,h=i+1;h<n;h++)if(r[h].offset){l=r[h].offset;break}l||(l=100,h=n);for(var u=((l=z(l))-o)/(h-i+1);i<h;i++)o+=u,r[i].offset=o+"%"}return r}),e._tear=function(t,e){t==e.top&&(e.top=t.prev),t==e.bottom&&(e.bottom=t.next),t.next&&(t.next.prev=t.prev),t.prev&&(t.prev.next=t.next)}),Mt=(e._tofront=function(t,e){e.top!==t&&(At(t,e),t.next=null,t.prev=e.top,e.top.next=t,e.top=t)},e._toback=function(t,e){e.bottom!==t&&(At(t,e),t.next=e.bottom,t.prev=null,e.bottom.prev=t,e.bottom=t)},e._insertafter=function(t,e,r){At(t,r),e==r.top&&(r.top=t),e.next&&(e.next.prev=t),t.next=e.next,t.prev=e,e.next=t},e._insertbefore=function(t,e,r){At(t,r),e==r.bottom&&(r.bottom=t),e.prev&&(e.prev.next=t),t.prev=e.prev,e.prev=t,t.next=e},e.toMatrix=function(t,e){var r=yt(t),i={_:{transform:d},getBBox:function(){return r}};return Et(i,e),i.matrix}),Et=(e.transformPath=function(t,e){return Q(t,Mt(t,e))},e._extractTransform=function(t,r){if(null==r)return t._.transform;r=x(r).replace(/\.{3}|\u2026/g,t._.transform||d);var i,n,a=e.parseTransformString(r),s=0,o=1,l=1,h=t._,u=new Pt;if(h.transform=a||[],a)for(var c=0,f=a.length;c<f;c++){var p,g,v,y,m,b=a[c],_=b.length,w=x(b[0]).toLowerCase(),k=b[0]!=w,B=k?u.invert():0;"t"==w&&3==_?k?(p=B.x(0,0),g=B.y(0,0),v=B.x(b[1],b[2]),y=B.y(b[1],b[2]),u.translate(v-p,y-g)):u.translate(b[1],b[2]):"r"==w?2==_?(m=m||t.getBBox(1),u.rotate(b[1],m.x+m.width/2,m.y+m.height/2),s+=b[1]):4==_&&(k?(v=B.x(b[2],b[3]),y=B.y(b[2],b[3]),u.rotate(b[1],v,y)):u.rotate(b[1],b[2],b[3]),s+=b[1]):"s"==w?2==_||3==_?(m=m||t.getBBox(1),u.scale(b[1],b[_-1],m.x+m.width/2,m.y+m.height/2),o*=b[1],l*=b[_-1]):5==_&&(k?(v=B.x(b[3],b[4]),y=B.y(b[3],b[4]),u.scale(b[1],b[2],v,y)):u.scale(b[1],b[2],b[3],b[4]),o*=b[1],l*=b[2]):"m"==w&&7==_&&u.add(b[1],b[2],b[3],b[4],b[5],b[6]),h.dirtyT=1,t.matrix=u}t.matrix=u,h.sx=o,h.sy=l,h.deg=s,h.dx=i=u.e,h.dy=n=u.f,1==o&&1==l&&!s&&h.bbox?(h.bbox.x+=+i,h.bbox.y+=+n):h.dirtyT=1}),Nt=function(t){var e=t[0];switch(e.toLowerCase()){case"t":return[e,0,0];case"m":return[e,1,0,0,1,0,0];case"r":return 4==t.length?[e,0,t[2],t[3]]:[e,0];case"s":return 5==t.length?[e,1,1,t[3],t[4]]:3==t.length?[e,1,1]:[e,1]}},Lt=e._equaliseTransform=function(t,r){r=x(r).replace(/\.{3}|\u2026/g,t),t=e.parseTransformString(t)||[],r=e.parseTransformString(r)||[];for(var i,n,a,s,o=w(t.length,r.length),l=[],h=[],u=0;u<o;u++){if(a=t[u]||Nt(r[u]),s=r[u]||Nt(a),a[0]!=s[0]||"r"==a[0].toLowerCase()&&(a[2]!=s[2]||a[3]!=s[3])||"s"==a[0].toLowerCase()&&(a[3]!=s[3]||a[4]!=s[4]))return;for(l[u]=[],h[u]=[],i=0,n=w(a.length,s.length);i<n;i++)i in a&&(l[u][i]=a[i]),i in s&&(h[u][i]=s[i])}return{from:l,to:h}};function Pt(t,e,r,i,n,a){null!=t?(this.a=+t,this.b=+e,this.c=+r,this.d=+i,this.e=+n,this.f=+a):(this.a=1,this.b=0,this.c=0,this.d=1,this.e=0,this.f=0)}e._getContainer=function(t,r,i,n){var a;if(null!=(a=null!=n||e.is(t,"object")?t:l.doc.getElementById(t)))return a.tagName?null==r?{container:a,width:a.style.pixelWidth||a.offsetWidth,height:a.style.pixelHeight||a.offsetHeight}:{container:a,width:r,height:i}:{container:1,x:t,y:r,width:i,height:n}},e.pathToRelative=bt,e._engine={},e.path2curve=Tt,e.matrix=function(t,e,r,i,n,a){return new Pt(t,e,r,i,n,a)},function(t){function r(t){return t[0]*t[0]+t[1]*t[1]}function i(t){var e=_.sqrt(r(t));t[0]&&(t[0]/=e),t[1]&&(t[1]/=e)}t.add=function(t,e,r,i,n,a){var s,o,l,h,u=[[],[],[]],c=[[this.a,this.c,this.e],[this.b,this.d,this.f],[0,0,1]],f=[[t,r,n],[e,i,a],[0,0,1]];for(t&&t instanceof Pt&&(f=[[t.a,t.c,t.e],[t.b,t.d,t.f],[0,0,1]]),s=0;s<3;s++)for(o=0;o<3;o++){for(h=0,l=0;l<3;l++)h+=c[s][l]*f[l][o];u[s][o]=h}this.a=u[0][0],this.b=u[1][0],this.c=u[0][1],this.d=u[1][1],this.e=u[0][2],this.f=u[1][2]},t.invert=function(){var t=this,e=t.a*t.d-t.b*t.c;return new Pt(t.d/e,-t.b/e,-t.c/e,t.a/e,(t.c*t.f-t.d*t.e)/e,(t.b*t.e-t.a*t.f)/e)},t.clone=function(){return new Pt(this.a,this.b,this.c,this.d,this.e,this.f)},t.translate=function(t,e){this.add(1,0,0,1,t,e)},t.scale=function(t,e,r,i){null==e&&(e=t),(r||i)&&this.add(1,0,0,1,r,i),this.add(t,0,0,e,0,0),(r||i)&&this.add(1,0,0,1,-r,-i)},t.rotate=function(t,r,i){t=e.rad(t),r=r||0,i=i||0;var n=+_.cos(t).toFixed(9),a=+_.sin(t).toFixed(9);this.add(n,a,-a,n,r,i),this.add(1,0,0,1,-r,-i)},t.x=function(t,e){return t*this.a+e*this.c+this.e},t.y=function(t,e){return t*this.b+e*this.d+this.f},t.get=function(t){return+this[x.fromCharCode(97+t)].toFixed(4)},t.toString=function(){return e.svg?"matrix("+[this.get(0),this.get(1),this.get(2),this.get(3),this.get(4),this.get(5)].join()+")":[this.get(0),this.get(2),this.get(1),this.get(3),0,0].join()},t.toFilter=function(){return"progid:DXImageTransform.Microsoft.Matrix(M11="+this.get(0)+", M12="+this.get(2)+", M21="+this.get(1)+", M22="+this.get(3)+", Dx="+this.get(4)+", Dy="+this.get(5)+", sizingmethod='auto expand')"},t.offset=function(){return[this.e.toFixed(4),this.f.toFixed(4)]},t.split=function(){var t={};t.dx=this.e,t.dy=this.f;var n=[[this.a,this.c],[this.b,this.d]];t.scalex=_.sqrt(r(n[0])),i(n[0]),t.shear=n[0][0]*n[1][0]+n[0][1]*n[1][1],n[1]=[n[1][0]-n[0][0]*t.shear,n[1][1]-n[0][1]*t.shear],t.scaley=_.sqrt(r(n[1])),i(n[1]),t.shear/=t.scaley;var a=-n[0][1],s=n[1][1];return s<0?(t.rotate=e.deg(_.acos(s)),a<0&&(t.rotate=360-t.rotate)):t.rotate=e.deg(_.asin(a)),t.isSimple=!(+t.shear.toFixed(9)||t.scalex.toFixed(9)!=t.scaley.toFixed(9)&&t.rotate),t.isSuperSimple=!+t.shear.toFixed(9)&&t.scalex.toFixed(9)==t.scaley.toFixed(9)&&!t.rotate,t.noRotation=!+t.shear.toFixed(9)&&!t.rotate,t},t.toTransformString=function(t){var e=t||this[v]();return e.isSimple?(e.scalex=+e.scalex.toFixed(4),e.scaley=+e.scaley.toFixed(4),e.rotate=+e.rotate.toFixed(4),(e.dx||e.dy?"t"+[e.dx,e.dy]:d)+(1!=e.scalex||1!=e.scaley?"s"+[e.scalex,e.scaley,0,0]:d)+(e.rotate?"r"+[e.rotate,0,0]:d)):"m"+[this.get(0),this.get(1),this.get(2),this.get(3),this.get(4),this.get(5)]}}(Pt.prototype);for(var zt=function(){this.returnValue=!1},Ft=function(){return this.originalEvent.preventDefault()},Rt=function(){this.cancelBubble=!0},jt=function(){return this.originalEvent.stopPropagation()},It=function(t){var e=l.doc.documentElement.scrollTop||l.doc.body.scrollTop,r=l.doc.documentElement.scrollLeft||l.doc.body.scrollLeft;return{x:t.clientX+r,y:t.clientY+e}},Dt=l.doc.addEventListener?function(t,e,r,i){var n=function(t){var e=It(t);return r.call(i,t,e.x,e.y)};if(t.addEventListener(e,n,!1),p&&m[e]){var a=function(e){for(var n=It(e),a=e,s=0,o=e.targetTouches&&e.targetTouches.length;s<o;s++)if(e.targetTouches[s].target==t){(e=e.targetTouches[s]).originalEvent=a,e.preventDefault=Ft,e.stopPropagation=jt;break}return r.call(i,e,n.x,n.y)};t.addEventListener(m[e],a,!1)}return function(){return t.removeEventListener(e,n,!1),p&&m[e]&&t.removeEventListener(m[e],a,!1),!0}}:l.doc.attachEvent?function(t,e,r,i){var n=function(t){t=t||l.win.event;var e=l.doc.documentElement.scrollTop||l.doc.body.scrollTop,n=l.doc.documentElement.scrollLeft||l.doc.body.scrollLeft,a=t.clientX+n,s=t.clientY+e;return t.preventDefault=t.preventDefault||zt,t.stopPropagation=t.stopPropagation||Rt,r.call(i,t,a,s)};return t.attachEvent("on"+e,n),function(){return t.detachEvent("on"+e,n),!0}}:void 0,qt=[],Ot=function(e){for(var r,i=e.clientX,n=e.clientY,a=l.doc.documentElement.scrollTop||l.doc.body.scrollTop,s=l.doc.documentElement.scrollLeft||l.doc.body.scrollLeft,o=qt.length;o--;){if(r=qt[o],p&&e.touches){for(var h,u=e.touches.length;u--;)if((h=e.touches[u]).identifier==r.el._drag.id){i=h.clientX,n=h.clientY,(e.originalEvent?e.originalEvent:e).preventDefault();break}}else e.preventDefault();var c,f=r.el.node,d=f.nextSibling,g=f.parentNode,x=f.style.display;l.win.opera&&g.removeChild(f),f.style.display="none",c=r.el.paper.getElementByPoint(i,n),f.style.display=x,l.win.opera&&(d?g.insertBefore(f,d):g.appendChild(f)),c&&t("raphael.drag.over."+r.el.id,r.el,c),i+=s,n+=a,t("raphael.drag.move."+r.el.id,r.move_scope||r.el,i-r.el._drag.x,n-r.el._drag.y,i,n,e)}},Vt=function(r){e.unmousemove(Ot).unmouseup(Vt);for(var i,n=qt.length;n--;)(i=qt[n]).el._drag={},t("raphael.drag.end."+i.el.id,i.end_scope||i.start_scope||i.move_scope||i.el,r);qt=[]},Wt=e.el={},Yt=y.length;Yt--;)!function(t){e[t]=Wt[t]=function(r,i){return e.is(r,"function")&&(this.events=this.events||[],this.events.push({name:t,f:r,unbind:Dt(this.shape||this.node||l.doc,t,r,i||this)})),this},e["un"+t]=Wt["un"+t]=function(r){for(var i=this.events||[],n=i.length;n--;)i[n].name!=t||!e.is(r,"undefined")&&i[n].f!=r||(i[n].unbind(),i.splice(n,1),!i.length&&delete this.events);return this}}(y[Yt]);Wt.data=function(r,i){var n=G[this.id]=G[this.id]||{};if(0==arguments.length)return n;if(1==arguments.length){if(e.is(r,"object")){for(var a in r)r[o](a)&&this.data(a,r[a]);return this}return t("raphael.data.get."+this.id,this,n[r],r),n[r]}return n[r]=i,t("raphael.data.set."+this.id,this,i,r),this},Wt.removeData=function(t){return null==t?delete G[this.id]:G[this.id]&&delete G[this.id][t],this},Wt.getData=function(){return tt(G[this.id]||{})},Wt.hover=function(t,e,r,i){return this.mouseover(t,r).mouseout(e,i||r)},Wt.unhover=function(t,e){return this.unmouseover(t).unmouseout(e)};var Gt=[];Wt.drag=function(r,i,n,a,s,o){function h(h){(h.originalEvent||h).preventDefault();var u=h.clientX,c=h.clientY,f=l.doc.documentElement.scrollTop||l.doc.body.scrollTop,d=l.doc.documentElement.scrollLeft||l.doc.body.scrollLeft;if(this._drag.id=h.identifier,p&&h.touches)for(var g,x=h.touches.length;x--;)if(g=h.touches[x],this._drag.id=g.identifier,g.identifier==this._drag.id){u=g.clientX,c=g.clientY;break}this._drag.x=u+d,this._drag.y=c+f,!qt.length&&e.mousemove(Ot).mouseup(Vt),qt.push({el:this,move_scope:a,start_scope:s,end_scope:o}),i&&t.on("raphael.drag.start."+this.id,i),r&&t.on("raphael.drag.move."+this.id,r),n&&t.on("raphael.drag.end."+this.id,n),t("raphael.drag.start."+this.id,s||a||this,this._drag.x,this._drag.y,h)}return this._drag={},Gt.push({el:this,start:h}),this.mousedown(h),this},Wt.onDragOver=function(e){e?t.on("raphael.drag.over."+this.id,e):t.unbind("raphael.drag.over."+this.id)},Wt.undrag=function(){for(var r=Gt.length;r--;)Gt[r].el==this&&(this.unmousedown(Gt[r].start),Gt.splice(r,1),t.unbind("raphael.drag.*."+this.id));!Gt.length&&e.unmousemove(Ot).unmouseup(Vt),qt=[]},i.circle=function(t,r,i){var n=e._engine.circle(this,t||0,r||0,i||0);return this.__set__&&this.__set__.push(n),n},i.rect=function(t,r,i,n,a){var s=e._engine.rect(this,t||0,r||0,i||0,n||0,a||0);return this.__set__&&this.__set__.push(s),s},i.ellipse=function(t,r,i,n){var a=e._engine.ellipse(this,t||0,r||0,i||0,n||0);return this.__set__&&this.__set__.push(a),a},i.path=function(t){t&&!e.is(t,"string")&&!e.is(t[0],A)&&(t+=d);var r=e._engine.path(e.format[c](e,arguments),this);return this.__set__&&this.__set__.push(r),r},i.image=function(t,r,i,n,a){var s=e._engine.image(this,t||"about:blank",r||0,i||0,n||0,a||0);return this.__set__&&this.__set__.push(s),s},i.text=function(t,r,i){var n=e._engine.text(this,t||0,r||0,x(i));return this.__set__&&this.__set__.push(n),n},i.set=function(t){!e.is(t,"array")&&(t=Array.prototype.splice.call(arguments,0,arguments.length));var r=new ce(t);return this.__set__&&this.__set__.push(r),r.paper=this,r.type="set",r},i.setStart=function(t){this.__set__=t||this.set()},i.setFinish=function(t){var e=this.__set__;return delete this.__set__,e},i.getSize=function(){var t=this.canvas.parentNode;return{width:t.offsetWidth,height:t.offsetHeight}},i.setSize=function(t,r){return e._engine.setSize.call(this,t,r)},i.setViewBox=function(t,r,i,n,a){return e._engine.setViewBox.call(this,t,r,i,n,a)},i.top=i.bottom=null,i.raphael=e;function Ht(){return this.x+g+this.y+g+this.width+" × "+this.height}i.getElementByPoint=function(t,e){var r,i,n,a,s,o,h,u=this.canvas,c=l.doc.elementFromPoint(t,e);if(l.win.opera&&"svg"==c.tagName){var f=(i=(r=u).getBoundingClientRect(),n=r.ownerDocument,a=n.body,s=n.documentElement,o=s.clientTop||a.clientTop||0,h=s.clientLeft||a.clientLeft||0,{y:i.top+(l.win.pageYOffset||s.scrollTop||a.scrollTop)-o,x:i.left+(l.win.pageXOffset||s.scrollLeft||a.scrollLeft)-h}),p=u.createSVGRect();p.x=t-f.x,p.y=e-f.y,p.width=p.height=1;var d=u.getIntersectionList(p,null);d.length&&(c=d[d.length-1])}if(!c)return null;for(;c.parentNode&&c!=u.parentNode&&!c.raphael;)c=c.parentNode;return c==this.canvas.parentNode&&(c=u),c=c&&c.raphael?this.getById(c.raphaelid):null},i.getElementsByBBox=function(t){var r=this.set();return this.forEach(function(i){e.isBBoxIntersect(i.getBBox(),t)&&r.push(i)}),r},i.getById=function(t){for(var e=this.bottom;e;){if(e.id==t)return e;e=e.next}return null},i.forEach=function(t,e){for(var r=this.bottom;r;){if(!1===t.call(e,r))return this;r=r.next}return this},i.getElementsByPoint=function(t,e){var r=this.set();return this.forEach(function(i){i.isPointInside(t,e)&&r.push(i)}),r},Wt.isPointInside=function(t,r){var i=this.realPath=Z[this.type](this);return this.attr("transform")&&this.attr("transform").length&&(i=e.transformPath(i,this.attr("transform"))),e.isPointInsidePath(i,t,r)},Wt.getBBox=function(t){if(this.removed)return{};var e=this._;return t?(!e.dirty&&e.bboxwt||(this.realPath=Z[this.type](this),e.bboxwt=yt(this.realPath),e.bboxwt.toString=Ht,e.dirty=0),e.bboxwt):((e.dirty||e.dirtyT||!e.bbox)&&(!e.dirty&&this.realPath||(e.bboxwt=0,this.realPath=Z[this.type](this)),e.bbox=yt(Q(this.realPath,this.matrix)),e.bbox.toString=Ht,e.dirty=e.dirtyT=0),e.bbox)},Wt.clone=function(){if(this.removed)return null;var t=this.paper[this.type]().attr(this.attr());return this.__set__&&this.__set__.push(t),t},Wt.glow=function(t){if("text"==this.type)return null;var e={width:((t=t||{}).width||10)+(+this.attr("stroke-width")||1),fill:t.fill||!1,opacity:null==t.opacity?.5:t.opacity,offsetx:t.offsetx||0,offsety:t.offsety||0,color:t.color||"#000"},r=e.width/2,i=this.paper,n=i.set(),a=this.realPath||Z[this.type](this);a=this.matrix?Q(a,this.matrix):a;for(var s=1;s<r+1;s++)n.push(i.path(a).attr({stroke:e.color,fill:e.fill?e.color:"none","stroke-linejoin":"round","stroke-linecap":"round","stroke-width":+(e.width/r*s).toFixed(3),opacity:+(e.opacity/r).toFixed(3)}));return n.insertBefore(this).translate(e.offsetx,e.offsety)};var Xt=function(t,r,i,n,a,s,o,l,h){return null==h?dt(t,r,i,n,a,s,o,l):e.findDotsAtSegment(t,r,i,n,a,s,o,l,function(t,e,r,i,n,a,s,o,l){if(!(l<0||dt(t,e,r,i,n,a,s,o)<l)){var h,u=.5,c=1-u;for(h=dt(t,e,r,i,n,a,s,o,c);B(h-l)>.01;)h=dt(t,e,r,i,n,a,s,o,c+=(h<l?1:-1)*(u/=2));return c}}(t,r,i,n,a,s,o,l,h))},Ut=function(t,r){return function(i,n,a){for(var s,o,l,h,u,c="",f={},p=0,d=0,g=(i=Tt(i)).length;d<g;d++){if("M"==(l=i[d])[0])s=+l[1],o=+l[2];else{if(p+(h=Xt(s,o,l[1],l[2],l[3],l[4],l[5],l[6]))>n){if(r&&!f.start){if(c+=["C"+(u=Xt(s,o,l[1],l[2],l[3],l[4],l[5],l[6],n-p)).start.x,u.start.y,u.m.x,u.m.y,u.x,u.y],a)return c;f.start=c,c=["M"+u.x,u.y+"C"+u.n.x,u.n.y,u.end.x,u.end.y,l[5],l[6]].join(),p+=h,s=+l[5],o=+l[6];continue}if(!t&&!r)return{x:(u=Xt(s,o,l[1],l[2],l[3],l[4],l[5],l[6],n-p)).x,y:u.y,alpha:u.alpha}}p+=h,s=+l[5],o=+l[6]}c+=l.shift()+l}return f.end=c,(u=t?p:r?f:e.findDotsAtSegment(s,o,l[0],l[1],l[2],l[3],l[4],l[5],1)).alpha&&(u={x:u.x,y:u.y,alpha:u.alpha}),u}},$t=Ut(1),Zt=Ut(),Qt=Ut(0,1);e.getTotalLength=$t,e.getPointAtLength=Zt,e.getSubpath=function(t,e,r){if(this.getTotalLength(t)-r<1e-6)return Qt(t,e).end;var i=Qt(t,r,1);return e?Qt(i,e).end:i},Wt.getTotalLength=function(){var t=this.getPath();if(t)return this.node.getTotalLength?this.node.getTotalLength():$t(t)},Wt.getPointAtLength=function(t){var e=this.getPath();if(e)return Zt(e,t)},Wt.getPath=function(){var t,r=e._getPath[this.type];if("text"!=this.type&&"set"!=this.type)return r&&(t=r(this)),t},Wt.getSubpath=function(t,r){var i=this.getPath();if(i)return e.getSubpath(i,t,r)};var Jt=e.easing_formulas={linear:function(t){return t},"<":function(t){return C(t,1.7)},">":function(t){return C(t,.48)},"<>":function(t){var e=.48-t/1.04,r=_.sqrt(.1734+e*e),i=r-e,n=-r-e,a=C(B(i),1/3)*(i<0?-1:1)+C(B(n),1/3)*(n<0?-1:1)+.5;return 3*(1-a)*a*a+a*a*a},backIn:function(t){var e=1.70158;return t*t*((e+1)*t-e)},backOut:function(t){var e=1.70158;return(t-=1)*t*((e+1)*t+e)+1},elastic:function(t){return t==!!t?t:C(2,-10*t)*_.sin(2*S*(t-.075)/.3)+1},bounce:function(t){var e=7.5625,r=2.75;return t<1/r?e*t*t:t<2/r?e*(t-=1.5/r)*t+.75:t<2.5/r?e*(t-=2.25/r)*t+.9375:e*(t-=2.625/r)*t+.984375}};Jt.easeIn=Jt["ease-in"]=Jt["<"],Jt.easeOut=Jt["ease-out"]=Jt[">"],Jt.easeInOut=Jt["ease-in-out"]=Jt["<>"],Jt["back-in"]=Jt.backIn,Jt["back-out"]=Jt.backOut;var Kt=[],te=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(t){setTimeout(t,16)},ee=function(){for(var r=+new Date,i=0;i<Kt.length;i++){var n=Kt[i];if(!n.el.removed&&!n.paused){var a,s,l=r-n.start,h=n.ms,u=n.easing,c=n.from,p=n.diff,d=n.to,x=(n.t,n.el),v={},y={};if(n.initstatus?(l=(n.initstatus*n.anim.top-n.prev)/(n.percent-n.prev)*h,n.status=n.initstatus,delete n.initstatus,n.stop&&Kt.splice(i--,1)):n.status=(n.prev+(n.percent-n.prev)*(l/h))/n.anim.top,!(l<0))if(l<h){var m=u(l/h);for(var b in c)if(c[o](b)){switch(I[b]){case T:a=+c[b]+m*h*p[b];break;case"colour":a="rgb("+[re(P(c[b].r+m*h*p[b].r)),re(P(c[b].g+m*h*p[b].g)),re(P(c[b].b+m*h*p[b].b))].join(",")+")";break;case"path":a=[];for(var _=0,w=c[b].length;_<w;_++){a[_]=[c[b][_][0]];for(var k=1,B=c[b][_].length;k<B;k++)a[_][k]=+c[b][_][k]+m*h*p[b][_][k];a[_]=a[_].join(g)}a=a.join(g);break;case"transform":if(p[b].real)for(a=[],_=0,w=c[b].length;_<w;_++)for(a[_]=[c[b][_][0]],k=1,B=c[b][_].length;k<B;k++)a[_][k]=c[b][_][k]+m*h*p[b][_][k];else{var C=function(t){return+c[b][t]+m*h*p[b][t]};a=[["m",C(0),C(1),C(2),C(3),C(4),C(5)]]}break;case"csv":if("clip-rect"==b)for(a=[],_=4;_--;)a[_]=+c[b][_]+m*h*p[b][_];break;default:var S=[][f](c[b]);for(a=[],_=x.paper.customAttributes[b].length;_--;)a[_]=+S[_]+m*h*p[b][_]}v[b]=a}x.attr(v),function(e,r,i){setTimeout(function(){t("raphael.anim.frame."+e,r,i)})}(x.id,x,n.anim)}else{if(function(r,i,n){setTimeout(function(){t("raphael.anim.frame."+i.id,i,n),t("raphael.anim.finish."+i.id,i,n),e.is(r,"function")&&r.call(i)})}(n.callback,x,n.anim),x.attr(d),Kt.splice(i--,1),n.repeat>1&&!n.next){for(s in d)d[o](s)&&(y[s]=n.totalOrigin[s]);n.el.attr(y),ae(n.anim,n.el,n.anim.percents[0],null,n.totalOrigin,n.repeat-1)}n.next&&!n.stop&&ae(n.anim,n.el,n.next,null,n.totalOrigin,n.repeat)}}}Kt.length&&te(ee)},re=function(t){return t>255?255:t<0?0:t};function ie(t,e,r,i,n,a){var s=3*e,o=3*(i-e)-s,l=1-s-o,h=3*r,u=3*(n-r)-h,c=1-h-u;function f(t){return((l*t+o)*t+s)*t}return function(t,e){var r=function(t,e){var r,i,n,a,h,u;for(n=t,u=0;u<8;u++){if(a=f(n)-t,B(a)<e)return n;if(B(h=(3*l*n+2*o)*n+s)<1e-6)break;n-=a/h}if(i=1,(n=t)<(r=0))return r;if(n>i)return i;for(;r<i;){if(a=f(n),B(a-t)<e)return n;t>a?r=n:i=n,n=(i-r)/2+r}return n}(t,e);return((c*r+u)*r+h)*r}(t,1/(200*a))}function ne(t,e){var r=[],i={};if(this.ms=e,this.times=1,t){for(var n in t)t[o](n)&&(i[z(n)]=t[n],r.push(z(n)));r.sort(H)}this.anim=i,this.top=r[r.length-1],this.percents=r}function ae(r,i,a,s,l,h){a=z(a);var u,c,p,d,g,y,m=r.ms,b={},_={},w={};if(s)for(B=0,C=Kt.length;B<C;B++){var k=Kt[B];if(k.el.id==i.id&&k.anim==r){k.percent!=a?(Kt.splice(B,1),p=1):c=k,i.attr(k.totalOrigin);break}}else s=+_;for(var B=0,C=r.percents.length;B<C;B++){if(r.percents[B]==a||r.percents[B]>s*r.top){a=r.percents[B],g=r.percents[B-1]||0,m=m/r.top*(a-g),d=r.percents[B+1],u=r.anim[a];break}s&&i.attr(r.anim[r.percents[B]])}if(u){if(c)c.initstatus=s,c.start=new Date-c.ms*s;else{for(var S in u)if(u[o](S)&&(I[o](S)||i.paper.customAttributes[o](S)))switch(b[S]=i.attr(S),null==b[S]&&(b[S]=j[S]),_[S]=u[S],I[S]){case T:w[S]=(_[S]-b[S])/m;break;case"colour":b[S]=e.getRGB(b[S]);var A=e.getRGB(_[S]);w[S]={r:(A.r-b[S].r)/m,g:(A.g-b[S].g)/m,b:(A.b-b[S].b)/m};break;case"path":var M=Tt(b[S],_[S]),E=M[1];for(b[S]=M[0],w[S]=[],B=0,C=b[S].length;B<C;B++){w[S][B]=[0];for(var N=1,P=b[S][B].length;N<P;N++)w[S][B][N]=(E[B][N]-b[S][B][N])/m}break;case"transform":var F=i._,R=Lt(F[S],_[S]);if(R)for(b[S]=R.from,_[S]=R.to,w[S]=[],w[S].real=!0,B=0,C=b[S].length;B<C;B++)for(w[S][B]=[b[S][B][0]],N=1,P=b[S][B].length;N<P;N++)w[S][B][N]=(_[S][B][N]-b[S][B][N])/m;else{var D=i.matrix||new Pt,q={_:{transform:F.transform},getBBox:function(){return i.getBBox(1)}};b[S]=[D.a,D.b,D.c,D.d,D.e,D.f],Et(q,_[S]),_[S]=q._.transform,w[S]=[(q.matrix.a-D.a)/m,(q.matrix.b-D.b)/m,(q.matrix.c-D.c)/m,(q.matrix.d-D.d)/m,(q.matrix.e-D.e)/m,(q.matrix.f-D.f)/m]}break;case"csv":var O=x(u[S])[v](n),V=x(b[S])[v](n);if("clip-rect"==S)for(b[S]=V,w[S]=[],B=V.length;B--;)w[S][B]=(O[B]-b[S][B])/m;_[S]=O;break;default:for(O=[][f](u[S]),V=[][f](b[S]),w[S]=[],B=i.paper.customAttributes[S].length;B--;)w[S][B]=((O[B]||0)-(V[B]||0))/m}var W=u.easing,Y=e.easing_formulas[W];if(!Y)if((Y=x(W).match(L))&&5==Y.length){var G=Y;Y=function(t){return ie(t,+G[1],+G[2],+G[3],+G[4],m)}}else Y=X;if(k={anim:r,percent:a,timestamp:y=u.start||r.start||+new Date,start:y+(r.del||0),status:0,initstatus:s||0,stop:!1,ms:m,easing:Y,from:b,diff:w,to:_,el:i,callback:u.callback,prev:g,next:d,repeat:h||r.times,origin:i.attr(),totalOrigin:l},Kt.push(k),s&&!c&&!p&&(k.stop=!0,k.start=new Date-m*s,1==Kt.length))return ee();p&&(k.start=new Date-k.ms*s),1==Kt.length&&te(ee)}t("raphael.anim.start."+i.id,i,r)}}function se(t){for(var e=0;e<Kt.length;e++)Kt[e].el.paper==t&&Kt.splice(e--,1)}Wt.animateWith=function(t,r,i,n,a,s){if(this.removed)return s&&s.call(this),this;var o=i instanceof ne?i:e.animation(i,n,a,s);ae(o,this,o.percents[0],null,this.attr());for(var l=0,h=Kt.length;l<h;l++)if(Kt[l].anim==r&&Kt[l].el==t){Kt[h-1].start=Kt[l].start;break}return this},Wt.onAnimation=function(e){return e?t.on("raphael.anim.frame."+this.id,e):t.unbind("raphael.anim.frame."+this.id),this},ne.prototype.delay=function(t){var e=new ne(this.anim,this.ms);return e.times=this.times,e.del=+t||0,e},ne.prototype.repeat=function(t){var e=new ne(this.anim,this.ms);return e.del=this.del,e.times=_.floor(w(t,0))||1,e},e.animation=function(t,r,i,n){if(t instanceof ne)return t;!e.is(i,"function")&&i||(n=n||i||null,i=null),t=Object(t),r=+r||0;var a,s,l={};for(s in t)t[o](s)&&z(s)!=s&&z(s)+"%"!=s&&(a=!0,l[s]=t[s]);if(a)return i&&(l.easing=i),n&&(l.callback=n),new ne({100:l},r);if(n){var h=0;for(var u in t){var c=F(u);t[o](u)&&c>h&&(h=c)}!t[h+="%"].callback&&(t[h].callback=n)}return new ne(t,r)},Wt.animate=function(t,r,i,n){if(this.removed)return n&&n.call(this),this;var a=t instanceof ne?t:e.animation(t,r,i,n);return ae(a,this,a.percents[0],null,this.attr()),this},Wt.setTime=function(t,e){return t&&null!=e&&this.status(t,k(e,t.ms)/t.ms),this},Wt.status=function(t,e){var r,i,n=[],a=0;if(null!=e)return ae(t,this,-1,k(e,1)),this;for(r=Kt.length;a<r;a++)if((i=Kt[a]).el.id==this.id&&(!t||i.anim==t)){if(t)return i.status;n.push({anim:i.anim,status:i.status})}return t?0:n},Wt.pause=function(e){for(var r=0;r<Kt.length;r++)Kt[r].el.id!=this.id||e&&Kt[r].anim!=e||!1!==t("raphael.anim.pause."+this.id,this,Kt[r].anim)&&(Kt[r].paused=!0);return this},Wt.resume=function(e){for(var r=0;r<Kt.length;r++)if(Kt[r].el.id==this.id&&(!e||Kt[r].anim==e)){var i=Kt[r];!1!==t("raphael.anim.resume."+this.id,this,i.anim)&&(delete i.paused,this.status(i.anim,i.status))}return this},Wt.stop=function(e){for(var r=0;r<Kt.length;r++)Kt[r].el.id!=this.id||e&&Kt[r].anim!=e||!1!==t("raphael.anim.stop."+this.id,this,Kt[r].anim)&&Kt.splice(r--,1);return this},t.on("raphael.remove",se),t.on("raphael.clear",se),Wt.toString=function(){return"Raphaël’s object"};var oe,le,he,ue,ce=function(t){if(this.items=[],this.length=0,this.type="set",t)for(var e=0,r=t.length;e<r;e++)!t[e]||t[e].constructor!=Wt.constructor&&t[e].constructor!=ce||(this[this.items.length]=this.items[this.items.length]=t[e],this.length++)},fe=ce.prototype;for(var pe in fe.push=function(){for(var t,e,r=0,i=arguments.length;r<i;r++)!(t=arguments[r])||t.constructor!=Wt.constructor&&t.constructor!=ce||(this[e=this.items.length]=this.items[e]=t,this.length++);return this},fe.pop=function(){return this.length&&delete this[this.length--],this.items.pop()},fe.forEach=function(t,e){for(var r=0,i=this.items.length;r<i;r++)if(!1===t.call(e,this.items[r],r))return this;return this},Wt)Wt[o](pe)&&(fe[pe]=function(t){return function(){var e=arguments;return this.forEach(function(r){r[t][c](r,e)})}}(pe));return fe.attr=function(t,r){if(t&&e.is(t,A)&&e.is(t[0],"object"))for(var i=0,n=t.length;i<n;i++)this.items[i].attr(t[i]);else for(var a=0,s=this.items.length;a<s;a++)this.items[a].attr(t,r);return this},fe.clear=function(){for(;this.length;)this.pop()},fe.splice=function(t,e,r){t=t<0?w(this.length+t,0):t,e=w(0,k(this.length-t,e));var i,n=[],a=[],s=[];for(i=2;i<arguments.length;i++)s.push(arguments[i]);for(i=0;i<e;i++)a.push(this[t+i]);for(;i<this.length-t;i++)n.push(this[t+i]);var o=s.length;for(i=0;i<o+n.length;i++)this.items[t+i]=this[t+i]=i<o?s[i]:n[i-o];for(i=this.items.length=this.length-=e-o;this[i];)delete this[i++];return new ce(a)},fe.exclude=function(t){for(var e=0,r=this.length;e<r;e++)if(this[e]==t)return this.splice(e,1),!0},fe.animate=function(t,r,i,n){(e.is(i,"function")||!i)&&(n=i||null);var a,s,o=this.items.length,l=o,h=this;if(!o)return this;n&&(s=function(){!--o&&n.call(h)}),i=e.is(i,"string")?i:s;var u=e.animation(t,r,i,s);for(a=this.items[--l].animate(u);l--;)this.items[l]&&!this.items[l].removed&&this.items[l].animateWith(a,u,u),this.items[l]&&!this.items[l].removed||o--;return this},fe.insertAfter=function(t){for(var e=this.items.length;e--;)this.items[e].insertAfter(t);return this},fe.getBBox=function(){for(var t=[],e=[],r=[],i=[],n=this.items.length;n--;)if(!this.items[n].removed){var a=this.items[n].getBBox();t.push(a.x),e.push(a.y),r.push(a.x+a.width),i.push(a.y+a.height)}return{x:t=k[c](0,t),y:e=k[c](0,e),x2:r=w[c](0,r),y2:i=w[c](0,i),width:r-t,height:i-e}},fe.clone=function(t){t=this.paper.set();for(var e=0,r=this.items.length;e<r;e++)t.push(this.items[e].clone());return t},fe.toString=function(){return"Raphaël‘s set"},fe.glow=function(t){var e=this.paper.set();return this.forEach(function(r,i){var n=r.glow(t);null!=n&&n.forEach(function(t,r){e.push(t)})}),e},fe.isPointInside=function(t,e){var r=!1;return this.forEach(function(i){if(i.isPointInside(t,e))return r=!0,!1}),r},e.registerFont=function(t){if(!t.face)return t;this.fonts=this.fonts||{};var e={w:t.w,face:{},glyphs:{}},r=t.face["font-family"];for(var i in t.face)t.face[o](i)&&(e.face[i]=t.face[i]);if(this.fonts[r]?this.fonts[r].push(e):this.fonts[r]=[e],!t.svg)for(var n in e.face["units-per-em"]=F(t.face["units-per-em"],10),t.glyphs)if(t.glyphs[o](n)){var a=t.glyphs[n];if(e.glyphs[n]={w:a.w,k:{},d:a.d&&"M"+a.d.replace(/[mlcxtrv]/g,function(t){return{l:"L",c:"C",x:"z",t:"m",r:"l",v:"c"}[t]||"M"})+"z"},a.k)for(var s in a.k)a[o](s)&&(e.glyphs[n].k[s]=a.k[s])}return t},i.getFont=function(t,r,i,n){if(n=n||"normal",i=i||"normal",r=+r||{normal:400,bold:700,lighter:300,bolder:800}[r]||400,e.fonts){var a,s=e.fonts[t];if(!s){var l=new RegExp("(^|\\s)"+t.replace(/[^\w\d\s+!~.:_-]/g,d)+"(\\s|$)","i");for(var h in e.fonts)if(e.fonts[o](h)&&l.test(h)){s=e.fonts[h];break}}if(s)for(var u=0,c=s.length;u<c&&((a=s[u]).face["font-weight"]!=r||a.face["font-style"]!=i&&a.face["font-style"]||a.face["font-stretch"]!=n);u++);return a}},i.print=function(t,r,i,a,s,o,l,h){o=o||"middle",l=w(k(l||0,1),-1),h=w(k(h||1,3),1);var u,c=x(i)[v](d),f=0,p=0,g=d;if(e.is(a,"string")&&(a=this.getFont(a)),a){u=(s||16)/a.face["units-per-em"];for(var y=a.face.bbox[v](n),m=+y[0],b=y[3]-y[1],_=0,B=+y[1]+("baseline"==o?b+ +a.face.descent:b/2),C=0,S=c.length;C<S;C++){if("\n"==c[C])f=0,A=0,p=0,_+=b*h;else{var T=p&&a.glyphs[c[C-1]]||{},A=a.glyphs[c[C]];f+=p?(T.w||a.w)+(T.k&&T.k[c[C]]||0)+a.w*l:0,p=1}A&&A.d&&(g+=e.transformPath(A.d,["t",f*u,_*u,"s",u,u,m,B,"t",(t-m)/u,(r-B)/u]))}}return this.path(g).attr({fill:"#000",stroke:"none"})},i.add=function(t){if(e.is(t,"array"))for(var r,i=this.set(),n=0,s=t.length;n<s;n++)r=t[n]||{},a[o](r.type)&&i.push(this[r.type]().attr(r));return i},e.format=function(t,r){var i=e.is(r,A)?[0][f](r):arguments;return t&&e.is(t,"string")&&i.length-1&&(t=t.replace(s,function(t,e){return null==i[++e]?d:i[e]})),t||d},e.fullfill=(oe=/\{([^\}]+)\}/g,le=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[('|")(.+?)\2\])(\(\))?/g,function(t,e){return String(t).replace(oe,function(t,r){return function(t,e,r){var i=r;return e.replace(le,function(t,e,r,n,a){e=e||n,i&&(e in i&&(i=i[e]),"function"==typeof i&&a&&(i=i()))}),i=(null==i||i==r?t:i)+""}(t,r,e)})}),e.ninja=function(){if(h.was)l.win.Raphael=h.is;else{window.Raphael=void 0;try{delete window.Raphael}catch(t){}}return e},e.st=fe,t.on("raphael.DOMload",function(){r=!0}),null==(he=document).readyState&&he.addEventListener&&(he.addEventListener("DOMContentLoaded",ue=function(){he.removeEventListener("DOMContentLoaded",ue,!1),he.readyState="complete"},!1),he.readyState="loading"),function t(){/in/.test(he.readyState)?setTimeout(t,9):e.eve("raphael.DOMload")}(),e}.apply(e,i))||(t.exports=n)},function(t,e,r){var i,n;i=[r(0),r(3),r(4)],void 0===(n=function(t){return t}.apply(e,i))||(t.exports=n)},function(t,e,r){var i,n,a,s,o,l,h,u,c,f,p,d,g,x;s="hasOwnProperty",o=/[\.\/]/,l=/\s*,\s*/,h=function(t,e){return t-e},u={n:{}},c=function(){for(var t=0,e=this.length;t<e;t++)if(void 0!==this[t])return this[t]},f=function(){for(var t=this.length;--t;)if(void 0!==this[t])return this[t]},p=Object.prototype.toString,d=String,g=Array.isArray||function(t){return t instanceof Array||"[object Array]"==p.call(t)},(x=function(t,e){var r,i=a,s=Array.prototype.slice.call(arguments,2),o=x.listeners(t),l=0,u=[],p={},d=[],g=n;d.firstDefined=c,d.lastDefined=f,n=t,a=0;for(var v=0,y=o.length;v<y;v++)"zIndex"in o[v]&&(u.push(o[v].zIndex),o[v].zIndex<0&&(p[o[v].zIndex]=o[v]));for(u.sort(h);u[l]<0;)if(r=p[u[l++]],d.push(r.apply(e,s)),a)return a=i,d;for(v=0;v<y;v++)if("zIndex"in(r=o[v]))if(r.zIndex==u[l]){if(d.push(r.apply(e,s)),a)break;do{if((r=p[u[++l]])&&d.push(r.apply(e,s)),a)break}while(r)}else p[r.zIndex]=r;else if(d.push(r.apply(e,s)),a)break;return a=i,n=g,d})._events=u,x.listeners=function(t){var e,r,i,n,a,s,l,h,c=g(t)?t:t.split(o),f=u,p=[f],d=[];for(n=0,a=c.length;n<a;n++){for(h=[],s=0,l=p.length;s<l;s++)for(r=[(f=p[s].n)[c[n]],f["*"]],i=2;i--;)(e=r[i])&&(h.push(e),d=d.concat(e.f||[]));p=h}return d},x.separator=function(t){t?(t="["+(t=d(t).replace(/(?=[\.\^\]\[\-])/g,"\\"))+"]",o=new RegExp(t)):o=/[\.\/]/},x.on=function(t,e){if("function"!=typeof e)return function(){};for(var r=g(t)?g(t[0])?t:[t]:d(t).split(l),i=0,n=r.length;i<n;i++)!function(t){for(var r,i=g(t)?t:d(t).split(o),n=u,a=0,s=i.length;a<s;a++)n=(n=n.n).hasOwnProperty(i[a])&&n[i[a]]||(n[i[a]]={n:{}});for(n.f=n.f||[],a=0,s=n.f.length;a<s;a++)if(n.f[a]==e){r=!0;break}!r&&n.f.push(e)}(r[i]);return function(t){+t==+t&&(e.zIndex=+t)}},x.f=function(t){var e=[].slice.call(arguments,1);return function(){x.apply(null,[t,null].concat(e).concat([].slice.call(arguments,0)))}},x.stop=function(){a=1},x.nt=function(t){var e=g(n)?n.join("."):n;return t?new RegExp("(?:\\.|\\/|^)"+t+"(?:\\.|\\/|$)").test(e):e},x.nts=function(){return g(n)?n:n.split(o)},x.off=x.unbind=function(t,e){if(t){var r=g(t)?g(t[0])?t:[t]:d(t).split(l);if(r.length>1)for(var i=0,n=r.length;i<n;i++)x.off(r[i],e);else{r=g(t)?t:d(t).split(o);var a,h,c,f,p,v=[u];for(i=0,n=r.length;i<n;i++)for(f=0;f<v.length;f+=c.length-2){if(c=[f,1],a=v[f].n,"*"!=r[i])a[r[i]]&&c.push(a[r[i]]);else for(h in a)a[s](h)&&c.push(a[h]);v.splice.apply(v,c)}for(i=0,n=v.length;i<n;i++)for(a=v[i];a.n;){if(e){if(a.f){for(f=0,p=a.f.length;f<p;f++)if(a.f[f]==e){a.f.splice(f,1);break}!a.f.length&&delete a.f}for(h in a.n)if(a.n[s](h)&&a.n[h].f){var y=a.n[h].f;for(f=0,p=y.length;f<p;f++)if(y[f]==e){y.splice(f,1);break}!y.length&&delete a.n[h].f}}else for(h in delete a.f,a.n)a.n[s](h)&&a.n[h].f&&delete a.n[h].f;a=a.n}}}else x._events=u={n:{}}},x.once=function(t,e){var r=function(){return x.off(t,r),e.apply(this,arguments)};return x.on(t,r)},x.version="0.5.0",x.toString=function(){return"You are running Eve 0.5.0"},t.exports?t.exports=x:void 0===(i=function(){return x}.apply(e,[]))||(t.exports=i)},function(t,e,r){var i,n;i=[r(0)],void 0===(n=function(t){if(!t||t.svg){var e="hasOwnProperty",r=String,i=parseFloat,n=parseInt,a=Math,s=a.max,o=a.abs,l=a.pow,h=/[, ]+/,u=t.eve,c="",f=" ",p="http://www.w3.org/1999/xlink",d={block:"M5,0 0,2.5 5,5z",classic:"M5,0 0,2.5 5,5 3.5,3 3.5,2z",diamond:"M2.5,0 5,2.5 2.5,5 0,2.5z",open:"M6,1 1,3.5 6,6",oval:"M2.5,0A2.5,2.5,0,0,1,2.5,5 2.5,2.5,0,0,1,2.5,0z"},g={};t.toString=function(){return"Your browser supports SVG.\nYou are running Raphaël "+this.version};var x=function(i,n){if(n)for(var a in"string"==typeof i&&(i=x(i)),n)n[e](a)&&("xlink:"==a.substring(0,6)?i.setAttributeNS(p,a.substring(6),r(n[a])):i.setAttribute(a,r(n[a])));else(i=t._g.doc.createElementNS("http://www.w3.org/2000/svg",i)).style&&(i.style.webkitTapHighlightColor="rgba(0,0,0,0)");return i},v=function(e,n){var h="linear",u=e.id+n,f=.5,p=.5,d=e.node,g=e.paper,v=d.style,m=t._g.doc.getElementById(u);if(!m){if(n=(n=r(n).replace(t._radial_gradient,function(t,e,r){if(h="radial",e&&r){f=i(e);var n=2*((p=i(r))>.5)-1;l(f-.5,2)+l(p-.5,2)>.25&&(p=a.sqrt(.25-l(f-.5,2))*n+.5)&&.5!=p&&(p=p.toFixed(5)-1e-5*n)}return c})).split(/\s*\-\s*/),"linear"==h){var b=n.shift();if(b=-i(b),isNaN(b))return null;var _=[0,0,a.cos(t.rad(b)),a.sin(t.rad(b))],w=1/(s(o(_[2]),o(_[3]))||1);_[2]*=w,_[3]*=w,_[2]<0&&(_[0]=-_[2],_[2]=0),_[3]<0&&(_[1]=-_[3],_[3]=0)}var k=t._parseDots(n);if(!k)return null;if(u=u.replace(/[\(\)\s,\xb0#]/g,"_"),e.gradient&&u!=e.gradient.id&&(g.defs.removeChild(e.gradient),delete e.gradient),!e.gradient){m=x(h+"Gradient",{id:u}),e.gradient=m,x(m,"radial"==h?{fx:f,fy:p}:{x1:_[0],y1:_[1],x2:_[2],y2:_[3],gradientTransform:e.matrix.invert()}),g.defs.appendChild(m);for(var B=0,C=k.length;B<C;B++)m.appendChild(x("stop",{offset:k[B].offset?k[B].offset:B?"100%":"0%","stop-color":k[B].color||"#fff","stop-opacity":isFinite(k[B].opacity)?k[B].opacity:1}))}}return x(d,{fill:y(u),opacity:1,"fill-opacity":1}),v.fill=c,v.opacity=1,v.fillOpacity=1,1},y=function(t){if((e=document.documentMode)&&(9===e||10===e))return"url('#"+t+"')";var e,r=document.location;return"url('"+(r.protocol+"//"+r.host+r.pathname+r.search)+"#"+t+"')"},m=function(t){var e=t.getBBox(1);x(t.pattern,{patternTransform:t.matrix.invert()+" translate("+e.x+","+e.y+")"})},b=function(i,n,a){if("path"==i.type){for(var s,o,l,h,u,f=r(n).toLowerCase().split("-"),p=i.paper,v=a?"end":"start",y=i.node,m=i.attrs,b=m["stroke-width"],_=f.length,w="classic",k=3,B=3,C=5;_--;)switch(f[_]){case"block":case"classic":case"oval":case"diamond":case"open":case"none":w=f[_];break;case"wide":B=5;break;case"narrow":B=2;break;case"long":k=5;break;case"short":k=2}if("open"==w?(k+=2,B+=2,C+=2,l=1,h=a?4:1,u={fill:"none",stroke:m.stroke}):(h=l=k/2,u={fill:m.stroke,stroke:"none"}),i._.arrows?a?(i._.arrows.endPath&&g[i._.arrows.endPath]--,i._.arrows.endMarker&&g[i._.arrows.endMarker]--):(i._.arrows.startPath&&g[i._.arrows.startPath]--,i._.arrows.startMarker&&g[i._.arrows.startMarker]--):i._.arrows={},"none"!=w){var S="raphael-marker-"+w,T="raphael-marker-"+v+w+k+B+"-obj"+i.id;t._g.doc.getElementById(S)?g[S]++:(p.defs.appendChild(x(x("path"),{"stroke-linecap":"round",d:d[w],id:S})),g[S]=1);var A,M=t._g.doc.getElementById(T);M?(g[T]++,A=M.getElementsByTagName("use")[0]):(M=x(x("marker"),{id:T,markerHeight:B,markerWidth:k,orient:"auto",refX:h,refY:B/2}),A=x(x("use"),{"xlink:href":"#"+S,transform:(a?"rotate(180 "+k/2+" "+B/2+") ":c)+"scale("+k/C+","+B/C+")","stroke-width":(1/((k/C+B/C)/2)).toFixed(4)}),M.appendChild(A),p.defs.appendChild(M),g[T]=1),x(A,u);var E=l*("diamond"!=w&&"oval"!=w);a?(s=i._.arrows.startdx*b||0,o=t.getTotalLength(m.path)-E*b):(s=E*b,o=t.getTotalLength(m.path)-(i._.arrows.enddx*b||0)),(u={})["marker-"+v]="url(#"+T+")",(o||s)&&(u.d=t.getSubpath(m.path,s,o)),x(y,u),i._.arrows[v+"Path"]=S,i._.arrows[v+"Marker"]=T,i._.arrows[v+"dx"]=E,i._.arrows[v+"Type"]=w,i._.arrows[v+"String"]=n}else a?(s=i._.arrows.startdx*b||0,o=t.getTotalLength(m.path)-s):(s=0,o=t.getTotalLength(m.path)-(i._.arrows.enddx*b||0)),i._.arrows[v+"Path"]&&x(y,{d:t.getSubpath(m.path,s,o)}),delete i._.arrows[v+"Path"],delete i._.arrows[v+"Marker"],delete i._.arrows[v+"dx"],delete i._.arrows[v+"Type"],delete i._.arrows[v+"String"];for(u in g)if(g[e](u)&&!g[u]){var N=t._g.doc.getElementById(u);N&&N.parentNode.removeChild(N)}}},_={"-":[3,1],".":[1,1],"-.":[3,1,1,1],"-..":[3,1,1,1,1,1],". ":[1,3],"- ":[4,3],"--":[8,3],"- .":[4,3,1,3],"--.":[8,3,1,3],"--..":[8,3,1,3,1,3]},w=function(t,e,i){if(e=_[r(e).toLowerCase()]){for(var n=t.attrs["stroke-width"]||"1",a={round:n,square:n,butt:0}[t.attrs["stroke-linecap"]||i["stroke-linecap"]]||0,s=[],o=e.length;o--;)s[o]=e[o]*n+(o%2?1:-1)*a;x(t.node,{"stroke-dasharray":s.join(",")})}else x(t.node,{"stroke-dasharray":"none"})},k=function(i,a){var l=i.node,u=i.attrs,f=l.style.visibility;for(var d in l.style.visibility="hidden",a)if(a[e](d)){if(!t._availableAttrs[e](d))continue;var g=a[d];switch(u[d]=g,d){case"blur":i.blur(g);break;case"title":var y=l.getElementsByTagName("title");if(y.length&&(y=y[0]))y.firstChild.nodeValue=g;else{y=x("title");var _=t._g.doc.createTextNode(g);y.appendChild(_),l.appendChild(y)}break;case"href":case"target":var k=l.parentNode;if("a"!=k.tagName.toLowerCase()){var C=x("a");k.insertBefore(C,l),C.appendChild(l),k=C}"target"==d?k.setAttributeNS(p,"show","blank"==g?"new":g):k.setAttributeNS(p,d,g);break;case"cursor":l.style.cursor=g;break;case"transform":i.transform(g);break;case"arrow-start":b(i,g);break;case"arrow-end":b(i,g,1);break;case"clip-rect":var S=r(g).split(h);if(4==S.length){i.clip&&i.clip.parentNode.parentNode.removeChild(i.clip.parentNode);var T=x("clipPath"),A=x("rect");T.id=t.createUUID(),x(A,{x:S[0],y:S[1],width:S[2],height:S[3]}),T.appendChild(A),i.paper.defs.appendChild(T),x(l,{"clip-path":"url(#"+T.id+")"}),i.clip=A}if(!g){var M=l.getAttribute("clip-path");if(M){var E=t._g.doc.getElementById(M.replace(/(^url\(#|\)$)/g,c));E&&E.parentNode.removeChild(E),x(l,{"clip-path":c}),delete i.clip}}break;case"path":"path"==i.type&&(x(l,{d:g?u.path=t._pathToAbsolute(g):"M0,0"}),i._.dirty=1,i._.arrows&&("startString"in i._.arrows&&b(i,i._.arrows.startString),"endString"in i._.arrows&&b(i,i._.arrows.endString,1)));break;case"width":if(l.setAttribute(d,g),i._.dirty=1,!u.fx)break;d="x",g=u.x;case"x":u.fx&&(g=-u.x-(u.width||0));case"rx":if("rx"==d&&"rect"==i.type)break;case"cx":l.setAttribute(d,g),i.pattern&&m(i),i._.dirty=1;break;case"height":if(l.setAttribute(d,g),i._.dirty=1,!u.fy)break;d="y",g=u.y;case"y":u.fy&&(g=-u.y-(u.height||0));case"ry":if("ry"==d&&"rect"==i.type)break;case"cy":l.setAttribute(d,g),i.pattern&&m(i),i._.dirty=1;break;case"r":"rect"==i.type?x(l,{rx:g,ry:g}):l.setAttribute(d,g),i._.dirty=1;break;case"src":"image"==i.type&&l.setAttributeNS(p,"href",g);break;case"stroke-width":1==i._.sx&&1==i._.sy||(g/=s(o(i._.sx),o(i._.sy))||1),l.setAttribute(d,g),u["stroke-dasharray"]&&w(i,u["stroke-dasharray"],a),i._.arrows&&("startString"in i._.arrows&&b(i,i._.arrows.startString),"endString"in i._.arrows&&b(i,i._.arrows.endString,1));break;case"stroke-dasharray":w(i,g,a);break;case"fill":var N=r(g).match(t._ISURL);if(N){T=x("pattern");var L=x("image");T.id=t.createUUID(),x(T,{x:0,y:0,patternUnits:"userSpaceOnUse",height:1,width:1}),x(L,{x:0,y:0,"xlink:href":N[1]}),T.appendChild(L),function(e){t._preload(N[1],function(){var t=this.offsetWidth,r=this.offsetHeight;x(e,{width:t,height:r}),x(L,{width:t,height:r})})}(T),i.paper.defs.appendChild(T),x(l,{fill:"url(#"+T.id+")"}),i.pattern=T,i.pattern&&m(i);break}var P=t.getRGB(g);if(P.error){if(("circle"==i.type||"ellipse"==i.type||"r"!=r(g).charAt())&&v(i,g)){if("opacity"in u||"fill-opacity"in u){var z=t._g.doc.getElementById(l.getAttribute("fill").replace(/^url\(#|\)$/g,c));if(z){var F=z.getElementsByTagName("stop");x(F[F.length-1],{"stop-opacity":("opacity"in u?u.opacity:1)*("fill-opacity"in u?u["fill-opacity"]:1)})}}u.gradient=g,u.fill="none";break}}else delete a.gradient,delete u.gradient,!t.is(u.opacity,"undefined")&&t.is(a.opacity,"undefined")&&x(l,{opacity:u.opacity}),!t.is(u["fill-opacity"],"undefined")&&t.is(a["fill-opacity"],"undefined")&&x(l,{"fill-opacity":u["fill-opacity"]});P[e]("opacity")&&x(l,{"fill-opacity":P.opacity>1?P.opacity/100:P.opacity});case"stroke":P=t.getRGB(g),l.setAttribute(d,P.hex),"stroke"==d&&P[e]("opacity")&&x(l,{"stroke-opacity":P.opacity>1?P.opacity/100:P.opacity}),"stroke"==d&&i._.arrows&&("startString"in i._.arrows&&b(i,i._.arrows.startString),"endString"in i._.arrows&&b(i,i._.arrows.endString,1));break;case"gradient":("circle"==i.type||"ellipse"==i.type||"r"!=r(g).charAt())&&v(i,g);break;case"opacity":u.gradient&&!u[e]("stroke-opacity")&&x(l,{"stroke-opacity":g>1?g/100:g});case"fill-opacity":if(u.gradient){(z=t._g.doc.getElementById(l.getAttribute("fill").replace(/^url\(#|\)$/g,c)))&&(F=z.getElementsByTagName("stop"),x(F[F.length-1],{"stop-opacity":g}));break}default:"font-size"==d&&(g=n(g,10)+"px");var R=d.replace(/(\-.)/g,function(t){return t.substring(1).toUpperCase()});l.style[R]=g,i._.dirty=1,l.setAttribute(d,g)}}B(i,a),l.style.visibility=f},B=function(i,a){if("text"==i.type&&(a[e]("text")||a[e]("font")||a[e]("font-size")||a[e]("x")||a[e]("y"))){var s=i.attrs,o=i.node,l=o.firstChild?n(t._g.doc.defaultView.getComputedStyle(o.firstChild,c).getPropertyValue("font-size"),10):10;if(a[e]("text")){for(s.text=a.text;o.firstChild;)o.removeChild(o.firstChild);for(var h,u=r(a.text).split("\n"),f=[],p=0,d=u.length;p<d;p++)h=x("tspan"),p&&x(h,{dy:1.2*l,x:s.x}),h.appendChild(t._g.doc.createTextNode(u[p])),o.appendChild(h),f[p]=h}else for(p=0,d=(f=o.getElementsByTagName("tspan")).length;p<d;p++)p?x(f[p],{dy:1.2*l,x:s.x}):x(f[0],{dy:0});x(o,{x:s.x,y:s.y}),i._.dirty=1;var g=i._getBBox(),v=s.y-(g.y+g.height/2);v&&t.is(v,"finite")&&x(f[0],{dy:v})}},C=function(t){return t.parentNode&&"a"===t.parentNode.tagName.toLowerCase()?t.parentNode:t},S=function(e,r){this[0]=this.node=e,e.raphael=!0,this.id=("0000"+(Math.random()*Math.pow(36,5)<<0).toString(36)).slice(-5),e.raphaelid=this.id,this.matrix=t.matrix(),this.realPath=null,this.paper=r,this.attrs=this.attrs||{},this._={transform:[],sx:1,sy:1,deg:0,dx:0,dy:0,dirty:1},!r.bottom&&(r.bottom=this),this.prev=r.top,r.top&&(r.top.next=this),r.top=this,this.next=null},T=t.el;S.prototype=T,T.constructor=S,t._engine.path=function(t,e){var r=x("path");e.canvas&&e.canvas.appendChild(r);var i=new S(r,e);return i.type="path",k(i,{fill:"none",stroke:"#000",path:t}),i},T.rotate=function(t,e,n){if(this.removed)return this;if((t=r(t).split(h)).length-1&&(e=i(t[1]),n=i(t[2])),t=i(t[0]),null==n&&(e=n),null==e||null==n){var a=this.getBBox(1);e=a.x+a.width/2,n=a.y+a.height/2}return this.transform(this._.transform.concat([["r",t,e,n]])),this},T.scale=function(t,e,n,a){if(this.removed)return this;if((t=r(t).split(h)).length-1&&(e=i(t[1]),n=i(t[2]),a=i(t[3])),t=i(t[0]),null==e&&(e=t),null==a&&(n=a),null==n||null==a)var s=this.getBBox(1);return n=null==n?s.x+s.width/2:n,a=null==a?s.y+s.height/2:a,this.transform(this._.transform.concat([["s",t,e,n,a]])),this},T.translate=function(t,e){return this.removed?this:((t=r(t).split(h)).length-1&&(e=i(t[1])),t=i(t[0])||0,e=+e||0,this.transform(this._.transform.concat([["t",t,e]])),this)},T.transform=function(r){var i=this._;if(null==r)return i.transform;if(t._extractTransform(this,r),this.clip&&x(this.clip,{transform:this.matrix.invert()}),this.pattern&&m(this),this.node&&x(this.node,{transform:this.matrix}),1!=i.sx||1!=i.sy){var n=this.attrs[e]("stroke-width")?this.attrs["stroke-width"]:1;this.attr({"stroke-width":n})}return this},T.hide=function(){return this.removed||(this.node.style.display="none"),this},T.show=function(){return this.removed||(this.node.style.display=""),this},T.remove=function(){var e=C(this.node);if(!this.removed&&e.parentNode){var r=this.paper;for(var i in r.__set__&&r.__set__.exclude(this),u.unbind("raphael.*.*."+this.id),this.gradient&&r.defs.removeChild(this.gradient),t._tear(this,r),e.parentNode.removeChild(e),this.removeData(),this)this[i]="function"==typeof this[i]?t._removedFactory(i):null;this.removed=!0}},T._getBBox=function(){if("none"==this.node.style.display){this.show();var t=!0}var e,r=!1;this.paper.canvas.parentElement?e=this.paper.canvas.parentElement.style:this.paper.canvas.parentNode&&(e=this.paper.canvas.parentNode.style),e&&"none"==e.display&&(r=!0,e.display="");var i={};try{i=this.node.getBBox()}catch(t){i={x:this.node.clientLeft,y:this.node.clientTop,width:this.node.clientWidth,height:this.node.clientHeight}}finally{i=i||{},r&&(e.display="none")}return t&&this.hide(),i},T.attr=function(r,i){if(this.removed)return this;if(null==r){var n={};for(var a in this.attrs)this.attrs[e](a)&&(n[a]=this.attrs[a]);return n.gradient&&"none"==n.fill&&(n.fill=n.gradient)&&delete n.gradient,n.transform=this._.transform,n}if(null==i&&t.is(r,"string")){if("fill"==r&&"none"==this.attrs.fill&&this.attrs.gradient)return this.attrs.gradient;if("transform"==r)return this._.transform;for(var s=r.split(h),o={},l=0,c=s.length;l<c;l++)(r=s[l])in this.attrs?o[r]=this.attrs[r]:t.is(this.paper.customAttributes[r],"function")?o[r]=this.paper.customAttributes[r].def:o[r]=t._availableAttrs[r];return c-1?o:o[s[0]]}if(null==i&&t.is(r,"array")){for(o={},l=0,c=r.length;l<c;l++)o[r[l]]=this.attr(r[l]);return o}if(null!=i){var f={};f[r]=i}else null!=r&&t.is(r,"object")&&(f=r);for(var p in f)u("raphael.attr."+p+"."+this.id,this,f[p]);for(p in this.paper.customAttributes)if(this.paper.customAttributes[e](p)&&f[e](p)&&t.is(this.paper.customAttributes[p],"function")){var d=this.paper.customAttributes[p].apply(this,[].concat(f[p]));for(var g in this.attrs[p]=f[p],d)d[e](g)&&(f[g]=d[g])}return k(this,f),this},T.toFront=function(){if(this.removed)return this;var e=C(this.node);e.parentNode.appendChild(e);var r=this.paper;return r.top!=this&&t._tofront(this,r),this},T.toBack=function(){if(this.removed)return this;var e=C(this.node),r=e.parentNode;r.insertBefore(e,r.firstChild),t._toback(this,this.paper);this.paper;return this},T.insertAfter=function(e){if(this.removed||!e)return this;var r=C(this.node),i=C(e.node||e[e.length-1].node);return i.nextSibling?i.parentNode.insertBefore(r,i.nextSibling):i.parentNode.appendChild(r),t._insertafter(this,e,this.paper),this},T.insertBefore=function(e){if(this.removed||!e)return this;var r=C(this.node),i=C(e.node||e[0].node);return i.parentNode.insertBefore(r,i),t._insertbefore(this,e,this.paper),this},T.blur=function(e){var r=this;if(0!=+e){var i=x("filter"),n=x("feGaussianBlur");r.attrs.blur=e,i.id=t.createUUID(),x(n,{stdDeviation:+e||1.5}),i.appendChild(n),r.paper.defs.appendChild(i),r._blur=i,x(r.node,{filter:"url(#"+i.id+")"})}else r._blur&&(r._blur.parentNode.removeChild(r._blur),delete r._blur,delete r.attrs.blur),r.node.removeAttribute("filter");return r},t._engine.circle=function(t,e,r,i){var n=x("circle");t.canvas&&t.canvas.appendChild(n);var a=new S(n,t);return a.attrs={cx:e,cy:r,r:i,fill:"none",stroke:"#000"},a.type="circle",x(n,a.attrs),a},t._engine.rect=function(t,e,r,i,n,a){var s=x("rect");t.canvas&&t.canvas.appendChild(s);var o=new S(s,t);return o.attrs={x:e,y:r,width:i,height:n,rx:a||0,ry:a||0,fill:"none",stroke:"#000"},o.type="rect",x(s,o.attrs),o},t._engine.ellipse=function(t,e,r,i,n){var a=x("ellipse");t.canvas&&t.canvas.appendChild(a);var s=new S(a,t);return s.attrs={cx:e,cy:r,rx:i,ry:n,fill:"none",stroke:"#000"},s.type="ellipse",x(a,s.attrs),s},t._engine.image=function(t,e,r,i,n,a){var s=x("image");x(s,{x:r,y:i,width:n,height:a,preserveAspectRatio:"none"}),s.setAttributeNS(p,"href",e),t.canvas&&t.canvas.appendChild(s);var o=new S(s,t);return o.attrs={x:r,y:i,width:n,height:a,src:e},o.type="image",o},t._engine.text=function(e,r,i,n){var a=x("text");e.canvas&&e.canvas.appendChild(a);var s=new S(a,e);return s.attrs={x:r,y:i,"text-anchor":"middle",text:n,"font-family":t._availableAttrs["font-family"],"font-size":t._availableAttrs["font-size"],stroke:"none",fill:"#000"},s.type="text",k(s,s.attrs),s},t._engine.setSize=function(t,e){return this.width=t||this.width,this.height=e||this.height,this.canvas.setAttribute("width",this.width),this.canvas.setAttribute("height",this.height),this._viewBox&&this.setViewBox.apply(this,this._viewBox),this},t._engine.create=function(){var e=t._getContainer.apply(0,arguments),r=e&&e.container;if(!r)throw new Error("SVG container not found.");var i,n=e.x,a=e.y,s=e.width,o=e.height,l=x("svg"),h="overflow:hidden;";return n=n||0,a=a||0,x(l,{height:o=o||342,version:1.1,width:s=s||512,xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink"}),1==r?(l.style.cssText=h+"position:absolute;left:"+n+"px;top:"+a+"px",t._g.doc.body.appendChild(l),i=1):(l.style.cssText=h+"position:relative",r.firstChild?r.insertBefore(l,r.firstChild):r.appendChild(l)),(r=new t._Paper).width=s,r.height=o,r.canvas=l,r.clear(),r._left=r._top=0,i&&(r.renderfix=function(){}),r.renderfix(),r},t._engine.setViewBox=function(t,e,r,i,n){u("raphael.setViewBox",this,this._viewBox,[t,e,r,i,n]);var a,o,l=this.getSize(),h=s(r/l.width,i/l.height),c=this.top,p=n?"xMidYMid meet":"xMinYMin";for(null==t?(this._vbSize&&(h=1),delete this._vbSize,a="0 0 "+this.width+f+this.height):(this._vbSize=h,a=t+f+e+f+r+f+i),x(this.canvas,{viewBox:a,preserveAspectRatio:p});h&&c;)o="stroke-width"in c.attrs?c.attrs["stroke-width"]:1,c.attr({"stroke-width":o}),c._.dirty=1,c._.dirtyT=1,c=c.prev;return this._viewBox=[t,e,r,i,!!n],this},t.prototype.renderfix=function(){var t,e=this.canvas,r=e.style;try{t=e.getScreenCTM()||e.createSVGMatrix()}catch(r){t=e.createSVGMatrix()}var i=-t.e%1,n=-t.f%1;(i||n)&&(i&&(this._left=(this._left+i)%1,r.left=this._left+"px"),n&&(this._top=(this._top+n)%1,r.top=this._top+"px"))},t.prototype.clear=function(){t.eve("raphael.clear",this);for(var e=this.canvas;e.firstChild;)e.removeChild(e.firstChild);this.bottom=this.top=null,(this.desc=x("desc")).appendChild(t._g.doc.createTextNode("Created with Raphaël "+t.version)),e.appendChild(this.desc),e.appendChild(this.defs=x("defs"))},t.prototype.remove=function(){for(var e in u("raphael.remove",this),this.canvas.parentNode&&this.canvas.parentNode.removeChild(this.canvas),this)this[e]="function"==typeof this[e]?t._removedFactory(e):null};var A=t.st;for(var M in T)T[e](M)&&!A[e](M)&&(A[M]=function(t){return function(){var e=arguments;return this.forEach(function(r){r[t].apply(r,e)})}}(M))}}.apply(e,i))||(t.exports=n)},function(t,e,r){var i,n;i=[r(0)],void 0===(n=function(t){if(!t||t.vml){var e="hasOwnProperty",r=String,i=parseFloat,n=Math,a=n.round,s=n.max,o=n.min,l=n.abs,h=/[, ]+/,u=t.eve,c=" ",f="",p={M:"m",L:"l",C:"c",Z:"x",m:"t",l:"r",c:"v",z:"x"},d=/([clmz]),?([^clmz]*)/gi,g=/ progid:\S+Blur\([^\)]+\)/g,x=/-?[^,\s-]+/g,v="position:absolute;left:0;top:0;width:1px;height:1px;behavior:url(#default#VML)",y=21600,m={path:1,rect:1,image:1},b={circle:1,ellipse:1},_=function(e,r,i){var n=t.matrix();return n.rotate(-e,.5,.5),{dx:n.x(r,i),dy:n.y(r,i)}},w=function(t,e,r,i,n,a){var s=t._,o=t.matrix,h=s.fillpos,u=t.node,f=u.style,p=1,d="",g=y/e,x=y/r;if(f.visibility="hidden",e&&r){if(u.coordsize=l(g)+c+l(x),f.rotation=a*(e*r<0?-1:1),a){var v=_(a,i,n);i=v.dx,n=v.dy}if(e<0&&(d+="x"),r<0&&(d+=" y")&&(p=-1),f.flip=d,u.coordorigin=i*-g+c+n*-x,h||s.fillsize){var m=u.getElementsByTagName("fill");m=m&&m[0],u.removeChild(m),h&&(v=_(a,o.x(h[0],h[1]),o.y(h[0],h[1])),m.position=v.dx*p+c+v.dy*p),s.fillsize&&(m.size=s.fillsize[0]*l(e)+c+s.fillsize[1]*l(r)),u.appendChild(m)}f.visibility="visible"}};t.toString=function(){return"Your browser doesn’t support SVG. Falling down to VML.\nYou are running Raphaël "+this.version};var k,B=function(t,e,i){for(var n=r(e).toLowerCase().split("-"),a=i?"end":"start",s=n.length,o="classic",l="medium",h="medium";s--;)switch(n[s]){case"block":case"classic":case"oval":case"diamond":case"open":case"none":o=n[s];break;case"wide":case"narrow":h=n[s];break;case"long":case"short":l=n[s]}var u=t.node.getElementsByTagName("stroke")[0];u[a+"arrow"]=o,u[a+"arrowlength"]=l,u[a+"arrowwidth"]=h},C=function(n,l){n.attrs=n.attrs||{};var u=n.node,g=n.attrs,v=u.style,_=m[n.type]&&(l.x!=g.x||l.y!=g.y||l.width!=g.width||l.height!=g.height||l.cx!=g.cx||l.cy!=g.cy||l.rx!=g.rx||l.ry!=g.ry||l.r!=g.r),C=b[n.type]&&(g.cx!=l.cx||g.cy!=l.cy||g.r!=l.r||g.rx!=l.rx||g.ry!=l.ry),T=n;for(var A in l)l[e](A)&&(g[A]=l[A]);if(_&&(g.path=t._getPath[n.type](n),n._.dirty=1),l.href&&(u.href=l.href),l.title&&(u.title=l.title),l.target&&(u.target=l.target),l.cursor&&(v.cursor=l.cursor),"blur"in l&&n.blur(l.blur),(l.path&&"path"==n.type||_)&&(u.path=function(e){var i=/[ahqstv]/gi,n=t._pathToAbsolute;if(r(e).match(i)&&(n=t._path2curve),i=/[clmz]/g,n==t._pathToAbsolute&&!r(e).match(i)){var s=r(e).replace(d,function(t,e,r){var i=[],n="m"==e.toLowerCase(),s=p[e];return r.replace(x,function(t){n&&2==i.length&&(s+=i+p["m"==e?"l":"L"],i=[]),i.push(a(t*y))}),s+i});return s}var o,l,h=n(e);s=[];for(var u=0,g=h.length;u<g;u++){o=h[u],"z"==(l=h[u][0].toLowerCase())&&(l="x");for(var v=1,m=o.length;v<m;v++)l+=a(o[v]*y)+(v!=m-1?",":f);s.push(l)}return s.join(c)}(~r(g.path).toLowerCase().indexOf("r")?t._pathToAbsolute(g.path):g.path),n._.dirty=1,"image"==n.type&&(n._.fillpos=[g.x,g.y],n._.fillsize=[g.width,g.height],w(n,1,1,0,0,0))),"transform"in l&&n.transform(l.transform),C){var M=+g.cx,E=+g.cy,N=+g.rx||+g.r||0,L=+g.ry||+g.r||0;u.path=t.format("ar{0},{1},{2},{3},{4},{1},{4},{1}x",a((M-N)*y),a((E-L)*y),a((M+N)*y),a((E+L)*y),a(M*y)),n._.dirty=1}if("clip-rect"in l){var P=r(l["clip-rect"]).split(h);if(4==P.length){P[2]=+P[2]+ +P[0],P[3]=+P[3]+ +P[1];var z=u.clipRect||t._g.doc.createElement("div"),F=z.style;F.clip=t.format("rect({1}px {2}px {3}px {0}px)",P),u.clipRect||(F.position="absolute",F.top=0,F.left=0,F.width=n.paper.width+"px",F.height=n.paper.height+"px",u.parentNode.insertBefore(z,u),z.appendChild(u),u.clipRect=z)}l["clip-rect"]||u.clipRect&&(u.clipRect.style.clip="auto")}if(n.textpath){var R=n.textpath.style;l.font&&(R.font=l.font),l["font-family"]&&(R.fontFamily='"'+l["font-family"].split(",")[0].replace(/^['"]+|['"]+$/g,f)+'"'),l["font-size"]&&(R.fontSize=l["font-size"]),l["font-weight"]&&(R.fontWeight=l["font-weight"]),l["font-style"]&&(R.fontStyle=l["font-style"])}if("arrow-start"in l&&B(T,l["arrow-start"]),"arrow-end"in l&&B(T,l["arrow-end"],1),null!=l.opacity||null!=l.fill||null!=l.src||null!=l.stroke||null!=l["stroke-width"]||null!=l["stroke-opacity"]||null!=l["fill-opacity"]||null!=l["stroke-dasharray"]||null!=l["stroke-miterlimit"]||null!=l["stroke-linejoin"]||null!=l["stroke-linecap"]){var j=u.getElementsByTagName("fill");if(!(j=j&&j[0])&&(j=k("fill")),"image"==n.type&&l.src&&(j.src=l.src),l.fill&&(j.on=!0),null!=j.on&&"none"!=l.fill&&null!==l.fill||(j.on=!1),j.on&&l.fill){var I=r(l.fill).match(t._ISURL);if(I){j.parentNode==u&&u.removeChild(j),j.rotate=!0,j.src=I[1],j.type="tile";var D=n.getBBox(1);j.position=D.x+c+D.y,n._.fillpos=[D.x,D.y],t._preload(I[1],function(){n._.fillsize=[this.offsetWidth,this.offsetHeight]})}else j.color=t.getRGB(l.fill).hex,j.src=f,j.type="solid",t.getRGB(l.fill).error&&(T.type in{circle:1,ellipse:1}||"r"!=r(l.fill).charAt())&&S(T,l.fill,j)&&(g.fill="none",g.gradient=l.fill,j.rotate=!1)}if("fill-opacity"in l||"opacity"in l){var q=((+g["fill-opacity"]+1||2)-1)*((+g.opacity+1||2)-1)*((+t.getRGB(l.fill).o+1||2)-1);q=o(s(q,0),1),j.opacity=q,j.src&&(j.color="none")}u.appendChild(j);var O=u.getElementsByTagName("stroke")&&u.getElementsByTagName("stroke")[0],V=!1;!O&&(V=O=k("stroke")),(l.stroke&&"none"!=l.stroke||l["stroke-width"]||null!=l["stroke-opacity"]||l["stroke-dasharray"]||l["stroke-miterlimit"]||l["stroke-linejoin"]||l["stroke-linecap"])&&(O.on=!0),("none"==l.stroke||null===l.stroke||null==O.on||0==l.stroke||0==l["stroke-width"])&&(O.on=!1);var W=t.getRGB(l.stroke);O.on&&l.stroke&&(O.color=W.hex),q=((+g["stroke-opacity"]+1||2)-1)*((+g.opacity+1||2)-1)*((+W.o+1||2)-1);var Y=.75*(i(l["stroke-width"])||1);if(q=o(s(q,0),1),null==l["stroke-width"]&&(Y=g["stroke-width"]),l["stroke-width"]&&(O.weight=Y),Y&&Y<1&&(q*=Y)&&(O.weight=1),O.opacity=q,l["stroke-linejoin"]&&(O.joinstyle=l["stroke-linejoin"]||"miter"),O.miterlimit=l["stroke-miterlimit"]||8,l["stroke-linecap"]&&(O.endcap="butt"==l["stroke-linecap"]?"flat":"square"==l["stroke-linecap"]?"square":"round"),"stroke-dasharray"in l){var G={"-":"shortdash",".":"shortdot","-.":"shortdashdot","-..":"shortdashdotdot",". ":"dot","- ":"dash","--":"longdash","- .":"dashdot","--.":"longdashdot","--..":"longdashdotdot"};O.dashstyle=G[e](l["stroke-dasharray"])?G[l["stroke-dasharray"]]:f}V&&u.appendChild(O)}if("text"==T.type){T.paper.canvas.style.display=f;var H=T.paper.span,X=g.font&&g.font.match(/\d+(?:\.\d*)?(?=px)/);v=H.style,g.font&&(v.font=g.font),g["font-family"]&&(v.fontFamily=g["font-family"]),g["font-weight"]&&(v.fontWeight=g["font-weight"]),g["font-style"]&&(v.fontStyle=g["font-style"]),X=i(g["font-size"]||X&&X[0])||10,v.fontSize=100*X+"px",T.textpath.string&&(H.innerHTML=r(T.textpath.string).replace(/</g,"<").replace(/&/g,"&").replace(/\n/g,"<br>"));var U=H.getBoundingClientRect();T.W=g.w=(U.right-U.left)/100,T.H=g.h=(U.bottom-U.top)/100,T.X=g.x,T.Y=g.y+T.H/2,("x"in l||"y"in l)&&(T.path.v=t.format("m{0},{1}l{2},{1}",a(g.x*y),a(g.y*y),a(g.x*y)+1));for(var $=["x","y","text","font","font-family","font-weight","font-style","font-size"],Z=0,Q=$.length;Z<Q;Z++)if($[Z]in l){T._.dirty=1;break}switch(g["text-anchor"]){case"start":T.textpath.style["v-text-align"]="left",T.bbx=T.W/2;break;case"end":T.textpath.style["v-text-align"]="right",T.bbx=-T.W/2;break;default:T.textpath.style["v-text-align"]="center",T.bbx=0}T.textpath.style["v-text-kern"]=!0}},S=function(e,a,s){e.attrs=e.attrs||{};e.attrs;var o=Math.pow,l="linear",h=".5 .5";if(e.attrs.gradient=a,a=(a=r(a).replace(t._radial_gradient,function(t,e,r){return l="radial",e&&r&&(e=i(e),r=i(r),o(e-.5,2)+o(r-.5,2)>.25&&(r=n.sqrt(.25-o(e-.5,2))*(2*(r>.5)-1)+.5),h=e+c+r),f})).split(/\s*\-\s*/),"linear"==l){var u=a.shift();if(u=-i(u),isNaN(u))return null}var p=t._parseDots(a);if(!p)return null;if(e=e.shape||e.node,p.length){e.removeChild(s),s.on=!0,s.method="none",s.color=p[0].color,s.color2=p[p.length-1].color;for(var d=[],g=0,x=p.length;g<x;g++)p[g].offset&&d.push(p[g].offset+c+p[g].color);s.colors=d.length?d.join():"0% "+s.color,"radial"==l?(s.type="gradientTitle",s.focus="100%",s.focussize="0 0",s.focusposition=h,s.angle=0):(s.type="gradient",s.angle=(270-u)%360),e.appendChild(s)}return 1},T=function(e,r){this[0]=this.node=e,e.raphael=!0,this.id=t._oid++,e.raphaelid=this.id,this.X=0,this.Y=0,this.attrs={},this.paper=r,this.matrix=t.matrix(),this._={transform:[],sx:1,sy:1,dx:0,dy:0,deg:0,dirty:1,dirtyT:1},!r.bottom&&(r.bottom=this),this.prev=r.top,r.top&&(r.top.next=this),r.top=this,this.next=null},A=t.el;T.prototype=A,A.constructor=T,A.transform=function(e){if(null==e)return this._.transform;var i,n=this.paper._viewBoxShift,a=n?"s"+[n.scale,n.scale]+"-1-1t"+[n.dx,n.dy]:f;n&&(i=e=r(e).replace(/\.{3}|\u2026/g,this._.transform||f)),t._extractTransform(this,a+e);var s,o=this.matrix.clone(),l=this.skew,h=this.node,u=~r(this.attrs.fill).indexOf("-"),p=!r(this.attrs.fill).indexOf("url(");if(o.translate(1,1),p||u||"image"==this.type)if(l.matrix="1 0 0 1",l.offset="0 0",s=o.split(),u&&s.noRotation||!s.isSimple){h.style.filter=o.toFilter();var d=this.getBBox(),g=this.getBBox(1),x=d.x-g.x,v=d.y-g.y;h.coordorigin=x*-y+c+v*-y,w(this,1,1,x,v,0)}else h.style.filter=f,w(this,s.scalex,s.scaley,s.dx,s.dy,s.rotate);else h.style.filter=f,l.matrix=r(o),l.offset=o.offset();return null!==i&&(this._.transform=i,t._extractTransform(this,i)),this},A.rotate=function(t,e,n){if(this.removed)return this;if(null!=t){if((t=r(t).split(h)).length-1&&(e=i(t[1]),n=i(t[2])),t=i(t[0]),null==n&&(e=n),null==e||null==n){var a=this.getBBox(1);e=a.x+a.width/2,n=a.y+a.height/2}return this._.dirtyT=1,this.transform(this._.transform.concat([["r",t,e,n]])),this}},A.translate=function(t,e){return this.removed?this:((t=r(t).split(h)).length-1&&(e=i(t[1])),t=i(t[0])||0,e=+e||0,this._.bbox&&(this._.bbox.x+=t,this._.bbox.y+=e),this.transform(this._.transform.concat([["t",t,e]])),this)},A.scale=function(t,e,n,a){if(this.removed)return this;if((t=r(t).split(h)).length-1&&(e=i(t[1]),n=i(t[2]),a=i(t[3]),isNaN(n)&&(n=null),isNaN(a)&&(a=null)),t=i(t[0]),null==e&&(e=t),null==a&&(n=a),null==n||null==a)var s=this.getBBox(1);return n=null==n?s.x+s.width/2:n,a=null==a?s.y+s.height/2:a,this.transform(this._.transform.concat([["s",t,e,n,a]])),this._.dirtyT=1,this},A.hide=function(){return!this.removed&&(this.node.style.display="none"),this},A.show=function(){return!this.removed&&(this.node.style.display=f),this},A.auxGetBBox=t.el.getBBox,A.getBBox=function(){var t=this.auxGetBBox();if(this.paper&&this.paper._viewBoxShift){var e={},r=1/this.paper._viewBoxShift.scale;return e.x=t.x-this.paper._viewBoxShift.dx,e.x*=r,e.y=t.y-this.paper._viewBoxShift.dy,e.y*=r,e.width=t.width*r,e.height=t.height*r,e.x2=e.x+e.width,e.y2=e.y+e.height,e}return t},A._getBBox=function(){return this.removed?{}:{x:this.X+(this.bbx||0)-this.W/2,y:this.Y-this.H,width:this.W,height:this.H}},A.remove=function(){if(!this.removed&&this.node.parentNode){for(var e in this.paper.__set__&&this.paper.__set__.exclude(this),t.eve.unbind("raphael.*.*."+this.id),t._tear(this,this.paper),this.node.parentNode.removeChild(this.node),this.shape&&this.shape.parentNode.removeChild(this.shape),this)this[e]="function"==typeof this[e]?t._removedFactory(e):null;this.removed=!0}},A.attr=function(r,i){if(this.removed)return this;if(null==r){var n={};for(var a in this.attrs)this.attrs[e](a)&&(n[a]=this.attrs[a]);return n.gradient&&"none"==n.fill&&(n.fill=n.gradient)&&delete n.gradient,n.transform=this._.transform,n}if(null==i&&t.is(r,"string")){if("fill"==r&&"none"==this.attrs.fill&&this.attrs.gradient)return this.attrs.gradient;for(var s=r.split(h),o={},l=0,c=s.length;l<c;l++)(r=s[l])in this.attrs?o[r]=this.attrs[r]:t.is(this.paper.customAttributes[r],"function")?o[r]=this.paper.customAttributes[r].def:o[r]=t._availableAttrs[r];return c-1?o:o[s[0]]}if(this.attrs&&null==i&&t.is(r,"array")){for(o={},l=0,c=r.length;l<c;l++)o[r[l]]=this.attr(r[l]);return o}var f;for(var p in null!=i&&((f={})[r]=i),null==i&&t.is(r,"object")&&(f=r),f)u("raphael.attr."+p+"."+this.id,this,f[p]);if(f){for(p in this.paper.customAttributes)if(this.paper.customAttributes[e](p)&&f[e](p)&&t.is(this.paper.customAttributes[p],"function")){var d=this.paper.customAttributes[p].apply(this,[].concat(f[p]));for(var g in this.attrs[p]=f[p],d)d[e](g)&&(f[g]=d[g])}f.text&&"text"==this.type&&(this.textpath.string=f.text),C(this,f)}return this},A.toFront=function(){return!this.removed&&this.node.parentNode.appendChild(this.node),this.paper&&this.paper.top!=this&&t._tofront(this,this.paper),this},A.toBack=function(){return this.removed?this:(this.node.parentNode.firstChild!=this.node&&(this.node.parentNode.insertBefore(this.node,this.node.parentNode.firstChild),t._toback(this,this.paper)),this)},A.insertAfter=function(e){return this.removed?this:(e.constructor==t.st.constructor&&(e=e[e.length-1]),e.node.nextSibling?e.node.parentNode.insertBefore(this.node,e.node.nextSibling):e.node.parentNode.appendChild(this.node),t._insertafter(this,e,this.paper),this)},A.insertBefore=function(e){return this.removed?this:(e.constructor==t.st.constructor&&(e=e[0]),e.node.parentNode.insertBefore(this.node,e.node),t._insertbefore(this,e,this.paper),this)},A.blur=function(e){var r=this.node.runtimeStyle,i=r.filter;return i=i.replace(g,f),0!=+e?(this.attrs.blur=e,r.filter=i+c+" progid:DXImageTransform.Microsoft.Blur(pixelradius="+(+e||1.5)+")",r.margin=t.format("-{0}px 0 0 -{0}px",a(+e||1.5))):(r.filter=i,r.margin=0,delete this.attrs.blur),this},t._engine.path=function(t,e){var r=k("shape");r.style.cssText=v,r.coordsize=y+c+y,r.coordorigin=e.coordorigin;var i=new T(r,e),n={fill:"none",stroke:"#000"};t&&(n.path=t),i.type="path",i.path=[],i.Path=f,C(i,n),e.canvas&&e.canvas.appendChild(r);var a=k("skew");return a.on=!0,r.appendChild(a),i.skew=a,i.transform(f),i},t._engine.rect=function(e,r,i,n,a,s){var o=t._rectPath(r,i,n,a,s),l=e.path(o),h=l.attrs;return l.X=h.x=r,l.Y=h.y=i,l.W=h.width=n,l.H=h.height=a,h.r=s,h.path=o,l.type="rect",l},t._engine.ellipse=function(t,e,r,i,n){var a=t.path();a.attrs;return a.X=e-i,a.Y=r-n,a.W=2*i,a.H=2*n,a.type="ellipse",C(a,{cx:e,cy:r,rx:i,ry:n}),a},t._engine.circle=function(t,e,r,i){var n=t.path();n.attrs;return n.X=e-i,n.Y=r-i,n.W=n.H=2*i,n.type="circle",C(n,{cx:e,cy:r,r:i}),n},t._engine.image=function(e,r,i,n,a,s){var o=t._rectPath(i,n,a,s),l=e.path(o).attr({stroke:"none"}),h=l.attrs,u=l.node,c=u.getElementsByTagName("fill")[0];return h.src=r,l.X=h.x=i,l.Y=h.y=n,l.W=h.width=a,l.H=h.height=s,h.path=o,l.type="image",c.parentNode==u&&u.removeChild(c),c.rotate=!0,c.src=r,c.type="tile",l._.fillpos=[i,n],l._.fillsize=[a,s],u.appendChild(c),w(l,1,1,0,0,0),l},t._engine.text=function(e,i,n,s){var o=k("shape"),l=k("path"),h=k("textpath");i=i||0,n=n||0,s=s||"",l.v=t.format("m{0},{1}l{2},{1}",a(i*y),a(n*y),a(i*y)+1),l.textpathok=!0,h.string=r(s),h.on=!0,o.style.cssText=v,o.coordsize=y+c+y,o.coordorigin="0 0";var u=new T(o,e),p={fill:"#000",stroke:"none",font:t._availableAttrs.font,text:s};u.shape=o,u.path=l,u.textpath=h,u.type="text",u.attrs.text=r(s),u.attrs.x=i,u.attrs.y=n,u.attrs.w=1,u.attrs.h=1,C(u,p),o.appendChild(h),o.appendChild(l),e.canvas.appendChild(o);var d=k("skew");return d.on=!0,o.appendChild(d),u.skew=d,u.transform(f),u},t._engine.setSize=function(e,r){var i=this.canvas.style;return this.width=e,this.height=r,e==+e&&(e+="px"),r==+r&&(r+="px"),i.width=e,i.height=r,i.clip="rect(0 "+e+" "+r+" 0)",this._viewBox&&t._engine.setViewBox.apply(this,this._viewBox),this},t._engine.setViewBox=function(e,r,i,n,a){t.eve("raphael.setViewBox",this,this._viewBox,[e,r,i,n,a]);var s,o,l=this.getSize(),h=l.width,u=l.height;return a&&(i*(s=u/n)<h&&(e-=(h-i*s)/2/s),n*(o=h/i)<u&&(r-=(u-n*o)/2/o)),this._viewBox=[e,r,i,n,!!a],this._viewBoxShift={dx:-e,dy:-r,scale:l},this.forEach(function(t){t.transform("...")}),this},t._engine.initWin=function(t){var e=t.document;e.styleSheets.length<31?e.createStyleSheet().addRule(".rvml","behavior:url(#default#VML)"):e.styleSheets[0].addRule(".rvml","behavior:url(#default#VML)");try{!e.namespaces.rvml&&e.namespaces.add("rvml","urn:schemas-microsoft-com:vml"),k=function(t){return e.createElement("<rvml:"+t+' class="rvml">')}}catch(t){k=function(t){return e.createElement("<"+t+' xmlns="urn:schemas-microsoft.com:vml" class="rvml">')}}},t._engine.initWin(t._g.win),t._engine.create=function(){var e=t._getContainer.apply(0,arguments),r=e.container,i=e.height,n=e.width,a=e.x,s=e.y;if(!r)throw new Error("VML container not found.");var o=new t._Paper,l=o.canvas=t._g.doc.createElement("div"),h=l.style;return a=a||0,s=s||0,n=n||512,i=i||342,o.width=n,o.height=i,n==+n&&(n+="px"),i==+i&&(i+="px"),o.coordsize=216e5+c+216e5,o.coordorigin="0 0",o.span=t._g.doc.createElement("span"),o.span.style.cssText="position:absolute;left:-9999em;top:-9999em;padding:0;margin:0;line-height:1;",l.appendChild(o.span),h.cssText=t.format("top:0;left:0;width:{0};height:{1};display:inline-block;position:relative;clip:rect(0 {0} {1} 0);overflow:hidden",n,i),1==r?(t._g.doc.body.appendChild(l),h.left=a+"px",h.top=s+"px",h.position="absolute"):r.firstChild?r.insertBefore(l,r.firstChild):r.appendChild(l),o.renderfix=function(){},o},t.prototype.clear=function(){t.eve("raphael.clear",this),this.canvas.innerHTML=f,this.span=t._g.doc.createElement("span"),this.span.style.cssText="position:absolute;left:-9999em;top:-9999em;padding:0;margin:0;line-height:1;display:inline;",this.canvas.appendChild(this.span),this.bottom=this.top=null},t.prototype.remove=function(){for(var e in t.eve("raphael.remove",this),this.canvas.parentNode.removeChild(this.canvas),this)this[e]="function"==typeof this[e]?t._removedFactory(e):null;return!0};var M=t.st;for(var E in A)A[e](E)&&!M[e](E)&&(M[E]=function(t){return function(){var e=arguments;return this.forEach(function(r){r[t].apply(r,e)})}}(E))}}.apply(e,i))||(t.exports=n)}])}); +// flowchart.js, v1.14.1 +// Copyright (c)2020 Adriano Raiano (adrai). +// Distributed under MIT license +// http://adrai.github.io/flowchart.js + +!function(t,i){if("object"==typeof exports&&"object"==typeof module)module.exports=i(require("Raphael"));else if("function"==typeof define&&define.amd)define(["Raphael"],i);else{var e=i("object"==typeof exports?require("Raphael"):t.Raphael);for(var s in e)("object"==typeof exports?exports:t)[s]=e[s]}}(this,function(t){return function(t){function i(s){if(e[s])return e[s].exports;var n=e[s]={exports:{},id:s,loaded:!1};return t[s].call(n.exports,n,n.exports,i),n.loaded=!0,n.exports}var e={};return i.m=t,i.c=e,i.p="",i(0)}([function(t,i,e){e(9);var s=e(4);e(15);var n={parse:s};"undefined"!=typeof window&&(window.flowchart=n),t.exports=n},function(t,i){function e(t,i){if(!t||"function"==typeof t)return i;var s={};for(var n in i)s[n]=i[n];for(n in t)t[n]&&("object"==typeof s[n]?s[n]=e(s[n],t[n]):s[n]=t[n]);return s}function s(t,i){if("function"==typeof Object.create)t.super_=i,t.prototype=Object.create(i.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}});else{t.super_=i;var e=function(){};e.prototype=i.prototype,t.prototype=new e,t.prototype.constructor=t}}t.exports={defaults:e,inherits:s}},function(t,i,e){function s(t,i,e){this.chart=t,this.group=this.chart.paper.set(),this.symbol=e,this.connectedTo=[],this.symbolType=i.symbolType,this.flowstate=i.flowstate||"future",this.lineStyle=i.lineStyle||{},this.key=i.key||"",this.leftLines=[],this.rightLines=[],this.topLines=[],this.bottomLines=[],this.next_direction=i.next&&i.direction_next?i.direction_next:void 0,this.text=this.chart.paper.text(0,0,i.text),i.key&&(this.text.node.id=i.key+"t"),this.text.node.setAttribute("class",this.getAttr("class")+"t"),this.text.attr({"text-anchor":"start",x:this.getAttr("text-margin"),fill:this.getAttr("font-color"),"font-size":this.getAttr("font-size")});var s=this.getAttr("font"),n=this.getAttr("font-family"),h=this.getAttr("font-weight");s&&this.text.attr({font:s}),n&&this.text.attr({"font-family":n}),h&&this.text.attr({"font-weight":h}),i.link&&this.text.attr("href",i.link),i.function&&(this.text.attr({cursor:"pointer"}),this.text.node.addEventListener("click",function(t){window[i.function](t,i)},!1)),i.target&&this.text.attr("target",i.target);var o=this.getAttr("maxWidth");if(o){for(var r=i.text.split(" "),a="",l=0,p=r.length;l<p;l++){var y=r[l];this.text.attr("text",a+" "+y),a+=this.text.getBBox().width>o?"\n"+y:" "+y}this.text.attr("text",a.substring(1))}if(this.group.push(this.text),e){var x=this.getAttr("text-margin");e.attr({fill:this.getAttr("fill"),stroke:this.getAttr("element-color"),"stroke-width":this.getAttr("line-width"),width:this.text.getBBox().width+2*x,height:this.text.getBBox().height+2*x}),e.node.setAttribute("class",this.getAttr("class")),i.link&&e.attr("href",i.link),i.target&&e.attr("target",i.target),i.function&&(e.node.addEventListener("click",function(t){window[i.function](t,i)},!1),e.attr({cursor:"pointer"})),i.key&&(e.node.id=i.key),this.group.push(e),e.insertBefore(this.text),this.text.attr({y:e.getBBox().height/2}),this.initialize()}}var n=e(3),h=n.drawLine,o=n.checkLineIntersection;s.prototype.getAttr=function(t){if(this.chart){var i,e=this.chart.options?this.chart.options[t]:void 0,s=this.chart.options.symbols?this.chart.options.symbols[this.symbolType][t]:void 0;return this.chart.options.flowstate&&this.chart.options.flowstate[this.flowstate]&&(i=this.chart.options.flowstate[this.flowstate][t]),i||s||e}},s.prototype.initialize=function(){this.group.transform("t"+this.getAttr("line-width")+","+this.getAttr("line-width")),this.width=this.group.getBBox().width,this.height=this.group.getBBox().height},s.prototype.getCenter=function(){return{x:this.getX()+this.width/2,y:this.getY()+this.height/2}},s.prototype.getX=function(){return this.group.getBBox().x},s.prototype.getY=function(){return this.group.getBBox().y},s.prototype.shiftX=function(t){this.group.transform("t"+(this.getX()+t)+","+this.getY())},s.prototype.setX=function(t){this.group.transform("t"+t+","+this.getY())},s.prototype.shiftY=function(t){this.group.transform("t"+this.getX()+","+(this.getY()+t))},s.prototype.setY=function(t){this.group.transform("t"+this.getX()+","+t)},s.prototype.getTop=function(){var t=this.getY(),i=this.getX()+this.width/2;return{x:i,y:t}},s.prototype.getBottom=function(){var t=this.getY()+this.height,i=this.getX()+this.width/2;return{x:i,y:t}},s.prototype.getLeft=function(){var t=this.getY()+this.group.getBBox().height/2,i=this.getX();return{x:i,y:t}},s.prototype.getRight=function(){var t=this.getY()+this.group.getBBox().height/2,i=this.getX()+this.group.getBBox().width;return{x:i,y:t}},s.prototype.render=function(){if(this.next){var t=this,i=this.getAttr("line-length");if("right"===this.next_direction){var e=this.getRight();this.next.isPositioned||(this.next.setY(e.y-this.next.height/2),this.next.shiftX(this.group.getBBox().x+this.width+i),function e(){for(var s,n=!1,h=0,o=t.chart.symbols.length;h<o;h++){s=t.chart.symbols[h];var r=Math.abs(s.getCenter().x-t.next.getCenter().x);if(s.getCenter().y>t.next.getCenter().y&&r<=t.next.width/2){n=!0;break}}if(n){if("end"===t.next.symbolType)return;t.next.setX(s.getX()+s.width+i),e()}}(),this.next.isPositioned=!0,this.next.render())}else if("left"===this.next_direction){var s=this.getLeft();this.next.isPositioned||(this.next.setY(s.y-this.next.height/2),this.next.shiftX(-(this.group.getBBox().x+this.width+i)),function e(){for(var s,n=!1,h=0,o=t.chart.symbols.length;h<o;h++){s=t.chart.symbols[h];var r=Math.abs(s.getCenter().x-t.next.getCenter().x);if(s.getCenter().y>t.next.getCenter().y&&r<=t.next.width/2){n=!0;break}}if(n){if("end"===t.next.symbolType)return;t.next.setX(s.getX()+s.width+i),e()}}(),this.next.isPositioned=!0,this.next.render())}else{var n=this.getBottom();this.next.isPositioned||(this.next.shiftY(this.getY()+this.height+i),this.next.setX(n.x-this.next.width/2),this.next.isPositioned=!0,this.next.render())}}},s.prototype.renderLines=function(){this.next&&(this.next_direction?this.drawLineTo(this.next,this.getAttr("arrow-text")||"",this.next_direction):this.drawLineTo(this.next,this.getAttr("arrow-text")||""))},s.prototype.drawLineTo=function(t,i,e){this.connectedTo.indexOf(t)<0&&this.connectedTo.push(t);var s,n,r=this.getCenter().x,a=this.getCenter().y,l=this.getRight(),p=this.getBottom(),y=this.getTop(),x=this.getLeft(),g=t.getCenter().x,f=t.getCenter().y,c=t.getTop(),d=t.getRight(),m=t.getLeft(),u=r===g,b=a===f,_=a<f,v=a>f||this===t,w=r>g,L=r<g,k=0,B=this.getAttr("line-length"),A=this.getAttr("line-width");if(e&&"bottom"!==e||!u||!_)if(e&&"right"!==e||!b||!L)if(e&&"left"!==e||!b||!w)if(e&&"right"!==e||!u||!v)if(e&&"right"!==e||!u||!_)if(e&&"bottom"!==e||!w)if(e&&"bottom"!==e||!L||!_)if(e&&"bottom"!==e||!L)if(e&&"right"===e&&w)n=10*Math.max(t.topLines.length,this.rightLines.length),s=h(this.chart,l,[{x:l.x+B/2,y:l.y},{x:l.x+B/2,y:c.y-B/2-n},{x:c.x,y:c.y-B/2-n},{x:c.x,y:c.y}],i),this.rightLines.push(s),t.topLines.push(s),this.rightStart=!0,t.topEnd=!0,k=l.x+B/2;else if(e&&"right"===e&&L)n=10*Math.max(t.topLines.length,this.rightLines.length),s=h(this.chart,l,[{x:c.x,y:l.y-n},{x:c.x,y:c.y-n}],i),this.rightLines.push(s),t.topLines.push(s),this.rightStart=!0,t.topEnd=!0,k=l.x+B/2;else if(e&&"bottom"===e&&u&&v)n=10*Math.max(t.topLines.length,this.bottomLines.length),s=h(this.chart,p,[{x:p.x,y:p.y+B/2-n},{x:l.x+B/2,y:p.y+B/2-n},{x:l.x+B/2,y:c.y-B/2-n},{x:c.x,y:c.y-B/2-n},{x:c.x,y:c.y}],i),this.bottomLines.push(s),t.topLines.push(s),this.bottomStart=!0,t.topEnd=!0,k=p.x+B/2;else if("left"===e&&u&&v){var M=x.x-B/2;m.x<x.x&&(M=m.x-B/2),n=10*Math.max(t.topLines.length,this.leftLines.length),s=h(this.chart,x,[{x:M,y:x.y-n},{x:M,y:c.y-B/2-n},{x:c.x,y:c.y-B/2-n},{x:c.x,y:c.y}],i),this.leftLines.push(s),t.topLines.push(s),this.leftStart=!0,t.topEnd=!0,k=x.x}else"left"===e?(n=10*Math.max(t.topLines.length,this.leftLines.length),s=h(this.chart,x,[{x:c.x+(x.x-c.x)/2,y:x.y},{x:c.x+(x.x-c.x)/2,y:c.y-B/2-n},{x:c.x,y:c.y-B/2-n},{x:c.x,y:c.y}],i),this.leftLines.push(s),t.topLines.push(s),this.leftStart=!0,t.topEnd=!0,k=x.x):"top"===e&&(n=10*Math.max(t.topLines.length,this.topLines.length),s=h(this.chart,y,[{x:y.x,y:c.y-B/2-n},{x:c.x,y:c.y-B/2-n},{x:c.x,y:c.y}],i),this.topLines.push(s),t.topLines.push(s),this.topStart=!0,t.topEnd=!0,k=y.x);else n=10*Math.max(t.topLines.length,this.bottomLines.length),s=h(this.chart,p,[{x:p.x,y:p.y+B/2-n},{x:p.x+(p.x-c.x)/2,y:p.y+B/2-n},{x:p.x+(p.x-c.x)/2,y:c.y-B/2-n},{x:c.x,y:c.y-B/2-n},{x:c.x,y:c.y}],i),this.bottomLines.push(s),t.topLines.push(s),this.bottomStart=!0,t.topEnd=!0,k=p.x+(p.x-c.x)/2;else n=10*Math.max(t.topLines.length,this.bottomLines.length),s=h(this.chart,p,[{x:p.x,y:c.y-B/2-n},{x:c.x,y:c.y-B/2-n},{x:c.x,y:c.y}],i),this.bottomLines.push(s),t.topLines.push(s),this.bottomStart=!0,t.topEnd=!0,k=p.x,c.x>k&&(k=c.x);else n=10*Math.max(t.topLines.length,this.bottomLines.length),s=this.leftEnd&&v?h(this.chart,p,[{x:p.x,y:p.y+B/2-n},{x:p.x+(p.x-c.x)/2,y:p.y+B/2-n},{x:p.x+(p.x-c.x)/2,y:c.y-B/2-n},{x:c.x,y:c.y-B/2-n},{x:c.x,y:c.y}],i):h(this.chart,p,[{x:p.x,y:c.y-B/2-n},{x:c.x,y:c.y-B/2-n},{x:c.x,y:c.y}],i),this.bottomLines.push(s),t.topLines.push(s),this.bottomStart=!0,t.topEnd=!0,k=p.x+(p.x-c.x)/2;else n=10*Math.max(t.topLines.length,this.rightLines.length),s=h(this.chart,l,[{x:l.x+B/2,y:l.y-n},{x:l.x+B/2,y:c.y-B/2-n},{x:c.x,y:c.y-B/2-n},{x:c.x,y:c.y}],i),this.rightLines.push(s),t.topLines.push(s),this.rightStart=!0,t.topEnd=!0,k=l.x+B/2;else n=10*Math.max(t.topLines.length,this.rightLines.length),s=h(this.chart,l,[{x:l.x+B/2,y:l.y-n},{x:l.x+B/2,y:c.y-B/2-n},{x:c.x,y:c.y-B/2-n},{x:c.x,y:c.y}],i),this.rightLines.push(s),t.topLines.push(s),this.rightStart=!0,t.topEnd=!0,k=l.x+B/2;else 0===t.rightLines.length&&0===this.leftLines.length?s=h(this.chart,x,d,i):(n=10*Math.max(t.rightLines.length,this.leftLines.length),s=h(this.chart,l,[{x:l.x,y:l.y-n},{x:l.x,y:d.y-n},{x:d.x,y:d.y-n},{x:d.x,y:d.y}],i)),this.leftLines.push(s),t.rightLines.push(s),this.leftStart=!0,t.rightEnd=!0,k=d.x;else 0===t.leftLines.length&&0===this.rightLines.length?s=h(this.chart,l,m,i):(n=10*Math.max(t.leftLines.length,this.rightLines.length),s=h(this.chart,l,[{x:l.x,y:l.y-n},{x:l.x,y:m.y-n},{x:m.x,y:m.y-n},{x:m.x,y:m.y}],i)),this.rightLines.push(s),t.leftLines.push(s),this.rightStart=!0,t.leftEnd=!0,k=m.x;else 0===t.topLines.length&&0===this.bottomLines.length?s=h(this.chart,p,c,i):(n=10*Math.max(t.topLines.length,this.bottomLines.length),s=h(this.chart,p,[{x:c.x,y:c.y-n},{x:c.x,y:c.y}],i)),this.bottomLines.push(s),t.topLines.push(s),this.bottomStart=!0,t.topEnd=!0,k=p.x;if(this.lineStyle[t.key]&&s&&s.attr(this.lineStyle[t.key]),s){for(var O=0,X=this.chart.lines.length;O<X;O++)for(var T=this.chart.lines[O],S=T.attr("path"),C=s.attr("path"),Y=0,P=S.length-1;Y<P;Y++){var j=[];j.push(["M",S[Y][1],S[Y][2]]),j.push(["L",S[Y+1][1],S[Y+1][2]]);for(var E=j[0][1],z=j[0][2],F=j[1][1],R=j[1][2],$=0,N=C.length-1;$<N;$++){var V=[];V.push(["M",C[$][1],C[$][2]]),V.push(["L",C[$+1][1],C[$+1][2]]);var G=V[0][1],I=V[0][2],W=V[1][1],Q=V[1][2],q=o(E,z,F,R,G,I,W,Q);if(q.onLine1&&q.onLine2){var J;I===Q?G>W?(J=["L",q.x+2*A,I],C.splice($+1,0,J),J=["C",q.x+2*A,I,q.x,I-4*A,q.x-2*A,I],C.splice($+2,0,J),s.attr("path",C)):(J=["L",q.x-2*A,I],C.splice($+1,0,J),J=["C",q.x-2*A,I,q.x,I-4*A,q.x+2*A,I],C.splice($+2,0,J),s.attr("path",C)):I>Q?(J=["L",G,q.y+2*A],C.splice($+1,0,J),J=["C",G,q.y+2*A,G+4*A,q.y,G,q.y-2*A],C.splice($+2,0,J),s.attr("path",C)):(J=["L",G,q.y-2*A],C.splice($+1,0,J),J=["C",G,q.y-2*A,G+4*A,q.y,G,q.y+2*A],C.splice($+2,0,J),s.attr("path",C)),$+=2}}}this.chart.lines.push(s),(void 0===this.chart.minXFromSymbols||this.chart.minXFromSymbols>x.x)&&(this.chart.minXFromSymbols=x.x)}(!this.chart.maxXFromLine||this.chart.maxXFromLine&&k>this.chart.maxXFromLine)&&(this.chart.maxXFromLine=k)},t.exports=s},function(t,i){function e(t,i,e){var s,n,h="M{0},{1}";for(s=2,n=2*e.length+2;s<n;s+=2)h+=" L{"+s+"},{"+(s+1)+"}";var o=[i.x,i.y];for(s=0,n=e.length;s<n;s++)o.push(e[s].x),o.push(e[s].y);var r=t.paper.path(h,o);r.attr("stroke",t.options["element-color"]),r.attr("stroke-width",t.options["line-width"]);var a=t.options.font,l=t.options["font-family"],p=t.options["font-weight"];return a&&r.attr({font:a}),l&&r.attr({"font-family":l}),p&&r.attr({"font-weight":p}),r}function s(t,i,e,s){var n,h;"[object Array]"!==Object.prototype.toString.call(e)&&(e=[e]);var o="M{0},{1}";for(n=2,h=2*e.length+2;n<h;n+=2)o+=" L{"+n+"},{"+(n+1)+"}";var r=[i.x,i.y];for(n=0,h=e.length;n<h;n++)r.push(e[n].x),r.push(e[n].y);var a=t.paper.path(o,r);a.attr({stroke:t.options["line-color"],"stroke-width":t.options["line-width"],"arrow-end":t.options["arrow-end"]});var l=t.options.font,p=t.options["font-family"],y=t.options["font-weight"];if(l&&a.attr({font:l}),p&&a.attr({"font-family":p}),y&&a.attr({"font-weight":y}),s){var x=!1,g=t.paper.text(0,0,s),f="start",c=!1,d=e[0];i.y===d.y&&(c=!0);var m=0,u=0;x?(m=i.x>d.x?i.x-(i.x-d.x)/2:d.x-(d.x-i.x)/2,u=i.y>d.y?i.y-(i.y-d.y)/2:d.y-(d.y-i.y)/2,c?(m-=g.getBBox().width/2,u-=t.options["text-margin"]):(m+=t.options["text-margin"],u-=g.getBBox().height/2)):(m=i.x,u=i.y,c?(i.x>d.x?(m-=t.options["text-margin"]/2,f="end"):m+=t.options["text-margin"]/2,u-=t.options["text-margin"]):(m+=t.options["text-margin"]/2,u+=t.options["text-margin"],i.y>d.y&&(u-=2*t.options["text-margin"]))),g.attr({"text-anchor":f,"font-size":t.options["font-size"],fill:t.options["font-color"],x:m,y:u}),l&&g.attr({font:l}),p&&g.attr({"font-family":p}),y&&g.attr({"font-weight":y})}return a}function n(t,i,e,s,n,h,o,r){var a,l,p,y,x,g={x:null,y:null,onLine1:!1,onLine2:!1};return a=(r-h)*(e-t)-(o-n)*(s-i),0===a?g:(l=i-h,p=t-n,y=(o-n)*l-(r-h)*p,x=(e-t)*l-(s-i)*p,l=y/a,p=x/a,g.x=t+l*(e-t),g.y=i+l*(s-i),l>0&&l<1&&(g.onLine1=!0),p>0&&p<1&&(g.onLine2=!0),g)}t.exports={drawPath:e,drawLine:s,checkLineIntersection:n}},function(t,i,e){function s(t){function i(t){var i=t.indexOf("(")+1,e=t.indexOf(")");return i>=0&&e>=0?t.substring(i,e):"{}"}function e(t){var i=t.indexOf("(")+1,e=t.indexOf(")");return i>=0&&e>=0?t.substring(i,e):""}function s(t){var i=t.indexOf("(")+1,e=t.indexOf(")");return i>=0&&e>=0?f.symbols[t.substring(0,i-1)]:f.symbols[t]}function x(t){var i="next",e=t.indexOf("(")+1,s=t.indexOf(")");return e>=0&&s>=0&&(i=F.substring(e,s),i.indexOf(",")<0&&"yes"!==i&&"no"!==i&&(i="next, "+i)),i}function g(t){var i=t.indexOf("(")+1,e=t.indexOf(")"),s=t.substring(i,e);s.indexOf(",")>0&&(s=s.substring(0,s.indexOf(",")));var n=s.split("@");if(n.length>1)return i>=0&&e>=0?n[1]:""}t=t||"",t=t.trim();for(var f={symbols:{},start:null,drawSVG:function(t,i){function e(t){if(g[t.key])return g[t.key];switch(t.symbolType){case"start":g[t.key]=new h(x,t);break;case"end":g[t.key]=new o(x,t);break;case"operation":g[t.key]=new r(x,t);break;case"inputoutput":g[t.key]=new a(x,t);break;case"subroutine":g[t.key]=new l(x,t);break;case"condition":g[t.key]=new p(x,t);break;case"parallel":g[t.key]=new y(x,t);break;default:return new Error("Wrong symbol type!")}return g[t.key]}var s=this;this.diagram&&this.diagram.clean();var x=new n(t,i);this.diagram=x;var g={};!function t(i,n,h){var o=e(i);return s.start===i?x.startWith(o):n&&h&&!n.pathOk&&(n instanceof p?(h.yes===i&&n.yes(o),h.no===i&&n.no(o)):n instanceof y?(h.path1===i&&n.path1(o),h.path2===i&&n.path2(o),h.path3===i&&n.path3(o)):n.then(o)),o.pathOk?o:(o instanceof p?(i.yes&&t(i.yes,o,i),i.no&&t(i.no,o,i)):o instanceof y?(i.path1&&t(i.path1,o,i),i.path2&&t(i.path2,o,i),i.path3&&t(i.path3,o,i)):i.next&&t(i.next,o,i),o)}(this.start),x.render()},clean:function(){this.diagram.clean()},options:function(){return this.diagram.options}},c=[],d=0,m=1,u=t.length;m<u;m++)if("\n"===t[m]&&"\\"!==t[m-1]){var b=t.substring(d,m);d=m+1,c.push(b.replace(/\\\n/g,"\n"))}d<t.length&&c.push(t.substr(d));for(var _=1,v=c.length;_<v;){var w=c[_];w.indexOf("->")<0&&w.indexOf("=>")<0&&w.indexOf("@>")<0?(c[_-1]+="\n"+w,c.splice(_,1),v--):_++}for(;c.length>0;){var L=c.splice(0,1)[0].trim();if(L.indexOf("=>")>=0){var k=L.split("=>"),B={key:k[0].replace(/\(.*\)/,""),symbolType:k[1],text:null,link:null,target:null,flowstate:null,function:null,lineStyle:{},params:{}},A=k[0].match(/\((.*)\)/);if(A&&A.length>1)for(var M=A[1].split(","),O=0;O<M.length;O++){var X=M[O].split("=");2==X.length&&(B.params[X[0]]=X[1])}var T;if(B.symbolType.indexOf(": ")>=0&&(T=B.symbolType.split(": "),B.symbolType=T.shift(),B.text=T.join(": ")),B.text&&B.text.indexOf(":$")>=0?(T=B.text.split(":$"),B.text=T.shift(),B.function=T.join(":$")):B.symbolType.indexOf(":$")>=0?(T=B.symbolType.split(":$"),B.symbolType=T.shift(),B.function=T.join(":$")):B.text&&B.text.indexOf(":>")>=0?(T=B.text.split(":>"),B.text=T.shift(),B.link=T.join(":>")):B.symbolType.indexOf(":>")>=0&&(T=B.symbolType.split(":>"),B.symbolType=T.shift(),B.link=T.join(":>")),B.symbolType.indexOf("\n")>=0&&(B.symbolType=B.symbolType.split("\n")[0]),B.link){var S=B.link.indexOf("[")+1,C=B.link.indexOf("]");S>=0&&C>=0&&(B.target=B.link.substring(S,C),B.link=B.link.substring(0,S-1))}if(B.text&&B.text.indexOf("|")>=0){var Y=B.text.split("|");B.flowstate=Y.pop().trim(),B.text=Y.join("|")}f.symbols[B.key]=B}else if(L.indexOf("->")>=0){var P=g(L);P&&(L=L.replace("@"+P,""));for(var j=L.split("->"),E=0,z=j.length;E<z;E++){var F=j[E],R=e(F);"true"!==R&&"false"!==R||(F=F.replace("true","yes"),F=F.replace("false","no"));var $=x(F),N=s(F),V=null;if($.indexOf(",")>=0){var G=$.split(",");$=G[0],V=G[1].trim()}if(P&&("yes"==$||"true"==$?N.yes_annotation=P:N.no_annotation=P,P=null),f.start||(f.start=N),E+1<z){var I=j[E+1];N[$]=s(I),N["direction_"+$]=V,V=null}}}else if(L.indexOf("@>")>=0)for(var W=L.split("@>"),Q=0,q=W.length;Q<q;Q++)if(Q+1!==q){var J=s(W[Q]),D=s(W[Q+1]);J.lineStyle[D.key]=JSON.parse(i(W[Q+1]))}}return f}var n=e(7),h=e(13),o=e(10),r=e(12),a=e(11),l=e(14),p=e(5),y=e(6);t.exports=s},function(t,i,e){function s(t,i){i=i||{},n.call(this,t,i),this.yes_annotation=i.yes_annotation,this.no_annotation=i.no_annotation,this.textMargin=this.getAttr("text-margin"),this.yes_direction=i.direction_yes,this.no_direction=i.direction_no,this.params=i.params,this.no_direction||"right"!==this.yes_direction?this.yes_direction||"bottom"!==this.no_direction||(this.yes_direction="right"):this.no_direction="bottom",this.yes_direction=this.yes_direction||"bottom",this.no_direction=this.no_direction||"right",this.text.attr({x:2*this.textMargin});var e=this.text.getBBox().width+3*this.textMargin;e+=e/2;var s=this.text.getBBox().height+2*this.textMargin;s+=s/2,s=Math.max(.5*e,s);var h=e/4,o=s/4;this.text.attr({x:h+this.textMargin/2});var a={x:h,y:o},l=[{x:h-e/4,y:o+s/4},{x:h-e/4+e/2,y:o+s/4+s/2},{x:h-e/4+e,y:o+s/4},{x:h-e/4+e/2,y:o+s/4-s/2},{x:h-e/4,y:o+s/4}],p=r(t,a,l);p.attr({stroke:this.getAttr("element-color"),"stroke-width":this.getAttr("line-width"),fill:this.getAttr("fill")}),i.link&&p.attr("href",i.link),i.target&&p.attr("target",i.target),i.key&&(p.node.id=i.key),p.node.setAttribute("class",this.getAttr("class")),this.text.attr({y:p.getBBox().height/2}),this.group.push(p),p.insertBefore(this.text),this.initialize()}var n=e(2),h=e(1).inherits,o=e(3),r=o.drawPath;h(s,n),s.prototype.render=function(){this.yes_direction&&(this[this.yes_direction+"_symbol"]=this.yes_symbol),this.no_direction&&(this[this.no_direction+"_symbol"]=this.no_symbol);var t=this.getAttr("line-length");if(this.bottom_symbol){var i=this.getBottom();this.bottom_symbol.isPositioned||(this.bottom_symbol.shiftY(this.getY()+this.height+t),this.bottom_symbol.setX(i.x-this.bottom_symbol.width/2),this.bottom_symbol.isPositioned=!0,this.bottom_symbol.render())}if(this.right_symbol){var e=this.getRight();if(!this.right_symbol.isPositioned){this.right_symbol.setY(e.y-this.right_symbol.height/2),this.right_symbol.shiftX(this.group.getBBox().x+this.width+t);var s=this;!function i(){for(var e,n=!1,h=0,o=s.chart.symbols.length;h<o;h++)if(e=s.chart.symbols[h],!s.params["align-next"]||"no"!==s.params["align-next"]){var r=Math.abs(e.getCenter().x-s.right_symbol.getCenter().x);if(e.getCenter().y>s.right_symbol.getCenter().y&&r<=s.right_symbol.width/2){n=!0;break}}if(n){if("end"===s.right_symbol.symbolType)return;s.right_symbol.setX(e.getX()+e.width+t),i()}}(),this.right_symbol.isPositioned=!0,this.right_symbol.render()}}if(this.left_symbol){var n=this.getLeft();if(!this.left_symbol.isPositioned){this.left_symbol.setY(n.y-this.left_symbol.height/2),this.left_symbol.shiftX(-(this.group.getBBox().x+this.width+t));var s=this;!function i(){for(var e,n=!1,h=0,o=s.chart.symbols.length;h<o;h++)if(e=s.chart.symbols[h],!s.params["align-next"]||"no"!==s.params["align-next"]){var r=Math.abs(e.getCenter().x-s.left_symbol.getCenter().x);if(e.getCenter().y>s.left_symbol.getCenter().y&&r<=s.left_symbol.width/2){n=!0;break}}if(n){if("end"===s.left_symbol.symbolType)return;s.left_symbol.setX(e.getX()+e.width+t),i()}}(),this.left_symbol.isPositioned=!0,this.left_symbol.render()}}},s.prototype.renderLines=function(){this.yes_symbol&&this.drawLineTo(this.yes_symbol,this.yes_annotation?this.yes_annotation:this.getAttr("yes-text"),this.yes_direction),this.no_symbol&&this.drawLineTo(this.no_symbol,this.no_annotation?this.no_annotation:this.getAttr("no-text"),this.no_direction)},t.exports=s},function(t,i,e){function s(t,i){var e=t.paper.rect(0,0,0,0);i=i||{},n.call(this,t,i,e),this.textMargin=this.getAttr("text-margin"),this.path1_direction="bottom",this.path2_direction="right",this.path3_direction="top",this.params=i.params,"path1"===i.direction_next&&!i[i.direction_next]&&i.next&&(i[i.direction_next]=i.next),"path2"===i.direction_next&&!i[i.direction_next]&&i.next&&(i[i.direction_next]=i.next),"path3"===i.direction_next&&!i[i.direction_next]&&i.next&&(i[i.direction_next]=i.next),i.path1&&i.direction_path1&&i.path2&&!i.direction_path2&&i.path3&&!i.direction_path3?"right"===i.direction_path1?(this.path2_direction="bottom",this.path1_direction="right",this.path3_direction="top"):"top"===i.direction_path1?(this.path2_direction="right",this.path1_direction="top",this.path3_direction="bottom"):"left"===i.direction_path1?(this.path2_direction="right",this.path1_direction="left",this.path3_direction="bottom"):(this.path2_direction="right",this.path1_direction="bottom",this.path3_direction="top"):i.path1&&!i.direction_path1&&i.path2&&i.direction_path2&&i.path3&&!i.direction_path3?"right"===i.direction_path2?(this.path1_direction="bottom",this.path2_direction="right",this.path3_direction="top"):"left"===i.direction_path2?(this.path1_direction="bottom",this.path2_direction="left",this.path3_direction="right"):(this.path1_direction="right",this.path2_direction="bottom",this.path3_direction="top"):i.path1&&!i.direction_path1&&i.path2&&!i.direction_path2&&i.path3&&i.direction_path3?"right"===i.direction_path2?(this.path1_direction="bottom",this.path2_direction="top",this.path3_direction="right"):"left"===i.direction_path2?(this.path1_direction="bottom",this.path2_direction="right",this.path3_direction="left"):(this.path1_direction="right",this.path2_direction="bottom",this.path3_direction="top"):(this.path1_direction=i.direction_path1,this.path2_direction=i.direction_path2,this.path3_direction=i.direction_path3),this.path1_direction=this.path1_direction||"bottom",this.path2_direction=this.path2_direction||"right",this.path3_direction=this.path3_direction||"top",this.initialize()}var n=e(2),h=e(1).inherits;h(s,n),s.prototype.render=function(){this.path1_direction&&(this[this.path1_direction+"_symbol"]=this.path1_symbol),this.path2_direction&&(this[this.path2_direction+"_symbol"]=this.path2_symbol),this.path3_direction&&(this[this.path3_direction+"_symbol"]=this.path3_symbol);var t=this.getAttr("line-length");if(this.bottom_symbol){var i=this.getBottom();this.bottom_symbol.isPositioned||(this.bottom_symbol.shiftY(this.getY()+this.height+t),this.bottom_symbol.setX(i.x-this.bottom_symbol.width/2),this.bottom_symbol.isPositioned=!0,this.bottom_symbol.render())}if(this.top_symbol){var e=this.getTop();this.top_symbol.isPositioned||(this.top_symbol.shiftY(this.getY()-this.top_symbol.height-t),this.top_symbol.setX(e.x+this.top_symbol.width),this.top_symbol.isPositioned=!0,this.top_symbol.render())}var s=this;if(this.left_symbol){var n=this.getLeft();this.left_symbol.isPositioned||(this.left_symbol.setY(n.y-this.left_symbol.height/2),this.left_symbol.shiftX(-(this.group.getBBox().x+this.width+t)),function i(){for(var e,n=!1,h=0,o=s.chart.symbols.length;h<o;h++)if(e=s.chart.symbols[h],!s.params["align-next"]||"no"!==s.params["align-next"]){var r=Math.abs(e.getCenter().x-s.left_symbol.getCenter().x);if(e.getCenter().y>s.left_symbol.getCenter().y&&r<=s.left_symbol.width/2){n=!0;break}}if(n){if("end"===s.left_symbol.symbolType)return;s.left_symbol.setX(e.getX()+e.width+t),i()}}(),this.left_symbol.isPositioned=!0,this.left_symbol.render())}if(this.right_symbol){var h=this.getRight();this.right_symbol.isPositioned||(this.right_symbol.setY(h.y-this.right_symbol.height/2),this.right_symbol.shiftX(this.group.getBBox().x+this.width+t),function i(){for(var e,n=!1,h=0,o=s.chart.symbols.length;h<o;h++)if(e=s.chart.symbols[h],!s.params["align-next"]||"no"!==s.params["align-next"]){var r=Math.abs(e.getCenter().x-s.right_symbol.getCenter().x);if(e.getCenter().y>s.right_symbol.getCenter().y&&r<=s.right_symbol.width/2){n=!0;break}}if(n){if("end"===s.right_symbol.symbolType)return;s.right_symbol.setX(e.getX()+e.width+t),i()}}(),this.right_symbol.isPositioned=!0,this.right_symbol.render())}},s.prototype.renderLines=function(){this.path1_symbol&&this.drawLineTo(this.path1_symbol,"",this.path1_direction),this.path2_symbol&&this.drawLineTo(this.path2_symbol,"",this.path2_direction),this.path3_symbol&&this.drawLineTo(this.path3_symbol,"",this.path3_direction)},t.exports=s},function(t,i,e){function s(t,i){i=i||{},this.paper=new n(t),this.options=h(i,o),this.symbols=[],this.lines=[],this.start=null}var n=e(16),h=e(1).defaults,o=e(8),r=e(5),a=e(6);s.prototype.handle=function(t){this.symbols.indexOf(t)<=-1&&this.symbols.push(t);var i=this;return t instanceof r?(t.yes=function(e){return t.yes_symbol=e,t.no_symbol&&(t.pathOk=!0),i.handle(e)},t.no=function(e){return t.no_symbol=e,t.yes_symbol&&(t.pathOk=!0),i.handle(e)}):t instanceof a?(t.path1=function(e){return t.path1_symbol=e,t.path2_symbol&&(t.pathOk=!0),i.handle(e)},t.path2=function(e){return t.path2_symbol=e,t.path3_symbol&&(t.pathOk=!0),i.handle(e)},t.path3=function(e){return t.path3_symbol=e,t.path1_symbol&&(t.pathOk=!0),i.handle(e)}):t.then=function(e){return t.next=e,t.pathOk=!0,i.handle(e)},t},s.prototype.startWith=function(t){return this.start=t,this.handle(t)},s.prototype.render=function(){var t,i,e=0,s=0,n=0,h=0,o=0,r=0,a=0,l=0;for(n=0,h=this.symbols.length;n<h;n++)t=this.symbols[n],t.width>e&&(e=t.width),t.height>s&&(s=t.height);for(n=0,h=this.symbols.length;n<h;n++)t=this.symbols[n],t.shiftX(this.options.x+(e-t.width)/2+this.options["line-width"]),t.shiftY(this.options.y+(s-t.height)/2+this.options["line-width"]);for(this.start.render(),n=0,h=this.symbols.length;n<h;n++)t=this.symbols[n],t.renderLines();o=this.maxXFromLine;var p,y;for(n=0,h=this.symbols.length;n<h;n++){t=this.symbols[n];var x=t.getX();p=x+t.width,y=t.getY()+t.height,x<a&&(a=x),p>o&&(o=p),y>r&&(r=y)}for(n=0,h=this.lines.length;n<h;n++){i=this.lines[n].getBBox(),p=i.x,y=i.y;var g=i.x2,f=i.y2;p<a&&(a=p),y<l&&(l=y),g>o&&(o=g),f>r&&(r=f)}var c=this.options.scale,d=this.options["line-width"];this.minXFromSymbols<a&&(a=this.minXFromSymbols),a<0&&(a-=d),l<0&&(l-=d);var m=o+d-a,u=r+d-l;this.paper.setSize(m*c,u*c),this.paper.setViewBox(a,l,m,u,!0)},s.prototype.clean=function(){if(this.paper){var t=this.paper.canvas;t.parentNode&&t.parentNode.removeChild(t)}},t.exports=s},function(t,i){t.exports={x:0,y:0,"line-width":3,"line-length":50,"text-margin":10,"font-size":14,"font-color":"black","line-color":"black","element-color":"black",fill:"white","yes-text":"yes","no-text":"no","arrow-end":"block",class:"flowchart",scale:1,symbols:{start:{},end:{},condition:{},inputoutput:{},operation:{},subroutine:{},parallel:{}}}},function(t,i){Array.prototype.indexOf||(Array.prototype.indexOf=function(t){"use strict";if(null===this)throw new TypeError;var i=Object(this),e=i.length>>>0;if(0===e)return-1;var s=0;if(arguments.length>0&&(s=Number(arguments[1]),s!=s?s=0:0!==s&&s!=1/0&&s!=-(1/0)&&(s=(s>0||-1)*Math.floor(Math.abs(s)))),s>=e)return-1;for(var n=s>=0?s:Math.max(e-Math.abs(s),0);n<e;n++)if(n in i&&i[n]===t)return n;return-1}),Array.prototype.lastIndexOf||(Array.prototype.lastIndexOf=function(t){"use strict";if(null===this)throw new TypeError;var i=Object(this),e=i.length>>>0;if(0===e)return-1;var s=e;arguments.length>1&&(s=Number(arguments[1]),s!=s?s=0:0!==s&&s!=1/0&&s!=-(1/0)&&(s=(s>0||-1)*Math.floor(Math.abs(s))));for(var n=s>=0?Math.min(s,e-1):e-Math.abs(s);n>=0;n--)if(n in i&&i[n]===t)return n;return-1}),String.prototype.trim||(String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"")})},function(t,i,e){function s(t,i){var e=t.paper.rect(0,0,0,0,20);i=i||{},i.text=i.text||"End",n.call(this,t,i,e)}var n=e(2),h=e(1).inherits;h(s,n),t.exports=s},function(t,i,e){function s(t,i){i=i||{},n.call(this,t,i),this.textMargin=this.getAttr("text-margin"),this.text.attr({x:3*this.textMargin});var e=this.text.getBBox().width+4*this.textMargin,s=this.text.getBBox().height+2*this.textMargin,h=this.textMargin,o=s/2,a={x:h,y:o},l=[{x:h-this.textMargin,y:s},{x:h-this.textMargin+e,y:s},{x:h-this.textMargin+e+2*this.textMargin,y:0},{x:h-this.textMargin+2*this.textMargin,y:0},{x:h,y:o}],p=r(t,a,l);p.attr({stroke:this.getAttr("element-color"),"stroke-width":this.getAttr("line-width"),fill:this.getAttr("fill")}),i.link&&p.attr("href",i.link),i.target&&p.attr("target",i.target),i.key&&(p.node.id=i.key),p.node.setAttribute("class",this.getAttr("class")),this.text.attr({y:p.getBBox().height/2}),this.group.push(p),p.insertBefore(this.text),this.initialize()}var n=e(2),h=e(1).inherits,o=e(3),r=o.drawPath;h(s,n),s.prototype.getLeft=function(){var t=this.getY()+this.group.getBBox().height/2,i=this.getX()+this.textMargin;return{x:i,y:t}},s.prototype.getRight=function(){var t=this.getY()+this.group.getBBox().height/2,i=this.getX()+this.group.getBBox().width-this.textMargin;return{x:i,y:t}},t.exports=s},function(t,i,e){function s(t,i){var e=t.paper.rect(0,0,0,0);i=i||{},n.call(this,t,i,e)}var n=e(2),h=e(1).inherits;h(s,n),t.exports=s},function(t,i,e){function s(t,i){var e=t.paper.rect(0,0,0,0,20);i=i||{},i.text=i.text||"Start",n.call(this,t,i,e)}var n=e(2),h=e(1).inherits;h(s,n),t.exports=s},function(t,i,e){function s(t,i){var e=t.paper.rect(0,0,0,0);i=i||{},n.call(this,t,i,e),e.attr({width:this.text.getBBox().width+4*this.getAttr("text-margin")}),this.text.attr({x:2*this.getAttr("text-margin")});var s=t.paper.rect(0,0,0,0);s.attr({x:this.getAttr("text-margin"),stroke:this.getAttr("element-color"),"stroke-width":this.getAttr("line-width"),width:this.text.getBBox().width+2*this.getAttr("text-margin"),height:this.text.getBBox().height+2*this.getAttr("text-margin"),fill:this.getAttr("fill")}),i.key&&(s.node.id=i.key+"i");var h=this.getAttr("font"),o=this.getAttr("font-family"),r=this.getAttr("font-weight");h&&s.attr({font:h}),o&&s.attr({"font-family":o}),r&&s.attr({"font-weight":r}),i.link&&s.attr("href",i.link),i.target&&s.attr("target",i.target),this.group.push(s),s.insertBefore(this.text),this.initialize()}var n=e(2),h=e(1).inherits;h(s,n),t.exports=s},function(t,i,e){if("undefined"!=typeof jQuery){var s=e(4);!function(t){function i(t,i){return t==i||Array.isArray(i)&&(i.includes(t)||i.includes(Number(t)))}var e={init:function(i){return this.each(function(){var e=t(this);this.chart=s(e.text()),e.html(""),this.chart.drawSVG(this,i)})},setFlowStateByParam:function(t,e,s){return this.each(function(){var n=this.chart,h=["next","yes","no","path1","path2","path3"];for(var o in n.symbols)if(n.symbols.hasOwnProperty(o)){var r=n.symbols[o],a=r.params[t];if(i(a,e)){r.flowstate=s;for(var l=0;l<h.length;l++){var p=h[l];r[p]&&r[p].params&&r[p].params[t]&&i(r[p].params[t],e)&&(r.lineStyle[r[p].key]={stroke:n.options().flowstate[s].fill +})}}}n.clean(),n.drawSVG(this)})},clearFlowState:function(){return this.each(function(){var t=this.chart;for(var i in t.symbols)if(t.symbols.hasOwnProperty(i)){var e=t.symbols[i];e.flowstate=""}t.clean(),t.drawSVG(this)})}};t.fn.flowChart=function(i){return e[i]?e[i].apply(this,Array.prototype.slice.call(arguments,1)):"object"!=typeof i&&i?void t.error("Method "+i+" does not exist on jQuery.flowChart"):e.init.apply(this,arguments)}}(jQuery)}},function(i,e){i.exports=t}])}); diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/graphviz/full.render.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/graphviz/full.render.js new file mode 100644 index 0000000..c96b7a9 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/graphviz/full.render.js @@ -0,0 +1,90 @@ +/* +Viz.js 2.1.2 (Graphviz 2.40.1, Expat 2.2.5, Emscripten 1.37.36) +*/ +(function(global) { + var Module = function(Module) { + Module = Module || {}; + var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module["arguments"]=[];Module["thisProgram"]="./this.program";Module["quit"]=(function(status,toThrow){throw toThrow});Module["preRun"]=[];Module["postRun"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["readBinary"]=function readBinary(f){var data;data=tryParseAsDataURI(f);if(data){return data}if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function shell_read(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText}catch(err){var data=tryParseAsDataURI(url);if(data){return intArrayToString(data)}throw err}};if(ENVIRONMENT_IS_WORKER){Module["readBinary"]=function readBinary(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}catch(err){var data=tryParseAsDataURI(url);if(data){return data}throw err}}}Module["readAsync"]=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}var data=tryParseAsDataURI(url);if(data){onload(data.buffer);return}onerror()};xhr.onerror=onerror;xhr.send(null)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log.bind(console):typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn.bind(console)||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var jsCallStartIndex=1;var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i<args.length;i++){var converter=toC[argTypes[i]];if(converter){if(stack===0)stack=stackSave();cArgs[i]=converter(args[i])}else{cArgs[i]=args[i]}}}var ret=func.apply(null,cArgs);if(returnType==="string")ret=Pointer_stringify(ret);if(stack!==0){stackRestore(stack)}return ret}function setValue(ptr,value,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";switch(type){case"i1":HEAP8[ptr>>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr<stop;ptr+=4){HEAP32[ptr>>2]=0}stop=ret+size;while(ptr<stop){HEAP8[ptr++>>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i<size){var curr=slab[i];type=singleType||types[i];if(type===0){i++;continue}if(type=="i64")type="i32";setValue(ret+i,curr,type);if(previousType!==type){typeSize=getNativeTypeSize(type);previousType=type}i+=typeSize}return ret}function Pointer_stringify(ptr,length){if(length===0||!ptr)return"";var hasUtf=0;var t;var i=0;while(1){t=HEAPU8[ptr+i>>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function allocateUTF8(str){var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8Array(str,HEAP8,ret,size);return ret}function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}var PAGE_SIZE=16384;var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY<TOTAL_STACK)Module.printErr("TOTAL_MEMORY should be larger than TOTAL_STACK, was "+TOTAL_MEMORY+"! (TOTAL_STACK="+TOTAL_STACK+")");if(Module["buffer"]){buffer=Module["buffer"]}else{{buffer=new ArrayBuffer(TOTAL_MEMORY)}Module["buffer"]=buffer}updateGlobalBufferViews();function getTotalMemory(){return TOTAL_MEMORY}HEAP32[0]=1668509029;HEAP16[1]=25459;if(HEAPU8[2]!==115||HEAPU8[3]!==99)throw"Runtime error: expected the system to be little-endian!";function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i<str.length;++i){HEAP8[buffer++>>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}if(!Math["imul"]||Math["imul"](4294967295,5)!==-5)Math["imul"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math["imul"];if(!Math["clz32"])Math["clz32"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math["clz32"];if(!Math["trunc"])Math["trunc"]=(function(x){return x<0?Math.ceil(x):Math.floor(x)});Math.trunc=Math["trunc"];var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}var ASM_CONSTS=[(function($0,$1){var path=Pointer_stringify($0);var data=Pointer_stringify($1);FS.createPath("/",PATH.dirname(path));FS.writeFile(PATH.join("/",path),data)})];function _emscripten_asm_const_iii(code,a0,a1){return ASM_CONSTS[code](a0,a1)}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+194160;__ATINIT__.push();memoryInitializer="data:application/octet-stream;base64,AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/ACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAIMEAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABSQAAAAAAAAFJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFJAAAAAAAAAUkAAIMEAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABSQAAAAAAAAFJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFJAAAAAAAAAUkACEAAAAAAAAAAAAAAAABBAoC8AAAgAAAABAAAAAAAAAAIQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICWQAAAAAAAgJZABJDDAAAAAAAAAAAAAAAQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEAAAAAAAABYQAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYQAAAAAAAAFhAAAAAAAAAAAAAAAAAAAAQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUkAAAAAAAABSQAAgAwIAAAAAAAAAAAAAEEAAAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAABCQAAAAAAAAEJAAAAAAAAgg0AAAAAAAMCIQAAAAAAAAFJAAAAAAAAAUkAAAAAAAAAAAAAAAAAAAEJAAAAAAAAAQkAAAAAAACCDQAAAAAAAwIhAAAAAAAAAUkAAAAAAAABSQACwwQAAAAAAAAAAAAAAEEBANgAAkwAAAAEAAAAAAAAAQAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFJAAAAAAAAAUkAAEAACAAAAAAAAAAAAABBAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYQAAAAAAAAFhAALDBAAAAAAAAAAAAAAAAABw6AAAQAAAAAQAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEAAAAAAAABYQEAgPgMAAAAAAAAAAAAAEEAkOwAAegAAAAEAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFJAAAAAAAAAUkAAAAAAAAAAAAAAAAAAABBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABSQAAAAAAAAFJA////////73/////////vf////////+//////////7/8AAAAAAAD4PzMzMzMzM9M/PAAAAAAAAACamZmZmZmpPwEAAAAAAAAAAQAAAAAAAAAAAAAAAADwPwEAAAAAAAAAAgAAAAAAAAAAAAAAAADwPwIAAAAAAAAAAwAAAAAAAAAAAAAAAADgPwMAAAAAAAAABAAAAAAAAAAAAAAAAADwPwQAAAAAAAAABQAAAAAAAAAzMzMzMzPzPwUAAAAAAAAABgAAAAAAAACamZmZmZnpPwYAAAAAAAAABwAAAAAAAAAAAAAAAADwPwcAAAAAAAAACAAAAAAAAAAAAAAAAADgPwgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAMzMzMzMz078AAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAgEZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAmpmZmZmZ2b8AAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzMzMzMzPjPwAAAAAAAAAAAAAAAAEAAAAFAAAAAAAAAAAAAAAAAAAAexSuR+F65L8AAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAEAAAATAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABqQVQAAAQAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAADAAAAAAAAAAAAAAAAgGZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAgGZAmpmZmZmZ2b8AAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAFAAAAAAAAAAAAAAAAgGZAexSuR+F65L8AAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAgEZAAAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAQAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABMAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABUAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0AAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABcAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABkAAAAAAAAAAAEAAAAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACIVQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPC/AAAAAAAAAQAAAAAAAAAAAAAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAA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YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8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CAAAAFxlAQAOAAAAfWUBAAgAAACGZQEAEgAAAKdlAQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAABAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAwAAAACAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAAIAAAABAAAAAAAAAADAAAAIQAAAAQAAAAAAAAAAAAAAAAAAAAIAAAABAAAAAAAAAAEAAAAIgAAAAUAAAAAAAAAAAAAAAAAAAAFAAAAQAAAACBHAAAwRwAABgAAAAQAAAA8RwAABgAAAAgAAAAGAAAABAAAAERHAAAABAAACAAAAP////8AAAAAAAAAACMAAAAAAAAAAAAAAAAAAAAAAAAANQAAAAAAAAAAAAAAIAAAAAAAAAAAAAAABgAAAAAAAAAHAAAAAAAAAAAAAAAAAAAA/////wAAAAAAAAAABgAAAAAAAAAHAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAAAAAAAAAAAAAAAA/////wAAAAAAAAAACAAAAAAAAAAHAAAAAAAAAAAAAAAAAAAAHAAAAAAAAAAAAAAACQAAAAAAAAAHAAAAAAAAAAkAAAALAAAACAAAAAoAAADISAAATEgAALBIAAABAAAAAQAAAAoAAAAWAAAACwAAAFgAAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAANAAAAAAAAAAcAAAAAAAAABwAAAAIAAAAFAAAACAAAAAAAAAAAAAAABgAAAAMAAAAOAAAACwAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAA8AAAAAAAAABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJQAAABAAAAAAAAAABwAAAAAAAAAIAAAACAAAAAAAAAAAAAAAJgAAAAAAAAAAAAAAAAAAAAAAAAAQAAAA/////wAAAAAAAAAAJwAAAAAAAAAAAAAABwAAAAAAAAABAAAAAAAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAgAAAAMAAAABAAAAAQAAAAIAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAACAAAAAQAAAAQAAAAFAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAABgAAAAEAAAABAAAABwAAAAgAAAAJAAAACgAAAAoAAAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAKAAAACgAAAAEAAAABAAAACwAAAAEAAAAMAAAAAQAAAA0AAAAOAAAADwAAABAAAAARAAAAEgAAABMAAAAUAAAAFQAAABYAAAATAAAAEwAAABMAAAATAAAAFwAAABgAAAAZAAAAEwAAABoAAAAbAAAAHAAAAB0AAAATAAAAEwAAABMAAAATAAAAEwAAAAEAAAAeAAAAAQAAAAEAAAATAAAAAQAAAB8AAAAgAAAAIQAAACIAAAAjAAAAEwAAACQAAAAlAAAAJgAAABMAAAATAAAAEwAAABMAAAAnAAAAKAAAACkAAAATAAAAKgAAACsAAAAsAAAALQAAABMAAAATAAAAEwAAABMAAAATAAAAAQAAAAEAAAABAAAAAQAAAAEAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAAC4AAAATAAAAEwAAABMAAAAvAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAAwAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAA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R74BAANO+/u0rv8AU74BAJI147PN4/8AX74BAE0p68zrxf8Aa74BAMob5N7L5P8Ad74BABhY/v7Zpv8Ag74BAANO+/u0rv8Aj74BAJI147PN4/8Am74BAE0p68zrxf8Ap74BAMob5N7L5P8As74BABhY/v7Zpv8Av74BACoy////zP8Ay74BAANO+/u0rv8A174BAJI147PN4/8A474BAE0p68zrxf8A774BAMob5N7L5P8A+74BABhY/v7Zpv8AB78BACoy////zP8AE78BABws5eXYvf8AH78BAANO+/u0rv8AK78BAJI147PN4/8AN78BAE0p68zrxf8AQ78BAMob5N7L5P8AT78BABhY/v7Zpv8AW78BACoy////zP8AZ78BABws5eXYvf8Ac78BAOkj/f3a7P8Af78BAANO+/u0rv8Ai78BAJI147PN4/8Al78BAE0p68zrxf8Ao78BAMob5N7L5P8Ar78BABhY/v7Zpv8Au78BACoy////zP8Ax78BABws5eXYvf8A078BAOkj/f3a7P8A378BAAAA8vLy8v8A678BAGw14rPizf8A978BABFR/f3NrP8AA8ABAJsf6MvV6P8AD8ABAGw14rPizf8AG8ABABFR/f3NrP8AJ8ABAJsf6MvV6P8AM8ABAOQr9PTK5P8AP8ABAGw14rPizf8AS8ABABFR/f3NrP8AV8ABAJsf6MvV6P8AY8ABAOQr9PTK5P8Ab8ABADgt9eb1yf8Ae8ABAGw14rPizf8Ah8ABABFR/f3NrP8Ak8ABAJsf6MvV6P8An8ABAOQr9PTK5P8Aq8ABADgt9eb1yf8At8ABACNR///yrv8Aw8ABAGw14rPizf8Az8ABABFR/f3NrP8A28ABAJsf6MvV6P8A58ABAOQr9PTK5P8A88ABADgt9eb1yf8A/8ABACNR///yrv8AC8EBABkn8fHizP8AF8EBAGw14rPizf8AI8EBABFR/f3NrP8AL8EBAJsf6MvV6P8AO8EBAOQr9PTK5P8AR8EBADgt9eb1yf8AU8EBACNR///yrv8AX8EBABkn8fHizP8Aa8EBAAAAzMzMzP8Ad8EBAOb9jo4BUv8AgcEBAE2/ZCdkGf8AjMEBAObcxcUbff8AlsEBAOh23t53rv8AoMEBAOU+8fG22v8AqsEBAOkd/f3g7/8AtMEBADsm9eb10P8A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it4BADqb2KbYVP8Ak94BACLQ///ZL/8AnN4BABla5eXElP8Apd4BAHJ4wmbCpf8Art4BAAub/PyNYv8At94BAJxNy42gy/8AwN4BAORm5+eKw/8Ayd4BADqb2KbYVP8A0t4BACLQ///ZL/8A294BABla5eXElP8A5N4BAAAAs7Ozs/8A7d4BAHhU043Tx/8A994BANNSvbyAvf8AAt8BACpM////s/8ADN8BAK8l2r662v8AFt8BAASL+/uAcv8AIN8BAJBk04Cx0/8AKt8BABac/f20Yv8ANN8BADqG3rPeaf8APt8BAOkv/PzN5f8ASN8BAAAA2dnZ2f8AUt8BAHhU043Tx/8AXN8BANNSvbyAvf8AZ98BAE0p68zrxf8Act8BACpM////s/8AfN8BAK8l2r662v8Aht8BAASL+/uAcv8AkN8BAJBk04Cx0/8Amt8BABac/f20Yv8ApN8BADqG3rPeaf8Art8BAOkv/PzN5f8AuN8BAAAA2dnZ2f8Awt8BAHhU043Tx/8AzN8BANNSvbyAvf8A198BAE0p68zrxf8A4t8BACWQ///tb/8A7d8BACpM////s/8A998BAK8l2r662v8AAeABAASL+/uAcv8AC+ABAJBk04Cx0/8AFeABABac/f20Yv8AH+ABADqG3rPeaf8AKeABAOkv/PzN5f8AM+ABAAAA2dnZ2f8APeABAHhU043Tx/8ARuABACpM////s/8AT+ABAK8l2r662v8AWOABAHhU043Tx/8AYeABACpM////s/8AauABAK8l2r662v8Ac+ABAASL+/uAcv8AfOABAHhU043Tx/8AheABACpM////s/8AjuABAK8l2r662v8Al+ABAASL+/uAcv8AoOABAJBk04Cx0/8AqeABAHhU043Tx/8AsuABACpM////s/8Au+ABAK8l2r662v8AxOABAASL+/uAcv8AzeABAJBk04Cx0/8A1uABABac/f20Yv8A3+ABAHhU043Tx/8A6OABACpM////s/8A8eABAK8l2r662v8A+uABAASL+/uAcv8AA+EBAJBk04Cx0/8ADOEBABac/f20Yv8AFeEBADqG3rPeaf8AHuEBAHhU043Tx/8AJ+EBACpM////s/8AMOEBAK8l2r662v8AOeEBAASL+/uAcv8AQuEBAJBk04Cx0/8AS+EBABac/f20Yv8AVOEBADqG3rPeaf8AXeEBAOkv/PzN5f8AZuEBAHhU043Tx/8Ab+EBACpM////s/8AeOEBAK8l2r662v8AgeEBAASL+/uAcv8AiuEBAJBk04Cx0/8Ak+EBABac/f20Yv8AnOEBADqG3rPeaf8ApeEBAOkv/PzN5f8AruEBAAAA2dnZ2f8At+EBAO39np4BQv8AxeEBALGCol5Pov8A1OEBAPq01dU+T/8A4uEBAAq49PRtQ/8A8OEBABSd/f2uYf8A/uEBAB9z/v7gi/8ADOIBADFg9eb1mP8AGuIBAE9B3avdpP8AKOIBAHJ4wmbCpf8ANuIBAI+7vTKIvf8AROIBAO39np4BQv8AUuIBAI+7vTKIvf8AYeIBALGCol5Pov8AcOIBAPq01dU+T/8AfuIBAAq49PRtQ/8AjOIBABSd/f2uYf8AmuIBAB9z/v7gi/8AqOIBACpA////v/8AtuIBADFg9eb1mP8AxOIBAE9B3avdpP8A0uIBAHJ4wmbCpf8A4OIBAA2k/PyNWf8A7eIBACpA////v/8A+uIBAFFN1ZnVlP8AB+MBAP7h19cZHP8AFOMBABSd/f2uYf8AIeMBAE9B3avdpP8ALuMBAI/EuiuDuv8AO+MBAP7h19cZHP8ASOMBABSd/f2uYf8AVeMBACpA////v/8AYuMBAE9B3avdpP8Ab+MBAI/EuiuDuv8AfOMBAPq01dU+T/8AieMBAA2k/PyNWf8AluMBAB9z/v7gi/8Ao+MBADFg9eb1mP8AsOMBAFFN1ZnVlP8AveMBAI+7vTKIvf8AyuMBAPq01dU+T/8A1+MBAA2k/PyNWf8A5OMBAB9z/v7gi/8A8eMBACpA////v/8A/uMBADFg9eb1mP8AC+QBAFFN1ZnVlP8AGOQBAI+7vTKIvf8AJeQBAPq01dU+T/8AMuQBAAq49PRtQ/8AP+QBABSd/f2uYf8ATOQBAB9z/v7gi/8AWeQBADFg9eb1mP8AZuQBAE9B3avdpP8Ac+QBAHJ4wmbCpf8AgOQBAI+7vTKIvf8AjeQBAPq01dU+T/8AmuQBAAq49PRtQ/8Ap+QBABSd/f2uYf8AtOQBAB9z/v7gi/8AweQBACpA////v/8AzuQBADFg9eb1mP8A2+QBAE9B3avdpP8A6OQBAHJ4wmbCpf8A9eQBAI+7vTKIvf8AAuUBAJMP//D4//8AEeUBABgj+vrr1/8AI+UBAH///wD///8ALeUBAHGA/3//1P8APeUBAH8P//D///8ASOUBACoa9fX13P8AU+UBABc6///kxP8AX+UBAAAAAAAAAP8AauUBABkx///rzf8AfuUBAKr//wAA//8AiOUBAMDO4oor4v8AmOUBAAC+paUqKv8Ao+UBABdj3t64h/8AsuUBAIBnoF+eoP8AweUBAD///3//AP8A0eUBABHa0tJpHv8A4OUBAAuv//9/UP8A6+UBAJqT7WSV7f8A/+UBACEi///43P8ADeYBAPbn3NwUPP8AGuYBAH///wD///8AJOYBAKr/iwAAi/8AMuYBAH//iwCLi/8AQOYBAB7vuLiGC/8AU+YBAAAAqampqf8AYeYBAFX/ZABkAP8AcOYBAAAAqampqf8AfuYBACduvb23a/8AjeYBANT/i4sAi/8AnuYBADqOa1VrL/8AsuYBABf///+MAP8AwuYBAMbAzJkyzP8A0uYBAAD/i4sAAP8A3+YBAAp56emWev8A7+YBAFU9vI+8j/8AAecBAK+Pi0g9i/8AFOcBAH9nTy9PT/8AJ+cBAH9nTy9PT/8AOucBAID/0QDO0f8ATecBAMf/05QA0/8AXecBAOjr//8Uk/8Aa+cBAIr//wC///8AfOcBAAAAaWlpaf8AiecBAAAAaWlpaf8AlucBAJTh/x6Q//8ApucBAADOsrIiIv8AtecBABwP///68P8AxucBAFXAiyKLIv8A1+cBANT///8A//8A5OcBAAAA3Nzc3P8A8+cBAKoH//j4//8AA+gBACP////XAP8ADegBAB7Z2tqlIP8AHOgBAAAAgICAgP8AJugBAFX/gACAAP8AMegBADvQ/63/L/8AQugBAAAAgICAgP8ATOgBAFUP//D/8P8AWugBAOmW//9ptP8AZ+gBAACMzc1cXP8AdugBAML/gksAgv8AgugBACoP////8P8AjegBACZq8PDmjP8AmOgBAKoU+ubm+v8ApugBAPAP///w9f8AuegBAED//Hz8AP8AyOgBACYx///6zf8A2ugBAIk/5q3Y5v8A6egBAAB38PCAgP8A+egBAH8f/+D///8ACOkBACoo+vr60v8AIukBAAAA09PT0/8AMekBAFVk7pDukP8AQekBAAAA09PT0/8AUOkBAPhJ//+2wf8AX+kBAAyE//+gev8AcOkBAH3RsiCyqv8Ag+kBAI91+ofO+v8AlekBAJQ4mXeImf8AqekBAJQ4mXeImf8AvekBAJc03rDE3v8A0ekBACof////4P8A4ukBAFX//wD/AP8A7OkBAFXAzTLNMv8A++kBABUU+vrw5v8ABuoBANT///8A//8AE+oBAAD/gIAAAP8AH+oBAHGAzWbNqv8ANeoBAKr/zQAAzf8AReoBAMyY07pV0/8AV+oBALd825Nw2/8AaeoBAGepszyzcf8AfeoBALCP7nto7v8AkuoBAG//+gD6mv8AqeoBAH2n0UjRzP8AvuoBAOTkx8cVhf8A0+oBAKrGcBkZcP8A5eoBAGoJ//X/+v8A9OoBAAQe///k4f8AA+sBABpJ///ktf8AEesBABlR///erf8AIusBAKr/gAAAgP8ALOsBABsX/f315v8AOesBACr/gICAAP8AROsBADjAjmuOI/8AU+sBABv///+lAP8AX+sBAAv///9FAP8AbusBANZ72tpw1v8AeusBACZI7u7oqv8AjesBAFVk+5j7mP8AnOsBAH9D7q/u7v8Ar+sBAPF829twk/8AwusBABop///v1f8A0usBABRG///auf8A4esBABSwzc2FP/8A6+sBAPc////Ay/8A9esBANRG3d2g3f8A/+sBAIQ75rDg5v8AD+wBANT/gIAAgP8AG+wBAAD///8AAP8AJOwBAAA9vLyPj/8AM+wBAJ+14UFp4f8AQuwBABHci4tFE/8AU+wBAASK+vqAcv8AX+wBABOa9PSkYP8Ab+wBAGeqiy6LV/8AfewBABEQ///17v8Ai+wBAA23oKBSLf8Al+wBAAAAwMDAwP8Ao+wBAIts64fO6/8AsOwBAK+PzWpazf8Av+wBAJQ4kHCAkP8AzuwBAJQ4kHCAkP8A3ewBAAAF///6+v8A5+wBAGr//wD/f/8A+OwBAJKbtEaCtP8AB+0BABhU0tK0jP8AEO0BAH//gACAgP8AGu0BANQd2Ni/2P8AJ+0BAAa4//9jR/8AM+0BAHu24EDg0P8AQu0BANRz7u6C7v8ATu0BABtE9fXes/8AWe0BAAAA//////8AZO0BAAAA9fX19f8AdO0BACr/////AP8AgO0BADjAzZrNMv8Ake0BAC1D/Pf8uf8Amu0BAERb3a3djv8Ao+0BAGKyozGjVP8ArO0BACoy////zP8Ate0BAD5V5sLmmf8Avu0BAFVkxnjGef8Ax+0BAGO7hCOEQ/8A0O0BACoy////zP8A2e0BAD5V5sLmmf8A4u0BAFVkxnjGef8A6+0BAGKyozGjVP8A9O0BAGv/aABoN/8A/e0BACoy////zP8ABu4BADdR8Nnwo/8AD+4BAERb3a3djv8AGO4BAFVkxnjGef8AIe4BAGKyozGjVP8AKu4BAGv/aABoN/8AM+4BACoy////zP8APO4BADdR8Nnwo/8ARe4BAERb3a3djv8ATu4BAFVkxnjGef8AV+4BAGCeq0GrXf8AYO4BAGO7hCOEQ/8Aae4BAGz/WgBaMv8Acu4BACoZ////5f8Ae+4BAC1D/Pf8uf8AhO4BADdR8Nnwo/8Aje4BAERb3a3djv8Alu4BAFVkxnjGef8An+4BAGCeq0GrXf8AqO4BAGO7hCOEQ/8Ase4BAGz/WgBaMv8Auu4BACoZ////5f8Aw+4BAC1D/Pf8uf8AzO4BADdR8Nnwo/8A1e4BAERb3a3djv8A3u4BAFVkxnjGef8A5+4BAGCeq0GrXf8A8O4BAGO7hCOEQ/8A+e4BAGv/aABoN/8AAu8BAG7/RQBFKf8AC+8BADFJ+O34sf8AFu8BAHVhzX/Nu/8AIe8BAJDCuCx/uP8ALO8BACoy////zP8AN+8BAGNC2qHatP8AQu8BAISqxEG2xP8ATe8BAJbLqCJeqP8AWO8BACoy////zP8AY+8BAGNC2qHatP8Abu8BAISqxEG2xP8Aee8BAJDCuCx/uP8AhO8BAKS/lCU0lP8Aj+8BACoy////zP8Amu8BAEU66cfptP8Ape8BAHVhzX/Nu/8AsO8BAISqxEG2xP8Au+8BAJDCuCx/uP8Axu8BAKS/lCU0lP8A0e8BACoy////zP8A3O8BAEU66cfptP8A5+8BAHVhzX/Nu/8A8u8BAISqxEG2xP8A/e8BAIvYwB2RwP8ACPABAJbLqCJeqP8AE/ABAJ7nhAwshP8AHvABACom////2f8AKfABADFJ+O34sf8ANPABAEU66cfptP8AP/ABAHVhzX/Nu/8ASvABAISqxEG2xP8AVfABAIvYwB2RwP8AYPABAJbLqCJeqP8Aa/ABAJ7nhAwshP8AdvABACom////2f8AgfABADFJ+O34sf8AjPABAEU66cfptP8Al/ABAHVhzX/Nu/8AovABAISqxEG2xP8ArfABAIvYwB2RwP8AuPABAJbLqCJeqP8Aw/ABAKS/lCU0lP8AzvABAJ7nWAgdWP8A2fABACVC///3vP8A5PABAByv/v7ET/8A7/ABABDu2dlfDv8A+vABACoq////1P8ABfEBABxw/v7Zjv8AEPEBABbV/v6ZKf8AG/EBAA/8zMxMAv8AJvEBACoq////1P8AMfEBABxw/v7Zjv8APPEBABbV/v6ZKf8AR/EBABDu2dlfDv8AUvEBAA34mZk0BP8AXfEBACoq////1P8AaPEBAB9t/v7jkf8Ac/EBAByv/v7ET/8AfvEBABbV/v6ZKf8AifEBABDu2dlfDv8AlPEBAA34mZk0BP8An/EBACoq////1P8AqvEBAB9t/v7jkf8AtfEBAByv/v7ET/8AwPEBABbV/v6ZKf8Ay/EBABLp7OxwFP8A1vEBAA/8zMxMAv8A4fEBAAz3jIwtBP8A7PEBACoZ////5f8A9/EBACVC///3vP8AAvIBAB9t/v7jkf8ADfIBAByv/v7ET/8AGPIBABbV/v6ZKf8AI/IBABLp7OxwFP8ALvIBAA/8zMxMAv8AOfIBAAz3jIwtBP8ARPIBACoZ////5f8AT/IBACVC///3vP8AWvIBAB9t/v7jkf8AZfIBAByv/v7ET/8AcPIBABbV/v6ZKf8Ae/IBABLp7OxwFP8AhvIBAA/8zMxMAv8AkfIBAA34mZk0BP8AnPIBAA3wZmYlBv8Ap/IBACJf///toP8AsvIBABiy/v6yTP8AvfIBAAXd8PA7IP8AyPIBACpN////sv8A0/IBAB2i/v7MXP8A3vIBABHC/f2NPP8A6fIBAP7h4+MaHP8A9PIBACpN////sv8A//IBAB2i/v7MXP8ACvMBABHC/f2NPP8AFfMBAAXd8PA7IP8AIPMBAPb/vb0AJv8AK/MBACpN////sv8ANvMBAB6I/v7Zdv8AQfMBABiy/v6yTP8ATPMBABHC/f2NPP8AV/MBAAXd8PA7IP8AYvMBAPb/vb0AJv8AbfMBACpN////sv8AePMBAB6I/v7Zdv8Ag/MBABiy/v6yTP8AjvMBABHC/f2NPP8AmfMBAAfU/PxOKv8ApPMBAP7h4+MaHP8Ar/MBAPX/sbEAJv8AuvMBACoy////zP8AxfMBACJf///toP8A0PMBAB6I/v7Zdv8A2/MBABiy/v6yTP8A5vMBABHC/f2NPP8A8fMBAAfU/PxOKv8A/PMBAP7h4+MaHP8AB/QBAPX/sbEAJv8AEvQBACoy////zP8AHfQBACJf///toP8AKPQBAB6I/v7Zdv8AM/QBABiy/v6yTP8APvQBABHC/f2NPP8ASfQBAAfU/PxOKv8AVPQBAP7h4+MaHP8AX/QBAPb/vb0AJv8AavQBAPL/gIAAJv8AdfQBAJMP//D4//8Af/QBABgj+vrr1/8AjPQBABck///v2/8AmvQBABck7u7fzP8AqPQBABckzc3AsP8AtvQBABgii4uDeP8AxPQBAHGA/3//1P8Az/QBAHGA/3//1P8A2/QBAHGA7nbuxv8A5/QBAHGAzWbNqv8A8/QBAHGAi0WLdP8A//QBAH8P//D///8ABfUBAH8P//D///8ADPUBAH8P7uDu7v8AE/UBAH8OzcHNzf8AGvUBAH8Oi4OLi/8AIfUBACoa9fX13P8AJ/UBABc6///kxP8ALvUBABc6///kxP8ANvUBABc67u7Vt/8APvUBABY6zc23nv8ARvUBABc6i4t9a/8AWAwCAAAAAAAAAP8ATvUBABkx///rzf8AXfUBAKr//wAA//8AYvUBAKr//wAA//8AaPUBAKr/7gAA7v8AbvUBAKr/zQAAzf8AdPUBAKr/iwAAi/8AevUBAMDO4oor4v8AhfUBAAC+paUqKv8Ai/UBAAC///9AQP8AkvUBAAC/7u47O/8AmfUBAAC/zc0zM/8AoPUBAAC+i4sjI/8Ap/UBABdj3t64h/8AsfUBABdk///Tm/8AvPUBABdj7u7Fkf8Ax/UBABdjzc2qff8A0vUBABdji4tzVf8A3fUBAIBnoF+eoP8A5/UBAINn/5j1//8A8vUBAINm7o7l7v8A/fUBAINnzXrFzf8ACPYBAINmi1OGi/8AE/YBAD///3//AP8AHvYBAD///3//AP8AKvYBAD//7nbuAP8ANvYBAD//zWbNAP8AQvYBAD//i0WLAP8ATvYBABHa0tJpHv8AWPYBABHb//9/JP8AY/YBABHb7u52If8AbvYBABHazc1mHf8AefYBABHci4tFE/8AhPYBAAuv//9/UP8AivYBAAep//9yVv8AkfYBAAap7u5qUP8AmPYBAAapzc1bRf8An/YBAAaoi4s+L/8ApvYBAJqT7WSV7f8AtfYBACEi///43P8AvvYBACEi///43P8AyPYBACIj7u7ozf8A0vYBACIizc3Isf8A3PYBACMii4uIeP8A5vYBAPbn3NwUPP8A7vYBAH///wD///8A8/YBAH///wD///8A+fYBAH//7gDu7v8A//YBAH//zQDNzf8ABfcBAH//iwCLi/8AC/cBAB7vuLiGC/8AGfcBAB7w//+5D/8AKPcBAB7w7u6tDv8AN/cBAB7wzc2VDP8ARvcBAB7wi4tlCP8AVfcBAFX/ZABkAP8AX/cBACduvb23a/8AafcBADqOa1VrL/8AePcBADqP/8r/cP8AiPcBADqP7rzuaP8AmPcBADqPzaLNWv8AqPcBADqPi26LPf8AuPcBABf///+MAP8Aw/cBABX///9/AP8Az/cBABX/7u52AP8A2/cBABX/zc1mAP8A5/cBABX/i4tFAP8A8/cBAMbAzJkyzP8A/vcBAMbB/78+//8ACvgBAMbA7rI67v8AFvgBAMbAzZoyzf8AIvgBAMbAi2gii/8ALvgBAAp56emWev8AOfgBAFU9vI+8j/8ARvgBAFU+/8H/wf8AVPgBAFU+7rTutP8AYvgBAFU+zZvNm/8AcPgBAFU+i2mLaf8AfvgBAK+Pi0g9i/8AjPgBAH9nTy9PT/8AmvgBAH9o/5f///8AqfgBAH9n7o3u7v8AuPgBAH9ozXnNzf8Ax/gBAH9oi1KLi/8A1vgBAH9nTy9PT/8A5PgBAID/0QDO0f8A8vgBAMf/05QA0/8A/fgBAOjr//8Uk/8ABvkBAOjr//8Uk/8AEPkBAOjr7u4Sif8AGvkBAOjrzc0Qdv8AJPkBAOfsi4sKUP8ALvkBAIr//wC///8AOvkBAIr//wC///8AR/kBAIr/7gCy7v8AVPkBAIr/zQCazf8AYfkBAIr/iwBoi/8AbvkBAAAAaWlpaf8AdvkBAAAAaWlpaf8AfvkBAJTh/x6Q//8AifkBAJTh/x6Q//8AlfkBAJTh7hyG7v8AofkBAJThzRh0zf8ArfkBAJThixBOi/8AufkBAADOsrIiIv8Aw/kBAADP//8wMP8AzvkBAADP7u4sLP8A2fkBAADPzc0mJv8A5PkBAADPi4saGv8A7/kBABwP///68P8A+/kBAFXAiyKLIv8AB/oBAAAA3Nzc3P8AEfoBAKoH//j4//8AHPoBACP////XAP8AIfoBACP////XAP8AJ/oBACP/7u7JAP8ALfoBACP/zc2tAP8AM/oBACP/i4t1AP8AOfoBAB7Z2tqlIP8AQ/oBAB7a///BJf8ATvoBAB7a7u60Iv8AWfoBAB7azc2bHf8AZPoBAB7ai4tpFP8Ab/oBAAAAwMDAwP8AdPoBAAAAAAAAAP8AevoBAAAAAwMDA/8AgPoBAAAAGhoaGv8Ah/oBAAAA//////8Aj/oBAAAAHBwcHP8AlvoBAAAAHx8fH/8AnfoBAAAAISEhIf8ApPoBAAAAJCQkJP8Aq/oBAAAAJiYmJv8AsvoBAAAAKSkpKf8AufoBAAAAKysrK/8AwPoBAAAALi4uLv8Ax/oBAAAAMDAwMP8AzvoBAAAABQUFBf8A1PoBAAAAMzMzM/8A2/oBAAAANjY2Nv8A4voBAAAAODg4OP8A6foBAAAAOzs7O/8A8PoBAAAAPT09Pf8A9/oBAAAAQEBAQP8A/voBAAAAQkJCQv8ABfsBAAAARUVFRf8ADPsBAAAAR0dHR/8AE/sBAAAASkpKSv8AGvsBAAAACAgICP8AIPsBAAAATU1NTf8AJ/sBAAAAT09PT/8ALvsBAAAAUlJSUv8ANfsBAAAAVFRUVP8APPsBAAAAV1dXV/8AQ/sBAAAAWVlZWf8ASvsBAAAAXFxcXP8AUfsBAAAAXl5eXv8AWPsBAAAAYWFhYf8AX/sBAAAAY2NjY/8AZvsBAAAACgoKCv8AbPsBAAAAZmZmZv8Ac/sBAAAAaWlpaf8AevsBAAAAa2tra/8AgfsBAAAAbm5ubv8AiPsBAAAAcHBwcP8Aj/sBAAAAc3Nzc/8AlvsBAAAAdXV1df8AnfsBAAAAeHh4eP8ApPsBAAAAenp6ev8Aq/sBAAAAfX19ff8AsvsBAAAADQ0NDf8AuPsBAAAAf39/f/8Av/sBAAAAgoKCgv8AxvsBAAAAhYWFhf8AzfsBAAAAh4eHh/8A1PsBAAAAioqKiv8A2/sBAAAAjIyMjP8A4vsBAAAAj4+Pj/8A6fsBAAAAkZGRkf8A8PsBAAAAlJSUlP8A9/sBAAAAlpaWlv8A/vsBAAAADw8PD/8ABPwBAAAAmZmZmf8AC/wBAAAAnJycnP8AEvwBAAAAnp6env8AGfwBAAAAoaGhof8AIPwBAAAAo6Ojo/8AJ/wBAAAApqampv8ALvwBAAAAqKioqP8ANfwBAAAAq6urq/8APPwBAAAAra2trf8AQ/wBAAAAsLCwsP8ASvwBAAAAEhISEv8AUPwBAAAAs7Ozs/8AV/wBAAAAtbW1tf8AXvwBAAAAuLi4uP8AZfwBAAAAurq6uv8AbPwBAAAAvb29vf8Ac/wBAAAAv7+/v/8AevwBAAAAwsLCwv8AgfwBAAAAxMTExP8AiPwBAAAAx8fHx/8Aj/wBAAAAycnJyf8AlvwBAAAAFBQUFP8AnPwBAAAAzMzMzP8Ao/wBAAAAz8/Pz/8AqvwBAAAA0dHR0f8AsfwBAAAA1NTU1P8AuPwBAAAA1tbW1v8Av/wBAAAA2dnZ2f8AxvwBAAAA29vb2/8AzfwBAAAA3t7e3v8A1PwBAAAA4ODg4P8A2/wBAAAA4+Pj4/8A4vwBAAAAFxcXF/8A6PwBAAAA5eXl5f8A7/wBAAAA6Ojo6P8A9vwBAAAA6+vr6/8A/fwBAAAA7e3t7f8ABP0BAAAA8PDw8P8AC/0BAAAA8vLy8v8AEv0BAAAA9fX19f8AGf0BAAAA9/f39/8AIP0BAAAA+vr6+v8AJ/0BAAAA/Pz8/P8ALv0BAFX//wD/AP8ANP0BAFX//wD/AP8AO/0BAFX/7gDuAP8AQv0BAFX/zQDNAP8ASf0BAFX/iwCLAP8AUP0BADvQ/63/L/8AXP0BAAAAwMDAwP8AYf0BAAAAAAAAAP8AZ/0BAAAAAwMDA/8Abf0BAAAAGhoaGv8AdP0BAAAA//////8AfP0BAAAAHBwcHP8Ag/0BAAAAHx8fH/8Aiv0BAAAAISEhIf8Akf0BAAAAJCQkJP8AmP0BAAAAJiYmJv8An/0BAAAAKSkpKf8Apv0BAAAAKysrK/8Arf0BAAAALi4uLv8AtP0BAAAAMDAwMP8Au/0BAAAABQUFBf8Awf0BAAAAMzMzM/8AyP0BAAAANjY2Nv8Az/0BAAAAODg4OP8A1v0BAAAAOzs7O/8A3f0BAAAAPT09Pf8A5P0BAAAAQEBAQP8A6/0BAAAAQkJCQv8A8v0BAAAARUVFRf8A+f0BAAAAR0dHR/8AAP4BAAAASkpKSv8AB/4BAAAACAgICP8ADf4BAAAATU1NTf8AFP4BAAAAT09PT/8AG/4BAAAAUlJSUv8AIv4BAAAAVFRUVP8AKf4BAAAAV1dXV/8AMP4BAAAAWVlZWf8AN/4BAAAAXFxcXP8APv4BAAAAXl5eXv8ARf4BAAAAYWFhYf8ATP4BAAAAY2NjY/8AU/4BAAAACgoKCv8AWf4BAAAAZmZmZv8AYP4BAAAAaWlpaf8AZ/4BAAAAa2tra/8Abv4BAAAAbm5ubv8Adf4BAAAAcHBwcP8AfP4BAAAAc3Nzc/8Ag/4BAAAAdXV1df8Aiv4BAAAAeHh4eP8Akf4BAAAAenp6ev8AmP4BAAAAfX19ff8An/4BAAAADQ0NDf8Apf4BAAAAf39/f/8ArP4BAAAAgoKCgv8As/4BAAAAhYWFhf8Auv4BAAAAh4eHh/8Awf4BAAAAioqKiv8AyP4BAAAAjIyMjP8Az/4BAAAAj4+Pj/8A1v4BAAAAkZGRkf8A3f4BAAAAlJSUlP8A5P4BAAAAlpaWlv8A6/4BAAAADw8PD/8A8f4BAAAAmZmZmf8A+P4BAAAAnJycnP8A//4BAAAAnp6env8ABv8BAAAAoaGhof8ADf8BAAAAo6Ojo/8AFP8BAAAApqampv8AG/8BAAAAqKioqP8AIv8BAAAAq6urq/8AKf8BAAAAra2trf8AMP8BAAAAsLCwsP8AN/8BAAAAEhISEv8APf8BAAAAs7Ozs/8ARP8BAAAAtbW1tf8AS/8BAAAAuLi4uP8AUv8BAAAAurq6uv8AWf8BAAAAvb29vf8AYP8BAAAAv7+/v/8AZ/8BAAAAwsLCwv8Abv8BAAAAxMTExP8Adf8BAAAAx8fHx/8AfP8BAAAAycnJyf8Ag/8BAAAAFBQUFP8Aif8BAAAAzMzMzP8AkP8BAAAAz8/Pz/8Al/8BAAAA0dHR0f8Anv8BAAAA1NTU1P8Apf8BAAAA1tbW1v8ArP8BAAAA2dnZ2f8As/8BAAAA29vb2/8Auv8BAAAA3t7e3v8Awf8BAAAA4ODg4P8AyP8BAAAA4+Pj4/8Az/8BAAAAFxcXF/8A1f8BAAAA5eXl5f8A3P8BAAAA6Ojo6P8A4/8BAAAA6+vr6/8A6v8BAAAA7e3t7f8A8f8BAAAA8PDw8P8A+P8BAAAA8vLy8v8A//8BAAAA9fX19f8ABgACAAAA9/f39/8ADQACAAAA+vr6+v8AFAACAAAA/Pz8/P8AGwACAFUP//D/8P8AJAACAFUP//D/8P8ALgACAFUP7uDu4P8AOAACAFUOzcHNwf8AQgACAFUOi4OLg/8ATAACAOmW//9ptP8AVAACAOqR//9utP8AXQACAOuN7u5qp/8AZgACAOyHzc1gkP8AbwACAOqUi4s6Yv8AeAACAACMzc1cXP8AggACAACU//9qav8AjQACAACU7u5jY/8AmAACAACVzc1VVf8AowACAACUi4s6Ov8ArgACAML/gksAgv8AtQACACoA/////gAAuwACACoP////8P8AwQACACoP////8P8AyAACACoP7u7u4P8AzwACACoOzc3Nwf8A1gACACoOi4uLg/8A3QACACZq8PDmjP8A4wACACdw///2j/8A6gACACdw7u7mhf8A8QACACdvzc3Gc/8A+AACACdvi4uGTv8A/wACAKoU+ubm+v8ACAECAPAP///w9f8AFgECAPAP///w9f8AJQECAO8P7u7g5f8ANAECAPAOzc3Bxf8AQwECAO8Oi4uDhv8AUgECAED//Hz8AP8AXAECACYx///6zf8AaQECACYx///6zf8AdwECACUy7u7pv/8AhQECACYxzc3Jpf8AkwECACcxi4uJcP8AoQECAIk/5q3Y5v8AqwECAIpA/7/v//8AtgECAIpA7rLf7v8AwQECAIo/zZrAzf8AzAECAIlAi2iDi/8A1wECAAB38PCAgP8A4gECAH8f/+D///8A7AECAH8f/+D///8A9wECAH8f7tHu7v8AAgICAH8fzbTNzf8ADQICAH8fi3qLi/8AGAICACNz7u7dgv8AJwICACN0///si/8ANwICACNz7u7cgv8ARwICACNzzc2+cP8AVwICACNzi4uBTP8AZwICACoo+vr60v8AfAICAAAA09PT0/8AhgICAAAA09PT0/8AkAICAPhJ//+2wf8AmgICAPlR//+uuf8ApQICAPhR7u6irf8AsAICAPlQzc2Mlf8AuwICAPlQi4tfZf8AxgICAAyE//+gev8A0gICAAyE//+gev8A3wICAAuE7u6Vcv8A7AICAAyFzc2BYv8A+QICAAyFi4tXQv8ABgMCAH3RsiCyqv8AFAMCAI91+ofO+v8AIQMCAI9P/7Di//8ALwMCAI9P7qTT7v8APQMCAI5PzY22zf8ASwMCAI9Oi2B7i/8AWQMCAK+P/4Rw//8AaAMCAJQ4mXeImf8AdwMCAJQ4mXeImf8AhgMCAJc03rDE3v8AlQMCAJc1/8rh//8ApQMCAJc17rzS7v8AtQMCAJc1zaK1zf8A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HBwcHBwcFhwcHBwcHBwcHBwWHBocHBYcHBwcHBYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWHBYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYcFhYWFhYWFhYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//////////////////////////////////////////AAAAAAAAAAT+//+H/v//BwAAAAAAAAAA//9/////f//////////zf/79//////9///////////8P4P////8x/P///wAAAAAAAAD//////////////wEA+AMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDX///7/////39/VP3/DwD+3////////////t//////AwD///////+fGf///88/AwAAAAAAAP7///9/Av7///9/AAAAAAAAAAAA////BwcAAAAAAP7//wf+BwAAAAD+//////////98/38vAGAAAADg////////IwAAAP8DAAAA4J/5///9xQMAAACwAwADAOCH+f///W0DAAAAXgAAHADgr/v///3tIwAAAAABAAAA4J/5///9zSMAAACwAwAAAODHPdYYx78DAAAAAAAAAADg3/3///3vAwAAAAADAAAA4N/9///97wMAAABAAwAAAODf/f///f8DAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAA/v////9/DQA/AAAAAAAAAJYl8P6ubA0gHwAAAAAAAAAAAAAAAAAAAP/+////AwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/////z8A/////38A7doHAAAAAFABUDGCq2IsAAAAAEAAyYD1BwAAAAAIAQL/////////////////////////D///////////////A///Pz//////Pz//qv///z/////////fX9wfzw//H9wfAAAAAEBMAAAAAAAAAAAAAAcAAAAAAAAAAAAAAAAAAACAAAAA/gMAAP7///////////8fAP7/////////////B+D/////HwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//////////////////////////8/AAAAAAAAAAAAAAD//////////////////////////w8AAAAAAAAAAAAAAAAAAAAAYP8H/v//h/7//wcAAAAAAACAAP//f////3//////AAAAAAAAAP//////////////AQD4AwADAAAAAAD//////////z8AAAADAAAAwNf///v/////f39U/f8PAP7f///////////+3/////97AP///////58Z////zz8DAAAAAAAA/v///38C/v///38A/v/7//+7FgD///8HBwAAAAAA/v//B///BwD/A////////////3z/f+///z3/A+7////////z/z8e/8//AADun/n///3F0585gLDP/wMA5If5///9bdOHOQBewP8fAO6v+////e3zvzsAAMH/AADun/n///3N8485wLDD/wAA7Mc91hjHv8PHPYAAgP8AAO7f/f///e/D3z1gAMP/AADs3/3///3vw989YEDD/wAA7N/9///9/8PPPYAAw/8AAAAAAAAAAAAAAAAAAAAAAAD+/////3//B/9//wMAAAAAliXw/q5s/ztfP/8DAAAAAAAAAAP/A6DC//7///8D/v/fD7/+/z/+AgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/HwIAAACgAAAA/v8+AP7///////////8fZv7/////////////dxkAAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAoAAAAKQAAACAAAAAqAAAADAAAABkAAAAhAAAABgAAAAcAAAABAAAAAQAAAAAAAAAAAAAAABUKAAAVAAAAAAAAAAAAAAAAAAAAAAAAFRAMExweAw0fICEiIxsaERkZGRkZGRkZGRkWEgIOCw8cGBgYGBgYFhYWFhYWFhYWFhYWFhYWFhYWFhYUHAQcFhwYGBgYGBgWFhYWFhYWFhYWFhYWFhYWFhYWFhwkHBwcCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBgYGBgYGBgYGBgYGBgYGBgcHBwcHAAAAAAAAAAAAAQErAAAALAAAAC0AAAAuAAAALwAAAC0AAAAwAAAAMQAAADIAAAAZAAAAGgAAABsAAAAcAAAAHQAAAB4AAAAfAAAA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AGd2cmVuZGVyX2NvcmVfbXAuYwBtcF9yZXNvbHZlX2NvbG9yACVkICVkICVkICVkICVkICVkICUuMWYgJS40ZiAlZCAlLjFmICUuMWYgJWQgJWQgJXNcMDAxCgAjIGVuZCBvZiBGSUcgZmlsZQoAI0ZJRyAzLjIKACMgR2VuZXJhdGVkIGJ5ICVzIHZlcnNpb24gJXMgKCVzKQoAIyBUaXRsZTogJXMKACMgUGFnZXM6ICVkCgBQb3J0cmFpdAoAQ2VudGVyCgBJbmNoZXMKAExldHRlcgoAMTAwLjAwCgBTaW5nbGUKAC0yCgAxMjAwACAyCgBtcABtcDptcAAgXSAgJWQgdHJ1ZSAlcwoAIF0gICVkIGZhbHNlICVzCgAgc2V0bGluZXdpZHRoCgAlcyAAc2V0aHNiACUuNWcgJS41ZyAlLjVnICVzY29sb3IKACUgAG5ld3BhdGggACBtb3ZldG8KACBsaW5ldG8KAHN0cm9rZQoAIGN1cnZldG8KAGNsb3NlcGF0aCBmaWxsCgBjbG9zZXBhdGggc3Ryb2tlCgAgZWxsaXBzZV9wYXRoIGZpbGwKACBlbGxpcHNlX3BhdGggc3Ryb2tlCgAgLyVzIHNldF9mb250CgAgbW92ZXRvIAAgJXMgYWxpZ25lZHRleHQKAFsgL1JlY3QgWyAAIF0KACAgL0JvcmRlciBbIDAgMCAwIF0KICAvQWN0aW9uIDw8IC9TdWJ0eXBlIC9VUkkgL1VSSSAlcyA+PgogIC9TdWJ0eXBlIC9MaW5rCi9BTk4gcGRmbWFyawoAZ3NhdmUKACUlICVzCgAwIDAgMCBlZGdlY29sb3IKAGVuZHBhZ2UKc2hvd3BhZ2UKZ3Jlc3RvcmUKACUlUGFnZVRyYWlsZXIKACUlJSVFbmRQYWdlOiAlZAoAJSUlJVBhZ2U6ICVkICVkCgAlJSUlUGFnZUJvdW5kaW5nQm94OiAlZCAlZCAlZCAlZAoATGFuZHNjYXBlAFBvcnRyYWl0ACUlJSVQYWdlT3JpZW50YXRpb246ICVzCgA8PCAvUGFnZVNpemUgWyVkICVkXSA+PiBzZXRwYWdlZGV2aWNlCgAlZCAlZCAlZCBiZWdpbnBhZ2UKAGdzYXZlCiVkICVkICVkICVkIGJveHByaW0gY2xpcCBuZXdwYXRoCgAlZyAlZyBzZXRfc2NhbGUgJWQgcm90YXRlICVnICVnIHRyYW5zbGF0ZQoAY2FudmFzIHNpemUgKCVkLCVkKSBleGNlZWRzIFBERiBsaW1pdCAoJWQpCgkoc3VnZ2VzdCBzZXR0aW5nIGEgYm91bmRpbmcgYm94IHNpemUsIHNlZSBkb3QoMSkpCgBbIC9Dcm9wQm94IFslZCAlZCAlZCAlZF0gL1BBR0VTIHBkZm1hcmsKACVkICVkIHNldGxheWVyCgAlJSUlVGl0bGU6ICVzCgAlJVBhZ2VzOiAoYXRlbmQpCgAlJVBhZ2VzOiAxCgAlJUJvdW5kaW5nQm94OiAoYXRlbmQpCgAlJSUlQm91bmRpbmdCb3g6ICVkICVkICVkICVkCgAlJUVuZENvbW1lbnRzCnNhdmUKAHNldHVwTGF0aW4xCgBbIHtDYXRhbG9nfSA8PCAvVVJJIDw8IC9CYXNlICVzID4+ID4+Ci9QVVQgcGRmbWFyawoAJSVCZWdpblByb2xvZwAvRG90RGljdCAyMDAgZGljdCBkZWYARG90RGljdCBiZWdpbgAvc2V0dXBMYXRpbjEgewBtYXJrAC9FbmNvZGluZ1ZlY3RvciAyNTYgYXJyYXkgZGVmACBFbmNvZGluZ1ZlY3RvciAwAElTT0xhdGluMUVuY29kaW5nIDAgMjU1IGdldGludGVydmFsIHB1dGludGVydmFsAEVuY29kaW5nVmVjdG9yIDQ1IC9oeXBoZW4gcHV0ACUgU2V0IHVwIElTTyBMYXRpbiAxIGNoYXJhY3RlciBlbmNvZGluZwAvc3Rhcm5ldElTTyB7ACAgICAgICAgZHVwIGR1cCBmaW5kZm9udCBkdXAgbGVuZ3RoIGRpY3QgYmVnaW4AICAgICAgICB7IDEgaW5kZXggL0ZJRCBuZSB7IGRlZiB9eyBwb3AgcG9wIH0gaWZlbHNlACAgICAgICAgfSBmb3JhbGwAICAgICAgICAvRW5jb2RpbmcgRW5jb2RpbmdWZWN0b3IgZGVmACAgICAgICAgY3VycmVudGRpY3QgZW5kIGRlZmluZWZvbnQAfSBkZWYAL1RpbWVzLVJvbWFuIHN0YXJuZXRJU08gZGVmAC9UaW1lcy1JdGFsaWMgc3Rhcm5ldElTTyBkZWYAL1RpbWVzLUJvbGQgc3Rhcm5ldElTTyBkZWYAL1RpbWVzLUJvbGRJdGFsaWMgc3Rhcm5ldElTTyBkZWYAL0hlbHZldGljYSBzdGFybmV0SVNPIGRlZgAvSGVsdmV0aWNhLU9ibGlxdWUgc3Rhcm5ldElTTyBkZWYAL0hlbHZldGljYS1Cb2xkIHN0YXJuZXRJU08gZGVmAC9IZWx2ZXRpY2EtQm9sZE9ibGlxdWUgc3Rhcm5ldElTTyBkZWYAL0NvdXJpZXIgc3Rhcm5ldElTTyBkZWYAL0NvdXJpZXItT2JsaXF1ZSBzdGFybmV0SVNPIGRlZgAvQ291cmllci1Cb2xkIHN0YXJuZXRJU08gZGVmAC9Db3VyaWVyLUJvbGRPYmxpcXVlIHN0YXJuZXRJU08gZGVmAGNsZWFydG9tYXJrAH0gYmluZCBkZWYAJSVCZWdpblJlc291cmNlOiBwcm9jc2V0IGdyYXBodml6IDAgMAAvY29vcmQtZm9udC1mYW1pbHkgL1RpbWVzLVJvbWFuIGRlZgAvZGVmYXVsdC1mb250LWZhbWlseSAvVGltZXMtUm9tYW4gZGVmAC9jb29yZGZvbnQgY29vcmQtZm9udC1mYW1pbHkgZmluZGZvbnQgOCBzY2FsZWZvbnQgZGVmAC9JbnZTY2FsZUZhY3RvciAxLjAgZGVmAC9zZXRfc2NhbGUgewAgICAgICAgZHVwIDEgZXhjaCBkaXYgL0ludlNjYWxlRmFjdG9yIGV4Y2ggZGVmACAgICAgICBzY2FsZQAlIHN0eWxlcwAvc29saWQgeyBbXSAwIHNldGRhc2ggfSBiaW5kIGRlZgAvZGFzaGVkIHsgWzkgSW52U2NhbGVGYWN0b3IgbXVsIGR1cCBdIDAgc2V0ZGFzaCB9IGJpbmQgZGVmAC9kb3R0ZWQgeyBbMSBJbnZTY2FsZUZhY3RvciBtdWwgNiBJbnZTY2FsZUZhY3RvciBtdWxdIDAgc2V0ZGFzaCB9IGJpbmQgZGVmAC9pbnZpcyB7L2ZpbGwge25ld3BhdGh9IGRlZiAvc3Ryb2tlIHtuZXdwYXRofSBkZWYgL3Nob3cge3BvcCBuZXdwYXRofSBkZWZ9IGJpbmQgZGVmAC9ib2xkIHsgMiBzZXRsaW5ld2lkdGggfSBiaW5kIGRlZgAvZmlsbGVkIHsgfSBiaW5kIGRlZgAvdW5maWxsZWQgeyB9IGJpbmQgZGVmAC9yb3VuZGVkIHsgfSBiaW5kIGRlZgAvZGlhZ29uYWxzIHsgfSBiaW5kIGRlZgAvdGFwZXJlZCB7IH0gYmluZCBkZWYAJSBob29rcyBmb3Igc2V0dGluZyBjb2xvciAAL25vZGVjb2xvciB7IHNldGhzYmNvbG9yIH0gYmluZCBkZWYAL2VkZ2Vjb2xvciB7IHNldGhzYmNvbG9yIH0gYmluZCBkZWYAL2dyYXBoY29sb3IgeyBzZXRoc2Jjb2xvciB9IGJpbmQgZGVmAC9ub3Bjb2xvciB7cG9wIHBvcCBwb3B9IGJpbmQgZGVmAC9iZWdpbnBhZ2UgewklIGkgaiBucGFnZXMACS9ucGFnZXMgZXhjaCBkZWYACS9qIGV4Y2ggZGVmAAkvaSBleGNoIGRlZgAJL3N0ciAxMCBzdHJpbmcgZGVmAAlucGFnZXMgMSBndCB7AAkJZ3NhdmUACQkJY29vcmRmb250IHNldGZvbnQACQkJMCAwIG1vdmV0bwAJCQkoXCgpIHNob3cgaSBzdHIgY3ZzIHNob3cgKCwpIHNob3cgaiBzdHIgY3ZzIHNob3cgKFwpKSBzaG93AAkJZ3Jlc3RvcmUACX0gaWYAL3NldF9mb250IHsACWZpbmRmb250IGV4Y2gACXNjYWxlZm9udCBzZXRmb250ACUgZHJhdyB0ZXh0IGZpdHRlZCB0byBpdHMgZXhwZWN0ZWQgd2lkdGgAL2FsaWduZWR0ZXh0IHsJCQklIHdpZHRoIHRleHQACS90ZXh0IGV4Y2ggZGVmAAkvd2lkdGggZXhjaCBkZWYACWdzYXZlAAkJd2lkdGggMCBndCB7AAkJCVtdIDAgc2V0ZGFzaAAJCQl0ZXh0IHN0cmluZ3dpZHRoIHBvcCB3aWR0aCBleGNoIHN1YiB0ZXh0IGxlbmd0aCBkaXYgMCB0ZXh0IGFzaG93AAkJfSBpZgAJZ3Jlc3RvcmUAL2JveHByaW0gewkJCQklIHhjb3JuZXIgeWNvcm5lciB4c2l6ZSB5c2l6ZQAJCTQgMiByb2xsAAkJbW92ZXRvAAkJMiBjb3B5AAkJZXhjaCAwIHJsaW5ldG8ACQkwIGV4Y2ggcmxpbmV0bwAJCXBvcCBuZWcgMCBybGluZXRvAAkJY2xvc2VwYXRoAC9lbGxpcHNlX3BhdGggewAJL3J5IGV4Y2ggZGVmAAkvcnggZXhjaCBkZWYACS95IGV4Y2ggZGVmAAkveCBleGNoIGRlZgAJbWF0cml4IGN1cnJlbnRtYXRyaXgACW5ld3BhdGgACXggeSB0cmFuc2xhdGUACXJ4IHJ5IHNjYWxlAAkwIDAgMSAwIDM2MCBhcmMACXNldG1hdHJpeAAvZW5kcGFnZSB7IHNob3dwYWdlIH0gYmluZCBkZWYAL3Nob3dwYWdlIHsgfSBkZWYAL2xheWVyY29sb3JzZXEACVsJJSBsYXllciBjb2xvciBzZXF1ZW5jZSAtIGRhcmtlc3QgdG8gbGlnaHRlc3QACQlbMCAwIDBdAAkJWy4yIC44IC44XQAJCVsuNCAuOCAuOF0ACQlbLjYgLjggLjhdAAkJWy44IC44IC44XQAJXQBkZWYAL2xheWVybGVuIGxheWVyY29sb3JzZXEgbGVuZ3RoIGRlZgAvc2V0bGF5ZXIgey9tYXhsYXllciBleGNoIGRlZiAvY3VybGF5ZXIgZXhjaCBkZWYACWxheWVyY29sb3JzZXEgY3VybGF5ZXIgMSBzdWIgbGF5ZXJsZW4gbW9kIGdldAAJYWxvYWQgcG9wIHNldGhzYmNvbG9yAAkvbm9kZWNvbG9yIHtub3Bjb2xvcn0gZGVmAAkvZWRnZWNvbG9yIHtub3Bjb2xvcn0gZGVmAAkvZ3JhcGhjb2xvciB7bm9wY29sb3J9IGRlZgAvb25sYXllciB7IGN1cmxheWVyIG5lIHtpbnZpc30gaWYgfSBkZWYAL29ubGF5ZXJzIHsACS9teXVwcGVyIGV4Y2ggZGVmAAkvbXlsb3dlciBleGNoIGRlZgAJY3VybGF5ZXIgbXlsb3dlciBsdAAJY3VybGF5ZXIgbXl1cHBlciBndAAJb3IACXtpbnZpc30gaWYAL2N1cmxheWVyIDAgZGVmACUlRW5kUmVzb3VyY2UAJSVFbmRQcm9sb2cAJSVCZWdpblNldHVwADE0IGRlZmF1bHQtZm9udC1mYW1pbHkgc2V0X2ZvbnQAJSAvYXJyb3dsZW5ndGggMTAgZGVmACUgL2Fycm93d2lkdGggNSBkZWYAJSBtYWtlIHN1cmUgcGRmbWFyayBpcyBoYXJtbGVzcyBmb3IgUFMtaW50ZXJwcmV0ZXJzIG90aGVyIHRoYW4gRGlzdGlsbGVyAC9wZGZtYXJrIHdoZXJlIHtwb3B9IHt1c2VyZGljdCAvcGRmbWFyayAvY2xlYXJ0b21hcmsgbG9hZCBwdXR9IGlmZWxzZQAlIG1ha2UgJzw8JyBhbmQgJz4+JyBzYWZlIG9uIFBTIExldmVsIDEgZGV2aWNlcwAvbGFuZ3VhZ2VsZXZlbCB3aGVyZSB7cG9wIGxhbmd1YWdlbGV2ZWx9ezF9IGlmZWxzZQAyIGx0IHsAICAgIHVzZXJkaWN0ICg8PCkgY3ZuIChbKSBjdm4gbG9hZCBwdXQAICAgIHVzZXJkaWN0ICg+PikgY3ZuIChbKSBjdm4gbG9hZCBwdXQAfSBpZgAlJUVuZFNldHVwACUlVHJhaWxlcgoAJSUlJVBhZ2VzOiAlZAoAZW5kCnJlc3RvcmUKACUlRU9GCgAlIVBTLUFkb2JlLTMuMAAgRVBTRi0zLjAKACUlJSVDcmVhdG9yOiAlcyB2ZXJzaW9uICVzICglcykKAHBzMjpwcwA8IS0tIAA8cG9seWxpbmUAIHBvaW50cz0iACIvPgoAIGZpbGw9IgB1cmwoI2xfJWQpAHVybCgjcl8lZCkAIiBmaWxsLW9wYWNpdHk9IiVmACIgc3Ryb2tlPSIAIiBzdHJva2Utd2lkdGg9IgAiIHN0cm9rZS1kYXNoYXJyYXk9IiVzADUsMgAxLDUAIiBzdHJva2Utb3BhY2l0eT0iJWYAZ3ZyZW5kZXJfY29yZV9zdmcuYwBzdmdfcHJpbnRfY29sb3IAPHBhdGgAIGlkPSIAX3AiIAAgZD0iACVjADxkZWZzPgo8cmFkaWFsR3JhZGllbnQgaWQ9InJfJWQiIGN4PSI1MCUlIiBjeT0iNTAlJSIgcj0iNzUlJSIgZng9IiVkJSUiIGZ5PSIlZCUlIj4KADxzdG9wIG9mZnNldD0iMCIgc3R5bGU9InN0b3AtY29sb3I6ADtzdG9wLW9wYWNpdHk6ADEuADsiLz4KADxzdG9wIG9mZnNldD0iMSIgc3R5bGU9InN0b3AtY29sb3I6ADsiLz4KPC9yYWRpYWxHcmFkaWVudD4KPC9kZWZzPgoAPGRlZnM+CjxsaW5lYXJHcmFkaWVudCBpZD0ibF8lZCIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIAB4MT0iACIgeTE9IgAiIHgyPSIAIiB5Mj0iACIgPgoAPHN0b3Agb2Zmc2V0PSIlLjAzZiIgc3R5bGU9InN0b3AtY29sb3I6ADsiLz4KPC9saW5lYXJHcmFkaWVudD4KPC9kZWZzPgoAPHBvbHlnb24APGVsbGlwc2UAIGN4PSIAIiBjeT0iACIgcng9IgAiIHJ5PSIAPHRleHQAIHRleHQtYW5jaG9yPSJzdGFydCIAIHRleHQtYW5jaG9yPSJlbmQiACB0ZXh0LWFuY2hvcj0ibWlkZGxlIgAgeD0iACIgeT0iACBmb250LWZhbWlseT0iJXMALCVzACBmb250LXdlaWdodD0iJXMiACBmb250LXN0cmV0Y2g9IiVzIgAgZm9udC1zdHlsZT0iJXMiACBmb250LWZhbWlseT0iJXMiACBmb250LXdlaWdodD0iYm9sZCIAIGZvbnQtc3R5bGU9Iml0YWxpYyIAIHRleHQtZGVjb3JhdGlvbj0iACVzb3ZlcmxpbmUAJXNsaW5lLXRocm91Z2gAIGJhc2VsaW5lLXNoaWZ0PSJzdXBlciIAIGJhc2VsaW5lLXNoaWZ0PSJzdWIiACBmb250LXNpemU9IiUuMmYiACBmaWxsPSIlcyIAIGZpbGw9IiMlMDJ4JTAyeCUwMngiAHN2Z190ZXh0c3BhbgA+ADx0ZXh0UGF0aCB4bGluazpocmVmPSIjJXNfcCIgc3RhcnRPZmZzZXQ9IjUwJSUiPgA8dHNwYW4geD0iMCIgZHk9IgAiPgA8L3RzcGFuPjwvdGV4dFBhdGg+ADwvdGV4dD4KADwvZz4KADxnACBpZD0iYV8AIHhsaW5rOmhyZWY9IgAgeGxpbms6dGl0bGU9IgAgdGFyZ2V0PSIAPHRpdGxlPgA8L3RpdGxlPgoAPGcgaWQ9IgBfJXMAIiBjbGFzcz0iJXMAY2xhc3MAIHRyYW5zZm9ybT0ic2NhbGUoACkgcm90YXRlKCVkKSB0cmFuc2xhdGUoACkiPgoAPC9zdmc+CgA8IS0tACBQYWdlczogJWQgLS0+CgA8c3ZnIHdpZHRoPSIlZHB0IiBoZWlnaHQ9IiVkcHQiCgAgdmlld0JveD0iJS4yZiAlLjJmICUuMmYgJS4yZiIAIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIAIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIgA8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCIgc3RhbmRhbG9uZT0ibm8iPz4KAHN0eWxlc2hlZXQAPD94bWwtc3R5bGVzaGVldCBocmVmPSIAIiB0eXBlPSJ0ZXh0L2NzcyI/PgoAPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIgoAICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgoAPCEtLSBHZW5lcmF0ZWQgYnkgAGRhcmtibHVlAGRhcmtjeWFuAGRhcmtncmF5AGRhcmtncmV5AGRhcmttYWdlbnRhAGRhcmtyZWQAbGlnaHRncmVlbgAjIAAgY3JlYXRlIGxpbmUgACAtZmlsbCAAIC1kYXNoIDUAIC1kYXNoIDIAZ3ZyZW5kZXJfY29yZV90ay5jAHRrZ2VuX3ByaW50X3RhZ3MAZ3JhcGggbGFiZWwAIC10YWdzIHslZCVzJXB9AHRrZ2VuX3ByaW50X2NvbG9yACRjACAtd2lkdGggACAtc21vb3RoIGJlemllciAAIGNyZWF0ZSBwb2x5Z29uIAAgLW91dGxpbmUgACBjcmVhdGUgb3ZhbCAAIGNyZWF0ZSB0ZXh0IAAgLXRleHQgewB9ACAtZm9udCB7ACAlZH0AIC1hbmNob3IgdwAgLWFuY2hvciBlACMAIFRpdGxlOiAAIFBhZ2VzOiAlZAoAIyBHZW5lcmF0ZWQgYnkgACkKAHRrAHRrOnRrACAgICAgIDwhLS0gACAtLT4KAEVycm9yIGR1cmluZyBjb252ZXJzaW9uIHRvICJVVEYtOCIuICBRdWl0aW5nLgoAIDx2OnNoYXBlIHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0ZTsgACB3aWR0aDogJWQ7IGhlaWdodDogJWQiIGZpbGxlZD0iZmFsc2UiPgA8djpwYXRoIHY9IgAgbSAAJS4wZiwlLjBmIAAgbCAAIGUgACIvPgA8L3Y6c2hhcGU+CgA8djpzdHJva2UgY29sb3I9IgAiIHdlaWdodD0iJS4wZnB0ACIgZGFzaHN0eWxlPSJkYXNoACIgZGFzaHN0eWxlPSJkb3QAIiAvPgAjJTAyeCUwMnglMDJ4AGd2cmVuZGVyX2NvcmVfdm1sLmMAdm1sX3ByaW50X2NvbG9yACB3aWR0aDogJWQ7IGhlaWdodDogJWQiACA+ADx2OnBhdGggIHY9IgAvPjwvdjpzaGFwZT4KAG0gACVzJS4wZiwlLjBmIABjIAAgZmlsbGVkPSJ0cnVlIiBmaWxsY29sb3I9IgAiIAAgZmlsbGVkPSJmYWxzZSIgACUuMGYgJS4wZiAAbCAAeCBlICIvPgAgIDx2Om92YWwgc3R5bGU9InBvc2l0aW9uOmFic29sdXRlOwAgbGVmdDogJS4yZjsgdG9wOiAlLjJmOwAgd2lkdGg6ICUuMmY7IGhlaWdodDogJS4yZiIAPC92Om92YWw+CgA8djpyZWN0IHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0ZTsgACBzdHJva2VkPSJmYWxzZSIgZmlsbGVkPSJmYWxzZSI+CgA8djp0ZXh0Ym94IGluc2V0PSIwLDAsMCwwIiBzdHlsZT0icG9zaXRpb246YWJzb2x1dGU7IHYtdGV4dC13cmFwcGluZzonZmFsc2UnO3BhZGRpbmc6JzAnOwBmb250LWZhbWlseTogJyVzJzsAZm9udC13ZWlnaHQ6ICVzOwBmb250LXN0cmV0Y2g6ICVzOwBmb250LXN0eWxlOiAlczsAIGZvbnQtc2l6ZTogJS4yZnB0OwBjb2xvcjolczsAY29sb3I6IyUwMnglMDJ4JTAyeDsAdm1sX3RleHRzcGFuACI+PGNlbnRlcj4APC9jZW50ZXI+PC92OnRleHRib3g+CgA8L3Y6cmVjdD4KADwvYT4KADxhACBocmVmPSIlcyIAIHRpdGxlPSIlcyIAIHRhcmdldD0iJXMiAD4KADwvdjpncm91cD4KADwvRElWPgoAPERJViBpZD0nX1ZNTDJfJyBzdHlsZT0icG9zaXRpb246cmVsYXRpdmU7dmlzaWJpbGl0eTpoaWRkZW4iPgoAPCEtLSBpbnNlcnQgYW55IG90aGVyIGh0bWwgY29udGVudCBoZXJlIC0tPgoAPERJViBpZD0nX25vdFZNTDFfJyBzdHlsZT0icG9zaXRpb246cmVsYXRpdmU7Ij4KADwhLS0gdGhpcyBzaG91bGQgb25seSBkaXNwbGF5IG9uIE5PTi1JRSBicm93c2VycyAtLT4KADxIMj5Tb3JyeSwgdGhpcyBkaWFncmFtIHdpbGwgb25seSBkaXNwbGF5IGNvcnJlY3RseSBvbiBJbnRlcm5ldCBFeHBsb3JlciA1IChhbmQgdXApIGJyb3dzZXJzLjwvSDI+CgA8RElWIGlkPSdfbm90Vk1MMl8nIHN0eWxlPSJwb3NpdGlvbjpyZWxhdGl2ZTsiPgoAPCEtLSBpbnNlcnQgYW55IG90aGVyIE5PTi1JRSBodG1sIGNvbnRlbnQgaGVyZSAtLT4KADwvQk9EWT4KPC9IVE1MPgoAPEhFQUQ+ADxNRVRBIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PVVURi04Ij4KADxUSVRMRT4APC9USVRMRT4APCEtLSBQYWdlczogJWQgLS0+CgAgICA8U0NSSVBUIExBTkdVQUdFPSdKYXZhc2NyaXB0Jz4KACAgIGZ1bmN0aW9uIGJyb3dzZXJjaGVjaygpCgAgICB7CgAgICAgICB2YXIgdWEgPSB3aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudAoAICAgICAgdmFyIG1zaWUgPSB1YS5pbmRleE9mICggJ01TSUUgJyApCgAgICAgICB2YXIgaWV2ZXJzOwoAICAgICAgdmFyIGl0ZW07CgAgICAgICB2YXIgVk1MeWVzPW5ldyBBcnJheSgnX1ZNTDFfJywnX1ZNTDJfJyk7CgAgICAgICB2YXIgVk1Mbm89bmV3IEFycmF5KCdfbm90Vk1MMV8nLCdfbm90Vk1MMl8nKTsKACAgICAgIGlmICggbXNpZSA+IDAgKXsgICAgICAvLyBJZiBJbnRlcm5ldCBFeHBsb3JlciwgcmV0dXJuIHZlcnNpb24gbnVtYmVyCgAgICAgICAgICBpZXZlcnM9IHBhcnNlSW50ICh1YS5zdWJzdHJpbmcgKG1zaWUrNSwgdWEuaW5kZXhPZiAoJy4nLCBtc2llICkpKQoAICAgICAgfQoAICAgICAgaWYgKGlldmVycz49NSl7CgAgICAgICAgZm9yICh4IGluIFZNTHllcyl7CgAgICAgICAgICBpdGVtID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoVk1MeWVzW3hdKTsKACAgICAg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ZW5kX3BhZ2UKAC8vKioqIGJlZ2luX3BhZ2UKAC8vKioqIGVuZF9sYXllcgoALy8qKiogYmVnaW5fbGF5ZXI6ICVzLCAlZC8lZAoALy8qKiogZW5kX2dyYXBoCgAvLyoqKiBiZWdpbl9ncmFwaCAlcwoAY2FtZXJhIHsgbG9jYXRpb24gPCUuM2YgLCAlLjNmICwgJS4zZj4KICAgICAgICAgbG9va19hdCAgPCUuM2YgLCAlLjNmICwgJS4zZj4KICAgICAgICAgcmlnaHQgeCAqIGltYWdlX3dpZHRoIC8gaW1hZ2VfaGVpZ2h0CiAgICAgICAgIGFuZ2xlICUuM2YKfQoALy9za3kKcGxhbmUgeyA8MCwgMSwgMD4sIDEgaG9sbG93CiAgICB0ZXh0dXJlIHsKICAgICAgICBwaWdtZW50IHsgYm96byB0dXJidWxlbmNlIDAuOTUKICAgICAgICAgICAgY29sb3JfbWFwIHsKICAgICAgICAgICAgICAgIFswLjAwIHJnYiA8MC4wNSwgMC4yMCwgMC41MD5dCiAgICAgICAgICAgICAgICBbMC41MCByZ2IgPDAuMDUsIDAuMjAsIDAuNTA+XQogICAgICAgICAgICAgICAgWzAuNzUgcmdiIDwxLjAwLCAxLjAwLCAxLjAwPl0KICAgICAgICAgICAgICAgIFswLjc1IHJnYiA8MC4yNSwgMC4yNSwgMC4yNT5dCiAgICAgICAgICAgICAgICBbMS4wMCByZ2IgPDAuNTAsIDAuNTAsIDAuNTA+XQogICAgICAgICAgICB9CiAgICAgICAgICAgIHNjYWxlIDwxLjAwLCAxLjAwLCAxLjUwPiAqIDIuNTAKICAgICAgICAgICAgdHJhbnNsYXRlIDwwLjAwLCAwLjAwLCAwLjAwPgogICAgICAgIH0KICAgICAgICBmaW5pc2ggeyBhbWJpZW50IDEgZGlmZnVzZSAwIH0KICAgIH0KICAgIHNjYWxlIDEwMDAwCn0KLy9taXN0CmZvZyB7IGZvZ190eXBlIDIKICAgIGRpc3RhbmNlIDUwCiAgICBjb2xvciByZ2IgPDEuMDAsIDEuMDAsIDEuMDA+ICogMC43NQogICAgZm9nX29mZnNldCAwLjEwCiAgICBmb2dfYWx0IDEuNTAKICAgIHR1cmJ1bGVuY2UgMS43NQp9Ci8vZ25kCnBsYW5lIHsgPDAuMDAsIDEuMDAsIDAuMDA+LCAwCiAgICB0ZXh0dXJlIHsKICAgICAgICBwaWdtZW50eyBjb2xvciByZ2IgPDAuMjUsIDAuNDUsIDAuMDA+IH0KICAgICAgICBub3JtYWwgeyBidW1wcyAwLjc1IHNjYWxlIDAuMDEgfQogICAgICAgIGZpbmlzaCB7IHBob25nIDAuMTAgfQogICAgfQp9CgBsaWdodF9zb3VyY2UgeyA8MTUwMCwzMDAwLC0yNTAwPiBjb2xvciBXaGl0ZSB9CgAjdmVyc2lvbiAzLjY7CgBnbG9iYWxfc2V0dGluZ3MgeyBhc3N1bWVkX2dhbW1hIDEuMCB9CgAjZGVmYXVsdCB7IGZpbmlzaCB7IGFtYmllbnQgMC4xIGRpZmZ1c2UgMC45IH0gfQoAI2luY2x1ZGUgImNvbG9ycy5pbmMiCiNpbmNsdWRlICJ0ZXh0dXJlcy5pbmMiCiNpbmNsdWRlICJzaGFwZXMuaW5jIgoAI2RlY2xhcmUgJXMgPSAlczsKAEJsYWNrAFdoaXRlAGJha2Vyc2Nob2MAYnJhc3MAYnJpZ2h0Z29sZABicm9uemUAYnJvbnplMgBjbGVhcgBjb29sY29wcGVyAGNvcHBlcgBkYXJrYnJvd24AZGFya3B1cnBsZQBkYXJrdGFuAGRhcmt3b29kAGRrZ3JlZW5jb3BwZXIAZHVzdHlyb3NlAGZlbGRzcGFyAGZsZXNoAGdyYXkwNQBncmVlbmNvcHBlcgBodW50ZXJzZ3JlZW4AbGlnaHRfcHVycGxlAGxpZ2h0d29vZABtYW5kYXJpbm9yYW5nZQBtZWRpdW1mb3Jlc3RncmVlbgBtZWRpdW1nb2xkZW5yb2QAbWVkaXVtd29vZABtZWRfcHVycGxlAG1pY2EAbmVvbmJsdWUAbmVvbnBpbmsAbmV3bWlkbmlnaHRibHVlAG5ld3RhbgBvbGRnb2xkAHF1YXJ0egByaWNoYmx1ZQBzY2FybGV0AHNlbWlTd2VldENob2MAc2lsdmVyAHNwaWN5cGluawBzdW1tZXJza3kAdmVyeWRhcmticm93bgB2ZXJ5X2xpZ2h0X3B1cnBsZQBwb3YAcG92OnBvdgAlcyAlcwoALlwiIAAgJWQgJWQAICVzCgAgJWQAZmlsbCAAZWxsaXBzZSBhdHRycyVkICVzd2lkICUuNWYgaHQgJS41ZiBhdCAoJS41ZiwlLjVmKTsKAC5mdCAlcwoALnBzICVkKlxuKFNGdS8lLjBmdQoAIiVzIiBhdCAoJS41ZiwlLjVmKTsKACUwM28AJXMlcyBpcyBub3QgYSB0cm9mZiBmb250CgBkb3QgcGljIHBsdWdpbjogAFIAXQouUEUKAC5QUyAlLjVmICUuNWYKACVzIHRvIGNoYW5nZSBkcmF3aW5nIHNpemUsIG11bHRpcGx5IHRoZSB3aWR0aCBhbmQgaGVpZ2h0IG9uIHRoZSAuUFMgbGluZSBhYm92ZSBhbmQgdGhlIG51bWJlciBvbiB0aGUgdHdvIGxpbmVzIGJlbG93IChyb3VuZGVkIHRvIHRoZSBuZWFyZXN0IGludGVnZXIpIGJ5IGEgc2NhbGUgZmFjdG9yCgAubnIgU0YgJS4wZgpzY2FsZXRoaWNrbmVzcyA9ICUuMGYKACVzIGRvbid0IGNoYW5nZSBhbnl0aGluZyBiZWxvdyB0aGlzIGxpbmUgaW4gdGhpcyBkcmF3aW5nCgAlcyBub24tZmF0YWwgcnVuLXRpbWUgcGljIHZlcnNpb24gZGV0ZXJtaW5hdGlvbiwgdmVyc2lvbiAyCgBib3hyYWQ9Mi4wICVzIHdpbGwgYmUgcmVzZXQgdG8gMC4wIGJ5IGdwaWMgb25seQoAc2NhbGU9MS4wICVzIHJlcXVpcmVkIGZvciBjb21wYXJpc29ucwoAJXMgYm94cmFkIGlzIG5vdyAwLjAgaW4gZ3BpYywgZWxzZSBpdCByZW1haW5zIDIuMAoAJXMgZGFzaHdpZCBpcyAwLjEgaW4gMTB0aCBFZGl0aW9uLCAwLjA1IGluIERXQiAyIGFuZCBpbiBncGljCgAlcyBmaWxsdmFsIGlzIDAuMyBpbiAxMHRoIEVkaXRpb24gKGZpbGwgMCBtZWFucyBibGFjayksIDAuNSBpbiBncGljIChmaWxsIDAgbWVhbnMgd2hpdGUpLCB1bmRlZmluZWQgaW4gRFdCIDIKACVzIGZpbGwgaGFzIG5vIG1lYW5pbmcgaW4gRFdCIDIsIGdwaWMgY2FuIHVzZSBmaWxsIG9yIGZpbGxlZCwgMTB0aCBFZGl0aW9uIHVzZXMgZmlsbCBvbmx5CgAlcyBEV0IgMiBkb2Vzbid0IHVzZSBmaWxsIGFuZCBkb2Vzbid0IGRlZmluZSBmaWxsdmFsCgAlcyByZXNldCB3b3JrcyBpbiBncGljIGFuZCAxMHRoIGVkaXRpb24sIGJ1dCBpc24ndCBkZWZpbmVkIGluIERXQiAyCgAlcyBEV0IgMiBjb21wYXRpYmlsaXR5IGRlZmluaXRpb25zCgBpZiBib3hyYWQgPiAxLjAgJiYgZGFzaHdpZCA8IDAuMDc1IHRoZW4gWAoJZmlsbHZhbCA9IDE7CglkZWZpbmUgZmlsbCBZIFk7CglkZWZpbmUgc29saWQgWSBZOwoJZGVmaW5lIHJlc2V0IFkgc2NhbGU9MS4wIFk7ClgKAHJlc2V0ICVzIHNldCB0byBrbm93biBzdGF0ZQoAJXMgR05VIHBpYyB2cy4gMTB0aCBFZGl0aW9uIGRcKGUndGVudGUKAGlmIGZpbGx2YWwgPiAwLjQgdGhlbiBYCglkZWZpbmUgc2V0ZmlsbHZhbCBZIGZpbGx2YWwgPSAxIC0gWTsKCWRlZmluZSBib2xkIFkgdGhpY2tuZXNzIDIgWTsKAAklcyBpZiB5b3UgdXNlIGdwaWMgYW5kIGl0IGJhcmZzIG9uIGVuY291bnRlcmluZyAic29saWQiLAoACSVzCWluc3RhbGwgYSBtb3JlIHJlY2VudCB2ZXJzaW9uIG9mIGdwaWMgb3Igc3dpdGNoIHRvIERXQiBvciAxMHRoIEVkaXRpb24gcGljOwoACSVzCXNvcnJ5LCB0aGUgZ3JvZmYgZm9sa3MgY2hhbmdlZCBncGljOyBzZW5kIGFueSBjb21wbGFpbnQgdG8gdGhlbTsKAFggZWxzZSBaCglkZWZpbmUgc2V0ZmlsbHZhbCBZIGZpbGx2YWwgPSBZOwoJZGVmaW5lIGJvbGQgWSBZOwoJZGVmaW5lIGZpbGxlZCBZIGZpbGwgWTsKWgoAJXMgYXJyb3doZWFkIGhhcyBubyBtZWFuaW5nIGluIERXQiAyLCBhcnJvd2hlYWQgPSA3IG1ha2VzIGZpbGxlZCBhcnJvd2hlYWRzIGluIGdwaWMgYW5kIGluIDEwdGggRWRpdGlvbgoAJXMgYXJyb3doZWFkIGlzIHVuZGVmaW5lZCBpbiBEV0IgMiwgaW5pdGlh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IH0KACAgICB0ZXh0dXJlIEltYWdlVGV4dHVyZSB7IHVybCAiJXMiIH0KACAgfQoAY29yZV9sb2FkaW1hZ2VfZmlnACVkICVkICVkICVkICVkICVkICVkICVkICVkICUuMWYgJWQgJWQgJWQgJWQgJWQgJWQKICVkICVzCgAgJWQgJWQgJWQgJWQgJWQgJWQgJWQgJWQgJWQgJWQKAGNvcmVfbG9hZGltYWdlX3N2ZwA8aW1hZ2UgeGxpbms6aHJlZj0iACIgd2lkdGg9IiVncHgiIGhlaWdodD0iJWdweCIgcHJlc2VydmVBc3BlY3RSYXRpbz0ieE1pZFlNaWQgbWVldCIgeD0iJWciIHk9IiVnIgAgdHJhbnNmb3JtPSJyb3RhdGUoJWQgJWcgJWcpIgAiIHdpZHRoPSIlZ3B4IiBoZWlnaHQ9IiVncHgiIHByZXNlcnZlQXNwZWN0UmF0aW89InhNaW5ZTWluIG1lZXQiIHg9IiVnIiB5PSIlZyIALz4KAGRvdF9sYXlvdXQAcGhhc2UAZG90IGRvZXMgbm90IHN1cHBvcnQgdGhlIGFzcGVjdCBhdHRyaWJ1dGUgZm9yIGRpc2Nvbm5lY3RlZCBncmFwaHMgb3IgZ3JhcGhzIHdpdGggY2x1c3RlcnMKAGNvbXBvdW5kAHYgPT0gbgBkb3Rpbml0LmMAcmVtb3ZlX2Zyb21fcmFuawBvcmRlcgBlZGdlIGxhYmVscyB3aXRoIHNwbGluZXM9Y3VydmVkIG5vdCBzdXBwb3J0ZWQgaW4gZG90IC0gdXNlIHhsYWJlbHMKAEVEX2xhYmVsKGZlKQBkb3RzcGxpbmVzLmMAX2RvdF9zcGxpbmVzAGZsYXQgZWRnZSBiZXR3ZWVuIGFkamFjZW50IG5vZGVzIG9uZSBvZiB3aGljaCBoYXMgYSByZWNvcmQgc2hhcGUgLSByZXBsYWNlIHJlY29yZHMgd2l0aCBIVE1MLWxpa2UgbGFiZWxzCgAgIEVkZ2UgJXMgJXMgJXMKAHh4eAAxMDAwMAB7JXN9AGF1eGcAbGFiZWxfZmxvYXQAZml4ZWQAKGwgPSBFRF9sYWJlbChmZSkpAHNldEVkZ2VMYWJlbFBvcwBlICE9IE5VTEwAZmFzdGdyLmMAZGVsZXRlX2Zhc3RfZWRnZQBuICE9IE5EX25leHQobikAZmFzdF9ub2RlAHUgIT0gdgBmYXN0X25vZGVhcHAATkRfbmV4dCh2KSA9PSBOVUxMAGZpbmRfZmFzdF9ub2RlKGcsIG4pAGRlbGV0ZV9mYXN0X25vZGUAZGVsZXRlX2ZsYXRfZWRnZQBtZXJnZV9vbmV3YXkgZ2xpdGNoCgBtZXJnZV9vbmV3YXkAc2FmZV9kZWxldGVfZmFzdF9lZGdlAGxnAGNvbXAAY250ID09IHN6AG1pbmNyb3NzLmMAZml4TGFiZWxPcmRlcgByZW1pbmNyb3NzAG1pbmNyb3NzICVzOiAlZCBjcm9zc2luZ3MsICUuMmYgc2Vjcy4KAHYAbmVpZ2hib3IAKHJ2ID09IDApIHx8IChORF9vcmRlcihydiktTkRfb3JkZXIodikpKmRpciA+IDAAY29uc3RyYWluaW5nX2ZsYXRfZWRnZShnLHYsZSkgPT0gRkFMU0UAZmxhdF9yZW9yZGVyAE5EX3JhbmsodikgPT0gcgBwb3N0b3JkZXIAZmxhdGluZGV4KGFnaGVhZChlKSkgPCBNLT5ucm93cwBmbGF0X3NlYXJjaABmbGF0aW5kZXgoYWd0YWlsKGUpKSA8IE0tPm5jb2xzAG91dABvcmRlcmluZyAnJXMnIG5vdCByZWNvZ25pemVkLgoAb3JkZXJpbmcgJyVzJyBub3QgcmVjb2duaXplZCBmb3Igbm9kZSAnJXMnLgoAbWVyZ2UyOiBncmFwaCAlcywgcmFuayAlZCBoYXMgb25seSAlZCA8ICVkIG5vZGVzCgBtaW5jcm9zczogcGFzcyAlZCBpdGVyICVkIHRyeWluZyAlZCBjdXJfY3Jvc3MgJWQgYmVzdF9jcm9zcyAlZAoATkRfb3JkZXIodikgPCBORF9vcmRlcih3KQBiYWxhbmNlAHRyYW5zcG9zZV9zdGVwAHN1cnByaXNlCgBpbnN0YWxsX2luX3JhbmssIGxpbmUgJWQ6ICVzICVzIHJhbmsgJWQgaSA9ICVkIGFuID0gMAoAR0RfcmFuayhnKVtyXS5uIDw9IEdEX3JhbmsoZylbcl0uYW4AaW5zdGFsbF9pbl9yYW5rAGluc3RhbGxfaW5fcmFuaywgbGluZSAlZDogTkRfb3JkZXIoJXMpIFslZF0gPiBHRF9yYW5rKFJvb3QpWyVkXS5hbiBbJWRdCgBpbnN0YWxsX2luX3JhbmssIGxpbmUgJWQ6IHJhbmsgJWQgbm90IGluIHJhbmsgcmFuZ2UgWyVkLCVkXQoAaW5zdGFsbF9pbl9yYW5rLCBsaW5lICVkOiBHRF9yYW5rKGcpWyVkXS52ICsgTkRfb3JkZXIoJXMpIFslZF0gPiBHRF9yYW5rKGcpWyVkXS5hdiArIEdEX3JhbmsoUm9vdClbJWRdLmFuIFslZF0KAF9uZXdfcmFuawBtY2xpbWl0AHJhbmsoZywgMiwgbnNpdGVyMihnKSkgPT0gMABwb3NpdGlvbi5jAGRvdF9wb3NpdGlvbgBBUj0lMC40bGYJIEFyZWE9ICUwLjRsZgkARHVtbXk9JWQKAEdvaW5nIHRvIGFwcGx5IGFub3RoZXIgZXhwYW5zaW9uLgoAbmV4dCNpdGVyPSVkCgBocABjb25uZWN0R3JhcGgARWRnZSBsZW5ndGggJWYgbGFyZ2VyIHRoYW4gbWF4aW11bSAldSBhbGxvd2VkLgpDaGVjayBmb3Igb3ZlcndpZGUgbm9kZShzKS4KAG5zbGltaXQAY29udGFpbl9ub2RlcyBjbHVzdCAlcyByYW5rICVkIG1pc3Npbmcgbm9kZQoAbnNsaW1pdDEAbmV3cmFuawBNYXhyYW5rID0gJWQsIG1pbnJhbmsgPSAlZAoAbGVhZGVyICE9IE5VTEwAcmFuay5jAGNsdXN0ZXJfbGVhZGVyAChORF9VRl9zaXplKG4pIDw9IDEpIHx8IChuID09IGxlYWRlcikAYWdoZWFkKGUpID09IFVGX2ZpbmQoYWdoZWFkKGUpKQBtaW5tYXhfZWRnZXMAYWd0YWlsKGUpID09IFVGX2ZpbmQoYWd0YWlsKGUpKQByYW5rAHNhbWUAbWluAHNvdXJjZQBtYXgAc2luawBsZXZlbCBhc3NpZ25tZW50IGNvbnN0cmFpbnRzAGxldmVsIGdyYXBoIHJlYwB/cm9vdAB/dG9wAH9ib3QAY29tcGFjdABfd2Vha18lZAByYW5raW5nOiBmYWlsdXJlIHRvIGNyZWF0ZSBzdHJvbmcgY29uc3RyYWludCBlZGdlIGJldHdlZW4gbm9kZXMgJXMgYW5kICVzCgAlcyBoYXMgdW5yZWNvZ25pemVkIHJhbms9JXMAbGV2ZWwgZWRnZSByZWMAbGV2ZWwgbm9kZSByZWMAc2FtZWhlYWQAc2FtZXRhaWwAdG9vIG1hbnkgKD4gJWQpIHNhbWV7aGVhZCx0YWlsfSBncm91cHMgZm9yIG5vZGUgJXMKAGNvbWJpQVIgPSAlbGYKACVsZiwlZAB0aGUgYXNwZWN0IGF0dHJpYnV0ZSBoYXMgYmVlbiBkaXNhYmxlZCBkdWUgdG8gaW1wbGVtZW50YXRpb24gZmxhd3MgLSBhdHRyaWJ1dGUgaWdub3JlZC4KAEVEX3RvX3ZpcnQoZSkgPT0gTlVMTABjbGFzczIuYwBtZXJnZV9jaGFpbgBFRF90b192aXJ0KG9yaWcpID09IE5VTEwAbWFrZV9jaGFpbgBFRF90b192aXJ0KG9yaWcpICE9IE5VTEwATkRfcmFuayhmcm9tKSA8IE5EX3JhbmsodG8pAGNsdXN0ZXIuYwBtYXBfcGF0aAAlcyB3YXMgYWxyZWFkeSBpbiBhIHJhbmtzZXQsIGRlbGV0ZWQgZnJvbSBjbHVzdGVyICVzCgBsaGVhZABsdGFpbAAlcyAtPiAlczogc3BsaW5lIHNpemUgPiAxIG5vdCBzdXBwb3J0ZWQKACVzIC0+ICVzOiBoZWFkIG5vdCBpbnNpZGUgaGVhZCBjbHVzdGVyICVzCgAlcyAtPiAlczogdGFpbCBpcyBpbnNpZGUgaGVhZCBjbHVzdGVyICVzCgBiZXotPnNmbGFnAGNvbXBvdW5kLmMAbWFrZUNvbXBvdW5kRWRnZQBiZXotPmVmbGFnACVzIC0+ICVzOiB0YWlsIG5vdCBpbnNpZGUgdGFpbCBjbHVzdGVyICVzCgAlcyAtPiAlczogaGVhZCBpcyBpbnNpZGUgdGFpbCBjbHVzdGVyICVzCgBzZWdtZW50IFslcywlc10gZG9lcyBub3QgaW50ZXJzZWN0IGJveCBsbD0lcyx1cj0lcwoAYm94SW50ZXJzZWN0ZgAoJS41ZywlLjVnKQBjbHVzdGVyIG5hbWVkICVzIG5vdCBmb3VuZAoAY29uY2VudHJhdGU9dHJ1ZSBtYXkgbm90IHdvcmsgY29ycmVjdGx5LgoAcmVidWlsdGRfdmxpc3RzOiByYW5rIGxlYWQgJXMgbm90IGluIG9yZGVyICVkIG9mIHJhbmsgJWQKAGRlZ2VuZXJhdGUgY29uY2VudHJhdGVkIHJhbmsgJXMsJWQKAE5EX2luKHJpZ2h0KS5zaXplICsgTkRfb3V0KHJpZ2h0KS5zaXplID09IDAAY29uYy5jAG1lcmdldmlydHVhbABkb3Q6IE91dCBvZiBtZW1vcnkKAE5EX291dCh2KS5zaXplID09IDIAZmxhdC5jAHNldGJvdW5kcwBHRF9taW5yYW5rKGcpID09IDAAYWJvbWluYXRpb24AbmVhdG9fbGF5b3V0AG5lYXRvAGZkcAB0d29waQBjaXJjbwBwYXRjaHdvcmsAb3NhZ2UAbm9wAG5vcDEAbm9wMgAlbGYsJWxmLCVsZiVjAG5vZGUgJXMsIHBvc2l0aW9uICVzLCBleHBlY3RlZCB0d28gZG91YmxlcwoAbm90cmFuc2xhdGUAbm9kZSAlcyBpbiBncmFwaCAlcyBoYXMgbm8gcG9zaXRpb24KAHMsJWxmLCVsZiVuACBlLCVsZiwlbGYlbgBwb3MgYXR0cmlidXRlIGZvciBlZGdlICglcywlcykgZG9lc24ndCBoYXZlIDNuKzEgcG9pbnRzCgAlbGYsJWxmJW4Ac3ludGF4IGVycm9yIGluIHBvcyBhdHRyaWJ1dGUgZm9yIGVkZ2UgKCVzLCVzKQoAJWxmLCVsZiwlbGYsJWxmAHN0YXJ0AHNlbGYAcmFuZG9tAG5vZGUgcG9zaXRpb25zIGFyZSBpZ25vcmVkIHVubGVzcyBzdGFydD1yYW5kb20KAGFzIHJlcXVpcmVkIGJ5IHRoZSAtbiBmbGFnCgBfbmVhdG9fY2MAZ3JhcGggJXMgaXMgZGlzY29ubmVjdGVkLiBIZW5jZSwgdGhlIGNpcmN1aXQgbW9kZWwKAEFsdGVybmF0aXZlbHksIGNvbnNpZGVyIHJ1bm5pbmcgbmVhdG8gdXNpbmcgLUdwYWNrPXRydWUgb3IgZGVjb21wb3NpbmcKAHRoZSBncmFwaCBpbnRvIGNvbm5lY3RlZCBjb21wb25lbnRzLgoAU29sdmluZyBtb2RlbCAlZCBpdGVyYXRpb25zICVkIHRvbCAlZgoATkRfaWQobnApID09IGkAbmVhdG9pbml0LmMAbWFrZUdyYXBoRGF0YQBmIDwgZ3JhcGhbal0ubmVkZ2VzAGRmc0N5Y2xlAG1vZGVsICVkIHNtYXJ0X2luaXQgJWQgc3RyZXNzd3QgJWQgaXRlcmF0aW9ucyAlZCB0b2wgJWYKAGNvbnZlcnQgZ3JhcGg6IABtYWpvcml6YXRpb24KACVkIG5vZGVzICUuMmYgc2VjCgBsZXZlbHNnYXAAbGF5b3V0IGFib3J0ZWQKAHN0cmVzc3d0ACVzIGF0dHJpYnV0ZSB2YWx1ZSBtdXN0IGJlIDEgb3IgMiAtIGlnbm9yaW5nCgBtb2RlbABjaXJjdWl0AHN1YnNldABzaG9ydHBhdGgAbWRzAGVkZ2VzIGluIGdyYXBoICVzIGhhdmUgbm8gbGVuIGF0dHJpYnV0ZS4gSGVuY2UsIHRoZSBtZHMgbW9kZWwKAGlzIGluYXBwcm9wcmlhdGUuIFJldmVydGluZyB0byB0aGUgc2hvcnRlc3QgcGF0aCBtb2RlbC4KAFVua25vd24gdmFsdWUgJXMgZm9yIGF0dHJpYnV0ZSAibW9kZWwiIGluIGdyYXBoICVzIC0gaWdub3JlZAoAbW9kZQBLSwBtYWpvcgBoaWVyAElsbGVnYWwgdmFsdWUgJXMgZm9yIGF0dHJpYnV0ZSAibW9kZSIgaW4gZ3JhcGggJXMgLSBpZ25vcmVkCgBkaW1lbgBtYWtlU3BsaW5lOiBmYWlsZWQgdG8gbWFrZSBzcGxpbmUgZWRnZSAoJXMsJXMpCgBzcGxpbmUgJXMgJXMKAGIgPT0gbgBuZWF0b3NwbGluZXMuYwBtYWtlX2JhcnJpZXJzAHRoZSBib3VuZGluZyBib3hlcyBvZiBzb21lIG5vZGVzIHRvdWNoIC0gZmFsbGluZyBiYWNrIHRvIHN0cmFpZ2h0IGxpbmUgZWRnZXMKAHNvbWUgbm9kZXMgd2l0aCBtYXJnaW4gKCUuMDJmLCUuMDJmKSB0b3VjaCAtIGZhbGxpbmcgYmFjayB0byBzdHJhaWdodCBsaW5lIGVkZ2VzCgBwb2x5bGluZXMAbGluZSBzZWdtZW50cwBvcnRob2dvbmFsIGxpbmVzAENyZWF0aW5nIGVkZ2VzIHVzaW5nICVzCgBwb2x5bGluZSAlcyAlcwoAbWRzTW9kZWw6IGRlbHRhID0gJWYKAFNldHRpbmcgdXAgc3RyZXNzIGZ1bmN0aW9uAFNvbHZpbmcgbW9kZWw6IAAKZmluYWwgZSA9ICVmICVkIGl0ZXJhdGlvbnMgJS4yZiBzZWMKAERhbXBpbmcAZGVmYXVsdGRpc3QAIGluICVzIC0gc2V0dGluZyB0byAlLjAyZgoAYmFkIGVkZ2UgbGVuICIlcyIAU2V0dGluZyBpbml0aWFsIHBvc2l0aW9ucwoAc3RhcnQ9JXMgbm90IHN1cHBvcnRlZCB3aXRoIG1vZGU9c2VsZiAtIGlnbm9yZWQKAFNldHRpbmcgdXAgc3ByaW5nIG1vZGVsOiAAJS4yZiBzZWMKAApmaW5hbCBlID0gJWYAIQAgJWQlcyBpdGVyYXRpb25zICUuMmYgc2VjCgBNYXguIGl0ZXJhdGlvbnMgKCVkKSByZWFjaGVkIG9uIGdyYXBoICVzCgAlcyAlLjNmCgAlLjNmIABORF9oZWFwaW5kZXgodikgPCAwAHN0dWZmLmMAbmVhdG9fZW5xdWV1ZQBDYWxjdWxhdGluZyBzaG9ydGVzdCBwYXRoczogAHNwZWNpZmllZCByb290IG5vZGUgIiVzIiB3YXMgbm90IGZvdW5kLgBVc2luZyBkZWZhdWx0IGNhbGN1bGF0aW9uIGZvciByb290IG5vZGUKAHJlcG9zaXRpb24gJXMKACVzIDogJWYgJWYKACVzIDogJWYgJWYgJWYgJWYKACAgAEdyYXBoICVzIGhhcyBhcnJheSBwYWNraW5nIHdpdGggdXNlciB2YWx1ZXMgYnV0IG5vICJzb3J0diIgYXR0cmlidXRlcyBhcmUgZGVmaW5lZC4AbGVuAHBpbgBXYXJuaW5nOiBub2RlICVzLCBwb3NpdGlvbiAlcywgZXhwZWN0ZWQgdHdvIGZsb2F0cwoAY29vcmRzAGRpbQBsYXlvdXQgJXMKAGVuZCAlcwoAaWR4ID09IHN6AGxheW91dC5jAGV4cGFuZENsdXN0ZXIAaSA9PSBkZWcAZ2V0RWRnZUxpc3QAX2RnXyVkAGRlcml2ZSBncmFwaCAlcyBvZiAlcwoAbm9kZSAiJXMiIGlzIGNvbnRhaW5lZCBpbiB0d28gbm9uLWNvbXBhcmFibGUgY2x1c3RlcnMgIiVzIiBhbmQgIiVzIgoAX3BvcnRfJXNfJXNfJXNfJWxkAF9wb3J0XyVzXyglZClfKCVkKV8lbGQAJWxmLCVsZiwlbGYsJWxmJWMAZ3JhcGggJXMsIGNvb3JkICVzLCBleHBlY3RlZCBmb3VyIGRvdWJsZXMKAHNwbGluZXMgYW5kIGNsdXN0ZXIgZWRnZXMgbm90IHN1cHBvcnRlZCAtIHVzaW5nIGxpbmUgc2VnbWVudHMKAG1heGl0ZXIASwBUMABmZHAgZG9lcyBub3Qgc3VwcG9ydCBzdGFydD1zZWxmIC0gaWdub3JpbmcKAHhMYXlvdXQgADk6cHJpc20AdHJpZXMgPSAlZCwgbW9kZSA9ICVzCgBkZXJpdmVkAGluZm8Abm9ybWFsaXplAG92ZXJsYXAAT3ZlcmxhcCB2YWx1ZSAiJXMiIHVuc3VwcG9ydGVkIC0gaWdub3JlZAoAVW5yZWNvZ25pemVkIG92ZXJsYXAgdmFsdWUgIiVzIiAtIHVzaW5nIGZhbHNlCgBWb3Jvbm9pAG92ZXJsYXA6ICVzIHZhbHVlICVkIHNjYWxpbmcgJS4wNGYKAG92ZXJsYXBfc2NhbGluZwB2b3Jvbm9pAHNjYWxpbmcAdnBzYwBpcHNlcABvc2NhbGUAb2xkIHNjYWxpbmcAc2NhbGV4eQB4IGFuZCB5IHNjYWxpbmcAb3J0aG8Ab3J0aG9nb25hbCBjb25zdHJhaW50cwBvcnRob195eABvcnRob3h5AHh5IG9ydGhvZ29uYWwgY29uc3RyYWludHMAb3J0aG95eAB5eCBvcnRob2dvbmFsIGNvbnN0cmFpbnRzAHBvcnRobwBwc2V1ZG8tb3J0aG9nb25hbCBjb25zdHJhaW50cwBwb3J0aG9feXgAcG9ydGhveHkAeHkgcHNldWRvLW9ydGhvZ29uYWwgY29uc3RyYWludHMAcG9ydGhveXgAeXggcHNldWRvLW9ydGhvZ29uYWwgY29uc3RyYWludHMAcHJpc20AQWRqdXN0aW5nICVzIHVzaW5nICVzCgBVbmhhbmRsZWQgYWRqdXN0IG9wdGlvbiAlcwoATnVtYmVyIG9mIGl0ZXJhdGlvbnMgPSAlZAoATnVtYmVyIG9mIGluY3JlYXNlcyA9ICVkCgBvdmVybGFwIFslZF0gOiAlZAoAdm9yb19tYXJnaW4Ac2VwAGVzZXAATm9kZSBzZXBhcmF0aW9uOiBhZGQ9JWQgKCVmLCVmKQoAJWYsJWYAc2NhbGUgPSAoJS4wM2YsJS4wM2YpCgBFZGdlIHNlcGFyYXRpb246IGFkZD0lZCAoJWYsJWYpCgBDYWxjdWxhdGluZyBjaXJjdWl0IG1vZGVsAGNvbmp1Z2F0ZV9ncmFkaWVudDogdW5leHBlY3RlZCBsZW5ndGggMCB2ZWN0b3IKAENhbGN1bGF0aW5nIHN1YnNldCBtb2RlbABncmFwaCBpcyBkaXNjb25uZWN0ZWQuIEhlbmNlLCB0aGUgY2lyY3VpdCBtb2RlbAoAaXMgdW5kZWZpbmVkLiBSZXZlcnRpbmcgdG8gdGhlIHNob3J0ZXN0IHBhdGggbW9kZWwuCgBDYWxjdWxhdGluZyBNRFMgbW9kZWwAQ2FsY3VsYXRpbmcgc2hvcnRlc3QgcGF0aHMAOiAlLjJmIHNlYwoAU2V0dGluZyBpbml0aWFsIHBvc2l0aW9ucwA6ICUuMmYgc2VjAGNnAGRlbHRhIDw9IDB4RkZGRgBjb25zdHJhaW50LmMAbWtOQ29uc3RyYWludEcAdmcAY29tcHJlc3MgJWcgCgBzY2FsZSBieSAlZywlZyAKAGJlc3Rjb3N0IDwgSFVHRV9WQUwAY29tcHV0ZVNjYWxlWFkAdHJ5aW5nIHRvIGRlbGV0ZSBhIG5vbi1saW5lCgAKaW50ZXJzZWN0aW9uIGF0ICUuM2YgJS4zZgoAc2VnIyVkIDogKCUuM2YsICUuM2YpICglLjNmLCAlLjNmKQoAbWFrZUFkZFBvbHk6IHVua25vd24gc2hhcGUgdHlwZSAlcwoAbWFrZVBvbHk6IHVua25vd24gc2hhcGUgdHlwZSAlcwoAeCE9TlVMTABzbWFydF9pbmlfeC5jAElNRFNfZ2l2ZW5fZGltAGlsbC1jb25kaXRpb25lZAByb290ID0gJXMgbWF4IHN0ZXBzIHRvIHJvb3QgPSAlZAoAdHdvcGk6IHVzZSBvZiB3ZWlnaHQ9MCBjcmVhdGVzIGRpc2Nvbm5lY3RlZCBjb21wb25lbnQuCgBSYW5rIHNlcGFyYXRpb24gPSAAJS4wM2xmIABhcmVhAGluc2V0ACVzIGNvb3JkICUuNWcgJS41ZyBodCAlZiB3aWR0aCAlZgoAJS4wM2YAcmVjICVmICVmICVmICVmCgAlZiAtICVmICVmICVmICVmID0gJWYgKCVmICVmICVmICVmKQoAdHJ5aW5nIHRvIGFkZCB0byByZWN0IHslZiArLy0gJWYsICVmICsvLSAlZn0KAHRvdGFsIGFkZGVkIHNvIGZhciA9ICVkCgBhZGRpbmcgJWQgaXRlbXMsIHRvdGFsIGFyZWEgPSAlZiwgdyA9ICVmLCBhcmVhL3c9JWYKAGNvbXBvdW5kRWRnZXM6IGNvdWxkIG5vdCBjb25zdHJ1Y3Qgb2JzdGFjbGVzIC0gZmFsbGluZyBiYWNrIHRvIHN0cmFpZ2h0IGxpbmUgZWRnZXMKAGNvbXBvdW5kRWRnZXM6IG5vZGVzIHRvdWNoIC0gZmFsbGluZyBiYWNrIHRvIHN0cmFpZ2h0IGxpbmUgZWRnZXMKAHBhY2sgdmFsdWUgJWQgaXMgc21hbGxlciB0aGFuIGVzZXAgKCUuMDNmLCUuMDNmKQoAc2VwIHZhbHVlICglLjAzZiwlLjAzZikgaXMgc21hbGxlciB0aGFuIGVzZXAgKCUuMDNmLCUuMDNmKQoAY2Mlc18lZABjYyVzKyVkAGNfY250ID09IDAAY29tcC5jAGZpbmRDQ29tcABncmlkKCVkLCVkKTogJXMKAG9uZWJsb2NrAG1pbmRpc3QAYXJ0aWN1bGF0aW9uX3BvcwByb290AHJvb3QgPSAlcwoAX2Jsb2NrXyVkAHMtPnN6ID4gMABibG9ja3RyZWUuYwBwb3AAYWN0dWFsAG5vZGVsaXN0LmMAaW5zZXJ0Tm9kZWxpc3QAX3NwYW5fJWQAX2Nsb25lXyVkAGlwAGRlZ2xpc3QuYwByZW1vdmVEZWdsaXN0AEVycm9yAFdhcm5pbmcAJXM6IAB1c2Vyb3V0OiBjb3VsZCBub3QgYWxsb2NhdGUgbWVtb3J5CgBfQUdfc3RyZGF0YQBfQUdfZGF0YWRpY3QAYWdkaWN0b2Y6IHVua25vd24ga2luZCAlZAoAJWMlbGQAbWVtb3J5IGFsbG9jYXRpb24gZmFpbHVyZQBhZ2RlbGV0ZSBvbiB3cm9uZyBncmFwaABfQUdfcGVuZGluZwBhZ3JlY29yZF9jYWxsYmFjayBvZiBhIGJhZCBvYmplY3QAcGVuZCBkaWN0b2YgYSBiYWQgb2JqZWN0AG1vdmUgdG8gZnJvbnQgbG9jayBpbmNvbnNpc3RlbmN5AFxcAGZhdGFsIGZsZXggc2Nhbm5lciBpbnRlcm5hbCBlcnJvci0tbm8gYWN0aW9uIGZvdW5kACVzCgBmYXRhbCBmbGV4IHNjYW5u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JWQsJWQpICglZCwlZCkKAGNjICglZCBjZWxscykgYXQgKCVkLCVkKQoAJXMgbm8uIGNlbGxzICVkIFcgJWQgSCAlZAoAICAlZCAlZCBjZWxsCgBsaWJwYWNrOiBkaXNjID0gJWYgKCA8IDApCgBQYWNraW5nOiBjb21wdXRlIGdyaWQgc2l6ZQoAYSAlZiBiICVmIGMgJWYgZCAlZiByICVmCgByb290ICVkICglZikgJWQgKCVmKQoAIHIxICVmIHIyICVmCgBwaW5mbwBwYWNrLmMAZ2V0UGFja0luZm8AICBtYXJnaW4gJWQKAHBhY2ttb2RlAHBhcnNlUGFja01vZGVJbmZvAGFycmF5AGFzcGVjdAAlZgBwYWNrIGluZm86CgAgIG1vZGUgICAlcwoAICBhc3BlY3QgJWYKACAgc2l6ZSAgICVkCgAgIGZsYWdzICAlZAoAdW5kZWZpbmVkAHBhY2sAQXJyb3cgdHlwZSAiJXMiIHVua25vd24gLSBpZ25vcmluZwoAbm9ybWFsAGNyb3cAdGVlAGRvdABpbnYAdmVlAHBlbgBtcHR5AGN1cnZlAGljdXJ2ZQBsAGhhbGYAaW52ZW1wdHkAX2JhY2tncm91bmQAX2RyYXdfAENvdWxkIG5vdCBwYXJzZSAiX2JhY2tncm91bmQiIGF0dHJpYnV0ZSBpbiBncmFwaCAlcwoAICAiJXMiCgBubyBtZW1vcnkgZnJvbSB6bWFsbG9jKCkKAG9iagBlbWl0LmMAcG9wX29ial9zdGF0ZQBjbHVzdAAlbGQAcGFnZSVkLCVkXwBUb3RhbCBzaXplID4gMSBpbiAiJXMiIGNvbG9yIHNwZWMgAElsbGVnYWwgbGVuZ3RoIHZhbHVlIGluICIlcyIgY29sb3IgYXR0cmlidXRlIABsbnJjb2xvcnNjaGVtZQBlbWl0X2VkZ2VfbGFiZWwAJXMtJXMAZm9yd2FyZABiYWNrACAtPiAAIC0tIABpbiBlZGdlICVzJXMlcwoAbGFiZWxhbGlnbmVkAGVkZ2VocmVmAGVkZ2VVUkwAbGFiZWxocmVmAGxhYmVsVVJMAHRhaWxocmVmAHRhaWxVUkwAaGVhZGhyZWYAaGVhZFVSTABlZGdldGFyZ2V0AGxhYmVsdGFyZ2V0AHRhaWx0YXJnZXQAaGVhZHRhcmdldABlZGdldG9vbHRpcABsYWJlbHRvb2x0aXAAdGFpbHRvb2x0aXAAaGVhZHRvb2x0aXAAAW5lc3Rpbmcgbm90IGFsbG93ZWQgaW4gc3R5bGU6ICVzCgB1bm1hdGNoZWQgJyknIGluIHN0eWxlOiAlcwoAdHJ1bmNhdGluZyBzdHlsZSAnJXMnCgB1bm1hdGNoZWQgJygnIGluIHN0eWxlOiAlcwoAYWxsAGluIGNsdXN0ZXIgJXMKAE1vcmUgdGhhbiAyIGNvbG9ycyBzcGVjaWZpZWQgZm9yIGEgZ3JhZGllbnQgLSBpZ25vcmluZyByZW1haW5pbmcKAGdyYWRpZW50IHBlbiBjb2xvcnMgbm90IHlldCBzdXBwb3J0ZWQuCgBJbWFnZXMgdW5zdXBwb3J0ZWQgaW4gImJhY2tncm91bmQiIGF0dHJpYnV0ZQoAbGF5ZXJzIG5vdCBzdXBwb3J0ZWQgaW4gJXMgb3V0cHV0CgBMYXlvdXQgd2FzIG5vdCBkb25lLiAgTWlzc2luZyBsYXlvdXQgcGx1Z2lucz8gCgBndlJlbmRlckpvYnMgJXM6ICUuMmYgc2Vjcy4KAGxheW91dCB3YXMgbm90IGRvbmUKAHJlbmRlcmVyIGZvciAlcyBpcyB1bmF2YWlsYWJsZQoAcGFnZWRpcj0lcyBpZ25vcmVkCgB2aWV3cG9ydAAlbGYsJWxmLCVsZiwnJVteJ10nACVsZiwlbGYsJWxmLCVbXixdJXMAJWxmLCVsZiwlbGYsJWxmLCVsZgBvdXRwdXRvcmRlcgBvZGVzZmlyc3QAZGdlc2ZpcnN0AGxheWVycwBsYXllcnNlbGVjdABUaGUgbGF5ZXJzZWxlY3QgYXR0cmlidXRlICIlcyIgZG9lcyBub3QgbWF0Y2ggYW55IGxheWVyIHNwZWNpZmVkIGJ5IHRoZSBsYXllcnMgYXR0cmlidXRlIC0gaWdub3JlZC4KAGxheWVyc2VwADoJIABsYXllcmxpc3RzZXAALABUaGUgY2hhcmFjdGVyICclYycgYXBwZWFycyBpbiBib3RoIHRoZSBsYXllcnNlcCBhbmQgbGF5ZXJsaXN0c2VwIGF0dHJpYnV0ZXMgLSBsYXllcmxpc3RzZXAgaWdub3JlZC4KAHBhZABCTABwYWdlZGlyAHNvbGlkAABzZXRsaW5ld2lkdGgAMQAAc3BsLT5zaXplID4gMABpbml0X3NwbGluZXNfYmIAYnouc2l6ZSA+IDAAYmV6aWVyX2JiAGJ6LnNpemUgJSAzID09IDEAJWxmAGZvbnRwYXRoAERPVEZPTlRQQVRIAEdERk9OVFBBVEgAaW1hZ2VwYXRoAHF1YW50dW0AcmFua2RpcgBMUgBCVABSTABub2Rlc2VwAHJhbmtzZXAAZXF1YWxseQBzaG93Ym94ZXMAZm9udG5hbWVzAHNpemUAcGFnZQBjZW50ZXIAcm90YXRlAG9yaWVudGF0aW9uAGxhbmRzY2FwZQBjbHVzdGVycmFuawBjb25jZW50cmF0ZQBkcGkAcmVzb2x1dGlvbgBvcmRlcmluZwBmaWxsY29sb3IAZm9udHNpemUAZm9udG5hbWUAZm9udGNvbG9yAHhsYWJlbABwZW53aWR0aABwZXJpcGhlcmllcwBza2V3AGRpc3RvcnRpb24Abm9qdXN0aWZ5AGxheWVyAGdyb3VwAGNvbW1lbnQAdmVydGljZXMAegB3ZWlnaHQAbGFiZWxmbG9hdABkaXIAYXJyb3doZWFkAGFycm93dGFpbABoZWFkbGFiZWwAdGFpbGxhYmVsAGxhYmVsZm9udHNpemUAbGFiZWxmb250bmFtZQBsYWJlbGZvbnRjb2xvcgBsYWJlbGRpc3RhbmNlAGxhYmVsYW5nbGUAbWlubGVuAGRlY29yYXRlAGFycm93c2l6ZQBjb25zdHJhaW50AHRhaWxjbGlwAGhlYWRjbGlwAGxhYmVsanVzdABsb2NhbABnbG9iYWwAJWxmLCVsZiVjACVsZiVjAHJhdGlvAGF1dG8AY29tcHJlc3MAZXhwYW5kAGZpbGwAZ2QAcHMAc3ZnAGNoYXJzZXQAdXRmLTgAbGF0aW4tMQBsYXRpbjEAbDEASVNPLTg4NTktMQBJU09fODg1OS0xAElTTzg4NTktMQBJU08tSVItMTAwAGJpZy01AGJpZzUAdXRmOABVbnN1cHBvcnRlZCBjaGFyc2V0ICIlcyIgLSBhc3N1bWluZyB1dGYtOAoAVW5zdXBwb3J0ZWQgY2hhcnNldCB2YWx1ZSAlZAoAVVRGLTgAQklHLTUAaW4gbGFiZWwgb2YgZ3JhcGggJXMKAGluIGxhYmVsIG9mIG5vZGUgJXMKAGluIGxhYmVsIG9mIGVkZ2UgJXMgJXMgJXMKAGtpbmQgPT0gTFRfTk9ORQBsYWJlbHMuYwBtYWtlX2xhYmVsAFxMAFxHAFxFAFxIAFxUACYjMTM7ACYjMTA7ACZxdW90OwAmIzE2MDsAJmFtcDsAJmd0OwAmIzM5OwAmIzQ1OwAmbHQ7ACVzICVkIG5vZGVzICVkIGVkZ2VzIG1heGl0ZXI9JWQgYmFsYW5jZT0lZAoAbmV0d29yayBzaW1wbGV4OiAAJWQgACVzJWQgbm9kZXMgJWQgZWRnZXMgJWQgaXRlciAlLjJmIHNlYwoAdXBkYXRlOiBtaXNtYXRjaGVkIGxjYSBpbiB0cmVldXBkYXRlcwoAVHJlZV9lZGdlLnNpemUgPT0gTl9ub2RlcyAtIDEAbnMuYwBmZWFzaWJsZV90cmVlACFUUkVFX0VER0UoZSkAbWVyZ2VfdHJlZXMAKHIwLT5oZWFwX2luZGV4ID4gLTEpIHx8IChyMS0+aGVhcF9pbmRleCA+IC0xKQBTVHNldFVuaW9uAHItPmhlYXBfaW5kZXggPj0gMABhZGRfdHJlZV9lZGdlOiBtaXNzaW5nIHRyZWUgZWRnZQoAYWRkX3RyZWVfZWRnZTogZW1wdHkgb3V0ZWRnZSBsaXN0CgBhZGRfdHJlZV9lZGdlOiBlbXB0eSBpbmVkZ2UgbGlzdAoAdHJvdWJsZSBpbiBpbml0X3JhbmsKAAklcyAlZAoAc2VhcmNoc2l6ZQBncmFwaCAAIABub2RlIABzdG9wCgAlLjVnAHBvcwByZWN0cwB4bHAAbHAAaGVhZF9scAB0YWlsX2xwAGx3aWR0aABsaGVpZ2h0AGJiACUuNWcsJS41ZywlLjVnACwlLjVnACUuNWcsJS41ZwBzYW1wbGVwb2ludHMAJS41ZyAlLjVnAHMsJS41ZywlLjVnIABlLCUuNWcsJS41ZyAAJS41ZywlLjVnLCUuNWcsJS41ZwAlLjJmACUuNWcsJS41ZywlLjVnLCUuNWcgAC9wYXRoYm94IHsKICAgIC9YIGV4Y2ggbmVnICUuNWcgc3ViIGRlZgogICAgL1kgZXhjaCAlLjVnIHN1YiBkZWYKICAgIC94IGV4Y2ggbmVnICUuNWcgc3ViIGRlZgogICAgL3kgZXhjaCAlLjVnIHN1YiBkZWYKICAgIG5ld3BhdGggeCB5IG1vdmV0bwogICAgWCB5IGxpbmV0bwogICAgWCBZIGxpbmV0bwogICAgeCBZIGxpbmV0bwogICAgY2xvc2VwYXRoIHN0cm9rZQp9IGRlZgoAL3BhdGhib3ggewogICAgL1kgZXhjaCAlLjVnIHN1YiBkZWYKICAgIC9YIGV4Y2ggJS41ZyBzdWIgZGVmCiAgICAveSBleGNoICUuNWcgc3ViIGRlZgogICAgL3ggZXhjaCAlLjVnIHN1YiBkZWYKICAgIG5ld3BhdGggeCB5IG1vdmV0bwogICAgWCB5IGxpbmV0bwogICAgWCBZIGxpbmV0bwogICAgeCBZIGxpbmV0bwogICAgY2xvc2VwYXRoIHN0cm9rZQogfSBkZWYKL2RiZ3N0YXJ0IHsgZ3NhdmUgJS41ZyAlLjVnIHRyYW5zbGF0ZSB9IGRlZgovYXJyb3dsZW5ndGggMTAgZGVmCi9hcnJvd3dpZHRoIGFycm93bGVuZ3RoIDIgZGl2IGRlZgovYXJyb3doZWFkIHsKICAgIGdzYXZlCiAgICByb3RhdGUKICAgIGN1cnJlbnRwb2ludAogICAgbmV3cGF0aAogICAgbW92ZXRvCiAgICBhcnJvd2xlbmd0aCBhcnJvd3dpZHRoIDIgZGl2IHJsaW5ldG8KICAgIDAgYXJyb3d3aWR0aCBuZWcgcmxpbmV0bwogICAgY2xvc2VwYXRoIGZpbGwKICAgIGdyZXN0b3JlCn0gYmluZCBkZWYKL21ha2VhcnJvdyB7CiAgICBjdXJyZW50cG9pbnQgZXhjaCBwb3Agc3ViIGV4Y2ggY3VycmVudHBvaW50IHBvcCBzdWIgYXRhbgogICAgYXJyb3doZWFkCn0gYmluZCBkZWYKL3BvaW50IHsgICAgbmV3cGF0aCAgICAyIDAgMzYwIGFyYyBmaWxsfSBkZWYvbWFrZXZlYyB7CiAgICAvWSBleGNoIGRlZgogICAgL1ggZXhjaCBkZWYKICAgIC95IGV4Y2ggZGVmCiAgICAveCBleGNoIGRlZgogICAgbmV3cGF0aCB4IHkgbW92ZXRvCiAgICBYIFkgbGluZXRvIHN0cm9rZQogICAgWCBZIG1vdmV0bwogICAgeCB5IG1ha2VhcnJvdwp9IGRlZgoAbG9zdCAlcyAlcyBlZGdlCgBubyBwb3NpdGlvbiBmb3IgZWRnZSB3aXRoIGxhYmVsICVzAG5vIHBvc2l0aW9uIGZvciBlZGdlIHdpdGggdGFpbCBsYWJlbCAlcwBubyBwb3NpdGlvbiBmb3IgZWRnZSB3aXRoIGhlYWQgbGFiZWwgJXMAbm8gcG9zaXRpb24gZm9yIGVkZ2Ugd2l0aCB4bGFiZWwgJXMAZm9yY2VsYWJlbHMAJWQgb3V0IG9mICVkIGxhYmVscyBwb3NpdGlvbmVkLgoAJWQgb3V0IG9mICVkIGV4dGVyaW9yIGxhYmVscyBwb3NpdGlvbmVkLgoAJWQgb2JqcyAlZCB4bGFiZWxzIGZvcmNlPSVkIGJiPSglLjAyZiwlLjAyZikgKCUuMDJmLCUuMDJmKQoAb2JqZWN0cwoAIFslZF0gKCUuMDJmLCUuMDJmKSAoJS4wMmYsJS4wMmYpICVwICIlcyIKAHhsYWJlbHMKACBbJWRdICVwIHNldCAlZCAoJS4wMmYsJS4wMmYpICglLjAyZiwlLjAyZikgJXMKAHNoYXBlZmlsZSBub3Qgc2V0IG9yIG5vdCBmb3VuZCBmb3IgZXBzZiBub2RlICVzCgBjb3VsZG4ndCBvcGVuIGVwc2YgZmlsZSAlcwoAJSUlJUJvdW5kaW5nQm94OiAlZCAlZCAlZCAlZAByZWFkAEJvdW5kaW5nQm94IG5vdCBmb3VuZCBpbiBlcHNmIGZpbGUgJXMKAGNhbid0IGZpbmQgbGlicmFyeSBmaWxlICVzCgBjYW4ndCBvcGVuIGxpYnJhcnkgZmlsZSAlcwoARU9GAEJFR0lOAEVORABUUkFJTEVSAC91c2VyX3NoYXBlXyVkIHsKACUlQmVnaW5Eb2N1bWVudDoKACUlRW5kRG9jdW1lbnQKAH0gYmluZCBkZWYKAFVURi04IGlucHV0IHVzZXMgbm9uLUxhdGluMSBjaGFyYWN0ZXJzIHdoaWNoIGNhbm5vdCBiZSBoYW5kbGVkIGJ5IHRoaXMgUG9zdFNjcmlwdCBkcml2ZXIKAGNhbm5vdCByZS1hbGxvY2F0ZSBwcwoAcm91dGVzcGxpbmVzaW5pdDogY2Fubm90IGFsbG9jYXRlIHBzCgByb3V0ZXNwbGluZXM6ICVkIGVkZ2VzLCAlZCBib3hlcyAlLjJmIHNlYwoAaW4gcm91dGVzcGxpbmVzLCBjYW5ub3QgZmluZCBOT1JNQUwgZWRnZQoAaW4gcm91dGVzcGxpbmVzLCBpbGxlZ2FsIHZhbHVlcyBvZiBwcmV2ICVkIGFuZCBuZXh0ICVkLCBsaW5lICVkCgBpbiByb3V0ZXNwbGluZXMsIGVkZ2UgaXMgYSBsb29wIGF0ICVzCgBpbiByb3V0ZXNwbGluZXMsIFBzaG9ydGVzdHBhdGggZmFpbGVkCgBpbiByb3V0ZXNwbGluZXMsIFByb3V0ZXNwbGluZSBmYWlsZWQKAFVuYWJsZSB0byByZWNsYWltIGJveCBzcGFjZSBpbiBzcGxpbmUgcm91dGluZyBmb3IgZWRnZSAiJXMiIC0+ICIlcyIuIFNvbWV0aGluZyBpcyBwcm9iYWJseSBzZXJpb3VzbHkgd3JvbmcuCgBpbiBjaGVja3BhdGgsIGJveCAwIGhhcyBMTCBjb29yZCA+IFVSIGNvb3JkCgBpbiBjaGVja3BhdGgsIGJveCAlZCBoYXMgTEwgY29vcmQgPiBVUiBjb29yZAoAaW4gY2hlY2twYXRoLCBib3hlcyAlZCBhbmQgJWQgZG9uJ3QgdG91Y2gKAGluIGNoZWNrcGF0aCwgc3RhcnQgcG9ydCBub3QgaW4gZmlyc3QgYm94CgBpbiBjaGVja3BhdGgsIGVuZCBwb3J0IG5vdCBpbiBsYXN0IGJveAoAJWQgYm94ZXM6CgAlZCAoJS41ZywgJS41ZyksICglLjVnLCAlLjVnKQoAY29uc3RyYWluZWQAbm90IGNvbnN0cmFpbmVkAHN0YXJ0IHBvcnQ6ICglLjVnLCAlLjVnKSwgdGFuZ2VudCBhbmdsZTogJS41ZywgJXMKAGVuZCBwb3J0OiAoJS41ZywgJS41ZyksIHRhbmdlbnQgYW5nbGU6ICUuNWcsICVzCgBzaWRlcyA9PSA0AHNoYXBlcy5jAHJvdW5kX2Nvcm5lcnMAYmFkIGxhYmVsIGZvcm1hdCAlcwoAXE4AbWFyZ2luACVsZiwlbGYAcmVndWxhcgBjdXN0b20Ac2hhcGVmaWxlADxuaWw+AE5vIG9yIGltcHJvcGVyIHNoYXBlZmlsZT0iJXMiIGZvciBub2RlICIlcyIKAE5vIG9yIGltcHJvcGVyIGltYWdlPSIlcyIgZm9yIG5vZGUgIiVzIgoAbGFiZWxsb2MAbm9kZSAnJXMnLCBncmFwaCAnJXMnIHNpemUgdG9vIHNtYWxsIGZvciBsYWJlbAoAZXBzZgB1c2luZyAlcyBmb3IgdW5rbm93biBzaGFwZSAlcwoAcG9seWdvbgBvdmFsAGNpcmNsZQBwb2ludABlZ2cAdHJpYW5nbGUAcGxhaW50ZXh0AHBsYWluAGRpYW1vbmQAdHJhcGV6aXVtAHBhcmFsbGVsb2dyYW0AaG91c2UAcGVudGFnb24AaGV4YWdvbgBzZXB0YWdvbgBvY3RhZ29uAG5vdGUAdGFiAGZvbGRlcgBib3gzZABjb21wb25lbnQAY3lsaW5kZXIAcmVjdAByZWN0YW5nbGUAc3F1YXJlAGRvdWJsZWNpcmNsZQBkb3VibGVvY3RhZ29uAHRyaXBsZW9jdGFnb24AaW52dHJpYW5nbGUAaW52dHJhcGV6aXVtAGludmhvdXNlAHVuZGVybGluZQBNZGlhbW9uZABNc3F1YXJlAE1jaXJjbGUAcHJvbW90ZXIAY2RzAHRlcm1pbmF0b3IAdXRyAGluc3VsYXRvcgByaWJvc2l0ZQBybmFzdGFiAHByb3RlYXNlc2l0ZQBwcm90ZWluc3RhYgBwcmltZXJzaXRlAHJlc3RyaWN0aW9uc2l0ZQBmaXZlcG92ZXJoYW5nAHRocmVlcG92ZXJoYW5nAG5vdmVyaGFuZwBhc3NlbWJseQBzaWduYXR1cmUAcnByb21vdGVyAGxhcnJvdwByYXJyb3cAbHByb21vdGVyAHJlY29yZABNcmVjb3JkAHN0YXIAIzgwODA4MAAjZmNmY2ZjACMzMDMwMzAAI2U4ZThlOAAjZTBlMGUwACNmMGYwZjAAIzEwMTAxMAAjZjhmOGY4AGluIG5vZGUgJXMKAHJvdW5kZWQAZGlhZ29uYWxzAHJhZGlhbABzdHJpcGVkAHdlZGdlZABfAG5vZGUgJXMsIHBvcnQgJXMsIHVucmVjb2duaXplZCBjb21wYXNzIHBvaW50ICclcycgLSBpZ25vcmVkCgBub2RlICVzLCBwb3J0ICVzIHVucmVjb2duaXplZAoAJS41ZyAlLjVnIHRyYW5zbGF0ZSBuZXdwYXRoIHVzZXJfc2hhcGVfJWQKAGludmlzAABmaWxsZWQAAHMAZQB3AHNwbGluZXMuYwBiZWdpbnBhdGgAUC0+ZW5kLnRoZXRhIDwgMiAqIE1fUEkAZW5kcGF0aABtYWtlU2VsZkVkZ2UAZ2V0c3BsaW5lcG9pbnRzOiBubyBzcGxpbmUgcG9pbnRzIGF2YWlsYWJsZSBmb3IgZWRnZSAoJXMsJXMpCgBwb2x5bGluZU1pZHBvaW50AHNwYW4tPmZvbnQAdGV4dHNwYW4uYwB0ZXh0c3Bhbl9zaXplAGZvbnQtPm5hbWUAZm9udG5hbWU6ICIlcyIgcmVzb2x2ZWQgdG86ICVzCgBmb250bmFtZTogdW5hYmxlIHRvIHJlc29sdmUgIiVzIgoAY291cgBhcmlhbABoZWx2ZXRpY2EAW2ludGVybmFsIHRpbWVzXQBbaW50ZXJuYWwgY291cmllcl0AW2ludGVybmFsIGFyaWFsXQBBdmFudEdhcmRlLUJvb2sAVVJXIEdvdGhpYyBMAGJvb2sAc2Fucy1TZXJpZgBBdmFudEdhcmRlLUJvb2tPYmxpcXVlAG9ibGlxdWUAaXRhbGljAEF2YW50R2FyZGUtRGVtaQBkZW1pAEF2YW50R2FyZGUtRGVtaU9ibGlxdWUAQm9va21hbi1EZW1pAFVSVyBCb29rbWFuIEwAc2VyaWYAQm9va21hbi1EZW1pSXRhbGljAEJvb2ttYW4tTGlnaHQAbGlnaHQAQm9va21hbi1MaWdodEl0YWxpYwBDb3VyaWVyAG1vbm9zcGFjZQBDb3VyaWVyLUJvbGQAQ291cmllci1Cb2xkT2JsaXF1ZQBDb3VyaWVyLU9ibGlxdWUASGVsdmV0aWNhAEhlbHZldGljYS1Cb2xkAEhlbHZldGljYS1Cb2xkT2JsaXF1ZQBIZWx2ZXRpY2EtTmFycm93AGNvbmRlbnNlZABIZWx2ZXRpY2EtTmFycm93LUJvbGQASGVsdmV0aWNhLU5hcnJvdy1Cb2xkT2JsaXF1ZQBIZWx2ZXRpY2EtTmFycm93LU9ibGlxdWUASGVsdmV0aWNhLU9ibGlxdWUATmV3Q2VudHVyeVNjaGxiay1Cb2xkAENlbnR1cnkgU2Nob29sYm9vayBMAE5ld0NlbnR1cnlTY2hsYmstQm9sZEl0YWxpYwBOZXdDZW50dXJ5U2NobGJrLUl0YWxpYwBOZXdDZW50dXJ5U2NobGJrLVJvbWFuAHJvbWFuAFBhbGF0aW5vLUJvbGQAUGFsYXRpbm8gTGlub3R5cGUAUGFsYXRpbm8tQm9sZEl0YWxpYwBQYWxhdGluby1JdGFsaWMAUGFsYXRpbm8tUm9tYW4AU3ltYm9sAGZhbnRhc3kAVGltZXMtQm9sZABUaW1lcwBUaW1lcy1Cb2xkSXRhbGljAFRpbWVzLUl0YWxpYwBaYXBmQ2hhbmNlcnktTWVkaXVtSXRhbGljAFVSVyBDaGFuY2VyeSBMAG1lZGl1bQBaYXBmRGluZ2JhdHMARGluZ2JhdHMAaW5wdXRzY2FsZQBubwB0cnVlAHllcwB1dGlscy5jAHUgPT0gVUZfZmluZCh1KQBVRl9zZXRuYW1lAAFmaWxlIGxvYWRpbmcgaXMgZGlzYWJsZWQgYmVjYXVzZSB0aGUgZW52aXJvbm1lbnQgY29udGFpbnMgU0VSVkVSX05BTUU9IiVzIgphbmQgdGhlIEdWX0ZJTEVfUEFUSCB2YXJpYWJsZSBpcyB1bnNldCBvciBlbXB0eS4KAFBhdGggcHJvdmlkZWQgdG8gZmlsZTogIiVzIiBoYXMgYmVlbiBpZ25vcmVkIGJlY2F1c2UgZmlsZXMgYXJlIG9ubHkgcGVybWl0dGVkIHRvIGJlIGxvYWRlZCBmcm9tIHRoZSBkaXJlY3RvcmllcyBpbiAiJXMiIHdoZW4gcnVubmluZyBpbiBhbiBodHRwIHNlcnZlci4KACVzJXMlcwAvADoAZWxsaXBzZQBUaW1lcy1Sb21hbgBjbHVzdGVyAF9fY2x1c3Rlcm5vZGVzAGNsdXN0ZXIgY3ljbGUgJXMgLS0gJXMgbm90IHN1cHBvcnRlZAoAdGFpbCBjbHVzdGVyICVzIGluc2lkZSBoZWFkIGNsdXN0ZXIgJXMKAGhlYWQgY2x1c3RlciAlcyBpbnNpZGUgdGFpbCBjbHVzdGVyICVzCgB0YWlsIG5vZGUgJXMgaW5zaWRlIGhlYWQgY2x1c3RlciAlcwoAaGVhZCBub2RlICVzIGluc2lkZSB0YWlsIGNsdXN0ZXIgJXMKAF9fAGxhYmVsAHNoYXBlAGJveABUd28gY2x1c3RlcnMgbmFtZWQgJXMgLSB0aGUgc2Vjb25kIHdpbGwgYmUgaWdub3JlZAoAbWFwTgBBRWxpZwBBYWN1dGUAQWNpcmMAQWdyYXZlAEFscGhhAEFyaW5nAEF0aWxkZQBBdW1sAEJldGEAQ2NlZGlsAENoaQBEYWdnZXIARGVsdGEARVRIAEVhY3V0ZQBFY2lyYwBFZ3JhdmUARXBzaWxvbgBFdGEARXVtbABHYW1tYQBJYWN1dGUASWNpcmMASWdyYXZlAElvdGEASXVtbABLYXBwYQBMYW1iZGEATXUATnRpbGRlAE51AE9FbGlnAE9hY3V0ZQBPY2lyYwBPZ3JhdmUAT21lZ2EAT21pY3JvbgBPc2xhc2gAT3RpbGRlAE91bWwAUGhpAFBpAFByaW1lAFBzaQBSaG8AU2Nhcm9uAFNpZ21hAFRIT1JOAFRhdQBUaGV0YQBVYWN1dGUAVWNpcmMAVWdyYXZlAFVwc2lsb24AVXVtbABYaQBZYWN1dGUAWXVtbABaZXRhAGFhY3V0ZQBhY2lyYwBhY3V0ZQBhZWxpZwBhZ3JhdmUAYWxlZnN5bQBhbHBoYQBhbXAAYW5kAGFuZwBhcmluZwBhc3ltcABhdGlsZGUAYXVtbABiZHF1bwBiZXRhAGJydmJhcgBidWxsAGNhcABjY2VkaWwAY2VkaWwAY2VudABjaGkAY2lyYwBjbHVicwBjb25nAGNvcHkAY3JhcnIAY3VwAGN1cnJlbgBkQXJyAGRhZ2dlcgBkYXJyAGRlZwBkZWx0YQBkaWFtcwBkaXZpZGUAZWFjdXRlAGVjaXJjAGVncmF2ZQBlbXB0eQBlbXNwAGVuc3AAZXBzaWxvbgBlcXVpdgBldGEAZXRoAGV1bWwAZXVybwBleGlzdABmbm9mAGZvcmFsbABmcmFjMTIAZnJhYzE0AGZyYWMzNABmcmFzbABnYW1tYQBnZQBndABoQXJyAGhhcnIAaGVhcnRzAGhlbGxpcABpYWN1dGUAaWNpcmMAaWV4Y2wAaWdyYXZlAGltYWdlAGluZmluAGludABpb3RhAGlxdWVzdABpc2luAGl1bWwAa2FwcGEAbEFycgBsYW1iZGEAbGFuZwBsYXF1bwBsYXJyAGxjZWlsAGxkcXVvAGxlAGxmbG9vcgBsb3dhc3QAbG96AGxybQBsc2FxdW8AbHNxdW8AbHQAbWFjcgBtZGFzaABtaWNybwBtaWRkb3QAbXUAbmFibGEAbmJzcABuZGFzaABuZQBuaQBub3QAbm90aW4AbnN1YgBudGlsZGUAbnUAb2FjdXRlAG9jaXJjAG9lbGlnAG9ncmF2ZQBvbGluZQBvbWVnYQBvbWljcm9uAG9wbHVzAG9yAG9yZGYAb3JkbQBvc2xhc2gAb3RpbGRlAG90aW1lcwBvdW1sAHBhcmEAcGFydABwZXJtaWwAcGVycABwaGkAcGkAcGl2AHBsdXNtbgBwb3VuZABwcmltZQBwcm9kAHByb3AAcHNpAHF1b3QAckFycgByYWRpYwByYW5nAHJhcXVvAHJhcnIAcmNlaWwAcmRxdW8AcmVhbAByZWcAcmZsb29yAHJobwBybG0AcnNhcXVvAHJzcXVvAHNicXVvAHNjYXJvbgBzZG90AHNlY3QAc2h5AHNpZ21hAHNpZ21hZgBzaW0Ac3BhZGVzAHN1YgBzdWJlAHN1bQBzdXAAc3VwMQBzdXAyAHN1cDMAc3VwZQBzemxpZwB0YXUAdGhlcmU0AHRoZXRhAHRoZXRhc3ltAHRoaW5zcAB0aG9ybgB0aWxkZQB0aW1lcwB0cmFkZQB1QXJyAHVhY3V0ZQB1YXJyAHVjaXJjAHVncmF2ZQB1bWwAdXBzaWgAdXBzaWxvbgB1dW1sAHdlaWVycAB4aQB5YWN1dGUAeWVuAHl1bWwAemV0YQB6d2oAenduagBVVEY4IGNvZGVzID4gNCBieXRlcyBhcmUgbm90IGN1cnJlbnRseSBzdXBwb3J0ZWQgKGdyYXBoICVzKSAtIHRyZWF0ZWQgYXMgTGF0aW4tMS4gUGVyaGFwcyAiLUdjaGFyc2V0PWxhdGluMSIgaXMgbmVlZGVkPwoASW52YWxpZCAlZC1ieXRlIFVURjggZm91bmQgaW4gaW5wdXQgb2YgZ3JhcGggJXMgLSB0cmVhdGVkIGFzIExhdGluLTEuIFBlcmhhcHMgIi1HY2hhcnNldD1sYXRpbjEiIGlzIG5lZWRlZD8KAGJ6LnNpemUAb3ZlcmxhcF9iZXppZXIAdXJ2ZWQAb21wb3VuZABhbHNlAGluZQBvbmUAbwBydGhvAG9seWxpbmUAcGxpbmUAcnVlAGVzAFVua25vd24gInNwbGluZXMiIHZhbHVlOiAiJXMiIC0gaWdub3JlZAoAc3BsaW5lcwBvZGIAT3J0aG9nb25hbCBlZGdlcyBkbyBub3QgY3VycmVudGx5IGhhbmRsZSBlZGdlIGxhYmVscy4gVHJ5IHVzaW5nIHhsYWJlbHMuCgBvcnRobyAlcyAlcwoAY2hhbmkAb3J0aG8uYwBjaGFuU2VhcmNoAGNwACUlIVBTLUFkb2JlLTIuMAolJSUlQm91bmRpbmdCb3g6IChhdGVuZCkKL3BvaW50IHsKICAvWSBleGNoIGRlZgogIC9YIGV4Y2ggZGVmCiAgbmV3cGF0aAogIFggWSAzIDAgMzYwIGFyYyBmaWxsCn0gZGVmCi9jZWxsIHsKICAvWSBleGNoIGRlZgogIC9YIGV4Y2ggZGVmCiAgL3kgZXhjaCBkZWYKICAveCBleGNoIGRlZgogIG5ld3BhdGgKICB4IHkgbW92ZXRvCiAgeCBZIGxpbmV0bwogIFggWSBsaW5ldG8KICBYIHkgbGluZXRvCiAgY2xvc2VwYXRoIHN0cm9rZQp9IGRlZgovbm9kZSB7CiAvdSBleGNoIGRlZgogL3IgZXhjaCBkZWYKIC9kIGV4Y2ggZGVmCiAvbCBleGNoIGRlZgogbmV3cGF0aCBsIGQgbW92ZXRvCiByIGQgbGluZXRvIHIgdSBsaW5ldG8gbCB1IGxpbmV0bwogY2xvc2VwYXRoIGZpbGwKfSBkZWYKCgAlZCAlZCB0cmFuc2xhdGUKADAuOCAwLjggMC44IHNldHJnYmNvbG9yCgBzaG93cGFnZQolJSUlVHJhaWxlcgolJSUlQm91bmRpbmdCb3g6ICVkICVkICVkICVkCgBuZXdwYXRoICVkICVkIG1vdmV0bwoAJWQgJWQgbGluZXRvCgAlZCAlZCBsaW5ldG8gc3Ryb2tlCgBjaGFubmVsICVkICglZiwlZikKACAtPgoAICAgICAAKCglZiwlZiksKCVmLCVmKSkgJXMgJXMAQl9SSUdIVABCX0RPV04AQl9MRUZUAEJfVVAAQl9OT0RFAHNlZwBuZXh0X3NlZwBkZWNpZGVfcG9pbnQAaW5jb21wYXJhYmxlIHNlZ21lbnRzICEhIC0tIEFib3J0aW5nCgBzMS0+Y29tbV9jb29yZD09czItPmNvbW1fY29vcmQAaXNfcGFyYWxsZWwAZ3JhcGggRyB7CgAgbm9kZVtzaGFwZT1wb2ludF0KACAgJWQgW3Bvcz0iJWQsJWQiXQoAICAlZCAtLSAlZFtsZW49IiVmIl0KAH0KAGNvbG9yICVzACVzIGlzIG5vdCBhIGtub3duIGNvbG9yLgoAZXJyb3IgaW4gY29seGxhdGUoKQoAc29saWQAaW52aXNpYmxlAGJvbGQAc2V0bGluZXdpZHRoAGZpbGxlZAB1bmZpbGxlZAB0YXBlcmVkAGd2cmVuZGVyX3NldF9zdHlsZTogdW5zdXBwb3J0ZWQgc3R5bGUgJXMgLSBpZ25vcmluZwoAZ3ZyZW5kZXIuYwBndnJlbmRlcl91c2Vyc2hhcGUAbmFtZQBuYW1lWzBdAGJvdGgAam9iAGd2bG9hZGltYWdlLmMAZ3Zsb2FkaW1hZ2UAdXMAdXMtPm5hbWUAdXMtPm5hbWVbMF0ATm8gbG9hZGltYWdlIHBsdWdpbiBmb3IgIiVzIgoAUQBMZWZ0AEtQX0xlZnQAUmlnaHQAS1BfUmlnaHQAVXAAS1BfVXAARG93bgBLUF9Eb3duAHBsdXMAS1BfQWRkAG1pbnVzAEtQX1N1YnRyYWN0AEYAZWRnZQB0YWlscG9ydABoZWFkcG9ydABrZXkAVVJMAG5vZGUAZGlncmFwaABncmFwaABzdWJncmFwaABfTFRYX2xpYnJhcnkAdGV4dGxheW91dABvYmpwLT5sYmwAeGxhYmVscy5jAHhsYWRqdXN0AHhsaW50ZXJzZWN0aW9ucwBscCAhPSBjbHAAZ2V0aW50cnN4aQBvYmpwMS0+c3oueCA9PSAwICYmIG9ianAxLT5zei55ID09IDAAbGJsZW5jbG9zaW5nAHZwAHhsaGR4dW5sb2FkAHNpemU9PWZyZWVkAHJlY3QuYm91bmRhcnlbMl0gPCBJTlRfTUFYAG9ianBscG1rcwByZWN0LmJvdW5kYXJ5WzNdIDwgSU5UX01BWABvdXQgb2YgbWVtb3J5CgAjJTJ4JTJ4JTJ4JTJ4ACVsZiVsZiVsZgAvYWNjZW50My8xAC9hY2NlbnQzLzIAL2FjY2VudDMvMwAvYWNjZW50NC8xAC9hY2NlbnQ0LzIAL2FjY2VudDQvMwAvYWNjZW50NC80AC9hY2NlbnQ1LzEAL2FjY2VudDUvMgAvYWNjZW50NS8zAC9hY2NlbnQ1LzQAL2FjY2VudDUvNQAvYWNjZW50Ni8xAC9hY2NlbnQ2LzIAL2FjY2VudDYvMwAvYWNjZW50Ni80AC9hY2NlbnQ2LzUAL2FjY2VudDYvNgAvYWNjZW50Ny8xAC9hY2NlbnQ3LzIAL2FjY2VudDcvMwAvYWNjZW50Ny80AC9hY2NlbnQ3LzUAL2FjY2VudDcvNgAvYWNjZW50Ny83AC9hY2NlbnQ4LzEAL2FjY2VudDgvMgAvYWNjZW50OC8zAC9hY2NlbnQ4LzQAL2FjY2VudDgvNQAvYWNjZW50OC82AC9hY2NlbnQ4LzcAL2FjY2VudDgvOAAvYmx1ZXMzLzEAL2JsdWVzMy8yAC9ibHVlczMvMwAvYmx1ZXM0LzEAL2JsdWVzNC8yAC9ibHVlczQvMwAvYmx1ZXM0LzQAL2JsdWVzNS8xAC9ibHVlczUvMgAvYmx1ZXM1LzMAL2JsdWVzNS80AC9ibHVlczUvNQAvYmx1ZXM2LzEAL2JsdWVzNi8yAC9ibHVlczYvMwAvYmx1ZXM2LzQAL2JsdWVzNi81AC9ibHVlczYvNgAvYmx1ZXM3LzEAL2JsdWVzNy8yAC9ibHVlczcvMwAvYmx1ZXM3LzQAL2JsdWVzNy81AC9ibHVlczcvNgAvYmx1ZXM3LzcAL2JsdWVzOC8xAC9ibHVlczgvMgAvYmx1ZXM4LzMAL2JsdWVzOC80AC9ibHVlczgvNQAvYmx1ZXM4LzYAL2JsdWVzOC83AC9ibHVlczgvOAAvYmx1ZXM5LzEAL2JsdWVzOS8yAC9ibHVlczkvMwAvYmx1ZXM5LzQAL2JsdWVzOS81AC9ibHVlczkvNgAvYmx1ZXM5LzcAL2JsdWVzOS84AC9ibHVlczkvOQAvYnJiZzEwLzEAL2JyYmcxMC8xMAAvYnJiZzEwLzIAL2JyYmcxMC8zAC9icmJnMTAvNAAvYnJiZzEwLzUAL2JyYmcxMC82AC9icmJnMTAvNwAvYnJiZzEwLzgAL2JyYmcxMC85AC9icmJnMTEvMQAvYnJiZzExLzEwAC9icmJnMTEvMTEAL2JyYmcxMS8yAC9icmJnMTEvMwAvYnJiZzExLzQAL2JyYmcxMS81AC9icmJnMTEvNgAvYnJiZzExLzcAL2JyYmcxMS84AC9icmJnMTEvOQAvYnJiZzMvMQAvYnJiZzMvMgAvYnJiZzMvMwAvYnJiZzQvMQAvYnJiZzQvMgAvYnJiZzQvMwAvYnJiZzQvNAAvYnJiZzUvMQAvYnJiZzUvMgAvYnJiZzUvMwAvYnJiZzUvNAAvYnJiZzUvNQAvYnJiZzYvMQAvYnJiZzYvMgAvYnJiZzYvMwAvYnJiZzYvNAAvYnJiZzYvNQAvYnJiZzYvNgAvYnJiZzcvMQAvYnJiZzcvMgAvYnJiZzcvMwAvYnJiZzcvNAAvYnJiZzcvNQAvYnJiZzcvNgAvYnJiZzcvNwAvYnJiZzgvMQAvYnJiZzgvMgAvYnJiZzgvMwAvYnJiZzgvNAAvYnJiZzgvNQAvYnJiZzgvNgAvYnJiZzgvNwAvYnJiZzgvOAAvYnJiZzkvMQAvYnJiZzkvMgAvYnJiZzkvMwAvYnJiZzkvNAAvYnJiZzkvNQAvYnJiZzkvNgAvYnJiZzkvNwAvYnJiZzkvOAAvYnJiZzkvOQAvYnVnbjMvMQAvYnVnbjMvMgAvYnVnbjMvMwAvYnVnbjQvMQAvYnVnbjQvMgAvYnVnbjQvMwAvYnVnbjQvNAAvYnVnbjUvMQAvYnVnbjUvMgAvYnVnbjUvMwAvYnVnbjUvNAAvYnVnbjUvNQAvYnVnbjYvMQAvYnVnbjYvMgAvYnVnbjYvMwAvYnVnbjYvNAAvYnVnbjYvNQAvYnVnbjYvNgAvYnVnbjcvMQAvYnVnbjcvMgAvYnVnbjcvMwAvYnVnbjcvNAAvYnVnbjcvNQAvYnVnbjcvNgAvYnVnbjcvNwAvYnVnbjgvMQAvYnVnbjgvMgAvYnVnbjgvMwAvYnVnbjgvNAAvYnVnbjgvNQAvYnVnbjgvNgAvYnVnbjgvNwAvYnVnbjgvOAAvYnVnbjkvMQAvYnVnbjkvMgAvYnVnbjkvMwAvYnVnbjkvNAAvYnVnbjkvNQAvYnVnbjkvNgAvYnVnbjkvNwAvYnVnbjkvOAAvYnVnbjkvOQAvYnVwdTMvMQAvYnVwdTMvMgAvYnVwdTMvMwAvYnVwdTQvMQAvYnVwdTQvMgAvYnVwdTQvMwAvYnVwdTQvNAAvYnVwdTUvMQAvYnVwdTUvMgAvYnVwdTUvMwAvYnVwdTUvNAAvYnVwdTUvNQAvYnVwdTYvMQAvYnVwdTYvMgAvYnVwdTYvMwAvYnVwdTYvNAAvYnVwdTYvNQAvYnVwdTYvNgAvYnVwdTcvMQAvYnVwdTcvMgAvYnVwdTcvMwAvYnVwdTcvNAAvYnVwdTcvNQAvYnVwdTcvNgAvYnVwdTcvNwAvYnVwdTgvMQAvYnVwdTgvMgAvYnVwdTgvMwAvYnVwdTgvNAAvYnVwdTgvNQAvYnVwdTgvNgAvYnVwdTgvNwAvYnVwdTgvOAAvYnVwdTkvMQAvYnVwdTkvMgAvYnVwdTkvMwAvYnVwdTkvNAAvYnVwdTkvNQAvYnVwdTkvNgAvYnVwdTkvNwAvYnVwdTkvOAAvYnVwdTkvOQAvZGFyazIzLzEAL2RhcmsyMy8yAC9kYXJrMjMvMwAvZGFyazI0LzEAL2RhcmsyNC8yAC9kYXJrMjQvMwAvZGFyazI0LzQAL2RhcmsyNS8xAC9kYXJrMjUvMgAvZGFyazI1LzMAL2RhcmsyNS80AC9kYXJrMjUvNQAvZGFyazI2LzEAL2RhcmsyNi8yAC9kYXJrMjYvMwAvZGFyazI2LzQAL2RhcmsyNi81AC9kYXJrMjYvNgAvZGFyazI3LzEAL2RhcmsyNy8yAC9kYXJrMjcvMwAvZGFyazI3LzQAL2RhcmsyNy81AC9kYXJrMjcvNgAvZGFyazI3LzcAL2RhcmsyOC8xAC9kYXJrMjgvMgAvZGFyazI4LzMAL2RhcmsyOC80AC9kYXJrMjgvNQAvZGFyazI4LzYAL2RhcmsyOC83AC9kYXJrMjgvOAAvZ25idTMvMQAvZ25idTMvMgAvZ25idTMvMwAvZ25idTQvMQAvZ25idTQvMgAvZ25idTQvMwAvZ25idTQvNAAvZ25idTUvMQAvZ25idTUvMgAvZ25idTUvMwAvZ25idTUvNAAvZ25idTUvNQAvZ25idTYvMQAvZ25idTYvMgAvZ25idTYvMwAvZ25idTYvNAAvZ25idTYvNQAvZ25idTYvNgAvZ25idTcvMQAvZ25idTcvMgAvZ25idTcvMwAvZ25idTcvNAAvZ25idTcvNQAvZ25idTcvNgAvZ25idTcvNwAvZ25idTgvMQAvZ25idTgvMgAvZ25idTgvMwAvZ25idTgvNAAvZ25idTgvNQAvZ25idTgvNgAvZ25idTgvNwAvZ25idTgvOAAvZ25idTkvMQAvZ25idTkvMgAvZ25idTkvMwAvZ25idTkvNAAvZ25idTkvNQAvZ25idTkvNgAvZ25idTkvNwAvZ25idTkvOAAvZ25idTkvOQAvZ3JlZW5zMy8xAC9ncmVlbnMzLzIAL2dyZWVuczMvMwAvZ3JlZW5zNC8xAC9ncmVlbnM0LzIAL2dyZWVuczQvMwAvZ3JlZW5zNC80AC9ncmVlbnM1LzEAL2dyZWVuczUvMgAvZ3JlZW5zNS8zAC9ncmVlbnM1LzQAL2dyZWVuczUvNQAvZ3JlZW5zNi8xAC9ncmVlbnM2LzIAL2dyZWVuczYvMwAvZ3JlZW5zNi80AC9ncmVlbnM2LzUAL2dyZWVuczYvNgAvZ3JlZW5zNy8xAC9ncmVlbnM3LzIAL2dyZWVuczcvMwAvZ3JlZW5zNy80AC9ncmVlbnM3LzUAL2dyZWVuczcvNgAvZ3JlZW5zNy83AC9ncmVlbnM4LzEAL2dyZWVuczgvMgAvZ3JlZW5zOC8zAC9ncmVlbnM4LzQAL2dyZWVuczgvNQAvZ3JlZW5zOC82AC9ncmVlbnM4LzcAL2dyZWVuczgvOAAvZ3JlZW5zOS8xAC9ncmVlbnM5LzIAL2dyZWVuczkvMwAvZ3JlZW5zOS80AC9ncmVlbnM5LzUAL2dyZWVuczkvNgAvZ3JlZW5zOS83AC9ncmVlbnM5LzgAL2dyZWVuczkvOQAvZ3JleXMzLzEAL2dyZXlzMy8yAC9ncmV5czMvMwAvZ3JleXM0LzEAL2dyZXlzNC8yAC9ncmV5czQvMwAvZ3JleXM0LzQAL2dyZXlzNS8xAC9ncmV5czUvMgAvZ3JleXM1LzMAL2dyZXlzNS80AC9ncmV5czUvNQAvZ3JleXM2LzEAL2dyZXlzNi8yAC9ncmV5czYvMwAvZ3JleXM2LzQAL2dyZXlzNi81AC9ncmV5czYvNgAvZ3JleXM3LzEAL2dyZXlzNy8yAC9ncmV5czcvMwAvZ3JleXM3LzQAL2dyZXlzNy81AC9ncmV5czcvNgAvZ3JleXM3LzcAL2dyZXlzOC8xAC9ncmV5czgvMgAvZ3JleXM4LzMAL2dyZXlzOC80AC9ncmV5czgvNQAvZ3JleXM4LzYAL2dyZXlzOC83AC9ncmV5czgvOAAvZ3JleXM5LzEAL2dyZXlzOS8yAC9ncmV5czkvMwAvZ3JleXM5LzQAL2dyZXlzOS81AC9ncmV5czkvNgAvZ3JleXM5LzcAL2dyZXlzOS84AC9ncmV5czkvOQAvb3JhbmdlczMvMQAvb3JhbmdlczMvMgAvb3JhbmdlczMvMwAvb3JhbmdlczQvMQAvb3JhbmdlczQvMgAvb3JhbmdlczQvMwAvb3JhbmdlczQvNAAvb3JhbmdlczUvMQAvb3JhbmdlczUvMgAvb3JhbmdlczUvMwAvb3JhbmdlczUvNAAvb3JhbmdlczUvNQAvb3JhbmdlczYvMQAvb3JhbmdlczYvMgAvb3JhbmdlczYvMwAvb3JhbmdlczYvNAAvb3JhbmdlczYvNQAvb3JhbmdlczYvNgAvb3JhbmdlczcvMQAvb3JhbmdlczcvMgAvb3JhbmdlczcvMwAvb3JhbmdlczcvNAAvb3JhbmdlczcvNQAvb3JhbmdlczcvNgAvb3JhbmdlczcvNwAvb3JhbmdlczgvMQAvb3JhbmdlczgvMgAvb3JhbmdlczgvMwAvb3JhbmdlczgvNAAvb3JhbmdlczgvNQAvb3JhbmdlczgvNgAvb3JhbmdlczgvNwAvb3JhbmdlczgvOAAvb3JhbmdlczkvMQAvb3JhbmdlczkvMgAvb3JhbmdlczkvMwAvb3JhbmdlczkvNAAvb3JhbmdlczkvNQAvb3JhbmdlczkvNgAvb3JhbmdlczkvNwAvb3JhbmdlczkvOAAvb3JhbmdlczkvOQAvb3JyZDMvMQAvb3JyZDMvMgAvb3JyZDMvMwAvb3JyZDQvMQAvb3JyZDQvMgAvb3JyZDQvMwAvb3JyZDQvNAAvb3JyZDUvMQAvb3JyZDUvMgAvb3JyZDUvMwAvb3JyZDUvNAAvb3JyZDUvNQAvb3JyZDYvMQAvb3JyZDYvMgAvb3JyZDYvMwAvb3JyZDYvNAAvb3JyZDYvNQAvb3JyZDYvNgAvb3JyZDcvMQAvb3JyZDcvMgAvb3JyZDcvMwAvb3JyZDcvNAAvb3JyZDcvNQAvb3JyZDcvNgAvb3JyZDcvNwAvb3JyZDgvMQAvb3JyZDgvMgAvb3JyZDgvMwAvb3JyZDgvNAAvb3JyZDgvNQAvb3JyZDgvNgAvb3JyZDgvNwAvb3JyZDgvOAAvb3JyZDkvMQAvb3JyZDkvMgAvb3JyZDkvMwAvb3JyZDkvNAAvb3JyZDkvNQAvb3JyZDkvNgAvb3JyZDkvNwAvb3JyZDkvOAAvb3JyZDkvOQAvcGFpcmVkMTAvMQAvcGFpcmVkMTAvMTAAL3BhaXJlZDEwLzIAL3BhaXJlZDEwLzMAL3BhaXJlZDEwLzQAL3BhaXJlZDEwLzUAL3BhaXJlZDEwLzYAL3BhaXJlZDEwLzcAL3BhaXJlZDEwLzgAL3BhaXJlZDEwLzkAL3BhaXJlZDExLzEAL3BhaXJlZDExLzEwAC9wYWlyZWQxMS8xMQAvcGFpcmVkMTEvMgAvcGFpcmVkMTEvMwAvcGFpcmVkMTEvNAAvcGFpcmVkMTEvNQAvcGFpcmVkMTEvNgAvcGFpcmVkMTEvNwAvcGFpcmVkMTEvOAAvcGFpcmVkMTEvOQAvcGFpcmVkMTIvMQAvcGFpcmVkMTIvMTAAL3BhaXJlZDEyLzExAC9wYWlyZWQxMi8xMgAvcGFpcmVkMTIvMgAvcGFpcmVkMTIvMwAvcGFpcmVkMTIvNAAvcGFpcmVkMTIvNQAvcGFpcmVkMTIvNgAvcGFpcmVkMTIvNwAvcGFpcmVkMTIvOAAvcGFpcmVkMTIvOQAvcGFpcmVkMy8xAC9wYWlyZWQzLzIAL3BhaXJlZDMvMwAvcGFpcmVkNC8xAC9wYWlyZWQ0LzIAL3BhaXJlZDQvMwAvcGFpcmVkNC80AC9wYWlyZWQ1LzEAL3BhaXJlZDUvMgAvcGFpcmVkNS8zAC9wYWlyZWQ1LzQAL3BhaXJlZDUvNQAvcGFpcmVkNi8xAC9wYWlyZWQ2LzIAL3BhaXJlZDYvMwAvcGFpcmVkNi80AC9wYWlyZWQ2LzUAL3BhaXJlZDYvNgAvcGFpcmVkNy8xAC9wYWlyZWQ3LzIAL3BhaXJlZDcvMwAvcGFpcmVkNy80AC9wYWlyZWQ3LzUAL3BhaXJlZDcvNgAvcGFpcmVkNy83AC9wYWlyZWQ4LzEAL3BhaXJlZDgvMgAvcGFpcmVkOC8zAC9wYWlyZWQ4LzQAL3BhaXJlZDgvNQAvcGFpcmVkOC82AC9wYWlyZWQ4LzcAL3BhaXJlZDgvOAAvcGFpcmVkOS8xAC9wYWlyZWQ5LzIAL3BhaXJlZDkvMwAvcGFpcmVkOS80AC9wYWlyZWQ5LzUAL3BhaXJlZDkvNgAvcGFpcmVkOS83AC9wYWlyZWQ5LzgAL3BhaXJlZDkvOQAvcGFzdGVsMTMvMQAvcGFzdGVsMTMvMgAvcGFzdGVsMTMvMwAvcGFzdGVsMTQvMQAvcGFzdGVsMTQvMgAvcGFzdGVsMTQvMwAvcGFzdGVsMTQvNAAvcGFzdGVsMTUvMQAvcGFzdGVsMTUvMgAvcGFzdGVsMTUvMwAvcGFzdGVsMTUvNAAvcGFzdGVsMTUvNQAvcGFzdGVsMTYvMQAvcGFzdGVsMTYvMgAvcGFzdGVsMTYvMwAvcGFzdGVsMTYvNAAvcGFzdGVsMTYvNQAvcGFzdGVsMTYvNgAvcGFzdGVsMTcvMQAvcGFzdGVsMTcvMgAvcGFzdGVsMTcvMwAvcGFzdGVsMTcvNAAvcGFzdGVsMTcvNQAvcGFzdGVsMTcvNgAvcGFzdGVsMTcvNwAvcGFzdGVsMTgvMQAvcGFzdGVsMTgvMgAvcGFzdGVsMTgvMwAvcGFzdGVsMTgvNAAvcGFzdGVsMTgvNQAvcGFzdGVsMTgvNgAvcGFzdGVsMTgvNwAvcGFzdGVsMTgvOAAvcGFzdGVsMTkvMQAvcGFzdGVsMTkvMgAvcGFzdGVsMTkvMwAvcGFzdGVsMTkvNAAvcGFzdGVsMTkvNQAvcGFzdGVsMTkvNgAvcGFzdGVsMTkvNwAvcGFzdGVsMTkvOAAvcGFzdGVsMTkvOQAvcGFzdGVsMjMvMQAvcGFzdGVsMjMvMgAvcGFzdGVsMjMvMwAvcGFzdGVsMjQvMQAvcGFzdGVsMjQvMgAvcGFzdGVsMjQvMwAvcGFzdGVsMjQvNAAvcGFzdGVsMjUvMQAvcGFzdGVsMjUvMgAvcGFzdGVsMjUvMwAvcGFzdGVsMjUvNAAvcGFzdGVsMjUvNQAvcGFzdGVsMjYvMQAvcGFzdGVsMjYvMgAvcGFzdGVsMjYvMwAvcGFzdGVsMjYvNAAvcGFzdGVsMjYvNQAvcGFzdGVsMjYvNgAvcGFzdGVsMjcvMQAvcGFzdGVsMjcvMgAvcGFzdGVsMjcvMwAvcGFzdGVsMjcvNAAvcGFzdGVsMjcvNQAvcGFzdGVsMjcvNgAvcGFzdGVsMjcvNwAvcGFzdGVsMjgvMQAvcGFzdGVsMjgvMgAvcGFzdGVsMjgvMwAvcGFzdGVsMjgvNAAvcGFzdGVsMjgvNQAvcGFzdGVsMjgvNgAvcGFzdGVsMjgvNwAvcGFzdGVsMjgvOAAvcGl5ZzEwLzEAL3BpeWcxMC8xMAAvcGl5ZzEwLzIAL3BpeWcxMC8zAC9waXlnMTAvNAAvcGl5ZzEwLzUAL3BpeWcxMC82AC9waXlnMTAvNwAvcGl5ZzEwLzgAL3BpeWcxMC85AC9waXlnMTEvMQAvcGl5ZzExLzEwAC9waXlnMTEvMTEAL3BpeWcxMS8yAC9waXlnMTEvMwAvcGl5ZzExLzQAL3BpeWcxMS81AC9waXlnMTEvNgAvcGl5ZzExLzcAL3BpeWcxMS84AC9waXlnMTEvOQAvcGl5ZzMvMQAvcGl5ZzMvMgAvcGl5ZzMvMwAvcGl5ZzQvMQAvcGl5ZzQvMgAvcGl5ZzQvMwAvcGl5ZzQvNAAvcGl5ZzUvMQAvcGl5ZzUvMgAvcGl5ZzUvMwAvcGl5ZzUvNAAvcGl5ZzUvNQAvcGl5ZzYvMQAvcGl5ZzYvMgAvcGl5ZzYvMwAvcGl5ZzYvNAAvcGl5ZzYvNQAvcGl5ZzYvNgAvcGl5ZzcvMQAvcGl5ZzcvMgAvcGl5ZzcvMwAvcGl5ZzcvNAAvcGl5ZzcvNQAvcGl5ZzcvNgAvcGl5ZzcvNwAvcGl5ZzgvMQAvcGl5ZzgvMgAvcGl5ZzgvMwAvcGl5ZzgvNAAvcGl5ZzgvNQAvcGl5ZzgvNgAvcGl5ZzgvNwAvcGl5ZzgvOAAvcGl5ZzkvMQAvcGl5ZzkvMgAvcGl5ZzkvMwAvcGl5ZzkvNAAvcGl5ZzkvNQAvcGl5ZzkvNgAvcGl5ZzkvNwAvcGl5ZzkvOAAvcGl5ZzkvOQAvcHJnbjEwLzEAL3ByZ24xMC8xMAAvcHJnbjEwLzIAL3ByZ24xMC8zAC9wcmduMTAvNAAvcHJnbjEwLzUAL3ByZ24xMC82AC9wcmduMTAvNwAvcHJnbjEwLzgAL3ByZ24xMC85AC9wcmduMTEvMQAvcHJnbjExLzEwAC9wcmduMTEvMTEAL3ByZ24xMS8yAC9wcmduMTEvMwAvcHJnbjExLzQAL3ByZ24xMS81AC9wcmduMTEvNgAvcHJnbjExLzcAL3ByZ24xMS84AC9wcmduMTEvOQAvcHJnbjMvMQAvcHJnbjMvMgAvcHJnbjMvMwAvcHJnbjQvMQAvcHJnbjQvMgAvcHJnbjQvMwAvcHJnbjQvNAAvcHJnbjUvMQAvcHJnbjUvMgAvcHJnbjUvMwAvcHJnbjUvNAAvcHJnbjUvNQAvcHJnbjYvMQAvcHJnbjYvMgAvcHJnbjYvMwAvcHJnbjYvNAAvcHJnbjYvNQAvcHJnbjYvNgAvcHJnbjcvMQAvcHJnbjcvMgAvcHJnbjcvMwAvcHJnbjcvNAAvcHJnbjcvNQAvcHJnbjcvNgAvcHJnbjcvNwAvcHJnbjgvMQAvcHJnbjgvMgAvcHJnbjgvMwAvcHJnbjgvNAAvcHJnbjgvNQAvcHJnbjgvNgAvcHJnbjgvNwAvcHJnbjgvOAAvcHJnbjkvMQAvcHJnbjkvMgAvcHJnbjkvMwAvcHJnbjkvNAAvcHJnbjkvNQAvcHJnbjkvNgAvcHJnbjkvNwAvcHJnbjkvOAAvcHJnbjkvOQAvcHVidTMvMQAvcHVidTMvMgAvcHVidTMvMwAvcHVidTQvMQAvcHVidTQvMgAvcHVidTQvMwAvcHVidTQvNAAvcHVidTUvMQAvcHVidTUvMgAvcHVidTUvMwAvcHVidTUvNAAvcHVidTUvNQAvcHVidTYvMQAvcHVidTYvMgAvcHVidTYvMwAvcHVidTYvNAAvcHVidTYvNQAvcHVidTYvNgAvcHVidTcvMQAvcHVidTcvMgAvcHVidTcvMwAvcHVidTcvNAAvcHVidTcvNQAvcHVidTcvNgAvcHVidTcvNwAvcHVidTgvMQAvcHVidTgvMgAvcHVidTgvMwAvcHVidTgvNAAvcHVidTgvNQAvcHVidTgvNgAvcHVidTgvNwAvcHVidTgvOAAvcHVidTkvMQAvcHVidTkvMgAvcHVidTkvMwAvcHVidTkvNAAvcHVidTkvNQAvcHVidTkvNgAvcHVidTkvNwAvcHVidTkvOAAvcHVidTkvOQAvcHVidWduMy8xAC9wdWJ1Z24zLzIAL3B1YnVnbjMvMwAvcHVidWduNC8xAC9wdWJ1Z240LzIAL3B1YnVnbjQvMwAvcHVidWduNC80AC9wdWJ1Z241LzEAL3B1YnVnbjUvMgAvcHVidWduNS8zAC9wdWJ1Z241LzQAL3B1YnVnbjUvNQAvcHVidWduNi8xAC9wdWJ1Z242LzIAL3B1YnVnbjYvMwAvcHVidWduNi80AC9wdWJ1Z242LzUAL3B1YnVnbjYvNgAvcHVidWduNy8xAC9wdWJ1Z243LzIAL3B1YnVnbjcvMwAvcHVidWduNy80AC9wdWJ1Z243LzUAL3B1YnVnbjcvNgAvcHVidWduNy83AC9wdWJ1Z244LzEAL3B1YnVnbjgvMgAvcHVidWduOC8zAC9wdWJ1Z244LzQAL3B1YnVnbjgvNQAvcHVidWduOC82AC9wdWJ1Z244LzcAL3B1YnVnbjgvOAAvcHVidWduOS8xAC9wdWJ1Z245LzIAL3B1YnVnbjkvMwAvcHVidWduOS80AC9wdWJ1Z245LzUAL3B1YnVnbjkvNgAvcHVidWduOS83AC9wdWJ1Z245LzgAL3B1YnVnbjkvOQAvcHVvcjEwLzEAL3B1b3IxMC8xMAAvcHVvcjEwLzIAL3B1b3IxMC8zAC9wdW9yMTAvNAAvcHVvcjEwLzUAL3B1b3IxMC82AC9wdW9yMTAvNwAvcHVvcjEwLzgAL3B1b3IxMC85AC9wdW9yMTEvMQAvcHVvcjExLzEwAC9wdW9yMTEvMTEAL3B1b3IxMS8yAC9wdW9yMTEvMwAvcHVvcjExLzQAL3B1b3IxMS81AC9wdW9yMTEvNgAvcHVvcjExLzcAL3B1b3IxMS84AC9wdW9yMTEvOQAvcHVvcjMvMQAvcHVvcjMvMgAvcHVvcjMvMwAvcHVvcjQvMQAvcHVvcjQvMgAvcHVvcjQvMwAvcHVvcjQvNAAvcHVvcjUvMQAvcHVvcjUvMgAvcHVvcjUvMwAvcHVvcjUvNAAvcHVvcjUvNQAvcHVvcjYvMQAvcHVvcjYvMgAvcHVvcjYvMwAvcHVvcjYvNAAvcHVvcjYvNQAvcHVvcjYvNgAvcHVvcjcvMQAvcHVvcjcvMgAvcHVvcjcvMwAvcHVvcjcvNAAvcHVvcjcvNQAvcHVvcjcvNgAvcHVvcjcvNwAvcHVvcjgvMQAvcHVvcjgvMgAvcHVvcjgvMwAvcHVvcjgvNAAvcHVvcjgvNQAvcHVvcjgvNgAvcHVvcjgvNwAvcHVvcjgvOAAvcHVvcjkvMQAvcHVvcjkvMgAvcHVvcjkvMwAvcHVvcjkvNAAvcHVvcjkvNQAvcHVvcjkvNgAvcHVvcjkvNwAvcHVvcjkvOAAvcHVvcjkvOQAvcHVyZDMvMQAvcHVyZDMvMgAvcHVyZDMvMwAvcHVyZDQvMQAvcHVyZDQvMgAvcHVyZDQvMwAvcHVyZDQvNAAvcHVyZDUvMQAvcHVyZDUvMgAvcHVyZDUvMwAvcHVyZDUvNAAvcHVyZDUvNQAvcHVyZDYvMQAvcHVyZDYvMgAvcHVyZDYvMwAvcHVyZDYvNAAvcHVyZDYvNQAvcHVyZDYvNgAvcHVyZDcvMQAvcHVyZDcvMgAvcHVyZDcvMwAvcHVyZDcvNAAvcHVyZDcvNQAvcHVyZDcvNgAvcHVyZDcvNwAvcHVyZDgvMQAvcHVyZDgvMgAvcHVyZDgvMwAvcHVyZDgvNAAvcHVyZDgvNQAvcHVyZDgvNgAvcHVyZDgvNwAvcHVyZDgvOAAvcHVyZDkvMQAvcHVyZDkvMgAvcHVyZDkvMwAvcHVyZDkvNAAvcHVyZDkvNQAvcHVyZDkvNgAvcHVyZDkvNwAvcHVyZDkvOAAvcHVyZDkvOQAvcHVycGxlczMvMQAvcHVycGxlczMvMgAvcHVycGxlczMvMwAvcHVycGxlczQvMQAvcHVycGxlczQvMgAvcHVycGxlczQvMwAvcHVycGxlczQvNAAvcHVycGxlczUvMQAvcHVycGxlczUvMgAvcHVycGxlczUvMwAvcHVycGxlczUvNAAvcHVycGxlczUvNQAvcHVycGxlczYvMQAvcHVycGxlczYvMgAvcHVycGxlczYvMwAvcHVycGxlczYvNAAvcHVycGxlczYvNQAvcHVycGxlczYvNgAvcHVycGxlczcvMQAvcHVycGxlczcvMgAvcHVycGxlczcvMwAvcHVycGxlczcvNAAvcHVycGxlczcvNQAvcHVycGxlczcvNgAvcHVycGxlczcvNwAvcHVycGxlczgvMQAvcHVycGxlczgvMgAvcHVycGxlczgvMwAvcHVycGxlczgvNAAvcHVycGxlczgvNQAvcHVycGxlczgvNgAvcHVycGxlczgvNwAvcHVycGxlczgvOAAvcHVycGxlczkvMQAvcHVycGxlczkvMgAvcHVycGxlczkvMwAvcHVycGxlczkvNAAvcHVycGxlczkvNQAvcHVycGxlczkvNgAvcHVycGxlczkvNwAvcHVycGxlczkvOAAvcHVycGxlczkvOQAvcmRidTEwLzEAL3JkYnUxMC8xMAAvcmRidTEwLzIAL3JkYnUxMC8zAC9yZGJ1MTAvNAAvcmRidTEwLzUAL3JkYnUxMC82AC9yZGJ1MTAvNwAvcmRidTEwLzgAL3JkYnUxMC85AC9yZGJ1MTEvMQAvcmRidTExLzEwAC9yZGJ1MTEvMTEAL3JkYnUxMS8yAC9yZGJ1MTEvMwAvcmRidTExLzQAL3JkYnUxMS81AC9yZGJ1MTEvNgAvcmRidTExLzcAL3JkYnUxMS84AC9yZGJ1MTEvOQAvcmRidTMvMQAvcmRidTMvMgAvcmRidTMvMwAvcmRidTQvMQAvcmRidTQvMgAvcmRidTQvMwAvcmRidTQvNAAvcmRidTUvMQAvcmRidTUvMgAvcmRidTUvMwAvcmRidTUvNAAvcmRidTUvNQAvcmRidTYvMQAvcmRidTYvMgAvcmRidTYvMwAvcmRidTYvNAAvcmRidTYvNQAvcmRidTYvNgAvcmRidTcvMQAvcmRidTcvMgAvcmRidTcvMwAvcmRidTcvNAAvcmRidTcvNQAvcmRidTcvNgAvcmRidTcvNwAvcmRidTgvMQAvcmRidTgvMgAvcmRidTgvMwAvcmRidTgvNAAvcmRidTgvNQAvcmRidTgvNgAvcmRidTgvNwAvcmRidTgvOAAvcmRidTkvMQAvcmRidTkvMgAvcmRidTkvMwAvcmRidTkvNAAvcmRidTkvNQAvcmRidTkvNgAvcmRidTkvNwAvcmRidTkvOAAvcmRidTkvOQAvcmRneTEwLzEAL3JkZ3kxMC8xMAAvcmRneTEwLzIAL3JkZ3kxMC8zAC9yZGd5MTAvNAAvcmRneTEwLzUAL3JkZ3kxMC82AC9yZGd5MTAvNwAvcmRneTEwLzgAL3JkZ3kxMC85AC9yZGd5MTEvMQAvcmRneTExLzEwAC9yZGd5MTEvMTEAL3JkZ3kxMS8yAC9yZGd5MTEvMwAvcmRneTExLzQAL3JkZ3kxMS81AC9yZGd5MTEvNgAvcmRneTExLzcAL3JkZ3kxMS84AC9yZGd5MTEvOQAvcmRneTMvMQAvcmRneTMvMgAvcmRneTMvMwAvcmRneTQvMQAvcmRneTQvMgAvcmRneTQvMwAvcmRneTQvNAAvcmRneTUvMQAvcmRneTUvMgAvcmRneTUvMwAvcmRneTUvNAAvcmRneTUvNQAvcmRneTYvMQAvcmRneTYvMgAvcmRneTYvMwAvcmRneTYvNAAvcmRneTYvNQAvcmRneTYvNgAvcmRneTcvMQAvcmRneTcvMgAvcmRneTcvMwAvcmRneTcvNAAvcmRneTcvNQAvcmRneTcvNgAvcmRneTcvNwAvcmRneTgvMQAvcmRneTgvMgAvcmRneTgvMwAvcmRneTgvNAAvcmRneTgvNQAvcmRneTgvNgAvcmRneTgvNwAvcmRneTgvOAAvcmRneTkvMQAvcmRneTkvMgAvcmRneTkvMwAvcmRneTkvNAAvcmRneTkvNQAvcmRneTkvNgAvcmRneTkvNwAvcmRneTkvOAAvcmRneTkvOQAvcmRwdTMvMQAvcmRwdTMvMgAvcmRwdTMvMwAvcmRwdTQvMQAvcmRwdTQvMgAvcmRwdTQvMwAvcmRwdTQvNAAvcmRwdTUvMQAvcmRwdTUvMgAvcmRwdTUvMwAvcmRwdTUvNAAvcmRwdTUvNQAvcmRwdTYvMQAvcmRwdTYvMgAvcmRwdTYvMwAvcmRwdTYvNAAvcmRwdTYvNQAvcmRwdTYvNgAvcmRwdTcvMQAvcmRwdTcvMgAvcmRwdTcvMwAvcmRwdTcvNAAvcmRwdTcvNQAvcmRwdTcvNgAvcmRwdTcvNwAvcmRwdTgvMQAvcmRwdTgvMgAvcmRwdTgvMwAvcmRwdTgvNAAvcmRwdTgvNQAvcmRwdTgvNgAvcmRwdTgvNwAvcmRwdTgvOAAvcmRwdTkvMQAvcmRwdTkvMgAvcmRwdTkvMwAvcmRwdTkvNAAvcmRwdTkvNQAvcmRwdTkvNgAvcmRwdTkvNwAvcmRwdTkvOAAvcmRwdTkvOQAvcmR5bGJ1MTAvMQAvcmR5bGJ1MTAvMTAAL3JkeWxidTEwLzIAL3JkeWxidTEwLzMAL3JkeWxidTEwLzQAL3JkeWxidTEwLzUAL3JkeWxidTEwLzYAL3JkeWxidTEwLzcAL3JkeWxidTEwLzgAL3JkeWxidTEwLzkAL3JkeWxidTExLzEAL3JkeWxidTExLzEwAC9yZHlsYnUxMS8xMQAvcmR5bGJ1MTEvMgAvcmR5bGJ1MTEvMwAvcmR5bGJ1MTEvNAAvcmR5bGJ1MTEvNQAvcmR5bGJ1MTEvNgAvcmR5bGJ1MTEvNwAvcmR5bGJ1MTEvOAAvcmR5bGJ1MTEvOQAvcmR5bGJ1My8xAC9yZHlsYnUzLzIAL3JkeWxidTMvMwAvcmR5bGJ1NC8xAC9yZHlsYnU0LzIAL3JkeWxidTQvMwAvcmR5bGJ1NC80AC9yZHlsYnU1LzEAL3JkeWxidTUvMgAvcmR5bGJ1NS8zAC9yZHlsYnU1LzQAL3JkeWxidTUvNQAvcmR5bGJ1Ni8xAC9yZHlsYnU2LzIAL3JkeWxidTYvMwAvcmR5bGJ1Ni80AC9yZHlsYnU2LzUAL3JkeWxidTYvNgAvcmR5bGJ1Ny8xAC9yZHlsYnU3LzIAL3JkeWxidTcvMwAvcmR5bGJ1Ny80AC9yZHlsYnU3LzUAL3JkeWxidTcvNgAvcmR5bGJ1Ny83AC9yZHlsYnU4LzEAL3JkeWxidTgvMgAvcmR5bGJ1OC8zAC9yZHlsYnU4LzQAL3JkeWxidTgvNQAvcmR5bGJ1OC82AC9yZHlsYnU4LzcAL3JkeWxidTgvOAAvcmR5bGJ1OS8xAC9yZHlsYnU5LzIAL3JkeWxidTkvMwAvcmR5bGJ1OS80AC9yZHlsYnU5LzUAL3JkeWxidTkvNgAvcmR5bGJ1OS83AC9yZHlsYnU5LzgAL3JkeWxidTkvOQAvcmR5bGduMTAvMQAvcmR5bGduMTAvMTAAL3JkeWxnbjEwLzIAL3JkeWxnbjEwLzMAL3JkeWxnbjEwLzQAL3JkeWxnbjEwLzUAL3JkeWxnbjEwLzYAL3JkeWxnbjEwLzcAL3JkeWxnbjEwLzgAL3JkeWxnbjEwLzkAL3JkeWxnbjExLzEAL3JkeWxnbjExLzEwAC9yZHlsZ24xMS8xMQAvcmR5bGduMTEvMgAvcmR5bGduMTEvMwAvcmR5bGduMTEvNAAvcmR5bGduMTEvNQAvcmR5bGduMTEvNgAvcmR5bGduMTEvNwAvcmR5bGduMTEvOAAvcmR5bGduMTEvOQAvcmR5bGduMy8xAC9yZHlsZ24zLzIAL3JkeWxnbjMvMwAvcmR5bGduNC8xAC9yZHlsZ240LzIAL3JkeWxnbjQvMwAvcmR5bGduNC80AC9yZHlsZ241LzEAL3JkeWxnbjUvMgAvcmR5bGduNS8zAC9yZHlsZ241LzQAL3JkeWxnbjUvNQAvcmR5bGduNi8xAC9yZHlsZ242LzIAL3JkeWxnbjYvMwAvcmR5bGduNi80AC9yZHlsZ242LzUAL3JkeWxnbjYvNgAvcmR5bGduNy8xAC9yZHlsZ243LzIAL3JkeWxnbjcvMwAvcmR5bGduNy80AC9yZHlsZ243LzUAL3JkeWxnbjcvNgAvcmR5bGduNy83AC9yZHlsZ244LzEAL3JkeWxnbjgvMgAvcmR5bGduOC8zAC9yZHlsZ244LzQAL3JkeWxnbjgvNQAvcmR5bGduOC82AC9yZHlsZ244LzcAL3JkeWxnbjgvOAAvcmR5bGduOS8xAC9yZHlsZ245LzIAL3JkeWxnbjkvMwAvcmR5bGduOS80AC9yZHlsZ245LzUAL3JkeWxnbjkvNgAvcmR5bGduOS83AC9yZHlsZ245LzgAL3JkeWxnbjkvOQAvcmVkczMvMQAvcmVkczMvMgAvcmVkczMvMwAvcmVkczQvMQAvcmVkczQvMgAvcmVkczQvMwAvcmVkczQvNAAvcmVkczUvMQAvcmVkczUvMgAvcmVkczUvMwAvcmVkczUvNAAvcmVkczUvNQAvcmVkczYvMQAvcmVkczYvMgAvcmVkczYvMwAvcmVkczYvNAAvcmVkczYvNQAvcmVkczYvNgAvcmVkczcvMQAvcmVkczcvMgAvcmVkczcvMwAvcmVkczcvNAAvcmVkczcvNQAvcmVkczcvNgAvcmVkczcvNwAvcmVkczgvMQAvcmVkczgvMgAvcmVkczgvMwAvcmVkczgvNAAvcmVkczgvNQAvcmVkczgvNgAvcmVkczgvNwAvcmVkczgvOAAvcmVkczkvMQAvcmVkczkvMgAvcmVkczkvMwAvcmVkczkvNAAvcmVkczkvNQAvcmVkczkvNgAvcmVkczkvNwAvcmVkczkvOAAvcmVkczkvOQAvc2V0MTMvMQAvc2V0MTMvMgAvc2V0MTMvMwAvc2V0MTQvMQAvc2V0MTQvMgAvc2V0MTQvMwAvc2V0MTQvNAAvc2V0MTUvMQAvc2V0MTUvMgAvc2V0MTUvMwAvc2V0MTUvNAAvc2V0MTUvNQAvc2V0MTYvMQAvc2V0MTYvMgAvc2V0MTYvMwAvc2V0MTYvNAAvc2V0MTYvNQAvc2V0MTYvNgAvc2V0MTcvMQAvc2V0MTcvMgAvc2V0MTcvMwAvc2V0MTcvNAAvc2V0MTcvNQAvc2V0MTcvNgAvc2V0MTcvNwAvc2V0MTgvMQAvc2V0MTgvMgAvc2V0MTgvMwAvc2V0MTgvNAAvc2V0MTgvNQAvc2V0MTgvNgAvc2V0MTgvNwAvc2V0MTgvOAAvc2V0MTkvMQAvc2V0MTkvMgAvc2V0MTkvMwAvc2V0MTkvNAAvc2V0MTkvNQAvc2V0MTkvNgAvc2V0MTkvNwAvc2V0MTkvOAAvc2V0MTkvOQAvc2V0MjMvMQAvc2V0MjMvMgAvc2V0MjMvMwAvc2V0MjQvMQAvc2V0MjQvMgAvc2V0MjQvMwAvc2V0MjQvNAAvc2V0MjUvMQAvc2V0MjUvMgAvc2V0MjUvMwAvc2V0MjUvNAAvc2V0MjUvNQAvc2V0MjYvMQAvc2V0MjYvMgAvc2V0MjYvMwAvc2V0MjYvNAAvc2V0MjYvNQAvc2V0MjYvNgAvc2V0MjcvMQAvc2V0MjcvMgAvc2V0MjcvMwAvc2V0MjcvNAAvc2V0MjcvNQAvc2V0MjcvNgAvc2V0MjcvNwAvc2V0MjgvMQAvc2V0MjgvMgAvc2V0MjgvMwAvc2V0MjgvNAAvc2V0MjgvNQAvc2V0MjgvNgAvc2V0MjgvNwAvc2V0MjgvOAAvc2V0MzEwLzEAL3NldDMxMC8xMAAvc2V0MzEwLzIAL3NldDMxMC8zAC9zZXQzMTAvNAAvc2V0MzEwLzUAL3NldDMxMC82AC9zZXQzMTAvNwAvc2V0MzEwLzgAL3NldDMxMC85AC9zZXQzMTEvMQAvc2V0MzExLzEwAC9zZXQzMTEvMTEAL3NldDMxMS8yAC9zZXQzMTEvMwAvc2V0MzExLzQAL3NldDMxMS81AC9zZXQzMTEvNgAvc2V0MzExLzcAL3NldDMxMS84AC9zZXQzMTEvOQAvc2V0MzEyLzEAL3NldDMxMi8xMAAvc2V0MzEyLzExAC9zZXQzMTIvMTIAL3NldDMxMi8yAC9zZXQzMTIvMwAvc2V0MzEyLzQAL3NldDMxMi81AC9zZXQzMTIvNgAvc2V0MzEyLzcAL3NldDMxMi84AC9zZXQzMTIvOQAvc2V0MzMvMQAvc2V0MzMvMgAvc2V0MzMvMwAvc2V0MzQvMQAvc2V0MzQvMgAvc2V0MzQvMwAvc2V0MzQvNAAvc2V0MzUvMQAvc2V0MzUvMgAvc2V0MzUvMwAvc2V0MzUvNAAvc2V0MzUvNQAvc2V0MzYvMQAvc2V0MzYvMgAvc2V0MzYvMwAvc2V0MzYvNAAvc2V0MzYvNQAvc2V0MzYvNgAvc2V0MzcvMQAvc2V0MzcvMgAvc2V0MzcvMwAvc2V0MzcvNAAvc2V0MzcvNQAvc2V0MzcvNgAvc2V0MzcvNwAvc2V0MzgvMQAvc2V0MzgvMgAvc2V0MzgvMwAvc2V0MzgvNAAvc2V0MzgvNQAvc2V0MzgvNgAvc2V0MzgvNwAvc2V0MzgvOAAvc2V0MzkvMQAvc2V0MzkvMgAvc2V0MzkvMwAvc2V0MzkvNAAvc2V0MzkvNQAvc2V0MzkvNgAvc2V0MzkvNwAvc2V0MzkvOAAvc2V0MzkvOQAvc3BlY3RyYWwxMC8xAC9zcGVjdHJhbDEwLzEwAC9zcGVjdHJhbDEwLzIAL3NwZWN0cmFsMTAvMwAvc3BlY3RyYWwxMC80AC9zcGVjdHJhbDEwLzUAL3NwZWN0cmFsMTAvNgAvc3BlY3RyYWwxMC83AC9zcGVjdHJhbDEwLzgAL3NwZWN0cmFsMTAvOQAvc3BlY3RyYWwxMS8xAC9zcGVjdHJhbDExLzEwAC9zcGVjdHJhbDExLzExAC9zcGVjdHJhbDExLzIAL3NwZWN0cmFsMTEvMwAvc3BlY3RyYWwxMS80AC9zcGVjdHJhbDExLzUAL3NwZWN0cmFsMTEvNgAvc3BlY3RyYWwxMS83AC9zcGVjdHJhbDExLzgAL3NwZWN0cmFsMTEvOQAvc3BlY3RyYWwzLzEAL3NwZWN0cmFsMy8yAC9zcGVjdHJhbDMvMwAvc3BlY3RyYWw0LzEAL3NwZWN0cmFsNC8yAC9zcGVjdHJhbDQvMwAvc3BlY3RyYWw0LzQAL3NwZWN0cmFsNS8xAC9zcGVjdHJhbDUvMgAvc3BlY3RyYWw1LzMAL3NwZWN0cmFsNS80AC9zcGVjdHJhbDUvNQAvc3BlY3RyYWw2LzEAL3NwZWN0cmFsNi8yAC9zcGVjdHJhbDYvMwAvc3BlY3RyYWw2LzQAL3NwZWN0cmFsNi81AC9zcGVjdHJhbDYvNgAvc3BlY3RyYWw3LzEAL3NwZWN0cmFsNy8yAC9zcGVjdHJhbDcvMwAvc3BlY3RyYWw3LzQAL3NwZWN0cmFsNy81AC9zcGVjdHJhbDcvNgAvc3BlY3RyYWw3LzcAL3NwZWN0cmFsOC8xAC9zcGVjdHJhbDgvMgAvc3BlY3RyYWw4LzMAL3NwZWN0cmFsOC80AC9zcGVjdHJhbDgvNQAvc3BlY3RyYWw4LzYAL3NwZWN0cmFsOC83AC9zcGVjdHJhbDgvOAAvc3BlY3RyYWw5LzEAL3NwZWN0cmFsOS8yAC9zcGVjdHJhbDkvMwAvc3BlY3RyYWw5LzQAL3NwZWN0cmFsOS81AC9zcGVjdHJhbDkvNgAvc3BlY3RyYWw5LzcAL3NwZWN0cmFsOS84AC9zcGVjdHJhbDkvOQAvc3ZnL2FsaWNlYmx1ZQAvc3ZnL2FudGlxdWV3aGl0ZQAvc3ZnL2FxdWEAL3N2Zy9hcXVhbWFyaW5lAC9zdmcvYXp1cmUAL3N2Zy9iZWlnZQAvc3ZnL2Jpc3F1ZQAvc3ZnL2JsYWNrAC9zdmcvYmxhbmNoZWRhbG1vbmQAL3N2Zy9ibHVlAC9zdmcvYmx1ZXZpb2xldAAvc3ZnL2Jyb3duAC9zdmcvYnVybHl3b29kAC9zdmcvY2FkZXRibHVlAC9zdmcvY2hhcnRyZXVzZQAvc3ZnL2Nob2NvbGF0ZQAvc3ZnL2NvcmFsAC9zdmcvY29ybmZsb3dlcmJsdWUAL3N2Zy9jb3Juc2lsawAvc3ZnL2NyaW1zb24AL3N2Zy9jeWFuAC9zdmcvZGFya2JsdWUAL3N2Zy9kYXJrY3lhbgAvc3ZnL2Rhcmtnb2xkZW5yb2QAL3N2Zy9kYXJrZ3JheQAvc3ZnL2RhcmtncmVlbgAvc3ZnL2RhcmtncmV5AC9zdmcvZGFya2toYWtpAC9zdmcvZGFya21hZ2VudGEAL3N2Zy9kYXJrb2xpdmVncmVlbgAvc3ZnL2RhcmtvcmFuZ2UAL3N2Zy9kYXJrb3JjaGlkAC9zdmcvZGFya3JlZAAvc3ZnL2RhcmtzYWxtb24AL3N2Zy9kYXJrc2VhZ3JlZW4AL3N2Zy9kYXJrc2xhdGVibHVlAC9zdmcvZGFya3NsYXRlZ3JheQAvc3ZnL2RhcmtzbGF0ZWdyZXkAL3N2Zy9kYXJrdHVycXVvaXNlAC9zdmcvZGFya3Zpb2xldAAvc3ZnL2RlZXBwaW5rAC9zdmcvZGVlcHNreWJsdWUAL3N2Zy9kaW1ncmF5AC9zdmcvZGltZ3JleQAvc3ZnL2RvZGdlcmJsdWUAL3N2Zy9maXJlYnJpY2sAL3N2Zy9mbG9yYWx3aGl0ZQAvc3ZnL2ZvcmVzdGdyZWVuAC9zdmcvZnVjaHNpYQAvc3ZnL2dhaW5zYm9ybwAvc3ZnL2dob3N0d2hpdGUAL3N2Zy9nb2xkAC9zdmcvZ29sZGVucm9kAC9zdmcvZ3JheQAvc3ZnL2dyZWVuAC9zdmcvZ3JlZW55ZWxsb3cAL3N2Zy9ncmV5AC9zdmcvaG9uZXlkZXcAL3N2Zy9ob3RwaW5rAC9zdmcvaW5kaWFucmVkAC9zdmcvaW5kaWdvAC9zdmcvaXZvcnkAL3N2Zy9raGFraQAvc3ZnL2xhdmVuZGVyAC9zdmcvbGF2ZW5kZXJibHVzaAAvc3ZnL2xhd25ncmVlbgAvc3ZnL2xlbW9uY2hpZmZvbgAvc3ZnL2xpZ2h0Ymx1ZQAvc3ZnL2xpZ2h0Y29yYWwAL3N2Zy9saWdodGN5YW4AL3N2Zy9saWdodGdvbGRlbnJvZHllbGxvdwAvc3ZnL2xpZ2h0Z3JheQAvc3ZnL2xpZ2h0Z3JlZW4AL3N2Zy9saWdodGdyZXkAL3N2Zy9saWdodHBpbmsAL3N2Zy9saWdodHNhbG1vbgAvc3ZnL2xpZ2h0c2VhZ3JlZW4AL3N2Zy9saWdodHNreWJsdWUAL3N2Zy9saWdodHNsYXRlZ3JheQAvc3ZnL2xpZ2h0c2xhdGVncmV5AC9zdmcvbGlnaHRzdGVlbGJsdWUAL3N2Zy9saWdodHllbGxvdwAvc3ZnL2xpbWUAL3N2Zy9saW1lZ3JlZW4AL3N2Zy9saW5lbgAvc3ZnL21hZ2VudGEAL3N2Zy9tYXJvb24AL3N2Zy9tZWRpdW1hcXVhbWFyaW5lAC9zdmcvbWVkaXVtYmx1ZQAvc3ZnL21lZGl1bW9yY2hpZAAvc3ZnL21lZGl1bXB1cnBsZQAvc3ZnL21lZGl1bXNlYWdyZWVuAC9zdmcvbWVkaXVtc2xhdGVibHVlAC9zdmcvbWVkaXVtc3ByaW5nZ3JlZW4AL3N2Zy9tZWRpdW10dXJxdW9pc2UAL3N2Zy9tZWRpdW12aW9sZXRyZWQAL3N2Zy9taWRuaWdodGJsdWUAL3N2Zy9taW50Y3JlYW0AL3N2Zy9taXN0eXJvc2UAL3N2Zy9tb2NjYXNpbgAvc3ZnL25hdmFqb3doaXRlAC9zdmcvbmF2eQAvc3ZnL29sZGxhY2UAL3N2Zy9vbGl2ZQAvc3ZnL29saXZlZHJhYgAvc3ZnL29yYW5nZQAvc3ZnL29yYW5nZXJlZAAvc3ZnL29yY2hpZAAvc3ZnL3BhbGVnb2xkZW5yb2QAL3N2Zy9wYWxlZ3JlZW4AL3N2Zy9wYWxldHVycXVvaXNlAC9zdmcvcGFsZXZpb2xldHJlZAAvc3ZnL3BhcGF5YXdoaXAAL3N2Zy9wZWFjaHB1ZmYAL3N2Zy9wZXJ1AC9zdmcvcGluawAvc3ZnL3BsdW0AL3N2Zy9wb3dkZXJibHVlAC9zdmcvcHVycGxlAC9zdmcvcmVkAC9zdmcvcm9zeWJyb3duAC9zdmcvcm95YWxibHVlAC9zdmcvc2FkZGxlYnJvd24AL3N2Zy9zYWxtb24AL3N2Zy9zYW5keWJyb3duAC9zdmcvc2VhZ3JlZW4AL3N2Zy9zZWFzaGVsbAAvc3ZnL3NpZW5uYQAvc3ZnL3NpbHZlcgAvc3ZnL3NreWJsdWUAL3N2Zy9zbGF0ZWJsdWUAL3N2Zy9zbGF0ZWdyYXkAL3N2Zy9zbGF0ZWdyZXkAL3N2Zy9zbm93AC9zdmcvc3ByaW5nZ3JlZW4AL3N2Zy9zdGVlbGJsdWUAL3N2Zy90YW4AL3N2Zy90ZWFsAC9zdmcvdGhpc3RsZQAvc3ZnL3RvbWF0bwAvc3ZnL3R1cnF1b2lzZQAvc3ZnL3Zpb2xldAAvc3ZnL3doZWF0AC9zdmcvd2hpdGUAL3N2Zy93aGl0ZXNtb2tlAC9zdmcveWVsbG93AC9zdmcveWVsbG93Z3JlZW4AL3lsZ24zLzEAL3lsZ24zLzIAL3lsZ24zLzMAL3lsZ240LzEAL3lsZ240LzIAL3lsZ240LzMAL3lsZ240LzQAL3lsZ241LzEAL3lsZ241LzIAL3lsZ241LzMAL3lsZ241LzQAL3lsZ241LzUAL3lsZ242LzEAL3lsZ242LzIAL3lsZ242LzMAL3lsZ242LzQAL3lsZ242LzUAL3lsZ242LzYAL3lsZ243LzEAL3lsZ243LzIAL3lsZ243LzMAL3lsZ243LzQAL3lsZ243LzUAL3lsZ243LzYAL3lsZ243LzcAL3lsZ244LzEAL3lsZ244LzIAL3lsZ244LzMAL3lsZ244LzQAL3lsZ244LzUAL3lsZ244LzYAL3lsZ244LzcAL3lsZ244LzgAL3lsZ245LzEAL3lsZ245LzIAL3lsZ245LzMAL3lsZ245LzQAL3lsZ245LzUAL3lsZ245LzYAL3lsZ245LzcAL3lsZ245LzgAL3lsZ245LzkAL3lsZ25idTMvMQAveWxnbmJ1My8yAC95bGduYnUzLzMAL3lsZ25idTQvMQAveWxnbmJ1NC8yAC95bGduYnU0LzMAL3lsZ25idTQvNAAveWxnbmJ1NS8xAC95bGduYnU1LzIAL3lsZ25idTUvMwAveWxnbmJ1NS80AC95bGduYnU1LzUAL3lsZ25idTYvMQAveWxnbmJ1Ni8yAC95bGduYnU2LzMAL3lsZ25idTYvNAAveWxnbmJ1Ni81AC95bGduYnU2LzYAL3lsZ25idTcvMQAveWxnbmJ1Ny8yAC95bGduYnU3LzMAL3lsZ25idTcvNAAveWxnbmJ1Ny81AC95bGduYnU3LzYAL3lsZ25idTcvNwAveWxnbmJ1OC8xAC95bGduYnU4LzIAL3lsZ25idTgvMwAveWxnbmJ1OC80AC95bGduYnU4LzUAL3lsZ25idTgvNgAveWxnbmJ1OC83AC95bGduYnU4LzgAL3lsZ25idTkvMQAveWxnbmJ1OS8yAC95bGduYnU5LzMAL3lsZ25idTkvNAAveWxnbmJ1OS81AC95bGduYnU5LzYAL3lsZ25idTkvNwAveWxnbmJ1OS84AC95bGduYnU5LzkAL3lsb3JicjMvMQAveWxvcmJyMy8yAC95bG9yYnIzLzMAL3lsb3JicjQvMQAveWxvcmJyNC8yAC95bG9yYnI0LzMAL3lsb3JicjQvNAAveWxvcmJyNS8xAC95bG9yYnI1LzIAL3lsb3JicjUvMwAveWxvcmJyNS80AC95bG9yYnI1LzUAL3lsb3JicjYvMQAveWxvcmJyNi8yAC95bG9yYnI2LzMAL3lsb3JicjYvNAAveWxvcmJyNi81AC95bG9yYnI2LzYAL3lsb3JicjcvMQAveWxvcmJyNy8yAC95bG9yYnI3LzMAL3lsb3JicjcvNAAveWxvcmJyNy81AC95bG9yYnI3LzYAL3lsb3JicjcvNwAveWxvcmJyOC8xAC95bG9yYnI4LzIAL3lsb3JicjgvMwAveWxvcmJyOC80AC95bG9yYnI4LzUAL3lsb3JicjgvNgAveWxvcmJyOC83AC95bG9yYnI4LzgAL3lsb3JicjkvMQAveWxvcmJyOS8yAC95bG9yYnI5LzMAL3lsb3JicjkvNAAveWxvcmJyOS81AC95bG9yYnI5LzYAL3lsb3JicjkvNwAveWxvcmJyOS84AC95bG9yYnI5LzkAL3lsb3JyZDMvMQAveWxvcnJkMy8yAC95bG9ycmQzLzMAL3lsb3JyZDQvMQAveWxvcnJkNC8yAC95bG9ycmQ0LzMAL3lsb3JyZDQvNAAveWxvcnJkNS8xAC95bG9ycmQ1LzIAL3lsb3JyZDUvMwAveWxvcnJkNS80AC95bG9ycmQ1LzUAL3lsb3JyZDYvMQAveWxvcnJkNi8yAC95bG9ycmQ2LzMAL3lsb3JyZDYvNAAveWxvcnJkNi81AC95bG9ycmQ2LzYAL3lsb3JyZDcvMQAveWxvcnJkNy8yAC95bG9ycmQ3LzMAL3lsb3JyZDcvNAAveWxvcnJkNy81AC95bG9ycmQ3LzYAL3lsb3JyZDcvNwAveWxvcnJkOC8xAC95bG9ycmQ4LzIAL3lsb3JyZDgvMwAveWxvcnJkOC80AC95bG9ycmQ4LzUAL3lsb3JyZDgvNgAveWxvcnJkOC83AC95bG9ycmQ4LzgAL3lsb3JyZDkvMQAveWxvcnJkOS8yAC95bG9ycmQ5LzMAL3lsb3JyZDkvNAAveWxvcnJkOS81AC95bG9ycmQ5LzYAL3lsb3JyZDkvNwAveWxvcnJkOS84AC95bG9ycmQ5LzkAYWxpY2VibHVlAGFudGlxdWV3aGl0ZQBhbnRpcXVld2hpdGUxAGFudGlxdWV3aGl0ZTIAYW50aXF1ZXdoaXRlMwBhbnRpcXVld2hpdGU0AGFxdWFtYXJpbmUAYXF1YW1hcmluZTEAYXF1YW1hcmluZTIAYXF1YW1hcmluZTMAYXF1YW1hcmluZTQAYXp1cmUAYXp1cmUxAGF6dXJlMgBhenVyZTMAYXp1cmU0AGJlaWdlAGJpc3F1ZQBiaXNxdWUxAGJpc3F1ZTIAYmlzcXVlMwBiaXNxdWU0AGJsYW5jaGVkYWxtb25kAGJsdWUAYmx1ZTEAYmx1ZTIAYmx1ZTMAYmx1ZTQAYmx1ZXZpb2xldABicm93bgBicm93bjEAYnJvd24yAGJyb3duMwBicm93bjQAYnVybHl3b29kAGJ1cmx5d29vZDEAYnVybHl3b29kMgBidXJseXdvb2QzAGJ1cmx5d29vZDQAY2FkZXRibHVlAGNhZGV0Ymx1ZTEAY2FkZXRibHVlMgBjYWRldGJsdWUzAGNhZGV0Ymx1ZTQAY2hhcnRyZXVzZQBjaGFydHJldXNlMQBjaGFydHJldXNlMgBjaGFydHJldXNlMwBjaGFydHJldXNlNABjaG9jb2xhdGUAY2hvY29sYXRlMQBjaG9jb2xhdGUyAGNob2NvbGF0ZTMAY2hvY29sYXRlNABjb3JhbABjb3JhbDEAY29yYWwyAGNvcmFsMwBjb3JhbDQAY29ybmZsb3dlcmJsdWUAY29ybnNpbGsAY29ybnNpbGsxAGNvcm5zaWxrMgBjb3Juc2lsazMAY29ybnNpbGs0AGNyaW1zb24AY3lhbgBjeWFuMQBjeWFuMgBjeWFuMwBjeWFuNABkYXJrZ29sZGVucm9kAGRhcmtnb2xkZW5yb2QxAGRhcmtnb2xkZW5yb2QyAGRhcmtnb2xkZW5yb2QzAGRhcmtnb2xkZW5yb2Q0AGRhcmtncmVlbgBkYXJra2hha2kAZGFya29saXZlZ3JlZW4AZGFya29saXZlZ3JlZW4xAGRhcmtvbGl2ZWdyZWVuMgBkYXJrb2xpdmVncmVlbjMAZGFya29saXZlZ3JlZW40AGRhcmtvcmFuZ2UAZGFya29yYW5nZTEAZGFya29yYW5nZTIAZGFya29yYW5nZTMAZGFya29yYW5nZTQAZGFya29yY2hpZABkYXJrb3JjaGlkMQBkYXJrb3JjaGlkMgBkYXJrb3JjaGlkMwBkYXJrb3JjaGlkNABkYXJrc2FsbW9uAGRhcmtzZWFncmVlbgBkYXJrc2VhZ3JlZW4xAGRhcmtzZWFncmVlbjIAZGFya3NlYWdyZWVuMwBkYXJrc2VhZ3JlZW40AGRhcmtzbGF0ZWJsdWUAZGFya3NsYXRlZ3JheQBkYXJrc2xhdGVncmF5MQBkYXJrc2xhdGVncmF5MgBkYXJrc2xhdGVncmF5MwBkYXJrc2xhdGVncmF5NABkYXJrc2xhdGVncmV5AGRhcmt0dXJxdW9pc2UAZGFya3Zpb2xldABkZWVwcGluawBkZWVwcGluazEAZGVlcHBpbmsyAGRlZXBwaW5rMwBkZWVwcGluazQAZGVlcHNreWJsdWUAZGVlcHNreWJsdWUxAGRlZXBza3libHVlMgBkZWVwc2t5Ymx1ZTMAZGVlcHNreWJsdWU0AGRpbWdyYXkAZGltZ3JleQBkb2RnZXJibHVlAGRvZGdlcmJsdWUxAGRvZGdlcmJsdWUyAGRvZGdlcmJsdWUzAGRvZGdlcmJsdWU0AGZpcmVicmljawBmaXJlYnJpY2sxAGZpcmVicmljazIAZmlyZWJyaWNrMwBmaXJlYnJpY2s0AGZsb3JhbHdoaXRlAGZvcmVzdGdyZWVuAGdhaW5zYm9ybwBnaG9zdHdoaXRlAGdvbGQAZ29sZDEAZ29sZDIAZ29sZDMAZ29sZDQAZ29sZGVucm9kAGdvbGRlbnJvZDEAZ29sZGVucm9kMgBnb2xkZW5yb2QzAGdvbGRlbnJvZDQAZ3JheQBncmF5MABncmF5MQBncmF5MTAAZ3JheTEwMABncmF5MTEAZ3JheTEyAGdyYXkxMwBncmF5MTQAZ3JheTE1AGdyYXkxNgBncmF5MTcAZ3JheTE4AGdyYXkxOQBncmF5MgBncmF5MjAAZ3JheTIxAGdyYXkyMgBncmF5MjMAZ3JheTI0AGdyYXkyNQBncmF5MjYAZ3JheTI3AGdyYXkyOABncmF5MjkAZ3JheTMAZ3JheTMwAGdyYXkzMQBncmF5MzIAZ3JheTMzAGdyYXkzNABncmF5MzUAZ3JheTM2AGdyYXkzNwBncmF5MzgAZ3JheTM5AGdyYXk0AGdyYXk0MABncmF5NDEAZ3JheTQyAGdyYXk0MwBncmF5NDQAZ3JheTQ1AGdyYXk0NgBncmF5NDcAZ3JheTQ4AGdyYXk0OQBncmF5NQBncmF5NTAAZ3JheTUxAGdyYXk1MgBncmF5NTMAZ3JheTU0AGdyYXk1NQBncmF5NTYAZ3JheTU3AGdyYXk1OABncmF5NTkAZ3JheTYAZ3JheTYwAGdyYXk2MQBncmF5NjIAZ3JheTYzAGdyYXk2NABncmF5NjUAZ3JheTY2AGdyYXk2NwBncmF5NjgAZ3JheTY5AGdyYXk3AGdyYXk3MABncmF5NzEAZ3JheTcyAGdyYXk3MwBncmF5NzQAZ3JheTc1AGdyYXk3NgBncmF5NzcAZ3JheTc4AGdyYXk3OQBncmF5OABncmF5ODAAZ3JheTgxAGdyYXk4MgBncmF5ODMAZ3JheTg0AGdyYXk4NQBncmF5ODYAZ3JheTg3AGdyYXk4OABncmF5ODkAZ3JheTkAZ3JheTkwAGdyYXk5MQBncmF5OTIAZ3JheTkzAGdyYXk5NABncmF5OTUAZ3JheTk2AGdyYXk5NwBncmF5OTgAZ3JheTk5AGdyZWVuAGdyZWVuMQBncmVlbjIAZ3JlZW4zAGdyZWVuNABncmVlbnllbGxvdwBncmV5AGdyZXkwAGdyZXkxAGdyZXkxMABncmV5MTAwAGdyZXkxMQBncmV5MTIAZ3JleTEzAGdyZXkxNABncmV5MTUAZ3JleTE2AGdyZXkxNwBncmV5MTgAZ3JleTE5AGdyZXkyAGdyZXkyMABncmV5MjEAZ3JleTIyAGdyZXkyMwBncmV5MjQAZ3JleTI1AGdyZXkyNgBncmV5MjcAZ3JleTI4AGdyZXkyOQBncmV5MwBncmV5MzAAZ3JleTMxAGdyZXkzMgBncmV5MzMAZ3JleTM0AGdyZXkzNQBncmV5MzYAZ3JleTM3AGdyZXkzOABncmV5MzkAZ3JleTQAZ3JleTQwAGdyZXk0MQBncmV5NDIAZ3JleTQzAGdyZXk0NABncmV5NDUAZ3JleTQ2AGdyZXk0NwBncmV5NDgAZ3JleTQ5AGdyZXk1AGdyZXk1MABncmV5NTEAZ3JleTUyAGdyZXk1MwBncmV5NTQAZ3JleTU1AGdyZXk1NgBncmV5NTcAZ3JleTU4AGdyZXk1OQBncmV5NgBncmV5NjAAZ3JleTYxAGdyZXk2MgBncmV5NjMAZ3JleTY0AGdyZXk2NQBncmV5NjYAZ3JleTY3AGdyZXk2OABncmV5NjkAZ3JleTcAZ3JleTcwAGdyZXk3MQBncmV5NzIAZ3JleTczAGdyZXk3NABncmV5NzUAZ3JleTc2AGdyZXk3NwBncmV5NzgAZ3JleTc5AGdyZXk4AGdyZXk4MABncmV5ODEAZ3JleTgyAGdyZXk4MwBncmV5ODQAZ3JleTg1AGdyZXk4NgBncmV5ODcAZ3JleTg4AGdyZXk4OQBncmV5OQBncmV5OTAAZ3JleTkxAGdyZXk5MgBncmV5OTMAZ3JleTk0AGdyZXk5NQBncmV5OTYAZ3JleTk3AGdyZXk5OABncmV5OTkAaG9uZXlkZXcAaG9uZXlkZXcxAGhvbmV5ZGV3MgBob25leWRldzMAaG9uZXlkZXc0AGhvdHBpbmsAaG90cGluazEAaG90cGluazIAaG90cGluazMAaG90cGluazQAaW5kaWFucmVkAGluZGlhbnJlZDEAaW5kaWFucmVkMgBpbmRpYW5yZWQzAGluZGlhbnJlZDQAaW5kaWdvAGludmlzAGl2b3J5AGl2b3J5MQBpdm9yeTIAaXZvcnkzAGl2b3J5NABraGFraQBraGFraTEAa2hha2kyAGtoYWtpMwBraGFraTQAbGF2ZW5kZXIAbGF2ZW5kZXJibHVzaABsYXZlbmRlcmJsdXNoMQBsYXZlbmRlcmJsdXNoMgBsYXZlbmRlcmJsdXNoMwBsYXZlbmRlcmJsdXNoNABsYXduZ3JlZW4AbGVtb25jaGlmZm9uAGxlbW9uY2hpZmZvbjEAbGVtb25jaGlmZm9uMgBsZW1vbmNoaWZmb24zAGxlbW9uY2hpZmZvbjQAbGlnaHRibHVlAGxpZ2h0Ymx1ZTEAbGlnaHRibHVlMgBsaWdodGJsdWUzAGxpZ2h0Ymx1ZTQAbGlnaHRjb3JhbABsaWdodGN5YW4AbGlnaHRjeWFuMQBsaWdodGN5YW4yAGxpZ2h0Y3lhbjMAbGlnaHRjeWFuNABsaWdodGdvbGRlbnJvZABsaWdodGdvbGRlbnJvZDEAbGlnaHRnb2xkZW5yb2QyAGxpZ2h0Z29sZGVucm9kMwBsaWdodGdvbGRlbnJvZDQAbGlnaHRnb2xkZW5yb2R5ZWxsb3cAbGlnaHRncmF5AGxpZ2h0Z3JleQBsaWdodHBpbmsAbGlnaHRwaW5rMQBsaWdodHBpbmsyAGxpZ2h0cGluazMAbGlnaHRwaW5rNABsaWdodHNhbG1vbgBsaWdodHNhbG1vbjEAbGlnaHRzYWxtb24yAGxpZ2h0c2FsbW9uMwBsaWdodHNhbG1vbjQAbGlnaHRzZWFncmVlbgBsaWdodHNreWJsdWUAbGlnaHRza3libHVlMQBsaWdodHNreWJsdWUyAGxpZ2h0c2t5Ymx1ZTMAbGlnaHRza3libHVlNABsaWdodHNsYXRlYmx1ZQBsaWdodHNsYXRlZ3JheQBsaWdodHNsYXRlZ3JleQBsaWdodHN0ZWVsYmx1ZQBsaWdodHN0ZWVsYmx1ZTEAbGlnaHRzdGVlbGJsdWUyAGxpZ2h0c3RlZWxibHVlMwBsaWdodHN0ZWVsYmx1ZTQAbGlnaHR5ZWxsb3cAbGlnaHR5ZWxsb3cxAGxpZ2h0eWVsbG93MgBsaWdodHllbGxvdzMAbGlnaHR5ZWxsb3c0AGxpbWVncmVlbgBsaW5lbgBtYWdlbnRhAG1hZ2VudGExAG1hZ2VudGEyAG1hZ2VudGEzAG1hZ2VudGE0AG1hcm9vbgBtYXJvb24xAG1hcm9vbjIAbWFyb29uMwBtYXJvb240AG1lZGl1bWFxdWFtYXJpbmUAbWVkaXVtYmx1ZQBtZWRpdW1vcmNoaWQAbWVkaXVtb3JjaGlkMQBtZWRpdW1vcmNoaWQyAG1lZGl1bW9yY2hpZDMAbWVkaXVtb3JjaGlkNABtZWRpdW1wdXJwbGUAbWVkaXVtcHVycGxlMQBtZWRpdW1wdXJwbGUyAG1lZGl1bXB1cnBsZTMAbWVkaXVtcHVycGxlNABtZWRpdW1zZWFncmVlbgBtZWRpdW1zbGF0ZWJsdWUAbWVkaXVtc3ByaW5nZ3JlZW4AbWVkaXVtdHVycXVvaXNlAG1lZGl1bXZpb2xldHJlZABtaWRuaWdodGJsdWUAbWludGNyZWFtAG1pc3R5cm9zZQBtaXN0eXJvc2UxAG1pc3R5cm9zZTIAbWlzdHlyb3NlMwBtaXN0eXJvc2U0AG1vY2Nhc2luAG5hdmFqb3doaXRlAG5hdmFqb3doaXRlMQBuYXZham93aGl0ZTIAbmF2YWpvd2hpdGUzAG5hdmFqb3doaXRlNABuYXZ5AG5hdnlibHVlAG5vbmUAb2xkbGFjZQBvbGl2ZWRyYWIAb2xpdmVkcmFiMQBvbGl2ZWRyYWIyAG9saXZlZHJhYjMAb2xpdmVkcmFiNABvcmFuZ2UAb3JhbmdlMQBvcmFuZ2UyAG9yYW5nZTMAb3JhbmdlNABvcmFuZ2VyZWQAb3JhbmdlcmVkMQBvcmFuZ2VyZWQyAG9yYW5nZXJlZDMAb3JhbmdlcmVkNABvcmNoaWQAb3JjaGlkMQBvcmNoaWQyAG9yY2hpZDMAb3JjaGlkNABwYWxlZ29sZGVucm9kAHBhbGVncmVlbgBwYWxlZ3JlZW4xAHBhbGVncmVlbjIAcGFsZWdyZWVuMwBwYWxlZ3JlZW40AHBhbGV0dXJxdW9pc2UAcGFsZXR1cnF1b2lzZTEAcGFsZXR1cnF1b2lzZTIAcGFsZXR1cnF1b2lzZTMAcGFsZXR1cnF1b2lzZTQAcGFsZXZpb2xldHJlZABwYWxldmlvbGV0cmVkMQBwYWxldmlvbGV0cmVkMgBwYWxldmlvbGV0cmVkMwBwYWxldmlvbGV0cmVkNABwYXBheWF3aGlwAHBlYWNocHVmZgBwZWFjaHB1ZmYxAHBlYWNocHVmZjIAcGVhY2hwdWZmMwBwZWFjaHB1ZmY0AHBlcnUAcGluawBwaW5rMQBwaW5rMgBwaW5rMwBwaW5rNABwbHVtAHBsdW0xAHBsdW0yAHBsdW0zAHBsdW00AHBvd2RlcmJsdWUAcHVycGxlAHB1cnBsZTEAcHVycGxlMgBwdXJwbGUzAHB1cnBsZTQAcmVkAHJlZDEAcmVkMgByZWQzAHJlZDQAcm9zeWJyb3duAHJvc3licm93bjEAcm9zeWJyb3duMgByb3N5YnJvd24zAHJvc3licm93bjQAcm95YWxibHVlAHJveWFsYmx1ZTEAcm95YWxibHVlMgByb3lhbGJsdWUzAHJveWFsYmx1ZTQAc2FkZGxlYnJvd24Ac2FsbW9uAHNhbG1vbjEAc2FsbW9uMgBzYWxtb24zAHNhbG1vbjQAc2FuZHlicm93bgBzZWFncmVlbgBzZWFncmVlbjEAc2VhZ3JlZW4yAHNlYWdyZWVuMwBzZWFncmVlbjQAc2Vhc2hlbGwAc2Vhc2hlbGwxAHNlYXNoZWxsMgBzZWFzaGVsbDMAc2Vhc2hlbGw0AHNpZW5uYQBzaWVubmExAHNpZW5uYTIAc2llbm5hMwBzaWVubmE0AHNreWJsdWUAc2t5Ymx1ZTEAc2t5Ymx1ZTIAc2t5Ymx1ZTMAc2t5Ymx1ZTQAc2xhdGVibHVlAHNsYXRlYmx1ZTEAc2xhdGVibHVlMgBzbGF0ZWJsdWUzAHNsYXRlYmx1ZTQAc2xhdGVncmF5AHNsYXRlZ3JheTEAc2xhdGVncmF5MgBzbGF0ZWdyYXkzAHNsYXRlZ3JheTQAc2xhdGVncmV5AHNub3cAc25vdzEAc25vdzIAc25vdzMAc25vdzQAc3ByaW5nZ3JlZW4Ac3ByaW5nZ3JlZW4xAHNwcmluZ2dyZWVuMgBzcHJpbmdncmVlbjMAc3ByaW5nZ3JlZW40AHN0ZWVsYmx1ZQBzdGVlbGJsdWUxAHN0ZWVsYmx1ZTIAc3RlZWxibHVlMwBzdGVlbGJsdWU0AHRhbgB0YW4xAHRhbjIAdGFuMwB0YW40AHRoaXN0bGUAdGhpc3RsZTEAdGhpc3RsZTIAdGhpc3RsZTMAdGhpc3RsZTQAdG9tYXRvAHRvbWF0bzEAdG9tYXRvMgB0b21hdG8zAHRvbWF0bzQAdHVycXVvaXNlAHR1cnF1b2lzZTEAdHVycXVvaXNlMgB0dXJxdW9pc2UzAHR1cnF1b2lzZTQAdmlvbGV0AHZpb2xldHJlZAB2aW9sZXRyZWQxAHZpb2xldHJlZDIAdmlvbGV0cmVkMwB2aW9sZXRyZWQ0AHdoZWF0AHdoZWF0MQB3aGVhdDIAd2hlYXQzAHdoZWF0NAB3aGl0ZQB3aGl0ZXNtb2tlAHllbGxvdwB5ZWxsb3cxAHllbGxvdzIAeWVsbG93MwB5ZWxsb3c0AHllbGxvd2dyZWVuAGxhY2sAaGl0ZQBpZ2h0Z3JleQBYMTEvAC8lcy8lcwBpbWFnZXNjYWxlAGZhbHNlAGJsYWNrAGRvdHRlZABkYXNoZWQAY3AtPnNyYwBodG1sdGFibGUuYwBlbWl0X2h0bWxfaW1nAGNwLT5zcmNbMF0AdHJhbnNwYXJlbnQAXyVkACVkADIAMwA0ADUANgA3ADgAOQAxMAAxMQAxMgAxMwAxNAAxNQAxNgAxNwAxOAAxOQAyMABBZ25vZGVpbmZvX3QAQWdlZGdlaW5mb190AHJvd2cAY29sZwBBZ3JhcGhpbmZvX3QAZGVseCA+PSAwAHBvc19odG1sX3RibABkZWx5ID49IDAAdGFibGUgc2l6ZSB0b28gc21hbGwgZm9yIGNvbnRlbnQKAGZpeGVkIHRhYmxlIHNpemUgd2l0aCB1bnNwZWNpZmllZCB3aWR0aCBvciBoZWlnaHQKAGNlbGwgc2l6ZSB0b28gc21hbGwgZm9yIGNvbnRlbnQKAGZpeGVkIGNlbGwgc2l6ZSB3aXRoIHVuc3BlY2lmaWVkIHdpZHRoIG9yIGhlaWdodAoATm8gb3IgaW1wcm9wZXIgaW1hZ2UgZmlsZT0iJXMiCgBwZW5jb2xvcgAtPgBmUFEuYwBQUWNoZWNrAEhlYXAgb3ZlcmZsb3cKACUhUFMtQWRvYmUtMi4wCi9ub2RlIHsKICAvWSBleGNoIGRlZgogIC9YIGV4Y2ggZGVmCiAgL3kgZXhjaCBkZWYKICAveCBleGNoIGRlZgogIG5ld3BhdGgKICB4IHkgbW92ZXRvCiAgeCBZIGxpbmV0bwogIFggWSBsaW5ldG8KICBYIHkgbGluZXRvCiAgY2xvc2VwYXRoIGZpbGwKfSBkZWYKL2NlbGwgewogIC9ZIGV4Y2ggZGVmCiAgL1ggZXhjaCBkZWYKICAveSBleGNoIGRlZgogIC94IGV4Y2ggZGVmCiAgbmV3cGF0aAogIHggeSBtb3ZldG8KICB4IFkgbGluZXRvCiAgWCBZIGxpbmV0bwogIFggeSBsaW5ldG8KICBjbG9zZXBhdGggc3Ryb2tlCn0gZGVmCgBzaG93cGFnZQoAZmFpbGVkIGF0IG5vZGUgJWRbMF0KAG5wLT5jZWxsc1swXQBtYXplLmMAY2hrU2dyYXBoAGZhaWxlZCBhdCBub2RlICVkWzFdCgBucC0+Y2VsbHNbMV0AZGl0ZW1zAGZpbmRTVmVydAAlJSUlUGFnZTogMSAxCiUlJSVQYWdlQm91bmRpbmdCb3g6ICVkICVkICVkICVkCgAlZiAlZiB0cmFuc2xhdGUKADAgMCAxIHNldHJnYmNvbG9yCgAlZiAlZiAlZiAlZiBub2RlCgAwIDAgMCBzZXRyZ2Jjb2xvcgoAJWYgJWYgJWYgJWYgY2VsbAoAMSAwIDAgc2V0cmdiY29sb3IKAHVuZXhwZWN0ZWQgY2FzZSBpbiBsb2NhdGVfZW5kcG9pbnQKADAAdHJhcGV6b2lkLmMAbG9jYXRlX2VuZHBvaW50AGFkZF9zZWdtZW50OiBlcnJvcgoAbmV3bm9kZTogUXVlcnktdGFibGUgb3ZlcmZsb3cKAG5ld25vZGUAbmV3dHJhcDogVHJhcGV6b2lkLXRhYmxlIG92ZXJmbG93ICVkCgBuZXd0cmFwAGluZGV4LmMAUlRyZWVTZWFyY2gAbi0+bGV2ZWwgPj0gMABSVHJlZUluc2VydABsZXZlbCA+PSAwICYmIGxldmVsIDw9ICgqbiktPmxldmVsAHItPmJvdW5kYXJ5W2ldIDw9IHItPmJvdW5kYXJ5W05VTURJTVMgKyBpXQByICYmIG4gJiYgbmV3AFJUcmVlSW5zZXJ0MgBsZXZlbCA+PSAwICYmIGxldmVsIDw9IG4tPmxldmVsAEZBTFNFAG5vZGUuYwBOb2RlQ292ZXIAciAmJiBuAFBpY2tCcmFuY2gAQWRkQnJhbmNoAGkgPCBOT0RFQ0FSRABuZXcAbiAmJiBpID49IDAgJiYgaSA8IE5PREVDQVJEAERpc2NvbkJyYW5jaAByAHJlY3RhbmdsZS5jAFJlY3RBcmVhAHIgJiYgcnIAQ29tYmluZVJlY3QAciAmJiBzAE92ZXJsYXAAbgBzcGxpdC5xLmMAU3BsaXROb2RlAGIAbi0+Y291bnQgKyAoKm5uKS0+Y291bnQgPT0gTk9ERUNBUkQgKyAxAExvYWROb2RlcwBxAHAAcnRwLT5zcGxpdC5QYXJ0aXRpb25zWzBdLnBhcnRpdGlvbltpXSA9PSAwIHx8IHJ0cC0+c3BsaXQuUGFydGl0aW9uc1swXS5wYXJ0aXRpb25baV0gPT0gMQBydHAtPnNwbGl0LlBhcnRpdGlvbnNbMF0uY291bnRbMF0gKyBydHAtPnNwbGl0LlBhcnRpdGlvbnNbMF0uY291bnRbMV0gPT0gTk9ERUNBUkQgKyAxAE1ldGhvZFplcm8AcnRwLT5zcGxpdC5QYXJ0aXRpb25zWzBdLmNvdW50WzBdID49IHJ0cC0+TWluRmlsbCAmJiBydHAtPnNwbGl0LlBhcnRpdGlvbnNbMF0uY291bnRbMV0gPj0gcnRwLT5NaW5GaWxsACFydHAtPnNwbGl0LlBhcnRpdGlvbnNbMF0udGFrZW5baV0AQ2xhc3NpZnkAR2V0QnJhbmNoZXMAbi0+YnJhbmNoW2ldLmNoaWxkAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIBAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicoAgICAgICEAxZAQAfUAgDBxITFFcWFwgLaQwfCgUMDikRKw8tEC8wIDIGNDUbHB0eCwwhIiMkJSYnKAwYGRcEChscGiAqCiEiIyQlJicoDAoOUwosWDFYWFhYWFgMGxwPLlgzISIjJCUmJygbHP9T//8hIiMkJSYnKAz//wX///8JFP//////DBsc/xAVFiEiIyQlJicoGxz/////ISIjJCUmJygM/xITFBEWF////////wwbHP///xIhIiMkJSYnKBsc/////yEiIyQlJicoDP///////xP///////8MGxz/////ISIjJCUmJygbHP////8hIiMkJSYnKBITFBUWFxgZ////////////IyQlJicbEhMUFhciNmgBHzhWISACGxsbXhsbNzlwNtLCTwQ8IkciPyJEIiJYImUiIgUGX2A5BAcICQoLDA0OBGZnXWptBQZvWDtxBwgJCgsMDQ4Ecjxbcz5hRhsSExQWFwQFBj9BYkkHCAkKCwwNDgUGAFwAAAcICQoLDA0OBAAATwAAAFNCAAAAAAAEBQYARFRVBwgJCgsMDQ4FBgAAAAAHCAkKCwwNDgQAKiwuRzEzAAAAAAAABAUGAAAASgcICQoLDA0OBQYAAAAABwgJCgsMDQ4EAAAAAAAATAAAAAAAAAQFBgAAAAAHCAkKCwwNDgUGAAAAAAcICQoLDA0OKSstLzAyNDUAAAAAAAAAAAApKy0wMgAELwAkIwASFBYaHB4gGAAFBy8vLwAvLwAACQgoAAABIgIGAAAAAAAIAAAAAAAAAAAAAAAAACUDJhMKKRULKhcOLRkRGwwrHQ0sHw8hEAAzADAAL0MAMQAvADUuJ0IyQQA6OAA8NEUANgBAAAA/AEQ3Ozk9AAIDAwEBAgEBAQMDAwMDAwMDAQEBAQEBAQEBAQEBAQEBAQIBAQIABgEDAwMDAwEAAQIDAAQBAgMABAAEAAQAAwIBAgECAVN5bnRheCBlcnJvcjogbm9uLXNwYWNlIHN0cmluZyB1c2VkIGJlZm9yZSA8VEFCTEU+AFN5bnRheCBlcnJvcjogbm9uLXNwYWNlIHN0cmluZyB1c2VkIGFmdGVyIDwvVEFCTEU+AAApKioqKywsLS0tLS0tLS0tLS4vMDEyMzQ1Njc4OTo7PD0+Pj8/QUBCQkJCQkJDQ0REREZFR0dHSUhKSEtITEhNTU5OT0//Aw8QESM6JD0lQBVDJkUnSBhLGU0aKBxOHR5QUVJZWmxrbmNkV2ltZW1vcnkgZXhoYXVzdGVkACVzIGluIGxpbmUgJWQgCgAuLi4gJXMgLi4uCgBUQUJMRQBUUgBUSABURABIVE1MAEZPTlQAQgBVAE8ASQBTVVAAU1VCAFMAQlIASFIAVlIASU1HAFVua25vd24gSFRNTCBlbGVtZW50IDwlcz4gb24gbGluZSAlZCAKADxJTUc+AElsbGVnYWwgYXR0cmlidXRlICVzIGluICVzIC0gaWdub3JlZAoAc2NhbGUAc3JjADxCUj4AYWxpZ24ASUdIVABFRlQARU5URVIASWxsZWdhbCB2YWx1ZSAlcyBmb3IgQUxJR04gLSBpZ25vcmVkCgA8Rk9OVD4AY29sb3IAZmFjZQBwb2ludC1zaXplAFBPSU5ULVNJWkUASW1wcm9wZXIgJXMgdmFsdWUgJXMgLSBpZ25vcmVkACVzIHZhbHVlICVzID4gJWQgLSB0b28gbGFyZ2UgLSBpZ25vcmVkACVzIHZhbHVlICVzIDwgJWQgLSB0b28gc21hbGwgLSBpZ25vcmVkADxURD4AYmFsaWduAGJnY29sb3IAYm9yZGVyAGNlbGxwYWRkaW5nAGNlbGxzcGFjaW5nAGNvbHNwYW4AZml4ZWRzaXplAGdyYWRpZW50YW5nbGUAaGVpZ2h0AGhyZWYAaWQAcG9ydAByb3dzcGFuAHNpZGVzAHN0eWxlAHRhcmdldAB0aXRsZQB0b29sdGlwAHZhbGlnbgB3aWR0aABXSURUSABPVFRPTQBPUABJRERMRQBJbGxlZ2FsIHZhbHVlICVzIGZvciBWQUxJR04gLSBpZ25vcmVkCgAgLABPVU5ERUQAQURJQUwASWxsZWdhbCB2YWx1ZSAlcyBmb3IgU1RZTEUgLSBpZ25vcmVkCgBTT0xJRABJTlZJU0lCTEUASU5WSVMARE9UVEVEAERBU0hFRABVbnJlY29nbml6ZWQgY2hhcmFjdGVyICclYycgKCVkKSBpbiBzaWRlcyBhdHRyaWJ1dGUKAFJPV1NQQU4AUk9XU1BBTiB2YWx1ZSBjYW5ub3QgYmUgMCAtIGlnbm9yZWQKAEhFSUdIVABHUkFESUVOVEFOR0xFAFJVRQBBTFNFAElsbGVnYWwgdmFsdWUgJXMgZm9yIEZJWEVEU0laRSAtIGlnbm9yZWQKAENPTFNQQU4AQ09MU1BBTiB2YWx1ZSBjYW5ub3QgYmUgMCAtIGlnbm9yZWQKAENFTExTUEFDSU5HAENFTExQQURESU5HAEJPUkRFUgBJbGxlZ2FsIHZhbHVlICVzIGZvciBCQUxJR04gaW4gVEQgLSBpZ25vcmVkCgBFWFQASWxsZWdhbCB2YWx1ZSAlcyBmb3IgQUxJR04gaW4gVEQgLSBpZ25vcmVkCgA8VEFCTEU+AGNlbGxib3JkZXIAY29sdW1ucwByb3dzAFVua25vd24gdmFsdWUgJXMgZm9yIFJPV1MgLSBpZ25vcmVkCgBVbmtub3duIHZhbHVlICVzIGZvciBDT0xVTU5TIC0gaWdub3JlZAoAQ0VMTFNCT1JERVIAPEhUTUw+ADwvSFRNTD4ALS0ATGFiZWwgY2xvc2VkIGJlZm9yZSBlbmQgb2YgSFRNTCBlbGVtZW50CgBVbmNsb3NlZCBjb21tZW50CgBqID09IDAAY3Z0LmMAUG9ic3BhdGgAcm91dGUuYwBsaWJwYXRoLyVzOiVkOiAlcwoAc2hvcnRlc3QuYwBzb3VyY2UgcG9pbnQgbm90IGluIGFueSB0cmlhbmdsZQBkZXN0aW5hdGlvbiBwb2ludCBub3QgaW4gYW55IHRyaWFuZ2xlAGNhbm5vdCBmaW5kIHRyaWFuZ2xlIHBhdGgAY2Fubm90IG1hbGxvYyBvcHMAY2Fubm90IHJlYWxsb2Mgb3BzAHRyaWFuZ3VsYXRpb24gZmFpbGVkAGNhbm5vdCBtYWxsb2MgdHJpcwBjYW5ub3QgcmVhbGxvYyB0cmlzAGNhbm5vdCBtYWxsb2MgZHEucG5scwBjYW5ub3QgcmVhbGxvYyBkcS5wbmxzAGNhbm5vdCBtYWxsb2MgcG5scwBjYW5ub3QgbWFsbG9jIHBubHBzAGNhbm5vdCByZWFsbG9jIHBubHMAY2Fubm90IHJlYWxsb2MgcG5scHMAQ0RBVEEASUQASURSRUYASURSRUZTAEVOVElUWQBFTlRJVElFUwBOTVRPS0VOAE5NVE9LRU5TAE5PVEFUSU9OKAAoAHwAaHR0cDovL3d3dy53My5vcmcvWE1MLzE5OTgvbmFtZXNwYWNlAGh0dHA6Ly93d3cudzMub3JnLzIwMDAveG1sbnMvAHhtbD1odHRwOi8vd3d3LnczLm9yZy9YTUwvMTk5OC9uYW1lc3BhY2UAL2Rldi91cmFuZG9tAGZhbGxiYWNrKDQpAGdldHRpbWVvZmRheV9yZXMgPT0gMAB4bWxwYXJzZS5jAGdhdGhlcl90aW1lX2VudHJvcHkARVhQQVRfRU5UUk9QWV9ERUJVRwAxAEVudHJvcHk6ICVzIC0tPiAweCUwKmx4ICglbHUgYnl0ZXMpCgBpbnZhbGlkIGFyZ3VtZW50AHByZWZpeCBtdXN0IG5vdCBiZSBib3VuZCB0byBvbmUgb2YgdGhlIHJlc2VydmVkIG5hbWVzcGFjZSBuYW1lcwByZXNlcnZlZCBwcmVmaXggKHhtbG5zKSBtdXN0IG5vdCBiZSBkZWNsYXJlZCBvciB1bmRlY2xhcmVkAHJlc2VydmVkIHByZWZpeCAoeG1sKSBtdXN0IG5vdCBiZSB1bmRlY2xhcmVkIG9yIGJvdW5kIHRvIGFub3RoZXIgbmFtZXNwYWNlIG5hbWUAY2Fubm90IHN1c3BlbmQgaW4gZXh0ZXJuYWwgcGFyYW1ldGVyIGVudGl0eQBwYXJzaW5nIGZpbmlzaGVkAHBhcnNpbmcgYWJvcnRlZABwYXJzZXIgbm90IHN1c3BlbmRlZABwYXJzZXIgc3VzcGVuZGVkAGlsbGVnYWwgY2hhcmFjdGVyKHMpIGluIHB1YmxpYyBpZAB0ZXh0IGRlY2xhcmF0aW9uIG5vdCB3ZWxsLWZvcm1lZABYTUwgZGVjbGFyYXRpb24gbm90IHdlbGwtZm9ybWVkAGluY29tcGxldGUgbWFya3VwIGluIHBhcmFtZXRlciBlbnRpdHkAbXVzdCBub3QgdW5kZWNsYXJlIHByZWZpeAB1bmJvdW5kIHByZWZpeABjYW5ub3QgY2hhbmdlIHNldHRpbmcgb25jZSBwYXJzaW5nIGhhcyBiZWd1bgByZXF1ZXN0ZWQgZmVhdHVyZSByZXF1aXJlcyBYTUxfRFREIHN1cHBvcnQgaW4gRXhwYXQAZW50aXR5IGRlY2xhcmVkIGluIHBhcmFtZXRlciBlbnRpdHkAdW5leHBlY3RlZCBwYXJzZXIgc3RhdGUgLSBwbGVhc2Ugc2VuZCBhIGJ1ZyByZXBvcnQAZG9jdW1lbnQgaXMgbm90IHN0YW5kYWxvbmUAZXJyb3IgaW4gcHJvY2Vzc2luZyBleHRlcm5hbCBlbnRpdHkgcmVmZXJlbmNlAHVuY2xvc2VkIENEQVRBIHNlY3Rpb24AZW5jb2Rpbmcgc3BlY2lmaWVkIGluIFhNTCBkZWNsYXJhdGlvbiBpcyBpbmNvcnJlY3QAdW5rbm93biBlbmNvZGluZwBYTUwgb3IgdGV4dCBkZWNsYXJhdGlvbiBub3QgYXQgc3RhcnQgb2YgZW50aXR5AHJlZmVyZW5jZSB0byBleHRlcm5hbCBlbnRpdHkgaW4gYXR0cmlidXRlAHJlZmVyZW5jZSB0byBiaW5hcnkgZW50aXR5AHJlZmVyZW5jZSB0byBpbnZhbGlkIGNoYXJhY3RlciBudW1iZXIAYXN5bmNocm9ub3VzIGVudGl0eQByZWN1cnNpdmUgZW50aXR5IHJlZmVyZW5jZQB1bmRlZmluZWQgZW50aXR5AGlsbGVnYWwgcGFyYW1ldGVyIGVudGl0eSByZWZlcmVuY2UAanVuayBhZnRlciBkb2N1bWVudCBlbGVtZW50AGR1cGxpY2F0ZSBhdHRyaWJ1dGUAbWlzbWF0Y2hlZCB0YWcAcGFydGlhbCBjaGFyYWN0ZXIAdW5jbG9zZWQgdG9rZW4Abm90IHdlbGwtZm9ybWVkIChpbnZhbGlkIHRva2VuKQBubyBlbGVtZW50IGZvdW5kAHN5bnRheCBlcnJvcgBvdXQgb2YgbWVtb3J5AAIDBAUGBwgAAAkKCwwNDg8QEQAAAAAAAAAAAAAAABITABQAAAAAAAAAAAAAAAAAABUWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBARcAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZAxobHB0eAAAfICEiIyQlEBEAAAAAAAAAAAAAAAASEyYUAAAAAAAAAAAAAAAAAAAnFgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEXAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBARgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQ0RBVEFbVVMtQVNDSUkAVVRGLTE2AFVURi0xNkJFAFVURi0xNkxFAHZlcnNpb24AZW5jb2RpbmcAc3RhbmRhbG9uZQBET0NUWVBFAFNZU1RFTQBQVUJMSUMARU5USVRZAEFUVExJU1QARUxFTUVOVABOT1RBVElPTgBJTkNMVURFAElHTk9SRQBFTVBUWQBBTlkAUENEQVRBAElNUExJRUQAUkVRVUlSRUQARklYRUQAQ0RBVEEASUQASURSRUYASURSRUZTAEVOVElUSUVTAE5NVE9LRU4ATk1UT0tFTlMATkRBVEEAVCEiGQ0BAgMRSxwMEAQLHRIeJ2hub3BxYiAFBg8TFBUaCBYHKCQXGAkKDhsfJSODgn0mKis8PT4/Q0dKTVhZWltcXV5fYGFjZGVmZ2lqa2xyc3R5ent8AElsbGVnYWwgYnl0ZSBzZXF1ZW5jZQBEb21haW4gZXJyb3IAUmVzdWx0IG5vdCByZXByZXNlbnRhYmxlAE5vdCBhIHR0eQBQZXJtaXNzaW9uIGRlbmllZABPcGVyYXRpb24gbm90IHBlcm1pdHRlZABObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AE5vIHN1Y2ggcHJvY2VzcwBGaWxlIGV4aXN0cwBWYWx1ZSB0b28gbGFyZ2UgZm9yIGRhdGEgdHlwZQBObyBzcGFjZSBsZWZ0IG9uIGRldmljZQBPdXQgb2YgbWVtb3J5AFJlc291cmNlIGJ1c3kASW50ZXJydXB0ZWQgc3lzdGVtIGNhbGwAUmVzb3VyY2UgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAAASEBMUFRYXGBkaGxwdHh8gIRAQIiMQJCUmJygpKisQLC0uES8wERExERERMjM0NTY3ODkREBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDoQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDsQPD0+P0BBEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEEIQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEEMQEEQQRUZHEEgQSRAQEBBKS0xNEBBOEE9QEBAQEFEQEBAQEBAQEBAQEBAQUhAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQUxAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEFRVVlcQEFhZEBAQEBAQEBAQEBAQEBAQEBAQEBAQEFoQW1xdXl9gYWIQEBAQEBAQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//////////////////////////////////////////8AAAAA/v8A/AEAAPgBAAB4AAAAAP/73/sAAIAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwA/P/gr//////////////f//////8gQLAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAA/AMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/AAAAAAAhv7///8AQEkAAAAAABgA3/8AyAAAAAAAAAABADwAAAAAAAAAAAAAAAAQ4AEeAGD/vwAAAAAAAP8HAAAAAAAAAAAAAAAAAAAAAAAAAPjPAwAAAAMAIP9/AAAATgAAAAAAAAAAAAAAAAAAAAAA/AAAAAAAAAAAABAAIB4AMAABAAAAAAAAAAAQACAAAAAA/A8AAAAAAAAAEAAgAAAAAAAAAAAAAAAAABAAIAAAAAADAAAAAAAAAAAQACAAAAAA/QAAAAAAAAAAAAAgAAAAAP8HAAAAAAAAAAAAIAAAAAAA/wAAAAAAAAAQACAAAAAAAAAAAAAAAAAAAAAgAAAAAD8CAAAAAAAAAAAABAAAAAAQAAAAAAAAgACAwN8ADAAAAAAAAAAAAAAAAAAfAAAAAAAA/v///wD8//8AAAAAAAAAAPwAAAAAAADA/9//BwAAAAAAAAAAAACABgD8AAAYPgAAgL8AzAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAYP///x8AAP8DAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAQAAGAAAAAAAAAAAADgAAAAAEAAAAHAAAAAAAAAAAAAAAAAAAAAwAAD+fy8AAP8D/38AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADjEAAAAAAAAAAAAAAAAAAAAAAADE/////wAAAMAAAAAAAAAAAAEA4J8AAAAAfz8AAAAAAAAAAAAAAAAAAAAAEAAQAAD8////HwAAAAAADAAAAAAAAEAADPAAAAAAAADA+AAAAAAAAADAAAAAAAAAAAD/AP///yEQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP////9/AADwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgA+AA4ADgAGCA+P////z//////38f/PF//38AAP///wMAAP////8BAHsD0MGvQgAMH7z//wAAAAAAAv//////////////////////////////////////////////////////////DwD/////fwAAAP8HAAD/////////////PwAAAAAAAPz///7/////////////////////////////////////////////////////H/8DAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4IcD/gAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAAA//////9//w8AAAAAAAAAAP////v/////////////DwD//////////////////////////////////z8AAAD/Dx7///8B/MHgAAAAAAAAAAAAAAAeAQAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAA//8AAAAA/////w8AAAD///9/////////////////////////////////////fwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//////////AAAAAAAAAAAAAAAAAAAAAAAA////////fwAAAAAAAMAA4AAAAAAAAAAAAAAAgA9wAAAAAAAAAAAAAAAAAAD/AP//fwADAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAARAgAAAAP/wMAAAAAAADwAAAAAAAAAAAAEMAAAP//AwcAAAAAAPgAAAAACIAAAAAAAAAAAAAACAD/PwDAAAAAAAAAAAAAAAAAAAAA8AAAgAsAAAAAAAAAgAIAAMAAAEMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAACAAAAAAAAAAAAAAAAAAAAAPz/AwAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMP///wN/AP/////3/38PAAAAAAAAAAAAAAAAAAAAAACA/v8A/AEAAPgBAAD4PwAAAAAAAAAAAAAAAAAAAH9/ADCH//////+P/wAAAAAAAOD//wf/DwAAAAAAAP//////PwAAAAAPAAAAAAAAAAAAAAAAAACAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAID/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAMCPAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH/wD/AQAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP4AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///9/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwD/8/z8AAAADAAAAAAAA/gMAAAAAAAAAAAAAAAAAGAAPAAAAAAAAAAAAAAAAAAAA4QEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACABwAAAAAAAAAAAAAAAAD///////////////////////////////////////8/AP////9//v///////////////////////////z8AAAAA//////////8/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/////////////fwD//wMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAgAAAAIAAAgAAAAIAAAgAAAAIAAAAACAAAAAgAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAP//////D////////////////w8A/3/+f/7//v8AAAAA/wf///9//////////w///////wcAAAAAAAAAAMD///8HAP//////B/8BAwAAAAAAAAAAAAAAAAAAAAAAAAAAAP////8BAL///////////x///w8A/////98HAAD//wEA/////////3/9/////////////////////////////x7/////////Pw8A////AAAAAAAAAAAAAAAAAAAAAAAA+P//////////4f8AAAAAAAD//////////z8AAAAAAAAA//////////////////8PAAAAAAAAAAAAAAAAAAAAAAD/////////////////////////////////////////////////////////////////AAECAwQFBgcICf////////8KCwwNDg8QERITFBUWFxgZGhscHR4fICEiI////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wABAgQHAwYFABIRExQVFhcYGRobHB0eHyAhESIjJBElJicoKSorLBEtLi8QEDAQEBAQEBAQMTIzEDQ1EBARERERERERERERERERERERERERERERERERNhERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERETcREREROBE5Ojs8PT4RERERERERERERERERERERERERERERERERERERERERERERERERERERERERPxAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBFAQRFCQ0RFRkdISRAQEEpLTE1OEBAQT1AQEBAQURAQEBAQEBAQEBEREVJTEBAQEBAQEBAQEBARERERVBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBERVRAQEBBWEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEFcQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEFhZWlsQEBAQEBAQEBAQEBAQEBAQEBAQEBAQXBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//////////////////////////////////////////wAAAAAAAAAA/v//B/7//wcAAAAAAAQgBP//f////3//////////////////////////////////w/8DAB9QAAAAAAAAAAAAACAAAAAAAN88QNf///v///////////+///////////////////////8D/P////////////////////////8A/v///38C/v////8AAAAAAP+/tgD///8HBwAAAP8H//////////7/w////////////////+8f/uH/nwAA////////AOD///////////////8DAP//////BzAE/////P8fAAD///8BAAAAAAAAAAD9HwAAAAAAAPAD/3//////////7//f4f/P//7+7p/5///9xeOfWYCwz/8DAO6H+f///W3DhxkCXsD/PwDuv/v///3t478bAQDP/wAA7p/5///97eOfGcCwz/8CAOzHPdYYx//Dxx2BAMD/AADu3/3///3v498dYAPP/wAA7N/9///97+PfHWBAz/8GAOzf/f/////n312AAM//APzs/3/8///7L3+AX/8AAAwA/v////9//wc/IP8DAAAAAJYl8P6u7P87XyD/8wAAAAABAAAA/wMAAP/+////H/7/A////v///x8AAAAAAAAAAP///////3/5/wP//+fB//9/QP8z/////78g///////3////////////PX89//////89/////z1/Pf9//////////z3//////////4cAAAAA//8AAP////////////8fAP7//////////////////////////////////////////////////////////5////7//wf////////////HAQD/3w8A//8PAP//DwD/3w0A////////z///AYAQ/wMAAAAA/wP//////////////wD//////wf//////////z8A////H/8P/wHA/////z8fAP//////D////wP/AwAAAAD///8P/////////3/+/x8A/wP/A4AAAAAAAAAAAAAAAP///////+//7w//AwAAAAD///////P///////+//wMA////////PwD/4///////PwAAAAAAAAAAAAAAAADebwD///////////////////////////////8AAAAAAAAAAP//Pz//////Pz//qv///z/////////fX9wfzw//H9wfAAAAAAAAAAAAAAAAAAACgAAA/x8AAAAAAAAAAAAAAACE/C8+UL3/8+BDAAD//////wEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADA////////AwAA//////9///////9//////////////////////x94DAD/////vyD/////////gAAA//9/AH9/f39/f39//////wAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAP4DPh/+////////////f+D+//////////////fg/////z/+/////////////38AAP///wcAAAAAAAD///////////////////////////////8/AAAAAAAAAAAA/////////////////////////////////x8AAAAAAAD//////////////////////x8AAAAAAAAAAP//////P/8f////DwAA//////9/8I////+A/////////////wAAAACA//z///////////////95DwD/BwAAAAAAAAAAAP+79////wAAAP///////w8A//////////8PAP8DAAD8CP//////B/////8HAP///x/////////3/wCA/wMAAAAA////////fwD/P/8D//9/BP////////9/BQAAOP//PAB+fn4Af38AAAAAAAAAAAAAAAAAAAAAAAD//////wf/A///////////////////////////DwD//3/4//////8P/////////////////z//////////////////AwAAAAB/APjg//1/X9v/////////////////AwAAAPj///////////////8/AAD///////////z///////8AAAAAAP8PAAAAAAAAAAAAAAAAAADf/////////////////////x8AAP8D/v//B/7//wfA/////////////3/8/PwcAAAAAP/v//9///+3/z//PwAAAAD///////////////////8HAAAAAAAAAAD///////8fAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////H////////wEAAAAAAP///38AAP///wcAAAAAAAD///8//////w//PgAAAAAA/////////////////////////z//AwAAAAAAAAAAAAA//f////+/kf//PwAAAAAAAAAAAAAAAAAAAAAAAAAAAP//PwD///8DAAAAAAAAAAD/////////wAAAAAAAAAAAb/Dv/v//DwAAAAAA////HwAAAAAAAAAAAAAAAAAAAAD///////8/AP//PwD//wcAAAAAAAAAAAAAAAAAAAAAAP///////////wEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//////////8/AAAAwP8AAPz///////8BAAD///8B/wP////////H/wAAAAAAAAAA//////////8eAP8DAAAAAAAAAAAAAAAAAAAAAAAAAAD///////8/AP8DAAAAAAAA/////////////////38AAAAAAAAAAAAAAAAAAAAAAAD///////////////8HAAAAAAAAAAAAAAAAAAAAAAAAAP//////fwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/////////wEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//////////x8A//////9/AAD4/wAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/////////////9///////////99k3v/r7/////////+/59/f////e1/8/f//////////////////////////////////////////////////////P/////3///f////3///f////3///f////3/////9/////f//98/////////v////lv73CoTqlqqW9/de//v/D+77/w8AAAAAAAAAAExDX0FMTABMQ19DVFlQRQAAAABMQ19OVU1FUklDAABMQ19USU1FAAAAAABMQ19DT0xMQVRFAABMQ19NT05FVEFSWQBMQ19NRVNTQUdFUwBMQU5HAEMuVVRGLTgAUE9TSVgATVVTTF9MT0NQQVRIABEACgAREREAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAEQAPChEREQMKBwABEwkLCwAACQYLAAALAAYRAAAAERERAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAABEACgoREREACgAAAgAJCwAAAAkACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAADQAAAAQNAAAAAAkOAAAAAAAOAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA8AAAAADwAAAAAJEAAAAAAAEAAAEAAAEgAAABISEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASAAAAEhISAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAAAAACgAAAAAKAAAAAAkLAAAAAAALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBOQU4AMDEyMzQ1Njc4OUFCQ0RFRi4AYWxudW0AYWxwaGEAYmxhbmsAY250cmwAZGlnaXQAZ3JhcGgAbG93ZXIAcHJpbnQAcHVuY3QAc3BhY2UAdXBwZXIAeGRpZ2l0AEMuVVRGLTgAAAAAAAAAAABDAC9wcm9jL3NlbGYvZmQvAHJ3YQBpbmZpbml0eQBuYW4ACQAKAA0ADAAHABsAW1s6YWxudW06XV9dAFteWzphbG51bTpdX10AW1s6c3BhY2U6XV0AW15bOnNwYWNlOl1dAFtbOmRpZ2l0Ol1dAFteWzpkaWdpdDpdXQAvdG1wL3RtcGZpbGVfWFhYWFhYAHcr";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function _emscripten_get_now(){abort()}function _emscripten_get_now_is_monotonic(){return ENVIRONMENT_IS_NODE||typeof dateNow!=="undefined"||(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&self["performance"]&&self["performance"]["now"]}var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}function _clock_gettime(clk_id,tp){var now;if(clk_id===0){now=Date.now()}else if(clk_id===1&&_emscripten_get_now_is_monotonic()){now=_emscripten_get_now()}else{___setErrNo(ERRNO_CODES.EINVAL);return-1}HEAP32[tp>>2]=now/1e3|0;HEAP32[tp+4>>2]=now%1e3*1e3*1e3|0;return 0}function ___clock_gettime(){return _clock_gettime.apply(null,arguments)}function ___lock(){}function ___map_file(pathname,size){___setErrNo(ERRNO_CODES.EPERM);return-1}var ERRNO_MESSAGES={0:"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"};var PATH={splitPath:(function(filename){var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)}),normalizeArray:(function(parts,allowAboveRoot){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts}),normalize:(function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path}),dirname:(function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir}),basename:(function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)}),extname:(function(path){return PATH.splitPath(path)[3]}),join:(function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))}),join2:(function(l,r){return PATH.normalize(l+"/"+r)}),resolve:(function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter((function(p){return!!p})),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start<arr.length;start++){if(arr[start]!=="")break}var end=arr.length-1;for(;end>=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i<length;i++){if(fromParts[i]!==toParts[i]){samePartsLength=i;break}}var outputParts=[];for(var i=samePartsLength;i<fromParts.length;i++){outputParts.push("..")}outputParts=outputParts.concat(toParts.slice(samePartsLength));return outputParts.join("/")})};var TTY={ttys:[],init:(function(){}),shutdown:(function(){}),register:(function(dev,ops){TTY.ttys[dev]={input:[],output:[],ops:ops};FS.registerDevice(dev,TTY.stream_ops)}),stream_ops:{open:(function(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}stream.tty=tty;stream.seekable=false}),close:(function(stream){stream.tty.ops.flush(stream.tty)}),flush:(function(stream){stream.tty.ops.flush(stream.tty)}),read:(function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(ERRNO_CODES.ENXIO)}var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=stream.tty.ops.get_char(stream.tty)}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}if(result===undefined&&bytesRead===0){throw new FS.ErrnoError(ERRNO_CODES.EAGAIN)}if(result===null||result===undefined)break;bytesRead++;buffer[offset+i]=result}if(bytesRead){stream.node.timestamp=Date.now()}return bytesRead}),write:(function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.put_char){throw new FS.ErrnoError(ERRNO_CODES.ENXIO)}for(var i=0;i<length;i++){try{stream.tty.ops.put_char(stream.tty,buffer[offset+i])}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}}if(length){stream.node.timestamp=Date.now()}return i})},default_tty_ops:{get_char:(function(tty){if(!tty.input.length){var result=null;if(ENVIRONMENT_IS_NODE){var BUFSIZE=256;var buf=new Buffer(BUFSIZE);var bytesRead=0;var isPosixPlatform=process.platform!="win32";var fd=process.stdin.fd;if(isPosixPlatform){var usingDevice=false;try{fd=fs.openSync("/dev/stdin","r");usingDevice=true}catch(e){}}try{bytesRead=fs.readSync(fd,buf,0,BUFSIZE,null)}catch(e){if(e.toString().indexOf("EOF")!=-1)bytesRead=0;else throw e}if(usingDevice){fs.closeSync(fd)}if(bytesRead>0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,"/",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;i<node.usedBytes;++i)arr.push(node.contents[i]);return arr}return node.contents}),getFileDataAsTypedArray:(function(node){if(!node.contents)return new Uint8Array;if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)}),expandFileStorage:(function(node,newCapacity){if(node.contents&&node.contents.subarray&&newCapacity>node.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity<CAPACITY_DOUBLING_MAX?2:1.125)|0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}if(!node.contents&&newCapacity>0)node.contents=[];while(node.contents.length<newCapacity)node.contents.push(0)}),resizeFileStorage:(function(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0;return}if(!node.contents||node.contents.subarray){var oldContents=node.contents;node.contents=new Uint8Array(new ArrayBuffer(newSize));if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize;return}if(!node.contents)node.contents=[];if(node.contents.length>newSize)node.contents.length=newSize;else while(node.contents.length<newSize)node.contents.push(0);node.usedBytes=newSize}),node_ops:{getattr:(function(node){var attr={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.timestamp);attr.mtime=new Date(node.timestamp);attr.ctime=new Date(node.timestamp);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}}),lookup:(function(parent,name){throw FS.genericErrors[ERRNO_CODES.ENOENT]}),mknod:(function(parent,name,mode,dev){return MEMFS.createNode(parent,name,mode,dev)}),rename:(function(old_node,new_dir,new_name){if(FS.isDir(old_node.mode)){var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(new_node){for(var i in new_node.contents){throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}}}delete old_node.parent.contents[old_node.name];old_node.name=new_name;new_dir.contents[new_name]=old_node;old_node.parent=new_dir}),unlink:(function(parent,name){delete parent.contents[name]}),rmdir:(function(parent,name){var node=FS.lookupNode(parent,name);for(var i in node.contents){throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}delete parent.contents[name]}),readdir:(function(node){var entries=[".",".."];for(var key in node.contents){if(!node.contents.hasOwnProperty(key)){continue}entries.push(key)}return entries}),symlink:(function(parent,newname,oldpath){var node=MEMFS.createNode(parent,newname,511|40960,0);node.link=oldpath;return node}),readlink:(function(node){if(!FS.isLink(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return node.link})},stream_ops:{read:(function(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);assert(size>=0);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i<size;i++)buffer[offset+i]=contents[position+i]}return size}),write:(function(stream,buffer,offset,length,position,canOwn){if(!length)return 0;var node=stream.node;node.timestamp=Date.now();if(buffer.subarray&&(!node.contents||node.contents.subarray)){if(canOwn){node.contents=buffer.subarray(offset,offset+length);node.usedBytes=length;return length}else if(node.usedBytes===0&&position===0){node.contents=new Uint8Array(buffer.subarray(offset,offset+length));node.usedBytes=length;return length}else if(position+length<=node.usedBytes){node.contents.set(buffer.subarray(offset,offset+length),position);return length}}MEMFS.expandFileStorage(node,position+length);if(node.contents.subarray&&buffer.subarray)node.contents.set(buffer.subarray(offset,offset+length),position);else{for(var i=0;i<length;i++){node.contents[position+i]=buffer[offset+i]}}node.usedBytes=Math.max(node.usedBytes,position+length);return length}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.usedBytes}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position}),allocate:(function(stream,offset,length){MEMFS.expandFileStorage(stream.node,offset+length);stream.node.usedBytes=Math.max(stream.node.usedBytes,offset+length)}),mmap:(function(stream,buffer,offset,length,position,prot,flags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}var ptr;var allocated;var contents=stream.node.contents;if(!(flags&2)&&(contents.buffer===buffer||contents.buffer===buffer.buffer)){allocated=false;ptr=contents.byteOffset}else{if(position>0||position+length<stream.node.usedBytes){if(contents.subarray){contents=contents.subarray(position,position+length)}else{contents=Array.prototype.slice.call(contents,position,position+length)}}allocated=true;ptr=_malloc(length);if(!ptr){throw new FS.ErrnoError(ERRNO_CODES.ENOMEM)}buffer.set(contents,ptr)}return{ptr:ptr,allocated:allocated}}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}if(mmapFlags&2){return 0}var bytesWritten=MEMFS.stream_ops.write(stream,buffer,0,length,offset,false);return 0})}};var IDBFS={dbs:{},indexedDB:(function(){if(typeof indexedDB!=="undefined")return indexedDB;var ret=null;if(typeof window==="object")ret=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB;assert(ret,"IDBFS used, but indexedDB not supported");return ret}),DB_VERSION:21,DB_STORE_NAME:"FILE_DATA",mount:(function(mount){return MEMFS.mount.apply(null,arguments)}),syncfs:(function(mount,populate,callback){IDBFS.getLocalSet(mount,(function(err,local){if(err)return callback(err);IDBFS.getRemoteSet(mount,(function(err,remote){if(err)return callback(err);var src=populate?remote:local;var dst=populate?local:remote;IDBFS.reconcile(src,dst,callback)}))}))}),getDB:(function(name,callback){var db=IDBFS.dbs[name];if(db){return callback(null,db)}var req;try{req=IDBFS.indexedDB().open(name,IDBFS.DB_VERSION)}catch(e){return callback(e)}if(!req){return callback("Unable to connect to IndexedDB")}req.onupgradeneeded=(function(e){var db=e.target.result;var transaction=e.target.transaction;var fileStore;if(db.objectStoreNames.contains(IDBFS.DB_STORE_NAME)){fileStore=transaction.objectStore(IDBFS.DB_STORE_NAME)}else{fileStore=db.createObjectStore(IDBFS.DB_STORE_NAME)}if(!fileStore.indexNames.contains("timestamp")){fileStore.createIndex("timestamp","timestamp",{unique:false})}});req.onsuccess=(function(){db=req.result;IDBFS.dbs[name]=db;callback(null,db)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),getLocalSet:(function(mount,callback){var entries={};function isRealDir(p){return p!=="."&&p!==".."}function toAbsolute(root){return(function(p){return PATH.join2(root,p)})}var check=FS.readdir(mount.mountpoint).filter(isRealDir).map(toAbsolute(mount.mountpoint));while(check.length){var path=check.pop();var stat;try{stat=FS.stat(path)}catch(e){return callback(e)}if(FS.isDir(stat.mode)){check.push.apply(check,FS.readdir(path).filter(isRealDir).map(toAbsolute(path)))}entries[path]={timestamp:stat.mtime}}return callback(null,{type:"local",entries:entries})}),getRemoteSet:(function(mount,callback){var entries={};IDBFS.getDB(mount.mountpoint,(function(err,db){if(err)return callback(err);try{var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readonly");transaction.onerror=(function(e){callback(this.error);e.preventDefault()});var store=transaction.objectStore(IDBFS.DB_STORE_NAME);var index=store.index("timestamp");index.openKeyCursor().onsuccess=(function(event){var cursor=event.target.result;if(!cursor){return callback(null,{type:"remote",db:db,entries:entries})}entries[cursor.primaryKey]={timestamp:cursor.key};cursor.continue()})}catch(e){return callback(e)}}))}),loadLocalEntry:(function(path,callback){var stat,node;try{var lookup=FS.lookupPath(path);node=lookup.node;stat=FS.stat(path)}catch(e){return callback(e)}if(FS.isDir(stat.mode)){return callback(null,{timestamp:stat.mtime,mode:stat.mode})}else if(FS.isFile(stat.mode)){node.contents=MEMFS.getFileDataAsTypedArray(node);return callback(null,{timestamp:stat.mtime,mode:stat.mode,contents:node.contents})}else{return callback(new Error("node type not supported"))}}),storeLocalEntry:(function(path,entry,callback){try{if(FS.isDir(entry.mode)){FS.mkdir(path,entry.mode)}else if(FS.isFile(entry.mode)){FS.writeFile(path,entry.contents,{canOwn:true})}else{return callback(new Error("node type not supported"))}FS.chmod(path,entry.mode);FS.utime(path,entry.timestamp,entry.timestamp)}catch(e){return callback(e)}callback(null)}),removeLocalEntry:(function(path,callback){try{var lookup=FS.lookupPath(path);var stat=FS.stat(path);if(FS.isDir(stat.mode)){FS.rmdir(path)}else if(FS.isFile(stat.mode)){FS.unlink(path)}}catch(e){return callback(e)}callback(null)}),loadRemoteEntry:(function(store,path,callback){var req=store.get(path);req.onsuccess=(function(event){callback(null,event.target.result)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),storeRemoteEntry:(function(store,path,entry,callback){var req=store.put(entry,path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),removeRemoteEntry:(function(store,path,callback){var req=store.delete(path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),reconcile:(function(src,dst,callback){var total=0;var create=[];Object.keys(src.entries).forEach((function(key){var e=src.entries[key];var e2=dst.entries[key];if(!e2||e.timestamp>e2.timestamp){create.push(key);total++}}));var remove=[];Object.keys(dst.entries).forEach((function(key){var e=dst.entries[key];var e2=src.entries[key];if(!e2){remove.push(key);total++}}));if(!total){return callback(null)}var completed=0;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err){if(!done.errored){done.errored=true;return callback(err)}return}if(++completed>=total){return callback(null)}}transaction.onerror=(function(e){done(this.error);e.preventDefault()});create.sort().forEach((function(path){if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,(function(err,entry){if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)}))}else{IDBFS.loadLocalEntry(path,(function(err,entry){if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)}))}}));remove.sort().reverse().forEach((function(path){if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}}))})};var NODEFS={isWindows:false,staticInit:(function(){NODEFS.isWindows=!!process.platform.match(/^win/);var flags=process["binding"]("constants");if(flags["fs"]){flags=flags["fs"]}NODEFS.flagsForNodeMap={"1024":flags["O_APPEND"],"64":flags["O_CREAT"],"128":flags["O_EXCL"],"0":flags["O_RDONLY"],"2":flags["O_RDWR"],"4096":flags["O_SYNC"],"512":flags["O_TRUNC"],"1":flags["O_WRONLY"]}}),bufferFrom:(function(arrayBuffer){return Buffer.alloc?Buffer.from(arrayBuffer):new Buffer(arrayBuffer)}),mount:(function(mount){assert(ENVIRONMENT_IS_NODE);return NODEFS.createNode(null,"/",NODEFS.getMode(mount.opts.root),0)}),createNode:(function(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node}),getMode:(function(path){var stat;try{stat=fs.lstatSync(path);if(NODEFS.isWindows){stat.mode=stat.mode|(stat.mode&292)>>2}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return stat.mode}),realPath:(function(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join.apply(null,parts)}),flagsForNode:(function(flags){flags&=~2097152;flags&=~2048;flags&=~32768;flags&=~524288;var newFlags=0;for(var k in NODEFS.flagsForNodeMap){if(flags&k){newFlags|=NODEFS.flagsForNodeMap[k];flags^=k}}if(!flags){return newFlags}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.flagsForNode(stream.flags))}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),close:(function(stream){try{if(FS.isFile(stream.node.mode)&&stream.nfd){fs.closeSync(stream.nfd)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),read:(function(stream,buffer,offset,length,position){if(length===0)return 0;try{return fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),write:(function(stream,buffer,offset,length,position){try{return fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:(function(mount){assert(ENVIRONMENT_IS_WORKER);if(!WORKERFS.reader)WORKERFS.reader=new FileReaderSync;var root=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0);var createdParents={};function ensureParent(path){var parts=path.split("/");var parent=root;for(var i=0;i<parts.length-1;i++){var curr=parts.slice(0,i+1).join("/");if(!createdParents[curr]){createdParents[curr]=WORKERFS.createNode(parent,parts[i],WORKERFS.DIR_MODE,0)}parent=createdParents[curr]}return parent}function base(path){var parts=path.split("/");return parts[parts.length-1]}Array.prototype.forEach.call(mount.opts["files"]||[],(function(file){WORKERFS.createNode(ensureParent(file.name),base(file.name),WORKERFS.FILE_MODE,0,file,file.lastModifiedDate)}));(mount.opts["blobs"]||[]).forEach((function(obj){WORKERFS.createNode(ensureParent(obj["name"]),base(obj["name"]),WORKERFS.FILE_MODE,0,obj["data"])}));(mount.opts["packages"]||[]).forEach((function(pack){pack["metadata"].files.forEach((function(file){var name=file.filename.substr(1);WORKERFS.createNode(ensureParent(name),base(name),WORKERFS.FILE_MODE,0,pack["blob"].slice(file.start,file.end))}))}));return root}),createNode:(function(parent,name,mode,dev,contents,mtime){var node=FS.createNode(parent,name,mode);node.mode=mode;node.node_ops=WORKERFS.node_ops;node.stream_ops=WORKERFS.stream_ops;node.timestamp=(mtime||new Date).getTime();assert(WORKERFS.FILE_MODE!==WORKERFS.DIR_MODE);if(mode===WORKERFS.FILE_MODE){node.size=contents.size;node.contents=contents}else{node.size=4096;node.contents={}}if(parent){parent.contents[name]=node}return node}),node_ops:{getattr:(function(node){return{dev:1,ino:undefined,mode:node.mode,nlink:1,uid:0,gid:0,rdev:undefined,size:node.size,atime:new Date(node.timestamp),mtime:new Date(node.timestamp),ctime:new Date(node.timestamp),blksize:4096,blocks:Math.ceil(node.size/4096)}}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}}),lookup:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}),mknod:(function(parent,name,mode,dev){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rename:(function(oldNode,newDir,newName){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),unlink:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rmdir:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readdir:(function(node){var entries=[".",".."];for(var key in node.contents){if(!node.contents.hasOwnProperty(key)){continue}entries.push(key)}return entries}),symlink:(function(parent,newName,oldPath){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readlink:(function(node){throw new FS.ErrnoError(ERRNO_CODES.EPERM)})},stream_ops:{read:(function(stream,buffer,offset,length,position){if(position>=stream.node.size)return 0;var chunk=stream.node.contents.slice(position,position+length);var ab=WORKERFS.reader.readAsArrayBuffer(chunk);buffer.set(new Uint8Array(ab),offset);return chunk.size}),write:(function(stream,buffer,offset,length,position){throw new FS.ErrnoError(ERRNO_CODES.EIO)}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.size}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};STATICTOP+=16;STATICTOP+=16;STATICTOP+=16;var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:(function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)}),lookupPath:(function(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}var parts=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),false);var current=FS.root;var current_path="/";for(var i=0;i<parts.length;i++){var islast=i===parts.length-1;if(islast&&opts.parent){break}current=FS.lookupNode(current,parts[i]);current_path=PATH.join2(current_path,parts[i]);if(FS.isMountpoint(current)){if(!islast||islast&&opts.follow_mount){current=current.mounted.root}}if(!islast||opts.follow){var count=0;while(FS.isLink(current.mode)){var link=FS.readlink(current_path);current_path=PATH.resolve(PATH.dirname(current_path),link);var lookup=FS.lookupPath(current_path,{recurse_count:opts.recurse_count});current=lookup.node;if(count++>40){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}}}}return{path:current_path,node:current}}),getPath:(function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}}),hashName:(function(parentid,name){var hash=0;for(var i=0;i<name.length;i++){hash=(hash<<5)-hash+name.charCodeAt(i)|0}return(parentid+hash>>>0)%FS.nameTable.length}),hashAddNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node}),hashRemoveNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}}),lookupNode:(function(parent,name){var err=FS.mayLookup(parent);if(err){throw new FS.ErrnoError(err,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:(function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags}),flagsToPermissionString:(function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return ERRNO_CODES.EACCES}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return ERRNO_CODES.EACCES}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return ERRNO_CODES.EACCES}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return ERRNO_CODES.EACCES;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return ERRNO_CODES.EEXIST}catch(e){}return FS.nodePermissions(dir,"wx")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return ERRNO_CODES.ENOTDIR}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return ERRNO_CODES.EBUSY}}else{if(FS.isDir(node.mode)){return ERRNO_CODES.EISDIR}}return 0}),mayOpen:(function(node,flags){if(!node){return ERRNO_CODES.ENOENT}if(FS.isLink(node.mode)){return ERRNO_CODES.ELOOP}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return ERRNO_CODES.EISDIR}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(ERRNO_CODES.EMFILE)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdirTree:(function(path,mode){var dirs=path.split("/");var d="";for(var i=0;i<dirs.length;++i){if(!dirs[i])continue;d+="/"+dirs[i];try{FS.mkdir(d,mode)}catch(e){if(e.errno!=ERRNO_CODES.EEXIST)throw e}}}),mkdev:(function(path,mode,dev){if(typeof dev==="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)}),symlink:(function(oldpath,newpath){if(!PATH.resolve(oldpath)){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}var newname=PATH.basename(newpath);var err=FS.mayCreate(parent,newname);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.symlink){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.symlink(parent,newname,oldpath)}),rename:(function(old_path,new_path){var old_dirname=PATH.dirname(old_path);var new_dirname=PATH.dirname(new_path);var old_name=PATH.basename(old_path);var new_name=PATH.basename(new_path);var lookup,old_dir,new_dir;try{lookup=FS.lookupPath(old_path,{parent:true});old_dir=lookup.node;lookup=FS.lookupPath(new_path,{parent:true});new_dir=lookup.node}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!old_dir||!new_dir)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(ERRNO_CODES.EXDEV)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}relative=PATH.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var err=FS.mayDelete(old_dir,old_name,isdir);if(err){throw new FS.ErrnoError(err)}err=new_node?FS.mayDelete(new_dir,new_name,isdir):FS.mayCreate(new_dir,new_name);if(err){throw new FS.ErrnoError(err)}if(!old_dir.node_ops.rename){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isMountpoint(old_node)||new_node&&FS.isMountpoint(new_node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(new_dir!==old_dir){err=FS.nodePermissions(old_dir,"w");if(err){throw new FS.ErrnoError(err)}}try{if(FS.trackingDelegate["willMovePath"]){FS.trackingDelegate["willMovePath"](old_path,new_path)}}catch(e){console.log("FS.trackingDelegate['willMovePath']('"+old_path+"', '"+new_path+"') threw an exception: "+e.message)}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name)}catch(e){throw e}finally{FS.hashAddNode(old_node)}try{if(FS.trackingDelegate["onMovePath"])FS.trackingDelegate["onMovePath"](old_path,new_path)}catch(e){console.log("FS.trackingDelegate['onMovePath']('"+old_path+"', '"+new_path+"') threw an exception: "+e.message)}}),rmdir:(function(path){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var err=FS.mayDelete(parent,name,true);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.rmdir){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}try{if(FS.trackingDelegate["willDeletePath"]){FS.trackingDelegate["willDeletePath"](path)}}catch(e){console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: "+e.message)}parent.node_ops.rmdir(parent,name);FS.destroyNode(node);try{if(FS.trackingDelegate["onDeletePath"])FS.trackingDelegate["onDeletePath"](path)}catch(e){console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: "+e.message)}}),readdir:(function(path){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;if(!node.node_ops.readdir){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}return node.node_ops.readdir(node)}),unlink:(function(path){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var err=FS.mayDelete(parent,name,false);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.unlink){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}try{if(FS.trackingDelegate["willDeletePath"]){FS.trackingDelegate["willDeletePath"](path)}}catch(e){console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: "+e.message)}parent.node_ops.unlink(parent,name);FS.destroyNode(node);try{if(FS.trackingDelegate["onDeletePath"])FS.trackingDelegate["onDeletePath"](path)}catch(e){console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: "+e.message)}}),readlink:(function(path){var lookup=FS.lookupPath(path);var link=lookup.node;if(!link){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!link.node_ops.readlink){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return PATH.resolve(FS.getPath(link.parent),link.node_ops.readlink(link))}),stat:(function(path,dontFollow){var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!node.node_ops.getattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return node.node_ops.getattr(node)}),lstat:(function(path){return FS.stat(path,true)}),chmod:(function(path,mode,dontFollow){var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}node.node_ops.setattr(node,{mode:mode&4095|node.mode&~4095,timestamp:Date.now()})}),lchmod:(function(path,mode){FS.chmod(path,mode,true)}),fchmod:(function(fd,mode){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}FS.chmod(stream.node,mode)}),chown:(function(path,uid,gid,dontFollow){var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}node.node_ops.setattr(node,{timestamp:Date.now()})}),lchown:(function(path,uid,gid){FS.chown(path,uid,gid,true)}),fchown:(function(fd,uid,gid){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}FS.chown(stream.node,uid,gid)}),truncate:(function(path,len){if(len<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:true});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EISDIR)}if(!FS.isFile(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.nodePermissions(node,"w");if(err){throw new FS.ErrnoError(err)}node.node_ops.setattr(node,{size:len,timestamp:Date.now()})}),ftruncate:(function(fd,len){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}FS.truncate(stream.node,len)}),utime:(function(path,atime,mtime){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;node.node_ops.setattr(node,{timestamp:Math.max(atime,mtime)})}),open:(function(path,flags,mode,fd_start,fd_end){if(path===""){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}flags=typeof flags==="string"?FS.modeStringToFlags(flags):flags;mode=typeof mode==="undefined"?438:mode;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path==="object"){node=path}else{path=PATH.normalize(path);try{var lookup=FS.lookupPath(path,{follow:!(flags&131072)});node=lookup.node}catch(e){}}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(ERRNO_CODES.EEXIST)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}if(!created){var err=FS.mayOpen(node,flags);if(err){throw new FS.ErrnoError(err)}}if(flags&512){FS.truncate(node,0)}flags&=~(128|512);var stream=FS.createStream({node:node,path:FS.getPath(node),flags:flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false},fd_start,fd_end);if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module["logReadFiles"]&&!(flags&1)){if(!FS.readFiles)FS.readFiles={};if(!(path in FS.readFiles)){FS.readFiles[path]=1;Module["printErr"]("read file: "+path)}}try{if(FS.trackingDelegate["onOpenFile"]){var trackingFlags=0;if((flags&2097155)!==1){trackingFlags|=FS.tracking.openFlags.READ}if((flags&2097155)!==0){trackingFlags|=FS.tracking.openFlags.WRITE}FS.trackingDelegate["onOpenFile"](path,trackingFlags)}}catch(e){console.log("FS.trackingDelegate['onOpenFile']('"+path+"', flags) threw an exception: "+e.message)}return stream}),close:(function(stream){if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}}),llseek:(function(stream,offset,whence){if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position}),read:(function(stream,buffer,offset,length,position){if(length<0||position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EISDIR)}if(!stream.stream_ops.read){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var seeking=typeof position!=="undefined";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}var bytesRead=stream.stream_ops.read(stream,buffer,offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead}),write:(function(stream,buffer,offset,length,position,canOwn){if(length<0||position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EISDIR)}if(!stream.stream_ops.write){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if(stream.flags&1024){FS.llseek(stream,0,2)}var seeking=typeof position!=="undefined";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}var bytesWritten=stream.stream_ops.write(stream,buffer,offset,length,position,canOwn);if(!seeking)stream.position+=bytesWritten;try{if(stream.path&&FS.trackingDelegate["onWriteToFile"])FS.trackingDelegate["onWriteToFile"](stream.path)}catch(e){console.log("FS.trackingDelegate['onWriteToFile']('"+path+"') threw an exception: "+e.message)}return bytesWritten}),allocate:(function(stream,offset,length){if(offset<0||length<=0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if(!FS.isFile(stream.node.mode)&&!FS.isDir(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}if(!stream.stream_ops.allocate){throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP)}stream.stream_ops.allocate(stream,offset,length)}),mmap:(function(stream,buffer,offset,length,position,prot,flags){if((stream.flags&2097155)===1){throw new FS.ErrnoError(ERRNO_CODES.EACCES)}if(!stream.stream_ops.mmap){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}return stream.stream_ops.mmap(stream,buffer,offset,length,position,prot,flags)}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!stream||!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)}),munmap:(function(stream){return 0}),ioctl:(function(stream,cmd,arg){if(!stream.stream_ops.ioctl){throw new FS.ErrnoError(ERRNO_CODES.ENOTTY)}return stream.stream_ops.ioctl(stream,cmd,arg)}),readFile:(function(path,opts){opts=opts||{};opts.flags=opts.flags||"r";opts.encoding=opts.encoding||"binary";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error('Invalid encoding type "'+opts.encoding+'"')}var ret;var stream=FS.open(path,opts.flags);var stat=FS.stat(path);var length=stat.size;var buf=new Uint8Array(length);FS.read(stream,buf,0,length,0);if(opts.encoding==="utf8"){ret=UTF8ArrayToString(buf,0)}else if(opts.encoding==="binary"){ret=buf}FS.close(stream);return ret}),writeFile:(function(path,data,opts){opts=opts||{};opts.flags=opts.flags||"w";var stream=FS.open(path,opts.flags,opts.mode);if(typeof data==="string"){var buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,undefined,opts.canOwn)}else if(ArrayBuffer.isView(data)){FS.write(stream,data,0,data.byteLength,undefined,opts.canOwn)}else{throw new Error("Unsupported data type")}FS.close(stream)}),cwd:(function(){return FS.currentPath}),chdir:(function(path){var lookup=FS.lookupPath(path,{follow:true});if(lookup.node===null){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!FS.isDir(lookup.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}var err=FS.nodePermissions(lookup.node,"x");if(err){throw new FS.ErrnoError(err)}FS.currentPath=lookup.path}),createDefaultDirectories:(function(){FS.mkdir("/tmp");FS.mkdir("/home");FS.mkdir("/home/web_user")}),createDefaultDevices:(function(){FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:(function(){return 0}),write:(function(stream,buffer,offset,length,pos){return length})});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var random_device;if(typeof crypto!=="undefined"){var randomBuffer=new Uint8Array(1);random_device=(function(){crypto.getRandomValues(randomBuffer);return randomBuffer[0]})}else if(ENVIRONMENT_IS_NODE){random_device=(function(){return require("crypto")["randomBytes"](1)[0]})}else{random_device=(function(){return Math.random()*256|0})}FS.createDevice("/dev","random",random_device);FS.createDevice("/dev","urandom",random_device);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")}),createSpecialDirectories:(function(){FS.mkdir("/proc");FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount:(function(){var node=FS.createNode("/proc/self","fd",16384|511,73);node.node_ops={lookup:(function(parent,name){var fd=+name;var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:(function(){return stream.path})}};ret.parent=ret;return ret})};return node})},{},"/proc/self/fd")}),createStandardStreams:(function(){if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin","r");assert(stdin.fd===0,"invalid handle for stdin ("+stdin.fd+")");var stdout=FS.open("/dev/stdout","w");assert(stdout.fd===1,"invalid handle for stdout ("+stdout.fd+")");var stderr=FS.open("/dev/stderr","w");assert(stderr.fd===2,"invalid handle for stderr ("+stderr.fd+")")}),ensureErrnoError:(function(){if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno,node){this.node=node;this.setErrno=(function(errno){this.errno=errno;for(var key in ERRNO_CODES){if(ERRNO_CODES[key]===errno){this.code=key;break}}});this.setErrno(errno);this.message=ERRNO_MESSAGES[errno];if(this.stack)Object.defineProperty(this,"stack",{value:(new Error).stack,writable:true})};FS.ErrnoError.prototype=new Error;FS.ErrnoError.prototype.constructor=FS.ErrnoError;[ERRNO_CODES.ENOENT].forEach((function(code){FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack="<generic error, no stack>"}))}),staticInit:(function(){FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={"MEMFS":MEMFS,"IDBFS":IDBFS,"NODEFS":NODEFS,"WORKERFS":WORKERFS}}),init:(function(input,output,error){assert(!FS.init.initialized,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)");FS.init.initialized=true;FS.ensureErrnoError();Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()}),quit:(function(){FS.init.initialized=false;var fflush=Module["_fflush"];if(fflush)fflush(0);for(var i=0;i<FS.streams.length;i++){var stream=FS.streams[i];if(!stream){continue}FS.close(stream)}}),getMode:(function(canRead,canWrite){var mode=0;if(canRead)mode|=292|73;if(canWrite)mode|=146;return mode}),joinPath:(function(parts,forceRelative){var path=PATH.join.apply(null,parts);if(forceRelative&&path[0]=="/")path=path.substr(1);return path}),absolutePath:(function(relative,base){return PATH.resolve(base,relative)}),standardizePath:(function(path){return PATH.normalize(path)}),findObject:(function(path,dontResolveLastLink){var ret=FS.analyzePath(path,dontResolveLastLink);if(ret.exists){return ret.object}else{___setErrNo(ret.error);return null}}),analyzePath:(function(path,dontResolveLastLink){try{var lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});path=lookup.path}catch(e){}var ret={isRoot:false,exists:false,error:0,name:null,path:null,object:null,parentExists:false,parentPath:null,parentObject:null};try{var lookup=FS.lookupPath(path,{parent:true});ret.parentExists=true;ret.parentPath=lookup.path;ret.parentObject=lookup.node;ret.name=PATH.basename(path);lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});ret.exists=true;ret.path=lookup.path;ret.object=lookup.node;ret.name=lookup.node.name;ret.isRoot=lookup.path==="/"}catch(e){ret.error=e.errno}return ret}),createFolder:(function(parent,name,canRead,canWrite){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(canRead,canWrite);return FS.mkdir(path,mode)}),createPath:(function(parent,path,canRead,canWrite){parent=typeof parent==="string"?parent:FS.getPath(parent);var parts=path.split("/").reverse();while(parts.length){var part=parts.pop();if(!part)continue;var current=PATH.join2(parent,part);try{FS.mkdir(current)}catch(e){}parent=current}return current}),createFile:(function(parent,name,properties,canRead,canWrite){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(canRead,canWrite);return FS.create(path,mode)}),createDataFile:(function(parent,name,data,canRead,canWrite,canOwn){var path=name?PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name):parent;var mode=FS.getMode(canRead,canWrite);var node=FS.create(path,mode);if(data){if(typeof data==="string"){var arr=new Array(data.length);for(var i=0,len=data.length;i<len;++i)arr[i]=data.charCodeAt(i);data=arr}FS.chmod(node,mode|146);var stream=FS.open(node,"w");FS.write(stream,data,0,data.length,0,canOwn);FS.close(stream);FS.chmod(node,mode)}return node}),createDevice:(function(parent,name,input,output){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(!!input,!!output);if(!FS.createDevice.major)FS.createDevice.major=64;var dev=FS.makedev(FS.createDevice.major++,0);FS.registerDevice(dev,{open:(function(stream){stream.seekable=false}),close:(function(stream){if(output&&output.buffer&&output.buffer.length){output(10)}}),read:(function(stream,buffer,offset,length,pos){var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=input()}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}if(result===undefined&&bytesRead===0){throw new FS.ErrnoError(ERRNO_CODES.EAGAIN)}if(result===null||result===undefined)break;bytesRead++;buffer[offset+i]=result}if(bytesRead){stream.node.timestamp=Date.now()}return bytesRead}),write:(function(stream,buffer,offset,length,pos){for(var i=0;i<length;i++){try{output(buffer[offset+i])}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}}if(length){stream.node.timestamp=Date.now()}return i})});return FS.mkdev(path,mode,dev)}),createLink:(function(parent,name,target,canRead,canWrite){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);return FS.symlink(target,path)}),forceLoadFile:(function(obj){if(obj.isDevice||obj.isFolder||obj.link||obj.contents)return true;var success=true;if(typeof XMLHttpRequest!=="undefined"){throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.")}else if(Module["read"]){try{obj.contents=intArrayFromString(Module["read"](obj.url),true);obj.usedBytes=obj.contents.length}catch(e){success=false}}else{throw new Error("Cannot load without read() or XMLHttpRequest.")}if(!success)___setErrNo(ERRNO_CODES.EIO);return success}),createLazyFile:(function(parent,name,url,canRead,canWrite){function LazyUint8Array(){this.lengthKnown=false;this.chunks=[]}LazyUint8Array.prototype.get=function LazyUint8Array_get(idx){if(idx>this.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i<size;i++){buffer[offset+i]=contents[position+i]}}else{for(var i=0;i<size;i++){buffer[offset+i]=contents.get(position+i)}}return size};node.stream_ops=stream_ops;return node}),createPreloadedFile:(function(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish){Browser.init();var fullname=name?PATH.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency("cp "+fullname);function processData(byteArray){function finish(byteArray){if(preFinish)preFinish();if(!dontCreateFile){FS.createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}if(onload)onload();removeRunDependency(dep)}var handled=false;Module["preloadPlugins"].forEach((function(plugin){if(handled)return;if(plugin["canHandle"](fullname)){plugin["handle"](byteArray,fullname,finish,(function(){if(onerror)onerror();removeRunDependency(dep)}));handled=true}}));if(!handled)finish(byteArray)}addRunDependency(dep);if(typeof url=="string"){Browser.asyncLoad(url,(function(byteArray){processData(byteArray)}),onerror)}else{processData(url)}}),indexedDB:(function(){return window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB}),DB_NAME:(function(){return"EM_FS_"+window.location.pathname}),DB_VERSION:20,DB_STORE_NAME:"FILE_DATA",saveFilesToDB:(function(paths,onload,onerror){onload=onload||(function(){});onerror=onerror||(function(){});var indexedDB=FS.indexedDB();try{var openRequest=indexedDB.open(FS.DB_NAME(),FS.DB_VERSION)}catch(e){return onerror(e)}openRequest.onupgradeneeded=function openRequest_onupgradeneeded(){console.log("creating db");var db=openRequest.result;db.createObjectStore(FS.DB_STORE_NAME)};openRequest.onsuccess=function openRequest_onsuccess(){var db=openRequest.result;var transaction=db.transaction([FS.DB_STORE_NAME],"readwrite");var files=transaction.objectStore(FS.DB_STORE_NAME);var ok=0,fail=0,total=paths.length;function finish(){if(fail==0)onload();else onerror()}paths.forEach((function(path){var putRequest=files.put(FS.analyzePath(path).object.contents,path);putRequest.onsuccess=function putRequest_onsuccess(){ok++;if(ok+fail==total)finish()};putRequest.onerror=function putRequest_onerror(){fail++;if(ok+fail==total)finish()}}));transaction.onerror=onerror};openRequest.onerror=onerror}),loadFilesFromDB:(function(paths,onload,onerror){onload=onload||(function(){});onerror=onerror||(function(){});var indexedDB=FS.indexedDB();try{var openRequest=indexedDB.open(FS.DB_NAME(),FS.DB_VERSION)}catch(e){return onerror(e)}openRequest.onupgradeneeded=onerror;openRequest.onsuccess=function openRequest_onsuccess(){var db=openRequest.result;try{var transaction=db.transaction([FS.DB_STORE_NAME],"readonly")}catch(e){onerror(e);return}var files=transaction.objectStore(FS.DB_STORE_NAME);var ok=0,fail=0,total=paths.length;function finish(){if(fail==0)onload();else onerror()}paths.forEach((function(path){var getRequest=files.get(path);getRequest.onsuccess=function getRequest_onsuccess(){if(FS.analyzePath(path).exists){FS.unlink(path)}FS.createDataFile(PATH.dirname(path),PATH.basename(path),getRequest.result,true,true,true);ok++;if(ok+fail==total)finish()};getRequest.onerror=function getRequest_onerror(){fail++;if(ok+fail==total)finish()}}));transaction.onerror=onerror};openRequest.onerror=onerror})};var SYSCALLS={DEFAULT_POLLMASK:5,mappings:{},umask:511,calculateAt:(function(dirfd,path){if(path[0]!=="/"){var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=FS.getStream(dirfd);if(!dirstream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);dir=dirstream.path}path=PATH.join2(dir,path)}return path}),doStat:(function(func,path,buf){try{var stat=func(path)}catch(e){if(e&&e.node&&PATH.normalize(path)!==PATH.normalize(FS.getPath(e.node))){return-ERRNO_CODES.ENOTDIR}throw e}HEAP32[buf>>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;HEAP32[buf+36>>2]=stat.size;HEAP32[buf+40>>2]=4096;HEAP32[buf+44>>2]=stat.blocks;HEAP32[buf+48>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+52>>2]=0;HEAP32[buf+56>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ino;return 0}),doMsync:(function(addr,stream,len,flags){var buffer=new Uint8Array(HEAPU8.subarray(addr,addr+len));FS.msync(stream,buffer,0,len,flags)}),doMkdir:(function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0}),doMknod:(function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-ERRNO_CODES.EINVAL}FS.mknod(path,mode,dev);return 0}),doReadlink:(function(path,buf,bufsize){if(bufsize<=0)return-ERRNO_CODES.EINVAL;var ret=FS.readlink(path);var len=Math.min(bufsize,lengthBytesUTF8(ret));var endChar=HEAP8[buf+len];stringToUTF8(ret,buf,bufsize+1);HEAP8[buf+len]=endChar;return len}),doAccess:(function(path,amode){if(amode&~7){return-ERRNO_CODES.EINVAL}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-ERRNO_CODES.EACCES}return 0}),doDup:(function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd}),doReadv:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr<len)break}return ret}),doWritev:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret}),varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),getStreamFromFD:(function(){var stream=FS.getStream(SYSCALLS.get());if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return stream}),getSocketFromFD:(function(){var socket=SOCKFS.getSocket(SYSCALLS.get());if(!socket)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return socket}),getSocketAddress:(function(allowNull){var addrp=SYSCALLS.get(),addrlen=SYSCALLS.get();if(allowNull&&addrp===0)return null;var info=__read_sockaddr(addrp,addrlen);if(info.errno)throw new FS.ErrnoError(info.errno);info.addr=DNS.lookup_addr(info.addr)||info.addr;return info}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall10(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr();FS.unlink(path);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall192(which,varargs){SYSCALLS.varargs=varargs;try{var addr=SYSCALLS.get(),len=SYSCALLS.get(),prot=SYSCALLS.get(),flags=SYSCALLS.get(),fd=SYSCALLS.get(),off=SYSCALLS.get();off<<=12;var ptr;var allocated=false;if(fd===-1){ptr=_memalign(PAGE_SIZE,len);if(!ptr)return-ERRNO_CODES.ENOMEM;_memset(ptr,0,len);allocated=true}else{var info=FS.getStream(fd);if(!info)return-ERRNO_CODES.EBADF;var res=FS.mmap(info,HEAPU8,addr,len,off,prot,flags);ptr=res.ptr;allocated=res.allocated}SYSCALLS.mappings[ptr]={malloc:ptr,len:len,allocated:allocated,fd:fd,flags:flags};return ptr}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall195(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,path,buf)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall197(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,stream.path,buf)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var PROCINFO={ppid:1,pid:42,sid:42,pgid:42};function ___syscall20(which,varargs){SYSCALLS.varargs=varargs;try{return PROCINFO.pid}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall3(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get(),count=SYSCALLS.get();return FS.read(stream,HEAP8,buf,count)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall33(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),amode=SYSCALLS.get();return SYSCALLS.doAccess(path,amode)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21509:case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};case 21523:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall91(which,varargs){SYSCALLS.varargs=varargs;try{var addr=SYSCALLS.get(),len=SYSCALLS.get();var info=SYSCALLS.mappings[addr];if(!info)return 0;if(len===info.len){var stream=FS.getStream(info.fd);SYSCALLS.doMsync(addr,stream,len,info.flags);FS.munmap(stream);SYSCALLS.mappings[addr]=null;if(info.allocated){_free(info.malloc)}}return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function __exit(status){Module["exit"](status)}function _exit(status){__exit(status)}var _environ=STATICTOP;STATICTOP+=16;function ___buildEnvironment(env){var MAX_ENV_VALUES=64;var TOTAL_ENV_SIZE=1024;var poolPtr;var envPtr;if(!___buildEnvironment.called){___buildEnvironment.called=true;ENV["USER"]=ENV["LOGNAME"]="web_user";ENV["PATH"]="/";ENV["PWD"]="/";ENV["HOME"]="/home/web_user";ENV["LANG"]="C.UTF-8";ENV["_"]=Module["thisProgram"];poolPtr=staticAlloc(TOTAL_ENV_SIZE);envPtr=staticAlloc(MAX_ENV_VALUES*4);HEAP32[envPtr>>2]=poolPtr;HEAP32[_environ>>2]=envPtr}else{envPtr=HEAP32[_environ>>2];poolPtr=HEAP32[envPtr>>2]}var strings=[];var totalSize=0;for(var key in env){if(typeof env[key]==="string"){var line=key+"="+env[key];strings.push(line);totalSize+=line.length}}if(totalSize>TOTAL_ENV_SIZE){throw new Error("Environment size exceeded TOTAL_ENV_SIZE!")}var ptrSize=4;for(var i=0;i<strings.length;i++){var line=strings[i];writeAsciiToMemory(line,poolPtr);HEAP32[envPtr+i*ptrSize>>2]=poolPtr;poolPtr+=line.length+1}HEAP32[envPtr+strings.length*ptrSize>>2]=0}var ENV={};function _getenv(name){if(name===0)return 0;name=Pointer_stringify(name);if(!ENV.hasOwnProperty(name))return 0;if(_getenv.ret)_free(_getenv.ret);_getenv.ret=allocateUTF8(ENV[name]);return _getenv.ret}function _gettimeofday(ptr){var now=Date.now();HEAP32[ptr>>2]=now/1e3|0;HEAP32[ptr+4>>2]=now%1e3*1e3|0;return 0}var _llvm_ceil_f64=Math_ceil;var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_floor_f64=Math_floor;var _llvm_pow_f64=Math_pow;var _llvm_sqrt_f32=Math_sqrt;var _llvm_sqrt_f64=Math_sqrt;function _llvm_trap(){abort("trap!")}function _longjmp(env,value){Module["setThrew"](env,value||1);throw"longjmp"}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}function _setenv(envname,envval,overwrite){if(envname===0){___setErrNo(ERRNO_CODES.EINVAL);return-1}var name=Pointer_stringify(envname);var val=Pointer_stringify(envval);if(name===""||name.indexOf("=")!==-1){___setErrNo(ERRNO_CODES.EINVAL);return-1}if(ENV.hasOwnProperty(name)&&!overwrite)return 0;ENV[name]=val;___buildEnvironment(ENV);return 0}function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}function _times(buffer){if(buffer!==0){_memset(buffer,0,16)}return 0}if(ENVIRONMENT_IS_NODE){_emscripten_get_now=function _emscripten_get_now_actual(){var t=process["hrtime"]();return t[0]*1e3+t[1]/1e6}}else if(typeof dateNow!=="undefined"){_emscripten_get_now=dateNow}else if(typeof self==="object"&&self["performance"]&&typeof self["performance"]["now"]==="function"){_emscripten_get_now=(function(){return self["performance"]["now"]()})}else if(typeof performance==="object"&&typeof performance["now"]==="function"){_emscripten_get_now=(function(){return performance["now"]()})}else{_emscripten_get_now=Date.now}FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((function(){FS.quit()}));__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}___buildEnvironment(ENV);DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){if(ASSERTIONS){assert(false,"Character code "+chr+" ("+String.fromCharCode(chr)+") at offset "+i+" not in 0x00-0xFF.")}chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}var decodeBase64=typeof atob==="function"?atob:(function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i<input.length);return output});function intArrayFromBase64(s){if(typeof ENVIRONMENT_IS_NODE==="boolean"&&ENVIRONMENT_IS_NODE){var buf;try{buf=Buffer.from(s,"base64")}catch(_){buf=new Buffer(s,"base64")}return new Uint8Array(buf.buffer,buf.byteOffset,buf.byteLength)}try{var decoded=decodeBase64(s);var bytes=new Uint8Array(decoded.length);for(var i=0;i<decoded.length;++i){bytes[i]=decoded.charCodeAt(i)}return bytes}catch(_){throw new Error("Converting base64 string to bytes failed.")}}function tryParseAsDataURI(filename){if(!isDataURI(filename)){return}return intArrayFromBase64(filename.slice(dataURIPrefix.length))}function invoke_d(index){try{return Module["dynCall_d"](index)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_dddd(index,a1,a2,a3){try{return Module["dynCall_dddd"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_di(index,a1){try{return Module["dynCall_di"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_i(index){try{return Module["dynCall_i"](index)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_ii(index,a1){try{return Module["dynCall_ii"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iii(index,a1,a2){try{return Module["dynCall_iii"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iiidd(index,a1,a2,a3,a4){try{return Module["dynCall_iiidd"](index,a1,a2,a3,a4)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iiii(index,a1,a2,a3){try{return Module["dynCall_iiii"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iiiii(index,a1,a2,a3,a4){try{return Module["dynCall_iiiii"](index,a1,a2,a3,a4)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iiiiii(index,a1,a2,a3,a4,a5){try{return Module["dynCall_iiiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iiiiiii(index,a1,a2,a3,a4,a5,a6){try{return Module["dynCall_iiiiiii"](index,a1,a2,a3,a4,a5,a6)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10){try{return Module["dynCall_iiiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_v(index){try{Module["dynCall_v"](index)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_vi(index,a1){try{Module["dynCall_vi"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_vii(index,a1,a2){try{Module["dynCall_vii"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viii(index,a1,a2,a3){try{Module["dynCall_viii"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viiiddi(index,a1,a2,a3,a4,a5,a6){try{Module["dynCall_viiiddi"](index,a1,a2,a3,a4,a5,a6)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viiii(index,a1,a2,a3,a4){try{Module["dynCall_viiii"](index,a1,a2,a3,a4)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viiiii(index,a1,a2,a3,a4,a5){try{Module["dynCall_viiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viiiiii(index,a1,a2,a3,a4,a5,a6){try{Module["dynCall_viiiiii"](index,a1,a2,a3,a4,a5,a6)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){try{Module["dynCall_viiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}Module.asmGlobalArg={"Math":Math,"Int8Array":Int8Array,"Int16Array":Int16Array,"Int32Array":Int32Array,"Uint8Array":Uint8Array,"Uint16Array":Uint16Array,"Uint32Array":Uint32Array,"Float32Array":Float32Array,"Float64Array":Float64Array,"NaN":NaN,"Infinity":Infinity};Module.asmLibraryArg={"abort":abort,"assert":assert,"enlargeMemory":enlargeMemory,"getTotalMemory":getTotalMemory,"abortOnCannotGrowMemory":abortOnCannotGrowMemory,"invoke_d":invoke_d,"invoke_dddd":invoke_dddd,"invoke_di":invoke_di,"invoke_i":invoke_i,"invoke_ii":invoke_ii,"invoke_iii":invoke_iii,"invoke_iiidd":invoke_iiidd,"invoke_iiii":invoke_iiii,"invoke_iiiii":invoke_iiiii,"invoke_iiiiii":invoke_iiiiii,"invoke_iiiiiii":invoke_iiiiiii,"invoke_iiiiiiiiiii":invoke_iiiiiiiiiii,"invoke_v":invoke_v,"invoke_vi":invoke_vi,"invoke_vii":invoke_vii,"invoke_viii":invoke_viii,"invoke_viiiddi":invoke_viiiddi,"invoke_viiii":invoke_viiii,"invoke_viiiii":invoke_viiiii,"invoke_viiiiii":invoke_viiiiii,"invoke_viiiiiiiii":invoke_viiiiiiiii,"___assert_fail":___assert_fail,"___buildEnvironment":___buildEnvironment,"___clock_gettime":___clock_gettime,"___lock":___lock,"___map_file":___map_file,"___setErrNo":___setErrNo,"___syscall10":___syscall10,"___syscall140":___syscall140,"___syscall145":___syscall145,"___syscall146":___syscall146,"___syscall192":___syscall192,"___syscall195":___syscall195,"___syscall197":___syscall197,"___syscall20":___syscall20,"___syscall221":___syscall221,"___syscall3":___syscall3,"___syscall33":___syscall33,"___syscall5":___syscall5,"___syscall54":___syscall54,"___syscall6":___syscall6,"___syscall91":___syscall91,"___unlock":___unlock,"__exit":__exit,"_clock_gettime":_clock_gettime,"_emscripten_asm_const_iii":_emscripten_asm_const_iii,"_emscripten_get_now":_emscripten_get_now,"_emscripten_get_now_is_monotonic":_emscripten_get_now_is_monotonic,"_emscripten_memcpy_big":_emscripten_memcpy_big,"_exit":_exit,"_getenv":_getenv,"_gettimeofday":_gettimeofday,"_llvm_ceil_f64":_llvm_ceil_f64,"_llvm_fabs_f32":_llvm_fabs_f32,"_llvm_fabs_f64":_llvm_fabs_f64,"_llvm_floor_f64":_llvm_floor_f64,"_llvm_pow_f64":_llvm_pow_f64,"_llvm_sqrt_f32":_llvm_sqrt_f32,"_llvm_sqrt_f64":_llvm_sqrt_f64,"_llvm_trap":_llvm_trap,"_longjmp":_longjmp,"_setenv":_setenv,"_time":_time,"_times":_times,"DYNAMICTOP_PTR":DYNAMICTOP_PTR,"tempDoublePtr":tempDoublePtr,"ABORT":ABORT,"STACKTOP":STACKTOP,"STACK_MAX":STACK_MAX,"cttz_i8":cttz_i8};// EMSCRIPTEN_START_ASM + var asm=(/** @suppress {uselessCode} */ function(global,env,buffer) { + "use asm";var a=new global.Int8Array(buffer);var b=new global.Int16Array(buffer);var c=new global.Int32Array(buffer);var d=new global.Uint8Array(buffer);var e=new global.Uint16Array(buffer);var f=new global.Uint32Array(buffer);var g=new global.Float32Array(buffer);var h=new global.Float64Array(buffer);var i=env.DYNAMICTOP_PTR|0;var j=env.tempDoublePtr|0;var k=env.ABORT|0;var l=env.STACKTOP|0;var m=env.STACK_MAX|0;var n=env.cttz_i8|0;var o=0;var p=0;var q=0;var r=0;var s=global.NaN,t=global.Infinity;var u=0,v=0,w=0,x=0,y=0.0;var z=0;var A=global.Math.floor;var B=global.Math.abs;var C=global.Math.sqrt;var D=global.Math.pow;var E=global.Math.cos;var F=global.Math.sin;var G=global.Math.tan;var H=global.Math.acos;var I=global.Math.asin;var J=global.Math.atan;var K=global.Math.atan2;var L=global.Math.exp;var M=global.Math.log;var N=global.Math.ceil;var O=global.Math.imul;var P=global.Math.min;var Q=global.Math.max;var R=global.Math.clz32;var S=env.abort;var T=env.assert;var U=env.enlargeMemory;var V=env.getTotalMemory;var W=env.abortOnCannotGrowMemory;var X=env.invoke_d;var Y=env.invoke_dddd;var Z=env.invoke_di;var _=env.invoke_i;var $=env.invoke_ii;var aa=env.invoke_iii;var ba=env.invoke_iiidd;var ca=env.invoke_iiii;var da=env.invoke_iiiii;var ea=env.invoke_iiiiii;var fa=env.invoke_iiiiiii;var ga=env.invoke_iiiiiiiiiii;var ha=env.invoke_v;var ia=env.invoke_vi;var ja=env.invoke_vii;var ka=env.invoke_viii;var la=env.invoke_viiiddi;var ma=env.invoke_viiii;var na=env.invoke_viiiii;var oa=env.invoke_viiiiii;var pa=env.invoke_viiiiiiiii;var qa=env.___assert_fail;var ra=env.___buildEnvironment;var sa=env.___clock_gettime;var ta=env.___lock;var ua=env.___map_file;var va=env.___setErrNo;var wa=env.___syscall10;var xa=env.___syscall140;var ya=env.___syscall145;var za=env.___syscall146;var Aa=env.___syscall192;var Ba=env.___syscall195;var Ca=env.___syscall197;var Da=env.___syscall20;var Ea=env.___syscall221;var Fa=env.___syscall3;var Ga=env.___syscall33;var Ha=env.___syscall5;var Ia=env.___syscall54;var Ja=env.___syscall6;var Ka=env.___syscall91;var La=env.___unlock;var Ma=env.__exit;var Na=env._clock_gettime;var Oa=env._emscripten_asm_const_iii;var Pa=env._emscripten_get_now;var Qa=env._emscripten_get_now_is_monotonic;var Ra=env._emscripten_memcpy_big;var Sa=env._exit;var Ta=env._getenv;var Ua=env._gettimeofday;var Va=env._llvm_ceil_f64;var Wa=env._llvm_fabs_f32;var Xa=env._llvm_fabs_f64;var Ya=env._llvm_floor_f64;var Za=env._llvm_pow_f64;var _a=env._llvm_sqrt_f32;var $a=env._llvm_sqrt_f64;var ab=env._llvm_trap;var bb=env._longjmp;var cb=env._setenv;var db=env._time;var eb=env._times;var fb=0.0; + // EMSCRIPTEN_START_FUNCS + function gP(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+176|0;k=n+8|0;j=n;h=n+40|0;if(!b)qa(108200,108204,52,108218);if(!d)qa(108230,108204,53,108218);i=c[d+8>>2]|0;if(!i)qa(108233,108204,54,108218);if(!(a[i>>0]|0))qa(108242,108204,55,108218);b0(h,c[d+28>>2]|0)|0;i=h+(W_(h)|0)|0;a[i>>0]=58;a[i+1>>0]=0;p1(h,g)|0;if((hP(b,h)|0)==999){c[j>>2]=h;Pw(0,108254,j)|0}g=c[b+92>>2]|0;if(g|0?(m=c[g>>2]|0,m|0):0){c[k>>2]=c[e>>2];c[k+4>>2]=c[e+4>>2];c[k+8>>2]=c[e+8>>2];c[k+12>>2]=c[e+12>>2];c[k+16>>2]=c[e+16>>2];c[k+20>>2]=c[e+20>>2];c[k+24>>2]=c[e+24>>2];c[k+28>>2]=c[e+28>>2];xb[m&31](b,d,k,f)}l=n;return}function hP(a,b){a=a|0;b=b|0;b=wC(c[a>>2]|0,4,b)|0;if(!b)b=999;else{b=c[b+16>>2]|0;c[a+92>>2]=c[b+12>>2];c[a+96>>2]=c[b>>2];b=300}return b|0}function iP(a){a=a|0;return 1}function jP(b){b=b|0;var c=0;a[b+536>>0]=0;c=b+336|0;h[c>>3]=+h[c>>3]+10.0/+h[b+352>>3];a[b+537>>0]=1;return 0}function kP(b){b=b|0;var c=0;a[b+536>>0]=0;c=b+336|0;h[c>>3]=+h[c>>3]-10.0/+h[b+352>>3];a[b+537>>0]=1;return 0}function lP(b){b=b|0;var c=0;a[b+536>>0]=0;c=b+344|0;h[c>>3]=+h[c>>3]-10.0/+h[b+352>>3];a[b+537>>0]=1;return 0}function mP(b){b=b|0;var c=0;a[b+536>>0]=0;c=b+344|0;h[c>>3]=+h[c>>3]+10.0/+h[b+352>>3];a[b+537>>0]=1;return 0}function nP(b){b=b|0;var c=0;a[b+536>>0]=0;c=b+352|0;h[c>>3]=+h[c>>3]*1.1;a[b+537>>0]=1;return 0}function oP(b){b=b|0;var c=0;a[b+536>>0]=0;c=b+352|0;h[c>>3]=+h[c>>3]*.9090909090909091;a[b+537>>0]=1;return 0}function pP(b){b=b|0;var d=0,e=0,f=0,g=0.0,i=0.0;e=b+536|0;d=(a[e>>0]|0)==0;a[e>>0]=d&1;if(d){d=c[b+448>>2]|0;e=c[b+452>>2]|0;i=+(d>>>0);g=+(e>>>0);f=i/+(d|0)<g/+(e|0);h[b+352>>3]=(f?i:g)/+((f?d:e)|0);e=b+336|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;a[b+537>>0]=1}return 0}function qP(b){b=b|0;var d=0,e=0;d=c[(c[b>>2]|0)+168>>2]|0;e=b+580|0;if(!(c[e>>2]|0)){c[e>>2]=d;e=(c[d+16>>2]|0)+112|0;a[e>>0]=a[e>>0]|2;GP(b,d)}dF(b,d);a[b+540>>0]=1;return}function rP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0.0,j=0,k=0;k=l;l=l+16|0;f=k;switch(d|0){case 1:{c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];zP(b,f);FP(b);a[b+538>>0]=1;a[b+541>>0]=1;j=13;break}case 2:{a[b+538>>0]=1;a[b+541>>0]=2;j=13;break}case 3:{c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];zP(b,f);a[b+538>>0]=1;a[b+541>>0]=3;j=13;break}case 4:{a[b+536>>0]=0;if(!(c[b+360>>2]|0)){f=b+352|0;i=+h[f>>3];d=b+336|0;h[d>>3]=(+h[e>>3]-+((c[b+448>>2]|0)>>>0)*.5)*.10000000000000009/(+h[b+520>>3]*i)+ +h[d>>3];g=+h[e+8>>3]-+((c[b+452>>2]|0)>>>0)*.5;d=b+528|0}else{f=b+352|0;i=+h[f>>3];d=b+336|0;h[d>>3]=+h[d>>3]-(+h[e+8>>3]-+((c[b+452>>2]|0)>>>0)*.5)*.10000000000000009/(+h[b+528>>3]*i);g=+h[e>>3]-+((c[b+448>>2]|0)>>>0)*.5;d=b+520|0}j=b+344|0;h[j>>3]=g*.10000000000000009/(+h[d>>3]*i)+ +h[j>>3];h[f>>3]=i*1.1;j=13;break}case 5:{a[b+536>>0]=0;j=b+352|0;i=+h[j>>3]*.9090909090909091;h[j>>3]=i;if(!(c[b+360>>2]|0)){f=b+336|0;h[f>>3]=+h[f>>3]-(+h[e>>3]-+((c[b+448>>2]|0)>>>0)*.5)*.10000000000000009/(+h[b+520>>3]*i);g=+h[e+8>>3]-+((c[b+452>>2]|0)>>>0)*.5;f=b+528|0}else{f=b+336|0;h[f>>3]=(+h[e+8>>3]-+((c[b+452>>2]|0)>>>0)*.5)*.10000000000000009/(+h[b+528>>3]*i)+ +h[f>>3];g=+h[e>>3]-+((c[b+448>>2]|0)>>>0)*.5;f=b+520|0}j=b+344|0;h[j>>3]=+h[j>>3]-g*.10000000000000009/(+h[f>>3]*i);j=13;break}default:{}}if((j|0)==13)a[b+537>>0]=1;b=b+560|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];l=k;return}function sP(b,c,d){b=b|0;c=c|0;d=d|0;a[b+538>>0]=0;a[b+541>>0]=0;return}function tP(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0,j=0.0,k=0;k=l;l=l+16|0;e=k;i=b+560|0;j=(+h[d>>3]-+h[i>>3])/+h[b+520>>3];g=(+h[d+8>>3]-+h[b+568>>3])/+h[b+528>>3];if(!(+B(+j)<.0001&+B(+g)<.0001)){switch(a[b+541>>0]|0){case 0:{c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];zP(b,e);break}case 2:{f=+h[b+352>>3];if(!(c[b+360>>2]|0)){e=b+336|0;h[e>>3]=+h[e>>3]-j/f;e=b+344|0;h[e>>3]=+h[e>>3]-g/f}else{e=b+336|0;h[e>>3]=+h[e>>3]-g/f;e=b+344|0;h[e>>3]=+h[e>>3]+j/f}a[b+537>>0]=1;break}default:{}}c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[i+12>>2]=c[d+12>>2]}l=k;return}function uP(a,b,c){a=a|0;b=b|0;c=c|0;return}function vP(a){a=a|0;return}function wP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=c[b>>2]|0;if(d){d=L1(d,135739)|0;if(d|0){i=TB(d,0)|0;s1(d)|0;f=5}}else{i=TB(c[15621]|0,0)|0;f=5}if((f|0)==5?i|0:0){g=j+168|0;d=c[g>>2]|0;if(d|0){f=c[j+172>>2]|0;if((f|0)!=0?(h=c[f+4>>2]|0,(h|0)!=0):0){tb[h&127](d);d=c[g>>2]|0}gH(d);$x(c[g>>2]|0)|0}Fz(i,0,134401,280,1);Fz(i,1,134365,304,1);Fz(i,2,134378,176,1);c[g>>2]=i;c[(c[i+16>>2]|0)+144>>2]=j;if((_C(j,i,e)|0)!=-1){c[b+580>>2]=0;c[b+576>>2]=0;a[b+537>>0]=1}}return}function xP(a,b){a=a|0;b=b|0;a=c[a>>2]|0;_C(a,c[a+168>>2]|0,b)|0;return}function yP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=c[a>>2]|0;f=g+160|0;e=c[f>>2]|0;if((e|0)!=0?(c[g+164>>2]|0)==0:0){i=g+192|0;h=c[i>>2]|0;c[f>>2]=0;c[i>>2]=0;f=h}else{f=0;e=0}aD(g,c[g+168>>2]|0,b,d)|0;if(e|0){i=c[a>>2]|0;c[i+160>>2]=e;c[i+192>>2]=f}return}function zP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0.0,j=0.0,k=0.0,m=0;f=l;l=l+80|0;e=f+48|0;g=f;m=f+32|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];AP(m,b,e);k=+h[m>>3];j=+h[m+8>>3];i=1.0/+h[b+352>>3];h[g+16>>3]=i+k;h[g+24>>3]=i+j;h[g>>3]=k-i;h[g+8>>3]=j-i;d=c[(c[b>>2]|0)+168>>2]|0;c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[e+12>>2]=c[g+12>>2];c[e+16>>2]=c[g+16>>2];c[e+20>>2]=c[g+20>>2];c[e+24>>2]=c[g+24>>2];c[e+28>>2]=c[g+28>>2];d=BP(d,e)|0;e=b+576|0;if((d|0)!=(c[e>>2]|0)){CP(b);c[e>>2]=d;DP(b);a[b+537>>0]=1}l=f;return}function AP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,g=0.0,i=0;if(!(c[b+360>>2]|0)){e=+h[b+352>>3];f=+h[d+8>>3];g=e;i=b+528|0;e=+h[d>>3]/(+h[b+520>>3]*e)-+h[b+504>>3]}else{e=+h[b+352>>3];f=-+h[d>>3];g=e;i=b+520|0;e=+h[d+8>>3]/(+h[b+528>>3]*e)-+h[b+504>>3]}g=f/(+h[i>>3]*g)-+h[b+512>>3];h[a>>3]=e;h[a+8>>3]=g;return}function BP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=Sy(a)|0;a:while(1){if(!e){e=9;break}d=Ex(a,e)|0;while(1){if(!d)break;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];c[f+16>>2]=c[b+16>>2];c[f+20>>2]=c[b+20>>2];c[f+24>>2]=c[b+24>>2];c[f+28>>2]=c[b+28>>2];if((WM(d,f)|0)<<24>>24){e=6;break a}d=Gx(a,d)|0}e=Ty(a,e)|0}do if((e|0)!=6)if((e|0)==9){d=Uy(a)|0;while(1){if(!d)break;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];c[f+16>>2]=c[b+16>>2];c[f+20>>2]=c[b+20>>2];c[f+24>>2]=c[b+24>>2];c[f+28>>2]=c[b+28>>2];if((TM(d,f)|0)<<24>>24){e=12;break}d=Vy(a,d)|0}if((e|0)==12)break;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];c[f+16>>2]=c[b+16>>2];c[f+20>>2]=c[b+20>>2];c[f+24>>2]=c[b+24>>2];c[f+28>>2]=c[b+28>>2];d=EP(a,f)|0;if(!d){d=a;break}else break}while(0);l=g;return d|0}function CP(b){b=b|0;var d=0;d=c[b+576>>2]|0;a:do if(d|0)switch(pz(d)|0){case 0:{d=(c[d+16>>2]|0)+112|0;a[d>>0]=a[d>>0]&-2;break a}case 1:{d=(c[d+16>>2]|0)+117|0;a[d>>0]=a[d>>0]&-2;break a}case 2:{d=(c[d+16>>2]|0)+115|0;a[d>>0]=a[d>>0]&-2;break a}default:break a}while(0);c[b+584>>2]=0;return}function DP(b){b=b|0;var d=0,e=0;e=b+584|0;d=c[e>>2]|0;if(d|0){D_(d);c[e>>2]=0}d=c[b+576>>2]|0;a:do if(d|0)switch(pz(d)|0){case 0:{b=(c[d+16>>2]|0)+112|0;a[b>>0]=a[b>>0]|1;b=nx(d,0,138019,0)|0;if(!b)break a;c[e>>2]=pH(yx(d,b)|0,d)|0;break a}case 1:{b=(c[d+16>>2]|0)+117|0;a[b>>0]=a[b>>0]|1;b=nx(ez(d)|0,1,138019,0)|0;if(!b)break a;c[e>>2]=pH(yx(d,b)|0,d)|0;break a}case 2:{b=(c[d+16>>2]|0)+115|0;a[b>>0]=a[b>>0]|1;b=nx(ez(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0)|0,2,138019,0)|0;if(!b)break a;c[e>>2]=pH(yx(d,b)|0,d)|0;break a}default:break a}while(0);return}function EP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+32|0;e=m;g=c[a+16>>2]|0;i=c[g+180>>2]|0;j=g+184|0;d=1;while(1){if((d|0)>(i|0)){k=4;break}f=c[(c[j>>2]|0)+(d<<2)>>2]|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];c[e+16>>2]=c[b+16>>2];c[e+20>>2]=c[b+20>>2];c[e+24>>2]=c[b+24>>2];c[e+28>>2]=c[b+28>>2];f=EP(f,e)|0;if(!f)d=d+1|0;else{a=f;break}}do if((k|0)==4){o=+h[g+24>>3];n=+h[g+40>>3];if(((+h[b+16>>3]>=+h[g+16>>3]?+h[g+32>>3]>=+h[b>>3]:0)?+h[b+24>>3]>=o:0)?n>=+h[b+8>>3]:0)break;a=0}while(0);l=m;return a|0}function FP(b){b=b|0;var d=0,e=0,f=0;f=b+580|0;d=c[f>>2]|0;a:do if(d|0)switch(pz(d)|0){case 0:{e=(c[d+16>>2]|0)+112|0;a[e>>0]=a[e>>0]&-7|4;break a}case 1:{e=(c[d+16>>2]|0)+117|0;a[e>>0]=a[e>>0]&-7|4;break a}case 2:{e=(c[d+16>>2]|0)+115|0;a[e>>0]=a[e>>0]&-7|4;break a}default:break a}while(0);d=b+588|0;e=c[d>>2]|0;if(e|0){D_(e);c[d>>2]=0}d=c[b+576>>2]|0;c[f>>2]=d;b:do if(d|0)switch(pz(d)|0){case 0:{f=(c[d+16>>2]|0)+112|0;a[f>>0]=a[f>>0]|2;GP(b,d);break b}case 1:{f=(c[d+16>>2]|0)+117|0;a[f>>0]=a[f>>0]|2;HP(b,d);break b}case 2:{f=(c[d+16>>2]|0)+115|0;a[f>>0]=a[f>>0]|2;IP(b,d);break b}default:break b}while(0);return}function GP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=a+592|0;do if((fz(b)|0)==(b|0))if(!(ey(b)|0)){rC(d,0,108412);break}else{rC(d,0,108404);break}else rC(d,0,108418);while(0);rC(d,1,ry(b)|0);c[a+596>>2]=2;f=a+604|0;d=0;e=2;while(1){d=sx(b,0,d)|0;if(!d)break;rC(f,e,c[d+8>>2]|0);rC(f,e+1|0,yx(b,d)|0);rC(f,e+2|0,0);e=e+3|0}c[a+608>>2]=e;d=nx(b,0,137973,0)|0;if(!d){d=nx(b,0,108395,0)|0;if(d|0)g=11}else g=11;if((g|0)==11)c[a+588>>2]=pH(yx(b,d)|0,b)|0;return}function HP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=a+592|0;rC(f,0,108399);rC(f,1,ry(b)|0);c[a+596>>2]=2;f=a+604|0;g=fz(ez(b)|0)|0;e=2;d=0;while(1){d=sx(g,1,d)|0;if(!d)break;rC(f,e,c[d+8>>2]|0);rC(f,e|1,yx(b,d)|0);e=e+2|0}c[a+608>>2]=e;d=nx(ez(b)|0,1,137973,0)|0;if(!d){d=nx(ez(b)|0,1,108395,0)|0;if(d|0)h=6}else h=6;if((h|0)==6)c[a+588>>2]=pH(yx(b,d)|0,b)|0;return}function IP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=a+592|0;rC(h,0,108368);k=b+48|0;rC(h,1,ry(c[((c[b>>2]&3|0)==3?b:k)+40>>2]|0)|0);k=(ey(ez(c[((c[b>>2]&3|0)==3?b:k)+40>>2]|0)|0)|0)!=0;rC(h,3,k?134656:138665);k=b+-48|0;rC(h,4,ry(c[((c[b>>2]&3|0)==2?b:k)+40>>2]|0)|0);c[a+596>>2]=7;i=a+604|0;j=fz(ez(c[((c[b>>2]&3|0)==2?b:k)+40>>2]|0)|0)|0;g=7;d=0;a:while(1){while(1){d=sx(j,2,d)|0;if(!d)break a;e=d+8|0;f=c[e>>2]|0;if(!(b$(f,108373)|0)){l=5;break}if(!(b$(f,108382)|0)){l=7;break}if(b$(f,108391)|0)break;rC(h,6,yx(b,d)|0)}if((l|0)==5){l=0;rC(h,2,yx(b,d)|0)}else if((l|0)==7){l=0;rC(h,5,yx(b,d)|0)}rC(i,g,c[e>>2]|0);rC(i,g+1|0,yx(b,d)|0);g=g+2|0}c[a+608>>2]=g;d=nx(ez(c[((c[b>>2]&3|0)==2?b:k)+40>>2]|0)|0,2,137973,0)|0;if(!d){d=nx(ez(c[((c[b>>2]&3|0)==2?b:k)+40>>2]|0)|0,2,108395,0)|0;if(d|0)l=13}else l=13;if((l|0)==13)c[a+588>>2]=pH(yx(b,d)|0,b)|0;return}function JP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=KP(a,b,c[d>>2]|0)|0;d=c[d+4>>2]|0;while(1){f=c[d+4>>2]|0;if(!f)break;b=0;while(1){e=c[f+(b*20|0)+4>>2]|0;if(!e)break;uC(a,c[d>>2]|0,e,c[f+(b*20|0)+8>>2]|0,g,f+(b*20|0)|0)|0;b=b+1|0}d=d+8|0}return}function KP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=vH(12)|0;if(!b)b=0;else b=n1(b)|0;c[e+4>>2]=b;c[e+8>>2]=n1(d)|0;d=a+100|0;c[e>>2]=c[d>>2];c[d>>2]=e;return e|0}function LP(b,c){b=b|0;c=c|0;MP(b);a[b+44>>0]=0;NP(b)|0;AL(b)|0;return}function MP(b){b=b|0;var d=0,e=0;d=c[b+32>>2]|0;a:do if(d|0)while(1){e=c[d>>2]|0;if(!e)break a;if((a[e>>0]|0)==103?P0(e,108427)|0:0)JP(b,0,c[d+4>>2]|0);d=d+8|0}while(0);return}function NP(a){a=a|0;var b=0;b=wC(a,2,108440)|0;if(!b)a=999;else{c[a+148>>2]=c[(c[b+16>>2]|0)+12>>2];a=300}return a|0}function OP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a=c[a+148>>2]|0;if((a|0)!=0?(e=c[a>>2]|0,(e|0)!=0):0)a=lb[e&127](b,d)|0;else a=0;return a|0}function PP(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;return (c[b>>2]|0)-(c[d>>2]|0)|0}function QP(a){a=a|0;var b=0.0,d=0.0;a=c[a+16>>2]|0;d=+h[a+16>>3];b=+h[a+24>>3];return (RP(~~(d>b?d:b)>>>0)|0)+1|0}function RP(a){a=a|0;var b=0,c=0;if(!a)a=-1;else{c=a>>>0>65535;a=c?a>>>16:a;c=c?16:0;b=a>>>0>255;a=b?a>>>8:a;c=b?c|8:c;b=a>>>0>15;a=b?a>>>4:a;c=b?c|4:c;b=a>>>0>3;a=(b?c|2:c)+((b?a>>>2:a)>>>0>1&1)|0}return a|0}function SP(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;q=r;p=TP(b,d,e,f,g)|0;e=UP(p)|0;if((e|0)>=0){n=q+16|0;o=q+24|0;m=q+8|0;k=g+32|0;e=0;g=0;while(1){if((g|0)>=(d|0))break;f=b+(g*40|0)+32|0;do if(c[f>>2]|0){VP(q,p,b+(g*40|0)|0);i=+h[n>>3];j=+h[o>>3];if(!(c[q>>2]|0)){a[(c[f>>2]|0)+36>>0]=1;break}if(+h[m>>3]==0.0){f=c[f>>2]|0;h[f+16>>3]=i;h[f+24>>3]=j;a[f+36>>0]=1;break}if((a[k>>0]|0)==1){f=c[f>>2]|0;h[f+16>>3]=i;h[f+24>>3]=j;a[f+36>>0]=1}else e=1}while(0);g=g+1|0}WP(p)}l=r;return e|0}function TP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=uH(28)|0;j=Cw(25808,c[4558]|0)|0;h=g+20|0;c[h>>2]=j;do if(j){j=CS()|0;c[g+24>>2]=j;if(!j){E1(108658,14,1,c[15686]|0)|0;i=6;break}else{c[g>>2]=a;c[g+4>>2]=b;c[g+8>>2]=d;c[g+12>>2]=e;c[g+16>>2]=f;break}}else{E1(108658,14,1,c[15686]|0)|0;i=6}while(0);if((i|0)==6){a=c[h>>2]|0;if(a|0)yw(a)|0;a=c[g+24>>2]|0;if(a|0)ES(a)|0;D_(g);g=0}return g|0}function UP(a){a=a|0;var b=0;b=dQ(a)|0;if((b|0)>=0){eQ(a);fQ(a);b=yw(c[a+20>>2]|0)|0}return b|0}function VP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,i=0.0,j=0,k=0.0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0,L=0,M=0;M=l;l=l+464|0;J=M+416|0;L=M+400|0;G=M+384|0;m=M+352|0;n=M+320|0;o=M+288|0;p=M+256|0;r=M+224|0;s=M+192|0;t=M+160|0;u=M+128|0;v=M+96|0;x=M+64|0;y=M+32|0;H=M;z=c[d+32>>2]|0;e=+h[z>>3];C=d+16|0;A=(e*2.0+ +h[C>>3])*.125;D=z+8|0;I=d+24|0;i=+h[I>>3];K=(+h[D>>3]*2.0+i)*.5;if(!z)qa(108451,108461,445,108471);f=J;g=f+36|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));B=z+16|0;h[B>>3]=+h[d>>3]-e;E=d+8|0;F=z+24|0;h[F>>3]=i+ +h[E>>3];XP(m,b,d,J);j=c[m>>2]|0;f=c[m+4>>2]|0;e=+h[m+8>>3];m=m+16|0;c[L>>2]=c[m>>2];c[L+4>>2]=c[m+4>>2];c[L+8>>2]=c[m+8>>2];c[L+12>>2]=c[m+12>>2];a:do if(!j){c[a>>2]=0;c[a+4>>2]=f;h[a+8>>3]=e;a=a+16|0;c[a>>2]=c[L>>2];c[a+4>>2]=c[L+4>>2];c[a+8>>2]=c[L+8>>2];c[a+12>>2]=c[L+12>>2]}else{h[F>>3]=+h[E>>3];XP(n,b,d,J);g=c[n>>2]|0;m=c[n+4>>2]|0;i=+h[n+8>>3];n=n+16|0;c[G>>2]=c[n>>2];c[G+4>>2]=c[n+4>>2];c[G+8>>2]=c[n+8>>2];c[G+12>>2]=c[n+12>>2];if(!g){c[a>>2]=0;c[a+4>>2]=m;h[a+8>>3]=i;a=a+16|0;c[a>>2]=c[G>>2];c[a+4>>2]=c[G+4>>2];c[a+8>>2]=c[G+8>>2];c[a+12>>2]=c[G+12>>2];break}if(i<e){c[L>>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];c[L+8>>2]=c[G+8>>2];c[L+12>>2]=c[G+12>>2];f=m;e=i}else g=j;h[F>>3]=+h[E>>3]-+h[D>>3];XP(o,b,d,J);m=c[o>>2]|0;j=c[o+4>>2]|0;i=+h[o+8>>3];o=o+16|0;c[G>>2]=c[o>>2];c[G+4>>2]=c[o+4>>2];c[G+8>>2]=c[o+8>>2];c[G+12>>2]=c[o+12>>2];if(!m){c[a>>2]=0;c[a+4>>2]=j;h[a+8>>3]=i;a=a+16|0;c[a>>2]=c[G>>2];c[a+4>>2]=c[G+4>>2];c[a+8>>2]=c[G+8>>2];c[a+12>>2]=c[G+12>>2];break}if(i<e){c[L>>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];c[L+8>>2]=c[G+8>>2];c[L+12>>2]=c[G+12>>2];f=j;e=i}else m=g;h[B>>3]=+h[d>>3];h[F>>3]=+h[I>>3]+ +h[E>>3];XP(p,b,d,J);g=c[p>>2]|0;j=c[p+4>>2]|0;i=+h[p+8>>3];p=p+16|0;c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[G+8>>2]=c[p+8>>2];c[G+12>>2]=c[p+12>>2];if(!g){c[a>>2]=0;c[a+4>>2]=j;h[a+8>>3]=i;a=a+16|0;c[a>>2]=c[G>>2];c[a+4>>2]=c[G+4>>2];c[a+8>>2]=c[G+8>>2];c[a+12>>2]=c[G+12>>2];break}if(i<e){c[L>>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];c[L+8>>2]=c[G+8>>2];c[L+12>>2]=c[G+12>>2];m=g;f=j;e=i}h[F>>3]=+h[E>>3]-+h[D>>3];XP(r,b,d,J);g=c[r>>2]|0;j=c[r+4>>2]|0;i=+h[r+8>>3];r=r+16|0;c[G>>2]=c[r>>2];c[G+4>>2]=c[r+4>>2];c[G+8>>2]=c[r+8>>2];c[G+12>>2]=c[r+12>>2];if(!g){c[a>>2]=0;c[a+4>>2]=j;h[a+8>>3]=i;a=a+16|0;c[a>>2]=c[G>>2];c[a+4>>2]=c[G+4>>2];c[a+8>>2]=c[G+8>>2];c[a+12>>2]=c[G+12>>2];break}if(i<e){c[L>>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];c[L+8>>2]=c[G+8>>2];c[L+12>>2]=c[G+12>>2];m=g;f=j;e=i}h[B>>3]=+h[C>>3]+ +h[d>>3];h[F>>3]=+h[I>>3]+ +h[E>>3];XP(s,b,d,J);g=c[s>>2]|0;j=c[s+4>>2]|0;i=+h[s+8>>3];s=s+16|0;c[G>>2]=c[s>>2];c[G+4>>2]=c[s+4>>2];c[G+8>>2]=c[s+8>>2];c[G+12>>2]=c[s+12>>2];if(!g){c[a>>2]=0;c[a+4>>2]=j;h[a+8>>3]=i;a=a+16|0;c[a>>2]=c[G>>2];c[a+4>>2]=c[G+4>>2];c[a+8>>2]=c[G+8>>2];c[a+12>>2]=c[G+12>>2];break}if(i<e){c[L>>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];c[L+8>>2]=c[G+8>>2];c[L+12>>2]=c[G+12>>2];m=g;f=j;e=i}h[F>>3]=+h[E>>3];XP(t,b,d,J);g=c[t>>2]|0;j=c[t+4>>2]|0;i=+h[t+8>>3];t=t+16|0;c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[G+8>>2]=c[t+8>>2];c[G+12>>2]=c[t+12>>2];if(!g){c[a>>2]=0;c[a+4>>2]=j;h[a+8>>3]=i;a=a+16|0;c[a>>2]=c[G>>2];c[a+4>>2]=c[G+4>>2];c[a+8>>2]=c[G+8>>2];c[a+12>>2]=c[G+12>>2];break}if(i<e){c[L>>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];c[L+8>>2]=c[G+8>>2];c[L+12>>2]=c[G+12>>2];m=g;f=j;e=i}h[F>>3]=+h[E>>3]-+h[D>>3];XP(u,b,d,J);g=c[u>>2]|0;j=c[u+4>>2]|0;i=+h[u+8>>3];u=u+16|0;c[G>>2]=c[u>>2];c[G+4>>2]=c[u+4>>2];c[G+8>>2]=c[u+8>>2];c[G+12>>2]=c[u+12>>2];if(!g){c[a>>2]=0;c[a+4>>2]=j;h[a+8>>3]=i;a=a+16|0;c[a>>2]=c[G>>2];c[a+4>>2]=c[G+4>>2];c[a+8>>2]=c[G+8>>2];c[a+12>>2]=c[G+12>>2];break}if(i<e){c[L>>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];c[L+8>>2]=c[G+8>>2];c[L+12>>2]=c[G+12>>2];f=j;e=i}else g=m;j=(c[J+28>>2]|0)==0;do if(!(c[J+24>>2]|0))if(j){if(c[J+32>>2]|0){w=38;break}if(!((c[J+12>>2]|0)==0&(c[J>>2]|0)==0))w=38}else w=46;else if(j)w=38;else w=46;while(0);b:do if((w|0)==38)if(!(c[J+32>>2]|0)){h[B>>3]=+h[d>>3]-+h[z>>3];p=v+4|0;r=v+8|0;s=v+16|0;m=F;j=E;i=+h[I>>3];c:while(1){while(1){h[m>>3]=+h[j>>3]+i;if(!(+h[B>>3]<=+h[C>>3]+ +h[d>>3])){w=46;break b}XP(v,b,d,J);n=c[v>>2]|0;o=c[p>>2]|0;k=+h[r>>3];c[G>>2]=c[s>>2];c[G+4>>2]=c[s+4>>2];c[G+8>>2]=c[s+8>>2];c[G+12>>2]=c[s+12>>2];if(!n)break c;if(k<e)break;else{m=B;j=B;i=A}}c[L>>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];c[L+8>>2]=c[G+8>>2];c[L+12>>2]=c[G+12>>2];m=B;j=B;i=A;g=n;f=o;e=k}c[a>>2]=0;c[a+4>>2]=o;h[a+8>>3]=k;a=a+16|0;c[a>>2]=c[G>>2];c[a+4>>2]=c[G+4>>2];c[a+8>>2]=c[G+8>>2];c[a+12>>2]=c[G+12>>2];break a}else w=46;while(0);d:do if((w|0)==46)if((c[J+12>>2]|0)==0&(c[J>>2]|0)==0){h[B>>3]=+h[d>>3]-+h[z>>3];k=+h[E>>3];n=x+4|0;o=x+8|0;p=x+16|0;i=k;k=+h[I>>3]+k;while(1){h[F>>3]=k;if(!(k>=i-+h[D>>3]))break d;XP(x,b,d,J);j=c[x>>2]|0;m=c[n>>2]|0;i=+h[o>>3];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[G+8>>2]=c[p+8>>2];c[G+12>>2]=c[p+12>>2];if(!j)break;if(i<e){c[L>>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];c[L+8>>2]=c[G+8>>2];c[L+12>>2]=c[G+12>>2];g=j;f=m;e=i}i=+h[E>>3];k=+h[F>>3]-K}c[a>>2]=0;c[a+4>>2]=m;h[a+8>>3]=i;a=a+16|0;c[a>>2]=c[G>>2];c[a+4>>2]=c[G+4>>2];c[a+8>>2]=c[G+8>>2];c[a+12>>2]=c[G+12>>2];break a}while(0);i=+h[d>>3];k=+h[C>>3]+i;h[B>>3]=k;q=+h[D>>3];h[F>>3]=+h[E>>3]-q;j=c[J+4>>2]|0;do if(!(c[J+8>>2]|0)){m=c[J>>2]|0;if(!((j|0)==0&(m|0)==0)){w=59;break}if(c[J+20>>2]|0){j=0;m=0;w=59;break}if(c[J+32>>2]|0){j=0;m=0;w=59}}else{m=c[J>>2]|0;w=59}while(0);e:do if((w|0)==59){f:do if((j|0)==0&(m|0)==0){h[B>>3]=k;p=y+4|0;r=y+8|0;s=y+16|0;m=F;j=E;i=q;g:while(1){while(1){h[m>>3]=+h[j>>3]-i;i=+h[d>>3];if(!(+h[B>>3]>=i-+h[z>>3]))break f;XP(y,b,d,J);n=c[y>>2]|0;o=c[p>>2]|0;k=+h[r>>3];c[G>>2]=c[s>>2];c[G+4>>2]=c[s+4>>2];c[G+8>>2]=c[s+8>>2];c[G+12>>2]=c[s+12>>2];if(!n)break g;if(k<e)break;else{m=B;j=B;i=A}}c[L>>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];c[L+8>>2]=c[G+8>>2];c[L+12>>2]=c[G+12>>2];m=B;j=B;i=A;g=n;f=o;e=k}c[a>>2]=0;c[a+4>>2]=o;h[a+8>>3]=k;a=a+16|0;c[a>>2]=c[G>>2];c[a+4>>2]=c[G+4>>2];c[a+8>>2]=c[G+8>>2];c[a+12>>2]=c[G+12>>2];break a}while(0);if(c[J+20>>2]|0)break;if(c[J+32>>2]|0)break;h[B>>3]=+h[C>>3]+i;i=+h[E>>3];n=H+4|0;o=H+8|0;p=H+16|0;k=i;i=i-+h[D>>3];while(1){h[F>>3]=i;if(!(i<=+h[I>>3]+k))break e;XP(H,b,d,J);j=c[H>>2]|0;m=c[n>>2]|0;i=+h[o>>3];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[G+8>>2]=c[p+8>>2];c[G+12>>2]=c[p+12>>2];if(!j)break;if(i<e){c[L>>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];c[L+8>>2]=c[G+8>>2];c[L+12>>2]=c[G+12>>2];g=j;f=m;e=i}k=+h[E>>3];i=+h[F>>3]+K}c[a>>2]=0;c[a+4>>2]=m;h[a+8>>3]=i;a=a+16|0;c[a>>2]=c[G>>2];c[a+4>>2]=c[G+4>>2];c[a+8>>2]=c[G+8>>2];c[a+12>>2]=c[G+12>>2];break a}while(0);c[a>>2]=g;c[a+4>>2]=f;h[a+8>>3]=e;a=a+16|0;c[a>>2]=c[L>>2];c[a+4>>2]=c[L+4>>2];c[a+8>>2]=c[L+8>>2];c[a+12>>2]=c[L+12>>2]}while(0);l=M;return}function WP(a){a=a|0;ES(c[a+24>>2]|0)|0;D_(a);return}function XP(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0;t=l;l=l+48|0;q=t+32|0;s=t+16|0;p=t;g=c[e+32>>2]|0;if(!g)qa(108451,108461,382,108480);o=g+16|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];c[p+8>>2]=c[o+8>>2];c[p+12>>2]=c[o+12>>2];o=d+4|0;m=0;g=0;while(1){if((m|0)>=(c[o>>2]|0))break;j=c[d>>2]|0;k=j+(m*40|0)|0;do if((k|0)!=(e|0)){if(+h[j+(m*40|0)+16>>3]>0.0?+h[j+(m*40|0)+24>>3]>0.0:0)break;g=g+((YP(e,k)|0)!=0&1)|0}while(0);m=m+1|0}ZP(e,q);m=c[d+24>>2]|0;m=GS(m,c[m>>2]|0,q)|0;if(!m){c[b>>2]=g;h[b+8>>3]=0.0;s=b+16|0;c[s>>2]=c[p>>2];c[s+4>>2]=c[p+4>>2];c[s+8>>2]=c[p+8>>2];c[s+12>>2]=c[p+12>>2]}else{k=m;i=0.0;while(1){if(!k)break;j=c[(c[k+4>>2]|0)+16>>2]|0;if((j|0)!=(e|0)){_P(j,s);n=+$P(q,s);if(n>0.0){g=g+1|0;i=+aQ(e,j,q,n,f)+i}d=c[j+32>>2]|0;if(((d|0)!=0?(a[d+36>>0]|0)!=0:0)?(ZP(j,s),r=+$P(q,s),r>0.0):0){g=g+1|0;i=+bQ(e,j,q,r,f)+i}}k=c[k>>2]|0}BS(m);c[b>>2]=g;h[b+8>>3]=i;s=b+16|0;c[s>>2]=c[p>>2];c[s+4>>2]=c[p+4>>2];c[s+8>>2]=c[p+8>>2];c[s+12>>2]=c[p+12>>2]}l=t;return}function YP(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0.0,g=0.0;a=c[a+32>>2]|0;if(+h[b+16>>3]==0.0?+h[b+24>>3]==0.0:0){if((((a|0)!=0?(d=+h[b>>3],e=+h[a+16>>3],d>e):0)?d<+h[a>>3]+e:0)?(f=+h[b+8>>3],g=+h[a+24>>3],f>g):0)a=f<+h[a+8>>3]+g&1;else a=0;return a|0}qa(108517,108461,219,108554);return 0}function ZP(a,b){a=a|0;b=b|0;var d=0.0,e=0.0;a=c[a+32>>2]|0;e=+h[a+16>>3];c[b>>2]=~~e;d=+h[a+24>>3];c[b+4>>2]=~~d;c[b+8>>2]=~~(+h[a>>3]+e);c[b+12>>2]=~~(+h[a+8>>3]+d);return}function _P(a,b){a=a|0;b=b|0;var d=0.0,e=0.0;e=+h[a>>3];c[b>>2]=~~e;d=+h[a+8>>3];c[b+4>>2]=~~d;c[b+8>>2]=~~(+h[a+16>>3]+e);c[b+12>>2]=~~(+h[a+24>>3]+d);return}function $P(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=c[a+8>>2]|0;j=c[b>>2]|0;if((((i|0)>=(j|0)?(k=c[a>>2]|0,l=c[b+8>>2]|0,(k|0)<=(l|0)):0)?(e=c[a+12>>2]|0,f=c[b+4>>2]|0,(e|0)>=(f|0)):0)?(g=c[a+4>>2]|0,h=c[b+12>>2]|0,(g|0)<=(h|0)):0)d=(+(c[((e|0)<(h|0)?a:b)+12>>2]|0)-+(c[((g|0)>(f|0)?a:b)+4>>2]|0))*(+(c[((i|0)<(l|0)?a:b)+8>>2]|0)-+(c[((k|0)>(j|0)?a:b)>>2]|0));else d=0.0;return +d}function aQ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;var g=0.0,h=0.0,i=0,j=0;j=l;l=l+16|0;i=j;a=cQ(a,b)|0;f=f+(((a|0)<0?5:a)<<2)|0;a=c[f>>2]|0;if(!a){c[f>>2]=b;g=e}else{_P(a,i);g=+$P(d,i);g=g>e?g:0.0;a=c[f>>2]|0;if((c[a+32>>2]|0)!=0?(ZP(a,i),h=+$P(d,i),h>e):0)g=h>g?h:g;if(!(g>0.0)){c[f>>2]=b;g=e}}l=j;return +g}function bQ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;var g=0.0,h=0.0,i=0,j=0;j=l;l=l+16|0;i=j;a=cQ(a,b)|0;f=f+(((a|0)<0?5:a)<<2)|0;a=c[f>>2]|0;if(!a){c[f>>2]=b;g=e}else{_P(a,i);g=+$P(d,i);g=g>e?g:0.0;a=c[f>>2]|0;if((c[a+32>>2]|0)!=0?(ZP(a,i),h=+$P(d,i),h>e):0)g=h>g?h:g;if(!(g>0.0)){c[f>>2]=b;g=e}}l=j;return +g}function cQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0.0,j=0.0,k=0.0;e=c[b+32>>2]|0;f=c[d+32>>2]|0;if((e|0)==(f|0))qa(108496,108461,276,108506);do if((a[e+36>>0]|0)!=0?(a[f+36>>0]|0)!=0:0){j=+h[b>>3];if(j==0.0?+h[b+8>>3]==0.0:0){e=-1;break}k=+h[d>>3];i=+h[d+8>>3];if(!(k==0.0&i==0.0)){g=+h[b+8>>3];if(i<g){if(k<j){e=0;break}e=k>j?2:1;break}e=k<j;if(i>g){if(e){e=6;break}e=k>j?8:7;break}if(!e)if(k>j)e=5;else e=-1;else e=3}else e=-1}else e=-1;while(0);return e|0}function dQ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+32|0;d=k+24|0;e=k+16|0;f=k;g=QP(a)|0;h=a+4|0;i=e+4|0;j=a+20|0;b=0;while(1){if((b|0)>=(c[h>>2]|0)){b=0;break}m=uH(32)|0;o=(c[a>>2]|0)+(b*40|0)|0;n=m+12|0;c[m+28>>2]=o;gQ(f,o);c[n>>2]=c[f>>2];c[n+4>>2]=c[f+4>>2];c[n+8>>2]=c[f+8>>2];c[n+12>>2]=c[f+12>>2];n=c[n>>2]|0;c[e>>2]=(((c[m+20>>2]|0)-n|0)/2|0)+n;n=c[m+16>>2]|0;c[i>>2]=(((c[m+24>>2]|0)-n|0)/2|0)+n;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[m+8>>2]=hQ(d,g)|0;n=c[j>>2]|0;if(!(nb[c[n>>2]&63](n,m,1)|0)){b=-1;break}else b=b+1|0}l=k;return b|0}function eQ(a){a=a|0;var b=0,d=0,e=0;d=a+20|0;e=c[d>>2]|0;b=a+24|0;a=nb[c[e>>2]&63](e,0,128)|0;while(1){if(!a)break;e=c[b>>2]|0;HS(e,a+12|0,c[a+28>>2]|0,e,0)|0;e=c[d>>2]|0;a=nb[c[e>>2]&63](e,a,8)|0}return}function fQ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;e=a+20|0;f=Ew(c[e>>2]|0)|0;d=0;while(1){if(!(Ew(c[e>>2]|0)|0))break;g=c[e>>2]|0;a=c[(c[g+8>>2]|0)+4>>2]|0;if(!a){h=8;break}b=c[(c[g+4>>2]|0)+8>>2]|0;if((b|0)<0)a=c[a+8>>2]|0;else a=a+(0-b)|0;if(!a){h=8;break}nb[c[g>>2]&63](g,a,4096)|0;D_(a);d=d+1|0}if((h|0)==8)qa(108567,108461,616,108570);if((f|0)==(d|0))return;else qa(108582,108461,623,108570)}function gQ(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0,g=0.0,i=0,j=0,k=0,l=0.0;d=c[b+32>>2]|0;if(!d){e=0.0;f=0.0}else{e=+h[d>>3];f=+h[d+8>>3]}l=+h[b>>3];k=~~+A(+(l-e));g=+h[b+8>>3];j=~~+A(+(g-f));i=~~+N(+(l+e+ +h[b+16>>3]));if((i|0)==2147483647)qa(108594,108461,264,108621);d=~~+N(+(g+f+ +h[b+24>>3]));if((d|0)==2147483647)qa(108631,108461,266,108621);else{c[a>>2]=k;c[a+4>>2]=j;c[a+8>>2]=i;c[a+12>>2]=d;return}}function hQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;f=0;e=c[a>>2]|0;d=c[a+4>>2]|0;while(1){a=b+-1|0;if((b|0)<=0)break;i=e>>>a&1;b=d>>>a&1;g=b+-1|0;h=g&(e^d);g=g&0-i;f=i<<1|f<<2|i^b;b=a;e=h^e^g;d=h^d^g}return f|0}function iQ(b){b=b|0;var d=0,e=0,f=0,g=0;d=W_(b)|0;if(d>>>0>=(c[46595]|0)>>>0){d=d+11|0;c[46595]=d;d=xH(c[46596]|0,d)|0;c[46596]=d;if(!d)d=0;else e=4}else{d=c[46596]|0;e=4}if((e|0)==4){g=d;while(1){e=a[b>>0]|0;if(!(e<<24>>24))break;f=e&255;if(Q$(f)|0)e=(P$(f)|0)&255;a[g>>0]=e;g=g+1|0;b=b+1|0}a[g>>0]=0}return d|0}function jQ(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0;F=l;l=l+144|0;s=F+96|0;p=F+80|0;v=F+124|0;t=F+72|0;w=F+64|0;x=F+56|0;C=F+48|0;D=F+40|0;E=F+32|0;y=F+24|0;z=F+16|0;A=F+8|0;B=F;i=F+120|0;m=F+116|0;n=F+112|0;o=F+108|0;c[e+32>>2]=f;r=b;while(1)if((a[r>>0]|0)==32)r=r+1|0;else break;c[o>>2]=255;b=a[r>>0]|0;a:do if(b<<24>>24==35){c[p>>2]=i;c[p+4>>2]=m;c[p+8>>2]=n;c[p+12>>2]=o;if((N1(r,108673,p)|0)<=2){b=a[r>>0]|0;q=12;break}switch(f|0){case 0:{G=+((c[i>>2]|0)>>>0)*.00392156862745098;h[C>>3]=G;g=+((c[m>>2]|0)>>>0)*.00392156862745098;h[D>>3]=g;j=+((c[n>>2]|0)>>>0)*.00392156862745098;h[E>>3]=j;k=+((c[o>>2]|0)>>>0)*.00392156862745098;kQ(G,g,j,t,w,x);h[e>>3]=+h[t>>3];h[e+8>>3]=+h[w>>3];h[e+16>>3]=+h[x>>3];h[e+24>>3]=k;b=0;break a}case 1:{a[e>>0]=c[i>>2];a[e+1>>0]=c[m>>2];a[e+2>>0]=c[n>>2];a[e+3>>0]=c[o>>2];b=0;break a}case 3:{j=+((c[i>>2]|0)>>>0)*.00392156862745098;h[C>>3]=j;k=+((c[m>>2]|0)>>>0)*.00392156862745098;h[D>>3]=k;G=+((c[n>>2]|0)>>>0)*.00392156862745098;h[E>>3]=G;lQ(j,k,G,y,z,A,B);a[e>>0]=~~+h[y>>3]*255;a[e+1>>0]=~~+h[z>>3]*255;a[e+2>>0]=~~+h[A>>3]*255;a[e+3>>0]=~~+h[B>>3]*255;b=0;break a}case 2:{c[e>>2]=(((c[i>>2]|0)*65535|0)>>>0)/255|0;c[e+4>>2]=(((c[m>>2]|0)*65535|0)>>>0)/255|0;c[e+8>>2]=(((c[n>>2]|0)*65535|0)>>>0)/255|0;c[e+12>>2]=(((c[o>>2]|0)*65535|0)>>>0)/255|0;b=0;break a}case 4:{h[e>>3]=+((c[i>>2]|0)>>>0)*.00392156862745098;h[e+8>>3]=+((c[m>>2]|0)>>>0)*.00392156862745098;h[e+16>>3]=+((c[n>>2]|0)>>>0)*.00392156862745098;h[e+24>>3]=+((c[o>>2]|0)>>>0)*.00392156862745098;b=0;break a}default:{b=0;break a}}}else q=12;while(0);b:do if((q|0)==12){if(!(b<<24>>24!=46?((b&255)+-48|0)>>>0>=10:0)){b=W_(r)|0;if(b>>>0>=(c[46597]|0)>>>0){b=b+11|0;c[46597]=b;b=xH(c[46598]|0,b)|0;c[46598]=b;if(!b){b=-1;break}}else b=c[46598]|0;m=b;i=r;c:while(1){n=i+1|0;i=a[i>>0]|0;switch(i<<24>>24){case 0:break c;case 44:{i=32;break}default:{}}a[m>>0]=i;m=m+1|0;i=n}a[m>>0]=0;c[s>>2]=t;c[s+4>>2]=w;c[s+8>>2]=x;if((N1(b,108687,s)|0)==3){k=+h[t>>3];k=k<1.0?k:1.0;k=k>0.0?k:0.0;h[t>>3]=k;j=+h[w>>3];j=j<1.0?j:1.0;j=j>0.0?j:0.0;h[w>>3]=j;g=+h[x>>3];g=g<1.0?g:1.0;g=g>0.0?g:0.0;h[x>>3]=g;switch(f|0){case 0:{h[e>>3]=k;h[e+8>>3]=j;h[e+16>>3]=g;h[e+24>>3]=1.0;b=0;break b}case 1:{mQ(k,j,g,C,D,E);a[e>>0]=~~(+h[C>>3]*255.0);a[e+1>>0]=~~(+h[D>>3]*255.0);a[e+2>>0]=~~(+h[E>>3]*255.0);a[e+3>>0]=-1;b=0;break b}case 3:{mQ(k,j,g,C,D,E);lQ(+h[C>>3],+h[D>>3],+h[E>>3],y,z,A,B);a[e>>0]=~~+h[y>>3]*255;a[e+1>>0]=~~+h[z>>3]*255;a[e+2>>0]=~~+h[A>>3]*255;a[e+3>>0]=~~+h[B>>3]*255;b=0;break b}case 2:{mQ(k,j,g,C,D,E);c[e>>2]=~~(+h[C>>3]*65535.0);c[e+4>>2]=~~(+h[D>>3]*65535.0);c[e+8>>2]=~~(+h[E>>3]*65535.0);c[e+12>>2]=65535;b=0;break b}case 4:{mQ(k,j,g,C,D,E);h[e>>3]=+h[C>>3];h[e+8>>3]=+h[D>>3];h[e+16>>3]=+h[E>>3];h[e+24>>3]=1.0;b=0;break b}default:{b=0;break b}}}}i=nQ(r)|0;c[v>>2]=i;if(!i)b=-1;else{b=c[46599]|0;if(!(((b|0)!=0?(u=c[b>>2]|0,(a[u>>0]|0)==(a[i>>0]|0)):0)?(b$(u,i)|0)==0:0)){b=e2(v,25844,2491,12,101)|0;c[46599]=b;if(!b)switch(f|0){case 0:{c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;h[e+24>>3]=1.0;b=1;break b}case 1:{a[e+2>>0]=0;a[e+1>>0]=0;a[e>>0]=0;a[e+3>>0]=-1;b=1;break b}case 3:{c[e>>2]=0;b=1;break b}case 2:{c[e+8>>2]=0;c[e+4>>2]=0;c[e>>2]=0;c[e+12>>2]=65535;b=1;break b}case 4:{c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;h[e+24>>3]=1.0;b=1;break b}default:{b=1;break b}}}switch(f|0){case 0:{h[e>>3]=+(d[b+4>>0]|0)*.00392156862745098;h[e+8>>3]=+(d[b+5>>0]|0)*.00392156862745098;h[e+16>>3]=+(d[b+6>>0]|0)*.00392156862745098;h[e+24>>3]=+(d[b+10>>0]|0)*.00392156862745098;b=0;break b}case 1:{a[e>>0]=a[b+7>>0]|0;a[e+1>>0]=a[b+8>>0]|0;a[e+2>>0]=a[b+9>>0]|0;a[e+3>>0]=a[b+10>>0]|0;b=0;break b}case 3:{j=+(d[b+7>>0]|0)*.00392156862745098;h[C>>3]=j;k=+(d[b+8>>0]|0)*.00392156862745098;h[D>>3]=k;G=+(d[b+9>>0]|0)*.00392156862745098;h[E>>3]=G;lQ(j,k,G,y,z,A,B);a[e>>0]=~~+h[y>>3]*255;a[e+1>>0]=~~+h[z>>3]*255;a[e+2>>0]=~~+h[A>>3]*255;a[e+3>>0]=~~+h[B>>3]*255;b=0;break b}case 2:{c[e>>2]=(d[b+7>>0]|0)*257;c[e+4>>2]=(d[b+8>>0]|0)*257;c[e+8>>2]=(d[b+9>>0]|0)*257;c[e+12>>2]=(d[b+10>>0]|0)*257;b=0;break b}case 4:{h[e>>3]=+(d[b+7>>0]|0)*.00392156862745098;h[e+8>>3]=+(d[b+8>>0]|0)*.00392156862745098;h[e+16>>3]=+(d[b+9>>0]|0)*.00392156862745098;h[e+24>>3]=+(d[b+10>>0]|0)*.00392156862745098;b=0;break b}default:{b=0;break b}}}}while(0);l=F;return b|0}function kQ(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var g=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;i=b<c?b:c;m=b>c?b:c;m=m<a?a:m;i=m-(i>a?a:i);g=i/m;if(m>0.0)if(g>0.0){j=(m-a)/i;k=(m-b)/i;l=(m-c)/i;do if(!(m==a)){if(m==b){a=j+2.0-l;break}if(m==c)a=k+4.0-j;else a=0.0}else a=(b-c)/i;while(0);a=a*60.0;if(a<0.0)a=a+360.0}else a=0.0;else{g=0.0;a=0.0}h[d>>3]=a*.002777777777777778;h[f>>3]=m;h[e>>3]=g;return}function lQ(a,b,c,d,e,f,g){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h[d>>3]=1.0-a;h[e>>3]=1.0-b;h[f>>3]=1.0-c;b=+h[d>>3];c=+h[e>>3];c=b<c?b:c;h[g>>3]=c;b=+h[f>>3];c=b<c?b:c;h[g>>3]=c;h[d>>3]=+h[d>>3]-c;h[e>>3]=+h[e>>3]-+h[g>>3];h[f>>3]=+h[f>>3]-+h[g>>3];return}function mQ(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var g=0.0,i=0.0,j=0.0,k=0,l=0;a:do if(!(b<=0.0)){i=!(a>=1.0)?a*6.0:0.0;l=~~i;i=i-+(l|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(l|0){case 0:{g=a;i=b;a=c;k=8;break a}case 1:{g=a;i=c;a=j;k=8;break a}case 2:{g=b;i=c;k=8;break a}case 3:{g=c;i=j;k=8;break a}case 4:{g=c;i=a;a=b;k=8;break a}case 5:{g=j;i=a;a=c;k=8;break a}default:break a}}else{g=c;i=c;a=c;k=8}while(0);if((k|0)==8){h[d>>3]=a;h[e>>3]=i;h[f>>3]=g}return}function nQ(b){b=b|0;var d=0,e=0;d=a[b>>0]|0;if(((d<<24>>24!=98?(e=b+1|0,!(d<<24>>24==119|(z$(e,134184,4)|0)==0)):0)?!(d<<24>>24==108|(z$(e,134189,4)|0)==0):0)?(z$(e,134194,8)|0)!=0:0){do if(d<<24>>24==47){d=A$(e,47)|0;if(!d)b=e;else{if((a[e>>0]|0)!=47){e=(V$(134203,e,4)|0)==0;b=e?d+1|0:b;break}d=c[46600]|0;if((d|0?a[d>>0]|0:0)?V$(134203,d,3)|0:0){b=pQ(d,b+2|0)|0;break}b=b+2|0}}else{d=c[46600]|0;if(((d|0)!=0?(a[d>>0]|0)!=0:0)?(V$(134203,d,3)|0)!=0:0)b=pQ(d,b)|0}while(0);b=iQ(b)|0}return b|0}function oQ(a,b){a=a|0;b=b|0;return O$(c[a>>2]|0,c[b>>2]|0)|0}function pQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=W_(a)|0;g=(W_(b)|0)+g|0;d=g+13|0;if((g+3|0)>>>0<(c[46601]|0)>>>0)d=c[46602]|0;else{c[46601]=d;d=xH(c[46602]|0,d)|0;c[46602]=d}c[e>>2]=a;c[e+4>>2]=b;Y0(d,134208,e)|0;l=f;return c[46602]|0}function qQ(a){a=a|0;c[46600]=a;return}function rQ(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,g=0;f=l;l=l+208|0;g=f;sQ(g,+h[a>>3],+h[a+8>>3],b,c,d,e);a=tQ(g)|0;l=f;return a|0}function sQ(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;var i=0,j=0;h[a>>3]=b;h[a+8>>3]=c;j=a+16|0;h[j>>3]=d;i=a+24|0;h[i>>3]=e;h[a+32>>3]=0.0;c=+K(+(+F(+f)/e),+(+E(+f)/d));h[a+56>>3]=c;e=+K(+(+F(+g)/e),+(+E(+g)/d));h[a+40>>3]=1.0;h[a+48>>3]=0.0;e=e-+A(+((e-c)*.15915494309189535))*6.283185307179586;h[a+64>>3]=g-f>3.141592653589793&e-c<3.141592653589793?e+6.283185307179586:e;zQ(a);AQ(a);BQ(a);g=+h[j>>3];g=(g-+h[i>>3])/g;h[a+168>>3]=g;h[a+176>>3]=(2.0-g)*g;g=1.0-g;h[a+184>>3]=g;h[a+192>>3]=g*g;return}function tQ(a){a=a|0;var b=0,c=0.0,d=0,e=0.0,f=0.0,g=0.0,i=0.0,j=0,k=0,l=0,m=0,n=0.0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0;q=uH(8)|0;f=+h[a+56>>3];e=+h[a+64>>3]-f;p=1;b=0;while(1){o=e/+(p|0);if(!(b<<24>>24==0&(p|0)<1024))break;a:do if(!(o<=1.5707963267948966))b=0;else{c=f;d=0;b=1;while(1){if(!(b<<24>>24!=0&(d|0)<(p|0)))break a;n=c+o;b=+uQ(a,c,n)<=1.0e-05&1;c=n;d=d+1|0}}while(0);p=p<<1}i=+E(+f);u=+F(+f);d=a+16|0;s=+h[d>>3];v=s*i;j=a+24|0;c=+h[j>>3];g=c*u;i=c*i;c=+h[a>>3];k=a+40|0;t=+h[k>>3];l=a+48|0;r=+h[l>>3];e=t*v+c-r*g;m=a+8|0;n=+h[m>>3];g=r*v+t*g+n;s=-(u*s);vQ(q,c,n);wQ(q,e,g);n=+G(+(o*.5));n=+F(+o)*.3333333333333333*(+C(+(n*n*3.0+4.0))+-1.0);c=f;f=g;g=r*s+t*i;i=t*s-r*i;b=0;while(1){if((b|0)>=(p|0))break;r=c+o;u=+E(+r);v=+F(+r);x=+h[d>>3];z=x*u;w=+h[j>>3];t=w*v;u=w*u;w=+h[k>>3];y=+h[l>>3];s=w*z+ +h[a>>3]-y*t;t=y*z+w*t+ +h[m>>3];x=-(v*x);v=w*x-y*u;u=y*x+w*u;xQ(q,e+i*n,f+g*n,s-v*n,t-u*n,s,t);c=r;e=s;f=t;g=u;i=v;b=b+1|0}yQ(q);return q|0}function uQ(a,b,c){a=a|0;b=+b;c=+c;var d=0.0,e=0.0,f=0.0,g=0.0,i=0.0;d=c+b;i=+h[a+16>>3];e=+h[a+24>>3]/i;g=+E(+d);f=+E(+(d*2.0));d=+E(+(d*3.0));a=e<.25?10392:10648;return +(((e*.001+4.98)*e+.207)/(e+.0067)*i*+L(+(((+h[a+32>>3]*e+ +h[a+40>>3])*e+ +h[a+48>>3])/(+h[a+56>>3]+e)*g+((+h[a>>3]*e+ +h[a+8>>3])*e+ +h[a+16>>3])/(+h[a+24>>3]+e)+((+h[a+64>>3]*e+ +h[a+72>>3])*e+ +h[a+80>>3])/(+h[a+88>>3]+e)*f+((+h[a+96>>3]*e+ +h[a+104>>3])*e+ +h[a+112>>3])/(+h[a+120>>3]+e)*d+(((+h[a+160>>3]*e+ +h[a+168>>3])*e+ +h[a+176>>3])/(+h[a+184>>3]+e)*g+((+h[a+128>>3]*e+ +h[a+136>>3])*e+ +h[a+144>>3])/(+h[a+152>>3]+e)+((+h[a+192>>3]*e+ +h[a+200>>3])*e+ +h[a+208>>3])/(+h[a+216>>3]+e)*f+((+h[a+224>>3]*e+ +h[a+232>>3])*e+ +h[a+240>>3])/(+h[a+248>>3]+e)*d)*(c-b))))}function vQ(a,b,d){a=a|0;b=+b;d=+d;var e=0;c[46603]=100;e=uH(1600)|0;c[a>>2]=e;h[e>>3]=b;h[e+8>>3]=d;c[a+4>>2]=1;return}function wQ(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0;f=c[a>>2]|0;e=(c[a+4>>2]|0)+-1|0;xQ(a,+h[f+(e<<4)>>3],+h[f+(e<<4)+8>>3],b,d,b,d);return}function xQ(a,b,d,e,f,g,i){a=a|0;b=+b;d=+d;e=+e;f=+f;g=+g;i=+i;var j=0,k=0,l=0,m=0;l=a+4|0;j=c[l>>2]|0;k=c[46603]|0;if((j+3|0)<(k|0))a=c[a>>2]|0;else{c[46603]=k<<1;j=F_(c[a>>2]|0,k<<5)|0;c[a>>2]=j;a=j;j=c[l>>2]|0}h[a+(j<<4)>>3]=b;m=j+1|0;h[a+(j<<4)+8>>3]=d;h[a+(m<<4)>>3]=e;k=j+2|0;h[a+(m<<4)+8>>3]=f;h[a+(k<<4)>>3]=g;c[l>>2]=j+3;h[a+(k<<4)+8>>3]=i;return}function yQ(a){a=a|0;var b=0;b=c[a>>2]|0;wQ(a,+h[b>>3],+h[b+8>>3]);c[a>>2]=F_(c[a>>2]|0,c[a+4>>2]<<4)|0;c[46603]=0;return}function zQ(a){a=a|0;var b=0.0,c=0.0,d=0.0,e=0.0;d=+h[a+16>>3];b=+h[a+24>>3];b=+C(+(d*d-b*b));d=b*+h[a+40>>3];b=b*+h[a+48>>3];e=+h[a>>3];h[a+104>>3]=e-d;c=+h[a+8>>3];h[a+112>>3]=c-b;h[a+120>>3]=e+d;h[a+128>>3]=c+b;return}function AQ(a){a=a|0;var b=0.0,c=0.0,d=0.0,e=0.0,f=0.0,g=0.0,i=0.0,j=0.0;d=+h[a+16>>3];i=+h[a+56>>3];j=+E(+i)*d;b=+h[a+24>>3];i=+F(+i)*b;g=+h[a+64>>3];d=+E(+g)*d;b=+F(+g)*b;g=+h[a>>3];c=+h[a+40>>3];e=+h[a+48>>3];h[a+72>>3]=c*j+g-e*i;f=+h[a+8>>3];h[a+80>>3]=e*j+f+c*i;h[a+88>>3]=g+c*d-e*b;h[a+96>>3]=f+e*d+c*b;return}function BQ(a){a=a|0;var b=0.0,c=0.0,d=0.0,e=0.0,f=0.0,g=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0;k=+h[a+24>>3];l=+h[a+16>>3];e=k/l;m=+h[a+48>>3];n=+B(+m)<.1;j=+h[a+40>>3];do if(n){b=m/j;c=+J(+(b*e));d=-c;if(j<0.0){b=+J(+(b/e));e=d;d=3.141592653589793-c;c=4.71238898038469-b;b=1.5707963267948966-b;break}else{b=+J(+(b/e));e=-3.141592653589793-c;c=1.5707963267948966-b;b=-1.5707963267948966-b;break}}else{b=j/m;c=+J(+(b/e));d=c+1.5707963267948966;if(m<0.0){b=+J(+(b*e));e=c+-1.5707963267948966;c=b+3.141592653589793;break}else{b=+J(+(b*e));e=d;d=c+4.71238898038469;c=b;b=b+-3.141592653589793;break}}while(0);g=+h[a+56>>3];e=e-+A(+((e-g)*.15915494309189535))*6.283185307179586;b=b-+A(+((b-g)*.15915494309189535))*6.283185307179586;f=d-+A(+((d-g)*.15915494309189535))*6.283185307179586;g=c-+A(+((c-g)*.15915494309189535))*6.283185307179586;i=+h[a+64>>3];if(!(e<=i)){e=+h[a+72>>3];c=+h[a+88>>3];c=e<c?e:c}else c=+E(+e)*l*j+ +h[a>>3]-k*+F(+e)*m;h[a+136>>3]=c;if(!(b<=i)){e=+h[a+80>>3];d=+h[a+96>>3];d=e<d?e:d}else d=+E(+b)*l*m+ +h[a+8>>3]+ +F(+b)*k*j;h[a+144>>3]=d;if(!(f<=i)){f=+h[a+72>>3];b=+h[a+88>>3];b=f>b?f:b}else b=+E(+f)*l*j+ +h[a>>3]-k*+F(+f)*m;h[a+152>>3]=b-c;if(!(g<=i)){m=+h[a+80>>3];b=+h[a+96>>3];b=m>b?m:b}else b=+E(+g)*l*m+ +h[a+8>>3]+ +F(+g)*k*j;h[a+160>>3]=b-d;return}function CQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0,j=0,k=0.0,m=0,n=0;n=l;l=l+80|0;m=n;DQ(b);k=+h[e+56>>3];g=+h[e+64>>3];switch(a[e+80>>0]|0){case 116:{g=(+h[e+48>>3]-+EQ(d))*.5+g;f=4;break}case 98:{g=g-(+h[e+48>>3]-+EQ(d))*.5;f=4;break}default:{}}if((f|0)==4)g=g+-1.0;h[m>>3]=k;h[m+8>>3]=g;c[m+20>>2]=c[e+8>>2];c[m+16>>2]=c[e+4>>2];h[m+32>>3]=+h[e+16>>3];j=b+16|0;f=xx(c[(c[j>>2]|0)+8>>2]|0,134215)|0;e=m+56|0;c[e>>2]=f;i=m+60|0;c[i>>2]=c[(c[j>>2]|0)+212>>2];j=m+64|0;a[j>>0]=0;if(!((f|0)!=0?(a[f>>0]|0)!=0:0))c[e>>2]=134226;if((a[d+4>>0]|0)==1){e=c[d>>2]|0;YO(b,c[(c[b>>2]|0)+336>>2]|0);f=c[e+24>>2]|0;if(!f)UO(b,134232);else UO(b,f);GQ(b,e,m);if(a[j>>0]|0)D_(c[i>>2]|0)}else FQ(b,c[d>>2]|0,m);HQ(b);l=n;return}function DQ(a){a=a|0;var d=0,e=0,f=0;d=NE(a)|0;e=c[d>>2]|0;a=c[e+4>>2]|0;c[d+4>>2]=a;c[d+12>>2]=c[e+12>>2];switch(a|0){case 2:{a=e+8|0;f=6;break}case 0:{a=e+8|0;f=6;break}case 1:{a=e+8|0;f=6;break}case 3:{a=e+8|0;f=6;break}default:{}}if((f|0)==6)c[d+8>>2]=c[a>>2];c[d+208>>2]=c[e+208>>2];c[d+228>>2]=c[e+228>>2];c[d+244>>2]=c[e+244>>2];f=d+260|0;b[f>>1]=b[f>>1]&-2|b[e+260>>1]&1;return}function EQ(b){b=b|0;var d=0.0,e=0,f=0;switch(a[b+4>>0]|0){case 1:{e=c[b>>2]|0;b=e+72|0;e=e+56|0;f=5;break}case 3:{e=c[b>>2]|0;b=e+24|0;e=e+8|0;f=5;break}case 2:{e=c[b>>2]|0;b=e+32|0;e=e+16|0;f=5;break}default:d=0.0}if((f|0)==5)d=+h[b>>3]-+h[e>>3];return +d}function FQ(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0,q=0,r=0,s=0;n=l;l=l+96|0;j=n+64|0;i=n+32|0;g=n+16|0;k=n;m=b[e+4>>1]|0;if(m<<16>>16>=1){r=e+8|0;p=+h[e+24>>3];o=+h[r>>3];h[k>>3]=(o+p)*.5+ +h[f>>3];h[k+8>>3]=(+h[e+16>>3]+ +h[e+32>>3])*.5+ +h[f+8>>3];q=c[e>>2]|0;s=f+16|0;f=a[e+6>>0]|0;c[g>>2]=c[k>>2];c[g+4>>2]=c[k+4>>2];c[g+8>>2]=c[k+8>>2];c[g+12>>2]=c[k+12>>2];c[i>>2]=c[s>>2];c[i+4>>2]=c[s+4>>2];c[i+8>>2]=c[s+8>>2];c[i+12>>2]=c[s+12>>2];c[i+16>>2]=c[s+16>>2];c[i+20>>2]=c[s+20>>2];c[i+24>>2]=c[s+24>>2];c[i+28>>2]=c[s+28>>2];c[j>>2]=c[r>>2];c[j+4>>2]=c[r+4>>2];c[j+8>>2]=c[r+8>>2];c[j+12>>2]=c[r+12>>2];c[j+16>>2]=c[r+16>>2];c[j+20>>2]=c[r+20>>2];c[j+24>>2]=c[r+24>>2];c[j+28>>2]=c[r+28>>2];TQ(d,m<<16>>16,q,g,(p-o)*.5,i,j,f)}l=n;return}function GQ(e,f,g){e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+176|0;t=y+96|0;v=y+64|0;w=y+136|0;p=y;q=y+128|0;r=f+48|0;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];c[v+12>>2]=c[r+12>>2];c[v+16>>2]=c[r+16>>2];c[v+20>>2]=c[r+20>>2];c[v+24>>2]=c[r+24>>2];c[v+28>>2]=c[r+28>>2];m=+h[g>>3];n=+h[g+8>>3];r=f+84|0;i=c[r>>2]|0;if(!(c[f>>2]|0))x=(c[f+8>>2]|0)!=0;else x=1;u=f+108|0;j=c[u>>2]|0;if(j|0)IQ(g,j,183464);h[v>>3]=+h[v>>3]+m;s=v+16|0;h[s>>3]=+h[s>>3]+m;s=v+8|0;h[s>>3]=+h[s>>3]+n;s=v+24|0;h[s>>3]=+h[s>>3]+n;if(x?(c[e+152>>2]&4|0)==0:0){c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];c[t+8>>2]=c[v+8>>2];c[t+12>>2]=c[v+12>>2];c[t+16>>2]=c[v+16>>2];c[t+20>>2]=c[v+20>>2];c[t+24>>2]=c[v+24>>2];c[t+28>>2]=c[v+28>>2];s=JQ(e,g,f,t,w)|0}else s=0;o=f+42|0;j=b[o>>1]|0;if(!(j&32)){k=c[f+20>>2]|0;if(k){j=KQ(e,k,c[f+28>>2]|0,j&65535,q)|0;if(!(b[o>>1]&4)){c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];c[t+8>>2]=c[v+8>>2];c[t+12>>2]=c[v+12>>2];c[t+16>>2]=c[v+16>>2];c[t+20>>2]=c[v+20>>2];c[t+24>>2]=c[v+24>>2];c[t+28>>2]=c[v+28>>2];$O(e,t,j)}else{o=d[f+33>>0]|0;c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];c[t+8>>2]=c[v+8>>2];c[t+12>>2]=c[v+12>>2];c[t+16>>2]=c[v+16>>2];c[t+20>>2]=c[v+20>>2];c[t+24>>2]=c[v+24>>2];c[t+28>>2]=c[v+28>>2];EJ(e,LQ(p,t,o)|0,4,4,j)}D_(c[q>>2]|0)}while(1){j=c[i>>2]|0;if(!j)break;MQ(e,j,g);i=i+4|0}i=c[r>>2]|0;fP(e,1.0);j=f+24|0;while(1){k=i+4|0;i=c[i>>2]|0;if(!i)break;if(!(a[i+100>>0]|0)){i=k;continue}NQ(e,i,g,c[j>>2]|0,c[k>>2]|0);i=k}if(a[f+33>>0]|0){c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];c[t+8>>2]=c[v+8>>2];c[t+12>>2]=c[v+12>>2];c[t+16>>2]=c[v+16>>2];c[t+20>>2]=c[v+20>>2];c[t+24>>2]=c[v+24>>2];c[t+28>>2]=c[v+28>>2];OQ(e,f,t)}}if(s|0)PQ(e,w);if((x?c[e+152>>2]&4|0:0)?(c[t>>2]=c[v>>2],c[t+4>>2]=c[v+4>>2],c[t+8>>2]=c[v+8>>2],c[t+12>>2]=c[v+12>>2],c[t+16>>2]=c[v+16>>2],c[t+20>>2]=c[v+20>>2],c[t+24>>2]=c[v+24>>2],c[t+28>>2]=c[v+28>>2],JQ(e,g,f,t,w)|0):0)PQ(e,w);if(c[u>>2]|0)QQ(g,183464);l=y;return}function HQ(a){a=a|0;var b=0;b=c[a+16>>2]|0;c[b+208>>2]=0;c[b+228>>2]=0;c[b+244>>2]=0;c[b+212>>2]=0;OE(a);return}function IQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,i=0;i=a+16|0;f=c[i>>2]|0;if(f|0){if(!(c[b>>2]|0)){f=0;g=d}else{c[d>>2]=f;f=c[b>>2]|0;g=i}c[g>>2]=f}f=c[a+20>>2]|0;if(f|0){g=b+4|0;if(!(c[g>>2]|0)){f=0;g=d}else{c[d+4>>2]=f;f=c[g>>2]|0;g=i}c[g+4>>2]=f}e=+h[a+32>>3];if(e>=0.0){f=b+16|0;if(!(+h[f>>3]>=0.0))e=-1.0;else{h[d+16>>3]=e;e=+h[f>>3];d=i}h[d+16>>3]=e}return}function JQ(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+224|0;n=u+8|0;k=u;t=u+40|0;j=u+184|0;i=u+56|0;m=c[d+16>>2]|0;o=m+208|0;c[h>>2]=c[o>>2];p=m+228|0;c[h+4>>2]=c[p>>2];q=m+244|0;c[h+8>>2]=c[q>>2];r=m+212|0;c[h+12>>2]=c[r>>2];s=m+260|0;a[h+16>>0]=(b[s>>1]<<15&65535)<<16>>16>>15;h=c[f+16>>2]|0;if((h|0)!=0?(a[h>>0]|0)!=0:0)i=0;else{Tw(t,128,i);i=e+60|0;h=c[i>>2]|0;if(!h){h=n1(QE(d,c[m+8>>2]|0,t)|0)|0;c[i>>2]=h;a[e+64>>0]=1}Ww(t,h)|0;i=c[46604]|0;c[46604]=i+1;c[k>>2]=i;Y0(j,134309,k)|0;Ww(t,j)|0;i=t+4|0;h=c[i>>2]|0;if(h>>>0>=(c[t+8>>2]|0)>>>0){Uw(t,1)|0;h=c[i>>2]|0}a[h>>0]=0;h=c[t>>2]|0;c[i>>2]=h;i=1}h=PE(d,0,c[f>>2]|0,c[f+12>>2]|0,c[f+8>>2]|0,h,c[m+8>>2]|0)|0;if(i)Xw(t);do if(h|0){if((c[o>>2]|0)==0?(b[s>>1]&1)==0:0)break;c[n>>2]=c[g>>2];c[n+4>>2]=c[g+4>>2];c[n+8>>2]=c[g+8>>2];c[n+12>>2]=c[g+12>>2];c[n+16>>2]=c[g+16>>2];c[n+20>>2]=c[g+20>>2];c[n+24>>2]=c[g+24>>2];c[n+28>>2]=c[g+28>>2];XE(d,n);PO(d,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0)}while(0);l=u;return h|0}function KQ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0;j=l;l=l+16|0;i=j;if(!((uG(b,f,i)|0)<<24>>24)){WO(a,b);b=1}else{WO(a,c[f>>2]|0);b=c[f+4>>2]|0;h=+g[i>>2];if(!b)XO(a,134232,d,h);else XO(a,b,d,h);b=e>>>1&1|2}UO(a,134297);l=j;return b|0}function LQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0.0,j=0.0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];e=a+32|0;b=b+16|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];if((d|0)>1){j=+(d|0)*.5;i=+h[a>>3]+j;h[a>>3]=i;d=a+8|0;g=+h[d>>3]+j;h[d>>3]=g;f=+h[e>>3]-j;h[e>>3]=f;e=a+40|0;j=+h[e>>3]-j;h[e>>3]=j}else{f=+h[e>>3];g=+h[a+8>>3];i=+h[a>>3];j=+h[a+40>>3]}h[a+16>>3]=f;h[a+24>>3]=g;h[a+48>>3]=i;h[a+56>>3]=j;return a|0}function MQ(e,f,g){e=e|0;f=f|0;g=g|0;var i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+176|0;r=v+96|0;s=v+136|0;t=v+64|0;p=v;q=v+128|0;u=f+48|0;c[t>>2]=c[u>>2];c[t+4>>2]=c[u+4>>2];c[t+8>>2]=c[u+8>>2];c[t+12>>2]=c[u+12>>2];c[t+16>>2]=c[u+16>>2];c[t+20>>2]=c[u+20>>2];c[t+24>>2]=c[u+24>>2];c[t+28>>2]=c[u+28>>2];j=+h[g>>3];k=+h[g+8>>3];if(!(c[f>>2]|0))u=(c[f+8>>2]|0)!=0;else u=1;h[t>>3]=+h[t>>3]+j;o=t+16|0;h[o>>3]=+h[o>>3]+j;o=t+8|0;h[o>>3]=+h[o>>3]+k;o=t+24|0;h[o>>3]=+h[o>>3]+k;if(u?(c[e+152>>2]&4|0)==0:0){c[r>>2]=c[t>>2];c[r+4>>2]=c[t+4>>2];c[r+8>>2]=c[t+8>>2];c[r+12>>2]=c[t+12>>2];c[r+16>>2]=c[t+16>>2];c[r+20>>2]=c[t+20>>2];c[r+24>>2]=c[t+24>>2];c[r+28>>2]=c[t+28>>2];o=JQ(e,g,f,r,s)|0}else o=0;n=f+42|0;i=b[n>>1]|0;a:do if(!(i&32)){m=c[f+20>>2]|0;if(m|0){i=KQ(e,m,c[f+28>>2]|0,i&65535,q)|0;if(!(b[n>>1]&4)){c[r>>2]=c[t>>2];c[r+4>>2]=c[t+4>>2];c[r+8>>2]=c[t+8>>2];c[r+12>>2]=c[t+12>>2];c[r+16>>2]=c[t+16>>2];c[r+20>>2]=c[t+20>>2];c[r+24>>2]=c[t+24>>2];c[r+28>>2]=c[t+28>>2];$O(e,r,i)}else{n=d[f+33>>0]|0;c[r>>2]=c[t>>2];c[r+4>>2]=c[t+4>>2];c[r+8>>2]=c[t+8>>2];c[r+12>>2]=c[t+12>>2];c[r+16>>2]=c[t+16>>2];c[r+20>>2]=c[t+20>>2];c[r+24>>2]=c[t+24>>2];c[r+28>>2]=c[t+28>>2];EJ(e,LQ(p,r,n)|0,4,4,i)}D_(c[q>>2]|0)}if(a[f+33>>0]|0){c[r>>2]=c[t>>2];c[r+4>>2]=c[t+4>>2];c[r+8>>2]=c[t+8>>2];c[r+12>>2]=c[t+12>>2];c[r+16>>2]=c[t+16>>2];c[r+20>>2]=c[t+20>>2];c[r+24>>2]=c[t+24>>2];c[r+28>>2]=c[t+28>>2];OQ(e,f,r)}i=f+88|0;switch(a[f+92>>0]|0){case 1:{GQ(e,c[i>>2]|0,g);break a}case 3:{SQ(e,c[i>>2]|0,g);break a}default:{FQ(e,c[i>>2]|0,g);break a}}}while(0);if(o|0)PQ(e,s);if((u?c[e+152>>2]&4|0:0)?(c[r>>2]=c[t>>2],c[r+4>>2]=c[t+4>>2],c[r+8>>2]=c[t+8>>2],c[r+12>>2]=c[t+12>>2],c[r+16>>2]=c[t+16>>2],c[r+20>>2]=c[t+20>>2],c[r+24>>2]=c[t+24>>2],c[r+28>>2]=c[t+28>>2],JQ(e,g,f,r,s)|0):0)PQ(e,s);l=v;return}function NQ(f,g,i,j,k){f=f|0;g=g|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0,o=0.0,p=0.0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0;A=l;l=l+32|0;y=A+16|0;z=A;r=+h[i>>3];x=+h[i+8>>3];q=(j|0)==0?134232:j;WO(f,q);UO(f,q);t=+h[g+48>>3];o=+h[g+56>>3];u=+h[g+64>>3];p=+h[g+72>>3];s=t+r;r=u+r;x=o+x;q=g+100|0;i=a[q>>0]|0;if((i&1)!=0?(n=c[g+96>>2]|0,((e[g+80>>1]|0)+(e[g+84>>1]|0)|0)<(c[n+104>>2]|0)):0){i=b[g+86>>1]|0;do if(i<<16>>16)if(((e[g+82>>1]|0)+(i&65535)|0)==(c[n+100>>2]|0)){B=a[n+32>>0]|0;C=(B<<24>>24)/2|0;j=(C<<24>>24)+(d[n+33>>0]|0)|0;i=j;j=j&255;m=x-+(C<<24>>24);n=B;break}else{n=a[n+32>>0]|0;i=0;j=((n<<24>>24)/2|0)<<24>>24;m=x;break}else{C=a[n+32>>0]|0;j=((C<<24>>24)/2|0)<<24>>24;i=j+(d[n+33>>0]|0)|0;m=x;n=C}while(0);h[z+8>>3]=m-+(j|0);h[z>>3]=r+ +(((n<<24>>24)/2|0)<<24>>24);c[y>>2]=c[z>>2];c[y+4>>2]=c[z+4>>2];c[y+8>>2]=c[z+8>>2];c[y+12>>2]=c[z+12>>2];RQ(f,y,0.0,p-o+ +(i&255|0)+ +(n<<24>>24));i=a[q>>0]|0}if(i&2?(v=b[g+86>>1]|0,w=c[g+96>>2]|0,((e[g+82>>1]|0)+(v&65535)|0)<(c[w+100>>2]|0)):0){i=b[g+84>>1]|0;do if(!(i<<16>>16)){i=a[w+32>>0]|0;C=(i<<24>>24)/2|0;n=(C<<24>>24)+(d[w+33>>0]|0)|0;j=n&255;n=n&255;m=+(C<<24>>24);h[z>>3]=s-m-+(n|0);if((c[w+104>>2]|0)==(e[g+80>>1]|0)){j=n<<1&255;break}if((k|0)!=0?(b[k+86>>1]|0)!=v<<16>>16:0)j=~~(+(j&255)-u+ +h[w+64>>3]-m)&255}else{if(((e[g+80>>1]|0)+(i&65535)|0)==(c[w+104>>2]|0)){i=a[w+32>>0]|0;C=(i<<24>>24)/2|0;j=(C&255)+(d[w+33>>0]|0)&255;h[z>>3]=s-+(C<<24>>24);break}i=a[w+32>>0]|0;m=+(((i<<24>>24)/2|0)<<24>>24);h[z>>3]=s-m;if((k|0)!=0?(b[k+86>>1]|0)!=v<<16>>16:0)j=~~(+h[w+64>>3]-u-m)&255;else j=0}while(0);h[z+8>>3]=x-+(((i<<24>>24)/2|0)<<24>>24);c[y>>2]=c[z>>2];c[y+4>>2]=c[z+4>>2];c[y+8>>2]=c[z+8>>2];c[y+12>>2]=c[z+12>>2];RQ(f,y,u-t+ +(j&255)+ +(i<<24>>24),0.0)}l=A;return}function OQ(e,f,g){e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0;p=l;l=l+160|0;o=p+112|0;n=p;j=p+144|0;m=c[f+24>>2]|0;UO(e,(m|0)==0?134232:m);m=f+42|0;i=b[m>>1]|0;if(!(i&384))YO(e,c[(c[e>>2]|0)+336>>2]|0);else{c[j+4>>2]=0;c[j>>2]=0;i=i&65535;if(!(i&256)){if(i&128|0){i=134238;k=4}}else{i=134245;k=4}if((k|0)==4)c[j>>2]=i;YO(e,j)}k=f+33|0;fP(e,+(d[k>>0]|0));a:do if(!(b[m>>1]&4)){i=b[f+36>>1]&15360;if(!(i<<16>>16)){i=a[k>>0]|0;if((i&255)>1){q=+(i&255)*.5;h[g>>3]=+h[g>>3]+q;n=g+8|0;h[n>>3]=+h[n>>3]+q;n=g+16|0;h[n>>3]=+h[n>>3]-q;n=g+24|0;h[n>>3]=+h[n>>3]-q};c[o>>2]=c[g>>2];c[o+4>>2]=c[g+4>>2];c[o+8>>2]=c[g+8>>2];c[o+12>>2]=c[g+12>>2];c[o+16>>2]=c[g+16>>2];c[o+20>>2]=c[g+20>>2];c[o+24>>2]=c[g+24>>2];c[o+28>>2]=c[g+28>>2];$O(e,o,0);break}j=n+16|0;m=d[k>>0]|0;c[o>>2]=c[g>>2];c[o+4>>2]=c[g+4>>2];c[o+8>>2]=c[g+8>>2];c[o+12>>2]=c[g+12>>2];c[o+16>>2]=c[g+16>>2];c[o+20>>2]=c[g+20>>2];c[o+24>>2]=c[g+24>>2];c[o+28>>2]=c[g+28>>2];LQ(j,o,m)|0;do switch(((i&65535)+-1024|0)>>>10&4194303|0){case 7:{bP(e,j,2);break a}case 3:{bP(e,n+32|0,2);break a}case 1:{bP(e,n+48|0,2);break a}case 0:{g=n+64|0;c[n>>2]=c[g>>2];c[n+4>>2]=c[g+4>>2];c[n+8>>2]=c[g+8>>2];c[n+12>>2]=c[g+12>>2];bP(e,n,2);break a}case 11:{bP(e,j,3);break a}case 5:{bP(e,n+32|0,3);break a}case 2:{g=n+80|0;c[g>>2]=c[j>>2];c[g+4>>2]=c[j+4>>2];c[g+8>>2]=c[j+8>>2];c[g+12>>2]=c[j+12>>2];bP(e,n+48|0,3);break a}case 8:{g=n+64|0;c[n>>2]=c[g>>2];c[n+4>>2]=c[g+4>>2];c[n+8>>2]=c[g+8>>2];c[n+12>>2]=c[g+12>>2];bP(e,n,3);break a}case 13:{bP(e,j,4);break a}case 6:{g=n+80|0;c[g>>2]=c[j>>2];c[g+4>>2]=c[j+4>>2];c[g+8>>2]=c[j+8>>2];c[g+12>>2]=c[j+12>>2];bP(e,n+32|0,4);break a}case 10:{g=n+80|0;c[g>>2]=c[j>>2];c[g+4>>2]=c[j+4>>2];c[g+8>>2]=c[j+8>>2];c[g+12>>2]=c[j+12>>2];g=n+96|0;o=n+32|0;c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[g+12>>2]=c[o+12>>2];bP(e,n+48|0,4);break a}case 12:{g=n+64|0;c[n>>2]=c[g>>2];c[n+4>>2]=c[g+4>>2];c[n+8>>2]=c[g+8>>2];c[n+12>>2]=c[g+12>>2];bP(e,n,4);break a}case 9:{bP(e,j,2);bP(e,n+48|0,2);break a}case 4:{g=n+64|0;c[n>>2]=c[g>>2];c[n+4>>2]=c[g+4>>2];c[n+8>>2]=c[g+8>>2];c[n+12>>2]=c[g+12>>2];bP(e,n,2);bP(e,n+32|0,2);break a}default:break a}while(0)}else{m=d[k>>0]|0;c[o>>2]=c[g>>2];c[o+4>>2]=c[g+4>>2];c[o+8>>2]=c[g+8>>2];c[o+12>>2]=c[g+12>>2];c[o+16>>2]=c[g+16>>2];c[o+20>>2]=c[g+20>>2];c[o+24>>2]=c[g+24>>2];c[o+28>>2]=c[g+28>>2];EJ(e,LQ(n,o,m)|0,4,4,0)}while(0);l=p;return}function PQ(d,e){d=d|0;e=e|0;var f=0,g=0,h=0;h=c[d+16>>2]|0;f=h+208|0;if((c[f>>2]|0)==0?(b[h+260>>1]&1)==0:0)d=0;else{QO(d);d=c[f>>2]|0}if((d|0)!=(c[e>>2]|0)){D_(d);c[f>>2]=c[e>>2]}d=h+228|0;f=c[d>>2]|0;g=e+4|0;if((f|0)!=(c[g>>2]|0)){D_(f);c[d>>2]=c[g>>2]}d=h+244|0;f=c[d>>2]|0;g=e+8|0;if((f|0)!=(c[g>>2]|0)){D_(f);c[d>>2]=c[g>>2]}d=h+212|0;f=c[d>>2]|0;g=e+12|0;if((f|0)!=(c[g>>2]|0)){D_(f);c[d>>2]=c[g>>2]}h=h+260|0;b[h>>1]=b[h>>1]&-2|a[e+16>>0]&1;return}function QQ(a,b){a=a|0;b=b|0;var d=0.0,e=0;e=c[b>>2]|0;if(e|0)c[a+16>>2]=e;e=c[b+4>>2]|0;if(e|0)c[a+20>>2]=e;d=+h[b+16>>3];if(d>=0.0)h[a+32>>3]=d;return}function RQ(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0,i=0;f=l;l=l+64|0;g=f+32|0;i=f;c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];h[i+16>>3]=+h[b>>3]+d;h[i+24>>3]=+h[b+8>>3]+e;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];c[g+16>>2]=c[i+16>>2];c[g+20>>2]=c[i+20>>2];c[g+24>>2]=c[i+24>>2];c[g+28>>2]=c[i+28>>2];$O(a,g,1);l=f;return}function SQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0.0,k=0.0,m=0.0,n=0.0;i=l;l=l+64|0;g=i;k=+h[e>>3];n=k+ +h[d>>3];m=+h[e+8>>3];j=m+ +h[d+8>>3];k=k+ +h[d+16>>3];m=m+ +h[d+24>>3];h[g>>3]=k;h[g+8>>3]=m;h[g+32>>3]=n;h[g+40>>3]=j;h[g+16>>3]=n;h[g+24>>3]=m;h[g+48>>3]=k;h[g+56>>3]=j;f=c[d+36>>2]|0;if(!f)f=c[e+56>>2]|0;e=c[d+32>>2]|0;if(!e)qa(134252,134260,623,134272);if(!(a[e>>0]|0))qa(134286,134260,624,134272);else{dP(b,e,g,4,1,f);l=i;return}}function TQ(d,e,f,g,i,j,k,m){d=d|0;e=e|0;f=f|0;g=g|0;i=+i;j=j|0;k=k|0;m=m|0;var n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0.0,J=0,K=0,L=0,M=0.0,N=0.0,O=0,P=0,Q=0,R=0;R=l;l=l+128|0;K=R+104|0;O=R+48|0;P=R+16|0;L=R;J=L;c[J>>2]=0;c[J+4>>2]=0;M=+h[g>>3];N=M-i;I=M+i;J=L+8|0;h[J>>3]=(+h[k+24>>3]-+h[k+8>>3])*.5+ +h[g+8>>3];RO(d,1);D=P+16|0;E=P+4|0;F=P+24|0;G=O+4|0;H=O+16|0;s=(m|0)==0;t=O+24|0;u=O+8|0;v=O+32|0;w=O+40|0;x=O+48|0;y=j+16|0;z=j+4|0;A=P+8|0;q=0;while(1){if((q|0)>=(e|0))break;switch(a[f+(q*24|0)+6>>0]|0){case 108:{i=N;break}case 114:{i=I-+h[f+(q*24|0)+8>>3];break}default:i=M-+h[f+(q*24|0)+8>>3]*.5}h[g>>3]=i;B=f+(q*24|0)+16|0;h[J>>3]=+h[J>>3]-+h[B>>3];C=f+(q*24|0)+4|0;p=c[f+(q*24|0)>>2]|0;r=0;while(1){if((r|0)>=(b[C>>1]|0))break;o=p+4|0;m=c[o>>2]|0;if(m){h[D>>3]=+h[(+h[m+16>>3]>0.0?m:j)+16>>3];c[P>>2]=c[((c[m>>2]|0)==0?j:m)>>2];k=c[((c[m+4>>2]|0)==0?j:m)+4>>2]|0;c[E>>2]=k;m=c[m+24>>2]&127;if(!m)Q=12;else m=c[F>>2]&-128|m}else{h[D>>3]=+h[y>>3];c[P>>2]=c[j>>2];k=c[z>>2]|0;c[E>>2]=k;Q=12}if((Q|0)==12){Q=0;m=c[F>>2]&-128}c[F>>2]=m;UO(d,k);c[O>>2]=c[p>>2];c[G>>2]=P;h[H>>3]=+h[p+16>>3];if(s)n=1.0;else n=+h[p+24>>3];h[t>>3]=n;c[A>>2]=c[(c[o>>2]|0)+8>>2];c[u>>2]=c[p+8>>2];o=p+32|0;h[v>>3]=+h[o>>3];h[w>>3]=+h[B>>3];a[x>>0]=108;h[L>>3]=i;c[K>>2]=c[L>>2];c[K+4>>2]=c[L+4>>2];c[K+8>>2]=c[L+8>>2];c[K+12>>2]=c[L+12>>2];TO(d,K,O);n=+h[o>>3]+i;h[g>>3]=n;p=p+56|0;r=r+1|0;i=n}q=q+1|0}SO(d);l=R;return}function UQ(a){a=a|0;D_(c[a>>2]|0);D_(c[a+4>>2]|0);D_(c[a+8>>2]|0);D_(c[a+16>>2]|0);D_(c[a+12>>2]|0);D_(c[a+20>>2]|0);D_(c[a+24>>2]|0);return}function VQ(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(a|0){j=a+4|0;e=0;g=c[a>>2]|0;while(1){if((e|0)>=(b[j>>1]|0))break;k=g+4|0;d=0;f=c[g>>2]|0;while(1){if((d|0)>=(b[k>>1]|0))break;D_(c[f>>2]|0);h=c[f+8>>2]|0;if(h|0?(i=c[f+12>>2]|0,i|0):0)tb[i&127](h);d=d+1|0;f=f+56|0}e=e+1|0;g=g+24|0}d=c[a>>2]|0;if(d|0)D_(d);D_(a)}return}function WQ(a){a=a|0;D_(c[a+32>>2]|0);D_(a);return}function XQ(b,d){b=b|0;d=d|0;switch(a[b+4>>0]|0){case 1:{YQ(c[b>>2]|0);break}case 3:{WQ(c[b>>2]|0);break}default:VQ(c[b>>2]|0)}if(d|0)D_(b);return}function YQ(a){a=a|0;var b=0,d=0,e=0;e=a+84|0;if((c[a+100>>2]|0)==-1)yw(c[e>>2]|0)|0;else{b=c[e>>2]|0;D_(c[a+92>>2]|0);D_(c[a+96>>2]|0);while(1){d=c[b>>2]|0;if(!d)break;ZQ(d);b=b+4|0}D_(c[e>>2]|0)}UQ(a);D_(a);return}function ZQ(a){a=a|0;XQ(a+88|0,0);UQ(a);D_(a);return}function _Q(b,e,f){b=b|0;e=e|0;f=f|0;var g=0;b=c[(c[(c[b+16>>2]|0)+104>>2]|0)+72>>2]|0;if((a[b+4>>0]|0)!=2?(g=$Q(c[b>>2]|0,e)|0,(g|0)!=0):0){c[f>>2]=d[g+35>>0];b=g+48|0}else b=0;return b|0}function $Q(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a+4>>2]|0;if(!((d|0)!=0?(O$(d,b)|0)==0:0))e=3;a:do if((e|0)==3){d=c[a+84>>2]|0;while(1){a=c[d>>2]|0;if(!a){a=0;break a}a=aR(a,b)|0;if(!a)d=d+4|0;else break}}while(0);return a|0}function aR(b,d){b=b|0;d=d|0;var e=0;e=c[b+4>>2]|0;if(!((e|0)!=0?(O$(e,d)|0)==0:0))if((a[b+92>>0]|0)==1)b=$Q(c[b+88>>2]|0,d)|0;else b=0;return b|0}function bR(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return 0}function cR(d){d=d|0;var f=0.0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=d+92|0;c[p>>2]=uH((c[d+100>>2]<<2)+4|0)|0;n=uH((c[d+104>>2]<<2)+4|0)|0;c[d+96>>2]=n;o=d+32|0;m=c[d+84>>2]|0;while(1){l=c[m>>2]|0;if(!l)break;d=b[l+82>>1]|0;f=+h[l+72>>3];if(d<<16>>16==1)i=~~f;else{i=~~((f-+(O((a[o>>0]|0)+-1|0,(d&65535)+-1|0)|0))/+(d&65535));i=(i|0)>1?i:1}j=b[l+80>>1]|0;f=+h[l+64>>3];if(j<<16>>16==1)k=~~f;else{k=~~((f-+(O((a[o>>0]|0)+-1|0,(j&65535)+-1|0)|0))/+(j&65535));k=(k|0)>1?k:1}q=e[l+86>>1]|0;g=(d&65535)+q|0;d=q;while(1){if((d|0)>=(g|0))break;q=(c[p>>2]|0)+(d<<2)|0;r=c[q>>2]|0;c[q>>2]=(r|0)>(i|0)?r:i;d=d+1|0}d=e[l+84>>1]|0;g=(j&65535)+d|0;while(1){if((d|0)>=(g|0))break;r=n+(d<<2)|0;q=c[r>>2]|0;c[r>>2]=(q|0)>(k|0)?q:k;d=d+1|0}m=m+4|0}return}function dR(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;if(a>>>0<21)a=c[55736+(a<<2)>>2]|0;else{c[b>>2]=a;Y0(191879,134313,b)|0;a=191879}l=d;return a|0}function eR(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=a+104|0;l=a+100|0;j=d+16|0;f=0;g=0;while(1){if((f|0)>(c[k>>2]|0))break;i=az(d,dR(f)|0,1)|0;Az(i,134365,304,1)|0;m=i+16|0;c[(c[m>>2]|0)+176>>2]=0;o=uH((c[l>>2]<<2)+4|0)|0;n=c[m>>2]|0;c[n+172>>2]=o;c[n+184>>2]=0;n=uH((c[l>>2]<<2)+4|0)|0;c[(c[m>>2]|0)+180>>2]=n;if(!g)c[(c[j>>2]|0)+192>>2]=i;else c[(c[g+16>>2]|0)+164>>2]=i;f=f+1|0;g=i}j=b+16|0;f=0;g=0;while(1){if((f|0)>(c[l>>2]|0))break;i=az(b,dR(f)|0,1)|0;Az(i,134365,304,1)|0;o=i+16|0;c[(c[o>>2]|0)+176>>2]=0;m=uH((c[k>>2]<<2)+4|0)|0;n=c[o>>2]|0;c[n+172>>2]=m;c[n+184>>2]=0;n=uH((c[k>>2]<<2)+4|0)|0;c[(c[o>>2]|0)+180>>2]=n;if(!g)c[(c[j>>2]|0)+192>>2]=i;else c[(c[g+16>>2]|0)+164>>2]=i;f=f+1|0;g=i}f=c[a+84>>2]|0;while(1){g=c[f>>2]|0;if(!g)break;o=g+84|0;n=az(d,dR(e[o>>1]|0)|0,0)|0;o=az(d,dR((e[g+80>>1]|0)+(e[o>>1]|0)|0)|0,0)|0;fR(d,n,o,~~+h[g+64>>3]);o=g+86|0;n=az(b,dR(e[o>>1]|0)|0,0)|0;o=az(b,dR((e[g+82>>1]|0)+(e[o>>1]|0)|0)|0,0)|0;fR(b,n,o,~~+h[g+72>>3]);f=f+4|0}gR(d);gR(b);return}function fR(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0;h=Rx(a,d,f,0,0)|0;if(!h){i=Rx(a,d,f,0,1)|0;Az(i,134378,176,1)|0;b[(c[i+16>>2]|0)+170>>1]=g;d=d+16|0;a=c[d>>2]|0;h=c[a+180>>2]|0;if(!h)a=vH((c[a+184>>2]<<2)+8|0)|0;else a=xH(h,(c[a+184>>2]<<2)+8|0)|0;g=c[d>>2]|0;c[g+180>>2]=a;g=g+184|0;h=c[g>>2]|0;c[g>>2]=h+1;c[a+(h<<2)>>2]=i;d=c[d>>2]|0;c[(c[d+180>>2]|0)+(c[d+184>>2]<<2)>>2]=0;d=f+16|0;a=c[d>>2]|0;h=c[a+172>>2]|0;if(!h)a=vH((c[a+176>>2]<<2)+8|0)|0;else a=xH(h,(c[a+176>>2]<<2)+8|0)|0;g=c[d>>2]|0;c[g+172>>2]=a;g=g+176|0;f=c[g>>2]|0;c[g>>2]=f+1;c[a+(f<<2)>>2]=i;i=c[d>>2]|0;c[(c[i+172>>2]|0)+(c[i+176>>2]<<2)>>2]=0}else{i=(c[h+16>>2]|0)+170|0;f=e[i>>1]|0;b[i>>1]=(f|0)>(g|0)?f:g}return}function gR(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=c[(c[a+16>>2]|0)+192>>2]|0;while(1){f=d+16|0;h=c[(c[f>>2]|0)+164>>2]|0;if(!h)break;if(Rx(a,d,h,0,0)|0){d=h;continue}g=Rx(a,d,h,0,1)|0;Az(g,134378,176,1)|0;b[(c[g+16>>2]|0)+170>>1]=0;d=c[f>>2]|0;e=c[d+180>>2]|0;if(!e)d=vH((c[d+184>>2]<<2)+8|0)|0;else d=xH(e,(c[d+184>>2]<<2)+8|0)|0;i=c[f>>2]|0;c[i+180>>2]=d;i=i+184|0;e=c[i>>2]|0;c[i>>2]=e+1;c[d+(e<<2)>>2]=g;f=c[f>>2]|0;c[(c[f+180>>2]|0)+(c[f+184>>2]<<2)>>2]=0;f=h+16|0;d=c[f>>2]|0;e=c[d+172>>2]|0;if(!e)d=vH((c[d+176>>2]<<2)+8|0)|0;else d=xH(e,(c[d+176>>2]<<2)+8|0)|0;e=c[f>>2]|0;c[e+172>>2]=d;e=e+176|0;i=c[e>>2]|0;c[e>>2]=i+1;c[d+(i<<2)>>2]=g;d=c[f>>2]|0;c[(c[d+172>>2]|0)+(c[d+176>>2]<<2)>>2]=0;d=h}return}function hR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=a+92|0;e=0;f=0;b=c[(c[(c[b+16>>2]|0)+192>>2]|0)+16>>2]|0;while(1){b=c[b+164>>2]|0;if(!b)break;b=c[b+16>>2]|0;h=b+232|0;c[(c[g>>2]|0)+(f<<2)>>2]=(c[h>>2]|0)-e;e=c[h>>2]|0;f=f+1|0}a=a+96|0;e=0;f=0;b=c[(c[(c[d+16>>2]|0)+192>>2]|0)+16>>2]|0;while(1){b=c[b+164>>2]|0;if(!b)break;b=c[b+16>>2]|0;h=b+232|0;c[(c[a>>2]|0)+(f<<2)>>2]=(c[h>>2]|0)-e;e=c[h>>2]|0;f=f+1|0}return}function iR(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h+4|0;d=h;c[d>>2]=c[4621];e=c[b+100>>2]|0;if((e|0)!=1?(f=b+104|0,(c[f>>2]|0)!=1):0){c[b+92>>2]=uH((e<<2)+4|0)|0;c[b+96>>2]=uH((c[f>>2]<<2)+4|0)|0;a[g>>0]=a[d>>0]|0;a[g+1>>0]=a[d+1>>0]|0;a[g+2>>0]=a[d+2>>0]|0;a[g+3>>0]=a[d+3>>0]|0;f=Xx(134391,g,0)|0;a[g>>0]=a[d>>0]|0;a[g+1>>0]=a[d+1>>0]|0;a[g+2>>0]=a[d+2>>0]|0;a[g+3>>0]=a[d+3>>0]|0;g=Xx(134396,g,0)|0;Az(f,134401,280,1)|0;Az(g,134401,280,1)|0;eR(b,f,g);fI(f,2,2147483647)|0;fI(g,2,2147483647)|0;hR(b,f,g);jR(f,g)}else cR(b);l=h;return}function jR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=(c[b+16>>2]|0)+192|0;while(1){d=c[d>>2]|0;if(!d)break;f=d+16|0;d=c[f>>2]|0;e=c[d+172>>2]|0;if(e){D_(e);d=c[f>>2]|0}e=c[d+180>>2]|0;if(e){D_(e);d=c[f>>2]|0}d=d+164|0}$x(a)|0;$x(b)|0;return}function kR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0.0;p=l;l=l+272|0;n=p+104|0;o=p+136|0;j=p+72|0;k=p;g=p+144|0;c[k+48>>2]=b;switch(pz(b)|0){case 0:{e=c[b+60>>2]|0;break}case 1:{e=ez(b)|0;break}case 2:{e=ez(c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)|0;break}default:{}}i=k+52|0;c[i>>2]=e;m=c[e+60>>2]|0;h[k+32>>3]=+h[d+16>>3];c[k+16>>2]=c[d+4>>2];c[k+20>>2]=c[d+8>>2];c[k+40>>2]=0;f=uT(c[d>>2]|0,o,k)|0;if(!f){Tw(n,128,g);a[d+82>>0]=0;e=n1(lR(b,n)|0)|0;c[d>>2]=e;if((c[d+12>>2]|0)==1)e=RM(e)|0;else e=OM(e,c[i>>2]|0)|0;D_(c[d>>2]|0);c[d>>2]=e;iH(c[(c[m+16>>2]|0)+144>>2]|0,d);Xw(n);e=c[o>>2]|0}else{e=f+4|0;if((a[e>>0]|0)==1){if((c[(c[f>>2]|0)+24>>2]|0)==0?mR(b)|0:0){i=n1(mR(b)|0)|0;c[(c[f>>2]|0)+24>>2]=i}m=nR(m,c[f>>2]|0,0,k)|0;c[o>>2]=c[o>>2]|m;m=c[f>>2]|0;r=+h[m+64>>3]*.5;q=+h[m+72>>3]*.5;oR(j,-r,-q,r,q);m=c[f>>2]|0;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2];c[n+12>>2]=c[j+12>>2];c[n+16>>2]=c[j+16>>2];c[n+20>>2]=c[j+20>>2];c[n+24>>2]=c[j+24>>2];c[n+28>>2]=c[j+28>>2];pR(m,n,15)}else{qR(c[(c[m+16>>2]|0)+144>>2]|0,c[f>>2]|0,k);n=c[f>>2]|0;q=+h[n+24>>3]*.5;r=+h[n+32>>3]*.5;oR(j,-q,-r,q,r);n=(c[f>>2]|0)+8|0;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2];c[n+12>>2]=c[j+12>>2];c[n+16>>2]=c[j+16>>2];c[n+20>>2]=c[j+20>>2];c[n+24>>2]=c[j+24>>2];c[n+28>>2]=c[j+28>>2]}h[d+24>>3]=+h[j+16>>3]-+h[j>>3];h[d+32>>3]=+h[j+24>>3]-+h[j+8>>3];c[d+72>>2]=f;if((a[e>>0]|0)==1){D_(c[d>>2]|0);c[d>>2]=n1(138529)|0}e=c[o>>2]|0}l=p;return e|0}function lR(b,d){b=b|0;d=d|0;var e=0;a:do switch(pz(b)|0){case 0:{Ww(d,ry(b)|0)|0;break}case 1:{Ww(d,ry(b)|0)|0;break}case 2:{Ww(d,ry(c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0)|0;e=b+-48|0;Ww(d,ry(c[((c[b>>2]&3|0)==2?b:e)+40>>2]|0)|0)|0;if(!(ey(ez(c[((c[b>>2]&3|0)==2?b:e)+40>>2]|0)|0)|0)){Ww(d,138665)|0;break a}else{Ww(d,134656)|0;break a}}default:{}}while(0);e=d+4|0;b=c[e>>2]|0;if(b>>>0>=(c[d+8>>2]|0)>>>0){Uw(d,1)|0;b=c[e>>2]|0}a[b>>0]=0;d=c[d>>2]|0;c[e>>2]=d;return d|0}function mR(b){b=b|0;var c=0,d=0;c=xx(b,134647)|0;if(!((c|0)!=0?(a[c>>0]|0)!=0:0))d=3;do if((d|0)==3){c=xx(b,137741)|0;if(c|0?a[c>>0]|0:0)break;c=0}while(0);return c|0}function nR(f,g,i,j){f=f|0;g=g|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+16|0;u=w+8|0;t=w;v=g+108|0;k=c[v>>2]|0;if(k|0)IQ(j,k,183496);c[g+80>>2]=i;k=uR(f,g,j)|0;r=g+36|0;f=b[r>>1]|0;if(!(f&128))a[g+32>>0]=2;i=g+33|0;if(!(f&32))a[i>>0]=1;iR(g);n=c[g+104>>2]|0;p=a[g+32>>0]|0;f=O(n+1|0,p)|0;o=d[i>>0]<<1;q=c[g+100>>2]|0;p=O(q+1|0,p)|0;m=g+96|0;f=o+f|0;i=0;while(1){if((i|0)>=(n|0))break;f=(c[(c[m>>2]|0)+(i<<2)>>2]|0)+f|0;i=i+1|0}n=g+92|0;i=p+o|0;m=0;while(1){if((m|0)>=(q|0))break;i=(c[(c[n>>2]|0)+(m<<2)>>2]|0)+i|0;m=m+1|0}n=g+38|0;do if(b[r>>1]&1){r=b[n>>1]|0;m=r&65535;if(r<<16>>16?(s=b[g+40>>1]|0,s<<16>>16):0){if(!((f|0)>(m|0)|(i|0)>(s&65535|0))){i=0;f=0;break}Pw(0,134447,t)|0;k=1;i=0;f=0;break}Pw(0,134481,u)|0;k=1}while(0);u=e[n>>1]|0;h[g+64>>3]=+(((f|0)>(u|0)?f:u)|0);u=e[g+40>>1]|0;h[g+72>>3]=+(((i|0)>(u|0)?i:u)|0);if(c[v>>2]|0)QQ(j,183496);l=w;return k|0}function oR(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;h[a>>3]=b;h[a+8>>3]=c;h[a+16>>3]=d;h[a+24>>3]=e;return}function pR(e,f,g){e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0.0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0;I=l;l=l+64|0;G=I+32|0;H=I;E=c[e+84>>2]|0;k=c[e+80>>2]|0;if((k|0?(i=c[k+24>>2]|0,i|0):0)?(j=e+24|0,(c[j>>2]|0)==0):0)c[j>>2]=n1(i)|0;F=e+48|0;i=f+16|0;n=+h[i>>3];m=+h[f>>3];k=~~(n-m-+(~~+h[e+64>>3]|0));if((k|0)<=-1)qa(134414,134260,1761,134424);o=f+24|0;y=+h[o>>3];p=f+8|0;q=+h[p>>3];r=+(~~+h[e+72>>3]|0);s=~~(y-q-r);if((s|0)<=-1)qa(134437,134260,1764,134424);t=b[e+36>>1]|0;j=t&65535;a:do if(j&1){b:do if((k|0)>0)switch(j&6){case 4:{h[i>>3]=m+r;break b}case 2:{J=+(k|0);h[i>>3]=n+J;m=m+J;h[f>>3]=m;break b}default:{J=+(k>>>1|0);m=m+J;h[f>>3]=m;h[i>>3]=n-J;break b}}while(0);if((s|0)>0)switch(t&24){case 16:{y=q+r;h[o>>3]=y;s=0;i=0;break a}case 8:{J=+(s|0);y=y+J;h[o>>3]=y;h[p>>3]=q+J;s=0;i=0;break a}default:{J=+(s>>>1|0);h[p>>3]=q+J;y=y-J;h[o>>3]=y;s=0;i=0;break a}}else{s=0;i=0}}else i=k;while(0);n=+(d[e+33>>0]|0);C=e+32|0;u=a[C>>0]|0;q=+(u<<24>>24);D=e+104|0;k=c[D>>2]|0;t=(i|0)/(k|0)|0;o=i-(O(t,k)|0)|0;o=~~(((o|0)>-1?.5:-.5)+ +(o|0));B=e+96|0;p=u<<24>>24;i=~~(m+n+q);j=0;while(1){if((j|0)>(k|0))break;A=(c[B>>2]|0)+(j<<2)|0;k=c[A>>2]|0;c[A>>2]=i;i=i+t+((j|0)<(o|0)&1)+k+p|0;j=j+1|0;k=c[D>>2]|0}A=e+100|0;k=c[A>>2]|0;t=(s|0)/(k|0)|0;p=s-(O(t,k)|0)|0;p=~~(((p|0)>-1?.5:-.5)+ +(p|0));z=e+92|0;o=u<<24>>24;i=~~(y-n-q);j=0;while(1){if((j|0)>(k|0))break;x=(c[z>>2]|0)+(j<<2)|0;k=c[x>>2]|0;c[x>>2]=i;i=i-t+(((j|0)<(p|0))<<31>>31)-k-o|0;j=j+1|0;k=c[A>>2]|0}u=(g|0)==0;v=H+16|0;w=H+24|0;x=H+8|0;i=E;while(1){o=c[i>>2]|0;if(!o)break;k=b[o+84>>1]|0;if(u){j=0;p=b[o+80>>1]|0;s=b[o+86>>1]|0;t=b[o+82>>1]|0}else{j=k<<16>>16==0?8:0;s=b[o+86>>1]|0;j=s<<16>>16==0?j|4:j;p=b[o+80>>1]|0;t=b[o+82>>1]|0;j=(((p&65535)+(k&65535)|0)==(c[D>>2]|0)?j|2:j)|((t&65535)+(s&65535)|0)==(c[A>>2]|0)}K=c[B>>2]|0;k=k&65535;h[H>>3]=+(c[K+(k<<2)>>2]|0);E=a[C>>0]|0;h[v>>3]=+((c[K+((p&65535)+k<<2)>>2]|0)-E|0);p=c[z>>2]|0;h[w>>3]=+(c[p+((s&65535)<<2)>>2]|0);h[x>>3]=+((c[p+((t&65535)+(s&65535)<<2)>>2]|0)+E|0);c[G>>2]=c[H>>2];c[G+4>>2]=c[H+4>>2];c[G+8>>2]=c[H+8>>2];c[G+12>>2]=c[H+12>>2];c[G+16>>2]=c[H+16>>2];c[G+20>>2]=c[H+20>>2];c[G+24>>2]=c[H+24>>2];c[G+28>>2]=c[H+28>>2];rR(o,G,j&g);i=i+4|0}a[e+35>>0]=g;c[F>>2]=c[f>>2];c[F+4>>2]=c[f+4>>2];c[F+8>>2]=c[f+8>>2];c[F+12>>2]=c[f+12>>2];c[F+16>>2]=c[f+16>>2];c[F+20>>2]=c[f+20>>2];c[F+24>>2]=c[f+24>>2];c[F+28>>2]=c[f+28>>2];l=I;return}function qR(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0.0,p=0.0,q=0.0,r=0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0.0,Q=0.0,R=0.0;O=l;l=l+112|0;H=O+48|0;I=O+16|0;J=O;c[I>>2]=0;c[I+4>>2]=0;c[I+8>>2]=0;c[I+12>>2]=0;c[I+16>>2]=0;c[I+20>>2]=0;c[I+24>>2]=0;c[I+28>>2]=0;K=e+4|0;L=f+16|0;M=f+32|0;N=I+16|0;r=b[K>>1]|0;n=r<<16>>16;g=0;j=-1.0;m=0;while(1){if((m|0)>=(n|0)){g=1;break}i=c[e>>2]|0;if((b[i+(m*24|0)+4>>1]|0)>1){g=0;break}i=c[(c[i+(m*24|0)>>2]|0)+4>>2]|0;if(!i){k=+h[M>>3];h[N>>3]=k;i=L}else{if(c[i+24>>2]&127|0){g=0;break}k=+h[(+h[i+16>>3]>0.0?i:L)+16>>3];h[N>>3]=k;i=(c[i>>2]|0)==0?L:i}i=c[i>>2]|0;c[I>>2]=i;if(!(j==-1.0)){if(k!=j){g=0;break}}else j=k;if(g){if(b$(i,g)|0){g=0;break}}else g=i;m=m+1|0}a[e+6>>0]=g;E=f+48|0;F=f+20|0;G=I+4|0;w=f+40|0;x=I+24|0;y=d+144|0;z=H+4|0;v=J+8|0;A=H+16|0;B=H+24|0;C=H+8|0;D=H+12|0;f=(g|0)==0;j=0.0;s=0.0;t=0.0;u=0.0;n=0;g=r;while(1){if((n|0)>=(g<<16>>16|0))break;k=0.0;q=0.0;m=0;p=0.0;j=0.0;i=c[e>>2]|0;while(1){if((m|0)>=(b[i+(n*24|0)+4>>1]|0))break;c[H>>2]=pH(c[(c[i+(n*24|0)>>2]|0)+(m*56|0)>>2]|0,c[E>>2]|0)|0;i=(c[e>>2]|0)+(n*24|0)|0;g=c[(c[i>>2]|0)+(m*56|0)+4>>2]|0;if(!g){h[N>>3]=+h[M>>3];c[I>>2]=c[L>>2];c[G>>2]=c[F>>2];c[x>>2]=c[x>>2]&-128|c[w>>2]&127}else{g=c[g+24>>2]&127;if(!g)g=c[w>>2]&127;c[x>>2]=c[x>>2]&-128|g;r=c[(c[i>>2]|0)+(m*56|0)+4>>2]|0;h[N>>3]=+h[(+h[r+16>>3]>0.0?r:L)+16>>3];c[I>>2]=c[((c[r>>2]|0)==0?L:r)>>2];c[G>>2]=c[((c[r+4>>2]|0)==0?L:r)+4>>2]}i=c[y>>2]|0;c[z>>2]=nb[c[i>>2]&63](i,I,1)|0;wL(J,d,H);Q=+h[J>>3];o=+h[v>>3];D_(c[(c[(c[e>>2]|0)+(n*24|0)>>2]|0)+(m*56|0)>>2]|0);i=c[e>>2]|0;r=c[i+(n*24|0)>>2]|0;c[r+(m*56|0)>>2]=c[H>>2];h[r+(m*56|0)+32>>3]=Q;h[r+(m*56|0)+16>>3]=+h[A>>3];h[r+(m*56|0)+24>>3]=+h[B>>3];c[r+(m*56|0)+4>>2]=c[z>>2];c[r+(m*56|0)+8>>2]=c[C>>2];c[r+(m*56|0)+12>>2]=c[D>>2];P=+h[N>>3];R=+h[B>>3];k=R>k?R:k;q=Q+q;m=m+1|0;p=P>p?P:p;j=o>j?o:j}h[i+(n*24|0)+8>>3]=q;g=(n|0)==0;do if(f)if(g){o=p;k=p-k;g=i;break}else{o=p;k=t-u+p-k;g=i+(n*24|0)|0;break}else{o=j;k=g?p:j;g=i+(n*24|0)|0}while(0);h[g+16>>3]=k;s=q>s?q:s;t=o+t;u=+h[i+(n*24|0)+16>>3]+u;n=n+1|0;g=b[K>>1]|0}h[e+24>>3]=s;h[e+32>>3]=g<<16>>16==1?j:t;l=O;return}function rR(e,f,g){e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0.0,A=0.0;y=l;l=l+64|0;v=y+32|0;x=y;j=e+24|0;if((c[j>>2]|0)==0?(i=c[(c[e+96>>2]|0)+24>>2]|0,i|0):0)c[j>>2]=n1(i)|0;t=e+36|0;w=b[t>>1]|0;i=w&65535;a:do if(i&1){k=+h[e+64>>3];q=+h[e+72>>3];j=f+16|0;m=+h[j>>3];o=+h[f>>3];n=m-o-k;b:do if(n>0.0)switch(i&6){case 4:{m=o+k;h[j>>3]=m;k=o;break b}case 2:{m=n+m;h[j>>3]=m;k=o+n;h[f>>3]=k;break b}default:{p=n*.5;k=p+o;h[f>>3]=k;m=m-p;h[j>>3]=m;break b}}else k=o;while(0);i=f+24|0;p=+h[i>>3];j=f+8|0;n=+h[j>>3];o=p-n-q;if(o>0.0)switch(w&24){case 16:{o=n+q;h[i>>3]=o;break a}case 8:{q=o+p;h[i>>3]=q;n=n+o;h[j>>3]=n;o=q;break a}default:{o=o*.5;n=o+n;h[j>>3]=n;o=p-o;h[i>>3]=o;break a}}else o=p}else{k=+h[f>>3];n=+h[f+8>>3];m=+h[f+16>>3];o=+h[f+24>>3]}while(0);s=e+48|0;c[s>>2]=c[f>>2];c[s+4>>2]=c[f+4>>2];c[s+8>>2]=c[f+8>>2];c[s+12>>2]=c[f+12>>2];c[s+16>>2]=c[f+16>>2];c[s+20>>2]=c[f+20>>2];c[s+24>>2]=c[f+24>>2];c[s+28>>2]=c[f+28>>2];a[e+35>>0]=g;A=+(d[e+33>>0]|0);z=+(d[e+34>>0]|0);p=k+A+z;h[x>>3]=p;q=n+A+z;s=x+8|0;h[s>>3]=q;n=m-A-z;f=x+16|0;h[f>>3]=n;o=o-A-z;r=x+24|0;h[r>>3]=o;j=e+88|0;switch(a[e+92>>0]|0){case 1:{w=c[j>>2]|0;c[v>>2]=c[x>>2];c[v+4>>2]=c[x+4>>2];c[v+8>>2]=c[x+8>>2];c[v+12>>2]=c[x+12>>2];c[v+16>>2]=c[x+16>>2];c[v+20>>2]=c[x+20>>2];c[v+24>>2]=c[x+24>>2];c[v+28>>2]=c[x+28>>2];pR(w,v,g);break}case 3:{i=c[j>>2]|0;k=+h[i+24>>3];m=n-p-+h[i+16>>3];c:do if(m>0.0)switch(w&6){case 4:{h[f>>3]=n-m;break c}case 2:{h[x>>3]=m+p;break c}default:break c}while(0);k=o-q-k;d:do if(k>0.0)switch(w&24){case 16:{h[r>>3]=o-k;break d}case 8:{h[s>>3]=k+q;break d}default:break d}while(0);c[v>>2]=c[x>>2];c[v+4>>2]=c[x+4>>2];c[v+8>>2]=c[x+8>>2];c[v+12>>2]=c[x+12>>2];c[v+16>>2]=c[x+16>>2];c[v+20>>2]=c[x+20>>2];c[v+24>>2]=c[x+24>>2];c[v+28>>2]=c[x+28>>2];sR(i,v);break}default:{i=c[j>>2]|0;k=+h[i+32>>3];m=n-p-+h[i+24>>3];e:do if(m>0.0?(u=w&6,u<<16>>16!=6):0)switch(u&7){case 4:{h[f>>3]=n-m;break e}case 2:{h[x>>3]=m+p;break e}default:{A=m*.5;h[x>>3]=A+p;h[f>>3]=n-A;break e}}while(0);k=o-q-k;f:do if(k>0.0)switch(w&24){case 16:{h[r>>3]=o-k;break f}case 8:{h[s>>3]=k+q;break f}default:{A=k*.5;h[s>>3]=A+q;h[r>>3]=o-A;break f}}while(0);w=i+8|0;c[w>>2]=c[x>>2];c[w+4>>2]=c[x+4>>2];c[w+8>>2]=c[x+8>>2];c[w+12>>2]=c[x+12>>2];c[w+16>>2]=c[x+16>>2];c[w+20>>2]=c[x+20>>2];c[w+24>>2]=c[x+24>>2];c[w+28>>2]=c[x+28>>2];x=b[t>>1]&768;tR(c[j>>2]|0,(x&1023)==512?108:(x&1023)==256?114:110)}}l=y;return}function sR(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function tR(d,e){d=d|0;e=e|0;var f=0,g=0,h=0;g=b[d+4>>1]|0;f=0;while(1){if((f|0)>=(g|0))break;h=(c[d>>2]|0)+(f*24|0)+6|0;if(!(a[h>>0]|0))a[h>>0]=e;f=f+1|0}return}function uR(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;l=f+84|0;t=c[l>>2]|0;u=vI()|0;v=yR()|0;i=0;h=0;k=Aw(t)|0;while(1){if(!k)break;j=Aw(c[k+8>>2]|0)|0;while(1){if(!j)break;j=c[j>>2]|0;i=i+1|0}h=h+1|0;if(a[k+12>>0]|0)CR(v,h);k=c[k>>2]|0}h=uH((i<<2)+4|0)|0;c[l>>2]=h;i=0;j=0;k=0;q=0;r=Aw(t)|0;while(1){if(!r)break;s=q&65535;p=0;o=Aw(c[r+8>>2]|0)|0;while(1){if(!o)break;n=c[o+8>>2]|0;c[h>>2]=n;k=vR(d,n,f,g)|0|k;l=wR(u,q,p,n)|0;b[n+86>>1]=s;b[n+84>>1]=l;l=l+(e[n+80>>1]|0)|0;m=q+(e[n+82>>1]|0)|0;if(DR(v,m)|0){p=n+100|0;a[p>>0]=a[p>>0]|2}p=l;h=h+4|0;o=c[o>>2]|0;i=(l|0)>(i|0)?l:i;j=(m|0)>(j|0)?m:j}q=q+1|0;r=c[r>>2]|0}c[f+100>>2]=j;c[f+104>>2]=i;yw(t)|0;yw(v)|0;yI(u);return k|0}function vR(f,g,i,j){f=f|0;g=g|0;i=i|0;j=j|0;var k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0;u=l;l=l+16|0;t=u+8|0;s=u;c[g+96>>2]=i;q=g+36|0;o=b[q>>1]|0;if(!(o&64)){if(!(b[i+36>>1]&64))n=2;else n=a[i+34>>0]|0;a[g+34>>0]=n}if(!(o&32)){n=a[i+88>>0]|0;if(n<<24>>24<=-1)if(!(b[i+36>>1]&32))n=1;else n=a[i+33>>0]|0;a[g+33>>0]=n}n=g+88|0;p=g+92|0;switch(a[p>>0]|0){case 1:{o=nR(f,c[n>>2]|0,g,j)|0;i=c[n>>2]|0;n=o;o=i+64|0;i=i+72|0;break}case 3:{o=xR(c[n>>2]|0,j)|0;i=c[n>>2]|0;n=o;o=i+16|0;i=i+24|0;break}default:{qR(c[(c[f+16>>2]|0)+144>>2]|0,c[n>>2]|0,j);i=c[n>>2]|0;n=0;o=i+24|0;i=i+32|0}}k=+((d[g+33>>0]|0)+(d[g+34>>0]|0)<<1|0);m=+h[o>>3]+k;k=+h[i>>3]+k;i=g+38|0;do if(b[q>>1]&1){o=b[i>>1]|0;if(o<<16>>16?(r=b[g+40>>1]|0,r<<16>>16):0){if(!(m>+(o&65535)|k>+(r&65535))){m=0.0;k=0.0;break}if((a[p>>0]|0)==3){m=0.0;k=0.0;break}Pw(0,134532,s)|0;n=1;m=0.0;k=0.0;break}Pw(0,134565,t)|0;n=1}while(0);v=+(e[i>>1]|0);h[g+64>>3]=m>v?m:v;m=+(e[g+40>>1]|0);h[g+72>>3]=k>m?k:m;l=u;return n|0}function wR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;j=d+80|0;i=(e[j>>1]|0)+-1|0;h=0;a:while(1){f=c;while(1){if(h)break a;g=i+f|0;while(1){if((g|0)<(f|0)){c=f;h=1;continue a}if(DI(a,g,b)|0)break;g=g+-1|0}f=g+1|0}}h=d+82|0;f=c;while(1){if((f|0)<(c+(e[j>>1]|0)|0))g=b;else break;while(1){if((g|0)>=((e[h>>1]|0)+b|0))break;BI(a,f,g);g=g+1|0}f=f+1|0}return c|0}function xR(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,g=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;i=m+8|0;d=d+52|0;g=b+32|0;CC(i,c[d>>2]|0,c[g>>2]|0);k=c[i>>2]|0;i=c[i+4>>2]|0;if((i&k|0)==-1){c[j>>2]=c[g>>2];Pw(1,134615,j)|0;d=1;f=0.0;e=0.0}else{a[(c[(c[d>>2]|0)+16>>2]|0)+114>>0]=1;d=0;f=+(i|0);e=+(k|0)}c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;h[b+16>>3]=e;h[b+24>>3]=f;l=m;return d|0}function yR(){return Cw(55820,c[4555]|0)|0}function zR(a,b,d){a=a|0;b=b|0;d=d|0;d=uH(12)|0;c[d>>2]=c[b>>2];return d|0}function AR(a,b,c){a=a|0;b=b|0;c=c|0;D_(b);return}function BR(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;b=c[b>>2]|0;e=c[d>>2]|0;return ((b|0)>(e|0)?1:((b|0)<(e|0))<<31>>31)|0}function CR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;nb[c[a>>2]&63](a,e,1)|0;l=d;return}function DR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=(nb[c[a>>2]&63](a,e,512)|0)!=0&1;l=d;return b|0}function ER(a){a=a|0;var b=0;if(!(c[46605]|0)){b=uH((a<<2)+4|0)|0;c[46605]=b;c[b>>2]=186424;c[46616]=a}c[46617]=0;return}function FR(){D_(c[46605]|0);c[46605]=0;c[46617]=0;return}function GR(){c[46617]=0;return}function HR(){var a=0,b=0,d=0;b=c[46617]|0;d=c[46605]|0;a=1;while(1){if((a|0)>(b|0)){a=5;break}if((c[(c[d+(a<<2)>>2]|0)+4>>2]|0)==(a|0))a=a+1|0;else{a=4;break}}if((a|0)==4)qa(135312,134659,59,134665);else if((a|0)==5)return}function IR(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;f=c[46605]|0;g=c[f+(a<<2)>>2]|0;h=c[g>>2]|0;while(1){b=(a|0)/2|0;d=c[f+(b<<2)>>2]|0;e=f+(a<<2)|0;if((c[d>>2]|0)>=(h|0))break;c[e>>2]=d;c[d+4>>2]=a;a=b}c[e>>2]=g;c[g+4>>2]=a;return}function JR(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=c[46617]|0;if((b|0)==(c[46616]|0)){Pw(1,134673,d)|0;a=1}else{b=b+1|0;c[46617]=b;c[(c[46605]|0)+(b<<2)>>2]=a;IR(b);HR();a=0}l=d;return a|0}function KR(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=c[46605]|0;f=c[e+(a<<2)>>2]|0;g=c[f>>2]|0;h=c[46617]|0;i=(h|0)/2|0;while(1){if((a|0)>(i|0))break;d=a<<1;b=c[e+(d<<2)>>2]|0;if((d|0)<(h|0)){l=d|1;j=c[e+(l<<2)>>2]|0;k=(c[b>>2]|0)<(c[j>>2]|0);d=k?l:d;b=k?j:b}if((g|0)>=(c[b>>2]|0))break;c[e+(a<<2)>>2]=b;c[b+4>>2]=a;a=d}c[e+(a<<2)>>2]=f;c[f+4>>2]=a;return}function LR(){var a=0,b=0,d=0,e=0;b=c[46617]|0;if(!b)a=0;else{e=c[46605]|0;d=e+4|0;a=c[d>>2]|0;c[d>>2]=c[e+(b<<2)>>2];b=b+-1|0;c[46617]=b;if(b|0)KR(1);HR()}return a|0}function MR(a,b){a=a|0;b=b|0;c[a>>2]=b;IR(c[a+4>>2]|0);HR();return}function NR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=b+16|0;j=c[m>>2]|0;j=(a[j+((c[e+12>>2]|0)*40|0)+36>>0]|0)!=(a[j+((c[e+16>>2]|0)*40|0)+36>>0]|0);k=~~((+h[d+64>>3]+-3.0-+h[d+48>>3])*.5);l=~~((+h[d+56>>3]+-3.0-+h[d+40>>3])*.5);g=(k|0)<(l|0)?k:l;n=d+4|0;f=0;while(1){b=c[n>>2]|0;if((f|0)>=(b|0)){g=f;break}i=c[d+8+(f<<2)>>2]|0;o=c[m>>2]|0;if((a[o+((c[i+12>>2]|0)*40|0)+36>>0]|0)==(a[o+((c[i+16>>2]|0)*40|0)+36>>0]|0)){g=f;break}OR(i,g);f=f+1|0}while(1){if((g|0)>=(b|0))break;f=c[d+8+(g<<2)>>2]|0;if(j|(f|0)==(e|0)){OR(f,a[(c[m>>2]|0)+((c[f+12>>2]|0)*40|0)+36>>0]|0?k:l);b=c[n>>2]|0}g=g+1|0}return}function OR(a,b){a=a|0;b=b|0;var d=0,e=0;d=a+8|0;e=c[d>>2]|0;c[d>>2]=e+1;if((e|0)>=(b|0)){c[d>>2]=0;h[a>>3]=+h[a>>3]+16384.0}return}function PR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0.0;x=l;l=l+112|0;u=x+64|0;t=x+96|0;m=x+32|0;v=x;w=uH(28)|0;b=ay(a)|0;s=w+4|0;c[s>>2]=b;b=uH(b*72|0)|0;r=w+12|0;c[r>>2]=b;e=v+8|0;h[e>>3]=1797693134862315708145274.0e284;h[v>>3]=1797693134862315708145274.0e284;f=v+24|0;h[f>>3]=-1797693134862315708145274.0e284;g=v+16|0;h[g>>3]=-1797693134862315708145274.0e284;i=m+16|0;j=m+8|0;k=m+24|0;d=Sy(a)|0;n=1797693134862315708145274.0e284;o=1797693134862315708145274.0e284;p=-1797693134862315708145274.0e284;q=-1797693134862315708145274.0e284;while(1){if(!d)break;C=d+16|0;D=c[C>>2]|0;z=(+h[D+96>>3]+ +h[D+88>>3])*.5;z=z<1.0?1.0:z;y=+h[D+80>>3]*.5;y=y<1.0?1.0:y;E=+h[D+16>>3];B=E-z;h[m>>3]=B;z=E+z;h[i>>3]=z;E=+h[D+24>>3];A=E-y;h[j>>3]=A;y=E+y;h[k>>3]=y;B=+h[(n<B?v:m)>>3];h[v>>3]=B;A=+h[(o<A?v:m)+8>>3];h[e>>3]=A;z=+h[(p>z?v:m)+16>>3];h[g>>3]=z;y=+h[(q>y?v:m)+24>>3];h[f>>3]=y;D=b+40|0;c[D>>2]=c[m>>2];c[D+4>>2]=c[m+4>>2];c[D+8>>2]=c[m+8>>2];c[D+12>>2]=c[m+12>>2];c[D+16>>2]=c[m+16>>2];c[D+20>>2]=c[m+20>>2];c[D+24>>2]=c[m+24>>2];c[D+28>>2]=c[m+28>>2];c[b>>2]=c[b>>2]|1;c[(c[C>>2]|0)+112>>2]=b;b=b+72|0;d=Ty(a,d)|0;n=B;o=A;p=z;q=y}h[v>>3]=n+-36.0;h[e>>3]=o+-36.0;h[g>>3]=p+36.0;h[f>>3]=q+36.0;D=c[r>>2]|0;f=c[s>>2]|0;c[u>>2]=c[v>>2];c[u+4>>2]=c[v+4>>2];c[u+8>>2]=c[v+8>>2];c[u+12>>2]=c[v+12>>2];c[u+16>>2]=c[v+16>>2];c[u+20>>2]=c[v+20>>2];c[u+24>>2]=c[v+24>>2];c[u+28>>2]=c[v+28>>2];f=ZR(D,f,t,u)|0;if(c[46553]&1|0){r=c[r>>2]|0;C=c[s>>2]|0;D=c[t>>2]|0;c[u>>2]=c[v>>2];c[u+4>>2]=c[v+4>>2];c[u+8>>2]=c[v+8>>2];c[u+12>>2]=c[v+12>>2];c[u+16>>2]=c[v+16>>2];c[u+20>>2]=c[v+20>>2];c[u+24>>2]=c[v+24>>2];c[u+28>>2]=c[v+28>>2];QR(r,C,u,f,D)}e=w+8|0;c[e>>2]=uH((c[t>>2]|0)*72|0)|0;c[w>>2]=c[t>>2];d=c[t>>2]|0;b=0;while(1){if((b|0)>=(d|0))break;D=(c[e>>2]|0)+(b*72|0)+40|0;C=f+(b<<5)|0;c[D>>2]=c[C>>2];c[D+4>>2]=c[C+4>>2];c[D+8>>2]=c[C+8>>2];c[D+12>>2]=c[C+12>>2];c[D+16>>2]=c[C+16>>2];c[D+20>>2]=c[C+20>>2];c[D+24>>2]=c[C+24>>2];c[D+28>>2]=c[C+28>>2];b=b+1|0}D_(f);c[u>>2]=c[v>>2];c[u+4>>2]=c[v+4>>2];c[u+8>>2]=c[v+8>>2];c[u+12>>2]=c[v+12>>2];c[u+16>>2]=c[v+16>>2];c[u+20>>2]=c[v+20>>2];c[u+24>>2]=c[v+24>>2];c[u+28>>2]=c[v+28>>2];c[w+16>>2]=RR(w,u)|0;l=x;return w|0}function QR(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,i=0,j=0,k=0.0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0;q=l;l=l+128|0;p=q+96|0;o=q+64|0;j=q+32|0;r=q+16|0;s=q;m=+h[d+16>>3];n=+h[d>>3];k=+h[d+24>>3];g=+h[d+8>>3];i=c[15686]|0;D1(134688,i)|0;c[s>>2]=10;c[s+4>>2]=10;c[s+8>>2]=~~(m+10.0-n);c[s+12>>2]=~~(k+10.0-g);g1(i,135118,s)|0;h[r>>3]=10.0-n;h[r+8>>3]=10.0-g;g1(i,135166,r)|0;D1(135183,i)|0;d=0;while(1){if((d|0)>=(b|0))break;v=+h[a+(d*72|0)+48>>3];u=+h[a+(d*72|0)+56>>3];t=+h[a+(d*72|0)+64>>3];h[j>>3]=+h[a+(d*72|0)+40>>3];h[j+8>>3]=v;h[j+16>>3]=u;h[j+24>>3]=t;g1(i,135202,j)|0;d=d+1|0}D1(135220,i)|0;d=0;while(1){if((d|0)>=(f|0))break;t=+h[e+(d<<5)+8>>3];u=+h[e+(d<<5)+16>>3];v=+h[e+(d<<5)+24>>3];h[o>>3]=+h[e+(d<<5)>>3];h[o+8>>3]=t;h[o+16>>3]=u;h[o+24>>3]=v;g1(i,135239,o)|0;d=d+1|0}D1(135257,i)|0;h[p>>3]=n;h[p+8>>3]=g;h[p+16>>3]=m;h[p+24>>3]=k;g1(i,135239,p)|0;D1(135004,i)|0;l=q;return}function RR(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=l;l=l+32|0;t=A+16|0;k=A;w=c[a>>2]|0;y=nO(w<<2|2)|0;z=Cw(55856,c[4555]|0)|0;v=Cw(55892,c[4555]|0)|0;w=uH(w<<7)|0;f=uH(c[a>>2]<<4)|0;x=a+8|0;g=b+16|0;i=k+8|0;j=b+24|0;m=b+8|0;d=0;while(1){if((d|0)>=(c[a>>2]|0))break;n=c[x>>2]|0;o=n+(d*72|0)|0;c[n+(d*72|0)+32>>2]=4;p=n+(d*72|0)+36|0;c[p>>2]=f+(d<<2<<2);q=n+(d*72|0)+40|0;e=+h[n+(d*72|0)+56>>3];if(e<+h[g>>3]){h[k>>3]=e;h[i>>3]=+h[n+(d*72|0)+48>>3];c[t>>2]=c[k>>2];c[t+4>>2]=c[k+4>>2];c[t+8>>2]=c[k+8>>2];c[t+12>>2]=c[k+12>>2];s=SR(y,z,t,w,1)|0;c[s+20>>2]=o;c[c[p>>2]>>2]=s}e=+h[n+(d*72|0)+64>>3];if(e<+h[j>>3]){h[k>>3]=+h[q>>3];h[i>>3]=e;c[t>>2]=c[k>>2];c[t+4>>2]=c[k+4>>2];c[t+8>>2]=c[k+8>>2];c[t+12>>2]=c[k+12>>2];s=SR(y,v,t,w,0)|0;c[s+20>>2]=o;c[(c[p>>2]|0)+4>>2]=s}if(+h[q>>3]>+h[b>>3]){c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2];c[t+12>>2]=c[q+12>>2];s=SR(y,z,t,w,1)|0;c[s+24>>2]=o;c[(c[p>>2]|0)+8>>2]=s}if(+h[n+(d*72|0)+48>>3]>+h[m>>3]){c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2];c[t+12>>2]=c[q+12>>2];s=SR(y,v,t,w,0)|0;c[s+24>>2]=o;c[(c[p>>2]|0)+12>>2]=s}d=d+1|0}o=uH(c[y>>2]<<2)|0;r=a+4|0;s=a+12|0;p=t+8|0;m=0;q=0;n=0;while(1){d=c[r>>2]|0;if((n|0)>=(d|0)){b=0;break}g=c[s>>2]|0;i=g+(n*72|0)|0;j=g+(n*72|0)+36|0;c[j>>2]=o+(m<<2);b=g+(n*72|0)+40|0;c[t>>2]=c[b>>2];c[t+4>>2]=c[b+4>>2];c[t+8>>2]=c[b+8>>2];c[t+12>>2]=c[b+12>>2];b=g+(n*72|0)+56|0;k=g+(n*72|0)+32|0;d=nb[c[v>>2]&63](v,t,512)|0;while(1){if(!d)break;if(!(+h[d+8>>3]<+h[b>>3]))break;C=c[d>>2]|0;B=c[j>>2]|0;f=c[k>>2]|0;c[k>>2]=f+1;c[B+(f<<2)>>2]=C;c[(c[d>>2]|0)+24>>2]=i;d=nb[c[v>>2]&63](v,d,8)|0}f=g+(n*72|0)+64|0;d=nb[c[z>>2]&63](z,t,512)|0;while(1){if(!d){u=20;break}e=+h[f>>3];if(!(+h[d+16>>3]<e))break;b=c[d>>2]|0;B=c[j>>2]|0;C=c[k>>2]|0;c[k>>2]=C+1;c[B+(C<<2)>>2]=b;c[(c[d>>2]|0)+24>>2]=i;d=nb[c[z>>2]&63](z,d,8)|0}if((u|0)==20){u=0;e=+h[f>>3]}h[p>>3]=e;b=g+(n*72|0)+56|0;d=nb[c[v>>2]&63](v,t,512)|0;while(1){if(!d){u=25;break}e=+h[b>>3];if(!(+h[d+8>>3]<e))break;D=c[d>>2]|0;B=c[j>>2]|0;C=c[k>>2]|0;c[k>>2]=C+1;c[B+(C<<2)>>2]=D;c[(c[d>>2]|0)+20>>2]=i;d=nb[c[v>>2]&63](v,d,8)|0}if((u|0)==25){u=0;e=+h[b>>3]}h[t>>3]=e;h[p>>3]=+h[g+(n*72|0)+48>>3];d=nb[c[z>>2]&63](z,t,512)|0;while(1){if(!d)break;if(!(+h[d+16>>3]<+h[f>>3]))break;B=c[d>>2]|0;C=c[j>>2]|0;D=c[k>>2]|0;c[k>>2]=D+1;c[C+(D<<2)>>2]=B;c[(c[d>>2]|0)+20>>2]=i;d=nb[c[z>>2]&63](z,d,8)|0}D=c[k>>2]|0;m=D+m|0;q=(D|0)>(q|0)?D:q;n=n+1|0}while(1){if((b|0)>=(d|0))break;TR((c[s>>2]|0)+(b*72|0)|0);b=b+1|0;d=c[r>>2]|0}d=c[y>>2]|0;D=c[y+16>>2]|0;c[D+(d*40|0)+32>>2]=d;d=d+1|0;c[D+(d*40|0)+32>>2]=d;mO(y,q);d=0;while(1){if((d|0)>=(c[a>>2]|0))break;UR((c[x>>2]|0)+(d*72|0)|0,y);d=d+1|0}yw(z)|0;yw(v)|0;D_(w);VR(y);kO(y);l=A;return y|0}function SR(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=nb[c[d>>2]&63](d,e,512)|0;do if(!h){b=oO(b)|0;if(!f)qa(135101,135049,291,135108);else{h=c[b+32>>2]|0;i=f+(h<<5)|0;f=f+(h<<5)+8|0;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[i>>2]=b;a[b+36>>0]=g;nb[c[d>>2]&63](d,i,1)|0;break}}else i=h;while(0);return c[i>>2]|0}function TR(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0;a:do if((+h[b+64>>3]+-3.0-+h[b+48>>3])*.5<2.0){i=c[b+32>>2]|0;j=b+36|0;g=0;while(1){if((g|0)>=(i|0))break a;d=c[(c[j>>2]|0)+(g<<2)>>2]|0;b:do if(a[d+36>>0]|0){f=c[d+20>>2]|0;if((f|0)==(b|0)){e=c[d+24>>2]|0;d=e;e=c[e>>2]|0;do{c[d>>2]=e|8;d=c[c[d+36>>2]>>2]|0;if(!d)break b;d=c[d+24>>2]|0;e=c[d>>2]|0}while(!(e&1|0))}else{e=f;d=c[f>>2]|0;do{c[e>>2]=d|8;d=c[(c[e+36>>2]|0)+8>>2]|0;if(!d)break b;e=c[d+20>>2]|0;d=c[e>>2]|0}while(!(d&1|0))}}while(0);g=g+1|0}}while(0);c:do if((+h[b+56>>3]+-3.0-+h[b+40>>3])*.5<2.0){i=c[b+32>>2]|0;j=b+36|0;g=0;while(1){if((g|0)>=(i|0))break c;d=c[(c[j>>2]|0)+(g<<2)>>2]|0;d:do if(!(a[d+36>>0]|0)){f=c[d+20>>2]|0;if((f|0)==(b|0)){e=c[d+24>>2]|0;d=e;e=c[e>>2]|0;do{c[d>>2]=e|16;d=c[(c[d+36>>2]|0)+4>>2]|0;if(!d)break d;d=c[d+24>>2]|0;e=c[d>>2]|0}while(!(e&1|0))}else{e=f;d=c[f>>2]|0;do{c[e>>2]=d|16;d=c[(c[e+36>>2]|0)+12>>2]|0;if(!d)break d;e=c[d+20>>2]|0;d=c[e>>2]|0}while(!(d&1|0))}}while(0);g=g+1|0}}while(0);return}function UR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0.0,i=0.0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0;g=+h[a+56>>3]-+h[a+40>>3];i=+h[a+64>>3]-+h[a+48>>3];f=(i+g)*.5+500.0;if((i+-3.0)*.5<2.0){l=(c[a>>2]&8|0)==0;f=l?16384.0:f;p=l?16384.0:g}else p=g;if((g+-3.0)*.5<2.0){l=(c[a>>2]&16|0)==0;i=l?16384.0:i;f=l?16384.0:f}l=a+36|0;d=c[l>>2]|0;e=c[d+8>>2]|0;if((e|0)!=0?(j=c[d+4>>2]|0,(j|0)!=0):0){j=pO(b,e,j,f)|0;e=a+4|0;d=c[e>>2]|0;c[e>>2]=d+1;c[a+8+(d<<2)>>2]=j;d=c[l>>2]|0}e=c[d+4>>2]|0;if((e|0)!=0?(k=c[d>>2]|0,(k|0)!=0):0){k=pO(b,e,k,f)|0;j=a+4|0;d=c[j>>2]|0;c[j>>2]=d+1;c[a+8+(d<<2)>>2]=k;d=c[l>>2]|0}e=c[d+8>>2]|0;if((e|0)!=0?(m=c[d+12>>2]|0,(m|0)!=0):0){m=pO(b,e,m,f)|0;k=a+4|0;d=c[k>>2]|0;c[k>>2]=d+1;c[a+8+(d<<2)>>2]=m;d=c[l>>2]|0}e=c[d+12>>2]|0;if((e|0)!=0?(n=c[d>>2]|0,(n|0)!=0):0){n=pO(b,e,n,f)|0;m=a+4|0;d=c[m>>2]|0;c[m>>2]=d+1;c[a+8+(d<<2)>>2]=n;d=c[l>>2]|0}e=c[d+4>>2]|0;if((e|0)!=0?(o=c[d+12>>2]|0,(o|0)!=0):0){o=pO(b,e,o,i)|0;n=a+4|0;d=c[n>>2]|0;c[n>>2]=d+1;c[a+8+(d<<2)>>2]=o;d=c[l>>2]|0}e=c[d+8>>2]|0;if(e|0?(q=c[d>>2]|0,q|0):0){b=pO(b,e,q,p)|0;o=a+4|0;q=c[o>>2]|0;c[o>>2]=q+1;c[a+8+(q<<2)>>2]=b}return}function VR(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;h=j;f=a+16|0;g=c[15686]|0;e=0;while(1){if((e|0)>=(c[a>>2]|0)){b=10;break}b=c[f>>2]|0;d=b+(e*40|0)+20|0;if((c[d>>2]|0)==0?(c[h>>2]=e,g1(g,135014,h)|0,(c[d>>2]|0)==0):0){b=5;break}b=b+(e*40|0)+24|0;if((c[b>>2]|0)==0?(c[i>>2]=e,g1(g,135066,i)|0,(c[b>>2]|0)==0):0){b=8;break}e=e+1|0}if((b|0)==5)qa(135036,135049,311,135056);else if((b|0)==8)qa(135088,135049,313,135056);else if((b|0)==10){l=j;return}}function WR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;e=+h[b+8>>3];f=+h[c+8>>3];if(!(e>f))if(!(e<f)){f=+h[b>>3];e=+h[c>>3];if(f>e)a=1;else a=(f<e)<<31>>31}else a=-1;else a=1;return a|0}function XR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;e=+h[b>>3];f=+h[c>>3];if(!(e>f))if(!(e<f)){f=+h[b+8>>3];e=+h[c+8>>3];if(f>e)a=1;else a=(f<e)<<31>>31}else a=-1;else a=1;return a|0}function YR(a){a=a|0;var b=0,d=0;d=a+8|0;D_(c[(c[d>>2]|0)+36>>2]|0);b=a+12|0;D_(c[(c[b>>2]|0)+36>>2]|0);D_(c[d>>2]|0);D_(c[b>>2]|0);rO(c[a+16>>2]|0);yw(c[a+20>>2]|0)|0;yw(c[a+24>>2]|0)|0;D_(a);return}function ZR(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;h=p;i=b<<2;f=i+4|0;i=i+5|0;o=vH(i*56|0)|0;i=uH(i<<2)|0;g=f*5|1;j=vH(g*72|0)|0;m=g<<5;k=uH(m)|0;m=uH(m)|0;c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[h+20>>2]=c[e+20>>2];c[h+24>>2]=c[e+24>>2];c[h+28>>2]=c[e+28>>2];_R(a,b,h,o,0);i2(173);$R(f,i);jS(f,o,i,g,j)|0;n=aS(f,o,j,0,k)|0;c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[h+20>>2]=c[e+20>>2];c[h+24>>2]=c[e+24>>2];c[h+28>>2]=c[e+28>>2];_R(a,b,h,o,1);$R(f,i);jS(f,o,i,g,j)|0;f=aS(f,o,j,1,m)|0;g=uH(O(n<<5,f)|0)|0;b=0;a=0;while(1){if((b|0)>=(f|0))break;h=m+(b<<5)|0;e=0;while(1){if((e|0)>=(n|0))break;q=a+((bS(g+(a<<5)|0,h,k+(e<<5)|0)|0)!=0&1)|0;e=e+1|0;a=q}b=b+1|0}q=xH(g,a<<5)|0;D_(o);D_(i);D_(j);D_(k);D_(m);c[d>>2]=a;l=p;return q|0}function _R(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+96|0;h=j+64|0;i=j;c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[h+8>>2]=c[d+8>>2];c[h+12>>2]=c[d+12>>2];c[h+16>>2]=c[d+16>>2];c[h+20>>2]=c[d+20>>2];c[h+24>>2]=c[d+24>>2];c[h+28>>2]=c[d+28>>2];hS(h,f,1,i);d=iS(e,1,i)|0;g=0;while(1){if((g|0)>=(b|0))break;k=a+(g*72|0)+40|0;c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];c[h+8>>2]=c[k+8>>2];c[h+12>>2]=c[k+12>>2];c[h+16>>2]=c[k+16>>2];c[h+20>>2]=c[k+20>>2];c[h+24>>2]=c[k+24>>2];c[h+28>>2]=c[k+28>>2];hS(h,f,0,i);d=iS(e,d,i)|0;g=g+1|0}l=j;return}function $R(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=0;while(1){if((d|0)>(a|0))break;c[b+(d<<2)>>2]=d;d=d+1|0}g=a+1|0;d=1;while(1){if((d|0)>(a|0))break;h=~~(+k2()*+(g-d|0)+ +(d|0));e=b+(d<<2)|0;f=b+(h<<2)|0;if((d|0)!=(h|0)){h=c[e>>2]|0;c[e>>2]=c[f>>2];c[f>>2]=h}d=d+1|0}return}function aS(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=a*5|0;j=g+1|0;l=uH(j<<2)|0;c[46618]=uH(j<<4)|0;c[46619]=uH((a*56|0)+56|0)|0;j=uH(a<<2)|0;c[46620]=j;k=0;while(1){if((k|0)>(g|0))break;if(cS(d+(k*72|0)|0,b)|0)break;k=k+1|0}h=c[46618]|0;i=c[46619]|0;g=1;while(1){if((g|0)>(a|0))break;c[h+(g<<4)+8>>2]=c[b+(g*56|0)+48>>2];m=b+(g*56|0)+44|0;c[h+(g<<4)+4>>2]=c[m>>2];c[h+(g<<4)>>2]=g;n=i+(g*56|0)|0;o=b+(g*56|0)|0;c[n>>2]=c[o>>2];c[n+4>>2]=c[o+4>>2];c[n+8>>2]=c[o+8>>2];c[n+12>>2]=c[o+12>>2];c[i+(g*56|0)+16>>2]=c[m>>2];c[i+(g*56|0)+32>>2]=g;c[i+(g*56|0)+48>>2]=1;g=g+1|0}c[46621]=a;c[46622]=0;c[j>>2]=1;g=c[d+(k*72|0)+40>>2]|0;if((g|0)<=0){g=c[d+(k*72|0)+48>>2]|0;if((g|0)>0)g=dS(l,f,0,b,d,0,k,g,e,2)|0;else g=0}else g=dS(l,f,0,b,d,0,k,g,e,1)|0;D_(l);D_(c[46618]|0);D_(c[46619]|0);D_(c[46620]|0);return g|0}function bS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0,g=0.0;g=+h[(+h[b>>3]>+h[c>>3]?b:c)>>3];f=+h[(+h[b+16>>3]<+h[c+16>>3]?b:c)+16>>3];h[a+16>>3]=f;h[a>>3]=g;e=+h[(+h[b+8>>3]>+h[c+8>>3]?b:c)+8>>3];d=+h[(+h[b+24>>3]<+h[c+24>>3]?b:c)+24>>3];h[a+24>>3]=d;h[a+8>>3]=e;return !(g>=f)&!(e>=d)&1|0}function cS(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0;f=c[a+4>>2]|0;do if((c[a+68>>2]|0)!=2?!((f|0)<1|(c[a>>2]|0)<1):0){if(!((c[a+40>>2]|0)<1?(c[a+44>>2]|0)<1:0)){if((c[a+48>>2]|0)>=1){a=0;break}if((c[a+52>>2]|0)>=1){a=0;break}}d=+h[b+(f*56|0)+24>>3];e=+h[b+(f*56|0)+8>>3];if(!(d>e+1.0e-07))if(d<e+-1.0e-07)a=0;else a=+h[b+(f*56|0)+16>>3]>+h[b+(f*56|0)>>3]&1;else a=1}else a=0;while(0);return a|0}function dS(a,b,d,e,f,g,i,j,k,l){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0.0,J=0,K=0.0,L=0,M=0,N=0,O=0,P=0;D=(k|0)==0;C=i;a:while(1){y=f+(C*72|0)|0;if((C|0)<1)break;i=a+(C<<2)|0;if(c[i>>2]|0)break;c[i>>2]=1;v=f+(C*72|0)+8|0;t=f+(C*72|0)+16|0;p=+h[t>>3];w=f+(C*72|0)+24|0;x=f+(C*72|0)+32|0;o=+h[x>>3];if((p>o?(A=c[y>>2]|0,I=+h[e+(A*56|0)>>3],I==+h[e+(A*56|0)+16>>3]):0)?(A=c[f+(C*72|0)+4>>2]|0,K=+h[e+(A*56|0)>>3],K==+h[e+(A*56|0)+16>>3]):0){i=b+(d<<5)|0;if(D){h[i>>3]=I;q=p;p=K}else{h[i>>3]=o;q=-I;o=-K}h[b+(d<<5)+8>>3]=o;h[b+(d<<5)+16>>3]=p;h[b+(d<<5)+24>>3]=q;d=d+1|0}i=f+(C*72|0)+40|0;z=c[i>>2]|0;do if((z|0)<1?(L=f+(C*72|0)+44|0,(c[L>>2]|0)<1):0){i=f+(C*72|0)+48|0;n=f+(C*72|0)+52|0;if((c[i>>2]|0)>0?(M=c[n>>2]|0,(M|0)>0):0){m=c[f+(M*72|0)>>2]|0;l=c[y>>2]|0;if((M|0)==(j|0)){l=eS(g,l,m)|0;d=dS(a,b,d,e,f,g,c[n>>2]|0,C,k,1)|0;g=l;l=1;break}else{l=eS(g,m,l)|0;d=dS(a,b,d,e,f,g,c[i>>2]|0,C,k,1)|0;g=l;i=n;l=1;break}}d=dS(a,b,d,e,f,g,z,C,k,2)|0;d=dS(a,b,d,e,f,g,c[L>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,g,c[i>>2]|0,C,k,1)|0;i=n;l=1}else P=19;while(0);do if((P|0)==19){P=0;A=f+(C*72|0)+48|0;r=c[A>>2]|0;if((r|0)<1?(N=f+(C*72|0)+52|0,(c[N>>2]|0)<1):0){n=f+(C*72|0)+44|0;if((z|0)>0?(O=c[n>>2]|0,(O|0)>0):0){m=c[f+(C*72|0)+4>>2]|0;l=c[f+(z*72|0)+4>>2]|0;if((O|0)==(j|0)){l=eS(g,l,m)|0;d=dS(a,b,d,e,f,g,c[n>>2]|0,C,k,2)|0;g=l;l=2;break}else{l=eS(g,m,l)|0;d=dS(a,b,d,e,f,g,c[i>>2]|0,C,k,2)|0;g=l;i=n;l=2;break}}d=dS(a,b,d,e,f,g,z,C,k,2)|0;d=dS(a,b,d,e,f,g,c[n>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,g,c[A>>2]|0,C,k,1)|0;i=N;l=1;break}u=f+(C*72|0)+44|0;s=c[u>>2]|0;m=(s|0)>0;if((z|0)>0){if(m){if((r|0)>0?(E=f+(C*72|0)+52|0,F=c[E>>2]|0,(F|0)>0):0){n=c[f+(F*72|0)>>2]|0;m=c[f+(z*72|0)+4>>2]|0;if(!((l|0)==2&(F|0)==(j|0))?!((l|0)==1&(s|0)==(j|0)):0){l=eS(g,n,m)|0;d=dS(a,b,d,e,f,g,c[i>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,g,c[A>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,l,c[u>>2]|0,C,k,2)|0;g=l;i=E;l=1;break}l=eS(g,m,n)|0;d=dS(a,b,d,e,f,g,c[u>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,g,c[E>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,l,c[i>>2]|0,C,k,2)|0;g=l;i=A;l=1;break}m=c[y>>2]|0;if(+B(+(+h[x>>3]-+h[e+(m*56|0)+24>>3]))<=1.0e-07?+B(+(+h[w>>3]-+h[e+(m*56|0)+16>>3]))<=1.0e-07:0){n=c[f+(z*72|0)+4>>2]|0;m=c[e+(m*56|0)+44>>2]|0;if((l|0)==1&(z|0)==(j|0)){l=eS(g,m,n)|0;d=dS(a,b,d,e,f,g,c[i>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,l,c[A>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,l,c[u>>2]|0,C,k,2)|0;g=l;i=f+(C*72|0)+52|0;l=1;break}else{l=eS(g,n,m)|0;d=dS(a,b,d,e,f,g,c[u>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,g,c[A>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,g,c[f+(C*72|0)+52>>2]|0,C,k,1)|0;g=l;l=2;break}}n=c[f+(C*72|0)+4>>2]|0;m=c[f+(z*72|0)+4>>2]|0;if((l|0)==1&(s|0)==(j|0)){l=eS(g,m,n)|0;d=dS(a,b,d,e,f,g,c[u>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,l,c[f+(C*72|0)+52>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,l,c[A>>2]|0,C,k,1)|0;g=l;l=2;break}else{l=eS(g,n,m)|0;d=dS(a,b,d,e,f,g,c[i>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,g,c[A>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,g,c[f+(C*72|0)+52>>2]|0,C,k,1)|0;g=l;i=u;l=2;break}}}else if(!m)break a;if((r|0)>0?(G=f+(C*72|0)+52|0,H=c[G>>2]|0,(H|0)>0):0){n=c[y>>2]|0;if(+B(+(+h[t>>3]-+h[e+(n*56|0)+8>>3]))<=1.0e-07?+B(+(+h[v>>3]-+h[e+(n*56|0)>>3]))<=1.0e-07:0){m=c[f+(H*72|0)>>2]|0;if((l|0)==2&(r|0)==(j|0)){l=eS(g,m,n)|0;d=dS(a,b,d,e,f,g,c[A>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,l,c[i>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,l,c[f+(C*72|0)+44>>2]|0,C,k,2)|0;g=l;i=G;l=1;break}else{l=eS(g,n,m)|0;d=dS(a,b,d,e,f,g,c[f+(C*72|0)+44>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,g,c[G>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,g,c[i>>2]|0,C,k,2)|0;g=l;i=A;l=1;break}}m=c[f+(H*72|0)>>2]|0;n=c[e+((c[f+(C*72|0)+4>>2]|0)*56|0)+44>>2]|0;if((l|0)==2&(H|0)==(j|0)){l=eS(g,n,m)|0;d=dS(a,b,d,e,f,g,c[G>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,l,c[f+(C*72|0)+44>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,l,c[i>>2]|0,C,k,2)|0;g=l;i=A;l=1;break}else{l=eS(g,m,n)|0;d=dS(a,b,d,e,f,g,c[i>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,g,c[A>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,g,c[f+(C*72|0)+44>>2]|0,C,k,2)|0;g=l;i=G;l=1;break}}o=+h[t>>3];n=c[y>>2]|0;if(((+B(+(o-+h[e+(n*56|0)+8>>3]))<=1.0e-07?+B(+(+h[v>>3]-+h[e+(n*56|0)>>3]))<=1.0e-07:0)?(J=c[f+(C*72|0)+4>>2]|0,+B(+(+h[x>>3]-+h[e+(J*56|0)+8>>3]))<=1.0e-07):0)?+B(+(+h[w>>3]-+h[e+(J*56|0)>>3]))<=1.0e-07:0)if((l|0)==1){l=eS(g,n,J)|0;d=dS(a,b,d,e,f,g,c[i>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,g,c[f+(C*72|0)+44>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,l,c[f+(C*72|0)+52>>2]|0,C,k,1)|0;g=l;i=A;l=1;break}else{l=eS(g,J,n)|0;d=dS(a,b,d,e,f,g,c[f+(C*72|0)+52>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,g,c[A>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,l,c[i>>2]|0,C,k,2)|0;g=l;i=f+(C*72|0)+44|0;l=2;break}j=c[f+(C*72|0)+4>>2]|0;if(((+B(+(o-+h[e+(j*56|0)+24>>3]))<=1.0e-07?+B(+(+h[v>>3]-+h[e+(j*56|0)+16>>3]))<=1.0e-07:0)?+B(+(+h[x>>3]-+h[e+(n*56|0)+24>>3]))<=1.0e-07:0)?+B(+(+h[w>>3]-+h[e+(n*56|0)+16>>3]))<=1.0e-07:0){m=c[e+(j*56|0)+44>>2]|0;j=c[e+(n*56|0)+44>>2]|0;if((l|0)==1){l=eS(g,j,m)|0;d=dS(a,b,d,e,f,g,c[i>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,g,c[f+(C*72|0)+44>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,l,c[f+(C*72|0)+52>>2]|0,C,k,1)|0;g=l;i=A;l=1;break}else{l=eS(g,m,j)|0;d=dS(a,b,d,e,f,g,c[f+(C*72|0)+52>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,g,c[A>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,l,c[i>>2]|0,C,k,2)|0;g=l;i=f+(C*72|0)+44|0;l=2;break}}d=dS(a,b,d,e,f,g,z,C,k,2)|0;d=dS(a,b,d,e,f,g,c[A>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,g,c[f+(C*72|0)+44>>2]|0,C,k,2)|0;i=f+(C*72|0)+52|0;l=1}while(0);j=C;C=c[i>>2]|0}return d|0}function eS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;f=l;l=l+16|0;r=f+4|0;i=f;e=(c[46622]|0)+1|0;c[46622]=e;m=c[46619]|0;fS(b,d,r,i);r=c[r>>2]|0;h=c[m+(b*56|0)+32+(r<<2)>>2]|0;i=c[m+(d*56|0)+32+(c[i>>2]<<2)>>2]|0;n=c[46621]|0;g=n+1|0;n=n+2|0;c[46621]=n;q=c[46618]|0;c[q+(g<<4)>>2]=b;c[q+(n<<4)>>2]=d;o=q+(h<<4)+4|0;p=q+(g<<4)+4|0;c[p>>2]=c[o>>2];c[q+(c[o>>2]<<4)+8>>2]=g;c[q+(g<<4)+8>>2]=n;c[q+(n<<4)+4>>2]=g;j=q+(i<<4)+8|0;c[q+(n<<4)+8>>2]=c[j>>2];c[q+(c[j>>2]<<4)+4>>2]=n;c[o>>2]=i;c[j>>2]=h;j=m+(b*56|0)+48|0;o=c[j>>2]|0;i=m+(d*56|0)+48|0;k=c[i>>2]|0;c[m+(b*56|0)+16+(r<<2)>>2]=d;c[m+(b*56|0)+32+(o<<2)>>2]=g;c[m+(b*56|0)+16+(o<<2)>>2]=c[q+(c[p>>2]<<4)>>2];c[m+(d*56|0)+32+(k<<2)>>2]=n;c[m+(d*56|0)+16+(k<<2)>>2]=b;c[j>>2]=(c[j>>2]|0)+1;c[i>>2]=(c[i>>2]|0)+1;d=c[46620]|0;c[d+(a<<2)>>2]=h;c[d+(e<<2)>>2]=g;l=f;return e|0}function fS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0.0,h=0,i=0,j=0.0,k=0.0,l=0,m=0,n=0;l=c[46619]|0;m=l+(a*56|0)|0;n=l+(b*56|0)|0;f=0;g=-4.0;i=0;while(1){if((i|0)==4)break;h=c[l+(a*56|0)+16+(i<<2)>>2]|0;if((h|0)>=1?(j=+gS(m,l+(h*56|0)|0,n),j>g):0){f=i;g=j}i=i+1|0}c[d>>2]=f;f=0;i=0;g=-4.0;while(1){if((i|0)==4)break;h=c[l+(b*56|0)+16+(i<<2)>>2]|0;if((h|0)>=1?(k=+gS(n,l+(h*56|0)|0,m),k>g):0){f=i;g=k}i=i+1|0}c[e>>2]=f;return}function gS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0,g=0.0,i=0.0;g=+h[a>>3];i=+h[b>>3]-g;d=+h[a+8>>3];f=+h[b+8>>3]-d;g=+h[c>>3]-g;d=+h[c+8>>3]-d;e=d*f+g*i;if(!(d*i-g*f>=0.0))d=-e/(+C(+(d*d+g*g))*+C(+(f*f+i*i)))+-2.0;else d=e/(+C(+(d*d+g*g))*+C(+(f*f+i*i)));return +d}function hS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0.0,l=0.0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];i=e+32|0;j=a+16|0;c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];if(!d){f=a+8|0;g=j;i=a+24|0;d=a}else{f=a+24|0;g=a;i=a+8|0;d=j}k=+h[g>>3];l=+h[i>>3];h[e+16>>3]=+h[d>>3];h[e+24>>3]=l;h[e+48>>3]=k;h[e+56>>3]=+h[f>>3];a:do if(b|0){d=0;while(1){if((d|0)==4)break a;j=e+(d<<4)+8|0;l=+h[j>>3];b=e+(d<<4)|0;h[j>>3]=+h[b>>3];h[b>>3]=-l;d=d+1|0}}while(0);return}function iS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=b+3|0;i=b+1|0;j=b+2|0;k=a+(b*56|0)+44|0;l=a+(h*56|0)+44|0;e=0;f=b;while(1){if((f|0)>(h|0))break;do if((f|0)!=(b|0))if((f|0)==(h|0)){c[l>>2]=b;g=j;break}else{c[a+(f*56|0)+44>>2]=f+1;g=f+-1|0;break}else{c[k>>2]=i;g=h}while(0);c[a+(f*56|0)+48>>2]=g;c[a+(f*56|0)+32>>2]=0;n=a+(f*56|0)|0;m=d+(e<<4)|0;c[n>>2]=c[m>>2];c[n+4>>2]=c[m+4>>2];c[n+8>>2]=c[m+8>>2];c[n+12>>2]=c[m+12>>2];G3(a+(g*56|0)+16|0,m|0,16)|0;e=e+1|0;f=f+1|0}return b+4|0}function jS(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;c[46623]=e<<1;c[46624]=e;k=uH(e*80|0)|0;c[46625]=1;c[46626]=1;H3(f|0,0,e*72|0)|0;g=kS(c[d+4>>2]|0,b,f,k)|0;e=1;while(1){if((e|0)>(a|0))break;c[b+(e*56|0)+40>>2]=g;c[b+(e*56|0)+36>>2]=g;e=e+1|0}j=lS(a)|0;g=2;i=1;while(1){if((i|0)>(j|0))break;e=mS(a,i+-1|0)|0;h=mS(a,i)|0;while(1){if((e|0)>=(h|0)){e=1;break}nS(c[d+(g<<2)>>2]|0,b,f,k);e=e+1|0;g=g+1|0}while(1){if((e|0)>(a|0))break;oS(e,b,f,k);e=e+1|0}i=i+1|0}e=mS(a,j)|0;while(1){if((e|0)>=(a|0))break;nS(c[d+(g<<2)>>2]|0,b,f,k);g=g+1|0;e=e+1|0}D_(k);return c[46625]|0}function kS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;f=tS()|0;c[e+(f*40|0)>>2]=2;s=e+(f*40|0)+8|0;k=b+(a*56|0)|0;l=b+(a*56|0)+16|0;xS(s,k,l);n=tS()|0;c[e+(f*40|0)+36>>2]=n;c[e+(n*40|0)>>2]=3;c[e+(n*40|0)+28>>2]=f;j=tS()|0;c[e+(f*40|0)+32>>2]=j;c[e+(j*40|0)>>2]=2;r=e+(j*40|0)+8|0;yS(r,k,l);c[e+(j*40|0)+28>>2]=f;l=tS()|0;c[e+(j*40|0)+32>>2]=l;c[e+(l*40|0)>>2]=3;c[e+(l*40|0)+28>>2]=j;k=tS()|0;c[e+(j*40|0)+36>>2]=k;c[e+(k*40|0)>>2]=1;c[e+(k*40|0)+4>>2]=a;c[e+(k*40|0)+28>>2]=j;j=tS()|0;c[e+(k*40|0)+32>>2]=j;c[e+(j*40|0)>>2]=3;c[e+(j*40|0)+28>>2]=k;g=tS()|0;c[e+(k*40|0)+36>>2]=g;c[e+(g*40|0)>>2]=3;c[e+(g*40|0)+28>>2]=k;k=sS(d)|0;i=sS(d)|0;m=sS(d)|0;o=sS(d)|0;p=d+(k*72|0)+8|0;q=d+(i*72|0)+8|0;t=d+(o*72|0)+24|0;c[t>>2]=c[s>>2];c[t+4>>2]=c[s+4>>2];c[t+8>>2]=c[s+8>>2];c[t+12>>2]=c[s+12>>2];G3(q|0,s|0,16)|0;c[p>>2]=c[q>>2];c[p+4>>2]=c[q+4>>2];c[p+8>>2]=c[q+8>>2];c[p+12>>2]=c[q+12>>2];p=d+(k*72|0)+24|0;q=d+(i*72|0)+24|0;s=d+(m*72|0)+8|0;c[s>>2]=c[r>>2];c[s+4>>2]=c[r+4>>2];c[s+8>>2]=c[r+8>>2];c[s+12>>2]=c[r+12>>2];G3(q|0,r|0,16)|0;c[p>>2]=c[q>>2];c[p+4>>2]=c[q+4>>2];c[p+8>>2]=c[q+8>>2];c[p+12>>2]=c[q+12>>2];h[d+(o*72|0)+16>>3]=1073741824.0;h[d+(o*72|0)+8>>3]=1073741824.0;h[d+(m*72|0)+32>>3]=-1073741824.0;h[d+(m*72|0)+24>>3]=-1073741824.0;c[d+(i*72|0)>>2]=a;c[d+(k*72|0)+4>>2]=a;c[d+(i*72|0)+40>>2]=o;c[d+(k*72|0)+40>>2]=o;c[d+(i*72|0)+48>>2]=m;c[d+(k*72|0)+48>>2]=m;c[d+(m*72|0)+40>>2]=k;c[d+(o*72|0)+48>>2]=k;c[d+(m*72|0)+44>>2]=i;c[d+(o*72|0)+52>>2]=i;c[d+(k*72|0)+56>>2]=j;c[d+(i*72|0)+56>>2]=g;c[d+(m*72|0)+56>>2]=l;c[d+(o*72|0)+56>>2]=n;c[d+(i*72|0)+68>>2]=1;c[d+(k*72|0)+68>>2]=1;c[d+(o*72|0)+68>>2]=1;c[d+(m*72|0)+68>>2]=1;c[e+(n*40|0)+24>>2]=o;c[e+(l*40|0)+24>>2]=m;c[e+(j*40|0)+24>>2]=k;c[e+(g*40|0)+24>>2]=i;c[b+(a*56|0)+32>>2]=1;return f|0}function lS(a){a=a|0;var b=0.0;b=+(a|0);a=0;while(1){if(!(b>=1.0))break;b=+g$(b);a=a+1|0}return a+-1|0}function mS(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+(a|0);c=d;a=0;while(1){if((a|0)>=(b|0))break;c=+g$(c);a=a+1|0}return ~~+N(+(d/c))|0}function nS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0;W=l;l=l+96|0;S=W+32|0;f=W+16|0;T=W;s=S;k=b+(a*56|0)|0;r=s+56|0;do{c[s>>2]=c[k>>2];s=s+4|0;k=k+4|0}while((s|0)<(r|0));U=S+16|0;V=S+24|0;i=+h[V>>3];H=S+8|0;j=+h[H>>3];do if(!(i>j+1.0e-07)){if(!(i<j+-1.0e-07)?+h[U>>3]>+h[S>>3]:0){G=4;break}G=(rS(a,b,1)|0)==0;f=c[S+36>>2]|0;if(G){n=0;G=7}else{f=pS(S,U,f,b,e)|0;G=20}}else G=4;while(0);if((G|0)==4){c[f>>2]=c[S>>2];c[f+4>>2]=c[S+4>>2];c[f+8>>2]=c[S+8>>2];c[f+12>>2]=c[S+12>>2];c[S>>2]=c[U>>2];c[S+4>>2]=c[U+4>>2];c[S+8>>2]=c[U+8>>2];c[S+12>>2]=c[U+12>>2];c[U>>2]=c[f>>2];c[U+4>>2]=c[f+4>>2];c[U+8>>2]=c[f+8>>2];c[U+12>>2]=c[f+12>>2];E=S+36|0;F=c[E>>2]|0;G=S+40|0;f=c[G>>2]|0;c[E>>2]=f;c[G>>2]=F;if(!(rS(a,b,2)|0)){n=1;G=7}else{f=pS(S,U,f,b,e)|0;G=19}}if((G|0)==7){m=pS(S,U,f,b,e)|0;f=sS(d)|0;c[d+(f*72|0)+68>>2]=1;s=d+(f*72|0)|0;k=d+(m*72|0)|0;r=s+72|0;do{c[s>>2]=c[k>>2];s=s+4|0;k=k+4|0}while((s|0)<(r|0));q=+h[H>>3];h[d+(f*72|0)+16>>3]=q;h[d+(m*72|0)+32>>3]=q;q=+h[S>>3];h[d+(f*72|0)+8>>3]=q;h[d+(m*72|0)+24>>3]=q;c[d+(m*72|0)+48>>2]=f;c[d+(m*72|0)+52>>2]=0;c[d+(f*72|0)+40>>2]=m;c[d+(f*72|0)+44>>2]=0;g=c[d+(f*72|0)+48>>2]|0;if((g|0)>0){k=d+(g*72|0)+40|0;if((c[k>>2]|0)==(m|0))c[k>>2]=f;g=d+(g*72|0)+44|0;if((c[g>>2]|0)==(m|0))c[g>>2]=f}g=c[d+(f*72|0)+52>>2]|0;if((g|0)>0){k=d+(g*72|0)+40|0;if((c[k>>2]|0)==(m|0))c[k>>2]=f;g=d+(g*72|0)+44|0;if((c[g>>2]|0)==(m|0))c[g>>2]=f}E=tS()|0;G=tS()|0;F=d+(m*72|0)+56|0;D=c[F>>2]|0;c[e+(D*40|0)>>2]=2;C=e+(D*40|0)+8|0;c[C>>2]=c[S>>2];c[C+4>>2]=c[S+4>>2];c[C+8>>2]=c[S+8>>2];c[C+12>>2]=c[S+12>>2];c[e+(D*40|0)+4>>2]=a;c[e+(D*40|0)+32>>2]=G;c[e+(D*40|0)+36>>2]=E;c[e+(E*40|0)>>2]=3;c[e+(E*40|0)+24>>2]=m;c[e+(E*40|0)+28>>2]=D;c[e+(G*40|0)>>2]=3;c[e+(G*40|0)+24>>2]=f;c[e+(G*40|0)+28>>2]=D;c[F>>2]=E;c[d+(f*72|0)+56>>2]=G;if(n)G=19;else G=20}if((G|0)==19)if(!(rS(a,b,1)|0)){g=1;G=21}else{g=1;G=32}else if((G|0)==20)if(!(rS(a,b,2)|0)){g=0;G=21}else{g=0;G=32}if((G|0)==21){o=pS(U,S,c[S+40>>2]|0,b,e)|0;n=sS(d)|0;c[d+(n*72|0)+68>>2]=1;s=d+(n*72|0)|0;k=d+(o*72|0)|0;r=s+72|0;do{c[s>>2]=c[k>>2];s=s+4|0;k=k+4|0}while((s|0)<(r|0));q=+h[V>>3];h[d+(n*72|0)+16>>3]=q;h[d+(o*72|0)+32>>3]=q;q=+h[U>>3];h[d+(n*72|0)+8>>3]=q;h[d+(o*72|0)+24>>3]=q;c[d+(o*72|0)+48>>2]=n;c[d+(o*72|0)+52>>2]=0;c[d+(n*72|0)+40>>2]=o;c[d+(n*72|0)+44>>2]=0;k=c[d+(n*72|0)+48>>2]|0;if((k|0)>0){m=d+(k*72|0)+40|0;if((c[m>>2]|0)==(o|0))c[m>>2]=n;k=d+(k*72|0)+44|0;if((c[k>>2]|0)==(o|0))c[k>>2]=n}k=c[d+(n*72|0)+52>>2]|0;if((k|0)>0){m=d+(k*72|0)+40|0;if((c[m>>2]|0)==(o|0))c[m>>2]=n;k=d+(k*72|0)+44|0;if((c[k>>2]|0)==(o|0))c[k>>2]=n}D=tS()|0;F=tS()|0;E=d+(o*72|0)+56|0;C=c[E>>2]|0;c[e+(C*40|0)>>2]=2;A=e+(C*40|0)+8|0;c[A>>2]=c[U>>2];c[A+4>>2]=c[U+4>>2];c[A+8>>2]=c[U+8>>2];c[A+12>>2]=c[U+12>>2];c[e+(C*40|0)+4>>2]=a;c[e+(C*40|0)+32>>2]=F;c[e+(C*40|0)+36>>2]=D;c[e+(D*40|0)>>2]=3;c[e+(D*40|0)+24>>2]=o;c[e+(D*40|0)+28>>2]=C;c[e+(F*40|0)>>2]=3;c[e+(F*40|0)+24>>2]=n;c[e+(F*40|0)+28>>2]=C;c[E>>2]=D;c[d+(n*72|0)+56>>2]=F;F=f;f=0}else if((G|0)==32){F=f;o=pS(U,S,c[S+40>>2]|0,b,e)|0;f=1}a:do if((F|0)>0){D=d+(o*72|0)+24|0;E=d+(o*72|0)+32|0;C=(f|0)!=0;y=g?b+(a*56|0)+48|0:b+(a*56|0)+44|0;z=T+8|0;g=0;f=0;x=F;b:while(1){k=d+(x*72|0)|0;v=d+(x*72|0)+24|0;if(!(uS(v,D)|0))break a;m=d+(x*72|0)+56|0;u=c[m>>2]|0;n=tS()|0;p=tS()|0;c[e+(u*40|0)>>2]=1;c[e+(u*40|0)+4>>2]=a;c[e+(u*40|0)+32>>2]=n;c[e+(u*40|0)+36>>2]=p;c[e+(n*40|0)>>2]=3;c[e+(n*40|0)+24>>2]=x;c[e+(n*40|0)+28>>2]=u;c[e+(p*40|0)>>2]=3;w=sS(d)|0;c[e+(p*40|0)+24>>2]=w;A=d+(w*72|0)|0;c[d+(w*72|0)+68>>2]=1;c[e+(p*40|0)+28>>2]=u;g=(x|0)==(F|0)?w:g;u=d+(x*72|0)+32|0;if(+B(+(+h[u>>3]-+h[E>>3]))<=1.0e-07?+B(+(+h[v>>3]-+h[D>>3]))<=1.0e-07:0)f=w;s=A;r=s+72|0;do{c[s>>2]=c[k>>2];s=s+4|0;k=k+4|0}while((s|0)<(r|0));c[m>>2]=n;c[d+(w*72|0)+56>>2]=p;t=d+(x*72|0)+48|0;m=d+(x*72|0)+52|0;k=(c[m>>2]|0)<1;do if((c[t>>2]|0)<1){if(k)break b;s=d+(x*72|0)+40|0;k=c[s>>2]|0;do if((k|0)>0?(M=d+(x*72|0)+44|0,N=c[M>>2]|0,(N|0)>0):0){r=d+(x*72|0)+60|0;k=c[r>>2]|0;if((k|0)<=0){c[d+(w*72|0)+40>>2]=N;c[d+(w*72|0)+44>>2]=-1;c[M>>2]=-1;c[d+(N*72|0)+48>>2]=w;break}if((c[d+(x*72|0)+64>>2]|0)==1){c[d+(w*72|0)+40>>2]=N;c[M>>2]=-1;c[d+(w*72|0)+44>>2]=k;c[d+((c[s>>2]|0)*72|0)+48>>2]=x;p=w;n=N}else{c[d+(w*72|0)+44>>2]=-1;t=d+(w*72|0)+40|0;c[t>>2]=c[M>>2];n=c[s>>2]|0;c[M>>2]=n;c[s>>2]=k;c[d+(k*72|0)+48>>2]=x;p=x;k=c[t>>2]|0}c[d+(n*72|0)+48>>2]=p;c[d+(k*72|0)+48>>2]=w;c[d+(w*72|0)+60>>2]=0;c[r>>2]=0}else G=77;while(0);do if((G|0)==77){G=0;n=d+(k*72|0)+48|0;p=c[n>>2]|0;k=d+(k*72|0)+52|0;if((p|0)>0?(c[k>>2]|0)>0:0){k=c[d+(p*72|0)+4>>2]|0;if((k|0)>0?(qS(k,b,U)|0)==0:0){c[d+(w*72|0)+44>>2]=-1;c[d+(x*72|0)+44>>2]=-1;c[s>>2]=-1;c[d+((c[d+(w*72|0)+40>>2]|0)*72|0)+52>>2]=w;break}c[d+(x*72|0)+44>>2]=-1;c[d+(w*72|0)+44>>2]=-1;c[d+(w*72|0)+40>>2]=-1;c[d+((c[s>>2]|0)*72|0)+48>>2]=x;break}c[n>>2]=x;c[k>>2]=w}while(0);if(+B(+(+h[u>>3]-+h[E>>3]))<=1.0e-07?C&+B(+(+h[v>>3]-+h[D>>3]))<=1.0e-07:0){k=c[y>>2]|0;if((k|0)>0?(qS(k,b,S)|0)!=0:0){c[d+((c[m>>2]|0)*72|0)+40>>2]=x;n=d+(w*72|0)+52|0;k=w}else{c[d+((c[d+(w*72|0)+52>>2]|0)*72|0)+44>>2]=w;n=m;k=x}c[n>>2]=-1;c[d+(k*72|0)+48>>2]=-1;k=c[m>>2]|0;break}k=c[m>>2]|0;m=d+(k*72|0)+40|0;n=c[m>>2]|0;p=d+(k*72|0)+44|0;if((n|0)>0?(O=c[p>>2]|0,P=(n|0)==(x|0),(O|0)>0):0){c[d+(k*72|0)+60>>2]=P?O:n;c[d+(k*72|0)+64>>2]=P?1:2}c[m>>2]=x;c[p>>2]=w}else{if(!k){i=+h[u>>3];j=+h[H>>3];q=i-j;if(!(+B(+q)<=1.0e-07)){h[z>>3]=i;i=+h[S>>3];h[T>>3]=(+h[U>>3]-i)*(q/(+h[V>>3]-j))+i;s=(vS(T,v)|0)!=0}else s=+h[v>>3]>+h[S>>3];r=d+(x*72|0)+40|0;k=c[r>>2]|0;do if((k|0)>0?(Q=d+(x*72|0)+44|0,R=c[Q>>2]|0,(R|0)>0):0){p=d+(x*72|0)+60|0;k=c[p>>2]|0;if((k|0)<=0){c[d+(w*72|0)+40>>2]=R;c[d+(w*72|0)+44>>2]=-1;c[Q>>2]=-1;c[d+(R*72|0)+48>>2]=w;break}if((c[d+(x*72|0)+64>>2]|0)==1){c[d+(w*72|0)+40>>2]=R;c[Q>>2]=-1;c[d+(w*72|0)+44>>2]=k;c[d+((c[r>>2]|0)*72|0)+48>>2]=x;n=w;m=R}else{c[d+(w*72|0)+44>>2]=-1;X=d+(w*72|0)+40|0;c[X>>2]=c[Q>>2];m=c[r>>2]|0;c[Q>>2]=m;c[r>>2]=k;c[d+(k*72|0)+48>>2]=x;n=x;k=c[X>>2]|0}c[d+(m*72|0)+48>>2]=n;c[d+(k*72|0)+48>>2]=w;c[d+(w*72|0)+60>>2]=0;c[p>>2]=0}else G=106;while(0);do if((G|0)==106){G=0;m=d+(k*72|0)+48|0;n=c[m>>2]|0;k=d+(k*72|0)+52|0;if((n|0)>0?(c[k>>2]|0)>0:0){k=c[d+(n*72|0)+4>>2]|0;if((k|0)>0?(qS(k,b,U)|0)==0:0){c[d+(w*72|0)+44>>2]=-1;c[d+(x*72|0)+44>>2]=-1;c[r>>2]=-1;c[d+((c[d+(w*72|0)+40>>2]|0)*72|0)+52>>2]=w;break}c[d+(x*72|0)+44>>2]=-1;c[d+(w*72|0)+44>>2]=-1;c[d+(w*72|0)+40>>2]=-1;c[d+((c[r>>2]|0)*72|0)+48>>2]=x;break}c[m>>2]=x;c[k>>2]=w}while(0);if(+B(+(+h[u>>3]-+h[E>>3]))<=1.0e-07?C&+B(+(+h[v>>3]-+h[D>>3]))<=1.0e-07:0){k=c[t>>2]|0;c[d+(k*72|0)+40>>2]=x;c[d+(k*72|0)+44>>2]=-1;k=d+(x*72|0)+52|0;X=c[k>>2]|0;c[d+(X*72|0)+40>>2]=w;c[d+(X*72|0)+44>>2]=-1;c[d+(w*72|0)+48>>2]=X;c[d+(w*72|0)+52>>2]=-1;c[k>>2]=-1;k=-1}else G=116;do if((G|0)==116){G=0;k=c[t>>2]|0;c[d+(k*72|0)+40>>2]=x;m=d+(k*72|0)+44|0;if(s){c[m>>2]=w;X=d+(x*72|0)+52|0;v=c[X>>2]|0;c[d+(v*72|0)+40>>2]=w;c[d+(v*72|0)+44>>2]=-1;c[X>>2]=-1;break}else{c[m>>2]=-1;k=d+(x*72|0)+52|0;X=c[k>>2]|0;c[d+(X*72|0)+40>>2]=x;c[d+(X*72|0)+44>>2]=w;c[d+(w*72|0)+48>>2]=X;c[d+(w*72|0)+52>>2]=-1;k=c[k>>2]|0;break}}while(0);break}s=d+(x*72|0)+40|0;k=c[s>>2]|0;do if((k|0)>0?(I=d+(x*72|0)+44|0,J=c[I>>2]|0,(J|0)>0):0){r=d+(x*72|0)+60|0;k=c[r>>2]|0;if((k|0)<=0){c[d+(w*72|0)+40>>2]=J;c[d+(w*72|0)+44>>2]=-1;c[I>>2]=-1;c[d+(J*72|0)+48>>2]=w;break}if((c[d+(x*72|0)+64>>2]|0)==1){c[d+(w*72|0)+40>>2]=J;c[I>>2]=-1;c[d+(w*72|0)+44>>2]=k;c[d+((c[s>>2]|0)*72|0)+48>>2]=x;p=w;n=J}else{c[d+(w*72|0)+44>>2]=-1;X=d+(w*72|0)+40|0;c[X>>2]=c[I>>2];n=c[s>>2]|0;c[I>>2]=n;c[s>>2]=k;c[d+(k*72|0)+48>>2]=x;p=x;k=c[X>>2]|0}c[d+(n*72|0)+48>>2]=p;c[d+(k*72|0)+48>>2]=w;c[d+(w*72|0)+60>>2]=0;c[r>>2]=0}else G=51;while(0);do if((G|0)==51){G=0;n=d+(k*72|0)+48|0;p=c[n>>2]|0;k=d+(k*72|0)+52|0;if((p|0)>0?(c[k>>2]|0)>0:0){k=c[d+(p*72|0)+4>>2]|0;if((k|0)>0?(qS(k,b,U)|0)==0:0){c[d+(w*72|0)+44>>2]=-1;c[d+(x*72|0)+44>>2]=-1;c[s>>2]=-1;c[d+((c[d+(w*72|0)+40>>2]|0)*72|0)+52>>2]=w;break}c[d+(x*72|0)+44>>2]=-1;c[d+(w*72|0)+44>>2]=-1;c[d+(w*72|0)+40>>2]=-1;c[d+((c[s>>2]|0)*72|0)+48>>2]=x;break}c[n>>2]=x;c[k>>2]=w}while(0);if(+B(+(+h[u>>3]-+h[E>>3]))<=1.0e-07?C&+B(+(+h[v>>3]-+h[D>>3]))<=1.0e-07:0){k=c[y>>2]|0;if((k|0)>0?(qS(k,b,S)|0)!=0:0){c[d+((c[t>>2]|0)*72|0)+40>>2]=x;m=d+(w*72|0)+52|0;k=w}else{c[d+((c[d+(w*72|0)+48>>2]|0)*72|0)+44>>2]=w;k=x}c[m>>2]=-1;c[d+(k*72|0)+48>>2]=-1;k=c[t>>2]|0;break}k=c[t>>2]|0;m=d+(k*72|0)+40|0;n=c[m>>2]|0;p=d+(k*72|0)+44|0;if((n|0)>0?(K=c[p>>2]|0,L=(n|0)==(x|0),(K|0)>0):0){c[d+(k*72|0)+60>>2]=L?K:n;c[d+(k*72|0)+64>>2]=L?1:2}c[m>>2]=x;c[p>>2]=w}while(0);c[A>>2]=a;c[d+(x*72|0)+4>>2]=a;if((k|0)>0)x=k;else break a}E1(135342,19,1,c[15686]|0)|0}else{g=0;f=0}while(0);wS(a,F,o,1,d,e);wS(a,g,f,2,d,e);c[b+(a*56|0)+32>>2]=1;l=W;return}function oS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if(!(c[b+(a*56|0)+32>>2]|0)){f=b+(a*56|0)|0;g=b+(a*56|0)+16|0;h=b+(a*56|0)+36|0;c[h>>2]=c[d+((pS(f,g,c[h>>2]|0,b,e)|0)*72|0)+56>>2];a=b+(a*56|0)+40|0;c[a>>2]=c[d+((pS(g,f,c[a>>2]|0,b,e)|0)*72|0)+56>>2]}return}function pS(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,i=0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0,p=0.0,q=0,r=0;o=a+8|0;q=b+8|0;a:while(1){b:do switch(c[f+(d*40|0)>>2]|0){case 3:{r=3;break a}case 2:{g=+h[o>>3];i=f+(d*40|0)+8|0;j=+h[f+(d*40|0)+16>>3];k=j+1.0e-07;do if(!(g>k)){l=j+-1.0e-07;if(!(g<l)?+h[a>>3]>+h[i>>3]:0)break;if(+B(+(g-j))<=1.0e-07?(m=+h[i>>3],+B(+(+h[a>>3]-m))<=1.0e-07):0){g=+h[q>>3];do if(!(g>k)){if(!(g<l)?+h[b>>3]>m:0)break;d=f+(d*40|0)+32|0;break b}while(0);d=f+(d*40|0)+36|0;break b}d=f+(d*40|0)+32|0;break b}while(0);d=f+(d*40|0)+36|0;break}case 1:{g=+h[o>>3];i=c[f+(d*40|0)+4>>2]|0;if(+B(+(g-+h[e+(i*56|0)+8>>3]))<=1.0e-07?(n=+h[a>>3],+B(+(n-+h[e+(i*56|0)>>3]))<=1.0e-07):0)j=n;else r=19;do if((r|0)==19){r=0;if(+B(+(g-+h[e+(i*56|0)+24>>3]))<=1.0e-07?(p=+h[a>>3],+B(+(p-+h[e+(i*56|0)+16>>3]))<=1.0e-07):0){j=p;break}if(!(qS(i,e,a)|0)){d=f+(d*40|0)+36|0;break b}else{d=f+(d*40|0)+32|0;break b}}while(0);if(!(+B(+(g-+h[q>>3]))<=1.0e-07))if(!(qS(i,e,b)|0)){d=f+(d*40|0)+36|0;break b}else{d=f+(d*40|0)+32|0;break b}else if(+h[b>>3]<j){d=f+(d*40|0)+32|0;break b}else{d=f+(d*40|0)+36|0;break b}}default:{r=31;break a}}while(0);d=c[d>>2]|0}if((r|0)==3)return c[f+(d*40|0)+24>>2]|0;else if((r|0)==31){E1(135276,35,1,c[15686]|0)|0;qa(135312,135314,349,135326)}return 0}function qS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0,g=0.0,i=0,j=0,k=0.0;f=b+(a*56|0)+16|0;g=+h[b+(a*56|0)+24>>3];i=b+(a*56|0)|0;e=+h[b+(a*56|0)+8>>3];do if(!(g>e+1.0e-07)){if(!(g<e+-1.0e-07)?+h[f>>3]>+h[i>>3]:0){j=4;break}d=+h[c+8>>3];if(+B(+(g-d))<=1.0e-07){d=+h[c>>3]<+h[f>>3]?1.0:-1.0;break}if(!(+B(+(e-d))<=1.0e-07)){k=+h[f>>3];d=(+h[i>>3]-k)*(d-g)-(+h[c>>3]-k)*(e-g);break}else{d=+h[c>>3]<+h[i>>3]?1.0:-1.0;break}}else j=4;while(0);do if((j|0)==4){d=+h[c+8>>3];if(+B(+(g-d))<=1.0e-07){d=+h[c>>3]<+h[f>>3]?1.0:-1.0;break}if(!(+B(+(e-d))<=1.0e-07)){k=+h[i>>3];d=(+h[f>>3]-k)*(d-e)-(+h[c>>3]-k)*(g-e);break}else{d=+h[c>>3]<+h[i>>3]?1.0:-1.0;break}}while(0);return d>0.0|0}function rS(a,b,d){a=a|0;b=b|0;d=d|0;return c[b+((c[((d|0)==1?b+(a*56|0)+48|0:b+(a*56|0)+44|0)>>2]|0)*56|0)+32>>2]|0}function sS(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;d=e;b=c[46625]|0;if((b|0)<(c[46624]|0)){c[a+(b*72|0)>>2]=-1;c[a+(b*72|0)+4>>2]=-1;c[a+(b*72|0)+68>>2]=1;c[46625]=b+1;l=e;return b|0}else{e=c[15686]|0;c[d>>2]=b;g1(e,135401,d)|0;qa(135312,135314,88,135439)}return 0}function tS(){var a=0;a=c[46626]|0;if((a|0)<(c[46623]|0)){c[46626]=a+1;return a|0}else{E1(135362,30,1,c[15686]|0)|0;qa(135312,135314,72,135393)}return 0}function uS(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+h[a+8>>3];d=+h[b+8>>3];if(!(c>d+1.0e-07))if(c<d+-1.0e-07)a=0;else a=+h[a>>3]>=+h[b>>3]&1;else a=1;return a|0}function vS(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+h[a+8>>3];d=+h[b+8>>3];if(!(c<d+-1.0e-07))if(c>d+1.0e-07)a=0;else a=+h[a>>3]<+h[b>>3]&1;else a=1;return a|0}function wS(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=f+(d*72|0)+24|0;p=(e|0)==1;a:while(1){o=f+(b*72|0)+24|0;j=f+(b*72|0)+48|0;k=f+(b*72|0)+52|0;l=f+(b*72|0)|0;m=f+(b*72|0)+4|0;n=f+(b*72|0)+56|0;if((b|0)<=0)break;while(1){if(!(uS(o,q)|0))break a;d=c[j>>2]|0;e=(d|0)>0;do if(p){if(e?(c[f+(d*72|0)+4>>2]|0)==(a|0):0)break;d=c[k>>2]|0;if((d|0)<=0){b=d;continue a}if((c[f+(d*72|0)+4>>2]|0)!=(a|0)){b=d;continue a}}else{if(e?(c[f+(d*72|0)>>2]|0)==(a|0):0)break;d=c[k>>2]|0;if((d|0)<=0){b=d;continue a}if((c[f+(d*72|0)>>2]|0)!=(a|0)){b=d;continue a}}while(0);if((c[l>>2]|0)!=(c[f+(d*72|0)>>2]|0)){b=d;continue a}if((c[m>>2]|0)!=(c[f+(d*72|0)+4>>2]|0)){b=d;continue a}r=c[f+(d*72|0)+56>>2]|0;e=c[g+(r*40|0)+28>>2]|0;h=g+(e*40|0)+32|0;i=c[n>>2]|0;if((c[h>>2]|0)==(r|0))c[h>>2]=i;else c[g+(e*40|0)+36>>2]=i;e=c[f+(d*72|0)+48>>2]|0;c[j>>2]=e;do if((e|0)>0){h=f+(e*72|0)+40|0;if((c[h>>2]|0)==(d|0)){c[h>>2]=b;break}e=f+(e*72|0)+44|0;if((c[e>>2]|0)==(d|0))c[e>>2]=b}while(0);e=c[f+(d*72|0)+52>>2]|0;c[k>>2]=e;do if((e|0)>0){h=f+(e*72|0)+40|0;if((c[h>>2]|0)==(d|0)){c[h>>2]=b;break}e=f+(e*72|0)+44|0;if((c[e>>2]|0)==(d|0))c[e>>2]=b}while(0);r=f+(d*72|0)+24|0;c[o>>2]=c[r>>2];c[o+4>>2]=c[r+4>>2];c[o+8>>2]=c[r+8>>2];c[o+12>>2]=c[r+12>>2];c[f+(d*72|0)+68>>2]=2}}return}function xS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0;e=+h[b+8>>3];f=+h[d+8>>3];do if(!(e>f+1.0e-07)){if(!(+B(+(e-f))<=1.0e-07)){c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];break}if(+h[b>>3]>+h[d>>3]+1.0e-07){c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];break}else{c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];break}}else{c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2]}while(0);return}function yS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0;e=+h[b+8>>3];f=+h[d+8>>3];do if(!(e<f+-1.0e-07)){if(!(+B(+(e-f))<=1.0e-07)){c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];break}if(+h[b>>3]<+h[d>>3]){c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];break}else{c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];break}}else{c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2]}while(0);return}function zS(a){a=a|0;var b=0;b=uH(8)|0;if(b|0){c[b+4>>2]=a;c[b>>2]=0}return b|0}function AS(a,b){a=a|0;b=b|0;if(b){b=zS(b)|0;c[b>>2]=a;a=b}return a|0}function BS(a){a=a|0;var b=0;do{b=a;a=c[a>>2]|0;D_(b)}while((a|0)!=0);return}function CS(){var a=0;a=uH(1992)|0;if(a|0)c[a>>2]=DS(a)|0;return a|0}function DS(a){a=a|0;var b=0;b=JS(a)|0;c[b+4>>2]=0;a=a+1972|0;c[a>>2]=(c[a>>2]|0)+1;return b|0}function ES(a){a=a|0;FS(a,c[a>>2]|0);D_(c[a>>2]|0);D_(a);return 0}function FS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=a+1980|0;h=a+1912|0;i=a+1936|0;a:do if((c[b+4>>2]|0)>0){d=0;while(1){if((d|0)==64)break a;e=b+8+(d*20|0)+16|0;f=c[e>>2]|0;if(f|0?(FS(a,f),D_(c[e>>2]|0),PS(b,d),c[g>>2]=(c[g>>2]|0)+-1,c[h>>2]|0):0)c[i>>2]=(c[i>>2]|0)+1;d=d+1|0}}else{d=0;while(1){if((d|0)==64)break a;if(c[b+8+(d*20|0)+16>>2]|0?(PS(b,d),c[g>>2]=(c[g>>2]|0)+-1,c[h>>2]|0):0)c[i>>2]=(c[i>>2]|0)+1;d=d+1|0}}while(0);return}function GS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!b)qa(135797,135447,194,135455);e=c[b+4>>2]|0;if((e|0)<=-1)qa(135467,135447,195,135455);if(!d)qa(135739,135447,196,135455);i=a+1952|0;c[i>>2]=(c[i>>2]|0)+1;a:do if((e|0)>0){i=0;e=0;while(1){if((i|0)==64)break a;f=b+8+(i*20|0)+16|0;if((c[f>>2]|0)!=0?(US(d,b+8+(i*20|0)|0)|0)!=0:0){g=GS(a,c[f>>2]|0,d)|0;if(!e)e=g;else{f=e;while(1){h=c[f>>2]|0;if(!h)break;else f=h}c[f>>2]=g}}i=i+1|0}}else{g=0;e=0;while(1){if((g|0)==64)break a;f=b+8+(g*20|0)|0;if((c[b+8+(g*20|0)+16>>2]|0)!=0?(US(d,f)|0)!=0:0)e=AS(e,f)|0;g=g+1|0}}while(0);return e|0}function HS(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+52|0;m=p+32|0;n=p+16|0;o=p;c[k>>2]=0;if(!((b|0)!=0&(e|0)!=0))qa(135653,135447,247,135481);if((f|0)>-1?(j=c[e>>2]|0,(c[j+4>>2]|0)>=(f|0)):0){g=0;while(1){if((g|0)>=2)break;if((c[b+(g<<2)>>2]|0)>(c[b+(g+2<<2)>>2]|0)){h=8;break}else g=g+1|0}if((h|0)==8)qa(135528,135447,250,135481);i=a+1912|0;g=a+1908|0;h=c[g>>2]|0;if(c[i>>2]|0){q=h|0?a+1924|0:a+1916|0;c[q>>2]=(c[q>>2]|0)+1}if(!h){q=a+1964|0;c[q>>2]=(c[q>>2]|0)+1}if(!(IS(a,b,d,j,k,f)|0))g=0;else{if(c[i>>2]|0){q=c[g>>2]|0?a+1948|0:a+1944|0;c[q>>2]=(c[q>>2]|0)+1}g=JS(a)|0;q=a+1976|0;c[q>>2]=(c[q>>2]|0)+1;q=c[e>>2]|0;c[g+4>>2]=(c[q+4>>2]|0)+1;MS(n,q);c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];q=m+16|0;c[q>>2]=c[e>>2];OS(a,m,g,0)|0;MS(o,c[k>>2]|0);c[m>>2]=c[o>>2];c[m+4>>2]=c[o+4>>2];c[m+8>>2]=c[o+8>>2];c[m+12>>2]=c[o+12>>2];c[q>>2]=c[k>>2];OS(a,m,g,0)|0;c[e>>2]=g;g=a+1980|0;c[g>>2]=(c[g>>2]|0)+2;g=1}l=p;return g|0}qa(135493,135447,248,135481);return 0}function IS(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+80|0;m=q+52|0;n=q+48|0;o=q+32|0;p=q+16|0;k=q;c[n>>2]=0;if(!((b|0)!=0&(e|0)!=0&(f|0)!=0))qa(135571,135447,311,135585);if((g|0)>-1?(i=e+4|0,h=c[i>>2]|0,(h|0)>=(g|0)):0){if(c[a+1912>>2]|0){h=c[a+1908>>2]|0?a+1948|0:a+1944|0;c[h>>2]=(c[h>>2]|0)+1;h=c[i>>2]|0}do if((h|0)>(g|0)){i=NS(b,e)|0;h=e+8+(i*20|0)+16|0;i=e+8+(i*20|0)|0;if(!(IS(a,b,d,c[h>>2]|0,n,g)|0)){TS(o,b,i);c[i>>2]=c[o>>2];c[i+4>>2]=c[o+4>>2];c[i+8>>2]=c[o+8>>2];c[i+12>>2]=c[o+12>>2];j=0;break}else{MS(p,c[h>>2]|0);c[i>>2]=c[p>>2];c[i+4>>2]=c[p+4>>2];c[i+8>>2]=c[p+8>>2];c[i+12>>2]=c[p+12>>2];j=c[n>>2]|0;c[m+16>>2]=j;MS(k,j);c[m>>2]=c[k>>2];c[m+4>>2]=c[k+4>>2];c[m+8>>2]=c[k+8>>2];c[m+12>>2]=c[k+12>>2];j=a+1980|0;c[j>>2]=(c[j>>2]|0)+1;j=OS(a,m,e,f)|0;break}}else if((h|0)==(g|0)){c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];c[m+16>>2]=d;j=a+1980|0;c[j>>2]=(c[j>>2]|0)+1;j=OS(a,m,e,f)|0;break}else qa(135630,135447,341,135585);while(0);l=q;return j|0}qa(135598,135447,312,135585);return 0}function JS(a){a=a|0;a=a+1968|0;c[a>>2]=(c[a>>2]|0)+1;a=C_(1288)|0;KS(a);return a|0}function KS(a){a=a|0;var b=0;c[a>>2]=0;c[a+4>>2]=-1;b=0;while(1){if((b|0)==64)break;LS(a+8+(b*20|0)|0);b=b+1|0}return}function LS(a){a=a|0;QS(a);c[a+16>>2]=0;return}function MS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;g=i+16|0;h=i;if(!b)qa(135797,135636,99,135643);QS(g);d=1;f=0;while(1){if((f|0)==64)break;do if(c[b+8+(f*20|0)+16>>2]|0){e=b+8+(f*20|0)|0;if(!d){TS(h,g,e);c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];c[g+12>>2]=c[h+12>>2];d=0;break}else{c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];d=0;break}}while(0);f=f+1|0}c[a>>2]=c[g>>2];c[a+4>>2]=c[g+4>>2];c[a+8>>2]=c[g+8>>2];c[a+12>>2]=c[g+12>>2];l=i;return}function NS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;k=l;l=l+32|0;i=k+16|0;j=k;if(!((a|0)!=0&(b|0)!=0))qa(135653,135636,125,135660);d=0;e=0;f=0;g=1;h=0;while(1){if((h|0)==64)break;if(c[b+8+(h*20|0)+16>>2]|0){n=b+8+(h*20|0)|0;p=SS(n)|0;TS(j,a,n);c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];n=(SS(i)|0)-p|0;m=(g|0)!=0|(n|0)<(f|0);o=m|(p|0)<(e|0)&(n|0)==(f|0);d=o?h:d;e=o?p:e;f=o?n:f;g=m?0:g}h=h+1|0}l=k;return d|0}function OS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if(!b)qa(135819,135636,167,135671);if(!d)qa(135797,135636,168,135671);do if((c[d>>2]|0)<64){a=0;while(1){if((a|0)>=64){e=10;break}if(!(c[d+8+(a*20|0)+16>>2]|0)){e=8;break}a=a+1|0}if((e|0)==8){f=d+8+(a*20|0)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];c[f+16>>2]=c[b+16>>2];f=0;g=d;break}else if((e|0)==10)qa(135681,135636,178,135671)}else{if(c[a+1912>>2]|0){h=c[a+1908>>2]|0?a+1948|0:a+1944|0;c[h>>2]=(c[h>>2]|0)+1}if(!e)qa(135694,135636,187,135671);else{VS(a,d,b,e);f=1;g=(c[d+4>>2]|0)==0?a+1972|0:a+1976|0;break}}while(0);c[g>>2]=(c[g>>2]|0)+1;return f|0}function PS(a,b){a=a|0;b=b|0;if(!((a|0)!=0&b>>>0<64))qa(135698,135636,201,135726);if(!(c[a+8+(b*20|0)+16>>2]|0))qa(136220,135636,202,135726);else{LS(a+8+(b*20|0)|0);c[a>>2]=(c[a>>2]|0)+-1;return}}function QS(a){a=a|0;var b=0;b=0;while(1){if((b|0)==4)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function RS(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;d=e;c[d>>2]=1;c[d+8>>2]=-1;b=1;while(1){if((b|0)==2)break;c[d+(b+2<<2)>>2]=0;c[d+(b<<2)>>2]=0;b=b+1|0}c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];l=e;return}function SS(a){a=a|0;var b=0,d=0,e=0;if(!a)qa(135739,135741,128,135753);a:do if((c[a>>2]|0)>(c[a+8>>2]|0))b=0;else{b=1;d=0;while(1){if((d|0)==2)break a;e=O(c[a+(d+2<<2)>>2]|0,b)|0;b=e-(c[a+(d<<2)>>2]|0)|0;d=d+1|0}}while(0);return b|0}function TS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;g=l;l=l+16|0;f=g;if(!((b|0)!=0&(d|0)!=0))qa(135762,135741,195,135770);do if((c[b>>2]|0)>(c[b+8>>2]|0)){c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2]}else{if((c[d>>2]|0)>(c[d+8>>2]|0)){c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];break}else e=0;while(1){if((e|0)==2)break;j=c[b+(e<<2)>>2]|0;h=c[d+(e<<2)>>2]|0;c[f+(e<<2)>>2]=(j|0)<(h|0)?j:h;h=e+2|0;j=c[b+(h<<2)>>2]|0;i=c[d+(h<<2)>>2]|0;c[f+(h<<2)>>2]=(j|0)>(i|0)?j:i;e=e+1|0}c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2]}while(0);l=g;return}function US(a,b){a=a|0;b=b|0;var d=0,e=0;if((a|0)!=0&(b|0)!=0)d=0;else qa(135782,135741,216,135789);while(1){if((d|0)>=2){d=1;break}e=d+2|0;if((c[a+(d<<2)>>2]|0)>(c[b+(e<<2)>>2]|0)){d=0;break}if((c[b+(d<<2)>>2]|0)>(c[a+(e<<2)>>2]|0)){d=0;break}else d=d+1|0}return d|0}function VS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0;if(!b)qa(135797,135799,40,135809);if(!d)qa(135819,135799,41,135809);j=a+1912|0;if(c[j>>2]|0){i=c[a+1908>>2]|0?a+1932|0:a+1928|0;c[i>>2]=(c[i>>2]|0)+1}h=b+4|0;i=c[h>>2]|0;WS(a,b,d);d=a+1324|0;XS(a);f=SS(a+1852|0)|0;f=(SS(a+1868|0)|0)+f|0;if(c[j>>2]|0?(f|0)!=0&(c[a+1908>>2]|0)==0:0){j=a+1960|0;g[j>>2]=+((c[a+1320>>2]|0)>>>0)/+(f|0)+ +g[j>>2]}j=JS(a)|0;c[e>>2]=j;c[h>>2]=i;c[j+4>>2]=i;YS(a,b,j,d);if(((c[c[e>>2]>>2]|0)+(c[b>>2]|0)|0)==65)return;else qa(135821,135799,86,135809)}function WS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+16|0;g=h;if(!b)qa(135797,135799,106,136208);if(!d)qa(135819,135799,107,136208);else e=0;while(1){if((e|0)>=64)break;if(!(c[b+8+(e*20|0)+16>>2]|0)){f=7;break}j=b+8+(e*20|0)|0;i=a+4+(e*20|0)|0;c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];c[i+16>>2]=c[j+16>>2];e=e+1|0}if((f|0)==7)qa(136220,135799,111,136208);e=a+4|0;j=a+1284|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];c[j+16>>2]=c[d+16>>2];d=a+1304|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];e=1;while(1){if((e|0)==65)break;TS(g,d,a+4+(e*20|0)|0);c[d>>2]=c[g>>2];c[d+4>>2]=c[g+4>>2];c[d+8>>2]=c[g+8>>2];c[d+12>>2]=c[g+12>>2];e=e+1|0}c[a+1320>>2]=SS(d)|0;KS(b);l=h;return}function XS(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+48|0;i=u+32|0;k=u+16|0;m=u;ZS(a);_S(a);q=a+1844|0;s=a+1848|0;t=a+1892|0;n=a+1852|0;o=a+1884|0;p=a+1868|0;j=a+1888|0;f=0;e=0;while(1){d=c[q>>2]|0;b=c[s>>2]|0;if((b+d|0)>=65)break;h=65-(c[t>>2]|0)|0;if((d|0)<(h|0)&(b|0)<(h|0)){g=-1;h=0}else{r=12;break}while(1){if((h|0)==65)break;if(!(c[a+1584+(h<<2)>>2]|0)){v=a+4+(h*20|0)|0;TS(k,v,n);c[i>>2]=c[k>>2];c[i+4>>2]=c[k+4>>2];c[i+8>>2]=c[k+8>>2];c[i+12>>2]=c[k+12>>2];b=SS(i)|0;d=c[o>>2]|0;TS(m,v,p);c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[i+8>>2]=c[m+8>>2];c[i+12>>2]=c[m+12>>2];v=SS(i)|0;b=v-(c[j>>2]|0)+(d-b)|0;d=(b|0)>-1;b=d?b:0-b|0;d=(d^1)&1;if((b|0)<=(g|0))if((b|0)==(g|0)){v=(c[a+1844+(d<<2)>>2]|0)<(c[a+1844+(f<<2)>>2]|0);b=g;d=v?d:f;e=v?h:e}else{b=g;d=f}else e=h}else{b=g;d=f}g=b;h=h+1|0;f=d}$S(a,e,f)}if((r|0)==12){b=(d|0)>=(65-(c[t>>2]|0)|0)&1;d=0;while(1){if((d|0)==65)break;if(!(c[a+1584+(d<<2)>>2]|0))$S(a,d,b);d=d+1|0}d=c[q>>2]|0;b=c[s>>2]|0}if((b+d|0)!=65)qa(135964,135799,210,136050);v=c[t>>2]|0;if((d|0)<(v|0)|(b|0)<(v|0))qa(136061,135799,212,136050);else{l=u;return}}function YS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if(!b)qa(135797,135799,297,135861);if(!d)qa(135871,135799,298,135861);if(!e)qa(135873,135799,299,135861);else f=0;while(1){if((f|0)>=65){e=14;break}e=c[a+1324+(f<<2)>>2]|0;if(e>>>0>=2){e=9;break}switch(e|0){case 0:{OS(a,a+4+(f*20|0)|0,b,0)|0;break}case 1:{OS(a,a+4+(f*20|0)|0,d,0)|0;break}default:{}}f=f+1|0}if((e|0)==9)qa(135875,135799,303,135861);else if((e|0)==14)return}function ZS(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;e=d;c[a+1848>>2]=0;c[a+1844>>2]=0;b=a+1852|0;f=a+1868|0;RS(e);c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];c[a+1888>>2]=0;c[a+1884>>2]=0;b=0;while(1){if((b|0)==65)break;c[a+1584+(b<<2)>>2]=0;c[a+1324+(b<<2)>>2]=-1;b=b+1|0}l=d;return}function _S(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+304|0;k=o+32|0;m=o+16|0;n=o;b=0;while(1){if((b|0)==65)break;c[k+(b<<2)>>2]=SS(a+4+(b*20|0)|0)|0;b=b+1|0}b=0;d=0;e=0;g=0;a:while(1){if((g|0)==64)break;i=g+1|0;j=a+4+(g*20|0)|0;h=k+(g<<2)|0;f=i;while(1){if((f|0)==65){g=i;continue a}TS(n,j,a+4+(f*20|0)|0);c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];p=SS(m)|0;p=p-(c[h>>2]|0)-(c[k+(f<<2)>>2]|0)|0;q=p>>>0>e>>>0;r=q?f:b;f=f+1|0;b=r;d=q?g:d;e=q?p:e}}$S(a,d,0);$S(a,b,1);l=o;return}function $S(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;h=i;e=a+1584+(b<<2)|0;if(c[e>>2]|0)qa(136164,135799,257,136199);c[a+1324+(b<<2)>>2]=d;c[e>>2]=1;g=a+1844+(d<<2)|0;f=a+1852+(d<<4)|0;e=a+4+(b*20|0)|0;if(!(c[g>>2]|0)){c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2]}else{TS(h,e,f);c[f>>2]=c[h>>2];c[f+4>>2]=c[h+4>>2];c[f+8>>2]=c[h+8>>2];c[f+12>>2]=c[h+12>>2]}c[a+1884+(d<<2)>>2]=SS(f)|0;c[g>>2]=(c[g>>2]|0)+1;l=i;return}function aT(){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+1200|0;r=t+800|0;g=t;c[46627]=0;c[46628]=-2;f=r;i=200;n=g;p=0;q=0;o=r;a:while(1){b[o>>1]=p;if((f+(i<<1)+-2|0)>>>0>o>>>0)k=i;else{m=o-f>>1;e=m+1|0;if(i>>>0>9999){s=95;break}k=i<<1;k=k>>>0<1e4?k:1e4;h=C_(k*6|3)|0;if(h){F3(h|0,f|0,e<<1|0)|0;i=h+(k>>>1<<2)|0;F3(i|0,n|0,e<<2|0)|0;if((f|0)==(r|0)){e=0;f=h}else{D_(f);e=0;f=h}}else{e=4;i=n}j=(e|0)==0;h=f+(m<<1)|0;switch((j?((f+(k<<1)+-2|0)>>>0>h>>>0?0:9):e)&15){case 9:{e=1;s=96;break a}case 4:{s=95;break a}case 0:{g=j?i+(m<<2)|0:g;n=i;o=j?h:o;break}default:{e=0;break a}}}if((p|0)==31){e=0;s=96;break}e=b[65430+(p<<1)>>1]|0;j=e<<16>>16;do if(e<<16>>16!=-82){h=c[46628]|0;if((h|0)==-2){h=pU()|0;c[46628]=h}if((h|0)>=1)if(h>>>0<296)i=d[136239+h>>0]|0;else i=2;else{c[46628]=0;i=0}h=i+j|0;if(h>>>0<=271?(i|0)==(a[136535+h>>0]|0):0){p=a[136807+h>>0]|0;e=p<<24>>24;if(p<<24>>24<1){h=0-e|0;s=23;break}else{c[46628]=-2;g=g+4|0;c[g>>2]=c[46629];j=(q|0)==0?0:q+-1|0;h=o;break}}else s=22}else s=22;while(0);if((s|0)==22){s=0;p=a[137079+p>>0]|0;h=p&255;if(!(p<<24>>24)){h=c[46628]|0;b:do switch(q|0){case 0:{c[46627]=(c[46627]|0)+1;vT(140679);h=o;break}case 3:if((h|0)<1)if(!h){e=1;s=96;break a}else{h=o;break b}else{c[46628]=-2;h=o;break b}default:h=o}while(0);while(1){if(e<<16>>16==8)break;if((h|0)==(f|0)){e=1;s=96;break a}e=h+-2|0;g=g+-4|0;h=e;e=b[65430+(b[e>>1]<<1)>>1]|0}g=g+4|0;c[g>>2]=c[46629];e=1;j=3}else s=23}do if((s|0)==23){s=0;j=d[137195+h>>0]|0;e=c[g+(1-j<<2)>>2]|0;do switch(h|0){case 4:{s=26;break a}case 2:{c[46630]=bT(c[g+-4>>2]|0,2)|0;break}case 3:{c[46630]=bT(c[g+-4>>2]|0,1)|0;break}case 5:{e=dT()|0;break}case 8:{eT(c[46631]|0);break}case 9:{fT(c[g>>2]|0);break}case 18:{gT(c[g>>2]|0);break}case 19:{hT();break}case 20:{gT(c[g>>2]|0);break}case 21:{hT();break}case 22:{gT(c[g>>2]|0);break}case 23:{hT();break}case 24:{gT(c[g>>2]|0);break}case 25:{hT();break}case 26:{gT(c[g>>2]|0);break}case 27:{hT();break}case 28:{gT(c[g>>2]|0);break}case 29:{hT();break}case 30:{gT(c[g>>2]|0);break}case 31:{hT();break}case 32:{gT(c[g>>2]|0);break}case 33:{hT();break}case 34:{e=c[g+-4>>2]|0;break}case 35:{e=c[g>>2]|0;break}case 38:{e=c[46631]|0;i=c[e+4>>2]|0;if(i>>>0>=(c[e+8>>2]|0)>>>0){Uw(e,1)|0;i=c[46631]|0;e=i;i=c[i+4>>2]|0}a[i>>0]=0;p=c[e>>2]|0;c[e+4>>2]=p;if(iT(p)|0){s=51;break a}c[(c[g>>2]|0)+80>>2]=c[46632];e=Cw(55928,c[4554]|0)|0;c[(c[g>>2]|0)+84>>2]=e;c[46632]=c[g>>2];c[(c[g>>2]|0)+108>>2]=c[c[46633]>>2];e=c[g>>2]|0;break}case 39:{e=c[46631]|0;i=c[e+4>>2]|0;if(i>>>0>=(c[e+8>>2]|0)>>>0){Uw(e,1)|0;i=c[46631]|0;e=i;i=c[i+4>>2]|0}a[i>>0]=0;p=c[e>>2]|0;c[e+4>>2]=p;if(iT(p)|0){s=56;break a}e=c[46632]|0;c[46632]=c[e+80>>2];break}case 40:{e=c[g>>2]|0;break}case 41:{e=c[g+-4>>2]|0;break}case 42:{e=c[g+-4>>2]|0;break}case 43:{e=c[g+-4>>2]|0;break}case 44:{e=c[g+-4>>2]|0;break}case 45:{e=c[g+-4>>2]|0;break}case 48:{e=c[g>>2]|0;break}case 49:{e=c[g>>2]|0;break}case 50:{a[(c[g+-8>>2]|0)+12>>0]=1;e=c[g>>2]|0;break}case 51:{jT();break}case 52:{e=kT()|0;break}case 53:{e=c[g>>2]|0;break}case 54:{e=c[g>>2]|0;break}case 55:{e=(c[g+-8>>2]|0)+100|0;a[e>>0]=a[e>>0]|1;e=c[g>>2]|0;break}case 56:{lT(c[g+-4>>2]|0,c[g>>2]|0,1);break}case 57:{e=c[g+-12>>2]|0;break}case 58:{lT(c[g+-4>>2]|0,c[g>>2]|0,2);break}case 59:{e=c[g+-12>>2]|0;break}case 60:{lT(c[g+-4>>2]|0,c[g>>2]|0,3);break}case 61:{e=c[g+-12>>2]|0;break}case 62:{lT(c[g>>2]|0,dT()|0,2);break}case 63:{e=c[g+-8>>2]|0;break}case 64:{e=c[g+-4>>2]|0;break}case 65:{e=c[g>>2]|0;break}default:{}}while(0);i=0-j|0;p=g+(i<<2)|0;i=o+(i<<1)|0;g=p+4|0;c[p+4>>2]=e;e=(d[137367+h>>0]|0)+-41|0;p=b[i>>1]|0;h=p+(b[65662+(e<<1)>>1]|0)|0;if(h>>>0<272?(a[136535+h>>0]|0)==(p|0):0){e=a[136807+h>>0]|0;j=q;h=i;break}e=a[137437+e>>0]|0;j=q;h=i}while(0);i=k;p=e;q=j;o=h+2|0}if((s|0)==26){cT();e=1;s=96}else if((s|0)==51){vT(137265);cT();e=1;s=96}else if((s|0)==56){vT(137316);cT();e=1;s=96}else if((s|0)==95){vT(137476);e=2;s=96}if((s|0)==96)if((f|0)!=(r|0))D_(f);l=t;return e|0}function bT(b,d){b=b|0;d=d|0;var e=0;e=uH(8)|0;a[e+4>>0]=d;c[e>>2]=b;return e|0}function cT(){var a=0,b=0;a=c[46632]|0;b=c[46630]|0;if(b|0){XQ(b,1);c[46630]=0}c[13995]=67;while(1){if(!a)break;b=c[a+80>>2]|0;pT(a);a=b}c[13995]=56;c[14004]=68;b=c[46635]|0;nb[c[b>>2]&63](b,0,64)|0;c[14004]=56;c[14013]=69;b=c[46636]|0;nb[c[b>>2]&63](b,0,64)|0;c[14013]=56;sT();return}function dT(){var a=0,d=0,e=0,f=0,g=0,h=0;e=c[46636]|0;f=uH(40)|0;if(Ew(c[46635]|0)|0)fT(0);a=Ew(e)|0;b[f+4>>1]=a;a:do if(!a)a=e;else{c[f>>2]=uH(a*24|0)|0;a=0;d=nb[c[e>>2]&63](e,0,128)|0;while(1){if(!d){a=e;break a}g=(c[f>>2]|0)+(a*24|0)|0;h=d+8|0;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];c[g+12>>2]=c[h+12>>2];c[g+16>>2]=c[h+16>>2];c[g+20>>2]=c[h+20>>2];a=a+1|0;d=nb[c[e>>2]&63](e,d,8)|0}}while(0);nb[c[a>>2]&63](e,0,64)|0;return f|0}function eT(b){b=b|0;var d=0,e=0,f=0;e=uH(64)|0;f=b+4|0;d=c[f>>2]|0;if(d>>>0>=(c[b+8>>2]|0)>>>0){Uw(b,1)|0;d=c[f>>2]|0}a[d>>0]=0;b=c[b>>2]|0;c[f>>2]=b;c[e+8>>2]=n1(b)|0;c[e+12>>2]=c[c[46633]>>2];f=c[46635]|0;nb[c[f>>2]&63](f,e,1)|0;return}function fT(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=uH(32)|0;j=c[46635]|0;e=Ew(j)|0;k=i+8|0;a[i+14>>0]=d;a:do if(!e){c[k>>2]=uH(56)|0;b[i+12>>1]=1;h=n1(191979)|0;k=c[k>>2]|0;c[k>>2]=h;c[k+4>>2]=c[c[46633]>>2]}else{b[i+12>>1]=e;c[k>>2]=uH(e*56|0)|0;d=0;e=Aw(j)|0;while(1){if(!e)break a;f=(c[k>>2]|0)+(d*56|0)|0;g=e+8|0;h=f+56|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(h|0));d=d+1|0;e=c[e>>2]|0}}while(0);nb[c[j>>2]&63](j,0,64)|0;k=c[46636]|0;nb[c[k>>2]&63](k,i,1)|0;return}function gT(a){a=a|0;var b=0,d=0.0,e=0,f=0,g=0,i=0,j=0;j=l;l=l+32|0;g=j;i=uH(8)|0;f=c[c[46633]>>2]|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];c[g+16>>2]=c[a+16>>2];c[g+20>>2]=c[a+20>>2];c[g+24>>2]=c[a+24>>2];c[g+28>>2]=c[a+28>>2];if(f|0){a=g+4|0;if((c[a>>2]|0)==0?(b=c[f+4>>2]|0,b|0):0)c[a>>2]=b;a=g+16|0;if(+h[a>>3]<0.0?(d=+h[f+16>>3],d>=0.0):0)h[a>>3]=d;if((c[g>>2]|0)==0?(e=c[f>>2]|0,e|0):0)c[g>>2]=e;a=c[f+24>>2]&127;if(a|0){f=g+24|0;e=c[f>>2]|0;c[f>>2]=e&127|a|e&-128}}f=c[(c[46634]|0)+144>>2]|0;c[i>>2]=nb[c[f>>2]&63](f,g,1)|0;c[i+4>>2]=c[46633];c[46633]=i;l=j;return}function hT(){var a=0,b=0;b=c[46633]|0;a=c[b+4>>2]|0;D_(b);c[46633]=a;return}function iT(b){b=b|0;var c=0;while(1){c=a[b>>0]|0;if(!(c<<24>>24)){b=0;break}if(c<<24>>24==32)b=b+1|0;else{b=1;break}}return b|0}function jT(){var b=0,d=0,e=0;e=Cw(55964,c[4554]|0)|0;b=c[46632]|0;d=uH(16)|0;c[d+8>>2]=e;if(a[b+112>>0]&2)a[d+12>>0]=1;e=c[b+84>>2]|0;nb[c[e>>2]&63](e,d,1)|0;return}function kT(){var a=0;a=c[(c[46632]|0)+84>>2]|0;return nb[c[a>>2]&63](a,0,256)|0}function lT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=uH(16)|0;f=c[46632]|0;h=c[f+84>>2]|0;h=c[(nb[c[h>>2]&63](h,0,256)|0)+8>>2]|0;c[g+8>>2]=b;nb[c[h>>2]&63](h,g,1)|0;a[b+92>>0]=e;if(a[f+112>>0]&1)a[b+100>>0]=1;c[b+88>>2]=d;return}function mT(a,b,c){a=a|0;b=b|0;c=c|0;D_(b);return}function nT(a,b,d){a=a|0;b=b|0;d=d|0;yw(c[b+8>>2]|0)|0;D_(b);return}function oT(a,b,d){a=a|0;b=b|0;d=d|0;tT(c[b+8>>2]|0);D_(b);return}function pT(a){a=a|0;yw(c[a+84>>2]|0)|0;UQ(a);D_(a);return}function qT(a,b,d){a=a|0;b=b|0;d=d|0;D_(c[b+8>>2]|0);D_(b);return}function rT(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d+12|0;a=b[g>>1]|0;if(a<<16>>16){h=d+8|0;e=0;f=c[h>>2]|0;while(1){if((e|0)>=(a<<16>>16|0))break;D_(c[f>>2]|0);e=e+1|0;f=f+56|0;a=b[g>>1]|0}D_(c[h>>2]|0)}D_(d);return}function sT(){var a=0,b=0;a=c[46633]|0;while(1){b=c[a+4>>2]|0;if(!b)break;D_(a);a=b}return}function tT(b){b=b|0;var d=0;d=b+88|0;switch(a[b+92>>0]|0){case 1:{pT(c[d>>2]|0);break}case 2:{VQ(c[d>>2]|0);break}default:{}}UQ(b);D_(b);return}function uT(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+160|0;e=f+8|0;g=f;c[g>>2]=0;c[g+4>>2]=0;c[46633]=g;c[46632]=0;c[46630]=0;c[46634]=c[(c[(c[d+52>>2]|0)+16>>2]|0)+144>>2];c[46635]=Cw(56e3,c[4554]|0)|0;c[46636]=Cw(56036,c[4554]|0)|0;Tw(e,128,f+24|0);c[46631]=e;if(!(yT(a,e,d)|0)){aT()|0;c[b>>2]=oU()|0;a=c[46630]|0}else{c[b>>2]=2;a=0}yw(c[46635]|0)|0;yw(c[46636]|0)|0;c[46635]=0;c[46636]=0;c[46633]=0;Xw(e);l=f;return a|0}function vT(b){b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;if(!(a[186581]|0)){a[186581]=1;f=wT()|0;c[d>>2]=b;c[d+4>>2]=f;Pw(1,137493,d)|0;xT()}l=e;return}function wT(){return dX(c[46637]|0)|0}function xT(){var b=0,d=0,e=0,f=0;f=l;l=l+16|0;e=f;b=c[46640]|0;c[b+4>>2]=c[b>>2];d=c[46649]|0;if((d|0)>0){Vw(b,c[46647]|0,d)|0;b=c[46640]|0}Vw(b,c[46646]|0,c[46648]|0)|0;d=c[46640]|0;b=c[d+4>>2]|0;if(b>>>0>=(c[d+8>>2]|0)>>>0){Uw(d,1)|0;b=c[46640]|0;d=b;b=c[b+4>>2]|0}c[d+4>>2]=b+1;a[b>>0]=0;b=c[46640]|0;d=c[b>>2]|0;c[b+4>>2]=d;c[e>>2]=d;Pw(3,137509,e)|0;l=f;return}function yT(b,e,f){b=b|0;e=e|0;f=f|0;c[46640]=e;Tw(186564,128,0);c[46638]=b;a[186583]=0;a[186580]=0;a[186581]=0;c[46648]=0;c[46649]=0;a[186582]=1;f=f+52|0;e=DV(hH(d[(c[(c[f>>2]|0)+16>>2]|0)+115>>0]|0)|0)|0;c[46637]=e;SW(e,c[(c[(c[f>>2]|0)+16>>2]|0)+144>>2]|0);TW(c[46637]|0,70,27);UW(c[46637]|0,71);return 0}function zT(b,d,e){b=b|0;d=d|0;e=e|0;do if(!(O$(d,137521)|0)){c[46629]=DT(e)|0;a[186582]=0;c[46639]=286}else{if(O$(d,137527)|0?O$(d,137530)|0:0){if(!(O$(d,137533)|0)){a[186582]=1;c[46629]=ET(e)|0;c[46639]=287;break}if(!(O$(d,137541)|0)){c[46629]=FT(b,e,0)|0;c[46639]=288;break}if(!(O$(d,137546)|0)){c[46629]=FT(b,0,1)|0;c[46639]=290;break}if(!(O$(d,137562)|0)){c[46629]=FT(b,0,32)|0;c[46639]=295;break}if(!(O$(d,137548)|0)){c[46629]=FT(b,0,4)|0;c[46639]=291;break}if(!(O$(d,137550)|0)){c[46629]=FT(b,0,64)|0;c[46639]=292;break}if(!(O$(d,137552)|0)){c[46629]=FT(b,0,2)|0;c[46639]=289;break}if(!(O$(d,137554)|0)){c[46629]=FT(b,0,8)|0;c[46639]=293;break}if(!(O$(d,137558)|0)){c[46629]=FT(b,0,16)|0;c[46639]=294;break}if(!(O$(d,137564)|0)){GT(e);c[46639]=283;break}if(!(O$(d,137567)|0)){c[46639]=277;break}if(!(O$(d,137570)|0)){c[46639]=280;break}if(!(O$(d,137573)|0)){c[46629]=HT(e)|0;c[46639]=285;break}if(!(O$(d,137536)|0)){c[46639]=262;break}else{CT(d);break}}a[186582]=0;c[46639]=260}while(0);return}function AT(b,d){b=b|0;d=d|0;do if(!(O$(d,137521)|0)){c[46639]=264;a[186582]=1}else{if(O$(d,137527)|0?O$(d,137530)|0:0){if(!(O$(d,137533)|0)){c[46639]=265;a[186582]=0;break}if(!(O$(d,137536)|0)){c[46639]=263;break}if(!(O$(d,137541)|0)){c[46639]=266;break}if(!(O$(d,137546)|0)){c[46639]=270;break}if(!(O$(d,137548)|0)){c[46639]=271;break}if(!(O$(d,137550)|0)){c[46639]=272;break}if(!(O$(d,137552)|0)){c[46639]=269;break}if(!(O$(d,137554)|0)){c[46639]=273;break}if(!(O$(d,137558)|0)){c[46639]=274;break}if(!(O$(d,137562)|0)){c[46639]=275;break}if(!(O$(d,137564)|0)){c[46639]=(c[46639]|0)==283?282:258;break}if(!(O$(d,137567)|0)){c[46639]=(c[46639]|0)==277?276:278;break}if(!(O$(d,137570)|0)){c[46639]=(c[46639]|0)==280?279:281;break}if(!(O$(d,137573)|0)){c[46639]=(c[46639]|0)==285?284:259;break}else{CT(d);break}}c[46639]=261}while(0);return}function BT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if(a[186582]|0){b=0;while(1){if(!e)break;h=d+1|0;g=a[d>>0]|0;if((g&255)>31){d=c[46640]|0;f=c[d+4>>2]|0;if(f>>>0>=(c[d+8>>2]|0)>>>0){Uw(d,1)|0;f=c[46640]|0;d=f;f=c[f+4>>2]|0}c[d+4>>2]=f+1;a[f>>0]=g;b=b+1|0}d=h;e=e+-1|0}if(b|0)c[46639]=267}return}function CT(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;c[46639]=268;a[186581]=1;f=wT()|0;c[e>>2]=b;c[e+4>>2]=f;Pw(1,137577,e)|0;l=d;return}function DT(b){b=b|0;var d=0;d=uH(120)|0;c[d+100>>2]=-1;a[d+88>>0]=-1;IT(d,56296,22,b,138529);return d|0}function ET(a){a=a|0;var c=0;c=uH(104)|0;b[c+80>>1]=1;b[c+82>>1]=1;IT(c,56120,22,a,137883);return c|0}function FT(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+32|0;e=f;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0;h[e+16>>3]=-1.0;c[e+24>>2]=d&127;if(b|0)IT(e,56096,3,b,137734);d=c[a+144>>2]|0;e=nb[c[d>>2]&63](d,e,1)|0;l=f;return e|0}function GT(a){a=a|0;c[46629]=0;IT(186516,56088,1,a,137670);return}function HT(a){a=a|0;var b=0;b=uH(40)|0;IT(b,56072,2,a,137616);return b|0}function IT(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;n=o;m=o+8|0;while(1){k=c[g>>2]|0;if(!k)break;i=c[g+4>>2]|0;c[m>>2]=k;j=e2(m,e,f,8,102)|0;if(!j){c[n>>2]=k;c[n+4>>2]=h;Pw(0,137622,n)|0;i=1}else{i=lb[c[j+4>>2]&127](b,i)|0;i=(i|(d[186580]|0))&255}a[186580]=i;g=g+8|0}l=o;return}function JT(a,b){a=a|0;b=b|0;return O$(c[a>>2]|0,c[b>>2]|0)|0}function KT(a,b){a=a|0;b=b|0;c[a+36>>2]=n1(b)|0;return 0}function LT(a,b){a=a|0;b=b|0;c[a+32>>2]=n1(b)|0;return 0}function MT(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;f=(I0(a[d>>0]|0)|0)<<24>>24;switch(f|0){case 82:{e=d+1|0;if(!(O$(e,137681)|0)){c[b>>2]=114;e=0}else h=5;break}case 76:{h=6;break}default:{e=d+1|0;h=5}}do if((h|0)==5)if(!(O$(e,137686)|0))h=6;else{if((f|0)!=67?(O$(e,137690)|0)==0:0){c[g>>2]=d;Pw(0,137696,g)|0;e=1;break}c[b>>2]=110;e=0}while(0);if((h|0)==6){c[b>>2]=108;e=0}l=i;return e|0}function NT(a,b){a=a|0;b=b|0;c[a+4>>2]=b;return 0}function OT(a,b){a=a|0;b=b|0;c[a>>2]=b;return 0}function PT(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(QT(b,137763,0,255,d)|0)){h[a+16>>3]=+(c[d>>2]|0);a=0}else a=1;l=e;return a|0}function QT(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+48|0;j=k+24|0;i=k+8|0;h=k;m=k+36|0;g=i1(a,m,10)|0;do if((c[m>>2]|0)!=(a|0)){if((g|0)>(e|0)){c[i>>2]=b;c[i+4>>2]=a;c[i+8>>2]=e;Pw(0,137805,i)|0;a=1;break}if((g|0)<(d|0)){c[j>>2]=b;c[j+4>>2]=a;c[j+8>>2]=d;Pw(0,137844,j)|0;a=1;break}else{c[f>>2]=g;a=0;break}}else{c[h>>2]=b;c[h+4>>2]=a;Pw(0,137774,h)|0;a=1}while(0);l=k;return a|0}function RT(d,e){d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;switch((I0(a[e>>0]|0)|0)<<24>>24|0){case 76:{if(!(O$(e+1|0,137686)|0)){d=d+36|0;b[d>>1]=b[d>>1]|4;d=0}else g=9;break}case 82:{if(!(O$(e+1|0,137681)|0)){d=d+36|0;b[d>>1]=b[d>>1]|2;d=0}else g=9;break}case 84:{if(!(O$(e+1|0,138481)|0)){d=d+36|0;b[d>>1]=b[d>>1]|6;d=0}else g=9;break}case 67:{if(!(O$(e+1|0,137690)|0))d=0;else g=9;break}default:g=9}if((g|0)==9){c[f>>2]=e;Pw(0,138485,f)|0;d=1}l=h;return d|0}function ST(d,e){d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;switch((I0(a[e>>0]|0)|0)<<24>>24|0){case 76:{if(!(O$(e+1|0,137686)|0)){d=d+36|0;b[d>>1]=b[d>>1]|512;d=0}else g=7;break}case 82:{if(!(O$(e+1|0,137681)|0)){d=d+36|0;b[d>>1]=b[d>>1]|256;d=0}else g=7;break}case 67:{if(!(O$(e+1|0,137690)|0))d=0;else g=7;break}default:g=7}if((g|0)==7){c[f>>2]=e;Pw(0,138436,f)|0;d=1}l=h;return d|0}function TT(a,b){a=a|0;b=b|0;c[a+20>>2]=n1(b)|0;return 0}function UT(d,e){d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(!(QT(e,138429,0,255,f)|0)){a[d+33>>0]=c[f>>2];d=d+36|0;b[d>>1]=b[d>>1]|32;d=0}else d=1;l=g;return d|0}function VT(d,e){d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(!(QT(e,138417,0,255,f)|0)){a[d+34>>0]=c[f>>2];d=d+36|0;b[d>>1]=b[d>>1]|64;d=0}else d=1;l=g;return d|0}function WT(d,e){d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(!(QT(e,138405,-128,127,f)|0)){a[d+32>>0]=c[f>>2];d=d+36|0;b[d>>1]=b[d>>1]|128;d=0}else d=1;l=g;return d|0}function XT(a,b){a=a|0;b=b|0;c[a+24>>2]=n1(b)|0;return 0}function YT(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;f=g;e=g+4|0;do if(!(QT(d,138360,0,65535,e)|0)){d=c[e>>2]|0;if(!d){Pw(0,138368,f)|0;d=1;break}else{b[a+80>>1]=d;d=0;break}}else d=1;while(0);l=g;return d|0}function ZT(a,e){a=a|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;switch((I0(d[e>>0]|0)|0)<<24>>24|0){case 84:{if(!(O$(e+1|0,138309)|0)){a=a+36|0;b[a>>1]=b[a>>1]|1;a=0}else g=5;break}case 70:{if(!(O$(e+1|0,138313)|0))a=0;else g=5;break}default:g=5}if((g|0)==5){c[f>>2]=e;Pw(0,138318,f)|0;a=1}l=h;return a|0}function _T(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(QT(b,138295,0,360,d)|0)){c[a+28>>2]=c[d>>2]&65535;a=0}else a=1;l=e;return a|0}function $T(a,d){a=a|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(!(QT(d,138288,0,65535,e)|0)){b[a+40>>1]=c[e>>2];a=0}else a=1;l=f;return a|0}function aU(a,b){a=a|0;b=b|0;c[a>>2]=n1(b)|0;return 0}function bU(a,b){a=a|0;b=b|0;c[a+16>>2]=n1(b)|0;return 0}function cU(a,b){a=a|0;b=b|0;c[a+4>>2]=n1(b)|0;return 0}function dU(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;f=g;e=g+4|0;do if(!(QT(d,138243,0,65535,e)|0)){d=c[e>>2]|0;if(!d){Pw(0,138251,f)|0;d=1;break}else{b[a+82>>1]=d;d=0;break}}else d=1;while(0);l=g;return d|0}function eU(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;i=k;h=0;a:while(1){b:while(1){g=e+1|0;e=a[e>>0]|0;if(!(e<<24>>24))break a;e=e<<24>>24;f=(P$(e)|0)+-98|0;switch(f>>>1|f<<31|0){case 5:{j=5;break b}case 9:{f=2048;break b}case 8:{j=6;break b}case 0:{j=7;break b}default:{}}c[i>>2]=e;c[i+4>>2]=e;Pw(0,138190,i)|0;e=g}if((j|0)==5){j=0;f=1024}else if((j|0)==6){j=0;f=4096}else if((j|0)==7){j=0;f=8192}e=g;h=h|f}if(h<<16>>16!=15360){j=d+36|0;b[j>>1]=b[j>>1]|h}l=k;return 0}function fU(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;j=k+8|0;i=k;h=n1(e)|0;g=d+42|0;f=0;e=h;while(1){d=k1(e,138100)|0;if(!d)break;if(((I0(a[d>>0]|0)|0)&255|0)==82){e=d+1|0;if(!(O$(e,138103)|0)){b[g>>1]=b[g>>1]|4;d=f;e=0;f=d;continue}if(!(O$(e,138110)|0)){b[g>>1]=b[g>>1]|2;d=f;e=0;f=d;continue}else{c[i>>2]=d;Pw(0,138116,i)|0;f=1;e=0;continue}}if(!(O$(d,138154)|0)){b[g>>1]=b[g>>1]&-385;d=f;e=0;f=d;continue}if(O$(d,138160)|0?O$(d,138170)|0:0){if(!(O$(d,138176)|0)){b[g>>1]=b[g>>1]|128;d=f;e=0;f=d;continue}if(!(O$(d,138183)|0)){b[g>>1]=b[g>>1]|256;d=f;e=0;f=d;continue}else{c[j>>2]=d;Pw(0,138116,j)|0;f=1;e=0;continue}}b[g>>1]=b[g>>1]|32;d=f;e=0;f=d}D_(h);l=k;return f|0}function gU(a,b){a=a|0;b=b|0;c[a+8>>2]=n1(b)|0;return 0}function hU(a,b){a=a|0;b=b|0;c[a+12>>2]=n1(b)|0;return 0}function iU(d,e){d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;switch((I0(a[e>>0]|0)|0)<<24>>24|0){case 66:{if(!(O$(e+1|0,138046)|0)){d=d+36|0;b[d>>1]=b[d>>1]|16;d=0}else g=7;break}case 84:{if(!(O$(e+1|0,138052)|0)){d=d+36|0;b[d>>1]=b[d>>1]|8;d=0}else g=7;break}case 77:{if(!(O$(e+1|0,138055)|0))d=0;else g=7;break}default:g=7}if((g|0)==7){c[f>>2]=e;Pw(0,138061,f)|0;d=1}l=h;return d|0}function jU(a,d){a=a|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(!(QT(d,138040,0,65535,e)|0)){b[a+38>>1]=c[e>>2];a=0}else a=1;l=f;return a|0}function kU(d,e){d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;switch((I0(a[e>>0]|0)|0)<<24>>24|0){case 76:{if(!(O$(e+1|0,137686)|0)){d=d+36|0;b[d>>1]=b[d>>1]|4;d=0}else g=7;break}case 82:{if(!(O$(e+1|0,137681)|0)){d=d+36|0;b[d>>1]=b[d>>1]|2;d=0}else g=7;break}case 67:{if(!(O$(e+1|0,137690)|0))d=0;else g=7;break}default:g=7}if((g|0)==7){c[f>>2]=e;Pw(0,137696,f)|0;d=1}l=h;return d|0}function lU(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(!(QT(d,138638,0,127,e)|0)){a[b+88>>0]=c[e>>2];b=0}else b=1;l=f;return b|0}function mU(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[d>>0]|0)==42){b=b+112|0;a[b>>0]=a[b>>0]|1;b=0}else{c[e>>2]=d;Pw(0,138598,e)|0;b=1}l=f;return b|0}function nU(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[d>>0]|0)==42){b=b+112|0;a[b>>0]=a[b>>0]|2;b=0}else{c[e>>2]=d;Pw(0,138561,e)|0;b=1}l=f;return b|0}function oU(){var b=0;b=(a[186581]|a[186580])<<24>>24;JV(c[46637]|0);Xw(186564);return b|0}function pU(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;i=j;c[46639]=0;d=0;a:do{b:do switch(a[186583]|0){case 2:{b=-1;break a}case 0:{a[186583]=1;h=6;b=138650;d=0;break}default:{b=c[46638]|0;if(!(a[b>>0]|0)){a[186583]=2;h=7;b=138657;break b}else{d=qU(b)|0;h=d-b|0;break b}}}while(0);c[46647]=c[46646];c[46649]=c[46648];c[46646]=b;c[46648]=h;e=c[46642]|0;f=e-(c[46641]|0)|0;g=c[46637]|0;if(!f)b=VW(g,b,h,(h|0)==0&1)|0;else{if(e>>>0<(c[46643]|0)>>>0)b=e;else{Uw(186564,1)|0;b=c[46642]|0}a[b>>0]=0;b=c[46641]|0;c[46642]=b;b=VW(g,b,f,0)|0}if(!((b|0)!=0|(a[186581]|0)!=0)){g=eX(cX(c[46637]|0)|0)|0;h=wT()|0;c[i>>2]=g;c[i+4>>2]=h;Pw(1,137493,i)|0;xT();a[186581]=1;c[46639]=268}if(d|0)c[46638]=d;b=c[46639]|0}while((b|0)==0);l=j;return b|0}function qU(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;f=h;d=b+1|0;e=a[b>>0]|0;a:do if(e<<24>>24==60){e=a[d>>0]|0;if(e<<24>>24==33)if(!(z$(b+2|0,138665,2)|0)){e=rU(b+4|0)|0;d=e;e=a[e>>0]|0;g=8}else{e=d;g=5}else g=6;b:while(1)if((g|0)==5){d=e;e=a[e>>0]|0;g=6;continue}else if((g|0)==6){switch(e<<24>>24){case 62:case 0:{g=8;continue b}default:{}}e=d+1|0;g=5;continue}else if((g|0)==8)if(e<<24>>24==62){g=10;break}else{g=9;break}if((g|0)==9){Pw(0,138668,f)|0;a[186580]=1;break}else if((g|0)==10){d=d+1|0;break}}else{d=b;b=e;while(1){switch(b<<24>>24){case 60:case 0:break a;case 38:{e=d+1|0;if((a[e>>0]|0)==35)g=15;else e=MM(e,186564)|0;break}default:g=15}if((g|0)==15){g=0;e=c[46642]|0;if(e>>>0>=(c[46643]|0)>>>0){Uw(186564,1)|0;e=c[46642]|0}c[46642]=e+1;a[e>>0]=b;e=d+1|0}d=e;b=a[e>>0]|0}}while(0);l=h;return d|0}function rU(b){b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;i=j;f=1;c=b;a:while(1){e=(f|0)==0;d=c;b:while(1){if(e)break a;g=d+1|0;switch(a[d>>0]|0){case 0:{c=g;break a}case 60:{h=5;break b}case 62:{c=-1;break b}default:d=g}}if((h|0)==5){h=0;c=1}f=f+c|0;c=g}d=c+-1|0;do if(a[d>>0]|0){c=c+-3|0;if(c>>>0>=b>>>0?(z$(c,138665,2)|0)==0:0)break;Pw(0,138709,i)|0;a[186580]=1}while(0);l=j;return d|0}function sU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;d=C_(28)|0;if(!d)d=0;else{e=0;f=0;while(1){if((e|0)>=(b|0))break;r=(c[(c[a+(e<<2)>>2]|0)+4>>2]|0)+f|0;e=e+1|0;f=r}o=d+8|0;c[o>>2]=tU(f<<4)|0;p=d+12|0;c[p>>2]=tU((b<<2)+4|0)|0;e=f<<2;q=d+16|0;c[q>>2]=tU(e)|0;e=tU(e)|0;r=d+20|0;c[r>>2]=e;c[d+4>>2]=f;c[d>>2]=b;f=0;h=0;while(1){c[(c[p>>2]|0)+(h<<2)>>2]=f;if((h|0)>=(b|0))break;j=a+(h<<2)|0;n=c[j>>2]|0;k=c[n+4>>2]|0;l=f+-1|0;g=0;i=f;m=k;while(1){if((g|0)>=(m|0))break;m=(c[o>>2]|0)+(i<<4)|0;e=(c[n>>2]|0)+(g<<4)|0;c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];m=i+1|0;c[(c[q>>2]|0)+(i<<2)>>2]=m;e=c[r>>2]|0;c[e+(i<<2)>>2]=i+-1;s=c[j>>2]|0;g=g+1|0;i=m;m=c[s+4>>2]|0;n=s}s=l+k|0;c[(c[q>>2]|0)+(s<<2)>>2]=f;c[e+(f<<2)>>2]=s;f=i;h=h+1|0}tV(d)}return d|0}function tU(a){a=a|0;if(!a)a=0;else a=C_(a)|0;return a|0}function uU(a){a=a|0;var b=0,d=0;D_(c[a+8>>2]|0);D_(c[a+12>>2]|0);D_(c[a+16>>2]|0);D_(c[a+20>>2]|0);d=a+24|0;b=c[d>>2]|0;if(b|0){D_(c[b>>2]|0);D_(c[d>>2]|0)}D_(a);return}function vU(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;m=p+16|0;j=p;c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];n=AV(a,d,m)|0;c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];o=AV(a,f,m)|0;c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];c[j+8>>2]=c[b+8>>2];c[j+12>>2]=c[b+12>>2];c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];m=jV(j,d,n,m,f,o,a)|0;d=c[a+4>>2]|0;j=d+1|0;f=1;h=d;while(1){h=c[m+(h<<2)>>2]|0;k=f+1|0;if((h|0)==(j|0))break;else f=k}i=C_(k<<4)|0;h=i+(f<<4)|0;c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];a=a+8|0;while(1){d=c[m+(d<<2)>>2]|0;f=f+-1|0;h=i+(f<<4)|0;if((d|0)==(j|0))break;e=(c[a>>2]|0)+(d<<4)|0;c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2]}c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];c[h+12>>2]=c[b+12>>2];if(f|0)qa(138727,138734,148,138740);if(n|0)D_(n);if(o|0)D_(o);c[g+4>>2]=k;c[g>>2]=i;D_(m);l=p;return 1}function wU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+48|0;h=j+32|0;g=j+16|0;f=j;i=c[a>>2]|0;d=c[a+4>>2]|0;e=d+-1|0;a=0;while(1){if((a|0)>=(d|0)){a=1;break}m=i+(((e+a|0)%(d|0)|0)<<4)|0;k=i+(a<<4)|0;c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[g>>2]=c[k>>2];c[g+4>>2]=c[k+4>>2];c[g+8>>2]=c[k+8>>2];c[g+12>>2]=c[k+12>>2];c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];c[h+12>>2]=c[b+12>>2];if((pV(f,g,h)|0)==1){a=0;break}else a=a+1|0}l=j;return a|0}function xU(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+64|0;m=u+48|0;k=u+32|0;s=4;j=C_(40)|0;c[j>>2]=0;n=u+16|0;q=u;r=c[d>>2]|0;i=c[d+4>>2]|0;s=D3(186600,1,j|0,s|0)|0;j=z;o=0;d=o;o=0;if((d|0)!=0&(p|0)!=0){g=E3(c[d>>2]|0,s|0,j|0)|0;if(!g)bb(d|0,p|0);z=p}else g=-1;if((g|0)==1)d=z;else d=0;while(1){if(d|0){d=-1;break}o=0;c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];ja(28,n|0,m|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){g=E3(c[d>>2]|0,s|0,j|0)|0;if(!g)bb(d|0,p|0);z=p}else g=-1;if((g|0)==1){d=z;continue};c[e>>2]=c[n>>2];c[e+4>>2]=c[n+4>>2];c[e+8>>2]=c[n+8>>2];c[e+12>>2]=c[n+12>>2];h=e+16|0;o=0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];ja(28,q|0,m|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){g=E3(c[d>>2]|0,s|0,j|0)|0;if(!g)bb(d|0,p|0);z=p}else g=-1;if((g|0)==1){d=z;continue};c[h>>2]=c[q>>2];c[h+4>>2]=c[q+4>>2];c[h+8>>2]=c[q+8>>2];c[h+12>>2]=c[q+12>>2];c[46689]=0;o=0;ia(112,4);d=o;o=0;if((d|0)!=0&(p|0)!=0){g=E3(c[d>>2]|0,s|0,j|0)|0;if(!g)bb(d|0,p|0);z=p}else g=-1;if((g|0)==1){d=z;continue}g=c[46690]|0;d=c[46689]|0;c[46689]=d+1;d=g+(d<<4)|0;c[d>>2]=c[r>>2];c[d+4>>2]=c[r+4>>2];c[d+8>>2]=c[r+8>>2];c[d+12>>2]=c[r+12>>2];o=0;c[k>>2]=c[e>>2];c[k+4>>2]=c[e+4>>2];c[k+8>>2]=c[e+8>>2];c[k+12>>2]=c[e+12>>2];c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];d=fa(1,a|0,b|0,r|0,i|0,k|0,m|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,s|0,j|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1)d=z;else{t=8;break}}if((t|0)==8)if((d|0)==-1)d=-1;else{c[f+4>>2]=c[46689];c[f>>2]=c[46690];d=0}D_(s|0);l=u;return d|0}function yU(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,g=0.0,i=0.0;d=+h[b>>3];e=b+8|0;f=+h[e>>3];i=f*f+d*d;g=+C(+i);if(i>1.0e-06){h[b>>3]=d/g;h[e>>3]=f/g};c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function zU(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f+16|0;d=f;if((c[46693]|0)<(a|0)){b=c[46690]|0;if(!b){e=C_(a<<4)|0;c[46690]=e;if(!e){e=c[15686]|0;c[d>>2]=138749;c[d+4>>2]=531;c[d+8>>2]=138884;g1(e,138757,d)|0;bb(186600,1)}}else{d=F_(b,a<<4)|0;c[46690]=d;if(!d){d=c[15686]|0;c[e>>2]=138749;c[e+4>>2]=537;c[e+8>>2]=138902;g1(d,138757,e)|0;bb(186600,1)}}c[46693]=a}l=f;return}function AU(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0.0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0.0,W=0.0;R=l;l=l+336|0;J=R+320|0;I=R+304|0;w=R+144|0;q=R+128|0;G=R+112|0;H=R+96|0;Q=R+80|0;A=R+64|0;C=R+48|0;K=R+32|0;L=R+16|0;M=R;x=R+288|0;y=R+272|0;z=R+256|0;B=R+240|0;D=R+224|0;E=R+208|0;N=R+192|0;O=R+176|0;P=R+160|0;i=c[46692]|0;do if((c[46691]|0)<(e|0)){if(!i){i=C_(e*40|0)|0;c[46692]=i;if(!i){i=-1;break}}else{i=F_(i,e*40|0)|0;c[46692]=i;if(!i){i=-1;break}}c[46691]=e;k=6}else k=6;while(0);if((k|0)==6){h[i>>3]=0.0;k=1;j=0.0;while(1){if((k|0)>=(e|0))break;n=d+(k<<4)|0;F=d+(k+-1<<4)|0;c[I>>2]=c[n>>2];c[I+4>>2]=c[n+4>>2];c[I+8>>2]=c[n+8>>2];c[I+12>>2]=c[n+12>>2];c[J>>2]=c[F>>2];c[J+4>>2]=c[F+4>>2];c[J+8>>2]=c[F+8>>2];c[J+12>>2]=c[F+12>>2];v=+BU(I,J)+j;h[i+(k*40|0)>>3]=v;k=k+1|0;j=v}F=e+-1|0;n=i+(F*40|0)|0;k=1;while(1){if((k|0)>=(e|0))break;S=i+(k*40|0)|0;h[S>>3]=+h[S>>3]/+h[n>>3];k=k+1|0}k=0;while(1){if((k|0)>=(e|0))break;S=i+(k*40|0)+8|0;n=i+(k*40|0)|0;v=+CU(+h[n>>3]);c[J>>2]=c[f>>2];c[J+4>>2]=c[f+4>>2];c[J+8>>2]=c[f+8>>2];c[J+12>>2]=c[f+12>>2];DU(x,J,v);c[S>>2]=c[x>>2];c[S+4>>2]=c[x+4>>2];c[S+8>>2]=c[x+8>>2];c[S+12>>2]=c[x+12>>2];S=i+(k*40|0)+24|0;v=+EU(+h[n>>3]);c[J>>2]=c[g>>2];c[J+4>>2]=c[g+4>>2];c[J+8>>2]=c[g+8>>2];c[J+12>>2]=c[g+12>>2];DU(y,J,v);c[S>>2]=c[y>>2];c[S+4>>2]=c[y+4>>2];c[S+8>>2]=c[y+8>>2];c[S+12>>2]=c[y+12>>2];k=k+1|0}c[I>>2]=c[f>>2];c[I+4>>2]=c[f+4>>2];c[I+8>>2]=c[f+8>>2];c[I+12>>2]=c[f+12>>2];c[J>>2]=c[g>>2];c[J+4>>2]=c[g+4>>2];c[J+8>>2]=c[g+8>>2];c[J+12>>2]=c[g+12>>2];FU(d,e,i,I,J,G,A,H,C);c[q>>2]=c[G>>2];c[q+4>>2]=c[G+4>>2];c[q+8>>2]=c[G+8>>2];c[q+12>>2]=c[G+12>>2];c[w>>2]=c[A>>2];c[w+4>>2]=c[A+4>>2];c[w+8>>2]=c[A+8>>2];c[w+12>>2]=c[A+12>>2];c[I>>2]=c[H>>2];c[I+4>>2]=c[H+4>>2];c[I+8>>2]=c[H+8>>2];c[I+12>>2]=c[H+12>>2];c[J>>2]=c[C>>2];c[J+4>>2]=c[C+4>>2];c[J+8>>2]=c[C+8>>2];c[J+12>>2]=c[C+12>>2];if(!(GU(a,b,q,w,I,J,d,e)|0)){c[J>>2]=c[A>>2];c[J+4>>2]=c[A+4>>2];c[J+8>>2]=c[A+8>>2];c[J+12>>2]=c[A+12>>2];DU(z,J,.3333333333333333);c[I>>2]=c[G>>2];c[I+4>>2]=c[G+4>>2];c[I+8>>2]=c[G+8>>2];c[I+12>>2]=c[G+12>>2];c[J>>2]=c[z>>2];c[J+4>>2]=c[z+4>>2];c[J+8>>2]=c[z+8>>2];c[J+12>>2]=c[z+12>>2];HU(B,I,J);v=+h[B>>3];u=+h[B+8>>3];c[J>>2]=c[C>>2];c[J+4>>2]=c[C+4>>2];c[J+8>>2]=c[C+8>>2];c[J+12>>2]=c[C+12>>2];DU(D,J,.3333333333333333);c[I>>2]=c[H>>2];c[I+4>>2]=c[H+4>>2];c[I+8>>2]=c[H+8>>2];c[I+12>>2]=c[H+12>>2];c[J>>2]=c[D>>2];c[J+4>>2]=c[D+4>>2];c[J+8>>2]=c[D+8>>2];c[J+12>>2]=c[D+12>>2];IU(E,I,J);t=+h[E>>3];p=+h[E+8>>3];q=c[46692]|0;r=+h[G>>3];s=+h[H>>3];o=+h[G+8>>3];m=+h[H+8>>3];n=Q+8|0;i=-1;j=-1.0;k=1;while(1){if((k|0)>=(F|0))break;T=+h[q+(k*40|0)>>3];U=+JU(T);V=+CU(T);W=+EU(T);T=+KU(T);h[Q>>3]=V*v+r*U+W*t+s*T;h[n>>3]=W*p+V*u+o*U+m*T;S=d+(k<<4)|0;c[I>>2]=c[Q>>2];c[I+4>>2]=c[Q+4>>2];c[I+8>>2]=c[Q+8>>2];c[I+12>>2]=c[Q+12>>2];c[J>>2]=c[S>>2];c[J+4>>2]=c[S+4>>2];c[J+8>>2]=c[S+8>>2];c[J+12>>2]=c[S+12>>2];T=+BU(I,J);S=T>j;i=S?k:i;j=S?T:j;k=k+1|0}S=d+(i<<4)|0;Q=d+(i+-1<<4)|0;c[I>>2]=c[S>>2];c[I+4>>2]=c[S+4>>2];c[I+8>>2]=c[S+8>>2];c[I+12>>2]=c[S+12>>2];c[J>>2]=c[Q>>2];c[J+4>>2]=c[Q+4>>2];c[J+8>>2]=c[Q+8>>2];c[J+12>>2]=c[Q+12>>2];IU(N,I,J);c[J>>2]=c[N>>2];c[J+4>>2]=c[N+4>>2];c[J+8>>2]=c[N+8>>2];c[J+12>>2]=c[N+12>>2];yU(L,J);Q=i+1|0;N=d+(Q<<4)|0;c[I>>2]=c[N>>2];c[I+4>>2]=c[N+4>>2];c[I+8>>2]=c[N+8>>2];c[I+12>>2]=c[N+12>>2];c[J>>2]=c[S>>2];c[J+4>>2]=c[S+4>>2];c[J+8>>2]=c[S+8>>2];c[J+12>>2]=c[S+12>>2];IU(O,I,J);c[J>>2]=c[O>>2];c[J+4>>2]=c[O+4>>2];c[J+8>>2]=c[O+8>>2];c[J+12>>2]=c[O+12>>2];yU(M,J);c[I>>2]=c[L>>2];c[I+4>>2]=c[L+4>>2];c[I+8>>2]=c[L+8>>2];c[I+12>>2]=c[L+12>>2];c[J>>2]=c[M>>2];c[J+4>>2]=c[M+4>>2];c[J+8>>2]=c[M+8>>2];c[J+12>>2]=c[M+12>>2];HU(P,I,J);c[J>>2]=c[P>>2];c[J+4>>2]=c[P+4>>2];c[J+8>>2]=c[P+8>>2];c[J+12>>2]=c[P+12>>2];yU(K,J);c[I>>2]=c[f>>2];c[I+4>>2]=c[f+4>>2];c[I+8>>2]=c[f+8>>2];c[I+12>>2]=c[f+12>>2];c[J>>2]=c[K>>2];c[J+4>>2]=c[K+4>>2];c[J+8>>2]=c[K+8>>2];c[J+12>>2]=c[K+12>>2];AU(a,b,d,Q,I,J)|0;c[I>>2]=c[K>>2];c[I+4>>2]=c[K+4>>2];c[I+8>>2]=c[K+8>>2];c[I+12>>2]=c[K+12>>2];c[J>>2]=c[g>>2];c[J+4>>2]=c[g+4>>2];c[J+8>>2]=c[g+8>>2];c[J+12>>2]=c[g+12>>2];AU(a,b,S,e-i|0,I,J)|0;i=0}else i=0}l=R;return i|0}function BU(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+h[b>>3]-+h[a>>3];d=+h[b+8>>3]-+h[a+8>>3];return +(+C(+(d*d+c*c)))}function CU(a){a=+a;var b=0.0;b=1.0-a;return +(b*b*(a*3.0))}function DU(a,b,d){a=a|0;b=b|0;d=+d;var e=0;h[b>>3]=+h[b>>3]*d;e=b+8|0;h[e>>3]=+h[e>>3]*d;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function EU(a){a=+a;return +(a*a*3.0*(1.0-a))}function FU(a,b,d,e,f,g,i,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0,C=0,D=0,E=0,F=0,G=0,H=0.0,I=0.0,J=0,K=0,L=0,M=0;G=l;l=l+128|0;B=G+112|0;v=G+80|0;u=G;r=G+96|0;s=G+64|0;t=G+48|0;C=G+32|0;D=G+16|0;E=a+(b+-1<<4)|0;q=0;w=0.0;x=0.0;y=0.0;z=0.0;A=0.0;while(1){if((q|0)>=(b|0))break;K=d+(q*40|0)+8|0;c[v>>2]=c[K>>2];c[v+4>>2]=c[K+4>>2];c[v+8>>2]=c[K+8>>2];c[v+12>>2]=c[K+12>>2];c[B>>2]=c[K>>2];c[B+4>>2]=c[K+4>>2];c[B+8>>2]=c[K+8>>2];c[B+12>>2]=c[K+12>>2];H=+QU(v,B)+x;J=d+(q*40|0)+24|0;c[v>>2]=c[K>>2];c[v+4>>2]=c[K+4>>2];c[v+8>>2]=c[K+8>>2];c[v+12>>2]=c[K+12>>2];c[B>>2]=c[J>>2];c[B+4>>2]=c[J+4>>2];c[B+8>>2]=c[J+8>>2];c[B+12>>2]=c[J+12>>2];p=+QU(v,B)+A;c[v>>2]=c[J>>2];c[v+4>>2]=c[J+4>>2];c[v+8>>2]=c[J+8>>2];c[v+12>>2]=c[J+12>>2];c[B>>2]=c[J>>2];c[B+4>>2]=c[J+4>>2];c[B+8>>2]=c[J+8>>2];c[B+12>>2]=c[J+12>>2];o=+QU(v,B)+y;L=a+(q<<4)|0;M=d+(q*40|0)|0;I=+RU(+h[M>>3]);c[B>>2]=c[a>>2];c[B+4>>2]=c[a+4>>2];c[B+8>>2]=c[a+8>>2];c[B+12>>2]=c[a+12>>2];DU(s,B,I);I=+SU(+h[M>>3]);c[B>>2]=c[E>>2];c[B+4>>2]=c[E+4>>2];c[B+8>>2]=c[E+8>>2];c[B+12>>2]=c[E+12>>2];DU(t,B,I);c[v>>2]=c[s>>2];c[v+4>>2]=c[s+4>>2];c[v+8>>2]=c[s+8>>2];c[v+12>>2]=c[s+12>>2];c[B>>2]=c[t>>2];c[B+4>>2]=c[t+4>>2];c[B+8>>2]=c[t+8>>2];c[B+12>>2]=c[t+12>>2];HU(r,v,B);c[v>>2]=c[L>>2];c[v+4>>2]=c[L+4>>2];c[v+8>>2]=c[L+8>>2];c[v+12>>2]=c[L+12>>2];c[B>>2]=c[r>>2];c[B+4>>2]=c[r+4>>2];c[B+8>>2]=c[r+8>>2];c[B+12>>2]=c[r+12>>2];IU(u,v,B);c[v>>2]=c[K>>2];c[v+4>>2]=c[K+4>>2];c[v+8>>2]=c[K+8>>2];c[v+12>>2]=c[K+12>>2];c[B>>2]=c[u>>2];c[B+4>>2]=c[u+4>>2];c[B+8>>2]=c[u+8>>2];c[B+12>>2]=c[u+12>>2];I=+QU(v,B)+w;c[v>>2]=c[J>>2];c[v+4>>2]=c[J+4>>2];c[v+8>>2]=c[J+8>>2];c[v+12>>2]=c[J+12>>2];c[B>>2]=c[u>>2];c[B+4>>2]=c[u+4>>2];c[B+8>>2]=c[u+8>>2];c[B+12>>2]=c[u+12>>2];q=q+1|0;w=I;x=H;y=o;z=+QU(v,B)+z;A=p}o=y*x-A*A;p=o>=0.0?o:-o;if(!(p>=1.0e-06?(m=(y*w-A*z)/o,n=(x*z-A*w)/o,!(p<1.0e-06|m<=0.0|n<=0.0)):0))F=6;if((F|0)==6){c[v>>2]=c[a>>2];c[v+4>>2]=c[a+4>>2];c[v+8>>2]=c[a+8>>2];c[v+12>>2]=c[a+12>>2];c[B>>2]=c[E>>2];c[B+4>>2]=c[E+4>>2];c[B+8>>2]=c[E+8>>2];c[B+12>>2]=c[E+12>>2];m=+BU(v,B)*.3333333333333333;n=m};c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];c[B>>2]=c[e>>2];c[B+4>>2]=c[e+4>>2];c[B+8>>2]=c[e+8>>2];c[B+12>>2]=c[e+12>>2];DU(C,B,m);c[i>>2]=c[C>>2];c[i+4>>2]=c[C+4>>2];c[i+8>>2]=c[C+8>>2];c[i+12>>2]=c[C+12>>2];c[j>>2]=c[E>>2];c[j+4>>2]=c[E+4>>2];c[j+8>>2]=c[E+8>>2];c[j+12>>2]=c[E+12>>2];c[B>>2]=c[f>>2];c[B+4>>2]=c[f+4>>2];c[B+8>>2]=c[f+8>>2];c[B+12>>2]=c[f+12>>2];DU(D,B,n);c[k>>2]=c[D>>2];c[k+4>>2]=c[D+4>>2];c[k+8>>2]=c[D+8>>2];c[k+12>>2]=c[D+12>>2];l=G;return}function GU(a,b,d,e,f,g,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;var k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0.0,s=0.0,t=0,u=0.0,v=0,w=0.0,x=0,y=0.0,z=0,A=0,B=0,C=0,D=0.0,E=0;C=l;l=l+64|0;B=C;z=(j|0)==2;y=+h[d>>3];u=+h[d+8>>3];v=B+8|0;w=+h[e>>3];x=B+16|0;p=+h[e+8>>3];q=B+24|0;r=+h[f>>3];s=+h[g>>3];t=B+32|0;o=+h[f+8>>3];n=+h[g+8>>3];e=B+40|0;f=B+48|0;g=B+56|0;d=1;k=4.0;m=4.0;while(1){h[B>>3]=y;h[v>>3]=u;D=m*.3333333333333333;h[x>>3]=D*w+y;h[q>>3]=D*p+u;D=k*.3333333333333333;h[t>>3]=r-D*s;h[e>>3]=o-D*n;h[f>>3]=r;h[g>>3]=o;if(d?(D=+LU(B,4),D<+LU(i,j)+-.001):0){d=0;break}if(MU(a,b,B)|0){A=5;break}if(m==0.0&k==0.0){A=9;break}E=m>.01;d=0;k=E?k*.5:0.0;m=E?m*.5:0.0}a:do if((A|0)==5){zU((c[46689]|0)+4|0);e=c[46690]|0;d=1;while(1){if((d|0)==4){d=1;break a}E=c[46689]|0;h[e+(E<<4)>>3]=+h[B+(d<<4)>>3];D=+h[B+(d<<4)+8>>3];c[46689]=E+1;h[e+(E<<4)+8>>3]=D;d=d+1|0}}else if((A|0)==9)if(z){zU((c[46689]|0)+4|0);e=c[46690]|0;d=1;while(1){if((d|0)==4){d=1;break a}E=c[46689]|0;h[e+(E<<4)>>3]=+h[B+(d<<4)>>3];D=+h[B+(d<<4)+8>>3];c[46689]=E+1;h[e+(E<<4)+8>>3]=D;d=d+1|0}}else d=0;while(0);l=C;return d|0}function HU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;h[b>>3]=+h[b>>3]+ +h[d>>3];e=b+8|0;h[e>>3]=+h[e>>3]+ +h[d+8>>3];c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function IU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;h[b>>3]=+h[b>>3]-+h[d>>3];e=b+8|0;h[e>>3]=+h[e>>3]-+h[d+8>>3];c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function JU(a){a=+a;a=1.0-a;return +(a*a*a)}function KU(a){a=+a;return +(a*a*a)}function LU(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0.0,f=0.0,g=0;c=0.0;d=1;while(1){if((d|0)>=(b|0))break;g=d+-1|0;e=+h[a+(d<<4)>>3]-+h[a+(g<<4)>>3];f=+h[a+(d<<4)+8>>3]-+h[a+(g<<4)+8>>3];c=+C(+(f*f+e*e))+c;d=d+1|0}return +c}function MU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0.0,E=0.0;C=l;l=l+64|0;t=C+32|0;u=C;w=u+16|0;y=d+16|0;z=d+32|0;A=d+48|0;B=d+8|0;g=d+24|0;i=d+40|0;j=d+56|0;k=u+8|0;m=u+24|0;f=0;a:while(1){if((f|0)>=(b|0)){e=1;break}n=a+(f<<5)|0;c[u>>2]=c[n>>2];c[u+4>>2]=c[n+4>>2];c[u+8>>2]=c[n+8>>2];c[u+12>>2]=c[n+12>>2];n=a+(f<<5)+16|0;c[w>>2]=c[n>>2];c[w+4>>2]=c[n+4>>2];c[w+8>>2]=c[n+8>>2];c[w+12>>2]=c[n+12>>2];n=NU(d,u,t)|0;b:do if((n|0)!=4){o=+h[u>>3];p=+h[k>>3];q=+h[w>>3];r=+h[m>>3];e=0;while(1){if((e|0)>=(n|0))break b;s=+h[t+(e<<3)>>3];if((!(s<1.0e-06|s>.999999)?(x=s*s*s,E=s*3.0,D=1.0-s,s=E*s*D,v=D*D,E=v*E,D=v*D,v=+h[y>>3]*E+ +h[d>>3]*D+ +h[z>>3]*s+ +h[A>>3]*x,x=+h[g>>3]*E+ +h[B>>3]*D+ +h[i>>3]*s+ +h[j>>3]*x,s=v-o,D=x-p,!(D*D+s*s<.001)):0)?(E=v-q,D=x-r,!(D*D+E*E<.001)):0){e=0;break a}e=e+1|0}}while(0);f=f+1|0}l=C;return e|0}function NU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0,j=0.0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+96|0;s=v+48|0;t=v+24|0;k=v;u=v+80|0;p=+h[b>>3];g=+h[b+16>>3]-p;q=+h[b+8>>3];j=+h[b+24>>3]-q;c[u>>2]=0;a:do if(!(g==0.0)){j=j/g;m=a+16|0;n=a+32|0;o=a+48|0;OU(+h[a+8>>3]-+h[a>>3]*j,+h[a+24>>3]-+h[m>>3]*j,+h[a+40>>3]-+h[n>>3]*j,+h[a+56>>3]-+h[o>>3]*j,s);h[s>>3]=j*p-q+ +h[s>>3];e=kV(s,t)|0;if((e|0)==4)b=4;else{f=s+8|0;i=s+16|0;k=s+24|0;g=1.0/g;b=0;while(1){if((b|0)>=(e|0))break;j=+h[t+(b<<3)>>3];if(j>=0.0&j<=1.0?(OU(+h[a>>3],+h[m>>3],+h[n>>3],+h[o>>3],s),q=(+h[s>>3]-p+((+h[k>>3]*j+ +h[i>>3])*j+ +h[f>>3])*j)*g,q>=0.0&q<=1.0):0)PU(j,d,u);b=b+1|0}b=c[u>>2]|0}}else{OU(+h[a>>3],+h[a+16>>3],+h[a+32>>3],+h[a+48>>3],s);h[s>>3]=+h[s>>3]-p;r=kV(s,t)|0;if(!(j==0.0)){if((r|0)==4){b=4;break}m=a+8|0;n=a+24|0;o=a+40|0;e=a+56|0;f=s+8|0;i=s+16|0;k=s+24|0;g=1.0/j;b=0;while(1){if((b|0)>=(r|0))break;j=+h[t+(b<<3)>>3];if(j>=0.0&j<=1.0?(OU(+h[m>>3],+h[n>>3],+h[o>>3],+h[e>>3],s),p=(+h[s>>3]-q+((+h[k>>3]*j+ +h[i>>3])*j+ +h[f>>3])*j)*g,p>=0.0&p<=1.0):0)PU(j,d,u);b=b+1|0}b=c[u>>2]|0;break}OU(+h[a+8>>3],+h[a+24>>3],+h[a+40>>3],+h[a+56>>3],s);h[s>>3]=+h[s>>3]-q;i=kV(s,k)|0;b=(i|0)==4;b:do if((r|0)==4){if(b){b=4;break a}else b=0;while(1){if((b|0)>=(i|0))break b;PU(+h[k+(b<<3)>>3],d,u);b=b+1|0}}else{if(b){b=0;while(1){if((b|0)>=(r|0))break b;PU(+h[t+(b<<3)>>3],d,u);b=b+1|0}}else e=0;while(1){if((e|0)>=(r|0))break b;f=t+(e<<3)|0;b=0;while(1){if((b|0)>=(i|0))break;g=+h[f>>3];if(g==+h[k+(b<<3)>>3])PU(g,d,u);b=b+1|0}e=e+1|0}}while(0);b=c[u>>2]|0}while(0);l=v;return b|0}function OU(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=e|0;h[e+24>>3]=d-a+(b-c)*3.0;h[e+16>>3]=(c+a)*3.0-b*6.0;h[e+8>>3]=(b-a)*3.0;h[e>>3]=a;return}function PU(a,b,d){a=+a;b=b|0;d=d|0;var e=0;if(a>=0.0&a<=1.0){e=c[d>>2]|0;h[b+(e<<3)>>3]=a;c[d>>2]=e+1}return}function QU(a,b){a=a|0;b=b|0;return +(+h[b+8>>3]*+h[a+8>>3]+ +h[b>>3]*+h[a>>3])}function RU(a){a=+a;var b=0.0;b=1.0-a;return +(b*b*(b+a*3.0))}function SU(a){a=+a;return +(a*a*((1.0-a)*3.0+a))}function TU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0.0,j=0,k=0,m=0,n=0,q=0,r=0,s=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0.0;H=l;l=l+112|0;E=H+80|0;D=H+64|0;C=H+48|0;G=4;F=C_(40)|0;c[F>>2]=0;w=H+32|0;x=H+16|0;y=H;A=H+96|0;G=D3(186776,1,F|0,G|0)|0;F=z;o=0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,G|0,F|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1)e=z;else e=0;a:while(1){if(e|0){e=-2;break}g=a+4|0;o=0;ia(113,c[g>>2]|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,G|0,F|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;continue}c[46733]=0;c[46734]=0;o=0;ia(114,c[g>>2]<<1|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,G|0,F|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;continue}m=(c[46736]|0)/2|0;c[46737]=m;c[46738]=m+-1;m=c[g>>2]|0;g=c[a>>2]|0;e=0;f=-1;i=t;while(1){if((e|0)>=(m|0))break;I=+h[g+(e<<4)>>3];v=i>I;u=v?e:f;e=e+1|0;f=u;i=v?I:i}v=g+(f<<4)|0;c[x>>2]=c[v>>2];c[x+4>>2]=c[v+4>>2];c[x+8>>2]=c[v+8>>2];c[x+12>>2]=c[v+12>>2];v=g+(((f|0)==0?m:f)+-1<<4)|0;c[w>>2]=c[v>>2];c[w+4>>2]=c[v+4>>2];c[w+8>>2]=c[v+8>>2];c[w+12>>2]=c[v+12>>2];v=g+(((f|0)==(m+-1|0)?0:f+1|0)<<4)|0;c[y>>2]=c[v>>2];c[y+4>>2]=c[v+4>>2];c[y+8>>2]=c[v+8>>2];c[y+12>>2]=c[v+12>>2];I=+h[x>>3];if((+h[w>>3]==I?I==+h[y>>3]:0)?+h[y+8>>3]>+h[x+8>>3]:0)v=15;else v=12;b:do if((v|0)==12){v=0;o=0;e=ca(33,w|0,x|0,y|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,G|0,F|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){e=z;continue a}if((e|0)==1){g=c[46740]|0;e=c[46741]|0;f=0;while(1){if((f|0)>=(m|0))break b;j=c[a>>2]|0;if(!(((f|0)>0?(B=f+-1|0,+h[j+(f<<4)>>3]==+h[j+(B<<4)>>3]):0)?+h[j+(f<<4)+8>>3]==+h[j+(B<<4)+8>>3]:0)){u=c[46733]|0;c[g+(u<<3)>>2]=j+(f<<4);c[g+(u<<3)+4>>2]=g+(((u|0)%(m|0)|0)<<3);c[e+(u<<2)>>2]=g+(u<<3);c[46733]=u+1}f=f+1|0}}else v=15}while(0);c:do if((v|0)==15){v=0;j=c[46740]|0;e=c[46741]|0;g=m;while(1){f=g+-1|0;if((g|0)<=0)break c;k=c[a>>2]|0;if(((g|0)<(m|0)?+h[k+(f<<4)>>3]==+h[k+(g<<4)>>3]:0)?+h[k+(f<<4)+8>>3]==+h[k+(g<<4)+8>>3]:0){g=f;continue}g=c[46733]|0;c[j+(g<<3)>>2]=k+(f<<4);c[j+(g<<3)+4>>2]=j+(((g|0)%(m|0)|0)<<3);c[e+(g<<2)>>2]=j+(g<<3);c[46733]=g+1;g=f}}while(0);o=0;ja(29,e|0,c[46733]|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,G|0,F|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;continue}j=0;e=c[46734]|0;d:while(1){if((j|0)>=(e|0)){s=0;break}k=j+1|0;g=k;while(1){if((g|0)>=(e|0)){j=k;continue d}o=0;ja(30,j|0,g|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,G|0,F|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;continue a}g=g+1|0;e=c[46734]|0}}while(1){if((s|0)>=(e|0))break;o=0;f=aa(103,s|0,b|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){j=E3(c[g>>2]|0,G|0,F|0)|0;if(!j)bb(g|0,p|0);z=p}else j=-1;if((j|0)==1){e=z;continue a}if(f|0)break;s=s+1|0}if((s|0)==(e|0)){e=c[15686]|0;o=0;c[C>>2]=138776;c[C+4>>2]=192;c[C+8>>2]=138787;ca(29,e|0,138757,C|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,G|0,F|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;continue}else{v=41;break}}u=b+16|0;k=0;while(1){if((k|0)>=(e|0))break;o=0;f=aa(103,k|0,u|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){j=E3(c[g>>2]|0,G|0,F|0)|0;if(!j)bb(g|0,p|0);z=p}else j=-1;if((j|0)==1){e=z;continue a}if(f|0)break;k=k+1|0}if((k|0)==(e|0)){e=c[15686]|0;o=0;c[D>>2]=138776;c[D+4>>2]=200;c[D+8>>2]=138820;ca(29,e|0,138757,D|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,G|0,F|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;continue}else{v=48;break}}o=0;e=aa(104,s|0,k|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,G|0,F|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){e=z;continue}if(!e){e=c[15686]|0;o=0;c[E>>2]=138776;c[E+4>>2]=207;c[E+8>>2]=138858;ca(29,e|0,138757,E|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,G|0,F|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;continue}o=0;ia(115,2);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,G|0,F|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;continue}else{v=53;break}}if((s|0)==(k|0)){o=0;ia(115,2);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,G|0,F|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;continue}else{v=56;break}}c[A>>2]=b;c[A+4>>2]=0;f=A+8|0;c[f>>2]=u;c[A+12>>2]=0;o=0;ja(31,1,A|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){g=E3(c[e>>2]|0,G|0,F|0)|0;if(!g)bb(e|0,p|0);z=p}else g=-1;if((g|0)==1){e=z;continue}c[46739]=c[46737];q=s;e:while(1){if((q|0)==-1){g=f;e=0;break}r=c[46743]|0;c[r+(q*52|0)>>2]=2;e=0;while(1){if((e|0)>=3){v=65;break}v=c[r+(q*52|0)+4+(e<<4)+12>>2]|0;if(v|0?(c[v>>2]|0)==1:0){v=68;break}e=e+1|0}if((v|0)==65){v=0;if((e|0)==3){e=c[46735]|0;k=c[e+(c[46738]<<2)>>2]|0;o=0;e=ca(33,u|0,c[c[e+(c[46737]<<2)>>2]>>2]|0,c[k>>2]|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){j=E3(c[g>>2]|0,G|0,F|0)|0;if(!j)bb(g|0,p|0);z=p}else j=-1;if((j|0)==1){e=z;continue a}j=(e|0)==1;n=j?f:k;j=j?k:f}else v=68}if((v|0)==68){v=0;k=c[r+(q*52|0)+4+(e<<4)>>2]|0;m=c[r+(q*52|0)+4+(e<<4)+4>>2]|0;o=0;e=ca(33,c[k>>2]|0,c[c[r+(q*52|0)+4+(((e+1|0)%3|0)<<4)+4>>2]>>2]|0,c[m>>2]|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){j=E3(c[g>>2]|0,G|0,F|0)|0;if(!j)bb(g|0,p|0);z=p}else j=-1;if((j|0)==1){e=z;continue a}j=(e|0)==1;n=j?k:m;j=j?m:k}do if((q|0)==(s|0)){o=0;ja(31,2,j|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){g=E3(c[e>>2]|0,G|0,F|0)|0;if(!g)bb(e|0,p|0);z=p}else g=-1;if((g|0)==1){e=z;continue a}o=0;ja(31,1,n|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){g=E3(c[e>>2]|0,G|0,F|0)|0;if(!g)bb(e|0,p|0);z=p}else g=-1;if((g|0)==1){e=z;continue a}e=0}else{m=c[46735]|0;if((c[m+(c[46737]<<2)>>2]|0)!=(n|0)?(c[m+(c[46738]<<2)>>2]|0)!=(n|0):0){o=0;j=$(34,n|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){g=E3(c[e>>2]|0,G|0,F|0)|0;if(!g)bb(e|0,p|0);z=p}else g=-1;if((g|0)==1){e=z;continue a}o=0;ja(32,2,j|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){g=E3(c[e>>2]|0,G|0,F|0)|0;if(!g)bb(e|0,p|0);z=p}else g=-1;if((g|0)==1){e=z;continue a}o=0;ja(31,1,n|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){g=E3(c[e>>2]|0,G|0,F|0)|0;if(!g)bb(e|0,p|0);z=p}else g=-1;if((g|0)==1){e=z;continue a}if((j|0)<=(c[46739]|0)){e=0;break}c[46739]=j;e=0;break}o=0;k=$(34,j|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){g=E3(c[e>>2]|0,G|0,F|0)|0;if(!g)bb(e|0,p|0);z=p}else g=-1;if((g|0)==1){e=z;continue a}o=0;ja(32,1,k|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){g=E3(c[e>>2]|0,G|0,F|0)|0;if(!g)bb(e|0,p|0);z=p}else g=-1;if((g|0)==1){e=z;continue a}o=0;ja(31,2,j|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){g=E3(c[e>>2]|0,G|0,F|0)|0;if(!g)bb(e|0,p|0);z=p}else g=-1;if((g|0)==1){e=z;continue a}if((k|0)>=(c[46739]|0)){e=0;break}c[46739]=k;e=0}while(0);while(1){if((e|0)>=3){q=-1;continue e}g=c[r+(q*52|0)+4+(e<<4)+12>>2]|0;if(g|0?(c[g>>2]|0)==1:0)break;e=e+1|0}q=(g-(c[46743]|0)|0)/52|0}while(1){if(!g)break;g=c[g+4>>2]|0;e=e+1|0}o=0;ia(115,e|0);g=o;o=0;if((g|0)!=0&(p|0)!=0){j=E3(c[g>>2]|0,G|0,F|0)|0;if(!j)bb(g|0,p|0);z=p}else j=-1;if((j|0)==1)e=z;else{v=94;break}}if((v|0)==41)e=-1;else if((v|0)==48)e=-1;else if((v|0)==53){c[d+4>>2]=2;e=c[46742]|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];F=e+16|0;c[F>>2]=c[u>>2];c[F+4>>2]=c[u+4>>2];c[F+8>>2]=c[u+8>>2];c[F+12>>2]=c[u+12>>2];c[d>>2]=e;e=0}else if((v|0)==56){c[d+4>>2]=2;e=c[46742]|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];F=e+16|0;c[F>>2]=c[u>>2];c[F+4>>2]=c[u+4>>2];c[F+8>>2]=c[u+8>>2];c[F+12>>2]=c[u+12>>2];c[d>>2]=e;e=0}else if((v|0)==94){c[d+4>>2]=e;g=c[46742]|0;while(1){e=e+-1|0;if(!f)break;F=g+(e<<4)|0;E=c[f>>2]|0;c[F>>2]=c[E>>2];c[F+4>>2]=c[E+4>>2];c[F+8>>2]=c[E+8>>2];c[F+12>>2]=c[E+12>>2];f=c[f+4>>2]|0}c[d>>2]=g;e=0}D_(G|0);l=H;return e|0}function UU(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=l;l=l+64|0;e=h+48|0;g=h+32|0;f=h+16|0;d=h;if((c[46746]|0)<(a|0)){b=c[46740]|0;if(!b){g=C_(a<<3)|0;c[46740]=g;if(!g){g=c[15686]|0;c[d>>2]=138776;c[d+4>>2]=523;c[d+8>>2]=139026;g1(g,138757,d)|0;bb(186776,1)}g=C_(a<<2)|0;c[46741]=g;if(!g){g=c[15686]|0;c[f>>2]=138776;c[f+4>>2]=527;c[f+8>>2]=139045;g1(g,138757,f)|0;bb(186776,1)}}else{f=F_(b,a<<3)|0;c[46740]=f;if(!f){f=c[15686]|0;c[g>>2]=138776;c[g+4>>2]=533;c[g+8>>2]=139065;g1(f,138757,g)|0;bb(186776,1)}g=F_(c[46741]|0,a<<2)|0;c[46741]=g;if(!g){g=c[15686]|0;c[e>>2]=138776;c[e+4>>2]=539;c[e+8>>2]=139085;g1(g,138757,e)|0;bb(186776,1)}}c[46746]=a}l=h;return}function VU(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f+16|0;d=f;if((c[46736]|0)<(a|0)){b=c[46735]|0;if(!b){e=C_(a<<2)|0;c[46735]=e;if(!e){e=c[15686]|0;c[d>>2]=138776;c[d+4>>2]=573;c[d+8>>2]=138981;g1(e,138757,d)|0;bb(186776,1)}}else{d=F_(b,a<<2)|0;c[46735]=d;if(!d){d=c[15686]|0;c[e>>2]=138776;c[e+4>>2]=580;c[e+8>>2]=139003;g1(d,138757,e)|0;bb(186776,1)}}c[46736]=a}l=f;return}function WU(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0;d=+h[b+8>>3];e=+h[b>>3];d=(+h[c>>3]-e)*(+h[a+8>>3]-d)-(+h[a>>3]-e)*(+h[c+8>>3]-d);return (d>0.0?1:d<0.0?2:3)|0}function XU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;h=i;a:while(1){if((b|0)>3)e=0;else{b=9;break}while(1){if((e|0)>=(b|0)){b=8;break a}f=e+1|0;d=(f|0)%(b|0)|0;g=(e+2|0)%(b|0)|0;if(!(dV(e,g,a,b)|0))e=f;else break}eV(c[a+(e<<2)>>2]|0,c[a+(d<<2)>>2]|0,c[a+(g<<2)>>2]|0);b=b+-1|0;while(1){if((d|0)>=(b|0))continue a;g=d+1|0;c[a+(d<<2)>>2]=c[a+(g<<2)>>2];d=g}}if((b|0)==8){a=c[15686]|0;c[h>>2]=138776;c[h+4>>2]=324;c[h+8>>2]=138921;g1(a,138757,h)|0}else if((b|0)==9)eV(c[a>>2]|0,c[a+4>>2]|0,c[a+8>>2]|0);l=i;return}function YU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;i=c[46743]|0;j=i+(a*52|0)|0;k=i+(b*52|0)|0;g=0;while(1){if((g|0)==3)break;l=i+(a*52|0)+4+(g<<4)|0;m=i+(a*52|0)+4+(g<<4)+4|0;n=i+(a*52|0)+4+(g<<4)+12|0;f=0;while(1){if((f|0)==3)break;o=c[c[l>>2]>>2]|0;h=c[c[i+(b*52|0)+4+(f<<4)>>2]>>2]|0;if((o|0)==(h|0)){d=c[c[i+(b*52|0)+4+(f<<4)+4>>2]>>2]|0;if((c[c[m>>2]>>2]|0)==(d|0))e=10;else e=8}else{d=c[c[i+(b*52|0)+4+(f<<4)+4>>2]>>2]|0;e=8}if(((e|0)==8?(e=0,(o|0)==(d|0)):0)?(c[c[m>>2]>>2]|0)==(h|0):0)e=10;if((e|0)==10){c[n>>2]=k;c[i+(b*52|0)+4+(f<<4)+12>>2]=j}f=f+1|0}g=g+1|0}return}function ZU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[46743]|0;d=0;e=0;while(1){if((e|0)==3)break;d=d+((WU(c[c[f+(a*52|0)+4+(e<<4)>>2]>>2]|0,c[c[f+(a*52|0)+4+(e<<4)+4>>2]>>2]|0,b)|0)!=2&1)|0;e=e+1|0}return ((d|0)==3|(d|0)==0)&1|0}function _U(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[46743]|0;e=d+(a*52|0)|0;a:do if(!(c[e>>2]|0)){c[e>>2]=1;if((a|0)==(b|0))d=1;else{f=0;while(1){if((f|0)>=3)break;e=c[d+(a*52|0)+4+(f<<4)+12>>2]|0;if(e){if(_U((e-d|0)/52|0,b)|0){d=1;break a}d=c[46743]|0}f=f+1|0}c[d+(a*52|0)>>2]=0;d=0}}else d=0;while(0);return d|0}function $U(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f+16|0;d=f;if((c[46744]|0)<(a|0)){b=c[46742]|0;if(!b){e=C_(a<<4)|0;c[46742]=e;if(!e){e=c[15686]|0;c[d>>2]=138776;c[d+4>>2]=593;c[d+8>>2]=138884;g1(e,138757,d)|0;bb(186776,1)}}else{d=F_(b,a<<4)|0;c[46742]=d;if(!d){d=c[15686]|0;c[e>>2]=138776;c[e+4>>2]=599;c[e+8>>2]=138902;g1(d,138757,e)|0;bb(186776,1)}}c[46744]=a}l=f;return}function aV(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[46738]|0;e=c[46737]|0;f=(d|0)>=(e|0);if((a|0)==1)if(f){c[b+4>>2]=c[(c[46735]|0)+(e<<2)>>2];a=186948;d=-1}else{a=186948;d=-1}else if(f){c[b+4>>2]=c[(c[46735]|0)+(d<<2)>>2];a=186952;d=1}else{a=186952;d=1}f=(c[a>>2]|0)+d|0;c[a>>2]=f;c[(c[46735]|0)+(f<<2)>>2]=b;return}function bV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=c[46739]|0;g=c[46735]|0;b=c[46737]|0;while(1){if((b|0)>=(f|0)){e=4;break}d=b+1|0;if((WU(c[c[g+(d<<2)>>2]>>2]|0,c[c[g+(b<<2)>>2]>>2]|0,c[a>>2]|0)|0)==1)break;else b=d}a:do if((e|0)==4){b=c[46738]|0;while(1){if((b|0)<=(f|0)){b=f;break a}d=b+-1|0;if((WU(c[c[g+(d<<2)>>2]>>2]|0,c[c[g+(b<<2)>>2]>>2]|0,c[a>>2]|0)|0)==2)break;else b=d}}while(0);return b|0}function cV(a,b){a=a|0;b=b|0;c[((a|0)==1?186952:186948)>>2]=b;return}function dV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=c[c[d+(((a+-1+e|0)%(e|0)|0)<<2)>>2]>>2]|0;i=c[c[d+(a<<2)>>2]>>2]|0;g=c[c[d+(((a+1|0)%(e|0)|0)<<2)>>2]>>2]|0;k=(WU(f,i,g)|0)==1;j=c[c[d+(b<<2)>>2]>>2]|0;if(k)if((WU(i,j,f)|0)==1){f=WU(j,i,g)|0;g=1;h=5}else f=0;else{f=WU(i,j,g)|0;g=2;h=5}a:do if((h|0)==5)if((f|0)==(g|0)){f=0;while(1){if((f|0)>=(e|0)){f=1;break a}g=f;f=f+1|0;h=(f|0)%(e|0)|0;if((h|0)==(b|0)|((g|0)==(b|0)|((g|0)==(a|0)|(h|0)==(a|0))))continue;if(gV(i,j,c[c[d+(g<<2)>>2]>>2]|0,c[c[d+(h<<2)>>2]>>2]|0)|0){f=0;break}}}else f=0;while(0);return f|0}function eV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=c[46734]|0;f=c[46745]|0;if((e|0)<(f|0))h=e;else{fV(f+20|0);h=c[46734]|0}g=c[46743]|0;c[46734]=h+1;f=g+(h*52|0)|0;c[f>>2]=0;c[g+(h*52|0)+4>>2]=a;c[g+(h*52|0)+8>>2]=b;c[g+(h*52|0)+16>>2]=0;c[g+(h*52|0)+20>>2]=b;c[g+(h*52|0)+24>>2]=d;c[g+(h*52|0)+32>>2]=0;c[g+(h*52|0)+36>>2]=d;c[g+(h*52|0)+40>>2]=a;c[g+(h*52|0)+48>>2]=0;e=0;while(1){if((e|0)==3)break;c[g+(h*52|0)+4+(e<<4)+8>>2]=f;e=e+1|0}return}function fV(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f+16|0;d=f;if((c[46745]|0)<(a|0)){b=c[46743]|0;if(!b){e=C_(a*52|0)|0;c[46743]=e;if(!e){e=c[15686]|0;c[d>>2]=138776;c[d+4>>2]=552;c[d+8>>2]=138942;g1(e,138757,d)|0;bb(186776,1)}}else{d=F_(b,a*52|0)|0;c[46743]=d;if(!d){d=c[15686]|0;c[e>>2]=138776;c[e+4>>2]=558;c[e+8>>2]=138961;g1(d,138757,e)|0;bb(186776,1)}}c[46745]=a}l=f;return}function gV(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;f=WU(a,b,c)|0;if((((f|0)!=3?(g=WU(a,b,d)|0,(g|0)!=3):0)?(h=WU(c,d,a)|0,(h|0)!=3):0)?(e=WU(c,d,b)|0,(e|0)!=3):0)return ((f|0)==1^(g|0)==1)&((h|0)==1^(e|0)==1)&1|0;if(((hV(a,b,c)|0)==0?(hV(a,b,d)|0)==0:0)?(hV(c,d,a)|0)==0:0)return (hV(c,d,b)|0)!=0|0;return 1}function hV(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0,g=0.0;e=+h[a>>3];g=+h[b>>3]-e;f=+h[a+8>>3];d=+h[b+8>>3]-f;e=+h[c>>3]-e;f=+h[c+8>>3]-f;if((WU(a,b,c)|0)==3?f*d+e*g>=0.0:0)a=f*f+e*e<=d*d+g*g&1;else a=0;return a|0}function iV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0;m=C_(d<<2)|0;n=C_((d<<3)+8|0)|0;o=n+8|0;f=0;while(1){if((f|0)>=(d|0))break;c[m+(f<<2)>>2]=-1;h[o+(f<<3)>>3]=-2147483647.0;f=f+1|0}h[n>>3]=-2147483648.0;a:while(1){if((a|0)==(b|0))break;l=o+(a<<3)|0;j=+h[l>>3];h[l>>3]=j==-2147483647.0?0.0:-j;k=0;f=-1;while(1){if((k|0)>=(d|0)){a=f;continue a}i=o+(k<<3)|0;g=+h[i>>3];if(g<0.0){q=(a|0)<(k|0);p=+h[(c[e+((q?k:a)<<2)>>2]|0)+((q?a:k)<<3)>>3];j=-(p+ +h[l>>3]);if(p!=0.0&g<j){h[i>>3]=j;c[m+(k<<2)>>2]=a;g=j}f=g>+h[o+(f<<3)>>3]?k:f}k=k+1|0}}D_(n);return m|0}function jV(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;j=l;l=l+32|0;k=j+16|0;m=j;i=c[h+4>>2]|0;c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[k>>2]=c[e>>2];c[k+4>>2]=c[e+4>>2];c[k+8>>2]=c[e+8>>2];c[k+12>>2]=c[e+12>>2];if(!(CV(m,b,k,f,h)|0)){a=c[h+24>>2]|0;c[a+(i<<2)>>2]=g;m=i+1|0;c[a+(m<<2)>>2]=d;a=iV(m,i,i+2|0,a)|0}else{a=C_((i<<2)+8|0)|0;m=i+1|0;c[a+(i<<2)>>2]=m;c[a+(m<<2)>>2]=-1}l=j;return a|0}function kV(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,i=0.0,j=0;d=+h[a+24>>3];a:do if(d<1.0e-07&d>-1.0e-07)a=lV(a,b)|0;else{g=+h[a+16>>3]/(d*3.0);f=+h[a+8>>3]/d;e=g*g;d=g*2.0*e-g*f+ +h[a>>3]/d;e=f*.3333333333333333-e;e=e*e*4.0*e;f=d*d+e;if(!(f<0.0)){i=(+C(+f)-d)*.5;e=+n$(i);d=+n$(-d-i)+e;h[b>>3]=d;if(f>0.0)a=1;else{d=d*-.5;h[b+16>>3]=d;a=1;c=7}}else{i=+K(+(+C(+-f)),+-d);d=+n$(+C(+-e)*.5)*2.0;h[b>>3]=d*+E(+(i*.3333333333333333));h[b+8>>3]=+E(+((i+6.283185307179586)*.3333333333333333))*d;d=+E(+((i+-6.283185307179586)*.3333333333333333))*d;a=2;c=7}if((c|0)==7){h[b+(a<<3)>>3]=d;a=3}c=0;while(1){if((c|0)>=(a|0))break a;j=b+(c<<3)|0;h[j>>3]=+h[j>>3]-g;c=c+1|0}}while(0);return a|0}function lV(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+h[a+16>>3];do if(!(c<1.0e-07&c>-1.0e-07)){d=+h[a+8>>3]/(c*2.0);c=d*d-+h[a>>3]/c;if(!(c<0.0))if(c==0.0){h[b>>3]=-d;a=1;break}else{c=+C(+c)-d;h[b>>3]=c;h[b+8>>3]=d*-2.0-c;a=2;break}else a=0}else a=mV(a,b)|0;while(0);return a|0}function mV(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+h[a+8>>3];c=+h[a>>3];if(d<1.0e-07&d>-1.0e-07)a=c<1.0e-07&c>-1.0e-07?4:0;else{h[b>>3]=-c/d;a=1}return a|0}function nV(a){a=a|0;D_(c[a>>2]|0);D_(a);return}function oV(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;e=c[a+4>>2]|0;i=(e*3|0)+-2|0;d=c[46748]|0;if((i|0)>(c[46747]|0)){if(!d)d=C_(i<<4)|0;else d=F_(d,i<<4)|0;c[46748]=d;c[46747]=i;h=d;g=d}else{h=d;g=d}f=c[a>>2]|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];G3(h+16|0,f|0,16)|0;e=e+-1|0;d=1;a=2;while(1){if((d|0)>=(e|0))break;j=h+(a+2<<4)|0;k=h+(a+1<<4)|0;m=h+(a<<4)|0;l=f+(d<<4)|0;c[m>>2]=c[l>>2];c[m+4>>2]=c[l+4>>2];c[m+8>>2]=c[l+8>>2];c[m+12>>2]=c[l+12>>2];G3(k|0,l|0,16)|0;c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];d=d+1|0;a=a+3|0}l=h+(a<<4)|0;m=f+(d<<4)|0;c[l>>2]=c[m>>2];c[l+4>>2]=c[m+4>>2];c[l+8>>2]=c[m+8>>2];c[l+12>>2]=c[m+12>>2];G3(h+(a+1<<4)|0,m|0,16)|0;c[b+4>>2]=i;c[b>>2]=g;return}function pV(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0;d=+h[b+8>>3];e=+h[b>>3];d=(+h[c>>3]-e)*(+h[a+8>>3]-d)-(+h[a>>3]-e)*(+h[c+8>>3]-d);return (d>.0001?1:(d<-.0001)<<31>>31)|0}function qV(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0;e=+h[a>>3];f=+h[b>>3];if(e!=f){d=+h[c>>3];if(!(e<d&d<f))if(f<d)a=d<e;else a=0;else a=1}else{f=+h[a+8>>3];e=+h[c+8>>3];d=+h[b+8>>3];if(!(f<e&e<d))if(d<e)a=e<f;else a=0;else a=1}return a&1|0}function rV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+48|0;i=m+32|0;h=m+16|0;g=m;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];c[h+12>>2]=c[b+12>>2];c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[i+12>>2]=c[d+12>>2];j=pV(g,h,i)|0;if((j|0)==0?(c[g>>2]=c[a>>2],c[g+4>>2]=c[a+4>>2],c[g+8>>2]=c[a+8>>2],c[g+12>>2]=c[a+12>>2],c[h>>2]=c[b>>2],c[h+4>>2]=c[b+4>>2],c[h+8>>2]=c[b+8>>2],c[h+12>>2]=c[b+12>>2],c[i>>2]=c[d>>2],c[i+4>>2]=c[d+4>>2],c[i+8>>2]=c[d+8>>2],c[i+12>>2]=c[d+12>>2],(qV(g,h,i)|0)!=0):0)f=1;else k=3;do if((k|0)==3){c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];c[h+12>>2]=c[b+12>>2];c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];c[i+8>>2]=c[e+8>>2];c[i+12>>2]=c[e+12>>2];f=pV(g,h,i)|0;if((f|0)==0?(c[g>>2]=c[a>>2],c[g+4>>2]=c[a+4>>2],c[g+8>>2]=c[a+8>>2],c[g+12>>2]=c[a+12>>2],c[h>>2]=c[b>>2],c[h+4>>2]=c[b+4>>2],c[h+8>>2]=c[b+8>>2],c[h+12>>2]=c[b+12>>2],c[i>>2]=c[e>>2],c[i+4>>2]=c[e+4>>2],c[i+8>>2]=c[e+8>>2],c[i+12>>2]=c[e+12>>2],qV(g,h,i)|0):0){f=1;break};c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[i>>2]=c[a>>2];c[i+4>>2]=c[a+4>>2];c[i+8>>2]=c[a+8>>2];c[i+12>>2]=c[a+12>>2];a=pV(g,h,i)|0;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];k=(O(f,j)|0)<0;f=(O(pV(g,h,i)|0,a)|0)>>>31;f=k?f:0}while(0);l=m;return f|0}function sV(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+h[a>>3]-+h[b>>3];d=+h[a+8>>3]-+h[b+8>>3];return +(d*d+c*c)}function tV(a){a=a|0;c[a+24>>2]=uV(c[a+4>>2]|0)|0;vV(a);return}function uV(a){a=a|0;var b=0,d=0,e=0,f=0;e=a+2|0;f=C_(e<<2)|0;b=E_(O(a,a)|0,8)|0;d=0;while(1){if((d|0)>=(a|0))break;c[f+(d<<2)>>2]=b;b=b+(a<<3)|0;d=d+1|0}while(1){if((a|0)>=(e|0))break;c[f+(a<<2)>>2]=0;a=a+1|0}return f|0}function vV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;p=l;l=l+32|0;i=p+16|0;g=p;j=c[a+4>>2]|0;m=c[a+8>>2]|0;n=c[a+16>>2]|0;o=c[a+20>>2]|0;d=c[a+24>>2]|0;b=0;while(1){if((b|0)>=(j|0))break;q=c[o+(b<<2)>>2]|0;e=m+(b<<4)|0;f=m+(q<<4)|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];r=+wV(g,i);f=c[d+(b<<2)>>2]|0;h[f+(q<<3)>>3]=r;h[(c[d+(q<<2)>>2]|0)+(b<<3)>>3]=r;a=b+-1|0;a=(q|0)==(a|0)?b+-2|0:a;while(1){if((a|0)<=-1)break;if((xV(b,a,m,n,o)|0?xV(a,b,m,n,o)|0:0)?(k=m+(a<<4)|0,c[g>>2]=c[e>>2],c[g+4>>2]=c[e+4>>2],c[g+8>>2]=c[e+8>>2],c[g+12>>2]=c[e+12>>2],c[i>>2]=c[k>>2],c[i+4>>2]=c[k+4>>2],c[i+8>>2]=c[k+8>>2],c[i+12>>2]=c[k+12>>2],yV(g,i,j,j,j,m,n)|0):0){c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];c[i>>2]=c[k>>2];c[i+4>>2]=c[k+4>>2];c[i+8>>2]=c[k+8>>2];c[i+12>>2]=c[k+12>>2];r=+wV(g,i);h[f+(a<<3)>>3]=r;h[(c[d+(a<<2)>>2]|0)+(b<<3)>>3]=r}a=a+-1|0}b=b+1|0}l=p;return}function wV(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,g=0;e=l;l=l+32|0;f=e+16|0;g=e;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];d=+C(+(+sV(g,f)));l=e;return +d}function xV(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;h=g+48|0;i=g+32|0;j=g+16|0;k=g;n=d+(c[f+(a<<2)>>2]<<4)|0;m=d+(a<<4)|0;e=d+(c[e+(a<<2)>>2]<<4)|0;f=d+(b<<4)|0;c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];c[k+12>>2]=c[n+12>>2];c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];c[i+8>>2]=c[e+8>>2];c[i+12>>2]=c[e+12>>2];c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];f=zV(k,j,i,h)|0;l=g;return f|0}function yV(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+64|0;n=p+48|0;m=p+32|0;k=p+16|0;j=p;i=0;while(1){if((i|0)>=(d|0)){o=4;break}r=g+(i<<4)|0;q=g+(c[h+(i<<2)>>2]<<4)|0;c[j>>2]=c[a>>2];c[j+4>>2]=c[a+4>>2];c[j+8>>2]=c[a+8>>2];c[j+12>>2]=c[a+12>>2];c[k>>2]=c[b>>2];c[k+4>>2]=c[b+4>>2];c[k+8>>2]=c[b+8>>2];c[k+12>>2]=c[b+12>>2];c[m>>2]=c[r>>2];c[m+4>>2]=c[r+4>>2];c[m+8>>2]=c[r+8>>2];c[m+12>>2]=c[r+12>>2];c[n>>2]=c[q>>2];c[n+4>>2]=c[q+4>>2];c[n+8>>2]=c[q+8>>2];c[n+12>>2]=c[q+12>>2];if(!(rV(j,k,m,n)|0))i=i+1|0;else{e=0;break}}a:do if((o|0)==4)while(1){if((e|0)>=(f|0)){e=1;break a}q=g+(e<<4)|0;r=g+(c[h+(e<<2)>>2]<<4)|0;c[j>>2]=c[a>>2];c[j+4>>2]=c[a+4>>2];c[j+8>>2]=c[a+8>>2];c[j+12>>2]=c[a+12>>2];c[k>>2]=c[b>>2];c[k+4>>2]=c[b+4>>2];c[k+8>>2]=c[b+8>>2];c[k+12>>2]=c[b+12>>2];c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];c[m+12>>2]=c[q+12>>2];c[n>>2]=c[r>>2];c[n+4>>2]=c[r+4>>2];c[n+8>>2]=c[r+8>>2];c[n+12>>2]=c[r+12>>2];if(!(rV(j,k,m,n)|0)){e=e+1|0;o=4}else{e=0;break}}while(0);l=p;return e|0}function zV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;g=l;l=l+48|0;h=g+32|0;i=g+16|0;j=g;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];c[i>>2]=c[a>>2];c[i+4>>2]=c[a+4>>2];c[i+8>>2]=c[a+8>>2];c[i+12>>2]=c[a+12>>2];c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];c[h+12>>2]=c[b+12>>2];f=pV(j,i,h)|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[h+8>>2]=c[d+8>>2];c[h+12>>2]=c[d+12>>2];e=pV(j,i,h)|0;c[j>>2]=c[a>>2];c[j+4>>2]=c[a+4>>2];c[j+8>>2]=c[a+8>>2];c[j+12>>2]=c[a+12>>2];c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[h+8>>2]=c[d+8>>2];c[h+12>>2]=c[d+12>>2];d=(pV(j,i,h)|0)>0;l=g;return (d?e|f:e&f)>>>31^1|0}function AV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=l;l=l+80|0;j=s+64|0;i=s+48|0;g=s+32|0;k=s+16|0;o=s;p=c[a+4>>2]|0;q=c[a+8>>2]|0;r=c[a+16>>2]|0;m=c[a+20>>2]|0;n=C_((p<<3)+16|0)|0;if((b|0)==-2222){c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];b=BV(a,j)|0}if((b|0)>-1){a=c[a+12>>2]|0;f=c[a+(b+1<<2)>>2]|0;a=c[a+(b<<2)>>2]|0}else{f=p;a=p}b=0;while(1){if((b|0)>=(a|0)){b=a;break}u=q+(b<<4)|0;c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];c[o+8>>2]=c[u+8>>2];c[o+12>>2]=c[u+12>>2];u=q+(c[m+(b<<2)>>2]<<4)|0;t=q+(c[r+(b<<2)>>2]<<4)|0;c[k>>2]=c[u>>2];c[k+4>>2]=c[u+4>>2];c[k+8>>2]=c[u+8>>2];c[k+12>>2]=c[u+12>>2];c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[g+12>>2]=c[o+12>>2];c[i>>2]=c[t>>2];c[i+4>>2]=c[t+4>>2];c[i+8>>2]=c[t+8>>2];c[i+12>>2]=c[t+12>>2];c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];if((zV(k,g,i,j)|0)!=0?(c[i>>2]=c[d>>2],c[i+4>>2]=c[d+4>>2],c[i+8>>2]=c[d+8>>2],c[i+12>>2]=c[d+12>>2],c[j>>2]=c[o>>2],c[j+4>>2]=c[o+4>>2],c[j+8>>2]=c[o+8>>2],c[j+12>>2]=c[o+12>>2],(yV(i,j,a,f,p,q,r)|0)!=0):0){c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[i+12>>2]=c[d+12>>2];c[j>>2]=c[o>>2];c[j+4>>2]=c[o+4>>2];c[j+8>>2]=c[o+8>>2];c[j+12>>2]=c[o+12>>2];e=+wV(i,j)}else e=0.0;h[n+(b<<3)>>3]=e;b=b+1|0}while(1){if((b|0)>=(f|0)){b=f;break}h[n+(b<<3)>>3]=0.0;b=b+1|0}while(1){if((b|0)>=(p|0))break;t=q+(b<<4)|0;c[o>>2]=c[t>>2];c[o+4>>2]=c[t+4>>2];c[o+8>>2]=c[t+8>>2];c[o+12>>2]=c[t+12>>2];t=q+(c[m+(b<<2)>>2]<<4)|0;u=q+(c[r+(b<<2)>>2]<<4)|0;c[k>>2]=c[t>>2];c[k+4>>2]=c[t+4>>2];c[k+8>>2]=c[t+8>>2];c[k+12>>2]=c[t+12>>2];c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[g+12>>2]=c[o+12>>2];c[i>>2]=c[u>>2];c[i+4>>2]=c[u+4>>2];c[i+8>>2]=c[u+8>>2];c[i+12>>2]=c[u+12>>2];c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];if((zV(k,g,i,j)|0)!=0?(c[i>>2]=c[d>>2],c[i+4>>2]=c[d+4>>2],c[i+8>>2]=c[d+8>>2],c[i+12>>2]=c[d+12>>2],c[j>>2]=c[o>>2],c[j+4>>2]=c[o+4>>2],c[j+8>>2]=c[o+8>>2],c[j+12>>2]=c[o+12>>2],(yV(i,j,a,f,p,q,r)|0)!=0):0){c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[i+12>>2]=c[d+12>>2];c[j>>2]=c[o>>2];c[j+4>>2]=c[o+4>>2];c[j+8>>2]=c[o+8>>2];c[j+12>>2]=c[o+12>>2];e=+wV(i,j)}else e=0.0;h[n+(b<<3)>>3]=e;b=b+1|0}h[n+(p<<3)>>3]=0.0;h[n+(p+1<<3)>>3]=0.0;l=s;return n|0}function BV(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;f=m+8|0;e=m;h=m+24|0;i=a+8|0;j=a+12|0;k=h+4|0;d=0;while(1){if((d|0)>=(c[a>>2]|0)){d=-1111;break}o=c[j>>2]|0;n=c[o+(d<<2)>>2]|0;c[h>>2]=(c[i>>2]|0)+(n<<4);g=d+1|0;c[k>>2]=(c[o+(g<<2)>>2]|0)-n;c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];if(!(wU(e,f)|0))d=g;else break}l=m;return d|0}function CV(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+64|0;n=t+48|0;m=t+32|0;p=t+16|0;o=t;r=c[f+4>>2]|0;s=c[f+8>>2]|0;q=c[f+16>>2]|0;g=(e|0)<0;do if((b|0)<0)if(g){g=0;i=0;f=0;h=0}else{b=c[f+12>>2]|0;f=0;h=0;i=e;j=b;b=b+(e<<2)|0;k=9}else{if(g){k=c[f+12>>2]|0;f=0;h=0;i=b;j=k;b=k+(b<<2)|0;k=9;break}g=c[f+12>>2]|0;if((b|0)>(e|0)){f=c[g+(e+1<<2)>>2]|0;h=c[g+(e<<2)>>2]|0;i=b;j=g;b=g+(b<<2)|0;k=9;break}else{f=c[g+(b+1<<2)>>2]|0;h=c[g+(b<<2)>>2]|0;i=e;j=g;b=g+(e<<2)|0;k=9;break}}while(0);if((k|0)==9){g=c[j+(i+1<<2)>>2]|0;i=c[b>>2]|0}b=0;while(1){if((b|0)>=(h|0)){k=13;break}j=s+(b<<4)|0;e=s+(c[q+(b<<2)>>2]<<4)|0;c[o>>2]=c[a>>2];c[o+4>>2]=c[a+4>>2];c[o+8>>2]=c[a+8>>2];c[o+12>>2]=c[a+12>>2];c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];c[p+12>>2]=c[d+12>>2];c[m>>2]=c[j>>2];c[m+4>>2]=c[j+4>>2];c[m+8>>2]=c[j+8>>2];c[m+12>>2]=c[j+12>>2];c[n>>2]=c[e>>2];c[n+4>>2]=c[e+4>>2];c[n+8>>2]=c[e+8>>2];c[n+12>>2]=c[e+12>>2];if(!(rV(o,p,m,n)|0))b=b+1|0;else{g=0;break}}a:do if((k|0)==13){while(1){if((f|0)>=(i|0))break;e=s+(f<<4)|0;k=s+(c[q+(f<<2)>>2]<<4)|0;c[o>>2]=c[a>>2];c[o+4>>2]=c[a+4>>2];c[o+8>>2]=c[a+8>>2];c[o+12>>2]=c[a+12>>2];c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];c[p+12>>2]=c[d+12>>2];c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[n+8>>2]=c[k+8>>2];c[n+12>>2]=c[k+12>>2];if(!(rV(o,p,m,n)|0)){f=f+1|0;k=13}else{g=0;break a}}while(1){if((g|0)>=(r|0)){g=1;break a}e=s+(g<<4)|0;k=s+(c[q+(g<<2)>>2]<<4)|0;c[o>>2]=c[a>>2];c[o+4>>2]=c[a+4>>2];c[o+8>>2]=c[a+8>>2];c[o+12>>2]=c[a+12>>2];c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];c[p+12>>2]=c[d+12>>2];c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[n+8>>2]=c[k+8>>2];c[n+12>>2]=c[k+12>>2];if(!(rV(o,p,m,n)|0))g=g+1|0;else{g=0;break}}}while(0);l=t;return g|0}function DV(a){a=a|0;return EV(a,0,0)|0}function EV(a,b,c){a=a|0;b=b|0;c=c|0;return FV(a,b,c,0)|0}function FV(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!d){g=C_(496)|0;if(!g)g=0;else{c[g+12>>2]=35;c[g+16>>2]=105;c[g+20>>2]=103;d=35;h=6}}else{g=kb[c[d>>2]&63](496)|0;if(!g)g=0;else{h=c[d>>2]|0;c[g+12>>2]=h;c[g+16>>2]=c[d+4>>2];c[g+20>>2]=c[d+8>>2];d=h;h=6}}do if((h|0)==6){c[g+8>>2]=0;c[g+32>>2]=0;c[g+376>>2]=16;j=g+12|0;i=kb[d&63](256)|0;d=g+388|0;c[d>>2]=i;if(!i){tb[c[g+20>>2]&127](g);g=0;break}h=kb[c[j>>2]&63](1024)|0;i=g+44|0;c[i>>2]=h;if(!h){e=g+20|0;tb[c[e>>2]&127](c[d>>2]|0);tb[c[e>>2]&127](g);g=0;break}c[g+48>>2]=h+1024;if(!f){f=GV(j)|0;c[g+352>>2]=f;if(!f){e=g+20|0;tb[c[e>>2]&127](c[i>>2]|0);tb[c[e>>2]&127](c[d>>2]|0);tb[c[e>>2]&127](g);g=0;break}}else c[g+352>>2]=f;c[g+372>>2]=0;c[g+364>>2]=0;c[g+300>>2]=0;c[g+464>>2]=0;c[g+460>>2]=0;c[g+124>>2]=0;c[g+244>>2]=0;d=g+468|0;a[d>>0]=33;h=g+232|0;a[h>>0]=0;a[g+233>>0]=0;c[g+392>>2]=0;c[g+396>>2]=0;a[g+400>>0]=0;f=g+228|0;c[f>>2]=0;HV(g+412|0,j);HV(g+436|0,j);IV(g,b);if(b|0?(c[f>>2]|0)==0:0){JV(g);g=0;break}if(!e){c[g+224>>2]=TX()|0;break}else{a[h>>0]=1;c[g+224>>2]=xZ()|0;a[d>>0]=a[e>>0]|0;break}}while(0);return g|0}function GV(b){b=b|0;var d=0;d=kb[c[b>>2]&63](188)|0;if(d|0){HV(d+80|0,b);HV(d+104|0,b);QW(d,b);QW(d+20|0,b);QW(d+40|0,b);QW(d+60|0,b);a[d+131>>0]=0;QW(d+132|0,b);c[d+152>>2]=0;c[d+156>>2]=0;a[d+160>>0]=0;b=d+164|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;a[d+128>>0]=1;a[d+129>>0]=0;a[d+130>>0]=0}return d|0}function HV(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=b;return}function IV(d,e){d=d|0;e=e|0;var f=0,g=0,h=0;c[d+276>>2]=56;EZ(d+252|0);if(e|0)c[d+228>>2]=RV(e,d+12|0)|0;c[d+356>>2]=0;HY(d+148|0,d+144|0,0)|0;c[d>>2]=0;c[d+4>>2]=0;e=d+116|0;g=d+52|0;h=g+64|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=d;c[d+120>>2]=0;e=d+128|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;e=c[d+8>>2]|0;c[d+24>>2]=e;c[d+28>>2]=e;c[d+36>>2]=0;c[d+40>>2]=0;e=d+312|0;g=d+404|0;c[g>>2]=0;c[g+4>>2]=0;g=d+280|0;f=d+304|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;g=e;h=g+36|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));b[e+36>>1]=0;a[f>>0]=1;c[d+308>>2]=0;c[d+360>>2]=0;c[d+368>>2]=0;c[d+380>>2]=0;c[d+236>>2]=0;c[d+248>>2]=0;c[d+240>>2]=0;c[d+472>>2]=0;c[d+476>>2]=0;a[d+484>>0]=0;a[d+485>>0]=0;c[d+488>>2]=0;c[d+492>>2]=0;return}function JV(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;if(b|0){e=b+364|0;g=b+20|0;d=c[b+360>>2]|0;while(1){if(!d){d=c[e>>2]|0;if(!d)break;c[e>>2]=0}h=c[d>>2]|0;tb[c[g>>2]&127](c[d+36>>2]|0);KV(c[d+44>>2]|0,b);tb[c[g>>2]&127](d);d=h}e=b+300|0;d=c[b+296>>2]|0;while(1){if(!d){d=c[e>>2]|0;if(!d)break;c[e>>2]=0}h=c[d+8>>2]|0;tb[c[g>>2]&127](d);d=h}KV(c[b+372>>2]|0,b);KV(c[b+368>>2]|0,b);LV(b+412|0);LV(b+436|0);d=b+12|0;tb[c[g>>2]&127](c[b+228>>2]|0);if((a[b+484>>0]|0)==0?(f=c[b+352>>2]|0,f|0):0)MV(f,(c[b+472>>2]|0)==0&1,d);tb[c[g>>2]&127](c[b+388>>2]|0);tb[c[g>>2]&127](c[b+460>>2]|0);tb[c[g>>2]&127](c[b+8>>2]|0);tb[c[g>>2]&127](c[b+44>>2]|0);tb[c[g>>2]&127](c[b+392>>2]|0);tb[c[g>>2]&127](c[b+236>>2]|0);d=c[b+248>>2]|0;if(d|0)tb[d&127](c[b+240>>2]|0);tb[c[g>>2]&127](b)}return}function KV(a,b){a=a|0;b=b|0;var d=0;b=b+20|0;while(1){if(!a)break;d=c[a+4>>2]|0;tb[c[b>>2]&127](c[a+16>>2]|0);tb[c[b>>2]&127](a);a=d}return}function LV(a){a=a|0;var b=0,d=0,e=0;d=a+20|0;b=c[a>>2]|0;while(1){if(!b)break;e=c[b>>2]|0;tb[c[(c[d>>2]|0)+8>>2]&127](b);b=e}b=c[a+4>>2]|0;while(1){if(!b)break;e=c[b>>2]|0;tb[c[(c[d>>2]|0)+8>>2]&127](b);b=e}return}function MV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;f=h;g=a+20|0;NV(f,g);d=d+8|0;while(1){e=OV(f)|0;if(!e)break;if(!(c[e+16>>2]|0))continue;tb[c[d>>2]&127](c[e+20>>2]|0)}PV(a);PV(a+132|0);PV(g);PV(a+40|0);PV(a+60|0);LV(a+80|0);LV(a+104|0);if(b<<24>>24){tb[c[d>>2]&127](c[a+184>>2]|0);tb[c[d>>2]&127](c[a+164>>2]|0)}tb[c[d>>2]&127](a);l=h;return}function NV(a,b){a=a|0;b=b|0;var d=0;d=c[b>>2]|0;c[a>>2]=d;c[a+4>>2]=d+(c[b+8>>2]<<2);return}function OV(a){a=a|0;var b=0,d=0,e=0;d=c[a+4>>2]|0;e=c[a>>2]|0;do{if((e|0)==(d|0)){b=0;break}b=e;e=e+4|0;c[a>>2]=e;b=c[b>>2]|0}while(!(b|0));return b|0}function PV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=a+8|0;e=a+16|0;b=0;while(1){f=c[(c[e>>2]|0)+8>>2]|0;g=c[a>>2]|0;if(b>>>0>=(c[d>>2]|0)>>>0)break;tb[f&127](c[g+(b<<2)>>2]|0);b=b+1|0}tb[f&127](g);return}function QV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=SV(a)|0;if(!f){c[a+276>>2]=57;f=TV(a,b,d,e)|0}return f|0}function RV(b,d){b=b|0;d=d|0;var e=0,f=0;e=0;do{f=e;e=e+1|0}while((a[b+f>>0]|0)!=0);d=kb[c[d>>2]&63](e)|0;if(!d)d=0;else F3(d|0,b|0,e|0)|0;return d|0}function SV(b){b=b|0;var d=0;d=b+228|0;if(!(nb[(a[b+232>>0]<<24>>24?35:34)&63](b+148|0,b+144|0,c[d>>2]|0)|0))b=PW(b,c[d>>2]|0)|0;else b=0;return b|0}function TV(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+16|0;h=g;c[h>>2]=d;j=b+144|0;i=c[j>>2]|0;i=ob[c[i>>2]&127](i,d,e,h)|0;f=UV(b,c[j>>2]|0,d,e,i,c[h>>2]|0,f,(a[b+480>>0]|0)==0&1)|0;l=g;return f|0}function UV(b,e,f,g,h,i,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0;Ga=l;l=l+16|0;Da=Ga;c[Da>>2]=i;r=c[b+352>>2]|0;s=b+144|0;if((c[s>>2]|0)==(e|0)){p=b+284|0;q=b+288|0;na=b+296|0}else{na=b+296|0;q=c[na>>2]|0;p=q;q=q+4|0}t=k<<24>>24!=0;pa=b+252|0;u=b+80|0;v=b+476|0;w=b+84|0;x=b+320|0;y=b+412|0;z=b+316|0;A=b+424|0;B=b+428|0;C=b+324|0;ra=b+4|0;D=b+485|0;E=r+132|0;F=b+312|0;ta=r+129|0;G=r+128|0;H=r+80|0;I=r+92|0;J=r+96|0;K=b+136|0;L=b+88|0;M=b+488|0;va=b+112|0;wa=r+131|0;xa=b+116|0;ya=r+130|0;za=b+108|0;Aa=b+356|0;N=b+340|0;O=b+132|0;P=b+344|0;Q=b+348|0;R=b+328|0;S=b+349|0;T=b+420|0;U=r+120|0;V=r+116|0;W=b+92|0;X=b+472|0;Y=b+336|0;Z=b+332|0;_=b+96|0;$=b+256|0;aa=b+464|0;ba=b+460|0;ca=r+160|0;da=r+184|0;ea=r+180|0;fa=r+164|0;ga=b+128|0;ha=b+12|0;ia=b+16|0;ja=b+268|0;ka=b+120|0;la=r+176|0;ma=r+168|0;o=e;n=f;e=h;a:while(1){c[p>>2]=n;f=c[Da>>2]|0;c[q>>2]=f;i=f;b:do if((e|0)<1){if(t&(e|0)!=0){m=7;break a}switch(e|0){case -1:{i=5;m=280;break a}case 0:{m=9;break a}case -2:{i=6;break a}case -4:{m=10;break a}case -15:{e=15;break b}default:{}}c[Da>>2]=g;e=0-e|0;i=g}while(0);h=pb[c[pa>>2]&127](pa,e,n,i,o)|0;c:do switch(h|0){case 2:{m=58;break a}case -1:{m=184;break a}case 1:{i=VV(b,0,n,c[Da>>2]|0)|0;if(i|0){m=280;break a}i=c[s>>2]|0;break}case 4:{if(!(c[w>>2]|0))i=1;else{m=WV(y,o,n,c[Da>>2]|0)|0;c[z>>2]=m;if(!m){i=1;m=280;break a}c[B>>2]=c[A>>2];c[C>>2]=0;i=0}c[x>>2]=0;m=274;break}case 7:{i=c[w>>2]|0;if(!i)m=275;else{yb[i&15](c[ra>>2]|0,c[z>>2]|0,c[x>>2]|0,c[C>>2]|0,1);c[z>>2]=0;XV(y);i=o}break}case 57:{i=VV(b,1,n,c[Da>>2]|0)|0;if(i|0){m=280;break a}i=c[s>>2]|0;break}case 6:{a[D>>0]=0;m=YV(b,E,75291,36)|0;c[F>>2]=m;if(!m){i=1;m=280;break a}a[ta>>0]=1;if(!(c[w>>2]|0))m=33;else{if(!(ob[c[o+52>>2]&127](o,n,c[Da>>2]|0,p)|0)){i=32;m=280;break a}i=c[o+64>>2]|0;i=WV(y,o,n+i|0,(c[Da>>2]|0)+(0-i)|0)|0;if(!i){i=1;m=280;break a}ZV(i);c[B>>2]=c[A>>2];c[C>>2]=i;i=0;m=34}break}case 14:{m=33;break}case 8:{i=c[z>>2]|0;if(!i)i=1;else{yb[c[w>>2]&15](c[ra>>2]|0,i,c[x>>2]|0,c[C>>2]|0,0);XV(y);i=0}if(!((c[x>>2]|0)==0?!(a[D>>0]|0):0)){f=a[ta>>0]|0;a[ta>>0]=1;do if(c[M>>2]|0?c[va>>2]|0:0){h=YV(b,E,75291,36)|0;if(!h){i=1;m=280;break a}if(!(a[D>>0]|0))e=h+20|0;else{e=h+20|0;c[e>>2]=c[Aa>>2]}a[wa>>0]=0;if(!(pb[c[va>>2]&127](c[xa>>2]|0,0,c[e>>2]|0,c[h+16>>2]|0,c[h+24>>2]|0)|0)){i=21;m=280;break a}if(!(a[wa>>0]|0)){if(c[x>>2]|0)break;a[ta>>0]=f;break}if(((a[ya>>0]|0)==0?(oa=c[za>>2]|0,oa|0):0)?(kb[oa&63](c[ra>>2]|0)|0)==0:0){i=22;m=280;break a}}while(0);a[D>>0]=0}e=c[L>>2]|0;if(!e)m=274;else{tb[e&127](c[ra>>2]|0);i=o}break}case 34:{m=$V(b,o,n,c[Da>>2]|0)|0;c[N>>2]=m;if(!m){i=1;m=280;break a}else m=80;break}case 22:{m=aW(b,o,n,c[Da>>2]|0)|0;c[P>>2]=m;if(!m){i=1;m=280;break a}a[Q>>0]=0;c[R>>2]=0;a[S>>0]=0;m=80;break}case 23:{a[Q>>0]=1;c[R>>2]=139106;m=80;break}case 24:{a[S>>0]=1;c[R>>2]=139112;m=80;break}case 25:{c[R>>2]=139115;m=80;break}case 26:{c[R>>2]=139121;m=80;break}case 27:{c[R>>2]=139128;m=80;break}case 28:{c[R>>2]=139135;m=80;break}case 29:{c[R>>2]=139144;m=80;break}case 30:{c[R>>2]=139152;m=80;break}case 32:case 31:{if((a[G>>0]|0)!=0?(c[O>>2]|0)!=0:0){if(!(bW(y,(c[R>>2]|0)==0?((h|0)==32?139161:139171):139173)|0)){i=1;m=280;break a}if(!(cW(y,o,n,c[Da>>2]|0)|0)){i=1;m=280;break a}c[R>>2]=c[B>>2];i=o}else m=275;break}case 36:case 35:{if(a[G>>0]|0){if(!(dW(c[N>>2]|0,c[P>>2]|0,a[Q>>0]|0,a[S>>0]|0,0,b)|0)){i=1;m=280;break a}if((c[O>>2]|0)!=0?(qa=c[R>>2]|0,(qa|0)!=0):0){switch(a[qa>>0]|0){case 40:{m=93;break}case 78:{if((a[qa+1>>0]|0)==79)m=93;break}default:{}}if((m|0)==93){m=0;i=c[A>>2]|0;if((i|0)==(c[T>>2]|0)){if(!((eW(y)|0)<<24>>24)){i=1;m=280;break a}i=c[A>>2]|0}c[A>>2]=i+1;a[i>>0]=41;i=c[A>>2]|0;if((i|0)==(c[T>>2]|0)){if(!((eW(y)|0)<<24>>24)){i=1;m=280;break a}i=c[A>>2]|0}c[A>>2]=i+1;a[i>>0]=0;c[R>>2]=c[B>>2];c[B>>2]=c[A>>2]}c[q>>2]=n;zb[c[O>>2]&15](c[ra>>2]|0,c[c[N>>2]>>2]|0,c[c[P>>2]>>2]|0,c[R>>2]|0,0,(h|0)==36&1);XV(y);i=o}else m=275}else m=275;break}case 38:case 37:{if(a[G>>0]|0){i=c[o+64>>2]|0;i=fW(b,o,a[Q>>0]|0,n+i|0,(c[Da>>2]|0)+(0-i)|0,H)|0;if(i|0){m=280;break a}e=c[J>>2]|0;c[J>>2]=c[I>>2];if(!(dW(c[N>>2]|0,c[P>>2]|0,a[Q>>0]|0,0,e,b)|0)){i=1;m=280;break a}if((c[O>>2]|0)!=0?(sa=c[R>>2]|0,(sa|0)!=0):0){switch(a[sa>>0]|0){case 40:{m=108;break}case 78:{if((a[sa+1>>0]|0)==79)m=108;break}default:{}}if((m|0)==108){m=0;i=c[A>>2]|0;if((i|0)==(c[T>>2]|0)){if(!((eW(y)|0)<<24>>24)){i=1;m=280;break a}i=c[A>>2]|0}c[A>>2]=i+1;a[i>>0]=41;i=c[A>>2]|0;if((i|0)==(c[T>>2]|0)){if(!((eW(y)|0)<<24>>24)){i=1;m=280;break a}i=c[A>>2]|0}c[A>>2]=i+1;a[i>>0]=0;c[R>>2]=c[B>>2];c[B>>2]=c[A>>2]}c[q>>2]=n;zb[c[O>>2]&15](c[ra>>2]|0,c[c[N>>2]>>2]|0,c[c[P>>2]>>2]|0,c[R>>2]|0,e,(h|0)==38&1);XV(y);i=o}else m=275}else m=275;break}case 12:{if(a[G>>0]|0){i=c[o+64>>2]|0;i=gW(b,o,n+i|0,(c[Da>>2]|0)+(0-i)|0)|0;e=c[F>>2]|0;f=c[U>>2]|0;if(e){c[e+4>>2]=f;c[(c[F>>2]|0)+8>>2]=(c[V>>2]|0)-(c[U>>2]|0);c[U>>2]=c[V>>2];if(!(c[K>>2]|0))e=1;else{c[q>>2]=n;e=c[F>>2]|0;Ab[c[K>>2]&0](c[ra>>2]|0,c[e>>2]|0,d[e+33>>0]|0,c[e+4>>2]|0,c[e+8>>2]|0,c[Aa>>2]|0,0,0,0);e=0}}else{c[V>>2]=f;e=1}if(!i){i=e;m=274}else{m=280;break a}}else m=275;break}case 5:{a[D>>0]=0;a[ta>>0]=1;if(!(c[w>>2]|0)){c[x>>2]=75291;i=1}else{m=c[o+64>>2]|0;m=WV(y,o,n+m|0,(c[Da>>2]|0)+(0-m)|0)|0;c[x>>2]=m;if(!m){i=1;m=280;break a}c[B>>2]=c[A>>2];i=0}if((((a[ya>>0]|0)==0?(c[M>>2]|0)==0:0)?(ua=c[za>>2]|0,ua|0):0)?(kb[ua&63](c[ra>>2]|0)|0)==0:0){i=22;m=280;break a}if(!(c[F>>2]|0)){e=YV(b,E,75291,36)|0;c[F>>2]=e;if(!e){i=1;m=280;break a}c[e+24>>2]=0;m=133}else m=133;break}case 13:{i=1;m=133;break}case 15:{if(((a[G>>0]|0)!=0?(c[F>>2]|0)!=0:0)?(c[K>>2]|0)!=0:0){c[q>>2]=n;i=c[F>>2]|0;Ab[c[K>>2]&0](c[ra>>2]|0,c[i>>2]|0,d[i+33>>0]|0,0,0,c[i+20>>2]|0,c[i+16>>2]|0,c[i+24>>2]|0,0);i=o}else m=275;break}case 16:{if((a[G>>0]|0)!=0?(c[F>>2]|0)!=0:0){h=WV(H,o,n,c[Da>>2]|0)|0;c[(c[F>>2]|0)+28>>2]=h;if(!(c[(c[F>>2]|0)+28>>2]|0)){i=1;m=280;break a}c[J>>2]=c[I>>2];if(c[W>>2]|0){c[q>>2]=n;i=c[F>>2]|0;zb[c[W>>2]&15](c[ra>>2]|0,c[i>>2]|0,c[i+20>>2]|0,c[i+16>>2]|0,c[i+24>>2]|0,c[i+28>>2]|0);i=o;break c}if(c[K>>2]|0){c[q>>2]=n;i=c[F>>2]|0;Ab[c[K>>2]&0](c[ra>>2]|0,c[i>>2]|0,0,0,0,c[i+20>>2]|0,c[i+16>>2]|0,c[i+24>>2]|0,c[i+28>>2]|0);i=o}else m=275}else m=275;break}case 9:{if(nb[c[o+44>>2]&63](o,n,c[Da>>2]|0)|0){c[F>>2]=0;m=275;break c}if(!(a[G>>0]|0)){c[I>>2]=c[J>>2];c[F>>2]=0;m=275;break c}i=WV(H,o,n,c[Da>>2]|0)|0;if(!i){i=1;m=280;break a}e=YV(b,r,i,36)|0;c[F>>2]=e;if(!e){i=1;m=280;break a}if((c[e>>2]|0)!=(i|0)){c[I>>2]=c[J>>2];c[F>>2]=0;m=275;break c}c[J>>2]=c[I>>2];c[(c[F>>2]|0)+24>>2]=0;a[(c[F>>2]|0)+33>>0]=0;if(!(c[X>>2]|0))i=(c[na>>2]|0)!=0;else i=1;a[(c[F>>2]|0)+34>>0]=(i^1)&1;if(!(c[K>>2]|0))m=275;else i=o;break}case 10:{if(!(a[G>>0]|0)){c[I>>2]=c[J>>2];c[F>>2]=0;m=275;break c}i=WV(H,o,n,c[Da>>2]|0)|0;if(!i){i=1;m=280;break a}e=YV(b,E,i,36)|0;c[F>>2]=e;if(!e){i=1;m=280;break a}if((c[e>>2]|0)!=(i|0)){c[I>>2]=c[J>>2];c[F>>2]=0;m=275;break c}c[J>>2]=c[I>>2];c[(c[F>>2]|0)+24>>2]=0;a[(c[F>>2]|0)+33>>0]=1;if(!(c[X>>2]|0))i=(c[na>>2]|0)!=0;else i=1;a[(c[F>>2]|0)+34>>0]=(i^1)&1;if(!(c[K>>2]|0))m=275;else i=o;break}case 18:{c[Y>>2]=0;c[Z>>2]=0;if(!(c[_>>2]|0))m=275;else{n=WV(y,o,n,c[Da>>2]|0)|0;c[Z>>2]=n;if(!n){i=1;m=280;break a}c[B>>2]=c[A>>2];i=o}break}case 21:{if(!(ob[c[o+52>>2]&127](o,n,c[Da>>2]|0,p)|0)){i=32;m=280;break a}if(!(c[Z>>2]|0))m=275;else{i=c[o+64>>2]|0;i=WV(y,o,n+i|0,(c[Da>>2]|0)+(0-i)|0)|0;if(!i){i=1;m=280;break a}ZV(i);c[Y>>2]=i;c[B>>2]=c[A>>2];i=o}break}case 19:{if((c[Z>>2]|0)!=0?(c[_>>2]|0)!=0:0){i=c[o+64>>2]|0;i=WV(y,o,n+i|0,(c[Da>>2]|0)+(0-i)|0)|0;if(!i){i=1;m=280;break a}c[q>>2]=n;yb[c[_>>2]&15](c[ra>>2]|0,c[Z>>2]|0,c[Aa>>2]|0,i,c[Y>>2]|0);i=0}else i=1;XV(y);m=274;break}case 20:{if((c[Y>>2]|0)!=0?(c[_>>2]|0)!=0:0){c[q>>2]=n;yb[c[_>>2]&15](c[ra>>2]|0,c[Z>>2]|0,c[Aa>>2]|0,0,c[Y>>2]|0);i=0}else i=1;XV(y);m=274;break}case 58:{if(c[u>>2]|0)hW(b,o,n,c[Da>>2]|0);i=iW(b,o,Da,g,j,k)|0;if(i|0){m=280;break a}if(!(c[Da>>2]|0)){m=189;break a}else i=o;break}case 44:{i=c[aa>>2]|0;do if((c[$>>2]|0)>>>0>=i>>>0){if(!i){h=c[ha>>2]|0;c[aa>>2]=32;h=kb[h&63](32)|0;c[ba>>2]=h;if(!h){m=198;break a}else break}f=c[ia>>2]|0;h=c[ba>>2]|0;i=i<<1;c[aa>>2]=i;i=lb[f&127](h,i)|0;if(!i){m=193;break a}c[ba>>2]=i;i=c[da>>2]|0;if(i|0){i=lb[c[ia>>2]&127](i,c[aa>>2]<<2)|0;if(!i){i=1;m=280;break a}c[da>>2]=i}}while(0);a[(c[ba>>2]|0)+(c[$>>2]|0)>>0]=0;if(a[ca>>0]|0){i=kW(b)|0;if((i|0)<0){i=1;m=280;break a}c[(c[da>>2]|0)+(c[ea>>2]<<2)>>2]=i;c[ea>>2]=(c[ea>>2]|0)+1;c[(c[fa>>2]|0)+(i*28|0)>>2]=6;if(c[ga>>2]|0)i=o;else m=275}else m=275;break}case 50:{i=(c[ba>>2]|0)+(c[$>>2]|0)|0;if((a[i>>0]|0)==124){i=2;m=280;break a}a[i>>0]=44;if((a[ca>>0]|0)!=0?(c[ga>>2]|0)!=0:0)i=o;else m=275;break}case 49:{f=c[ba>>2]|0;e=c[$>>2]|0;i=a[f+e>>0]|0;if(i<<24>>24==44){i=2;m=280;break a}if(i<<24>>24==0&(a[ca>>0]|0)!=0?(Ba=(c[fa>>2]|0)+((c[(c[da>>2]|0)+((c[ea>>2]|0)+-1<<2)>>2]|0)*28|0)|0,(c[Ba>>2]|0)!=3):0){c[Ba>>2]=5;i=(c[ga>>2]|0)==0&1;f=c[ba>>2]|0;e=c[$>>2]|0}else i=1;a[f+e>>0]=124;m=274;break}case 59:case 60:{a[ta>>0]=1;if(c[M>>2]|0){e=c[o+64>>2]|0;e=WV(H,o,n+e|0,(c[Da>>2]|0)+(0-e)|0)|0;if(!e){i=1;m=280;break a}f=YV(b,E,e,0)|0;c[I>>2]=c[J>>2];do if(c[ja>>2]|0){if(!(a[ya>>0]|0)){if(a[ta>>0]|0){m=219;break}}else if(c[na>>2]|0){m=219;break}if(!f){i=11;m=280;break a}if(!(a[f+34>>0]|0)){i=24;m=280;break a}}else m=219;while(0);if((m|0)==219?(m=0,(f|0)==0):0){a[G>>0]=a[ya>>0]|0;if((h|0)!=60){m=275;break c}i=c[ka>>2]|0;if(!i){m=275;break c}vb[i&127](c[ra>>2]|0,e,1);i=o;break c}i=f+32|0;if(a[i>>0]|0){i=12;m=280;break a}if(c[f+4>>2]|0){i=lW(b,f,(h|0)==60&1)|0;e=(i|0)==0;if(e){i=(e^1)&1;m=274;break c}else{m=280;break a}}if(!(c[va>>2]|0)){a[G>>0]=a[ya>>0]|0;m=275;break c}a[wa>>0]=0;a[i>>0]=1;h=(pb[c[va>>2]&127](c[xa>>2]|0,0,c[f+20>>2]|0,c[f+16>>2]|0,c[f+24>>2]|0)|0)==0;a[i>>0]=0;if(h){i=21;m=280;break a}e=a[ya>>0]|0;if(!(a[wa>>0]|0)){a[G>>0]=e;i=o;break c}else i=0}else{e=a[ya>>0]|0;a[G>>0]=e;i=1}if((e<<24>>24==0?(Ca=c[za>>2]|0,(Ca|0)!=0):0)?(kb[Ca&63](c[ra>>2]|0)|0)==0:0){i=22;m=280;break a}else m=274;break}case 40:{if(!(c[ga>>2]|0))m=275;else{n=$V(b,o,n,c[Da>>2]|0)|0;c[N>>2]=n;if(!n){i=1;m=280;break a}c[ea>>2]=0;c[la>>2]=0;a[ca>>0]=1;i=o}break}case 42:case 41:{if(!(a[ca>>0]|0))m=275;else{if(!(c[ga>>2]|0))i=1;else{i=kb[c[ha>>2]&63](20)|0;if(!i){i=1;m=280;break a}m=i+4|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;c[i>>2]=(h|0)==41?2:1;c[q>>2]=n;vb[c[ga>>2]&127](c[ra>>2]|0,c[c[N>>2]>>2]|0,i);i=0}a[ca>>0]=0;m=274}break}case 43:{if((a[ca>>0]|0)!=0?(c[(c[fa>>2]|0)+((c[(c[da>>2]|0)+((c[ea>>2]|0)+-1<<2)>>2]|0)*28|0)>>2]=3,(c[ga>>2]|0)!=0):0)i=o;else m=275;break}case 51:{e=0;m=247;break}case 53:{e=1;m=247;break}case 52:{e=2;m=247;break}case 54:{e=3;m=247;break}case 45:{f=0;m=258;break}case 47:{f=1;m=258;break}case 46:{f=2;m=258;break}case 48:{f=3;m=258;break}case 55:{if(!(nW(b,o,n,c[Da>>2]|0)|0)){i=1;m=280;break a}else i=o;break}case 56:{if(!(oW(b,o,n,c[Da>>2]|0)|0)){i=1;m=280;break a}else i=o;break}case 0:{if((e|0)==14)i=o;else m=275;break}case 3:{if(!(c[w>>2]|0))m=275;else i=o;break}case 11:{if((a[G>>0]|0)!=0?(c[K>>2]|0)!=0:0)i=o;else m=275;break}case 17:{if(!(c[_>>2]|0))m=275;else i=o;break}case 33:{if((a[G>>0]|0)!=0?(c[O>>2]|0)!=0:0)i=o;else m=275;break}case 39:{if(!(c[ga>>2]|0))m=275;else i=o;break}default:m=275}while(0);if((m|0)==33)if(!(ob[c[o+52>>2]&127](o,n,c[Da>>2]|0,p)|0)){i=32;m=280;break}else{i=1;m=34}else if((m|0)==80){m=0;if((a[G>>0]|0)!=0?(c[O>>2]|0)!=0:0)i=o;else m=275}else if((m|0)==133){m=0;if((a[G>>0]|0)!=0?(c[F>>2]|0)!=0:0){e=c[o+64>>2]|0;e=WV(H,o,n+e|0,(c[Da>>2]|0)+(0-e)|0)|0;c[(c[F>>2]|0)+16>>2]=e;e=c[F>>2]|0;if(!(c[e+16>>2]|0)){i=1;m=280;break}c[e+20>>2]=c[Aa>>2];c[J>>2]=c[I>>2];if((h|0)==13&(c[K>>2]|0)!=0)i=o;else m=274}else m=274}else if((m|0)==247){m=0;if(a[ca>>0]|0){i=c[Da>>2]|0;if(e)i=i+(0-(c[o+64>>2]|0))|0;f=kW(b)|0;if((f|0)<0){i=1;m=280;break}c[(c[fa>>2]|0)+(f*28|0)>>2]=4;c[(c[fa>>2]|0)+(f*28|0)+4>>2]=e;i=$V(b,o,n,i)|0;if(!i){i=1;m=280;break}e=c[i>>2]|0;c[(c[fa>>2]|0)+(f*28|0)+8>>2]=e;i=0;do{h=i;i=i+1|0}while((a[e+h>>0]|0)!=0);c[ma>>2]=(c[ma>>2]|0)+i;if(c[ga>>2]|0)i=o;else m=275}else m=275}else if((m|0)==258)if(a[ca>>0]|0){e=(c[ga>>2]|0)==0;i=e&1;m=(c[ea>>2]|0)+-1|0;c[ea>>2]=m;c[(c[fa>>2]|0)+((c[(c[da>>2]|0)+(m<<2)>>2]|0)*28|0)+4>>2]=f;if(!(c[ea>>2]|0)){if(!e){e=mW(b)|0;if(!e){i=1;m=280;break}c[q>>2]=n;vb[c[ga>>2]&127](c[ra>>2]|0,c[c[N>>2]>>2]|0,e)}a[ca>>0]=0;c[ma>>2]=0;m=274}else m=274}else m=275;if((m|0)==34){m=0;if((a[G>>0]|0)!=0?(c[F>>2]|0)!=0:0){e=c[o+64>>2]|0;e=WV(H,o,n+e|0,(c[Da>>2]|0)+(0-e)|0)|0;if(!e){i=1;m=280;break}ZV(e);c[(c[F>>2]|0)+24>>2]=e;c[J>>2]=c[I>>2];if((h|0)==14&(c[K>>2]|0)!=0)i=o;else m=274}else m=274}if((m|0)==274){m=0;if(!(i<<24>>24))i=o;else m=275}if((m|0)==275){m=0;if(!(c[u>>2]|0))i=o;else{hW(b,o,n,c[Da>>2]|0);i=o}}switch(c[v>>2]|0){case 3:{m=278;break a}case 2:{i=35;m=280;break a}default:{}}e=c[Da>>2]|0;o=i;n=e;e=ob[c[i>>2]&127](i,e,g,Da)|0}d:switch(m|0){case 7:{c[j>>2]=n;i=0;break}case 9:{c[p>>2]=f;i=4;break}case 10:{i=(o|0)==(c[s>>2]|0);if(!i?(a[(c[na>>2]|0)+20>>0]|0)==0:0){c[j>>2]=n;i=0;break}if((a[b+484>>0]|0)!=0|i^1)if((pb[c[pa>>2]&127](pa,-4,g,g,o)|0)==-1)i=29;else{c[j>>2]=n;i=0}else i=3;break}case 58:{do if((a[D>>0]|0?(Ea=a[ta>>0]|0,a[ta>>0]=1,c[M>>2]|0):0)?c[va>>2]|0:0){i=YV(b,E,75291,36)|0;if(!i){i=1;break d}Da=i+20|0;c[Da>>2]=c[Aa>>2];a[wa>>0]=0;if(!(pb[c[va>>2]&127](c[xa>>2]|0,0,c[Da>>2]|0,c[i+16>>2]|0,c[i+24>>2]|0)|0)){i=21;break d}if(!(a[wa>>0]|0)){a[ta>>0]=Ea;break}if(((a[ya>>0]|0)==0?(Fa=c[za>>2]|0,Fa|0):0)?(kb[Fa&63](c[ra>>2]|0)|0)==0:0){i=22;break d}}while(0);c[b+276>>2]=58;i=_V(b,n,g,j)|0;break}case 184:{i=(e|0)==28?10:(e|0)==12?17:2;break}case 189:{c[b+276>>2]=59;i=0;break}case 193:{c[aa>>2]=(c[aa>>2]|0)>>>1;i=1;break}case 198:{c[aa>>2]=0;i=1;break}case 278:{c[j>>2]=c[Da>>2];i=0;break}case 280:break}l=Ga;return i|0}function VV(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+32|0;p=q+16|0;m=q+12|0;i=q+8|0;j=q+4|0;k=q;c[p>>2]=0;c[m>>2]=0;c[i>>2]=0;c[k>>2]=-1;n=b+144|0;o=b+284|0;g=(d|0)!=0;a:do if(rb[(a[b+232>>0]<<24>>24?2:1)&3](d,c[n>>2]|0,e,f,o,i,j,p,m,k)|0){if((c[k>>2]|0)==1&(g^1)?(a[(c[b+352>>2]|0)+130>>0]=1,h=b+488|0,(c[h>>2]|0)==1):0)c[h>>2]=0;h=b+140|0;if(!(c[h>>2]|0))if(!(c[b+80>>2]|0)){e=0;d=0}else{hW(b,c[n>>2]|0,e,f);e=0;d=0}else{d=c[p>>2]|0;if(!d)d=0;else{f=c[n>>2]|0;d=WV(b+436|0,f,d,d+(lb[c[f+28>>2]&127](f,d)|0)|0)|0;if(!d){d=1;break}c[b+452>>2]=c[b+448>>2]}g=c[i>>2]|0;if(g){i=c[n>>2]|0;g=WV(b+436|0,i,g,(c[j>>2]|0)+(0-(c[i+64>>2]|0))|0)|0;if(!g){d=1;break}}else g=0;xb[c[h>>2]&31](c[b+4>>2]|0,g,d,c[k>>2]|0);e=g}do if(!(c[b+228>>2]|0)){g=c[m>>2]|0;h=g;if(g|0){k=c[g+64>>2]|0;m=c[n>>2]|0;if((k|0)==(c[m+64>>2]|0)?(k|0)!=2|(g|0)==(m|0):0){c[n>>2]=h;break}c[o>>2]=c[p>>2];d=19;break a}g=c[p>>2]|0;if(g|0){h=b+436|0;if(!d){d=c[n>>2]|0;d=WV(h,d,g,g+(lb[c[d+28>>2]&127](d,g)|0)|0)|0;if(!d){d=1;break a}}d=PW(b,d)|0;XV(h);if((d|0)!=18)break a;c[o>>2]=c[p>>2];d=18;break a}}while(0);if((d|0)!=0|(e|0)!=0){XV(b+436|0);d=0}else d=0}else d=g?31:30;while(0);l=q;return d|0}function WV(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;do if(!(cW(b,d,e,f)|0))d=0;else{e=b+12|0;d=c[e>>2]|0;if((d|0)==(c[b+8>>2]|0)){if(!((eW(b)|0)<<24>>24)){d=0;break}d=c[e>>2]|0}c[e>>2]=d+1;a[d>>0]=0;d=c[b+16>>2]|0}while(0);return d|0}function XV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=a+4|0;b=c[e>>2]|0;a:do if(!b){c[e>>2]=c[a>>2];b=a}else{d=c[a>>2]|0;while(1){if(!d){b=a;break a}g=c[d>>2]|0;c[d>>2]=b;c[e>>2]=d;f=d;d=g;b=f}}while(0);c[b>>2]=0;c[a+16>>2]=0;c[a+12>>2]=0;c[a+8>>2]=0;return}function YV(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;w=e+8|0;a:do if(!(c[w>>2]|0))if(g){a[e+4>>0]=6;c[w>>2]=64;h=e+16|0;i=kb[c[c[h>>2]>>2]&63](256)|0;c[e>>2]=i;if(!i){c[w>>2]=0;h=0;break}else{H3(i|0,0,256)|0;j=NW(b,f)|0;j=(c[w>>2]|0)+-1&j;i=e;o=27;break}}else h=0;else{v=NW(b,f)|0;k=c[w>>2]|0;j=k+-1|0;l=c[e>>2]|0;m=v&0-k;u=e+4|0;n=j>>>2;i=0;j=j&v;while(1){h=c[l+(j<<2)>>2]|0;if(!h)break;if((OW(f,c[h>>2]|0)|0)<<24>>24)break a;if(!(i<<24>>24))h=(m>>>((d[u>>0]|0)+-1|0)&n|1)&255;else h=i;t=h&255;i=h;j=j-t+(j>>>0<t>>>0?k:0)|0}if(g){i=a[u>>0]|0;h=i&255;if(!((c[e+12>>2]|0)>>>(h+-1|0))){h=e+16|0;i=e;o=27;break}q=h+1&255;j=i+1&255;s=1<<j;r=s+-1|0;i=s<<2;h=e+16|0;t=kb[c[c[h>>2]>>2]&63](i)|0;if(t){H3(t|0,0,i|0)|0;p=0-s|0;n=j+-1|0;o=r>>>2;m=0;while(1){if(m>>>0>=(c[w>>2]|0)>>>0)break;i=c[(c[e>>2]|0)+(m<<2)>>2]|0;if(i|0){i=NW(b,c[i>>2]|0)|0;k=((i&p)>>>n&o|1)&255;i=i&r;j=0;while(1){l=t+(i<<2)|0;if(!(c[l>>2]|0))break;l=j<<24>>24==0?k:j;x=l&255;i=i+(i>>>0<x>>>0?s:0)-x|0;j=l}c[l>>2]=c[(c[e>>2]|0)+(m<<2)>>2]}m=m+1|0}tb[c[(c[h>>2]|0)+8>>2]&127](c[e>>2]|0);c[e>>2]=t;a[u>>0]=q;c[w>>2]=s;k=((v&p)>>>n&o|1)&255;i=r&v;j=0;while(1){if(!(c[t+(i<<2)>>2]|0)){j=i;i=e;o=27;break a}x=j<<24>>24==0?k:j;w=x&255;i=i+(i>>>0<w>>>0?s:0)-w|0;j=x}}else h=0}else h=0}while(0);if((o|0)==27){h=kb[c[c[h>>2]>>2]&63](g)|0;c[(c[i>>2]|0)+(j<<2)>>2]=h;h=c[(c[i>>2]|0)+(j<<2)>>2]|0;if(!h)h=0;else{H3(h|0,0,g|0)|0;c[c[(c[i>>2]|0)+(j<<2)>>2]>>2]=f;h=e+12|0;c[h>>2]=(c[h>>2]|0)+1;h=c[(c[i>>2]|0)+(j<<2)>>2]|0}}return h|0}function ZV(b){b=b|0;var c=0,d=0,e=0;e=b;c=b;while(1){d=a[e>>0]|0;if(!(d<<24>>24))break;switch(d<<24>>24|0){case 10:case 13:case 32:{if((c|0)!=(b|0)){if((a[c+-1>>0]|0)!=32){a[c>>0]=32;c=c+1|0}}else c=b;break}default:{a[c>>0]=d;c=c+1|0}}e=e+1|0}if((c|0)!=(b|0)){b=c+-1|0;b=(a[b>>0]|0)==32?b:c}a[b>>0]=0;return}function _V(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;d=rW(b,0,c[b+144>>2]|0,d,e,f,(a[b+480>>0]|0)==0&1)|0;if((d|0)==0?(AW(b)|0)<<24>>24==0:0)d=1;return d|0}function $V(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+352>>2]|0;b=WV(g+80|0,b,d,e)|0;do if((b|0)!=0?(f=YV(a,g+20|0,b,24)|0,(f|0)!=0):0)if((c[f>>2]|0)==(b|0)){c[g+96>>2]=c[g+92>>2];if(!(CW(a,f)|0)){f=0;break}}else c[g+92>>2]=c[g+96>>2];else f=0;while(0);return f|0}function aW(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[b+352>>2]|0;k=m+80|0;n=m+92|0;h=c[n>>2]|0;l=m+88|0;if((h|0)==(c[l>>2]|0))if(!((eW(k)|0)<<24>>24))g=0;else{h=c[n>>2]|0;i=4}else i=4;a:do if((i|0)==4){c[n>>2]=h+1;a[h>>0]=0;d=WV(k,d,e,f)|0;if((d|0)!=0?(j=d+1|0,g=YV(b,m+40|0,j,12)|0,(g|0)!=0):0){if((c[g>>2]|0)!=(j|0)){c[n>>2]=c[m+96>>2];break}h=c[n>>2]|0;i=m+96|0;c[i>>2]=h;if(a[b+232>>0]|0){e=a[j>>0]|0;b:do if(e<<24>>24==120)if((((a[d+2>>0]|0)==109?(a[d+3>>0]|0)==108:0)?(a[d+4>>0]|0)==110:0)?(a[d+5>>0]|0)==115:0){switch(a[d+6>>0]|0){case 0:{h=m+152|0;break}case 58:{h=YV(b,m+60|0,d+7|0,8)|0;break}default:{f=0;d=120;break b}}c[g+4>>2]=h;a[g+9>>0]=1;break a}else{f=0;d=120}else{f=0;d=e}while(0);c:while(1){switch(d<<24>>24){case 0:break a;case 58:{e=0;break c}default:{}}d=f+1|0;f=d;d=a[j+d>>0]|0}while(1){d=(h|0)==(c[l>>2]|0);if((e|0)>=(f|0))break;if(d){if(!((eW(k)|0)<<24>>24)){g=0;break a}h=c[n>>2]|0}d=a[j+e>>0]|0;c[n>>2]=h+1;a[h>>0]=d;e=e+1|0;h=c[n>>2]|0}if(d){if(!((eW(k)|0)<<24>>24)){g=0;break}h=c[n>>2]|0}c[n>>2]=h+1;a[h>>0]=0;h=YV(b,m+60|0,c[i>>2]|0,8)|0;c[g+4>>2]=h;if(h){d=c[i>>2]|0;if((c[h>>2]|0)==(d|0)){c[i>>2]=c[n>>2];break}else{c[n>>2]=d;break}}else g=0}}else g=0}while(0);return g|0}function bW(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=b+12|0;h=b+8|0;while(1){e=a[d>>0]|0;if(!(e<<24>>24)){i=7;break}f=c[g>>2]|0;if((f|0)==(c[h>>2]|0)){if(!((eW(b)|0)<<24>>24)){d=0;break}f=c[g>>2]|0;e=a[d>>0]|0}c[g>>2]=f+1;a[f>>0]=e;d=d+1|0}if((i|0)==7)d=c[b+16>>2]|0;return d|0}function cW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+16|0;h=i;c[h>>2]=d;g=a+12|0;if((c[g>>2]|0)==0?(eW(a)|0)<<24>>24==0:0)d=0;else f=3;a:do if((f|0)==3){d=b+56|0;f=a+8|0;while(1){if((pb[c[d>>2]&127](b,h,e,g,c[f>>2]|0)|0)>>>0<2)break;if(!((eW(a)|0)<<24>>24)){d=0;break a}}d=c[a+16>>2]|0}while(0);l=i;return d|0}function dW(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;i=f<<24>>24==0;n=b+12|0;m=c[n>>2]|0;a:do if(!(i&(g|0)==0)){j=b+20|0;f=0;while(1){if((f|0)>=(m|0))break;if((c[(c[j>>2]|0)+(f*12|0)>>2]|0)==(d|0)){f=1;break a}else f=f+1|0}if((!i?(k=b+8|0,(c[k>>2]|0)==0):0)?(a[d+9>>0]|0)==0:0){c[k>>2]=d;l=9}else l=9}else l=9;while(0);b:do if((l|0)==9){j=b+16|0;do if((m|0)==(c[j>>2]|0))if(!m){c[j>>2]=8;f=kb[c[h+12>>2]&63](96)|0;c[b+20>>2]=f;if(f|0)break;c[j>>2]=0;f=0;break b}else{i=b+20|0;f=lb[c[h+16>>2]&127](c[i>>2]|0,m*24|0)|0;if(!f){f=0;break b}c[j>>2]=m<<1;c[i>>2]=f;break}else f=c[b+20>>2]|0;while(0);h=c[n>>2]|0;c[f+(h*12|0)>>2]=d;c[f+(h*12|0)+8>>2]=g;a[f+(h*12|0)+4>>0]=e;if(!(e<<24>>24))a[d+8>>0]=1;c[n>>2]=(c[n>>2]|0)+1;f=1}while(0);return f|0}function eW(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;b=a+4|0;e=c[b>>2]|0;do if(e){f=a+16|0;g=c[f>>2]|0;if(!g){c[a>>2]=e;c[b>>2]=c[e>>2];c[e>>2]=0;l=c[a>>2]|0;b=l+8|0;c[f>>2]=b;c[a+8>>2]=(c[l+4>>2]|0)+(l+8);c[a+12>>2]=b;b=1;break}d=a+8|0;if(((c[d>>2]|0)-g|0)<(c[e+4>>2]|0)){k=c[e>>2]|0;c[e>>2]=c[a>>2];l=c[b>>2]|0;c[a>>2]=l;c[b>>2]=k;b=c[f>>2]|0;F3(l+8|0,b|0,(c[d>>2]|0)-b|0)|0;b=c[a>>2]|0;l=a+12|0;c[l>>2]=(c[l>>2]|0)-(c[f>>2]|0)+(b+8);c[f>>2]=b+8;c[d>>2]=(c[b+4>>2]|0)+(b+8);b=1}else h=6}else h=6;while(0);a:do if((h|0)==6){e=c[a>>2]|0;k=a+16|0;do if(!e){i=k;b=c[k>>2]|0}else{j=c[k>>2]|0;b=j;if((j|0)!=(e+8|0)){i=k;break}f=a+8|0;g=(c[f>>2]|0)-b<<1;h=a+12|0;d=(c[h>>2]|0)-b|0;if((g|0)<0){b=0;break a}b=MW(g)|0;if(!b){b=0;break a}b=lb[c[(c[a+20>>2]|0)+4>>2]&127](e,b)|0;if(!b){b=0;break a}c[a>>2]=b;c[b+4>>2]=g;b=c[a>>2]|0;c[h>>2]=b+8+d;c[k>>2]=b+8;c[f>>2]=b+8+g;b=1;break a}while(0);j=a+8|0;b=(c[j>>2]|0)-b|0;if((b|0)>=0){if((b|0)>=1024){b=b<<1;if((b|0)<0){b=0;break}}else b=1024;d=MW(b)|0;if((d|0)!=0?(l=kb[c[c[a+20>>2]>>2]&63](d)|0,(l|0)!=0):0){c[l+4>>2]=b;c[l>>2]=c[a>>2];c[a>>2]=l;h=a+12|0;a=c[h>>2]|0;e=c[k>>2]|0;d=a;f=e;if((a|0)==(e|0)){g=l+8|0;e=f}else{g=l+8|0;F3(g|0,e|0,d-f|0)|0;e=c[i>>2]|0;d=c[h>>2]|0}c[h>>2]=l+8+(d-e);c[k>>2]=g;c[j>>2]=l+8+b;b=1}else b=0}else b=0}while(0);return b|0}function fW(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;b=LW(b,d,e,f,g,h)|0;do if(!b){d=h+12|0;b=c[d>>2]|0;if((e<<24>>24==0?(c[h+16>>2]|0)!=(b|0):0)?(i=b+-1|0,(a[i>>0]|0)==32):0){c[d>>2]=i;b=i}if((b|0)==(c[h+8>>2]|0)){if(!((eW(h)|0)<<24>>24)){b=1;break}b=c[d>>2]|0}c[d>>2]=b+1;a[b>>0]=0;b=0}while(0);return b|0}function gW(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+16|0;B=H;C=H+4|0;g=c[b+352>>2]|0;D=g+104|0;F=b+272|0;E=c[F>>2]|0;c[F>>2]=1;if((c[D>>2]|0)==0?(eW(D)|0)<<24>>24==0:0)g=1;else{n=d+20|0;o=b+484|0;p=b+144|0;q=b+412|0;r=d+64|0;s=g+132|0;t=b+428|0;u=b+424|0;v=b+224|0;w=b+112|0;m=g+130|0;x=g+128|0;y=g+131|0;z=b+116|0;A=g+112|0;j=g+116|0;k=d+40|0;a:while(1){b:do switch(ob[c[n>>2]&127](d,e,f,B)|0){case -4:{g=0;break a}case -1:{G=37;break a}case 0:{G=39;break a}case 28:{if((a[o>>0]|0)==0?(c[p>>2]|0)==(d|0):0){G=19;break a}g=c[r>>2]|0;g=WV(q,d,e+g|0,(c[B>>2]|0)+(0-g)|0)|0;if(!g){g=1;break a}h=YV(b,s,g,0)|0;c[u>>2]=c[t>>2];if(!h){G=9;break a}i=h+32|0;if(a[i>>0]|0){G=11;break a}g=h+16|0;if(!(c[g>>2]|0)){a[i>>0]=1;g=c[h+4>>2]|0;g=gW(b,c[v>>2]|0,g,g+(c[h+8>>2]|0)|0)|0;a[i>>0]=0;if(!g)break b;else break a}if(c[w>>2]|0){a[y>>0]=0;a[i>>0]=1;h=(pb[c[w>>2]&127](c[z>>2]|0,0,c[h+20>>2]|0,c[g>>2]|0,c[h+24>>2]|0)|0)==0;a[i>>0]=0;if(h){g=21;break a}if(a[y>>0]|0)break b}a[x>>0]=a[m>>0]|0;break}case 6:case 9:{if(!(cW(D,d,e,c[B>>2]|0)|0)){g=1;break a}break}case -3:{c[B>>2]=e+(c[r>>2]|0);G=22;break}case 7:{G=22;break}case 10:{g=lb[c[k>>2]&127](d,e)|0;if((g|0)<0){G=27;break a}h=gX(g,C)|0;e=0;while(1){if((e|0)>=(h|0))break;g=c[j>>2]|0;if((c[A>>2]|0)==(g|0)){if(!((eW(D)|0)<<24>>24)){g=1;G=35;break a}g=c[j>>2]|0}i=a[C+e>>0]|0;c[j>>2]=g+1;a[g>>0]=i;e=e+1|0}break}default:{G=41;break a}}while(0);if((G|0)==22){G=0;g=c[j>>2]|0;if((c[A>>2]|0)==(g|0)){if(!((eW(D)|0)<<24>>24)){g=1;break}g=c[j>>2]|0}c[j>>2]=g+1;a[g>>0]=10}e=c[B>>2]|0}if((G|0)==9){a[x>>0]=a[m>>0]|0;g=0}else if((G|0)==11)if((c[p>>2]|0)==(d|0)){c[b+284>>2]=e;g=12}else g=12;else if((G|0)==19){c[b+284>>2]=e;g=10}else if((G|0)==27)if((c[p>>2]|0)==(d|0)){c[b+284>>2]=e;g=14;G=35}else{g=14;G=35}else if((G|0)==37)if((c[p>>2]|0)==(d|0)){c[b+284>>2]=e;g=4}else g=4;else if((G|0)==39)if((c[p>>2]|0)==(d|0)){c[b+284>>2]=c[B>>2];g=4}else g=4;else if((G|0)==41)if((c[p>>2]|0)==(d|0)){c[b+284>>2]=e;g=23}else g=23;c[F>>2]=E}l=H;return g|0}function hW(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+16|0;n=p;o=p+4|0;c[n>>2]=e;if(!(a[d+68>>0]|0)){if((c[b+144>>2]|0)==(d|0)){g=b+288|0;h=b+284|0}else{h=c[b+296>>2]|0;g=h+4|0}i=b+44|0;j=d+56|0;k=b+48|0;m=b+80|0;e=b+4|0;do{c[o>>2]=c[i>>2];b=pb[c[j>>2]&127](d,n,f,o,c[k>>2]|0)|0;c[g>>2]=c[n>>2];q=c[i>>2]|0;vb[c[m>>2]&127](c[e>>2]|0,q,(c[o>>2]|0)-q|0);c[h>>2]=c[n>>2]}while(b>>>0>1)}else vb[c[b+80>>2]&127](c[b+4>>2]|0,e,f-e|0);l=p;return}function iW(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=c[d>>2]|0;if((c[a+144>>2]|0)==(b|0)){i=a+284|0;c[i>>2]=k;h=a+288|0}else{i=c[a+296>>2]|0;h=i+4|0}c[i>>2]=k;c[d>>2]=0;n=ob[c[b+12>>2]&127](b,k,e,j)|0;e=c[j>>2]|0;c[h>>2]=e;switch(n|0){case 42:{if(c[a+80>>2]|0){hW(a,b,k,e);e=c[j>>2]|0}c[d>>2]=e;c[f>>2]=e;e=(c[a+476>>2]|0)==2?35:0;break}case 0:{c[i>>2]=e;e=4;break}case -2:{if(!(g<<24>>24))e=6;else{c[f>>2]=k;e=0}break}case -4:case -1:{if(!(g<<24>>24))e=2;else{c[f>>2]=k;e=0}break}default:{c[i>>2]=e;e=23}}l=m;return e|0}function jW(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;d=iW(b,c[b+144>>2]|0,g,e,f,(a[b+480>>0]|0)==0&1)|0;g=c[g>>2]|0;if(!((d|0)!=0|(g|0)==0)){c[b+276>>2]=57;d=TV(b,g,e,f)|0}l=h;return d|0}function kW(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=c[a+352>>2]|0;j=i+184|0;if(!(c[j>>2]|0)){b=kb[c[a+12>>2]&63](c[a+464>>2]<<2)|0;c[j>>2]=b;if(!b)b=-1;else{c[b>>2]=0;d=4}}else d=4;do if((d|0)==4){h=i+176|0;b=c[h>>2]|0;g=i+172|0;d=c[g>>2]|0;f=i+164|0;e=c[f>>2]|0;if(b>>>0<d>>>0)g=e;else{if(!e){b=kb[c[a+12>>2]&63](896)|0;if(!b){b=-1;break}else{d=b;b=32}}else{b=lb[c[a+16>>2]&127](e,d*56|0)|0;if(!b){b=-1;break}d=b;b=c[g>>2]<<1}c[g>>2]=b;c[f>>2]=d;b=c[h>>2]|0;g=d}c[h>>2]=b+1;d=c[i+180>>2]|0;if(d|0){a=c[(c[j>>2]|0)+(d+-1<<2)>>2]|0;f=g+(a*28|0)+16|0;d=c[f>>2]|0;if(d|0)c[g+(d*28|0)+24>>2]=b;d=g+(a*28|0)+20|0;e=c[d>>2]|0;if(!e)c[g+(a*28|0)+12>>2]=b;c[f>>2]=b;c[d>>2]=e+1}j=g+(b*28|0)+12|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0}while(0);return b|0}function lW(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p;o=b+300|0;f=c[o>>2]|0;if(!f){f=kb[c[b+12>>2]&63](24)|0;if(!f)f=1;else{m=f;g=4}}else{c[o>>2]=c[f+8>>2];m=f;g=4}do if((g|0)==4){h=d+32|0;a[h>>0]=1;i=d+12|0;c[i>>2]=0;j=b+296|0;k=m+8|0;c[k>>2]=c[j>>2];c[j>>2]=m;c[m+12>>2]=d;f=b+308|0;c[m+16>>2]=c[f>>2];a[m+20>>0]=e;c[m>>2]=0;c[m+4>>2]=0;g=c[d+4>>2]|0;e=g+(c[d+8>>2]|0)|0;c[n>>2]=g;if(!(a[d+33>>0]|0))f=rW(b,c[f>>2]|0,c[b+224>>2]|0,g,e,n,0)|0;else{d=b+224|0;f=c[d>>2]|0;f=ob[c[f>>2]&127](f,g,e,n)|0;f=UV(b,c[d>>2]|0,g,e,f,c[n>>2]|0,n,0)|0}if(!f){f=c[n>>2]|0;if((e|0)!=(f|0)?(c[b+476>>2]|0)==3:0){c[i>>2]=f-g;c[b+276>>2]=60;f=0;break}a[h>>0]=0;c[j>>2]=c[k>>2];c[k>>2]=c[o>>2];c[o>>2]=m;f=0}}while(0);l=p;return f|0}function mW(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=l;l=l+16|0;d=g+4|0;e=g;b=c[a+352>>2]|0;f=b+176|0;b=kb[c[a+12>>2]&63](((c[f>>2]|0)*20|0)+(c[b+168>>2]|0)|0)|0;if(!b)b=0;else{c[e>>2]=b+((c[f>>2]|0)*20|0);c[d>>2]=b+20;qW(a,0,b,d,e)}l=g;return b|0}function nW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=a+64|0;if(!(c[j>>2]|0))if(!(c[a+80>>2]|0))d=1;else{hW(a,b,d,e);d=1}else{h=b+64|0;g=d+(c[h>>2]<<1)|0;d=g+(lb[c[b+28>>2]&127](b,g)|0)|0;f=a+412|0;g=WV(f,b,g,d)|0;if((g|0)!=0?(c[a+428>>2]=c[a+424>>2],i=lb[c[b+32>>2]&127](b,d)|0,i=WV(f,b,i,e+(0-(c[h>>2]<<1))|0)|0,(i|0)!=0):0){pW(i);vb[c[j>>2]&127](c[a+4>>2]|0,g,i);XV(f);d=1}else d=0}return d|0}function oW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=a+68|0;if(!(c[g>>2]|0))if(!(c[a+80>>2]|0))b=1;else{hW(a,b,d,e);b=1}else{f=a+412|0;h=c[b+64>>2]|0;b=WV(f,b,d+(h<<2)|0,e+(O(h,-3)|0)|0)|0;if(!b)b=0;else{pW(b);ub[c[g>>2]&63](c[a+4>>2]|0,b);XV(f);b=1}}return b|0}function pW(b){b=b|0;var c=0,d=0,e=0;a:while(1){switch(a[b>>0]|0){case 0:break a;case 13:{d=b;c=13;e=4;break a}default:{}}b=b+1|0}if((e|0)==4){while(1){if(c<<24>>24==13){a[d>>0]=10;e=b+1|0;b=(a[e>>0]|0)==10?b+2|0:e}else{a[d>>0]=c;b=b+1|0}d=d+1|0;c=a[b>>0]|0;if(!(c<<24>>24))break;else e=4}a[d>>0]=0}return}function qW(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=(c[b+352>>2]|0)+164|0;j=c[(c[k>>2]|0)+(d*28|0)>>2]|0;c[e>>2]=j;c[e+4>>2]=c[(c[k>>2]|0)+(d*28|0)+4>>2];if((j|0)==4){c[e+8>>2]=c[g>>2];d=c[(c[k>>2]|0)+(d*28|0)+8>>2]|0;while(1){j=a[d>>0]|0;k=c[g>>2]|0;c[g>>2]=k+1;a[k>>0]=j;if(!(a[d>>0]|0))break;else d=d+1|0}c[e+12>>2]=0;c[e+16>>2]=0}else{h=c[(c[k>>2]|0)+(d*28|0)+20>>2]|0;i=e+12|0;c[i>>2]=h;j=e+16|0;c[j>>2]=c[f>>2];c[f>>2]=(c[f>>2]|0)+(h*20|0);d=(c[k>>2]|0)+(d*28|0)+12|0;h=0;while(1){d=c[d>>2]|0;if(h>>>0>=(c[i>>2]|0)>>>0)break;qW(b,d,(c[j>>2]|0)+(h*20|0)|0,f,g);d=(c[k>>2]|0)+(d*28|0)+24|0;h=h+1|0}c[e+8>>2]=0}return}function rW(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0;ma=l;l=l+48|0;ja=ma+28|0;ea=ma+32|0;ka=ma+24|0;Z=ma;c[ja>>2]=f;_=c[b+352>>2]|0;if((c[b+144>>2]|0)==(e|0)){fa=b+284|0;Y=b+288|0}else{Y=c[b+296>>2]|0;fa=Y;Y=Y+4|0}c[fa>>2]=f;t=e+4|0;ga=b+80|0;u=b+476|0;v=e+44|0;w=e+64|0;x=_+80|0;y=_+96|0;z=_+92|0;A=_+129|0;B=b+112|0;C=b+116|0;D=b+428|0;E=b+424|0;F=b+304|0;G=b+120|0;ha=b+4|0;H=_+130|0;$=b+60|0;I=b+364|0;J=b+12|0;K=b+360|0;L=e+28|0;ia=b+308|0;aa=e+56|0;M=b+16|0;N=b+52|0;O=b+412|0;P=b+388|0;Q=b+56|0;R=b+232|0;S=b+233|0;T=b+468|0;U=b+104|0;V=b+372|0;W=e+40|0;X=b+72|0;ba=e+68|0;ca=b+44|0;da=b+48|0;a:while(1){s=c[ja>>2]|0;c[ea>>2]=s;s=ob[c[t>>2]&127](e,s,g,ea)|0;f=c[ea>>2]|0;c[Y>>2]=f;k=f;b:do switch(s|0){case -3:{la=6;break a}case -4:{la=15;break a}case 0:{la=20;break a}case -1:{la=21;break a}case -2:{la=23;break a}case 12:{f=17;break a}case -5:{la=134;break a}case 9:{s=c[w>>2]|0;s=(nb[c[v>>2]&63](e,(c[ja>>2]|0)+s|0,k+(0-s)|0)|0)&255;a[ka>>0]=s;do if(s<<24>>24){f=c[$>>2]|0;if(f|0){vb[f&127](c[ha>>2]|0,ka,1);break}if(c[ga>>2]|0)hW(b,e,c[ja>>2]|0,c[ea>>2]|0)}else{j=c[w>>2]|0;j=WV(x,e,(c[ja>>2]|0)+j|0,(c[ea>>2]|0)+(0-j)|0)|0;if(!j){f=1;la=56;break a}k=YV(b,_,j,0)|0;c[z>>2]=c[y>>2];if((a[A>>0]|0)!=0?(a[H>>0]|0)==0:0){if(!k){f=c[G>>2]|0;if(f|0){vb[f&127](c[ha>>2]|0,j,0);break}if(!(c[ga>>2]|0))break;hW(b,e,c[ja>>2]|0,c[ea>>2]|0);break}}else{if(!k){f=11;la=56;break a}if(!(a[k+34>>0]|0)){f=24;la=56;break a}}f=k+32|0;if(a[f>>0]|0){f=12;la=56;break a}if(c[k+28>>2]|0){f=15;la=56;break a}if(!(c[k+4>>2]|0)){if(!(c[B>>2]|0)){if(!(c[ga>>2]|0))break;hW(b,e,c[ja>>2]|0,c[ea>>2]|0);break}a[f>>0]=1;j=tW(b)|0;a[f>>0]=0;if(!j){f=1;la=56;break a}if(!(pb[c[B>>2]&127](c[C>>2]|0,j,c[k+20>>2]|0,c[k+16>>2]|0,c[k+24>>2]|0)|0)){f=21;la=56;break a}c[E>>2]=c[D>>2];break}if(a[F>>0]|0){f=lW(b,k,0)|0;if(!f)break;else{la=58;break a}}f=c[G>>2]|0;if(!f){if(c[ga>>2]|0)hW(b,e,c[ja>>2]|0,c[ea>>2]|0)}else vb[f&127](c[ha>>2]|0,c[k>>2]|0,0);break b}while(0);break}case 1:case 2:{f=c[I>>2]|0;if(!f){f=kb[c[J>>2]&63](48)|0;if(!f){f=1;la=75;break a}j=kb[c[J>>2]&63](32)|0;c[f+36>>2]=j;if(!j){la=63;break a}c[f+40>>2]=j+32}else c[I>>2]=c[f>>2];o=f+44|0;c[o>>2]=0;c[f>>2]=c[K>>2];c[K>>2]=f;s=f+12|0;c[f+16>>2]=0;c[f+20>>2]=0;r=(c[ja>>2]|0)+(c[w>>2]|0)|0;q=f+4|0;c[q>>2]=r;p=f+8|0;c[p>>2]=lb[c[L>>2]&127](e,r)|0;c[ia>>2]=(c[ia>>2]|0)+1;q=c[q>>2]|0;p=q+(c[p>>2]|0)|0;c[Z>>2]=q;q=f+36|0;c[ka>>2]=c[q>>2];r=f+40|0;j=c[r>>2]|0;while(1){na=pb[c[aa>>2]&127](e,Z,p,ka,j+-1|0)|0;j=c[ka>>2]|0;m=c[q>>2]|0;k=m;n=j-k|0;if((na|0)==1?1:(c[Z>>2]|0)>>>0>=p>>>0)break;k=(c[r>>2]|0)-k<<1;j=lb[c[M>>2]&127](m,k)|0;if(!j){la=69;break a}c[q>>2]=j;na=j+k|0;c[r>>2]=na;c[ka>>2]=j+n;j=na}c[f+24>>2]=n;c[s>>2]=k;a[j>>0]=0;f=uW(b,e,c[ja>>2]|0,s,o)|0;if(f|0){la=75;break a}f=c[N>>2]|0;if(!f){if(c[ga>>2]|0)hW(b,e,c[ja>>2]|0,c[ea>>2]|0)}else vb[f&127](c[ha>>2]|0,c[s>>2]|0,c[P>>2]|0);XV(O);break}case 3:case 4:{na=(c[ja>>2]|0)+(c[w>>2]|0)|0;c[ka>>2]=0;na=WV(O,e,na,na+(lb[c[L>>2]&127](e,na)|0)|0)|0;c[Z>>2]=na;if(!na){f=1;la=89;break a}c[D>>2]=c[E>>2];f=uW(b,e,c[ja>>2]|0,Z,ka)|0;if(f|0){la=79;break a}c[D>>2]=c[E>>2];f=c[N>>2]|0;if(!f)j=1;else{vb[f&127](c[ha>>2]|0,c[Z>>2]|0,c[P>>2]|0);j=0}f=c[Q>>2]|0;if(!f){if(j|0?c[ga>>2]|0:0)hW(b,e,c[ja>>2]|0,c[ea>>2]|0)}else{if(c[N>>2]|0){c[fa>>2]=c[Y>>2];f=c[Q>>2]|0}ub[f&63](c[ha>>2]|0,c[Z>>2]|0)}XV(O);vW(b,c[ka>>2]|0);if((c[ia>>2]|0)==0?(c[u>>2]&-2|0)!=2:0){la=92;break a}break}case 5:{if((c[ia>>2]|0)==(d|0)){f=13;break a}n=c[K>>2]|0;c[K>>2]=c[n>>2];c[n>>2]=c[I>>2];c[I>>2]=n;f=(c[ja>>2]|0)+(c[w>>2]<<1)|0;j=lb[c[L>>2]&127](e,f)|0;if((j|0)!=(c[n+8>>2]|0)){la=96;break a}if(L0(c[n+4>>2]|0,f,j)|0){la=96;break a}c[ia>>2]=(c[ia>>2]|0)+-1;f=c[Q>>2]|0;if(!f){if(c[ga>>2]|0)hW(b,e,c[ja>>2]|0,c[ea>>2]|0)}else{j=c[n+16>>2]|0;m=n+12|0;if((j|0)!=0&(a[R>>0]|0)!=0){f=(c[m>>2]|0)+(c[n+28>>2]|0)|0;while(1){k=a[j>>0]|0;if(!(k<<24>>24))break;a[f>>0]=k;f=f+1|0;j=j+1|0}j=c[n+20>>2]|0;c:do if((j|0)!=0&(a[S>>0]|0)!=0){a[f>>0]=a[T>>0]|0;while(1){f=f+1|0;k=a[j>>0]|0;if(!(k<<24>>24))break c;a[f>>0]=k;j=j+1|0}}while(0);a[f>>0]=0;f=c[Q>>2]|0}ub[f&63](c[ha>>2]|0,c[m>>2]|0)}k=n+44|0;while(1){m=c[k>>2]|0;if(!m)break;f=c[U>>2]|0;if(!f){f=m;j=m}else{ub[f&63](c[ha>>2]|0,c[c[m>>2]>>2]|0);f=m;j=c[k>>2]|0}c[k>>2]=c[j+4>>2];c[m+4>>2]=c[V>>2];c[V>>2]=m;c[(c[f>>2]|0)+4>>2]=c[m+8>>2]}if(!(c[ia>>2]|0)){la=117;break a}break}case 10:{f=lb[c[W>>2]&127](e,c[ja>>2]|0)|0;if((f|0)<0){f=14;break a}j=c[$>>2]|0;if(j|0){s=c[ha>>2]|0;na=gX(f,ka)|0;vb[j&127](s,ka,na);break b}if(c[ga>>2]|0)hW(b,e,c[ja>>2]|0,c[ea>>2]|0);break}case 7:{f=c[$>>2]|0;if(f|0){a[ka>>0]=10;vb[f&127](c[ha>>2]|0,ka,1);break b}if(c[ga>>2]|0)hW(b,e,c[ja>>2]|0,k);break}case 8:{f=c[X>>2]|0;if(!f){if(c[ga>>2]|0)hW(b,e,c[ja>>2]|0,k)}else tb[f&127](c[ha>>2]|0);f=xW(b,e,ea,g,h,i)|0;if(f|0)break a;if(!(c[ea>>2]|0)){la=133;break a}break}case 6:{j=c[$>>2]|0;if(!j){if(!(c[ga>>2]|0))break b;hW(b,e,c[ja>>2]|0,k);break b}if(!(a[ba>>0]|0))f=k;else{na=c[ja>>2]|0;vb[j&127](c[ha>>2]|0,na,f-na|0);break b}while(1){c[ka>>2]=c[ca>>2];na=pb[c[aa>>2]&127](e,ja,f,ka,c[da>>2]|0)|0;c[Y>>2]=c[ja>>2];s=c[ca>>2]|0;vb[j&127](c[ha>>2]|0,s,(c[ka>>2]|0)-s|0);if(na>>>0<2)break;c[fa>>2]=c[ja>>2];f=c[ea>>2]|0}break}case 11:{if(!(nW(b,e,c[ja>>2]|0,k)|0)){f=1;break a}break}case 13:{if(!(oW(b,e,c[ja>>2]|0,k)|0)){f=1;break a}break}default:if(c[ga>>2]|0)hW(b,e,c[ja>>2]|0,k)}while(0);na=c[ea>>2]|0;c[ja>>2]=na;c[fa>>2]=na;switch(c[u>>2]|0){case 2:{f=35;break a}case 3:{la=160;break a}default:{}}}switch(la|0){case 6:{if(i<<24>>24){c[h>>2]=c[ja>>2];f=0;break}c[Y>>2]=g;f=c[$>>2]|0;if(!f){if(c[ga>>2]|0)hW(b,e,c[ja>>2]|0,g)}else{a[ka>>0]=10;vb[f&127](c[ha>>2]|0,ka,1)}if(d)if((c[ia>>2]|0)==(d|0)){c[h>>2]=g;f=0}else f=13;else f=3;break}case 15:{if(i<<24>>24){c[h>>2]=c[ja>>2];f=0;break}if((d|0)>0)if((c[ia>>2]|0)==(d|0)){c[h>>2]=c[ja>>2];f=0}else f=13;else f=3;break}case 20:{c[fa>>2]=f;f=4;break}case 21:{if(!(i<<24>>24))f=5;else{c[h>>2]=c[ja>>2];f=0}break}case 23:{if(!(i<<24>>24))f=6;else{c[h>>2]=c[ja>>2];f=0}break}case 56:break;case 58:break;case 63:{tb[c[b+20>>2]&127](f);f=1;la=75;break}case 69:{f=1;la=75;break}case 79:{vW(b,c[ka>>2]|0);la=89;break}case 92:{f=wW(b,c[ea>>2]|0,g,h)|0;break}case 96:{c[fa>>2]=f;f=7;break}case 117:{f=wW(b,c[ea>>2]|0,g,h)|0;break}case 133:{c[b+276>>2]=61;f=0;break}case 134:{if(i<<24>>24){c[h>>2]=c[ja>>2];f=0;break}f=c[$>>2]|0;do if(!f){if(c[ga>>2]|0)hW(b,e,c[ja>>2]|0,g)}else if(!(a[ba>>0]|0)){c[ka>>2]=c[ca>>2];pb[c[aa>>2]&127](e,ja,g,ka,c[da>>2]|0)|0;na=c[ca>>2]|0;vb[c[$>>2]&127](c[ha>>2]|0,na,(c[ka>>2]|0)-na|0);break}else{na=c[ja>>2]|0;vb[f&127](c[ha>>2]|0,na,g-na|0);break}while(0);if(!d){c[fa>>2]=g;f=3;break}if((c[ia>>2]|0)==(d|0)){c[h>>2]=g;f=0;break}else{c[fa>>2]=g;f=13;break}}case 160:{c[h>>2]=c[ea>>2];f=0;break}}l=ma;return f|0}function sW(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=l;l=l+16|0;p=q;k=b+296|0;m=c[k>>2]|0;do if(m){n=c[m+12>>2]|0;h=n+4|0;j=c[h>>2]|0;i=n+12|0;g=j+(c[i>>2]|0)|0;j=j+(c[n+8>>2]|0)|0;c[p>>2]=g;o=n+33|0;if(!(a[o>>0]|0))g=rW(b,c[m+16>>2]|0,c[b+224>>2]|0,g,j,p,0)|0;else{s=b+224|0;r=c[s>>2]|0;r=ob[c[r>>2]&127](r,g,j,p)|0;g=UV(b,c[s>>2]|0,g,j,r,c[p>>2]|0,p,0)|0}if(!g){g=c[p>>2]|0;if((j|0)!=(g|0)?(c[b+476>>2]|0)==3:0){c[i>>2]=g-(c[h>>2]|0);g=0;break}a[n+32>>0]=0;s=m+8|0;c[k>>2]=c[s>>2];g=b+300|0;c[s>>2]=c[g>>2];c[g>>2]=m;g=b+276|0;if(!(a[o>>0]|0)){c[g>>2]=58;g=rW(b,(c[b+472>>2]|0)!=0&1,c[b+144>>2]|0,d,e,f,(a[b+480>>0]|0)==0&1)|0;break}else{c[g>>2]=57;s=b+144|0;g=c[s>>2]|0;g=ob[c[g>>2]&127](g,d,e,p)|0;g=UV(b,c[s>>2]|0,d,e,g,c[p>>2]|0,f,(a[b+480>>0]|0)==0&1)|0;break}}}else g=23;while(0);l=q;return g|0}function tW(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;n=q;m=c[b+352>>2]|0;h=m+156|0;o=b+412|0;p=b+424|0;a:do if(!(c[h>>2]|0)){d=0;i=b+420|0;k=b+468|0;j=12}else{d=c[p>>2]|0;i=b+420|0;if((d|0)==(c[i>>2]|0)){if(!((eW(o)|0)<<24>>24)){d=0;break}d=c[p>>2]|0}c[p>>2]=d+1;a[d>>0]=61;g=b+468|0;e=(c[(c[h>>2]|0)+20>>2]|0)+(((a[g>>0]|0)!=0)<<31>>31)|0;f=0;while(1){if((f|0)>=(e|0)){d=1;k=g;j=12;break a}d=c[p>>2]|0;if((d|0)==(c[i>>2]|0)){if(!((eW(o)|0)<<24>>24)){d=0;break a}d=c[p>>2]|0}k=a[(c[(c[h>>2]|0)+16>>2]|0)+f>>0]|0;c[p>>2]=d+1;a[d>>0]=k;f=f+1|0}}while(0);b:do if((j|0)==12){NV(n,m+60|0);c:while(1){do{e=OV(n)|0;if(!e)break c;h=e+4|0}while(!(c[h>>2]|0));if(d<<24>>24){d=c[p>>2]|0;if((d|0)==(c[i>>2]|0)){if(!((eW(o)|0)<<24>>24)){d=0;break b}d=c[p>>2]|0}c[p>>2]=d+1;a[d>>0]=12}g=c[e>>2]|0;while(1){e=a[g>>0]|0;d=c[p>>2]|0;f=(d|0)==(c[i>>2]|0);if(!(e<<24>>24))break;if(f){if(!((eW(o)|0)<<24>>24)){d=0;break b}d=c[p>>2]|0;e=a[g>>0]|0}c[p>>2]=d+1;a[d>>0]=e;g=g+1|0}if(f){if(!((eW(o)|0)<<24>>24)){d=0;break b}d=c[p>>2]|0}c[p>>2]=d+1;a[d>>0]=61;f=(c[(c[h>>2]|0)+20>>2]|0)+(((a[k>>0]|0)!=0)<<31>>31)|0;e=0;while(1){if((e|0)>=(f|0)){d=1;continue c}d=c[p>>2]|0;if((d|0)==(c[i>>2]|0)){if(!((eW(o)|0)<<24>>24)){d=0;break b}d=c[p>>2]|0}j=a[(c[(c[h>>2]|0)+16>>2]|0)+e>>0]|0;c[p>>2]=d+1;a[d>>0]=j;e=e+1|0}}NV(n,m);d:while(1){do{e=OV(n)|0;if(!e)break d}while(!(a[e+32>>0]|0));if(d<<24>>24){d=c[p>>2]|0;if((d|0)==(c[i>>2]|0)){if(!((eW(o)|0)<<24>>24)){d=0;break b}d=c[p>>2]|0}c[p>>2]=d+1;a[d>>0]=12}f=c[e>>2]|0;while(1){e=a[f>>0]|0;if(!(e<<24>>24)){d=1;continue d}d=c[p>>2]|0;if((d|0)==(c[i>>2]|0)){if(!((eW(o)|0)<<24>>24)){d=0;break b}d=c[p>>2]|0;e=a[f>>0]|0}c[p>>2]=d+1;a[d>>0]=e;f=f+1|0}}d=c[p>>2]|0;if((d|0)==(c[i>>2]|0)){if(!((eW(o)|0)<<24>>24)){d=0;break}d=c[p>>2]|0}c[p>>2]=d+1;a[d>>0]=0;d=c[b+428>>2]|0}while(0);l=q;return d|0}function uW(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;O=l;l=l+80|0;K=O+16|0;L=O;M=c[b+352>>2]|0;k=M+20|0;i=YV(b,k,c[g>>2]|0,0)|0;if(!i){i=BW(M+80|0,c[g>>2]|0)|0;if((i|0)!=0?(j=YV(b,k,i,24)|0,(j|0)!=0):0)if((a[b+232>>0]|0)!=0?(CW(b,j)|0)==0:0)i=1;else A=6;else i=1}else{j=i;A=6}a:do if((A|0)==6){x=c[j+12>>2]|0;k=e+36|0;m=b+376|0;t=b+388|0;u=ob[c[k>>2]&127](e,f,c[m>>2]|0,c[t>>2]|0)|0;i=u+x|0;n=c[m>>2]|0;if((i|0)>(n|0)){i=i+16|0;c[m>>2]=i;i=lb[c[b+16>>2]&127](c[t>>2]|0,i<<4)|0;if(!i){c[m>>2]=n;i=1;break}c[t>>2]=i;if((u|0)>(n|0))ob[c[k>>2]&127](e,f,u,i)|0}J=c[t>>2]|0;r=e+28|0;H=b+412|0;I=b+428|0;w=j+20|0;q=b+424|0;s=0;p=0;k=0;while(1){if((p|0)>=(u|0))break;o=c[(c[t>>2]|0)+(p<<4)>>2]|0;o=aW(b,e,o,o+(lb[c[r>>2]&127](e,o)|0)|0)|0;if(!o){i=1;break a}i=(c[o>>2]|0)+-1|0;if(a[i>>0]|0){A=15;break}a[i>>0]=1;f=s+1|0;c[J+(s<<2)>>2]=c[o>>2];n=c[t>>2]|0;if(a[n+(p<<4)+12>>0]|0){G=WV(H,e,c[n+(p<<4)+4>>2]|0,c[n+(p<<4)+8>>2]|0)|0;c[J+(f<<2)>>2]=G;if(!G){i=1;break a}}else{b:do if(!(a[o+8>>0]|0))i=1;else{i=0;while(1){if((i|0)>=(x|0)){i=1;break b}m=c[w>>2]|0;if((o|0)==(c[m+(i*12|0)>>2]|0))break;i=i+1|0}i=a[m+(i*12|0)+4>>0]|0}while(0);i=fW(b,e,i,c[n+(p<<4)+4>>2]|0,c[n+(p<<4)+8>>2]|0,H)|0;if(i|0)break a;c[J+(f<<2)>>2]=c[I>>2]}c[I>>2]=c[q>>2];i=c[o+4>>2]|0;do if(i)if(a[o+9>>0]|0){i=DW(b,i,o,c[J+(f<<2)>>2]|0,h)|0;if(!i){i=s;break}else break a}else{a[(c[o>>2]|0)+-1>>0]=2;k=k+1|0;i=s+2|0;break}else i=s+2|0;while(0);s=i;p=p+1|0}if((A|0)==15){if((c[b+144>>2]|0)!=(e|0)){i=8;break}c[b+284>>2]=c[(c[t>>2]|0)+(p<<4)>>2];i=8;break}c[b+380>>2]=s;i=c[j+8>>2]|0;c:do if((i|0)!=0?(v=c[i>>2]|0,(a[v+-1>>0]|0)!=0):0){i=0;while(1){if((i|0)>=(s|0)){f=0;p=k;G=s;break c}if((c[J+(i<<2)>>2]|0)==(v|0)){A=37;break c}i=i+2|0}}else{i=-1;A=37}while(0);if((A|0)==37){c[b+384>>2]=i;f=0;p=k;G=s}while(1){if((f|0)>=(x|0))break;i=c[w>>2]|0;n=i+(f*12|0)|0;k=c[n>>2]|0;m=(c[k>>2]|0)+-1|0;d:do if((a[m>>0]|0)==0?(y=i+(f*12|0)+8|0,z=c[y>>2]|0,(z|0)!=0):0){i=c[k+4>>2]|0;do if(i)if(a[k+9>>0]|0){i=DW(b,i,k,z,h)|0;if(!i){i=p;k=G;break d}else break a}else{a[m>>0]=2;i=p+1|0;break}else{a[m>>0]=1;i=p}while(0);c[J+(G<<2)>>2]=c[c[n>>2]>>2];c[J+(G+1<<2)>>2]=c[y>>2];k=G+2|0}else{i=p;k=G}while(0);f=f+1|0;p=i;G=k}c[J+(G<<2)>>2]=0;e:do if(!p)i=0;else{o=b+396|0;n=c[o>>2]|0;F=b+400|0;f=a[F>>0]|0;i=f&255;do if(!(p<<1>>i)){i=1<<i;m=b+392|0;if(!n){k=i;A=55}else{k=i;i=n}}else{i=f;do{E=i;i=i+1<<24>>24}while((p>>(E&255)|0)!=0);i=(i&255)>3?i:3;a[F>>0]=i;i=i&255;m=b+392|0;k=lb[c[b+16>>2]&127](c[m>>2]|0,12<<i)|0;if(!k){a[F>>0]=f;i=1;break a}else{c[m>>2]=k;k=1<<i;A=55;break}}while(0);f:do if((A|0)==55){i=k;while(1){if(!i){i=-1;break f}E=i+-1|0;c[(c[m>>2]|0)+(E*12|0)>>2]=-1;i=E}}while(0);E=i+-1|0;c[o>>2]=E;w=M+40|0;x=b+424|0;y=b+420|0;z=k+-1|0;A=0-k|0;B=z>>>2;C=b+233|0;D=b+468|0;i=0;v=p;g:while(1){while(1){if((i|0)>=(G|0))break e;e=J+(i<<2)|0;n=c[e>>2]|0;f=n+-1|0;if((a[f>>0]|0)==2)break;a[f>>0]=0;i=i+2|0}EW(b,L);FW(K,L);a[f>>0]=0;f=YV(b,w,n,0)|0;if(!f){i=1;break}f=c[f+4>>2]|0;if(!f){i=1;break}u=c[f+4>>2]|0;if(!u){i=27;break}q=u+20|0;r=u+16|0;p=0;while(1){f=c[q>>2]|0;o=c[r>>2]|0;if((p|0)>=(f|0))break;o=a[o+p>>0]|0;f=c[x>>2]|0;if((f|0)==(c[y>>2]|0)){if(!((eW(H)|0)<<24>>24)){i=1;break g}f=c[x>>2]|0}c[x>>2]=f+1;a[f>>0]=o;p=p+1|0}GW(K,o,f);do{t=n;n=n+1|0}while((a[t>>0]|0)!=58);GW(K,n,HW(n)|0);while(1){f=c[x>>2]|0;if((f|0)==(c[y>>2]|0)){if(!((eW(H)|0)<<24>>24)){i=1;break g}f=c[x>>2]|0}t=a[n>>0]|0;c[x>>2]=f+1;a[f>>0]=t;if(!(a[n>>0]|0))break;else n=n+1|0}t=IW(K)|0;q=c[m>>2]|0;r=t&A;n=0;s=z&t;while(1){if((c[q+(s*12|0)>>2]|0)!=(E|0))break;if((c[q+(s*12|0)+4>>2]|0)==(t|0)){f=c[q+(s*12|0)+8>>2]|0;o=c[I>>2]|0;while(1){P=a[o>>0]|0;p=P<<24>>24==0;if(p|P<<24>>24!=(a[f>>0]|0))break;f=f+1|0;o=o+1|0}if(p){i=8;break g}}if(!(n<<24>>24))n=(r>>>((d[F>>0]|0)+-1|0)&B|1)&255;P=n&255;s=s+((s|0)<(P|0)?k:0)-P|0}if(a[C>>0]|0){a[(c[x>>2]|0)+-1>>0]=a[D>>0]|0;f=c[c[u>>2]>>2]|0;while(1){n=c[x>>2]|0;if((n|0)==(c[y>>2]|0)){if(!((eW(H)|0)<<24>>24)){i=1;break g}n=c[x>>2]|0}P=a[f>>0]|0;c[x>>2]=n+1;a[n>>0]=P;if(!(a[f>>0]|0))break;else f=f+1|0}}P=c[I>>2]|0;c[I>>2]=c[x>>2];c[e>>2]=P;c[(c[m>>2]|0)+(s*12|0)>>2]=E;c[(c[m>>2]|0)+(s*12|0)+4>>2]=t;c[(c[m>>2]|0)+(s*12|0)+8>>2]=P;v=v+-1|0;i=i+2|0;if(!v)break e}break a}while(0);while(1){if((i|0)>=(G|0)){i=h;break}a[(c[J+(i<<2)>>2]|0)+-1>>0]=0;i=i+2|0}while(1){i=c[i>>2]|0;if(!i)break;a[(c[c[i+12>>2]>>2]|0)+-1>>0]=0;i=i+4|0}if(!(a[b+232>>0]|0))i=0;else{i=c[j+4>>2]|0;if(!i){i=c[M+156>>2]|0;if(!i){i=0;break}k=c[g>>2]|0}else{i=c[i+4>>2]|0;if(!i){i=27;break}j=c[g>>2]|0;while(1){k=j+1|0;if((a[j>>0]|0)==58)break;else j=k}}if((a[b+233>>0]|0)!=0?(N=c[c[i>>2]>>2]|0,(N|0)!=0):0){j=0;while(1){m=j+1|0;if(!(a[N+j>>0]|0))break;else j=m}}else m=0;c[g+4>>2]=k;p=i+20|0;c[g+16>>2]=c[p>>2];c[g+8>>2]=c[c[i>>2]>>2];c[g+20>>2]=m;q=0;while(1){r=q+1|0;if(!(a[k+q>>0]|0))break;else q=r}j=c[p>>2]|0;n=r+m+j|0;f=i+24|0;if((n|0)>(c[f>>2]|0)){j=n+24|0;o=kb[c[b+12>>2]&63](j)|0;if(!o){i=1;break}c[f>>2]=j;f=i+16|0;F3(o|0,c[f>>2]|0,c[p>>2]|0)|0;j=b+360|0;while(1){j=c[j>>2]|0;if(!j)break;n=j+12|0;if((c[n>>2]|0)==(c[f>>2]|0))c[n>>2]=o}tb[c[b+20>>2]&127](c[f>>2]|0);c[f>>2]=o;n=o;j=c[p>>2]|0}else{n=i+16|0;f=n;n=c[n>>2]|0}j=n+j|0;F3(j|0,k|0,r|0)|0;if(m|0){P=j+q|0;a[P>>0]=a[b+468>>0]|0;F3(P+1|0,c[c[i>>2]>>2]|0,m|0)|0}c[g>>2]=c[f>>2];i=0}}while(0);l=O;return i|0}function vW(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=a+104|0;f=a+372|0;d=a+4|0;while(1){if(!b)break;a=c[e>>2]|0;if(!a)a=b;else{ub[a&63](c[d>>2]|0,c[c[b>>2]>>2]|0);a=b}h=b+4|0;g=c[h>>2]|0;c[h>>2]=c[f>>2];c[f>>2]=b;c[(c[a>>2]|0)+4>>2]=c[b+8>>2];b=g}return}function wW(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;j=q;c[b+276>>2]=62;k=b+284|0;c[k>>2]=d;m=b+144|0;n=b+288|0;o=b+80|0;i=b+476|0;g=d;a:while(1){c[j>>2]=0;r=c[m>>2]|0;r=ob[c[r>>2]&127](r,g,e,j)|0;d=c[j>>2]|0;c[n>>2]=d;h=d;switch(r|0){case -15:{p=3;break a}case -4:{p=7;break a}case 0:{p=12;break a}case -1:{p=13;break a}case -2:{p=15;break a}case 15:{if(c[o>>2]|0)hW(b,c[m>>2]|0,g,h);break}case 11:{if(!(nW(b,c[m>>2]|0,g,h)|0)){d=1;break a}break}case 13:{if(!(oW(b,c[m>>2]|0,g,h)|0)){d=1;break a}break}default:{d=9;break a}}d=c[j>>2]|0;c[k>>2]=d;switch(c[i>>2]|0){case 2:{d=35;break a}case 3:{p=18;break a}default:{}}g=d}do if((p|0)==3){if(c[o>>2]|0){hW(b,c[m>>2]|0,g,h);if((c[i>>2]|0)==2){d=35;break}d=c[j>>2]|0}c[f>>2]=d;d=0}else if((p|0)==7){c[f>>2]=g;d=0}else if((p|0)==12){c[k>>2]=d;d=4}else if((p|0)==13)if(!(a[b+480>>0]|0)){c[f>>2]=g;d=0}else d=5;else if((p|0)==15)if(!(a[b+480>>0]|0)){c[f>>2]=g;d=0}else d=6;else if((p|0)==18){c[f>>2]=d;d=0}while(0);l=q;return d|0}function xW(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+16|0;y=B+8|0;z=B+4|0;x=B;i=c[e>>2]|0;c[y>>2]=i;if((c[b+144>>2]|0)==(d|0)){s=b+284|0;c[s>>2]=i;t=b+288|0}else{t=c[b+296>>2]|0;s=t;t=t+4|0}c[s>>2]=i;c[e>>2]=0;k=d+8|0;m=b+60|0;u=b+80|0;v=b+4|0;w=b+476|0;n=d+68|0;o=b+44|0;p=d+56|0;q=b+48|0;a:while(1){j=ob[c[k>>2]&127](d,c[y>>2]|0,f,z)|0;i=c[z>>2]|0;c[t>>2]=i;r=i;b:do switch(j|0){case 40:{A=6;break a}case 0:{A=23;break a}case -2:{A=24;break a}case -4:case -1:{A=26;break a}case 7:{i=c[m>>2]|0;if(i|0){a[x>>0]=10;vb[i&127](c[v>>2]|0,x,1);break b}if(c[u>>2]|0)hW(b,d,c[y>>2]|0,r);break}case 6:{j=c[m>>2]|0;if(!j){if(!(c[u>>2]|0))break b;hW(b,d,c[y>>2]|0,r);break b}if(!(a[n>>0]|0))i=r;else{r=c[y>>2]|0;vb[j&127](c[v>>2]|0,r,i-r|0);break b}while(1){c[x>>2]=c[o>>2];r=pb[c[p>>2]&127](d,y,i,x,c[q>>2]|0)|0;c[t>>2]=c[z>>2];i=c[o>>2]|0;vb[j&127](c[v>>2]|0,i,(c[x>>2]|0)-i|0);if(r>>>0<2)break;c[s>>2]=c[y>>2];i=c[z>>2]|0}break}default:{A=28;break a}}while(0);r=c[z>>2]|0;c[y>>2]=r;c[s>>2]=r;switch(c[w>>2]|0){case 3:{A=30;break a}case 2:{i=35;break a}default:{}}}if((A|0)==6){i=c[b+76>>2]|0;if(!i){if(c[u>>2]|0)hW(b,d,c[y>>2]|0,r)}else tb[i&127](c[v>>2]|0);i=c[z>>2]|0;c[e>>2]=i;c[g>>2]=i;i=(c[w>>2]|0)==2?35:0}else if((A|0)==23){c[s>>2]=i;i=4}else if((A|0)==24)if(!(h<<24>>24))i=6;else{c[g>>2]=c[y>>2];i=0}else if((A|0)==26)if(!(h<<24>>24))i=20;else{c[g>>2]=c[y>>2];i=0}else if((A|0)==28){c[s>>2]=i;i=23}else if((A|0)==30){c[g>>2]=c[z>>2];i=0}l=B;return i|0}function yW(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;d=xW(b,c[b+144>>2]|0,g,e,f,(a[b+480>>0]|0)==0&1)|0;g=c[g>>2]|0;do if(!((d|0)!=0|(g|0)==0)){d=b+276|0;if(!(c[b+472>>2]|0)){c[d>>2]=58;d=_V(b,g,e,f)|0;break}else{c[d>>2]=63;d=zW(b,g,e,f)|0;break}}while(0);l=h;return d|0}function zW(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;d=rW(b,1,c[b+144>>2]|0,d,e,f,(a[b+480>>0]|0)==0&1)|0;if((d|0)==0?(AW(b)|0)<<24>>24==0:0)d=1;return d|0}function AW(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=a+16|0;a=a+360|0;while(1){a=c[a>>2]|0;if(!a){a=1;break}i=(c[a+24>>2]|0)+1|0;j=a+36|0;f=c[j>>2]|0;e=f+i|0;l=a+4|0;d=c[l>>2]|0;if((d|0)==(e|0)){a=1;break}k=a+8|0;b=c[k>>2]|0;g=b+i|0;h=a+40|0;if((g|0)>((c[h>>2]|0)-f|0)){e=lb[c[m>>2]&127](f,g)|0;if(!e){a=0;break}b=a+12|0;f=c[j>>2]|0;if((c[b>>2]|0)==(f|0))c[b>>2]=e;b=a+16|0;d=c[b>>2]|0;if(d|0)c[b>>2]=e+(d-f);c[j>>2]=e;c[h>>2]=e+g;e=e+i|0;d=c[l>>2]|0;b=c[k>>2]|0}F3(e|0,d|0,b|0)|0;c[l>>2]=e}return a|0}function BW(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;f=b+12|0;g=b+8|0;while(1){e=c[f>>2]|0;if((e|0)==(c[g>>2]|0)){if(!((eW(b)|0)<<24>>24)){d=0;break}e=c[f>>2]|0}i=a[d>>0]|0;c[f>>2]=e+1;a[e>>0]=i;if(!(a[d>>0]|0)){h=6;break}else d=d+1|0}if((h|0)==6){i=b+16|0;d=c[i>>2]|0;c[i>>2]=c[f>>2]}return d|0}function CW(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=c[b+352>>2]|0;j=n+80|0;k=n+92|0;l=n+88|0;m=n+60|0;n=n+96|0;i=d+4|0;h=c[d>>2]|0;a:while(1){switch(a[h>>0]|0){case 0:{e=1;break a}case 58:{g=c[d>>2]|0;while(1){e=c[k>>2]|0;f=(e|0)==(c[l>>2]|0);if((g|0)==(h|0))break;if(f){if(!((eW(j)|0)<<24>>24)){e=0;break a}e=c[k>>2]|0}f=a[g>>0]|0;c[k>>2]=e+1;a[e>>0]=f;g=g+1|0}if(f){if(!((eW(j)|0)<<24>>24)){e=0;break a}e=c[k>>2]|0}c[k>>2]=e+1;a[e>>0]=0;e=YV(b,m,c[n>>2]|0,8)|0;if(!e){e=0;break a}f=c[n>>2]|0;if((c[e>>2]|0)==(f|0))c[n>>2]=c[k>>2];else c[k>>2]=f;c[i>>2]=e;break}default:{}}h=h+1|0}return e|0}function DW(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=a[f>>0]|0;i=c[d>>2]|0;h=(i|0)==0;do if(!(k<<24>>24))if(h){m=0;j=11}else h=28;else if(((!h?(a[i>>0]|0)==120:0)?(a[i+1>>0]|0)==109:0)?(a[i+2>>0]|0)==108:0){h=a[i+3>>0]|0;if((h<<24>>24==110?(a[i+4>>0]|0)==115:0)?(a[i+5>>0]|0)==0:0){h=39;break}m=h<<24>>24==0&1;j=11}else{m=0;j=11}while(0);a:do if((j|0)==11){l=m<<24>>24!=0;h=1;i=1;n=0;while(1){j=i<<24>>24!=0;if(!(k<<24>>24))break;do if(j){if((n|0)<=36?k<<24>>24==(a[139175+n>>0]|0):0)break;i=0}else i=0;while(0);do if(!(l|h<<24>>24==0)){if((n|0)<=29?k<<24>>24==(a[139212+n>>0]|0):0)break;h=0}while(0);k=n+1|0;n=k;k=a[f+k>>0]|0}if((m&255|0)!=(j&(n|0)==36&1|0)){h=l?38:40;break}if(!(h<<24>>24!=0&(n|0)==29)){o=b+468|0;n=n+((a[o>>0]|0)!=0&1)|0;h=b+372|0;j=c[h>>2]|0;do if(!j){h=b+12|0;i=kb[c[h>>2]&63](28)|0;if(!i){h=1;break a}j=n+24|0;m=kb[c[h>>2]&63](j)|0;c[i+16>>2]=m;if(!m){tb[c[b+20>>2]&127](i);h=1;break a}else{c[i+24>>2]=j;j=i;break}}else{i=j+24|0;if((n|0)>(c[i>>2]|0)){k=j+16|0;l=n+24|0;m=lb[c[b+16>>2]&127](c[k>>2]|0,l)|0;if(!m){h=1;break a}c[k>>2]=m;c[i>>2]=l}c[h>>2]=c[j+4>>2]}while(0);c[j+20>>2]=n;i=j+16|0;F3(c[i>>2]|0,f|0,n|0)|0;h=a[o>>0]|0;if(h<<24>>24)a[(c[i>>2]|0)+(n+-1)>>0]=h;c[j>>2]=d;c[j+12>>2]=e;i=d+4|0;c[j+8>>2]=c[i>>2];if((a[f>>0]|0)==0?((c[b+352>>2]|0)+152|0)==(d|0):0)h=0;else h=j;c[i>>2]=h;c[j+4>>2]=c[g>>2];c[g>>2]=j;if((e|0)!=0?(p=c[b+100>>2]|0,(p|0)!=0):0){vb[p&127](c[b+4>>2]|0,c[d>>2]|0,c[i>>2]|0?f:0);h=0}else h=0}else h=40}while(0);return h|0}function EW(a,b){a=a|0;b=b|0;var d=0;d=b;c[d>>2]=0;c[d+4>>2]=0;b=b+8|0;c[b>>2]=KW(a)|0;c[b+4>>2]=0;return}function FW(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=b;g=c[d+4>>2]^1936682341;e=a;c[e>>2]=c[d>>2]^1886610805;c[e+4>>2]=g;e=b+8|0;g=e;d=c[g+4>>2]^1685025377;f=a+8|0;c[f>>2]=c[g>>2]^1852075885;c[f+4>>2]=d;f=b;b=c[f+4>>2]^1819895653;d=a+16|0;c[d>>2]=c[f>>2]^1852142177;c[d+4>>2]=b;d=c[e+4>>2]^1952801890;b=a+24|0;c[b>>2]=c[e>>2]^2037671283;c[b+4>>2]=d;c[a+40>>2]=a+32;b=a+48|0;c[b>>2]=0;c[b+4>>2]=0;return}function GW(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0;n=e+f|0;o=b+40|0;p=b+40|0;q=b+32|0;r=b+33|0;s=b+34|0;t=b+35|0;h=b+36|0;i=b+37|0;j=b+38|0;k=b+39|0;l=b+24|0;m=b+48|0;f=e;do{while(1){g=c[o>>2]|0;if(f>>>0>=n>>>0){e=0;break}if(g>>>0>=p>>>0){e=1;break}e=a[f>>0]|0;c[o>>2]=g+1;a[g>>0]=e;f=f+1|0}if(g>>>0<p>>>0)break;A=d[q>>0]|0;B=A3(d[r>>0]|0|0,0,8)|0;g=z;y=A3(d[s>>0]|0|0,0,16)|0;g=g|z;w=A3(d[t>>0]|0|0,0,24)|0;g=g|z|(d[h>>0]|0);u=A3(d[i>>0]|0|0,0,40)|0;g=g|z;x=A3(d[j>>0]|0|0,0,48)|0;g=g|z;v=A3(d[k>>0]|0|0,0,56)|0;v=B|A|y|w|u|x|v;g=g|z;x=l;u=g^c[x+4>>2];w=l;c[w>>2]=v^c[x>>2];c[w+4>>2]=u;JW(b,2);w=b;g=c[w+4>>2]^g;u=b;c[u>>2]=c[w>>2]^v;c[u+4>>2]=g;c[o>>2]=q;u=m;u=s3(c[u>>2]|0,c[u+4>>2]|0,8,0)|0;g=m;c[g>>2]=u;c[g+4>>2]=z}while(e);return}function HW(b){b=b|0;var c=0;c=0;while(1){if(!(a[b>>0]|0))break;c=c+1|0;b=b+1|0}return c|0}function IW(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0;f=a+32|0;h=(c[a+40>>2]|0)-f|0;e=a+48|0;e=s3(c[e>>2]|0,c[e+4>>2]|0,h|0,0)|0;e=A3(e|0,z|0,56)|0;b=z;switch(h<<24>>24|0){case 7:{e=A3(d[a+38>>0]|0|0,0,48)|0|e;b=z|b;g=3;break}case 6:{g=3;break}case 5:{g=4;break}case 4:{g=5;break}case 3:{g=6;break}case 2:{g=7;break}case 1:{g=8;break}default:{}}if((g|0)==3){h=A3(d[a+37>>0]|0|0,0,40)|0;e=h|e;b=z|b;g=4}if((g|0)==4){b=d[a+36>>0]|0|b;g=5}if((g|0)==5){h=A3(d[a+35>>0]|0|0,0,24)|0;e=h|e;b=z|b;g=6}if((g|0)==6){h=A3(d[a+34>>0]|0|0,0,16)|0;e=h|e;b=z|b;g=7}if((g|0)==7){h=A3(d[a+33>>0]|0|0,0,8)|0;b=z|b;e=h|e;g=8}if((g|0)==8)e=e|(d[f>>0]|0);h=a+24|0;i=h;g=c[i+4>>2]^b;f=h;c[f>>2]=c[i>>2]^e;c[f+4>>2]=g;JW(a,2);f=a;b=c[f+4>>2]^b;g=a;c[g>>2]=c[f>>2]^e;c[g+4>>2]=b;g=a+16|0;b=g;e=c[b+4>>2]|0;f=g;c[f>>2]=c[b>>2]^255;c[f+4>>2]=e;JW(a,4);f=a;a=a+8|0;z=c[a+4>>2]^c[f+4>>2]^c[g+4>>2]^c[h+4>>2];return c[a>>2]^c[f>>2]^c[g>>2]^c[h>>2]|0}function JW(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=a+8|0;f=a+24|0;g=a+16|0;d=0;while(1){if((d|0)>=(b|0))break;h=e;n=c[h>>2]|0;h=c[h+4>>2]|0;o=a;o=s3(c[o>>2]|0,c[o+4>>2]|0,n|0,h|0)|0;k=z;m=A3(n|0,h|0,13)|0;l=z;h=z3(n|0,h|0,51)|0;h=(m|h)^o;l=(l|z)^k;m=f;n=c[m>>2]|0;m=c[m+4>>2]|0;j=g;j=s3(c[j>>2]|0,c[j+4>>2]|0,n|0,m|0)|0;i=z;q=A3(n|0,m|0,16)|0;p=z;m=z3(n|0,m|0,48)|0;m=(q|m)^j;p=(p|z)^i;o=s3(k|0,o|0,m|0,p|0)|0;k=z;q=a;c[q>>2]=o;c[q+4>>2]=k;q=A3(m|0,p|0,21)|0;n=z;p=z3(m|0,p|0,43)|0;m=f;c[m>>2]=(q|p)^o;c[m+4>>2]=(n|z)^k;i=s3(j|0,i|0,h|0,l|0)|0;j=z;m=A3(h|0,l|0,17)|0;k=z;l=z3(h|0,l|0,47)|0;h=e;c[h>>2]=(m|l)^i;c[h+4>>2]=(k|z)^j;h=g;c[h>>2]=j;c[h+4>>2]=i;d=d+1|0}return}function KW(a){a=a|0;var b=0;while(1){b=c[a+472>>2]|0;if(!b)break;else a=b}return c[a+492>>2]|0}function LW(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;L=l;l=l+16|0;I=L;J=L+4|0;K=c[b+352>>2]|0;o=d+16|0;p=d+40|0;q=b+144|0;r=b+284|0;s=e<<24>>24==0;t=h+12|0;v=h+16|0;w=h+8|0;x=d+44|0;y=d+64|0;z=b+436|0;A=b+452|0;B=b+448|0;C=(K+80|0)==(h|0);D=b+268|0;E=K+130|0;F=K+129|0;G=b+296|0;H=b+224|0;i=0;a:while(1){b:while(1){switch(ob[c[o>>2]&127](d,f,g,I)|0){case -4:{i=0;n=61;break a}case 0:{n=4;break a}case -1:{n=6;break a}case 6:{n=21;break b}case -3:{n=22;break b}case 7:case 39:{n=23;break b}case 10:{j=lb[c[p>>2]&127](d,f)|0;c:do if((j|0)<0)if((c[q>>2]|0)==(d|0)){c[r>>2]=f;j=1;i=14}else{j=1;i=14}else{if(s&(j|0)==32){k=c[t>>2]|0;if((c[v>>2]|0)==(k|0)){j=4;break}if((a[k+-1>>0]|0)==32){j=4;break}}m=gX(j,J)|0;k=0;while(1){if((k|0)>=(m|0)){j=0;break c}j=c[t>>2]|0;if((j|0)==(c[w>>2]|0)){if(!((eW(h)|0)<<24>>24)){j=1;i=1;break c}j=c[t>>2]|0}M=a[J+k>>0]|0;c[t>>2]=j+1;a[j>>0]=M;k=k+1|0}}while(0);switch(j&7){case 4:case 0:break b;default:{}}break}case 9:{j=c[y>>2]|0;j=(nb[c[x>>2]&63](d,f+j|0,(c[I>>2]|0)+(0-j)|0)|0)&255;if(j<<24>>24){n=31;break b}j=c[y>>2]|0;j=WV(z,d,f+j|0,(c[I>>2]|0)+(0-j)|0)|0;if(!j){i=1;n=61;break a}m=YV(b,K,j,0)|0;c[B>>2]=c[A>>2];do if(C){if(!(c[D>>2]|0))if(!m)break b;else break;if(!(a[E>>0]|0)){j=(m|0)!=0;if(!(a[F>>0]|0)){n=45;break}else{u=j;n=47;break}}else{j=(m|0)!=0;if(!(c[G>>2]|0)){n=45;break}else{u=j;n=47;break}}}else if(!(a[F>>0]|0))if(!m){i=11;n=61;break a}else{n=46;break}else{j=(m|0)!=0;if(!(a[E>>0]|0)){u=j;n=47;break}else{n=45;break}}while(0);if((n|0)==45)if(j)n=46;else{i=11;n=61;break a}else if((n|0)==47?(n=0,!u):0)break b;if((n|0)==46?(n=0,(a[m+34>>0]|0)==0):0){i=24;n=61;break a}k=m+32|0;if(a[k>>0]|0){n=49;break a}if(c[m+28>>2]|0){n=52;break a}j=c[m+4>>2]|0;if(!j){n=55;break a}m=j+(c[m+8>>2]|0)|0;a[k>>0]=1;m=LW(b,c[H>>2]|0,e,j,m,h)|0;a[k>>0]=0;j=(m|0)==0;if(j)break b;else{j=(j^1)&1;i=m}break}default:{n=58;break a}}if(j)break a}if((n|0)==21){n=0;if(!(cW(h,d,f,c[I>>2]|0)|0)){i=1;n=61;break}}else if((n|0)==22){c[I>>2]=f+(c[y>>2]|0);n=23}else if((n|0)==31){n=0;f=c[t>>2]|0;if((f|0)==(c[w>>2]|0)){if(!((eW(h)|0)<<24>>24)){i=1;n=61;break}f=c[t>>2]|0}c[t>>2]=f+1;a[f>>0]=j}do if((n|0)==23){n=0;f=c[t>>2]|0;if(s){if((c[v>>2]|0)==(f|0))break;if((a[f+-1>>0]|0)==32)break}if((f|0)==(c[w>>2]|0)){if(!((eW(h)|0)<<24>>24)){i=1;n=61;break a}f=c[t>>2]|0}c[t>>2]=f+1;a[f>>0]=32}while(0);f=c[I>>2]|0}if((n|0)==4)if((c[q>>2]|0)==(d|0)){c[r>>2]=c[I>>2];i=4;n=61}else{i=4;n=61}else if((n|0)==6)if((c[q>>2]|0)==(d|0)){c[r>>2]=f;i=4;n=61}else{i=4;n=61}else if((n|0)==49)if((c[q>>2]|0)==(d|0)){c[r>>2]=f;i=12;n=61}else{i=12;n=61}else if((n|0)==52)if((c[q>>2]|0)==(d|0)){c[r>>2]=f;i=15;n=61}else{i=15;n=61}else if((n|0)==55)if((c[q>>2]|0)==(d|0)){c[r>>2]=f;i=16;n=61}else{i=16;n=61}else if((n|0)==58)if((c[q>>2]|0)==(d|0)){c[r>>2]=f;i=23;n=61}else{i=23;n=61}l=L;return i|0}function MW(a){a=a|0;var b=0;b=a+8|0;return ((a|0)<1?0:(b|0)>0?b:0)|0}function NW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+80|0;d=c+16|0;e=c;EW(a,e);FW(d,e);GW(d,b,HW(b)|0);b=IW(d)|0;l=c;return b|0}function OW(b,c){b=b|0;c=c|0;var d=0;while(1){d=a[b>>0]|0;if(d<<24>>24!=(a[c>>0]|0)){c=0;break}if(!(d<<24>>24)){c=1;break}c=c+1|0;b=b+1|0}return c|0}function PW(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+1040|0;i=k;f=c[b+124>>2]|0;a:do if(!f)e=18;else{e=0;while(1){if((e|0)==256)break;c[i+(e<<2)>>2]=-1;e=e+1|0}g=i+1028|0;c[g>>2]=0;j=i+1024|0;c[j>>2]=0;h=i+1032|0;c[h>>2]=0;do if(nb[f&63](c[b+244>>2]|0,d,i)|0){f=c[b+12>>2]|0;e=hX()|0;e=kb[f&63](e)|0;c[b+236>>2]=e;if(!e){e=c[h>>2]|0;if(!e)e=1;else{tb[e&127](c[j>>2]|0);e=1}}else{e=ob[(a[b+232>>0]<<24>>24?65:64)&127](e,i,c[g>>2]|0,c[j>>2]|0)|0;if(!e)break;c[b+240>>2]=c[j>>2];c[b+248>>2]=c[h>>2];c[b+144>>2]=e;e=0}break a}while(0);e=c[h>>2]|0;if(e|0)tb[e&127](c[j>>2]|0);e=18}while(0);l=k;return e|0}function QW(b,d){b=b|0;d=d|0;a[b+4>>0]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b>>2]=0;c[b+16>>2]=d;return}function RW(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=c[b+352>>2]|0;m=b+424|0;n=b+420|0;o=b+412|0;p=b+428|0;q=l+152|0;r=b+368|0;j=l+60|0;k=l+80|0;a:while(1){h=d;b:while(1){if(!(a[d>>0]|0)){d=1;break a}f=a[h>>0]|0;switch(f<<24>>24){case 0:case 12:{s=5;break b}case 61:break b;default:{}}e=c[m>>2]|0;if((e|0)==(c[n>>2]|0)){if(!((eW(o)|0)<<24>>24)){d=0;break a}e=c[m>>2]|0;f=a[h>>0]|0}c[m>>2]=e+1;a[e>>0]=f;h=h+1|0}if((s|0)==5){s=0;d=c[m>>2]|0;if((d|0)==(c[n>>2]|0)){if(!((eW(o)|0)<<24>>24)){d=0;break}d=c[m>>2]|0}c[m>>2]=d+1;a[d>>0]=0;d=YV(b,l,c[p>>2]|0,0)|0;if(d|0)a[d+32>>0]=1;d=(a[h>>0]|0)==0?h:h+1|0;c[m>>2]=c[p>>2];continue}d=c[m>>2]|0;if((c[p>>2]|0)==(d|0))f=q;else{if((d|0)==(c[n>>2]|0)){if(!((eW(o)|0)<<24>>24)){d=0;break}d=c[m>>2]|0}c[m>>2]=d+1;a[d>>0]=0;f=YV(b,j,c[p>>2]|0,8)|0;if(!f){d=0;break}e=c[f>>2]|0;i=c[p>>2]|0;d=i;if((e|0)==(i|0)){i=BW(k,e)|0;c[f>>2]=i;if(!i){d=0;break}d=c[p>>2]|0}c[m>>2]=d}c:while(1){i=h+1|0;e=a[i>>0]|0;g=(d|0)==(c[n>>2]|0);switch(e<<24>>24){case 0:case 12:break c;default:{}}if(g){if(!((eW(o)|0)<<24>>24)){d=0;break a}d=c[m>>2]|0;e=a[i>>0]|0}c[m>>2]=d+1;a[d>>0]=e;h=i;d=c[m>>2]|0}if(g){if(!((eW(o)|0)<<24>>24)){d=0;break}d=c[m>>2]|0}c[m>>2]=d+1;a[d>>0]=0;if(DW(b,f,0,c[p>>2]|0,r)|0){d=0;break}c[m>>2]=c[p>>2];d=(a[i>>0]|0)==0?i:h+2|0}return d|0}function SW(a,b){a=a|0;b=b|0;var d=0,e=0;if(a|0?(d=a+4|0,e=(c[d>>2]|0)==(c[a>>2]|0),c[a>>2]=b,e):0)c[d>>2]=b;return}function TW(a,b,d){a=a|0;b=b|0;d=d|0;if(a|0){c[a+52>>2]=b;c[a+56>>2]=d}return}function UW(a,b){a=a|0;b=b|0;if(a|0)c[a+60>>2]=b;return}function VW(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=(b|0)==0;a:do if(!(g|(e|0)<0)?!((d|0)==0&(e|0)!=0):0){h=b+476|0;switch(c[h>>2]|0){case 3:{c[b+280>>2]=33;g=0;break a}case 2:{c[b+280>>2]=36;g=0;break a}case 0:{if((c[b+472>>2]|0)==0?(WW(b)|0)<<24>>24==0:0){c[b+280>>2]=1;g=0;break a}break}default:{}}c[h>>2]=1;if(e|0){g=YW(b,e)|0;if(!g){g=0;break}F3(g|0,d|0,e|0)|0;g=ZW(b,e,f)|0;break}a[b+480>>0]=f;if(!f)g=1;else{g=b+24|0;j=c[g>>2]|0;d=b+292|0;c[d>>2]=j;f=c[b+28>>2]|0;c[b+40>>2]=f;e=b+276|0;f=ob[c[e>>2]&127](b,j,f,g)|0;c[b+280>>2]=f;if(f|0){c[b+288>>2]=c[b+284>>2];c[e>>2]=66;g=0;break}switch(c[h>>2]|0){case 3:{j=c[b+144>>2]|0;xb[c[j+48>>2]&31](j,c[d>>2]|0,c[g>>2]|0,b+404|0);c[d>>2]=c[g>>2];g=2;break a}case 1:case 0:{c[h>>2]=2;g=1;break a}default:{g=1;break a}}}}else i=3;while(0);if((i|0)==3)if(g)g=0;else{c[b+280>>2]=41;g=0}return g|0}function WW(b){b=b|0;var d=0;d=b+492|0;if(!(c[d>>2]|0))c[d>>2]=_W()|0;if(!(a[b+232>>0]|0))b=1;else b=RW(b,139242)|0;return b|0}function XW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;return c[a+280>>2]|0}function YW(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!a)d=0;else{if((b|0)<0){c[a+280>>2]=1;d=0;break}switch(c[a+476>>2]|0){case 3:{c[a+280>>2]=33;d=0;break a}case 2:{c[a+280>>2]=36;d=0;break a}default:{m=a+32|0;j=c[m>>2]|0;n=a+28|0;e=c[n>>2]|0;d=e;if((j-e|0)>=(b|0))break a;p=a+24|0;k=c[p>>2]|0;i=e-k|0;e=i+b|0;if((e|0)<0){c[a+280>>2]=1;d=0;break a}l=a+8|0;f=c[l>>2]|0;q=f;g=k-q|0;h=(g|0)>1024;b=h?1024:g;e=b+e|0;do if((e|0)>(j-q|0)){d=j-k|0;d=(d|0)==0?1024:d;do d=d<<1;while((d|0)<(e|0)&(d|0)>0);if((d|0)<1){c[a+280>>2]=1;d=0;break a}e=kb[c[a+12>>2]&63](d)|0;if(!e){c[a+280>>2]=1;d=0;break a}c[m>>2]=e+d;d=c[p>>2]|0;if(!d){d=e+(c[n>>2]|0)|0;c[n>>2]=d;c[l>>2]=e;o=22;break}else{q=d;o=q-(c[l>>2]|0)|0;o=(o|0)<1024?o:1024;F3(e|0,d+(0-o)|0,(c[n>>2]|0)-q+o|0)|0;tb[c[a+20>>2]&127](c[l>>2]|0);c[l>>2]=e;d=e+((c[n>>2]|0)-(c[p>>2]|0))+o|0;c[n>>2]=d;e=e+o|0;o=22;break}}else if(h){e=g-b|0;G3(f|0,f+e|0,b+i|0)|0;e=0-e|0;d=(c[n>>2]|0)+e|0;c[n>>2]=d;e=(c[p>>2]|0)+e|0;o=22}while(0);if((o|0)==22)c[p>>2]=e;c[a+288>>2]=0;c[a+284>>2]=0;c[a+292>>2]=0;break a}}}while(0);return d|0}function ZW(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;a:do if(!b)d=0;else{f=b+476|0;switch(c[f>>2]|0){case 3:{c[b+280>>2]=33;d=0;break a}case 2:{c[b+280>>2]=36;d=0;break a}case 0:{if((c[b+472>>2]|0)==0?(WW(b)|0)<<24>>24==0:0){c[b+280>>2]=1;d=0;break a}break}default:{}}c[f>>2]=1;g=b+24|0;j=c[g>>2]|0;h=b+292|0;c[h>>2]=j;k=b+28|0;i=(c[k>>2]|0)+d|0;c[k>>2]=i;c[b+40>>2]=i;k=b+36|0;c[k>>2]=(c[k>>2]|0)+d;a[b+480>>0]=e;d=b+276|0;i=ob[c[d>>2]&127](b,j,i,g)|0;c[b+280>>2]=i;if(i|0){c[b+288>>2]=c[b+284>>2];c[d>>2]=66;d=0;break}switch(c[f>>2]|0){case 3:{d=2;break}case 1:case 0:{if(!e)d=1;else{c[f>>2]=2;d=1;break a}break}default:d=1}k=c[b+144>>2]|0;xb[c[k+48>>2]&31](k,c[h>>2]|0,c[g>>2]|0,b+404|0);c[h>>2]=c[g>>2]}while(0);return d|0}function _W(){var a=0,b=0,d=0;b=l;l=l+16|0;a=b;if(!($W(a)|0)){d=bX()|0;d=(H1()|0)^d;c[a>>2]=d;a=aX(139296,O(d,2147483647)|0)|0}else a=aX(139283,c[a>>2]|0)|0;l=b;return a|0}function $W(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=X_(139283,0,f)|0;if((e|0)<0)b=0;else{b=0;while(1){g=G1(e,a+b|0,4-b|0)|0;d=g+b|0;if((g|0)>0)if(d>>>0<4)b=d;else{b=1;break}if((c[(O_()|0)>>2]|0)!=4){b=0;break}}X0(e)|0}l=f;return b|0}function aX(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;e=f;d=Ta(139361)|0;if(d|0?(b$(d,139381)|0)==0:0){d=c[15686]|0;c[e>>2]=a;c[e+4>>2]=8;c[e+8>>2]=b;c[e+12>>2]=4;g1(d,139383,e)|0}l=f;return b|0}function bX(){var a=0,b=0;b=l;l=l+16|0;a=b;if(!(Ua(a|0,0)|0)){l=b;return c[a+4>>2]|0}else qa(139308,139330,819,139341);return 0}function cX(a){a=a|0;if(!a)a=41;else a=c[a+280>>2]|0;return a|0}function dX(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if(!a)a=0;else{b=a+284|0;d=c[b>>2]|0;if(d|0?(e=a+292|0,f=c[e>>2]|0,d>>>0>=f>>>0):0){g=c[a+144>>2]|0;xb[c[g+48>>2]&31](g,f,d,a+404|0);c[e>>2]=c[b>>2]}a=(c[a+404>>2]|0)+1|0}return a|0}function eX(a){a=a|0;do switch(a|0){case 41:{a=139420;break}case 1:{a=140692;break}case 2:{a=140679;break}case 3:{a=140662;break}case 4:{a=140630;break}case 5:{a=140615;break}case 6:{a=140597;break}case 7:{a=140582;break}case 8:{a=140562;break}case 9:{a=140534;break}case 10:{a=140499;break}case 11:{a=140482;break}case 12:{a=140455;break}case 13:{a=140435;break}case 14:{a=140397;break}case 15:{a=140370;break}case 16:{a=140328;break}case 17:{a=140281;break}case 18:{a=140264;break}case 19:{a=140213;break}case 20:{a=140190;break}case 21:{a=140144;break}case 22:{a=140117;break}case 23:{a=140066;break}case 24:{a=140030;break}case 25:{a=139978;break}case 26:{a=139933;break}case 27:{a=139918;break}case 28:{a=139892;break}case 29:{a=139854;break}case 30:{a=139822;break}case 31:{a=139789;break}case 32:{a=139755;break}case 33:{a=139738;break}case 34:{a=139717;break}case 35:{a=139701;break}case 36:{a=139684;break}case 37:{a=139640;break}case 38:{a=139560;break}case 39:{a=139501;break}case 40:{a=139437;break}default:a=0}while(0);return a|0}function fX(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;e=c[b>>2]|0;f=0;a:while(1){if(e>>>0<=a>>>0)break;h=e+-1|0;g=d[h>>0]|0;do if((g&248|0)==240)if((f+1|0)>>>0>3){i=5;break a}else f=0;else{if((g&240|0)==224)if((f+1|0)>>>0>2){i=8;break a}else{f=0;break}if((g&224|0)==192)if((f+1|0)>>>0>1){i=11;break a}else{f=0;break}else if(!(g&128))break a;else break}while(0);e=h;f=f+1|0}if((i|0)==5)e=e+3|0;else if((i|0)==8)e=e+2|0;else if((i|0)==11)e=e+1|0;c[b>>2]=e;return}function gX(b,c){b=b|0;c=c|0;do if((b|0)>=0){if((b|0)<128){a[c>>0]=b;b=1;break}if((b|0)<2048){a[c>>0]=b>>>6|192;a[c+1>>0]=b&63|128;b=2;break}if((b|0)<65536){a[c>>0]=b>>>12|224;a[c+1>>0]=b>>>6&63|128;a[c+2>>0]=b&63|128;b=3;break}if((b|0)<1114112){a[c>>0]=b>>>18|240;a[c+1>>0]=b>>>12&63|128;a[c+2>>0]=b>>>6&63|128;a[c+3>>0]=b&63|128;b=4}else b=0}else b=0;while(0);return b|0}function hX(){return 1908}function iX(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=0;while(1){if((i|0)==364){i=0;break}a[e+i>>0]=a[56472+i>>0]|0;i=i+1|0}a:while(1){if((i|0)>=128){j=5;break}switch(a[56544+i>>0]|0){case 0:case 28:break;default:if((c[f+(i<<2)>>2]|0)!=(i|0)){e=0;break a}}i=i+1|0}b:do if((j|0)==5){q=e+72|0;m=e+372|0;n=e+884|0;o=(g|0)==0;l=0;while(1){if((l|0)>=256)break;p=c[f+(l<<2)>>2]|0;do if((p|0)==-1){a[q+l>>0]=1;b[m+(l<<1)>>1]=-1;a[n+(l<<2)>>0]=1;a[n+(l<<2)+1>>0]=0}else{if((p|0)<0){if(o|(p|0)<-4){e=0;break b}a[q+l>>0]=3-p;a[n+(l<<2)>>0]=0;b[m+(l<<1)>>1]=0;break}if((p|0)<128){i=a[56544+p>>0]|0;switch(i<<24>>24){case 0:case 28:break;default:if((p|0)!=(l|0)){e=0;break b}}a[q+l>>0]=i;a[n+(l<<2)>>0]=1;a[n+(l<<2)+1>>0]=p;b[m+(l<<1)>>1]=(p|0)==0?-1:p&65535;break}if((jX(p)|0)<0){a[q+l>>0]=0;b[m+(l<<1)>>1]=-1;a[n+(l<<2)>>0]=1;a[n+(l<<2)+1>>0]=0;break}if((p|0)>65535){e=0;break b}i=p>>>8;j=p>>>5&7;k=1<<(p&31);if(!(c[56836+((d[140706+i>>0]<<3|j)<<2)>>2]&k))a[q+l>>0]=c[56836+((d[140962+i>>0]<<3|j)<<2)>>2]&k|0?26:28;else a[q+l>>0]=22;a[n+(l<<2)>>0]=gX(p,n+(l<<2)+1|0)|0;b[m+(l<<1)>>1]=p}while(0);l=l+1|0}c[e+368>>2]=h;c[e+364>>2]=g;if(!o){c[e+328>>2]=106;c[e+332>>2]=106;c[e+336>>2]=106;c[e+340>>2]=107;c[e+344>>2]=107;c[e+348>>2]=107;c[e+352>>2]=108;c[e+356>>2]=108;c[e+360>>2]=108}c[e+56>>2]=13;c[e+60>>2]=14}while(0);return e|0}function jX(b){b=b|0;var c=0;switch(b>>8|0){case 223:case 222:case 221:case 220:case 219:case 218:case 217:case 216:{b=-1;break}case 0:{if(!(a[56544+b>>0]|0))b=-1;else c=4;break}case 255:{if((b|1|0)==65535)b=-1;else c=4;break}default:c=4}return b|0}function kX(a,b){a=a|0;b=b|0;a=lb[c[a+364>>2]&127](c[a+368>>2]|0,b)|0;if(a>>>0>65535)a=0;else a=c[56836+(((d[140962+(a>>>8)>>0]|0)<<3|a>>>5&7)<<2)>>2]&1<<(a&31);return a|0}function lX(a,b){a=a|0;b=b|0;a=lb[c[a+364>>2]&127](c[a+368>>2]|0,b)|0;if(a>>>0>65535)a=0;else a=c[56836+(((d[140706+(a>>>8)>>0]|0)<<3|a>>>5&7)<<2)>>2]&1<<(a&31);return a|0}function mX(a,b){a=a|0;b=b|0;a=lb[c[a+364>>2]&127](c[a+368>>2]|0,b)|0;if(a>>>0>65535)a=1;else a=(jX(a)|0)>>>31;return a|0}function nX(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;m=q;n=b+364|0;o=b+884|0;p=b+368|0;k=b+72|0;while(1){i=c[e>>2]|0;if((i|0)==(f|0)){h=0;break}r=d[i>>0]|0;j=o+(r<<2)+1|0;r=a[o+(r<<2)>>0]|0;b=r<<24>>24;if(!(r<<24>>24)){b=gX(lb[c[n>>2]&127](c[p>>2]|0,i)|0,m)|0;if((b|0)>(h-(c[g>>2]|0)|0)){h=2;break}i=c[e>>2]|0;j=m;i=i+((d[k+(d[i>>0]|0)>>0]|0)+-3)|0}else{if((h-(c[g>>2]|0)|0)<(b|0)){h=2;break}i=i+1|0}c[e>>2]=i;F3(c[g>>2]|0,j|0,b|0)|0;c[g>>2]=(c[g>>2]|0)+b}l=q;return h|0}function oX(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=a+372|0;n=a+364|0;o=a+368|0;l=a+72|0;while(1){k=c[e>>2]|0;a=k>>>0<f>>>0;i=c[g>>2]|0;if(!(a&i>>>0<h>>>0))break;a=b[m+((d[k>>0]|0)<<1)>>1]|0;if(!(a<<16>>16)){a=(lb[c[n>>2]&127](c[o>>2]|0,k)|0)&65535;i=c[e>>2]|0;j=(d[l+(d[i>>0]|0)>>0]|0)+-3|0}else{j=1;i=k}c[e>>2]=i+j;k=c[g>>2]|0;c[g>>2]=k+2;b[k>>1]=a}return ((i|0)!=(h|0)|a^1?0:2)|0}function pX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;a:do if(e>>>0<f>>>0){n=b+72|0;do switch(a[n+(d[e>>0]|0)>>0]|0){case 12:{h=QX(12,b,e+1|0,f,g)|0;break a}case 13:{h=QX(13,b,e+1|0,f,g)|0;break a}case 2:{h=e+1|0;if((f-h|0)<=0){h=-1;break a}switch(a[n+(d[h>>0]|0)>>0]|0){case 16:{h=RX(b,e+2|0,f,g)|0;break a}case 15:{h=MX(b,e+2|0,f,g)|0;break a}case 7:case 6:case 5:case 29:case 24:case 22:{c[g>>2]=e;h=29;break a}default:{c[g>>2]=h;h=0;break a}}}case 9:{if((e+1|0)==(f|0)){c[g>>2]=f;h=-15;break a}else k=3;break}case 10:case 21:{k=3;break}case 30:{h=GX(b,e+1|0,f,g)|0;break a}case 35:{c[g>>2]=e+1;h=38;break a}case 20:{c[g>>2]=e+1;h=25;break a}case 4:{i=e+1|0;h=f-i|0;if((h|0)<=0){h=-26;break a}if((a[i>>0]|0)==93){if((h|0)<=1){h=-1;break a}if((a[e+2>>0]|0)==62){c[g>>2]=e+3;h=34;break a}}c[g>>2]=i;h=26;break a}case 31:{c[g>>2]=e+1;h=23;break a}case 32:{h=e+1|0;if((f-h|0)<=0){h=-24;break a}switch(a[n+(d[h>>0]|0)>>0]|0){case 33:{c[g>>2]=e+2;h=36;break a}case 15:{c[g>>2]=e+2;h=35;break a}case 34:{c[g>>2]=e+2;h=37;break a}case 32:case 36:case 35:case 11:case 21:case 10:case 9:{c[g>>2]=h;h=24;break a}default:{c[g>>2]=h;h=0;break a}}}case 36:{c[g>>2]=e+1;h=21;break a}case 11:{c[g>>2]=e+1;h=17;break a}case 19:{h=SX(b,e+1|0,f,g)|0;break a}case 5:{if((f-e|0)<2){h=-2;break a}if(!(lb[c[b+340>>2]&127](b,e)|0))if(!(lb[c[b+328>>2]&127](b,e)|0)){c[g>>2]=e;h=0;break a}else{h=19;i=2}else{h=18;i=2}break}case 6:{if((f-e|0)<3){h=-2;break a}if(!(lb[c[b+344>>2]&127](b,e)|0))if(!(lb[c[b+332>>2]&127](b,e)|0)){c[g>>2]=e;h=0;break a}else{h=19;i=3}else{h=18;i=3}break}case 7:{if((f-e|0)<4){h=-2;break a}if(!(lb[c[b+348>>2]&127](b,e)|0))if(!(lb[c[b+336>>2]&127](b,e)|0)){c[g>>2]=e;h=0;break a}else{h=19;i=4}else{h=18;i=4}break}case 24:case 22:{h=18;i=1;break}case 23:case 27:case 26:case 25:{h=19;i=1;break}default:{c[g>>2]=e;h=0;break a}}while(0);if((k|0)==3){j=f;i=e;b:while(1){h=i;i=i+1|0;if((j-i|0)<=0){k=18;break}switch(a[n+(d[i>>0]|0)>>0]|0){case 10:case 21:continue b;case 9:break;default:{k=17;break b}}if((h+2|0)==(f|0)){k=17;break}}if((k|0)==17){c[g>>2]=i;h=15;break}else if((k|0)==18){c[g>>2]=i;h=15;break}}k=b+328|0;l=b+332|0;m=b+336|0;j=e+i|0;c:while(1){i=f-j|0;if((i|0)<=0){k=99;break}switch(a[n+(d[j>>0]|0)>>0]|0){case 29:{k=56;break c}case 10:case 9:case 21:case 30:case 20:case 36:case 35:case 32:case 11:{k=70;break c}case 34:{k=89;break c}case 33:{k=92;break c}case 15:{k=95;break c}case 27:case 26:case 25:case 24:case 22:{e=h;j=j+1|0;h=e;continue c}case 5:{if((i|0)<2){h=-2;break a}if(!(lb[c[k>>2]&127](b,j)|0)){k=60;break c}e=h;j=j+2|0;h=e;continue c}case 6:{if((i|0)<3){h=-2;break a}if(!(lb[c[l>>2]&127](b,j)|0)){k=64;break c}e=h;j=j+3|0;h=e;continue c}case 7:{if((i|0)<4){h=-2;break a}if(!(lb[c[m>>2]&127](b,j)|0)){k=68;break c}e=h;j=j+4|0;h=e;continue c}case 23:{i=j+1|0;switch(h&63){case 18:break;case 41:{h=19;j=i;continue c}default:{e=h;j=i;h=e;continue c}}h=f-i|0;if((h|0)<=0){h=-1;break a}switch(a[n+(d[i>>0]|0)>>0]|0){case 29:{k=74;break c}case 27:case 26:case 25:case 24:case 22:{h=41;j=j+2|0;continue c}case 5:{if((h|0)<2){h=-2;break a}if(!(lb[c[k>>2]&127](b,i)|0)){k=78;break c}h=41;j=j+3|0;continue c}case 6:{if((h|0)<3){h=-2;break a}if(!(lb[c[l>>2]&127](b,i)|0)){k=82;break c}h=41;j=j+4|0;continue c}case 7:{if((h|0)<4){h=-2;break a}if(!(lb[c[m>>2]&127](b,i)|0)){k=86;break c}h=41;j=j+5|0;continue c}default:{h=19;j=i;continue c}}}default:{k=98;break c}}}switch(k|0){case 56:{c[g>>2]=j;h=0;break a}case 60:{c[g>>2]=j;h=0;break a}case 64:{c[g>>2]=j;h=0;break a}case 68:{c[g>>2]=j;h=0;break a}case 70:{c[g>>2]=j;break a}case 74:{c[g>>2]=i;h=0;break a}case 78:{c[g>>2]=i;h=0;break a}case 82:{c[g>>2]=i;h=0;break a}case 86:{c[g>>2]=i;h=0;break a}case 89:if((h|0)==19){c[g>>2]=j;h=0;break a}else{c[g>>2]=j+1;h=32;break a}case 92:if((h|0)==19){c[g>>2]=j;h=0;break a}else{c[g>>2]=j+1;h=31;break a}case 95:if((h|0)==19){c[g>>2]=j;h=0;break a}else{c[g>>2]=j+1;h=30;break a}case 98:{c[g>>2]=j;h=0;break a}case 99:{h=0-h|0;break a}}}else h=-4;while(0);return h|0}function qX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;a:do if(e>>>0<f>>>0){m=b+72|0;b:do switch(a[m+(d[e>>0]|0)>>0]|0){case 2:{h=JX(b,e+1|0,f,g)|0;break a}case 3:{h=FX(b,e+1|0,f,g)|0;break a}case 9:{h=e+1|0;if((f-h|0)<=0){h=-3;break a}c[g>>2]=(a[m+(d[h>>0]|0)>>0]|0)==10?e+2|0:h;h=7;break a}case 10:{c[g>>2]=e+1;h=7;break a}case 4:{i=e+1|0;if((f-i|0)<=0){h=-5;break a}if((a[i>>0]|0)==93){h=e+2|0;if((f-h|0)<=0){h=-5;break a}if((a[h>>0]|0)==62){c[g>>2]=h;h=0;break a}else h=f}else h=f;break}case 5:{h=f;if((h-e|0)<2){h=-2;break a}if(!(lb[c[b+352>>2]&127](b,e)|0)){i=e+2|0;break b}else{c[g>>2]=e;h=0;break a}}case 6:{h=f;if((h-e|0)<3){h=-2;break a}if(!(lb[c[b+356>>2]&127](b,e)|0)){i=e+3|0;break b}else{c[g>>2]=e;h=0;break a}}case 7:{h=f;if((h-e|0)<4){h=-2;break a}if(!(lb[c[b+360>>2]&127](b,e)|0)){i=e+4|0;break b}else{c[g>>2]=e;h=0;break a}}case 8:case 1:case 0:{c[g>>2]=e;h=0;break a}default:{i=e+1|0;h=f}}while(0);j=b+352|0;k=b+356|0;l=b+360|0;c:while(1){f=h-i|0;if((f|0)<=0){f=49;break}switch(a[m+(d[i>>0]|0)>>0]|0){case 10:case 9:case 8:case 1:case 0:case 2:case 3:{f=47;break c}case 5:{if((f|0)<2){f=32;break c}if(lb[c[j>>2]&127](b,i)|0){f=32;break c}i=i+2|0;continue c}case 6:{if((f|0)<3){f=36;break c}if(lb[c[k>>2]&127](b,i)|0){f=36;break c}i=i+3|0;continue c}case 7:{if((f|0)<4){f=40;break c}if(lb[c[l>>2]&127](b,i)|0){f=40;break c}i=i+4|0;continue c}case 4:{if((f|0)<=1){f=47;break c}e=i+1|0;if((a[e>>0]|0)!=93){i=e;continue c}if((f|0)<=2){f=47;break c}i=i+2|0;if((a[i>>0]|0)==62){f=46;break c}else{i=e;continue c}}default:{i=i+1|0;continue c}}}if((f|0)==32){c[g>>2]=i;h=6;break}else if((f|0)==36){c[g>>2]=i;h=6;break}else if((f|0)==40){c[g>>2]=i;h=6;break}else if((f|0)==46){c[g>>2]=i;h=0;break}else if((f|0)==47){c[g>>2]=i;h=6;break}else if((f|0)==49){c[g>>2]=i;h=6;break}}else h=-4;while(0);return h|0}function rX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;a:do if(e>>>0<f>>>0){l=b+72|0;b:do switch(a[l+(d[e>>0]|0)>>0]|0){case 4:{i=e+1|0;h=f;if((h-i|0)<=0){h=-1;break a}if((a[i>>0]|0)==93){f=e+2|0;if((h-f|0)<=0){h=-1;break a}if((a[f>>0]|0)==62){c[g>>2]=e+3;h=40;break a}}break}case 9:{h=e+1|0;if((f-h|0)<=0){h=-1;break a}c[g>>2]=(a[l+(d[h>>0]|0)>>0]|0)==10?e+2|0:h;h=7;break a}case 10:{c[g>>2]=e+1;h=7;break a}case 5:{h=f;if((h-e|0)<2){h=-2;break a}if(!(lb[c[b+352>>2]&127](b,e)|0)){i=e+2|0;break b}else{c[g>>2]=e;h=0;break a}}case 6:{h=f;if((h-e|0)<3){h=-2;break a}if(!(lb[c[b+356>>2]&127](b,e)|0)){i=e+3|0;break b}else{c[g>>2]=e;h=0;break a}}case 7:{h=f;if((h-e|0)<4){h=-2;break a}if(!(lb[c[b+360>>2]&127](b,e)|0)){i=e+4|0;break b}else{c[g>>2]=e;h=0;break a}}case 8:case 1:case 0:{c[g>>2]=e;h=0;break a}default:{i=e+1|0;h=f}}while(0);e=b+352|0;j=b+356|0;k=b+360|0;c:while(1){f=h-i|0;if((f|0)<=0){f=39;break}switch(a[l+(d[i>>0]|0)>>0]|0){case 4:case 10:case 9:case 8:case 1:case 0:{f=37;break c}case 5:{if((f|0)<2){f=30;break c}if(!(lb[c[e>>2]&127](b,i)|0))f=2;else{f=30;break c}break}case 6:{if((f|0)<3){f=33;break c}if(!(lb[c[j>>2]&127](b,i)|0))f=3;else{f=33;break c}break}case 7:{if((f|0)<4){f=36;break c}if(!(lb[c[k>>2]&127](b,i)|0))f=4;else{f=36;break c}break}default:f=1}i=i+f|0}if((f|0)==30){c[g>>2]=i;h=6;break}else if((f|0)==33){c[g>>2]=i;h=6;break}else if((f|0)==36){c[g>>2]=i;h=6;break}else if((f|0)==37){c[g>>2]=i;h=6;break}else if((f|0)==39){c[g>>2]=i;h=6;break}}else h=-4;while(0);return h|0}function sX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=b+72|0;k=b+352|0;l=b+356|0;m=b+360|0;i=0;a:while(1){h=f-e|0;if((h|0)<=0){f=-1;break}switch(a[j+(d[e>>0]|0)>>0]|0){case 8:case 1:case 0:{n=16;break a}case 5:{if((h|0)<2){f=-2;break a}if(lb[c[k>>2]&127](b,e)|0){n=6;break a}h=i;e=e+2|0;i=h;continue a}case 6:{if((h|0)<3){f=-2;break a}if(lb[c[l>>2]&127](b,e)|0){n=10;break a}h=i;e=e+3|0;i=h;continue a}case 7:{if((h|0)<4){f=-2;break a}if(lb[c[m>>2]&127](b,e)|0){n=14;break a}h=i;e=e+4|0;i=h;continue a}case 2:{h=e+1|0;if((f-h|0)<=0){f=-1;break a}if((a[h>>0]|0)!=33){o=i;e=h;i=o;continue a}h=e+2|0;if((f-h|0)<=0){f=-1;break a}o=(a[h>>0]|0)==91;i=i+(o&1)|0;e=o?e+3|0:h;continue a}case 4:{h=e+1|0;if((f-h|0)<=0){f=-1;break a}if((a[h>>0]|0)!=93){o=i;e=h;i=o;continue a}h=e+2|0;if((f-h|0)<=0){f=-1;break a}if((a[h>>0]|0)!=62){o=i;e=h;i=o;continue a}e=e+3|0;if(!i){n=26;break a}i=i+-1|0;continue a}default:{o=i;e=e+1|0;i=o;continue a}}}if((n|0)==6){c[g>>2]=e;f=0}else if((n|0)==10){c[g>>2]=e;f=0}else if((n|0)==14){c[g>>2]=e;f=0}else if((n|0)==16){c[g>>2]=e;f=0}else if((n|0)==26){c[g>>2]=e;f=42}return f|0}function tX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;do if(e>>>0<f>>>0){k=f;if((k-e|0)>0){l=b+72|0;i=e;a:while(1){if((k-i|0)<=0){j=24;break}switch(a[l+(d[i>>0]|0)>>0]|0){case 3:{j=8;break a}case 2:{j=11;break a}case 10:{j=12;break a}case 9:{j=15;break a}case 21:{j=19;break a}case 5:{h=2;break}case 6:{h=3;break}case 7:{h=4;break}default:h=1}i=i+h|0}if((j|0)==8)if((i|0)==(e|0)){h=FX(b,e+1|0,f,g)|0;break}else{c[g>>2]=i;h=6;break}else if((j|0)==11){c[g>>2]=i;h=0;break}else if((j|0)==12)if((i|0)==(e|0)){c[g>>2]=e+1;h=7;break}else{c[g>>2]=i;h=6;break}else if((j|0)==15){if((i|0)!=(e|0)){c[g>>2]=i;h=6;break}h=e+1|0;if((k-h|0)<=0){h=-3;break}c[g>>2]=(a[l+(d[h>>0]|0)>>0]|0)==10?e+2|0:h;h=7;break}else if((j|0)==19)if((i|0)==(e|0)){c[g>>2]=e+1;h=39;break}else{c[g>>2]=i;h=6;break}else if((j|0)==24){c[g>>2]=i;h=6;break}}else h=-1}else h=-4;while(0);return h|0}function uX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;do if(e>>>0<f>>>0){k=f;if((k-e|0)>0){l=b+72|0;i=e;a:while(1){if((k-i|0)<=0){j=23;break}switch(a[l+(d[i>>0]|0)>>0]|0){case 3:{j=8;break a}case 30:{j=11;break a}case 10:{j=14;break a}case 9:{j=17;break a}case 5:{h=2;break}case 6:{h=3;break}case 7:{h=4;break}default:h=1}i=i+h|0}if((j|0)==8)if((i|0)==(e|0)){h=FX(b,e+1|0,f,g)|0;break}else{c[g>>2]=i;h=6;break}else if((j|0)==11)if((i|0)==(e|0)){h=GX(b,e+1|0,f,g)|0;h=(h|0)==22?0:h;break}else{c[g>>2]=i;h=6;break}else if((j|0)==14)if((i|0)==(e|0)){c[g>>2]=e+1;h=7;break}else{c[g>>2]=i;h=6;break}else if((j|0)==17){if((i|0)!=(e|0)){c[g>>2]=i;h=6;break}h=e+1|0;if((k-h|0)<=0){h=-3;break}c[g>>2]=(a[l+(d[h>>0]|0)>>0]|0)==10?e+2|0:h;h=7;break}else if((j|0)==23){c[g>>2]=i;h=6;break}}else h=-1}else h=-4;while(0);return h|0}function vX(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=d;b=c;while(1){c=a[e>>0]|0;if(!(c<<24>>24)){g=6;break}if((f-b|0)<1){b=0;break}if((a[b>>0]|0)!=c<<24>>24){b=0;break}e=e+1|0;b=b+1|0}if((g|0)==6)b=(b|0)==(d|0)&1;return b|0}function wX(b,c){b=b|0;c=c|0;var e=0,f=0;f=b+72|0;b=c;a:while(1){switch(a[f+(d[b>>0]|0)>>0]|0){case 5:{e=2;break}case 6:{e=3;break}case 7:{e=4;break}case 27:case 26:case 25:case 24:case 23:case 22:case 29:{e=1;break}default:break a}b=b+e|0}return b-c|0}function xX(b,c){b=b|0;c=c|0;b=b+72|0;a:while(1){switch(a[b+(d[c>>0]|0)>>0]|0){case 21:case 9:case 10:break;default:break a}c=c+1|0}return c|0}function yX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=b+72|0;j=0;k=0;b=1;a:while(1){h=e+1|0;i=a[h>>0]|0;do switch(a[l+(i&255)>>0]|0){case 5:{if(!b)if((k|0)<(f|0)){c[g+(k<<4)>>2]=h;a[g+(k<<4)+12>>0]=1;b=1}else b=1;h=k;i=j;e=e+2|0;k=h;j=i;continue a}case 6:{if(!b)if((k|0)<(f|0)){c[g+(k<<4)>>2]=h;a[g+(k<<4)+12>>0]=1;b=1}else b=1;h=k;i=j;e=e+3|0;k=h;j=i;continue a}case 7:{if(!b)if((k|0)<(f|0)){c[g+(k<<4)>>2]=h;a[g+(k<<4)+12>>0]=1;b=1}else b=1;h=k;i=j;e=e+4|0;k=h;j=i;continue a}case 24:case 22:case 29:{if(b|0){o=b;n=k;i=j;e=h;b=o;k=n;j=i;continue a}if((k|0)>=(f|0)){n=k;o=j;b=1;e=h;k=n;j=o;continue a}c[g+(k<<4)>>2]=h;a[g+(k<<4)+12>>0]=1;n=k;o=j;b=1;e=h;k=n;j=o;continue a}case 12:{if((b|0)!=2){if((k|0)>=(f|0)){o=k;j=12;b=2;e=h;k=o;continue a}c[g+(k<<4)+4>>2]=e+2;o=k;j=12;b=2;e=h;k=o;continue a}if((j|0)!=12){n=k;o=j;b=2;e=h;k=n;j=o;continue a}if((k|0)<(f|0))c[g+(k<<4)+8>>2]=h;j=12;k=k+1|0;b=0;e=h;continue a}case 13:{if((b|0)!=2){if((k|0)>=(f|0)){o=k;j=13;b=2;e=h;k=o;continue a}c[g+(k<<4)+4>>2]=e+2;o=k;j=13;b=2;e=h;k=o;continue a}if((j|0)!=13){n=k;o=j;b=2;e=h;k=n;j=o;continue a}if((k|0)<(f|0))c[g+(k<<4)+8>>2]=h;j=13;k=k+1|0;b=0;e=h;continue a}case 3:{if((k|0)>=(f|0)){i=b;n=k;o=j;e=h;b=i;k=n;j=o;continue a}a[g+(k<<4)+12>>0]=0;i=b;n=k;o=j;e=h;b=i;k=n;j=o;continue a}case 21:{switch(b|0){case 1:{n=k;o=j;b=0;e=h;k=n;j=o;continue a}case 2:break;default:{i=b;n=k;o=j;e=h;b=i;k=n;j=o;continue a}}if((k|0)>=(f|0)){n=k;o=j;b=2;e=h;k=n;j=o;continue a}b=g+(k<<4)+12|0;if(!(a[b>>0]|0)){n=k;o=j;b=2;e=h;k=n;j=o;continue a}if(((i<<24>>24==32?(h|0)!=(c[g+(k<<4)+4>>2]|0):0)?(m=a[e+2>>0]|0,m<<24>>24!=32):0)?(j|0)!=(d[l+(m&255)>>0]|0):0){n=k;o=j;b=2;e=h;k=n;j=o;continue a}a[b>>0]=0;n=k;o=j;b=2;e=h;k=n;j=o;continue a}case 10:case 9:{switch(b|0){case 1:{n=k;o=j;b=0;e=h;k=n;j=o;continue a}case 2:break;default:{i=b;n=k;o=j;e=h;b=i;k=n;j=o;continue a}}if((k|0)>=(f|0)){n=k;o=j;b=2;e=h;k=n;j=o;continue a}a[g+(k<<4)+12>>0]=0;n=k;o=j;b=2;e=h;k=n;j=o;continue a}case 17:case 11:if((b|0)==2){n=k;o=j;b=2;e=h;k=n;j=o;continue a}else break a;default:{i=b;n=k;o=j;e=h;b=i;k=n;j=o;continue a}}while(0)}return k|0}function zX(b,c){b=b|0;c=c|0;var d=0,e=0;b=c+2|0;d=a[b>>0]|0;a:do if(d<<24>>24==120){d=c+3|0;b=0;while(1){b:while(1){e=a[d>>0]|0;c=e<<24>>24;if(e<<24>>24==59){e=14;break a}switch(c|0){case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:case 48:{e=7;break b}case 70:case 69:case 68:case 67:case 66:case 65:{e=8;break b}case 102:case 101:case 100:case 99:case 98:case 97:{e=9;break b}default:{}}d=d+1|0}if((e|0)==7){e=0;b=c+-48|b<<4}else if((e|0)==8){e=0;b=(b<<4)+-55+c|0}else if((e|0)==9){e=0;b=(b<<4)+-87+c|0}if((b|0)<1114112)d=d+1|0;else{b=-1;break}}}else{c=b;b=0;while(1){if(d<<24>>24==59){e=14;break a}b=(d<<24>>24)+-48+(b*10|0)|0;if((b|0)>=1114112){b=-1;break a}d=c+1|0;c=d;d=a[d>>0]|0}}while(0);if((e|0)==14)b=jX(b)|0;return b|0}function AX(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;a:do switch(d-c|0){case 2:{if((a[c+1>>0]|0)==116){b=a[c>>0]|0;b=b<<24>>24==108?60:b<<24>>24==103?62:0}else e=14;break}case 3:{if(((a[c>>0]|0)==97?(a[c+1>>0]|0)==109:0)?(a[c+2>>0]|0)==112:0)b=38;else e=14;break}case 4:switch(a[c>>0]|0){case 113:{if((a[c+1>>0]|0)!=117){e=14;break a}if((a[c+2>>0]|0)!=111){e=14;break a}if((a[c+3>>0]|0)==116){b=34;break a}else{e=14;break a}}case 97:{if((a[c+1>>0]|0)!=112){e=14;break a}if((a[c+2>>0]|0)!=111){e=14;break a}if((a[c+3>>0]|0)==115){b=39;break a}else{e=14;break a}}default:{e=14;break a}}default:e=14}while(0);if((e|0)==14)b=0;return b|0}function BX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=b+72|0;i=g+4|0;while(1){if((f-e|0)<=0)break;switch(a[h+(d[e>>0]|0)>>0]|0){case 5:{e=e+2|0;break}case 6:{e=e+3|0;break}case 7:{e=e+4|0;break}case 10:{c[i>>2]=-1;c[g>>2]=(c[g>>2]|0)+1;e=e+1|0;break}case 9:{c[g>>2]=(c[g>>2]|0)+1;b=e+1|0;if((f-b|0)>0)e=(a[h+(d[b>>0]|0)>>0]|0)==10?e+2|0:b;else e=b;c[i>>2]=-1;break}default:e=e+1|0}c[i>>2]=(c[i>>2]|0)+1}return}function CX(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=e+-1|0;b=b+72|0;a:while(1){d=d+1|0;if((g-d|0)<=0){d=1;break}e=a[d>>0]|0;switch(a[b+(e&255)>>0]|0){case 23:case 19:case 30:case 33:case 16:case 18:case 10:case 9:case 15:case 14:case 17:case 35:case 34:case 32:case 31:case 13:case 27:case 24:case 25:continue a;case 21:if(e<<24>>24==9){h=7;break a}else continue a;case 22:case 26:{if(e<<24>>24>=0)continue a;break}default:{}}switch(e<<24>>24|0){case 64:case 36:break;default:{h=7;break a}}}if((h|0)==7){c[f>>2]=d;d=0}return d|0}function DX(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=h;while(1){j=c[e>>2]|0;if((j|0)==(f|0)){b=0;break}k=d[j>>0]|0;b=c[g>>2]|0;if(!(k&128)){if((b|0)==(h|0)){b=2;break}c[e>>2]=j+1;j=a[j>>0]|0;k=c[g>>2]|0;c[g>>2]=k+1;a[k>>0]=j;continue}else{if((i-b|0)<2){b=2;break}c[g>>2]=b+1;a[b>>0]=k>>>6|192;j=c[g>>2]|0;c[g>>2]=j+1;a[j>>0]=k&63|128;c[e>>2]=(c[e>>2]|0)+1;continue}}return b|0}function EX(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;while(1){a=c[e>>2]|0;i=a>>>0<f>>>0;j=c[g>>2]|0;if(!(i&j>>>0<h>>>0))break;c[e>>2]=a+1;i=d[a>>0]|0;j=c[g>>2]|0;c[g>>2]=j+2;b[j>>1]=i}return ((j|0)!=(h|0)|i^1?0:2)|0}function FX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;k=f;h=k-e|0;a:do if((h|0)>0){l=b+72|0;switch(a[l+(d[e>>0]|0)>>0]|0){case 29:{c[g>>2]=e;f=0;break a}case 24:case 22:{f=1;break}case 5:{if((h|0)<2){f=-2;break a}if(!(lb[c[b+340>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else f=2;break}case 6:{if((h|0)<3){f=-2;break a}if(!(lb[c[b+344>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else f=3;break}case 7:{if((h|0)<4){f=-2;break a}if(!(lb[c[b+348>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else f=4;break}case 19:{f=HX(b,e+1|0,f,g)|0;break a}default:{c[g>>2]=e;f=0;break a}}h=b+328|0;i=b+332|0;j=b+336|0;e=e+f|0;b:while(1){f=k-e|0;if((f|0)<=0){f=-1;break a}switch(a[l+(d[e>>0]|0)>>0]|0){case 29:{h=18;break b}case 18:{h=29;break b}case 27:case 26:case 25:case 24:case 22:{f=1;break}case 5:{if((f|0)<2){f=-2;break a}if(!(lb[c[h>>2]&127](b,e)|0)){h=21;break b}else f=2;break}case 6:{if((f|0)<3){f=-2;break a}if(!(lb[c[i>>2]&127](b,e)|0)){h=24;break b}else f=3;break}case 7:{if((f|0)<4){f=-2;break a}if(!(lb[c[j>>2]&127](b,e)|0)){h=27;break b}else f=4;break}default:{h=30;break b}}e=e+f|0}if((h|0)==18){c[g>>2]=e;f=0;break}else if((h|0)==21){c[g>>2]=e;f=0;break}else if((h|0)==24){c[g>>2]=e;f=0;break}else if((h|0)==27){c[g>>2]=e;f=0;break}else if((h|0)==29){c[g>>2]=e+1;f=9;break}else if((h|0)==30){c[g>>2]=e;f=0;break}}else f=-1;while(0);return f|0}function GX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=f-e|0;a:do if((h|0)>0){l=b+72|0;switch(a[l+(d[e>>0]|0)>>0]|0){case 29:{c[g>>2]=e;f=0;break a}case 24:case 22:{h=1;break}case 5:{if((h|0)<2){f=-2;break a}if(!(lb[c[b+340>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else h=2;break}case 6:{if((h|0)<3){f=-2;break a}if(!(lb[c[b+344>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else h=3;break}case 7:{if((h|0)<4){f=-2;break a}if(!(lb[c[b+348>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else h=4;break}case 30:case 9:case 10:case 21:{c[g>>2]=e;f=22;break a}default:{c[g>>2]=e;f=0;break a}}i=b+328|0;j=b+332|0;k=b+336|0;e=e+h|0;b:while(1){h=f-e|0;if((h|0)<=0){f=-1;break a}switch(a[l+(d[e>>0]|0)>>0]|0){case 29:{h=18;break b}case 18:{h=29;break b}case 27:case 26:case 25:case 24:case 22:{h=1;break}case 5:{if((h|0)<2){f=-2;break a}if(!(lb[c[i>>2]&127](b,e)|0)){h=21;break b}else h=2;break}case 6:{if((h|0)<3){f=-2;break a}if(!(lb[c[j>>2]&127](b,e)|0)){h=24;break b}else h=3;break}case 7:{if((h|0)<4){f=-2;break a}if(!(lb[c[k>>2]&127](b,e)|0)){h=27;break b}else h=4;break}default:{h=30;break b}}e=e+h|0}if((h|0)==18){c[g>>2]=e;f=0;break}else if((h|0)==21){c[g>>2]=e;f=0;break}else if((h|0)==24){c[g>>2]=e;f=0;break}else if((h|0)==27){c[g>>2]=e;f=0;break}else if((h|0)==29){c[g>>2]=e+1;f=28;break}else if((h|0)==30){c[g>>2]=e;f=0;break}}else f=-1;while(0);return f|0}function HX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=f;a:do if((i-e|0)>0){h=a[e>>0]|0;if(h<<24>>24==120){b=IX(b,e+1|0,f,g)|0;break}f=b+72|0;if((a[f+(h&255)>>0]|0)!=25){c[g>>2]=e;b=0;break}b:while(1){b=e+1|0;if((i-b|0)<=0){b=-1;break a}switch(a[f+(d[b>>0]|0)>>0]|0){case 25:{e=b;break}case 18:{f=8;break b}default:{f=9;break b}}}if((f|0)==8){c[g>>2]=e+2;b=10;break}else if((f|0)==9){c[g>>2]=b;b=0;break}}else b=-1;while(0);return b|0}function IX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0;a:do if((f-e|0)>0){b=b+72|0;if((a[b+(d[e>>0]|0)>>0]&-2)<<24>>24!=24){c[g>>2]=e;f=0;break}b:while(1){h=e+1|0;if((f-h|0)<=0){f=-1;break a}switch(a[b+(d[h>>0]|0)>>0]|0){case 24:case 25:{e=h;break}case 18:{b=6;break b}default:{b=7;break b}}}if((b|0)==6){c[g>>2]=e+2;f=10;break}else if((b|0)==7){c[g>>2]=h;f=0;break}}else f=-1;while(0);return f|0}function JX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=f;h=q-e|0;a:do if((h|0)>0){p=b+72|0;switch(a[p+(d[e>>0]|0)>>0]|0){case 29:{c[g>>2]=e;h=0;break a}case 24:case 22:{h=1;break}case 5:{if((h|0)<2){h=-2;break a}if(!(lb[c[b+340>>2]&127](b,e)|0)){c[g>>2]=e;h=0;break a}else h=2;break}case 6:{if((h|0)<3){h=-2;break a}if(!(lb[c[b+344>>2]&127](b,e)|0)){c[g>>2]=e;h=0;break a}else h=3;break}case 7:{if((h|0)<4){h=-2;break a}if(!(lb[c[b+348>>2]&127](b,e)|0)){c[g>>2]=e;h=0;break a}else h=4;break}case 16:{h=e+1|0;if((q-h|0)<=0){h=-1;break a}switch(a[p+(d[h>>0]|0)>>0]|0){case 27:{h=KX(b,e+2|0,f,g)|0;break a}case 20:{h=LX(e+2|0,f,g)|0;break a}default:{c[g>>2]=h;h=0;break a}}}case 15:{h=MX(b,e+1|0,f,g)|0;break a}case 17:{h=NX(b,e+1|0,f,g)|0;break a}default:{c[g>>2]=e;h=0;break a}}j=b+328|0;k=b+332|0;l=b+336|0;m=b+340|0;n=b+344|0;o=b+348|0;i=0;h=e+h|0;b:while(1){e=q-h|0;if((e|0)<=0){h=-1;break a}c:do switch(a[p+(d[h>>0]|0)>>0]|0){case 29:{r=24;break b}case 10:case 9:case 21:{r=50;break b}case 11:{r=64;break b}case 17:break b;case 27:case 26:case 25:case 24:case 22:{e=1;break}case 5:{if((e|0)<2){h=-2;break a}if(!(lb[c[j>>2]&127](b,h)|0)){r=27;break b}else e=2;break}case 6:{if((e|0)<3){h=-2;break a}if(!(lb[c[k>>2]&127](b,h)|0)){r=30;break b}else e=3;break}case 7:{if((e|0)<4){h=-2;break a}if(!(lb[c[l>>2]&127](b,h)|0)){r=33;break b}else e=4;break}case 23:{if(i|0){r=35;break b}i=h+1|0;e=q-i|0;if((e|0)<=0){h=-1;break a}switch(a[p+(d[i>>0]|0)>>0]|0){case 29:{r=38;break b}case 24:case 22:{i=1;e=2;break c}case 5:{if((e|0)<2){h=-2;break a}if(!(lb[c[m>>2]&127](b,i)|0)){r=42;break b}else{i=1;e=3;break c}}case 6:{if((e|0)<3){h=-2;break a}if(!(lb[c[n>>2]&127](b,i)|0)){r=45;break b}else{i=1;e=4;break c}}case 7:{if((e|0)<4){h=-2;break a}if(!(lb[c[o>>2]&127](b,i)|0)){r=48;break b}else{i=1;e=5;break c}}default:{r=49;break b}}}default:{r=69;break b}}while(0);h=h+e|0}d:switch(r|0){case 24:{c[g>>2]=h;h=0;break a}case 27:{c[g>>2]=h;h=0;break a}case 30:{c[g>>2]=h;h=0;break a}case 33:{c[g>>2]=h;h=0;break a}case 35:{c[g>>2]=h;h=0;break a}case 38:{c[g>>2]=i;h=0;break a}case 42:{c[g>>2]=i;h=0;break a}case 45:{c[g>>2]=i;h=0;break a}case 48:{c[g>>2]=i;h=0;break a}case 49:{c[g>>2]=i;h=0;break a}case 50:{e:while(1){r=0;i=h+1|0;e=q-i|0;if((e|0)<=0){h=-1;break a}switch(a[p+(d[i>>0]|0)>>0]|0){case 11:{h=i;r=64;break d}case 17:{h=i;break d}case 10:case 9:case 21:{h=i;r=50;break}case 29:{r=52;break e}case 24:case 22:{i=2;break e}case 5:{r=53;break e}case 6:{r=56;break e}case 7:{r=59;break e}default:{r=62;break e}}}if((r|0)==52){c[g>>2]=i;h=0;break a}else if((r|0)==53){if((e|0)<2){h=-2;break a}if(!(lb[c[m>>2]&127](b,i)|0)){c[g>>2]=i;h=0;break a}else i=3}else if((r|0)==56){if((e|0)<3){h=-2;break a}if(!(lb[c[n>>2]&127](b,i)|0)){c[g>>2]=i;h=0;break a}else i=4}else if((r|0)==59){if((e|0)<4){h=-2;break a}if(!(lb[c[o>>2]&127](b,i)|0)){c[g>>2]=i;h=0;break a}else i=5}else if((r|0)==62){c[g>>2]=i;h=0;break a}h=OX(b,h+i|0,f,g)|0;break a}case 69:{c[g>>2]=h;h=0;break a}}if((r|0)==64){c[g>>2]=h+1;h=2;break}i=h+1|0;if((q-i|0)>0)if((a[i>>0]|0)==62){c[g>>2]=h+2;h=4;break}else{c[g>>2]=i;h=0;break}else h=-1}else h=-1;while(0);return h|0}function KX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;a:do if((f-e|0)>0){if((a[e>>0]|0)!=45){c[g>>2]=e;f=0;break}h=b+72|0;i=b+352|0;j=b+356|0;k=b+360|0;l=e+1|0;b:while(1){e=f-l|0;if((e|0)<=0){f=-1;break a}switch(a[h+(d[l>>0]|0)>>0]|0){case 8:case 1:case 0:{e=19;break b}case 5:{if((e|0)<2){f=-2;break a}if(lb[c[i>>2]&127](b,l)|0){e=9;break b}l=l+2|0;continue b}case 6:{if((e|0)<3){f=-2;break a}if(lb[c[j>>2]&127](b,l)|0){e=13;break b}l=l+3|0;continue b}case 7:{if((e|0)<4){f=-2;break a}if(lb[c[k>>2]&127](b,l)|0){e=17;break b}l=l+4|0;continue b}case 27:{e=l+1|0;if((f-e|0)<=0){f=-1;break a}if((a[e>>0]|0)==45){e=22;break b}else{l=e;continue b}}default:{l=l+1|0;continue b}}}if((e|0)==9){c[g>>2]=l;f=0;break}else if((e|0)==13){c[g>>2]=l;f=0;break}else if((e|0)==17){c[g>>2]=l;f=0;break}else if((e|0)==19){c[g>>2]=l;f=0;break}else if((e|0)==22){e=l+2|0;if((f-e|0)<=0){f=-1;break}if((a[e>>0]|0)==62){c[g>>2]=l+3;f=13;break}else{c[g>>2]=e;f=0;break}}}else f=-1;while(0);return f|0}function LX(b,d,e){b=b|0;d=d|0;e=e|0;if((d-b|0)>5){d=0;while(1){if((d|0)>=6){d=8;break}if((a[b>>0]|0)!=(a[141218+d>>0]|0)){d=0;break}d=d+1|0;b=b+1|0}c[e>>2]=b}else d=-1;return d|0}function MX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;p=q;o=f;f=o-e|0;a:do if((f|0)>0){n=b+72|0;switch(a[n+(d[e>>0]|0)>>0]|0){case 29:{c[g>>2]=e;f=0;break a}case 24:case 22:{f=1;break}case 5:{if((f|0)<2){f=-2;break a}if(!(lb[c[b+340>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else f=2;break}case 6:{if((f|0)<3){f=-2;break a}if(!(lb[c[b+344>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else f=3;break}case 7:{if((f|0)<4){f=-2;break a}if(!(lb[c[b+348>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else f=4;break}default:{c[g>>2]=e;f=0;break a}}i=b+328|0;j=b+332|0;k=b+336|0;f=e+f|0;b:while(1){h=o-f|0;if((h|0)<=0){f=-1;break a}switch(a[n+(d[f>>0]|0)>>0]|0){case 29:{m=17;break b}case 10:case 9:case 21:{m=28;break b}case 15:{m=50;break b}case 27:case 26:case 25:case 24:case 22:{h=1;break}case 5:{if((h|0)<2){f=-2;break a}if(!(lb[c[i>>2]&127](b,f)|0)){m=20;break b}else h=2;break}case 6:{if((h|0)<3){f=-2;break a}if(!(lb[c[j>>2]&127](b,f)|0)){m=23;break b}else h=3;break}case 7:{if((h|0)<4){f=-2;break a}if(!(lb[c[k>>2]&127](b,f)|0)){m=26;break b}else h=4;break}default:break b}f=f+h|0}if((m|0)==17){c[g>>2]=f;f=0;break}else if((m|0)==20){c[g>>2]=f;f=0;break}else if((m|0)==23){c[g>>2]=f;f=0;break}else if((m|0)==26){c[g>>2]=f;f=0;break}else if((m|0)==28){if(!(PX(e,f,p)|0)){c[g>>2]=f;f=0;break}i=b+352|0;j=b+356|0;k=b+360|0;h=f+1|0;c:while(1){f=o-h|0;if((f|0)<=0){f=-1;break a}switch(a[n+(d[h>>0]|0)>>0]|0){case 8:case 1:case 0:{m=45;break c}case 5:{if((f|0)<2){f=-2;break a}if(lb[c[i>>2]&127](b,h)|0){m=35;break c}h=h+2|0;continue c}case 6:{if((f|0)<3){f=-2;break a}if(lb[c[j>>2]&127](b,h)|0){m=39;break c}h=h+3|0;continue c}case 7:{if((f|0)<4){f=-2;break a}if(lb[c[k>>2]&127](b,h)|0){m=43;break c}h=h+4|0;continue c}case 15:{f=h+1|0;if((o-f|0)<=0){f=-1;break a}if((a[f>>0]|0)==62){m=48;break c}else{h=f;continue c}}default:{h=h+1|0;continue c}}}if((m|0)==35){c[g>>2]=h;f=0;break}else if((m|0)==39){c[g>>2]=h;f=0;break}else if((m|0)==43){c[g>>2]=h;f=0;break}else if((m|0)==45){c[g>>2]=h;f=0;break}else if((m|0)==48){c[g>>2]=h+2;f=c[p>>2]|0;break}}else if((m|0)==50){if(!(PX(e,f,p)|0)){c[g>>2]=f;f=0;break}h=f+1|0;if((o-h|0)<=0){f=-1;break}if((a[h>>0]|0)==62){c[g>>2]=f+2;f=c[p>>2]|0;break}else f=h}c[g>>2]=f;f=0}else f=-1;while(0);l=q;return f|0}function NX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=f-e|0;a:do if((h|0)>0){l=b+72|0;switch(a[l+(d[e>>0]|0)>>0]|0){case 29:{c[g>>2]=e;f=0;break a}case 24:case 22:{h=1;break}case 5:{if((h|0)<2){f=-2;break a}if(!(lb[c[b+340>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else h=2;break}case 6:{if((h|0)<3){f=-2;break a}if(!(lb[c[b+344>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else h=3;break}case 7:{if((h|0)<4){f=-2;break a}if(!(lb[c[b+348>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else h=4;break}default:{c[g>>2]=e;f=0;break a}}i=b+328|0;j=b+332|0;k=b+336|0;h=e+h|0;b:while(1){e=f-h|0;if((e|0)<=0){f=-1;break a}switch(a[l+(d[h>>0]|0)>>0]|0){case 29:{i=17;break b}case 10:case 9:case 21:{i=27;break b}case 11:{i=32;break b}case 23:case 27:case 26:case 25:case 24:case 22:{e=1;break}case 5:{if((e|0)<2){f=-2;break a}if(!(lb[c[i>>2]&127](b,h)|0)){i=20;break b}else e=2;break}case 6:{if((e|0)<3){f=-2;break a}if(!(lb[c[j>>2]&127](b,h)|0)){i=23;break b}else e=3;break}case 7:{if((e|0)<4){f=-2;break a}if(!(lb[c[k>>2]&127](b,h)|0)){i=26;break b}else e=4;break}default:{i=33;break b}}h=h+e|0}if((i|0)==17){c[g>>2]=h;f=0;break}else if((i|0)==20){c[g>>2]=h;f=0;break}else if((i|0)==23){c[g>>2]=h;f=0;break}else if((i|0)==26){c[g>>2]=h;f=0;break}else if((i|0)==27){c:while(1){e=h+1|0;if((f-e|0)<=0){f=-1;break a}switch(a[l+(d[e>>0]|0)>>0]|0){case 10:case 9:case 21:{h=e;i=27;break}case 11:{i=29;break c}default:{i=30;break c}}}if((i|0)==29){c[g>>2]=h+2;f=5;break}else if((i|0)==30){c[g>>2]=e;f=0;break}}else if((i|0)==32){c[g>>2]=h+1;f=5;break}else if((i|0)==33){c[g>>2]=h;f=0;break}}else f=-1;while(0);return f|0}function OX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;v=y;c[v>>2]=e;w=f;r=b+72|0;s=b+328|0;t=b+332|0;u=b+336|0;k=b+340|0;m=b+344|0;n=b+348|0;o=b+352|0;p=b+356|0;q=b+360|0;i=0;a:while(1){h=w-e|0;if((h|0)<=0){e=-1;break}b:do switch(a[r+(d[e>>0]|0)>>0]|0){case 29:{x=4;break a}case 27:case 26:case 25:case 24:case 22:{h=e+1|0;c[v>>2]=h;j=i;e=h;i=j;continue a}case 5:{if((h|0)<2){e=-2;break a}if(!(lb[c[s>>2]&127](b,e)|0)){x=8;break a}h=e+2|0;c[v>>2]=h;j=i;e=h;i=j;continue a}case 6:{if((h|0)<3){e=-2;break a}if(!(lb[c[t>>2]&127](b,e)|0)){x=12;break a}h=e+3|0;c[v>>2]=h;j=i;e=h;i=j;continue a}case 7:{if((h|0)<4){e=-2;break a}if(!(lb[c[u>>2]&127](b,e)|0)){x=16;break a}h=e+4|0;c[v>>2]=h;j=i;e=h;i=j;continue a}case 23:{if(i|0){x=19;break a}h=e+1|0;c[v>>2]=h;i=w-h|0;if((i|0)<=0){e=-1;break a}switch(a[r+(d[h>>0]|0)>>0]|0){case 29:{x=22;break a}case 24:case 22:{j=e+2|0;c[v>>2]=j;i=1;e=j;continue a}case 5:{if((i|0)<2){e=-2;break a}if(!(lb[c[k>>2]&127](b,h)|0)){x=26;break a}j=e+3|0;c[v>>2]=j;i=1;e=j;continue a}case 6:{if((i|0)<3){e=-2;break a}if(!(lb[c[m>>2]&127](b,h)|0)){x=30;break a}j=e+4|0;c[v>>2]=j;i=1;e=j;continue a}case 7:{if((i|0)<4){e=-2;break a}if(!(lb[c[n>>2]&127](b,h)|0)){x=34;break a}j=e+5|0;c[v>>2]=j;i=1;e=j;continue a}default:{x=36;break a}}}case 10:case 9:case 21:while(1){e=e+1|0;c[v>>2]=e;if((w-e|0)<=0){e=-1;break a}switch(a[r+(d[e>>0]|0)>>0]|0){case 14:break b;case 9:case 10:case 21:break;default:{x=39;break a}}}case 14:break;default:{x=92;break a}}while(0);while(1){h=e+1|0;c[v>>2]=h;if((w-h|0)<=0){e=-1;break a}j=a[r+(d[h>>0]|0)>>0]|0;if((j|1)<<24>>24==13)break;switch(j<<24>>24){case 9:case 10:case 21:{e=h;break}default:{x=43;break a}}}e=e+2|0;c[v>>2]=e;c:while(1){h=w-e|0;if((h|0)<=0){e=-1;break a}i=a[r+(d[e>>0]|0)>>0]|0;if(i<<24>>24==j<<24>>24)break;switch(i<<24>>24){case 8:case 1:case 0:{x=60;break a}case 2:{x=65;break a}case 5:{if((h|0)<2){e=-2;break a}if(lb[c[o>>2]&127](b,e)|0){x=50;break a}i=e+2|0;c[v>>2]=i;e=i;continue c}case 6:{if((h|0)<3){e=-2;break a}if(lb[c[p>>2]&127](b,e)|0){x=54;break a}i=e+3|0;c[v>>2]=i;e=i;continue c}case 7:{if((h|0)<4){e=-2;break a}if(lb[c[q>>2]&127](b,e)|0){x=58;break a}i=e+4|0;c[v>>2]=i;e=i;continue c}case 3:{e=FX(b,e+1|0,f,v)|0;if((e|0)<1){x=63;break a}e=c[v>>2]|0;continue c}default:{i=e+1|0;c[v>>2]=i;e=i;continue c}}}h=e+1|0;c[v>>2]=h;if((w-h|0)<=0){e=-1;break}switch(a[r+(d[h>>0]|0)>>0]|0){case 11:{x=86;break a}case 17:{x=87;break a}case 10:case 9:case 21:{e=h;break}default:{x=69;break a}}d:while(1){h=e+1|0;c[v>>2]=h;i=w-h|0;if((i|0)<=0){e=-1;break a}switch(a[r+(d[h>>0]|0)>>0]|0){case 29:{x=72;break a}case 11:{x=86;break a}case 17:{x=87;break a}case 10:case 9:case 21:{e=h;break}case 24:case 22:{x=73;break d}case 5:{x=74;break d}case 6:{x=78;break d}case 7:{x=82;break d}default:{x=91;break a}}}if((x|0)==73){x=0;e=e+2|0;c[v>>2]=e;i=0;continue}else if((x|0)==74){x=0;if((i|0)<2){e=-2;break}if(!(lb[c[k>>2]&127](b,h)|0)){x=76;break}e=e+3|0;c[v>>2]=e;i=0;continue}else if((x|0)==78){x=0;if((i|0)<3){e=-2;break}if(!(lb[c[m>>2]&127](b,h)|0)){x=80;break}e=e+4|0;c[v>>2]=e;i=0;continue}else if((x|0)==82){x=0;if((i|0)<4){e=-2;break}if(!(lb[c[n>>2]&127](b,h)|0)){x=84;break}e=e+5|0;c[v>>2]=e;i=0;continue}}switch(x|0){case 4:{c[g>>2]=e;e=0;break}case 8:{c[g>>2]=e;e=0;break}case 12:{c[g>>2]=e;e=0;break}case 16:{c[g>>2]=e;e=0;break}case 19:{c[g>>2]=e;e=0;break}case 22:{c[g>>2]=h;e=0;break}case 26:{c[g>>2]=h;e=0;break}case 30:{c[g>>2]=h;e=0;break}case 34:{c[g>>2]=h;e=0;break}case 36:{c[g>>2]=h;e=0;break}case 39:{c[g>>2]=e;e=0;break}case 43:{c[g>>2]=h;e=0;break}case 50:{c[g>>2]=e;e=0;break}case 54:{c[g>>2]=e;e=0;break}case 58:{c[g>>2]=e;e=0;break}case 60:{c[g>>2]=e;e=0;break}case 63:{if(!e){c[g>>2]=c[v>>2];e=0}break}case 65:{c[g>>2]=e;e=0;break}case 69:{c[g>>2]=h;e=0;break}case 72:{c[g>>2]=h;e=0;break}case 76:{c[g>>2]=h;e=0;break}case 80:{c[g>>2]=h;e=0;break}case 84:{c[g>>2]=h;e=0;break}case 86:{c[g>>2]=e+2;e=1;break}case 87:{e=h+1|0;c[v>>2]=e;if((w-e|0)>0)if((a[e>>0]|0)==62){c[g>>2]=h+2;e=3;break}else{c[g>>2]=e;e=0;break}else e=-1;break}case 91:{c[g>>2]=h;e=0;break}case 92:{c[g>>2]=e;e=0;break}}l=y;return e|0}function PX(b,d,e){b=b|0;d=d|0;e=e|0;c[e>>2]=11;a:do if((d-b|0)==3){switch(a[b>>0]|0){case 120:{d=0;break}case 88:{d=1;break}default:{d=1;break a}}switch(a[b+1>>0]|0){case 109:break;case 77:{d=1;break}default:{d=1;break a}}switch(a[b+2>>0]|0){case 108:break;case 76:{d=0;break a}default:{d=1;break a}}if(!d){c[e>>2]=12;d=1}else d=0}else d=1;while(0);return d|0}function QX(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=e+72|0;l=e+352|0;m=e+356|0;n=e+360|0;a:while(1){i=g-f|0;if((i|0)<=0){g=-1;break}j=a[k+(d[f>>0]|0)>>0]|0;switch(j<<24>>24){case 8:case 1:case 0:{o=16;break a}case 5:{if((i|0)<2){g=-2;break a}if(lb[c[l>>2]&127](e,f)|0){o=6;break a}f=f+2|0;continue a}case 6:{if((i|0)<3){g=-2;break a}if(lb[c[m>>2]&127](e,f)|0){o=10;break a}f=f+3|0;continue a}case 7:{if((i|0)<4){g=-2;break a}if(lb[c[n>>2]&127](e,f)|0){o=14;break a}f=f+4|0;continue a}case 13:case 12:{f=f+1|0;if((j&255|0)==(b|0)){o=18;break a}else continue a}default:{f=f+1|0;continue a}}}b:do if((o|0)==6){c[h>>2]=f;g=0}else if((o|0)==10){c[h>>2]=f;g=0}else if((o|0)==14){c[h>>2]=f;g=0}else if((o|0)==16){c[h>>2]=f;g=0}else if((o|0)==18)if((g-f|0)>0){c[h>>2]=f;switch(a[k+(d[f>>0]|0)>>0]|0){case 20:case 30:case 11:case 10:case 9:case 21:{g=27;break b}default:{}}g=0}else g=-27;while(0);return g|0}function RX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=f;a:do if((h-e|0)>0){i=b+72|0;switch(a[i+(d[e>>0]|0)>>0]|0){case 27:{b=KX(b,e+1|0,f,g)|0;break a}case 20:{c[g>>2]=e+1;b=33;break a}case 24:case 22:{b:while(1){b=e+1|0;f=h-b|0;if((f|0)<=0){b=-1;break a}switch(a[i+(d[b>>0]|0)>>0]|0){case 24:case 22:{e=b;break}case 30:{j=8;break b}case 10:case 9:case 21:break b;default:{j=12;break b}}}if((j|0)==12){c[g>>2]=b;b=0;break a}c:do if((j|0)==8){if((f|0)<=1){b=-1;break a}switch(a[i+(d[e+2>>0]|0)>>0]|0){case 30:case 10:case 9:case 21:break;default:break c}c[g>>2]=b;b=0;break a}while(0);c[g>>2]=b;b=16;break a}default:{c[g>>2]=e;b=0;break a}}}else b=-1;while(0);return b|0} + function Rv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=a;while(1){j=c[f>>2]|0;if(!j){k=6;break}if((c[j>>2]|0)==(b|0))break;f=j+4|0}if((k|0)==6)qa(93188,93195,217,93206);i=j+8|0;f=c[i>>2]|0;g=j+4|0;b=c[g>>2]|0;c[(f|0?f+4|0:a)>>2]=b;h=a+4|0;c[(b|0?b+8|0:h)>>2]=f;b=0;f=a;while(1){f=c[f>>2]|0;if(!f)break;if((c[f>>2]|0)==(d|0)){k=9;break}b=f;f=f+4|0}if((k|0)==9){do if(!e)if((f|0)==(c[a>>2]|0)){c[a>>2]=j;c[g>>2]=f;c[i>>2]=0;f=f+8|0;break}else{c[b+4>>2]=j;c[i>>2]=b;c[g>>2]=f;f=f+8|0;break}else if((f|0)==(c[h>>2]|0)){c[h>>2]=j;c[g>>2]=0;c[i>>2]=f;f=f+4|0;break}else{c[i>>2]=f;f=f+4|0;c[g>>2]=c[f>>2];c[(c[f>>2]|0)+8>>2]=j;break}while(0);c[f>>2]=j}return}function Sv(a){a=a|0;return c[a+8>>2]|0}function Tv(a,b){a=a|0;b=b|0;Uv(a,Ov(b)|0);D_(b);return}function Uv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[b>>2]|0;if(d|0){e=a+4|0;f=c[e>>2]|0;c[f+4>>2]=d;c[d+8>>2]=f;c[e>>2]=c[b+4>>2];d=a+8|0;c[d>>2]=(c[d>>2]|0)+(c[b+8>>2]|0)}return}function Vv(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,g=0.0,i=0.0,j=0.0,k=0,l=0,m=0,n=0,o=0.0;m=c[b+8>>2]|0;Wv(a,b);l=Xv(m)|0;a=Zv(Yv(l)|0)|0;_v(m,a);m=$v(a,m)|0;a=Sv(m)|0;j=+aw(m);k=(a|0)==1;f=+(a|0);i=f*.15915494309189535*(j+d);g=k?0.0:i;a=m;while(1){a=c[a>>2]|0;if(!a)break;if(c[(c[(c[(c[a>>2]|0)+16>>2]|0)+112>>2]|0)+4>>2]&8|0){e=4;break}a=a+4|0}if((e|0)==4)Pv(m,a);d=1.0/f;e=0;a=m;while(1){a=c[a>>2]|0;if(!a)break;n=(c[a>>2]|0)+16|0;c[(c[(c[n>>2]|0)+112>>2]|0)+16>>2]=e;h[(c[(c[n>>2]|0)+112>>2]|0)+24>>3]=0.0;f=6.283185307179586*d*+(e|0);o=+E(+f)*g;n=c[(c[n>>2]|0)+132>>2]|0;h[n>>3]=o;h[n+8>>3]=+F(+f)*g;e=e+1|0;a=a+4|0}o=k?j*.5:i;h[b+16>>3]=o;h[b+24>>3]=o;h[b+48>>3]=-1.0;$x(l)|0;return m|0}function Wv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b+8>>2]|0;d=Sy(f)|0;while(1){if(!d)break;e=Ex(a,d)|0;while(1){if(!e)break;if((c[(c[(c[(c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)+16>>2]|0)+112>>2]|0)+12>>2]|0)==(b|0))Vx(f,e,1)|0;e=Gx(a,e)|0}d=Ty(f,d)|0}return}function Xv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;g=k;f=gw(a,g)|0;g=c[g>>2]|0;i=ay(g)|0;h=hw(g)|0;i=i+-3|0;e=0;while(1){if((e|0)>=(i|0))break;j=qw(h)|0;d=Jx(g,j)|0;while(1){if(!d)break;b=c[d>>2]&3;a=c[((b|0)==2?d:d+-48|0)+40>>2]|0;if((j|0)==(a|0))a=c[((b|0)==3?d:d+48|0)+40>>2]|0;pw(h,a);d=Kx(g,d,j)|0}iw(g,j,f);d=Jx(g,j)|0;while(1){if(!d)break;b=c[d>>2]&3;a=c[((b|0)==2?d:d+-48|0)+40>>2]|0;if((j|0)==(a|0))a=c[((b|0)==3?d:d+48|0)+40>>2]|0;b=(c[a+16>>2]|0)+236|0;c[b>>2]=(c[b>>2]|0)+-1;ow(h,a);d=Kx(g,d,j)|0}dz(g,j)|0;e=e+1|0}$x(g)|0;nw(h);l=k;return f|0}function Yv(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+144|0;b=f;e=f+8|0;d=c[46162]|0;c[46162]=d+1;c[b>>2]=d;Y0(e,93221,b)|0;e=vA(a,e,1)|0;Az(e,134401,280,1)|0;b=Sy(a)|0;while(1){if(!b)break;Xy(e,b,1)|0;d=b+16|0;c[(c[(c[d>>2]|0)+112>>2]|0)+16+12>>2]=0;c[(c[(c[d>>2]|0)+112>>2]|0)+32>>2]=0;d=(c[(c[d>>2]|0)+112>>2]|0)+4|0;c[d>>2]=c[d>>2]&-2;b=Ty(a,b)|0}b=Sy(a)|0;while(1){if(!b)break;d=c[(c[b+16>>2]|0)+112>>2]|0;if(!(c[d+4>>2]&1)){c[d+16>>2]=0;fw(a,b,e)}b=Ty(a,b)|0}l=f;return e|0}function Zv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((ay(a)|0)!=1){d=Sy(a)|0;while(1){if(!d)break;b=0;e=Jx(a,d)|0;while(1){if(!e)break;b=b+1|0;e=Kx(a,e,d)|0}if((b|0)==1)ew(d,d,0,0);d=Ty(a,d)|0}b=0;f=0;d=Sy(a)|0;while(1){if(!d)break;g=c[(c[d+16>>2]|0)+112>>2]|0;g=(c[g+32>>2]|0)+(c[g+16+12>>2]|0)|0;e=(g|0)>(b|0);b=e?g:b;f=e?d:f;d=Ty(a,d)|0}b=Kv()|0;e=f+16|0;d=(c[(c[e>>2]|0)+112>>2]|0)+16+4|0;while(1){d=c[d>>2]|0;if((d|0)==(f|0))break;Mv(b,0,d);d=c[(c[d+16>>2]|0)+112>>2]|0;g=d+4|0;c[g>>2]=c[g>>2]|16;d=d+16|0}Mv(b,0,f);g=c[(c[e>>2]|0)+112>>2]|0;a=g+4|0;c[a>>2]=c[a>>2]|16;if(c[g+32>>2]|0){a=Kv()|0;d=(c[(c[e>>2]|0)+112>>2]|0)+24|0;while(1){d=c[d>>2]|0;if((d|0)==(f|0))break;Mv(a,0,d);d=c[(c[d+16>>2]|0)+112>>2]|0;g=d+4|0;c[g>>2]=c[g>>2]|16;d=d+16|0}Tv(b,a)}}else{b=Kv()|0;g=Sy(a)|0;Mv(b,0,g);g=(c[(c[g+16>>2]|0)+112>>2]|0)+4|0;c[g>>2]=c[g>>2]|16}return b|0}function _v(a,b){a=a|0;b=b|0;var d=0;d=Sy(a)|0;while(1){if(!d)break;if(!(c[(c[(c[d+16>>2]|0)+112>>2]|0)+4>>2]&16))dw(a,d,b);d=Ty(a,d)|0}return}function $v(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;f=g;d=bw(a,b)|0;c[f>>2]=d;a:do if(d){e=0;while(1){if((e|0)>=10)break a;a=cw(a,b,f)|0;h=d;d=c[f>>2]|0;if((h|0)==(d|0)|(d|0)==0)break;else e=e+1|0}}while(0);l=g;return a|0}function aw(a){a=a|0;var b=0.0,d=0.0,e=0.0,f=0;b=0.0;while(1){a=c[a>>2]|0;if(!a)break;f=c[(c[c[(c[(c[a>>2]|0)+16>>2]|0)+112>>2]>>2]|0)+16>>2]|0;d=+h[f+32>>3];d=d>b?d:b;e=+h[f+40>>3];b=e>d?e:d;a=a+4|0}return +b}function bw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=rw()|0;e=Sy(b)|0;while(1){if(!e)break;d=Ex(b,e)|0;while(1){if(!d)break;c[c[(c[d+16>>2]|0)+120>>2]>>2]=0;d=Gx(b,d)|0}e=Ty(b,e)|0}j=1;d=0;while(1){h=c[a>>2]|0;if(!h)break;i=c[h>>2]|0;g=Jx(b,i)|0;while(1){if(!g)break;f=g+16|0;if((c[c[(c[f>>2]|0)+120>>2]>>2]|0)>0){a=nb[c[k>>2]&63](k,0,128)|0;while(1){if(!a)break;e=c[a+8>>2]|0;if((c[c[(c[e+16>>2]|0)+120>>2]>>2]|0)>(c[c[(c[f>>2]|0)+120>>2]>>2]|0)?(l=c[e>>2]&3,(c[((l|0)==2?e:e+-48|0)+40>>2]|0)!=(i|0)):0)d=d+((c[((l|0)==3?e:e+48|0)+40>>2]|0)!=(i|0)&1)|0;a=nb[c[k>>2]&63](k,a,8)|0}xw(k,g)}g=Kx(b,g,i)|0}e=Jx(b,i)|0;while(1){if(!e)break;a=c[(c[e+16>>2]|0)+120>>2]|0;if(!(c[a>>2]|0)){c[a>>2]=j;ww(k,e)}e=Kx(b,e,i)|0}a=h+4|0;j=j+1|0}vw(k);return d|0}function cw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=c[d>>2]|0;k=Sy(b)|0;a:while(1){if(!k)break;j=Jx(b,k)|0;while(1){if(!j)break;g=c[j>>2]&3;f=c[((g|0)==3?j:j+48|0)+40>>2]|0;if((f|0)==(k|0))f=c[((g|0)==2?j:j+-48|0)+40>>2]|0;i=0;while(1){if((i|0)>=2)break;h=Qv(a)|0;Rv(a,k,f,i);g=bw(a,b)|0;if((g|0)<(e|0)){Lv(h);if(!g){e=0;break a}else e=g}else{Lv(a);a=h}i=i+1|0}j=Kx(b,j,k)|0}k=Ty(b,k)|0}c[d>>2]=e;return a|0}function dw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=Kv()|0;e=Ex(a,b)|0;while(1){if(!e)break;f=e+-48|0;Mv(h,0,c[((c[e>>2]&3|0)==2?e:f)+40>>2]|0);f=(c[(c[(c[((c[e>>2]&3|0)==2?e:f)+40>>2]|0)+16>>2]|0)+112>>2]|0)+4|0;c[f>>2]=c[f>>2]|32;e=Gx(a,e)|0}e=Hx(a,b)|0;while(1){if(!e)break;f=e+48|0;Mv(h,0,c[((c[e>>2]&3|0)==3?e:f)+40>>2]|0);f=(c[(c[(c[((c[e>>2]&3|0)==3?e:f)+40>>2]|0)+16>>2]|0)+112>>2]|0)+4|0;c[f>>2]=c[f>>2]|32;e=Ix(a,e)|0}a:do if((Sv(h)|0)>1){f=d+4|0;a=d;while(1){e=c[a>>2]|0;if(!e){g=13;break a}a=e+4|0;if(!(c[(c[(c[(c[e>>2]|0)+16>>2]|0)+112>>2]|0)+4>>2]&32))continue;if(c[(c[(c[(c[c[((e|0)==(c[f>>2]|0)?d:a)>>2]>>2]|0)+16>>2]|0)+112>>2]|0)+4>>2]&32|0)break}Mv(d,e,b)}else g=13;while(0);b:do if((g|0)==13){c:do if((Sv(h)|0)>0){e=d;while(1){e=c[e>>2]|0;if(!e)break c;if(c[(c[(c[(c[e>>2]|0)+16>>2]|0)+112>>2]|0)+4>>2]&32|0)break;e=e+4|0}Mv(d,e,b);break b}while(0);Mv(d,0,b)}while(0);e=h;while(1){e=c[e>>2]|0;if(!e)break;d=(c[(c[(c[e>>2]|0)+16>>2]|0)+112>>2]|0)+4|0;c[d>>2]=c[d>>2]&-33;e=e+4|0}Lv(h);return}function ew(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;while(1){g=c[(c[(c[b+16>>2]|0)+112>>2]|0)+16>>2]|0;if(!g)break;h=d+1|0;i=g+16|0;j=c[(c[i>>2]|0)+112>>2]|0;b=j+16|0;f=c[b+12>>2]|0;if(f){if((f|0)>(d|0)){k=11;break}b=c[b+4>>2]|0;f=b;if((b|0)==(e|0))b=j;else{d=j+24|0;if(!((c[j+32>>2]|0)!=0?(c[d>>2]|0)==(e|0):0))e=b;c[d>>2]=f;b=c[(c[i>>2]|0)+112>>2]|0;c[b+32>>2]=c[b+16+12>>2];b=c[(c[i>>2]|0)+112>>2]|0}b=b+16|0}c[b+4>>2]=a;c[(c[(c[i>>2]|0)+112>>2]|0)+16+12>>2]=h;b=g;d=h}if((k|0)==11?(c[j+32>>2]|0)<=(d|0):0){c[j+24>>2]=a;c[(c[(c[i>>2]|0)+112>>2]|0)+32>>2]=h}return}function fw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=(c[(c[b+16>>2]|0)+112>>2]|0)+4|0;c[g>>2]=c[g>>2]|1;g=Jx(a,b)|0;while(1){if(!g)break;f=c[g>>2]&3;e=c[((f|0)==2?g:g+-48|0)+40>>2]|0;if((e|0)==(b|0))e=c[((f|0)==3?g:g+48|0)+40>>2]|0;f=e+16|0;if(!(c[(c[(c[f>>2]|0)+112>>2]|0)+4>>2]&1)){Vx(d,g,1)|0;c[(c[(c[f>>2]|0)+112>>2]|0)+16>>2]=b;fw(a,e,d)}g=Kx(a,g,b)|0}return}function gw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+144|0;j=k+8|0;i=k;e=k+16|0;h=c[46163]|0;c[46163]=h+1;c[i>>2]=h;Y0(e,93230,i)|0;i=vA(b,e,1)|0;Az(i,134401,280,1)|0;h=c[46163]|0;c[46163]=h+1;c[j>>2]=h;Y0(e,93230,j)|0;h=b+24|0;a[j>>0]=a[h>>0]|0;a[j+1>>0]=a[h+1>>0]|0;a[j+2>>0]=a[h+2>>0]|0;a[j+3>>0]=a[h+3>>0]|0;j=Xx(e,j,0)|0;e=Sy(b)|0;while(1){if(!e)break;Xy(i,e,1)|0;h=az(j,ry(e)|0,1)|0;Az(h,134365,304,1)|0;c[(c[(c[e+16>>2]|0)+112>>2]|0)+16>>2]=h;e=Ty(b,e)|0}f=Sy(b)|0;while(1){if(!f)break;g=c[(c[(c[f+16>>2]|0)+112>>2]|0)+16>>2]|0;h=g+16|0;e=Ex(b,f)|0;while(1){if(!e)break;Vx(i,e,1)|0;m=c[(c[(c[(c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)+16>>2]|0)+112>>2]|0)+16>>2]|0;n=Rx(j,g,m,0,1)|0;Az(n,134378,176,1)|0;c[(c[n+16>>2]|0)+116>>2]=e;n=(c[h>>2]|0)+236|0;c[n>>2]=(c[n>>2]|0)+1;m=(c[m+16>>2]|0)+236|0;c[m>>2]=(c[m>>2]|0)+1;e=Gx(b,e)|0}f=Ty(b,f)|0}c[d>>2]=j;l=k;return i|0}function hw(a){a=a|0;var b=0,c=0;c=jw()|0;b=Sy(a)|0;while(1){if(!b)break;ow(c,b);b=Ty(a,b)|0}return c|0}function iw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=c[(c[b+16>>2]|0)+236>>2]|0;p=m<<2;o=vH(p)|0;p=vH(p)|0;i=0;l=Jx(a,b)|0;n=0;f=0;while(1){if(!l)break;e=c[l>>2]&3;g=c[((e|0)==2?l:l+-48|0)+40>>2]|0;if((g|0)==(b|0))g=c[((e|0)==3?l:l+48|0)+40>>2]|0;h=0;k=Jx(a,b)|0;j=i;while(1){if(!k)break;if((k|0)!=(l|0)){i=c[k>>2]&3;e=c[((i|0)==2?k:k+-48|0)+40>>2]|0;if((e|0)==(b|0))e=c[((i|0)==3?k:k+48|0)+40>>2]|0;i=Rx(a,g,e,0,0)|0;if(i)if(g>>>0<e>>>0){e=j+1|0;h=i+16|0;i=c[(c[h>>2]|0)+116>>2]|0;if(!i)h=1;else{dz(d,i)|0;c[(c[h>>2]|0)+116>>2]=0;h=1}}else{h=1;e=j}else e=j}else e=j;k=Kx(a,k,b)|0;j=e}if(!h){c[p+(n<<2)>>2]=g;e=n+1|0}else{c[o+(f<<2)>>2]=g;e=n;f=f+1|0}i=j;l=Kx(a,l,b)|0;n=e}e=m+-1-i|0;a:do if((e|0)>0){if((e|0)<(n|0))g=0;else{if((e|0)!=(n|0))break;f=c[o>>2]|0;g=f+16|0;e=0;while(1){if((e|0)>=(n|0))break a;m=c[p+(e<<2)>>2]|0;Az(Rx(a,f,m,0,1)|0,134378,176,1)|0;d=(c[g>>2]|0)+236|0;c[d>>2]=(c[d>>2]|0)+1;m=(c[m+16>>2]|0)+236|0;c[m>>2]=(c[m>>2]|0)+1;e=e+1|0}}while(1){if((g|0)>=(n|0)){f=2;break}f=g|1;if((f|0)>=(n|0)){f=2;break}d=c[p+(g<<2)>>2]|0;m=c[p+(f<<2)>>2]|0;Az(Rx(a,d,m,0,1)|0,134378,176,1)|0;d=(c[d+16>>2]|0)+236|0;c[d>>2]=(c[d>>2]|0)+1;m=(c[m+16>>2]|0)+236|0;c[m>>2]=(c[m>>2]|0)+1;g=g+2|0;e=e+-1|0}while(1){if((e|0)<=0)break a;m=c[p>>2]|0;n=c[p+(f<<2)>>2]|0;Az(Rx(a,m,n,0,1)|0,134378,176,1)|0;m=(c[m+16>>2]|0)+236|0;c[m>>2]=(c[m>>2]|0)+1;n=(c[n+16>>2]|0)+236|0;c[n>>2]=(c[n>>2]|0)+1;f=f+1|0;e=e+-1|0}}while(0);D_(p);D_(o);return}function jw(){return Cw(18136,c[4555]|0)|0}function kw(a,b,d){a=a|0;b=b|0;d=d|0;d=vH(16)|0;c[d+12>>2]=0;c[d+8>>2]=c[b+8>>2];return d|0}function lw(a,b,c){a=a|0;b=b|0;c=c|0;D_(b);return}function mw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;b=c[b>>2]|0;e=c[d>>2]|0;return ((b|0)<(e|0)?-1:(b|0)>(e|0)&1)|0}function nw(a){a=a|0;yw(a)|0;return}function ow(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d;e=b+16|0;c[f+8>>2]=c[(c[e>>2]|0)+236>>2];a=(nb[c[a>>2]&63](a,f,1)|0)+12|0;c[(c[e>>2]|0)+164>>2]=c[a>>2];c[a>>2]=b;l=d;return}function pw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;f=b+16|0;c[g+8>>2]=c[(c[f>>2]|0)+236>>2];g=nb[c[a>>2]&63](a,g,4)|0;if(!g)qa(93240,93243,107,93253);e=g+12|0;d=c[e>>2]|0;if((d|0)==(b|0)){b=c[(c[f>>2]|0)+164>>2]|0;c[e>>2]=b;if(!b)nb[c[a>>2]&63](a,g,2)|0}else{do{a=(c[d+16>>2]|0)+164|0;d=c[a>>2]|0;e=(d|0)!=0}while(e&(d|0)!=(b|0));if(e)c[a>>2]=c[(c[d+16>>2]|0)+164>>2]}l=h;return}function qw(a){a=a|0;var b=0,d=0,e=0,f=0;d=nb[c[a>>2]&63](a,0,128)|0;if(d){f=d+12|0;b=c[f>>2]|0;e=c[(c[b+16>>2]|0)+164>>2]|0;c[f>>2]=e;if(!e)nb[c[a>>2]&63](a,d,2)|0}else b=0;return b|0}function rw(){return Cw(18172,c[4555]|0)|0}function sw(a,b,d){a=a|0;b=b|0;d=d|0;d=vH(12)|0;c[d+8>>2]=c[b+8>>2];return d|0}function tw(a,b,c){a=a|0;b=b|0;c=c|0;D_(b);return}function uw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;b=c[b>>2]|0;e=c[d>>2]|0;return (b>>>0>e>>>0?1:(b>>>0<e>>>0)<<31>>31)|0}function vw(a){a=a|0;yw(a)|0;return}function ww(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e+8>>2]=b;nb[c[a>>2]&63](a,e,1)|0;l=d;return}function xw(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e+8>>2]=b;nb[c[a>>2]&63](a,e,2)|0;l=d;return}function yw(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;do if((a|0)!=0?(c[a+24>>2]|0)<=0:0){h=c[a+4>>2]|0;g=h+32|0;b=c[g>>2]|0;if(b){b=ob[b&127](a,2,0,h)|0;if((b|0)<0){b=-1;break}}else b=0;if(c[a+28>>2]|0)Hw(a,0)|0;f=(b|0)==0;if(f){nb[c[c[a+16>>2]>>2]&63](a,0,64)|0;if((Ew(a)|0)>0){b=-1;break}d=a+8|0;b=c[d>>2]|0;if((c[b+12>>2]|0)>0){e=a+12|0;ob[c[e>>2]&127](a,c[b+8>>2]|0,0,h)|0;b=c[d>>2]|0}else e=a+12|0;ob[c[e>>2]&127](a,b,0,h)|0}b=c[a+20>>2]|0;if(b){if(f&(b|0)==1)ob[c[a+12>>2]&127](a,a,0,h)|0}else D_(a);b=c[g>>2]|0;if(!b)b=0;else{ob[b&127](a,6,0,h)|0;b=0}}else b=-1;while(0);return b|0}function zw(a){a=a|0;var b=0,d=0,e=0;e=a+8|0;b=c[e>>2]|0;d=c[b>>2]|0;a:do if(!(d&12)){if(!(d&3)){d=b+8|0;a=c[d>>2]|0;c[d>>2]=0;break}a=Aw(a)|0;d=c[e>>2]|0;b=c[d+8>>2]|0;d=b+(c[d+12>>2]<<2)|0;while(1){if(b>>>0>=d>>>0)break a;c[b>>2]=0;b=b+4|0}}else a=c[b+4>>2]|0;while(0);e=c[e>>2]|0;c[e>>2]=c[e>>2]&-4097;c[e+16>>2]=0;c[e+4>>2]=0;return a|0}function Aw(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=a+8|0;a=c[g>>2]|0;b=c[a>>2]|0;if(!(b&4096)){a:do if(!(b&3)){if(b&112|0){a=c[a+8>>2]|0;break}a=c[a+4>>2]|0;if(!a)a=0;else{while(1){b=a+4|0;d=c[b>>2]|0;if(!d){e=a;break}c[b>>2]=c[d>>2];c[d>>2]=a;a=d}while(1){b=c[e>>2]|0;if(!b)break a;d=c[b+4>>2]|0;if(!d){e=b;continue}while(1){c[b+4>>2]=c[d>>2];c[d>>2]=b;b=c[d+4>>2]|0;if(!b)break;else{f=d;d=b;b=f}}c[e>>2]=d;e=d}}}else{e=c[a+8>>2]|0;f=e+(c[a+12>>2]<<2)|0;b=0;a=0;while(1){if(e>>>0>=f>>>0)break a;d=c[e>>2]|0;if(d){if(!b){b=d;a=d}else c[b>>2]=d;while(1){d=c[b>>2]|0;if(!d)break;else b=d}c[e>>2]=b}e=e+4|0}}while(0);g=c[g>>2]|0;c[g+4>>2]=a;c[g>>2]=c[g>>2]|4096}else a=c[a+4>>2]|0;return a|0}function Bw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=a+8|0;if(c[c[s>>2]>>2]&4096|0)Dw(a,0)|0;r=c[a+4>>2]|0;m=c[r>>2]|0;n=c[r+4>>2]|0;q=r+8|0;u=c[q>>2]|0;o=c[r+20>>2]|0;p=a+20|0;f=c[p>>2]&-32769;c[p>>2]=f;a:do if(!b){if(d&384|0){f=c[s>>2]|0;e=c[f+8>>2]|0;if(!e){e=0;break}if(d&256){e=c[e+4>>2]|0;c[f+4>>2]=e;if(!e){e=0;break}}else c[f+4>>2]=e;if((u|0)<0){e=c[e+8>>2]|0;break}else{e=e+(0-u)|0;break}}if(d&4098|0){e=c[s>>2]|0;if(c[e>>2]&144|0){e=0;break}e=c[e+8>>2]|0;if(!e){e=0;break}else{h=e;t=84;break}}if(!(d&64))e=0;else{i=r+16|0;b:do if((c[i>>2]|0)!=0|(u|0)<0){j=a+12|0;k=(u|0)<0;f=0-u|0;e=c[(c[s>>2]|0)+8>>2]|0;while(1){if(!e)break b;g=c[e>>2]|0;h=c[i>>2]|0;if(h|0){if(k)b=c[e+8>>2]|0;else b=e+f|0;vb[h&127](a,b,r)}if((c[q>>2]|0)>=0){e=g;continue}ob[c[j>>2]&127](a,e,0,r)|0;e=g}}while(0);e=c[s>>2]|0;c[e+4>>2]=0;c[e+8>>2]=0;c[(c[s>>2]|0)+16>>2]=0;e=0}}else{if(d&2049|0){g=r+12|0;e=c[g>>2]|0;h=(d&1|0)==0;if(!(h|(e|0)==0)){e=nb[e&63](a,b,r)|0;if(!e){e=0;break}else f=e}else f=b;do if((u|0)>-1)h=f+u|0;else{e=ob[c[a+12>>2]&127](a,0,12,r)|0;if(e|0){c[e+8>>2]=f;h=e;break}if(!(c[g>>2]|0)){e=0;break a}e=c[r+16>>2]|0;if(h|(e|0)==0){e=0;break a}vb[e&127](a,f,r);e=0;break a}while(0);g=c[s>>2]|0;e=c[g>>2]|0;do if(!(e&128)){if(!(e&16))if(!(e&32)){t=51;break}else{t=48;break}f=c[g+4>>2]|0;e=(f|0)!=0;if(!(d&8192)){if(!e){t=48;break}if((f|0)==(c[g+8>>2]|0)){t=48;break}r=f+4|0;a=c[r>>2]|0;c[h+4>>2]=a;c[a>>2]=h;c[h>>2]=f;c[r>>2]=h;break}else{if(!e){t=51;break}e=c[f>>2]|0;if(!e){t=51;break}c[h>>2]=e;c[e+4>>2]=h;c[h+4>>2]=f;c[f>>2]=h;break}}else if(!(d&8192))t=48;else t=51;while(0);if((t|0)==48){e=c[g+8>>2]|0;c[h>>2]=e;if(!e)e=h;else c[h+4>>2]=c[e+4>>2];c[e+4>>2]=h;c[(c[s>>2]|0)+8>>2]=h}else if((t|0)==51){f=g+8|0;e=c[f>>2]|0;if(!e){c[f>>2]=h;e=h}else{r=e+4|0;c[c[r>>2]>>2]=h;c[h+4>>2]=c[r>>2]}c[e+4>>2]=h;c[h>>2]=0}e=c[s>>2]|0;f=e+16|0;g=c[f>>2]|0;if((g|0)>-1)c[f>>2]=g+1;c[e+4>>2]=h;if((u|0)<0){e=c[h+8>>2]|0;break}else{e=h+(0-u)|0;break}}h=c[s>>2]|0;do if(!(d&512)){e=c[h+4>>2]|0;if(e|0){if((u|0)<0)g=c[e+8>>2]|0;else g=e+(0-u)|0;if((g|0)==(b|0))break}e=b+m|0;if((n|0)<0){b=c[e>>2]|0;t=68}else{b=e;t=68}}else t=68;while(0);if((t|0)==68){g=(u|0)<0;i=(n|0)<0;j=(o|0)==0;k=(n|0)<1;l=0-u|0;e=h+8|0;do{e=c[e>>2]|0;if(!e){e=0;break a}if(g)f=c[e+8>>2]|0;else f=e+l|0;f=f+m|0;if(i)f=c[f>>2]|0;do if(j)if(k){f=b$(b,f)|0;break}else{f=L0(b,f,n)|0;break}else f=ob[o&127](a,b,f,r)|0;while(0)}while((f|0)!=0);f=c[p>>2]|0}c[p>>2]=f|32768;if(!(d&4098)){do if(!(d&8)){f=c[s>>2]|0;if(!(d&16)){c[f+4>>2]=e;break}if((e|0)==(c[f+8>>2]|0)){c[f+4>>2]=0;e=0;break a}else{e=e+4|0;t=108;break}}else{f=c[s>>2]|0;t=108}while(0);if((t|0)==108){e=c[e>>2]|0;c[f+4>>2]=e;if(!e){e=0;break}}if((u|0)<0){e=c[e+8>>2]|0;break}else{e=e+(0-u)|0;break}}else{h=e;t=84}}while(0);if((t|0)==84){e=c[h>>2]|0;if(e){c[e+4>>2]=c[h+4>>2];e=c[h>>2]|0}f=(c[s>>2]|0)+8|0;g=c[f>>2]|0;if((h|0)==(g|0)){c[f>>2]=e;e=c[(c[s>>2]|0)+8>>2]|0;if(e|0)c[e+4>>2]=c[h+4>>2]}else{f=h+4|0;c[c[f>>2]>>2]=e;e=g+4|0;if((h|0)==(c[e>>2]|0))c[e>>2]=c[f>>2]}e=c[s>>2]|0;f=e+4|0;if((h|0)==(c[f>>2]|0))g=c[h>>2]|0;else g=0;c[f>>2]=g;t=e+16|0;c[t>>2]=(c[t>>2]|0)+-1;if((u|0)<0)e=c[h+8>>2]|0;else e=h+(0-u)|0;f=c[r+16>>2]|0;if(!((d&2|0)==0|(f|0)==0))vb[f&127](a,e,r);if((c[q>>2]|0)<0)ob[c[a+12>>2]&127](a,h,0,r)|0}return e|0}function Cw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;g=j;a:do if((a|0)!=0&(b|0)!=0?(f=C_(40)|0,(f|0)!=0):0){c[f>>2]=0;c[f+16>>2]=0;c[f+4>>2]=0;Kw(f,a,0)|0;d=f+20|0;i=a+32|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;d=c[i>>2]|0;do if(d){c[g>>2]=0;d=ob[d&127](f,1,g,a)|0;if((d|0)>=0)if(d){e=c[g>>2]|0;if(e|0)if(!(c[b+4>>2]&c[e>>2])){d=f;h=12;break}else{d=f;break}d=a+28|0;if(!(c[d>>2]|0)){d=f;h=12}else{D_(f);e=ob[c[d>>2]&127](0,0,40,a)|0;if(!e){d=0;break a}c[e>>2]=0;c[e+16>>2]=0;c[e+4>>2]=0;Kw(e,a,0)|0;c[e+20>>2]=1;c[e+24>>2]=0;c[e+32>>2]=0;c[e+28>>2]=0;d=e;f=e;h=11}}else{d=f;h=11}else{d=f;h=12}}else{d=f;h=11}while(0);if((h|0)==11){e=ob[c[d+12>>2]&127](d,0,28,a)|0;c[g>>2]=e;if(!e){d=f;h=12}else{c[e>>2]=c[b+4>>2];g=e+4|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0}}if((h|0)==12){D_(d);d=0;break}c[d+8>>2]=e;c[d>>2]=c[b>>2];c[d+16>>2]=b;e=c[i>>2]|0;if(e)ob[e&127](d,5,f,a)|0}else d=0;while(0);l=j;return d|0}function Dw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=c[c[a+16>>2]>>2]|0;j=a+8|0;g=c[j>>2]|0;h=c[g>>2]|0;d=h&4096;if(!b)if(!d)b=-1;else{e=d;b=c[g+4>>2]|0;i=5}else if(!(c[g+16>>2]|0)){e=0;i=5}else b=-1;a:do if((i|0)==5){c[g>>2]=h&-4097;if(!(h&3)){d=g+4|0;if(!(h&12)){c[d>>2]=0;d=g+8|0}c[d>>2]=b;if(e|0){b=0;break}c[(c[j>>2]|0)+16>>2]=-1;b=0;break}c[g+4>>2]=0;if(!e){c[g+16>>2]=0;while(1){if(!b){b=0;break a}j=c[b>>2]|0;nb[f&63](a,b,32)|0;b=j}}e=c[g+8>>2]|0;a=e+(c[g+12>>2]<<2)|0;while(1){if(e>>>0>=a>>>0){b=0;break a}d=c[e>>2]|0;if(d){c[e>>2]=b;b=c[d>>2]|0;c[d>>2]=0}e=e+4|0}}while(0);return b|0}function Ew(a){a=a|0;var b=0,d=0,e=0;b=a+8|0;d=c[b>>2]|0;if(c[d>>2]&4096){Dw(a,0)|0;d=c[b>>2]|0}e=d+16|0;a=c[e>>2]|0;do if((a|0)<0){b=c[d>>2]|0;if(b&12|0){a=Fw(c[d+4>>2]|0)|0;c[e>>2]=a;break}if(b&112){a=0;b=d+8|0;while(1){b=c[b>>2]|0;if(!b)break;a=a+1|0}c[e>>2]=a}}while(0);return a|0}function Fw(a){a=a|0;var b=0;if(!a)return 0;else{b=Fw(c[a+4>>2]|0)|0;return b+1+(Fw(c[a>>2]|0)|0)|0}return 0}function Gw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=l;l=l+128|0;z=G+120|0;r=G;F=a+8|0;e=c[F>>2]|0;if(c[e>>2]&4096){Dw(a,0)|0;e=c[F>>2]|0}E=c[a+4>>2]|0;A=c[E>>2]|0;B=c[E+4>>2]|0;x=E+8|0;D=c[x>>2]|0;C=c[E+20>>2]|0;t=a+20|0;c[t>>2]=c[t>>2]&-32769;h=c[e+4>>2]|0;a:do if(!b)if((d&448|0)==0|(h|0)==0)e=0;else{if(!(d&64)){b:do if(!(d&256)){e=h;while(1){f=e+4|0;g=c[f>>2]|0;if(!g)break b;c[f>>2]=c[g>>2];c[g>>2]=e;e=g}}else{e=h;while(1){f=c[e>>2]|0;if(!f)break b;a=f+4|0;c[e>>2]=c[a>>2];c[a>>2]=e;e=f}}while(0);c[(c[F>>2]|0)+4>>2]=e;if((D|0)<0){e=c[e+8>>2]|0;break}else{e=e+(0-D)|0;break}}b=E+16|0;if((c[b>>2]|0)!=0|(D|0)<0){j=a+12|0;k=(D|0)<0;i=0-D|0;e=h;do{h=e;while(1){e=h+4|0;f=c[e>>2]|0;if(!f)break;c[e>>2]=c[f>>2];c[f>>2]=h;h=f}e=c[h>>2]|0;f=c[b>>2]|0;if(f|0){if(k)g=c[h+8>>2]|0;else g=h+i|0;vb[f&127](a,g,E)}if((c[x>>2]|0)<0)ob[c[j>>2]&127](a,h,0,E)|0}while((e|0)!=0);e=c[F>>2]|0}c[e+16>>2]=0;c[e+4>>2]=0;e=0}else{y=a+16|0;u=(d&4098|0)==0;c:do if(u|(c[(c[y>>2]|0)+4>>2]|0)!=8)v=45;else{k=(B|0)<0;e=b+A|0;if(k)e=c[e>>2]|0;i=(C|0)==0;j=(B|0)<1;g=nb[c[a>>2]&63](a,b,4)|0;while(1){if(!g){v=45;break c}f=g+A|0;if(k)f=c[f>>2]|0;do if(i)if(j){f=b$(e,f)|0;break}else{f=L0(e,f,B)|0;break}else f=ob[C&127](a,e,f,E)|0;while(0);if(f|0){v=45;break c}if((g|0)==(b|0))break;g=nb[c[a>>2]&63](a,g,8)|0}h=c[(c[F>>2]|0)+4>>2]|0;c[z>>2]=c[h+4>>2];c[z+4>>2]=c[h>>2];e=z;v=180}while(0);d:do if((v|0)==45){do if(!(d&2565)){if(d&32|0){if((D|0)<0)g=c[b+8>>2]|0;else g=b+(0-D)|0;e=g+A|0;if((B|0)<0)f=c[e>>2]|0;else f=e;if(!h){e=b;f=z;h=z;v=198;break}else{e=b;s=f;j=b;v=64;break}}if(h){if((D|0)<0)e=c[h+8>>2]|0;else e=h+(0-D)|0;if((e|0)!=(b|0)){f=b+A|0;if((B|0)<0){g=b;e=0;s=c[f>>2]|0;j=0;v=64}else{g=b;e=0;s=f;j=0;v=64}}else{e=0;g=b;f=z;k=z;j=0;v=141}}else{e=0;g=b;f=z;h=z;v=198}}else{if(!(d&512)){e=b+A|0;if((B|0)<0)f=c[e>>2]|0;else f=e}else f=b;if(!h){e=0;g=b;f=z;h=z;v=198}else{g=b;e=0;s=f;j=0;v=64}}while(0);e:do if((v|0)==64){f:do if((c[(c[y>>2]|0)+4>>2]|0)==4?(q=c[(c[F>>2]|0)+24>>2]|0,!((d&516|0)==0|(q|0)==0)):0){b=(D|0)<0;m=(B|0)<0;n=(C|0)==0;o=(B|0)<1;p=0-D|0;k=0;f=h;while(1){if((k|0)>=(q|0)){f=z;k=z;m=0;break}if(b)i=c[f+8>>2]|0;else i=f+p|0;i=i+A|0;if(m)i=c[i>>2]|0;do if(n)if(o){i=b$(s,i)|0;break}else{i=L0(s,i,B)|0;break}else i=ob[C&127](a,s,i,E)|0;while(0);if(!i){v=80;break}c[r+(k<<2)>>2]=i;f=c[((i|0)<0?f+4|0:f)>>2]|0;if(!f){e=0;break a}else k=k+1|0}if((v|0)==80)if(b){e=c[f+8>>2]|0;break a}else{e=f+p|0;break a}while(1){if((m|0)>=(q|0))break f;do if((c[r+(m<<2)>>2]|0)<0){i=h+4|0;b=c[i>>2]|0;if((c[r+((m|1)<<2)>>2]|0)<0){c[i>>2]=c[b>>2];c[b>>2]=h;c[f+4>>2]=b;f=b;h=k;i=b+4|0;break}else{c[k>>2]=b;c[f+4>>2]=h;f=h;h=b;i=b;break}}else{i=c[h>>2]|0;if((c[r+((m|1)<<2)>>2]|0)>0){p=i+4|0;c[h>>2]=c[p>>2];c[p>>2]=h;c[k>>2]=i;h=i;break}else{c[f+4>>2]=i;c[k>>2]=h;f=i;i=i+4|0;break}}while(0);k=h;m=m+2|0;h=c[i>>2]|0}}else{f=z;k=z}while(0);n=(D|0)<0;o=(B|0)<0;p=(C|0)!=0;q=(B|0)<1;r=0-D|0;i=h;g:while(1){h=i;while(1){if(n)i=c[h+8>>2]|0;else i=h+r|0;i=i+A|0;if(o)i=c[i>>2]|0;do if(!p)if(q){i=b$(s,i)|0;break}else{i=L0(s,i,B)|0;break}else i=ob[C&127](a,s,i,E)|0;while(0);if(!i){v=140;break g}if((i|0)>=0)break;b=h+4|0;m=c[b>>2]|0;if(!m){v=121;break g}if(n)i=c[m+8>>2]|0;else i=m+r|0;i=i+A|0;if(o)i=c[i>>2]|0;do if(!p)if(q){i=b$(s,i)|0;break}else{i=L0(s,i,B)|0;break}else i=ob[C&127](a,s,i,E)|0;while(0);if((i|0)>=0){v=118;break}c[b>>2]=c[m>>2];c[m>>2]=h;c[f+4>>2]=m;h=c[m+4>>2]|0;if(!h){f=m;h=k;v=198;break e}else f=m}if((v|0)==118){v=0;if(!i){v=119;break}c[k>>2]=m;c[f+4>>2]=h;i=c[m>>2]|0;if(!i){f=h;h=m;v=198;break e}else{f=h;k=m;continue}}b=c[h>>2]|0;if(!b){v=139;break}if(n)i=c[b+8>>2]|0;else i=b+r|0;i=i+A|0;if(o)i=c[i>>2]|0;do if(!p)if(q){i=b$(s,i)|0;break}else{i=L0(s,i,B)|0;break}else i=ob[C&127](a,s,i,E)|0;while(0);if((i|0)>0){i=b+4|0;c[h>>2]=c[i>>2];c[i>>2]=h;c[k>>2]=b;i=c[b>>2]|0;if(!i){h=b;v=198;break e}else{k=b;continue}}if(!i){v=137;break}c[f+4>>2]=b;c[k>>2]=h;i=c[b+4>>2]|0;if(!i){f=b;v=198;break e}else{f=b;k=h}}if((v|0)==119){c[f+4>>2]=h;f=h;h=m;v=141;break}else if((v|0)==121){c[f+4>>2]=h;f=h;h=k;v=198;break}else if((v|0)==137){c[k>>2]=h;k=h;h=b;v=141;break}else if((v|0)==139){c[k>>2]=h;v=198;break}else if((v|0)==140)if(!h){h=k;v=198;break}else{v=141;break}}while(0);do if((v|0)==141){c[t>>2]=c[t>>2]|32768;i=h+4|0;c[k>>2]=c[i>>2];c[f+4>>2]=c[h>>2];if(!(d&516)){if(d&8|0){c[i>>2]=c[z>>2];c[h>>2]=0;c[z>>2]=h;v=169;break}if(d&16|0){v=z+4|0;c[h>>2]=c[v>>2];c[i>>2]=0;c[v>>2]=h;v=175;break}if(!u){e=f;v=180;break d}if(d&2049|0){if(c[(c[y>>2]|0)+4>>2]&4|0){e=h;break}c[i>>2]=0;e=z+4|0;c[h>>2]=c[e>>2];c[e>>2]=h;e=h;v=205;break}if(!(d&32)){e=0;break a}if(!(c[(c[y>>2]|0)+4>>2]&4)){c[e+4>>2]=0;x=z+4|0;c[e>>2]=c[x>>2];c[x>>2]=j;e=(c[F>>2]|0)+16|0;c[e>>2]=(c[e>>2]|0)+1;e=h;break}e=c[E+16>>2]|0;if(e|0)vb[e&127](a,g,E);if((c[x>>2]|0)<0){ob[c[a+12>>2]&127](a,j,0,E)|0;e=h}else e=h}else e=h}else if((v|0)==198){c[f+4>>2]=0;c[h>>2]=0;if(!(d&8))if(!(d&16)){if(d&516|0){e=f;break d}if(!(d&2049)){if(!(d&32)){g=0;e=f;break d}x=(c[F>>2]|0)+16|0;c[x>>2]=(c[x>>2]|0)+1}else{e=0;v=205}}else v=175;else v=169}while(0);if((v|0)==169){h=z+4|0;e=c[h>>2]|0;if(!e){e=f;break}while(1){f=e+4|0;g=c[f>>2]|0;if(!g)break;c[f>>2]=c[g>>2];c[g>>2]=e;e=g}c[h>>2]=c[e>>2]}else if((v|0)==175){e=c[z>>2]|0;if(!e){e=f;break}while(1){f=c[e>>2]|0;if(!f)break;x=f+4|0;c[e>>2]=c[x>>2];c[x>>2]=e;e=f}c[z>>2]=c[e+4>>2]}else if((v|0)==205){i=E+12|0;h=c[i>>2]|0;j=(d&1|0)==0;if(!(j|(h|0)==0))g=nb[h&63](a,g,E)|0;do if(g){if((D|0)>-1){e=g+D|0;v=215;break}e=ob[c[a+12>>2]&127](a,0,12,E)|0;if(e|0){c[e+8>>2]=g;break}if((c[i>>2]|0)!=0?(w=c[E+16>>2]|0,!(j|(w|0)==0)):0){vb[w&127](a,g,E);v=215}else v=215}else v=215;while(0);if((v|0)==215)if(!e){e=f;break}f=(c[F>>2]|0)+16|0;g=c[f>>2]|0;if((g|0)>-1)c[f>>2]=g+1}c[e+4>>2]=c[z>>2];c[e>>2]=c[z+4>>2];h:do if(!((d&516|0)==0?1:(c[(c[y>>2]|0)+4>>2]&8|0)==0)){m=(D|0)<0;if(m)f=c[e+8>>2]|0;else f=e+(0-D)|0;n=(B|0)<0;f=f+A|0;if(n)f=c[f>>2]|0;j=(C|0)==0;k=(B|0)<1;b=0-D|0;while(1){i=e+4|0;g=c[i>>2]|0;if(!g)break h;while(1){h=c[g>>2]|0;if(!h)break;z=h+4|0;c[g>>2]=c[z>>2];c[z>>2]=g;g=h}c[i>>2]=g;if(m)h=c[g+8>>2]|0;else h=g+b|0;h=h+A|0;if(n)h=c[h>>2]|0;do if(j)if(k){h=b$(f,h)|0;break}else{h=L0(f,h,B)|0;break}else h=ob[C&127](a,f,h,E)|0;while(0);if(h|0)break h;c[i>>2]=c[g>>2];c[g>>2]=e;e=g}}while(0);c[(c[F>>2]|0)+4>>2]=e;if((D|0)<0){e=c[e+8>>2]|0;break a}else{e=e+(0-D)|0;break a}}while(0);if((v|0)==180){if((D|0)<0)g=c[h+8>>2]|0;else g=h+(0-D)|0;f=c[E+16>>2]|0;if(!((d&2|0)==0|(f|0)==0))vb[f&127](a,g,E);if((c[x>>2]|0)<0)ob[c[a+12>>2]&127](a,h,0,E)|0;a=(c[F>>2]|0)+16|0;E=c[a>>2]|0;c[a>>2]=(E|0)<1?-1:E+-1|0}do{f=e+4|0;e=c[f>>2]|0}while((e|0)!=0);c[f>>2]=c[z>>2];c[(c[F>>2]|0)+4>>2]=c[z+4>>2];e=d&2|0?g:0}while(0);l=G;return e|0}function Hw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if(c[c[a+8>>2]>>2]&4096|0)Dw(a,0)|0;f=(b|0)!=0;if(f){if(c[c[b+8>>2]>>2]&4096|0)Dw(b,0)|0;if((c[b+16>>2]|0)==(c[a+16>>2]|0)){d=b;e=7}else b=0}else{d=0;e=7}a:do if((e|0)==7){while(1){if(!d)break;if((d|0)==(a|0)){b=0;break a}d=c[d+28>>2]|0;e=7}d=a+28|0;e=c[d>>2]|0;if(e|0){g=e+24|0;c[g>>2]=(c[g>>2]|0)+-1}c[a+32>>2]=0;c[d>>2]=0;if(f){c[d>>2]=b;c[a>>2]=25;g=b+24|0;c[g>>2]=(c[g>>2]|0)+1;break}else{c[a>>2]=c[c[a+16>>2]>>2];b=e;break}}while(0);return b|0}function Iw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;a:do if(!(d&99)){if((d&516|0)==0?(e=c[(c[a+16>>2]|0)+4>>2]|0,!((d&384|0)!=0&(e&12|0)==0)):0){if(e&12|0){if(!(d&408)){e=0;break}o=(d&136|0)!=0;p=(d&272|0)!=0;l=0;f=0;e=0;n=a;while(1){if(!n)break;m=nb[c[c[n+16>>2]>>2]&63](n,b,d)|0;do if(!m)g=l;else{h=c[n+4>>2]|0;i=c[h+4>>2]|0;j=c[h+20>>2]|0;g=m+(c[h>>2]|0)|0;if((i|0)<0)k=c[g>>2]|0;else k=g;if(e|0){do if(!j)if((i|0)<1){g=b$(k,f)|0;break}else{g=L0(k,f,i)|0;break}else g=ob[j&127](n,k,f,h)|0;while(0);if(!(o&(g|0)<0|p&(g|0)>0)){g=l;break}}g=n;f=k;e=m}while(0);l=g;n=c[n+28>>2]|0}c[a+32>>2]=l;break}if(!(d&24)){e=0;break}j=a+32|0;f=c[j>>2]|0;if(f){e=c[(c[f+4>>2]|0)+8>>2]|0;g=c[(c[f+8>>2]|0)+4>>2]|0;if((e|0)<0)e=c[g+8>>2]|0;else e=g+(0-e)|0;if((e|0)==(b|0))e=b;else{f=a;h=32}}else{f=a;h=32}do if((h|0)==32){while(1){if(!f){h=33;break}e=nb[c[c[f+16>>2]>>2]&63](f,b,4)|0;if(e|0){h=36;break}f=c[f+28>>2]|0;h=32}if((h|0)==33){c[j>>2]=0;e=0;break a}else if((h|0)==36){c[j>>2]=f;break}}while(0);i=(d<<4&128^128)+128|0;e=nb[c[c[f+16>>2]>>2]&63](f,e,d)|0;while(1){h=f+16|0;while(1){if(!e)break;else g=a;while(1){if((g|0)==(f|0))break a;if(nb[c[c[g+16>>2]>>2]&63](g,e,4)|0)break;g=c[g+28>>2]|0}e=nb[c[c[h>>2]>>2]&63](f,e,d)|0}f=c[f+28>>2]|0;c[j>>2]=f;if(!f){e=0;break a}e=nb[c[c[f+16>>2]>>2]&63](f,0,i)|0}}else f=a;while(1){if(!f){f=0;e=0;break}e=nb[c[c[f+16>>2]>>2]&63](f,b,d)|0;if(e|0)break;f=c[f+28>>2]|0}c[a+32>>2]=f}else e=nb[c[c[a+16>>2]>>2]&63](a,b,d)|0;while(0);return e|0}function Jw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=a+32|0;f=nb[c[a>>2]&63](a,0,128)|0;do{if(!f){e=0;break}h=c[g>>2]|0;e=f;f=nb[c[a>>2]&63](a,f,8)|0;e=nb[b&63]((h|0)==0?a:h,e,d)|0}while((e|0)>=0);return e|0}function Kw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;f=a+4|0;n=c[f>>2]|0;a:do if(n)if(b){m=c[c[a+16>>2]>>2]|0;g=a+8|0;if(c[c[g>>2]>>2]&4096|0)Dw(a,0)|0;e=c[n+32>>2]|0;if(e|0?(ob[e&127](a,3,b,n)|0)<0:0){b=0;break}c[f>>2]=b;e=c[b+28>>2]|0;c[a+12>>2]=(e|0)==0?52:e;e=c[c[g>>2]>>2]|0;if(!(e&112)){do if(!(e&2))if(!(e&3))if(!(d&1))break;else{b=n;break a}else if((d&3|0)==3){b=n;break a}else break;else if(d&2|0){b=n;break a}while(0);h=Aw(a)|0;e=c[g>>2]|0;l=c[e>>2]|0;c[e>>2]=l&-4097;c[e+4>>2]=0;c[e+16>>2]=0;b:do if(l&3|0){l=c[e+8>>2]|0;f=l+(c[e+12>>2]<<2)|0;e=l;while(1){if(e>>>0>=f>>>0)break b;c[e>>2]=0;e=e+4|0}}while(0);i=(d&2|0)==0;j=b+8|0;k=b+4|0;l=b+24|0;while(1){if(!h){b=n;break a}d=c[h>>2]|0;if(i){e=c[j>>2]|0;if((e|0)<0)e=c[h+8>>2]|0;else e=h+(0-e)|0;g=c[k>>2]|0;e=e+(c[b>>2]|0)|0;if((g|0)<0)e=c[e>>2]|0;f=c[l>>2]|0;if(!f)e=Mw(0,e,g)|0;else e=nb[f&63](a,e,b)|0;c[h+4>>2]=e}nb[m&63](a,h,32)|0;h=d}}else b=n}else b=n;else{c[f>>2]=b;n=c[b+28>>2]|0;c[a+12>>2]=(n|0)==0?52:n}while(0);return b|0}function Lw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=(c|0)==0;do if(!b)if(a)a=0;else a=C_(c)|0;else if(a){D_(b);a=0;break}else{a=F_(b,c)|0;break}while(0);return a|0}function Mw(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0;g=c;if((e|0)>=1){h=c+e+-1|0;g=(h>>>0<c>>>0?c:h)+(1-g)&-2;f=c;while(1){if(f>>>0>=h>>>0)break;b=O(((d[f>>0]|0)<<8)+b+(d[f+1>>0]|0)|0,17109811)|0;f=f+2|0}f=c+g|0;if(f>>>0>h>>>0)c=e;else{c=e;b=O(((d[f>>0]|0)<<8)+b|0,17109811)|0}}else{while(1){f=a[c>>0]|0;if(!(f<<24>>24))break;h=a[c+1>>0]|0;e=O(((f&255)<<8)+b+(h&255)|0,17109811)|0;b=e;c=c+(h<<24>>24?2:1)|0}c=c-g|0}return O(b+c|0,17109811)|0}function Nw(a){a=a|0;var b=0;b=c[46164]|0;c[46164]=a;return b|0}function Ow(a){a=a|0;var b=0;b=c[46165]|0;c[46165]=a;return b|0}function Pw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Qw(a,b,f)|0;l=e;return d|0}function Qw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=(a|0)==3;h=f?c[46167]|0:(a|0)==2?1:a;c[46167]=h;i=c[46168]|0;c[46168]=i>>>0>h>>>0?i:h;do if(h>>>0<(c[46165]|0)>>>0){a=c[46166]|0;if(!a){a=l3()|0;c[46166]=a;if(!a){a=1;break}}if(!f){o3(a)|0;a=c[46166]|0}r0(a,b,d)|0;a=0}else{if(c[46164]|0){Rw(a,b,d);a=0;break}if(f)a=c[15686]|0;else{i=c[15686]|0;c[e>>2]=(a|0)==1?93267:93273;g1(i,93281,e)|0;a=i}r0(a,b,d)|0;a=0}while(0);l=g;return a|0}function Rw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[46169]|0)==0?(f=C_(c[4564]|0)|0,c[46169]=f,(f|0)==0):0)D1(93286,c[15686]|0)|0;else e=4;do if((e|0)==4){if((a|0)!=3){kb[c[46164]&63]((a|0)==1?93267:93273)|0;kb[c[46164]&63](93945)|0}while(1){a=q0(c[46169]|0,c[4564]|0,b,d)|0;e=c[4564]|0;if((a|0)>-1&(a|0)<(e|0)){e=7;break}e=e<<1;f=a+1|0;f=(e|0)>(f|0)?e:f;c[4564]=f;if(!(F_(c[46169]|0,f)|0)){e=9;break}}if((e|0)==7){kb[c[46164]&63](c[46169]|0)|0;break}else if((e|0)==9){D1(93286,c[15686]|0)|0;break}}while(0);return}function Sw(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Qw(1,a,e)|0;l=d;return}function Tw(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if(!e){e=(d|0)==0?1024:d;d=e;e=C_(e)|0;f=1}else f=0;c[b+12>>2]=f;c[b>>2]=e;c[b+8>>2]=e+d;c[b+4>>2]=e;a[e>>0]=0;return}function Uw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=a+8|0;f=c[a>>2]|0;g=(c[h>>2]|0)-f|0;e=g<<1;g=g+b|0;e=g>>>0>e>>>0?g:e;g=a+4|0;b=f;f=(c[g>>2]|0)-f|0;d=a+12|0;if(!(c[d>>2]|0)){i=C_(e)|0;F3(i|0,b|0,f|0)|0;c[d>>2]=1;b=i}else b=F_(b,e)|0;c[a>>2]=b;c[g>>2]=b+f;c[h>>2]=b+e;return 0}function Vw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=a+4|0;e=c[f>>2]|0;if((e+d|0)>>>0>(c[a+8>>2]|0)>>>0){Uw(a,d)|0;e=c[f>>2]|0}F3(e|0,b|0,d|0)|0;c[f>>2]=(c[f>>2]|0)+d;return d|0}function Ww(a,b){a=a|0;b=b|0;return Vw(a,b,W_(b)|0)|0}function Xw(a){a=a|0;if(c[a+12>>2]|0)D_(c[a>>2]|0);return}function Yw(a){a=a|0;var b=0,e=0;b=a+4|0;e=c[b>>2]|0;if(e>>>0>(c[a>>2]|0)>>>0){c[b>>2]=e+-1;a=d[e>>0]|0}else a=-1;return a|0}function Zw(a,b,d){a=a|0;b=b|0;d=d|0;Qz(c[46171]|0,c[b+8>>2]|0)|0;Qz(c[46171]|0,c[b+12>>2]|0)|0;Ny(c[46171]|0,b);return}function _w(a,b){a=a|0;b=b|0;var c=0;c=yz(a,93334,0)|0;if((b|0)!=0&(c|0)==0){$w(a);c=yz(a,93334,0)|0}return c|0}function $w(a){a=a|0;var b=0,c=0,d=0;d=fz(a)|0;jB(d,d,104,0,1)|0;c=Sy(d)|0;while(1){if(!c)break;bx(a,c);b=Ex(d,c)|0;while(1){if(!b)break;cx(a,b);b=Gx(d,b)|0}c=Ty(d,c)|0}return}function ax(b){b=b|0;var c=0;c=b+24|0;a[c>>0]=a[c>>0]|64;hx(b);c=yA(b)|0;ex((c|0)==0?b:c,b);return}function bx(a,b){a=a|0;b=b|0;var d=0;d=dx(b)|0;if(!((d|0)!=0?(c[d+8>>2]|0)!=0:0))ex(a,b);return}function cx(a,b){a=a|0;b=b|0;var d=0;d=dx(b)|0;if(!((d|0)!=0?(c[d+8>>2]|0)!=0:0))ex(a,b);return}function dx(a){a=a|0;return yz(a,93322,0)|0}function ex(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=Az(b,93322,16,0)|0;f=fx(a,c[b>>2]&3)|0;e=d+8|0;a:do if(!(c[e>>2]|0)){a=fz(a)|0;c[e>>2]=fx(a,c[b>>2]&3)|0;a=gx(b)|0;d=d+12|0;c[d>>2]=My(ez(b)|0,((a|0)>4?a:4)<<2)|0;a=nb[c[f>>2]&63](f,0,128)|0;while(1){if(!a)break a;e=ez(b)|0;e=Oz(e,c[a+12>>2]|0)|0;c[(c[d>>2]|0)+(c[a+16>>2]<<2)>>2]=e;a=nb[c[f>>2]&63](f,a,8)|0}}while(0);return}function fx(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;a=_w(a,0)|0;a:do if(!a)a=0;else switch(b|0){case 0:{a=c[a+16>>2]|0;break a}case 1:{a=c[a+8>>2]|0;break a}case 2:case 3:{a=c[a+12>>2]|0;break a}default:{c[d>>2]=b;Pw(1,93347,d)|0;a=0;break a}}while(0);l=e;return a|0}function gx(a){a=a|0;var b=0;b=fz(ez(a)|0)|0;a=fx(b,c[a>>2]&3)|0;if(!a)a=0;else a=Ew(a)|0;return a|0}function hx(a){a=a|0;var b=0,d=0,e=0,f=0;d=Az(a,93334,20,0)|0;e=d+8|0;c[e>>2]=CA(a,18260,c[4563]|0)|0;f=d+12|0;c[f>>2]=CA(a,18260,c[4563]|0)|0;d=d+16|0;c[d>>2]=CA(a,18260,c[4563]|0)|0;b=yA(a)|0;if(!b){b=c[46170]|0;if(!((b|0)==0|(b|0)==(a|0))){b=_w(b,0)|0;ix(c[b+8>>2]|0,c[e>>2]|0,a,1);ix(c[b+12>>2]|0,c[f>>2]|0,a,2);ix(c[b+16>>2]|0,c[d>>2]|0,a,0)}}else{a=_w(b,0)|0;Hw(c[e>>2]|0,c[a+8>>2]|0)|0;Hw(c[f>>2]|0,c[a+12>>2]|0)|0;Hw(c[d>>2]|0,c[a+16>>2]|0)|0}return}function ix(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=nb[c[b>>2]&63](b,0,128)|0;while(1){if(!g)break;h=jx(e,c[g+8>>2]|0,c[g+12>>2]|0,c[g+16>>2]|0,f)|0;a[h+22>>0]=a[g+22>>0]|0;a[h+21>>0]=a[g+21>>0]|0;nb[c[d>>2]&63](d,h,1)|0;g=nb[c[b>>2]&63](b,g,8)|0}return}function jx(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;h=My(b,24)|0;a[h+20>>0]=g;c[h+8>>2]=Oz(b,d)|0;c[h+12>>2]=Oz(b,e)|0;c[h+16>>2]=f;return h|0}function kx(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+32|0;e=d;c[e+8>>2]=b;b=nb[c[a>>2]&63](a,e,4)|0;l=d;return b|0}function lx(a,b){a=a|0;b=b|0;var c=0;c=Hw(a,0)|0;b=kx(a,b)|0;Hw(a,c)|0;return b|0}function mx(a,b){a=a|0;b=b|0;a=dx(a)|0;if(!a)a=0;else a=kx(c[a+8>>2]|0,b)|0;return a|0}function nx(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;if(!b){b=c[46170]|0;if(!b){a[g>>0]=a[18296]|0;a[g+1>>0]=a[18297]|0;a[g+2>>0]=a[18298]|0;a[g+3>>0]=a[18299]|0;b=Xx(0,g,0)|0;c[46170]=b}}if(!f)b=px(b,d,e)|0;else b=ox(b,d,e,f)|0;l=h;return b|0}function ox(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=fz(a)|0;_w(a,1)|0;g=fx(a,b)|0;f=lx(g,d)|0;a:do if(!f){f=kx(g,d)|0;if(f|0){f=jx(a,d,e,c[f+16>>2]|0,b)|0;nb[c[g>>2]&63](g,f,1)|0;h=16;break}g=fx(i,b)|0;f=jx(a,d,e,Ew(g)|0,b)|0;nb[c[g>>2]&63](g,f,1)|0;switch(b|0){case 0:{jB(i,i,57,f,1)|0;h=16;break a}case 1:{d=Sy(i)|0;while(1){if(!d){h=16;break a}qx(a,d,f);d=Ty(i,d)|0}}case 2:case 3:{g=Sy(i)|0;while(1){if(!g){h=16;break a}d=Ex(i,g)|0;while(1){if(!d)break;qx(a,d,f);d=Gx(i,d)|0}g=Ty(i,g)|0}}default:break a}}else{h=f+12|0;Qz(a,c[h>>2]|0)|0;c[h>>2]=Oz(a,e)|0;h=16}while(0);if((h|0)==16)if((b|0)==0&(f|0)!=0)rx(a,f,e)|0;iz(a,a,f);return f|0}function px(a,b,c){a=a|0;b=b|0;c=c|0;a=fx(a,b)|0;if(!a)a=0;else a=kx(a,c)|0;return a|0}function qx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;b=dx(b)|0;f=d+16|0;e=c[f>>2]|0;if((e|0)>3){g=c[a+64>>2]|0;b=b+12|0;e=e<<2;c[b>>2]=ob[c[(c[g>>2]|0)+8>>2]&127](c[g+12>>2]|0,c[b>>2]|0,e,e+4|0)|0}else b=b+12|0;g=Oz(a,c[d+12>>2]|0)|0;c[(c[b>>2]|0)+(c[f>>2]<<2)>>2]=g;return}function rx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=ez(a)|0;g=(dx(a)|0)+12|0;i=b+16|0;Qz(h,c[(c[g>>2]|0)+(c[i>>2]<<2)>>2]|0)|0;f=Oz(h,d)|0;c[(c[g>>2]|0)+(c[i>>2]<<2)>>2]=f;do if(!(c[a>>2]&3)){e=c[(_w(h,0)|0)+16>>2]|0;f=b+8|0;g=lx(e,c[f>>2]|0)|0;if(!g){i=jx(h,c[f>>2]|0,d,c[i>>2]|0,c[a>>2]&3)|0;nb[c[e>>2]&63](e,i,1)|0;break}else{i=g+12|0;Qz(h,c[i>>2]|0)|0;c[i>>2]=Oz(h,d)|0;break}}while(0);iz(h,a,b);return 0}function sx(a,b,d){a=a|0;b=b|0;d=d|0;a=fx(a,b)|0;do if(a){b=c[a>>2]|0;if(!d){a=nb[b&63](a,0,128)|0;break}else{a=nb[b&63](a,d,8)|0;break}}else a=0;while(0);return a|0}function tx(a){a=a|0;var b=0;c[46171]=a;b=dx(a)|0;if(b|0){ux(a,b);Cz(a,c[b>>2]|0)|0}b=_w(a,0)|0;if(b)if(((EA(a,c[b+8>>2]|0)|0)==0?(EA(a,c[b+12>>2]|0)|0)==0:0)?(EA(a,c[b+16>>2]|0)|0)==0:0){Cz(a,c[b>>2]|0)|0;b=0}else b=1;else b=0;return b|0}function ux(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=ez(a)|0;e=gx(a)|0;b=b+12|0;a=0;while(1){d=c[b>>2]|0;if((a|0)>=(e|0))break;Qz(f,c[d+(a<<2)>>2]|0)|0;a=a+1|0}Ny(f,d);return}function vx(a){a=a|0;var b=0;b=dx(a)|0;if(b|0){ux(a,b);Cz(a,93322)|0}return}function wx(a){a=a|0;var b=0;b=dx(a)|0;if(b|0){ux(a,b);Cz(a,93322)|0}return}function xx(a,b){a=a|0;b=b|0;b=mx(a,b)|0;if(!b)b=0;else{a=c[(dx(a)|0)+12>>2]|0;b=c[a+(c[b+16>>2]<<2)>>2]|0}return b|0}function yx(a,b){a=a|0;b=b|0;a=c[(dx(a)|0)+12>>2]|0;return c[a+(c[b+16>>2]<<2)>>2]|0}function zx(a,b,c){a=a|0;b=b|0;c=c|0;b=mx(a,b)|0;if(!b)b=-1;else{rx(a,b,c)|0;b=0}return b|0}function Ax(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=ez(a)|0;f=nx(f,c[a>>2]&3,b,0)|0;if(!f){f=ez(a)|0;f=nx(f,c[a>>2]&3,b,e)|0}rx(a,f,d)|0;return 0}function Bx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=ez(a)|0;f=c[a>>2]|0;a:do if(!((c[b>>2]^f)&3)){d=1;e=0;while(1){e=sx(g,f&3,e)|0;if(!e)break a;d=mx(b,c[e+8>>2]|0)|0;if(!d){d=1;break a}f=yx(a,e)|0;rx(b,d,f)|0;if(Rz(f)|0)Sz(yx(b,d)|0);d=0;f=c[a>>2]|0}}else d=1;while(0);return d|0}function Cx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;a=c[b+40>>2]|0;f=c[d+40>>2]|0;if((a|0)==(f|0)){e=(c[b>>2]|0)>>>4;a=(c[d>>2]|0)>>>4;if(e>>>0>=a>>>0)if(e>>>0>a>>>0)a=1;else g=6;else a=-1}else{e=(c[a>>2]|0)>>>4;a=(c[f>>2]|0)>>>4;if(e>>>0>=a>>>0)if(e>>>0>a>>>0)a=1;else g=6;else a=-1}if((g|0)==6)a=0;return a|0}function Dx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;a=(c[b+40>>2]|0)+8|0;g=c[a>>2]|0;a=c[a+4>>2]|0;f=(c[d+40>>2]|0)+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;do if(!(a>>>0<f>>>0|(a|0)==(f|0)&g>>>0<e>>>0))if(a>>>0>f>>>0|(a|0)==(f|0)&g>>>0>e>>>0)a=1;else{e=b+8|0;a=c[e>>2]|0;e=c[e+4>>2]|0;if(!((a|0)==0&(e|0)==0)?(i=d+8|0,h=c[i>>2]|0,i=c[i+4>>2]|0,!((h|0)==0&(i|0)==0)):0){if(e>>>0<i>>>0|(e|0)==(i|0)&a>>>0<h>>>0){a=-1;break}if(e>>>0>i>>>0|(e|0)==(i|0)&a>>>0>h>>>0){a=1;break}}a=0}else a=-1;while(0);return a|0}function Ex(a,b){a=a|0;b=b|0;var d=0;b=Fx(a,b)|0;if(!b)b=0;else{d=a+44|0;a=b+32|0;Dw(c[d>>2]|0,c[a>>2]|0)|0;b=c[d>>2]|0;b=nb[c[b>>2]&63](b,0,128)|0;c[a>>2]=zw(c[d>>2]|0)|0}return b|0}function Fx(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+48|0;d=e;if((c[b+24>>2]|0)==(a|0))a=b+28|0;else{c[d+16>>2]=b;a=c[a+40>>2]|0;a=nb[c[a>>2]&63](a,d,4)|0}l=e;return a|0}function Gx(a,b){a=a|0;b=b|0;var d=0,e=0;d=Fx(a,c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0;if(!d)a=0;else{e=a+44|0;d=d+32|0;Dw(c[e>>2]|0,c[d>>2]|0)|0;a=c[e>>2]|0;a=nb[c[a>>2]&63](a,b,8)|0;c[d>>2]=zw(c[e>>2]|0)|0}return a|0}function Hx(a,b){a=a|0;b=b|0;var d=0;b=Fx(a,b)|0;if(!b)b=0;else{d=a+44|0;a=b+28|0;Dw(c[d>>2]|0,c[a>>2]|0)|0;b=c[d>>2]|0;b=nb[c[b>>2]&63](b,0,128)|0;c[a>>2]=zw(c[d>>2]|0)|0}return b|0}function Ix(a,b){a=a|0;b=b|0;var d=0,e=0;d=Fx(a,c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)|0;if(!d)a=0;else{e=a+44|0;d=d+28|0;Dw(c[e>>2]|0,c[d>>2]|0)|0;a=c[e>>2]|0;a=nb[c[a>>2]&63](a,b,8)|0;c[d>>2]=zw(c[e>>2]|0)|0}return a|0}function Jx(a,b){a=a|0;b=b|0;var c=0;c=Ex(a,b)|0;if(!c)c=Hx(a,b)|0;return c|0}function Kx(a,b,d){a=a|0;b=b|0;d=d|0;a:do if((c[b>>2]&3|0)==2){b=Gx(a,b)|0;if(!b){b=0;do{if(!b)b=Hx(a,d)|0;else b=Ix(a,b)|0;if(!b){b=0;break a}}while((c[b+40>>2]|0)==(d|0))}}else do{b=Ix(a,b)|0;if(!b){b=0;break a}}while((c[b+40>>2]|0)==(d|0));while(0);return b|0}function Lx(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if((gy(a)|0)!=0?(c[g>>2]=0,c[g+4>>2]=0,c[g+8>>2]=0,c[g+12>>2]=0,c[f>>2]=c[g>>2],c[f+4>>2]=c[g+4>>2],c[f+8>>2]=c[g+8>>2],c[f+12>>2]=c[g+12>>2],(Px(a,b,e,f)|0)!=0):0)f=0;else f=((d[a+24>>0]|0)>>>2&1^1)&255|(b|0)!=(e|0);l=h;return f|0}function Mx(a,b){a=a|0;b=b|0;Ox(a,b);return}function Nx(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;Xy(b,d,1)|0;Xy(b,e,1)|0;h=My(b,96)|0;i=h+48|0;l=_x(b,2)|0;j=c[i>>2]|0;k=c[h>>2]|0;m=h+8|0;c[m>>2]=f;c[m+4>>2]=g;m=h+56|0;c[m>>2]=f;c[m+4>>2]=g;g=l<<4;c[h>>2]=k&12|g|2;c[i>>2]=j&12|g|3;c[h+88>>2]=d;c[h+40>>2]=e;Ox(b,h);if(a[b+24>>0]&64){Az(h,93322,16,0)|0;cx(b,h)}gz(b,h);return h|0}function Ox(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;i=l;l=l+16|0;d=i;h=c[b>>2]&3;g=(h|0)==2?b:b+-48|0;h=(h|0)==3?b:b+48|0;e=c[h+40>>2]|0;f=c[g+40>>2]|0;while(1){if(!a)break;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];if(Px(a,e,f,d)|0)break;j=Fx(a,e)|0;m=a+44|0;Qx(c[m>>2]|0,j+32|0,g);k=a+48|0;Qx(c[k>>2]|0,j+24|0,g);j=Fx(a,f)|0;Qx(c[m>>2]|0,j+28|0,h);Qx(c[k>>2]|0,j+20|0,h);a=yA(a)|0}l=i;return}function Px(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+48|0;f=h;if(!((b|0)==0|(d|0)==0)?(c[f>>2]=c[e>>2],c[f+4>>2]=c[e+4>>2],c[f+8>>2]=c[e+8>>2],c[f+12>>2]=c[e+12>>2],c[f+40>>2]=b,g=Fx(a,d)|0,(g|0)!=0):0){e=a+48|0;g=g+20|0;Dw(c[e>>2]|0,c[g>>2]|0)|0;a=c[e>>2]|0;a=nb[c[a>>2]&63](a,f,4)|0;c[g>>2]=zw(c[e>>2]|0)|0}else a=0;l=h;return a|0}function Qx(a,b,d){a=a|0;b=b|0;d=d|0;Dw(a,c[b>>2]|0)|0;nb[c[a>>2]&63](a,d,1)|0;c[b>>2]=zw(a)|0;return}function Rx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+24|0;k=n+16|0;j=n;do if(!(oy(a,2,e,k,0)|0))if(!e){if(f|0?(gy(a)|0)==0:0){m=18;break};c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;m=7}else m=17;else{o=j;c[o>>2]=0;c[o+4>>2]=0;o=k;g=c[o+4>>2]|0;m=j+8|0;c[m>>2]=c[o>>2];c[m+4>>2]=g;c[j>>2]=2;m=7}while(0);a:do if((m|0)==7){c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];g=Px(a,b,d,i)|0;b:do if(!g){if(fy(a)|0?(c[i>>2]=c[j>>2],c[i+4>>2]=c[j+4>>2],c[i+8>>2]=c[j+8>>2],c[i+12>>2]=c[j+12>>2],h=Px(a,d,b,i)|0,h|0):0){g=h;break}do if(f|0){g=fz(a)|0;c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];g=Px(g,b,d,i)|0;if(!g){if(!(fy(a)|0))break;g=fz(a)|0;c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];g=Px(g,d,b,i)|0;if(!g)break}Mx(a,g);break b}while(0);m=17;break a}while(0)}while(0);if((m|0)==17)if(!f)g=0;else m=18;if((m|0)==18)if((Lx(a,b,d)|0)!=0?(oy(a,2,e,k,1)|0)!=0:0){g=k;g=Nx(a,b,d,c[g>>2]|0,c[g+4>>2]|0)|0;sy(a,2,g)}else g=0;l=n;return g|0}function Sx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;d=(c[b>>2]&3|0)==3;g=d?b+-48|0:b;d=d?b:b+48|0;b=c[g+40>>2]|0;h=Fx(a,c[d+40>>2]|0)|0;f=a+44|0;Tx(c[f>>2]|0,h+32|0,g);e=a+48|0;Tx(c[e>>2]|0,h+24|0,g);b=Fx(a,b)|0;Tx(c[f>>2]|0,b+28|0,d);Tx(c[e>>2]|0,b+20|0,d);return}function Tx(a,b,d){a=a|0;b=b|0;d=d|0;Dw(a,c[b>>2]|0)|0;nb[c[a>>2]&63](a,d,2)|0;c[b>>2]=zw(a)|0;return}function Ux(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;f=e;d=(c[d>>2]&3|0)==2?d:d+-48|0;g=c[d>>2]&3;h=c[((g|0)==3?d:d+48|0)+40>>2]|0;g=c[((g|0)==2?d:d+-48|0)+40>>2]|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];if(Px(b,h,g,f)|0){if((fz(b)|0)==(b|0)){if(a[b+24>>0]&64)wx(d);kz(b,d);Iz(d);h=d+8|0;qy(b,2,c[h>>2]|0,c[h+4>>2]|0)}if(!(jB(b,d,58,0,0)|0))if((fz(b)|0)==(b|0)){Ny(b,d);d=0}else d=0;else d=-1}else d=-1;l=e;return d|0}function Vx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;e=h;f=Xy(a,c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0,d)|0;g=Xy(a,c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0,d)|0;do if((f|0)!=0&(g|0)!=0){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=Px(a,f,g,e)|0;f=(e|0)==0;if(!((d|0)!=0&f)){if(f)break}else{Ox(a,b);e=b}d=c[e>>2]&3;l=h;return ((d|0)==(c[b>>2]&3|0)?e:e+(((d|0)==3?-1:1)*48|0)|0)|0}while(0);l=h;return 0}function Wx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;b=b+8|0;e=d+8|0;e=t3(c[b>>2]|0,c[b+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;return ((e|0)==0?0:e>>31|1)|0}function Xx(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;h=l;l=l+16|0;g=h;j=Yx(e)|0;f=lb[c[(c[j>>2]|0)+4>>2]&127](c[j+12>>2]|0,72)|0;c[f>>2]=c[f>>2]&-4;i=f+64|0;c[i>>2]=j;k=f+24|0;d=c[d>>2]|0;c[k>>2]=d;a[k>>0]=d&255|8;c[f+60>>2]=f;e=lb[c[c[j+4>>2]>>2]&127](f,e)|0;c[(c[i>>2]|0)+16>>2]=e;if(oy(f,0,b,g,1)|0){i=g;j=c[i+4>>2]|0;k=f+8|0;c[k>>2]=c[i>>2];c[k+4>>2]=j}k=Zx(f)|0;sy(k,0,f);l=h;return k|0}function Yx(b){b=b|0;var d=0,e=0,f=0,g=0;d=(b|0)!=0;if(d){e=c[b>>2]|0;e=(e|0)==0?18632:e}else e=18632;g=kb[c[e>>2]&63](b)|0;f=lb[c[e+4>>2]&127](g,80)|0;c[f>>2]=e;c[f+12>>2]=g;if(d){g=c[b+4>>2]|0;c[f+4>>2]=(g|0)==0?18508:g;b=c[b+8>>2]|0;b=(b|0)==0?18608:b}else{c[f+4>>2]=18508;b=18608}c[f+8>>2]=b;a[f+52>>0]=1;return f|0}function Zx(b){b=b|0;var d=0,e=0;c[b+36>>2]=CA(b,18688,c[4563]|0)|0;c[b+40>>2]=CA(b,18652,c[4563]|0)|0;d=(fz(b)|0)==(b|0);c[b+44>>2]=CA(b,d?18300:18336,c[4563]|0)|0;d=(fz(b)|0)==(b|0);c[b+48>>2]=CA(b,d?18372:18408,c[4563]|0)|0;c[b+52>>2]=CA(b,18444,c[4563]|0)|0;d=yA(b)|0;if(!((d|0)!=0?(e=_x(d,0)|0,c[b>>2]=c[b>>2]&15|e<<4,e=c[d+52>>2]|0,nb[c[e>>2]&63](e,b,1)|0,!(a[d+24>>0]&64)):0))ax(b);gz(b,b);return b|0}function _x(a,b){a=a|0;b=b|0;var d=0;d=(c[a+64>>2]|0)+24+(b<<3)|0;b=d;b=s3(c[b>>2]|0,c[b+4>>2]|0,1,0)|0;a=z;c[d>>2]=b;c[d+4>>2]=a;z=a;return b|0}function $x(b){b=b|0;var d=0,e=0,f=0,g=0;f=yA(b)|0;g=(f|0)==0;if(g?(d=b+64|0,(c[(c[c[d>>2]>>2]|0)+16>>2]|0)!=0):0){kz(b,b);g=b+8|0;qy(b,0,c[g>>2]|0,c[g+4>>2]|0);d=c[d>>2]|0;tb[c[(c[d>>2]|0)+16>>2]&127](c[d+12>>2]|0);d=0}else e=4;do if((e|0)==4){d=wA(b)|0;while(1){if(!d)break;e=xA(d)|0;$x(d)|0;d=e}d=Sy(b)|0;while(1){if(!d)break;e=Ty(b,d)|0;cz(b,d)|0;d=e}By(b);kz(b,b);if(((((EA(b,c[b+40>>2]|0)|0)==0?(EA(b,c[b+36>>2]|0)|0)==0:0)?(EA(b,c[b+48>>2]|0)|0)==0:0)?(EA(b,c[b+44>>2]|0)|0)==0:0)?(EA(b,c[b+52>>2]|0)|0)==0:0){if(a[b+24>>0]&64?tx(b)|0:0){d=-1;break}Iz(b);e=b+8|0;qy(b,0,c[e>>2]|0,c[e+4>>2]|0);if(!g){zA(f,b)|0;Ny(f,b);d=0;break}d=b+64|0;while(1){e=c[d>>2]|0;f=c[e+48>>2]|0;if(!f)break;nz(b,c[f>>2]|0)|0}tb[c[(c[e+4>>2]|0)+20>>2]&127](c[e+16>>2]|0);if(!(Jz(b)|0)){d=c[d>>2]|0;g=c[d+12>>2]|0;f=(c[d>>2]|0)+12|0;ub[c[f>>2]&63](g,b);ub[c[f>>2]&63](g,d);d=0}else d=-1}else d=-1}while(0);return d|0}function ay(a){a=a|0;return Ew(c[a+40>>2]|0)|0}function by(a){a=a|0;var b=0,c=0,d=0;b=0;c=Sy(a)|0;while(1){if(!c)break;d=(cy(a,c,0,1)|0)+b|0;b=d;c=Ty(a,c)|0}return b|0}function cy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=Fx(a,b)|0;if(f){if(!e)b=0;else b=dy(c[a+44>>2]|0,f+32|0)|0;if(d)b=(dy(c[a+44>>2]|0,f+28|0)|0)+b|0}else b=0;return b|0}function dy(a,b){a=a|0;b=b|0;var d=0;Dw(a,c[b>>2]|0)|0;d=Ew(a)|0;c[b>>2]=zw(a)|0;return d|0}function ey(b){b=b|0;return a[b+24>>0]&1|0}function fy(a){a=a|0;return (ey(a)|0)==0|0}function gy(a){a=a|0;return (d[a+24>>0]|0)>>>1&1|0}function hy(a,b){a=a|0;b=b|0;return a|0}function iy(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;if(!d){f=1392;d=c[f>>2]|0;f=c[f+4>>2]|0;c[e>>2]=d;c[e+4>>2]=f;f=s3(d|0,f|0,2,0)|0;e=1392;c[e>>2]=f;c[e+4>>2]=z}else{if(!f)a=Lz(a,d)|0;else a=Oz(a,d)|0;c[e>>2]=a;c[e+4>>2]=0}return 1}function jy(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return 0}function ky(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((c&1|0)==0&0==0)Qz(a,c)|0;return}function ly(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ((c&1|0)==0&0==0?c:0)|0}function my(a){a=a|0;return}function ny(a,b,c){a=a|0;b=b|0;c=c|0;return}function oy(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=(e|0)!=0;do if(i){if((a[e>>0]|0)!=37?(h=c[b+64>>2]|0,h=pb[c[(c[h+4>>2]|0)+4>>2]&127](c[h+16>>2]|0,d,e,f,g)|0,h|0):0)break;h=ty(b,d,e,f)|0;if(!h)j=5}else j=5;while(0);if((j|0)==5)if(g){h=c[b+64>>2]|0;h=pb[c[(c[h+4>>2]|0)+4>>2]&127](c[h+16>>2]|0,d,0,f,g)|0;if(i&(h|0)!=0){j=f;uy(b,d,e,c[j>>2]|0,c[j+4>>2]|0)}}else h=0;return h|0}function py(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a+64>>2]|0;return ob[c[(c[a+4>>2]|0)+8>>2]&127](c[a+16>>2]|0,b,d,e)|0}function qy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;zy(a,b,d,e)|0;a=c[a+64>>2]|0;xb[c[(c[a+4>>2]|0)+12>>2]&31](c[a+16>>2]|0,b,d,e);return}function ry(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;d=ez(a)|0;f=a+8|0;b=f;b=xy(d,c[a>>2]&3,c[b>>2]|0,c[b+4>>2]|0)|0;do if(!b){b=c[d+64>>2]|0;d=c[(c[b+4>>2]|0)+16>>2]|0;if(d|0?(e=f,e=ob[d&127](c[b+16>>2]|0,c[a>>2]&3,c[e>>2]|0,c[e+4>>2]|0)|0,e|0):0){b=e;break}if((c[a>>2]&3|0)==2)b=0;else{e=c[f>>2]|0;f=c[f+4>>2]|0;c[g>>2]=37;b=g+8|0;c[b>>2]=e;c[b+4>>2]=f;Y0(191693,93374,g)|0;b=191693}}while(0);l=h;return b|0}function sy(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a+64>>2]|0;vb[c[(c[a+4>>2]|0)+24>>2]&127](c[a+16>>2]|0,b,d);return}function ty(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;b=c[(c[a+64>>2]|0)+56+(((b|0)==3?2:b)<<2)>>2]|0;if(((b|0)!=0?(f=Lz(a,d)|0,(f|0)!=0):0)?(c[h+24>>2]=f,g=nb[c[b>>2]&63](b,h,4)|0,(g|0)!=0):0){d=g+16|0;h=c[d+4>>2]|0;b=e;c[b>>2]=c[d>>2];c[b+4>>2]=h;b=1}else b=0;l=i;return b|0}function uy(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=My(a,32)|0;g=h+16|0;c[g>>2]=e;c[g+4>>2]=f;c[h+24>>2]=Oz(a,d)|0;e=(b|0)==3?2:b;g=a+64|0;d=c[g>>2]|0;b=c[d+56+(e<<2)>>2]|0;if(!b){f=CA(a,18536,c[4563]|0)|0;c[(c[g>>2]|0)+56+(e<<2)>>2]=f;b=c[g>>2]|0}else{f=b;b=d}b=c[b+68+(e<<2)>>2]|0;if(!b){b=CA(a,18572,c[4563]|0)|0;c[(c[g>>2]|0)+68+(e<<2)>>2]=b}nb[c[f>>2]&63](f,h,1)|0;nb[c[b>>2]&63](b,h,1)|0;return}function vy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=b+16|0;b=c[a>>2]|0;a=c[a+4>>2]|0;d=d+16|0;e=c[d>>2]|0;d=c[d+4>>2]|0;return (a>>>0>d>>>0|(a|0)==(d|0)&b>>>0>e>>>0?1:(a>>>0<d>>>0|(a|0)==(d|0)&b>>>0<e>>>0)<<31>>31)|0}function wy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;b=c[b+24>>2]|0;e=c[d+24>>2]|0;return (b>>>0>e>>>0?1:(b>>>0<e>>>0)<<31>>31)|0}function xy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=yy(a,b,d,e)|0;if(!a)a=0;else a=c[a+24>>2]|0;return a|0}function yy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;a=c[(c[a+64>>2]|0)+68+(((b|0)==3?2:b)<<2)>>2]|0;if(!a)a=0;else{b=f+16|0;c[b>>2]=d;c[b+4>>2]=e;a=nb[c[a>>2]&63](a,f,4)|0}l=g;return a|0}function zy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=(b|0)==3?2:b;b=yy(a,f,d,e)|0;if(!b)b=0;else{e=a+64|0;d=c[(c[e>>2]|0)+56+(f<<2)>>2]|0;nb[c[d>>2]&63](d,b,2)|0;e=c[(c[e>>2]|0)+68+(f<<2)>>2]|0;nb[c[e>>2]&63](e,b,2)|0;Qz(a,c[b+24>>2]|0)|0;Ny(a,b);b=1}return b|0}function Ay(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;c[46171]=b;g=c[b+64>>2]|0;f=0;while(1){if((f|0)==3)break;h=g+56+(f<<2)|0;d=c[h>>2]|0;a:do if(d|0){d=nb[c[d>>2]&63](d,0,128)|0;while(1){if(!d)break a;e=c[h>>2]|0;e=nb[c[e>>2]&63](e,d,8)|0;if((a[c[d+24>>2]>>0]|0)!=37){d=e;continue}i=d+16|0;zy(b,f,c[i>>2]|0,c[i+4>>2]|0)|0;d=e}}while(0);f=f+1|0}return}function By(a){a=a|0;c[46171]=a;a=a+64|0;Cy((c[a>>2]|0)+56|0);Cy((c[a>>2]|0)+68|0);return}function Cy(a){a=a|0;var b=0,d=0,e=0;b=0;while(1){if((b|0)==3)break;d=a+(b<<2)|0;e=c[d>>2]|0;if(e|0){yw(e)|0;c[d>>2]=0}b=b+1|0}return}function Dy(a,b,c){a=a|0;b=b|0;c=c|0;if(!(O0(b,c,a)|0))a=0;else a=W_(b)|0;return a|0}function Ey(a,b){a=a|0;b=b|0;return D1(b,a)|0}function Fy(a){a=a|0;return w1(a)|0}function Gy(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+32|0;e=b+12|0;d=b;c[4656]=c[4653];c[4657]=c[4654];c[e>>2]=a;c[e+4>>2]=W_(a)|0;c[e+8>>2]=0;c[d>>2]=18632;c[d+4>>2]=18508;c[d+8>>2]=18620;a=TB(e,d)|0;Uz(0);l=b;return a|0}function Hy(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;if((e|0)!=0?(h=b+8|0,f=c[h>>2]|0,(f|0)<(c[b+4>>2]|0)):0){i=(c[b>>2]|0)+f|0;b=0;g=a[i>>0]|0;f=d;d=i;while(1){d=d+1|0;a[f>>0]=g;b=b+1|0;if(!(g<<24>>24!=10&(b|0)<(e|0)))break;g=a[d>>0]|0;if(!(g<<24>>24))break;else f=f+1|0}c[h>>2]=(c[h>>2]|0)+b}else b=0;return b|0}function Iy(a){a=a|0;return 0}function Jy(a,b){a=a|0;b=b|0;a=C_(b)|0;H3(a|0,0,b|0)|0;return a|0}function Ky(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=F_(b,d)|0;if(d>>>0>c>>>0)H3(a+c|0,0,d-c|0)|0;return a|0}function Ly(a,b){a=a|0;b=b|0;D_(b);return}function My(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;a=c[a+64>>2]|0;a=lb[c[(c[a>>2]|0)+4>>2]&127](c[a+12>>2]|0,b)|0;if(!a)Pw(1,93380,d)|0;l=d;return a|0}function Ny(a,b){a=a|0;b=b|0;if(b|0){a=c[a+64>>2]|0;ub[c[(c[a>>2]|0)+12>>2]&63](c[a+12>>2]|0,b)}return}function Oy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=(c[b+16>>2]|0)+8|0;b=c[a>>2]|0;a=c[a+4>>2]|0;d=(c[d+16>>2]|0)+8|0;e=c[d>>2]|0;d=c[d+4>>2]|0;return (a>>>0<d>>>0|(a|0)==(d|0)&b>>>0<e>>>0?-1:(a>>>0>d>>>0|(a|0)==(d|0)&b>>>0>e>>>0)&1)|0}function Py(a,b,d){a=a|0;b=b|0;d=d|0;a=c[b+16>>2]|0;if((a+28|0)!=(b|0))Ny(c[a+24>>2]|0,b);return}function Qy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;b=(c[c[b+16>>2]>>2]|0)>>>4;e=(c[c[d+16>>2]>>2]|0)>>>4;return (b>>>0<e>>>0?-1:b>>>0>e>>>0&1)|0}function Ry(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=183176;c[e>>2]=b;c[e+4>>2]=d;c[46176]=183168;a=c[a+40>>2]|0;a=nb[c[a>>2]&63](a,184688,4)|0;if(!a)a=0;else a=c[a+16>>2]|0;return a|0}function Sy(a){a=a|0;a=c[a+36>>2]|0;a=nb[c[a>>2]&63](a,0,128)|0;if(!a)a=0;else a=c[a+16>>2]|0;return a|0}function Ty(a,b){a=a|0;b=b|0;var d=0;b=Fx(a,b)|0;if((b|0)!=0?(d=c[a+36>>2]|0,d=nb[c[d>>2]&63](d,b,8)|0,(d|0)!=0):0)b=c[d+16>>2]|0;else b=0;return b|0}function Uy(a){a=a|0;a=c[a+36>>2]|0;a=nb[c[a>>2]&63](a,0,256)|0;if(!a)a=0;else a=c[a+16>>2]|0;return a|0}function Vy(a,b){a=a|0;b=b|0;var d=0;b=Fx(a,b)|0;if((b|0)!=0?(d=c[a+36>>2]|0,d=nb[c[d>>2]&63](d,b,16)|0,(d|0)!=0):0)b=c[d+16>>2]|0;else b=0;return b|0}function Wy(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=Ry(a,b,c)|0;do if((d|0)!=0&(e|0)==0){e=fz(a)|0;if((e|0)!=(a|0)?(f=Ry(e,b,c)|0,f|0):0){Xy(a,f,1)|0;e=f;break}if(!(py(a,1,b,c)|0))e=0;else{e=_x(a,1)|0;e=Yy(a,b,c,e,z)|0;Zy(a,e);_y(a,e)}}while(0);return e|0}function Xy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=fz(a)|0;if((e|0)==(c[b+24>>2]|0)){e=b+8|0;e=Ry(a,c[e>>2]|0,c[e+4>>2]|0)|0;if((d|0)!=0&(e|0)==0){e=yA(a)|0;if(!e)e=0;else{d=Xy(e,b,d)|0;$y(a,d);return d|0}}}else e=0;return e|0}function Yy(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;g=My(b,64)|0;h=c[g>>2]|0;i=g+8|0;c[i>>2]=d;c[i+4>>2]=e;c[g>>2]=h&12|f<<4|1;c[g+24>>2]=fz(b)|0;if(a[(fz(b)|0)+24>>0]&64)Az(g,93322,16,0)|0;return g|0}function Zy(a,b){a=a|0;b=b|0;do{$y(a,b);a=yA(a)|0}while((a|0)!=0);return}function _y(b,c){b=b|0;c=c|0;if(a[(fz(b)|0)+24>>0]&64)bx(b,c);gz(b,c);return}function $y(a,b){a=a|0;b=b|0;var d=0,e=0;e=a+40|0;Ew(c[e>>2]|0)|0;if((fz(a)|0)==(a|0))d=b+28|0;else d=My(a,36)|0;c[d+16>>2]=b;e=c[e>>2]|0;nb[c[e>>2]&63](e,d,1)|0;e=c[a+36>>2]|0;nb[c[e>>2]&63](e,d,1)|0;return}function az(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;g=j;h=fz(a)|0;if(oy(a,1,b,g,0)|0){e=g;e=Ry(a,c[e>>2]|0,c[e+4>>2]|0)|0;if(!e)if(!((d|0)==0|(h|0)==(a|0))?(f=g,f=Ry(h,c[f>>2]|0,c[f+4>>2]|0)|0,(f|0)!=0):0)e=Xy(a,f,1)|0;else i=6}else i=6;if((i|0)==6)if((d|0)!=0?(oy(a,1,b,g,1)|0)!=0:0){i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;e=_x(a,1)|0;e=Yy(a,h,i,e,z)|0;Zy(a,e);_y(a,e);sy(a,1,e)}else e=0;l=j;return e|0}function bz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;c[46185]=b;d=Jx(a,b)|0;while(1){if(!d)break;e=Kx(a,d,b)|0;Sx(a,d,0);d=e}e=c[a+40>>2]|0;nb[c[e>>2]&63](e,184724,2)|0;e=c[a+36>>2]|0;nb[c[e>>2]&63](e,184724,2)|0;return}function cz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d+8|0;e=f;if(Ry(b,c[e>>2]|0,c[e+4>>2]|0)|0){if((fz(b)|0)==(b|0)){e=Jx(b,d)|0;while(1){if(!e)break;g=Kx(b,e,d)|0;Ux(b,e)|0;e=g}if(a[b+24>>0]&64)vx(d);kz(b,d);Iz(d);g=f;qy(b,1,c[g>>2]|0,c[g+4>>2]|0)}if(!(jB(b,d,59,0,0)|0))if((fz(b)|0)==(b|0)){Ny(b,d);e=0}else e=0;else e=-1}else e=-1;return e|0}function dz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;e=h;d=c[b>>2]|0;do if(!(d&3))if((yA(b)|0)==(a|0)){d=c[b>>2]|0;g=5;break}else{Pw(1,93406,e)|0;f=-1;break}else g=5;while(0);a:do if((g|0)==5)switch(d&3){case 1:{f=cz(a,b)|0;break a}case 2:case 3:{f=Ux(a,b)|0;break a}case 0:{f=$x(b)|0;break a}default:{}}while(0);l=h;return f|0}function ez(a){a=a|0;var b=0;switch(c[a>>2]&3){case 2:case 3:{b=c[(c[a+40>>2]|0)+24>>2]|0;break}case 1:{b=c[a+24>>2]|0;break}case 0:{b=a;break}default:{}}return b|0}function fz(a){a=a|0;var b=0;switch(c[a>>2]&3){case 2:case 3:{b=(c[a+40>>2]|0)+24|0;break}case 1:{b=a+24|0;break}case 0:{b=a+60|0;break}default:{}}return c[b>>2]|0}function gz(b,d){b=b|0;d=d|0;var e=0;e=c[b+64>>2]|0;if(!(a[e+52>>0]|0))qz(b,d,100,0);else hz(b,d,c[e+48>>2]|0);return}function hz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a:do if(d|0){hz(a,b,c[d+8>>2]|0);switch(c[b>>2]&3){case 0:{e=c[d>>2]|0;break}case 1:{e=(c[d>>2]|0)+12|0;break}case 2:{e=(c[d>>2]|0)+24|0;break}default:break a}e=c[e>>2]|0;if(e|0)vb[e&127](a,b,c[d+4>>2]|0)}while(0);return}function iz(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;f=c[b+64>>2]|0;if(!(a[f+52>>0]|0))qz(b,d,101,e);else jz(b,d,e,c[f+48>>2]|0);return}function jz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;a:do if(e|0){jz(a,b,d,c[e+8>>2]|0);switch(c[b>>2]&3){case 0:{f=(c[e>>2]|0)+4|0;break}case 1:{f=(c[e>>2]|0)+16|0;break}case 2:{f=(c[e>>2]|0)+28|0;break}default:break a}f=c[f>>2]|0;if(f|0)xb[f&31](a,b,c[e+4>>2]|0,d)}while(0);return}function kz(b,d){b=b|0;d=d|0;var e=0;e=c[b+64>>2]|0;if(!(a[e+52>>0]|0))qz(b,d,102,0);else lz(b,d,c[e+48>>2]|0);return}function lz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a:do if(d|0){lz(a,b,c[d+8>>2]|0);switch(c[b>>2]&3){case 0:{e=(c[d>>2]|0)+8|0;break}case 1:{e=(c[d>>2]|0)+20|0;break}case 2:{e=(c[d>>2]|0)+32|0;break}default:break a}e=c[e>>2]|0;if(e|0)vb[e&127](a,b,c[d+4>>2]|0)}while(0);return}function mz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=My(a,12)|0;c[e>>2]=b;c[e+4>>2]=d;d=(c[a+64>>2]|0)+48|0;c[e+8>>2]=c[d>>2];c[d>>2]=e;return}function nz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=(c[a+64>>2]|0)+48|0;d=c[e>>2]|0;a:do if(!d)d=-1;else{if((c[d>>2]|0)!=(b|0)){while(1){if(!d){d=-1;break a}e=d+8|0;f=c[e>>2]|0;if((c[f>>2]|0)==(b|0))break;else d=f}if(f)c[e>>2]=c[f+8>>2]}else c[e>>2]=c[d+8>>2];Ny(a,d);d=0}while(0);return d|0}function oz(a,b){a=a|0;b=b|0;var d=0;d=fz(a)|0;a:do if((d|0)==(fz(b)|0))switch(c[b>>2]&3){case 0:{while(1){if((b|0)==(a|0)){b=1;break a}b=yA(b)|0;if(!b){b=0;break}}break}case 1:{b=b+8|0;b=(Wy(a,c[b>>2]|0,c[b+4>>2]|0,0)|0)!=0;break a}default:{b=(Vx(a,b,0)|0)!=0;break a}}else b=0;while(0);return b&1|0}function pz(a){a=a|0;return c[a>>2]&3|0}function qz(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;f=Az(a,93430,44,0)|0;switch(c|0){case 100:{e=rz(f,b,100)|0;if(!(sz(e,b)|0))tz(e,a,b,d)|0;break}case 101:{if(((sz(rz(f,b,100)|0,b)|0)==0?(sz(rz(f,b,102)|0,b)|0)==0:0)?(e=rz(f,b,101)|0,(sz(e,b)|0)==0):0)tz(e,a,b,d)|0;break}case 102:{uz(rz(f,b,100)|0,b);uz(rz(f,b,101)|0,b);e=rz(f,b,102)|0;if(!(sz(e,b)|0))tz(e,a,b,d)|0;break}default:Pw(1,93442,g)|0}l=h;return}function rz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;a:do switch(c[b>>2]&3){case 0:switch(d|0){case 100:{d=a+8|0;break a}case 101:{d=a+20|0;break a}case 102:{d=a+32|0;break a}default:{f=14;break a}}case 1:switch(d|0){case 100:{d=a+12|0;break a}case 101:{d=a+24|0;break a}case 102:{d=a+36|0;break a}default:{f=14;break a}}case 2:switch(d|0){case 100:{d=a+16|0;break a}case 101:{d=a+28|0;break a}case 102:{d=a+40|0;break a}default:{f=14;break a}}default:f=14}while(0);if((f|0)==14){Pw(1,93476,e)|0;d=0}a=c[d>>2]|0;if(!a){a=ez(b)|0;a=CA(a,18724,c[4563]|0)|0;c[d>>2]=a}l=g;return a|0}function sz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d;f=vz(b)|0;b=e+8|0;c[b>>2]=f;c[b+4>>2]=z;b=nb[c[a>>2]&63](a,e,4)|0;l=d;return b|0}function tz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=My(ez(d)|0,32)|0;c[f+20>>2]=d;g=vz(d)|0;d=f+8|0;c[d>>2]=g;c[d+4>>2]=z;c[f+16>>2]=b;if(e|0){g=My(b,8)|0;c[f+24>>2]=g;c[g>>2]=e}nb[c[a>>2]&63](a,f,1)|0;return f|0}function uz(a,b){a=a|0;b=b|0;b=sz(a,b)|0;if(b|0)nb[c[a>>2]&63](a,b,2)|0;return}function vz(a){a=a|0;a=a+8|0;z=c[a+4>>2]|0;return c[a>>2]|0}function wz(a,b,d){a=a|0;b=b|0;d=d|0;xz(b);Ny(c[b+16>>2]|0,b);return}function xz(a){a=a|0;var b=0,d=0;b=a+16|0;a=c[a+24>>2]|0;while(1){if(!a)break;d=c[a+4>>2]|0;Ny(c[b>>2]|0,a);a=d}return}function yz(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;i=k;h=c[b+16>>2]|0;f=h;while(1){if(!f){f=0;break}g=c[f>>2]|0;if((g|0)==(d|0)){j=7;break}if((a[d>>0]|0)==(a[g>>0]|0)?(b$(d,g)|0)==0:0){j=7;break}f=c[f+4>>2]|0;if((f|0)==(h|0)){f=0;break}}do if((j|0)==7){if(!(c[b>>2]&4)){if((f|0)==(h|0)&(e|0)==0){f=h;break}zz(b,f,e);break}if(e)if((h|0)==(f|0))f=h;else Pw(1,93501,i)|0}while(0);l=k;return f|0}function zz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;c[a+16>>2]=b;e=c[a>>2]|0;d=d<<2&4;c[a>>2]=e&-5|d;if(e&2|0){e=(e&3|0)==3?-1:1;c[a+(e*48|0)+16>>2]=b;e=a+(e*48|0)|0;c[e>>2]=c[e>>2]&-5|d}return}function Az(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=ez(a)|0;f=yz(a,b,0)|0;a:do if((d|0)!=0&(f|0)==0){d=My(h,d)|0;c[d>>2]=Oz(h,b)|0;switch(c[a>>2]&3){case 0:{Bz(a,d);g=d;break a}case 1:{Bz(a,d);g=d;break a}case 2:case 3:{Bz(a,d);g=d;break a}default:{}}}else g=f;while(0);if(e|0)yz(a,b,1)|0;return g|0}function Bz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a+16>>2]|0;do if(d){e=d+4|0;f=c[e>>2]|0;if((f|0)==(d|0)){c[e>>2]=b;e=d;d=b;break}else{c[b+4>>2]=f;e=b;break}}else{e=b;d=b}while(0);c[d+4>>2]=e;if(!(c[a>>2]&4))zz(a,b,0);return}function Cz(a,b){a=a|0;b=b|0;var d=0,e=0;e=ez(a)|0;d=yz(a,b,0)|0;if(!d)b=-1;else{Dz(a,d);if(!(c[a>>2]&3)){Ez(e,a,d);b=d}else{jB(fz(e)|0,a,60,d,0)|0;b=d}Qz(e,c[d>>2]|0)|0;Ny(e,b);b=0}return b|0}function Dz(a,b){a=a|0;b=b|0;var d=0;a=c[a+16>>2]|0;do{d=a+4|0;a=c[d>>2]|0}while((a|0)!=(b|0));c[d>>2]=c[b+4>>2];return}function Ez(a,b,d){a=a|0;b=b|0;d=d|0;if((c[b+16>>2]|0)==(d|0)){a=c[d+4>>2]|0;zz(b,(a|0)==(d|0)?0:a,0)}return}function Fz(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=(d|0)>-1;g=f?d:0-d|0;a:do switch(b|0){case 0:{Az(a,c,g,e)|0;if(!f){b=wA(a)|0;while(1){if(!b)break a;Fz(b,0,c,d,e);b=xA(b)|0}}break}case 3:case 2:case 1:{d=(b|0)==1;b=Sy(a)|0;while(1){if(!b)break a;b:do if(d)Az(b,c,g,e)|0;else{f=Ex(a,b)|0;while(1){if(!f)break b;Az(f,c,g,e)|0;f=Gx(a,f)|0}}while(0);b=Ty(a,b)|0}}default:{}}while(0);return}function Gz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a:do switch(b|0){case 0:{jB(a,a,61,c,1)|0;break}case 3:case 2:case 1:{e=(b|0)==1;d=Sy(a)|0;while(1){if(!d)break a;b:do if(e)Cz(d,c)|0;else{b=Ex(a,d)|0;while(1){if(!b)break b;Cz(b,c)|0;b=Gx(a,b)|0}}while(0);d=Ty(a,d)|0}}default:{}}while(0);return}function Hz(a,b,c){a=a|0;b=b|0;c=c|0;Cz(b,c)|0;return}function Iz(a){a=a|0;var b=0,d=0,e=0;d=ez(a)|0;b=a+16|0;a=c[b>>2]|0;if(a|0)do{e=a;a=c[a+4>>2]|0;Qz(d,c[e>>2]|0)|0;Ny(d,e)}while((a|0)!=(c[b>>2]|0));c[b>>2]=0;return}function Jz(a){a=a|0;return EA(a,Kz(a)|0)|0}function Kz(a){a=a|0;var b=0,d=0;if(!a)d=184760;else d=(c[a+64>>2]|0)+20|0;b=c[d>>2]|0;if(!b){b=CA(a,18760,c[4563]|0)|0;c[d>>2]=b;a=183232;c[a>>2]=-2147483648;c[a+4>>2]=0;a=183240;c[a>>2]=2147483647;c[a+4>>2]=-1}return b|0}function Lz(a,b){a=a|0;b=b|0;return Mz(Kz(a)|0,b)|0}function Mz(a,b){a=a|0;b=b|0;a=Nz(a,b)|0;if(!a)a=0;else a=c[a+16>>2]|0;return a|0}function Nz(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+32|0;e=d;c[e+16>>2]=b;b=nb[c[a>>2]&63](a,e,4)|0;l=d;return b|0}function Oz(a,b){a=a|0;b=b|0;var d=0,e=0;if(!b)d=0;else{e=Kz(a)|0;d=Nz(e,b)|0;if(!d){d=(W_(b)|0)+24|0;if(!a)d=C_(d)|0;else d=My(a,d)|0;a=d+8|0;c[a>>2]=1;c[a+4>>2]=0;a=d+20|0;b0(a,b)|0;c[d+16>>2]=a;nb[c[e>>2]&63](e,d,1)|0}else{e=d+8|0;b=e;b=s3(c[b>>2]|0,c[b+4>>2]|0,1,0)|0;c[e>>2]=b;c[e+4>>2]=z}d=c[d+16>>2]|0}return d|0}function Pz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if(!b)d=0;else{e=Kz(a)|0;d=Nz(e,b)|0;if(!d){d=(W_(b)|0)+24|0;if(!a)d=C_(d)|0;else d=My(a,d)|0;g=183232;f=c[g+4>>2]|0;a=d+8|0;c[a>>2]=c[g>>2]|1;c[a+4>>2]=f;a=d+20|0;b0(a,b)|0;c[d+16>>2]=a;nb[c[e>>2]&63](e,d,1)|0}else{g=d+8|0;f=g;f=s3(c[f>>2]|0,c[f+4>>2]|0,1,0)|0;c[g>>2]=f;c[g+4>>2]=z}d=c[d+16>>2]|0}return d|0}function Qz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((b|0)!=0?(d=Kz(a)|0,e=Nz(d,b)|0,(e|0)!=0):0)if((c[e+16>>2]|0)==(b|0)?(b=e+8|0,g=b,g=s3(c[g>>2]|0,c[g+4>>2]|0,-1,-1)|0,f=z,b,c[b>>2]=g,c[b+4>>2]=f,b=183240,(g|0)==0&(f|0)==0|(c[b>>2]|0)==0&(c[b+4>>2]|0)==0):0){DA(a,d,e)|0;a=0}else a=0;else a=-1;return a|0}function Rz(a){a=a|0;var b=0;if(!a)a=0;else{a=a+-12|0;b=183232;a=c[b>>2]&c[a>>2]}return a|0}function Sz(a){a=a|0;var b=0,d=0,e=0;if(a|0){d=183232;a=a+-12|0;e=a;b=c[e+4>>2]|c[d+4>>2];c[a>>2]=c[e>>2]|c[d>>2];c[a+4>>2]=b}return}function Tz(a){a=a|0;c[4699]=a;return}function Uz(a){a=a|0;c[46195]=a;c[4699]=1;return}function Vz(a,b){a=a|0;b=b|0;c[46196]=a;c[46197]=b;c[46198]=0;return}function Wz(){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if(!(c[46199]|0)){c[46199]=1;if(!(c[46200]|0))c[46200]=1;if(!(c[46191]|0))c[46191]=c[15621];if(!(c[46192]|0))c[46192]=c[15653];k=c[46201]|0;if(!((k|0)!=0?(c[k>>2]|0)!=0:0)){Xz();k=Yz(c[46191]|0,16384)|0;c[c[46201]>>2]=k}Zz()}a:while(1){j=c[46202]|0;a[j>>0]=a[191725]|0;e=(c[(c[c[46201]>>2]|0)+28>>2]|0)+(c[46200]|0)|0;f=j;b:while(1){h=f;while(1){f=c[18800+(d[h>>0]<<2)>>2]|0;if(b[63752+(e<<1)>>1]|0){c[46203]=e;c[46204]=h}c:while(1){g=f&255;do{f=g+(b[63938+(e<<1)>>1]|0)|0;if((e|0)==(b[64148+(f<<1)>>1]|0))break c;k=b[64684+(e<<1)>>1]|0;e=k<<16>>16}while(k<<16>>16<=92);f=c[19824+(g<<2)>>2]|0}e=b[64894+(f<<1)>>1]|0;f=h+1|0;if((b[63938+(e<<1)>>1]|0)==219)break;else h=f}d:while(1){k=j;e:while(1){e=b[63752+(e<<1)>>1]|0;if(!(e<<16>>16)){e=b[63752+(c[46203]<<1)>>1]|0;f=c[46204]|0}else e=e<<16>>16;c[46193]=j;i=f;c[46194]=i-k;a[191725]=a[f>>0]|0;a[f>>0]=0;c[46202]=f;f:while(1){switch(e|0){case 1:{m=27;break a}case 12:{m=53;break a}case 13:{m=55;break a}case 14:{m=57;break a}case 15:{m=61;break a}case 16:{m=65;break a}case 17:{m=67;break a}case 18:{m=69;break a}case 19:{m=72;break a}case 20:{m=75;break a}case 21:{m=78;break a}case 23:{m=86;break a}case 33:{m=118;break a}case 39:case 38:case 37:case 36:{l=0;break a}case 2:{m=29;break b}case 3:{m=32;break b}case 4:{m=35;break b}case 5:{m=37;break b}case 6:{m=39;break b}case 7:{m=42;break b}case 8:{m=44;break b}case 9:{m=47;break b}case 10:{m=49;break b}case 11:{m=51;break b}case 22:{m=83;break b}case 24:{m=89;break b}case 25:{m=92;break b}case 26:{m=95;break b}case 27:{m=98;break b}case 28:{m=101;break b}case 29:{m=104;break b}case 30:{m=109;break b}case 31:{m=112;break b}case 32:{m=115;break b}case 34:{m=121;break b}case 0:break f;case 35:break;default:{m=134;break a}}h=c[46193]|0;a[f>>0]=a[191725]|0;e=c[46201]|0;g=c[e>>2]|0;if(!(c[g+44>>2]|0)){n=c[g+16>>2]|0;c[46206]=n;c[g>>2]=c[46191];g=c[e>>2]|0;c[g+44>>2]=1;e=n}else e=c[46206]|0;if((c[46202]|0)>>>0<=((c[g+4>>2]|0)+e|0)>>>0){m=128;break e}switch(gA()|0){case 0:{m=132;break d}case 2:{m=133;break e}case 1:break;default:continue a}c[46202]=c[46193];e=(((c[46200]|0)+-1|0)/2|0)+36|0}a[f>>0]=a[191725]|0;f=c[46204]|0;e=c[46203]|0}if((m|0)==128){m=0;g=i-h|0;h=c[46193]|0;f=h+(g+-1)|0;c[46202]=f;e=eA()|0;i=fA(e)|0;j=c[46193]|0;if(!i)continue;else{m=129;break}}else if((m|0)==133){m=0;f=(c[(c[c[46201]>>2]|0)+4>>2]|0)+(c[46206]|0)|0;c[46202]=f;e=eA()|0;j=c[46193]|0;continue}}if((m|0)==129){m=0;f=h+g|0;c[46202]=f;e=i;continue}else if((m|0)==132){m=0;f=(c[46193]|0)+(i-h+-1)|0;c[46202]=f;e=eA()|0;j=c[46193]|0;continue}}switch(m|0){case 29:{m=0;e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;c[4699]=(c[4699]|0)+1;continue a}case 32:{m=0;e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;c[46200]=3;continue a}case 35:{m=0;e=c[46194]|0;if(!e)continue a;c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;continue a}case 37:{m=0;e=c[46194]|0;if(!e)continue a;c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;continue a}case 39:{m=0;e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;c[46200]=1;continue a}case 42:{m=0;e=c[46194]|0;if(!e)continue a;c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;continue a}case 44:{m=0;e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;_z();continue a}case 47:{m=0;e=c[46194]|0;if(!e)continue a;c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;continue a}case 49:{m=0;e=c[46194]|0;if(!e)continue a;c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;continue a}case 51:{m=0;e=c[46194]|0;if(!e)continue a;c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;continue a}case 83:{m=0;e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;c[46200]=5;aA();continue a}case 89:{m=0;e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;cA(95669);continue a}case 92:{m=0;e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;cA(93534);continue a}case 95:{m=0;e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;c[4699]=(c[4699]|0)+1;continue a}case 98:{m=0;f=c[46194]|0;e=c[46193]|0;if(f|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[e+(f+-1)>>0]|0)==10&1;cA(e);continue a}case 101:{m=0;e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;c[46200]=7;c[46205]=1;aA();continue a}case 104:{m=0;e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;n=(c[46205]|0)+-1|0;c[46205]=n;if(!n){m=108;break a}cA(c[46193]|0);continue a}case 109:{m=0;f=c[46194]|0;e=c[46193]|0;if(f|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[e+(f+-1)>>0]|0)==10&1;c[46205]=(c[46205]|0)+1;cA(e);continue a}case 112:{m=0;f=c[46194]|0;e=c[46193]|0;if(f|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[e+(f+-1)>>0]|0)==10&1;cA(e);c[4699]=(c[4699]|0)+1;continue a}case 115:{m=0;f=c[46194]|0;e=c[46193]|0;if(f|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[e+(f+-1)>>0]|0)==10&1;cA(e);continue a}case 121:{m=0;f=c[46194]|0;e=c[46193]|0;if(f|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[e+(f+-1)>>0]|0)==10&1;E1(e,f,1,c[46192]|0)|0;continue a}}}switch(m|0){case 27:{e=c[46194]|0;if(!e)l=-1;else{c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;l=-1}break}case 53:{e=c[46194]|0;if(!e)l=259;else{c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;l=259}break}case 55:{e=c[46194]|0;if(!e)l=260;else{c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;l=260}break}case 57:{e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;if(!(c[46198]|0)){c[46198]=258;l=258}else l=258;break}case 61:{e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;if(!(c[46198]|0)){c[46198]=261;l=261}else l=261;break}case 65:{e=c[46194]|0;if(!e)l=263;else{c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;l=263}break}case 67:{e=c[46194]|0;if(!e)l=262;else{c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;l=262}break}case 69:{e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;l=(c[46198]|0)==261?264:45;break}case 72:{e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;l=(c[46198]|0)==258?264:45;break}case 75:{f=c[46194]|0;e=c[46193]|0;if(f|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[e+(f+-1)>>0]|0)==10&1;c[46221]=Oz(c[46171]|0,e)|0;l=267;break}case 78:{e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;if($z()|0){m=(c[46194]|0)+-1|0;a[f>>0]=a[191725]|0;n=j+m|0;c[46202]=n;c[46193]=j;c[46194]=m;a[191725]=a[n>>0]|0;a[n>>0]=0;c[46202]=n}c[46221]=Oz(c[46171]|0,c[46193]|0)|0;l=267;break}case 86:{e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;c[46200]=1;bA();l=268;break}case 108:{c[46200]=1;dA();l=268;break}case 118:{f=c[46194]|0;e=c[46193]|0;if(f|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[e+(f+-1)>>0]|0)==10&1;l=a[e>>0]|0;break}case 134:{hA(93537);break}}return l|0}function Xz(){var a=0,b=0,d=0;b=c[46201]|0;do if(!b){a=oA(4)|0;c[46201]=a;if(!a)hA(93895);else{c[a>>2]=0;a=1;d=9;break}}else{a=c[46212]|0;if(0>=(a+-1|0)>>>0){a=a+8|0;b=iA(b,a<<2)|0;c[46201]=b;if(!b)hA(93895);else{d=b+(c[46212]<<2)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;c[d+24>>2]=0;c[d+28>>2]=0;d=9;break}}}while(0);if((d|0)==9)c[46212]=a;return}function Yz(a,b){a=a|0;b=b|0;var d=0;d=oA(48)|0;if(!d)hA(93850);c[d+12>>2]=b;b=oA(b+2|0)|0;c[d+4>>2]=b;if(!b)hA(93850);else{c[d+20>>2]=1;kA(d,a);return d|0}return 0}function Zz(){var b=0,d=0;d=c[46201]|0;b=c[d>>2]|0;c[46206]=c[b+16>>2];b=c[b+8>>2]|0;c[46202]=b;c[46193]=b;c[46191]=c[c[d>>2]>>2];a[191725]=a[b>>0]|0;return}function _z(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+32|0;f=g;d=g+16|0;e=g+12|0;h=c[46193]|0;b=h+1|0;i=(z$(b,93834,4)|0)==0;b=i?h+5|0:b;c[f>>2]=e;c[f+4>>2]=g+20;c[f+8>>2]=d;f=N1(b,93839,f)|0;if((f|0)>0?(c[4699]=(c[e>>2]|0)+-1,(f|0)!=1):0){d=b+(c[d>>2]|0)|0;b=d;a:while(1){e=a[b>>0]|0;switch(e<<24>>24){case 0:case 34:break a;default:{}}b=b+1|0}if((b|0)!=(d|0)&e<<24>>24==34){a[b>>0]=0;nA(d,b-d|0)}}l=g;return}function $z(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+2080|0;i=j+8|0;f=j;b=j+1056|0;d=j+32|0;h=j+16|0;k=a[(c[46193]|0)+((c[46194]|0)+-1)>>0]|0;e=k<<24>>24==46;if(e|((k&255)+-48|0)>>>0<10)if(e?(mA()|0)!=0:0)g=4;else b=0;else g=4;if((g|0)==4){k=c[46195]|0;Tw(h,1024,b);Ww(h,93745)|0;Ww(h,c[46193]|0)|0;c[f>>2]=c[4699];Y0(d,93789,f)|0;Ww(h,d)|0;Ww(h,(k|0)==0?93739:k)|0;Ww(h,93806)|0;d=h+4|0;b=c[d>>2]|0;if(b>>>0>=(c[h+8>>2]|0)>>>0){Uw(h,1)|0;b=c[d>>2]|0}a[b>>0]=0;b=c[h>>2]|0;c[d>>2]=b;c[i>>2]=b;Pw(0,93831,i)|0;Xw(h);b=1}l=j;return b|0}function aA(){var b=0;b=c[46207]|0;if(!b){b=C_(1024)|0;c[46207]=b;c[46209]=b+1024}c[46208]=b;a[b>>0]=0;return}function bA(){c[46221]=Oz(c[46171]|0,c[46207]|0)|0;a[c[46207]>>0]=0;return}function cA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;e=c[46208]|0;d=c[46207]|0;if(e>>>0>d>>>0){e=e+-1|0;f=3}a:while(1){if((f|0)==3)c[46208]=e;f=c[46209]|0;g=f;do{h=b;b=b+1|0;h=a[h>>0]|0;i=e;e=e+1|0;a[i>>0]=h;if(!(h<<24>>24))break a}while(e>>>0<f>>>0);c[46208]=e;f=d;i=g-f<<1;d=F_(d,i)|0;c[46207]=d;c[46209]=d+i;e=d+(e-f)|0;f=3}c[46208]=e;return}function dA(){c[46221]=Pz(c[46171]|0,c[46207]|0)|0;a[c[46207]>>0]=0;return}function eA(){var d=0,e=0,f=0,g=0,h=0;h=c[46202]|0;g=c[46193]|0;e=(c[(c[c[46201]>>2]|0)+28>>2]|0)+(c[46200]|0)|0;while(1){if(g>>>0>=h>>>0)break;d=a[g>>0]|0;if(!(d<<24>>24))d=1;else d=c[18800+((d&255)<<2)>>2]|0;if(b[63752+(e<<1)>>1]|0){c[46203]=e;c[46204]=g}a:while(1){f=d&255;do{d=f+(b[63938+(e<<1)>>1]|0)|0;if((e|0)==(b[64148+(d<<1)>>1]|0))break a;d=b[64684+(e<<1)>>1]|0;e=d<<16>>16}while(d<<16>>16<=92);d=c[19824+(f<<2)>>2]|0}g=g+1|0;e=b[64894+(d<<1)>>1]|0}return e|0}function fA(a){a=a|0;var d=0;if(b[63752+(a<<1)>>1]|0){d=c[46202]|0;c[46203]=a;c[46204]=d}while(1){d=(b[63938+(a<<1)>>1]|0)+1|0;if((a|0)==(b[64148+(d<<1)>>1]|0))break;a=b[64684+(a<<1)>>1]|0}d=b[64894+(d<<1)>>1]|0;return (d<<16>>16==92?0:d<<16>>16)|0}function gA(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=c[46201]|0;g=c[j>>2]|0;i=c[g+4>>2]|0;f=c[46193]|0;l=c[46202]|0;k=l;if(l>>>0>(i+((c[46206]|0)+1)|0)>>>0)hA(93592);h=k-f|0;if(!(c[g+40>>2]|0))b=(h|0)==1?1:2;else{l=h+-1|0;h=i;g=0;while(1){if((g|0)>=(l|0))break;a[h>>0]=a[f>>0]|0;h=h+1|0;f=f+1|0;g=g+1|0}f=c[j>>2]|0;do if((c[f+44>>2]|0)==2){c[46206]=0;c[f+16>>2]=0;e=f;m=17}else{while(1){i=f+12|0;h=c[i>>2]|0;g=h-l+-1|0;if(g|0){m=16;break}g=f+4|0;j=c[g>>2]|0;if(!(c[f+20>>2]|0)){m=12;break}f=h<<1;f=(f|0)==0?(h>>>3)+h|0:f;c[i>>2]=f;f=iA(j,f+2|0)|0;c[g>>2]=f;if(!f)break;j=f+(k-j)|0;c[46202]=j;f=c[c[46201]>>2]|0;k=j}if((m|0)==12)c[g>>2]=0;else if((m|0)==16){d=nb[c[c[(c[46196]|0)+8>>2]>>2]&63](c[46197]|0,(c[f+4>>2]|0)+l|0,g>>>0<8192?g:8192)|0;e=c[c[46201]>>2]|0;c[46206]=d;c[e+16>>2]=d;if(!d){m=17;break}else{b=0;break}}hA(93648)}while(0);do if((m|0)==17)if(!l){jA(c[46191]|0);b=1;d=c[46206]|0;e=c[c[46201]>>2]|0;break}else{c[e+44>>2]=2;b=2;d=0;break}while(0);f=d+l|0;do if(f>>>0>(c[e+12>>2]|0)>>>0){m=iA(c[e+4>>2]|0,f+(d>>>1)|0)|0;d=c[46201]|0;c[(c[d>>2]|0)+4>>2]=m;d=c[(c[d>>2]|0)+4>>2]|0;if(!d)hA(93692);else{n=c[46206]|0;o=d;break}}else{n=d;o=c[e+4>>2]|0}while(0);n=n+l|0;c[46206]=n;a[o+n>>0]=0;o=c[46201]|0;a[(c[(c[o>>2]|0)+4>>2]|0)+((c[46206]|0)+1)>>0]=0;c[46193]=c[(c[o>>2]|0)+4>>2]}return b|0}function hA(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=c[15686]|0;c[b>>2]=a;g1(d,93588,b)|0;Sa(2)}function iA(a,b){a=a|0;b=b|0;return F_(a,b)|0}function jA(a){a=a|0;var b=0,d=0,e=0;d=c[46201]|0;if((d|0)!=0?(b=c[d>>2]|0,(b|0)!=0):0)e=4;else{Xz();b=Yz(c[46191]|0,16384)|0;d=c[46201]|0;c[d>>2]=b;if(!d)b=0;else e=4}kA(b,a);Zz();return}function kA(a,b){a=a|0;b=b|0;var d=0;d=c[(O_()|0)>>2]|0;lA(a);c[a>>2]=b;c[a+40>>2]=1;b=c[46201]|0;if(!b)b=0;else b=c[b>>2]|0;if((b|0)!=(a|0)){c[a+32>>2]=1;c[a+36>>2]=0}c[a+24>>2]=0;c[(O_()|0)>>2]=d;return}function lA(b){b=b|0;var d=0;if(b|0){c[b+16>>2]=0;d=b+4|0;a[c[d>>2]>>0]=0;a[(c[d>>2]|0)+1>>0]=0;c[b+8>>2]=c[d>>2];c[b+28>>2]=1;c[b+44>>2]=0;d=c[46201]|0;if(!d)d=0;else d=c[d>>2]|0;if((d|0)==(b|0))Zz()}return}function mA(){var b=0,d=0;d=c[46193]|0;b=(c[46194]|0)+-2|0;while(1){if((b|0)<=-1){b=0;break}if((a[d+b>>0]|0)==46){b=1;break}else b=b+-1|0}return b|0}function nA(a,b){a=a|0;b=b|0;var d=0;d=c[46210]|0;if((d|0)<(b|0)){if(!d)d=C_(b+1|0)|0;else d=F_(c[46211]|0,b+1|0)|0;c[46211]=d;c[46210]=b}else d=c[46211]|0;b0(d,a)|0;c[46195]=c[46211];return}function oA(a){a=a|0;return C_(a)|0}function pA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+2112|0;k=m+32|0;i=m+24|0;h=m+16|0;g=m+8|0;f=m;d=m+56|0;j=m+40|0;Tw(j,1024,m+1080|0);e=c[46195]|0;if(e|0){Ww(j,e)|0;Ww(j,93945)|0}Ww(j,b)|0;c[f>>2]=c[4699];Y0(d,93948,f)|0;Ww(j,d)|0;a:do if(!(a[c[46193]>>0]|0))switch(((c[46200]|0)+-1|0)/2|0|0){case 2:{c[g>>2]=16384;Y0(d,93968,g)|0;Ww(j,d)|0;b=c[46207]|0;if(!(a[b>>0]|0))break a;i=W_(b)|0;Ww(j,94030)|0;b=c[46207]|0;if((i|0)>80)a[b+80>>0]=0;Ww(j,b)|0;break a}case 3:{c[h>>2]=16384;Y0(d,94049,h)|0;Ww(j,d)|0;b=c[46207]|0;if(!(a[b>>0]|0))break a;i=W_(b)|0;Ww(j,94117)|0;b=c[46207]|0;if((i|0)>80)a[b+80>>0]=0;Ww(j,b)|0;break a}case 1:{c[i>>2]=16384;Y0(d,94136,i)|0;Ww(j,d)|0;break a}default:break a}else{Ww(j,93960)|0;Ww(j,c[46193]|0)|0;d=j+4|0;b=c[d>>2]|0;if(b>>>0>=(c[j+8>>2]|0)>>>0){Uw(j,1)|0;b=c[d>>2]|0}c[d>>2]=b+1;a[b>>0]=39}while(0);e=j+4|0;b=c[e>>2]|0;d=j+8|0;if(b>>>0>=(c[d>>2]|0)>>>0){Uw(j,1)|0;b=c[e>>2]|0}c[e>>2]=b+1;a[b>>0]=10;b=c[e>>2]|0;if(b>>>0>=(c[d>>2]|0)>>>0){Uw(j,1)|0;b=c[e>>2]|0}a[b>>0]=0;i=c[j>>2]|0;c[e>>2]=i;c[k>>2]=i;Pw(1,93831,k)|0;Xw(j);l=m;return}function qA(){rA(c[46193]|0);return}function rA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=c[46202]|0;a[j>>0]=a[191725]|0;i=c[46201]|0;e=c[i>>2]|0;d=c[e+4>>2]|0;if(j>>>0<(d+2|0)>>>0){f=d+((c[46206]|0)+2)|0;g=d+((c[e+12>>2]|0)+2)|0;k=d;h=e;while(1){if(f>>>0<=k>>>0)break;e=f+-1|0;k=g+-1|0;a[k>>0]=a[e>>0]|0;h=c[i>>2]|0;f=e;g=k;k=c[h+4>>2]|0}e=g-f|0;d=j+e|0;j=c[h+12>>2]|0;c[46206]=j;c[h+16>>2]=j;if(d>>>0<(k+2|0)>>>0)hA(94195);else{l=b+e|0;m=d}}else{l=b;m=j}b=m+-1|0;a[b>>0]=64;c[46193]=l;a[191725]=a[b>>0]|0;c[46202]=b;return}function sA(){var a=0;a=c[46201]|0;if(!a)a=0;else a=c[a>>2]|0;lA(a);return}function tA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+80|0;f=e;g=a+52|0;FA(a,c[g>>2]|0,18444);a=f+8|0;c[a>>2]=b;c[a+4>>2]=d;d=c[g>>2]|0;d=nb[c[d>>2]&63](d,f,4)|0;l=e;return d|0}function uA(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=tA(b,d,e)|0;if(!f){f=My(b,72)|0;c[f+64>>2]=c[b+64>>2];g=f+24|0;h=c[b+24>>2]|0;c[g>>2]=h;a[g>>0]=h&255&-9;c[f+56>>2]=b;c[f+60>>2]=c[b+60>>2];b=f+8|0;c[b>>2]=d;c[b+4>>2]=e;Zx(f)|0}return f|0}function vA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;f=g;if(!(((b|0)!=0?(oy(a,0,b,f,0)|0)!=0:0)?(e=f,e=tA(a,c[e>>2]|0,c[e+4>>2]|0)|0,(e|0)!=0):0))if((d|0)!=0?(oy(a,0,b,f,1)|0)!=0:0){e=f;e=uA(a,c[e>>2]|0,c[e+4>>2]|0)|0;sy(a,0,e)}else e=0;l=g;return e|0}function wA(a){a=a|0;a=c[a+52>>2]|0;return nb[c[a>>2]&63](a,0,128)|0}function xA(a){a=a|0;var b=0;b=yA(a)|0;if(!b)a=0;else{b=c[b+52>>2]|0;a=nb[c[b>>2]&63](b,a,8)|0}return a|0}function yA(a){a=a|0;return c[a+56>>2]|0}function zA(a,b){a=a|0;b=b|0;a=c[a+52>>2]|0;return nb[c[a>>2]&63](a,b,2)|0}function AA(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[46213]|0;e=(b|0)!=0;do if(!a)if(e){D_(b);a=0;break}else{a=C_(d)|0;break}else if(e){Ny(a,b);a=0;break}else{a=My(a,d)|0;break}while(0);return a|0}function BA(a,b,d){a=a|0;b=b|0;d=d|0;a=c[46213]|0;if(!a)D_(b);else Ny(a,b);return}function CA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=b+28|0;f=c[e>>2]|0;c[e>>2]=7;c[46213]=a;d=Cw(b,d)|0;c[e>>2]=f;c[46213]=0;return d|0}function DA(a,b,d){a=a|0;b=b|0;d=d|0;c[46213]=a;return nb[c[b>>2]&63](b,d,2)|0}function EA(a,b){a=a|0;b=b|0;var d=0,e=0;d=(Kw(b,0,0)|0)+28|0;e=c[d>>2]|0;c[d>>2]=7;c[46213]=a;if(!(yw(b)|0)){c[d>>2]=e;c[46213]=0;a=0}else a=1;return a|0}function FA(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0?(Kw(b,0,0)|0)!=(c|0):0)Kw(b,c,0)|0;return}function GA(a,b){a=a|0;b=b|0;if(!(Rz(a)|0))b=IA(a,b)|0;else HA(a,b)|0;return b|0}function HA(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;a[c>>0]=60;e=c;while(1){d=e+1|0;f=a[b>>0]|0;if(!(f<<24>>24))break;a[d>>0]=f;b=b+1|0;e=d}a[d>>0]=62;a[e+2>>0]=0;return c|0}function IA(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if((b|0)!=0?(a[b>>0]|0)!=0:0){a[d>>0]=34;l=a[b>>0]|0;q=0;g=((l+-45&255)<2|((l&255)+-48|0)>>>0<10)&1;h=0;i=0;j=0;e=d+1|0;f=b+1|0;b:while(1){k=e;while(1){if(!(l<<24>>24))break b;e=l&255;c:do if(l<<24>>24==34){a[k>>0]=92;m=g;n=1;k=k+1|0}else{if(!g){n=l<<24>>24>-1&(l<<24>>24!=95&(M$(e)|0)==0);m=0;n=n?1:h;break}switch(l<<24>>24){case 45:{n=(j|0)==0;m=n?g:0;n=n?h:1;break c}case 46:{n=(i|0)==0;m=n?g:0;n=n?h:1;i=i+1|0;break c}default:{n=(e+-48|0)>>>0<10;m=n?g:0;n=n?h:1;break c}}}while(0);e=k+1|0;a[k>>0]=l;p=f+1|0;o=a[f>>0]|0;j=j+1|0;f=c[5005]|0;if(!f){g=m;h=n;k=e;f=p;l=o;continue}g=o&255;h=o<<24>>24!=0;if((q&h?!(l<<24>>24==92|l<<24>>24>-1&((l+-45&255)>1&(M$(l<<24>>24)|0)==0)^1):0)?!(o<<24>>24>-1&((o+-45&255)>1&(M$(g)|0)==0)):0)break;if((j|0)<(f|0)|h^1){g=m;h=n;k=e;f=p;l=o;continue}if(l<<24>>24==92|l<<24>>24>-1&((M$(l<<24>>24)|0)==0&(l+-45&255)>1)^1){q=1;g=m;h=n;l=o;f=p;continue b}if(o<<24>>24>-1&((o+-45&255)>1&(M$(g)|0)==0)){q=1;g=m;h=n;l=o;f=p;continue b}a[e>>0]=92;a[k+2>>0]=10;g=m;h=1;j=0;k=k+3|0;f=p;l=o}a[e>>0]=92;a[k+2>>0]=10;q=0;g=m;h=1;j=0;l=o;e=k+3|0;f=p}a[k>>0]=34;a[k+1>>0]=0;if(!h){if((j|0)==1?((a[b>>0]|0)+-45&255)<2:0){b=d;break}else e=20024;while(1){f=c[e>>2]|0;if(!f)break a;if(!(O$(f,b)|0)){b=d;break}else e=e+4|0}}else b=d}else b=94227;while(0);return b|0}function JA(a){a=a|0;return GA(a,KA(a)|0)|0}function KA(a){a=a|0;var b=0;b=((W_(a)|0)<<1)+2|0;b=b>>>0>1024?b:1024;a=c[46215]|0;if(b>>>0>(c[46214]|0)>>>0){if(!a)a=C_(b)|0;else a=F_(a,b)|0;c[46215]=a;c[46214]=b}return a|0}function LA(a,b){a=a|0;b=b|0;a=wA(a)|0;while(1){if(!a){a=0;break}if((MA(a)|0)==0?Xy(a,b,0)|0:0){a=1;break}a=xA(a)|0}return a|0}function MA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=ry(b)|0;if((h|0)!=0?(a[h>>0]|0)!=37:0)d=0;else e=3;a:do if((e|0)==3){d=dx(b)|0;b:do if(d|0?(f=dx(yA(b)|0)|0,f|0):0){h=Ew(c[(dx(fz(b)|0)|0)+8>>2]|0)|0;g=d+12|0;e=f+12|0;d=0;while(1){if((d|0)>=(h|0))break b;f=c[(c[g>>2]|0)+(d<<2)>>2]|0;if((f|0?(i=c[(c[e>>2]|0)+(d<<2)>>2]|0,i|0):0)?b$(f,i)|0:0){d=0;break a}d=d+1|0}}while(0);d=_w(b,0)|0;if(d)if((Ew(c[d+8>>2]|0)|0)>0)d=0;else return (Ew(c[d+12>>2]|0)|0)<1|0;else d=1}while(0);return d|0}function NA(b,d){b=b|0;d=d|0;var e=0,f=0;c[46216]=0;e=xx(b,94237)|0;if((e|0?((a[e>>0]|0)+-48|0)>>>0<10:0)?(f=i1(e,0,10)|0,(f|0)==0|(f|0)>59):0)c[5005]=f;OA(b,1);if(((PA(b,d,1)|0)!=-1?(QA(b,d)|0)!=-1:0)?(RA(b,d)|0)!=-1:0){c[5005]=128;b=kb[c[(c[(c[b+64>>2]|0)+8>>2]|0)+8>>2]&63](d)|0}else b=-1;return b|0}function OA(a,b){a=a|0;b=b|0;var d=0;c[a>>2]=c[a>>2]&-9;d=wA(a)|0;while(1){if(!d)break;OA(d,0);d=xA(d)|0}a:do if(b|0){b=Sy(a)|0;while(1){if(!b)break a;c[b>>2]=c[b>>2]&-9;d=Ex(a,b)|0;while(1){if(!d)break;c[d>>2]=c[d>>2]&-9;d=Gx(a,d)|0}b=Ty(a,b)|0}}while(0);return}function PA(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;if((e|0)==0?(yA(b)|0)!=0:0){i=0;g=191979;k=106488}else{k=(a[b+24>>0]&1)==0?191979:94281;g=(gy(b)|0)==0;c[46217]=nx(b,2,108373,0)|0;c[46218]=nx(b,2,108382,0)|0;i=1;g=g?191979:94284}f=ry(b)|0;if((f|0)!=0?(a[f>>0]|0)!=37:0){h=1;j=99578}else{h=0;j=191979;f=191979}do if((SA(b,d)|0)!=-1?(TA(b,d,g)|0)!=-1:0){g=(h|0)==0;if(h|i|0){if((TA(b,d,k)|0)==-1){f=-1;break}if((TA(b,d,99571)|0)==-1){f=-1;break}}if(!g?(cB(b,d,f)|0)==-1:0){f=-1;break}if(((TA(b,d,j)|0)!=-1?(TA(b,d,94292)|0)!=-1:0)?(c[46216]=(c[46216]|0)+1,(hB(b,d,e)|0)!=-1):0){c[b>>2]=c[b>>2]|8;f=0}else f=-1}else f=-1;while(0);return f|0}function QA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:do if((UA(a,b)|0)==-1)d=-1;else{k=_w(fz(a)|0,0)|0;i=(k|0)==0;j=k+12|0;k=k+8|0;h=Sy(a)|0;while(1){if(!h){d=0;break a}if(VA(a,h,(c[h>>2]|0)>>>4,0)|0){if(i)d=0;else d=c[k>>2]|0;if((WA(h,b,d)|0)==-1){d=-1;break a}}g=Ex(a,h)|0;d=h;while(1){if(!g)break;f=g+-48|0;e=c[((c[g>>2]&3|0)==2?g:f)+40>>2]|0;if((d|0)!=(e|0)?(VA(a,e,(c[h>>2]|0)>>>4,0)|0)!=0:0){if(i)d=0;else d=c[k>>2]|0;if((WA(c[((c[g>>2]&3|0)==2?g:f)+40>>2]|0,b,d)|0)==-1){d=-1;break a}d=c[((c[g>>2]&3|0)==2?g:f)+40>>2]|0}if(XA(a,g)|0){if(i)e=0;else e=c[j>>2]|0;if((YA(g,b,e)|0)==-1){d=-1;break a}}g=Gx(a,g)|0}h=Ty(a,h)|0}}while(0);return d|0}function RA(a,b){a=a|0;b=b|0;c[46216]=(c[46216]|0)+-1;if((SA(a,b)|0)==-1)a=-1;else a=((TA(a,b,107982)|0)==-1)<<31>>31;return a|0}function SA(a,b){a=a|0;b=b|0;var d=0;d=c[46216]|0;while(1){if((d|0)<=0){d=0;break}if((TA(a,b,150515)|0)==-1){d=-1;break}else d=d+-1|0}return d|0}function TA(a,b,d){a=a|0;b=b|0;d=d|0;return lb[c[(c[(c[a+64>>2]|0)+8>>2]|0)+4>>2]&127](b,d)|0}function UA(a,b){a=a|0;b=b|0;a=wA(a)|0;while(1){if(!a){a=0;break}if(!(MA(a)|0)){if((PA(a,b,0)|0)==-1){a=-1;break}if((QA(a,b)|0)==-1){a=-1;break}if((RA(a,b)|0)==-1){a=-1;break}}else UA(a,b)|0;a=xA(a)|0}return a|0}function VA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;if((LA(a,b)|0)==0?(eB(a,b,c,d)|0)!=0:0)if((fB(a,b)|0)==0?(gB(b)|0)==0:0)e=5;else a=1;else e=5;if((e|0)==5)a=0;return a|0}function WA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=ez(a)|0;do if((SA(d,b)|0)!=-1?(ZA(a,b)|0)!=-1:0){if(($A(a)|0)==0?(aB(a,b,c)|0)==-1:0){a=-1;break}a=TA(d,b,94248)|0}else a=-1;while(0);return a|0}function XA(a,b){a=a|0;b=b|0;a=wA(a)|0;while(1){if(!a){a=1;break}if((MA(a)|0)==0?Vx(a,b,0)|0:0){a=0;break}a=xA(a)|0}return a|0}function YA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[a>>2]&3;g=c[((e|0)==3?a:a+48|0)+40>>2]|0;e=c[((e|0)==2?a:a+-48|0)+40>>2]|0;f=ez(g)|0;do if((((((SA(f,b)|0)!=-1?(ZA(g,b)|0)!=-1:0)?(_A(a,b,c[46217]|0)|0)!=-1:0)?(g=(ey(ez(g)|0)|0)!=0,(TA(f,b,g?97053:97058)|0)!=-1):0)?(ZA(e,b)|0)!=-1:0)?(_A(a,b,c[46218]|0)|0)!=-1:0){if(!($A(a)|0)){if((aB(a,b,d)|0)==-1){a=-1;break}}else if((bB(a,b,1)|0)==-1){a=-1;break}a=TA(f,b,94248)|0}else a=-1;while(0);return a|0}function ZA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i;d=i+8|0;e=ry(a)|0;f=ez(a)|0;if(!e){j=a+8|0;a=c[j+4>>2]|0;e=g;c[e>>2]=c[j>>2];c[e+4>>2]=a;Y0(d,94268,g)|0;if((TA(f,b,d)|0)==-1)a=-1;else h=4}else if((cB(f,b,e)|0)==-1)a=-1;else h=4;if((h|0)==4)a=0;l=i;return a|0}function _A(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if((d|0)!=0?(e=ez(b)|0,f=yx(b,d)|0,(a[f>>0]|0)!=0):0)if((TA(e,c,104958)|0)==-1)b=-1;else{do if(Rz(f)|0){if((cB(e,c,f)|0)==-1){b=-1;break a}}else{b=A$(f,58)|0;if(!b)if((dB(e,c,f,0)|0)==-1){b=-1;break a}else break;a[b>>0]=0;if((dB(e,c,f,0)|0)==-1){b=-1;break a}if((TA(e,c,104958)|0)==-1){b=-1;break a}if((dB(e,c,b+1|0,0)|0)==-1){b=-1;break a}a[b>>0]=58}while(0);b=0}else b=0;while(0);return b|0}function $A(a){a=a|0;return (c[a>>2]|0)>>>3&1|0}function aB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:do if(!(c[a>>2]&2)){e=0;k=4}else{switch(bB(a,b,0)|0){case -1:{e=-1;break a}case 0:{e=0;k=4;break a}default:{}}e=1;k=4}while(0);b:do if((k|0)==4){f=dx(a)|0;j=ez(a)|0;c:do if(f){i=f+12|0;h=nb[c[d>>2]&63](d,0,128)|0;while(1){if(!h)break c;do if(c[a>>2]&2){g=c[46217]|0;if(g|0?(c[h+16>>2]|0)==(c[g+16>>2]|0):0)break;g=c[46218]|0;if(!((g|0)!=0?(c[h+16>>2]|0)==(c[g+16>>2]|0):0))k=12}else k=12;while(0);if((k|0)==12){k=0;f=h+16|0;if((c[(c[i>>2]|0)+(c[f>>2]<<2)>>2]|0)!=(c[h+12>>2]|0)){g=e+1|0;if(e){if((TA(j,b,94263)|0)==-1){e=-1;break b}if((SA(j,b)|0)==-1){e=-1;break b}}else{if((SA(j,b)|0)==-1){e=-1;break b}if((TA(j,b,94260)|0)==-1){e=-1;break b}c[46216]=(c[46216]|0)+1}if((cB(j,b,c[h+8>>2]|0)|0)==-1){e=-1;break b}if((TA(j,b,94266)|0)==-1){e=-1;break b}if((cB(j,b,c[(c[i>>2]|0)+(c[f>>2]<<2)>>2]|0)|0)==-1){e=-1;break b}else e=g}}h=nb[c[d>>2]&63](d,h,8)|0}}while(0);if((e|0)>0){if((TA(j,b,94258)|0)==-1){e=-1;break}c[46216]=(c[46216]|0)+-1}c[a>>2]=c[a>>2]|8;e=0}while(0);return e|0}function bB(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;e=ry(b)|0;b=ez(b)|0;if((e|0)!=0?(a[e>>0]|0)!=0:0)if((TA(b,c,94251)|0)!=-1?(cB(b,c,e)|0)!=-1:0)if((d|0)!=0?(TA(b,c,94258)|0)==-1:0)b=-1;else{b=1;f=7}else b=-1;else{b=0;f=7}return b|0}function cB(a,b,c){a=a|0;b=b|0;c=c|0;return dB(a,b,c,1)|0}function dB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!d)c=IA(c,KA(c)|0)|0;else c=JA(c)|0;return TA(a,b,c)|0}function eB(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do if(0<e>>>0|(0==(e|0)?(c[b>>2]|0)>>>4>>>0<d>>>0:0))b=0;else{b=Hx(a,b)|0;while(1){if(!b){b=1;break a}if(0<e>>>0|(0==(e|0)?(c[c[b+40>>2]>>2]|0)>>>4>>>0<d>>>0:0)){b=0;break a}b=Ix(a,b)|0}}while(0);return b|0}function fB(a,b){a=a|0;b=b|0;if(!(Hx(a,b)|0))a=(Ex(a,b)|0)==0&1;else a=0;return a|0}function gB(a){a=a|0;var b=0,d=0,e=0;a=dx(a)|0;a:do if(!a)a=0;else{d=a+8|0;e=c[d>>2]|0;b=a+12|0;a=nb[c[e>>2]&63](e,0,128)|0;while(1){if(!a){a=0;break a}if((c[(c[b>>2]|0)+(c[a+16>>2]<<2)>>2]|0)!=(c[a+12>>2]|0)){a=1;break a}e=c[d>>2]|0;a=nb[c[e>>2]&63](e,a,8)|0}}while(0);return a|0}function hB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=_w(a,0)|0;if(e)if(((iB(a,b,108412,c[e+16>>2]|0,d)|0)!=-1?(iB(a,b,108399,c[e+8>>2]|0,d)|0)!=-1:0)?(iB(a,b,108368,c[e+12>>2]|0,d)|0)!=-1:0)f=5;else a=-1;else f=5;if((f|0)==5)a=0;return a|0}function iB(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=(g|0)!=0;if(m)l=0;else l=Hw(f,0)|0;k=(l|0)==0;j=nb[c[f>>2]&63](f,0,128)|0;g=0;while(1){if(!j){n=23;break}i=j+12|0;n=c[i>>2]|0;if((n|0)!=0?(a[n>>0]|0)!=0:0)n=12;else n=7;do if((n|0)==7){n=0;if(!(a[j+22>>0]|0)){if(!k){h=nb[c[l>>2]&63](l,j,4)|0;o=c[h+12>>2]|0;if(o|0?a[o>>0]|0:0){n=12;break}if(!(a[h+22>>0]|0))n=12}}else n=12}while(0);if((n|0)==12){n=0;h=g+1|0;if(g){if((TA(b,d,94263)|0)==-1){g=-1;break}if((SA(b,d)|0)==-1){g=-1;break}}else{if((SA(b,d)|0)==-1){g=-1;break}if((TA(b,d,e)|0)==-1){g=-1;break}if((TA(b,d,94260)|0)==-1){g=-1;break}c[46216]=(c[46216]|0)+1}if((cB(b,d,c[j+8>>2]|0)|0)==-1){g=-1;break}if((TA(b,d,94266)|0)==-1){g=-1;break}if((cB(b,d,c[i>>2]|0)|0)==-1){g=-1;break}else g=h}j=nb[c[f>>2]&63](f,j,8)|0}do if((n|0)==23){if((g|0)>0){c[46216]=(c[46216]|0)+-1;if((g|0)!=1){if((TA(b,d,150517)|0)==-1){g=-1;break}if((SA(b,d)|0)==-1){g=-1;break}}g=(TA(b,d,94295)|0)==-1;if(m|g){g=g<<31>>31;break}}else if(m){g=0;break}Hw(f,l)|0;g=0}while(0);return g|0}function jB(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;switch(c[b>>2]&3){case 0:{g=80;break}case 1:{g=81;break}case 3:case 2:{g=82;break}default:{}}b=lb[g&127](a,b)|0;if(!b)b=-1;else{nB(a,b,d,e,g,f);b=0}return b|0}function kB(a,b){a=a|0;b=b|0;if((ez(b)|0)!=(a|0))b=Vx(a,b,0)|0;return b|0}function lB(a,b){a=a|0;b=b|0;if((ez(b)|0)!=(a|0))b=Xy(a,b,0)|0;return b|0}function mB(a,b){a=a|0;b=b|0;return a|0}function nB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=(f|0)!=0;if(h)vb[c&127](a,b,d);g=wA(a)|0;while(1){if(!g)break;i=lb[e&127](g,b)|0;if(i|0)nB(g,i,c,d,e,f);g=xA(g)|0}if(!h)vb[c&127](a,b,d);return}function oB(){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+1200|0;r=t+800|0;g=t;c[46219]=0;c[46220]=-2;f=r;i=200;n=g;p=0;q=0;o=r;a:while(1){b[o>>1]=p;if((f+(i<<1)+-2|0)>>>0>o>>>0)k=i;else{m=o-f>>1;e=m+1|0;if(i>>>0>9999){s=75;break}k=i<<1;k=k>>>0<1e4?k:1e4;h=C_(k*6|3)|0;if(h){F3(h|0,f|0,e<<1|0)|0;i=h+(k>>>1<<2)|0;F3(i|0,n|0,e<<2|0)|0;if((f|0)==(r|0)){e=0;f=h}else{D_(f);e=0;f=h}}else{e=4;i=n}j=(e|0)==0;h=f+(m<<1)|0;switch((j?((f+(k<<1)+-2|0)>>>0>h>>>0?0:9):e)&15){case 9:{e=1;s=76;break a}case 4:{s=75;break a}case 0:{g=j?i+(m<<2)|0:g;n=i;o=j?h:o;break}default:{e=0;break a}}}if((p|0)==6){e=0;s=76;break}e=a[94299+p>>0]|0;j=e<<24>>24;do if(e<<24>>24!=-18){h=c[46220]|0;if((h|0)==-2){h=Wz()|0;c[46220]=h}if((h|0)>=1)if(h>>>0<269)i=d[94379+h>>0]|0;else i=2;else{c[46220]=0;i=0}h=i+j|0;if(h>>>0<=59?(i|0)==(d[94648+h>>0]|0):0){p=a[94708+h>>0]|0;e=p<<24>>24;if(p<<24>>24<1){h=0-e|0;s=23;break}else{c[46220]=-2;g=g+4|0;c[g>>2]=c[46221];j=(q|0)==0?0:q+-1|0;h=o;break}}else s=22}else s=22;while(0);if((s|0)==22){s=0;p=a[94768+p>>0]|0;h=p&255;if(!(p<<24>>24)){h=c[46220]|0;b:do switch(q|0){case 0:{c[46219]=(c[46219]|0)+1;pA(140679);h=o;break}case 3:if((h|0)<1)if(!h){e=1;s=76;break a}else{h=o;break b}else{c[46220]=-2;h=o;break b}default:h=o}while(0);while(1){if(e<<24>>24==18)break;if((h|0)==(f|0)){e=1;s=76;break a}e=h+-2|0;g=g+-4|0;h=e;e=a[94299+(b[e>>1]|0)>>0]|0}g=g+4|0;c[g>>2]=c[46221];e=1;j=3}else s=23}do if((s|0)==23){s=0;i=d[94848+h>>0]|0;e=c[g+(1-i<<2)>>2]|0;c:do switch(h|0){case 2:{pB();qB();break}case 3:{if(c[46222]|0){pB();qB();$x(c[46222]|0)|0;c[46171]=0;c[46222]=0}break}case 6:{rB(c[g>>2]|0,c[g+-4>>2]|0,c[g+-8>>2]|0);break}case 7:{e=c[g>>2]|0;break}case 8:{e=0;break}case 9:{e=1;break}case 10:{e=0;break}case 11:{e=0;break}case 12:{e=1;break}case 21:if(!(c[g+-4>>2]|0)){tB();break c}else{sB();break c}case 24:{uB();break}case 25:{uB();break}case 26:{e=1;break}case 27:{e=0;break}case 30:{vB(c[g>>2]|0,0,0);break}case 31:{vB(c[g+-8>>2]|0,c[g>>2]|0,0);break}case 32:{vB(c[g+-16>>2]|0,c[g+-8>>2]|0,c[g>>2]|0);break}case 33:{wB(c[g+-8>>2]|0,c[g+-4>>2]|0);break}case 34:{wB(258,0);break}case 35:{e=258;break}case 36:{e=259;break}case 37:{e=260;break}case 38:{e=c[g+-4>>2]|0;break}case 39:{e=0;break}case 48:{xB(c[g+-8>>2]|0,c[g>>2]|0);break}case 49:{xB(c[g>>2]|0,0);break}case 51:{yB(c[g>>2]|0);break}case 52:{zB();break}case 53:{e=c[g>>2]|0;break}case 54:{e=0;break}case 55:{e=0;break}case 59:{e=c[g>>2]|0;break}case 60:{e=c[g>>2]|0;break}case 61:{e=c[g>>2]|0;break}case 62:{e=AB(c[g+-8>>2]|0,c[g>>2]|0)|0;break}default:{}}while(0);i=0-i|0;p=g+(i<<2)|0;i=o+(i<<1)|0;g=p+4|0;c[p+4>>2]=e;e=(d[94911+h>>0]|0)+-24|0;p=b[i>>1]|0;h=p+(a[94974+e>>0]|0)|0;if(h>>>0<60?(d[94648+h>>0]|0)==(p|0):0){e=a[94708+h>>0]|0;j=q;h=i;break}e=a[95009+e>>0]|0;j=q;h=i}while(0);i=k;p=e;q=j;o=h+2|0}if((s|0)==75){pA(137476);e=2;s=76}if((s|0)==76)if((f|0)!=(r|0))D_(f);l=t;return e|0}function pB(){var a=0,b=0;a=c[46223]|0;while(1){if(!a)break;IB(a+8|0);IB((c[46223]|0)+24|0);IB((c[46223]|0)+16|0);b=BB(c[46223]|0)|0;c[46223]=b;a=b}return}function qB(){qA();Ay(c[46222]|0);return}function rB(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;f=c[46222]|0;if(!f){a[184896]=d&1|(e&255)<<1&2|a[184896]&-12|8;f=c[46225]|0;a[g>>0]=a[184896]|0;a[g+1>>0]=a[184897]|0;a[g+2>>0]=a[184898]|0;a[g+3>>0]=a[184899]|0;f=Xx(b,g,f)|0;c[46222]=f}c[46171]=f;c[46223]=CB(c[46223]|0,f)|0;Qz(0,b)|0;l=h;return}function sB(){var b=0,d=0,e=0,f=0,g=0,h=0;HB(2);e=c[46223]|0;f=a[95044]|0;h=0;b=e+24|0;while(1){d=c[b>>2]|0;if(!d)break;if(((c[d>>2]|0)==267?(g=c[d+4>>2]|0,(a[g>>0]|0)==f<<24>>24):0)?(b$(g,95044)|0)==0:0)b=c[d+8>>2]|0;else b=h;h=b;b=d+12|0}b=e+16|0;a:while(1){e=c[b>>2]|0;b=e+12|0;if(!(c[b>>2]|0))break;d=e+4|0;if((c[e>>2]|0)==262){e=c[d>>2]|0;d=Sy(e)|0;while(1){if(!d)continue a;g=Xy(c[c[46223]>>2]|0,d,0)|0;PB(g,0,c[b>>2]|0,h);d=Ty(e,d)|0}}else while(1){d=c[d>>2]|0;if(!d)continue a;PB(c[d+4>>2]|0,c[d+8>>2]|0,c[b>>2]|0,h);d=d+12|0}}IB((c[46223]|0)+8|0);IB((c[46223]|0)+16|0);IB((c[46223]|0)+24|0);c[(c[46223]|0)+4>>2]=0;return}function tB(){var a=0;HB(1);a=(c[46223]|0)+8|0;while(1){a=c[a>>2]|0;if(!a)break;OB(c[a+4>>2]|0);a=a+12|0}IB((c[46223]|0)+8|0);IB((c[46223]|0)+24|0);IB((c[46223]|0)+16|0);c[(c[46223]|0)+4>>2]=0;return}function uB(){var a=0,b=0;a=c[46223]|0;b=c[a+8>>2]|0;if(!b){b=c[a+4>>2]|0;if(!b)b=0;else{b=NB(b)|0;a=c[46223]|0}c[a+4>>2]=0}else{b=MB(b)|0;a=c[46223]|0;c[a+12>>2]=0;c[a+8>>2]=0}if(b|0)EB(a+16|0,b);return}function vB(a,b,d){a=a|0;b=b|0;d=d|0;if(d)b=KB(b,d)|0;d=LB(az(c[c[46223]>>2]|0,a,1)|0,b)|0;EB((c[46223]|0)+8|0,d);Qz(c[46222]|0,a)|0;return}function wB(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;if(d|0)GB();d=(c[46223]|0)+24|0;while(1){d=c[d>>2]|0;if(!d)break;if(!(c[d+8>>2]|0))GB();d=d+12|0}g=(b|0)==260?2:(b|0)==259&1;HB(g);b=c[46223]|0;d=b+24|0;while(1){f=c[d>>2]|0;if(!f)break;do if((c[f>>2]|0)!=267){d=c[f+4>>2]|0;e=c[b>>2]|0;if(!((a[d+21>>0]|0)!=0&(e|0)==(c[46222]|0))){d=nx(e,g,c[d+8>>2]|0,c[f+8>>2]|0)|0;b=c[46223]|0;if((c[b>>2]|0)!=(c[46222]|0))break}a[d+22>>0]=1}while(0);d=f+12|0}IB(b+24|0);return}function xB(a,b){a=a|0;b=b|0;b=DB(a,b)|0;EB((c[46223]|0)+24|0,b);return}function yB(a){a=a|0;var b=0;b=c[46223]|0;c[46223]=CB(b,vA(c[b>>2]|0,a,1)|0)|0;Qz(c[46222]|0,a)|0;return}function zB(){var a=0,b=0;a=c[46223]|0;b=c[a>>2]|0;a=BB(a)|0;c[46223]=a;c[a+4>>2]=b;return}function AB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+1024|0;f=g;d=W_(a)|0;d=d+1+(W_(b)|0)|0;if(d>>>0<1025)d=f;else d=C_(d)|0;b0(d,a)|0;p1(d,b)|0;e=Oz(c[46222]|0,d)|0;Qz(c[46222]|0,a)|0;Qz(c[46222]|0,b)|0;if((d|0)!=(f|0))D_(d);l=g;return e|0}function BB(a){a=a|0;var b=0;b=c[(c[46223]|0)+32>>2]|0;Ny(c[46222]|0,a);return b|0}function CB(a,b){a=a|0;b=b|0;var d=0;d=My(c[46222]|0,36)|0;c[d+32>>2]=a;c[d>>2]=b;return d|0}function DB(a,b){a=a|0;b=b|0;return FB(267,a,b)|0}function EB(a,b){a=a|0;b=b|0;var d=0,e=0;d=a+4|0;e=c[d>>2]|0;if(e|0)c[e+12>>2]=b;c[d>>2]=b;if(!(c[a>>2]|0))c[a>>2]=b;return}function FB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=My(c[46222]|0,16)|0;c[e>>2]=a;c[e+4>>2]=b;c[e+8>>2]=d;return e|0}function GB(){var a=0;a=l;l=l+16|0;Pw(0,95048,a)|0;l=a;return}function HB(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=(b|0)==2;d=(c[46223]|0)+24|0;while(1){d=c[d>>2]|0;if(!d)break;e=d+4|0;f=c[e>>2]|0;if(!((g?(a[f>>0]|0)==(a[95044]|0):0)?!(b$(f,95044)|0):0)){h=nx(c[c[46223]>>2]|0,b,f,0)|0;c[e>>2]=h;if(!h)c[e>>2]=nx(c[c[46223]>>2]|0,b,f,191979)|0;c[d>>2]=266;Qz(c[46222]|0,f)|0}d=d+12|0}return}function IB(a){a=a|0;JB(c[a>>2]|0);c[a+4>>2]=0;c[a>>2]=0;return}function JB(a){a=a|0;var b=0;while(1){if(!a)break;b=c[a+12>>2]|0;switch(c[a>>2]|0){case 265:{JB(c[a+4>>2]|0);break}case 266:case 267:{Qz(c[46222]|0,c[a+8>>2]|0)|0;break}default:{}}Ny(c[46222]|0,a);a=b}return}function KB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+1040|0;f=h;g=h+8|0;d=W_(a)|0;d=d+2+(W_(b)|0)|0;if(d>>>0<1025)e=g;else e=C_(d)|0;c[f>>2]=a;c[f+4>>2]=b;Y0(e,95081,f)|0;d=Oz(c[46222]|0,e)|0;Qz(c[46222]|0,a)|0;Qz(c[46222]|0,b)|0;if((e|0)!=(g|0))D_(e);l=h;return d|0}function LB(a,b){a=a|0;b=b|0;return FB(259,a,b)|0}function MB(a){a=a|0;return FB(265,a,0)|0}function NB(a){a=a|0;return FB(262,a,0)|0}function OB(a){a=a|0;var b=0,d=0;b=(c[46223]|0)+24|0;while(1){b=c[b>>2]|0;if(!b)break;if((c[b>>2]|0)==266?(d=c[b+4>>2]|0,d|0):0)rx(a,d,c[b+8>>2]|0)|0;b=b+12|0}return}function PB(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=d+4|0;a:do if((c[d>>2]|0)==262){d=c[f>>2]|0;f=Sy(d)|0;while(1){if(!f)break a;QB(a,b,Xy(c[c[46223]>>2]|0,f,0)|0,0,e);f=Ty(d,f)|0}}else while(1){f=c[f>>2]|0;if(!f)break a;d=Xy(c[c[46223]>>2]|0,c[f+4>>2]|0,0)|0;QB(a,b,d,c[f+8>>2]|0,e);f=f+12|0}while(0);return}function QB(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;d=Rx(c[c[46223]>>2]|0,a,d,f,1)|0;if(d|0){g=c[d>>2]&3;f=c[((g|0)==2?d:d+-48|0)+40>>2]|0;a=(f|0)==(a|0)?(c[((g|0)==3?d:d+48|0)+40>>2]|0)!=(f|0):0;RB(d,108373,a?e:b);RB(d,108382,a?b:e);OB(d)}return}function RB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if(d|0){e=nx(c[c[46223]>>2]|0,2,b,0)|0;if(!e)e=nx(c[c[46223]>>2]|0,2,b,191979)|0;rx(a,e,d)|0}return}function SB(a,b,d){a=a|0;b=b|0;d=d|0;c[46191]=b;c[46222]=a;c[46171]=0;a=d|0?d:18496;c[46225]=a;Vz(a,b);oB()|0;a=c[46171]|0;if(!a){sA();a=c[46171]|0}return a|0}function TB(a,b){a=a|0;b=b|0;return SB(0,a,b)|0}function UB(a,b){a=a|0;b=b|0;b=wC(a,1,b)|0;if(!b)b=999;else{b=c[b+16>>2]|0;c[a+184>>2]=c[b+4>>2];c[a+172>>2]=c[b+12>>2];c[a+176>>2]=c[b>>2];c[a+180>>2]=c[b+16>>2];b=300}return b|0}function VB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;f=i;Az(b,134401,280,1)|0;g=b+16|0;c[(c[g>>2]|0)+144>>2]=a;if((fz(b)|0)!=(b|0))c[(c[(fz(b)|0)+16>>2]|0)+144>>2]=a;e=xx(b,95297)|0;d=a+172|0;if((e|0)!=0?(c[d>>2]=0,(UB(a,e)|0)==999):0){d=xC(a,1,e)|0;c[f>>2]=e;c[f+4>>2]=d;Pw(1,95824,f)|0;d=-1}else{e=c[d>>2]|0;if(!e)d=-1;else{CG(1);bH(b,c[c[a+180>>2]>>2]&1);d=c[(c[g>>2]|0)+8>>2]|0;c[(c[(fz(b)|0)+16>>2]|0)+8>>2]=d;LK();d=c[e>>2]|0;if(d|0?(tb[d&127](b),h=c[e+4>>2]|0,h|0):0)c[(c[g>>2]|0)+148>>2]=h;CG(0);d=0}}l=i;return d|0}function WB(a,b){a=a|0;b=b|0;var d=0,e=0;if(Az(b,134401,0,1)|0){d=b+16|0;a=c[d>>2]|0;e=c[a+148>>2]|0;if(e){tb[e&127](b);a=c[d>>2]|0;c[a+148>>2]=0}if(c[a+8>>2]|0)gH(b)}return 0}function XB(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;j=k+8|0;i=k;d=c[b+76>>2]|0;f=c[b>>2]|0;if((d|0)!=0?(e=c[d>>2]|0,(e|0)!=0):0){tb[e&127](b);g=12}else g=4;do if((g|0)==4)if((c[b+40>>2]|0)==0?(h=b+36|0,(c[h>>2]|0)==0):0){if(a[f+13>>0]|0)YB(b);d=b+32|0;e=c[d>>2]|0;if(!e){c[h>>2]=c[15653];g=12;break}f=L1(e,103486)|0;c[h>>2]=f;if(!f){j=c[(c[b+12>>2]|0)+16>>2]|0;h=c[d>>2]|0;d=c$(c[(O_()|0)>>2]|0)|0;c[i>>2]=h;c[i+4>>2]=d;ub[j&63](95087,i);d=1}else g=12}else g=12;while(0);if((g|0)==12)if(!(c[b+152>>2]&1024))d=0;else{ub[c[(c[b+12>>2]|0)+16>>2]&63](95125,j);d=1}l=k;return d|0}function YB(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+112|0;e=h;g=h+4|0;d=c[b+24>>2]|0;if(!d)a[g>>0]=0;else{c[e>>2]=d+1;Y0(g,95143,e)|0}e=c[b+20>>2]|0;e=e|0?e:95147;d=W_(e)|0;i=W_(g)|0;f=b+52|0;i=d+1+i+(W_(c[f>>2]|0)|0)|0;d=i+11|0;if((c[46226]|0)>>>0<(i+1|0)>>>0){c[46226]=d;d=F_(c[46227]|0,d)|0;c[46227]=d}else d=c[46227]|0;b0(d,e)|0;p1(c[46227]|0,g)|0;d=c[46227]|0;d=d+(W_(d)|0)|0;a[d>>0]=46;a[d+1>>0]=0;d=n1(c[f>>2]|0)|0;f=c[46227]|0;while(1){e=o1(d,58)|0;if(!e)break;p1(f,e+1|0)|0;i=c[46227]|0;g=i+(W_(i)|0)|0;a[g>>0]=46;a[g+1>>0]=0;a[e>>0]=0;f=i}p1(f,d)|0;D_(d);c[b+32>>2]=c[46227];l=h;return}function ZB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h+8|0;f=h;if((b|0)!=0&(d|0)!=0){if(c[a+152>>2]&1024|0){ub[c[(c[a+12>>2]|0)+16>>2]&63](95125,f);Sa(1)}if((_B(a,b,d)|0)==(d|0))e=d;else{f=c[(c[a+12>>2]|0)+16>>2]|0;c[g>>2]=d;ub[f&63](95157,g);Sa(1)}}else e=0;l=h;return e|0}function _B(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;n=o;f=c[(c[b>>2]|0)+104>>2]|0;do if(!f){j=b+40|0;h=c[j>>2]|0;if(!h){e=E1(d,1,e,c[b+36>>2]|0)|0;break}f=b+44|0;i=b+48|0;g=c[i>>2]|0;do if(((c[f>>2]|0)+-1-g|0)>>>0<e>>>0){g=e+4096+g&-4096;c[f>>2]=g;f=F_(h,g)|0;c[j>>2]=f;if(!f){ub[c[(c[b+12>>2]|0)+16>>2]&63](95182,n);Sa(1)}else{k=f;m=c[i>>2]|0;break}}else{k=h;m=g}while(0);F3(k+m|0,d|0,e|0)|0;n=(c[i>>2]|0)+e|0;c[i>>2]=n;a[(c[j>>2]|0)+n>>0]=0}else e=nb[f&63](b,d,e)|0;while(0);l=o;return e|0}function $B(a,b){a=a|0;b=b|0;var c=0;c=W_(b)|0;b=(ZB(a,b,c)|0)==(c|0);return (b?1:-1)|0}function aC(b,c){b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;a[e>>0]=c;b=(ZB(b,e,1)|0)==1;l=d;return (b?c:-1)|0}function bC(b){b=b|0;var d=0;d=c[b+36>>2]|0;if(((d|0)!=0?(a[b+144>>0]|0)==0:0)?(c[(c[b>>2]|0)+104>>2]|0)==0:0)b=w1(d)|0;else b=0;return b|0}function cC(a){a=a|0;var b=0,d=0;b=c[a+76>>2]|0;if(b|0?(d=c[b+4>>2]|0,d|0):0)tb[d&127](a);bC(a)|0;return}function dC(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;d=c[a+76>>2]|0;if(c[a+152>>2]&1024|0){ub[c[(c[a+12>>2]|0)+16>>2]&63](95209,e);Sa(1)}if((d|0)!=0?(b=c[d+8>>2]|0,(b|0)!=0):0)tb[b&127](a);else{bC(a)|0;eC(a)}l=e;return}function eC(b){b=b|0;var d=0,e=0,f=0;d=b+32|0;if((c[d>>2]|0?(e=b+36|0,f=c[e>>2]|0,(f|0)!=(c[15653]|0)):0)?(a[b+144>>0]|0)==0:0){if(f|0){s1(f)|0;c[e>>2]=0}c[d>>2]=0}return}function fC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+1056|0;f=i;h=i+24|0;g=i+8|0;c[g>>2]=d;e=q0(h,1024,b,g)|0;if((e|0)>=0){if((e|0)>1023){e=vH(e+1|0)|0;c[g>>2]=d;f=e;e=Z0(e,b,g)|0}else f=h;ZB(a,f,e)|0;if((f|0)!=(h|0))D_(f)}else{c[f>>2]=c$(c[(O_()|0)>>2]|0)|0;Pw(1,95226,f)|0}l=i;return}function gC(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=hC(e,b)|0;ZB(a,f,c[e>>2]|0)|0;l=d;return}function hC(b,d){b=b|0;d=+d;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;if(!(d<-1.0e15))if(!(d>1.0e15)){d=d*1.0e4;f=~~((d<0.0?-.5:.5)+d);if(!f){f=135312;e=1}else{l=(f|0)<0;k=4;i=0;e=191746;f=l?0-f|0:f;while(1){if(!((f|0)!=0|(k|0)>0))break;g=(f|0)%10|0;j=(f|0)/10|0;h=e+-1|0;if((g|0)==0&i<<24>>24==0)f=0;else{a[h>>0]=g|48;f=1;e=h}if((k|0)==1)if(!(f<<24>>24))f=1;else{e=e+-1|0;a[e>>0]=46;f=1}k=k+-1|0;i=f;f=j}if(l){e=e+-1|0;a[e>>0]=45}f=e;e=191746-e|0}}else{f=95241;e=18}else{f=95240;e=19}c[b>>2]=e;return f|0}function iC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=hC(e,+h[b>>3])|0;ZB(a,f,c[e>>2]|0)|0;ZB(a,99578,1)|0;b=hC(e,+h[b+8>>3])|0;ZB(a,b,c[e>>2]|0)|0;l=d;return}function jC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+16|0;f=g;e=0;while(1){h=b+(e<<4)|0;c[f>>2]=c[h>>2];c[f+4>>2]=c[h+4>>2];c[f+8>>2]=c[h+8>>2];c[f+12>>2]=c[h+12>>2];iC(a,f);e=e+1|0;if((e|0)>=(d|0))break;ZB(a,99578,1)|0}l=g;return}function kC(a,b){a=a|0;b=b|0;var d=0;d=uH(392)|0;if(d|0){c[d>>2]=20052;c[d+16>>2]=23;c[d+32>>2]=a;c[d+36>>2]=b}return d|0}function lC(a){a=a|0;var b=0,d=0,e=0,f=0;b=uH(392)|0;d=b;e=a;f=d+40|0;do{c[d>>2]=c[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(f|0));f=b+60|0;e=a+60|0;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[f+16>>2]=c[e+16>>2];f=b+80|0;e=a+80|0;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[f+16>>2]=c[e+16>>2];return b|0}function mC(a){a=a|0;tC(a);D_(a);return}function nC(a,b){a=a|0;b=b|0;var d=0,e=0;e=a+160|0;d=c[e>>2]|0;if(d){e=c[46228]|0;if(e){d=c[e+4>>2]|0;if(!d){d=uH(632)|0;c[(c[46228]|0)+4>>2]=d}}}else{d=uH(632)|0;c[e>>2]=d;c[a+164>>2]=d}c[46228]=d;c[d+32>>2]=b;c[d>>2]=a;return}function oC(a,b){a=a|0;b=b|0;var d=0,e=0;e=a+160|0;d=c[e>>2]|0;if(d){e=c[46229]|0;if(e){d=c[e+4>>2]|0;if(!d){d=uH(632)|0;c[(c[46229]|0)+4>>2]=d}}}else{d=uH(632)|0;c[e>>2]=d;c[a+164>>2]=d}c[46229]=d;c[d+52>>2]=b;c[d>>2]=a;return (wC(a,3,b)|0)!=0|0}function pC(a){a=a|0;var b=0;b=c[a+160>>2]|0;c[a+164>>2]=b;return b|0}function qC(a){a=a|0;var b=0,d=0,e=0;a=a+164|0;b=c[a>>2]|0;d=c[b+4>>2]|0;if(d|0?(e=d+52|0,(c[e>>2]|0)==0):0)c[e>>2]=c[b+52>>2];c[a>>2]=d;return d|0}function rC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+8|0;f=b+10|0;if((c[e>>2]|0)>(b|0))a=c[a>>2]|0;else{c[e>>2]=f;f=xH(c[a>>2]|0,f<<2)|0;c[a>>2]=f;a=f}c[a+(b<<2)>>2]=d;return}function sC(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0)D_(b);c[a>>2]=0;c[a+8>>2]=0;c[a+4>>2]=0;return}function tC(a){a=a|0;var b=0,d=0,e=0;d=a+160|0;b=c[d>>2]|0;while(1){if(!b)break;e=c[b+4>>2]|0;sC(b+604|0);sC(b+592|0);D_(c[b+584>>2]|0);D_(c[b+588>>2]|0);D_(b);b=e}c[46229]=0;c[46228]=0;c[a+192>>2]=0;c[a+164>>2]=0;c[d>>2]=0;c[a+28>>2]=0;return}function uC(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;k=n+64|0;m=n;U0(k,e,63)|0;i=A$(k,58)|0;if(i|0)a[i>>0]=0;b=b+60+(d<<2)|0;while(1){d=c[b>>2]|0;if(!d){d=b;b=0;break}U0(m,c[d+4>>2]|0,63)|0;d=A$(m,58)|0;if(d|0)a[d>>0]=0;if((b$(k,m)|0)<1){j=9;break}b=c[b>>2]|0}while(1){if((j|0)==9){d=b;b=c[b>>2]|0}if(!b)break;U0(m,c[b+4>>2]|0,63)|0;b=A$(m,58)|0;if(b|0)a[b>>0]=0;if(b$(k,m)|0)break;b=c[d>>2]|0;if((c[b+8>>2]|0)<=(f|0))break;j=9}m=vH(20)|0;c[m>>2]=c[d>>2];c[d>>2]=m;c[m+4>>2]=e;c[m+8>>2]=f;c[m+12>>2]=g;c[m+16>>2]=h;l=n;return 1}function vC(a,b){a=a|0;b=b|0;b=l;l=l+16|0;Pw(1,95321,b)|0;l=b;return 0}function wC(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+144|0;r=s;o=s+80|0;p=s+16|0;n=(d+-3|0)>>>0<2?0:d;U0(o,e,63)|0;e=A$(o,58)|0;if(e){f=e+1|0;a[e>>0]=0;e=A$(f,58)|0;if(!e)m=0;else{a[e>>0]=0;m=e+1|0}}else{m=0;f=0}i=(f|0)!=0;j=(m|0)==0;k=(n|0)==(d|0);h=b+60+(d<<2)|0;a:while(1){e=c[h>>2]|0;if(!e){e=0;break}U0(p,c[e+4>>2]|0,63)|0;e=A$(p,58)|0;if(!e)e=0;else{a[e>>0]=0;e=e+1|0}do if(!(b$(p,o)|0)){g=(e|0)!=0;if(i&g?b$(e,f)|0:0)break;if(!j?b$(m,c[(c[(c[h>>2]|0)+12>>2]|0)+8>>2]|0)|0:0)break;if(k|g^1){q=16;break a}if(wC(b,n,e)|0){q=16;break a}}while(0);h=c[h>>2]|0}do if((q|0)==16){e=c[h>>2]|0;if(e){f=e+16|0;if((c[f>>2]|0)==0?(vC(0,0)|0,(c[f>>2]|0)==0):0){e=0;break}if((c[b+8>>2]|0)>0){q=c[15686]|0;o=c[e+4>>2]|0;p=c[(c[e+12>>2]|0)+8>>2]|0;c[r>>2]=c[20064+(d<<2)>>2];c[r+4>>2]=o;c[r+8>>2]=p;g1(q,95352,r)|0}}else e=0}while(0);c[b+80+(d<<2)>>2]=e;l=s;return e|0}function xC(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;do if(!e)e=0;else{if(c[5021]|0){Tw(184920,0,0);c[5021]=0}h=n1(e)|0;e=A$(h,58)|0;if(e){a[e>>0]=0;f=b+60+(d<<2)|0;e=1;g=f;while(1){b=c[g>>2]|0;if(!b)break;d=n1(c[b+4>>2]|0)|0;b=A$(d,58)|0;if(b|0)a[b>>0]=0;if(!((a[h>>0]|0)!=0?(O$(h,d)|0)!=0:0)){e=c[46231]|0;if(e>>>0>=(c[46232]|0)>>>0){Uw(184920,1)|0;e=c[46231]|0}c[46231]=e+1;a[e>>0]=32;Ww(184920,c[(c[g>>2]|0)+4>>2]|0)|0;e=c[46231]|0;if(e>>>0>=(c[46232]|0)>>>0){Uw(184920,1)|0;e=c[46231]|0}c[46231]=e+1;a[e>>0]=58;Ww(184920,c[(c[(c[g>>2]|0)+12>>2]|0)+8>>2]|0)|0;e=0}D_(d);g=c[g>>2]|0}D_(h);if(e<<24>>24){g=0;i=19}}else{D_(h);g=0;f=b+60+(d<<2)|0;e=1;i=19}if((i|0)==19){while(1){b=c[f>>2]|0;if(!b)break;d=n1(c[b+4>>2]|0)|0;b=A$(d,58)|0;if(b|0)a[b>>0]=0;if(!((g|0)!=0?(O$(g,d)|0)==0:0)){e=c[46231]|0;if(e>>>0>=(c[46232]|0)>>>0){Uw(184920,1)|0;e=c[46231]|0}c[46231]=e+1;a[e>>0]=32;Ww(184920,d)|0;e=0}g=d;f=c[f>>2]|0;i=19}if(e<<24>>24){e=191979;break}}e=c[46231]|0;if(e>>>0>=(c[46232]|0)>>>0){Uw(184920,1)|0;e=c[46231]|0}a[e>>0]=0;e=c[46230]|0;c[46231]=e}while(0);return e|0}function yC(b){b=b|0;var d=0;if(!b)qa(108182,95369,573,95383);if(!(a[b>>0]|0))qa(108187,95369,574,95383);d=c[46234]|0;if(!d)b=0;else b=nb[c[d>>2]&63](d,b,512)|0;return b|0}function zC(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;j=k+8|0;i=k;if(!b)qa(108230,95369,589,95400);g=b+8|0;e=c[g>>2]|0;if(!e)qa(108233,95369,590,95400);if(!(a[e>>0]|0))qa(108242,95369,591,95400);h=b+20|0;f=c[h>>2]|0;do if(!f){d=ZL(e)|0;if(!d){c[i>>2]=c[g>>2];Pw(0,95424,i)|0;d=0;break}i=L1(d,135739)|0;c[h>>2]=i;if(!i){c[j>>2]=c$(c[(O_()|0)>>2]|0)|0;c[j+4>>2]=d;Pw(0,95449,j)|0;d=0;break}d=c[46235]|0;if((d|0)>49){a[b+17>>0]=1;d=1;break}else{c[46235]=d+1;d=1;break}}else{Z1(f,0,0)|0;if(!(c[h>>2]|0))qa(95470,95369,614,95400);else d=1}while(0);l=k;return d|0}function AC(b){b=b|0;var d=0,e=0;if(a[b+17>>0]|0?(d=b+20|0,e=c[d>>2]|0,e|0):0){s1(e)|0;c[d>>2]=0}return}function BC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0.0;if(!b){e=-1;d=-1}else{e=c[b+48>>2]|0;f=+(e|0);if(!e){g=+h[d>>3];f=+h[d+8>>3]}else{h[d+8>>3]=f;h[d>>3]=f;g=f}e=~~(+((c[b+40>>2]|0)*72|0)/g);d=~~(+((c[b+44>>2]|0)*72|0)/f)}c[a>>2]=e;c[a+4>>2]=d;return}function CC(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0.0;m=l;l=l+48|0;f=m+16|0;j=m;k=m+32|0;if((e|0)!=0?(a[e>>0]|0)!=0:0){if((0==0?(g=c[46362]|0,(c[46236]|0)!=(g|0)):0)?(c[46236]=g,i=c[46234]|0,i|0):0){yw(i)|0;c[46234]=0}n=+h[(c[(c[d+16>>2]|0)+8>>2]|0)+24>>3];n=!(n>=1.0)?96.0:n;h[j+8>>3]=n;h[j>>3]=n;d=DC(e)|0;c[f>>2]=c[j>>2];c[f+4>>2]=c[j+4>>2];c[f+8>>2]=c[j+8>>2];c[f+12>>2]=c[j+12>>2];BC(k,d,f);d=c[k>>2]|0;f=c[k+4>>2]|0}else{d=-1;f=-1}c[b>>2]=d;c[b+4>>2]=f;l=m;return}function DC(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;e=f;if(!a)qa(108182,95369,638,95476);if(!(c[46234]|0))c[46234]=Cw(20088,c[4563]|0)|0;b=yC(a)|0;a:do if(!b){b=uH(64)|0;if(!b)b=0;else{d=b+8|0;c[d>>2]=Oz(0,a)|0;if(!((zC(b)|0)<<24>>24)){EC(b);b=0;break}if(!(c[b+20>>2]|0))qa(95470,95369,653,95476);do switch(FC(b)|0){case 0:{a=VJ(c[d>>2]|0)|0;c[b+52>>2]=a;if(!a){c[e>>2]=c[d>>2];Pw(0,95493,e)|0;EC(b);b=0;break a}break}case 2:{GC(b);break}case 3:{HC(b);break}case 1:{IC(b);break}case 4:{JC(b);break}case 6:{KC(b);break}case 11:{LC(b);break}case 8:{MC(b);break}case 5:{NC(b);break}case 12:{OC(b);break}default:{}}while(0);AC(b);e=c[46234]|0;nb[c[e>>2]&63](e,b,1)|0}}else AC(b);while(0);l=f;return b|0}function EC(a){a=a|0;var b=0;b=c[a+8>>2]|0;if(b|0)Qz(0,b)|0;D_(a);return}function FC(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+224|0;f=j+200|0;g=j;h=a+20|0;b=c[h>>2]|0;a:do if((b|0)!=0?(g3(f,1,20,b)|0)==20:0){d=0;while(1){if(d>>>0>=10){i=13;break a}if(!(L0(f,c[20124+(d<<4)>>2]|0,c[20124+(d<<4)+4>>2]|0)|0))break;d=d+1|0}e=a+28|0;c[e>>2]=c[20124+(d<<4)+12>>2];b=c[20124+(d<<4)+8>>2]|0;a=a+24|0;c[a>>2]=b;switch(d|0){case 7:break;case 8:{if(L0(f+8|0,95709,4)|0)break a;c[e>>2]=95714;c[a>>2]=11;b=11;break a}default:break a}while(1){if(!(O0(g,200,c[h>>2]|0)|0)){i=11;break}if(!(L0(g,95704,4)|0)){i=8;break}}if((i|0)==8){c[e>>2]=98777;c[a>>2]=8;b=8;break}else if((i|0)==11){b=c[a>>2]|0;break}}else i=13;while(0);if((i|0)==13){c[a+28>>2]=95719;c[a+24>>2]=0;b=0}l=j;return b|0}function GC(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;b=f+4|0;d=f;c[a+48>>2]=0;e=a+20|0;Z1(c[e>>2]|0,6,0)|0;if((XC(c[e>>2]|0,2,b)|0)<<24>>24?(XC(c[e>>2]|0,2,d)|0)<<24>>24:0){c[a+40>>2]=c[b>>2];c[a+44>>2]=c[d>>2]}l=f;return}function HC(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;b=f+4|0;d=f;c[a+48>>2]=0;e=a+20|0;Z1(c[e>>2]|0,16,0)|0;if((PC(c[e>>2]|0,4,b)|0)<<24>>24?(PC(c[e>>2]|0,4,d)|0)<<24>>24:0){c[a+40>>2]=c[b>>2];c[a+44>>2]=c[d>>2]}l=f;return}function IC(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;b=h+12|0;d=h+8|0;e=h+4|0;f=h;c[a+48>>2]=0;g=a+20|0;Z1(c[g>>2]|0,16,0)|0;if((((XC(c[g>>2]|0,2,b)|0)<<24>>24?(XC(c[g>>2]|0,2,d)|0)<<24>>24:0)?(XC(c[g>>2]|0,2,e)|0)<<24>>24:0)?(XC(c[g>>2]|0,2,f)|0)<<24>>24:0){c[a+40>>2]=c[b>>2]<<16|c[d>>2];c[a+44>>2]=c[e>>2]<<16|c[f>>2]}l=h;return}function JC(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;b=m+16|0;e=m+12|0;f=m+8|0;h=m+4|0;i=m;c[a+48>>2]=0;j=a+20|0;while(1){if(!((PC(c[j>>2]|0,1,b)|0)<<24>>24))break;d=c[b>>2]|0;if((d|0)==255)continue;if(A$(95692,d)|0)continue;if((d|0)==192){k=6;break}g=c[j>>2]|0;if((d|0)==194){k=11;break}if(!((PC(g,2,e)|0)<<24>>24))break;Z1(c[j>>2]|0,(c[e>>2]|0)+-2|0,1)|0}if((k|0)==6){if(((PC(c[j>>2]|0,3,i)|0)<<24>>24?(PC(c[j>>2]|0,2,f)|0)<<24>>24:0)?(PC(c[j>>2]|0,2,h)|0)<<24>>24:0){c[a+44>>2]=c[f>>2];c[a+40>>2]=c[h>>2]}}else if((((k|0)==11?(PC(g,3,i)|0)<<24>>24:0)?(PC(c[j>>2]|0,2,f)|0)<<24>>24:0)?(PC(c[j>>2]|0,2,h)|0)<<24>>24:0){c[a+44>>2]=c[f>>2];c[a+40>>2]=c[h>>2]}l=m;return}function KC(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+1056|0;j=m;b=m+32|0;e=m+28|0;f=m+24|0;g=m+20|0;h=m+16|0;c[a+48>>2]=72;i=a+20|0;Z1(c[i>>2]|0,0,0)|0;while(1){if(!(O0(b,1024,c[i>>2]|0)|0))break;d=P0(b,95677)|0;if(!d)continue;c[j>>2]=e;c[j+4>>2]=f;c[j+8>>2]=g;c[j+12>>2]=h;if((N1(d,101285,j)|0)==4){k=5;break}}if((k|0)==5){j=c[e>>2]|0;c[a+32>>2]=j;k=c[f>>2]|0;c[a+36>>2]=k;c[a+40>>2]=(c[g>>2]|0)-j;c[a+44>>2]=(c[h>>2]|0)-k}l=m;return}function LC(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;b=g+4|0;d=g;c[a+48>>2]=0;e=a+20|0;Z1(c[e>>2]|0,15,0)|0;h=(m3(c[e>>2]|0)|0)==88;f=c[e>>2]|0;if(h){Z1(f,24,0)|0;if((XC(c[e>>2]|0,4,b)|0)<<24>>24?(XC(c[e>>2]|0,4,d)|0)<<24>>24:0){c[a+40>>2]=c[b>>2];c[a+44>>2]=c[d>>2]}}else{Z1(f,26,0)|0;if((XC(c[e>>2]|0,2,b)|0)<<24>>24?(XC(c[e>>2]|0,2,d)|0)<<24>>24:0){c[a+40>>2]=c[b>>2];c[a+44>>2]=c[d>>2]}}l=g;return}function MC(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=l;l=l+352|0;C=F+80|0;B=F+72|0;E=F+64|0;D=F+56|0;A=F+48|0;d=F+40|0;s=F+32|0;t=F+24|0;u=F+16|0;v=F+8|0;w=F;x=F+328|0;y=F+128|0;z=F+96|0;if(!(c[46237]|0)){if(o2(184952,95562,1)|0){c[d>>2]=95562;Pw(1,95589,d)|0}c[46237]=184952}m=b+20|0;Z1(c[m>>2]|0,0,0)|0;n=z+12|0;o=z+20|0;p=z+8|0;q=z+16|0;r=z+4|0;d=0;g=0;f=0;e=0;a:while(1){if(!(O0(y,200,c[m>>2]|0)|0))break;if(g<<24>>24==0|d<<24>>24==0){i=y;k=e}else break;b:while(1){j=f;c:while(1){while(1){if(a3(184952,i,4,z,0)|0){f=j;e=k;continue a}a[i+(c[n>>2]|0)>>0]=0;a[i+(c[o>>2]|0)>>0]=0;e=i+(c[p>>2]|0)|0;f=i+(c[q>>2]|0)|0;i=i+((c[r>>2]|0)+1)|0;if(!(b$(e,138034)|0))break;if(!(b$(e,137966)|0))break c;if(b$(e,95636)|0)continue;c[C>>2]=t;c[C+4>>2]=u;c[C+8>>2]=v;c[C+12>>2]=w;if((N1(f,95644,C)|0)==4)break b}c[A>>2]=s;c[A+4>>2]=x;if((N1(f,95626,A)|0)!=2){c[D>>2]=s;if((N1(f,98183,D)|0)==1){e=1;f=WC(+h[s>>3],95633)|0}else{e=g;f=j}}else{e=1;f=WC(+h[s>>3],x)|0}if(!(d<<24>>24)){d=0;g=e;j=f}else{g=e;e=k;continue a}}c[E>>2]=s;c[E+4>>2]=x;if((N1(f,95626,E)|0)!=2){c[B>>2]=s;if((N1(f,98183,B)|0)==1){d=1;e=WC(+h[s>>3],95633)|0}else e=k}else{d=1;e=WC(+h[s>>3],x)|0}if(!(g<<24>>24)){g=0;f=j;k=e}else{f=j;continue a}}d=1;g=1;f=~~(+h[v>>3]+1.0-+h[t>>3])>>>0;e=~~(+h[w>>3]+1.0-+h[u>>3])>>>0}c[b+48>>2]=0;c[b+40>>2]=f;c[b+44>>2]=e;l=F;return}function NC(a){a=a|0;var b=0,d=0,e=0,f=0.0,g=0.0;d=l;l=l+32|0;b=d;c[a+48>>2]=0;e=a+20|0;Z1(c[e>>2]|0,0,0)|0;if(!(QC(c[e>>2]|0,b)|0)){g=+h[b>>3];c[a+32>>2]=~~g;f=+h[b+8>>3];c[a+36>>2]=~~f;c[a+40>>2]=~~(+h[b+16>>3]-g);c[a+44>>2]=~~(+h[b+24>>3]-f)}l=d;return}function OC(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;b=f+4|0;d=f;c[a+48>>2]=0;e=a+20|0;Z1(c[e>>2]|0,6,0)|0;if((PC(c[e>>2]|0,1,b)|0)<<24>>24?(PC(c[e>>2]|0,1,d)|0)<<24>>24:0){c[a+40>>2]=c[b>>2];c[a+44>>2]=c[d>>2]}l=f;return}function PC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;c[d>>2]=0;e=0;while(1){if(e>>>0>=b>>>0){e=1;break}f=m3(a)|0;if(r1(a)|0){e=0;break}c[d>>2]=c[d>>2]<<8|f;e=e+1|0}return e|0}function QC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+1040|0;d=h;e=h+16|0;while(1){if(!(O0(e,1024,a)|0)){a=1;break}f=P0(e,95552)|0;if(f|0){g=4;break}}if((g|0)==4){c[d+4>>2]=e;c[d>>2]=f+9;c[d+8>>2]=a;a=RC(d,b)|0}l=h;return a|0}function RC(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+1024|0;f=g;SC(b);e=a[c[b>>2]>>0]|0;if(!(e<<24>>24))e=(TC(b)|0)&255;else e=e<<24>>24;if((((e|0)==91?(c[b>>2]=(c[b>>2]|0)+1,UC(b,f),(VC(f,d)|0)==0):0)?(UC(b,f),(VC(f,d+8|0)|0)==0):0)?(UC(b,f),(VC(f,d+16|0)|0)==0):0){UC(b,f);e=(VC(f,d+24|0)|0)!=0&1}else e=1;l=g;return e|0}function SC(b){b=b|0;var d=0;d=c[b>>2]|0;while(1){d=a[d>>0]|0;if(!(d<<24>>24))d=(TC(b)|0)&255;else d=d<<24>>24;if(!((d&255)<<24>>24))break;if(!(B$(d&255)|0))break;d=(c[b>>2]|0)+1|0;c[b>>2]=d}return}function TC(b){b=b|0;var d=0;d=b+4|0;if(!(O0(c[d>>2]|0,1024,c[b+8>>2]|0)|0))b=0;else{d=c[d>>2]|0;c[b>>2]=d;b=a[d>>0]|0}return b|0}function UC(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;SC(b);e=0;f=c[b>>2]|0;while(1){f=a[f>>0]|0;if(!(f<<24>>24))g=(TC(b)|0)&255;else g=f<<24>>24;f=g<<24>>24;if(!f)break;if(!((f|0)==46|(f+-48|0)>>>0<10))break;a[d+e>>0]=g;e=e+1|0;f=(c[b>>2]|0)+1|0;c[b>>2]=f;if((e|0)==1023){e=1023;break}}a[d+e>>0]=0;return}function VC(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0;e=l;l=l+16|0;f=e;d=+c2(a,f);if((c[f>>2]|0)==(a|0))a=1;else{h[b>>3]=d;a=0}l=e;return a|0}function WC(a,b){a=+a;b=b|0;var c=0.0;do if(!(b$(b,95660)|0)){a=a*72.0;c=a;a=a>=0.0?.5:-.5}else{if(!(b$(b,95663)|0)){a=a*.75;c=a;a=a>=0.0?.5:-.5;break}if(!(b$(b,95666)|0)){a=a*12.0;c=a;a=a>=0.0?.5:-.5;break}if(b$(b,95633)|0?b$(b,95669)|0:0)if(!(b$(b,95671)|0)){a=a*28.346456664;c=a;a=a>=0.0?.5:-.5;break}else{b=(b$(b,95674)|0)==0;c=a*2.8346456663999997;return (b?~~(c+(c>=0.0?.5:-.5)):0)|0}c=a>=0.0?.5:-.5}while(0);return ~~(a+c)|0}function XC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;c[d>>2]=0;e=0;while(1){if(e>>>0>=b>>>0){e=1;break}f=m3(a)|0;if(r1(a)|0){e=0;break}c[d>>2]=c[d>>2]|f<<(e<<3);e=e+1|0}return e|0}function YC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a=c[b+20>>2]|0;if(a|0)s1(a)|0;if(c[b+52>>2]|0?(e=c[b+60>>2]|0,e|0):0)tb[e&127](b);D_(b);return}function ZC(){var a=0;nx(0,1,105198,102467)|0;a=kC(0,1)|0;LP(a,0);return a|0}function _C(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0;k=l;l=l+304|0;j=k+24|0;i=k+8|0;f=k;g=k+40|0;if((UB(b,e)|0)!=999)if((VB(b,d)|0)==-1)b=-1;else{b=c[d+16>>2]|0;e=b+16|0;if(!(a[(c[b+8>>2]|0)+81>>0]|0)){p=+h[e>>3];o=+h[b+24>>3];n=+h[b+32>>3];m=+h[b+40>>3];c[j>>2]=~~(p+(p>=0.0?.5:-.5));c[j+4>>2]=~~(o+(o>=0.0?.5:-.5));c[j+8>>2]=~~(n+(n>=0.0?.5:-.5));c[j+12>>2]=~~(m+(m>=0.0?.5:-.5));Y0(g,95873,j)|0}else{m=+h[b+24>>3];n=+h[e>>3];o=+h[b+40>>3];p=+h[b+32>>3];c[i>>2]=~~(m+(m>=0.0?.5:-.5));c[i+4>>2]=~~(n+(n>=0.0?.5:-.5));c[i+8>>2]=~~(o+(o>=0.0?.5:-.5));c[i+12>>2]=~~(p+(p>=0.0?.5:-.5));Y0(g,95873,i)|0}Ax(d,99645,g,191979)|0;b=0}else{b=xC(b,1,e)|0;c[f>>2]=e;c[f+4>>2]=b;Pw(1,95824,f)|0;b=-1}l=k;return b|0}function $C(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;f=c[b+60>>2]|0;oC(a,d)|0;b=c[a+164>>2]|0;c[b+56>>2]=uO(b,c[b+52>>2]|0)|0;if((Az(f,134401,0,1)|0)!=0?(c[(c[f+16>>2]|0)+8>>2]|0)!=0:0)h=5;else if(!(c[b+152>>2]&67108864)){Sw(95885,g);b=-1}else h=5;if((h|0)==5){c[b+36>>2]=e;if(!e){h=b+152|0;c[h>>2]=c[h>>2]|134217728}h=DG(a,f)|0;wO(b);tC(a);b=h}l=i;return b|0}function aD(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;f=c[b+60>>2]|0;oC(a,d)|0;b=c[a+164>>2]|0;c[b+56>>2]=uO(b,c[b+52>>2]|0)|0;if((Az(f,134401,0,1)|0)!=0?(c[(c[f+16>>2]|0)+8>>2]|0)!=0:0)h=5;else if(!(c[b+152>>2]&67108864)){Sw(95885,g);b=-1}else h=5;if((h|0)==5){nC(a,e);h=DG(a,f)|0;wO(b);dC(b);tC(a);b=h}l=i;return b|0}function bD(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;h=m+8|0;g=m;b=c[b+60>>2]|0;oC(a,d)|0;j=c[a+164>>2]|0;c[j+56>>2]=uO(j,c[j+52>>2]|0)|0;if((Az(b,134401,0,1)|0)!=0?(c[(c[b+16>>2]|0)+8>>2]|0)!=0:0)k=5;else if(!(c[j+152>>2]&67108864)){Sw(95885,g);b=-1}else k=5;do if((k|0)==5){if(e|0?(i=C_(4096)|0,c[e>>2]=i,i|0):0){g=j+40|0;c[g>>2]=i;c[j+44>>2]=4096;d=j+48|0;c[d>>2]=0;b=DG(a,b)|0;wO(j);if(!b){c[e>>2]=c[g>>2];c[f>>2]=c[d>>2]}tC(a);break}Pw(1,95906,h)|0;b=-1}while(0);l=m;return b|0}function cD(a,b){a=a|0;b=b|0;JP(a,0,b);return}function dD(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+4288|0;E=H+8|0;D=H;F=4;G=C_(40)|0;c[G>>2]=0;A=H+4152|0;B=H+4148|0;C=H+4128|0;j=H+4112|0;k=H+16|0;o=0;i=$(24,b|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;a:do if((h|0)!=1){if(!i){c[d>>2]=0;g=0;break}o=0;n=ca(26,e|0,B|0,A|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)!=1){o=0;m=$(23,40)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)!=1){o=0;na(7,C|0,j|0,k|0,24,83);g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)!=1){o=0;e=$(25,b|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)!=1){j=C+16|0;i=c[j>>2]|0;g=e;while(1){if(!g)break;o=0;aa(i|0,g|0,0)|0;h=o;o=0;if((h|0)!=0&(p|0)!=0){e=E3(c[h>>2]|0,G|0,F|0)|0;if(!e)bb(h|0,p|0);z=p}else e=-1;if((e|0)==1){y=0;x=j;w=m;v=n;g=z;m=15;break a}o=0;g=aa(84,b|0,g|0)|0;h=o;o=0;if((h|0)!=0&(p|0)!=0){e=E3(c[h>>2]|0,G|0,F|0)|0;if(!e)bb(h|0,p|0);z=p}else e=-1;if((e|0)==1){y=0;x=j;w=m;v=n;g=z;m=15;break a}}G=D3(184984,1,G|0,F|0)|0;F=z;o=0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){y=m;x=j;w=m;v=n;g=z;m=15}else{y=m;x=j;w=m;v=n;g=0;m=15}}else{y=0;x=0;w=m;v=n;g=z;m=15}}else{y=0;x=0;w=m;v=n;g=z;m=15}}else{y=0;x=0;w=m;v=n;g=z;m=15}}else{y=0;x=0;w=0;v=n;g=z;m=15}}else{y=0;x=0;w=0;v=0;g=z;m=15}while(0);do if((m|0)==15){b:while(1){c:do if(!g){o=0;e=$(25,b|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}u=v+(c[B>>2]|0)|0;k=0;m=0;j=0;while(1){if(!e)break;o=0;g=aa(c[x>>2]|0,e|0,-1)|0;h=o;o=0;if((h|0)!=0&(p|0)!=0){i=E3(c[h>>2]|0,G|0,F|0)|0;if(!i)bb(h|0,p|0);z=p}else i=-1;if((i|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}if((g|0)==0?(a[(c[e+16>>2]|0)+119>>0]|0)==3:0){if(!m){o=0;c[D>>2]=j;ca(27,u|0,134313,D|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}o=0;i=ca(28,b|0,v|0,1)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}o=0;da(53,i|0,134401,280,1)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}c[y+(j<<2)>>2]=i;k=1;j=j+1|0}else i=m;o=0;da(54,b|0,e|0,i|0,C|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}}else i=m;o=0;e=aa(84,b|0,e|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}m=i}o=0;e=$(25,b|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}i=10;n=y;q=w;r=w;t=w;while(1){if(!e){m=0;i=r;e=t;break c}o=0;g=aa(c[x>>2]|0,e|0,-1)|0;h=o;o=0;if((h|0)!=0&(p|0)!=0){m=E3(c[h>>2]|0,G|0,F|0)|0;if(!m)bb(h|0,p|0);z=p}else m=-1;if((m|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}if(!g){o=0;c[E>>2]=j;ca(27,u|0,134313,E|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}o=0;s=ca(28,b|0,v|0,1)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}o=0;da(53,s|0,134401,280,1)|0;h=o;o=0;if((h|0)!=0&(p|0)!=0){g=E3(c[h>>2]|0,G|0,F|0)|0;if(!g)bb(h|0,p|0);z=p}else g=-1;if((g|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}o=0;da(54,b|0,e|0,s|0,C|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}if((j|0)==(i|0)){i=j<<1;o=0;m=aa(85,q|0,j<<3|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}g=m;q=m;r=m;h=m}else{g=n;h=t}c[g+(j<<2)>>2]=s;n=g;j=j+1|0;m=h}else m=t;o=0;e=aa(84,b|0,e|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}t=m}}else{m=1;k=0;n=y;j=0;i=w;e=w}while(0);o=0;ia(105,C|0);g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue}if((v|0)!=(A|0)){o=0;ia(103,v|0);g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue}}if(!m){o=0;g=aa(85,e|0,j<<2|0)|0;h=o;o=0;if((h|0)!=0&(p|0)!=0){e=E3(c[h>>2]|0,G|0,F|0)|0;if(!e)bb(h|0,p|0);z=p}else e=-1;if((e|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue}else{m=58;break}}c[d>>2]=0;g=0;while(1){if((g|0)>=(j|0))break;o=0;$(26,c[n+(g<<2)>>2]|0)|0;h=o;o=0;if((h|0)!=0&(p|0)!=0){e=E3(c[h>>2]|0,G|0,F|0)|0;if(!e)bb(h|0,p|0);z=p}else e=-1;if((e|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}g=g+1|0}o=0;ia(103,i|0);g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15}else{m=56;break}}if((m|0)==56){g=0;break}else if((m|0)==58){c[d>>2]=j;a[f>>0]=k;break}}while(0);D_(G|0);l=H;return g|0}function eD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if(!((a|0)!=0?(nD(a)|0)!=0:0))a=95962;e=W_(a)|0;if((e|0)>=104){d=vH(e+25|0)|0;if(!d)d=0;else f=6}else f=6;if((f|0)==6){b0(d,a)|0;c[b>>2]=e}return d|0}function fD(a,b){a=a|0;b=b|0;Xy(b,a,1)|0;return}function gD(b,d){b=b|0;d=d|0;var e=0;b=(c[b+16>>2]|0)+157|0;e=a[b>>0]|0;if((d|0)>=0)a[b>>0]=d;return e|0}function hD(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[b>>2]=d;c[b+4>>2]=d+4096;c[b+12>>2]=0;c[b+8>>2]=0;c[a>>2]=b;c[a+4>>2]=b;c[a+8>>2]=d;c[a+12>>2]=e;c[a+16>>2]=f;return}function iD(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;lD(e,b);i=e+12|0;j=e+16|0;b=0;a:while(1){k=mD(e)|0;if(!k)break;b=b+1|0;f=c[i>>2]|0;if(f|0)ub[f&63](k,d);h=Jx(a,k)|0;while(1){if(!h)continue a;g=c[h>>2]&3;f=c[((g|0)==3?h:h+48|0)+40>>2]|0;if((f|0)==(k|0))f=c[((g|0)==2?h:h+-48|0)+40>>2]|0;if(!(lb[c[j>>2]&127](f,-1)|0))lD(e,f);h=Kx(a,h,k)|0}}return b|0}function jD(a){a=a|0;var b=0;a=c[(c[a>>2]|0)+12>>2]|0;while(1){if(!a)break;b=c[a+12>>2]|0;kD(a);a=b}return}function kD(a){a=a|0;D_(c[a>>2]|0);D_(a);return}function lD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;j=k+8|0;f=k;g=a+8|0;i=a+4|0;d=c[i>>2]|0;if((c[g>>2]|0)==(c[d+4>>2]|0)){d=c[d+12>>2]|0;do if(!d){e=vH(16)|0;if(!e){Pw(1,95943,f)|0;bb(184984,1)}c[e+8>>2]=c[i>>2];c[e+12>>2]=0;d=vH(4e6)|0;c[e>>2]=d;if(!d){Pw(1,95943,j)|0;bb(184984,1)}else{c[e+4>>2]=d+4e6;c[(c[i>>2]|0)+12>>2]=e;h=e;break}}else h=d;while(0);c[i>>2]=h;c[g>>2]=c[h>>2]}lb[c[a+16>>2]&127](b,1)|0;j=c[g>>2]|0;c[g>>2]=j+4;c[j>>2]=b;l=k;return}function mD(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=a+8|0;b=c[f>>2]|0;d=a+4|0;e=c[d>>2]|0;if((b|0)==(c[e>>2]|0))if((e|0)==(c[a>>2]|0))b=0;else{b=c[e+8>>2]|0;c[d>>2]=b;b=c[b+4>>2]|0;c[f>>2]=b;g=4}else g=4;if((g|0)==4){b=b+-4|0;c[f>>2]=b;b=c[b>>2]|0}return b|0}function nD(b){b=b|0;var c=0;a:while(1){c=b;b=b+1|0;c=a[c>>0]|0;switch(c<<24>>24){case 95:continue a;case 0:{b=1;break a}default:{}}if(!(M$(c&255)|0)){b=0;break}}return b|0}function oD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0;B=l;l=l+4272|0;x=B;y=4;A=C_(40)|0;c[A>>2]=0;u=B+4144|0;v=B+4140|0;w=B+4120|0;h=B+4104|0;i=B+8|0;o=0;f=$(24,a|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){e=E3(c[g>>2]|0,A|0,y|0)|0;if(!e)bb(g|0,p|0);z=p}else e=-1;a:do if((e|0)!=1)if(f){o=0;k=ca(26,d|0,v|0,u|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){d=E3(c[e>>2]|0,A|0,y|0)|0;if(!d)bb(e|0,p|0);z=p}else d=-1;if((d|0)!=1){o=0;j=$(23,40)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){d=E3(c[e>>2]|0,A|0,y|0)|0;if(!d)bb(e|0,p|0);z=p}else d=-1;if((d|0)!=1){o=0;na(7,w|0,h|0,i|0,24,83);e=o;o=0;if((e|0)!=0&(p|0)!=0){d=E3(c[e>>2]|0,A|0,y|0)|0;if(!d)bb(e|0,p|0);z=p}else d=-1;if((d|0)!=1){o=0;f=$(25,a|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){d=E3(c[e>>2]|0,A|0,y|0)|0;if(!d)bb(e|0,p|0);z=p}else d=-1;if((d|0)!=1){h=w+16|0;g=c[h>>2]|0;e=f;while(1){if(!e)break;o=0;aa(g|0,e|0,0)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){f=E3(c[d>>2]|0,A|0,y|0)|0;if(!f)bb(d|0,p|0);z=p}else f=-1;if((f|0)==1){t=h;s=j;r=k;e=z;j=14;break a}o=0;e=aa(84,a|0,e|0)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){f=E3(c[d>>2]|0,A|0,y|0)|0;if(!f)bb(d|0,p|0);z=p}else f=-1;if((f|0)==1){t=h;s=j;r=k;e=z;j=14;break a}}A=D3(184984,1,A|0,y|0)|0;y=z;o=0;e=o;o=0;if((e|0)!=0&(p|0)!=0){d=E3(c[e>>2]|0,A|0,y|0)|0;if(!d)bb(e|0,p|0);z=p}else d=-1;if((d|0)==1){t=h;s=j;r=k;e=z;j=14}else{t=h;s=j;r=k;e=0;j=14}}else{t=0;s=j;r=k;e=z;j=14}}else{t=0;s=j;r=k;e=z;j=14}}else{t=0;s=j;r=k;e=z;j=14}}else{t=0;s=0;r=k;e=z;j=14}}else{d=0;e=0}else{t=0;s=0;r=0;e=z;j=14}while(0);b:do if((j|0)==14){c:while(1){if(e|0){o=0;ia(105,w|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){d=E3(c[e>>2]|0,A|0,y|0)|0;if(!d)bb(e|0,p|0);z=p}else d=-1;if((d|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue}o=0;ia(103,s|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){d=E3(c[e>>2]|0,A|0,y|0)|0;if(!d)bb(e|0,p|0);z=p}else d=-1;if((d|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue}if((r|0)==(u|0)){d=0;e=0;break b}o=0;ia(103,r|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){d=E3(c[e>>2]|0,A|0,y|0)|0;if(!d)bb(e|0,p|0);z=p}else d=-1;if((d|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue}else{j=19;break}}o=0;f=$(25,a|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){d=E3(c[e>>2]|0,A|0,y|0)|0;if(!d)bb(e|0,p|0);z=p}else d=-1;if((d|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue}q=r+(c[v>>2]|0)|0;h=10;k=s;e=0;j=s;n=s;while(1){if(!f)break;o=0;d=aa(c[t>>2]|0,f|0,-1)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){i=E3(c[g>>2]|0,A|0,y|0)|0;if(!i)bb(g|0,p|0);z=p}else i=-1;if((i|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue c}if(!d){o=0;c[x>>2]=e;ca(27,q|0,134313,x|0)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){g=E3(c[d>>2]|0,A|0,y|0)|0;if(!g)bb(d|0,p|0);z=p}else g=-1;if((g|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue c}o=0;m=ca(28,a|0,r|0,1)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){g=E3(c[d>>2]|0,A|0,y|0)|0;if(!g)bb(d|0,p|0);z=p}else g=-1;if((g|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue c}o=0;da(53,m|0,134401,280,1)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){g=E3(c[d>>2]|0,A|0,y|0)|0;if(!g)bb(d|0,p|0);z=p}else g=-1;if((g|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue c}o=0;da(54,a|0,f|0,m|0,w|0)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){g=E3(c[d>>2]|0,A|0,y|0)|0;if(!g)bb(d|0,p|0);z=p}else g=-1;if((g|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue c}if((e|0)==(h|0)){h=e<<1;o=0;i=aa(85,j|0,e<<3|0)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){g=E3(c[d>>2]|0,A|0,y|0)|0;if(!g)bb(d|0,p|0);z=p}else g=-1;if((g|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue c}g=i;j=i;d=i}else{g=k;d=n}c[g+(e<<2)>>2]=m;e=e+1|0;k=g;i=d}else i=n;o=0;f=aa(84,a|0,f|0)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){g=E3(c[d>>2]|0,A|0,y|0)|0;if(!g)bb(d|0,p|0);z=p}else g=-1;if((g|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue c}n=i}o=0;ia(105,w|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=E3(c[d>>2]|0,A|0,y|0)|0;if(!f)bb(d|0,p|0);z=p}else f=-1;if((f|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue}o=0;d=aa(85,n|0,e<<2|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,A|0,y|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue}if((r|0)==(u|0))break b;o=0;ia(103,r|0);f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,A|0,y|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14}else{j=39;break}}if((j|0)==19){d=0;e=0;break}else if((j|0)==39)break}while(0);c[b>>2]=e;D_(A|0);l=B;return d|0}function pD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=0;f=Sy(a)|0;while(1){if(!f)break;e=Ex(b,f)|0;while(1){if(!e)break;if(Xy(a,c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,0)|0){Vx(a,e,1)|0;d=d+1|0}e=Gx(b,e)|0}f=Ty(a,f)|0}return d|0}function qD(a){a=a|0;a=yz(a,95967,0)|0;if(!a)qa(95972,95975,529,95984);else return c[a+8>>2]|0;return 0}function rD(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=l;l=l+4320|0;s=u+24|0;r=u+8|0;q=u;t=u+4184|0;p=u+4160|0;f=u+40|0;if(ay(b)|0){Fz(b,0,95993,-12,0);Fz(b,1,96005,16,0);o=eD(e,f,t)|0;k=sD(b)|0;m=vH((ay(k)|0)<<2)|0;hD(p,u+4144|0,u+48|0,24,86);h=Sy(k)|0;n=p+16|0;i=o+(c[f>>2]|0)|0;j=c[15686]|0;e=0;while(1){if(!h)break;if(!(lb[c[n>>2]&127](h,-1)|0)){c[q>>2]=e;Y0(i,96907,q)|0;v=vA(k,o,1)|0;w=vA(b,o,1)|0;Az(w,95993,12,0)|0;a[(yz(w,95993,0)|0)+8>>0]=1;f=iD(k,h,v,p)|0;uD(v,w);g=vD(w)|0;wD(b,w);c[m+(e<<2)>>2]=w;dz(k,v)|0;if(0){c[r>>2]=e;c[r+4>>2]=f;c[r+8>>2]=g;g1(j,96017,r)|0}e=e+1|0}h=Ty(k,h)|0}if(0){r=ay(b)|0;v=by(b)|0;w=ry(b)|0;c[s>>2]=r;c[s+4>>2]=v;c[s+8>>2]=e;c[s+12>>2]=w;g1(j,96047,s)|0}$x(k)|0;Gz(b,0,95993);Gz(b,1,96005);jD(p);f=xH(m,e<<2)|0;if((o|0)!=(t|0))D_(o)}else{f=0;e=0}c[d>>2]=e;l=u;return f|0}function sD(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;h=i;a[h>>0]=a[18492]|0;a[h+1>>0]=a[18493]|0;a[h+2>>0]=a[18494]|0;a[h+3>>0]=a[18495]|0;h=Xx(96094,h,0)|0;zD(h,b);d=Sy(b)|0;while(1){if(!d)break;if(!(c[(yz(d,96005,0)|0)+12>>2]|0)){g=az(h,ry(d)|0,1)|0;Az(g,96005,16,1)|0;c[(c[g+16>>2]|0)+12>>2]=d;c[(yz(d,96005,0)|0)+12>>2]=g}d=Ty(b,d)|0}e=Sy(b)|0;while(1){if(!e)break;f=c[(yz(e,96005,0)|0)+12>>2]|0;d=Ex(b,e)|0;while(1){if(!d)break;g=c[(yz(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0,96005,0)|0)+12>>2]|0;do if((g|0)!=(f|0))if(g>>>0>f>>>0){Rx(h,f,g,0,1)|0;break}else{Rx(h,g,f,0,1)|0;break}while(0);d=Gx(b,d)|0}e=Ty(b,e)|0}l=i;return h|0}function tD(b,d){b=b|0;d=d|0;var e=0;b=(c[b+16>>2]|0)+8|0;e=a[b>>0]|0;if((d|0)>=0)a[b>>0]=d;return e|0}function uD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=Sy(a)|0;while(1){if(!e)break;f=c[(c[e+16>>2]|0)+12>>2]|0;a:do if((c[f>>2]&3|0)==1)Xy(b,f,1)|0;else{d=Sy(f)|0;while(1){if(!d)break a;Xy(b,d,1)|0;d=Ty(f,d)|0}}while(0);e=Ty(a,e)|0}return}function vD(a){a=a|0;return pD(a,c[a+60>>2]|0)|0}function wD(a,b){a=a|0;b=b|0;xD(a,b,0);return}function xD(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;g=(d|0)==0;b=wA(b)|0;while(1){if(!b)break;if((a[(yz(b,95993,0)|0)+8>>0]|0)==0?(f=yD(b,c,d)|0,f|0):0){if(g)e=(z$(ry(b)|0,104980,7)|0)==0;else e=1;xD(b,f,e&1)}b=xA(b)|0}return}function yD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=0;g=Sy(a)|0;while(1){if(!g)break;f=az(b,ry(g)|0,0)|0;if(f){if(!e)e=vA(b,ry(a)|0,1)|0;Xy(e,f,1)|0}g=Ty(a,g)|0}if((d|0)!=0&(e|0)==0)e=vA(b,ry(a)|0,1)|0;if(e|0?(pD(e,a)|0,Bx(a,e)|0,(z$(ry(e)|0,104980,7)|0)==0):0)c[(Az(e,95967,12,0)|0)+8>>2]=a;return e|0}function zD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=l;l=l+16|0;g=h;d=wA(b)|0;e=c[15686]|0;while(1){if(!d)break;a:do if(!(z$(ry(d)|0,104980,7)|0)){f=az(a,ry(d)|0,1)|0;Az(f,96005,16,1)|0;c[(c[f+16>>2]|0)+12>>2]=d;b=Sy(d)|0;while(1){if(!b)break a;if(c[(yz(b,96005,0)|0)+12>>2]|0){k=ry(b)|0;j=ry(d)|0;i=ry(c[(yz(b,96005,0)|0)+12>>2]|0)|0;c[g>>2]=k;c[g+4>>2]=j;c[g+8>>2]=i;g1(e,96097,g)|0}c[(yz(b,96005,0)|0)+12>>2]=f;b=Ty(d,b)|0}}else zD(a,d);while(0);d=xA(d)|0}l=h;return}function AD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0.0;n=+h[a>>3];j=~~(n+(n>=0.0?.5:-.5));n=+h[a+8>>3];a=~~(n+(n>=0.0?.5:-.5));n=+h[b>>3];g=~~(n+(n>=0.0?.5:-.5));n=+h[b+8>>3];f=~~(n+(n>=0.0?.5:-.5));l=g-j|0;i=((l|0)>-1?l:0-l|0)<<1;l=l>>31|1;m=f-a|0;k=((m|0)>-1?m:0-m|0)<<1;m=m>>31|1;a:do if((i|0)>(k|0)){e=0-i|0;d=k-(i>>1)|0;b=j;while(1){BI(c,b,a);if((b|0)==(g|0))break a;j=(d|0)>-1;d=d+k+(j?e:0)|0;b=b+l|0;a=(j?m:0)+a|0}}else{e=0-k|0;d=j;b=i-(k>>1)|0;while(1){BI(c,d,a);if((a|0)==(f|0))break a;k=(b|0)>-1;d=(k?l:0)+d|0;b=b+i+(k?e:0)|0;a=a+m|0}}while(0);return}function BD(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;k=n;j=n+4|0;do if((a|0)<1)d=0;else{f=e+16|0;if((c[f>>2]|0)>>>0<4){d=CD(a,b,d,e)|0;break}m=vH(a<<5)|0;d=0;while(1){if((d|0)==(a|0))break;g=c[b+(d<<2)>>2]|0;mM(g);h=m+(d<<5)|0;g=(c[g+16>>2]|0)+16|0;c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];c[h+16>>2]=c[g+16>>2];c[h+20>>2]=c[g+20>>2];c[h+24>>2]=c[g+24>>2];c[h+28>>2]=c[g+28>>2];d=d+1|0}if((c[f>>2]|0)==4){h=e+28|0;a:do if(c[h>>2]&2|0){f=e+24|0;c[f>>2]=uH(a<<2)|0;d=0;while(1){if((d|0)==(a|0))break a;g=xx(c[b+(d<<2)>>2]|0,96164)|0;if(g|0?(c[k>>2]=j,g=(N1(g,134313,k)|0)>0,i=c[j>>2]|0,g&(i|0)>-1):0)c[(c[f>>2]|0)+(d<<2)>>2]=i;d=d+1|0}}while(0);d=DD(a,m,e)|0;if(c[h>>2]&2)D_(c[e+24>>2]|0)}else d=0;D_(m)}while(0);l=n;return d|0}function CD(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0.0,I=0.0,J=0.0,K=0.0;G=l;l=l+144|0;B=G+136|0;A=G+64|0;F=G+48|0;v=G+40|0;u=G;t=G+120|0;x=G+104|0;C=G+96|0;D=c[f+20>>2]|0;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;c[x+12>>2]=0;a:do if((b|0)>=1){o=(D|0)==0;E=c[15686]|0;p=t+4|0;q=t+8|0;r=t+12|0;y=x+4|0;w=x+8|0;z=x+12|0;n=0;g=0;while(1){if((n|0)==(b|0))break;s=c[d+(n<<2)>>2]|0;mM(s);if(!o?(a[D+n>>0]|0)!=0:0){m=c[s+16>>2]|0;H=+h[m+16>>3];i=~~(H+(H>=0.0?.5:-.5));c[t>>2]=i;H=+h[m+24>>3];j=~~(H+(H>=0.0?.5:-.5));c[p>>2]=j;H=+h[m+32>>3];k=~~(H+(H>=0.0?.5:-.5));c[q>>2]=k;H=+h[m+40>>3];m=~~(H+(H>=0.0?.5:-.5));c[r>>2]=m;if(!g){c[x>>2]=c[t>>2];c[x+4>>2]=c[t+4>>2];c[x+8>>2]=c[t+8>>2];c[x+12>>2]=c[t+12>>2]}else{c[x>>2]=c[((c[x>>2]|0)>(i|0)?t:x)>>2];c[y>>2]=c[((c[y>>2]|0)>(j|0)?t:x)+4>>2];c[w>>2]=c[((c[w>>2]|0)<(k|0)?t:x)+8>>2];c[z>>2]=c[((c[z>>2]|0)<(m|0)?t:x)+12>>2]}g=g+1|0}if(0>2){m=ry(s)|0;s=c[s+16>>2]|0;K=+h[s+16>>3];J=+h[s+24>>3];I=+h[s+32>>3];H=+h[s+40>>3];c[u>>2]=m;h[u+8>>3]=K;h[u+16>>3]=J;h[u+24>>3]=I;h[u+32>>3]=H;g1(E,96231,u)|0}n=n+1|0}q=vH(b<<5)|0;g=0;while(1){if((g|0)==(b|0))break;u=q+(g<<5)|0;t=(c[(c[d+(g<<2)>>2]|0)+16>>2]|0)+16|0;c[u>>2]=c[t>>2];c[u+4>>2]=c[t+4>>2];c[u+8>>2]=c[t+8>>2];c[u+12>>2]=c[t+12>>2];c[u+16>>2]=c[t+16>>2];c[u+20>>2]=c[t+20>>2];c[u+24>>2]=c[t+24>>2];c[u+28>>2]=c[t+28>>2];g=g+1|0}o=f+8|0;p=GD(b,q,c[o>>2]|0)|0;if(0){c[v>>2]=p;g1(E,96259,v)|0}if((p|0)>=1){n=(D|0)!=0;if(n){i=((c[w>>2]|0)+(c[x>>2]|0)|0)/2|0;g=((c[z>>2]|0)+(c[y>>2]|0)|0)/2|0}else{i=0;g=0}c[C+4>>2]=g;c[C>>2]=i;m=uH(b<<4)|0;k=f+16|0;g=0;while(1){if((g|0)>=(b|0))break;i=c[d+(g<<2)>>2]|0;j=m+(g<<4)|0;c[m+(g<<4)+12>>2]=g;if((c[k>>2]|0)==3){x=(c[i+16>>2]|0)+16|0;y=c[o>>2]|0;z=ry(i)|0;c[A>>2]=c[x>>2];c[A+4>>2]=c[x+4>>2];c[A+8>>2]=c[x+8>>2];c[A+12>>2]=c[x+12>>2];c[A+16>>2]=c[x+16>>2];c[A+20>>2]=c[x+20>>2];c[A+24>>2]=c[x+24>>2];c[A+28>>2]=c[x+28>>2];c[B>>2]=c[C>>2];c[B+4>>2]=c[C+4>>2];HD(A,j,p,y,B,z)}else{c[B>>2]=c[C>>2];c[B+4>>2]=c[C+4>>2];ID(e,i,j,p,f,B)}g=g+1|0}j=uH(b<<2)|0;g=0;while(1){if((g|0)>=(b|0))break;c[j+(g<<2)>>2]=m+(g<<4);g=g+1|0}_0(j,b,4,87);k=vI()|0;g=uH(b<<3)|0;b:do if(n){i=0;while(1){if((i|0)>=(b|0)){i=0;break}if(a[D+i>>0]|0){e=c[j+(i<<2)>>2]|0;f=g+(c[e+12>>2]<<3)|0;c[B>>2]=c[C>>2];c[B+4>>2]=c[C+4>>2];KD(e,k,f,B)}i=i+1|0}while(1){if((i|0)>=(b|0))break b;if(!(a[D+i>>0]|0)){C=c[j+(i<<2)>>2]|0;LD(i,C,k,g+(c[C+12>>2]<<3)|0,p,c[o>>2]|0,q)}i=i+1|0}}else{i=0;while(1){if((i|0)>=(b|0))break b;D=c[j+(i<<2)>>2]|0;LD(i,D,k,g+(c[D+12>>2]<<3)|0,p,c[o>>2]|0,q);i=i+1|0}}while(0);D_(j);i=0;while(1){if((i|0)>=(b|0))break;D_(c[m+(i<<4)+4>>2]|0);i=i+1|0}D_(m);yI(k);D_(q);if(0>1){i=0;while(1){if((i|0)>=(b|0))break a;C=c[g+(i<<3)>>2]|0;D=c[g+(i<<3)+4>>2]|0;c[F>>2]=i;c[F+4>>2]=C;c[F+8>>2]=D;g1(E,96275,F)|0;i=i+1|0}}}else g=0}else g=0;while(0);l=G;return g|0}function DD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0.0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=l;l=l+16|0;g=z;x=uH(a<<3)|0;f=c[d+4>>2]|0;y=d+28|0;e=(f|0)>0;do if(!(c[y>>2]&1))if(e){k=1;w=(a+-1+f|0)/(f|0)|0;break}else{f=~~+N(+(+C(+(+(a|0)))));k=1;w=(a+-1+f|0)/(f|0)|0;break}else if(e){k=0;w=f;f=(a+-1+f|0)/(f|0)|0;break}else{f=~~+N(+(+C(+(+(a|0)))));k=0;w=f;f=(a+-1+f|0)/(f|0)|0;break}while(0);if(0){v=c[15686]|0;c[g>>2]=k|0?96170:96180;c[g+4>>2]=w;c[g+8>>2]=f;g1(v,96193,g)|0}t=uH((f<<3)+8|0)|0;u=uH((w<<3)+8|0)|0;v=uH(a*24|0)|0;j=d+8|0;e=0;g=v;while(1){if((e|0)>=(a|0))break;p=+h[b+(e<<5)+8>>3];o=+h[b+(e<<5)+24>>3];q=+((c[j>>2]|0)>>>0);h[g>>3]=+h[b+(e<<5)+16>>3]-+h[b+(e<<5)>>3]+q;h[g+8>>3]=o-p+q;c[g+16>>2]=e;e=e+1|0;g=g+24|0}s=uH(a<<2)|0;e=0;while(1){if((e|0)>=(a|0))break;c[s+(e<<2)>>2]=v+(e*24|0);e=e+1|0}e=c[d+24>>2]|0;if(!e){if(!(c[y>>2]&64))_0(s,a,4,89)}else{c[46285]=e;_0(s,a,4,88)}r=(k|0)==0;e=0;g=0;j=0;while(1){if((j|0)>=(a|0)){i=0.0;e=0;break}k=c[s+(j<<2)>>2]|0;d=t+(g<<3)|0;q=+h[d>>3];p=+h[k>>3];h[d>>3]=q>p?q:p;d=u+(e<<3)|0;p=+h[d>>3];q=+h[k+8>>3];h[d>>3]=p>q?p:q;if(r){e=e+1|0;d=(e|0)==(w|0);e=d?0:e;g=g+(d&1)|0}else{g=g+1|0;d=(g|0)==(f|0);e=e+(d&1)|0;g=d?0:g}j=j+1|0}while(1){if((e|0)>(f|0)){i=0.0;e=w;break}d=t+(e<<3)|0;q=+h[d>>3];h[d>>3]=i;i=q+i;e=e+1|0}while(1){if((e|0)<=0)break;d=e+-1|0;q=+h[u+(d<<3)>>3];h[u+(e<<3)>>3]=i;i=q+i;e=d}h[u>>3]=i;e=0;g=0;d=0;while(1){if((d|0)>=(a|0))break;k=c[(c[s+(d<<2)>>2]|0)+16>>2]|0;i=+h[b+(k<<5)>>3];m=-i;p=+h[b+(k<<5)+8>>3];q=-p;n=+h[b+(k<<5)+16>>3];o=+h[b+(k<<5)+24>>3];j=c[y>>2]|0;do if(!(j&4))if(!(j&8)){i=(m-n+ +h[t+(g<<3)>>3]+ +h[t+(g+1<<3)>>3])*.5;break}else{i=i-n+ +h[t+(g+1<<3)>>3];break}else i=+h[t+(g<<3)>>3];while(0);c[x+(k<<3)>>2]=~~i;do if(!(j&16))if(!(j&32)){i=(q-o+ +h[u+(e<<3)>>3]+ +h[u+(e+1<<3)>>3])*.5;break}else{i=+h[u+(e+1<<3)>>3];break}else i=p-o+ +h[u+(e<<3)>>3];while(0);c[x+(k<<3)+4>>2]=~~i;if(r){e=e+1|0;k=(e|0)==(w|0);e=k?0:e;g=g+(k&1)|0}else{g=g+1|0;k=(g|0)==(f|0);e=e+(k&1)|0;g=k?0:g}d=d+1|0}D_(v);D_(s);D_(t);D_(u);l=z;return x|0}function ED(a,b){a=a|0;b=b|0;var d=0;d=c[46285]|0;a=c[d+(c[(c[a>>2]|0)+16>>2]<<2)>>2]|0;b=c[d+(c[(c[b>>2]|0)+16>>2]<<2)>>2]|0;return ((a|0)>(b|0)?1:((a|0)<(b|0))<<31>>31)|0}function FD(a,b){a=a|0;b=b|0;var d=0.0,e=0.0;a=c[a>>2]|0;b=c[b>>2]|0;e=+h[a>>3]+ +h[a+8>>3];d=+h[b>>3]+ +h[b+8>>3];return (e<d?1:(e>d)<<31>>31)|0}function GD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,g=0.0,i=0.0,j=0.0,k=0,m=0,n=0.0,o=0.0,p=0,q=0,r=0,s=0;s=l;l=l+96|0;q=s+80|0;r=s+48|0;p=s+8|0;m=s;k=(a*100|0)+-1|0;e=+(d<<1|0);n=0.0;o=0.0;d=0;while(1){if((d|0)>=(a|0))break;j=+h[b+(d<<5)+16>>3]-+h[b+(d<<5)>>3]+e;i=+h[b+(d<<5)+24>>3]-+h[b+(d<<5)+8>>3]+e;n=n-j-i;o=o-i*j;d=d+1|0}i=+(k|0);j=n*n-i*4.0*o;if(!(j<0.0)){e=+C(+j);g=i*2.0;f=(e-n)/g;g=(-n-e)/g;d=~~f;d=(d|0)==0?1:d;if(0>2){m=c[15686]|0;E1(96418,27,1,m)|0;h[p>>3]=i;h[p+8>>3]=n;h[p+16>>3]=o;h[p+24>>3]=j;h[p+32>>3]=e;g1(m,96446,p)|0;c[r>>2]=d;h[r+8>>3]=f;c[r+16>>2]=~~g;h[r+24>>3]=g;g1(m,96472,r)|0;h[q>>3]=(f*i+n)*f+o;h[q+8>>3]=(g*i+n)*g+o;g1(m,96494,q)|0}}else{h[m>>3]=j;Pw(1,96391,m)|0;d=-1}l=s;return d|0}function HD(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0.0,w=0.0;u=l;l=l+32|0;t=u+16|0;s=u;p=+h[a>>3];q=+h[a+8>>3];n=+h[a+16>>3];o=+h[a+24>>3];r=vI()|0;j=c[f>>2]|0;a=j-e|0;k=c[f+4>>2]|0;i=k-e|0;j=e-~~(p+(p>=0.0?.5:-.5))+j+~~(n+(n>=0.0?.5:-.5))|0;k=e-~~(q+(q>=0.0?.5:-.5))+k+~~(o+(o>=0.0?.5:-.5))|0;if((a|0)>-1)f=(a|0)/(d|0)|0;else f=((a+1|0)/(d|0)|0)+-1|0;if((i|0)>-1)m=(i|0)/(d|0)|0;else m=((i+1|0)/(d|0)|0)+-1|0;if((j|0)>-1)j=(j|0)/(d|0)|0;else j=((j+1|0)/(d|0)|0)+-1|0;if((k|0)>-1)i=(k|0)/(d|0)|0;else i=((k+1|0)/(d|0)|0)+-1|0;while(1){if((f|0)>(j|0))break;else a=m;while(1){if((a|0)>(i|0))break;BI(r,f,a);a=a+1|0}f=f+1|0}k=b+4|0;c[k>>2]=FI(r)|0;j=EI(r)|0;m=b+8|0;c[m>>2]=j;w=+(e<<1|0);v=+(d|0);i=~~+N(+((n+w-p)/v));a=~~+N(+((o+w-q)/v));c[b>>2]=a+i;a:do if(0>2){f=c[15686]|0;c[s>>2]=g;c[s+4>>2]=j;c[s+8>>2]=i;c[s+12>>2]=a;g1(f,96350,s)|0;a=0;while(1){if((a|0)>=(c[m>>2]|0))break a;g=c[k>>2]|0;s=c[g+(a<<3)+4>>2]|0;c[t>>2]=c[g+(a<<3)>>2];c[t+4>>2]=s;g1(f,96377,t)|0;a=a+1|0}}while(0);yI(r);l=u;return}function ID(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0.0,R=0.0;P=l;l=l+128|0;F=P+112|0;E=P+104|0;O=P+16|0;M=P;H=P+64|0;I=P+56|0;z=P+40|0;A=P+96|0;y=P+88|0;v=P+24|0;w=P+80|0;x=P+72|0;K=c[f+8>>2]|0;G=c[f+12>>2]|0;C=(a|0)==0?b:a;L=vI()|0;J=b+16|0;B=c[J>>2]|0;t=+h[B+16>>3];D=(c[g>>2]|0)-~~(t+(t>=0.0?.5:-.5))|0;t=+h[B+24>>3];B=(c[g+4>>2]|0)-~~(t+(t>=0.0?.5:-.5))|0;a:do if((c[f+16>>2]|0)==1){v=vH((ay(b)|0)<<2)|0;a=0;g=Sy(b)|0;while(1){if(!g)break;x=g+16|0;c[v+(a<<2)>>2]=c[(c[x>>2]|0)+112>>2];c[(c[x>>2]|0)+112>>2]=0;a=a+1|0;g=Ty(b,g)|0}o=D-K|0;p=B-K|0;q=D+K|0;r=B+K|0;n=1;while(1){a=c[J>>2]|0;if((n|0)>(c[a+180>>2]|0))break;m=c[(c[a+184>>2]|0)+(n<<2)>>2]|0;i=c[m+16>>2]|0;t=+h[i+16>>3];a=~~(t+(t>=0.0?.5:-.5));t=+h[i+24>>3];g=~~(t+(t>=0.0?.5:-.5));t=+h[i+32>>3];f=~~(t+(t>=0.0?.5:-.5));t=+h[i+40>>3];i=~~(t+(t>=0.0?.5:-.5));b:do if((f|0)>(a|0)&(i|0)>(g|0)){a=o+a|0;j=p+g|0;f=q+f|0;k=r+i|0;if((a|0)>-1)g=(a|0)/(e|0)|0;else g=((a+1|0)/(e|0)|0)+-1|0;if((j|0)>-1)j=(j|0)/(e|0)|0;else j=((j+1|0)/(e|0)|0)+-1|0;if((f|0)>-1)i=(f|0)/(e|0)|0;else i=((f+1|0)/(e|0)|0)+-1|0;if((k|0)>-1)f=(k|0)/(e|0)|0;else f=((k+1|0)/(e|0)|0)+-1|0;while(1){if((g|0)>(i|0))break;else a=j;while(1){if((a|0)>(f|0))break;BI(L,g,a);a=a+1|0}g=g+1|0}a=Sy(m)|0;while(1){if(!a)break b;c[(c[a+16>>2]|0)+212>>2]=m;a=Ty(m,a)|0}}while(0);n=n+1|0}r=z+8|0;s=H+4|0;t=+(K|0);u=I+4|0;q=A+4|0;p=y+4|0;o=Sy(b)|0;while(1){if(!o)break;WL(z,o);R=+h[z>>3];Q=+h[r>>3];m=D+~~(R+(R>=0.0?.5:-.5))|0;c[H>>2]=m;n=B+~~(Q+(Q>=0.0?.5:-.5))|0;c[s>>2]=n;g=o+16|0;a=c[g>>2]|0;c:do if(!(c[a+212>>2]|0)){c[I>>2]=~~((+h[a+96>>3]+ +h[a+88>>3])*.5+t);c[u>>2]=~~(+h[a+80>>3]*.5+t);c[E>>2]=c[H>>2];c[E+4>>2]=c[H+4>>2];c[F>>2]=c[I>>2];c[F+4>>2]=c[I+4>>2];ND(A,E,F);a=c[A>>2]|0;f=c[q>>2]|0;c[E>>2]=c[H>>2];c[E+4>>2]=c[H+4>>2];c[F>>2]=c[I>>2];c[F+4>>2]=c[I+4>>2];OD(y,E,F);i=c[y>>2]|0;j=c[p>>2]|0;if((a|0)>-1)g=(a|0)/(e|0)|0;else g=((a+1|0)/(e|0)|0)+-1|0;if((f|0)>-1)k=(f|0)/(e|0)|0;else k=((f+1|0)/(e|0)|0)+-1|0;if((i|0)>-1)i=(i|0)/(e|0)|0;else i=((i+1|0)/(e|0)|0)+-1|0;if((j|0)>-1)f=(j|0)/(e|0)|0;else f=((j+1|0)/(e|0)|0)+-1|0;while(1){if((g|0)>(i|0))break;else a=k;while(1){if((a|0)>(f|0))break;BI(L,g,a);a=a+1|0}g=g+1|0}if((m|0)>-1)a=(m|0)/(e|0)|0;else a=((m+1|0)/(e|0)|0)+-1|0;c[H>>2]=a;if((n|0)>-1)a=(n|0)/(e|0)|0;else a=((n+1|0)/(e|0)|0)+-1|0;c[s>>2]=a;a=Ex(C,o)|0;while(1){if(!a)break c;c[F>>2]=c[H>>2];c[F+4>>2]=c[H+4>>2];PD(a,F,L,D,B,e,G);a=Gx(C,a)|0}}else{if((m|0)>-1)a=(m|0)/(e|0)|0;else a=((m+1|0)/(e|0)|0)+-1|0;c[H>>2]=a;if((n|0)>-1)a=(n|0)/(e|0)|0;else a=((n+1|0)/(e|0)|0)+-1|0;c[s>>2]=a;a=Ex(C,o)|0;while(1){if(!a)break c;if((c[(c[g>>2]|0)+212>>2]|0)!=(c[(c[(c[((c[a>>2]&3|0)==2?a:a+-48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0)){c[F>>2]=c[H>>2];c[F+4>>2]=c[H+4>>2];PD(a,F,L,D,B,e,G)}a=Gx(C,a)|0}}while(0);o=Ty(b,o)|0}a=0;g=Sy(b)|0;while(1){if(!g)break;c[(c[g+16>>2]|0)+112>>2]=c[v+(a<<2)>>2];a=a+1|0;g=Ty(b,g)|0}D_(v)}else{r=v+8|0;s=H+4|0;t=+(K|0);u=I+4|0;q=w+4|0;p=x+4|0;o=Sy(b)|0;while(1){if(!o)break a;WL(v,o);Q=+h[v>>3];R=+h[r>>3];m=D+~~(Q+(Q>=0.0?.5:-.5))|0;c[H>>2]=m;n=B+~~(R+(R>=0.0?.5:-.5))|0;c[s>>2]=n;a=c[o+16>>2]|0;c[I>>2]=~~((+h[a+96>>3]+ +h[a+88>>3])*.5+t);c[u>>2]=~~(+h[a+80>>3]*.5+t);c[E>>2]=c[H>>2];c[E+4>>2]=c[H+4>>2];c[F>>2]=c[I>>2];c[F+4>>2]=c[I+4>>2];ND(w,E,F);a=c[w>>2]|0;f=c[q>>2]|0;c[E>>2]=c[H>>2];c[E+4>>2]=c[H+4>>2];c[F>>2]=c[I>>2];c[F+4>>2]=c[I+4>>2];OD(x,E,F);i=c[x>>2]|0;j=c[p>>2]|0;if((a|0)>-1)g=(a|0)/(e|0)|0;else g=((a+1|0)/(e|0)|0)+-1|0;if((f|0)>-1)k=(f|0)/(e|0)|0;else k=((f+1|0)/(e|0)|0)+-1|0;if((i|0)>-1)i=(i|0)/(e|0)|0;else i=((i+1|0)/(e|0)|0)+-1|0;if((j|0)>-1)f=(j|0)/(e|0)|0;else f=((j+1|0)/(e|0)|0)+-1|0;while(1){if((g|0)>(i|0))break;else a=k;while(1){if((a|0)>(f|0))break;BI(L,g,a);a=a+1|0}g=g+1|0}if((m|0)>-1)a=(m|0)/(e|0)|0;else a=((m+1|0)/(e|0)|0)+-1|0;c[H>>2]=a;if((n|0)>-1)a=(n|0)/(e|0)|0;else a=((n+1|0)/(e|0)|0)+-1|0;c[s>>2]=a;a=Ex(C,o)|0;while(1){if(!a)break;c[F>>2]=c[H>>2];c[F+4>>2]=c[H+4>>2];PD(a,F,L,D,B,e,G);a=Gx(C,a)|0}o=Ty(b,o)|0}}while(0);i=d+4|0;c[i>>2]=FI(L)|0;j=d+8|0;c[j>>2]=EI(L)|0;g=c[J>>2]|0;Q=+(K<<1|0);R=+(e|0);a=~~+N(+((+h[g+32>>3]+Q-+h[g+16>>3])/R));g=~~+N(+((+h[g+40>>3]+Q-+h[g+24>>3])/R));c[d>>2]=g+a;d:do if(0>2){f=c[15686]|0;d=ry(b)|0;b=c[j>>2]|0;c[M>>2]=d;c[M+4>>2]=b;c[M+8>>2]=a;c[M+12>>2]=g;g1(f,96350,M)|0;a=0;while(1){if((a|0)>=(c[j>>2]|0))break d;b=c[i>>2]|0;M=c[b+(a<<3)+4>>2]|0;c[O>>2]=c[b+(a<<3)>>2];c[O+4>>2]=M;g1(f,96377,O)|0;a=a+1|0}}while(0);yI(L);l=P;return}function JD(a,b){a=a|0;b=b|0;return (c[c[b>>2]>>2]|0)-(c[c[a>>2]>>2]|0)|0}function KD(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;h=j+16|0;i=j;k=c[a+4>>2]|0;g=c[a+8>>2]|0;c[d>>2]=0-(c[e>>2]|0);f=d+4|0;c[f>>2]=0-(c[e+4>>2]|0);a=0;e=k;while(1){if((a|0)>=(g|0))break;c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];zI(b,h);a=a+1|0;e=e+8|0}if(0>1){k=c[15686]|0;b=c[d>>2]|0;d=c[f>>2]|0;c[i>>2]=g;c[i+4>>2]=b;c[i+8>>2]=d;g1(k,96324,i)|0}l=j;return}function LD(a,b,d,e,f,g,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0;k=c[b+12>>2]|0;l=+h[i+(k<<5)>>3];m=+h[i+(k<<5)+8>>3];n=+h[i+(k<<5)+16>>3];o=+h[i+(k<<5)+24>>3];if(!((a|0)==0?(q=+(g<<1|0),p=+(f|0),(MD((~~+N(+((q-l+n)/p))|0)/-2|0,(~~+N(+((q-m+o)/p))|0)/-2|0,b,d,e,f,i)|0)!=0):0))j=3;a:do if((j|0)==3?(MD(0,0,b,d,e,f,i)|0)==0:0)if((~~+N(+(n-l))|0)<(~~+N(+(o-m))|0)){k=1;while(1){j=0-k|0;a=0;while(1){if((a|0)<=(j|0)){g=j;break}if(MD(j,a,b,d,e,f,i)|0)break a;a=a+-1|0}while(1){if((g|0)>=(k|0))break;if(MD(g,a,b,d,e,f,i)|0)break a;g=g+1|0}while(1){if((a|0)>=(k|0))break;if(MD(g,a,b,d,e,f,i)|0)break a;a=a+1|0}while(1){if((g|0)<=(j|0))break;if(MD(g,a,b,d,e,f,i)|0)break a;g=g+-1|0}while(1){if((a|0)<=0)break;if(!(MD(g,a,b,d,e,f,i)|0))a=a+-1|0;else break a}k=k+1|0}}else{k=1;while(1){j=0-k|0;a=0;while(1){if((a|0)>=(k|0)){g=j;break}if(MD(a,j,b,d,e,f,i)|0)break a;a=a+1|0}while(1){if((g|0)>=(k|0))break;if(MD(a,g,b,d,e,f,i)|0)break a;g=g+1|0}while(1){if((a|0)<=(j|0))break;if(MD(a,g,b,d,e,f,i)|0)break a;a=a+-1|0}while(1){if((g|0)<=(j|0))break;if(MD(a,g,b,d,e,f,i)|0)break a;g=g+-1|0}while(1){if((a|0)>=0)break;if(!(MD(a,g,b,d,e,f,i)|0))a=a+1|0;else break a}k=k+1|0}}while(0);return}function MD(a,b,d,e,f,g,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0;t=l;l=l+48|0;r=t+32|0;s=t+8|0;q=t;m=d+4|0;o=c[d+8>>2]|0;p=q+4|0;j=c[m>>2]|0;k=0;while(1){if((k|0)>=(o|0)){n=5;break}v=j;u=c[v+4>>2]|0;c[q>>2]=(c[v>>2]|0)+a;c[p>>2]=u+b;c[r>>2]=c[q>>2];c[r+4>>2]=c[q+4>>2];if(CI(e,r)|0){j=0;break}j=j+8|0;k=k+1|0}if((n|0)==5){d=c[d+12>>2]|0;x=+h[i+(d<<5)>>3];w=+h[i+(d<<5)+8>>3];c[f>>2]=(O(g,a)|0)-~~(x+(x>=0.0?.5:-.5));d=f+4|0;c[d>>2]=(O(g,b)|0)-~~(w+(w>=0.0?.5:-.5));j=c[m>>2]|0;k=0;while(1){if((k|0)>=(o|0))break;u=j;v=c[u+4>>2]|0;c[q>>2]=(c[u>>2]|0)+a;c[p>>2]=v+b;c[r>>2]=c[q>>2];c[r+4>>2]=c[q+4>>2];zI(e,r);j=j+8|0;k=k+1|0}if(0>1){j=c[15686]|0;u=c[f>>2]|0;v=c[d>>2]|0;c[s>>2]=o;c[s+4>>2]=a;c[s+8>>2]=b;c[s+12>>2]=u;c[s+16>>2]=v;g1(j,96290,s)|0;j=1}else j=1}l=t;return j|0}function ND(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(c[b+4>>2]|0)-(c[d+4>>2]|0)|0;c[a>>2]=(c[b>>2]|0)-(c[d>>2]|0);c[a+4>>2]=e;return}function OD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(c[d+4>>2]|0)+(c[b+4>>2]|0)|0;c[a>>2]=(c[d>>2]|0)+(c[b>>2]|0);c[a+4>>2]=e;return}function PD(a,b,d,e,f,g,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0.0,k=0.0,m=0,n=0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+112|0;x=A+96|0;w=A+80|0;r=A+48|0;s=A+32|0;y=A+16|0;z=A;n=A+64|0;h[y>>3]=+(c[b>>2]|0);t=y+8|0;h[t>>3]=+(c[b+4>>2]|0);a:do if((i|0)!=0?(u=a+16|0,m=c[(c[u>>2]|0)+8>>2]|0,(m|0)!=0):0){q=+(e|0);p=+(f|0);o=1.0/+(g|0);n=z+8|0;i=0;while(1){if((i|0)>=(c[m+4>>2]|0))break a;f=c[m>>2]|0;a=c[f+(i*48|0)>>2]|0;b=c[f+(i*48|0)+4>>2]|0;g=c[f+(i*48|0)+8>>2]|0;e=c[f+(i*48|0)+12>>2]|0;m=f+(i*48|0)+16|0;c[r>>2]=c[m>>2];c[r+4>>2]=c[m+4>>2];c[r+8>>2]=c[m+8>>2];c[r+12>>2]=c[m+12>>2];f=f+(i*48|0)+32|0;c[s>>2]=c[f>>2];c[s+4>>2]=c[f+4>>2];c[s+8>>2]=c[f+8>>2];c[s+12>>2]=c[f+12>>2];if(!g){c[y>>2]=c[a>>2];c[y+4>>2]=c[a+4>>2];c[y+8>>2]=c[a+8>>2];c[y+12>>2]=c[a+12>>2];m=a+16|0;c[z>>2]=c[m>>2];c[z+4>>2]=c[m+4>>2];c[z+8>>2]=c[m+8>>2];c[z+12>>2]=c[m+12>>2];m=2}else{c[y>>2]=c[r>>2];c[y+4>>2]=c[r+4>>2];c[y+8>>2]=c[r+8>>2];c[y+12>>2]=c[r+12>>2];c[z>>2]=c[a>>2];c[z+4>>2]=c[a+4>>2];c[z+8>>2]=c[a+8>>2];c[z+12>>2]=c[a+12>>2];m=1}j=+h[y>>3]+q;h[y>>3]=j;k=+h[t>>3]+p;h[t>>3]=k;if(!(j>=0.0))j=(j+1.0)*o+-1.0;else j=j*o;h[y>>3]=j;if(!(k>=0.0))j=(k+1.0)*o+-1.0;else j=k*o;h[t>>3]=j;j=+h[z>>3]+q;h[z>>3]=j;k=+h[n>>3]+p;h[n>>3]=k;if(!(j>=0.0))j=(j+1.0)*o+-1.0;else j=j*o;h[z>>3]=j;if(!(k>=0.0))j=(k+1.0)*o+-1.0;else j=k*o;h[n>>3]=j;c[w>>2]=c[y>>2];c[w+4>>2]=c[y+4>>2];c[w+8>>2]=c[y+8>>2];c[w+12>>2]=c[y+12>>2];c[x>>2]=c[z>>2];c[x+4>>2]=c[z+4>>2];c[x+8>>2]=c[z+8>>2];c[x+12>>2]=c[z+12>>2];AD(w,x,d);while(1){if((m|0)>=(b|0))break;c[y>>2]=c[z>>2];c[y+4>>2]=c[z+4>>2];c[y+8>>2]=c[z+8>>2];c[y+12>>2]=c[z+12>>2];g=a+(m<<4)|0;c[z>>2]=c[g>>2];c[z+4>>2]=c[g+4>>2];c[z+8>>2]=c[g+8>>2];c[z+12>>2]=c[g+12>>2];j=+h[z>>3]+q;h[z>>3]=j;k=+h[n>>3]+p;h[n>>3]=k;if(!(j>=0.0))j=(j+1.0)*o+-1.0;else j=j*o;h[z>>3]=j;if(!(k>=0.0))j=(k+1.0)*o+-1.0;else j=k*o;h[n>>3]=j;c[w>>2]=c[y>>2];c[w+4>>2]=c[y+4>>2];c[w+8>>2]=c[y+8>>2];c[w+12>>2]=c[y+12>>2];c[x>>2]=c[z>>2];c[x+4>>2]=c[z+4>>2];c[x+8>>2]=c[z+8>>2];c[x+12>>2]=c[z+12>>2];AD(w,x,d);m=m+1|0}if(e|0){c[y>>2]=c[z>>2];c[y+4>>2]=c[z+4>>2];c[y+8>>2]=c[z+8>>2];c[y+12>>2]=c[z+12>>2];c[z>>2]=c[s>>2];c[z+4>>2]=c[s+4>>2];c[z+8>>2]=c[s+8>>2];c[z+12>>2]=c[s+12>>2];j=+h[z>>3]+q;h[z>>3]=j;k=+h[n>>3]+p;h[n>>3]=k;if(!(j>=0.0))j=(j+1.0)*o+-1.0;else j=j*o;h[z>>3]=j;if(!(k>=0.0))j=(k+1.0)*o+-1.0;else j=k*o;h[n>>3]=j;c[w>>2]=c[y>>2];c[w+4>>2]=c[y+4>>2];c[w+8>>2]=c[y+8>>2];c[w+12>>2]=c[y+12>>2];c[x>>2]=c[z>>2];c[x+4>>2]=c[z+4>>2];c[x+8>>2]=c[z+8>>2];c[x+12>>2]=c[z+12>>2];AD(w,x,d)}i=i+1|0;m=c[(c[u>>2]|0)+8>>2]|0}}else v=4;while(0);if((v|0)==4){WL(n,c[((c[a>>2]&3|0)==2?a:a+-48|0)+40>>2]|0);c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];c[z+8>>2]=c[n+8>>2];c[z+12>>2]=c[n+12>>2];j=+h[z>>3]+ +(e|0);h[z>>3]=j;m=z+8|0;k=+h[m>>3]+ +(f|0);h[m>>3]=k;if(!(j>=0.0))j=(j+1.0)/+(g|0)+-1.0;else j=j/+(g|0);h[z>>3]=j;if(!(k>=0.0))j=(k+1.0)/+(g|0)+-1.0;else j=k/+(g|0);h[m>>3]=j;c[w>>2]=c[y>>2];c[w+4>>2]=c[y+4>>2];c[w+8>>2]=c[y+8>>2];c[w+12>>2]=c[y+12>>2];c[x>>2]=c[z>>2];c[x+4>>2]=c[z+4>>2];c[x+8>>2]=c[z+8>>2];c[x+12>>2]=c[z+12>>2];AD(w,x,d)}l=A;return}function QD(a,b,d){a=a|0;b=b|0;d=d|0;a:do if((a|0)<1)a=0;else switch(c[d+16>>2]|0){case 4:{a=DD(a,b,d)|0;break a}case 3:{a=RD(a,b,d)|0;break a}default:{a=0;break a}}while(0);return a|0}function RD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+80|0;g=n+64|0;f=n+24|0;m=n+8|0;e=n;h=n+56|0;j=d+8|0;k=GD(a,b,c[j>>2]|0)|0;if(0){i=c[15686]|0;c[e>>2]=k;g1(i,96259,e)|0}a:do if((k|0)>=1){c[h+4>>2]=0;c[h>>2]=0;i=uH(a<<4)|0;d=0;while(1){if((d|0)>=(a|0))break;c[i+(d<<4)+12>>2]=d;o=b+(d<<5)|0;e=c[j>>2]|0;c[f>>2]=c[o>>2];c[f+4>>2]=c[o+4>>2];c[f+8>>2]=c[o+8>>2];c[f+12>>2]=c[o+12>>2];c[f+16>>2]=c[o+16>>2];c[f+20>>2]=c[o+20>>2];c[f+24>>2]=c[o+24>>2];c[f+28>>2]=c[o+28>>2];c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];HD(f,i+(d<<4)|0,k,e,g,191979);d=d+1|0}f=uH(a<<2)|0;d=0;while(1){if((d|0)>=(a|0))break;c[f+(d<<2)>>2]=i+(d<<4);d=d+1|0}_0(f,a,4,87);g=vI()|0;d=uH(a<<3)|0;e=0;while(1){if((e|0)>=(a|0))break;o=c[f+(e<<2)>>2]|0;LD(e,o,g,d+(c[o+12>>2]<<3)|0,k,c[j>>2]|0,b);e=e+1|0}D_(f);e=0;while(1){if((e|0)>=(a|0))break;D_(c[i+(e<<4)+4>>2]|0);e=e+1|0}D_(i);yI(g);if(0>1){f=c[15686]|0;e=0;while(1){if((e|0)>=(a|0))break a;b=c[d+(e<<3)>>2]|0;o=c[d+(e<<3)+4>>2]|0;c[m>>2]=e;c[m+4>>2]=b;c[m+8>>2]=o;g1(f,96275,m)|0;e=e+1|0}}}else d=0;while(0);l=n;return d|0}function SD(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,l=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0;a:do if((a|0)<1)f=0-a|0;else{s=(e|0)==0;q=(f|0)==0;j=0;while(1){if((j|0)==(a|0)){f=0;break a}r=c[b+(j<<2)>>2]|0;g=s?r:e;k=c[d+(j<<3)>>2]|0;l=c[d+(j<<3)+4>>2]|0;m=+(k|0);n=m*.013888888888888888;o=+(l|0);p=o*.013888888888888888;i=Sy(r)|0;while(1){if(!i)break;f=c[i+16>>2]|0;t=c[f+132>>2]|0;h[t>>3]=+h[t>>3]+n;t=t+8|0;h[t>>3]=+h[t>>3]+p;t=f+16|0;h[t>>3]=+h[t>>3]+m;t=f+24|0;h[t>>3]=+h[t>>3]+o;f=c[f+108>>2]|0;if(f|0){t=f+56|0;h[t>>3]=+h[t>>3]+m;t=f+64|0;h[t>>3]=+h[t>>3]+o}b:do if(!q){f=Ex(g,i)|0;while(1){if(!f)break b;TD(f,k,l);f=Gx(g,f)|0}}while(0);i=Ty(r,i)|0}UD(r,k,l);j=j+1|0}}while(0);return f|0}function TD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0.0,k=0,l=0.0,m=0,n=0;e=c[a+16>>2]|0;a=c[e+96>>2]|0;if(a|0){m=a+56|0;h[m>>3]=+h[m>>3]+ +(b|0);m=a+64|0;h[m>>3]=+h[m>>3]+ +(d|0)}a=c[e+108>>2]|0;if(a|0){m=a+56|0;h[m>>3]=+h[m>>3]+ +(b|0);m=a+64|0;h[m>>3]=+h[m>>3]+ +(d|0)}a=c[e+100>>2]|0;if(a|0){m=a+56|0;h[m>>3]=+h[m>>3]+ +(b|0);m=a+64|0;h[m>>3]=+h[m>>3]+ +(d|0)}a=c[e+104>>2]|0;if(a|0){m=a+56|0;h[m>>3]=+h[m>>3]+ +(b|0);m=a+64|0;h[m>>3]=+h[m>>3]+ +(d|0)}m=c[e+8>>2]|0;a:do if(m|0){l=+(b|0);j=+(d|0);b=c[m+4>>2]|0;a=0;while(1){if((a|0)>=(b|0))break a;k=c[m>>2]|0;d=c[k+(a*48|0)>>2]|0;f=c[k+(a*48|0)+4>>2]|0;g=c[k+(a*48|0)+8>>2]|0;i=c[k+(a*48|0)+12>>2]|0;e=0;while(1){if((e|0)>=(f|0))break;n=d+(e<<4)|0;h[n>>3]=+h[n>>3]+l;n=d+(e<<4)+8|0;h[n>>3]=+h[n>>3]+j;e=e+1|0}if(g|0){n=k+(a*48|0)+16|0;h[n>>3]=+h[n>>3]+l;n=k+(a*48|0)+24|0;h[n>>3]=+h[n>>3]+j}if(i|0){n=k+(a*48|0)+32|0;h[n>>3]=+h[n>>3]+l;n=k+(a*48|0)+40|0;h[n>>3]=+h[n>>3]+j}a=a+1|0}}while(0);return}function UD(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0.0,j=0,k=0.0,l=0.0,m=0,n=0.0,o=0;j=b+16|0;b=c[j>>2]|0;o=b+16|0;m=b+24|0;f=b+32|0;b=b+40|0;g=+(d|0);l=+h[f>>3]+g;i=+(e|0);n=+h[m>>3]+i;k=+h[b>>3]+i;h[o>>3]=+h[o>>3]+g;h[m>>3]=n;h[f>>3]=l;h[b>>3]=k;b=c[j>>2]|0;f=c[b+12>>2]|0;if((f|0)!=0?(a[f+81>>0]|0)!=0:0){o=f+56|0;h[o>>3]=+h[o>>3]+g;f=f+64|0;h[f>>3]=+h[f>>3]+i;f=1}else f=1;while(1){if((f|0)>(c[b+180>>2]|0))break;UD(c[(c[b+184>>2]|0)+(f<<2)>>2]|0,d,e);f=f+1|0;b=c[j>>2]|0}return}function VD(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=BD(a,b,d,e)|0;if(!f)a=1;else{a=SD(a,b,f,d,c[e+12>>2]|0)|0;D_(f)}return a|0}function WD(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;o=p;n=VD(a,b,d,e)|0;if(!n){mM(d);m=(c[d+16>>2]|0)+16|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];c[o+16>>2]=c[m+16>>2];c[o+20>>2]=c[m+20>>2];c[o+24>>2]=c[m+24>>2];c[o+28>>2]=c[m+28>>2];f=o+8|0;g=o+16|0;i=o+24|0;e=0;while(1){if((e|0)>=(a|0))break;k=c[(c[b+(e<<2)>>2]|0)+16>>2]|0;j=c[k+180>>2]|0;k=k+184|0;d=1;while(1){if((d|0)>(j|0))break;r=(c[(c[(c[k>>2]|0)+(d<<2)>>2]|0)+16>>2]|0)+16|0;h[o>>3]=+h[(+h[o>>3]<+h[r>>3]?o:r)>>3];r=c[(c[(c[k>>2]|0)+(d<<2)>>2]|0)+16>>2]|0;q=r+16|0;h[f>>3]=+h[(+h[f>>3]<+h[r+24>>3]?o:q)+8>>3];h[g>>3]=+h[(+h[g>>3]>+h[r+32>>3]?o:q)+16>>3];h[i>>3]=+h[(+h[i>>3]>+h[r+40>>3]?o:q)+24>>3];d=d+1|0}e=e+1|0}c[m>>2]=c[o>>2];c[m+4>>2]=c[o+4>>2];c[m+8>>2]=c[o+8>>2];c[m+12>>2]=c[o+12>>2];c[m+16>>2]=c[o+16>>2];c[m+20>>2]=c[o+20>>2];c[m+24>>2]=c[o+24>>2];c[m+28>>2]=c[o+28>>2]}l=p;return n|0}function XD(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=l;l=l+16|0;f=g;if(!e)qa(96508,96514,1400,96521);d=YD(a,d,d)|0;c[e+8>>2]=d;if(0){h=c[15686]|0;c[f>>2]=d;g1(h,96533,f)|0}c[e+12>>2]=0;c[e+20>>2]=0;ZD(a,b,e)|0;l=g;return c[e+16>>2]|0}function YD(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+16|0;h=i;f=i+4|0;g=xx(b,96663)|0;a:do if(g){c[h>>2]=f;h=(N1(g,134313,h)|0)==1;b=c[f>>2]|0;if(h&(b|0)>-1)d=b;else{switch(a[g>>0]|0){case 84:case 116:break;default:break a}d=e}}while(0);l=i;return d|0}function ZD(a,b,c){a=a|0;b=b|0;c=c|0;return _D(xx(a,96546)|0,b,c)|0}function _D(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0;u=l;l=l+64|0;r=u+40|0;q=u+32|0;t=u+24|0;s=u+16|0;m=u+8|0;k=u;i=u+48|0;j=u+44|0;if(!e)qa(96508,96514,1292,96555);o=e+28|0;c[o>>2]=0;p=e+16|0;c[p>>2]=d;n=e+4|0;c[n>>2]=0;c[e+24>>2]=0;a:do if(b|0?(f=a[b>>0]|0,f<<24>>24):0)switch(f<<24>>24|0){case 97:if(!(z$(b,96573,5)|0)){c[p>>2]=4;m=$D(b+5|0,e)|0;c[k>>2]=j;m=(N1(m,134313,k)|0)>0;d=c[j>>2]|0;if(!(m&(d|0)>0))break a;c[n>>2]=d;break a}else{if(z$(b,96579,6)|0)break a;c[p>>2]=5;c[m>>2]=i;m=(N1(b+5|0,96586,m)|0)>0;v=+g[i>>2];g[e>>2]=m&v>0.0?v:1.0;break a}case 99:{if(f<<24>>24!=99)break a;if(b$(b,104980)|0)break a;c[p>>2]=1;break a}case 103:{if(f<<24>>24!=103)break a;if(b$(b,108412)|0)break a;c[p>>2]=3;break a}case 110:{if(f<<24>>24!=110)break a;if(b$(b,108399)|0)break a;c[p>>2]=2;break a}default:break a}while(0);if(0){d=c[15686]|0;E1(96589,11,1,d)|0;c[s>>2]=aE(c[p>>2]|0)|0;g1(d,96601,s)|0;if((c[p>>2]|0)==5){h[t>>3]=+g[e>>2];g1(d,96614,t)|0}c[q>>2]=c[n>>2];g1(d,96627,q)|0;c[r>>2]=c[o>>2];g1(d,96640,r)|0}l=u;return c[p>>2]|0}function $D(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;a:do if((a[b>>0]|0)==95){f=d+28|0;e=1;while(1){b=b+1|0;b:while(1){if(!e)break a;d=a[b>>0]|0;if(!(d<<24>>24))break a;switch(d<<24>>24|0){case 99:{g=10;break b}case 105:{g=9;break b}case 117:{g=11;break b}case 116:{g=12;break b}case 98:{d=32;break b}case 108:{g=7;break b}case 114:{g=8;break b}default:e=0}}if((g|0)==7){g=0;d=4}else if((g|0)==8){g=0;d=8}else if((g|0)==9){g=0;d=64}else if((g|0)==10){g=0;d=1}else if((g|0)==11){g=0;d=2}else if((g|0)==12){g=0;d=16}c[f>>2]=c[f>>2]|d}}while(0);return b|0}function aE(a){a=a|0;switch(a|0){case 1:{a=104980;break}case 2:{a=108399;break}case 3:{a=108412;break}case 4:{a=96573;break}case 5:{a=96579;break}default:a=96653}return a|0}function bE(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+96|0;k=n;m=n+80|0;do if(a){if(!e){e=E_(1,20)|0;c[e+4>>2]=d>>>0>80?d:80}d=c[e>>2]|0;j=c[e+4>>2]|0;if(!d){h=100;d=a;i=E_(100,j)|0}else{h=d+100|0;i=F_(c[e+8>>2]|0,O(h,j)|0)|0;H3(i+(O(j,d)|0)|0,0,j*100|0)|0;d=a}while(1){d=cE(k,d,b,m)|0;if(!d)break;a=c[e>>2]|0;f=h<<1;g=O(h,j)|0;if((a|0)==(h|0)){i=F_(i,O(f,j)|0)|0;H3(i+g|0,0,g|0)|0;a=c[e>>2]|0}else f=h;a=i+(O(a,j)|0)|0;g=k;h=a+80|0;do{c[a>>2]=c[g>>2];a=a+4|0;g=g+4|0}while((a|0)<(h|0));c[e>>2]=(c[e>>2]|0)+1;h=f}if(c[m>>2]|0){m=e+16|0;c[m>>2]=c[m>>2]|1}d=c[e>>2]|0;if(!d){D_(i);D_(e);e=0;break}else{c[e+8>>2]=F_(i,O(d,j)|0)|0;break}}while(0);l=n;return e|0}function cE(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+80|0;h=j+64|0;i=j;c[f>>2]=0;do{g=a[d>>0]|0;d=d+1|0}while((B$(g)|0)!=0);a:do switch(g|0){case 69:{c[b>>2]=0;d=dE(d,b+8|0)|0;if(!d){c[f>>2]=1;d=0;break a}if(e)c[b+72>>2]=c[e>>2];break}case 101:{c[b>>2]=1;d=dE(d,b+8|0)|0;if(!d){c[f>>2]=1;d=0;break a}if(e)c[b+72>>2]=c[e>>2];break}case 80:{c[b>>2]=2;d=eE(d,b+8|0)|0;if(!d){c[f>>2]=1;d=0;break a}if(e)c[b+72>>2]=c[e+4>>2];break}case 112:{c[b>>2]=3;d=eE(d,b+8|0)|0;if(!d){c[f>>2]=1;d=0;break a}if(e)c[b+72>>2]=c[e+4>>2];break}case 98:{c[b>>2]=4;d=eE(d,b+8|0)|0;if(!d){c[f>>2]=1;d=0;break a}if(e)c[b+72>>2]=c[e+8>>2];break}case 66:{c[b>>2]=5;d=eE(d,b+8|0)|0;if(!d){c[f>>2]=1;d=0;break a}if(e)c[b+72>>2]=c[e+8>>2];break}case 99:{d=fE(d,h)|0;if(!d){c[f>>2]=1;d=0;break a}g=gE(c[h>>2]|0,i)|0;c[h>>2]=g;if(!g){c[f>>2]=1;d=0;break a}if(!(c[i>>2]|0)){c[b>>2]=9;c[b+8>>2]=c[i+8>>2];if(!e)break a;c[b+72>>2]=c[e+24>>2];break a}else{c[b>>2]=14;f=b+8|0;g=i;h=f+64|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(h|0));if(!e)break a;c[b+72>>2]=c[e+40>>2];break a}}case 67:{d=fE(d,h)|0;if(!d){c[f>>2]=1;d=0;break a}g=gE(c[h>>2]|0,i)|0;c[h>>2]=g;if(!g){c[f>>2]=1;d=0;break a}if(!(c[i>>2]|0)){c[b>>2]=8;c[b+8>>2]=c[i+8>>2];if(!e)break a;c[b+72>>2]=c[e+20>>2];break a}else{c[b>>2]=13;f=b+8|0;g=i;h=f+64|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(h|0));if(!e)break a;c[b+72>>2]=c[e+40>>2];break a}}case 76:{c[b>>2]=6;d=eE(d,b+8|0)|0;if(!d){c[f>>2]=1;d=0;break a}if(e)c[b+72>>2]=c[e+12>>2];break}case 84:{c[b>>2]=7;d=hE(d,b+8|0)|0;if(!d){c[f>>2]=1;d=0;break a}d=hE(d,b+16|0)|0;if(!d){c[f>>2]=1;d=0;break a}d=iE(d,b+24|0)|0;if(!d){c[f>>2]=1;d=0;break a}d=hE(d,b+32|0)|0;if(!d){c[f>>2]=1;d=0;break a}d=fE(d,b+40|0)|0;if(!d){c[f>>2]=1;d=0;break a}if(e)c[b+72>>2]=c[e+16>>2];break}case 70:{c[b>>2]=10;d=hE(d,b+8|0)|0;if(!d){c[f>>2]=1;d=0;break a}d=fE(d,b+16|0)|0;if(!d){c[f>>2]=1;d=0;break a}if(e)c[b+72>>2]=c[e+28>>2];break}case 83:{c[b>>2]=11;d=fE(d,b+8|0)|0;if(!d){c[f>>2]=1;d=0;break a}if(e)c[b+72>>2]=c[e+32>>2];break}case 73:{c[b>>2]=12;d=dE(d,b+8|0)|0;if(!d){c[f>>2]=1;d=0;break a}d=fE(d,b+40|0)|0;if(!d){c[f>>2]=1;d=0;break a}if(e)c[b+72>>2]=c[e+36>>2];break}case 116:{c[b>>2]=15;d=jE(d,b+8|0)|0;if(!d){c[f>>2]=1;d=0;break a}if(e)c[b+72>>2]=c[e+44>>2];break}case 0:{d=0;break}default:{c[f>>2]=1;d=0}}while(0);l=j;return d|0}function dE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0;i=l;l=l+16|0;e=i;h[b>>3]=+c2(a,e);f=c[e>>2]|0;if(((f|0)!=(a|0)?(h[b+8>>3]=+c2(f,e),g=c[e>>2]|0,(f|0)!=(g|0)):0)?(h[b+16>>3]=+c2(g,e),d=c[e>>2]|0,(g|0)!=(d|0)):0){h[b+24>>3]=+c2(d,e);a=c[e>>2]|0;a=(d|0)==(a|0)?0:a}else a=0;l=i;return a|0}function eE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0;k=l;l=l+16|0;j=k+4|0;g=k;a=kE(a,j)|0;do if(a){d=c[j>>2]|0;i=E_(d,24)|0;c[b>>2]=d;e=i;f=0;while(1){if((f|0)>=(d|0)){d=9;break}h[e>>3]=+c2(a,g);d=c[g>>2]|0;if((a|0)==(d|0)){d=5;break}h[e+8>>3]=+c2(d,g);a=c[g>>2]|0;if((d|0)==(a|0)){d=7;break}h[e+16>>3]=0.0;e=e+24|0;d=c[b>>2]|0;f=f+1|0}if((d|0)==5){c[j>>2]=f;D_(i);a=0;break}else if((d|0)==7){c[j>>2]=f;D_(i);a=0;break}else if((d|0)==9){c[j>>2]=f;c[b+4>>2]=i;break}}else a=0;while(0);l=k;return a|0}function fE(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;i=j;b=kE(b,i)|0;f=c[i>>2]|0;do if(!((b|0)==0|(f|0)<1)){while(1){h=a[b>>0]|0;e=h<<24>>24==0;if(e^h<<24>>24!=45)b=b+1|0;else break}if(!e){h=E_(f+1|0,1)|0;g=h;e=f;while(1){b=b+1|0;if((e|0)<=0){e=9;break}e=a[b>>0]|0;if(!(e<<24>>24)){e=8;break}a[g>>0]=e;e=(c[i>>2]|0)+-1|0;c[i>>2]=e;g=g+1|0}if((e|0)==8){D_(h);b=0;break}else if((e|0)==9){a[g>>0]=0;c[d>>2]=h;break}}else b=0}else b=0;while(0);l=j;return b|0}function gE(b,d){b=b|0;d=d|0;var e=0;e=a[b>>0]|0;switch(e|0){case 91:{b=lE(b+1|0,d)|0;break}case 40:{b=mE(b+1|0,d)|0;break}case 47:case 35:{c[d>>2]=0;c[d+8>>2]=b;break}default:if(!(M$(e)|0))b=0;else{c[d>>2]=0;c[d+8>>2]=b}}return b|0}function hE(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0;f=l;l=l+16|0;d=f;e=+c2(a,d);d=c[d>>2]|0;if((d|0)==(a|0))d=0;else h[b>>3]=e;l=f;return d|0}function iE(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=kE(a,e)|0;e=c[e>>2]|0;c[b>>2]=(e|0)<0?0:e|0?2:1;l=d;return a|0}function jE(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[b>>2]=C$(a,e,10)|0;b=c[e>>2]|0;l=d;return ((b|0)==(a|0)?0:b)|0}function kE(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[b>>2]=i1(a,e,10)|0;b=c[e>>2]|0;l=d;return ((b|0)==(a|0)?0:b)|0}function lE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;m=o;c[b>>2]=1;n=b+8|0;i=hE(a,n)|0;do if(((((i|0)!=0?(j=hE(i,b+16|0)|0,(j|0)!=0):0)?(e=hE(j,b+24|0)|0,(e|0)!=0):0)?(f=hE(e,b+32|0)|0,(f|0)!=0):0)?(k=b+40|0,d=kE(f,k)|0,(d|0)!=0):0){b=c[k>>2]|0;f=E_(b,8)|0;e=0;while(1){if((e|0)>=(b|0)){d=13;break}d=hE(d,m)|0;if(!d){d=9;break}g[f+(e<<3)>>2]=+h[m>>3];d=fE(d,f+(e<<3)+4|0)|0;if(!d){d=12;break}e=e+1|0;b=c[k>>2]|0}if((d|0)==9){D_(f);a=0;break}else if((d|0)==12){D_(f);a=0;break}else if((d|0)==13){c[n+36>>2]=f;break}}else a=0;while(0);l=o;return a|0}function mE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p;c[b>>2]=2;k=hE(a,b+8|0)|0;do if(((((((k|0)!=0?(m=hE(k,b+16|0)|0,(m|0)!=0):0)?(e=hE(m,b+24|0)|0,(e|0)!=0):0)?(f=hE(e,b+32|0)|0,(f|0)!=0):0)?(i=hE(f,b+40|0)|0,(i|0)!=0):0)?(j=hE(i,b+48|0)|0,(j|0)!=0):0)?(o=b+56|0,d=kE(j,o)|0,(d|0)!=0):0){e=c[o>>2]|0;i=E_(e,8)|0;f=0;while(1){if((f|0)>=(e|0)){d=15;break}d=hE(d,n)|0;if(!d){d=11;break}g[i+(f<<3)>>2]=+h[n>>3];d=fE(d,i+(f<<3)+4|0)|0;if(!d){d=14;break}f=f+1|0;e=c[o>>2]|0}if((d|0)==11){D_(i);a=0;break}else if((d|0)==14){D_(i);a=0;break}else if((d|0)==15){c[b+60>>2]=i;break}}else a=0;while(0);l=p;return a|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return bE(a,b,c,0)|0}function oE(a){a=a|0;return nE(a,0,0)|0}function pE(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;e=c[a+12>>2]|0;if(a|0){f=c[a+8>>2]|0;g=a+4|0;h=(e|0)==0;b=0;while(1){if((b|0)>=(c[a>>2]|0))break;d=f+(O(c[g>>2]|0,b)|0)|0;if(!h)tb[e&127](d);qE(d);b=b+1|0}D_(f);D_(a)}return}function qE(a){a=a|0;switch(c[a>>2]|0){case 3:case 2:{D_(c[a+8+4>>2]|0);break}case 5:case 4:{D_(c[a+8+4>>2]|0);break}case 6:{D_(c[a+8+4>>2]|0);break}case 7:{D_(c[a+40>>2]|0);break}case 9:case 8:{D_(c[a+8>>2]|0);break}case 14:case 13:{rE(a+8|0);break}case 10:{D_(c[a+16>>2]|0);break}case 11:{D_(c[a+8>>2]|0);break}case 12:{D_(c[a+40>>2]|0);break}default:{}}return}function rE(a){a=a|0;var b=0,d=0,e=0;switch(c[a>>2]|0){case 1:{e=a+40|0;b=a+8+36|0;a=0;while(1){d=c[b>>2]|0;if((a|0)>=(c[e>>2]|0))break;D_(c[d+(a<<3)+4>>2]|0);a=a+1|0}D_(d);break}case 2:{e=a+56|0;d=a+60|0;a=0;while(1){b=c[d>>2]|0;if((a|0)>=(c[e>>2]|0))break;D_(c[b+(a<<3)+4>>2]|0);a=a+1|0}D_(b);break}default:{}}return}function sE(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;k=o+4|0;n=o;c[d>>2]=0;c[e>>2]=(ey(ez(b)|0)|0)!=0&1;f=c[46414]|0;a:do if(f|0?(h=yx(b,f)|0,i=a[h>>0]|0,i<<24>>24):0){f=20284;while(1){g=c[f>>2]|0;if(!g)break a;if(i<<24>>24==(a[g>>0]|0)?(b$(h,g)|0)==0:0)break;f=f+12|0}c[d>>2]=c[f+4>>2];c[e>>2]=c[f+8>>2]}while(0);f=c[46425]|0;if((f|0?(c[e>>2]|0)==1:0)?(j=yx(b,f)|0,a[j>>0]|0):0)tE(j,e);f=c[46426]|0;if((f|0?(c[d>>2]|0)==1:0)?(m=yx(b,f)|0,a[m>>0]|0):0)tE(m,d);if(a[(c[b+16>>2]|0)+153>>0]|0){j=b+-48|0;i=ez(c[((c[b>>2]&3|0)==2?b:j)+40>>2]|0)|0;m=c[b>>2]&3;sE(Rx(i,c[((m|0)==2?b:j)+40>>2]|0,c[((m|0)==3?b:b+48|0)+40>>2]|0,0,0)|0,k,n);c[e>>2]=c[k>>2]|c[e>>2];c[d>>2]=c[n>>2]|c[d>>2]}l=o;return}function tE(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;m=o;k=o+4|0;j=0;e=0;a:while(1){c[d>>2]=e;g=(j|0)<4;h=(j|0)==3;i=(j|0)==0;while(1){if(!(g&(a[b>>0]|0)!=0))break a;c[k>>2]=0;f=uE(b,k)|0;e=c[k>>2]|0;if(!e){n=5;break a}b=(e|0)==8;if(!(h&b)){if(!(i&b))break;if(a[f>>0]|0)break}c[k>>2]=0;b=f}e=c[d>>2]|e<<(j<<3);j=j+1|0;b=f}if((n|0)==5){c[m>>2]=b;Pw(0,96668,m)|0}l=o;return}function uE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=0;d=vE(a,20344,e)|0;if((d|0)==(a|0)){while(1){d=vE(a,20360,e)|0;if((a|0)==(d|0))break;else a=d}d=vE(a,20408,e)|0}a=c[e>>2]|0;if((a|0)!=0&(a&15|0)==0){a=a|1;c[e>>2]=a}c[b>>2]=c[b>>2]|a;l=f;return d|0}function vE(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;while(1){e=c[b>>2]|0;if(!e)break;f=W_(e)|0;if(!(z$(a,e,f)|0)){g=4;break}b=b+8|0}if((g|0)==4){c[d>>2]=c[d>>2]|c[b+4>>2];a=a+f|0}return a|0}function wE(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,g=0,i=0;g=0;d=0.0;while(1){if((g|0)==4)break;f=b>>(g<<3)&15;e=1400;while(1){if(!(c[e+16>>2]|0))break;if((f|0)==(c[e>>2]|0)){i=6;break}e=e+24|0}if((i|0)==6){i=0;d=+h[e+8>>3]+d}g=g+1|0}return +(d*10.0*+LL(a,c[46418]|0,1.0,0.0))}function xE(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;var i=0.0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0;p=l;l=l+96|0;m=p+80|0;o=p;k=f>4.0?f*.0875:.35;i=+h[d+8>>3];n=i*k;j=+h[d>>3];k=j*k;e=+h[b>>3];j=e+j;h[m>>3]=j;f=+h[b+8>>3];i=i+f;h[m+8>>3]=i;d=o+64|0;if(!(g&32)){c[d>>2]=c[m>>2];c[d+4>>2]=c[m+4>>2];c[d+8>>2]=c[m+8>>2];c[d+12>>2]=c[m+12>>2];c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=o+32|0;c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];f=i;e=j}else{c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];c[o>>2]=c[b>>2];c[o+4>>2]=c[b+4>>2];c[o+8>>2]=c[b+8>>2];c[o+12>>2]=c[b+12>>2];b=o+32|0;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2]}h[o+16>>3]=e+n;h[o+24>>3]=f-k;h[o+48>>3]=e-n;h[o+56>>3]=f+k;do if(!(g&64))if(!(g&128)){_O(a,o+16|0,3,g>>>4&1^1);break}else{_O(a,o+32|0,3,g>>>4&1^1);break}else _O(a,o,3,g>>>4&1^1);while(0);l=p;return}function yE(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;var i=0.0,j=0.0,k=0.0,m=0.0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0;x=l;l=l+160|0;n=x+144|0;w=x;q=e*4.0;y=(g&32|0)==0;q=!(q<f)|y?.45:f/q*.45;s=!(f>1.0)|y?0.0:(f+-1.0)*.05/e;u=+h[d+8>>3];r=-u;v=q*r;t=+h[d>>3];q=t*q;r=s*r;s=t*s;p=+h[b>>3];e=p+t;h[n>>3]=e;o=+h[b+8>>3];f=u+o;h[n+8>>3]=f;t=t*.5+p;u=u*.5+o;d=w+128|0;if(y){c[d>>2]=c[n>>2];c[d+4>>2]=c[n+4>>2];c[d+8>>2]=c[n+8>>2];c[d+12>>2]=c[n+12>>2];c[w>>2]=c[n>>2];c[w+4>>2]=c[n+4>>2];c[w+8>>2]=c[n+8>>2];c[w+12>>2]=c[n+12>>2];y=w+64|0;c[y>>2]=c[b>>2];c[y+4>>2]=c[b+4>>2];c[y+8>>2]=c[b+8>>2];c[y+12>>2]=c[b+12>>2];i=o;j=p;k=o;m=p;f=o;e=p}else{c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];c[w>>2]=c[b>>2];c[w+4>>2]=c[b+4>>2];c[w+8>>2]=c[b+8>>2];c[w+12>>2]=c[b+12>>2];y=w+64|0;c[y>>2]=c[n>>2];c[y+4>>2]=c[n+4>>2];c[y+8>>2]=c[n+8>>2];c[y+12>>2]=c[n+12>>2];i=f+s;j=e+r;k=f-s;m=e-r}h[w+16>>3]=e-v;h[w+24>>3]=f-q;h[w+32>>3]=t-r;h[w+40>>3]=u-s;h[w+48>>3]=m;h[w+56>>3]=k;h[w+80>>3]=j;h[w+88>>3]=i;h[w+96>>3]=t+r;h[w+104>>3]=u+s;h[w+112>>3]=e+v;h[w+120>>3]=f+q;do if(!(g&64))if(!(g&128)){_O(a,w,9,1);break}else{_O(a,w+48|0,6,1);break}else _O(a,w,6,1);while(0);l=x;return}function zE(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;var i=0.0,j=0.0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0;q=l;l=l+64|0;p=q;t=+h[d+8>>3];s=+h[d>>3];k=+h[b>>3];e=k+s;m=+h[b+8>>3];f=m+t;i=k+s*.2;j=m+t*.2;k=k+s*.6;m=m+t*.6;h[p>>3]=i-t;h[p+8>>3]=j+s;n=p+16|0;h[n>>3]=i+t;o=p+24|0;h[o>>3]=j-s;h[p+32>>3]=k+t;h[p+40>>3]=m-s;h[p+48>>3]=k-t;h[p+56>>3]=m+s;if(!(g&64)){if(g&128|0){d=2;g=1;r=3}}else{d=3;g=0;r=3}if((r|0)==3){h[p+(g<<4)>>3]=i;h[p+(g<<4)+8>>3]=j;h[p+(d<<4)>>3]=k;h[p+(d<<4)+8>>3]=m}_O(a,p,4,1);c[p>>2]=c[b>>2];c[p+4>>2]=c[b+4>>2];c[p+8>>2]=c[b+8>>2];c[p+12>>2]=c[b+12>>2];h[n>>3]=e;h[o>>3]=f;bP(a,p,2);l=q;return}function AE(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0.0,t=0.0;o=l;l=l+64|0;n=o;j=+h[d+8>>3];r=j*-.4;i=+h[d>>3];q=i*.4;t=+h[b>>3];e=t+i*.8;s=+h[b+8>>3];f=s+j*.8;i=t+i;j=s+j;h[n>>3]=t+r;k=n+8|0;h[k>>3]=s+q;d=n+16|0;h[d>>3]=t-r;m=n+24|0;h[m>>3]=s-q;h[n+32>>3]=e-r;h[n+40>>3]=f-q;h[n+48>>3]=e+r;h[n+56>>3]=f+q;if(!(g&64)){if(g&128|0){c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];d=2;p=5}}else{c[n>>2]=c[b>>2];c[n+4>>2]=c[b+4>>2];c[n+8>>2]=c[b+8>>2];c[n+12>>2]=c[b+12>>2];d=3;p=5}if((p|0)==5){h[n+(d<<4)>>3]=e;h[n+(d<<4)+8>>3]=f}_O(a,n,4,g>>>4&1^1);h[n>>3]=e;h[k>>3]=f;h[n+16>>3]=i;h[m>>3]=j;bP(a,n,2);l=o;return}function BE(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;var i=0,j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0;j=l;l=l+80|0;i=j;n=+h[d+8>>3];k=n*-.3333333333333333;p=+h[d>>3];f=p*.3333333333333333;q=+h[b>>3];m=q+p*.5;o=+h[b+8>>3];e=o+n*.5;d=i+64|0;h[i+64>>3]=q+p;h[i+72>>3]=o+n;c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[i+12>>2]=c[d+12>>2];h[i+16>>3]=m+k;h[i+24>>3]=e+f;d=i+32|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];h[i+48>>3]=m-k;h[i+56>>3]=e-f;do if(!(g&64)){d=g>>>4&1^1;if(!(g&128)){_O(a,i,4,d);break}else{_O(a,i,3,d);break}}else _O(a,d,3,g>>>4&1^1);while(0);l=j;return}function CE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;var g=0,i=0,j=0.0,k=0.0,m=0.0;g=l;l=l+32|0;i=g;k=+h[c>>3];e=+h[c+8>>3];d=+C(+(e*e+k*k))*.5;m=+h[b>>3];k=k*.5;h[i>>3]=m+k-d;j=+h[b+8>>3];e=e*.5;h[i+8>>3]=j-d+e;h[i+16>>3]=m+d+k;h[i+24>>3]=j+d+e;ZO(a,i,2,f>>>4&1^1);l=g;return}function DE(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;var i=0.0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0;t=l;l=l+112|0;q=t+48|0;r=t+16|0;s=t;n=f>4.0?f*.125:.5;p=+h[b>>3];o=+h[d>>3];i=+h[b+8>>3];m=+h[d+8>>3];e=m*n;f=o*n;c[r>>2]=c[b>>2];c[r+4>>2]=c[b+4>>2];c[r+8>>2]=c[b+8>>2];c[r+12>>2]=c[b+12>>2];h[r+16>>3]=o+p;h[r+24>>3]=m+i;h[q>>3]=n*(o-m)+p;j=n*(m+o);k=j+i;h[q+8>>3]=k;h[q+48>>3]=j+p;i=n*(m-o)+i;h[q+56>>3]=i;o=e*-.95;m=o+f+p;n=f*1.3333333333333333;if(!(g&32)){e=e*1.3333333333333333;j=f*-.33333333333333326;i=i-e;f=k-e;e=m-n}else{e=e*1.3333333333333333;j=f*2.333333333333333;i=i+e;f=k+e;e=m+n}h[q+16>>3]=e;h[q+24>>3]=f;h[q+32>>3]=j-o+p;h[q+40>>3]=i;bP(a,r,2);if(!(g&64)){if(g&128|0)XL(s,q,3,.5,q,0)}else XL(s,q,3,.5,0,q);aP(a,q,4,0,0,0);l=t;return}function EE(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;var i=0;g=l;l=l+32|0;i=g;e=+h[d>>3]+ +h[b>>3];f=+h[d+8>>3]+ +h[b+8>>3];c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];h[i+16>>3]=e;h[i+24>>3]=f;bP(a,i,2);l=g;return}function FE(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0,q=0,r=0,s=0;n=l;l=l+80|0;j=n+72|0;k=n+8|0;m=n;i=+wE(a,g);i=i*i;h[m>>3]=i;c[f+12>>2]=g;g=f+32|0;a=e+3|0;f=b+(a<<4)|0;c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];if((e|0)>(d|0)?(o=+h[b+(e<<4)>>3]-+h[f>>3],p=+h[b+(e<<4)+8>>3]-+h[b+(a<<4)+8>>3],p*p+o*o<i):0)e=e+-3|0;s=k+48|0;r=b+(e<<4)|0;c[s>>2]=c[r>>2];c[s+4>>2]=c[r+4>>2];c[s+8>>2]=c[r+8>>2];c[s+12>>2]=c[r+12>>2];q=k+32|0;a=b+(e+1<<4)|0;c[q>>2]=c[a>>2];c[q+4>>2]=c[a+4>>2];c[q+8>>2]=c[a+8>>2];c[q+12>>2]=c[a+12>>2];f=k+16|0;d=b+(e+2<<4)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[k>>2]=c[g>>2];c[k+4>>2]=c[g+4>>2];c[k+8>>2]=c[g+8>>2];c[k+12>>2]=c[g+12>>2];c[j>>2]=k;c[j+4>>2]=m;MK(j,90,k,1);c[r>>2]=c[s>>2];c[r+4>>2]=c[s+4>>2];c[r+8>>2]=c[s+8>>2];c[r+12>>2]=c[s+12>>2];c[a>>2]=c[q>>2];c[a+4>>2]=c[q+4>>2];c[a+8>>2]=c[q+8>>2];c[a+12>>2]=c[q+12>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];m=b+(e+3<<4)|0;c[m>>2]=c[k>>2];c[m+4>>2]=c[k+4>>2];c[m+8>>2]=c[k+8>>2];c[m+12>>2]=c[k+12>>2];l=n;return e|0}function GE(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0;f=c[a>>2]|0;d=+h[b>>3]-+h[f>>3];e=+h[b+8>>3]-+h[f+8>>3];return e*e+d*d<=+h[c[a+4>>2]>>3]|0}function HE(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0.0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0,s=0;o=l;l=l+80|0;k=o+72|0;m=o+8|0;n=o;j=+wE(a,g);j=j*j;h[n>>3]=j;c[f+8>>2]=g;f=f+16|0;a=b+(d<<4)|0;c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];if(!((e|0)>(d|0)?(i=d+3|0,p=+h[a>>3]-+h[b+(i<<4)>>3],q=+h[b+(d<<4)+8>>3]-+h[b+(i<<4)+8>>3],q*q+p*p<j):0))i=d;e=b+(i+3<<4)|0;c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];g=m+16|0;d=b+(i+2<<4)|0;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];r=m+32|0;a=b+(i+1<<4)|0;c[r>>2]=c[a>>2];c[r+4>>2]=c[a+4>>2];c[r+8>>2]=c[a+8>>2];c[r+12>>2]=c[a+12>>2];s=m+48|0;c[s>>2]=c[f>>2];c[s+4>>2]=c[f+4>>2];c[s+8>>2]=c[f+8>>2];c[s+12>>2]=c[f+12>>2];c[k>>2]=s;c[k+4>>2]=n;MK(k,90,m,0);n=b+(i<<4)|0;c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];c[n+8>>2]=c[s+8>>2];c[n+12>>2]=c[s+12>>2];c[a>>2]=c[r>>2];c[a+4>>2]=c[r+4>>2];c[a+8>>2]=c[r+8>>2];c[a+12>>2]=c[r+12>>2];c[d>>2]=c[g>>2];c[d+4>>2]=c[g+4>>2];c[d+8>>2]=c[g+8>>2];c[d+12>>2]=c[g+12>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];l=o;return i|0}function IE(a,b,d,e,f,g,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0.0,k=0.0,l=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0.0,t=0.0,u=0,v=0,w=0;u=(g|0)!=0;l=(i|0)!=0;if(!((e|0)==(d|0)&(u&l))){if(l){j=+wE(a,i);k=+h[b+(e<<4)>>3];p=+h[b+(e<<4)+8>>3];l=e+3|0;r=b+(l<<4)|0;n=+h[r>>3];l=b+(l<<4)+8|0;o=+h[l>>3];t=k-n;s=p-o;t=+C(+(s*s+t*t))*.9;j=j>=t?t:j;if(p==o){m=(k<n?-j:j)+n;j=p}else{m=k;j=(p<o?-j:j)+o}w=e+1|0;h[b+(w<<4)>>3]=k;h[b+(w<<4)+8>>3]=p;e=b+(e+2<<4)|0;h[r>>3]=m;h[l>>3]=j;c[e>>2]=c[r>>2];c[e+4>>2]=c[r+4>>2];c[e+8>>2]=c[r+8>>2];c[e+12>>2]=c[r+12>>2];c[f+12>>2]=i;h[f+32>>3]=n;h[f+40>>3]=o}if(u){m=+wE(a,g);l=b+(d<<4)|0;k=+h[l>>3];j=+h[b+(d<<4)+8>>3];w=d+3|0;o=+h[b+(w<<4)>>3];p=+h[b+(w<<4)+8>>3];t=k-o;s=j-p;t=+C(+(s*s+t*t))*.9;m=m>=t?t:m;if(j==p){n=(k<o?m:-m)+k;m=j}else{n=k;m=(j<p?m:-m)+j}w=d+1|0;v=b+(w<<4)|0;h[v>>3]=n;h[b+(w<<4)+8>>3]=m;c[l>>2]=c[v>>2];c[l+4>>2]=c[v+4>>2];c[l+8>>2]=c[v+8>>2];c[l+12>>2]=c[v+12>>2];v=d+2|0;h[b+(v<<4)>>3]=o;h[b+(v<<4)+8>>3]=p;v=16}}else{r=b+(e<<4)|0;s=+h[r>>3];t=+h[b+(e<<4)+8>>3];l=e+3|0;u=b+(l<<4)|0;k=+h[u>>3];l=b+(l<<4)+8|0;j=+h[l>>3];m=+wE(a,g);q=+wE(a,i);n=s-k;p=t-j;n=+C(+(p*p+n*n));w=!(q+m>=n);n=n*.3333333333333333;m=w?m:n;n=w?q:n;if(t==j){w=s<k;p=(w?-n:n)+k;q=(w?m:-m)+s;o=t;m=t}else{w=t<j;p=s;q=s;o=(w?m:-m)+t;m=(w?-n:n)+j}w=e+1|0;v=b+(w<<4)|0;h[v>>3]=q;h[b+(w<<4)+8>>3]=o;c[r>>2]=c[v>>2];c[r+4>>2]=c[v+4>>2];c[r+8>>2]=c[v+8>>2];c[r+12>>2]=c[v+12>>2];v=b+(e+2<<4)|0;h[u>>3]=p;h[l>>3]=m;c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[v+8>>2]=c[u+8>>2];c[v+12>>2]=c[u+12>>2];c[f+12>>2]=i;h[f+32>>3]=s;h[f+40>>3]=t;v=16}if((v|0)==16){c[f+8>>2]=g;h[f+16>>3]=k;h[f+24>>3]=j}return}function JE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0.0,g=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0;n=+h[b>>3];k=+h[c>>3]-n;o=+h[b+8>>3];l=+h[c+8>>3]-o;j=d*10.0/(+C(+(k*k+l*l))+.0001);k=j*((k>=0.0?.0001:-.0001)+k);j=((l>=0.0?.0001:-.0001)+l)*j;l=k*.5;m=j*.5;i=n-m;f=o-l;n=m+n;l=o+l;o=i+k;m=f+j;k=n+k;j=l+j;g=o>k?o:k;g=n>g?n:g;d=m>j?m:j;d=l>d?l:d;k=o<k?o:k;k=n<k?n:k;j=m<j?m:j;j=l<j?l:j;h[a>>3]=i<k?i:k;h[a+8>>3]=f<j?f:j;h[a+16>>3]=i>g?i:g;h[a+24>>3]=f>d?f:d;return}function KE(a,b,d,e,f,g,i){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;g=+g;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0;q=l;l=l+48|0;m=q+32|0;k=q+16|0;p=q;n=(c[a+16>>2]|0)+12|0;o=c[n>>2]|0;c[n>>2]=b;YO(a,c[(c[a>>2]|0)+336>>2]|0);fP(a,g);t=+h[e>>3]-+h[d>>3];b=e+8|0;s=+h[b>>3]-+h[d+8>>3];r=10.0/(+C(+(t*t+s*s))+.0001);h[e>>3]=r*((t>=0.0?.0001:-.0001)+t);h[b>>3]=((s>=0.0?.0001:-.0001)+s)*r;b=0;while(1){if((b|0)>=4)break;j=i>>(b<<3)&255;if(!j)break;c[k>>2]=c[d>>2];c[k+4>>2]=c[d+4>>2];c[k+8>>2]=c[d+8>>2];c[k+12>>2]=c[d+12>>2];c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];LE(p,a,k,m,f,g,j);c[d>>2]=c[p>>2];c[d+4>>2]=c[p+4>>2];c[d+8>>2]=c[p+8>>2];c[d+12>>2]=c[p+12>>2];b=b+1|0}c[n>>2]=o;l=q;return}function LE(a,b,d,e,f,g,i){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;g=+g;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;m=q+16|0;k=q;n=i&15;j=1400;while(1){o=c[j>>2]|0;if(!o)break;if((n|0)==(o|0)){p=4;break}j=j+24|0}if((p|0)==4){r=+h[j+8>>3]*f;h[e>>3]=r*+h[e>>3];o=e+8|0;h[o>>3]=r*+h[o>>3];p=c[j+16>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=c[d+4>>2];c[k+8>>2]=c[d+8>>2];c[k+12>>2]=c[d+12>>2];c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];wb[p&15](b,k,m,f,g,i);h[d>>3]=+h[e>>3]+ +h[d>>3];p=d+8|0;h[p>>3]=+h[o>>3]+ +h[p>>3]};c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];l=q;return}function ME(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i+8|0;f=i;d=xx(b,96770)|0;if((d|0)!=0?(a[d>>0]|0)!=0:0){e=d;h=5}else{d=xx(b,96782)|0;if((d|0)!=0?(a[d>>0]|0)!=0:0){e=d;h=5}else d=0}if((h|0)==5){d=nE(e,0,120)|0;if(!d){c[f>>2]=ry(b)|0;Pw(0,96789,f)|0;c[g>>2]=e;Pw(3,96842,g)|0}}l=i;return d|0}function NE(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=l;l=l+16|0;f=uH(304)|0;if(!f)Pw(1,96850,g)|0;e=a+16|0;a=c[e>>2]|0;c[f>>2]=a;c[e>>2]=f;if(!a){c[f+144>>2]=3;c[f+148>>2]=0;h[f+152>>3]=1.0}else{b=f+16|0;d=a+16|0;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));b=f+56|0;d=a+56|0;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));c[f+144>>2]=c[a+144>>2];c[f+148>>2]=c[a+148>>2];h[f+152>>3]=+h[a+152>>3];c[f+136>>2]=c[a+136>>2];b=f+96|0;d=a+96|0;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0))}l=g;return f|0}function OE(a){a=a|0;var b=0;a=a+16|0;b=c[a>>2]|0;if(!b)qa(96876,96880,117,96887);else{D_(c[b+212>>2]|0);D_(c[b+208>>2]|0);D_(c[b+216>>2]|0);D_(c[b+220>>2]|0);D_(c[b+224>>2]|0);D_(c[b+228>>2]|0);D_(c[b+232>>2]|0);D_(c[b+236>>2]|0);D_(c[b+240>>2]|0);D_(c[b+244>>2]|0);D_(c[b+248>>2]|0);D_(c[b+252>>2]|0);D_(c[b+256>>2]|0);D_(c[b+272>>2]|0);D_(c[b+284>>2]|0);D_(c[b+280>>2]|0);c[a>>2]=c[b>>2];D_(b);return}}function PE(d,e,f,g,h,i,j){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;l=c[d+16>>2]|0;k=c[d+152>>2]|0;if((e|0)!=0&(k&32768|0)!=0)c[l+192>>2]=e;if(((k&65536|0)!=0?(c[l+212>>2]=pH(i,j)|0,(f|0)!=0):0)?(a[f>>0]|0)!=0:0){c[l+208>>2]=pH(f,j)|0;d=1}else d=0;do if(k&4194304){if(g|0?a[g>>0]|0:0){c[l+228>>2]=pH(g,j)|0;d=l+260|0;b[d>>1]=b[d>>1]|1;d=1;break}e=c[l+192>>2]|0;if(e){c[l+228>>2]=n1(e)|0;d=1}}while(0);if((h|0)!=0&(k&8388608|0)!=0?(a[h>>0]|0)!=0:0){c[l+244>>2]=pH(h,j)|0;d=1}return d|0}function QE(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+80|0;i=j;h=j+8|0;g=c[(c[b>>2]|0)+168>>2]|0;f=c[(c[(c[g+16>>2]|0)+8>>2]|0)+92>>2]|0;RE(b,e);b=xx(d,137978)|0;if((b|0)!=0?(a[b>>0]|0)!=0:0){Ww(e,b)|0;f=e+4|0;b=c[f>>2]|0;if(b>>>0>=(c[e+8>>2]|0)>>>0){Uw(e,1)|0;b=c[f>>2]|0}a[b>>0]=0;b=c[e>>2]|0;c[f>>2]=b}else{if((g|0)!=(d|0)&(f|0)!=0){Ww(e,f)|0;f=e+4|0;b=c[f>>2]|0;if(b>>>0>=(c[e+8>>2]|0)>>>0){Uw(e,1)|0;b=c[f>>2]|0}c[f>>2]=b+1;a[b>>0]=95}switch(pz(d)|0){case 0:{f=(g|0)==(d|0)?108412:96901;b=(c[d>>2]|0)>>>4;break}case 1:{f=108399;b=(c[d>>2]|0)>>>4;break}case 2:{f=108368;b=(c[d>>2]|0)>>>4;break}default:{f=0;b=0}}Ww(e,f)|0;c[i>>2]=b;Y0(h,96907,i)|0;Ww(e,h)|0;f=e+4|0;b=c[f>>2]|0;if(b>>>0>=(c[e+8>>2]|0)>>>0){Uw(e,1)|0;b=c[f>>2]|0}a[b>>0]=0;b=c[e>>2]|0;c[f>>2]=b}l=j;return b|0}function RE(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+144|0;h=i;g=i+8|0;e=c[b+160>>2]|0;if((e|0)>1?c[b+152>>2]&64|0:0){Ww(d,c[(c[(c[b>>2]|0)+308>>2]|0)+(e<<2)>>2]|0)|0;f=d+4|0;e=c[f>>2]|0;if(e>>>0>=(c[d+8>>2]|0)>>>0){Uw(d,1)|0;e=c[f>>2]|0}c[f>>2]=e+1;a[e>>0]=95}f=c[b+196>>2]|0;e=c[b+200>>2]|0;if((f|0)>0|(e|0)>0){c[h>>2]=f;c[h+4>>2]=e;Y0(g,96911,h)|0;Ww(d,g)|0}l=i;return}function SE(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0;s=l;l=l+48|0;p=s+16|0;f=s+32|0;q=s;r=+h[(c[a+16>>2]|0)+152>>3];o=TE(d,0,f)|0;if((o+-1|0)>>>0>=2){e=+h[b+16>>3];k=(e+ +h[b>>3])*.5;h[q>>3]=k;i=+h[b+24>>3];m=(i+ +h[b+8>>3])*.5;h[q+8>>3]=m;k=e-k;m=i-m;n=r>.5;if(n)fP(a,.5);j=c[f>>2]|0;i=0.0;f=c[j+8>>2]|0;while(1){d=c[f>>2]|0;if(!d)break;b=f+4|0;if(+g[b>>2]==0.0)e=i;else{WO(a,d);if(!(c[f+12>>2]|0))e=6.283185307179586;else e=+g[b>>2]*6.283185307179586+i;c[p>>2]=c[q>>2];c[p+4>>2]=c[q+4>>2];c[p+8>>2]=c[q+8>>2];c[p+12>>2]=c[q+12>>2];b=rQ(p,k,m,i,e)|0;aP(a,c[b>>2]|0,c[b+4>>2]|0,0,0,1);nV(b)}i=e;f=f+12|0}if(n)fP(a,r);UE(j)}l=s;return o|0}function TE(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+16|0;o=r+8|0;n=r;q=uH(12)|0;i=n1(b)|0;a:do if(!d){d=1;f=i;while(1){switch(a[f>>0]|0){case 0:break a;case 58:{d=d+1|0;break}default:{}}f=f+1|0}}while(0);c[q+4>>2]=i;p=uH((d*12|0)+12|0)|0;c[q+8>>2]=p;m=1.0;h=0;d=0;f=i;while(1){f=k1(f,104958)|0;if(!f){f=20;break}j=+VE(f);if(!(j>=0.0)){f=17;break}k=j-m;if(k>0.0)if((c[5130]|0)!=0?!(k<1.0e-05&k>-1.0e-05):0){c[n>>2]=b;Pw(0,96922,n)|0;c[5130]=0;j=m;d=3}else j=m;k=m-j;if(j>0.0)a[p+(h*12|0)+8>>0]=1;if(a[f>>0]|0)c[p+(h*12|0)>>2]=f;f=h+1|0;g[p+(h*12|0)+4>>2]=j;if(k<1.0e-05&k>-1.0e-05){h=f;f=30;break}else{m=k;h=f;f=0}}b:do if((f|0)==17){if(!(c[5130]|0))d=1;else{c[o>>2]=b;Pw(1,96957,o)|0;c[5130]=0;d=2}UE(q)}else if((f|0)==20)if(m>0.0){f=0;i=0;while(1){if((f|0)>=(h|0))break;o=i+(+g[p+(f*12|0)+4>>2]==0.0&1)|0;f=f+1|0;i=o}if((i|0)<=0){f=p+((h+-1|0)*12|0)+4|0;g[f>>2]=m+ +g[f>>2];f=30;break}j=m/+(i|0);f=0;while(1){if((f|0)>=(h|0)){f=30;break b}i=p+(f*12|0)+4|0;if(+g[i>>2]==0.0)g[i>>2]=j;f=f+1|0}}else f=30;while(0);if((f|0)==30){while(1){f=h+-1|0;if((h|0)<=0)break;if(+g[p+(f*12|0)+4>>2]>0.0)break;else h=f}c[p+(h*12|0)>>2]=0;c[q>>2]=h;c[e>>2]=q}l=r;return d|0}function UE(a){a=a|0;D_(c[a+4>>2]|0);D_(c[a+8>>2]|0);D_(a);return}function VE(b){b=b|0;var d=0.0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;b=A$(b,59)|0;if(!b)d=0.0;else{g=b+1|0;a[b>>0]=0;d=+c2(g,e);d=(d>=0.0?(c[e>>2]|0)!=(g|0):0)?d:-1.0}l=f;return +d}function WE(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0.0,t=0;t=l;l=l+80|0;i=t+64|0;r=t;s=+h[(c[a+16>>2]|0)+152>>3];q=TE(d,0,i)|0;if((q+-1|0)>>>0>=2){if(!e){c[r>>2]=c[b>>2];c[r+4>>2]=c[b+4>>2];c[r+8>>2]=c[b+8>>2];c[r+12>>2]=c[b+12>>2];p=r+16|0;o=b+16|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];c[p+8>>2]=c[o+8>>2];c[p+12>>2]=c[o+12>>2];p=r+32|0;o=b+32|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];c[p+8>>2]=c[o+8>>2];c[p+12>>2]=c[o+12>>2];p=r+48|0;o=b+48|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];c[p+8>>2]=c[o+8>>2];c[p+12>>2]=c[o+12>>2]}else{p=b+32|0;c[r>>2]=c[p>>2];c[r+4>>2]=c[p+4>>2];c[r+8>>2]=c[p+8>>2];c[r+12>>2]=c[p+12>>2];p=r+16|0;o=b+48|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];c[p+8>>2]=c[o+8>>2];c[p+12>>2]=c[o+12>>2];p=r+32|0;c[p>>2]=c[b>>2];c[p+4>>2]=c[b+4>>2];c[p+8>>2]=c[b+8>>2];c[p+12>>2]=c[b+12>>2];p=r+48|0;o=b+16|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];c[p+8>>2]=c[o+8>>2];c[p+12>>2]=c[o+12>>2]}k=r+16|0;m=+h[k>>3];f=+h[r>>3];n=m-f;o=r+32|0;h[o>>3]=f;h[k>>3]=f;p=s>.5;if(p)fP(a,.5);i=c[i>>2]|0;j=r+48|0;e=c[i+8>>2]|0;while(1){d=c[e>>2]|0;if(!d)break;b=e+4|0;if(!(+g[b>>2]==0.0)){WO(a,d);if(!(c[e+12>>2]|0))f=m;else f=n*+g[b>>2]+ +h[r>>3];h[o>>3]=f;h[k>>3]=f;_O(a,r,4,1);f=+h[k>>3];h[j>>3]=f;h[r>>3]=f}e=e+12|0}if(p)fP(a,s);UE(i)}l=t;return q|0}function XE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=c[a+16>>2]|0;e=c[a+152>>2]|0;if(e&4259840|0){f=e&131072;g=f>>>16^2;c[d+264>>2]=g;h=d+268|0;c[h>>2]=g+2;g=d+272|0;D_(c[g>>2]|0);d=uH(c[h>>2]<<4)|0;c[g>>2]=d;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];g=d+16|0;b=b+16|0;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];if(!(e&8192))yO(a,d,d,2)|0;if(!f)WG(d)}return}function YE(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0,f=0,g=0,i=0.0,j=0.0,k=0.0,m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+144|0;c=q+80|0;e=q+16|0;f=q;k=+h[b>>3];o=a+16|0;m=+h[o>>3];if(!(((((((((!(k>m)?(n=+h[a>>3],!(k<n)):0)?(d=+h[b+8>>3],i=+h[a+24>>3],!(d>i)):0)?(j=+h[a+8>>3],!(d<j)):0)?(k=+h[b+16>>3],!(k>m|k<n)):0)?(k=+h[b+24>>3],!(k>i|k<j)):0)?(k=+h[b+32>>3],!(k>m|k<n)):0)?(k=+h[b+40>>3],!(k>i|k<j)):0)?(k=+h[b+48>>3],!(k>m|k<n)):0)?(n=+h[b+56>>3],!(n>i|n<j)):0))p=11;a:do if((p|0)==11){if(!(ZE(b)|0)){XL(f,b,3,.5,c,e);YE(a,c);YE(a,e);break}f=a+24|0;g=a+8|0;e=0;while(1){if((e|0)==4)break a;d=+h[b+(e<<4)>>3];if(!(d>+h[o>>3])){if(d<+h[a>>3]){c=a;p=16}}else{c=o;p=16}if((p|0)==16){p=0;h[c>>3]=d}d=+h[b+(e<<4)+8>>3];if(!(d>+h[f>>3])){if(d<+h[g>>3]){c=a;p=19}}else{c=o;p=19}if((p|0)==19){p=0;h[c+8>>3]=d}e=e+1|0}}while(0);l=q;return}function ZE(a){a=a|0;var b=0,d=0,e=0,f=0,g=0.0,h=0,i=0;b=l;l=l+48|0;d=b+32|0;e=b+16|0;f=b;i=a+48|0;h=a+16|0;c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];c[e>>2]=c[i>>2];c[e+4>>2]=c[i+4>>2];c[e+8>>2]=c[i+8>>2];c[e+12>>2]=c[i+12>>2];c[d>>2]=c[h>>2];c[d+4>>2]=c[h+4>>2];c[d+8>>2]=c[h+8>>2];c[d+12>>2]=c[h+12>>2];g=+$G(f,e,d);h=a+32|0;c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];c[e>>2]=c[i>>2];c[e+4>>2]=c[i+4>>2];c[e+8>>2]=c[i+8>>2];c[e+12>>2]=c[i+12>>2];c[d>>2]=c[h>>2];c[d+4>>2]=c[h+4>>2];c[d+8>>2]=c[h+8>>2];c[d+12>>2]=c[h+12>>2];a=g<4.0&+$G(f,e,d)<4.0&1;l=b;return a|0}function _E(b,d){b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0.0,G=0.0,H=0.0,I=0.0,J=0,K=0;D=l;l=l+272|0;u=D+256|0;v=D+224|0;w=D+192|0;x=D+128|0;y=D+64|0;z=D;A=D+160|0;B=D+96|0;C=D+32|0;t=c[d+16>>2]|0;s=c[t+144>>2]|0;r=t+16|0;c[x>>2]=c[r>>2];c[x+4>>2]=c[r+4>>2];c[x+8>>2]=c[r+8>>2];c[x+12>>2]=c[r+12>>2];c[x+16>>2]=c[r+16>>2];c[x+20>>2]=c[r+20>>2];c[x+24>>2]=c[r+24>>2];c[x+28>>2]=c[r+28>>2];t=c[(c[t+8>>2]|0)+88>>2]|0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;c[z+20>>2]=0;c[z+24>>2]=0;c[z+28>>2]=0;if(!t){c[b>>2]=c[x>>2];c[b+4>>2]=c[x+4>>2];c[b+8>>2]=c[x+8>>2];c[b+12>>2]=c[x+12>>2];c[b+16>>2]=c[x+16>>2];c[b+20>>2]=c[x+20>>2];c[b+24>>2]=c[x+24>>2];c[b+28>>2]=c[x+28>>2]}else{d=x+16|0;if(+h[x>>3]==+h[d>>3]?(e=x+8|0,f=x+24|0,+h[e>>3]==+h[f>>3]):0){h[e>>3]=1797693134862315708145274.0e284;h[x>>3]=1797693134862315708145274.0e284;h[f>>3]=-1797693134862315708145274.0e284;h[d>>3]=-1797693134862315708145274.0e284}j=v+8|0;k=v+16|0;m=v+24|0;n=y+16|0;o=y+24|0;p=s+144|0;q=w+16|0;r=t+12|0;d=0;f=c[t+8>>2]|0;e=0;g=0.0;i=0;while(1){if((i|0)>=(c[t>>2]|0))break;c[y>>2]=c[z>>2];c[y+4>>2]=c[z+4>>2];c[y+8>>2]=c[z+8>>2];c[y+12>>2]=c[z+12>>2];c[y+16>>2]=c[z+16>>2];c[y+20>>2]=c[z+20>>2];c[y+24>>2]=c[z+24>>2];c[y+28>>2]=c[z+28>>2];switch(c[f>>2]|0){case 1:case 0:{H=+h[f+8>>3];I=+h[f+24>>3];h[v>>3]=H-I;F=+h[f+16>>3];G=+h[f+32>>3];h[j>>3]=F-G;h[k>>3]=I+H;h[m>>3]=G+F;E=f+80|0;c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];c[E+8>>2]=c[v+8>>2];c[E+12>>2]=c[v+12>>2];E=f+96|0;c[E>>2]=c[k>>2];c[E+4>>2]=c[k+4>>2];c[E+8>>2]=c[k+8>>2];c[E+12>>2]=c[k+12>>2];c[u>>2]=c[v>>2];c[u+4>>2]=c[v+4>>2];c[u+8>>2]=c[v+8>>2];c[u+12>>2]=c[v+12>>2];$E(x,u);c[u>>2]=c[k>>2];c[u+4>>2]=c[k+4>>2];c[u+8>>2]=c[k+8>>2];c[u+12>>2]=c[k+12>>2];$E(x,u);break}case 3:case 2:{E=f+80|0;J=f+8|0;aF(A,c[J+4>>2]|0,c[J>>2]|0,x);c[E>>2]=c[A>>2];c[E+4>>2]=c[A+4>>2];c[E+8>>2]=c[A+8>>2];c[E+12>>2]=c[A+12>>2];c[E+16>>2]=c[A+16>>2];c[E+20>>2]=c[A+20>>2];c[E+24>>2]=c[A+24>>2];c[E+28>>2]=c[A+28>>2];break}case 5:case 4:{J=f+80|0;E=f+8|0;aF(B,c[E+4>>2]|0,c[E>>2]|0,x);c[J>>2]=c[B>>2];c[J+4>>2]=c[B+4>>2];c[J+8>>2]=c[B+8>>2];c[J+12>>2]=c[B+12>>2];c[J+16>>2]=c[B+16>>2];c[J+20>>2]=c[B+20>>2];c[J+24>>2]=c[B+24>>2];c[J+28>>2]=c[B+28>>2];break}case 6:{J=f+80|0;E=f+8|0;aF(C,c[E+4>>2]|0,c[E>>2]|0,x);c[J>>2]=c[C>>2];c[J+4>>2]=c[C+4>>2];c[J+8>>2]=c[C+8>>2];c[J+12>>2]=c[C+12>>2];c[J+16>>2]=c[C+16>>2];c[J+20>>2]=c[C+20>>2];c[J+24>>2]=c[C+24>>2];c[J+28>>2]=c[C+28>>2];break}case 7:{J=f+112|0;c[J>>2]=uH(56)|0;E=n1(c[f+40>>2]|0)|0;K=c[J>>2]|0;c[K>>2]=E;a[K+48>>0]=a[97003+(c[f+24>>2]|0)>>0]|0;c[y>>2]=e;h[n>>3]=g;c[o>>2]=c[o>>2]&-128|d&127;K=c[p>>2]|0;K=nb[c[K>>2]&63](K,y,1)|0;E=c[J>>2]|0;c[E+4>>2]=K;wL(u,s,E);bF(w,+h[f+8>>3],+h[f+16>>3],c[J>>2]|0);J=f+80|0;c[J>>2]=c[w>>2];c[J+4>>2]=c[w+4>>2];c[J+8>>2]=c[w+8>>2];c[J+12>>2]=c[w+12>>2];c[J+16>>2]=c[w+16>>2];c[J+20>>2]=c[w+20>>2];c[J+24>>2]=c[w+24>>2];c[J+28>>2]=c[w+28>>2];c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];c[u+8>>2]=c[w+8>>2];c[u+12>>2]=c[w+12>>2];$E(x,u);c[u>>2]=c[q>>2];c[u+4>>2]=c[q+4>>2];c[u+8>>2]=c[q+8>>2];c[u+12>>2]=c[q+12>>2];$E(x,u);if(!(c[r>>2]|0))c[r>>2]=106;break}case 10:{e=c[f+16>>2]|0;g=+h[f+8>>3];break}case 15:{d=c[f+8>>2]|0;break}default:{}}f=f+120|0;i=i+1|0}c[b>>2]=c[x>>2];c[b+4>>2]=c[x+4>>2];c[b+8>>2]=c[x+8>>2];c[b+12>>2]=c[x+12>>2];c[b+16>>2]=c[x+16>>2];c[b+20>>2]=c[x+20>>2];c[b+24>>2]=c[x+24>>2];c[b+28>>2]=c[x+28>>2]}l=D;return}function $E(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+h[b>>3];d=a+16|0;if(c>+h[d>>3])h[d>>3]=c;if(c<+h[a>>3])h[a>>3]=c;c=+h[b+8>>3];b=a+24|0;if(c>+h[b>>3])h[b>>3]=c;b=a+8|0;if(c<+h[b>>3])h[b>>3]=c;return}function aF(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+48|0;k=r+32|0;n=r;f=+h[b>>3];o=n+16|0;h[o>>3]=f;h[n>>3]=f;f=+h[b+8>>3];p=n+24|0;h[p>>3]=f;m=n+8|0;h[m>>3]=f;j=1;while(1){if((j|0)>=(d|0))break;i=b+24|0;f=+h[i>>3];if(!(f<+h[n>>3])){if(f>+h[o>>3]){g=o;q=5}}else{g=n;q=5}if((q|0)==5){q=0;h[g>>3]=f}f=+h[b+32>>3];if(!(f<+h[m>>3])){if(f>+h[p>>3]){b=o;q=8}}else{b=n;q=8}if((q|0)==8){q=0;h[b+8>>3]=f}j=j+1|0;b=i}c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];c[k+12>>2]=c[n+12>>2];$E(e,k);c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];c[k+8>>2]=c[o+8>>2];c[k+12>>2]=c[o+12>>2];$E(e,k);c[a>>2]=c[n>>2];c[a+4>>2]=c[n+4>>2];c[a+8>>2]=c[n+8>>2];c[a+12>>2]=c[n+12>>2];c[a+16>>2]=c[n+16>>2];c[a+20>>2]=c[n+20>>2];c[a+24>>2]=c[n+24>>2];c[a+28>>2]=c[n+28>>2];l=r;return}function bF(b,c,d,e){b=b|0;c=+c;d=+d;e=e|0;var f=0.0,g=0,i=0,j=0,k=0.0,m=0,n=0;n=l;l=l+16|0;i=n+8|0;j=n;f=+h[e+32>>3];k=+h[e+40>>3];switch(a[e+48>>0]|0){case 108:{h[i>>3]=c;f=f+c;g=j;m=5;break}case 110:{f=f*.5;h[i>>3]=c-f;f=f+c;g=j;m=5;break}case 114:{h[j>>3]=c;f=c-f;g=i;m=5;break}default:{c=0.0;f=0.0}}if((m|0)==5){h[g>>3]=f;c=+h[i>>3];f=+h[j>>3]}d=+h[e+16>>3]+d;h[b>>3]=c;h[b+8>>3]=d-k;h[b+16>>3]=f;h[b+24>>3]=d;l=n;return}function cF(a){a=a|0;if((c[a>>2]|0)==7)mH(c[a+112>>2]|0,1);return}function dF(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0.0,j=0,k=0,m=0,n=0.0;m=l;l=l+16|0;k=m;j=c[b+152>>2]|0;n=+h[b+432>>3];i=+h[b+352>>3]*.013888888888888888;f=i*n;h[b+488>>3]=f;g=+h[b+440>>3];i=i*g;h[b+496>>3]=i;h[b+520>>3]=n*.013888888888888888;e=b+528|0;h[e>>3]=g*.013888888888888888;if(j&4096|c[46369]|0)h[e>>3]=g*-.013888888888888888;e=(c[b+360>>2]|0)==0;n=+((c[b+448>>2]|0)>>>0);g=+((c[b+452>>2]|0)>>>0);h[b+368>>3]=(e?n:g)/f;h[b+376>>3]=(e?g:n)/i;cP(b,NL(d,nx(d,0,98496,0)|0,191979)|0);c[b+160>>2]=0;eF(b,d);if(j&2|0)fF(b,d);e=Sy(d)|0;while(1){if(!e)break;a[(c[e+16>>2]|0)+116>>0]=0;e=Ty(d,e)|0}gF(b,k);while(1){if(!((hF(b)|0)<<24>>24))break;if((iF(b)|0)>1)DO(b);jF(b);while(1){if(!((kF(b)|0)<<24>>24))break;lF(b,d);mF(b)}if((iF(b)|0)>1)EO(b);nF(b,k)}oF(b);l=m;return}function eF(a,b){a=a|0;b=b|0;var d=0;d=NE(a)|0;c[d+4>>2]=0;c[d+8>>2]=b;c[d+12>>2]=0;nG(a,c[(c[b+16>>2]|0)+12>>2]|0,b);zO(a,b);return}function fF(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;WO(b,131718);d=xx(c,137895)|0;if(d|0?a[d>>0]|0:0)WO(b,d);d=xx(c,98420)|0;if(d|0?a[d>>0]|0:0)UO(b,d);zG(b,c);g=Sy(c)|0;while(1){if(!g)break;d=xx(g,137741)|0;if(d|0?a[d>>0]|0:0)UO(b,d);d=xx(g,134647)|0;if(d|0?a[d>>0]|0:0)WO(b,d);d=xx(g,98392)|0;do if(d|0?a[d>>0]|0:0){if(!(A$(d,58)|0)){UO(b,d);break}e=n1(d)|0;d=e;while(1){d=k1(d,104958)|0;if(!d)break;if(!(a[d>>0]|0)){d=0;continue}UO(b,d);d=0}D_(e)}while(0);d=xx(g,98420)|0;if(d|0?a[d>>0]|0:0)UO(b,d);f=Ex(c,g)|0;while(1){if(!f)break;d=xx(f,137741)|0;do if(d|0?a[d>>0]|0:0){if(!(A$(d,58)|0)){UO(b,d);break}e=n1(d)|0;d=e;while(1){d=k1(d,104958)|0;if(!d)break;if(!(a[d>>0]|0)){d=0;continue}UO(b,d);d=0}D_(e)}while(0);d=xx(f,98420)|0;if(d|0?a[d>>0]|0:0)UO(b,d);f=Gx(c,f)|0}g=Ty(c,g)|0}return}function gF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;g=i;h=c[a>>2]|0;d=c[h+312>>2]|0;f=a+156|0;c[f>>2]=d;h=c[h+316>>2]|0;if(!h)if((d|0)>1?(c[a+152>>2]&64|0)==0:0){c[e>>2]=c[a+52>>2];Pw(0,97541,e)|0;c[f>>2]=1;e=1;d=0}else{e=1;d=0}else{d=h+4|0;if((c[h>>2]|0)>1?(c[a+152>>2]&64|0)==0:0){c[g>>2]=c[a+52>>2];Pw(0,97541,g)|0;c[h+8>>2]=(c[f>>2]|0)+1}e=c[d>>2]|0;d=h+8|0}c[a+160>>2]=e;c[b>>2]=d;l=i;return}function hF(a){a=a|0;return (c[a+160>>2]|0)<=(c[a+156>>2]|0)|0}function iF(a){a=a|0;var b=0;b=c[(c[a>>2]|0)+316>>2]|0;return c[((b|0)==0?a+156|0:b)>>2]|0}function jF(a){a=a|0;var b=0,d=0;d=a+172|0;b=c[d+4>>2]|0;a=a+196|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function kF(a){a=a|0;var b=0,d=0;d=c[a+196>>2]|0;if(((d|0)>-1?(d|0)<(c[a+164>>2]|0):0)?(b=c[a+200>>2]|0,(b|0)>-1):0)a=(b|0)<(c[a+168>>2]|0)&1;else a=0;return a|0}function lF(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+176|0;k=p;f=p+48|0;m=p+32|0;n=c[d+16>>2]|0;o=c[d+152>>2]|0;if((c[d+160>>2]|0)<=1?(c[d+196>>2]|0)<=0:0)h=0;else{Tw(m,128,f);g=n+212|0;h=c[g>>2]|0;RE(d,m);Ww(m,h)|0;i=m+4|0;f=c[i>>2]|0;if(f>>>0>=(c[m+8>>2]|0)>>>0){Uw(m,1)|0;f=c[i>>2]|0}a[f>>0]=0;f=c[m>>2]|0;c[i>>2]=f;c[g>>2]=f}qQ(xx(e,97006)|0);qF(d);BO(d);UO(d,134232);WO(d,131718);do if(o&4259840|0){if((c[n+208>>2]|0)==0?(b[n+260>>1]&1)==0:0)break;if(o&655360){i=o&131072;c[n+264>>2]=i>>>16^2;f=uH((i>>>12^32)+32|0)|0;g=d+288|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];g=f+16|0;q=d+304|0;c[g>>2]=c[q>>2];c[g+4>>2]=c[q+4>>2];c[g+8>>2]=c[q+8>>2];c[g+12>>2]=c[q+12>>2];if(!i){WG(f);g=4}else g=2}else{f=0;g=0}if(!(o&8192))yO(d,f,f,g)|0;c[n+272>>2]=f;c[n+268>>2]=g}while(0);if(o&32768|0?(j=c[(c[e+16>>2]|0)+12>>2]|0,j|0):0)c[n+192>>2]=c[j>>2];g=(o&4|0)!=0;do if(!g){f=n+208|0;if((c[f>>2]|0)==0?(b[n+260>>1]&1)==0:0)break;q=d+256|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];c[k+12>>2]=c[q+12>>2];c[k+16>>2]=c[q+16>>2];c[k+20>>2]=c[q+20>>2];c[k+24>>2]=c[q+24>>2];c[k+28>>2]=c[q+28>>2];XE(d,k);PO(d,c[f>>2]|0,c[n+228>>2]|0,c[n+244>>2]|0,c[n+212>>2]|0)}while(0);rF(d,e);f=c[(c[e+16>>2]|0)+12>>2]|0;if(f|0)oH(d,4,f);do if(!g){if((c[n+208>>2]|0)==0?(b[n+260>>1]&1)==0:0)break;QO(d)}while(0);sF(d,e,o);CO(d);if(h|0){Xw(m);c[n+212>>2]=h}l=p;return}function mF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;d=h+24|0;b=h+16|0;j=h+8|0;f=h;g=a+196|0;i=a+188|0;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[d>>2]=c[i>>2];c[d+4>>2]=c[i+4>>2];pF(j,b,d);i=c[j+4>>2]|0;e=g;c[e>>2]=c[j>>2];c[e+4>>2]=i;if(!((kF(a)|0)<<24>>24)){e=a+180|0;if(!(c[a+184>>2]|0))c[a+200>>2]=c[a+176>>2];else c[g>>2]=c[a+172>>2];c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];pF(f,b,d);i=c[f+4>>2]|0;j=g;c[j>>2]=c[f>>2];c[j+4>>2]=i}l=h;return}function nF(a,b){a=a|0;b=b|0;var d=0;d=c[b>>2]|0;if(!d){d=a+160|0;c[d>>2]=(c[d>>2]|0)+1}else{c[a+160>>2]=c[d>>2];c[b>>2]=d+4}return}function oF(a){a=a|0;AO(a);OE(a);return}function pF(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(c[d+4>>2]|0)+(c[b+4>>2]|0)|0;c[a>>2]=(c[d>>2]|0)+(c[b>>2]|0);c[a+4>>2]=e;return}function qF(a){a=a|0;var b=0.0,d=0.0,e=0.0,f=0,g=0.0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+48|0;n=t+32|0;f=t+24|0;j=t+8|0;k=t+16|0;m=t;r=a+196|0;q=c[r>>2]|0;r=c[r+4>>2]|0;p=f;c[p>>2]=q;c[p+4>>2]=r;p=a+164|0;i=c[p>>2]|0;p=c[p+4>>2]|0;s=j;c[s>>2]=i;c[s+4>>2]=p;s=a+360|0;if(!(c[s>>2]|0)){k=q;j=r}else{c[n>>2]=c[f>>2];c[n+4>>2]=c[f+4>>2];yG(k,n);r=k;k=c[r>>2]|0;r=c[r+4>>2]|0;p=f;c[p>>2]=k;c[p+4>>2]=r;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];yG(m,n);p=m;i=c[p>>2]|0;p=c[p+4>>2]|0;c[j>>2]=i;c[j+4>>2]=p;j=r}d=+h[a+320>>3];g=d*+(k|0)-+h[a+240>>3];h[a+288>>3]=g;e=+h[a+328>>3];o=e*+(j|0)-+h[a+248>>3];h[a+296>>3]=o;h[a+304>>3]=d+g;h[a+312>>3]=e+o;f=a+472|0;if(!(c[(c[a+12>>2]|0)+28>>2]|0)){r=a+456|0;c[f>>2]=c[r>>2];c[f+4>>2]=c[r+4>>2];c[f+8>>2]=c[r+8>>2];c[f+12>>2]=c[r+12>>2]}else{q=a+456|0;c[f>>2]=c[((c[f>>2]|0)<(c[q>>2]|0)?f:q)>>2];r=a+476|0;c[r>>2]=c[((c[r>>2]|0)<(c[a+460>>2]|0)?f:q)+4>>2];r=a+480|0;c[r>>2]=c[((c[r>>2]|0)>(c[a+464>>2]|0)?f:q)+8>>2];r=a+484|0;c[r>>2]=c[((c[r>>2]|0)>(c[a+468>>2]|0)?f:q)+12>>2]}m=c[a+152>>2]|0;b=+h[a+336>>3];if(!(m&128)){b=(+(k|0)-+(i|0)*.5)*d+b;h[a+256>>3]=b;g=(+(j|0)-+(p|0)*.5)*e+ +h[a+344>>3];o=g;d=d+b;g=g+e}else{d=+h[a+368>>3]*.5;e=b-d;h[a+256>>3]=e;g=+h[a+344>>3];u=+h[a+376>>3]*.5;o=g-u;d=d+b;g=u+g;b=e}h[a+264>>3]=o;h[a+272>>3]=d;h[a+280>>3]=g;if(!(c[s>>2]|0)){e=+h[a+352>>3];h[a+504>>3]=+h[a+384>>3]/e-b;if(!(m&4096|c[46369])){d=+h[a+392>>3]/e;b=o}else{d=-g;b=+h[a+392>>3]/e}h[a+512>>3]=d-b}else{f=a+384|0;e=+h[a+352>>3];h[a+512>>3]=-g-+h[a+392>>3]/e;if(!(m&4096|c[46369]))d=+h[f>>3]/e;else{d=-d;b=+h[f>>3]/e}h[a+504>>3]=d-b}l=t;return}function rF(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;q=s;o=s+40|0;p=s+36|0;r=s+32|0;e=xx(d,137895)|0;if(!e){j=1;e=134116}else{i=(a[e>>0]|0)==0;j=i&1;e=i?134116:e}h=c[b+152>>2]|0;i=(a[e>>0]|0)==116;if(!(h&256))if(i){m=(b$(e,134297)|0)==0;k=m?134116:e;m=m?1:j;n=8}else{k=e;m=j;n=8}else if(!(i?!(b$(e,134297)|0):0)){k=e;m=j;n=8}if((n|0)==8?!((m|0)!=0&(h&33554432|0)!=0):0)if(!((uG(k,o,p)|0)<<24>>24)){WO(b,k);UO(b,134297);r=b+256|0;c[q>>2]=c[r>>2];c[q+4>>2]=c[r+4>>2];c[q+8>>2]=c[r+8>>2];c[q+12>>2]=c[r+12>>2];c[q+16>>2]=c[r+16>>2];c[q+20>>2]=c[r+20>>2];c[q+24>>2]=c[r+24>>2];c[q+28>>2]=c[r+28>>2];$O(b,q,1)}else{c[r>>2]=0;i=c[o>>2]|0;WO(b,i);UO(b,134297);tG(d,r)|0;e=c[o+4>>2]|0;h=KL(d,c[46373]|0,0,0)|0;f=+g[p>>2];if(!e)XO(b,134232,h,f);else XO(b,e,h,f);r=(c[r>>2]|0)>>>1&1|2;p=b+256|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];c[q+16>>2]=c[p+16>>2];c[q+20>>2]=c[p+20>>2];c[q+24>>2]=c[p+24>>2];c[q+28>>2]=c[p+28>>2];$O(b,q,r);D_(i)}e=c[(c[(c[d+16>>2]|0)+8>>2]|0)+88>>2]|0;if(e|0)wG(b,e);l=s;return}function sF(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=(c[a>>2]|0)+28|0;c[g>>2]=(c[g>>2]|0)+1;g=(d&4|0)!=0;if(!g)tF(a,b,d);a:do if(!(d&1)){if(d&16|0){JO(a);f=Sy(b)|0;while(1){if(!f)break;e=Ex(b,f)|0;while(1){if(!e)break;vF(a,e);e=Gx(b,e)|0}f=Ty(b,f)|0}KO(a);HO(a);e=Sy(b)|0;while(1){if(!e)break;uF(a,e);e=Ty(b,e)|0}IO(a);break}if(!(d&8)){f=Sy(b)|0;while(1){if(!f)break a;uF(a,f);e=Ex(b,f)|0;while(1){if(!e)break;uF(a,c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0);vF(a,e);e=Gx(b,e)|0}f=Ty(b,f)|0}}HO(a);e=Sy(b)|0;while(1){if(!e)break;if((wF(b,e)|0)<<24>>24)uF(a,e);e=Ty(b,e)|0}IO(a);JO(a);f=Sy(b)|0;while(1){if(!f)break;e=Ex(b,f)|0;while(1){if(!e)break;if((xF(b,e)|0)<<24>>24)vF(a,e);e=Gx(b,e)|0}f=Ty(b,f)|0}KO(a)}else{HO(a);e=Sy(b)|0;while(1){if(!e)break;uF(a,e);e=Ty(b,e)|0}IO(a);JO(a);f=Sy(b)|0;while(1){if(!f)break;e=Ex(b,f)|0;while(1){if(!e)break;vF(a,e);e=Gx(b,e)|0}f=Ty(b,f)|0}KO(a)}while(0);if(g)tF(a,b,d);return}function tF(e,f,i){e=e|0;f=f|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;P=l;l=l+128|0;w=P+72|0;N=P+64|0;H=P+112|0;I=P;J=P+104|0;K=f+16|0;L=(i&4|0)!=0;M=e+16|0;x=I+32|0;y=I+16|0;A=I+8|0;B=I+24|0;C=I+48|0;D=I+40|0;E=I+56|0;F=(i&8|0)==0;G=J+4|0;v=1;while(1){j=c[K>>2]|0;if((v|0)>(c[j+180>>2]|0))break;u=c[(c[j+184>>2]|0)+(v<<2)>>2]|0;if((rG(e,u)|0)<<24>>24){if(L)tF(e,u,i);sG(e,u);r=c[M>>2]|0;s=r+208|0;if(!(c[s>>2]|0))t=(b[r+260>>1]&1)!=0;else t=1;qQ(xx(u,97006)|0);if(!(L|t^1)){q=(c[u+16>>2]|0)+16|0;c[w>>2]=c[q>>2];c[w+4>>2]=c[q+4>>2];c[w+8>>2]=c[q+8>>2];c[w+12>>2]=c[q+12>>2];c[w+16>>2]=c[q+16>>2];c[w+20>>2]=c[q+20>>2];c[w+24>>2]=c[q+24>>2];c[w+28>>2]=c[q+28>>2];XE(e,w);PO(e,c[s>>2]|0,c[r+228>>2]|0,c[r+244>>2]|0,c[r+212>>2]|0)}c[H>>2]=0;j=tG(u,H)|0;if(!j)p=0;else{YO(e,j);p=c[H>>2]&1}q=u+16|0;j=d[(c[q>>2]|0)+112>>0]|0;do if(!(j&1)){if(j&2|0){j=OL(u,0,103230)|0;k=OL(u,0,103238)|0;O=29;break}if(j&8|0){j=OL(u,0,103246)|0;k=OL(u,0,103254)|0;O=29;break}if(j&4|0){j=OL(u,0,103262)|0;k=OL(u,0,103270)|0;O=29;break}j=xx(u,137741)|0;if(!j)k=0;else k=(a[j>>0]|0)==0?0:j;j=xx(u,134647)|0;if(!j)j=k;else j=(a[j>>0]|0)==0?k:j;m=xx(u,98392)|0;if(m)k=(a[m>>0]|0)==0?k:m;if(!((p|0)!=0&(k|0)!=0)){m=xx(u,137895)|0;if(m|0?a[m>>0]|0:0){k=m;O=29;break}j=(j|0)==0?134232:j;n=(k|0)==0?131718:k;c[J>>2]=0;if(!p)k=0;else O=31}else O=29}else{j=OL(u,0,103214)|0;k=OL(u,0,103222)|0;O=29}while(0);if((O|0)==29){c[J>>2]=0;j=(j|0)==0?134232:j;n=(k|0)==0?131718:k;O=31}if((O|0)==31){O=0;if(!((uG(n,J,w)|0)<<24>>24)){WO(e,n);k=1}else{WO(e,c[J>>2]|0);k=c[G>>2]|0;m=KL(u,c[46373]|0,0,0)|0;o=+g[w>>2];if(!k)XO(e,134232,m,o);else XO(e,k,m,o);k=(c[H>>2]|0)>>>1&1|2}}m=c[46372]|0;if((m|0?(z=yx(u,m)|0,z|0):0)?a[z>>0]|0:0)fP(e,+LL(u,c[46372]|0,1.0,0.0));p=c[H>>2]|0;do if(p&4){m=KL(u,c[46371]|0,1,0)|0;if(m|k|0){n=c[q>>2]|0;Q=n+16|0;c[I>>2]=c[Q>>2];c[I+4>>2]=c[Q+4>>2];c[I+8>>2]=c[Q+8>>2];c[I+12>>2]=c[Q+12>>2];n=n+32|0;c[x>>2]=c[n>>2];c[x+4>>2]=c[n+4>>2];c[x+8>>2]=c[n+8>>2];c[x+12>>2]=c[n+12>>2];h[y>>3]=+h[x>>3];h[B>>3]=+h[A>>3];h[C>>3]=+h[I>>3];h[E>>3]=+h[D>>3];if(!m)UO(e,134297);else UO(e,j);EJ(e,I,4,p,k)}}else{if(!(p&64)){if(KL(u,c[46371]|0,1,0)|0){UO(e,j);Q=(c[q>>2]|0)+16|0;c[w>>2]=c[Q>>2];c[w+4>>2]=c[Q+4>>2];c[w+8>>2]=c[Q+8>>2];c[w+12>>2]=c[Q+12>>2];c[w+16>>2]=c[Q+16>>2];c[w+20>>2]=c[Q+20>>2];c[w+24>>2]=c[Q+24>>2];c[w+28>>2]=c[Q+28>>2];$O(e,w,k);break}if(!k)break;UO(e,134297);Q=(c[q>>2]|0)+16|0;c[w>>2]=c[Q>>2];c[w+4>>2]=c[Q+4>>2];c[w+8>>2]=c[Q+8>>2];c[w+12>>2]=c[Q+12>>2];c[w+16>>2]=c[Q+16>>2];c[w+20>>2]=c[Q+20>>2];c[w+24>>2]=c[Q+24>>2];c[w+28>>2]=c[Q+28>>2];$O(e,w,k);break}Q=c[q>>2]|0;p=Q+16|0;c[I>>2]=c[p>>2];c[I+4>>2]=c[p+4>>2];c[I+8>>2]=c[p+8>>2];c[I+12>>2]=c[p+12>>2];Q=Q+32|0;c[x>>2]=c[Q>>2];c[x+4>>2]=c[Q+4>>2];c[x+8>>2]=c[Q+8>>2];c[x+12>>2]=c[Q+12>>2];h[y>>3]=+h[x>>3];h[B>>3]=+h[A>>3];h[C>>3]=+h[I>>3];h[E>>3]=+h[D>>3];if(!(KL(u,c[46371]|0,1,0)|0))UO(e,134297);else UO(e,j);if((WE(e,I,n,0)|0)>1){c[N>>2]=ry(u)|0;Pw(3,97374,N)|0}Q=(c[q>>2]|0)+16|0;c[w>>2]=c[Q>>2];c[w+4>>2]=c[Q+4>>2];c[w+8>>2]=c[Q+8>>2];c[w+12>>2]=c[Q+12>>2];c[w+16>>2]=c[Q+16>>2];c[w+20>>2]=c[Q+20>>2];c[w+24>>2]=c[Q+24>>2];c[w+28>>2]=c[Q+28>>2];$O(e,w,0)}while(0);D_(c[J>>2]|0);j=c[(c[q>>2]|0)+12>>2]|0;if(j|0)oH(e,5,j);if(t){if(L){Q=(c[q>>2]|0)+16|0;c[w>>2]=c[Q>>2];c[w+4>>2]=c[Q+4>>2];c[w+8>>2]=c[Q+8>>2];c[w+12>>2]=c[Q+12>>2];c[w+16>>2]=c[Q+16>>2];c[w+20>>2]=c[Q+20>>2];c[w+24>>2]=c[Q+24>>2];c[w+28>>2]=c[Q+28>>2];XE(e,w);PO(e,c[s>>2]|0,c[r+228>>2]|0,c[r+244>>2]|0,c[r+212>>2]|0)}QO(e)}a:do if(!F){k=Sy(u)|0;while(1){if(!k)break a;uF(e,k);j=Ex(u,k)|0;while(1){if(!j)break;vF(e,j);j=Gx(u,j)|0}k=Ty(u,k)|0}}while(0);vG(e,f);if(!L)tF(e,u,i)}v=v+1|0}l=P;return}function uF(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;e=j;h=c[b>>2]|0;i=d+16|0;a:do if(((c[(c[i>>2]|0)+8>>2]|0?(jG(b,ez(d)|0,d)|0)<<24>>24:0)?(k=b+256|0,c[e>>2]=c[k>>2],c[e+4>>2]=c[k+4>>2],c[e+8>>2]=c[k+8>>2],c[e+12>>2]=c[k+12>>2],c[e+16>>2]=c[k+16>>2],c[e+20>>2]=c[k+20>>2],c[e+24>>2]=c[k+24>>2],c[e+28>>2]=c[k+28>>2],(kG(d,e)|0)<<24>>24):0)?(f=(c[i>>2]|0)+116|0,g=c[h+28>>2]|0,(g|0)!=(a[f>>0]|0)):0){a[f>>0]=g;cP(b,ry(d)|0);e=NL(d,c[46399]|0,191979)|0;if(a[e>>0]|0)cP(b,e);e=NL(d,c[46387]|0,191979)|0;b:do if(a[e>>0]|0){AF(e)|0;e=185144;while(1){f=e;e=e+4|0;f=c[f>>2]|0;if(!f)break b;if((a[f>>0]|0)!=105)continue;if(!(b$(f,131253)|0))break a}}while(0);lG(b,d);ub[c[(c[(c[(c[i>>2]|0)+8>>2]|0)+4>>2]|0)+20>>2]&63](b,d);e=c[(c[i>>2]|0)+108>>2]|0;if(e|0?a[e+81>>0]|0:0)oH(b,10,e);mG(b)}while(0);l=j;return}function vF(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;g=h;e=b+256|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];c[g+16>>2]=c[e+16>>2];c[g+20>>2]=c[e+20>>2];c[g+24>>2]=c[e+24>>2];c[g+28>>2]=c[e+28>>2];a:do if((yF(d,g)|0)<<24>>24?(f=d+-48|0,(zF(b,d)|0)<<24>>24):0){i=d+48|0;e=W_(ry(c[((c[d>>2]&3|0)==3?d:i)+40>>2]|0)|0)|0;e=C_(e+3+(W_(ry(c[((c[d>>2]&3|0)==2?d:f)+40>>2]|0)|0)|0)|0)|0;b0(e,ry(c[((c[d>>2]&3|0)==3?d:i)+40>>2]|0)|0)|0;i=(ey(ez(c[((c[d>>2]&3|0)==2?d:f)+40>>2]|0)|0)|0)==0;g=e+(W_(e)|0)|0;if(i){a[g>>0]=a[138665]|0;a[g+1>>0]=a[138666]|0;a[g+2>>0]=a[138667]|0}else{a[g>>0]=a[134656]|0;a[g+1>>0]=a[134657]|0;a[g+2>>0]=a[134658]|0}p1(e,ry(c[((c[d>>2]&3|0)==2?d:f)+40>>2]|0)|0)|0;cP(b,e);D_(e);e=NL(d,c[46421]|0,191979)|0;if(a[e>>0]|0)cP(b,e);e=NL(d,c[46415]|0,191979)|0;b:do if(!(a[e>>0]|0))e=0;else{AF(e)|0;e=185144;while(1){f=e;e=e+4|0;f=c[f>>2]|0;if(!f){e=185144;break b}if((a[f>>0]|0)!=105)continue;if(!(b$(f,131253)|0))break a}}while(0);BF(b,d,e);CF(b,d,e);DF(b)}while(0);l=h;return}function wF(a,b){a=a|0;b=b|0;var d=0,e=0;d=a+16|0;a=1;while(1){e=c[d>>2]|0;if((a|0)>(c[e+180>>2]|0)){a=1;break}if(!(oz(c[(c[e+184>>2]|0)+(a<<2)>>2]|0,b)|0))a=a+1|0;else{a=0;break}}return a|0}function xF(a,b){a=a|0;b=b|0;var d=0,e=0;d=a+16|0;a=1;while(1){e=c[d>>2]|0;if((a|0)>(c[e+180>>2]|0)){a=1;break}if(!(oz(c[(c[e+184>>2]|0)+(a<<2)>>2]|0,b)|0))a=a+1|0;else{a=0;break}}return a|0}function yF(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;i=j+32|0;f=j;g=b+16|0;b=c[g>>2]|0;e=c[b+8>>2]|0;if((e|0)!=0?(e=e+8|0,c[f>>2]=c[e>>2],c[f+4>>2]=c[e+4>>2],c[f+8>>2]=c[e+8>>2],c[f+12>>2]=c[e+12>>2],c[f+16>>2]=c[e+16>>2],c[f+20>>2]=c[e+20>>2],c[f+24>>2]=c[e+24>>2],c[f+28>>2]=c[e+28>>2],c[i>>2]=c[d>>2],c[i+4>>2]=c[d+4>>2],c[i+8>>2]=c[d+8>>2],c[i+12>>2]=c[d+12>>2],c[i+16>>2]=c[d+16>>2],c[i+20>>2]=c[d+20>>2],c[i+24>>2]=c[d+24>>2],c[i+28>>2]=c[d+28>>2],(iG(f,i)|0)!=0):0)b=1;else h=3;do if((h|0)==3){e=c[b+96>>2]|0;if(e){c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[i+12>>2]=c[d+12>>2];c[i+16>>2]=c[d+16>>2];c[i+20>>2]=c[d+20>>2];c[i+24>>2]=c[d+24>>2];c[i+28>>2]=c[d+28>>2];if((VM(e,i)|0)<<24>>24){b=1;break}b=c[g>>2]|0}b=c[b+108>>2]|0;if((b|0?a[b+81>>0]|0:0)?(c[i>>2]=c[d>>2],c[i+4>>2]=c[d+4>>2],c[i+8>>2]=c[d+8>>2],c[i+12>>2]=c[d+12>>2],c[i+16>>2]=c[d+16>>2],c[i+20>>2]=c[d+20>>2],c[i+24>>2]=c[d+24>>2],c[i+28>>2]=c[d+28>>2],(VM(b,i)|0)<<24>>24):0){b=1;break}b=0}while(0);l=j;return b|0}function zF(b,d){b=b|0;d=d|0;var e=0,f=0;a:do if((c[b+156>>2]|0)>=2?(e=NL(d,c[46420]|0,191979)|0,(eG(b,e)|0)<<24>>24==0):0)if(!(a[e>>0]|0)){e=0;while(1){if((e|0)>=2){e=0;break a}f=(e|0)==1;f=NL(c[((c[d>>2]&3|0)==((f?2:3)|0)?d:d+((f?-1:1)*48|0)|0)+40>>2]|0,c[46397]|0,191979)|0;if(!(a[f>>0]|0)){e=1;break a}if(!((eG(b,f)|0)<<24>>24))e=e+1|0;else{e=1;break}}}else e=0;else e=1;while(0);return e|0}function AF(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+192|0;o=p+24|0;n=p+16|0;m=p+8|0;k=p;g=p+48|0;j=p+32|0;if(a[97256]|0){Tw(185408,128,191746);a[97256]=0}Tw(j,128,p+56|0);c[g>>2]=b;h=j+4|0;i=j+8|0;d=0;e=0;a:while(1){f=d;b:while(1)switch(cG(g,j)|0){case 0:{d=21;break a}case 40:if(!(f<<24>>24)){f=1;continue b}else{d=7;break a}case 41:if(!(f<<24>>24)){d=9;break a}else{f=0;continue b}default:break b}if(!(f<<24>>24)){if((e|0)==63){d=12;break}d=c[46353]|0;if(d>>>0>=(c[46354]|0)>>>0){Uw(185408,1)|0;d=c[46353]|0}c[46353]=d+1;a[d>>0]=0;c[185144+(e<<2)>>2]=c[46353];e=e+1|0}d=c[h>>2]|0;if(d>>>0>=(c[i>>2]|0)>>>0){Uw(j,1)|0;d=c[h>>2]|0}a[d>>0]=0;d=c[j>>2]|0;c[h>>2]=d;Ww(185408,d)|0;d=c[46353]|0;if(d>>>0>=(c[46354]|0)>>>0){Uw(185408,1)|0;d=c[46353]|0}c[46353]=d+1;a[d>>0]=0;d=f}do if((d|0)==7){c[k>>2]=b;Pw(1,97257,k)|0;c[46286]=0;Xw(j)}else if((d|0)==9){c[m>>2]=b;Pw(1,97291,m)|0;c[46286]=0;Xw(j)}else if((d|0)==12){c[n>>2]=b;Pw(0,97319,n)|0;c[46349]=0;Xw(j)}else if((d|0)==21){if(f<<24>>24){c[o>>2]=b;Pw(1,97342,o)|0;c[46286]=0;Xw(j);break}c[185144+(e<<2)>>2]=0;Xw(j);d=c[46353]|0;if(d>>>0>=(c[46354]|0)>>>0){Uw(185408,1)|0;d=c[46353]|0}a[d>>0]=0;c[46353]=c[46352]}while(0);l=p;return 185144}function BF(d,f,g){d=d|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+160|0;y=A+24|0;w=A+20|0;v=A+16|0;o=A;p=A+32|0;x=c[d+152>>2]|0;c[y>>2]=0;c[w>>2]=0;c[v>>2]=0;z=NE(d)|0;c[z+4>>2]=3;c[z+8>>2]=f;c[z+12>>2]=9;t=f+16|0;n=c[(c[t>>2]|0)+96>>2]|0;if((n|0?(a[n+82>>0]|0)==0:0)?(RL(xx(f,97079)|0,0)|0)<<24>>24:0){n=z+260|0;b[n>>1]=b[n>>1]|512}if(g|0?c[(c[t>>2]|0)+8>>2]|0:0)YO(d,g);g=c[46436]|0;if((g|0?(i=yx(f,g)|0,i|0):0)?a[i>>0]|0:0)fP(d,+LL(f,c[46436]|0,1.0,0.0));do if(x&16777216|0){g=f+48|0;if((e[(c[(ez(c[((c[f>>2]&3|0)==3?f:g)+40>>2]|0)|0)+16>>2]|0)+178>>1]|0)>2){m=+h[(c[(c[(c[((c[f>>2]&3|0)==3?f:g)+40>>2]|0)+16>>2]|0)+132>>2]|0)+16>>3]*72.0;h[z+176>>3]=+(~~(m+(m>=0.0?.5:-.5))|0);m=+h[(c[(c[(c[((c[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0)+16>>2]|0)+132>>2]|0)+16>>3]*72.0;h[z+184>>3]=+(~~(m+(m>=0.0?.5:-.5))|0);break}else{n=z+176|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;break}}while(0);if(x&32768|0){n=c[t>>2]|0;g=c[n+96>>2]|0;if(!g)g=c[z+192>>2]|0;else{g=c[g>>2]|0;c[z+192>>2]=g}i=z+196|0;c[i>>2]=g;k=z+204|0;c[k>>2]=g;j=z+200|0;c[j>>2]=g;g=c[n+108>>2]|0;if(g|0)c[i>>2]=c[g>>2];g=c[n+104>>2]|0;if(g|0)c[j>>2]=c[g>>2];g=c[n+100>>2]|0;if(g|0)c[k>>2]=c[g>>2]}if(!(x&65536))j=0;else{Tw(o,128,p);c[z+212>>2]=pH(QE(d,f,o)|0,f)|0;Xw(o);g=xx(f,137973)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0)q=31;else{g=xx(f,108395)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0)q=31;else i=0}if((q|0)==31)i=pH(g,f)|0;g=xx(f,97092)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0)q=36;else q=34;do if((q|0)==34){g=xx(f,97101)|0;if(g|0?a[g>>0]|0:0){q=36;break}if(i|0){g=n1(i)|0;q=39}}while(0);if((q|0)==36){g=pH(g,f)|0;q=39}if((q|0)==39)c[z+208>>2]=g;g=xx(f,97109)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0)q=44;else q=42;do if((q|0)==42){g=xx(f,97119)|0;if(g|0?a[g>>0]|0:0){q=44;break}if(i|0){g=n1(i)|0;q=47}}while(0);if((q|0)==44){g=pH(g,f)|0;q=47}if((q|0)==47)c[z+216>>2]=g;g=xx(f,97128)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0)q=52;else q=50;do if((q|0)==50){g=xx(f,97137)|0;if(g|0?a[g>>0]|0:0){q=52;break}if(i|0)c[z+220>>2]=n1(i)|0}while(0);if((q|0)==52){c[z+220>>2]=pH(g,f)|0;q=z+260|0;b[q>>1]=b[q>>1]|128}g=xx(f,97145)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0)q=59;else q=57;do if((q|0)==57){g=xx(f,97154)|0;if(g|0?a[g>>0]|0:0){q=59;break}if(i|0)c[z+224>>2]=n1(i)|0}while(0);if((q|0)==59){c[z+224>>2]=pH(g,f)|0;q=z+260|0;b[q>>1]=b[q>>1]|256}j=i}do if(x&8388608){g=xx(f,138006)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0)i=pH(g,f)|0;else i=0;g=xx(f,97162)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0){q=z+260|0;b[q>>1]=b[q>>1]|64;g=pH(g,f)|0;q=72}else q=70;if((q|0)==70?i|0:0){g=n1(i)|0;q=72}if((q|0)==72)c[z+244>>2]=g;g=xx(f,97173)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0){g=pH(g,f)|0;q=78}else q=76;if((q|0)==76?i|0:0){g=n1(i)|0;q=78}if((q|0)==78)c[z+248>>2]=g;g=xx(f,97185)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0){c[z+252>>2]=pH(g,f)|0;p=z+260|0;b[p>>1]=b[p>>1]|16}else q=82;if((q|0)==82?i|0:0)c[z+252>>2]=n1(i)|0;g=xx(f,97196)|0;if(g|0?a[g>>0]|0:0){q=z+260|0;b[q>>1]=b[q>>1]|32;c[z+256>>2]=pH(g,f)|0;break}if(i)c[z+256>>2]=n1(i)|0;else i=0}else i=0;while(0);do if(x&4194304|0){g=xx(f,138019)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0)q=94;else q=92;do if((q|0)==92){g=xx(f,97207)|0;if(g|0?a[g>>0]|0:0){q=94;break}g=c[z+192>>2]|0;if(g|0)c[z+228>>2]=n1(g)|0}while(0);if((q|0)==94){p=WF(g,f)|0;c[z+228>>2]=pH(p,f)|0;D_(p);p=z+260|0;b[p>>1]=b[p>>1]|1}g=xx(f,97219)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0){p=WF(g,f)|0;c[z+232>>2]=pH(p,f)|0;D_(p);p=z+260|0;b[p>>1]=b[p>>1]|8}else q=100;if((q|0)==100?(r=c[z+192>>2]|0,r|0):0)c[z+232>>2]=n1(r)|0;g=xx(f,97232)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0){r=WF(g,f)|0;c[z+236>>2]=pH(r,f)|0;D_(r);r=z+260|0;b[r>>1]=b[r>>1]|2}else q=105;if((q|0)==105?(s=c[z+200>>2]|0,s|0):0)c[z+236>>2]=n1(s)|0;g=xx(f,97244)|0;if(g|0?a[g>>0]|0:0){s=WF(g,f)|0;c[z+240>>2]=pH(s,f)|0;D_(s);s=z+260|0;b[s>>1]=b[s>>1]|4;break}g=c[z+204>>2]|0;if(g|0)c[z+240>>2]=n1(g)|0}while(0);D_(j);D_(i);do if(x&4259840|0?(u=c[(c[t>>2]|0)+8>>2]|0,u|0):0){if(!(c[z+208>>2]|0)){if((x&524288|0)==0|(c[z+228>>2]|0)==0)break}else if(!(x&524288))break;m=+h[(c[d+16>>2]|0)+152>>3]*.5;m=m>2.0?m:2.0;i=c[u+4>>2]|0;g=0;while(1){if((g|0)>=(i|0))break;XF(y,w,v,(c[u>>2]|0)+(g*48|0)|0,m);g=g+1|0}j=c[v>>2]|0;c[z+276>>2]=j;k=c[w>>2]|0;c[z+280>>2]=k;if(!(x&8192)){g=0;i=0;while(1){if((i|0)>=(j|0))break;g=(c[k+(i<<2)>>2]|0)+g|0;i=i+1|0}y=c[y>>2]|0;yO(d,y,y,g)|0;g=y}else g=c[y>>2]|0;c[z+284>>2]=g;c[z+264>>2]=2;c[z+272>>2]=g;c[z+268>>2]=c[k>>2]}while(0);NO(d,f);g=c[z+208>>2]|0;if(!((g|0)==0?!(b[z+260>>1]&1):0))PO(d,g,c[z+228>>2]|0,c[z+244>>2]|0,c[z+212>>2]|0);l=A;return}function CF(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0.0,O=0,P=0,Q=0,R=0,S=0;P=l;l=l+240|0;L=P+224|0;K=P+208|0;x=P+128|0;w=P+112|0;O=P+64|0;C=P+48|0;D=P+32|0;E=P+16|0;F=P;G=P+192|0;H=P+176|0;y=P+160|0;B=P+144|0;c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;c[E+12>>2]=0;M=+h[(c[b+16>>2]|0)+152>>3];qQ(xx(e,97006)|0);J=e+16|0;a:do if(c[(c[J>>2]|0)+8>>2]|0){N=+LL(e,c[46418]|0,1.0,0.0);k=NL(e,c[46406]|0,191979)|0;v=(f|0)!=0;b:do if(v){g=f;while(1){i=g;g=g+4|0;i=c[i>>2]|0;if(!i){o=0;break b}if((a[i>>0]|0)!=116)continue;if(!(b$(i,108091)|0)){o=1;break}}}else o=0;while(0);j=k;q=0;i=0;c:while(1){switch(a[j>>0]|0){case 0:break c;case 58:{g=q+1|0;break}case 59:{g=q;i=i+1|0;break}default:g=q}j=j+1|0;q=g}n=(q|0)!=0;if((i|0)!=0&n)if(!(KF(b,e,f,k,q+1|0,N,M)|0))break;else m=134232;else m=k;g=d[(c[J>>2]|0)+115>>0]|0;if(!(g&1))if(!(g&2))if(!(g&8))if(!(g&4)){i=m;j=OL(e,c[46407]|0,m)|0}else{j=103270;g=103262;k=185632;i=185632;p=18}else{j=103254;g=103246;k=185632;i=185632;p=18}else{j=103238;g=103230;k=185632;i=185632;p=18}else{j=103222;g=103214;k=185632;i=185632;p=18}if((p|0)==18){i=c[i>>2]|0;i=OL(e,i,LF(m,g)|0)|0;g=OL(e,c[k>>2]|0,j)|0;if((i|0)==(m|0)){i=m;j=g}else{UO(b,i);j=g}}if((j|0)!=(m|0))WO(b,j);if(o<<24>>24){i=(a[i>>0]|0)==0?134232:i;g=(a[j>>0]|0)==0?134232:j;UO(b,134297);WO(b,i);u=O;r=c[c[(c[J>>2]|0)+8>>2]>>2]|0;s=u+48|0;do{c[u>>2]=c[r>>2];u=u+4|0;r=r+4|0}while((u|0)<(s|0));J=kL(O,MF(e)|0,M,0,0)|0;_O(b,c[J+8>>2]|0,c[J>>2]|0,1);NF(J);UO(b,i);if((g|0)!=(i|0))WO(b,g);g=c[O+8>>2]|0;if(g|0){I=O+16|0;J=c[O>>2]|0;c[K>>2]=c[I>>2];c[K+4>>2]=c[I+4>>2];c[K+8>>2]=c[I+8>>2];c[K+12>>2]=c[I+12>>2];c[L>>2]=c[J>>2];c[L+4>>2]=c[J+4>>2];c[L+8>>2]=c[J+8>>2];c[L+12>>2]=c[J+12>>2];KE(b,2,K,L,N,M,g)}g=c[O+12>>2]|0;if(!g)break;J=O+32|0;O=(c[O>>2]|0)+((c[O+4>>2]|0)+-1<<4)|0;c[K>>2]=c[J>>2];c[K+4>>2]=c[J+4>>2];c[K+8>>2]=c[J+8>>2];c[K+12>>2]=c[J+12>>2];c[L>>2]=c[O>>2];c[L+4>>2]=c[O+4>>2];c[L+8>>2]=c[O+8>>2];c[L+12>>2]=c[O+12>>2];KE(b,3,K,L,N,M,g);break}g=c[J>>2]|0;if(!n){do if(!(a[g+115>>0]&3)){if(a[i>>0]|0){UO(b,i);WO(b,j);break}UO(b,134232);if(!(a[j>>0]|0)){WO(b,134232);break}else{WO(b,j);break}}while(0);k=b+152|0;m=O+4|0;n=O+8|0;o=O+12|0;p=O+32|0;q=O+16|0;j=0;while(1){g=c[(c[J>>2]|0)+8>>2]|0;if((j|0)>=(c[g+4>>2]|0))break a;u=O;r=(c[g>>2]|0)+(j*48|0)|0;s=u+48|0;do{c[u>>2]=c[r>>2];u=u+4|0;r=r+4|0}while((u|0)<(s|0));g=c[O>>2]|0;i=c[m>>2]|0;do if(!(c[k>>2]&16384)){aP(b,g,i,0,0,0);g=c[n>>2]|0;if(g|0){I=c[O>>2]|0;c[K>>2]=c[q>>2];c[K+4>>2]=c[q+4>>2];c[K+8>>2]=c[q+8>>2];c[K+12>>2]=c[q+12>>2];c[L>>2]=c[I>>2];c[L+4>>2]=c[I+4>>2];c[L+8>>2]=c[I+8>>2];c[L+12>>2]=c[I+12>>2];KE(b,2,K,L,N,M,g)}g=c[o>>2]|0;if(g|0){I=(c[O>>2]|0)+((c[m>>2]|0)+-1<<4)|0;c[K>>2]=c[p>>2];c[K+4>>2]=c[p+4>>2];c[K+8>>2]=c[p+8>>2];c[K+12>>2]=c[p+12>>2];c[L>>2]=c[I>>2];c[L+4>>2]=c[I+4>>2];c[L+8>>2]=c[I+8>>2];c[L+12>>2]=c[I+12>>2];KE(b,3,K,L,N,M,g)}if((c[(c[(c[J>>2]|0)+8>>2]|0)+4>>2]|0)>1){if(!(c[n>>2]|0)){if(!(v&(c[o>>2]|0)!=0))break}else if(!v)break;YO(b,f)}}else aP(b,g,i,c[n>>2]|0,c[o>>2]|0,0);while(0);j=j+1|0}}I=c[(c[g+8>>2]|0)+4>>2]|0;A=I*48|0;z=C_(A)|0;A=C_(A)|0;t=+(q+2|0)*.5;v=O+4|0;p=C+8|0;q=D+8|0;e=E+8|0;f=F+8|0;o=0;while(1){if((o|0)>=(I|0))break;u=O;r=(c[c[(c[J>>2]|0)+8>>2]>>2]|0)+(o*48|0)|0;s=u+48|0;do{c[u>>2]=c[r>>2];u=u+4|0;r=r+4|0}while((u|0)<(s|0));g=c[v>>2]|0;c[z+(o*48|0)+4>>2]=g;c[A+(o*48|0)+4>>2]=g;n=g<<4;m=C_(n)|0;c[z+(o*48|0)>>2]=m;n=C_(n)|0;c[A+(o*48|0)>>2]=n;k=c[O>>2]|0;c[F>>2]=c[k>>2];c[F+4>>2]=c[k+4>>2];c[F+8>>2]=c[k+8>>2];c[F+12>>2]=c[k+12>>2];k=0;while(1){if((k|0)>=(g+-1|0))break;c[C>>2]=c[F>>2];c[C+4>>2]=c[F+4>>2];c[C+8>>2]=c[F+8>>2];c[C+12>>2]=c[F+12>>2];g=k+1|0;j=(c[O>>2]|0)+(g<<4)|0;c[D>>2]=c[j>>2];c[D+4>>2]=c[j+4>>2];c[D+8>>2]=c[j+8>>2];c[D+12>>2]=c[j+12>>2];j=m+(k<<4)|0;if(!k){c[K>>2]=c[C>>2];c[K+4>>2]=c[C+4>>2];c[K+8>>2]=c[C+8>>2];c[K+12>>2]=c[C+12>>2];c[L>>2]=c[D>>2];c[L+4>>2]=c[D+4>>2];c[L+8>>2]=c[D+8>>2];c[L+12>>2]=c[D+12>>2];OF(G,K,L);c[j>>2]=c[G>>2];c[j+4>>2]=c[G+4>>2];c[j+8>>2]=c[G+8>>2];c[j+12>>2]=c[G+12>>2]}else{c[K>>2]=c[E>>2];c[K+4>>2]=c[E+4>>2];c[K+8>>2]=c[E+8>>2];c[K+12>>2]=c[E+12>>2];c[L>>2]=c[D>>2];c[L+4>>2]=c[D+4>>2];c[L+8>>2]=c[D+8>>2];c[L+12>>2]=c[D+12>>2];OF(H,K,L);c[j>>2]=c[H>>2];c[j+4>>2]=c[H+4>>2];c[j+8>>2]=c[H+8>>2];c[j+12>>2]=c[H+12>>2]}R=c[O>>2]|0;s=k+2|0;S=R+(s<<4)|0;c[E>>2]=c[S>>2];c[E+4>>2]=c[S+4>>2];c[E+8>>2]=c[S+8>>2];c[E+12>>2]=c[S+12>>2];u=k+3|0;R=R+(u<<4)|0;c[F>>2]=c[R>>2];c[F+4>>2]=c[R+4>>2];c[F+8>>2]=c[R+8>>2];c[F+12>>2]=c[R+12>>2];Q=m+(g<<4)|0;r=m+(s<<4)|0;c[w>>2]=c[C>>2];c[w+4>>2]=c[C+4>>2];c[w+8>>2]=c[C+8>>2];c[w+12>>2]=c[C+12>>2];c[x>>2]=c[D>>2];c[x+4>>2]=c[D+4>>2];c[x+8>>2]=c[D+8>>2];c[x+12>>2]=c[D+12>>2];c[K>>2]=c[S>>2];c[K+4>>2]=c[S+4>>2];c[K+8>>2]=c[S+8>>2];c[K+12>>2]=c[S+12>>2];c[L>>2]=c[R>>2];c[L+4>>2]=c[R+4>>2];c[L+8>>2]=c[R+8>>2];c[L+12>>2]=c[R+12>>2];PF(y,w,x,K,L);c[r>>2]=c[y>>2];c[r+4>>2]=c[y+4>>2];c[r+8>>2]=c[y+8>>2];c[r+12>>2]=c[y+12>>2];c[Q>>2]=c[y>>2];c[Q+4>>2]=c[y+4>>2];c[Q+8>>2]=c[y+8>>2];c[Q+12>>2]=c[y+12>>2];h[n+(k<<4)>>3]=+h[C>>3]-+h[j>>3]*t;h[n+(k<<4)+8>>3]=+h[p>>3]-+h[m+(k<<4)+8>>3]*t;h[n+(g<<4)>>3]=+h[D>>3]-+h[Q>>3]*t;h[n+(g<<4)+8>>3]=+h[q>>3]-+h[m+(g<<4)+8>>3]*t;h[n+(s<<4)>>3]=+h[E>>3]-+h[r>>3]*t;h[n+(s<<4)+8>>3]=+h[e>>3]-+h[m+(s<<4)+8>>3]*t;k=u;g=c[v>>2]|0}S=m+(k<<4)|0;c[K>>2]=c[E>>2];c[K+4>>2]=c[E+4>>2];c[K+8>>2]=c[E+8>>2];c[K+12>>2]=c[E+12>>2];c[L>>2]=c[F>>2];c[L+4>>2]=c[F+4>>2];c[L+8>>2]=c[F+8>>2];c[L+12>>2]=c[F+12>>2];OF(B,K,L);c[S>>2]=c[B>>2];c[S+4>>2]=c[B+4>>2];c[S+8>>2]=c[B+8>>2];c[S+12>>2]=c[B+12>>2];h[n+(k<<4)>>3]=+h[F>>3]-+h[S>>3]*t;h[n+(k<<4)+8>>3]=+h[f>>3]-+h[m+(k<<4)+8>>3]*t;o=o+1|0}s=n1(i)|0;f=0;r=i;g=i;j=i;i=s;while(1){i=k1(i,104958)|0;if(!i)break;e=(a[i>>0]|0)==0?134232:i;if((e|0)!=(j|0))if(!(a[(c[J>>2]|0)+115>>0]&3)){UO(b,e);WO(b,e);j=e}else j=e;m=(f|0)==0;n=f>>>0<2;i=0;while(1){if((i|0)>=(I|0))break;o=c[A+(i*48|0)>>2]|0;p=c[z+(i*48|0)>>2]|0;q=c[A+(i*48|0)+4>>2]|0;k=0;while(1){if((k|0)>=(q|0))break;S=o+(k<<4)|0;h[S>>3]=+h[S>>3]+ +h[p+(k<<4)>>3];S=o+(k<<4)+8|0;h[S>>3]=+h[S>>3]+ +h[p+(k<<4)+8>>3];k=k+1|0}aP(b,o,q,0,0,0);i=i+1|0}f=f+1|0;r=m?e:r;g=n?e:g;i=0}i=c[O+8>>2]|0;if(!i)i=0;else{if(g){if(!(a[(c[J>>2]|0)+115>>0]&3)){UO(b,g);WO(b,g)}}else g=0;R=O+16|0;S=c[O>>2]|0;c[K>>2]=c[R>>2];c[K+4>>2]=c[R+4>>2];c[K+8>>2]=c[R+8>>2];c[K+12>>2]=c[R+12>>2];c[L>>2]=c[S>>2];c[L+4>>2]=c[S+4>>2];c[L+8>>2]=c[S+8>>2];c[L+12>>2]=c[S+12>>2];KE(b,2,K,L,N,M,i);i=g}j=O+12|0;g=c[j>>2]|0;if(g|0){if((i|0)!=(r|0)?(a[(c[J>>2]|0)+115>>0]&3)==0:0){UO(b,r);WO(b,r);g=c[j>>2]|0}R=O+32|0;S=(c[O>>2]|0)+((c[v>>2]|0)+-1<<4)|0;c[K>>2]=c[R>>2];c[K+4>>2]=c[R+4>>2];c[K+8>>2]=c[R+8>>2];c[K+12>>2]=c[R+12>>2];c[L>>2]=c[S>>2];c[L+4>>2]=c[S+4>>2];c[L+8>>2]=c[S+8>>2];c[L+12>>2]=c[S+12>>2];KE(b,3,K,L,N,M,g)}D_(s);g=0;while(1){if((g|0)>=(I|0))break;D_(c[z+(g*48|0)>>2]|0);D_(c[A+(g*48|0)>>2]|0);g=g+1|0}D_(z);D_(A)}while(0);l=P;return}function DF(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;x=l;l=l+64|0;r=x+48|0;u=x+32|0;t=x+16|0;s=x;w=c[a+16>>2]|0;v=c[w+8>>2]|0;q=w+208|0;if(!((c[q>>2]|0)==0?!(b[w+260>>1]&1):0))d=3;a:do if((d|0)==3?(QO(a),p=w+276|0,e=c[p>>2]|0,e|0):0){h=w+280|0;d=c[h>>2]|0;i=w+268|0;j=w+284|0;k=w+272|0;m=w+228|0;n=w+244|0;o=w+212|0;f=c[d>>2]|0;g=1;while(1){if((g|0)>=(e|0))break a;c[i>>2]=c[d+(g<<2)>>2];c[k>>2]=(c[j>>2]|0)+(f<<4);PO(a,c[q>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0);QO(a);y=c[h>>2]|0;f=(c[y+(g<<2)>>2]|0)+f|0;g=g+1|0;e=c[p>>2]|0;d=y}}while(0);c[w+268>>2]=0;c[w+272>>2]=0;q=v+16|0;d=c[q>>2]|0;e=c[d+8>>2]|0;if(!e)f=w+260|0;else{p=c[e>>2]|0;d=c[p>>2]|0;y=c[p+8>>2]|0;o=p+16|0;c[t>>2]=c[o>>2];c[t+4>>2]=c[o+4>>2];c[t+8>>2]=c[o+8>>2];c[t+12>>2]=c[o+12>>2];p=p+32|0;c[s>>2]=c[p>>2];c[s+4>>2]=c[p+4>>2];c[s+8>>2]=c[p+8>>2];c[s+12>>2]=c[p+12>>2];if(!y){c[u>>2]=c[d>>2];c[u+4>>2]=c[d+4>>2];c[u+8>>2]=c[d+8>>2];c[u+12>>2]=c[d+12>>2]}else{c[u>>2]=c[t>>2];c[u+4>>2]=c[t+4>>2];c[u+8>>2]=c[t+8>>2];c[u+12>>2]=c[t+12>>2]}f=w+260|0;p=b[f>>1]|0;o=c[w+220>>2]|0;c[r>>2]=c[u>>2];c[r+4>>2]=c[u+4>>2];c[r+8>>2]=c[u+8>>2];c[r+12>>2]=c[u+12>>2];EF(a,r,(p<<8&65535)<<16>>16>>15&255,o,(p<<14&65535)<<16>>16>>15&255);p=c[(c[q>>2]|0)+8>>2]|0;o=c[p>>2]|0;p=(c[p+4>>2]|0)+-1|0;d=c[o+(p*48|0)>>2]|0;e=c[o+(p*48|0)+4>>2]|0;y=c[o+(p*48|0)+12>>2]|0;n=o+(p*48|0)+16|0;c[t>>2]=c[n>>2];c[t+4>>2]=c[n+4>>2];c[t+8>>2]=c[n+8>>2];c[t+12>>2]=c[n+12>>2];t=o+(p*48|0)+32|0;c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];c[s+8>>2]=c[t+8>>2];c[s+12>>2]=c[t+12>>2];if(!y){y=d+(e+-1<<4)|0;c[u>>2]=c[y>>2];c[u+4>>2]=c[y+4>>2];c[u+8>>2]=c[y+8>>2];c[u+12>>2]=c[y+12>>2]}else{c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];c[u+8>>2]=c[s+8>>2];c[u+12>>2]=c[s+12>>2]}d=b[f>>1]|0;y=c[w+224>>2]|0;c[r>>2]=c[u>>2];c[r+4>>2]=c[u+4>>2];c[r+8>>2]=c[u+8>>2];c[r+12>>2]=c[u+12>>2];EF(a,r,(d<<7&65535)<<16>>16>>15&255,y,(d<<13&65535)<<16>>16>>15&255);d=c[q>>2]|0}e=c[d+96>>2]|0;g=(b[f>>1]<<12&65535)<<16>>16>>15<<16>>16;m=w+216|0;h=c[m>>2]|0;n=w+232|0;i=c[n>>2]|0;o=w+248|0;j=c[o>>2]|0;p=w+212|0;k=c[p>>2]|0;if(!((QL(NL(v,c[46416]|0,134226)|0)|0)<<24>>24))d=0;else d=c[(c[q>>2]|0)+8>>2]|0;FF(a,e,11,g,h,i,j,k,d);j=c[(c[q>>2]|0)+108>>2]|0;k=(b[f>>1]<<12&65535)<<16>>16>>15<<16>>16;i=c[m>>2]|0;h=c[n>>2]|0;e=c[o>>2]|0;g=c[p>>2]|0;if(!((QL(NL(v,c[46416]|0,134226)|0)|0)<<24>>24))d=0;else d=c[(c[q>>2]|0)+8>>2]|0;FF(a,j,11,k,i,h,e,g,d);FF(a,c[(c[q>>2]|0)+100>>2]|0,7,(b[f>>1]<<13&65535)<<16>>16>>15<<16>>16,c[w+224>>2]|0,c[w+240>>2]|0,c[w+256>>2]|0,c[p>>2]|0,0);FF(a,c[(c[q>>2]|0)+104>>2]|0,6,(b[f>>1]<<14&65535)<<16>>16>>15<<16>>16,c[w+220>>2]|0,c[w+236>>2]|0,c[w+252>>2]|0,c[p>>2]|0,0);OO(a);OE(a);l=x;return}function EF(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j;i=c[a+16>>2]|0;if(!(e<<24>>24))f=c[i+208>>2]|0;if(!(g<<24>>24==0?((f|0)==0?(b[i+260>>1]&1)==0:0):0)){c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[h+8>>2]=c[d+8>>2];c[h+12>>2]=c[d+12>>2];JF(a,h)}l=j;return}function FF(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+16|0;o=r;q=c[b+152>>2]|0;if(d|0?a[d+81>>0]|0:0){if(!j)n=0;else{n=uH((W_(j)|0)+11|0)|0;switch(e|0){case 11:{m=105198;break}case 7:{m=98557;break}case 6:{m=98567;break}default:qa(135312,96880,2730,97018)}c[o>>2]=j;c[o+4>>2]=m;Y0(n,97034,o)|0}o=b+16|0;j=(c[o>>2]|0)+12|0;p=c[j>>2]|0;c[j>>2]=e;j=(f|0)!=0|(g|0)!=0;m=(q&4|0)==0;if(j&m){GF(b,d);PO(b,g,h,i,n)}oH(b,e,d);if(k|0)HF(b,d,k);if(j){if(!m){GF(b,d);PO(b,g,h,i,n)}QO(b)}D_(n);c[(c[o>>2]|0)+12>>2]=p}l=r;return}function GF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0;d=c[a+16>>2]|0;e=c[a+152>>2]|0;if(e&4259840|0){f=e&131072;i=f>>>16^2;c[d+264>>2]=i;j=d+268|0;c[j>>2]=i+2;i=d+272|0;D_(c[i>>2]|0);d=uH(c[j>>2]<<4)|0;c[i>>2]=d;i=b+56|0;j=b+24|0;h[d>>3]=+h[i>>3]-+h[j>>3]*.5;g=b+64|0;b=b+32|0;h[d+8>>3]=+h[g>>3]-+h[b>>3]*.5;h[d+16>>3]=+h[j>>3]*.5+ +h[i>>3];h[d+24>>3]=+h[b>>3]*.5+ +h[g>>3];if(!(e&8192))yO(a,d,d,2)|0;if(!f)WG(d)}return}function HF(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+96|0;g=o+80|0;i=o+32|0;j=o+16|0;k=o;f=c[d>>2]|0;while(1){m=a[f>>0]|0;if(!(m<<24>>24))break;if(!(B$(m&255)|0)){n=4;break}else f=f+1|0}if((n|0)==4){p=+h[d+24>>3];m=d+56|0;IF(i,+h[m>>3]+p*.5,+h[d+64>>3]-+h[d+32>>3]*.5);n=i+16|0;IF(j,+h[i>>3]-p,+h[i+8>>3]);c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2];c[n+12>>2]=c[j+12>>2];n=i+32|0;c[g>>2]=c[m>>2];c[g+4>>2]=c[m+4>>2];c[g+8>>2]=c[m+8>>2];c[g+12>>2]=c[m+12>>2];bM(k,e,g);c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[n+8>>2]=c[k+8>>2];c[n+12>>2]=c[k+12>>2];YO(b,c[(c[b>>2]|0)+336>>2]|0);UO(b,c[d+8>>2]|0);bP(b,i,3)}l=o;return}function IF(a,b,c){a=a|0;b=+b;c=+c;h[a>>3]=b;h[a+8>>3]=c;return}function JF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0,i=0.0,j=0,k=0;d=c[a+16>>2]|0;e=c[a+152>>2]|0;if(e&4259840|0){f=e&131072;j=f>>>16^2;c[d+264>>2]=j;k=d+268|0;c[k>>2]=j+2;j=d+272|0;D_(c[j>>2]|0);d=uH(c[k>>2]<<4)|0;c[j>>2]=d;i=+h[b>>3];h[d>>3]=i+-3.0;g=+h[b+8>>3];h[d+8>>3]=g+-3.0;h[d+16>>3]=i+3.0;h[d+24>>3]=g+3.0;if(!(e&8192))yO(a,d,d,2)|0;if(!f)WG(d)}return}function KF(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=+h;i=+i;var j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;J=l;l=l+256|0;D=J+224|0;C=J+208|0;j=J+192|0;F=J+144|0;G=J+96|0;H=J+48|0;E=J;k=J+240|0;e=TE(e,f,k)|0;if((e|0)>1){z=b+48|0;A=ez(c[((c[b>>2]&3|0)==3?b:z)+40>>2]|0)|0;z=ry(c[((c[b>>2]&3|0)==3?b:z)+40>>2]|0)|0;A=(ey(A)|0)!=0;B=ry(c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)|0;c[j>>2]=z;c[j+4>>2]=A?97053:97058;c[j+8>>2]=B;Pw(3,97063,j)|0;if((e|0)==2)e=1;else I=4}else if((e|0)==1)e=1;else I=4;if((I|0)==4){B=b+16|0;r=c[k>>2]|0;s=r+8|0;t=H+4|0;u=F+8|0;v=F+12|0;w=(d|0)!=0;q=(d|0)==0;x=F+32|0;y=F+4|0;z=F+16|0;A=E+4|0;e=0;p=0;while(1){f=c[(c[B>>2]|0)+8>>2]|0;if((p|0)>=(c[f+4>>2]|0))break;j=F;f=(c[f>>2]|0)+(p*48|0)|0;b=j+48|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(b|0));b=1;m=1.0;o=c[s>>2]|0;a:while(1){f=c[o>>2]|0;if(!f)break;k=o+4|0;n=+g[k>>2];do if(n<1.0e-05&n>-1.0e-05)f=b;else{UO(a,f);n=+g[k>>2];m=m-n;e=c[o>>2]|0;if(b|0){UF(F,n,H,E);k=c[H>>2]|0;aP(a,k,c[t>>2]|0,0,0,0);D_(k);if(m<1.0e-05&m>-1.0e-05){I=11;break a}else{f=0;break}}if(m<1.0e-05&m>-1.0e-05){I=13;break a}j=G;f=E;b=j+48|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(b|0));n=+g[k>>2];UF(G,n/(m+n),H,E);D_(c[G>>2]|0);f=c[H>>2]|0;aP(a,f,c[t>>2]|0,0,0,0);D_(f);f=0}while(0);b=f;o=o+12|0}if((I|0)==11){I=0;D_(c[E>>2]|0)}else if((I|0)==13){I=0;o=c[E>>2]|0;aP(a,o,c[A>>2]|0,0,0,0);D_(o)}if(c[u>>2]|0){UO(a,c[c[s>>2]>>2]|0);WO(a,c[c[s>>2]>>2]|0);k=c[F>>2]|0;o=c[u>>2]|0;c[C>>2]=c[z>>2];c[C+4>>2]=c[z+4>>2];c[C+8>>2]=c[z+8>>2];c[C+12>>2]=c[z+12>>2];c[D>>2]=c[k>>2];c[D+4>>2]=c[k+4>>2];c[D+8>>2]=c[k+8>>2];c[D+12>>2]=c[k+12>>2];KE(a,2,C,D,h,i,o)}if(c[v>>2]|0){UO(a,e);WO(a,e);k=(c[F>>2]|0)+((c[y>>2]|0)+-1<<4)|0;o=c[v>>2]|0;c[C>>2]=c[x>>2];c[C+4>>2]=c[x+4>>2];c[C+8>>2]=c[x+8>>2];c[C+12>>2]=c[x+12>>2];c[D>>2]=c[k>>2];c[D+4>>2]=c[k+4>>2];c[D+8>>2]=c[k+8>>2];c[D+12>>2]=c[k+12>>2];KE(a,3,C,D,h,i,o)}do if((c[(c[(c[B>>2]|0)+8>>2]|0)+4>>2]|0)>1){if(!(c[u>>2]|0)){if(!(w&(c[v>>2]|0)!=0))break}else if(q)break;YO(a,d)}while(0);p=p+1|0}UE(r);e=0}l=J;return e|0}function LF(b,d){b=b|0;d=d|0;var e=0,f=0;e=1;a:while(1){switch(a[b>>0]|0){case 0:break a;case 58:{e=e+1|0;break}default:{}}b=b+1|0}f=O((W_(d)|0)+1|0,e)|0;b=f+10|0;if((c[46350]|0)<(f|0)){c[46350]=b;b=F_(c[46351]|0,b)|0;c[46351]=b}else b=c[46351]|0;b0(b,d)|0;while(1){e=e+-1|0;b=c[46351]|0;if(!e)break;f=b+(W_(b)|0)|0;a[f>>0]=58;a[f+1>>0]=0;p1(b,d)|0}return b|0}function MF(b){b=b|0;var d=0,e=0;d=c[46414]|0;a:do if(!d)e=7;else{d=yx(b,d)|0;switch(a[d>>0]|0){case 110:if(!(b$(d,132627)|0)){d=1;break a}else{e=7;break a}case 102:if(!(b$(d,97040)|0)){d=2;break a}else{e=7;break a}case 98:{if(!(b$(d,97048)|0)){d=3;break a}if(!(b$(d,108195)|0)){d=4;break a}else{e=7;break a}}default:{e=7;break a}}}while(0);if((e|0)==7){d=(ey(ez(c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)|0)|0)!=0;d=d?2:1}return d|0}function NF(a){a=a|0;if(a|0){D_(c[a+8>>2]|0);D_(a)}return}function OF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0;e=+h[b>>3]-+h[c>>3];f=+h[b+8>>3]-+h[c+8>>3];d=2.0/+C(+(e*e+.0001+f*f));h[a>>3]=d*f;h[a+8>>3]=-(e*d);return}function PF(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0.0,j=0.0;g=+h[c>>3]-+h[d>>3];i=+h[c+8>>3]-+h[d+8>>3];f=+C(+(i*i+g*g));if(f<.0001){j=+h[b>>3]-+h[e>>3];f=+h[b+8>>3]-+h[e+8>>3];i=f;g=j;f=+C(+(j*j+.0001+f*f))}j=2.0/f;h[a>>3]=i*j;h[a+8>>3]=-(j*g);return}function QF(a,b,c){a=+a;b=+b;c=+c;return +(c*.5*(1.0-a/b))}function RF(a,b,c){a=+a;b=+b;c=+c;return +(c*.5)}function SF(a,b,c){a=+a;b=+b;c=+c;return +(c*.5*(a/b))}function TF(a,b,c){a=+a;b=+b;c=+c;b=a/b;return +((!(b<=.5)?1.0-b:b)*c)}function UF(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0.0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0;p=l;l=l+16|0;o=p;n=c[a+4>>2]|0;j=(n+-1|0)/3|0;if((n+-4|0)>>>0<3){c[d+4>>2]=4;c[d>>2]=uH(64)|0;c[e+4>>2]=4;n=uH(64)|0;c[e>>2]=n;XL(o,c[a>>2]|0,3,b,c[d>>2]|0,n)}else{n=uH(j<<3)|0;g=0;i=c[a>>2]|0;f=0.0;while(1){if((g|0)>=(j|0))break;q=+VF(i);h[n+(g<<3)>>3]=q;g=g+1|0;i=i+48|0;f=q+f}b=f*b;m=0;f=0.0;while(1){if((j|0)<=(m|0))break;f=+h[n+(m<<3)>>3]+f;if(f>=b)break;m=m+1|0}k=m*3|0;g=k+4|0;i=d+4|0;c[i>>2]=g;c[d>>2]=uH(g<<4)|0;g=((j-m|0)*3|0)+1|0;j=e+4|0;c[j>>2]=g;c[e>>2]=uH(g<<4)|0;g=0;while(1){if((g|0)>=(c[i>>2]|0))break;r=(c[d>>2]|0)+(g<<4)|0;s=(c[a>>2]|0)+(g<<4)|0;c[r>>2]=c[s>>2];c[r+4>>2]=c[s+4>>2];c[r+8>>2]=c[s+8>>2];c[r+12>>2]=c[s+12>>2];g=g+1|0}g=g+-4|0;i=0;while(1){if((i|0)>=(c[j>>2]|0))break;s=(c[e>>2]|0)+(i<<4)|0;r=(c[a>>2]|0)+(g<<4)|0;c[s>>2]=c[r>>2];c[s+4>>2]=c[r+4>>2];c[s+8>>2]=c[r+8>>2];c[s+12>>2]=c[r+12>>2];g=g+1|0;i=i+1|0}q=+h[n+(m<<3)>>3];XL(o,(c[a>>2]|0)+(k<<4)|0,3,(b-f+q)/q,(c[d>>2]|0)+(k<<4)|0,c[e>>2]|0);D_(n)}l=p;return}function VF(a){a=a|0;var b=0.0,c=0.0,d=0.0,e=0.0,f=0.0;e=+h[a+16>>3];d=+h[a>>3]-e;f=+h[a+24>>3];b=+h[a+8>>3]-f;d=+C(+(b*b+d*d));b=+h[a+32>>3];e=e-b;c=+h[a+40>>3];f=f-c;d=+C(+(f*f+e*e))+d;b=b-+h[a+48>>3];c=c-+h[a+56>>3];return +(d+ +C(+(c*c+b*b)))}function WF(b,d){b=b|0;d=d|0;d=fz(d)|0;if((a[(c[d+16>>2]|0)+115>>0]|0)==1)d=RM(b)|0;else d=OM(b,d)|0;return bG(d)|0}function XF(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=l;l=l+1664|0;m=q+1600|0;n=q+800|0;o=q;p=vH(24)|0;c[p+16>>2]=1;j=((c[e+4>>2]|0)+-1|0)/3|0;h=0;i=p;while(1){if((h|0)>=(j|0))break;k=h*3|0;g=0;while(1){if((g|0)==4)break;r=m+(g<<4)|0;s=(c[e>>2]|0)+(g+k<<4)|0;c[r>>2]=c[s>>2];c[r+4>>2]=c[s+4>>2];c[r+8>>2]=c[s+8>>2];c[r+12>>2]=c[s+12>>2];g=g+1|0}h=h+1|0;i=YF(m,i)|0}g=0;h=0;i=p;while(1){if(!i){h=p;g=p;break}j=c[i+16>>2]|0;k=n+(g<<4)|0;e=o+(g<<4)|0;ZF(h,i,j,k,e,f);g=g+1|0;if(!((g|0)==50|(j|0)==0)){h=i;i=j;continue}_F(a,b,d,g,n,o);c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[n+8>>2]=c[k+8>>2];c[n+12>>2]=c[k+12>>2];c[o>>2]=c[e>>2];c[o+4>>2]=c[e+4>>2];c[o+8>>2]=c[e+8>>2];c[o+12>>2]=c[e+12>>2];h=i;g=1;i=j}while(1){if(!h)break;s=c[h+16>>2]|0;D_(g);h=s;g=s}l=q;return}function YF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+144|0;f=g+128|0;d=g+64|0;e=g;if(!(ZE(a)|0)){XL(f,a,3,.5,d,e);d=YF(e,YF(d,b)|0)|0}else{d=b+16|0;if((c[d>>2]|0)==1){c[d>>2]=0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];c[b+12>>2]=c[a+12>>2]}d=a+48|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];d=aG(f,b)|0}l=g;return d|0}function ZF(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0;r=l;l=l+96|0;n=r+80|0;m=r+64|0;k=r+48|0;o=r+32|0;p=r+16|0;q=r;c[o>>2]=c[b>>2];c[o+4>>2]=c[b+4>>2];c[o+8>>2]=c[b+8>>2];c[o+12>>2]=c[b+12>>2];do if(a){c[p>>2]=c[a>>2];c[p+4>>2]=c[a+4>>2];c[p+8>>2]=c[a+8>>2];c[p+12>>2]=c[a+12>>2];if(!d){i=+h[o>>3];h[q>>3]=i*2.0-+h[p>>3];j=+h[o+8>>3];h[q+8>>3]=j*2.0-+h[p+8>>3];break}else{c[q>>2]=c[d>>2];c[q+4>>2]=c[d+4>>2];c[q+8>>2]=c[d+8>>2];c[q+12>>2]=c[d+12>>2];i=+h[o>>3];j=+h[o+8>>3];break}}else{c[q>>2]=c[d>>2];c[q+4>>2]=c[d+4>>2];c[q+8>>2]=c[d+8>>2];c[q+12>>2]=c[d+12>>2];i=+h[o>>3];h[p>>3]=i*2.0-+h[q>>3];j=+h[o+8>>3];h[p+8>>3]=j*2.0-+h[q+8>>3]}while(0);c[k>>2]=c[p>>2];c[k+4>>2]=c[p+4>>2];c[k+8>>2]=c[p+8>>2];c[k+12>>2]=c[p+12>>2];c[m>>2]=c[o>>2];c[m+4>>2]=c[o+4>>2];c[m+8>>2]=c[o+8>>2];c[m+12>>2]=c[o+12>>2];c[n>>2]=c[q>>2];c[n+4>>2]=c[q+4>>2];c[n+8>>2]=c[q+8>>2];c[n+12>>2]=c[q+12>>2];t=+$F(k,m,n);s=+E(+t)*g;g=+F(+t)*g;h[e>>3]=i+s;h[e+8>>3]=j+g;h[f>>3]=i-s;h[f+8>>3]=j-g;l=r;return}function _F(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;i=e<<1;j=c[d>>2]|0;h=0;k=0;while(1){if((h|0)>=(j|0))break;l=(c[(c[b>>2]|0)+(h<<2)>>2]|0)+k|0;h=h+1|0;k=l}l=j+1|0;c[d>>2]=l;l=xH(c[b>>2]|0,l<<2)|0;c[b>>2]=l;c[l+(h<<2)>>2]=i;c[a>>2]=xH(c[a>>2]|0,k+i<<4)|0;b=i+-1+k|0;h=0;while(1){if((h|0)>=(e|0))break;l=(c[a>>2]|0)+(h+k<<4)|0;j=f+(h<<4)|0;c[l>>2]=c[j>>2];c[l+4>>2]=c[j+4>>2];c[l+8>>2]=c[j+8>>2];c[l+12>>2]=c[j+12>>2];l=(c[a>>2]|0)+(b-h<<4)|0;j=g+(h<<4)|0;c[l>>2]=c[j>>2];c[l+4>>2]=c[j+4>>2];c[l+8>>2]=c[j+8>>2];c[l+12>>2]=c[j+12>>2];h=h+1|0}return}function $F(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0;f=+h[b+8>>3];d=+h[b>>3];e=+K(+(+h[c+8>>3]-f),+(+h[c>>3]-d));d=+K(+(+h[a+8>>3]-f),+(+h[a>>3]-d));e=e-d;return +((e>0.0?e+-6.283185307179586:e)*.5+d)}function aG(a,b){a=a|0;b=b|0;var d=0;d=vH(24)|0;c[d+16>>2]=0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[b+16>>2]=d;return d|0}function bG(b){b=b|0;var c=0,d=0,e=0,f=0,g=0;c=b;f=b;a:while(1){e=0;while(1){d=c;c=c+1|0;d=a[d>>0]|0;if(!(d<<24>>24))break a;if(e<<24>>24){g=5;break}if(d<<24>>24!=92)break;else e=1}b:do if((g|0)==5){g=0;switch(d<<24>>24|0){case 114:{d=13;break b}case 108:case 110:{d=10;break b}default:break b}}while(0);a[f>>0]=d;f=f+1|0}a[f>>0]=0;return b|0}function cG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=c[b>>2]|0;while(1){g=a[e>>0]|0;if(!(g<<24>>24)){f=0;break}f=g<<24>>24;if(!(g<<24>>24==44|(B$(f)|0)!=0)){h=5;break}e=e+1|0}a:do if((h|0)==5){switch(f|0){case 0:{f=0;break a}case 41:case 40:{e=e+1|0;break a}default:{}}h=d+4|0;i=d+8|0;while(1){if((dG(g<<24>>24)|0)<<24>>24){f=1;break a}f=c[h>>2]|0;if(f>>>0>=(c[i>>2]|0)>>>0){Uw(d,1)|0;f=c[h>>2]|0}c[h>>2]=f+1;a[f>>0]=g;f=e+1|0;e=f;g=a[f>>0]|0}}while(0);c[b>>2]=e;return f|0}function dG(a){a=a|0;switch(a|0){case 0:case 44:case 41:case 40:{a=1;break}default:a=0}return a|0}function eG(a,b){a=a|0;b=b|0;return fG(c[a>>2]|0,c[a+160>>2]|0,c[a+156>>2]|0,b)|0}function fG(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+160|0;k=o+20|0;m=o+16|0;n=o;c[k>>2]=0;c[m>>2]=0;Tw(n,128,o+24|0);Ww(n,f)|0;g=n+4|0;f=c[g>>2]|0;if(f>>>0>=(c[n+8>>2]|0)>>>0){Uw(n,1)|0;f=c[g>>2]|0}a[f>>0]=0;h=c[n>>2]|0;c[g>>2]=h;i=b+300|0;j=b+296|0;f=0;g=h;a:while(1){if(f){f=1;break}f=m1(g,c[i>>2]|0,k)|0;if(!f){f=0;break}g=m1(f,c[j>>2]|0,m)|0;h=(g|0)!=0;if(h)f=m1(0,c[j>>2]|0,m)|0;else f=0;switch(((f|0)!=0&1)+(h&1)&3){case 2:{g=gG(b,g,0)|0;f=gG(b,f,e)|0;h=(g|0)>(f|0);f=(f&g|0)>-1&(((h?g:f)|0)>=(d|0)&((h?f:g)|0)<=(d|0));g=0;continue a}case 1:{f=(gG(b,g,d)|0)==(d|0);g=0;continue a}default:{f=0;g=0;continue a}}}Xw(n);l=o;return f|0}function gG(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=a[d>>0]|0;if(!(h<<24>>24==97?(b$(d,97370)|0)==0:0))f=3;a:do if((f|0)==3){if((hG(d)|0)<<24>>24){e=a2(d)|0;break}g=c[b+308>>2]|0;if(!g)e=-1;else{b=c[b+312>>2]|0;e=1;while(1){if((e|0)>(b|0)){e=-1;break a}f=c[g+(e<<2)>>2]|0;if(h<<24>>24==(a[f>>0]|0)?(b$(d,f)|0)==0:0)break a;e=e+1|0}}}while(0);return e|0}function hG(b){b=b|0;var c=0;while(1){c=a[b>>0]|0;if(!(c<<24>>24)){b=1;break}if(((c&255)+-48|0)>>>0<10)b=b+1|0;else{b=0;break}}return b|0}function iG(a,b){a=a|0;b=b|0;if((+h[a+16>>3]>=+h[b>>3]?+h[b+16>>3]>=+h[a>>3]:0)?+h[a+24>>3]>=+h[b+8>>3]:0)a=+h[b+24>>3]>=+h[a+8>>3]&1;else a=0;return a|0}function jG(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;a:do if((c[b+156>>2]|0)>=2?(f=NL(e,c[46397]|0,191979)|0,(eG(b,f)|0)<<24>>24==0):0)if(!(a[f>>0]|0))if(!(Jx(d,e)|0))f=1;else{f=Jx(d,e)|0;while(1){if(!f){f=0;break a}g=NL(f,c[46420]|0,191979)|0;if(!(a[g>>0]|0)){f=1;break a}if((eG(b,g)|0)<<24>>24){f=1;break a}f=Kx(d,f,e)|0}}else f=0;else f=1;while(0);return f|0}function kG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+64|0;e=d+32|0;f=d;a=(c[a+16>>2]|0)+48|0;c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];c[f+16>>2]=c[a+16>>2];c[f+20>>2]=c[a+20>>2];c[f+24>>2]=c[a+24>>2];c[f+28>>2]=c[a+28>>2];c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];c[e+16>>2]=c[b+16>>2];c[e+20>>2]=c[b+20>>2];c[e+24>>2]=c[b+24>>2];c[e+28>>2]=c[b+28>>2];b=(iG(f,e)|0)&255;l=d;return b|0}function lG(a,d){a=a|0;d=d|0;var f=0.0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0.0,v=0.0;r=c[a+152>>2]|0;s=NE(a)|0;c[s+4>>2]=2;c[s+8>>2]=d;c[s+12>>2]=8;if(r&16777216|0){if((e[(c[(ez(d)|0)+16>>2]|0)+178>>1]|0)>2){f=+h[(c[(c[d+16>>2]|0)+132>>2]|0)+16>>3]*72.0;f=+(~~(f+(f>=0.0?.5:-.5))|0)}else f=0.0;h[s+168>>3]=f}k=d+16|0;nG(a,c[(c[k>>2]|0)+104>>2]|0,d);do if(r&4259840|0){if((c[s+208>>2]|0)==0?(b[s+260>>1]&1)==0:0)break;p=HJ(d)|0;l=c[k>>2]|0;f=+h[l+16>>3];q=+h[l+24>>3];l=oG(d)|0;a:do if((p|2|0)==3){n=c[(c[k>>2]|0)+12>>2]|0;if(!((pG(n)|0)<<24>>24))g=0;else g=(c[n+4>>2]|l|0)!=0;if(!((r&524288|0)==0|((n|0)==0|g))){i=n+8|0;o=c[i>>2]|0;o=(o|0)<3?1:o;j=n+4|0;m=c[j>>2]|0;m=(m|0)>1?m:1;p=c[n+44>>2]|0;g=xx(d,99679)|0;if(!g)g=0;else g=a2(g)|0;g=(g+-4|0)>>>0>56?20:g;if(!(c[j>>2]|l)){c[s+264>>2]=0;i=uH(32)|0;g=c[k>>2]|0;v=+h[g+88>>3];h[i>>3]=f-v;u=+h[g+80>>3]*.5;h[i+8>>3]=q-u;h[i+16>>3]=v+f;h[i+24>>3]=u+q;g=2;break}i=c[i>>2]|0;if(((i|0)<3?+h[n+32>>3]==0.0:0)?+h[n+24>>3]==0.0:0){i=s+264|0;if(c[n>>2]|0){c[i>>2]=1;i=uH(32)|0;h[i>>3]=f;h[i+8>>3]=q;g=(m<<1)+-1|0;h[i+16>>3]=+h[p+(g<<4)>>3]+f;h[i+24>>3]=+h[p+(g<<4)+8>>3]+q;g=2;break}c[i>>2]=2;i=(m<<1)+-1|0;i=qG(+h[p+(i<<4)>>3],+h[p+(i<<4)+8>>3],g)|0;j=0;while(1){if((j|0)>=(g|0))break a;p=i+(j<<4)|0;h[p>>3]=+h[p>>3]+f;p=i+(j<<4)+8|0;h[p>>3]=+h[p>>3]+q;j=j+1|0}}m=O(i,m+-1|0)|0;c[s+264>>2]=2;if((i|0)<(g|0)){i=uH(o<<4)|0;g=0;while(1){if((g|0)>=(o|0)){g=o;break a}n=g+m|0;h[i+(g<<4)>>3]=+h[p+(n<<4)>>3]+f;h[i+(g<<4)+8>>3]=+h[p+(n<<4)+8>>3]+q;g=g+1|0}}else{l=(i|0)/(g|0)|0;i=uH(g<<4)|0;j=0;k=0;while(1){if((j|0)>=(g|0))break a;o=k+m|0;h[i+(j<<4)>>3]=+h[p+(o<<4)>>3]+f;h[i+(j<<4)+8>>3]=+h[p+(o<<4)+8>>3]+q;j=j+1|0;k=k+l|0}}}else t=31}else t=31;while(0);if((t|0)==31){c[s+264>>2]=0;i=uH(32)|0;g=c[k>>2]|0;h[i>>3]=f-+h[g+88>>3];v=+h[g+80>>3]*.5;h[i+8>>3]=q-v;h[i+16>>3]=+h[g+96>>3]+f;h[i+24>>3]=v+q;g=2}if(!(r&8192))yO(a,i,i,g)|0;c[s+272>>2]=i;c[s+268>>2]=g}while(0);qQ(xx(d,97006)|0);LO(a,d);return}function mG(a){a=a|0;MO(a);OE(a);return}function nG(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+144|0;j=m;f=xx(e,137973)|0;i=xx(e,138019)|0;k=xx(e,138006)|0;Tw(j,128,m+16|0);if(!d)h=0;else h=c[d>>2]|0;if(!((f|0)!=0?(a[f>>0]|0)!=0:0))f=xx(e,108395)|0;g=QE(b,e,j)|0;if(!i)d=0;else d=WF(i,e)|0;PE(b,h,f,d,k,g,e)|0;D_(d);Xw(j);l=m;return}function oG(b){b=b|0;var d=0,e=0;b=OL(b,c[46387]|0,191979)|0;a:do if(!(a[b>>0]|0))b=0;else{AF(b)|0;b=0;d=185144;while(1){e=c[d>>2]|0;if(!e)break a;e=(b$(e,108075)|0)==0;b=e?1:b;d=d+4|0}}while(0);return b|0}function pG(a){a=a|0;var b=0.0;if(((c[a+8>>2]|0)==4?(b=+h[a+16>>3],((~~(b+(b>=0.0?.5:-.5))|0)%90|0|0)==0):0)?+h[a+24>>3]==0.0:0)a=+h[a+32>>3]==0.0&1;else a=0;return a|0}function qG(a,b,c){a=+a;b=+b;c=c|0;var d=0.0,e=0,f=0.0,g=0;f=6.283185307179586/+(c|0);g=uH(c<<4)|0;d=0.0;e=0;while(1){if((e|0)>=(c|0))break;h[g+(e<<4)>>3]=+E(+d)*a;h[g+(e<<4)+8>>3]=+F(+d)*b;d=d+f;e=e+1|0}return g|0}function rG(b,d){b=b|0;d=d|0;var e=0;a:do if((c[b+156>>2]|0)>=2?(e=NL(d,nx(d,0,98484,0)|0,191979)|0,(eG(b,e)|0)<<24>>24==0):0)if(!(a[e>>0]|0)){e=Sy(d)|0;while(1){if(!e){e=0;break a}if((jG(b,d,e)|0)<<24>>24){e=1;break a}e=Ty(d,e)|0}}else e=0;else e=1;while(0);return e|0}function sG(a,b){a=a|0;b=b|0;var d=0;d=NE(a)|0;c[d+4>>2]=1;c[d+8>>2]=b;c[d+12>>2]=1;nG(a,c[(c[b+16>>2]|0)+12>>2]|0,b);FO(a,b);return}function tG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;b=xx(b,138e3)|0;a:do if((b|0)!=0?(a[b>>0]|0)!=0:0){AF(b)|0;e=185144;b=0;while(1){while(1){f=c[e>>2]|0;if(!f){e=185144;break a}if(!(b$(f,108075)|0)){g=10;break}if(!(b$(f,103308)|0)){f=e;g=12;break}if(!(b$(f,103315)|0)){f=e;g=14;break}if(!(b$(f,103290)|0)){f=e;g=16;break}e=e+4|0}if((g|0)==10){e=e+4|0;b=b|1;continue}else if((g|0)==12){while(1){h=f;f=f+4|0;g=c[f>>2]|0;c[h>>2]=g;if(!g)break;else g=12}b=b|3;continue}else if((g|0)==14){while(1){g=f;f=f+4|0;h=c[f>>2]|0;c[g>>2]=h;if(!h)break;else g=14}b=b|64;continue}else if((g|0)==16){while(1){g=f;f=f+4|0;h=c[f>>2]|0;c[g>>2]=h;if(!h)break;else g=16}b=b|4;continue}}}else{e=0;b=0}while(0);c[d>>2]=b;return e|0}function uG(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;i=k;j=k+4|0;c[j>>2]=0;m=(TE(b,0,j)|0)==0;j=c[j>>2]|0;if((m?(f=c[j>>2]|0,(f|0)>=2):0)?(h=j+8|0,(c[c[h>>2]>>2]|0)!=0):0){if((f|0)>2)Pw(0,97389,i)|0;m=vH((W_(b)|0)+1|0)|0;c[d>>2]=m;b0(m,c[c[h>>2]>>2]|0)|0;if(!(c[(c[h>>2]|0)+12>>2]|0))c[d+4>>2]=0;else{m=c[d>>2]|0;m=m+((W_(m)|0)+1)|0;c[d+4>>2]=m;b0(m,c[(c[h>>2]|0)+12>>2]|0)|0}b=c[h>>2]|0;do if(!(a[b+8>>0]|0))if(!(a[b+20>>0]|0)){g[e>>2]=0.0;break}else{g[e>>2]=1.0-+g[b+16>>2];break}else c[e>>2]=c[b+4>>2];while(0);UE(j);b=1}else{c[d>>2]=0;UE(j);b=0}l=k;return b|0}function vG(a,b){a=a|0;b=b|0;GO(a,b);OE(a);return}function wG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;p=x+48|0;s=x+16|0;w=x+8|0;v=x;t=x+80|0;c[t>>2]=1e3;f=vH(16e3)|0;u=a+256|0;e=1;j=1;i=0;q=0;r=c[b+8>>2]|0;while(1){if((q|0)>=(c[b>>2]|0))break;d=c[r>>2]|0;a:do switch(d|0){case 1:case 0:{n=r+80|0;c[s>>2]=c[n>>2];c[s+4>>2]=c[n+4>>2];c[s+8>>2]=c[n+8>>2];c[s+12>>2]=c[n+12>>2];c[s+16>>2]=c[n+16>>2];c[s+20>>2]=c[n+20>>2];c[s+24>>2]=c[n+24>>2];c[s+28>>2]=c[n+28>>2];c[p>>2]=c[u>>2];c[p+4>>2]=c[u+4>>2];c[p+8>>2]=c[u+8>>2];c[p+12>>2]=c[u+12>>2];c[p+16>>2]=c[u+16>>2];c[p+20>>2]=c[u+20>>2];c[p+24>>2]=c[u+24>>2];c[p+28>>2]=c[u+28>>2];if(!(iG(s,p)|0))d=j;else{z=r+8|0;A=r+24|0;h[f>>3]=+h[z>>3]-+h[A>>3];n=r+16|0;y=r+32|0;h[f+8>>3]=+h[n>>3]-+h[y>>3];h[f+16>>3]=+h[A>>3]+ +h[z>>3];h[f+24>>3]=+h[y>>3]+ +h[n>>3];ZO(a,f,2,(d|0)==0?j:0);d=j}break}case 3:case 2:{A=r+80|0;c[s>>2]=c[A>>2];c[s+4>>2]=c[A+4>>2];c[s+8>>2]=c[A+8>>2];c[s+12>>2]=c[A+12>>2];c[s+16>>2]=c[A+16>>2];c[s+20>>2]=c[A+20>>2];c[s+24>>2]=c[A+24>>2];c[s+28>>2]=c[A+28>>2];c[p>>2]=c[u>>2];c[p+4>>2]=c[u+4>>2];c[p+8>>2]=c[u+8>>2];c[p+12>>2]=c[u+12>>2];c[p+16>>2]=c[u+16>>2];c[p+20>>2]=c[u+20>>2];c[p+24>>2]=c[u+24>>2];c[p+28>>2]=c[u+28>>2];if(!(iG(s,p)|0))d=j;else{d=r+8|0;f=xG(f,t,c[d+4>>2]|0,c[d>>2]|0)|0;_O(a,f,c[d>>2]|0,(c[r>>2]|0)==2?j:0);d=j}break}case 5:case 4:{A=r+80|0;c[s>>2]=c[A>>2];c[s+4>>2]=c[A+4>>2];c[s+8>>2]=c[A+8>>2];c[s+12>>2]=c[A+12>>2];c[s+16>>2]=c[A+16>>2];c[s+20>>2]=c[A+20>>2];c[s+24>>2]=c[A+24>>2];c[s+28>>2]=c[A+28>>2];c[p>>2]=c[u>>2];c[p+4>>2]=c[u+4>>2];c[p+8>>2]=c[u+8>>2];c[p+12>>2]=c[u+12>>2];c[p+16>>2]=c[u+16>>2];c[p+20>>2]=c[u+20>>2];c[p+24>>2]=c[u+24>>2];c[p+28>>2]=c[u+28>>2];if(!(iG(s,p)|0))d=j;else{d=r+8|0;f=xG(f,t,c[d+4>>2]|0,c[d>>2]|0)|0;aP(a,f,c[d>>2]|0,0,0,(c[r>>2]|0)==4?j&255:0);d=j}break}case 6:{A=r+80|0;c[s>>2]=c[A>>2];c[s+4>>2]=c[A+4>>2];c[s+8>>2]=c[A+8>>2];c[s+12>>2]=c[A+12>>2];c[s+16>>2]=c[A+16>>2];c[s+20>>2]=c[A+20>>2];c[s+24>>2]=c[A+24>>2];c[s+28>>2]=c[A+28>>2];c[p>>2]=c[u>>2];c[p+4>>2]=c[u+4>>2];c[p+8>>2]=c[u+8>>2];c[p+12>>2]=c[u+12>>2];c[p+16>>2]=c[u+16>>2];c[p+20>>2]=c[u+20>>2];c[p+24>>2]=c[u+24>>2];c[p+28>>2]=c[u+28>>2];if(!(iG(s,p)|0))d=j;else{d=r+8|0;f=xG(f,t,c[d+4>>2]|0,c[d>>2]|0)|0;bP(a,f,c[d>>2]|0);d=j}break}case 7:{A=r+80|0;c[s>>2]=c[A>>2];c[s+4>>2]=c[A+4>>2];c[s+8>>2]=c[A+8>>2];c[s+12>>2]=c[A+12>>2];c[s+16>>2]=c[A+16>>2];c[s+20>>2]=c[A+20>>2];c[s+24>>2]=c[A+24>>2];c[s+28>>2]=c[A+28>>2];c[p>>2]=c[u>>2];c[p+4>>2]=c[u+4>>2];c[p+8>>2]=c[u+8>>2];c[p+12>>2]=c[u+12>>2];c[p+16>>2]=c[u+16>>2];c[p+20>>2]=c[u+20>>2];c[p+24>>2]=c[u+24>>2];c[p+28>>2]=c[u+28>>2];if(!(iG(s,p)|0))d=j;else{h[f>>3]=+h[r+8>>3];h[f+8>>3]=+h[r+16>>3];d=c[r+112>>2]|0;c[p>>2]=c[f>>2];c[p+4>>2]=c[f+4>>2];c[p+8>>2]=c[f+8>>2];c[p+12>>2]=c[f+12>>2];TO(a,p,d);d=j}break}case 8:{WO(a,c[r+8>>2]|0);d=1;break}case 9:{UO(a,c[r+8>>2]|0);d=1;break}case 13:{if((c[r+8>>2]|0)!=2){d=r+16|0;z=c[d+36>>2]|0;A=c[z+12>>2]|0;o=+g[z+8>>2];d=~~(+K(+(+h[r+40>>3]-+h[r+24>>3]),+(+h[r+32>>3]-+h[d>>3]))*57.29577951308232);WO(a,c[z+4>>2]|0);XO(a,A,d,o);d=2;break a}A=c[r+68>>2]|0;j=c[A+4>>2]|0;n=c[A+12>>2]|0;o=+g[A+8>>2];k=+h[r+40>>3];m=+h[r+16>>3];if(k==m?+h[r+48>>3]==+h[r+24>>3]:0)d=0;else d=~~(+H(+((m-k)/+h[r+32>>3]))*57.29577951308232);WO(a,j);XO(a,n,d,o);d=3;break}case 14:{Pw(0,97455,v)|0;d=j;break}case 12:{if(!e){e=0;d=j}else{Pw(0,97495,w)|0;e=0;d=j}break}case 11:{AF(c[r+8>>2]|0)|0;YO(a,185144);i=185144;d=j;break}default:d=j}while(0);j=d;q=q+1|0;r=r+120|0}if(i|0)YO(a,c[(c[a>>2]|0)+336>>2]|0);D_(f);l=x;return}function xG(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[b>>2]|0;f=g<<1;f=(f|0)>(e|0)?f:e;if((g|0)<(e|0)){a=xH(a,f<<4)|0;c[b>>2]=f}b=0;while(1){if((b|0)>=(e|0))break;h[a+(b<<4)>>3]=+h[d+(b*24|0)>>3];h[a+(b<<4)+8>>3]=+h[d+(b*24|0)+8>>3];b=b+1|0}return a|0}function yG(a,b){a=a|0;b=b|0;var d=0;d=c[b>>2]|0;c[a>>2]=c[b+4>>2];c[a+4>>2]=d;return}function zG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=d+16|0;f=1;while(1){d=c[g>>2]|0;if((f|0)>(c[d+180>>2]|0))break;e=c[(c[d+184>>2]|0)+(f<<2)>>2]|0;zG(b,e);d=xx(e,137741)|0;if(d|0?a[d>>0]|0:0)UO(b,d);d=xx(e,134647)|0;if(d|0?a[d>>0]|0:0)UO(b,d);d=xx(e,137895)|0;if(d|0?a[d>>0]|0:0)UO(b,d);d=xx(e,98392)|0;if(d|0?a[d>>0]|0:0)WO(b,d);d=xx(e,98420)|0;if(d|0?a[d>>0]|0:0)UO(b,d);f=f+1|0}return}function AG(a){a=a|0;var b=0,d=0,e=0;b=c[46356]|0;if(!b){b=Cw(20524,c[4555]|0)|0;c[46356]=b}if(!(nb[c[b>>2]&63](b,a,4)|0)){d=c[46356]|0;e=c[d>>2]|0;b=n1(a)|0;nb[e&63](d,b,1)|0;b=1}else b=0;return b|0}function BG(a,b,c){a=a|0;b=b|0;c=c|0;D_(b);return}function CG(a){a=a|0;var b=0;b=c[46357]|0;if(!a){if((b|0)>0?(b=b+-1|0,c[46357]=b,(b|0)==0):0){J0(1,c[46358]|0)|0;D_(c[46358]|0)}}else{c[46357]=b+1;if(!b){c[46358]=n1(J0(1,0)|0)|0;J0(1,150481)|0}}return}function DG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0;u=l;l=l+96|0;r=u+72|0;q=u+56|0;p=u+48|0;t=u+32|0;s=u+24|0;e=u+8|0;d=u;if(0)EL();do if((Az(b,134401,0,1)|0)!=0?(o=b+16|0,(c[(c[o>>2]|0)+8>>2]|0)!=0):0){EG(b);FG(a,b);GG(a,b);CG(1);j=a+56|0;k=a+184|0;m=a+192|0;n=a+28|0;i=pC(a)|0;a:while(1){if(!i){g=33;break}d=c[j>>2]|0;if(!d){c[i+20>>2]=0;d=0}else{c[i+20>>2]=c[d+8>>2];d=c[d+12>>2]|0}c[i+24>>2]=d;c[i+12>>2]=a;c[i+28>>2]=c[k>>2];c[i+620>>2]=25660;c[i+624>>2]=14;if(!(c[(c[o>>2]|0)+8>>2]|0)){g=13;break}e=i+52|0;g=uO(i,c[e>>2]|0)|0;c[i+56>>2]=g;switch(g|0){case 999:{g=16;break a}case 21:{d=1;break}case 24:{d=520;break}default:d=HG(b)|0}f=i+152|0;c[f>>2]=c[f>>2]|d;d=c[m>>2]|0;do if(!d)g=24;else{if(c[d+152>>2]&32|0?(b$(c[e>>2]|0,c[d+52>>2]|0)|0)==0:0){d=c[46359]|0;if(!d){g=27;break}c[d+8>>2]=i;c[i+36>>2]=c[d+36>>2];g=29;break}wO(d);c[m>>2]=0;c[n>>2]=0;g=24}while(0);if((g|0)==24){c[46359]=0;g=27}if((g|0)==27?(g=0,(vO(i)|0)==0):0){c[m>>2]=i;g=29}if((g|0)==29){c[i+8>>2]=0;c[i+104>>2]=25772;IG(i);JG(i);KG(i,b);LG(i,b);MG(i,b);if(!(c[f>>2]&128))dF(i,b);c[46359]=i}i=qC(a)|0}if((g|0)==13){Pw(1,97653,s)|0;CG(0);if(!0){d=-1;break}d=c[15686]|0;s=ry(b)|0;v=+FL();c[t>>2]=s;h[t+8>>3]=v;g1(d,97624,t)|0;d=-1;break}else if((g|0)==16){c[p>>2]=c[e>>2];Pw(1,97674,p)|0;CG(0);if(!0){d=-1;break}d=c[15686]|0;t=ry(b)|0;v=+FL();c[q>>2]=t;h[q+8>>3]=v;g1(d,97624,q)|0;d=-1;break}else if((g|0)==33){CG(0);if(!0){d=0;break}d=c[15686]|0;t=ry(b)|0;v=+FL();c[r>>2]=t;h[r+8>>3]=v;g1(d,97624,r)|0;d=0;break}}else g=5;while(0);if((g|0)==5){Pw(1,97576,d)|0;if(!0)d=-1;else{d=c[15686]|0;t=ry(b)|0;v=+FL();c[e>>2]=t;h[e+8>>3]=v;g1(d,97624,e)|0;d=-1}}l=u;return d|0}function EG(a){a=a|0;var b=0;b=Sy(a)|0;while(1){if(!b)break;RG(a,b);b=Ty(a,b)|0}return}function FG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+24|0;f=o+16|0;j=o+8|0;n=o;c[b+168>>2]=d;g=b+293|0;a[g>>0]=0;e=xx(d,102470)|0;if(e|0?(c[f>>2]=j,c[f+4>>2]=n,i=N1(e,102477,f)|0,(i|0)>0):0){p=+h[j>>3]*72.0;e=b+208|0;h[e>>3]=p;h[b+200>>3]=p;if((i|0)!=1)h[e>>3]=+h[n>>3]*72.0;a[g>>0]=1}f=b+292|0;a[f>>0]=0;e=xx(d,98076)|0;if(e|0?(c[k>>2]=j,c[k+4>>2]=n,m=N1(e,102477,k)|0,(m|0)>0):0){p=+h[j>>3]*72.0;e=b+224|0;h[e>>3]=p;h[b+216>>3]=p;if((m|0)!=1)h[e>>3]=+h[n>>3]*72.0;a[f>>0]=1}e=b+294|0;a[e>>0]=0;f=b+232|0;g=d+16|0;n=(c[(c[g>>2]|0)+8>>2]|0)+48|0;c[f>>2]=c[n>>2];c[f+4>>2]=c[n+4>>2];c[f+8>>2]=c[n+8>>2];c[f+12>>2]=c[n+12>>2];f=c[(c[g>>2]|0)+8>>2]|0;if(+h[f+48>>3]>.001?+h[f+56>>3]>.001:0)a[e>>0]=1;c[b+288>>2]=a[f+81>>0]|0?90:0;e=b+196|0;c[e>>2]=98080;f=xx(d,98083)|0;if(f|0?a[f>>0]|0:0)c[e>>2]=f;n=b+256|0;m=(c[g>>2]|0)+16|0;c[n>>2]=c[m>>2];c[n+4>>2]=c[m+4>>2];c[n+8>>2]=c[m+8>>2];c[n+12>>2]=c[m+12>>2];c[n+16>>2]=c[m+16>>2];c[n+20>>2]=c[m+20>>2];c[n+24>>2]=c[m+24>>2];c[n+28>>2]=c[m+28>>2];c[46371]=nx(d,0,98446,0)|0;c[46372]=nx(d,0,98437,0)|0;c[b+320>>2]=OL(0,c[46381]|0,104968)|0;h[b+328>>3]=+LL(0,c[46380]|0,14.0,1.0);c[b+336>>2]=20560;c[b+188>>2]=ry(d)|0;l=o;return}function GG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=b+304|0;f=c[e>>2]|0;if(f|0){D_(f);c[e>>2]=0}f=b+308|0;e=c[f>>2]|0;if(e|0){D_(e);c[f>>2]=0}g=b+316|0;e=c[g>>2]|0;if(e|0){D_(e);c[g>>2]=0}e=xx(d,97827)|0;if(e){c[b+312>>2]=PG(b,d,e)|0;e=xx(d,97834)|0;if(e|0?a[e>>0]|0:0)c[g>>2]=QG(b,e)|0}else{c[f>>2]=0;c[b+312>>2]=1}return}function HG(b){b=b|0;b=xx(b,97795)|0;a:do if(!b)b=0;else switch(a[b>>0]|0){case 110:{if(!(b$(b+1|0,97807)|0))b=1;else{b=0;break a}break}case 101:{if(!(b$(b+1|0,97817)|0))b=16;else{b=0;break a}break}default:{b=0;break a}}while(0);return b|0}function IG(b){b=b|0;var d=0.0,e=0;e=c[b>>2]|0;if(!(a[e+292>>0]|0)){if((c[b+56>>2]|0)==300)d=+h[(c[b+68>>2]|0)+8>>3];else d=4.0;h[b+248>>3]=d;h[b+240>>3]=d}else{b=b+240|0;e=e+216|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2]}return}function JG(b){b=b|0;var d=0;d=c[b>>2]|0;a:do if(!(a[d+293>>0]|0))switch(c[b+56>>2]|0){case 300:{d=b+416|0;b=(c[b+84>>2]|0)+8|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];break a}case 30:case 21:case 22:case 4:case 3:case 2:{h[b+424>>3]=36.0;h[b+416>>3]=36.0;break a}default:{d=b+416|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;break a}}else{b=b+416|0;d=d+200|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2]}while(0);return}function KG(b,d){b=b|0;d=d|0;var e=0.0,f=0;f=c[(c[b>>2]|0)+192>>2]|0;e=+h[(c[(c[d+16>>2]|0)+8>>2]|0)+24>>3];do if(!(e!=0.0)){if(f|0?a[f+128>>0]|0:0){b=b+432|0;f=f+112|0;c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];break}d=b+432|0;if((c[b+56>>2]|0)==300){b=(c[b+84>>2]|0)+40|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];break}else{h[b+440>>3]=96.0;h[d>>3]=96.0;break}}else{h[b+440>>3]=e;h[b+432>>3]=e}while(0);return}function LG(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,g=0,i=0.0,j=0.0,k=0.0,m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+112|0;t=A+80|0;u=A+56|0;s=A+40|0;v=A+32|0;w=A+24|0;x=A+16|0;y=A+8|0;z=A;m=c[b>>2]|0;o=+h[m+272>>3];q=+h[m+280>>3];p=+h[m+256>>3];r=+h[m+264>>3];f=+h[b+240>>3];e=p-f;h[b+208>>3]=e;i=+h[b+248>>3];j=r-i;h[b+216>>3]=j;f=f+o;h[b+224>>3]=f;i=i+q;h[b+232>>3]=i;e=f-e;j=i-j;h[x>>3]=1.0;g=c[(c[d+16>>2]|0)+8>>2]|0;i=+h[g+64>>3];do if(i>.001?(k=+h[g+72>>3],k>.001):0){e=e==0.0?i:e;f=j==0.0?k:j;if(!(i<e|k<f)?!(k>f&(i>e&(a[g+80>>0]|0)!=0)):0){k=e;j=f;i=1.0;break}n=i/e<k/f;i=(n?i:k)/(n?e:f);h[x>>3]=i;k=e;j=f}else{k=e;i=1.0}while(0);f=(p+o)*.5;h[y>>3]=f;e=(r+q)*.5;h[z>>3]=e;c[b+360>>2]=c[m+288>>2];k=i*k;h[v>>3]=k;j=i*j;h[w>>3]=j;g=xx(d,97726)|0;if(g){m=C_((W_(g)|0)+1|0)|0;n=C_((W_(g)|0)+1|0)|0;c[s>>2]=v;c[s+4>>2]=w;c[s+8>>2]=x;c[s+12>>2]=m;do if((N1(g,97735,s)|0)==4){g=az(c[d+60>>2]|0,m,0)|0;if(g|0){u=c[g+16>>2]|0;h[y>>3]=+h[u+16>>3];h[z>>3]=+h[u+24>>3]}}else{c[u>>2]=v;c[u+4>>2]=w;c[u+8>>2]=x;c[u+12>>2]=m;c[u+16>>2]=n;if((N1(g,97755,u)|0)!=4){c[t>>2]=v;c[t+4>>2]=w;c[t+8>>2]=x;c[t+12>>2]=y;c[t+16>>2]=z;N1(g,97775,t)|0;break}g=az(c[d+60>>2]|0,m,0)|0;if(g|0){u=c[g+16>>2]|0;h[y>>3]=+h[u+16>>3];h[z>>3]=+h[u+24>>3]}}while(0);D_(m);D_(n);k=+h[v>>3];j=+h[w>>3];i=+h[x>>3];f=+h[y>>3];e=+h[z>>3]}h[b+368>>3]=k;h[b+376>>3]=j;h[b+352>>3]=i;h[b+336>>3]=f;h[b+344>>3]=e;l=A;return}function MG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0.0,j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,P=0.0,Q=0.0;M=l;l=l+224|0;J=M+200|0;z=M+168|0;E=M+144|0;I=M+120|0;F=M+96|0;G=M+64|0;e=M+184|0;v=M+176|0;w=M+160|0;y=M+136|0;x=M+112|0;A=M+80|0;B=M+48|0;C=M+32|0;D=M+16|0;K=M+8|0;L=M;u=c[b>>2]|0;c[G>>2]=0;c[G+4>>2]=0;c[G+8>>2]=0;c[G+12>>2]=0;H=b+368|0;c[I>>2]=c[H>>2];c[I+4>>2]=c[H+4>>2];c[I+8>>2]=c[H+8>>2];c[I+12>>2]=c[H+12>>2];H=b+360|0;if(c[H>>2]|0){c[J>>2]=c[I>>2];c[J+4>>2]=c[I+4>>2];c[J+8>>2]=c[I+8>>2];c[J+12>>2]=c[I+12>>2];NG(e,J);c[I>>2]=c[e>>2];c[I+4>>2]=c[e+4>>2];c[I+8>>2]=c[e+8>>2];c[I+12>>2]=c[e+12>>2]}t=b+416|0;c[F>>2]=c[t>>2];c[F+4>>2]=c[t+4>>2];c[F+8>>2]=c[t+8>>2];c[F+12>>2]=c[t+12>>2];if((a[u+294>>0]|0)!=0?(c[b+152>>2]&32|0)!=0:0){i=+h[u+232>>3]-+h[F>>3]*2.0;h[E>>3]=i;k=+h[u+240>>3]-+h[F+8>>3]*2.0;p=E+8|0;h[p>>3]=k;if(!(i<.0001)){o=+h[I>>3];e=~~(o/i);f=b+164|0;c[f>>2]=e;if(o-i*+(e|0)>.0001){e=e+1|0;c[f>>2]=e}}else{c[b+164>>2]=1;e=1}if(!(k<.0001)){g=+h[I+8>>3];f=~~(g/k);j=b+168|0;c[j>>2]=f;if(g-k*+(f|0)>.0001){f=f+1|0;c[j>>2]=f}}else{c[b+168>>2]=1;f=1;g=+h[I+8>>3]}c[b+204>>2]=O(f,e)|0;o=+h[(+h[I>>3]<i?I:E)>>3];h[I>>3]=o;e=p;f=I;m=+h[(g<k?I:E)+8>>3];g=o;j=21}else{if(c[b+68>>2]|0){e=c[b+84>>2]|0;i=+h[e+24>>3]-+h[F>>3]*2.0;i=i<0.0?0.0:i;h[E>>3]=i;o=+h[e+32>>3]-+h[F+8>>3]*2.0;e=E+8|0;h[e>>3]=o;if(o<0.0){f=E;j=17}else e=E}else{h[E+8>>3]=0.0;f=E;e=E;j=17}if((j|0)==17){h[e>>3]=0.0;e=f;i=+h[f>>3]}c[b+204>>2]=1;c[b+168>>2]=1;c[b+164>>2]=1;g=+h[I>>3];if(i<g){h[e>>3]=g;i=g}e=E+8|0;k=+h[e>>3];m=+h[I+8>>3];if(k<m){f=E;j=21}else{r=e;m=k}}if((j|0)==21){h[f+8>>3]=m;r=e;m=+h[e>>3]}n=+h[F>>3];s=b+432|0;k=+h[s>>3]*.013888888888888888*(n*2.0+i);c[b+448>>2]=~~(k+(k>=0.0?.5:-.5));q=F+8|0;k=+h[q>>3];t=b+440|0;o=+h[t>>3]*.013888888888888888*(k*2.0+m);c[b+452>>2]=~~(o+(o>=0.0?.5:-.5));j=b+188|0;p=b+180|0;e=b+172|0;f=u+196|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;OG(v,b,a[c[f>>2]>>0]|0);u=v;v=c[u+4>>2]|0;e=p;c[e>>2]=c[u>>2];c[e+4>>2]=v;OG(w,b,a[(c[f>>2]|0)+1>>0]|0);e=w;w=c[e>>2]|0;e=c[e+4>>2]|0;v=j;c[v>>2]=w;c[v+4>>2]=e;w=(c[p>>2]|0)+w|0;if(!((((w|0)>-1?w:0-w|0)|0)==1?(w=(c[b+184>>2]|0)+e|0,(((w|0)>-1?w:0-w|0)|0)==1):0)){OG(y,b,66);v=y;y=c[v+4>>2]|0;w=p;c[w>>2]=c[v>>2];c[w+4>>2]=y;OG(x,b,76);w=x;x=c[w+4>>2]|0;y=j;c[y>>2]=c[w>>2];c[y+4>>2]=x;c[z>>2]=c[f>>2];Pw(0,97706,z)|0}if(a[(c[(c[d+16>>2]|0)+8>>2]|0)+82>>0]|0){if(i>g){m=(i-g)*.5;h[G>>3]=m}else m=0.0;i=+h[r>>3];o=+h[I+8>>3];if(i>o){i=(i-o)*.5;h[G+8>>3]=i}else i=0.0}else{i=0.0;m=0.0}if(!(c[H>>2]|0))j=1;else{c[J>>2]=c[I>>2];c[J+4>>2]=c[I+4>>2];c[J+8>>2]=c[I+8>>2];c[J+12>>2]=c[I+12>>2];NG(A,J);c[I>>2]=c[A>>2];c[I+4>>2]=c[A+4>>2];c[I+8>>2]=c[A+8>>2];c[I+12>>2]=c[A+12>>2];c[J>>2]=c[E>>2];c[J+4>>2]=c[E+4>>2];c[J+8>>2]=c[E+8>>2];c[J+12>>2]=c[E+12>>2];NG(B,J);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];c[J>>2]=c[F>>2];c[J+4>>2]=c[F+4>>2];c[J+8>>2]=c[F+8>>2];c[J+12>>2]=c[F+12>>2];NG(C,J);c[F>>2]=c[C>>2];c[F+4>>2]=c[C+4>>2];c[F+8>>2]=c[C+8>>2];c[F+12>>2]=c[C+12>>2];c[J>>2]=c[G>>2];c[J+4>>2]=c[G+4>>2];c[J+8>>2]=c[G+8>>2];c[J+12>>2]=c[G+12>>2];NG(D,J);c[G>>2]=c[D>>2];c[G+4>>2]=c[D+4>>2];c[G+8>>2]=c[D+8>>2];c[G+12>>2]=c[D+12>>2];n=+h[F>>3];m=+h[G>>3];k=+h[q>>3];i=+h[G+8>>3];g=+h[I>>3];j=(c[H>>2]|0)==0}o=m+n;h[b+384>>3]=o;P=i+k;h[b+392>>3]=P;N=m+n+g;h[b+400>>3]=N;Q=+h[I+8>>3];n=i+k+Q;h[b+408>>3]=n;m=+h[b+352>>3];h[b+320>>3]=g/m;h[b+328>>3]=Q/m;m=+h[s>>3];o=o*.013888888888888888*m;f=b+456|0;c[f>>2]=~~(o+(o>=0.0?.5:-.5));o=+h[t>>3];k=P*.013888888888888888*o;c[b+460>>2]=~~(k+(k>=0.0?.5:-.5));m=N*.013888888888888888*m;e=b+464|0;c[e>>2]=~~(m+(m>=0.0?.5:-.5));o=n*.013888888888888888*o;c[b+468>>2]=~~(o+(o>=0.0?.5:-.5));if(!j){c[J>>2]=c[f>>2];c[J+4>>2]=c[f+4>>2];yG(K,J);I=K;K=c[I+4>>2]|0;b=f;c[b>>2]=c[I>>2];c[b+4>>2]=K;c[J>>2]=c[e>>2];c[J+4>>2]=c[e+4>>2];yG(L,J);b=L;K=c[b+4>>2]|0;L=e;c[L>>2]=c[b>>2];c[L+4>>2]=K}l=M;return}function NG(a,b){a=a|0;b=b|0;var c=0.0;c=+h[b>>3];h[a>>3]=+h[b+8>>3];h[a+8>>3]=c;return}function OG(a,b,d){a=a|0;b=b|0;d=d|0;d=(d<<24>>24)+-66|0;switch(d>>>1|d<<31|0){case 9:{c[b+176>>2]=(c[b+168>>2]|0)+-1;b=0;d=-1;break}case 0:{b=0;d=1;break}case 5:{b=1;d=0;break}case 8:{c[b+172>>2]=(c[b+164>>2]|0)+-1;b=-1;d=0;break}default:{b=0;d=0}}c[a>>2]=b;c[a+4>>2]=d;return}function PG(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;g=j;f=xx(d,97947)|0;i=b+296|0;c[i>>2]=(f|0)==0?97956:f;d=xx(d,97960)|0;f=b+300|0;d=(d|0)==0?97973:d;c[f>>2]=d;d=q1(c[i>>2]|0,d)|0;if(d|0){c[g>>2]=a[d>>0];Pw(0,97975,g)|0;c[f>>2]=191979}d=n1(e)|0;c[b+304>>2]=d;h=b+308|0;f=0;b=0;while(1){e=k1(d,c[i>>2]|0)|0;if(!e)break;g=b+1|0;if((b|0)<(f|0))d=c[h>>2]|0;else{f=f+128|0;d=c[h>>2]|0;if(!d)d=vH(f<<2)|0;else d=xH(d,f<<2)|0;c[h>>2]=d}c[d+(g<<2)>>2]=e;b=g;d=0}if(b|0){i=xH(c[h>>2]|0,(b<<2)+8|0)|0;c[h>>2]=i;c[i>>2]=0;c[(c[h>>2]|0)+(b+1<<2)>>2]=0}l=j;return b|0}function QG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=a+312|0;d=vH((c[i>>2]<<2)+8|0)|0;e=0;h=1;while(1){g=c[i>>2]|0;if((h|0)>(g|0))break;f=e+1|0;if((fG(a,h,g,b)|0)<<24>>24){c[d+(f<<2)>>2]=h;e=f}h=h+1|0}if(!e){c[j>>2]=b;Pw(0,97846,j)|0;D_(d);d=0}else{c[d>>2]=e;c[d+(e+1<<2)>>2]=(c[i>>2]|0)+1}l=k;return d|0}function RG(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0,g=0.0;d=c[b+16>>2]|0;g=+h[d+16>>3];h[d+48>>3]=g-+h[d+88>>3];e=+h[d+24>>3];f=+h[d+80>>3]*.5;h[d+56>>3]=e-f;h[d+64>>3]=+h[d+96>>3]+g;h[d+72>>3]=f+e;b=Ex(a,b)|0;while(1){if(!b)break;SG(b);b=Gx(a,b)|0}return}function SG(a){a=a|0;a=c[(c[a+16>>2]|0)+8>>2]|0;if(a|0)TG(a);return}function TG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=l;l=l+240|0;v=C+192|0;u=C+176|0;w=C+64|0;x=C+32|0;y=C;z=C+144|0;A=C+112|0;B=a+4|0;if((c[B>>2]|0)<=0)qa(98114,96880,3994,98128);b=c[a>>2]|0;d=w;e=b;f=d+48|0;do{c[d>>2]=c[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(f|0));d=v;e=b;f=d+48|0;do{c[d>>2]=c[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(f|0));UG(x,v);i=x+8|0;j=y+8|0;k=x+16|0;m=y+16|0;n=x+24|0;o=y+24|0;p=w+8|0;q=w+12|0;r=w+32|0;s=w+4|0;t=w+16|0;g=0;while(1){if((g|0)>=(c[B>>2]|0))break;if((g|0)>0){b=(c[a>>2]|0)+(g*48|0)|0;d=w;e=b;f=d+48|0;do{c[d>>2]=c[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(f|0));d=v;e=b;f=d+48|0;do{c[d>>2]=c[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(f|0));UG(y,v);h[x>>3]=+h[(+h[x>>3]<+h[y>>3]?x:y)>>3];h[i>>3]=+h[(+h[i>>3]<+h[j>>3]?x:y)+8>>3];h[k>>3]=+h[(+h[k>>3]>+h[m>>3]?x:y)+16>>3];h[n>>3]=+h[(+h[n>>3]>+h[o>>3]?x:y)+24>>3]}b=c[p>>2]|0;if(b|0){f=c[w>>2]|0;c[u>>2]=c[t>>2];c[u+4>>2]=c[t+4>>2];c[u+8>>2]=c[t+8>>2];c[u+12>>2]=c[t+12>>2];c[v>>2]=c[f>>2];c[v+4>>2]=c[f+4>>2];c[v+8>>2]=c[f+8>>2];c[v+12>>2]=c[f+12>>2];JE(z,u,v,1.0,b);c[y>>2]=c[z>>2];c[y+4>>2]=c[z+4>>2];c[y+8>>2]=c[z+8>>2];c[y+12>>2]=c[z+12>>2];c[y+16>>2]=c[z+16>>2];c[y+20>>2]=c[z+20>>2];c[y+24>>2]=c[z+24>>2];c[y+28>>2]=c[z+28>>2];h[x>>3]=+h[(+h[x>>3]<+h[y>>3]?x:y)>>3];h[i>>3]=+h[(+h[i>>3]<+h[j>>3]?x:y)+8>>3];h[k>>3]=+h[(+h[k>>3]>+h[m>>3]?x:y)+16>>3];h[n>>3]=+h[(+h[n>>3]>+h[o>>3]?x:y)+24>>3]}b=c[q>>2]|0;if(b|0){f=(c[w>>2]|0)+((c[s>>2]|0)+-1<<4)|0;c[u>>2]=c[r>>2];c[u+4>>2]=c[r+4>>2];c[u+8>>2]=c[r+8>>2];c[u+12>>2]=c[r+12>>2];c[v>>2]=c[f>>2];c[v+4>>2]=c[f+4>>2];c[v+8>>2]=c[f+8>>2];c[v+12>>2]=c[f+12>>2];JE(A,u,v,1.0,b);c[y>>2]=c[A>>2];c[y+4>>2]=c[A+4>>2];c[y+8>>2]=c[A+8>>2];c[y+12>>2]=c[A+12>>2];c[y+16>>2]=c[A+16>>2];c[y+20>>2]=c[A+20>>2];c[y+24>>2]=c[A+24>>2];c[y+28>>2]=c[A+28>>2];h[x>>3]=+h[(+h[x>>3]<+h[y>>3]?x:y)>>3];h[i>>3]=+h[(+h[i>>3]<+h[j>>3]?x:y)+8>>3];h[k>>3]=+h[(+h[k>>3]>+h[m>>3]?x:y)+16>>3];h[n>>3]=+h[(+h[n>>3]>+h[o>>3]?x:y)+24>>3]}g=g+1|0}B=a+8|0;c[B>>2]=c[x>>2];c[B+4>>2]=c[x+4>>2];c[B+8>>2]=c[x+8>>2];c[B+12>>2]=c[x+12>>2];c[B+16>>2]=c[x+16>>2];c[B+20>>2]=c[x+20>>2];c[B+24>>2]=c[x+24>>2];c[B+28>>2]=c[x+28>>2];l=C;return}function UG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0;n=l;l=l+48|0;i=n+32|0;j=n;k=c[b+4>>2]|0;if((k|0)<=0)qa(98144,96880,3968,98156);if(((k>>>0)%3|0|0)!=1)qa(98166,96880,3969,98156);m=j+16|0;d=c[b>>2]|0;c[m>>2]=c[d>>2];c[m+4>>2]=c[d+4>>2];c[m+8>>2]=c[d+8>>2];c[m+12>>2]=c[d+12>>2];c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];e=i+8|0;f=j+8|0;g=j+24|0;b=1;while(1){if((b|0)>=(k|0))break;p=+h[d+(b<<4)+8>>3];t=b+1|0;o=+h[d+(t<<4)+8>>3];r=(+h[d+(t<<4)>>3]+ +h[d+(b<<4)>>3])*.5;h[i>>3]=r;p=(o+p)*.5;h[e>>3]=p;o=+h[(+h[j>>3]<r?j:i)>>3];h[j>>3]=o;s=+h[(+h[f>>3]<p?j:i)+8>>3];h[f>>3]=s;r=+h[(+h[m>>3]>r?m:i)>>3];h[m>>3]=r;p=+h[(+h[g>>3]>p?m:i)+8>>3];h[g>>3]=p;t=d+(b+2<<4)|0;c[i>>2]=c[t>>2];c[i+4>>2]=c[t+4>>2];c[i+8>>2]=c[t+8>>2];c[i+12>>2]=c[t+12>>2];q=+h[i>>3];h[j>>3]=+h[(o<q?j:i)>>3];o=+h[e>>3];h[f>>3]=+h[(s<o?j:i)+8>>3];h[m>>3]=+h[(r>q?m:i)>>3];h[g>>3]=+h[(p>o?m:i)+8>>3];b=b+3|0}c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];c[a+8>>2]=c[j+8>>2];c[a+12>>2]=c[j+12>>2];c[a+16>>2]=c[j+16>>2];c[a+20>>2]=c[j+20>>2];c[a+24>>2]=c[j+24>>2];c[a+28>>2]=c[j+28>>2];l=n;return}function VG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0.0,f=0.0,g=0.0,i=0,j=0.0,k=0,l=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0;q=+h[a>>3];r=+h[c>>3];k=!(q>=r);if((!k?q<=+h[c+16>>3]:0)?(e=+h[a+8>>3],e>=+h[c+8>>3]):0)i=e<=+h[c+24>>3];else i=0;e=+h[b>>3];if((e>=r?e<=+h[c+16>>3]:0)?(f=+h[b+8>>3],f>=+h[c+8>>3]):0){d=f<=+h[c+24>>3];if(!(i^d))if(i&d)d=1;else l=11;else d=0}else if(i)d=0;else l=11;a:do if((l|0)==11){p=+h[a+8>>3];do if(q==e){r=+h[c+8>>3];if(!(k|p>=r^+h[b+8>>3]>=r^1)?q<=+h[c+16>>3]:0){d=0;break a}}else{j=+h[b+8>>3];if(p==j){if(!(q>=r^e>=r))break;if(!(p>=+h[c+8>>3]))break;if(!(p<=+h[c+24>>3]))break;else{d=0;break a}}o=(j-p)/(e-q);l=q<e;g=l?q:e;e=l?e:q;f=(r-q)*o+p;m=+h[c+8>>3];if(!(!(r>=g)|!(r<=e)|!(f>=m))?f<=+h[c+24>>3]:0){d=0;break a}n=+h[c+16>>3];f=(n-r)*o+f;if(f>=m?!(!(n<=e)|(n>=g?!(f<=+h[c+24>>3]):1)):0){d=0;break a}l=p<j;g=l?p:j;f=l?j:p;e=(m-p)/o+q;if(e>=r?!(!(m<=f)|(!(m>=g)|!(e<=n))):0){d=0;break a}p=+h[c+24>>3];q=(p-m)/o+e;if(q>=r?!(!(p<=f)|(!(p>=g)|!(q<=n))):0){d=0;break a}}while(0);d=-1}while(0);return d|0}function WG(a){a=a|0;var b=0,c=0.0;b=a+16|0;c=+h[b>>3];h[a+32>>3]=c;h[a+48>>3]=c;h[a+40>>3]=+h[a+24>>3];h[a+56>>3]=+h[a+8>>3];h[b>>3]=+h[a>>3];return}function XG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,g=0.0,i=0.0;if((c[46360]|0)!=(d|0)){w$(+(d|0)*.15915494309189535,183248,183256);c[46360]=d}g=+h[b>>3];e=+h[22907];f=+h[b+8>>3];i=+h[22906];h[a>>3]=e*g-i*f;h[a+8>>3]=i*g+f*e;return}function YG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0.0,i=0,j=0,k=0;k=l;l=l+16|0;f=k;e=+h[b>>3];i=b+8|0;g=+h[i>>3];a:do switch(d|0){case 0:{j=11;break}case 90:{h[b>>3]=g;e=-e;j=10;break}case 180:{e=-g;j=10;break}case 270:{h[b>>3]=g;j=10;break}default:{if((d|0)<0){c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];ZG(a,f,0-d|0);break a}if((d|0)>360){c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];YG(a,f,(d>>>0)%360|0);break a}else{c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];XG(a,f,d);break a}}}while(0);if((j|0)==10){h[i>>3]=e;j=11}if((j|0)==11){c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2]}l=k;return}function ZG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0.0,i=0,j=0,k=0;k=l;l=l+16|0;f=k;e=+h[b>>3];i=b+8|0;g=+h[i>>3];a:do switch(d|0){case 0:{j=11;break}case 90:{h[b>>3]=-g;j=10;break}case 180:{e=-g;j=10;break}case 270:{h[b>>3]=g;j=10;break}default:{if((d|0)<0){c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];YG(a,f,0-d|0);break a}if((d|0)>360){c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];ZG(a,f,(d>>>0)%360|0);break a}else{c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];XG(a,f,360-d|0);break a}}}while(0);if((j|0)==10){h[i>>3]=e;j=11}if((j|0)==11){c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2]}l=k;return}function _G(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0,g=0.0;g=+h[c>>3];d=+h[c+8>>3];f=d+ +h[b>>3];e=g+ +h[b+24>>3];d=d+ +h[b+16>>3];h[a>>3]=g+ +h[b+8>>3];h[a+8>>3]=f;h[a+16>>3]=e;h[a+24>>3]=d;return}function $G(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0,g=0.0;f=+h[a>>3];d=+h[b>>3]-f;g=+h[a+8>>3];e=+h[b+8>>3]-g;f=(+h[c+8>>3]-g)*d-(+h[c>>3]-f)*e;f=f*f;return +(f<1.0e-10?0.0:f/(e*e+d*d))}function aH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;f=g+8|0;e=g;a=xx(a,b)|0;if(a|0?(c[f>>2]=e,(N1(a,98183,f)|0)>0):0)h[d>>3]=+h[e>>3];l=g;return}function bH(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;g=n+8|0;i=n;e=uH(96)|0;m=b+16|0;c[(c[m>>2]|0)+8>>2]=e;e=xx(b,98187)|0;if(!e){e=Ta(98196)|0;if(e|0)k=3}else k=3;if((k|0)==3)cb(98208,e|0,1)|0;e=(cH(b)|0)&255;a[(c[m>>2]|0)+115>>0]=e;if(0==0?(e=xx(b,98219)|0,c[46362]=e,(e|0)==0):0)c[46362]=c[46361];f=+LL(b,nx(b,0,98229,0)|0,0.0,0.0);h[c[(c[m>>2]|0)+8>>2]>>3]=f;e=xx(b,98237)|0;a:do if(!e)e=0;else{switch(a[e>>0]|0){case 76:{if(!(b$(e,98245)|0)){e=1;break a}break}case 66:{if(!(b$(e,98248)|0)){e=2;break a}break}case 82:{e=(b$(e,98251)|0)==0;e=e?3:0;break a}default:{e=0;break a}}e=0}while(0);c[(c[m>>2]|0)+116>>2]=e<<2|(d<<24>>24==0?0:e);f=+LL(b,nx(b,0,98254,0)|0,.25,.02);h[i>>3]=f;f=f*72.0;c[(c[m>>2]|0)+248>>2]=~~(f+(f>=0.0?.5:-.5));e=NL(b,nx(b,0,98262,0)|0,0)|0;if(e){c[g>>2]=i;if(N1(e,98183,g)|0){f=+h[i>>3];if(f<.02){h[i>>3]=.02;f=.02}}else{h[i>>3]=.5;f=.5}if(P0(e,98270)|0)a[(c[m>>2]|0)+276>>0]=1}else{h[i>>3]=.5;f=.5}f=f*72.0;c[(c[m>>2]|0)+252>>2]=~~(f+(f>=0.0?.5:-.5));i=(KL(b,nx(b,0,98278,0)|0,0,0)|0)&255;a[(c[m>>2]|0)+243>>0]=i;i=aM(NL(b,nx(b,0,98288,0)|0,0)|0,20572,20588)|0;c[(c[m>>2]|0)+244>>2]=i;dH(b);i=eH(b,98298,(c[(c[m>>2]|0)+8>>2]|0)+64|0)|0;e=c[(c[m>>2]|0)+8>>2]|0;a[e+80>>0]=i;eH(b,98303,e+48|0)|0;e=QL(xx(b,98308)|0)|0;a[(c[(c[m>>2]|0)+8>>2]|0)+82>>0]=e;e=xx(b,98315)|0;do if(!e){e=xx(b,98322)|0;if(e|0){e=(a[e>>0]|32)<<24>>24==108&1;k=27;break}e=xx(b,98334)|0;if(e|0){e=QL(e)|0;k=27}}else{e=(a2(e)|0)==90&1;k=27}while(0);if((k|0)==27)a[(c[(c[m>>2]|0)+8>>2]|0)+81>>0]=e;c[46364]=aM(xx(b,98344)|0,20604,20620)|0;a[191874]=QL(xx(b,98356)|0)|0;c[46367]=0;c[46368]=0;h[(c[(c[m>>2]|0)+8>>2]|0)+24>>3]=0.0;e=xx(b,98368)|0;if((e|0)!=0?(a[e>>0]|0)!=0:0)k=32;else k=30;if(((k|0)==30?(j=xx(b,98372)|0,j|0):0)?a[j>>0]|0:0){e=j;k=32}if((k|0)==32){f=+b2(e);h[(c[(c[m>>2]|0)+8>>2]|0)+24>>3]=f}fH(b);h[22910]=1.e+37;c[46370]=nx(b,0,98383,0)|0;c[46373]=nx(b,0,137952,0)|0;c[46374]=nx(b,0,102470,0)|0;c[46375]=nx(b,1,137966,0)|0;c[46376]=nx(b,1,138034,0)|0;c[46377]=nx(b,1,105204,0)|0;c[46378]=nx(b,1,137741,0)|0;c[46379]=nx(b,1,98392,0)|0;c[46387]=nx(b,1,138e3,0)|0;c[46380]=nx(b,1,98402,0)|0;c[46381]=nx(b,1,98411,0)|0;c[46382]=nx(b,1,98420,0)|0;k=nx(b,1,105198,0)|0;c[46384]=k;if(!k)c[46384]=nx(b,1,105198,102467)|0;c[46385]=nx(b,1,98430,0)|0;c[46388]=nx(b,1,98278,0)|0;c[46402]=nx(b,1,98437,0)|0;c[46391]=nx(b,1,98383,0)|0;c[46383]=nx(b,1,102470,0)|0;c[46389]=nx(b,1,137994,0)|0;c[46390]=nx(b,1,98446,0)|0;c[46393]=nx(b,1,98458,0)|0;c[46392]=nx(b,1,98322,0)|0;c[46394]=nx(b,1,98463,0)|0;c[46395]=nx(b,1,137942,0)|0;c[46396]=nx(b,1,134215,0)|0;c[46386]=nx(b,1,98474,0)|0;c[46397]=nx(b,1,98484,0)|0;c[46398]=nx(b,1,98490,0)|0;c[46399]=nx(b,1,98496,0)|0;c[46400]=nx(b,1,98504,0)|0;c[46401]=nx(b,1,98513,0)|0;c[46403]=nx(b,1,137952,0)|0;c[46404]=nx(b,2,98515,0)|0;c[46406]=nx(b,2,137741,0)|0;c[46407]=nx(b,2,98392,0)|0;c[46409]=nx(b,2,98402,0)|0;c[46410]=nx(b,2,98411,0)|0;c[46411]=nx(b,2,98420,0)|0;c[46412]=nx(b,2,105198,0)|0;c[46413]=nx(b,2,98430,0)|0;c[46422]=nx(b,2,98522,0)|0;c[46414]=nx(b,2,98533,0)|0;c[46425]=nx(b,2,98537,0)|0;c[46426]=nx(b,2,98547,0)|0;c[46427]=nx(b,2,98557,0)|0;c[46428]=nx(b,2,98567,0)|0;c[46429]=nx(b,2,98577,0)|0;c[46430]=nx(b,2,98591,0)|0;c[46431]=nx(b,2,98605,0)|0;c[46432]=nx(b,2,98620,0)|0;c[46433]=nx(b,2,98634,0)|0;c[46405]=nx(b,2,98645,0)|0;c[46417]=nx(b,2,98278,0)|0;c[46415]=nx(b,2,138e3,0)|0;c[46416]=nx(b,2,98652,0)|0;c[46418]=nx(b,2,98661,0)|0;c[46419]=nx(b,2,98671,0)|0;c[46420]=nx(b,2,98484,0)|0;c[46421]=nx(b,2,98496,0)|0;c[46434]=nx(b,2,98682,0)|0;c[46435]=nx(b,2,98691,0)|0;c[46436]=nx(b,2,98437,0)|0;e=ME(b)|0;c[(c[(c[m>>2]|0)+8>>2]|0)+88>>2]=e;e=xx(b,137978)|0;if(e|0?a[e>>0]|0:0){b=pH(e,b)|0;c[(c[(c[m>>2]|0)+8>>2]|0)+92>>2]=b}l=n;return}function cH(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;a=OL(a,nx(a,0,98781,0)|0,98789)|0;if(((((((O$(a,98795)|0)!=0?(O$(a,98803)|0)!=0:0)?(O$(a,98810)|0)!=0:0)?(O$(a,98813)|0)!=0:0)?(O$(a,98824)|0)!=0:0)?(O$(a,98835)|0)!=0:0)?(O$(a,98845)|0)!=0:0)if((O$(a,98856)|0)!=0?(O$(a,98862)|0)!=0:0)if((O$(a,98789)|0)!=0?(O$(a,98867)|0)!=0:0){c[b>>2]=a;Pw(0,98872,b)|0;a=0}else a=0;else a=2;else a=1;l=d;return a|0}function dH(b){b=b|0;var d=0.0,e=0,f=0;e=xx(b,98739)|0;a:do if(e|0?(f=a[e>>0]|0,f<<24>>24):0)switch(f<<24>>24|0){case 97:{if(f<<24>>24!=97)break a;if(b$(e,98745)|0)break a;c[(c[(c[b+16>>2]|0)+8>>2]|0)+84>>2]=4;break a}case 99:{if(f<<24>>24!=99)break a;if(b$(e,98750)|0)break a;c[(c[(c[b+16>>2]|0)+8>>2]|0)+84>>2]=3;break a}case 101:{if(f<<24>>24!=101)break a;if(b$(e,98759)|0)break a;c[(c[(c[b+16>>2]|0)+8>>2]|0)+84>>2]=5;break a}case 102:{if(f<<24>>24!=102)break a;if(b$(e,98766)|0)break a;c[(c[(c[b+16>>2]|0)+8>>2]|0)+84>>2]=2;break a}default:{d=+b2(e);if(!(d>0.0))break a;b=c[(c[b+16>>2]|0)+8>>2]|0;c[b+84>>2]=1;h[b+16>>3]=d;break a}}while(0);return}function eH(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;m=o+32|0;i=o+16|0;k=o+8|0;j=o;n=o+40|0;a[n>>0]=0;b=xx(b,d)|0;do if(b){c[i>>2]=k;c[i+4>>2]=j;c[i+8>>2]=n;i=(N1(b,98723,i)|0)>1;g=+h[k>>3];f=+h[j>>3];if(i&g>0.0&f>0.0){g=g*72.0;h[e>>3]=+(~~(g+(g>=0.0?.5:-.5))|0);g=f*72.0;h[e+8>>3]=+(~~(g+(g>=0.0?.5:-.5))|0);b=(a[n>>0]|0)==33;break}a[n>>0]=0;c[m>>2]=k;c[m+4>>2]=n;m=(N1(b,98733,m)|0)>0;f=+h[k>>3];if(m&f>0.0){g=f*72.0;g=+(~~(g+(g>=0.0?.5:-.5))|0);h[e>>3]=g;h[e+8>>3]=g;b=(a[n>>0]|0)==33}else b=0}else b=0;while(0);l=o;return b&1|0}function fH(b){b=b|0;var d=0,e=0,f=0.0,g=0.0,i=0;d=xx(b,105198)|0;do if(d|0?a[d>>0]|0:0){e=(c[(c[b+60>>2]|0)+16>>2]|0)+113|0;a[e>>0]=a[e>>0]|8;e=(Rz(d)|0)!=0;g=+LL(b,nx(b,0,98402,0)|0,14.0,1.0);i=OL(b,nx(b,0,98411,0)|0,104968)|0;d=kH(b,d,e?2:0,g,i,OL(b,nx(b,0,98420,0)|0,134232)|0)|0;i=b+16|0;c[(c[i>>2]|0)+12>>2]=d;d=xx(b,102602)|0;e=(d|0)!=0;do if((fz(b)|0)==(b|0)){if(e?(a[d>>0]|0)==116:0){d=1;break}d=0}else{if(e?(a[d>>0]|0)==98:0){d=0;break}d=1}while(0);e=xx(b,98700)|0;a:do if(e)switch(a[e>>0]|0){case 108:{d=d|2;break a}case 114:{d=d|4;break a}default:break a}while(0);a[(c[i>>2]|0)+275>>0]=d;if((fz(b)|0)!=(b|0)){d=c[(c[i>>2]|0)+12>>2]|0;f=+h[d+24>>3]+16.0;g=+h[d+32>>3]+8.0;b=(c[(c[(fz(b)|0)+16>>2]|0)+116>>2]&1|0)==0;d=c[i>>2]|0;e=a[d+275>>0]<<1&2;if(b){b=e&255;h[d+48+(b<<4)>>3]=f;h[d+48+(b<<4)+8>>3]=g;break}else{b=(e^3)&255;h[d+48+(b<<4)>>3]=g;h[d+48+(b<<4)+8>>3]=f;break}}}while(0);return}function gH(a){a=a|0;var b=0,d=0,e=0;e=a+16|0;d=c[e>>2]|0;b=c[d+8>>2]|0;do if(!b)b=d;else{d=c[b+88>>2]|0;if(d){pE(d);d=c[e>>2]|0;b=c[d+8>>2]|0;if(!b){b=d;break}}D_(c[b+92>>2]|0);b=c[e>>2]|0}while(0);D_(c[b+8>>2]|0);e=c[e>>2]|0;c[e+8>>2]=0;nH(c[e+12>>2]|0);Gz(a,0,134401);return}function hH(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;switch(a|0){case 0:{a=98945;break}case 1:{a=98813;break}case 2:{a=98951;break}default:{c[b>>2]=a;Pw(1,98915,b)|0;a=98945}}l=d;return a|0}function iH(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=c[d>>2]|0;l=d+24|0;c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0;if(a[f>>0]|0){i=vH((W_(f)|0)+1|0)|0;a[i>>0]=0;j=d+12|0;e=i;a:while(1){b:while(1){h=f+1|0;g=a[f>>0]|0;if(!(g<<24>>24))break a;if(!(g<<24>>24==-1|((g&255)<161|(c[j>>2]|0)!=2))){a[e>>0]=g;h=a[h>>0]|0;g=e+2|0;a[e+1>>0]=h;if(!(h<<24>>24)){e=g;break a}else{e=g;f=f+2|0;continue}}switch(g<<24>>24){case 92:break b;case 10:{k=12;break b}default:{}}a[e>>0]=g;e=e+1|0;f=h}if((k|0)==12){k=0;f=e+1|0;a[e>>0]=0;jH(b,d,i,110);e=f;i=f;f=h;continue}g=a[h>>0]|0;switch(g<<24>>24|0){case 114:case 108:case 110:{g=e+1|0;a[e>>0]=0;jH(b,d,i,a[h>>0]|0);e=g;break}default:{a[e>>0]=g;e=e+1|0;g=i}}i=g;f=(a[h>>0]|0)==0?h:f+2|0}if((i|0)!=(e|0)){a[e>>0]=0;jH(b,d,i,110)}d=d+40|0;c[d>>2]=c[l>>2];c[d+4>>2]=c[l+4>>2];c[d+8>>2]=c[l+8>>2];c[d+12>>2]=c[l+12>>2]}return}function jH(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+32|0;q=s+16|0;p=s;r=e+76|0;k=b[r>>1]|0;o=e+72|0;m=c[o>>2]|0;if(!m)n=uH((k*56|0)+112|0)|0;else n=wH(m,k+2|0,56,k+1|0)|0;c[o>>2]=n;k=b[r>>1]|0;m=n+(k*56|0)|0;c[m>>2]=f;a[n+(k*56|0)+48>>0]=g;if((f|0)!=0?(a[f>>0]|0)!=0:0){c[45824]=c[e+4>>2];h[22914]=+h[e+16>>3];g=c[d+144>>2]|0;c[n+(k*56|0)+4>>2]=nb[c[g>>2]&63](g,183296,1)|0;wL(p,d,m);j=+h[p>>3];h[q>>3]=j;i=+h[p+8>>3]}else{h[q>>3]=0.0;i=+(~~(+h[e+16>>3]*1.2)|0);h[n+(k*56|0)+40>>3]=i;j=0.0}b[r>>1]=(b[r>>1]|0)+1<<16>>16;r=e+24|0;h[r>>3]=+h[(+h[r>>3]>j?r:q)>>3];r=e+32|0;h[r>>3]=+h[r>>3]+i;l=s;return}function kH(b,e,f,g,i,j){b=b|0;e=e|0;f=f|0;g=+g;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+32|0;r=u+16|0;q=u+8|0;p=u;t=uH(88)|0;switch(pz(b)|0){case 0:{m=0;s=c[b+60>>2]|0;n=b;o=0;break}case 1:{m=0;s=fz(ez(b)|0)|0;n=0;o=b;break}case 2:{m=b;s=fz(ez(c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)|0)|0;n=0;o=0;break}default:{m=0;s=0;n=0;o=0}}c[t+4>>2]=i;c[t+8>>2]=j;h[t+16>>3]=g;k=s+16|0;j=t+12|0;c[j>>2]=d[(c[k>>2]|0)+115>>0];a:do if(f&4){c[t>>2]=n1(e)|0;if(f&2|0)a[t+82>>0]=1}else switch(f|0){case 2:{c[t>>2]=n1(e)|0;a[t+82>>0]=1;if(!(kR(b,t)|0))break a;switch(pz(b)|0){case 0:{c[p>>2]=ry(n)|0;Pw(3,98957,p)|0;break a}case 1:{c[q>>2]=ry(o)|0;Pw(3,98979,q)|0;break a}case 2:{p=ry(c[((c[m>>2]&3|0)==3?m:m+48|0)+40>>2]|0)|0;q=(ey(s)|0)!=0;s=ry(c[((c[m>>2]&3|0)==2?m:m+-48|0)+40>>2]|0)|0;c[r>>2]=p;c[r+4>>2]=q?134656:138665;c[r+8>>2]=s;Pw(3,99e3,r)|0;break a}default:break a}}case 0:{i=lH(e,b,0)|0;c[t>>2]=i;if((c[j>>2]|0)==1)i=RM(i)|0;else i=OM(i,s)|0;D_(c[t>>2]|0);c[t>>2]=i;iH(c[(c[k>>2]|0)+144>>2]|0,t);break a}default:qa(99027,99043,166,99052)}while(0);l=u;return t|0}function lH(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;switch(pz(d)|0){case 0:{i=ry(d)|0;g=W_(i)|0;f=c[(c[d+16>>2]|0)+12>>2]|0;if(f){f=c[f>>2]|0;if(!b){v=0;t=2;u=2;s=2;h=2;y=99075;m=99072;j=102467;o=191979;q=191979;p=0;r=0;n=2;w=f;x=99069}else{v=0;t=2;u=2;s=2;h=2;y=99075;m=99072;j=102467;o=191979;q=191979;p=0;r=0;n=W_(f)|0;w=f;x=99069}}else{v=0;t=2;u=2;s=2;h=2;y=99075;m=99072;j=102467;o=191979;q=191979;p=0;r=0;n=2;w=99063;x=99069}break}case 1:{i=ry(ez(d)|0)|0;g=W_(i)|0;j=ry(d)|0;h=W_(j)|0;f=c[(c[d+16>>2]|0)+104>>2]|0;if(f){f=c[f>>2]|0;if(!b){v=0;t=2;u=2;s=2;y=99075;m=99072;o=191979;q=191979;p=0;r=0;n=2;w=f;x=99069}else{v=0;t=2;u=2;s=2;y=99075;m=99072;o=191979;q=191979;p=0;r=0;n=W_(f)|0;w=f;x=99069}}else{v=0;t=2;u=2;s=2;y=99075;m=99072;o=191979;q=191979;p=0;r=0;n=2;w=99063;x=99069}break}case 2:{h=d+48|0;i=ry(fz(ez(c[((c[d>>2]&3|0)==3?d:h)+40>>2]|0)|0)|0)|0;g=W_(i)|0;l=ry(c[((c[d>>2]&3|0)==3?d:h)+40>>2]|0)|0;k=W_(l)|0;f=d+16|0;q=c[(c[f>>2]|0)+52>>2]|0;if(!q)r=0;else r=W_(q)|0;m=ry(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0)|0;f=c[f>>2]|0;o=c[f+92>>2]|0;if(!o)p=0;else p=W_(o)|0;j=W_(m)|0;f=c[f+96>>2]|0;if(f){f=c[f>>2]|0;if(!b)n=2;else n=W_(f)|0}else{n=2;f=99063}x=(ey(fz(ez(c[((c[d>>2]&3|0)==3?d:h)+40>>2]|0)|0)|0)|0)==0;v=1;t=k;u=j;s=k+2+(r|0?r+1|0:0)+j+(p|0?p+1|0:0)|0;h=2;y=l;j=102467;w=f;x=x?138665:134656;break}default:{v=0;t=2;u=2;s=2;h=2;g=2;y=99075;m=99072;j=102467;i=99066;o=191979;q=191979;p=0;r=0;n=2;w=99063;x=99069}}e=(e|0)==0;l=0;f=b;a:while(1){d=f+1|0;b:do switch(a[f>>0]|0){case 0:break a;case 92:{f=f+2|0;switch(a[d>>0]|0){case 78:{k=h;break b}case 71:{k=g;break b}case 69:{k=s;break b}case 72:{k=u;break b}case 84:{k=t;break b}case 76:{k=n;break b}case 92:{if(!e){k=1;break b}break}default:{}}k=2;break}default:{k=1;f=d}}while(0);l=l+k|0}s=vH(l+1|0)|0;n=(v|0)==0;l=(r|0)==0;d=(p|0)==0;f=s;g=b;c:while(1){k=g+1|0;h=a[g>>0]|0;switch(h<<24>>24){case 0:break c;case 92:break;default:{a[f>>0]=h;f=f+1|0;g=k;continue c}}h=g+2|0;g=a[k>>0]|0;switch(g<<24>>24|0){case 71:{g=i;while(1){b=a[g>>0]|0;a[f>>0]=b;if(!(b<<24>>24)){g=h;continue c}g=g+1|0;f=f+1|0}}case 78:{g=j;while(1){b=a[g>>0]|0;a[f>>0]=b;if(!(b<<24>>24)){g=h;continue c}g=g+1|0;f=f+1|0}}case 69:{if(n){g=h;continue c}else g=y;while(1){b=a[g>>0]|0;a[f>>0]=b;if(!(b<<24>>24))break;g=g+1|0;f=f+1|0}if(l)g=x;else{a[f>>0]=58;g=q;while(1){f=f+1|0;b=a[g>>0]|0;a[f>>0]=b;if(!(b<<24>>24)){g=x;break}else g=g+1|0}}while(1){b=a[g>>0]|0;a[f>>0]=b;if(!(b<<24>>24)){g=m;break}g=g+1|0;f=f+1|0}while(1){b=a[g>>0]|0;a[f>>0]=b;if(!(b<<24>>24))break;g=g+1|0;f=f+1|0}if(d){g=h;continue c}a[f>>0]=58;g=o;while(1){f=f+1|0;b=a[g>>0]|0;a[f>>0]=b;if(!(b<<24>>24)){g=h;continue c}else g=g+1|0}}case 84:{g=y;while(1){b=a[g>>0]|0;a[f>>0]=b;if(!(b<<24>>24)){g=h;continue c}g=g+1|0;f=f+1|0}}case 72:{g=m;while(1){b=a[g>>0]|0;a[f>>0]=b;if(!(b<<24>>24)){g=h;continue c}f=f+1|0;g=g+1|0}}case 76:{g=w;while(1){b=a[g>>0]|0;a[f>>0]=b;if(!(b<<24>>24)){g=h;continue c}f=f+1|0;g=g+1|0}}case 92:{if(!e){a[f>>0]=92;f=f+1|0;g=h;continue c}break}default:{}}a[f>>0]=92;a[f+1>>0]=g;f=f+2|0;g=h}a[f>>0]=0;return s|0}function mH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if(a|0){d=a;e=0;while(1){if((e|0)>=(b|0))break;if(!e)D_(c[d>>2]|0);g=c[d+8>>2]|0;if(g|0?(f=c[d+12>>2]|0,f|0):0)tb[f&127](g);d=d+56|0;e=e+1|0}D_(a)}return}function nH(d){d=d|0;var e=0;if(d|0){D_(c[d>>2]|0);e=d+72|0;if(a[d+82>>0]|0){e=c[e>>2]|0;if(e|0)XQ(e,1)}else mH(c[e>>2]|0,b[d+76>>1]|0);D_(d)}return}function oH(d,e,f){d=d|0;e=e|0;f=f|0;var g=0.0,i=0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+32|0;q=u+16|0;r=u;k=c[d+16>>2]|0;s=k+12|0;t=c[s>>2]|0;c[s>>2]=e;if(!(a[f+82>>0]|0)){p=f+76|0;if((b[p>>1]|0)>=1){RO(d,0);UO(d,c[f+8>>2]|0);switch(a[f+80>>0]|0){case 116:{j=+h[f+64>>3];g=+h[f+48>>3]*.5+j;break}case 98:{j=+h[f+64>>3];g=+h[f+48>>3]*-.5+j+ +h[f+32>>3];break}default:{j=+h[f+64>>3];g=+h[f+32>>3]*.5+j}}g=g-+h[f+16>>3];o=r+8|0;h[o>>3]=g;if(b[k+260>>1]&512)h[o>>3]=g-j;m=f+72|0;n=f+56|0;i=f+40|0;e=0;while(1){if((e|0)>=(b[p>>1]|0))break;k=c[m>>2]|0;switch(a[k+(e*56|0)+48>>0]|0){case 108:{g=+h[n>>3]-+h[i>>3]*.5;break}case 114:{g=+h[i>>3]*.5+ +h[n>>3];break}default:g=+h[n>>3]}h[r>>3]=g;c[q>>2]=c[r>>2];c[q+4>>2]=c[r+4>>2];c[q+8>>2]=c[r+8>>2];c[q+12>>2]=c[r+12>>2];TO(d,q,k+(e*56|0)|0);h[o>>3]=+h[o>>3]-+h[(c[m>>2]|0)+(e*56|0)+40>>3];e=e+1|0}SO(d);i=18}}else{CQ(d,c[f+72>>2]|0,f);i=18}if((i|0)==18)c[s>>2]=t;l=u;return}function pH(a,b){a=a|0;b=b|0;return lH(a,b,1)|0}function qH(a){a=a|0;return rH(a,0)|0}function rH(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=c[46437]|0;if(!e){c[46438]=64;e=vH(64)|0;c[46437]=e}j=d<<24>>24==0;i=0;f=0;h=b;while(1){if(!h)break;d=a[h>>0]|0;if(!(d<<24>>24))break;b=c[46438]|0;if((i|0)>(b+-8|0)){e=b<<1;c[46438]=e;e=xH(c[46437]|0,e)|0;c[46437]=e;e=e+i|0;d=a[h>>0]|0}a:do switch(d<<24>>24){case 38:{if(j?(sH(h)|0)!=0:0)k=18;else{f=5;d=99104}break}case 60:{f=4;d=99127;break}case 62:{f=4;d=99110;break}case 45:{f=5;d=99121;break}default:{if((f|0)!=0&d<<24>>24==32)if((a[f>>0]|0)==32){f=6;d=99097;break a}else{k=18;break a}switch(d<<24>>24){case 34:{f=6;d=99090;break a}case 39:{f=5;d=99115;break a}case 10:if(j){k=18;break a}else{f=5;d=99084;break a}default:{k=18;break a}}}}while(0);if((k|0)==18){k=0;d=j|d<<24>>24!=13;f=d?1:5;d=d?h:99078}g=e+f|0;b=f;while(1){if(!b)break;a[e>>0]=a[d>>0]|0;b=b+-1|0;d=d+1|0;e=e+1|0}b=h;i=f+i|0;e=g;h=h+1|0;f=b}a[e>>0]=0;return c[46437]|0}function sH(b){b=b|0;var c=0,d=0;d=b+1|0;c=a[d>>0]|0;a:do if(c<<24>>24==35){d=b+2|0;c=a[d>>0]|0;switch(c<<24>>24){case 88:case 120:break;default:{b=d;while(1){d=b+1|0;if((c+-48&255)>=10)break a;b=d;c=a[d>>0]|0}}}d=b+3|0;while(1){c=a[d>>0]|0;if((c+-48&255)>=10)switch(c<<24>>24){case 65:case 66:case 67:case 68:case 69:case 70:case 97:case 98:case 99:case 100:case 101:case 102:break;default:break a}d=d+1|0}}else while(1){b=d+1|0;if(((c&-33)+-65&255)>=26)break a;d=b;c=a[b>>0]|0}while(0);return c<<24>>24==59|0}function tH(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=c[46439]|0;if(!d){c[46440]=64;d=vH(64)|0;c[46439]=d;i=0}else i=0;while(1){if(!b)break;e=a[b>>0]|0;if(!(e<<24>>24))break;f=c[46440]|0;if((i|0)>(f+-8|0)){d=f<<1;c[46440]=d;d=xH(c[46439]|0,d)|0;c[46439]=d;d=d+i|0;e=a[b>>0]|0}switch(e<<24>>24){case 38:{if(!(sH(b)|0)){g=5;e=99104}else j=12;break}case 60:{g=4;e=99127;break}case 62:{g=4;e=99110;break}case 34:{g=6;e=99090;break}case 39:{g=5;e=99115;break}default:j=12}if((j|0)==12){j=0;g=1;e=b}h=d+g|0;f=g;while(1){if(!f)break;a[d>>0]=a[e>>0]|0;f=f+-1|0;e=e+1|0;d=d+1|0}i=g+i|0;d=h;b=b+1|0}a[d>>0]=0;return c[46439]|0}function uH(a){a=a|0;var b=0;if(!a)a=0;else{b=vH(a)|0;H3(b|0,0,a|0)|0;a=b}return a|0}function vH(a){a=a|0;if(a){a=C_(a)|0;if(!a){E1(108658,14,1,c[15686]|0)|0;a=0}}else a=0;return a|0}function wH(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=F_(a,O(d,b)|0)|0;if(!((b|0)!=0&(a|0)==0)){if(b>>>0>e>>>0)H3(a+(O(e,d)|0)|0,0,O(b-e|0,d)|0)|0}else E1(108658,14,1,c[15686]|0)|0;return a|0}function xH(a,b){a=a|0;b=b|0;a=F_(a,b)|0;if((b|0)!=0&(a|0)==0)E1(108658,14,1,c[15686]|0)|0;return a|0} + function ol(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;M=l;l=l+320|0;H=M+296|0;G=M+280|0;x=M+136|0;w=M+120|0;n=M+104|0;i=M+88|0;f=M+80|0;E=M+16|0;z=M;j=M+264|0;k=M+248|0;m=M+232|0;o=M+216|0;A=M+200|0;B=M+184|0;y=M+168|0;D=M+152|0;g=pl(xx(a,87703)|0,b)|0;q=pl(xx(a,87709)|0,b)|0;r=(q|0)!=0;b=(g|0)!=0;do if(b|r?(L=a+16|0,e=c[(c[L>>2]|0)+8>>2]|0,e|0):0){if((c[e+4>>2]|0)>1){K=ry(c[((c[a>>2]&3|0)==3?a:a+48|0)+40>>2]|0)|0;L=ry(c[((c[a>>2]&3|0)==2?a:a+-48|0)+40>>2]|0)|0;c[f>>2]=K;c[f+4>>2]=L;Pw(0,87715,f)|0;break}I=c[e>>2]|0;e=c[I+4>>2]|0;p=c[a>>2]&3;s=a+-48|0;t=c[((p|0)==2?a:s)+40>>2]|0;u=a+48|0;p=c[((p|0)==3?a:u)+40>>2]|0;J=vH(48)|0;v=I+12|0;c[J+12>>2]=c[v>>2];C=I+8|0;c[J+8>>2]=c[C>>2];do if(b){h=(c[g+16>>2]|0)+16|0;g=(c[t+16>>2]|0)+16|0;c[H>>2]=c[g>>2];c[H+4>>2]=c[g+4>>2];c[H+8>>2]=c[g+8>>2];c[H+12>>2]=c[g+12>>2];if(!(ql(H,h)|0)){o=ry(c[((c[a>>2]&3|0)==3?a:u)+40>>2]|0)|0;F=ry(c[((c[a>>2]&3|0)==2?a:s)+40>>2]|0)|0;K=xx(a,87703)|0;c[i>>2]=o;c[i+4>>2]=F;c[i+8>>2]=K;Pw(0,87756,i)|0;K=26;break}b=c[I>>2]|0;c[H>>2]=c[b>>2];c[H+4>>2]=c[b+4>>2];c[H+8>>2]=c[b+8>>2];c[H+12>>2]=c[b+12>>2];if(ql(H,h)|0){F=(c[p+16>>2]|0)+16|0;c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[H+8>>2]=c[F+8>>2];c[H+12>>2]=c[F+12>>2];if(ql(H,h)|0){o=ry(c[((c[a>>2]&3|0)==3?a:u)+40>>2]|0)|0;F=ry(c[((c[a>>2]&3|0)==2?a:s)+40>>2]|0)|0;K=xx(a,87703)|0;c[n>>2]=o;c[n+4>>2]=F;c[n+8>>2]=K;Pw(0,87799,n)|0;K=26;break}if(!(c[C>>2]|0))qa(87841,87852,369,87863);o=I+16|0;c[G>>2]=c[b>>2];c[G+4>>2]=c[b+4>>2];c[G+8>>2]=c[b+8>>2];c[G+12>>2]=c[b+12>>2];c[H>>2]=c[o>>2];c[H+4>>2]=c[o+4>>2];c[H+8>>2]=c[o+8>>2];c[H+12>>2]=c[o+12>>2];rl(z,G,H,h);F=(c[I>>2]|0)+48|0;c[F>>2]=c[z>>2];c[F+4>>2]=c[z+4>>2];c[F+8>>2]=c[z+8>>2];c[F+12>>2]=c[z+12>>2];F=(c[I>>2]|0)+16|0;c[G>>2]=c[z>>2];c[G+4>>2]=c[z+4>>2];c[G+8>>2]=c[z+8>>2];c[G+12>>2]=c[z+12>>2];c[H>>2]=c[o>>2];c[H+4>>2]=c[o+4>>2];c[H+8>>2]=c[o+8>>2];c[H+12>>2]=c[o+12>>2];sl(j,G,H);c[F>>2]=c[j>>2];c[F+4>>2]=c[j+4>>2];c[F+8>>2]=c[j+8>>2];c[F+12>>2]=c[j+12>>2];F=c[I>>2]|0;b=F+16|0;c[G>>2]=c[b>>2];c[G+4>>2]=c[b+4>>2];c[G+8>>2]=c[b+8>>2];c[G+12>>2]=c[b+12>>2];c[H>>2]=c[o>>2];c[H+4>>2]=c[o+4>>2];c[H+8>>2]=c[o+8>>2];c[H+12>>2]=c[o+12>>2];sl(k,G,H);c[F>>2]=c[k>>2];c[F+4>>2]=c[k+4>>2];c[F+8>>2]=c[k+8>>2];c[F+12>>2]=c[k+12>>2];F=c[I>>2]|0;b=F+32|0;F=F+16|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];c[H>>2]=c[z>>2];c[H+4>>2]=c[z+4>>2];c[H+8>>2]=c[z+8>>2];c[H+12>>2]=c[z+12>>2];sl(m,G,H);c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];b=c[v>>2]|0;if(!b){F=3;break}F=(FE(a,c[I>>2]|0,0,0,J,b)|0)+3|0;break}g=e+-1|0;b=0;while(1){if((b|0)>=(g|0))break;if(tl((c[I>>2]|0)+(b<<4)|0,h)|0)break;b=b+3|0}e=c[v>>2]|0;f=(e|0)!=0;if((b|0)==(g|0))if(f){F=J+32|0;m=I+32|0;n=(c[I>>2]|0)+(g<<4)|0;c[G>>2]=c[m>>2];c[G+4>>2]=c[m+4>>2];c[G+8>>2]=c[m+8>>2];c[G+12>>2]=c[m+12>>2];c[H>>2]=c[n>>2];c[H+4>>2]=c[n+4>>2];c[H+8>>2]=c[n+8>>2];c[H+12>>2]=c[n+12>>2];rl(o,G,H,h);c[F>>2]=c[o>>2];c[F+4>>2]=c[o+4>>2];c[F+8>>2]=c[o+8>>2];c[F+12>>2]=c[o+12>>2];F=g;break}else qa(87880,87852,387,87863);else{if(f)b=FE(a,c[I>>2]|0,0,b,J,e)|0;F=b+3|0;break}}else K=26;while(0);if((K|0)==26){b=e+-1|0;if(!(c[v>>2]|0))F=b;else{F=J+32|0;o=I+32|0;c[F>>2]=c[o>>2];c[F+4>>2]=c[o+4>>2];c[F+8>>2]=c[o+8>>2];c[F+12>>2]=c[o+12>>2];F=b}}do if(r){f=(c[q+16>>2]|0)+16|0;r=(c[p+16>>2]|0)+16|0;c[H>>2]=c[r>>2];c[H+4>>2]=c[r+4>>2];c[H+8>>2]=c[r+8>>2];c[H+12>>2]=c[r+12>>2];if(!(ql(H,f)|0)){G=ry(c[((c[a>>2]&3|0)==3?a:u)+40>>2]|0)|0;H=ry(c[((c[a>>2]&3|0)==2?a:s)+40>>2]|0)|0;K=xx(a,87709)|0;c[w>>2]=G;c[w+4>>2]=H;c[w+8>>2]=K;Pw(0,87891,w)|0;K=52;break}b=(c[I>>2]|0)+(F<<4)|0;c[H>>2]=c[b>>2];c[H+4>>2]=c[b+4>>2];c[H+8>>2]=c[b+8>>2];c[H+12>>2]=c[b+12>>2];if(ql(H,f)|0){E=(c[t+16>>2]|0)+16|0;c[H>>2]=c[E>>2];c[H+4>>2]=c[E+4>>2];c[H+8>>2]=c[E+8>>2];c[H+12>>2]=c[E+12>>2];if(ql(H,f)|0){G=ry(c[((c[a>>2]&3|0)==3?a:u)+40>>2]|0)|0;H=ry(c[((c[a>>2]&3|0)==2?a:s)+40>>2]|0)|0;K=xx(a,87709)|0;c[x>>2]=G;c[x+4>>2]=H;c[x+8>>2]=K;Pw(0,87934,x)|0;K=52;break}if(!(c[v>>2]|0))qa(87880,87852,429,87863);x=J+32|0;c[G>>2]=c[b>>2];c[G+4>>2]=c[b+4>>2];c[G+8>>2]=c[b+8>>2];c[G+12>>2]=c[b+12>>2];c[H>>2]=c[x>>2];c[H+4>>2]=c[x+4>>2];c[H+8>>2]=c[x+8>>2];c[H+12>>2]=c[x+12>>2];rl(z,G,H,f);d=F+-3|0;E=(c[I>>2]|0)+(d<<4)|0;c[E>>2]=c[z>>2];c[E+4>>2]=c[z+4>>2];c[E+8>>2]=c[z+8>>2];c[E+12>>2]=c[z+12>>2];E=F+-1|0;b=(c[I>>2]|0)+(E<<4)|0;c[G>>2]=c[z>>2];c[G+4>>2]=c[z+4>>2];c[G+8>>2]=c[z+8>>2];c[G+12>>2]=c[z+12>>2];c[H>>2]=c[x>>2];c[H+4>>2]=c[x+4>>2];c[H+8>>2]=c[x+8>>2];c[H+12>>2]=c[x+12>>2];sl(A,G,H);c[b>>2]=c[A>>2];c[b+4>>2]=c[A+4>>2];c[b+8>>2]=c[A+8>>2];c[b+12>>2]=c[A+12>>2];b=c[I>>2]|0;D=b+(F<<4)|0;b=b+(E<<4)|0;c[G>>2]=c[b>>2];c[G+4>>2]=c[b+4>>2];c[G+8>>2]=c[b+8>>2];c[G+12>>2]=c[b+12>>2];c[H>>2]=c[x>>2];c[H+4>>2]=c[x+4>>2];c[H+8>>2]=c[x+8>>2];c[H+12>>2]=c[x+12>>2];sl(B,G,H);c[D>>2]=c[B>>2];c[D+4>>2]=c[B+4>>2];c[D+8>>2]=c[B+8>>2];c[D+12>>2]=c[B+12>>2];D=c[I>>2]|0;b=D+(F+-2<<4)|0;E=D+(E<<4)|0;c[G>>2]=c[E>>2];c[G+4>>2]=c[E+4>>2];c[G+8>>2]=c[E+8>>2];c[G+12>>2]=c[E+12>>2];c[H>>2]=c[z>>2];c[H+4>>2]=c[z+4>>2];c[H+8>>2]=c[z+8>>2];c[H+12>>2]=c[z+12>>2];sl(y,G,H);c[b>>2]=c[y>>2];c[b+4>>2]=c[y+4>>2];c[b+8>>2]=c[y+8>>2];c[b+12>>2]=c[y+12>>2];b=c[C>>2]|0;if(!b)break;d=HE(a,c[I>>2]|0,d,d,J,b)|0;break}e=F;while(1){if((e|0)>0)b=0;else break;while(1){if((b|0)==4)break;B=E+(b<<4)|0;A=(c[I>>2]|0)+(e-b<<4)|0;c[B>>2]=c[A>>2];c[B+4>>2]=c[A+4>>2];c[B+8>>2]=c[A+8>>2];c[B+12>>2]=c[A+12>>2];b=b+1|0}if(tl(E,f)|0){b=0;K=43;break}e=e+-3|0}a:do if((K|0)==43)while(1){K=0;if((b|0)==4)break a;K=(c[I>>2]|0)+(e-b<<4)|0;B=E+(b<<4)|0;c[K>>2]=c[B>>2];c[K+4>>2]=c[B+4>>2];c[K+8>>2]=c[B+8>>2];c[K+12>>2]=c[B+12>>2];b=b+1|0;K=43}while(0);if(e|0){d=e+-3|0;b=c[C>>2]|0;if(!b)break;d=HE(a,c[I>>2]|0,d,F+-3|0,J,b)|0;break}if(!(c[C>>2]|0))qa(87841,87852,452,87863);else{d=J+16|0;E=I+16|0;a=c[I>>2]|0;c[G>>2]=c[E>>2];c[G+4>>2]=c[E+4>>2];c[G+8>>2]=c[E+8>>2];c[G+12>>2]=c[E+12>>2];c[H>>2]=c[a>>2];c[H+4>>2]=c[a+4>>2];c[H+8>>2]=c[a+8>>2];c[H+12>>2]=c[a+12>>2];rl(D,G,H,f);c[d>>2]=c[D>>2];c[d+4>>2]=c[D+4>>2];c[d+8>>2]=c[D+8>>2];c[d+12>>2]=c[D+12>>2];d=0;break}}else K=52;while(0);if((K|0)==52)if(!(c[C>>2]|0))d=0;else{d=J+16|0;K=I+16|0;c[d>>2]=c[K>>2];c[d+4>>2]=c[K+4>>2];c[d+8>>2]=c[K+8>>2];c[d+12>>2]=c[K+12>>2];d=0}b=F-d+1|0;e=J+4|0;c[e>>2]=b;c[J>>2]=vH(b<<4)|0;b=0;while(1){if((b|0)>=(c[e>>2]|0))break;K=(c[J>>2]|0)+(b<<4)|0;a=(c[I>>2]|0)+(d<<4)|0;c[K>>2]=c[a>>2];c[K+4>>2]=c[a+4>>2];c[K+8>>2]=c[a+8>>2];c[K+12>>2]=c[a+12>>2];d=d+1|0;b=b+1|0}D_(c[I>>2]|0);D_(I);c[c[(c[L>>2]|0)+8>>2]>>2]=J}while(0);l=M;return}function pl(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((b|0)!=0?(a[b>>0]|0)!=0:0){d=vM(d,b)|0;if(!d){c[e>>2]=b;Pw(0,88054,e)|0;d=0}}else d=0;l=f;return d|0}function ql(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+h[a>>3];if((+h[b>>3]<=d?d<=+h[b+16>>3]:0)?(c=+h[a+8>>3],+h[b+8>>3]<=c):0)a=c<=+h[b+24>>3]&1;else a=0;return a|0}function rl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0,j=0.0,k=0.0,m=0.0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0.0,z=0,A=0,B=0,C=0;C=l;l=l+464|0;n=C+48|0;B=C+32|0;u=C+16|0;v=C;w=C+364|0;x=C+264|0;z=C+164|0;A=C+64|0;q=+h[b>>3];r=+h[b+8>>3];s=+h[d>>3];t=+h[d+8>>3];c[u>>2]=c[e>>2];c[u+4>>2]=c[e+4>>2];c[u+8>>2]=c[e+8>>2];c[u+12>>2]=c[e+12>>2];e=e+16|0;c[v>>2]=c[e>>2];c[v+4>>2]=c[e+4>>2];c[v+8>>2]=c[e+8>>2];c[v+12>>2]=c[e+12>>2];k=+h[u>>3];if((s<k?(f=r+ +(~~((k-q)*(r-t)/(q-s))|0),f>=+h[u+8>>3]):0)?f<=+h[v+8>>3]:0){o=f;p=k}else i=4;do if((i|0)==4){j=+h[v>>3];if(s>j){g=r+ +(~~((j-q)*(r-t)/(q-s))|0);f=+h[u+8>>3];if(g>=f?g<=+h[v+8>>3]:0){o=g;p=j;break}}else f=+h[u+8>>3];if(t<f?(m=q+ +(~~((f-r)*(q-s)/(r-t))|0),!(!(m>=k)|!(m<=j))):0){o=f;p=m;break}f=+h[v+8>>3];if(t>f?(y=q+ +(~~((f-r)*(q-s)/(r-t))|0),!(!(y>=k)|!(y<=j))):0){o=f;p=y;break};c[n>>2]=c[b>>2];c[n+4>>2]=c[b+4>>2];c[n+8>>2]=c[b+8>>2];c[n+12>>2]=c[b+12>>2];w=yl(n,w)|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];c[n+12>>2]=c[d+12>>2];x=yl(n,x)|0;c[n>>2]=c[u>>2];c[n+4>>2]=c[u+4>>2];c[n+8>>2]=c[u+8>>2];c[n+12>>2]=c[u+12>>2];z=yl(n,z)|0;c[n>>2]=c[v>>2];c[n+4>>2]=c[v+4>>2];c[n+8>>2]=c[v+8>>2];c[n+12>>2]=c[v+12>>2];A=yl(n,A)|0;c[B>>2]=w;c[B+4>>2]=x;c[B+8>>2]=z;c[B+12>>2]=A;Pw(1,87976,B)|0;qa(135312,87852,78,88028)}while(0);h[a>>3]=p;h[a+8>>3]=o;l=C;return}function sl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=(+h[c+8>>3]+ +h[b+8>>3])*.5;h[a>>3]=(+h[c>>3]+ +h[b>>3])*.5;h[a+8>>3]=d;return}function tl(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,g=0,i=0,j=0,k=0,m=0;m=l;l=l+80|0;j=m+16|0;k=m;e=0;while(1){if((e|0)==4)break;i=j+(e<<4)|0;g=a+(e<<4)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];e=e+1|0}e=b+8|0;i=b+24|0;d=+ul(a,0.0,1.0,+h[b>>3],+h[e>>3],+h[i>>3]);if(d>=0.0&d<2.0)XL(k,j,3,d,a,0);else d=2.0;g=b+16|0;f=+ul(a,0.0,d>1.0?1.0:d,+h[g>>3],+h[e>>3],+h[i>>3]);if(f>=0.0&f<d){XL(k,j,3,f,a,0);d=f}f=+vl(a,0.0,d>1.0?1.0:d,+h[e>>3],+h[b>>3],+h[g>>3]);if(f>=0.0&f<d){XL(k,j,3,f,a,0);d=f}f=+vl(a,0.0,d>1.0?1.0:d,+h[i>>3],+h[b>>3],+h[g>>3]);if(f>=0.0&f<d){XL(k,j,3,f,a,0);d=f}l=m;return d<2.0|0}function ul(a,b,c,d,e,f){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;var g=0.0,i=0,j=0,k=0,m=0;m=l;l=l+144|0;j=m+80|0;k=m+16|0;i=m;a:do if(!(b==c)){switch(xl(a,d)|0){case 0:{b=-1.0;break a}case 1:{if(+B(+(+h[a+48>>3]-d))<=.005){b=+h[a+56>>3];b=!(b>=e)|!(b<=f)?-1.0:c;break a}break}default:{}}XL(i,a,3,.5,j,k);g=(c+b)*.5;b=+ul(j,b,g,d,e,f);if(!(b>=0.0))b=+ul(k,g,c,d,e,f)}while(0);l=m;return +b}function vl(a,b,c,d,e,f){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;var g=0.0,i=0,j=0,k=0,m=0;m=l;l=l+144|0;j=m+80|0;k=m+16|0;i=m;a:do if(!(b==c)){switch(wl(a,d)|0){case 0:{b=-1.0;break a}case 1:{if(+B(+(+h[a+56>>3]-d))<=.005){b=+h[a+48>>3];b=!(b>=e)|!(b<=f)?-1.0:c;break a}break}default:{}}XL(i,a,3,.5,j,k);g=(c+b)*.5;b=+vl(j,b,g,d,e,f);if(!(b>=0.0))b=+vl(k,g,c,d,e,f)}while(0);l=m;return +b}function wl(a,b){a=a|0;b=+b;var c=0,d=0,e=0,f=0.0,g=0,i=0;f=+h[a+8>>3];e=f<b?-1:f>b&1;c=1;d=e;e=(e|0)==0&1;while(1){if((c|0)==4)break;f=+h[a+(c<<4)+8>>3];i=f<b?-1:f>b&1;g=e+((d|0)!=0&(i|0)!=(d|0)&1)|0;c=c+1|0;d=i;e=g}return e|0}function xl(a,b){a=a|0;b=+b;var c=0,d=0,e=0,f=0.0,g=0,i=0;f=+h[a>>3];e=f<b?-1:f>b&1;c=1;d=e;e=(e|0)==0&1;while(1){if((c|0)==4)break;f=+h[a+(c<<4)>>3];i=f<b?-1:f>b&1;g=e+((d|0)!=0&(i|0)!=(d|0)&1)|0;c=c+1|0;d=i;e=g}return e|0}function yl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0;c=l;l=l+16|0;d=c;e=+h[a+8>>3];h[d>>3]=+h[a>>3];h[d+8>>3]=e;Y0(b,88042,d)|0;l=c;return b|0}function zl(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;s=v;u=4;t=C_(40)|0;c[t>>2]=0;r=a+16|0;e=c[r>>2]|0;a:do if(((b[e+238>>1]|0)-(b[e+236>>1]|0)|0)>=2){m=1;d=e;e=c[e+196>>2]|0;b:while(1){n=m+1|0;if(!(c[e+(n<<6)>>2]|0)){q=15;break}else k=0;while(1){h=c[e+(m<<6)>>2]|0;if((k|0)>=(h|0)){m=n;continue b}j=c[(c[e+(m<<6)+4>>2]|0)+(k<<2)>>2]|0;o=0;d=$(20,j|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,u|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){d=z;break b}if(d<<24>>24){i=k;d=h;while(1){g=i+1|0;if((g|0)>=(d|0))break;o=0;d=aa(65,j|0,c[(c[e+(m<<6)+4>>2]|0)+(g<<2)>>2]|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,t|0,u|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){d=z;break b}if(!(d<<24>>24))break;d=c[(c[r>>2]|0)+196>>2]|0;i=g;e=d;d=c[d+(m<<6)>>2]|0}if((g-k|0)>1){o=0;na(6,a|0,m|0,k|0,i|0,1);d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,t|0,u|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1){d=z;break b}}}e=c[r>>2]|0;k=k+1|0;d=e;e=c[e+196>>2]|0}}c:do if((q|0)==15){while(1){if((m|0)>0)k=0;else break;while(1){e=c[d+196>>2]|0;h=c[e+(m<<6)>>2]|0;if((k|0)>=(h|0))break;j=c[(c[e+(m<<6)+4>>2]|0)+(k<<2)>>2]|0;o=0;d=$(21,j|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,u|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){d=z;break c}if(d<<24>>24){i=k;d=h;while(1){g=i+1|0;if((g|0)>=(d|0))break;o=0;d=aa(66,j|0,c[(c[e+(m<<6)+4>>2]|0)+(g<<2)>>2]|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,t|0,u|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){d=z;break c}if(!(d<<24>>24))break;d=c[(c[r>>2]|0)+196>>2]|0;i=g;e=d;d=c[d+(m<<6)>>2]|0}if((g-k|0)>1){o=0;na(6,a|0,m|0,k|0,i|0,0);d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,t|0,u|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1){d=z;break c}}}k=k+1|0;d=c[r>>2]|0}m=m+-1|0;q=15}t=D3(183936,1,t|0,u|0)|0;u=z;o=0;d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,t|0,u|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1)d=z;else d=0}while(0);d:while(1){if(d){o=0;ca(20,3,88082,s|0)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,t|0,u|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1){d=z;continue}else break}else f=1;while(1){d=c[r>>2]|0;if((f|0)>(c[d+180>>2]|0))break a;o=0;ia(99,c[(c[d+184>>2]|0)+(f<<2)>>2]|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,t|0,u|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1){d=z;continue d}f=f+1|0}}}while(0);D_(t|0);l=v;return}function Al(b){b=b|0;b=c[b+16>>2]|0;if(((a[b+156>>0]|0)==1?(c[b+176>>2]|0)==1:0)?(c[b+184>>2]|0)==1:0)b=(c[b+104>>2]|0)==0&1;else b=0;return b|0}function Bl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+80|0;h=i+40|0;g=i;e=c[c[(c[a+16>>2]|0)+172>>2]>>2]|0;a=c[c[(c[b+16>>2]|0)+172>>2]>>2]|0;if(((Al(b)|0)<<24>>24!=0?(c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)==(c[((c[a>>2]&3|0)==3?a:a+48|0)+40>>2]|0):0)?(Hl(e,a)|0)<<24>>24!=0:0){d=(c[a+16>>2]|0)+16|0;f=g;a=(c[e+16>>2]|0)+16|0;b=f+40|0;do{c[f>>2]=c[a>>2];f=f+4|0;a=a+4|0}while((f|0)<(b|0));f=h;a=d;b=f+40|0;do{c[f>>2]=c[a>>2];f=f+4|0;a=a+4|0}while((f|0)<(b|0));a=(jg(g,h)|0)==0&1}else a=0;l=i;return a|0}function Cl(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=a+16|0;q=c[(c[(c[(c[t>>2]|0)+196>>2]|0)+(b<<6)+4>>2]|0)+(d<<2)>>2]|0;p=d+1|0;m=(f|0)==1;n=q+16|0;l=p;while(1){if((l|0)>(e|0)){g=e;s=p;break}o=c[(c[(c[(c[t>>2]|0)+196>>2]|0)+(b<<6)+4>>2]|0)+(l<<2)>>2]|0;k=o+16|0;a:do if(m)while(1){d=c[k>>2]|0;j=c[c[d+180>>2]>>2]|0;if(!j)break a;h=c[(c[n>>2]|0)+180>>2]|0;i=j+-48|0;f=0;while(1){d=c[h+(f<<2)>>2]|0;if(!d){r=8;break}if((c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0)==(c[((c[j>>2]&3|0)==2?j:i)+40>>2]|0))break;else f=f+1|0}if((r|0)==8){r=0;d=ph(q,c[((c[j>>2]&3|0)==2?j:i)+40>>2]|0,j)|0}while(1){f=c[c[(c[k>>2]|0)+172>>2]>>2]|0;if(!f)break;xh(f,d);kh(f)}kh(j)}else while(1){d=c[k>>2]|0;j=c[c[d+172>>2]>>2]|0;if(!j)break a;h=c[(c[n>>2]|0)+172>>2]|0;i=j+48|0;f=0;while(1){d=c[h+(f<<2)>>2]|0;if(!d){r=17;break}if((c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0)==(c[((c[j>>2]&3|0)==3?j:i)+40>>2]|0))break;else f=f+1|0}if((r|0)==17){r=0;d=ph(c[((c[j>>2]&3|0)==3?j:i)+40>>2]|0,q,j)|0}while(1){f=c[c[(c[k>>2]|0)+180>>2]>>2]|0;if(!f)break;xh(f,d);kh(f)}kh(j)}while(0);if((c[d+176>>2]|0)!=(0-(c[d+184>>2]|0)|0)){r=23;break}sh(a,o);l=l+1|0}if((r|0)==23)qa(88218,88262,115,88269);while(1){g=g+1|0;d=c[(c[t>>2]|0)+196>>2]|0;f=d+(b<<6)|0;if((g|0)>=(c[f>>2]|0))break;e=c[d+(b<<6)+4>>2]|0;r=c[e+(g<<2)>>2]|0;c[e+(s<<2)>>2]=r;c[(c[r+16>>2]|0)+236>>2]=s;s=s+1|0}c[f>>2]=s;c[(c[d+(b<<6)+4>>2]|0)+(s<<2)>>2]=0;return}function Dl(b){b=b|0;b=c[b+16>>2]|0;if(((a[b+156>>0]|0)==1?(c[b+184>>2]|0)==1:0)?(c[b+176>>2]|0)==1:0)b=(c[b+104>>2]|0)==0&1;else b=0;return b|0}function El(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+80|0;h=i+40|0;g=i;e=c[c[(c[a+16>>2]|0)+180>>2]>>2]|0;a=c[c[(c[b+16>>2]|0)+180>>2]>>2]|0;if(((Dl(b)|0)<<24>>24!=0?(c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)==(c[((c[a>>2]&3|0)==2?a:a+-48|0)+40>>2]|0):0)?(Hl(e,a)|0)<<24>>24!=0:0){d=(c[a+16>>2]|0)+56|0;f=g;a=(c[e+16>>2]|0)+56|0;b=f+40|0;do{c[f>>2]=c[a>>2];f=f+4|0;a=a+4|0}while((f|0)<(b|0));f=h;a=d;b=f+40|0;do{c[f>>2]=c[a>>2];f=f+4|0;a=a+4|0}while((f|0)<(b|0));a=(jg(g,h)|0)==0&1}else a=0;l=i;return a|0}function Fl(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;p=r+16|0;o=r;m=d+16|0;f=c[m>>2]|0;e=b[f+236>>1]|0;while(1){if((e|0)>(b[f+238>>1]|0))break;c[(c[f+268>>2]|0)+(e<<2)>>2]=0;e=e+1|0;f=c[m>>2]|0}xj(d);j=Sy(d)|0;while(1){if(!j)break;Gl(d,j);i=Ex(d,j)|0;while(1){if(!i)break;else f=i;while(1){e=c[(c[f+16>>2]|0)+172>>2]|0;if(!e)break;else f=e}h=i+-48|0;while(1){e=f+-48|0;g=c[((c[f>>2]&3|0)==2?f:e)+40>>2]|0;if((c[(c[g+16>>2]|0)+232>>2]|0)>=(c[(c[(c[((c[i>>2]&3|0)==2?i:h)+40>>2]|0)+16>>2]|0)+232>>2]|0))break;Gl(d,g);f=c[c[(c[(c[((c[f>>2]&3|0)==2?f:e)+40>>2]|0)+16>>2]|0)+180>>2]>>2]|0}i=Gx(d,i)|0}j=Ty(d,j)|0}e=c[m>>2]|0;i=b[e+236>>1]|0;while(1){if((i|0)>(b[e+238>>1]|0)){k=1;n=e;break}e=c[(c[e+268>>2]|0)+(i<<2)>>2]|0;j=c[(c[(c[(ig(d)|0)+16>>2]|0)+196>>2]|0)+(i<<6)+4>>2]|0;f=e+16|0;if((c[j+(c[(c[f>>2]|0)+236>>2]<<2)>>2]|0)!=(e|0)){q=17;break}h=c[(c[(c[(ig(d)|0)+16>>2]|0)+196>>2]|0)+(i<<6)+4>>2]|0;e=c[m>>2]|0;f=c[e+196>>2]|0;c[f+(i<<6)+4>>2]=h+(c[(c[(c[(c[e+268>>2]|0)+(i<<2)>>2]|0)+16>>2]|0)+236>>2]<<2);e=-1;h=0;a:while(1){if((h|0)>=(c[f+(i<<6)>>2]|0))break;f=c[(c[f+(i<<6)+4>>2]|0)+(h<<2)>>2]|0;if(!f)break;g=c[f+16>>2]|0;b:do if(!(a[g+156>>0]|0))if(!(oz(d,f)|0))break a;else e=h;else{f=c[c[g+172>>2]>>2]|0;while(1){if(!f)break b;g=c[(c[f+16>>2]|0)+116>>2]|0;if(!g)break;else f=g}if(oz(d,c[((c[f>>2]&3|0)==3?f:f+48|0)+40>>2]|0)|0){j=(oz(d,c[((c[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0)|0)==0;e=j?e:h}}while(0);h=h+1|0;f=c[(c[m>>2]|0)+196>>2]|0}if((e|0)==-1){c[p>>2]=ry(d)|0;c[p+4>>2]=i;Pw(0,88182,p)|0}j=c[m>>2]|0;c[(c[j+196>>2]|0)+(i<<6)>>2]=e+1;i=i+1|0;e=j}if((q|0)==17){p=ry(e)|0;q=c[(c[f>>2]|0)+236>>2]|0;c[o>>2]=p;c[o+4>>2]=q;c[o+8>>2]=i;Pw(1,88124,o)|0;bb(183936,1)}while(1){if((k|0)>(c[n+180>>2]|0))break;Fl(c[(c[n+184>>2]|0)+(k<<2)>>2]|0);k=k+1|0;n=c[m>>2]|0}l=r;return}function Gl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[b+16>>2]|0;a=(c[(c[a+16>>2]|0)+268>>2]|0)+(c[d+232>>2]<<2)|0;e=c[a>>2]|0;if(!((e|0)!=0?(c[(c[e+16>>2]|0)+236>>2]|0)<=(c[d+236>>2]|0):0))c[a>>2]=b;return}function Hl(b,d){b=b|0;d=d|0;var e=0,f=0;while(1){f=c[b+16>>2]|0;if(!(a[f+112>>0]|0))break;b=c[f+116>>2]|0}while(1){e=c[d+16>>2]|0;if(!(a[e+112>>0]|0))break;d=c[e+116>>2]|0}if((a[f+153>>0]|0)==0?(a[e+153>>0]|0)==0:0){f=c[d>>2]&3;e=c[b>>2]&3;b=(O((c[(c[(c[((e|0)==3?b:b+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[(c[(c[((e|0)==2?b:b+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)|0,(c[(c[(c[((f|0)==3?d:d+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[(c[(c[((f|0)==2?d:d+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)|0)|0)>0&1}else b=0;return b|0}function Il(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+544|0;j=k+528|0;Jl(j,k+512|0,k);e=(a[190690]|0)+1<<24>>24;a[190690]=e<<24>>24==0?1:e;e=c[b+16>>2]|0;c[e+220>>2]=0;c[e+232>>2]=0;e=(d|0)>0;d=Sy(b)|0;while(1){if(!d)break;if(e?(h=c[d+16>>2]|0,i=c[h+212>>2]|0,(i|0)!=0):0){g=c[(c[(c[i+16>>2]|0)+268>>2]|0)+(c[h+232>>2]<<2)>>2]|0;f=7}else f=6;if((f|0)==6?(f=0,(d|0)==(SL(d)|0)):0){g=d;f=7}if((f|0)==7?(0,(a[(c[g+16>>2]|0)+157>>0]|0)!=(a[190690]|0)):0){Kl(b);Ll(j,b,g);Ml(b)}d=Ty(b,d)|0}Nl(j);l=k;return}function Jl(a,b,d){a=a|0;b=b|0;d=d|0;c[b>>2]=d;c[b+4>>2]=d+512;c[b+12>>2]=0;c[b+8>>2]=0;c[a>>2]=b;c[a+4>>2]=b;c[a+8>>2]=d;return}function Kl(a){a=a|0;c[(c[a+16>>2]|0)+192>>2]=0;c[46023]=0;return}function Ll(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+32|0;p=q;Ol(b,e);k=p+8|0;m=p+16|0;n=p+24|0;a:while(1){o=Pl(b)|0;if(!o)break;e=o+16|0;if((a[(c[e>>2]|0)+157>>0]|0)==(a[190690]|0))continue;Ql(d,o);h=c[e>>2]|0;g=h+180|0;j=c[g+4>>2]|0;i=p;c[i>>2]=c[g>>2];c[i+4>>2]=j;i=h+172|0;j=c[i+4>>2]|0;g=k;c[g>>2]=c[i>>2];c[g+4>>2]=j;g=h+188|0;j=c[g+4>>2]|0;i=m;c[i>>2]=c[g>>2];c[i+4>>2]=j;h=h+196|0;i=c[h+4>>2]|0;j=n;c[j>>2]=c[h>>2];c[j+4>>2]=i;j=3;while(1){if((j|0)<=-1)continue a;e=c[p+(j<<3)>>2]|0;b:do if(e|0){i=(c[p+(j<<3)+4>>2]|0)+-1|0;h=e+(i<<2)|0;while(1){if((i|0)<=-1)break b;f=c[h>>2]|0;g=c[f>>2]&3;e=c[((g|0)==2?f:f+-48|0)+40>>2]|0;if((e|0)==(o|0))e=c[((g|0)==3?f:f+48|0)+40>>2]|0;if((a[(c[e+16>>2]|0)+157>>0]|0)!=(a[190690]|0)?(e|0)==(SL(e)|0):0)Ol(b,e);h=h+-4|0;i=i+-1|0}}while(0);j=j+-1|0}}l=q;return}function Ml(a){a=a|0;var b=0,d=0,e=0,f=0;d=a+16|0;b=c[d>>2]|0;f=b+220|0;e=c[f>>2]|0;a=e+1|0;c[f>>2]=a;b=c[b+216>>2]|0;if(!b)a=vH(a<<2)|0;else a=xH(b,a<<2)|0;f=c[d>>2]|0;c[f+216>>2]=a;c[a+(e<<2)>>2]=c[f+192>>2];return}function Nl(a){a=a|0;var b=0;a=c[(c[a>>2]|0)+12>>2]|0;while(1){if(!a)break;b=c[a+12>>2]|0;D_(c[a>>2]|0);D_(a);a=b}return}function Ol(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;g=k;j=b+8|0;f=c[j>>2]|0;i=b+4|0;b=c[i>>2]|0;if((f|0)==(c[b+4>>2]|0)){f=c[b+12>>2]|0;if(!f){f=uH(16)|0;if(!f)Pw(1,95943,g)|0;c[f+8>>2]=c[i>>2];c[f+12>>2]=0;b=uH(4e6)|0;c[f>>2]=b;if(!b){Pw(1,88282,h)|0;b=c[f>>2]|0}c[f+4>>2]=b+4e6;c[(c[i>>2]|0)+12>>2]=f}c[i>>2]=f;f=c[f>>2]|0;c[j>>2]=f}a[(c[e+16>>2]|0)+157>>0]=(d[190690]|0)+1;c[j>>2]=f+4;c[f>>2]=e;l=k;return}function Pl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=a+8|0;b=c[f>>2]|0;d=a+4|0;e=c[d>>2]|0;if((b|0)==(c[e>>2]|0))if((e|0)==(c[a>>2]|0))b=0;else{b=c[e+8>>2]|0;c[d>>2]=b;b=c[b+4>>2]|0;c[f>>2]=b;g=4}else g=4;if((g|0)==4){b=b+-4|0;c[f>>2]=b;b=c[b>>2]|0}return b|0}function Ql(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[b+16>>2]|0;g=f+232|0;c[g>>2]=(c[g>>2]|0)+1;g=c[d+16>>2]|0;a[g+157>>0]=a[190690]|0;b=c[46023]|0;e=g+168|0;if(!b){c[e>>2]=0;c[f+192>>2]=d}else{c[e>>2]=b;c[(c[b+16>>2]|0)+164>>2]=d}c[46023]=d;c[g+164>>2]=0;return}function Rl(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0.0,o=0.0;m=b+16|0;d=(c[m>>2]|0)+192|0;while(1){d=c[d>>2]|0;if(!d)break;g=d+16|0;d=c[g>>2]|0;e=c[d+188>>2]|0;a:do if(!e)f=0;else{f=0;while(1){e=c[e+(f<<2)>>2]|0;if(!e){f=0;break a}Sl(e);d=c[g>>2]|0;f=f+1|0;e=c[d+188>>2]|0}}while(0);while(1){if((f|0)>=(c[d+208>>2]|0))break;e=c[(c[d+204>>2]|0)+(f<<2)>>2]|0;l=c[e>>2]&3;if((c[(c[(c[((l|0)==2?e:e+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)==(c[(c[(c[((l|0)==3?e:e+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)){Sl(e);d=c[g>>2]|0}f=f+1|0}d=d+164|0}l=c[m>>2]|0;d=c[l+196>>2]|0;if(!((c[d+56>>2]|0)==0?(c[l+180>>2]|0)<=0:0))i=13;b:do if((i|0)==13){i=c[d+4>>2]|0;g=0;c:while(1){d=c[i+(g<<2)>>2]|0;if(!d)break b;e=c[(c[d+16>>2]|0)+196>>2]|0;d=0;while(1){f=c[e+(d<<2)>>2]|0;if(!f)break;l=c[f+16>>2]|0;if(c[l+96>>2]|0?(a[l+113>>0]|0)==0:0)break c;d=d+1|0}g=g+1|0}Tl(b)}while(0);Ji(b);e=0;d=(c[m>>2]|0)+192|0;while(1){d=c[d>>2]|0;if(!d)break;l=d+16|0;d=c[l>>2]|0;f=c[d+188>>2]|0;d:do if(f){k=0;while(1){g=c[f+(k<<2)>>2]|0;if(!g){k=0;break}i=c[g+16>>2]|0;j=c[i+96>>2]|0;do if(j)if(!(a[i+113>>0]|0)){Ul(g);f=c[l>>2]|0;e=1;d=f;f=c[f+188>>2]|0;break}else{h[i+136>>3]=+h[((c[(c[m>>2]|0)+116>>2]&1|0)==0?j+24|0:j+32|0)>>3];break}while(0);k=k+1|0}while(1){if((k|0)>=(c[d+208>>2]|0))break d;i=c[(c[d+204>>2]|0)+(k<<2)>>2]|0;j=c[i>>2]&3;g=c[((j|0)==3?i:i+48|0)+40>>2]|0;j=c[((j|0)==2?i:i+-48|0)+40>>2]|0;do if(!((g|0)==(j|0)?1:(c[(c[g+16>>2]|0)+232>>2]|0)!=(c[(c[j+16>>2]|0)+232>>2]|0))){f=i;do{j=c[f+16>>2]|0;f=c[j+172>>2]|0}while((f|0)!=0);f=a[j+113>>0]|0;g=c[i+16>>2]|0;a[g+113>>0]=f;g=c[g+96>>2]|0;if(g)if(!(f<<24>>24)){Ul(i);e=1;d=c[l>>2]|0;break}else{o=+h[((c[(c[m>>2]|0)+116>>2]&1|0)==0?g+24|0:g+32|0)>>3];j=j+136|0;n=+h[j>>3];h[j>>3]=o>n?o:n;break}}while(0);k=k+1|0}}while(0);d=d+164|0}if(e|0){Ch(b);Qh(b)}return e|0}function Sl(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=c[b>>2]&3;i=c[((d|0)==3?b:b+48|0)+40>>2]|0;f=i+16|0;g=c[(c[f>>2]|0)+236>>2]|0;d=c[(c[(c[((d|0)==2?b:b+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;h=(g|0)<(d|0);e=h?d:g;i=c[(c[(ig(i)|0)+16>>2]|0)+196>>2]|0;f=i+(c[(c[f>>2]|0)+232>>2]<<6)+4|0;d=h?g:d;a:while(1){d=d+1|0;if((d|0)>=(e|0))break;g=c[(c[(c[f>>2]|0)+(d<<2)>>2]|0)+16>>2]|0;switch(a[g+156>>0]|0){case 0:break a;case 1:break;default:continue a}if(c[g+104>>2]|0)break}if((d|0)==(e|0))do{i=c[b+16>>2]|0;a[i+113>>0]=1;b=c[i+172>>2]|0}while((b|0)!=0);return}function Tl(a){a=a|0;var d=0,e=0,f=0,g=0;g=a+16|0;a=c[g>>2]|0;if(b[a+236>>1]|0)qa(88339,88322,190,88358);d=(b[a+238>>1]|0)+3|0;a=c[a+196>>2]|0;if(!a)a=vH(d<<6)|0;else a=xH(a,d<<6)|0;d=a+64|0;a=c[g>>2]|0;c[a+196>>2]=d;a=b[a+238>>1]|0;while(1){if((a|0)<=-1)break;f=a+-1|0;e=d+(a<<6)|0;a=d+(f<<6)|0;d=e+64|0;do{c[e>>2]=c[a>>2];e=e+4|0;a=a+4|0}while((e|0)<(d|0));a=f;d=c[(c[g>>2]|0)+196>>2]|0}c[d+(a<<6)+8>>2]=0;c[d+(a<<6)>>2]=0;e=uH(8)|0;g=c[g>>2]|0;f=c[g+196>>2]|0;c[f+(a<<6)+12>>2]=e;c[f+(a<<6)+4>>2]=e;c[f+(a<<6)+56>>2]=0;h[f+(a<<6)+24>>3]=1.0;h[f+(a<<6)+16>>3]=1.0;h[f+(a<<6)+40>>3]=1.0;h[f+(a<<6)+32>>3]=1.0;g=g+236|0;b[g>>1]=(b[g>>1]|0)+-1<<16>>16;return}function Ul(b){b=b|0;var d=0,e=0,f=0.0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0.0;j=b+16|0;if(c[(c[j>>2]|0)+96>>2]|0){m=b+48|0;k=ig(c[((c[b>>2]&3|0)==3?b:m)+40>>2]|0)|0;d=c[(c[(c[((c[b>>2]&3|0)==3?b:m)+40>>2]|0)+16>>2]|0)+232>>2]|0;l=Vl(k,b)|0;n=k+16|0;e=c[n>>2]|0;g=c[e+196>>2]|0;o=d+-1|0;i=c[c[g+(o<<6)+4>>2]>>2]|0;if(!i)f=+h[g+(d<<6)+24>>3]+ +h[(c[(c[c[g+(d<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]+ +(c[e+252>>2]|0);else f=+h[(c[i+16>>2]|0)+24>>3]-+h[g+(o<<6)+16>>3];d=Wl(k,o,l)|0;k=c[(c[j>>2]|0)+96>>2]|0;q=+h[k+24>>3];p=+h[k+32>>3];j=(c[(c[n>>2]|0)+116>>2]&1|0)==0;r=j?p:q;g=d+16|0;e=c[g>>2]|0;h[e+80>>3]=r;l=~~(r*.5);p=(j?q:p)*.5;h[e+96>>3]=p;h[e+88>>3]=p;c[e+104>>2]=k;h[e+24>>3]=+(l+~~f|0);e=ph(d,c[((c[b>>2]&3|0)==3?b:m)+40>>2]|0,b)|0;e=c[e+16>>2]|0;h[e+16>>3]=-+h[(c[g>>2]|0)+88>>3];h[e+56>>3]=+h[(c[(c[((c[b>>2]&3|0)==3?b:m)+40>>2]|0)+16>>2]|0)+96>>3];a[e+112>>0]=4;e=b+-48|0;d=ph(d,c[((c[b>>2]&3|0)==2?b:e)+40>>2]|0,b)|0;g=c[g>>2]|0;d=c[d+16>>2]|0;h[d+16>>3]=+h[g+96>>3];h[d+56>>3]=+h[(c[(c[((c[b>>2]&3|0)==2?b:e)+40>>2]|0)+16>>2]|0)+88>>3];a[d+112>>0]=4;d=c[(c[n>>2]|0)+196>>2]|0;e=d+(o<<6)+16|0;f=+(l|0);if(+h[e>>3]<f)h[e>>3]=f;d=d+(o<<6)+24|0;if(+h[d>>3]<f)h[d>>3]=f;c[g+112>>2]=b}return}function Vl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;j=n+8|0;f=n+4|0;g=n;d=c[b>>2]&3;e=c[((d|0)==3?b:b+48|0)+40>>2]|0;k=(c[(c[e+16>>2]|0)+232>>2]|0)+-1|0;a=c[(c[a+16>>2]|0)+196>>2]|0;h=c[a+(k<<6)+4>>2]|0;a=c[a+(k<<6)>>2]|0;k=j+8|0;c[k>>2]=-1;c[j>>2]=-1;m=j+12|0;c[m>>2]=a;i=j+4|0;c[i>>2]=a;Xl(e,c[((d|0)==2?b:b+-48|0)+40>>2]|0,f,g);f=c[f>>2]|0;g=c[g>>2]|0;d=0;e=a;b=-1;while(1){if((d|0)>=(e|0))break;e=e+-1|0;Yl(c[h+(d<<2)>>2]|0,j,f,g);if((d|0)!=(e|0))Yl(c[h+(e<<2)>>2]|0,j,f,g);a=c[i>>2]|0;b=c[j>>2]|0;if((a-b|0)<2)break;else d=d+1|0}if((b|0)>(a|0))a=(c[m>>2]|0)+(c[k>>2]|0)|0;else a=a+b|0;l=n;return (a+1|0)/2|0|0}function Wl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=a+16|0;f=c[(c[g>>2]|0)+196>>2]|0;e=f+(b<<6)|0;f=c[f+(b<<6)+4>>2]|0;if(!f)f=vH((c[e>>2]<<2)+8|0)|0;else f=xH(f,(c[e>>2]<<2)+8|0)|0;e=c[(c[g>>2]|0)+196>>2]|0;c[e+(b<<6)+4>>2]=f;e=c[e+(b<<6)>>2]|0;while(1){if((e|0)<=(d|0))break;h=e+-1|0;i=c[f+(h<<2)>>2]|0;c[f+(e<<2)>>2]=i;i=(c[i+16>>2]|0)+236|0;c[i>>2]=(c[i>>2]|0)+1;e=h}h=uh(a)|0;i=f+(d<<2)|0;c[i>>2]=h;h=c[h+16>>2]|0;c[h+236>>2]=d;c[h+232>>2]=b;g=(c[(c[g>>2]|0)+196>>2]|0)+(b<<6)|0;h=(c[g>>2]|0)+1|0;c[g>>2]=h;c[f+(h<<2)>>2]=0;return c[i>>2]|0}function Xl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;a=c[(c[a+16>>2]|0)+236>>2]|0;b=c[(c[b+16>>2]|0)+236>>2]|0;f=(a|0)>(b|0);c[d>>2]=f?b:a;c[e>>2]=f?a:b;return}function Yl(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;h=m+4|0;g=m;b=c[b+16>>2]|0;do if((a[b+156>>0]|0)==1){k=c[b+236>>2]|0;if(c[b+176>>2]|0){i=c[b+180>>2]|0;b=0;g=0;h=0;while(1){j=c[i+(h<<2)>>2]|0;if(!j)break;n=c[(c[(c[((c[j>>2]&3|0)==2?j:j+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;j=(n|0)>(e|0);b=j?((n|0)<(f|0)?b:1):b;g=j?g:1;h=h+1|0}if(g<<24>>24!=0&b<<24>>24==0){c[d>>2]=k+1;break}if(!(g<<24>>24==0&b<<24>>24!=0))break;c[d+4>>2]=k+-1;break}if((c[b+184>>2]|0)!=2)qa(88302,88322,63,88329);i=c[b+180>>2]|0;n=c[i>>2]|0;i=c[i+4>>2]|0;Xl(c[((c[n>>2]&3|0)==2?n:n+-48|0)+40>>2]|0,c[((c[i>>2]&3|0)==2?i:i+-48|0)+40>>2]|0,h,g);i=c[g>>2]|0;if((i|0)<=(e|0)){c[d>>2]=k;c[d+8>>2]=k;break}b=c[h>>2]|0;if((b|0)>=(f|0)){c[d+4>>2]=k;c[d+12>>2]=k;break}g=(b|0)<(e|0);h=(i|0)>(f|0);if(!(h&g)){if(!(!g?!((i|0)<(f|0)&(b|0)==(e|0)):0))c[d+8>>2]=k;if(!h?!((i|0)==(f|0)&(b|0)>(e|0)):0)break;c[d+12>>2]=k}}while(0);l=m;return}function Zl(a){a=a|0;c[46363]=1;rm(a);c[46363]=0;return}function _l(a){a=a|0;c[46363]=2;rm(a);c[46363]=0;return}function $l(a){a=a|0;var b=0;Az(a,134365,304,1)|0;dM(a);b=uH((e[(c[(ez(a)|0)+16>>2]|0)+176>>1]|0)<<3)|0;c[(c[a+16>>2]|0)+132>>2]=b;bN(a,c[(c[(ez(a)|0)+16>>2]|0)+116>>2]&1);return}function am(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0;s=l;l=l+64|0;j=s+48|0;o=s+40|0;k=s+24|0;i=s+8|0;q=s+56|0;m=s;do if((b|0)!=0?(r=e+16|0,p=c[(c[r>>2]|0)+132>>2]|0,g=yx(e,b)|0,(a[g>>0]|0)!=0):0){a[q>>0]=0;b=p+8|0;if((c[46366]|0)>2?(c[i>>2]=p,c[i+4>>2]=b,c[i+8>>2]=p+16,c[i+12>>2]=q,(N1(g,88435,i)|0)>2):0){a[(c[r>>2]|0)+119>>0]=1;g=c[46366]|0;a:do if(+h[22908]>0.0){b=0;while(1){if((b|0)>=(g|0))break a;o=p+(b<<3)|0;h[o>>3]=+h[o>>3]/+h[22908];b=b+1|0}}while(0);if((g|0)>3)Hn(e,f,3);if((a[q>>0]|0)!=33){if(!d){b=1;break}if(!((QL(yx(e,d)|0)|0)<<24>>24)){b=1;break}}a[(c[r>>2]|0)+119>>0]=3;b=1;break}c[k>>2]=p;c[k+4>>2]=b;c[k+8>>2]=q;if((N1(g,98723,k)|0)<=1){c[j>>2]=ry(e)|0;c[j+4>>2]=g;Pw(1,88449,j)|0;b=0;break}a[(c[r>>2]|0)+119>>0]=1;g=c[46366]|0;b:do if(+h[22908]>0.0){b=0;while(1){if((b|0)>=(g|0))break b;k=p+(b<<3)|0;h[k>>3]=+h[k>>3]/+h[22908];b=b+1|0}}while(0);do if((g|0)>2){b=c[46401]|0;if((b|0?(n=yx(e,b)|0,n|0):0)?(c[o>>2]=m,(N1(n,98183,o)|0)==1):0){u=+h[22908];t=+h[m>>3];h[p+16>>3]=u>0.0?t/u:t;Hn(e,f,3);break}In(e,f)}while(0);if((a[q>>0]|0)!=33){if(!d){b=1;break}if(!((QL(yx(e,d)|0)|0)<<24>>24)){b=1;break}}a[(c[r>>2]|0)+119>>0]=3;b=1}else b=0;while(0);l=s;return b|0}function bm(a){a=a|0;var b=0,c=0;c=Sy(a)|0;while(1){if(!c)break;b=Ex(a,c)|0;while(1){if(!b)break;JM(b);b=Gx(a,b)|0}HM(c);c=Ty(a,c)|0}cm(a);return}function cm(a){a=a|0;if((c[46363]|0)!=0|(c[46025]|0)<0)Fn(a);if((fz(a)|0)!=(a|0))Gz(a,0,134401);return}function dm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+48|0;m=q+32|0;o=q;k=nx(b,0,99611,0)|0;e=nx(b,0,99645,0)|0;p=(RL(xx(b,88493)|0,0)|0)<<24>>24!=0;if(!e)e=nx(b,0,99645,191979)|0;En(b)|0;n=b+16|0;i=0;while(1){j=c[(c[(c[n>>2]|0)+152>>2]|0)+(i<<2)>>2]|0;if(!j){f=12;break}g=j+16|0;f=c[g>>2]|0;if(!(a[f+119>>0]|0)){if(z$(ry(j)|0,104980,7)|0){f=8;break}f=c[g>>2]|0}f=c[f+108>>2]|0;if(f|0)em(j,f,99607);i=i+1|0}a:do if((f|0)==8){p=ry(j)|0;e=ry(b)|0;c[m>>2]=p;c[m+4>>2]=e;Pw(1,88505,m)|0;e=-1}else if((f|0)==12){fm(b,k,e);j=gm(b)|0;e=c[(c[n>>2]|0)+8>>2]|0;if(!(c[e+88>>2]|0))e=0;else{c[e+84>>2]=0;e=1}g=(d|0)!=0;i=(e|0)!=0;if(!(i|g&(c[46363]|0)==1^1)?(tq(b)|0)!=0:0){f=c[(c[n>>2]|0)+12>>2]|0;if(!f)f=1;else{a[f+81>>0]=0;f=1}}else f=0;mM(b);if(i){d=(c[n>>2]|0)+16|0;_E(o,b);c[d>>2]=c[o>>2];c[d+4>>2]=c[o+4>>2];c[d+8>>2]=c[o+8>>2];c[d+12>>2]=c[o+12>>2];c[d+16>>2]=c[o+16>>2];c[d+20>>2]=c[o+20>>2];c[d+24>>2]=c[o+24>>2];c[d+28>>2]=c[o+28>>2]}if(!g){c[46367]=1;f=Sy(b)|0;while(1){if(!f)break a;p=c[f+16>>2]|0;o=c[p+132>>2]|0;h[p+16>>3]=+h[o>>3]*72.0;h[p+24>>3]=+h[o+8>>3]*72.0;f=Ty(b,f)|0}}do if(!(p|i)){p=c[n>>2]|0;if(!(+h[p+16>>3]!=0.0)?!(+h[p+24>>3]!=0.0):0)break;cn(b)}while(0);if(!((j|0)!=0&(f|(an(b)|0)<<24>>24!=0))){if((j|0)==2){c[46367]=1;break}}else hm(b);$m(b,0)}while(0);l=q;return e|0}function em(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k+32|0;f=k+24|0;g=k+16|0;i=k;b=xx(b,e)|0;if(b|0?(c[j>>2]=f,c[j+4>>2]=g,(N1(b,102477,j)|0)==2):0){j=d+56|0;km(i,+h[f>>3],+h[g>>3]);c[j>>2]=c[i>>2];c[j+4>>2]=c[i+4>>2];c[j+8>>2]=c[i+8>>2];c[j+12>>2]=c[i+12>>2];a[d+81>>0]=1}l=k;return}function fm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+48|0;k=m+32|0;f=m+24|0;g=m+16|0;i=m;j=b+16|0;if((d|0?(c[(c[j>>2]|0)+12>>2]|0)!=0:0)?(n=yx(b,d)|0,c[k>>2]=f,c[k+4>>2]=g,(N1(n,102477,k)|0)==2):0){n=(c[(c[j>>2]|0)+12>>2]|0)+56|0;km(i,+h[f>>3],+h[g>>3]);c[n>>2]=c[i>>2];c[n+4>>2]=c[i+4>>2];c[n+8>>2]=c[i+8>>2];c[n+12>>2]=c[i+12>>2];a[(c[(c[j>>2]|0)+12>>2]|0)+81>>0]=1}a:do if(e|0){f=wA(b)|0;while(1){if(!f)break a;lm(f,b,d,e);f=xA(f)|0}}while(0);l=m;return}function gm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if(by(a)|0){f=nx(a,2,99597,0)|0;if(!((f|0)==0|(c[46363]|0)<2)){b=0;e=Sy(a)|0;while(1){if(!e)break;d=Ex(a,e)|0;while(1){if(!d)break;g=b+((im(f,d)|0)!=0&1)|0;d=Gx(a,d)|0;b=g}e=Ty(a,e)|0}if(b){b=(b|0)==(by(a)|0);b=b?2:1}else b=0}else b=0}else b=2;return b|0}function hm(a){a=a|0;var b=0,d=0,e=0;d=Sy(a)|0;while(1){if(!d)break;b=Ex(a,d)|0;while(1){if(!b)break;KM(b);e=b+16|0;nH(c[(c[e>>2]|0)+96>>2]|0);nH(c[(c[e>>2]|0)+108>>2]|0);nH(c[(c[e>>2]|0)+100>>2]|0);nH(c[(c[e>>2]|0)+104>>2]|0);b=Gx(a,b)|0}d=Ty(a,d)|0}return}function im(b,d){b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0.0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;B=l;l=l+96|0;z=B+72|0;x=B+56|0;A=B+48|0;y=B+32|0;w=B+16|0;r=B+88|0;s=B+8|0;t=B;u=B+84|0;v=B+80|0;b=yx(d,b)|0;do if(a[b>>0]|0){sE(d,u,v);q=1;f=0;e=0;j=0.0;i=0.0;k=0.0;g=0.0;a:while(1){c[w>>2]=s;c[w+4>>2]=t;c[w+8>>2]=r;if((N1(b,88542,w)|0)==2){p=1;b=b+(c[r>>2]|0)|0;i=+h[s>>3];g=+h[t>>3]}else p=e;c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=r;if((N1(b,88554,y)|0)==2){o=1;b=b+(c[r>>2]|0)|0;j=+h[s>>3];k=+h[t>>3]}else o=f;m=jm(b)|0;if(!((m|0)>3&((m|0)%3|0|0)==1)){e=8;break}n=vH(m<<4)|0;e=n;f=m;while(1){if(!f)break;c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=r;if((N1(b,88624,x)|0)<2){e=13;break a}C=b+(c[r>>2]|0)|0;h[e>>3]=+h[s>>3];h[e+8>>3]=+h[t>>3];e=e+16|0;f=f+-1|0;b=C}while(1){e=a[b>>0]|0;f=b+1|0;if(!(B$(e<<24>>24)|0))break;else b=f}C=e<<24>>24==0;b=C?b:f;q=C?0:q;f=PK(d,m)|0;if(p|0){c[f+8>>2]=c[u>>2];h[f+16>>3]=i;h[f+24>>3]=g}if(o|0){c[f+12>>2]=c[v>>2];h[f+32>>3]=j;h[f+40>>3]=k}e=0;while(1){if((e|0)>=(m|0))break;C=(c[f>>2]|0)+(e<<4)|0;D=n+(e<<4)|0;c[C>>2]=c[D>>2];c[C+4>>2]=c[D+4>>2];c[C+8>>2]=c[D+8>>2];c[C+12>>2]=c[D+12>>2];e=e+1|0}D_(n);if(!q){e=26;break}else{f=o;e=p}}if((e|0)==8){KM(d);if(a[190691]|0){b=0;break}a[190691]=1;D=ry(c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0)|0;b=ry(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0)|0;c[A>>2]=D;c[A+4>>2]=b;Pw(0,88567,A)|0;b=0;break}else if((e|0)==13){if(!(a[190691]|0)){a[190691]=1;C=ry(c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0)|0;D=ry(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0)|0;c[z>>2]=C;c[z+4>>2]=D;Pw(0,88634,z)|0}D_(n);KM(d);b=0;break}else if((e|0)==26){f=d+16|0;b=c[f>>2]|0;e=c[b+96>>2]|0;if(e){em(d,e,99611);b=c[f>>2]|0}e=c[b+108>>2]|0;if(e){em(d,e,99607);b=c[f>>2]|0}e=c[b+100>>2]|0;if(e){em(d,e,99614);b=c[f>>2]|0}b=c[b+104>>2]|0;if(!b){b=1;break}em(d,b,99622);b=1;break}}else b=0;while(0);l=B;return b|0}function jm(b){b=b|0;var c=0,d=0;d=0;do{while(1){c=a[b>>0]|0;if(!(B$(c&255)|0))break;else b=b+1|0}a:do if(!(c<<24>>24))c=0;else{d=d+1|0;while(1){if(!(c<<24>>24)){c=0;break a}if(c<<24>>24==59|(B$(c&255)|0)!=0)break a;c=b+1|0;b=c;c=a[c>>0]|0}}while(0)}while((B$(c&255)|0)!=0);return d|0}function km(a,b,c){a=a|0;b=+b;c=+c;h[a>>3]=b;h[a+8>>3]=c;return}function lm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h;if((z$(ry(a)|0,104980,7)|0)==0?(mm(a,e,f)|0)!=0:0){Az(a,134401,280,1)|0;i=(c[a+16>>2]|0)+16|0;c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];c[i+16>>2]=c[f+16>>2];c[i+20>>2]=c[f+20>>2];c[i+24>>2]=c[f+24>>2];c[i+28>>2]=c[f+28>>2];nm(b,a);fm(a,d,e)}else g=4;a:do if((g|0)==4){a=wA(a)|0;while(1){if(!a)break a;lm(a,b,d,e);a=xA(a)|0}}while(0);l=h;return}function mm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,g=0,i=0,j=0,k=0;i=l;l=l+48|0;j=i+32|0;g=i;k=yx(a,b)|0;a=g+8|0;b=g+24|0;c[j>>2]=g;c[j+4>>2]=a;c[j+8>>2]=g+16;c[j+12>>2]=b;if((N1(k,88682,j)|0)==4){e=+h[a>>3];f=+h[b>>3];if(e>f){h[a>>3]=f;h[b>>3]=e};c[d>>2]=c[g>>2];c[d+4>>2]=c[g+4>>2];c[d+8>>2]=c[g+8>>2];c[d+12>>2]=c[g+12>>2];c[d+16>>2]=c[g+16>>2];c[d+20>>2]=c[g+20>>2];c[d+24>>2]=c[g+24>>2];c[d+28>>2]=c[g+28>>2];a=1}else a=0;l=i;return a|0}function nm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+16|0;d=c[e>>2]|0;g=d+180|0;a=c[g>>2]|0;f=a+1|0;c[g>>2]=f;d=c[d+184>>2]|0;if(!d)a=uH((a<<2)+8|0)|0;else a=wH(d,a+2|0,4,f)|0;c[(c[e>>2]|0)+184>>2]=a;c[a+(f<<2)>>2]=b;fH(b);return}function om(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+8|0;k=n;i=n+16|0;j=n+12|0;h=xx(b,88698)|0;do if((h|0)!=0?(g=a[h>>0]|0,g<<24>>24!=0):0){g=g&255;if(!(N$(g)|0))if((e|0)==2|(g+-48|0)>>>0<10)e=h;else break;else{if(!(z$(h,88704,4)|0)){e=0;break}if(!(z$(h,102485,7)|0)){e=1;break}if(z$(h,88709,6)|0)if((e|0)==2)e=h;else break;else e=h+6|0}if(!(((d[e>>0]|0)+-48|0)>>>0<10?(c[k>>2]=j,(N1(e,96907,k)|0)>=1):0)){k=H1()|0;k=(db(0)|0)^k;c[j>>2]=k;c[m>>2]=k;Y0(i,96907,m)|0;zx(b,88698,i)|0}c[f>>2]=c[j>>2];e=2}while(0);l=n;return e|0}function pm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f+4|0;c[e>>2]=1;d=om(a,d,e)|0;if((d|0)!=2&(c[46026]|0)!=0)Pw(0,88716,f)|0;if((d|0)==1)qm(a,b);i2(c[e>>2]|0);l=f;return d|0}function qm(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0.0,j=0,k=0,l=0.0;g=+(d|0);i=6.283185307179586/g;e=Sy(b)|0;f=0.0;while(1){if(!e)break;l=+E(+f)*g;j=c[e+16>>2]|0;k=c[j+132>>2]|0;h[k>>3]=l;h[k+8>>3]=+F(+f)*g;a[j+119>>0]=1;if((c[46366]|0)>2)In(e,d);e=Ty(b,e)|0;f=f+i}return}function rm(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0;r=l;l=l+80|0;d=r+24|0;n=r+32|0;k=r;p=r+28|0;m=r+64|0;q=+h[22908];do if(c[46363]|0){h[22908]=72.0;sm(b);tm(b);if((dm(b,1)|0)<0){Pw(3,88764,d)|0;break}else{PI(b,0);f=32;break}}else{o=RL(xx(b,88493)|0,0)|0;h[22908]=+ML(b);sm(b);g=um(b)|0;Sp(b,k,0)|0;i=vm(b)|0;j=ZD(b,0,n)|0;d=YD(b,-1,8)|0;c[46025]=d;e=(d|0)<0;do if(!j){if((g|0)!=0&e){c[46025]=8;c[n+16>>2]=2;f=11;break}c[n+16>>2]=2;if((d|0)<=-1){wm(b,g,i);Vp(b,k)|0;tm(b);if(!(o<<24>>24)){hn(b);break}else{xm(b);break}}else f=11}else if(e){c[46025]=8;f=11}else f=11;while(0);if((f|0)==11){j=dD(b,p,88792,m)|0;d=c[p>>2]|0;do if((d|0)<=1){wm(b,g,i);Vp(b,k)|0;if(!(o<<24>>24)){hn(b);break}else{xm(b);break}}else{f=o<<24>>24==0;e=0;while(1){if((e|0)>=(d|0))break;d=c[j+(e<<2)>>2]|0;vD(d)|0;wm(d,g,i);Vp(d,k)|0;$M(d,2);if(f)hn(d);else xm(d);e=e+1|0;d=c[p>>2]|0}if(!(a[m>>0]|0))e=0;else{e=uH(d)|0;a[e>>0]=1;d=c[p>>2]|0}c[n+8>>2]=c[46025];c[n+20>>2]=e;c[n+12>>2]=1;VD(d,j,b,n)|0;D_(e)}while(0);mM(b);tm(b);d=0;while(1){if((d|0)>=(c[p>>2]|0))break;n=c[j+(d<<2)>>2]|0;Fn(n);Cz(n,134401)|0;dz(b,n)|0;d=d+1|0}D_(j)}PI(b,o<<24>>24==0&1);f=32}while(0);if((f|0)==32)h[22908]=q;l=r;return}function sm(a){a=a|0;var d=0,e=0,f=0,g=0;$M(a,2);f=KL(a,nx(a,0,89557,0)|0,2,2)|0;d=(KL(a,nx(a,0,90633,0)|0,f,2)|0)&65535;b[(c[(fz(a)|0)+16>>2]|0)+176>>1]=d;d=c[(c[a+60>>2]|0)+16>>2]|0;g=d+176|0;e=b[g>>1]|0;e=(e&65535)<10?e:10;b[g>>1]=e;e=e&65535;c[46366]=e;b[d+178>>1]=(f|0)<(e|0)?f:e;Hm(a);return}function tm(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+1040|0;e=f;d=f+8|0;a:do if((c[46366]|0)>2&(c[46401]|0)!=0){b=Sy(a)|0;while(1){if(!b)break a;h[e>>3]=+h[(c[(c[b+16>>2]|0)+132>>2]|0)+16>>3]*72.0;Y0(d,98183,e)|0;rx(b,c[46401]|0,d)|0;b=Ty(a,b)|0}}while(0);l=f;return}function um(b){b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;e=f;d=xx(b,89477)|0;a:do if(!d)b=1;else{switch(a[d>>0]|0){case 0:{b=1;break a}case 75:{if(!(b$(d,89482)|0)){b=0;break a}break}case 109:{if(!(b$(d,89485)|0)){b=1;break a}break}case 104:{if(!(b$(d,89491)|0)){b=2;break a}break}default:{}}b=ry(b)|0;c[e>>2]=d;c[e+4>>2]=b;Pw(0,89496,e)|0;b=1}while(0);l=f;return b|0}function vm(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+16|0;f=h+8|0;e=h;d=xx(b,89260)|0;a:do if(!d)b=0;else{switch(a[d>>0]|0){case 0:{b=0;break a}case 99:{if(!(b$(d,89266)|0)){b=1;break a}break}case 115:{if(!(b$(d,89274)|0)){b=2;break a}if(!(b$(d,89281)|0)){b=0;break a}break}case 109:{if(!(b$(d,89291)|0)){if(nx(b,2,90566,0)|0){b=3;break a}c[e>>2]=ry(b)|0;Pw(0,89295,e)|0;Pw(3,89358,f)|0;b=0;break a}break}default:{}}b=ry(b)|0;c[g>>2]=d;c[g+4>>2]=b;Pw(0,89415,g)|0;b=0}while(0);l=h;return b|0}function wm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=xx(a,90975)|0;if(!e)if((b|0)==1)e=200;else e=(ay(a)|0)*100|0;else e=a2(e)|0;c[46365]=e;e=yn(a,b)|0;do if(!((e|0)<2|(c[46365]|0)<0))if(!b){zm(a,e,d);break}else{ym(a,e,b,d,c[46366]|0);break}while(0);return}function xm(a){a=a|0;mM(a);$m(a,1);return}function ym(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+64|0;r=u+40|0;o=u+24|0;n=u;p=u+48|0;t=u+44|0;q=(d|0)==2;i=pm(a,b,q?0:2)|0;j=Gm(a)|0;k=j|4;s=vH(f<<2)|0;c[s>>2]=vH(O(b<<3,f)|0)|0;g=c[46366]|0;f=1;while(1){if((f|0)>=(g|0))break;c[s+(f<<2)>>2]=(c[s>>2]|0)+((O(f,b)|0)<<3);f=f+1|0}g=(i|0)==0;f=g?k:j;if(0){k=c[15686]|0;j=c[46365]|0;m=+h[22909];c[n>>2]=e;c[n+4>>2]=g&1;c[n+8>>2]=f&3;c[n+12>>2]=j;h[n+16>>3]=m;g1(k,89073,n)|0;E1(89130,15,1,k)|0;EL();E1(89146,13,1,k)|0}n=Cm(a,b,p,d,e,t)|0;if(0){k=c[15686]|0;m=+FL();c[o>>2]=b;h[o+8>>3]=m;g1(k,89160,o)|0}if((d|0)!=1){m=+LL(a,nx(a,0,89179,0)|0,0.0,-1797693134862315708145274.0e284);if(q){f=Gq(n,b,c[p>>2]|0,s,c[t>>2]|0,c[46366]|0,f,e,c[46365]|0,m)|0;g=12}else g=14}else{f=qn(n,b,c[p>>2]|0,s,c[t>>2]|0,c[46366]|0,f,e,c[46365]|0)|0;g=12}if((g|0)==12)if((f|0)<0)Pw(3,89189,r)|0;else g=14;a:do if((g|0)==14){g=Sy(a)|0;while(1){if(!g)break a;k=c[g+16>>2]|0;i=c[k+120>>2]|0;j=c[46366]|0;k=k+132|0;f=0;while(1){if((f|0)>=(j|0))break;h[(c[k>>2]|0)+(f<<3)>>3]=+h[(c[s+(f<<2)>>2]|0)+(i<<3)>>3];f=f+1|0}g=Ty(a,g)|0}}while(0);br(n);D_(c[s>>2]|0);D_(s);D_(c[t>>2]|0);l=u;return}function zm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0.0,j=0;g=l;l=l+48|0;f=g+32|0;e=g;switch(d|0){case 2:{Am(a,b);break}case 1:{if(!(Cq(a,b)|0)){c[e>>2]=ry(a)|0;Pw(0,88802,e)|0;Pw(3,91952,g+8|0)|0;Pw(3,88854,g+16|0)|0;Pw(3,88926,g+24|0)|0;Wn(a,b)}break}default:{Wn(a,b);if((d|0)==3)Bm(a)}}Kn(a,b);Ln(a,b);if(0){e=c[15686]|0;j=c[46365]|0;i=+h[22909];c[f>>2]=d;c[f+4>>2]=j;h[f+8>>3]=i;g1(e,88964,f)|0;EL()}Mn(a,b);l=g;return}function Am(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0;j=l;l=l+16|0;g=Cm(a,b,j,0,2,0)|0;i=ds(g,b)|0;e=a+16|0;a=0;while(1){if((a|0)>=(b|0))break;f=i+(a<<2)|0;d=0;while(1){if((d|0)==(b|0))break;h[(c[(c[(c[e>>2]|0)+160>>2]|0)+(a<<2)>>2]|0)+(d<<3)>>3]=+(c[(c[f>>2]|0)+(d<<2)>>2]|0);d=d+1|0}a=a+1|0}D_(c[i>>2]|0);D_(i);br(g);l=j;return}function Bm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0.0;f=a+16|0;d=Sy(a)|0;while(1){if(!d)break;b=Ex(a,d)|0;while(1){if(!b)break;g=c[b>>2]&3;e=(c[c[((g|0)==3?b:b+48|0)+40>>2]>>2]|0)>>>4;g=(c[c[((g|0)==2?b:b+-48|0)+40>>2]>>2]|0)>>>4;if((e|0)!=(g|0)){j=+h[(c[b+16>>2]|0)+136>>3];i=c[(c[f>>2]|0)+160>>2]|0;h[(c[i+(g<<2)>>2]|0)+(e<<3)>>3]=j;h[(c[i+(e<<2)>>2]|0)+(g<<3)>>3]=j}b=Gx(a,b)|0}d=Ty(a,d)|0}return}function Cm(a,b,d,e,f,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0.0,I=0;j=by(a)|0;G=GI()|0;if((f|0)==2){k=0;D=0}else{D=nx(a,2,90566,0)|0;k=(c[46404]|0)!=0&1;D=(D|0)!=0}A=(e|1|0)==3;E=vH(b*20|0)|0;F=vH(b<<2)|0;l=(j<<1)+b<<2;m=vH(l)|0;z=A|D;if(z)f=vH(l)|0;else f=0;C=(k|0)!=0;if(C)j=vH(l)|0;else j=0;if(A)k=vH(l)|0;else k=0;l=0;x=Sy(a)|0;y=0;while(1){if(!x)break;JI(G);if((c[(c[x+16>>2]|0)+120>>2]|0)!=(y|0)){B=12;break}c[F+(y<<2)>>2]=x;u=E+(y*20|0)+4|0;c[u>>2]=m;v=E+(y*20|0)+8|0;c[v>>2]=z?f:0;w=E+(y*20|0)+12|0;c[w>>2]=C?j:0;c[E+(y*20|0)+16>>2]=A?k:0;r=1;t=Jx(a,x)|0;s=1;q=l;m=m+4|0;f=z?f+4|0:f;j=C?j+4|0:j;k=A?k+4|0:k;while(1){if(!t)break;n=c[t>>2]&3;p=t+-48|0;l=t+48|0;do if((c[((n|0)==2?t:p)+40>>2]|0)==(c[((n|0)==3?t:l)+40>>2]|0)){n=r;p=s;l=q}else{n=Dm(G,t,r)|0;if((n|0)!=(r|0)){if(C){p=(c[w>>2]|0)+(n<<2)|0;g[p>>2]=+h[(c[t+16>>2]|0)+128>>3]+ +g[p>>2]}if(!D){n=r;p=s;l=q;break}n=(c[v>>2]|0)+(n<<2)|0;H=+h[(c[t+16>>2]|0)+136>>3];o=+(~~+g[n>>2]|0);g[n>>2]=H>o?H:o;n=r;p=s;l=q;break}I=c[t>>2]&3;l=(I|0)==3?t:l;q=q+1|0;n=r+1|0;r=m+4|0;c[m>>2]=c[(c[(c[((c[l+40>>2]|0)==(x|0)?((I|0)==2?t:p):l)+40>>2]|0)+16>>2]|0)+120>>2];if(C){g[j>>2]=+h[(c[t+16>>2]|0)+128>>3];j=j+4|0}if(D){l=f+4|0;g[f>>2]=+h[(c[t+16>>2]|0)+136>>3];if(A){f=l;B=27}else f=l}else if(A){g[f>>2]=1.0;f=f+4|0;B=27}if((B|0)==27){B=0;l=xx(t,98533)|0;if((l|0)!=0?(z$(l,132627,4)|0)==0:0)o=0.0;else o=(x|0)==(c[((c[t>>2]&3|0)==2?t:p)+40>>2]|0)?1.0:-1.0;g[k>>2]=o;k=k+4|0}p=s+1|0;l=q;m=r}while(0);r=n;t=Kx(a,t,x)|0;s=p;q=l}c[E+(y*20|0)>>2]=s;c[c[u>>2]>>2]=y;l=q;x=Ty(a,x)|0;y=y+1|0}if((B|0)==12)qa(89003,89018,819,89030);if(A)Em(E,b,e,F);n=(l|0)/2|0;a:do if((n|0)!=(by(a)|0)){l=(n<<1)+b<<2;k=xH(c[E+4>>2]|0,l)|0;if(D)f=xH(c[E+8>>2]|0,l)|0;if(C){m=0;j=xH(c[E+12>>2]|0,l)|0}else m=0;while(1){if((m|0)>=(b|0))break a;l=c[E+(m*20|0)>>2]|0;c[E+(m*20|0)+4>>2]=k;if(D){c[E+(m*20|0)+8>>2]=f;f=f+(l<<2)|0}if(C){c[E+(m*20|0)+12>>2]=j;j=j+(l<<2)|0}m=m+1|0;k=k+(l<<2)|0}}while(0);c[d>>2]=n;if(!i)D_(F);else c[i>>2]=F;KI(G);return E|0}function Dm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=c[b>>2]&3;e=c[(c[(c[((f|0)==3?b:b+48|0)+40>>2]|0)+16>>2]|0)+120>>2]|0;b=c[(c[(c[((f|0)==2?b:b+-48|0)+40>>2]|0)+16>>2]|0)+120>>2]|0;f=(e|0)>(b|0);return LI(a,f?b:e,f?e:b,d)|0}function Em(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=0;while(1){if((g|0)>=(d|0)){g=0;break}h=c[(c[f+(g<<2)>>2]|0)+16>>2]|0;a[h+157>>0]=0;a[h+158>>0]=0;g=g+1|0}while(1){if((g|0)>=(d|0))break;if(!(a[(c[(c[f+(g<<2)>>2]|0)+16>>2]|0)+157>>0]|0))Fm(b,g,e,f);g=g+1|0}return}function Fm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0.0,p=0,q=0;q=(c[f+(d<<2)>>2]|0)+16|0;l=c[q>>2]|0;a[l+157>>0]=1;a[l+158>>0]=1;l=b+(d*20|0)|0;m=b+(d*20|0)+16|0;n=b+(d*20|0)+4|0;o=(e|0)==3?-1.0:1.0;k=1;a:while(1){if((k|0)>=(c[l>>2]|0)){h=14;break}h=(c[m>>2]|0)+(k<<2)|0;do if(!(+g[h>>2]==1.0)){p=c[(c[n>>2]|0)+(k<<2)>>2]|0;i=c[(c[f+(p<<2)>>2]|0)+16>>2]|0;if(!(a[i+158>>0]|0)){if(a[i+157>>0]|0)break;Fm(b,p,e,f);break}g[h>>2]=o;i=b+(p*20|0)+4|0;j=c[b+(p*20|0)>>2]|0;h=1;while(1){if((h|0)>=(j|0)){h=9;break a}if((c[(c[i>>2]|0)+(h<<2)>>2]|0)==(d|0))break;h=h+1|0}g[(c[b+(p*20|0)+16>>2]|0)+(h<<2)>>2]=-1.0}while(0);k=k+1|0}if((h|0)==9)qa(89044,89018,721,89064);else if((h|0)==14){a[(c[q>>2]|0)+158>>0]=0;return}}function Gm(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;a=KL(a,nx(a,0,89205,0)|0,2,0)|0;if((a|0)==0|(a|0)>2){c[b>>2]=89205;Pw(0,89214,b)|0;a=2}l=d;return a|0}function Hm(a){a=a|0;var b=0,d=0,e=0;d=ay(a)|0;c[46026]=nx(a,1,99597,0)|0;e=nx(a,1,90570,0)|0;b=Sy(a)|0;while(1){if(!b)break;$l(b);am(c[46026]|0,e,b,d)|0;b=Ty(a,b)|0}d=Sy(a)|0;while(1){if(!d)break;b=Ex(a,d)|0;while(1){if(!b)break;Im(b);b=Gx(a,b)|0}d=Ty(a,d)|0}return}function Im(a){a=a|0;var b=0.0;Az(a,134378,176,1)|0;eM(a)|0;b=+LL(a,c[46404]|0,1.0,1.0);h[(c[a+16>>2]|0)+128>>3]=b;return}function Jm(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;a=uH(64)|0;e=a+8|0;f=d+8|0;g=e+48|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));d=c[d+56>>2]|0;c[a+56>>2]=d;b[(c[d+16>>2]|0)+168>>1]=1;return a|0}function Km(a,b,c){a=a|0;b=b|0;c=c|0;D_(b);return}function Lm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[b>>2]|0;e=c[d>>2]|0;if(a>>>0<=e>>>0)if(a>>>0>=e>>>0){e=c[b+24>>2]|0;a=c[d+24>>2]|0;if(e>>>0<=a>>>0)if(e>>>0>=a>>>0){a=~~(+h[b+8>>3]-+h[d+8>>3]);if(!a){a=~~(+h[b+16>>3]-+h[d+16>>3]);if(!a){a=~~(+h[b+32>>3]-+h[d+32>>3]);if(!a)a=~~(+h[b+40>>3]-+h[d+40>>3])}}}else a=-1;else a=1}else a=-1;else a=1;return a|0}function Mm(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;g=k;h=e+16|0;i=b[(c[h>>2]|0)+168>>1]|0;j=i<<16>>16;if(i<<16>>16!=1&(a[191874]|0)==0){i=vH(j<<2)|0;g=0;while(1){if((g|0)>=(j|0))break;c[i+(g<<2)>>2]=e;e=c[(c[e+16>>2]|0)+172>>2]|0;g=g+1|0}m=+(f|0);YK(d,i,0,j,m,m,17764);e=0;while(1){if((e|0)>=(j|0))break;g=c[i+(e<<2)>>2]|0;h=g+16|0;if(c[(c[h>>2]|0)+96>>2]|0){f=ez(c[((c[g>>2]&3|0)==3?g:g+48|0)+40>>2]|0)|0;kM(f,c[(c[h>>2]|0)+96>>2]|0)}dL(g);e=e+1|0}D_(i)}else{c[g>>2]=e;m=+(f|0);YK(d,g,0,1,m,m,17764);if(c[(c[h>>2]|0)+96>>2]|0){j=ez(c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)|0;kM(j,c[(c[h>>2]|0)+96>>2]|0)}dL(e)}l=k;return}function Nm(a){a=a|0;return 0}function Om(a){a=a|0;return 0}function Pm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0.0,x=0.0,y=0.0,z=0,A=0,B=0,D=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;Q=l;l=l+384|0;O=Q+368|0;P=Q+112|0;j=Q+32|0;r=Q+336|0;K=Q+320|0;L=Q+304|0;M=Q+288|0;N=Q+272|0;i=Q+256|0;H=Q+240|0;I=Q+224|0;J=Q+208|0;t=Q+192|0;u=Q+176|0;v=Q+160|0;z=Q+144|0;A=Q+128|0;B=Q+96|0;D=Q+16|0;G=Q;a:do switch(HJ(b)|0){case 3:case 1:{f=uH(8)|0;z=b+16|0;b=c[z>>2]|0;i=c[b+12>>2]|0;do if(!(e<<24>>24)){b=c[i+8>>2]|0;if((b|0)>2){y=0.0;j=c[i+44>>2]|0;e=0;p=+g[d>>2];q=+g[d+4>>2];break}else{y=+k2()*.01;b=8;j=0;e=1;p=0.0;q=0.0;break}}else if(!(c[i+40>>2]&2048)){q=+h[b+88>>3];p=-q;y=+h[b+80>>3];x=y*-.5;h[j>>3]=p;h[j+8>>3]=x;h[j+16>>3]=q;h[j+24>>3]=x;y=y*.5;h[j+32>>3]=q;h[j+40>>3]=y;h[j+48>>3]=p;h[j+56>>3]=y;y=0.0;b=4;e=0;p=0.0;q=0.0;break}else{jM(r,i);p=+h[r>>3];x=+h[r+8>>3];q=+h[r+16>>3];y=+h[r+24>>3];h[j>>3]=p;h[j+8>>3]=x;h[j+16>>3]=q;h[j+24>>3]=x;h[j+32>>3]=q;h[j+40>>3]=y;h[j+48>>3]=p;h[j+56>>3]=y;y=0.0;b=4;e=0;p=0.0;q=0.0;break}while(0);c[f+4>>2]=b;r=uH(b<<4)|0;c[f>>2]=r;s=1.0/+(b|0);t=d+8|0;u=d+4|0;v=(b|0)==4;w=-p;x=-q;i=0;while(1){if((b|0)<=(i|0))break a;do if(e){k=+(i|0)*6.283185307179586*s+y;m=+E(+k);k=+F(+k);if(!(a[t>>0]|0)){P=c[z>>2]|0;n=k*+g[u>>2]*+h[P+80>>3];k=m*+g[d>>2]*(+h[P+96>>3]+ +h[P+88>>3])}else{P=c[z>>2]|0;n=(+h[P+80>>3]+ +g[u>>2])*k;k=(+h[P+96>>3]+ +h[P+88>>3]+ +g[d>>2])*m}o=k*.5;k=n*.5}else{if(!(a[t>>0]|0)){o=+h[j+(i<<4)>>3]*p;k=+h[j+(i<<4)+8>>3]*q;break}if(!v){o=+h[j+(i<<4)>>3];k=+h[j+(i<<4)+8>>3];n=+C(+(k*k+o*o));o=(p/n+1.0)*o;k=(q/n+1.0)*k;break}switch(i|0){case 0:{m=q;k=p;break}case 1:{m=q;k=w;break}case 2:{m=x;k=w;break}case 3:{m=x;k=p;break}default:{m=0.0;k=0.0}}o=+h[j+(i<<4)>>3]+k;k=+h[j+(i<<4)+8>>3]+m}while(0);O=c[z>>2]|0;P=b-i+-1|0;h[r+(P<<4)>>3]=+h[O+16>>3]+o;h[r+(P<<4)+8>>3]=+h[O+24>>3]+k;i=i+1|0}}case 2:{G=b+16|0;f=c[(c[G>>2]|0)+12>>2]|0;k=+h[f+16>>3];o=+h[f+24>>3];m=+h[f+32>>3];n=+h[f+40>>3];f=uH(8)|0;c[f+4>>2]=4;b=uH(64)|0;c[f>>2]=b;G=(c[G>>2]|0)+16|0;c[P>>2]=c[G>>2];c[P+4>>2]=c[G+4>>2];c[P+8>>2]=c[G+8>>2];c[P+12>>2]=c[G+12>>2];if(!(a[d+8>>0]|0)){c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Rm(i,k,o,O,d);c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];N=(c[f>>2]|0)+16|0;c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Rm(H,k,n,O,d);c[N>>2]=c[H>>2];c[N+4>>2]=c[H+4>>2];c[N+8>>2]=c[H+8>>2];c[N+12>>2]=c[H+12>>2];N=(c[f>>2]|0)+32|0;c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Rm(I,m,n,O,d);c[N>>2]=c[I>>2];c[N+4>>2]=c[I+4>>2];c[N+8>>2]=c[I+8>>2];c[N+12>>2]=c[I+12>>2];N=(c[f>>2]|0)+48|0;c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Rm(J,m,o,O,d);c[N>>2]=c[J>>2];c[N+4>>2]=c[J+4>>2];c[N+8>>2]=c[J+8>>2];c[N+12>>2]=c[J+12>>2];break a}else{y=k-+g[d>>2];J=d+4|0;x=o-+g[J>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Qm(K,y,x,O);c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2];K=(c[f>>2]|0)+16|0;x=k-+g[d>>2];y=n+ +g[J>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Qm(L,x,y,O);c[K>>2]=c[L>>2];c[K+4>>2]=c[L+4>>2];c[K+8>>2]=c[L+8>>2];c[K+12>>2]=c[L+12>>2];L=(c[f>>2]|0)+32|0;y=m+ +g[d>>2];x=n+ +g[J>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Qm(M,y,x,O);c[L>>2]=c[M>>2];c[L+4>>2]=c[M+4>>2];c[L+8>>2]=c[M+8>>2];c[L+12>>2]=c[M+12>>2];M=(c[f>>2]|0)+48|0;x=m+ +g[d>>2];y=o-+g[J>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Qm(N,x,y,O);c[M>>2]=c[N>>2];c[M+4>>2]=c[N+4>>2];c[M+8>>2]=c[N+8>>2];c[M+12>>2]=c[N+12>>2];break a}}case 4:{b=b+16|0;f=uH(8)|0;c[f+4>>2]=4;i=uH(64)|0;c[f>>2]=i;j=c[b>>2]|0;N=j+16|0;c[P>>2]=c[N>>2];c[P+4>>2]=c[N+4>>2];c[P+8>>2]=c[N+8>>2];c[P+12>>2]=c[N+12>>2];k=-+h[j+88>>3];if(!(a[d+8>>0]|0)){x=-+h[j+80>>3];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Rm(A,k,x,O,d);c[i>>2]=c[A>>2];c[i+4>>2]=c[A+4>>2];c[i+8>>2]=c[A+8>>2];c[i+12>>2]=c[A+12>>2];N=(c[f>>2]|0)+16|0;M=c[b>>2]|0;x=-+h[M+88>>3];y=+h[M+80>>3];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Rm(B,x,y,O,d);c[N>>2]=c[B>>2];c[N+4>>2]=c[B+4>>2];c[N+8>>2]=c[B+8>>2];c[N+12>>2]=c[B+12>>2];N=(c[f>>2]|0)+32|0;M=c[b>>2]|0;y=+h[M+96>>3];x=+h[M+80>>3];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Rm(D,y,x,O,d);c[N>>2]=c[D>>2];c[N+4>>2]=c[D+4>>2];c[N+8>>2]=c[D+8>>2];c[N+12>>2]=c[D+12>>2];N=(c[f>>2]|0)+48|0;M=c[b>>2]|0;x=+h[M+96>>3];y=-+h[M+80>>3];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Rm(G,x,y,O,d);c[N>>2]=c[G>>2];c[N+4>>2]=c[G+4>>2];c[N+8>>2]=c[G+8>>2];c[N+12>>2]=c[G+12>>2];break a}else{y=k-+g[d>>2];M=d+4|0;x=-+h[j+80>>3]-+g[M>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Qm(t,y,x,O);c[i>>2]=c[t>>2];c[i+4>>2]=c[t+4>>2];c[i+8>>2]=c[t+8>>2];c[i+12>>2]=c[t+12>>2];N=(c[f>>2]|0)+16|0;L=c[b>>2]|0;x=-+h[L+88>>3]-+g[d>>2];y=+h[L+80>>3]+ +g[M>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Qm(u,x,y,O);c[N>>2]=c[u>>2];c[N+4>>2]=c[u+4>>2];c[N+8>>2]=c[u+8>>2];c[N+12>>2]=c[u+12>>2];N=(c[f>>2]|0)+32|0;L=c[b>>2]|0;y=+h[L+96>>3]+ +g[d>>2];x=+h[L+80>>3]+ +g[M>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Qm(v,y,x,O);c[N>>2]=c[v>>2];c[N+4>>2]=c[v+4>>2];c[N+8>>2]=c[v+8>>2];c[N+12>>2]=c[v+12>>2];N=(c[f>>2]|0)+48|0;L=c[b>>2]|0;x=+h[L+96>>3]+ +g[d>>2];y=-+h[L+80>>3]-+g[M>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Qm(z,x,y,O);c[N>>2]=c[z>>2];c[N+4>>2]=c[z+4>>2];c[N+8>>2]=c[z+8>>2];c[N+12>>2]=c[z+12>>2];break a}}default:f=0}while(0);l=Q;return f|0}function Qm(a,b,c,d){a=a|0;b=+b;c=+c;d=d|0;c=+h[d+8>>3]+c;h[a>>3]=+h[d>>3]+b;h[a+8>>3]=c;return}function Rm(a,b,c,d,e){a=a|0;b=+b;c=+c;d=d|0;e=e|0;c=+g[e+4>>2]*c+ +h[d+8>>3];h[a>>3]=+g[e>>2]*b+ +h[d>>3];h[a+8>>3]=c;return}function Sm(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+112|0;j=o+88|0;i=o+72|0;k=o+32|0;m=o+16|0;n=o;f=o+56|0;g=o+40|0;h=b+48|0;r=(c[(c[((c[b>>2]&3|0)==3?b:h)+40>>2]|0)+16>>2]|0)+16|0;p=b+16|0;q=(c[p>>2]|0)+16|0;c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];c[i+8>>2]=c[r+8>>2];c[i+12>>2]=c[r+12>>2];c[j>>2]=c[q>>2];c[j+4>>2]=c[q+4>>2];c[j+8>>2]=c[q+8>>2];c[j+12>>2]=c[q+12>>2];Tm(f,i,j);c[m>>2]=c[f>>2];c[m+4>>2]=c[f+4>>2];c[m+8>>2]=c[f+8>>2];c[m+12>>2]=c[f+12>>2];f=b+-48|0;q=(c[(c[((c[b>>2]&3|0)==2?b:f)+40>>2]|0)+16>>2]|0)+16|0;p=(c[p>>2]|0)+56|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];c[i+12>>2]=c[q+12>>2];c[j>>2]=c[p>>2];c[j+4>>2]=c[p+4>>2];c[j+8>>2]=c[p+8>>2];c[j+12>>2]=c[p+12>>2];Tm(g,i,j);c[n>>2]=c[g>>2];c[n+4>>2]=c[g+4>>2];c[n+8>>2]=c[g+8>>2];c[n+12>>2]=c[g+12>>2];if(!e){g=-1111;f=-1111}else{r=c[b>>2]&3;g=c[(c[(c[((r|0)==2?b:f)+40>>2]|0)+16>>2]|0)+288>>2]|0;f=c[(c[(c[((r|0)==3?b:h)+40>>2]|0)+16>>2]|0)+288>>2]|0};c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[i+8>>2]=c[m+8>>2];c[i+12>>2]=c[m+12>>2];c[j>>2]=c[n>>2];c[j+4>>2]=c[n+4>>2];c[j+8>>2]=c[n+8>>2];c[j+12>>2]=c[n+12>>2];vU(d,i,f,j,g,k)|0;p=k;q=c[p+4>>2]|0;r=a;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=o;return}function Tm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+h[c+8>>3]+ +h[b+8>>3];h[a>>3]=+h[c>>3]+ +h[b>>3];h[a+8>>3]=d;return}function Um(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+144|0;p=u+104|0;q=u+88|0;o=u+80|0;n=u+72|0;j=u+64|0;s=u+128|0;k=u+32|0;m=u+124|0;t=u+16|0;r=u;i=u+120|0;h=(c[b+16>>2]|0)+144|0;g=c[h>>2]|0;h=c[h+4>>2]|0;v=j;c[v>>2]=g;c[v+4>>2]=h;v=g;c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];c[t+8>>2]=c[v+8>>2];c[t+12>>2]=c[v+12>>2];h=g+(h+-1<<4)|0;c[r>>2]=c[h>>2];c[r+4>>2]=c[h+4>>2];c[r+8>>2]=c[h+8>>2];c[r+12>>2]=c[h+12>>2];a:do if(!(f<<24>>24)){g=-1111;f=-1111}else{g=-1111;f=-1111;h=0;while(1){if((h|0)>=(e|0))break a;if((f|0)==-1111){f=c[d+(h<<2)>>2]|0;c[q>>2]=c[f>>2];c[q+4>>2]=c[f+4>>2];c[p>>2]=c[t>>2];c[p+4>>2]=c[t+4>>2];c[p+8>>2]=c[t+8>>2];c[p+12>>2]=c[t+12>>2];f=(wU(q,p)|0)==0;f=f?-1111:h}if((g|0)==-1111){g=c[d+(h<<2)>>2]|0;c[q>>2]=c[g>>2];c[q+4>>2]=c[g+4>>2];c[p>>2]=c[r>>2];c[p+4>>2]=c[r+4>>2];c[p+8>>2]=c[r+8>>2];c[p+12>>2]=c[r+12>>2];g=(wU(q,p)|0)==0;g=g?-1111:h}h=h+1|0}}while(0);Vm(d,e,f,g,i,m);c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;c[k+28>>2]=0;h=c[i>>2]|0;v=c[m>>2]|0;c[p>>2]=c[j>>2];c[p+4>>2]=c[j+4>>2];if((xU(h,v,p,k,s)|0)<0){t=ry(c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0;v=ry(c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)|0;c[n>>2]=t;c[n+4>>2]=v;Pw(1,89563,n)|0}else{if(0>1){g=c[15686]|0;n=ry(c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0;f=b+-48|0;v=ry(c[((c[b>>2]&3|0)==2?b:f)+40>>2]|0)|0;c[o>>2]=n;c[o+4>>2]=v;g1(g,89611,o)|0;g=b}else{f=b+-48|0;g=b}QK(b,c[((c[g>>2]&3|0)==2?b:f)+40>>2]|0,c[s>>2]|0,c[s+4>>2]|0,17764);D_(h);c[q>>2]=c[t>>2];c[q+4>>2]=c[t+4>>2];c[q+8>>2]=c[t+8>>2];c[q+12>>2]=c[t+12>>2];c[p>>2]=c[r>>2];c[p+4>>2]=c[r+4>>2];c[p+8>>2]=c[r+8>>2];c[p+12>>2]=c[r+12>>2];jL(a,b,q,p)}l=u;return}function Vm(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=0;h=0;while(1){if((i|0)>=(b|0))break;if(!((i|0)==(d|0)|(i|0)==(e|0)))h=(c[(c[a+(i<<2)>>2]|0)+4>>2]|0)+h|0;i=i+1|0}o=vH(h<<5)|0;i=0;n=0;while(1){if((n|0)>=(b|0))break;a:do if(!((n|0)==(d|0)|(n|0)==(e|0))){m=a+(n<<2)|0;l=0;while(1){j=c[m>>2]|0;k=c[j+4>>2]|0;if((l|0)>=(k|0))break a;p=l+1|0;q=o+(i<<5)|0;j=(c[j>>2]|0)+(l<<4)|0;c[q>>2]=c[j>>2];c[q+4>>2]=c[j+4>>2];c[q+8>>2]=c[j+8>>2];c[q+12>>2]=c[j+12>>2];j=o+(i<<5)+16|0;k=(c[c[m>>2]>>2]|0)+(((p|0)<(k|0)?p:0)<<4)|0;c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];l=p;i=i+1|0}}while(0);n=n+1|0}if((i|0)==(h|0)){c[f>>2]=o;c[g>>2]=h;return}else qa(89625,89632,77,89647)}function Wm(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;k=n+12|0;f=n;uq(f,a);c[k>>2]=c[f>>2];c[k+4>>2]=c[f+4>>2];c[k+8>>2]=c[f+8>>2];f=Sy(a)|0;while(1){if(!f)break;g=Ex(a,f)|0;while(1){if(!g)break;KK(g);g=Gx(a,g)|0}f=Ty(a,f)|0}h=Cw(17728,c[4555]|0)|0;f=Sy(a)|0;while(1){if(!f)break;g=Ex(a,f)|0;while(1){if(!g)break;if((c[46363]|0)>1?(i=c[g+16>>2]|0,(c[i+8>>2]|0)!=0):0){o=i+168|0;b[o>>1]=(b[o>>1]|0)+1<<16>>16}else m=14;if((m|0)==14?(m=0,j=Xm(h,g)|0,(j|0)!=(g|0)):0){o=c[j+16>>2]|0;p=o+168|0;b[p>>1]=(b[p>>1]|0)+1<<16>>16;o=o+172|0;c[(c[g+16>>2]|0)+172>>2]=c[o>>2];c[o>>2]=g}g=Gx(a,g)|0}f=Ty(a,f)|0}yw(h)|0;if(!(nb[d&63](a,k,e)|0)){c[46367]=1;f=0}else f=1;l=n;return f|0}function Xm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0.0,i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+64|0;p=q;e=c[b>>2]&3;i=c[((e|0)==3?b:b+48|0)+40>>2]|0;e=c[((e|0)==2?b:b+-48|0)+40>>2]|0;do if(i>>>0>=e>>>0){d=b+16|0;if(i>>>0>e>>>0){d=c[d>>2]|0;o=e;e=i;k=+h[d+16>>3];m=+h[d+24>>3];g=+h[d+56>>3];f=+h[d+64>>3];break}o=c[d>>2]|0;j=+h[o+56>>3];n=+h[o+64>>3];g=+h[o+16>>3];f=+h[o+24>>3];if(!(g<j))if(!(g>j)){d=f>n;if(f<n){o=i;e=i;k=j;m=n}else{o=i;e=i;k=g;m=f;g=d?j:g;f=d?n:f}}else{o=i;e=i;k=g;m=f;g=j;f=n}else{o=i;e=i;k=j;m=n}}else{d=c[b+16>>2]|0;o=i;k=+h[d+56>>3];m=+h[d+64>>3];g=+h[d+16>>3];f=+h[d+24>>3]}while(0);c[p+8>>2]=o;h[p+16>>3]=g;h[p+24>>3]=f;c[p+32>>2]=e;h[p+40>>3]=k;h[p+48>>3]=m;c[p+56>>2]=b;p=c[(nb[c[a>>2]&63](a,p,1)|0)+56>>2]|0;l=q;return p|0}function Ym(a,b){a=a|0;b=b|0;return Wm(a,21,b)|0}function Zm(d,e,f){d=d|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0,H=0;F=l;l=l+112|0;B=F+88|0;A=F+72|0;t=F+40|0;q=F+8|0;p=F;u=F+64|0;C=F+48|0;D=F+24|0;i=(c[46363]|0)>1&1;do if((f|0)>5){s=uH((ay(d)|0)<<2)|0;o=(f|0)==8;n=o&1;m=Sy(d)|0;r=0;while(1){if(!m)break;j=Pm(m,e,n)|0;k=(c[m+16>>2]|0)+288|0;if(!j){c[k>>2]=-1111;j=r}else{c[k>>2]=r;c[s+(r<<2)>>2]=j;j=r+1|0}m=Ty(d,m)|0;r=j}if(s){j=ms(s,r)|0;if(j|0){if(o){y=0;z=s;x=s;w=1;break}y=sU(s,r)|0;z=s;x=s;w=1;break}if(o){Pw(0,89661,p)|0;j=0;y=0;z=s;x=s;w=1;break}else{G=+g[e+4>>2];h[q>>3]=+g[e>>2];h[q+8>>3]=G;Pw(0,89739,q)|0;j=0;y=0;z=s;x=s;w=1;break}}else{j=0;y=0;z=0;x=0;w=0}}else{j=0;y=0;z=0;r=0;x=0;w=0}while(0);if(0){k=c[15686]|0;if((f|0)==8&(j|0)!=0)m=89845;else m=(y|0)==0?89831:(f|0)==10?107030:89821;c[t>>2]=m;g1(k,89862,t)|0}v=(y|0)!=0;a:do if(!v){if((f|0)==8&(j|0)!=0){cN(d,0);i=1}}else{k=Sy(d)|0;while(1){if(!k)break a;j=Ex(d,k)|0;while(1){if(!j)break;t=(c[j+16>>2]|0)+144|0;Sm(u,j,y,1,0,0);q=u;s=c[q+4>>2]|0;c[t>>2]=c[q>>2];c[t+4>>2]=s;j=Gx(d,j)|0}k=Ty(d,k)|0}}while(0);p=(i|0)==0;q=d+60|0;s=(f|0)==10;i=0;o=Sy(d)|0;j=0;while(1){if(!o)break;t=o+16|0;e=Ex(d,o)|0;while(1){if(!e)break;n=c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0;k=e+16|0;m=c[k>>2]|0;if(!p?(c[m+8>>2]|0)!=0:0){H=(c[t>>2]|0)+16|0;u=m+16|0;c[A>>2]=c[H>>2];c[A+4>>2]=c[H+4>>2];c[A+8>>2]=c[H+8>>2];c[A+12>>2]=c[H+12>>2];c[B>>2]=c[u>>2];c[B+4>>2]=c[u+4>>2];c[B+8>>2]=c[u+8>>2];c[B+12>>2]=c[u+12>>2];Tm(C,A,B);n=(c[n+16>>2]|0)+16|0;u=(c[k>>2]|0)+56|0;c[A>>2]=c[n>>2];c[A+4>>2]=c[n+4>>2];c[A+8>>2]=c[n+8>>2];c[A+12>>2]=c[n+12>>2];c[B>>2]=c[u>>2];c[B+4>>2]=c[u+4>>2];c[B+8>>2]=c[u+8>>2];c[B+12>>2]=c[u+12>>2];Tm(D,A,B);c[A>>2]=c[C>>2];c[A+4>>2]=c[C+4>>2];c[A+8>>2]=c[C+8>>2];c[A+12>>2]=c[C+12>>2];c[B>>2]=c[D>>2];c[B+4>>2]=c[D+4>>2];c[B+8>>2]=c[D+8>>2];c[B+12>>2]=c[D+12>>2];jL(d,e,A,B)}else E=35;b:do if((E|0)==35){E=0;H=b[m+168>>1]|0;k=H<<16>>16;if(H<<16>>16){if((o|0)==(n|0)){if(!i){j=uH(96)|0;c[j+84>>2]=uH(((ay(d)|0)<<5)+11520|0)|0;i=j}Mm(i,e,c[(c[(c[q>>2]|0)+16>>2]|0)+248>>2]|0);break}if(!v){zJ(d,e,f,17764);break}k=a[191874]|0?1:k;m=e;n=0;while(1){if((n|0)>=(k|0))break b;if(s)Um(d,m,z,r,1);else _m(d,m);m=c[(c[m+16>>2]|0)+172>>2]|0;n=n+1|0}}}while(0);e=Gx(d,e)|0}o=Ty(d,o)|0}if(v)uU(y);if(i|0){D_(c[i+84>>2]|0);D_(j)}if(w){i=0;while(1){if((i|0)>=(r|0))break;D_(c[z+(i<<2)>>2]|0);i=i+1|0}D_(x)}l=F;return 0}function _m(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+96|0;g=k+64|0;f=k+48|0;d=k+40|0;h=k+80|0;e=k+32|0;i=k+16|0;j=k;m=(c[b+16>>2]|0)+144|0;n=c[m>>2]|0;m=c[m+4>>2]|0;o=e;c[o>>2]=n;c[o+4>>2]=m;o=n;c[i>>2]=c[o>>2];c[i+4>>2]=c[o+4>>2];c[i+8>>2]=c[o+8>>2];c[i+12>>2]=c[o+12>>2];m=n+(m+-1<<4)|0;c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];oV(g,h);if(0>1){o=c[15686]|0;m=ry(c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0;e=b+-48|0;n=ry(c[((c[b>>2]&3|0)==2?b:e)+40>>2]|0)|0;c[d>>2]=m;c[d+4>>2]=n;g1(o,89887,d)|0;d=e;e=b}else{d=b+-48|0;e=b}QK(b,c[((c[e>>2]&3|0)==2?b:d)+40>>2]|0,c[h>>2]|0,c[h+4>>2]|0,17764);c[f>>2]=c[i>>2];c[f+4>>2]=c[i+4>>2];c[f+8>>2]=c[i+8>>2];c[f+12>>2]=c[i+12>>2];c[g>>2]=c[j>>2];c[g+4>>2]=c[j+4>>2];c[g+8>>2]=c[j+8>>2];c[g+12>>2]=c[j+12>>2];jL(a,b,f,g);l=k;return}function $m(a,d){a=a|0;d=d|0;var e=0;e=b[(c[a+16>>2]|0)+136>>1]&14;if(d<<24>>24)an(a)|0;if(e<<16>>16)Ym(a,e&65535)|0;return}function an(a){a=a|0;var b=0,d=0,e=0,f=0;d=bn(a)|0;b=Sy(a)|0;while(1){if(!b)break;e=c[b+16>>2]|0;f=c[e+132>>2]|0;h[e+16>>3]=+h[f>>3]*72.0;h[e+24>>3]=+h[f+8>>3]*72.0;b=Ty(a,b)|0}return d|0}function bn(a){a=a|0;var b=0,d=0,e=0,f=0.0,g=0.0,i=0.0,j=0,k=0;a:do if((c[a+60>>2]|0)==(a|0)?(d=a+16|0,e=c[d>>2]|0,(c[(c[e+8>>2]|0)+84>>2]|0)!=0):0){if(!(+h[e+16>>3]!=0.0)?!(+h[e+24>>3]!=0.0):0)b=0;else{cn(a);b=1;e=c[d>>2]|0}j=(c[e+116>>2]&1|0)==0;if(!j){k=e+32|0;i=+h[k>>3];d=e+40|0;h[k>>3]=+h[d>>3];h[d>>3]=i}d=c[e+8>>2]|0;b:do switch(c[d+84>>2]|0){case 2:{f=+h[d+64>>3];if(f<=0.0)break a;g=f/+h[e+32>>3];f=+h[d+72>>3]/+h[e+40>>3];if(g<1.0|f<1.0)if(g<f){i=1.0;f=f/g;break b}else{i=g/f;f=1.0;break b}else i=g;break}case 5:{f=+h[d+64>>3];if(f<=0.0)break a;g=f/+h[e+32>>3];f=+h[d+72>>3]/+h[e+40>>3];if(!(g>1.0&f>1.0))break a;f=g<f?g:f;i=f;break}case 1:{g=+h[d+16>>3];f=+h[e+40>>3]/+h[e+32>>3];if(f<g){i=1.0;f=g/f;break b}else{i=f/g;f=1.0;break b}}default:break a}while(0);g=j?f:i;f=j?i:f;c:do if((c[46363]|0)>1){d=Sy(a)|0;while(1){if(!d)break c;b=Ex(a,d)|0;while(1){if(!b)break;if(c[(c[b+16>>2]|0)+8>>2]|0)dn(b,f,g);b=Gx(a,b)|0}d=Ty(a,d)|0}}while(0);b=Sy(a)|0;while(1){if(!b)break;k=c[(c[b+16>>2]|0)+132>>2]|0;h[k>>3]=+h[k>>3]*f;k=k+8|0;h[k>>3]=+h[k>>3]*g;b=Ty(a,b)|0}en(a,f,g);b=1}else b=0;while(0);return b|0}function cn(b){b=b|0;var d=0,e=0,f=0.0,g=0.0,i=0.0,j=0.0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;k=n+16|0;m=n;d=(c[b+16>>2]|0)+16|0;c[m>>2]=c[d>>2];c[m+4>>2]=c[d+4>>2];c[m+8>>2]=c[d+8>>2];c[m+12>>2]=c[d+12>>2];f=+h[m>>3];g=f*.013888888888888888;i=+h[m+8>>3];j=i*.013888888888888888;d=Sy(b)|0;while(1){if(!d)break;e=c[d+16>>2]|0;o=c[e+132>>2]|0;h[o>>3]=+h[o>>3]-g;o=o+8|0;h[o>>3]=+h[o>>3]-j;e=c[e+108>>2]|0;if(e|0?a[e+81>>0]|0:0){o=e+56|0;h[o>>3]=+h[o>>3]-f;o=e+64|0;h[o>>3]=+h[o>>3]-i}d=Ty(b,d)|0}e=Sy(b)|0;while(1){if(!e)break;d=Ex(b,e)|0;while(1){if(!d)break;if(c[(c[d+16>>2]|0)+8>>2]|0){c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];fn(d,k)}d=Gx(b,d)|0}e=Ty(b,e)|0}c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];gn(b,k);l=n;return}function dn(b,d,e){b=b|0;d=+d;e=+e;var f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0;p=c[b>>2]&3;i=c[(c[(c[((p|0)==2?b:b+-48|0)+40>>2]|0)+16>>2]|0)+132>>2]|0;s=(d+-1.0)*72.0;q=s*+h[i>>3];t=(e+-1.0)*72.0;r=t*+h[i+8>>3];p=c[(c[(c[((p|0)==3?b:b+48|0)+40>>2]|0)+16>>2]|0)+132>>2]|0;s=s*+h[p>>3];t=t*+h[p+8>>3];p=c[b+16>>2]|0;i=c[p+8>>2]|0;j=c[i+4>>2]|0;k=j+-1|0;b=0;i=c[i>>2]|0;while(1){if((b|0)>=(j|0))break;l=c[i+4>>2]|0;m=l+-1|0;n=(b|0)==(k|0);f=0;g=c[i>>2]|0;while(1){if((f|0)>=(l|0))break;do if(f|b){o=+h[g>>3];if((f|0)==(m|0)&n){h[g>>3]=o+q;u=g+8|0;h[u>>3]=+h[u>>3]+r;break}else{h[g>>3]=o*d;u=g+8|0;h[u>>3]=+h[u>>3]*e;break}}else{h[g>>3]=+h[g>>3]+s;u=g+8|0;h[u>>3]=+h[u>>3]+t}while(0);f=f+1|0;g=g+16|0}if(c[i+8>>2]|0){u=i+16|0;h[u>>3]=+h[u>>3]+s;u=i+24|0;h[u>>3]=+h[u>>3]+t}if(c[i+12>>2]|0){u=i+32|0;h[u>>3]=+h[u>>3]+q;u=i+40|0;h[u>>3]=+h[u>>3]+r}b=b+1|0;i=i+48|0}b=c[p+96>>2]|0;if(b|0?a[b+81>>0]|0:0){u=b+56|0;h[u>>3]=+h[u>>3]*d;u=b+64|0;h[u>>3]=+h[u>>3]*e}b=c[p+100>>2]|0;if(b|0?a[b+81>>0]|0:0){u=b+56|0;h[u>>3]=+h[u>>3]+q;u=b+64|0;h[u>>3]=+h[u>>3]+r}b=c[p+104>>2]|0;if(b|0?a[b+81>>0]|0:0){u=b+56|0;h[u>>3]=+h[u>>3]+s;u=b+64|0;h[u>>3]=+h[u>>3]+t}return}function en(b,d,e){b=b|0;d=+d;e=+e;var f=0,g=0,i=0;i=b+16|0;g=c[i>>2]|0;b=g+32|0;h[b>>3]=+h[b>>3]*d;b=g+40|0;h[b>>3]=+h[b>>3]*e;b=g+16|0;h[b>>3]=+h[b>>3]*d;b=g+24|0;h[b>>3]=+h[b>>3]*e;b=c[g+12>>2]|0;if((b|0)!=0?(a[b+81>>0]|0)!=0:0){f=b+56|0;h[f>>3]=+h[f>>3]*d;f=b+64|0;h[f>>3]=+h[f>>3]*e;f=1;b=g}else{f=1;b=g}while(1){if((f|0)>(c[b+180>>2]|0))break;en(c[(c[b+184>>2]|0)+(f<<2)>>2]|0,d,e);f=f+1|0;b=c[i>>2]|0}return}function fn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0;k=c[b+16>>2]|0;b=c[k+8>>2]|0;j=c[b+4>>2]|0;l=d+8|0;b=c[b>>2]|0;g=0;while(1){if((g|0)>=(j|0))break;i=c[b+4>>2]|0;e=c[b>>2]|0;f=0;while(1){if((f|0)>=(i|0))break;h[e>>3]=+h[e>>3]-+h[d>>3];m=e+8|0;h[m>>3]=+h[m>>3]-+h[l>>3];e=e+16|0;f=f+1|0}if(c[b+8>>2]|0){m=b+16|0;h[m>>3]=+h[m>>3]-+h[d>>3];m=b+24|0;h[m>>3]=+h[m>>3]-+h[l>>3]}if(c[b+12>>2]|0){m=b+32|0;h[m>>3]=+h[m>>3]-+h[d>>3];m=b+40|0;h[m>>3]=+h[m>>3]-+h[l>>3]}b=b+48|0;g=g+1|0}b=c[k+96>>2]|0;if(b|0?a[b+81>>0]|0:0){m=b+56|0;h[m>>3]=+h[m>>3]-+h[d>>3];m=b+64|0;h[m>>3]=+h[m>>3]-+h[l>>3]}b=c[k+108>>2]|0;if(b|0?a[b+81>>0]|0:0){m=b+56|0;h[m>>3]=+h[m>>3]-+h[d>>3];m=b+64|0;h[m>>3]=+h[m>>3]-+h[l>>3]}b=c[k+100>>2]|0;if(b|0?a[b+81>>0]|0:0){m=b+56|0;h[m>>3]=+h[m>>3]-+h[d>>3];m=b+64|0;h[m>>3]=+h[m>>3]-+h[l>>3]}b=c[k+104>>2]|0;if(b|0?a[b+81>>0]|0:0){m=b+56|0;h[m>>3]=+h[m>>3]-+h[d>>3];m=b+64|0;h[m>>3]=+h[m>>3]-+h[l>>3]}return}function gn(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;j=k;g=+h[d>>3];i=b+16|0;b=c[i>>2]|0;e=b+32|0;h[e>>3]=+h[e>>3]-g;f=+h[d+8>>3];e=b+40|0;h[e>>3]=+h[e>>3]-f;e=b+16|0;h[e>>3]=+h[e>>3]-g;e=b+24|0;h[e>>3]=+h[e>>3]-f;e=c[b+12>>2]|0;if((e|0)!=0?(a[e+81>>0]|0)!=0:0){m=e+56|0;h[m>>3]=+h[m>>3]-g;e=e+64|0;h[e>>3]=+h[e>>3]-f;e=1}else e=1;while(1){if((e|0)>(c[b+180>>2]|0))break;m=c[(c[b+184>>2]|0)+(e<<2)>>2]|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];gn(m,j);e=e+1|0;b=c[i>>2]|0}l=k;return}function hn(a){a=a|0;var b=0,d=0,e=0,f=0.0,g=0.0,i=0,j=0;i=l;l=l+16|0;d=i;mM(a);e=a+16|0;b=c[e>>2]|0;f=+h[b+16>>3]*.013888888888888888;g=+h[b+24>>3]*.013888888888888888;b=Sy(a)|0;while(1){if(!b)break;j=c[(c[b+16>>2]|0)+132>>2]|0;h[j>>3]=+h[j>>3]-f;j=j+8|0;h[j>>3]=+h[j>>3]-g;b=Ty(a,b)|0}j=(c[e>>2]|0)+16|0;c[d>>2]=c[j>>2];c[d+4>>2]=c[j+4>>2];c[d+8>>2]=c[j+8>>2];c[d+12>>2]=c[j+12>>2];jn(a,d);$m(a,1);l=i;return}function jn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0.0,j=0.0;g=l;l=l+16|0;f=g;d=a+16|0;a=1;while(1){e=c[d>>2]|0;if((a|0)>(c[e+180>>2]|0))break;e=c[(c[e+184>>2]|0)+(a<<2)>>2]|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];jn(e,f);a=a+1|0}j=+h[b>>3];f=e+32|0;h[f>>3]=+h[f>>3]-j;i=+h[b+8>>3];b=e+40|0;h[b>>3]=+h[b>>3]-i;b=e+16|0;h[b>>3]=+h[b>>3]-j;b=e+24|0;h[b>>3]=+h[b>>3]-i;l=g;return}function kn(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0;p=(e|0)>2;n=0;o=0;j=c[f+4>>2]|0;b=c[f>>2]|0;while(1){if((o|0)>=(d|0)){b=0;break}i=c[(c[g+(o<<2)>>2]|0)+16>>2]|0;l=a[i+119>>0]|0;a:do if(!(l<<24>>24)){k=b+8|0;h[b>>3]=+k2();i=j+8|0;h[j>>3]=+k2();if(p){b=2;while(1){if((b|0)==(e|0)){j=n;b=k;break a}q=+k2();h[(c[f+(b<<2)>>2]|0)+(o<<3)>>3]=q;b=b+1|0}}else{j=n;b=k}}else{k=c[i+132>>2]|0;m=b+8|0;h[b>>3]=+h[k>>3];i=j+8|0;h[j>>3]=+h[k+8>>3];b:do if(p){j=2;b=k+16|0;while(1){if((j|0)==(e|0))break b;h[(c[f+(j<<2)>>2]|0)+(o<<3)>>3]=+h[b>>3];j=j+1|0;b=b+8|0}}while(0);j=(l&255)>1?1:n;b=m}while(0);n=j;o=o+1|0;j=i}while(1){if((b|0)>=(e|0))break;Is(d,c[f+(b<<2)>>2]|0);b=b+1|0}return n|0}function ln(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0;d=uH(((O(b+1|0,b)|0)/2|0)<<2)|0;n=wn(b,b,0.0)|0;o=wn(b,b,0.0)|0;a:do if(!(c[a+8>>2]|0)){e=0;while(1){if((e|0)>=(b|0))break a;i=c[a+(e*20|0)>>2]|0;j=a+(e*20|0)+4|0;k=n+(e<<2)|0;f=1;while(1){if((f|0)>=(i|0))break;m=c[(c[j>>2]|0)+(f<<2)>>2]|0;h[(c[n+(m<<2)>>2]|0)+(e<<3)>>3]=-1.0;h[(c[k>>2]|0)+(m<<3)>>3]=-1.0;f=f+1|0}e=e+1|0}}else{e=0;while(1){if((e|0)>=(b|0))break a;i=c[a+(e*20|0)>>2]|0;j=a+(e*20|0)+4|0;k=a+(e*20|0)+8|0;m=n+(e<<2)|0;f=1;while(1){if((f|0)>=(i|0))break;p=c[(c[j>>2]|0)+(f<<2)>>2]|0;l=-1.0/+g[(c[k>>2]|0)+(f<<2)>>2];h[(c[n+(p<<2)>>2]|0)+(e<<3)>>3]=l;h[(c[m>>2]|0)+(p<<3)>>3]=l;f=f+1|0}e=e+1|0}}while(0);b:do if(!(Bq(b,n,o)|0)){D_(d);d=0}else{f=0;j=0;m=b;while(1){if((j|0)>=(b|0))break b;k=o+(j<<2)|0;e=j;i=f;while(1){if((e|0)==(b|0))break;if((j|0)==(e|0))l=0.0;else{p=c[k>>2]|0;l=+h[(c[o+(e<<2)>>2]|0)+(e<<3)>>3]+ +h[p+(j<<3)>>3]+ +h[p+(e<<3)>>3]*-2.0}g[d+(i<<2)>>2]=l;e=e+1|0;i=i+1|0}f=f+m|0;j=j+1|0;m=m+-1|0}}while(0);xn(n);xn(o);return d|0}function mn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0;r=l;l=l+16|0;q=r;if(c[a+8>>2]|0){d=nn(a,b)|0;f=0.0;e=0;p=0;while(1){if((p|0)>=(b|0))break;e=e+p|0;o=c[a+(p*20|0)>>2]|0;k=a+(p*20|0)+4|0;m=(O(p,b)|0)-e|0;n=a+(p*20|0)+8|0;j=1;while(1){if((j|0)>=(o|0))break;i=c[(c[k>>2]|0)+(j<<2)>>2]|0;if((i|0)>=(p|0)){i=d+(m+i<<2)|0;s=+g[(c[n>>2]|0)+(j<<2)>>2];f=f+ +B(+(+g[i>>2]-s));g[i>>2]=s}j=j+1|0}p=p+1|0}if(0){b=c[15686]|0;h[q>>3]=f;g1(b,89903,q)|0}}else d=0;l=r;return d|0}function nn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;h=m;i=uH(((O(b+1|0,b)|0)/2|0)<<2)|0;j=uH(b<<2)|0;zq(h,b);d=0;f=0;k=b;while(1){if((d|0)>=(b|0))break;ir(d,a,b,j);e=d;g=f;while(1){if((e|0)==(b|0))break;c[i+(g<<2)>>2]=c[j+(e<<2)>>2];e=e+1|0;g=g+1|0}d=d+1|0;f=f+k|0;k=k+-1|0}D_(j);Aq(h);l=m;return i|0}function on(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;i=n;j=uH(((O(b+1|0,b)|0)/2|0)<<2)|0;k=uH(b<<2)|0;zq(i,b);d=0;f=0;m=b;while(1){if((d|0)>=(b|0))break;vq(d,a,b,k,i);e=d;h=f;while(1){if((e|0)==(b|0))break;g[j+(h<<2)>>2]=+(c[k+(e<<2)>>2]|0);e=e+1|0;h=h+1|0}d=d+1|0;f=f+m|0;m=m+-1|0}D_(k);Aq(i);l=n;return j|0}function pn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0;r=a+8|0;d=c[r>>2]|0;e=0;f=0;while(1){if((f|0)>=(b|0))break;e=(c[a+(f*20|0)>>2]|0)+e|0;f=f+1|0}f=uH(e<<2)|0;q=uH(b<<2)|0;e=0;while(1){if((e|0)>=(b|0))break;c[q+(e<<2)>>2]=0;e=e+1|0}if(!(c[r>>2]|0)){h=0;while(1){if((h|0)>=(b|0))break;c[a+(h*20|0)+8>>2]=f;_r(a,h,q);i=a+(h*20|0)|0;j=c[i>>2]|0;k=a+(h*20|0)+4|0;l=+(j+-1|0);e=1;while(1){if((e|0)>=(j|0))break;p=c[(c[k>>2]|0)+(e<<2)>>2]|0;s=+((c[a+(p*20|0)>>2]|0)+-1|0)+l;g[f+(e<<2)>>2]=s-+((Zr(a,h,p,q)|0)<<1|0);e=e+1|0}$r(a,h,q);f=f+(c[i>>2]<<2)|0;h=h+1|0}f=on(a,b)|0}else{j=0;while(1){if((j|0)>=(b|0))break;_r(a,j,q);k=a+(j*20|0)|0;m=c[k>>2]|0;n=a+(j*20|0)+4|0;o=m+-2|0;p=a+(j*20|0)+8|0;i=1;while(1){if((i|0)>=(m|0))break;e=c[(c[n>>2]|0)+(i<<2)>>2]|0;h=o+(c[a+(e*20|0)>>2]|0)|0;s=+(h-((Zr(a,j,e,q)|0)<<1)|0);l=+g[(c[p>>2]|0)+(i<<2)>>2];if(l<s)l=+(h-((Zr(a,j,e,q)|0)<<1)|0);g[f+(i<<2)>>2]=l;i=i+1|0}$r(a,j,q);c[p>>2]=f;f=f+(c[k>>2]<<2)|0;j=j+1|0}f=nn(a,b)|0}D_(q);D_(c[r>>2]|0);c[r>>2]=0;a:do if(d|0){e=0;while(1){if((e|0)>=(b|0))break a;c[a+(e*20|0)+8>>2]=d;d=d+(c[a+(e*20|0)>>2]<<2)|0;e=e+1|0}}while(0);return f|0}function qn(a,b,e,f,i,j,k,m,n){a=a|0;b=b|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0.0,w=0,x=0.0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,P=0.0;M=l;l=l+80|0;L=M+56|0;K=M+48|0;A=M+40|0;u=M+32|0;t=M+24|0;s=M+16|0;p=M+8|0;o=M;q=k&4;J=k&3;a:do if((n|0)<0)e=0;else{if(0)EL();k=(m|0)==2;b:do if(k){if(0)E1(91878,24,1,c[15686]|0)|0;e=pn(a,b)|0;w=14}else{switch(m|0){case 1:{e=ln(a,b)|0;if(e|0){I=e;break b}Pw(0,91903,o)|0;Pw(3,91952,p)|0;w=15;break b}case 3:break;default:{w=15;break b}}if(0)E1(92005,21,1,c[15686]|0)|0;e=mn(a,b)|0;w=14}while(0);if((w|0)==14)if(!e)w=15;else I=e;do if((w|0)==15){if(0)E1(92027,26,1,c[15686]|0)|0;if(!(c[a+8>>2]|0)){I=on(a,b)|0;break}else{I=nn(a,b)|0;break}}while(0);if(0){H=c[15686]|0;h[s>>3]=+FL();g1(H,92054,s)|0;E1(92066,25,1,H)|0;EL()}c:do if((b|0)>1&(q|0)!=0)if((rn(a,b,f,j,q,J,k&1)|0)<0){u=0;t=0;e=-1;a=0;s=0;q=0;p=0;o=0;m=0;k=0}else{k=0;while(1){if((k|0)>=(j|0)){y=0;w=35;break c}m=f+(k<<2)|0;r=1.0;e=0;while(1){if((e|0)==(b|0))break;x=+B(+(+h[(c[m>>2]|0)+(e<<3)>>3]));r=x>r?x:r;e=e+1|0}r=1.0/r;e=0;while(1){if((e|0)==(b|0)){e=0;break}H=(c[m>>2]|0)+(e<<3)|0;h[H>>3]=+h[H>>3]*r;e=e+1|0}while(1){if((e|0)==(b|0))break;x=(+k2()+-.5)*1.0e-06;H=(c[m>>2]|0)+(e<<3)|0;h[H>>3]=+h[H>>3]+x;e=e+1|0}Is(b,c[m>>2]|0);k=k+1|0}}else{y=kn(0,b,j,f,i)|0;w=35}while(0);d:do if((w|0)==35){if(0){H=c[15686]|0;h[t>>3]=+FL();g1(H,92092,t)|0}if((b|0)==1|(n|0)==0){e=0;break a}if(0){H=c[15686]|0;h[u>>3]=+FL();g1(H,92054,u)|0;E1(89925,26,1,H)|0;EL()}s=j<<2;H=uH(s)|0;t=b<<2;a=O(t,j)|0;G=uH(a)|0;e=0;while(1){if((e|0)>=(j|0))break;m=G+((O(e,b)|0)<<2)|0;c[H+(e<<2)>>2]=m;o=f+(e<<2)|0;k=0;while(1){if((k|0)>=(b|0))break;g[m+(k<<2)>>2]=+h[(c[o>>2]|0)+(k<<3)>>3];k=k+1|0}e=e+1|0}e:do if(!J){p=b+-1|0;e=0;r=0.0;o=0;while(1){if((o|0)>=(p|0))break e;q=b-o|0;m=e;k=1;while(1){e=m+1|0;if((k|0)>=(q|0))break;m=e;r=+g[I+(e<<2)>>2]+r;k=k+1|0}o=o+1|0}}else r=+(b|0)*.5*+(b+-1|0);while(0);C=(O(b+1|0,b)|0)/2|0;D=(J|0)==2;if(D)ct(C,I);dt(C,I);E=b<<3;m=uH(E)|0;H3(m|0,0,E|0)|0;F=b+-1|0;e=0;o=0;while(1){if((o|0)>=(F|0)){e=b;k=0;o=0;break}p=b-o|0;v=0.0;k=1;while(1){e=e+1|0;if((k|0)>=(p|0))break;x=+g[I+(e<<2)>>2];z=m+(k+o<<3)|0;h[z>>3]=+h[z>>3]-x;v=v+x;k=k+1|0}z=m+(o<<3)|0;h[z>>3]=+h[z>>3]-v;o=o+1|0}while(1){if((k|0)>=(b|0))break;g[I+(o<<2)>>2]=+h[m+(k<<3)>>3];z=e+o|0;e=e+-1|0;k=k+1|0;o=z}z=uH(s)|0;c[z>>2]=uH(a)|0;e=1;while(1){if((e|0)>=(j|0))break;c[z+(e<<2)>>2]=(c[z>>2]|0)+((O(e,b)|0)<<2);e=e+1|0}p=uH(t)|0;o=uH(t)|0;k=uH(C<<2)|0;if(0){w=c[15686]|0;h[A>>3]=+FL();g1(w,92054,A)|0;E1(89952,15,1,w)|0;EL()}w=(y|0)==0;y=c[15686]|0;e=0;q=0;x=1797693134862315708145274.0e284;while(1){if(!(q<<24>>24==0&(e|0)<(n|0)))break;H3(m|0,0,E|0)|0;if(D){et(C,I,k);u=0;a=0}else{u=0;a=0}while(1){if((u|0)>=(F|0)){q=b;s=0;a=0;break}t=b-u+-1|0;at(t,0.0,o);q=0;while(1){if((q|0)>=(j|0))break;A=H+(q<<2)|0;at(t,+g[(c[A>>2]|0)+(u<<2)>>2],p);Xs(t,p,-1.0,(c[A>>2]|0)+(u<<2)+4|0);ct(t,p);Ws(t,p,o,o);q=q+1|0}ft(t,o);q=0;while(1){if((q|0)>=(t|0))break;s=o+(q<<2)|0;v=+g[s>>2];if(v>=3402823466385288598117041.0e14|v<0.0)g[s>>2]=0.0;q=q+1|0}q=a+1|0;a=u+1|0;f:do if(D){v=0.0;s=0;while(1){if((s|0)>=(t|0))break f;A=k+(q<<2)|0;N=+g[A>>2]*+g[o+(s<<2)>>2];g[A>>2]=N;A=m+(a+s<<3)|0;h[A>>3]=+h[A>>3]-N;v=v+N;q=q+1|0;s=s+1|0}}else{v=0.0;s=0;while(1){if((s|0)>=(t|0))break f;N=+g[o+(s<<2)>>2];g[k+(q<<2)>>2]=N;A=m+(a+s<<3)|0;h[A>>3]=+h[A>>3]-N;v=v+N;q=q+1|0;s=s+1|0}}while(0);A=m+(u<<3)|0;h[A>>3]=+h[A>>3]-v;u=a;a=q}while(1){if((s|0)>=(b|0)){q=0;break}g[k+(a<<2)>>2]=+h[m+(s<<3)>>3];A=q+a|0;q=q+-1|0;s=s+1|0;a=A}while(1){if((q|0)>=(j|0)){v=0.0;q=0;break}Us(k,b,c[H+(q<<2)>>2]|0,c[z+(q<<2)>>2]|0);q=q+1|0}while(1){if((q|0)>=(j|0))break;v=+_s(b,c[H+(q<<2)>>2]|0,c[z+(q<<2)>>2]|0)+v;q=q+1|0}v=v*2.0+r;q=0;while(1){if((q|0)>=(j|0))break;A=H+(q<<2)|0;Us(I,b,c[A>>2]|0,p);v=v-+_s(b,c[A>>2]|0,p);q=q+1|0}P=x-v;N=+h[22909];q=(v<N?1:(P>=0.0?P:-P)/x<N)&1;a=0;while(1){if((a|0)>=(j|0))break;t=H+(a<<2)|0;s=c[t>>2]|0;g:do if(w){if((Fq(I,s,c[z+(a<<2)>>2]|0,b,.001,b)|0)<0){u=z;t=I;e=-1;a=G;s=H;q=z;break d}}else{Zs(b,s,p);if((Fq(I,p,c[z+(a<<2)>>2]|0,b,.001,b)|0)<0){u=z;t=I;e=-1;a=G;s=H;q=z;break d}else s=0;while(1){if((s|0)>=(b|0))break g;if((d[(c[(c[i+(s<<2)>>2]|0)+16>>2]|0)+119>>0]|0)<=1)c[(c[t>>2]|0)+(s<<2)>>2]=c[p+(s<<2)>>2];s=s+1|0}}while(0);a=a+1|0}if(((e|0)%5|0|0)==0&0!=0?(h[K>>3]=v,g1(y,90277,K)|0,((e+5|0)%50|0|0)==0):0)n3(10,y)|0;e=e+1|0;x=v}if(!0)q=0;else{N=+sn(H,I,j,b,J);P=+FL();h[L>>3]=N;c[L+8>>2]=e;h[L+16>>3]=P;g1(y,89968,L)|0;q=0}while(1){if((q|0)>=(j|0)){u=z;t=I;a=G;s=H;q=z;break d}a=H+(q<<2)|0;t=f+(q<<2)|0;s=0;while(1){if((s|0)>=(b|0))break;h[(c[t>>2]|0)+(s<<3)>>3]=+g[(c[a>>2]|0)+(s<<2)>>2];s=s+1|0}q=q+1|0}}while(0);D_(a);D_(s);D_(t);if(u|0){D_(c[u>>2]|0);D_(q)}D_(p);D_(o);D_(m);D_(k)}while(0);l=M;return e|0}function rn(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;var m=0,n=0,o=0,p=0.0,q=0,r=0,s=0.0,t=0,u=0.0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,P=0,Q=0,R=0;R=l;l=l+32|0;o=R+24|0;Q=R+8|0;H=R+4|0;N=R;M=(d|0)<50?d:50;P=vH(M<<2)|0;G=d<<3;n=vH(O(G,M)|0)|0;m=0;while(1){if((m|0)>=(M|0))break;c[P+(m<<2)>>2]=n+((O(m,d)|0)<<3);m=m+1|0}E=M<<1;E=(E|0)>50?E:50;E=(E|0)>(d|0)?d:E;c[o>>2]=0;sr(b,d,E,o,k);tr(c[o>>2]|0,d,E);mt(c[o>>2]|0,E,d,P,M);D_(c[c[o>>2]>>2]|0);D_(c[o>>2]|0);E=d<<2;L=vH(E)|0;m=0;while(1){if((m|0)>=(d|0))break;c[L+(m<<2)>>2]=-1;m=m+1|0}zq(Q,d);J=c[b+8>>2]|0;I=(k|0)!=0;if(I)es(b,d);C=vH(E)|0;K=vH(160)|0;n=vH(d*160|0)|0;D=vH(160)|0;m=0;while(1){if((m|0)==40)break;c[D+(m<<2)>>2]=n+((O(m,d)|0)<<2);m=m+1|0}m=(g2()|0)%(d|0)|0;c[L+(m<<2)>>2]=0;c[K>>2]=m;n=c[D>>2]|0;if(I){cr(m,b,d,n);n=0;o=0}else{vq(m,b,d,n,Q);n=0;o=0}while(1){if((o|0)>=(d|0)){r=1;break}F=c[(c[D>>2]|0)+(o<<2)>>2]|0;c[C+(o<<2)>>2]=F;A=(F|0)>(n|0);m=A?o:m;n=A?F:n;o=o+1|0}while(1){if((r|0)==40){m=0;break}c[L+(m<<2)>>2]=r;c[K+(r<<2)>>2]=m;t=D+(r<<2)|0;n=c[t>>2]|0;if(I){cr(m,b,d,n);q=0;n=0}else{vq(m,b,d,n,Q);q=0;n=0}while(1){if((q|0)>=(d|0))break;o=C+(q<<2)|0;F=c[o>>2]|0;k=c[(c[t>>2]|0)+(q<<2)>>2]|0;k=(F|0)<(k|0)?F:k;c[o>>2]=k;if((k|0)<=(n|0)){if((k|0)==(n|0)?((g2()|0)%(q+1|0)|0|0)==0:0){n=c[o>>2]|0;m=q}}else{n=k;m=q}q=q+1|0}r=r+1|0}while(1){if((m|0)>=(d|0))break;c[C+(m<<2)>>2]=-1;m=m+1|0}w=vH(E)|0;F=vH(d<<4)|0;x=d+-1|0;y=x<<2;A=0;o=0;k=0;n=0;z=0;while(1){if((z|0)>=(d|0))break;m=L+(z<<2)|0;a:do if((c[m>>2]|0)>-1){t=F+(z<<4)+4|0;c[t>>2]=vH(y)|0;v=vH(y)|0;c[F+(z<<4)+8>>2]=v;c[F+(z<<4)>>2]=x;a[F+(z<<4)+12>>0]=1;r=D+(c[m>>2]<<2)|0;m=0;while(1){if((m|0)==(z|0)){q=z;break}c[(c[t>>2]|0)+(m<<2)>>2]=m;c[v+(m<<2)>>2]=c[(c[r>>2]|0)+(m<<2)>>2];m=m+1|0}while(1){m=q+1|0;if((q|0)==(x|0)){m=x;break a}c[(c[t>>2]|0)+(q<<2)>>2]=m;c[v+(q<<2)>>2]=c[(c[r>>2]|0)+(m<<2)>>2];q=m}}else{if((n|0)<40){k=vH(E)|0;o=vH(E)|0;n=d;m=1}else m=0;a[F+(z<<4)+12>>0]=m;c[F+(z<<4)+4>>2]=k;c[F+(z<<4)+8>>2]=o;c[F+(z<<4)>>2]=40;m=0;while(1){if((m|0)==40)break;c[k+(m<<2)>>2]=c[K+(m<<2)>>2];c[o+(m<<2)>>2]=c[(c[D+(m<<2)>>2]|0)+(z<<2)>>2];m=m+1|0}o=o+160|0;k=k+160|0;n=n+-40|0;m=40}while(0);A=m+A|0;z=z+1|0}D_(C);D_(w);if(D|0){D_(c[D>>2]|0);D_(D)}D=vH(d*20|0)|0;q=A+d<<2;r=vH(q)|0;v=(j|0)==2;q=vH(q)|0;t=0;while(1){if((t|0)>=(d|0))break;c[D+(t*20|0)+4>>2]=r;c[D+(t*20|0)+8>>2]=q;m=(c[F+(t<<4)>>2]|0)+1|0;w=D+(t*20|0)|0;c[w>>2]=m;o=(c[F+(t<<4)+8>>2]|0)+-4|0;k=F+(t<<4)+4|0;b:do if(v){p=0.0;n=1;while(1){if((n|0)>=(m|0))break b;c[r+(n<<2)>>2]=c[(c[k>>2]|0)+(n+-1<<2)>>2];u=+(c[o+(n<<2)>>2]|0);u=-1.0/(u*u);g[q+(n<<2)>>2]=u;p=p-u;n=n+1|0;m=c[w>>2]|0}}else{p=0.0;n=1;while(1){if((n|0)>=(m|0))break b;c[r+(n<<2)>>2]=c[(c[k>>2]|0)+(n+-1<<2)>>2];u=-1.0/+(c[o+(n<<2)>>2]|0);g[q+(n<<2)>>2]=u;p=p-u;n=n+1|0;m=c[w>>2]|0}}while(0);c[r>>2]=t;g[q>>2]=p;E=c[w>>2]|0;q=q+(E<<2)|0;r=r+(E<<2)|0;t=t+1|0}C=vH(f<<2)|0;c[C>>2]=vH(O(f<<3,M)|0)|0;m=1;while(1){if((m|0)>=(f|0))break;c[C+(m<<2)>>2]=(c[C>>2]|0)+((O(m,M)|0)<<3);m=m+1|0}c:do if(i){m=0;while(1){if((m|0)>=(f|0))break;o=C+(m<<2)|0;n=0;while(1){if((n|0)>=(M|0))break;h[(c[o>>2]|0)+(n<<3)>>3]=0.0;n=n+1|0}m=m+1|0}if((f|0)!=2){m=0;while(1){if((m|0)>=(f|0)){m=0;break c}h[(c[C+(m<<2)>>2]|0)+(m<<3)>>3]=1.0;m=m+1|0}}h[c[C>>2]>>3]=1.0;m=C+4|0;if(!((nt(P,M,d,c[m>>2]|0)|0)<<24>>24)){n=c[m>>2]|0;m=0;while(1){if((m|0)>=(M|0))break;h[n+(m<<3)>>3]=0.0;m=m+1|0}h[n+8>>3]=1.0;m=0}else m=0}else{n=0;while(1){if((n|0)>=(f|0)){m=0;break c}o=C+(n<<2)|0;m=0;while(1){if((m|0)>=(M|0))break;u=+(g2()|0)*4.656612875245797e-10;h[(c[o>>2]|0)+(m<<3)>>3]=u;m=m+1|0}n=n+1|0}}while(0);while(1){if((m|0)>=(f|0))break;Ss(P,d,M,c[C+(m<<2)>>2]|0,c[e+(m<<2)>>2]|0);m=m+1|0}c[H>>2]=0;c[N>>2]=0;Hs(D,P,d,M,H);Fs(P,c[H>>2]|0,M,d,M,N);D_(c[c[H>>2]>>2]|0);D_(c[H>>2]|0);z=vH(G)|0;A=vH(M<<3)|0;m=0;n=0;p=+tn(e,F,f,d,j);d:while(1){if((n|0)<50&m<<24>>24==0)x=0;else break;while(1){if((x|0)>=(f|0))break;y=e+(x<<2)|0;o=0;while(1){if((o|0)>=(d|0))break;q=z+(o<<3)|0;h[q>>3]=0.0;r=(c[F+(o<<4)+8>>2]|0)+-4|0;t=c[D+(o*20|0)+4>>2]|0;v=c[D+(o*20|0)+8>>2]|0;w=D+(o*20|0)|0;s=0.0;k=1;while(1){if((k|0)>=(c[w>>2]|0))break;m=c[t+(k<<2)>>2]|0;u=+gs(e,f,o,m);if(u>1.0e-30){u=-(+g[v+(k<<2)>>2]*+(c[r+(k<<2)>>2]|0))/u;h[q>>3]=u*+h[(c[y>>2]|0)+(m<<3)>>3]+ +h[q>>3];s=s-u}k=k+1|0}h[q>>3]=+h[q>>3]+ +h[(c[y>>2]|0)+(o<<3)>>3]*s;o=o+1|0}Es(P,M,d,z,A);m=C+(x<<2)|0;if(Eq(c[N>>2]|0,c[m>>2]|0,A,M,.001,M,0)|0){n=-1;break d}Ss(P,d,M,c[m>>2]|0,c[y>>2]|0);x=x+1|0}if(!(n&1)){u=+tn(e,F,f,d,j);p=+B(+(u-p))/(u+1.0e-10);m=p<+h[22909]&1;p=u}else m=0;n=n+1|0}D_(A);D_(z);if(I){fs(b,d,J);m=0}else m=0;while(1){if((m|0)>=(d|0))break;if(a[F+(m<<4)+12>>0]|0){D_(c[F+(m<<4)+4>>2]|0);D_(c[F+(m<<4)+8>>2]|0)}m=m+1|0}D_(F);D_(c[D+4>>2]|0);D_(c[D+8>>2]|0);D_(D);D_(L);D_(K);D_(c[C>>2]|0);D_(C);m=c[N>>2]|0;if(m|0){D_(c[m>>2]|0);D_(c[N>>2]|0)}D_(c[P>>2]|0);D_(P);Aq(Q);l=R;return n|0}function sn(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0,q=0,r=0;q=e+-1|0;o=(f|0)==2;h=0.0;f=0;m=0;while(1){if((m|0)>=(q|0))break;p=e-m|0;n=1;while(1){f=f+1|0;if((n|0)>=(p|0))break;k=n+m|0;i=0.0;j=0;while(1){if((j|0)>=(d|0))break;r=c[a+(j<<2)>>2]|0;l=+g[r+(m<<2)>>2]-+g[r+(k<<2)>>2];i=i+l*l;j=j+1|0}i=+C(+i);l=+g[b+(f<<2)>>2];if(o){i=1.0/+C(+l)-i;i=i*i}else{i=1.0/l-i;i=i*i}n=n+1|0;h=i*l+h}m=m+1|0}return +h}function tn(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,i=0.0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0;a:do if((f|0)==2){g=0.0;l=0;while(1){if((l|0)>=(e|0))break a;n=c[b+(l<<4)>>2]|0;o=b+(l<<4)+4|0;m=b+(l<<4)+8|0;k=0;while(1){if((k|0)>=(n|0))break;j=c[(c[o>>2]|0)+(k<<2)>>2]|0;if((j|0)>(l|0)){i=0.0;f=0;while(1){if((f|0)>=(d|0))break;q=c[a+(f<<2)>>2]|0;p=+h[q+(l<<3)>>3]-+h[q+(j<<3)>>3];i=p*p+i;f=f+1|0}i=+C(+i);p=+(c[(c[m>>2]|0)+(k<<2)>>2]|0);i=p-i;g=i*i/(p*p)+g}k=k+1|0}l=l+1|0}}else{l=0;g=0.0;while(1){if((l|0)>=(e|0))break a;m=c[b+(l<<4)>>2]|0;n=b+(l<<4)+4|0;o=b+(l<<4)+8|0;k=0;while(1){if((k|0)>=(m|0))break;j=c[(c[n>>2]|0)+(k<<2)>>2]|0;if((j|0)>(l|0)){i=0.0;f=0;while(1){if((f|0)>=(d|0))break;q=c[a+(f<<2)>>2]|0;p=+h[q+(l<<3)>>3]-+h[q+(j<<3)>>3];i=p*p+i;f=f+1|0}i=+C(+i);p=+(c[(c[o>>2]|0)+(k<<2)>>2]|0);i=p-i;g=i*i/p+g}k=k+1|0}l=l+1|0}}while(0);return +g}function un(a){a=+a;return +(+C(+a)*a)}function vn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,i=0.0;g=c[46366]|0;e=0.0;f=0;while(1){if((f|0)>=(g|0))break;i=+h[a+(f<<3)>>3]-+h[b+(f<<3)>>3];h[d+(f<<3)>>3]=i;e=i*i+e;f=f+1|0}return +(+C(+e))}function wn(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0,i=0;i=uH(a<<2)|0;f=0;g=uH(O(a<<3,b)|0)|0;while(1){if((f|0)>=(a|0))break;c[i+(f<<2)>>2]=g;e=0;while(1){if((e|0)>=(b|0))break;h[g+(e<<3)>>3]=d;e=e+1|0}f=f+1|0;g=g+(b<<3)|0}return i|0}function xn(a){a=a|0;if(a|0){D_(c[a>>2]|0);D_(a)}return}function yn(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+16|0;n=ay(b)|0;m=by(b)|0;k=nx(b,2,90566,0)|0;a:do if(!d){h[22909]=+(n|0)*.0001;aH(b,105860,183272);g=xx(c[b+60>>2]|0,90006)|0;if(!g)e=.99;else e=+b2(g);h[22911]=e;g=uH((n<<2)+4|0)|0;j=b+16|0;c[(c[j>>2]|0)+152>>2]=g;g=0;e=0.0;i=Sy(b)|0;while(1){if(!i)break a;c[(c[(c[j>>2]|0)+152>>2]|0)+(g<<2)>>2]=i;p=c[i+16>>2]|0;c[p+120>>2]=g;c[p+124>>2]=-1;f=+Bn(b,i,k)+e;g=g+1|0;e=f;i=Ty(b,i)|0}}else{h[22909]=.0001;aH(b,105860,183272);g=0;e=0.0;i=Sy(b)|0;while(1){if(!i)break a;c[(c[i+16>>2]|0)+120>>2]=g;f=+Bn(b,i,k)+e;g=g+1|0;e=f;i=Ty(b,i)|0}}while(0);g=xx(b,90014)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0){e=+h[22909];f=+b2(g);if(!(e>f))e=f}else e=e/+(((m|0)>1?m:1)|0)*+C(+(+(n|0)))+1.0;h[22910]=e;if(!(c[46363]|d)){d=wn(n,n,e)|0;p=b+16|0;c[(c[p>>2]|0)+160>>2]=d;d=wn(n,n,1.0)|0;c[(c[p>>2]|0)+164>>2]=d;d=wn(n,c[46366]|0,1.0)|0;c[(c[p>>2]|0)+168>>2]=d;d=Cn(n,n,c[46366]|0)|0;c[(c[p>>2]|0)+172>>2]=d}l=o;return n|0}function zn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=0;e=0;j=Jx(a,b)|0;a:while(1){if(!j)break;h=c[j>>2]&3;g=c[((h|0)==2?j:j+-48|0)+40>>2]|0;h=c[((h|0)==3?j:j+48|0)+40>>2]|0;do if((g|0)!=(h|0)){i=(h|0)==(b|0);if((e|0)!=1){f=i?g:h;c[d>>2]=f;e=e+1|0;break}if(!((g|0)==(f|0)&i)?!((g|0)==(b|0)&(h|0)==(f|0)):0){e=2;break a}else e=1}while(0);j=Kx(a,j,b)|0}return e|0}function An(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;f=h;g=a+60|0;a:while(1){b:while(1){if(!b)break a;switch(zn(a,b,f)|0){case 0:{e=5;break b}case 1:{e=8;break b}default:b=0}}if((e|0)==5){if((d|0)==(b|0))d=Ty(a,d)|0;dz(c[g>>2]|0,b)|0;b=0;continue}else if((e|0)==8){if((d|0)==(b|0))d=Ty(a,d)|0;dz(c[g>>2]|0,b)|0;b=c[f>>2]|0;continue}}l=h;return d|0}function Bn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,g=0,i=0,j=0,k=0;k=l;l=l+32|0;i=k+8|0;g=k;b=Ex(a,b)|0;e=0.0;while(1){if(!b)break;switch(Dn(b,d,g)|0){case 0:{f=+h[g>>3];break}case 2:{c[i>>2]=ry(a)|0;h[i+8>>3]=1.0;Pw(3,90026,i)|0;j=6;break}default:j=6}if((j|0)==6){j=0;h[g>>3]=1.0;f=1.0}h[(c[b+16>>2]|0)+136>>3]=f;b=Gx(a,b)|0;e=f+e}l=k;return +e}function Cn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,l=0;j=uH((a<<2)+4|0)|0;k=(b<<2)+4|0;l=d<<3;g=0;while(1){if((g|0)>=(a|0))break;i=j+(g<<2)|0;c[i>>2]=uH(k)|0;f=0;while(1){if((f|0)>=(b|0))break;e=uH(l)|0;c[(c[i>>2]|0)+(f<<2)>>2]=e;e=0;while(1){if((e|0)>=(d|0))break;h[(c[(c[i>>2]|0)+(f<<2)>>2]|0)+(e<<3)>>3]=0.0;e=e+1|0}f=f+1|0}c[(c[i>>2]|0)+(f<<2)>>2]=0;g=g+1|0}c[j+(g<<2)>>2]=0;return j|0}function Dn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k+8|0;i=k;do if((d|0)!=0?(f=yx(b,d)|0,(a[f>>0]|0)!=0):0){c[i>>2]=e;if(((N1(f,98183,i)|0)>=1?(g=+h[e>>3],!(g<0.0)):0)?g!=0.0|(c[46363]|0)!=0:0){b=0;break}c[j>>2]=f;Pw(0,90053,j)|0;b=2}else b=1;while(0);l=k;return b|0}function En(a){a=a|0;return yn(a,0)|0}function Fn(a){a=a|0;a=a+16|0;D_(c[(c[a>>2]|0)+152>>2]|0);if(!(c[46363]|0)){xn(c[(c[a>>2]|0)+160>>2]|0);xn(c[(c[a>>2]|0)+164>>2]|0);xn(c[(c[a>>2]|0)+168>>2]|0);Gn(c[(c[a>>2]|0)+172>>2]|0);c[(c[a>>2]|0)+172>>2]=0}return}function Gn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if(a|0){f=0;while(1){g=a+(f<<2)|0;b=c[g>>2]|0;if(!b)break;else e=0;while(1){d=c[b+(e<<2)>>2]|0;if(!d)break;D_(d);e=e+1|0;b=c[g>>2]|0}D_(b);f=f+1|0}D_(a)}return}function Hn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0;e=+(b|0);b=a+16|0;while(1){if((d|0)>=(c[46366]|0))break;f=+k2()*e;h[(c[(c[b>>2]|0)+132>>2]|0)+(d<<3)>>3]=f;d=d+1|0}return}function In(a,b){a=a|0;b=b|0;Hn(a,b,2);return}function Jn(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0;e=+(b|0);f=+k2()*e;d=a+16|0;h[c[(c[d>>2]|0)+132>>2]>>3]=f;e=+k2()*e;h[(c[(c[d>>2]|0)+132>>2]|0)+8>>3]=e;if((c[46366]|0)>2)In(a,b);return}function Kn(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(0)E1(90071,26,1,c[15686]|0)|0;d=pm(b,d,2)|0;a:do if((d|0)!=1){if(!(c[46027]|d)){Pw(0,90098,e)|0;c[46027]=1}e=b+16|0;d=0;while(1){b=c[(c[(c[e>>2]|0)+152>>2]|0)+(d<<2)>>2]|0;if(!b)break a;if(!(a[(c[b+16>>2]|0)+119>>0]|0))Jn(b,1);d=d+1|0}}while(0);l=f;return}function Ln(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+96|0;p=q+80|0;n=q;if(0){E1(90147,25,1,c[15686]|0)|0;EL()}o=a+16|0;f=c[o>>2]|0;k=c[f+164>>2]|0;f=c[f+160>>2]|0;m=0;while(1){if((m|0)>=(b|0))break;i=f+(m<<2)|0;j=k+(m<<2)|0;e=0;while(1){if((e|0)==(m|0))break;g=+h[(c[i>>2]|0)+(e<<3)>>3];g=1.0/(g*g);d=c[(c[o>>2]|0)+152>>2]|0;d=Rx(a,c[d+(m<<2)>>2]|0,c[d+(e<<2)>>2]|0,0,0)|0;if(d)g=+h[(c[d+16>>2]|0)+128>>3]*g;h[(c[k+(e<<2)>>2]|0)+(m<<3)>>3]=g;h[(c[j>>2]|0)+(e<<3)>>3]=g;e=e+1|0}m=m+1|0}a=c[46366]|0;e=0;while(1){if((e|0)<(b|0))d=0;else break;while(1){if((d|0)>=(a|0))break;h[(c[(c[(c[o>>2]|0)+168>>2]|0)+(e<<2)>>2]|0)+(d<<3)>>3]=0.0;d=d+1|0}e=e+1|0}i=0;while(1){d=c[(c[(c[o>>2]|0)+152>>2]|0)+(i<<2)>>2]|0;if(!d)break;a=d+16|0;d=0;while(1){if((d|0)>=(b|0))break;a:do if((i|0)!=(d|0)){g=+vn(c[(c[a>>2]|0)+132>>2]|0,c[(c[(c[(c[(c[o>>2]|0)+152>>2]|0)+(d<<2)>>2]|0)+16>>2]|0)+132>>2]|0,n);f=c[46366]|0;g=1.0/g;e=0;while(1){if((e|0)>=(f|0))break a;m=c[o>>2]|0;r=+h[n+(e<<3)>>3];r=(r-+h[(c[(c[m+160>>2]|0)+(i<<2)>>2]|0)+(d<<3)>>3]*r*g)*+h[(c[(c[m+164>>2]|0)+(i<<2)>>2]|0)+(d<<3)>>3];h[(c[(c[(c[m+172>>2]|0)+(i<<2)>>2]|0)+(d<<2)>>2]|0)+(e<<3)>>3]=r;m=(c[(c[m+168>>2]|0)+(i<<2)>>2]|0)+(e<<3)|0;h[m>>3]=+h[m>>3]+r;e=e+1|0}}while(0);d=d+1|0}i=i+1|0}if(0){o=c[15686]|0;h[p>>3]=+FL();g1(o,90173,p)|0}l=q;return}function Mn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0.0,k=0;i=l;l=l+32|0;g=i+24|0;f=i+8|0;e=i;j=+h[22909];h[22831]=j*j;while(1){d=Nn(a,b)|0;if(!d)break;On(a,b,d)}if(!0)b=a+16|0;else{d=c[15686]|0;h[e>>3]=+Pn(a,b);g1(d,90183,e)|0;b=a+16|0;k=c[(c[b>>2]|0)+156>>2]|0;e=(k|0)==(c[46365]|0)?90197:191979;j=+FL();c[f>>2]=k;c[f+4>>2]=e;h[f+8>>3]=j;g1(d,90199,f)|0}b=c[(c[b>>2]|0)+156>>2]|0;if((b|0)==(c[46365]|0)){k=ry(a)|0;c[g>>2]=b;c[g+4>>2]=k;Pw(0,90226,g)|0}l=i;return}function Nn(a,b){a=a|0;b=b|0;var e=0.0,f=0,g=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0;r=l;l=l+16|0;q=r;o=(c[46029]|0)+1|0;c[46029]=o;a=c[a+16>>2]|0;if((c[a+156>>2]|0)<(c[46365]|0)){m=c[46366]|0;n=a+152|0;k=a+168|0;a=0;e=0.0;j=0;while(1){if((j|0)>=(b|0))break;g=c[(c[n>>2]|0)+(j<<2)>>2]|0;if((d[(c[g+16>>2]|0)+119>>0]|0)<=1){i=0.0;f=0;while(1){if((f|0)>=(m|0))break;s=+h[(c[(c[k>>2]|0)+(j<<2)>>2]|0)+(f<<3)>>3];i=s*s+i;f=f+1|0}if(i>e){a=g;e=i}}j=j+1|0}if(!(e<+h[22831])){if(0!=0&((o|0)%100|0|0)==0?(p=c[15686]|0,h[q>>3]=+C(+e),g1(p,90277,q)|0,((c[46029]|0)%1e3|0|0)==0):0)n3(10,p)|0}else a=0}else a=0;l=r;return a|0}function On(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;n=o;k=d+16|0;m=c[(c[k>>2]|0)+120>>2]|0;f=c[46028]|0;if(!f){g=c[46366]|0;g=vH(O(g<<3,g)|0)|0}else{g=c[46366]|0;g=xH(f,O(g<<3,g)|0)|0}c[46028]=g;Qn(a,b,m,g);i=c[46366]|0;j=a+16|0;f=0;while(1){if((f|0)>=(i|0))break;h[182656+(f<<3)>>3]=-+h[(c[(c[(c[j>>2]|0)+168>>2]|0)+(m<<2)>>2]|0)+(f<<3)>>3];f=f+1|0}Xt(g,182736,182656,i);f=0;while(1){if((f|0)>=(c[46366]|0))break;e=+h[22911];e=(1.0-e)*2.0*+k2()+e;i=182736+(f<<3)|0;e=e*+h[i>>3];h[i>>3]=e;i=(c[(c[k>>2]|0)+132>>2]|0)+(f<<3)|0;h[i>>3]=+h[i>>3]+e;f=f+1|0}k=(c[j>>2]|0)+156|0;c[k>>2]=(c[k>>2]|0)+1;Rn(a,b,m);if(cM()|0){g=c[46366]|0;e=0.0;f=0;while(1){if((f|0)>=(g|0))break;e=+B(+(+h[182736+(f<<3)>>3]))+e;f=f+1|0}e=+C(+e);m=c[15686]|0;c[n>>2]=ry(d)|0;h[n+8>>3]=e;g1(m,90268,n)|0}l=o;return}function Pn(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=b+-1|0;n=a+16|0;o=c[46366]|0;g=0;d=0.0;a:while(1){if((g|0)>=(q|0))break;m=c[n>>2]|0;p=c[m+152>>2]|0;j=g+1|0;k=(c[p+(g<<2)>>2]|0)+16|0;l=m+164|0;m=m+160|0;i=j;while(1){if((i|0)>=(b|0)){g=j;continue a}f=(c[p+(i<<2)>>2]|0)+16|0;a=0;e=0.0;while(1){if((a|0)>=(o|0))break;r=+h[(c[(c[k>>2]|0)+132>>2]|0)+(a<<3)>>3]-+h[(c[(c[f>>2]|0)+132>>2]|0)+(a<<3)>>3];a=a+1|0;e=r*r+e}r=+h[(c[(c[m>>2]|0)+(g<<2)>>2]|0)+(i<<3)>>3];r=((+C(+e)*-2.0+r)*r+e)*+h[(c[(c[l>>2]|0)+(g<<2)>>2]|0)+(i<<3)>>3]+d;i=i+1|0;d=r}}return +d}function Qn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+80|0;w=x;v=c[a+16>>2]|0;k=c[v+164>>2]|0;m=c[v+160>>2]|0;v=c[v+152>>2]|0;j=c[v+(d<<2)>>2]|0;g=c[46366]|0;a=0;while(1){if((a|0)>=(g|0))break;i=O(g,a)|0;f=0;while(1){if((f|0)==(g|0))break;h[e+(i+f<<3)>>3]=0.0;f=f+1|0}a=a+1|0}u=c[46366]|0;t=j+16|0;s=k+(d<<2)|0;k=m+(d<<2)|0;j=0;while(1){if((j|0)>=(b|0))break;a:do if((j|0)!=(d|0)){f=(c[v+(j<<2)>>2]|0)+16|0;r=0.0;a=0;while(1){if((a|0)>=(u|0))break;q=+h[(c[(c[t>>2]|0)+132>>2]|0)+(a<<3)>>3]-+h[(c[(c[f>>2]|0)+132>>2]|0)+(a<<3)>>3];h[w+(a<<3)>>3]=q;r=q*q+r;a=a+1|0}n=1.0/+un(r);i=0;while(1){if((i|0)>=(u|0))break a;f=(c[s>>2]|0)+(j<<3)|0;g=(c[k>>2]|0)+(j<<3)|0;o=+h[w+(i<<3)>>3];a=0;while(1){p=+h[f>>3];q=+h[g>>3];if((a|0)==(i|0))break;m=e+((O(u,a)|0)+i<<3)|0;h[m>>3]=+h[m>>3]+p*n*q*o*+h[w+(a<<3)>>3];a=a+1|0}m=e+((O(u,i)|0)+i<<3)|0;h[m>>3]=(1.0-q*n*(r-o*o))*p+ +h[m>>3];i=i+1|0}}while(0);j=j+1|0}f=c[46366]|0;i=1;while(1){if((i|0)>=(f|0))break;g=O(f,i)|0;a=0;while(1){if((a|0)==(i|0))break;h[e+(g+a<<3)>>3]=+h[e+((O(f,a)|0)+i<<3)>>3];a=a+1|0}i=i+1|0}l=x;return}function Rn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0,q=0,r=0,s=0;m=l;l=l+80|0;k=m;j=a+16|0;f=c[j>>2]|0;g=c[(c[f+152>>2]|0)+(d<<2)>>2]|0;e=c[46366]|0;f=f+168|0;a=0;while(1){if((a|0)>=(e|0))break;h[(c[(c[f>>2]|0)+(d<<2)>>2]|0)+(a<<3)>>3]=0.0;a=a+1|0}f=g+16|0;a=0;while(1){if((a|0)>=(b|0))break;a:do if((a|0)!=(d|0)){i=+vn(c[(c[f>>2]|0)+132>>2]|0,c[(c[(c[(c[(c[j>>2]|0)+152>>2]|0)+(a<<2)>>2]|0)+16>>2]|0)+132>>2]|0,k);g=c[46366]|0;i=1.0/i;e=0;while(1){if((e|0)>=(g|0))break a;n=c[j>>2]|0;q=c[n+172>>2]|0;r=(c[(c[q+(d<<2)>>2]|0)+(a<<2)>>2]|0)+(e<<3)|0;o=+h[k+(e<<3)>>3];o=(o-+h[(c[(c[n+160>>2]|0)+(d<<2)>>2]|0)+(a<<3)>>3]*o*i)*+h[(c[(c[n+164>>2]|0)+(d<<2)>>2]|0)+(a<<3)>>3];h[r>>3]=o;n=c[n+168>>2]|0;s=(c[n+(d<<2)>>2]|0)+(e<<3)|0;h[s>>3]=+h[s>>3]+o;q=(c[(c[q+(a<<2)>>2]|0)+(d<<2)>>2]|0)+(e<<3)|0;o=+h[q>>3];p=-+h[r>>3];h[q>>3]=p;n=(c[n+(a<<2)>>2]|0)+(e<<3)|0;h[n>>3]=p-o+ +h[n>>3];e=e+1|0}}while(0);a=a+1|0}l=m;return}function Sn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0;d=a+16|0;g=c[46030]|0;b=c[(c[d>>2]|0)+124>>2]|0;while(1){if((b|0)<=0)break;i=(b+-1|0)/2|0;j=g+(i<<2)|0;e=c[j>>2]|0;f=e+16|0;if(+h[(c[f>>2]|0)+136>>3]<=+h[(c[d>>2]|0)+136>>3])break;c[j>>2]=a;c[(c[d>>2]|0)+124>>2]=i;c[g+(b<<2)>>2]=e;c[(c[f>>2]|0)+124>>2]=b;b=i}return}function Tn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0;i=a+16|0;j=c[46031]|0;k=c[46030]|0;g=c[(c[i>>2]|0)+124>>2]|0;while(1){e=g<<1|1;if((e|0)>=(j|0))break;d=e+1|0;if((d|0)<(j|0)){f=c[k+(d<<2)>>2]|0;b=c[k+(e<<2)>>2]|0;if(+h[(c[f+16>>2]|0)+136>>3]<+h[(c[b+16>>2]|0)+136>>3]){e=d;b=f}else l=6}else{b=c[k+(e<<2)>>2]|0;l=6}if((l|0)==6)l=0;d=b+16|0;if(+h[(c[i>>2]|0)+136>>3]<=+h[(c[d>>2]|0)+136>>3])break;c[k+(e<<2)>>2]=a;c[(c[i>>2]|0)+124>>2]=e;c[k+(g<<2)>>2]=b;c[(c[d>>2]|0)+124>>2]=g;g=e}return}function Un(a){a=a|0;var b=0,d=0;b=(c[a+16>>2]|0)+124|0;if((c[b>>2]|0)>=0)qa(90283,90303,643,90311);d=c[46031]|0;c[46031]=d+1;c[b>>2]=d;c[(c[46030]|0)+(d<<2)>>2]=a;if((d|0)>0)Sn(a);return}function Vn(){var a=0,b=0,d=0,e=0;b=c[46031]|0;if(!b)a=0;else{e=c[46030]|0;a=c[e>>2]|0;d=b+-1|0;c[46031]=d;d=c[e+(d<<2)>>2]|0;c[e>>2]=d;c[(c[d+16>>2]|0)+124>>2]=0;if((b|0)>2)Tn(d);c[(c[a+16>>2]|0)+124>>2]=-1}return a|0}function Wn(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;c[46030]=uH((b<<2)+4|0)|0;if(0){E1(90325,28,1,c[15686]|0)|0;EL()}b=Sy(a)|0;while(1){if(!b)break;Xn(a,b);b=Ty(a,b)|0}if(0){a=c[15686]|0;h[d>>3]=+FL();g1(a,90173,d)|0}D_(c[46030]|0);l=e;return}function Xn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0,i=0,j=0,k=0;e=c[(c[a+16>>2]|0)+152>>2]|0;f=+h[22910];d=0;while(1){g=c[e+(d<<2)>>2]|0;if(!g)break;h[(c[g+16>>2]|0)+136>>3]=f;d=d+1|0}c[46032]=b;k=c[b+16>>2]|0;h[k+136>>3]=0.0;c[k+128>>2]=0;Un(b);a:while(1){k=Vn()|0;if(!k)break;d=c[46032]|0;j=k+16|0;if((k|0)!=(d|0))Yn(a,d,k,+h[(c[j>>2]|0)+136>>3]);i=Jx(a,k)|0;while(1){if(!i)continue a;d=c[i>>2]&3;b=c[((d|0)==3?i:i+48|0)+40>>2]|0;if((b|0)==(k|0))b=c[((d|0)==2?i:i+-48|0)+40>>2]|0;d=c[j>>2]|0;f=+h[(c[i+16>>2]|0)+136>>3]+ +h[d+136>>3];e=c[b+16>>2]|0;g=e+136|0;do if(+h[g>>3]>f){h[g>>3]=f;if((c[e+124>>2]|0)>-1){Sn(b);break}else{c[e+128>>2]=(c[d+128>>2]|0)+1;Un(b);break}}while(0);i=Kx(a,i,k)|0}}return}function Yn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;b=c[(c[b+16>>2]|0)+120>>2]|0;d=c[(c[d+16>>2]|0)+120>>2]|0;a=c[(c[a+16>>2]|0)+160>>2]|0;h[(c[a+(d<<2)>>2]|0)+(b<<3)>>3]=e;h[(c[a+(b<<2)>>2]|0)+(d<<3)>>3]=e;return}function Zn(a){a=a|0;$M(a,2);b[(c[a+16>>2]|0)+176>>1]=2;c[46366]=2;_n(a);return}function _n(a){a=a|0;var b=0,d=0,e=0,f=0;b=ay(a)|0;e=uH(b*56|0)|0;b=uH((b<<2)+4|0)|0;f=a+16|0;c[(c[f>>2]|0)+152>>2]=b;b=Sy(a)|0;d=0;while(1){if(!b)break;$l(b);c[(c[b+16>>2]|0)+112>>2]=e+(d*56|0);c[(c[(c[f>>2]|0)+152>>2]|0)+(d<<2)>>2]=b;b=Ty(a,b)|0;d=d+1|0}d=Sy(a)|0;while(1){if(!d)break;b=Ex(a,d)|0;while(1){if(!b)break;$n(b);b=Gx(a,b)|0}d=Ty(a,d)|0}return}function $n(a){a=a|0;var b=0.0;Az(a,134378,176,1)|0;eM(a)|0;b=+LL(a,c[46404]|0,1.0,0.0);h[(c[a+16>>2]|0)+128>>3]=b;return}function ao(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;m=u+32|0;i=u+24|0;g=u+16|0;j=u;t=u+72|0;p=u+40|0;if(ay(b)|0){Zn(b);f=xx(b,93136)|0;if(f)if(a[f>>0]|0){d=az(b,f,0)|0;if(!d){c[g>>2]=f;Pw(0,90354,g)|0;Pw(3,90394,i)|0;d=0;s=1}else s=0}else{d=0;s=1}else{d=0;s=0}n=nx(b,1,93136,0)|0;o=(n|0)!=0;f=xx(b,137660)|0;if((f|0?a[f>>0]|0:0)?(k=j+8|0,c[m>>2]=j,c[m+4>>2]=k,(N1(f,102477,m)|0)==1):0)h[k>>3]=+h[j>>3];if(ay(b)|0){m=oD(b,t,0)|0;if((c[t>>2]|0)==1){g=(d|0)!=0;do if(g)e=d;else{if(o?(e=bo(b,n)|0,e|0):0)break;e=0}while(0);f=Zt(b,e)|0;if(!((e|0)!=0|o^1))rx(f,n,139381)|0;r=(Sy(b)|0)+16|0;D_(c[(c[r>>2]|0)+112>>2]|0);c[(c[r>>2]|0)+112>>2]=0;tq(b)|0;hn(b);d=(s|0)==0|g?d:f}else{XD(b,2,8,p)|0;c[p+12>>2]=0;k=(s|0)==0;j=0;while(1){if((j|0)>=(c[t>>2]|0))break;g=c[m+(j<<2)>>2]|0;e=(d|0)!=0;if(e?(oz(g,d)|0)!=0:0)f=d;else r=23;do if((r|0)==23){r=0;if(o?(q=bo(g,n)|0,q|0):0){f=q;break}f=0}while(0);vD(g)|0;i=Zt(g,f)|0;d=k|e?d:i;if(o?(f|0)==0|(f|0)==(d|0):0)rx(i,n,139381)|0;tq(g)|0;j=j+1|0}r=(Sy(b)|0)+16|0;D_(c[(c[r>>2]|0)+112>>2]|0);c[(c[r>>2]|0)+112>>2]=0;WD(c[t>>2]|0,m,b,p)|0;hn(b)}e=0;while(1){if((e|0)>=(c[t>>2]|0))break;dz(b,c[m+(e<<2)>>2]|0)|0;e=e+1|0}D_(m)}if(s|0)zx(b,93136,ry(d)|0)|0;eJ(b)}l=u;return}function bo(a,b){a=a|0;b=b|0;var c=0;c=Sy(a)|0;while(1){if(!c){c=0;break}if((QL(yx(c,b)|0)|0)<<24>>24)break;c=Ty(a,c)|0}return c|0}function co(a){a=a|0;var b=0,c=0;b=Sy(a)|0;if(b|0){while(1){if(!b)break;c=Ex(a,b)|0;while(1){if(!c)break;JM(c);c=Gx(a,c)|0}HM(b);b=Ty(a,b)|0}eo(a)}return}function eo(a){a=a|0;D_(c[(c[a+16>>2]|0)+152>>2]|0);if((fz(a)|0)!=(a|0))Gz(a,0,134401);return}function fo(a){a=a|0;go(a);if(!((ay(a)|0)==0?!(c[(c[a+16>>2]|0)+180>>2]|0):0)){nu(a);eJ(a)}return}function go(a){a=a|0;c[46377]=nx(a,1,105204,105210)|0;$M(a,2);b[(c[a+16>>2]|0)+176>>1]=2;c[46366]=2;ho(a,0);io(a);return}function ho(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(b|0)==0;if(h){lo(g);b=g}d=wA(a)|0;while(1){if(!d)break;if(!(z$(ry(d)|0,104980,7)|0)){Az(d,134401,280,1)|0;mo(b,d);ho(d,0)}else ho(d,b);d=xA(d)|0}if(h?(e=c[g+8>>2]|0,f=a+16|0,c[(c[f>>2]|0)+180>>2]=e,e|0):0){h=xH(c[g>>2]|0,(e<<2)+4|0)|0;c[(c[f>>2]|0)+184>>2]=h}l=i;return}function io(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=uH((ay(a)|0)<<2)|0;b=uH(((ay(a)|0)<<2)+4|0)|0;g=a+16|0;c[(c[g>>2]|0)+152>>2]=b;b=Sy(a)|0;d=0;while(1){if(!b)break;Az(b,134365,304,1)|0;c[(c[b+16>>2]|0)+112>>2]=f+(d<<2);c[(c[(c[g>>2]|0)+152>>2]|0)+(d<<2)>>2]=b;jo(b);e=Ex(a,b)|0;while(1){if(!e)break;ko(e);e=Gx(a,e)|0}b=Ty(a,b)|0;d=d+1|0}return}function jo(a){a=a|0;zx(a,105204,105210)|0;return}function ko(a){a=a|0;Az(a,134378,304,1)|0;return}function lo(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function mo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=a+8|0;d=(c[g>>2]|0)+1|0;c[g>>2]=d;e=a+4|0;h=c[e>>2]|0;f=h+10|0;if((d|0)<(h|0))a=c[a>>2]|0;else{c[e>>2]=f;d=xH(c[a>>2]|0,f<<2)|0;c[a>>2]=d;a=d;d=c[g>>2]|0}c[a+(d<<2)>>2]=b;return}function no(a){a=a|0;var b=0,d=0;b=Sy(a)|0;if(b|0){D_(c[(c[b+16>>2]|0)+112>>2]|0);while(1){if(!b)break;d=Ex(a,b)|0;while(1){if(!d)break;JM(d);d=Gx(a,d)|0}HM(b);b=Ty(a,b)|0}oo(a)}return}function oo(a){a=a|0;D_(c[(c[a+16>>2]|0)+152>>2]|0);if((fz(a)|0)!=(a|0))Gz(a,0,134401);return}function po(a){a=a|0;var d=0,e=0,f=0;qo(a);ro(a,0);so(a,0);to(a,0);d=c[a+16>>2]|0;if(!(c[(c[d+8>>2]|0)+84>>2]|0)){d=b[d+136>>1]&14;if(d<<16>>16)Ym(a,d&65535)|0}else{d=Sy(a)|0;while(1){if(!d)break;f=c[d+16>>2]|0;e=c[f+132>>2]|0;h[e>>3]=+h[f+16>>3]*.013888888888888888;h[e+8>>3]=+h[f+24>>3]*.013888888888888888;d=Ty(a,d)|0}$m(a,1)}eJ(a);return}function qo(a){a=a|0;var d=0,e=0;$M(a,2);b[(c[a+16>>2]|0)+176>>1]=2;c[46366]=2;d=Sy(a)|0;while(1){if(!d)break;$l(d);d=Ty(a,d)|0}e=Sy(a)|0;while(1){if(!e)break;d=Ex(a,e)|0;while(1){if(!d)break;Az(d,134378,176,1)|0;eM(d)|0;d=Gx(a,d)|0}e=Ty(a,e)|0}return}function ro(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(b|0)==0;if(h){yo(g);b=g}d=wA(a)|0;while(1){if(!d)break;if(!(z$(ry(d)|0,104980,7)|0)){Az(d,134401,280,1)|0;fH(d);zo(b,d);ro(d,0)}else ro(d,b);d=xA(d)|0}if(h?(e=c[g+8>>2]|0,f=a+16|0,c[(c[f>>2]|0)+180>>2]=e,e|0):0){h=xH(c[g>>2]|0,(e<<2)+4|0)|0;c[(c[f>>2]|0)+184>>2]=h}l=i;return}function so(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0.0,j=0.0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;Q=l;l=l+448|0;G=Q+400|0;F=Q+384|0;P=Q+344|0;O=Q+304|0;N=Q+248|0;D=Q+192|0;x=Q+152|0;y=Q+96|0;o=Q+72|0;d=Q+64|0;I=Q+32|0;J=Q;B=Q+416|0;u=Q+328|0;w=Q+288|0;K=Q+232|0;L=Q+176|0;M=Q+136|0;H=Q+80|0;n=c[a+60>>2]|0;if(0>1){uo(b);E=c[15686]|0;c[d>>2]=ry(a)|0;g1(E,90637,d)|0}E=a+16|0;f=b+1|0;d=1;e=0;while(1){g=c[E>>2]|0;if((d|0)>(c[g+180>>2]|0))break;C=c[(c[g+184>>2]|0)+(d<<2)>>2]|0;so(C,f);d=d+1|0;e=(ay(C)|0)+e|0}p=(ay(a)|0)-e|0;d=c[E>>2]|0;C=(c[d+180>>2]|0)+p|0;v=(C|0)==0;if(v?(c[d+12>>2]|0)==0:0){P=d+16|0;c[P>>2]=0;c[P+4>>2]=0;c[P+8>>2]=0;c[P+12>>2]=0;h[d+40>>3]=18.0;h[d+32>>3]=18.0}else{d=B+16|0;do if((XD(a,4,4,B)|0)>>>0>=3)if((c[d>>2]|0)==4?(c[B+28>>2]&2|0)!=0:0){e=nx(n,0,96164,0)|0;d=nx(n,1,96164,0)|0;if((e|0)!=0|(d|0)!=0){c[B+24>>2]=uH(C<<2)|0;break}else{c[o>>2]=ry(a)|0;Pw(0,90483,o)|0;d=0;e=0;break}}else{d=0;e=0}else{c[d>>2]=3;d=0;e=0}while(0);z=uH(C<<5)|0;A=uH(C<<2)|0;s=B+24|0;n=(e|0)!=0;r=0;g=1;while(1){f=c[E>>2]|0;if((g|0)>(c[f+180>>2]|0))break;f=c[(c[f+184>>2]|0)+(g<<2)>>2]|0;t=z+(r<<5)|0;q=(c[f+16>>2]|0)+16|0;c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2];c[t+12>>2]=c[q+12>>2];c[t+16>>2]=c[q+16>>2];c[t+20>>2]=c[q+20>>2];c[t+24>>2]=c[q+24>>2];c[t+28>>2]=c[q+28>>2];if(n&(c[s>>2]|0)!=0){t=KL(f,e,0,0)|0;c[(c[s>>2]|0)+(r<<2)>>2]=t}c[A+(r<<2)>>2]=f;r=r+1|0;g=g+1|0}a:do if((p|0)>0){o=I+16|0;p=I+24|0;q=(d|0)!=0;n=Sy(a)|0;e=r;while(1){if(!n)break a;f=c[n+16>>2]|0;g=f+112|0;if(!(c[g>>2]|0)){c[g>>2]=a;c[I>>2]=0;c[I+4>>2]=0;c[I+8>>2]=0;c[I+12>>2]=0;h[o>>3]=+h[f+96>>3]+ +h[f+88>>3];h[p>>3]=+h[f+80>>3];t=z+(e<<5)|0;c[t>>2]=c[I>>2];c[t+4>>2]=c[I+4>>2];c[t+8>>2]=c[I+8>>2];c[t+12>>2]=c[I+12>>2];c[t+16>>2]=c[I+16>>2];c[t+20>>2]=c[I+20>>2];c[t+24>>2]=c[I+24>>2];c[t+28>>2]=c[I+28>>2];if(q&(c[s>>2]|0)!=0){t=KL(n,d,0,0)|0;c[(c[s>>2]|0)+(e<<2)>>2]=t}c[A+(e<<2)>>2]=n;e=e+1|0}n=Ty(a,n)|0}}while(0);t=QD(C,z,B)|0;d=c[s>>2]|0;if(d|0)D_(d);vo(J,2147483647.0,2147483647.0);s=J+16|0;vo(u,-2147483647.0,-2147483647.0);c[s>>2]=c[u>>2];c[s+4>>2]=c[u+4>>2];c[s+8>>2]=c[u+8>>2];c[s+12>>2]=c[u+12>>2];g=I+16|0;n=I+8|0;o=I+24|0;p=J+8|0;q=J+24|0;r=c[15686]|0;d=0;while(1){if((d|0)>=(C|0))break;j=+(c[t+(d<<3)>>2]|0);m=+(c[t+(d<<3)+4>>2]|0);e=z+(d<<5)|0;c[I>>2]=c[e>>2];c[I+4>>2]=c[e+4>>2];c[I+8>>2]=c[e+8>>2];c[I+12>>2]=c[e+12>>2];c[I+16>>2]=c[e+16>>2];c[I+20>>2]=c[e+20>>2];c[I+24>>2]=c[e+24>>2];c[I+28>>2]=c[e+28>>2];i=+h[I>>3]+j;h[I>>3]=i;j=+h[g>>3]+j;h[g>>3]=j;k=+h[n>>3]+m;h[n>>3]=k;m=+h[o>>3]+m;h[o>>3]=m;h[J>>3]=+h[(+h[J>>3]<i?J:I)>>3];h[p>>3]=+h[(+h[p>>3]<k?J:I)+8>>3];h[s>>3]=+h[(+h[s>>3]>j?J:I)+16>>3];h[q>>3]=+h[(+h[q>>3]>m?J:I)+24>>3];e=c[A+(d<<2)>>2]|0;f=e+16|0;if((d|0)<(c[(c[E>>2]|0)+180>>2]|0)){u=(c[f>>2]|0)+16|0;c[u>>2]=c[I>>2];c[u+4>>2]=c[I+4>>2];c[u+8>>2]=c[I+8>>2];c[u+12>>2]=c[I+12>>2];c[u+16>>2]=c[I+16>>2];c[u+20>>2]=c[I+20>>2];c[u+24>>2]=c[I+24>>2];c[u+28>>2]=c[I+28>>2];if(0>1){uo(b);c[y>>2]=ry(e)|0;h[y+8>>3]=i;h[y+16>>3]=k;h[y+24>>3]=j;h[y+32>>3]=m;g1(r,90462,y)|0}}else{u=(c[f>>2]|0)+16|0;c[F>>2]=c[I>>2];c[F+4>>2]=c[I+4>>2];c[F+8>>2]=c[I+8>>2];c[F+12>>2]=c[I+12>>2];c[G>>2]=c[g>>2];c[G+4>>2]=c[g+4>>2];c[G+8>>2]=c[g+8>>2];c[G+12>>2]=c[g+12>>2];wo(w,F,G);c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];c[u+8>>2]=c[w+8>>2];c[u+12>>2]=c[w+12>>2];if(0>1){uo(b);u=ry(e)|0;f=c[f>>2]|0;k=+h[f+16>>3];m=+h[f+24>>3];c[x>>2]=u;h[x+8>>3]=k;h[x+16>>3]=m;g1(r,90450,x)|0}}d=d+1|0}e=c[E>>2]|0;d=c[e+12>>2]|0;if(d|0){i=+h[d+24>>3];if(v){j=+h[d+32>>3];c[J>>2]=0;c[J+4>>2]=0;c[J+8>>2]=0;c[J+12>>2]=0;h[s>>3]=i;h[q>>3]=j;j=0.0;k=i}else{j=+h[J>>3];k=+h[s>>3]}m=i-(k-j);i=m*.5;if(m>0.0){h[J>>3]=j-i;h[s>>3]=k+i}}if((b|0)>0)i=+((c[B+8>>2]|0)>>>0)*.5;else i=0.0;j=+h[J>>3]-i;h[J>>3]=j;k=+h[s>>3]+i;h[s>>3]=k;m=-i-+h[e+56>>3]+ +h[p>>3];h[p>>3]=m;i=+h[e+88>>3]+i+ +h[q>>3];h[q>>3]=i;if(0>1){uo(b);c[D>>2]=ry(a)|0;h[D+8>>3]=j;h[D+16>>3]=m;h[D+24>>3]=k;h[D+32>>3]=i;g1(r,90462,D)|0}d=0;while(1){if((d|0)>=(C|0))break;e=c[A+(d<<2)>>2]|0;f=e+16|0;if((d|0)<(c[(c[E>>2]|0)+180>>2]|0)){D=(c[f>>2]|0)+16|0;c[I>>2]=c[D>>2];c[I+4>>2]=c[D+4>>2];c[I+8>>2]=c[D+8>>2];c[I+12>>2]=c[D+12>>2];c[I+16>>2]=c[D+16>>2];c[I+20>>2]=c[D+20>>2];c[I+24>>2]=c[D+24>>2];c[I+28>>2]=c[D+28>>2];c[F>>2]=c[D>>2];c[F+4>>2]=c[D+4>>2];c[F+8>>2]=c[D+8>>2];c[F+12>>2]=c[D+12>>2];c[G>>2]=c[J>>2];c[G+4>>2]=c[J+4>>2];c[G+8>>2]=c[J+8>>2];c[G+12>>2]=c[J+12>>2];xo(I,F,G);c[F>>2]=c[g>>2];c[F+4>>2]=c[g+4>>2];c[F+8>>2]=c[g+8>>2];c[F+12>>2]=c[g+12>>2];c[G>>2]=c[J>>2];c[G+4>>2]=c[J+4>>2];c[G+8>>2]=c[J+8>>2];c[G+12>>2]=c[J+12>>2];xo(K,F,G);c[g>>2]=c[K>>2];c[g+4>>2]=c[K+4>>2];c[g+8>>2]=c[K+8>>2];c[g+12>>2]=c[K+12>>2];D=(c[f>>2]|0)+16|0;c[D>>2]=c[I>>2];c[D+4>>2]=c[I+4>>2];c[D+8>>2]=c[I+8>>2];c[D+12>>2]=c[I+12>>2];c[D+16>>2]=c[I+16>>2];c[D+20>>2]=c[I+20>>2];c[D+24>>2]=c[I+24>>2];c[D+28>>2]=c[I+28>>2];if(0>1){uo(b);D=ry(e)|0;i=+h[I>>3];j=+h[n>>3];k=+h[g>>3];m=+h[o>>3];c[N>>2]=D;h[N+8>>3]=i;h[N+16>>3]=j;h[N+24>>3]=k;h[N+32>>3]=m;g1(r,90462,N)|0}}else{D=(c[f>>2]|0)+16|0;c[F>>2]=c[D>>2];c[F+4>>2]=c[D+4>>2];c[F+8>>2]=c[D+8>>2];c[F+12>>2]=c[D+12>>2];c[G>>2]=c[J>>2];c[G+4>>2]=c[J+4>>2];c[G+8>>2]=c[J+8>>2];c[G+12>>2]=c[J+12>>2];xo(L,F,G);c[D>>2]=c[L>>2];c[D+4>>2]=c[L+4>>2];c[D+8>>2]=c[L+8>>2];c[D+12>>2]=c[L+12>>2];if(0>1){uo(b);D=ry(e)|0;B=c[f>>2]|0;k=+h[B+16>>3];m=+h[B+24>>3];c[O>>2]=D;h[O+8>>3]=k;h[O+16>>3]=m;g1(r,90450,O)|0}}d=d+1|0}c[F>>2]=c[s>>2];c[F+4>>2]=c[s+4>>2];c[F+8>>2]=c[s+8>>2];c[F+12>>2]=c[s+12>>2];c[G>>2]=c[J>>2];c[G+4>>2]=c[J+4>>2];c[G+8>>2]=c[J+8>>2];c[G+12>>2]=c[J+12>>2];xo(M,F,G);c[s>>2]=c[M>>2];c[s+4>>2]=c[M+4>>2];c[s+8>>2]=c[M+8>>2];c[s+12>>2]=c[M+12>>2];c[F>>2]=c[J>>2];c[F+4>>2]=c[J+4>>2];c[F+8>>2]=c[J+8>>2];c[F+12>>2]=c[J+12>>2];c[G>>2]=c[J>>2];c[G+4>>2]=c[J+4>>2];c[G+8>>2]=c[J+8>>2];c[G+12>>2]=c[J+12>>2];xo(H,F,G);c[J>>2]=c[H>>2];c[J+4>>2]=c[H+4>>2];c[J+8>>2]=c[H+8>>2];c[J+12>>2]=c[H+12>>2];O=(c[E>>2]|0)+16|0;c[O>>2]=c[J>>2];c[O+4>>2]=c[J+4>>2];c[O+8>>2]=c[J+8>>2];c[O+12>>2]=c[J+12>>2];c[O+16>>2]=c[J+16>>2];c[O+20>>2]=c[J+20>>2];c[O+24>>2]=c[J+24>>2];c[O+28>>2]=c[J+28>>2];if(0>1){uo(b);O=ry(a)|0;i=+h[J>>3];j=+h[p>>3];k=+h[s>>3];m=+h[q>>3];c[P>>2]=O;h[P+8>>3]=i;h[P+16>>3]=j;h[P+24>>3]=k;h[P+32>>3]=m;g1(r,90462,P)|0}D_(z);D_(A);D_(t)}l=Q;return}function to(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0,p=0.0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+80|0;s=t+32|0;i=t+8|0;d=t;r=a+16|0;o=c[r>>2]|0;p=+h[o+16>>3];q=+h[o+24>>3];if(0>1){uo(b);o=c[15686]|0;c[d>>2]=ry(a)|0;g1(o,90435,d)|0}o=(b|0)!=0;a:do if(o){d=Sy(a)|0;e=c[15686]|0;while(1){if(!d)break a;f=d+16|0;g=c[f>>2]|0;if((c[g+112>>2]|0)==(a|0)?(u=g+16|0,h[u>>3]=+h[u>>3]+p,g=g+24|0,h[g>>3]=+h[g>>3]+q,0>1):0){uo(b);u=ry(d)|0;g=c[f>>2]|0;m=+h[g+16>>3];n=+h[g+24>>3];c[i>>2]=u;h[i+8>>3]=m;h[i+16>>3]=n;g1(e,90450,i)|0}d=Ty(a,d)|0}}else e=c[15686]|0;while(0);i=b+1|0;a=1;while(1){d=c[r>>2]|0;if((a|0)>(c[d+180>>2]|0))break;g=c[(c[d+184>>2]|0)+(a<<2)>>2]|0;if(o){f=g+16|0;d=c[f>>2]|0;j=+h[d+16>>3]+p;k=+h[d+24>>3]+q;m=+h[d+32>>3]+p;n=+h[d+40>>3]+q;if(0>1){uo(b);c[s>>2]=ry(g)|0;h[s+8>>3]=j;h[s+16>>3]=k;h[s+24>>3]=m;h[s+32>>3]=n;g1(e,90462,s)|0;d=c[f>>2]|0}h[d+16>>3]=j;h[d+24>>3]=k;h[d+32>>3]=m;h[d+40>>3]=n}to(g,i);a=a+1|0}l=t;return}function uo(a){a=a|0;var b=0;b=c[15686]|0;while(1){if((a|0)<=0)break;D1(90480,b)|0;a=a+-1|0}return}function vo(a,b,c){a=a|0;b=+b;c=+c;h[a>>3]=b;h[a+8>>3]=c;return}function wo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=(+h[c+8>>3]+ +h[b+8>>3])*.5;h[a>>3]=(+h[c>>3]+ +h[b>>3])*.5;h[a+8>>3]=d;return}function xo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+h[b+8>>3]-+h[c+8>>3];h[a>>3]=+h[b>>3]-+h[c>>3];h[a+8>>3]=d;return}function yo(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function zo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=a+8|0;d=(c[g>>2]|0)+1|0;c[g>>2]=d;e=a+4|0;h=c[e>>2]|0;f=h+10|0;if((d|0)<(h|0))a=c[a>>2]|0;else{c[e>>2]=f;d=xH(c[a>>2]|0,f<<2)|0;c[a>>2]=d;a=d;d=c[g>>2]|0}c[a+(d<<2)>>2]=b;return}function Ao(a){a=a|0;var b=0;b=Sy(a)|0;while(1){if(!b)break;HM(b);b=Ty(a,b)|0}Bo(a);return}function Bo(a){a=a|0;var b=0,d=0,e=0;b=a+16|0;a=1;while(1){e=c[b>>2]|0;d=c[e+184>>2]|0;if((a|0)>(c[e+180>>2]|0))break;e=c[d+(a<<2)>>2]|0;nH(c[(c[e+16>>2]|0)+12>>2]|0);Bo(e);a=a+1|0}D_(d);return}function Co(a){a=a|0;var b=0,d=0,e=0;Fz(a,1,134365,304,1);sM(a)|0;b=uH(((ay(a)|0)<<2)+4|0)|0;e=a+16|0;c[(c[e>>2]|0)+152>>2]=b;b=0;d=Sy(a)|0;while(1){if(!d)break;Do(d);c[(c[(c[e>>2]|0)+152>>2]|0)+(b<<2)>>2]=d;c[(c[d+16>>2]|0)+120>>2]=b;b=b+1|0;d=Ty(a,d)|0}e=nx(a,2,90566,0)|0;d=Sy(a)|0;while(1){if(!d)break;b=Ex(a,d)|0;while(1){if(!b)break;Eo(b,e);b=Gx(a,b)|0}d=Ty(a,d)|0}Fo(a);return}function Do(a){a=a|0;var b=0;dM(a);b=uH((e[(c[(ez(a)|0)+16>>2]|0)+176>>1]|0)<<3)|0;c[(c[a+16>>2]|0)+132>>2]=b;bN(a,c[(c[(ez(a)|0)+16>>2]|0)+116>>2]&1);return}function Eo(a,b){a=a|0;b=b|0;var d=0,e=0.0;Az(a,134378,176,1)|0;e=+LL(a,c[46404]|0,1.0,0.0);d=a+16|0;h[(c[d>>2]|0)+128>>3]=e;e=+LL(a,b,+h[1371],0.0);h[(c[d>>2]|0)+136>>3]=e;eM(a)|0;return}function Fo(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;q=r+16|0;p=r;m=r+24|0;n=nx(b,1,99597,0)|0;a:do if(n|0){o=nx(b,1,90570,0)|0;i=b+16|0;j=(o|0)==0;k=c[15686]|0;g=0;while(1){e=c[(c[(c[i>>2]|0)+152>>2]|0)+(g<<2)>>2]|0;if(!e)break a;b=yx(e,n)|0;do if(a[b>>0]|0){f=e+16|0;d=c[(c[f>>2]|0)+132>>2]|0;a[m>>0]=0;c[p>>2]=d;c[p+4>>2]=d+8;c[p+8>>2]=m;if((N1(b,98723,p)|0)<=1){c[q>>2]=ry(e)|0;c[q+4>>2]=b;g1(k,90574,q)|0;break}b:do if(+h[22908]>0.0){b=0;while(1){if((b|0)==2)break b;s=d+(b<<3)|0;h[s>>3]=+h[s>>3]/+h[22908];b=b+1|0}}while(0);b=c[f>>2]|0;a[b+119>>0]=1;if((a[m>>0]|0)!=33){if(j)break;if(!((QL(yx(e,o)|0)|0)<<24>>24))break;b=c[f>>2]|0}a[b+119>>0]=3}while(0);g=g+1|0}}while(0);l=r;return}function Go(a){a=a|0;var b=0,c=0;c=Sy(a)|0;while(1){if(!c)break;b=Ex(a,c)|0;while(1){if(!b)break;JM(b);b=Gx(a,b)|0}HM(c);c=Ty(a,c)|0}Ho(a);return}function Ho(a){a=a|0;Io(a);a=a+16|0;D_(c[(c[a>>2]|0)+152>>2]|0);D_(c[(c[a>>2]|0)+140>>2]|0);return}function Io(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=a+16|0;f=1;while(1){e=c[g>>2]|0;b=c[e+184>>2]|0;if((f|0)>(c[e+180>>2]|0))break;e=c[b+(f<<2)>>2]|0;b=e+16|0;nH(c[(c[b>>2]|0)+12>>2]|0);d=c[(c[b>>2]|0)+140>>2]|0;if(d|0){D_(c[d>>2]|0);D_(c[(c[b>>2]|0)+140>>2]|0)}Io(e);f=f+1|0}D_(b);if((fz(a)|0)!=(a|0))Cz(a,134401)|0;return}function Jo(a,b){a=a|0;b=b|0;c[b+4>>2]=nx(a,0,90626,0)|0;c[b+8>>2]=nx(a,0,138034,0)|0;c[b+12>>2]=nx(a,0,137966,0)|0;c[b>>2]=a;c[b+16>>2]=0;c[b+36>>2]=XD(a,2,4,b+20|0)|0;return}function Ko(a){a=a|0;var d=0,e=0;$M(a,2);d=uH(56)|0;e=a+16|0;c[(c[e>>2]|0)+140>>2]=d;d=(KL(a,nx(a,0,90633,0)|0,2,2)|0)&65535;d=(d&65535)<10?d:10;b[(c[e>>2]|0)+176>>1]=d;c[46366]=d&65535;Lo(a,0,a);hp(a);Co(a);return}function Lo(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=(d|0)==0;if(k){Mo(j);d=j}g=e+16|0;f=wA(a)|0;while(1){if(!f)break;if(!(z$(ry(f)|0,104980,7)|0)){Az(f,134401,280,1)|0;n=uH(56)|0;p=c[f+16>>2]|0;c[p+140>>2]=n;o=c[g>>2]|0;b[p+176>>1]=b[o+176>>1]|0;c[n+44>>2]=(c[(c[o+140>>2]|0)+44>>2]|0)+1;c[n+48>>2]=e;No(d,f);Lo(f,0,f)}else Lo(f,d,e);f=xA(f)|0}if(k?(h=c[j+8>>2]|0,i=a+16|0,c[(c[i>>2]|0)+180>>2]=h,h|0):0){p=xH(c[j>>2]|0,(h<<2)+4|0)|0;c[(c[i>>2]|0)+184>>2]=p}l=m;return}function Mo(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function No(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=a+8|0;d=(c[g>>2]|0)+1|0;c[g>>2]=d;e=a+4|0;h=c[e>>2]|0;f=h+10|0;if((d|0)<(h|0))a=c[a>>2]|0;else{c[e>>2]=f;d=xH(c[a>>2]|0,f<<2)|0;c[a>>2]=d;a=d;d=c[g>>2]|0}c[a+(d<<2)>>2]=b;return}function Oo(a){a=a|0;var b=0,c=0;b=l;l=l+64|0;c=b;Jo(a,c);Po(a,c);Qo(a);Ro(a,a);So(a);l=b;return}function Po(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0,w=0.0,x=0.0;s=l;l=l+64|0;r=s+48|0;e=s+40|0;o=s+56|0;n=s+52|0;m=s;if(0){q=c[15686]|0;c[e>>2]=ry(b)|0;g1(q,90637,e)|0}e=Sy(b)|0;while(1){if(!e)break;c[(c[e+16>>2]|0)+164>>2]=0;e=Ty(b,e)|0}p=To(b,d)|0;q=Iu(p,o,n)|0;e=q;while(1){k=e+4|0;f=c[e>>2]|0;if(!f)break;ip(f,m);e=Sy(f)|0;while(1){if(!e)break;g=Ty(f,e)|0;i=e+16|0;j=c[i>>2]|0;if(c[j+212>>2]|0){v=Uo(e,f)|0;Po(v,d);v=c[(c[v+16>>2]|0)+140>>2]|0;u=+h[v+24>>3];j=c[i>>2]|0;h[j+32>>3]=u;t=+h[v+32>>3];h[j+40>>3]=t;u=u*36.0;h[j+88>>3]=u;h[j+96>>3]=u;h[j+80>>3]=t*72.0;e=g;continue}if(c[(c[j+112>>2]|0)+8>>2]|0){e=g;continue}dz(f,e)|0;e=g}if((ay(f)|0)<=1){e=k;continue}if((c[d>>2]|0)==(b|0))Qp(f)|0;vp(f,m);e=k}e=c[o>>2]|0;if((e|0)<=1)if((e|0)==1){mM(c[q>>2]|0);e=0}else e=0;else{if(!(c[n>>2]|0))f=0;else{f=uH(e)|0;a[f>>0]=1;e=c[o>>2]|0}c[d+40>>2]=f;e=BD(e,q,0,d+20|0)|0;D_(f)}Vo(p,c[o>>2]|0,q,e,b,d);D_(e);f=Sy(p)|0;while(1){if(!f)break;g=c[f+16>>2]|0;e=c[g+212>>2]|0;if(!e){e=c[(c[g+112>>2]|0)+8>>2]|0;if(e|0){o=c[g+132>>2]|0;v=c[(c[e+16>>2]|0)+132>>2]|0;h[v>>3]=+h[o>>3];h[v+8>>3]=+h[o+8>>3]}}else{o=c[g+132>>2]|0;x=+h[g+32>>3];w=+h[o>>3]-x*.5;v=c[(c[e+16>>2]|0)+140>>2]|0;h[v+8>>3]=w;t=+h[g+40>>3];u=+h[o+8>>3]-t*.5;h[v+16>>3]=u;h[v+24>>3]=x+w;h[v+32>>3]=t+u}f=Ty(p,f)|0}v=(c[(c[b+16>>2]|0)+140>>2]|0)+8|0;o=(c[(c[p+16>>2]|0)+140>>2]|0)+8|0;c[v>>2]=c[o>>2];c[v+4>>2]=c[o+4>>2];c[v+8>>2]=c[o+8>>2];c[v+12>>2]=c[o+12>>2];c[v+16>>2]=c[o+16>>2];c[v+20>>2]=c[o+20>>2];c[v+24>>2]=c[o+24>>2];c[v+28>>2]=c[o+28>>2];Wo(p,q);D_(q);if(0){v=c[15686]|0;c[r>>2]=ry(b)|0;g1(v,90648,r)|0}l=s;return}function Qo(b){b=b|0;var d=0,e=0,f=0.0,g=0.0,i=0.0,j=0.0,k=0;d=Sy(b)|0;while(1){if(!d)break;e=c[d+16>>2]|0;if(a[e+118>>0]|0){k=c[(c[(c[e+212>>2]|0)+16>>2]|0)+140>>2]|0;j=+h[k+24>>3]-+h[k+8>>3];i=+h[k+32>>3]-+h[k+16>>3];g=j*36.0;f=i*36.0;k=c[e+132>>2]|0;h[k>>3]=j*.5;h[k+8>>3]=i*.5;h[e+32>>3]=j;h[e+40>>3]=i;h[e+96>>3]=g;h[e+88>>3]=g;h[e+80>>3]=i*72.0;e=c[(c[e+12>>2]|0)+44>>2]|0;h[e>>3]=g;h[e+8>>3]=f;i=-g;h[e+16>>3]=i;h[e+24>>3]=f;h[e+32>>3]=i;f=-f;h[e+40>>3]=f;h[e+48>>3]=g;h[e+56>>3]=f}d=Ty(b,d)|0}return}function Ro(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0.0,i=0,j=0,k=0.0,l=0,m=0.0,n=0,o=0.0,p=0;i=a+16|0;j=c[(c[i>>2]|0)+140>>2]|0;f=+h[j+8>>3];g=+h[j+16>>3];j=(a|0)!=(b|0);a:do if(j){d=Sy(a)|0;while(1){if(!d){a=1;break a}e=c[d+16>>2]|0;if((c[e+212>>2]|0)==(a|0)){e=c[e+132>>2]|0;h[e>>3]=+h[e>>3]+f;e=e+8|0;h[e>>3]=+h[e>>3]+g}d=Ty(a,d)|0}}else a=1;while(0);while(1){d=c[i>>2]|0;if((a|0)>(c[d+180>>2]|0))break;d=c[(c[d+184>>2]|0)+(a<<2)>>2]|0;if(j){e=c[(c[d+16>>2]|0)+140>>2]|0;p=e+8|0;n=e+16|0;l=e+24|0;e=e+32|0;o=+h[n>>3]+g;m=+h[l>>3]+f;k=+h[e>>3]+g;h[p>>3]=+h[p>>3]+f;h[n>>3]=o;h[l>>3]=m;h[e>>3]=k}Ro(d,b);a=a+1|0}return}function So(a){a=a|0;var b=0,d=0,e=0.0,f=0.0,g=0.0;b=a+16|0;a=c[b>>2]|0;d=c[a+140>>2]|0;g=+h[d+16>>3]*72.0;f=+h[d+24>>3]*72.0;e=+h[d+32>>3]*72.0;h[a+16>>3]=+h[d+8>>3]*72.0;h[a+24>>3]=g;h[a+32>>3]=f;h[a+40>>3]=e;a=1;while(1){d=c[b>>2]|0;if((a|0)>(c[d+180>>2]|0))break;So(c[(c[d+184>>2]|0)+(a<<2)>>2]|0);a=a+1|0}return}function To(d,e){d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+160|0;s=y+24|0;t=y+8|0;g=y;f=y+56|0;w=e+16|0;x=c[w>>2]|0;c[w>>2]=x+1;c[s>>2]=x;Y0(f,90710,s)|0;if(0>1){x=c[15686]|0;w=ry(d)|0;c[g>>2]=f;c[g+4>>2]=w;g1(x,90717,g)|0};a[s>>0]=a[18484]|0;a[s+1>>0]=a[18485]|0;a[s+2>>0]=a[18486]|0;a[s+3>>0]=a[18487]|0;x=Xx(91072,s,0)|0;Az(x,134401,280,1)|0;v=uH(56)|0;w=x+16|0;o=c[w>>2]|0;c[o+140>>2]=v;v=d+16|0;b[o+176>>1]=b[(c[v>>2]|0)+176>>1]|0;ap(d,x,91095);ap(d,x,91700);ap(d,x,90983);o=e+4|0;p=s+16|0;q=s+8|0;r=s+24|0;j=0;n=1;while(1){f=c[v>>2]|0;if((n|0)>(c[f+180>>2]|0))break;c[s>>2]=c[332];c[s+4>>2]=c[333];c[s+8>>2]=c[334];c[s+12>>2]=c[335];c[s+16>>2]=c[336];c[s+20>>2]=c[337];c[s+24>>2]=c[338];c[s+28>>2]=c[339];g=c[(c[f+184>>2]|0)+(n<<2)>>2]|0;fH(g);i=bp(x,ry(g)|0)|0;k=i+16|0;f=c[k>>2]|0;c[f+212>>2]=g;m=j+1|0;c[f+120>>2]=j;if(c[o>>2]|0)cp(g,i,e,s);f=Sy(g)|0;while(1){if(!f)break;c[(c[f+16>>2]|0)+164>>2]=i;f=Ty(g,f)|0}f=c[k>>2]|0;if(a[f+119>>0]|0){k=c[f+132>>2]|0;h[k>>3]=(+h[p>>3]+ +h[s>>3])*.5;h[k+8>>3]=(+h[r>>3]+ +h[q>>3])*.5}j=m;n=n+1|0}k=Sy(d)|0;while(1){if(!k)break;f=k+16|0;g=c[f>>2]|0;if(!(c[g+164>>2]|0)){i=g+212|0;s=c[i>>2]|0;if(s|0?(s|0)!=(c[(c[(c[v>>2]|0)+140>>2]|0)+48>>2]|0):0){u=18;break}c[i>>2]=d;if(!(a[g+118>>0]|0)){i=bp(x,ry(k)|0)|0;g=c[f>>2]|0;c[g+164>>2]=i;i=c[i+16>>2]|0;c[i+120>>2]=j;h[i+32>>3]=+h[g+32>>3];h[i+40>>3]=+h[g+40>>3];h[i+88>>3]=+h[g+88>>3];h[i+96>>3]=+h[g+96>>3];h[i+80>>3]=+h[g+80>>3];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];f=a[g+119>>0]|0;if(f<<24>>24){e=c[g+132>>2]|0;s=c[i+132>>2]|0;h[s>>3]=+h[e>>3];h[s+8>>3]=+h[e+8>>3];a[i+119>>0]=f}c[(c[i+112>>2]|0)+8>>2]=k;f=j+1|0}else f=j}else f=j;k=Ty(d,k)|0;j=f}if((u|0)==18){e=ry(k)|0;s=ry(d)|0;u=ry(c[(c[f>>2]|0)+212>>2]|0)|0;c[t>>2]=e;c[t+4>>2]=s;c[t+8>>2]=u;Pw(1,90740,t)|0;bb(184132,1)}m=Sy(d)|0;while(1){if(!m)break;n=c[(c[m+16>>2]|0)+164>>2]|0;o=n+16|0;i=Ex(d,m)|0;while(1){if(!i)break;f=c[(c[(c[((c[i>>2]&3|0)==2?i:i+-48|0)+40>>2]|0)+16>>2]|0)+164>>2]|0;if((f|0)!=(n|0)){if(f>>>0>n>>>0)k=Rx(x,n,f,0,1)|0;else k=Rx(x,f,n,0,1)|0;Az(k,134378,176,1)|0;g=c[i+16>>2]|0;u=c[k+16>>2]|0;h[u+136>>3]=+h[g+136>>3];h[u+128>>3]=+h[g+128>>3];f=c[(c[f+16>>2]|0)+112>>2]|0;g=f+4|0;c[g>>2]=(c[g>>2]|0)+1;g=c[(c[o>>2]|0)+112>>2]|0;t=g+4|0;c[t>>2]=(c[t>>2]|0)+1;if(!(c[u+172>>2]|0)){c[f>>2]=(c[f>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+1}dp(k,i)}i=Gx(d,i)|0}m=Ty(d,m)|0}f=c[(c[v>>2]|0)+140>>2]|0;g=c[f>>2]|0;if(g|0){i=uH((c[f+4>>2]<<4)+16|0)|0;c[c[(c[w>>2]|0)+140>>2]>>2]=i;f=0;while(1){if(!(c[g>>2]|0))break;m=c[(c[(c[g+4>>2]|0)+16>>2]|0)+164>>2]|0;if(m){ep(d,g);n=bp(x,190692)|0;o=n+16|0;c[(c[o>>2]|0)+120>>2]=j;if(n>>>0>m>>>0)k=Rx(x,m,n,0,1)|0;else k=Rx(x,n,m,0,1)|0;Az(k,134378,176,1)|0;u=c[g>>2]|0;t=c[u+16>>2]|0;v=c[k+16>>2]|0;h[v+136>>3]=+h[t+136>>3];h[v+128>>3]=+h[t+128>>3];dp(k,u);u=c[(c[o>>2]|0)+112>>2]|0;v=u+4|0;c[v>>2]=(c[v>>2]|0)+1;v=c[(c[m+16>>2]|0)+112>>2]|0;t=v+4|0;c[t>>2]=(c[t>>2]|0)+1;c[u>>2]=(c[u>>2]|0)+1;c[v>>2]=(c[v>>2]|0)+1;c[i+4>>2]=n;h[i+8>>3]=+h[g+8>>3];c[i>>2]=k;f=f+1|0;i=i+16|0;j=j+1|0}g=g+16|0}c[(c[(c[w>>2]|0)+140>>2]|0)+4>>2]=f}l=y;return x|0}function Uo(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,g=0,i=0,j=0,k=0,l=0;l=c[a+16>>2]|0;k=c[l+212>>2]|0;l=c[(c[l+112>>2]|0)+4>>2]|0;do if(l|0){j=uH((l<<4)+16|0)|0;f=Zo(a,b)|0;g=f+8|0;b=0;e=f;while(1){if(!(c[e>>2]|0))break;i=e+24|0;if(!(c[i>>2]|0))d=+h[g>>3]+6.283185307179586;else d=+h[e+32>>3];b=_o(a,e,j,b,d)|0;e=i}if((b|0)==(l|0)){a=c[(c[k+16>>2]|0)+140>>2]|0;c[a>>2]=j;c[a+4>>2]=l;D_(f);break}else qa(90656,90666,766,90675)}while(0);return k|0}function Vo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0.0,j=0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0,H=0.0;B=l;l=l+32|0;x=B+16|0;A=B;m=c[g+8>>2]|0;j=c[g+12>>2]|0;y=(c[g>>2]|0)==(f|0);z=(b|0)!=0;a:do if(z){p=c[(c[d>>2]|0)+16>>2]|0;k=+h[p+16>>3];m=~~(k+(k>=0.0?.5:-.5));c[A>>2]=m;k=+h[p+24>>3];g=~~(k+(k>=0.0?.5:-.5));u=A+4|0;c[u>>2]=g;k=+h[p+32>>3];n=~~(k+(k>=0.0?.5:-.5));v=A+8|0;c[v>>2]=n;k=+h[p+40>>3];p=~~(k+(k>=0.0?.5:-.5));w=A+12|0;c[w>>2]=p;if((b|0)>1){q=c[e>>2]|0;t=c[e+4>>2]|0;m=q+m|0;c[A>>2]=m;b=t+g|0;c[u>>2]=b;n=q+n|0;c[v>>2]=n;q=x+4|0;r=x+8|0;s=x+12|0;o=e;g=d;t=t+p|0;p=b;while(1){g=g+4|0;j=o+8|0;c[w>>2]=t;b=c[g>>2]|0;if(!b){j=0;r=p;s=t;break a}E=c[b+16>>2]|0;G=+h[E+16>>3];i=+h[E+24>>3];k=+h[E+32>>3];H=+h[E+40>>3];E=~~(H+(H>=0.0?.5:-.5));c[s>>2]=E;b=c[j>>2]|0;F=c[o+12>>2]|0;D=b+~~(G+(G>=0.0?.5:-.5))|0;c[x>>2]=D;C=F+~~(i+(i>=0.0?.5:-.5))|0;c[q>>2]=C;b=b+~~(k+(k>=0.0?.5:-.5))|0;c[r>>2]=b;E=F+E|0;c[s>>2]=E;D=c[((m|0)<(D|0)?A:x)>>2]|0;c[A>>2]=D;C=c[((p|0)<(C|0)?A:x)+4>>2]|0;c[u>>2]=C;b=c[((n|0)>(b|0)?A:x)+8>>2]|0;c[v>>2]=b;o=j;t=c[((t|0)>(E|0)?A:x)+12>>2]|0;m=D;p=C;n=b}}else{j=0;r=g;s=p}}else{c[A>>2]=0;c[A+4>>2]=0;n=KL(f,m,54,3)|0;c[A+8>>2]=n;s=KL(f,j,36,3)|0;c[A+12>>2]=s;j=1;m=0;r=0}while(0);b=f+16|0;o=c[b>>2]|0;g=c[o+12>>2]|0;if(g){H=+h[g+24>>3];g=m-n+~~(H+(H>=0.0?.5:-.5))|0;if((g|0)>0){g=g>>>1;m=m-g|0;c[A>>2]=m;n=n+g|0;c[A+8>>2]=n;g=0}else g=0}else g=j;if(y|(g|0)!=0){j=0;g=o}else{j=KL(a,c[46374]|0,8,0)|0;g=c[b>>2]|0}q=j-m|0;p=~~(+h[g+56>>3]+ +(j-r|0));c[A>>2]=0;c[A+4>>2]=0;o=q+j+n|0;c[A+8>>2]=o;b=~~(+h[g+88>>3]+ +(j+p|0)+ +(s|0));c[A+12>>2]=b;b:do if(z){g=e;c:while(1){n=d+4|0;j=c[d>>2]|0;if(!j)break b;if(!g){m=0;d=q;g=p}else{m=g+8|0;d=(c[g>>2]|0)+q|0;g=(c[g+4>>2]|0)+p|0}k=+(d|0)*.013888888888888888;i=+(g|0)*.013888888888888888;d=Sy(j)|0;while(1){if(!d){d=n;g=m;continue c}F=c[(c[d+16>>2]|0)+132>>2]|0;h[F>>3]=+h[F>>3]+k;F=F+8|0;h[F>>3]=+h[F>>3]+i;d=Ty(j,d)|0}}}while(0);F=c[(c[a+16>>2]|0)+140>>2]|0;E=F+8|0;c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;c[E+12>>2]=0;h[F+24>>3]=+(o|0)*.013888888888888888;h[F+32>>3]=+(b|0)*.013888888888888888;l=B;return}function Wo(a,b){a=a|0;b=b|0;var d=0,e=0;while(1){d=c[b>>2]|0;if(!d)break;Xo(d);Cz(d,134401)|0;b=b+4|0}b=c[c[(c[a+16>>2]|0)+140>>2]>>2]|0;if(b|0)D_(b);Xo(a);Cz(a,134401)|0;d=Sy(a)|0;while(1){if(!d)break;e=Ty(a,d)|0;b=Ex(a,d)|0;while(1){if(!b)break;D_(c[(c[b+16>>2]|0)+172>>2]|0);Cz(b,134378)|0;b=Gx(a,b)|0}Yo(d);d=e}$x(a)|0;return}function Xo(a){a=a|0;D_(c[(c[a+16>>2]|0)+140>>2]|0);return}function Yo(a){a=a|0;var b=0;b=a+16|0;D_(c[(c[b>>2]|0)+112>>2]|0);D_(c[(c[b>>2]|0)+132>>2]|0);Cz(a,134365)|0;return}function Zo(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,g=0.0,i=0,j=0,k=0,l=0,m=0;k=a+16|0;l=c[c[(c[k>>2]|0)+112>>2]>>2]|0;m=uH((l*24|0)+24|0)|0;i=0;j=Jx(b,a)|0;while(1){if(!j)break;f=c[j>>2]&3;e=c[((f|0)==2?j:j+-48|0)+40>>2]|0;if((e|0)==(a|0))e=c[((f|0)==3?j:j+48|0)+40>>2]|0;e=c[(c[e+16>>2]|0)+132>>2]|0;f=c[(c[k>>2]|0)+132>>2]|0;g=+h[e>>3]-+h[f>>3];d=+h[e+8>>3]-+h[f+8>>3];c[m+(i*24|0)>>2]=j;h[m+(i*24|0)+8>>3]=+K(+d,+g);h[m+(i*24|0)+16>>3]=d*d+g*g;i=i+1|0;j=Kx(b,j,a)|0}if((i|0)!=(l|0))qa(90689,90666,642,90698);_0(m,l,24,67);a:do if((l|0)>1){j=l+-1|0;e=0;b:while(1){if((e|0)>=(j|0))break a;g=+h[m+(e*24|0)+8>>3];f=e+1|0;i=f;while(1){if((i|0)>=(l|0))break;if(!(+h[m+(i*24|0)+8>>3]==g))break;i=i+1|0}if((i|0)==(f|0)){e=f;continue}if((i|0)==(l|0))d=3.141592653589793;else d=+h[m+(i*24|0)+8>>3];d=(d-g)/+(i-e|0);d=d>.03490658503988659?.03490658503988659:d;g=0.0;while(1){if((e|0)>=(i|0))continue b;k=m+(e*24|0)+8|0;h[k>>3]=+h[k>>3]+g;g=g+d;e=e+1|0}}}while(0);return m|0}function _o(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=+g;var i=0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0.0,q=0;k=c[d>>2]|0;n=c[k+16>>2]|0;m=b[n+168>>1]|0;o=m<<16>>16;j=c[k>>2]&3;i=c[((j|0)==2?k:k+-48|0)+40>>2]|0;if((i|0)==(a|0))i=c[((j|0)==3?k:k+48|0)+40>>2]|0;p=+h[d+8>>3];g=(g-p)/+(m<<16>>16);g=g>.03490658503988659?.03490658503988659:g;m=i>>>0>a>>>0;l=m?g:-g;d=m?1:-1;k=0;i=c[n+172>>2]|0;j=m?f:f+-1+o|0;g=m?p:g*+(o+-1|0)+p;while(1){if((k|0)>=(o|0))break;n=c[i>>2]|0;c[e+(j<<4)>>2]=n;m=c[n>>2]&3;q=(m|0)==3?n:n+48|0;c[e+(j<<4)+4>>2]=c[((c[(c[(c[q+40>>2]|0)+16>>2]|0)+164>>2]|0)==(a|0)?q:(m|0)==2?n:n+-48|0)+40>>2];h[e+(j<<4)+8>>3]=g;k=k+1|0;i=i+4|0;j=j+d|0;g=g+l}return o+f|0}function $o(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+h[a+8>>3];d=+h[b+8>>3];if(!(c>d))if(!(c<d)){d=+h[a+16>>3];c=+h[b+16>>3];if(d>c)a=1;else a=(d<c)<<31>>31}else a=-1;else a=1;return a|0}function ap(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=nx(a,0,c,0)|0;do if(d|0){a=yx(a,d)|0;d=nx(b,0,c,0)|0;if(!d){nx(b,0,c,a)|0;break}else{rx(b,d,a)|0;break}}while(0);return}function bp(a,b){a=a|0;b=b|0;var d=0,f=0;b=az(a,b,1)|0;Az(b,134365,304,1)|0;f=uH(32)|0;d=b+16|0;c[(c[d>>2]|0)+112>>2]=f;a=vH((e[(c[a+16>>2]|0)+176>>1]|0)<<3)|0;c[(c[d>>2]|0)+132>>2]=a;return b|0}function cp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+80|0;n=q+56|0;m=q+32|0;p=q;o=q+64|0;i=c[e+4>>2]|0;k=yx(b,i)|0;do if(a[k>>0]|0){if((c[e>>2]|0)!=(b|0)){e=yx(yA(b)|0,i)|0;if((e|0)==(k|0))break;if(!(b$(k,e)|0))break}a[o>>0]=0;e=p+8|0;i=p+16|0;j=p+24|0;c[m>>2]=p;c[m+4>>2]=e;c[m+8>>2]=i;c[m+12>>2]=j;c[m+16>>2]=o;if((N1(k,90851,m)|0)<=3){c[n>>2]=ry(b)|0;c[n+4>>2]=k;Pw(0,90869,n)|0;break}g=+h[22908];if(g>0.0){h[p>>3]=+h[p>>3]/g;h[e>>3]=+h[e>>3]/g;h[i>>3]=+h[i>>3]/g;h[j>>3]=+h[j>>3]/g}e=a[o>>0]|0;if(e<<24>>24==33)a[(c[d+16>>2]|0)+119>>0]=3;else a[(c[d+16>>2]|0)+119>>0]=e<<24>>24==63?2:1;c[f>>2]=c[p>>2];c[f+4>>2]=c[p+4>>2];c[f+8>>2]=c[p+8>>2];c[f+12>>2]=c[p+12>>2];c[f+16>>2]=c[p+16>>2];c[f+20>>2]=c[p+20>>2];c[f+24>>2]=c[p+24>>2];c[f+28>>2]=c[p+28>>2]}while(0);l=q;return}function dp(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;g=a+16|0;f=c[g>>2]|0;a=b[f+168>>1]|0;f=c[f+172>>2]|0;if(!f){a=a<<16>>16;e=a;a=vH((a<<2)+4|0)|0}else{a=a<<16>>16;e=a;a=xH(f,(a<<2)+4|0)|0}c[a+(e<<2)>>2]=d;d=c[g>>2]|0;c[d+172>>2]=a;d=d+168|0;b[d>>1]=(b[d>>1]|0)+1<<16>>16;return}function ep(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+48|0;h=i+24|0;g=i;e=c[b>>2]|0;d=c[e>>2]&3;f=c[((d|0)==2?e:e+-48|0)+40>>2]|0;d=c[((d|0)==3?e:e+48|0)+40>>2]|0;b=W_(ry(a)|0)|0;j=W_(ry(f)|0)|0;j=(b+8+j+(W_(ry(d)|0)|0)|0)>999;b=ry(a)|0;if(j){d=ry(d)|0;j=ry(f)|0;h=(c[e>>2]|0)>>>4;c[g>>2]=b;c[g+4>>2]=d;c[g+8>>2]=j;j=g+16|0;c[j>>2]=h;c[j+4>>2]=0;Y0(190692,90809,g)|0}else{d=c[(c[d+16>>2]|0)+120>>2]|0;j=c[(c[f+16>>2]|0)+120>>2]|0;g=(c[e>>2]|0)>>>4;c[h>>2]=b;c[h+4>>2]=d;c[h+8>>2]=j;j=h+16|0;c[j>>2]=g;c[j+4>>2]=0;Y0(190692,90828,h)|0}l=i;return}function fp(a){a=a|0;var d=0,e=0,f=0.0,g=0.0,i=0,j=0,k=0;j=4;i=C_(40)|0;c[i>>2]=0;g=+h[22908];o=0;f=+Z(1,a|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,i|0,j|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)!=1){h[22908]=f;o=0;ia(100,a|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,i|0,j|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)!=1){i=D3(184132,1,i|0,j|0)|0;j=z;o=0;e=o;o=0;if((e|0)!=0&(p|0)!=0){d=E3(c[e>>2]|0,i|0,j|0)|0;if(!d)bb(e|0,p|0);z=p}else d=-1;if((d|0)!=1)d=0;else d=z}else d=z}else d=z;while(1){if(d|0)break;o=0;ia(101,a|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,i|0,j|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1){d=z;continue}o=0;$(22,a|0)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,i|0,j|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1){d=z;continue}if(b[(c[a+16>>2]|0)+136>>1]&14){o=0;ia(102,a|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,i|0,j|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1){d=z;continue}}o=0;ja(22,a|0,0);d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,i|0,j|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1)d=z;else{k=12;break}}if((k|0)==12)h[22908]=g;D_(i|0);return}function gp(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;e=a+16|0;f=b[(c[e>>2]|0)+136>>1]&14;d=f&65535;if((f&65535)>8){if(f<<16>>16==12){if(Wm(a,22,10)|0){c[46363]=2;h=5}}else h=5;do if((h|0)==5)if(!(b[(c[e>>2]|0)+136>>1]&1)){Ym(a,d)|0;break}else{Pw(0,90912,g)|0;d=2;break}while(0);c[46363]=0}if((c[46367]|0)<1)Ym(a,d)|0;l=i;return}function hp(a){a=a|0;var b=0.0,d=0.0,e=0;e=l;l=l+16|0;c[45704]=1;c[45705]=1;c[45707]=-1;c[45709]=50;h[22860]=0.0;h[22855]=0.0;h[22856]=1.0;c[45708]=KL(a,nx(a,0,90975,0)|0,600,0)|0;d=+LL(a,nx(a,0,90983,0)|0,.3,0.0);h[22857]=d;h[1371]=d;if(-1.0==-1.0)b=+LL(a,nx(a,0,90985,0)|0,-1.0,0.0);else b=-1.0;h[22858]=b;c[45706]=1;a=om(a,2,182824)|0;c[45718]=a;if(!a){Pw(0,90988,e)|0;c[45706]=2}c[45734]=(O(c[45708]|0,c[45709]|0)|0)/100|0;d=+h[22857];h[22862]=d*d;if(c[45704]|0){b=+h[22860];if(b<=0.0){b=d*3.0;h[22860]=b}h[22861]=b*b}l=e;return}function ip(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0,g=0,i=0,j=0;j=l;l=l+16|0;d=j;g=c[c[(c[a+16>>2]|0)+140>>2]>>2]|0;i=jp(a,b)|0;kp(d,a,g);e=+h[d>>3];f=+h[d+8>>3];a:do if(!(c[45704]|0)){b=0;while(1){if((b|0)>=(c[45735]|0))break a;np(a,+lp(b),g);b=b+1|0}}else{d=Ku(ay(a)|0)|0;Pu(d,ay(a)|0);b=0;while(1){if((b|0)>=(c[45735]|0))break;mp(a,+lp(b),g,d);b=b+1|0}Ru(d)}while(0);b:do if(e!=0.0|f!=0.0){b=Sy(a)|0;while(1){if(!b)break b;g=c[(c[b+16>>2]|0)+132>>2]|0;h[g>>3]=+h[g>>3]+e;g=g+8|0;h[g>>3]=+h[g>>3]+f;b=Ty(a,b)|0}}while(0);if(i|0)op();l=j;return}function jp(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,g=0,i=0,j=0;if(+h[22858]==-1.0){i=ay(a)|0;d=+h[22857];h[22858]=+h[22856]*.2*d*+C(+(+(i|0)));i=1}else{i=0;d=+h[22857]}g=c[45734]|0;h[b+8>>3]=+lp(g);h[b+16>>3]=d;h[b+24>>3]=+h[22855];e=c[45708]|0;a=e-g|0;c[b>>2]=a;f=c[45707]|0;do if((f|0)>-1){if((f|0)<=(g|0)){c[45735]=f;a=0;j=10;break}if((f|0)<=(e|0)){c[45735]=g;a=f-g|0;j=10}}else{c[45735]=g;j=10}while(0);if((j|0)==10)c[b+32>>2]=a;return i|0}function kp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0.0,j=0.0,k=0,l=0.0,m=0.0,n=0,o=0.0,p=0.0,q=0,r=0,s=0.0,t=0.0,u=0,v=0,w=0.0,x=0,y=0,z=0;v=ay(d)|0;x=c[(c[(c[d+16>>2]|0)+140>>2]|0)+4>>2]|0;u=Sy(d)|0;q=0;r=0;g=0;k=0;n=0;while(1){if(!u)break;f=c[u+16>>2]|0;if(!(a[f+119>>0]|0))f=r;else{f=c[f+132>>2]|0;i=+h[f>>3];if(!q){k=~~i;g=~~+h[f+8>>3];n=g;f=k}else{p=+(r|0);s=+h[f+8>>3];t=+(g|0);w=+(k|0);o=+(n|0);n=~~(s>o?s:o);f=~~(i<p?i:p);g=~~(s<t?s:t);k=~~(i>w?i:w)}q=q+1|0}u=Ty(d,u)|0;r=f}i=+h[22857]*(+C(+(+(v-x|0)))+1.0);s=i*.6;h[22864]=s;h[22863]=s;if((q|0)!=1)if((q|0)>1){t=+(k+r|0)*.5;w=+(n+g|0)*.5;o=+(k-r|0);p=o*1.2;l=+(n-g|0);m=l*1.2;i=i*2.4*s;j=m*p/i;do if(!(j>=1.0)){if(j>0.0){i=+C(+j)*2.0;j=p/i;h[22863]=j;i=m/i;z=20;break}if(p>0.0){j=o*.6;h[22863]=j;i=i/p*.5;z=20;break}if(m>0.0){j=i/m*.5;h[22863]=j;i=l*.6;z=20}else{i=s;j=s}}else{j=o*.6;h[22863]=j;i=l*.6;z=20}while(0);if((z|0)==20)h[22864]=i;s=+K(+i,+j);j=j/+E(+s);h[22863]=j;i=i/+F(+s);h[22864]=i}else{t=0.0;w=0.0;j=s;i=s}else{t=+(r|0);w=+(g|0);j=s;i=s}h[22865]=j*j;h[22866]=i*i;if((c[45718]|0)==2)f=c[45706]|0;else{f=H1()|0;f=(db(0)|0)^f}i2(f);a:do if(!e){e=Sy(d)|0;if(!q)while(1){if(!e)break a;s=+h[22863];s=(+k2()*2.0+-1.0)*s;z=e+16|0;h[c[(c[z>>2]|0)+132>>2]>>3]=s;s=+h[22864];s=(+k2()*2.0+-1.0)*s;h[(c[(c[z>>2]|0)+132>>2]|0)+8>>3]=s;e=Ty(d,e)|0}while(1){if(!e)break a;f=e+16|0;g=c[f>>2]|0;if(!(a[g+119>>0]|0)){s=+h[22863];s=(+k2()*2.0+-1.0)*s;h[c[(c[f>>2]|0)+132>>2]>>3]=s;s=+h[22864];s=(+k2()*2.0+-1.0)*s;h[(c[(c[f>>2]|0)+132>>2]|0)+8>>3]=s}else{z=c[g+132>>2]|0;h[z>>3]=+h[z>>3]-t;z=z+8|0;h[z>>3]=+h[z>>3]-w}e=Ty(d,e)|0}}else{while(1){if(!(c[e>>2]|0))break;u=e+8|0;s=+E(+(+h[u>>3]))*+h[22863]+t;x=c[(c[e+4>>2]|0)+16>>2]|0;v=c[x+132>>2]|0;h[v>>3]=s;h[v+8>>3]=+F(+(+h[u>>3]))*+h[22864]+w;a[x+119>>0]=1;e=e+16|0}l=t*.1;m=w*.1;r=Sy(d)|0;while(1){if(!r)break a;q=r+16|0;e=c[q>>2]|0;if(!((c[(c[e+112>>2]|0)+8>>2]|0)==0?!(c[e+212>>2]|0):0))z=32;do if((z|0)==32){z=0;if(a[e+119>>0]|0){x=c[e+132>>2]|0;h[x>>3]=+h[x>>3]-t;x=x+8|0;h[x>>3]=+h[x>>3]-w;break}n=Jx(d,r)|0;e=0;j=0.0;i=0.0;while(1){if(!n)break;k=c[n>>2]&3;f=(k|0)==2?n:n+-48|0;g=c[f+40>>2]|0;k=(k|0)==3?n:n+48|0;do if((g|0)!=(c[k+40>>2]|0)?(y=c[(c[((g|0)==(r|0)?k:f)+40>>2]|0)+16>>2]|0,(a[y+119>>0]|0)!=0):0)if(!e){x=c[y+132>>2]|0;e=1;j=+h[x>>3];i=+h[x+8>>3];break}else{p=+(e|0);x=c[y+132>>2]|0;e=e+1|0;s=+(e|0);j=(+h[x>>3]+j*p)/s;i=(+h[x+8>>3]+i*p)/s;break}while(0);n=Kx(d,n,r)|0}do if((e|0)<=1)if((e|0)==1){f=c[q>>2]|0;e=c[f+132>>2]|0;h[e>>3]=j*.98+l;i=i*.9+m;break}else{i=+k2()*6.283185307179586;s=+k2()*.9;p=s*+h[22863]*+E(+i);f=c[q>>2]|0;e=c[f+132>>2]|0;h[e>>3]=p;i=+h[22864]*s*+F(+i);break}else{f=c[q>>2]|0;e=c[f+132>>2]|0;h[e>>3]=j}while(0);h[e+8>>3]=i;a[f+119>>0]=1}while(0);r=Ty(d,r)|0}}while(0);h[b>>3]=t;h[b+8>>3]=w;return}function lp(a){a=a|0;var b=0;b=c[45708]|0;return +(+h[22858]*+(b-a|0)/+(b|0))}function mp(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,i=0,j=0.0;if(!(b<=0.0)){Qu(e);f=Sy(a)|0;while(1){if(!f)break;i=c[f+16>>2]|0;g=(c[i+112>>2]|0)+16|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;i=c[i+132>>2]|0;j=+h[22860];g=~~+A(+(+h[i>>3]/j));Tu(e,g,~~+A(+(+h[i+8>>3]/j)),f);f=Ty(a,f)|0}g=Sy(a)|0;while(1){if(!g)break;f=Ex(a,g)|0;while(1){if(!f)break;i=c[((c[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0;if((g|0)!=(i|0))qp(g,i,f);f=Gx(a,f)|0}g=Ty(a,g)|0}Vu(e,23);rp(a,b,d)}return}function np(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0;if(!(b<=0.0)){e=Sy(a)|0;while(1){if(!e)break;g=(c[(c[e+16>>2]|0)+112>>2]|0)+16|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;e=Ty(a,e)|0}g=Sy(a)|0;while(1){if(!g)break;else e=g;while(1){e=Ty(a,e)|0;if(!e)break;pp(g,e)}e=Ex(a,g)|0;while(1){if(!e)break;f=c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0;if((g|0)!=(f|0))qp(g,f,e);e=Gx(a,e)|0}g=Ty(a,g)|0}rp(a,b,d)}return}function op(){h[22858]=-1.0;return}function pp(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0,g=0;g=c[(c[b+16>>2]|0)+132>>2]|0;f=c[(c[a+16>>2]|0)+132>>2]|0;d=+h[g>>3]-+h[f>>3];e=+h[g+8>>3]-+h[f+8>>3];sp(a,b,d,e,e*e+d*d);return}function qp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,g=0.0,i=0.0,j=0,k=0;j=b+16|0;k=c[(c[j>>2]|0)+132>>2]|0;a=a+16|0;b=c[(c[a>>2]|0)+132>>2]|0;e=+h[k>>3]-+h[b>>3];f=+h[k+8>>3]-+h[b+8>>3];g=e;i=f;e=e*e;f=f*f;while(1){e=e+f;if(!(e==0.0))break;e=+(5-((g2()|0)%10|0)|0);f=+(5-((g2()|0)%10|0)|0);g=e;i=f;e=e*e;f=f*f}f=+C(+e);b=c[d+16>>2]|0;e=+h[b+128>>3];if(!(c[45705]|0))e=e*f/+h[b+136>>3];else e=(f-+h[b+136>>3])*e/f;g=e*g;k=c[(c[j>>2]|0)+112>>2]|0;j=k+16|0;h[j>>3]=+h[j>>3]-g;i=e*i;k=k+24|0;h[k>>3]=+h[k>>3]-i;k=c[(c[a>>2]|0)+112>>2]|0;j=k+16|0;h[j>>3]=+h[j>>3]+g;k=k+24|0;h[k>>3]=+h[k>>3]+i;return}function rp(b,d,e){b=b|0;d=+d;e=e|0;var f=0.0,g=0.0,i=0.0,j=0.0,k=0,l=0,m=0,n=0,o=0.0;o=d*d;n=(e|0)==0;m=Sy(b)|0;while(1){if(!m)break;l=c[m+16>>2]|0;if(!(a[l+119>>0]&2)){k=c[l+112>>2]|0;f=+h[k+16>>3];i=+h[k+24>>3];g=i*i+f*f;if(g<o){e=c[l+132>>2]|0;j=+h[e>>3]+f;f=+h[e+8>>3]+i}else{g=d/+C(+g);e=c[l+132>>2]|0;j=+h[e>>3]+g*f;f=+h[e+8>>3]+g*i}do if(!n){g=+C(+(f*f/+h[22866]+j*j/+h[22865]));if((c[k+8>>2]|0)==0?(c[l+212>>2]|0)==0:0){h[e>>3]=j/g;f=f/g;break}if(!(g>=1.0)){h[e>>3]=j;break}else{h[e>>3]=j*.95/g;f=f*.95/g;break}}else h[e>>3]=j;while(0);h[e+8>>3]=f}m=Ty(b,m)|0}return}function sp(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=+e;f=+f;var g=0.0,i=0,j=0;g=d;d=f;while(1){if(!(d==0.0))break;d=+(5-((g2()|0)%10|0)|0);e=+(5-((g2()|0)%10|0)|0);g=d;d=e*e+d*d}if(!(c[45705]|0))d=+h[22862]/d;else{f=+C(+d);d=+h[22862]/(f*d)}j=c[a+16>>2]|0;a=c[j+112>>2]|0;if(((c[a+8>>2]|0)==0?(c[j+212>>2]|0)==0:0)?(i=c[b+16>>2]|0,(c[(c[i+112>>2]|0)+8>>2]|0)==0):0)d=(c[i+212>>2]|0)==0?d*10.0:d;f=d*g;j=c[(c[b+16>>2]|0)+112>>2]|0;b=j+16|0;h[b>>3]=+h[b>>3]+f;g=d*e;j=j+24|0;h[j>>3]=+h[j>>3]+g;j=a+16|0;h[j>>3]=+h[j>>3]-f;j=a+24|0;h[j>>3]=+h[j>>3]-g;return}function tp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=c[b+8>>2]|0;g=c[b>>2]|0;e=c[b+4>>2]|0;b=f;while(1){if(!b)break;a=f;while(1){if(!a)break;if((b|0)!=(a|0))pp(c[b>>2]|0,c[a>>2]|0);a=c[a+4>>2]|0}b=c[b+4>>2]|0}h=g+-1|0;a=e+-1|0;up(d,h,a,f);up(d,h,e,f);b=e+1|0;up(d,h,b,f);up(d,g,a,f);up(d,g,b,f);g=g+1|0;up(d,g,a,f);up(d,g,e,f);up(d,g,b,f);return 0}function up(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0.0,j=0,k=0,l=0,m=0;a=Wu(a,b,d)|0;if((e|0)!=0&(a|0)!=0){k=a+8|0;do{d=c[e>>2]|0;j=d+16|0;a=k;while(1){a=c[a>>2]|0;if(!a)break;b=c[a>>2]|0;m=c[(c[b+16>>2]|0)+132>>2]|0;l=c[(c[j>>2]|0)+132>>2]|0;f=+h[m>>3]-+h[l>>3];g=+h[m+8>>3]-+h[l+8>>3];i=g*g+f*f;if(i<+h[22861])sp(d,b,f,g,i);a=a+4|0}e=c[e+4>>2]|0}while((e|0)!=0)}return}function vp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=xx(b,91095)|0;if(0)E1(91032,8,1,c[15686]|0)|0;if(!((e|0)!=0?(a[e>>0]|0)!=0:0))e=91041;f=A$(e,58)|0;do if(!f)f=0;else{if((f|0)!=(e|0)?((a[e>>0]|0)+-48|0)>>>0>=10:0){f=0;break}i=a2(e)|0;e=f+1|0;f=(i|0)>0?i:0}while(0);if(0){i=c[15686]|0;c[g>>2]=f;c[g+4>>2]=e;g1(i,91049,g)|0}if(!((f|0)!=0?!(wp(b,d,f)|0):0))sq(b,e)|0;l=h;return}function wp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;t=l;l=l+64|0;r=t;j=t+40|0;s=ay(b)|0;k=by(b)|0;qq(j,b);c[46072]=c[j>>2];c[46073]=c[j+4>>2];c[46074]=c[j+8>>2];if(a[184296]|0){g[46072]=+g[46072]*.013888888888888888;g[46073]=+g[46073]*.013888888888888888}f=xp(b)|0;a:do if(!f)f=0;else{j=r;i=j+40|0;do{c[j>>2]=c[d>>2];j=j+4|0;d=d+4|0}while((j|0)<(i|0));j=r+16|0;q=+h[j>>3];o=+(k|0)*2.0;p=1.0/+(O(s+-1|0,s)|0);i=0;n=q;while(1){if(!((f|0)!=0&(i|0)<(e|0)))break a;yp(s,r);m=+h[22868]*+h[170];h[22869]=m;h[22870]=o*m*p;d=0;while(1){if((d|0)>=(c[45742]|0))break;m=+zp(d);if(m<=0.0)break;f=Ap(b,m)|0;if(!f){f=0;break}else d=d+1|0}m=n+q;h[j>>3]=m;i=i+1|0;n=m}}while(0);l=t;return f|0}function xp(a){a=a|0;var b=0,c=0,d=0,e=0;b=0;e=Sy(a)|0;while(1){if(!e)break;else d=e;while(1){c=Ty(a,d)|0;if(!c)break;d=c;b=(Dp(e,c)|0)+b|0}e=Ty(a,e)|0}return b|0}function yp(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0.0;e=+h[b+16>>3];h[171]=e;c[344]=c[b>>2];f=+h[b+8>>3];h[22872]=f;c[45742]=c[b+32>>2];d=+h[b+24>>3];if(d>0.0)h[170]=d;h[22868]=e*e;if(f==0.0)h[22872]=+C(+(+(a|0)))*.2*e;return}function zp(a){a=a|0;var b=0;b=c[344]|0;return +(+h[22872]*+(b-a|0)/+(b|0))}function Ap(b,d){b=b|0;d=+d;var e=0,f=0,g=0,i=0.0,j=0,k=0.0,l=0.0,m=0.0;e=Sy(b)|0;while(1){if(!e)break;j=(c[(c[e+16>>2]|0)+112>>2]|0)+16|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;e=Ty(b,e)|0}e=0;j=Sy(b)|0;while(1){if(!j)break;else g=j;while(1){f=Ty(b,g)|0;if(!f)break;g=f;e=(Bp(j,f)|0)+e|0}f=Ex(b,j)|0;while(1){if(!f)break;Cp(j,c[((c[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0);f=Gx(b,f)|0}j=Ty(b,j)|0}a:do if(!e)e=0;else{m=d*d;g=Sy(b)|0;while(1){if(!g)break a;f=c[g+16>>2]|0;if((a[f+119>>0]|0)!=3){j=c[f+112>>2]|0;k=+h[j+16>>3];i=+h[j+24>>3];l=i*i+k*k;if(l<m){f=c[f+132>>2]|0;h[f>>3]=+h[f>>3]+k}else{l=+C(+l);f=c[f+132>>2]|0;h[f>>3]=+h[f>>3]+k*d/l;i=i*d/l}j=f+8|0;h[j>>3]=+h[j>>3]+i}g=Ty(b,g)|0}}while(0);return e|0}function Bp(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0,g=0;g=c[(c[b+16>>2]|0)+132>>2]|0;f=c[(c[a+16>>2]|0)+132>>2]|0;d=+h[g>>3]-+h[f>>3];e=+h[g+8>>3]-+h[f+8>>3];return Fp(a,b,d,e,e*e+d*d)|0}function Cp(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0,g=0.0,i=0,j=0.0,k=0.0,l=0,m=0;if(!(Dp(a,b)|0)){i=c[b+16>>2]|0;m=c[i+132>>2]|0;f=c[a+16>>2]|0;l=c[f+132>>2]|0;e=+h[m>>3]-+h[l>>3];d=+h[m+8>>3]-+h[l+8>>3];g=+C(+(d*d+e*e));j=+Ep(a);j=+Ep(b)+j;k=g-j;g=k*k/((+h[171]+j)*g);e=g*e;b=c[i+112>>2]|0;a=b+16|0;h[a>>3]=+h[a>>3]-e;d=g*d;b=b+24|0;h[b>>3]=+h[b>>3]-d;b=c[f+112>>2]|0;a=b+16|0;h[a>>3]=+h[a>>3]+e;b=b+24|0;h[b>>3]=+h[b>>3]+d}return}function Dp(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=0.0,k=0,l=0;k=c[d+16>>2]|0;l=c[k+132>>2]|0;d=c[b+16>>2]|0;b=c[d+132>>2]|0;i=+h[l>>3]-+h[b>>3];j=+h[l+8>>3]-+h[b+8>>3];j=j<0.0?-j:j;b=(a[184296]|0)==0;e=+h[d+32>>3];if(b){f=+g[46072];e=e*.5*f;f=+h[k+32>>3]*.5*f}else{f=+g[46072];e=e*.5+f;f=+h[k+32>>3]*.5+f}if(!((i<0.0?-i:i)<=f+e))d=0;else{e=+h[d+40>>3];if(b){i=+g[46073];f=e*.5*i;e=+h[k+40>>3]*.5*i}else{i=+g[46073];f=e*.5+i;e=+h[k+40>>3]*.5+i}d=j<=e+f&1}return d|0}function Ep(b){b=b|0;var d=0.0,e=0.0;b=c[b+16>>2]|0;d=+h[b+32>>3];if(!(a[184296]|0)){e=d*.5*+g[46072];d=+h[b+40>>3]*.5*+g[46073]}else{e=d*.5+ +g[46072];d=+h[b+40>>3]*.5+ +g[46073]}return +(+C(+(d*d+e*e)))}function Fp(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=+e;f=+f;var g=0,i=0;while(1){if(!(f==0.0))break;f=+(5-((g2()|0)%10|0)|0);e=+(5-((g2()|0)%10|0)|0);d=f;f=e*e+f*f}g=Dp(a,b)|0;f=((g|0)==0?+h[22870]:+h[22869])/f;d=f*d;b=c[(c[b+16>>2]|0)+112>>2]|0;i=b+16|0;h[i>>3]=+h[i>>3]+d;f=f*e;b=b+24|0;h[b>>3]=+h[b>>3]+f;b=c[(c[a+16>>2]|0)+112>>2]|0;a=b+16|0;h[a>>3]=+h[a>>3]-d;b=b+24|0;h[b>>3]=+h[b>>3]-f;return g|0}function Gp(a){a=a|0;$M(a,2);b[(c[a+16>>2]|0)+176>>1]=2;c[46366]=2;Hp(a);return}function Hp(a){a=a|0;var b=0,d=0,e=0,f=0;e=uH((ay(a)|0)<<2)|0;b=uH(((ay(a)|0)<<2)+4|0)|0;f=a+16|0;c[(c[f>>2]|0)+152>>2]=b;b=Sy(a)|0;d=0;while(1){if(!b)break;$l(b);c[(c[b+16>>2]|0)+112>>2]=e+(d<<2);c[(c[(c[f>>2]|0)+152>>2]|0)+(d<<2)>>2]=b;b=Ty(a,b)|0;d=d+1|0}d=Sy(a)|0;while(1){if(!d)break;b=Ex(a,d)|0;while(1){if(!b)break;Ip(b);b=Gx(a,b)|0}d=Ty(a,d)|0}return}function Ip(a){a=a|0;var b=0.0;Az(a,134378,176,1)|0;eM(a)|0;b=+LL(a,c[46404]|0,1.0,0.0);h[(c[a+16>>2]|0)+128>>3]=b;return}function Jp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n+4|0;k=n;a[m>>0]=a[18492]|0;a[m+1>>0]=a[18493]|0;a[m+2>>0]=a[18494]|0;a[m+3>>0]=a[18495]|0;m=Xx(91072,m,0)|0;Az(m,91080,280,1)|0;c[(c[b+16>>2]|0)+140>>2]=m;e=Sy(b)|0;while(1){if(!e)break;f=e+16|0;if(!(c[c[(c[f>>2]|0)+112>>2]>>2]|0)){j=Kp(m,ry(e)|0,e)|0;c[c[(c[f>>2]|0)+112>>2]>>2]=j}e=Ty(b,e)|0}f=Sy(b)|0;while(1){if(!f)break;e=Ex(b,f)|0;while(1){if(!e)break;h=c[e>>2]&3;g=c[c[(c[(c[((h|0)==3?e:e+48|0)+40>>2]|0)+16>>2]|0)+112>>2]>>2]|0;h=c[c[(c[(c[((h|0)==2?e:e+-48|0)+40>>2]|0)+16>>2]|0)+112>>2]>>2]|0;if((g|0)!=(h|0))Az(Rx(m,g,h,0,1)|0,134378,176,1)|0;e=Gx(b,e)|0}f=Ty(b,f)|0}j=oD(m,k,0)|0;f=0;while(1){if((f|0)>=(c[k>>2]|0))break;h=c[j+(f<<2)>>2]|0;e=Sy(h)|0;while(1){if(!e)break;g=Ex(b,c[c[(c[e+16>>2]|0)+112>>2]>>2]|0)|0;while(1){if(!g)break;i=c[c[(c[(c[((c[g>>2]&3|0)==2?g:g+-48|0)+40>>2]|0)+16>>2]|0)+112>>2]>>2]|0;if((e|0)!=(i|0)){i=Rx(m,e,i,0,1)|0;Az(i,134378,176,1)|0;Vx(h,i,1)|0}g=Gx(b,g)|0}e=Ty(h,e)|0}f=f+1|0}e=Sy(m)|0;while(1){if(!e)break;f=Ex(m,e)|0;while(1){if(!f)break;b=uH(8)|0;c[(c[f+16>>2]|0)+120>>2]=b;f=Gx(m,f)|0}e=Ty(m,e)|0}c[d>>2]=c[k>>2];l=n;return j|0}function Kp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;b=az(a,b,1)|0;Az(b,134365,304,1)|0;e=uH(40)|0;a=b+16|0;c[(c[a>>2]|0)+112>>2]=e;e=uH(c[46366]<<3)|0;a=c[a>>2]|0;c[a+132>>2]=e;e=c[d+16>>2]|0;h[a+88>>3]=+h[e+88>>3];h[a+96>>3]=+h[e+96>>3];h[a+80>>3]=+h[e+80>>3];c[c[a+112>>2]>>2]=d;return b|0}function Lp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+48|0;b=h+32|0;e=h;if(ay(a)|0){g=Jp(a,b)|0;f=c[b>>2]|0;b=c[g>>2]|0;if((f|0)==1){Xu(b,a);Mp(c[g>>2]|0);tq(a)|0}else{d=c[b+60>>2]|0;XD(a,2,8,e)|0;b=0;while(1){if((b|0)>=(f|0))break;i=c[g+(b<<2)>>2]|0;Xu(i,a);tq(i)|0;b=b+1|0}WD(f,g,d,e)|0;b=0;while(1){if((b|0)>=(f|0))break;Mp(c[g+(b<<2)>>2]|0);b=b+1|0}}D_(g)}l=h;return}function Mp(a){a=a|0;var b=0,d=0,e=0;b=Sy(a)|0;while(1){if(!b)break;d=c[b+16>>2]|0;e=c[d+132>>2]|0;d=c[(c[(c[c[d+112>>2]>>2]|0)+16>>2]|0)+132>>2]|0;h[d>>3]=+h[e>>3];h[d+8>>3]=+h[e+8>>3];b=Ty(a,b)|0}return}function Np(a){a=a|0;if(ay(a)|0){Gp(a);Lp(a);D_(c[(c[(Sy(a)|0)+16>>2]|0)+112>>2]|0);hn(a);eJ(a)}return}function Op(a){a=a|0;var b=0,d=0,e=0;b=Sy(a)|0;if(b|0){e=a+16|0;Pp(c[(c[e>>2]|0)+140>>2]|0);while(1){if(!b)break;d=Ex(a,b)|0;while(1){if(!d)break;JM(d);d=Gx(a,d)|0}HM(b);b=Ty(a,b)|0}D_(c[(c[e>>2]|0)+152>>2]|0);if((fz(a)|0)!=(a|0))Gz(a,0,134401)}return}function Pp(a){a=a|0;var b=0,d=0;d=Sy(a)|0;while(1){if(!d)break;b=Ex(a,d)|0;while(1){if(!b)break;D_(c[(c[b+16>>2]|0)+120>>2]|0);b=Gx(a,b)|0}b=d+16|0;D_(c[(c[b>>2]|0)+112>>2]|0);D_(c[(c[b>>2]|0)+132>>2]|0);d=Ty(a,d)|0}$x(a)|0;return}function Qp(a){a=a|0;var b=0,d=0,e=0.0,f=0,g=0.0,i=0.0,j=0.0,k=0,m=0,n=0,o=0.0,p=0.0;m=l;l=l+16|0;k=m;a:do if(Rp(a,k)|0){b=c[(c[(Sy(a)|0)+16>>2]|0)+132>>2]|0;g=+h[b>>3];e=+h[b+8>>3];b=Sy(a)|0;while(1){if(!b)break;f=c[(c[b+16>>2]|0)+132>>2]|0;h[f>>3]=+h[f>>3]-g;f=f+8|0;h[f>>3]=+h[f>>3]-e;b=Ty(a,b)|0}b=(g!=0.0|e!=0.0)&1;d=Sy(a)|0;while(1){if(!d)break a;f=Ex(a,d)|0;if(f|0)break;d=Ty(a,d)|0}n=c[f>>2]&3;d=c[(c[(c[((n|0)==2?f:f+-48|0)+40>>2]|0)+16>>2]|0)+132>>2]|0;f=c[(c[(c[((n|0)==3?f:f+48|0)+40>>2]|0)+16>>2]|0)+132>>2]|0;i=+h[f+8>>3];j=+h[f>>3];e=+K(+(+h[d+8>>3]-i),+(+h[d>>3]-j));e=+h[k>>3]-e;h[k>>3]=e;if(e!=0.0){g=+E(+e);e=+F(+e);b=Sy(a)|0;while(1){if(!b){b=1;break a}k=c[(c[b+16>>2]|0)+132>>2]|0;p=+h[k>>3]-j;n=k+8|0;o=+h[n>>3]-i;h[k>>3]=p*g+j-o*e;h[n>>3]=p*e+i+o*g;b=Ty(a,b)|0}}}else b=0;while(0);l=m;return b|0}function Rp(b,d){b=b|0;d=d|0;var e=0.0,f=0,g=0;g=l;l=l+16|0;f=g;b=xx(b,91085)|0;do if((b|0)!=0?(a[b>>0]|0)!=0:0){e=+c2(b,f);if((c[f>>2]|0)==(b|0))if(!((QL(b)|0)<<24>>24)){b=0;break}else e=0.0;while(1){if(!(e>180.0))break;e=e+-360.0}while(1){if(!(e<=-180.0))break;e=e+360.0}h[d>>3]=e*.017453292519943295;b=1}else b=0;while(0);l=g;return b|0}function Sp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xx(a,91095)|0;return Tp(a,(d|0)==0?(c|0?c:191979):d,b)|0}function Tp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+32|0;m=n+16|0;j=n+8|0;i=n;if((d|0)!=0?(a[d>>0]|0)!=0:0){f=17792;while(1){g=c[f+4>>2]|0;if(!g)break;if(!(V$(d,g,c[f+8>>2]|0)|0)){k=6;break}f=f+16|0}if((k|0)==6){if(!(c[f+12>>2]|0)){c[i>>2]=g;Pw(0,91103,i)|0;f=17792}i=c[f>>2]|0;c[e>>2]=i;c[e+4>>2]=c[f+12>>2];if((i|0)==18)Up(b,d+(c[f+8>>2]|0)|0,e)}if(!(c[f+4>>2]|0)){f=RL(d,63)|0;if(f<<24>>24==63){c[j>>2]=d;Pw(0,91145,j)|0;f=0}else f=f&255;f=(f|0)==0;c[e>>2]=f&1;f=f?91192:132627;k=15}}else{c[e>>2]=0;f=132627;k=15}if((k|0)==15)c[e+4>>2]=f;if(0){k=c[15686]|0;j=c[e+8>>2]|0;o=+h[e+16>>3];c[m>>2]=c[e+4>>2];c[m+4>>2]=j;h[m+8>>3]=o;g1(k,91200,m)|0}l=n;return e|0}function Up(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e;g=e+4|0;c[f>>2]=g;f=(N1(b,134313,f)|0)>0;b=c[g>>2]|0;c[d+8>>2]=f&(b|0)>-1?b:1e3;h[d+16>>3]=+LL(a,nx(a,0,91236,0)|0,-4.0,-1.0e10);l=e;return}function Vp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+16|0;g=h+8|0;f=h;do if((ay(a)|0)>=2){d=Qp(a)|0;d=(Wp(a)|0)+d|0;e=c[b>>2]|0;if(e){if(0){e=c[15686]|0;j=ry(a)|0;i=c[b+4>>2]|0;c[f>>2]=j;c[f+4>>2]=i;g1(e,91565,f)|0;e=c[b>>2]|0}if(e>>>0>2){switch(e|0){case 3:{e=Xq(a,1)|0;break}case 4:{e=Xq(a,0)|0;break}case 6:case 5:{e=0;break}case 10:case 9:case 7:case 8:case 14:case 13:case 11:case 12:{Hq(a,e)|0;e=0;break}case 15:{e=Xq(a,-1)|0;break}default:{c[g>>2]=c[b+4>>2];Pw(0,91588,g)|0;e=0}}d=e+d|0;break}if(Xp(a)|0){Yp();D_(c[46075]|0);c[46075]=0;break}Zp(a);if((c[b>>2]|0)==2)e=_p()|0;else e=$p()|0;if(e|0)aq();Yp();D_(c[46075]|0);c[46075]=0;d=e+d|0}}else d=0;while(0);l=h;return d|0}function Wp(a){a=a|0;var b=0,d=0.0,e=0,f=0,g=0.0,i=0,j=0,k=0,m=0;m=l;l=l+48|0;i=m+24|0;f=m+16|0;j=m;b=xx(a,137660)|0;a:do if(((b|0)!=0?(k=j+8|0,c[f>>2]=j,c[f+4>>2]=k,e=N1(b,102477,f)|0,(e|0)!=0):0)?(g=+h[j>>3],!(+B(+g)<1.0e-09)):0){if((e|0)!=1){d=+h[k>>3];if(+B(+d)<1.0e-09){b=0;break}}else{h[k>>3]=g;d=g}if(!(d==1.0&g==1.0)){if(0){f=c[15686]|0;h[i>>3]=g;h[i+8>>3]=d;g1(f,91748,i)|0}b=Sy(a)|0;while(1){if(!b){b=1;break a}i=c[(c[b+16>>2]|0)+132>>2]|0;h[i>>3]=+h[i>>3]*+h[j>>3];i=i+8|0;h[i>>3]=+h[i>>3]*+h[k>>3];b=Ty(a,b)|0}}else b=0}else b=0;while(0);l=m;return b|0}function Xp(b){b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;k=n;c[46084]=ay(b)|0;ur();c[46099]=vH((c[46084]|0)*96|0)|0;f=Sy(b)|0;d=c[46099]|0;qq(k,b);i=+g[k>>2];j=+g[k+4>>2];k=(a[k+8>>0]|0)==0;j=k?j:j*.013888888888888888;i=k?i:i*.013888888888888888;k=k?2:1;e=0;while(1){if((e|0)>=(c[46084]|0)){d=0;break}o=c[(c[f+16>>2]|0)+132>>2]|0;h[d+8>>3]=+h[o>>3];h[d+16>>3]=+h[o+8>>3];if(mb[k&3](d+40|0,f,i,j)|0){m=4;break}c[d+24>>2]=e;c[d+28>>2]=1;c[d>>2]=f;c[d+88>>2]=0;d=d+96|0;e=e+1|0;f=Ty(b,f)|0}if((m|0)==4){D_(c[46099]|0);c[46099]=0;d=1}l=n;return d|0}function Yp(){var a=0,b=0;a=c[46099]|0;b=0;while(1){if((b|0)>=(c[46084]|0))break;pt(a+40|0);a=a+96|0;b=b+1|0}ot();Wr();D_(c[46099]|0);return}function Zp(b){b=b|0;var d=0,e=0,f=0,g=0.0,i=0.0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0.0,t=0.0;o=l;l=l+32|0;m=o+16|0;n=o;p=c[46099]|0;i=+h[p+8>>3];k=+h[p+16>>3];f=c[46084]|0;d=p;e=1;g=+h[p+40>>3]+i;i=+h[p+56>>3]+i;j=+h[p+48>>3]+k;k=+h[p+64>>3]+k;while(1){if((e|0)>=(f|0))break;s=+h[d+104>>3];q=+h[d+112>>3];t=+h[d+136>>3]+s;r=+h[d+144>>3]+q;s=+h[d+152>>3]+s;q=+h[d+160>>3]+q;d=d+96|0;e=e+1|0;g=t<g?t:g;i=s>i?s:i;j=r<j?r:j;k=q>k?q:k}d=xx(b,91688)|0;if(d|0?a[d>>0]|0:0)h[173]=+b2(d);s=+h[173];t=s*(k-j);s=s*(i-g);h[m>>3]=g-s;h[m+8>>3]=j-t;h[n>>3]=s+i;h[n+8>>3]=t+k;iq(m,n);l=o;return}function _p(){var a=0,b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(bq(0)|0){cq();a=0;do{pq();a=a+1|0}while((bq(a)|0)!=0);if(!0)a=1;else{e=c[15686]|0;c[b>>2]=a;g1(e,91616,b)|0;a=1}}else a=0;l=d;return a|0}function $p(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;h=i+8|0;g=i;b=bq(0)|0;if(!b)a=0;else{cq();dq(0);Yt(0,1);a=0;e=0;d=0;while(1){fq();d=d+1|0;f=bq(d)|0;if(!f)break;b=(f|0)<(b|0)?0:e+1|0;c[46076]=1;if(b){gq();a=a+1|0}dq(1);Yt(0,1);e=b;b=f}if(0){f=c[15686]|0;c[g>>2]=d;g1(f,91616,g)|0;c[h>>2]=a;g1(f,91643,h)|0}hq();a=1}l=i;return a|0}function aq(){var a=0,b=0,d=0,e=0;d=c[46084]|0;a=c[46099]|0;b=0;while(1){if((b|0)>=(d|0))break;e=c[(c[(c[a>>2]|0)+16>>2]|0)+132>>2]|0;h[e>>3]=+h[a+8>>3];h[e+8>>3]=+h[a+16>>3];a=a+96|0;b=b+1|0}return}function bq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+48|0;o=q+24|0;n=q+8|0;p=q;d=c[46099]|0;e=c[46084]|0;b=0;while(1){if((b|0)>=(e|0)){f=0;b=0;break}c[d+(b*96|0)+32>>2]=0;b=b+1|0}a:while(1){if((b|0)>=(e+-1|0))break;m=d+96|0;b=b+1|0;j=d+8|0;k=d+40|0;i=d+32|0;g=m;h=b;while(1){if((h|0)>=(e|0)){d=m;continue a}e=g+8|0;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2];c[n+12>>2]=c[j+12>>2];c[o>>2]=c[e>>2];c[o+4>>2]=c[e+4>>2];c[o+8>>2]=c[e+8>>2];c[o+12>>2]=c[e+12>>2];if(!(yt(n,k,o,g+40|0)|0))d=f;else{c[i>>2]=1;c[g+32>>2]=1;d=f+1|0}g=g+96|0;h=h+1|0;f=d;e=c[46084]|0}}if(0>1){o=c[15686]|0;c[p>>2]=a;c[p+4>>2]=f;g1(o,91669,p)|0}l=q;return f|0}function cq(){var a=0,b=0,d=0,e=0.0,f=0,g=0.0,i=0,j=0,k=0,l=0,m=0,n=0;nq();k=c[46078]|0;l=c[46099]|0;a=c[46075]|0;a:while(1){i=a;if(a>>>0>=k>>>0)break;b=a+4|0;if(b>>>0>=k>>>0){a=b;continue}f=c[b>>2]|0;d=c[a>>2]|0;g=+h[d>>3];if(+h[f>>3]!=g){a=b;continue}e=+h[d+8>>3];if(+h[f+8>>3]!=e){a=b;continue}j=a+8|0;f=2;while(1){if(j>>>0>=k>>>0)break;d=c[j>>2]|0;if(!(+h[d>>3]==g)){m=11;break}if(!(+h[d+8>>3]==e)){m=11;break}j=j+4|0;f=f+1|0}if((m|0)==11){m=0;d=c[j>>2]|0;if(+h[d+8>>3]==e){e=(+h[d>>3]-g)/+(f|0);d=(((j>>>0>b>>>0?j:b)+-1+(0-i)|0)>>>2)+1|0;a=1;while(1){if((a|0)==(d|0)){a=j;continue a}i=c[b>>2]|0;h[i>>3]=+h[i>>3]+e*+(a|0);a=a+1|0;b=b+4|0}}}while(1){if(b>>>0>=j>>>0){a=j;continue a}f=c[a>>2]|0;n=c[f+16>>2]|0;i=c[b>>2]|0;d=c[i+16>>2]|0;h[i>>3]=(+h[l+(n*96|0)+56>>3]-+h[l+(n*96|0)+40>>3]+ +h[l+(d*96|0)+56>>3]-+h[l+(d*96|0)+40>>3])*.5+ +h[f>>3];b=b+4|0;a=a+4|0}}return}function dq(a){a=a|0;var b=0.0,d=0.0,e=0.0,f=0,g=0.0,i=0,j=0,k=0;if(a|0)nq();i=c[46075]|0;j=c[i>>2]|0;d=+h[j>>3];h[22887]=d;k=c[46084]|0;f=1;g=+h[j>>3];while(1){if((f|0)>=(k|0))break;a=c[i+(f<<2)>>2]|0;b=+h[a>>3];if(b<d){h[22887]=b;e=+h[a>>3]}else{e=b;b=d}f=f+1|0;d=b;g=e>g?e:g}e=+h[j+8>>3];h[22888]=e;h[22890]=+h[(c[i+(k+-1<<2)>>2]|0)+8>>3]-e;h[22889]=g-d;return}function eq(){var a=0;a=c[46077]|0;if(a>>>0<(c[46078]|0)>>>0){c[46077]=a+4;a=c[a>>2]|0}else a=0;return a|0}function fq(){var a=0,b=0,d=0;a=c[46099]|0;jq();d=(c[46076]|0)==0;b=0;while(1){if((b|0)>=(c[46084]|0))break;if(!(d?!(c[a+32>>2]|0):0))kq(a);a=a+96|0;b=b+1|0}return}function gq(){var a=0,b=0,c=0,d=0.0,e=0.0,f=0.0,g=0.0,i=0.0,j=0.0;a=l;l=l+32|0;c=a+16|0;b=a;j=+h[22883];i=+h[22881];g=+h[22884];e=+h[22882];d=(i-e)*.05;f=(j-g)*.05;h[b>>3]=f+j;h[b+8>>3]=i+d;h[c>>3]=g-f;h[c+8>>3]=e-d;iq(c,b);l=a;return}function hq(){Hr();Jr();Kt();nr();return}function iq(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,f=0.0;f=+h[a>>3];h[22884]=f;e=+h[b>>3];h[22883]=e;c=+h[a+8>>3];h[22882]=c;d=+h[b+8>>3];h[22881]=d;h[22873]=f;h[22875]=f;h[22877]=e;h[22879]=e;h[22880]=d;h[22876]=d;h[22878]=c;h[22874]=c;return}function jq(){var a=0,b=0.0,d=0.0,e=0.0,f=0.0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;m=c[46099]|0;g=m+8|0;f=+vr(g,182984);e=+vr(g,183e3);d=+vr(g,183016);a=1;b=+vr(g,183032);g=m;i=m;j=m;k=m;while(1){l=m+96|0;if((a|0)>=(c[46084]|0))break;q=m+104|0;r=+vr(q,182984);n=r<f;t=+vr(q,183016);p=t<d;s=+vr(q,183e3);o=s<e;u=+vr(q,183032);q=u<b;a=a+1|0;b=q?u:b;d=p?t:d;e=o?s:e;f=n?r:f;g=q?l:g;i=p?l:i;j=o?l:j;k=n?l:k;m=l}Xr(k+8|0,+h[22873],+h[22874]);Xr(i+8|0,+h[22877],+h[22878]);Xr(j+8|0,+h[22875],+h[22876]);Xr(g+8|0,+h[22879],+h[22880]);return}function kq(a){a=a|0;var b=0.0,d=0.0,e=0.0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0;p=l;l=l+64|0;j=p+48|0;i=p+32|0;g=p+16|0;m=p+8|0;n=p;k=c[a+88>>2]|0;o=k+8|0;b=0.0;d=0.0;e=0.0;k=c[k>>2]|0;while(1){f=c[k>>2]|0;if(!f)break;s=k+8|0;r=f+8|0;c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[g+12>>2]=c[o+12>>2];c[i>>2]=c[s>>2];c[i+4>>2]=c[s+4>>2];c[i+8>>2]=c[s+8>>2];c[i+12>>2]=c[s+12>>2];c[j>>2]=c[r>>2];c[j+4>>2]=c[r+4>>2];c[j+8>>2]=c[r+8>>2];c[j+12>>2]=c[r+12>>2];q=+lq(g,i,j);c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[g+12>>2]=c[o+12>>2];c[i>>2]=c[s>>2];c[i+4>>2]=c[s+4>>2];c[i+8>>2]=c[s+8>>2];c[i+12>>2]=c[s+12>>2];c[j>>2]=c[r>>2];c[j+4>>2]=c[r+4>>2];c[j+8>>2]=c[r+8>>2];c[j+12>>2]=c[r+12>>2];mq(g,i,j,m,n);b=+h[n>>3]*q+b;d=+h[m>>3]*q+d;e=q+e;k=f}h[a+8>>3]=d/e;h[a+16>>3]=b/e;l=p;return}function lq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0;d=+h[b+8>>3];f=+h[c+8>>3];e=+h[a+8>>3];return +(+B(+((f-e)*+h[b>>3]+(d-f)*+h[a>>3]+ +h[c>>3]*(e-d)))*.5)}function mq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;h[d>>3]=(+h[b>>3]+ +h[a>>3]+ +h[c>>3])*.3333333333333333;h[e>>3]=(+h[b+8>>3]+ +h[a+8>>3]+ +h[c+8>>3])*.3333333333333333;return}function nq(){var a=0,b=0,d=0,e=0;a=c[46075]|0;if(!a){a=vH(c[46084]<<2)|0;c[46075]=a;c[46078]=a+(c[46084]<<2)}d=c[46099]|0;Wr();e=c[46084]|0;b=0;while(1){if((b|0)>=(e|0))break;c[a>>2]=d+8;c[d+88>>2]=0;c[d+28>>2]=1;d=d+96|0;a=a+4|0;b=b+1|0}_0(c[46075]|0,e,4,68);c[46077]=c[46075];return}function oq(a,b){a=a|0;b=b|0;var d=0.0,e=0.0;a=c[a>>2]|0;b=c[b>>2]|0;d=+h[a+8>>3];e=+h[b+8>>3];if(!(d<e))if(!(d>e)){e=+h[a>>3];d=+h[b>>3];if(e<d)a=-1;else a=e>d&1}else a=1;else a=-1;return a|0}function pq(){var a=0,b=0,d=0,e=0;d=c[46084]|0;a=0;b=c[46099]|0;while(1){if((a|0)>=(d|0))break;e=b+8|0;h[e>>3]=+h[e>>3]*1.05;e=b+16|0;h[e>>3]=+h[e>>3]*1.05;a=a+1|0;b=b+96|0}return}function qq(b,e){b=b|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+48|0;k=m;j=m+24|0;f=xx(e,91700)|0;if(!((f|0)!=0?(rq(f,j,1.0,0.0)|0)!=0:0))i=3;do if((i|0)==3){e=xx(e,91704)|0;if(e|0?rq(e,j,.800000011920929,4.0)|0:0)break;g[j+4>>2]=4.0;g[j>>2]=4.0;a[j+8>>0]=1}while(0);if(0){i=c[15686]|0;o=+g[j>>2];n=+g[j+4>>2];c[k>>2]=d[j+8>>0];h[k+8>>3]=o;h[k+16>>3]=n;g1(i,91709,k)|0};c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];c[b+8>>2]=c[j+8>>2];l=m;return}function rq(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0;o=l;l=l+16|0;m=o;j=o+12|0;k=o+8|0;while(1){h=a[b>>0]|0;i=b+1|0;if(!(B$(h<<24>>24)|0))break;else b=i}p=h<<24>>24==43;h=d+8|0;a[h>>0]=p&1;c[m>>2]=j;c[m+4>>2]=k;switch(N1(p?i:b,91742,m)|0){case 0:{b=0;break}case 1:{c[k>>2]=c[j>>2];n=5;break}default:n=5}if((n|0)==5){do if(a[h>>0]|0){if(e>1.0){q=+g[j>>2]/e;g[d>>2]=q>f?f:q;e=+g[k>>2]/e;e=e>f?f:e;break}if(e<1.0){q=+g[j>>2]/e;g[d>>2]=q<f?f:q;e=+g[k>>2]/e;e=e<f?f:e;break}else{c[d>>2]=c[j>>2];e=+g[k>>2];break}}else{g[d>>2]=+g[j>>2]/e+1.0;e=+g[k>>2]/e+1.0}while(0);g[d+4>>2]=e;b=1}l=o;return b|0}function sq(a,b){a=a|0;b=b|0;var c=0,d=0;d=l;l=l+32|0;c=d;if((ay(a)|0)<2)a=0;else{Tp(a,b,c)|0;a=Vp(a,c)|0}l=d;return a|0}function tq(a){a=a|0;return sq(a,xx(a,91095)|0)|0}function uq(b,e){b=b|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+48|0;k=m;j=m+24|0;f=xx(e,91704)|0;if(!((f|0)!=0?(rq(f,j,1.0,0.0)|0)!=0:0))i=3;do if((i|0)==3){e=xx(e,91700)|0;if(e|0?rq(e,j,1.25,3.200000047683716)|0:0)break;g[j+4>>2]=3.200000047683716;g[j>>2]=3.200000047683716;a[j+8>>0]=1}while(0);if(0){i=c[15686]|0;o=+g[j>>2];n=+g[j+4>>2];c[k>>2]=d[j+8>>0];h[k+8>>3]=o;h[k+16>>3]=n;g1(i,91771,k)|0};c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];c[b+8>>2]=c[j+8>>2];l=m;return}function vq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;o=p;h=0;while(1){if((h|0)>=(d|0))break;c[e+(h<<2)>>2]=-1;h=h+1|0}c[e+(a<<2)>>2]=0;wq(f,a);a:do if(!(c[b+8>>2]|0)){h=2147483647;b:while(1){if(!((xq(f,o)|0)<<24>>24))break a;j=c[o>>2]|0;h=c[e+(j<<2)>>2]|0;i=b+(j*20|0)|0;j=b+(j*20|0)+4|0;k=h+1|0;a=1;while(1){if((a|0)>=(c[i>>2]|0))continue b;m=c[(c[j>>2]|0)+(a<<2)>>2]|0;n=e+(m<<2)|0;if((c[n>>2]|0)<0){c[n>>2]=k;yq(f,m)|0}a=a+1|0}}}else{h=2147483647;c:while(1){if(!((xq(f,o)|0)<<24>>24))break a;k=c[o>>2]|0;h=c[e+(k<<2)>>2]|0;i=b+(k*20|0)|0;j=b+(k*20|0)+4|0;k=b+(k*20|0)+8|0;a=1;while(1){if((a|0)>=(c[i>>2]|0))continue c;m=c[(c[j>>2]|0)+(a<<2)>>2]|0;n=e+(m<<2)|0;if((c[n>>2]|0)<0){c[n>>2]=h+~~+g[(c[k>>2]|0)+(a<<2)>>2];yq(f,m)|0}a=a+1|0}}}while(0);a=h+10|0;h=0;while(1){if((h|0)>=(d|0))break;i=e+(h<<2)|0;if((c[i>>2]|0)<0)c[i>>2]=a;h=h+1|0}l=p;return}function wq(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a+12>>2]=0;c[a+8>>2]=1;return}function xq(a,b){a=a|0;b=b|0;var d=0,e=0;d=a+12|0;e=c[d>>2]|0;if((e|0)<(c[a+8>>2]|0)){a=c[a>>2]|0;c[d>>2]=e+1;c[b>>2]=c[a+(e<<2)>>2];a=1}else a=0;return a|0}function yq(a,b){a=a|0;b=b|0;var d=0,e=0;d=a+8|0;e=c[d>>2]|0;if((e|0)<(c[a+4>>2]|0)){a=c[a>>2]|0;c[d>>2]=e+1;c[a+(e<<2)>>2]=b;a=1}else a=0;return a|0}function zq(a,b){a=a|0;b=b|0;c[a>>2]=vH(b<<2)|0;c[a+4>>2]=b;c[a+8>>2]=0;c[a+12>>2]=0;return}function Aq(a){a=a|0;D_(c[a>>2]|0);return}function Bq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,i=0;if(!0)g=0;else{E1(91804,25,1,c[15686]|0)|0;g=0}while(1){if((g|0)>=(a|0))break;i=b+(g<<2)|0;f=0;e=0.0;while(1){if((f|0)==(a|0))break;if((g|0)!=(f|0))e=+h[(c[i>>2]|0)+(f<<3)>>3]+e;f=f+1|0}h[(c[i>>2]|0)+(g<<3)>>3]=-e;g=g+1|0}return xs(b,d,a+-1|0)|0}function Cq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0.0;j=wn(b,b,0.0)|0;k=wn(b,b,0.0)|0;e=Sy(a)|0;while(1){if(!e)break;d=Jx(a,e)|0;while(1){if(!d)break;g=c[d>>2]&3;f=(c[c[((g|0)==3?d:d+48|0)+40>>2]>>2]|0)>>>4;g=(c[c[((g|0)==2?d:d+-48|0)+40>>2]>>2]|0)>>>4;if((f|0)!=(g|0)){l=-1.0/+h[(c[d+16>>2]|0)+136>>3];h[(c[j+(g<<2)>>2]|0)+(f<<3)>>3]=l;h[(c[j+(f<<2)>>2]|0)+(g<<3)>>3]=l}d=Kx(a,d,e)|0}e=Ty(a,e)|0}i=Bq(b,j,k)|0;a:do if(i|0){f=a+16|0;e=0;while(1){if((e|0)>=(b|0))break a;g=k+(e<<2)|0;d=0;while(1){if((d|0)==(b|0))break;a=c[g>>2]|0;h[(c[(c[(c[f>>2]|0)+160>>2]|0)+(e<<2)>>2]|0)+(d<<3)>>3]=+h[(c[k+(d<<2)>>2]|0)+(d<<3)>>3]+ +h[a+(e<<3)>>3]+ +h[a+(d<<3)>>3]*-2.0;d=d+1|0}e=e+1|0}}while(0);xn(j);xn(k);return i|0}function Dq(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+16|0;j=s;n=d<<3;o=vH(n)|0;p=vH(n)|0;q=vH(n)|0;k=vH(n)|0;m=vH(n)|0;n=vH(n)|0;Ps(d,c,n);Is(d,n);Is(d,b);Ks(a,d,b,k);Ms(d,n,k,o);Ps(d,o,p);i=f+-1|0;c=0;g=+Qs(d,o,o);while(1){if((c|0)>=(f|0)){c=0;break}if(!(+Rs(d,o)>e)){c=0;break}Ks(a,d,p,q);h=+Qs(d,p,q);if(h==0.0){c=0;break}h=g/h;Os(d,p,h,m);Ns(d,b,m,b);if((c|0)<(i|0)){Os(d,q,h,q);Ms(d,o,q,o);h=+Qs(d,o,o);if(g==0.0){r=7;break}Os(d,p,h/g,p);Ns(d,o,p,p);g=h}c=c+1|0}if((r|0)==7){Pw(1,91830,j)|0;c=1}D_(o);D_(p);D_(q);D_(k);D_(m);D_(n);l=s;return c|0}function Eq(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+16|0;j=s;o=d<<3;p=vH(o)|0;q=vH(o)|0;k=vH(o)|0;m=vH(o)|0;n=vH(o)|0;o=vH(o)|0;Ps(d,c,o);if(g<<24>>24){Is(d,o);Is(d,b)}Ls(a,d,b,m);Ms(d,o,m,p);Ps(d,p,q);g=f+-1|0;c=0;h=+Qs(d,p,p);while(1){if((c|0)>=(f|0)){c=0;break}if(!(+Rs(d,p)>e)){c=0;break}Ls(a,d,q,k);i=+Qs(d,q,k);if(i==0.0){c=0;break}i=h/i;Os(d,q,i,n);Ns(d,b,n,b);if((c|0)<(g|0)){Os(d,k,i,k);Ms(d,p,k,p);i=+Qs(d,p,p);if(h==0.0){r=9;break}Os(d,q,i/h,q);Ns(d,p,q,q);h=i}c=c+1|0}if((r|0)==9){Pw(1,91830,j)|0;c=1}D_(p);D_(q);D_(k);D_(m);D_(n);D_(o);l=s;return c|0}function Fq(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;j=q;k=d<<2;m=uH(k)|0;n=uH(k)|0;o=uH(k)|0;k=uH(k)|0;Ts(d,b);Ts(d,c);Us(a,d,b,k);Ts(d,k);Vs(d,c,k,m);Zs(d,m,n);i=f+-1|0;c=0;g=+_s(d,m,m);while(1){if((c|0)>=(f|0)){c=0;break}if(!(+bt(d,m)>e)){c=0;break}Ts(d,n);Ts(d,b);Ts(d,m);Us(a,d,n,o);Ts(d,o);h=+_s(d,n,o);if(h==0.0){c=0;break}h=g/h;Xs(d,b,h,n);if((c|0)<(i|0)){Xs(d,m,-h,o);h=+_s(d,m,m);if(g==0.0){p=7;break}Ys(d,n,h/g,n);Ws(d,m,n,n);g=h}c=c+1|0}if((p|0)==7){Pw(1,91830,j)|0;c=1}D_(m);D_(n);D_(o);D_(k);l=q;return c|0}function Gq(a,b,d,e,f,i,j,k,m,n){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;var o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0;M=l;l=l+48|0;F=M+24|0;E=M+16|0;D=M+8|0;C=M;J=M+40|0;K=M+36|0;H=M+32|0;s=j&4;c[J>>2]=0;c[K>>2]=0;a:do if(c[a+16>>2]|0){p=0;o=0;while(1){if((p|0)>=(b|0))break;t=c[a+(p*20|0)>>2]|0;u=a+(p*20|0)+16|0;r=1;while(1){if((r|0)>=(t|0))break;if(!(o<<24>>24))o=+g[(c[u>>2]|0)+(r<<2)>>2]!=0.0;else o=1;r=r+1|0;o=o&1}p=p+1|0}if(o<<24>>24){z=(s|0)!=0;if(z){r=e+4|0;b:do if((i|0)>2){o=i+-1|0;if((qn(a,b,d,r,f,o,j,k,15)|0)<0){o=-1;break a}p=e+(o<<2)|0;o=0;while(1){if((o|0)>=(b|0))break b;h[(c[p>>2]|0)+(o<<3)>>3]=+h[(c[r>>2]|0)+(o<<3)>>3];o=o+1|0}}while(0);y=c[e>>2]|0;w=c[r>>2]|0;if((kt(a,b,w,b)|0)==0?(kv(a,b,.01,.1,w,J,K,H)|0)==0:0){x=c[H>>2]|0;if((x|0)<1){o=qn(a,b,d,e,f,i,j,k,m)|0;break}c:do if(n>0.0){s=c[J>>2]|0;t=c[K>>2]|0;u=x+-1|0;q=0.0;r=0;while(1){if((r|0)>=(x|0))break c;o=c[t+(r<<2)>>2]|0;A=n-q-+h[w+(c[s+(o<<2)>>2]<<3)>>3]+ +h[w+(c[s+(o+-1<<2)>>2]<<3)>>3];q=(A<0.0?0.0:A)+q;if((r|0)<(u|0))p=c[t+(r+1<<2)>>2]|0;else p=b;while(1){if((o|0)>=(p|0))break;I=w+(c[s+(o<<2)>>2]<<3)|0;h[I>>3]=+h[I>>3]+q;o=o+1|0}r=r+1|0}}while(0);if((i|0)==2?(Qt(a,b,w,y,+h[22909])|0)!=0:0){p=0;o=-1}else L=33}else{p=0;o=-1}}else{kn(a,b,i,e,f)|0;if(!(kv(a,b,.01,.1,0,J,K,H)|0))L=33;else{p=0;o=-1}}d:do if((L|0)==33){if((b|0)==1){o=0;break a}I=vH(c[H>>2]<<2)|0;if(!m){o=0;break a}if(0)EL();switch(k|0){case 2:{if(0)E1(91878,24,1,c[15686]|0)|0;o=pn(a,b)|0;L=46;break}case 1:{o=ln(a,b)|0;if(!o){Pw(0,91903,C)|0;Pw(3,91952,D)|0;L=47}else G=o;break}case 3:{if(0)E1(92005,21,1,c[15686]|0)|0;o=mn(a,b)|0;L=46;break}default:L=47}if((L|0)==46)if(!o)L=47;else G=o;if((L|0)==47){if(0)E1(92027,26,1,c[15686]|0)|0;G=on(a,b)|0}if(0){a=c[15686]|0;h[E>>3]=+FL();g1(a,92054,E)|0;E1(92066,25,1,a)|0;EL()}a=b+-1|0;y=(O(a,b)|0)/2|0;E=y+b|0;e:do if(!z){q=1.0;p=0;while(1){if((p|0)>=(i|0))break;r=e+(p<<2)|0;o=0;while(1){if((o|0)>=(b|0))break;A=+B(+(+h[(c[r>>2]|0)+(o<<3)>>3]));q=A>q?A:q;o=o+1|0}p=p+1|0}q=1.0/q;p=0;while(1){if((p|0)>=(i|0))break e;r=e+(p<<2)|0;o=0;while(1){if((o|0)>=(b|0))break;D=(c[r>>2]|0)+(o<<3)|0;h[D>>3]=+h[D>>3]*(10.0*q);o=o+1|0}p=p+1|0}}while(0);f:do if(n>0.0){v=+(y|0);o=0;q=0.0;s=0;g:while(1){if((s|0)>=(a|0))break;t=s+1|0;r=o;p=t;while(1){o=r+1|0;if((p|0)>=(b|0)){s=t;continue g}A=+gs(e,i,s,p);r=o;q=A/+g[G+(o<<2)>>2]+q;p=p+1|0}}q=q/v;o=0;while(1){if((o|0)>=(E|0)){o=0;break f}D=G+(o<<2)|0;g[D>>2]=+g[D>>2]*q;o=o+1|0}}else o=0;while(0);while(1){if((o|0)>=(i|0))break;Is(b,c[e+(o<<2)>>2]|0);o=o+1|0}p=c[e+4>>2]|0;q=+h[p>>3];o=0;while(1){if((o|0)>=(b|0))break;D=p+(o<<3)|0;h[D>>3]=+h[D>>3]-q;o=o+1|0}u=i<<2;D=vH(u)|0;x=b<<2;w=O(x,i)|0;r=vH(w)|0;o=0;while(1){if((o|0)>=(i|0))break;s=r+((O(o,b)|0)<<2)|0;c[D+(o<<2)>>2]=s;t=e+(o<<2)|0;p=0;while(1){if((p|0)>=(b|0))break;g[s+(p<<2)>>2]=+h[(c[t>>2]|0)+(p<<3)>>3];p=p+1|0}o=o+1|0}v=+(y|0);if(0){C=c[15686]|0;h[F>>3]=+FL();g1(C,92092,F)|0}ct(E,G);dt(E,G);C=vH(b<<3)|0;$s(b,0.0,C);o=0;r=0;while(1){if((r|0)>=(a|0)){o=b;p=0;r=0;break}s=b-r|0;q=0.0;p=1;while(1){o=o+1|0;if((p|0)>=(s|0))break;A=+g[G+(o<<2)>>2];F=C+(p+r<<3)|0;h[F>>3]=+h[F>>3]-A;q=q+A;p=p+1|0}F=C+(r<<3)|0;h[F>>3]=+h[F>>3]-q;r=r+1|0}while(1){if((p|0)>=(b|0))break;g[G+(r<<2)>>2]=+h[C+(p<<3)>>3];F=o+r|0;o=o+-1|0;p=p+1|0;r=F}k=vH(u)|0;c[k>>2]=vH(w)|0;o=1;while(1){if((o|0)>=(i|0))break;c[k+(o<<2)>>2]=(c[k>>2]|0)+((O(o,b)|0)<<2);o=o+1|0}z=vH(x)|0;f=vH(x)|0;j=vH(E<<2)|0;p=Et(G,b)|0;d=Jt(G,b,c[J>>2]|0,c[K>>2]|0,c[H>>2]|0)|0;y=k+4|0;r=0;A=1797693134862315708145274.0e284;o=0;while(1){if(!(r<<24>>24==0&(o|0)<(m|0)))break;$s(b,0.0,C);et(E,G,j);w=0;t=0;while(1){if((w|0)>=(a|0)){r=0;s=b;t=0;break}x=b-w+-1|0;at(b,0.0,f);r=0;while(1){if((r|0)>=(i|0))break;H=D+(r<<2)|0;at(x,+g[(c[H>>2]|0)+(w<<2)>>2],z);Xs(x,z,-1.0,(c[H>>2]|0)+(w<<2)+4|0);ct(x,z);Ws(x,z,f,f);r=r+1|0}ft(x,f);r=0;while(1){if((r|0)>=(x|0))break;s=f+(r<<2)|0;q=+g[s>>2];if(q>=3402823466385288598117041.0e14|q<0.0)g[s>>2]=0.0;r=r+1|0}u=w+1|0;q=0.0;r=t;s=0;while(1){r=r+1|0;if((s|0)>=(x|0))break;H=j+(r<<2)|0;N=+g[H>>2]*+g[f+(s<<2)>>2];g[H>>2]=N;H=C+(u+s<<3)|0;h[H>>3]=+h[H>>3]-N;q=q+N;s=s+1|0}t=C+(w<<3)|0;h[t>>3]=+h[t>>3]-q;w=u;t=r}while(1){if((r|0)>=(b|0)){r=0;break}g[j+(t<<2)>>2]=+h[C+(r<<3)>>3];H=s+t|0;r=r+1|0;s=s+-1|0;t=H}while(1){if((r|0)>=(i|0)){q=0.0;r=0;break}Us(j,b,c[D+(r<<2)>>2]|0,c[k+(r<<2)>>2]|0);r=r+1|0}while(1){if((r|0)>=(i|0))break;q=+_s(b,c[D+(r<<2)>>2]|0,c[k+(r<<2)>>2]|0)+q;r=r+1|0}q=q*2.0+v;r=0;while(1){if((r|0)>=(i|0))break;H=D+(r<<2)|0;Us(G,b,c[H>>2]|0,z);q=q-+_s(b,c[H>>2]|0,z);r=r+1|0}N=+B(+(q-A))/+B(+(A+1.0e-10));r=((o|0)>1&q>A|N<+h[22909])&1;s=0;while(1){if((s|0)>=(i|0))break;if((s|0)!=1){if(Fq(G,c[D+(s<<2)>>2]|0,c[k+(s<<2)>>2]|0,b,.001,b)|0){o=-1;break d}}else Ft(d,c[y>>2]|0,D,i,1,15,I,n)|0;s=s+1|0}A=q;o=o+1|0}D_(I);It(d);if(D|0){r=0;while(1){if((r|0)>=(i|0))break;t=D+(r<<2)|0;u=e+(r<<2)|0;s=0;while(1){if((s|0)>=(b|0))break;h[(c[u>>2]|0)+(s<<3)>>3]=+g[(c[t>>2]|0)+(s<<2)>>2];s=s+1|0}r=r+1|0}D_(c[D>>2]|0);D_(D)}if(k|0){D_(c[k>>2]|0);D_(k)}D_(z);D_(f);D_(C);D_(G);D_(j)}while(0);D_(c[J>>2]|0);D_(c[K>>2]|0);if(p){D_(c[p>>2]|0);D_(p)}}else L=10}else L=10;while(0);if((L|0)==10)o=qn(a,b,d,e,f,i,j,k,m)|0;l=M;return o|0}function Hq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0;m=l;l=l+48|0;f=m+24|0;g=m+12|0;d=m;i=ay(a)|0;k=vH(i*48|0)|0;qq(d,a);c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];d=Sy(a)|0;e=k;while(1){if(!d)break;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];Iq(d,e,f);d=Ty(a,d)|0;e=e+48|0}a:do if(!(Jq(k,i)|0))d=0;else{switch(b|0){case 9:{Lq(a,k,i,69,1);Nq(a,k,i,70,1);d=0;e=k;break}case 10:{Nq(a,k,i,70,1);Lq(a,k,i,69,1);d=0;e=k;break}case 7:{Lq(a,k,i,71,1);Nq(a,k,i,70,1);j=9;break}case 8:{j=9;break}case 13:{j=10;break}case 14:{Nq(a,k,i,70,0);Lq(a,k,i,69,0);d=0;e=k;break}case 12:{Nq(a,k,i,72,0);Lq(a,k,i,69,0);d=0;e=k;break}default:{Lq(a,k,i,71,0);Nq(a,k,i,70,0);d=0;e=k}}if((j|0)==9){Nq(a,k,i,72,1);Lq(a,k,i,69,1);j=10}if((j|0)==10){Lq(a,k,i,69,0);Nq(a,k,i,70,0);d=0;e=k}while(1){if((d|0)>=(i|0)){d=1;break a}g=c[e+16>>2]|0;j=c[(c[(c[e+20>>2]|0)+16>>2]|0)+132>>2]|0;h[j>>3]=+(c[e+12>>2]|0)*1.3888888888888887e-03;h[j+8>>3]=+(g|0)*1.3888888888888887e-03;d=d+1|0;e=e+48|0}}while(0);D_(k);l=m;return d|0}function Iq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0,k=0,l=0.0,m=0.0;f=c[b+16>>2]|0;k=c[f+132>>2]|0;l=+h[k>>3]*720.0;j=~~(l+(l>=0.0?.5:-.5));l=+h[k+8>>3]*720.0;k=~~(l+(l>=0.0?.5:-.5));if(!(a[e+8>>0]|0)){m=+h[f+32>>3]*72.0*(+g[e>>2]*5.0);l=+h[f+40>>3]*72.0*(+g[e+4>>2]*5.0);i=~~(m+(m>=0.0?.5:-.5));f=~~(l+(l>=0.0?.5:-.5))}else{l=+h[f+32>>3]*36.0;m=+h[f+40>>3]*36.0;i=~~((+g[e>>2]+ +(~~(l+(l>=0.0?.5:-.5))|0))*10.0);f=~~((+g[e+4>>2]+ +(~~(m+(m>=0.0?.5:-.5))|0))*10.0)}c[d+12>>2]=j;c[d+16>>2]=k;c[d+20>>2]=b;c[d+32>>2]=j-i;c[d+36>>2]=k-f;c[d+40>>2]=i+j;c[d+44>>2]=f+k;return}function Jq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=b+-1|0;d=0;a:while(1){if((d|0)>=(k|0)){a=0;break}j=a+48|0;d=d+1|0;g=a+32|0;h=a+40|0;i=a+36|0;f=a+44|0;a=j;e=d;while(1){if((e|0)>=(b|0)){a=j;continue a}if((((c[g>>2]|0)<=(c[a+40>>2]|0)?(c[a+32>>2]|0)<=(c[h>>2]|0):0)?(c[i>>2]|0)<=(c[a+44>>2]|0):0)?(c[a+36>>2]|0)<=(c[f>>2]|0):0){a=1;break a}a=a+48|0;e=e+1|0}}return a|0}function Kq(a,b){a=a|0;b=b|0;if((c[a+36>>2]|0)>(c[b+44>>2]|0))a=0;else a=(c[b+36>>2]|0)<=(c[a+44>>2]|0)&1;return a|0}function Lq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=Cw(18064,c[4558]|0)|0;g=b;h=0;while(1){if((h|0)>=(d|0))break;c[g+8>>2]=c[g+12>>2];nb[c[i>>2]&63](i,g,1)|0;g=g+48|0;h=h+1|0}if(!f)h=Tq(a,i,e,73)|0;else h=Sq(i,e,73)|0;fI(h,2,2147483647)|0;g=0;while(1){if((g|0)>=(d|0))break;f=b+12|0;a=c[(c[(c[b+24>>2]|0)+16>>2]|0)+232>>2]|0;e=a-(c[f>>2]|0)|0;c[f>>2]=a;f=b+32|0;c[f>>2]=(c[f>>2]|0)+e;f=b+40|0;c[f>>2]=(c[f>>2]|0)+e;b=b+48|0;g=g+1|0}Uq(h);yw(i)|0;return}function Mq(a,b){a=a|0;b=b|0;if((c[a+32>>2]|0)>(c[b+40>>2]|0))a=0;else a=(c[b+32>>2]|0)<=(c[a+40>>2]|0)&1;return a|0}function Nq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=Cw(18064,c[4558]|0)|0;g=b;h=0;while(1){if((h|0)>=(d|0))break;c[g+8>>2]=c[g+16>>2];nb[c[i>>2]&63](i,g,1)|0;g=g+48|0;h=h+1|0}if(!f)h=Tq(a,i,e,74)|0;else h=Sq(i,e,74)|0;fI(h,2,2147483647)|0;g=0;while(1){if((g|0)>=(d|0))break;f=b+16|0;a=c[(c[(c[b+24>>2]|0)+16>>2]|0)+232>>2]|0;e=a-(c[f>>2]|0)|0;c[f>>2]=a;f=b+36|0;c[f>>2]=(c[f>>2]|0)+e;f=b+44|0;c[f>>2]=(c[f>>2]|0)+e;b=b+48|0;g=g+1|0}Uq(h);yw(i)|0;return}function Oq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=a+32|0;e=b+32|0;if((c[a+36>>2]|0)<=(c[b+44>>2]|0)?(c[b+36>>2]|0)<=(c[a+44>>2]|0):0)if((c[a+40>>2]|0)<(c[e>>2]|0))a=1;else{g=Rq(d,e)|0;g=g-(c[b+12>>2]|0)+(c[a+12>>2]|0)|0;b=c[b+16>>2]|0;a=c[a+16>>2]|0;f=(b|0)<(a|0);e=Qq(d,e)|0;a=(g|0)<=(e-(f?a:b)+(f?b:a)|0)&1}else a=0;return a|0}function Pq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=a+32|0;e=b+32|0;if((c[d>>2]|0)<=(c[b+40>>2]|0)?(c[e>>2]|0)<=(c[a+40>>2]|0):0)if((c[a+44>>2]|0)<(c[b+36>>2]|0))a=1;else{g=Qq(d,e)|0;g=g-(c[b+16>>2]|0)+(c[a+16>>2]|0)|0;b=c[b+12>>2]|0;a=c[a+12>>2]|0;f=(b|0)<(a|0);e=Rq(d,e)|0;a=(g|0)<=(e-(f?a:b)+(f?b:a)|0)&1}else a=0;return a|0}function Qq(a,b){a=a|0;b=b|0;return ((c[a+12>>2]|0)-(c[a+4>>2]|0)+(c[b+12>>2]|0)-(c[b+4>>2]|0)|0)/2|0|0}function Rq(a,b){a=a|0;b=b|0;return ((c[a+8>>2]|0)-(c[a>>2]|0)+(c[b+8>>2]|0)-(c[b>>2]|0)|0)/2|0|0}function Sq(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+16|0;v=x;a[v>>0]=a[18484]|0;a[v+1>>0]=a[18485]|0;a[v+2>>0]=a[18486]|0;a[v+3>>0]=a[18487]|0;w=Xx(92103,v,0)|0;Az(w,134401,280,1)|0;g=Aw(d)|0;h=-2147483647;u=0;while(1){if(!g)break;s=c[g+8>>2]|0;t=u+((h|0)!=(s|0)&1)|0;g=c[g>>2]|0;h=s;u=t}s=w+16|0;t=(u<<3)+-4|0;n=0;j=0;g=0;h=0;m=0;r=Aw(d)|0;i=-2147483647;while(1){if(!r)break;q=c[r+8>>2]|0;if((i|0)!=(q|0)){p=az(w,ry(c[r+20>>2]|0)|0,1)|0;Az(p,134365,304,1)|0;o=p+16|0;g=c[o>>2]|0;c[g+112>>2]=r;if(!h){c[(c[s>>2]|0)+192>>2]=p;n=p}else{c[(c[n+16>>2]|0)+164>>2]=p;n=h}c[g+176>>2]=0;k=j+1|0;i=uH(k<<2)|0;c[(c[o>>2]|0)+172>>2]=i;if(!m){j=k;k=p;m=p;g=p;h=n;i=q}else{i=m+16|0;c[(c[i>>2]|0)+184>>2]=0;j=uH((m|0)==(n|0)?t:u-j<<2)|0;c[(c[i>>2]|0)+180>>2]=j;j=Rx(w,m,p,0,1)|0;Az(j,134378,176,1)|0;g=c[j+16>>2]|0;b[g+170>>1]=10;c[g+156>>2]=1;g=c[i>>2]|0;h=c[g+180>>2]|0;if(!h)g=vH((c[g+184>>2]<<2)+8|0)|0;else g=xH(h,(c[g+184>>2]<<2)+8|0)|0;m=c[i>>2]|0;c[m+180>>2]=g;m=m+184|0;h=c[m>>2]|0;c[m>>2]=h+1;c[g+(h<<2)>>2]=j;g=c[i>>2]|0;c[(c[g+180>>2]|0)+(c[g+184>>2]<<2)>>2]=0;g=c[o>>2]|0;h=c[g+172>>2]|0;if(!h)g=vH((c[g+176>>2]<<2)+8|0)|0;else g=xH(h,(c[g+176>>2]<<2)+8|0)|0;h=c[o>>2]|0;c[h+172>>2]=g;h=h+176|0;m=c[h>>2]|0;c[h>>2]=m+1;c[g+(m<<2)>>2]=j;j=c[o>>2]|0;c[(c[j+172>>2]|0)+(c[j+176>>2]<<2)>>2]=0;j=k;k=p;m=p;g=p;h=n;i=q}}else{k=g;g=n}c[r+24>>2]=k;n=g;g=k;r=c[r>>2]|0}m=m+16|0;c[(c[m>>2]|0)+184>>2]=0;g=uH(4)|0;c[(c[m>>2]|0)+180>>2]=g;a[v>>0]=a[18484]|0;a[v+1>>0]=a[18485]|0;a[v+2>>0]=a[18486]|0;a[v+3>>0]=a[18487]|0;m=Xx(92150,v,0)|0;g=Aw(d)|0;while(1){if(!g)break;v=az(m,ry(c[g+20>>2]|0)|0,1)|0;Az(v,134365,304,1)|0;c[g+28>>2]=v;c[(c[v+16>>2]|0)+112>>2]=g;g=c[g>>2]|0}g=0;k=Aw(d)|0;h=-2147483647;a:while(1){if(!k)break;j=c[k+8>>2]|0;b:do if((h|0)==(j|0))j=h;else{g=k;while(1){g=c[g>>2]|0;if(!g)break a;if((c[g+8>>2]|0)!=(j|0))break b}}while(0);i=k+28|0;h=g;while(1){if(!h)break;if(lb[e&127](k,h)|0)Rx(m,c[i>>2]|0,c[h+28>>2]|0,0,1)|0;h=c[h>>2]|0}k=c[k>>2]|0;h=j}Vq(m,w,f);$x(m)|0;l=x;return w|0}function Tq(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=l;l=l+16|0;r=s;a[r>>0]=a[18484]|0;a[r+1>>0]=a[18485]|0;a[r+2>>0]=a[18486]|0;a[r+3>>0]=a[18487]|0;r=Xx(92103,r,0)|0;Az(r,134401,280,1)|0;k=r+16|0;h=Aw(e)|0;i=0;while(1){if(!h)break;j=az(r,ry(c[h+20>>2]|0)|0,1)|0;Az(j,134365,304,1)|0;p=j+16|0;n=c[p>>2]|0;c[n+112>>2]=h;c[h+24>>2]=j;c[n+176>>2]=0;n=uH(4)|0;o=c[p>>2]|0;c[o+172>>2]=n;c[o+184>>2]=0;o=uH(4)|0;c[(c[p>>2]|0)+180>>2]=o;if(!i)c[(c[k>>2]|0)+192>>2]=j;else c[(c[i+16>>2]|0)+164>>2]=j;h=c[h>>2]|0;i=j}m=Aw(e)|0;a:while(1){if(!m)break;n=m+32|0;o=m+24|0;p=m+20|0;h=m;while(1){h=c[h>>2]|0;if(!h)break;if(lb[f&127](m,h)|0){i=lb[g&127](n,h+32|0)|0;j=Rx(r,c[o>>2]|0,c[h+24>>2]|0,0,1)|0;Az(j,134378,176,1)|0;if((i|0)>=65536){q=13;break a}k=j+16|0;t=c[k>>2]|0;b[t+170>>1]=i;c[t+156>>2]=1;if(j|0?Rx(d,c[p>>2]|0,c[h+20>>2]|0,0,0)|0:0)c[(c[k>>2]|0)+156>>2]=100}}m=c[m>>2]|0}if((q|0)==13)qa(92106,92122,254,92135);m=Aw(e)|0;while(1){if(!m)break;k=c[m+24>>2]|0;n=k+16|0;k=Ex(r,k)|0;while(1){if(!k)break;h=c[n>>2]|0;i=c[h+180>>2]|0;if(!i)h=vH((c[h+184>>2]<<2)+8|0)|0;else h=xH(i,(c[h+184>>2]<<2)+8|0)|0;i=c[n>>2]|0;c[i+180>>2]=h;i=i+184|0;j=c[i>>2]|0;c[i>>2]=j+1;c[h+(j<<2)>>2]=k;j=c[n>>2]|0;c[(c[j+180>>2]|0)+(c[j+184>>2]<<2)>>2]=0;j=k+-48|0;h=c[(c[((c[k>>2]&3|0)==2?k:j)+40>>2]|0)+16>>2]|0;i=c[h+172>>2]|0;if(!i)h=vH((c[h+176>>2]<<2)+8|0)|0;else h=xH(i,(c[h+176>>2]<<2)+8|0)|0;c[(c[(c[((c[k>>2]&3|0)==2?k:j)+40>>2]|0)+16>>2]|0)+172>>2]=h;g=c[(c[((c[k>>2]&3|0)==2?k:j)+40>>2]|0)+16>>2]|0;q=c[g+172>>2]|0;g=g+176|0;t=c[g>>2]|0;c[g>>2]=t+1;c[q+(t<<2)>>2]=k;t=c[(c[((c[k>>2]&3|0)==2?k:j)+40>>2]|0)+16>>2]|0;c[(c[t+172>>2]|0)+(c[t+176>>2]<<2)>>2]=0;k=Gx(r,k)|0}m=c[m>>2]|0}l=s;return r|0}function Uq(a){a=a|0;var b=0,d=0,e=0,f=0;f=Sy(a)|0;while(1){if(!f)break;d=f+16|0;b=c[d>>2]|0;e=c[b+172>>2]|0;if(e){D_(e);b=c[d>>2]|0}b=c[b+180>>2]|0;if(b|0)D_(b);f=Ty(a,f)|0}$x(a)|0;return}function Vq(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=Sy(a)|0;while(1){if(!k)break;n=c[(c[k+16>>2]|0)+112>>2]|0;m=c[n+24>>2]|0;n=n+32|0;o=m+16|0;l=Ex(a,k)|0;while(1){if(!l)break;h=c[(c[(c[((c[l>>2]&3|0)==2?l:l+-48|0)+40>>2]|0)+16>>2]|0)+112>>2]|0;p=lb[e&127](n,h+32|0)|0;h=c[h+24>>2]|0;i=Rx(d,m,h,0,1)|0;Az(i,134378,176,1)|0;j=i+16|0;f=c[j>>2]|0;c[f+156>>2]=1;g=b[f+170>>1]|0;if((p|0)>(g&65535|0)){if(!(g<<16>>16)){f=c[o>>2]|0;g=c[f+180>>2]|0;if(!g)f=vH((c[f+184>>2]<<2)+8|0)|0;else f=xH(g,(c[f+184>>2]<<2)+8|0)|0;q=c[o>>2]|0;c[q+180>>2]=f;q=q+184|0;g=c[q>>2]|0;c[q>>2]=g+1;c[f+(g<<2)>>2]=i;f=c[o>>2]|0;c[(c[f+180>>2]|0)+(c[f+184>>2]<<2)>>2]=0;h=h+16|0;f=c[h>>2]|0;g=c[f+172>>2]|0;if(!g)f=vH((c[f+176>>2]<<2)+8|0)|0;else f=xH(g,(c[f+176>>2]<<2)+8|0)|0;g=c[h>>2]|0;c[g+172>>2]=f;g=g+176|0;q=c[g>>2]|0;c[g>>2]=q+1;c[f+(q<<2)>>2]=i;f=c[h>>2]|0;c[(c[f+172>>2]|0)+(c[f+176>>2]<<2)>>2]=0;f=c[j>>2]|0}b[f+170>>1]=p}l=Gx(a,l)|0}k=Ty(a,k)|0}return}function Wq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;return (c[b>>2]|0)-(c[d>>2]|0)|0}function Xq(b,d){b=b|0;d=d|0;var e=0,f=0,i=0.0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0.0,A=0.0;y=l;l=l+64|0;u=y+24|0;s=y+16|0;r=y+52|0;q=y+40|0;t=y;w=ay(b)|0;x=vH(w*72|0)|0;qq(q,b);k=+g[q>>2];m=+g[q+4>>2];q=(a[q+8>>0]|0)!=0;k=q?k*.013888888888888888:k;m=q?m*.013888888888888888:m;n=k*.5;o=m*.5;e=x;f=Sy(b)|0;while(1){if(!f)break;p=c[f+16>>2]|0;i=+h[p+32>>3];if(q){j=+h[p+40>>3]*.5+m;i=i*.5+k}else{j=o*+h[p+40>>3];i=n*i}p=c[p+132>>2]|0;A=+h[p>>3];h[e>>3]=A;z=+h[p+8>>3];h[e+8>>3]=z;h[e+16>>3]=A-i;h[e+24>>3]=z-j;h[e+32>>3]=A+i;h[e+40>>3]=z+j;h[e+48>>3]=i;h[e+56>>3]=j;c[e+64>>2]=f;e=e+72|0;f=Ty(b,f)|0}do if((d|0)<0){i=+Yq(x,w);if(i==0.0){D_(x);e=0;break}if(!0){k=i;j=i;v=19}else{v=c[15686]|0;h[s>>3]=i;g1(v,92153,s)|0;k=i;j=i;v=19}}else{f=Zq(x,w,r)|0;e=c[r>>2]|0;if(!e){D_(f);D_(x);e=0;break}if(!d){$q(t,f,e);i=+h[t>>3];j=+h[t+8>>3]}else{j=+_q(f,e);i=j}D_(f);if(!0){k=i;v=19}else{v=c[15686]|0;h[u>>3]=i;h[u+8>>3]=j;g1(v,92167,u)|0;k=i;v=19}}while(0);if((v|0)==19){e=0;f=x;while(1){if((e|0)>=(w|0))break;v=c[(c[(c[f+64>>2]|0)+16>>2]|0)+132>>2]|0;h[v>>3]=+h[f>>3]*k;h[v+8>>3]=+h[f+8>>3]*j;e=e+1|0;f=f+72|0}D_(x);e=1}l=y;return e|0}function Yq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0.0,f=0.0,g=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;c=0.0;d=0;a:while(1){if((d|0)>=(b|0))break;r=a+72|0;d=d+1|0;m=a+16|0;n=a+8|0;o=a+56|0;p=a+48|0;q=a+32|0;k=a+24|0;l=a+40|0;i=d;j=r;while(1){if((i|0)>=(b|0)){a=r;continue a}if(((+h[m>>3]<=+h[j+32>>3]?+h[j+16>>3]<=+h[q>>3]:0)?+h[k>>3]<=+h[j+40>>3]:0)?+h[j+24>>3]<=+h[l>>3]:0){c=0.0;break a}e=+h[a>>3];f=+h[j>>3];if(e==f)g=t;else{g=+B(+(e-f));g=(+h[j+48>>3]+ +h[p>>3])/g}e=+h[n>>3];f=+h[j+8>>3];if(e==f)e=t;else{e=+B(+(e-f));e=(+h[j+56>>3]+ +h[o>>3])/e}g=e<g?e:g;i=i+1|0;j=j+72|0;c=g>c?g:c}}return +c}function Zq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;k=vH((b<<4)+16|0)|0;m=0;e=0;n=k;o=b;i=k;a:while(1){if((e|0)>=(b|0))break;z=a+72|0;e=e+1|0;y=a+16|0;r=a+32|0;s=a+24|0;u=a+40|0;v=a+8|0;w=a+56|0;x=a+48|0;p=e;q=z;l=i;while(1){if((p|0)==(b|0)){a=z;i=l;continue a}if(((+h[y>>3]<=+h[q+32>>3]?+h[q+16>>3]<=+h[r>>3]:0)?+h[s>>3]<=+h[q+40>>3]:0)?+h[q+24>>3]<=+h[u>>3]:0){i=o+b|0;if((m|0)==(o|0)){k=xH(k,(i<<4)+16|0)|0;n=k;l=k}else i=o;f=+h[a>>3];g=+h[q>>3];if(!(f==g)){f=(+h[q+48>>3]+ +h[x>>3])/+B(+(f-g));if(f<1.0){f=1.0;A=13}}else{f=t;A=13}if((A|0)==13)A=0;g=+h[v>>3];j=+h[q+8>>3];if(!(g==j)){g=(+h[q+56>>3]+ +h[w>>3])/+B(+(g-j));if(g<1.0){g=1.0;A=16}}else{g=t;A=16}if((A|0)==16)A=0;m=m+1|0;h[n+(m<<4)>>3]=f;h[n+(m<<4)+8>>3]=g}else i=o;p=p+1|0;q=q+72|0;o=i}}A=xH(i,(m<<4)+16|0)|0;c[d>>2]=m;return A|0}function _q(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,f=0.0,g=0.0;d=1;e=0.0;while(1){c=a+16|0;if((d|0)>(b|0))break;g=+h[c>>3];f=+h[a+24>>3];f=g<f?g:f;d=d+1|0;e=f>e?f:e;a=c}return +e}function $q(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,f=0,g=0,i=0.0;h[b>>3]=1.0;h[b+8>>3]=t;_0(b+16|0,c,16,75);g=vH((c<<4)+16|0)|0;h[g+(c<<4)>>3]=+h[b+(c<<4)>>3];f=c;d=1.0;while(1){h[g+(f<<4)+8>>3]=d;e=f+-1|0;if((f|0)<=0){d=t;e=0;f=0;break}h[g+(e<<4)>>3]=+h[b+(e<<4)>>3];i=+h[(+h[b+(f<<4)+8>>3]>d?b:g)+(f<<4)+8>>3];f=e;d=i}while(1){if((f|0)>(c|0))break;i=+h[g+(f<<4)+8>>3]*+h[g+(f<<4)>>3];b=i<d;d=b?i:d;e=b?f:e;f=f+1|0}if(d<t){i=+h[g+(e<<4)+8>>3];h[a>>3]=+h[g+(e<<4)>>3];h[a+8>>3]=i;return}else qa(92184,92122,832,92204)}function ar(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+h[a>>3];d=+h[b>>3];if(!(c<d))if(!(c>d)){d=+h[a+8>>3];c=+h[b+8>>3];if(d<c)a=-1;else a=d>c&1}else a=1;else a=-1;return a|0}function br(a){a=a|0;var b=0;if(a|0){b=c[a+4>>2]|0;if(b|0)D_(b);b=c[a+8>>2]|0;if(b|0)D_(b);b=c[a+16>>2]|0;if(b|0)D_(b);D_(a)}return}function cr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;n=o+8|0;m=o;k=F_(c[46079]|0,d<<2)|0;c[46079]=k;f=0;while(1){if((f|0)>=(d|0))break;c[e+(f<<2)>>2]=2147483647;f=f+1|0}c[e+(a<<2)>>2]=0;h=b+(a*20|0)|0;i=b+(a*20|0)+8|0;j=b+(a*20|0)+4|0;f=1;while(1){if((f|0)>=(c[h>>2]|0))break;c[e+(c[(c[j>>2]|0)+(f<<2)>>2]<<2)>>2]=~~+g[(c[i>>2]|0)+(f<<2)>>2];f=f+1|0}dr(n,a,k,e,d);i=-2147483639;while(1){if(!((er(n,m,c[46079]|0,e)|0)<<24>>24)){f=0;break}f=c[m>>2]|0;a=c[e+(f<<2)>>2]|0;if((a|0)==2147483647){f=0;break}i=b+(f*20|0)|0;j=b+(f*20|0)+4|0;h=b+(f*20|0)+8|0;f=1;while(1){if((f|0)>=(c[i>>2]|0))break;fr(n,c[(c[j>>2]|0)+(f<<2)>>2]|0,a+~~+g[(c[h>>2]|0)+(f<<2)>>2]|0,c[46079]|0,e);f=f+1|0}i=a+10|0}while(1){if((f|0)>=(d|0))break;h=e+(f<<2)|0;if((c[h>>2]|0)==2147483647)c[h>>2]=i;f=f+1|0}gr(n);l=o;return}function dr(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if((f|0)==1)i=0;else i=vH((f<<2)+-4|0)|0;c[a>>2]=i;j=f+-1|0;c[a+4>>2]=j;g=0;h=0;while(1){if((h|0)>=(f|0))break;if((h|0)!=(b|0)){c[i+(g<<2)>>2]=h;c[d+(h<<2)>>2]=g;g=g+1|0}h=h+1|0}g=(j|0)/2|0;while(1){if((g|0)<=-1)break;hr(a,g,d,e);g=g+-1|0}return}function er(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=a+4|0;if(!(c[f>>2]|0))a=0;else{g=c[a>>2]|0;c[b>>2]=c[g>>2];b=c[g+((c[f>>2]|0)+-1<<2)>>2]|0;c[g>>2]=b;c[d+(b<<2)>>2]=0;c[f>>2]=(c[f>>2]|0)+-1;hr(a,0,d,e);a=1}return a|0}function fr(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=f+(b<<2)|0;if((c[g>>2]|0)>(d|0)){j=e+(b<<2)|0;i=c[j>>2]|0;c[g>>2]=d;g=c[a>>2]|0;a=i;while(1){if((a|0)<=0)break;h=a>>>1;i=c[g+(h<<2)>>2]|0;if((c[f+(i<<2)>>2]|0)<=(d|0))break;c[g+(a<<2)>>2]=i;c[e+(i<<2)>>2]=a;a=h}c[g+(a<<2)>>2]=b;c[j>>2]=a}return}function gr(a){a=a|0;a=c[a>>2]|0;if(a|0)D_(a);return}function hr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=a+4|0;while(1){f=b<<1;g=f|1;h=c[i>>2]|0;if(!((f|0)<(h|0)?(j=c[a>>2]|0,(c[e+(c[j+(f<<2)>>2]<<2)>>2]|0)<(c[e+(c[j+(b<<2)>>2]<<2)>>2]|0)):0))f=b;if((g|0)<(h|0)){j=c[a>>2]|0;f=(c[e+(c[j+(g<<2)>>2]<<2)>>2]|0)<(c[e+(c[j+(f<<2)>>2]<<2)>>2]|0)?g:f}if((f|0)==(b|0))break;j=c[a>>2]|0;h=j+(f<<2)|0;g=c[h>>2]|0;j=j+(b<<2)|0;c[h>>2]=c[j>>2];c[j>>2]=g;c[d+(c[h>>2]<<2)>>2]=f;c[d+(c[j>>2]<<2)>>2]=b;b=f}return}function ir(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0.0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p+8|0;n=p;c[n>>2]=0;o=vH(d<<2)|0;f=0;while(1){if((f|0)>=(d|0))break;g[e+(f<<2)>>2]=3402823466385288598117041.0e14;f=f+1|0}g[e+(a<<2)>>2]=0.0;h=c[b+(a*20|0)>>2]|0;i=b+(a*20|0)+8|0;j=b+(a*20|0)+4|0;f=1;while(1){if((f|0)>=(h|0))break;c[e+(c[(c[j>>2]|0)+(f<<2)>>2]<<2)>>2]=c[(c[i>>2]|0)+(f<<2)>>2];f=f+1|0}jr(m,a,o,e,d);a:while(1){if(!((kr(m,n,o,e)|0)<<24>>24))break;f=c[n>>2]|0;k=+g[e+(f<<2)>>2];if(k==3402823466385288598117041.0e14)break;i=b+(f*20|0)|0;j=b+(f*20|0)+4|0;h=b+(f*20|0)+8|0;f=1;while(1){if((f|0)>=(c[i>>2]|0))continue a;lr(m,c[(c[j>>2]|0)+(f<<2)>>2]|0,+g[(c[h>>2]|0)+(f<<2)>>2]+k,o,e);f=f+1|0}}gr(m);D_(o);l=p;return}function jr(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=f+-1|0;j=vH(i<<2)|0;c[a>>2]=j;c[a+4>>2]=i;g=0;h=0;while(1){if((h|0)>=(f|0))break;if((h|0)!=(b|0)){c[j+(g<<2)>>2]=h;c[d+(h<<2)>>2]=g;g=g+1|0}h=h+1|0}g=(i|0)/2|0;while(1){if((g|0)<=-1)break;mr(a,g,d,e);g=g+-1|0}return}function kr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=a+4|0;if(!(c[f>>2]|0))a=0;else{g=c[a>>2]|0;c[b>>2]=c[g>>2];b=c[g+((c[f>>2]|0)+-1<<2)>>2]|0;c[g>>2]=b;c[d+(b<<2)>>2]=0;c[f>>2]=(c[f>>2]|0)+-1;mr(a,0,d,e);a=1}return a|0}function lr(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0;h=f+(b<<2)|0;if(!(+g[h>>2]<=d)){k=e+(b<<2)|0;j=c[k>>2]|0;g[h>>2]=d;h=c[a>>2]|0;a=j;while(1){if((a|0)<=0)break;i=a>>>1;j=c[h+(i<<2)>>2]|0;if(!(+g[f+(j<<2)>>2]>d))break;c[h+(a<<2)>>2]=j;c[e+(j<<2)>>2]=a;a=i}c[h+(a<<2)>>2]=b;c[k>>2]=a}return}function mr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0;j=a+4|0;while(1){f=b<<1;h=f|1;i=c[j>>2]|0;if(!((f|0)<(i|0)?(k=c[a>>2]|0,+g[e+(c[k+(f<<2)>>2]<<2)>>2]<+g[e+(c[k+(b<<2)>>2]<<2)>>2]):0))f=b;if((h|0)<(i|0)?(k=c[a>>2]|0,+g[e+(c[k+(h<<2)>>2]<<2)>>2]<+g[e+(c[k+(f<<2)>>2]<<2)>>2]):0)f=h;if((f|0)==(b|0))break;k=c[a>>2]|0;i=k+(f<<2)|0;h=c[i>>2]|0;k=k+(b<<2)|0;c[i>>2]=c[k>>2];c[k>>2]=h;c[d+(c[i>>2]<<2)>>2]=f;c[d+(c[k>>2]<<2)>>2]=b;b=f}return}function nr(){gt(184320,48);c[46083]=0;return}function or(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0.0,g=0.0,i=0;i=it(184320)|0;c[i+32>>2]=a;c[i+36>>2]=b;Pt(a);Pt(b);c[i+24>>2]=0;c[i+28>>2]=0;f=+h[a>>3];g=+h[b>>3]-f;e=+h[a+8>>3];d=+h[b+8>>3]-e;f=d*e+g*f+(d*d+g*g)*.5;b=i+16|0;h[b>>3]=f;if((g>0.0?g:-g)>(d>0.0?d:-d)){h[i>>3]=1.0;e=d/g;d=g;a=i+8|0}else{h[i+8>>3]=1.0;e=g/d;a=i}h[a>>3]=e;h[b>>3]=f/d;b=c[46083]|0;c[i+40>>2]=b;c[46083]=b+1;return i|0}function pr(a){a=a|0;var b=0,d=0,e=0.0,f=0.0,g=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0;l=+h[a>>3];a:do if(l==1.0){if(!(+h[a+8>>3]>=0.0)){b=c[a+28>>2]|0;d=c[a+24>>2]|0;if(!d)m=9;else m=5}else{b=c[a+24>>2]|0;d=c[a+28>>2]|0;if(!d)m=9;else m=5}do if((m|0)==5){e=+h[d+8>>3];if(e>+h[22881])break a;f=+h[22882];if(!(e>=f)){i=f;e=+h[a+16>>3]-+h[a+8>>3]*f;break}else{i=e;e=+h[d>>3];break}}else if((m|0)==9){f=+h[22882];i=f;e=+h[a+16>>3]-+h[a+8>>3]*f}while(0);do if(b){g=+h[b+8>>3];if(g<f)break a;f=+h[22881];if(!(g<=f)){g=f;f=+h[a+16>>3]-+h[a+8>>3]*f;break}else{f=+h[b>>3];break}}else{f=+h[22881];g=f;f=+h[a+16>>3]-+h[a+8>>3]*f}while(0);j=+h[22883];b=e>j;d=f>j;k=+h[22884];if(!(b&d|e<k&f<k)){if(b){i=(+h[a+16>>3]-j)/+h[a+8>>3];e=j}if(e<k){i=(+h[a+16>>3]-k)/+h[a+8>>3];e=k}if(d){g=(+h[a+16>>3]-j)/+h[a+8>>3];f=j}if(f<k){g=(+h[a+16>>3]-k)/+h[a+8>>3];f=k;m=46}else m=46}}else{d=c[a+28>>2]|0;b=c[a+24>>2]|0;do if(b){e=+h[b>>3];if(e>+h[22883])break a;g=+h[22884];if(!(e>=g)){i=+h[a+16>>3]-g*l;e=g;break}else{i=+h[b+8>>3];break}}else{g=+h[22884];i=+h[a+16>>3]-g*l;e=g}while(0);do if(d){f=+h[d>>3];if(f<g)break a;j=+h[22883];if(!(f<=j)){g=+h[a+16>>3]-l*j;f=j;break}else{g=+h[d+8>>3];break}}else{f=+h[22883];g=+h[a+16>>3]-l*f}while(0);j=+h[22881];b=i>j;d=g>j;k=+h[22882];if(!(b&d|i<k&g<k)){if(b){i=j;e=(+h[a+16>>3]-j)/l}if(i<k){i=k;e=(+h[a+16>>3]-k)/l}if(d){g=j;f=(+h[a+16>>3]-j)/l}if(g<k){g=k;f=(+h[a+16>>3]-k)/l;m=46}else m=46}}while(0);if((m|0)==46)qr(a,e,i,f,g);return}function qr(a,b,d,e,f){a=a|0;b=+b;d=+d;e=+e;f=+f;var g=0;g=a+32|0;Xr(c[g>>2]|0,b,d);Xr(c[g>>2]|0,e,f);a=a+36|0;Xr(c[a>>2]|0,b,d);Xr(c[a>>2]|0,e,f);return}function rr(a,b,d){a=a|0;b=b|0;d=d|0;c[a+24+(b<<2)>>2]=d;Pt(d);if(c[a+24+(1-b<<2)>>2]|0){pr(a);Ot(c[a+32>>2]|0);Ot(c[a+36>>2]|0);jt(a,184320)}return}function sr(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+16|0;o=p;m=b<<2;h=vH(O(m,d)|0)|0;g=c[e>>2]|0;m=vH(m)|0;n=c[a+8>>2]|0;if(g|0){D_(c[g>>2]|0);D_(g)}k=vH(d<<2)|0;c[e>>2]=k;g=0;while(1){if((g|0)>=(d|0))break;c[k+(g<<2)>>2]=h+((O(g,b)|0)<<2);g=g+1|0}j=(f|0)!=0;if(j)es(a,b);e=(g2()|0)%(b|0)|0;zq(o,b);g=c[k>>2]|0;if(j){cr(e,a,b,g);f=0;g=0}else{vq(e,a,b,g,o);f=0;g=0}while(1){if((g|0)>=(b|0)){i=1;break}h=c[(c[k>>2]|0)+(g<<2)>>2]|0;c[m+(g<<2)>>2]=h;i=(h|0)>(f|0);f=i?h:f;e=i?g:e;g=g+1|0}while(1){if((i|0)>=(d|0))break;h=k+(i<<2)|0;g=c[h>>2]|0;if(j){cr(e,a,b,g);g=0;f=0}else{vq(e,a,b,g,o);g=0;f=0}while(1){if((g|0)>=(b|0))break;s=m+(g<<2)|0;q=c[s>>2]|0;r=c[(c[h>>2]|0)+(g<<2)>>2]|0;r=(q|0)<(r|0)?q:r;c[s>>2]=r;s=(r|0)>(f|0);q=s?g:e;g=g+1|0;f=s?r:f;e=q}i=i+1|0}D_(m);if(j)fs(a,b,n);l=p;return}function tr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,h=0,i=0.0,j=0,k=0;i=1.0/+(b|0);h=0;while(1){if((h|0)>=(d|0))break;j=a+(h<<2)|0;e=0.0;f=0;while(1){if((f|0)>=(b|0))break;e=e+ +(c[(c[j>>2]|0)+(f<<2)>>2]|0);f=f+1|0}g=~~(e*i);f=0;while(1){if((f|0)>=(b|0))break;k=(c[j>>2]|0)+(f<<2)|0;c[k>>2]=(c[k>>2]|0)-g;f=f+1|0}h=h+1|0}return}function ur(){c[46085]=~~+C(+(+((c[46084]|0)+4|0)));return}function vr(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+h[a>>3]-+h[b>>3];d=+h[a+8>>3]-+h[b+8>>3];return +(d*d+c*c)}function wr(a,b,c){a=a|0;b=b|0;c=c|0;h[a>>3]=+h[b>>3]-+h[c>>3];h[a+8>>3]=+h[b+8>>3]-+h[c+8>>3];return}function xr(a,b,c){a=a|0;b=b|0;c=c|0;h[a>>3]=+h[c>>3]+ +h[b>>3];h[a+8>>3]=+h[c+8>>3]+ +h[b+8>>3];return}function yr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0;d=+h[b+8>>3];e=+h[b>>3];return +((+h[c>>3]-e)*(+h[a+8>>3]-d)-(+h[a>>3]-e)*(+h[c+8>>3]-d))}function zr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+48|0;f=e+32|0;g=e+16|0;h=e;c[h>>2]=c[a>>2];c[h+4>>2]=c[a+4>>2];c[h+8>>2]=c[a+8>>2];c[h+12>>2]=c[a+12>>2];c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];d=+yr(h,g,f)>0.0&1;l=e;return d|0}function Ar(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0;o=+h[a>>3];p=+h[d+8>>3];q=+h[c+8>>3];m=(p-q)*o;n=+h[b>>3];l=+h[d>>3];k=+h[b+8>>3];i=+h[a+8>>3];j=k-i;f=+h[c>>3];g=m+n*(q-p)+j*l+f*(i-k);if(g==0.0)d=0;else{p=(f*(i-p)+m+(q-i)*l)/g;q=-(f*j+((q-k)*o+(i-q)*n))/g;h[e>>3]=p*(n-o)+o;h[e+8>>3]=j*p+i;d=q<=1.0&(q>=0.0&(p>=0.0&p<=1.0))&1}return d|0}function Br(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0.0,i=0;c[a+20>>2]=b;Pt(b);i=a+24|0;h[i>>3]=+h[b+8>>3]+d;e=c[46086]|0;e=e+((Cr(a)|0)*40|0)|0;while(1){f=e+32|0;e=c[f>>2]|0;if(!e)break;d=+h[i>>3];g=+h[e+24>>3];if(d>g)continue;if(!(d==g))break;if(!(+h[b>>3]>+h[c[e+20>>2]>>3]))break}c[a+32>>2]=e;c[f>>2]=a;c[46087]=(c[46087]|0)+1;return}function Cr(a){a=a|0;var b=0.0,d=0,e=0.0;d=c[46088]|0;e=+(d|0);b=(+h[a+24>>3]-+h[22888])/+h[22890]*e;do if(!(b<0.0))if(!(b>=e)){a=~~b;break}else{a=d+-1|0;break}else a=0;while(0);if((a|0)<(c[46089]|0))c[46089]=a;return a|0}function Dr(a){a=a|0;var b=0,d=0,e=0;d=a+20|0;if(c[d>>2]|0){b=c[46086]|0;b=b+((Cr(a)|0)*40|0)|0;do{e=b+32|0;b=c[e>>2]|0}while((b|0)!=(a|0));c[e>>2]=c[a+32>>2];c[46087]=(c[46087]|0)+-1;Ot(c[d>>2]|0);c[d>>2]=0}return}function Er(){return (c[46087]|0)==0|0}function Fr(a){a=a|0;var b=0,d=0,e=0,f=0.0;b=c[46086]|0;d=c[46089]|0;while(1){e=c[b+(d*40|0)+32>>2]|0;if(e|0)break;e=d+1|0;c[46089]=e;d=e}f=+h[e+24>>3];h[a>>3]=+h[c[e+20>>2]>>3];h[a+8>>3]=f;return}function Gr(){var a=0,b=0;b=(c[46086]|0)+((c[46089]|0)*40|0)+32|0;a=c[b>>2]|0;c[b>>2]=c[a+32>>2];c[46087]=(c[46087]|0)+-1;return a|0}function Hr(){D_(c[46086]|0);c[46086]=0;return}function Ir(){var a=0,b=0,d=0;c[46087]=0;c[46089]=0;a=c[46085]|0;b=a<<2;c[46088]=b;d=c[46086]|0;if(!d){d=vH(a*160|0)|0;c[46086]=d;b=c[46088]|0}a=0;while(1){if((a|0)>=(b|0))break;c[d+(a*40|0)+32>>2]=0;a=a+1|0}return}function Jr(){gt(184368,40);D_(c[46095]|0);c[46095]=0;return}function Kr(){var a=0,b=0,d=0;gt(184368,40);a=c[46085]|0;b=a<<1;c[46096]=b;d=c[46095]|0;if(!d){d=vH(a<<3)|0;c[46095]=d;b=c[46096]|0}a=0;while(1){if((a|0)>=(b|0))break;c[d+(a<<2)>>2]=0;a=a+1|0}c[46090]=Lr(0,0)|0;c[46091]=Lr(0,0)|0;c[c[46090]>>2]=0;d=c[46091]|0;b=c[46090]|0;c[b+4>>2]=d;c[d>>2]=b;c[(c[46091]|0)+4>>2]=0;d=c[46095]|0;c[d>>2]=c[46090];c[d+((c[46096]|0)+-1<<2)>>2]=c[46091];return}function Lr(b,d){b=b|0;d=d|0;var e=0;e=it(184368)|0;c[e+8>>2]=b;a[e+16>>0]=d;c[e+32>>2]=0;c[e+20>>2]=0;c[e+12>>2]=0;return e|0}function Mr(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0,j=0.0,k=0,l=0.0,m=0.0,n=0.0,o=0,p=0.0,q=0.0;i=c[b+8>>2]|0;k=c[d+8>>2]|0;do if((!((i|0)==0|(k|0)==0)?(o=c[i+36>>2]|0,e=c[k+36>>2]|0,(o|0)!=(e|0)):0)?(j=+h[i>>3],f=+h[k+8>>3],g=+h[i+8>>3],l=+h[k>>3],m=f*j-l*g,!(m>-1.0e-10&m<1.0e-10)):0){p=+h[i+16>>3];q=+h[k+16>>3];n=(p*f-q*g)/m;j=(q*j-p*l)/m;f=+h[o+8>>3];g=+h[e+8>>3];do if(f<g)e=o;else{if(f==g?+h[o>>3]<+h[e>>3]:0){e=o;break}b=d}while(0);b=a[b+16>>0]|0;if(!(n>=+h[e>>3])){if(b<<24>>24==1){b=0;break}}else if(!(b<<24>>24)){b=0;break}b=Lt()|0;c[b+20>>2]=0;h[b>>3]=n;h[b+8>>3]=j}else b=0;while(0);return b|0}function Nr(b,d){b=b|0;d=d|0;var e=0.0,f=0,g=0.0,i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0.0,p=0;n=c[b+8>>2]|0;k=c[n+36>>2]|0;l=+h[d>>3];o=+h[k>>3];m=l>o;p=a[b+16>>0]|0;if(m)if(!(p<<24>>24))b=1;else f=4;else if(p<<24>>24==1)b=0;else f=4;if((f|0)==4){e=+h[n>>3];a:do if(e==1.0){e=+h[d+8>>3];g=e-+h[k+8>>3];i=l-o;j=+h[n+8>>3];d=j<0.0;do if(m?j>=0.0:d){if(g>=j*i){b=1;break a}}else{b=j*e+l>+h[n+16>>3];if(d)if(b){b=0;break a}else break;else if(b)break;else{b=0;break a}}while(0);o=o-+h[c[n+32>>2]>>3];b=j*(i*i-g*g)<o*g*(i*2.0/o+1.0+j*j);if(d)b=b^1}else{i=+h[n+16>>3]-l*e;j=+h[d+8>>3]-i;o=l-o;l=i-+h[k+8>>3];b=j*j>l*l+o*o}while(0);b=(b^p<<24>>24!=0)&1}return b|0}function Or(a,b){a=a|0;b=b|0;c[b>>2]=a;a=a+4|0;c[b+4>>2]=c[a>>2];c[c[a>>2]>>2]=b;c[a>>2]=b;return}function Pr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=c[46096]|0;b=~~((+h[a>>3]-+h[22887])/+h[22889]*+(f|0));b=(b|0)>0?b:0;f=(b|0)<(f|0)?b:f+-1|0;b=Qr(f)|0;if(!b){d=1;while(1){b=Qr(f-d|0)|0;if(b|0)break;b=Qr(d+f|0)|0;if(b|0)break;d=d+1|0}c[46097]=(c[46097]|0)+d}c[46098]=(c[46098]|0)+1;e=c[46090]|0;d=c[46091]|0;a:do if((b|0)==(e|0))g=9;else{if((b|0)!=(d|0)?(Nr(b,a)|0)!=0:0){g=9;break}while(1){b=c[b>>2]|0;if((b|0)==(e|0))break a;if(Nr(b,a)|0){e=b;break}}}while(0);if((g|0)==9){while(1){b=c[b+4>>2]|0;if((b|0)==(d|0))break;if(!(Nr(b,a)|0))break;else g=9}e=c[b>>2]|0}if((f|0)>0?(f|0)<((c[46096]|0)+-1|0):0){b=(c[46095]|0)+(f<<2)|0;d=c[b>>2]|0;if(d|0){g=d+12|0;c[g>>2]=(c[g>>2]|0)+-1}c[b>>2]=e;g=e+12|0;c[g>>2]=(c[g>>2]|0)+1}return e|0}function Qr(a){a=a|0;var b=0,d=0;if((a|0)>-1&(c[46096]|0)>(a|0)?(d=(c[46095]|0)+(a<<2)|0,b=c[d>>2]|0,(b|0)!=0):0){if((c[b+8>>2]|0)==(-2|0)){c[d>>2]=0;a=b+12|0;d=(c[a>>2]|0)+-1|0;c[a>>2]=d;if(!d){jt(b,184368);b=0}else b=0}}else b=0;return b|0}function Rr(a){a=a|0;var b=0,d=0;b=a+4|0;d=c[a>>2]|0;c[d+4>>2]=c[b>>2];c[c[b>>2]>>2]=d;c[a+8>>2]=-2;return}function Sr(a){a=a|0;return c[a+4>>2]|0}function Tr(a){a=a|0;return c[a>>2]|0}function Ur(b){b=b|0;var d=0;d=c[b+8>>2]|0;if(!d)b=184588;else b=(a[b+16>>0]|0)==0?d+32|0:d+36|0;return c[b>>2]|0}function Vr(b){b=b|0;var d=0;d=c[b+8>>2]|0;if(!d)b=184588;else b=(a[b+16>>0]|0)==0?d+36|0:d+32|0;return c[b>>2]|0}function Wr(){gt(184400,24);return}function Xr(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+32|0;i=j;g=(c[46099]|0)+((c[a+16>>2]|0)*96|0)+88|0;f=c[g>>2]|0;h[i+8>>3]=b;h[i+16>>3]=d;e=Yr(a,i,f)|0;do if(e|0){if((e|0)<0){i=it(184400)|0;h[i+8>>3]=b;h[i+16>>3]=d;c[i>>2]=f;c[g>>2]=i;break}while(1){e=c[f>>2]|0;g=Yr(a,i,e)|0;if((g|0)>0)f=e;else break}if(g|0){i=it(184400)|0;h[i+8>>3]=b;h[i+16>>3]=d;c[f>>2]=i;c[i>>2]=e}}while(0);l=j;return}function Yr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0,g=0.0,i=0.0,j=0.0,k=0.0;do if(c){e=+h[b+8>>3];i=+h[c+8>>3];d=+h[b+16>>3];f=+h[c+16>>3];if(!(e==i&d==f)){k=+h[a>>3];j=e-k;e=+h[a+8>>3];g=d-e;i=i-k;d=f-e;if(!(j>=0.0)){if(i>=0.0){b=1;break}e=d/i;d=g/j;if(d<e){b=-1;break}if(d>e){b=1;break}b=j>i?-1:1;break}if(!(i<0.0)){b=i>0.0;if(!(j>0.0)){if(b){b=!(g<=0.0)?1:-1;break}if(g<d){b=!(d<=0.0)?-1:1;break}else{b=!(g<=0.0)?1:-1;break}}else{if(!b){b=d>0.0?-1:1;break}e=d/i;d=g/j;if(d<e){b=-1;break}if(d>e){b=1;break}b=j<i?-1:1;break}}else b=-1}else b=0}else b=-1;while(0);return b|0}function Zr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[a+(d*20|0)>>2]|0;d=a+(d*20|0)+4|0;b=1;a=0;while(1){if((b|0)>=(f|0))break;g=a+((c[e+(c[(c[d>>2]|0)+(b<<2)>>2]<<2)>>2]|0)>0&1)|0;b=b+1|0;a=g}return a|0}function _r(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+(b*20|0)|0;b=a+(b*20|0)+4|0;a=1;while(1){if((a|0)>=(c[e>>2]|0))break;c[d+(c[(c[b>>2]|0)+(a<<2)>>2]<<2)>>2]=1;a=a+1|0}return}function $r(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+(b*20|0)|0;b=a+(b*20|0)+4|0;a=1;while(1){if((a|0)>=(c[e>>2]|0))break;c[d+(c[(c[b>>2]|0)+(a<<2)>>2]<<2)>>2]=0;a=a+1|0}return}function as(a,b){a=a|0;b=b|0;if(!(c[a+8>>2]|0))a=cs(a,b)|0;else a=bs(a,b)|0;return a|0}function bs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=b<<2;e=vH(O(f,b)|0)|0;f=vH(f)|0;d=0;while(1){if((d|0)>=(b|0)){d=0;break}c[f+(d<<2)>>2]=e+((O(d,b)|0)<<2);d=d+1|0}while(1){if((d|0)>=(b|0))break;cr(d,a,b,c[f+(d<<2)>>2]|0);d=d+1|0}return f|0}function cs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;f=h;g=b<<2;e=vH(O(g,b)|0)|0;g=vH(g)|0;d=0;while(1){if((d|0)>=(b|0))break;c[g+(d<<2)>>2]=e+((O(d,b)|0)<<2);d=d+1|0}zq(f,b);d=0;while(1){if((d|0)>=(b|0))break;vq(d,a,b,c[g+(d<<2)>>2]|0,f);d=d+1|0}Aq(f);l=h;return g|0}function ds(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[a+8>>2]|0;es(a,b);d=bs(a,b)|0;fs(a,b,e);return d|0}function es(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=vH(b<<2)|0;d=0;e=0;while(1){if((d|0)>=(b|0))break;k=(c[a+(d*20|0)>>2]|0)+e|0;d=d+1|0;e=k}e=vH(e<<2)|0;d=0;while(1){if((d|0)>=(b|0))break;c[l+(d<<2)>>2]=0;d=d+1|0}f=0;while(1){if((f|0)>=(b|0))break;c[a+(f*20|0)+8>>2]=e;_r(a,f,l);h=a+(f*20|0)|0;i=c[h>>2]|0;j=a+(f*20|0)+4|0;k=i+-2|0;d=1;while(1){if((d|0)>=(i|0))break;m=c[(c[j>>2]|0)+(d<<2)>>2]|0;n=c[a+(m*20|0)>>2]|0;g[e+(d<<2)>>2]=+(k+n-((Zr(a,0,m,l)|0)<<1)|0);d=d+1|0}$r(a,f,l);e=e+(c[h>>2]<<2)|0;f=f+1|0}D_(l);return}function fs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+8|0;D_(c[e>>2]|0);c[e>>2]=0;a:do if(d|0){e=0;while(1){if((e|0)>=(b|0))break a;c[a+(e*20|0)+8>>2]=d;f=d+(c[a+(e*20|0)>>2]<<2)|0;e=e+1|0;d=f}}while(0);return}function gs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0.0,j=0;f=0;g=0.0;while(1){if((f|0)>=(b|0))break;j=c[a+(f<<2)>>2]|0;i=+h[j+(d<<3)>>3]-+h[j+(e<<3)>>3];f=f+1|0;g=i*i+g}return +(+C(+g))}function hs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if((e|0)>(d|0)){c[46103]=a;_0(b+(d<<2)|0,1-d+e|0,4,76)}return}function is(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0;f=c[46103]|0;e=+g[f+(c[a>>2]<<2)>>2];d=+g[f+(c[b>>2]<<2)>>2];return (e<d?-1:e>d&1)|0}function js(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;if((d|0)<(e|0)){ks(a,b,d,e,f);g=c[f>>2]|0;f=g+-1|0;js(a,b,d,f);g=g+1|0;js(a,b,g,e);if(!(ls(a,b,d,f)|0))js(a,b,d,f);if(!(ls(a,b,g,e)|0))js(a,b,g,e)}l=h;return}function ks(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,l=0.0,m=0,n=0;g=g2()|0;g=b+(((((g2()|0)<<16|g)>>>0)%((1-d+e|0)>>>0)|0)+d<<2)|0;j=c[g>>2]|0;k=b+(d<<2)|0;c[g>>2]=c[k>>2];c[k>>2]=j;l=+h[a+(j<<3)>>3];g=d+1|0;d=e;a:while(1){if((g|0)>=(d|0))break;while(1){if((g|0)>=(d|0))break;if(!(+h[a+(c[b+(g<<2)>>2]<<3)>>3]<=l))break;g=g+1|0}while(1){if((g|0)>=(d|0))continue a;e=b+(d<<2)|0;i=c[e>>2]|0;if(!(+h[a+(i<<3)>>3]>l))break;d=d+-1|0}n=b+(g<<2)|0;m=c[n>>2]|0;c[n>>2]=i;c[e>>2]=m;g=g+1|0;d=d+-1|0}n=g+((+h[a+(c[b+(g<<2)>>2]<<3)>>3]>l)<<31>>31)|0;c[f>>2]=n;n=b+(n<<2)|0;c[k>>2]=c[n>>2];c[n>>2]=j;return}function ls(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=1;while(1){f=d+1|0;if(!((d|0)<(e|0)&(g|0)!=0))break;g=+h[a+(c[b+(d<<2)>>2]<<3)>>3]>+h[a+(c[b+(f<<2)>>2]<<3)>>3]?0:g;d=f}return g|0}function ms(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0,i=0.0,j=0.0,k=0.0,m=0,n=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0,A=0.0;x=l;l=l+16|0;v=4;w=C_(40)|0;c[w>>2]=0;t=x;o=0;u=$(23,b*40|0)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,w|0,v|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)!=1){d=0;r=0;while(1){if((d|0)>=(b|0))break;s=(c[(c[a+(d<<2)>>2]|0)+4>>2]|0)+r|0;d=d+1|0;r=s}o=0;s=$(23,r*24|0)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,w|0,v|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)!=1){d=0;m=0;while(1){if((m|0)>=(b|0))break;n=u+(m*40|0)|0;c[n>>2]=s+(d*24|0);q=a+(m<<2)|0;f=0;g=1797693134862315708145274.0e284;i=-1797693134862315708145274.0e284;j=-1797693134862315708145274.0e284;k=1797693134862315708145274.0e284;while(1){e=c[q>>2]|0;if((f|0)>=(c[e+4>>2]|0))break;e=c[e>>2]|0;A=+h[e+(f<<4)>>3];y=+h[e+(f<<4)+8>>3];h[s+(d*24|0)>>3]=A;h[s+(d*24|0)+8>>3]=y;c[s+(d*24|0)+16>>2]=n;c[s+(d*24|0)+20>>2]=0;f=f+1|0;d=d+1|0;g=g<A?g:A;i=i>A?i:A;j=j>y?j:y;k=k<y?k:y}c[u+(m*40|0)+4>>2]=s+((d+-1|0)*24|0);h[u+(m*40|0)+8>>3]=g;h[u+(m*40|0)+16>>3]=k;h[u+(m*40|0)+24>>3]=i;h[u+(m*40|0)+32>>3]=j;m=m+1|0}c[t>>2]=r;c[t+4>>2]=b;w=D3(184416,1,w|0,v|0)|0;v=z;o=0;d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,w|0,v|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1){d=z;q=s;m=s;n=u}else{d=0;q=s;m=s;n=u}}else{d=z;q=0;m=s;n=u}}else{d=z;q=0;m=0;n=0}while(1){if(d|0){o=0;ia(103,u|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,w|0,v|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1){f=n;r=m;s=q;d=z;n=f;m=r;q=s;continue}o=0;ia(103,m|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,w|0,v|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1){f=n;r=m;s=q;d=z;n=f;m=r;q=s;continue}else{e=17;break}}o=0;d=aa(77,q|0,t|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,v|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){f=n;r=m;s=q;d=z;n=f;m=r;q=s;continue}if(!d){o=0;d=ca(24,a|0,b|0,n|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,v|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){f=n;r=m;s=q;d=z;n=f;m=r;q=s;continue}}o=0;ia(103,u|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,v|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){f=n;r=m;s=q;d=z;n=f;m=r;q=s;continue}o=0;ia(103,m|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,v|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){f=n;r=m;s=q;d=z;n=f;m=r;q=s}else{e=24;break}}if((e|0)==17)d=0;else if((e|0)==24)d=(d|0)==0&1;D_(w|0);l=x;return d|0}function ns(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;q=v;o=v+8|0;p=v+4|0;c[b+8>>2]=0;u=vH(c[b>>2]<<2)|0;f=c[b>>2]|0;e=0;while(1){if((e|0)>=(f|0))break;c[u+(e<<2)>>2]=a+(e*24|0);e=e+1|0}_0(u,f,4,78);m=0;g=0;f=0;h=0;a:while(1){if((m|0)>=(c[b>>2]|0)){s=0;d=g;t=h;break}n=u+(m<<2)|0;e=c[n>>2]|0;c[o>>2]=e;a=c[e+16>>2]|0;if((c[a>>2]|0)==(e|0))e=c[a+4>>2]|0;else e=e+-24|0;c[p>>2]=e;k=0;a=g;j=h;while(1){if((k|0)>=2)break;switch(ps(o,p)|0){case -1:{g=0;h=a;while(1){if((g|0)>=(j|0))break;i=qs(c[h>>2]|0,e)|0;if(i|0){s=i;d=a;t=j;break a}g=g+1|0;h=c[h+4>>2]|0}g=vH(12)|0;if(!j){f=0;a=g}else c[f+4>>2]=g;c[g+8>>2]=f;c[g>>2]=e;c[g+4>>2]=0;c[e+20>>2]=g;h=j+1|0;break}case 1:{e=e+20|0;g=c[e>>2]|0;if(!g){r=19;break a}do if((j|0)!=1){if((g|0)==(a|0)){a=c[a+4>>2]|0;c[a+8>>2]=0;break}if((g|0)==(f|0)){f=c[f+8>>2]|0;c[f+4>>2]=0;break}else{i=g+4|0;h=c[g+8>>2]|0;c[h+4>>2]=c[i>>2];c[(c[i>>2]|0)+8>>2]=h;break}}else{a=0;f=0}while(0);D_(g);c[e>>2]=0;g=f;h=j+-1|0;break}default:{g=f;h=j}}e=c[n>>2]|0;f=c[e+16>>2]|0;if((e|0)==(c[f+4>>2]|0))f=c[f>>2]|0;else f=e+24|0;c[p>>2]=f;k=k+1|0;f=g;j=h}m=m+1|0;g=a;h=j}if((r|0)==19){Pw(1,92219,q)|0;bb(184416,1)}e=0;while(1){if((e|0)>=(t|0))break;r=c[d+4>>2]|0;D_(d);e=e+1|0;d=r}D_(u);l=v;return s|0}function os(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0,B=0,C=0,D=0,E=0.0;D=l;l=l+48|0;o=D+24|0;n=D+16|0;u=D;e=0;a:while(1){if((e|0)>=(b|0)){e=0;break}z=c[a+(e<<2)>>2]|0;A=c[z>>2]|0;c[u>>2]=c[A>>2];c[u+4>>2]=c[A+4>>2];c[u+8>>2]=c[A+8>>2];c[u+12>>2]=c[A+12>>2];A=e+1|0;B=d+(e*40|0)+8|0;p=d+(e*40|0)+24|0;q=d+(e*40|0)+32|0;g=d+(e*40|0)+16|0;e=A;while(1){if((e|0)>=(b|0)){e=A;continue a}i=c[a+(e<<2)>>2]|0;j=+h[B>>3];k=+h[d+(e*40|0)+24>>3];m=!(j<=k);f=+h[d+(e*40|0)+8>>3];if((((!(m|!(j>=f))?(r=+h[g>>3],s=+h[d+(e*40|0)+32>>3],r<=s):0)?(t=+h[d+(e*40|0)+16>>3],r>=t):0)?(E=+h[p>>3],!(!(E<=k)|!(E>=f))):0)?(E=+h[q>>3],!(!(E<=s)|!(E>=t))):0){c[n>>2]=c[i>>2];c[n+4>>2]=c[i+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];c[o+8>>2]=c[u+8>>2];c[o+12>>2]=c[u+12>>2];if(wU(n,o)|0){e=1;break a}}else C=11;if((((((C|0)==11?(C=0,v=+h[p>>3],!(!(f<=v)|!(f>=j))):0)?(w=+h[d+(e*40|0)+16>>3],x=+h[q>>3],w<=x):0)?(y=+h[g>>3],!(!(w>=y)|(!(k<=v)|m))):0)?(E=+h[d+(e*40|0)+32>>3],!(!(E<=x)|!(E>=y))):0)?(m=c[i>>2]|0,c[n>>2]=c[z>>2],c[n+4>>2]=c[z+4>>2],c[o>>2]=c[m>>2],c[o+4>>2]=c[m+4>>2],c[o+8>>2]=c[m+8>>2],c[o+12>>2]=c[m+12>>2],wU(n,o)|0):0){e=1;break a}e=e+1|0}}l=D;return e|0}function ps(a,b){a=a|0;b=b|0;var d=0.0,e=0;e=c[a>>2]|0;a=c[b>>2]|0;d=+h[e>>3]-+h[a>>3];if(!(d!=0.0)){d=+h[e+8>>3]-+h[a+8>>3];if(d==0.0)a=0;else a=d>0.0?1:-1}else a=d>0.0?1:-1;return a|0}function qs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0;m=l;l=l+64|0;g=m+32|0;i=m+24|0;j=m+16|0;k=m;f=m+48|0;rs(a,b,f);d=f+8|0;e=c[d>>2]|0;do if((e|0)>0)d=0;else{if((e|0)<0){rs(b,a,f);d=c[d>>2]|0;if((d|0)>0){d=0;break}if((d|0)<0)d=3;else{d=c[f>>2]|0;d=ss(b,a,(d|0)>-1?d:0-d|0)|0}if(!(ts(a,b,i,j,d)|0)){d=0;break}}else{d=c[f>>2]|0;if((d|0)==(c[f+4>>2]|0)){d=ss(a,b,0)|0;d=(ss(a,b,(d|0)<=(ss(a,b,1)|0)&1)|0)<<1}else d=ss(a,b,(d|0)>-1?d:0-d|0)|0;if(!(ts(a,b,i,j,d)|0)){d=0;break}}h[k>>3]=+h[i>>3];h[k+8>>3]=+h[j>>3];c[g>>2]=c[k>>2];c[g+4>>2]=c[k+4>>2];c[g+8>>2]=c[k+8>>2];c[g+12>>2]=c[k+12>>2];d=us(a,b,g)|0}while(0);l=m;return d|0}function rs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0.0,j=0.0,k=0.0,l=0.0;i=+h[a>>3];j=+h[a+8>>3];e=c[a+16>>2]|0;if((c[e+4>>2]|0)==(a|0)){a=c[e>>2]|0;e=a}else{e=a+24|0;a=a+24|0}g=+h[e>>3]-i;f=+h[a+8>>3]-j;e=c[b+16>>2]|0;if((c[e+4>>2]|0)==(b|0)){a=c[e>>2]|0;e=a}else{e=b+24|0;a=b+24|0}k=+h[e>>3]-i;l=+h[a+8>>3]-j;j=(+h[b+8>>3]-j)*g-(+h[b>>3]-i)*f;b=j==0.0?0:j>0.0?1:-1;c[d>>2]=b;j=l*g-k*f;a=j==0.0?0:j>0.0?1:-1;c[d+4>>2]=a;c[d+8>>2]=O(a,b)|0;return}function ss(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0.0,i=0.0,j=0.0,k=0.0,l=0.0;k=+h[a>>3];l=+h[a+8>>3];f=c[a+16>>2]|0;if((c[f+4>>2]|0)==(a|0))a=c[f>>2]|0;else a=a+24|0;j=+h[a>>3];i=+h[a+8>>3];do if(d){a=c[b+16>>2]|0;if((c[a+4>>2]|0)==(b|0)){b=c[a>>2]|0;break}else{b=b+24|0;break}}while(0);g=+h[b>>3];e=+h[b+8>>3];if(k==j)if(k==g)b=(ws(l,e,i)|0)!=-1&1;else b=0;else b=ws(k,g,j)|0;return b|0}function ts(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0;a:do if((f|0)<1)g=0;else{n=+h[a>>3];p=+h[a+8>>3];g=c[a+16>>2]|0;if((c[g+4>>2]|0)==(a|0))g=c[g>>2]|0;else g=a+24|0;l=+h[g>>3];j=+h[g+8>>3];m=+h[b>>3];o=+h[b+8>>3];g=c[b+16>>2]|0;if((c[g+4>>2]|0)==(b|0))g=c[g>>2]|0;else g=b+24|0;k=+h[g>>3];i=+h[g+8>>3];b:do switch(f|0){case 3:{if(n==l){h[d>>3]=n;i=(o-i)/(m-k)*(n-k)+i;break b}if(m==k){h[d>>3]=m;i=(p-j)/(n-l)*(m-l)+j;break b}else{k=(o-i)/(m-k);l=(p-j)/(n-l);o=o-k*m;p=p-l*n;i=k-l;h[d>>3]=(p-o)/i;i=(k*p-o*l)/i;break b}}case 2:{if((ss(a,b,0)|0)==-1)if((ss(b,a,1)|0)==-1){f=(ss(b,a,0)|0)==-1;l=f?l:n;k=m;j=f?j:p;i=o}else{l=k;k=m;j=i;i=o}else if((ss(a,b,1)|0)!=-1)if((ss(b,a,0)|0)==-1){k=n;i=p}else{g=0;break a}else{l=m;j=o}h[d>>3]=(k+l)*.5;i=(i+j)*.5;break}case 1:if((o-p)*(n-l)==(m-n)*(p-j)){h[d>>3]=m;i=o;break b}else{h[d>>3]=k;break b}default:{g=1;break a}}while(0);h[e>>3]=i;g=1}while(0);return g|0}function us(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0.0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0;s=l;l=l+16|0;q=s;o=+h[a>>3];p=+h[a+8>>3];e=c[a+16>>2]|0;if((c[e+4>>2]|0)==(a|0))e=c[e>>2]|0;else e=a+24|0;m=+h[e>>3];j=+h[e+8>>3];k=+h[b>>3];n=+h[b+8>>3];e=c[b+16>>2]|0;if((c[e+4>>2]|0)==(b|0))e=c[e>>2]|0;else e=b+24|0;i=+h[e>>3];g=+h[e+8>>3];a:do if(!(o!=m&k!=i)){do if(o==m){f=+h[d>>3];if(o==f?p==+h[d+8>>3]:0)break;if(!(m==f)){r=18;break a}if(!(j==+h[d+8>>3])){r=18;break a}}while(0);if(k==i){f=+h[d>>3];if(k==f?n==+h[d+8>>3]:0){e=0;break}if(i==f?g==+h[d+8>>3]:0)e=0;else r=18}else e=0}else r=18;while(0);if((r|0)==18)if(0>1){e=c[15686]|0;p=+h[d+8>>3];h[q>>3]=+h[d>>3];h[q+8>>3]=p;g1(e,92248,q)|0;vs(1,a);vs(2,b);e=1}else e=1;l=s;return e|0}function vs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0,i=0.0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+48|0;j=k;f=c[15686]|0;g=+h[b>>3];i=+h[b+8>>3];d=c[b+16>>2]|0;if((c[d+4>>2]|0)==(b|0)){d=c[d>>2]|0;e=d}else{e=b+24|0;d=b+24|0}n=+h[e>>3];m=+h[d+8>>3];c[j>>2]=a;h[j+8>>3]=g;h[j+16>>3]=i;h[j+24>>3]=n;h[j+32>>3]=m;g1(f,92276,j)|0;l=k;return}function ws(a,b,c){a=+a;b=+b;c=+c;return (a==b|b==c?0:(a<b?b<c:c<b)?1:-1)|0}function xs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0.0,j=0;a:do if(!(lv(a,d)|0))a=0;else{f=uH(d<<3)|0;a=0;while(1){if((a|0)<(d|0))e=0;else break;while(1){if((e|0)==(d|0))break;h[f+(e<<3)>>3]=0.0;e=e+1|0}h[f+(a<<3)>>3]=1.0;mv(c[b+(a<<2)>>2]|0,f,d);a=a+1|0}D_(f);f=0;while(1){if((f|0)>=(d|0)){a=1;break a}e=b+(f<<2)|0;a=0;while(1){if((a|0)==(f|0))break;j=(c[e>>2]|0)+(a<<3)|0;i=+h[j>>3];g=(c[b+(a<<2)>>2]|0)+(f<<3)|0;h[j>>3]=+h[g>>3];h[g>>3]=i;a=a+1|0}f=f+1|0}}while(0);return a|0}function ys(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=b<<3;p=vH(q)|0;q=vH(q)|0;r=b*30|0;n=(d|0)<(b|0)?d:b;o=b+-1|0;m=(g|0)==0;d=0;i=0;a:while(1){if((i|0)>=(n|0))break;k=c[e+(i<<2)>>2]|0;do{b:do if(m)d=0;else{d=0;while(1){if((d|0)==(b|0)){d=0;break b}h[k+(d<<3)>>3]=+((g2()|0)%100|0|0);d=d+1|0}}while(0);while(1){if((d|0)==(i|0))break;g=c[e+(d<<2)>>2]|0;As(k,0,o,-+zs(g,0,o,k),g);d=d+1|0}j=+Bs(k,0,o)}while(j<1.0e-10);Cs(k,0,o,1.0/j,k);d=0;do{Ds(q,0,o,k);Es(a,b,b,k,p);Ds(k,0,o,p);g=0;while(1){if((g|0)==(i|0))break;s=c[e+(g<<2)>>2]|0;As(k,0,o,-+zs(s,0,o,k),s);g=g+1|0}s=d;d=d+1|0;j=+Bs(k,0,o);if(!((s|0)<(r|0)&!(j<1.0e-10)))break a;Cs(k,0,o,1.0/j,k);l=+zs(k,0,o,q)}while(+B(+l)<.999);h[f+(i<<3)>>3]=l*j;i=i+1|0}while(1){if((i|0)>=(n|0))break;k=c[e+(i<<2)>>2]|0;g=0;while(1){if((g|0)>=(b|0)){g=0;break}h[k+(g<<3)>>3]=+((g2()|0)%100|0|0);g=g+1|0}while(1){if((g|0)>=(i|0))break;s=c[e+(g<<2)>>2]|0;As(k,0,o,-+zs(s,0,o,k),s);g=g+1|0}Cs(k,0,o,1.0/+Bs(k,0,o),k);h[f+(i<<3)>>3]=0.0;i=i+1|0}m=n+-1|0;i=0;while(1){if((i|0)>=(m|0))break;a=f+(i<<3)|0;b=i+1|0;j=+h[a>>3];g=i;k=b;while(1){if((k|0)>=(n|0))break;l=+h[f+(k<<3)>>3];s=j<l;j=s?l:j;g=s?k:g;k=k+1|0}if((g|0)==(i|0)){i=b;continue}k=e+(i<<2)|0;Ds(p,0,o,c[k>>2]|0);s=e+(g<<2)|0;Ds(c[k>>2]|0,0,o,c[s>>2]|0);Ds(c[s>>2]|0,0,o,p);h[f+(g<<3)>>3]=+h[a>>3];h[a>>3]=j;i=b}D_(p);D_(q);return (d|0)<=(r|0)|0}function zs(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0.0;f=0.0;e=1-b+c|0;d=d+(b<<3)|0;c=a+(b<<3)|0;while(1){if(!e)break;f=+h[d>>3]*+h[c>>3]+f;e=e+-1|0;d=d+8|0;c=c+8|0}return +f}function As(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0;f=1-b+c|0;e=e+(b<<3)|0;c=a+(b<<3)|0;while(1){if(!f)break;h[c>>3]=+h[c>>3]+ +h[e>>3]*d;f=f+-1|0;e=e+8|0;c=c+8|0}return}function Bs(a,b,c){a=a|0;b=b|0;c=c|0;return +(+C(+(+zs(a,b,c,a))))}function Cs(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0;f=1-b+c|0;e=e+(b<<3)|0;c=a+(b<<3)|0;while(1){if(!f)break;h[c>>3]=+h[e>>3]*d;f=f+-1|0;e=e+8|0;c=c+8|0}return}function Ds(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=1-b+c|0;d=d+(b<<3)|0;c=a+(b<<3)|0;while(1){if(!e)break;h[c>>3]=+h[d>>3];e=e+-1|0;d=d+8|0;c=c+8|0}return}function Es(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,i=0,j=0,k=0;j=0;while(1){if((j|0)>=(b|0))break;k=a+(j<<2)|0;g=0.0;i=0;while(1){if((i|0)>=(d|0))break;g=+h[e+(i<<3)>>3]*+h[(c[k>>2]|0)+(i<<3)>>3]+g;i=i+1|0}h[f+(j<<3)>>3]=g;j=j+1|0}return}function Fs(a,b,d,e,f,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;var j=0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;k=c[i>>2]|0;if(!k){o=d<<2;j=C_(O(o,f)|0)|0;o=C_(o)|0}else{o=d<<2;j=F_(c[k>>2]|0,O(o,f)|0)|0;o=F_(k,o)|0}c[i>>2]=o;k=0;while(1){if((k|0)>=(d|0)){i=0;break}c[o+(k<<2)>>2]=j;k=k+1|0;j=j+(f<<2)|0}while(1){if((i|0)>=(d|0))break;m=a+(i<<2)|0;n=o+(i<<2)|0;k=0;while(1){if((k|0)<(f|0)){j=0;l=0.0}else break;while(1){if((j|0)>=(e|0))break;p=+h[(c[m>>2]|0)+(j<<3)>>3]*+g[(c[b+(j<<2)>>2]|0)+(k<<2)>>2]+l;j=j+1|0;l=p}g[(c[n>>2]|0)+(k<<2)>>2]=l;k=k+1|0}i=i+1|0}return}function Gs(a,b,d,e,f,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;var j=0,k=0,l=0.0,m=0,n=0,o=0;k=c[i>>2]|0;if(!k){j=C_(O(d<<3,f)|0)|0;o=C_(d<<2)|0}else{j=F_(c[k>>2]|0,O(d<<3,f)|0)|0;o=F_(k,d<<2)|0}c[i>>2]=o;k=0;while(1){if((k|0)>=(d|0)){i=0;break}c[o+(k<<2)>>2]=j;k=k+1|0;j=j+(f<<3)|0}while(1){if((i|0)>=(d|0))break;m=a+(i<<2)|0;n=o+(i<<2)|0;k=0;while(1){if((k|0)<(f|0)){l=0.0;j=0}else break;while(1){if((j|0)>=(e|0))break;l=+h[(c[m>>2]|0)+(j<<3)>>3]*+g[(c[b+(j<<2)>>2]|0)+(k<<2)>>2]+l;j=j+1|0}h[(c[n>>2]|0)+(k<<3)>>3]=l;k=k+1|0}i=i+1|0}return}function Hs(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var i=0,j=0,k=0.0,l=0,m=0,n=0,o=0,p=0,q=0;j=c[f>>2]|0;if(!j){i=C_(O(d*20|0,e)|0)|0;q=C_(d<<2)|0}else{i=F_(c[j>>2]|0,O(d*20|0,e)|0)|0;q=F_(j,d<<2)|0}c[f>>2]=q;j=0;while(1){if((j|0)>=(d|0)){f=0;break}c[q+(j<<2)>>2]=i;j=j+1|0;i=i+(e<<2)|0}while(1){if((f|0)>=(d|0))break;l=c[a+(f*20|0)+4>>2]|0;m=c[a+(f*20|0)+8>>2]|0;n=c[a+(f*20|0)>>2]|0;o=q+(f<<2)|0;i=0;while(1){if((i|0)>=(e|0))break;p=b+(i<<2)|0;k=0.0;j=0;while(1){if((j|0)>=(n|0))break;k=+h[(c[p>>2]|0)+(c[l+(j<<2)>>2]<<3)>>3]*+g[m+(j<<2)>>2]+k;j=j+1|0}g[(c[o>>2]|0)+(i<<2)>>2]=k;i=i+1|0}f=f+1|0}return}function Is(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=0.0;d=b;e=a;while(1){if(!e)break;c=+h[d>>3]+c;d=d+8|0;e=e+-1|0}c=c/+(a|0);while(1){if(!a)break;h[b>>3]=+h[b>>3]-c;b=b+8|0;a=a+-1|0}return}function Js(a,b){a=a|0;b=b|0;var c=0;c=0;while(1){if((c|0)>=(a|0))break;h[b+(c<<3)>>3]=+((g2()|0)%500|0|0);c=c+1|0}Is(a,b);return}function Ks(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,l=0,m=0;j=0;while(1){if((j|0)>=(b|0))break;k=c[a+(j*20|0)>>2]|0;l=a+(j*20|0)+8|0;m=a+(j*20|0)+4|0;f=0.0;i=0;while(1){if((i|0)>=(k|0))break;f=+h[d+(c[(c[m>>2]|0)+(i<<2)>>2]<<3)>>3]*+g[(c[l>>2]|0)+(i<<2)>>2]+f;i=i+1|0}h[e+(j<<3)>>3]=f;j=j+1|0}return}function Ls(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0;j=0;while(1){if((j|0)>=(b|0))break;k=a+(j<<2)|0;f=0.0;i=0;while(1){if((i|0)==(b|0))break;f=+h[d+(i<<3)>>3]*+g[(c[k>>2]|0)+(i<<2)>>2]+f;i=i+1|0}h[e+(j<<3)>>3]=f;j=j+1|0}return}function Ms(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=0;while(1){if((e|0)>=(a|0))break;h[d+(e<<3)>>3]=+h[b+(e<<3)>>3]-+h[c+(e<<3)>>3];e=e+1|0}return}function Ns(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=0;while(1){if((e|0)>=(a|0))break;h[d+(e<<3)>>3]=+h[c+(e<<3)>>3]+ +h[b+(e<<3)>>3];e=e+1|0}return}function Os(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0;e=0;while(1){if((e|0)>=(a|0))break;h[d+(e<<3)>>3]=+h[b+(e<<3)>>3]*c;e=e+1|0}return}function Ps(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=0;while(1){if((d|0)>=(a|0))break;h[c+(d<<3)>>3]=+h[b+(d<<3)>>3];d=d+1|0}return}function Qs(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0;d=0.0;e=0;while(1){if((e|0)>=(a|0))break;d=+h[c+(e<<3)>>3]*+h[b+(e<<3)>>3]+d;e=e+1|0}return +d}function Rs(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0;c=0;d=-1.e+50;while(1){if((c|0)>=(a|0))break;e=+B(+(+h[b+(c<<3)>>3]));c=c+1|0;d=e>d?e:d}return +d}function Ss(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,i=0,j=0;j=0;while(1){if((j|0)<(b|0)){g=0.0;i=0}else break;while(1){if((i|0)>=(d|0))break;g=+h[e+(i<<3)>>3]*+h[(c[a+(i<<2)>>2]|0)+(j<<3)>>3]+g;i=i+1|0}h[f+(j<<3)>>3]=g;j=j+1|0}return}function Ts(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=0.0;d=b;e=a;while(1){if(!e)break;c=+g[d>>2]+c;d=d+4|0;e=e+-1|0}c=c/+(a|0);while(1){if(!a)break;g[b>>2]=+g[b>>2]-c;b=b+4|0;a=a+-1|0}return}function Us(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,l=0.0,m=0,n=0.0,o=0,p=0.0;e=0;while(1){if((e|0)>=(b|0)){h=0;j=0;m=b;break}g[d+(e<<2)>>2]=0.0;e=e+1|0}while(1){if((j|0)>=(b|0))break;l=+g[c+(j<<2)>>2];k=j+1|0;f=+g[a+(h<<2)>>2]*l;i=k;e=h;while(1){e=e+1|0;if((i|0)==(b|0))break;p=+g[a+(e<<2)>>2];n=+g[c+(i<<2)>>2]*p+f;o=d+(i<<2)|0;g[o>>2]=+g[o>>2]+p*l;f=n;i=i+1|0}o=d+(j<<2)|0;g[o>>2]=+g[o>>2]+f;h=h+m|0;j=k;m=m+-1|0}return}function Vs(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=0;while(1){if((e|0)>=(a|0))break;g[d+(e<<2)>>2]=+g[b+(e<<2)>>2]-+g[c+(e<<2)>>2];e=e+1|0}return}function Ws(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=0;while(1){if((e|0)>=(a|0))break;g[d+(e<<2)>>2]=+g[c+(e<<2)>>2]+ +g[b+(e<<2)>>2];e=e+1|0}return}function Xs(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0;e=0;while(1){if((e|0)>=(a|0))break;f=b+(e<<2)|0;g[f>>2]=+g[d+(e<<2)>>2]*c+ +g[f>>2];e=e+1|0}return}function Ys(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0;e=0;while(1){if((e|0)>=(a|0))break;g[d+(e<<2)>>2]=+g[b+(e<<2)>>2]*c;e=e+1|0}return}function Zs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=0;while(1){if((e|0)>=(a|0))break;c[d+(e<<2)>>2]=c[b+(e<<2)>>2];e=e+1|0}return}function _s(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0;d=0.0;e=0;while(1){if((e|0)>=(a|0))break;d=d+ +g[c+(e<<2)>>2]*+g[b+(e<<2)>>2];e=e+1|0}return +d}function $s(a,b,c){a=a|0;b=+b;c=c|0;var d=0;d=0;while(1){if((d|0)>=(a|0))break;h[c+(d<<3)>>3]=b;d=d+1|0}return}function at(a,b,c){a=a|0;b=+b;c=c|0;var d=0;d=0;while(1){if((d|0)>=(a|0))break;g[c+(d<<2)>>2]=b;d=d+1|0}return}function bt(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0.0;c=-1000000015047466219876688.0e6;d=0;while(1){if((d|0)>=(a|0))break;e=+B(+(+g[b+(d<<2)>>2]));c=e>c?e:c;d=d+1|0}return +c}function ct(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0;c=0;while(1){if((c|0)>=(a|0))break;d=b+(c<<2)|0;e=+g[d>>2];g[d>>2]=e*e;c=c+1|0}return}function dt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0;c=0;while(1){if((c|0)>=(a|0))break;d=b+(c<<2)|0;e=+g[d>>2];if(e!=0.0)g[d>>2]=1.0/e;c=c+1|0}return}function et(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0.0;d=0;while(1){if((d|0)>=(a|0))break;e=+g[b+(d<<2)>>2];if(e>=0.0)g[c+(d<<2)>>2]=+C(+e);d=d+1|0}return}function ft(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0;c=0;while(1){if((c|0)>=(a|0))break;d=b+(c<<2)|0;e=+g[d>>2];if(e>0.0)g[d>>2]=1.0/+C(+e);c=c+1|0}return}function gt(a,b){a=a|0;b=b|0;var d=0;c[a>>2]=0;if(b&3)if(!(4%(b>>>0)|0))b=4;else b=O(4/((ht(b)|0)>>>0)|0,b)|0;c[a+8>>2]=b;a=a+4|0;b=c[a>>2]|0;a:do if(b|0)while(1){if(!b)break a;d=c[b>>2]|0;D_(c[b+4>>2]|0);D_(b);b=d}while(0);c[a>>2]=0;return}function ht(a){a=a|0;var b=0,c=0;c=4;a:while(1){b=c;while(1){if((b|0)==(a|0))break a;if((b|0)<=(a|0))break;b=b-a|0}c=b;a=a-b|0}return a|0}function it(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[a>>2]|0;if(!b){d=c[a+8>>2]|0;e=vH(8)|0;f=vH(O(c[46085]|0,d)|0)|0;c[e+4>>2]=f;b=0;while(1){if((b|0)>=(c[46085]|0))break;jt(f+(O(b,d)|0)|0,a);b=b+1|0}b=a+4|0;c[e>>2]=c[b>>2];c[b>>2]=e;b=c[a>>2]|0}c[a>>2]=c[b>>2];return b|0}function jt(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=a;return}function kt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,l=0,m=0;m=uH(b<<3)|0;l=a+8|0;f=c[l>>2]|0;lt(a,b,m);Js(b,d);h=0;i=0;while(1){if((i|0)>=(b|0))break;h=(c[a+(i*20|0)>>2]|0)+h|0;i=i+1|0}h=vH(h<<2)|0;j=0;while(1){if((j|0)>=(b|0))break;c[a+(j*20|0)+8>>2]=h;k=c[a+(j*20|0)>>2]|0;g[h>>2]=+(1-k|0);i=1;while(1){if((i|0)>=(k|0))break;g[h+(i<<2)>>2]=1.0;i=i+1|0}h=h+(k<<2)|0;j=j+1|0}i=Dq(a,d,m,b,.001,e)|0;D_(c[l>>2]|0);h=0;while(1){if((h|0)>=(b|0))break;c[a+(h*20|0)+8>>2]=f;f=f+(c[a+(h*20|0)>>2]<<2)|0;h=h+1|0}D_(m);return i>>>31|0}function lt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,i=0,j=0,k=0,l=0,m=0;k=a+16|0;i=0;while(1){if((i|0)>=(b|0))break;if(c[k>>2]|0){l=c[a+(i*20|0)>>2]|0;m=a+(i*20|0)+8|0;j=a+(i*20|0)+16|0;e=0.0;f=1;while(1){if((f|0)>=(l|0))break;e=e+ +g[(c[j>>2]|0)+(f<<2)>>2]*+g[(c[m>>2]|0)+(f<<2)>>2];f=f+1|0}h[d+(i<<3)>>3]=e}i=i+1|0}return}function mt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0;r=vH(f<<2)|0;i=b<<3;g=0;while(1){if((g|0)>=(f|0))break;c[r+(g<<2)>>2]=vH(i)|0;g=g+1|0}p=vH(f<<3)|0;q=vH(b<<2)|0;g=vH(O(i,b)|0)|0;i=0;while(1){if((i|0)>=(b|0))break;c[q+(i<<2)>>2]=g;g=g+(b<<3)|0;i=i+1|0}k=0;o=1;while(1){if((k|0)>=(b|0))break;l=a+(k<<2)|0;m=q+(k<<2)|0;i=0;while(1){if((i|0)==(o|0))break;n=a+(i<<2)|0;g=0;j=0.0;while(1){if((g|0)>=(d|0))break;s=j+ +(O(c[(c[n>>2]|0)+(g<<2)>>2]|0,c[(c[l>>2]|0)+(g<<2)>>2]|0)|0);g=g+1|0;j=s}h[(c[q+(i<<2)>>2]|0)+(k<<3)>>3]=j;h[(c[m>>2]|0)+(i<<3)>>3]=j;i=i+1|0}k=k+1|0;o=o+1|0}ys(q,b,f,r,p,1)|0;i=0;while(1){if((i|0)>=(f|0)){g=0;break}l=r+(i<<2)|0;m=e+(i<<2)|0;k=0;while(1){if((k|0)<(d|0)){g=0;j=0.0}else break;while(1){if((g|0)>=(b|0))break;s=+h[(c[l>>2]|0)+(g<<3)>>3]*+(c[(c[a+(g<<2)>>2]|0)+(k<<2)>>2]|0)+j;g=g+1|0;j=s}h[(c[m>>2]|0)+(k<<3)>>3]=j;k=k+1|0}i=i+1|0}while(1){if((g|0)>=(f|0))break;D_(c[r+(g<<2)>>2]|0);g=g+1|0}D_(r);D_(p);D_(c[q>>2]|0);D_(q);return}function nt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+16|0;j=f+20|0;i=f+12|0;h=f+8|0;c[g>>2]=e;c[i>>2]=0;c[h>>2]=0;$u(c[a>>2]|0,d,d<<2,j);Hs(c[j>>2]|0,a,d,b,i);Gs(a,c[i>>2]|0,b,d,b,h);D_(c[c[i>>2]>>2]|0);D_(c[i>>2]|0);e=(ys(c[h>>2]|0,b,1,g,f,1)|0)&255;l=f;return e|0}function ot(){c[46143]=0;D_(c[46144]|0);D_(c[46145]|0);D_(c[46146]|0);c[46144]=0;c[46145]=0;c[46146]=0;return}function pt(a){a=a|0;D_(c[a+36>>2]|0);return}function qt(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0.0,v=0.0;r=l;l=l+80|0;o=r+64|0;q=r+68|0;i=r+48|0;j=r+32|0;k=r+16|0;m=r;n=d+16|0;g=c[n>>2]|0;a:do if(!(c[g+212>>2]|0))switch(HJ(d)|0){case 1:{g=c[n>>2]|0;j=c[g+12>>2]|0;k=c[j+8>>2]|0;c[q>>2]=k;g=c[c[g+8>>2]>>2]|0;switch(a[g>>0]|0){case 98:{if(!(b$(g,105210)|0))p=11;else p=8;break}case 112:{if((b$(g,102695)|0)==0?(rt(c[j+44>>2]|0,k)|0)!=0:0)p=11;else p=8;break}default:p=8}do if((p|0)==8)if((k|0)<3){c[b+40>>2]=(c[j>>2]|0)==0?0:2;p=17;break}else{g=b+40|0;c[g>>2]=0;break}else if((p|0)==11){g=b+40|0;c[g>>2]=1;if((k|0)<=2)p=17}while(0);if((p|0)==17){i=st(d,q,e,f)|0;p=21;break a}i=vH(k<<4)|0;j=j+44|0;if((c[g>>2]|0)==1){p=c[j>>2]|0;s=e;h[i>>3]=+h[p>>3]*.013888888888888888+s;e=f;h[i+8>>3]=+h[p+8>>3]*.013888888888888888+e;h[i+16>>3]=+h[p+16>>3]*.013888888888888888-s;h[i+24>>3]=+h[p+24>>3]*.013888888888888888+e;h[i+32>>3]=+h[p+32>>3]*.013888888888888888-s;h[i+40>>3]=+h[p+40>>3]*.013888888888888888-e;h[i+48>>3]=+h[p+48>>3]*.013888888888888888+s;h[i+56>>3]=+h[p+56>>3]*.013888888888888888-e;p=21;break a}g=0;while(1){if((g|0)>=(k|0)){p=21;break a}p=c[j>>2]|0;u=+h[p+(g<<4)>>3];s=+h[p+(g<<4)+8>>3];t=+C(+(s*s+u*u));h[i+(g<<4)>>3]=(e/t+1.0)*u*.013888888888888888;h[i+(g<<4)+8>>3]=(f/t+1.0)*s*.013888888888888888;g=g+1|0}}case 2:{c[q>>2]=4;p=vH(64)|0;d=c[(c[n>>2]|0)+12>>2]|0;v=+h[d+32>>3];t=+h[d+40>>3];o=~~+h[d+16>>3];d=~~+h[d+24>>3];u=-e;s=-f;tt(i,o,d,u,s);c[p>>2]=c[i>>2];c[p+4>>2]=c[i+4>>2];c[p+8>>2]=c[i+8>>2];c[p+12>>2]=c[i+12>>2];i=p+16|0;n=~~v;tt(j,n,d,e,s);c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];i=p+32|0;d=~~t;tt(k,n,d,e,f);c[i>>2]=c[k>>2];c[i+4>>2]=c[k+4>>2];c[i+8>>2]=c[k+8>>2];c[i+12>>2]=c[k+12>>2];i=p+48|0;tt(m,o,d,u,f);c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[i+8>>2]=c[m+8>>2];c[i+12>>2]=c[m+12>>2];c[b+40>>2]=1;i=p;p=21;break a}case 3:{c[b+40>>2]=2;i=st(d,q,e,f)|0;p=21;break a}default:{c[o>>2]=c[c[(c[n>>2]|0)+8>>2]>>2];Pw(1,92312,o)|0;g=1;break a}}else{c[q>>2]=4;u=+h[g+32>>3]*.5+e;v=+h[g+40>>3]*.5+f;c[b+40>>2]=1;i=vH(64)|0;h[i>>3]=u;h[i+8>>3]=v;t=-u;h[i+16>>3]=t;h[i+24>>3]=v;h[i+32>>3]=t;v=-v;h[i+40>>3]=v;h[i+48>>3]=u;h[i+56>>3]=v;p=21}while(0);if((p|0)==21){c[b+36>>2]=i;g=c[q>>2]|0;c[b+32>>2]=g;ut(i,g,b,b+16|0);if((g|0)>(c[46143]|0)){c[46143]=g;g=0}else g=0}l=r;return g|0}function rt(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;do if((b|0)==4){c=+h[a+8>>3];b=a+16|0;d=+h[a+24>>3];if(c==d){if(!(+h[a+40>>3]==+h[a+56>>3])){b=0;break}if(!(+h[a>>3]==+h[a+48>>3])){b=0;break}b=+h[b>>3]==+h[a+32>>3];break}if((+h[a>>3]==+h[b>>3]?+h[a+32>>3]==+h[a+48>>3]:0)?c==+h[a+56>>3]:0)b=d==+h[a+40>>3];else b=0}else b=0;while(0);return b&1|0}function st(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0.0,i=0,j=0,k=0.0,l=0;f=xx(a,99679)|0;if(!f)f=0;else f=a2(f)|0;i=(f|0)<3?20:f;j=vH(i<<4)|0;a=a+16|0;g=1.0/+(i|0);f=0;while(1){if((f|0)>=(i|0))break;l=c[a>>2]|0;k=g*+(f|0)*6.283185307179586;h[j+(f<<4)>>3]=(+h[l+32>>3]*.5+d)*+E(+k);h[j+(f<<4)+8>>3]=(+h[l+40>>3]*.5+e)*+F(+k);f=f+1|0}c[b>>2]=i;return j|0}function tt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;h[a>>3]=+(b|0)*.013888888888888888+d;h[a+8>>3]=+(c|0)*.013888888888888888+e;return}function ut(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0.0,g=0.0,i=0.0,j=0.0,k=0,l=0.0,m=0.0;j=+h[a>>3];i=+h[a+8>>3];e=1;f=i;g=j;while(1){if((e|0)>=(b|0))break;k=a+16|0;l=+h[k>>3];m=+h[a+24>>3];e=e+1|0;f=m>f?m:f;g=l>g?l:g;i=m<i?m:i;j=l<j?l:j;a=k}h[c>>3]=j;h[c+8>>3]=i;h[d>>3]=g;h[d+8>>3]=f;return}function vt(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0.0,v=0.0;r=l;l=l+80|0;n=r+64|0;p=r+68|0;i=r+48|0;j=r+32|0;k=r+16|0;m=r;o=d+16|0;g=c[o>>2]|0;a:do if(!(c[g+212>>2]|0))switch(HJ(d)|0){case 1:{m=c[(c[o>>2]|0)+12>>2]|0;n=m+8|0;k=c[n>>2]|0;c[p>>2]=k;b:do if((k|0)>2){i=vH(k<<4)|0;j=m+44|0;g=0;while(1){if((g|0)>=(k|0))break b;d=c[j>>2]|0;h[i+(g<<4)>>3]=+h[d+(g<<4)>>3]*.013888888888888888;h[i+(g<<4)+8>>3]=+h[d+(g<<4)+8>>3]*.013888888888888888;g=g+1|0}}else i=st(d,p,0.0,0.0)|0;while(0);g=c[c[(c[o>>2]|0)+8>>2]>>2]|0;switch(a[g>>0]|0){case 98:{if(!(b$(g,105210)|0))g=1;else q=13;break}case 112:{if((b$(g,102695)|0)==0?(rt(i,c[p>>2]|0)|0)!=0:0)g=1;else q=13;break}default:q=13}do if((q|0)==13){if((c[n>>2]|0)<3?c[m>>2]|0:0){g=2;break}g=0}while(0);c[b+40>>2]=g;q=20;break a}case 2:{c[p>>2]=4;q=vH(64)|0;o=c[(c[o>>2]|0)+12>>2]|0;t=+h[o+16>>3];v=+h[o+24>>3];u=+h[o+32>>3];s=+h[o+40>>3];wt(i,t,v);c[q>>2]=c[i>>2];c[q+4>>2]=c[i+4>>2];c[q+8>>2]=c[i+8>>2];c[q+12>>2]=c[i+12>>2];i=q+16|0;wt(j,u,v);c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];i=q+32|0;wt(k,u,s);c[i>>2]=c[k>>2];c[i+4>>2]=c[k+4>>2];c[i+8>>2]=c[k+8>>2];c[i+12>>2]=c[k+12>>2];i=q+48|0;wt(m,t,s);c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[i+8>>2]=c[m+8>>2];c[i+12>>2]=c[m+12>>2];c[b+40>>2]=1;i=q;q=20;break a}case 3:{c[b+40>>2]=2;i=st(d,p,0.0,0.0)|0;q=20;break a}default:{c[n>>2]=c[c[(c[o>>2]|0)+8>>2]>>2];Pw(1,92348,n)|0;g=1;break a}}else{c[p>>2]=4;u=+h[g+32>>3]*.5;v=+h[g+40>>3]*.5;c[b+40>>2]=1;i=vH(64)|0;h[i>>3]=u;h[i+8>>3]=v;t=-u;h[i+16>>3]=t;h[i+24>>3]=v;h[i+32>>3]=t;v=-v;h[i+40>>3]=v;h[i+48>>3]=u;h[i+56>>3]=v;q=20}while(0);if((q|0)==20){g=c[p>>2]|0;if(e!=1.0|f!=1.0)xt(i,g,e,f);c[b+36>>2]=i;c[b+32>>2]=g;ut(i,g,b,b+16|0);if((g|0)>(c[46143]|0)){c[46143]=g;g=0}else g=0}l=r;return g|0}function wt(a,b,c){a=a|0;b=+b;c=+c;h[a>>3]=b*.013888888888888888;h[a+8>>3]=c*.013888888888888888;return}function xt(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=0;while(1){if((e|0)>=(b|0))break;h[a>>3]=+h[a>>3]*c;f=a+8|0;h[f>>3]=+h[f>>3]*d;a=a+16|0;e=e+1|0}return}function yt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0.0,v=0;r=l;l=l+128|0;o=r+112|0;n=r+96|0;m=r+80|0;f=r+64|0;p=r+48|0;q=r+32|0;j=r+16|0;k=r;c[n>>2]=c[a>>2];c[n+4>>2]=c[a+4>>2];c[n+8>>2]=c[a+8>>2];c[n+12>>2]=c[a+12>>2];c[o>>2]=c[b>>2];c[o+4>>2]=c[b+4>>2];c[o+8>>2]=c[b+8>>2];c[o+12>>2]=c[b+12>>2];xr(p,n,o);g=b+16|0;c[n>>2]=c[a>>2];c[n+4>>2]=c[a+4>>2];c[n+8>>2]=c[a+8>>2];c[n+12>>2]=c[a+12>>2];c[o>>2]=c[g>>2];c[o+4>>2]=c[g+4>>2];c[o+8>>2]=c[g+8>>2];c[o+12>>2]=c[g+12>>2];xr(q,n,o);c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];c[n+12>>2]=c[d+12>>2];c[o>>2]=c[e>>2];c[o+4>>2]=c[e+4>>2];c[o+8>>2]=c[e+8>>2];c[o+12>>2]=c[e+12>>2];xr(j,n,o);i=e+16|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];c[n+12>>2]=c[d+12>>2];c[o>>2]=c[i>>2];c[o+4>>2]=c[i+4>>2];c[o+8>>2]=c[i+8>>2];c[o+12>>2]=c[i+12>>2];xr(k,n,o);c[f>>2]=c[p>>2];c[f+4>>2]=c[p+4>>2];c[f+8>>2]=c[p+8>>2];c[f+12>>2]=c[p+12>>2];c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];c[m+12>>2]=c[q+12>>2];c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2];c[n+12>>2]=c[j+12>>2];c[o>>2]=c[k>>2];c[o+4>>2]=c[k+4>>2];c[o+8>>2]=c[k+8>>2];c[o+12>>2]=c[k+12>>2];do if(zt(f,m,n,o)|0){f=c[b+40>>2]|0;if(f&1|0?c[e+40>>2]&1|0:0){f=1;break}if(f&2|0?c[e+40>>2]&2|0:0){s=+h[g>>3]-+h[b>>3]+ +h[i>>3]-+h[e>>3];t=+h[a>>3]-+h[d>>3];u=+h[a+8>>3]-+h[d+8>>3];f=!(u*u+t*t>s*s*.25);break}f=c[46144]|0;if(!f){c[46144]=vH(c[46143]<<4)|0;i=vH(c[46143]<<4)|0;c[46145]=i;f=c[46144]|0}else i=c[46145]|0;v=c[b+36>>2]|0;b=b+32|0;g=c[b>>2]|0;c[o>>2]=c[a>>2];c[o+4>>2]=c[a+4>>2];c[o+8>>2]=c[a+8>>2];c[o+12>>2]=c[a+12>>2];At(v,g,o,f);a=c[e+36>>2]|0;g=e+32|0;e=c[g>>2]|0;c[o>>2]=c[d>>2];c[o+4>>2]=c[d+4>>2];c[o+8>>2]=c[d+8>>2];c[o+12>>2]=c[d+12>>2];At(a,e,o,i);if(!(Bt(f,i,c[b>>2]|0,c[g>>2]|0)|0)){f=c[46144]|0;c[m>>2]=c[f>>2];c[m+4>>2]=c[f+4>>2];c[m+8>>2]=c[f+8>>2];c[m+12>>2]=c[f+12>>2];c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2];c[n+12>>2]=c[j+12>>2];c[o>>2]=c[k>>2];c[o+4>>2]=c[k+4>>2];c[o+8>>2]=c[k+8>>2];c[o+12>>2]=c[k+12>>2];if(Ct(m,n,o)|0?(k=c[46145]|0,v=c[g>>2]|0,c[o>>2]=c[f>>2],c[o+4>>2]=c[f+4>>2],c[o+8>>2]=c[f+8>>2],c[o+12>>2]=c[f+12>>2],Dt(k,v,o)|0):0){f=1;break}f=c[46145]|0;c[m>>2]=c[f>>2];c[m+4>>2]=c[f+4>>2];c[m+8>>2]=c[f+8>>2];c[m+12>>2]=c[f+12>>2];c[n>>2]=c[p>>2];c[n+4>>2]=c[p+4>>2];c[n+8>>2]=c[p+8>>2];c[n+12>>2]=c[p+12>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];c[o+8>>2]=c[q+8>>2];c[o+12>>2]=c[q+12>>2];if(!(Ct(m,n,o)|0))f=0;else{q=c[46144]|0;v=c[b>>2]|0;c[o>>2]=c[f>>2];c[o+4>>2]=c[f+4>>2];c[o+8>>2]=c[f+8>>2];c[o+12>>2]=c[f+12>>2];f=(Dt(q,v,o)|0)!=0}}else f=1}else f=0;while(0);l=r;return f&1|0}function zt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((+h[a>>3]<=+h[d>>3]?+h[c>>3]<=+h[b>>3]:0)?+h[a+8>>3]<=+h[d+8>>3]:0)a=+h[c+8>>3]<=+h[b+8>>3]&1;else a=0;return a|0}function At(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;f=c+8|0;e=0;while(1){if((e|0)>=(b|0))break;h[d>>3]=+h[c>>3]+ +h[a>>3];h[d+8>>3]=+h[f>>3]+ +h[a+8>>3];e=e+1|0;a=a+16|0;d=d+16|0}return}function Bt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;A=l;l=l+112|0;s=A+96|0;r=A+80|0;q=A+64|0;p=A+48|0;u=A+32|0;v=A+16|0;w=A;x=d+-1|0;y=e+-1|0;z=d<<1;t=e<<1;f=0;g=0;h=0;i=0;while(1){B=a+(f<<4)|0;C=a+(((x+f|0)%(d|0)|0)<<4)|0;c[r>>2]=c[B>>2];c[r+4>>2]=c[B+4>>2];c[r+8>>2]=c[B+8>>2];c[r+12>>2]=c[B+12>>2];c[s>>2]=c[C>>2];c[s+4>>2]=c[C+4>>2];c[s+8>>2]=c[C+8>>2];c[s+12>>2]=c[C+12>>2];wr(u,r,s);o=b+(g<<4)|0;n=b+(((y+g|0)%(e|0)|0)<<4)|0;c[r>>2]=c[o>>2];c[r+4>>2]=c[o+4>>2];c[r+8>>2]=c[o+8>>2];c[r+12>>2]=c[o+12>>2];c[s>>2]=c[n>>2];c[s+4>>2]=c[n+4>>2];c[s+8>>2]=c[n+8>>2];c[s+12>>2]=c[n+12>>2];wr(v,r,s);c[q>>2]=c[45770];c[q+4>>2]=c[45771];c[q+8>>2]=c[45772];c[q+12>>2]=c[45773];c[r>>2]=c[u>>2];c[r+4>>2]=c[u+4>>2];c[r+8>>2]=c[u+8>>2];c[r+12>>2]=c[u+12>>2];c[s>>2]=c[v>>2];c[s+4>>2]=c[v+4>>2];c[s+8>>2]=c[v+8>>2];c[s+12>>2]=c[v+12>>2];j=+yr(q,r,s);c[q>>2]=c[C>>2];c[q+4>>2]=c[C+4>>2];c[q+8>>2]=c[C+8>>2];c[q+12>>2]=c[C+12>>2];c[r>>2]=c[B>>2];c[r+4>>2]=c[B+4>>2];c[r+8>>2]=c[B+8>>2];c[r+12>>2]=c[B+12>>2];c[s>>2]=c[o>>2];c[s+4>>2]=c[o+4>>2];c[s+8>>2]=c[o+8>>2];c[s+12>>2]=c[o+12>>2];k=zr(q,r,s)|0;c[q>>2]=c[n>>2];c[q+4>>2]=c[n+4>>2];c[q+8>>2]=c[n+8>>2];c[q+12>>2]=c[n+12>>2];c[r>>2]=c[o>>2];c[r+4>>2]=c[o+4>>2];c[r+8>>2]=c[o+8>>2];c[r+12>>2]=c[o+12>>2];c[s>>2]=c[B>>2];c[s+4>>2]=c[B+4>>2];c[s+8>>2]=c[B+8>>2];c[s+12>>2]=c[B+12>>2];m=zr(q,r,s)|0;c[p>>2]=c[C>>2];c[p+4>>2]=c[C+4>>2];c[p+8>>2]=c[C+8>>2];c[p+12>>2]=c[C+12>>2];c[q>>2]=c[B>>2];c[q+4>>2]=c[B+4>>2];c[q+8>>2]=c[B+8>>2];c[q+12>>2]=c[B+12>>2];c[r>>2]=c[n>>2];c[r+4>>2]=c[n+4>>2];c[r+8>>2]=c[n+8>>2];c[r+12>>2]=c[n+12>>2];c[s>>2]=c[o>>2];c[s+4>>2]=c[o+4>>2];c[s+8>>2]=c[o+8>>2];c[s+12>>2]=c[o+12>>2];if(Ar(p,q,r,s,w)|0){f=1;break}n=(k|0)==0;o=(m|0)==0;do if(j!=0.0|(m|k|0)!=0)if(!(j>=0.0))if(o){f=(f+1|0)%(d|0)|0;h=h+1|0;break}else{g=(g+1|0)%(e|0)|0;i=i+1|0;break}else if(n){g=(g+1|0)%(e|0)|0;i=i+1|0;break}else{f=(f+1|0)%(d|0)|0;h=h+1|0;break}else{f=(f+1|0)%(d|0)|0;h=h+1|0}while(0);if(!((i|0)<(t|0)&((h|0)<(z|0)&((i|0)<(e|0)|(h|0)<(d|0))))){f=0;break}}l=A;return f|0}function Ct(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0;e=+h[a>>3];if((e<=+h[c>>3]?e>=+h[b>>3]:0)?(d=+h[a+8>>3],d<=+h[c+8>>3]):0)a=d>=+h[b+8>>3]&1;else a=0;return a|0}function Dt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0,i=0,j=0.0,k=0.0,l=0;e=c[46146]|0;if(!e){e=vH(c[46143]<<4)|0;c[46146]=e}i=d+8|0;g=0;while(1){if((g|0)>=(b|0))break;h[e+(g<<4)>>3]=+h[a+(g<<4)>>3]-+h[d>>3];h[e+(g<<4)+8>>3]=+h[a+(g<<4)+8>>3]-+h[i>>3];g=g+1|0}d=b+-1|0;f=0.0;a=0;a:while(1){if((a|0)>=(b|0)){l=19;break}g=(d+a|0)%(b|0)|0;j=+h[e+(a<<4)+8>>3];i=j==0.0;if(i?+h[e+(g<<4)+8>>3]==0.0:0){if(+h[e+(g<<4)>>3]*+h[e+(a<<4)>>3]<0.0){e=1;break}}else l=11;do if((l|0)==11){l=0;k=+h[e+(g<<4)+8>>3];if(!(j>=0.0)|!(k<=0.0)?!(k>=0.0)|!(j<=0.0):0)break;j=(k*+h[e+(a<<4)>>3]-j*+h[e+(g<<4)>>3])/(k-j);if(j==0.0){e=1;break a}if(j>0.0)if(k==0.0|i){f=f+.5;break}else{f=f+1.0;break}}while(0);a=a+1|0}if((l|0)==19)e=((~~f|0)%2|0|0)==1&1;return e|0}function Et(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=vH(b<<2)|0;i=O(b,b)|0;d=vH(i<<2)|0;c[j>>2]=d;at(i,0.0,d);d=1;while(1){if((d|0)>=(b|0)){d=0;g=0;i=b;break}c[j+(d<<2)>>2]=(c[j>>2]|0)+((O(d,b)|0)<<2);d=d+1|0}while(1){if((g|0)>=(b|0))break;h=j+(g<<2)|0;e=g;f=d;while(1){if((e|0)==(b|0))break;k=c[a+(f<<2)>>2]|0;c[(c[h>>2]|0)+(e<<2)>>2]=k;c[(c[j+(e<<2)>>2]|0)+(g<<2)>>2]=k;e=e+1|0;f=f+1|0}d=d+i|0;g=g+1|0;i=i+-1|0}return j|0}function Ft(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;var k=0.0,l=0.0,m=0.0,n=0,o=0,p=0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0.0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0;M=c[d+(f<<2)>>2]|0;C=c[a+4>>2]|0;D=c[a>>2]|0;E=c[a+48>>2]|0;F=c[a+52>>2]|0;G=c[a+56>>2]|0;a:do if((h|0)<1)d=0;else{Ht(M,C,E,F,G,j);H=c[a+28>>2]|0;I=c[a+32>>2]|0;J=c[a+36>>2]|0;K=c[a+12>>2]|0;L=c[a+16>>2]|0;f=0;e=0;d=-1;while(1){if((f|0)>=(C|0))break;if((f|0)>=(e|0)){d=d+1|0;if((d|0)==(G|0)){e=C;d=G}else e=c[F+(d<<2)>>2]|0}c[L+(c[E+(f<<2)>>2]<<2)>>2]=d;f=f+1|0}z=c[a+40>>2]|0;A=I+(C+-1<<2)|0;d=0;e=0;while(1){if(e<<24>>24==0&(d|0)<(h|0)){k=-1.0e9;f=0;e=1}else break a;b:while(1){x=f;while(1){if((x|0)>=(C|0))break b;f=c[E+(x<<2)>>2]|0;y=+g[M+(f<<2)>>2];l=y;w=x;m=0.0;while(1){g[z+(f<<2)>>2]=m;f=w+1|0;if((f|0)>=(C|0)){v=0;break}l=(c[L+(f<<2)>>2]|0)>(c[L+(w<<2)>>2]|0)?l+j:l;a=c[E+(f<<2)>>2]|0;m=+g[M+(a<<2)>>2];if(+B(+(m-l))>1.0e-09){v=1;break}w=f;m=m-y;f=a}n=x;while(1){if((n|0)>(w|0)){a=0;o=x;break}o=c[E+(n<<2)>>2]|0;p=c[D+(o<<2)>>2]|0;a=0;l=-+g[b+(o<<2)>>2];while(1){if((a|0)>=(C|0))break;if((a|0)!=(o|0))l=+g[M+(a<<2)>>2]*+g[p+(a<<2)>>2]+l;a=a+1|0}g[H+(o<<2)>>2]=l/-+g[p+(o<<2)>>2]-+g[z+(o<<2)>>2];n=n+1|0}c:while(1){if((o|0)>(w|0)){m=0.0;q=0.0;r=0;break}n=c[L+(c[E+(o<<2)>>2]<<2)>>2]|0;if((n|0)==(G|0))r=f;else{r=c[F+(n<<2)>>2]|0;r=(f|0)<(r|0)?f:r}p=o;while(1){if((p|0)>=(r|0)){p=o;break}n=c[E+(p<<2)>>2]|0;if(+g[H+(n<<2)>>2]<y){c[K+(a<<2)>>2]=n;a=a+1|0}p=p+1|0}while(1){if((p|0)>=(r|0))break;n=c[E+(p<<2)>>2]|0;if(+g[H+(n<<2)>>2]==y){c[K+(a<<2)>>2]=n;a=a+1|0}p=p+1|0}while(1){if((o|0)>=(r|0)){o=r;continue c}n=c[E+(o<<2)>>2]|0;if(+g[H+(n<<2)>>2]>y){c[K+(a<<2)>>2]=n;a=a+1|0}o=o+1|0}}while(1){if((r|0)>=(a|0))break;o=c[K+(r<<2)>>2]|0;p=c[D+(o<<2)>>2]|0;l=0.0;n=0;while(1){if((n|0)==(r|0))break;l=l-+g[p+(c[K+(n<<2)>>2]<<2)>>2];n=n+1|0}N=l*2.0;u=p+(o<<2)|0;s=+g[u>>2];l=N+m;s=(N*y+m*q-+g[H+(o<<2)>>2]*s)/(l-s);g[I+(r<<2)>>2]=s;m=l-+g[u>>2];q=s;r=r+1|0}p=(a|0)==(C|0);if(p)g[A>>2]=y;u=a+-1|0;m=0.0;q=0.0;o=u;while(1){if((o|0)<=-1)break;r=c[K+(o<<2)>>2]|0;t=c[D+(r<<2)>>2]|0;l=0.0;n=o;while(1){n=n+1|0;if((n|0)>=(a|0))break;l=l-+g[t+(c[K+(n<<2)>>2]<<2)>>2]}l=l*2.0;t=t+(r<<2)|0;N=+g[t>>2];s=l+m;N=(l*y+m*q-+g[H+(r<<2)>>2]*N)/(s-N);g[J+(o<<2)>>2]=N;m=s-+g[t>>2];q=N;o=o+-1|0}if(p){g[J>>2]=y;s=0.0;n=-1;p=0}else{s=0.0;n=-1;p=0}while(1){if((a|0)<=(p|0))break;q=+g[J+(p<<2)>>2];if((p|0)>0)l=+g[I+(p+-1<<2)>>2];else l=q;do if(q<l){o=l>y;if(q<y){l=o?y:l;m=l;break}if(o){m=q;l=q}else m=q}else m=q;while(0);N=+B(+(m-y))*+(a-p|0)+ +B(+(l-y))*+(p|0);t=N>s;s=t?N:s;n=t?p:n;p=p+1|0}if((n|0)>-1)break;if(v?(c[L+(c[E+(f<<2)>>2]<<2)>>2]|0)>(c[L+(c[E+(w<<2)>>2]<<2)>>2]|0):0){k=+g[M+(c[K+(u<<2)>>2]<<2)>>2]+j;x=f;continue}k=+g[M+(c[K+(u<<2)>>2]<<2)>>2];x=f}m=+g[J+(n<<2)>>2];if(!n)q=m;else q=+g[I+(n+-1<<2)>>2];if(v){t=c[E+(f<<2)>>2]|0;l=+g[M+(t<<2)>>2];l=((c[L+(t<<2)>>2]|0)>(c[L+(c[E+(w<<2)>>2]<<2)>>2]|0)?l-j:l)-+g[z+(c[K+(u<<2)>>2]<<2)>>2]}else l=1.0e9;l=m<l?m:l;k=q>k?q:k;do if(l<k){o=k>y;if(l<y){l=o?y:k;m=l;break}if(o)m=l;else{m=l;l=k}}else{m=l;l=k}while(0);o=0;while(1){if((o|0)>=(n|0))break;t=c[K+(o<<2)>>2]|0;g[M+(t<<2)>>2]=+g[z+(t<<2)>>2]+l;o=o+1|0}while(1){if((n|0)>=(a|0))break;t=c[K+(n<<2)>>2]|0;g[M+(t<<2)>>2]=+g[z+(t<<2)>>2]+m;n=n+1|0}if(v?(c[L+(c[E+(f<<2)>>2]<<2)>>2]|0)>(c[L+(c[E+(w<<2)>>2]<<2)>>2]|0):0)k=+g[M+(c[K+(u<<2)>>2]<<2)>>2]+j;else k=+g[M+(c[K+(u<<2)>>2]<<2)>>2];a=x;while(1){if((a|0)>(w|0))break;c[E+(a<<2)>>2]=c[K+(a-x<<2)>>2];a=a+1|0}if(e<<24>>24!=0?+B(+(l-y))<.01:0)e=+B(+(m-y))<.01;else e=0;e=e&1}Ts(C,M);Gt(M,E,F,G,i);d=d+1|0}}while(0);return d|0}function Gt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=0;while(1){if((g|0)>=(e|0))break;c[f+(g<<2)>>2]=c[a+(c[b+((c[d+(g<<2)>>2]|0)+-1<<2)>>2]<<2)>>2];g=g+1|0}return}function Ht(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=+h;var i=0.0,j=0,k=0,l=0,m=0;i=-1.0e9;k=0;j=-1;m=0;while(1){if((m|0)>=(b|0))break;if((m|0)<(k|0))l=k;else{j=j+1|0;if((j|0)==(f|0))k=b;else k=c[e+(j<<2)>>2]|0;if((m|0)>0)i=+g[a+(c[d+(m+-1<<2)>>2]<<2)>>2]+h;else i=-1.0e9;hs(a,d,m,k+-1|0);l=k}k=a+(c[d+(m<<2)>>2]<<2)|0;if(+g[k>>2]<i)g[k>>2]=i;k=l;m=m+1|0}return}function It(a){a=a|0;D_(c[c[a>>2]>>2]|0);D_(c[a>>2]|0);D_(c[a+8>>2]|0);D_(c[a+28>>2]|0);D_(c[a+32>>2]|0);D_(c[a+36>>2]|0);D_(c[a+40>>2]|0);D_(c[a+12>>2]|0);D_(c[a+16>>2]|0);D_(c[a+20>>2]|0);D_(c[a+24>>2]|0);D_(a);return}function Jt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;k=vH(60)|0;c[k>>2]=0;l=k+4|0;c[l>>2]=b;c[k+48>>2]=d;c[k+52>>2]=e;c[k+56>>2]=f;c[k>>2]=Et(a,b)|0;i=b<<2;j=vH(i)|0;c[k+8>>2]=j;h=0;b=0;a=-1;while(1){if((h|0)>=(c[l>>2]|0))break;g=a+1|0;if((h|0)>=(b|0)){b=c[((g|0)==(f|0)?l:e+(g<<2)|0)>>2]|0;a=g}c[j+(c[d+(h<<2)>>2]<<2)>>2]=a;h=h+1|0}c[k+28>>2]=vH(i)|0;c[k+32>>2]=vH(i)|0;c[k+36>>2]=vH(i)|0;c[k+40>>2]=vH(i)|0;c[k+12>>2]=vH(i)|0;c[k+16>>2]=vH(i)|0;c[k+20>>2]=vH(i)|0;c[k+24>>2]=vH(i)|0;return k|0}function Kt(){gt(184592,24);c[46151]=0;return}function Lt(){return it(184592)|0}function Mt(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+h[a>>3]-+h[b>>3];d=+h[a+8>>3]-+h[b+8>>3];return +(+C(+(d*d+c*c)))}function Nt(a){a=a|0;var b=0;b=c[46151]|0;c[a+16>>2]=b;c[46151]=b+1;return}function Ot(a){a=a|0;var b=0,d=0;d=a+20|0;b=(c[d>>2]|0)+-1|0;c[d>>2]=b;if(!b)jt(a,184592);return}function Pt(a){a=a|0;a=a+20|0;c[a>>2]=(c[a>>2]|0)+1;return}function Qt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var i=0.0,j=0,k=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;x=l;l=l+16|0;o=x;c[o>>2]=e;q=b<<2;v=vH(q)|0;m=b<<3;w=vH(m)|0;u=as(a,b)|0;a=0;while(1){if((a|0)>=(b|0))break;k=u+(a<<2)|0;j=0;while(1){if((j|0)==(b|0))break;s=(c[k>>2]|0)+(j<<2)|0;c[s>>2]=c[s>>2]<<8;j=j+1|0}a=a+1|0}if(!d)qa(92381,92389,283,92403);s=vH(m)|0;a=0;while(1){if((a|0)>=(b|0))break;h[s+(a<<3)>>3]=+h[d+(a<<3)>>3];a=a+1|0}Rt(s,b);i=0.0;n=0.0;m=1;while(1){if((m|0)>=(b|0))break;j=u+(m<<2)|0;k=d+(m<<3)|0;a=0;while(1){if((a|0)==(m|0))break;y=c[(c[j>>2]|0)+(a<<2)>>2]|0;r=+h[k>>3]-+h[d+(a<<3)>>3];i=r*r*(1.0/+(O(y,y)|0))+i;n=+B(+r)*(1.0/+(y|0))+n;a=a+1|0}m=m+1|0}r=n/i;a=0;while(1){if((a|0)>=(b|0))break;y=d+(a<<3)|0;h[y>>3]=+h[y>>3]*r;a=a+1|0}St(b,o,f,d,u);k=vH(O(q,b)|0)|0;j=0;while(1){if((j|0)>=(b|0)){k=1;break}m=k+((O(j,b)|0)<<2)|0;c[v+(j<<2)>>2]=m;o=u+(j<<2)|0;i=0.0;a=0;while(1){if((a|0)==(b|0))break;if((a|0)!=(j|0)){p=+(c[(c[o>>2]|0)+(a<<2)>>2]|0);p=-1.0/(p*p);g[m+(a<<2)>>2]=p;i=i-p}a=a+1|0}g[m+(j<<2)>>2]=i;j=j+1|0}while(1){if((k|0)>=(b|0)){j=0;break}i=+h[d+(k<<3)>>3];j=u+(k<<2)|0;a=0;while(1){if((a|0)==(k|0))break;y=(c[j>>2]|0)+(a<<2)|0;n=+(c[y>>2]|0);p=i-+h[d+(a<<3)>>3];p=n*n-p*p;q=~~+C(+p);q=p>0.0?q:0;c[(c[u+(a<<2)>>2]|0)+(k<<2)>>2]=q;c[y>>2]=q;a=a+1|0}k=k+1|0}while(1){if((j|0)>=(b|0)){q=0;a=0;break}n=+h[e+(j<<3)>>3];m=w+(j<<3)|0;h[m>>3]=0.0;o=u+(j<<2)|0;k=v+(j<<2)|0;a=0;i=0.0;while(1){if((a|0)==(b|0))break;if((a|0)!=(j|0)){p=+g[(c[k>>2]|0)+(a<<2)>>2]*+(c[(c[o>>2]|0)+(a<<2)>>2]|0);i=i+(n>=+h[e+(a<<3)>>3]?-p:p);h[m>>3]=i}a=a+1|0}j=j+1|0}while(1){if(!(a<<24>>24==0&(q|0)<200)){t=42;break}if((Eq(v,e,w,b,f,b,1)|0)<0){a=1;break}else{a=1;o=0}while(1){if((o|0)>=(b|0))break;p=+h[e+(o<<3)>>3];k=u+(o<<2)|0;m=v+(o<<2)|0;i=0.0;j=0;while(1){if((j|0)==(b|0))break;do if((j|0)!=(o|0)){n=+g[(c[m>>2]|0)+(j<<2)>>2]*+(c[(c[k>>2]|0)+(j<<2)>>2]|0);if(!(p>=+h[e+(j<<3)>>3])){i=i+n;break}else{i=i+-n;break}}while(0);j=j+1|0}j=w+(o<<3)|0;p=+h[j>>3];if(i!=p?+B(+(1.0-i/p))>1.0e-05:0){h[j>>3]=i;a=0}o=o+1|0}q=q+1|0}a:do if((t|0)==42){i=1.0/r;a=0;while(1){if((a|0)>=(b|0)){a=0;break a}y=d+(a<<3)|0;h[y>>3]=+h[y>>3]*i;y=e+(a<<3)|0;h[y>>3]=+h[y>>3]*i;a=a+1|0}}while(0);D_(c[u>>2]|0);D_(u);D_(c[v>>2]|0);D_(v);D_(s);D_(w);l=x;return a|0}function Rt(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=0;d=0.0;while(1){if((c|0)>=(b|0))break;e=+h[a+(c<<3)>>3]+d;c=c+1|0;d=e}d=d/+(b|0);c=0;while(1){if((c|0)>=(b|0))break;f=a+(c<<3)|0;h[f>>3]=+h[f>>3]-d;c=c+1|0}f=b+-1|0;Cs(a,0,f,1.0/+Bs(a,0,f),a);return}function St(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,l=0,m=0;k=Tt(f,a)|0;l=vH(8)|0;if(!e){f=0;j=0}else{g=vH(a<<3)|0;f=0;while(1){if((f|0)>=(a|0))break;h[g+(f<<3)>>3]=+h[e+(f<<3)>>3];f=f+1|0}Rt(g,a);f=g;j=g}Ut(k,a,b,l,f,d);e=0;while(1){if((e|0)==1)break;g=l+(e<<3)|0;i=b+(e<<2)|0;f=0;while(1){if((f|0)>=(a|0))break;d=+C(+(+B(+(+h[g>>3]))));m=(c[i>>2]|0)+(f<<3)|0;h[m>>3]=+h[m>>3]*d;f=f+1|0}e=e+1|0}D_(c[k>>2]|0);D_(k);D_(l);D_(j);return}function Tt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+16|0;f=o;n=b<<2;e=vH(O(n,b)|0)|0;n=vH(n)|0;d=0;while(1){if((d|0)>=(b|0))break;c[n+(d<<2)>>2]=e+((O(d,b)|0)<<2);d=d+1|0}m=Wt(a,b,f)|0;h=+g[f>>2];e=0;k=1;while(1){if((e|0)>=(b|0))break;f=a+(e<<2)|0;i=m+(e<<2)|0;j=n+(e<<2)|0;d=0;while(1){if((d|0)==(k|0))break;p=+(c[(c[f>>2]|0)+(d<<2)>>2]|0);p=+g[m+(d<<2)>>2]+ +g[i>>2]-p*p-h;g[(c[j>>2]|0)+(d<<2)>>2]=p;g[(c[n+(d<<2)>>2]|0)+(e<<2)>>2]=p;d=d+1|0}e=e+1|0;k=k+1|0}D_(m);l=o;return n|0}function Ut(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var i=0,j=0,k=0,l=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0;r=b<<3;q=vH(r)|0;r=vH(r)|0;n=1.0-g;o=(b|0)<1?b:1;p=b+-1|0;k=(f|0)==0;j=0;a:while(1){if((j|0)>=(o|0))break;l=c[d+(j<<2)>>2]|0;do{i=0;while(1){if((i|0)==(b|0))break;h[l+(i<<3)>>3]=+((g2()|0)%100|0|0);i=i+1|0}if(k)i=0;else{As(l,0,p,-+zs(f,0,p,l),f);i=0}while(1){if((i|0)==(j|0))break;s=d+(i<<2)|0;m=-+zs(c[s>>2]|0,0,p,l);As(l,0,p,m,c[s>>2]|0);i=i+1|0}g=+Bs(l,0,p)}while(g<1.0e-10);Cs(l,0,p,1.0/g,l);do{Ds(r,0,p,l);Vt(a,b,b,l,q,f);Ds(l,0,p,q);i=0;while(1){if((i|0)==(j|0))break;s=d+(i<<2)|0;m=-+zs(c[s>>2]|0,0,p,l);As(l,0,p,m,c[s>>2]|0);i=i+1|0}g=+Bs(l,0,p);if(g<1.0e-10)break a;Cs(l,0,p,1.0/g,l);m=+zs(l,0,p,r)}while(+B(+m)<n);h[e+(j<<3)>>3]=m*g;j=j+1|0}while(1){if((j|0)>=(o|0))break;k=c[d+(j<<2)>>2]|0;i=0;while(1){if((i|0)>=(b|0)){i=0;break}h[k+(i<<3)>>3]=+((g2()|0)%100|0|0);i=i+1|0}while(1){if((i|0)>=(j|0))break;s=d+(i<<2)|0;n=-+zs(c[s>>2]|0,0,p,k);As(k,0,p,n,c[s>>2]|0);i=i+1|0}Cs(k,0,p,1.0/+Bs(k,0,p),k);h[e+(j<<3)>>3]=0.0;j=j+1|0}l=o+-1|0;j=0;while(1){if((j|0)>=(l|0))break;a=e+(j<<3)|0;f=j+1|0;g=+h[a>>3];i=j;k=f;while(1){if((k|0)>=(o|0))break;n=+h[e+(k<<3)>>3];s=g<n;g=s?n:g;i=s?k:i;k=k+1|0}if((i|0)==(j|0)){j=f;continue}b=d+(j<<2)|0;Ds(q,0,p,c[b>>2]|0);s=d+(i<<2)|0;Ds(c[b>>2]|0,0,p,c[s>>2]|0);Ds(c[s>>2]|0,0,p,q);h[e+(i<<3)>>3]=+h[a>>3];h[a>>3]=g;j=f}D_(q);D_(r);return}function Vt(a,b,d,e,f,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;var j=0,k=0.0,l=0,m=0;j=0;while(1){if((j|0)>=(b|0))break;m=a+(j<<2)|0;k=0.0;l=0;while(1){if((l|0)>=(d|0))break;k=+h[e+(l<<3)>>3]*+g[(c[m>>2]|0)+(l<<2)>>2]+k;l=l+1|0}h[f+(j<<3)>>3]=k;j=j+1|0}j=b+-1|0;if(i|0)As(f,0,j,-+zs(f,0,j,i),i);return}function Wt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,j=0,k=0.0,l=0,m=0.0;j=vH(b<<2)|0;k=1.0/+(b|0);e=0.0;i=0;while(1){if((i|0)>=(b|0))break;l=a+(i<<2)|0;f=0.0;h=0;while(1){if((h|0)==(b|0))break;m=+(c[(c[l>>2]|0)+(h<<2)>>2]|0);m=m*m;f=m+f;h=h+1|0;e=m+e}g[j+(i<<2)>>2]=k*f;i=i+1|0}g[d>>2]=e/+(O(b,b)|0);return j|0}function Xt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0.0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0;q=O(d,d)|0;r=vH(q<<3)|0;s=vH(d<<3)|0;e=0;while(1){if((e|0)>=(d|0))break;h[s+(e<<3)>>3]=+h[c+(e<<3)>>3];e=e+1|0}e=0;while(1){if((e|0)>=(q|0))break;h[r+(e<<3)>>3]=+h[a+(e<<3)>>3];e=e+1|0}p=d+-1|0;g=0;o=0;a:while(1){if((o|0)<(p|0)){f=0.0;e=o}else{l=21;break}while(1){if((e|0)>=(d|0))break;t=+B(+(+h[a+((O(e,d)|0)+o<<3)>>3]));m=t<f;n=m?g:e;f=m?f:t;e=e+1|0;g=n}if(f<1.0e-10){l=33;break}i=O(g,d)|0;n=O(o,d)|0;e=o;while(1){if((e|0)>=(d|0))break;l=a+(e+i<<3)|0;t=+h[l>>3];m=a+(e+n<<3)|0;h[l>>3]=+h[m>>3];h[m>>3]=t;e=e+1|0}m=c+(g<<3)|0;t=+h[m>>3];j=c+(o<<3)|0;h[m>>3]=+h[j>>3];h[j>>3]=t;m=o+1|0;k=a+(n+o<<3)|0;e=m;while(1){if((e|0)>=(d|0)){o=m;continue a}l=O(e,d)|0;f=+h[a+(l+o<<3)>>3]/+h[k>>3];i=c+(e<<3)|0;h[i>>3]=+h[i>>3]-+h[j>>3]*f;i=0;while(1){if((i|0)>=(d|0))break;u=a+(i+l<<3)|0;h[u>>3]=+h[u>>3]-+h[a+(i+n<<3)>>3]*f;i=i+1|0}e=e+1|0}}if((l|0)==21){f=+h[a+(q+-1<<3)>>3];if(+B(+f)<1.0e-10)l=33;else{h[b+(p<<3)>>3]=+h[c+(p<<3)>>3]/f;e=0;while(1){if((e|0)>=(p|0)){e=0;break}g=d-e|0;i=g+-2|0;f=+h[c+(i<<3)>>3];j=b+(i<<3)|0;h[j>>3]=f;k=O(i,d)|0;g=g+-1|0;while(1){if((g|0)>=(d|0))break;t=f-+h[b+(g<<3)>>3]*+h[a+(g+k<<3)>>3];h[j>>3]=t;g=g+1|0;f=t}h[j>>3]=f/+h[a+(k+i<<3)>>3];e=e+1|0}while(1){if((e|0)>=(d|0)){e=0;break}h[c+(e<<3)>>3]=+h[s+(e<<3)>>3];e=e+1|0}while(1){if((e|0)>=(q|0))break;h[a+(e<<3)>>3]=+h[r+(e<<3)>>3];e=e+1|0}D_(r);D_(s)}}if((l|0)==33){k3(92418)|0;D_(r);D_(s)}return}function Yt(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,g=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;s=l;l=l+16|0;r=s;nr();Kt();Ir();c[46147]=jb[d&3]()|0;Kr();q=r+8|0;p=jb[d&3]()|0;e=0.0;f=0.0;a:while(1){n=(p|0)==0;o=p+8|0;while(1){if(!(Er()|0)){Fr(r);e=+h[r>>3];f=+h[q>>3]}if(!n){if(Er()|0)break;g=+h[o>>3];if(g<f)break;if(g==f?+h[p>>3]<e:0)break}if(Er()|0)break a;t=Gr()|0;b=Tr(t)|0;v=Sr(t)|0;i=Sr(v)|0;m=Ur(t)|0;u=Vr(v)|0;j=c[t+20>>2]|0;Nt(j);rr(c[t+8>>2]|0,a[t+16>>0]|0,j);rr(c[v+8>>2]|0,a[v+16>>0]|0,j);Rr(t);Dr(v);Rr(v);v=+h[m+8>>3]>+h[u+8>>3];t=v&1;k=v?u:m;u=or(k,v?m:u)|0;m=Lr(u,t)|0;Or(b,m);rr(u,(t^1)&255,j);Ot(j);j=Mr(b,m)|0;if(j|0){Dr(b);Br(b,j,+Mt(j,k))}b=Mr(m,i)|0;if(!b)continue;Br(m,b,+Mt(b,k))}b=Pr(p)|0;k=Sr(b)|0;i=or(Vr(b)|0,p)|0;m=Lr(i,0)|0;Or(b,m);j=Mr(b,m)|0;if(j|0){Dr(b);Br(b,j,+Mt(j,p))}i=Lr(i,1)|0;Or(m,i);b=Mr(i,k)|0;if(b|0)Br(i,b,+Mt(b,p));p=jb[d&3]()|0}b=c[46090]|0;while(1){b=Sr(b)|0;if((b|0)==(c[46091]|0))break;pr(c[b+8>>2]|0)}l=s;return}function Zt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;f=g+8|0;e=g;do if((ay(a)|0)!=1){_t(a);if(!b)b=$t(a)|0;d=au(a,b)|0;if(0){h=c[15686]|0;c[e>>2]=ry(b)|0;c[e+4>>2]=d;g1(h,92434,e)|0}if((d|0)<0){Pw(1,92468,f)|0;break}else{bu(a);cu(a,b);du(a,b);eu(a,d);break}}else{h=c[(c[(Sy(a)|0)+16>>2]|0)+132>>2]|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0}while(0);l=g;return b|0}function _t(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=ay(a)|0;d=O(d,d)|0;b=Sy(a)|0;while(1){if(!b)break;e=b+16|0;f=c[(c[e>>2]|0)+112>>2]|0;g=f+24|0;c[g>>2]=d;c[g+4>>2]=0;h[f+48>>3]=10.0;f=(mu(a,b)|0)==0;e=c[(c[e>>2]|0)+112>>2]|0;c[e>>2]=f?d:0;c[e+4>>2]=f?0:0;b=Ty(a,b)|0}return}function $t(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;e=(ay(a)|0)<3;b=Sy(a)|0;a:do if(!e){while(1){if(!b)break;e=c[(c[b+16>>2]|0)+112>>2]|0;if((c[e>>2]|0)==0&(c[e+4>>2]|0)==0)lu(a,b,0);b=Ty(a,b)|0}d=0;b=0;e=Sy(a)|0;while(1){if(!e)break a;h=c[(c[e+16>>2]|0)+112>>2]|0;g=c[h>>2]|0;h=c[h+4>>2]|0;f=((d|0)<0)<<31>>31;f=h>>>0>f>>>0|(h|0)==(f|0)&g>>>0>d>>>0;d=f?g:d;b=f?e:b;e=Ty(a,e)|0}}while(0);return b|0}function au(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=c[(c[b+16>>2]|0)+112>>2]|0;f=d+24|0;e=c[f>>2]|0;c[f>>2]=0;c[f+4>>2]=0;c[d+32>>2]=0;iu(a,b);d=Sy(a)|0;e=y3(0,e|0,32)|0;f=z;b=0;while(1){if(!d)break;h=(c[(c[d+16>>2]|0)+112>>2]|0)+24|0;g=c[h>>2]|0;h=c[h+4>>2]|0;if((g|0)==(e|0)&(h|0)==(f|0)){b=-1;break}i=((b|0)<0)<<31>>31;b=h>>>0>i>>>0|(h|0)==(i|0)&g>>>0>b>>>0?g:b;d=Ty(a,d)|0}return b|0}function bu(a){a=a|0;var b=0,d=0,e=0,f=0;d=Sy(a)|0;while(1){if(!d)break;b=c[(c[d+16>>2]|0)+112>>2]|0;e=b+16|0;a:do if((c[e>>2]|0)==0&(c[e+4>>2]|0)==0)while(1){e=b+8|0;f=e;f=s3(c[f>>2]|0,c[f+4>>2]|0,1,0)|0;c[e>>2]=f;c[e+4>>2]=z;b=c[b+32>>2]|0;if(!b)break a;b=c[(c[b+16>>2]|0)+112>>2]|0}while(0);d=Ty(a,d)|0}return}function cu(a,b){a=a|0;b=b|0;h[(c[(c[b+16>>2]|0)+112>>2]|0)+40>>3]=6.283185307179586;hu(a,b);return}function du(a,b){a=a|0;b=b|0;h[(c[(c[b+16>>2]|0)+112>>2]|0)+48>>3]=0.0;gu(a,b);return}function eu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i;g=fu(a,b)|0;if(0){e=c[15686]|0;D1(92524,e)|0;d=0;while(1){if((d|0)>(b|0))break;h[f>>3]=+h[g+(d<<3)>>3];g1(e,92543,f)|0;d=d+1|0}D1(150517,e)|0}d=Sy(a)|0;while(1){if(!d)break;f=c[d+16>>2]|0;e=c[f+112>>2]|0;j=+h[g+(c[e+24>>2]<<3)>>3];e=e+48|0;k=+E(+(+h[e>>3]))*j;f=c[f+132>>2]|0;h[f>>3]=k;h[f+8>>3]=+F(+(+h[e>>3]))*j;d=Ty(a,d)|0}D_(g);l=i;return}function fu(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,g=0,i=0.0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;k=n;m=uH((d<<3)+8|0)|0;b=NL(b,nx(c[b+60>>2]|0,0,98262,0)|0,0)|0;a:do if(!b){f=1.0;e=0.0;b=1}else{i=0.0;e=0.0;g=1;b:while(1){if((g|0)>(d|0)){f=i;b=g;break a}f=+c2(b,k);if(!(f>0.0)){f=i;b=g;break a}i=f>.02?f:.02;e=i+e;j=g+1|0;h[m+(g<<3)>>3]=e;b=c[k>>2]|0;while(1){g=a[b>>0]|0;if(!(g<<24>>24)){g=j;continue b}if(!(g<<24>>24==58|(B$(g<<24>>24)|0)!=0)){g=j;continue b}b=b+1|0}}}while(0);while(1){if((b|0)>(d|0))break;i=e+f;h[m+(b<<3)>>3]=i;b=b+1|0;e=i}l=n;return m|0}function gu(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,g=0,i=0,j=0.0;d=c[(c[b+16>>2]|0)+112>>2]|0;if(!(c[d+32>>2]|0))e=0.0;else e=+h[d+48>>3]-+h[d+40>>3]*.5;g=Jx(a,b)|0;while(1){if(!g)break;d=c[g>>2]&3;f=c[((d|0)==3?g:g+48|0)+40>>2]|0;if((f|0)==(b|0))f=c[((d|0)==2?g:g+-48|0)+40>>2]|0;d=c[(c[f+16>>2]|0)+112>>2]|0;if((c[d+32>>2]|0)==(b|0)?(i=d+48|0,!(+h[i>>3]!=10.0)):0){j=+h[d+40>>3];h[i>>3]=j*.5+e;e=j+e;d=d+16|0;if(!((c[d>>2]|0)==0&(c[d+4>>2]|0)==0))gu(a,f)}g=Kx(a,g,b)|0}return}function hu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0,i=0,j=0;e=c[(c[b+16>>2]|0)+112>>2]|0;f=e+8|0;g=+h[e+40>>3]/(+((c[f>>2]|0)>>>0)+4294967296.0*+((c[f+4>>2]|0)>>>0));f=Jx(a,b)|0;while(1){if(!f)break;e=c[f>>2]&3;d=c[((e|0)==3?f:f+48|0)+40>>2]|0;if((d|0)==(b|0))d=c[((e|0)==2?f:f+-48|0)+40>>2]|0;e=c[(c[d+16>>2]|0)+112>>2]|0;if(((c[e+32>>2]|0)==(b|0)?(i=e+40|0,!(+h[i>>3]!=0.0)):0)?(j=e+8|0,h[i>>3]=g*(+((c[j>>2]|0)>>>0)+4294967296.0*+((c[j+4>>2]|0)>>>0)),e=e+16|0,!((c[e>>2]|0)==0&(c[e+4>>2]|0)==0)):0)hu(a,d);f=Kx(a,f,b)|0}return}function iu(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+16|0;n=p;o=nx(b,2,98515,0)|0;c[n+4>>2]=0;c[n>>2]=0;ju(n,d);j=(o|0)==0;a:while(1){k=ku(n)|0;if(!k)break;m=k+16|0;h=c[(c[(c[m>>2]|0)+112>>2]|0)+24>>2]|0;g=Jx(b,k)|0;h=s3(0,h|0,0,1)|0;h=y3(h|0,z|0,32)|0;i=z;while(1){if(!g)continue a;if(!((!j?(a[(yx(g,o)|0)>>0]|0)==48:0)?!(b$(yx(g,o)|0,135312)|0):0)){d=c[g>>2]&3;e=c[((d|0)==3?g:g+48|0)+40>>2]|0;if((e|0)==(k|0))e=c[((d|0)==2?g:g+-48|0)+40>>2]|0;d=c[(c[e+16>>2]|0)+112>>2]|0;f=d+24|0;q=f;r=c[q+4>>2]|0;if(i>>>0<r>>>0|((i|0)==(r|0)?h>>>0<(c[q>>2]|0)>>>0:0)){r=f;c[r>>2]=h;c[r+4>>2]=i;c[d+32>>2]=k;r=(c[(c[m>>2]|0)+112>>2]|0)+16|0;q=r;q=s3(c[q>>2]|0,c[q+4>>2]|0,1,0)|0;c[r>>2]=q;c[r+4>>2]=z;ju(n,e)}}g=Kx(b,g,k)|0}}l=p;return}function ju(a,b){a=a|0;b=b|0;var d=0,e=0;d=uH(8)|0;c[d>>2]=b;b=a+4|0;e=c[b>>2]|0;c[((e|0)==0?a:e+4|0)>>2]=d;c[b>>2]=d;return}function ku(a){a=a|0;var b=0,d=0;d=c[a>>2]|0;if(d){b=c[d>>2]|0;c[a>>2]=c[d+4>>2];D_(d);if(!(c[a>>2]|0))c[a+4>>2]=0}else b=0;return b|0}function lu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=c[c[(c[b+16>>2]|0)+112>>2]>>2]|0;g=Jx(a,b)|0;h=s3(0,h|0,0,1)|0;h=y3(h|0,z|0,32)|0;i=z;while(1){if(!g)break;f=c[g>>2]&3;e=c[((f|0)==3?g:g+48|0)+40>>2]|0;if((e|0)==(b|0))e=c[((f|0)==2?g:g+-48|0)+40>>2]|0;if((e|0)!=(d|0)?(j=c[(c[e+16>>2]|0)+112>>2]|0,f=j,k=c[f+4>>2]|0,i>>>0<k>>>0|((i|0)==(k|0)?h>>>0<(c[f>>2]|0)>>>0:0)):0){k=j;c[k>>2]=h;c[k+4>>2]=i;lu(a,e,b)}g=Kx(a,g,b)|0}return}function mu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=0;g=Jx(a,b)|0;while(1){if(!g){d=1;break}e=c[g>>2]&3;d=c[((e|0)==3?g:g+48|0)+40>>2]|0;if((d|0)==(b|0))d=c[((e|0)==2?g:g+-48|0)+40>>2]|0;if((d|0)!=(b|0)){if(f)if((f|0)==(d|0))d=f;else{d=0;break}}else d=f;f=d;g=Kx(a,g,b)|0}return d|0}function nu(a){a=a|0;var b=0,d=0,e=0,f=0.0,g=0;b=l;l=l+32|0;e=b;d=nx(a,1,92551,0)|0;g=nx(a,0,92551,0)|0;a=ou(a,g,d,nx(a,0,92556,0)|0)|0;d=a+16|0;f=+C(+(+h[a>>3]+.1));zu(e,0.0,0.0,f,f);c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];c[d+16>>2]=c[e+16>>2];c[d+20>>2]=c[e+20>>2];c[d+24>>2]=c[e+24>>2];c[d+28>>2]=c[e+28>>2];pu(a);qu(a);ru(a);l=b;return}function ou(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=uH(72)|0;c[o+60>>2]=0;c[o+56>>2]=a;k=a+16|0;f=0.0;l=0;i=1;j=0;m=0;while(1){g=c[k>>2]|0;if((i|0)>(c[g+180>>2]|0))break;g=ou(c[(c[g+184>>2]|0)+(i<<2)>>2]|0,b,d,e)|0;f=+h[g>>3]+f;if(j|0)c[j+52>>2]=g;l=l+1|0;i=i+1|0;j=g;m=(m|0)==0?g:m}n=Sy(a)|0;g=m;while(1){if(!n)break;i=n+16|0;if(!(c[c[(c[i>>2]|0)+112>>2]>>2]|0)){k=uu(n,d)|0;f=+h[k>>3]+f;if(j|0)c[j+52>>2]=k;c[c[(c[i>>2]|0)+112>>2]>>2]=a;i=l+1|0;j=k;g=(g|0)==0?k:g}else i=l;n=Ty(a,n)|0;l=i}c[o+64>>2]=l;if(!l)f=+wu(a,b);else{h[o+8>>3]=f;f=+vu(o,e)}h[o>>3]=f;c[o+48>>2]=g;return o|0}function pu(a){a=a|0;var b=0,d=0,e=0,f=0,g=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0;p=l;l=l+176|0;f=p+144|0;n=p+64|0;k=p+32|0;i=p;o=c[a+64>>2]|0;a:do if(o|0){m=uH(o<<2)|0;b=a+48|0;e=0;d=b;while(1){d=c[d>>2]|0;if((e|0)>=(o|0))break;c[m+(e<<2)>>2]=d;e=e+1|0;d=d+52|0}_0(m,o,4,79);j=uH(o<<3)|0;d=0;while(1){if((d|0)>=(o|0))break;h[j+(d<<3)>>3]=+h[c[m+(d<<2)>>2]>>3];d=d+1|0}g=+h[a+8>>3];if(+h[a>>3]==g){i=a+16|0;c[f>>2]=c[i>>2];c[f+4>>2]=c[i+4>>2];c[f+8>>2]=c[i+8>>2];c[f+12>>2]=c[i+12>>2];c[f+16>>2]=c[i+16>>2];c[f+20>>2]=c[i+20>>2];c[f+24>>2]=c[i+24>>2];c[f+28>>2]=c[i+28>>2];i=xu(o,j,f)|0}else{q=+h[a+40>>3];r=+h[a+32>>3];h[i>>3]=+h[a+16>>3];h[i+8>>3]=+h[a+24>>3];s=q-r;g=(r+q-+C(+(g*4.0+s*s)))*.5;h[i+16>>3]=r-g;h[i+24>>3]=q-g;c[f>>2]=c[i>>2];c[f+4>>2]=c[i+4>>2];c[f+8>>2]=c[i+8>>2];c[f+12>>2]=c[i+12>>2];c[f+16>>2]=c[i+16>>2];c[f+20>>2]=c[i+20>>2];c[f+24>>2]=c[i+24>>2];c[f+28>>2]=c[i+28>>2];i=xu(o,j,f)|0}if(0){f=c[15686]|0;q=+h[a+24>>3];r=+h[a+32>>3];s=+h[a+40>>3];h[k>>3]=+h[a+16>>3];h[k+8>>3]=q;h[k+16>>3]=r;h[k+24>>3]=s;g1(f,92603,k)|0}e=c[15686]|0;d=0;while(1){if((d|0)>=(o|0))break;k=(c[m+(d<<2)>>2]|0)+16|0;f=i+(d<<5)|0;c[k>>2]=c[f>>2];c[k+4>>2]=c[f+4>>2];c[k+8>>2]=c[f+8>>2];c[k+12>>2]=c[f+12>>2];c[k+16>>2]=c[f+16>>2];c[k+20>>2]=c[f+20>>2];c[k+24>>2]=c[f+24>>2];c[k+28>>2]=c[f+28>>2];if(0){g=+h[f>>3];r=+h[i+(d<<5)+16>>3];u=r*.5;q=+h[i+(d<<5)+8>>3];s=+h[i+(d<<5)+24>>3];t=s*.5;h[n>>3]=+h[j+(d<<3)>>3];h[n+8>>3]=g-u;h[n+16>>3]=q-t;h[n+24>>3]=u+g;h[n+32>>3]=t+q;h[n+40>>3]=s*r;h[n+48>>3]=g;h[n+56>>3]=q;h[n+64>>3]=r;h[n+72>>3]=s;g1(e,92620,n)|0}d=d+1|0}D_(m);D_(j);D_(i);d=0;while(1){b=c[b>>2]|0;if((d|0)>=(o|0))break a;if(!(c[b+60>>2]|0))pu(b);b=b+52|0;d=d+1|0}}while(0);l=p;return}function qu(a){a=a|0;var b=0,d=0,e=0,f=0,g=0.0,i=0.0,j=0,k=0.0,m=0.0;f=l;l=l+48|0;e=f;if(c[a+60>>2]|0){k=+h[a+24>>3];i=+h[a+32>>3];g=+h[a+40>>3];b=c[a+56>>2]|0;d=b+16|0;j=c[d>>2]|0;h[j+16>>3]=+h[a+16>>3];h[j+24>>3]=k;a=c[d>>2]|0;h[a+32>>3]=i*.013888888888888888;h[a+40>>3]=g*.013888888888888888;bN(b,c[(c[(ez(b)|0)+16>>2]|0)+116>>2]&1);su(b);if(0){j=c[15686]|0;a=ry(b)|0;d=c[d>>2]|0;m=+h[d+16>>3];g=+h[d+24>>3];i=+h[d+80>>3];k=+h[d+96>>3]+ +h[d+88>>3];c[e>>2]=a;h[e+8>>3]=m;h[e+16>>3]=g;h[e+24>>3]=i;h[e+32>>3]=k;g1(j,92562,e)|0}}else{b=a+48|0;while(1){b=c[b>>2]|0;if(!b)break;qu(b);b=b+52|0}i=+h[a+32>>3];m=+h[a+40>>3];g=+h[a+16>>3]-i*.5;k=+h[a+24>>3]-m*.5;j=c[(c[a+56>>2]|0)+16>>2]|0;h[j+16>>3]=g;h[j+24>>3]=k;h[j+32>>3]=g+i;h[j+40>>3]=k+m}l=f;return}function ru(a){a=a|0;var b=0,d=0,e=0;e=c[a+64>>2]|0;b=a+48|0;d=0;while(1){b=c[b>>2]|0;if((d|0)>=(e|0))break;ru(b);b=b+52|0;d=d+1|0}D_(a);return}function su(b){b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+48|0;f=g;d=g+8|0;e=c[46380]|0;if(e|0?(a[(yx(b,e)|0)>>0]|0)==0:0){h[f>>3]=+h[(c[b+16>>2]|0)+80>>3]*.7;Y0(d,92597,f)|0;rx(b,c[46380]|0,d)|0}dM(b);l=g;return}function tu(a,b){a=a|0;b=b|0;var d=0.0;d=+h[c[a>>2]>>3]-+h[c[b>>2]>>3];return (d<0.0?1:(d>0.0)<<31>>31)|0}function uu(a,b){a=a|0;b=b|0;var d=0;d=uH(72)|0;h[d>>3]=+wu(a,b);c[d+60>>2]=1;c[d+56>>2]=a;return d|0}function vu(a,b){a=a|0;b=b|0;var d=0.0;d=+LL(c[a+56>>2]|0,b,0.0,0.0);if(d==0.0)d=+h[a+8>>3];else{d=+C(+(+h[a+8>>3]))+d*2.0;d=d*d}return +d}function wu(a,b){a=a|0;b=b|0;var c=0.0;c=+LL(a,b,1.0,0.0);return +(c==0.0?1.0e3:c*1.0e3)}function xu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0,i=0,j=0.0;i=l;l=l+32|0;g=i;e=0;f=0.0;while(1){if((e|0)>=(a|0))break;j=+h[b+(e<<3)>>3]+f;e=e+1|0;f=j}if(f>+h[d+24>>3]*+h[d+16>>3]+.001)e=0;else{e=uH(a<<5)|0;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];c[g+16>>2]=c[d+16>>2];c[g+20>>2]=c[d+20>>2];c[g+24>>2]=c[d+24>>2];c[g+28>>2]=c[d+28>>2];yu(a,b,e,0,0.0,1.0,0.0,1.0,g)}l=i;return e|0}function yu(a,b,d,e,f,g,i,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;g=+g;i=+i;j=+j;k=k|0;var m=0,n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0.0;z=l;l=l+112|0;y=z+72|0;u=z+40|0;p=z+32|0;m=z;w=k+16|0;q=+h[w>>3];x=k+24|0;r=+h[x>>3];v=+h[k+16+((!(q<r)&1)<<3)>>3];do if((a|0)>=1){if(0){A=c[15686]|0;B=+h[k+8>>3];h[m>>3]=+h[k>>3];h[m+8>>3]=q;h[m+16>>3]=B;h[m+24>>3]=r;g1(A,92657,m)|0;c[p>>2]=e;g1(A,92703,p)|0}if(!e){i=+h[b>>3];B=v*v;v=i/B;B=B/i;c[y>>2]=c[k>>2];c[y+4>>2]=c[k+4>>2];c[y+8>>2]=c[k+8>>2];c[y+12>>2]=c[k+12>>2];c[y+16>>2]=c[k+16>>2];c[y+20>>2]=c[k+20>>2];c[y+24>>2]=c[k+24>>2];c[y+28>>2]=c[k+28>>2];yu(a,b,d,1,i,i,i,v>B?v:B,y);break}if((a|0)>(e|0)?(t=+h[b+(e<<3)>>3],n=t<f?f:t,s=t>g?g:t,t=t+i,o=t/v,o=o*o,B=o/s,o=n/o,o=B>o?B:o,o<=j):0){c[y>>2]=c[k>>2];c[y+4>>2]=c[k+4>>2];c[y+8>>2]=c[k+8>>2];c[y+12>>2]=c[k+12>>2];c[y+16>>2]=c[k+16>>2];c[y+20>>2]=c[k+20>>2];c[y+24>>2]=c[k+24>>2];c[y+28>>2]=c[k+28>>2];yu(a,b,d,e+1|0,n,s,t,o,y);break}q=i/v;if(0){A=c[15686]|0;c[u>>2]=e;h[u+8>>3]=i;h[u+16>>3]=v;h[u+24>>3]=q;g1(A,92728,u)|0}n=+h[w>>3];if(v==n){o=1.0/q;p=k+8|0;n=+h[k>>3]-n*.5;m=0;while(1){if((m|0)>=(e|0))break;h[d+(m<<5)+24>>3]=q;B=+h[b+(m<<3)>>3]*o;h[d+(m<<5)+16>>3]=B;h[d+(m<<5)+8>>3]=(+h[x>>3]-q)*.5+ +h[p>>3];h[d+(m<<5)>>3]=B*.5+n;n=B+n;m=m+1|0}h[p>>3]=+h[p>>3]-q*.5;m=1}else{o=1.0/q;n=+h[x>>3]*.5+ +h[k+8>>3];m=0;while(1){if((m|0)>=(e|0))break;h[d+(m<<5)+16>>3]=q;B=+h[b+(m<<3)>>3]*o;h[d+(m<<5)+24>>3]=B;h[d+(m<<5)>>3]=(q-+h[w>>3])*.5+ +h[k>>3];h[d+(m<<5)+8>>3]=n-B*.5;n=n-B;m=m+1|0}h[k>>3]=+h[k>>3]+q*.5;m=0}A=k+16+(m<<3)|0;h[A>>3]=+h[A>>3]-q;c[y>>2]=c[k>>2];c[y+4>>2]=c[k+4>>2];c[y+8>>2]=c[k+8>>2];c[y+12>>2]=c[k+12>>2];c[y+16>>2]=c[k+16>>2];c[y+20>>2]=c[k+20>>2];c[y+24>>2]=c[k+24>>2];c[y+28>>2]=c[k+28>>2];yu(a-e|0,b+(e<<3)|0,d+(e<<5)|0,0,0.0,0.0,0.0,1.0,y)}while(0);l=z;return}function zu(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;h[a>>3]=b;h[a+8>>3]=c;h[a+16>>3]=d;h[a+24>>3]=e;return}function Au(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;D=l;l=l+96|0;C=D+48|0;B=D+24|0;A=D+16|0;z=D+8|0;u=D+80|0;v=D;w=a+16|0;x=d+4|0;y=u+4|0;s=Sy(a)|0;e=0;f=0;i=0;j=0;while(1){if(!s)break;t=Ex(a,s)|0;q=e;r=j;while(1){if(!t)break;e=(b[(c[t+16>>2]|0)+168>>1]|0)==0;do if((s|0)==(c[((c[t>>2]&3|0)==2?t:t+-48|0)+40>>2]|0))if(e){j=q;e=r}else{if(!f){e=uH(96)|0;c[e+84>>2]=uH(((ay(a)|0)<<5)+11520|0)|0;f=e}else e=r;Mm(f,t,c[(c[w>>2]|0)+248>>2]|0);j=q}else if(!e){i=Bu(t,d)|0;j=i+8|0;if(ms(c[j>>2]|0,c[i>>2]|0)|0){k=sU(c[j>>2]|0,c[i>>2]|0)|0;if(!k){Pw(0,92781,z)|0;j=1;e=r;break}else e=t;while(1){if(!e)break;E=e+16|0;F=(c[E>>2]|0)+144|0;Sm(v,e,k,0,c[j>>2]|0,c[i>>2]|0);H=v;G=c[H+4>>2]|0;c[F>>2]=c[H>>2];c[F+4>>2]=G;Um(a,e,c[j>>2]|0,c[i>>2]|0,0);e=c[(c[E>>2]|0)+172>>2]|0}Cu(i);j=q;e=r;break}if(!q){qq(u,a);e=YD(a,8,8)|0;Pw(0,92865,A)|0;n=+(e|0);o=+g[d>>2];p=+g[x>>2];if(!(o>=n)&!(p>=n)){m=+g[u>>2];n=+g[y>>2];if(!(!(m<=o)&!(n<=p))){h[C>>3]=m;h[C+8>>3]=n;h[C+16>>3]=o;h[C+24>>3]=p;Pw(3,92981,C)|0}}else{c[B>>2]=e;h[B+8>>3]=o;h[B+16>>3]=p;Pw(3,92931,B)|0}j=1;e=r}else{j=q;e=r}}else{j=q;e=r}while(0);t=Gx(a,t)|0;q=j;r=e}s=Ty(a,s)|0;e=q;j=r}Du(i);if(f|0){D_(c[f+84>>2]|0);D_(j)}l=D;return e|0}function Bu(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+16|0;m=p+4|0;n=p;e=c[b>>2]&3;f=c[((e|0)==2?b:b+-48|0)+40>>2]|0;e=c[((e|0)==3?b:b+48|0)+40>>2]|0;q=f+16|0;h=c[(c[q>>2]|0)+212>>2]|0;c[m>>2]=h;i=e+16|0;g=c[(c[i>>2]|0)+212>>2]|0;c[n>>2]=g;k=uH(12)|0;b=h;j=g;if(a[(c[q>>2]|0)+118>>0]|0){b=c[(c[(c[b+16>>2]|0)+140>>2]|0)+48>>2]|0;c[m>>2]=b;f=h;h=b}if(!(a[(c[i>>2]|0)+118>>0]|0))i=j;else{i=c[(c[(c[j+16>>2]|0)+140>>2]|0)+48>>2]|0;c[n>>2]=i;e=g;g=i}h=c[(c[(c[h+16>>2]|0)+140>>2]|0)+44>>2]|0;g=c[(c[(c[g+16>>2]|0)+140>>2]|0)+44>>2]|0;if((h|0)<=(g|0))if((g|0)>(h|0)){Eu(k,g,e,h,n,d);b=c[n>>2]|0;g=b;e=n;o=11}else h=i;else{Eu(k,h,f,g,m,d);b=c[m>>2]|0;f=b;g=e;e=m;o=11}while(1){if((o|0)==11){c[e>>2]=c[(c[(c[b+16>>2]|0)+140>>2]|0)+48>>2];e=g;b=c[m>>2]|0;h=c[n>>2]|0}if((b|0)==(h|0))break;Fu(k,b,0,f,d);Fu(k,h,e,0,d);c[m>>2]=c[(c[(c[b+16>>2]|0)+140>>2]|0)+48>>2];f=b;g=h;e=n;b=h;o=11}Fu(k,h,e,f,d);l=p;return k|0}function Cu(a){a=a|0;c[a>>2]=0;return}function Du(a){a=a|0;if(a|0){D_(c[a+8>>2]|0);D_(a)}return}function Eu(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=f;while(1){h=c[i>>2]|0;if((b|0)<=(e|0))break;Fu(a,h,d,0,g);b=b+-1|0;i=(c[(c[h+16>>2]|0)+140>>2]|0)+48|0;d=h}c[f>>2]=d;return}function Fu(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=Sy(d)|0;while(1){if(!h)break;i=c[h+16>>2]|0;if(!((h|0)==(f|0)|((h|0)==(e|0)?1:(c[i+212>>2]|0)!=(d|0)))?(a[i+118>>0]|0)==0:0)Gu(b,Pm(h,g,0)|0);h=Ty(d,h)|0}i=d+16|0;d=1;while(1){h=c[i>>2]|0;if((d|0)>(c[h+180>>2]|0))break;h=c[(c[h+184>>2]|0)+(d<<2)>>2]|0;if(!((h|0)==(e|0)|(h|0)==(f|0)))Gu(b,Hu(h,g)|0);d=d+1|0}return}function Gu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;f=c[e>>2]|0;g=a+8|0;d=c[g>>2]|0;do if((f|0)==(c[a>>2]|0))if(!d){d=vH(400)|0;c[g>>2]=d;c[e>>2]=100;break}else{c[e>>2]=f<<1;d=xH(d,f<<3)|0;c[g>>2]=d;break}while(0);g=c[a>>2]|0;c[a>>2]=g+1;c[d+(g<<2)>>2]=b;return}function Hu(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0,n=0.0,o=0.0,p=0.0;m=uH(8)|0;b=c[b+16>>2]|0;e=+h[b+16>>3];l=+h[b+24>>3];f=+h[b+32>>3];k=+h[b+40>>3];c[m+4>>2]=4;b=uH(64)|0;c[m>>2]=b;if(!(a[d+8>>0]|0)){p=+g[d>>2];o=+g[d+4>>2];i=(f+e)*.5*(p+-1.0);n=(k+l)*.5*(o+-1.0);j=e*p-i;i=f*p-i;f=k*o-n;e=l*o-n}else{i=+g[d>>2];p=+g[d+4>>2];j=e-i;i=f+i;f=k+p;e=l-p}h[b>>3]=j;h[b+8>>3]=e;h[b+16>>3]=j;h[b+24>>3]=f;h[b+32>>3]=i;h[b+40>>3]=f;h[b+48>>3]=i;h[b+56>>3]=e;return m|0}function Iu(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+160|0;n=o+16|0;j=o+8|0;g=o;k=o+24|0;m=uH(ay(b)|0)|0;h=b+16|0;f=c[c[(c[h>>2]|0)+140>>2]>>2]|0;a:do if(!f){g=0;f=0}else{p=ry(b)|0;i=c[46152]|0;c[g>>2]=p;c[g+4>>2]=i;Y0(k,93041,g)|0;i=vA(b,k,1)|0;Az(i,134401,280,1)|0;g=uH(56)|0;c[(c[i+16>>2]|0)+140>>2]=g;c[g>>2]=f;c[g+4>>2]=c[(c[(c[h>>2]|0)+140>>2]|0)+4>>2];while(1){g=c[f+4>>2]|0;if(!g){g=i;f=1;break a}if(!(a[m+(c[(c[g+16>>2]|0)+120>>2]|0)>>0]|0))Ju(b,g,i,m);f=f+16|0}}while(0);h=0;i=Sy(b)|0;while(1){if(!i)break;p=c[i+16>>2]|0;if((a[m+(c[p+120>>2]|0)>>0]|0)==0?(a[p+119>>0]|0)==3:0){if(!g){p=ry(b)|0;g=(c[46152]|0)+f|0;c[j>>2]=p;c[j+4>>2]=g;Y0(k,93041,j)|0;g=vA(b,k,1)|0;Az(g,134401,280,1)|0;p=uH(56)|0;c[(c[g+16>>2]|0)+140>>2]=p;f=f+1|0}Ju(b,i,g,m);h=1}i=Ty(b,i)|0}if(g|0)vD(g)|0;g=Sy(b)|0;while(1){if(!g)break;if(!(a[m+(c[(c[g+16>>2]|0)+120>>2]|0)>>0]|0)){j=ry(b)|0;p=(c[46152]|0)+f|0;c[n>>2]=j;c[n+4>>2]=p;Y0(k,93049,n)|0;p=vA(b,k,1)|0;Az(p,134401,280,1)|0;j=uH(56)|0;c[(c[p+16>>2]|0)+140>>2]=j;Ju(b,g,p,m);vD(p)|0;f=f+1|0}g=Ty(b,g)|0}D_(m);c[46152]=(c[46152]|0)+f;if(d|0)c[d>>2]=f;if(e|0)c[e>>2]=h;i=uH((f<<2)+4|0)|0;h=i;g=wA(b)|0;while(1){if(!g)break;c[h>>2]=g;h=h+4|0;g=xA(g)|0;f=f+-1|0}if(!f){c[h>>2]=0;l=o;return i|0}else qa(93057,93068,134,93075);return 0}function Ju(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;a[f+(c[(c[d+16>>2]|0)+120>>2]|0)>>0]=1;Xy(e,d,1)|0;i=Jx(b,d)|0;while(1){if(!i)break;h=c[i>>2]&3;g=c[((h|0)==3?i:i+48|0)+40>>2]|0;if((g|0)==(d|0))g=c[((h|0)==2?i:i+-48|0)+40>>2]|0;if(!(a[f+(c[(c[g+16>>2]|0)+120>>2]|0)>>0]|0))Ju(b,g,e,f);i=Kx(b,i,d)|0}return}function Ku(a){a=a|0;var b=0;b=vH(24)|0;c[46153]=b;c[b>>2]=Cw(18100,c[4555]|0)|0;c[b+16>>2]=0;c[b+12>>2]=0;c[b+4>>2]=Lu(a)|0;return b|0}function Lu(a){a=a|0;var b=0,d=0;b=vH(16)|0;c[b+12>>2]=0;d=vH(a*20|0)|0;c[b>>2]=d;c[b+8>>2]=d+(a*20|0);c[b+4>>2]=d;return b|0}function Mu(a,b,d){a=a|0;b=b|0;d=d|0;d=Ou(c[46153]|0)|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=0;return d|0}function Nu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=(c[b>>2]|0)-(c[d>>2]|0)|0;if(!a)a=(c[b+4>>2]|0)-(c[d+4>>2]|0)|0;return a|0}function Ou(a){a=a|0;var b=0,d=0,e=0,f=0;f=a+8|0;a=c[f>>2]|0;b=c[a+4>>2]|0;if((b|0)==(c[a+8>>2]|0)){d=a+12|0;e=c[d>>2]|0;if(!e){a=Lu(((b-(c[a>>2]|0)|0)/20|0)<<1)|0;c[d>>2]=a}else a=e;c[f>>2]=a;b=c[a>>2]|0;c[a+4>>2]=b}c[a+4>>2]=b+20;return b|0}function Pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+12|0;d=c[f>>2]|0;if((d|0)<(b|0)){e=d<<1;e=(e|0)<(b|0)?b:e;b=a+16|0;d=c[b>>2]|0;if(d|0)D_(d);c[b>>2]=vH(e<<3)|0;c[f>>2]=e}return}function Qu(a){a=a|0;var b=0;b=c[a>>2]|0;nb[c[b>>2]&63](b,0,64)|0;c[a+20>>2]=c[a+16>>2];b=c[a+4>>2]|0;c[a+8>>2]=b;c[b+4>>2]=c[b>>2];return}function Ru(a){a=a|0;yw(c[a>>2]|0)|0;Su(c[a+4>>2]|0);D_(c[a+16>>2]|0);D_(a);return}function Su(a){a=a|0;var b=0;while(1){if(!a)break;b=c[a+12>>2]|0;D_(c[a>>2]|0);D_(a);a=b}return}function Tu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;g=l;l=l+32|0;f=g;h=g+12|0;c[h>>2]=b;c[h+4>>2]=d;i=c[a>>2]|0;h=(nb[c[i>>2]&63](i,h,1)|0)+8|0;c[h>>2]=Uu(a,e,c[h>>2]|0)|0;if(0>2){i=c[15686]|0;h=ry(e)|0;c[f>>2]=b;c[f+4>>2]=d;c[f+8>>2]=h;g1(i,93085,f)|0}l=g;return}function Uu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+20|0;a=c[e>>2]|0;c[e>>2]=a+8;c[a>>2]=b;c[a+4>>2]=d;return a|0}function Vu(a,b){a=a|0;b=b|0;Jw(c[a>>2]|0,b,a)|0;return}function Wu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+32|0;f=e;c[f>>2]=b;c[f+4>>2]=d;d=c[a>>2]|0;d=nb[c[d>>2]&63](d,f,4)|0;l=e;return d|0}function Xu(a,b){a=a|0;b=b|0;if((ay(a)|0)==1){a=c[(c[(Sy(a)|0)+16>>2]|0)+132>>2]|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0}else{Yu(a);if(!((QL(xx(b,93102)|0)|0)<<24>>24))b=tv(a,183128)|0;else b=Zu(a)|0;Cv(a,b,183128);_u(b)}return}function Yu(a){a=a|0;var b=0;b=ez(c[c[(c[(Sy(a)|0)+16>>2]|0)+112>>2]>>2]|0)|0;a=c[46154]|0;if((b|0)!=(a|0)){c[45785]=0;c[46154]=b;c[46155]=nx(b,0,93111,0)|0;c[46156]=nx(c[46154]|0,1,93119,0)|0;c[46157]=nx(c[46154]|0,1,93136,0)|0;a=c[46154]|0}c[46158]=xx(a,93136)|0;nv(183128);c[45784]=1;h[22895]=+LL(c[46154]|0,c[46155]|0,1.0,0.0);c[45786]=c[46156];c[45787]=c[46157];c[45788]=c[46158];return}function Zu(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+144|0;e=f;d=f+8|0;b=c[45785]|0;c[45785]=b+1;c[e>>2]=b;Y0(d,93152,e)|0;d=ov(vA(a,d,1)|0)|0;e=d+8|0;b=Sy(a)|0;while(1){if(!b)break;Xy(c[e>>2]|0,b,1)|0;c[(c[(c[b+16>>2]|0)+112>>2]|0)+12>>2]=d;b=Ty(a,b)|0}l=f;return d|0}function _u(a){a=a|0;Bv(a);return}function $u(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;av(f,c);bv(a,b,c,f);cv(b,f,d);dv(f);l=e;return}function av(a,b){a=a|0;b=b|0;c[a>>2]=vH(b<<4)|0;c[a+4>>2]=b;c[a+8>>2]=0;return}function bv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+64|0;r=D+32|0;u=D+48|0;v=D+16|0;w=D;t=b<<2;A=vH(t)|0;C=vH(t)|0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[v+12>>2]=0;s=vH(t)|0;t=vH(t)|0;f=0;while(1){if((f|0)>=(b|0))break;c[s+(f<<2)>>2]=f;f=f+1|0}q=b+-1|0;js(a,s,0,q);f=0;while(1){if((f|0)>=(b|0))break;c[t+(c[s+(f<<2)>>2]<<2)>>2]=f;f=f+1|0}fv(u,a,s,b);f=1;while(1){if((f|0)>=(b|0)){f=0;break}c[A+(c[s+(f<<2)>>2]<<2)>>2]=c[s+(f+-1<<2)>>2];f=f+1|0}while(1){if((f|0)>=(q|0))break;p=f+1|0;c[C+(c[s+(f<<2)>>2]<<2)>>2]=c[s+(p<<2)>>2];f=p}k=e+8|0;m=e+4|0;n=v+4|0;o=w+4|0;p=w+8|0;j=0;while(1){if((j|0)>=(d|0))break;if(!((gv(u,v)|0)<<24>>24))break;f=c[k>>2]|0;b=c[m>>2]|0;if((f|0)<(b|0))b=c[e>>2]|0;else{c[m>>2]=b<<1;b=F_(c[e>>2]|0,b<<5)|0;c[e>>2]=b;f=c[k>>2]|0}c[k>>2]=f+1;f=b+(f<<4)|0;c[f>>2]=c[v>>2];c[f+4>>2]=c[v+4>>2];c[f+8>>2]=c[v+8>>2];c[f+12>>2]=c[v+12>>2];f=c[v>>2]|0;b=c[t+(f<<2)>>2]|0;g=c[n>>2]|0;i=c[t+(g<<2)>>2]|0;if((b|0)>0?(x=c[s+(b+-1<<2)>>2]|0,y=C+(x<<2)|0,(c[t+(c[y>>2]<<2)>>2]|0)<(i|0)):0){c[w>>2]=x;c[o>>2]=g;h[p>>3]=+h[a+(g<<3)>>3]-+h[a+(x<<3)>>3];c[r>>2]=c[w>>2];c[r+4>>2]=c[w+4>>2];c[r+8>>2]=c[w+8>>2];c[r+12>>2]=c[w+12>>2];hv(u,r);c[y>>2]=g;c[A+(g<<2)>>2]=x}if((i|0)<(q|0)?(z=c[s+(i+1<<2)>>2]|0,B=A+(z<<2)|0,(c[t+(c[B>>2]<<2)>>2]|0)>(b|0)):0){c[w>>2]=f;c[o>>2]=z;h[p>>3]=+h[a+(z<<3)>>3]-+h[a+(f<<3)>>3];c[r>>2]=c[w>>2];c[r+4>>2]=c[w+4>>2];c[r+8>>2]=c[w+8>>2];c[r+12>>2]=c[w+12>>2];hv(u,r);c[B>>2]=f;c[C+(f<<2)>>2]=z}j=j+1|0}D_(A);D_(C);D_(s);D_(t);iv(u);l=D;return}function cv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=vH(a<<2)|0;l=b+8|0;i=c[l>>2]|0;j=(i<<1)+a|0;h=j<<2;e=vH(h)|0;h=vH(h)|0;f=0;while(1){if((f|0)>=(a|0))break;c[k+(f<<2)>>2]=1;f=f+1|0}f=0;while(1){if((f|0)>=(i|0)){f=0;break}n=c[b>>2]|0;m=c[n+(f<<4)+4>>2]|0;n=k+(c[n+(f<<4)>>2]<<2)|0;c[n>>2]=(c[n>>2]|0)+1;m=k+(m<<2)|0;c[m>>2]=(c[m>>2]|0)+1;f=f+1|0}while(1){if((f|0)>=(j|0))break;g[h+(f<<2)>>2]=1.0;f=f+1|0}i=vH(a*20|0)|0;c[d>>2]=i;f=0;while(1){if((f|0)>=(a|0))break;c[i+(f*20|0)>>2]=1;c[i+(f*20|0)+8>>2]=h;c[i+(f*20|0)+4>>2]=e;c[e>>2]=f;g[h>>2]=0.0;n=c[k+(f<<2)>>2]|0;h=h+(n<<2)|0;e=e+(n<<2)|0;f=f+1|0}D_(k);while(1){e=c[l>>2]|0;if(!e)break;n=e+-1|0;c[l>>2]=n;m=c[b>>2]|0;ev(i,c[m+(n<<4)>>2]|0,c[m+(n<<4)+4>>2]|0)}return}function dv(a){a=a|0;D_(c[a>>2]|0);return}function ev(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0;f=a+(b*20|0)|0;h=c[f>>2]|0;i=c[a+(b*20|0)+4>>2]|0;e=0;while(1){if((e|0)>=(h|0)){j=4;break}if((c[i+(e<<2)>>2]|0)==(d|0))break;else e=e+1|0}if((j|0)==4?(c[f>>2]=h+1,c[i+(h<<2)>>2]=d,i=c[a+(d*20|0)+4>>2]|0,h=a+(d*20|0)|0,j=c[h>>2]|0,c[h>>2]=j+1,c[i+(j<<2)>>2]=b,c[a+8>>2]|0):0){j=c[a+(b*20|0)+8>>2]|0;g[j>>2]=+g[j>>2]+-1.0;j=c[a+(d*20|0)+8>>2]|0;g[j>>2]=+g[j>>2]+-1.0}return}function fv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0.0,k=0,l=0;f=e+-1|0;c[a+4>>2]=f;c[a+8>>2]=f;c[a>>2]=vH(f<<4)|0;e=0;while(1){if((e|0)>=(f|0))break;l=c[d+(e<<2)>>2]|0;g=e+1|0;k=c[d+(g<<2)>>2]|0;j=+h[b+(k<<3)>>3]-+h[b+(l<<3)>>3];i=c[a>>2]|0;c[i+(e<<4)>>2]=l;c[i+(e<<4)+4>>2]=k;h[i+(e<<4)+8>>3]=j;e=g}e=(f|0)/2|0;while(1){if((e|0)<=-1)break;jv(a,e);e=e+-1|0}return}function gv(a,b){a=a|0;b=b|0;var d=0,e=0;d=a+4|0;if(!(c[d>>2]|0))a=0;else{e=c[a>>2]|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];b=c[a>>2]|0;e=b+((c[d>>2]|0)+-1<<4)|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];c[d>>2]=(c[d>>2]|0)+-1;jv(a,0);a=1}return a|0}function hv(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0,g=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=a+4|0;g=c[j>>2]|0;d=a+8|0;if((g|0)==(c[d>>2]|0)){c[d>>2]=g<<1;d=F_(c[a>>2]|0,g<<5)|0;c[a>>2]=d;k=a;i=c[j>>2]|0}else{k=a;i=g;d=c[a>>2]|0}c[j>>2]=i+1;j=d+(g<<4)|0;c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];c[j+8>>2]=c[b+8>>2];c[j+12>>2]=c[b+12>>2];while(1){if((g|0)<=0)break;d=c[k>>2]|0;e=+h[d+(g<<4)+8>>3];a=g>>>1;f=+h[d+(a<<4)+8>>3];if(!(e<f)){if(!(e==f))break;if(!((g2()|0)&1))break;d=c[k>>2]|0}j=d+(g<<4)|0;c[m>>2]=c[j>>2];c[m+4>>2]=c[j+4>>2];c[m+8>>2]=c[j+8>>2];c[m+12>>2]=c[j+12>>2];b=d+(a<<4)|0;c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];c[j+8>>2]=c[b+8>>2];c[j+12>>2]=c[b+12>>2];j=(c[k>>2]|0)+(a<<4)|0;c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];g=a}l=n;return}function iv(a){a=a|0;D_(c[a>>2]|0);return}function jv(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0,g=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m;j=a+4|0;while(1){d=b<<1;g=d|1;if((d|0)<(c[j>>2]|0)){n=c[a>>2]|0;e=+h[n+(d<<4)+8>>3];f=+h[n+(b<<4)+8>>3];if(!(e<f))if(!(e==f?((g2()|0)&1|0)!=0:0))k=6}else k=6;if((k|0)==6){k=0;d=b}do if((g|0)<(c[j>>2]|0)){n=c[a>>2]|0;e=+h[n+(g<<4)+8>>3];f=+h[n+(d<<4)+8>>3];if(!(e<f)){if(!(e==f))break;if(!((g2()|0)&1))break}d=g}while(0);if((d|0)==(b|0))break;g=c[a>>2]|0;n=g+(d<<4)|0;c[i>>2]=c[n>>2];c[i+4>>2]=c[n+4>>2];c[i+8>>2]=c[n+8>>2];c[i+12>>2]=c[n+12>>2];g=g+(b<<4)|0;c[n>>2]=c[g>>2];c[n+4>>2]=c[g+4>>2];c[n+8>>2]=c[g+8>>2];c[n+12>>2]=c[g+12>>2];n=(c[a>>2]|0)+(b<<4)|0;c[n>>2]=c[i>>2];c[n+4>>2]=c[i+4>>2];c[n+8>>2]=c[i+8>>2];c[n+12>>2]=c[i+12>>2];b=d}l=m;return}function kv(a,b,d,e,f,g,i,j){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0;l=(f|0)!=0;if(!l){f=vH(b<<3)|0;if(!(kt(a,b,f,b)|0))m=3;else{a=1;m=17}}else m=3;if((m|0)==3){k=uH(b<<2)|0;c[g>>2]=k;a=0;while(1){if((a|0)>=(b|0))break;c[k+(a<<2)>>2]=a;a=a+1|0}a=b+-1|0;js(f,k,0,a);n=+h[f+(c[k>>2]<<3)>>3];e=(+h[f+(c[k+(a<<2)>>2]<<3)>>3]-n)*e/+(a|0);e=e<d?d:e;a=0;g=1;d=n;while(1){if((g|0)>=(b|0))break;n=+h[f+(c[k+(g<<2)>>2]<<3)>>3];a=a+(n-d>e&1)|0;g=g+1|0;d=n}c[j>>2]=a;a:do if(!a){k=vH(4)|0;c[i>>2]=k;c[k>>2]=b}else{j=vH(a<<2)|0;c[i>>2]=j;a=0;g=1;while(1){if((g|0)>=(b|0))break a;if(+h[f+(c[k+(g<<2)>>2]<<3)>>3]-+h[f+(c[k+(g+-1<<2)>>2]<<3)>>3]>e){c[j+(a<<2)>>2]=g;a=a+1|0}g=g+1|0}}while(0);if(l)a=0;else{a=0;m=17}}if((m|0)==17)D_(f);return a|0}function lv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;d=c[46159]|0;if(d|0)xn(d);c[46159]=wn(b,b,0.0)|0;d=c[46160]|0;if(d|0)D_(d);c[46160]=uH(b<<2)|0;d=c[46161]|0;if(d|0)D_(d);n=uH(b<<3)|0;c[46161]=n;o=c[46159]|0;p=c[46160]|0;i=0;while(1){if((i|0)>=(b|0)){e=10;break}e=a+(i<<2)|0;g=o+(i<<2)|0;f=0.0;d=0;while(1){if((d|0)==(b|0))break;j=+h[(c[e>>2]|0)+(d<<3)>>3];h[(c[g>>2]|0)+(d<<3)>>3]=j;j=+B(+j);f=f<j?j:f;d=d+1|0}if(!(f!=0.0)){e=15;break}h[n+(i<<3)>>3]=1.0/f;c[p+(i<<2)>>2]=i;i=i+1|0}a:do if((e|0)==10){m=b+-1|0;d=0;l=0;b:while(1){if((l|0)<(m|0)){e=l;k=d;f=0.0}else break;while(1){if((e|0)>=(b|0))break;a=c[p+(e<<2)>>2]|0;j=+B(+(+h[(c[o+(a<<2)>>2]|0)+(l<<3)>>3]));j=+h[n+(a<<3)>>3]*j;a=f<j;i=a?e:k;e=e+1|0;k=i;f=a?j:f}if(f==0.0){d=0;break a}d=p+(l<<2)|0;if((k|0)!=(l|0)){i=c[d>>2]|0;a=p+(k<<2)|0;c[d>>2]=c[a>>2];c[a>>2]=i}g=c[o+(c[d>>2]<<2)>>2]|0;a=l+1|0;f=1.0/+h[g+(l<<3)>>3];e=a;while(1){if((e|0)>=(b|0)){d=k;l=a;continue b}i=c[o+(c[p+(e<<2)>>2]<<2)>>2]|0;d=i+(l<<3)|0;j=+h[d>>3]*f;h[d>>3]=j;c:do if(j!=0.0){d=a;while(1){if((d|0)>=(b|0))break c;q=i+(d<<3)|0;h[q>>3]=+h[q>>3]-+h[g+(d<<3)>>3]*j;d=d+1|0}}while(0);e=e+1|0}}d=+h[(c[o+(c[p+(m<<2)>>2]<<2)>>2]|0)+(m<<3)>>3]!=0.0&1}else if((e|0)==15){h[n+(i<<3)>>3]=0.0;d=0}while(0);return d|0}function mv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0,i=0,j=0,k=0,l=0;k=c[46159]|0;l=c[46160]|0;j=0;while(1){if((j|0)>=(d|0)){e=d;break}g=c[l+(j<<2)>>2]|0;i=k+(g<<2)|0;f=0.0;e=0;while(1){if((e|0)==(j|0))break;f=+h[a+(e<<3)>>3]*+h[(c[i>>2]|0)+(e<<3)>>3]+f;e=e+1|0}h[a+(j<<3)>>3]=+h[b+(g<<3)>>3]-f;j=j+1|0}while(1){b=e+-1|0;if((e|0)<=0)break;g=l+(b<<2)|0;f=0.0;while(1){if((e|0)>=(d|0))break;f=+h[a+(e<<3)>>3]*+h[(c[k+(c[g>>2]<<2)>>2]|0)+(e<<3)>>3]+f;e=e+1|0}e=a+(b<<3)|0;h[e>>3]=(+h[e>>3]-f)/+h[(c[k+(c[g>>2]<<2)>>2]|0)+(b<<3)>>3];e=b}return}function nv(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;return}function ov(a){a=a|0;var b=0;b=uH(64)|0;nv(b+36|0);c[b+8>>2]=a;return b|0}function pv(a){a=a|0;if(a|0){Lv(c[a+32>>2]|0);D_(a)}return}function qv(a){a=a|0;return ay(c[a+8>>2]|0)|0}function rv(a,b){a=a|0;b=b|0;var d=0,e=0;c[b+4>>2]=0;d=a+4|0;e=c[d>>2]|0;c[((e|0)==0?a:e+4|0)>>2]=b;c[d>>2]=b;return}function sv(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;if(!d){c[a>>2]=b;a=a+4|0}else c[b+4>>2]=d;c[a>>2]=b;return}function tv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;uv(a,b);j=c[b>>2]|0;h=c[j+4>>2]|0;while(1){if(!h)break;k=c[h+8>>2]|0;i=Sy(k)|0;d=c[(c[i+16>>2]|0)+112>>2]|0;a=c[d+16+4>>2]|0;d=c[d+8>>2]|0;f=i;i=Ty(k,i)|0;while(1){if(!i)break;e=c[(c[i+16>>2]|0)+112>>2]|0;g=c[e+16+4>>2]|0;if((g|0)<(a|0)){f=i;d=c[e+8>>2]|0;a=g}i=Ty(k,i)|0}i=c[(c[d+16>>2]|0)+112>>2]|0;k=i+4|0;c[k>>2]=c[k>>2]|8;c[h>>2]=f;k=c[h+4>>2]|0;rv((c[i+12>>2]|0)+36|0,h);h=k}nv(b);return j|0}function uv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;h=i;g=i+8|0;e=c[b+24>>2]|0;if(!((e|0)!=0?(d=az(a,e,0)|0,(d|0)!=0):0))f=3;a:do if((f|0)==3){e=b+20|0;b:do if(c[e>>2]|0){d=Sy(a)|0;while(1){if(!d)break b;if((PL(c[c[(c[d+16>>2]|0)+112>>2]>>2]|0,c[e>>2]|0,0)|0)<<24>>24)break a;d=Ty(a,d)|0}}while(0);d=Sy(a)|0}while(0);if(0){f=c[15686]|0;c[h>>2]=ry(d)|0;g1(f,93141,h)|0}c[g+4>>2]=0;c[g>>2]=0;vv(a,d,b,1,g);l=i;return}function vv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;l=d+8|0;k=c[l>>2]|0;c[l>>2]=k+1;l=b+16|0;c[(c[(c[l>>2]|0)+112>>2]|0)+16+4>>2]=k;c[(c[(c[l>>2]|0)+112>>2]|0)+24>>2]=k;k=(e|0)==0;j=Jx(a,b)|0;while(1){if(!j)break;e=c[j>>2]&3;g=c[((e|0)==2?j:j+-48|0)+40>>2]|0;if((g|0)==(b|0)){e=c[((e|0)==3?j:j+48|0)+40>>2]|0;g=c[(c[j+16>>2]|0)+120>>2]|0;if(!(c[g>>2]|0))c[g>>2]=-1}else{e=c[(c[j+16>>2]|0)+120>>2]|0;if(!(c[e>>2]|0)){c[e>>2]=1;e=g}else e=g}g=e+16|0;h=c[(c[g>>2]|0)+112>>2]|0;i=c[h+16+4>>2]|0;do if(!i){c[h+8>>2]=b;wv(f,j);vv(a,e,d,0,f);i=(c[(c[l>>2]|0)+112>>2]|0)+24|0;c[i>>2]=c[(c[(c[((c[i>>2]|0)<(c[(c[(c[g>>2]|0)+112>>2]|0)+24>>2]|0)?b:e)+16>>2]|0)+112>>2]|0)+24>>2];if((c[(c[(c[g>>2]|0)+112>>2]|0)+24>>2]|0)>=(c[(c[(c[l>>2]|0)+112>>2]|0)+16+4>>2]|0)){e=0;do{h=xv(f)|0;g=(c[c[(c[h+16>>2]|0)+120>>2]>>2]|0)==1;g=c[((c[h>>2]&3|0)==((g?2:3)|0)?h:h+((g?-1:1)*48|0)|0)+40>>2]|0;if(!(c[(c[(c[g+16>>2]|0)+112>>2]|0)+12>>2]|0)){if(!e)e=yv(a,d)|0;zv(e,g)}}while((h|0)!=(j|0));if(e|0){if((c[(c[(c[l>>2]|0)+112>>2]|0)+12>>2]|0)==0?(qv(e)|0)>1:0)zv(e,b);if(!k?(c[(c[(c[l>>2]|0)+112>>2]|0)+12>>2]|0)==(e|0):0){sv(d,e);break}rv(d,e)}}}else{g=c[(c[l>>2]|0)+112>>2]|0;if((c[g+8>>2]|0)!=(e|0)){h=g+24|0;g=c[h>>2]|0;c[h>>2]=(g|0)<(i|0)?g:i}}while(0);j=Kx(a,j,b)|0}if(!k?(c[(c[(c[l>>2]|0)+112>>2]|0)+12>>2]|0)==0:0){l=yv(a,d)|0;zv(l,b);sv(d,l)}return}function wv(a,b){a=a|0;b=b|0;c[(c[(c[b+16>>2]|0)+120>>2]|0)+4>>2]=c[a>>2];c[a>>2]=b;b=a+4|0;c[b>>2]=(c[b>>2]|0)+1;return}function xv(a){a=a|0;var b=0,d=0,e=0;b=c[a>>2]|0;if(!b)qa(135312,93172,65,93184);d=a+4|0;e=c[d>>2]|0;if((e|0)>0){c[a>>2]=c[(c[(c[b+16>>2]|0)+120>>2]|0)+4>>2];c[d>>2]=e+-1;return b|0}else qa(93162,93172,61,93184);return 0}function yv(a,b){a=a|0;b=b|0;return ov(Av(a,b)|0)|0}function zv(a,b){a=a|0;b=b|0;Xy(c[a+8>>2]|0,b,1)|0;c[(c[(c[b+16>>2]|0)+112>>2]|0)+12>>2]=a;return}function Av(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;f=d;e=d+8|0;g=b+12|0;b=c[g>>2]|0;c[g>>2]=b+1;c[f>>2]=b;Y0(e,93152,f)|0;b=vA(a,e,1)|0;Az(b,134401,280,1)|0;l=d;return b|0}function Bv(a){a=a|0;var b=0,d=0;b=c[a+36>>2]|0;while(1){if(!b)break;d=c[b+4>>2]|0;Bv(b);b=d}pv(a);return}function Cv(a,b,c){a=a|0;b=b|0;c=c|0;Dv(a,b,+h[c+32>>3]);return}function Dv(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0,i=0;e=b+36|0;f=0;while(1){e=c[e>>2]|0;if(!e)break;Dv(a,e,d);e=e+4|0;f=f+1|0}e=Vv(a,b,d)|0;c[b+32>>2]=e;a=Sv(e)|0;if((f|0)>0)d=+Ev(f,a,e,b,d);else d=3.141592653589793;if((((a|0)==1?(g=c[b>>2]|0,g|0):0)?c[(c[(c[g+16>>2]|0)+112>>2]|0)+8>>2]|0:0)?(i=b+48|0,h[i>>3]=d,d<0.0):0)h[i>>3]=d+6.283185307179586;return}function Ev(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0.0,i=0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+48|0;t=v;u=uH(a*56|0)|0;c[t+40>>2]=c[e+36>>2];p=e+16|0;j=+h[p>>3];q=t+8|0;h[q>>3]=j;h[t>>3]=j;c[t+44>>2]=c[e>>2];j=6.283185307179586/+(b|0);h[t+16>>3]=j;r=t+24|0;h[r>>3]=-1.0;s=t+32|0;h[s>>3]=-1.0;k=0;o=0;g=0.0;while(1){i=c[d>>2]|0;if(!i)break;d=c[i>>2]|0;if(!(c[(c[(c[d+16>>2]|0)+112>>2]|0)+4>>2]&8))d=o;else{n=u+(o*56|0)|0;c[n>>2]=d;h[u+(o*56|0)+8>>3]=j*+(k|0);d=o+1|0;g=+Fv(n,t,f)}k=k+1|0;o=d;d=i+4|0}a:do switch(o|0){case 1:{h[u+40>>3]=1.0;d=0;break}case 2:{j=+h[u+64>>3]-+h[u+8>>3];Gv(u,u+56|0,j>3.141592653589793?6.283185307179586-j:j);d=0;break}default:{n=u+8|0;m=u;d=0;while(1){if((d|0)>=(o|0)){d=0;break a}d=d+1|0;if((d|0)==(o|0)){i=u;j=+h[n>>3]+6.283185307179586-+h[m+8>>3];k=m+56|0}else{k=m+56|0;i=k;j=+h[m+64>>3]-+h[m+8>>3]}Gv(m,i,j);m=k}}}while(0);while(1){if((d|0)>=(o|0))break;Hv(u+(d*56|0)|0,t,b,f);d=d+1|0}D_(u);if((a|0)==1){f=g+f*.5;Iv(e,-f,0.0,0.0);h[p>>3]=+h[p>>3]+f;u=e+56|0;c[u>>2]=c[u>>2]|1}else h[p>>3]=+h[q>>3];l=v;return +((+h[s>>3]+ +h[r>>3])*.5+-3.141592653589793)}function Fv(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,g=0.0,i=0,j=0,k=0.0;i=0;f=0.0;g=0.0;e=b+40|0;while(1){j=c[e>>2]|0;if(!j)break;e=c[j>>2]|0;if(!e)e=0;else e=c[(c[(c[e+16>>2]|0)+112>>2]|0)+8>>2]|0;if((e|0)==(c[a>>2]|0)){k=+h[j+16>>3];e=i+1|0;f=f+d+k*2.0;g=g<k?k:g}else e=i;i=e;e=j+4|0}h[a+32>>3]=f;c[a+48>>2]=i;h[a+16>>3]=g+d+ +h[b>>3];h[a+24>>3]=g;return +g}function Gv(a,b,c){a=a|0;b=b|0;c=+c;var d=0.0,e=0.0;e=+h[b+16>>3];d=+h[a+16>>3];c=(d*+h[b+32>>3]+e*+h[a+32>>3])/(c*2.0*e*d);c=c<1.0?1.0:c;a=a+40|0;if(c>+h[a>>3])h[a>>3]=c;a=b+40|0;if(c>+h[a>>3])h[a>>3]=c;return}function Hv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,g=0.0,i=0,j=0.0,k=0.0,l=0.0,m=0.0,n=0,o=0,p=0.0,q=0.0,r=0,s=0,t=0,u=0.0,v=0.0,w=0,x=0,y=0.0,z=0,A=0,B=0,C=0,D=0.0,G=0.0;z=b+8|0;y=+h[z>>3];A=b+24|0;k=+h[A>>3];B=b+32|0;j=+h[B>>3];f=+h[a+16>>3]*+h[a+40>>3];x=(d|0)==1;if(x){v=+h[a+32>>3];g=v*.15915494309189535;g=f>g?f:g;f=g*6.283185307179586-v;if(f>0.0){e=f/+(c[a+48>>2]|0)+e;l=0.0;f=g}else{l=0.0;f=g}}else l=+h[a+8>>3]-+h[a+32>>3]/(f*2.0);q=+h[a+24>>3]+f;r=q>y;s=a+48|0;t=((c[s>>2]|0)+1|0)/2|0;u=1.0/f;v=e/f*.5;w=a+8|0;n=b+40|0;o=0;p=0.0;g=l;while(1){n=c[n>>2]|0;if(!n)break;i=c[n>>2]|0;if(!i)i=0;else i=c[(c[(c[i+16>>2]|0)+112>>2]|0)+8>>2]|0;if((i|0)==(c[a>>2]|0)?(Sv(c[n+32>>2]|0)|0)>=1:0){l=+h[n+16>>3];m=l*u;do if(!x)if((c[s>>2]|0)==1){g=+h[w>>3];break}else{g=g+v+m;break}else{if(g!=0.0)g=(c[s>>2]|0)==2?3.141592653589793:m+g;j=g;k=k<0.0?g:k}while(0);G=+E(+g)*f;D=+F(+g)*f;Iv(n,G,D,+Jv(n,G,D,g));g=(x?(l+e)*u:m+v)+g;o=o+1|0;i=o;l=(o|0)==(t|0)?g:p}else{i=o;l=p}n=n+4|0;o=i;p=l}f=r?q:y;if((d|0)>1?(C=c[a>>2]|0,(C|0)==(c[b+44>>2]|0)):0)h[(c[(c[C+16>>2]|0)+112>>2]|0)+24>>3]=p;h[z>>3]=f;h[A>>3]=k;h[B>>3]=j;return}function Iv(a,b,d,e){a=a|0;b=+b;d=+d;e=+e;var f=0,g=0.0,i=0.0,j=0.0,k=0,l=0,m=0,n=0,o=0.0,p=0.0;m=c[a+8>>2]|0;n=e!=0.0;f=Sy(m)|0;while(1){if(!f)break;k=c[(c[f+16>>2]|0)+132>>2]|0;i=+h[k>>3];l=k+8|0;g=+h[l>>3];if(n){o=+E(+e);p=+F(+e);j=o*i-p*g;g=p*i+o*g}else j=i;h[k>>3]=j+b;h[l>>3]=g+d;f=Ty(m,f)|0}f=a+36|0;while(1){f=c[f>>2]|0;if(!f)break;Iv(f,b,d,e);f=f+4|0}return}function Jv(a,b,d,e){a=a|0;b=+b;d=+d;e=+e;var f=0.0,g=0,i=0,j=0.0,k=0.0,l=0,m=0,n=0,o=0;m=c[a+8>>2]|0;f=+h[a+48>>3];do if(!(f>=0.0)){if((Sv(c[a+32>>2]|0)|0)==2){f=e+-1.5707963267948966;break}l=c[a>>2]|0;n=l+16|0;i=c[(c[n>>2]|0)+132>>2]|0;f=+h[i>>3]+b;k=+h[i+8>>3]+d;f=k*k+f*f;i=Sy(m)|0;g=l;while(1){if(!i)break;if((i|0)!=(l|0)?(o=c[(c[i+16>>2]|0)+132>>2]|0,j=+h[o>>3]+b,k=+h[o+8>>3]+d,j=k*k+j*j,j<f):0){f=j;g=i}i=Ty(m,i)|0}if((l|0)!=(g|0)){j=+h[a+24>>3];k=+h[a+16>>3]-j;g=c[n>>2]|0;i=c[g+132>>2]|0;f=+h[i>>3];if(f>-k?(c[a+56>>2]&1|0)!=0:0){d=+C(+(d*d+b*b));b=+K(+(+h[i+8>>3]),+(f+k));f=+E(+b);f=e+1.5707963267948966-b-+I(+((k-j/f)/d*f));break}else{f=+K(+(+h[i+8>>3]),+f);f=e+3.141592653589793-f-+h[(c[g+112>>2]|0)+24>>3];f=f>6.283185307179586?f+-6.283185307179586:f;break}}else f=0.0}else{f=3.141592653589793-f+e;f=f<0.0?f+6.283185307179586:f}while(0);return +f}function Kv(){return uH(12)|0}function Lv(a){a=a|0;var b=0,d=0;if(a|0){b=c[a>>2]|0;while(1){if(!b)break;d=c[b+4>>2]|0;D_(b);b=d}D_(a)}return}function Mv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=Nv(d)|0;d=a+8|0;c[d>>2]=(c[d>>2]|0)+1;d=a+4|0;e=c[d>>2]|0;if((b|0)==0|(e|0)==(b|0)){c[(e|0?e+4|0:a)>>2]=f;c[f+8>>2]=e;e=0}else{e=b+4|0;d=c[e>>2]|0;c[e>>2]=f;c[f+8>>2]=b;e=d;d=d+8|0}c[d>>2]=f;c[f+4>>2]=e;return}function Nv(a){a=a|0;var b=0;b=uH(12)|0;c[b>>2]=a;return b|0}function Ov(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=c[a>>2]|0;d=b;while(1){if(!b)break;g=b+4|0;e=c[g>>2]|0;f=b+8|0;c[g>>2]=c[f>>2];c[f>>2]=e;b=e}f=a+4|0;g=c[f>>2]|0;c[f>>2]=d;c[a>>2]=g;return a|0}function Pv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)!=(b|0)){f=b+8|0;e=c[f>>2]|0;c[a>>2]=b;c[f>>2]=0;b=a+4|0;a=c[b>>2]|0;c[a+4>>2]=d;c[d+8>>2]=a;c[b>>2]=e;c[e+4>>2]=0}return}function Qv(a){a=a|0;var b=0,d=0,e=0;d=Kv()|0;e=d+4|0;b=0;while(1){a=c[a>>2]|0;if(!a)break;Mv(d,b,c[a>>2]|0);b=c[e>>2]|0;a=a+4|0}return d|0} + function Bb(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Cb(){return l|0}function Db(a){a=a|0;l=a}function Eb(a,b){a=a|0;b=b|0;l=a;m=b}function Fb(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function Gb(a){a=a|0;z=a}function Hb(){return z|0}function Ib(a){a=a|0;c[45884]=a;return 0}function Jb(){return c[45884]|0}function Kb(a,b){a=a|0;b=b|0;Oa(0,a|0,b|0)|0;return}function Lb(a){a=a|0;c[46369]=a;return}function Mb(a){a=a|0;if(a|0)c[46363]=a;return}function Nb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;f=i+4|0;g=i;c[f>>2]=0;h=ZC()|0;cD(h,10976);cD(h,17220);cD(h,17440);Ow(1)|0;Nw(18)|0;Tz(1);while(1){a=Gy(a)|0;e=c[f>>2]|0;if(!a)break;if(!e){_C(h,a,d)|0;bD(h,a,b,f,g)|0;WB(h,a)|0}$x(a)|0;a=191979}l=i;return e|0}function Ob(a){a=a|0;var d=0,e=0,f=0,g=0;g=l;l=l+16|0;d=g+4|0;e=g;f=c[(c[a+16>>2]|0)+8>>2]|0;a=a+64|0;switch(c[a>>2]|0){case 0:{uI(f);break}case 1:{if(b[(c[f+16>>2]|0)+136>>1]&1)FM(f);break}case 4:case 5:case 6:{rI(f,e,d);Rb(f,c[e>>2]|0,c[d>>2]|0,c[a>>2]|0);break}default:{}}l=g;return}function Pb(a){a=a|0;var b=0,d=0,e=0,f=0;d=c[(c[a+16>>2]|0)+8>>2]|0;if(!(c[45885]|0)){c[45885]=c[4652];c[45886]=57;c[45887]=19}e=d+64|0;f=(c[e>>2]|0)+8|0;b=c[f>>2]|0;c[f>>2]=183540;switch(c[a+64>>2]|0){case 2:{hI(a,d,a,0);break}case 3:{hI(a,d,a,1);break}case 1:case 0:{if(!(c[a+152>>2]&134217728))NA(d,a)|0;break}case 6:case 5:case 4:{Qb(d);if(!(c[a+152>>2]&134217728))NA(d,a)|0;break}default:{}}c[(c[e>>2]|0)+8>>2]=b;return}function Qb(b){b=b|0;var d=0,e=0;d=c[45889]|0;if((d|0)!=(c[45888]|0)){e=c[c[45920]>>2]|0;if(!e){e=LM(b,0,96782,191979)|0;c[c[45920]>>2]=e;d=c[45889]|0}if(d>>>0>=(c[45890]|0)>>>0){Uw(183552,1)|0;d=c[45889]|0}a[d>>0]=0;d=c[45888]|0;c[45889]=d;rx(b,e,d)|0}if(c[(c[b+16>>2]|0)+12>>2]|0){e=c[(c[45920]|0)+4>>2]|0;d=c[45905]|0;if(d>>>0>=(c[45906]|0)>>>0){Uw(183616,1)|0;d=c[45905]|0}a[d>>0]=0;d=c[45904]|0;c[45905]=d;rx(b,e,d)|0}Ax(b,66649,c[(c[45920]|0)+8236>>2]|0,191979)|0;d=0;while(1){if((d|0)==8)break;Xw(183552+(d<<4)|0);d=d+1|0}D_(c[45920]|0);h[1]=1.0;h[5]=1.0;c[45921]=0;c[45925]=0;return}function Rb(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=C_(8240)|0;c[45920]=i;a:do switch(g|0){case 6:{b[i+8232>>1]=14;g=66665;break}case 5:{b[i+8232>>1]=12;g=66669;break}default:{g=xx(d,66649)|0;if((g|0?a[g>>0]|0:0)?(h=Sb(g)|0,(h&65535)>10):0){i=c[45920]|0;b[i+8232>>1]=h;break a}g=Sb(66661)|0;i=c[45920]|0;b[i+8232>>1]=g;g=66661}}while(0);c[i+8236>>2]=g;j=d+16|0;g=c[j>>2]|0;if(!(c[g+180>>2]|0))h=0;else{h=LM(d,0,96782,191979)|0;i=c[45920]|0;g=c[j>>2]|0}c[i>>2]=h;if(!(a[g+113>>0]&8))g=0;else g=LM(d,0,66673,191979)|0;c[(c[45920]|0)+4>>2]=g;i=LM(d,1,96782,191979)|0;c[(c[45920]|0)+8>>2]=i;i=LM(d,1,66673,191979)|0;c[(c[45920]|0)+12>>2]=i;i=LM(d,2,96782,191979)|0;g=c[45920]|0;c[g+16>>2]=i;if(!f)h=0;else{h=LM(d,2,66681,191979)|0;g=c[45920]|0}c[g+20>>2]=h;if(!e)h=0;else{h=LM(d,2,66689,191979)|0;g=c[45920]|0}c[g+24>>2]=h;h=a[(c[j>>2]|0)+113>>0]|0;if(!(h&33))i=0;else{i=LM(d,2,66673,191979)|0;g=c[45920]|0;h=a[(c[j>>2]|0)+113>>0]|0}c[g+28>>2]=i;if(!(h&2))i=0;else{i=LM(d,2,66697,191979)|0;g=c[45920]|0;h=a[(c[j>>2]|0)+113>>0]|0}c[g+32>>2]=i;if(!(h&4))h=0;else{h=LM(d,2,66706,191979)|0;g=c[45920]|0}c[g+36>>2]=h;g=0;while(1){if((g|0)==8)break;Tw(183552+(g<<4)|0,1024,(c[45920]|0)+40+(g<<10)|0);g=g+1|0}return}function Sb(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+1040|0;h=j;g=j+8|0;f=0;d=b;a:while(1){do{e=d;d=d+1|0;e=a[e>>0]|0;if(!(e<<24>>24))break a}while(((e<<24>>24)+-48|0)>>>0>=10);if((f|0)>=1023){i=7;break}a[g+f>>0]=e;f=f+1|0}if((i|0)==7){c[h>>2]=b;Pw(0,66715,h)|0}a[g+f>>0]=0;i=(a2(g)|0)&65535;l=j;return i|0}function Tb(b){b=b|0;var d=0,e=0;e=c[(c[b+16>>2]|0)+8>>2]|0;d=c[c[45920]>>2]|0;b=c[45893]|0;if(b>>>0>=(c[45894]|0)>>>0){Uw(183568,1)|0;b=c[45893]|0}a[b>>0]=0;b=c[45892]|0;c[45893]=b;rx(e,d,b)|0;if(c[(c[e+16>>2]|0)+12>>2]|0){d=c[(c[45920]|0)+4>>2]|0;b=c[45909]|0;if(b>>>0>=(c[45910]|0)>>>0){Uw(183632,1)|0;b=c[45909]|0}a[b>>0]=0;b=c[45908]|0;c[45909]=b;rx(e,d,b)|0}h[2]=1.0;h[6]=1.0;c[45922]=0;c[45926]=0;return}function Ub(b){b=b|0;var d=0,e=0;e=c[(c[b+16>>2]|0)+8>>2]|0;b=c[45893]|0;if((c[45892]|0)!=(b|0)){d=c[(c[45920]|0)+8>>2]|0;if(b>>>0>=(c[45894]|0)>>>0){Uw(183568,1)|0;b=c[45893]|0}a[b>>0]=0;b=c[45892]|0;c[45893]=b;rx(e,d,b)|0}b=c[45909]|0;if((c[45908]|0)!=(b|0)){d=c[(c[45920]|0)+12>>2]|0;if(b>>>0>=(c[45910]|0)>>>0){Uw(183632,1)|0;b=c[45909]|0}a[b>>0]=0;b=c[45908]|0;c[45909]=b;rx(e,d,b)|0}h[9]=1.0;h[11]=1.0;c[45929]=0;c[45931]=0;return}function Vb(b){b=b|0;var d=0,e=0;e=c[(c[b+16>>2]|0)+8>>2]|0;b=c[45893]|0;if((c[45892]|0)!=(b|0)){d=c[(c[45920]|0)+16>>2]|0;if(b>>>0>=(c[45894]|0)>>>0){Uw(183568,1)|0;b=c[45893]|0}a[b>>0]=0;b=c[45892]|0;c[45893]=b;rx(e,d,b)|0}b=c[45897]|0;if((c[45896]|0)!=(b|0)){d=c[(c[45920]|0)+24>>2]|0;if(b>>>0>=(c[45898]|0)>>>0){Uw(183584,1)|0;b=c[45897]|0}a[b>>0]=0;b=c[45896]|0;c[45897]=b;rx(e,d,b)|0}b=c[45901]|0;if((c[45900]|0)!=(b|0)){d=c[(c[45920]|0)+20>>2]|0;if(b>>>0>=(c[45902]|0)>>>0){Uw(183600,1)|0;b=c[45901]|0}a[b>>0]=0;b=c[45900]|0;c[45901]=b;rx(e,d,b)|0}b=c[45909]|0;if((c[45908]|0)!=(b|0)){d=c[(c[45920]|0)+28>>2]|0;if(b>>>0>=(c[45910]|0)>>>0){Uw(183632,1)|0;b=c[45909]|0}a[b>>0]=0;b=c[45908]|0;c[45909]=b;rx(e,d,b)|0}b=c[45913]|0;if((c[45912]|0)!=(b|0)){d=c[(c[45920]|0)+36>>2]|0;if(b>>>0>=(c[45914]|0)>>>0){Uw(183648,1)|0;b=c[45913]|0}a[b>>0]=0;b=c[45912]|0;c[45913]=b;rx(e,d,b)|0}b=c[45917]|0;if((c[45916]|0)!=(b|0)){d=c[(c[45920]|0)+32>>2]|0;if(b>>>0>=(c[45918]|0)>>>0){Uw(183664,1)|0;b=c[45917]|0}a[b>>0]=0;b=c[45916]|0;c[45917]=b;rx(e,d,b)|0}h[10]=1.0;h[12]=1.0;h[3]=1.0;h[4]=1.0;h[7]=1.0;h[8]=1.0;c[45930]=0;c[45932]=0;c[45923]=0;c[45924]=0;c[45927]=0;c[45928]=0;return}function Wb(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+1056|0;j=t+16|0;s=t+8|0;r=t;k=t+32|0;o=c[(c[d+16>>2]|0)+12>>2]|0;p=c[11416+(o<<2)>>2]|0;Ww(p,66812)|0;g=f+4|0;dc(k,+h[(c[g>>2]|0)+16>>3]);Ww(p,k)|0;gc(d,191979,c[c[g>>2]>>2]|0);ac(d);q=a[f+48>>0]|0;q=q<<24>>24==108?-1:q<<24>>24==114&1;g=c[g>>2]|0;if(!g)g=0;else g=c[g+24>>2]&127;i=b[(c[45920]|0)+8232>>1]|0;if((i&65535)>14?(m=c[11464+((i&65535)+-15<<2)>>2]&g,n=183684+(o<<2)|0,(c[n>>2]|0)!=(m|0)):0){c[r>>2]=m;Y0(k,66815,r)|0;Ww(p,k)|0;c[n>>2]=m}r=e+8|0;h[r>>3]=+h[r>>3]+ +h[f+24>>3];Ww(p,66821)|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];cc(p,j);c[s>>2]=q;Y0(k,99194,s)|0;Ww(p,k)|0;dc(k,+h[f+32>>3]);Ww(p,k)|0;gc(d,191979,c[f>>2]|0);l=t;return}function Xb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0;i=l;l=l+1040|0;f=i;g=i+16|0;e=c[(c[a+16>>2]|0)+12>>2]|0;$b(a);ac(a);if(!d){a=c[11416+(e<<2)>>2]|0;Ww(a,66809)|0}else{if((d|1|0)==3)ic(a,d,b,2);else jc(a);a=c[11416+(e<<2)>>2]|0;Ww(a,66806)|0};c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];cc(a,f);dc(g,+h[b+16>>3]-+h[b>>3]);Ww(a,g)|0;dc(g,+h[b+24>>3]-+h[b+8>>3]);Ww(a,g)|0;l=i;return}function Yb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;$b(a);ac(a);if(!d)bc(a,112,b,c);else{if((d|1|0)==3)ic(a,d,b,c);else jc(a);bc(a,80,b,c)}return}function Zb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;$b(a);ac(a);if(!f)bc(a,66,b,c);else{if((f|1|0)==3)ic(a,f,b,c);else jc(a);bc(a,98,b,c)}return}function _b(a,b,c){a=a|0;b=b|0;c=c|0;$b(a);ac(a);bc(a,76,b,c);return}function $b(b){b=b|0;var d=0,e=0,f=0,g=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+1184|0;i=n;f=n+24|0;m=n+8|0;Tw(m,1024,n+152|0);j=b+16|0;d=c[j>>2]|0;g=+h[d+152>>3];e=8+(c[d+12>>2]<<3)|0;if(g!=+h[e>>3]){h[e>>3]=g;Ww(m,66778)|0;h[i>>3]=+h[(c[j>>2]|0)+152>>3];Y0(f,66792,i)|0;ec(f,0);Ww(m,f)|0;f=m+4|0;d=c[f>>2]|0;e=m+8|0;if(d>>>0>=(c[e>>2]|0)>>>0){Uw(m,1)|0;d=c[f>>2]|0}c[f>>2]=d+1;a[d>>0]=41;d=c[f>>2]|0;if(d>>>0>=(c[e>>2]|0)>>>0){Uw(m,1)|0;d=c[f>>2]|0}a[d>>0]=0;d=c[m>>2]|0;c[f>>2]=d;gc(b,66797,d);d=c[j>>2]|0}d=c[d+160>>2]|0;if(d|0){j=m+4|0;k=m+8|0;a:while(1){i=d+4|0;d=c[d>>2]|0;if(!d)break;switch(a[d>>0]|0){case 102:{if(!(b$(d,108075)|0)){d=i;continue a}break}case 98:{if(!(b$(d,108057)|0)){d=i;continue a}break}case 115:{if(!(b$(d,108062)|0)){d=i;continue a}break}default:{}}Ww(m,d)|0;do{f=d;d=d+1|0}while((a[f>>0]|0)!=0);if(a[d>>0]|0){e=c[j>>2]|0;if(e>>>0>=(c[k>>2]|0)>>>0){Uw(m,1)|0;e=c[j>>2]|0}c[j>>2]=e+1;a[e>>0]=40;f=0;while(1){if(!(a[d>>0]|0))break;if(f|0){e=c[j>>2]|0;if(e>>>0>=(c[k>>2]|0)>>>0){Uw(m,1)|0;e=c[j>>2]|0}c[j>>2]=e+1;a[e>>0]=44}Ww(m,d)|0;do{e=d;d=d+1|0}while((a[e>>0]|0)!=0);f=f+1|0}d=c[j>>2]|0;if(d>>>0>=(c[k>>2]|0)>>>0){Uw(m,1)|0;d=c[j>>2]|0}c[j>>2]=d+1;a[d>>0]=41}d=c[j>>2]|0;if(d>>>0>=(c[k>>2]|0)>>>0){Uw(m,1)|0;d=c[j>>2]|0}a[d>>0]=0;d=c[m>>2]|0;c[j>>2]=d;gc(b,66797,d);d=i}Xw(m)}l=n;return}function ac(a){a=a|0;fc((c[a+16>>2]|0)+16|0);gc(a,75730,190678);return}function bc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+1040|0;j=k;i=k+16|0;h=c[11416+(c[(c[b+16>>2]|0)+12>>2]<<2)>>2]|0;g=h+4|0;b=c[g>>2]|0;if(b>>>0>=(c[h+8>>2]|0)>>>0){Uw(h,1)|0;b=c[g>>2]|0}c[g>>2]=b+1;a[b>>0]=d;c[j>>2]=f;Y0(i,66742,j)|0;Ww(h,i)|0;b=0;while(1){if((b|0)>=(f|0))break;i=e+(b<<4)|0;c[j>>2]=c[i>>2];c[j+4>>2]=c[i+4>>2];c[j+8>>2]=c[i+8>>2];c[j+12>>2]=c[i+12>>2];cc(h,j);b=b+1|0}l=k;return}function cc(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+1024|0;d=c;dc(d,+h[b>>3]);Ww(a,d)|0;dc(d,+gI(+h[b+8>>3]));Ww(a,d)|0;l=c;return}function dc(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;h[d>>3]=b>-1.0e-08&b<1.0e-08?0.0:b;Y0(a,66747,d)|0;ec(a,1);l=c;return}function ec(b,c){b=b|0;c=c|0;var d=0,e=0;d=A$(b,46)|0;if(!d){if(c|0){d=b+(W_(b)|0)|0;e=10}}else{while(1){b=d+1|0;if(!(a[b>>0]|0))break;else d=b}a:while(1){switch(a[d>>0]|0){case 46:{e=5;break a}case 48:break;default:{e=6;break a}}a[d>>0]=0;d=d+-1|0}if((e|0)==5)a[d>>0]=0;else if((e|0)==6)d=d+1|0;if(c|0)e=10}if((e|0)==10){a[d>>0]=32;a[d+1>>0]=0}return}function fc(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;i=j+16|0;h=j;e=a[b+3>>0]|0;f=d[b>>0]|0;g=d[b+1>>0]|0;b=d[b+2>>0]|0;if(e<<24>>24==-1){c[h>>2]=f;c[h+4>>2]=g;c[h+8>>2]=b;Y0(190678,75610,h)|0}else{c[i>>2]=f;c[i+4>>2]=g;c[i+8>>2]=b;c[i+12>>2]=e&255;Y0(190678,66760,i)|0}l=j;return}function gc(a,b,d){a=a|0;b=b|0;d=d|0;hc(c[11416+(c[(c[a+16>>2]|0)+12>>2]<<2)>>2]|0,b,d);return}function hc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+1040|0;h=f;g=f+8|0;i=W_(e)|0;c[h>>2]=d;c[h+4>>2]=i;Y0(g,66753,h)|0;Ww(b,g)|0;Ww(b,e)|0;e=b+4|0;d=c[e>>2]|0;if(d>>>0>=(c[b+8>>2]|0)>>>0){Uw(b,1)|0;d=c[e>>2]|0}c[e>>2]=d+1;a[d>>0]=32;l=f;return}function ic(b,d,f,i){b=b|0;d=d|0;f=f|0;i=i|0;var j=0.0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0;x=l;l=l+1120|0;t=x+64|0;w=x+80|0;k=x+32|0;r=x+16|0;s=x;u=c[b+16>>2]|0;j=+(c[u+136>>2]|0)*.017453292519943295;if((e[(c[45920]|0)+8232>>1]|0)<14)jc(b);else{Tw(w,1024,x+96|0);v=(d|0)==2;if(v){aN(f,k,i,j,2);f=w+4|0;d=c[f>>2]|0;if(d>>>0>=(c[w+8>>2]|0)>>>0){Uw(w,1)|0;d=c[f>>2]|0}c[f>>2]=d+1;a[d>>0]=91;c[t>>2]=c[k>>2];c[t+4>>2]=c[k+4>>2];c[t+8>>2]=c[k+8>>2];c[t+12>>2]=c[k+12>>2];cc(w,t);s=k+16|0;c[t>>2]=c[s>>2];c[t+4>>2]=c[s+4>>2];c[t+8>>2]=c[s+8>>2];c[t+12>>2]=c[s+12>>2];cc(w,t)}else{aN(f,k,i,0.0,3);q=+h[k+24>>3];o=+h[k>>3];if(j==0.0){n=+h[k+8>>3];p=q*.25;j=n;m=o}else{p=q*.25;y=p;m=+E(+j)*y+o;n=+h[k+8>>3];j=+F(+j)*y+n}h[r>>3]=m;h[r+8>>3]=j;h[s>>3]=o;h[s+8>>3]=n;f=w+4|0;d=c[f>>2]|0;if(d>>>0>=(c[w+8>>2]|0)>>>0){Uw(w,1)|0;d=c[f>>2]|0}c[f>>2]=d+1;a[d>>0]=40;c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[t+8>>2]=c[r+8>>2];c[t+12>>2]=c[r+12>>2];cc(w,t);kc(w,p);c[t>>2]=c[s>>2];c[t+4>>2]=c[s+4>>2];c[t+8>>2]=c[s+8>>2];c[t+12>>2]=c[s+12>>2];cc(w,t);kc(w,q)}Ww(w,66803)|0;d=u+140|0;j=+g[d>>2];f=u+56|0;if(j>0.0){lc(w,j,f);lc(w,+g[d>>2],u+96|0)}else{lc(w,0.0,f);lc(w,1.0,u+96|0)}Yw(w)|0;k=w+4|0;d=c[k>>2]|0;i=w+8|0;f=d>>>0>=(c[i>>2]|0)>>>0;if(v){if(f){Uw(w,1)|0;d=c[k>>2]|0}c[k>>2]=d+1;a[d>>0]=93}else{if(f){Uw(w,1)|0;d=c[k>>2]|0}c[k>>2]=d+1;a[d>>0]=41}d=c[k>>2]|0;if(d>>>0>=(c[i>>2]|0)>>>0){Uw(w,1)|0;d=c[k>>2]|0}a[d>>0]=0;v=c[w>>2]|0;c[k>>2]=v;gc(b,66800,v);Xw(w)}l=x;return}function jc(a){a=a|0;fc((c[a+16>>2]|0)+56|0);gc(a,66800,190678);return}function kc(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+1024|0;d=c;dc(d,b);Ww(a,d)|0;l=c;return}function lc(a,b,c){a=a|0;b=+b;c=c|0;var d=0,e=0,f=0;d=l;l=l+1040|0;f=d;e=d+8|0;h[f>>3]=b;Y0(e,92597,f)|0;ec(e,1);fc(c);hc(a,e,190678);l=d;return}function mc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0;e=l;l=l+1040|0;i=e;f=e+16|0;g=c[11416+(c[(c[a+16>>2]|0)+12>>2]<<2)>>2]|0;Ww(g,66909)|0;c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[i+12>>2]=c[d+12>>2];cc(g,i);dc(f,+h[d+16>>3]-+h[d>>3]);Ww(g,f)|0;dc(f,+h[d+24>>3]-+h[d+8>>3]);Ww(g,f)|0;gc(a,191979,c[b+8>>2]|0);l=e;return}function nc(a){a=a|0;var b=0;switch(c[a+64>>2]|0){case 0:{b=lC(c[a>>2]|0)|0;$C(b,c[(c[a+16>>2]|0)+8>>2]|0,67693,0)|0;mC(b);break}case 1:{uI(c[(c[a>>2]|0)+168>>2]|0);break}default:{}}return}function oc(b){b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;e=c[(c[b+16>>2]|0)+8>>2]|0;if(!(c[45933]|0)){c[45933]=c[4652];c[45934]=57;c[45935]=19}c[(c[e+64>>2]|0)+8>>2]=183732;pc(e,1);c[d>>2]=0;a[d+4>>0]=(a[(c[e+16>>2]|0)+115>>0]|0)==1&1;g=c[b+64>>2]|0;a[d+5>>0]=((g|0)==0|(g|0)==3)&1;a[d+6>>0]=0;qc(e,b,1,d);l=f;return}function pc(a,b){a=a|0;b=b|0;var d=0;c[a>>2]=c[a>>2]&-9;d=wA(a)|0;while(1){if(!d)break;pc(d,0);d=xA(d)|0}a:do if(b|0){b=Sy(a)|0;while(1){if(!b)break a;c[b>>2]=c[b>>2]&-9;d=Ex(a,b)|0;while(1){if(!d)break;c[d>>2]=c[d>>2]&-9;d=Gx(a,d)|0}b=Ty(a,b)|0}}while(0);return}function qc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;p=q+8|0;o=q;n=(d|0)!=0;if(n){m=Cw(11836,c[4555]|0)|0;Fz(a,1,137978,12,0);Fz(a,2,137978,12,0);Fz(a,0,137978,-12,0);f=rc(a,0,m)|0;j=Sy(a)|0;i=0;g=0;while(1){if(!j)break;if(!(z$(ry(j)|0,104980,7)|0)){k=g;g=sc(m,ry(j)|0)|0}else{k=g+1|0;g=g+f|0}c[(yz(j,137978,0)|0)+8>>2]=g;h=Ex(a,j)|0;g=i;while(1){if(!h)break;c[(yz(h,137978,0)|0)+8>>2]=g;h=Gx(a,h)|0;g=g+1|0}j=Ty(a,j)|0;i=g;g=k}yw(m)|0}else f=0;m=c[e>>2]|0;c[e>>2]=m+1;tc(b,m);$B(b,94292)|0;uc(a,b,d,e);vc(a,b,e);$B(b,94263)|0;tc(b,c[e>>2]|0);if(n){c[o>>2]=f;fC(b,66912,o)}else{c[p>>2]=c[(yz(a,137978,0)|0)+8>>2];fC(b,66932,p)}xc(a,b,d,wc(a,b,d,e)|0,e);yc(a,b,d,e);$B(b,150517)|0;p=(c[e>>2]|0)+-1|0;c[e>>2]=p;tc(b,p);if(n)$B(b,107982)|0;else $B(b,75253)|0;l=q;return}function rc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((fz(a)|0)!=(a|0)){e=b+1|0;c[(yz(a,137978,0)|0)+8>>2]=b;if(!(z$(ry(a)|0,104980,7)|0)){b=ry(a)|0;Kc(d,b,c[(yz(a,137978,0)|0)+8>>2]|0);b=e}else b=e}e=wA(a)|0;while(1){if(!e)break;a=rc(e,b,d)|0;e=xA(e)|0;b=a}return b|0}function sc(a,b){a=a|0;b=b|0;a=nb[c[a>>2]&63](a,b,512)|0;if(!a)a=-1;else a=c[a+12>>2]|0;return a|0}function tc(a,b){a=a|0;b=b|0;while(1){if((b|0)<=0)break;$B(a,90480)|0;b=b+-1|0}return}function uc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+16|0;f=h+8|0;i=h;j=ry(a)|0;tc(b,c[e>>2]|0);c[i>>2]=Bc(j,e)|0;fC(b,67020,i);if(d|0){$B(b,94263)|0;tc(b,c[e>>2]|0);j=(ey(a)|0)!=0;c[f>>2]=j?104626:134226;fC(b,67634,f);tc(b,c[e>>2]|0);j=(gy(a)|0)!=0;c[g>>2]=j?104626:134226;fC(b,67651,g)}l=h;return}function vc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;n=o+8|0;m=o;i=fz(b)|0;j=c[b>>2]&3;f=sx(i,j,0)|0;a:do if(f|0){k=e+5|0;while(1){if(!f)break a;g=yx(b,f)|0;do if(g|0){h=f+8|0;if(!(a[g>>0]|0)){g=c[h>>2]|0;if((a[g>>0]|0)!=108)break;if(b$(g,105198)|0)break}$B(d,94263)|0;tc(d,c[e>>2]|0);c[m>>2]=Bc(c[h>>2]|0,e)|0;fC(d,67070,m);if(a[k>>0]|0?Dc(c[h>>2]|0)|0:0){Ec(yx(b,f)|0,d,e);break}c[n>>2]=Bc(yx(b,f)|0,e)|0;fC(d,67077,n)}while(0);f=sx(i,j,f)|0}}while(0);l=o;return}function wc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+16|0;h=i;f=wA(a)|0;if(f){$B(b,94263)|0;g=c[e>>2]|0;c[e>>2]=g+1;tc(b,g);g=(d|0)!=0;if(g){$B(b,66994)|0;a=0;d=f}else{$B(b,67054)|0;tc(b,c[e>>2]|0);a=0;d=f}while(1){if(!d)break;if(!a)a=1;else $B(b,94263)|0;if(g)Cc(d,b,e);else{c[h>>2]=c[(yz(d,137978,0)|0)+8>>2];fC(b,134313,h)}d=xA(d)|0}if(g)a=1;else{c[e>>2]=(c[e>>2]|0)+-1;$B(b,150517)|0;tc(b,c[e>>2]|0);$B(b,94258)|0;a=1}}else a=0;l=i;return a|0}function xc(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=Sy(a)|0;if(!g){if((d|0)!=0&(e|0)!=0){c[f>>2]=(c[f>>2]|0)+-1;$B(b,150517)|0;tc(b,c[f>>2]|0);$B(b,94258)|0}}else{$B(b,94263)|0;h=(d|0)!=0;if(h)if(!e){e=c[f>>2]|0;c[f>>2]=e+1;tc(b,e);$B(b,66994)|0;e=0}else e=0;else{e=c[f>>2]|0;c[f>>2]=e+1;tc(b,e);$B(b,67008)|0;tc(b,c[f>>2]|0);e=0}while(1){if(!g)break;if(z$(ry(g)|0,104980,7)|0){do if(e)if(h){$B(b,94263)|0;break}else{$B(b,97973)|0;break}else e=1;while(0);Ac(g,b,d,f)}g=Ty(a,g)|0}c[f>>2]=(c[f>>2]|0)+-1;$B(b,150517)|0;tc(b,c[f>>2]|0);$B(b,94258)|0}return}function yc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=Sy(a)|0;a:do if(f|0){while(1){if(!f)break a;if(Ex(a,f)|0)break;f=Ty(a,f)|0}$B(b,94263)|0;i=c[e>>2]|0;c[e>>2]=i+1;tc(b,i);$B(b,66944)|0;i=(d|0)!=0;if(i)g=0;else{tc(b,c[e>>2]|0);g=0}while(1){if(!f)break;h=Ex(a,f)|0;while(1){if(!h)break;do if(g)if(i){$B(b,94263)|0;break}else{$B(b,97973)|0;break}else g=1;while(0);zc(h,b,d,e);h=Gx(a,h)|0}f=Ty(a,f)|0}c[e>>2]=(c[e>>2]|0)+-1;$B(b,150517)|0;tc(b,c[e>>2]|0);$B(b,94258)|0}while(0);return}function zc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;i=j+24|0;h=j+16|0;g=j+8|0;f=j;if(!d){c[i>>2]=c[(yz(a,137978,0)|0)+8>>2];fC(b,134313,i)}else{i=c[e>>2]|0;c[e>>2]=i+1;tc(b,i);$B(b,94292)|0;tc(b,c[e>>2]|0);c[f>>2]=c[(yz(a,137978,0)|0)+8>>2];fC(b,66956,f);tc(b,c[e>>2]|0);c[g>>2]=c[(yz(c[((c[a>>2]&3|0)==3?a:a+48|0)+40>>2]|0,137978,0)|0)+8>>2];fC(b,66970,g);tc(b,c[e>>2]|0);c[h>>2]=c[(yz(c[((c[a>>2]&3|0)==2?a:a+-48|0)+40>>2]|0,137978,0)|0)+8>>2];fC(b,66983,h);vc(a,b,e);$B(b,150517)|0;i=(c[e>>2]|0)+-1|0;c[e>>2]=i;tc(b,i);$B(b,75253)|0}l=j;return}function Ac(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i+16|0;g=i+8|0;f=i;if(!d){c[h>>2]=c[(yz(a,137978,0)|0)+8>>2];fC(b,134313,h)}else{h=c[e>>2]|0;c[e>>2]=h+1;tc(b,h);$B(b,94292)|0;tc(b,c[e>>2]|0);c[f>>2]=c[(yz(a,137978,0)|0)+8>>2];fC(b,66956,f);tc(b,c[e>>2]|0);c[g>>2]=Bc(ry(a)|0,e)|0;fC(b,67020,g);vc(a,b,e);$B(b,150517)|0;h=(c[e>>2]|0)+-1|0;c[e>>2]=h;tc(b,h);$B(b,75253)|0}l=i;return}function Bc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=d+4|0;if(a[g>>0]|0)b=RM(b)|0;if(!(c[45936]|0)){Tw(183744,1024,0);e=b}else e=b;a:while(1){f=a[e>>0]|0;switch(f<<24>>24){case 0:break a;case 34:{Ww(183744,67033)|0;break}case 92:{Ww(183744,93534)|0;break}case 47:{Ww(183744,67036)|0;break}case 8:{Ww(183744,67039)|0;break}case 12:{Ww(183744,67042)|0;break}case 10:{Ww(183744,67045)|0;break}case 13:{Ww(183744,67048)|0;break}case 9:{Ww(183744,67051)|0;break}default:{d=c[45937]|0;if(d>>>0>=(c[45938]|0)>>>0){Uw(183744,1)|0;d=c[45937]|0}c[45937]=d+1;a[d>>0]=f}}e=e+1|0}d=c[45937]|0;if(d>>>0>=(c[45938]|0)>>>0){Uw(183744,1)|0;d=c[45937]|0}a[d>>0]=0;d=c[45936]|0;c[45937]=d;if(a[g>>0]|0)D_(b);return d|0}function Cc(a,b,c){a=a|0;b=b|0;c=c|0;qc(a,b,0,c);a=wA(a)|0;while(1){if(!a)break;$B(b,94263)|0;Cc(a,b,c);a=xA(a)|0}return}function Dc(b){b=b|0;var c=0;c=b+1|0;a:do if((a[b>>0]|0)==95){b=(a[c>>0]|0)+-100<<24>>24;switch(((b&255)>>>2|b<<6&255)<<24>>24){case 0:{if(!(b$(c,67591)|0)){b=1;break a}break}case 2:{if(!(b$(c,67597)|0)){b=1;break a}break}case 1:{if(!(b$(c,67604)|0)){b=1;break a}return (b$(c,67618)|0)==0|0}case 4:{if(!(b$(c,67611)|0)){b=1;break a}b=(b$(c,67626)|0)==0&1;break a}default:{b=0;break a}}b=0}else b=0;while(0);return b|0}function Ec(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+16|0;f=i;do if(b|0?a[b>>0]|0:0){h=oE(b)|0;if(!h){c[f>>2]=b;Pw(0,67082,f)|0;break}$B(d,150517)|0;g=c[e>>2]|0;c[e>>2]=g+1;tc(d,g);$B(d,67109)|0;g=h+8|0;b=0;f=0;while(1){if((f|0)>=(c[h>>2]|0))break;if(!b)b=1;else $B(d,94263)|0;Fc((c[g>>2]|0)+(f*80|0)|0,d,e);f=f+1|0}c[e>>2]=(c[e>>2]|0)+-1;$B(d,150517)|0;tc(d,c[e>>2]|0);$B(d,94258)|0;pE(h)}while(0);l=i;return}function Fc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0.0,D=0.0;A=l;l=l+240|0;y=A+224|0;x=A+216|0;w=A+208|0;v=A+200|0;u=A+192|0;t=A+184|0;s=A+176|0;r=A+152|0;q=A+136|0;p=A+128|0;o=A+112|0;n=A+104|0;m=A+96|0;k=A+88|0;j=A+72|0;i=A+48|0;z=A+40|0;g=A+8|0;f=A;e=c[d>>2]|0;c[d>>2]=e+1;tc(b,e);$B(b,94292)|0;tc(b,c[d>>2]|0);e=c[a>>2]|0;a:do switch(e|0){case 1:case 0:{c[f>>2]=(e|0)==0?69:101;fC(b,67112,f);tc(b,c[d>>2]|0);D=+h[a+16>>3];C=+h[a+24>>3];B=+h[a+32>>3];h[g>>3]=+h[a+8>>3];h[g+8>>3]=D;h[g+16>>3]=C;h[g+24>>3]=B;fC(b,67125,g);break}case 3:case 2:{c[z>>2]=(e|0)==2?80:112;fC(b,67112,z);tc(b,c[d>>2]|0);Gc(b,a+8|0);break}case 5:case 4:{c[i>>2]=(e|0)==4?66:98;fC(b,67112,i);tc(b,c[d>>2]|0);Gc(b,a+8|0);break}case 6:{fC(b,67160,A+56|0);tc(b,c[d>>2]|0);Gc(b,a+8|0);break}case 7:{fC(b,67172,A+64|0);tc(b,c[d>>2]|0);D=+h[a+16>>3];h[j>>3]=+h[a+8>>3];h[j+8>>3]=D;fC(b,67184,j);tc(b,c[d>>2]|0);z=c[a+24>>2]|0;c[k>>2]=(z|0)==0?108:(z|0)==1?99:114;fC(b,67206,k);tc(b,c[d>>2]|0);h[m>>3]=+h[a+32>>3];fC(b,67222,m);tc(b,c[d>>2]|0);c[n>>2]=Bc(c[a+40>>2]|0,d)|0;fC(b,67239,n);break}case 9:case 8:{c[o>>2]=(e|0)==8?67:99;fC(b,67112,o);tc(b,c[d>>2]|0);fC(b,67253,A+120|0);tc(b,c[d>>2]|0);c[p>>2]=Bc(c[a+8>>2]|0,d)|0;fC(b,67270,p);break}case 13:case 14:{c[q>>2]=(e|0)==13?67:99;fC(b,67112,q);tc(b,c[d>>2]|0);switch(c[a+8>>2]|0){case 0:{fC(b,67253,A+144|0);tc(b,c[d>>2]|0);c[r>>2]=Bc(c[a+16>>2]|0,d)|0;fC(b,67270,r);break a}case 1:{fC(b,67285,A+160|0);tc(b,c[d>>2]|0);Hc(b,a+16|0,d);break a}default:{fC(b,67304,A+168|0);tc(b,c[d>>2]|0);Ic(b,a+16|0,d);break a}}}case 10:{fC(b,67323,s);tc(b,c[d>>2]|0);h[t>>3]=+h[a+8>>3];fC(b,67335,t);tc(b,c[d>>2]|0);c[u>>2]=Bc(c[a+16>>2]|0,d)|0;fC(b,67351,u);break}case 11:{fC(b,67365,v);tc(b,c[d>>2]|0);c[w>>2]=Bc(c[a+8>>2]|0,d)|0;fC(b,67377,w);break}case 15:{fC(b,67392,x);tc(b,c[d>>2]|0);c[y>>2]=c[a+8>>2];fC(b,67404,y);break}default:{}}while(0);z=(c[d>>2]|0)+-1|0;c[d>>2]=z;tc(b,z);$B(b,75253)|0;l=A;return}function Gc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0.0;j=l;l=l+48|0;i=j+32|0;g=j+16|0;f=j+8|0;e=c[b>>2]|0;d=c[b+4>>2]|0;fC(a,67565,j);b=0;while(1){if((b|0)>=(e|0))break;if((b|0)>0)fC(a,97973,f);k=+h[d+(b*24|0)+8>>3];h[g>>3]=+h[d+(b*24|0)>>3];h[g+8>>3]=k;fC(a,67577,g);b=b+1|0}fC(a,67518,i);l=j;return}function Hc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0;e=l;l=l+32|0;f=e+16|0;i=e;tc(a,c[d>>2]|0);g=+h[b+8>>3];h[i>>3]=+h[b>>3];h[i+8>>3]=g;fC(a,67521,i);tc(a,c[d>>2]|0);g=+h[b+24>>3];h[f>>3]=+h[b+16>>3];h[f+8>>3]=g;fC(a,67543,f);tc(a,c[d>>2]|0);Jc(a,c[b+32>>2]|0,c[b+36>>2]|0,d);l=e;return}function Ic(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0.0,j=0;e=l;l=l+48|0;f=e+24|0;j=e;tc(a,c[d>>2]|0);g=+h[b+8>>3];i=+h[b+16>>3];h[j>>3]=+h[b>>3];h[j+8>>3]=g;h[j+16>>3]=i;fC(a,67420,j);tc(a,c[d>>2]|0);i=+h[b+32>>3];g=+h[b+40>>3];h[f>>3]=+h[b+24>>3];h[f+8>>3]=i;h[f+16>>3]=g;fC(a,67448,f);tc(a,c[d>>2]|0);Jc(a,c[b+48>>2]|0,c[b+52>>2]|0,d);l=e;return}function Jc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0,o=0.0;m=l;l=l+48|0;k=m+32|0;j=m+16|0;i=m+8|0;fC(a,67476,m);f=0;while(1){if((f|0)>=(b|0))break;if((f|0)>0)fC(a,97973,i);o=+g[d+(f<<3)>>2];n=Bc(c[d+(f<<3)+4>>2]|0,e)|0;h[j>>3]=o;c[j+8>>2]=n;fC(a,67487,j);f=f+1|0}fC(a,67518,k);l=m;return}function Kc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;f=g;e=nb[c[a>>2]&63](a,b,512)|0;if(e){if((c[e+12>>2]|0)!=(d|0)){c[f>>2]=b;Pw(0,67664,f)|0}}else{f=E_(1,16)|0;c[f+8>>2]=n1(b)|0;c[f+12>>2]=d;nb[c[a>>2]&63](a,f,1)|0}l=g;return}function Lc(a,b,d){a=a|0;b=b|0;d=d|0;D_(c[b+8>>2]|0);D_(b);return}function Mc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;g=b;f=c[a+16>>2]|0;$B(a,68519)|0;j=c[c[a+12>>2]>>2]|0;i=c[j+4>>2]|0;h=c[j+8>>2]|0;c[g>>2]=c[j>>2];c[g+4>>2]=i;c[g+8>>2]=h;fC(a,68529,g);c[e>>2]=ry(c[f+8>>2]|0)|0;fC(a,68564,e);c[d>>2]=O(c[a+168>>2]|0,c[a+164>>2]|0)|0;fC(a,68577,d);$B(a,68590)|0;$B(a,68600)|0;$B(a,68608)|0;$B(a,68616)|0;$B(a,68624)|0;$B(a,68632)|0;$B(a,68640)|0;$B(a,68644)|0;$B(a,68649)|0;l=b;return}function Nc(a){a=a|0;$B(a,68500)|0;return}function Oc(a){a=a|0;c[45940]=2;return}function Pc(a){a=a|0;c[45940]=1;return}function Qc(a){a=a|0;c[45940]=2;return}function Rc(a){a=a|0;c[45940]=0;return}function Sc(a){a=a|0;c[45940]=2;return}function Tc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0.0,j=0,k=0.0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0;p=l;l=l+80|0;o=p;m=c[(c[b+16>>2]|0)+16>>2]|0;n=c[45940]|0;f=c[e+4>>2]|0;g=+h[b+352>>3]*+h[f+16>>3];i=c[b+360>>2]|0?1.5707963267948966:0.0;j=c[e>>2]|0;k=g*.3333333333333333*+((W_(j)|0)>>>0);f=c[f+8>>2]|0;if(!f)f=-1;else f=c[f+20>>2]|0;s=a[e+48>>0]|0;r=+h[d>>3];q=+h[d+8>>3];e=bd(j)|0;c[o>>2]=4;c[o+4>>2]=s<<24>>24==108?0:s<<24>>24==114?2:1;c[o+8>>2]=m;c[o+12>>2]=n;c[o+16>>2]=0;c[o+20>>2]=f;h[o+24>>3]=g;h[o+32>>3]=i;c[o+40>>2]=6;h[o+48>>3]=g;h[o+56>>3]=k;c[o+64>>2]=~~(r+(r>=0.0?.5:-.5));c[o+68>>2]=~~(q+(q+-72.0>=0.0?-71.5:-72.5));c[o+72>>2]=e;fC(b,68445,o);l=p;return}function Uc(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n;i=n+20|0;m=e+32|0;a:do switch(c[m>>2]|0){case 5:{f=0;while(1){g=c[12724+(f<<2)>>2]|0;if((f|0)==8)break a;h=c[e>>2]|0;if((a[g>>0]|0)==(a[h>>0]|0)?(b$(g,h)|0)==0:0){k=10;break a}f=f+1|0}}case 1:{g=e+1|0;h=e+2|0;f=(ad(i,d[e>>0]|0,d[g>>0]|0,d[h>>0]|0)|0)+32|0;if(!(c[i>>2]|0))k=10;else{o=d[e>>0]|0;i=d[g>>0]|0;k=d[h>>0]|0;c[j>>2]=0;c[j+4>>2]=f;c[j+8>>2]=o;c[j+12>>2]=i;c[j+16>>2]=k;fC(b,68388,j);k=10}break}default:qa(135312,67785,163,67816)}while(0);if((k|0)==10)c[e>>2]=f;c[m>>2]=6;l=n;return}function Vc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0.0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0;e=l;l=l+112|0;f=e+8|0;u=e+104|0;t=e;k=c[a+16>>2]|0;s=~~+h[k+152>>3];r=c[k+16>>2]|0;q=c[k+56>>2]|0;p=c[45940]|0;_c(k,u,t);n=+h[b>>3];k=~~(n+(n>=0.0?.5:-.5));m=+h[b+8>>3];j=~~(m+(m>=0.0?.5:-.5));i=+h[b+16>>3];n=i-n;g=+h[b+24>>3];m=g-m;b=c[u>>2]|0;o=+h[t>>3];c[f>>2]=1;c[f+4>>2]=1;c[f+8>>2]=b;c[f+12>>2]=s;c[f+16>>2]=r;c[f+20>>2]=q;c[f+24>>2]=p;c[f+28>>2]=0;c[f+32>>2]=d|0?20:-1;h[f+40>>3]=o;c[f+48>>2]=0;h[f+56>>3]=0.0;c[f+64>>2]=k;c[f+68>>2]=j;c[f+72>>2]=~~(n+(n>=0.0?.5:-.5));c[f+76>>2]=~~(m+(m>=0.0?.5:-.5));c[f+80>>2]=k;c[f+84>>2]=j;c[f+88>>2]=~~(i+(i>=0.0?.5:-.5));c[f+92>>2]=~~(g+(g>=0.0?.5:-.5));fC(a,68323,f);l=e;return}function Wc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;f=l;l=l+96|0;g=f+8|0;o=f+80|0;p=f;q=c[a+16>>2]|0;n=~~+h[q+152>>3];m=c[q+16>>2]|0;k=c[q+56>>2]|0;j=c[45940]|0;_c(q,o,p);o=c[o>>2]|0;i=+h[p>>3];c[g>>2]=2;c[g+4>>2]=3;c[g+8>>2]=o;c[g+12>>2]=n;c[g+16>>2]=m;c[g+20>>2]=k;c[g+24>>2]=j;c[g+28>>2]=0;c[g+32>>2]=e|0?20:-1;h[g+40>>3]=i;c[g+48>>2]=0;c[g+52>>2]=0;c[g+56>>2]=0;c[g+60>>2]=0;c[g+64>>2]=0;c[g+68>>2]=d+1;fC(a,68227,g);$c(a,b,d,1);l=f;return}function Xc(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0,E=0.0,F=0;C=l;l=l+192|0;B=C+176|0;z=C+168|0;A=C+104|0;y=C+96|0;i=C+88|0;u=C+180|0;v=C+80|0;w=C+16|0;x=C;f=a+16|0;e=c[f>>2]|0;q=~~+h[e+152>>3];r=c[e+16>>2]|0;s=c[45940]|0;if((d|0)<=3)qa(67778,67785,360,67805);t=C_((d*140|0)+140|0)|0;_c(e,u,v);if(!g){o=4;j=0;k=-1}else{o=5;j=c[(c[f>>2]|0)+56>>2]|0;k=20}E=+h[b>>3];n=w+48|0;h[n>>3]=E;D=+h[b+8>>3];h[w+56>>3]=D;c[i>>2]=~~(E+(E>=0.0?.5:-.5));c[i+4>>2]=~~(D+(D>=0.0?.5:-.5));m=x+8|0;e=t+(Y0(t,80995,i)|0)|0;p=1;g=0;while(1){i=g+3|0;if((i|0)>=(d|0))break;c[w>>2]=c[n>>2];c[w+4>>2]=c[n+4>>2];c[w+8>>2]=c[n+8>>2];c[w+12>>2]=c[n+12>>2];f=1;while(1){if((f|0)==4){f=1;break}F=f+g|0;h[w+(f<<4)>>3]=+h[b+(F<<4)>>3];h[w+(f<<4)+8>>3]=+h[b+(F<<4)+8>>3];f=f+1|0}while(1){if((f|0)==7)break;XL(x,w,3,+(f|0)*.16666666666666666,0,0);D=+h[x>>3];E=+h[m>>3];c[y>>2]=~~(D+(D>=0.0?.5:-.5));c[y+4>>2]=~~(E+(E>=0.0?.5:-.5));f=f+1|0;e=e+(Y0(e,80995,y)|0)|0}p=p+6|0;g=i}f=c[u>>2]|0;E=+h[v>>3];c[A>>2]=3;c[A+4>>2]=o;c[A+8>>2]=f;c[A+12>>2]=q;c[A+16>>2]=r;c[A+20>>2]=j;c[A+24>>2]=s;c[A+28>>2]=0;c[A+32>>2]=k;h[A+40>>3]=E;c[A+48>>2]=0;c[A+52>>2]=0;c[A+56>>2]=0;c[A+60>>2]=p;fC(a,68278,A);c[z>>2]=t;fC(a,81002,z);D_(t);f=p+-1|0;e=0;while(1){if((e|0)>=(p|0))break;c[B>>2]=((e|0)%(f|0)|0|0)!=0&1;fC(a,81007,B);e=e+1|0}$B(a,150517)|0;l=C;return}function Yc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+96|0;f=e+8|0;m=e+80|0;n=e;o=c[a+16>>2]|0;k=~~+h[o+152>>3];j=c[o+16>>2]|0;i=c[45940]|0;_c(o,m,n);m=c[m>>2]|0;g=+h[n>>3];c[f>>2]=2;c[f+4>>2]=1;c[f+8>>2]=m;c[f+12>>2]=k;c[f+16>>2]=j;c[f+20>>2]=0;c[f+24>>2]=i;c[f+28>>2]=0;c[f+32>>2]=0;h[f+40>>3]=g;c[f+48>>2]=0;c[f+52>>2]=0;c[f+56>>2]=0;c[f+60>>2]=0;c[f+64>>2]=0;c[f+68>>2]=d;fC(a,68227,f);$c(a,b,d,0);l=e;return}function Zc(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;fC(a,68221,e);l=d;return}function _c(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0;switch(c[a+144>>2]|0){case 1:{e=10.0;a=1;break}case 2:{e=10.0;a=2;break}default:{e=0.0;a=0}}c[b>>2]=a;h[d>>3]=e;return}function $c(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0.0,m=0.0;j=l;l=l+16|0;i=j+8|0;g=j;f=0;while(1){if((f|0)>=(d|0))break;m=+h[b+(f<<4)>>3];k=+h[b+(f<<4)+8>>3];c[g>>2]=~~(m+(m>=0.0?.5:-.5));c[g+4>>2]=~~(k+(k>=0.0?.5:-.5));fC(a,80995,g);f=f+1|0}if(e|0){k=+h[b>>3];m=+h[b+8>>3];c[i>>2]=~~(k+(k>=0.0?.5:-.5));c[i+4>>2]=~~(m+(m>=0.0?.5:-.5));fC(a,80995,i)}$B(a,150517)|0;l=j;return}function ad(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;c[a>>2]=0;k=c[45941]|0;h=195075;g=0;i=-1;while(1){if((g|0)>=(k|0)){l=6;break}m=(b[187600+(g<<1)>>1]|0)-d|0;n=(b[188112+(g<<1)>>1]|0)-e|0;j=(b[188624+(g<<1)>>1]|0)-f|0;j=(O(n,n)|0)+(O(m,m)|0)+(O(j,j)|0)|0;if((j|0)<(h|0))if(!j)break;else{h=j;i=g}g=g+1|0}if((l|0)==6){c[45941]=k+1;if((k|0)==256)g=i;else{b[187600+(g<<1)>>1]=d;b[188112+(g<<1)>>1]=e;b[188624+(g<<1)>>1]=f;c[a>>2]=1}}return g|0}function bd(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;h=i;d=c[45942]|0;if(!d){c[45943]=64;d=C_(64)|0;c[45942]=d;e=0}else e=0;while(1){g=b+1|0;f=a[b>>0]|0;if(!(f<<24>>24))break;b=c[45943]|0;if((e|0)>(b+-8|0)){d=b<<1;c[45943]=d;d=F_(c[45942]|0,d)|0;c[45942]=d;d=d+e|0}if(f<<24>>24<=-1){a[d>>0]=92;c[h>>2]=f&255;Y0(d+1|0,81120,h)|0;b=g;d=d+4|0;e=e+4|0;continue}if(f<<24>>24==92){a[d>>0]=92;e=e+1|0;d=d+1|0}a[d>>0]=f;b=g;d=d+1|0;e=e+1|0}a[d>>0]=0;l=i;return c[45942]|0}function cd(b){b=b|0;var d=0,e=0,f=0;e=c[b+16>>2]|0;switch(c[b+64>>2]|0){case 0:{$B(b,68116)|0;d=e+208|0;e=c[d>>2]|0;if(e|0?a[e>>0]|0:0){$B(b,68130)|0;$B(b,qH(c[d>>2]|0)|0)|0;$B(b,150517)|0}break}case 1:{d=e+208|0;f=c[d>>2]|0;if(f|0?a[f>>0]|0:0){$B(b,68130)|0;$B(b,qH(c[d>>2]|0)|0)|0;$B(b,99578)|0;$B(b,qH(ry(c[e+8>>2]|0)|0)|0)|0;$B(b,150517)|0}break}case 3:{f=qH(ry(c[e+8>>2]|0)|0)|0;$B(b,68139)|0;$B(b,f)|0;$B(b,68149)|0;$B(b,f)|0;$B(b,68104)|0;break}default:{}}return}function dd(a){a=a|0;var b=0;b=c[a+16>>2]|0;switch(c[a+64>>2]|0){case 2:{fd(a,c[b+264>>2]|0,c[b+272>>2]|0,c[b+268>>2]|0,c[b+208>>2]|0,c[b+228>>2]|0,c[b+244>>2]|0,c[b+212>>2]|0);break}case 3:{fd(a,c[b+264>>2]|0,c[b+272>>2]|0,c[b+268>>2]|0,c[b+208>>2]|0,c[b+228>>2]|0,c[b+244>>2]|0,c[b+212>>2]|0);$B(a,68108)|0;break}default:{}}return}function ed(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=c[a+16>>2]|0;fd(a,c[g+264>>2]|0,c[g+272>>2]|0,c[g+268>>2]|0,b,d,e,f);return}function fd(b,d,e,f,g,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0.0;y=l;l=l+128|0;x=y+120|0;u=y+112|0;t=y+96|0;s=y+80|0;r=y+56|0;w=y+48|0;q=y+40|0;v=y+24|0;p=y;a:do if((e|0)!=0&(f|0)!=0){m=f+10|0;if((c[45944]|0)<(f|0)){c[45944]=m;o=F_(c[45945]|0,m<<3)|0;c[45945]=o}else o=c[45945]|0;m=0;while(1){if((m|0)>=(f|0))break;z=+h[e+(m<<4)>>3];c[o+(m<<3)>>2]=~~(z+(z>=0.0?.5:-.5));z=+h[e+(m<<4)+8>>3];c[o+(m<<3)+4>>2]=~~(z+(z>=0.0?.5:-.5));m=m+1|0}n=b+64|0;m=c[n>>2]|0;e=(g|0)!=0;if(e&(m|0)==0){if(!(a[g>>0]|0))break;switch(d|0){case 0:{v=c[o>>2]|0;w=c[o+12>>2]|0;x=c[o+8>>2]|0;f=c[o+4>>2]|0;c[p>>2]=g;c[p+4>>2]=v;c[p+8>>2]=w;c[p+12>>2]=x;c[p+16>>2]=f;fC(b,67850,p);break a}case 1:{w=c[o>>2]|0;x=c[o+4>>2]|0;f=(c[o+8>>2]|0)-w|0;c[v>>2]=g;c[v+4>>2]=w;c[v+8>>2]=x;c[v+12>>2]=f;fC(b,67871,v);break a}case 2:{c[q>>2]=g;fC(b,67891,q);m=0;while(1){if((m|0)>=(f|0))break;v=c[45945]|0;x=c[v+(m<<3)+4>>2]|0;c[w>>2]=c[v+(m<<3)>>2];c[w+4>>2]=x;fC(b,67899,w);m=m+1|0}$B(b,150517)|0;break a}default:qa(135312,67906,63,67926)}}if(e&(m|0)==1){if(!(a[g>>0]|0))break;if(!d){w=c[o+12>>2]|0;x=c[o+8>>2]|0;f=c[o+4>>2]|0;c[r>>2]=c[o>>2];c[r+4>>2]=w;c[r+8>>2]=x;c[r+12>>2]=f;c[r+16>>2]=g;c[r+20>>2]=i;fC(b,67943,r);break}else qa(135312,67906,75,67926)}if((m&-2|0)==2){switch(d|0){case 1:{$B(b,67976)|0;break}case 0:{$B(b,67997)|0;break}case 2:{$B(b,68016)|0;break}default:qa(135312,67906,91,67926)}if(k|0?a[k>>0]|0:0){$B(b,73496)|0;$B(b,tH(k)|0)|0;$B(b,95669)|0}if(e?a[g>>0]|0:0){$B(b,68035)|0;$B(b,tH(g)|0)|0;$B(b,95669)|0}if(j|0?a[j>>0]|0:0){$B(b,74455)|0;$B(b,qH(j)|0)|0;$B(b,95669)|0}if(i|0?a[i>>0]|0:0){$B(b,68043)|0;$B(b,qH(i)|0)|0;$B(b,95669)|0}$B(b,68052)|0;$B(b,68060)|0;b:do switch(d|0){case 1:{f=c[45945]|0;w=c[f>>2]|0;x=c[f+4>>2]|0;f=(c[f+8>>2]|0)-w|0;c[s>>2]=w;c[s+4>>2]=x;c[s+8>>2]=f;fC(b,68070,s);break}case 0:{v=c[45945]|0;w=c[v+12>>2]|0;x=c[v+8>>2]|0;f=c[v+4>>2]|0;c[t>>2]=c[v>>2];c[t+4>>2]=w;c[t+8>>2]=x;c[t+12>>2]=f;fC(b,68079,t);break}case 2:{w=c[45945]|0;m=c[w+4>>2]|0;c[u>>2]=c[w>>2];c[u+4>>2]=m;fC(b,68091,u);m=1;while(1){if((m|0)>=(f|0))break b;v=c[45945]|0;w=c[v+(m<<3)+4>>2]|0;c[x>>2]=c[v+(m<<3)>>2];c[x+4>>2]=w;fC(b,68097,x);m=m+1|0}}default:{}}while(0);if((c[n>>2]|0)==3){$B(b,73320)|0;break}else{$B(b,68104)|0;break}}}while(0);l=y;return}function gd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;g=b;f=c[a+16>>2]|0;$B(a,68519)|0;j=c[c[a+12>>2]>>2]|0;i=c[j+4>>2]|0;h=c[j+8>>2]|0;c[g>>2]=c[j>>2];c[g+4>>2]=i;c[g+8>>2]=h;fC(a,68529,g);c[e>>2]=ry(c[f+8>>2]|0)|0;fC(a,68564,e);c[d>>2]=O(c[a+168>>2]|0,c[a+164>>2]|0)|0;fC(a,68577,d);$B(a,68590)|0;$B(a,68600)|0;$B(a,68608)|0;$B(a,68616)|0;$B(a,68624)|0;$B(a,68632)|0;$B(a,68640)|0;$B(a,68644)|0;$B(a,68649)|0;l=b;return}function hd(a){a=a|0;$B(a,68500)|0;return}function id(a){a=a|0;c[45946]=2;return}function jd(a){a=a|0;c[45946]=1;return}function kd(a){a=a|0;c[45946]=2;return}function ld(a){a=a|0;c[45946]=0;return}function md(a){a=a|0;c[45946]=2;return}function nd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0,q=0;n=l;l=l+80|0;m=n;j=c[(c[b+16>>2]|0)+16>>2]|0;k=c[45946]|0;f=c[e+4>>2]|0;g=+h[b+352>>3]*+h[f+16>>3];i=c[b+360>>2]|0?1.5707963267948966:0.0;f=c[f+8>>2]|0;if(!f)f=-1;else f=c[f+20>>2]|0;q=a[e+48>>0]|0;p=+h[d>>3];o=+h[d+8>>3];e=xd(c[e>>2]|0)|0;c[m>>2]=4;c[m+4>>2]=q<<24>>24==108?0:q<<24>>24==114?2:1;c[m+8>>2]=j;c[m+12>>2]=k;c[m+16>>2]=0;c[m+20>>2]=f;h[m+24>>3]=g;h[m+32>>3]=i;c[m+40>>2]=4;h[m+48>>3]=0.0;h[m+56>>3]=0.0;c[m+64>>2]=~~(p+(p>=0.0?.5:-.5));c[m+68>>2]=~~(o+(o>=0.0?.5:-.5));c[m+72>>2]=e;fC(b,68445,m);l=n;return}function od(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n;i=n+20|0;m=e+32|0;a:do switch(c[m>>2]|0){case 5:{f=0;while(1){g=c[12724+(f<<2)>>2]|0;if((f|0)==8)break a;h=c[e>>2]|0;if((a[g>>0]|0)==(a[h>>0]|0)?(b$(g,h)|0)==0:0){k=10;break a}f=f+1|0}}case 1:{g=e+1|0;h=e+2|0;f=(wd(i,d[e>>0]|0,d[g>>0]|0,d[h>>0]|0)|0)+32|0;if(!(c[i>>2]|0))k=10;else{o=d[e>>0]|0;i=d[g>>0]|0;k=d[h>>0]|0;c[j>>2]=0;c[j+4>>2]=f;c[j+8>>2]=o;c[j+12>>2]=i;c[j+16>>2]=k;fC(b,68388,j);k=10}break}case 0:{f=0;k=10;break}default:qa(135312,68409,168,68428)}while(0);if((k|0)==10)c[e>>2]=f;c[m>>2]=6;l=n;return}function pd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0.0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0;e=l;l=l+112|0;f=e+8|0;u=e+104|0;t=e;k=c[a+16>>2]|0;s=~~+h[k+152>>3];r=c[k+16>>2]|0;q=c[k+56>>2]|0;p=c[45946]|0;ud(k,u,t);n=+h[b>>3];k=~~(n+(n>=0.0?.5:-.5));m=+h[b+8>>3];j=~~(m+(m>=0.0?.5:-.5));i=+h[b+16>>3];n=i-n;g=+h[b+24>>3];m=g-m;b=c[u>>2]|0;o=+h[t>>3];c[f>>2]=1;c[f+4>>2]=1;c[f+8>>2]=b;c[f+12>>2]=s;c[f+16>>2]=r;c[f+20>>2]=q;c[f+24>>2]=p;c[f+28>>2]=0;c[f+32>>2]=d|0?20:-1;h[f+40>>3]=o;c[f+48>>2]=0;h[f+56>>3]=0.0;c[f+64>>2]=k;c[f+68>>2]=j;c[f+72>>2]=~~(n+(n>=0.0?.5:-.5));c[f+76>>2]=~~(m+(m>=0.0?.5:-.5));c[f+80>>2]=k;c[f+84>>2]=j;c[f+88>>2]=~~(i+(i>=0.0?.5:-.5));c[f+92>>2]=~~(g+(g>=0.0?.5:-.5));fC(a,68323,f);l=e;return}function qd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;f=l;l=l+96|0;g=f+8|0;o=f+80|0;p=f;q=c[a+16>>2]|0;n=~~+h[q+152>>3];m=c[q+16>>2]|0;k=c[q+56>>2]|0;j=c[45946]|0;ud(q,o,p);o=c[o>>2]|0;i=+h[p>>3];c[g>>2]=2;c[g+4>>2]=3;c[g+8>>2]=o;c[g+12>>2]=n;c[g+16>>2]=m;c[g+20>>2]=k;c[g+24>>2]=j;c[g+28>>2]=0;c[g+32>>2]=e|0?20:-1;h[g+40>>3]=i;c[g+48>>2]=0;c[g+52>>2]=0;c[g+56>>2]=0;c[g+60>>2]=0;c[g+64>>2]=0;c[g+68>>2]=d+1;fC(a,68227,g);vd(a,b,d,1);l=f;return}function rd(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0,E=0.0,F=0;C=l;l=l+192|0;B=C+176|0;z=C+168|0;A=C+104|0;y=C+96|0;f=C+88|0;u=C+180|0;v=C+80|0;w=C+16|0;x=C;e=a+16|0;p=c[e>>2]|0;q=~~+h[p+152>>3];r=c[p+16>>2]|0;s=c[45946]|0;t=C_((d*140|0)+140|0)|0;ud(p,u,v);if(!g){o=4;j=0;k=-1}else{o=5;j=c[(c[e>>2]|0)+56>>2]|0;k=20}E=+h[b>>3];n=w+48|0;h[n>>3]=E;D=+h[b+8>>3];h[w+56>>3]=D;c[f>>2]=~~(E+(E>=0.0?.5:-.5));c[f+4>>2]=~~(D+(D>=0.0?.5:-.5));m=x+8|0;e=t+(Y0(t,80995,f)|0)|0;p=1;g=0;while(1){i=g+3|0;if((i|0)>=(d|0))break;c[w>>2]=c[n>>2];c[w+4>>2]=c[n+4>>2];c[w+8>>2]=c[n+8>>2];c[w+12>>2]=c[n+12>>2];f=1;while(1){if((f|0)==4){f=1;break}F=f+g|0;h[w+(f<<4)>>3]=+h[b+(F<<4)>>3];h[w+(f<<4)+8>>3]=+h[b+(F<<4)+8>>3];f=f+1|0}while(1){if((f|0)==7)break;XL(x,w,3,+(f|0)*.16666666666666666,0,0);D=+h[x>>3];E=+h[m>>3];c[y>>2]=~~(D+(D>=0.0?.5:-.5));c[y+4>>2]=~~(E+(E>=0.0?.5:-.5));f=f+1|0;e=e+(Y0(e,80995,y)|0)|0}p=p+6|0;g=i}f=c[u>>2]|0;E=+h[v>>3];c[A>>2]=3;c[A+4>>2]=o;c[A+8>>2]=f;c[A+12>>2]=q;c[A+16>>2]=r;c[A+20>>2]=j;c[A+24>>2]=s;c[A+28>>2]=0;c[A+32>>2]=k;h[A+40>>3]=E;c[A+48>>2]=0;c[A+52>>2]=0;c[A+56>>2]=0;c[A+60>>2]=p;fC(a,68278,A);c[z>>2]=t;fC(a,81002,z);D_(t);f=p+-1|0;e=0;while(1){if((e|0)>=(p|0))break;c[B>>2]=((e|0)%(f|0)|0|0)!=0&1;fC(a,81007,B);e=e+1|0}$B(a,150517)|0;l=C;return}function sd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+96|0;f=e+8|0;m=e+80|0;n=e;o=c[a+16>>2]|0;k=~~+h[o+152>>3];j=c[o+16>>2]|0;i=c[45946]|0;ud(o,m,n);m=c[m>>2]|0;g=+h[n>>3];c[f>>2]=2;c[f+4>>2]=1;c[f+8>>2]=m;c[f+12>>2]=k;c[f+16>>2]=j;c[f+20>>2]=0;c[f+24>>2]=i;c[f+28>>2]=0;c[f+32>>2]=0;h[f+40>>3]=g;c[f+48>>2]=0;c[f+52>>2]=0;c[f+56>>2]=0;c[f+60>>2]=0;c[f+64>>2]=0;c[f+68>>2]=d;fC(a,68227,f);vd(a,b,d,0);l=e;return}function td(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;fC(a,68221,e);l=d;return}function ud(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0;switch(c[a+144>>2]|0){case 1:{e=10.0;a=1;break}case 2:{e=10.0;a=2;break}default:{e=0.0;a=0}}c[b>>2]=a;h[d>>3]=e;return}function vd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0.0,m=0.0;j=l;l=l+16|0;i=j+8|0;g=j;f=0;while(1){if((f|0)>=(d|0))break;m=+h[b+(f<<4)>>3];k=+h[b+(f<<4)+8>>3];c[g>>2]=~~(m+(m>=0.0?.5:-.5));c[g+4>>2]=~~(k+(k>=0.0?.5:-.5));fC(a,80995,g);f=f+1|0}if(e|0){k=+h[b>>3];m=+h[b+8>>3];c[i>>2]=~~(k+(k>=0.0?.5:-.5));c[i+4>>2]=~~(m+(m>=0.0?.5:-.5));fC(a,80995,i)}$B(a,150517)|0;l=j;return}function wd(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;c[a>>2]=0;k=c[45947]|0;h=195075;g=0;i=-1;while(1){if((g|0)>=(k|0)){l=6;break}m=(b[189136+(g<<1)>>1]|0)-d|0;n=(b[189648+(g<<1)>>1]|0)-e|0;j=(b[190160+(g<<1)>>1]|0)-f|0;j=(O(n,n)|0)+(O(m,m)|0)+(O(j,j)|0)|0;if((j|0)<(h|0))if(!j)break;else{h=j;i=g}g=g+1|0}if((l|0)==6){c[45947]=k+1;if((k|0)==256)g=i;else{b[189136+(g<<1)>>1]=d;b[189648+(g<<1)>>1]=e;b[190160+(g<<1)>>1]=f;c[a>>2]=1}}return g|0}function xd(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;h=i;d=c[45948]|0;if(!d){c[45949]=64;d=C_(64)|0;c[45948]=d;e=0}else e=0;while(1){g=b+1|0;f=a[b>>0]|0;if(!(f<<24>>24))break;b=c[45949]|0;if((e|0)>(b+-8|0)){d=b<<1;c[45949]=d;d=F_(c[45948]|0,d)|0;c[45948]=d;d=d+e|0}if(f<<24>>24<=-1){a[d>>0]=92;c[h>>2]=f&255;Y0(d+1|0,81120,h)|0;b=g;d=d+4|0;e=e+4|0;continue}if(f<<24>>24==92){a[d>>0]=92;e=e+1|0;d=d+1|0}a[d>>0]=f;b=g;d=d+1|0;e=e+1|0}a[d>>0]=0;l=i;return c[45948]|0}function yd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;b=d;$B(a,73228)|0;if((c[a+64>>2]|0)==2)$B(a,73243)|0;else $B(a,150517)|0;g=c[c[a+12>>2]>>2]|0;f=c[g+4>>2]|0;e=c[g+8>>2]|0;c[b>>2]=c[g>>2];c[b+4>>2]=f;c[b+8>>2]=e;fC(a,73254,b);l=d;return}function zd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=l;l=l+32|0;f=g+8|0;e=g;$B(a,73182)|0;d=a+64|0;b=a+12|0;if((c[d>>2]|0)!=2){c[e>>2]=c[(c[b>>2]|0)+28>>2];fC(a,73193,e)}if((c[(c[b>>2]|0)+20>>2]|0)==0?(c[d>>2]|0)!=2:0){b=c[a+476>>2]|0;d=c[a+480>>2]|0;e=c[a+484>>2]|0;c[f>>2]=c[a+472>>2];c[f+4>>2]=b;c[f+8>>2]=d;c[f+12>>2]=e;fC(a,69562,f)}$B(a,73208)|0;$B(a,73221)|0;l=g;return}function Ad(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+32|0;j=k+24|0;f=k+8|0;i=k;g=c[b+16>>2]|0;a[190688]=0;e=b+12|0;h=g+8|0;if(!(c[(c[e>>2]|0)+28>>2]|0)){c[i>>2]=ry(c[h>>2]|0)|0;fC(b,69493,i);d=b+64|0;if((c[d>>2]|0)==2)$B(b,69526)|0;else $B(b,69508)|0;do if(!(c[(c[e>>2]|0)+20>>2]|0))if((c[d>>2]|0)==2){n=c[b+460>>2]|0;m=c[b+464>>2]|0;d=c[b+468>>2]|0;c[f>>2]=c[b+456>>2];c[f+4>>2]=n;c[f+8>>2]=m;c[f+12>>2]=d;fC(b,69562,f);break}else{$B(b,69538)|0;break}while(0);$B(b,69592)|0;jJ(b,c[(c[e>>2]|0)+24>>2]|0,13e3);lJ(b);d=c[(c[e>>2]|0)+20>>2]|0;if(d|0){c[i>>2]=c[d>>2];c[i+4>>2]=0;jJ(b,0,i)}}c[45950]=(a[(c[(c[h>>2]|0)+16>>2]|0)+115>>0]|0)==1?1:-1;if(!(a[190688]|0)){$B(b,69612)|0;a[190688]=1}d=c[g+208>>2]|0;if(d|0){c[j>>2]=mJ(d,c[45950]|0)|0;fC(b,69625,j)}l=k;return}function Bd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;b=l;l=l+16|0;f=b;c[f>>2]=d;c[f+4>>2]=e;fC(a,69477,f);l=b;return}function Cd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0.0,w=0.0;s=l;l=l+144|0;r=s+128|0;q=s+112|0;p=s+72|0;o=s+56|0;n=s+40|0;m=s+32|0;e=s+24|0;b=s+8|0;d=s;f=c[a+456>>2]|0;j=c[a+460>>2]|0;g=c[a+464>>2]|0;i=c[a+468>>2]|0;k=a+12|0;t=(c[(c[k>>2]|0)+28>>2]|0)+1|0;c[d>>2]=t;c[d+4>>2]=t;fC(a,69104,d);if(!(c[(c[k>>2]|0)+20>>2]|0)){c[b>>2]=f;c[b+4>>2]=j;c[b+8>>2]=g;c[b+12>>2]=i;fC(a,69121,b)}d=a+360|0;c[e>>2]=c[d>>2]|0?69155:69165;fC(a,69174,e);b=a+64|0;if((c[b>>2]|0)==1){c[m>>2]=g;c[m+4>>2]=i;fC(a,69199,m)}m=c[a+200>>2]|0;t=c[a+204>>2]|0;c[n>>2]=c[a+196>>2];c[n+4>>2]=m;c[n+8>>2]=t;fC(a,69238,n);if(!(c[(c[k>>2]|0)+20>>2]|0)){c[o>>2]=f;c[o+4>>2]=j;c[o+8>>2]=g-f;c[o+12>>2]=i-j;fC(a,69258,o)}w=+h[a+496>>3];t=c[d>>2]|0;v=+h[a+504>>3];u=+h[a+512>>3];h[p>>3]=+h[a+488>>3];h[p+8>>3]=w;c[p+16>>2]=t;h[p+24>>3]=v;h[p+32>>3]=u;fC(a,69298,p);if((c[b>>2]|0)==1){if((g|0)>14399|(i|0)>14399){t=c[(c[k>>2]|0)+16>>2]|0;c[q>>2]=g;c[q+4>>2]=i;c[q+8>>2]=14400;ub[t&63](69341,q)}c[r>>2]=f;c[r+4>>2]=j;c[r+8>>2]=g;c[r+12>>2]=i;fC(a,69436,r)}l=s;return}function Dd(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;d=e;b=a+12|0;if(c[(c[b>>2]|0)+20>>2]|0){$B(a,69028)|0;jJ(a,0,(c[(c[b>>2]|0)+20>>2]|0)+4|0)}$B(a,69045)|0;$B(a,69072)|0;c[d>>2]=c[(c[b>>2]|0)+28>>2];fC(a,69087,d);l=e;return}function Ed(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=ry(c[(c[a+16>>2]|0)+8>>2]|0)|0;fC(a,69021,d);$B(a,69014)|0;l=b;return}function Fd(a){a=a|0;$B(a,84457)|0;return}function Gd(a){a=a|0;$B(a,69014)|0;return}function Hd(a){a=a|0;$B(a,84457)|0;return}function Id(a){a=a|0;$B(a,69014)|0;return}function Jd(a){a=a|0;$B(a,84457)|0;return}function Kd(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;e=l;l=l+16|0;d=e;if(b|0?(g=(c[a+16>>2]|0)+272|0,c[g>>2]|0):0){$B(a,68910)|0;jC(a,c[g>>2]|0,2);$B(a,68921)|0;c[d>>2]=mJ(b,c[45950]|0)|0;fC(a,68925,d)}l=e;return}function Ld(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;k=m;f=c[b+16>>2]|0;if(!(+h[f+40>>3]<.5)){Sd(b,f+16|0);i=e+4|0;gC(b,+h[(c[i>>2]|0)+16>>3]);c[j>>2]=c[c[i>>2]>>2];fC(b,68869,j);i=mJ(c[e>>2]|0,c[45950]|0)|0;switch(a[e+48>>0]|0){case 114:{n=e+32|0;f=n;g=+h[n>>3];break}case 108:{f=e+32|0;g=0.0;break}default:{n=e+32|0;f=n;g=+h[n>>3]*.5}}h[d>>3]=+h[d>>3]-g;n=d+8|0;h[n>>3]=+h[n>>3]+ +h[e+24>>3];c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];iC(b,j);$B(b,68884)|0;gC(b,+h[f>>3]);c[k>>2]=i;fC(b,68893,k)}l=m;return}function Md(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];h[f+16>>3]=+h[b+16>>3]-+h[b>>3];h[f+24>>3]=+h[b+24>>3]-+h[b+8>>3];b=a+16|0;if(d|0?(e=c[b>>2]|0,+h[e+80>>3]>.5):0){Sd(a,e+56|0);jC(a,f,2);$B(a,68827)|0}if(+h[(c[b>>2]|0)+40>>3]>.5){Td(a);Sd(a,(c[b>>2]|0)+16|0);jC(a,f,2);$B(a,68847)|0}l=g;return}function Nd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0;j=l;l=l+16|0;i=j;g=a+16|0;if(e|0?(f=c[g>>2]|0,+h[f+80>>3]>.5):0){Sd(a,f+56|0);$B(a,68748)|0;c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];iC(a,i);$B(a,68757)|0;e=1;while(1){if((e|0)>=(d|0))break;f=b+(e<<4)|0;c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];iC(a,i);$B(a,68766)|0;e=e+1|0}$B(a,68793)|0}if(+h[(c[g>>2]|0)+40>>3]>.5){Td(a);Sd(a,(c[g>>2]|0)+16|0);$B(a,68748)|0;c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];iC(a,i);$B(a,68757)|0;e=1;while(1){if((e|0)>=(d|0))break;g=b+(e<<4)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];iC(a,i);$B(a,68766)|0;e=e+1|0}$B(a,68809)|0}l=j;return}function Od(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0;k=l;l=l+16|0;f=k;i=a+16|0;if(g|0?(j=c[i>>2]|0,+h[j+80>>3]>.5):0){Sd(a,j+56|0);$B(a,68748)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];iC(a,f);$B(a,68757)|0;e=1;while(1){if((e|0)>=(d|0))break;jC(a,b+(e<<4)|0,3);$B(a,68783)|0;e=e+3|0}$B(a,68793)|0}if(+h[(c[i>>2]|0)+40>>3]>.5){Td(a);Sd(a,(c[i>>2]|0)+16|0);$B(a,68748)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];iC(a,f);$B(a,68757)|0;e=1;while(1){if((e|0)>=(d|0))break;jC(a,b+(e<<4)|0,3);$B(a,68783)|0;e=e+3|0}$B(a,68775)|0}l=k;return}function Pd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0;g=l;l=l+16|0;f=g;e=a+16|0;if(+h[(c[e>>2]|0)+40>>3]>.5){Td(a);Sd(a,(c[e>>2]|0)+16|0);$B(a,68748)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];iC(a,f);$B(a,68757)|0;e=1;while(1){if((e|0)>=(d|0))break;i=b+(e<<4)|0;c[f>>2]=c[i>>2];c[f+4>>2]=c[i+4>>2];c[f+8>>2]=c[i+8>>2];c[f+12>>2]=c[i+12>>2];iC(a,f);$B(a,68766)|0;e=e+1|0}$B(a,68775)|0}l=g;return}function Qd(a,b){a=a|0;b=b|0;$B(a,68745)|0;$B(a,b)|0;$B(a,150517)|0;return}function Rd(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;g=n+16|0;m=n+8|0;k=n;i=a+16|0;if(f|0?(j=c[i>>2]|0,+h[j+80>>3]>.5):0){Sd(a,j+56|0);$B(a,84352)|0;jC(a,d,e);$B(a,99578)|0;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];iC(a,g);c[k>>2]=e;c[k+4>>2]=b;fC(a,68662,k)}if(+h[(c[i>>2]|0)+40>>3]>.5){Td(a);Sd(a,(c[i>>2]|0)+16|0);$B(a,84352)|0;jC(a,d,e);$B(a,99578)|0;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];iC(a,g);c[m>>2]=e;c[m+4>>2]=b;fC(a,68678,m)}l=n;return}function Sd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0,i=0.0;f=l;l=l+32|0;e=f;if(b|0){switch(c[(c[a+16>>2]|0)+4>>2]|0){case 1:case 0:{d=108412;break}case 2:{d=108399;break}case 3:{d=108368;break}default:d=68714}i=+h[b+8>>3];g=+h[b+16>>3];h[e>>3]=+h[b>>3];h[e+8>>3]=i;h[e+16>>3]=g;c[e+24>>2]=d;fC(a,68721,e)}l=f;return}function Td(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;k=m+8|0;j=m;g=b+16|0;i=c[g>>2]|0;d=c[i+160>>2]|0;gC(b,+h[i+152>>3]);$B(b,68695)|0;while(1){if(!d)break;i=d+4|0;f=c[d>>2]|0;if(!f)break;if(!(b$(f,108062)|0)){d=i;continue}else e=f;while(1){d=e+1|0;if(!(a[e>>0]|0))break;else e=d}a:while(1){if(!(a[d>>0]|0))break;c[j>>2]=d;fC(b,68710,j);while(1){e=d+1|0;if(!(a[d>>0]|0)){d=e;continue a}else d=e}}if(!(b$(f,131253)|0))h[(c[g>>2]|0)+152>>3]=0.0;c[k>>2]=f;fC(b,93588,k);d=i}l=m;return}function Ud(b){b=b|0;var d=0;$B(b,74734)|0;d=xx(c[(c[b>>2]|0)+168>>2]|0,74790)|0;if(d|0?a[d>>0]|0:0){$B(b,74801)|0;$B(b,d)|0;$B(b,74825)|0}$B(b,74846)|0;$B(b,74894)|0;$B(b,74948)|0;d=b+12|0;$B(b,qH(c[c[c[d>>2]>>2]>>2]|0)|0)|0;$B(b,78077)|0;$B(b,qH(c[(c[c[d>>2]>>2]|0)+4>>2]|0)|0)|0;$B(b,78087)|0;$B(b,qH(c[(c[c[d>>2]>>2]|0)+8>>2]|0)|0)|0;$B(b,75330)|0;$B(b,75354)|0;return}function Vd(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0.0,k=0.0,m=0.0;i=l;l=l+48|0;g=i+16|0;f=i+8|0;e=i;d=c[b+16>>2]|0;$B(b,74569)|0;d=d+8|0;if(a[(ry(c[d>>2]|0)|0)>>0]|0){$B(b,75293)|0;$B(b,qH(ry(c[d>>2]|0)|0)|0)|0}c[e>>2]=O(c[b+168>>2]|0,c[b+164>>2]|0)|0;fC(b,74574,e);e=c[b+452>>2]|0;c[f>>2]=c[b+448>>2];c[f+4>>2]=e;fC(b,74590,f);m=+h[b+392>>3];k=+h[b+400>>3];j=+h[b+408>>3];h[g>>3]=+h[b+384>>3];h[g+8>>3]=m;h[g+16>>3]=k;h[g+24>>3]=j;fC(b,74623,g);$B(b,74654)|0;$B(b,74690)|0;$B(b,76284)|0;l=i;return}function Wd(a){a=a|0;$B(a,74561)|0;return}function Xd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;se(a,b,0,98484,c[(c[a+16>>2]|0)+8>>2]|0);$B(a,76284)|0;return}function Yd(a){a=a|0;$B(a,74409)|0;return}function Zd(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;f=e;g=c[b+16>>2]|0;d=g+8|0;se(b,c[g+212>>2]|0,0,108412,c[d>>2]|0);$B(b,74513)|0;gC(b,+h[b+488>>3]);$B(b,99578)|0;gC(b,+h[b+496>>3]);c[f>>2]=0-(c[b+360>>2]|0);fC(b,74532,f);gC(b,+h[b+504>>3]);$B(b,99578)|0;gC(b,-+h[b+512>>3]);$B(b,74556)|0;if(a[(ry(c[d>>2]|0)|0)>>0]|0){$B(b,74465)|0;$B(b,qH(ry(c[d>>2]|0)|0)|0)|0;$B(b,74473)|0}l=e;return}function _d(a){a=a|0;$B(a,74409)|0;return}function $d(a){a=a|0;var b=0,d=0;d=c[a+16>>2]|0;b=d+8|0;se(a,c[d+212>>2]|0,0,104980,c[b>>2]|0);$B(a,76284)|0;$B(a,74465)|0;$B(a,qH(ry(c[b>>2]|0)|0)|0)|0;$B(a,74473)|0;return}function ae(a){a=a|0;$B(a,74409)|0;return}function be(a){a=a|0;var b=0,d=0,e=0;d=c[a+16>>2]|0;b=c[a+160>>2]|0;if((b|0)>1)b=c[(c[(c[a>>2]|0)+308>>2]|0)+(b<<2)>>2]|0;else b=0;e=d+8|0;se(a,c[d+212>>2]|0,b,108399,c[e>>2]|0);$B(a,76284)|0;$B(a,74465)|0;$B(a,qH(ry(c[e>>2]|0)|0)|0)|0;$B(a,74473)|0;return}function ce(a){a=a|0;$B(a,74409)|0;return}function de(a){a=a|0;var b=0,d=0;d=c[a+16>>2]|0;b=d+8|0;se(a,c[d+212>>2]|0,0,108368,c[b>>2]|0);$B(a,76284)|0;$B(a,74465)|0;b=pH(99069,c[b>>2]|0)|0;$B(a,qH(b)|0)|0;D_(b);$B(a,74473)|0;return}function ee(a){a=a|0;$B(a,74409)|0;return}function fe(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;$B(b,74415)|0;if(f|0){$B(b,74418)|0;$B(b,qH(f)|0)|0;$B(b,95669)|0}$B(b,74308)|0;$B(b,76245)|0;if(c|0?a[c>>0]|0:0){$B(b,74426)|0;$B(b,c)|0;$B(b,95669)|0}if(d|0?a[d>>0]|0:0){$B(b,74440)|0;$B(b,rH(d,1)|0)|0;$B(b,95669)|0}if(e|0?a[e>>0]|0:0){$B(b,74455)|0;$B(b,qH(e)|0)|0;$B(b,95669)|0}$B(b,76284)|0;return}function ge(a){a=a|0;$B(a,76239)|0;$B(a,74409)|0;return}function he(e,f,g){e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0,H=0,I=0,J=0,K=0,L=0,M=0;M=l;l=l+176|0;L=M+160|0;K=M+152|0;F=M+136|0;J=M+128|0;E=M+120|0;D=M+112|0;C=M+104|0;B=M+96|0;A=M+88|0;y=M+80|0;w=M+72|0;v=M+64|0;u=M+56|0;t=M+48|0;i=M+40|0;q=M+32|0;s=M+24|0;r=M+16|0;p=M+8|0;o=M;I=c[e+16>>2]|0;$B(e,73940)|0;switch(a[g+48>>0]|0){case 108:{$B(e,73946)|0;break}case 114:{$B(e,73967)|0;break}default:$B(e,73986)|0}H=f+8|0;G=+h[H>>3]+ +h[g+24>>3];h[H>>3]=G;H=I+260|0;if(!(b[H>>1]&512)){$B(e,74008)|0;gC(e,+h[f>>3]);$B(e,74013)|0;gC(e,-G);$B(e,95669)|0}x=g+4|0;f=c[x>>2]|0;n=c[f+8>>2]|0;if(n){switch(c[(c[(c[(c[e>>2]|0)+168>>2]|0)+16>>2]|0)+244>>2]|0){case 1:{m=n;f=n+16|0;i=n+8|0;break}case 2:{m=n+24|0;f=n+32|0;i=n+28|0;break}default:{m=n+4|0;f=n+16|0;i=n+8|0}}j=c[f>>2]|0;f=c[i>>2]|0;k=c[n+12>>2]|0;c[o>>2]=c[m>>2];fC(e,74019,o);i=c[n+24>>2]|0;if(i|0){c[p>>2]=i;fC(e,74036,p)}$B(e,95669)|0;if(f|0){c[r>>2]=f;fC(e,74040,r)}if(k|0){c[s>>2]=k;fC(e,74058,s)}if(!j)j=0;else{c[q>>2]=j;fC(e,74077,q)}}else{c[i>>2]=c[f>>2];fC(e,74094,i);j=0;f=0}i=c[x>>2]|0;if(i|0?(z=c[i+24>>2]|0,z&127|0):0){if(!((f|0)!=0|(z&1|0)==0))fC(e,74112,t);if(!((j|0)!=0|(z&2|0)==0))fC(e,74132,u);if(z&100|0){fC(e,74153,v);if(!(z&4))f=0;else{fC(e,102960,w);f=1}if(z&64){c[y>>2]=f|0?97973:191979;fC(e,74172,y);f=1}if(z&32|0){c[A>>2]=f|0?97973:191979;fC(e,74183,A)}fC(e,95669,B)}if(z&8|0)fC(e,74198,C);if(z&16|0)fC(e,74222,D)}h[E>>3]=+h[(c[x>>2]|0)+16>>3];fC(e,74244,E);f=I+16|0;switch(c[I+48>>2]|0){case 5:{f=c[f>>2]|0;if(O$(f,134232)|0){c[J>>2]=f;fC(e,74262,J)}break}case 1:{E=d[f+1>>0]|0;J=d[f+2>>0]|0;c[F>>2]=d[f>>0];c[F+4>>2]=E;c[F+8>>2]=J;fC(e,74273,F);break}default:qa(135312,73454,486,74295)}$B(e,74308)|0;if(b[H>>1]&512){c[K>>2]=qH(c[I+212>>2]|0)|0;fC(e,74310,K);$B(e,74359)|0;gC(e,-G);$B(e,74377)|0}$B(e,rH(c[g>>2]|0,1)|0)|0;if(b[H>>1]&512)fC(e,74380,L);$B(e,74400)|0;l=M;return}function ie(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;switch(c|0){case 2:{d=pe(a,b,2)|0;break}case 3:{d=qe(a)|0;break}default:d=0}$B(a,73904)|0;ne(a,c,d);$B(a,73913)|0;gC(a,+h[b>>3]);$B(a,73919)|0;c=b+8|0;gC(a,-+h[c>>3]);$B(a,73926)|0;gC(a,+h[b+16>>3]-+h[b>>3]);$B(a,73933)|0;gC(a,+h[b+24>>3]-+h[c>>3]);$B(a,73320)|0;return}function je(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;switch(d|0){case 2:{e=pe(a,b,c)|0;break}case 3:{e=qe(a)|0;break}default:e=0}$B(a,73895)|0;ne(a,d,e);$B(a,73310)|0;e=0;while(1){if((e|0)>=(c|0))break;gC(a,+h[b+(e<<4)>>3]);$B(a,97973)|0;gC(a,-+h[b+(e<<4)+8>>3]);$B(a,99578)|0;e=e+1|0}gC(a,+h[b>>3]);$B(a,97973)|0;gC(a,-+h[b+8>>3]);$B(a,73320)|0;return}function ke(a,d,e,f,g,h){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;g=c[a+16>>2]|0;switch(h|0){case 2:{f=pe(a,d,e)|0;break}case 3:{f=qe(a)|0;break}default:f=0}$B(a,73490)|0;if(b[g+260>>1]&512){$B(a,73496)|0;$B(a,qH(c[g+212>>2]|0)|0)|0;$B(a,73502)|0}ne(a,h,f);$B(a,73507)|0;re(a,d,e);$B(a,73320)|0;return}function le(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;$B(a,73300)|0;ne(a,0,0);$B(a,73310)|0;d=0;while(1){if((d|0)>=(c|0))break;gC(a,+h[b+(d<<4)>>3]);$B(a,97973)|0;gC(a,-+h[b+(d<<4)+8>>3]);$B(a,99578)|0;d=d+1|0}$B(a,73320)|0;return}function me(a,b){a=a|0;b=b|0;$B(a,73294)|0;$B(a,qH(b)|0)|0;$B(a,75354)|0;return}function ne(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+96|0;k=q+48|0;p=q+40|0;n=q+32|0;o=q+24|0;j=q+16|0;g=q+8|0;f=q;m=c[b+16>>2]|0;$B(b,73325)|0;a:do switch(d|0){case 2:{c[f>>2]=e;fC(b,73333,f);break}case 3:{c[g>>2]=e;fC(b,73344,g);break}case 0:{$B(b,132627)|0;break}default:{d=m+56|0;f=k;g=d;i=f+40|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(i|0));oe(b,k);if((c[m+88>>2]|0)==1){d=a[d+3>>0]|0;switch(d<<24>>24){case -1:case 0:break a;default:{}}h[j>>3]=+(d&255)*.00392156862745098;fC(b,73355,j)}}}while(0);$B(b,73374)|0;e=m+16|0;f=k;g=e;i=f+40|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(i|0));oe(b,k);d=m+152|0;if(+h[d>>3]!=1.0){$B(b,73385)|0;gC(b,+h[d>>3])}switch(c[m+144>>2]|0){case 1:{c[o>>2]=73425;fC(b,73402,o);break}case 2:{c[n>>2]=73429;fC(b,73402,n);break}default:{}}b:do if((c[m+48>>2]|0)==1){d=a[e+3>>0]|0;switch(d<<24>>24){case -1:case 0:break b;default:{}}h[p>>3]=+(d&255)*.00392156862745098;fC(b,73433,p)}while(0);$B(b,95669)|0;l=q;return}function oe(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0;g=l;l=l+16|0;f=g;a:do switch(c[e+32>>2]|0){case 5:{$B(b,c[e>>2]|0)|0;break}case 1:if(!(a[e+3>>0]|0)){$B(b,134297)|0;break a}else{i=d[e+1>>0]|0;h=d[e+2>>0]|0;c[f>>2]=d[e>>0];c[f+4>>2]=i;c[f+8>>2]=h;fC(b,75610,f);break a}default:qa(135312,73454,117,73474)}while(0);l=g;return}function pe(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+112|0;o=t+64|0;r=t+56|0;n=t+48|0;m=t+40|0;i=t+32|0;k=t;q=c[45952]|0;c[45952]=q+1;p=c[b+16>>2]|0;f=+(c[p+136>>2]|0)*.017453292519943295;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;c[k+28>>2]=0;aN(d,k,e,f,0);c[o>>2]=q;fC(b,73727,o);$B(b,73792)|0;gC(b,+h[k>>3]);$B(b,73797)|0;gC(b,+h[k+8>>3]);$B(b,73804)|0;gC(b,+h[k+16>>3]);$B(b,73811)|0;gC(b,+h[k+24>>3]);$B(b,73818)|0;k=p+140|0;f=+g[k>>2];if(f>0.0){h[i>>3]=f+-.001;fC(b,73823,i)}else $B(b,73599)|0;d=p+56|0;e=o;i=d;j=e+40|0;do{c[e>>2]=c[i>>2];e=e+4|0;i=i+4|0}while((e|0)<(j|0));oe(b,o);$B(b,73635)|0;a:do if((c[p+88>>2]|0)==1){d=a[d+3>>0]|0;switch(d<<24>>24){case -1:case 0:{s=7;break a}default:{}}h[m>>3]=+(d&255)*.00392156862745098;fC(b,96586,m)}else s=7;while(0);if((s|0)==7)$B(b,73650)|0;$B(b,73653)|0;f=+g[k>>2];if(f>0.0){h[n>>3]=f;fC(b,73823,n)}else $B(b,73659)|0;d=p+96|0;e=o;i=d;j=e+40|0;do{c[e>>2]=c[i>>2];e=e+4|0;i=i+4|0}while((e|0)<(j|0));oe(b,o);$B(b,73635)|0;b:do if((c[p+128>>2]|0)==1){d=a[d+3>>0]|0;switch(d<<24>>24){case -1:case 0:{s=14;break b}default:{}}h[r>>3]=+(d&255)*.00392156862745098;fC(b,96586,r)}else s=14;while(0);if((s|0)==14)$B(b,73650)|0;$B(b,73863)|0;l=t;return q|0}function qe(b){b=b|0;var d=0,e=0.0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+64|0;k=q+16|0;o=q+8|0;j=q;n=c[45951]|0;c[45951]=n+1;m=c[b+16>>2]|0;r=+(c[m+136>>2]|0)*.017453292519943295;e=r;if(r==0.0){f=50;d=50}else{f=~~((+E(+e)+1.0)*50.0);d=~~((1.0-+F(+e))*50.0)}c[k>>2]=n;c[k+4>>2]=f;c[k+8>>2]=d;fC(b,73515,k);$B(b,73599)|0;d=m+56|0;f=k;g=d;i=f+40|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(i|0));oe(b,k);$B(b,73635)|0;a:do if((c[m+88>>2]|0)==1){d=a[d+3>>0]|0;switch(d<<24>>24){case -1:case 0:{p=6;break a}default:{}}h[j>>3]=+(d&255)*.00392156862745098;fC(b,96586,j)}else p=6;while(0);if((p|0)==6)$B(b,73650)|0;$B(b,73653)|0;$B(b,73659)|0;d=m+96|0;f=k;g=d;i=f+40|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(i|0));oe(b,k);$B(b,73635)|0;b:do if((c[m+128>>2]|0)==1){d=a[d+3>>0]|0;switch(d<<24>>24){case -1:case 0:{p=10;break b}default:{}}h[o>>3]=+(d&255)*.00392156862745098;fC(b,96586,o)}else p=10;while(0);if((p|0)==10)$B(b,73650)|0;$B(b,73695)|0;l=q;return n|0}function re(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0;i=l;l=l+16|0;g=i;e=77;f=0;while(1){if((f|0)>=(d|0))break;c[g>>2]=e;fC(a,73512,g);gC(a,+h[b+(f<<4)>>3]);$B(a,97973)|0;gC(a,-+h[b+(f<<4)+8>>3]);e=(f|0)==0?67:32;f=f+1|0}l=i;return}function se(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;h=j;$B(b,74483)|0;$B(b,qH(d)|0)|0;if(e|0){c[h>>2]=qH(e)|0;fC(b,74491,h)}c[i>>2]=f;fC(b,74495,i);d=xx(g,74507)|0;if(d|0?a[d>>0]|0:0){$B(b,99578)|0;$B(b,qH(d)|0)|0}$B(b,95669)|0;l=j;return}function te(a){a=a|0;var b=0;$B(a,75314)|0;b=a+12|0;$B(a,De(c[c[c[b>>2]>>2]>>2]|0)|0)|0;$B(a,78077)|0;$B(a,De(c[(c[c[b>>2]>>2]|0)+4>>2]|0)|0)|0;$B(a,78087)|0;$B(a,De(c[(c[c[b>>2]>>2]|0)+8>>2]|0)|0)|0;$B(a,75330)|0;return}function ue(b){b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;e=f;d=c[b+16>>2]|0;$B(b,75291)|0;d=d+8|0;if(a[(ry(c[d>>2]|0)|0)>>0]|0){$B(b,75293)|0;$B(b,De(ry(c[d>>2]|0)|0)|0)|0}c[e>>2]=O(c[b+168>>2]|0,c[b+164>>2]|0)|0;fC(b,75302,e);c[45953]=0;l=f;return}function ve(a){a=a|0;c[45953]=1;return}function we(a){a=a|0;c[45953]=-1;return}function xe(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;i=n+8|0;m=n;f=c[b+16>>2]|0;if(c[f+144>>2]|0?(k=e+4|0,j=~~(+h[b+352>>3]*+h[(c[k>>2]|0)+16>>3]),j|0):0){Ee(b);$B(b,75230)|0;g=d+8|0;h[g>>3]=+h[g>>3]-+(j|0)*.55;c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[i+12>>2]=c[d+12>>2];iC(b,i);$B(b,75244)|0;$B(b,c[e>>2]|0)|0;$B(b,75253)|0;$B(b,75051)|0;g=i;d=f+16|0;f=g+40|0;do{c[g>>2]=c[d>>2];g=g+4|0;d=d+4|0}while((g|0)<(f|0));Fe(b,i);$B(b,75255)|0;i=c[k>>2]|0;k=c[i+8>>2]|0;k=c[((k|0)==0?i:k+4|0)>>2]|0;$B(b,95669)|0;$B(b,k)|0;$B(b,95669)|0;c[m>>2]=j;fC(b,75264,m);switch(a[e+48>>0]|0){case 108:{$B(b,75269)|0;break}case 114:{$B(b,75280)|0;break}default:{}}Ge(b);$B(b,150517)|0}l=n;return}function ye(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;f=j;g=c[a+16>>2]|0;i=g+144|0;if(c[i>>2]|0){n=+h[b>>3];m=+h[b+24>>3];e=b+8|0;k=+h[e>>3];h[b>>3]=n-+h[b+16>>3]+n;h[e>>3]=k-m+k;Ee(a);$B(a,75216)|0;jC(a,b,2);$B(a,75051)|0;do if(!d)if(!(c[45953]|0)){$B(a,94227)|0;break}else{$B(a,134116)|0;break}else{b=f;d=g+56|0;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));Fe(a,f)}while(0);if((c[45953]|0)==1)c[45953]=0;$B(a,75162)|0;gC(a,+h[g+152>>3]);$B(a,75205)|0;b=f;d=g+16|0;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));Fe(a,f);b=c[i>>2]|0;if((b|0)==1){$B(a,75059)|0;b=c[i>>2]|0}if((b|0)==2)$B(a,75068)|0;Ge(a);$B(a,150517)|0}l=j;return}function ze(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0;j=l;l=l+48|0;f=j;g=c[a+16>>2]|0;i=g+144|0;if(c[i>>2]|0){Ee(a);$B(a,75188)|0;jC(a,b,d);$B(a,75051)|0;do if(!e)if(!(c[45953]|0)){$B(a,94227)|0;break}else{$B(a,134116)|0;break}else{b=f;d=g+56|0;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));Fe(a,f)}while(0);if((c[45953]|0)==1)c[45953]=0;$B(a,75162)|0;gC(a,+h[g+152>>3]);$B(a,75205)|0;b=f;d=g+16|0;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));Fe(a,f);b=c[i>>2]|0;if((b|0)==1){$B(a,75059)|0;b=c[i>>2]|0}if((b|0)==2)$B(a,75068)|0;Ge(a);$B(a,150517)|0}l=j;return}function Ae(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0;m=l;l=l+48|0;i=m;j=c[a+16>>2]|0;k=j+144|0;if(c[k>>2]|0){Ee(a);$B(a,75037)|0;jC(a,b,d);$B(a,75051)|0;e=i;f=j+16|0;g=e+40|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));Fe(a,i);$B(a,75162)|0;gC(a,+h[j+152>>3]);e=c[k>>2]|0;if((e|0)==1){$B(a,75059)|0;e=c[k>>2]|0}if((e|0)==2)$B(a,75068)|0;$B(a,75171)|0;Ge(a);$B(a,150517)|0}l=m;return}function Be(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;g=i;e=c[a+16>>2]|0;h=e+144|0;if(c[h>>2]|0){Ee(a);$B(a,75037)|0;jC(a,b,d);$B(a,75051)|0;f=g;b=e+16|0;d=f+40|0;do{c[f>>2]=c[b>>2];f=f+4|0;b=b+4|0}while((f|0)<(d|0));Fe(a,g);b=c[h>>2]|0;if((b|0)==1){$B(a,75059)|0;b=c[h>>2]|0}if((b|0)==2)$B(a,75068)|0;Ge(a);$B(a,150517)|0}l=i;return}function Ce(a,b){a=a|0;b=b|0;$B(a,75034)|0;$B(a,De(b)|0)|0;$B(a,150517)|0;return}function De(a){a=a|0;return a|0}function Ee(b){b=b|0;if(!(a[b+144>>0]|0))$B(b,75159)|0;else $B(b,c[b+148>>2]|0)|0;return}function Fe(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0;g=l;l=l+16|0;f=g;a:do switch(c[e+32>>2]|0){case 5:{$B(b,c[e>>2]|0)|0;break}case 1:if(!(a[e+3>>0]|0)){$B(b,94227)|0;break a}else{i=d[e+1>>0]|0;h=d[e+2>>0]|0;c[f>>2]=d[e>>0];c[f+4>>2]=i;c[f+8>>2]=h;fC(b,75610,f);break a}default:qa(135312,75077,49,75141)}while(0);l=g;return}function Ge(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;f=c[a+16>>2]|0;switch(c[f+12>>2]|0){case 8:{b=1;d=108399;e=f+8|0;break}case 10:{b=0;d=108399;e=f+8|0;break}case 3:case 2:case 9:{b=1;d=108368;e=f+8|0;break}case 7:case 6:case 11:{b=0;d=108368;e=f+8|0;break}case 0:{b=1;d=108412;e=f+8|0;break}case 4:{b=0;d=75113;e=f+8|0;break}case 1:{b=1;d=108412;e=f+8|0;break}case 5:{b=0;d=108412;e=f+8|0;break}default:qa(135312,75077,106,75096)}f=c[(c[e>>2]|0)+8>>2]|0;c[g>>2]=b;c[g+4>>2]=d;c[g+8>>2]=f;fC(a,75125,g);l=h;return}function He(a){a=a|0;var b=0;$B(a,78049)|0;$B(a,78057)|0;b=a+12|0;$B(a,Se(c[c[c[b>>2]>>2]>>2]|0)|0)|0;$B(a,78077)|0;$B(a,Se(c[(c[c[b>>2]>>2]|0)+4>>2]|0)|0)|0;$B(a,78087)|0;$B(a,Se(c[(c[c[b>>2]>>2]|0)+8>>2]|0)|0)|0;$B(a,78090)|0;return}function Ie(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0;j=l;l=l+32|0;i=j+24|0;g=j+16|0;f=j+8|0;e=j;d=c[b+16>>2]|0;c[45957]=~~(+h[b+232>>3]-+h[b+216>>3]);c[45956]=~~(+h[b+224>>3]-+h[b+208>>3]);$B(b,76736)|0;$B(b,76743)|0;d=ry(c[d+8>>2]|0)|0;if(a[d>>0]|0){$B(b,76812)|0;$B(b,Se(d)|0)|0;$B(b,76820)|0}c[e>>2]=O(c[b+168>>2]|0,c[b+164>>2]|0)|0;fC(b,76829,e);$B(b,76849)|0;$B(b,76884)|0;$B(b,76912)|0;$B(b,76918)|0;$B(b,76961)|0;$B(b,77002)|0;$B(b,77021)|0;$B(b,77038)|0;$B(b,77086)|0;$B(b,77139)|0;$B(b,77215)|0;$B(b,77291)|0;$B(b,77300)|0;$B(b,77323)|0;$B(b,77350)|0;$B(b,77403)|0;$B(b,77425)|0;$B(b,77470)|0;$B(b,77482)|0;$B(b,77492)|0;$B(b,77518)|0;$B(b,77403)|0;$B(b,77570)|0;$B(b,77470)|0;$B(b,77482)|0;$B(b,77614)|0;$B(b,77323)|0;$B(b,77350)|0;$B(b,77403)|0;$B(b,77570)|0;$B(b,77470)|0;$B(b,77482)|0;$B(b,77492)|0;$B(b,77518)|0;$B(b,77403)|0;$B(b,77425)|0;$B(b,77470)|0;$B(b,77482)|0;$B(b,77627)|0;$B(b,77635)|0;$B(b,77641)|0;$B(b,77655)|0;$B(b,77663)|0;$B(b,77696)|0;e=(c[45957]|0)+10|0;c[f>>2]=c[45956];c[f+4>>2]=e;fC(b,77773,f);$B(b,77803)|0;$B(b,77812)|0;$B(b,77870)|0;$B(b,77880)|0;$B(b,77945)|0;f=c[45957]|0;c[g>>2]=c[45956];c[g+4>>2]=f;fC(b,77982,g);g=c[45957]|0;c[i>>2]=c[45956];c[i+4>>2]=g;fC(b,78010,i);l=j;return}function Je(a){a=a|0;$B(a,76287)|0;$B(a,76299)|0;$B(a,76307)|0;$B(a,76370)|0;$B(a,76299)|0;$B(a,76415)|0;$B(a,76464)|0;$B(a,76518)|0;$B(a,76299)|0;$B(a,76618)|0;$B(a,76667)|0;$B(a,76299)|0;$B(a,76719)|0;return}function Ke(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;j=l;l=l+32|0;i=j+16|0;h=j+8|0;g=j;$B(b,76245)|0;if(d|0?a[d>>0]|0:0){c[g>>2]=Se(d)|0;fC(b,76248,g)}if(e|0?a[e>>0]|0:0){c[h>>2]=Se(e)|0;fC(b,76259,h)}if(f|0?a[f>>0]|0:0){c[i>>2]=Se(f)|0;fC(b,76271,i)}$B(b,76284)|0;l=j;return}function Le(a){a=a|0;$B(a,76239)|0;return}function Me(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,i=0.0,j=0.0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0;A=l;l=l+112|0;y=A+96|0;z=A+88|0;w=A+80|0;q=A+72|0;v=A+64|0;t=A+56|0;s=A+48|0;r=A+40|0;p=A+24|0;o=A+8|0;n=A;x=c[b+16>>2]|0;switch(a[f+48>>0]|0){case 108:{j=+h[e>>3];m=+h[f+32>>3];break}case 114:{m=+h[f+32>>3];j=+h[e>>3]-m;break}default:{m=+h[f+32>>3];j=+h[e>>3]-m*.5}}g=f+40|0;i=+h[g>>3];u=f+4|0;k=+h[(c[u>>2]|0)+16>>3];if(i<k){i=k*1.1+1.0;h[g>>3]=i}B=j+-8.0;k=+((c[45957]|0)>>>0)-+h[e+8>>3]-i+k*.2+(k<12.0?1.4:2.0);fC(b,75901,n);h[o>>3]=B;h[o+8>>3]=k;fC(b,75838,o);h[p>>3]=j+8.0+m-B;h[p+8>>3]=i;fC(b,75862,p);$B(b,75936)|0;$B(b,75970)|0;g=c[u>>2]|0;e=c[g+8>>2]|0;if(e){c[r>>2]=c[e+4>>2];fC(b,76060,r);g=c[e+8>>2]|0;if(g|0){c[s>>2]=g;fC(b,76079,s)}g=c[e+12>>2]|0;if(g|0){c[t>>2]=g;fC(b,76096,t)}g=c[e+16>>2]|0;if(g|0){c[v>>2]=g;fC(b,76114,v)}}else{c[q>>2]=c[g>>2];fC(b,76060,q)}h[w>>3]=+h[(c[u>>2]|0)+16>>3];fC(b,76130,w);g=x+16|0;switch(c[x+48>>2]|0){case 5:{g=c[g>>2]|0;if(O$(g,134232)|0){c[z>>2]=g;fC(b,76150,z)}break}case 1:{x=d[g+1>>0]|0;z=d[g+2>>0]|0;c[y>>2]=d[g>>0];c[y+4>>2]=x;c[y+8>>2]=z;fC(b,76160,y);break}default:qa(135312,75624,438,76181)}$B(b,76194)|0;$B(b,Se(c[f>>2]|0)|0)|0;$B(b,76205)|0;$B(b,76228)|0;l=A;return}function Ne(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0.0,j=0,k=0.0,m=0.0;e=l;l=l+32|0;f=e+16|0;j=e;$B(a,75802)|0;m=+h[b>>3];i=+h[b+16>>3]-m;k=+h[b+24>>3];g=k-+h[b+8>>3];k=+((c[45957]|0)>>>0)-k;h[j>>3]=m-i;h[j+8>>3]=k;fC(a,75838,j);h[f>>3]=i*2.0;h[f+8>>3]=g*2.0;fC(a,75862,f);We(a,d);$B(a,75684)|0;Ue(a);$B(a,75890)|0;l=e;return}function Oe(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+48|0;k=m+24|0;j=m+8|0;g=m;$B(a,75407)|0;n=c[45957]|0;c[g>>2]=c[45956];c[g+4>>2]=n;fC(a,75660,g);We(a,e);$B(a,75684)|0;Ue(a);$B(a,75687)|0;g=d+-1|0;e=0;while(1){if((e|0)>=(d|0))break;i=+h[b+(e<<4)>>3];f=+((c[45957]|0)>>>0)-+h[b+(e<<4)+8>>3];if(!e){$B(a,75714)|0;h[j>>3]=i;h[j+8>>3]=f;fC(a,75780,j);$B(a,75791)|0}else{h[k>>3]=i;h[k+8>>3]=f;fC(a,75780,k)}if((e|0)==(g|0))$B(a,75794)|0;e=e+1|0}$B(a,75523)|0;l=m;return}function Pe(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;f=l;l=l+16|0;e=f;$B(a,75407)|0;h=c[45957]|0;c[e>>2]=c[45956];c[e+4>>2]=h;fC(a,75660,e);We(a,g);$B(a,75684)|0;Ue(a);$B(a,75687)|0;Xe(a,b,d);$B(a,75700)|0;l=f;return}function Qe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0.0;k=l;l=l+48|0;j=k+24|0;i=k+8|0;f=k;$B(a,75407)|0;g=c[45957]|0;c[f>>2]=c[45956];c[f+4>>2]=g;fC(a,75444,f);$B(a,75484)|0;f=d+-1|0;g=b+8|0;e=0;while(1){if((e|0)>=(d|0))break;if(!e){$B(a,75496)|0;m=+((c[45957]|0)>>>0)-+h[g>>3];h[i>>3]=+h[b>>3];h[i+8>>3]=m;fC(a,75500,i);$B(a,75511)|0}else{m=+((c[45957]|0)>>>0)-+h[b+(e<<4)+8>>3];h[j>>3]=+h[b+(e<<4)>>3];h[j+8>>3]=m;fC(a,75500,j)}if((e|0)==(f|0))$B(a,75515)|0;e=e+1|0}$B(a,75519)|0;Ue(a);$B(a,75523)|0;l=k;return}function Re(a,b){a=a|0;b=b|0;$B(a,75342)|0;$B(a,Se(b)|0)|0;$B(a,75354)|0;return}function Se(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+16|0;e=u;d=c[45954]|0;if(!d){c[45955]=64;d=vH(64)|0;c[45954]=d}s=e+15|0;r=e+14|0;g=0;q=0;o=0;e=0;f=0;a:while(1){n=(o|0)!=0;k=g;p=b;j=e;b:while(1){if(!p){t=32;break a}e=a[p>>0]|0;if(!(e<<24>>24)){t=32;break a}b=c[45955]|0;if((q|0)>(b+-8|0)){d=b<<1;c[45955]=d;d=xH(c[45954]|0,d)|0;c[45954]=d;d=d+q|0;e=a[p>>0]|0}switch(e<<24>>24){case 60:{e=4;b=99127;t=26;break b}case 62:{e=4;b=99110;t=27;break b}case 38:{t=10;break b}case 45:{e=5;b=99121;i=j;break b}default:{}}if(n&e<<24>>24==32){t=12;break}switch(e<<24>>24){case 34:{e=6;b=99090;t=26;break b}case 39:{e=5;b=99115;t=27;break b}default:{}}if(e<<24>>24<0){i=127;b=0}else{e=1;b=p;t=26;break}while(1){g=i&255;h=e&255;if(g>>>0>=h>>>0)break;e=i&h&255;i=g>>>1;b=b+1|0}if((b|0)<=1){g=A3(j|0,f|0,6)|0;g=s3(g|0,z|0,e&255|0,0)|0;f=z;m=k+-1|0;if((k|0)>1){b=m;e=g}else{t=21;break}}else{b=b+-1|0;e=e&255;f=0}k=b;p=p+1|0;j=e}if((t|0)==10){t=0;b=(Te(p)|0)==0;e=b?5:1;b=b?99104:p;i=j}else if((t|0)==12){t=0;b=(a[o>>0]|0)==32;e=b?6:1;b=b?99097:p;i=j}else if((t|0)==21){t=0;a[s>>0]=59;e=3;h=r;i=g;j=f;while(1){b=x3(i|0,j|0,10,0)|0;g=h+-1|0;a[h>>0]=b|48;b=i;i=w3(i|0,j|0,10,0)|0;f=j;j=z;o=e;e=e+1|0;if((o|0)>11){t=23;break a}if(!(f>>>0>0|(f|0)==0&b>>>0>9))break;else h=g}b=h+-2|0;a[g>>0]=35;a[b>>0]=38;k=m;f=j}else if((t|0)==26){t=0;i=j}else if((t|0)==27){t=0;i=j}h=d+e|0;g=e;while(1){if(!g)break;a[d>>0]=a[b>>0]|0;g=g+-1|0;b=b+1|0;d=d+1|0}g=k;b=p+1|0;q=e+q|0;o=p;d=h;e=i}if((t|0)==23){E1(75360,46,1,c[15686]|0)|0;Sa(1)}else if((t|0)==32){a[d>>0]=0;l=u;return c[45954]|0}return 0}function Te(b){b=b|0;var c=0,d=0;d=b+1|0;c=a[d>>0]|0;a:do if(c<<24>>24==35){d=b+2|0;c=a[d>>0]|0;switch(c<<24>>24){case 88:case 120:break;default:{b=d;while(1){d=b+1|0;if((c+-48&255)>=10)break a;b=d;c=a[d>>0]|0}}}d=b+3|0;while(1){c=a[d>>0]|0;if((c+-48&255)>=10)switch(c<<24>>24){case 65:case 66:case 67:case 68:case 69:case 70:case 97:case 98:case 99:case 100:case 101:case 102:break;default:break a}d=d+1|0}}else while(1){b=d+1|0;if(((c&-33)+-65&255)>=26)break a;d=b;c=a[b>>0]|0}while(0);return c<<24>>24==59|0}function Ue(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0,i=0,j=0,k=0;k=l;l=l+48|0;d=k+8|0;j=k;i=c[a+16>>2]|0;$B(a,75535)|0;e=d;f=i+16|0;g=e+40|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));Ve(a,d);b=+h[i+152>>3];if(b!=1.0){h[j>>3]=b;fC(a,75553,j)}switch(c[i+144>>2]|0){case 1:{$B(a,75570)|0;break}case 2:{$B(a,75588)|0;break}default:{}}$B(a,75605)|0;l=k;return}function Ve(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0;g=l;l=l+16|0;f=g;a:do switch(c[e+32>>2]|0){case 5:{$B(b,c[e>>2]|0)|0;break}case 1:if(!(a[e+3>>0]|0)){$B(b,132627)|0;break a}else{i=d[e+1>>0]|0;h=d[e+2>>0]|0;c[f>>2]=d[e>>0];c[f+4>>2]=i;c[f+8>>2]=h;fC(b,75610,f);break a}default:qa(135312,75624,94,75644)}while(0);l=g;return}function We(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+48|0;f=g;if(!b)$B(a,75763)|0;else{d=c[a+16>>2]|0;$B(a,75733)|0;b=f;d=d+56|0;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));Ve(a,f);$B(a,75760)|0}l=g;return}function Xe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0.0,k=0.0;i=l;l=l+32|0;g=i;e=75714;f=0;while(1){if((f|0)>=(d|0))break;k=+h[b+(f<<4)>>3];j=+((c[45957]|0)>>>0)-+h[b+(f<<4)+8>>3];c[g>>2]=e;h[g+8>>3]=k;h[g+16>>3]=j;fC(a,75717,g);e=(f|0)==0?75730:191979;f=f+1|0}$B(a,95669)|0;l=i;return}function Ye(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;$B(a,80347)|0;$B(a,80362)|0;$B(a,80401)|0;$B(a,80450)|0;c[e>>2]=134232;c[e+4>>2]=80538;fC(a,80519,e);c[d>>2]=134116;c[d+4>>2]=80544;fC(a,80519,d);l=b;return}function Ze(a){a=a|0;var b=0,d=0,e=0.0,f=0.0,g=0.0,i=0.0,j=0;b=l;l=l+64|0;d=b+8|0;j=b;c[j>>2]=ry(c[(c[a+16>>2]|0)+8>>2]|0)|0;fC(a,79300,j);i=+h[a+368>>3]*.5*+h[a+488>>3];g=+h[a+376>>3]*.5*+h[a+496>>3];f=+J(+(i*2.0000000949949026e-03))*180.0*.6366197723675814;e=+J(+(g*2.0000000949949026e-03))*180.0*.6366197723675814;h[d>>3]=i;h[d+8>>3]=g;h[d+16>>3]=-500.0;h[d+24>>3]=i;h[d+32>>3]=g;h[d+40>>3]=0.0;h[d+48>>3]=(f>e?f:e)*1.2;fC(a,79322,d);$B(a,79469)|0;$B(a,80299)|0;l=b;return}function _e(a){a=a|0;$B(a,79283)|0;return}function $e(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0;f=l;l=l+16|0;h=f;c[h>>2]=b;c[h+4>>2]=d;c[h+8>>2]=e;fC(a,79253,h);g[45958]=+(O(d,-10)|0);l=f;return}function af(a){a=a|0;$B(a,79236)|0;return}function bf(a){a=a|0;$B(a,79218)|0;return}function cf(a){a=a|0;$B(a,79202)|0;return}function df(a){a=a|0;$B(a,79181)|0;g[45958]=+g[45958]+-2.0;return}function ef(a){a=a|0;$B(a,79162)|0;return}function ff(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=ry(c[(c[a+16>>2]|0)+8>>2]|0)|0;fC(a,79140,d);l=b;return}function gf(a){a=a|0;$B(a,79124)|0;return}function hf(a){a=a|0;$B(a,79106)|0;g[45958]=+g[45958]+-5.0;return}function jf(a){a=a|0;$B(a,79090)|0;g[45958]=+g[45958]+5.0;return}function kf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0.0;r=l;l=l+144|0;o=r+104|0;q=r+56|0;m=r+32|0;j=r+24|0;n=r;p=e+4|0;i=c[p>>2]|0;f=+h[i+16>>3];i=c[i>>2]|0;c[n>>2]=c[e>>2];h[n+8>>3]=f;c[n+16>>2]=i;fC(b,78936,n);g[45959]=+g[45958]+-9.0;switch(a[e+48>>0]|0){case 108:{f=+h[d>>3];break}case 114:{i=d;f=+h[d>>3]-+h[e+32>>3];k=5;break}default:{i=d;f=+h[d>>3]-+h[e+32>>3]*.5;k=5}}if((k|0)==5)h[i>>3]=f;u=+h[b+488>>3];t=(+h[b+504>>3]+f)*u;s=(+h[b+512>>3]+ +h[d+8>>3])*+h[b+496>>3];h[j>>3]=+h[(c[p>>2]|0)+16>>3]*u;n=qf(b,78988,j)|0;f=+(c[b+360>>2]|0);h[m>>3]=0.0;h[m+8>>3]=0.0;h[m+16>>3]=f;i=qf(b,78205,m)|0;f=+g[45959];h[o>>3]=t;h[o+8>>3]=s;h[o+16>>3]=f;d=qf(b,78237,o)|0;j=o;k=(c[b+16>>2]|0)+16|0;m=j+40|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(m|0));o=rf(b,o,0.0)|0;e=c[e>>2]|0;c[q>>2]=c[c[p>>2]>>2];h[q+8>>3]=.25;h[q+16>>3]=0.0;c[q+24>>2]=e;c[q+28>>2]=79075;c[q+32>>2]=n;c[q+36>>2]=i;c[q+40>>2]=d;c[q+44>>2]=o;q=qf(b,79e3,q)|0;$B(b,q)|0;D_(q);D_(i);D_(o);D_(d);D_(n);l=r;return}function lf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,i=0.0,j=0.0,k=0.0,m=0,n=0,o=0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0;z=l;l=l+240|0;x=z+192|0;y=z+152|0;t=z+128|0;r=z+104|0;o=z+80|0;n=z+48|0;e=z+24|0;m=z;$B(a,78813)|0;g[45959]=+g[45958]+-6.0;i=+h[b>>3];j=+h[a+488>>3];p=(+h[a+504>>3]+i)*j;A=+h[b+8>>3];k=+h[a+496>>3];q=(+h[a+512>>3]+A)*k;j=(+h[b+16>>3]-i)*j;k=(+h[b+24>>3]-A)*k;s=a+16|0;A=k+j;i=+h[(c[s>>2]|0)+152>>3]/A*2.5;h[m>>3]=j;h[m+8>>3]=A*.25;h[m+16>>3]=k;b=qf(a,78173,m)|0;m=a+360|0;A=+(c[m>>2]|0);h[e>>3]=90.0;h[e+8>>3]=0.0;h[e+16>>3]=A;e=qf(a,78205,e)|0;A=+g[45959];h[x>>3]=p;h[x+8>>3]=q;h[x+16>>3]=A;f=qf(a,78237,x)|0;u=x;v=(c[s>>2]|0)+16|0;w=u+40|0;do{c[u>>2]=c[v>>2];u=u+4|0;v=v+4|0}while((u|0)<(w|0));v=rf(a,x,0.0)|0;h[n>>3]=1.0;h[n+8>>3]=i;c[n+16>>2]=b;c[n+20>>2]=e;c[n+24>>2]=f;c[n+28>>2]=v;w=qf(a,78828,n)|0;$B(a,w)|0;D_(b);D_(e);D_(f);D_(v);D_(w);if(d|0){h[o>>3]=j;h[o+8>>3]=k;h[o+16>>3]=1.0;f=qf(a,78173,o)|0;A=+(c[m>>2]|0);h[r>>3]=0.0;h[r+8>>3]=0.0;h[r+16>>3]=A;e=qf(a,78205,r)|0;A=+g[45959];h[t>>3]=p;h[t+8>>3]=q;h[t+16>>3]=A;b=qf(a,78237,t)|0;u=x;v=(c[s>>2]|0)+56|0;w=u+40|0;do{c[u>>2]=c[v>>2];u=u+4|0;v=v+4|0}while((u|0)<(w|0));x=rf(a,x,0.0)|0;h[y>>3]=0.0;h[y+8>>3]=0.0;h[y+16>>3]=0.0;c[y+24>>2]=f;c[y+28>>2]=e;c[y+32>>2]=b;c[y+36>>2]=x;y=qf(a,78874,y)|0;$B(a,y)|0;D_(f);D_(e);D_(b);D_(x);D_(y)}l=z;return}function mf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0.0,M=0,N=0.0;K=l;l=l+336|0;B=K+296|0;J=K+288|0;I=K+272|0;H=K+264|0;G=K+240|0;D=K+232|0;A=K+208|0;z=K+184|0;w=K+160|0;v=K+152|0;u=K+136|0;t=K+128|0;s=K+96|0;r=K+88|0;q=K+56|0;f=K+48|0;m=K+24|0;k=K;$B(a,78678)|0;g[45959]=+g[45958]+-2.0;o=a+488|0;p=a+496|0;L=+h[p>>3];h[k>>3]=+h[o>>3];h[k+8>>3]=L;h[k+16>>3]=1.0;k=qf(a,78173,k)|0;y=a+360|0;L=+(c[y>>2]|0);h[m>>3]=0.0;h[m+8>>3]=0.0;h[m+16>>3]=L;m=qf(a,78205,m)|0;L=+g[45959]+-2.0;h[B>>3]=0.0;h[B+8>>3]=0.0;h[B+16>>3]=L;n=qf(a,78237,B)|0;C=a+16|0;i=B;j=(c[C>>2]|0)+16|0;x=i+40|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(x|0));j=rf(a,B,0.0)|0;c[f>>2]=78300;c[f+4>>2]=d+1;E=a+504|0;F=a+512|0;i=0;f=qf(a,78269,f)|0;while(1){if((i|0)>=(d|0))break;N=+h[F>>3]+ +h[b+(i<<4)+8>>3];L=+h[(c[C>>2]|0)+152>>3];h[q>>3]=+h[E>>3]+ +h[b+(i<<4)>>3];h[q+8>>3]=N;h[q+16>>3]=0.0;h[q+24>>3]=L;M=qf(a,78314,q)|0;c[r>>2]=f;c[r+4>>2]=M;x=qf(a,78343,r)|0;D_(M);D_(f);i=i+1|0;f=x}L=+h[F>>3]+ +h[b+8>>3];N=+h[(c[C>>2]|0)+152>>3];h[s>>3]=+h[E>>3]+ +h[b>>3];h[s+8>>3]=L;h[s+16>>3]=0.0;h[s+24>>3]=N;x=qf(a,78314,s)|0;c[t>>2]=f;c[t+4>>2]=x;M=qf(a,78343,t)|0;D_(x);D_(f);c[u>>2]=k;c[u+4>>2]=m;c[u+8>>2]=n;c[u+12>>2]=j;x=qf(a,78693,u)|0;c[v>>2]=M;c[v+4>>2]=x;M=qf(a,78398,v)|0;D_(x);$B(a,M)|0;D_(k);D_(m);D_(n);D_(j);D_(M);if(e|0){N=+h[p>>3];h[w>>3]=+h[o>>3];h[w+8>>3]=N;h[w+16>>3]=1.0;n=qf(a,78173,w)|0;N=+(c[y>>2]|0);h[z>>3]=0.0;h[z+8>>3]=0.0;h[z+16>>3]=N;m=qf(a,78205,z)|0;N=+g[45959]+-2.0;h[A>>3]=0.0;h[A+8>>3]=0.0;h[A+16>>3]=N;k=qf(a,78237,A)|0;i=B;j=(c[C>>2]|0)+56|0;x=i+40|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(x|0));j=rf(a,B,.25)|0;c[D>>2]=d;i=0;f=qf(a,78738,D)|0;while(1){if((i|0)>=(d|0))break;N=+h[F>>3]+ +h[b+(i<<4)+8>>3];h[G>>3]=+h[E>>3]+ +h[b+(i<<4)>>3];h[G+8>>3]=N;h[G+16>>3]=0.0;D=qf(a,78753,G)|0;c[H>>2]=f;c[H+4>>2]=D;M=qf(a,78775,H)|0;D_(D);D_(f);i=i+1|0;f=M}c[I>>2]=n;c[I+4>>2]=m;c[I+8>>2]=k;c[I+12>>2]=j;I=qf(a,78785,I)|0;c[J>>2]=f;c[J+4>>2]=I;M=qf(a,78398,J)|0;D_(I);$B(a,M)|0;D_(n);D_(m);D_(k);D_(j);D_(M)}l=K;return}function nf(a,b,d,e,f,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.0,D=0.0;B=l;l=l+208|0;e=B+160|0;A=B+152|0;z=B+136|0;y=B+128|0;x=B+96|0;w=B+88|0;v=B+56|0;k=B+48|0;s=B+24|0;r=B;$B(a,78605)|0;g[45959]=+g[45958]+-4.0;C=+h[a+496>>3];h[r>>3]=+h[a+488>>3];h[r+8>>3]=C;h[r+16>>3]=1.0;r=qf(a,78173,r)|0;C=+(c[a+360>>2]|0);h[s>>3]=0.0;h[s+8>>3]=0.0;h[s+16>>3]=C;s=qf(a,78205,s)|0;C=+g[45959]+-2.0;h[e>>3]=0.0;h[e+8>>3]=0.0;h[e+16>>3]=C;t=qf(a,78237,e)|0;u=a+16|0;f=e;i=(c[u>>2]|0)+56|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));n=rf(a,e,0.0)|0;c[k>>2]=78619;c[k+4>>2]=d+2;o=a+504|0;p=a+512|0;q=d+-1|0;m=0;e=qf(a,78269,k)|0;while(1){if((m|0)>=(d|0))break;f=b+(m<<4)|0;i=b+(m<<4)+8|0;D=+h[p>>3]+ +h[i>>3];C=+h[(c[u>>2]|0)+152>>3];h[v>>3]=+h[o>>3]+ +h[f>>3];h[v+8>>3]=D;h[v+16>>3]=0.0;h[v+24>>3]=C;k=qf(a,78314,v)|0;c[w>>2]=e;c[w+4>>2]=k;j=qf(a,78343,w)|0;D_(k);D_(e);if((m|0)==0|(m|0)==(q|0)){C=+h[p>>3]+ +h[i>>3];D=+h[(c[u>>2]|0)+152>>3];h[x>>3]=+h[o>>3]+ +h[f>>3];h[x+8>>3]=C;h[x+16>>3]=0.0;h[x+24>>3]=D;k=qf(a,78314,x)|0;c[y>>2]=j;c[y+4>>2]=k;e=qf(a,78343,y)|0;D_(k);D_(j)}else e=j;m=m+1|0}c[z>>2]=r;c[z+4>>2]=s;c[z+8>>2]=t;c[z+12>>2]=n;b=qf(a,78628,z)|0;c[A>>2]=e;c[A+4>>2]=b;d=qf(a,78398,A)|0;D_(b);$B(a,d)|0;D_(r);D_(s);D_(t);D_(n);D_(d);l=B;return}function of(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0,y=0.0;v=l;l=l+160|0;e=v+120|0;u=v+112|0;t=v+96|0;s=v+88|0;r=v+56|0;m=v+48|0;n=v+24|0;q=v;$B(a,78157)|0;g[45959]=+g[45958]+-6.0;w=+h[a+496>>3];h[q>>3]=+h[a+488>>3];h[q+8>>3]=w;h[q+16>>3]=1.0;q=qf(a,78173,q)|0;w=+(c[a+360>>2]|0);h[n>>3]=0.0;h[n+8>>3]=0.0;h[n+16>>3]=w;n=qf(a,78205,n)|0;w=+g[45959];h[e>>3]=0.0;h[e+8>>3]=0.0;h[e+16>>3]=w;o=qf(a,78237,e)|0;p=a+16|0;f=e;i=(c[p>>2]|0)+16|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));i=rf(a,e,0.0)|0;c[m>>2]=78300;c[m+4>>2]=d;j=a+504|0;k=a+512|0;f=0;e=qf(a,78269,m)|0;while(1){if((f|0)>=(d|0))break;y=+h[k>>3]+ +h[b+(f<<4)+8>>3];w=+h[(c[p>>2]|0)+152>>3];h[r>>3]=+h[j>>3]+ +h[b+(f<<4)>>3];h[r+8>>3]=y;h[r+16>>3]=0.0;h[r+24>>3]=w;x=qf(a,78314,r)|0;c[s>>2]=e;c[s+4>>2]=x;m=qf(a,78343,s)|0;D_(x);D_(e);f=f+1|0;e=m}c[t>>2]=q;c[t+4>>2]=n;c[t+8>>2]=o;c[t+12>>2]=i;t=qf(a,78352,t)|0;c[u>>2]=e;c[u+4>>2]=t;x=qf(a,78398,u)|0;D_(t);$B(a,x)|0;D_(q);D_(n);D_(o);D_(i);D_(x);l=v;return}function pf(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;fC(a,78138,e);l=d;return}function qf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+1056|0;h=i;e=i+24|0;f=i+8|0;c[f>>2]=d;g=q0(e,1024,b,f)|0;do if((g|0)>=0)if((g|0)>1023){a=C_(g+1|0)|0;c[f>>2]=d;Z0(a,b,f)|0;break}else{a=n1(e)|0;break}else{a=c[(c[a+12>>2]|0)+16>>2]|0;c[h>>2]=c$(c[(O_()|0)>>2]|0)|0;ub[a&63](78583,h);a=n1(191979)|0}while(0);l=i;return a|0}function rf(a,b,e){a=a|0;b=b|0;e=+e;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0;q=l;l=l+112|0;o=q+104|0;j=q+96|0;i=q+64|0;n=q+48|0;p=q+32|0;m=q+16|0;k=q;g=c[b+32>>2]|0;a:do switch(g|0){case 5:{f=c[b>>2]|0;if(!(b$(f,133220)|0)){c[k>>2]=78420;h[k+8>>3]=e;f=qf(a,78403,k)|0;break a}if(!(b$(f,130350)|0)){c[m>>2]=78424;h[m+8>>3]=e;f=qf(a,78403,m)|0;break a}if(!(b$(f,128349)|0)){c[p>>2]=78430;h[p+8>>3]=e;f=qf(a,78403,p)|0;break a}else{c[n>>2]=f;h[n+8>>3]=e;f=qf(a,78403,n)|0;break a}}case 1:{s=+(d[b+1>>0]|0)*.00390625;r=+(d[b+2>>0]|0)*.00390625;h[i>>3]=+(d[b>>0]|0)*.00390625;h[i+8>>3]=s;h[i+16>>3]=r;h[i+24>>3]=e;f=qf(a,78435,i)|0;break}default:{p=c[15686]|0;n=c[b>>2]|0;c[j>>2]=g;c[j+4>>2]=n;g1(p,78474,j)|0;qa(135312,78524,436,78544)}}while(0);c[o>>2]=f;p=qf(a,78561,o)|0;D_(f);l=q;return p|0}function sf(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;g=b;f=c[a+16>>2]|0;h=c[c[a+12>>2]>>2]|0;j=c[h>>2]|0;i=c[h+4>>2]|0;h=c[h+8>>2]|0;c[g>>2]=80990;c[g+4>>2]=j;c[g+8>>2]=i;c[g+12>>2]=h;fC(a,83609,g);f=ry(c[f+8>>2]|0)|0;c[e>>2]=80990;c[e+4>>2]=f;fC(a,83641,e);c[d>>2]=80990;fC(a,83655,d);l=b;return}function tf(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=80990;fC(a,83557,d);l=b;return}function uf(a){a=a|0;var b=0.0,d=0.0,e=0.0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;W=l;l=l+304|0;V=W+296|0;U=W+288|0;T=W+272|0;R=W+264|0;Q=W+256|0;P=W+248|0;O=W+240|0;N=W+232|0;M=W+224|0;L=W+216|0;K=W+208|0;J=W+200|0;I=W+192|0;H=W+184|0;G=W+176|0;F=W+168|0;E=W+160|0;C=W+152|0;A=W+144|0;z=W+136|0;y=W+128|0;x=W+120|0;w=W+112|0;v=W+104|0;u=W+96|0;t=W+88|0;s=W+80|0;r=W+72|0;q=W+64|0;p=W+56|0;o=W+48|0;S=W+40|0;B=W+24|0;n=W+16|0;m=W;g=c[a+456>>2]|0;i=c[a+460>>2]|0;j=c[a+464>>2]|0;k=c[a+468>>2]|0;f=a+360|0;a:do if(c[4025]|0){switch(c[f>>2]|0){case 90:case 0:break a;default:{}}Gf();c[4025]=0}while(0);e=(+(k|0)-+(i|0))*.013888888888888888;b=(+(j|0)-+(g|0))*.013888888888888888;k=(c[f>>2]|0)==90;d=k?e:b;e=k?b:e;h[m>>3]=d;h[m+8>>3]=e;fC(a,81177,m);c[n>>2]=80990;fC(a,81192,n);if(d>0.0){b=+j$(d);h[18829]=b;b=b+3.0-+(~~b|0)}else b=3.0;b=+D(10.0,+b);h[18829]=b;h[B>>3]=b;h[B+8>>3]=b;fC(a,81361,B);c[S>>2]=80990;fC(a,81396,S);c[o>>2]=80990;fC(a,81454,o);c[p>>2]=80990;fC(a,81514,p);c[q>>2]=80990;fC(a,81563,q);c[r>>2]=80990;fC(a,81602,r);c[s>>2]=80990;fC(a,81653,s);c[t>>2]=80990;fC(a,81715,t);c[u>>2]=80990;fC(a,81825,u);c[v>>2]=80990;fC(a,81916,v);c[w>>2]=80990;fC(a,81970,w);c[x>>2]=80990;fC(a,82039,x);fC(a,82075,y);c[z>>2]=80990;fC(a,82200,z);c[A>>2]=80990;fC(a,82229,A);fC(a,82269,C);c[E>>2]=80990;fC(a,82362,E);c[F>>2]=80990;fC(a,82421,F);c[G>>2]=80990;fC(a,82502,G);fC(a,82572,H);c[I>>2]=80990;fC(a,82661,I);c[J>>2]=80990;fC(a,82766,J);c[K>>2]=80990;fC(a,82842,K);c[L>>2]=80990;fC(a,82881,L);c[M>>2]=80990;fC(a,82980,M);c[N>>2]=80990;fC(a,83026,N);fC(a,83115,O);c[P>>2]=80990;fC(a,83156,P);c[Q>>2]=80990;fC(a,83239,Q);c[R>>2]=80990;fC(a,83340,R);h[T>>3]=e;h[T+8>>3]=d;fC(a,83404,T);fC(a,83432,U);fC(a,83440,V);l=W;return}function vf(a){a=a|0;var b=0;b=l;l=l+16|0;fC(a,81170,b);l=b;return}function wf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0.0,j=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0;r=l;l=l+48|0;q=r+24|0;p=r+8|0;o=r;switch(a[e+48>>0]|0){case 108:{k=d;i=+h[e+32>>3];j=+h[d>>3];break}case 114:{i=+h[e+32>>3];g=i;f=5;break}default:{i=+h[e+32>>3];g=i*.5;f=5}}if((f|0)==5){j=+h[d>>3]-g;h[d>>3]=j;k=d}m=e+4|0;f=c[m>>2]|0;g=+h[f+16>>3];d=d+8|0;n=+h[d>>3]+g*.004629629629629629;h[d>>3]=n;i=j+i*.006944444444444444;h[k>>3]=i;f=c[f>>2]|0;do if(f){d=c[45960]|0;if(d|0?(b$(d,f)|0)==0:0)break;c[o>>2]=Ef(f)|0;fC(b,81069,o);o=c[m>>2]|0;c[45960]=c[o>>2];g=+h[o+16>>3]}while(0);f=~~g;f=(f|0)>1?f:1;if((f|0)!=(c[45961]|0)){j=+h[18829];c[p>>2]=f;h[p+8>>3]=j;fC(b,81077,p);c[45961]=f}c[q>>2]=Ff(c[e>>2]|0)|0;h[q+8>>3]=i;h[q+16>>3]=n;fC(b,81098,q);l=r;return}function xf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0.0,j=0.0,k=0.0;e=l;l=l+48|0;f=e;i=+h[b>>3];k=(+h[b+16>>3]-i)*.027777777777777776;g=+h[b+8>>3];j=(+h[b+24>>3]-g)*.027777777777777776;c[f>>2]=1;c[f+4>>2]=d|0?81011:191979;h[f+8>>3]=k;h[f+16>>3]=j;h[f+24>>3]=i*.013888888888888888;h[f+32>>3]=g*.013888888888888888;fC(a,81017,f);l=e;return}function yf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;e=l;l=l+16|0;Cf(c[a+16>>2]|0,e+8|0,e);Df(a,b,d,1);l=e;return}function zf(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0.0,w=0;t=l;l=l+128|0;s=t+112|0;q=t+104|0;p=t+96|0;e=t+88|0;n=t+16|0;o=t;k=c[a+16>>2]|0;j=C_((d*140|0)+140|0)|0;Cf(k,t+116|0,t+80|0);v=+h[b>>3];k=n+48|0;h[k>>3]=v;u=+h[b+8>>3];h[n+56>>3]=u;c[e>>2]=~~(v+(v>=0.0?.5:-.5));c[e+4>>2]=~~(u+(u>=0.0?.5:-.5));i=o+8|0;e=j+(Y0(j,80995,e)|0)|0;r=1;g=0;while(1){m=g+3|0;if((m|0)>=(d|0))break;c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[n+8>>2]=c[k+8>>2];c[n+12>>2]=c[k+12>>2];f=1;while(1){if((f|0)==4){f=1;break}w=f+g|0;h[n+(f<<4)>>3]=+h[b+(w<<4)>>3];h[n+(f<<4)+8>>3]=+h[b+(w<<4)+8>>3];f=f+1|0}while(1){if((f|0)==7)break;XL(o,n,3,+(f|0)*.16666666666666666,0,0);u=+h[o>>3];v=+h[i>>3];c[p>>2]=~~(u+(u>=0.0?.5:-.5));c[p+4>>2]=~~(v+(v>=0.0?.5:-.5));f=f+1|0;e=e+(Y0(e,80995,p)|0)|0}r=r+6|0;g=m}c[q>>2]=j;fC(a,81002,q);D_(j);f=r+-1|0;e=0;while(1){if((e|0)>=(r|0))break;c[s>>2]=((e|0)%(f|0)|0|0)!=0&1;fC(a,81007,s);e=e+1|0}$B(a,150517)|0;l=t;return}function Af(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=l;l=l+16|0;Cf(c[a+16>>2]|0,e+8|0,e);Df(a,b,d,0);l=e;return}function Bf(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=80990;c[e+4>>2]=b;fC(a,80983,e);l=d;return}function Cf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0;switch(c[a+144>>2]|0){case 1:{e=10.0;a=1;break}case 2:{e=10.0;a=2;break}default:{e=0.0;a=0}}c[b>>2]=a;h[d>>3]=e;return}function Df(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0.0,m=0.0;j=l;l=l+16|0;i=j+8|0;g=j;f=0;while(1){if((f|0)>=(d|0))break;m=+h[b+(f<<4)>>3];k=+h[b+(f<<4)+8>>3];c[g>>2]=~~(m+(m>=0.0?.5:-.5));c[g+4>>2]=~~(k+(k>=0.0?.5:-.5));fC(a,80995,g);f=f+1|0}if(e|0){k=+h[b>>3];m=+h[b+8>>3];c[i>>2]=~~(k+(k>=0.0?.5:-.5));c[i+4>>2]=~~(m+(m>=0.0?.5:-.5));fC(a,80995,i)}$B(a,150517)|0;l=j;return}function Ef(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;f=h;a:while(1){d=15828;while(1){e=c[d+4>>2]|0;if(!e)break;if(!(b$(e,b)|0)){g=6;break a}d=d+8|0}c[f>>2]=81151;c[f+4>>2]=b;Pw(1,81125,f)|0;d=o1(b,45)|0;if(!d){d=81168;break}a[d>>0]=0}l=h;return d|0}function Ff(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;h=i;d=c[45962]|0;if(!d){c[45963]=64;d=C_(64)|0;c[45962]=d;e=0}else e=0;while(1){g=b+1|0;f=a[b>>0]|0;if(!(f<<24>>24))break;b=c[45963]|0;if((e|0)>(b+-8|0)){d=b<<1;c[45963]=d;d=F_(c[45962]|0,d)|0;c[45962]=d;d=d+e|0}if(f<<24>>24<=-1){a[d>>0]=92;c[h>>2]=f&255;Y0(d+1|0,81120,h)|0;b=g;d=d+4|0;e=e+4|0;continue}if(f<<24>>24==92){a[d>>0]=92;e=e+1|0;d=d+1|0}a[d>>0]=f;b=g;d=d+1|0;e=e+1|0}a[d>>0]=0;l=i;return c[45962]|0}function Gf(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=81151;c[b+4>>2]=83548;Pw(0,83530,b)|0;l=a;return}function Hf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0.0,j=0,k=0;e=l;l=l+32|0;f=e+8|0;j=e;b=b+8|0;k=c[b>>2]|0;c[j>>2]=k;c[j+4>>2]=k;fC(a,84128,j);i=(+h[d>>3]+ +h[d+16>>3])*.5;g=(+h[d+8>>3]+ +h[d+24>>3])*.5;c[f>>2]=c[b>>2];h[f+8>>3]=i;h[f+16>>3]=g;fC(a,84170,f);l=e;return}function If(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0.0,j=0.0,k=0.0;e=l;l=l+48|0;f=e;i=+h[d>>3];k=+h[d+16>>3]-i;g=+h[d+24>>3];j=g-+h[d+8>>3];g=+(~~(+h[a+232>>3]-+h[a+216>>3])>>>0)-g;c[f>>2]=c[b+8>>2];h[f+8>>3]=k;h[f+16>>3]=j;h[f+24>>3]=i;h[f+32>>3]=g;fC(a,84215,f);$B(a,84307)|0;l=e;return}function Jf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function Kf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+160|0;s=t+152|0;r=t+136|0;q=t+120|0;k=t+112|0;n=t+104|0;m=t+88|0;j=t+72|0;i=t+64|0;o=t;if(!a)qa(108200,84312,212,84331);if(!b)qa(108230,84312,213,84331);p=b+8|0;if(!(c[p>>2]|0))qa(108233,84312,214,84331);if(c[b+52>>2]|0){c[o>>2]=c[d>>2];c[o+4>>2]=c[d+4>>2];c[o+8>>2]=c[d+8>>2];c[o+12>>2]=c[d+12>>2];b=o+32|0;d=d+16|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];f=+h[o>>3];h[o+16>>3]=f;h[o+24>>3]=+h[o+40>>3];h[o+48>>3]=+h[b>>3];g=+h[o+8>>3];h[o+56>>3]=g;if(e<<24>>24){fC(a,84352,i);b=0;while(1){if((b|0)==4)break;u=+h[o+(b<<4)+8>>3];h[j>>3]=+h[o+(b<<4)>>3];h[j+8>>3]=u;fC(a,84355,j);b=b+1|0}h[m>>3]=f;h[m+8>>3]=g;fC(a,84355,m);m=c[p>>2]|0;c[n>>2]=4;c[n+4>>2]=m;fC(a,84362,n)}fC(a,84352,k);b=0;while(1){if((b|0)==4)break;u=+h[o+(b<<4)+8>>3];h[q>>3]=+h[o+(b<<4)>>3];h[q+8>>3]=u;fC(a,84355,q);b=b+1|0}h[r>>3]=f;h[r+8>>3]=g;fC(a,84355,r);r=c[p>>2]|0;c[s>>2]=4;c[s+4>>2]=r;fC(a,84377,s)}l=t;return}function Lf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+112|0;n=o+24|0;m=o+16|0;k=o;i=o+28|0;if(!b)qa(108200,84312,153,84393);if(!d)qa(108230,84312,154,84393);if(!(c[d+8>>2]|0))qa(108233,84312,155,84393);j=d+52|0;if(c[j>>2]|0){f=d+60|0;g=c[f>>2]|0;if((g|0)==98)g=18;else{tb[g&127](d);c[j>>2]=0;c[f>>2]=0;c[d+56>>2]=0;g=10}}else g=10;do if((g|0)==10){if(!((zC(d)|0)<<24>>24))break;f=j3(c[d+20>>2]|0)|0;if((c[d+24>>2]&-2|0)==6){J1(f,i)|0;i=c[i+36>>2]|0;c[d+56>>2]=i;f=U_(0,i,1,1,f,0)|0;c[j>>2]=f;a[d+16>>0]=1}else f=c[j>>2]|0;if(f|0)c[d+60>>2]=98;AC(d);if(c[j>>2]|0)g=18}while(0);if((g|0)==18){p=+h[e+8>>3]-+(c[d+36>>2]|0);h[k>>3]=+h[e>>3]-+(c[d+32>>2]|0);h[k+8>>3]=p;fC(b,84411,k);if(!(a[d+16>>0]|0)){c[m>>2]=c[d+12>>2];fC(b,84442,m)}else kJ(b,d);fC(b,84457,n)}l=o;return}function Mf(a){a=a|0;S_(c[a+52>>2]|0,c[a+56>>2]|0)|0;return}function Nf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+80|0;f=g+48|0;if(!a)qa(108200,84312,121,84467);e=c[a+16>>2]|0;if(!e)qa(96876,84312,123,84467);if(!b)qa(108230,84312,124,84467);d=b+8|0;if(!(c[d>>2]|0))qa(108233,84312,125,84467);if(!(c[e+8>>2]|0))qa(135797,84312,128,84467);else{fC(a,84487,g);fC(a,84496,g+8|0);fC(a,84523,g+16|0);fC(a,84548,g+24|0);fC(a,84577,g+32|0);fC(a,84605,g+40|0);c[f>>2]=c[d>>2];fC(a,84612,f);fC(a,84651,g+56|0);fC(a,107982,g+64|0);l=g;return}}function Of(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0.0;i=l;l=l+128|0;g=i+80|0;f=i;if(!a)qa(108200,84312,97,84656);if(!b)qa(108230,84312,98,84656);e=c[b+8>>2]|0;if(!e)qa(108233,84312,99,84656);else{m=+h[d>>3];j=~~(m+(m>=0.0?.5:-.5));m=+h[d+8>>3];b=~~(m+(m>=0.0?.5:-.5));m=+h[d+16>>3];k=~~(m+(m>=0.0?.5:-.5));m=+h[d+24>>3];d=~~(m+(m>=0.0?.5:-.5));c[f>>2]=2;c[f+4>>2]=5;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=-1;c[f+24>>2]=1;c[f+28>>2]=-1;c[f+32>>2]=0;h[f+40>>3]=0.0;c[f+48>>2]=0;c[f+52>>2]=0;c[f+56>>2]=0;c[f+60>>2]=0;c[f+64>>2]=0;c[f+68>>2]=5;c[f+72>>2]=0;c[f+76>>2]=e;fC(a,84675,f);c[g>>2]=j;c[g+4>>2]=b;c[g+8>>2]=j;c[g+12>>2]=d;c[g+16>>2]=k;c[g+20>>2]=d;c[g+24>>2]=k;c[g+28>>2]=b;c[g+32>>2]=j;c[g+36>>2]=b;fC(a,84733,g);l=i;return}}function Pf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0.0,j=0.0,k=0,m=0,n=0,o=0;o=l;l=l+96|0;n=o+56|0;m=o+32|0;k=o;i=+h[d>>3];j=+h[d+16>>3]-i;f=+h[d+24>>3];g=f-+h[d+8>>3];if(!a)qa(108200,84312,53,84765);if(!b)qa(108230,84312,54,84765);e=b+8|0;if(!(c[e>>2]|0))qa(108233,84312,55,84765);$B(a,84784)|0;$B(a,c[e>>2]|0)|0;e=a+360|0;f=-f;if(!(c[e>>2]|0)){h[n>>3]=j;h[n+8>>3]=g;h[n+16>>3]=i;h[n+24>>3]=f;fC(a,84913,n)}else{h[k>>3]=g;h[k+8>>3]=j;h[k+16>>3]=i;h[k+24>>3]=f;fC(a,84804,k);c[m>>2]=c[e>>2];h[m+8>>3]=i;h[m+16>>3]=f;fC(a,84883,m)}$B(a,84992)|0;l=o;return}function Qf(a){a=a|0;var b=0,c=0;b=Sy(a)|0;while(1){if(!b)break;Rf(b);b=Ty(a,b)|0}c=Sy(a)|0;while(1){if(!c)break;b=Ex(a,c)|0;while(1){if(!b)break;Sf(b);b=Gx(a,b)|0}c=Ty(a,c)|0}return}function Rf(a){a=a|0;var b=0,d=0;Az(a,134365,304,1)|0;dM(a);bN(a,c[(c[(ez(a)|0)+16>>2]|0)+116>>2]&1);a=a+16|0;c[(c[a>>2]|0)+176>>2]=0;b=uH(20)|0;d=c[a>>2]|0;c[d+172>>2]=b;c[d+184>>2]=0;d=uH(20)|0;b=c[a>>2]|0;c[b+180>>2]=d;c[b+200>>2]=0;b=uH(12)|0;d=c[a>>2]|0;c[d+196>>2]=b;c[d+192>>2]=0;d=uH(12)|0;b=c[a>>2]|0;c[b+188>>2]=d;c[b+208>>2]=0;b=uH(12)|0;a=c[a>>2]|0;c[a+204>>2]=b;c[a+216>>2]=1;return}function Sf(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;Az(d,134378,176,1)|0;eM(d)|0;h=KL(d,c[46404]|0,1,0)|0;g=d+16|0;c[(c[g>>2]|0)+156>>2]=h;h=NL(c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0,c[46398]|0,191979)|0;i=NL(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0,c[46398]|0,191979)|0;e=c[g>>2]|0;f=e+154|0;b[f>>1]=1;b[e+168>>1]=1;if((h|0)==(i|0)&(a[h>>0]|0)!=0){b[f>>1]=1e3;i=e+156|0;c[i>>2]=(c[i>>2]|0)*100}if(Ok(d)|0){i=c[g>>2]|0;b[i+154>>1]=0;c[i+156>>2]=0}i=(KL(d,c[46417]|0,0,0)|0)&255;a[(c[g>>2]|0)+152>>0]=i;i=(KL(d,c[46405]|0,1,0)|0)&65535;b[(c[g>>2]|0)+170>>1]=i;return}function Tf(a){a=a|0;var b=0,d=0;Uf(c[(c[a+16>>2]|0)+192>>2]|0);d=Sy(a)|0;while(1){if(!d)break;b=Ex(a,d)|0;while(1){if(!b)break;JM(b);b=Gx(a,b)|0}Vf(d);d=Ty(a,d)|0}Wf(a);return}function Uf(b){b=b|0;var d=0,e=0,f=0,g=0;while(1){if(!b)break;f=b+16|0;g=c[(c[f>>2]|0)+164>>2]|0;Xf(b);d=c[f>>2]|0;if((a[d+156>>0]|0)!=1){b=g;continue}e=c[d+180>>2]|0;if(e){D_(e);d=c[f>>2]|0}e=c[d+172>>2]|0;if(e){D_(e);d=c[f>>2]|0}D_(d);D_(b);b=g}return}function Vf(a){a=a|0;var b=0,d=0,e=0;e=a+16|0;b=c[e>>2]|0;d=c[b+172>>2]|0;if(d){D_(d);b=c[e>>2]|0}d=c[b+180>>2]|0;if(d){D_(d);b=c[e>>2]|0}d=c[b+188>>2]|0;if(d){D_(d);b=c[e>>2]|0}d=c[b+196>>2]|0;if(d){D_(d);b=c[e>>2]|0}d=c[b+204>>2]|0;if(d){D_(d);b=c[e>>2]|0}nH(c[b+104>>2]|0);nH(c[(c[e>>2]|0)+108>>2]|0);b=c[(c[e>>2]|0)+8>>2]|0;if(b|0)tb[c[(c[b+4>>2]|0)+4>>2]&127](a);Cz(a,134365)|0;return}function Wf(a){a=a|0;var d=0,e=0,f=0;d=wA(a)|0;while(1){if(!d)break;Wf(d);d=xA(d)|0}if(Az(a,134401,0,1)|0){f=a+16|0;d=c[f>>2]|0;e=c[d+184>>2]|0;if(e){D_(e);d=c[f>>2]|0}e=c[d+268>>2]|0;if(e){D_(e);d=c[f>>2]|0}e=c[d+216>>2]|0;if(e){D_(e);d=c[f>>2]|0}do if(c[d+196>>2]|0){e=b[d+236>>1]|0;while(1){if((e|0)>(b[d+238>>1]|0))break;D_(c[(c[d+196>>2]|0)+(e<<6)+12>>2]|0);e=e+1|0;d=c[f>>2]|0}e=c[d+196>>2]|0;if((b[d+236>>1]|0)==-1){D_(e+-64|0);break}else{D_(e);break}}while(0);if((fz(a)|0)!=(a|0)){nH(c[(c[f>>2]|0)+12>>2]|0);Cz(a,134401)|0}}return}function Xf(a){a=a|0;var b=0,d=0,e=0;e=a+16|0;d=c[e>>2]|0;b=c[d+176>>2]|0;while(1){a=b+-1|0;if((b|0)<=0)break;b=c[(c[d+172>>2]|0)+(a<<2)>>2]|0;kh(b);D_(c[b+16>>2]|0);D_(b);b=a;d=c[e>>2]|0}b=c[d+184>>2]|0;while(1){a=b+-1|0;if((b|0)<=0)break;b=c[(c[(c[e>>2]|0)+180>>2]|0)+(a<<2)>>2]|0;kh(b);D_(c[b+16>>2]|0);D_(b);b=a}return}function Yf(a){a=a|0;if(ay(a)|0)Zf(a);eJ(a);return}function Zf(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=l;l=l+48|0;g=h+32|0;f=h;b=YD(a,-1,8)|0;d=ZD(a,0,f)|0;XD(a,2,8,f)|0;d=(d|0)==0;e=(b|0)<0;if(e&d)_f(a);else{if(d)c[f+16>>2]=3;else b=e?8:b;c[f+8>>2]=b;c[f+20>>2]=0;e=rD(a,g,0)|0;b=c[g>>2]|0;do if((b|0)==1){_f(a);b=0}else{if(c[(c[(c[a+16>>2]|0)+8>>2]|0)+84>>2]|0){_f(a);b=0;break}c[f+12>>2]=1;d=0;while(1){if((d|0)>=(b|0))break;b=c[e+(d<<2)>>2]|0;$f(b,a);_f(b);d=d+1|0;b=c[g>>2]|0}ag(a);WD(c[g>>2]|0,e,a,f)|0;bg(a);cg(c[g>>2]|0,e,a);b=0}while(0);while(1){if((b|0)>=(c[g>>2]|0))break;f=e+(b<<2)|0;D_(c[(c[(c[f>>2]|0)+16>>2]|0)+8>>2]|0);Wf(c[f>>2]|0);dz(a,c[f>>2]|0)|0;b=b+1|0}D_(e)}l=h;return}function _f(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+48|0;k=m+40|0;e=m;i=KL(a,nx(a,0,85007,0)|0,-1,1)|0;$M(a,10);d=Nk(a,e)|0;eg(a,a);Qf(a);f=(i|0)==1;g=e+32|0;h=(i|0)==2;i=(i|0)==3;j=e+28|0;e=e+24|0;while(1){zj(a,d);if(f){d=3;break}if(c[g>>2]|0){Pw(0,85013,k)|0;c[e>>2]=0;d=0}Jh(a,(d|0)!=0&1);if(h){d=7;break}Mi(a,d);if(i){d=9;break}n=(c[j>>2]|0)+-1|0;c[j>>2]=n;if(!((n|0)!=0&(c[e>>2]|0)!=0)){d=11;break}}if((d|0)==3)fg(a,1);else if((d|0)==7)fg(a,2);else if((d|0)==9)fg(a,2);else if((d|0)==11){if(b[(c[a+16>>2]|0)+136>>1]&16)gg(a);tk(a);kg(a);if((QL(xx(a,85104)|0)|0)<<24>>24)nl(a)}l=m;return}function $f(b,d){b=b|0;d=d|0;var e=0,f=0;Az(b,134401,280,1)|0;e=uH(96)|0;b=c[b+16>>2]|0;c[b+8>>2]=e;d=c[d+16>>2]|0;f=c[d+8>>2]|0;h[e>>3]=+h[f>>3];h[e+24>>3]=+h[f+24>>3];c[b+144>>2]=c[d+144>>2];a[b+115>>0]=a[d+115>>0]|0;c[b+116>>2]=c[d+116>>2];c[b+248>>2]=c[d+248>>2];c[b+252>>2]=c[d+252>>2];c[b+244>>2]=c[d+244>>2];return}function ag(a){a=a|0;var b=0,d=0,e=0;b=uH((ay(a)|0)<<4)|0;d=Sy(a)|0;while(1){if(!d)break;e=c[d+16>>2]|0;c[e+132>>2]=b;h[b>>3]=+h[e+16>>3]*.013888888888888888;h[b+8>>3]=+h[e+24>>3]*.013888888888888888;b=b+16|0;d=Ty(a,d)|0}return}function bg(a){a=a|0;var b=0,d=0,e=0,f=0;e=c[(c[(Sy(a)|0)+16>>2]|0)+132>>2]|0;b=e;d=Sy(a)|0;while(1){if(!d)break;f=c[d+16>>2]|0;c[f+132>>2]=0;h[f+16>>3]=+h[b>>3]*72.0;h[f+24>>3]=+h[b+8>>3]*72.0;b=b+16|0;d=Ty(a,d)|0}D_(e);return}function cg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=0;f=0;while(1){if((e|0)>=(a|0))break;i=(c[(c[(c[b+(e<<2)>>2]|0)+16>>2]|0)+180>>2]|0)+f|0;e=e+1|0;f=i}i=d+16|0;c[(c[i>>2]|0)+180>>2]=f;g=uH((f<<2)+4|0)|0;c[(c[i>>2]|0)+184>>2]=g;g=0;e=1;while(1){if((g|0)>=(a|0))break;h=(c[b+(g<<2)>>2]|0)+16|0;f=1;while(1){d=c[h>>2]|0;if((f|0)>(c[d+180>>2]|0))break;d=qD(c[(c[d+184>>2]|0)+(f<<2)>>2]|0)|0;c[(c[(c[i>>2]|0)+184>>2]|0)+(e<<2)>>2]=d;dg(c[(c[(c[h>>2]|0)+184>>2]|0)+(f<<2)>>2]|0,d);f=f+1|0;e=e+1|0}g=g+1|0}return}function dg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;Az(d,134401,280,1)|0;g=d+16|0;d=(c[g>>2]|0)+16|0;f=b+16|0;b=(c[f>>2]|0)+16|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];c[d+16>>2]=c[b+16>>2];c[d+20>>2]=c[b+20>>2];c[d+24>>2]=c[b+24>>2];c[d+28>>2]=c[b+28>>2];b=c[f>>2]|0;d=c[g>>2]|0;a[d+275>>0]=a[b+275>>0]|0;d=d+48|0;b=b+48|0;e=d+64|0;do{c[d>>2]=c[b>>2];d=d+4|0;b=b+4|0}while((d|0)<(e|0));b=c[(c[f>>2]|0)+180>>2]|0;c[(c[g>>2]|0)+180>>2]=b;d=uH((b<<2)+4|0)|0;c[(c[g>>2]|0)+184>>2]=d;d=1;while(1){e=c[f>>2]|0;if((d|0)>(b|0))break;e=qD(c[(c[e+184>>2]|0)+(d<<2)>>2]|0)|0;c[(c[(c[g>>2]|0)+184>>2]|0)+(d<<2)>>2]=e;dg(c[(c[(c[f>>2]|0)+184>>2]|0)+(d<<2)>>2]|0,e);d=d+1|0}f=e+12|0;c[(c[g>>2]|0)+12>>2]=c[f>>2];c[f>>2]=0;return}function eg(a,b){a=a|0;b=b|0;if((fz(a)|0)!=(a|0))Az(a,134401,280,1)|0;if((a|0)==(b|0))c[(c[(fz(a)|0)+16>>2]|0)+188>>2]=a;a=wA(a)|0;while(1){if(!a)break;eg(a,b);a=xA(a)|0}return}function fg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+1040|0;k=m+8|0;j=m;e=m+16|0;f=nx(a,1,87076,191979)|0;g=nx(a,1,85147,191979)|0;h=(b|0)>0;d=(b|0)==1;b=Sy(a)|0;while(1){if(!b)break;if(h?(i=b+16|0,c[j>>2]=c[(c[i>>2]|0)+232>>2],Y0(e,134313,j)|0,rx(b,f,e)|0,!d):0){c[k>>2]=c[(c[i>>2]|0)+236>>2];Y0(e,134313,k)|0;rx(b,g,e)|0}b=Ty(a,b)|0}l=m;return}function gg(a){a=a|0;var b=0,c=0,d=0;c=vA(a,86580,0)|0;if(c|0){b=Sy(c)|0;while(1){if(!b)break;d=Ty(c,b)|0;sh(a,b);hg(a,b);Vf(b);cz(a,b)|0;b=d}zA(a,c)|0}return}function hg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=c[(c[b+16>>2]|0)+232>>2]|0;i=a+16|0;a=c[(c[i>>2]|0)+196>>2]|0;d=c[a+(j<<6)>>2]|0;h=a+(j<<6)+4|0;g=0;e=0;while(1){if((e|0)>=(d|0)){f=7;break}f=c[(c[h>>2]|0)+(e<<2)>>2]|0;e=e+1|0;if((f|0)==(b|0)){f=4;break}else g=f}if((f|0)==4){while(1){if((e|0)>=(d|0))break;f=c[a+(j<<6)+4>>2]|0;c[f+(e+-1<<2)>>2]=c[f+(e<<2)>>2];f=c[(c[i>>2]|0)+196>>2]|0;e=e+1|0;d=c[f+(j<<6)>>2]|0;a=f;f=4}c[a+(j<<6)>>2]=d+-1}else if((f|0)==7?(g|0)!=(b|0):0)qa(85113,85120,248,85130);return}function ig(a){a=a|0;return c[(c[(fz(a)|0)+16>>2]|0)+188>>2]|0}function jg(b,c){b=b|0;c=c|0;var d=0;d=a[b+28>>0]|0;if(a[c+28>>0]|0)if(d<<24>>24){d=~~(+h[b>>3]-+h[c>>3]);if(!d)d=~~(+h[b+8>>3]-+h[c+8>>3])}else d=-1;else d=d<<24>>24!=0&1;return d|0}function kg(a){a=a|0;lg(a,1);return}function lg(d,e){d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0.0;Z=l;l=l+656|0;O=Z+592|0;N=Z+552|0;f=Z+544|0;T=Z+96|0;U=Z;Y=Z+632|0;V=d+16|0;X=b[(c[V>>2]|0)+136>>1]&14;P=X&65535;Q=T+16|0;c[Q>>2]=Z+368;R=U+16|0;c[R>>2]=Z+192;do if(X<<16>>16){S=X<<16>>16==4;do if(S){mg(d);if(!(a[(c[(c[d+60>>2]|0)+16>>2]|0)+113>>0]&1))A=9;else{Pw(0,85153,f)|0;A=9}}else if(X<<16>>16==8){mg(d);if(!(a[(c[(c[d+60>>2]|0)+16>>2]|0)+113>>0]&1)){cN(d,0);n=0;m=0;k=0;break}else{ng(d);cN(d,1);n=0;m=0;k=0;break}}else A=9;while(0);if((A|0)==9){ll(d);if(qJ()|0)break;W=uH(96)|0;K=c[(c[V>>2]|0)+248>>2]|0;c[Y+8>>2]=(K|0)/4|0;c[Y+12>>2]=K;k=uH(512)|0;F=Y+4|0;c[F>>2]=0;c[Y>>2]=0;j=c[V>>2]|0;C=b[j+236>>1]|0;D=0;L=0;M=k;E=k;m=k;n=k;o=k;H=0;I=0;a:while(1){if((C|0)>(b[j+238>>1]|0))break;p=c[j+196>>2]|0;i=c[p+(C<<6)>>2]|0;G=i+D|0;g=c[p+(C<<6)+4>>2]|0;f=c[g>>2]|0;if(!f)f=H;else{_=+(H|0);f=c[f+16>>2]|0;y=+h[f+16>>3]-+h[f+88>>3];f=~~(y>_?_:y)}if((i|0)!=0?(J=c[g+(i+-1<<2)>>2]|0,(J|0)!=0):0){y=+(I|0);g=c[J+16>>2]|0;_=+h[g+96>>3]+ +h[g+16>>3];g=~~(_<y?y:_)}else g=I;B=f+-16|0;z=g+16|0;x=0;t=L;r=M;q=j;u=E;v=m;g=k;f=p;while(1){if((x|0)>=(i|0))break;k=c[(c[f+(C<<6)+4>>2]|0)+(x<<2)>>2]|0;w=k+16|0;f=c[w>>2]|0;i=c[f+112>>2]|0;if(i){i=i+16|0;j=c[(c[i>>2]|0)+96>>2]|0;if(!j){A=21;break a}s=j+56|0;f=f+16|0;c[s>>2]=c[f>>2];c[s+4>>2]=c[f+4>>2];c[s+8>>2]=c[f+8>>2];c[s+12>>2]=c[f+12>>2];a[(c[(c[i>>2]|0)+96>>2]|0)+81>>0]=1;f=c[w>>2]|0}if((a[f+156>>0]|0)!=0?(kb[c[17300>>2]&63](k)|0)<<24>>24==0:0){q=t;f=r;j=u;k=v;i=o}else{s=0;q=t;j=u;k=v;A=25}b:do if((A|0)==25){while(1){A=0;p=c[w>>2]|0;i=c[(c[p+180>>2]|0)+(s<<2)>>2]|0;if(!i)break;switch(a[(c[i+16>>2]|0)+112>>0]|0){case 6:case 4:{f=q;i=r;break}default:{og(i,1,16,64);f=q+1|0;c[r+(q<<2)>>2]=i;if(!(f&127)){g=xH(g,(q<<2)+516|0)|0;i=g;j=g;k=g;n=g;o=g}else i=r}}s=s+1|0;q=f;r=i;A=25}f=c[p+188>>2]|0;c:do if(!f)i=o;else{s=0;i=o;while(1){f=c[f+(s<<2)>>2]|0;if(!f)break c;og(f,2,0,128);o=q+1|0;c[r+(q<<2)>>2]=f;if(!(o&127)){g=xH(i,(q<<2)+516|0)|0;f=g;j=g;k=g;n=g;i=g}else f=r;p=c[w>>2]|0;s=s+1|0;q=o;r=f;f=c[p+188>>2]|0}}while(0);f=c[p+204>>2]|0;if(!f)f=r;else{if(!(a[p+156>>0]|0)){v=p+96|0;_=+h[v>>3];s=p+240|0;h[v>>3]=+h[s>>3];h[s>>3]=_;s=0;p=r}else{s=0;p=r}while(1){f=c[f+(s<<2)>>2]|0;if(!f){f=p;break b}og(f,0,0,128);o=q+1|0;c[p+(q<<2)>>2]=f;if(!(o&127)){g=xH(n,(q<<2)+516|0)|0;f=g;j=g;k=g;n=g;i=g}else f=p;s=s+1|0;q=o;p=f;f=c[(c[w>>2]|0)+204>>2]|0}}}while(0);u=c[V>>2]|0;w=c[u+196>>2]|0;x=x+1|0;t=q;r=f;q=u;u=j;v=k;o=i;i=c[w+(C<<6)>>2]|0;f=w}C=C+1|0;D=G;L=t;M=r;E=u;j=q;m=v;k=g;H=B;I=z}if((A|0)==21)qa(85221,85234,313,85247);c[Y>>2]=H;c[F>>2]=I;_0(E,L,4,58);c[W+84>>2]=uH((D<<5)+11520|0)|0;c[Y+16>>2]=uH(C<<5)|0;d:do if(X<<16>>16==2){f=(c[V>>2]|0)+192|0;while(1){g=c[f>>2]|0;if(!g)break d;i=g+16|0;f=c[i>>2]|0;if((a[f+156>>0]|0)==1?(c[f+104>>2]|0)!=0:0){qg(g);f=c[i>>2]|0}f=f+164|0}}while(0);z=U+48|0;A=U+-48|0;B=T+48|0;C=T+-48|0;y=+(K|0);x=0;e:while(1){if((x|0)>=(L|0))break;v=M+(x<<2)|0;r=c[v>>2]|0;s=rg(r)|0;t=r+16|0;g=c[t>>2]|0;if(!(a[g+44>>0]|0)){g=(a[g+84>>0]|0)==0?s:r;f=g;g=c[g+16>>2]|0}else f=r;i=f+16|0;if(c[g+164>>2]&32){g=c[Q>>2]|0;F3(g|0,c[i>>2]|0,176)|0;n=T;o=f;p=n+48|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));c[Q>>2]=g;o=c[f>>2]&3;n=c[T>>2]&3;c[((n|0)==3?T:B)+40>>2]=c[((o|0)==2?f:f+-48|0)+40>>2];c[((n|0)==2?T:C)+40>>2]=c[((o|0)==3?f:f+48|0)+40>>2];n=g+16|0;o=(c[i>>2]|0)+56|0;p=n+40|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));n=g+56|0;o=(c[i>>2]|0)+16|0;p=n+40|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));a[g+112>>0]=1;c[g+116>>2]=f;f=T}q=f+16|0;w=1;f=x;while(1){u=f+1|0;if((u|0)>=(L|0))break;j=M+(u<<2)|0;f=c[j>>2]|0;if((s|0)!=(rg(f)|0))break;if(!(a[(c[t>>2]|0)+113>>0]|0)){k=f+16|0;g=c[k>>2]|0;if(!(a[g+44>>0]|0)){g=(a[g+84>>0]|0)==0?s:f;f=g;g=c[g+16>>2]|0}i=f+16|0;if(c[g+164>>2]&32){g=c[R>>2]|0;F3(g|0,c[i>>2]|0,176)|0;n=U;o=f;p=n+48|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));c[R>>2]=g;o=c[f>>2]&3;n=c[U>>2]&3;c[((n|0)==3?U:z)+40>>2]=c[((o|0)==2?f:f+-48|0)+40>>2];c[((n|0)==2?U:A)+40>>2]=c[((o|0)==3?f:f+48|0)+40>>2];n=g+16|0;o=(c[i>>2]|0)+56|0;p=n+40|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));n=g+56|0;o=(c[i>>2]|0)+16|0;p=n+40|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));a[g+112>>0]=1;c[g+116>>2]=f}i=c[q>>2]|0;f=g+16|0;n=N;o=i+16|0;p=n+40|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));n=O;o=f;p=n+40|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));if(jg(N,O)|0)break;f=g+56|0;n=N;o=i+56|0;p=n+40|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));n=O;o=f;p=n+40|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));if(jg(N,O)|0)break;K=c[t>>2]|0;if((c[K+164>>2]&15|0)==2?(c[K+96>>2]|0)!=(c[(c[k>>2]|0)+96>>2]|0):0)break;if(c[(c[(c[j>>2]|0)+16>>2]|0)+164>>2]&64|0)break}w=w+1|0;f=u}if(S){if((w|0)==1)f=O;else f=uH(w<<2)|0;c[f>>2]=rg(c[v>>2]|0)|0;g=1;while(1){if((g|0)>=(w|0))break;c[f+(g<<2)>>2]=c[v+(g<<2)>>2];g=g+1|0}AJ(d,f,w,P,17296);if((w|0)>1)D_(f);x=u;continue}f=c[r>>2]&3;K=c[((f|0)==3?r:r+48|0)+40>>2]|0;f=c[((f|0)==2?r:r+-48|0)+40>>2]|0;g=c[K+16>>2]|0;i=c[g+232>>2]|0;if((K|0)!=(f|0))if((i|0)==(c[(c[f+16>>2]|0)+232>>2]|0)){sg(d,Y,W,M,x,w,P);x=u;continue}else{tg(d,Y,W,M,x,w,P);x=u;continue}f=c[V>>2]|0;do if((i|0)==(b[f+238>>1]|0))if((i|0)>0){f=~~(+h[(c[(c[c[(c[f+196>>2]|0)+(i+-1<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]-+h[g+24>>3]);break}else{f=~~+h[g+80>>3];break}else if((i|0)==(b[f+236>>1]|0)){f=~~(+h[g+24>>3]-+h[(c[(c[c[(c[f+196>>2]|0)+(i+1<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]);break}else{f=c[f+196>>2]|0;_=+h[g+24>>3];K=~~(+h[(c[(c[c[f+(i+-1<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]-_);f=~~(_-+h[(c[(c[c[f+(i+1<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]);f=(K|0)<(f|0)?K:f;break}while(0);YK(W,M,x,w,y,+((f|0)/2|0|0),17296);f=0;while(1){if((f|0)>=(w|0)){x=u;continue e}g=c[(c[(c[M+(f+x<<2)>>2]|0)+16>>2]|0)+96>>2]|0;if(g|0)kM(d,g);f=f+1|0}}f=(c[V>>2]|0)+192|0;while(1){g=c[f>>2]|0;if(!g)break;i=g+16|0;f=c[i>>2]|0;if((a[f+156>>0]|0)==1?(c[f+104>>2]|0)!=0:0){qg(g);kM(d,c[(c[i>>2]|0)+104>>2]|0);f=c[i>>2]|0}f=f+164|0}if(!e){n=W;k=W}else{ug(d);n=W;k=W}}f:do if((c[46427]|0)!=0|(c[46428]|0)!=0?(c[46433]|0)!=0|(c[46432]|0)!=0:0){j=Sy(d)|0;while(1){if(!j)break f;g:do if(c[46427]|0){f=Hx(d,j)|0;while(1){if(!f)break g;g=f+-48|0;i=(c[f>>2]&3|0)==2?f:g;if(c[(c[i+16>>2]|0)+100>>2]|0){eL(i,1)|0;kM(d,c[(c[((c[f>>2]&3|0)==2?f:g)+16>>2]|0)+100>>2]|0)}f=Ix(d,f)|0}}while(0);h:do if(c[46428]|0){f=Ex(d,j)|0;while(1){if(!f)break h;g=f+16|0;if(c[(c[g>>2]|0)+104>>2]|0?eL(f,0)|0:0)kM(d,c[(c[g>>2]|0)+104>>2]|0);f=Gx(d,f)|0}}while(0);j=Ty(d,j)|0}}while(0);switch(X&15){case 4:case 8:break;default:{D_(m);D_(c[n+84>>2]|0);D_(k);D_(c[Y+16>>2]|0);rJ()}}c[46367]=1;c[46368]=1}while(0);l=Z;return}function mg(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=Sy(a)|0;while(1){if(!b)break;d=c[b+16>>2]|0;if(c[d+204>>2]|0){f=d+96|0;e=+h[f>>3];d=d+240|0;h[f>>3]=+h[d>>3];h[d>>3]=e}b=Ty(a,b)|0}return}function ng(b){b=b|0;var d=0,e=0,f=0,g=0;d=(c[b+16>>2]|0)+192|0;a:while(1){f=c[d>>2]|0;if(!f){d=12;break}g=f+16|0;d=c[g>>2]|0;do if((a[d+156>>0]|0)==1){e=c[d+112>>2]|0;if(!e){e=c[d+104>>2]|0;if(!e)break;qg(f);d=e}else{e=c[(c[e+16>>2]|0)+96>>2]|0;if(!e){d=6;break a}f=e+56|0;d=d+16|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];a[e+81>>0]=1;d=e}kM(b,d);d=c[g>>2]|0}while(0);d=d+164|0}if((d|0)==6)qa(85421,85234,234,85440);else if((d|0)==12)return}function og(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;do if(!d){g=c[b>>2]&3;d=c[((g|0)==3?b:b+48|0)+40>>2]|0;g=c[((g|0)==2?b:b+-48|0)+40>>2]|0;if((d|0)!=(g|0)){d=(c[(c[d+16>>2]|0)+232>>2]|0)==(c[(c[g+16>>2]|0)+232>>2]|0)?2:1;break}d=c[b+16>>2]|0;if(!(a[d+44>>0]|0))d=(a[d+84>>0]|0)==0?8:4;else d=4}while(0);a:do if(!e)switch(d|0){case 1:{e=c[b>>2]&3;e=(c[(c[(c[((e|0)==3?b:b+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)<(c[(c[(c[((e|0)==2?b:b+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)?16:32;break a}case 2:{e=c[b>>2]&3;e=(c[(c[(c[((e|0)==3?b:b+48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)<(c[(c[(c[((e|0)==2?b:b+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)?16:32;break a}default:{e=16;break a}}while(0);c[(c[b+16>>2]|0)+164>>2]=d|f|e;return}function pg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+624|0;z=D+584|0;y=D+544|0;s=D+368|0;e=D+192|0;t=D+96|0;v=D;u=t+16|0;c[u>>2]=s;w=v+16|0;c[w>>2]=e;C=c[b>>2]|0;B=c[d>>2]|0;x=C+16|0;q=c[x>>2]|0;d=c[q+164>>2]|0;f=d&15;A=B+16|0;b=c[A>>2]|0;g=c[b+164>>2]&15;do if((g|0)==(f|0)){p=rg(C)|0;r=rg(B)|0;n=c[p>>2]|0;g=n&3;f=c[(c[((g|0)==3?p:p+48|0)+40>>2]|0)+16>>2]|0;g=c[(c[((g|0)==2?p:p+-48|0)+40>>2]|0)+16>>2]|0;i=(c[f+232>>2]|0)-(c[g+232>>2]|0)|0;o=c[r>>2]|0;m=o&3;k=c[(c[((m|0)==3?r:r+48|0)+40>>2]|0)+16>>2]|0;m=c[(c[((m|0)==2?r:r+-48|0)+40>>2]|0)+16>>2]|0;j=(c[k+232>>2]|0)-(c[m+232>>2]|0)|0;i=(i|0)>-1?i:0-i|0;j=(j|0)>-1?j:0-j|0;if((i|0)!=(j|0)){b=i-j|0;break}g=~~(+h[f+16>>3]-+h[g+16>>3]);g=(g|0)>-1?g:0-g|0;f=~~(+h[k+16>>3]-+h[m+16>>3]);f=(f|0)>-1?f:0-f|0;if((g|0)!=(f|0)){b=g-f|0;break}g=n>>>4;f=o>>>4;if((g|0)!=(f|0)){b=g-f|0;break}if(!(a[q+44>>0]|0)){d=(a[q+84>>0]|0)==0?p:C;g=d;d=c[(c[d+16>>2]|0)+164>>2]|0}else g=C;f=g+16|0;if(d&32){F3(s|0,c[f>>2]|0,176)|0;i=t;j=g;k=i+48|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(k|0));c[u>>2]=s;j=c[g>>2]&3;i=c[t>>2]&3;c[((i|0)==3?t:t+48|0)+40>>2]=c[((j|0)==2?g:g+-48|0)+40>>2];c[((i|0)==2?t:t+-48|0)+40>>2]=c[((j|0)==3?g:g+48|0)+40>>2];i=s+16|0;j=(c[f>>2]|0)+56|0;k=i+40|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(k|0));i=s+56|0;j=(c[f>>2]|0)+16|0;k=i+40|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(k|0));a[s+112>>0]=1;c[s+116>>2]=g;g=t;b=c[A>>2]|0}if(!(a[b+44>>0]|0)){b=(a[b+84>>0]|0)==0?r:B;f=b;b=c[b+16>>2]|0}else f=B;d=f+16|0;if(!(c[b+164>>2]&32))e=b;else{F3(e|0,c[d>>2]|0,176)|0;i=v;j=f;k=i+48|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(k|0));c[w>>2]=e;j=c[f>>2]&3;i=c[v>>2]&3;c[((i|0)==3?v:v+48|0)+40>>2]=c[((j|0)==2?f:f+-48|0)+40>>2];c[((i|0)==2?v:v+-48|0)+40>>2]=c[((j|0)==3?f:f+48|0)+40>>2];i=e+16|0;j=(c[d>>2]|0)+56|0;k=i+40|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(k|0));i=e+56|0;j=(c[d>>2]|0)+16|0;k=i+40|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(k|0));a[e+112>>0]=1;c[e+116>>2]=f}d=c[g+16>>2]|0;b=e+16|0;i=y;j=d+16|0;k=i+40|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(k|0));i=z;j=b;k=i+40|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(k|0));b=jg(y,z)|0;if(!b){b=e+56|0;i=y;j=d+56|0;k=i+40|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(k|0));i=z;j=b;k=i+40|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(k|0));b=jg(y,z)|0;if(!b){d=c[(c[x>>2]|0)+164>>2]&192;b=c[(c[A>>2]|0)+164>>2]&192;if((d|0)==(b|0)){b=((c[C>>2]|0)>>>4)-((c[B>>2]|0)>>>4)|0;break}else{b=d-b|0;break}}}}else b=g-f|0;while(0);l=D;return b|0}function qg(b){b=b|0;var d=0,e=0,f=0,g=0.0,i=0.0;f=b+16|0;d=c[f>>2]|0;if(c[d+176>>2]|0){d=c[d+180>>2]|0;while(1){d=(c[d>>2]|0)+16|0;e=c[d>>2]|0;if(!(a[e+112>>0]|0))break;else d=e+116|0}e=c[e+96>>2]|0;g=+h[e+24>>3];i=+h[e+32>>3];e=(c[(c[(ez(b)|0)+16>>2]|0)+116>>2]&1|0)!=0;b=c[f>>2]|0;f=c[(c[d>>2]|0)+96>>2]|0;h[f+56>>3]=(e?i:g)*.5+ +h[b+16>>3];h[f+64>>3]=+h[b+24>>3];a[f+81>>0]=1}return}function rg(a){a=a|0;var b=0,d=0;while(1){b=c[a+16>>2]|0;d=c[b+172>>2]|0;if(!d)break;else a=d}while(1){b=c[b+116>>2]|0;if(!b)break;a=b;b=c[b+16>>2]|0}return a|0}function sg(b,d,e,f,g,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;var k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.0,D=0.0,E=0.0,F=0.0,G=0.0;B=l;l=l+1712|0;x=B+1664|0;s=B+1488|0;t=B+1392|0;A=B+1696|0;y=B+696|0;z=B;p=t+16|0;c[p>>2]=s;q=c[f+(g<<2)>>2]|0;r=q+16|0;k=c[r>>2]|0;u=a[k+113>>0]|0;if(c[k+164>>2]&32){F3(s|0,k|0,176)|0;k=t;n=q;o=k+48|0;do{c[k>>2]=c[n>>2];k=k+4|0;n=n+4|0}while((k|0)<(o|0));c[p>>2]=s;k=c[t>>2]&3;c[((k|0)==3?t:t+48|0)+40>>2]=c[((c[q>>2]&3|0)==2?q:q+-48|0)+40>>2];c[((k|0)==2?t:t+-48|0)+40>>2]=c[((c[q>>2]&3|0)==3?q:q+48|0)+40>>2];k=s+16|0;n=(c[r>>2]|0)+56|0;o=k+40|0;do{c[k>>2]=c[n>>2];k=k+4|0;n=n+4|0}while((k|0)<(o|0));k=s+56|0;n=(c[r>>2]|0)+16|0;o=k+40|0;do{c[k>>2]=c[n>>2];k=k+4|0;n=n+4|0}while((k|0)<(o|0));a[s+112>>0]=1;c[s+116>>2]=q;q=t}k=1;while(1){if((k|0)>=(i|0)){w=6;break}if(!(a[(c[(c[f+(k+g<<2)>>2]|0)+16>>2]|0)+113>>0]|0))k=k+1|0;else{w=7;break}}a:do if((w|0)==6)if(!(u<<24>>24)){k=c[q+16>>2]|0;if(c[k+96>>2]|0){Sg(b,d,e,q,j);break}if((j|0)==2){A=c[q>>2]&3;Tg(c[((A|0)==3?q:q+48|0)+40>>2]|0,c[((A|0)==2?q:q+-48|0)+40>>2]|0,f,g,i,2);break}t=a[k+49>>0]|0;u=a[k+89>>0]|0;if(!(t<<24>>24==1&u<<24>>24!=4)?!(t<<24>>24!=4&u<<24>>24==1):0){p=c[q>>2]&3;o=c[((p|0)==3?q:q+48|0)+40>>2]|0;p=c[((p|0)==2?q:q+-48|0)+40>>2]|0;k=c[o+16>>2]|0;n=c[k+232>>2]|0;if((n|0)>0){u=c[(c[b+16>>2]|0)+196>>2]|0;t=n+~(a[(c[(c[b+60>>2]|0)+16>>2]|0)+113>>0]&1)|0;m=+h[(c[(c[c[u+(t<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]-+h[u+(t<<6)+16>>3]-+h[k+24>>3]-+h[u+(n<<6)+24>>3]}else m=+(c[(c[b+16>>2]|0)+252>>2]|0);C=+(i+1|0);v=+(c[d+12>>2]|0)/C;m=m/C;Vg(b,d,e,o,q,y,1);Vg(b,d,e,p,q,z,0);s=y+52|0;t=z+52|0;p=(j|0)==10;q=e+80|0;k=0;while(1){if((k|0)>=(i|0))break a;r=c[f+(k+g<<2)>>2]|0;o=c[s>>2]|0;n=o+-1|0;G=+h[y+56+(n<<5)>>3];F=+h[y+56+(n<<5)+16>>3];E=+h[y+56+(n<<5)+24>>3];h[18830]=G;h[18831]=E;k=k+1|0;C=+(k|0);D=v*C;h[18832]=F+D;C=E+m*C;h[18833]=C;h[18834]=G;h[18835]=C;n=(c[t>>2]|0)+-1|0;G=+h[z+56+(n<<5)+16>>3];h[18836]=G;h[18837]=C+m;E=+h[z+56+(n<<5)>>3];F=+h[z+56+(n<<5)+24>>3];h[18840]=G;h[18839]=F;h[18838]=E-D;h[18841]=C;n=0;while(1){if((n|0)>=(o|0)){n=0;break}o=y+56+(n<<5)|0;c[x>>2]=c[o>>2];c[x+4>>2]=c[o+4>>2];c[x+8>>2]=c[o+8>>2];c[x+12>>2]=c[o+12>>2];c[x+16>>2]=c[o+16>>2];c[x+20>>2]=c[o+20>>2];c[x+24>>2]=c[o+24>>2];c[x+28>>2]=c[o+28>>2];SK(e,x);n=n+1|0;o=c[s>>2]|0}while(1){if((n|0)==3)break;j=150640+(n<<5)|0;c[x>>2]=c[j>>2];c[x+4>>2]=c[j+4>>2];c[x+8>>2]=c[j+8>>2];c[x+12>>2]=c[j+12>>2];c[x+16>>2]=c[j+16>>2];c[x+20>>2]=c[j+20>>2];c[x+24>>2]=c[j+24>>2];c[x+28>>2]=c[j+28>>2];SK(e,x);n=n+1|0}o=c[t>>2]|0;while(1){n=o+-1|0;if((o|0)<=0)break;o=z+56+(n<<5)|0;c[x>>2]=c[o>>2];c[x+4>>2]=c[o+4>>2];c[x+8>>2]=c[o+8>>2];c[x+12>>2]=c[o+12>>2];c[x+16>>2]=c[o+16>>2];c[x+20>>2]=c[o+20>>2];c[x+24>>2]=c[o+24>>2];c[x+28>>2]=c[o+28>>2];SK(e,x);o=n}if(p)n=sJ(e,A)|0;else n=yJ(e,A)|0;o=c[A>>2]|0;if(!o)break a;QK(r,c[((c[r>>2]&3|0)==2?r:r+-48|0)+40>>2]|0,n,o,17296);c[q>>2]=0}}Ug(b,d,e,f,g,i,q,(j|0)==10&1)}else w=7;while(0);if((w|0)==7)Rg(b,f,g,i,q,j);l=B;return}function tg(b,d,e,f,g,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;var k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0;ba=l;l=l+2576|0;S=ba+2528|0;_=ba+2568|0;k=ba+2352|0;n=ba+2176|0;t=ba+1904|0;Y=ba+1808|0;$=ba+1712|0;T=ba+1016|0;U=ba+320|0;V=ba+256|0;X=ba+2564|0;Z=ba+2560|0;z=ba+288|0;A=ba+224|0;L=ba+192|0;M=ba+160|0;N=ba+128|0;P=ba+96|0;Q=ba+64|0;R=ba+32|0;W=ba;s=t+16|0;c[s>>2]=k;o=Y+16|0;c[o>>2]=n;aa=$+16|0;c[aa>>2]=ba+2e3;if(!(c[45964]|0)){c[45964]=vH(32e3)|0;c[45965]=vH(32e3)|0;c[45966]=2e3;c[45967]=2e3}u=c[f+(g<<2)>>2]|0;K=c[u>>2]&3;p=u+48|0;q=u+-48|0;K=(c[(c[(c[((K|0)==3?u:p)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[(c[(c[((K|0)==2?u:q)+40>>2]|0)+16>>2]|0)+232>>2]|0)|0;r=u+16|0;if((((K|0)>-1?K:0-K|0)|0)<=1){k=c[r>>2]|0;if(!(c[k+164>>2]&32)){K=u;n=0}else{n=c[s>>2]|0;F3(n|0,k|0,176)|0;w=t;x=u;y=w+48|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0));c[s>>2]=n;w=c[t>>2]&3;c[((w|0)==3?t:t+48|0)+40>>2]=c[((c[u>>2]&3|0)==2?u:q)+40>>2];c[((w|0)==2?t:t+-48|0)+40>>2]=c[((c[u>>2]&3|0)==3?u:p)+40>>2];w=n+16|0;x=(c[r>>2]|0)+56|0;y=w+40|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0));k=c[s>>2]|0;w=k+56|0;x=(c[r>>2]|0)+16|0;y=w+40|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0));a[k+112>>0]=1;n=0;J=12}}else{F3(k|0,c[r>>2]|0,176)|0;w=t;x=u;y=w+48|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0));w=t+48|0;x=p;y=w+48|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0));c[s>>2]=k;k=c[r>>2]|0;if(!(c[k+164>>2]&32)){F3(n|0,k|0,176)|0;w=Y;x=u;y=w+48|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0));c[o>>2]=n;o=c[t>>2]|0;c[((o&3|0)==3?t:t+48|0)+40>>2]=c[((c[u>>2]&3|0)==3?u:p)+40>>2];w=Y+48|0;x=p;y=w+48|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0))}else{n=c[o>>2]|0;F3(n|0,k|0,176)|0;w=Y;x=u;y=w+48|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0));c[o>>2]=n;w=c[Y>>2]&3;c[((w|0)==3?Y:Y+48|0)+40>>2]=c[((c[u>>2]&3|0)==2?u:q)+40>>2];c[((w|0)==2?Y:Y+-48|0)+40>>2]=c[((c[u>>2]&3|0)==3?u:p)+40>>2];w=n+16|0;x=(c[r>>2]|0)+56|0;y=w+40|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0));k=c[o>>2]|0;w=k+56|0;x=(c[r>>2]|0)+16|0;y=w+40|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0));a[k+112>>0]=1;c[k+116>>2]=u;o=c[t>>2]|0;c[((o&3|0)==3?t:t+48|0)+40>>2]=c[((c[u>>2]&3|0)==2?u:q)+40>>2];w=(c[s>>2]|0)+16|0;x=(c[r>>2]|0)+56|0;y=w+40|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0))}k=rg(u)|0;while(1){n=c[(c[k+16>>2]|0)+172>>2]|0;if(!n)break;else k=n}c[((o&3|0)==2?t:t+-48|0)+40>>2]=c[((c[k>>2]&3|0)==2?k:k+-48|0)+40>>2];k=c[s>>2]|0;a[k+84>>0]=0;a[k+112>>0]=1;n=k+56|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;n=1;J=12}if((J|0)==12){c[k+116>>2]=u;K=t}H=(j|0)==2;if(H?(v=xg(b,K,c[45964]|0,_)|0,c[Z>>2]=v,(v|0)!=0):0)J=63;else J=15;a:do if((J|0)==15){G=(j|0)==10;c[Z>>2]=0;o=c[K>>2]&3;k=c[((o|0)==3?K:K+48|0)+40>>2]|0;o=c[((o|0)==2?K:K+-48|0)+40>>2]|0;c[_>>2]=o;yg(z,b,d,k,0,K);c[T>>2]=c[z>>2];c[T+4>>2]=c[z+4>>2];c[T+8>>2]=c[z+8>>2];c[T+12>>2]=c[z+12>>2];c[T+16>>2]=c[z+16>>2];c[T+20>>2]=c[z+20>>2];c[T+24>>2]=c[z+24>>2];c[T+28>>2]=c[z+28>>2];c[V>>2]=c[z>>2];c[V+4>>2]=c[z+4>>2];c[V+8>>2]=c[z+8>>2];c[V+12>>2]=c[z+12>>2];c[V+16>>2]=c[z+16>>2];c[V+20>>2]=c[z+20>>2];TK(e,K,1,T,zg(k)|0);B=T+52|0;I=(c[B>>2]|0)+-1|0;D=V+24|0;h[D>>3]=+h[T+56+(I<<5)+24>>3];E=V+8|0;h[E>>3]=+h[T+56+(I<<5)+8>>3];I=c[k+16>>2]|0;F=b+16|0;m=+h[I+24>>3]-+h[(c[(c[F>>2]|0)+196>>2]|0)+(c[I+232>>2]<<6)+16>>3];c[S>>2]=c[V>>2];c[S+4>>2]=c[V+4>>2];c[S+8>>2]=c[V+8>>2];c[S+12>>2]=c[V+12>>2];c[S+16>>2]=c[V+16>>2];c[S+20>>2]=c[V+20>>2];c[S+24>>2]=c[V+24>>2];c[S+28>>2]=c[V+28>>2];Ag(A,S,1,m);c[V>>2]=c[A>>2];c[V+4>>2]=c[A+4>>2];c[V+8>>2]=c[A+8>>2];c[V+12>>2]=c[A+12>>2];c[V+16>>2]=c[A+16>>2];c[V+20>>2]=c[A+20>>2];c[V+24>>2]=c[A+24>>2];c[V+28>>2]=c[A+28>>2];A=V+16|0;if(+h[V>>3]<+h[A>>3]?+h[E>>3]<+h[D>>3]:0){I=c[B>>2]|0;c[B>>2]=I+1;I=T+56+(I<<5)|0;c[I>>2]=c[V>>2];c[I+4>>2]=c[V+4>>2];c[I+8>>2]=c[V+8>>2];c[I+12>>2]=c[V+12>>2];c[I+16>>2]=c[V+16>>2];c[I+20>>2]=c[V+20>>2];c[I+24>>2]=c[V+24>>2];c[I+28>>2]=c[V+28>>2]}w=b+60|0;C=U+52|0;x=e+56|0;y=e+69|0;j=e+16|0;z=e+29|0;I=K;q=0;r=-1;b:while(1){s=k;t=0;k=0;u=I;while(1){p=o;v=o;if((a[(c[p+16>>2]|0)+156>>0]|0)!=1)break b;if((kb[c[17300>>2]&63](p)|0)<<24>>24)break b;o=t|1;ca=150640+(t<<5)|0;Bg(L,d,b,c[(c[s+16>>2]|0)+232>>2]|0);c[ca>>2]=c[L>>2];c[ca+4>>2]=c[L+4>>2];c[ca+8>>2]=c[L+8>>2];c[ca+12>>2]=c[L+12>>2];c[ca+16>>2]=c[L+16>>2];c[ca+20>>2]=c[L+20>>2];c[ca+24>>2]=c[L+24>>2];c[ca+28>>2]=c[L+28>>2];if(!k){q=Cg(p)|0;k=(q|0)<((a[(c[(c[w>>2]|0)+16>>2]|0)+113>>0]<<1&2)+3&255|0);q=k?q:q+-2|0;r=k?r:1;k=(k^1)&1}if(!((k|0)==0|(r|0)>0))break;ca=150640+(o<<5)|0;yg(M,b,d,p,u,c[c[(c[p+16>>2]|0)+180>>2]>>2]|0);c[ca>>2]=c[M>>2];c[ca+4>>2]=c[M+4>>2];c[ca+8>>2]=c[M+8>>2];c[ca+12>>2]=c[M+12>>2];c[ca+16>>2]=c[M+16>>2];c[ca+20>>2]=c[M+20>>2];c[ca+24>>2]=c[M+24>>2];c[ca+28>>2]=c[M+28>>2];ca=c[c[(c[v+16>>2]|0)+180>>2]>>2]|0;o=c[ca>>2]&3;s=c[((o|0)==3?ca:ca+48|0)+40>>2]|0;o=c[((o|0)==2?ca:ca+-48|0)+40>>2]|0;c[_>>2]=o;t=t+2|0;r=r+-1|0;u=ca}yg(N,b,d,p,u,c[c[(c[p+16>>2]|0)+180>>2]>>2]|0);c[U>>2]=c[N>>2];c[U+4>>2]=c[N+4>>2];c[U+8>>2]=c[N+8>>2];c[U+12>>2]=c[N+12>>2];c[U+16>>2]=c[N+16>>2];c[U+20>>2]=c[N+20>>2];c[U+24>>2]=c[N+24>>2];c[U+28>>2]=c[N+28>>2];WK(e,u,1,U,zg(c[((c[u>>2]&3|0)==2?u:u+-48|0)+40>>2]|0)|0);ca=U+56+((c[C>>2]|0)+-1<<5)|0;t=c[v+16>>2]|0;m=+h[(c[(c[F>>2]|0)+196>>2]|0)+(c[t+232>>2]<<6)+24>>3]+ +h[t+24>>3];c[S>>2]=c[ca>>2];c[S+4>>2]=c[ca+4>>2];c[S+8>>2]=c[ca+8>>2];c[S+12>>2]=c[ca+12>>2];c[S+16>>2]=c[ca+16>>2];c[S+20>>2]=c[ca+20>>2];c[S+24>>2]=c[ca+24>>2];c[S+28>>2]=c[ca+28>>2];Ag(V,S,4,m);if(+h[V>>3]<+h[A>>3]?+h[E>>3]<+h[D>>3]:0){ca=c[C>>2]|0;c[C>>2]=ca+1;ca=U+56+(ca<<5)|0;c[ca>>2]=c[V>>2];c[ca+4>>2]=c[V+4>>2];c[ca+8>>2]=c[V+8>>2];c[ca+12>>2]=c[V+12>>2];c[ca+16>>2]=c[V+16>>2];c[ca+20>>2]=c[V+20>>2];c[ca+24>>2]=c[V+24>>2];c[ca+28>>2]=c[V+28>>2]}h[x>>3]=1.5707963267948966;a[y>>0]=1;Dg(e,I,u,T,U,o);if(!G){k=yJ(e,X)|0;o=c[X>>2]|0;if(H&(o|0)>4){ca=k+16|0;c[ca>>2]=c[k>>2];c[ca+4>>2]=c[k+4>>2];c[ca+8>>2]=c[k+8>>2];c[ca+12>>2]=c[k+12>>2];ca=k+32|0;o=k+(o+-1<<4)|0;c[ca>>2]=c[o>>2];c[ca+4>>2]=c[o+4>>2];c[ca+8>>2]=c[o+8>>2];c[ca+12>>2]=c[o+12>>2];G3(k+48|0,o|0,16)|0;c[X>>2]=4;o=4}else J=33}else{k=sJ(e,X)|0;o=c[X>>2]|0;J=33}if((J|0)==33){J=0;if(!o)break a}u=c[Z>>2]|0;p=u+o|0;if((p|0)>(c[45966]|0)){c[45966]=p<<1;t=xH(c[45964]|0,p<<5)|0;c[45964]=t;o=c[X>>2]|0}else t=c[45964]|0;s=0;p=u;while(1){if((s|0)>=(o|0))break;ca=t+(p<<4)|0;u=k+(s<<4)|0;c[ca>>2]=c[u>>2];c[ca+4>>2]=c[u+4>>2];c[ca+8>>2]=c[u+8>>2];c[ca+12>>2]=c[u+12>>2];s=s+1|0;p=p+1|0}c[Z>>2]=p;o=Eg(c[c[(c[v+16>>2]|0)+180>>2]>>2]|0,q,t,Z)|0;Fg(I,e);p=c[o>>2]&3;k=c[((p|0)==3?o:o+48|0)+40>>2]|0;p=c[((p|0)==2?o:o+-48|0)+40>>2]|0;c[_>>2]=p;I=k+16|0;yg(P,b,d,k,c[c[(c[I>>2]|0)+172>>2]>>2]|0,o);c[T>>2]=c[P>>2];c[T+4>>2]=c[P+4>>2];c[T+8>>2]=c[P+8>>2];c[T+12>>2]=c[P+12>>2];c[T+16>>2]=c[P+16>>2];c[T+20>>2]=c[P+20>>2];c[T+24>>2]=c[P+24>>2];c[T+28>>2]=c[P+28>>2];TK(e,o,1,T,zg(k)|0);ca=T+56+((c[B>>2]|0)+-1<<5)|0;I=c[I>>2]|0;m=+h[I+24>>3]-+h[(c[(c[F>>2]|0)+196>>2]|0)+(c[I+232>>2]<<6)+16>>3];c[S>>2]=c[ca>>2];c[S+4>>2]=c[ca+4>>2];c[S+8>>2]=c[ca+8>>2];c[S+12>>2]=c[ca+12>>2];c[S+16>>2]=c[ca+16>>2];c[S+20>>2]=c[ca+20>>2];c[S+24>>2]=c[ca+24>>2];c[S+28>>2]=c[ca+28>>2];Ag(V,S,1,m);if(+h[V>>3]<+h[A>>3]?+h[E>>3]<+h[D>>3]:0){ca=c[B>>2]|0;c[B>>2]=ca+1;ca=T+56+(ca<<5)|0;c[ca>>2]=c[V>>2];c[ca+4>>2]=c[V+4>>2];c[ca+8>>2]=c[V+8>>2];c[ca+12>>2]=c[V+12>>2];c[ca+16>>2]=c[V+16>>2];c[ca+20>>2]=c[V+20>>2];c[ca+24>>2]=c[V+24>>2];c[ca+28>>2]=c[V+28>>2]}h[j>>3]=-1.5707963267948966;a[z>>0]=1;I=o;o=p}k=t|1;r=150640+(t<<5)|0;Bg(Q,d,b,c[(c[s+16>>2]|0)+232>>2]|0);c[r>>2]=c[Q>>2];c[r+4>>2]=c[Q+4>>2];c[r+8>>2]=c[Q+8>>2];c[r+12>>2]=c[Q+12>>2];c[r+16>>2]=c[Q+16>>2];c[r+20>>2]=c[Q+20>>2];c[r+24>>2]=c[Q+24>>2];c[r+28>>2]=c[Q+28>>2];yg(R,b,d,p,u,0);c[U>>2]=c[R>>2];c[U+4>>2]=c[R+4>>2];c[U+8>>2]=c[R+8>>2];c[U+12>>2]=c[R+12>>2];c[U+16>>2]=c[R+16>>2];c[U+20>>2]=c[R+20>>2];c[U+24>>2]=c[R+24>>2];c[U+28>>2]=c[R+28>>2];c[V>>2]=c[R>>2];c[V+4>>2]=c[R+4>>2];c[V+8>>2]=c[R+8>>2];c[V+12>>2]=c[R+12>>2];c[V+16>>2]=c[R+16>>2];c[V+20>>2]=c[R+20>>2];c[V+24>>2]=c[R+24>>2];c[V+28>>2]=c[R+28>>2];r=(n|0)!=0;s=u+-48|0;WK(e,r?Y:u,1,U,zg(c[((c[u>>2]&3|0)==2?u:s)+40>>2]|0)|0);ca=(c[C>>2]|0)+-1|0;h[D>>3]=+h[U+56+(ca<<5)+24>>3];h[E>>3]=+h[U+56+(ca<<5)+8>>3];ca=c[v+16>>2]|0;m=+h[(c[(c[F>>2]|0)+196>>2]|0)+(c[ca+232>>2]<<6)+24>>3]+ +h[ca+24>>3];c[S>>2]=c[V>>2];c[S+4>>2]=c[V+4>>2];c[S+8>>2]=c[V+8>>2];c[S+12>>2]=c[V+12>>2];c[S+16>>2]=c[V+16>>2];c[S+20>>2]=c[V+20>>2];c[S+24>>2]=c[V+24>>2];c[S+28>>2]=c[V+28>>2];Ag(W,S,4,m);c[V>>2]=c[W>>2];c[V+4>>2]=c[W+4>>2];c[V+8>>2]=c[W+8>>2];c[V+12>>2]=c[W+12>>2];c[V+16>>2]=c[W+16>>2];c[V+20>>2]=c[W+20>>2];c[V+24>>2]=c[W+24>>2];c[V+28>>2]=c[W+28>>2];if(+h[V>>3]<+h[A>>3]?+h[E>>3]<+h[D>>3]:0){ca=c[C>>2]|0;c[C>>2]=ca+1;ca=U+56+(ca<<5)|0;c[ca>>2]=c[V>>2];c[ca+4>>2]=c[V+4>>2];c[ca+8>>2]=c[V+8>>2];c[ca+12>>2]=c[V+12>>2];c[ca+16>>2]=c[V+16>>2];c[ca+20>>2]=c[V+20>>2];c[ca+24>>2]=c[V+24>>2];c[ca+28>>2]=c[V+28>>2]}Dg(e,I,u,T,U,k);if(G)q=sJ(e,X)|0;else q=yJ(e,X)|0;k=c[X>>2]|0;if(!(H&(k|0)>4)){if(!k)break}else{ca=q+16|0;c[ca>>2]=c[q>>2];c[ca+4>>2]=c[q+4>>2];c[ca+8>>2]=c[q+8>>2];c[ca+12>>2]=c[q+12>>2];ca=q+32|0;k=q+(k+-1<<4)|0;c[ca>>2]=c[k>>2];c[ca+4>>2]=c[k+4>>2];c[ca+8>>2]=c[k+8>>2];c[ca+12>>2]=c[k+12>>2];G3(q+48|0,k|0,16)|0;c[X>>2]=4;k=4}o=c[Z>>2]|0;n=o+k|0;if((n|0)>(c[45966]|0)){c[45966]=n<<1;p=xH(c[45964]|0,n<<5)|0;c[45964]=p;k=c[X>>2]|0}else p=c[45964]|0;n=0;while(1){if((n|0)>=(k|0))break;ca=p+(o<<4)|0;X=q+(n<<4)|0;c[ca>>2]=c[X>>2];c[ca+4>>2]=c[X+4>>2];c[ca+8>>2]=c[X+8>>2];c[ca+12>>2]=c[X+12>>2];n=n+1|0;o=o+1|0}c[Z>>2]=o;Fg(I,e);if(r)k=(c[Y>>2]&3|0)==2?Y:Y+-48|0;else k=(c[u>>2]&3|0)==2?u:s;c[_>>2]=c[k+40>>2];v=o;J=63}while(0);c:do if((J|0)==63){if((i|0)==1){QK(K,c[_>>2]|0,c[45964]|0,v,17296);break}t=d+12|0;u=v+-1|0;m=+((O(c[t>>2]|0,i+-1|0)|0)/2|0|0);n=c[45964]|0;k=1;while(1){if((k|0)>=(u|0))break;ca=n+(k<<4)|0;h[ca>>3]=+h[ca>>3]-m;k=k+1|0}k=c[45966]|0;if((k|0)>(c[45967]|0)){c[45967]=k;o=xH(c[45965]|0,k<<4)|0;c[45965]=o;n=c[45964]|0}else o=c[45965]|0;k=0;while(1){if((k|0)>=(v|0))break;ca=o+(k<<4)|0;d=n+(k<<4)|0;c[ca>>2]=c[d>>2];c[ca+4>>2]=c[d+4>>2];c[ca+8>>2]=c[d+8>>2];c[ca+12>>2]=c[d+12>>2];k=k+1|0}QK(K,c[_>>2]|0,o,v,17296);r=$+48|0;s=$+-48|0;q=1;while(1){if((q|0)>=(i|0))break c;o=c[f+(q+g<<2)>>2]|0;p=o+16|0;k=c[p>>2]|0;if(c[k+164>>2]&32){n=c[aa>>2]|0;F3(n|0,k|0,176)|0;w=$;x=o;y=w+48|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0));c[aa>>2]=n;w=c[$>>2]&3;c[((w|0)==3?$:r)+40>>2]=c[((c[o>>2]&3|0)==2?o:o+-48|0)+40>>2];c[((w|0)==2?$:s)+40>>2]=c[((c[o>>2]&3|0)==3?o:o+48|0)+40>>2];w=n+16|0;x=(c[p>>2]|0)+56|0;y=w+40|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0));k=c[aa>>2]|0;w=k+56|0;x=(c[p>>2]|0)+16|0;y=w+40|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0));a[k+112>>0]=1;c[k+116>>2]=o;o=$}p=c[45964]|0;k=1;while(1){if((k|0)>=(u|0))break;ca=p+(k<<4)|0;h[ca>>3]=+h[ca>>3]+ +(c[t>>2]|0);k=k+1|0}n=c[45965]|0;k=0;while(1){if((k|0)>=(v|0))break;ca=n+(k<<4)|0;_=p+(k<<4)|0;c[ca>>2]=c[_>>2];c[ca+4>>2]=c[_+4>>2];c[ca+8>>2]=c[_+8>>2];c[ca+12>>2]=c[_+12>>2];k=k+1|0}QK(o,c[((c[o>>2]&3|0)==2?o:o+-48|0)+40>>2]|0,n,v,17296);q=q+1|0}}while(0);l=ba;return}function ug(a){a=a|0;var b=0,d=0,e=0;b=Sy(a)|0;while(1){if(!b)break;d=Ex(a,b)|0;while(1){if(!d)break;if((kb[c[4324]&63](d)|0)<<24>>24?(e=c[(c[d+16>>2]|0)+8>>2]|0,e|0):0)vg(e);d=Gx(a,d)|0}b=Ty(a,b)|0}return}function vg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=c[a+4>>2]|0;g=vH(f*48|0)|0;b=g;d=0;e=(c[a>>2]|0)+((f+-1|0)*48|0)|0;while(1){if((d|0)>=(f|0)){b=0;break}wg(e,b);b=b+48|0;d=d+1|0;e=e+-48|0}while(1){d=c[a>>2]|0;if((b|0)>=(f|0))break;D_(c[d+(b*48|0)>>2]|0);b=b+1|0}D_(d);c[a>>2]=g;return}function wg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=c[a+4>>2]|0;h=vH(g<<4)|0;d=h;e=0;f=(c[a>>2]|0)+(g+-1<<4)|0;while(1){if((e|0)>=(g|0))break;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];d=d+16|0;e=e+1|0;f=f+-16|0}c[b>>2]=h;c[b+4>>2]=g;c[b+8>>2]=c[a+12>>2];c[b+12>>2]=c[a+8>>2];h=b+16|0;g=a+32|0;c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];h=b+32|0;g=a+16|0;c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];return}function xg(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0.0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;x=l;l=l+96|0;q=x+80|0;s=x+64|0;r=x+48|0;u=x+32|0;v=x+16|0;w=x;m=d;while(1){t=m+16|0;g=c[t>>2]|0;if(!(a[g+112>>0]|0))break;m=c[g+116>>2]|0}g=c[m>>2]&3;o=c[((g|0)==2?m:m+-48|0)+40>>2]|0;g=c[((g|0)==3?m:m+48|0)+40>>2]|0;m=o+16|0;n=g+16|0;y=(c[(c[m>>2]|0)+232>>2]|0)-(c[(c[n>>2]|0)+232>>2]|0)|0;switch(((y|0)>-1?y:0-y|0)|0){case 1:{g=0;break}case 2:{if(!(a[(c[(c[b+60>>2]|0)+16>>2]|0)+113>>0]&1))p=6;else g=0;break}default:p=6}do if((p|0)==6){if((c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0)==(g|0)){c[f>>2]=o;y=(c[n>>2]|0)+16|0;p=(c[t>>2]|0)+16|0;c[s>>2]=c[y>>2];c[s+4>>2]=c[y+4>>2];c[s+8>>2]=c[y+8>>2];c[s+12>>2]=c[y+12>>2];c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Pg(u,s,q);p=(c[m>>2]|0)+16|0;y=(c[t>>2]|0)+56|0;c[s>>2]=c[p>>2];c[s+4>>2]=c[p+4>>2];c[s+8>>2]=c[p+8>>2];c[s+12>>2]=c[p+12>>2];c[q>>2]=c[y>>2];c[q+4>>2]=c[y+4>>2];c[q+8>>2]=c[y+8>>2];c[q+12>>2]=c[y+12>>2];Pg(v,s,q)}else{c[f>>2]=g;y=(c[m>>2]|0)+16|0;p=(c[t>>2]|0)+56|0;c[s>>2]=c[y>>2];c[s+4>>2]=c[y+4>>2];c[s+8>>2]=c[y+8>>2];c[s+12>>2]=c[y+12>>2];c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Pg(u,s,q);p=(c[n>>2]|0)+16|0;y=(c[t>>2]|0)+16|0;c[s>>2]=c[p>>2];c[s+4>>2]=c[p+4>>2];c[s+8>>2]=c[p+8>>2];c[s+12>>2]=c[p+12>>2];c[q>>2]=c[y>>2];c[q+4>>2]=c[y+4>>2];c[q+8>>2]=c[y+8>>2];c[q+12>>2]=c[y+12>>2];Pg(v,s,q)}g=c[(c[t>>2]|0)+96>>2]|0;if(!g){g=e+16|0;c[e>>2]=c[u>>2];c[e+4>>2]=c[u+4>>2];c[e+8>>2]=c[u+8>>2];c[e+12>>2]=c[u+12>>2];c[g>>2]=c[u>>2];c[g+4>>2]=c[u+4>>2];c[g+8>>2]=c[u+8>>2];c[g+12>>2]=c[u+12>>2];g=e+48|0;y=e+32|0;c[y>>2]=c[v>>2];c[y+4>>2]=c[v+4>>2];c[y+8>>2]=c[v+8>>2];c[y+12>>2]=c[v+12>>2];c[g>>2]=c[v>>2];c[g+4>>2]=c[v+4>>2];c[g+8>>2]=c[v+8>>2];c[g+12>>2]=c[v+12>>2];g=4;break}j=+h[g+24>>3];i=+h[g+32>>3];p=(c[(c[(ez(o)|0)+16>>2]|0)+116>>2]&1|0)==0;k=p?i:j;y=(c[(c[t>>2]|0)+96>>2]|0)+56|0;c[w>>2]=c[y>>2];c[w+4>>2]=c[y+4>>2];c[w+8>>2]=c[y+8>>2];c[w+12>>2]=c[y+12>>2];c[r>>2]=c[v>>2];c[r+4>>2]=c[v+4>>2];c[r+8>>2]=c[v+8>>2];c[r+12>>2]=c[v+12>>2];c[s>>2]=c[u>>2];c[s+4>>2]=c[u+4>>2];c[s+8>>2]=c[u+8>>2];c[s+12>>2]=c[u+12>>2];c[q>>2]=c[y>>2];c[q+4>>2]=c[y+4>>2];c[q+8>>2]=c[y+8>>2];c[q+12>>2]=c[y+12>>2];y=(Qg(r,s,q)|0)==0;i=(p?j:i)*.5;j=+h[w>>3];if(y){h[w>>3]=j-i;y=w+8|0;h[y>>3]=+h[y>>3]+k*.5}else{h[w>>3]=j+i;y=w+8|0;h[y>>3]=+h[y>>3]-k*.5}g=e+16|0;c[e>>2]=c[u>>2];c[e+4>>2]=c[u+4>>2];c[e+8>>2]=c[u+8>>2];c[e+12>>2]=c[u+12>>2];c[g>>2]=c[u>>2];c[g+4>>2]=c[u+4>>2];c[g+8>>2]=c[u+8>>2];c[g+12>>2]=c[u+12>>2];g=e+32|0;y=e+48|0;u=e+64|0;c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];c[u+8>>2]=c[w+8>>2];c[u+12>>2]=c[w+12>>2];c[y>>2]=c[w>>2];c[y+4>>2]=c[w+4>>2];c[y+8>>2]=c[w+8>>2];c[y+12>>2]=c[w+12>>2];c[g>>2]=c[w>>2];c[g+4>>2]=c[w+4>>2];c[g+8>>2]=c[w+8>>2];c[g+12>>2]=c[w+12>>2];g=e+80|0;y=e+96|0;c[y>>2]=c[v>>2];c[y+4>>2]=c[v+4>>2];c[y+8>>2]=c[v+8>>2];c[y+12>>2]=c[v+12>>2];c[g>>2]=c[v>>2];c[g+4>>2]=c[v+4>>2];c[g+8>>2]=c[v+8>>2];c[g+12>>2]=c[v+12>>2];g=7}while(0);l=x;return g|0}function yg(b,d,e,f,g,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0.0,k=0,l=0,m=0.0,n=0,o=0.0,p=0.0,q=0;q=c[f+16>>2]|0;p=+h[q+16>>3];j=p-+h[q+88>>3];m=j+-4.0;l=Lg(d,f,g,i,-1)|0;if(!l){n=~~(j+(m>=0.0?-3.5:-4.5));k=c[e>>2]|0;k=(k|0)>(n|0)?n:k}else{k=Mg(d,f,l)|0;do if(!k){n=c[l+16>>2]|0;j=+h[n+240>>3]+ +h[n+16>>3];if(!(a[n+156>>0]|0)){j=+(c[(c[d+16>>2]|0)+248>>2]|0)*.5+j;break}else{j=j+ +(c[e+8>>2]|0);break}}else j=+h[(c[k+16>>2]|0)+32>>3]+ +(c[e+8>>2]|0);while(0);o=j<m?j:m;k=~~(o+(o>=0.0?.5:-.5))}o=+(k|0);n=(a[q+156>>0]|0)==1;if(n?(c[q+104>>2]|0)!=0:0)m=p+10.0;else m=p+4.0+ +h[q+96>>3];l=Lg(d,f,g,i,1)|0;if(!l){f=~~(m+(m>=0.0?.5:-.5));k=c[e+4>>2]|0;k=(k|0)<(f|0)?f:k}else{k=Mg(d,f,l)|0;do if(!k){f=c[l+16>>2]|0;j=+h[f+16>>3]-+h[f+88>>3];if(!(a[f+156>>0]|0)){j=j-+(c[(c[d+16>>2]|0)+248>>2]|0)*.5;break}else{j=j-+(c[e+8>>2]|0);break}}else j=+h[(c[k+16>>2]|0)+16>>3]-+(c[e+8>>2]|0);while(0);m=j>m?j:m;k=~~(m+(m>=0.0?.5:-.5))}j=+(k|0);if(n?(c[q+104>>2]|0)!=0:0){j=j-+h[q+96>>3];if(j<o)j=p}p=+h[q+24>>3];d=c[(c[d+16>>2]|0)+196>>2]|0;q=c[q+232>>2]|0;m=p-+h[d+(q<<6)+16>>3];p=+h[d+(q<<6)+24>>3]+p;h[b>>3]=o;h[b+8>>3]=m;h[b+16>>3]=j;h[b+24>>3]=p;return}function zg(b){b=b|0;b=c[b+16>>2]|0;if((a[b+156>>0]|0)==1)if((c[b+176>>2]|0)>1)b=1;else b=(c[b+184>>2]|0)>1&1;else b=0;return b|0}function Ag(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=l;l=l+32|0;f=g;switch(d|0){case 1:{Kg(f,+h[b>>3],e,+h[b+16>>3],+h[b+8>>3]);break}case 4:{Kg(f,+h[b>>3],+h[b+24>>3],+h[b+16>>3],e);break}default:{}}c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[a+20>>2]=c[f+20>>2];c[a+24>>2]=c[f+24>>2];c[a+28>>2]=c[f+28>>2];l=g;return}function Bg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0.0,j=0.0,k=0,l=0,m=0,n=0,o=0;l=c[b+16>>2]|0;k=l+(e<<5)|0;j=+h[k>>3];m=l+(e<<5)+8|0;g=+h[m>>3];n=l+(e<<5)+16|0;f=+h[n>>3];l=l+(e<<5)+24|0;i=+h[l>>3];if(j==f){d=c[(c[d+16>>2]|0)+196>>2]|0;o=e+1|0;j=+(c[b>>2]|0);g=+h[d+(o<<6)+24>>3]+ +h[(c[(c[c[d+(o<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3];f=+(c[b+4>>2]|0);i=+h[(c[(c[c[d+(e<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]-+h[d+(e<<6)+16>>3];h[k>>3]=j;h[m>>3]=g;h[n>>3]=f;h[l>>3]=i}h[a>>3]=j;h[a+8>>3]=g;h[a+16>>3]=f;h[a+24>>3]=i;return}function Cg(b){b=b|0;var d=0,e=0;b=c[b+16>>2]|0;e=b+16|0;d=0;while(1){b=c[c[b+180>>2]>>2]|0;b=c[(c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)+16>>2]|0;if((a[b+156>>0]|0)!=1)break;if((c[b+184>>2]|0)!=1)break;if((c[b+176>>2]|0)!=1)break;if(+h[b+16>>3]!=+h[e>>3])break;d=d+1|0}return d|0}function Dg(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+32|0;j=k;h=Hg(b,-1)|0;b=Hg(b,1)|0;if(!((h|0)!=0?!(fL(h)|0):0))i=3;do if((i|0)==3){if(b|0?(fL(b)|0)==0:0)break;h=Ig(d,-1)|0;b=Ig(d,1)|0;if(h|0?(fL(h)|0)==0:0)break;if(b|0?(fL(b)|0)==0:0)break;h=e+52|0;b=0;while(1){if((b|0)>=(c[h>>2]|0))break;d=e+56+(b<<5)|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];c[j+16>>2]=c[d+16>>2];c[j+20>>2]=c[d+20>>2];c[j+24>>2]=c[d+24>>2];c[j+28>>2]=c[d+28>>2];SK(a,j);b=b+1|0}h=c[a+80>>2]|0;i=g+-3|0;b=0;while(1){if((b|0)>=(g|0))break;e=150640+(b<<5)|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];c[j+16>>2]=c[e+16>>2];c[j+20>>2]=c[e+20>>2];c[j+24>>2]=c[e+24>>2];c[j+28>>2]=c[e+28>>2];SK(a,j);b=b+1|0}d=h+1|0;i=i+d|0;h=c[f+52>>2]|0;while(1){b=h+-1|0;if((h|0)<=0)break;h=f+56+(b<<5)|0;c[j>>2]=c[h>>2];c[j+4>>2]=c[h+4>>2];c[j+8>>2]=c[h+8>>2];c[j+12>>2]=c[h+12>>2];c[j+16>>2]=c[h+16>>2];c[j+20>>2]=c[h+20>>2];c[j+24>>2]=c[h+24>>2];c[j+28>>2]=c[h+28>>2];SK(a,j);h=b}Jg(a,d,i)}while(0);l=k;return}function Eg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[e>>2]|0;while(1){if(!b)break;a=c[c[(c[(c[((c[a>>2]&3|0)==2?a:a+-48|0)+40>>2]|0)+16>>2]|0)+180>>2]>>2]|0;b=b+-1|0}c[e>>2]=f+1;g=d+(f<<4)|0;b=d+(f+-1<<4)|0;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];f=c[e>>2]|0;c[e>>2]=f+1;f=d+(f<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];f=d+(c[e>>2]<<4)|0;e=(c[(c[((c[a>>2]&3|0)==3?a:a+48|0)+40>>2]|0)+16>>2]|0)+16|0;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];return a|0}function Fg(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0,j=0,k=0,l=0,m=0;m=d+84|0;l=d+80|0;e=0;d=b;a:while(1){j=c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0;k=j+16|0;if((a[(c[k>>2]|0)+156>>0]|0)!=1)break;if((kb[c[17300>>2]&63](j)|0)<<24>>24)break;d=c[l>>2]|0;while(1){if((e|0)>=(d|0))break a;if(!(+h[(c[m>>2]|0)+(e<<5)+8>>3]>+h[(c[k>>2]|0)+24>>3]))break;e=e+1|0}d=c[m>>2]|0;b=c[k>>2]|0;do if(!(+h[d+(e<<5)+24>>3]<+h[b+24>>3])){g=+h[d+(e<<5)>>3];i=~~g;f=+h[d+(e<<5)+16>>3];if(!(c[b+104>>2]|0)){Gg(j,i,~~((f+g)*.5),~~f);break}else{Gg(j,i,~~f,~~(+h[b+96>>3]+f));break}}while(0);d=c[c[(c[k>>2]|0)+180>>2]>>2]|0}return}function Gg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a+16>>2]|0;h[a+16>>3]=+(d|0);h[a+88>>3]=+(d-b|0);h[a+96>>3]=+(e-d|0);return}function Hg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=c[a>>2]&3;i=c[(c[(c[((h|0)==3?a:a+48|0)+40>>2]|0)+16>>2]|0)+180>>2]|0;h=((h|0)==2?a:a+-48|0)+40|0;g=0;a=0;while(1){e=c[i+(g<<2)>>2]|0;if(!e)break;f=c[(c[(c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;do if((O(f-(c[(c[(c[h>>2]|0)+16>>2]|0)+236>>2]|0)|0,b)|0)>=1){d=c[e+16>>2]|0;if(!(c[d+8>>2]|0)){d=c[d+116>>2]|0;if(!d)break;if(!(c[(c[d+16>>2]|0)+8>>2]|0))break}if(a|0?(O((c[(c[(c[((c[a>>2]&3|0)==2?a:a+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)-f|0,b)|0)<=0:0)break;a=e}while(0);g=g+1|0}return a|0}function Ig(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=c[a>>2]&3;i=c[(c[(c[((h|0)==2?a:a+-48|0)+40>>2]|0)+16>>2]|0)+172>>2]|0;h=((h|0)==3?a:a+48|0)+40|0;g=0;a=0;while(1){e=c[i+(g<<2)>>2]|0;if(!e)break;f=c[(c[(c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;do if((O(f-(c[(c[(c[h>>2]|0)+16>>2]|0)+236>>2]|0)|0,b)|0)>=1){d=c[e+16>>2]|0;if(!(c[d+8>>2]|0)){d=c[d+116>>2]|0;if(!d)break;if(!(c[(c[d+16>>2]|0)+8>>2]|0))break}if(a|0?(O((c[(c[(c[((c[a>>2]&3|0)==3?a:a+48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)-f|0,b)|0)<=0:0)break;a=e}while(0);g=g+1|0}return a|0}function Jg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,i=0,j=0,k=0,l=0,m=0.0;l=a+84|0;i=b+-1|0;while(1){if((i|0)>(d|0))break;f=c[l>>2]|0;j=f+(i<<5)|0;e=+h[j>>3];if(!(i-b&1)){f=f+(i<<5)+16|0;m=+h[f>>3];g=~~((m+e)*.5);if(e>=m){h[j>>3]=+(g+-8|0);h[f>>3]=+(g+8|0)}}else{f=f+(i<<5)+16|0;m=+h[f>>3];g=~~((m+e)*.5);if(e+16.0>m){h[j>>3]=+(g+-8|0);h[f>>3]=+(g+8|0)}}i=i+1|0}k=(c[a+80>>2]|0)+-1|0;g=0;while(1){if((g|0)>=(k|0))break;i=c[l>>2]|0;f=i+(g<<5)|0;j=g+1|0;a=i+(j<<5)|0;if(!((g|0)<(b|0)|(g|0)>(d|0))?(g-b&1|0)==0:0){e=+h[f>>3]+16.0;f=i+(j<<5)+16|0;if(e>+h[f>>3])h[f>>3]=e;e=+h[i+(g<<5)+16>>3]+-16.0;if(!(e<+h[a>>3])){g=j;continue}h[a>>3]=e;g=j;continue}if(!((g|0)<(d|0)&(j|0)>=(b|0))){g=j;continue}if(j-b&1|0){g=j;continue}e=+h[i+(j<<5)+16>>3];if(+h[f>>3]+16.0>e)h[f>>3]=e+-16.0;f=i+(g<<5)+16|0;e=+h[a>>3];if(!(+h[f>>3]+-16.0<e)){g=j;continue}h[f>>3]=e+16.0;g=j}return}function Kg(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;h[a>>3]=b;h[a+8>>3]=c;h[a+16>>3]=d;h[a+24>>3]=e;return}function Lg(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=c[(c[b+16>>2]|0)+196>>2]|0;h=c[d+16>>2]|0;j=c[h+232>>2]|0;i=k+(j<<6)|0;j=k+(j<<6)+4|0;h=c[h+236>>2]|0;a:do{h=h+g|0;if((h|0)<=-1){b=0;break}if((h|0)>=(c[i>>2]|0)){b=0;break}b=c[(c[j>>2]|0)+(h<<2)>>2]|0;k=c[b+16>>2]|0;switch(a[k+156>>0]|0){case 0:break a;case 1:{if(c[k+104>>2]|0)break a;break}default:{}}}while((Og(b,d,e,f)|0)<<24>>24!=0);return b|0}function Mg(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;d=c[d+16>>2]|0;if(!(a[d+156>>0]|0)){i=c[d+212>>2]|0;h=i}else{i=c[(c[(c[c[d+180>>2]>>2]|0)+16>>2]|0)+116>>2]|0;g=c[i>>2]&3;h=c[(c[(c[((g|0)==2?i:i+-48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0;i=c[(c[(c[((g|0)==3?i:i+48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0}d=c[e+16>>2]|0;if(!(a[d+156>>0]|0)){e=c[d+212>>2]|0;e=(e|0)==(b|0)?0:e;return ((e|0)==(h|0)|((e|0)==0|(e|0)==(i|0))?0:e)|0}f=c[(c[(c[c[d+180>>2]>>2]|0)+16>>2]|0)+116>>2]|0;g=c[f>>2]&3;d=c[(c[(c[((g|0)==3?f:f+48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0;d=(d|0)==(b|0)?0:d;if(!(!((d|0)==(h|0)|((d|0)==0|(d|0)==(i|0)))?(Ng(d,e)|0)!=0:0)){d=c[(c[(c[((g|0)==2?f:f+-48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0;d=(d|0)==(b|0)?0:d;if((d|0)==(h|0)|((d|0)==0|(d|0)==(i|0)))d=0;else{e=(Ng(d,e)|0)==0;return (e?0:d)|0}}return d|0}function Ng(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0;d=c[a+16>>2]|0;a=c[b+16>>2]|0;f=+h[a+16>>3];if((+h[d+16>>3]<=f?f<=+h[d+32>>3]:0)?(e=+h[a+24>>3],+h[d+24>>3]<=e):0)a=e<=+h[d+40>>3]&1;else a=0;return a|0}function Og(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=c[b+16>>2]|0;j=(c[i+236>>2]|0)>(c[(c[d+16>>2]|0)+236>>2]|0);a:do if((c[i+184>>2]|0)==1){b:do if(f|0){h=0;b=c[c[i+180>>2]>>2]|0;while(1){if((h|0)>=2)break b;b=c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0;d=c[((c[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0;if((b|0)==(d|0))break b;g=c[b+16>>2]|0;b=c[d+16>>2]|0;if(j^(c[g+236>>2]|0)>(c[b+236>>2]|0)){b=1;break a}if((c[g+184>>2]|0)!=1)break b;if(!(a[g+156>>0]|0))break b;if((c[b+184>>2]|0)!=1)break b;if(!(a[b+156>>0]|0))break b;h=h+1|0;f=c[c[b+180>>2]>>2]|0;b=c[c[g+180>>2]>>2]|0}}while(0);if(e|0?(c[i+176>>2]|0)==1:0){g=0;d=e;b=c[c[i+172>>2]>>2]|0;while(1){if((g|0)>=2){b=0;break a}b=c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0;d=c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0;if((b|0)==(d|0)){b=0;break a}f=c[b+16>>2]|0;b=c[d+16>>2]|0;if(j^(c[f+236>>2]|0)>(c[b+236>>2]|0)){b=1;break a}if((c[f+176>>2]|0)!=1){b=0;break a}if(!(a[f+156>>0]|0)){b=0;break a}if((c[b+176>>2]|0)!=1){b=0;break a}if(!(a[b+156>>0]|0)){b=0;break a}g=g+1|0;d=c[c[b+172>>2]>>2]|0;b=c[c[f+172>>2]>>2]|0}}else b=0}else b=0;while(0);return b|0}function Pg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+h[c+8>>3]+ +h[b+8>>3];h[a>>3]=+h[c>>3]+ +h[b>>3];h[a+8>>3]=d;return}function Qg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0;d=+h[b+8>>3];e=+h[b>>3];return (~~((+h[c>>3]-e)*(+h[a+8>>3]-d)-(+h[a>>3]-e)*(+h[c+8>>3]-d))|0)>0|0}function Rg(b,d,e,f,g,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0.0,w=0.0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;R=l;l=l+256|0;D=R+232|0;C=R+216|0;P=R+88|0;O=R+80|0;K=R+64|0;L=R+200|0;M=R+184|0;N=R;E=R+168|0;F=R+152|0;G=R+136|0;H=R+120|0;I=R+104|0;B=c[g>>2]&3;J=c[((B|0)==3?g:g+48|0)+40>>2]|0;B=c[((B|0)==2?g:g+-48|0)+40>>2]|0;do if((HJ(J)|0)!=2?(HJ(B)|0)!=2:0){g=0;j=0;k=0;while(1){if((k|0)>=(f|0))break;A=c[(c[d+(k+e<<2)>>2]|0)+16>>2]|0;g=g+((c[A+96>>2]|0)!=0&1)|0;if(!((a[A+44>>0]|0)==0?(a[A+84>>0]|0)==0:0))j=1;k=k+1|0}if(!j)if(!g){Tg(J,B,d,e,f,i);break}else{Yg(J,B,d,e,f,i,g);break}y=uH(156)|0;z=Zg(b,y)|0;t=vA(z,85383,1)|0;Az(t,134401,280,1)|0;zx(t,87076,87090)|0;m=+h[(c[B+16>>2]|0)+16>>3];s=+h[(c[J+16>>2]|0)+16>>3];A=b+16|0;q=(c[(c[A>>2]|0)+116>>2]&1|0)==0;r=q?B:J;q=q?J:B;t=_g(t,q)|0;u=_g(z,r)|0;g=0;p=0;while(1){if((p|0)>=(f|0))break;j=d+(p+e<<2)|0;while(1){o=c[j>>2]|0;n=o+16|0;j=c[n>>2]|0;if(!(a[j+112>>0]|0))break;else j=j+116|0}if((c[((c[o>>2]&3|0)==3?o:o+48|0)+40>>2]|0)==(q|0))k=$g(z,t,u,o)|0;else k=$g(z,u,t,o)|0;j=c[n>>2]|0;c[j+120>>2]=k;if(!g)if((a[j+44>>0]|0)==0?(a[j+84>>0]|0)==0:0){c[(c[k+16>>2]|0)+120>>2]=o;g=k}else g=0;p=p+1|0}if(!g)x=Rx(z,t,u,0,1)|0;else x=g;rx(x,c[46404]|0,85387)|0;g=z+16|0;n=c[g>>2]|0;c[n+144>>2]=c[(c[A>>2]|0)+144>>2];c[n+188>>2]=z;$M(z,i);Qf(z);zj(z,0);Jh(z,0);Mi(z,0);q=q+16|0;i=c[q>>2]|0;n=c[r+16>>2]|0;r=t+16|0;o=c[r>>2]|0;p=o+16|0;v=+(~~m|0);w=+(~~((+h[(c[u+16>>2]|0)+16>>3]+ +h[p>>3])*.5)|0);m=+(~~s|0);s=+(~~((+h[i+16>>3]-+h[i+96>>3]+ +h[n+16>>3]+ +h[n+88>>3])*.5)|0);n=o+24|0;g=(c[g>>2]|0)+192|0;while(1){j=c[g>>2]|0;if(!j)break;do if((j|0)!=(t|0)){g=c[j+16>>2]|0;k=g+24|0;if((j|0)==(u|0)){h[k>>3]=m;h[g+16>>3]=w;break}else{h[k>>3]=s;break}}else{h[n>>3]=v;h[p>>3]=w;g=o}while(0);g=g+164|0}tk(z);lg(z,0);eJ(z);k=c[q>>2]|0;g=c[r>>2]|0;if(!(c[(c[A>>2]|0)+116>>2]&1)){j=g+16|0;m=+h[k+24>>3]-+h[g+24>>3]}else{j=g+24|0;m=+h[g+16>>3]+ +h[k+24>>3]}h[K>>3]=+h[k+16>>3]-+h[j>>3];h[K+8>>3]=m;i=N+16|0;t=N+32|0;u=N+48|0;r=0;while(1){if((r|0)>=(f|0))break;g=d+(r+e<<2)|0;while(1){j=c[g>>2]|0;q=j+16|0;g=c[q>>2]|0;if(!(a[g+112>>0]|0))break;else g=g+116|0}o=c[g+120>>2]|0;p=o+16|0;g=c[p>>2]|0;if(!((o|0)==(x|0)&(c[g+120>>2]|0)==0)){n=c[c[g+8>>2]>>2]|0;o=n+4|0;j=PK(j,c[o>>2]|0)|0;c[j+8>>2]=c[n+8>>2];g=j+16|0;k=n+16|0;S=c[(c[A>>2]|0)+116>>2]&1;c[C>>2]=c[k>>2];c[C+4>>2]=c[k+4>>2];c[C+8>>2]=c[k+8>>2];c[C+12>>2]=c[k+12>>2];c[D>>2]=c[K>>2];c[D+4>>2]=c[K+4>>2];c[D+8>>2]=c[K+8>>2];c[D+12>>2]=c[K+12>>2];ah(L,C,D,S);c[g>>2]=c[L>>2];c[g+4>>2]=c[L+4>>2];c[g+8>>2]=c[L+8>>2];c[g+12>>2]=c[L+12>>2];c[j+12>>2]=c[n+12>>2];g=j+32|0;S=n+32|0;k=c[(c[A>>2]|0)+116>>2]&1;c[C>>2]=c[S>>2];c[C+4>>2]=c[S+4>>2];c[C+8>>2]=c[S+8>>2];c[C+12>>2]=c[S+12>>2];c[D>>2]=c[K>>2];c[D+4>>2]=c[K+4>>2];c[D+8>>2]=c[K+8>>2];c[D+12>>2]=c[K+12>>2];ah(M,C,D,k);c[g>>2]=c[M>>2];c[g+4>>2]=c[M+4>>2];c[g+8>>2]=c[M+8>>2];c[g+12>>2]=c[M+12>>2];g=0;while(1){if((g|0)>=(c[o>>2]|0))break;k=(c[j>>2]|0)+(g<<4)|0;T=(c[n>>2]|0)+(g<<4)|0;S=c[(c[A>>2]|0)+116>>2]&1;c[C>>2]=c[T>>2];c[C+4>>2]=c[T+4>>2];c[C+8>>2]=c[T+8>>2];c[C+12>>2]=c[T+12>>2];c[D>>2]=c[K>>2];c[D+4>>2]=c[K+4>>2];c[D+8>>2]=c[K+8>>2];c[D+12>>2]=c[K+12>>2];ah(E,C,D,S);c[k>>2]=c[E>>2];c[k+4>>2]=c[E+4>>2];c[k+8>>2]=c[E+8>>2];c[k+12>>2]=c[E+12>>2];c[N>>2]=c[E>>2];c[N+4>>2]=c[E+4>>2];c[N+8>>2]=c[E+8>>2];c[N+12>>2]=c[E+12>>2];k=g+1|0;if((k|0)>=(c[o>>2]|0)){Q=48;break}S=(c[j>>2]|0)+(k<<4)|0;k=(c[n>>2]|0)+(k<<4)|0;T=c[(c[A>>2]|0)+116>>2]&1;c[C>>2]=c[k>>2];c[C+4>>2]=c[k+4>>2];c[C+8>>2]=c[k+8>>2];c[C+12>>2]=c[k+12>>2];c[D>>2]=c[K>>2];c[D+4>>2]=c[K+4>>2];c[D+8>>2]=c[K+8>>2];c[D+12>>2]=c[K+12>>2];ah(F,C,D,T);c[S>>2]=c[F>>2];c[S+4>>2]=c[F+4>>2];c[S+8>>2]=c[F+8>>2];c[S+12>>2]=c[F+12>>2];c[i>>2]=c[F>>2];c[i+4>>2]=c[F+4>>2];c[i+8>>2]=c[F+8>>2];c[i+12>>2]=c[F+12>>2];S=g+2|0;T=(c[j>>2]|0)+(S<<4)|0;S=(c[n>>2]|0)+(S<<4)|0;k=c[(c[A>>2]|0)+116>>2]&1;c[C>>2]=c[S>>2];c[C+4>>2]=c[S+4>>2];c[C+8>>2]=c[S+8>>2];c[C+12>>2]=c[S+12>>2];c[D>>2]=c[K>>2];c[D+4>>2]=c[K+4>>2];c[D+8>>2]=c[K+8>>2];c[D+12>>2]=c[K+12>>2];ah(G,C,D,k);c[T>>2]=c[G>>2];c[T+4>>2]=c[G+4>>2];c[T+8>>2]=c[G+8>>2];c[T+12>>2]=c[G+12>>2];c[t>>2]=c[G>>2];c[t+4>>2]=c[G+4>>2];c[t+8>>2]=c[G+8>>2];c[t+12>>2]=c[G+12>>2];T=g+3|0;k=(c[n>>2]|0)+(T<<4)|0;S=c[(c[A>>2]|0)+116>>2]&1;c[C>>2]=c[k>>2];c[C+4>>2]=c[k+4>>2];c[C+8>>2]=c[k+8>>2];c[C+12>>2]=c[k+12>>2];c[D>>2]=c[K>>2];c[D+4>>2]=c[K+4>>2];c[D+8>>2]=c[K+8>>2];c[D+12>>2]=c[K+12>>2];ah(H,C,D,S);c[u>>2]=c[H>>2];c[u+4>>2]=c[H+4>>2];c[u+8>>2]=c[H+8>>2];c[u+12>>2]=c[H+12>>2];YE((c[A>>2]|0)+16|0,N);g=T}if((Q|0)==48)Q=0;g=c[(c[q>>2]|0)+96>>2]|0;if(g|0){T=g+56|0;p=(c[(c[p>>2]|0)+96>>2]|0)+56|0;S=c[(c[A>>2]|0)+116>>2]&1;c[C>>2]=c[p>>2];c[C+4>>2]=c[p+4>>2];c[C+8>>2]=c[p+8>>2];c[C+12>>2]=c[p+12>>2];c[D>>2]=c[K>>2];c[D+4>>2]=c[K+4>>2];c[D+8>>2]=c[K+8>>2];c[D+12>>2]=c[K+12>>2];ah(I,C,D,S);c[T>>2]=c[I>>2];c[T+4>>2]=c[I+4>>2];c[T+8>>2]=c[I+8>>2];c[T+12>>2]=c[I+12>>2];T=c[(c[q>>2]|0)+96>>2]|0;a[T+81>>0]=1;kM(b,T)}}r=r+1|0}bh(z,y)}else Q=3;while(0);if((Q|0)==3?(c[45968]|0)==0:0){c[45968]=1;Pw(0,85260,O)|0;Q=ry(J)|0;S=(ey(b)|0)!=0;T=ry(B)|0;c[P>>2]=Q;c[P+4>>2]=S?134656:138665;c[P+8>>2]=T;Pw(3,85366,P)|0}l=R;return}function Sg(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0;z=l;l=l+1600|0;u=z+1552|0;n=z+1536|0;t=z+840|0;v=z+144|0;w=z+1584|0;j=z+32|0;s=z+16|0;o=z;q=c[f>>2]&3;p=c[((q|0)==3?f:f+48|0)+40>>2]|0;x=f+-48|0;q=c[((q|0)==2?f:x)+40>>2]|0;r=f+16|0;k=c[r>>2]|0;i=c[k+172>>2]|0;while(1){m=c[(c[i+16>>2]|0)+172>>2]|0;if(!m)break;else i=m}k=(c[k+96>>2]|0)+56|0;i=(c[((c[i>>2]&3|0)==3?i:i+48|0)+40>>2]|0)+16|0;m=(c[i>>2]|0)+16|0;c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];k=c[r>>2]|0;a[(c[k+96>>2]|0)+81>>0]=1;if((g|0)!=2){k=c[i>>2]|0;C=+h[k+16>>3];E=C-+h[k+88>>3];C=+h[k+96>>3]+C;B=+h[k+24>>3];D=+h[k+80>>3]*.5+B;k=c[(c[b+16>>2]|0)+196>>2]|0;m=c[p+16>>2]|0;j=c[m+232>>2]|0;B=+(~~(+(~~(B-+h[k+(j<<6)+16>>3]-+h[m+24>>3]+ +h[k+(j<<6)+24>>3])|0)*.16666666666666666)|0);B=D-(B<5.0?5.0:B);Vg(b,d,e,p,f,t,1);Vg(b,d,e,q,f,v,0);j=t+52|0;k=c[j>>2]|0;m=k+-1|0;A=+h[t+56+(m<<5)>>3];h[18830]=A;h[18831]=+h[t+56+(m<<5)+24>>3];h[18832]=E;h[18833]=B;h[18834]=A;h[18835]=B;m=v+52|0;i=(c[m>>2]|0)+-1|0;A=+h[v+56+(i<<5)+16>>3];h[18836]=A;h[18837]=D;h[18838]=C;h[18841]=B;h[18839]=+h[v+56+(i<<5)+24>>3];h[18840]=A;i=0;while(1){if((i|0)>=(k|0)){i=0;break}k=t+56+(i<<5)|0;c[u>>2]=c[k>>2];c[u+4>>2]=c[k+4>>2];c[u+8>>2]=c[k+8>>2];c[u+12>>2]=c[k+12>>2];c[u+16>>2]=c[k+16>>2];c[u+20>>2]=c[k+20>>2];c[u+24>>2]=c[k+24>>2];c[u+28>>2]=c[k+28>>2];SK(e,u);i=i+1|0;k=c[j>>2]|0}while(1){if((i|0)==3)break;t=150640+(i<<5)|0;c[u>>2]=c[t>>2];c[u+4>>2]=c[t+4>>2];c[u+8>>2]=c[t+8>>2];c[u+12>>2]=c[t+12>>2];c[u+16>>2]=c[t+16>>2];c[u+20>>2]=c[t+20>>2];c[u+24>>2]=c[t+24>>2];c[u+28>>2]=c[t+28>>2];SK(e,u);i=i+1|0}j=c[m>>2]|0;while(1){i=j+-1|0;if((j|0)<=0)break;j=v+56+(i<<5)|0;c[u>>2]=c[j>>2];c[u+4>>2]=c[j+4>>2];c[u+8>>2]=c[j+8>>2];c[u+12>>2]=c[j+12>>2];c[u+16>>2]=c[j+16>>2];c[u+20>>2]=c[j+20>>2];c[u+24>>2]=c[j+24>>2];c[u+28>>2]=c[j+28>>2];SK(e,u);j=i}if((g|0)==10)j=sJ(e,w)|0;else j=yJ(e,w)|0;i=c[w>>2]|0;if(i|0)y=17}else{i=(c[p+16>>2]|0)+16|0;v=k+16|0;c[n>>2]=c[i>>2];c[n+4>>2]=c[i+4>>2];c[n+8>>2]=c[i+8>>2];c[n+12>>2]=c[i+12>>2];c[u>>2]=c[v>>2];c[u+4>>2]=c[v+4>>2];c[u+8>>2]=c[v+8>>2];c[u+12>>2]=c[v+12>>2];Pg(s,n,u);v=(c[q+16>>2]|0)+16|0;i=(c[r>>2]|0)+56|0;c[n>>2]=c[v>>2];c[n+4>>2]=c[v+4>>2];c[n+8>>2]=c[v+8>>2];c[n+12>>2]=c[v+12>>2];c[u>>2]=c[i>>2];c[u+4>>2]=c[i+4>>2];c[u+8>>2]=c[i+8>>2];c[u+12>>2]=c[i+12>>2];Pg(o,n,u);i=c[(c[r>>2]|0)+96>>2]|0;D=+h[i+56>>3];E=+h[i+64>>3]-+h[i+32>>3]*.5;i=j+16|0;c[j>>2]=c[s>>2];c[j+4>>2]=c[s+4>>2];c[j+8>>2]=c[s+8>>2];c[j+12>>2]=c[s+12>>2];c[i>>2]=c[s>>2];c[i+4>>2]=c[s+4>>2];c[i+8>>2]=c[s+8>>2];c[i+12>>2]=c[s+12>>2];i=j+32|0;v=j+48|0;y=j+64|0;h[j+64>>3]=D;h[j+72>>3]=E;c[v>>2]=c[y>>2];c[v+4>>2]=c[y+4>>2];c[v+8>>2]=c[y+8>>2];c[v+12>>2]=c[y+12>>2];c[i>>2]=c[y>>2];c[i+4>>2]=c[y+4>>2];c[i+8>>2]=c[y+8>>2];c[i+12>>2]=c[y+12>>2];i=j+80|0;y=j+96|0;c[y>>2]=c[o>>2];c[y+4>>2]=c[o+4>>2];c[y+8>>2]=c[o+8>>2];c[y+12>>2]=c[o+12>>2];c[i>>2]=c[o>>2];c[i+4>>2]=c[o+4>>2];c[i+8>>2]=c[o+8>>2];c[i+12>>2]=c[o+12>>2];c[w>>2]=7;i=7;y=17}if((y|0)==17)QK(f,c[((c[f>>2]&3|0)==2?f:x)+40>>2]|0,j,i,17296);l=z;return}function Tg(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0.0,u=0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;N=l;l=l+352|0;x=N+336|0;w=N+320|0;L=N+128|0;u=N+304|0;y=N+288|0;M=N+112|0;E=N+96|0;F=N+80|0;G=N+64|0;H=N+48|0;I=N+32|0;J=N+16|0;K=N;a=a+16|0;q=(c[a>>2]|0)+16|0;v=(c[d+(e<<2)>>2]|0)+16|0;s=(c[v>>2]|0)+16|0;c[w>>2]=c[q>>2];c[w+4>>2]=c[q+4>>2];c[w+8>>2]=c[q+8>>2];c[w+12>>2]=c[q+12>>2];c[x>>2]=c[s>>2];c[x+4>>2]=c[s+4>>2];c[x+8>>2]=c[s+8>>2];c[x+12>>2]=c[s+12>>2];Pg(u,w,x);C=+h[u>>3];D=+h[u+8>>3];u=(c[b+16>>2]|0)+16|0;v=(c[v>>2]|0)+56|0;c[w>>2]=c[u>>2];c[w+4>>2]=c[u+4>>2];c[w+8>>2]=c[u+8>>2];c[w+12>>2]=c[u+12>>2];c[x>>2]=c[v>>2];c[x+4>>2]=c[v+4>>2];c[x+8>>2]=c[v+8>>2];c[x+12>>2]=c[v+12>>2];Pg(y,w,x);A=+h[y>>3];B=+h[y+8>>3];if((f|0)>1){z=+h[(c[a>>2]|0)+80>>3];i=z*.5;z=z/+(f+-1|0)}else{i=0.0;z=0.0}p=(g|8|0)==10;m=L+8|0;q=L+16|0;r=(A+C*2.0)*.3333333333333333;s=L+32|0;t=(A*2.0+C)*.3333333333333333;n=L+24|0;u=L+48|0;v=L+64|0;w=L+80|0;x=L+96|0;y=L+112|0;k=L+128|0;o=L+136|0;i=D-i;b=0;while(1){if((b|0)>=(f|0))break;j=c[d+(b+e<<2)>>2]|0;h[L>>3]=C;h[m>>3]=D;if(p){Xg(M,r,i);c[q>>2]=c[M>>2];c[q+4>>2]=c[M+4>>2];c[q+8>>2]=c[M+8>>2];c[q+12>>2]=c[M+12>>2];Xg(E,t,i);c[s>>2]=c[E>>2];c[s+4>>2]=c[E+4>>2];c[s+8>>2]=c[E+8>>2];c[s+12>>2]=c[E+12>>2];a=4;g=3}else{h[q>>3]=C;h[n>>3]=D;Xg(F,r,i);c[s>>2]=c[F>>2];c[s+4>>2]=c[F+4>>2];c[s+8>>2]=c[F+8>>2];c[s+12>>2]=c[F+12>>2];Xg(G,r,i);c[u>>2]=c[G>>2];c[u+4>>2]=c[G+4>>2];c[u+8>>2]=c[G+8>>2];c[u+12>>2]=c[G+12>>2];Xg(H,r,i);c[v>>2]=c[H>>2];c[v+4>>2]=c[H+4>>2];c[v+8>>2]=c[H+8>>2];c[v+12>>2]=c[H+12>>2];Xg(I,t,i);c[w>>2]=c[I>>2];c[w+4>>2]=c[I+4>>2];c[w+8>>2]=c[I+8>>2];c[w+12>>2]=c[I+12>>2];Xg(J,t,i);c[x>>2]=c[J>>2];c[x+4>>2]=c[J+4>>2];c[x+8>>2]=c[J+8>>2];c[x+12>>2]=c[J+12>>2];Xg(K,t,i);c[y>>2]=c[K>>2];c[y+4>>2]=c[K+4>>2];c[y+8>>2]=c[K+8>>2];c[y+12>>2]=c[K+12>>2];h[k>>3]=A;h[o>>3]=B;a=10;g=9}h[L+(g<<4)>>3]=A;h[L+(g<<4)+8>>3]=B;QK(j,c[((c[j>>2]&3|0)==2?j:j+-48|0)+40>>2]|0,L,a,17296);i=i+z;b=b+1|0}l=N;return}function Ug(a,d,e,f,g,i,j,k){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0;x=l;l=l+1440|0;t=x+1392|0;v=x+1424|0;w=x+696|0;u=x;r=c[j>>2]&3;q=c[((r|0)==3?j:j+48|0)+40>>2]|0;r=c[((r|0)==2?j:j+-48|0)+40>>2]|0;m=c[q+16>>2]|0;o=c[m+232>>2]|0;p=c[a+16>>2]|0;if((o|0)<(b[p+238>>1]|0)){y=c[p+196>>2]|0;p=o+1|0;n=+h[m+24>>3]-+h[y+(o<<6)+32>>3]-+h[(c[(c[c[y+(p<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]-+h[y+(p<<6)+40>>3]}else n=+(c[p+252>>2]|0);z=+(i+1|0);s=+(c[d+12>>2]|0)/z;n=n/z;Wg(a,d,e,q,j,w,1);Wg(a,d,e,r,j,u,0);r=w+52|0;j=u+52|0;a=(k|0)==0;d=e+80|0;m=0;while(1){if((m|0)>=(i|0))break;q=c[f+(m+g<<2)>>2]|0;p=c[r>>2]|0;o=p+-1|0;D=+h[w+56+(o<<5)>>3];B=+h[w+56+(o<<5)+8>>3];C=+h[w+56+(o<<5)+16>>3];h[18830]=D;h[18833]=B;m=m+1|0;z=+(m|0);A=s*z;h[18832]=C+A;z=B-n*z;h[18831]=z;h[18834]=D;h[18837]=z;o=(c[j>>2]|0)+-1|0;D=+h[u+56+(o<<5)+16>>3];h[18836]=D;h[18835]=z-n;B=+h[u+56+(o<<5)>>3];C=+h[u+56+(o<<5)+8>>3];h[18840]=D;h[18841]=C;h[18838]=B-A;h[18839]=z;o=0;while(1){if((o|0)>=(p|0)){o=0;break}p=w+56+(o<<5)|0;c[t>>2]=c[p>>2];c[t+4>>2]=c[p+4>>2];c[t+8>>2]=c[p+8>>2];c[t+12>>2]=c[p+12>>2];c[t+16>>2]=c[p+16>>2];c[t+20>>2]=c[p+20>>2];c[t+24>>2]=c[p+24>>2];c[t+28>>2]=c[p+28>>2];SK(e,t);o=o+1|0;p=c[r>>2]|0}while(1){if((o|0)==3)break;y=150640+(o<<5)|0;c[t>>2]=c[y>>2];c[t+4>>2]=c[y+4>>2];c[t+8>>2]=c[y+8>>2];c[t+12>>2]=c[y+12>>2];c[t+16>>2]=c[y+16>>2];c[t+20>>2]=c[y+20>>2];c[t+24>>2]=c[y+24>>2];c[t+28>>2]=c[y+28>>2];SK(e,t);o=o+1|0}p=c[j>>2]|0;while(1){o=p+-1|0;if((p|0)<=0)break;p=u+56+(o<<5)|0;c[t>>2]=c[p>>2];c[t+4>>2]=c[p+4>>2];c[t+8>>2]=c[p+8>>2];c[t+12>>2]=c[p+12>>2];c[t+16>>2]=c[p+16>>2];c[t+20>>2]=c[p+20>>2];c[t+24>>2]=c[p+24>>2];c[t+28>>2]=c[p+28>>2];SK(e,t);p=o}if(a)o=yJ(e,v)|0;else o=sJ(e,v)|0;p=c[v>>2]|0;if(!p)break;QK(q,c[((c[q>>2]&3|0)==2?q:q+-48|0)+40>>2]|0,o,p,17296);c[d>>2]=0}l=x;return}function Vg(a,b,d,e,f,g,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0.0;n=l;l=l+128|0;j=n+96|0;k=n+64|0;o=n+32|0;m=n;yg(o,a,b,e,0,f);c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[g+12>>2]=c[o+12>>2];c[g+16>>2]=c[o+16>>2];c[g+20>>2]=c[o+20>>2];c[g+24>>2]=c[o+24>>2];c[g+28>>2]=c[o+28>>2];c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];c[k+8>>2]=c[o+8>>2];c[k+12>>2]=c[o+12>>2];c[k+16>>2]=c[o+16>>2];c[k+20>>2]=c[o+20>>2];c[k+24>>2]=c[o+24>>2];c[k+28>>2]=c[o+28>>2];c[g+48>>2]=4;if(!(i<<24>>24))WK(d,f,2,g,0);else TK(d,f,2,g,0);b=g+52|0;f=(c[b>>2]|0)+-1|0;o=k+24|0;h[o>>3]=+h[g+56+(f<<5)+24>>3];i=k+8|0;h[i>>3]=+h[g+56+(f<<5)+8>>3];e=c[e+16>>2]|0;p=+h[(c[(c[a+16>>2]|0)+196>>2]|0)+(c[e+232>>2]<<6)+24>>3]+ +h[e+24>>3];c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];c[j+16>>2]=c[k+16>>2];c[j+20>>2]=c[k+20>>2];c[j+24>>2]=c[k+24>>2];c[j+28>>2]=c[k+28>>2];Ag(m,j,4,p);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];c[k+16>>2]=c[m+16>>2];c[k+20>>2]=c[m+20>>2];c[k+24>>2]=c[m+24>>2];c[k+28>>2]=c[m+28>>2];if(+h[k>>3]<+h[k+16>>3]?+h[i>>3]<+h[o>>3]:0){o=c[b>>2]|0;c[b>>2]=o+1;o=g+56+(o<<5)|0;c[o>>2]=c[k>>2];c[o+4>>2]=c[k+4>>2];c[o+8>>2]=c[k+8>>2];c[o+12>>2]=c[k+12>>2];c[o+16>>2]=c[k+16>>2];c[o+20>>2]=c[k+20>>2];c[o+24>>2]=c[k+24>>2];c[o+28>>2]=c[k+28>>2]}l=n;return}function Wg(a,b,d,e,f,g,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0.0;n=l;l=l+128|0;j=n+96|0;k=n+64|0;o=n+32|0;m=n;yg(o,a,b,e,0,f);c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[g+12>>2]=c[o+12>>2];c[g+16>>2]=c[o+16>>2];c[g+20>>2]=c[o+20>>2];c[g+24>>2]=c[o+24>>2];c[g+28>>2]=c[o+28>>2];c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];c[k+8>>2]=c[o+8>>2];c[k+12>>2]=c[o+12>>2];c[k+16>>2]=c[o+16>>2];c[k+20>>2]=c[o+20>>2];c[k+24>>2]=c[o+24>>2];c[k+28>>2]=c[o+28>>2];c[g+48>>2]=1;if(!(i<<24>>24))WK(d,f,2,g,0);else TK(d,f,2,g,0);b=g+52|0;f=(c[b>>2]|0)+-1|0;o=k+24|0;h[o>>3]=+h[g+56+(f<<5)+24>>3];i=k+8|0;h[i>>3]=+h[g+56+(f<<5)+8>>3];e=c[e+16>>2]|0;p=+h[e+24>>3]-+h[(c[(c[a+16>>2]|0)+196>>2]|0)+(c[e+232>>2]<<6)+24>>3];c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];c[j+16>>2]=c[k+16>>2];c[j+20>>2]=c[k+20>>2];c[j+24>>2]=c[k+24>>2];c[j+28>>2]=c[k+28>>2];Ag(m,j,1,p);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];c[k+16>>2]=c[m+16>>2];c[k+20>>2]=c[m+20>>2];c[k+24>>2]=c[m+24>>2];c[k+28>>2]=c[m+28>>2];if(+h[k>>3]<+h[k+16>>3]?+h[i>>3]<+h[o>>3]:0){o=c[b>>2]|0;c[b>>2]=o+1;o=g+56+(o<<5)|0;c[o>>2]=c[k>>2];c[o+4>>2]=c[k+4>>2];c[o+8>>2]=c[k+8>>2];c[o+12>>2]=c[k+12>>2];c[o+16>>2]=c[k+16>>2];c[o+20>>2]=c[k+20>>2];c[o+24>>2]=c[k+24>>2];c[o+28>>2]=c[k+28>>2]}l=n;return}function Xg(a,b,c){a=a|0;b=+b;c=+c;h[a>>3]=b;h[a+8>>3]=c;return}function Yg(b,d,e,f,g,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0,A=0.0,B=0.0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0.0;Y=l;l=l+288|0;R=Y+256|0;Q=Y+240|0;P=Y+224|0;V=Y+280|0;W=Y+272|0;X=Y+32|0;S=Y+16|0;T=Y;m=Y+208|0;n=Y+192|0;o=c[e+(f<<2)>>2]|0;U=uH(g<<2)|0;k=0;while(1){if((k|0)>=(g|0))break;c[U+(k<<2)>>2]=c[e+(k+f<<2)>>2];k=k+1|0}_0(U,g,4,59);e=b+16|0;f=(c[e>>2]|0)+16|0;o=o+16|0;C=(c[o>>2]|0)+16|0;c[Q>>2]=c[f>>2];c[Q+4>>2]=c[f+4>>2];c[Q+8>>2]=c[f+8>>2];c[Q+12>>2]=c[f+12>>2];c[R>>2]=c[C>>2];c[R+4>>2]=c[C+4>>2];c[R+8>>2]=c[C+8>>2];c[R+12>>2]=c[C+12>>2];Pg(m,Q,R);c[S>>2]=c[m>>2];c[S+4>>2]=c[m+4>>2];c[S+8>>2]=c[m+8>>2];c[S+12>>2]=c[m+12>>2];C=d+16|0;f=(c[C>>2]|0)+16|0;o=(c[o>>2]|0)+56|0;c[Q>>2]=c[f>>2];c[Q+4>>2]=c[f+4>>2];c[Q+8>>2]=c[f+8>>2];c[Q+12>>2]=c[f+12>>2];c[R>>2]=c[o>>2];c[R+4>>2]=c[o+4>>2];c[R+8>>2]=c[o+8>>2];c[R+12>>2]=c[o+12>>2];Pg(n,Q,R);c[T>>2]=c[n>>2];c[T+4>>2]=c[n+4>>2];c[T+8>>2]=c[n+8>>2];c[T+12>>2]=c[n+12>>2];w=+h[(c[e>>2]|0)+96>>3]+ +h[S>>3];x=+h[T>>3]-+h[(c[C>>2]|0)+88>>3];u=x+w;v=u*.5;C=c[U>>2]|0;c[X>>2]=c[S>>2];c[X+4>>2]=c[S+4>>2];c[X+8>>2]=c[S+8>>2];c[X+12>>2]=c[S+12>>2];o=X+16|0;c[o>>2]=c[S>>2];c[o+4>>2]=c[S+4>>2];c[o+8>>2]=c[S+8>>2];c[o+12>>2]=c[S+12>>2];e=X+32|0;c[e>>2]=c[T>>2];c[e+4>>2]=c[T+4>>2];c[e+8>>2]=c[T+8>>2];c[e+12>>2]=c[T+12>>2];f=X+48|0;c[f>>2]=c[T>>2];c[f+4>>2]=c[T+4>>2];c[f+8>>2]=c[T+8>>2];c[f+12>>2]=c[T+12>>2];QK(C,c[((c[C>>2]&3|0)==2?C:C+-48|0)+40>>2]|0,X,4,17296);C=c[(c[C+16>>2]|0)+96>>2]|0;h[C+56>>3]=v;z=S+8|0;r=+h[z>>3];s=+h[C+32>>3];h[C+64>>3]=(s+6.0)*.5+r;a[C+81>>0]=1;r=r+3.0;B=+h[C+24>>3];A=(u-B)*.5;B=(B+u)*.5;C=X+24|0;D=X+40|0;E=X+56|0;F=X+64|0;G=T+8|0;H=X+72|0;I=X+80|0;J=X+88|0;K=X+96|0;L=X+104|0;M=X+112|0;N=X+120|0;O=V+4|0;n=(i|0)==6&1;q=0.0;p=0.0;s=s+r;m=1;while(1){if((m|0)>=(j|0)){y=6;break}d=c[U+(m<<2)>>2]|0;if(!(m&1)){c[X>>2]=c[S>>2];c[X+4>>2]=c[S+4>>2];c[X+8>>2]=c[S+8>>2];c[X+12>>2]=c[S+12>>2];h[o>>3]=A;h[C>>3]=+h[z>>3];h[e>>3]=A;h[D>>3]=s;h[f>>3]=B;h[E>>3]=s;h[F>>3]=B;t=+h[G>>3];h[H>>3]=t;Z=+h[T>>3];h[I>>3]=Z;h[J>>3]=t;h[K>>3]=Z;Z=s+6.0;h[L>>3]=Z;h[M>>3]=+h[S>>3];h[N>>3]=Z;s=+h[(c[(c[d+16>>2]|0)+96>>2]|0)+32>>3];t=Z+s*.5;s=Z+s}else{k=d+16|0;b=c[(c[k>>2]|0)+96>>2]|0;if((m|0)==1){p=+h[b+24>>3];q=(p+u)*.5;p=(u-p)*.5}r=r+-6.0-+h[b+32>>3];c[X>>2]=c[S>>2];c[X+4>>2]=c[S+4>>2];c[X+8>>2]=c[S+8>>2];c[X+12>>2]=c[S+12>>2];h[o>>3]=+h[S>>3];t=r+-6.0;h[C>>3]=t;h[e>>3]=+h[T>>3];h[D>>3]=t;c[f>>2]=c[T>>2];c[f+4>>2]=c[T+4>>2];c[f+8>>2]=c[T+8>>2];c[f+12>>2]=c[T+12>>2];h[F>>3]=q;h[H>>3]=+h[G>>3];h[I>>3]=q;h[J>>3]=r;h[K>>3]=p;h[L>>3]=r;h[M>>3]=p;h[N>>3]=+h[z>>3];t=+h[(c[(c[k>>2]|0)+96>>2]|0)+32>>3]*.5+r}c[O>>2]=8;c[V>>2]=X;c[P>>2]=c[S>>2];c[P+4>>2]=c[S+4>>2];c[P+8>>2]=c[S+8>>2];c[P+12>>2]=c[S+12>>2];c[Q>>2]=c[T>>2];c[Q+4>>2]=c[T+4>>2];c[Q+8>>2]=c[T+8>>2];c[Q+12>>2]=c[T+12>>2];c[R>>2]=c[V>>2];c[R+4>>2]=c[V+4>>2];k=oJ(P,Q,R,W,n)|0;b=c[W>>2]|0;if(!b)break;i=c[(c[d+16>>2]|0)+96>>2]|0;h[i+56>>3]=v;h[i+64>>3]=t;a[i+81>>0]=1;QK(d,c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0,k,b,17296);m=m+1|0}a:do if((y|0)==6){v=(x+w*2.0)*.3333333333333333;u=(x*2.0+w)*.3333333333333333;while(1){if((m|0)>=(g|0))break;d=c[U+(m<<2)>>2]|0;if(!(m&1)){c[X>>2]=c[S>>2];c[X+4>>2]=c[S+4>>2];c[X+8>>2]=c[S+8>>2];c[X+12>>2]=c[S+12>>2];h[o>>3]=A;h[C>>3]=+h[z>>3];h[e>>3]=A;h[D>>3]=s;h[f>>3]=B;h[E>>3]=s;h[F>>3]=B;t=+h[G>>3];h[H>>3]=t;Z=+h[T>>3];h[I>>3]=Z;h[J>>3]=t;h[K>>3]=Z;Z=s+6.0;h[L>>3]=Z;h[M>>3]=+h[S>>3];s=Z;t=p;p=Z}else{y=(m|0)==1;t=y?v:p;q=y?u:q;p=r+-6.0;c[X>>2]=c[S>>2];c[X+4>>2]=c[S+4>>2];c[X+8>>2]=c[S+8>>2];c[X+12>>2]=c[S+12>>2];h[o>>3]=+h[S>>3];r=r+-12.0;h[C>>3]=r;h[e>>3]=+h[T>>3];h[D>>3]=r;c[f>>2]=c[T>>2];c[f+4>>2]=c[T+4>>2];c[f+8>>2]=c[T+8>>2];c[f+12>>2]=c[T+12>>2];h[F>>3]=q;h[H>>3]=+h[G>>3];h[I>>3]=q;h[J>>3]=p;h[K>>3]=t;h[L>>3]=p;h[M>>3]=t;r=p;p=+h[z>>3]}h[N>>3]=p;c[O>>2]=8;c[V>>2]=X;c[P>>2]=c[S>>2];c[P+4>>2]=c[S+4>>2];c[P+8>>2]=c[S+8>>2];c[P+12>>2]=c[S+12>>2];c[Q>>2]=c[T>>2];c[Q+4>>2]=c[T+4>>2];c[Q+8>>2]=c[T+8>>2];c[Q+12>>2]=c[T+12>>2];c[R>>2]=c[V>>2];c[R+4>>2]=c[V+4>>2];k=oJ(P,Q,R,W,n)|0;b=c[W>>2]|0;if(!b)break a;QK(d,c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0,k,b,17296);m=m+1|0;p=t}D_(U)}while(0);l=Y;return}function Zg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0;g=l;l=l+16|0;f=g;j=(ey(b)|0)==0;j=j?18488:18480;a[f>>0]=a[j>>0]|0;a[f+1>>0]=a[j+1>>0]|0;a[f+2>>0]=a[j+2>>0]|0;a[f+3>>0]=a[j+3>>0]|0;f=Xx(85398,f,0)|0;Az(f,134401,280,1)|0;nx(f,0,87076,191979)|0;j=uH(96)|0;e=c[f+16>>2]|0;c[e+8>>2]=j;i=c[b+16>>2]|0;k=c[i+8>>2]|0;h[j>>3]=+h[k>>3];h[j+24>>3]=+h[k+24>>3];a[e+115>>0]=a[i+115>>0]|0;c[e+116>>2]=c[i+116>>2]&1^1;c[e+248>>2]=c[i+248>>2];c[e+252>>2]=c[i+252>>2];e=sx(fz(b)|0,1,0)|0;while(1){if(!e)break;nx(f,1,c[e+8>>2]|0,c[e+12>>2]|0)|0;e=sx(fz(b)|0,1,e)|0}e=sx(fz(b)|0,2,0)|0;while(1){if(!e)break;nx(f,2,c[e+8>>2]|0,c[e+12>>2]|0)|0;e=sx(fz(b)|0,2,e)|0}if(!(nx(f,2,108382,0)|0))nx(f,2,108382,191979)|0;if(!(nx(f,2,108373,0)|0))nx(f,2,108373,191979)|0;ch(f,d);l=g;return f|0}function _g(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;a=az(a,ry(b)|0,1)|0;Az(a,134365,304,1)|0;Bx(b,a)|0;if((HJ(b)|0)==2){f=b+16|0;b=vH((W_(c[c[(c[f>>2]|0)+104>>2]>>2]|0)|0)+3|0)|0;c[d>>2]=c[c[(c[f>>2]|0)+104>>2]>>2];Y0(b,85393,d)|0;zx(a,105198,b)|0}l=e;return a|0}function $g(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=Rx(a,b,c,0,1)|0;Az(c,134378,176,1)|0;Bx(d,c)|0;return c|0}function ah(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0.0;i=l;l=l+32|0;g=i+16|0;f=i;if(e|0){j=+h[b>>3];e=b+8|0;h[b>>3]=+h[e>>3];h[e>>3]=-j};c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];Pg(a,f,g);l=i;return}function bh(a,b){a=a|0;b=b|0;c[46419]=c[b>>2];c[46423]=c[b+4>>2];c[46424]=c[b+8>>2];c[46404]=c[b+12>>2];c[46405]=c[b+16>>2];c[46411]=c[b+20>>2];c[46410]=c[b+24>>2];c[46409]=c[b+28>>2];c[46435]=c[b+32>>2];c[46427]=c[b+36>>2];c[46412]=c[b+40>>2];c[46422]=c[b+44>>2];c[46431]=c[b+48>>2];c[46430]=c[b+52>>2];c[46429]=c[b+56>>2];c[46434]=c[b+60>>2];c[46428]=c[b+64>>2];c[46413]=c[b+68>>2];c[46375]=c[b+72>>2];c[46376]=c[b+76>>2];c[46377]=c[b+80>>2];c[46387]=c[b+84>>2];c[46380]=c[b+88>>2];c[46381]=c[b+92>>2];c[46382]=c[b+96>>2];c[46384]=c[b+100>>2];c[46385]=c[b+104>>2];c[46388]=c[b+108>>2];c[46391]=c[b+112>>2];c[46389]=c[b+116>>2];c[46390]=c[b+120>>2];c[46393]=c[b+124>>2];c[46392]=c[b+128>>2];c[46394]=c[b+132>>2];c[46395]=c[b+136>>2];c[46386]=c[b+140>>2];c[46398]=c[b+144>>2];c[46370]=c[b+148>>2];c[46367]=c[b+152>>2];D_(b);Tf(a);$x(a)|0;return}function ch(a,b){a=a|0;b=b|0;c[b>>2]=c[46419];c[b+4>>2]=c[46423];c[b+8>>2]=c[46424];c[b+12>>2]=c[46404];c[b+16>>2]=c[46405];c[b+20>>2]=c[46411];c[b+24>>2]=c[46410];c[b+28>>2]=c[46409];c[b+32>>2]=c[46435];c[b+36>>2]=c[46427];c[b+40>>2]=c[46412];c[b+44>>2]=c[46422];c[b+48>>2]=c[46431];c[b+52>>2]=c[46430];c[b+56>>2]=c[46429];c[b+60>>2]=c[46434];c[b+64>>2]=c[46428];c[b+68>>2]=c[46413];c[b+72>>2]=c[46375];c[b+76>>2]=c[46376];c[b+80>>2]=c[46377];c[b+84>>2]=c[46387];c[b+88>>2]=c[46380];c[b+92>>2]=c[46381];c[b+96>>2]=c[46382];c[b+100>>2]=c[46384];c[b+104>>2]=c[46385];c[b+108>>2]=c[46388];c[b+112>>2]=c[46391];c[b+116>>2]=c[46389];c[b+120>>2]=c[46390];c[b+124>>2]=c[46393];c[b+128>>2]=c[46392];c[b+132>>2]=c[46394];c[b+136>>2]=c[46395];c[b+140>>2]=c[46386];c[b+144>>2]=c[46398];c[b+152>>2]=c[46367];c[b+148>>2]=c[46370];c[46419]=0;c[46423]=nx(a,2,87317,0)|0;c[46424]=nx(a,2,87326,0)|0;b=nx(a,2,98515,0)|0;c[46404]=b;if(!b)c[46404]=nx(a,2,98515,191979)|0;c[46405]=0;c[46411]=0;c[46410]=nx(a,2,98411,0)|0;c[46409]=nx(a,2,98402,0)|0;c[46435]=nx(a,2,98691,0)|0;c[46427]=0;c[46412]=nx(a,2,105198,0)|0;c[46422]=nx(a,2,85403,0)|0;c[46431]=0;c[46430]=nx(a,2,98591,0)|0;c[46429]=nx(a,2,98577,0)|0;c[46434]=nx(a,2,98682,0)|0;c[46428]=0;c[46413]=0;c[46375]=nx(a,1,137966,0)|0;c[46376]=nx(a,1,138034,0)|0;c[46377]=nx(a,1,105204,0)|0;c[46387]=0;c[46380]=nx(a,1,98402,0)|0;c[46381]=nx(a,1,98411,0)|0;c[46382]=0;c[46384]=nx(a,1,105198,0)|0;c[46385]=0;c[46388]=0;c[46391]=nx(a,1,98383,0)|0;c[46389]=nx(a,1,137994,0)|0;c[46390]=nx(a,1,98446,0)|0;c[46393]=nx(a,1,98458,0)|0;c[46392]=nx(a,1,98322,0)|0;c[46394]=nx(a,1,98463,0)|0;c[46395]=nx(a,1,85415,0)|0;c[46386]=0;c[46398]=0;c[46370]=nx(a,0,98383,0)|0;return}function dh(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0,g=0.0,i=0.0;d=c[(c[(c[a>>2]|0)+16>>2]|0)+96>>2]|0;a=c[(c[(c[b>>2]|0)+16>>2]|0)+96>>2]|0;b=(a|0)!=0;if(d)if(b?(f=+h[d+24>>3],i=+h[d+32>>3],e=+h[a+24>>3],g=+h[a+32>>3],!(f>e)):0)if(!(f<e))if(i>g)a=-1;else a=i<g&1;else a=1;else a=-1;else a=b&1;return a|0}function eh(a){a=a|0;var b=0,d=0,e=0;while(1){b=c[(c[a+16>>2]|0)+116>>2]|0;if(!b)break;else a=b}b=c[a>>2]&3;d=c[(c[((b|0)==2?a:a+-48|0)+40>>2]|0)+16>>2]|0;e=c[d+232>>2]|0;a=c[(c[((b|0)==3?a:a+48|0)+40>>2]|0)+16>>2]|0;b=c[a+232>>2]|0;if((e|0)<=(b|0))if((e|0)<(b|0))a=1;else a=(c[d+236>>2]|0)<(c[a+236>>2]|0)&1;else a=0;return a|0}function fh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;e=d+8|0;f=d;h=(c[a+16>>2]|0)+180|0;g=(c[b+16>>2]|0)+172|0;c[f>>2]=c[h>>2];c[f+4>>2]=c[h+4>>2];c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];b=gh(a,f,b,e)|0;l=d;return b|0}function gh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[b+4>>2]|0;a:do if((f|0)>0?(g=c[e+4>>2]|0,(g|0)>0):0)if((f|0)<(g|0)){f=c[b>>2]|0;e=0;while(1){b=c[f+(e<<2)>>2]|0;if(!b){b=0;break a}if((c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)==(d|0))break;else e=e+1|0}}else{f=c[e>>2]|0;e=0;while(1){b=c[f+(e<<2)>>2]|0;if(!b){b=0;break a}if((c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)==(a|0))break;else e=e+1|0}}else b=0;while(0);return b|0}function hh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;e=d+8|0;f=d;h=(c[a+16>>2]|0)+188|0;g=(c[b+16>>2]|0)+196|0;c[f>>2]=c[h>>2];c[f+4>>2]=c[h+4>>2];c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];b=gh(a,f,b,e)|0;l=d;return b|0}function ih(a){a=a|0;var b=0,d=0,e=0,f=0;e=a+48|0;d=c[(c[((c[a>>2]&3|0)==3?a:e)+40>>2]|0)+16>>2]|0;b=c[d+180>>2]|0;if(!b)b=vH((c[d+184>>2]<<2)+8|0)|0;else b=xH(b,(c[d+184>>2]<<2)+8|0)|0;c[(c[(c[((c[a>>2]&3|0)==3?a:e)+40>>2]|0)+16>>2]|0)+180>>2]=b;f=c[(c[((c[a>>2]&3|0)==3?a:e)+40>>2]|0)+16>>2]|0;d=c[f+180>>2]|0;f=f+184|0;b=c[f>>2]|0;c[f>>2]=b+1;c[d+(b<<2)>>2]=a;e=c[(c[((c[a>>2]&3|0)==3?a:e)+40>>2]|0)+16>>2]|0;c[(c[e+180>>2]|0)+(c[e+184>>2]<<2)>>2]=0;e=a+-48|0;b=c[(c[((c[a>>2]&3|0)==2?a:e)+40>>2]|0)+16>>2]|0;d=c[b+172>>2]|0;if(!d)b=vH((c[b+176>>2]<<2)+8|0)|0;else b=xH(d,(c[b+176>>2]<<2)+8|0)|0;c[(c[(c[((c[a>>2]&3|0)==2?a:e)+40>>2]|0)+16>>2]|0)+172>>2]=b;b=c[(c[((c[a>>2]&3|0)==2?a:e)+40>>2]|0)+16>>2]|0;d=c[b+172>>2]|0;b=b+176|0;f=c[b>>2]|0;c[b>>2]=f+1;c[d+(f<<2)>>2]=a;f=c[(c[((c[a>>2]&3|0)==2?a:e)+40>>2]|0)+16>>2]|0;c[(c[f+172>>2]|0)+(c[f+176>>2]<<2)>>2]=0;return a|0}function jh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;e=a+4|0;f=c[e>>2]|0;d=0;while(1){if((d|0)>=(f|0))break;g=c[a>>2]|0;h=g+(d<<2)|0;if((c[h>>2]|0)==(b|0)){i=4;break}else d=d+1|0}if((i|0)==4){i=f+-1|0;c[e>>2]=i;c[h>>2]=c[g+(i<<2)>>2];c[(c[a>>2]|0)+(i<<2)>>2]=0}return}function kh(a){a=a|0;if(!a)qa(85456,85466,117,85475);else{jh((c[(c[((c[a>>2]&3|0)==3?a:a+48|0)+40>>2]|0)+16>>2]|0)+180|0,a);jh((c[(c[((c[a>>2]&3|0)==2?a:a+-48|0)+40>>2]|0)+16>>2]|0)+172|0,a);return}}function lh(a){a=a|0;var b=0,d=0,e=0,f=0;e=a+48|0;d=c[(c[((c[a>>2]&3|0)==3?a:e)+40>>2]|0)+16>>2]|0;b=c[d+204>>2]|0;if(!b)b=vH((c[d+208>>2]<<2)+8|0)|0;else b=xH(b,(c[d+208>>2]<<2)+8|0)|0;c[(c[(c[((c[a>>2]&3|0)==3?a:e)+40>>2]|0)+16>>2]|0)+204>>2]=b;f=c[(c[((c[a>>2]&3|0)==3?a:e)+40>>2]|0)+16>>2]|0;b=c[f+204>>2]|0;f=f+208|0;d=c[f>>2]|0;c[f>>2]=d+1;c[b+(d<<2)>>2]=a;e=c[(c[((c[a>>2]&3|0)==3?a:e)+40>>2]|0)+16>>2]|0;c[(c[e+204>>2]|0)+(c[e+208>>2]<<2)>>2]=0;return}function mh(a){a=a|0;nh(a,(c[(c[((c[a>>2]&3|0)==3?a:a+48|0)+40>>2]|0)+16>>2]|0)+204|0);return}function nh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=b+4|0;e=c[h>>2]|0;f=c[b>>2]|0;d=0;while(1){if((d|0)>=(e|0)){g=4;break}if((c[f+(d<<2)>>2]|0)==(a|0))break;else d=d+1|0}if((g|0)==4){if(!f)d=vH((e<<2)+8|0)|0;else d=xH(f,(e<<2)+8|0)|0;c[b>>2]=d;f=c[h>>2]|0;g=f+1|0;c[h>>2]=g;c[d+(f<<2)>>2]=a;c[(c[b>>2]|0)+(g<<2)>>2]=0}return}function oh(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=uH(96)|0;g=n+48|0;c[g>>2]=c[g>>2]|3;c[n>>2]=c[n>>2]&-4|2;h=uH(176)|0;m=n+16|0;c[m>>2]=h;c[((c[n>>2]&3|0)==3?n:g)+40>>2]=d;j=n+-48|0;c[((c[n>>2]&3|0)==2?n:j)+40>>2]=e;a[h+112>>0]=1;if(!f){c[h+156>>2]=1;b[h+154>>1]=1;b[h+168>>1]=1;b[h+170>>1]=1}else{c[n>>2]=c[n>>2]&15|c[f>>2]&-16;c[g>>2]=c[g>>2]&15|c[f>>2]&-16;l=f+16|0;i=c[l>>2]|0;b[h+168>>1]=b[i+168>>1]|0;b[h+154>>1]=b[i+154>>1]|0;c[h+156>>2]=c[i+156>>2];b[h+170>>1]=b[i+170>>1]|0;d=c[((c[n>>2]&3|0)==3?n:g)+40>>2]|0;e=c[f>>2]&3;k=f+48|0;if((d|0)!=(c[((e|0)==3?f:k)+40>>2]|0)){g=f+-48|0;if((d|0)==(c[((e|0)==2?f:g)+40>>2]|0)){h=h+16|0;d=i+56|0;e=h+40|0;do{c[h>>2]=c[d>>2];h=h+4|0;d=d+4|0}while((h|0)<(e|0))}}else{h=h+16|0;d=i+16|0;e=h+40|0;do{c[h>>2]=c[d>>2];h=h+4|0;d=d+4|0}while((h|0)<(e|0));g=f+-48|0}d=c[((c[n>>2]&3|0)==2?n:j)+40>>2]|0;e=c[f>>2]&3;if((d|0)!=(c[((e|0)==2?f:g)+40>>2]|0)){if((d|0)==(c[((e|0)==3?f:k)+40>>2]|0)){h=(c[m>>2]|0)+56|0;d=(c[l>>2]|0)+16|0;e=h+40|0;do{c[h>>2]=c[d>>2];h=h+4|0;d=d+4|0}while((h|0)<(e|0))}}else{h=(c[m>>2]|0)+56|0;d=(c[l>>2]|0)+56|0;e=h+40|0;do{c[h>>2]=c[d>>2];h=h+4|0;d=d+4|0}while((h|0)<(e|0))}d=(c[l>>2]|0)+172|0;if(!(c[d>>2]|0))c[d>>2]=n;c[(c[m>>2]|0)+116>>2]=f}return n|0}function ph(a,b,c){a=a|0;b=b|0;c=c|0;return ih(oh(a,b,c)|0)|0}function qh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;a=(c[a+16>>2]|0)+192|0;f=c[a>>2]|0;d=c[b+16>>2]|0;c[d+164>>2]=f;e=f;if(f|0)c[(c[e+16>>2]|0)+168>>2]=b;c[a>>2]=b;c[d+168>>2]=0;if((e|0)==(b|0))qa(85492,85466,215,85508);else return}function rh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;if((a|0)==(b|0))qa(85518,85466,220,85525);f=c[b+16>>2]|0;d=f+164|0;if(c[d>>2]|0)qa(85538,85466,221,85525);e=(c[a+16>>2]|0)+164|0;c[d>>2]=c[e>>2];d=c[e>>2]|0;if(d|0)c[(c[d+16>>2]|0)+168>>2]=b;c[f+168>>2]=a;c[e>>2]=b;return}function sh(a,b){a=a|0;b=b|0;var d=0,e=0;if(!(th(a,b)|0))qa(85557,85466,231,85578);b=c[b+16>>2]|0;d=c[b+164>>2]|0;e=d;b=b+168|0;if(d|0)c[(c[d+16>>2]|0)+168>>2]=c[b>>2];b=c[b>>2]|0;if(!b)c[(c[a+16>>2]|0)+192>>2]=e;else c[(c[b+16>>2]|0)+164>>2]=e;return}function th(a,b){a=a|0;b=b|0;a=(c[a+16>>2]|0)+192|0;while(1){a=c[a>>2]|0;if((a|0)==0|(a|0)==(b|0))break;a=(c[a+16>>2]|0)+164|0}return a|0}function uh(b){b=b|0;var d=0,e=0,f=0,g=0;d=uH(64)|0;c[d>>2]=c[d>>2]&-4|1;e=d+16|0;c[e>>2]=uH(304)|0;c[d+24>>2]=fz(b)|0;g=c[e>>2]|0;a[g+156>>0]=1;h[g+96>>3]=1.0;h[g+88>>3]=1.0;h[g+80>>3]=1.0;c[g+216>>2]=1;c[g+176>>2]=0;g=uH(20)|0;f=c[e>>2]|0;c[f+172>>2]=g;c[f+184>>2]=0;f=uH(20)|0;c[(c[e>>2]|0)+180>>2]=f;qh(b,d);b=(c[b+16>>2]|0)+232|0;c[b>>2]=(c[b>>2]|0)+1;return d|0}function vh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=d+48|0;e=c[(c[((c[d>>2]&3|0)==3?d:g)+40>>2]|0)+16>>2]|0;f=c[e+188>>2]|0;if(!f)e=vH((c[e+192>>2]<<2)+8|0)|0;else e=xH(f,(c[e+192>>2]<<2)+8|0)|0;c[(c[(c[((c[d>>2]&3|0)==3?d:g)+40>>2]|0)+16>>2]|0)+188>>2]=e;h=c[(c[((c[d>>2]&3|0)==3?d:g)+40>>2]|0)+16>>2]|0;f=c[h+188>>2]|0;h=h+192|0;e=c[h>>2]|0;c[h>>2]=e+1;c[f+(e<<2)>>2]=d;g=c[(c[((c[d>>2]&3|0)==3?d:g)+40>>2]|0)+16>>2]|0;c[(c[g+188>>2]|0)+(c[g+192>>2]<<2)>>2]=0;g=d+-48|0;e=c[(c[((c[d>>2]&3|0)==2?d:g)+40>>2]|0)+16>>2]|0;f=c[e+196>>2]|0;if(!f)e=vH((c[e+200>>2]<<2)+8|0)|0;else e=xH(f,(c[e+200>>2]<<2)+8|0)|0;c[(c[(c[((c[d>>2]&3|0)==2?d:g)+40>>2]|0)+16>>2]|0)+196>>2]=e;e=c[(c[((c[d>>2]&3|0)==2?d:g)+40>>2]|0)+16>>2]|0;f=c[e+196>>2]|0;e=e+200|0;h=c[e>>2]|0;c[e>>2]=h+1;c[f+(h<<2)>>2]=d;h=c[(c[((c[d>>2]&3|0)==2?d:g)+40>>2]|0)+16>>2]|0;c[(c[h+196>>2]|0)+(c[h+200>>2]<<2)>>2]=0;a[(c[b+16>>2]|0)+240>>0]=1;a[(c[(ig(b)|0)+16>>2]|0)+240>>0]=1;return}function wh(a){a=a|0;var b=0,d=0;if(!a)qa(85456,85466,269,85595);b=c[(c[a+16>>2]|0)+116>>2]|0;if(b|0?(d=(c[b+16>>2]|0)+172|0,(c[d>>2]|0)==(a|0)):0)c[d>>2]=0;jh((c[(c[((c[a>>2]&3|0)==3?a:a+48|0)+40>>2]|0)+16>>2]|0)+188|0,a);jh((c[(c[((c[a>>2]&3|0)==2?a:a+-48|0)+40>>2]|0)+16>>2]|0)+196|0,a);return}function xh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;d=(c[a+16>>2]|0)+172|0;e=c[d>>2]|0;do if((e|0)!=(b|0))if(!e){c[d>>2]=b;yh(a,b);break}else qa(87498,85466,340,85633);else Pw(0,85612,f)|0;while(0);l=f;return}function yh(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0;f=(c[d+16>>2]|0)+170|0;i=c[a+16>>2]|0;a=b[i+170>>1]|0;if((e[f>>1]|0)<(a&65535))b[f>>1]=a;g=i+168|0;h=i+154|0;f=i+156|0;a=d;while(1){if(!a)break;d=c[a+16>>2]|0;i=d+168|0;b[i>>1]=(e[i>>1]|0)+(e[g>>1]|0);i=d+154|0;b[i>>1]=(e[i>>1]|0)+(e[h>>1]|0);i=d+156|0;c[i>>2]=(c[i>>2]|0)+(c[f>>2]|0);a=c[d+172>>2]|0}return}function zh(d){d=d|0;var e=0,f=0,g=0,h=0;f=d+16|0;e=c[(c[f>>2]|0)+172>>2]|0;a:while(1){if(!e)break;Ah(e,d);h=c[e+16>>2]|0;g=c[h+172>>2]|0;if(!(b[h+168>>1]|0))Bh(e);while(1){if((a[(c[e+16>>2]|0)+112>>0]|0)!=1){e=g;continue a}e=c[(c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)+16>>2]|0;if((a[e+156>>0]|0)!=1){e=g;continue a}if((c[e+184>>2]|0)!=1){e=g;continue a}e=c[c[e+180>>2]>>2]|0;Ah(e,d)}}c[(c[f>>2]|0)+172>>2]=0;return}function Ah(a,d){a=a|0;d=d|0;var f=0;f=c[d+16>>2]|0;d=c[a+16>>2]|0;a=d+168|0;b[a>>1]=(e[a>>1]|0)-(e[f+168>>1]|0);a=d+154|0;b[a>>1]=(e[a>>1]|0)-(e[f+154>>1]|0);d=d+156|0;c[d>>2]=(c[d>>2]|0)-(c[f+156>>2]|0);return}function Bh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if(!a)qa(85456,85466,128,85646);g=a+48|0;d=0;while(1){b=c[a>>2]|0;e=(c[(c[((b&3|0)==3?a:g)+40>>2]|0)+16>>2]|0)+180|0;f=c[(c[e>>2]|0)+(d<<2)>>2]|0;if(!f)break;if((f|0)==(a|0))jh(e,a);d=d+1|0}g=a+-48|0;f=0;while(1){d=(c[(c[((b&3|0)==2?a:g)+40>>2]|0)+16>>2]|0)+172|0;e=c[(c[d>>2]|0)+(f<<2)>>2]|0;if(!e)break;if((e|0)==(a|0)){jh(d,a);b=c[a>>2]|0}f=f+1|0}return}function Ch(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+1040|0;n=p+1032|0;o=p;m=p+8|0;k=d+16|0;d=c[k>>2]|0;j=b[d+236>>1]|0;while(1){if((j|0)>(b[d+238>>1]|0))break;i=c[d+196>>2]|0;h=i+(j<<6)|0;i=i+(j<<6)+4|0;g=0;d=0;while(1){if((g|0)>=(c[h>>2]|0))break;e=c[(c[i>>2]|0)+(g<<2)>>2]|0;f=e+16|0;if(c[(c[f>>2]|0)+112>>2]|0){if(!d){a[n>>0]=a[18484]|0;a[n+1>>0]=a[18485]|0;a[n+2>>0]=a[18486]|0;a[n+3>>0]=a[18487]|0;d=Xx(85668,n,0)|0}c[o>>2]=g;Y0(m,134313,o)|0;t=az(d,m,1)|0;Az(t,91080,24,1)|0;q=c[(c[f>>2]|0)+180>>2]|0;r=c[q>>2]|0;r=c[(c[(c[((c[r>>2]&3|0)==2?r:r+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;q=c[q+4>>2]|0;q=c[(c[(c[((c[q>>2]&3|0)==2?q:q+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;s=(r|0)>(q|0);f=c[t+16>>2]|0;c[f+12>>2]=s?q:r;c[f+16>>2]=s?r:q;c[f+20>>2]=e}g=g+1|0}if(d|0){if((ay(d)|0)>1)Dh(d,h);$x(d)|0}j=j+1|0;d=c[k>>2]|0}l=p;return}function Dh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=0;h=Sy(a)|0;a:while(1){if(!h)break;i=Ty(a,h)|0;j=h+16|0;g=i;while(1){if(!g){h=i;continue a}f=c[g+16>>2]|0;e=c[j>>2]|0;if((c[f+16>>2]|0)>(c[e+12>>2]|0)){if((c[e+16>>2]|0)<=(c[f+12>>2]|0))Rx(a,h,g,0,1)|0}else{Rx(a,g,h,0,1)|0;d=1}g=Ty(a,g)|0}}do if(d|0){h=vA(a,85671,1)|0;j=uH((ay(a)|0)<<2)|0;i=uH((ay(a)|0)<<2)|0;f=b+4|0;e=Sy(a)|0;b:while(1){if(!e){d=23;break}if((c[(c[e+16>>2]|0)+8>>2]|0)==0?cy(a,e,1,1)|0:0){c:do if(Eh(a,e,h,i)|0){g=ay(h)|0;if((Fh(a,h,j)|0)!=(g|0)){d=17;break b}_0(i,g,4,60);d=0;while(1){if((d|0)>=(g|0))break c;b=i+(d<<2)|0;k=c[j+(d<<2)>>2]|0;c[(c[k+16>>2]|0)+236>>2]=c[b>>2];c[(c[f>>2]|0)+(c[b>>2]<<2)>>2]=k;d=d+1|0}}while(0);Hh(h)}e=Ty(a,e)|0}if((d|0)==17)qa(85676,85686,265,85697);else if((d|0)==23){D_(j);break}}while(0);return}function Eh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=c[b+16>>2]|0;c[h+8>>2]=1;h=c[(c[(c[h+20>>2]|0)+16>>2]|0)+236>>2]|0;c[e+((ay(d)|0)<<2)>>2]=h;Xy(d,b,1)|0;h=Ex(a,b)|0;f=0;while(1){if(!h)break;j=c[h>>2]&3;g=c[((j|0)==2?h:h+-48|0)+40>>2]|0;i=c[g+16>>2]|0;f=f+((c[(c[(c[i+20>>2]|0)+16>>2]|0)+236>>2]|0)>(c[(c[(c[(c[(c[((j|0)==3?h:h+48|0)+40>>2]|0)+16>>2]|0)+20>>2]|0)+16>>2]|0)+236>>2]|0)&1)|0;if(!(c[i+8>>2]|0))f=(Eh(a,g,d,e)|0)+f|0;h=Gx(a,h)|0}h=Hx(a,b)|0;while(1){if(!h)break;i=c[h>>2]&3;g=c[((i|0)==3?h:h+48|0)+40>>2]|0;j=c[g+16>>2]|0;f=f+((c[(c[(c[(c[(c[((i|0)==2?h:h+-48|0)+40>>2]|0)+16>>2]|0)+20>>2]|0)+16>>2]|0)+236>>2]|0)>(c[(c[(c[j+20>>2]|0)+16>>2]|0)+236>>2]|0)&1)|0;if(!(c[j+8>>2]|0))f=(Eh(a,g,d,e)|0)+f|0;h=Ix(a,h)|0}return f|0}function Fh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=0;while(1){e=Ih(a,b)|0;if(!e)break;c[d+(f<<2)>>2]=c[(c[e+16>>2]|0)+20>>2];cz(b,e)|0;e=Ex(a,e)|0;while(1){if(!e)break;g=Gx(a,e)|0;Ux(a,e)|0;e=g}f=f+1|0}return f|0}function Gh(a,b){a=a|0;b=b|0;return (c[a>>2]|0)-(c[b>>2]|0)|0}function Hh(a){a=a|0;var b=0,c=0;b=Sy(a)|0;while(1){if(!b)break;c=Ty(a,b)|0;cz(a,b)|0;b=c}return}function Ih(a,b){a=a|0;b=b|0;var c=0;c=Sy(b)|0;while(1){if(!c){c=0;break}if(!(cy(a,c,1,0)|0))break;c=Ty(b,c)|0}return c|0}function Jh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;Kh(b);i=b+16|0;f=0;e=0;while(1){if((f|0)>=(c[(c[i>>2]|0)+220>>2]|0))break;Lh(b,f);f=f+1|0;e=(Mh(b,0,d)|0)+e|0}Nh(b);h=1;while(1){f=c[i>>2]|0;g=c[f+180>>2]|0;if((h|0)>(g|0))break;g=(Oh(c[(c[f+184>>2]|0)+(h<<2)>>2]|0,d)|0)+e|0;h=h+1|0;e=g}do if((g|0)>0){f=xx(b,85711)|0;if(f|0?(QL(f)|0)<<24>>24==0:0)break;ll(b);a[190689]=1;e=Mh(b,2,d)|0}while(0);Ph(b,e);return}function Kh(d){d=d|0;var e=0;if(0)EL();a[190689]=0;c[45971]=d;e=((by(ig(d)|0)|0)<<2)+4|0;c[45970]=uH(e)|0;c[45969]=uH(e)|0;Fi(d);e=d+16|0;if(b[(c[e>>2]|0)+136>>1]&16)Gi(d);Uk(d);Il(d,1);Hi(d);Wh(d);e=c[e>>2]|0;c[45972]=b[e+236>>1];c[45973]=b[e+238>>1];return}function Lh(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;a=c[a+16>>2]|0;c[a+192>>2]=c[(c[a+216>>2]|0)+(d<<2)>>2];a:do if((d|0)>0){d=b[a+238>>1]|0;e=a+196|0;a=b[a+236>>1]|0;while(1){if((a|0)>(d|0))break a;f=c[e>>2]|0;g=f+(a<<6)+4|0;f=f+(a<<6)|0;c[g>>2]=(c[g>>2]|0)+(c[f>>2]<<2);c[f>>2]=0;a=a+1|0}}while(0);return}function Mh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;n=o;if((b|0)>1){e=ki(0)|0;li(a)}else e=2147483647;m=c[15686]|0;k=b;f=0;b=e;while(1){if((k|0)>=3)break;f=c[46365]|0;if((k|0)==2)if((e|0)>(b|0)){ni(a);e=b}else e=b;else{e=(f|0)<4?f:4;if((ig(a)|0)==(a|0))mi(a,k);if(!k)Xh(a);Yh(a);g=ki(0)|0;if((g|0)>(b|0)){f=e;e=g}else{li(a);f=e;e=g;b=g}}g=0;j=0;while(1){if((j|0)>=(f|0))break;if(0){c[n>>2]=k;c[n+4>>2]=j;c[n+8>>2]=g;c[n+12>>2]=e;c[n+16>>2]=b;g1(m,86104,n)|0}i=g+1|0;if((e|0)==0|(g|0)>=(c[45974]|0))break;oi(a,j);e=ki(0)|0;if((e|0)>(b|0))g=i;else{li(a);g=+h[22830]*+(b|0)>+(e|0)?0:i;b=e}j=j+1|0}if(!e){e=0;break}else k=k+1|0}if((e|0)>(b|0))ni(a);if((b|0)>0){pi(a,0);e=ki(0)|0}else e=b;a:do if(d|0){b=0;while(1){if((b|0)>=(f|0))break a;qi(a);b=b+1|0}}while(0);l=o;return e|0}function Nh(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p;ji(a);k=a+16|0;d=c[k>>2]|0;m=c[15686]|0;j=b[d+236>>1]|0;while(1){if((j|0)>(b[d+238>>1]|0))break;e=c[d+196>>2]|0;f=c[e+(j<<6)+8>>2]|0;c[e+(j<<6)>>2]=f;g=c[e+(j<<6)+12>>2]|0;c[e+(j<<6)+4>>2]=g;i=0;while(1){if((i|0)>=(f|0))break;h=c[g+(i<<2)>>2]|0;if(!h){o=6;break}c[(c[h+16>>2]|0)+236>>2]=i;i=i+1|0}if((o|0)==6){o=0;if(0){e=ry(a)|0;d=c[(c[(c[k>>2]|0)+196>>2]|0)+(j<<6)>>2]|0;c[n>>2]=e;c[n+4>>2]=j;c[n+8>>2]=i;c[n+12>>2]=d;g1(m,86054,n)|0;d=c[k>>2]|0;e=c[d+196>>2]|0}c[e+(j<<6)>>2]=i}j=j+1|0}l=p;return}function Oh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;fl(a);Wh(a);Xh(a);Yh(a);f=a+16|0;d=Mh(a,2,b)|0;e=1;while(1){g=c[f>>2]|0;if((e|0)>(c[g+180>>2]|0))break;d=(Oh(c[(c[g+184>>2]|0)+(e<<2)>>2]|0,b)|0)+d|0;e=e+1|0}Zh(a);return d|0}function Ph(d,e){d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;p=q;f=c[45969]|0;if(f|0){D_(f);c[45969]=0}f=c[45970]|0;if(f|0){D_(f);c[45970]=0}o=d+16|0;f=1;while(1){g=c[o>>2]|0;if((f|0)>(c[g+180>>2]|0))break;Qh(c[(c[g+184>>2]|0)+(f<<2)>>2]|0);f=f+1|0}n=b[g+236>>1]|0;f=g;while(1){if((n|0)>(b[f+238>>1]|0))break;else m=0;while(1){f=c[f+196>>2]|0;if((m|0)>=(c[f+(n<<6)>>2]|0))break;k=(c[(c[f+(n<<6)+4>>2]|0)+(m<<2)>>2]|0)+16|0;f=c[k>>2]|0;c[f+236>>2]=m;f=c[f+188>>2]|0;a:do if(f|0){g=0;while(1){i=c[f+(g<<2)>>2]|0;if(!i)break a;j=i+16|0;if((a[(c[j>>2]|0)+112>>0]|0)==4){wh(i);D_(c[j>>2]|0);D_(i);g=g+-1|0;f=c[(c[k>>2]|0)+188>>2]|0}g=g+1|0}}while(0);m=m+1|0;f=c[o>>2]|0}Rh(c[f+(n<<6)+56>>2]|0);n=n+1|0;f=c[o>>2]|0}if(0){o=c[15686]|0;d=ry(d)|0;r=+FL();c[p>>2]=d;c[p+4>>2]=e;h[p+8>>3]=r;g1(o,85722,p)|0}l=q;return}function Qh(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=a+16|0;d=1;while(1){f=c[g>>2]|0;if((d|0)>(c[f+180>>2]|0))break;Qh(c[(c[f+184>>2]|0)+(d<<2)>>2]|0);d=d+1|0}a:do if(c[f+268>>2]|0){e=b[f+236>>1]|0;d=f;while(1){if((e|0)>(b[d+238>>1]|0))break a;j=c[(c[d+268>>2]|0)+(e<<2)>>2]|0;i=Sh(a,j,-1)|0;j=Sh(a,j,1)|0;c[(c[(c[g>>2]|0)+268>>2]|0)+(e<<2)>>2]=i;k=c[(c[(c[(ig(a)|0)+16>>2]|0)+196>>2]|0)+(e<<6)+4>>2]|0;i=c[(c[i+16>>2]|0)+236>>2]|0;f=c[g>>2]|0;h=c[f+196>>2]|0;c[h+(e<<6)+4>>2]=k+(i<<2);c[h+(e<<6)>>2]=(c[(c[j+16>>2]|0)+236>>2]|0)+1-i;e=e+1|0;d=f}}while(0);return}function Rh(a){a=a|0;if(a|0){D_(c[a+8>>2]|0);D_(a)}return}function Sh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=b;while(1){b=Th(b,c)|0;if(!b)break;if(Uh(a,b)|0){d=b;continue}e=(Vh(a,b)|0)==0;d=e?d:b}return d|0}function Th(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if(!a)qa(85761,85686,1023,85763);if((b|0)<0){a=c[a+16>>2]|0;e=c[a+236>>2]|0;if((e|0)>0){a=(c[(c[(c[45971]|0)+16>>2]|0)+196>>2]|0)+(c[a+232>>2]<<6)+4|0;d=e+-1|0;f=7}else g=0}else{a=c[a+16>>2]|0;e=c[a+236>>2]|0;a=(c[(c[(c[45971]|0)+16>>2]|0)+196>>2]|0)+(c[a+232>>2]<<6)+4|0;d=e+1|0;f=7}if((f|0)==7){a=c[(c[a>>2]|0)+(d<<2)>>2]|0;if(a)if((O((c[(c[a+16>>2]|0)+236>>2]|0)-e|0,b)|0)>0)g=a;else qa(85772,85686,1029,85763);else g=0}return g|0}function Uh(b,d){b=b|0;d=d|0;if(!(a[(c[d+16>>2]|0)+156>>0]|0))b=(oz(b,d)|0)!=0&1;else b=0;return b|0}function Vh(b,d){b=b|0;d=d|0;var e=0,f=0;d=c[d+16>>2]|0;if(((a[d+156>>0]|0)==1?(c[d+176>>2]|0)==1:0)?(c[d+184>>2]|0)==1:0){d=c[d+180>>2]|0;while(1){d=c[d>>2]|0;e=c[d+16>>2]|0;if(!(a[e+112>>0]|0))break;else d=e+116|0}if(oz(b,d)|0)d=1;else f=7}else f=7;if((f|0)==7)d=0;return d|0}function Wh(b){b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;e=f;d=c[46370]|0;a:do if((d|0)!=0|(c[46391]|0)!=0){d=NL(b,d,0)|0;if(d|0){switch(a[d>>0]|0){case 0:break a;case 111:{if(!(b$(d,85974)|0)){ei(b,1);break a}break}case 105:{if(!(b$(d,95660)|0)){ei(b,0);break a}break}default:{}}c[e>>2]=d;Pw(1,85978,e)|0;break}d=wA(b)|0;while(1){if(!d)break;if(!(Rj(d)|0))Wh(d);d=xA(d)|0}if(c[46391]|0)fi(b)}while(0);l=f;return}function Xh(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=d+16|0;e=c[k>>2]|0;j=b[e+236>>1]|0;while(1){if((j|0)>(b[e+238>>1]|0))break;else{f=0;i=0}while(1){g=c[e+196>>2]|0;h=c[g+(j<<6)>>2]|0;if((i|0)>=(h|0))break;g=c[(c[(c[g+(j<<6)+4>>2]|0)+(i<<2)>>2]|0)+16>>2]|0;a[g+158>>0]=0;a[g+157>>0]=0;c[g+284>>2]=i;if((f|0)==0&(c[g+192>>2]|0)>0){f=ci(h,h)|0;e=c[k>>2]|0;c[(c[e+196>>2]|0)+(j<<6)+56>>2]=f;f=1}i=i+1|0}a:do if(f){i=0;f=h;while(1){if((i|0)>=(f|0))break a;h=c[(c[g+(j<<6)+4>>2]|0)+(i<<2)>>2]|0;if(!(a[(c[h+16>>2]|0)+157>>0]|0)){di(d,h);e=c[k>>2]|0;f=c[e+196>>2]|0;g=f;f=c[f+(j<<6)>>2]|0}i=i+1|0}}while(0);j=j+1|0}return}function Yh(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=d+16|0;e=c[s>>2]|0;if(a[e+240>>0]|0){h=0;r=b[e+236>>1]|0;q=0;i=0;a:while(1){if((r|0)>(b[e+238>>1]|0))break;f=c[e+196>>2]|0;g=c[f+(r<<6)>>2]|0;if(!g){g=q;f=i}else{f=c[f+(r<<6)+4>>2]|0;o=c[(c[(c[f>>2]|0)+16>>2]|0)+236>>2]|0;e=0;while(1){if((e|0)>=(g|0))break;a[(c[(c[f+(e<<2)>>2]|0)+16>>2]|0)+157>>0]=0;e=e+1|0}e=(e<<2)+4|0;if(!h)p=vH(e)|0;else p=xH(i,e)|0;m=0;n=0;while(1){e=c[s>>2]|0;f=c[e+196>>2]|0;g=c[f+(r<<6)>>2]|0;if((g|0)<=(n|0))break;j=c[(c[f+(r<<6)+4>>2]|0)+(((c[e+116>>2]&1|0)==0?g+~n|0:n)<<2)>>2]|0;l=j+16|0;e=0;k=0;while(1){i=c[l>>2]|0;if((e|0)>=(c[i+200>>2]|0)){f=0;g=0;e=i;break}i=k+((_h(d,c[(c[i+196>>2]|0)+(e<<2)>>2]|0)|0)!=0&1)|0;e=e+1|0;k=i}while(1){if((g|0)>=(c[e+192>>2]|0))break;i=f+((_h(d,c[(c[e+188>>2]|0)+(g<<2)>>2]|0)|0)!=0&1)|0;f=i;g=g+1|0;e=c[l>>2]|0}if(f|k)if((k|0)==0&(a[e+157>>0]|0)==0)e=($h(d,j,p+(m<<2)|0,r)|0)+m|0;else e=m;else{c[p+(m<<2)>>2]=j;e=m+1|0}m=e;n=n+1|0}b:do if(m){c:do if(!(c[e+116>>2]&1)){f=p;e=p+(m<<2)|0;while(1){e=e+-4|0;if(f>>>0>=e>>>0){g=0;break c}n=c[f>>2]|0;c[f>>2]=c[e>>2];c[e>>2]=n;f=f+4|0}}else g=0;while(0);while(1){e=c[s>>2]|0;i=c[e+196>>2]|0;f=c[i+(r<<6)>>2]|0;if((g|0)>=(f|0)){m=0;g=i;break}n=c[p+(g<<2)>>2]|0;c[(c[i+(r<<6)+4>>2]|0)+(g<<2)>>2]=n;c[(c[n+16>>2]|0)+236>>2]=g+o;g=g+1|0}while(1){if((m|0)>=(f|0))break b;l=(c[(c[g+(r<<6)+4>>2]|0)+(m<<2)>>2]|0)+16|0;i=c[(c[l>>2]|0)+188>>2]|0;if(i){k=0;f=i;while(1){g=c[f+(k<<2)>>2]|0;e=c[s>>2]|0;if(!g)break;j=c[g>>2]&3;i=c[(c[(c[((j|0)==2?g:g+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;j=c[(c[(c[((j|0)==3?g:g+48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;if(!(c[e+116>>2]&1))if((i|0)<(j|0))t=36;else e=k;else if((i|0)>(j|0))t=36;else e=k;if((t|0)==36){t=0;if(_h(d,g)|0){t=37;break a}wh(g);ai(d,g);e=k+-1|0;f=c[(c[l>>2]|0)+188>>2]|0}k=e+1|0}f=c[e+196>>2]|0;g=f;f=c[f+(r<<6)>>2]|0}m=m+1|0}}while(0);a[(c[(c[(c[45971]|0)+16>>2]|0)+196>>2]|0)+(r<<6)+49>>0]=0;h=p;g=p;f=p}r=r+1|0;q=g;i=f}if((t|0)==37)qa(85820,85686,1561,85859);if(h|0)D_(q)}return}function Zh(a){a=a|0;var d=0,e=0;e=a+16|0;a=c[e>>2]|0;a:do if(c[a+268>>2]|0){d=b[a+236>>1]|0;while(1){if((d|0)>(b[a+238>>1]|0))break a;c[(c[a+268>>2]|0)+(d<<2)>>2]=c[c[(c[a+196>>2]|0)+(d<<6)+4>>2]>>2];d=d+1|0;a=c[e>>2]|0}}while(0);return}function _h(a,b){a=a|0;b=b|0;if((c[(c[b+16>>2]|0)+156>>2]|0)!=0?(bi(a,c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0)!=0:0)a=(bi(a,c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)|0)!=0&1;else a=0;return a|0}function $h(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;l=d+16|0;g=c[l>>2]|0;a[g+157>>0]=1;a:do if((c[g+192>>2]|0)>0){h=0;j=0;while(1){i=c[(c[g+188>>2]|0)+(j<<2)>>2]|0;if(!i)break a;if((_h(b,i)|0)!=0?(k=c[((c[i>>2]&3|0)==2?i:i+-48|0)+40>>2]|0,(a[(c[k+16>>2]|0)+157>>0]|0)==0):0)h=($h(b,k,e+(h<<2)|0,f)|0)+h|0;j=j+1|0;g=c[l>>2]|0}}else h=0;while(0);if((c[g+232>>2]|0)==(f|0)){c[e+(h<<2)>>2]=d;return h+1|0}else qa(85872,85686,1490,85888);return 0}function ai(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=c[d>>2]&3;j=c[((i|0)==2?d:d+-48|0)+40>>2]|0;f=c[(c[j+16>>2]|0)+188>>2]|0;a:do if(!f){e=d+48|0;m=15}else{l=d+48|0;g=((i|0)==3?d:l)+40|0;e=0;while(1){h=c[f+(e<<2)>>2]|0;if(!h){e=l;m=15;break a}if((c[((c[h>>2]&3|0)==2?h:h+-48|0)+40>>2]|0)==(c[g>>2]|0))break;else e=e+1|0}xh(d,h);e=(c[d+16>>2]|0)+172|0;if(!(c[e>>2]|0))c[e>>2]=h;e=c[h+16>>2]|0;if((a[e+112>>0]|0)==4?(k=e+116|0,(c[k>>2]|0)==0):0)c[k>>2]=d;e=c[(c[((c[d>>2]&3|0)==3?d:l)+40>>2]|0)+16>>2]|0;f=c[e+204>>2]|0;if(!f)e=vH((c[e+208>>2]<<2)+8|0)|0;else e=xH(f,(c[e+208>>2]<<2)+8|0)|0;c[(c[(c[((c[d>>2]&3|0)==3?d:l)+40>>2]|0)+16>>2]|0)+204>>2]=e;i=c[(c[((c[d>>2]&3|0)==3?d:l)+40>>2]|0)+16>>2]|0;j=c[i+204>>2]|0;i=i+208|0;k=c[i>>2]|0;c[i>>2]=k+1;c[j+(k<<2)>>2]=d;d=c[(c[((c[d>>2]&3|0)==3?d:l)+40>>2]|0)+16>>2]|0;c[(c[d+204>>2]|0)+(c[d+208>>2]<<2)>>2]=0}while(0);if((m|0)==15){m=oh(j,c[((i|0)==3?d:e)+40>>2]|0,d)|0;l=c[d+16>>2]|0;d=c[m+16>>2]|0;a[d+112>>0]=(a[l+112>>0]|0)==4?4:3;c[d+96>>2]=c[l+96>>2];vh(b,m)}return}function bi(a,b){a=a|0;b=b|0;var c=0;c=Uh(a,b)|0;return Vh(a,b)|0|c|0}function ci(a,b){a=a|0;b=b|0;var d=0;d=uH(12)|0;c[d>>2]=a;c[d+4>>2]=b;c[d+8>>2]=uH(O(b,a)|0)|0;return d|0}function di(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=d+16|0;l=c[o>>2]|0;k=c[(c[(c[b+16>>2]|0)+196>>2]|0)+(c[l+232>>2]<<6)+56>>2]|0;a[l+157>>0]=1;a[l+158>>0]=1;l=(c[(c[(ig(b)|0)+16>>2]|0)+180>>2]|0)>0;e=c[o>>2]|0;f=c[e+188>>2]|0;a:do if(f){m=k+4|0;n=k+8|0;d=0;b:while(1){j=c[f+(d<<2)>>2]|0;if(!j){p=e;break a}if(l){if((oz(b,c[((c[j>>2]&3|0)==3?j:j+48|0)+40>>2]|0)|0)!=0?(oz(b,c[((c[j>>2]&3|0)==2?j:j+-48|0)+40>>2]|0)|0)!=0:0)q=7}else q=7;do if((q|0)==7){q=0;h=j+16|0;if(c[(c[h>>2]|0)+156>>2]|0){e=c[j>>2]&3;g=j+-48|0;r=c[(c[((e|0)==2?j:g)+40>>2]|0)+16>>2]|0;i=c[r+284>>2]|0;f=(i|0)<(c[k>>2]|0);if((a[r+158>>0]|0)==1){if(!f){q=10;break b}e=c[(c[(c[((e|0)==3?j:j+48|0)+40>>2]|0)+16>>2]|0)+284>>2]|0;f=c[m>>2]|0;if((e|0)>=(f|0)){q=12;break b}a[(c[n>>2]|0)+((O(f,i)|0)+e)>>0]=1;wh(j);d=d+-1|0;if((a[(c[h>>2]|0)+112>>0]|0)==4)break;ai(b,j);break}else{if(!f){q=16;break b}e=c[(c[(c[((e|0)==3?j:j+48|0)+40>>2]|0)+16>>2]|0)+284>>2]|0;f=c[m>>2]|0;if((e|0)>=(f|0)){q=18;break b}a[(c[n>>2]|0)+((O(f,e)|0)+i)>>0]=1;e=c[((c[j>>2]&3|0)==2?j:g)+40>>2]|0;if(a[(c[e+16>>2]|0)+157>>0]|0)break;di(b,e);break}}}while(0);f=c[o>>2]|0;d=d+1|0;e=f;f=c[f+188>>2]|0}if((q|0)==10)qa(85898,85686,1251,85930);else if((q|0)==12)qa(85942,85686,1252,85930);else if((q|0)==16)qa(85898,85686,1260,85930);else if((q|0)==18)qa(85942,85686,1261,85930)}else p=e;while(0);a[p+158>>0]=0;return}function ei(a,b){a=a|0;b=b|0;var c=0;c=Sy(a)|0;while(1){if(!c)break;gi(a,c,b);c=Ty(a,c)|0}return}function fi(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;f=g;d=Sy(b)|0;while(1){if(!d)break;e=NL(d,c[46391]|0,0)|0;a:do if(e|0){switch(a[e>>0]|0){case 0:break a;case 111:{if(!(b$(e,85974)|0)){gi(b,d,1);break a}break}case 105:{if(!(b$(e,95660)|0)){gi(b,d,0);break a}break}default:{}}h=ry(d)|0;c[f>>2]=e;c[f+4>>2]=h;Pw(1,86009,f)|0}while(0);d=Ty(b,d)|0}l=g;return}function gi(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=c[45970]|0;h=d+16|0;f=c[h>>2]|0;a:do if(!(c[f+212>>2]|0)){i=(e|0)!=0;b:do if(i){g=0;d=0;e=f;while(1){f=c[(c[e+180>>2]|0)+(g<<2)>>2]|0;if(!f)break b;if(!(hi(f)|0)){c[j+(d<<2)>>2]=f;d=d+1|0;e=c[h>>2]|0}g=g+1|0}}else{g=0;d=0;e=f;while(1){f=c[(c[e+172>>2]|0)+(g<<2)>>2]|0;if(!f)break b;if(!(hi(f)|0)){c[j+(d<<2)>>2]=f;d=d+1|0;e=c[h>>2]|0}g=g+1|0}}while(0);if((d|0)>=2){c[j+(d<<2)>>2]=0;_0(j,d,4,61);h=i?2:3;g=i?-1:1;f=1;while(1){d=c[j+(f<<2)>>2]|0;if(!d)break a;e=c[j+(f+-1<<2)>>2]|0;e=c[((c[e>>2]&3|0)==(h|0)?e:e+(g*48|0)|0)+40>>2]|0;d=c[((c[d>>2]&3|0)==(h|0)?d:d+(g*48|0)|0)+40>>2]|0;if(hh(e,d)|0)break a;i=oh(e,d,0)|0;a[(c[i+16>>2]|0)+112>>0]=4;vh(b,i);f=f+1|0}}}while(0);return}function hi(a){a=a|0;var b=0;while(1){b=c[(c[a+16>>2]|0)+116>>2]|0;if(!b)break;else a=b}b=c[a>>2]&3;return (c[(c[(c[((b|0)==3?a:a+48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0)!=(c[(c[(c[((b|0)==2?a:a+-48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0)|0}function ii(a,b){a=a|0;b=b|0;return ((c[c[a>>2]>>2]|0)>>>4)-((c[c[b>>2]>>2]|0)>>>4)|0}function ji(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=c[a+16>>2]|0;g=f+220|0;h=c[g>>2]|0;if((h|0)>=2){i=f+216|0;a=0;e=0;while(1){if((e|0)>=(h|0))break;d=c[(c[i>>2]|0)+(e<<2)>>2]|0;if(a|0)c[(c[a+16>>2]|0)+164>>2]=d;j=c[d+16>>2]|0;c[j+168>>2]=a;a=d;d=j;while(1){d=c[d+164>>2]|0;if(!d)break;a=d;d=c[d+16>>2]|0}e=e+1|0}c[g>>2]=1;c[f+192>>2]=c[c[f+216>>2]>>2];b[f+236>>1]=c[45972];b[f+238>>1]=c[45973]}return}function ki(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=c[45971]|0;j=i+16|0;f=c[j>>2]|0;g=0;h=b[f+236>>1]|0;while(1){if((h|0)>=(b[f+238>>1]|0))break;d=c[f+196>>2]|0;if(!(a[d+(h<<6)+49>>0]|0)){e=Di(i,h)|0;d=c[j>>2]|0;f=c[d+196>>2]|0;c[f+(h<<6)+52>>2]=e;a[f+(h<<6)+49>>0]=1}else{e=c[d+(h<<6)+52>>2]|0;d=f}g=e+g|0;h=h+1|0;f=d}return g|0}function li(a){a=a|0;var d=0,e=0,f=0,g=0,i=0,j=0;a=c[a+16>>2]|0;g=b[a+238>>1]|0;i=a+196|0;a=b[a+236>>1]|0;while(1){if((a|0)>(g|0))break;f=c[i>>2]|0;e=c[f+(a<<6)>>2]|0;f=f+(a<<6)+4|0;d=0;while(1){if((d|0)>=(e|0))break;j=c[(c[(c[f>>2]|0)+(d<<2)>>2]|0)+16>>2]|0;h[j+16>>3]=+(c[j+236>>2]|0);d=d+1|0}a=a+1|0}return}function mi(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+16|0;m=r;n=d+16|0;o=GL(c[(c[n>>2]|0)+232>>2]|0)|0;j=c[n>>2]|0;f=j+192|0;g=f;while(1){g=c[g>>2]|0;if(!g)break;g=c[g+16>>2]|0;a[g+157>>0]=0;g=g+164|0}h=b[j+238>>1]|0;i=j+196|0;g=b[j+236>>1]|0;while(1){if((g|0)>(h|0))break;c[(c[i>>2]|0)+(g<<6)>>2]=0;g=g+1|0}i=(e|0)==0;while(1){g=c[f>>2]|0;if(!g)break;h=g+16|0;f=c[h>>2]|0;if((c[c[(i?f+172|0:f+180|0)>>2]>>2]|0)==0?(k=f+157|0,(a[k>>0]|0)==0):0){a[k>>0]=1;IL(o,g);while(1){f=JL(o)|0;if(!f)break;if((a[(c[f+16>>2]|0)+159>>0]|0)==7){kl(d,f,e,o);continue}else{Bi(d,f);Ci(o,f,e);continue}}f=c[h>>2]|0}f=f+164|0}if(JL(o)|0)Pw(1,86217,m)|0;f=c[n>>2]|0;j=b[f+236>>1]|0;while(1){if((j|0)>(b[f+238>>1]|0))break;a[(c[(c[(c[45971]|0)+16>>2]|0)+196>>2]|0)+(j<<6)+49>>0]=0;if((c[f+116>>2]&1|0)!=0?(p=c[f+196>>2]|0,q=c[p+(j<<6)>>2]|0,(q|0)>0):0){g=c[p+(j<<6)+4>>2]|0;h=q+-1|0;i=(h|0)/2|0;f=0;while(1){if((f|0)>(i|0))break;vi(c[g+(f<<2)>>2]|0,c[g+(h-f<<2)>>2]|0);f=f+1|0}f=c[n>>2]|0}j=j+1|0}if((ig(d)|0)==(d|0)?(ki(0)|0)>0:0)pi(d,0);HL(o);l=r;return}function ni(d){d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=d+16|0;d=c[n>>2]|0;f=b[d+236>>1]|0;e=b[d+238>>1]|0;l=e<<16>>16;m=d+196|0;g=f;while(1){if((g|0)>(l|0))break;k=c[m>>2]|0;j=c[k+(g<<6)>>2]|0;k=k+(g<<6)+4|0;i=0;while(1){if((i|0)>=(j|0))break;o=c[(c[(c[k>>2]|0)+(i<<2)>>2]|0)+16>>2]|0;c[o+236>>2]=~~+h[o+16>>3];i=i+1|0}g=g+1|0}while(1){if((f|0)>(e<<16>>16|0))break;a[(c[(c[(c[45971]|0)+16>>2]|0)+196>>2]|0)+(f<<6)+49>>0]=0;o=c[d+196>>2]|0;_0(c[o+(f<<6)+4>>2]|0,c[o+(f<<6)>>2]|0,4,62);o=c[n>>2]|0;f=f+1|0;e=b[o+238>>1]|0;d=o}return}function oi(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;g=((d|0)%4|0|0)<2&1;e=c[a+16>>2]|0;if(!(d&1)){d=b[e+236>>1]|0;f=1;e=b[e+238>>1]|0;d=(d<<16>>16<=(b[(c[(c[45971]|0)+16>>2]|0)+236>>1]|0)&1)+(d<<16>>16)|0}else{d=b[e+238>>1]|0;f=-1;e=b[e+236>>1]|0;d=((d<<16>>16>=(b[(c[(c[45971]|0)+16>>2]|0)+238>>1]|0))<<31>>31)+(d<<16>>16)|0}e=f+e|0;while(1){if((d|0)==(e|0))break;yi(a,d,g,(xi(a,d,d-f|0)|0)&255);d=d+f|0}pi(a,g^1);return}function pi(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=d+16|0;g=c[k>>2]|0;i=b[g+236>>1]|0;j=b[g+238>>1]|0;h=g+196|0;f=i<<16>>16;while(1){if((f|0)>(j|0)){h=i;break}a[(c[h>>2]|0)+(f<<6)+48>>0]=1;f=f+1|0}while(1){f=0;h=h<<16>>16;while(1){if((h|0)>(b[g+238>>1]|0))break;if(a[(c[g+196>>2]|0)+(h<<6)+48>>0]|0){f=(wi(d,h,e)|0)+f|0;g=c[k>>2]|0}h=h+1|0}if((f|0)<=0)break;h=b[g+236>>1]|0}return}function qi(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=d+16|0;e=c[o>>2]|0;n=b[e+238>>1]|0;a:while(1){if((n|0)<(b[e+236>>1]|0)){e=16;break}f=c[e+196>>2]|0;a[f+(n<<6)+48>>0]=0;p=(n|0)>0;q=n+1|0;g=0;b:while(1){l=(c[f+(n<<6)>>2]|0)+-1|0;m=f+(n<<6)+4|0;k=f+(q<<6)|0;while(1){if((g|0)>=(l|0))break b;j=c[m>>2]|0;i=c[j+(g<<2)>>2]|0;g=g+1|0;j=c[j+(g<<2)>>2]|0;if((c[(c[i+16>>2]|0)+236>>2]|0)>=(c[(c[j+16>>2]|0)+236>>2]|0)){e=7;break a}if(ri(d,i,j)|0)continue;if(p){f=si(i,j)|0;h=si(j,i)|0}else{f=0;h=0}if((c[k>>2]|0)>0){f=(ti(i,j)|0)+f|0;h=(ti(j,i)|0)+h|0}if((h|0)<=(f|0))break}ui(d,n,i,j);e=c[o>>2]|0;f=c[e+196>>2]|0}n=n+-1|0}if((e|0)==7)qa(86168,85686,721,86194);else if((e|0)==16)return}function ri(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=c[d+16>>2]|0;i=c[j+212>>2]|0;f=c[e+16>>2]|0;g=c[f+212>>2]|0;h=(i|0)!=(g|0);do if(!(a[190689]|0))if((g|0)==0|((i|0)==0|h^1))k=9;else{if((a[j+159>>0]|0)==7?(a[j+156>>0]|0)==1:0){b=0;break}if((a[f+159>>0]|0)==7?(a[f+156>>0]|0)==1:0){b=0;break}b=1}else if(h)b=1;else k=9;while(0);if((k|0)==9){f=c[b+16>>2]|0;b=c[(c[f+196>>2]|0)+(c[j+232>>2]<<6)+56>>2]|0;if(!b)b=0;else{j=(c[f+116>>2]&1|0)==0;k=O(c[b+4>>2]|0,c[(c[(j?d:e)+16>>2]|0)+284>>2]|0)|0;b=a[(c[b+8>>2]|0)+((c[(c[(j?e:d)+16>>2]|0)+284>>2]|0)+k)>>0]|0}}return b|0}function si(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;l=a+16|0;j=c[(c[d+16>>2]|0)+172>>2]|0;d=0;while(1){a=c[j>>2]|0;if(!a)break;i=c[a+16>>2]|0;k=b[i+154>>1]|0;g=c[(c[(c[((c[a>>2]&3|0)==3?a:a+48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;i=i+16|0;f=c[(c[l>>2]|0)+172>>2]|0;a=d;while(1){d=c[f>>2]|0;if(!d)break;e=(c[(c[(c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)-g|0;if((e|0)<=0){if((e|0)==0?(m=c[d+16>>2]|0,+h[m+16>>3]>+h[i>>3]):0){d=m;n=9}}else{d=c[d+16>>2]|0;n=9}if((n|0)==9){n=0;a=(O(b[d+154>>1]|0,k)|0)+a|0}f=f+4|0}j=j+4|0;d=a}return d|0}function ti(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;l=a+16|0;j=c[(c[d+16>>2]|0)+180>>2]|0;d=0;while(1){a=c[j>>2]|0;if(!a)break;i=c[a+16>>2]|0;k=b[i+154>>1]|0;g=c[(c[(c[((c[a>>2]&3|0)==2?a:a+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;i=i+56|0;f=c[(c[l>>2]|0)+180>>2]|0;a=d;while(1){d=c[f>>2]|0;if(!d)break;e=(c[(c[(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)-g|0;if((e|0)<=0){if((e|0)==0?(m=c[d+16>>2]|0,+h[m+56>>3]>+h[i>>3]):0){d=m;n=9}}else{d=c[d+16>>2]|0;n=9}if((n|0)==9){n=0;a=(O(b[d+154>>1]|0,k)|0)+a|0}f=f+4|0}j=j+4|0;d=a}return d|0}function ui(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;i=a[(c[e+16>>2]|0)+156>>0]|0;if(i<<24>>24!=(a[(c[f+16>>2]|0)+156>>0]|0)){j=b+16|0;l=c[(c[j>>2]|0)+196>>2]|0;k=c[l+(d<<6)>>2]|0;l=l+(d<<6)+4|0;b=0;g=0;h=0;while(1){if((b|0)>=(k|0))break;o=(a[(c[(c[(c[l>>2]|0)+(b<<2)>>2]|0)+16>>2]|0)+156>>0]|0)==0;b=b+1|0;g=g+(o&1)|0;h=h+((o^1)&1)|0}i=i<<24>>24==0;h=(g|0)<(h|0)?(i?e:f):i?f:e;i=0;b=0;while(1){if((b|0)>=(k|0))break;i=(c[(c[l>>2]|0)+(b<<2)>>2]|0)==(h|0)?b:i;b=b+1|0}o=(a[(c[h+16>>2]|0)+156>>0]|0)==0&1;n=0;g=i;while(1){b=g+-1|0;if((g|0)<=0){m=0;b=i;break}if((a[(c[(c[(c[l>>2]|0)+(b<<2)>>2]|0)+16>>2]|0)+156>>0]|0)!=(o|0)){m=0;b=i;break}n=n+1|0;g=b}while(1){b=b+1|0;if((b|0)>=(k|0))break;if((a[(c[(c[(c[l>>2]|0)+(b<<2)>>2]|0)+16>>2]|0)+156>>0]|0)!=(o|0))break;m=m+1|0}vi(e,f);j=c[(c[j>>2]|0)+196>>2]|0;k=c[j+(d<<6)>>2]|0;j=j+(d<<6)+4|0;b=0;while(1){if((b|0)>=(k|0)){h=0;g=i;break}i=(c[(c[j>>2]|0)+(b<<2)>>2]|0)==(h|0)?b:i;b=b+1|0}while(1){b=g+-1|0;if((g|0)<=0){g=0;b=i;break}if((a[(c[(c[(c[j>>2]|0)+(b<<2)>>2]|0)+16>>2]|0)+156>>0]|0)!=(o|0)){g=0;b=i;break}h=h+1|0;g=b}while(1){b=b+1|0;if((b|0)>=(k|0))break;if((a[(c[(c[(c[j>>2]|0)+(b<<2)>>2]|0)+16>>2]|0)+156>>0]|0)!=(o|0))break;g=g+1|0}d=h-g|0;o=n-m|0;if((((d|0)>-1?d:0-d|0)|0)>(((o|0)>-1?o:0-o|0)|0))vi(e,f)}return}function vi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=c[a+16>>2]|0;e=c[f+232>>2]|0;f=f+236|0;d=c[f>>2]|0;g=b+16|0;h=c[(c[g>>2]|0)+236>>2]|0;c[f>>2]=h;f=(c[45971]|0)+16|0;c[(c[(c[(c[f>>2]|0)+196>>2]|0)+(e<<6)+4>>2]|0)+(h<<2)>>2]=a;c[(c[g>>2]|0)+236>>2]=d;c[(c[(c[(c[f>>2]|0)+196>>2]|0)+(e<<6)+4>>2]|0)+(d<<2)>>2]=b;return}function wi(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=d+16|0;n=c[(c[q>>2]|0)+196>>2]|0;a[n+(e<<6)+48>>0]=0;r=(e|0)>0;s=e+1|0;o=(f|0)!=0;p=e+-1|0;g=0;i=0;f=n;a:while(1){l=(c[f+(e<<6)>>2]|0)+-1|0;m=f+(e<<6)+4|0;h=f+(s<<6)|0;n=g;while(1){if((n|0)>=(l|0)){f=17;break a}k=c[m>>2]|0;j=c[k+(n<<2)>>2]|0;n=n+1|0;k=c[k+(n<<2)>>2]|0;if((c[(c[j+16>>2]|0)+236>>2]|0)>=(c[(c[k+16>>2]|0)+236>>2]|0)){f=5;break a}if(ri(d,j,k)|0)continue;if(r){f=si(j,k)|0;g=si(k,j)|0}else{f=0;g=0}if((c[h>>2]|0)>0){f=(ti(j,k)|0)+f|0;g=(ti(k,j)|0)+g|0}if((f|0)>(g|0))break;if((f|0)==(g|0)&(o&(f|0)>0)){f=g;break}}vi(j,k);i=f-g+i|0;g=c[(c[(c[45971]|0)+16>>2]|0)+196>>2]|0;a[g+(e<<6)+49>>0]=0;h=c[q>>2]|0;f=c[h+196>>2]|0;a[f+(e<<6)+48>>0]=1;if((b[h+236>>1]|0)<(e|0)){a[g+(p<<6)+49>>0]=0;a[f+(p<<6)+48>>0]=1}if((b[h+238>>1]|0)<=(e|0)){g=n;continue}a[g+(s<<6)+49>>0]=0;a[f+(s<<6)+48>>0]=1;g=n}if((f|0)==5)qa(86168,85686,770,86202);else if((f|0)==17)return i|0;return 0}function xi(a,e,f){a=a|0;e=e|0;f=f|0;var g=0,i=0.0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=c[45969]|0;q=a+16|0;a=c[(c[q>>2]|0)+196>>2]|0;r=c[a+(e<<6)+4>>2]|0;n=(f|0)>(e|0);o=p+4|0;m=0;while(1){f=c[a+(e<<6)>>2]|0;if((m|0)>=(f|0)){a=0;j=0;break}l=(c[r+(m<<2)>>2]|0)+16|0;a=c[l>>2]|0;a:do if(n){k=c[a+180>>2]|0;a=0;j=0;while(1){f=c[k+(j<<2)>>2]|0;if(!f)break a;g=c[f+16>>2]|0;if((b[g+154>>1]|0)>0){c[p+(a<<2)>>2]=c[(c[(c[((c[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]<<8|d[g+88>>0];a=a+1|0}j=j+1|0}}else{k=c[a+172>>2]|0;j=0;a=0;while(1){f=c[k+(j<<2)>>2]|0;if(!f)break a;g=c[f+16>>2]|0;if((b[g+154>>1]|0)>0){c[p+(a<<2)>>2]=c[(c[(c[((c[f>>2]&3|0)==3?f:f+48|0)+40>>2]|0)+16>>2]|0)+236>>2]<<8|d[g+48>>0];a=a+1|0}j=j+1|0}}while(0);b:do switch(a|0){case 0:{i=-1.0;break}case 1:{i=+(c[p>>2]|0);break}case 2:{i=+(((c[o>>2]|0)+(c[p>>2]|0)|0)/2|0|0);break}default:{_0(p,a,4,60);f=(a|0)/2|0;if(a&1|0){i=+(c[p+(f<<2)>>2]|0);break b}j=c[p+(f<<2)>>2]|0;g=(c[p+(a+-1<<2)>>2]|0)-j|0;a=c[p+(f+-1<<2)>>2]|0;f=a-(c[p>>2]|0)|0;if((f|0)==(g|0)){i=+((a+j|0)/2|0|0);break b}else{i=+(((O(f,j)|0)+(O(a,g)|0)|0)/(f+g|0)|0|0);break b}}}while(0);h[(c[l>>2]|0)+240>>3]=i;m=m+1|0;a=c[(c[q>>2]|0)+196>>2]|0}while(1){if((j|0)>=(f|0))break;g=c[r+(j<<2)>>2]|0;p=c[g+16>>2]|0;if((c[p+184>>2]|0)==0?(c[p+176>>2]|0)==0:0){a=(zi(g)|0|a&255)&255;f=c[(c[(c[q>>2]|0)+196>>2]|0)+(e<<6)>>2]|0}j=j+1|0}return a|0}function yi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0;o=c[(c[b+16>>2]|0)+196>>2]|0;s=c[o+(d<<6)+4>>2]|0;o=c[o+(d<<6)>>2]|0;q=(e|0)!=0;p=(f|e|0)==0;f=0;e=o;o=s+(o<<2)|0;while(1){n=e+-1|0;if((e|0)>0)e=s;else break;a:while(1){b:while(1){if(e>>>0>=o>>>0)break a;while(1){if(e>>>0>=o>>>0)break a;l=c[e>>2]|0;m=+h[(c[l+16>>2]|0)+240>>3];if(!(m<0.0))break;e=e+4|0}k=0;while(1){g=k<<24>>24==0;while(1){e=e+4|0;if(e>>>0>=o>>>0)break a;if(g){g=11;break}i=c[e>>2]|0;if(!(c[(c[i+16>>2]|0)+212>>2]|0)){g=13;break}}if((g|0)==11){i=c[e>>2]|0;j=i}else if((g|0)==13)j=i;if(ri(b,l,j)|0)continue b;g=c[i+16>>2]|0;if(+h[g+240>>3]>=0.0)break;k=(c[g+212>>2]|0)==0?k:1}g=~~m;k=~~+h[(c[i+16>>2]|0)+240>>3];if((g|0)>(k|0)|q&(g|0)==(k|0))break}vi(l,j);f=f+1|0}e=n;o=p?o+-4|0:o}if(f|0?(r=c[(c[(c[45971]|0)+16>>2]|0)+196>>2]|0,a[r+(d<<6)+49>>0]=0,(d|0)>0):0)a[r+(d+-1<<6)+49>>0]=0;return}function zi(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;g=c[a+16>>2]|0;if((c[g+200>>2]|0)>0){f=c[g+196>>2]|0;a=c[f>>2]|0;a=c[((c[a>>2]&3|0)==3?a:a+48|0)+40>>2]|0;d=1;while(1){e=c[f+(d<<2)>>2]|0;if(!e)break;e=c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0;a=(c[(c[e+16>>2]|0)+236>>2]|0)>(c[(c[a+16>>2]|0)+236>>2]|0)?e:a;d=d+1|0}b=+h[(c[a+16>>2]|0)+240>>3];if(!(b>=0.0))a=1;else{h[g+240>>3]=b+1.0;a=0}}else if((c[g+192>>2]|0)>0){e=c[g+188>>2]|0;d=c[e>>2]|0;a=1;d=c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0;while(1){f=c[e+(a<<2)>>2]|0;if(!f)break;f=c[((c[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0;a=a+1|0;d=(c[(c[f+16>>2]|0)+236>>2]|0)<(c[(c[d+16>>2]|0)+236>>2]|0)?f:d}b=+h[(c[d+16>>2]|0)+240>>3];if(b>0.0){h[g+240>>3]=b+-1.0;a=0}else a=1}else a=1;return a|0}function Ai(a,b){a=a|0;b=b|0;return (c[(c[(c[a>>2]|0)+16>>2]|0)+236>>2]|0)-(c[(c[(c[b>>2]|0)+16>>2]|0)+236>>2]|0)|0}function Bi(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+96|0;o=p+64|0;n=p+48|0;h=p+24|0;f=p;j=d+16|0;k=c[(c[j>>2]|0)+232>>2]|0;m=a+16|0;e=c[(c[m>>2]|0)+196>>2]|0;i=c[e+(k<<6)>>2]|0;do if((c[e+(k<<6)+8>>2]|0)>=1){c[(c[e+(k<<6)+4>>2]|0)+(i<<2)>>2]=d;c[(c[j>>2]|0)+236>>2]=i;a=c[m>>2]|0;f=c[a+196>>2]|0;e=f+(k<<6)|0;g=c[e>>2]|0;c[e>>2]=g+1;if((g|0)>=(c[f+(k<<6)+8>>2]|0))qa(86282,85686,1346,86318);g=c[(c[(c[(c[45971]|0)+16>>2]|0)+196>>2]|0)+(k<<6)+8>>2]|0;if((i|0)>(g|0)){m=ry(d)|0;n=c[(c[j>>2]|0)+236>>2]|0;o=c[(c[(c[(c[45971]|0)+16>>2]|0)+196>>2]|0)+(k<<6)+8>>2]|0;c[h>>2]=1359;c[h+4>>2]=m;c[h+8>>2]=n;c[h+12>>2]=k;c[h+16>>2]=o;Pw(1,86334,h)|0;break}e=b[a+236>>1]|0;a=b[a+238>>1]|0;if((k|0)<(e|0)|(k|0)>(a<<16>>16|0)){c[n>>2]=1364;c[n+4>>2]=k;c[n+8>>2]=e;c[n+12>>2]=a<<16>>16;Pw(1,86407,n)|0;break}if(((c[f+(k<<6)+4>>2]|0)+(i<<2)|0)>>>0>((c[f+(k<<6)+12>>2]|0)+(g<<2)|0)>>>0){i=ry(d)|0;n=c[(c[m>>2]|0)+196>>2]|0;m=(c[n+(k<<6)+4>>2]|0)+(c[(c[j>>2]|0)+236>>2]<<2)|0;n=(c[n+(k<<6)+12>>2]|0)+(c[(c[(c[(c[45971]|0)+16>>2]|0)+196>>2]|0)+(k<<6)+8>>2]<<2)|0;c[o>>2]=1370;c[o+4>>2]=k;c[o+8>>2]=i;c[o+12>>2]=m;c[o+16>>2]=k;c[o+20>>2]=k;c[o+24>>2]=n;Pw(1,86468,o)|0}}else{n=ry(a)|0;o=ry(d)|0;c[f>>2]=1339;c[f+4>>2]=n;c[f+8>>2]=o;c[f+12>>2]=k;c[f+16>>2]=i;Pw(1,86227,f)|0}while(0);l=p;return}function Ci(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=d+16|0;a:do if(!e){g=0;while(1){d=c[h>>2]|0;if((g|0)>=(c[d+184>>2]|0))break a;d=c[(c[d+180>>2]|0)+(g<<2)>>2]|0;e=d+-48|0;f=(c[(c[((c[d>>2]&3|0)==2?d:e)+40>>2]|0)+16>>2]|0)+157|0;if(!(a[f>>0]|0)){a[f>>0]=1;IL(b,c[((c[d>>2]&3|0)==2?d:e)+40>>2]|0)}g=g+1|0}}else{g=0;while(1){d=c[h>>2]|0;if((g|0)>=(c[d+176>>2]|0))break a;d=c[(c[d+172>>2]|0)+(g<<2)>>2]|0;e=d+48|0;f=(c[(c[((c[d>>2]&3|0)==3?d:e)+40>>2]|0)+16>>2]|0)+157|0;if(!(a[f>>0]|0)){a[f>>0]=1;IL(b,c[((c[d>>2]&3|0)==3?d:e)+40>>2]|0)}g=g+1|0}}while(0);return}function Di(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;u=v;g=d+16|0;f=c[(c[g>>2]|0)+196>>2]|0;s=c[f+(e<<6)+4>>2]|0;t=e+1|0;d=c[(c[(c[(c[45971]|0)+16>>2]|0)+196>>2]|0)+(t<<6)>>2]|0;if((c[45975]|0)>(d|0))q=c[45976]|0;else{d=d+1|0;c[45975]=d;f=c[45976]|0;if(!f)d=vH(d<<2)|0;else d=xH(f,d<<2)|0;c[45976]=d;f=c[(c[g>>2]|0)+196>>2]|0;q=d}r=f+(t<<6)|0;d=0;while(1){if((d|0)>=(c[r>>2]|0))break;c[q+(d<<2)>>2]=0;d=d+1|0}p=f+(e<<6)|0;o=0;h=0;d=0;j=q;while(1){k=c[p>>2]|0;if((o|0)>=(k|0))break;n=c[(c[(c[s+(o<<2)>>2]|0)+16>>2]|0)+180>>2]|0;a:do if((h|0)>0){m=0;while(1){g=c[n+(m<<2)>>2]|0;if(!g)break a;k=g+16|0;i=c[(c[(c[((c[g>>2]&3|0)==2?g:g+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;while(1){g=i+1|0;if((i|0)>=(h|0))break;i=g;d=(O(c[j+(g<<2)>>2]|0,b[(c[k>>2]|0)+154>>1]|0)|0)+d|0}m=m+1|0}}while(0);i=0;while(1){g=c[n+(i<<2)>>2]|0;if(!g)break;j=c[(c[(c[((c[g>>2]&3|0)==2?g:g+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;m=q+(j<<2)|0;c[m>>2]=(c[m>>2]|0)+(b[(c[g+16>>2]|0)+154>>1]|0);h=(j|0)>(h|0)?j:h;i=i+1|0;j=q}o=o+1|0}i=f+(e<<6)+4|0;h=0;while(1){if((h|0)>=(k|0))break;g=c[(c[(c[i>>2]|0)+(h<<2)>>2]|0)+16>>2]|0;if(a[g+145>>0]|0){e=g+180|0;c[u>>2]=c[e>>2];c[u+4>>2]=c[e+4>>2];d=(Ei(u,1)|0)+d|0}h=h+1|0}i=c[r>>2]|0;h=f+(t<<6)+4|0;g=0;while(1){if((g|0)>=(i|0))break;f=c[(c[(c[h>>2]|0)+(g<<2)>>2]|0)+16>>2]|0;if(a[f+145>>0]|0){t=f+172|0;c[u>>2]=c[t>>2];c[u+4>>2]=c[t+4>>2];d=(Ei(u,-1)|0)+d|0}g=g+1|0}l=v;return d|0}function Ei(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;n=(d|0)<1;l=c[a>>2]|0;d=0;a=0;a:while(1){m=c[l+(d<<2)>>2]|0;if(!m)break;d=d+1|0;if(n){j=m+48|0;k=m+16|0;i=d;while(1){e=c[l+(i<<2)>>2]|0;if(!e)continue a;f=c[e+16>>2]|0;g=c[k>>2]|0;if((+h[f+56>>3]-+h[g+56>>3])*+((c[(c[(c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)-(c[(c[(c[((c[m>>2]&3|0)==3?m:j)+40>>2]|0)+16>>2]|0)+236>>2]|0)|0)<0.0)a=(O(b[f+154>>1]|0,b[g+154>>1]|0)|0)+a|0;i=i+1|0}}else{j=m+-48|0;k=m+16|0;i=d;while(1){e=c[l+(i<<2)>>2]|0;if(!e)continue a;f=c[e+16>>2]|0;g=c[k>>2]|0;if((+h[f+16>>3]-+h[g+16>>3])*+((c[(c[(c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)-(c[(c[(c[((c[m>>2]&3|0)==2?m:j)+40>>2]|0)+16>>2]|0)+236>>2]|0)|0)<0.0)a=(O(b[f+154>>1]|0,b[g+154>>1]|0)|0)+a|0;i=i+1|0}}}return a|0}function Fi(a){a=a|0;var b=0.0,d=0.0;c[45974]=8;c[46365]=24;h[22830]=.995;a=xx(a,86590)|0;if(a|0?(b=+b2(a),b>0.0):0){d=b*+(c[45974]|0);c[45974]=~~(d>1.0?d:1.0);b=b*+(c[46365]|0);c[46365]=~~(b>1.0?b:1.0)}return}function Gi(a){a=a|0;var d=0,e=0;e=(b[(c[a+16>>2]|0)+238>>1]|0)+2|0;d=uH(e<<2)|0;Ii(a,d,e,0)|0;D_(d);return}function Hi(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=a+16|0;i=uH((b[(c[h>>2]|0)+238>>1]<<2)+8|0)|0;g=Sy(a)|0;while(1){if(!g)break;f=i+(c[(c[g+16>>2]|0)+232>>2]<<2)|0;c[f>>2]=(c[f>>2]|0)+1;f=Ex(a,g)|0;while(1){if(!f)break;j=c[f>>2]&3;d=c[(c[(c[((j|0)==3?f:f+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0;j=c[(c[(c[((j|0)==2?f:f+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0;k=(d|0)>(j|0);e=k?d:j;d=k?j:d;while(1){d=d+1|0;if((d|0)>=(e|0))break;k=i+(d<<2)|0;c[k>>2]=(c[k>>2]|0)+1}f=Gx(a,f)|0}g=Ty(a,g)|0}f=uH((b[(c[h>>2]|0)+238>>1]<<6)+128|0)|0;e=c[h>>2]|0;c[e+196>>2]=f;d=b[e+236>>1]|0;while(1){if((d|0)>(b[e+238>>1]|0))break;j=i+(d<<2)|0;e=c[j>>2]|0;c[f+(d<<6)>>2]=e;c[f+(d<<6)+8>>2]=e;j=uH((c[j>>2]<<2)+4|0)|0;e=c[h>>2]|0;k=c[e+196>>2]|0;c[k+(d<<6)+4>>2]=j;c[k+(d<<6)+12>>2]=j;d=d+1|0;f=k}D_(i);return}function Ii(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,l=0,m=0;m=a+16|0;i=1;while(1){g=c[m>>2]|0;if((i|0)>(c[g+180>>2]|0))break;l=Ii(c[(c[g+184>>2]|0)+(i<<2)>>2]|0,d,e,f)|0;i=i+1|0;f=l}a:do if((ig(a)|0)!=(a|0)){H3(d|0,0,e<<2|0)|0;g=Sy(a)|0;while(1){if(!g)break;k=g+16|0;c[d+(c[(c[k>>2]|0)+232>>2]<<2)>>2]=1;i=Ex(a,g)|0;while(1){if(!i)break;l=i+-48|0;j=c[(c[k>>2]|0)+232>>2]|0;while(1){e=j+1|0;if((j|0)>=(c[(c[(c[((c[i>>2]&3|0)==2?i:l)+40>>2]|0)+16>>2]|0)+232>>2]|0))break;c[d+(e<<2)>>2]=1;j=e}i=Gx(a,i)|0}g=Ty(a,g)|0}g=c[m>>2]|0;i=b[g+236>>1]|0;while(1){if((i|0)>(b[g+238>>1]|0))break a;if(!(c[d+(i<<2)>>2]|0)){if(!f)f=vA(ig(a)|0,86580,1)|0;g=az(f,0,1)|0;Az(g,134365,304,1)|0;l=g+16|0;j=c[l>>2]|0;c[j+232>>2]=i;h[j+96>>3]=.5;h[j+88>>3]=.5;h[j+80>>3]=1.0;c[j+216>>2]=1;c[j+176>>2]=0;j=uH(20)|0;k=c[l>>2]|0;c[k+172>>2]=j;c[k+184>>2]=0;k=uH(20)|0;c[(c[l>>2]|0)+180>>2]=k;Xy(a,g,1)|0;g=c[m>>2]|0}i=i+1|0}}while(0);return f|0}function Ji(a){a=a|0;var b=0,d=0;Zh(a);b=a+16|0;a=1;while(1){d=c[b>>2]|0;if((a|0)>(c[d+180>>2]|0))break;Ji(c[(c[d+184>>2]|0)+(a<<2)>>2]|0);a=a+1|0}return}function Ki(a){a=a|0;var b=0,d=0;b=c[a>>2]&3;d=Li(c[((b|0)==3?a:a+48|0)+40>>2]|0)|0;b=c[17308+(d*12|0)+((Li(c[((b|0)==2?a:a+-48|0)+40>>2]|0)|0)<<2)>>2]|0;a=(c[a+16>>2]|0)+156|0;c[a>>2]=O(c[a>>2]|0,b)|0;return}function Li(b){b=b|0;b=c[b+16>>2]|0;if((a[b+156>>0]|0)==1)b=2;else b=(a[b+160>>0]|0)<2&1;return b|0}function Mi(b,d){b=b|0;d=d|0;if(c[(c[b+16>>2]|0)+192>>2]|0){ll(b);Ni(b);if(a[191874]|0)zl(b);Oi(b);if(Rl(b)|0)Ni(b);Pi(b);if(fI(b,2,Qi(b)|0)|0?(Ri(b),fI(b,2,Qi(b)|0)|0):0)qa(86598,86626,134,86637);Si(b);Ti(b,d);Ui(b)}return}function Ni(d){d=d|0;var e=0,f=0,g=0,i=0,j=0.0,k=0.0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0,z=0.0;v=d+16|0;e=c[v>>2]|0;w=c[e+196>>2]|0;t=b[e+236>>1]|0;while(1){if((t|0)>(b[e+238>>1]|0))break;n=w+(t<<6)|0;o=w+(t<<6)+4|0;p=w+(t<<6)+40|0;q=w+(t<<6)+24|0;r=w+(t<<6)+32|0;s=w+(t<<6)+16|0;m=0;while(1){if((m|0)>=(c[n>>2]|0))break;l=(c[(c[o>>2]|0)+(m<<2)>>2]|0)+16|0;e=c[l>>2]|0;j=+h[e+80>>3]*.5;i=c[e+204>>2]|0;a:do if(i){g=0;while(1){f=c[i+(g<<2)>>2]|0;if(!f)break a;x=c[f>>2]&3;if((c[((x|0)==3?f:f+48|0)+40>>2]|0)==(c[((x|0)==2?f:f+-48|0)+40>>2]|0)?(u=c[(c[f+16>>2]|0)+96>>2]|0,(u|0)!=0):0){k=+h[u+32>>3]*.5;j=j>k?j:k}g=g+1|0}}while(0);if(+h[p>>3]<j){h[q>>3]=j;h[p>>3]=j}if(+h[r>>3]<j){h[s>>3]=j;h[r>>3]=j}f=c[e+212>>2]|0;if(f|0){if((f|0)==(d|0))g=0;else{g=KL(f,c[46374]|0,8,0)|0;e=c[l>>2]|0}i=c[e+232>>2]|0;f=c[f+16>>2]|0;e=f+128|0;j=j+ +(g|0);if((i|0)==(b[f+236>>1]|0)){k=+h[e>>3];h[e>>3]=k>j?k:j}e=f+120|0;if((i|0)==(b[f+238>>1]|0)){k=+h[e>>3];h[e>>3]=k>j?k:j}}m=m+1|0}t=t+1|0;e=c[v>>2]|0}m=tj(d)|0;g=c[v>>2]|0;e=b[g+238>>1]|0;h[(c[(c[c[w+(e<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]=+h[w+(e<<6)+16>>3];f=b[g+236>>1]|0;i=g+252|0;k=0.0;while(1){l=e+-1|0;if((e|0)<=(f|0))break;y=+h[w+(l<<6)+32>>3]+ +h[w+(e<<6)+40>>3]+ +(c[i>>2]|0);j=+h[w+(e<<6)+24>>3]+8.0+ +h[w+(l<<6)+16>>3];j=y>j?y:j;if((c[w+(l<<6)>>2]|0)>0)h[(c[(c[c[w+(l<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]=+h[(c[(c[c[w+(e<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]+j;k=k>j?k:j;e=l}b:do if((m|0)!=0?(c[g+116>>2]&1|0)!=0:0){uj(d,0);g=c[v>>2]|0;if(a[g+276>>0]|0){e=b[g+238>>1]|0;f=b[g+236>>1]|0;j=+h[(c[(c[c[w+(e<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3];k=0.0;while(1){i=e+-1|0;if((e|0)<=(f|0))break b;z=+h[(c[(c[c[w+(i<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3];y=z-j;j=z;k=k>y?k:y;e=i}}}while(0);c:do if(a[g+276>>0]|0){i=b[g+236>>1]|0;f=b[g+238>>1]|0;while(1){e=f+-1|0;if((f|0)<=(i|0))break c;if((c[w+(e<<6)>>2]|0)<=0){f=e;continue}h[(c[(c[c[w+(e<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]=+h[(c[(c[c[w+(f<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]+k;f=e}}while(0);e=g+192|0;while(1){e=c[e>>2]|0;if(!e)break;e=c[e+16>>2]|0;h[e+24>>3]=+h[(c[(c[c[w+(c[e+232>>2]<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3];e=e+164|0}return}function Oi(a){a=a|0;var b=0,d=0,e=0;pj(a);b=(c[a+16>>2]|0)+192|0;while(1){b=c[b>>2]|0;if(!b)break;e=b+16|0;b=c[e>>2]|0;d=c[b+224>>2]|0;if(d){qj(a,d);b=c[e>>2]|0}d=c[b+228>>2]|0;if(!d)d=b;else{qj(a,d);d=c[e>>2]|0}e=c[d+204>>2]|0;if(e|0){b=0;while(1)if(!(c[e+(b<<2)>>2]|0))break;else b=b+1|0}b=d+164|0}return}function Pi(a){a=a|0;bj(a);cj(a);dj(a);ej(a);fj(a);return}function Qi(a){a=a|0;var b=0,c=0.0;b=xx(a,86826)|0;if(!b)a=2147483647;else{c=+b2(b);a=~~(c*+(ay(a)|0))}return a|0}function Ri(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=d+16|0;e=c[r>>2]|0;q=b[e+236>>1]|0;while(1){p=b[e+238>>1]|0;if((q|0)>(p|0)){s=19;break}n=c[e+196>>2]|0;o=n+(q<<6)|0;m=c[o>>2]|0;n=n+(q<<6)+4|0;l=0;f=0;a:while(1){if((l|0)>=(m|0)){s=14;break}f=c[(c[n>>2]|0)+(l<<2)>>2]|0;h=c[f+16>>2]|0;i=c[h+256>>2]|0;b:do if(i|0){g=0;while(1){j=c[i+(g<<2)>>2]|0;if(!j)break b;k=c[j>>2]&3;if((c[(c[(c[((k|0)==2?j:j+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)>(q|0))break a;if((c[(c[(c[((k|0)==3?j:j+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)>(q|0))break a;else g=g+1|0}}while(0);h=c[h+248>>2]|0;c:do if(h|0){g=0;while(1){i=c[h+(g<<2)>>2]|0;if(!i)break c;j=c[i>>2]&3;if((c[(c[(c[((j|0)==3?i:i+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)>(q|0))break a;if((c[(c[(c[((j|0)==2?i:i+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)>(q|0))break a;else g=g+1|0}}while(0);l=l+1|0}if((s|0)==14){s=0;if(f){f=c[c[n>>2]>>2]|0;e=c[c[o+(((q|0)<(p|0)?1:-1)<<6)+4>>2]>>2]|0;if(!e){s=16;break}o=uh(d)|0;p=o+16|0;a[(c[p>>2]|0)+156>>0]=2;$i(o,f,0.0,0)|0;$i(o,e,0.0,0)|0;c[(c[p>>2]|0)+232>>2]=c[(c[((c[(c[f+16>>2]|0)+232>>2]|0)<(c[(c[e+16>>2]|0)+232>>2]|0)?f:e)+16>>2]|0)+232>>2];e=c[r>>2]|0}}q=q+1|0}if((s|0)==16)qa(86734,86626,111,86737);else if((s|0)==19)return}function Si(a){a=a|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0;a=c[a+16>>2]|0;i=c[a+196>>2]|0;e=b[a+238>>1]|0;a=b[a+236>>1]|0;while(1){if((a|0)>(e|0))break;f=c[i+(a<<6)>>2]|0;g=i+(a<<6)+4|0;d=0;while(1){if((d|0)>=(f|0))break;k=c[(c[(c[g>>2]|0)+(d<<2)>>2]|0)+16>>2]|0;j=k+232|0;h[k+16>>3]=+(c[j>>2]|0);c[j>>2]=a;d=d+1|0}a=a+1|0}return}function Ti(a,d){a=a|0;d=d|0;var e=0,f=0.0,g=0,i=0.0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0;Vi(a,a);g=a+16|0;k=c[g>>2]|0;a:do if((b[k+238>>1]|0)>0?(j=c[k+8>>2]|0,e=c[j+84>>2]|0,e|0):0){o=~~(+h[k+32>>3]-+h[k+16>>3]);m=~~(+h[k+40>>3]-+h[k+24>>3]);p=(c[k+116>>2]&1|0)==0;n=p?m:o;m=p?o:m;if((e|0)==4){e=Wi(a)|0;k=c[g>>2]|0;j=c[k+8>>2]|0}else e=(e|0)==2&1;b:do if(!(e<<24>>24)){switch(c[j+84>>2]|0){case 5:{f=+h[j+64>>3];if(f<=0.0)break a;i=f/+h[k+32>>3];l=+h[j+72>>3]/+h[k+40>>3];f=i<l?i:l;if(i>1.0&l>1.0){l=f;break b}else break a}case 1:break;default:break a}i=+h[j+16>>3];f=+(n|0)/+(m|0);if(f<i){l=1.0;f=i/f;break}else{l=f/i;f=1.0;break}}else{f=+h[j+64>>3];if(f<=0.0)break a;i=f/+(m|0);f=+h[j+72>>3]/+(n|0);if(i<1.0|f<1.0)if(i<f){l=1.0;f=f/i;break}else{l=i/f;f=1.0;break}else l=i}while(0);e=(c[k+116>>2]&1|0)==0;i=e?f:l;f=e?l:f;e=k+192|0;while(1){e=c[e>>2]|0;if(!e)break;e=c[e+16>>2]|0;p=e+16|0;l=+h[p>>3]*f;h[p>>3]=+(~~(l+(l>=0.0?.5:-.5))|0);p=e+24|0;l=+h[p>>3]*i;h[p>>3]=+(~~(l+(l>=0.0?.5:-.5))|0);e=e+164|0}Xi(a,f,i)}while(0);if(d|0)Yi(a,d);return}function Ui(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=b+16|0;b=(c[h>>2]|0)+192|0;while(1){b=c[b>>2]|0;if(!b)break;g=b+16|0;d=0;while(1){b=c[g>>2]|0;f=c[b+180>>2]|0;e=c[f+(d<<2)>>2]|0;if(!e)break;D_(c[e+16>>2]|0);D_(e);d=d+1|0}if(f){D_(f);b=c[g>>2]|0}d=c[b+172>>2]|0;if(d){D_(d);b=c[g>>2]|0}f=b+256|0;e=c[f+4>>2]|0;b=b+180|0;c[b>>2]=c[f>>2];c[b+4>>2]=e;b=c[g>>2]|0;e=b+248|0;f=c[e+4>>2]|0;b=b+172|0;c[b>>2]=c[e>>2];c[b+4>>2]=f;b=(c[g>>2]|0)+164|0}b=0;d=c[(c[h>>2]|0)+192>>2]|0;a:while(1){g=(b|0)==0;f=b+16|0;b=d;while(1){if(!b)break a;e=c[b+16>>2]|0;d=c[e+164>>2]|0;if((a[e+156>>0]|0)!=2)continue a;if(g)c[(c[h>>2]|0)+192>>2]=d;else c[(c[f>>2]|0)+164>>2]=d;D_(e);D_(b);b=d}}c[(c[(c[(c[h>>2]|0)+192>>2]|0)+16>>2]|0)+168>>2]=0;return}function Vi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=a+16|0;d=1;while(1){f=c[e>>2]|0;if((d|0)>(c[f+180>>2]|0))break;Vi(c[(c[f+184>>2]|0)+(d<<2)>>2]|0,b);d=d+1|0}_i(a,b);return}function Wi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0.0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;s=l;l=l+80|0;e=s+64|0;d=s+48|0;f=s+16|0;m=s;r=s+32|0;a=a+16|0;b=c[(c[a>>2]|0)+8>>2]|0;t=b+48|0;c[f>>2]=c[t>>2];c[f+4>>2]=c[t+4>>2];c[f+8>>2]=c[t+8>>2];c[f+12>>2]=c[t+12>>2];if((!(+h[f>>3]<.001)?(g=f+8|0,!(+h[g>>3]<.001)):0)?(i=b+32|0,c[m>>2]=c[i>>2],c[m+4>>2]=c[i+4>>2],c[m+8>>2]=c[i+8>>2],c[m+12>>2]=c[i+12>>2],c[d>>2]=c[f>>2],c[d+4>>2]=c[f+4>>2],c[d+8>>2]=c[f+8>>2],c[d+12>>2]=c[f+12>>2],c[e>>2]=c[i>>2],c[e+4>>2]=c[i+4>>2],c[e+8>>2]=c[i+8>>2],c[e+12>>2]=c[i+12>>2],Zi(r,d,e),c[f>>2]=c[r>>2],c[f+4>>2]=c[r+4>>2],c[f+8>>2]=c[r+8>>2],c[f+12>>2]=c[r+12>>2],c[d>>2]=c[r>>2],c[d+4>>2]=c[r+4>>2],c[d+8>>2]=c[r+8>>2],c[d+12>>2]=c[r+12>>2],c[e>>2]=c[m>>2],c[e+4>>2]=c[m+4>>2],c[e+8>>2]=c[m+8>>2],c[e+12>>2]=c[m+12>>2],Zi(f,d,e),i=c[a>>2]|0,j=+h[i+32>>3],k=+h[i+40>>3],n=+h[f>>3],o=n/j,p=+h[g>>3],q=p/k,!(o>=1.0&q>=1.0)):0){o=o<q?o:q;o=o>.5?o:.5;q=+N(+(o*k/p))*p/k;p=+N(+(o*j/n))*n/j*j;a=c[i+8>>2]|0;h[a+64>>3]=p;h[a+72>>3]=q*k;a=1}else a=0;l=s;return a|0}function Xi(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0;e=a+16|0;a=1;while(1){f=c[e>>2]|0;if((a|0)>(c[f+180>>2]|0))break;Xi(c[(c[f+184>>2]|0)+(a<<2)>>2]|0,b,d);a=a+1|0}e=f+16|0;h[e>>3]=+h[e>>3]*b;e=f+24|0;h[e>>3]=+h[e>>3]*d;e=f+32|0;h[e>>3]=+h[e>>3]*b;f=f+40|0;h[f>>3]=+h[f>>3]*d;return}function Yi(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0,g=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+24|0;g=m+16|0;f=m;n=c[a+16>>2]|0;e=+h[n+32>>3]-+h[n+16>>3];d=+h[n+40>>3]-+h[n+24>>3];i=e/d;if(0){n=c[15686]|0;h[f>>3]=i;h[f+8>>3]=e*.0001*d;g1(n,86650,f)|0;c[g>>2]=zk(a)|0;g1(n,86675,g)|0}d=+h[b>>3];do if(!(i>d*1.1)){a=b+24|0;if(!(i<=d*.8)){c[a>>2]=0;k=9;break}c[a>>2]=-1;if(0){E1(86685,34,1,c[15686]|0)|0;k=9}}else{c[b+24>>2]=~~(d*+((c[b+20>>2]|0)-(c[b+16>>2]|0)|0)/i);k=9}while(0);if((k|0)==9?0:0){n=c[15686]|0;c[j>>2]=c[b+24>>2];g1(n,86720,j)|0}l=m;return}function Zi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+h[b+8>>3]-+h[c+8>>3];h[a>>3]=+h[b>>3]-+h[c>>3];h[a+8>>3]=d;return}function _i(d,e){d=d|0;e=e|0;var f=0,g=0.0,i=0.0,j=0,k=0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0;s=(ig(d)|0)==(d|0);v=d+16|0;w=c[v>>2]|0;a:do if(s){f=b[w+236>>1]|0;d=b[w+238>>1]|0;q=d<<16>>16;r=w+196|0;s=w+196|0;p=f<<16>>16;i=-2147483647.0;g=2147483647.0;while(1){if((p|0)>(q|0))break;j=c[r>>2]|0;o=c[j+(p<<6)>>2]|0;if((o|0)!=0?(t=c[j+(p<<6)+4>>2]|0,u=c[t>>2]|0,(u|0)!=0):0){l=1;j=u;while(1){j=c[j+16>>2]|0;k=a[j+156>>0]|0;if(!((l|0)<(o|0)&k<<24>>24!=0))break;j=c[t+(l<<2)>>2]|0;l=l+1|0}if(!(k<<24>>24)){m=+h[j+16>>3]-+h[j+88>>3];n=g<m;l=c[(c[s>>2]|0)+(p<<6)+4>>2]|0;k=o+-2|0;j=o+-1|0;while(1){j=c[(c[l+(j<<2)>>2]|0)+16>>2]|0;if(!(a[j+156>>0]|0))break;else{j=k;k=k+-1|0}}x=+h[j+96>>3]+ +h[j+16>>3];i=i>x?i:x;g=n?g:m}}p=p+1|0}k=c[w+180>>2]|0;l=w+184|0;j=1;while(1){if((j|0)>(k|0))break a;u=c[(c[(c[l>>2]|0)+(j<<2)>>2]|0)+16>>2]|0;x=+h[u+16>>3]+-8.0;m=+h[u+32>>3]+8.0;j=j+1|0;i=i>m?i:m;g=g<x?g:x}}else{i=+(c[(c[(c[w+260>>2]|0)+16>>2]|0)+232>>2]|0);g=+(c[(c[(c[w+256>>2]|0)+16>>2]|0)+232>>2]|0);f=b[w+236>>1]|0;d=b[w+238>>1]|0}while(0);e=c[(c[e+16>>2]|0)+196>>2]|0;m=+h[(c[(c[c[e+(d<<16>>16<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]-+h[w+120>>3];x=+h[w+128>>3]+ +h[(c[(c[c[e+(f<<16>>16<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3];h[w+16>>3]=g;h[w+24>>3]=m;e=c[v>>2]|0;h[e+32>>3]=i;h[e+40>>3]=x;return}function $i(a,d,e,f){a=a|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0;i=uH(96)|0;j=i+48|0;c[j>>2]=c[j>>2]|3;c[i>>2]=c[i>>2]&-4|2;g=uH(176)|0;h=i+16|0;c[h>>2]=g;c[((c[i>>2]&3|0)==3?i:j)+40>>2]=a;c[((c[i>>2]&3|0)==2?i:i+-48|0)+40>>2]=d;if(e>65535.0){aj(e);e=65535.0;g=c[h>>2]|0}b[g+170>>1]=~~(e+(e>=0.0?.5:-.5));c[g+156>>2]=f;ih(i)|0;return i|0}function aj(a){a=+a;var b=0,d=0;b=l;l=l+16|0;d=b;h[d>>3]=a;c[d+8>>2]=65535;Pw(1,86750,d)|0;l=b;return}function bj(a){a=a|0;var b=0,d=0,e=0,f=0;a=(c[a+16>>2]|0)+192|0;while(1){a=c[a>>2]|0;if(!a)break;f=a+16|0;e=c[f>>2]|0;a=e+172|0;d=c[a+4>>2]|0;e=e+248|0;c[e>>2]=c[a>>2];c[e+4>>2]=d;e=c[f>>2]|0;d=e+180|0;a=c[d+4>>2]|0;e=e+256|0;c[e>>2]=c[d>>2];c[e+4>>2]=a;e=c[f>>2]|0;a=c[e+180>>2]|0;d=0;while(1)if(!(c[a+(d<<2)>>2]|0))break;else d=d+1|0;b=c[e+172>>2]|0;a=0;while(1)if(!(c[b+(a<<2)>>2]|0))break;else a=a+1|0;c[e+176>>2]=0;a=uH((a+d<<2)+16|0)|0;e=c[f>>2]|0;c[e+172>>2]=a;c[e+184>>2]=0;e=uH(16)|0;a=c[f>>2]|0;c[a+180>>2]=e;a=a+164|0}return}function cj(d){d=d|0;var f=0,g=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0;z=l;l=l+16|0;w=z;x=d+16|0;u=c[x>>2]|0;y=c[u+196>>2]|0;d=(a[(c[(c[d+60>>2]|0)+16>>2]|0)+113>>0]&1)!=0;v=c[u+248>>2]|0;c[w>>2]=v;c[w+4>>2]=d?5:v;v=b[u+236>>1]|0;d=u;while(1){if((v|0)>(b[d+238>>1]|0))break;r=y+(v<<6)+4|0;c[(c[(c[c[r>>2]>>2]|0)+16>>2]|0)+232>>2]=0;s=y+(v<<6)|0;t=+(c[w+((v&1)<<2)>>2]|0);p=0.0;k=0;a:while(1){if((k|0)>=(c[s>>2]|0))break;f=c[r>>2]|0;m=c[f+(k<<2)>>2]|0;u=m+16|0;d=c[u>>2]|0;i=+h[d+96>>3];h[d+240>>3]=i;if((c[d+208>>2]|0)>0){j=0;f=0;while(1){g=c[(c[d+204>>2]|0)+(j<<2)>>2]|0;if(!g)break;q=c[g>>2]&3;if((c[((q|0)==3?g:g+48|0)+40>>2]|0)==(c[((q|0)==2?g:g+-48|0)+40>>2]|0)){f=(XK(g)|0)+f|0;d=c[u>>2]|0}j=j+1|0}q=d+96|0;i=+h[q>>3]+ +(f|0);h[q>>3]=i;f=c[r>>2]|0}q=k+1|0;f=c[f+(q<<2)>>2]|0;if(f){o=f+16|0;i=i+t+ +h[(c[o>>2]|0)+88>>3];$i(m,f,i,0)|0;d=~~(i+p);c[(c[o>>2]|0)+232>>2]=d;p=+(d|0);d=c[u>>2]|0}f=c[d+112>>2]|0;if(f){j=c[d+256>>2]|0;k=c[j>>2]|0;j=c[j+4>>2]|0;d=(c[(c[(c[((c[k>>2]&3|0)==2?k:k+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)>(c[(c[(c[((c[j>>2]&3|0)==2?j:j+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0);g=d?j:k;j=d?k:j;k=f+16|0;d=c[k>>2]|0;i=+((O(c[(c[x>>2]|0)+248>>2]|0,e[d+170>>1]|0)|0)/2|0|0);o=c[g>>2]&3;f=c[((o|0)==2?g:g+-48|0)+40>>2]|0;g=c[((o|0)==3?g:g+48|0)+40>>2]|0;if(!(nj(g,f)|0))$i(f,g,+(~~(+h[(c[f+16>>2]|0)+96>>3]+i+ +h[(c[g+16>>2]|0)+88>>3])|0),c[d+156>>2]|0)|0;d=c[j>>2]&3;f=c[((d|0)==3?j:j+48|0)+40>>2]|0;d=c[((d|0)==2?j:j+-48|0)+40>>2]|0;if(!(nj(d,f)|0)){$i(f,d,+(~~(+h[(c[f+16>>2]|0)+96>>3]+i+ +h[(c[d+16>>2]|0)+88>>3])|0),c[(c[k>>2]|0)+156>>2]|0)|0;o=0}else o=0}else o=0;while(1){d=c[u>>2]|0;if((o|0)>=(c[d+192>>2]|0)){k=q;continue a}m=c[(c[d+188>>2]|0)+(o<<2)>>2]|0;k=c[m>>2]&3;g=c[((k|0)==3?m:m+48|0)+40>>2]|0;k=c[((k|0)==2?m:m+-48|0)+40>>2]|0;j=(c[(c[g+16>>2]|0)+236>>2]|0)<(c[(c[k+16>>2]|0)+236>>2]|0);f=j?g:k;g=j?k:g;i=+h[(c[g+16>>2]|0)+88>>3]+ +h[(c[f+16>>2]|0)+96>>3];k=m+16|0;j=~~(i+ +(O(c[(c[x>>2]|0)+248>>2]|0,e[(c[k>>2]|0)+170>>1]|0)|0));n=fh(f,g)|0;if(!n){d=c[k>>2]|0;if(!(c[d+96>>2]|0))$i(f,g,+(j|0),c[d+156>>2]|0)|0}else{A=+(j|0);d=c[k>>2]|0;B=+h[d+136>>3];i=i+ +(c[(c[x>>2]|0)+248>>2]|0)+ +(~~(B+(B>=0.0?.5:-.5))|0);f=~~(i<A?A:i);if((f|0)>65535){aj(+(f|0));f=65535;d=c[k>>2]|0}k=c[n+16>>2]|0;j=k+170|0;g=e[j>>1]|0;b[j>>1]=(f|0)<(g|0)?g:f;k=k+156|0;c[k>>2]=c[(c[((c[k>>2]|0)>(c[d+156>>2]|0)?n:m)+16>>2]|0)+156>>2]}o=o+1|0}}v=v+1|0;d=c[x>>2]|0}l=z;return}function dj(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;d=(c[b+16>>2]|0)+192|0;while(1){d=c[d>>2]|0;if(!d)break;g=d+16|0;d=c[g>>2]|0;e=c[d+256>>2]|0;a:do if(e){f=0;while(1){e=c[e+(f<<2)>>2]|0;if(!e)break a;n=uh(b)|0;d=n+16|0;a[(c[d>>2]|0)+156>>0]=2;l=e+16|0;k=c[l>>2]|0;i=~~(+h[k+56>>3]-+h[k+16>>3]);m=(i|0)>0;j=m?0:0-i|0;i=m?i:0;m=e+48|0;$i(n,c[((c[e>>2]&3|0)==3?e:m)+40>>2]|0,+(i+1|0),c[k+156>>2]|0)|0;k=e+-48|0;$i(n,c[((c[e>>2]&3|0)==2?e:k)+40>>2]|0,+(j+1|0),c[(c[l>>2]|0)+156>>2]|0)|0;l=c[e>>2]&3;i=(c[(c[(c[((l|0)==3?e:m)+40>>2]|0)+16>>2]|0)+232>>2]|0)-i|0;e=(c[(c[(c[((l|0)==2?e:k)+40>>2]|0)+16>>2]|0)+232>>2]|0)-j|0;c[(c[d>>2]|0)+232>>2]=((i|0)<(e|0)?i:e)+-1;d=c[g>>2]|0;f=f+1|0;e=c[d+256>>2]|0}}while(0);d=d+164|0}return}function ej(a){a=a|0;if((c[(c[a+16>>2]|0)+180>>2]|0)>0){ij(a);jj(a);kj(a);lj(a)}return}function fj(a){a=a|0;var b=0.0,d=0.0,e=0,f=0;e=a+16|0;f=c[(c[e>>2]|0)+8>>2]|0;if((c[f+84>>2]|0)==3?(b=+h[f+64>>3],d=+h[f+72>>3],!(d*b<=1.0)):0){gj(a);f=c[e>>2]|0;d=(c[f+116>>2]&1|0)==0?b:d;$i(c[f+256>>2]|0,c[f+260>>2]|0,d<65535.0?d:65535.0,1e3)|0}return}function gj(a){a=a|0;var d=0,e=0,f=0.0,g=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;e=KL(a,c[46374]|0,8,0)|0;hj(a);i=a+16|0;g=c[i>>2]|0;j=c[g+256>>2]|0;k=c[g+260>>2]|0;f=+(e|0);e=b[g+236>>1]|0;while(1){if((e|0)>(b[g+238>>1]|0))break;d=c[g+196>>2]|0;do if(c[d+(e<<6)>>2]|0){d=c[c[d+(e<<6)+4>>2]>>2]|0;if(!d){c[m>>2]=ry(a)|0;c[m+4>>2]=e;Pw(1,86834,m)|0;break}else{$i(j,d,+h[(c[d+16>>2]|0)+88>>3]+f+ +h[g+96>>3],0)|0;g=c[i>>2]|0;d=c[g+196>>2]|0;d=c[(c[d+(e<<6)+4>>2]|0)+((c[d+(e<<6)>>2]|0)+-1<<2)>>2]|0;$i(d,k,+h[(c[d+16>>2]|0)+96>>3]+f+ +h[g+64>>3],0)|0;break}}while(0);e=e+1|0;g=c[i>>2]|0}l=n;return}function hj(b){b=b|0;var d=0,e=0,f=0;d=b+16|0;if(!(c[(c[d>>2]|0)+256>>2]|0)){f=uh(ig(b)|0)|0;a[(c[f+16>>2]|0)+156>>0]=2;e=uh(ig(b)|0)|0;a[(c[e+16>>2]|0)+156>>0]=2;if((c[(c[d>>2]|0)+12>>2]|0?(ig(b)|0)!=(b|0):0)?(c[(c[(fz(b)|0)+16>>2]|0)+116>>2]&1|0)==0:0){b=c[d>>2]|0;$i(f,e,+(~~+h[b+48+((+h[b+48>>3]>+h[b+80>>3]?0:2)<<4)>>3]|0),0)|0}d=c[d>>2]|0;c[d+256>>2]=f;c[d+260>>2]=e}return}function ij(a){a=a|0;var b=0,d=0;do if((ig(a)|0)!=(a|0)){gj(a);a=a+16|0;b=c[a>>2]|0;b=fh(c[b+256>>2]|0,c[b+260>>2]|0)|0;if(!b){d=c[a>>2]|0;$i(c[d+256>>2]|0,c[d+260>>2]|0,1.0,128)|0;break}else{d=(c[b+16>>2]|0)+156|0;c[d>>2]=(c[d>>2]|0)+128;break}}else a=a+16|0;while(0);b=1;while(1){d=c[a>>2]|0;if((b|0)>(c[d+180>>2]|0))break;ij(c[(c[d+184>>2]|0)+(b<<2)>>2]|0);b=b+1|0}return}function jj(d){d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0.0,n=0,o=0;k=KL(d,c[46374]|0,8,0)|0;o=d+16|0;e=c[o>>2]|0;m=+(k|0);k=b[e+236>>1]|0;while(1){if((k|0)>(b[e+238>>1]|0)){f=1;break}e=c[e+196>>2]|0;a:do if(c[e+(k<<6)>>2]|0?(l=c[c[e+(k<<6)+4>>2]>>2]|0,l|0):0){i=l+16|0;f=c[(c[i>>2]|0)+236>>2]|0;while(1){if((f|0)<=0)break;f=f+-1|0;j=c[(c[(c[(c[(ig(d)|0)+16>>2]|0)+196>>2]|0)+(k<<6)+4>>2]|0)+(f<<2)>>2]|0;g=j+16|0;e=c[g>>2]|0;if(!(a[e+156>>0]|0)){n=10;break}if(mj(d,j)|0){n=9;break}}if((n|0)==9){e=c[g>>2]|0;n=10}if((n|0)==10){n=0;$i(j,c[(c[o>>2]|0)+256>>2]|0,+h[e+96>>3]+m,0)|0}f=(c[(c[(c[o>>2]|0)+196>>2]|0)+(k<<6)>>2]|0)+(c[(c[i>>2]|0)+236>>2]|0)|0;while(1){if((f|0)>=(c[(c[(c[(ig(d)|0)+16>>2]|0)+196>>2]|0)+(k<<6)>>2]|0))break a;i=c[(c[(c[(c[(ig(d)|0)+16>>2]|0)+196>>2]|0)+(k<<6)+4>>2]|0)+(f<<2)>>2]|0;g=i+16|0;e=c[g>>2]|0;if(!(a[e+156>>0]|0))break;if(!(mj(d,i)|0))f=f+1|0;else{n=15;break}}if((n|0)==15){n=0;e=c[g>>2]|0}$i(c[(c[o>>2]|0)+260>>2]|0,i,+h[e+88>>3]+m,0)|0}while(0);k=k+1|0;e=c[o>>2]|0}while(1){if((f|0)>(c[e+180>>2]|0))break;jj(c[(c[e+184>>2]|0)+(f<<2)>>2]|0);f=f+1|0;e=c[o>>2]|0}return}function kj(a){a=a|0;var b=0,d=0.0,e=0,f=0,g=0;e=KL(a,c[46374]|0,8,0)|0;hj(a);b=a+16|0;d=+(e|0);a=1;while(1){e=c[b>>2]|0;if((a|0)>(c[e+180>>2]|0))break;e=c[(c[e+184>>2]|0)+(a<<2)>>2]|0;hj(e);f=c[b>>2]|0;g=e+16|0;$i(c[f+256>>2]|0,c[(c[g>>2]|0)+256>>2]|0,+h[f+96>>3]+d,0)|0;f=c[b>>2]|0;$i(c[(c[g>>2]|0)+260>>2]|0,c[f+260>>2]|0,+h[f+64>>3]+d,0)|0;kj(e);a=a+1|0}return}function lj(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0.0,n=0,o=0;d=KL(a,c[46374]|0,8,0)|0;n=a+16|0;a=1;while(1){f=c[n>>2]|0;e=c[f+180>>2]|0;if((a|0)>(e|0))break;hj(c[(c[f+184>>2]|0)+(a<<2)>>2]|0);a=a+1|0}m=+(d|0);l=1;a=e;d=f;while(1){if((l|0)>(a|0))break;k=l+1|0;j=k;while(1){e=c[d+184>>2]|0;f=c[e+(l<<2)>>2]|0;if((j|0)>(a|0))break;e=c[e+(j<<2)>>2]|0;g=(b[(c[f+16>>2]|0)+236>>1]|0)>(b[(c[e+16>>2]|0)+236>>1]|0);i=g?e:f;e=g?f:e;f=c[i+16>>2]|0;g=c[e+16>>2]|0;o=b[g+236>>1]|0;h=o<<16>>16;if((b[f+238>>1]|0)>=o<<16>>16){a=(c[(c[(c[c[(c[f+196>>2]|0)+(h<<6)+4>>2]>>2]|0)+16>>2]|0)+236>>2]|0)<(c[(c[(c[c[(c[g+196>>2]|0)+(h<<6)+4>>2]>>2]|0)+16>>2]|0)+236>>2]|0);$i(c[(c[(a?i:e)+16>>2]|0)+260>>2]|0,c[(c[(a?e:i)+16>>2]|0)+256>>2]|0,m,0)|0;a=c[n>>2]|0;d=a;a=c[a+180>>2]|0}j=j+1|0}lj(f);d=c[n>>2]|0;l=k;a=c[d+180>>2]|0}return}function mj(b,d){b=b|0;d=d|0;var e=0;d=c[d+16>>2]|0;if((a[d+156>>0]|0)==1){d=c[c[d+256>>2]>>2]|0;while(1){e=c[(c[d+16>>2]|0)+116>>2]|0;if(!e)break;else d=e}if(!(oz(b,c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0)|0))d=(oz(b,c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0)|0)==0&1;else d=0}else d=0;return d|0}function nj(a,b){a=a|0;b=b|0;return oj(a,b)|0}function oj(a,b){a=a|0;b=b|0;var d=0,e=0;a:do if((a|0)==(b|0))a=1;else{d=c[(c[a+16>>2]|0)+180>>2]|0;a=0;while(1){e=c[d+(a<<2)>>2]|0;if(!e){a=0;break a}if(!(oj(c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,b)|0))a=a+1|0;else{a=1;break}}}while(0);return a|0}function pj(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=d+16|0;d=c[k>>2]|0;j=b[d+236>>1]|0;while(1){if((j|0)>(b[d+238>>1]|0))break;h=c[d+196>>2]|0;g=c[h+(j<<6)>>2]|0;h=h+(j<<6)+4|0;i=0;f=0;while(1){if((f|0)>=(g|0))break;e=c[(c[(c[h>>2]|0)+(f<<2)>>2]|0)+16>>2]|0;c[e+236>>2]=i;if((a[e+159>>0]|0)==6)e=c[e+216>>2]|0;else e=1;i=e+i|0;f=f+1|0}if((i|0)>(g|0)){d=c[h>>2]|0;if(!d)d=vH((i<<2)+4|0)|0;else d=xH(d,(i<<2)+4|0)|0;f=c[(c[k>>2]|0)+196>>2]|0;c[f+(j<<6)+4>>2]=d;e=c[f+(j<<6)>>2]|0;while(1){d=e+-1|0;if((e|0)<=0)break;h=c[f+(j<<6)+4>>2]|0;e=c[h+(d<<2)>>2]|0;c[h+(c[(c[e+16>>2]|0)+236>>2]<<2)>>2]=e;e=d;f=c[(c[k>>2]|0)+196>>2]|0}c[f+(j<<6)>>2]=i;c[(c[f+(j<<6)+4>>2]|0)+(i<<2)>>2]=0;d=c[k>>2]|0}j=j+1|0}return}function qj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+48|0;n=o+32|0;m=o+8|0;d=o+24|0;k=o+16|0;j=o;e=b+16|0;f=c[e>>2]|0;a:do if((c[f+216>>2]|0)>=2){c[m>>2]=~~(+h[f+16>>3]-+h[f+88>>3]);c[m+4>>2]=~~+h[f+24>>3];c[n>>2]=c[m>>2];c[n+4>>2]=c[m+4>>2];rj(d,b,n);g=d;i=c[g+4>>2]|0;d=m;c[d>>2]=c[g>>2];c[d+4>>2]=i;d=c[e>>2]|0;if((c[d+184>>2]|0)>0){j=c[c[d+180>>2]>>2]|0;d=(c[d+236>>2]|0)+1|0;j=Hx(a,c[((c[j>>2]&3|0)==2?j:j+-48|0)+40>>2]|0)|0;while(1){if(!j)break a;i=(c[j>>2]&3|0)==2?j:j+-48|0;e=i+48|0;f=c[((c[i>>2]&3|0)==3?i:e)+40>>2]|0;if((f|0)!=(b|0)?(SL(f)|0)==(b|0):0){f=c[((c[i>>2]&3|0)==3?i:e)+40>>2]|0;c[n>>2]=c[m>>2];c[n+4>>2]=c[m+4>>2];sj(k,a,f,n,d);f=k;e=c[f+4>>2]|0;g=m;c[g>>2]=c[f>>2];c[g+4>>2]=e;zh(i);g=i+-48|0;e=c[(c[((c[i>>2]&3|0)==2?i:g)+40>>2]|0)+16>>2]|0;f=c[e+172>>2]|0;if(!f)e=vH((c[e+176>>2]<<2)+8|0)|0;else e=xH(f,(c[e+176>>2]<<2)+8|0)|0;c[(c[(c[((c[i>>2]&3|0)==2?i:g)+40>>2]|0)+16>>2]|0)+172>>2]=e;p=c[(c[((c[i>>2]&3|0)==2?i:g)+40>>2]|0)+16>>2]|0;e=c[p+172>>2]|0;p=p+176|0;f=c[p>>2]|0;c[p>>2]=f+1;c[e+(f<<2)>>2]=i;i=c[(c[((c[i>>2]&3|0)==2?i:g)+40>>2]|0)+16>>2]|0;c[(c[i+172>>2]|0)+(c[i+176>>2]<<2)>>2]=0;d=d+1|0}j=Ix(a,j)|0}}else{i=c[c[d+172>>2]>>2]|0;d=(c[d+236>>2]|0)+1|0;i=Ex(a,c[((c[i>>2]&3|0)==3?i:i+48|0)+40>>2]|0)|0;while(1){if(!i)break a;e=i+-48|0;f=c[((c[i>>2]&3|0)==2?i:e)+40>>2]|0;if((f|0)!=(b|0)?(SL(f)|0)==(b|0):0){f=c[((c[i>>2]&3|0)==2?i:e)+40>>2]|0;c[n>>2]=c[m>>2];c[n+4>>2]=c[m+4>>2];sj(j,a,f,n,d);f=j;e=c[f+4>>2]|0;g=m;c[g>>2]=c[f>>2];c[g+4>>2]=e;zh(i);g=i+48|0;e=c[(c[((c[i>>2]&3|0)==3?i:g)+40>>2]|0)+16>>2]|0;f=c[e+180>>2]|0;if(!f)e=vH((c[e+184>>2]<<2)+8|0)|0;else e=xH(f,(c[e+184>>2]<<2)+8|0)|0;c[(c[(c[((c[i>>2]&3|0)==3?i:g)+40>>2]|0)+16>>2]|0)+180>>2]=e;f=c[(c[((c[i>>2]&3|0)==3?i:g)+40>>2]|0)+16>>2]|0;k=c[f+180>>2]|0;f=f+184|0;p=c[f>>2]|0;c[f>>2]=p+1;c[k+(p<<2)>>2]=i;p=c[(c[((c[i>>2]&3|0)==3?i:g)+40>>2]|0)+16>>2]|0;c[(c[p+180>>2]|0)+(c[p+184>>2]<<2)>>2]=0;d=d+1|0}i=Gx(a,i)|0}}}while(0);l=o;return}function rj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0;bN(b,c[(c[(ez(b)|0)+16>>2]|0)+116>>2]&1);e=c[b+16>>2]|0;h[e+24>>3]=+(c[d+4>>2]|0);f=+h[e+88>>3]+ +(c[d>>2]|0);h[e+16>>3]=f;f=f+ +h[e+96>>3];c[d>>2]=~~(f+ +(c[(c[(ez(b)|0)+16>>2]|0)+248>>2]|0));e=d;b=c[e+4>>2]|0;d=a;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function sj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;b=ig(b)|0;g=SL(d)|0;if((g|0)!=(d|0))rh(g,d);j=c[d+16>>2]|0;c[j+236>>2]=f;g=c[(c[g+16>>2]|0)+232>>2]|0;c[j+232>>2]=g;c[(c[(c[(c[b+16>>2]|0)+196>>2]|0)+(g<<6)+4>>2]|0)+(f<<2)>>2]=d;c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];rj(a,d,h);l=i;return}function tj(a){a=a|0;var d=0.0,e=0.0,f=0,g=0,i=0,j=0.0,k=0,l=0,m=0,n=0.0;m=c[(c[(ig(a)|0)+16>>2]|0)+196>>2]|0;if((ig(a)|0)==(a|0))j=8.0;else j=+(KL(a,c[46374]|0,8,0)|0);l=a+16|0;g=c[l>>2]|0;f=0;k=1;e=+h[g+120>>3];d=+h[g+128>>3];while(1){if((k|0)>(c[g+180>>2]|0))break;i=c[(c[g+184>>2]|0)+(k<<2)>>2]|0;f=tj(i)|0|f;i=c[i+16>>2]|0;g=c[l>>2]|0;if((b[i+238>>1]|0)==(b[g+238>>1]|0)){n=+h[i+120>>3]+j;e=e>n?e:n}if((b[i+236>>1]|0)==(b[g+236>>1]|0)){n=+h[i+128>>3]+j;d=d>n?d:n}k=k+1|0}if((ig(a)|0)!=(a|0)?(c[(c[l>>2]|0)+12>>2]|0)!=0:0)if(!(c[(c[(fz(a)|0)+16>>2]|0)+116>>2]&1)){k=c[l>>2]|0;f=1;e=+h[k+56>>3]+e;d=+h[k+88>>3]+d}else f=1;k=c[l>>2]|0;h[k+120>>3]=e;h[k+128>>3]=d;if((ig(a)|0)!=(a|0)){l=c[l>>2]|0;a=m+(b[l+236>>1]<<6)+24|0;n=+h[a>>3];h[a>>3]=n>d?n:d;m=m+(b[l+238>>1]<<6)+16|0;n=+h[m>>3];h[m>>3]=n>e?n:e}return f|0}function uj(a,d){a=a|0;d=d|0;var e=0,f=0.0,g=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0,p=0.0,q=0.0;o=c[(c[(ig(a)|0)+16>>2]|0)+196>>2]|0;if((ig(a)|0)==(a|0))e=0;else e=KL(a,c[46374]|0,8,0)|0;l=a+16|0;i=c[l>>2]|0;m=e+d|0;k=+(e|0);j=1;f=+h[i+128>>3];g=+h[i+120>>3];e=i;while(1){if((j|0)>(c[e+180>>2]|0))break;i=c[(c[e+184>>2]|0)+(j<<2)>>2]|0;uj(i,m);i=c[i+16>>2]|0;e=c[l>>2]|0;if((b[i+238>>1]|0)==(b[e+238>>1]|0)){q=+h[i+120>>3]+k;g=g>q?g:q}if((b[i+236>>1]|0)==(b[e+236>>1]|0)){q=+h[i+128>>3]+k;f=f>q?f:q}j=j+1|0}h[e+120>>3]=g;h[e+128>>3]=f;if(((ig(a)|0)!=(a|0)?(n=c[l>>2]|0,c[n+12>>2]|0):0)?(p=-g-f+ +h[n+48+((+h[n+104>>3]>+h[n+72>>3]?3:1)<<4)+8>>3]-+h[(c[(c[c[o+(b[n+236>>1]<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]+ +h[(c[(c[c[o+(b[n+238>>1]<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3],p>0.0):0)vj(a,~~p,d);if((ig(a)|0)!=(a|0)){n=c[l>>2]|0;m=o+(b[n+236>>1]<<6)+24|0;q=+h[m>>3];p=+h[n+128>>3];h[m>>3]=q>p?q:p;o=o+(b[n+238>>1]<<6)+16|0;p=+h[o>>3];q=+h[n+120>>3];h[o>>3]=p>q?p:q}return}function vj(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0.0,i=0.0,j=0.0,k=0,l=0,m=0,n=0.0,o=0.0,p=0,q=0,r=0;k=c[(ig(a)|0)+16>>2]|0;q=c[k+196>>2]|0;p=c[a+16>>2]|0;a=b[p+238>>1]|0;f=b[p+236>>1]|0;l=(d+1|0)/2|0;m=p+120|0;n=+h[m>>3];o=+(l|0);i=+(e|0);e=~~(o+i+n-+h[q+(a<<6)+16>>3]);if((e|0)>0){g=+(e|0);while(1){if((a|0)<(f|0))break;if((c[q+(a<<6)>>2]|0)>0){r=(c[(c[c[q+(a<<6)+4>>2]>>2]|0)+16>>2]|0)+24|0;h[r>>3]=+h[r>>3]+g}a=a+-1|0}j=+h[p+128>>3];a=e;g=j+ +(d-l|0)}else{j=+h[p+128>>3];a=d-l|0;g=j}a=~~(+(a|0)+i+g-+h[q+(f<<6)+24>>3]);a:do if((a|0)>0){e=b[k+236>>1]|0;g=+(a|0);while(1){a=f+-1|0;if((f|0)<=(e|0))break a;if((c[q+(a<<6)>>2]|0)<=0){f=a;continue}f=(c[(c[c[q+(a<<6)+4>>2]>>2]|0)+16>>2]|0)+24|0;h[f>>3]=+h[f>>3]+g;f=a}}while(0);h[p+128>>3]=j+ +(d-l|0);h[m>>3]=n+o;return}function wj(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b+16>>2]|0;f=a[e+84>>0]|0;b=c[d+16>>2]|0;do if(f<<24>>24==(a[b+84>>0]|0)){if(+h[e+56>>3]==+h[b+56>>3]){if(!(f<<24>>24==0?1:+h[e+64>>3]==+h[b+64>>3])){b=0;break}}else if(f<<24>>24){b=0;break}if(+h[e+16>>3]==+h[b+16>>3]?+h[e+24>>3]==+h[b+24>>3]:0){b=1;break}b=(a[e+44>>0]|0)==0&1}else b=0;while(0);return b|0}function xj(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+16|0;d=c[i>>2]|0;b[d+236>>1]=32767;b[d+238>>1]=-1;d=0;h=Sy(a)|0;while(1){e=c[i>>2]|0;if(!h)break;f=e+238|0;g=c[(c[h+16>>2]|0)+232>>2]|0;if((g|0)>(b[f>>1]|0))b[f>>1]=g;e=e+236|0;if((g|0)<(b[e>>1]|0))b[e>>1]=g;if(!d)d=h;else d=(g|0)<(c[(c[d+16>>2]|0)+232>>2]|0)?h:d;h=Ty(a,h)|0}c[e+264>>2]=d;return}function yj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0.0;b=xx(a,86879)|0;if(!b)b=2147483647;else{g=+b2(b);b=~~(g*+(ay(a)|0))}e=a+16|0;d=0;while(1){f=c[e>>2]|0;if((d|0)>=(c[f+220>>2]|0))break;c[f+192>>2]=c[(c[f+216>>2]|0)+(d<<2)>>2];fI(a,(c[f+180>>2]|0)==0&1,b)|0;d=d+1|0}return}function zj(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;if(!(xx(a,86888)|0))Bj(a,d);else{g=(c[a+16>>2]|0)+136|0;b[g>>1]=b[g>>1]|16;Aj(a,d)}if(0){g=c[15686]|0;a=c[a+16>>2]|0;d=b[a+236>>1]|0;c[e>>2]=b[a+238>>1];c[e+4>>2]=d;g1(g,86896,e)|0}l=f;return}function Aj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0.0;i=l;l=l+16|0;h=i;c[45977]=0;a[h>>0]=a[18484]|0;a[h+1>>0]=a[18485]|0;a[h+2>>0]=a[18486]|0;a[h+3>>0]=a[18487]|0;h=Xx(87106,h,0)|0;Az(h,87135,280,1)|0;mz(h,17404,17344);Cj(b);e=xx(b,86879)|0;if(!e)f=2147483647;else{j=+b2(e);f=~~(j*+(ay(b)|0))}Sj(b,0);Tj(b,h);Uj(b,h);Vj(b,h,0,0);Wj(h);g=Xj(h)|0;Yj(h);if(d|0){Mk(h);Ak(h)}e=xx(b,99560)|0;if(!e)e=-1;else e=a2(e)|0;yH(h,1,f,e)|0;Zj(b,h,g);$x(h)|0;l=i;return}function Bj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+32|0;f=g+16|0;e=g+8|0;d=g;Cj(a);do if(!b){Dj(a,a);Pk(a);Ej(d,a);h=d;d=c[h+4>>2]|0;b=e;c[b>>2]=c[h>>2];c[b+4>>2]=d;Il(a,0);b=0}else{Mk(a);Ak(a);Dj(a,a);Pk(a);Ej(d,a);i=d;d=c[i+4>>2]|0;h=e;c[h>>2]=c[i>>2];c[h+4>>2]=d;Il(a,0);h=c[a+16>>2]|0;if((c[h+220>>2]|0)<=1?(c[h+180>>2]|0)<=0:0)break;c[b+32>>2]=1;b=0}while(0);xk(a);c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];if(Fj(a,f)|0)Il(a,0);if(!b)yj(a);else Bk(a,b);Gj(a,b);Hj(a);l=g;return}function Cj(d){d=d|0;var f=0,g=0,h=0;if(a[(c[(c[d+60>>2]|0)+16>>2]|0)+113>>0]&1){g=Sy(d)|0;while(1){if(!g)break;f=Ex(d,g)|0;while(1){if(!f)break;h=(c[f+16>>2]|0)+170|0;b[h>>1]=(e[h>>1]|0)<<1;f=Gx(d,f)|0}g=Ty(d,g)|0}h=(c[d+16>>2]|0)+252|0;c[h>>2]=((c[h>>2]|0)+1|0)/2|0}return}function Dj(a,b){a=a|0;b=b|0;var d=0;b=wA(b)|0;while(1){if(!b)break;d=Pj(b)|0;do if(d)if((d|0)==7&(c[46364]|0)==100){Lj(a,b);break}else{Qj(a,b,d);break}else Dj(a,b);while(0);b=xA(b)|0}return}function Ej(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=d+16|0;e=c[i>>2]|0;d=c[e+228>>2]|0;e=c[e+224>>2]|0;f=(e|0)==0;if(!d)if(f){j=0;k=0}else g=4;else if(f)g=5;else g=4;if((g|0)==4){d=SL(e)|0;e=c[i>>2]|0;c[e+224>>2]=d;d=c[e+228>>2]|0;if(!d){h=0;d=e;g=12}else g=5}do if((g|0)==5){d=SL(d)|0;e=c[i>>2]|0;c[e+228>>2]=d;if(d){e=d+16|0;d=c[e>>2]|0;f=(a[d+159>>0]|0)==5&1;while(1){d=c[c[d+180>>2]>>2]|0;if(!d){g=11;break}h=c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0;if((h|0)!=(SL(h)|0)){g=9;break}wk(d);d=c[e>>2]|0}if((g|0)==9)qa(86999,86939,346,87031);else if((g|0)==11){h=f;d=c[i>>2]|0;g=12;break}}else{h=0;d=e;g=12}}while(0);a:do if((g|0)==12){d=c[d+224>>2]|0;if(!d){j=0;k=h}else{e=d+16|0;d=c[e>>2]|0;f=(a[d+159>>0]|0)==3&1;while(1){d=c[c[d+172>>2]>>2]|0;if(!d){j=f;k=h;break a}i=c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0;if((i|0)!=(SL(i)|0))break;wk(d);d=c[e>>2]|0}qa(87044,86939,353,87031)}}while(0);c[b>>2]=j;c[b+4>>2]=k;return}function Fj(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;j=a+16|0;i=c[j>>2]|0;if((c[i+228>>2]|0)==0?(c[i+224>>2]|0)==0:0)d=0;else e=3;a:do if((e|0)==3){g=Sy(a)|0;i=d+4|0;h=c[d>>2]&65535;d=0;while(1){if(!g)break a;if((g|0)==(SL(g)|0)){f=g+16|0;e=c[f>>2]|0;if((c[e+184>>2]|0)==0?(k=c[(c[j>>2]|0)+228>>2]|0,!((k|0)==0|(g|0)==(k|0))):0){d=ph(g,k,0)|0;e=c[d+16>>2]|0;b[e+170>>1]=c[i>>2];c[e+156>>2]=0;e=c[f>>2]|0}if((c[e+176>>2]|0)==0?(l=c[(c[j>>2]|0)+224>>2]|0,!((l|0)==0|(g|0)==(l|0))):0){d=ph(l,g,0)|0;f=c[d+16>>2]|0;b[f+170>>1]=h;c[f+156>>2]=0}}g=Ty(a,g)|0}}while(0);return (d|0)!=0|0}function Gj(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;g=Sy(d)|0;k=d+16|0;f=c[k>>2]|0;a:do if(g){b[f+236>>1]=32767;b[f+238>>1]=-1;j=(e|0)==0;while(1){if(!g)break;f=SL(g)|0;i=c[g+16>>2]|0;e=c[i+232>>2]|0;do if((f|0)!=(g|0)){if(!j)if(!e)e=0;else break;e=e+(c[(c[f+16>>2]|0)+232>>2]|0)|0;c[i+232>>2]=e}while(0);f=c[k>>2]|0;h=f+238|0;if((e|0)>(b[h>>1]|0))b[h>>1]=e;f=f+236|0;if((e|0)<(b[f>>1]|0))b[f>>1]=e;switch(a[i+159>>0]|0){case 6:case 0:break;default:UL(g)}g=Ty(d,g)|0}if((ig(d)|0)==(d|0)){if((c[46364]|0)==100)e=1;else{Kj(d);break}while(1){f=c[k>>2]|0;if((e|0)>(c[f+180>>2]|0))break a;Jj(c[(c[f+184>>2]|0)+(e<<2)>>2]|0);e=e+1|0}}}else{b[f+238>>1]=0;b[f+236>>1]=0}while(0);return}function Hj(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=b+16|0;e=0;while(1){d=c[j>>2]|0;if((e|0)>=(c[d+220>>2]|0))break;i=c[(c[d+216>>2]|0)+(e<<2)>>2]|0;c[d+192>>2]=i;d=i;while(1){if(!d)break;i=d+16|0;Ij((c[i>>2]|0)+172|0);Ij((c[i>>2]|0)+180|0);i=c[i>>2]|0;a[i+157>>0]=0;d=c[i+164>>2]|0}e=e+1|0}i=Sy(b)|0;while(1){if(!i)break;h=Ex(b,i)|0;while(1){if(!h)break;f=h+16|0;d=c[f>>2]|0;g=c[d+172>>2]|0;if((g|0)!=0?(k=g+16|0,(h|0)==(c[(c[k>>2]|0)+116>>2]|0)):0){d=Sy(b)|0;while(1){if(!d)break;e=Ex(b,d)|0;while(1){if(!e)break;if((h|0)!=(e|0)?(l=(c[e+16>>2]|0)+172|0,m=c[l>>2]|0,(m|0)!=0&(g|0)==(m|0)):0)c[l>>2]=0;e=Gx(b,e)|0}d=Ty(b,d)|0}D_(c[k>>2]|0);D_(g);d=c[f>>2]|0}c[d+172>>2]=0;h=Gx(b,h)|0}i=Ty(b,i)|0}D_(c[(c[j>>2]|0)+216>>2]|0);m=c[j>>2]|0;c[m+216>>2]=0;c[m+220>>2]=0;return}function Ij(a){a=a|0;var b=0,d=0;d=a+4|0;b=c[d>>2]|0;while(1){if((b|0)<=-1)break;c[(c[a>>2]|0)+(b<<2)>>2]=0;b=b+-1|0}c[d>>2]=0;return}function Jj(a){a=a|0;var d=0,f=0,g=0;d=a+16|0;f=c[d>>2]|0;g=c[(c[(c[f+264>>2]|0)+16>>2]|0)+232>>2]|0;a=f+236|0;b[a>>1]=g+(e[a>>1]|0);a=f+238|0;b[a>>1]=g+(e[a>>1]|0);a=1;while(1){if((a|0)>(c[f+180>>2]|0))break;Jj(c[(c[f+184>>2]|0)+(a<<2)>>2]|0);a=a+1|0;f=c[d>>2]|0}return}function Kj(b){b=b|0;var d=0;d=wA(ig(b)|0)|0;while(1){if(!d)break;if((a[(c[d+16>>2]|0)+274>>0]|0)==7)Lj(b,d);d=xA(d)|0}return}function Lj(a,b){a=a|0;b=b|0;var d=0;d=(c[b+16>>2]|0)+200|0;do if((c[d>>2]|0)==0?(c[d>>2]=a,Mj(a,b),Sy(b)|0):0){Nj(a,b);if((c[46364]|0)==100){Bj(b,0);Oj(b);break}else{xj(b);break}}while(0);return}function Mj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=b+16|0;g=Sy(d)|0;while(1){if(!g)break;i=Ty(d,g)|0;j=g+16|0;if(!(a[(c[j>>2]|0)+159>>0]|0))f=1;else{dz(d,g)|0;g=i;continue}while(1){e=c[h>>2]|0;b=c[e+180>>2]|0;if((f|0)>=(b|0))break;if(oz(c[(c[e+184>>2]|0)+(f<<2)>>2]|0,g)|0){k=7;break}f=f+1|0}if((k|0)==7){k=0;b=c[(c[h>>2]|0)+180>>2]|0}if((f|0)<(b|0))dz(d,g)|0;c[(c[j>>2]|0)+212>>2]=0;g=i}e=Sy(d)|0;while(1){if(!e)break;b=Ex(ig(d)|0,e)|0;while(1){if(!b)break;if(oz(d,c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)|0)Vx(d,b,1)|0;b=Gx(ig(d)|0,b)|0}e=Ty(d,e)|0}return}function Nj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+16|0;d=c[e>>2]|0;g=d+180|0;a=c[g>>2]|0;f=a+1|0;c[g>>2]=f;d=c[d+184>>2]|0;if(!d)a=uH((a<<2)+8|0)|0;else a=wH(d,a+2|0,4,f)|0;c[(c[e>>2]|0)+184>>2]=a;c[a+(f<<2)>>2]=b;fH(b);return}function Oj(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=c[b+16>>2]|0;d=g+192|0;h=0;while(1){d=c[d>>2]|0;if(!d)break;f=c[d+16>>2]|0;if(!(c[f+232>>2]|0))e=(a[f+156>>0]|0)==0?d:h;else e=h;d=f+164|0;h=e}if(!h)qa(86924,86939,238,86946);c[g+264>>2]=h;d=Sy(b)|0;while(1){if(!d){d=13;break}e=d+16|0;if(!((d|0)==(h|0)?1:(c[(c[e>>2]|0)+216>>2]|0)<2)){d=11;break}TL(d,h)|0;a[(c[e>>2]|0)+159>>0]=7;d=Ty(b,d)|0}if((d|0)==11)qa(86961,86939,242,86946);else if((d|0)==13)return}function Pj(b){b=b|0;var d=0;if(!(Rj(b)|0)){d=aM(xx(b,87076)|0,17356,17380)|0;a[(c[b+16>>2]|0)+274>>0]=d;b=d}else b=7;return b|0}function Qj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;g=Sy(d)|0;a:do if(g|0){j=e&255;i=g+16|0;f=g;h=j;while(1){a[(c[f+16>>2]|0)+159>>0]=h;f=Ty(d,f)|0;if(!f)break;TL(g,f)|0;h=a[(c[i>>2]|0)+159>>0]|0}switch(e|0){case 3:case 2:{b=b+16|0;f=c[b>>2]|0;h=c[f+224>>2]|0;if(h){g=TL(h,g)|0;f=c[b>>2]|0}c[f+224>>2]=g;break}case 5:case 4:{b=b+16|0;f=c[b>>2]|0;h=c[f+228>>2]|0;if(h){g=TL(h,g)|0;f=c[b>>2]|0}c[f+228>>2]=g;break}default:break a}switch(e|0){case 3:{f=f+224|0;break}case 5:{f=f+228|0;break}default:break a}a[(c[(c[f>>2]|0)+16>>2]|0)+159>>0]=j}while(0);return}function Rj(a){a=a|0;return (z$(ry(a)|0,104980,7)|0)==0|0}function Sj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;g=m;if(!(lk(b)|0)){do if(qM(b)|0)if(!d){c[(c[b+16>>2]|0)+204>>2]=0;d=b;break}else{c[(c[b+16>>2]|0)+204>>2]=(c[(c[d+16>>2]|0)+204>>2]|0)+1;mk(b,d);d=b;break}while(0);e=wA(b)|0;while(1){if(!e)break;Sj(e,d);e=xA(e)|0}a:do if(qM(b)|0){e=Sy(b)|0;while(1){if(!e)break a;f=(c[e+16>>2]|0)+212|0;if(!(c[f>>2]|0))c[f>>2]=b;e=Ty(b,e)|0}}while(0);switch(nk(b)|0){case 3:{d=d+16|0;a[(c[d>>2]|0)+241>>0]=1;k=19;break}case 2:{d=d+16|0;k=19;break}case 5:{d=d+16|0;a[(c[d>>2]|0)+242>>0]=1;k=21;break}case 4:{d=d+16|0;k=21;break}case 1:{ok(b)|0;break}case 6:break;default:{e=ry(b)|0;f=xx(b,87076)|0;c[g>>2]=e;c[g+4>>2]=f;Pw(0,87259,g)|0}}if((k|0)==19){k=ok(b)|0;k=pk(k,c[(c[d>>2]|0)+208>>2]|0)|0;c[(c[d>>2]|0)+208>>2]=k}else if((k|0)==21){k=ok(b)|0;k=pk(k,c[(c[d>>2]|0)+212>>2]|0)|0;c[(c[d>>2]|0)+212>>2]=k}if((qM(b)|0?(h=b+16|0,i=c[h>>2]|0,j=c[i+208>>2]|0,j|0):0)?(j|0)==(c[i+212>>2]|0):0){j=ok(b)|0;k=c[h>>2]|0;c[k+208>>2]=j;c[k+212>>2]=j}}l=m;return}function Tj(a,b){a=a|0;b=b|0;var d=0,e=0;c[45977]=0;d=Sy(a)|0;while(1){if(!d)break;if((_j(d)|0)==(d|0)){e=bk(b,ry(d)|0)|0;c[(c[d+16>>2]|0)+148>>2]=e}d=Ty(a,d)|0}d=Sy(a)|0;while(1){if(!d)break;b=d+16|0;if(!(c[(c[b>>2]|0)+148>>2]|0)){e=c[(c[(_j(d)|0)+16>>2]|0)+148>>2]|0;c[(c[b>>2]|0)+148>>2]=e}d=Ty(a,d)|0}return}function Uj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=Sy(a)|0;while(1){if(!h)break;d=c[(c[h+16>>2]|0)+148>>2]|0;i=Ex(a,h)|0;while(1){if(!i)break;do if((gk(i)|0)==0?(j=i+-48|0,k=c[(c[(_j(c[((c[i>>2]&3|0)==2?i:j)+40>>2]|0)|0)+16>>2]|0)+148>>2]|0,(d|0)!=(k|0)):0){f=c[i>>2]&3;g=i+48|0;e=((f|0)==3?i:g)+40|0;f=c[(c[(c[((f|0)==2?i:j)+40>>2]|0)+16>>2]|0)+212>>2]|0;if(!(hk(i)|0)){if((fk(c[(c[(c[e>>2]|0)+16>>2]|0)+212>>2]|0)|0)==0?(fk(f)|0)==0:0){ik(b,d,k,i);break}jk(b,d,k,i);break}else{f=_j(c[e>>2]|0)|0;e=c[i>>2]&3;if((f|0)!=(c[(c[(c[(c[(c[((e|0)==3?i:g)+40>>2]|0)+16>>2]|0)+212>>2]|0)+16>>2]|0)+212>>2]|0)?(g=_j(c[((e|0)==2?i:j)+40>>2]|0)|0,(g|0)!=(c[(c[(c[(c[(c[((c[i>>2]&3|0)==2?i:j)+40>>2]|0)+16>>2]|0)+212>>2]|0)+16>>2]|0)+208>>2]|0)):0)e=k;else{e=d;d=k}ik(b,d,e,i);break}}while(0);i=Gx(a,i)|0}h=Ty(a,h)|0}return}function Vj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if((qM(a)|0)!=0?(fk(a)|0)!=0:0){g=Sy(a)|0;while(1){if(!g)break;if(!(Hx(a,g)|0)){f=c[(c[(_j(g)|0)+16>>2]|0)+148>>2]|0;if(!d)d=bk(b,87157)|0;Rx(b,d,f,0,1)|0}if(!(Ex(a,g)|0)){f=c[(c[(_j(g)|0)+16>>2]|0)+148>>2]|0;if(!e)e=bk(b,87162)|0;Rx(b,f,e,0,1)|0}g=Ty(a,g)|0}if((e|0)!=0&(d|0)!=0){ek(Rx(b,d,e,0,1)|0,0,1e3);f=d}else f=d}else f=d;d=wA(a)|0;while(1){if(!d)break;Vj(d,b,f,e);d=xA(d)|0}return}function Wj(b){b=b|0;var d=0,e=0;d=Sy(b)|0;while(1){if(!d)break;e=c[d+16>>2]|0;a[e+158>>0]=0;a[e+157>>0]=0;d=Ty(b,d)|0}d=Sy(b)|0;while(1){if(!d)break;ck(b,d);d=Ty(b,d)|0}return}function Xj(a){a=a|0;var b=0,d=0,e=0,f=0;b=Sy(a)|0;while(1){if(!b)break;c[(c[b+16>>2]|0)+128>>2]=0;b=Ty(a,b)|0}b=0;e=Sy(a)|0;while(1){if(!e)break;d=b+1|0;if(!(c[(c[e+16>>2]|0)+128>>2]|0)){ak(a,e,d);b=d}e=Ty(a,e)|0}a:do if((b|0)>1){f=bk(a,87151)|0;d=1;e=Sy(a)|0;while(1){if(!e)break a;if((c[(c[e+16>>2]|0)+128>>2]|0)==(d|0)){Rx(a,f,e,0,1)|0;d=d+1|0}e=Ty(a,e)|0}}while(0);return b|0}function Yj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;g=Sy(a)|0;while(1){if(!g)break;h=g+16|0;f=Ex(a,g)|0;while(1){if(!f)break;b=c[h>>2]|0;d=c[b+180>>2]|0;if(!d)b=vH((c[b+184>>2]<<2)+8|0)|0;else b=xH(d,(c[b+184>>2]<<2)+8|0)|0;d=c[h>>2]|0;c[d+180>>2]=b;d=d+184|0;e=c[d>>2]|0;c[d>>2]=e+1;c[b+(e<<2)>>2]=f;e=c[h>>2]|0;c[(c[e+180>>2]|0)+(c[e+184>>2]<<2)>>2]=0;e=f+-48|0;b=c[(c[((c[f>>2]&3|0)==2?f:e)+40>>2]|0)+16>>2]|0;d=c[b+172>>2]|0;if(!d)b=vH((c[b+176>>2]<<2)+8|0)|0;else b=xH(d,(c[b+176>>2]<<2)+8|0)|0;c[(c[(c[((c[f>>2]&3|0)==2?f:e)+40>>2]|0)+16>>2]|0)+172>>2]=b;i=c[(c[((c[f>>2]&3|0)==2?f:e)+40>>2]|0)+16>>2]|0;b=c[i+172>>2]|0;i=i+176|0;d=c[i>>2]|0;c[i>>2]=d+1;c[b+(d<<2)>>2]=f;e=c[(c[((c[f>>2]&3|0)==2?f:e)+40>>2]|0)+16>>2]|0;c[(c[e+172>>2]|0)+(c[e+176>>2]<<2)>>2]=0;f=Gx(a,f)|0}g=Ty(a,g)|0}return}function Zj(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=a+16|0;o=c[n>>2]|0;b[o+236>>1]=32767;b[o+238>>1]=-1;a:do if((f|0)>1){h=uH((f<<2)+4|0)|0;g=f+1|0;f=1;while(1){if((f|0)==(g|0)){m=h;o=h;break a}c[h+(f<<2)>>2]=32767;f=f+1|0}}else{m=0;o=0}while(0);i=(m|0)==0;h=Sy(a)|0;while(1){if(!h)break;j=c[(c[(c[(_j(h)|0)+16>>2]|0)+148>>2]|0)+16>>2]|0;k=c[j+232>>2]|0;l=c[h+16>>2]|0;c[l+232>>2]=k;f=c[n>>2]|0;g=f+238|0;if((k|0)>(b[g>>1]|0))b[g>>1]=k;f=f+236|0;if((k|0)<(b[f>>1]|0))b[f>>1]=k;if(!i){j=c[j+128>>2]|0;c[l+128>>2]=j;l=m+(j<<2)|0;j=c[l>>2]|0;c[l>>2]=(j|0)<(k|0)?j:k}h=Ty(a,h)|0}j=(m|0)!=0;b:do if(!j){m=b[(c[n>>2]|0)+236>>1]|0;g=m<<16>>16;if(m<<16>>16>0){f=Sy(a)|0;while(1){if(!f)break;m=(c[f+16>>2]|0)+232|0;c[m>>2]=(c[m>>2]|0)-g;f=Ty(a,f)|0}f=c[n>>2]|0;n=f+236|0;b[n>>1]=(e[n>>1]|0)-g;f=f+238|0;b[f>>1]=(e[f>>1]|0)-g;f=0}else f=0}else{f=Sy(a)|0;while(1){if(!f){f=1;break b}l=c[f+16>>2]|0;n=l+232|0;c[n>>2]=(c[n>>2]|0)-(c[m+(c[l+128>>2]<<2)>>2]|0);f=Ty(a,f)|0}}while(0);$j(a,f);i=Sy(d)|0;while(1){if(!i)break;g=i+16|0;f=c[g>>2]|0;h=c[f+172>>2]|0;if(h){D_(h);f=c[g>>2]|0}f=c[f+180>>2]|0;if(f|0)D_(f);i=Ty(d,i)|0}D_(c[(c[(Sy(a)|0)+16>>2]|0)+112>>2]|0);f=Sy(a)|0;while(1){if(!f)break;c[(c[f+16>>2]|0)+112>>2]=0;f=Ty(a,f)|0}if(j)D_(o);return}function _j(a){a=a|0;var b=0,d=0,e=0;b=a+16|0;d=(c[b>>2]|0)+152|0;e=c[d>>2]|0;if(e){if((e|0)!=(a|0)){e=_j(e)|0;c[(c[b>>2]|0)+152>>2]=e;return e|0}}else c[d>>2]=a;return a|0}function $j(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=a+16|0;e=1;while(1){f=c[i>>2]|0;if((e|0)>(c[f+180>>2]|0))break;$j(c[(c[f+184>>2]|0)+(e<<2)>>2]|0,0);e=e+1|0}if((d|0)!=0|(c[f+200>>2]|0)!=0){b[f+236>>1]=32767;b[f+238>>1]=-1;e=0;h=Sy(a)|0;while(1){if(!h)break;g=c[(c[h+16>>2]|0)+232>>2]|0;d=c[i>>2]|0;f=d+238|0;if((g|0)>(b[f>>1]|0))b[f>>1]=g;d=d+236|0;if((g|0)<(b[d>>1]|0)){b[d>>1]=g;e=h}h=Ty(a,h)|0}c[(c[i>>2]|0)+264>>2]=e}return}function ak(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(c[b+16>>2]|0)+128|0;a:do if(!(c[e>>2]|0)){c[e>>2]=d;e=Ex(a,b)|0;while(1){if(!e)break;ak(a,c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,d);e=Gx(a,e)|0}e=Hx(a,b)|0;while(1){if(!e)break a;ak(a,c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0,d);e=Ix(a,e)|0}}while(0);return}function bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=az(a,b,1)|0;b=f+16|0;c[(c[b>>2]|0)+176>>2]=0;e=uH(20)|0;d=c[b>>2]|0;c[d+172>>2]=e;c[d+184>>2]=0;d=uH(20)|0;b=c[b>>2]|0;c[b+180>>2]=d;d=c[45977]|0;e=b+168|0;if(!d){c[e>>2]=0;c[(c[a+16>>2]|0)+192>>2]=f}else{c[e>>2]=d;c[(c[d+16>>2]|0)+164>>2]=f}c[45977]=f;c[b+164>>2]=0;return f|0}function ck(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=d+16|0;e=c[h>>2]|0;f=e+157|0;if(!(a[f>>0]|0)){a[f>>0]=1;a[e+158>>0]=1;d=Ex(b,d)|0;while(1){if(!d)break;e=Gx(b,d)|0;f=c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0;g=c[f+16>>2]|0;if(a[g+158>>0]|0){dk(b,d);d=e;continue}if(a[g+157>>0]|0){d=e;continue}ck(b,f);d=e}a[(c[h>>2]|0)+158>>0]=0}return}function dk(a,b){a=a|0;b=b|0;var d=0,f=0,g=0;d=c[b>>2]&3;g=b+-48|0;f=b+48|0;d=Rx(a,c[((d|0)==2?b:g)+40>>2]|0,c[((d|0)==3?b:f)+40>>2]|0,0,0)|0;if(!d){d=c[b>>2]&3;d=Rx(a,c[((d|0)==2?b:g)+40>>2]|0,c[((d|0)==3?b:f)+40>>2]|0,0,1)|0}g=c[b+16>>2]|0;ek(d,e[g+170>>1]|0,c[g+156>>2]|0);dz(a,b)|0;return}function ek(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0;a=c[a+16>>2]|0;g=a+170|0;h=e[g>>1]|0;b[g>>1]=(h|0)>(d|0)?h:d;d=a+156|0;c[d>>2]=(c[d>>2]|0)+f;return}function fk(a){a=a|0;return (RL(xx(a,87167)|0,0)|0)&255|0}function gk(b){b=b|0;var d=0,e=0;d=c[46419]|0;if((((d|0)!=0?(e=yx(b,d)|0,(e|0)!=0):0)?(a[e>>0]|0)!=0:0)?(QL(e)|0)<<24>>24==0:0)b=1;else b=0;return b|0}function hk(a){a=a|0;var b=0,d=0;d=c[a>>2]&3;b=c[(c[(c[((d|0)==3?a:a+48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0;a=c[(c[(c[((d|0)==2?a:a+-48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0;if((b|0)==(a|0))return 1;else{d=kk(b,a)|0;return ((d|0)==(b|0)|(d|0)==(a|0))&1|0}return 0}function ik(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+16|0;h=j;g=Rx(a,b,d,0,0)|0;if(!g){g=Rx(a,d,b,0,0)|0;if(!g){g=Rx(a,b,d,0,1)|0;if(!g){b=ry(b)|0;f=ry(d)|0;c[h>>2]=b;c[h+4>>2]=f;Pw(1,87184,h)|0}else i=4}else i=4}else i=4;if((i|0)==4){i=c[f+16>>2]|0;ek(g,e[i+170>>1]|0,c[i+156>>2]|0)}l=j;return}function jk(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+112|0;j=m;i=m+4|0;h=Hx(a,d)|0;while(1){if(!h){k=6;break}n=Ex(a,c[((c[h>>2]&3|0)==3?h:h+48|0)+40>>2]|0)|0;if(n|0?(c[((c[n>>2]&3|0)==2?n:n+-48|0)+40>>2]|0)==(f|0):0)break;h=Ix(a,h)|0}if((k|0)==6){n=c[45978]|0;c[45978]=n+1;c[j>>2]=n;Y0(i,87175,j)|0;i=bk(a,i)|0;n=Rx(a,i,d,0,1)|0;i=Rx(a,i,f,0,1)|0;f=c[g+16>>2]|0;k=f+156|0;n=(c[n+16>>2]|0)+156|0;c[n>>2]=(c[n>>2]|0)+((c[k>>2]|0)*1e3|0);n=c[i+16>>2]|0;j=n+170|0;b[j>>1]=b[(c[((e[j>>1]|0)>(e[f+170>>1]|0)?i:g)+16>>2]|0)+170>>1]|0;n=n+156|0;c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0)}l=m;return}function kk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;a:while(1){e=a+16|0;while(1){if((a|0)==(b|0))break a;f=c[e>>2]|0;d=c[b+16>>2]|0;if((c[f+204>>2]|0)>=(c[d+204>>2]|0))break;b=c[d+200>>2]|0}a=c[f+200>>2]|0}return a|0}function lk(a){a=a|0;return (Sy(a)|0)==0|0}function mk(a,b){a=a|0;b=b|0;c[(c[a+16>>2]|0)+200>>2]=b;Nj(b,a);Mj(b,a);return}function nk(b){b=b|0;var c=0;b=xx(b,87076)|0;if((b|0)!=0?(a[b>>0]|0)!=0:0)if(b$(b,87086)|0)if(b$(b,87090)|0)if(b$(b,87097)|0)if(b$(b,87101)|0)if(!(b$(b,87081)|0))b=1;else c=8;else b=5;else b=4;else b=3;else b=2;else c=8;if((c|0)==8)b=6;return b|0}function ok(a){a=a|0;var b=0,c=0;c=Sy(a)|0;a:do if(!c)b=0;else{b=_j(c)|0;while(1){c=Ty(a,c)|0;if(!c)break a;pk(b,c)|0}}while(0);return b|0}function pk(a,b){a=a|0;b=b|0;if(b){a=_j(a)|0;c[(c[(_j(b)|0)+16>>2]|0)+152>>2]=a}return a|0}function qk(a,b,d){a=a|0;b=b|0;d=d|0;Az(b,87135,c[d>>2]|0,1)|0;return}function rk(a,b,d){a=a|0;b=b|0;d=d|0;Az(b,87302,c[d+4>>2]|0,1)|0;return}function sk(a,b,d){a=a|0;b=b|0;d=d|0;Az(b,87287,c[d+8>>2]|0,1)|0;return}function tk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+240|0;m=p+120|0;n=p;c[46423]=nx(b,2,87317,0)|0;k=nx(b,2,87326,0)|0;c[46424]=k;a:do if((k|0)!=0|(c[46423]|0)!=0){k=Sy(b)|0;while(1){if(!k)break a;j=0;d=0;i=Jx(b,k)|0;while(1){if(!i){f=0;break}e=c[i>>2]|0;g=e&3;f=c[((g|0)==2?i:i+-48|0)+40>>2]|0;h=i+48|0;b:do if((f|0)!=(c[((g|0)==3?i:h)+40>>2]|0)){g=c[46423]|0;do if((f|0)==(k|0)&(g|0)!=0){f=yx(i,g)|0;if(!(a[f>>0]|0)){e=c[i>>2]|0;break}else{e=j;d=uk(m,d,k,i,f)|0;break b}}while(0);f=c[46424]|0;if((f|0?(c[((e&3|0)==3?i:h)+40>>2]|0)==(k|0):0)?(o=yx(i,f)|0,(a[o>>0]|0)!=0):0)e=uk(n,j,k,i,o)|0;else e=j}else e=j;while(0);j=e;i=Kx(b,i,k)|0}while(1){if((f|0)>=(d|0)){e=0;break}e=m+(f*24|0)+4|0;if((c[m+(f*24|0)+8>>2]|0)>1)vk(k,e);e=c[e>>2]|0;if(e|0)D_(e);f=f+1|0}while(1){if((e|0)>=(j|0))break;d=n+(e*24|0)+4|0;if((c[n+(e*24|0)+8>>2]|0)>1)vk(k,d);d=c[d>>2]|0;if(d|0)D_(d);e=e+1|0}k=Ty(b,k)|0}}while(0);l=p;return}function uk(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+16|0;k=p;m=p+12|0;n=p+8|0;o=0;while(1){if((o|0)>=(d|0)){j=10;break}j=c[b+(o*24|0)>>2]|0;if((a[j>>0]|0)==(a[g>>0]|0)?(b$(j,g)|0)==0:0){j=5;break}o=o+1|0}do if((j|0)==5){k=b+(o*24|0)+4|0;j=c[k>>2]|0;if(!j){j=b+(o*24|0)+8|0;g=j;j=vH((c[j>>2]<<2)+8|0)|0}else{q=b+(o*24|0)+8|0;g=q;j=xH(j,(c[q>>2]<<2)+8|0)|0}c[k>>2]=j;r=c[g>>2]|0;q=r+1|0;c[g>>2]=q;c[j+(r<<2)>>2]=f;c[(c[k>>2]|0)+(q<<2)>>2]=0;j=13}else if((j|0)==10)if((d|0)>4){r=ry(e)|0;c[k>>2]=5;c[k+4>>2]=r;Pw(1,87335,k)|0;break}else{s=b+(o*24|0)+8|0;c[s>>2]=0;k=uH(8)|0;r=b+(o*24|0)+4|0;c[r>>2]=k;q=c[s>>2]|0;j=q+1|0;c[s>>2]=j;c[k+(q<<2)>>2]=f;c[(c[r>>2]|0)+(j<<2)>>2]=0;c[b+(o*24|0)>>2]=g;c[b+(o*24|0)+12>>2]=0;h[b+(o*24|0)+16>>3]=0.0;d=d+1|0;j=13;break}while(0);if((j|0)==13){sE(f,m,n);j=(c[((c[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0)==(e|0)?c[n>>2]|0:c[m>>2]|0;if(j){r=b+(o*24|0)+12|0;s=c[r>>2]|0;c[r>>2]=s+1;if(!s)i=+wE(f,j);else i=0.0;h[b+(o*24|0)+16>>3]=i}}l=p;return d|0}function vk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0.0,k=0.0,m=0.0,n=0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0;x=l;l=l+80|0;t=x+68|0;u=x+64|0;r=x;v=d+4|0;n=c[v>>2]|0;w=b+16|0;i=0;p=0.0;q=0.0;while(1){if((i|0)>=(n|0))break;f=c[(c[d>>2]|0)+(i<<2)>>2]|0;g=c[f>>2]&3;e=c[((g|0)==2?f:f+-48|0)+40>>2]|0;if((e|0)==(b|0))e=c[((g|0)==3?f:f+48|0)+40>>2]|0;g=c[e+16>>2]|0;s=c[w>>2]|0;k=+h[g+16>>3]-+h[s+16>>3];m=+h[g+24>>3]-+h[s+24>>3];o=+u$(k,m);i=i+1|0;p=k/o+p;q=m/o+q}j=+u$(p,q);s=c[w>>2]|0;k=+h[s+16>>3];m=+h[s+24>>3];y=+h[s+96>>3]+ +h[s+88>>3];o=+h[s+80>>3];s=y>o+ +(c[(c[(ez(b)|0)+16>>2]|0)+252>>2]|0);e=c[w>>2]|0;if(s)o=+h[e+96>>3]+ +h[e+88>>3];else{o=+h[e+80>>3];o=o+ +(c[(c[(ez(b)|0)+16>>2]|0)+252>>2]|0);e=c[w>>2]|0}y=+h[e+16>>3]+o*(p/j);j=+h[e+24>>3]+o*(q/j);h[r>>3]=k;n=r+8|0;h[n>>3]=m;h[r+16>>3]=(y+k*2.0)*.3333333333333333;h[r+24>>3]=(j+m*2.0)*.3333333333333333;h[r+32>>3]=(y*2.0+k)*.3333333333333333;h[r+40>>3]=(j*2.0+m)*.3333333333333333;h[r+48>>3]=y;h[r+56>>3]=j;NK(b,r);s=c[w>>2]|0;j=+h[r>>3]-+h[s+16>>3];k=+h[n>>3]-+h[s+24>>3];j=+(~~(j+(j>=0.0?.5:-.5))|0);k=+(~~(k+(k>=0.0?.5:-.5))|0);y=+h[s+88>>3];s=~~((y+j)*256.0/(+h[s+96>>3]+y))&255;r=0;while(1){if((r|0)>=(c[v>>2]|0))break;n=c[(c[d>>2]|0)+(r<<2)>>2]|0;sE(n,t,u);while(1){if(!n)break;else g=n;while(1){if(!g){i=n;break}e=c[g>>2]|0;i=g+-48|0;if((c[((e&3|0)==2?g:i)+40>>2]|0)==(b|0)){e=c[g+16>>2]|0;h[e+56>>3]=j;h[e+64>>3]=k;h[e+72>>3]=0.0;c[e+80>>2]=0;a[e+84>>0]=1;a[e+85>>0]=0;a[e+86>>0]=0;a[e+87>>0]=0;a[e+88>>0]=s;a[e+89>>0]=0;c[e+92>>2]=0;e=c[g>>2]|0}f=g+16|0;if((c[((e&3|0)==3?g:g+48|0)+40>>2]|0)==(b|0)){e=c[f>>2]|0;h[e+16>>3]=j;h[e+24>>3]=k;h[e+32>>3]=0.0;c[e+40>>2]=0;a[e+44>>0]=1;a[e+45>>0]=0;a[e+46>>0]=0;a[e+47>>0]=0;a[e+48>>0]=s;a[e+49>>0]=0;c[e+52>>2]=0}if((a[(c[f>>2]|0)+112>>0]|0)!=1){g=0;continue}e=c[(c[((c[g>>2]&3|0)==2?g:i)+40>>2]|0)+16>>2]|0;if((a[e+156>>0]|0)!=1){g=0;continue}if((c[e+184>>2]|0)!=1){g=0;continue}g=c[c[e+180>>2]>>2]|0}while(1){if(!i)break;e=c[i>>2]|0;if((c[((e&3|0)==2?i:i+-48|0)+40>>2]|0)==(b|0)){e=c[i+16>>2]|0;h[e+56>>3]=j;h[e+64>>3]=k;h[e+72>>3]=0.0;c[e+80>>2]=0;a[e+84>>0]=1;a[e+85>>0]=0;a[e+86>>0]=0;a[e+87>>0]=0;a[e+88>>0]=s;a[e+89>>0]=0;c[e+92>>2]=0;e=c[i>>2]|0}f=i+48|0;g=i+16|0;if((c[((e&3|0)==3?i:f)+40>>2]|0)==(b|0)){e=c[g>>2]|0;h[e+16>>3]=j;h[e+24>>3]=k;h[e+32>>3]=0.0;c[e+40>>2]=0;a[e+44>>0]=1;a[e+45>>0]=0;a[e+46>>0]=0;a[e+47>>0]=0;a[e+48>>0]=s;a[e+49>>0]=0;c[e+52>>2]=0}if((a[(c[g>>2]|0)+112>>0]|0)!=1){i=0;continue}e=c[(c[((c[i>>2]&3|0)==3?i:f)+40>>2]|0)+16>>2]|0;if((a[e+156>>0]|0)!=1){i=0;continue}if((c[e+176>>2]|0)!=1){i=0;continue}i=c[c[e+172>>2]>>2]|0}n=c[(c[n+16>>2]|0)+172>>2]|0}r=r+1|0}a[(c[w>>2]|0)+145>>0]=1;l=x;return}function wk(a){a=a|0;var b=0,d=0,e=0;kh(a);b=c[a>>2]&3;d=a+-48|0;e=a+48|0;b=fh(c[((b|0)==2?a:d)+40>>2]|0,c[((b|0)==3?a:e)+40>>2]|0)|0;if(!b){b=c[a>>2]&3;ph(c[((b|0)==2?a:d)+40>>2]|0,c[((b|0)==3?a:e)+40>>2]|0,a)|0}else xh(a,b);return}function xk(b){b=b|0;var d=0,e=0,f=0,g=0;f=b+16|0;e=0;while(1){b=c[f>>2]|0;if((e|0)>=(c[b+220>>2]|0))break;d=c[(c[b+216>>2]|0)+(e<<2)>>2]|0;c[b+192>>2]=d;b=d;d=b;while(1){if(!d)break;g=c[d+16>>2]|0;a[g+157>>0]=0;d=c[g+164>>2]|0}while(1){if(!b)break;yk(b);b=c[(c[b+16>>2]|0)+164>>2]|0}e=e+1|0}return}function yk(b){b=b|0;var d=0,e=0,f=0,g=0;g=b+16|0;d=c[g>>2]|0;b=d+157|0;if(!(a[b>>0]|0)){a[b>>0]=1;a[d+158>>0]=1;b=0;while(1){f=c[(c[d+180>>2]|0)+(b<<2)>>2]|0;if(!f)break;d=c[((c[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0;e=c[d+16>>2]|0;if(!(a[e+158>>0]|0)){if(!(a[e+157>>0]|0))yk(d)}else{wk(f);b=b+-1|0}b=b+1|0;d=c[g>>2]|0}a[d+158>>0]=0}return}function zk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;e=Sy(a)|0;b=0;while(1){if(!e)break;d=Ex(a,e)|0;while(1){if(!d)break;g=c[d>>2]&3;h=c[(c[(c[((g|0)==2?d:d+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0;g=c[(c[(c[((g|0)==3?d:d+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0;f=h-g|0;d=Gx(a,d)|0;b=((h|0)==(g|0)?0:((f|0)>-1?f:0-f|0)+-1|0)+b|0}e=Ty(a,e)|0}return b|0}function Ak(b){b=b|0;var d=0,e=0,f=0,g=0;e=Sy(b)|0;while(1){if(!e)break;g=c[e+16>>2]|0;f=c[g+176>>2]|0;g=g+172|0;d=0;while(1){if((d|0)>=(f|0))break;a[(c[(c[(c[g>>2]|0)+(d<<2)>>2]|0)+16>>2]|0)+112>>0]=0;d=d+1|0}e=Ty(b,e)|0}return}function Bk(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;o=q;j=c[b+24>>2]|0;Ck(a);k=(j|0)==-1;m=b+8|0;i=k^1;n=c[15686]|0;f=1797693134862315708145274.0e284;g=0;while(1){if(!(k|(g|0)<(j|0)))break;d=Sy(a)|0;while(1){if(!d)break;c[(c[d+16>>2]|0)+232>>2]=0;d=Ty(a,d)|0}yj(a);e=+Dk(a);h[m>>3]=e;if(0){h[o>>3]=e;g1(n,87387,o)|0;e=+h[m>>3]}if(!(!(e<=+h[b>>3])&(!(f<=e)|i))){p=9;break}Ek(a);f=e;g=g+1|0}if((p|0)==9){p=b+20|0;c[b+16>>2]=c[p>>2];c[p>>2]=g}yj(a);Fk(a);Gk();h[m>>3]=+Dk(a);l=q;return}function Ck(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0.0,m=0.0,n=0;c[45982]=vH((ay(a)|0)*24|0)|0;c[45981]=0;b=Sy(a)|0;while(1){if(!b)break;c[(c[b+16>>2]|0)+120>>2]=-1;b=Ty(a,b)|0}i=Sy(a)|0;while(1){if(!i)break;j=i+16|0;do if(!(c[(c[j>>2]|0)+216>>2]|0)){f=uH(4)|0;g=c[45982]|0;k=c[45981]|0;c[g+(k*24|0)>>2]=f;c[f>>2]=i;c[g+(k*24|0)+4>>2]=1;j=c[j>>2]|0;h[g+(k*24|0)+8>>3]=+h[j+32>>3];h[g+(k*24|0)+16>>3]=+h[j+40>>3];c[j+120>>2]=k;c[45981]=k+1}else{g=SL(i)|0;k=g+16|0;b=c[k>>2]|0;d=c[b+120>>2]|0;if((d|0)>-1){g=c[45982]|0;f=c[g+(d*24|0)>>2]|0;e=g+(d*24|0)+4|0;k=c[e>>2]|0;c[e>>2]=k+1;c[f+(k<<2)>>2]=i;k=c[j>>2]|0;j=g+(d*24|0)+8|0;h[j>>3]=+h[j>>3]+ +h[k+32>>3];j=g+(d*24|0)+16|0;l=+h[j>>3];m=+h[k+40>>3];h[j>>3]=l<m?m:l;c[k+120>>2]=d;break}d=uH(c[b+216>>2]<<2)|0;e=c[45982]|0;f=c[45981]|0;b=e+(f*24|0)|0;c[b>>2]=d;c[d>>2]=g;if((g|0)==(i|0)){h[e+(f*24|0)+8>>3]=+h[(c[k>>2]|0)+32>>3];d=1;b=i}else{c[(c[b>>2]|0)+4>>2]=i;n=c[k>>2]|0;b=c[j>>2]|0;h[e+(f*24|0)+8>>3]=+h[b+32>>3]+ +h[n+32>>3];d=2;b=+h[n+40>>3]<+h[b+40>>3]?i:g}c[e+(f*24|0)+4>>2]=d;h[e+(f*24|0)+16>>3]=+h[(c[b+16>>2]|0)+40>>3];c[(c[k>>2]|0)+120>>2]=f;c[(c[j>>2]|0)+120>>2]=f;c[45981]=f+1}while(0);i=Ty(a,i)|0}return}function Dk(a){a=a|0;var b=0.0,d=0.0,e=0,f=0,g=0,i=0.0,j=0.0;Fk(a);g=c[45979]|0;e=c[a+16>>2]|0;b=+(O(c[e+252>>2]|0,g+-1|0)|0);f=c[45980]|0;e=e+248|0;a=0;d=0.0;while(1){if((a|0)>=(g|0))break;i=+h[f+(a*40|0)+24>>3]+ +(O(c[e>>2]|0,c[f+(a*40|0)+16>>2]|0)|0);j=+h[f+(a*40|0)+32>>3]+b;a=a+1|0;b=j;d=d<i?i:d}return +(d/b)}function Ek(a){a=a|0;var b=0;c[45983]=uH((ay(a)|0)<<2)|0;b=0;while(1){if((b|0)>=(ay(a)|0))break;c[(c[45983]|0)+(b<<2)>>2]=b;b=b+1|0}Fk(a);Hk(a);Ik(a);return}function Fk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0.0,k=0,l=0;c[45979]=0;b=c[45980]|0;if(b|0){e=0;while(1){if((e|0)>=(c[45981]|0))break;d=c[b+(e*40|0)+4>>2]|0;if(d){D_(d);b=c[45980]|0}d=c[b+(e*40|0)+8>>2]|0;if(d){D_(d);b=c[45980]|0}e=e+1|0}D_(b)}c[45980]=uH((c[45981]|0)*40|0)|0;b=0;while(1){d=c[45981]|0;if((b|0)>=(d|0))break;k=uH(d<<2)|0;c[(c[45980]|0)+(b*40|0)+4>>2]=k;k=uH(c[45981]<<2)|0;l=c[45980]|0;c[l+(b*40|0)+8>>2]=k;c[l+(b*40|0)>>2]=b;c[l+(b*40|0)+12>>2]=0;c[l+(b*40|0)+16>>2]=0;l=l+(b*40|0)+24|0;c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0;b=b+1|0}e=Sy(a)|0;while(1){if(!e)break;d=Ex(a,e)|0;while(1){if(!d)break;i=c[d>>2]|0;f=d+-48|0;g=c[45980]|0;b=c[(c[(c[((i&3|0)==3?d:d+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0;while(1){b=b+1|0;if((b|0)>=(c[(c[(c[((i&3|0)==2?d:f)+40>>2]|0)+16>>2]|0)+232>>2]|0))break;i=g+(b*40|0)+16|0;c[i>>2]=(c[i>>2]|0)+1;i=c[d>>2]|0}d=Gx(a,d)|0}e=Ty(a,e)|0}i=c[45981]|0;k=c[45982]|0;l=c[45980]|0;d=a+16|0;b=0;while(1){if((b|0)>=(i|0))break;e=(c[c[k+(b*24|0)>>2]>>2]|0)+16|0;f=c[(c[e>>2]|0)+232>>2]|0;if((f|0)>=(c[45979]|0))c[45979]=f+1;g=l+(f*40|0)+24|0;j=+h[g>>3];h[g>>3]=j+ +h[k+(b*24|0)+8>>3]*72.0+(j>0.0?+(c[(c[d>>2]|0)+248>>2]|0):0.0);g=l+(f*40|0)+32|0;j=+h[k+(b*24|0)+16>>3]*72.0;if(+h[g>>3]<j)h[g>>3]=j;c[(c[l+(f*40|0)+4>>2]|0)+(c[l+(f*40|0)+12>>2]<<2)>>2]=k+(b*24|0);a=l+((c[(c[e>>2]|0)+232>>2]|0)*40|0)+12|0;c[a>>2]=(c[a>>2]|0)+1;b=b+1|0}return}function Gk(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=c[45979]|0;l=c[45980]|0;j=0;b=0;a=0;while(1){if((j|0)>=(k|0))break;d=l+(j*40|0)|0;i=c[l+(j*40|0)+12>>2]|0;e=(b|0)==0;a:do if(i)if(!e){if((c[d>>2]|0)>(a|0)){f=l+(j*40|0)+4|0;d=0;while(1){if((d|0)>=(i|0))break a;g=c[(c[f>>2]|0)+(d<<2)>>2]|0;h=c[g+4>>2]|0;e=0;while(1){if((e|0)>=(h|0))break;m=(c[(c[(c[g>>2]|0)+(e<<2)>>2]|0)+16>>2]|0)+232|0;c[m>>2]=(c[m>>2]|0)-b;e=e+1|0}d=d+1|0}}}else b=0;else{if(e)a=c[d>>2]|0;b=b+1|0}while(0);j=j+1|0}return}function Hk(a){a=a|0;var b=0;b=c[45983]|0;_0(b,ay(a)|0,4,63);return}function Ik(b){b=b|0;var d=0.0,e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0;j=c[45979]|0;k=c[45980]|0;g=c[45983]|0;i=0;while(1){if((i|0)>=(j|0)){e=0;d=0.0;break}e=c[g+(i<<2)>>2]|0;f=i+1|0;if((c[k+(e*40|0)+12>>2]|0)<2)i=f;else{l=4;break}}if((l|0)==4)if((j|0)>(f|0))d=+h[k+((c[g+(f<<2)>>2]|0)*40|0)+24>>3];else d=0.0;a:do if((i|0)!=(j|0)){_0(c[k+(e*40|0)+4>>2]|0,c[k+(e*40|0)+12>>2]|0,4,64);g=c[45980]|0;r=+h[g+(e*40|0)+24>>3];r=!(d<=r*.25)&!(d>=r*.75)?d:r*.5;s=c[g+(e*40|0)+12>>2]|0;q=b+16|0;n=0;o=0;d=0.0;f=0;p=0;while(1){if((p|0)>=(f+s|0))break a;do if(!(c[(c[g+(e*40|0)+8>>2]|0)+(p<<2)>>2]|0)){l=c[(c[g+(e*40|0)+4>>2]|0)+(p<<2)>>2]|0;b=l+8|0;m=+h[b>>3]*72.0+d+(d>0.0?+(c[(c[q>>2]|0)+248>>2]|0):0.0);i=(o|0)!=0;if(!(i&!(m<=r))){j=i?n:l;i=i?o:1;d=m;break}j=n+4|0;k=l+4|0;i=0;while(1){if((i|0)<(c[j>>2]|0))g=0;else break;while(1){if((g|0)>=(c[k>>2]|0))break;a[(c[(ph(c[(c[n>>2]|0)+(i<<2)>>2]|0,c[(c[l>>2]|0)+(g<<2)>>2]|0,0)|0)+16>>2]|0)+112>>0]=1;g=g+1|0}i=i+1|0}g=c[45980]|0;c[(c[g+(e*40|0)+8>>2]|0)+(p<<2)>>2]=1;j=g+(e*40|0)+12|0;c[j>>2]=(c[j>>2]|0)+-1;j=g+(e*40|0)+16|0;c[j>>2]=(c[j>>2]|0)+1;j=g+(e*40|0)+24|0;h[j>>3]=+h[b>>3]*-72.0-+(c[(c[q>>2]|0)+248>>2]|0)+ +h[j>>3];j=n;i=o}else{j=n;i=o;f=f+1|0}while(0);n=j;o=i;p=p+1|0}}while(0);return}function Jk(a,b){a=a|0;b=b|0;a=Kk(c[a>>2]|0)|0;b=Kk(c[b>>2]|0)|0;return ((b|0)<(a|0)&1)-((b|0)>(a|0)&1)|0}function Kk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=a+4|0;d=0;b=0;while(1){if((d|0)>=(c[f>>2]|0))break;e=c[(c[a>>2]|0)+(d<<2)>>2]|0;g=ez(e)|0;e=Ex(g,e)|0;while(1){if(!e)break;e=Gx(g,e)|0;b=b+1|0}d=d+1|0}return b|0}function Lk(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0;f=c[45980]|0;e=+h[f+((c[b>>2]|0)*40|0)+24>>3];d=+h[f+((c[a>>2]|0)*40|0)+24>>3];return (e>d&1)-(e<d&1)|0}function Mk(a){a=a|0;var b=0;b=Sy(a)|0;while(1){if(!b)break;c[(c[b+16>>2]|0)+216>>2]=0;b=Ty(a,b)|0}return}function Nk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+32|0;f=g+16|0;e=g+8|0;d=g+20|0;c[d>>2]=5;a=xx(a,96579)|0;if(a|0?(c[e>>2]=g,c[e+4>>2]=d,(N1(a,87402,e)|0)>=1):0)Pw(0,87409,f)|0;c[b+24>>2]=0;c[b+32>>2]=0;l=g;return 0}function Ok(b){b=b|0;var d=0,e=0;d=c[46419]|0;if((((d|0)!=0?(e=yx(b,d)|0,(e|0)!=0):0)?(a[e>>0]|0)!=0:0)?(QL(e)|0)<<24>>24==0:0)b=1;else b=0;return b|0}function Pk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;il(a);b=Sy(a)|0;while(1){if(!b)break;d=Ex(a,b)|0;while(1){if(!d)break;do if(((c[(c[d+16>>2]|0)+172>>2]|0)==0?(Ok(d)|0)==0:0)?(e=d+48|0,f=SL(c[((c[d>>2]&3|0)==3?d:e)+40>>2]|0)|0,g=d+-48|0,h=SL(c[((c[d>>2]&3|0)==2?d:g)+40>>2]|0)|0,(f|0)!=(h|0)):0){if((c[(c[f+16>>2]|0)+212>>2]|0)==0?(c[(c[h+16>>2]|0)+212>>2]|0)==0:0){i=fh(f,h)|0;if(!i){ph(f,h,d)|0;break}else{xh(d,i);break}}i=c[d>>2]&3;Qk(a,c[((i|0)==3?d:e)+40>>2]|0,c[((i|0)==2?d:g)+40>>2]|0,d)}while(0);d=Gx(a,d)|0}b=Ty(a,b)|0}return}function Qk(b,d,f,g){b=b|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;j=c[g>>2]&3;h=c[(c[((j|0)==3?g:g+48|0)+40>>2]|0)+16>>2]|0;i=c[h+212>>2]|0;if(!i)k=0;else k=(c[h+232>>2]|0)-(c[(c[(c[(c[i+16>>2]|0)+264>>2]|0)+16>>2]|0)+232>>2]|0)|0;h=c[(c[((j|0)==2?g:g+-48|0)+40>>2]|0)+16>>2]|0;i=c[h+212>>2]|0;if(!i)h=0;else h=(c[(c[(c[(c[i+16>>2]|0)+264>>2]|0)+16>>2]|0)+232>>2]|0)-(c[h+232>>2]|0)|0;j=g+16|0;k=h+k+(e[(c[j>>2]|0)+170>>1]|0)|0;b=uh(b)|0;a[(c[b+16>>2]|0)+156>>0]=2;i=SL(d)|0;d=SL(f)|0;f=$i(b,i,(k|0)>0?0.0:+(0-k|0),(c[(c[j>>2]|0)+156>>2]|0)*10|0)|0;c[(c[($i(b,d,+(((k|0)>0?k:0)|0),c[(c[j>>2]|0)+156>>2]|0)|0)+16>>2]|0)+116>>2]=g;c[(c[f+16>>2]|0)+116>>2]=g;return}function Rk(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;j=c[d>>2]&3;i=(j|0)==3?d:d+48|0;j=(j|0)==2?d:d+-48|0;j=c[(c[(c[((c[(c[(c[i+40>>2]|0)+16>>2]|0)+232>>2]|0)>(c[(c[(c[j+40>>2]|0)+16>>2]|0)+232>>2]|0)?i:j)+40>>2]|0)+16>>2]|0)+232>>2]|0;i=d+16|0;d=(c[i>>2]|0)+172|0;if(c[d>>2]|0)qa(87498,87520,148,87529);c[d>>2]=f;h=(g|0)==0;do{d=c[i>>2]|0;if(h)g=c[f+16>>2]|0;else{g=c[f+16>>2]|0;k=g+168|0;b[k>>1]=(e[k>>1]|0)+(e[d+168>>1]|0)}k=g+154|0;b[k>>1]=(e[k>>1]|0)+(e[d+154>>1]|0);g=g+156|0;c[g>>2]=(c[g>>2]|0)+(c[d+156>>2]|0);d=f+-48|0;g=c[((c[f>>2]&3|0)==2?f:d)+40>>2]|0;if((c[(c[g+16>>2]|0)+232>>2]|0)==(j|0))break;Sk(a,g);f=c[c[(c[(c[((c[f>>2]&3|0)==2?f:d)+40>>2]|0)+16>>2]|0)+180>>2]>>2]|0}while((f|0)!=0);return}function Sk(a,b){a=a|0;b=b|0;var d=0.0;d=+((c[(c[a+16>>2]|0)+248>>2]|0)/2|0|0);b=c[b+16>>2]|0;a=b+88|0;h[a>>3]=+h[a>>3]+d;b=b+96|0;h[b>>3]=+h[b>>3]+d;return}function Tk(a,b){a=a|0;b=b|0;var d=0,e=0;if(((((a|0)!=0&(b|0)!=0?(e=c[a>>2]&3,d=c[b>>2]&3,(c[((e|0)==3?a:a+48|0)+40>>2]|0)==(c[((d|0)==3?b:b+48|0)+40>>2]|0)):0)?(c[((e|0)==2?a:a+-48|0)+40>>2]|0)==(c[((d|0)==2?b:b+-48|0)+40>>2]|0):0)?(c[(c[a+16>>2]|0)+96>>2]|0)==(c[(c[b+16>>2]|0)+96>>2]|0):0)?(wj(a,b)|0)!=0:0)a=1;else a=0;return a|0}function Uk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=b+16|0;d=c[r>>2]|0;c[d+192>>2]=0;c[d+232>>2]=0;il(b);d=1;while(1){e=c[r>>2]|0;if((d|0)>(c[e+180>>2]|0))break;jl(b,c[(c[e+184>>2]|0)+(d<<2)>>2]|0);d=d+1|0}h=Sy(b)|0;while(1){if(!h)break;g=Ex(b,h)|0;while(1){if(!g)break;d=c[g>>2]|0;e=(c[(c[((d&3|0)==2?g:g+-48|0)+40>>2]|0)+16>>2]|0)+160|0;f=a[e>>0]|0;if(f<<24>>24<3){a[e>>0]=f+1<<24>>24;d=c[g>>2]|0}d=(c[(c[((d&3|0)==3?g:g+48|0)+40>>2]|0)+16>>2]|0)+160|0;e=a[d>>0]|0;if(e<<24>>24<3)a[d>>0]=e+1<<24>>24;g=Gx(b,g)|0}h=Ty(b,h)|0}m=Sy(b)|0;while(1){if(!m)break;if((c[(c[m+16>>2]|0)+212>>2]|0)==0?(m|0)==(SL(m)|0):0){qh(b,m);l=(c[r>>2]|0)+232|0;c[l>>2]=(c[l>>2]|0)+1}d=0;l=Ex(b,m)|0;while(1){if(!l)break;k=l+16|0;h=c[k>>2]|0;a:do if(!(c[h+172>>2]|0)){if(Vk(l)|0){if(!(Tk(d,l)|0)){Wk(b,l);d=l;break}e=c[(c[d+16>>2]|0)+172>>2]|0;if(e|0){Rk(b,l,e,0);lh(l);break}k=c[l>>2]&3;if((c[(c[(c[((k|0)==3?l:l+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)!=(c[(c[(c[((k|0)==2?l:l+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0))break;xh(l,d);lh(l);break}if(d){i=c[l>>2]&3;e=l+48|0;f=c[((i|0)==3?l:e)+40>>2]|0;g=c[d>>2]&3;if((f|0)==(c[((g|0)==3?d:d+48|0)+40>>2]|0)?(n=c[((i|0)==2?l:l+-48|0)+40>>2]|0,(n|0)==(c[((g|0)==2?d:d+-48|0)+40>>2]|0)):0){if((c[(c[f+16>>2]|0)+232>>2]|0)==(c[(c[n+16>>2]|0)+232>>2]|0)){xh(l,d);lh(l);break}if(((c[h+96>>2]|0)==0?(o=d+16|0,(c[(c[o>>2]|0)+96>>2]|0)==0):0)?(wj(l,d)|0)!=0:0)if(!(a[191874]|0)){Rk(b,l,c[(c[o>>2]|0)+172>>2]|0,1);lh(l);break}else{a[(c[k>>2]|0)+112>>0]=6;break}else i=e}else i=e}else i=l+48|0;h=c[l>>2]&3;e=c[((h|0)==3?l:i)+40>>2]|0;j=l+-48|0;if((e|0)==(c[((h|0)==2?l:j)+40>>2]|0)){lh(l);d=l;break}e=SL(e)|0;f=SL(c[((c[l>>2]&3|0)==2?l:j)+40>>2]|0)|0;h=c[l>>2]&3;if((c[((h|0)==3?l:i)+40>>2]|0)==(e|0)?(c[((h|0)==2?l:j)+40>>2]|0)==(f|0):0){g=c[(c[e+16>>2]|0)+232>>2]|0;h=c[(c[f+16>>2]|0)+232>>2]|0;if((g|0)==(h|0)){vh(b,l);d=l;break}if((h|0)>(g|0)){Xk(b,e,f,l);d=l;break}e=Rx(b,f,e,0,0)|0;do if(e|0?(p=c[e>>2]&3,q=c[((p|0)==2?e:e+-48|0)+40>>2]|0,(q|0)!=(c[((c[l>>2]&3|0)==2?l:j)+40>>2]|0)):0){f=e+16|0;if(!(c[(c[f>>2]|0)+172>>2]|0))Xk(b,c[((p|0)==3?e:e+48|0)+40>>2]|0,q,e);if((c[(c[k>>2]|0)+96>>2]|0)==0?(c[(c[f>>2]|0)+96>>2]|0)==0:0){if(!(wj(l,e)|0))break;if(!(a[191874]|0)){lh(l);Rk(b,l,c[(c[f>>2]|0)+172>>2]|0,1);break a}else{a[(c[k>>2]|0)+112>>0]=6;a[(c[f>>2]|0)+153>>0]=1;break a}}}while(0);d=c[l>>2]&3;Xk(b,c[((d|0)==2?l:j)+40>>2]|0,c[((d|0)==3?l:i)+40>>2]|0,l);d=l}}else d=l;while(0);l=Gx(b,l)|0}m=Ty(b,m)|0}if((ig(b)|0)!=(b|0)){d=c[(c[r>>2]|0)+216>>2]|0;if(!d)d=vH(4)|0;else d=xH(d,4)|0;r=c[r>>2]|0;c[r+216>>2]=d;c[d>>2]=c[r+192>>2]}return}function Vk(b){b=b|0;var d=0;d=c[b>>2]&3;if((a[(c[(c[((d|0)==3?b:b+48|0)+40>>2]|0)+16>>2]|0)+159>>0]|0)==7)b=1;else b=(a[(c[(c[((d|0)==2?b:b+-48|0)+40>>2]|0)+16>>2]|0)+159>>0]|0)==7&1;return b|0}function Wk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;f=_k(c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0)|0;g=_k(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0)|0;i=(c[(c[f+16>>2]|0)+232>>2]|0)>(c[(c[g+16>>2]|0)+232>>2]|0);e=i?f:g;f=i?g:f;g=f+16|0;i=e+16|0;a:do if((c[(c[g>>2]|0)+212>>2]|0)!=(c[(c[i>>2]|0)+212>>2]|0)){h=fh(f,e)|0;if(h|0){Rk(b,d,h,1);break}if((c[(c[g>>2]|0)+232>>2]|0)!=(c[(c[i>>2]|0)+232>>2]|0)){Xk(b,f,e,d);e=(c[d+16>>2]|0)+172|0;while(1){e=c[e>>2]|0;if(!e)break a;f=e+-48|0;if((c[(c[(c[((c[e>>2]&3|0)==2?e:f)+40>>2]|0)+16>>2]|0)+232>>2]|0)>(c[(c[i>>2]|0)+232>>2]|0))break a;a[(c[e+16>>2]|0)+112>>0]=5;e=c[(c[(c[((c[e>>2]&3|0)==2?e:f)+40>>2]|0)+16>>2]|0)+180>>2]|0}}}while(0);return}function Xk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=e+16|0;f=c[k>>2]|0;if(!(c[f+96>>2]|0))j=-1;else j=((c[(c[d+16>>2]|0)+232>>2]|0)+(c[(c[b+16>>2]|0)+232>>2]|0)|0)/2|0;if(c[f+172>>2]|0)qa(87541,87520,89,87566);i=d+16|0;h=c[(c[b+16>>2]|0)+232>>2]|0;while(1){g=h+1|0;f=c[(c[i>>2]|0)+232>>2]|0;if((h|0)>=(f|0))break;if((g|0)<(f|0)){if((g|0)==(j|0))f=Yk(a,e)|0;else f=Zk(a)|0;c[(c[f+16>>2]|0)+232>>2]=g}else f=d;Ki(ph(b,f,e)|0);h=g;b=f}if(!(c[(c[k>>2]|0)+172>>2]|0))qa(87577,87520,103,87566);else return}function Yk(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,g=0,i=0,j=0.0;i=d+16|0;g=c[(c[i>>2]|0)+96>>2]|0;e=+h[g+24>>3];f=+h[g+32>>3];g=uh(b)|0;d=g+16|0;c[(c[d>>2]|0)+104>>2]=c[(c[i>>2]|0)+96>>2];j=+(c[(c[(fz(g)|0)+16>>2]|0)+248>>2]|0);h[(c[d>>2]|0)+88>>3]=j;if(!(a[(c[i>>2]|0)+114>>0]|0)){b=(c[(c[(fz(b)|0)+16>>2]|0)+116>>2]&1|0)==0;i=c[d>>2]|0;h[i+80>>3]=b?f:e;h[i+96>>3]=b?e:f}return g|0}function Zk(a){a=a|0;var b=0;b=uh(a)|0;Sk(a,b);return b|0}function _k(b){b=b|0;var d=0;d=c[b+16>>2]|0;if((a[d+159>>0]|0)==7)b=c[(c[(c[(c[d+212>>2]|0)+16>>2]|0)+268>>2]|0)+(c[d+232>>2]<<2)>>2]|0;else b=SL(b)|0;return b|0}function $k(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=ig(a)|0;h=Sy(a)|0;while(1){if(!h)break;b=Jx(j,h)|0;i=0;while(1){if(!b)break;l=Kx(j,b,h)|0;if(oz(a,b)|0){k=i;b=l;i=k;continue}k=(c[b>>2]&3|0)==2?b:b+-48|0;m=(Tk(i,k)|0)==0;e=c[k>>2]&3;b=c[((e|0)==3?k:k+48|0)+40>>2]|0;d=c[(c[b+16>>2]|0)+232>>2]|0;e=c[((e|0)==2?k:k+-48|0)+40>>2]|0;f=c[(c[e+16>>2]|0)+232>>2]|0;g=(d|0)==(f|0);if(!m){c[(c[k+16>>2]|0)+172>>2]=g?i:0;b=c[(c[i+16>>2]|0)+172>>2]|0;if(!b){m=i;b=l;i=m;continue}Rk(a,k,b,0);mh(k);m=i;b=l;i=m;continue}if(!g)if((f|0)>(d|0)){al(b,e,k);b=l;i=k;continue}else{al(e,b,k);b=l;i=k;continue}b=hh(b,e)|0;if(!b){vh(j,k);b=l;i=k;continue}if((k|0)==(b|0)){m=i;b=l;i=m;continue}mh(k);if(c[(c[k+16>>2]|0)+172>>2]|0){m=i;b=l;i=m;continue}xh(k,b);m=i;b=l;i=m}h=Ty(a,h)|0}return}function al(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=bl(a)|0;e=bl(b)|0;cl(f,e,d,c[(c[d+16>>2]|0)+172>>2]|0,(f|0)==(a|0)&(e|0)==(b|0)?1:5);return}function bl(b){b=b|0;var d=0,e=0,f=0;d=c[b+16>>2]|0;e=c[d+212>>2]|0;if((e|0)!=0?(f=c[e+16>>2]|0,(a[f+272>>0]|0)==0):0)b=c[(c[f+268>>2]|0)+(c[d+232>>2]<<2)>>2]|0;return b|0}function cl(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=d+16|0;k=c[(c[n>>2]|0)+232>>2]|0;o=e+16|0;i=c[(c[o>>2]|0)+232>>2]|0;if((i|0)<=(k|0))qa(87602,87630,81,87640);m=c[g>>2]&3;if(!((c[((m|0)==3?g:g+48|0)+40>>2]|0)==(d|0)?(c[((m|0)==2?g:g+-48|0)+40>>2]|0)==(e|0):0))l=5;a:do if((l|0)==5){if((b[(c[g+16>>2]|0)+168>>1]|0)>1){c[(c[f+16>>2]|0)+172>>2]=0;if(((i-k|0)==1?(j=fh(d,e)|0,j|0):0)?wj(f,j)|0:0){xh(f,j);if(a[(c[n>>2]|0)+156>>0]|0)break;if(a[(c[o>>2]|0)+156>>0]|0)break;lh(f);break}m=h&255;h=d;l=c[(c[n>>2]|0)+232>>2]|0;while(1){i=c[(c[o>>2]|0)+232>>2]|0;if((l|0)>=(i|0))break a;if((l|0)<(i+-1|0)){i=ig(d)|0;j=g+-48|0;i=dl(i,c[((c[g>>2]&3|0)==2?g:j)+40>>2]|0)|0;k=g}else{i=e;j=g+-48|0;k=g}a[(c[(ph(h,i,f)|0)+16>>2]|0)+112>>0]=m;n=(c[g+16>>2]|0)+168|0;b[n>>1]=(b[n>>1]|0)+-1<<16>>16;h=i;l=l+1|0;g=c[c[(c[(c[((c[k>>2]&3|0)==2?g:j)+40>>2]|0)+16>>2]|0)+180>>2]>>2]|0}}do if((i-k|0)==1){g=fh(d,e)|0;if(g|0?wj(f,g)|0:0){c[(c[f+16>>2]|0)+172>>2]=g;m=c[g+16>>2]|0;a[m+112>>0]=h;m=m+168|0;b[m>>1]=(b[m>>1]|0)+1<<16>>16;if(a[(c[n>>2]|0)+156>>0]|0)break;if(a[(c[o>>2]|0)+156>>0]|0)break;lh(f);break}c[(c[f+16>>2]|0)+172>>2]=0;g=ph(d,e,f)|0;a[(c[g+16>>2]|0)+112>>0]=h}while(0);i=c[(c[o>>2]|0)+232>>2]|0;if((i-(c[(c[n>>2]|0)+232>>2]|0)|0)>1){if((c[((c[g>>2]&3|0)==3?g:g+48|0)+40>>2]|0)==(d|0))l=i;else{n=f+16|0;c[(c[n>>2]|0)+172>>2]=0;l=ph(d,c[((c[g>>2]&3|0)==2?g:g+-48|0)+40>>2]|0,f)|0;c[(c[n>>2]|0)+172>>2]=l;kh(g);g=l;l=c[(c[o>>2]|0)+232>>2]|0}while(1){i=c[g>>2]&3;j=c[((i|0)==2?g:g+-48|0)+40>>2]|0;k=c[j+16>>2]|0;if((c[k+232>>2]|0)==(l|0))break;g=c[c[k+180>>2]>>2]|0}if((j|0)!=(e|0)){a[(c[(ph(c[((i|0)==3?g:g+48|0)+40>>2]|0,e,f)|0)+16>>2]|0)+112>>0]=h;kh(g)}}}while(0);return}function dl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b+16|0;b=c[d>>2]|0;e=c[b+232>>2]|0;el(a,e,c[b+236>>2]|0,2);b=uh(a)|0;d=c[d>>2]|0;f=c[b+16>>2]|0;h[f+88>>3]=+h[d+88>>3];h[f+96>>3]=+h[d+96>>3];c[f+232>>2]=c[d+232>>2];d=(c[d+236>>2]|0)+1|0;c[f+236>>2]=d;c[(c[(c[(c[a+16>>2]|0)+196>>2]|0)+(e<<6)+4>>2]|0)+(d<<2)>>2]=b;return b|0}function el(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=a+16|0;f=c[(c[h>>2]|0)+196>>2]|0;i=c[f+(b<<6)+4>>2]|0;a:do if((e|0)<1){d=d-e|0;while(1){g=d+1|0;a=c[f+(b<<6)>>2]|0;if((g|0)>=(a|0))break;a=c[i+(g<<2)>>2]|0;f=d+e|0;c[(c[a+16>>2]|0)+236>>2]=f;c[i+(f<<2)>>2]=a;d=g;f=c[(c[h>>2]|0)+196>>2]|0}g=e+-1|0;d=g+a|0;while(1){if((d|0)>=(a|0))break a;c[i+(d<<2)>>2]=0;f=c[(c[h>>2]|0)+196>>2]|0;d=d+1|0;a=c[f+(b<<6)>>2]|0}}else{g=e+-1|0;a=c[f+(b<<6)>>2]|0;while(1){a=a+-1|0;if((a|0)<=(d|0))break;j=c[i+(a<<2)>>2]|0;f=g+a|0;c[(c[j+16>>2]|0)+236>>2]=f;c[i+(f<<2)>>2]=j}f=e+d|0;a=d;while(1){a=a+1|0;if((a|0)>=(f|0))break;c[i+(a<<2)>>2]=0}a=c[(c[h>>2]|0)+196>>2]|0;f=a;a=c[a+(b<<6)>>2]|0}while(0);c[f+(b<<6)>>2]=g+a;return}function fl(a){a=a|0;var b=0;Uk(a);b=c[a+16>>2]|0;c[b+220>>2]=1;c[c[b+216>>2]>>2]=c[b+192>>2];Hi(a);mi(a,0);gl(a);$k(a);hl(a);return}function gl(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=ig(d)|0;l=d+16|0;f=c[l>>2]|0;j=b[f+236>>1]|0;e=j<<16>>16;m=k+16|0;if(j<<16>>16>0)a[(c[(c[m>>2]|0)+196>>2]|0)+(e+-1<<6)+49>>0]=0;j=e;while(1){if((j|0)>(b[f+238>>1]|0))break;i=c[(c[(c[(c[f+268>>2]|0)+(j<<2)>>2]|0)+16>>2]|0)+236>>2]|0;el(k,j,i,c[(c[f+196>>2]|0)+(j<<6)>>2]|0);g=0;h=i;while(1){f=c[l>>2]|0;e=c[f+196>>2]|0;if((g|0)>=(c[e+(j<<6)>>2]|0))break;e=c[(c[e+(j<<6)+4>>2]|0)+(g<<2)>>2]|0;c[(c[(c[(c[m>>2]|0)+196>>2]|0)+(j<<6)+4>>2]|0)+(h<<2)>>2]=e;f=c[e+16>>2]|0;c[f+236>>2]=h;if((a[f+156>>0]|0)==1)c[e+24>>2]=fz(k)|0;sh(d,e);qh(k,e);f=(c[m>>2]|0)+232|0;c[f>>2]=(c[f>>2]|0)+1;g=g+1|0;h=h+1|0}h=c[(c[m>>2]|0)+196>>2]|0;c[e+(j<<6)+4>>2]=(c[h+(j<<6)+4>>2]|0)+(i<<2);a[h+(j<<6)+49>>0]=0;j=j+1|0}e=c[m>>2]|0;if((j|0)<(b[e+238>>1]|0))a[(c[e+196>>2]|0)+(j<<6)+49>>0]=0;a[f+272>>0]=1;return}function hl(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+16|0;d=c[i>>2]|0;h=b[d+236>>1]|0;while(1){if((h|0)>(b[d+238>>1]|0))break;f=c[(c[d+268>>2]|0)+(h<<2)>>2]|0;g=f+16|0;while(1){d=c[g>>2]|0;e=c[c[d+180>>2]>>2]|0;if(!e)break;kh(e)}while(1){d=c[c[d+172>>2]>>2]|0;if(!d)break;kh(d);d=c[g>>2]|0}sh(ig(a)|0,f);c[(c[(c[i>>2]|0)+268>>2]|0)+(h<<2)>>2]=0;h=h+1|0;d=c[i>>2]|0}return}function il(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;n=o;f=Sy(b)|0;while(1){if(!f)break;e=f+16|0;d=c[e>>2]|0;if((a[d+159>>0]|0)==7){UL(f);d=c[e>>2]|0}c[d+212>>2]=0;f=Ty(b,f)|0}m=b+16|0;k=1;while(1){d=c[m>>2]|0;if((k|0)>(c[d+180>>2]|0))break;h=c[(c[d+184>>2]|0)+(k<<2)>>2]|0;i=h+16|0;d=Sy(h)|0;a:while(1){if(!d)break;j=Ty(h,d)|0;e=d+16|0;if(a[(c[e>>2]|0)+159>>0]|0){f=ry(d)|0;g=ry(b)|0;c[n>>2]=f;c[n+4>>2]=g;Pw(0,87649,n)|0;dz(h,d)|0;d=j;continue}VL(d,c[(c[i>>2]|0)+264>>2]|0);g=c[e>>2]|0;c[g+212>>2]=h;a[g+159>>0]=7;g=Ex(h,d)|0;while(1){if(!g){d=j;continue a}d=c[(c[g+16>>2]|0)+172>>2]|0;b:do if(d|0)do{e=d+-48|0;f=c[(c[((c[d>>2]&3|0)==2?d:e)+40>>2]|0)+16>>2]|0;if((a[f+156>>0]|0)!=1)break b;c[f+212>>2]=h;d=c[c[(c[(c[((c[d>>2]&3|0)==2?d:e)+40>>2]|0)+16>>2]|0)+180>>2]>>2]|0}while((d|0)!=0);while(0);g=Gx(h,g)|0}}k=k+1|0}l=o;return}function jl(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=e+16|0;g=uH((b[(c[k>>2]|0)+238>>1]<<2)+8|0)|0;f=c[k>>2]|0;c[f+268>>2]=g;g=0;h=b[f+236>>1]|0;while(1){if((h|0)>(b[f+238>>1]|0))break;f=uh(d)|0;c[(c[(c[k>>2]|0)+268>>2]|0)+(h<<2)>>2]=f;j=c[f+16>>2]|0;c[j+232>>2]=h;a[j+159>>0]=7;c[j+212>>2]=e;if(g|0){j=(c[(ph(g,f,0)|0)+16>>2]|0)+154|0;b[j>>1]=(b[j>>1]|0)*1e3}g=f;h=h+1|0;f=c[k>>2]|0}j=Sy(e)|0;while(1){f=c[k>>2]|0;if(!j)break;h=(c[(c[f+268>>2]|0)+(c[(c[j+16>>2]|0)+232>>2]<<2)>>2]|0)+16|0;f=(c[h>>2]|0)+216|0;c[f>>2]=(c[f>>2]|0)+1;f=Ex(e,j)|0;while(1){if(!f)break;i=c[f>>2]|0;d=f+-48|0;g=c[(c[(c[((i&3|0)==3?f:f+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0;while(1){if((g|0)>=(c[(c[(c[((i&3|0)==2?f:d)+40>>2]|0)+16>>2]|0)+232>>2]|0))break;i=(c[(c[c[(c[h>>2]|0)+180>>2]>>2]|0)+16>>2]|0)+168|0;b[i>>1]=(b[i>>1]|0)+1<<16>>16;g=g+1|0;i=c[f>>2]|0}f=Gx(e,f)|0}j=Ty(e,j)|0}d=b[f+238>>1]|0;i=f+268|0;f=b[f+236>>1]|0;while(1){if((f|0)>(d|0))break;g=(c[(c[(c[i>>2]|0)+(f<<2)>>2]|0)+16>>2]|0)+216|0;h=c[g>>2]|0;if((h|0)>1)c[g>>2]=h+-1;f=f+1|0}return}function kl(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=(c[(c[e+16>>2]|0)+212>>2]|0)+16|0;e=c[k>>2]|0;j=f+1|0;if((j|0)!=(a[e+273>>0]|0)){i=b[e+236>>1]|0;while(1){h=b[e+238>>1]|0;if((i|0)>(h<<16>>16|0))break;Bi(d,c[(c[e+268>>2]|0)+(i<<2)>>2]|0);i=i+1|0;e=c[k>>2]|0}i=b[e+236>>1]|0;while(1){if((i|0)>(h<<16>>16|0))break;Ci(g,c[(c[e+268>>2]|0)+(i<<2)>>2]|0,f);d=c[k>>2]|0;i=i+1|0;h=b[d+238>>1]|0;e=d}a[e+273>>0]=j}return}function ll(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=Sy(b)|0;while(1){if(!h)break;c[(c[h+16>>2]|0)+212>>2]=0;g=Ex(b,h)|0;while(1){if(!g)break;d=c[(c[g+16>>2]|0)+172>>2]|0;a:do if(d|0)do{e=d+-48|0;f=c[(c[((c[d>>2]&3|0)==2?d:e)+40>>2]|0)+16>>2]|0;if((a[f+156>>0]|0)!=1)break a;c[f+212>>2]=0;d=c[c[(c[(c[((c[d>>2]&3|0)==2?d:e)+40>>2]|0)+16>>2]|0)+180>>2]>>2]|0}while((d|0)!=0);while(0);g=Gx(b,g)|0}h=Ty(b,h)|0}ml(b);return}function ml(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;e=b+16|0;d=1;while(1){f=c[e>>2]|0;if((d|0)>(c[f+180>>2]|0))break;ml(c[(c[f+184>>2]|0)+(d<<2)>>2]|0);d=d+1|0}i=Sy(b)|0;while(1){if(!i)break;d=(c[i+16>>2]|0)+212|0;if(!(c[d>>2]|0))c[d>>2]=b;h=Ex(b,i)|0;while(1){if(!h)break;d=c[(c[h+16>>2]|0)+172>>2]|0;a:do if(d|0)do{e=c[d>>2]|0;g=d+-48|0;f=c[(c[((e&3|0)==2?d:g)+40>>2]|0)+16>>2]|0;if((a[f+156>>0]|0)!=1)break a;f=f+212|0;if(!(c[f>>2]|0)){c[f>>2]=b;e=c[d>>2]|0}d=c[c[(c[(c[((e&3|0)==2?d:g)+40>>2]|0)+16>>2]|0)+180>>2]>>2]|0}while((d|0)!=0);while(0);h=Gx(b,h)|0}i=Ty(b,i)|0}return}function nl(a){a=a|0;var b=0,c=0,d=0;d=tM(a)|0;c=Sy(a)|0;while(1){if(!c)break;b=Ex(a,c)|0;while(1){if(!b)break;ol(b,d);b=Gx(a,b)|0}c=Ty(a,c)|0}yw(d)|0;return} + function yH(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0.0,m=0,n=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;r=u+40|0;q=u+32|0;n=u+24|0;m=u;s=4;t=C_(40)|0;c[t>>2]=0;f=u+68|0;g=u+64|0;if(0){o=0;ka(62,a|0,f|0,g|0);i=o;o=0;if((i|0)!=0&(p|0)!=0){j=E3(c[i>>2]|0,t|0,s|0)|0;if(!j)bb(i|0,p|0);z=p}else j=-1;if((j|0)!=1){j=c[15686]|0;i=c[f>>2]|0;f=c[g>>2]|0;o=0;c[m>>2]=99176;c[m+4>>2]=i;c[m+8>>2]=f;c[m+12>>2]=d;c[m+16>>2]=b;ca(29,j|0,99132,m|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)!=1){o=0;ha(1);f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)!=1)j=6;else{f=z;j=15}}else{f=z;j=15}}else{f=z;j=15}}else j=6;do if((j|0)==6){o=0;f=$(27,a|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){i=E3(c[g>>2]|0,t|0,s|0)|0;if(!i)bb(g|0,p|0);z=p}else i=-1;if((i|0)!=1){if(!f){o=0;ha(2);f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;break}}if((d|0)<1){o=0;ha(3);f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;break}f=0;break}else{c[46441]=(e|0)>-1?e:30;t=D3(185768,1,t|0,s|0)|0;s=z;o=0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;break}f=0;j=15;break}}else{f=z;j=15}}while(0);a:do if((j|0)==15){b:while(1){if(f|0){f=2;break a}o=0;ha(4);f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;continue}a=c[15686]|0;m=0;while(1){o=0;j=_(2)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;continue b}if(!j)break;o=0;f=$(28,j|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){i=E3(c[g>>2]|0,t|0,s|0)|0;if(!i)bb(g|0,p|0);z=p}else i=-1;if((i|0)==1){f=z;j=15;continue b}o=0;ja(25,j|0,f|0);f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;continue b}m=m+1|0;do if(((m|0)%100|0|0)==0&0!=0){f=(m|0)%1e3|0;if((f|0)==100){o=0;aa(91,99176,a|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;continue b}o=0;c[n>>2]=m;ca(29,a|0,99194,n|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;continue b}break}o=0;c[q>>2]=m;ca(29,a|0,99194,q|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){i=E3(c[g>>2]|0,t|0,s|0)|0;if(!i)bb(g|0,p|0);z=p}else i=-1;if((i|0)==1){f=z;j=15;continue b}if(!f){o=0;aa(92,10,a|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;continue b}}}while(0);if((m|0)>=(d|0))break}switch(b|0){case 1:{o=0;ha(5);f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;continue b}break}case 2:{o=0;ha(6);f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;continue b}break}default:{o=0;ha(7);f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;continue b}o=0;ha(3);f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;continue b}}}if(!0){f=0;break a}if((m|0)>99){o=0;aa(92,10,a|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;continue}}f=c[46481]|0;g=c[46482]|0;o=0;k=+X(1);i=o;o=0;if((i|0)!=0&(p|0)!=0){j=E3(c[i>>2]|0,t|0,s|0)|0;if(!j)bb(i|0,p|0);z=p}else j=-1;if((j|0)==1){f=z;j=15;continue}o=0;c[r>>2]=99176;c[r+4>>2]=f;c[r+8>>2]=g;c[r+12>>2]=m;h[r+16>>3]=k;ca(29,a|0,99198,r|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15}else break}f=0}while(0);D_(t|0);l=u;return f|0}function zH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;a=(c[a+16>>2]|0)+192|0;e=0;h=0;while(1){a=c[a>>2]|0;if(!a)break;g=c[a+16>>2]|0;f=c[g+180>>2]|0;a=0;while(1){if(!(c[f+(a<<2)>>2]|0))break;a=a+1|0;e=e+1|0}a=g+164|0;h=h+1|0}c[b>>2]=h;c[d>>2]=e;return}function AH(b){b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;c[46484]=b;c[46491]=0;c[46482]=0;c[46481]=0;i=b+16|0;b=(c[i>>2]|0)+192|0;h=0;f=0;while(1){b=c[b>>2]|0;if(!b)break;g=c[b+16>>2]|0;a[g+157>>0]=0;h=h+1|0;c[46481]=h;d=c[g+180>>2]|0;b=0;while(1){if(!(c[d+(b<<2)>>2]|0))break;k=f+1|0;c[46482]=k;b=b+1|0;f=k}b=g+164|0}b=c[46492]|0;if(!b)b=vH(h<<2)|0;else b=xH(b,h<<2)|0;c[46492]=b;c[46493]=0;b=c[46486]|0;if(!b)b=vH(c[46481]<<2)|0;else b=xH(b,c[46481]<<2)|0;c[46486]=b;c[46485]=0;d=1;b=(c[i>>2]|0)+192|0;while(1){b=c[b>>2]|0;if(!b)break;k=b+16|0;i=c[k>>2]|0;j=i+292|0;c[j>>2]=0;i=c[i+172>>2]|0;h=d;g=0;b=0;while(1){d=c[i+(g<<2)>>2]|0;if(!d)break;f=b+1|0;c[j>>2]=f;b=c[d+16>>2]|0;c[b+160>>2]=0;c[b+164>>2]=-1;if(!h)b=0;else{l=c[d>>2]&3;b=((c[(c[(c[((l|0)==2?d:d+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[(c[(c[((l|0)==3?d:d+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)|0)<(e[b+170>>1]|0|0)?0:h}h=b;g=g+1|0;b=f}b=uH((g<<2)+4|0)|0;d=c[k>>2]|0;c[d+264>>2]=b;c[d+268>>2]=0;d=c[d+180>>2]|0;b=0;do{l=b;b=b+1|0}while((c[d+(l<<2)>>2]|0)!=0);d=uH(b<<2)|0;b=c[k>>2]|0;c[b+272>>2]=d;c[b+276>>2]=0;d=h;b=b+164|0}return d|0}function BH(){var a=0,b=0,d=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;n=o+8|0;k=o;m=GL(c[46481]|0)|0;a=(c[(c[46484]|0)+16>>2]|0)+192|0;while(1){b=c[a>>2]|0;if(!b){j=0;break}d=b+16|0;a=c[d>>2]|0;if(!(c[a+292>>2]|0)){IL(m,b);a=c[d>>2]|0}a=a+164|0}while(1){a=JL(m)|0;if(!a)break;i=a+16|0;a=c[i>>2]|0;f=a+232|0;c[f>>2]=0;d=c[a+172>>2]|0;b=0;h=0;while(1){g=c[d+(b<<2)>>2]|0;if(!g){f=0;break}g=(c[(c[(c[((c[g>>2]&3|0)==3?g:g+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)+(e[(c[g+16>>2]|0)+170>>1]|0)|0;g=(h|0)>(g|0)?h:g;c[f>>2]=g;b=b+1|0;h=g}while(1){b=c[(c[a+180>>2]|0)+(f<<2)>>2]|0;if(!b)break;d=b+-48|0;g=(c[(c[((c[b>>2]&3|0)==2?b:d)+40>>2]|0)+16>>2]|0)+292|0;h=c[g>>2]|0;c[g>>2]=h+-1;if((h|0)<2){IL(m,c[((c[b>>2]&3|0)==2?b:d)+40>>2]|0);a=c[i>>2]|0}f=f+1|0}j=j+1|0}a:do if((j|0)!=(c[46481]|0)){Pw(1,99530,k)|0;a=(c[(c[46484]|0)+16>>2]|0)+192|0;while(1){b=c[a>>2]|0;if(!b)break a;d=b+16|0;a=c[d>>2]|0;if(c[a+292>>2]|0){k=ry(b)|0;a=c[(c[d>>2]|0)+292>>2]|0;c[n>>2]=k;c[n+4>>2]=a;Pw(3,99552,n)|0;a=c[d>>2]|0}a=a+164|0}}while(0);HL(m);l=o;return}function CH(){var b=0,d=0,e=0;b=(c[(c[46484]|0)+16>>2]|0)+192|0;while(1){b=c[b>>2]|0;if(!b)break;e=b+16|0;b=c[e>>2]|0;d=c[b+264>>2]|0;if(d){D_(d);b=c[e>>2]|0}d=c[b+272>>2]|0;if(d){D_(d);b=c[e>>2]|0}a[b+157>>0]=0;b=b+164|0}return}function DH(){var a=0,b=0,d=0,e=0,f=0;a=(c[(c[46484]|0)+16>>2]|0)+192|0;while(1){a=c[a>>2]|0;if(!a)break;a=c[a+16>>2]|0;c[a+280>>2]=0;a=a+164|0}f=uH(c[46481]<<2)|0;e=0;a=(c[(c[46484]|0)+16>>2]|0)+192|0;while(1){b=c[a>>2]|0;if(!b)break;d=b+16|0;a=c[d>>2]|0;if(!(c[a+280>>2]|0)){c[f+(e<<2)>>2]=QH(b)|0;b=e+1|0;a=c[d>>2]|0}else b=e;e=b;a=a+164|0}a=RH(f,e)|0;while(1){if((SH(a)|0)<=1)break;WH(a,c[(VH(UH(TH(a)|0)|0)|0)+8>>2]|0)}D_(a);a=0;while(1){if((a|0)>=(e|0))break;D_(c[f+(a<<2)>>2]|0);a=a+1|0}D_(f);if((c[46485]|0)==((c[46481]|0)+-1|0)){XH();return}else qa(99275,99305,523,99310)}function EH(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c[46491]|0;f=c[46485]|0;j=c[46486]|0;k=c[46441]|0;b=0;a=0;g=i;while(1){if((g|0)>=(f|0)){h=8;break}e=c[j+(g<<2)>>2]|0;d=c[(c[e+16>>2]|0)+160>>2]|0;if((d|0)<0){if(!a)a=e;else a=(c[(c[a+16>>2]|0)+160>>2]|0)>(d|0)?e:a;b=b+1|0;if((b|0)>=(k|0))break}e=g+1|0;c[46491]=e;g=e}if((h|0)==8)if((i|0)>0){f=0;while(1){if((f|0)>=(i|0))break;d=c[j+(f<<2)>>2]|0;e=c[(c[d+16>>2]|0)+160>>2]|0;if((e|0)<0){if(!a)a=d;else a=(c[(c[a+16>>2]|0)+160>>2]|0)>(e|0)?d:a;b=b+1|0;if((b|0)>=(k|0))break}f=f+1|0}c[46491]=f}return a|0}function FH(a){a=a|0;var b=0,d=0;b=c[a>>2]&3;d=c[((b|0)==3?a:a+48|0)+40>>2]|0;a=c[((b|0)==2?a:a+-48|0)+40>>2]|0;b=(c[(c[d+16>>2]|0)+288>>2]|0)<(c[(c[a+16>>2]|0)+288>>2]|0);a=b?d:a;c[46487]=0;c[46488]=2147483647;d=c[a+16>>2]|0;c[46489]=c[d+284>>2];c[46490]=c[d+288>>2];if(b)PH(a);else OH(a);return c[46487]|0}function GH(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;n=o;g=c[b>>2]&3;m=b+-48|0;j=b+48|0;k=b+16|0;g=(c[(c[(c[((g|0)==2?b:m)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[(c[(c[((g|0)==3?b:j)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(e[(c[k>>2]|0)+170>>1]|0)|0;do if((g|0)>0){d=c[a>>2]&3;h=c[((d|0)==3?a:a+48|0)+40>>2]|0;i=c[h+16>>2]|0;if(((c[i+276>>2]|0)+(c[i+268>>2]|0)|0)==1){KH(h,g);break}d=c[((d|0)==2?a:a+-48|0)+40>>2]|0;f=c[d+16>>2]|0;if(((c[f+276>>2]|0)+(c[f+268>>2]|0)|0)==1){KH(d,0-g|0);break}if((c[i+288>>2]|0)<(c[f+288>>2]|0)){KH(h,g);break}else{KH(d,0-g|0);break}}while(0);d=a+16|0;f=c[(c[d>>2]|0)+160>>2]|0;g=c[b>>2]&3;g=LH(c[((g|0)==3?b:j)+40>>2]|0,c[((g|0)==2?b:m)+40>>2]|0,f,1)|0;i=c[b>>2]&3;if((LH(c[((i|0)==2?b:m)+40>>2]|0,c[((i|0)==3?b:j)+40>>2]|0,f,0)|0)==(g|0)){c[(c[k>>2]|0)+160>>2]=0-f;c[(c[d>>2]|0)+160>>2]=0;MH(a,b);n=c[g+16>>2]|0;NH(g,c[n+280>>2]|0,c[n+284>>2]|0)|0;l=o;return}else{Pw(1,99236,n)|0;bb(185768,1)}}function HH(){var b=0,d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;JH();m=uH((c[46483]<<2)+4|0)|0;d=c[46483]|0;b=0;while(1){if((b|0)>(d|0))break;c[m+(b<<2)>>2]=0;b=b+1|0}b=(c[(c[46484]|0)+16>>2]|0)+192|0;d=b;while(1){d=c[d>>2]|0;if(!d)break;d=c[d+16>>2]|0;if(!(a[d+156>>0]|0)){l=m+(c[d+232>>2]<<2)|0;c[l>>2]=(c[l>>2]|0)+1}d=d+164|0}while(1){b=c[b>>2]|0;if(!b)break;l=b+16|0;b=c[l>>2]|0;if(!(a[b+156>>0]|0)){h=c[46483]|0;f=c[b+172>>2]|0;k=0;j=0;d=0;while(1){g=c[f+(d<<2)>>2]|0;if(!g)break;n=c[g+16>>2]|0;i=(c[(c[(c[((c[g>>2]&3|0)==3?g:g+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)+(e[n+170>>1]|0)|0;k=(c[n+156>>2]|0)+k|0;j=(j|0)>(i|0)?j:i;d=d+1|0}g=c[b+180>>2]|0;i=0;d=0;while(1){f=c[g+(d<<2)>>2]|0;if(!f)break;o=c[f+16>>2]|0;n=(c[(c[(c[((c[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(e[o+170>>1]|0)|0;i=(c[o+156>>2]|0)+i|0;h=(h|0)<(n|0)?h:n;d=d+1|0}d=(j|0)>0?j:0;if((k|0)==(i|0)){g=d;f=d;while(1){d=f+1|0;if((f|0)>=(h|0))break;g=(c[m+(d<<2)>>2]|0)<(c[m+(g<<2)>>2]|0)?d:g;f=d}o=b+232|0;n=m+(c[o>>2]<<2)|0;c[n>>2]=(c[n>>2]|0)+-1;n=m+(g<<2)|0;c[n>>2]=(c[n>>2]|0)+1;c[o>>2]=g}d=c[b+264>>2]|0;if(d){D_(d);b=c[l>>2]|0}d=c[b+272>>2]|0;if(d){D_(d);b=c[l>>2]|0}a[b+157>>0]=0}b=b+164|0}D_(m);return}function IH(){var a=0,b=0,d=0,f=0,g=0,h=0;b=0;while(1){if((b|0)>=(c[46485]|0))break;a=c[(c[46486]|0)+(b<<2)>>2]|0;do if(((c[(c[a+16>>2]|0)+160>>2]|0)==0?(d=FH(a)|0,d|0):0)?(f=c[d>>2]&3,f=(c[(c[(c[((f|0)==2?d:d+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[(c[(c[((f|0)==3?d:d+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(e[(c[d+16>>2]|0)+170>>1]|0)|0,(f|0)>=2):0){h=c[a>>2]&3;g=c[((h|0)==3?a:a+48|0)+40>>2]|0;a=c[((h|0)==2?a:a+-48|0)+40>>2]|0;if((c[(c[g+16>>2]|0)+288>>2]|0)<(c[(c[a+16>>2]|0)+288>>2]|0)){KH(g,f>>>1);break}else{KH(a,(f|0)/-2|0);break}}while(0);b=b+1|0}CH();return}function JH(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=0;c[h>>2]=2147483647;c[46483]=-2147483647;b=(c[(c[46484]|0)+16>>2]|0)+192|0;e=b;g=2147483647;f=-2147483647;while(1){d=c[e>>2]|0;if(!d)break;e=c[d+16>>2]|0;if(!(a[e+156>>0]|0)){j=c[e+232>>2]|0;d=(g|0)<(j|0)?g:j;c[h>>2]=d;f=(f|0)>(j|0)?f:j;c[46483]=f}else d=g;e=e+164|0;g=d}if(g|0){while(1){b=c[b>>2]|0;if(!b)break;b=c[b+16>>2]|0;j=b+232|0;c[j>>2]=(c[j>>2]|0)-g;b=b+164|0}c[46483]=f-g;c[h>>2]=0}l=i;return}function KH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+16|0;a=c[f>>2]|0;e=a+232|0;c[e>>2]=(c[e>>2]|0)-b;e=0;while(1){d=c[(c[a+272>>2]|0)+(e<<2)>>2]|0;if(!d){e=0;break}if((d|0)!=(c[a+280>>2]|0)){KH(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0,b);a=c[f>>2]|0}e=e+1|0}while(1){d=c[(c[a+264>>2]|0)+(e<<2)>>2]|0;if(!d)break;if((d|0)!=(c[a+280>>2]|0)){KH(c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0,b);a=c[f>>2]|0}e=e+1|0}return}function LH(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;g=(e|0)==0&1;h=0-d|0;f=c[(c[b+16>>2]|0)+288>>2]|0;b=a;while(1){a=c[b+16>>2]|0;if((c[a+284>>2]|0)<=(f|0)?(f|0)<=(c[a+288>>2]|0):0)break;a=c[a+280>>2]|0;i=a+48|0;j=(c[a+16>>2]|0)+160|0;c[j>>2]=(((b|0)==(c[((c[a>>2]&3|0)==3?a:i)+40>>2]|0)?e:g)|0?d:h)+(c[j>>2]|0);j=c[a>>2]&3;i=c[((j|0)==3?a:i)+40>>2]|0;a=c[((j|0)==2?a:a+-48|0)+40>>2]|0;b=(c[(c[i+16>>2]|0)+288>>2]|0)>(c[(c[a+16>>2]|0)+288>>2]|0)?i:a}return b|0}function MH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=a+16|0;e=(c[i>>2]|0)+164|0;c[(c[b+16>>2]|0)+164>>2]=c[e>>2];c[(c[46486]|0)+(c[e>>2]<<2)>>2]=b;c[(c[i>>2]|0)+164>>2]=-1;i=(c[((c[a>>2]&3|0)==3?a:a+48|0)+40>>2]|0)+16|0;e=c[i>>2]|0;g=e+276|0;f=c[g>>2]|0;j=f+-1|0;c[g>>2]=j;g=e+272|0;h=0;while(1){if((h|0)>=(f|0)){k=3;break}d=c[g>>2]|0;if((c[d+(h<<2)>>2]|0)==(a|0))break;h=h+1|0}if((k|0)==3)d=c[e+272>>2]|0;c[d+(h<<2)>>2]=c[d+(j<<2)>>2];c[(c[(c[i>>2]|0)+272>>2]|0)+(j<<2)>>2]=0;i=(c[((c[a>>2]&3|0)==2?a:a+-48|0)+40>>2]|0)+16|0;e=c[i>>2]|0;g=e+268|0;f=c[g>>2]|0;j=f+-1|0;c[g>>2]=j;g=e+264|0;h=0;while(1){if((h|0)>=(f|0)){k=8;break}d=c[g>>2]|0;if((c[d+(h<<2)>>2]|0)==(a|0))break;h=h+1|0}if((k|0)==8)d=c[e+264>>2]|0;c[d+(h<<2)>>2]=c[d+(j<<2)>>2];c[(c[(c[i>>2]|0)+264>>2]|0)+(j<<2)>>2]=0;k=(c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)+16|0;a=c[k>>2]|0;j=c[a+272>>2]|0;a=a+276|0;i=c[a>>2]|0;c[a>>2]=i+1;c[j+(i<<2)>>2]=b;k=c[k>>2]|0;c[(c[k+272>>2]|0)+(c[k+276>>2]<<2)>>2]=0;k=(c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)+16|0;i=c[k>>2]|0;j=c[i+264>>2]|0;i=i+268|0;a=c[i>>2]|0;c[i>>2]=a+1;c[j+(a<<2)>>2]=b;k=c[k>>2]|0;c[(c[k+264>>2]|0)+(c[k+268>>2]<<2)>>2]=0;return}function NH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+16|0;a=c[g>>2]|0;c[a+280>>2]=b;c[a+284>>2]=d;f=0;while(1){e=c[(c[a+272>>2]|0)+(f<<2)>>2]|0;if(!e){f=0;break}if((e|0)!=(b|0)){d=NH(c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,e,d)|0;a=c[g>>2]|0}f=f+1|0}while(1){e=c[(c[a+264>>2]|0)+(f<<2)>>2]|0;if(!e)break;if((e|0)!=(b|0)){d=NH(c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0,e,d)|0;a=c[g>>2]|0}f=f+1|0}c[a+288>>2]=d;return d+1|0}function OH(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,i=0,j=0;i=a+16|0;g=0;while(1){a=c[i>>2]|0;d=c[(c[a+180>>2]|0)+(g<<2)>>2]|0;if(!d){d=0;break}f=c[d+16>>2]|0;if((c[f+164>>2]|0)<0){a=c[d>>2]&3;b=c[(c[((a|0)==2?d:d+-48|0)+40>>2]|0)+16>>2]|0;j=c[b+288>>2]|0;if((c[46489]|0)>(j|0)|(j|0)>(c[46490]|0)?(h=(c[b+232>>2]|0)-(c[(c[(c[((a|0)==3?d:d+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(e[f+170>>1]|0)|0,(h|0)<(c[46488]|0)|(c[46487]|0)==0):0){c[46487]=d;c[46488]=h}}else{b=c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0;if((c[(c[b+16>>2]|0)+288>>2]|0)<(c[a+288>>2]|0))OH(b)}g=g+1|0}while(1){b=c[(c[a+264>>2]|0)+(d<<2)>>2]|0;if(!((b|0)!=0&(c[46488]|0)>0))break;b=c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0;if((c[(c[b+16>>2]|0)+288>>2]|0)<(c[a+288>>2]|0)){OH(b);a=c[i>>2]|0}d=d+1|0}return}function PH(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,i=0,j=0;i=a+16|0;g=0;while(1){a=c[i>>2]|0;d=c[(c[a+172>>2]|0)+(g<<2)>>2]|0;if(!d){d=0;break}f=c[d+16>>2]|0;if((c[f+164>>2]|0)<0){a=c[d>>2]&3;b=c[(c[((a|0)==3?d:d+48|0)+40>>2]|0)+16>>2]|0;j=c[b+288>>2]|0;if((c[46489]|0)>(j|0)|(j|0)>(c[46490]|0)?(h=(c[(c[(c[((a|0)==2?d:d+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[b+232>>2]|0)-(e[f+170>>1]|0)|0,(h|0)<(c[46488]|0)|(c[46487]|0)==0):0){c[46487]=d;c[46488]=h}}else{b=c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0;if((c[(c[b+16>>2]|0)+288>>2]|0)<(c[a+288>>2]|0))PH(b)}g=g+1|0}while(1){b=c[(c[a+272>>2]|0)+(d<<2)>>2]|0;if(!((b|0)!=0&(c[46488]|0)>0))break;b=c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0;if((c[(c[b+16>>2]|0)+288>>2]|0)<(c[a+288>>2]|0)){PH(b);a=c[i>>2]|0}d=d+1|0}return}function QH(a){a=a|0;var b=0;b=uH(16)|0;c[b>>2]=a;c[b+4>>2]=eI(a,b)|0;c[b+12>>2]=b;return b|0}function RH(a,b){a=a|0;b=b|0;var d=0,e=0;e=uH(8)|0;c[e>>2]=a;c[e+4>>2]=b;d=0;while(1){if((d|0)>=(b|0))break;c[(c[a+(d<<2)>>2]|0)+8>>2]=d;d=d+1|0}d=(b|0)/2|0;while(1){if((d|0)<=-1)break;WH(e,d);d=d+-1|0}return e|0}function SH(a){a=a|0;return c[a+4>>2]|0}function TH(a){a=a|0;var b=0,d=0,e=0,f=0;f=c[a>>2]|0;b=c[f>>2]|0;c[b+8>>2]=-1;d=a+4|0;e=(c[d>>2]|0)+-1|0;c[f>>2]=c[f+(e<<2)>>2];f=c[a>>2]|0;c[(c[f>>2]|0)+8>>2]=0;c[f+(e<<2)>>2]=b;c[d>>2]=e;WH(a,0);return b|0}function UH(a){a=a|0;return dI(c[a>>2]|0,0,0)|0}function VH(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,i=0;b=a+16|0;if((c[(c[b>>2]|0)+164>>2]|0)>-1)qa(99324,99305,463,99338);g=a+48|0;d=$H(c[((c[a>>2]&3|0)==3?a:g)+40>>2]|0)|0;i=a+-48|0;f=$H(c[((c[a>>2]&3|0)==2?a:i)+40>>2]|0)|0;h=c[a>>2]&3;b=(c[(c[(c[((h|0)==2?a:i)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[(c[(c[((h|0)==3?a:g)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(e[(c[b>>2]|0)+170>>1]|0)|0;if((c[d+8>>2]|0)==-1)aI(c[d>>2]|0,0,b);else aI(c[f>>2]|0,0,0-b|0);bI(a);return cI(d,f)|0}function WH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=c[a>>2]|0;g=c[a+4>>2]|0;while(1){a=b<<1;f=a+2|0;a=a|1;if(!((a|0)<(g|0)?(c[(c[h+(a<<2)>>2]|0)+4>>2]|0)<(c[(c[h+(b<<2)>>2]|0)+4>>2]|0):0))a=b;if((f|0)>=(g|0))break;d=h+(f<<2)|0;e=c[d>>2]|0;if((f|0)==(b|0)?1:(c[e+4>>2]|0)>=(c[(c[h+(a<<2)>>2]|0)+4>>2]|0))break;i=h+(b<<2)|0;a=c[i>>2]|0;c[i>>2]=e;c[d>>2]=a;c[(c[i>>2]|0)+8>>2]=b;c[a+8>>2]=f;b=f}return}function XH(){NH(c[(c[(c[46484]|0)+16>>2]|0)+192>>2]|0,0,1)|0;YH(c[(c[(c[46484]|0)+16>>2]|0)+192>>2]|0,0);return}function YH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+16|0;d=0;while(1){a=c[f>>2]|0;e=c[(c[a+272>>2]|0)+(d<<2)>>2]|0;if(!e){e=0;break}if((e|0)!=(b|0))YH(c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,e);d=d+1|0}while(1){d=c[(c[a+264>>2]|0)+(e<<2)>>2]|0;if(!d)break;if((d|0)!=(b|0)){YH(c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0,d);a=c[f>>2]|0}e=e+1|0}if(b|0)ZH(b);return}function ZH(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;b=c[a>>2]&3;d=c[((b|0)==3?a:a+48|0)+40>>2]|0;e=c[d+16>>2]|0;if((c[e+280>>2]|0)==(a|0))i=1;else{e=c[((b|0)==2?a:a+-48|0)+40>>2]|0;i=-1;d=e;e=c[e+16>>2]|0}g=c[e+180>>2]|0;b=0;f=0;while(1){h=c[g+(f<<2)>>2]|0;if(!h)break;b=(_H(h,d,i)|0)+b|0;f=f+1|0}g=c[e+172>>2]|0;e=0;while(1){f=c[g+(e<<2)>>2]|0;if(!f)break;b=(_H(f,d,i)|0)+b|0;e=e+1|0}c[(c[a+16>>2]|0)+160>>2]=b;return}function _H(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=c[a>>2]&3;i=(h|0)==3?a:a+48|0;e=c[i+40>>2]|0;if((e|0)==(b|0))e=c[((h|0)==2?a:a+-48|0)+40>>2]|0;g=c[b+16>>2]|0;f=c[(c[e+16>>2]|0)+288>>2]|0;if((c[g+284>>2]|0)<=(f|0)?(f|0)<=(c[g+288>>2]|0):0){f=c[a+16>>2]|0;if((c[f+164>>2]|0)>-1)e=c[f+160>>2]|0;else e=0;g=1;e=e-(c[f+156>>2]|0)|0}else{g=0;e=c[(c[a+16>>2]|0)+156>>2]|0}i=(c[((d|0)>0?((h|0)==2?a:a+-48|0):i)+40>>2]|0)==(b|0)?1:-1;return (((g?i:0-i|0)|0)<0?0-e|0:e)|0}function $H(a){a=a|0;var b=0,d=0;a=c[(c[a+16>>2]|0)+280>>2]|0;while(1){b=a+12|0;d=c[b>>2]|0;if(!((d|0)!=(a|0)&(d|0)!=0))break;a=c[d+12>>2]|0;if(!a){a=d;continue}c[b>>2]=a}return a|0}function aI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=a+16|0;e=c[h>>2]|0;g=e+232|0;c[g>>2]=(c[g>>2]|0)+d;g=0;while(1){f=c[(c[e+264>>2]|0)+(g<<2)>>2]|0;if(!f){g=0;break}f=c[((c[f>>2]&3|0)==3?f:f+48|0)+40>>2]|0;if((f|0)!=(b|0)){aI(f,a,d);e=c[h>>2]|0}g=g+1|0}while(1){f=c[(c[e+272>>2]|0)+(g<<2)>>2]|0;if(!f)break;f=c[((c[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0;if((f|0)!=(b|0)){aI(f,a,d);e=c[h>>2]|0}g=g+1|0}return}function bI(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;d=(c[b+16>>2]|0)+164|0;if((c[d>>2]|0)>-1){Pw(1,99427,h)|0;bb(185768,1)}g=c[46485]|0;c[d>>2]=g;d=c[46486]|0;c[46485]=g+1;c[d+(g<<2)>>2]=b;d=c[b>>2]|0;g=b+48|0;e=c[((d&3|0)==3?b:g)+40>>2]|0;if(!(a[(c[e+16>>2]|0)+157>>0]|0)){f=c[46492]|0;d=c[46493]|0;c[46493]=d+1;c[f+(d<<2)>>2]=e;d=c[b>>2]|0}f=b+-48|0;e=c[((d&3|0)==2?b:f)+40>>2]|0;if(!(a[(c[e+16>>2]|0)+157>>0]|0)){i=c[46492]|0;d=c[46493]|0;c[46493]=d+1;c[i+(d<<2)>>2]=e;d=c[b>>2]|0}i=(c[((d&3|0)==3?b:g)+40>>2]|0)+16|0;d=c[i>>2]|0;a[d+157>>0]=1;e=c[d+272>>2]|0;d=d+276|0;g=c[d>>2]|0;c[d>>2]=g+1;c[e+(g<<2)>>2]=b;g=c[i>>2]|0;c[(c[g+272>>2]|0)+(c[g+276>>2]<<2)>>2]=0;i=c[i>>2]|0;if(!(c[(c[i+180>>2]|0)+((c[i+276>>2]|0)+-1<<2)>>2]|0)){Pw(1,99461,h+8|0)|0;bb(185768,1)}i=(c[((c[b>>2]&3|0)==2?b:f)+40>>2]|0)+16|0;e=c[i>>2]|0;a[e+157>>0]=1;f=c[e+264>>2]|0;e=e+268|0;g=c[e>>2]|0;c[e>>2]=g+1;c[f+(g<<2)>>2]=b;b=c[i>>2]|0;c[(c[b+264>>2]|0)+(c[b+268>>2]<<2)>>2]=0;i=c[i>>2]|0;if(!(c[(c[i+172>>2]|0)+((c[i+268>>2]|0)+-1<<2)>>2]|0)){Pw(1,99496,h+16|0)|0;bb(185768,1)}else{l=h;return}}function cI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;while(1){g=a+12|0;d=c[g>>2]|0;if((d|0)==0|(d|0)==(a|0))break;else a=d}while(1){f=b+12|0;d=c[f>>2]|0;if((d|0)==0|(d|0)==(b|0))break;else b=d}if((a|0)!=(b|0)){e=c[a+8>>2]|0;d=c[b+8>>2]|0;do if((e|0)>-1)if((d|0)==-1)h=a;else j=10;else if((d|0)>-1)if((e|0)==-1){h=b;break}else{j=10;break}else qa(99350,99305,327,99397);while(0);if((j|0)==10)h=(c[b+4>>2]|0)<(c[a+4>>2]|0)?a:b;c[f>>2]=h;c[g>>2]=h;c[h+4>>2]=(c[b+4>>2]|0)+(c[a+4>>2]|0);if((c[h+8>>2]|0)>-1)i=h;else qa(99408,99305,335,99397)}else i=a;return i|0}function dI(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=$H(a)|0;if(d){k=c[d>>2]&3;if(((c[(c[(c[((k|0)==2?d:d+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[(c[(c[((k|0)==3?d:d+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)|0)!=(e[(c[d+16>>2]|0)+170>>1]|0|0))f=3}else{d=0;f=3}a:do if((f|0)==3){k=a+16|0;j=0;while(1){f=c[k>>2]|0;i=c[(c[f+180>>2]|0)+(j<<2)>>2]|0;if(!i){j=0;break}f=i+16|0;g=i+-48|0;h=c[((c[i>>2]&3|0)==2?i:g)+40>>2]|0;do if((c[(c[f>>2]|0)+164>>2]|0)>-1){if((h|0)!=(b|0))d=dI(h,a,d)|0}else if(($H(h)|0)!=(l|0)){if(d|0?(m=c[i>>2]&3,h=c[d>>2]&3,((c[(c[(c[((m|0)==2?i:g)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[(c[(c[((m|0)==3?i:i+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(e[(c[f>>2]|0)+170>>1]|0)|0)>=((c[(c[(c[((h|0)==2?d:d+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[(c[(c[((h|0)==3?d:d+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(e[(c[d+16>>2]|0)+170>>1]|0)|0)):0)break;d=i}while(0);j=j+1|0}while(1){f=c[(c[f+172>>2]|0)+(j<<2)>>2]|0;if(!f)break a;g=f+16|0;h=f+48|0;i=c[((c[f>>2]&3|0)==3?f:h)+40>>2]|0;do if((c[(c[g>>2]|0)+164>>2]|0)>-1){if((i|0)!=(b|0))d=dI(i,a,d)|0}else if(($H(i)|0)!=(l|0)){if(d|0?(i=c[f>>2]&3,m=c[d>>2]&3,((c[(c[(c[((i|0)==2?f:f+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[(c[(c[((i|0)==3?f:h)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(e[(c[g>>2]|0)+170>>1]|0)|0)>=((c[(c[(c[((m|0)==2?d:d+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[(c[(c[((m|0)==3?d:d+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(e[(c[d+16>>2]|0)+170>>1]|0)|0)):0)break;d=f}while(0);j=j+1|0;f=c[k>>2]|0}}while(0);return d|0}function eI(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;d=c[l>>2]|0;c[d+280>>2]=b;a=1;h=0;while(1){g=c[(c[d+172>>2]|0)+(h<<2)>>2]|0;if(!g){h=0;break}f=c[g+16>>2]|0;if(((c[f+164>>2]|0)<=-1?(i=c[g>>2]&3,j=g+48|0,k=c[(c[((i|0)==3?g:j)+40>>2]|0)+16>>2]|0,(c[k+280>>2]|0)==0):0)?((c[(c[(c[((i|0)==2?g:g+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[k+232>>2]|0)|0)==(e[f+170>>1]|0|0):0){bI(g);a=(eI(c[((c[g>>2]&3|0)==3?g:j)+40>>2]|0,b)|0)+a|0;d=c[l>>2]|0}h=h+1|0}while(1){f=c[(c[d+180>>2]|0)+(h<<2)>>2]|0;if(!f)break;g=c[f+16>>2]|0;if(((c[g+164>>2]|0)<=-1?(m=c[f>>2]&3,n=f+-48|0,o=c[(c[((m|0)==2?f:n)+40>>2]|0)+16>>2]|0,(c[o+280>>2]|0)==0):0)?((c[o+232>>2]|0)-(c[(c[(c[((m|0)==3?f:f+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)|0)==(e[g+170>>1]|0|0):0){bI(f);a=(eI(c[((c[f>>2]&3|0)==2?f:n)+40>>2]|0,b)|0)+a|0;d=c[l>>2]|0}h=h+1|0}return a|0}function fI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xx(a,99560)|0;if(!d)d=30;else d=a2(d)|0;return yH(a,b,c,d)|0}function gI(a){a=+a;return +((c[46369]|0)==0?a:+h[22916]-a)}function hI(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0;r=l;l=l+16|0;q=r;c[46494]=c[(c[(c[d+64>>2]|0)+8>>2]|0)+4>>2];iI(d);i=c[d+16>>2]|0;t=+h[i+32>>3];s=+h[i+40>>3];jI(e,99571,+h[b+352>>3]);jI(e,99578,t*.013888888888888888);jI(e,99578,s*.013888888888888888);kI(e);i=Sy(d)|0;while(1){if(!i)break;g=i+16|0;if(!(a[(c[g>>2]|0)+118>>0]|0)){lI(e,99580,JA(ry(i)|0)|0);p=(c[g>>2]|0)+16|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];mI(e,q);if(!(a[(c[(c[g>>2]|0)+104>>2]|0)+82>>0]|0)){b=ez(i)|0;b=nI(b,c[c[(c[g>>2]|0)+104>>2]>>2]|0)|0}else b=JA(yx(i,c[46384]|0)|0)|0;jI(e,99578,+h[(c[g>>2]|0)+32>>3]);jI(e,99578,+h[(c[g>>2]|0)+40>>3]);lI(e,99578,b);lI(e,99578,OL(i,c[46387]|0,108041)|0);lI(e,99578,c[c[(c[g>>2]|0)+8>>2]>>2]|0);lI(e,99578,OL(i,c[46378]|0,134232)|0);b=OL(i,c[46379]|0,191979)|0;if(!(a[b>>0]|0))b=OL(i,c[46378]|0,131718)|0;lI(e,99578,b);kI(e)}i=Ty(d,i)|0}o=f<<24>>24==0;n=Sy(d)|0;while(1){if(!n)break;m=Ex(d,n)|0;while(1){if(!m)break;if(o){f=191979;j=191979}else{j=xx(m,108373)|0;f=xx(m,108382)|0;f=f|0?f:191979;j=j|0?j:191979}p=m+16|0;b=c[p>>2]|0;k=c[b+8>>2]|0;a:do if(k){i=c[k+4>>2]|0;b=0;g=0;while(1){if((b|0)>=(i|0))break;u=(c[(c[k>>2]|0)+(b*48|0)+4>>2]|0)+g|0;b=b+1|0;g=u}lI(e,0,108368);oI(e,c[((c[m>>2]&3|0)==3?m:m+48|0)+40>>2]|0,j);oI(e,c[((c[m>>2]&3|0)==2?m:m+-48|0)+40>>2]|0,f);pI(e,g);f=0;while(1){b=c[p>>2]|0;g=c[b+8>>2]|0;if((f|0)>=(c[g+4>>2]|0))break a;i=c[g>>2]|0;g=c[i+(f*48|0)>>2]|0;i=c[i+(f*48|0)+4>>2]|0;b=0;while(1){if((b|0)>=(i|0))break;u=g+(b<<4)|0;c[q>>2]=c[u>>2];c[q+4>>2]=c[u+4>>2];c[q+8>>2]=c[u+8>>2];c[q+12>>2]=c[u+12>>2];mI(e,q);b=b+1|0}f=f+1|0}}while(0);if(c[b+96>>2]|0){u=ez(c[((c[m>>2]&3|0)==3?m:m+48|0)+40>>2]|0)|0;lI(e,99578,nI(u,c[c[(c[p>>2]|0)+96>>2]>>2]|0)|0);u=(c[(c[p>>2]|0)+96>>2]|0)+56|0;c[q>>2]=c[u>>2];c[q+4>>2]=c[u+4>>2];c[q+8>>2]=c[u+8>>2];c[q+12>>2]=c[u+12>>2];mI(e,q)}lI(e,99578,OL(m,c[46415]|0,108041)|0);lI(e,99578,OL(m,c[46406]|0,134232)|0);kI(e);m=Gx(d,m)|0}n=Ty(d,n)|0}qI(99586,e);l=r;return}function iI(a){a=a|0;var b=0.0;if(c[46369]|0){a=c[a+16>>2]|0;b=+h[a+24>>3]+ +h[a+40>>3];h[22916]=b;h[22917]=b*.013888888888888888}return}function jI(a,b,c){a=a|0;b=b|0;c=+c;var d=0,e=0,f=0;f=l;l=l+1040|0;e=f;d=f+8|0;if(b|0)qI(b,a);h[e>>3]=c;Y0(d,99592,e)|0;qI(d,a);l=f;return}function kI(b){b=b|0;a[191875]=10;lb[c[46494]&127](b,191875)|0;return}function lI(a,b,c){a=a|0;b=b|0;c=c|0;if(b|0)qI(b,a);qI(c,a);return}function mI(a,b){a=a|0;b=b|0;var d=0.0;jI(a,99578,+h[b>>3]*.013888888888888888);if(!(c[46369]|0))d=+h[b+8>>3];else d=+h[22916]-+h[b+8>>3];jI(a,99578,d*.013888888888888888);return}function nI(a,b){a=a|0;b=b|0;var c=0;c=Oz(a,b)|0;b=JA(c)|0;Qz(a,c)|0;return b|0}function oI(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if(!(a[(c[d+16>>2]|0)+118>>0]|0))d=JA(ry(d)|0)|0;else{f=ez(d)|0;d=nI(f,(A$(ry(d)|0,58)|0)+1|0)|0}lI(b,99578,d);if(e|0?a[e>>0]|0:0)lI(b,104958,JA(e)|0);return}function pI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+1040|0;f=d;e=d+8|0;qI(99578,a);c[f>>2]=b;Y0(e,134313,f)|0;qI(e,a);l=d;return}function qI(a,b){a=a|0;b=b|0;lb[c[46494]&127](b,a)|0;return}function rI(d,f,g){d=d|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0.0,n=0,o=0.0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0;Y=l;l=l+2288|0;W=Y+208|0;V=Y+192|0;U=Y+176|0;T=Y+160|0;S=Y+144|0;R=Y+128|0;P=Y+112|0;O=Y+96|0;N=Y+80|0;M=Y+64|0;L=Y+56|0;K=Y+48|0;X=Y+32|0;Q=Y+24|0;J=Y;G=Y+1264|0;H=Y+224|0;I=d+16|0;C=(e[(c[I>>2]|0)+178>>1]|0)>2;CG(1);iI(d);Tw(H,1024,Y+240|0);LM(d,1,99597,191979)|0;LM(d,1,99601,191979)|0;c[46376]=LM(d,1,138034,191979)|0;c[46375]=LM(d,1,137966,191979)|0;LM(d,2,99597,191979)|0;i=a[(c[I>>2]|0)+113>>0]|0;if(i&16){LM(d,1,99607,191979)|0;i=a[(c[I>>2]|0)+113>>0]|0}if(i&1){LM(d,2,99611,191979)|0;i=a[(c[I>>2]|0)+113>>0]|0}if(i&32){LM(d,2,99607,191979)|0;i=a[(c[I>>2]|0)+113>>0]|0}if(i&2){LM(d,2,99614,191979)|0;i=a[(c[I>>2]|0)+113>>0]|0}if(i&4){LM(d,2,99622,191979)|0;i=a[(c[I>>2]|0)+113>>0]|0}if(!(i&8)){v=0;w=0;x=0}else{x=LM(d,0,99611,191979)|0;w=LM(d,0,99630,191979)|0;v=LM(d,0,99637,191979)|0}z=LM(d,0,99645,191979)|0;A=H+4|0;B=H+8|0;u=0;i=0;y=Sy(d)|0;while(1){if(!y)break;t=y+16|0;k=c[t>>2]|0;o=+h[k+16>>3];j=(c[46369]|0)==0;if(C){if(j)m=+h[k+24>>3];else m=+h[22916]-+h[k+24>>3];q=+h[(c[k+132>>2]|0)+16>>3]*72.0;h[J>>3]=o;h[J+8>>3]=m;h[J+16>>3]=q;Y0(G,99648,J)|0;Ww(H,G)|0;j=3;while(1){if((j|0)>=(e[(c[I>>2]|0)+178>>1]|0))break;h[Q>>3]=+h[(c[(c[t>>2]|0)+132>>2]|0)+(j<<3)>>3]*72.0;Y0(G,99663,Q)|0;Ww(H,G)|0;j=j+1|0}j=c[A>>2]|0;if(j>>>0>=(c[B>>2]|0)>>>0){Uw(H,1)|0;j=c[A>>2]|0}a[j>>0]=0;s=c[H>>2]|0;c[A>>2]=s;zx(y,99597,s)|0;s=y}else{if(j)m=+h[k+24>>3];else m=+h[22916]-+h[k+24>>3];h[X>>3]=o;h[X+8>>3]=m;Y0(G,99669,X)|0;zx(y,99597,G)|0;s=y}h[K>>3]=+h[(c[t>>2]|0)+80>>3]*.013888888888888888;Y0(G,99592,K)|0;rx(s,c[46375]|0,G)|0;j=c[t>>2]|0;h[L>>3]=(+h[j+96>>3]+ +h[j+88>>3])*.013888888888888888;Y0(G,99592,L)|0;rx(s,c[46376]|0,G)|0;j=c[t>>2]|0;k=c[j+108>>2]|0;if((k|0)!=0?(a[k+81>>0]|0)!=0:0){q=+h[k+64>>3];q=(c[46369]|0)==0?q:+h[22916]-q;h[M>>3]=+h[k+56>>3];h[M+8>>3]=q;Y0(G,99669,M)|0;zx(s,99607,G)|0;j=c[t>>2]|0}if(b$(c[c[j+8>>2]>>2]|0,103194)|0){if(c[46400]|0?(UJ(y)|0)<<24>>24:0){k=c[(c[t>>2]|0)+12>>2]|0;r=k+8|0;j=c[r>>2]|0;if((j|0)<3){j=xx(s,99679)|0;if(!j)j=8;else j=a2(j)|0;j=(j|0)<3?8:j}p=k+44|0;q=1.0/+(j|0);n=0;while(1){if((n|0)>=(j|0))break;if((n|0)>0){k=c[A>>2]|0;if(k>>>0>=(c[B>>2]|0)>>>0){Uw(H,1)|0;k=c[A>>2]|0}c[A>>2]=k+1;a[k>>0]=32}if((c[r>>2]|0)>2){k=c[p>>2]|0;if(!(c[46369]|0))m=+h[k+(n<<4)+8>>3]*.013888888888888888;else m=+h[22917]-+h[k+(n<<4)+8>>3]*.013888888888888888;h[N>>3]=+h[k+(n<<4)>>3]*.013888888888888888;h[N+8>>3]=m;Y0(G,99692,N)|0}else{k=c[t>>2]|0;m=q*+(n|0)*6.283185307179586;o=+h[k+32>>3]*.5*+E(+m);if(!(c[46369]|0))m=+h[k+40>>3]*.5*+F(+m);else m=+h[22917]-+h[k+40>>3]*.5*+F(+m);h[O>>3]=o;h[O+8>>3]=m;Y0(G,99692,O)|0}Ww(H,G)|0;n=n+1|0}k=c[46400]|0;j=c[A>>2]|0;if(j>>>0>=(c[B>>2]|0)>>>0){Uw(H,1)|0;j=c[A>>2]|0}a[j>>0]=0;t=c[H>>2]|0;c[A>>2]=t;rx(s,k,t)|0}}else{sI(y,c[j+12>>2]|0,H);Yw(H)|0;j=c[A>>2]|0;if(j>>>0>=(c[B>>2]|0)>>>0){Uw(H,1)|0;j=c[A>>2]|0}a[j>>0]=0;t=c[H>>2]|0;c[A>>2]=t;zx(s,99601,t)|0}a:do if((c[46367]|0)>0){t=Ex(d,y)|0;j=u;while(1){if(!t)break a;s=t+16|0;k=c[s>>2]|0;do if((a[k+112>>0]|0)!=6?(D=c[k+8>>2]|0,(D|0)!=0):0){r=0;k=D;while(1){if((r|0)>=(c[k+4>>2]|0))break;if((r|0)>0){k=c[A>>2]|0;if(k>>>0>=(c[B>>2]|0)>>>0){Uw(H,1)|0;k=c[A>>2]|0}c[A>>2]=k+1;a[k>>0]=59;k=c[(c[s>>2]|0)+8>>2]|0}k=c[k>>2]|0;if(c[k+(r*48|0)+8>>2]|0){if(!(c[46369]|0))m=+h[k+(r*48|0)+24>>3];else m=+h[22916]-+h[k+(r*48|0)+24>>3];h[P>>3]=+h[k+(r*48|0)+16>>3];h[P+8>>3]=m;Y0(G,99702,P)|0;Ww(H,G)|0;i=1;k=c[c[(c[s>>2]|0)+8>>2]>>2]|0}if(c[k+(r*48|0)+12>>2]|0){if(!(c[46369]|0))m=+h[k+(r*48|0)+40>>3];else m=+h[22916]-+h[k+(r*48|0)+40>>3];h[R>>3]=+h[k+(r*48|0)+32>>3];h[R+8>>3]=m;Y0(G,99715,R)|0;Ww(H,G)|0;j=1}p=0;while(1){k=c[(c[s>>2]|0)+8>>2]|0;n=c[k>>2]|0;if((p|0)>=(c[n+(r*48|0)+4>>2]|0))break;if((p|0)>0){k=c[A>>2]|0;if(k>>>0>=(c[B>>2]|0)>>>0){Uw(H,1)|0;k=c[A>>2]|0}c[A>>2]=k+1;a[k>>0]=32;k=c[c[(c[s>>2]|0)+8>>2]>>2]|0}else k=n;u=c[k+(r*48|0)>>2]|0;q=+h[u+(p<<4)+8>>3];q=(c[46369]|0)==0?q:+h[22916]-q;h[S>>3]=+h[u+(p<<4)>>3];h[S+8>>3]=q;Y0(G,99669,S)|0;Ww(H,G)|0;p=p+1|0}r=r+1|0}k=c[A>>2]|0;if(k>>>0>=(c[B>>2]|0)>>>0){Uw(H,1)|0;k=c[A>>2]|0}a[k>>0]=0;k=c[H>>2]|0;c[A>>2]=k;zx(t,99597,k)|0;k=c[s>>2]|0;n=c[k+96>>2]|0;if(n){q=+h[n+64>>3];q=(c[46369]|0)==0?q:+h[22916]-q;h[T>>3]=+h[n+56>>3];h[T+8>>3]=q;Y0(G,99669,T)|0;zx(t,99611,G)|0;k=c[s>>2]|0}n=c[k+108>>2]|0;do if(n){if(!(a[n+81>>0]|0))break;q=+h[n+64>>3];q=(c[46369]|0)==0?q:+h[22916]-q;h[U>>3]=+h[n+56>>3];h[U+8>>3]=q;Y0(G,99669,U)|0;zx(t,99607,G)|0;k=c[s>>2]|0}while(0);n=c[k+100>>2]|0;if(n){q=+h[n+64>>3];q=(c[46369]|0)==0?q:+h[22916]-q;h[V>>3]=+h[n+56>>3];h[V+8>>3]=q;Y0(G,99669,V)|0;zx(t,99614,G)|0;k=c[s>>2]|0}k=c[k+104>>2]|0;if(!k)break;q=+h[k+64>>3];q=(c[46369]|0)==0?q:+h[22916]-q;h[W>>3]=+h[k+56>>3];h[W+8>>3]=q;Y0(G,99669,W)|0;zx(t,99622,G)|0}while(0);t=Gx(d,t)|0}}else j=u;while(0);u=j;y=Ty(d,y)|0}tI(d,z,x,w,v);Xw(H);if(b[(c[I>>2]|0)+136>>1]&1)FM(d);c[f>>2]=i;c[g>>2]=u;CG(0);l=Y;return}function sI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+1056|0;k=n;j=n+32|0;m=b+48|0;if(!(c[m>>2]|0)){e=c[a+16>>2]|0;i=+h[e+16>>3];if(!(c[46369]|0)){g=+h[e+24>>3];f=g+ +h[b+24>>3];g=g+ +h[b+40>>3]}else{g=+h[e+24>>3];f=+h[22916]-+h[b+24>>3]-g;g=+h[22916]-+h[b+40>>3]-g}o=i+ +h[b+32>>3];h[k>>3]=i+ +h[b+16>>3];h[k+8>>3]=f;h[k+16>>3]=o;h[k+24>>3]=g;Y0(j,99753,k)|0;Ww(d,j)|0}b=b+56|0;e=0;while(1){if((e|0)>=(c[m>>2]|0))break;sI(a,c[(c[b>>2]|0)+(e<<2)>>2]|0,d);e=e+1|0}l=n;return}function tI(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0;s=l;l=l+1088|0;o=s+56|0;q=s+48|0;p=s+32|0;j=s;n=s+64|0;r=b+16|0;i=c[r>>2]|0;if(!(c[46369]|0)){k=+h[i+24>>3];m=+h[i+40>>3]}else{m=+h[22916];k=m-+h[i+24>>3];m=m-+h[i+40>>3]}t=+h[i+32>>3];h[j>>3]=+h[i+16>>3];h[j+8>>3]=k;h[j+16>>3]=t;h[j+24>>3]=m;Y0(n,99728,j)|0;rx(b,d,n)|0;i=c[(c[r>>2]|0)+12>>2]|0;if((i|0)!=0?(a[c[i>>2]>>0]|0)!=0:0){t=+h[i+64>>3];t=(c[46369]|0)==0?t:+h[22916]-t;h[p>>3]=+h[i+56>>3];h[p+8>>3]=t;Y0(n,99669,p)|0;rx(b,e,n)|0;i=c[(c[r>>2]|0)+12>>2]|0;t=+h[i+32>>3];h[q>>3]=+h[i+24>>3]*.013888888888888888;Y0(n,99748,q)|0;rx(b,f,n)|0;h[o>>3]=t*.013888888888888888;Y0(n,99748,o)|0;rx(b,g,n)|0;i=1}else i=1;while(1){j=c[r>>2]|0;if((i|0)>(c[j+180>>2]|0))break;tI(c[(c[j+184>>2]|0)+(i<<2)>>2]|0,d,e,f,g);i=i+1|0}l=s;return}function uI(a){a=a|0;var b=0;b=l;l=l+16|0;rI(a,b,b+4|0);l=b;return}function vI(){return Cw(20636,c[4555]|0)|0}function wI(a,b,c){a=a|0;b=b|0;c=c|0;D_(b);return}function xI(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[b>>2]|0;e=c[d>>2]|0;if((a|0)<=(e|0))if((a|0)<(e|0))a=-1;else{b=c[b+4>>2]|0;d=c[d+4>>2]|0;return ((b|0)>(d|0)?1:((b|0)<(d|0))<<31>>31)|0}else a=1;return a|0}function yI(a){a=a|0;yw(a)|0;return}function zI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];b=AI(e)|0;if((nb[c[a>>2]&63](a,b,1)|0)!=(b|0))D_(b);l=d;return}function AI(a){a=a|0;var b=0,d=0,e=0;b=uH(16)|0;e=a;d=c[e+4>>2]|0;a=b+8|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;return b|0}function BI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+8|0;g=e;c[g>>2]=b;c[g+4>>2]=d;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];b=AI(f)|0;if((nb[c[a>>2]&63](a,b,1)|0)!=(b|0))D_(b);l=e;return}function CI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+16|0;e=d;g=b;f=c[g+4>>2]|0;b=e+8|0;c[b>>2]=c[g>>2];c[b+4>>2]=f;b=(nb[c[a>>2]&63](a,e,4)|0)!=0&1;l=d;return b|0}function DI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f+8>>2]=b;c[f+12>>2]=d;d=(nb[c[a>>2]&63](a,f,4)|0)!=0&1;l=e;return d|0}function EI(a){a=a|0;return Ew(a)|0}function FI(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=uH((Ew(a)|0)<<3)|0;b=d;a=Aw(a)|0;while(1){if(!a)break;g=a+8|0;f=c[g+4>>2]|0;e=b;c[e>>2]=c[g>>2];c[e+4>>2]=f;b=b+8|0;a=c[a>>2]|0}return d|0}function GI(){var a=0,b=0,d=0,e=0;a=vH(40)|0;b=a;d=20672;e=b+36|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));c[a+36>>2]=0;return Cw(a,c[4555]|0)|0}function HI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;d=d+36|0;a=c[d>>2]|0;if(!a)a=vH(20)|0;else c[d>>2]=c[a>>2];f=b+8|0;e=c[f+4>>2]|0;d=a+8|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+16>>2]=c[b+16>>2];return a|0}function II(a,b,d){a=a|0;b=b|0;d=d|0;d=d+36|0;c[b>>2]=c[d>>2];c[d>>2]=b;return}function JI(a){a=a|0;nb[c[a>>2]&63](a,0,64)|0;return}function KI(a){a=a|0;var b=0,d=0;b=c[a+4>>2]|0;yw(a)|0;a=c[b+36>>2]|0;while(1){if(!a)break;d=c[a>>2]|0;D_(a);a=d}D_(b);return}function LI(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+32|0;g=f;c[g+8>>2]=b;c[g+12>>2]=d;c[g+16>>2]=e;e=c[(nb[c[a>>2]&63](a,g,1)|0)+16>>2]|0;l=f;return e|0}function MI(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0,g=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+160|0;q=t+144|0;d=t+48|0;j=t+128|0;k=t+112|0;m=t+96|0;n=t+80|0;o=t+32|0;p=t+16|0;r=t;s=a+16|0;a=c[s>>2]|0;e=+h[a+16>>3];f=+h[a+24>>3];g=+h[a+32>>3];i=+h[a+40>>3];if((b+-1|0)>>>0<2){NI(j,e,i);c[q>>2]=c[j>>2];c[q+4>>2]=c[j+4>>2];c[q+8>>2]=c[j+8>>2];c[q+12>>2]=c[j+12>>2];OI(d,q);p=d+16|0;NI(k,g,f);c[q>>2]=c[k>>2];c[q+4>>2]=c[k+4>>2];c[q+8>>2]=c[k+8>>2];c[q+12>>2]=c[k+12>>2];OI(m,q);c[p>>2]=c[m>>2];c[p+4>>2]=c[m+4>>2];c[p+8>>2]=c[m+8>>2];c[p+12>>2]=c[m+12>>2]}else{NI(n,e,f);c[q>>2]=c[n>>2];c[q+4>>2]=c[n+4>>2];c[q+8>>2]=c[n+8>>2];c[q+12>>2]=c[n+12>>2];OI(d,q);n=d+16|0;NI(o,g,i);c[q>>2]=c[o>>2];c[q+4>>2]=c[o+4>>2];c[q+8>>2]=c[o+8>>2];c[q+12>>2]=c[o+12>>2];OI(p,q);c[n>>2]=c[p>>2];c[n+4>>2]=c[p+4>>2];c[n+8>>2]=c[p+8>>2];c[n+12>>2]=c[p+12>>2]}a=(c[s>>2]|0)+16|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];c[a+16>>2]=c[d+16>>2];c[a+20>>2]=c[d+20>>2];c[a+24>>2]=c[d+24>>2];c[a+28>>2]=c[d+28>>2];a=c[(c[s>>2]|0)+12>>2]|0;if(!a)a=1;else{a=a+56|0;c[q>>2]=c[a>>2];c[q+4>>2]=c[a+4>>2];c[q+8>>2]=c[a+8>>2];c[q+12>>2]=c[a+12>>2];OI(r,q);c[a>>2]=c[r>>2];c[a+4>>2]=c[r+4>>2];c[a+8>>2]=c[r+8>>2];c[a+12>>2]=c[r+12>>2];a=1}while(1){d=c[s>>2]|0;if((a|0)>(c[d+180>>2]|0))break;MI(c[(c[d+184>>2]|0)+(a<<2)>>2]|0,b);a=a+1|0}l=t;return}function NI(a,b,c){a=a|0;b=+b;c=+c;h[a>>3]=b;h[a+8>>3]=c;return}function OI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;g=d+16|0;e=d;f=(c[46495]|0)*90|0;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];ZG(e,g,f);c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];h[b>>3]=+h[b>>3]-+h[22918];e=b+8|0;h[e>>3]=+h[e>>3]-+h[22919];c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function PI(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0,i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+1168|0;s=w+144|0;v=w+96|0;u=w+64|0;t=w+48|0;o=w+32|0;p=w+16|0;q=w;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;r=b+16|0;m=c[(c[r>>2]|0)+116>>2]|0;c[46495]=m&3;m=m&1;a[191877]=m;if(!(m<<24>>24))RI(b);else QI(b);SI(b);m=c[r>>2]|0;e=c[m+12>>2]|0;do if(e|0?(a[e+81>>0]|0)==0:0){g=e+24|0;c[t>>2]=c[g>>2];c[t+4>>2]=c[g+4>>2];c[t+8>>2]=c[g+8>>2];c[t+12>>2]=c[g+12>>2];n=+h[t>>3]+16.0;h[t>>3]=n;g=t+8|0;f=+h[g>>3]+8.0;h[g>>3]=f;g=(a[m+275>>0]&1)!=0;if(a[191877]|0){if(g){i=m+32|0;h[i>>3]=+h[i>>3]+f}else{i=m+16|0;h[i>>3]=+h[i>>3]-f}g=m+40|0;f=+h[g>>3];i=m+24|0;j=+h[i>>3];k=f-j;if(!(n>k))break;n=(n-k)*.5;h[i>>3]=j-n;h[g>>3]=f+n;break}i=(c[46495]|0)==0;do if(g)if(i){i=m+40|0;h[i>>3]=+h[i>>3]+f;break}else{i=m+24|0;h[i>>3]=+h[i>>3]-f;break}else if(i){i=m+24|0;h[i>>3]=+h[i>>3]-f;break}else{i=m+40|0;h[i>>3]=+h[i>>3]+f;break}while(0);g=m+32|0;f=+h[g>>3];i=m+16|0;j=+h[i>>3];k=f-j;if(n>k){n=(n-k)*.5;h[i>>3]=j-n;h[g>>3]=f+n}}while(0);if(d){switch(c[46495]|0){case 0:{q=m+16|0;c[45836]=c[q>>2];c[45837]=c[q+4>>2];c[45838]=c[q+8>>2];c[45839]=c[q+12>>2];break}case 1:{NI(o,-+h[m+40>>3],+h[m+16>>3]);c[45836]=c[o>>2];c[45837]=c[o+4>>2];c[45838]=c[o+8>>2];c[45839]=c[o+12>>2];break}case 2:{NI(p,+h[m+16>>3],-+h[m+40>>3]);c[45836]=c[p>>2];c[45837]=c[p+4>>2];c[45838]=c[p+8>>2];c[45839]=c[p+12>>2];break}case 3:{NI(q,+h[m+24>>3],+h[m+16>>3]);c[45836]=c[q>>2];c[45837]=c[q+4>>2];c[45838]=c[q+8>>2];c[45839]=c[q+12>>2];break}default:{}}TI(b);e=c[(c[r>>2]|0)+12>>2]|0}if(e|0?(a[e+81>>0]|0)==0:0){c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];c[s+8>>2]=c[t+8>>2];c[s+12>>2]=c[t+12>>2];UI(b,s)}if(!0){l=w;return}if(!(a[191877]|0)){n=+h[22919];k=+h[22918];h[v>>3]=n;h[v+8>>3]=k;h[v+16>>3]=n;h[v+24>>3]=k;h[v+32>>3]=-k;h[v+40>>3]=-n;Y0(s,99989,v)|0}else{k=+h[22918];n=+h[22919];h[u>>3]=k;h[u+8>>3]=n;h[u+16>>3]=k;h[u+24>>3]=n;Y0(s,99774,u)|0}n1(s)|0;ab()}function QI(b){b=b|0;var d=0,e=0.0,f=0.0,g=0,i=0,j=0;j=b+16|0;if(((fz(b)|0)!=(b|0)?(g=c[j>>2]|0,i=c[g+12>>2]|0,(i|0)!=0):0)?(a[i+81>>0]|0)==0:0){d=a[g+275>>0]|0;if(!(d&1)){f=+h[g+16>>3]+ +h[g+96>>3]*.5;b=g+104|0}else{f=+h[g+32>>3]-+h[g+64>>3]*.5;b=g+72|0}e=+h[b>>3];b=d<<24>>24;do if(!(b&4))if(!(b&2)){e=(+h[g+40>>3]+ +h[g+24>>3])*.5;break}else{e=+h[g+40>>3]-e*.5;break}else e=+h[g+24>>3]+e*.5;while(0);h[i+56>>3]=f;h[i+64>>3]=e;a[(c[(c[j>>2]|0)+12>>2]|0)+81>>0]=1;b=1}else b=1;while(1){d=c[j>>2]|0;if((b|0)>(c[d+180>>2]|0))break;QI(c[(c[d+184>>2]|0)+(b<<2)>>2]|0);b=b+1|0}return}function RI(b){b=b|0;var d=0,e=0.0,f=0.0,g=0.0,i=0,j=0,k=0;k=b+16|0;if(((fz(b)|0)!=(b|0)?(i=c[k>>2]|0,j=c[i+12>>2]|0,(j|0)!=0):0)?(a[j+81>>0]|0)==0:0){d=a[i+275>>0]|0;if(!(d&1)){g=+h[i+24>>3]+ +h[i+56>>3]*.5;b=i+48|0}else{g=+h[i+40>>3]-+h[i+88>>3]*.5;b=i+80|0}f=+h[b>>3];b=d<<24>>24;do if(!(b&4)){e=+h[i+16>>3];if(!(b&2)){e=(+h[i+32>>3]+e)*.5;break}else{e=e+f*.5;break}}else e=+h[i+32>>3]-f*.5;while(0);h[j+56>>3]=e;h[j+64>>3]=g;a[(c[(c[k>>2]|0)+12>>2]|0)+81>>0]=1;b=1}else b=1;while(1){d=c[k>>2]|0;if((b|0)>(c[d+180>>2]|0))break;RI(c[(c[d+184>>2]|0)+(b<<2)>>2]|0);b=b+1|0}return}function SI(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;S=l;l=l+544|0;L=S+504|0;R=S+416|0;Q=S+376|0;K=S+352|0;J=S+312|0;I=S+288|0;H=S+248|0;M=S+200|0;B=S+152|0;O=S+96|0;p=S+488|0;C=S+456|0;D=S+424|0;E=S+384|0;F=S+360|0;G=S+320|0;w=S+296|0;x=S+256|0;y=S+232|0;z=S+168|0;A=S+136|0;f=S+56|0;N=S+16|0;P=S;o=e+16|0;u=c[o>>2]|0;g=b[u+136>>1]&14;u=d[u+113>>0]|0;if(!((u&54|0)==0?(u&1|0)==0|(c[46368]|0)!=0:0)){u=g<<16>>16==0;n=Sy(e)|0;h=0;j=0;i=0;while(1){if(!n)break;g=c[(c[n+16>>2]|0)+108>>2]|0;do if(g)if(!(a[g+81>>0]|0)){i=i+1|0;break}else{h=h+1|0;break}while(0);m=Ex(e,n)|0;g=j;while(1){if(!m)break;k=c[m+16>>2]|0;j=c[k+108>>2]|0;do if(j){if(a[j+81>>0]|0){h=h+1|0;break}if(!u)g=g+((c[k+8>>2]|0)!=0&1)|0}while(0);j=c[k+100>>2]|0;do if(j){if(a[j+81>>0]|0){h=h+1|0;break}if(!u)g=g+((c[k+8>>2]|0)!=0&1)|0}while(0);j=c[k+104>>2]|0;do if(j){if(a[j+81>>0]|0){h=h+1|0;break}if(!u)g=g+((c[k+8>>2]|0)!=0&1)|0}while(0);j=c[k+96>>2]|0;do if(j){if(a[j+81>>0]|0){h=h+1|0;break}if(!u)g=g+((c[k+8>>2]|0)!=0&1)|0}while(0);m=Gx(e,m)|0}n=Ty(e,n)|0;j=g}if(!(a[(c[o>>2]|0)+113>>0]&8))o=0;else o=WI(e)|0;t=j+i|0;if(t|0){q=h+j+o+(ay(e)|0)|0;r=uH(q*40|0)|0;s=uH(t*40|0)|0;NI(M,2147483647.0,2147483647.0);g=M+16|0;NI(p,-2147483647.0,-2147483647.0);c[g>>2]=c[p>>2];c[g+4>>2]=c[p+4>>2];c[g+8>>2]=c[p+8>>2];c[g+12>>2]=c[p+12>>2];g=s;i=r;n=Sy(e)|0;while(1){if(!n)break;c[L>>2]=c[M>>2];c[L+4>>2]=c[M+4>>2];c[L+8>>2]=c[M+8>>2];c[L+12>>2]=c[M+12>>2];c[L+16>>2]=c[M+16>>2];c[L+20>>2]=c[M+20>>2];c[L+24>>2]=c[M+24>>2];c[L+28>>2]=c[M+28>>2];XI(C,n,i,L);c[M>>2]=c[C>>2];c[M+4>>2]=c[C+4>>2];c[M+8>>2]=c[C+8>>2];c[M+12>>2]=c[C+12>>2];c[M+16>>2]=c[C+16>>2];c[M+20>>2]=c[C+20>>2];c[M+24>>2]=c[C+24>>2];c[M+28>>2]=c[C+28>>2];h=c[(c[n+16>>2]|0)+108>>2]|0;do if(h)if(!(a[h+81>>0]|0)){c[L>>2]=c[B>>2];c[L+4>>2]=c[B+4>>2];c[L+8>>2]=c[B+8>>2];c[L+12>>2]=c[B+12>>2];ZI(h,i,g,0,L);g=g+40|0;break}else{i=i+40|0;c[L>>2]=c[M>>2];c[L+4>>2]=c[M+4>>2];c[L+8>>2]=c[M+8>>2];c[L+12>>2]=c[M+12>>2];c[L+16>>2]=c[M+16>>2];c[L+20>>2]=c[M+20>>2];c[L+24>>2]=c[M+24>>2];c[L+28>>2]=c[M+28>>2];YI(D,h,i,L);c[M>>2]=c[D>>2];c[M+4>>2]=c[D+4>>2];c[M+8>>2]=c[D+8>>2];c[M+12>>2]=c[D+12>>2];c[M+16>>2]=c[D+16>>2];c[M+20>>2]=c[D+20>>2];c[M+24>>2]=c[D+24>>2];c[M+28>>2]=c[D+28>>2];break}while(0);m=Ex(e,n)|0;i=i+40|0;while(1){if(!m)break;k=m+16|0;h=c[k>>2]|0;j=c[h+96>>2]|0;a:do if(!j)v=52;else{do if(!(a[j+81>>0]|0)){if(!u?c[h+8>>2]|0:0){gL(F,e,m);c[L>>2]=c[F>>2];c[L+4>>2]=c[F+4>>2];c[L+8>>2]=c[F+8>>2];c[L+12>>2]=c[F+12>>2];ZI(j,i,g,1,L);g=g+40|0;break}c[H>>2]=c[j>>2];Pw(0,100801,H)|0;break a}else{c[L>>2]=c[M>>2];c[L+4>>2]=c[M+4>>2];c[L+8>>2]=c[M+8>>2];c[L+12>>2]=c[M+12>>2];c[L+16>>2]=c[M+16>>2];c[L+20>>2]=c[M+20>>2];c[L+24>>2]=c[M+24>>2];c[L+28>>2]=c[M+28>>2];YI(E,j,i,L);c[M>>2]=c[E>>2];c[M+4>>2]=c[E+4>>2];c[M+8>>2]=c[E+8>>2];c[M+12>>2]=c[E+12>>2];c[M+16>>2]=c[E+16>>2];c[M+20>>2]=c[E+20>>2];c[M+24>>2]=c[E+24>>2];c[M+28>>2]=c[E+28>>2]}while(0);i=i+40|0;h=c[k>>2]|0;v=52}while(0);b:do if((v|0)==52){v=0;j=c[h+104>>2]|0;if(j){do if(!(a[j+81>>0]|0)){if(!u?c[h+8>>2]|0:0){_I(w,m);c[L>>2]=c[w>>2];c[L+4>>2]=c[w+4>>2];c[L+8>>2]=c[w+8>>2];c[L+12>>2]=c[w+12>>2];ZI(j,i,g,1,L);g=g+40|0;break}c[I>>2]=c[j>>2];Pw(0,100836,I)|0;break b}else{c[L>>2]=c[M>>2];c[L+4>>2]=c[M+4>>2];c[L+8>>2]=c[M+8>>2];c[L+12>>2]=c[M+12>>2];c[L+16>>2]=c[M+16>>2];c[L+20>>2]=c[M+20>>2];c[L+24>>2]=c[M+24>>2];c[L+28>>2]=c[M+28>>2];YI(G,j,i,L);c[M>>2]=c[G>>2];c[M+4>>2]=c[G+4>>2];c[M+8>>2]=c[G+8>>2];c[M+12>>2]=c[G+12>>2];c[M+16>>2]=c[G+16>>2];c[M+20>>2]=c[G+20>>2];c[M+24>>2]=c[G+24>>2];c[M+28>>2]=c[G+28>>2]}while(0);i=i+40|0;h=c[k>>2]|0}j=c[h+100>>2]|0;if(j){do if(!(a[j+81>>0]|0)){if(!u?c[h+8>>2]|0:0){$I(y,m);c[L>>2]=c[y>>2];c[L+4>>2]=c[y+4>>2];c[L+8>>2]=c[y+8>>2];c[L+12>>2]=c[y+12>>2];ZI(j,i,g,1,L);g=g+40|0;break}c[J>>2]=c[j>>2];Pw(0,100876,J)|0;break b}else{c[L>>2]=c[M>>2];c[L+4>>2]=c[M+4>>2];c[L+8>>2]=c[M+8>>2];c[L+12>>2]=c[M+12>>2];c[L+16>>2]=c[M+16>>2];c[L+20>>2]=c[M+20>>2];c[L+24>>2]=c[M+24>>2];c[L+28>>2]=c[M+28>>2];YI(x,j,i,L);c[M>>2]=c[x>>2];c[M+4>>2]=c[x+4>>2];c[M+8>>2]=c[x+8>>2];c[M+12>>2]=c[x+12>>2];c[M+16>>2]=c[x+16>>2];c[M+20>>2]=c[x+20>>2];c[M+24>>2]=c[x+24>>2];c[M+28>>2]=c[x+28>>2]}while(0);i=i+40|0;h=c[k>>2]|0}j=c[h+108>>2]|0;if(j){do if(!(a[j+81>>0]|0)){if(!u?c[h+8>>2]|0:0){gL(A,e,m);c[L>>2]=c[A>>2];c[L+4>>2]=c[A+4>>2];c[L+8>>2]=c[A+8>>2];c[L+12>>2]=c[A+12>>2];ZI(j,i,g,1,L);g=g+40|0;break}c[K>>2]=c[j>>2];Pw(0,100916,K)|0;break b}else{c[L>>2]=c[M>>2];c[L+4>>2]=c[M+4>>2];c[L+8>>2]=c[M+8>>2];c[L+12>>2]=c[M+12>>2];c[L+16>>2]=c[M+16>>2];c[L+20>>2]=c[M+20>>2];c[L+24>>2]=c[M+24>>2];c[L+28>>2]=c[M+28>>2];YI(z,j,i,L);c[M>>2]=c[z>>2];c[M+4>>2]=c[z+4>>2];c[M+8>>2]=c[z+8>>2];c[M+12>>2]=c[z+12>>2];c[M+16>>2]=c[z+16>>2];c[M+20>>2]=c[z+20>>2];c[M+24>>2]=c[z+24>>2];c[M+28>>2]=c[z+28>>2]}while(0);i=i+40|0}}while(0);m=Gx(e,m)|0}n=Ty(e,n)|0}if(o|0){c[f>>2]=c[M>>2];c[f+4>>2]=c[M+4>>2];c[f+8>>2]=c[M+8>>2];c[f+12>>2]=c[M+12>>2];c[f+16>>2]=c[M+16>>2];c[f+20>>2]=c[M+20>>2];c[f+24>>2]=c[M+24>>2];c[f+28>>2]=c[M+28>>2];c[f+32>>2]=i;h=L;g=h+40|0;do{c[h>>2]=c[f>>2];h=h+4|0;f=f+4|0}while((h|0)<(g|0));aJ(N,e,L);c[M>>2]=c[N>>2];c[M+4>>2]=c[N+4>>2];c[M+8>>2]=c[N+8>>2];c[M+12>>2]=c[N+12>>2];c[M+16>>2]=c[N+16>>2];c[M+20>>2]=c[N+20>>2];c[M+24>>2]=c[N+24>>2];c[M+28>>2]=c[N+28>>2]}a[O+32>>0]=PL(e,nx(e,0,100952,0)|0,1)|0;c[O>>2]=c[M>>2];c[O+4>>2]=c[M+4>>2];c[O+8>>2]=c[M+8>>2];c[O+12>>2]=c[M+12>>2];c[O+16>>2]=c[M+16>>2];c[O+20>>2]=c[M+20>>2];c[O+24>>2]=c[M+24>>2];c[O+28>>2]=c[M+28>>2];SP(r,q,s,t,O)|0;if(0)bJ(r,q,s,t,O);f=0;g=0;h=s;while(1){if((g|0)>=(t|0))break;if(a[h+36>>0]|0){O=c[h+32>>2]|0;a[O+81>>0]=1;N=O+56|0;cJ(P,h);c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];c[N+12>>2]=c[P+12>>2];kM(e,O);f=f+1|0}g=g+1|0;h=h+40|0}if(!0){if((f|0)!=(t|0)){c[R>>2]=f;c[R+4>>2]=t;Pw(0,100997,R)|0}}else{R=c[15686]|0;c[Q>>2]=f;c[Q+4>>2]=t;g1(R,100964,Q)|0}D_(r);D_(s)}}l=S;return}function TI(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0;i=l;l=l+48|0;e=i+32|0;f=i+16|0;g=i;if(+h[22918]!=0.0|+h[22919]!=0.0|(c[46495]|0)!=0){d=Sy(a)|0;while(1){if(!d)break;if(c[46495]|0)bN(d,0);b=d+16|0;j=(c[b>>2]|0)+16|0;c[e>>2]=c[j>>2];c[e+4>>2]=c[j+4>>2];c[e+8>>2]=c[j+8>>2];c[e+12>>2]=c[j+12>>2];OI(f,e);c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];c[j+8>>2]=c[f+8>>2];c[j+12>>2]=c[f+12>>2];b=c[(c[b>>2]|0)+108>>2]|0;if(b|0){j=b+56|0;c[e>>2]=c[j>>2];c[e+4>>2]=c[j+4>>2];c[e+8>>2]=c[j+8>>2];c[e+12>>2]=c[j+12>>2];OI(g,e);c[j>>2]=c[g>>2];c[j+4>>2]=c[g+4>>2];c[j+8>>2]=c[g+8>>2];c[j+12>>2]=c[g+12>>2]}a:do if((c[46367]|0)==1){b=Ex(a,d)|0;while(1){if(!b)break a;VI(b);b=Gx(a,b)|0}}while(0);d=Ty(a,d)|0}MI(a,c[(c[a+16>>2]|0)+116>>2]&3)}l=i;return}function UI(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,g=0,i=0,j=0;i=b+16|0;j=c[i>>2]|0;g=a[j+275>>0]|0;b=g<<24>>24;do if(!(b&4)){e=+h[j+16>>3];if(!(b&2)){f=(+h[j+32>>3]+e)*.5;break}else{f=+h[d>>3]*.5+e;break}}else f=+h[j+32>>3]-+h[d>>3]*.5;while(0);if(!(g&1))e=+h[d+8>>3]*.5+ +h[j+24>>3];else e=+h[j+40>>3]-+h[d+8>>3]*.5;j=c[j+12>>2]|0;h[j+56>>3]=f;h[j+64>>3]=e;a[(c[(c[i>>2]|0)+12>>2]|0)+81>>0]=1;return}function VI(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=l;l=l+144|0;q=s+120|0;e=s+16|0;i=s+104|0;j=s+88|0;k=s+72|0;m=s+56|0;n=s+40|0;o=s+24|0;r=s;p=b+16|0;d=c[p>>2]|0;f=c[d+8>>2]|0;if(!f){if((a[191874]|0)==0?(a[d+112>>0]|0)!=6:0){q=ry(c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0;r=ry(c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)|0;c[e>>2]=q;c[e+4>>2]=r;Pw(1,100784,e)|0}}else{h=0;b=f;while(1){if((h|0)>=(c[b+4>>2]|0))break;g=c[b>>2]|0;b=c[g+(h*48|0)>>2]|0;e=c[g+(h*48|0)+4>>2]|0;f=c[g+(h*48|0)+8>>2]|0;g=c[g+(h*48|0)+12>>2]|0;d=0;while(1){if((d|0)>=(e|0))break;t=b+(d<<4)|0;c[q>>2]=c[t>>2];c[q+4>>2]=c[t+4>>2];c[q+8>>2]=c[t+8>>2];c[q+12>>2]=c[t+12>>2];OI(i,q);c[t>>2]=c[i>>2];c[t+4>>2]=c[i+4>>2];c[t+8>>2]=c[i+8>>2];c[t+12>>2]=c[i+12>>2];d=d+1|0}if(f|0){t=(c[c[(c[p>>2]|0)+8>>2]>>2]|0)+(h*48|0)+16|0;c[q>>2]=c[t>>2];c[q+4>>2]=c[t+4>>2];c[q+8>>2]=c[t+8>>2];c[q+12>>2]=c[t+12>>2];OI(j,q);c[t>>2]=c[j>>2];c[t+4>>2]=c[j+4>>2];c[t+8>>2]=c[j+8>>2];c[t+12>>2]=c[j+12>>2]}if(g|0){t=(c[c[(c[p>>2]|0)+8>>2]>>2]|0)+(h*48|0)+32|0;c[q>>2]=c[t>>2];c[q+4>>2]=c[t+4>>2];c[q+8>>2]=c[t+8>>2];c[q+12>>2]=c[t+12>>2];OI(k,q);c[t>>2]=c[k>>2];c[t+4>>2]=c[k+4>>2];c[t+8>>2]=c[k+8>>2];c[t+12>>2]=c[k+12>>2]}d=c[p>>2]|0;h=h+1|0;b=c[d+8>>2]|0}b=c[d+96>>2]|0;if(b){d=b+56|0;c[q>>2]=c[d>>2];c[q+4>>2]=c[d+4>>2];c[q+8>>2]=c[d+8>>2];c[q+12>>2]=c[d+12>>2];OI(m,q);c[d>>2]=c[m>>2];c[d+4>>2]=c[m+4>>2];c[d+8>>2]=c[m+8>>2];c[d+12>>2]=c[m+12>>2];d=c[p>>2]|0}b=c[d+108>>2]|0;if(b){d=b+56|0;c[q>>2]=c[d>>2];c[q+4>>2]=c[d+4>>2];c[q+8>>2]=c[d+8>>2];c[q+12>>2]=c[d+12>>2];OI(n,q);c[d>>2]=c[n>>2];c[d+4>>2]=c[n+4>>2];c[d+8>>2]=c[n+8>>2];c[d+12>>2]=c[n+12>>2];d=c[p>>2]|0}b=c[d+100>>2]|0;if(b){d=b+56|0;c[q>>2]=c[d>>2];c[q+4>>2]=c[d+4>>2];c[q+8>>2]=c[d+8>>2];c[q+12>>2]=c[d+12>>2];OI(o,q);c[d>>2]=c[o>>2];c[d+4>>2]=c[o+4>>2];c[d+8>>2]=c[o+8>>2];c[d+12>>2]=c[o+12>>2];d=c[p>>2]|0}d=c[d+104>>2]|0;if(d|0){t=d+56|0;c[q>>2]=c[t>>2];c[q+4>>2]=c[t+4>>2];c[q+8>>2]=c[t+8>>2];c[q+12>>2]=c[t+12>>2];OI(r,q);c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[t+8>>2]=c[r+8>>2];c[t+12>>2]=c[r+12>>2]}}l=s;return}function WI(b){b=b|0;var d=0,e=0,f=0;f=b+16|0;if((fz(b)|0)!=(b|0)?(d=c[(c[f>>2]|0)+12>>2]|0,(d|0)!=0):0){e=1;b=(a[d+81>>0]|0)!=0&1}else{e=1;b=0}while(1){d=c[f>>2]|0;if((e|0)>(c[d+180>>2]|0))break;d=(WI(c[(c[d+184>>2]|0)+(e<<2)>>2]|0)|0)+b|0;e=e+1|0;b=d}return b|0}function XI(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0.0,k=0.0,m=0,n=0;g=l;l=l+32|0;i=g;n=(a[191877]|0)==0;d=d+16|0;m=c[d>>2]|0;k=+h[(n?m+32|0:m+40|0)>>3];h[e+16>>3]=k*72.0;j=+h[(n?m+40|0:m+32|0)>>3];h[e+24>>3]=j*72.0;d=(c[d>>2]|0)+16|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];h[e>>3]=+h[e>>3]-k*36.0;d=e+8|0;h[d>>3]=+h[d>>3]-j*36.0;c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];c[i+16>>2]=c[f+16>>2];c[i+20>>2]=c[f+20>>2];c[i+24>>2]=c[f+24>>2];c[i+28>>2]=c[f+28>>2];dJ(b,e,i);l=g;return}function YI(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0.0,k=0.0,m=0,n=0;g=l;l=l+32|0;i=g;n=(a[191877]|0)==0;m=d+24|0;k=+h[(n?m:d+32|0)>>3];h[e+16>>3]=k;j=+h[(n?d+32|0:m)>>3];h[e+24>>3]=j;d=d+56|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];h[e>>3]=+h[e>>3]-k*.5;d=e+8|0;h[d>>3]=+h[d>>3]-j*.5;c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];c[i+16>>2]=c[f+16>>2];c[i+20>>2]=c[f+20>>2];c[i+24>>2]=c[f+24>>2];c[i+28>>2]=c[f+28>>2];dJ(b,e,i);l=g;return}function ZI(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(f|0){f=d+16|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[d>>2]=c[g>>2];c[d+4>>2]=c[g+4>>2];c[d+8>>2]=c[g+8>>2];c[d+12>>2]=c[g+12>>2]}if(!(a[191877]|0)){g=b+24|0;c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[e+12>>2]=c[g+12>>2]}else{h[e>>3]=+h[b+32>>3];h[e+8>>3]=+h[b+24>>3]}c[e+32>>2]=b;a[e+36>>0]=0;c[d+32>>2]=e;return}function _I(a,b){a=a|0;b=b|0;b=fL(b)|0;do if(b){b=c[b>>2]|0;if(!(c[b+8>>2]|0)){b=c[b>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];break}else{b=b+16|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];break}}else{c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0}while(0);return}function $I(a,b){a=a|0;b=b|0;var d=0;b=fL(b)|0;do if(b){d=c[b>>2]|0;b=(c[b+4>>2]|0)+-1|0;if(!(c[d+(b*48|0)+12>>2]|0)){d=(c[d+(b*48|0)>>2]|0)+((c[d+(b*48|0)+4>>2]|0)+-1<<4)|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];break}else{d=d+(b*48|0)+32|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];break}}else{c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0}while(0);return}function aJ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+112|0;k=q+72|0;n=q+32|0;o=q;p=d+16|0;j=1;while(1){f=c[p>>2]|0;if((j|0)>(c[f+180>>2]|0))break;f=c[(c[f+184>>2]|0)+(j<<2)>>2]|0;g=k;h=e;i=g+40|0;do{c[g>>2]=c[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(i|0));aJ(n,f,k);g=e;h=n;i=g+40|0;do{c[g>>2]=c[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(i|0));j=j+1|0}if(((fz(d)|0)!=(d|0)?(m=c[(c[p>>2]|0)+12>>2]|0,m|0):0)?a[m+81>>0]|0:0){p=e+32|0;n=c[p>>2]|0;c[k>>2]=c[e>>2];c[k+4>>2]=c[e+4>>2];c[k+8>>2]=c[e+8>>2];c[k+12>>2]=c[e+12>>2];c[k+16>>2]=c[e+16>>2];c[k+20>>2]=c[e+20>>2];c[k+24>>2]=c[e+24>>2];c[k+28>>2]=c[e+28>>2];YI(o,m,n,k);c[e>>2]=c[o>>2];c[e+4>>2]=c[o+4>>2];c[e+8>>2]=c[o+8>>2];c[e+12>>2]=c[o+12>>2];c[e+16>>2]=c[o+16>>2];c[e+20>>2]=c[o+20>>2];c[e+24>>2]=c[o+24>>2];c[e+28>>2]=c[o+28>>2];c[p>>2]=(c[p>>2]|0)+40}g=b;h=e;i=g+40|0;do{c[g>>2]=c[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(i|0));l=q;return}function bJ(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var i=0.0,j=0.0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+160|0;r=s+96|0;p=s+48|0;o=s;q=c[15686]|0;n=d[g+32>>0]|0;i=+h[g>>3];j=+h[g+8>>3];k=+h[g+16>>3];m=+h[g+24>>3];c[o>>2]=b;c[o+4>>2]=f;c[o+8>>2]=n;h[o+16>>3]=i;h[o+24>>3]=j;h[o+32>>3]=k;h[o+40>>3]=m;g1(q,101039,o)|0;a:do if(0>=2){E1(101099,8,1,q)|0;o=0;while(1){if((o|0)>=(b|0))break;g=c[a+32>>2]|0;i=+h[a>>3];j=+h[a+8>>3];k=+h[a+16>>3];m=+h[a+24>>3];if(!g)n=191979;else n=c[c[g+32>>2]>>2]|0;c[p>>2]=o;h[p+8>>3]=i;h[p+16>>3]=j;h[p+24>>3]=k;h[p+32>>3]=m;c[p+40>>2]=g;c[p+44>>2]=n;g1(q,101108,p)|0;o=o+1|0;a=a+40|0}E1(101151,8,1,q)|0;g=0;while(1){if((g|0)>=(f|0))break a;b=d[e+36>>0]|0;i=+h[e+16>>3];j=+h[e+24>>3];k=+h[e>>3];m=+h[e+8>>3];p=c[c[e+32>>2]>>2]|0;c[r>>2]=g;c[r+4>>2]=e;c[r+8>>2]=b;h[r+16>>3]=i;h[r+24>>3]=j;h[r+32>>3]=k;h[r+40>>3]=m;c[r+48>>2]=p;g1(q,101160,r)|0;e=e+40|0;g=g+1|0}}while(0);l=s;return}function cJ(a,b){a=a|0;b=b|0;var c=0.0;c=+h[b+8>>3]*.5+ +h[b+24>>3];h[a>>3]=+h[b>>3]*.5+ +h[b+16>>3];h[a+8>>3]=c;return}function dJ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0.0,j=0.0;e=l;l=l+16|0;f=e;j=+h[b>>3];h[d>>3]=+h[(+h[d>>3]<j?d:b)>>3];g=d+8|0;i=+h[b+8>>3];h[g>>3]=+h[(+h[g>>3]<i?d:b)+8>>3];j=+h[b+16>>3]+j;h[f>>3]=j;i=+h[b+24>>3]+i;h[f+8>>3]=i;g=d+16|0;h[g>>3]=+h[(+h[g>>3]>j?g:f)>>3];b=d+24|0;h[b>>3]=+h[(+h[b>>3]>i?g:f)+8>>3];c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];c[a+16>>2]=c[d+16>>2];c[a+20>>2]=c[d+20>>2];c[a+24>>2]=c[d+24>>2];c[a+28>>2]=c[d+28>>2];l=e;return}function eJ(a){a=a|0;PI(a,1);return}function fJ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e;b=ZL(xx(a,102500)|0)|0;if(b){b=gJ(b)|0;if(b|0){f=c[b+40>>2]|0;d=c[b+44>>2]|0;g=a+16|0;a=c[g>>2]|0;h[a+32>>3]=+(f|0)*.013888888888888888;h[a+40>>3]=+(d|0)*.013888888888888888;a=uH(12)|0;c[(c[g>>2]|0)+12>>2]=a;c[a>>2]=c[b+12>>2];c[a+4>>2]=((f|0)/-2|0)-(c[b+32>>2]|0);c[a+8>>2]=((d|0)/-2|0)-(c[b+36>>2]|0)}}else{c[d>>2]=ry(a)|0;Pw(0,101208,d)|0}l=e;return}function gJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+1152|0;i=p+24|0;h=p+8|0;e=p;f=p+120|0;j=p+44|0;k=p+40|0;m=p+36|0;n=p+32|0;o=p+28|0;d=c[46496]|0;if(!d){d=Cw(20708,c[4555]|0)|0;c[46496]=d}d=nb[c[d>>2]&63](d,b,512)|0;do if(!d){g=L1(b,135739)|0;if(!g){c[e>>2]=b;Pw(0,101257,e)|0;d=0;break}else{d=0;e=0}while(1){if(!(O0(f,1024,g)|0)){f=11;break}c[h>>2]=k;c[h+4>>2]=m;c[h+8>>2]=n;c[h+12>>2]=o;q=(N1(f,101285,h)|0)==4;e=q?1:e;if((a[f>>0]|0)!=37){q=(P0(f,101314)|0)==0;d=q?d:1}if((e|0)!=0&(d|0)!=0){f=12;break}}if((f|0)==11)if(!e){c[i>>2]=b;Pw(0,101319,i)|0;d=0}else f=12;if((f|0)==12){q=vH(64)|0;k=c[k>>2]|0;c[q+32>>2]=k;m=c[m>>2]|0;c[q+40>>2]=(c[n>>2]|0)-k;c[q+36>>2]=(c[o>>2]|0)-m;c[q+8>>2]=b;o=c[46497]|0;c[46497]=o+1;c[q+12>>2]=o;J1(j3(g)|0,j)|0;o=c[j+36>>2]|0;n=vH(o+1|0)|0;c[q+52>>2]=n;Z1(g,0,0)|0;g3(n,o,1,g)|0;a[n+o>>0]=0;o=c[46496]|0;nb[c[o>>2]&63](o,q,1)|0;a[q+16>>0]=d;d=q}s1(g)|0}while(0);l=p;return d|0}function hJ(a,b,d){a=a|0;b=b|0;d=d|0;D_(c[b+52>>2]|0);return}function iJ(a){a=a|0;D_(c[(c[a+16>>2]|0)+12>>2]|0);return}function jJ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n+8|0;k=n;j=(d|0)!=0;a:do if(j){h=0;f=0;b:while(1)while(1){if(h)break a;g=c[d+(f<<2)>>2]|0;if(!g){i=6;break a}f=f+1|0;if(!(a[g>>0]|0)){h=1;continue b}}}else i=6;while(0);c:do if((i|0)==6)while(1){f=c[e>>2]|0;if(!f)break c;$B(b,f)|0;$B(b,150517)|0;e=e+4|0;i=6}while(0);d:do if(j){h=0;while(1){f=c[d+(h<<2)>>2]|0;if(!f)break d;do if(a[f>>0]|0){e=ZL(f)|0;if(!e){c[k>>2]=f;Pw(0,101358,k)|0;break}g=L1(e,135739)|0;if(!g){c[m>>2]=e;Pw(0,101386,m)|0;break}while(1){f=YL(g)|0;if(!f)break;$B(b,f)|0}$B(b,150517)|0;s1(g)|0}while(0);h=h+1|0}}while(0);l=n;return}function kJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;d=c[d+52>>2]|0;a:while(1){e=a[d>>0]|0;b:do switch(e<<24>>24){case 0:break a;case 37:{if((a[d+1>>0]|0)==37){e=d+2|0;if((((V$(e,101414,3)|0)!=0?(V$(e,101418,5)|0)!=0:0)?(V$(e,101424,3)|0)!=0:0)?(V$(e,101428,7)|0)!=0:0){e=37;break b}else g=37;c:while(1){switch(g<<24>>24){case 13:{f=10;break c}case 10:case 0:{f=12;break c}default:{}}g=d+1|0;d=g;g=a[g>>0]|0}if((f|0)==10){e=d+1|0;if((a[e>>0]|0)==10){d=d+2|0;continue a}}else if((f|0)==12)e=d+1|0;d=g<<24>>24==0?d:e;continue a}else e=37;break}default:{}}while(0);d:while(1){switch(e<<24>>24){case 10:case 13:case 0:break d;default:{}}aC(b,e<<24>>24)|0;g=d+1|0;d=g;e=a[g>>0]|0}f=d+1|0;if(e<<24>>24==13?(a[f>>0]|0)==10:0)d=d+2|0;else d=e<<24>>24==0?d:f;aC(b,10)|0}return}function lJ(b){b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;d=c[46496]|0;a:do if(d|0){d=nb[c[d>>2]&63](d,0,128)|0;while(1){if(!d)break a;if(!(a[d+16>>0]|0)){c[e>>2]=c[d+12>>2];fC(b,101436,e);$B(b,101454)|0;kJ(b,d);$B(b,101472)|0;$B(b,101487)|0}g=c[46496]|0;d=nb[c[g>>2]&63](g,d,8)|0}}while(0);l=f;return}function mJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+16|0;e=g;a:do switch(d|0){case 0:{f=b;break}case 1:{f=SM(b)|0;break}default:{switch(nJ(b)|0){case 2:break;case 1:{f=SM(b)|0;break a}default:{f=b;break a}}if(!(c[46498]|0)){Pw(0,101499,e)|0;c[46498]=1;f=b}else f=b}}while(0);if(!(c[46499]|0))Tw(185996,0,0);d=c[46500]|0;if(d>>>0>=(c[46501]|0)>>>0){Uw(185996,1)|0;d=c[46500]|0}c[46500]=d+1;a[d>>0]=40;e=f;b:while(1){switch(a[e>>0]|0){case 0:break b;case 92:case 41:case 40:{d=c[46500]|0;if(d>>>0>=(c[46501]|0)>>>0){Uw(185996,1)|0;d=c[46500]|0}c[46500]=d+1;a[d>>0]=92;break}default:{}}d=c[46500]|0;if(d>>>0>=(c[46501]|0)>>>0){Uw(185996,1)|0;d=c[46500]|0}h=a[e>>0]|0;c[46500]=d+1;a[d>>0]=h;e=e+1|0}d=c[46500]|0;if(d>>>0>=(c[46501]|0)>>>0){Uw(185996,1)|0;d=c[46500]|0}c[46500]=d+1;a[d>>0]=41;if((f|0)!=(b|0))D_(f);d=c[46500]|0;if(d>>>0>=(c[46501]|0)>>>0){Uw(185996,1)|0;d=c[46500]|0}a[d>>0]=0;h=c[46499]|0;c[46500]=h;l=g;return h|0}function nJ(b){b=b|0;var c=0,d=0;c=0;a:while(1){while(1){d=a[b>>0]|0;if(!(d<<24>>24))break a;if((d&255)<127)b=b+1|0;else break}if((d&-4)<<24>>24==-64){c=1;b=b+2|0}else{c=2;break}}return c|0}function oJ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+96|0;i=n+80|0;j=n+72|0;m=n+64|0;g=n+32|0;k=n;h[g>>3]=+h[a>>3];h[g+8>>3]=+h[a+8>>3];h[g+16>>3]=+h[b>>3];h[g+24>>3]=+h[b+8>>3];do if((TU(d,g,j)|0)>=0){if(!f){b=d+4|0;a=c[b>>2]|0;f=c[46504]|0;if((a|0)>(c[46503]|0)){if(!f)a=vH(a<<5)|0;else a=xH(f,a<<5)|0;c[46504]=a;g=c[b>>2]|0;c[46503]=g;f=a}else g=a;b=c[d>>2]|0;a=0;while(1){if((a|0)>=(g|0))break;o=f+(a<<5)|0;d=b+(a<<4)|0;c[o>>2]=c[d>>2];c[o+4>>2]=c[d+4>>2];c[o+8>>2]=c[d+8>>2];c[o+12>>2]=c[d+12>>2];o=f+(a<<5)+16|0;d=a+1|0;p=b+(((d|0)%(g|0)|0)<<4)|0;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];c[o+8>>2]=c[p+8>>2];c[o+12>>2]=c[p+12>>2];a=d}c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;c[k+28>>2]=0;c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];if((xU(f,g,i,k,m)|0)<0){a=0;break}}else{c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];oV(i,m)}a=m+4|0;if(!(pJ(c[a>>2]|0)|0)){g=c[a>>2]|0;a=c[46505]|0;f=c[m>>2]|0;b=0;while(1){if((b|0)>=(g|0))break;p=a+(b<<4)|0;o=f+(b<<4)|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];c[p+8>>2]=c[o+8>>2];c[p+12>>2]=c[o+12>>2];b=b+1|0}c[e>>2]=g}else a=0}else a=0;while(0);l=n;return a|0}function pJ(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;d=e;b=c[46506]|0;do if((b|0)<(a|0)){a=a+300-((a|0)%300|0)+b|0;b=xH(c[46505]|0,a<<4)|0;c[46505]=b;if(!b){Pw(1,101589,d)|0;a=1;break}else{c[46506]=a;a=0;break}}else a=0;while(0);l=e;return a|0}function qJ(){var a=0,b=0,d=0;b=l;l=l+16|0;a=b;d=c[46507]|0;c[46507]=d+1;do if((d|0)<=0){d=vH(4800)|0;c[46505]=d;if(!d){Pw(1,101612,a)|0;a=1;break}c[46506]=300;c[46508]=0;c[46509]=0;if(0){EL();a=0}else a=0}else a=0;while(0);l=b;return a|0}function rJ(){var a=0,b=0,d=0,e=0.0,f=0,g=0;b=l;l=l+16|0;a=b;d=c[46507]|0;c[46507]=d+-1;if((d|0)<=1?(D_(c[46505]|0),0):0){d=c[15686]|0;g=c[46508]|0;f=c[46509]|0;e=+FL();c[a>>2]=g;c[a+4>>2]=f;h[a+8>>3]=e;g1(d,101650,a)|0}l=b;return}function sJ(a,b){a=a|0;b=b|0;return tJ(a,b,0)|0}function tJ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;L=l;l=l+176|0;G=L+168|0;K=L+128|0;x=L+120|0;v=L+112|0;i=L+104|0;s=L+88|0;n=L+72|0;g=L+64|0;t=L+160|0;I=L+152|0;y=L+144|0;u=L+32|0;w=L;J=L+136|0;c[46508]=(c[46508]|0)+1;H=c[b+80>>2]|0;c[46509]=(c[46509]|0)+H;f=b+88|0;while(1){C=c[f>>2]|0;if(!C){D=4;break}f=c[C+16>>2]|0;if(!(a[f+112>>0]|0)){D=5;break}else f=f+116|0}do if((D|0)==4){Pw(1,101693,g)|0;f=0}else if((D|0)==5){B=c[b+84>>2]|0;if(!(uJ(H,B,b)|0)){g=H<<3;if((g|0)>(c[46510]|0)){f=c[46511]|0;if(!f)f=vH(H<<7)|0;else f=xH(f,H<<7)|0;c[46511]=f;c[46510]=g}a:do if((H|0)>1?+h[B+8>>3]>+h[B+40>>3]:0){f=0;while(1){if((f|0)==(H|0)){p=1;break a}z=B+(f<<5)+24|0;m=+h[z>>3];A=B+(f<<5)+8|0;h[z>>3]=-+h[A>>3];h[A>>3]=-m;f=f+1|0}}else p=0;while(0);r=c[C>>2]&3;z=C+48|0;f=c[((r|0)==3?C:z)+40>>2]|0;A=C+-48|0;if((f|0)==(c[((r|0)==2?C:A)+40>>2]|0)){c[i>>2]=ry(f)|0;Pw(1,101800,i)|0;f=0;break}o=H+-1|0;q=c[46511]|0;r=q;f=0;j=0;b:while(1){if((j|0)>=(H|0)){j=o;n=f;break}if((j|0)>0)g=+h[B+(j<<5)+8>>3]>+h[B+(j+-1<<5)+8>>3]?-1:1;else g=0;if((j|0)<(o|0))i=+h[B+(j+1<<5)+8>>3]>+h[B+(j<<5)+8>>3]?1:-1;else i=0;c:do if((g|0)!=(i|0))if((g|0)==1|(i|0)==-1){g=B+(j<<5)|0;h[q+(f<<4)>>3]=+h[g>>3];i=f+1|0;h[q+(f<<4)+8>>3]=+h[B+(j<<5)+24>>3];h[q+(i<<4)>>3]=+h[g>>3];g=B+(j<<5)+8|0;D=29;break}else{g=B+(j<<5)+16|0;h[q+(f<<4)>>3]=+h[g>>3];i=f+1|0;h[q+(f<<4)+8>>3]=+h[B+(j<<5)+8>>3];h[q+(i<<4)>>3]=+h[g>>3];g=B+(j<<5)+24|0;D=29;break}else{switch(g|0){case -1:break c;case 0:break;default:{D=28;break b}}g=B+(j<<5)|0;h[q+(f<<4)>>3]=+h[g>>3];i=f+1|0;h[q+(f<<4)+8>>3]=+h[B+(j<<5)+24>>3];h[q+(i<<4)>>3]=+h[g>>3];g=B+(j<<5)+8|0;D=29}while(0);if((D|0)==29){D=0;h[q+(i<<4)+8>>3]=+h[g>>3];f=f+2|0}j=j+1|0}if((D|0)==28){c[n>>2]=g;c[n+4>>2]=g;c[n+8>>2]=480;Pw(1,101735,n)|0;f=0;break}d:while(1){if((j|0)<=-1)break;if((j|0)<(o|0))f=+h[B+(j<<5)+8>>3]>+h[B+(j+1<<5)+8>>3]?-1:1;else f=0;if((j|0)>0)g=+h[B+(j+-1<<5)+8>>3]>+h[B+(j<<5)+8>>3]?1:-1;else g=0;e:do if((f|0)!=(g|0))if((f|0)==1|(g|0)==-1){f=B+(j<<5)|0;h[q+(n<<4)>>3]=+h[f>>3];g=n+1|0;h[q+(n<<4)+8>>3]=+h[B+(j<<5)+24>>3];h[q+(g<<4)>>3]=+h[f>>3];f=B+(j<<5)+8|0;i=2;break}else{f=B+(j<<5)+16|0;h[q+(n<<4)>>3]=+h[f>>3];g=n+1|0;h[q+(n<<4)+8>>3]=+h[B+(j<<5)+8>>3];h[q+(g<<4)>>3]=+h[f>>3];f=B+(j<<5)+24|0;i=2;break}else switch(f|0){case 0:{f=B+(j<<5)+16|0;h[q+(n<<4)>>3]=+h[f>>3];g=n+1|0;h[q+(n<<4)+8>>3]=+h[B+(j<<5)+8>>3];h[q+(g<<4)>>3]=+h[f>>3];f=B+(j<<5)+24|0;i=2;break e}case -1:{N=B+(j<<5)+16|0;h[q+(n<<4)>>3]=+h[N>>3];f=B+(j<<5)+8|0;i=n+1|0;h[q+(n<<4)+8>>3]=+h[f>>3];h[q+(i<<4)>>3]=+h[N>>3];N=B+(j<<5)+24|0;M=n+2|0;h[q+(i<<4)+8>>3]=+h[N>>3];i=B+(j<<5)|0;h[q+(M<<4)>>3]=+h[i>>3];g=n+3|0;h[q+(M<<4)+8>>3]=+h[N>>3];h[q+(g<<4)>>3]=+h[i>>3];i=4;break e}default:{D=42;break d}}while(0);h[q+(g<<4)+8>>3]=+h[f>>3];j=j+-1|0;n=n+i|0}if((D|0)==42){c[s>>2]=f;c[s+4>>2]=f;c[s+8>>2]=513;Pw(1,101735,s)|0;f=0;break}f:do if(!p)f=0;else{f=0;while(1){if((f|0)>=(H|0)){f=0;break}M=B+(f<<5)+24|0;m=+h[M>>3];N=B+(f<<5)+8|0;h[M>>3]=-+h[N>>3];h[N>>3]=-m;f=f+1|0}while(1){if((f|0)>=(n|0)){f=0;break f}N=q+(f<<4)+8|0;h[N>>3]=-+h[N>>3];f=f+1|0}}while(0);while(1){if((f|0)>=(H|0))break;h[B+(f<<5)>>3]=2147483647.0;h[B+(f<<5)+16>>3]=-2147483648.0;f=f+1|0}c[t>>2]=r;i=t+4|0;c[i>>2]=n;h[u>>3]=+h[b>>3];h[u+8>>3]=+h[b+8>>3];h[u+16>>3]=+h[b+40>>3];h[u+24>>3]=+h[b+48>>3];if((TU(t,u,I)|0)<0){Pw(1,101839,v)|0;f=0;break}if(!e){g=c[i>>2]|0;f=c[46504]|0;if((g|0)>(c[46503]|0)){if(!f)f=vH(g<<5)|0;else f=xH(f,g<<5)|0;c[46504]=f;g=c[i>>2]|0;c[46503]=g}j=c[46511]|0;i=0;while(1){if((i|0)>=(g|0))break;M=f+(i<<5)|0;N=j+(i<<4)|0;c[M>>2]=c[N>>2];c[M+4>>2]=c[N+4>>2];c[M+8>>2]=c[N+8>>2];c[M+12>>2]=c[N+12>>2];M=f+(i<<5)+16|0;N=i+1|0;v=j+(((N|0)%(g|0)|0)<<4)|0;c[M>>2]=c[v>>2];c[M+4>>2]=c[v+4>>2];c[M+8>>2]=c[v+8>>2];c[M+12>>2]=c[v+12>>2];i=N}if(!(a[b+29>>0]|0)){k=0.0;m=0.0}else{m=+h[b+16>>3];k=+E(+m);m=+F(+m)}h[w+8>>3]=m;h[w>>3]=k;if(!(a[b+69>>0]|0)){k=0.0;m=0.0}else{m=+h[b+56>>3];k=-+E(+m);m=-+F(+m)}h[w+24>>3]=m;h[w+16>>3]=k;c[G>>2]=c[I>>2];c[G+4>>2]=c[I+4>>2];if((xU(f,g,G,w,y)|0)<0){Pw(1,101878,x)|0;f=0;break}}else{c[G>>2]=c[I>>2];c[G+4>>2]=c[I+4>>2];oV(G,y)}n=y+4|0;if(!(pJ(c[n>>2]|0)|0)){f=0;while(1){if((f|0)>=(H|0))break;h[B+(f<<5)>>3]=2147483647.0;h[B+(f<<5)+16>>3]=-2147483648.0;f=f+1|0}i=c[n>>2]|0;j=c[46505]|0;g=c[y>>2]|0;f=0;while(1){if((f|0)>=(i|0)){i=1;f=10;g=0;break}N=j+(f<<4)|0;M=g+(f<<4)|0;c[N>>2]=c[M>>2];c[N+4>>2]=c[M+4>>2];c[N+8>>2]=c[M+8>>2];c[N+12>>2]=c[M+12>>2];f=f+1|0}while(1){if(!((g|0)<15&i<<24>>24!=0))break;vJ(B,H,c[46505]|0,c[n>>2]|0,f);j=0;while(1){if((j|0)>=(H|0))break;if(+h[B+(j<<5)>>3]==2147483647.0){D=82;break}if(+h[B+(j<<5)+16>>3]==-2147483648.0){D=82;break}j=j+1|0}if((D|0)==82){D=0;N=f<<1;f=N;g=(N|0)>(2147483647/(H|0)|0|0)?15:g}i=(j|0)==(H|0)?0:i;g=g+1|0}if(i<<24>>24){M=ry(c[((c[C>>2]&3|0)==3?C:z)+40>>2]|0)|0;N=ry(c[((c[C>>2]&3|0)==2?C:A)+40>>2]|0)|0;c[K>>2]=M;c[K+4>>2]=N;Pw(0,101916,K)|0;c[G>>2]=c[I>>2];c[G+4>>2]=c[I+4>>2];oV(G,J);vJ(B,H,c[J>>2]|0,c[J+4>>2]|0,10);D_(c[J>>2]|0)}c[d>>2]=c[n>>2];f=c[46505]|0}else f=0}else f=0}while(0);l=L;return f|0}function uJ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0,L=0,M=0,N=0,O=0.0,P=0,Q=0,R=0;R=l;l=l+32|0;I=R+16|0;H=R+8|0;k=R;e=0;j=0;while(1){if((j|0)>=(a|0))break;i=b+(j<<5)|0;s=+h[b+(j<<5)+8>>3]-+h[b+(j<<5)+24>>3];if(!((s>=0.0?s:-s)<.01)?(s=+h[i>>3]-+h[b+(j<<5)+16>>3],!((s>=0.0?s:-s)<.01)):0){if((e|0)!=(j|0)){P=b+(e<<5)|0;c[P>>2]=c[i>>2];c[P+4>>2]=c[i+4>>2];c[P+8>>2]=c[i+8>>2];c[P+12>>2]=c[i+12>>2];c[P+16>>2]=c[i+16>>2];c[P+20>>2]=c[i+20>>2];c[P+24>>2]=c[i+24>>2];c[P+28>>2]=c[i+28>>2]}e=e+1|0}j=j+1|0}J=b+16|0;do if(!(+h[b>>3]>+h[J>>3])?(L=b+8|0,N=b+24|0,!(+h[L>>3]>+h[N>>3])):0){P=e+-1|0;M=c[15686]|0;w=0;while(1){if((w|0)>=(P|0))break;D=w+1|0;E=b+(D<<5)|0;f=+h[E>>3];F=b+(D<<5)+16|0;g=+h[F>>3];if(f>g){Q=16;break}A=b+(D<<5)+8|0;m=+h[A>>3];B=b+(D<<5)+24|0;n=+h[B>>3];if(m>n){Q=16;break}G=b+(w<<5)+16|0;v=+h[G>>3]<f;e=v&1;C=b+(w<<5)|0;u=+h[C>>3]>g;a=u&1;z=b+(w<<5)+24|0;t=+h[z>>3]<m;j=t&1;y=b+(w<<5)+8|0;k=+h[y>>3]>n;i=k&1;x=a+e+j+i|0;o=(x|0)!=0;if(!(0==0|o^1)){c[I>>2]=w;c[I+4>>2]=D;g1(M,102116,I)|0;wJ(d)}a:do if(o){if(!v)if(!u)if(!t){if(k){k=0;o=e;e=B;i=y;Q=24}}else{k=i;j=0;o=e;e=A;i=z;Q=24}else{k=i;a=0;o=e;e=F;i=C;Q=24}else{k=i;o=0;e=E;i=G;Q=24}if((Q|0)==24){Q=0;w=~~+h[i>>3];h[i>>3]=+h[e>>3];h[e>>3]=+(w|0);i=k;e=o}o=x+-1|0;k=0;while(1){if((k|0)>=(o|0))break a;do if((e|0)!=1){if((a|0)==1){s=+(~~((+h[F>>3]+ +h[C>>3])*.5+.5)|0);h[F>>3]=s;h[C>>3]=s;a=0;break}if((j|0)==1){s=+(~~((+h[A>>3]+ +h[z>>3])*.5+.5)|0);h[A>>3]=s;h[z>>3]=s;j=0;break}if((i|0)==1){s=+(~~((+h[B>>3]+ +h[y>>3])*.5+.5)|0);h[B>>3]=s;h[y>>3]=s;i=0}}else{s=+(~~((+h[E>>3]+ +h[G>>3])*.5+.5)|0);h[E>>3]=s;h[G>>3]=s;e=0}while(0);k=k+1|0}}while(0);p=+h[C>>3];q=+h[G>>3];r=+h[E>>3];s=+h[F>>3];i=xJ(~~p,~~q,~~r,~~s)|0;n=+h[y>>3];m=+h[z>>3];g=+h[A>>3];f=+h[B>>3];e=xJ(~~n,~~m,~~g,~~f)|0;if(!((i|0)!=0&(e|0)!=0)){w=D;continue}if((i|0)<(e|0)){B=q-p>s-r;w=q<s;h[(B?(w?G:C):w?E:F)>>3]=B?(w?r:s):w?q:p;w=D;continue}else{B=m-n>f-g;w=m<f;h[(B?(w?G:C):w?E:F)+8>>3]=B?(w?g:f):w?m:n;w=D;continue}}if((Q|0)==16){c[H>>2]=D;Pw(1,102070,H)|0;wJ(d);e=1;break}f=+h[d>>3];g=+h[b>>3];if(!(((!(f<g)?!(f>+h[J>>3]):0)?(K=+h[d+8>>3],!(K<+h[L>>3])):0)?!(K>+h[N>>3]):0)){if(0){E1(102159,42,1,M)|0;wJ(d);g=+h[b>>3];f=+h[d>>3]}if(f<g)h[d>>3]=g;else g=f;f=+h[J>>3];if(g>f)h[d>>3]=f;e=d+8|0;g=+h[e>>3];f=+h[L>>3];if(g<f){h[e>>3]=f;g=f}f=+h[N>>3];if(g>f)h[e>>3]=f}i=d+40|0;f=+h[i>>3];e=b+(P<<5)|0;g=+h[e>>3];if(((!(f<g)?!(f>+h[b+(P<<5)+16>>3]):0)?(O=+h[d+48>>3],!(O<+h[b+(P<<5)+8>>3])):0)?!(O>+h[b+(P<<5)+24>>3]):0){e=0;break}if(0){E1(102202,39,1,M)|0;wJ(d);g=+h[e>>3];f=+h[i>>3]}if(f<g){h[i>>3]=g;f=g}g=+h[b+(P<<5)+16>>3];if(f>g)h[i>>3]=g;e=d+48|0;f=+h[e>>3];g=+h[b+(P<<5)+8>>3];if(f<g)h[e>>3]=g;else g=f;f=+h[b+(P<<5)+24>>3];if(g>f){h[e>>3]=f;e=0}else e=0}else Q=12;while(0);if((Q|0)==12){Pw(1,102025,k)|0;wJ(d);e=1}l=R;return e|0}function vJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,l=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0;s=O(e,b)|0;t=1.0/+(s|0);e=0;a:while(1){u=e+3|0;if((u|0)>=(d|0))break;o=c+(e<<4)|0;p=c+(e<<4)+8|0;r=e+1|0;q=c+(r<<4)|0;r=c+(r<<4)+8|0;j=e+2|0;i=c+(j<<4)|0;j=c+(j<<4)+8|0;k=c+(u<<4)|0;l=c+(u<<4)+8|0;g=0;while(1){if((g|0)>(s|0)){e=u;continue a}v=t*+(g|0);m=+h[o>>3];n=+h[p>>3];y=+h[q>>3];w=+h[r>>3];z=+h[i>>3];x=+h[j>>3];m=(y-m)*v+m;n=(w-n)*v+n;y=(z-y)*v+y;w=(x-w)*v+w;m=(y-m)*v+m;n=(w-n)*v+n;m=((z-y+(+h[k>>3]-z)*v)*v+y-m)*v+m;n=((x-w+(+h[l>>3]-x)*v)*v+w-n)*v+n;f=0;while(1){if((f|0)>=(b|0))break;if(n<=+h[a+(f<<5)+24>>3]+.0001?n>=+h[a+(f<<5)+8>>3]+-.0001:0){e=a+(f<<5)|0;if(+h[e>>3]>m)h[e>>3]=m;e=a+(f<<5)+16|0;if(+h[e>>3]<m)h[e>>3]=m}f=f+1|0}g=g+1|0}}return}function wJ(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=l;l=l+112|0;j=m+80|0;k=m+48|0;i=m+8|0;g=m;e=c[15686]|0;f=b+80|0;c[g>>2]=c[f>>2];g1(e,102242,g)|0;g=b+84|0;d=0;while(1){if((d|0)>=(c[f>>2]|0))break;r=c[g>>2]|0;q=+h[r+(d<<5)>>3];p=+h[r+(d<<5)+8>>3];o=+h[r+(d<<5)+16>>3];n=+h[r+(d<<5)+24>>3];c[i>>2]=d;h[i+8>>3]=q;h[i+16>>3]=p;h[i+24>>3]=o;h[i+32>>3]=n;g1(e,102253,i)|0;d=d+1|0}q=+h[b+8>>3];p=+h[b+16>>3];r=a[b+29>>0]|0?102284:102296;h[k>>3]=+h[b>>3];h[k+8>>3]=q;h[k+16>>3]=p;c[k+24>>2]=r;g1(e,102312,k)|0;p=+h[b+48>>3];q=+h[b+56>>3];r=a[b+69>>0]|0?102284:102296;h[j>>3]=+h[b+40>>3];h[j+8>>3]=p;h[j+16>>3]=q;c[j+24>>2]=r;g1(e,102363,j)|0;l=m;return}function xJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;do if((b|0)>(c|0)&(d|0)>(a|0)){if(!((c|0)>(a|0)|(d|0)<(a|0))){a=d-a|0;break}if((b|0)<(c|0)|(b|0)>(d|0)){b=b-a|0;a=d-c|0;a=(b|0)<(a|0)?b:a;break}else{a=b-c|0;break}}else a=0;while(0);return a|0}function yJ(a,b){a=a|0;b=b|0;return tJ(a,b,1)|0}function zJ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+80|0;g=j;i=1;f=b;while(1){h=f;f=c[(c[f+16>>2]|0)+172>>2]|0;if(!((f|0)!=0&(h|0)!=(f|0)))break;else i=i+1|0}if((i|0)>=21)g=uH(i<<2)|0;h=0;f=b;while(1){if((h|0)>=(i|0))break;c[g+(h<<2)>>2]=f;h=h+1|0;f=c[(c[f+16>>2]|0)+172>>2]|0}AJ(a,g,i,d,e);if((i|0)>20)D_(g);l=j;return}function AJ(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0.0,M=0.0,N=0.0,P=0,Q=0;K=l;l=l+304|0;A=K+272|0;z=K+208|0;G=K+96|0;H=K+32|0;I=K+16|0;J=K;r=K+192|0;y=K+176|0;i=K+160|0;B=K+296|0;D=K+288|0;j=c[d>>2]|0;w=c[j>>2]&3;k=j+-48|0;E=c[((w|0)==2?j:k)+40>>2]|0;t=G+16|0;w=(c[(c[((w|0)==3?j:j+48|0)+40>>2]|0)+16>>2]|0)+16|0;x=j+16|0;F=(c[x>>2]|0)+16|0;c[z>>2]=c[w>>2];c[z+4>>2]=c[w+4>>2];c[z+8>>2]=c[w+8>>2];c[z+12>>2]=c[w+12>>2];c[A>>2]=c[F>>2];c[A+4>>2]=c[F+4>>2];c[A+8>>2]=c[F+8>>2];c[A+12>>2]=c[F+12>>2];BJ(r,z,A);c[G>>2]=c[r>>2];c[G+4>>2]=c[r+4>>2];c[G+8>>2]=c[r+8>>2];c[G+12>>2]=c[r+12>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[t+8>>2]=c[r+8>>2];c[t+12>>2]=c[r+12>>2];c[I>>2]=c[r>>2];c[I+4>>2]=c[r+4>>2];c[I+8>>2]=c[r+8>>2];c[I+12>>2]=c[r+12>>2];r=G+32|0;F=G+48|0;w=(c[E+16>>2]|0)+16|0;x=(c[x>>2]|0)+56|0;c[z>>2]=c[w>>2];c[z+4>>2]=c[w+4>>2];c[z+8>>2]=c[w+8>>2];c[z+12>>2]=c[w+12>>2];c[A>>2]=c[x>>2];c[A+4>>2]=c[x+4>>2];c[A+8>>2]=c[x+8>>2];c[A+12>>2]=c[x+12>>2];BJ(y,z,A);c[F>>2]=c[y>>2];c[F+4>>2]=c[y+4>>2];c[F+8>>2]=c[y+8>>2];c[F+12>>2]=c[y+12>>2];c[r>>2]=c[y>>2];c[r+4>>2]=c[y+4>>2];c[r+8>>2]=c[y+8>>2];c[r+12>>2]=c[y+12>>2];c[J>>2]=c[y>>2];c[J+4>>2]=c[y+4>>2];c[J+8>>2]=c[y+8>>2];c[J+12>>2]=c[y+12>>2];a:do if((e|0)!=1&(a[191874]|0)==0){m=+h[G>>3];n=+h[F>>3];L=m-n;o=+h[G+8>>3];p=+h[G+56>>3];s=o-p;q=s*s;if(q+L*L<1.0e-06){c[t>>2]=c[G>>2];c[t+4>>2]=c[G+4>>2];c[t+8>>2]=c[G+8>>2];c[t+12>>2]=c[G+12>>2];c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];y=G+24|0;x=G+40|0;n=0.0;m=0.0}else{M=n-m;L=+C(+(q+M*M));w=c[(c[(c[b+60>>2]|0)+16>>2]|0)+248>>2]|0;N=+((O(w,e+-1|0)|0)/2|0|0);q=s*N/L;h[t>>3]=q+m;m=M*N/L;y=G+24|0;h[y>>3]=m+o;h[r>>3]=q+n;x=G+40|0;h[x>>3]=p+m;m=+(0-w|0);n=M*m/L;m=s*m/L}f=(f|0)==6;u=D+4|0;v=B+4|0;j=0;while(1){if((j|0)>=(e|0))break a;w=c[d+(j<<2)>>2]|0;k=w+-48|0;b:do if((c[((c[w>>2]&3|0)==2?w:k)+40>>2]|0)==(E|0)){c[I>>2]=c[G>>2];c[I+4>>2]=c[G+4>>2];c[I+8>>2]=c[G+8>>2];c[I+12>>2]=c[G+12>>2];c[J>>2]=c[F>>2];c[J+4>>2]=c[F+4>>2];c[J+8>>2]=c[F+8>>2];c[J+12>>2]=c[F+12>>2];i=0;while(1){if((i|0)==4)break b;P=H+(i<<4)|0;Q=G+(i<<4)|0;c[P>>2]=c[Q>>2];c[P+4>>2]=c[Q+4>>2];c[P+8>>2]=c[Q+8>>2];c[P+12>>2]=c[Q+12>>2];i=i+1|0}}else{c[I>>2]=c[F>>2];c[I+4>>2]=c[F+4>>2];c[I+8>>2]=c[F+8>>2];c[I+12>>2]=c[F+12>>2];c[J>>2]=c[G>>2];c[J+4>>2]=c[G+4>>2];c[J+8>>2]=c[G+8>>2];c[J+12>>2]=c[G+12>>2];i=0;while(1){if((i|0)==4)break b;Q=H+(3-i<<4)|0;P=G+(i<<4)|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];c[Q+8>>2]=c[P+8>>2];c[Q+12>>2]=c[P+12>>2];i=i+1|0}}while(0);if(f){c[u>>2]=4;c[D>>2]=z;i=0;while(1){if((i|0)==4)break;Q=z+(i<<4)|0;P=H+(i<<4)|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];c[Q+8>>2]=c[P+8>>2];c[Q+12>>2]=c[P+12>>2];i=i+1|0}c[A>>2]=c[D>>2];c[A+4>>2]=c[D+4>>2];oV(A,B);QK(w,c[((c[w>>2]&3|0)==2?w:k)+40>>2]|0,c[B>>2]|0,c[v>>2]|0,g)}else QK(w,c[((c[w>>2]&3|0)==2?w:k)+40>>2]|0,H,4,g);c[z>>2]=c[I>>2];c[z+4>>2]=c[I+4>>2];c[z+8>>2]=c[I+8>>2];c[z+12>>2]=c[I+12>>2];c[A>>2]=c[J>>2];c[A+4>>2]=c[J+4>>2];c[A+8>>2]=c[J+8>>2];c[A+12>>2]=c[J+12>>2];jL(b,w,z,A);h[t>>3]=+h[t>>3]+m;h[y>>3]=+h[y>>3]+n;h[r>>3]=+h[r>>3]+m;h[x>>3]=+h[x>>3]+n;j=j+1|0}}else{if((f|0)==4){CJ(i,b);c[A>>2]=c[i>>2];c[A+4>>2]=c[i+4>>2];c[A+8>>2]=c[i+8>>2];c[A+12>>2]=c[i+12>>2];DJ(G,A)}QK(j,c[((c[j>>2]&3|0)==2?j:k)+40>>2]|0,G,4,g);c[z>>2]=c[I>>2];c[z+4>>2]=c[I+4>>2];c[z+8>>2]=c[I+8>>2];c[z+12>>2]=c[I+12>>2];c[A>>2]=c[J>>2];c[A+4>>2]=c[J+4>>2];c[A+8>>2]=c[J+8>>2];c[A+12>>2]=c[J+12>>2];jL(b,j,z,A)}while(0);l=K;return}function BJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+h[c+8>>3]+ +h[b+8>>3];h[a>>3]=+h[c>>3]+ +h[b>>3];h[a+8>>3]=d;return}function CJ(a,b){a=a|0;b=b|0;b=c[b+16>>2]|0;h[22920]=(+h[b+32>>3]+ +h[b+16>>3])*.5;h[22921]=(+h[b+40>>3]+ +h[b+24>>3])*.5;c[a>>2]=c[45840];c[a+4>>2]=c[45841];c[a+8>>2]=c[45842];c[a+12>>2]=c[45843];return}function DJ(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,f=0.0,g=0.0,i=0.0;f=+h[a>>3];d=+h[a+48>>3];i=(d+f)*.5;g=+h[a+8>>3];c=+h[a+56>>3];e=(c+g)*.5;f=d-f;g=c-g;f=+C(+(g*g+f*f))*.2;g=+h[b>>3]-i;c=+h[b+8>>3]-e;d=+C(+(c*c+g*g));if(!(d==0.0)){g=i-g/d*f;i=e-c/d*f;h[a+32>>3]=g;h[a+16>>3]=g;h[a+40>>3]=i;h[a+24>>3]=i}return}function EJ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0.0,G=0,H=0.0,I=0.0,J=0.0;E=l;l=l+208|0;t=E+192|0;s=E+176|0;B=E+32|0;w=E+16|0;x=E;y=E+160|0;z=E+144|0;u=E+128|0;v=E+112|0;g=e&2130706432;A=(e&8|0)==0?((g|0)==0?4:g):8;if((A|0)==436207616)FJ(a,b,d,f);else{D=uH((d<<6)+64|0)|0;p=d+-1|0;q=x+8|0;r=w+8|0;o=12.0;e=0;while(1){if((e|0)>=(d|0))break;n=b+(e<<4)|0;c[w>>2]=c[n>>2];c[w+4>>2]=c[n+4>>2];c[w+8>>2]=c[n+8>>2];c[w+12>>2]=c[n+12>>2];if((e|0)<(p|0)){e=e+1|0;n=b+(e<<4)|0;c[x>>2]=c[n>>2];c[x+4>>2]=c[n+4>>2];c[x+8>>2]=c[n+8>>2];c[x+12>>2]=c[n+12>>2]}else{c[x>>2]=c[b>>2];c[x+4>>2]=c[b+4>>2];c[x+8>>2]=c[b+8>>2];c[x+12>>2]=c[b+12>>2];e=e+1|0}m=+h[x>>3]-+h[w>>3];F=+h[q>>3]-+h[r>>3];m=+C(+(F*F+m*m))*.3333333333333333;o=o<m?o:m}k=(g|16777216|0)==83886080;n=(A|0)==4;j=(g|0)==16777216;e=0;i=0;while(1){if((i|0)>=(d|0))break;g=b+(i<<4)|0;c[w>>2]=c[g>>2];c[w+4>>2]=c[g+4>>2];c[w+8>>2]=c[g+8>>2];c[w+12>>2]=c[g+12>>2];if((i|0)<(p|0)){g=b+(i+1<<4)|0;c[x>>2]=c[g>>2];c[x+4>>2]=c[g+4>>2];c[x+8>>2]=c[g+8>>2];c[x+12>>2]=c[g+12>>2]}else{c[x>>2]=c[b>>2];c[x+4>>2]=c[b+4>>2];c[x+8>>2]=c[b+8>>2];c[x+12>>2]=c[b+12>>2]}m=+h[x>>3]-+h[w>>3];F=+h[q>>3]-+h[r>>3];m=o/+C(+(F*F+m*m));m=k?m*.3333333333333333:j?m*.5:m;g=D+(e<<4)|0;if(n){c[s>>2]=c[w>>2];c[s+4>>2]=c[w+4>>2];c[s+8>>2]=c[w+8>>2];c[s+12>>2]=c[w+12>>2];c[t>>2]=c[x>>2];c[t+4>>2]=c[x+4>>2];c[t+8>>2]=c[x+8>>2];c[t+12>>2]=c[x+12>>2];GJ(y,m*.5,s,t);c[g>>2]=c[y>>2];c[g+4>>2]=c[y+4>>2];c[g+8>>2]=c[y+8>>2];c[g+12>>2]=c[y+12>>2]}else{c[g>>2]=c[w>>2];c[g+4>>2]=c[w+4>>2];c[g+8>>2]=c[w+8>>2];c[g+12>>2]=c[w+12>>2]}g=D+(e+1<<4)|0;c[s>>2]=c[w>>2];c[s+4>>2]=c[w+4>>2];c[s+8>>2]=c[w+8>>2];c[s+12>>2]=c[w+12>>2];c[t>>2]=c[x>>2];c[t+4>>2]=c[x+4>>2];c[t+8>>2]=c[x+8>>2];c[t+12>>2]=c[x+12>>2];GJ(z,m,s,t);c[g>>2]=c[z>>2];c[g+4>>2]=c[z+4>>2];c[g+8>>2]=c[z+8>>2];c[g+12>>2]=c[z+12>>2];g=e+3|0;G=D+(e+2<<4)|0;c[s>>2]=c[w>>2];c[s+4>>2]=c[w+4>>2];c[s+8>>2]=c[w+8>>2];c[s+12>>2]=c[w+12>>2];c[t>>2]=c[x>>2];c[t+4>>2]=c[x+4>>2];c[t+8>>2]=c[x+8>>2];c[t+12>>2]=c[x+12>>2];GJ(u,1.0-m,s,t);c[G>>2]=c[u>>2];c[G+4>>2]=c[u+4>>2];c[G+8>>2]=c[u+8>>2];c[G+12>>2]=c[u+12>>2];if(n){G=D+(g<<4)|0;c[s>>2]=c[w>>2];c[s+4>>2]=c[w+4>>2];c[s+8>>2]=c[w+8>>2];c[s+12>>2]=c[w+12>>2];c[t>>2]=c[x>>2];c[t+4>>2]=c[x+4>>2];c[t+8>>2]=c[x+8>>2];c[t+12>>2]=c[x+12>>2];GJ(v,1.0-m*.5,s,t);c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[G+8>>2]=c[v+8>>2];c[G+12>>2]=c[v+12>>2];e=e+4|0}else e=g;i=i+1|0}k=D+(e<<4)|0;c[k>>2]=c[D>>2];c[k+4>>2]=c[D+4>>2];c[k+8>>2]=c[D+8>>2];c[k+12>>2]=c[D+12>>2];k=D+(e+1<<4)|0;j=D+16|0;c[k>>2]=c[j>>2];c[k+4>>2]=c[j+4>>2];c[k+8>>2]=c[j+8>>2];c[k+12>>2]=c[j+12>>2];e=D+(e+2<<4)|0;k=D+32|0;c[e>>2]=c[k>>2];c[e+4>>2]=c[k+4>>2];c[e+8>>2]=c[k+8>>2];c[e+12>>2]=c[k+12>>2];e=A&2147483647;a:do if((e|0)<201326592){if((e|0)>=83886080){if((e|0)<134217728){if((e|0)<100663296){switch(e|0){case 83886080:break;default:break a}if((d|0)==4){G=uH(192)|0;c[G>>2]=c[b>>2];c[G+4>>2]=c[b+4>>2];c[G+8>>2]=c[b+8>>2];c[G+12>>2]=c[b+12>>2];p=G+16|0;t=b+16|0;c[p>>2]=c[t>>2];c[p+4>>2]=c[t+4>>2];c[p+8>>2]=c[t+8>>2];c[p+12>>2]=c[t+12>>2];p=D+48|0;t=D+64|0;o=+h[t>>3];n=G+32|0;h[n>>3]=o;q=D+56|0;r=D+72|0;H=+h[r>>3];z=G+40|0;h[z>>3]=H;F=+h[p>>3]+o-+h[k>>3];u=G+48|0;h[u>>3]=F;J=+h[q>>3]+H-+h[D+40>>3];x=G+56|0;h[x>>3]=J;I=+h[t>>3]+F-+h[p>>3];p=G+64|0;h[p>>3]=I;m=+h[r>>3]+J-+h[q>>3];q=G+72|0;h[q>>3]=m;r=G+80|0;h[r>>3]=o+I-F;h[G+88>>3]=H+m-J;t=D+96|0;v=D+80|0;J=+h[v>>3];d=G+144|0;h[d>>3]=J;w=D+104|0;s=D+88|0;m=+h[s>>3];h[G+152>>3]=m;H=+h[t>>3]+J-+h[D+112>>3];y=G+128|0;h[y>>3]=H;F=+h[w>>3]+m-+h[D+120>>3];A=G+136|0;h[A>>3]=F;I=+h[v>>3]+H-+h[t>>3];t=G+112|0;h[t>>3]=I;o=+h[s>>3]+F-+h[w>>3];w=G+120|0;h[w>>3]=o;s=G+96|0;h[s>>3]=J+I-H;v=G+104|0;h[v>>3]=m+o-F;k=G+160|0;j=b+32|0;c[k>>2]=c[j>>2];c[k+4>>2]=c[j+4>>2];c[k+8>>2]=c[j+8>>2];c[k+12>>2]=c[j+12>>2];k=G+176|0;b=b+48|0;c[k>>2]=c[b>>2];c[k+4>>2]=c[b+4>>2];c[k+8>>2]=c[b+8>>2];c[k+12>>2]=c[b+12>>2];_O(a,G,12,f);c[B>>2]=c[n>>2];c[B+4>>2]=c[n+4>>2];c[B+8>>2]=c[n+8>>2];c[B+12>>2]=c[n+12>>2];F=+h[n>>3];o=+h[u>>3];F=F+F-o;u=B+16|0;h[u>>3]=F;m=+h[z>>3];H=+h[x>>3];m=m+m-H;x=B+24|0;h[x>>3]=m;z=B+32|0;h[z>>3]=+h[p>>3]+F-o;b=B+40|0;h[b>>3]=+h[q>>3]+m-H;f=B+48|0;c[f>>2]=c[r>>2];c[f+4>>2]=c[r+4>>2];c[f+8>>2]=c[r+8>>2];c[f+12>>2]=c[r+12>>2];bP(a,B,4);c[B>>2]=c[s>>2];c[B+4>>2]=c[s+4>>2];c[B+8>>2]=c[s+8>>2];c[B+12>>2]=c[s+12>>2];H=+h[s>>3];m=+h[t>>3];H=H-(m-H);h[u>>3]=H;o=+h[v>>3];F=+h[w>>3];o=o-(F-o);h[x>>3]=o;h[z>>3]=+h[y>>3]+H-m;h[b>>3]=+h[A>>3]+o-F;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];bP(a,B,4);D_(G);break}else qa(102412,102423,737,102432)}if((e|0)<117440512){switch(e|0){case 100663296:break;default:break a}y=d+5|0;G=uH(y<<4)|0;z=b+16|0;H=+h[z>>3];H=(+h[b>>3]-H)*.625+H;h[G>>3]=H;A=b+40|0;J=+h[A>>3];d=b+24|0;v=D+48|0;w=D+56|0;x=D+72|0;J=(+h[d>>3]-J)*.5+J+(+h[w>>3]-+h[x>>3])*1.5;h[G+8>>3]=J;I=+h[z>>3];I=(+h[b>>3]-I)*.25+I;h[G+16>>3]=I;h[G+24>>3]=J;h[G+32>>3]=I;F=+h[A>>3];h[G+40>>3]=(+h[d>>3]-F)*.5+F;I=(+h[k>>3]-+h[v>>3])*.5+I;h[G+48>>3]=I;F=+h[A>>3];h[G+56>>3]=(+h[d>>3]-F)*.5+F;h[G+64>>3]=I;I=+h[A>>3];I=(+h[d>>3]-I)*.5+I+(+h[w>>3]-+h[x>>3]);h[G+72>>3]=I;h[G+80>>3]=H;h[G+88>>3]=I;h[G+96>>3]=H;I=I-(+h[w>>3]-+h[x>>3])*.25;h[G+104>>3]=I;h[G+112>>3]=+h[k>>3]+H-+h[v>>3];h[G+120>>3]=(+h[w>>3]-+h[x>>3])*.5+I;h[G+128>>3]=+h[G>>3];h[G+136>>3]=(+h[w>>3]-+h[x>>3])*.25+J;_O(a,G,y,f);h[B>>3]=+h[z>>3];J=+h[A>>3];h[B+8>>3]=(+h[d>>3]-J)*.5+J;h[B+16>>3]=+h[b>>3];h[B+24>>3]=(+h[b+8>>3]-+h[b+56>>3])*.5+J;bP(a,B,2);D_(G);break}else{switch(e|0){case 117440512:break;default:break a}d=d+1|0;G=uH(d<<4)|0;h[G>>3]=+h[j>>3];z=D+56|0;A=D+72|0;h[G+8>>3]=+h[D+24>>3]-(+h[z>>3]-+h[A>>3])*.5;h[G+16>>3]=+h[D+48>>3];J=+h[z>>3];h[G+24>>3]=J-(J-+h[A>>3])*.5;h[G+32>>3]=+h[b+32>>3];B=b+40|0;h[G+40>>3]=(+h[z>>3]-+h[A>>3])*.5+ +h[B>>3];h[G+48>>3]=+h[j>>3];h[G+56>>3]=(+h[z>>3]-+h[A>>3])*.5+ +h[B>>3];J=+h[b+8>>3];h[G+72>>3]=J-(J-+h[b+56>>3])*.5;h[G+64>>3]=+h[b>>3];_O(a,G,d,f);D_(G);break}}if((e|0)<167772160)if((e|0)<150994944){switch(e|0){case 134217728:break;default:break a}y=d+4|0;G=uH(y<<4)|0;z=b+16|0;F=+h[z>>3];x=D+48|0;F=(+h[b>>3]-F)*.5+F+(+h[k>>3]-+h[x>>3])*.25;h[G>>3]=F;A=b+40|0;J=+h[A>>3];d=b+24|0;J=(+h[d>>3]-J)*.5+J;h[G+8>>3]=J;h[G+16>>3]=F;v=D+56|0;w=D+72|0;H=(+h[v>>3]-+h[w>>3])*.5+J;h[G+24>>3]=H;F=(+h[k>>3]-+h[x>>3])*.5+F;h[G+32>>3]=F;h[G+40>>3]=H;h[G+48>>3]=F;F=(+h[v>>3]-+h[w>>3])*.5+H;h[G+56>>3]=F;I=+h[z>>3];I=(+h[b>>3]-I)*.5+I+(+h[k>>3]-+h[x>>3])*-.75;h[G+64>>3]=I;h[G+72>>3]=F;h[G+80>>3]=I;h[G+88>>3]=H;I=+h[z>>3];I=(+h[b>>3]-I)*.5+I+(+h[k>>3]-+h[x>>3])*-.25;h[G+96>>3]=I;h[G+104>>3]=H;h[G+112>>3]=I;h[G+120>>3]=J;_O(a,G,y,f);h[B>>3]=+h[z>>3];J=+h[A>>3];h[B+8>>3]=(+h[d>>3]-J)*.5+J;h[B+16>>3]=+h[b>>3];h[B+24>>3]=(+h[b+8>>3]-+h[b+56>>3])*.5+J;bP(a,B,2);D_(G);break}else{switch(e|0){case 150994944:break;default:break a}y=d+2|0;G=uH(y<<4)|0;z=b+16|0;H=+h[z>>3];x=D+48|0;H=(+h[b>>3]-H)*.5+H+(+h[k>>3]-+h[x>>3])*.75;h[G>>3]=H;A=b+40|0;J=+h[A>>3];d=b+24|0;J=(+h[d>>3]-J)*.5+J;h[G+8>>3]=J;h[G+16>>3]=H;v=D+56|0;w=D+72|0;H=(+h[v>>3]-+h[w>>3])*.25+J;h[G+24>>3]=H;I=+h[z>>3];h[G+32>>3]=(+h[b>>3]-I)*.5+I+(+h[k>>3]-+h[x>>3])*.25;I=(+h[v>>3]-+h[w>>3])*.5+H;h[G+40>>3]=I;F=+h[z>>3];h[G+48>>3]=(+h[b>>3]-F)*.5+F+(+h[k>>3]-+h[x>>3])*-.25;h[G+56>>3]=I;I=+h[z>>3];I=(+h[b>>3]-I)*.5+I+(+h[k>>3]-+h[x>>3])*-.75;h[G+64>>3]=I;h[G+72>>3]=H;h[G+80>>3]=I;h[G+88>>3]=J;_O(a,G,y,f);h[B>>3]=+h[z>>3];J=+h[A>>3];h[B+8>>3]=(+h[d>>3]-J)*.5+J;h[B+16>>3]=+h[b>>3];h[B+24>>3]=(+h[b+8>>3]-+h[b+56>>3])*.5+J;bP(a,B,2);D_(G);break}else if((e|0)<184549376){switch(e|0){case 167772160:break;default:break a}y=d+1|0;G=uH(y<<4)|0;z=b+16|0;H=+h[z>>3];v=D+48|0;H=+h[k>>3]+H+(+h[b>>3]-H)*.5-+h[v>>3];h[G>>3]=H;A=b+40|0;J=+h[A>>3];d=b+24|0;w=D+56|0;x=D+72|0;J=(+h[d>>3]-J)*.5+J+(+h[w>>3]-+h[x>>3])*.25;h[G+8>>3]=J;H=H-+h[k>>3]+ +h[v>>3];h[G+16>>3]=H;h[G+24>>3]=+h[w>>3]+J-+h[x>>3];h[G+32>>3]=H;H=(+h[w>>3]-+h[x>>3])*.5+J;h[G+40>>3]=H;I=+h[z>>3];I=(+h[b>>3]-I)*.25+I;h[G+48>>3]=I;h[G+56>>3]=H;h[G+64>>3]=I;h[G+72>>3]=J;_O(a,G,y,f);h[B>>3]=+h[z>>3];J=+h[A>>3];h[B+8>>3]=(+h[d>>3]-J)*.5+J;h[B+16>>3]=+h[b>>3];h[B+24>>3]=(+h[b+8>>3]-+h[b+56>>3])*.5+J;bP(a,B,2);D_(G);break}else{switch(e|0){case 184549376:break;default:break a}z=d+4|0;G=uH(z<<4)|0;y=b+16|0;H=+h[y>>3];I=+h[b>>3]-H;u=D+48|0;I=I*.125+H+(+h[k>>3]-+h[u>>3]+I)*.5;h[G>>3]=I;w=b+40|0;H=+h[w>>3];x=b+24|0;d=D+56|0;v=D+72|0;H=(+h[x>>3]-H)*.5+H+(+h[d>>3]-+h[v>>3])*.25;h[G+8>>3]=H;J=+h[y>>3];J=(+h[b>>3]-J)*.375+J;h[G+16>>3]=J;h[G+24>>3]=H;h[G+32>>3]=J;H=(+h[d>>3]-+h[v>>3])*.5+H;h[G+40>>3]=H;J=J-(+h[k>>3]-+h[u>>3])*.5;h[G+48>>3]=J;h[G+56>>3]=H;A=G+64|0;h[A>>3]=J;J=+h[w>>3];J=(+h[x>>3]-J)*.5+J+(+h[d>>3]-+h[v>>3])*-.25;h[G+72>>3]=J;H=I-(+h[k>>3]-+h[u>>3])*.5;h[G+80>>3]=H;h[G+88>>3]=J;h[G+96>>3]=H;J=J-(+h[d>>3]-+h[v>>3])*.5;h[G+104>>3]=J;v=G+112|0;h[v>>3]=I;h[G+120>>3]=J;_O(a,G,z,f);h[B>>3]=+h[y>>3];J=+h[w>>3];y=B+8|0;h[y>>3]=(+h[x>>3]-J)*.5+J;z=B+16|0;h[z>>3]=+h[A>>3];A=b+8|0;d=b+56|0;f=B+24|0;h[f>>3]=(+h[A>>3]-+h[d>>3])*.5+J;bP(a,B,2);h[B>>3]=+h[v>>3];J=+h[w>>3];h[y>>3]=(+h[x>>3]-J)*.5+J;h[z>>3]=+h[b>>3];h[f>>3]=(+h[A>>3]-+h[d>>3])*.5+J;bP(a,B,2);D_(G);break}}if((e|0)<33554432){if((e|0)<8){switch(e|0){case 4:break;default:break a}i=vH((d*96|0)+32|0)|0;e=0;g=0;while(1){j=g|1;k=i+(g<<4)|0;if((e|0)>=(d|0))break;b=e<<2;G=D+(b<<4)|0;c[k>>2]=c[G>>2];c[k+4>>2]=c[G+4>>2];c[k+8>>2]=c[G+8>>2];c[k+12>>2]=c[G+12>>2];G=i+(j<<4)|0;B=D+((b|1)<<4)|0;c[G>>2]=c[B>>2];c[G+4>>2]=c[B+4>>2];c[G+8>>2]=c[B+8>>2];c[G+12>>2]=c[B+12>>2];G=i+(g+2<<4)|0;c[G>>2]=c[B>>2];c[G+4>>2]=c[B+4>>2];c[G+8>>2]=c[B+8>>2];c[G+12>>2]=c[B+12>>2];G=i+(g+3<<4)|0;B=D+((b|2)<<4)|0;c[G>>2]=c[B>>2];c[G+4>>2]=c[B+4>>2];c[G+8>>2]=c[B+8>>2];c[G+12>>2]=c[B+12>>2];G=i+(g+4<<4)|0;c[G>>2]=c[B>>2];c[G+4>>2]=c[B+4>>2];c[G+8>>2]=c[B+8>>2];c[G+12>>2]=c[B+12>>2];G=i+(g+5<<4)|0;b=D+((b|3)<<4)|0;c[G>>2]=c[b>>2];c[G+4>>2]=c[b+4>>2];c[G+8>>2]=c[b+8>>2];c[G+12>>2]=c[b+12>>2];e=e+1|0;g=g+6|0}c[k>>2]=c[i>>2];c[k+4>>2]=c[i+4>>2];c[k+8>>2]=c[i+8>>2];c[k+12>>2]=c[i+12>>2];d=i+(j<<4)|0;G=i+16|0;c[d>>2]=c[G>>2];c[d+4>>2]=c[G+4>>2];c[d+8>>2]=c[G+8>>2];c[d+12>>2]=c[G+12>>2];aP(a,G,j,0,0,f&255);D_(i);break}if((e|0)<16777216){switch(e|0){case 8:break;default:break a}_O(a,b,d,f);g=B+16|0;e=0;while(1){if((e|0)>=(d|0))break a;G=e*3|0;f=D+(G+2<<4)|0;c[B>>2]=c[f>>2];c[B+4>>2]=c[f+4>>2];c[B+8>>2]=c[f+8>>2];c[B+12>>2]=c[f+12>>2];G=D+(G+4<<4)|0;c[g>>2]=c[G>>2];c[g+4>>2]=c[G+4>>2];c[g+8>>2]=c[G+8>>2];c[g+12>>2]=c[G+12>>2];bP(a,B,2);e=e+1|0}}switch(e|0){case 16777216:break;default:break a}g=d+1|0;i=uH(g<<4)|0;e=1;while(1){if((e|0)>=(d|0))break;G=i+(e<<4)|0;A=b+(e<<4)|0;c[G>>2]=c[A>>2];c[G+4>>2]=c[A+4>>2];c[G+8>>2]=c[A+8>>2];c[G+12>>2]=c[A+12>>2];e=e+1|0}b=d*3|0;A=D+(b+1<<4)|0;c[i>>2]=c[A>>2];c[i+4>>2]=c[A+4>>2];c[i+8>>2]=c[A+8>>2];c[i+12>>2]=c[A+12>>2];d=i+(d<<4)|0;G=D+(b+-1<<4)|0;c[d>>2]=c[G>>2];c[d+4>>2]=c[G+4>>2];c[d+8>>2]=c[G+8>>2];c[d+12>>2]=c[G+12>>2];_O(a,i,g,f);D_(i);c[B>>2]=c[G>>2];c[B+4>>2]=c[G+4>>2];c[B+8>>2]=c[G+8>>2];c[B+12>>2]=c[G+12>>2];G=B+16|0;c[G>>2]=c[A>>2];c[G+4>>2]=c[A+4>>2];c[G+8>>2]=c[A+8>>2];c[G+12>>2]=c[A+12>>2];f=B+32|0;h[f>>3]=+h[B>>3]+ +h[G>>3]-+h[D+(b<<4)>>3];h[B+40>>3]=+h[B+8>>3]+ +h[B+24>>3]-+h[D+(b<<4)+8>>3];bP(a,G,2);c[G>>2]=c[f>>2];c[G+4>>2]=c[f+4>>2];c[G+8>>2]=c[f+8>>2];c[G+12>>2]=c[f+12>>2];bP(a,B,2);break}else{if((e|0)<50331648){switch(e|0){case 33554432:break;default:break a}g=d+2|0;i=uH(g<<4)|0;c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];j=i+16|0;c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];j=D+48|0;d=D+64|0;h[i+32>>3]=(+h[j>>3]-+h[d>>3])*.3333333333333333+ +h[k>>3];G=D+56|0;e=D+72|0;h[i+40>>3]=(+h[G>>3]-+h[e>>3])*.3333333333333333+ +h[D+40>>3];J=+h[j>>3];h[i+48>>3]=(J-+h[d>>3])*.3333333333333333+J;J=+h[G>>3];h[i+56>>3]=(J-+h[e>>3])*.3333333333333333+J;e=4;while(1){if((e|0)>=(g|0))break;G=i+(e<<4)|0;d=b+(e+-2<<4)|0;c[G>>2]=c[d>>2];c[G+4>>2]=c[d+4>>2];c[G+8>>2]=c[d+8>>2];c[G+12>>2]=c[d+12>>2];e=e+1|0}_O(a,i,g,f);D_(i);c[B>>2]=c[j>>2];c[B+4>>2]=c[j+4>>2];c[B+8>>2]=c[j+8>>2];c[B+12>>2]=c[j+12>>2];G=B+16|0;c[G>>2]=c[k>>2];c[G+4>>2]=c[k+4>>2];c[G+8>>2]=c[k+8>>2];c[G+12>>2]=c[k+12>>2];bP(a,B,2);break}if((e|0)>=67108864){switch(e|0){case 67108864:break;default:break a}if((d|0)==4){G=uH(96)|0;c[G>>2]=c[b>>2];c[G+4>>2]=c[b+4>>2];c[G+8>>2]=c[b+8>>2];c[G+12>>2]=c[b+12>>2];d=G+16|0;c[d>>2]=c[k>>2];c[d+4>>2]=c[k+4>>2];c[d+8>>2]=c[k+8>>2];c[d+12>>2]=c[k+12>>2];d=G+32|0;A=D+64|0;c[d>>2]=c[A>>2];c[d+4>>2]=c[A+4>>2];c[d+8>>2]=c[A+8>>2];c[d+12>>2]=c[A+12>>2];d=G+48|0;b=b+32|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=G+64|0;d=D+128|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];b=G+80|0;z=D+160|0;c[b>>2]=c[z>>2];c[b+4>>2]=c[z+4>>2];c[b+8>>2]=c[z+8>>2];c[b+12>>2]=c[z+12>>2];_O(a,G,6,f);D_(G);h[B>>3]=+h[D+176>>3]+ +h[j>>3]-+h[D>>3];h[B+8>>3]=+h[D+184>>3]+ +h[D+24>>3]-+h[D+8>>3];G=B+16|0;c[G>>2]=c[A>>2];c[G+4>>2]=c[A+4>>2];c[G+8>>2]=c[A+8>>2];c[G+12>>2]=c[A+12>>2];bP(a,B,2);c[G>>2]=c[d>>2];c[G+4>>2]=c[d+4>>2];c[G+8>>2]=c[d+8>>2];c[G+12>>2]=c[d+12>>2];bP(a,B,2);c[G>>2]=c[D>>2];c[G+4>>2]=c[D+4>>2];c[G+8>>2]=c[D+8>>2];c[G+12>>2]=c[D+12>>2];bP(a,B,2);break}else qa(102412,102423,714,102432)}switch(e|0){case 50331648:break;default:break a}g=d+3|0;i=uH(g<<4)|0;c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];J=+h[b>>3];h[i+16>>3]=J-(J-+h[j>>3])*.25;e=D+56|0;J=(+h[e>>3]-+h[D+72>>3])*.3333333333333333+ +h[b+8>>3];h[i+24>>3]=J;I=+h[b>>3];h[i+32>>3]=I-(I-+h[j>>3])*2.0;h[i+40>>3]=J;J=+h[b>>3];h[i+48>>3]=J-(J-+h[j>>3])*2.25;h[i+56>>3]=+h[e>>3];h[i+64>>3]=+h[D+48>>3];h[i+72>>3]=+h[e>>3];e=4;while(1){if((e|0)>=(g|0))break;G=i+(e<<4)|0;d=b+(e+-3<<4)|0;c[G>>2]=c[d>>2];c[G+4>>2]=c[d+4>>2];c[G+8>>2]=c[d+8>>2];c[G+12>>2]=c[d+12>>2];e=e+1|0}_O(a,i,g,f);D_(i);break}}else if((e|0)<318767104){if((e|0)<251658240){if((e|0)<218103808){switch(e|0){case 201326592:break;default:break a}G=d<<4;u=uH(G)|0;v=b+16|0;J=+h[v>>3];h[u>>3]=J;z=b+40|0;I=+h[z>>3];A=b+24|0;y=D+48|0;w=D+56|0;x=D+72|0;I=(+h[A>>3]-I)*.5+I+(+h[w>>3]-+h[x>>3])*.125;h[u+8>>3]=I;H=(+h[k>>3]-+h[y>>3])*2.0+J;h[u+16>>3]=H;h[u+24>>3]=I;h[u+32>>3]=H;I=(+h[w>>3]-+h[x>>3])*.5+I;h[u+40>>3]=I;h[u+48>>3]=J;h[u+56>>3]=I;_O(a,u,d,f);D_(u);G=uH(G)|0;I=+h[k>>3]+ +h[v>>3]-+h[y>>3];h[G>>3]=I;J=+h[z>>3];J=(+h[A>>3]-J)*.5+J+(+h[w>>3]-+h[x>>3])*-.625;h[G+8>>3]=J;H=+h[k>>3]-+h[y>>3]+I;y=G+16|0;h[y>>3]=H;h[G+24>>3]=J;h[G+32>>3]=H;J=(+h[w>>3]-+h[x>>3])*.5+J;h[G+40>>3]=J;h[G+48>>3]=I;h[G+56>>3]=J;_O(a,G,d,f);h[B>>3]=+h[y>>3];J=+h[z>>3];h[B+8>>3]=(+h[A>>3]-J)*.5+J;h[B+16>>3]=+h[b>>3];h[B+24>>3]=(+h[b+8>>3]-+h[b+56>>3])*.5+J;bP(a,B,2);D_(G);break}if((e|0)<234881024){switch(e|0){case 218103808:break;default:break a}G=d<<4;w=uH(G)|0;J=+h[b>>3];h[w>>3]=J;y=b+40|0;I=+h[y>>3];z=b+24|0;x=D+56|0;A=D+72|0;I=(+h[z>>3]-I)*.5+I+(+h[x>>3]-+h[A>>3])*.125;h[w+8>>3]=I;h[w+16>>3]=J;H=(+h[x>>3]-+h[A>>3])*.5+I;h[w+24>>3]=H;J=J-(+h[x>>3]-+h[A>>3])*2.0;h[w+32>>3]=J;h[w+40>>3]=H;h[w+48>>3]=J;h[w+56>>3]=I;_O(a,w,d,f);D_(w);G=uH(G)|0;I=+h[b>>3]-+h[k>>3]+ +h[D+48>>3];h[G>>3]=I;J=+h[y>>3];J=(+h[z>>3]-J)*.5+J+(+h[x>>3]-+h[A>>3])*-.625;h[G+8>>3]=J;h[G+16>>3]=I;H=(+h[x>>3]-+h[A>>3])*.5+J;h[G+24>>3]=H;I=I-(+h[x>>3]-+h[A>>3]);h[G+32>>3]=I;h[G+40>>3]=H;A=G+48|0;h[A>>3]=I;h[G+56>>3]=J;_O(a,G,d,f);h[B>>3]=+h[b+16>>3];J=+h[y>>3];h[B+8>>3]=(+h[z>>3]-J)*.5+J;h[B+16>>3]=+h[A>>3];h[B+24>>3]=(+h[b+8>>3]-+h[b+56>>3])*.5+J;bP(a,B,2);D_(G);break}else{switch(e|0){case 234881024:break;default:break a}G=d<<4;y=uH(G)|0;u=b+16|0;I=+h[u>>3];v=D+48|0;I=(+h[b>>3]-I)*.5+I+(+h[k>>3]-+h[v>>3])*-1.125;h[y>>3]=I;w=b+40|0;J=+h[w>>3];x=b+24|0;A=D+56|0;z=D+72|0;J=(+h[x>>3]-J)*.5+J+(+h[A>>3]-+h[z>>3])*.125;h[y+8>>3]=J;H=+h[k>>3]-+h[v>>3]+I;h[y+16>>3]=H;h[y+24>>3]=J;h[y+32>>3]=H;J=(+h[A>>3]-+h[z>>3])*.5+J;h[y+40>>3]=J;h[y+48>>3]=I;h[y+56>>3]=J;_O(a,y,d,f);D_(y);y=uH(G)|0;J=+h[u>>3];J=(+h[b>>3]-J)*.5+J+(+h[k>>3]-+h[v>>3])*-1.125;h[y>>3]=J;I=+h[w>>3];I=(+h[x>>3]-I)*.5+I+(+h[A>>3]-+h[z>>3])*-.625;h[y+8>>3]=I;H=+h[k>>3]-+h[v>>3]+J;h[y+16>>3]=H;h[y+24>>3]=I;h[y+32>>3]=H;I=(+h[A>>3]-+h[z>>3])*.5+I;h[y+40>>3]=I;h[y+48>>3]=J;h[y+56>>3]=I;_O(a,y,d,f);D_(y);y=uH(G)|0;I=+h[u>>3];I=(+h[b>>3]-I)*.5+I+(+h[k>>3]-+h[v>>3])*.125;h[y>>3]=I;J=+h[w>>3];J=(+h[x>>3]-J)*.5+J+(+h[A>>3]-+h[z>>3])*-.625;h[y+8>>3]=J;H=+h[k>>3]-+h[v>>3]+I;h[y+16>>3]=H;h[y+24>>3]=J;h[y+32>>3]=H;J=(+h[A>>3]-+h[z>>3])*.5+J;h[y+40>>3]=J;h[y+48>>3]=I;h[y+56>>3]=J;_O(a,y,d,f);D_(y);G=uH(G)|0;J=+h[u>>3];J=(+h[b>>3]-J)*.5+J+(+h[k>>3]-+h[v>>3])*.125;h[G>>3]=J;I=+h[w>>3];I=(+h[x>>3]-I)*.5+I+(+h[A>>3]-+h[z>>3])*.125;h[G+8>>3]=I;H=+h[k>>3]-+h[v>>3]+J;y=G+16|0;h[y>>3]=H;h[G+24>>3]=I;h[G+32>>3]=H;I=(+h[A>>3]-+h[z>>3])*.5+I;h[G+40>>3]=I;h[G+48>>3]=J;h[G+56>>3]=I;_O(a,G,d,f);h[B>>3]=+h[y>>3];I=+h[w>>3];y=B+8|0;h[y>>3]=(+h[x>>3]-I)*.5+I;z=B+16|0;h[z>>3]=+h[b>>3];A=b+8|0;d=b+56|0;f=B+24|0;h[f>>3]=(+h[A>>3]-+h[d>>3])*.5+I;bP(a,B,2);I=+h[u>>3];h[B>>3]=(+h[b>>3]-I)*.5+I+(+h[k>>3]-+h[v>>3])*-1.125;J=+h[w>>3];h[y>>3]=(+h[x>>3]-J)*.5+J;h[z>>3]=I;h[f>>3]=(+h[A>>3]-+h[d>>3])*.5+J;bP(a,B,2);D_(G);break}}if((e|0)<285212672)if((e|0)<268435456){switch(e|0){case 251658240:break;default:break a}G=d<<4;u=uH(G)|0;v=b+16|0;J=+h[v>>3];y=D+48|0;J=J-+h[k>>3]+(+h[b>>3]-J)*.5+ +h[y>>3];h[u>>3]=J;w=b+40|0;I=+h[w>>3];x=b+24|0;A=D+56|0;z=D+72|0;I=(+h[x>>3]-I)*.5+I+(+h[A>>3]-+h[z>>3])*.125;h[u+8>>3]=I;H=(+h[k>>3]-+h[y>>3])*2.0+J;h[u+16>>3]=H;h[u+24>>3]=I;h[u+32>>3]=H;I=(+h[A>>3]-+h[z>>3])*.5+I;h[u+40>>3]=I;h[u+48>>3]=J;h[u+56>>3]=I;_O(a,u,d,f);D_(u);G=uH(G)|0;I=+h[v>>3];I=I-+h[k>>3]+(+h[b>>3]-I)*.5+ +h[y>>3];h[G>>3]=I;J=+h[w>>3];J=(+h[x>>3]-J)*.5+J+(+h[A>>3]-+h[z>>3])*-.625;h[G+8>>3]=J;H=(+h[k>>3]-+h[y>>3])*2.0+I;y=G+16|0;h[y>>3]=H;h[G+24>>3]=J;h[G+32>>3]=H;J=(+h[A>>3]-+h[z>>3])*.5+J;h[G+40>>3]=J;h[G+48>>3]=I;h[G+56>>3]=J;_O(a,G,d,f);h[B>>3]=+h[y>>3];J=+h[w>>3];y=B+8|0;h[y>>3]=(+h[x>>3]-J)*.5+J;z=B+16|0;h[z>>3]=+h[b>>3];A=b+8|0;d=b+56|0;f=B+24|0;h[f>>3]=(+h[A>>3]-+h[d>>3])*.5+J;bP(a,B,2);h[B>>3]=+h[v>>3];J=+h[w>>3];h[y>>3]=(+h[x>>3]-J)*.5+J;h[z>>3]=+h[G>>3];h[f>>3]=(+h[A>>3]-+h[d>>3])*.5+J;bP(a,B,2);D_(G);break}else{switch(e|0){case 268435456:break;default:break a}G=uH(d<<4)|0;h[G>>3]=+h[b>>3];v=D+48|0;x=D+56|0;y=D+72|0;h[G+8>>3]=+h[D+24>>3]-(+h[x>>3]-+h[y>>3])*.5;h[G+16>>3]=+h[v>>3];J=+h[x>>3];h[G+24>>3]=J-(J-+h[y>>3])*.5;h[G+32>>3]=+h[b+32>>3];z=b+40|0;h[G+40>>3]=(+h[x>>3]-+h[y>>3])*.5+ +h[z>>3];h[G+48>>3]=+h[b>>3];h[G+56>>3]=(+h[x>>3]-+h[y>>3])*.5+ +h[z>>3];_O(a,G,d,f);w=b+16|0;J=(+h[k>>3]-+h[v>>3])*.25;I=J+ +h[w>>3];h[B>>3]=I;H=+h[z>>3];u=b+24|0;F=+h[x>>3]-+h[y>>3];H=(+h[u>>3]-H)*.5+H+F*.125;A=B+8|0;h[A>>3]=H;d=B+16|0;h[d>>3]=J+I;f=B+24|0;h[f>>3]=H-F*.25;bP(a,B,2);F=(+h[k>>3]-+h[v>>3])*.25;H=F+ +h[w>>3];h[B>>3]=H;I=+h[z>>3];J=+h[x>>3]-+h[y>>3];I=(+h[u>>3]-I)*.5+I+J*-.125;h[A>>3]=I;h[d>>3]=F+H;h[f>>3]=J*.25+I;bP(a,B,2);I=(+h[k>>3]-+h[v>>3])*.25;h[B>>3]=I+ +h[w>>3];J=(+h[x>>3]-+h[y>>3])*.75+ +h[z>>3];h[A>>3]=J;h[d>>3]=+h[b>>3]-I;h[f>>3]=J;bP(a,B,2);D_(G);break}else if((e|0)<301989888){switch(e|0){case 285212672:break;default:break a}y=uH(d<<4)|0;v=b+16|0;I=+h[v>>3];z=D+48|0;I=(+h[k>>3]-+h[z>>3]+(+h[b>>3]-I))*.5+I;h[y>>3]=I;w=b+40|0;F=+h[w>>3];x=b+24|0;F=(+h[k>>3]-+h[z>>3]+(+h[x>>3]-F))*.5+F;h[y+8>>3]=F;h[y+16>>3]=I;I=+h[w>>3];o=+h[k>>3]-+h[z>>3];I=(+h[x>>3]-I-o)*.5+I;h[y+24>>3]=I;J=+h[v>>3];J=(+h[b>>3]-J-o)*.5+J;h[y+32>>3]=J;h[y+40>>3]=I;h[y+48>>3]=J;h[y+56>>3]=F;_O(a,y,d,f);D_(y);F=+h[v>>3];F=(+h[b>>3]-F)*.5+F;J=+h[k>>3]-+h[z>>3];I=J*.75;o=F+I;h[B>>3]=o;H=+h[w>>3];H=(+h[x>>3]-H)*.5+H;I=H+I;y=B+8|0;h[y>>3]=I;A=B+16|0;h[A>>3]=o;J=J*-.75;H=H+J;G=B+24|0;h[G>>3]=H;J=F+J;h[B+32>>3]=J;h[B+40>>3]=H;h[B+48>>3]=J;h[B+56>>3]=I;d=B+64|0;c[d>>2]=c[B>>2];c[d+4>>2]=c[B+4>>2];c[d+8>>2]=c[B+8>>2];c[d+12>>2]=c[B+12>>2];bP(a,B,5);I=+h[v>>3];J=+h[b>>3];h[B>>3]=(J-I)*.5+I+(+h[k>>3]-+h[z>>3])*.75;I=+h[w>>3];h[y>>3]=(+h[x>>3]-I)*.5+I;h[A>>3]=J;d=b+8|0;f=b+56|0;h[G>>3]=(+h[d>>3]-+h[f>>3])*.5+I;bP(a,B,2);I=+h[v>>3];h[B>>3]=I;J=+h[w>>3];h[y>>3]=(+h[x>>3]-J)*.5+J;h[A>>3]=(+h[b>>3]-I)*.5+I+(+h[k>>3]-+h[z>>3])*-.75;h[G>>3]=(+h[d>>3]-+h[f>>3])*.5+J;bP(a,B,2);break}else{switch(e|0){case 301989888:break;default:break a}A=d+12|0;G=uH(A<<4)|0;x=b+16|0;m=+h[x>>3];s=D+48|0;m=(+h[b>>3]-m)*.5+m+(+h[k>>3]-+h[s>>3])*.25;h[G>>3]=m;y=b+40|0;F=+h[y>>3];z=b+24|0;v=D+56|0;w=D+72|0;F=(+h[v>>3]-+h[w>>3]+(+h[z>>3]-F))*.5+F;u=G+8|0;h[u>>3]=F;h[G+16>>3]=m;F=(+h[v>>3]-+h[w>>3])*.125+F;t=G+24|0;h[t>>3]=F;H=m-(+h[k>>3]-+h[s>>3])*.125;d=G+32|0;h[d>>3]=H;o=(+h[v>>3]-+h[w>>3])*.125+F;h[G+40>>3]=o;h[G+48>>3]=m;I=(+h[v>>3]-+h[w>>3])*.125+o;h[G+56>>3]=I;h[G+64>>3]=m;m=(+h[v>>3]-+h[w>>3])*.125+I;h[G+72>>3]=m;h[G+80>>3]=H;h[G+88>>3]=m;H=+h[x>>3];H=(+h[b>>3]-H)*.5+H;h[G+96>>3]=H;h[G+104>>3]=I;J=H-(+h[k>>3]-+h[s>>3])*.125;h[G+112>>3]=J;h[G+120>>3]=m;J=J-(+h[k>>3]-+h[s>>3])*.125;h[G+128>>3]=J;h[G+136>>3]=m;h[G+144>>3]=J;h[G+152>>3]=I;I=(+h[k>>3]-+h[s>>3])*.125+J;h[G+160>>3]=I;h[G+168>>3]=o;h[G+176>>3]=J;h[G+184>>3]=F;h[G+192>>3]=J;J=+h[u>>3];h[G+200>>3]=J;h[G+208>>3]=I;h[G+216>>3]=J;u=G+224|0;h[u>>3]=H;h[G+232>>3]=+h[t>>3];h[G+240>>3]=+h[d>>3];h[G+248>>3]=J;_O(a,G,A,f);J=+h[u>>3];h[B>>3]=J;H=+h[y>>3];H=(+h[z>>3]-H)*.5+H;A=B+8|0;h[A>>3]=H;d=B+16|0;h[d>>3]=J;f=B+24|0;h[f>>3]=(+h[v>>3]-+h[w>>3])*.125+H;bP(a,B,2);H=+h[u>>3];h[B>>3]=H;J=+h[y>>3];I=+h[v>>3]-+h[w>>3];J=(+h[z>>3]-J)*.5+J+I*.25;h[A>>3]=J;h[d>>3]=H;h[f>>3]=I*.125+J;bP(a,B,2);h[B>>3]=+h[x>>3];J=+h[y>>3];h[A>>3]=(+h[z>>3]-J)*.5+J;h[d>>3]=+h[b>>3];h[f>>3]=(+h[b+8>>3]-+h[b+56>>3])*.5+J;bP(a,B,2);D_(G);break}}else{if((e|0)<369098752){if((e|0)<335544320){switch(e|0){case 318767104:break;default:break a}A=d+4|0;G=uH(A<<4)|0;x=b+16|0;H=+h[x>>3];d=D+48|0;H=(+h[b>>3]-H)*.5+H+(+h[k>>3]-+h[d>>3])*.125;h[G>>3]=H;y=b+40|0;J=+h[y>>3];z=b+24|0;v=D+56|0;w=D+72|0;J=(+h[v>>3]-+h[w>>3]+(+h[z>>3]-J))*.5+J;h[G+8>>3]=J;o=(+h[k>>3]-+h[d>>3])*.125+H;h[G+16>>3]=o;I=(+h[v>>3]-+h[w>>3])*.125+J;h[G+24>>3]=I;h[G+32>>3]=o;o=(+h[v>>3]-+h[w>>3])*.25+I;h[G+40>>3]=o;h[G+48>>3]=H;F=(+h[v>>3]-+h[w>>3])*.125+o;h[G+56>>3]=F;H=H-(+h[k>>3]-+h[d>>3])*.25;h[G+64>>3]=H;h[G+72>>3]=F;F=H-(+h[k>>3]-+h[d>>3])*.125;h[G+80>>3]=F;h[G+88>>3]=o;h[G+96>>3]=F;h[G+104>>3]=I;h[G+112>>3]=H;h[G+120>>3]=J;_O(a,G,A,f);J=+h[x>>3];J=(+h[b>>3]-J)*.5+J;h[B>>3]=J;H=+h[y>>3];H=(+h[z>>3]-H)*.5+H;A=B+8|0;h[A>>3]=H;d=B+16|0;h[d>>3]=J;f=B+24|0;h[f>>3]=(+h[v>>3]-+h[w>>3])*.125+H;bP(a,B,2);H=+h[x>>3];H=(+h[b>>3]-H)*.5+H;h[B>>3]=H;J=+h[y>>3];I=+h[v>>3]-+h[w>>3];J=(+h[z>>3]-J)*.5+J+I*.25;h[A>>3]=J;h[d>>3]=H;h[f>>3]=I*.125+J;bP(a,B,2);h[B>>3]=+h[x>>3];J=+h[y>>3];h[A>>3]=(+h[z>>3]-J)*.5+J;h[d>>3]=+h[b>>3];h[f>>3]=(+h[b+8>>3]-+h[b+56>>3])*.5+J;bP(a,B,2);D_(G);break}if((e|0)<352321536){switch(e|0){case 335544320:break;default:break a}x=d+12|0;G=uH(x<<4)|0;y=b+16|0;m=+h[y>>3];u=D+48|0;m=(+h[b>>3]-m)*.5+m+(+h[k>>3]-+h[u>>3])*.25;h[G>>3]=m;z=b+40|0;F=+h[z>>3];A=b+24|0;s=D+56|0;t=D+72|0;F=(+h[s>>3]-+h[t>>3]+(+h[A>>3]-F))*.5+F;d=G+8|0;h[d>>3]=F;h[G+16>>3]=m;F=(+h[s>>3]-+h[t>>3])*.125+F;v=G+24|0;h[v>>3]=F;I=m-(+h[k>>3]-+h[u>>3])*.125;w=G+32|0;h[w>>3]=I;o=(+h[s>>3]-+h[t>>3])*.125+F;h[G+40>>3]=o;h[G+48>>3]=m;H=(+h[s>>3]-+h[t>>3])*.125+o;h[G+56>>3]=H;h[G+64>>3]=m;m=(+h[s>>3]-+h[t>>3])*.125+H;h[G+72>>3]=m;h[G+80>>3]=I;h[G+88>>3]=m;I=+h[y>>3];I=(+h[b>>3]-I)*.5+I;h[G+96>>3]=I;h[G+104>>3]=H;J=I-(+h[k>>3]-+h[u>>3])*.125;h[G+112>>3]=J;h[G+120>>3]=m;J=J-(+h[k>>3]-+h[u>>3])*.125;h[G+128>>3]=J;h[G+136>>3]=m;h[G+144>>3]=J;h[G+152>>3]=H;H=(+h[k>>3]-+h[u>>3])*.125+J;h[G+160>>3]=H;h[G+168>>3]=o;h[G+176>>3]=J;h[G+184>>3]=F;h[G+192>>3]=J;J=+h[d>>3];h[G+200>>3]=J;h[G+208>>3]=H;h[G+216>>3]=J;d=G+224|0;h[d>>3]=I;h[G+232>>3]=+h[v>>3];h[G+240>>3]=+h[w>>3];h[G+248>>3]=J;_O(a,G,x,f);c[B>>2]=c[d>>2];c[B+4>>2]=c[d+4>>2];c[B+8>>2]=c[d+8>>2];c[B+12>>2]=c[d+12>>2];d=B+16|0;h[d>>3]=+h[B>>3];J=+h[z>>3];f=B+24|0;h[f>>3]=(+h[A>>3]-J)*.5+J;bP(a,B,2);h[B>>3]=+h[y>>3];J=+h[z>>3];h[B+8>>3]=(+h[A>>3]-J)*.5+J;h[d>>3]=+h[b>>3];h[f>>3]=(+h[b+8>>3]-+h[b+56>>3])*.5+J;bP(a,B,2);D_(G);break}else{switch(e|0){case 352321536:break;default:break a}A=d+4|0;G=uH(A<<4)|0;x=b+16|0;I=+h[x>>3];w=D+48|0;I=(+h[b>>3]-I)*.5+I+(+h[k>>3]-+h[w>>3])*.125;h[G>>3]=I;y=b+40|0;J=+h[y>>3];z=b+24|0;u=D+56|0;v=D+72|0;J=(+h[u>>3]-+h[v>>3]+(+h[z>>3]-J))*.5+J;d=G+8|0;h[d>>3]=J;o=(+h[k>>3]-+h[w>>3])*.125+I;h[G+16>>3]=o;H=(+h[u>>3]-+h[v>>3])*.125+J;h[G+24>>3]=H;h[G+32>>3]=o;o=(+h[u>>3]-+h[v>>3])*.25+H;h[G+40>>3]=o;h[G+48>>3]=I;F=(+h[u>>3]-+h[v>>3])*.125+o;h[G+56>>3]=F;I=I-(+h[k>>3]-+h[w>>3])*.25;h[G+64>>3]=I;h[G+72>>3]=F;F=I-(+h[k>>3]-+h[w>>3])*.125;h[G+80>>3]=F;h[G+88>>3]=o;h[G+96>>3]=F;h[G+104>>3]=H;h[G+112>>3]=I;h[G+120>>3]=J;_O(a,G,A,f);J=+h[x>>3];J=(+h[b>>3]-J)*.5+J;h[B>>3]=J;A=B+8|0;h[A>>3]=+h[d>>3];d=B+16|0;h[d>>3]=J;J=+h[y>>3];f=B+24|0;h[f>>3]=(+h[z>>3]-J)*.5+J;bP(a,B,2);h[B>>3]=+h[x>>3];J=+h[y>>3];h[A>>3]=(+h[z>>3]-J)*.5+J;h[d>>3]=+h[b>>3];h[f>>3]=(+h[b+8>>3]-+h[b+56>>3])*.5+J;bP(a,B,2);D_(G);break}}if((e|0)<402653184)if((e|0)<385875968){switch(e|0){case 369098752:break;default:break a}d=d+5|0;G=uH(d<<4)|0;B=D+48|0;h[G>>3]=+h[j>>3]-(+h[k>>3]-+h[B>>3])*.5;y=D+56|0;A=D+72|0;h[G+8>>3]=+h[D+24>>3]-(+h[y>>3]-+h[A>>3])*.5;h[G+16>>3]=+h[B>>3];J=+h[y>>3];h[G+24>>3]=J-(J-+h[A>>3])*.5;h[G+32>>3]=+h[b+32>>3];z=b+40|0;h[G+40>>3]=+h[z>>3];J=+h[k>>3];h[G+48>>3]=(J-+h[B>>3])*.5+J;h[G+56>>3]=+h[z>>3];J=+h[k>>3];h[G+64>>3]=(J-+h[B>>3])*.5+J;h[G+72>>3]=(+h[y>>3]-+h[A>>3])*.5+ +h[z>>3];h[G+80>>3]=+h[j>>3]-(+h[k>>3]-+h[B>>3])*.5;h[G+88>>3]=(+h[y>>3]-+h[A>>3])*.5+ +h[z>>3];h[G+96>>3]=+h[j>>3]-(+h[k>>3]-+h[B>>3])*.5;z=b+56|0;h[G+104>>3]=+h[z>>3];A=b+8|0;J=+h[A>>3];h[G+120>>3]=J-(J-+h[z>>3])*.5;h[G+112>>3]=+h[b>>3];h[G+136>>3]=+h[A>>3];h[G+128>>3]=+h[j>>3]-(+h[k>>3]-+h[B>>3])*.5;_O(a,G,d,f);D_(G);break}else{switch(e|0){case 385875968:break;default:break a}d=d+3|0;G=uH(d<<4)|0;B=D+48|0;h[G>>3]=+h[j>>3]-(+h[k>>3]-+h[B>>3])*.5;y=D+56|0;A=D+72|0;h[G+8>>3]=+h[D+24>>3]-(+h[y>>3]-+h[A>>3])*.5;h[G+16>>3]=+h[B>>3];J=+h[y>>3];h[G+24>>3]=J-(J-+h[A>>3])*.5;h[G+32>>3]=+h[b+32>>3];z=b+40|0;h[G+40>>3]=(+h[y>>3]-+h[A>>3])*.5+ +h[z>>3];h[G+48>>3]=+h[j>>3]-(+h[k>>3]-+h[B>>3])*.5;h[G+56>>3]=(+h[y>>3]-+h[A>>3])*.5+ +h[z>>3];h[G+64>>3]=+h[j>>3]-(+h[k>>3]-+h[B>>3])*.5;z=b+56|0;h[G+72>>3]=+h[z>>3];A=b+8|0;J=+h[A>>3];h[G+88>>3]=J-(J-+h[z>>3])*.5;h[G+80>>3]=+h[b>>3];h[G+104>>3]=+h[A>>3];h[G+96>>3]=+h[j>>3]-(+h[k>>3]-+h[B>>3])*.5;_O(a,G,d,f);D_(G);break}else if((e|0)<419430400){switch(e|0){case 402653184:break;default:break a}d=d+3|0;G=uH(d<<4)|0;h[G>>3]=+h[b>>3];y=b+8|0;z=D+48|0;A=D+56|0;B=D+72|0;h[G+8>>3]=+h[y>>3]-(+h[A>>3]-+h[B>>3])*.5;J=+h[k>>3];h[G+16>>3]=(J-+h[z>>3])*.5+J;h[G+24>>3]=+h[y>>3]-(+h[A>>3]-+h[B>>3])*.5;J=+h[k>>3];h[G+32>>3]=(J-+h[z>>3])*.5+J;h[G+40>>3]=+h[D+40>>3];h[G+48>>3]=+h[b+16>>3];J=+h[b+24>>3];y=b+40|0;h[G+56>>3]=J-(J-+h[y>>3])*.5;J=+h[k>>3];h[G+64>>3]=(J-+h[z>>3])*.5+J;h[G+72>>3]=+h[y>>3];h[G+88>>3]=(+h[A>>3]-+h[B>>3])*.5+ +h[y>>3];J=+h[k>>3];h[G+80>>3]=(J-+h[z>>3])*.5+J;h[G+104>>3]=(+h[A>>3]-+h[B>>3])*.5+ +h[b+56>>3];h[G+96>>3]=+h[b>>3];_O(a,G,d,f);D_(G);break}else{switch(e|0){case 419430400:break;default:break a}d=d+5|0;G=uH(d<<4)|0;h[G>>3]=+h[b>>3];B=b+8|0;A=D+48|0;y=D+56|0;z=D+72|0;h[G+8>>3]=+h[B>>3]-(+h[y>>3]-+h[z>>3])*.5;J=+h[k>>3];h[G+16>>3]=(J-+h[A>>3])*.5+J;h[G+24>>3]=+h[B>>3]-(+h[y>>3]-+h[z>>3])*.5;J=+h[k>>3];h[G+32>>3]=(J-+h[A>>3])*.5+J;h[G+40>>3]=+h[D+40>>3];h[G+48>>3]=+h[b+16>>3];J=+h[b+24>>3];B=b+40|0;h[G+56>>3]=J-(J-+h[B>>3])*.5;J=+h[k>>3];h[G+64>>3]=(J-+h[A>>3])*.5+J;h[G+72>>3]=+h[B>>3];h[G+88>>3]=(+h[y>>3]-+h[z>>3])*.5+ +h[B>>3];J=+h[k>>3];h[G+80>>3]=(J-+h[A>>3])*.5+J;B=b+56|0;h[G+104>>3]=(+h[y>>3]-+h[z>>3])*.5+ +h[B>>3];h[G+96>>3]=+h[j>>3]-(+h[k>>3]-+h[A>>3])*.5;h[G+112>>3]=+h[j>>3]-(+h[k>>3]-+h[A>>3])*.5;h[G+120>>3]=+h[B>>3];h[G+128>>3]=+h[b+48>>3];h[G+136>>3]=+h[B>>3];_O(a,G,d,f);D_(G);break}}while(0);D_(D)}l=E;return}function FJ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0.0;f=l;l=l+112|0;g=f;k=+h[b+8>>3]*2.0;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];h[g+16>>3]=+h[b+16>>3];h[g+24>>3]=k-+h[b+24>>3];h[g+32>>3]=+h[b+32>>3];h[g+40>>3]=k-+h[b+40>>3];h[g+48>>3]=+h[b+48>>3];h[g+56>>3]=k-+h[b+56>>3];h[g+64>>3]=+h[b+64>>3];h[g+72>>3]=k-+h[b+72>>3];h[g+80>>3]=+h[b+80>>3];h[g+88>>3]=k-+h[b+88>>3];i=g+96|0;j=b+96|0;c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];aP(a,b,d,0,0,e&255);aP(a,g,7,0,0,0);l=f;return}function GJ(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0.0,f=0.0;f=+h[c>>3];e=+h[c+8>>3];e=(+h[d+8>>3]-e)*b+e;h[a>>3]=(+h[d>>3]-f)*b+f;h[a+8>>3]=e;return}function HJ(a){a=a|0;a=c[(c[a+16>>2]|0)+8>>2]|0;if(a){a=c[c[a+4>>2]>>2]|0;if((a|0)!=89)if((a|0)==92)a=2;else return ((a|0)==91?3:(a|0)==94?4:0)|0;else a=1}else a=0;return a|0}function IJ(b){b=b|0;var d=0,e=0,f=0.0,g=0,i=0,j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0,D=0,G=0,H=0,I=0,J=0,L=0,M=0,N=0,P=0.0,Q=0.0,R=0,S=0,T=0.0,U=0.0,V=0.0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0.0;aa=l;l=l+144|0;J=aa+112|0;N=aa+104|0;G=aa+96|0;H=aa+88|0;i=aa+80|0;Y=aa+64|0;_=aa+48|0;R=aa+40|0;S=aa+32|0;j=aa+24|0;p=aa+16|0;D=aa+136|0;A=aa+128|0;L=aa;$=uH(48)|0;Z=b+16|0;W=c[(c[(c[Z>>2]|0)+8>>2]|0)+8>>2]|0;g=(W|0)==1616;X=c[W>>2]|0;d=c[W+4>>2]|0;e=c[W+8>>2]|0;m=+h[W+16>>3];n=+h[W+32>>3];o=+h[W+24>>3];X=X|(QL(xx(b,102485)|0)|0)&255;do if(!g){if(!X){W=c[Z>>2]|0;k=+h[W+32>>3]*72.0;f=+h[W+40>>3]*72.0;f=+(~~(f+(f>=0.0?.5:-.5))|0);k=+(~~(k+(k>=0.0?.5:-.5))|0);break}k=+SJ(b);if(k>0.0)f=k;else{W=c[Z>>2]|0;f=+h[W+32>>3];k=+h[W+40>>3];k=(f<k?f:k)*72.0;k=+(~~(k+(k>=0.0?.5:-.5))|0);f=k}}else{f=0.0;k=0.0}while(0);W=KL(b,c[46390]|0,d,0)|0;V=+LL(b,c[46392]|0,0.0,-360.0)+m;if(!e){U=+LL(b,c[46393]|0,0.0,-100.0);I=KL(b,c[46389]|0,4,0)|0;T=+LL(b,c[46394]|0,0.0,-100.0)}else{I=e;U=n;T=o}d=c[(c[Z>>2]|0)+104>>2]|0;e=d+24|0;c[Y>>2]=c[e>>2];c[Y+4>>2]=c[e+4>>2];c[Y+8>>2]=c[e+8>>2];c[Y+12>>2]=c[e+12>>2];q=+h[Y>>3];if(q>0.0){if(!g)M=11}else if(!(g|!(+h[Y+8>>3]>0.0)))M=11;if((M|0)==11){d=xx(b,102470)|0;do if(d){h[p>>3]=0.0;h[j>>3]=0.0;c[i>>2]=j;c[i+4>>2]=p;d=N1(d,102477,i)|0;m=+h[j>>3];if(m<0.0){h[j>>3]=0.0;m=0.0}n=+h[p>>3];if(n<0.0){h[p>>3]=0.0;o=0.0}else o=n;if((d|0)<=0){n=q+16.0;h[Y>>3]=n;m=8.0;break}m=m*72.0;m=+(~~(m+(m>=0.0?.5:-.5))<<1|0);n=q+m;h[Y>>3]=n;if((d|0)!=1){m=o*72.0;m=+(~~(m+(m>=0.0?.5:-.5))<<1|0)}}else{n=q+16.0;h[Y>>3]=n;m=8.0}while(0);d=Y+8|0;h[d>>3]=+h[d>>3]+m;d=c[(c[Z>>2]|0)+104>>2]|0;q=n}s=+h[d+24>>3];m=+h[c[(c[(ez(b)|0)+16>>2]|0)+8>>2]>>3];if(m>0.0){P=m*72.0;P=+(~~(P+(P>=0.0?.5:-.5))|0);Q=+TJ(q,P);h[Y>>3]=Q;p=Y+8|0;h[p>>3]=+TJ(+h[p>>3],P)}else Q=q;d=c[(c[Z>>2]|0)+8>>2]|0;do if(!(a[d+12>>0]|0)){e=xx(b,105999)|0;if((e|0)!=0?(a[e>>0]|0)!=0:0){CC(A,ez(b)|0,e);d=c[A>>2]|0;g=c[A+4>>2]|0;if((g&d|0)==-1){d=ry(b)|0;c[G>>2]=e;c[G+4>>2]=d;Pw(0,102561,G)|0;e=0;d=0;break}else{a[(c[(ez(b)|0)+16>>2]|0)+114>>0]=1;e=d+2|0;d=g+2|0;break}}else{e=0;d=0}}else{d=c[d>>2]|0;if((a[d>>0]|0)==99?(b$(d,102493)|0)==0:0){e=xx(b,102500)|0;CC(D,ez(b)|0,e);d=c[D>>2]|0;g=c[D+4>>2]|0;if((g&d|0)==-1){d=ry(b)|0;c[H>>2]=e|0?e:102510;c[H+4>>2]=d;Pw(0,102516,H)|0;e=0;d=0;break}else{a[(c[(ez(b)|0)+16>>2]|0)+114>>0]=1;e=d+2|0;d=g+2|0;break}}else{e=0;d=0}}while(0);P=+(e|0);h[_>>3]=Q>P?Q:P;P=+h[Y+8>>3];r=+(d|0);d=_+8|0;h[d>>3]=P>r?P:r;e=(I|0)<3&(T!=0.0|U!=0.0)?120:I;g=xx(b,102602)|0;if(!g)i=99;else{i=a[g>>0]|0;i=i<<24>>24==116?116:i<<24>>24==98?98:99}g=c[Z>>2]|0;a[(c[g+104>>2]|0)+80>>0]=i;if((e|0)==4?(T==0.0?((~~(V+(V>=0.0?.5:-.5))|0)%90|0|0)==0:0)&U==0.0:0)p=1;else M=39;do if((M|0)==39){g=c[(c[(c[g+8>>2]|0)+8>>2]|0)+44>>2]|0;if(g|0){p=c[g>>2]|0;c[J>>2]=c[_>>2];c[J+4>>2]=c[_+4>>2];c[J+8>>2]=c[_+8>>2];c[J+12>>2]=c[_+12>>2];ub[p&63](L,J);c[_>>2]=c[L>>2];c[_+4>>2]=c[L+4>>2];c[_+8>>2]=c[L+8>>2];c[_+12>>2]=c[L+12>>2];p=0;break}m=+h[d>>3];n=m*1.4142135623730951;if(f>n&i<<24>>24==99){o=m/f;o=+C(+(1.0/(1.0-o*o)));o=+h[_>>3]*o;h[_>>3]=o}else{o=+h[_>>3]*1.4142135623730951;h[_>>3]=o;h[d>>3]=n;m=n}if((e|0)>2){z=+E(+(3.141592653589793/+(e|0)));h[_>>3]=o/z;h[d>>3]=m/z;p=0}else p=0}while(0);m=+h[d>>3];g=NL(b,c[46395]|0,134226)|0;if((a[g>>0]|0)==115?(b$(g,105204)|0)==0:0){h[_>>3]=k;h[d>>3]=f;N=$+40|0;c[N>>2]=c[N>>2]|2048}else{if(!((QL(g)|0)<<24>>24)){z=+h[_>>3];k=k>z?k:z;h[_>>3]=k;z=+h[d>>3];f=f>z?f:z}else{M=c[(c[Z>>2]|0)+104>>2]|0;if(!(!(k<+h[M+24>>3])?!(f<+h[M+32>>3]):0)){L=ry(b)|0;M=ry(ez(b)|0)|0;c[N>>2]=L;c[N+4>>2]=M;Pw(0,102611,N)|0}h[_>>3]=k}h[d>>3]=f}if(!X){z=f;y=k}else{y=k>f?k:f;h[d>>3]=y;h[_>>3]=y;z=y}do if(!((QL(NL(b,c[46386]|0,134226)|0)|0)<<24>>24)){if(p){f=+h[(Q>+h[_>>3]?Y:_)>>3];break}f=+h[d>>3];if(P<f){f=+h[_>>3]*+C(+(1.0-P*P/(f*f)));f=Q>f?Q:f}else f=Q}else f=Q;while(0);g=c[(c[Z>>2]|0)+104>>2]|0;h[g+40>>3]=s-q+f;A=$+40|0;if(!(c[A>>2]&2048)){x=+h[d>>3]-m;h[g+48>>3]=(P<r?r-P+x:x)+P}j=(W|0)>1;g=j?W:1;a:do if((e|0)<3){g=uH(g<<5)|0;k=+h[_>>3]*.5;f=+h[d>>3]*.5;h[g>>3]=-k;h[g+8>>3]=-f;h[g+16>>3]=k;h[g+24>>3]=f;if(j){e=1;i=2;while(1){if((e|0)==(W|0))break;y=k+4.0;z=f+4.0;h[g+(i<<4)>>3]=-y;h[g+(i<<4)+8>>3]=-z;S=i|1;h[g+(S<<4)>>3]=y;h[g+(S<<4)+8>>3]=z;e=e+1|0;i=i+2|0;k=y;f=z}h[_>>3]=k*2.0;h[d>>3]=f*2.0;e=2}else e=2}else{g=uH(O(g<<4,e)|0)|0;i=c[(c[(c[(c[Z>>2]|0)+8>>2]|0)+8>>2]|0)+44>>2]|0;b:do if(!i){q=6.283185307179586/+(e|0);t=q*.5;r=+F(+t);s=+u$(+B(+U)+ +B(+T),1.0);t=T*1.4142135623730951/+E(+t);u=U*.5;w$((q+-3.141592653589793)*.5,R,S);v=V*.017453292519943295;k=0.0;f=0.0;m=0.0;i=0;n=+h[S>>3]*.5;o=+h[R>>3]*.5;while(1){if((i|0)>=(e|0))break b;m=m+q;w$(m,R,S);n=+h[S>>3]*r+n;o=+h[R>>3]*r+o;x=(o*t+s)*n+u*o;w$(+K(+o,+x)+v,R,S);x=+u$(x,o);w=+h[S>>3]*x*+h[_>>3];x=+h[R>>3]*x*+h[d>>3];ba=+B(+w);f=ba>f?ba:f;ba=+B(+x);k=ba>k?ba:k;h[g+(i<<4)>>3]=w;h[g+(i<<4)+8>>3]=x;if(p)break;else i=i+1|0}ba=-w;h[g+16>>3]=ba;h[g+24>>3]=x;h[g+32>>3]=ba;ba=-x;h[g+40>>3]=ba;h[g+48>>3]=w;h[g+56>>3]=ba}else{ub[c[i+4>>2]&63](g,_);k=+h[d>>3]*.5;f=+h[_>>3]*.5}while(0);f=f*2.0;k=k*2.0;y=y>f?y:f;h[_>>3]=y;ba=z>k?z:k;h[d>>3]=ba;f=y/f;k=ba/k;i=0;while(1){if((i|0)>=(e|0))break;N=g+(i<<4)|0;b=g+(i<<4)+8|0;ba=+h[b>>3]*k;h[N>>3]=+h[N>>3]*f;h[b>>3]=ba;i=i+1|0}if(j){j=e+-1|0;k=+h[g>>3];m=+h[g+8>>3];f=+K(+(m-+h[g+(j<<4)+8>>3]),+(k-+h[g+(j<<4)>>3]));j=0;c:while(1){if((j|0)>=(e|0))break;p=j+1|0;i=(p|0)%(e|0)|0;n=+h[g+(i<<4)>>3];o=+h[g+(i<<4)+8>>3];q=+K(+(o-m),+(n-k));z=(f+3.141592653589793-q)*.5;ba=4.0/+F(+z);w$(f-z,R,S);h[R>>3]=+h[R>>3]*ba;h[S>>3]=+h[S>>3]*ba;i=1;f=m;while(1){if((i|0)==(W|0)){f=q;j=p;k=n;m=o;continue c}z=+h[S>>3]+k;ba=+h[R>>3]+f;b=(O(i,e)|0)+j|0;h[g+(b<<4)>>3]=z;h[g+(b<<4)+8>>3]=ba;i=i+1|0;k=z;f=ba}}j=O(e,W+-1|0)|0;i=0;while(1){if((i|0)>=(e|0))break a;S=i+j|0;z=+h[g+(S<<4)+8>>3];y=+B(+(+h[g+(S<<4)>>3]))*2.0;ba=+h[_>>3];h[_>>3]=y>ba?y:ba;z=+B(+z)*2.0;ba=+h[d>>3];h[d>>3]=z>ba?z:ba;i=i+1|0}}}while(0);c[$>>2]=X;c[$+4>>2]=W;c[$+8>>2]=e;h[$+16>>3]=V;h[$+32>>3]=U;h[$+24>>3]=T;c[$+44>>2]=g;f=+h[_>>3];if(!(c[A>>2]&2048)){e=c[Z>>2]|0;h[e+32>>3]=f*.013888888888888888}else{e=c[Z>>2]|0;h[e+32>>3]=+h[(Q>f?Y:_)>>3]*.013888888888888888;d=(P>+h[d>>3]?Y:_)+8|0}h[e+40>>3]=+h[d>>3]*.013888888888888888;c[e+12>>2]=$;l=aa;return}function JJ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;j=o+40|0;e=o+32|0;k=o+16|0;n=o;d=(c[(c[(ez(a)|0)+16>>2]|0)+116>>2]|0)>>>2&1^1;m=a+16|0;f=c[c[(c[m>>2]|0)+104>>2]>>2]|0;c[46512]=f;f=W_(f)|0;f=uH(((f|0)>1?f:1)+1|0)|0;b=LJ(a,d,1,f)|0;if(!b){c[e>>2]=c[c[(c[m>>2]|0)+104>>2]>>2];Pw(1,102446,e)|0;c[46512]=102467;b=LJ(a,d,1,f)|0}D_(f);MJ(j,a,b);d=c[m>>2]|0;i=+h[d+32>>3]*72.0;i=+(~~(i+(i>=0.0?.5:-.5))|0);h[n>>3]=i;g=+h[d+40>>3]*72.0;g=+(~~(g+(g>=0.0?.5:-.5))|0);d=n+8|0;h[d>>3]=g;if(!((QL(NL(a,c[46395]|0,134226)|0)|0)<<24>>24)){i=+h[(+h[b>>3]>i?b:n)>>3];h[n>>3]=i;e=b+8|0;g=+h[(+h[e>>3]>g?b:n)+8>>3];h[d>>3]=g;d=e;e=b}else{d=b+8|0;e=b}a=(QL(NL(a,c[46386]|0,134226)|0)|0)&255;c[j>>2]=c[n>>2];c[j+4>>2]=c[n+4>>2];c[j+8>>2]=c[n+8>>2];c[j+12>>2]=c[n+12>>2];NJ(b,j,a);OJ(k,i*-.5,g*.5);c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];PJ(b,j,15);n=c[m>>2]|0;h[n+32>>3]=+h[e>>3]*.013888888888888888;h[n+40>>3]=(+h[d>>3]+1.0)*.013888888888888888;c[n+12>>2]=b;l=o;return}function KJ(a){a=a|0;var b=0.0,d=0,e=0.0,f=0.0,g=0,i=0,j=0,k=0,l=0.0,m=0;j=uH(48)|0;k=a+16|0;g=c[(c[(c[(c[k>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0;f=+LL(a,c[46376]|0,1797693134862315708145274.0e284,0.0);b=+LL(a,c[46375]|0,1797693134862315708145274.0e284,0.0);f=f<b?f:b;f=b==1797693134862315708145274.0e284&f==1797693134862315708145274.0e284?.05:f>0.0?(f>.0003?f:.0003):f;i=c[k>>2]|0;h[i+40>>3]=f;h[i+32>>3]=f;b=f*72.0;g=KL(a,c[46390]|0,g,0)|0;i=uH((g|0)<1?32:g<<5)|0;f=f*36.0;e=-f;h[i>>3]=e;h[i+8>>3]=e;h[i+16>>3]=f;h[i+24>>3]=f;if((g|0)>1){a=1;d=2;e=f;b=f;while(1){if((a|0)==(g|0))break;l=e+4.0;f=b+4.0;h[i+(d<<4)>>3]=-l;h[i+(d<<4)+8>>3]=-f;m=d|1;h[i+(m<<4)>>3]=l;h[i+(m<<4)+8>>3]=f;a=a+1|0;d=d+2|0;e=l;b=f}b=e*2.0}c[j>>2]=1;c[j+4>>2]=g;c[j+8>>2]=2;m=j+16|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;c[m+16>>2]=0;c[m+20>>2]=0;c[j+44>>2]=i;l=b*.013888888888888888;m=c[k>>2]|0;h[m+32>>3]=l;h[m+40>>3]=l;c[m+12>>2]=j;return}function LJ(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;g=uH(72)|0;n=c[(c[b+16>>2]|0)+104>>2]|0;m=0;i=1;j=c[46512]|0;a:while(1){k=a[j>>0]|0;switch(k<<24>>24){case 0:break a;case 92:{j=j+1|0;k=a[j>>0]|0;switch(k<<24>>24){case 124:case 125:case 123:case 92:{l=m;break}default:E=4}break}default:E=4}if((E|0)==4){E=0;switch(k<<24>>24){case 123:{l=m+1|0;break}case 125:{l=m+-1|0;break}default:{l=m;i=i+((m|0)==0&k<<24>>24==124&1)|0}}if((l|0)<0)break}m=l;j=j+1|0}B=g+56|0;c[B>>2]=uH(i<<2)|0;a[g+64>>0]=d;y=(d|0)==0&1;z=n+82|0;A=f+1|0;v=(e|0)!=0;w=n+16|0;x=n+4|0;u=n+8|0;k=0;m=0;d=0;t=0;l=0;e=0;n=f;i=0;j=0;b:while(1){p=k;k=0;c:while(1){d:while(1){s=e;e:while(1){r=k;o=i;f:while(1){q=m;g:while(1){while(1){if(t){E=78;break b}m=c[46512]|0;i=a[m>>0]|0;if((i+-1&255)>=31)break;c[46512]=m+1}switch(i<<24>>24|0){case 92:{E=53;break d}case 0:case 124:case 125:break e;case 60:break f;case 62:break g;case 123:break;default:{k=d;i=m;break d}}i=m+1|0;c[46512]=i;if(l|0){E=34;break b}if(!(a[i>>0]|0)){E=34;break b}e=LJ(b,y,0,f)|0;c[(c[B>>2]|0)+(q<<2)>>2]=e;if(!e){E=36;break b}else{q=q+1|0;l=4}}if(a[z>>0]|0){k=d;i=m;break d}if(!(l&16)){E=27;break b}if(o>>>0>A>>>0?(C=o+-1|0,(C|0)!=(s|0)):0)i=(a[C>>0]|0)==32?C:o;else i=o;a[i>>0]=0;r=n1(f)|0;c[46512]=(c[46512]|0)+1;m=q;l=l&-17;o=i}if(l&6|0){E=22;break b}if(a[z>>0]|0){k=d;i=m;break d}c[46512]=m+1;m=q;l=l|18;k=r;s=f;i=f}if(!((l&16|0)==0&(v|i<<24>>24!=0))){E=38;break b}if(!(l&4)){k=uH(72)|0;c[(c[B>>2]|0)+(q<<2)>>2]=k;m=q+1|0}else{k=p;m=q}if(r|0)c[k+60>>2]=r;if(!(l&5)){a[f+j>>0]=32;l=l|1;j=j+1|0}i=f+j|0;if(l&1){if((j|0)>1?(D=i+-1|0,(D|0)!=(n|0)):0)i=(a[D>>0]|0)==32?D:i;a[i>>0]=0;n=n1(f)|0;c[k+52>>2]=kH(b,n,a[z>>0]|0?2:0,+h[w>>3],c[x>>2]|0,c[u>>2]|0)|0;a[k+64>>0]=1;n=f;j=0}i=c[46512]|0;switch(a[i>>0]|0){case 0:{t=1;e=s;i=o;continue b}case 125:{E=51;break b}default:{}}c[46512]=i+1;p=k;l=0;k=0;e=s;i=o}h:do if((E|0)==53){E=0;k=f+j|0;i=m+1|0;switch(a[i>>0]|0){case 0:{k=d;i=m;break h}case 62:case 60:case 124:case 125:case 123:{k=d;break}case 32:{if(!(a[z>>0]|0))k=1;else E=55;break}default:E=55}if((E|0)==55){E=0;a[k>>0]=92;k=d;l=l|9;j=j+1|0}c[46512]=i}while(0);d=f+j|0;if(l&4|0?(a[i>>0]|0)!=32:0){E=59;break b}if(!(l&24))l=(a[i>>0]|0)==32?l:l|9;if(!(l&8))if(!(l&16))e=s;else{m=a[i>>0]|0;d=(k|0)!=0;if(!(d|m<<24>>24!=32))if((o|0)!=(f|0))if((a[o+-1>>0]|0)==32)m=o;else E=73;else m=f;else E=73;if((E|0)==73){E=0;a[o>>0]=m;m=o+1|0;i=c[46512]|0}e=d?m+-1|0:s;o=m}else{m=a[i>>0]|0;e=(k|0)!=0;if(!((!(e|m<<24>>24!=32)?(a[d+-1>>0]|0)==32:0)?(a[z>>0]|0)==0:0)){a[d>>0]=m;j=j+1|0}if(e){e=s;n=f+j+-1|0}else e=s}i=i+1|0;c[46512]=i;while(1){if((a[i>>0]|0)>=0){m=q;d=k;k=r;i=o;continue c}s=i+1|0;c[46512]=s;a[f+j>>0]=a[i>>0]|0;j=j+1|0;i=s}}}if((E|0)==22){QJ(g,r);g=0}else if((E|0)==27){QJ(g,r);g=0}else if((E|0)==34){QJ(g,r);g=0}else if((E|0)==36){QJ(g,r);g=0}else if((E|0)==38){QJ(g,r);g=0}else if((E|0)==51){c[46512]=i+1;c[g+48>>2]=m}else if((E|0)==59){QJ(g,r);g=0}else if((E|0)==78)c[g+48>>2]=q;return g|0}function MJ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+64|0;k=u+48|0;m=u+40|0;n=u+32|0;t=u+16|0;s=u;j=c[e+52>>2]|0;a:do if(!j){n=t+8|0;o=e+48|0;p=e+56|0;q=e+64|0;r=s+8|0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;j=0;while(1){if((j|0)>=(c[o>>2]|0))break a;MJ(s,d,c[(c[p>>2]|0)+(j<<2)>>2]|0);if(!(a[q>>0]|0)){h[n>>3]=+h[n>>3]+ +h[r>>3];k=t;m=+h[t>>3]>+h[s>>3]?t:s}else{h[t>>3]=+h[t>>3]+ +h[s>>3];k=n;m=(+h[n>>3]>+h[r>>3]?t:s)+8|0}h[k>>3]=+h[m>>3];j=j+1|0}}else{g=+h[j+24>>3];f=+h[j+32>>3];if(g>0.0|f>0.0){j=xx(d,102470)|0;do if(j){c[k>>2]=m;c[k+4>>2]=n;j=N1(j,102477,k)|0;if((j|0)<=0){i=8.0;g=g+16.0;break}i=+h[m>>3]*72.0;i=+(~~(i+(i>=0.0?.5:-.5))<<1|0);g=g+i;if((j|0)!=1){i=+h[n>>3]*72.0;i=+(~~(i+(i>=0.0?.5:-.5))<<1|0)}}else{i=8.0;g=g+16.0}while(0);f=i+f}h[t>>3]=g;h[t+8>>3]=f}while(0);c[e>>2]=c[t>>2];c[e+4>>2]=c[t+4>>2];c[e+8>>2]=c[t+8>>2];c[e+12>>2]=c[t+12>>2];c[b>>2]=c[t>>2];c[b+4>>2]=c[t+4>>2];c[b+8>>2]=c[t+8>>2];c[b+12>>2]=c[t+12>>2];l=u;return}function NJ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,g=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0;s=l;l=l+32|0;o=s+16|0;p=s;q=+h[d>>3];i=q-+h[b>>3];r=+h[d+8>>3];f=r-+h[b+8>>3];c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];d=c[b+52>>2]|0;if(!((e|0)!=0|(d|0)==0)){n=d+40|0;h[n>>3]=+h[n>>3]+i;n=d+48|0;h[n>>3]=+h[n>>3]+f}m=b+48|0;d=c[m>>2]|0;a:do if(d|0){n=b+64|0;f=((a[n>>0]|0)==0?f:i)/+(d|0);k=b+56|0;j=0;while(1){if((j|0)>=(d|0))break a;b=c[(c[k>>2]|0)+(j<<2)>>2]|0;g=j+1|0;d=~~(f*+(g|0))-~~(f*+(j|0))|0;if(!(a[n>>0]|0))OJ(p,q,+h[b+8>>3]+ +(d|0));else OJ(p,+h[b>>3]+ +(d|0),r);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];c[o+8>>2]=c[p+8>>2];c[o+12>>2]=c[p+12>>2];NJ(b,o,e);j=g;d=c[m>>2]|0}}while(0);l=s;return}function OJ(a,b,c){a=a|0;b=+b;c=+c;h[a>>3]=b;h[a+8>>3]=c;return}function PJ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0;q=l;l=l+48|0;j=q+32|0;n=q+16|0;m=q;a[b+65>>0]=e;k=b+16|0;s=+h[d>>3];p=d+8|0;r=+h[p>>3];OJ(n,s,r-+h[b+8>>3]);c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];c[k+12>>2]=c[n+12>>2];k=b+32|0;OJ(m,+h[b>>3]+s,r);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];k=c[b+48>>2]|0;m=k+-1|0;n=(e|0)==0;o=b+56|0;i=b+64|0;g=0;while(1){if((g|0)>=(k|0))break;do if(!n){b=(g|0)==0;f=(g|0)==(m|0);if(!(a[i>>0]|0))if(b){b=f?15:14;break}else{b=f?11:10;break}else if(b){b=f?15:13;break}else{b=f?7:5;break}}else b=0;while(0);f=c[(c[o>>2]|0)+(g<<2)>>2]|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];PJ(f,j,b&e);if(!(a[i>>0]|0))h[p>>3]=+h[p>>3]-+h[(c[(c[o>>2]|0)+(g<<2)>>2]|0)+8>>3];else h[d>>3]=+h[c[(c[o>>2]|0)+(g<<2)>>2]>>3]+ +h[d>>3];g=g+1|0}l=q;return}function QJ(a,b){a=a|0;b=b|0;RJ(a);D_(b);return}function RJ(a){a=a|0;var b=0,d=0,e=0;d=a+48|0;e=a+56|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;RJ(c[(c[e>>2]|0)+(b<<2)>>2]|0);b=b+1|0}D_(c[a+60>>2]|0);nH(c[a+52>>2]|0);D_(c[e>>2]|0);D_(a);return}function SJ(a){a=a|0;var b=0.0,d=0.0;d=+LL(a,c[46376]|0,0.0,.01);b=+LL(a,c[46375]|0,0.0,.02);b=(d>b?d:b)*72.0;return +(+(~~(b+(b>=0.0?.5:-.5))|0))}function TJ(a,b){a=+a;b=+b;var c=0;c=~~(a/b);return +(+((+(c|0)*b+1.0e-05<a&1)+c|0)*b)}function UJ(a){a=a|0;a=c[(c[a+16>>2]|0)+8>>2]|0;if(!a)a=0;else a=(c[c[a+4>>2]>>2]|0)==89&1;return a|0}function VJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;f=c[46513]|0;a:do if(!f)d=0;else{g=c[46514]|0;e=0;while(1){if((e|0)>=(g|0)){d=0;break a}d=c[f+(e<<2)>>2]|0;h=c[d>>2]|0;if((a[h>>0]|0)==(a[b>>0]|0)?(b$(h,b)|0)==0:0)break a;e=e+1|0}}while(0);return d|0}function WJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;if(ZL(xx(d,102500)|0)|0)if((a[b>>0]|0)==101?(b$(b,102659)|0)==0:0){d=101;g=6}else{b=102493;g=4}else g=4;if((g|0)==4){d=a[b>>0]|0;if(d<<24>>24==99)if(!(b$(b,102493)|0))g=11;else{d=99;g=6}else g=6}a:do if((g|0)==6){e=20744;while(1){f=c[e>>2]|0;if(!f){g=11;break a}if((a[f>>0]|0)==d<<24>>24?(b$(f,b)|0)==0:0){b=e;break a}e=e+16|0}}while(0);if((g|0)==11)b=XJ(b)|0;return b|0}function XJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;d=VJ(b)|0;if(!d){f=c[46514]|0;d=f+1|0;c[46514]=d;e=c[46513]|0;if(!e)d=vH(d<<2)|0;else d=xH(e,d<<2)|0;c[46513]=d;d=uH(16)|0;c[(c[46513]|0)+(f<<2)>>2]=d;c[d>>2]=c[5186];c[d+4>>2]=c[5187];c[d+8>>2]=c[5188];c[d+12>>2]=c[5189];e=n1(b)|0;c[d>>2]=e;do if(!0){if((a[b>>0]|0)==99?(b$(b,102493)|0)==0:0){e=1;break}c[g>>2]=c[5186];c[g+4>>2]=e;Pw(0,102664,g)|0;e=0}else e=1;while(0);a[d+12>>0]=e}l=h;return d|0}function YJ(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+h[b>>3]*.5257311121191336;c=+h[b+8>>3]*.8944271909999159;c=d>c?d:c;h[a>>3]=c*4.97979656976556;h[a+8>>3]=c*4.73606797749979;return}function ZJ(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,f=0,g=0.0,i=0.0,j=0.0,k=0,l=0,m=0.0;d=+h[b>>3];k=b+8|0;e=+h[k>>3];c=e/d;if(!(c>.9510565162951536))if(c<.9510565162951536){j=d;e=d*.9510565162951536}else j=d;else j=e*1.0514622242382672;d=j*.5257311121191336;g=j*.20081141588622725;i=j*.05020285397155681;c=.3141592653589793;f=0;while(1){if((f|0)>=10)break;h[a+(f<<4)>>3]=+E(+c)*d;h[a+(f<<4)+8>>3]=+F(+c)*d-i;m=c+.6283185307179586;l=f|1;h[a+(l<<4)>>3]=+E(+m)*g;h[a+(l<<4)+8>>3]=+F(+m)*g-i;c=c+1.2566370614359172;f=f+2|0}h[b>>3]=j;h[k>>3]=e;return}function _J(a){a=a|0;a=c[(c[a+16>>2]|0)+12>>2]|0;if(a|0){D_(c[a+44>>2]|0);D_(a)}return}function $J(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+80|0;k=o+40|0;g=o;n=o+64|0;h=o+56|0;if(!(a[e>>0]|0)){g=4208;h=b+40|0;do{c[b>>2]=c[g>>2];b=b+4|0;g=g+4|0}while((b|0)<(h|0))}else{i=(f|0)==0?103330:f;c[n>>2]=15;j=d+16|0;f=c[j>>2]|0;do if(a[(c[f+104>>2]|0)+82>>0]|0){f=_Q(d,e,n)|0;if(!f){f=c[j>>2]|0;m=8;break}if(nK(d,f,g,i,c[n>>2]|0,0)|0){c[k>>2]=ry(d)|0;c[k+4>>2]=e;c[k+8>>2]=i;Pw(0,103332,k)|0}}else m=8;while(0);if((m|0)==8){if((c[(c[f+8>>2]|0)+8>>2]|0)==1664)h=0;else{c[h>>2]=d;c[h+4>>2]=0}if(nK(d,0,g,e,c[n>>2]|0,h)|0)oK(d,e)}c[g+36>>2]=0;h=b+40|0;do{c[b>>2]=c[g>>2];b=b+4|0;g=g+4|0}while((b|0)<(h|0))}l=o;return}function aK(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0,g=0,i=0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0;r=l;l=l+112|0;n=r+96|0;m=r+80|0;p=r+64|0;k=r+48|0;q=r+32|0;o=r;f=r+16|0;if(!a){c[46517]=0;a=0}else{g=c[a+4>>2]|0;a=c[a>>2]|0;i=(c[(c[(ez(a)|0)+16>>2]|0)+116>>2]&3)*90|0;c[n>>2]=c[b>>2];c[n+4>>2]=c[b+4>>2];c[n+8>>2]=c[b+8>>2];c[n+12>>2]=c[b+12>>2];ZG(f,n,i);c[q>>2]=c[f>>2];c[q+4>>2]=c[f+4>>2];c[q+8>>2]=c[f+8>>2];c[q+12>>2]=c[f+12>>2];a:do if(g){d=+h[g+8>>3];e=+h[g+24>>3];s=+h[q>>3];if((+h[g>>3]<=s?s<=+h[g+16>>3]:0)?(j=+h[q+8>>3],d<=j):0)a=j<=e&1;else a=0}else{if((a|0)==(c[46517]|0)){f=c[46518]|0;g=c[46520]|0;i=c[46519]|0}else{g=c[(c[a+16>>2]|0)+12>>2]|0;c[46521]=g;i=c[g+44>>2]|0;c[46519]=i;f=c[g+8>>2]|0;c[46518]=f;g=O((c[g+4>>2]|0)+-1|0,f)|0;g=(g|0)>0?g:0;c[46520]=g;c[46517]=a}a=0;b=0;while(1){if((a|0)>=(f|0)){a=1;break a}t=i+(g+a<<4)|0;c[o>>2]=c[t>>2];c[o+4>>2]=c[t+4>>2];c[o+8>>2]=c[t+8>>2];c[o+12>>2]=c[t+12>>2];t=i+(g+((a+4|0)%(f|0)|0)<<4)|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];c[k+12>>2]=c[q+12>>2];c[p>>2]=c[45844];c[p+4>>2]=c[45845];c[p+8>>2]=c[45846];c[p+12>>2]=c[45847];c[m>>2]=c[o>>2];c[m+4>>2]=c[o+4>>2];c[m+8>>2]=c[o+8>>2];c[m+12>>2]=c[o+12>>2];c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];c[n+8>>2]=c[t+8>>2];c[n+12>>2]=c[t+12>>2];b=b+((mK(k,p,m,n)|0)==0&1)|0;if((b|0)==2){a=0;break}else a=a+2|0}}while(0)}l=r;return a|0}function bK(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;e=c[b+16>>2]|0;if((a[(c[e+104>>2]|0)+82>>0]|0)!=0?(a[e+145>>0]|0)!=0:0)b=bR(b,d,0,f,g)|0;else b=0;return b|0}function cK(e,f){e=e|0;f=f|0;var i=0,j=0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0.0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,P=0,Q=0,R=0;P=l;l=l+48|0;H=P+24|0;G=P+16|0;A=P+8|0;z=P;L=P+32|0;n=P+28|0;M=c[e+16>>2]|0;N=M+208|0;i=c[N>>2]|0;if((i|0)==0?(b[M+260>>1]&1)==0:0)J=0;else E=4;if((E|0)==4)if(!(c[e+152>>2]&4)){PO(e,i,c[M+228>>2]|0,c[M+244>>2]|0,c[M+212>>2]|0);J=1}else J=1;I=f+16|0;i=c[I>>2]|0;r=c[i+12>>2]|0;F=c[r+44>>2]|0;K=c[r+8>>2]|0;r=c[r+4>>2]|0;if((c[46515]|0)<(K|0)){i=K+5|0;c[46515]=i;j=c[46516]|0;if(!j)i=vH(i<<4)|0;else i=xH(j,i<<4)|0;c[46516]=i;i=c[I>>2]|0}D=(c[i+104>>2]|0)+56|0;i=i+16|0;c[D>>2]=c[i>>2];c[D+4>>2]=c[i+4>>2];c[D+8>>2]=c[i+8>>2];c[D+12>>2]=c[i+12>>2];D=c[I>>2]|0;B=+h[D+32>>3]*72.0;B=(+h[D+96>>3]+ +h[D+88>>3])/+(~~(B+(B>=0.0?.5:-.5))|0);C=+h[D+40>>3]*72.0;C=+h[D+80>>3]/+(~~(C+(C>=0.0?.5:-.5))|0);D=dK(e,f)|0;c[L>>2]=0;i=d[(c[I>>2]|0)+117>>0]|0;do if(!(i&1)){if(i&2|0){s=OL(f,0,103230)|0;UO(e,s);WO(e,OL(f,0,103238)|0);j=0;i=1;break}if(i&8|0){s=OL(f,0,103246)|0;UO(e,s);WO(e,OL(f,0,103254)|0);j=0;i=1;break}if(i&4|0){s=OL(f,0,103262)|0;UO(e,s);WO(e,OL(f,0,103270)|0);j=0;i=1;break}if(!(D&1))if(!(D&576)){j=0;i=0}else{j=eK(f)|0;i=1}else{j=eK(f)|0;if(!((uG(j,L,n)|0)<<24>>24)){WO(e,j);i=1}else{WO(e,c[L>>2]|0);i=c[L+4>>2]|0;m=KL(f,c[46403]|0,0,0)|0;k=+g[n>>2];if(!i)XO(e,134232,m,k);else XO(e,i,m,k);i=(D&2)>>>1|2}}s=fK(e,f)|0}else{s=OL(f,0,103214)|0;UO(e,s);WO(e,OL(f,0,103222)|0);j=0;i=1}while(0);m=c[(c[I>>2]|0)+8>>2]|0;if(a[m+12>>0]|0){m=c[m>>2]|0;if((a[m>>0]|0)==99){m=(b$(m,102493)|0)==0;E=33}else u=1}else{m=1;E=33}if((E|0)==33){m=m^1;if((r|0)!=0|i<<24>>24==0|m)u=m;else{UO(e,134297);r=1;u=0}}v=(K|0)<3;w=(D&512|0)!=0;y=(D&8|0)==0;x=(D&64|0)==0;p=(D&1024|0)==0;q=(D&2130706444|0)==0;t=0;while(1){if((t|0)>=(r|0))break;n=O(t,K)|0;o=c[46516]|0;m=0;while(1){if((m|0)>=(K|0))break;R=m+n|0;k=+h[F+(R<<4)+8>>3];Q=c[I>>2]|0;h[o+(m<<4)>>3]=+h[Q+16>>3]+ +h[F+(R<<4)>>3]*B;h[o+(m<<4)+8>>3]=+h[Q+24>>3]+k*C;m=m+1|0}do if(v){if(w&(t|0)==0?(A$(j,58)|0)!=0:0)if((SE(e,o,j)|0)>1){c[z>>2]=ry(f)|0;Pw(3,103278,z)|0;i=0}else i=0;ZO(e,c[46516]|0,K,i&255);if(!y)gK(e,f)}else{if(!x){if((t|0)==0?(WE(e,o,j,1)|0)>1:0){c[A>>2]=ry(f)|0;Pw(3,103278,A)|0}_O(e,c[46516]|0,K,0);break}if(!p){UO(e,134297);_O(e,c[46516]|0,K,i&255);UO(e,s);bP(e,(c[46516]|0)+32|0,2);break}i=i&255;if(q){_O(e,o,K,i);break}else{EJ(e,o,K,D,i);break}}while(0);t=t+1|0;i=0}m=c[(c[I>>2]|0)+8>>2]|0;if(!(a[m+12>>0]|0)){m=xx(f,105999)|0;if(m|0?a[m>>0]|0:0){o=m;E=65}}else{m=c[m>>2]|0;if((a[m>>0]|0)==99?(b$(m,102493)|0)==0:0){m=xx(f,102500)|0;if(m|0?a[m>>0]|0:0){o=m;E=65}}else{o=m;E=65}}if((E|0)==65){n=c[46516]|0;m=0;while(1){if((m|0)>=(K|0))break;k=+h[F+(m<<4)+8>>3];R=c[I>>2]|0;h[n+(m<<4)>>3]=+h[R+16>>3]+ +h[F+(m<<4)>>3]*B;h[n+(m<<4)+8>>3]=+h[R+24>>3]+k*C;m=m+1|0}m=i&255;do if(!(u|i<<24>>24==0)){if(v){if(w&(t|0)==0?(A$(j,58)|0)!=0:0)if((SE(e,n,j)|0)>1){c[G>>2]=ry(f)|0;Pw(3,103278,G)|0;i=0}else i=0;ZO(e,c[46516]|0,K,i&255);if(y)break;gK(e,f);break}if(x)if(!(D&12)){_O(e,n,K,m);break}else{EJ(e,n,K,D,m);break}else{if((WE(e,n,j,1)|0)>1){c[H>>2]=ry(f)|0;Pw(3,103278,H)|0}_O(e,c[46516]|0,K,0);break}}while(0);R=c[46516]|0;dP(e,o,R,K,i,NL(f,c[46396]|0,134226)|0)}D_(c[L>>2]|0);oH(e,10,c[(c[I>>2]|0)+104>>2]|0);if(J){if(c[e+152>>2]&4|0)PO(e,c[N>>2]|0,c[M+228>>2]|0,c[M+244>>2]|0,c[M+212>>2]|0);QO(e)}l=P;return}function dK(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;f=h;e=jK(d,f)|0;if(e|0)YO(b,e);e=c[46402]|0;if((e|0?(g=yx(d,e)|0,g|0):0)?a[g>>0]|0:0)fP(b,+LL(d,c[46402]|0,1.0,0.0));l=h;return c[f>>2]|0}function eK(a){a=a|0;return iK(a,131718)|0}function fK(b,d){b=b|0;d=d|0;d=OL(d,c[46378]|0,191979)|0;d=a[d>>0]|0?d:134232;UO(b,d);return d|0}function gK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0,i=0.0,j=0,k=0,m=0;d=l;l=l+96|0;j=d+80|0;k=d+64|0;e=d+32|0;m=d+16|0;g=d;b=c[b+16>>2]|0;f=+h[b+80>>3];h[m+8>>3]=f*.375;i=+h[b+96>>3];h[m>>3]=i*.6614;b=b+16|0;c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];c[j+8>>2]=c[b+8>>2];c[j+12>>2]=c[b+12>>2];hK(g,k,j);c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[e+12>>2]=c[g+12>>2];g=e+8|0;b=e+24|0;h[b>>3]=+h[g>>3];h[e+16>>3]=+h[e>>3]-i*1.3228;bP(a,e,2);f=+h[g>>3]-f*.75;h[g>>3]=f;h[b>>3]=f;bP(a,e,2);l=d;return}function hK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+h[c+8>>3]+ +h[b+8>>3];h[a>>3]=+h[c>>3]+ +h[b>>3];h[a+8>>3]=d;return}function iK(b,d){b=b|0;d=d|0;var e=0;e=OL(b,c[46379]|0,191979)|0;if(!(a[e>>0]|0)){e=OL(b,c[46378]|0,191979)|0;return ((a[e>>0]|0)==0?d:e)|0}else return e|0;return 0}function jK(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=OL(b,c[46387]|0,191979)|0;a:do if(!(a[e>>0]|0)){g=0;e=0}else{g=AF(e)|0;h=g;e=0;b:while(1){f=c[h>>2]|0;if(!f)break a;switch(a[f>>0]|0){case 102:{if(!(b$(f,108075)|0)){h=h+4|0;e=e|1;continue b}break}case 114:{if(!(b$(f,103290)|0)){f=h;do{j=f;f=f+4|0;i=c[f>>2]|0;c[j>>2]=i}while((i|0)!=0);j=h;e=e|4;h=j;continue b}if(!(b$(f,103308)|0)){f=h;do{i=f;f=f+4|0;j=c[f>>2]|0;c[i>>2]=j}while((j|0)!=0);j=h;e=e|3;h=j;continue b}break}case 100:{if(!(b$(f,103298)|0)){f=h;do{i=f;f=f+4|0;j=c[f>>2]|0;c[i>>2]=j}while((j|0)!=0);j=h;e=e|8;h=j;continue b}break}case 105:{if(!(b$(f,131253)|0)){h=h+4|0;e=e|32;continue b}break}case 115:{if((b$(f,103315)|0)==0?kK(b)|0:0){f=h;do{i=f;f=f+4|0;j=c[f>>2]|0;c[i>>2]=j}while((j|0)!=0);j=h;e=e|64;h=j;continue b}break}case 119:{if((b$(f,103323)|0)==0?lK(b)|0:0){f=h;do{i=f;f=f+4|0;j=c[f>>2]|0;c[i>>2]=j}while((j|0)!=0);j=h;e=e|512;h=j;continue b}break}default:{}}h=h+4|0}}while(0);f=c[(c[(c[b+16>>2]|0)+8>>2]|0)+8>>2]|0;if(f)e=c[f+40>>2]|e;c[d>>2]=e;return g|0}function kK(a){a=a|0;var b=0.0;a=c[(c[(c[a+16>>2]|0)+8>>2]|0)+8>>2]|0;if((((a|0)!=0?(c[a+8>>2]|0)==4:0)?(b=+h[a+16>>3],((~~(b+(b>=0.0?.5:-.5))|0)%90|0|0)==0):0)?+h[a+24>>3]==0.0:0)a=+h[a+32>>3]==0.0&1;else a=0;return a|0}function lK(a){a=a|0;a=c[(c[(c[a+16>>2]|0)+8>>2]|0)+8>>2]|0;if(!a)a=0;else a=(c[a+8>>2]|0)<3&1;return a|0}function mK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,g=0.0,i=0.0;i=+h[c+8>>3];g=-(+h[d+8>>3]-i);f=+h[c>>3];e=+h[d>>3]-f;f=e*i+f*g;return (+h[a+8>>3]*e+ +h[a>>3]*g-f>=0.0^+h[b>>3]*g-f+ +h[b+8>>3]*e>=0.0^1)&1|0}function nK(b,d,e,f,g,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;G=l;l=l+192|0;B=G+176|0;E=G+160|0;m=G+144|0;z=G+128|0;A=G+112|0;n=G+96|0;o=G+80|0;p=G+64|0;v=G+48|0;w=G+32|0;x=G+16|0;D=G;if(!d){c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;c[E+12>>2]=0;m=(c[(c[(ez(b)|0)+16>>2]|0)+116>>2]&1|0)==0;C=c[b+16>>2]|0;q=+h[C+80>>3]*.5;j=+h[C+88>>3];t=m?q:j;q=m?j:q;m=0;C=E;j=0.0;k=-q;r=t;F=E+8|0;s=0.0;t=-t}else{k=+h[d>>3];t=+h[d+8>>3];q=+h[d+16>>3];r=+h[d+24>>3];OJ(m,(q+k)*.5,(r+t)*.5);c[E>>2]=c[m>>2];c[E+4>>2]=c[m+4>>2];c[E+8>>2]=c[m+8>>2];c[E+12>>2]=c[m+12>>2];H=E+8|0;m=1;C=E;j=+h[E>>3];F=H;s=+h[H>>3]}u=(q>r?q:r)*4.0;a:do if((f|0)!=0?(y=a[f>>0]|0,y<<24>>24!=0):0){f=f+1|0;switch(y<<24>>24|0){case 99:{p=1;g=0;f=0;n=0;j=0.0;o=0;break a}case 101:{if(a[f>>0]|0){p=1;g=0;f=0;n=0;j=0.0;o=1;break a}if(!i)h[C>>3]=q;else{pK(z,i,s,u);c[E>>2]=c[z>>2];c[E+4>>2]=c[z+4>>2];c[E+8>>2]=c[z+8>>2];c[E+12>>2]=c[z+12>>2]}p=0;g=g&2;f=0;n=1;j=0.0;o=0;m=1;break a}case 115:{h[F>>3]=t;switch(a[f>>0]|0){case 0:{if(!i)h[C>>3]=j;else{pK(A,i,-u,j);c[E>>2]=c[A>>2];c[E+4>>2]=c[A+4>>2];c[E+8>>2]=c[A+8>>2];c[E+12>>2]=c[A+12>>2]}p=0;g=g&1;f=0;n=1;j=-1.5707963267948966;o=0;m=1;break a}case 101:{if(!i)h[C>>3]=q;else{pK(n,i,-u,u);c[E>>2]=c[n>>2];c[E+4>>2]=c[n+4>>2];c[E+8>>2]=c[n+8>>2];c[E+12>>2]=c[n+12>>2]}p=0;g=g&3;f=0;n=1;j=-.7853981633974483;o=0;m=1;break a}case 119:{if(!i)h[C>>3]=k;else{u=-u;pK(o,i,u,u);c[E>>2]=c[o>>2];c[E+4>>2]=c[o+4>>2];c[E+8>>2]=c[o+8>>2];c[E+12>>2]=c[o+12>>2]}p=0;g=g&9;f=0;n=1;j=-2.356194490192345;o=0;m=1;break a}default:{h[F>>3]=s;p=1;g=0;f=0;n=0;j=0.0;o=1;break a}}}case 119:{if(a[f>>0]|0){p=1;g=0;f=0;n=0;j=0.0;o=1;break a}if(!i)h[C>>3]=k;else{pK(p,i,s,-u);c[E>>2]=c[p>>2];c[E+4>>2]=c[p+4>>2];c[E+8>>2]=c[p+8>>2];c[E+12>>2]=c[p+12>>2]}p=0;g=g&8;f=0;n=1;j=3.141592653589793;o=0;m=1;break a}case 110:{h[F>>3]=r;switch(a[f>>0]|0){case 0:{if(!i)h[C>>3]=j;else{pK(v,i,u,j);c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];c[E+8>>2]=c[v+8>>2];c[E+12>>2]=c[v+12>>2]}p=0;g=g&4;f=0;n=1;j=1.5707963267948966;o=0;m=1;break a}case 101:{if(!i)h[C>>3]=q;else{pK(w,i,u,u);c[E>>2]=c[w>>2];c[E+4>>2]=c[w+4>>2];c[E+8>>2]=c[w+8>>2];c[E+12>>2]=c[w+12>>2]}p=0;g=g&6;f=0;n=1;j=.7853981633974483;o=0;m=1;break a}case 119:{if(!i)h[C>>3]=k;else{pK(x,i,u,-u);c[E>>2]=c[x>>2];c[E+4>>2]=c[x+4>>2];c[E+8>>2]=c[x+8>>2];c[E+12>>2]=c[x+12>>2]}p=0;g=g&12;f=0;n=1;j=2.356194490192345;o=0;m=1;break a}default:{h[F>>3]=s;p=1;g=0;f=0;n=0;j=0.0;o=1;break a}}}case 95:{p=1;f=1;n=0;j=0.0;o=0;break a}default:{p=1;g=0;f=0;n=0;j=0.0;o=1;break a}}}else{p=1;g=0;f=0;n=0;j=0.0;o=0}while(0);H=(c[(c[(ez(b)|0)+16>>2]|0)+116>>2]&3)*90|0;c[B>>2]=c[E>>2];c[B+4>>2]=c[E+4>>2];c[B+8>>2]=c[E+8>>2];c[B+12>>2]=c[E+12>>2];YG(D,B,H);c[E>>2]=c[D>>2];c[E+4>>2]=c[D+4>>2];c[E+8>>2]=c[D+8>>2];c[E+12>>2]=c[D+12>>2];if(!(f<<24>>24))g=qK(g,c[(c[(ez(b)|0)+16>>2]|0)+116>>2]&3)|0;a[e+33>>0]=g;c[e+24>>2]=d;k=+h[C>>3];h[e>>3]=+(~~(k+(k>=0.0?.5:-.5))|0);k=+h[F>>3];h[e+8>>3]=+(~~(k+(k>=0.0?.5:-.5))|0);h[e+16>>3]=+rK(j,c[(c[(ez(b)|0)+16>>2]|0)+116>>2]&3);k=+h[C>>3];j=+h[F>>3];if(k==0.0&j==0.0)g=-128;else{u=+K(+j,+k);t=u+4.71238898038469;g=~~((!(t>=6.283185307179586)?t:u+-1.5707963267948966)*40.74366543152521)&255}a[e+32>>0]=g;a[e+29>>0]=n;a[e+28>>0]=m;a[e+30>>0]=p;a[e+31>>0]=f;l=G;return o|0}function oK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=ry(a)|0;c[e+4>>2]=b;Pw(0,103393,e)|0;l=d;return}function pK(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+128|0;g=p+112|0;j=p+48|0;k=p+16|0;m=p+32|0;n=p;o=c[b>>2]|0;i=c[(c[(ez(o)|0)+16>>2]|0)+116>>2]&3;h[k>>3]=e;h[k+8>>3]=d;f=(i|0)!=0;if(f){c[g>>2]=c[k>>2];c[g+4>>2]=c[k+4>>2];c[g+8>>2]=c[k+8>>2];c[g+12>>2]=c[k+12>>2];YG(m,g,i*90|0);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}m=j+48|0;q=j+32|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[j+16>>2]=0;c[j+20>>2]=0;c[j+24>>2]=0;c[j+28>>2]=0;c[q>>2]=c[k>>2];c[q+4>>2]=c[k+4>>2];c[q+8>>2]=c[k+8>>2];c[q+12>>2]=c[k+12>>2];c[m>>2]=c[k>>2];c[m+4>>2]=c[k+4>>2];c[m+8>>2]=c[k+8>>2];c[m+12>>2]=c[k+12>>2];MK(b,c[(c[(c[(c[o+16>>2]|0)+8>>2]|0)+4>>2]|0)+12>>2]|0,j,1);if(f){c[g>>2]=c[j>>2];c[g+4>>2]=c[j+4>>2];c[g+8>>2]=c[j+8>>2];c[g+12>>2]=c[j+12>>2];ZG(n,g,i*90|0);c[j>>2]=c[n>>2];c[j+4>>2]=c[n+4>>2];c[j+8>>2]=c[n+8>>2];c[j+12>>2]=c[n+12>>2]};c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];c[a+8>>2]=c[j+8>>2];c[a+12>>2]=c[j+12>>2];l=p;return}function qK(a,b){a=a|0;b=b|0;a:do switch(b|0){case 3:switch(a|0){case 4:{a=2;break a}case 1:{a=8;break a}case 8:{a=1;break a}case 2:{a=4;break a}default:break a}case 2:switch(a|0){case 4:{a=1;break a}case 1:{a=4;break a}default:break a}case 1:switch(a|0){case 4:{a=2;break a}case 1:{a=8;break a}case 8:{a=4;break a}case 2:{a=1;break a}default:break a}default:{}}while(0);return a|0}function rK(a,b){a=+a;b=b|0;switch(b|0){case 3:{if(!(a==3.141592653589793))if(!(a==2.356194490192345))if(!(a==1.5707963267948966))if(!(a==0.0))if(!(a==-.7853981633974483)){if(a==-1.5707963267948966)a=3.141592653589793}else a=2.356194490192345;else a=1.5707963267948966;else a=0.0;else a=-.7853981633974483;else a=-1.5707963267948966;break}case 2:{a=-a;break}case 1:{a=a+-1.5707963267948966;break}default:{}}return +a}function sK(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,g=0.0,i=0,j=0,k=0;e=l;l=l+32|0;k=e+16|0;i=e;a=c[a>>2]|0;j=(c[(c[(ez(a)|0)+16>>2]|0)+116>>2]&3)*90|0;c[k>>2]=c[b>>2];c[k+4>>2]=c[b+4>>2];c[k+8>>2]=c[b+8>>2];c[k+12>>2]=c[b+12>>2];ZG(i,k,j);d=+h[i>>3];g=+h[i+8>>3];a=c[a+16>>2]|0;f=+h[a+80>>3]*.5;if(!(!(g>=-f)|!(g<=f))?d>=-+h[a+88>>3]:0)a=d<=+h[a+96>>3]&1;else a=0;l=e;return a|0}function tK(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;n=l;l=l+32|0;m=n;i=c[a+16>>2]|0;j=i+208|0;g=c[j>>2]|0;if(!g)k=(b[i+260>>1]&1)!=0;else k=1;e=d+16|0;d=c[e>>2]|0;f=c[d+12>>2]|0;if(f|0){if(k?(c[a+152>>2]&4|0)==0:0){PO(a,g,c[i+228>>2]|0,c[i+244>>2]|0,c[i+212>>2]|0);d=c[e>>2]|0}g=c[a+36>>2]|0;p=+h[d+24>>3]+ +(c[f+8>>2]|0);o=c[f>>2]|0;h[m>>3]=+h[d+16>>3]+ +(c[f+4>>2]|0);h[m+8>>3]=p;c[m+16>>2]=o;g1(g,103424,m)|0;g=c[e>>2]|0;m=(c[g+104>>2]|0)+56|0;g=g+16|0;c[m>>2]=c[g>>2];c[m+4>>2]=c[g+4>>2];c[m+8>>2]=c[g+8>>2];c[m+12>>2]=c[g+12>>2];oH(a,10,c[(c[e>>2]|0)+104>>2]|0);if(k){if(c[a+152>>2]&4|0)PO(a,c[j>>2]|0,c[i+228>>2]|0,c[i+244>>2]|0,c[i+212>>2]|0);QO(a)}}l=n;return}function uK(a){a=a|0;RJ(c[(c[a+16>>2]|0)+12>>2]|0);return}function vK(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+64|0;k=m+40|0;h=m;if(!(a[f>>0]|0)){h=4208;g=b+40|0;do{c[b>>2]=c[h>>2];b=b+4|0;h=h+4|0}while((b|0)<(g|0))}else{g=(g|0)==0?103330:g;i=c[(c[e+16>>2]|0)+12>>2]|0;j=BK(i,f)|0;if(!j){if(nK(e,i+16|0,h,f,15,0)|0)oK(e,f)}else if(nK(e,j+16|0,h,g,d[j+65>>0]|0,0)|0){c[k>>2]=ry(e)|0;c[k+4>>2]=f;c[k+8>>2]=g;Pw(0,103332,k)|0}g=b+40|0;do{c[b>>2]=c[h>>2];b=b+4|0;h=h+4|0}while((b|0)<(g|0))}l=m;return}function wK(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0,g=0,i=0,j=0.0,k=0,m=0,n=0.0;k=l;l=l+32|0;m=k+16|0;i=k;f=c[a+4>>2]|0;a=c[a>>2]|0;g=(c[(c[(ez(a)|0)+16>>2]|0)+116>>2]&3)*90|0;c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];ZG(i,m,g);c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(!f){f=c[(c[a+16>>2]|0)+12>>2]|0;g=f+16|0;a=f+24|0;i=f+32|0;f=f+40|0}else{g=f;a=f+8|0;i=f+16|0;f=f+24|0}e=+h[a>>3];d=+h[f>>3];n=+h[b>>3];if((+h[g>>3]<=n?n<=+h[i>>3]:0)?(j=+h[b+8>>3],e<=j):0)a=j<=d&1;else a=0;l=k;return a|0}function xK(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0.0;u=l;l=l+80|0;r=u+64|0;q=u+32|0;t=u;a:do if(!(a[d+28>>0]|0))e=0;else{i=+h[d>>3];p=b+16|0;m=c[(c[p>>2]|0)+12>>2]|0;k=m+48|0;m=m+56|0;d=0;while(1){if((d|0)>=(c[k>>2]|0))break a;n=(c[(c[(ez(b)|0)+16>>2]|0)+116>>2]&1|0)==0;o=c[(c[m>>2]|0)+(d<<2)>>2]|0;j=+(~~+h[(n?o+16|0:o+24|0)>>3]|0);if(i>=j?(s=+(~~+h[(n?o+32|0:o+40|0)>>3]|0),i<=s):0)break;d=d+1|0}if(!(c[(c[(ez(b)|0)+16>>2]|0)+116>>2]&1)){t=c[p>>2]|0;v=+h[t+16>>3];h[f>>3]=v+j;j=+h[t+24>>3];i=+h[t+80>>3];h[f+8>>3]=j-i*.5;h[f+16>>3]=v+s}else{o=(c[(c[m>>2]|0)+(d<<2)>>2]|0)+16|0;b=(c[p>>2]|0)+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=c[o+4>>2];c[q+8>>2]=c[o+8>>2];c[q+12>>2]=c[o+12>>2];c[q+16>>2]=c[o+16>>2];c[q+20>>2]=c[o+20>>2];c[q+24>>2]=c[o+24>>2];c[q+28>>2]=c[o+28>>2];c[r>>2]=c[b>>2];c[r+4>>2]=c[b+4>>2];c[r+8>>2]=c[b+8>>2];c[r+12>>2]=c[b+12>>2];_G(t,q,r);c[f>>2]=c[t>>2];c[f+4>>2]=c[t+4>>2];c[f+8>>2]=c[t+8>>2];c[f+12>>2]=c[t+12>>2];c[f+16>>2]=c[t+16>>2];c[f+20>>2]=c[t+20>>2];c[f+24>>2]=c[t+24>>2];c[f+28>>2]=c[t+28>>2];t=c[p>>2]|0;i=+h[t+80>>3];j=+h[t+24>>3]}h[f+24>>3]=i*.5+j;c[g>>2]=1}while(0);l=u;return e|0}function yK(d,e){d=d|0;e=e|0;var f=0,i=0,j=0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0;w=l;l=l+144|0;n=w+96|0;p=w+64|0;r=w;s=w+128|0;t=c[d+16>>2]|0;u=t+208|0;f=c[u>>2]|0;if(!f)v=(b[t+260>>1]&1)!=0;else v=1;m=e+16|0;q=c[m>>2]|0;o=c[q+12>>2]|0;j=o+16|0;c[p>>2]=c[j>>2];c[p+4>>2]=c[j+4>>2];c[p+8>>2]=c[j+8>>2];c[p+12>>2]=c[j+12>>2];c[p+16>>2]=c[j+16>>2];c[p+20>>2]=c[j+20>>2];c[p+24>>2]=c[j+24>>2];c[p+28>>2]=c[j+28>>2];x=+h[q+16>>3];h[p>>3]=+h[p>>3]+x;k=+h[q+24>>3];q=p+8|0;h[q>>3]=+h[q>>3]+k;q=p+16|0;h[q>>3]=+h[q>>3]+x;j=p+24|0;h[j>>3]=+h[j>>3]+k;if(v?(c[d+152>>2]&4|0)==0:0)PO(d,f,c[t+228>>2]|0,c[t+244>>2]|0,c[t+212>>2]|0);f=dK(d,e)|0;fK(d,e)|0;c[s>>2]=0;if(!(f&1))i=0;else{i=eK(e)|0;if(!((uG(i,s,n)|0)<<24>>24)){WO(d,i);i=1}else{WO(d,c[s>>2]|0);i=c[s+4>>2]|0;j=KL(e,c[46403]|0,0,0)|0;k=+g[n>>2];if(!i)XO(d,134232,j,k);else XO(d,i,j,k);i=f>>>1&1|2}}j=c[c[(c[m>>2]|0)+8>>2]>>2]|0;if((a[j>>0]|0)==77){m=(b$(j,103201)|0)==0;f=m?f|4:f}if(!(f&2130706444)){c[n>>2]=c[p>>2];c[n+4>>2]=c[p+4>>2];c[n+8>>2]=c[p+8>>2];c[n+12>>2]=c[p+12>>2];c[n+16>>2]=c[p+16>>2];c[n+20>>2]=c[p+20>>2];c[n+24>>2]=c[p+24>>2];c[n+28>>2]=c[p+28>>2];$O(d,n,i)}else{c[r>>2]=c[p>>2];c[r+4>>2]=c[p+4>>2];c[r+8>>2]=c[p+8>>2];c[r+12>>2]=c[p+12>>2];p=r+32|0;c[p>>2]=c[q>>2];c[p+4>>2]=c[q+4>>2];c[p+8>>2]=c[q+8>>2];c[p+12>>2]=c[q+12>>2];h[r+16>>3]=+h[p>>3];h[r+24>>3]=+h[r+8>>3];h[r+48>>3]=+h[r>>3];h[r+56>>3]=+h[r+40>>3];EJ(d,r,4,f,i)}zK(d,e,o);D_(c[s>>2]|0);if(v){if(c[d+152>>2]&4|0)PO(d,c[u>>2]|0,c[t+228>>2]|0,c[t+244>>2]|0,c[t+212>>2]|0);QO(d)}l=w;return}function zK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+144|0;p=u+128|0;o=u+112|0;q=u+16|0;r=u;g=u+96|0;i=u+80|0;s=u+64|0;t=u+48|0;j=e+52|0;f=c[j>>2]|0;if(!f)f=d+16|0;else{n=f+56|0;m=e+16|0;f=e+32|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];c[p>>2]=c[f>>2];c[p+4>>2]=c[f+4>>2];c[p+8>>2]=c[f+8>>2];c[p+12>>2]=c[f+12>>2];AK(g,o,p);f=d+16|0;m=(c[f>>2]|0)+16|0;c[o>>2]=c[g>>2];c[o+4>>2]=c[g+4>>2];c[o+8>>2]=c[g+8>>2];c[o+12>>2]=c[g+12>>2];c[p>>2]=c[m>>2];c[p+4>>2]=c[m+4>>2];c[p+8>>2]=c[m+8>>2];c[p+12>>2]=c[m+12>>2];hK(i,o,p);c[n>>2]=c[i>>2];c[n+4>>2]=c[i+4>>2];c[n+8>>2]=c[i+8>>2];c[n+12>>2]=c[i+12>>2];oH(b,10,c[j>>2]|0);fK(b,d)|0}k=(c[f>>2]|0)+16|0;c[r>>2]=c[k>>2];c[r+4>>2]=c[k+4>>2];c[r+8>>2]=c[k+8>>2];c[r+12>>2]=c[k+12>>2];k=e+48|0;m=e+64|0;n=q+16|0;j=e+56|0;e=q+16|0;i=0;while(1){if((i|0)>=(c[k>>2]|0))break;if((i|0)>0){f=(c[j>>2]|0)+(i<<2)|0;g=c[f>>2]|0;if(!(a[m>>0]|0)){g=g+32|0;c[n>>2]=c[g>>2];c[n+4>>2]=c[g+4>>2];c[n+8>>2]=c[g+8>>2];c[n+12>>2]=c[g+12>>2];h[q>>3]=+h[(c[f>>2]|0)+16>>3];f=n;g=0}else{g=g+16|0;c[q>>2]=c[g>>2];c[q+4>>2]=c[g+4>>2];c[q+8>>2]=c[g+8>>2];c[q+12>>2]=c[g+12>>2];h[e>>3]=+h[q>>3];f=(c[f>>2]|0)+32|0;g=1}h[q+(g<<4)+8>>3]=+h[f+8>>3];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];c[o+8>>2]=c[q+8>>2];c[o+12>>2]=c[q+12>>2];c[p>>2]=c[r>>2];c[p+4>>2]=c[r+4>>2];c[p+8>>2]=c[r+8>>2];c[p+12>>2]=c[r+12>>2];hK(s,o,p);c[q>>2]=c[s>>2];c[q+4>>2]=c[s+4>>2];c[q+8>>2]=c[s+8>>2];c[q+12>>2]=c[s+12>>2];c[o>>2]=c[n>>2];c[o+4>>2]=c[n+4>>2];c[o+8>>2]=c[n+8>>2];c[o+12>>2]=c[n+12>>2];c[p>>2]=c[r>>2];c[p+4>>2]=c[r+4>>2];c[p+8>>2]=c[r+8>>2];c[p+12>>2]=c[r+12>>2];hK(t,o,p);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];c[n+8>>2]=c[t+8>>2];c[n+12>>2]=c[t+12>>2];bP(b,q,2)}zK(b,d,c[(c[j>>2]|0)+(i<<2)>>2]|0);i=i+1|0}l=u;return}function AK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=(+h[c+8>>3]+ +h[b+8>>3])*.5;h[a>>3]=(+h[c>>3]+ +h[b>>3])*.5;h[a+8>>3]=d;return}function BK(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=c[b+60>>2]|0;if(!(((e|0)!=0?(a[e>>0]|0)==(a[d>>0]|0):0)?(b$(e,d)|0)==0:0))f=4;a:do if((f|0)==4){g=b+56|0;f=c[b+48>>2]|0;e=0;while(1){if((e|0)>=(f|0)){b=0;break a}b=BK(c[(c[g>>2]|0)+(e<<2)>>2]|0,d)|0;if(!b)e=e+1|0;else break}}while(0);return b|0}function CK(a,b){a=a|0;b=b|0;var d=0;d=b+8|0;h[d>>3]=+h[d>>3]*1.375;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function DK(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0,g=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;k=+h[b>>3];f=k*.5;m=+h[b+8>>3];i=m*.5;h[a>>3]=f;e=m*.40909090909090906;h[a+8>>3]=e;h[a+16>>3]=f;g=m*.4592530909090909;h[a+24>>3]=g;j=k*.275892;h[a+32>>3]=j;h[a+40>>3]=i;h[a+48>>3]=0.0;h[a+56>>3]=i;k=k*-.275892;h[a+64>>3]=k;h[a+72>>3]=i;l=-f;h[a+80>>3]=l;h[a+88>>3]=g;d=a+96|0;h[d>>3]=l;h[a+104>>3]=e;b=a+112|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];b=a+128|0;h[b>>3]=l;h[a+136>>3]=m*-.40909090909090906;d=a+144|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];h[a+160>>3]=l;g=-g;h[a+168>>3]=g;h[a+176>>3]=k;i=-i;h[a+184>>3]=i;h[a+192>>3]=0.0;h[a+200>>3]=i;h[a+208>>3]=j;h[a+216>>3]=i;h[a+224>>3]=f;h[a+232>>3]=g;d=a+240|0;h[d>>3]=f;h[a+248>>3]=-e;b=a+256|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];b=a+288|0;d=a+272|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];c[b+12>>2]=c[a+12>>2];return}function EK(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0.0,g=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+144|0;u=x+112|0;t=x+96|0;v=x+80|0;s=x+64|0;w=x+32|0;q=x+16|0;r=x;g=x+48|0;do if(a){j=c[a+4>>2]|0;k=c[a>>2]|0;o=(c[(c[(ez(k)|0)+16>>2]|0)+116>>2]&3)*90|0;c[u>>2]=c[b>>2];c[u+4>>2]=c[b+4>>2];c[u+8>>2]=c[b+8>>2];c[u+12>>2]=c[b+12>>2];ZG(g,u,o);c[w>>2]=c[g>>2];c[w+4>>2]=c[g+4>>2];c[w+8>>2]=c[g+8>>2];c[w+12>>2]=c[g+12>>2];if(j|0){d=+h[w>>3];if(!(+h[j>>3]<=d)){a=0;break}if(!(d<=+h[j+16>>3])){a=0;break}d=+h[w+8>>3];if(!(+h[j+8>>3]<=d)){a=0;break}a=d<=+h[j+24>>3];break}if((k|0)==(c[46522]|0)){d=+h[22924];e=+h[22925];i=+h[22926]}else{a=k+16|0;b=c[(c[a>>2]|0)+12>>2]|0;c[46523]=b;c[46524]=c[b+44>>2];c[46525]=c[b+8>>2];if(!(c[b+40>>2]&2048)){n=(c[(c[(ez(k)|0)+16>>2]|0)+116>>2]&1|0)==0;o=c[a>>2]|0;h[(n?183416:183424)>>3]=+h[o+96>>3]+ +h[o+88>>3];h[(n?183424:183416)>>3]=+h[o+80>>3];i=+h[o+32>>3]*72.0;f=+h[o+40>>3]*72.0;f=+(~~(f+(f>=0.0?.5:-.5))|0);i=+(~~(i+(i>=0.0?.5:-.5))|0)}else{jM(u,b);i=+h[u+16>>3]-+h[u>>3];f=+h[u+24>>3]-+h[u+8>>3];o=(c[(c[(ez(k)|0)+16>>2]|0)+116>>2]&1|0)==0;h[(o?183416:183424)>>3]=i;h[(o?183424:183416)>>3]=f}d=+h[22927];if(d==0.0){h[22927]=1.0;d=1.0}e=+h[22928];if(e==0.0){h[22928]=1.0;e=1.0}d=i/d;h[22924]=d;e=f/e;h[22925]=e;i=i*.5;h[22926]=i;h[22929]=f*.5;o=O((c[(c[46523]|0)+4>>2]|0)+-1|0,c[46525]|0)|0;c[46526]=(o|0)>0?o:0;c[46522]=k}f=+h[w>>3]*d;h[w>>3]=f;o=w+8|0;d=+h[o>>3]*e;h[o>>3]=d;if(!(+B(+f)>i)?(e=+B(+d),p=+h[22929],!(e>p)):0){o=c[46525]|0;if((o|0)<3){a=+u$(f/i,d/p)<1.0;break}b=(c[46527]|0)%(o|0)|0;a=(b+1|0)%(o|0)|0;k=c[46524]|0;m=c[46526]|0;n=k+(m+b<<4)|0;c[q>>2]=c[n>>2];c[q+4>>2]=c[n+4>>2];c[q+8>>2]=c[n+8>>2];c[q+12>>2]=c[n+12>>2];n=k+(m+a<<4)|0;c[r>>2]=c[n>>2];c[r+4>>2]=c[n+4>>2];c[r+8>>2]=c[n+8>>2];c[r+12>>2]=c[n+12>>2];c[s>>2]=c[w>>2];c[s+4>>2]=c[w+4>>2];c[s+8>>2]=c[w+8>>2];c[s+12>>2]=c[w+12>>2];c[v>>2]=c[45860];c[v+4>>2]=c[45861];c[v+8>>2]=c[45862];c[v+12>>2]=c[45863];c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2];c[t+12>>2]=c[q+12>>2];c[u>>2]=c[n>>2];c[u+4>>2]=c[n+4>>2];c[u+8>>2]=c[n+8>>2];c[u+12>>2]=c[n+12>>2];if(mK(s,v,t,u)|0){c[s>>2]=c[w>>2];c[s+4>>2]=c[w+4>>2];c[s+8>>2]=c[w+8>>2];c[s+12>>2]=c[w+12>>2];c[v>>2]=c[q>>2];c[v+4>>2]=c[q+4>>2];c[v+8>>2]=c[q+8>>2];c[v+12>>2]=c[q+12>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[t+8>>2]=c[r+8>>2];c[t+12>>2]=c[r+12>>2];c[u>>2]=c[45860];c[u+4>>2]=c[45861];c[u+8>>2]=c[45862];c[u+12>>2]=c[45863];n=(mK(s,v,t,u)|0)!=0;if(n?(c[s>>2]=c[w>>2],c[s+4>>2]=c[w+4>>2],c[s+8>>2]=c[w+8>>2],c[s+12>>2]=c[w+12>>2],c[v>>2]=c[r>>2],c[v+4>>2]=c[r+4>>2],c[v+8>>2]=c[r+8>>2],c[v+12>>2]=c[r+12>>2],c[t>>2]=c[45860],c[t+4>>2]=c[45861],c[t+8>>2]=c[45862],c[t+12>>2]=c[45863],c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],c[u+12>>2]=c[q+12>>2],(mK(s,v,t,u)|0)!=0):0){a=1;break}else{j=b;b=1}while(1){if((b|0)>=(o|0)){b=31;break}if(n){g=a;a=(a+1|0)%(o|0)|0}else{g=(j+-1+o|0)%(o|0)|0;a=j}q=k+(m+g<<4)|0;r=k+(m+a<<4)|0;c[s>>2]=c[w>>2];c[s+4>>2]=c[w+4>>2];c[s+8>>2]=c[w+8>>2];c[s+12>>2]=c[w+12>>2];c[v>>2]=c[45860];c[v+4>>2]=c[45861];c[v+8>>2]=c[45862];c[v+12>>2]=c[45863];c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2];c[t+12>>2]=c[q+12>>2];c[u>>2]=c[r>>2];c[u+4>>2]=c[r+4>>2];c[u+8>>2]=c[r+8>>2];c[u+12>>2]=c[r+12>>2];if(!(mK(s,v,t,u)|0)){b=30;break}else{j=g;b=b+1|0}}if((b|0)==30){c[46527]=g;a=0;break}else if((b|0)==31){c[46527]=j;a=1;break}}else a=0}else a=0}else{c[46522]=0;a=0}while(0);l=x;return a&1|0}function FK(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0,g=0.0,i=0,j=0,k=0;j=l;l=l+32|0;f=j+16|0;i=j;if(a){a=c[a>>2]|0;k=(c[(c[(ez(a)|0)+16>>2]|0)+116>>2]&3)*90|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];ZG(i,f,k);g=+h[i>>3];e=+h[i+8>>3];if((a|0)==(c[46530]|0))d=+h[22932];else{i=c[(c[a+16>>2]|0)+12>>2]|0;k=(c[i+4>>2]<<1)+-2|0;d=+h[(c[i+44>>2]|0)+((((k|0)>0?k:0)|1)<<4)>>3];h[22932]=d;c[46530]=a}if(+B(+g)>d|+B(+e)>d)a=0;else a=+u$(g,e)<=d&1}else{c[46530]=0;a=0}l=j;return a|0}function GK(e,f){e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0,w=0;t=l;l=l+16|0;j=t;r=c[e+16>>2]|0;s=r+208|0;g=c[s>>2]|0;if((g|0)==0?(b[r+260>>1]&1)==0:0)q=0;else if(!(c[e+152>>2]&4)){PO(e,g,c[r+228>>2]|0,c[r+244>>2]|0,c[r+212>>2]|0);q=1}else q=1;n=f+16|0;k=c[(c[n>>2]|0)+12>>2]|0;o=c[k+44>>2]|0;p=c[k+8>>2]|0;k=c[k+4>>2]|0;if((c[46528]|0)<(p|0)){g=p+2|0;c[46528]=g;i=c[46529]|0;if(!i)g=vH(g<<4)|0;else g=xH(i,g<<4)|0;c[46529]=g}jK(f,j)|0;if(!(c[j>>2]&32))YO(e,21916);else YO(e,21912);g=c[46402]|0;if(g|0)fP(e,+LL(f,g,1.0,0.0));g=d[(c[n>>2]|0)+117>>0]|0;do if(!(g&1)){if(g&2|0){UO(e,OL(f,0,103230)|0);g=OL(f,0,103238)|0;WO(e,g);break}if(g&8|0){UO(e,OL(f,0,103246)|0);g=OL(f,0,103254)|0;WO(e,g);break}if(!(g&4)){g=iK(f,134232)|0;WO(e,g);fK(e,f)|0;break}else{UO(e,OL(f,0,103262)|0);g=OL(f,0,103270)|0;WO(e,g);break}}else{UO(e,OL(f,0,103214)|0);g=OL(f,0,103222)|0;WO(e,g)}while(0);if(!k)if(!(a[g>>0]|0))i=1;else{UO(e,g);i=1}else i=k;j=1;f=0;while(1){if((f|0)>=(i|0))break;k=O(f,p)|0;m=c[46529]|0;g=0;while(1){if((g|0)>=(p|0))break;w=g+k|0;u=+h[o+(w<<4)+8>>3];v=c[n>>2]|0;h[m+(g<<4)>>3]=+h[v+16>>3]+ +h[o+(w<<4)>>3];h[m+(g<<4)+8>>3]=+h[v+24>>3]+u;g=g+1|0}ZO(e,m,p,j);j=0;f=f+1|0}if(q){if(c[e+152>>2]&4|0)PO(e,c[s>>2]|0,c[r+228>>2]|0,c[r+244>>2]|0,c[r+212>>2]|0);QO(e)}l=t;return}function HK(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+48|0;h=g;e=IK(b,e,f)|0;c[h+36>>2]=c[f+36>>2];nK(b,c[f+24>>2]|0,h,e,d[f+33>>0]|0,0)|0;b=h;e=a+40|0;do{c[a>>2]=c[b>>2];a=a+4|0;b=b+4|0}while((a|0)<(e|0));l=g;return}function IK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0.0,j=0.0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0,C=0;z=l;l=l+32|0;y=z;g=z+24|0;k=z+16|0;x=c[(c[(c[(ez(b)|0)+60>>2]|0)+16>>2]|0)+116>>2]&3;f=b+16|0;w=(c[f>>2]|0)+16|0;c[y>>2]=c[w>>2];c[y+4>>2]=c[w+4>>2];c[y+8>>2]=c[w+8>>2];c[y+12>>2]=c[w+12>>2];JK(g,y,x);w=(c[d+16>>2]|0)+16|0;c[y>>2]=c[w>>2];c[y+4>>2]=c[w+4>>2];c[y+8>>2]=c[w+8>>2];c[y+12>>2]=c[w+12>>2];JK(k,y,x);x=a[e+33>>0]|0;y=x&255;a:do switch(x<<24>>24){case 0:case 15:{d=0;break}default:{d=c[e+24>>2]|0;if(!d){x=(c[(c[(ez(b)|0)+16>>2]|0)+116>>2]&1|0)==0;w=c[f>>2]|0;B=+h[w+80>>3]*.5;A=-B;m=+h[w+88>>3];j=-m;n=x?j:A;i=x?m:B;m=x?B:m;j=x?A:j}else{n=+h[d>>3];i=+h[d+16>>3];m=+h[d+24>>3];j=+h[d+8>>3]}x=c[g>>2]|0;v=c[g+4>>2]|0;w=c[k>>2]|0;s=c[k+4>>2]|0;t=~~j;u=~~((i+n)*.5);r=~~i;q=~~((m+j)*.5);p=~~m;o=~~n;g=0;k=0;d=0;e=0;b=0;while(1){if((k|0)==4)break a;if(1<<k&y){switch(k|0){case 0:{e=u;b=t;break}case 1:{e=r;b=q;break}case 2:{e=u;b=p;break}case 3:{e=o;b=q;break}default:{}}e=x+e|0;b=v+b|0;f=e-w|0;C=b-s|0;f=(O(C,C)|0)+(O(f,f)|0)|0;if((d|0)==0|(f|0)<(g|0))d=c[21924+(k<<2)>>2]|0;else f=g}else f=g;g=f;k=k+1|0}}}while(0);l=z;return d|0}function JK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0;switch(d|0){case 0:{f=+h[b>>3];e=+h[b+8>>3];break}case 2:{f=+h[b>>3];e=-+h[b+8>>3];break}case 1:{f=-+h[b+8>>3];e=+h[b>>3];break}case 3:{f=+h[b+8>>3];e=+h[b>>3];break}default:{f=0.0;e=0.0}}c[a>>2]=~~(f+(f>=0.0?.5:-.5));c[a+4>>2]=~~(e+(e>=0.0?.5:-.5));return}function KK(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+80|0;f=i+40|0;h=i;g=b+16|0;e=c[g>>2]|0;d=e+16|0;if(a[e+47>>0]|0){e=c[b>>2]&3;HK(f,c[((e|0)==3?b:b+48|0)+40>>2]|0,c[((e|0)==2?b:b+-48|0)+40>>2]|0,d);e=f;f=d+40|0;do{c[d>>2]=c[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(f|0));e=c[g>>2]|0}d=e+56|0;if(a[e+87>>0]|0){e=c[b>>2]&3;HK(h,c[((e|0)==2?b:b+-48|0)+40>>2]|0,c[((e|0)==3?b:b+48|0)+40>>2]|0,d);e=h;f=d+40|0;do{c[d>>2]=c[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(f|0))}l=i;return}function LK(){var a=0,b=0,d=0;a=l;l=l+32|0;b=a+16|0;d=a;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];EK(0,b)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];FK(0,b)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];aK(0,b)|0;l=a;return}function MK(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+192|0;s=z+176|0;x=z+112|0;y=z+48|0;t=z+32|0;u=z+24|0;v=z+16|0;w=z;if(!(e<<24>>24)){k=d+48|0;c[t>>2]=c[k>>2];c[t+4>>2]=c[k+4>>2];c[t+8>>2]=c[k+8>>2];c[t+12>>2]=c[k+12>>2];k=u;m=v;n=x;o=0}else{c[t>>2]=c[d>>2];c[t+4>>2]=c[d+4>>2];c[t+8>>2]=c[d+8>>2];c[t+12>>2]=c[d+12>>2];k=v;m=u;n=0;o=x}h[u>>3]=0.0;h[v>>3]=1.0;q=t+8|0;f=0.0;g=1.0;j=0;p=+h[t>>3];while(1){r=+h[q>>3];f=(f+g)*.5;XL(w,d,3,f,n,o);c[t>>2]=c[w>>2];c[t+4>>2]=c[w+4>>2];c[t+8>>2]=c[w+8>>2];c[t+12>>2]=c[w+12>>2];c[s>>2]=c[w>>2];c[s+4>>2]=c[w+4>>2];c[s+8>>2]=c[w+8>>2];c[s+12>>2]=c[w+12>>2];a:do if(!((lb[b&127](a,s)|0)<<24>>24)){e=0;while(1){if((e|0)==4){e=k;j=1;break a}j=y+(e<<4)|0;A=x+(e<<4)|0;c[j>>2]=c[A>>2];c[j+4>>2]=c[A+4>>2];c[j+8>>2]=c[A+8>>2];c[j+12>>2]=c[A+12>>2];e=e+1|0}}else e=m;while(0);h[e>>3]=f;i=+h[t>>3];p=p-i;if(!((p>=0.0?p:-p)>.5)?(r=r-+h[q>>3],!((r>=0.0?r:-r)>.5)):0)break;f=+h[u>>3];g=+h[v>>3];p=i}b:do if(!(j<<24>>24)){e=0;while(1){if((e|0)==4)break b;A=d+(e<<4)|0;y=x+(e<<4)|0;c[A>>2]=c[y>>2];c[A+4>>2]=c[y+4>>2];c[A+8>>2]=c[y+8>>2];c[A+12>>2]=c[y+12>>2];e=e+1|0}}else{e=0;while(1){if((e|0)==4)break b;A=d+(e<<4)|0;x=y+(e<<4)|0;c[A>>2]=c[x>>2];c[A+4>>2]=c[x+4>>2];c[A+8>>2]=c[x+8>>2];c[A+12>>2]=c[x+12>>2];e=e+1|0}}while(0);l=z;return}function NK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0.0;m=l;l=l+48|0;d=m+16|0;e=m;f=m+32|0;g=a+16|0;i=c[g>>2]|0;j=c[i+8>>2]|0;if(j|0?(k=j+4|0,c[(c[k>>2]|0)+12>>2]|0):0){c[f>>2]=a;c[f+4>>2]=0;n=+h[i+96>>3];h[e>>3]=+h[b>>3]-+h[i+16>>3];h[e+8>>3]=+h[b+8>>3]-+h[i+24>>3];k=c[(c[k>>2]|0)+12>>2]|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];k=lb[k&127](f,d)|0;h[(c[g>>2]|0)+96>>3]=n;OK(f,a,b,k)}l=m;return}function OK(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0.0,m=0,n=0;n=l;l=l+64|0;m=n;j=b+16|0;g=c[j>>2]|0;k=+h[g+96>>3];i=g+16|0;f=g+24|0;b=0;while(1){if((b|0)==4)break;h[m+(b<<4)>>3]=+h[d+(b<<4)>>3]-+h[i>>3];h[m+(b<<4)+8>>3]=+h[d+(b<<4)+8>>3]-+h[f>>3];b=b+1|0}MK(a,c[(c[(c[g+8>>2]|0)+4>>2]|0)+12>>2]|0,m,e);b=0;while(1){if((b|0)==4)break;e=c[j>>2]|0;h[d+(b<<4)>>3]=+h[e+16>>3]+ +h[m+(b<<4)>>3];h[d+(b<<4)+8>>3]=+h[e+24>>3]+ +h[m+(b<<4)+8>>3];b=b+1|0}h[(c[j>>2]|0)+96>>3]=k;l=n;return}function PK(b,d){b=b|0;d=d|0;var e=0,f=0;while(1){f=b+16|0;b=c[f>>2]|0;if(!(a[b+112>>0]|0))break;b=c[b+116>>2]|0}b=c[b+8>>2]|0;if(!b){b=uH(40)|0;c[(c[f>>2]|0)+8>>2]=b}e=c[b>>2]|0;if(!e)b=vH(((c[b+4>>2]|0)*48|0)+48|0)|0;else b=xH(e,((c[b+4>>2]|0)*48|0)+48|0)|0;f=c[(c[f>>2]|0)+8>>2]|0;c[f>>2]=b;f=f+4|0;e=c[f>>2]|0;c[f>>2]=e+1;f=b+(e*48|0)|0;c[f>>2]=uH(d<<4)|0;c[b+(e*48|0)+4>>2]=d;b=b+(e*48|0)+8|0;e=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));return f|0}function QK(b,e,f,g,i){b=b|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0.0,F=0.0;D=l;l=l+96|0;A=D+16|0;u=D;x=D+92|0;y=D+88|0;v=D+80|0;m=c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0;z=ez(m)|0;B=PK(b,g)|0;n=b;while(1){o=c[n+16>>2]|0;if(!(a[o+112>>0]|0))break;n=c[o+116>>2]|0}if((a[i+8>>0]|0)==0?(j=c[m+16>>2]|0,k=c[e+16>>2]|0,(c[j+232>>2]|0)==(c[k+232>>2]|0)):0){p=(c[j+236>>2]|0)>(c[k+236>>2]|0);w=p?m:e;m=p?e:m}else w=e;if((m|0)==(c[((c[n>>2]&3|0)==3?n:n+48|0)+40>>2]|0)){j=o+80|0;k=o+40|0;p=d[o+86>>0]|0;e=d[o+46>>0]|0}else{j=o+40|0;k=o+80|0;p=d[o+46>>0]|0;e=d[o+86>>0]|0}o=c[j>>2]|0;j=c[k>>2]|0;if(((e|0)!=0?(r=m+16|0,q=c[(c[r>>2]|0)+8>>2]|0,(q|0)!=0):0)?(c[(c[q+4>>2]|0)+12>>2]|0)!=0:0){c[v>>2]=m;c[v+4>>2]=j;j=g+-4|0;e=u+8|0;k=0;while(1){if((k|0)>=(j|0))break;n=k+3|0;q=c[r>>2]|0;h[u>>3]=+h[f+(n<<4)>>3]-+h[q+16>>3];h[e>>3]=+h[f+(n<<4)+8>>3]-+h[q+24>>3];q=c[(c[(c[q+8>>2]|0)+4>>2]|0)+12>>2]|0;c[A>>2]=c[u>>2];c[A+4>>2]=c[u+4>>2];c[A+8>>2]=c[u+8>>2];c[A+12>>2]=c[u+12>>2];if(!((lb[q&127](v,A)|0)<<24>>24))break;else k=n}c[x>>2]=k;OK(v,m,f+(k<<4)|0,1)}else{c[x>>2]=0;k=0}if(((p|0)!=0?(t=w+16|0,s=c[(c[t>>2]|0)+8>>2]|0,(s|0)!=0):0)?(c[(c[s+4>>2]|0)+12>>2]|0)!=0:0){c[v>>2]=w;c[v+4>>2]=o;m=g+-4|0;e=u+8|0;j=m;while(1){if((j|0)<=0)break;g=c[t>>2]|0;h[u>>3]=+h[f+(j<<4)>>3]-+h[g+16>>3];h[e>>3]=+h[f+(j<<4)+8>>3]-+h[g+24>>3];g=c[(c[(c[g+8>>2]|0)+4>>2]|0)+12>>2]|0;c[A>>2]=c[u>>2];c[A+4>>2]=c[u+4>>2];c[A+8>>2]=c[u+8>>2];c[A+12>>2]=c[u+12>>2];if(!((lb[g&127](v,A)|0)<<24>>24))break;j=j+-3|0}c[y>>2]=j;OK(v,w,f+(j<<4)|0,0)}else{m=g+-4|0;c[y>>2]=m;j=m}while(1){if((k|0)>=(m|0))break;e=k+3|0;E=+h[f+(k<<4)>>3]-+h[f+(e<<4)>>3];F=+h[f+(k<<4)+8>>3]-+h[f+(e<<4)+8>>3];if(F*F+E*E<1.0e-06)k=e;else break}c[x>>2]=k;while(1){if((j|0)<=0)break;v=j+3|0;F=+h[f+(j<<4)>>3]-+h[f+(v<<4)>>3];E=+h[f+(j<<4)+8>>3]-+h[f+(v<<4)+8>>3];if(!(E*E+F*F<1.0e-06))break;j=j+-3|0}c[y>>2]=j;RK(b,w,f,x,y,B,i);r=c[x>>2]|0;n=c[y>>2]|0;m=n+4|0;n=n+3|0;o=A+16|0;p=A+32|0;q=A+48|0;k=z+16|0;j=r;while(1){if((j|0)>=(m|0))break;z=(c[B>>2]|0)+(j-r<<4)|0;e=f+(j<<4)|0;c[z>>2]=c[e>>2];c[z+4>>2]=c[e+4>>2];c[z+8>>2]=c[e+8>>2];c[z+12>>2]=c[e+12>>2];c[A>>2]=c[e>>2];c[A+4>>2]=c[e+4>>2];c[A+8>>2]=c[e+8>>2];c[A+12>>2]=c[e+12>>2];e=j+1|0;if((j|0)>=(n|0)){C=38;break}y=(c[B>>2]|0)+(e-r<<4)|0;z=f+(e<<4)|0;c[y>>2]=c[z>>2];c[y+4>>2]=c[z+4>>2];c[y+8>>2]=c[z+8>>2];c[y+12>>2]=c[z+12>>2];c[o>>2]=c[z>>2];c[o+4>>2]=c[z+4>>2];c[o+8>>2]=c[z+8>>2];c[o+12>>2]=c[z+12>>2];z=j+2|0;y=(c[B>>2]|0)+(z-r<<4)|0;z=f+(z<<4)|0;c[y>>2]=c[z>>2];c[y+4>>2]=c[z+4>>2];c[y+8>>2]=c[z+8>>2];c[y+12>>2]=c[z+12>>2];c[p>>2]=c[z>>2];c[p+4>>2]=c[z+4>>2];c[p+8>>2]=c[z+8>>2];c[p+12>>2]=c[z+12>>2];z=j+3|0;y=f+(z<<4)|0;c[q>>2]=c[y>>2];c[q+4>>2]=c[y+4>>2];c[q+8>>2]=c[y+8>>2];c[q+12>>2]=c[y+12>>2];YE((c[k>>2]|0)+16|0,A);j=z}c[B+4>>2]=m-r;l=D;return}function RK(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p+4|0;n=p;o=b;while(1){j=c[(c[o+16>>2]|0)+116>>2]|0;if(!j)break;else o=j}if(!(a[i+8>>0]|0))j=(kb[c[i>>2]&63](o)|0)&255;else j=0;sE(o,m,n);k=i+4|0;if((kb[c[k>>2]&63](d)|0)<<24>>24)c[n>>2]=0;if((kb[c[k>>2]&63](c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0)<<24>>24)c[m>>2]=0;if(j|0){d=c[m>>2]|0;c[m>>2]=c[n>>2];c[n>>2]=d}if(!(a[i+9>>0]|0)){j=c[m>>2]|0;if(j|0)c[f>>2]=HE(o,e,c[f>>2]|0,c[g>>2]|0,h,j)|0;j=c[n>>2]|0;if(j|0)c[g>>2]=FE(o,e,c[f>>2]|0,c[g>>2]|0,h,j)|0}else{k=c[n>>2]|0;j=c[m>>2]|0;if(j|k|0)IE(o,e,c[f>>2]|0,c[g>>2]|0,h,j,k)}l=p;return}function SK(a,b){a=a|0;b=b|0;var d=0,e=0;if(+h[b>>3]<+h[b+16>>3]?+h[b+8>>3]<+h[b+24>>3]:0){d=c[a+84>>2]|0;e=a+80|0;a=c[e>>2]|0;c[e>>2]=a+1;a=d+(a<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2]}return}function TK(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0,z=0.0;x=l;l=l+112|0;u=x+72|0;o=x+56|0;n=x+16|0;q=x;j=c[d>>2]&3;p=d+48|0;w=c[((j|0)==3?d:p)+40>>2]|0;t=d+16|0;r=c[t>>2]|0;i=r+16|0;if(a[r+47>>0]|0){HK(n,w,c[((j|0)==2?d:d+-48|0)+40>>2]|0,i);j=n;n=i+40|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(n|0))}r=w+16|0;j=c[r>>2]|0;i=c[j+8>>2]|0;if(!i)n=0;else n=c[(c[i+4>>2]|0)+16>>2]|0;i=j+16|0;j=(c[t>>2]|0)+16|0;c[o>>2]=c[i>>2];c[o+4>>2]=c[i+4>>2];c[o+8>>2]=c[i+8>>2];c[o+12>>2]=c[i+12>>2];c[u>>2]=c[j>>2];c[u+4>>2]=c[j+4>>2];c[u+8>>2]=c[j+8>>2];c[u+12>>2]=c[j+12>>2];UK(q,o,u);c[b>>2]=c[q>>2];c[b+4>>2]=c[q+4>>2];c[b+8>>2]=c[q+8>>2];c[b+12>>2]=c[q+12>>2];if(!(g<<24>>24)){i=c[t>>2]|0;if(!(a[i+45>>0]|0))i=0;else{k=+h[i+32>>3];v=9}}else{k=+VK(c[((c[d>>2]&3|0)==3?d:p)+40>>2]|0);v=9}if((v|0)==9){h[b+16>>3]=k;i=1}a[b+29>>0]=i;c[b+80>>2]=0;c[b+88>>2]=d;q=f+32|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];switch(e|0){case 1:{j=c[r>>2]|0;if((a[j+156>>0]|0)==0?(q=a[(c[t>>2]|0)+49>>0]|0,s=q&255,q<<24>>24!=0):0){c[u>>2]=c[f>>2];c[u+4>>2]=c[f+4>>2];c[u+8>>2]=c[f+8>>2];c[u+12>>2]=c[f+12>>2];c[u+16>>2]=c[f+16>>2];c[u+20>>2]=c[f+20>>2];c[u+24>>2]=c[f+24>>2];c[u+28>>2]=c[f+28>>2];do if(!(s&4)){if(s&1|0){c[f+48>>2]=1;i=u+24|0;h[i>>3]=+h[(+h[i>>3]>+h[b+8>>3]?u+16|0:b)+8>>3];i=f+56|0;c[i>>2]=c[u>>2];c[i+4>>2]=c[u+4>>2];c[i+8>>2]=c[u+8>>2];c[i+12>>2]=c[u+12>>2];c[i+16>>2]=c[u+16>>2];c[i+20>>2]=c[u+20>>2];c[i+24>>2]=c[u+24>>2];c[i+28>>2]=c[u+28>>2];i=1;break}i=f+48|0;if(!(s&8)){c[i>>2]=2;h[u>>3]=+h[b>>3];h[u+8>>3]=+h[j+24>>3]-+h[j+80>>3]*.5;h[u+24>>3]=+h[b+8>>3];i=f+56|0;c[i>>2]=c[u>>2];c[i+4>>2]=c[u+4>>2];c[i+8>>2]=c[u+8>>2];c[i+12>>2]=c[u+12>>2];c[i+16>>2]=c[u+16>>2];c[i+20>>2]=c[u+20>>2];c[i+24>>2]=c[u+24>>2];c[i+28>>2]=c[u+28>>2];i=1;break}else{c[i>>2]=8;h[u+16>>3]=+h[b>>3];h[u+8>>3]=+h[j+24>>3]-+h[j+80>>3]*.5;h[u+24>>3]=+h[b+8>>3];i=f+56|0;c[i>>2]=c[u>>2];c[i+4>>2]=c[u+4>>2];c[i+8>>2]=c[u+8>>2];c[i+12>>2]=c[u+12>>2];c[i+16>>2]=c[u+16>>2];c[i+20>>2]=c[u+20>>2];c[i+24>>2]=c[u+24>>2];c[i+28>>2]=c[u+28>>2];i=1;break}}else{c[f+48>>2]=4;k=+h[u>>3];if(+h[b>>3]<+h[j+16>>3]){z=k+-1.0;y=+h[b+8>>3];b=u+16|0;k=+h[b>>3];m=+h[j+80>>3]*.5+ +h[j+24>>3];m=m+ +((c[(c[(ez(w)|0)+16>>2]|0)+252>>2]|0)/2|0|0);i=c[r>>2]|0;h[b>>3]=+h[i+16>>3]-+h[i+88>>3];h[u+24>>3]=y;h[u+8>>3]=+h[i+24>>3]-+h[i+80>>3]*.5;h[u>>3]=z;h[f+56>>3]=z;h[f+64>>3]=y;h[f+72>>3]=k;h[f+80>>3]=m;i=f+88|0;c[i>>2]=c[u>>2];c[i+4>>2]=c[u+4>>2];c[i+8>>2]=c[u+8>>2];c[i+12>>2]=c[u+12>>2];c[i+16>>2]=c[u+16>>2];c[i+20>>2]=c[u+20>>2];c[i+24>>2]=c[u+24>>2];c[i+28>>2]=c[u+28>>2];i=2;break}else{m=+h[b+8>>3];i=u+16|0;y=+h[i>>3]+1.0;z=+h[j+80>>3]*.5+ +h[j+24>>3];z=z+ +((c[(c[(ez(w)|0)+16>>2]|0)+252>>2]|0)/2|0|0);b=c[r>>2]|0;h[u>>3]=+h[b+96>>3]+ +h[b+16>>3];h[u+24>>3]=m;h[u+8>>3]=+h[b+24>>3]-+h[b+80>>3]*.5;h[i>>3]=y;h[f+56>>3]=k;h[f+64>>3]=m;h[f+72>>3]=y;h[f+80>>3]=z;i=f+88|0;c[i>>2]=c[u>>2];c[i+4>>2]=c[u+4>>2];c[i+8>>2]=c[u+8>>2];c[i+12>>2]=c[u+12>>2];c[i+16>>2]=c[u+16>>2];c[i+20>>2]=c[u+20>>2];c[i+24>>2]=c[u+24>>2];c[i+28>>2]=c[u+28>>2];i=2;break}}while(0);c[f+52>>2]=i;while(1){i=c[d+16>>2]|0;if(!(a[i+112>>0]|0))break;d=c[i+116>>2]|0}a[((w|0)==(c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0)?i+16|0:i+56|0)+30>>0]=0}else{j=1;v=47}break}case 2:{s=a[(c[t>>2]|0)+49>>0]|0;j=s&255;if(!(s<<24>>24))v=46;else{c[u>>2]=c[f>>2];c[u+4>>2]=c[f+4>>2];c[u+8>>2]=c[f+8>>2];c[u+12>>2]=c[f+12>>2];c[u+16>>2]=c[f+16>>2];c[u+20>>2]=c[f+20>>2];c[u+24>>2]=c[f+24>>2];c[u+28>>2]=c[f+28>>2];do if(!(j&4)){if(j&1|0)if((c[f+48>>2]|0)==4){i=c[r>>2]|0;z=+h[i+24>>3]-+h[i+80>>3]*.5;i=u+16|0;y=+h[i>>3]+1.0;k=+h[b>>3];m=z-+((c[(c[(ez(w)|0)+16>>2]|0)+252>>2]|0)/2|0|0);b=c[r>>2]|0;h[u>>3]=+h[b+96>>3]+ +h[b+16>>3];h[u+8>>3]=z;h[u+24>>3]=+h[b+80>>3]*.5+ +h[b+24>>3];h[i>>3]=y;h[f+56>>3]=k;h[f+64>>3]=m;h[f+72>>3]=y;h[f+80>>3]=z;i=f+88|0;c[i>>2]=c[u>>2];c[i+4>>2]=c[u+4>>2];c[i+8>>2]=c[u+8>>2];c[i+12>>2]=c[u+12>>2];c[i+16>>2]=c[u+16>>2];c[i+20>>2]=c[u+20>>2];c[i+24>>2]=c[u+24>>2];c[i+28>>2]=c[u+28>>2];i=2;break}else{i=u+24|0;h[i>>3]=+h[(+h[i>>3]>+h[b+8>>3]?u+16|0:b)+8>>3];i=f+56|0;c[i>>2]=c[u>>2];c[i+4>>2]=c[u+4>>2];c[i+8>>2]=c[u+8>>2];c[i+12>>2]=c[u+12>>2];c[i+16>>2]=c[u+16>>2];c[i+20>>2]=c[u+20>>2];c[i+24>>2]=c[u+24>>2];c[i+28>>2]=c[u+28>>2];i=1;break}k=+h[b>>3];if(!(j&8)){h[u>>3]=k;e=c[r>>2]|0;k=+h[e+24>>3];m=+h[e+80>>3]*.5;if((c[f+48>>2]|0)==4){h[u+24>>3]=m+k;k=+h[b+8>>3];i=u}else{h[u+8>>3]=k-m;k=+h[b+8>>3]+1.0;i=u+16|0}h[i+8>>3]=k;i=f+56|0;c[i>>2]=c[u>>2];c[i+4>>2]=c[u+4>>2];c[i+8>>2]=c[u+8>>2];c[i+12>>2]=c[u+12>>2];c[i+16>>2]=c[u+16>>2];c[i+20>>2]=c[u+20>>2];c[i+24>>2]=c[u+24>>2];c[i+28>>2]=c[u+28>>2];i=1;break}else{i=u+16|0;h[i>>3]=k+1.0;e=c[r>>2]|0;k=+h[e+24>>3];m=+h[e+80>>3]*.5;if((c[f+48>>2]|0)==4){h[u+24>>3]=m+k;k=+h[b+8>>3]+-1.0;i=u}else{h[u+8>>3]=k-m;k=+h[b+8>>3]+1.0}h[i+8>>3]=k;i=f+56|0;c[i>>2]=c[u>>2];c[i+4>>2]=c[u+4>>2];c[i+8>>2]=c[u+8>>2];c[i+12>>2]=c[u+12>>2];c[i+16>>2]=c[u+16>>2];c[i+20>>2]=c[u+20>>2];c[i+24>>2]=c[u+24>>2];c[i+28>>2]=c[u+28>>2];i=1;break}}else{i=u+8|0;h[i>>3]=+h[(+h[i>>3]<+h[b+8>>3]?u:b)+8>>3];i=f+56|0;c[i>>2]=c[u>>2];c[i+4>>2]=c[u+4>>2];c[i+8>>2]=c[u+8>>2];c[i+12>>2]=c[u+12>>2];c[i+16>>2]=c[u+16>>2];c[i+20>>2]=c[u+20>>2];c[i+24>>2]=c[u+24>>2];c[i+28>>2]=c[u+28>>2];i=1}while(0);c[f+52>>2]=i;while(1){i=c[d+16>>2]|0;if(!(a[i+112>>0]|0))break;d=c[i+116>>2]|0}a[((w|0)==(c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0)?i+16|0:i+56|0)+30>>0]=0;c[f+48>>2]=j}break}default:v=46}if((v|0)==46){j=c[f+48>>2]|0;v=47}a:do if((v|0)==47){if(n){d=f+56|0;i=f+52|0;j=pb[n&127](w,(c[t>>2]|0)+16|0,j,d,i)|0;if(j){c[f+48>>2]=j;break}}else{i=f+52|0;d=f+56|0};c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];c[d+16>>2]=c[f+16>>2];c[d+20>>2]=c[f+20>>2];c[d+24>>2]=c[f+24>>2];c[d+28>>2]=c[f+28>>2];c[i>>2]=1;switch(e|0){case 8:{qa(135312,103488,569,103498);break}case 2:{h[((c[f+48>>2]|0)==4?f+56|0:f+72|0)+8>>3]=+h[b+8>>3];break a}case 1:{h[f+80>>3]=+h[b+8>>3];c[f+48>>2]=1;break a}default:break a}}while(0);l=x;return}function UK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+h[c+8>>3]+ +h[b+8>>3];h[a>>3]=+h[c>>3]+ +h[b>>3];h[a+8>>3]=d;return}function VK(a){a=a|0;var b=0.0,d=0,e=0,f=0.0,g=0,i=0,j=0,k=0.0,l=0.0;i=c[a+16>>2]|0;j=c[i+172>>2]|0;f=0.0;g=0;while(1){a=c[j+(g<<2)>>2]|0;if(!a)break;f=+h[(c[(c[((c[a>>2]&3|0)==3?a:a+48|0)+40>>2]|0)+16>>2]|0)+16>>3]+f;g=g+1|0}e=c[i+180>>2]|0;b=0.0;a=0;while(1){d=c[e+(a<<2)>>2]|0;if(!d)break;b=+h[(c[(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0)+16>>2]|0)+16>>3]+b;a=a+1|0}k=+h[i+16>>3];l=+h[i+24>>3];j=c[j>>2]|0;f=+K(+(l-+h[(c[(c[((c[j>>2]&3|0)==3?j:j+48|0)+40>>2]|0)+16>>2]|0)+24>>3]),+(k-f/+(g|0)));j=c[e>>2]|0;return +((+K(+(+h[(c[(c[((c[j>>2]&3|0)==2?j:j+-48|0)+40>>2]|0)+16>>2]|0)+24>>3]-l),+(b/+(a|0)-k))+f)*.5)}function WK(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0;z=l;l=l+112|0;w=z+72|0;p=z+56|0;n=z+16|0;t=z;j=c[d>>2]&3;r=d+-48|0;y=c[((j|0)==2?d:r)+40>>2]|0;u=d+16|0;s=c[u>>2]|0;i=s+56|0;if(a[s+87>>0]|0){HK(n,y,c[((j|0)==3?d:d+48|0)+40>>2]|0,i);j=n;n=i+40|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(n|0))}s=y+16|0;j=c[s>>2]|0;i=c[j+8>>2]|0;if(!i)o=0;else o=c[(c[i+4>>2]|0)+16>>2]|0;n=b+40|0;i=j+16|0;j=(c[u>>2]|0)+56|0;c[p>>2]=c[i>>2];c[p+4>>2]=c[i+4>>2];c[p+8>>2]=c[i+8>>2];c[p+12>>2]=c[i+12>>2];c[w>>2]=c[j>>2];c[w+4>>2]=c[j+4>>2];c[w+8>>2]=c[j+8>>2];c[w+12>>2]=c[j+12>>2];UK(t,p,w);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];c[n+8>>2]=c[t+8>>2];c[n+12>>2]=c[t+12>>2];if(!(g<<24>>24)){i=c[u>>2]|0;if(!(a[i+85>>0]|0))q=0;else{h[b+56>>3]=+h[i+72>>3];q=1}}else{m=+VK(c[((c[d>>2]&3|0)==2?d:r)+40>>2]|0)+3.141592653589793;h[b+56>>3]=m;if(m<6.283185307179586)q=1;else qa(103508,103488,606,103532)}a[b+69>>0]=q;t=f+32|0;c[t>>2]=c[n>>2];c[t+4>>2]=c[n+4>>2];c[t+8>>2]=c[n+8>>2];c[t+12>>2]=c[n+12>>2];switch(e|0){case 1:{j=c[s>>2]|0;if((a[j+156>>0]|0)==0?(t=a[(c[u>>2]|0)+89>>0]|0,v=t&255,t<<24>>24!=0):0){c[w>>2]=c[f>>2];c[w+4>>2]=c[f+4>>2];c[w+8>>2]=c[f+8>>2];c[w+12>>2]=c[f+12>>2];c[w+16>>2]=c[f+16>>2];c[w+20>>2]=c[f+20>>2];c[w+24>>2]=c[f+24>>2];c[w+28>>2]=c[f+28>>2];do if(!(v&4))if(!(v&1)){i=f+48|0;if(!(v&8)){c[i>>2]=2;h[w>>3]=+h[n>>3];h[w+24>>3]=+h[j+80>>3]*.5+ +h[j+24>>3];h[w+8>>3]=+h[b+48>>3];i=f+56|0;c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2];c[i+16>>2]=c[w+16>>2];c[i+20>>2]=c[w+20>>2];c[i+24>>2]=c[w+24>>2];c[i+28>>2]=c[w+28>>2];i=1;break}else{c[i>>2]=8;h[w+16>>3]=+h[n>>3];h[w+24>>3]=+h[j+80>>3]*.5+ +h[j+24>>3];h[w+8>>3]=+h[b+48>>3];i=f+56|0;c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2];c[i+16>>2]=c[w+16>>2];c[i+20>>2]=c[w+20>>2];c[i+24>>2]=c[w+24>>2];c[i+28>>2]=c[w+28>>2];i=1;break}}else{c[f+48>>2]=1;k=+h[w>>3];if(+h[n>>3]<+h[j+16>>3]){B=k+-1.0;m=+h[b+48>>3];b=w+16|0;k=+h[b>>3];A=+h[j+80>>3]*-.5+ +h[j+24>>3];A=A-+((c[(c[(ez(y)|0)+16>>2]|0)+252>>2]|0)/2|0|0);i=c[s>>2]|0;h[b>>3]=+h[i+16>>3]-+h[i+88>>3];h[w+8>>3]=m;h[w+24>>3]=+h[i+80>>3]*.5+ +h[i+24>>3];h[w>>3]=B;h[f+56>>3]=B;h[f+64>>3]=A;h[f+72>>3]=k;h[f+80>>3]=m;i=f+88|0;c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2];c[i+16>>2]=c[w+16>>2];c[i+20>>2]=c[w+20>>2];c[i+24>>2]=c[w+24>>2];c[i+28>>2]=c[w+28>>2];i=2;break}else{B=+h[b+48>>3];i=w+16|0;A=+h[i>>3]+1.0;m=+h[j+80>>3]*-.5+ +h[j+24>>3];m=m-+((c[(c[(ez(y)|0)+16>>2]|0)+252>>2]|0)/2|0|0);b=c[s>>2]|0;h[w>>3]=+h[b+96>>3]+ +h[b+16>>3];h[w+8>>3]=B;h[w+24>>3]=+h[b+80>>3]*.5+ +h[b+24>>3];h[i>>3]=A;h[f+56>>3]=k;h[f+64>>3]=m;h[f+72>>3]=A;h[f+80>>3]=B;i=f+88|0;c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2];c[i+16>>2]=c[w+16>>2];c[i+20>>2]=c[w+20>>2];c[i+24>>2]=c[w+24>>2];c[i+28>>2]=c[w+28>>2];i=2;break}}else{c[f+48>>2]=4;i=w+8|0;h[i>>3]=+h[(+h[i>>3]<+h[b+48>>3]?w:n)+8>>3];i=f+56|0;c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2];c[i+16>>2]=c[w+16>>2];c[i+20>>2]=c[w+20>>2];c[i+24>>2]=c[w+24>>2];c[i+28>>2]=c[w+28>>2];i=1}while(0);c[f+52>>2]=i;while(1){i=c[d+16>>2]|0;if(!(a[i+112>>0]|0))break;d=c[i+116>>2]|0}a[((y|0)==(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0)?i+56|0:i+16|0)+30>>0]=0;c[f+48>>2]=v}else{j=4;x=47}break}case 2:{v=a[(c[u>>2]|0)+89>>0]|0;j=v&255;if(!(v<<24>>24))x=46;else{c[w>>2]=c[f>>2];c[w+4>>2]=c[f+4>>2];c[w+8>>2]=c[f+8>>2];c[w+12>>2]=c[f+12>>2];c[w+16>>2]=c[f+16>>2];c[w+20>>2]=c[f+20>>2];c[w+24>>2]=c[f+24>>2];c[w+28>>2]=c[f+28>>2];do if(!(j&4)){if(j&1|0)if((c[f+48>>2]|0)==4){k=+h[w>>3]+-1.0;i=c[s>>2]|0;B=+h[i+24>>3]-+h[i+80>>3]*.5;A=+h[n>>3];m=B-+((c[(c[(ez(y)|0)+16>>2]|0)+252>>2]|0)/2|0|0);i=c[s>>2]|0;h[w+16>>3]=+h[i+16>>3]+-2.0-+h[i+88>>3];h[w+8>>3]=B;h[w+24>>3]=+h[i+80>>3]*.5+ +h[i+24>>3];h[w>>3]=k;h[f+56>>3]=k;h[f+64>>3]=m;h[f+72>>3]=A;h[f+80>>3]=B;i=f+88|0;c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2];c[i+16>>2]=c[w+16>>2];c[i+20>>2]=c[w+20>>2];c[i+24>>2]=c[w+24>>2];c[i+28>>2]=c[w+28>>2];i=2;break}else{i=w+24|0;h[i>>3]=+h[(+h[i>>3]>+h[b+8>>3]?w+16|0:b)+8>>3];i=f+56|0;c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2];c[i+16>>2]=c[w+16>>2];c[i+20>>2]=c[w+20>>2];c[i+24>>2]=c[w+24>>2];c[i+28>>2]=c[w+28>>2];i=1;break}k=+h[n>>3];if(!(j&8)){h[w>>3]=k+-1.0;e=c[s>>2]|0;k=+h[e+24>>3];m=+h[e+80>>3]*.5;if((c[f+48>>2]|0)==4){h[w+24>>3]=m+k;k=+h[b+48>>3]+-1.0;i=w}else{h[w+8>>3]=k-m;k=+h[b+48>>3];i=w+16|0}h[i+8>>3]=k;i=f+56|0;c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2];c[i+16>>2]=c[w+16>>2];c[i+20>>2]=c[w+20>>2];c[i+24>>2]=c[w+24>>2];c[i+28>>2]=c[w+28>>2];i=1;break}else{i=w+16|0;h[i>>3]=k+1.0;e=c[s>>2]|0;k=+h[e+24>>3];m=+h[e+80>>3]*.5;if((c[f+48>>2]|0)==4){h[w+24>>3]=m+k;k=+h[b+48>>3]+-1.0;i=w}else{h[w+8>>3]=k-m;k=+h[b+48>>3]+1.0}h[i+8>>3]=k;i=f+56|0;c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2];c[i+16>>2]=c[w+16>>2];c[i+20>>2]=c[w+20>>2];c[i+24>>2]=c[w+24>>2];c[i+28>>2]=c[w+28>>2];i=1;break}}else{i=w+8|0;h[i>>3]=+h[(+h[i>>3]<+h[b+48>>3]?w:n)+8>>3];i=f+56|0;c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2];c[i+16>>2]=c[w+16>>2];c[i+20>>2]=c[w+20>>2];c[i+24>>2]=c[w+24>>2];c[i+28>>2]=c[w+28>>2];i=1}while(0);c[f+52>>2]=i;while(1){i=c[d+16>>2]|0;if(!(a[i+112>>0]|0))break;d=c[i+116>>2]|0}a[((y|0)==(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0)?i+56|0:i+16|0)+30>>0]=0;c[f+48>>2]=j}break}default:x=46}if((x|0)==46){j=c[f+48>>2]|0;x=47}a:do if((x|0)==47){if(o){d=f+56|0;i=f+52|0;j=pb[o&127](y,(c[u>>2]|0)+56|0,j,d,i)|0;if(j){c[f+48>>2]=j;break}}else{i=f+52|0;d=f+56|0};c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];c[d+16>>2]=c[f+16>>2];c[d+20>>2]=c[f+20>>2];c[d+24>>2]=c[f+24>>2];c[d+28>>2]=c[f+28>>2];c[i>>2]=1;switch(e|0){case 8:{qa(135312,103488,765,103532);break}case 2:{h[((c[f+48>>2]|0)==4?f+56|0:f+72|0)+8>>3]=+h[b+48>>3];break a}case 1:{h[f+64>>3]=+h[b+48>>3];c[f+48>>2]=4;break a}default:break a}}while(0);l=z;return}function XK(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0;g=c[b+16>>2]|0;i=c[g+96>>2]|0;if((a[g+44>>0]|0)==0?(a[g+84>>0]|0)==0:0)j=6;else{d=a[g+49>>0]|0;e=d&255;if(((e&8|0)==0?(f=a[g+89>>0]|0,(f&8)==0):0)?((e&5|0)==0?1:d<<24>>24!=f<<24>>24):0)j=6;else b=0}if((j|0)==6)if(!i)b=18;else{b=(c[(c[(ez(c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)|0)+16>>2]|0)+116>>2]&1|0)!=0;b=~~(+h[(b?i+32|0:i+24|0)>>3]+18.0)}return b|0}function YK(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,l=0,m=0;b=c[(c[d+(e<<2)>>2]|0)+16>>2]|0;if((a[b+44>>0]|0)==0?(a[b+84>>0]|0)==0:0)l=6;else l=3;do if((l|0)==3){j=a[b+49>>0]|0;k=j&255;if(!(k&8)){m=a[b+89>>0]|0;if((m&8)==0?((k&5|0)==0?1:j<<24>>24!=m<<24>>24):0){l=6;break}if(!(a[b+89>>0]&8)){if(k&4|0){_K(d,e,f,g,h,i);break}if(!(k&1))qa(135312,103488,1231,103540);else{aL(d,e,f,g,h,i);break}}}if((j&2)==0?(a[b+89>>0]&2)==0:0){$K(d,e,f,g,h,i);break}_K(d,e,f,g,h,i)}while(0);if((l|0)==6)ZK(d,e,f,g,h,i);return}function ZK(b,e,f,g,i,j){b=b|0;e=e|0;f=f|0;g=+g;i=+i;j=j|0;var k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0.0,A=0,B=0,C=0.0,D=0,E=0.0,F=0.0,G=0.0,H=0.0,I=0.0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0.0,R=0.0,S=0;P=l;l=l+16080|0;L=P+80|0;M=P+64|0;N=P+48|0;O=P+32|0;J=P+16|0;K=P;B=c[b+(e<<2)>>2]|0;n=i*.5/+(f|0);n=n>2.0?n:2.0;D=(c[((c[B>>2]&3|0)==3?B:B+48|0)+40>>2]|0)+16|0;A=c[D>>2]|0;C=+h[A+16>>3];H=+h[A+24>>3];B=c[B+16>>2]|0;m=+h[B+16>>3];E=m+C;F=+h[B+24>>3]+H;i=+h[B+56>>3];G=i+C;H=+h[B+64>>3]+H;k=!(F>=H)?-1:1;p=+h[A+96>>3];switch(bL(d[B+49>>0]|0,d[B+89>>0]|0)|0){case 65:case 32:{if(F==H)k=0-k|0;break}default:{}}Q=(p-m)*3.0;m=(p-i)*3.0;v=n*+(k|0);u=L+8|0;w=L+16|0;x=L+32|0;y=L+48|0;z=(H+F)*.5;A=L+64|0;B=L+80|0;s=L+96|0;t=L+104|0;r=0;o=0.0;i=p;n=p<Q?p:Q;m=p<m?p:m;while(1){if((r|0)>=(f|0))break;q=e+1|0;e=c[b+(e<<2)>>2]|0;p=i+g;n=n+g;m=m+g;o=o+v;h[L>>3]=E;h[u>>3]=F;Q=o+F;cL(M,n*.3333333333333333+E,Q);c[w>>2]=c[M>>2];c[w+4>>2]=c[M+4>>2];c[w+8>>2]=c[M+8>>2];c[w+12>>2]=c[M+12>>2];R=p+C;cL(N,R,Q);c[x>>2]=c[N>>2];c[x+4>>2]=c[N+4>>2];c[x+8>>2]=c[N+8>>2];c[x+12>>2]=c[N+12>>2];cL(O,R,z);c[y>>2]=c[O>>2];c[y+4>>2]=c[O+4>>2];c[y+8>>2]=c[O+8>>2];c[y+12>>2]=c[O+12>>2];Q=H-o;cL(J,R,Q);c[A>>2]=c[J>>2];c[A+4>>2]=c[J+4>>2];c[A+8>>2]=c[J+8>>2];c[A+12>>2]=c[J+12>>2];cL(K,m*.3333333333333333+G,Q);c[B>>2]=c[K>>2];c[B+4>>2]=c[K+4>>2];c[B+8>>2]=c[K+8>>2];c[B+12>>2]=c[K+12>>2];h[s>>3]=G;h[t>>3]=H;k=e+16|0;if((c[(c[k>>2]|0)+96>>2]|0)!=0?(S=(c[(c[(ez(c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)|0)+16>>2]|0)+116>>2]&1|0)==0,k=c[(c[k>>2]|0)+96>>2]|0,I=+h[(S?k+24|0:k+32|0)>>3],S=c[D>>2]|0,h[k+56>>3]=I*.5+p+ +h[S+16>>3],h[k+64>>3]=+h[S+24>>3],a[k+81>>0]=1,I>g):0)i=I+i;else i=p;QK(e,c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,L,7,j);e=q;r=r+1|0}l=P;return}function _K(b,e,f,g,i,j){b=b|0;e=e|0;f=f|0;g=+g;i=+i;j=j|0;var k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.0,E=0,F=0.0,G=0.0,H=0.0,I=0.0,J=0.0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0.0,S=0;Q=l;l=l+16080|0;M=Q+80|0;N=Q+64|0;O=Q+48|0;P=Q+32|0;K=Q+16|0;L=Q;C=c[b+(e<<2)>>2]|0;q=g*.5/+(f|0);q=q>2.0?q:2.0;E=(c[((c[C>>2]&3|0)==3?C:C+48|0)+40>>2]|0)+16|0;m=c[E>>2]|0;H=+h[m+16>>3];D=+h[m+24>>3];C=c[C+16>>2]|0;k=+h[C+16>>3];p=+h[C+24>>3];F=k+H;G=p+D;g=+h[C+56>>3];o=+h[C+64>>3];H=g+H;I=o+D;n=!(F>=H)?-1.0:1.0;s=+h[m+80>>3]*.5;switch(bL(d[C+49>>0]|0,d[C+89>>0]|0)|0){case 15:{k=(q-g+ +h[m+96>>3])*n;break}case 38:{k=(g+q+ +h[m+88>>3])*n;break}case 41:{k=(q-k+ +h[m+96>>3])*n;break}case 48:{k=(q-k+ +h[m+96>>3])*n;break}case 58:case 57:case 51:case 47:case 37:case 14:{k=n*.3333333333333333*(k-g+ +h[m+88>>3]+ +h[m+96>>3]);break}case 73:{k=(k+q+ +h[m+88>>3])*n;break}case 83:{k=(+h[m+88>>3]+k)*n;break}case 84:{k=((k-g+ +h[m+88>>3]+ +h[m+96>>3])*.5+q)*n;break}case 85:case 75:case 74:{k=((k-g+ +h[m+88>>3]+ +h[m+96>>3])*.5+q*2.0)*n;break}default:k=0.0}p=(s-p)*3.0;o=(s-o)*3.0;q=n*q;w=M+8|0;x=M+16|0;y=M+32|0;z=M+48|0;A=(H+F)*.5;B=M+64|0;C=M+80|0;u=M+96|0;v=M+104|0;t=0;g=s;p=s<p?s:p;n=s<o?s:o;while(1){if((t|0)>=(f|0))break;r=e+1|0;e=c[b+(e<<2)>>2]|0;o=g+i;p=p+i;n=n+i;k=k+q;h[M>>3]=F;h[w>>3]=G;s=k+F;cL(N,s,p*.3333333333333333+G);c[x>>2]=c[N>>2];c[x+4>>2]=c[N+4>>2];c[x+8>>2]=c[N+8>>2];c[x+12>>2]=c[N+12>>2];R=o+D;cL(O,s,R);c[y>>2]=c[O>>2];c[y+4>>2]=c[O+4>>2];c[y+8>>2]=c[O+8>>2];c[y+12>>2]=c[O+12>>2];cL(P,A,R);c[z>>2]=c[P>>2];c[z+4>>2]=c[P+4>>2];c[z+8>>2]=c[P+8>>2];c[z+12>>2]=c[P+12>>2];s=H-k;cL(K,s,R);c[B>>2]=c[K>>2];c[B+4>>2]=c[K+4>>2];c[B+8>>2]=c[K+8>>2];c[B+12>>2]=c[K+12>>2];cL(L,s,n*.3333333333333333+I);c[C>>2]=c[L>>2];c[C+4>>2]=c[L+4>>2];c[C+8>>2]=c[L+8>>2];c[C+12>>2]=c[L+12>>2];h[u>>3]=H;h[v>>3]=I;m=e+16|0;if((c[(c[m>>2]|0)+96>>2]|0)!=0?(S=(c[(c[(ez(c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)|0)+16>>2]|0)+116>>2]&1|0)==0,m=c[(c[m>>2]|0)+96>>2]|0,J=+h[(S?m+32|0:m+24|0)>>3],S=c[E>>2]|0,h[m+64>>3]=J*.5+o+ +h[S+24>>3],h[m+56>>3]=+h[S+16>>3],a[m+81>>0]=1,J>i):0)g=J+g;else g=o;QK(e,c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,M,7,j);e=r;t=t+1|0}l=Q;return}function $K(b,e,f,g,i,j){b=b|0;e=e|0;f=f|0;g=+g;i=+i;j=j|0;var k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0.0,A=0,B=0,C=0.0,D=0,E=0.0,F=0.0,G=0.0,H=0.0,I=0.0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0.0,R=0.0,S=0;P=l;l=l+16080|0;L=P+80|0;M=P+64|0;N=P+48|0;O=P+32|0;J=P+16|0;K=P;B=c[b+(e<<2)>>2]|0;n=i*.5/+(f|0);n=n>2.0?n:2.0;D=(c[((c[B>>2]&3|0)==3?B:B+48|0)+40>>2]|0)+16|0;A=c[D>>2]|0;C=+h[A+16>>3];H=+h[A+24>>3];B=c[B+16>>2]|0;m=+h[B+16>>3];E=m+C;F=+h[B+24>>3]+H;i=+h[B+56>>3];G=i+C;H=+h[B+64>>3]+H;k=!(F>=H)?-1:1;p=+h[A+88>>3];switch(bL(d[B+49>>0]|0,d[B+89>>0]|0)|0){case 67:case 12:{if(F==H)k=0-k|0;break}default:{}}Q=(m+p)*3.0;m=(i+p)*3.0;v=n*+(k|0);u=L+8|0;w=L+16|0;x=L+32|0;y=L+48|0;z=(H+F)*.5;A=L+64|0;B=L+80|0;s=L+96|0;t=L+104|0;r=0;o=0.0;i=p;n=p<Q?p:Q;m=p<m?p:m;while(1){if((r|0)>=(f|0))break;q=e+1|0;e=c[b+(e<<2)>>2]|0;p=i+g;n=n+g;m=m+g;o=o+v;h[L>>3]=E;h[u>>3]=F;Q=o+F;cL(M,E-n*.3333333333333333,Q);c[w>>2]=c[M>>2];c[w+4>>2]=c[M+4>>2];c[w+8>>2]=c[M+8>>2];c[w+12>>2]=c[M+12>>2];R=C-p;cL(N,R,Q);c[x>>2]=c[N>>2];c[x+4>>2]=c[N+4>>2];c[x+8>>2]=c[N+8>>2];c[x+12>>2]=c[N+12>>2];cL(O,R,z);c[y>>2]=c[O>>2];c[y+4>>2]=c[O+4>>2];c[y+8>>2]=c[O+8>>2];c[y+12>>2]=c[O+12>>2];Q=H-o;cL(J,R,Q);c[A>>2]=c[J>>2];c[A+4>>2]=c[J+4>>2];c[A+8>>2]=c[J+8>>2];c[A+12>>2]=c[J+12>>2];cL(K,G-m*.3333333333333333,Q);c[B>>2]=c[K>>2];c[B+4>>2]=c[K+4>>2];c[B+8>>2]=c[K+8>>2];c[B+12>>2]=c[K+12>>2];h[s>>3]=G;h[t>>3]=H;k=e+16|0;if((c[(c[k>>2]|0)+96>>2]|0)!=0?(S=(c[(c[(ez(c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)|0)+16>>2]|0)+116>>2]&1|0)==0,k=c[(c[k>>2]|0)+96>>2]|0,I=+h[(S?k+24|0:k+32|0)>>3],S=c[D>>2]|0,h[k+56>>3]=I*-.5-p+ +h[S+16>>3],h[k+64>>3]=+h[S+24>>3],a[k+81>>0]=1,I>g):0)i=I+i;else i=p;QK(e,c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,L,7,j);e=q;r=r+1|0}l=P;return}function aL(b,e,f,g,i,j){b=b|0;e=e|0;f=f|0;g=+g;i=+i;j=j|0;var k=0.0,m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0,F=0.0,G=0,H=0,I=0.0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0.0,R=0.0,S=0;P=l;l=l+16080|0;L=P+80|0;M=P+64|0;N=P+48|0;O=P+32|0;J=P+16|0;K=P;C=c[b+(e<<2)>>2]|0;B=g*.5/+(f|0);w=(c[((c[C>>2]&3|0)==3?C:C+48|0)+40>>2]|0)+16|0;D=c[w>>2]|0;z=+h[D+16>>3];v=+h[D+24>>3];C=c[C+16>>2]|0;m=+h[C+24>>3];x=+h[C+16>>3]+z;y=m+v;n=+h[C+64>>3];z=+h[C+56>>3]+z;A=n+v;u=!(x>=z)?-1:1;o=+h[D+80>>3]*.5;C=(bL(d[C+49>>0]|0,d[C+89>>0]|0)|0)==67;m=(m+o)*3.0;n=(n+o)*3.0;B=(B>2.0?B:2.0)*+((C?0-u|0:u)|0);u=L+8|0;C=L+16|0;D=L+32|0;E=L+48|0;F=(z+x)*.5;G=L+64|0;H=L+80|0;s=L+96|0;t=L+104|0;g=o;k=0.0;m=o<m?o:m;n=o<n?o:n;q=0;while(1){if((q|0)>=(f|0))break;r=e+1|0;p=c[b+(e<<2)>>2]|0;o=g+i;m=m+i;n=n+i;k=k+B;h[L>>3]=x;h[u>>3]=y;Q=k+x;cL(M,Q,y-m*.3333333333333333);c[C>>2]=c[M>>2];c[C+4>>2]=c[M+4>>2];c[C+8>>2]=c[M+8>>2];c[C+12>>2]=c[M+12>>2];R=v-o;cL(N,Q,R);c[D>>2]=c[N>>2];c[D+4>>2]=c[N+4>>2];c[D+8>>2]=c[N+8>>2];c[D+12>>2]=c[N+12>>2];cL(O,F,R);c[E>>2]=c[O>>2];c[E+4>>2]=c[O+4>>2];c[E+8>>2]=c[O+8>>2];c[E+12>>2]=c[O+12>>2];Q=z-k;cL(J,Q,R);c[G>>2]=c[J>>2];c[G+4>>2]=c[J+4>>2];c[G+8>>2]=c[J+8>>2];c[G+12>>2]=c[J+12>>2];cL(K,Q,A-n*.3333333333333333);c[H>>2]=c[K>>2];c[H+4>>2]=c[K+4>>2];c[H+8>>2]=c[K+8>>2];c[H+12>>2]=c[K+12>>2];h[s>>3]=z;h[t>>3]=A;e=p+16|0;if((c[(c[e>>2]|0)+96>>2]|0)!=0?(S=(c[(c[(ez(c[((c[p>>2]&3|0)==3?p:p+48|0)+40>>2]|0)|0)+16>>2]|0)+116>>2]&1|0)==0,e=c[(c[e>>2]|0)+96>>2]|0,I=+h[(S?e+32|0:e+24|0)>>3],S=c[w>>2]|0,h[e+64>>3]=I*-.5-o+ +h[S+24>>3],h[e+56>>3]=+h[S+16>>3],a[e+81>>0]=1,I>i):0)g=I+g;else g=o;QK(p,c[((c[p>>2]&3|0)==2?p:p+-48|0)+40>>2]|0,L,7,j);e=r;q=q+1|0}l=P;return}function bL(a,b){a=a|0;b=b|0;var d=0;d=0;while(1){if((d|0)>=8){b=-1;break}if((c[21940+(d<<2)>>2]|0)==(b|0)){b=d;break}d=d+1|0}d=0;while(1){if((d|0)>=8){d=-1;break}if((c[21940+(d<<2)>>2]|0)==(a|0))break;d=d+1|0}if((d|b|0)<0)d=0;else d=c[21972+(d<<5)+(b<<2)>>2]|0;return d|0}function cL(a,b,c){a=a|0;b=+b;c=+c;h[a>>3]=b;h[a+8>>3]=c;return}function dL(b){b=b|0;var d=0,e=0;if((c[46433]|0)!=0|(c[46432]|0)!=0){d=b+16|0;e=c[(c[d>>2]|0)+100>>2]|0;if((e|0?(a[e+81>>0]|0)==0:0)?eL(b,1)|0:0){e=ez(c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0;kM(e,c[(c[d>>2]|0)+100>>2]|0)}e=c[(c[d>>2]|0)+104>>2]|0;if((e|0?(a[e+81>>0]|0)==0:0)?eL(b,0)|0:0){e=ez(c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0;kM(e,c[(c[d>>2]|0)+104>>2]|0)}}return}function eL(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+96|0;o=q+32|0;m=q+16|0;n=q;i=b+16|0;do if((a[(c[i>>2]|0)+112>>0]|0)!=6){e=c[46433]|0;if(!((e|0)!=0?(a[(yx(b,e)|0)>>0]|0)!=0:0)){e=c[46432]|0;if(!e){e=0;break}if(!(a[(yx(b,e)|0)>>0]|0)){e=0;break}}d=d<<24>>24==0;p=c[i>>2]|0;p=c[(d?p+104|0:p+100|0)>>2]|0;e=fL(b)|0;if(e){k=c[e>>2]|0;do if(d){if(c[k+8>>2]|0){e=c[k>>2]|0;j=+h[e>>3];g=+h[k+16>>3];e=e+8|0;f=+h[k+24>>3];break}e=c[k>>2]|0;g=+h[e>>3];f=+h[e+8>>3];e=0;while(1){if((e|0)==4)break;n=o+(e<<4)|0;i=(c[k>>2]|0)+(e<<4)|0;c[n>>2]=c[i>>2];c[n+4>>2]=c[i+4>>2];c[n+8>>2]=c[i+8>>2];c[n+12>>2]=c[i+12>>2];e=e+1|0}XL(m,o,3,.1,0,0);j=+h[m>>3];e=m+8|0}else{d=(c[e+4>>2]|0)+-1|0;i=k+(d*48|0)|0;if(c[k+(d*48|0)+12>>2]|0){o=c[i>>2]|0;e=(c[k+(d*48|0)+4>>2]|0)+-1|0;j=+h[o+(e<<4)>>3];g=+h[k+(d*48|0)+32>>3];e=o+(e<<4)+8|0;f=+h[k+(d*48|0)+40>>3];break}m=c[i>>2]|0;d=k+(d*48|0)+4|0;e=(c[d>>2]|0)+-1|0;g=+h[m+(e<<4)>>3];f=+h[m+(e<<4)+8>>3];e=0;while(1){if((e|0)==4)break;m=o+(e<<4)|0;k=(c[i>>2]|0)+(e+-4+(c[d>>2]|0)<<4)|0;c[m>>2]=c[k>>2];c[m+4>>2]=c[k+4>>2];c[m+8>>2]=c[k+8>>2];c[m+12>>2]=c[k+12>>2];e=e+1|0}XL(n,o,3,.9,0,0);j=+h[n>>3];e=n+8|0}while(0);r=+K(+(+h[e>>3]-f),+(j-g));r=+LL(b,c[46433]|0,-25.0,-180.0)*.017453292519943295+r;j=+LL(b,c[46432]|0,1.0,0.0)*10.0;h[p+56>>3]=j*+E(+r)+g;h[p+64>>3]=+F(+r)*j+f;a[p+81>>0]=1;e=1}else e=0}else e=0;while(0);l=q;return e|0}function fL(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;f=h;d=b;while(1){e=c[d+16>>2]|0;d=c[e+8>>2]|0;if(d|0)break;if(!(a[e+112>>0]|0)){g=5;break}d=c[e+116>>2]|0}if((g|0)==5){g=ry(c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0;d=ry(c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)|0;c[f>>2]=g;c[f+4>>2]=d;Pw(1,103553,f)|0;d=0}l=h;return d|0}function gL(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0;s=l;l=l+96|0;m=s+80|0;n=s+64|0;o=s+48|0;p=s+32|0;q=s+16|0;r=s;k=b[(c[d+16>>2]|0)+136>>1]|0;d=e+16|0;hL(c[(c[d>>2]|0)+8>>2]|0,p,q);f=+h[p>>3];g=+h[q>>3];t=f-g;i=+h[p+8>>3];j=+h[q+8>>3];u=i-j;a:do if(u*u+t*t<1.0e-06){c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];c[o+8>>2]=c[p+8>>2];c[o+12>>2]=c[p+12>>2]}else switch(k&14){case 4:case 10:{h[n>>3]=(g+f)*.5;h[n+8>>3]=(j+i)*.5;q=c[(c[d>>2]|0)+8>>2]|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];bM(r,q,m);c[o>>2]=c[r>>2];c[o+4>>2]=c[r+4>>2];c[o+8>>2]=c[r+8>>2];c[o+12>>2]=c[r+12>>2];break a}default:{iL(o,c[(c[d>>2]|0)+8>>2]|0,p,q);break a}}while(0);c[a>>2]=c[o>>2];c[a+4>>2]=c[o+4>>2];c[a+8>>2]=c[o+8>>2];c[a+12>>2]=c[o+12>>2];l=s;return}function hL(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=l;l=l+32|0;g=h+16|0;f=h;j=c[a>>2]|0;e=c[j>>2]|0;i=c[j+8>>2]|0;k=j+16|0;c[g>>2]=c[k>>2];c[g+4>>2]=c[k+4>>2];c[g+8>>2]=c[k+8>>2];c[g+12>>2]=c[k+12>>2];j=j+32|0;c[f>>2]=c[j>>2];c[f+4>>2]=c[j+4>>2];c[f+8>>2]=c[j+8>>2];c[f+12>>2]=c[j+12>>2];if(!i){c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2]}else{c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2]}i=c[a>>2]|0;j=(c[a+4>>2]|0)+-1|0;e=c[i+(j*48|0)>>2]|0;a=c[i+(j*48|0)+4>>2]|0;k=c[i+(j*48|0)+12>>2]|0;b=i+(j*48|0)+16|0;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];j=i+(j*48|0)+32|0;c[f>>2]=c[j>>2];c[f+4>>2]=c[j+4>>2];c[f+8>>2]=c[j+8>>2];c[f+12>>2]=c[j+12>>2];if(!k){k=e+(a+-1<<4)|0;c[d>>2]=c[k>>2];c[d+4>>2]=c[k+4>>2];c[d+8>>2]=c[k+8>>2];c[d+12>>2]=c[k+12>>2]}else{c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2]}l=h;return}function iL(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0,j=0,k=0,l=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0.0;r=c[b+4>>2]|0;g=0.0;f=0;while(1){if((f|0)>=(r|0))break;l=c[b>>2]|0;k=c[l+(f*48|0)>>2]|0;l=c[l+(f*48|0)+4>>2]|0;i=3;j=0;while(1){if((i|0)>=(l|0))break;q=+h[k+(j<<4)>>3]-+h[k+(i<<4)>>3];p=+h[k+(j<<4)+8>>3]-+h[k+(i<<4)+8>>3];i=i+3|0;j=j+3|0;g=+C(+(p*p+q*q))+g}f=f+1|0}l=0;g=g*.5;a:while(1){if((l|0)>=(r|0)){f=15;break}k=c[b>>2]|0;j=c[k+(l*48|0)>>2]|0;k=c[k+(l*48|0)+4>>2]|0;f=3;i=0;while(1){if((f|0)>=(k|0))break;m=+h[j+(i<<4)>>3];p=+h[j+(i<<4)+8>>3];n=+h[j+(f<<4)>>3];o=+h[j+(f<<4)+8>>3];q=m-n;s=p-o;q=+C(+(s*s+q*q));if(q>=g){f=12;break a}f=f+3|0;i=i+3|0;g=g-q}l=l+1|0}if((f|0)==12){h[d>>3]=m;h[d+8>>3]=p;h[e>>3]=n;h[e+8>>3]=o;s=q-g;h[a>>3]=(s*m+n*g)/q;h[a+8>>3]=(s*p+o*g)/q;return}else if((f|0)==15)qa(135630,103488,1316,103615)}function jL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;dL(b);return}function kL(b,d,e,f,g){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0,o=0,p=0.0,q=0.0,r=0.0,s=0,t=0.0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0.0,D=0,G=0,H=0,I=0,J=0,K=0,L=0;J=lL(b)|0;I=c[J+4>>2]|0;K=c[J>>2]|0;H=I+-1|0;B=+h[K+(H<<6)+16>>3];C=+(I|0);D=(g|0)==2;G=(f|0)!=0;n=0;j=0.0;i=0.0;l=0.0;m=0.0;while(1){if((n|0)>=(I|0))break;b=~~+mL(+(n+-1|0),C);A=n+1|0;L=~~+mL(+(A|0),C);o=K+(n<<6)|0;m=+h[o>>3];z=K+(n<<6)+8|0;l=+h[z>>3];s=K+(n<<6)+16|0;t=+h[s>>3];u=K+(n<<6)+24|0;v=K+(n<<6)+32|0;w=K+(n<<6)+40|0;x=K+(n<<6)+48|0;y=K+(n<<6)+56|0;k=+nL(+h[K+(L<<6)+8>>3]-l,+h[K+(L<<6)>>3]-m);q=+nL(+h[K+(b<<6)+8>>3]-l,+h[K+(b<<6)>>3]-m);r=+hb[d&7](t,B,e);b=(n|0)==0;do if(b|(n|0)==(H|0))if(b){i=k+1.5707963267948966;if(!D){b=0;p=i;j=r;break}b=0;p=i;j=r;l=l-+F(+k)*r;m=m-+E(+k)*r;break}else{i=q+-1.5707963267948966;if(!D){b=0;p=i;j=r;break}b=0;p=i;j=r;l=l-+F(+q)*r;m=m-+E(+q)*r;break}else{p=k-q;p=1.5707963267948966-(p<0.0?p+6.283185307179586:p)*.5;j=+E(+p);j=j==0.0?0.0:r/j;i=k+1.5707963267948966;k=p+i;if(G|j>r*10.0){q=+mL(q+-1.5707963267948966,6.283185307179586);b=1;p=+mL(i,6.283185307179586);j=r;i=q}else{b=0;p=k;i=k}}while(0);h[o>>3]=m;h[z>>3]=l;h[s>>3]=t;a[u>>0]=108;h[v>>3]=i;h[w>>3]=j;c[x>>2]=b;h[y>>3]=p;n=A}o=uH(12)|0;b=0;while(1){if((b|0)>=(I|0))break;m=+h[K+(b<<6)>>3];l=+h[K+(b<<6)+8>>3];i=+h[K+(b<<6)+32>>3];j=+h[K+(b<<6)+40>>3];L=c[K+(b<<6)+48>>2]|0;k=+h[K+(b<<6)+56>>3];oL(o,+E(+i)*j+m,+F(+i)*j+l);if(L|0)pL(m,l,j,1,i,k,f,o);b=b+1|0}n=(g|0)==1;k=i+3.141592653589793;if(n)qL(o,m,l,j,i,k);else{oL(o,+E(+k)*j+m,+F(+k)*j+l);i=k}b=I+-2|0;k=m;while(1){if((b|0)<=-1)break;m=+h[K+(b<<6)>>3];l=+h[K+(b<<6)+8>>3];j=+h[K+(b<<6)+40>>3];L=c[K+(b<<6)+48>>2]|0;i=+h[K+(b<<6)+32>>3]+3.141592653589793;k=+h[K+(b<<6)+56>>3]+3.141592653589793;oL(o,+E(+k)*j+m,+F(+k)*j+l);if(L|0)pL(m,l,j,0,i,k,f,o);b=b+-1|0;k=m}if(n)qL(o,k,l,j,i,i+3.141592653589793);rL(J);return o|0}function lL(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0;q=l;l=l+144|0;i=q+128|0;h=q+112|0;j=q+96|0;k=q+64|0;m=q;n=q+80|0;o=sL()|0;p=c[a+4>>2]|0;f=c[a>>2]|0;c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];tL(o,i,0.0);g=m+48|0;c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];d=0;b=0.0;a:while(1){e=d+3|0;if((e|0)>=(p|0))break;c[m>>2]=c[g>>2];c[m+4>>2]=c[g+4>>2];c[m+8>>2]=c[g+8>>2];c[m+12>>2]=c[g+12>>2];a=1;while(1){if((a|0)==4)break;r=m+(a<<4)|0;s=f+(a+d<<4)|0;c[r>>2]=c[s>>2];c[r+4>>2]=c[s+4>>2];c[r+8>>2]=c[s+8>>2];c[r+12>>2]=c[s+12>>2];a=a+1|0}c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];a=1;while(1){if((a|0)==21){d=e;continue a}XL(n,m,3,+(a|0)*.05,0,0);c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];c[k+12>>2]=c[n+12>>2];c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];c[h+12>>2]=c[j+12>>2];c[i>>2]=c[n>>2];c[i+4>>2]=c[n+4>>2];c[i+8>>2]=c[n+8>>2];c[i+12>>2]=c[n+12>>2];t=+uL(h,i)+b;c[i>>2]=c[k>>2];c[i+4>>2]=c[k+4>>2];c[i+8>>2]=c[k+8>>2];c[i+12>>2]=c[k+12>>2];tL(o,i,t);c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];a=a+1|0;b=t}}vL(o);l=q;return o|0}function mL(a,b){a=+a;b=+b;var c=0.0;c=a-+A(+(a/b))*b;return +(!(a<0.0)&!(a>=b)?a:c)}function nL(a,b){a=+a;b=+b;if(!(a==0.0&b==0.0)){a=+K(+a,+b);if(!(a>=0.0))a=a+6.283185307179586}else a=0.0;return +a}function oL(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0;e=c[a>>2]|0;f=a+4|0;if((e|0)<(c[f>>2]|0))f=c[a+8>>2]|0;else{c[f>>2]=2e3;e=a+8|0;f=xH(c[e>>2]|0,32e3)|0;c[e>>2]=f;e=c[a>>2]|0}c[a>>2]=e+1;h[f+(e<<4)>>3]=b;h[f+(e<<4)+8>>3]=d;return}function pL(a,b,c,d,e,f,g,h){a=+a;b=+b;c=+c;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0.0;d=(d|0)==0;i=d?e:f;do if((g|0)==1){e=(d?f:e)-i;e=!(e<=1.7453292519943296e-03)?e:e+6.283185307179586;if(e<3.141592653589793){qL(h,a,b,c,e+i,i);break}else{oL(h,+E(+i)*c+a,+F(+i)*c+a);break}}else oL(h,+E(+i)*c+a,+F(+i)*c+a);while(0);return}function qL(a,b,c,d,e,f){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;var g=0,h=0.0;oL(a,+E(+e)*d+b,+F(+e)*d+c);a:do if(!(d==0.0)){while(1){if(!(f>e))break;f=f+-6.283185307179586}f=e-f;while(1){if(!(f>6.283185307179586))break;f=f+-6.283185307179586}f=f*.05263157894736842;g=1;while(1){if((g|0)==20)break a;h=e-f*+(g|0);oL(a,+E(+h)*d+b,+F(+h)*d+c);g=g+1|0}}while(0);return}function rL(a){a=a|0;D_(c[a>>2]|0);D_(a);return}function sL(){var a=0;a=uH(12)|0;c[a+4>>2]=0;c[a+8>>2]=2e3;c[a>>2]=uH(128e3)|0;return a|0}function tL(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0,i=0;i=a+4|0;e=c[i>>2]|0;f=a+8|0;g=c[f>>2]|0;if((e|0)<(g|0))a=c[a>>2]|0;else{c[f>>2]=g<<1;e=xH(c[a>>2]|0,g<<7)|0;c[a>>2]=e;a=e;e=c[i>>2]|0}h[a+(e<<6)>>3]=+h[b>>3];h[a+(e<<6)+8>>3]=+h[b+8>>3];c[i>>2]=e+1;h[a+(e<<6)+16>>3]=d;return}function uL(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+h[a>>3]-+h[b>>3];d=+h[a+8>>3]-+h[b+8>>3];return +(+C(+(d*d+c*c)))}function vL(a){a=a|0;var b=0;b=c[a+4>>2]|0;if((c[a+8>>2]|0)>(b|0))c[a>>2]=xH(c[a>>2]|0,b<<6)|0;return}function wL(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;j=k+8|0;i=k;g=k+12|0;c[g>>2]=0;h=c[d+4>>2]|0;if(!h)qa(103632,103643,203,103654);e=c[h>>2]|0;if(!e)qa(103668,103643,206,103654);f=h+8|0;if(!(c[f>>2]|0))c[f>>2]=xL(e)|0;if(!0)e=0;else{e=(AG(c[h>>2]|0)|0)==0;e=e?0:g}if(!((OP(b,d,e)|0)<<24>>24))yL(d,e);do if(e|0){f=c[g>>2]|0;b=c[15686]|0;e=c[h>>2]|0;if(!f){c[j>>2]=e;g1(b,103711,j)|0;break}else{c[i>>2]=e;c[i+4>>2]=f;g1(b,103679,i)|0;break}}while(0);j=d+32|0;c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];c[a+8>>2]=c[j+8>>2];c[a+12>>2]=c[j+12>>2];l=k;return}function xL(a){a=a|0;var b=0;b=c[46531]|0;if((b|0)!=0?(O$(b,a)|0)==0:0)a=c[46540]|0;else{D_(b);c[46531]=n1(a)|0;a=e2(186124,22228,35,36,93)|0;c[46540]=a}return a|0}function yL(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0,i=0.0,j=0,k=0.0;j=c[b+4>>2]|0;e=c[j>>2]|0;i=+h[j+16>>3];j=b+32|0;h[j>>3]=0.0;h[b+40>>3]=i*1.2;h[b+16>>3]=0.0;h[b+24>>3]=i*.1;c[b+8>>2]=0;c[b+12>>2]=0;if(V$(e,103745,4)|0)if((V$(e,103750,5)|0)!=0?(V$(e,103756,9)|0)!=0:0){g=4248;e=103766}else{g=8344;e=103802}else{g=6296;e=103783}if(d|0)c[d>>2]=e;e=c[b>>2]|0;if(e|0){f=0.0;while(1){b=a[e>>0]|0;if(!(b<<24>>24))break;k=f+ +h[g+((b&255)<<3)>>3];h[j>>3]=k;e=e+1|0;f=k}h[j>>3]=f*i}return}function zL(a,b){a=a|0;b=b|0;return O$(c[a>>2]|0,c[b>>2]|0)|0}function AL(a){a=a|0;var b=0;b=a+108|0;c[b>>2]=0;c[a+112>>2]=32;c[a+116>>2]=-1;c[a+120>>2]=30;c[a+124>>2]=63;c[a+128>>2]=55;c[a+132>>2]=0;c[a+136>>2]=0;c[a+140>>2]=0;b=Cw(b,c[4555]|0)|0;c[a+144>>2]=b;return b|0}function BL(a,b,d){a=a|0;b=b|0;d=d|0;d=E_(1,32)|0;a=c[b>>2]|0;if(a|0)c[d>>2]=n1(a)|0;a=c[b+4>>2]|0;if(a|0)c[d+4>>2]=n1(a)|0;c[d+24>>2]=c[b+24>>2]&127;h[d+16>>3]=+h[b+16>>3];c[d+8>>2]=c[b+8>>2];return d|0}function CL(a,b,d){a=a|0;b=b|0;d=d|0;D_(c[b>>2]|0);D_(c[b+4>>2]|0);D_(b);return}function DL(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0,j=0;a=c[b>>2]|0;e=c[d>>2]|0;i=(e|0)==0;if(!a)if(i)j=5;else a=-1;else if(!i){a=b$(a,e)|0;if(!a)j=5}else a=1;do if((j|0)==5){a=c[b+4>>2]|0;e=c[d+4>>2]|0;i=(e|0)==0;if(!a){if(!i){a=-1;break}}else{if(i){a=1;break}a=b$(a,e)|0;if(a|0)break}a=(c[b+24>>2]&127)-(c[d+24>>2]&127)|0;if(!a){g=+h[b+16>>3];f=+h[d+16>>3];if(g<f)a=-1;else a=g>f&1}}while(0);return a|0}function EL(){eb(186164)|0;return}function FL(){var a=0,b=0;b=l;l=l+16|0;a=b;eb(a|0)|0;l=b;return +(+((c[a+4>>2]|0)+(c[a>>2]|0)-(c[46541]|0)-(c[46542]|0)|0)*.016666666666666666)}function GL(a){a=a|0;var b=0,d=0;b=uH(16)|0;a=(a|0)>2?a:2;d=uH(a<<2)|0;c[b>>2]=d;c[b+12>>2]=d;c[b+8>>2]=d;c[b+4>>2]=d+(a<<2);return b|0}function HL(a){a=a|0;D_(c[a>>2]|0);D_(a);return}function IL(a,b){a=a|0;b=b|0;var d=0,e=0;d=a+12|0;e=c[d>>2]|0;c[d>>2]=e+4;c[e>>2]=b;if((c[d>>2]|0)>>>0>=(c[a+4>>2]|0)>>>0)c[d>>2]=c[a>>2];return}function JL(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;b=c[d>>2]|0;if((b|0)!=(c[a+12>>2]|0)){e=b+4|0;c[d>>2]=e;b=c[b>>2]|0;if(e>>>0>=(c[a+4>>2]|0)>>>0)c[d>>2]=c[a>>2]}else b=0;return b|0}function KL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=l;l=l+16|0;g=i;if(((d|0)!=0?(h=yx(b,d)|0,(h|0)!=0):0)?(a[h>>0]|0)!=0:0){d=i1(h,g,10)|0;e=(h|0)==(c[g>>2]|0)?e:(d|0)<(f|0)?f:d}l=i;return e|0}function LL(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var g=0,h=0,i=0,j=0.0;i=l;l=l+16|0;g=i;if(((b|0)!=0&(d|0)!=0?(h=yx(b,d)|0,(h|0)!=0):0)?(a[h>>0]|0)!=0:0){j=+c2(h,g);e=(h|0)==(c[g>>2]|0)?e:j<f?f:j}l=i;return +e}function ML(a){a=a|0;var b=0.0;b=+h[22908];if(!(b>0.0)){b=+LL(a,nx(a,0,104612,0)|0,-1.0,0.0);b=b==0.0?72.0:b}return +b}function NL(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)!=0&(b|0)!=0)c=yx(a,b)|0;return c|0}function OL(b,c,d){b=b|0;c=c|0;d=d|0;b=NL(b,c,d)|0;if((b|0)!=0?(a[b>>0]|0)!=0:0)d=b;return d|0}function PL(a,b,c){a=a|0;b=b|0;c=c|0;if(!b)a=c&255;else a=QL(yx(a,b)|0)|0;return a|0}function QL(a){a=a|0;return RL(a,0)|0}function RL(b,c){b=b|0;c=c|0;var d=0;if((b|0)!=0?(d=a[b>>0]|0,d<<24>>24!=0):0)if((O$(b,134226)|0)!=0?(O$(b,104623)|0)!=0:0)if((O$(b,104626)|0)!=0?(O$(b,104631)|0)!=0:0){if(((d<<24>>24)+-48|0)>>>0<10)c=(a2(b)|0)&255}else c=1;else c=0;return c|0}function SL(a){a=a|0;var b=0,d=0;while(1){b=(c[a+16>>2]|0)+220|0;d=c[b>>2]|0;if(!((d|0)!=(a|0)&(d|0)!=0))break;a=c[(c[d+16>>2]|0)+220>>2]|0;if(!a){a=d;continue}c[b>>2]=a}return a|0}function TL(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;if((a|0)!=(b|0)){d=c[a+16>>2]|0;e=d+220|0;if(!(c[e>>2]|0)){c[e>>2]=a;c[d+216>>2]=1}else a=SL(a)|0;d=c[b+16>>2]|0;e=d+220|0;if(!(c[e>>2]|0)){c[e>>2]=b;c[d+216>>2]=1}else{d=SL(b)|0;b=d;d=c[d+16>>2]|0}g=a+16|0;e=c[g>>2]|0;f=b+16|0;h=(c[e+120>>2]|0)>(c[d+120>>2]|0);a=h?b:a;c[(h?e:d)+220>>2]=a;e=(c[(h?f:g)>>2]|0)+216|0;c[e>>2]=(c[e>>2]|0)+(c[(c[(h?g:f)>>2]|0)+216>>2]|0)}return a|0}function UL(b){b=b|0;b=c[b+16>>2]|0;c[b+216>>2]=1;c[b+220>>2]=0;a[b+159>>0]=0;return}function VL(a,b){a=a|0;b=b|0;if((SL(a)|0)==(a|0)){a=c[a+16>>2]|0;c[a+220>>2]=b;b=(c[b+16>>2]|0)+216|0;c[b>>2]=(c[b>>2]|0)+(c[a+216>>2]|0);return}else qa(104643,104635,194,104659)}function WL(a,b){a=a|0;b=b|0;var d=0.0;b=c[(c[b+16>>2]|0)+132>>2]|0;d=+h[b+8>>3]*72.0;h[a>>3]=+h[b>>3]*72.0;h[a+8>>3]=d;return}function XL(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var i=0,j=0,k=0,m=0.0,n=0,o=0,p=0;o=l;l=l+576|0;n=o;i=0;while(1){if((i|0)>(d|0))break;k=n+(i<<4)|0;j=b+(i<<4)|0;c[k>>2]=c[j>>2];c[k+4>>2]=c[j+4>>2];c[k+8>>2]=c[j+8>>2];c[k+12>>2]=c[j+12>>2];i=i+1|0}m=1.0-e;i=1;while(1){if((i|0)>(d|0))break;j=d-i|0;k=i+-1|0;b=0;while(1){if((b|0)>(j|0))break;p=b+1|0;h[n+(i*96|0)+(b<<4)>>3]=+h[n+(k*96|0)+(p<<4)>>3]*e+ +h[n+(k*96|0)+(b<<4)>>3]*m;h[n+(i*96|0)+(b<<4)+8>>3]=+h[n+(k*96|0)+(p<<4)+8>>3]*e+ +h[n+(k*96|0)+(b<<4)+8>>3]*m;b=p}i=i+1|0}a:do if(f|0){i=0;while(1){if((i|0)>(d|0))break a;p=f+(i<<4)|0;k=n+(i*96|0)|0;c[p>>2]=c[k>>2];c[p+4>>2]=c[k+4>>2];c[p+8>>2]=c[k+8>>2];c[p+12>>2]=c[k+12>>2];i=i+1|0}}while(0);b:do if(g|0){i=0;while(1){if((i|0)>(d|0))break b;p=g+(i<<4)|0;f=n+((d-i|0)*96|0)+(i<<4)|0;c[p>>2]=c[f>>2];c[p+4>>2]=c[f+4>>2];c[p+8>>2]=c[f+8>>2];c[p+12>>2]=c[f+12>>2];i=i+1|0}}while(0);p=n+(d*96|0)|0;c[a>>2]=c[p>>2];c[a+4>>2]=c[p+4>>2];c[a+8>>2]=c[p+8>>2];c[a+12>>2]=c[p+12>>2];l=o;return}function YL(b){b=b|0;var d=0,e=0,f=0,g=0;e=0;do{d=c[46545]|0;f=d+1024|0;if((d-e|0)<1024){c[46545]=f;f=xH(c[46546]|0,f)|0;c[46546]=f;d=c[46545]|0}else f=c[46546]|0;d=O0(f+e|0,d-e|0,b)|0;if(!d){g=6;break}e=(W_(d)|0)+e|0;d=c[46546]|0}while((a[d+(e+-1)>>0]|0)!=10);if((g|0)==6)d=c[46546]|0;return ((e|0)>0?d:0)|0}function ZL(b){b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;do if((b|0)!=0?(a[b>>0]|0)!=0:0)if(!0){d=c[46362]|0;e=c[46548]|0;if((c[46547]|0)==(d|0))d=e;else{if(e){D_(c[e>>2]|0);D_(c[46548]|0);c[46548]=0;d=c[46362]|0}c[46547]=d;if(!d)break;if(!(a[d>>0]|0))break;d=_L(d)|0;c[46548]=d}if(!((a[b>>0]|0)!=47&(d|0)!=0))break;b=$L(d,c[46549]|0,b)|0;break}else S();else b=0;while(0);l=f;return b|0}function _L(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=0;f=0;g=0;b=n1(a)|0;d=0;while(1){b=k1(b,104958)|0;if(!b)break;a=(g<<2)+8|0;if(!f)a=vH(a)|0;else a=xH(d,a)|0;c[a+(g<<2)>>2]=b;f=W_(b)|0;e=e>>>0>f>>>0?e:f;f=a;g=g+1|0;b=0;d=a}c[f+(g<<2)>>2]=0;c[46549]=e;return f|0}function $L(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+16|0;e=g;h=c[46550]|0;c[46550]=F_(h,b+2+(W_(d)|0)|0)|0;while(1){b=c[a>>2]|0;if(!b){a=0;break}h=c[46550]|0;c[e>>2]=b;c[e+4>>2]=104956;c[e+8>>2]=d;Y0(h,104949,e)|0;if(!(K1(c[46550]|0,4)|0)){f=4;break}else a=a+4|0}if((f|0)==4)a=c[46550]|0;l=g;return a|0}function aM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=(b|0)==0;f=0;while(1){h=c[d+(f<<2)>>2]|0;if(!h)break;if((!g?(a[b>>0]|0)==(a[h>>0]|0):0)?(b$(b,h)|0)==0:0)break;f=f+1|0}return c[e+(f<<2)>>2]|0}function bM(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0.0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0;z=l;l=l+80|0;x=z+16|0;y=z;u=c[b+4>>2]|0;v=c[b>>2]|0;w=d+8|0;f=0;e=-1;g=1.e+38;b=-1;while(1){if((f|0)>=(u|0))break;s=c[v+(f*48|0)>>2]|0;t=c[v+(f*48|0)+4>>2]|0;r=0;while(1){if((r|0)>=(t|0))break;q=+h[s+(r<<4)>>3]-+h[d>>3];p=+h[s+(r<<4)+8>>3]-+h[w>>3];q=p*p+q*q;A=(e|0)==-1|q<g;C=A?r:e;r=r+1|0;b=A?f:b;e=C;g=A?q:g}f=f+1|0}f=c[v+(b*48|0)>>2]|0;e=e+(((e|0)==((c[v+(b*48|0)+4>>2]|0)+-1|0))<<31>>31)|0;e=e-((e|0)%3|0)|0;b=0;while(1){if((b|0)==4)break;C=b+e|0;h[x+(b<<4)>>3]=+h[f+(C<<4)>>3];h[x+(b<<4)+8>>3]=+h[f+(C<<4)+8>>3];b=b+1|0}q=+h[d>>3];k=+h[x>>3]-q;o=+h[w>>3];p=+h[x+8>>3]-o;j=+h[x+48>>3]-q;n=+h[x+56>>3]-o;b=y+8|0;g=1.0;i=0.0;j=n*n+j*j;k=p*p+k*k;while(1){p=(g+i)*.5;XL(y,x,3,p,0,0);m=+h[y>>3];n=+h[b>>3];if(+B(+(k-j))<1.0)break;if(+B(+(g-i))<1.0e-05)break;C=k<j;m=m-q;n=n-o;n=n*n+m*m;g=C?p:g;i=C?i:p;j=C?n:j;k=C?k:n}h[a>>3]=m;h[a+8>>3]=n;l=z;return}function cM(){return 0}function dM(b){b=b|0;var d=0.0,e=0,f=0,g=0,i=0,j=0,k=0,l=0;d=+LL(b,c[46376]|0,.75,.01);g=b+16|0;h[(c[g>>2]|0)+32>>3]=d;d=+LL(b,c[46375]|0,.5,.02);h[(c[g>>2]|0)+40>>3]=d;l=WJ(OL(b,c[46377]|0,104960)|0,b)|0;c[(c[g>>2]|0)+8>>2]=l;l=yx(b,c[46384]|0)|0;d=+LL(b,c[46380]|0,14.0,1.0);e=OL(b,c[46381]|0,104968)|0;f=OL(b,c[46382]|0,134232)|0;i=(Rz(l)|0)!=0;k=(HJ(b)|0)==2;i=kH(b,l,(k?4:0)|(i?2:0),d,e,f)|0;c[(c[g>>2]|0)+104>>2]=i;i=c[46385]|0;if((i|0?(j=yx(b,i)|0,j|0):0)?a[j>>0]|0:0){l=(Rz(j)|0)!=0;l=kH(b,j,l?2:0,d,e,f)|0;c[(c[g>>2]|0)+108>>2]=l;l=(c[(ez(b)|0)+16>>2]|0)+113|0;a[l>>0]=a[l>>0]|16}k=(KL(b,c[46388]|0,0,0)|0)&255;l=c[g>>2]|0;a[l+144>>0]=k;tb[c[c[(c[l+8>>2]|0)+4>>2]>>2]&127](b);return}function eM(b){b=b|0;var d=0,e=0,f=0,g=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+112|0;m=v+96|0;n=v+80|0;s=v+40|0;u=v;r=b+48|0;p=ez(c[((c[b>>2]&3|0)==3?b:r)+40>>2]|0)|0;g=m+8|0;c[g>>2]=0;o=n+8|0;c[o>>2]=0;d=c[46412]|0;if(((d|0)!=0?(e=yx(b,d)|0,(e|0)!=0):0)?(a[e>>0]|0)!=0:0){fM(b,m);t=(Rz(e)|0)!=0;i=+h[m>>3];f=c[g>>2]|0;d=c[m+12>>2]|0;e=kH(b,e,t?2:0,i,f,d)|0;t=b+16|0;c[(c[t>>2]|0)+96>>2]=e;e=(c[p+16>>2]|0)+113|0;a[e>>0]=a[e>>0]|1;e=QL(NL(b,c[46422]|0,134226)|0)|0;a[(c[t>>2]|0)+114>>0]=e;t=1;e=f}else{t=0;d=0;i=0.0;e=0}f=c[46413]|0;if((f|0?(j=yx(b,f)|0,j|0):0)?a[j>>0]|0:0){if(!e){fM(b,m);i=+h[m>>3];e=c[g>>2]|0;d=c[m+12>>2]|0}g=(Rz(j)|0)!=0;j=kH(b,j,g?2:0,i,e,d)|0;c[(c[b+16>>2]|0)+108>>2]=j;j=(c[p+16>>2]|0)+113|0;a[j>>0]=a[j>>0]|32}d=c[46427]|0;if(((d|0)!=0?(k=yx(b,d)|0,(k|0)!=0):0)?(a[k>>0]|0)!=0:0){gM(b,m,n);j=(Rz(k)|0)!=0;i=+h[n>>3];d=c[o>>2]|0;e=c[n+12>>2]|0;k=kH(b,k,j?2:0,i,d,e)|0;c[(c[b+16>>2]|0)+100>>2]=k;k=(c[p+16>>2]|0)+113|0;a[k>>0]=a[k>>0]|2}else{e=0;i=0.0;d=0}f=c[46428]|0;if((f|0?(q=yx(b,f)|0,q|0):0)?a[q>>0]|0:0){if(!d){gM(b,m,n);e=c[n+12>>2]|0;i=+h[n>>3];d=c[o>>2]|0}o=(Rz(q)|0)!=0;q=kH(b,q,o?2:0,i,d,e)|0;c[(c[b+16>>2]|0)+104>>2]=q;q=(c[p+16>>2]|0)+113|0;a[q>>0]=a[q>>0]|4}d=xx(b,108373)|0;d=d|0?d:191979;if(a[d>>0]|0)a[(c[(c[((c[b>>2]&3|0)==3?b:r)+40>>2]|0)+16>>2]|0)+145>>0]=1;g=b+16|0;f=(c[g>>2]|0)+16|0;e=c[((c[b>>2]&3|0)==3?b:r)+40>>2]|0;hM(s,c[(c[(c[(c[e+16>>2]|0)+8>>2]|0)+4>>2]|0)+8>>2]|0,e,d);d=s;e=f+40|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(e|0));if((iM(b,c[46434]|0)|0)<<24>>24)a[(c[g>>2]|0)+46>>0]=0;d=xx(b,108382)|0;d=d|0?d:191979;if(!(a[d>>0]|0))e=b+-48|0;else{e=b+-48|0;a[(c[(c[((c[b>>2]&3|0)==2?b:e)+40>>2]|0)+16>>2]|0)+145>>0]=1}f=(c[g>>2]|0)+56|0;e=c[((c[b>>2]&3|0)==2?b:e)+40>>2]|0;hM(u,c[(c[(c[(c[e+16>>2]|0)+8>>2]|0)+4>>2]|0)+8>>2]|0,e,d);d=u;e=f+40|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(e|0));if((iM(b,c[46435]|0)|0)<<24>>24)a[(c[g>>2]|0)+86>>0]=0;l=v;return t|0}function fM(a,b){a=a|0;b=b|0;h[b>>3]=+LL(a,c[46409]|0,14.0,1.0);c[b+8>>2]=OL(a,c[46410]|0,104968)|0;c[b+12>>2]=OL(a,c[46411]|0,134232)|0;return}function gM(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=b+8|0;if(!(c[e>>2]|0))fM(a,b);h[d>>3]=+LL(a,c[46429]|0,+h[b>>3],1.0);c[d+8>>2]=OL(a,c[46430]|0,c[e>>2]|0)|0;c[d+12>>2]=OL(a,c[46431]|0,c[b+12>>2]|0)|0;return}function hM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+128|0;k=m+80|0;h=m+40|0;g=m;if((f|0)!=0?(j=A$(f,58)|0,(j|0)!=0):0){a[j>>0]=0;i=j+1|0;xb[d&31](h,e,f,i);e=k;g=h;d=e+36|0;do{c[e>>2]=c[g>>2];e=e+4|0;g=g+4|0}while((e|0)<(d|0));a[j>>0]=58;f=i}else{xb[d&31](g,e,f,0);e=k;d=e+36|0;do{c[e>>2]=c[g>>2];e=e+4|0;g=g+4|0}while((e|0)<(d|0))}e=b;g=k;d=e+36|0;do{c[e>>2]=c[g>>2];e=e+4|0;g=g+4|0}while((e|0)<(d|0));c[b+36>>2]=f;l=m;return}function iM(b,c){b=b|0;c=c|0;var d=0;if(((c|0)!=0?(d=yx(b,c)|0,(d|0)!=0):0)?(a[d>>0]|0)!=0:0)b=(QL(d)|0)<<24>>24==0&1;else b=0;return b|0}function jM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;k=l;l=l+32|0;i=k;j=c[b+8>>2]|0;d=c[b+4>>2]|0;d=(c[b+44>>2]|0)+((O((d|0)>1?d+-1|0:0,j)|0)<<4)|0;e=i+16|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[i+12>>2]=c[d+12>>2];f=i+8|0;g=i+24|0;b=1;while(1){if((b|0)>=(j|0))break;m=d+(b<<4)|0;o=+h[m>>3];h[i>>3]=+h[(+h[i>>3]<o?i:m)>>3];n=+h[m+8>>3];h[f>>3]=+h[(+h[f>>3]<n?i:m)+8>>3];h[e>>3]=+h[(+h[e>>3]>o?e:m)>>3];h[g>>3]=+h[(+h[g>>3]>n?e:m)+8>>3];b=b+1|0}c[a>>2]=c[i>>2];c[a+4>>2]=c[i+4>>2];c[a+8>>2]=c[i+8>>2];c[a+12>>2]=c[i+12>>2];c[a+16>>2]=c[i+16>>2];c[a+20>>2]=c[i+20>>2];c[a+24>>2]=c[i+24>>2];c[a+28>>2]=c[i+28>>2];l=k;return}function kM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+64|0;g=d+32|0;e=d;f=c[a+16>>2]|0;a=f+16|0;f=c[f+116>>2]&1;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];c[g+16>>2]=c[a+16>>2];c[g+20>>2]=c[a+20>>2];c[g+24>>2]=c[a+24>>2];c[g+28>>2]=c[a+28>>2];lM(e,g,b,f);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];c[a+16>>2]=c[e+16>>2];c[a+20>>2]=c[e+20>>2];c[a+24>>2]=c[e+24>>2];c[a+28>>2]=c[e+28>>2];l=d;return}function lM(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0.0,j=0,k=0.0,l=0.0,m=0.0;g=+h[d+56>>3];l=+h[d+64>>3];j=e<<24>>24==0;k=+h[d+24>>3];i=+h[d+32>>3];m=(j?k:i)*.5;f=g-m;g=m+g;if(f<+h[b>>3])h[b>>3]=f;e=b+16|0;if(g>+h[e>>3])h[e>>3]=g;g=(j?i:k)*.5;f=l-g;g=g+l;e=b+8|0;if(f<+h[e>>3])h[e>>3]=f;e=b+24|0;if(g>+h[e>>3])h[e>>3]=g;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function mM(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0.0,O=0.0,P=0.0;L=l;l=l+448|0;H=L+416|0;t=L+384|0;u=L+304|0;K=L+256|0;G=L+192|0;B=L+144|0;C=L+96|0;d=L+400|0;e=L+368|0;f=L+352|0;g=L+336|0;v=L+288|0;w=L+224|0;x=L+160|0;y=L+112|0;z=L+64|0;A=L+32|0;I=L;J=b+16|0;if((ay(b)|0)==0?(c[(c[J>>2]|0)+180>>2]|0)==0:0){nM(d,0.0,0.0);c[K>>2]=c[d>>2];c[K+4>>2]=c[d+4>>2];c[K+8>>2]=c[d+8>>2];c[K+12>>2]=c[d+12>>2];K=K+16|0;nM(e,0.0,0.0);c[K>>2]=c[e>>2];c[K+4>>2]=c[e+4>>2];c[K+8>>2]=c[e+8>>2];c[K+12>>2]=c[e+12>>2]}else{nM(f,2147483647.0,2147483647.0);c[K>>2]=c[f>>2];c[K+4>>2]=c[f+4>>2];c[K+8>>2]=c[f+8>>2];c[K+12>>2]=c[f+12>>2];F=K+16|0;nM(g,-2147483647.0,-2147483647.0);c[F>>2]=c[g>>2];c[F+4>>2]=c[g+4>>2];c[F+8>>2]=c[g+8>>2];c[F+12>>2]=c[g+12>>2];o=C+8|0;p=u+16|0;D=K+8|0;q=u+8|0;E=K+24|0;r=u+24|0;s=B+8|0;n=Sy(b)|0;while(1){if(!n)break;WL(B,n);d=n+16|0;m=c[d>>2]|0;h[C>>3]=(+h[m+96>>3]+ +h[m+88>>3])*.5;h[o>>3]=+h[m+80>>3]*.5;c[t>>2]=c[B>>2];c[t+4>>2]=c[B+4>>2];c[t+8>>2]=c[B+8>>2];c[t+12>>2]=c[B+12>>2];c[H>>2]=c[C>>2];c[H+4>>2]=c[C+4>>2];c[H+8>>2]=c[C+8>>2];c[H+12>>2]=c[C+12>>2];oM(u,t,H);c[t>>2]=c[B>>2];c[t+4>>2]=c[B+4>>2];c[t+8>>2]=c[B+8>>2];c[t+12>>2]=c[B+12>>2];c[H>>2]=c[C>>2];c[H+4>>2]=c[C+4>>2];c[H+8>>2]=c[C+8>>2];c[H+12>>2]=c[C+12>>2];pM(v,t,H);c[p>>2]=c[v>>2];c[p+4>>2]=c[v+4>>2];c[p+8>>2]=c[v+8>>2];c[p+12>>2]=c[v+12>>2];h[K>>3]=+h[(+h[K>>3]<+h[u>>3]?K:u)>>3];h[D>>3]=+h[(+h[D>>3]<+h[q>>3]?K:u)+8>>3];h[F>>3]=+h[(+h[F>>3]>+h[p>>3]?K:u)+16>>3];h[E>>3]=+h[(+h[E>>3]>+h[r>>3]?K:u)+24>>3];d=c[(c[d>>2]|0)+108>>2]|0;if(d|0?a[d+81>>0]|0:0){m=c[(c[J>>2]|0)+116>>2]&1;c[H>>2]=c[K>>2];c[H+4>>2]=c[K+4>>2];c[H+8>>2]=c[K+8>>2];c[H+12>>2]=c[K+12>>2];c[H+16>>2]=c[K+16>>2];c[H+20>>2]=c[K+20>>2];c[H+24>>2]=c[K+24>>2];c[H+28>>2]=c[K+28>>2];lM(w,H,d,m);c[K>>2]=c[w>>2];c[K+4>>2]=c[w+4>>2];c[K+8>>2]=c[w+8>>2];c[K+12>>2]=c[w+12>>2];c[K+16>>2]=c[w+16>>2];c[K+20>>2]=c[w+20>>2];c[K+24>>2]=c[w+24>>2];c[K+28>>2]=c[w+28>>2]}m=Ex(b,n)|0;while(1){if(!m)break;k=m+16|0;d=c[k>>2]|0;j=d+8|0;e=c[j>>2]|0;if(e|0){i=0;while(1){if((i|0)<(c[e+4>>2]|0))g=0;else break;while(1){f=c[e>>2]|0;if((g|0)>=(c[f+(i*48|0)+4>>2]|0))break;e=(c[f+(i*48|0)>>2]|0)+(g<<4)|0;c[B>>2]=c[e>>2];c[B+4>>2]=c[e+4>>2];c[B+8>>2]=c[e+8>>2];c[B+12>>2]=c[e+12>>2];N=+h[B>>3];h[K>>3]=+h[(+h[K>>3]<N?K:B)>>3];M=+h[s>>3];h[D>>3]=+h[(+h[D>>3]<M?K:B)+8>>3];h[F>>3]=+h[(+h[F>>3]>N?F:B)>>3];h[E>>3]=+h[(+h[E>>3]>M?F:B)+8>>3];g=g+1|0;e=c[j>>2]|0}i=i+1|0}e=c[d+96>>2]|0;if((e|0)!=0?(a[e+81>>0]|0)!=0:0){d=c[(c[J>>2]|0)+116>>2]&1;c[H>>2]=c[K>>2];c[H+4>>2]=c[K+4>>2];c[H+8>>2]=c[K+8>>2];c[H+12>>2]=c[K+12>>2];c[H+16>>2]=c[K+16>>2];c[H+20>>2]=c[K+20>>2];c[H+24>>2]=c[K+24>>2];c[H+28>>2]=c[K+28>>2];lM(x,H,e,d);c[K>>2]=c[x>>2];c[K+4>>2]=c[x+4>>2];c[K+8>>2]=c[x+8>>2];c[K+12>>2]=c[x+12>>2];c[K+16>>2]=c[x+16>>2];c[K+20>>2]=c[x+20>>2];c[K+24>>2]=c[x+24>>2];c[K+28>>2]=c[x+28>>2];d=c[k>>2]|0}e=c[d+100>>2]|0;if((e|0)!=0?(a[e+81>>0]|0)!=0:0){d=c[(c[J>>2]|0)+116>>2]&1;c[H>>2]=c[K>>2];c[H+4>>2]=c[K+4>>2];c[H+8>>2]=c[K+8>>2];c[H+12>>2]=c[K+12>>2];c[H+16>>2]=c[K+16>>2];c[H+20>>2]=c[K+20>>2];c[H+24>>2]=c[K+24>>2];c[H+28>>2]=c[K+28>>2];lM(y,H,e,d);c[K>>2]=c[y>>2];c[K+4>>2]=c[y+4>>2];c[K+8>>2]=c[y+8>>2];c[K+12>>2]=c[y+12>>2];c[K+16>>2]=c[y+16>>2];c[K+20>>2]=c[y+20>>2];c[K+24>>2]=c[y+24>>2];c[K+28>>2]=c[y+28>>2];d=c[k>>2]|0}e=c[d+104>>2]|0;if((e|0)!=0?(a[e+81>>0]|0)!=0:0){d=c[(c[J>>2]|0)+116>>2]&1;c[H>>2]=c[K>>2];c[H+4>>2]=c[K+4>>2];c[H+8>>2]=c[K+8>>2];c[H+12>>2]=c[K+12>>2];c[H+16>>2]=c[K+16>>2];c[H+20>>2]=c[K+20>>2];c[H+24>>2]=c[K+24>>2];c[H+28>>2]=c[K+28>>2];lM(z,H,e,d);c[K>>2]=c[z>>2];c[K+4>>2]=c[z+4>>2];c[K+8>>2]=c[z+8>>2];c[K+12>>2]=c[z+12>>2];c[K+16>>2]=c[z+16>>2];c[K+20>>2]=c[z+20>>2];c[K+24>>2]=c[z+24>>2];c[K+28>>2]=c[z+28>>2];d=c[k>>2]|0}d=c[d+108>>2]|0;if(d|0?a[d+81>>0]|0:0){k=c[(c[J>>2]|0)+116>>2]&1;c[H>>2]=c[K>>2];c[H+4>>2]=c[K+4>>2];c[H+8>>2]=c[K+8>>2];c[H+12>>2]=c[K+12>>2];c[H+16>>2]=c[K+16>>2];c[H+20>>2]=c[K+20>>2];c[H+24>>2]=c[K+24>>2];c[H+28>>2]=c[K+28>>2];lM(A,H,d,k);c[K>>2]=c[A>>2];c[K+4>>2]=c[A+4>>2];c[K+8>>2]=c[A+8>>2];c[K+12>>2]=c[A+12>>2];c[K+16>>2]=c[A+16>>2];c[K+20>>2]=c[A+20>>2];c[K+24>>2]=c[A+24>>2];c[K+28>>2]=c[A+28>>2]}}m=Gx(b,m)|0}n=Ty(b,n)|0}d=c[J>>2]|0;f=c[d+180>>2]|0;g=d+184|0;i=G+8|0;j=G+16|0;k=G+24|0;e=1;while(1){if((e|0)>(f|0))break;P=+h[(c[(c[(c[g>>2]|0)+(e<<2)>>2]|0)+16>>2]|0)+16>>3];h[G>>3]=P;C=c[(c[(c[g>>2]|0)+(e<<2)>>2]|0)+16>>2]|0;O=+h[C+24>>3];h[i>>3]=O;M=+h[C+32>>3];h[j>>3]=M;N=+h[C+40>>3];h[k>>3]=N;h[K>>3]=+h[(+h[K>>3]<P?K:G)>>3];h[D>>3]=+h[(+h[D>>3]<O?K:G)+8>>3];h[F>>3]=+h[(+h[F>>3]>M?K:G)+16>>3];h[E>>3]=+h[(+h[E>>3]>N?K:G)+24>>3];e=e+1|0}e=c[d+12>>2]|0;if((e|0)!=0?(a[e+81>>0]|0)!=0:0){d=c[d+116>>2]&1;c[H>>2]=c[K>>2];c[H+4>>2]=c[K+4>>2];c[H+8>>2]=c[K+8>>2];c[H+12>>2]=c[K+12>>2];c[H+16>>2]=c[K+16>>2];c[H+20>>2]=c[K+20>>2];c[H+24>>2]=c[K+24>>2];c[H+28>>2]=c[K+28>>2];lM(I,H,e,d);c[K>>2]=c[I>>2];c[K+4>>2]=c[I+4>>2];c[K+8>>2]=c[I+8>>2];c[K+12>>2]=c[I+12>>2];c[K+16>>2]=c[I+16>>2];c[K+20>>2]=c[I+20>>2];c[K+24>>2]=c[I+24>>2];c[K+28>>2]=c[I+28>>2];d=c[J>>2]|0}J=d+16|0;c[J>>2]=c[K>>2];c[J+4>>2]=c[K+4>>2];c[J+8>>2]=c[K+8>>2];c[J+12>>2]=c[K+12>>2];c[J+16>>2]=c[K+16>>2];c[J+20>>2]=c[K+20>>2];c[J+24>>2]=c[K+24>>2];c[J+28>>2]=c[K+28>>2]}l=L;return}function nM(a,b,c){a=a|0;b=+b;c=+c;h[a>>3]=b;h[a+8>>3]=c;return}function oM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+h[b+8>>3]-+h[c+8>>3];h[a>>3]=+h[b>>3]-+h[c>>3];h[a+8>>3]=d;return}function pM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+h[c+8>>3]+ +h[b+8>>3];h[a>>3]=+h[c>>3]+ +h[b>>3];h[a+8>>3]=d;return}function qM(a){a=a|0;if((c[a+60>>2]|0)==(a|0))a=1;else a=(V$(ry(a)|0,104980,7)|0)==0&1;return a|0}function rM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a:do if(!e)switch(pz(b)|0){case 0:{e=nx(a,0,c,191979)|0;break a}case 1:{e=nx(a,1,c,191979)|0;break a}case 2:{e=nx(a,2,c,191979)|0;break a}default:{e=0;break a}}while(0);rx(b,e,d)|0;return e|0}function sM(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+144|0;g=k;i=tM(d)|0;h=Cw(23488,c[4555]|0)|0;j=vA(d,104988,1)|0;Az(j,134401,280,1)|0;Tw(g,128,k+16|0);e=Sy(d)|0;while(1){if(!e)break;a:do if(!(a[(c[e+16>>2]|0)+118>>0]|0)){f=Ex(d,e)|0;while(1){if(!f)break a;uM(f,j,g,h,i);f=Gx(d,f)|0}}while(0);e=Ty(d,e)|0}Xw(g);yw(h)|0;f=ay(j)|0;e=Sy(j)|0;while(1){if(!e)break;h=Ty(j,e)|0;dz(d,e)|0;e=h}$x(j)|0;if(f|0){j=(c[d+16>>2]|0)+136|0;b[j>>1]=b[j>>1]|1}yw(i)|0;l=k;return f|0}function tM(a){a=a|0;var b=0;b=Cw(23524,c[4555]|0)|0;DM(a,b);return b|0}function uM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+48|0;q=t+32|0;p=t+24|0;s=t+16|0;r=t+8|0;k=t;n=c[b>>2]&3;m=c[((n|0)==3?b:b+48|0)+40>>2]|0;n=c[((n|0)==2?b:b+-48|0)+40>>2]|0;do if(!(a[(c[n+16>>2]|0)+118>>0]|0)){if(!(z$(ry(m)|0,104980,7)|0))o=vM(g,ry(m)|0)|0;else o=0;if(!(z$(ry(n)|0,104980,7)|0))i=vM(g,ry(n)|0)|0;else i=0;h=(o|0)!=0;j=(i|0)!=0;if(h|j){if((o|0)==(i|0)){r=ry(m)|0;s=ry(m)|0;c[k>>2]=r;c[k+4>>2]=s;Pw(0,105003,k)|0;break}g=wM(f,b)|0;if(g|0){xM(b,c[g+16>>2]|0,c[g+20>>2]|0)|0;break}if(!j)if(!(oz(o,n)|0)){zM(f,m,n,xM(b,yM(m,o,e,d)|0,n)|0);break}else{r=ry(n)|0;s=ry(o)|0;c[q>>2]=r;c[q+4>>2]=s;Pw(0,105158,q)|0;break}if(!h)if(!(oz(i,m)|0)){zM(f,m,n,xM(b,m,yM(n,i,e,d)|0)|0);break}else{r=ry(m)|0;s=ry(i)|0;c[p>>2]=r;c[p+4>>2]=s;Pw(0,105121,p)|0;break}if(oz(i,o)|0){q=ry(o)|0;s=ry(i)|0;c[r>>2]=q;c[r+4>>2]=s;Pw(0,105041,r)|0;break}if(!(oz(o,i)|0)){s=yM(m,o,e,d)|0;zM(f,m,n,xM(b,s,yM(n,i,e,d)|0)|0);break}else{q=ry(i)|0;r=ry(o)|0;c[s>>2]=q;c[s+4>>2]=r;Pw(0,105081,s)|0;break}}}while(0);l=t;return}function vM(a,b){a=a|0;b=b|0;a=nb[c[a>>2]&63](a,b,512)|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function wM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[b>>2]&3;c[e>>2]=c[((f|0)==3?b:b+48|0)+40>>2];c[e+4>>2]=c[((f|0)==2?b:b+-48|0)+40>>2];b=nb[c[a>>2]&63](a,e,512)|0;l=d;return b|0}function xM(a,b,c){a=a|0;b=b|0;c=c|0;c=Rx(ez(b)|0,b,c,0,1)|0;Az(c,134378,176,1)|0;Bx(a,c)|0;return c|0}function yM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+112|0;g=k;j=k+4|0;Ww(e,105195)|0;i=c[46551]|0;c[46551]=i+1;c[g>>2]=i;Y0(j,134313,g)|0;Ww(e,j)|0;j=e+4|0;g=c[j>>2]|0;i=e+8|0;if(g>>>0>=(c[i>>2]|0)>>>0){Uw(e,1)|0;g=c[j>>2]|0}c[j>>2]=g+1;a[g>>0]=58;Ww(e,ry(d)|0)|0;h=fz(d)|0;g=c[j>>2]|0;if(g>>>0>=(c[i>>2]|0)>>>0){Uw(e,1)|0;g=c[j>>2]|0}a[g>>0]=0;e=c[e>>2]|0;c[j>>2]=e;j=az(h,e,1)|0;Az(j,134365,304,1)|0;a[(c[j+16>>2]|0)+118>>0]=1;Xy(d,j,1)|0;Xy(f,b,1)|0;f=ez(j)|0;c[46384]=rM(f,j,105198,191979,c[46384]|0)|0;f=ez(j)|0;c[46387]=rM(f,j,138e3,131253,c[46387]|0)|0;f=ez(j)|0;c[46377]=rM(f,j,105204,105210,c[46377]|0)|0;l=k;return j|0}function zM(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;f=l;l=l+32|0;g=f;n=g+8|0;c[n>>2]=b;m=g+12|0;c[m>>2]=d;o=c[e>>2]&3;i=e+48|0;j=g+16|0;c[j>>2]=c[((o|0)==3?e:i)+40>>2];k=e+-48|0;h=g+20|0;c[h>>2]=c[((o|0)==2?e:k)+40>>2];nb[c[a>>2]&63](a,g,1)|0;c[n>>2]=d;c[m>>2]=b;d=c[e>>2]&3;c[j>>2]=c[((d|0)==2?e:k)+40>>2];c[h>>2]=c[((d|0)==3?e:i)+40>>2];nb[c[a>>2]&63](a,g,1)|0;l=f;return}function AM(a,b,d){a=a|0;b=b|0;d=d|0;d=uH(24)|0;c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];c[d+16>>2]=c[b+16>>2];c[d+20>>2]=c[b+20>>2];return d|0}function BM(a,b,c){a=a|0;b=b|0;c=c|0;D_(b);return}function CM(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[b>>2]|0;e=c[d>>2]|0;if(a>>>0>=e>>>0)if(a>>>0>e>>>0)a=1;else{b=c[b+4>>2]|0;d=c[d+4>>2]|0;return (b>>>0<d>>>0?-1:b>>>0>d>>>0&1)|0}else a=-1;return a|0}function DM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;f=a+16|0;e=1;while(1){a=c[f>>2]|0;if((e|0)>(c[a+180>>2]|0))break;a=c[(c[a+184>>2]|0)+(e<<2)>>2]|0;d=ry(a)|0;if(!(nb[c[b>>2]&63](b,d,512)|0)){i=uH(16)|0;c[i+8>>2]=d;c[i+12>>2]=a;nb[c[b>>2]&63](b,i,1)|0}else{c[g>>2]=d;Pw(0,105214,g)|0}DM(a,b);e=e+1|0}l=h;return}function EM(a,b,c){a=a|0;b=b|0;c=c|0;D_(b);return}function FM(a){a=a|0;var b=0,c=0,d=0;d=vA(a,104988,1)|0;Az(d,134401,280,1)|0;b=Sy(a)|0;while(1){if(!b)break;c=Ex(a,b)|0;while(1){if(!c)break;GM(c,d);c=Gx(a,c)|0}b=Ty(a,b)|0}b=Sy(d)|0;while(1){if(!b)break;c=Ty(d,b)|0;HM(b);dz(a,b)|0;b=c}$x(d)|0;return}function GM(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]&3;f=c[((e|0)==3?b:b+48|0)+40>>2]|0;e=c[((e|0)==2?b:b+-48|0)+40>>2]|0;if(!((a[(c[f+16>>2]|0)+118>>0]|0)==0?!(a[(c[e+16>>2]|0)+118>>0]|0):0)){f=IM(f,d)|0;e=xM(b,f,IM(e,d)|0)|0;f=c[b+16>>2]|0;d=f+8|0;e=c[e+16>>2]|0;c[e+8>>2]=c[d>>2];c[d>>2]=0;d=f+96|0;c[e+96>>2]=c[d>>2];c[d>>2]=0;d=f+108|0;c[e+108>>2]=c[d>>2];c[d>>2]=0;d=f+100|0;c[e+100>>2]=c[d>>2];c[d>>2]=0;f=f+104|0;c[e+104>>2]=c[f>>2];c[f>>2]=0;JM(b)}return}function HM(a){a=a|0;var b=0,d=0,e=0;e=a+16|0;b=c[e>>2]|0;d=c[b+132>>2]|0;if(d){D_(d);b=c[e>>2]|0}d=c[b+8>>2]|0;if(d){tb[c[(c[d+4>>2]|0)+4>>2]&127](a);b=c[e>>2]|0}nH(c[b+104>>2]|0);nH(c[(c[e>>2]|0)+108>>2]|0);Cz(a,134365)|0;return}function IM(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=ez(b)|0;a:do if(a[(c[b+16>>2]|0)+118>>0]|0){Xy(d,b,1)|0;b=A$(ry(b)|0,58)|0;if(!b)qa(108182,104635,1225,105266);d=b+1|0;b=az(f,d,0)|0;if(!b){b=az(f,d,1)|0;Az(b,134365,304,1)|0;d=sx(f,1,0)|0;while(1){if(!d)break a;g=yx(b,d)|0;e=c[d+12>>2]|0;if((g|0)!=(e|0))rx(b,d,e)|0;d=sx(f,1,d)|0}}}while(0);return b|0}function JM(a){a=a|0;var b=0;b=a+16|0;D_(c[(c[b>>2]|0)+144>>2]|0);KM(a);nH(c[(c[b>>2]|0)+96>>2]|0);nH(c[(c[b>>2]|0)+108>>2]|0);nH(c[(c[b>>2]|0)+100>>2]|0);nH(c[(c[b>>2]|0)+104>>2]|0);Cz(a,134378)|0;return}function KM(a){a=a|0;var b=0,d=0,e=0;e=a+16|0;a=c[e>>2]|0;b=c[a+8>>2]|0;if(b){d=0;while(1){a=c[b>>2]|0;if((d|0)>=(c[b+4>>2]|0))break;D_(c[a+(d*48|0)>>2]|0);d=d+1|0;b=c[(c[e>>2]|0)+8>>2]|0}D_(a);D_(c[(c[e>>2]|0)+8>>2]|0);a=c[e>>2]|0}c[a+8>>2]=0;return}function LM(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=nx(a,b,c,0)|0;if(!e)e=nx(a,b,c,d)|0;return e|0}function MM(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;i=o;h=o+8|0;j=o+16|0;m=A$(b,59)|0;n=d+4|0;e=c[n>>2]|0;k=d+8|0;if(e>>>0>=(c[k>>2]|0)>>>0){Uw(d,1)|0;e=c[n>>2]|0}c[n>>2]=e+1;a[e>>0]=38;if(((m|0)!=0?(f=m-b|0,(f+-2|0)>>>0<=6):0)?(U0(j,b,f)|0,a[j+f>>0]=0,c[h>>2]=j,g=e2(h,23560,252,8,94)|0,(g|0)!=0):0){c[i>>2]=c[g+4>>2];Y0(j,134313,i)|0;b=c[n>>2]|0;if(b>>>0>=(c[k>>2]|0)>>>0){Uw(d,1)|0;b=c[n>>2]|0}c[n>>2]=b+1;a[b>>0]=35;Ww(d,j)|0;b=c[n>>2]|0;if(b>>>0>=(c[k>>2]|0)>>>0){Uw(d,1)|0;b=c[n>>2]|0}c[n>>2]=b+1;a[b>>0]=59;b=m+1|0}l=o;return b|0}function NM(a,b){a=a|0;b=b|0;return b$(c[a>>2]|0,c[b>>2]|0)|0}function OM(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+1072|0;k=q+8|0;j=q;i=q+16|0;o=q+24|0;c[i>>2]=b;if((c[46552]|0)!=(d|0)){c[46552]=d;a[191878]=0}Tw(o,1024,q+40|0);p=o+4|0;n=o+8|0;while(1){f=b+1|0;c[i>>2]=f;e=a[b>>0]|0;if(!(e<<24>>24))break;do if((e&255)<192)if(e<<24>>24==38){f=QM(i)|0;if(!f)e=38;else{if(f>>>0<127){e=f&255;break}b=c[p>>2]|0;e=b>>>0>=(c[n>>2]|0)>>>0;if(f>>>0<2047){if(e){Uw(o,1)|0;b=c[p>>2]|0}c[p>>2]=b+1;a[b>>0]=f>>>6|192;e=(f&63|128)&255;break}if(e){Uw(o,1)|0;b=c[p>>2]|0}c[p>>2]=b+1;a[b>>0]=f>>>12|224;b=c[p>>2]|0;if(b>>>0>=(c[n>>2]|0)>>>0){Uw(o,1)|0;b=c[p>>2]|0}c[p>>2]=b+1;a[b>>0]=f>>>6&63|128;e=(f&63|128)&255}}else{h=0;m=9}else if((e&255)>=224)if((e&255)>=240)if((e&255)<248){h=3;m=9}else{if(!(a[191878]|0)){c[j>>2]=ry(d)|0;Pw(0,106681,j)|0;a[191878]=1}h=-1;e=PM(e,o)|0;m=9}else{h=2;m=9}else{h=1;m=9}while(0);do if((m|0)==9){m=0;g=0;while(1){if((g|0)>=(h|0)){m=34;break}if((a[f>>0]&-64)<<24>>24!=-128)break;b=c[p>>2]|0;if(b>>>0>=(c[n>>2]|0)>>>0){Uw(o,1)|0;b=c[p>>2]|0}c[p>>2]=b+1;a[b>>0]=e;g=g+1|0;e=a[f>>0]|0;f=f+1|0}if((m|0)==34){m=0;c[i>>2]=f;break}c[i>>2]=f;if(!(a[191878]|0)){g=ry(d)|0;c[k>>2]=h+1;c[k+4>>2]=g;Pw(0,106802,k)|0;a[191878]=1}e=PM(e,o)|0}while(0);b=c[p>>2]|0;if(b>>>0>=(c[n>>2]|0)>>>0){Uw(o,1)|0;b=c[p>>2]|0}c[p>>2]=b+1;a[b>>0]=e;b=c[i>>2]|0}b=c[p>>2]|0;if(b>>>0>=(c[n>>2]|0)>>>0){Uw(o,1)|0;b=c[p>>2]|0}a[b>>0]=0;n=c[o>>2]|0;c[p>>2]=n;p=n1(n)|0;Xw(o);l=q;return p|0}function PM(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j;a[g>>0]=b;a[g+1>>0]=0;g=RM(g)|0;h=d+4|0;i=d+8|0;e=W_(g)|0;f=g;while(1){if((e|0)<=1)break;b=c[h>>2]|0;if(b>>>0>=(c[i>>2]|0)>>>0){Uw(d,1)|0;b=c[h>>2]|0}k=a[f>>0]|0;c[h>>2]=b+1;a[b>>0]=k;e=e+-1|0;f=f+1|0}k=a[f>>0]|0;D_(g);l=j;return k|0}function QM(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;d=i+8|0;e=c[b>>2]|0;a:do if((a[e>>0]|0)!=35){c[h>>2]=d;g=0;b:while(1){if((g|0)>=8){d=0;break a}f=a[e+g>>0]|0;switch(f<<24>>24){case 0:{d=0;break a}case 59:break b;default:{}}a[d>>0]=f;d=d+1|0;g=g+1|0}a[d>>0]=0;d=e2(h,23560,252,8,94)|0;if(!d)d=0;else{e=e+(g+1)|0;d=c[d+4>>2]|0}}else{h=a[e+1>>0]|0;d=h&255;c:do if((h|32)<<24>>24==120){h=0;g=2;while(1){if((g|0)>=8){f=h;break c}f=a[e+g>>0]|0;d=f&255;if((f+-65&255)>=6)if((f+-97&255)>=6)if((f+-48&255)<10)f=-48;else{f=h;break c}else f=-87;else f=-55;d=f+d|0;h=d+(h<<4)|0;g=g+1|0}}else{f=0;g=1;while(1){if((g|0)>=8)break c;h=a[e+g>>0]|0;d=h&255;if((h+-48&255)>=10)break c;f=(f*10|0)+-48+d|0;g=g+1|0}}while(0);d=(d|0)==59;e=d?e+(g+1)|0:e;d=d?f:0}while(0);c[b>>2]=e;l=i;return d|0}function RM(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+1056|0;g=k;i=k+8|0;c[g>>2]=b;Tw(i,1024,k+24|0);j=i+4|0;h=i+8|0;while(1){c[g>>2]=b+1;d=a[b>>0]|0;if(!(d<<24>>24))break;b=d&255;if(d<<24>>24==38){b=QM(g)|0;if(!b){b=38;f=6}else f=5}else f=5;do if((f|0)==5){f=0;if(b>>>0<127)f=6;else{d=c[j>>2]|0;e=d>>>0>=(c[h>>2]|0)>>>0;if(b>>>0<2047){if(e){Uw(i,1)|0;d=c[j>>2]|0}c[j>>2]=d+1;a[d>>0]=b>>>6|192;d=c[j>>2]|0;if(d>>>0>=(c[h>>2]|0)>>>0){Uw(i,1)|0;d=c[j>>2]|0}b=b&63|128;break}if(e){Uw(i,1)|0;d=c[j>>2]|0}c[j>>2]=d+1;a[d>>0]=b>>>12|224;d=c[j>>2]|0;if(d>>>0>=(c[h>>2]|0)>>>0){Uw(i,1)|0;d=c[j>>2]|0}c[j>>2]=d+1;a[d>>0]=b>>>6&63|128;d=c[j>>2]|0;if(d>>>0>=(c[h>>2]|0)>>>0){Uw(i,1)|0;d=c[j>>2]|0}b=b&63|128}}while(0);if((f|0)==6){d=c[j>>2]|0;if(d>>>0>=(c[h>>2]|0)>>>0){Uw(i,1)|0;d=c[j>>2]|0}}c[j>>2]=d+1;a[d>>0]=b;b=c[g>>2]|0}b=c[j>>2]|0;if(b>>>0>=(c[h>>2]|0)>>>0){Uw(i,1)|0;b=c[j>>2]|0}a[b>>0]=0;h=c[i>>2]|0;c[j>>2]=h;j=n1(h)|0;Xw(i);l=k;return j|0}function SM(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+1040|0;g=i;Tw(g,1024,i+16|0);h=g+4|0;f=g+8|0;while(1){d=b+1|0;e=a[b>>0]|0;if(!(e<<24>>24))break;if((e&255)<127){b=c[h>>2]|0;if(b>>>0>=(c[f>>2]|0)>>>0){Uw(g,1)|0;b=c[h>>2]|0}c[h>>2]=b+1;a[b>>0]=e;b=d;continue}else{e=a[d>>0]&63|e<<6&255;d=c[h>>2]|0;if(d>>>0>=(c[f>>2]|0)>>>0){Uw(g,1)|0;d=c[h>>2]|0}c[h>>2]=d+1;a[d>>0]=e;b=b+2|0;continue}}b=c[h>>2]|0;if(b>>>0>=(c[f>>2]|0)>>>0){Uw(g,1)|0;b=c[h>>2]|0}a[b>>0]=0;f=c[g>>2]|0;c[h>>2]=f;h=n1(f)|0;Xw(g);l=i;return h|0}function TM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+80|0;e=n+48|0;d=n+32|0;f=n+64|0;g=n+16|0;i=n;j=b+16|0;k=a+16|0;m=c[k>>2]|0;if(((+h[j>>3]>=+h[m+48>>3]?+h[m+64>>3]>=+h[b>>3]:0)?+h[b+24>>3]>=+h[m+56>>3]:0)?+h[m+72>>3]>=+h[b+8>>3]:0){m=m+16|0;c[d>>2]=c[j>>2];c[d+4>>2]=c[j+4>>2];c[d+8>>2]=c[j+8>>2];c[d+12>>2]=c[j+12>>2];c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];UM(g,d,e);c[d>>2]=c[m>>2];c[d+4>>2]=c[m+4>>2];c[d+8>>2]=c[m+8>>2];c[d+12>>2]=c[m+12>>2];c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[e+12>>2]=c[g+12>>2];oM(i,d,e);c[f>>2]=a;c[f+4>>2]=0;d=c[(c[(c[(c[k>>2]|0)+8>>2]|0)+4>>2]|0)+12>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=c[i+4>>2];c[e+8>>2]=c[i+8>>2];c[e+12>>2]=c[i+12>>2];d=lb[d&127](f,e)|0}else d=0;l=n;return d|0}function UM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=(+h[c+8>>3]+ +h[b+8>>3])*.5;h[a>>3]=(+h[c>>3]+ +h[b>>3])*.5;h[a+8>>3]=d;return}function VM(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,g=0,i=0.0,j=0,k=0,m=0,n=0;e=l;l=l+80|0;j=e+64|0;k=e+48|0;m=e;n=e+32|0;g=e+16|0;h[m>>3]=+h[a+24>>3]*.5;h[m+8>>3]=+h[a+32>>3]*.5;a=a+56|0;c[k>>2]=c[a>>2];c[k+4>>2]=c[a+4>>2];c[k+8>>2]=c[a+8>>2];c[k+12>>2]=c[a+12>>2];c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];oM(n,k,j);i=+h[n>>3];f=+h[n+8>>3];c[k>>2]=c[a>>2];c[k+4>>2]=c[a+4>>2];c[k+8>>2]=c[a+8>>2];c[k+12>>2]=c[a+12>>2];c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];pM(g,k,j);d=+h[g+8>>3];if((+h[b+16>>3]>=i?+h[g>>3]>=+h[b>>3]:0)?+h[b+24>>3]>=f:0)a=d>=+h[b+8>>3]&1;else a=0;l=e;return a|0}function WM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+80|0;k=n+48|0;j=n;h=a+16|0;a=c[h>>2]|0;i=c[a+8>>2]|0;a:do if((i|0)!=0?(g=i+8|0,c[j>>2]=c[g>>2],c[j+4>>2]=c[g+4>>2],c[j+8>>2]=c[g+8>>2],c[j+12>>2]=c[g+12>>2],c[j+16>>2]=c[g+16>>2],c[j+20>>2]=c[g+20>>2],c[j+24>>2]=c[g+24>>2],c[j+28>>2]=c[g+28>>2],c[k>>2]=c[b>>2],c[k+4>>2]=c[b+4>>2],c[k+8>>2]=c[b+8>>2],c[k+12>>2]=c[b+12>>2],c[k+16>>2]=c[b+16>>2],c[k+20>>2]=c[b+20>>2],c[k+24>>2]=c[b+24>>2],c[k+28>>2]=c[b+28>>2],(XM(j,k)|0)!=0):0){d=i+4|0;a=0;while(1){if((a|0)>=(c[d>>2]|0))break;e=j;f=(c[i>>2]|0)+(a*48|0)|0;g=e+48|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));c[k>>2]=c[b>>2];c[k+4>>2]=c[b+4>>2];c[k+8>>2]=c[b+8>>2];c[k+12>>2]=c[b+12>>2];c[k+16>>2]=c[b+16>>2];c[k+20>>2]=c[b+20>>2];c[k+24>>2]=c[b+24>>2];c[k+28>>2]=c[b+28>>2];if(!((YM(j,k)|0)<<24>>24))a=a+1|0;else{a=1;break a}}a=c[h>>2]|0;m=7}else m=7;while(0);do if((m|0)==7){a=c[a+96>>2]|0;if(a|0?(c[k>>2]=c[b>>2],c[k+4>>2]=c[b+4>>2],c[k+8>>2]=c[b+8>>2],c[k+12>>2]=c[b+12>>2],c[k+16>>2]=c[b+16>>2],c[k+20>>2]=c[b+20>>2],c[k+24>>2]=c[b+24>>2],c[k+28>>2]=c[b+28>>2],(VM(a,k)|0)<<24>>24):0){a=1;break}a=0}while(0);l=n;return a|0}function XM(a,b){a=a|0;b=b|0;if((+h[a+16>>3]>=+h[b>>3]?+h[b+16>>3]>=+h[a>>3]:0)?+h[a+24>>3]>=+h[b+8>>3]:0)a=+h[b+24>>3]>=+h[a+8>>3]&1;else a=0;return a|0}function YM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+96|0;k=n+64|0;j=n+48|0;i=n+32|0;f=n+16|0;g=n;m=a+4|0;d=c[m>>2]|0;if(!d)qa(106911,104635,1637,106919);e=c[a>>2]|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];e=1;while(1){if((e|0)>=(d|0)){h=7;break}d=(c[a>>2]|0)+(e<<4)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[i+12>>2]=c[d+12>>2];c[j>>2]=c[g>>2];c[j+4>>2]=c[g+4>>2];c[j+8>>2]=c[g+8>>2];c[j+12>>2]=c[g+12>>2];c[k>>2]=c[b>>2];c[k+4>>2]=c[b+4>>2];c[k+8>>2]=c[b+8>>2];c[k+12>>2]=c[b+12>>2];c[k+16>>2]=c[b+16>>2];c[k+20>>2]=c[b+20>>2];c[k+24>>2]=c[b+24>>2];c[k+28>>2]=c[b+28>>2];if((VG(i,j,k)|0)!=-1){d=1;break};c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];e=e+1|0;d=c[m>>2]|0}do if((h|0)==7){d=c[a+8>>2]|0;if(d|0?(g=a+16|0,h=c[a>>2]|0,c[i>>2]=c[g>>2],c[i+4>>2]=c[g+4>>2],c[i+8>>2]=c[g+8>>2],c[i+12>>2]=c[g+12>>2],c[j>>2]=c[h>>2],c[j+4>>2]=c[h+4>>2],c[j+8>>2]=c[h+8>>2],c[j+12>>2]=c[h+12>>2],c[k>>2]=c[b>>2],c[k+4>>2]=c[b+4>>2],c[k+8>>2]=c[b+8>>2],c[k+12>>2]=c[b+12>>2],c[k+16>>2]=c[b+16>>2],c[k+20>>2]=c[b+20>>2],c[k+24>>2]=c[b+24>>2],c[k+28>>2]=c[b+28>>2],(ZM(i,j,d,k)|0)<<24>>24):0){d=1;break}d=c[a+12>>2]|0;if(d|0?(h=a+32|0,m=(c[a>>2]|0)+((c[m>>2]|0)+-1<<4)|0,c[i>>2]=c[h>>2],c[i+4>>2]=c[h+4>>2],c[i+8>>2]=c[h+8>>2],c[i+12>>2]=c[h+12>>2],c[j>>2]=c[m>>2],c[j+4>>2]=c[m+4>>2],c[j+8>>2]=c[m+8>>2],c[j+12>>2]=c[m+12>>2],c[k>>2]=c[b>>2],c[k+4>>2]=c[b+4>>2],c[k+8>>2]=c[b+8>>2],c[k+12>>2]=c[b+12>>2],c[k+16>>2]=c[b+16>>2],c[k+20>>2]=c[b+20>>2],c[k+24>>2]=c[b+24>>2],c[k+28>>2]=c[b+28>>2],(ZM(i,j,d,k)|0)<<24>>24):0){d=1;break}d=0}while(0);l=n;return d|0}function ZM(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0.0;m=l;l=l+160|0;g=m+144|0;f=m+128|0;n=m+96|0;i=m+64|0;j=m+32|0;k=m;o=+h[e+16>>3];c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];JE(n,f,g,1.0,d);if(((o>=+h[n>>3]?(c[f>>2]=c[a>>2],c[f+4>>2]=c[a+4>>2],c[f+8>>2]=c[a+8>>2],c[f+12>>2]=c[a+12>>2],c[g>>2]=c[b>>2],c[g+4>>2]=c[b+4>>2],c[g+8>>2]=c[b+8>>2],c[g+12>>2]=c[b+12>>2],JE(i,f,g,1.0,d),+h[i+16>>3]>=+h[e>>3]):0)?(o=+h[e+24>>3],c[f>>2]=c[a>>2],c[f+4>>2]=c[a+4>>2],c[f+8>>2]=c[a+8>>2],c[f+12>>2]=c[a+12>>2],c[g>>2]=c[b>>2],c[g+4>>2]=c[b+4>>2],c[g+8>>2]=c[b+8>>2],c[g+12>>2]=c[b+12>>2],JE(j,f,g,1.0,d),o>=+h[j+8>>3]):0)?(c[f>>2]=c[a>>2],c[f+4>>2]=c[a+4>>2],c[f+8>>2]=c[a+8>>2],c[f+12>>2]=c[a+12>>2],c[g>>2]=c[b>>2],c[g+4>>2]=c[b+4>>2],c[g+8>>2]=c[b+8>>2],c[g+12>>2]=c[b+12>>2],JE(k,f,g,1.0,d),+h[k+24>>3]>=+h[e+8>>3]):0)f=1;else f=0;l=m;return f|0}function _M(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;f=g;a:do if((b|0)!=0?(e=a[b>>0]|0,e<<24>>24!=0):0){do switch(e<<24>>24|0){case 48:{d=2;break a}case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:{d=10;break a}case 67:case 99:{e=b+1|0;if(!(O$(e,106934)|0)){d=4;break a}if(!(O$(e,106940)|0)){d=12;break a}break}case 70:case 102:{if(!(O$(b+1|0,106948)|0)){d=2;break a}break}case 76:case 108:{if(!(O$(b+1|0,106953)|0)){d=2;break a}break}case 78:case 110:{e=b+1|0;if(!(O$(e,106957)|0)){d=0;break a}if(!(O$(e,106961)|0)){d=2;break a}break}case 79:case 111:{if(!(O$(b+1|0,106963)|0)){d=8;break a}break}case 80:case 112:{if(!(O$(b+1|0,106968)|0)){d=6;break a}break}case 83:case 115:{if(!(O$(b+1|0,106976)|0)){d=10;break a}break}case 84:case 116:{if(!(O$(b+1|0,106982)|0)){d=10;break a}break}case 89:case 121:{if(!(O$(b+1|0,106986)|0)){d=10;break a}break}default:{}}while(0);c[f>>2]=b;Pw(0,106989,f)|0}while(0);l=g;return d|0}function $M(d,f){d=d|0;f=f|0;var g=0;g=xx(d,107030)|0;if(g)if(!(a[g>>0]|0))f=0;else f=_M(g,f)|0;d=(c[d+16>>2]|0)+136|0;b[d>>1]=f|e[d>>1];return}function aN(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0.0,g=0.0,i=0.0,j=0.0,k=0.0,m=0,n=0,o=0.0,p=0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0;v=l;l=l+32|0;p=v+16|0;r=v;t=e&1;u=e&2;a:do if((c|0)==2){s=+h[a+16>>3];f=+h[a>>3];j=+h[a+24>>3];i=+h[a+8>>3];f=f-(s-f);h[p>>3]=f;h[r>>3]=s;i=i-(j-i);h[p+8>>3]=i;h[r+8>>3]=j}else{g=+h[a>>3];h[r>>3]=g;h[p>>3]=g;j=+h[a+8>>3];m=r+8|0;h[m>>3]=j;n=p+8|0;h[n>>3]=j;e=0;f=g;i=j;while(1){if((e|0)>=(c|0)){s=g;break a}w=a+(e<<4)|0;q=+h[w>>3];k=+h[(q<f?w:p)>>3];h[p>>3]=k;s=+h[a+(e<<4)+8>>3];o=+h[(s<i?w:p)+8>>3];h[n>>3]=o;q=+h[(q>g?w:r)>>3];h[r>>3]=q;s=+h[(s>j?w:r)+8>>3];h[m>>3]=s;e=e+1|0;f=k;i=o;g=q;j=s}}while(0);g=(s-f)*.5;q=g+f;o=(j-i)*.5;k=o+i;if(!t){f=j-k;j=d;i=+F(+j);j=+E(+j);if(!u){g=i*f-k;f=-k-o*i}else{f=i*f;g=k-f;f=f+k}h[b+8>>3]=g;h[b+24>>3]=f;d=j*(s-q);h[b>>3]=q-d;h[b+16>>3]=d+q}else{d=+C(+(o*o+g*g));h[b+8>>3]=u|0?k:-k;h[b>>3]=q;h[b+16>>3]=d*.25;h[b+24>>3]=d}l=v;return}function bN(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0;e=a+16|0;f=c[e>>2]|0;if(!(b<<24>>24)){d=+h[f+32>>3]*36.0;h[f+88>>3]=d;a=f+40|0}else{d=+h[f+40>>3]*36.0;h[f+88>>3]=d;a=f+32|0}h[f+96>>3]=d;h[(c[e>>2]|0)+80>>3]=+h[a>>3]*72.0;return}function cN(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0;y=l;l=l+16|0;j=y+8|0;x=4;w=C_(40)|0;c[w>>2]=0;s=y;o=0;e=$(29,b|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,w|0,x|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;a:do if((g|0)!=1){o=0;v=$(23,e<<3|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){e=E3(c[f>>2]|0,w|0,x|0)|0;if(!e)bb(f|0,p|0);z=p}else e=-1;if((e|0)!=1){if(!(a[191874]|0))t=0;else{o=0;e=_(3)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,w|0,x|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){n=0;k=0;m=0;j=0;i=0;d=v;h=v;e=z;g=0;u=74;break}t=e}o=0;e=aa(95,b|0,107038)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,w|0,x|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)!=1){c[46553]=0;b:do if(e|0?(i=a[e>>0]|0,i<<24>>24):0){h=e;f=i;g=0;while(1){i=h+1|0;if(!(f<<24>>24))break b;switch(f<<24>>24|0){case 99:{e=8;u=16;break}case 105:{e=18;u=16;break}case 109:{e=1;u=16;break}case 114:{e=4;u=16;break}case 115:{e=2;u=16;break}default:e=g}if((u|0)==16){u=0;e=g|e;c[46553]=e}h=i;f=a[i>>0]|0;g=e}}while(0);if(d|0){o=0;ca(20,0,107042,j|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){n=0;k=t;m=0;j=0;i=0;d=v;h=v;e=z;g=0;u=74;break}}o=0;r=aa(96,b|0,0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)!=1){m=c[r+16>>2]|0;if(c[46553]&2|0){o=0;ja(26,c[15686]|0,m|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){n=0;k=t;m=0;j=0;i=r;d=v;h=v;e=z;g=0;u=74;break}}o=0;g=$(25,b|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)!=1){n=0;while(1){if(!g)break;o=0;e=aa(97,b|0,g|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){h=E3(c[f>>2]|0,w|0,x|0)|0;if(!h)bb(f|0,p|0);z=p}else h=-1;if((h|0)==1){k=t;m=0;j=0;i=r;d=v;h=v;e=z;g=0;u=74;break a}i=n;while(1){if(!e)break;if(!((c[46363]|0)==2?(c[(c[e+16>>2]|0)+8>>2]|0)!=0:0))u=32;c:do if((u|0)==32){u=0;do if(a[191874]|0){k=c[e>>2]&3;j=(c[c[((k|0)==3?e:e+48|0)+40>>2]>>2]|0)>>>4;k=(c[c[((k|0)==2?e:e+-48|0)+40>>2]>>2]|0)>>>4;if(j>>>0>k>>>0){o=0;f=ca(31,t|0,k|0,j|0)|0;h=o;o=0;if((h|0)!=0&(p|0)!=0){d=E3(c[h>>2]|0,w|0,x|0)|0;if(!d)bb(h|0,p|0);z=p}else d=-1;if((d|0)==1){k=t;m=0;j=0;i=r;d=v;h=v;e=z;g=0;u=74;break a}if(f|0)break c;o=0;ka(64,t|0,k|0,j|0);f=o;o=0;if((f|0)!=0&(p|0)!=0){h=E3(c[f>>2]|0,w|0,x|0)|0;if(!h)bb(f|0,p|0);z=p}else h=-1;if((h|0)==1){k=t;m=0;j=0;i=r;d=v;h=v;e=z;g=0;u=74;break a}break}else{o=0;f=ca(31,t|0,j|0,k|0)|0;h=o;o=0;if((h|0)!=0&(p|0)!=0){d=E3(c[h>>2]|0,w|0,x|0)|0;if(!d)bb(h|0,p|0);z=p}else d=-1;if((d|0)==1){k=t;m=0;j=0;i=r;d=v;h=v;e=z;g=0;u=74;break a}if(f|0)break c;o=0;ka(64,t|0,j|0,k|0);f=o;o=0;if((f|0)!=0&(p|0)!=0){h=E3(c[f>>2]|0,w|0,x|0)|0;if(!h)bb(f|0,p|0);z=p}else h=-1;if((h|0)==1){k=t;m=0;j=0;i=r;d=v;h=v;e=z;g=0;u=74;break a}break}}while(0);c[v+(i<<3)+4>>2]=e;o=0;d=$(30,e|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){h=E3(c[f>>2]|0,w|0,x|0)|0;if(!h)bb(f|0,p|0);z=p}else h=-1;if((h|0)==1){k=t;m=0;j=0;i=r;d=v;h=v;e=z;g=0;u=74;break a}c[v+(i<<3)>>2]=d;i=i+1|0}while(0);o=0;e=aa(98,b|0,e|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){h=E3(c[f>>2]|0,w|0,x|0)|0;if(!h)bb(f|0,p|0);z=p}else h=-1;if((h|0)==1){k=t;m=0;j=0;i=r;d=v;h=v;e=z;g=0;u=74;break a}}o=0;g=aa(84,b|0,g|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){k=t;m=0;j=0;i=r;d=v;h=v;e=z;g=0;u=74;break a}n=i}o=0;j=$(31,n<<3|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)!=1){o=0;ma(28,v|0,n|0,8,99);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)!=1){g=c[m>>2]|0;o=0;ia(107,g+2|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)!=1){i=c[m+16>>2]|0;d=i+(g*40|0)|0;i=i+((g+1|0)*40|0)|0;q=c[15686]|0;h=0;while(1){if((h|0)>=(n|0))break;if((h|0)>0?c[46553]&16|0:0){o=0;ja(26,q|0,m|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){k=t;m=j;i=r;d=v;h=v;e=z;g=q;u=74;break a}}e=c[v+(h<<3)+4>>2]|0;k=c[e>>2]&3;g=c[(c[(c[((k|0)==3?e:e+48|0)+40>>2]|0)+16>>2]|0)+112>>2]|0;e=c[(c[(c[((k|0)==2?e:e+-48|0)+40>>2]|0)+16>>2]|0)+112>>2]|0;if((g|0)==(e|0)){o=0;ma(29,m|0,g|0,i|0,d|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){k=t;m=j;i=r;d=v;h=v;e=z;g=q;u=74;break a}}else{o=0;ka(65,m|0,e|0,i|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){k=t;m=j;i=r;d=v;h=v;e=z;g=q;u=74;break a}o=0;ka(65,m|0,g|0,d|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){k=t;m=j;i=r;d=v;h=v;e=z;g=q;u=74;break a}}o=0;e=ca(32,m|0,i|0,d|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,w|0,x|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){k=t;m=j;i=r;d=v;h=v;e=z;g=q;u=74;break a}if(e|0){k=t;m=j;i=r;d=v;h=v;break a}e=j+(h<<3)|0;o=0;ma(30,s|0,m|0,d|0,i|0);f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,w|0,x|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){k=t;m=j;i=r;d=v;h=v;e=z;g=q;u=74;break a}g=s;k=c[g+4>>2]|0;c[e>>2]=c[g>>2];c[e+4>>2]=k;o=0;ia(108,m|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){k=t;m=j;i=r;d=v;h=v;e=z;g=q;u=74;break a}h=h+1|0}o=0;ha(8);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)!=1){o=0;e=$(32,r|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,w|0,x|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)!=1){c[r+20>>2]=e;o=0;e=$(33,r|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,w|0,x|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)!=1){c[r+24>>2]=e;o=0;ka(66,n|0,j|0,r|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)!=1){w=D3(186216,1,w|0,x|0)|0;x=z;o=0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)!=1){k=t;m=j;i=r;d=v;h=v;e=0;g=q;u=74}else{k=t;m=j;i=r;d=v;h=v;e=z;g=q;u=74}}else{k=t;m=j;i=r;d=v;h=v;e=z;g=q;u=74}}else{k=t;m=j;i=r;d=v;h=v;e=z;g=q;u=74}}else{k=t;m=j;i=r;d=v;h=v;e=z;g=q;u=74}}else{k=t;m=j;i=r;d=v;h=v;e=z;g=q;u=74}}else{k=t;m=j;i=r;d=v;h=v;e=z;g=0;u=74}}else{k=t;m=j;i=r;d=v;h=v;e=z;g=0;u=74}}else{k=t;m=0;i=r;d=v;h=v;e=z;g=0;u=74}}else{n=0;k=t;m=0;j=0;i=r;d=v;h=v;e=z;g=0;u=74}}else{n=0;k=t;m=0;j=0;i=r;d=v;h=v;e=z;g=0;u=74}}else{n=0;k=t;m=0;j=0;i=0;d=v;h=v;e=z;g=0;u=74}}else{n=0;k=0;m=0;j=0;i=0;d=0;h=v;e=z;g=0;u=74}}else{n=0;k=0;m=0;j=0;i=0;d=0;h=0;e=z;g=0;u=74}while(0);d:while(1){if((u|0)==74){u=0;if(e|0){q=g;continue}o=0;ia(109,i|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){A=g;f=h;q=d;r=i;s=j;t=m;v=k;u=n;e=z;g=A;h=f;d=q;i=r;j=s;m=t;k=v;n=u;u=74;continue}if(c[46553]&4|0){o=0;na(8,g|0,i|0,n|0,m|0,d|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){f=g;q=h;r=d;s=i;t=j;v=m;A=k;u=n;e=z;g=f;h=q;d=r;i=s;j=t;m=v;k=A;n=u;u=74;continue}}o=0;oa(10,b|0,i|0,n|0,m|0,d|0,0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){f=g;q=h;r=d;s=i;t=j;v=m;A=k;u=n;e=z;g=f;h=q;d=r;i=s;j=t;m=v;k=A;n=u;u=74;continue}q=g}if(!(a[191874]|0))e=0;else{o=0;ia(110,k|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;g=q;u=74;continue}e=0}while(1){if((e|0)>=(n|0))break;o=0;ia(103,c[m+(e<<3)+4>>2]|0);f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,w|0,x|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){e=z;g=q;u=74;continue d}e=e+1|0}o=0;ia(103,j|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;g=q;u=74;continue}o=0;ia(111,i|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;g=q;u=74;continue}o=0;ia(103,h|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;g=q;u=74}else break}D_(w|0);l=y;return}function dN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+64|0;p=q+32|0;o=q+16|0;j=q;k=q+48|0;D1(107909,a)|0;D1(107920,a)|0;m=b+16|0;n=j+8|0;i=k+4|0;g=0;while(1){if((g|0)>=(c[b>>2]|0))break;d=c[m>>2]|0;e=c[d+(g*40|0)+20>>2]|0;f=c[d+(g*40|0)+24>>2]|0;if((e|0)==(f|0)){YN(j,e);d=~~+h[j>>3];e=~~+h[n>>3]}else{_N(k,(c[e>>2]&1|0)==0?e:f,d+(g*40|0)|0);d=c[k>>2]|0;e=c[i>>2]|0}c[o>>2]=g;c[o+4>>2]=d;c[o+8>>2]=e;g1(a,107940,o)|0;g=g+1|0}f=b+4|0;e=b+20|0;d=0;while(1){if((d|0)>=(c[f>>2]|0))break;o=c[e>>2]|0;b=c[o+(d*24|0)+16>>2]|0;r=+h[o+(d*24|0)>>3];c[p>>2]=c[o+(d*24|0)+12>>2];c[p+4>>2]=b;h[p+8>>3]=r;g1(a,107960,p)|0;d=d+1|0}D1(107982,a)|0;l=q;return}function eN(a){a=a|0;var b=0.0,d=0.0,e=0,f=0;f=c[a>>2]&3;e=c[(c[((f|0)==3?a:a+48|0)+40>>2]|0)+16>>2]|0;a=c[(c[((f|0)==2?a:a+-48|0)+40>>2]|0)+16>>2]|0;b=+h[e+16>>3]-+h[a+16>>3];d=+h[e+24>>3]-+h[a+24>>3];return ~~(d*d+b*b)|0}function fN(a,b){a=a|0;b=b|0;return (c[a>>2]|0)-(c[b>>2]|0)|0}function gN(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;j=n;YN(n+16|0,d);k=d+32|0;m=d+36|0;g=0;while(1){if((g|0)>=(c[k>>2]|0))break;h=c[(c[m>>2]|0)+(g<<2)>>2]|0;do if(!(a[h+36>>0]|0)){i=c[h+20>>2]|0;if((i|0)==(d|0)){WN(j,h,c[h+24>>2]|0);pO(b,f,h,0.0)|0;break}else{WN(j,h,i);pO(b,e,h,0.0)|0;break}}while(0);g=g+1|0}c[b>>2]=(c[b>>2]|0)+2;l=n;return}function hN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;h=k;YN(k+16|0,b);i=b+32|0;j=b+36|0;f=0;while(1){if((f|0)>=(c[i>>2]|0))break;g=c[(c[j>>2]|0)+(f<<2)>>2]|0;e=c[g+20>>2]|0;if((e|0)==(b|0))e=c[g+24>>2]|0;WN(h,g,e);pO(a,d,g,0.0)|0;f=f+1|0}c[a>>2]=(c[a>>2]|0)+1;c[d+24>>2]=b;c[d+20>>2]=b;l=k;return}function iN(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+128|0;C=H+64|0;n=H+48|0;D=H+32|0;E=H+16|0;F=H;g=0;i=e;while(1){if(!i)break;g=g+1|0;i=c[i+8>>2]|0}B=uH((g*56|0)+-112|0)|0;c[C+52>>2]=0;c[C+48>>2]=0;A=e+8|0;e=c[A>>2]|0;i=c[e+8>>2]|0;g=c[e+20>>2]|0;if(c[g>>2]&1)g=c[e+24>>2]|0;WN(n,e,g);j=e;q=e;p=0.0;o=+h[n>>3];z=0;m=0.0;x=+h[n+8>>3];while(1){y=i+8|0;if(!(c[y>>2]|0))break;v=XN(j,i)|0;NR(d,v,c[q+12>>2]|0);t=q+36|0;u=i+36|0;if((a[t>>0]|0)==(a[u>>0]|0))if((c[y>>2]|0)==(f|0)){WN(E,i,v);e=E;G=12}else{j=q;e=z;k=x}else{YN(D,v);e=D;G=12}if((G|0)==12){G=0;w=+h[e>>3];k=+h[e+8>>3];e=a[t>>0]|0;s=e<<24>>24==0;r=(q|0)==(c[A>>2]|0);if(s){if(!(a[u>>0]|0))e=0;else e=(c[i+20>>2]|0)==(v|0)?4:2;n=v+48|0;q=g+48|0;j=g+40|0;g=r?0:p>o?4:2}else{if(e<<24>>24==(a[u>>0]|0))e=0;else e=(c[i+20>>2]|0)==(v|0)?1:3;n=v+40|0;q=g+40|0;j=g+48|0;g=r?0:m>x?1:3}ZN(C,s&1,+h[j>>3],+h[q>>3],+h[n>>3],g,e);q=z+1|0;g=B+(z*56|0)|0;e=C;j=g+56|0;do{c[g>>2]=c[e>>2];g=g+4|0;e=e+4|0}while((g|0)<(j|0));if((a[t>>0]|0)!=(a[u>>0]|0)?(c[y>>2]|0)==(f|0):0){WN(F,i,v);n=(a[u>>0]|0)==0;e=v+40|0;g=v+48|0;p=+h[(n?g:e)>>3];ZN(C,n&1,+h[(n?e:g)>>3],p,p,n?(o>w?4:2):x>k?1:3,0);n=z+2|0;g=B+(q*56|0)|0;e=C;j=g+56|0;do{c[g>>2]=c[e>>2];g=g+4|0;e=e+4|0}while((g|0)<(j|0));g=v;j=i;p=o;o=w;e=n;m=x}else{g=v;j=i;p=o;o=w;e=q;m=x}}v=i;i=c[y>>2]|0;q=j;z=e;x=k;j=v}i=F_(B,z*56|0)|0;e=z+-1|0;g=0;while(1){if((g|0)>=(z|0))break;if((g|0)>0)c[i+(g*56|0)+48>>2]=i+((g+-1|0)*56|0);if((g|0)<(e|0)){G=g+1|0;c[i+(g*56|0)+52>>2]=i+(G*56|0);g=G;continue}else{g=g+1|0;continue}}c[b>>2]=z;c[b+4>>2]=i;l=H;return}function jN(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0;j=Cw(25588,c[4555]|0)|0;k=a+8|0;i=0;while(1){if((i|0)>=(c[a>>2]|0))break;b=(c[k>>2]|0)+(i*72|0)|0;if(!(c[b>>2]&4)){while(1){d=c[(c[b+36>>2]|0)+8>>2]|0;if(!d)break;d=c[d+20>>2]|0;if(!d)break;if(!(c[d>>2]&1))b=d;else break}g=uH(40)|0;c[g+36>>2]=b;h[g+8>>3]=+h[b+40>>3];f=b;d=c[b>>2]|0;while(1){c[f>>2]=d|4;d=c[c[f+36>>2]>>2]|0;if(!d)break;e=c[d+24>>2]|0;if(!e)break;d=c[e>>2]|0;if(d&1|0)break;else f=e}h[g+16>>3]=+h[f+56>>3];RN(j,g,+h[b+48>>3])}i=i+1|0}return j|0}function kN(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0;j=Cw(25588,c[4555]|0)|0;k=a+8|0;i=0;while(1){if((i|0)>=(c[a>>2]|0))break;b=(c[k>>2]|0)+(i*72|0)|0;if(!(c[b>>2]&2)){while(1){d=c[(c[b+36>>2]|0)+12>>2]|0;if(!d)break;d=c[d+20>>2]|0;if(!d)break;if(!(c[d>>2]&1))b=d;else break}g=uH(40)|0;c[g+36>>2]=b;h[g+8>>3]=+h[b+48>>3];f=b;d=c[b>>2]|0;while(1){c[f>>2]=d|2;d=c[(c[f+36>>2]|0)+4>>2]|0;if(!d)break;e=c[d+24>>2]|0;if(!e)break;d=c[e>>2]|0;if(d&1|0)break;else f=e}h[g+16>>3]=+h[f+64>>3];RN(j,g,+h[b+40>>3])}i=i+1|0}return j|0}function lN(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=e+20|0;i=e+24|0;e=0;while(1){if((e|0)>=(b|0))break;g=c[d+(e<<3)>>2]|0;h=c[d+(e<<3)+4>>2]|0;f=0;while(1){if((f|0)>=(g|0))break;k=h+(f*56|0)|0;QN(uN(c[((a[k>>0]|0)==0?j:i)>>2]|0,k)|0,k);f=f+1|0}e=e+1|0}return}function mN(a){a=a|0;var b=0,d=0;d=a+20|0;wN(c[d>>2]|0);b=a+24|0;wN(c[b>>2]|0);xN(c[d>>2]|0);xN(c[b>>2]|0);yN(c[d>>2]|0,a);yN(c[b>>2]|0,a);zN(c[d>>2]|0);zN(c[b>>2]|0);return}function nN(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0,C=0.0,D=0,E=0.0;z=l;l=l+224|0;n=z+176|0;m=z+208|0;x=z+160|0;y=z+128|0;k=z+96|0;t=z+64|0;u=z;o=z+32|0;v=u+8|0;h[v>>3]=1797693134862315708145274.0e284;h[u>>3]=1797693134862315708145274.0e284;w=u+24|0;h[w>>3]=-1797693134862315708145274.0e284;p=u+16|0;h[p>>3]=-1797693134862315708145274.0e284;D1(107157,a)|0;c[n>>2]=10;c[n+4>>2]=10;g1(a,107563,n)|0;D1(135183,a)|0;i=b+4|0;j=b+12|0;q=t+8|0;r=t+16|0;s=t+24|0;g=0;while(1){if((g|0)>=(c[i>>2]|0))break;D=(c[j>>2]|0)+(g*72|0)+40|0;c[t>>2]=c[D>>2];c[t+4>>2]=c[D+4>>2];c[t+8>>2]=c[D+8>>2];c[t+12>>2]=c[D+12>>2];c[t+16>>2]=c[D+16>>2];c[t+20>>2]=c[D+20>>2];c[t+24>>2]=c[D+24>>2];c[t+28>>2]=c[D+28>>2];C=+h[q>>3];B=+h[r>>3];A=+h[s>>3];h[k>>3]=+h[t>>3];h[k+8>>3]=C;h[k+16>>3]=B;h[k+24>>3]=A;g1(a,135202,k)|0;g=g+1|0}g=0;while(1){if((g|0)>=(d|0))break;D=c[f+(g<<3)+4>>2]|0;k=e+(g<<3)|0;c[m>>2]=c[k>>2];c[m+4>>2]=c[k+4>>2];c[n>>2]=c[u>>2];c[n+4>>2]=c[u+4>>2];c[n+8>>2]=c[u+8>>2];c[n+12>>2]=c[u+12>>2];c[n+16>>2]=c[u+16>>2];c[n+20>>2]=c[u+20>>2];c[n+24>>2]=c[u+24>>2];c[n+28>>2]=c[u+28>>2];vN(o,a,D,m,b,n);c[u>>2]=c[o>>2];c[u+4>>2]=c[o+4>>2];c[u+8>>2]=c[o+8>>2];c[u+12>>2]=c[o+12>>2];c[u+16>>2]=c[o+16>>2];c[u+20>>2]=c[o+20>>2];c[u+24>>2]=c[o+24>>2];c[u+28>>2]=c[o+28>>2];g=g+1|0}D1(107580,a)|0;i=b+8|0;g=0;while(1){if((g|0)>=(c[b>>2]|0))break;D=(c[i>>2]|0)+(g*72|0)+40|0;c[t>>2]=c[D>>2];c[t+4>>2]=c[D+4>>2];c[t+8>>2]=c[D+8>>2];c[t+12>>2]=c[D+12>>2];c[t+16>>2]=c[D+16>>2];c[t+20>>2]=c[D+20>>2];c[t+24>>2]=c[D+24>>2];c[t+28>>2]=c[D+28>>2];E=+h[t>>3];A=+h[q>>3];B=+h[r>>3];C=+h[s>>3];h[y>>3]=E;h[y+8>>3]=A;h[y+16>>3]=B;h[y+24>>3]=C;g1(a,135239,y)|0;h[u>>3]=+h[(+h[u>>3]<E?u:t)>>3];h[v>>3]=+h[(+h[v>>3]<A?u:t)+8>>3];h[p>>3]=+h[(+h[p>>3]>B?u:t)+16>>3];h[w>>3]=+h[(+h[w>>3]>C?u:t)+24>>3];g=g+1|0}v=~~(+h[v>>3]+10.0);y=~~(+h[p>>3]+10.0);D=~~(+h[w>>3]+10.0);c[x>>2]=~~(+h[u>>3]+10.0);c[x+4>>2]=v;c[x+8>>2]=y;c[x+12>>2]=D;g1(a,107605,x)|0;l=z;return}function oN(b,d,e,f,g,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;N=l;l=l+112|0;F=N+88|0;E=N+72|0;M=N+32|0;I=N+16|0;J=N;K=N+56|0;L=N+40|0;G=c[15686]|0;w=(i|0)==0;x=J+8|0;y=I+8|0;v=0;m=0;n=0;o=0;p=0;i=0;while(1){if((v|0)>=(e|0))break;z=c[g+(v<<3)+4>>2]|0;A=z+48|0;u=(c[(c[((c[z>>2]&3|0)==3?z:A)+40>>2]|0)+16>>2]|0)+16|0;B=z+16|0;C=(c[B>>2]|0)+16|0;c[E>>2]=c[u>>2];c[E+4>>2]=c[u+4>>2];c[E+8>>2]=c[u+8>>2];c[E+12>>2]=c[u+12>>2];c[F>>2]=c[C>>2];c[F+4>>2]=c[C+4>>2];c[F+8>>2]=c[C+8>>2];c[F+12>>2]=c[C+12>>2];pN(K,E,F);c[I>>2]=c[K>>2];c[I+4>>2]=c[K+4>>2];c[I+8>>2]=c[K+8>>2];c[I+12>>2]=c[K+12>>2];C=z+-48|0;u=(c[(c[((c[z>>2]&3|0)==2?z:C)+40>>2]|0)+16>>2]|0)+16|0;t=(c[B>>2]|0)+56|0;c[E>>2]=c[u>>2];c[E+4>>2]=c[u+4>>2];c[E+8>>2]=c[u+8>>2];c[E+12>>2]=c[u+12>>2];c[F>>2]=c[t>>2];c[F+4>>2]=c[t+4>>2];c[F+8>>2]=c[t+8>>2];c[F+12>>2]=c[t+12>>2];pN(L,E,F);c[J>>2]=c[L>>2];c[J+4>>2]=c[L+4>>2];c[J+8>>2]=c[L+8>>2];c[J+12>>2]=c[L+12>>2];t=c[f+(v<<3)>>2]|0;u=c[f+(v<<3)+4>>2]|0;s=t*3|0;D=s+1|0;if((s|0)>=(n|0)){if(m|0)D_(i);p=vH(D<<4)|0;m=p;n=D;o=p;i=p}if(!(a[u>>0]|0)){k=+(rN(u,d)|0);j=+h[I>>3]}else{j=+qN(u,d);k=+h[y>>3]}r=m+16|0;h[m+16>>3]=j;h[m+24>>3]=k;c[p>>2]=c[r>>2];c[p+4>>2]=c[r+4>>2];c[p+8>>2]=c[r+8>>2];c[p+12>>2]=c[r+12>>2];r=1;q=u;s=2;while(1){if((r|0)>=(t|0))break;q=u+(r*56|0)|0;if(!(a[q>>0]|0))k=+(rN(q,d)|0);else j=+qN(q,d);O=m+(s+2<<4)|0;Q=m+(s+1<<4)|0;P=m+(s<<4)|0;h[P>>3]=j;h[m+(s<<4)+8>>3]=k;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];c[Q+8>>2]=c[P+8>>2];c[Q+12>>2]=c[P+12>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];r=r+1|0;s=s+3|0}if(!(a[q>>0]|0)){k=+(rN(q,d)|0);j=+h[J>>3]}else{j=+qN(q,d);k=+h[x>>3]}Q=m+(s<<4)|0;O=s+1|0;P=m+(O<<4)|0;h[P>>3]=j;h[m+(O<<4)+8>>3]=k;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];c[Q+8>>2]=c[P+8>>2];c[Q+12>>2]=c[P+12>>2];if(0>1){P=ry(c[((c[z>>2]&3|0)==3?z:A)+40>>2]|0)|0;Q=ry(c[((c[z>>2]&3|0)==2?z:C)+40>>2]|0)|0;c[M>>2]=P;c[M+4>>2]=Q;g1(G,107116,M)|0}QK(z,c[((c[z>>2]&3|0)==2?z:C)+40>>2]|0,m,D,25576);if((!w?(H=c[(c[B>>2]|0)+96>>2]|0,H|0):0)?(a[H+81>>0]|0)==0:0){c[E>>2]=c[I>>2];c[E+4>>2]=c[I+4>>2];c[E+8>>2]=c[I+8>>2];c[E+12>>2]=c[I+12>>2];c[F>>2]=c[J>>2];c[F+4>>2]=c[J+4>>2];c[F+8>>2]=c[J+8>>2];c[F+12>>2]=c[J+12>>2];jL(b,z,E,F)}v=v+1|0}D_(o);l=N;return}function pN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;h[b>>3]=+h[b>>3]+ +h[d>>3];e=b+8|0;h[e>>3]=+h[e>>3]+ +h[d+8>>3];c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function qN(a,b){a=a|0;b=b|0;var d=0.0,e=0;b=uN(c[b+24>>2]|0,a)|0;e=c[b+36>>2]|0;d=+h[e+40>>3];return +((+h[e+56>>3]-d)*(+(c[a+44>>2]|0)/+((c[b+24>>2]|0)+1|0))+d)}function rN(a,b){a=a|0;b=b|0;var d=0.0,e=0;e=uN(c[b+20>>2]|0,a)|0;b=c[e+36>>2]|0;d=+h[b+48>>3];return ~~((1.0-+(c[a+44>>2]|0)/+((c[e+24>>2]|0)+1|0))*(+h[b+64>>3]-d)+d)|0}function sN(a){a=a|0;return 0}function tN(a){a=a|0;return 0}function uN(a,b){a=a|0;b=b|0;a=nb[c[a>>2]&63](a,b+8|0,512)|0;if(!a)qa(107129,107135,423,107143);a=c[a+16>>2]|0;a=nb[c[a>>2]&63](a,b+16|0,512)|0;if(!a)qa(107154,107135,425,107143);else return a|0;return 0}function vN(b,d,e,f,g,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0.0,m=0,n=0,o=0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0.0,D=0.0;z=l;l=l+32|0;y=z+16|0;u=z+8|0;m=z;j=c[(c[(c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)+16>>2]|0)+112>>2]|0;t=c[f+4>>2]|0;if(!(a[t>>0]|0)){k=+h[j+56>>3];s=+h[j+40>>3];j=rN(t,g)|0;k=(s+k)*.5}else{k=+h[j+64>>3];s=+h[j+48>>3];j=~~((s+k)*.5);k=+qN(t,g)}A=~~k;p=+h[i>>3];r=+(A|0);p=p<r?p:r;h[i>>3]=p;v=i+8|0;q=+h[v>>3];s=+(j|0);q=q<s?q:s;h[v>>3]=q;w=i+16|0;k=+h[w>>3];r=k>r?k:r;h[w>>3]=r;x=i+24|0;k=+h[x>>3];s=k>s?k:s;h[x>>3]=s;c[m>>2]=A;c[m+4>>2]=j;g1(d,107656,m)|0;o=c[f>>2]|0;m=t;n=1;f=A;while(1){if((n|0)>=(o|0))break;m=t+(n*56|0)|0;if(!(a[m>>0]|0))j=rN(m,g)|0;else f=~~+qN(m,g);B=+(f|0);D=p<B?p:B;h[i>>3]=D;k=+(j|0);C=q<k?q:k;h[v>>3]=C;B=r>B?r:B;h[w>>3]=B;k=s>k?s:k;h[x>>3]=k;c[u>>2]=f;c[u+4>>2]=j;g1(d,107678,u)|0;n=n+1|0;p=D;q=C;r=B;s=k}j=c[(c[(c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)+16>>2]|0)+112>>2]|0;if(!(a[m>>0]|0)){k=+h[j+56>>3];D=+h[j+40>>3];j=rN(m,g)|0;k=(D+k)*.5}else{k=+h[j+64>>3];D=+h[j+48>>3];j=~~((D+k)*.5);k=+qN(m,g)}A=~~k;C=+(A|0);h[i>>3]=p<C?p:C;D=+(j|0);h[v>>3]=q<D?q:D;h[w>>3]=r>C?r:C;h[x>>3]=s>D?s:D;c[y>>2]=A;c[y+4>>2]=j;g1(d,107692,y)|0;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];c[b+16>>2]=c[i+16>>2];c[b+20>>2]=c[i+20>>2];c[b+24>>2]=c[i+24>>2];c[b+28>>2]=c[i+28>>2];l=z;return}function wN(a){a=a|0;var b=0;a=Aw(a)|0;while(1){if(!a)break;b=Aw(c[a+16>>2]|0)|0;while(1){if(!b)break;c[b+32>>2]=$N(c[b+24>>2]|0)|0;b=c[b>>2]|0}a=c[a>>2]|0}return}function xN(a){a=a|0;var b=0;a=Aw(a)|0;while(1){if(!a)break;b=Aw(c[a+16>>2]|0)|0;while(1){if(!b)break;if(c[b+24>>2]|0)PN(b);b=c[b>>2]|0}a=c[a>>2]|0}return}function yN(a,b){a=a|0;b=b|0;var d=0;d=Aw(a)|0;while(1){if(!d)break;a=Aw(c[d+16>>2]|0)|0;while(1){if(!a)break;DN(a,b);a=c[a>>2]|0}d=c[d>>2]|0}return}function zN(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0;e=Aw(a)|0;while(1){if(!e)break;i=e+8|0;f=Aw(c[e+16>>2]|0)|0;while(1){if(!f)break;a=f+24|0;a:do if(c[a>>2]|0){if(c[46553]&8|0)AN(f,~~+h[i>>3]);g=f+32|0;eO(c[g>>2]|0);b=c[a>>2]|0;d=f+28|0;a=0;while(1){if((a|0)>=(b|0))break a;c[(c[(c[d>>2]|0)+(a<<2)>>2]|0)+44>>2]=(c[(c[(c[g>>2]|0)+4>>2]|0)+(a*12|0)+4>>2]|0)+1;a=a+1|0}}while(0);f=c[f>>2]|0}e=c[e>>2]|0}return}function AN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0.0,m=0.0;j=l;l=l+32|0;d=j;g=a+24|0;a:do if((c[g>>2]|0)>=2){i=c[15686]|0;m=+h[a+8>>3];k=+h[a+16>>3];c[d>>2]=b;h[d+8>>3]=m;h[d+16>>3]=k;g1(i,107713,d)|0;f=a+32|0;a=a+28|0;b=0;while(1){if((b|0)>=(c[g>>2]|0))break a;e=c[(c[(c[f>>2]|0)+4>>2]|0)+(b*12|0)+8>>2]|0;b:do if(Ew(e)|0){BN(i,c[(c[a>>2]|0)+(b<<2)>>2]|0);D1(107733,i)|0;d=nb[c[e>>2]&63](e,0,128)|0;while(1){if(!d)break b;D1(107738,i)|0;BN(i,c[(c[a>>2]|0)+(c[d>>2]<<2)>>2]|0);D1(150517,i)|0;d=nb[c[e>>2]&63](e,d,8)|0}}while(0);b=b+1|0}}while(0);l=j;return}function BN(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0.0,k=0.0,m=0.0;g=l;l=l+80|0;f=g+40|0;e=g;if(!(a[d>>0]|0)){m=+h[d+16>>3];j=+h[d+8>>3];k=+h[d+24>>3];i=CN(c[d+32>>2]|0)|0;e=CN(c[d+36>>2]|0)|0;h[f>>3]=m;h[f+8>>3]=j;h[f+16>>3]=k;h[f+24>>3]=j;c[f+32>>2]=i;c[f+36>>2]=e;g1(b,107744,f)|0}else{k=+h[d+8>>3];j=+h[d+16>>3];m=+h[d+24>>3];f=CN(c[d+32>>2]|0)|0;i=CN(c[d+36>>2]|0)|0;h[e>>3]=k;h[e+8>>3]=j;h[e+16>>3]=k;h[e+24>>3]=m;c[e+32>>2]=f;c[e+36>>2]=i;g1(b,107744,e)|0}l=g;return}function CN(a){a=a|0;switch(a|0){case 0:{a=107795;break}case 1:{a=107790;break}case 2:{a=107783;break}case 3:{a=107776;break}case 4:{a=107768;break}default:a=0}return a|0}function DN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+16|0;r=w+8|0;t=w;u=c[a+32>>2]|0;v=c[a+28>>2]|0;p=a+24|0;m=r+4|0;n=t+4|0;j=0;a=c[p>>2]|0;a:while(1){q=j+1|0;if((q|0)>=(a|0))break;o=v+(j<<2)|0;k=q;while(1){if((k|0)>=(a|0)){j=q;continue a}b:do if(((dO(u,j,k)|0)==0?(dO(u,k,j)|0)==0:0)?(s=v+(k<<2)|0,EN(c[o>>2]|0,c[s>>2]|0)|0):0){f=c[o>>2]|0;a=c[f+48>>2]|0;i=c[s>>2]|0;d=c[i+48>>2]|0;e=(d|0)==0;if(a)if(e)a=1;else a=+h[a+8>>3]!=+h[d+8>>3];else a=e^1;g=a&1;FN(r,f,i,0,g);a=c[r>>2]|0;i=c[m>>2]|0;f=g^1;FN(t,c[o>>2]|0,c[s>>2]|0,1,f);d=c[t>>2]|0;e=c[n>>2]|0;switch(i|0){case -1:{GN(c[s>>2]|0,c[o>>2]|0,g,0,a,b);GN(c[s>>2]|0,c[o>>2]|0,f,1,d,b);if((e|0)!=1)break b;HN(c[o>>2]|0,c[s>>2]|0,f,b);break b}case 0:switch(e|0){case -1:{GN(c[s>>2]|0,c[o>>2]|0,g,0,a,b);GN(c[s>>2]|0,c[o>>2]|0,f,1,d,b);break b}case 0:{GN(c[o>>2]|0,c[s>>2]|0,0,g,a,b);GN(c[o>>2]|0,c[s>>2]|0,1,f,d,b);break b}case 1:{GN(c[o>>2]|0,c[s>>2]|0,0,g,a,b);GN(c[o>>2]|0,c[s>>2]|0,1,f,d,b);break b}default:break b}case 1:{GN(c[o>>2]|0,c[s>>2]|0,0,g,a,b);GN(c[o>>2]|0,c[s>>2]|0,1,f,d,b);if((e|0)!=-1)break b;HN(c[o>>2]|0,c[s>>2]|0,f,b);break b}default:break b}}while(0);k=k+1|0;a=c[p>>2]|0}}l=w;return}function EN(a,b){a=a|0;b=b|0;if(!(+h[a+8>>3]==+h[b+8>>3]))qa(107866,107135,843,107897);if((+h[a+16>>3]==+h[b+16>>3]?+h[a+24>>3]==+h[b+24>>3]:0)?(c[a+32>>2]|0)==(c[b+32>>2]|0):0)a=(c[a+36>>2]|0)==(c[b+36>>2]|0)&1;else a=0;return a|0}function FN(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=0;while(1){b=IN(b,e)|0;if(!b){h=0;break}d=IN(d,f)|0;if(!d){i=6;break}if(!(EN(b,d)|0)){i=7;break}g=g+1|0}if((i|0)==6)qa(135312,107135,871,107815);else if((i|0)==7)h=KN(b,JN(b,d)|0,g+1|0,1-e|0)|0;c[a>>2]=g;c[a+4>>2]=h;return}function GN(b,d,e,f,g,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i+20|0;n=i+24|0;i=uN(c[((a[b>>0]|0)==0?o:n)>>2]|0,b)|0;bO(c[i+32>>2]|0,c[b+40>>2]|0,c[d+40>>2]|0);k=1;while(1){if((k|0)>(g|0))break;l=IN(b,e)|0;m=IN(d,f)|0;do if(!(a[b>>0]|0)){j=uN(c[n>>2]|0,l)|0;if(+h[l+8>>3]==+h[b+16>>3]){p=(c[b+32>>2]|0)==1;i=(dO(c[i+32>>2]|0,c[b+40>>2]|0,c[d+40>>2]|0)|0)!=0;b=c[j+32>>2]|0;if(p)if(i){bO(b,c[m+40>>2]|0,c[l+40>>2]|0);i=j;break}else{bO(b,c[l+40>>2]|0,c[m+40>>2]|0);i=j;break}else if(i){bO(b,c[l+40>>2]|0,c[m+40>>2]|0);i=j;break}else{bO(b,c[m+40>>2]|0,c[l+40>>2]|0);i=j;break}}else{p=(c[b+36>>2]|0)==1;i=(dO(c[i+32>>2]|0,c[b+40>>2]|0,c[d+40>>2]|0)|0)!=0;b=c[j+32>>2]|0;if(p)if(i){bO(b,c[l+40>>2]|0,c[m+40>>2]|0);i=j;break}else{bO(b,c[m+40>>2]|0,c[l+40>>2]|0);i=j;break}else if(i){bO(b,c[m+40>>2]|0,c[l+40>>2]|0);i=j;break}else{bO(b,c[l+40>>2]|0,c[m+40>>2]|0);i=j;break}}}else{j=uN(c[o>>2]|0,l)|0;if(+h[l+8>>3]==+h[b+16>>3]){p=(c[b+32>>2]|0)==2;i=(dO(c[i+32>>2]|0,c[b+40>>2]|0,c[d+40>>2]|0)|0)!=0;b=c[j+32>>2]|0;if(p)if(i){bO(b,c[l+40>>2]|0,c[m+40>>2]|0);i=j;break}else{bO(b,c[m+40>>2]|0,c[l+40>>2]|0);i=j;break}else if(i){bO(b,c[m+40>>2]|0,c[l+40>>2]|0);i=j;break}else{bO(b,c[l+40>>2]|0,c[m+40>>2]|0);i=j;break}}else{p=(c[b+36>>2]|0)==2;i=(dO(c[i+32>>2]|0,c[b+40>>2]|0,c[d+40>>2]|0)|0)!=0;b=c[j+32>>2]|0;if(p)if(i){bO(b,c[m+40>>2]|0,c[l+40>>2]|0);i=j;break}else{bO(b,c[l+40>>2]|0,c[m+40>>2]|0);i=j;break}else if(i){bO(b,c[l+40>>2]|0,c[m+40>>2]|0);i=j;break}else{bO(b,c[m+40>>2]|0,c[l+40>>2]|0);i=j;break}}}while(0);b=l;d=m;k=k+1|0}return}function HN(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;while(1){if(!(EN(b,d)|0))break;g=IN(b,1)|0;d=IN(d,e)|0;b=g}g=c[(uN(c[((a[b>>0]|0)==0?f+20|0:f+24|0)>>2]|0,b)|0)+32>>2]|0;cO(g,c[b+40>>2]|0,c[d+40>>2]|0);return}function IN(a,b){a=a|0;b=b|0;if(!a)qa(107802,107135,798,107806);else return c[((b|0)==0?a+48|0:a+52|0)>>2]|0;return 0}function JN(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;f=l;l=l+16|0;e=f;d=a[b>>0]|0;if(d<<24>>24==(a[c>>0]|0)?!(+h[b+8>>3]!=+h[c+8>>3]):0){if(!(d<<24>>24))b=LN(b,c,3,1)|0;else b=LN(b,c,4,2)|0;l=f;return b|0}Pw(1,107828,e)|0;bb(186216,1);return 0}function KN(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0;j=1;while(1){if((j|0)>(e|0))break;i=IN(b,f)|0;g=+h[i+8>>3]==+h[b+16>>3];do if(!(a[b>>0]|0))if(g){g=(c[b+32>>2]|0)==1;break}else{g=(c[b+36>>2]|0)==3;break}else if(g){g=(c[b+32>>2]|0)==4;break}else{g=(c[b+36>>2]|0)==2;break}while(0);b=i;j=j+1|0;d=g?0-d|0:d}return d|0}function LN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0.0,j=0.0,k=0.0,l=0,m=0,n=0,o=0;j=+h[a+24>>3];k=+h[b+16>>3];do if(!(j<k)?(g=+h[a+16>>3],i=+h[b+24>>3],!(g>i)):0){if(k<j&g<k){b=MN(a,b,d,e)|0;break}if(k<g&g<i){b=0-(MN(b,a,d,e)|0)|0;break}if(!(g==k))if(j==k){d=c[a+36>>2]|0;return ((d|0)==(c[b+32>>2]|0)?0:(d|0)==(e|0)?1:-1)|0}else{d=c[a+32>>2]|0;b=(d|0)==(c[b+36>>2]|0)?0:(d|0)==(e|0)?1:-1;break}if(!(j==i))if(j<i){o=(c[a+36>>2]|0)==(d|0);d=ON(c[b+32>>2]|0,c[a+32>>2]|0,d,e)|0;return (o?d:0-d|0)|0}else{o=(c[b+36>>2]|0)==(e|0);b=ON(c[a+32>>2]|0,c[b+32>>2]|0,d,e)|0;b=o?b:0-b|0;break}o=c[a+32>>2]|0;n=c[b+32>>2]|0;if((o|0)==(n|0)){b=c[b+36>>2]|0;if((c[a+36>>2]|0)==(b|0)){b=0;break}}else b=c[b+36>>2]|0;m=(n|0)==(d|0);if((n|0)==(b|0)){if(m){b=1;break}if((n|0)==(e|0)){b=-1;break}if((o|0)!=(d|0)?(c[a+36>>2]|0)!=(d|0):0){b=1;break}if((o|0)!=(e|0)?(c[a+36>>2]|0)!=(e|0):0){b=-1;break}b=0;break}f=(b|0)==(e|0);if(m&f){b=(c[a+36>>2]|0)==(e|0);if((o|0)==(d|0)){if(!b){b=-1;break}}else if(b){b=1;break}b=0;break}l=(b|0)==(d|0);if((n|0)==(e|0)&l){b=(o|0)==(e|0);if((c[a+36>>2]|0)==(d|0)){if(!b){b=-1;break}}else if(b){b=1;break}b=0;break}if(!n){if(l){b=NN(o,c[a+36>>2]|0,d)|0;break}if(f){b=0-(NN(o,c[a+36>>2]|0,e)|0)|0;break}}f=c[a+36>>2]|0;if(m&(b|0)==0){b=NN(f,o,d)|0;break}else{b=0-(NN(f,o,e)|0)|0;break}}else b=0;while(0);return b|0}function MN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0.0,j=0.0;i=+h[a+24>>3];j=+h[b+24>>3];do if(i<j){a=c[a+36>>2]|0;if((a|0)==(d|0)?(c[b+32>>2]|0)==(e|0):0){a=-1;break}if((a|0)==(e|0)?(c[b+32>>2]|0)==(d|0):0){a=1;break}a=0}else{f=c[b+32>>2]|0;g=(f|0)==(e|0);if(i==j)if(g){a=ON(c[a+36>>2]|0,c[b+36>>2]|0,d,e)|0;break}else{a=0-(ON(c[b+36>>2]|0,c[a+36>>2]|0,d,e)|0)|0;break}if(g?(c[b+36>>2]|0)==(e|0):0){a=-1;break}if((f|0)==(d|0)?(c[b+36>>2]|0)==(d|0):0){a=1;break}a=0}while(0);return a|0}function NN(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)==(c|0)?((b|0)==(c|0))<<31>>31:1)|0}function ON(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((a|0)==(d|0)){b=(a|0)==0;if(b)return 0;else b=b&1}return ((a|0)!=0|(b|0)!=(c|0))<<31>>31|0}function PN(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=c[a+28>>2]|0;h=c[a+24>>2]|0;d=c[a+32>>2]|0;a=0;a:while(1){e=a+1|0;if((e|0)>=(h|0))break;f=g+(a<<2)|0;b=e;while(1){if((b|0)==(h|0)){a=e;continue a}switch(JN(c[f>>2]|0,c[g+(b<<2)>>2]|0)|0){case 1:{bO(d,a,b);break}case -1:{bO(d,b,a);break}default:{}}b=b+1|0}}return}function QN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+24|0;e=c[f>>2]|0;d=e+1|0;c[f>>2]=d;c[b+40>>2]=e;e=a+28|0;a=c[e>>2]|0;if(!a)a=vH(d<<2)|0;else a=xH(a,d<<2)|0;c[e>>2]=a;c[a+((c[f>>2]|0)+-1<<2)>>2]=b;return}function RN(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0;g=l;l=l+16|0;f=g;h[f>>3]=d;e=nb[c[a>>2]&63](a,f,512)|0;if(!e){e=uH(24)|0;h[e+8>>3]=+h[f>>3];c[e+16>>2]=Cw(25624,c[4555]|0)|0;nb[c[a>>2]&63](a,e,1)|0}f=c[e+16>>2]|0;nb[c[f>>2]&63](f,b,1)|0;l=g;return}function SN(a,b,d){a=a|0;b=b|0;d=d|0;aO(c[b+32>>2]|0);D_(c[b+28>>2]|0);D_(b);return}function TN(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;e=+h[b>>3];f=+h[c>>3];if(!(e>f))if(e<f)a=!(+h[b+8>>3]>=+h[c+8>>3])<<31>>31;else a=0;else a=!(+h[b+8>>3]<=+h[c+8>>3])&1;return a|0}function UN(a,b,d){a=a|0;b=b|0;d=d|0;yw(c[b+16>>2]|0)|0;D_(b);return}function VN(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+h[b>>3];e=+h[c>>3];return (f>e?1:(f<e)<<31>>31)|0}function WN(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0,j=0;i=(a[d+36>>0]|0)!=0;j=e+40|0;do if((c[d+24>>2]|0)==(e|0)){f=+h[j>>3];if(i){g=(+h[e+64>>3]+ +h[e+48>>3])*.5;break}else{g=+h[e+48>>3];f=(+h[e+56>>3]+f)*.5;break}}else if(i){g=(+h[e+64>>3]+ +h[e+48>>3])*.5;f=+h[e+56>>3];break}else{g=+h[e+64>>3];f=(+h[e+56>>3]+ +h[j>>3])*.5;break}while(0);h[b>>3]=f;h[b+8>>3]=g;return}function XN(a,b){a=a|0;b=b|0;var d=0;d=c[a+20>>2]|0;if((d|0)!=(c[b+20>>2]|0)?(d|0)!=(c[b+24>>2]|0):0)d=c[a+24>>2]|0;return d|0}function YN(a,b){a=a|0;b=b|0;var c=0.0;c=(+h[b+64>>3]+ +h[b+48>>3])*.5;h[a>>3]=(+h[b+56>>3]+ +h[b+40>>3])*.5;h[a+8>>3]=c;return}function ZN(b,d,e,f,g,i,j){b=b|0;d=d|0;e=+e;f=+f;g=+g;i=i|0;j=j|0;var k=0,l=0;a[b>>0]=d;h[b+8>>3]=e;if(f<g){k=0;l=i;d=j;e=f;f=g}else{k=1;l=j;d=i;e=g}h[b+24>>3]=f;h[b+16>>3]=e;c[b+36>>2]=d;c[b+32>>2]=l;a[b+1>>0]=k;return}function _N(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[b+36>>2]|0;do if((c[e+4>>2]|0)!=(d|0)){if((c[e+12>>2]|0)==(d|0)){e=~~((+h[b+56>>3]+ +h[b+40>>3])*.5);d=~~+h[b+48>>3];break}if((c[e+8>>2]|0)==(d|0)){e=~~+h[b+40>>3];d=~~((+h[b+64>>3]+ +h[b+48>>3])*.5);break}if((c[e>>2]|0)==(d|0)){e=~~+h[b+56>>3];d=~~((+h[b+64>>3]+ +h[b+48>>3])*.5)}else{e=0;d=0}}else{e=~~((+h[b+56>>3]+ +h[b+40>>3])*.5);d=~~+h[b+64>>3]}while(0);c[a>>2]=e;c[a+4>>2]=d;return}function $N(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=uH(8)|0;c[d>>2]=a;e=d+4|0;c[e>>2]=uH(a*12|0)|0;b=0;while(1){if((b|0)>=(a|0))break;g=yR()|0;f=c[e>>2]|0;c[f+(b*12|0)+8>>2]=g;c[f+(b*12|0)>>2]=0;b=b+1|0}return d|0}function aO(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=0;while(1){e=c[d>>2]|0;if((b|0)>=(c[a>>2]|0))break;yw(c[e+(b*12|0)+8>>2]|0)|0;b=b+1|0}D_(e);D_(a);return}function bO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=c[(c[a+4>>2]|0)+(b*12|0)+8>>2]|0;nb[c[d>>2]&63](d,f,1)|0;l=e;return}function cO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e;c[f>>2]=d;a=a+4|0;g=c[(c[a>>2]|0)+(b*12|0)+8>>2]|0;nb[c[g>>2]&63](g,f,2)|0;c[f>>2]=b;d=c[(c[a>>2]|0)+(d*12|0)+8>>2]|0;nb[c[d>>2]&63](d,f,2)|0;l=e;return}function dO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=c[(c[a+4>>2]|0)+(b*12|0)+8>>2]|0;d=(nb[c[d>>2]&63](d,f,512)|0)!=0&1;l=e;return d|0}function eO(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[a>>2]|0;switch(b|0){case 0:break;case 1:{c[(c[a+4>>2]|0)+4>>2]=0;break}default:{e=fO(b)|0;f=a+4|0;d=0;b=0;while(1){if((d|0)>=(c[a>>2]|0)){b=0;break}if(!(c[(c[f>>2]|0)+(d*12|0)>>2]|0))b=gO(a,d,b,e)|0;d=d+1|0}while(1){d=hO(e)|0;if((d|0)<=-1)break;c[(c[f>>2]|0)+(d*12|0)+4>>2]=b;b=b+1|0}iO(e)}}return}function fO(a){a=a|0;var b=0;b=uH(8)|0;c[b+4>>2]=uH(a<<2)|0;c[b>>2]=-1;return b|0}function gO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=a+4|0;g=c[i>>2]|0;j=g+(b*12|0)|0;c[j>>2]=1;g=c[g+(b*12|0)+8>>2]|0;h=g+4|0;d=d+1|0;g=Aw(g)|0;while(1){if(!g)break;f=c[(c[h>>2]|0)+8>>2]|0;if((f|0)<0)f=c[g+8>>2]|0;else f=g+(0-f)|0;f=c[f>>2]|0;if(!(c[(c[i>>2]|0)+(f*12|0)>>2]|0))d=gO(a,f,d,e)|0;g=c[g>>2]|0}c[j>>2]=2;jO(e,b);return d+1|0}function hO(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;if((b|0)==-1)a=-1;else{d=c[(c[a+4>>2]|0)+(b<<2)>>2]|0;c[a>>2]=b+-1;a=d}return a|0}function iO(a){a=a|0;D_(c[a+4>>2]|0);D_(a);return}function jO(a,b){a=a|0;b=b|0;var d=0;d=(c[a>>2]|0)+1|0;c[a>>2]=d;c[(c[a+4>>2]|0)+(d<<2)>>2]=b;return}function kO(a){a=a|0;var d=0,e=0,f=0;e=c[a>>2]|0;c[a+8>>2]=e;c[a+12>>2]=c[a+4>>2];d=a+16|0;a=0;while(1){if((a|0)>=(e|0))break;f=c[d>>2]|0;b[f+(a*40|0)+18>>1]=b[f+(a*40|0)+16>>1]|0;a=a+1|0}return}function lO(a){a=a|0;var d=0,e=0,f=0;d=c[a+8>>2]|0;c[a>>2]=d;c[a+4>>2]=c[a+12>>2];e=a+16|0;a=0;while(1){if((a|0)>=(d|0))break;f=c[e>>2]|0;b[f+(a*40|0)+16>>1]=b[f+(a*40|0)+18>>1]|0;a=a+1|0}d=d+2|0;while(1){if((a|0)>=(d|0))break;b[(c[e>>2]|0)+(a*40|0)+16>>1]=0;a=a+1|0}return}function mO(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=uH(((c[a>>2]|0)*6|0)+(b<<1)<<2)|0;c[a+20>>2]=uH((((c[a>>2]|0)*3|0)+b|0)*24|0)|0;e=c[a>>2]|0;f=a+16|0;a=0;while(1){if((a|0)>=(e|0))break;c[(c[f>>2]|0)+(a*40|0)+28>>2]=d;d=d+24|0;a=a+1|0}e=e+2|0;while(1){if((a|0)>=(e|0))break;c[(c[f>>2]|0)+(a*40|0)+28>>2]=d;d=d+(b<<2)|0;a=a+1|0}return}function nO(a){a=a|0;var b=0;b=uH(24)|0;c[b>>2]=0;c[b+16>>2]=uH(a*40|0)|0;return b|0}function oO(a){a=a|0;var b=0,d=0;d=c[a+16>>2]|0;b=c[a>>2]|0;c[d+(b*40|0)+32>>2]=b;c[a>>2]=b+1;return d+(b*40|0)|0}function pO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=a+4|0;f=c[g>>2]|0;c[g>>2]=f+1;g=c[a+20>>2]|0;a=g+(f*24|0)|0;c[g+(f*24|0)+12>>2]=c[b+32>>2];c[g+(f*24|0)+16>>2]=c[d+32>>2];h[a>>3]=e;c[g+(f*24|0)+8>>2]=0;qO(b,f);qO(d,f);return a|0}function qO(a,d){a=a|0;d=d|0;var e=0,f=0;e=a+16|0;f=b[e>>1]|0;c[(c[a+28>>2]|0)+(f<<16>>16<<2)>>2]=d;b[e>>1]=f+1<<16>>16;return}function rO(a){a=a|0;var b=0;b=a+16|0;D_(c[(c[b>>2]|0)+28>>2]|0);D_(c[b>>2]|0);D_(c[a+20>>2]|0);D_(a);return}function sO(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;g=c[a>>2]|0;i=a+16|0;f=0;while(1){if((f|0)>=(g|0))break;c[(c[i>>2]|0)+(f*40|0)>>2]=-2147483648;f=f+1|0}GR();a:do if(!(JR(d)|0)){c[d+8>>2]=0;c[d>>2]=0;d=a+20|0;b:while(1){g=LR()|0;if(!g){f=0;break a}c[g>>2]=0-(c[g>>2]|0);if((g|0)==(e|0)){f=0;break a}i=g+16|0;j=g+28|0;f=0;while(1){if((f|0)>=(b[i>>1]|0))continue b;k=(c[d>>2]|0)+((c[(c[j>>2]|0)+(f<<2)>>2]|0)*24|0)|0;l=tO(a,k,g)|0;m=c[l>>2]|0;do if((m|0)<0){n=~~-(+h[k>>3]+ +(c[g>>2]|0));if((m|0)==-2147483648){c[l>>2]=n;if(JR(l)|0){f=1;break a}c[l+8>>2]=g;c[l+12>>2]=k;break}else{if((m|0)>=(n|0))break;MR(l,n);c[l+8>>2]=g;c[l+12>>2]=k;break}}while(0);f=f+1|0}}}else f=1;while(0);return f|0}function tO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[b+12>>2]|0;if((e|0)==(c[d+32>>2]|0))e=c[b+16>>2]|0;return (c[a+16>>2]|0)+(e*40|0)|0}function uO(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=c[a>>2]|0;wC(g,3,b)|0;b=c[g+92>>2]|0;do if(b){d=c[b+16>>2]|0;h=c[d+12>>2]|0;c[a+76>>2]=h;e=c[d+16>>2]|0;c[a+84>>2]=e;f=a+80|0;c[f>>2]=c[d>>2];c[a+88>>2]=c[b+4>>2];d=a+152|0;e=c[d>>2]|c[e>>2];c[d>>2]=e;b=c[g+80>>2]|0;if(!b){c[a+60>>2]=0;b=999;break}else{g=c[b+16>>2]|0;c[a+60>>2]=c[g+12>>2];i=c[g+16>>2]|0;c[a+68>>2]=i;c[a+72>>2]=c[b+4>>2];c[d>>2]=e|c[i>>2];c[a+64>>2]=c[((h|0)==0?f:g)>>2];b=300;break}}else b=999;while(0);return b|0}function vO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(!(XB(a)|0))if((b|0)!=0?(d=c[b>>2]|0,(d|0)!=0):0){tb[d&127](a);a=0}else a=0;else a=1;return a|0}function wO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+4>>2]|0,d|0):0)tb[d&127](a);c[(c[a>>2]|0)+24>>2]=0;dC(a);return}function xO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,g=0.0,i=0.0;e=+h[b+504>>3];f=+h[b+512>>3];i=+h[b+352>>3];if(!(c[b+360>>2]|0)){g=+h[d>>3]+e;d=d+8|0;e=f}else g=-(f+ +h[d+8>>3]);f=+h[b+528>>3]*i*(+h[d>>3]+e);h[a>>3]=+h[b+520>>3]*i*g;h[a+8>>3]=f;return}function yO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0.0,j=0.0,k=0.0;f=+h[a+504>>3];g=+h[a+512>>3];i=+h[a+352>>3];j=+h[a+520>>3]*i;i=+h[a+528>>3]*i;a:do if(!(c[a+360>>2]|0)){a=0;while(1){if((a|0)>=(e|0))break a;h[d+(a<<4)>>3]=(+h[b+(a<<4)>>3]+f)*j;h[d+(a<<4)+8>>3]=(+h[b+(a<<4)+8>>3]+g)*i;a=a+1|0}}else{a=0;while(1){if((a|0)>=(e|0))break a;k=-(j*(+h[b+(a<<4)+8>>3]+g));h[d+(a<<4)+8>>3]=(+h[b+(a<<4)>>3]+f)*i;h[d+(a<<4)>>3]=k;a=a+1|0}}while(0);return d|0}function zO(a,b){a=a|0;b=b|0;var d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+8>>2]|0,d|0):0)tb[d&127](a);return}function AO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+12>>2]|0,d|0):0)tb[d&127](a);cC(a);return}function BO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+24>>2]|0,d|0):0)tb[d&127](a);return}function CO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+28>>2]|0,d|0):0)tb[d&127](a);return}function DO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+16>>2]|0,d|0):0){b=c[a+160>>2]|0;xb[d&31](a,c[(c[(c[a>>2]|0)+308>>2]|0)+(b<<2)>>2]|0,b,c[a+156>>2]|0)}return}function EO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+20>>2]|0,d|0):0)tb[d&127](a);return}function FO(a,b){a=a|0;b=b|0;var d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+32>>2]|0,d|0):0)tb[d&127](a);return}function GO(a,b){a=a|0;b=b|0;var d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+36>>2]|0,d|0):0)tb[d&127](a);return}function HO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+40>>2]|0,d|0):0)tb[d&127](a);return}function IO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+44>>2]|0,d|0):0)tb[d&127](a);return}function JO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+48>>2]|0,d|0):0)tb[d&127](a);return}function KO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+52>>2]|0,d|0):0)tb[d&127](a);return}function LO(a,b){a=a|0;b=b|0;var d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+56>>2]|0,d|0):0)tb[d&127](a);return}function MO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+60>>2]|0,d|0):0)tb[d&127](a);return}function NO(a,b){a=a|0;b=b|0;var d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+64>>2]|0,d|0):0)tb[d&127](a);return}function OO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+68>>2]|0,d|0):0)tb[d&127](a);return}function PO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=c[a+60>>2]|0;if(g|0?(h=c[g+72>>2]|0,h|0):0)yb[h&15](a,b,d,e,f);return}function QO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+76>>2]|0,d|0):0)tb[d&127](a);return}function RO(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a+60>>2]|0;if(d|0?(e=c[d+80>>2]|0,e|0):0)ub[e&63](a,b);return}function SO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+84>>2]|0,d|0):0)tb[d&127](a);return}function TO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+48|0;f=k+32|0;h=k;i=k+16|0;j=c[b+60>>2]|0;m=c[e>>2]|0;do if(m|0?a[m>>0]|0:0){m=c[b+16>>2]|0;if(m|0?(c[m+144>>2]|0)==0:0)break;if(!(c[b+152>>2]&8192)){c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];xO(i,b,f);c[h>>2]=c[i>>2];c[h+4>>2]=c[i+4>>2];c[h+8>>2]=c[i+8>>2];c[h+12>>2]=c[i+12>>2]}else{c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[h+8>>2]=c[d+8>>2];c[h+12>>2]=c[d+12>>2]}if(j|0?(g=c[j+88>>2]|0,g|0):0){c[f>>2]=c[h>>2];c[f+4>>2]=c[h+4>>2];c[f+8>>2]=c[h+8>>2];c[f+12>>2]=c[h+12>>2];vb[g&127](b,f,e)}}while(0);l=k;return}function UO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;f=c[b+60>>2]|0;g=(c[b+16>>2]|0)+16|0;i=A$(d,58)|0;h=(i|0)!=0;if(h)a[i>>0]=0;if(f|0?(VO(c[b+68>>2]|0,d,g),e=c[f+92>>2]|0,e|0):0)ub[e&63](b,g);if(h)a[i>>0]=58;return}function VO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;g=k+16|0;j=k+8|0;i=k;c[d>>2]=b;c[d+32>>2]=5;e=iQ(b)|0;f=c[a+16>>2]|0;if(!((f|0)!=0?(e2(e,f,c[a+20>>2]|0,4,100)|0)!=0:0))h=3;a:do if((h|0)==3){switch(jQ(b,d,c[a+24>>2]|0)|0){case 0:break a;case 1:break;default:{Pw(1,108020,g)|0;break a}}a=vH((W_(b)|0)+16|0)|0;c[i>>2]=b;Y0(a,107985,i)|0;if(AG(a)|0){c[j>>2]=b;Pw(0,107994,j)|0}D_(a)}while(0);l=k;return}function WO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;f=c[b+60>>2]|0;g=(c[b+16>>2]|0)+56|0;i=A$(d,58)|0;h=(i|0)!=0;if(h)a[i>>0]=0;if(f|0?(VO(c[b+68>>2]|0,d,g),e=c[f+92>>2]|0,e|0):0)ub[e&63](b,g);if(h)a[i>>0]=58;return}function XO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,j=0;h=c[a+60>>2]|0;i=a+16|0;j=(c[i>>2]|0)+96|0;if(h|0?(VO(c[a+68>>2]|0,b,j),f=c[h+92>>2]|0,f|0):0)ub[f&63](a,j);j=c[i>>2]|0;c[j+136>>2]=d;g[j+140>>2]=e;return}function YO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;k=m;j=c[b+60>>2]|0;b=c[b+16>>2]|0;c[b+160>>2]=d;a:do if((d|0)!=0&(j|0)!=0){j=b+144|0;i=b+152|0;g=b+148|0;b=d;b:while(1){f=b+4|0;b=c[b>>2]|0;if(!b)break a;c:do switch(a[b>>0]|0){case 115:{if(!(b$(b,108041)|0)){c[j>>2]=3;b=f;continue b}if(!(b$(b,108062)|0)){e=115;while(1){d=b+1|0;if(!(e<<24>>24))break;b=d;e=a[d>>0]|0}h[i>>3]=+b2(d);b=f;continue b}break}case 100:{if(!(b$(b,134245)|0)){c[j>>2]=1;b=f;continue b}if(!(b$(b,134238)|0)){c[j>>2]=2;b=f;continue b}break}case 105:{if(b$(b,131253)|0?b$(b,108047)|0:0)break c;c[j>>2]=0;b=f;continue b}case 98:{if(!(b$(b,108057)|0)){h[i>>3]=2.0;b=f;continue b}break}case 102:{if(!(b$(b,108075)|0)){c[g>>2]=1;b=f;continue b}break}case 117:{if(!(b$(b,108082)|0)){c[g>>2]=0;b=f;continue b}break}case 116:{if(!(b$(b,108091)|0)){b=f;continue b}break}default:{}}while(0);c[k>>2]=b;Pw(0,108099,k)|0;b=f}}while(0);l=m;return}function ZO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0;j=l;l=l+32|0;g=j;d=c[a+60>>2]|0;if((d|0?(i=d+96|0,f=c[i>>2]|0,f|0):0)?c[(c[a+16>>2]|0)+144>>2]|0:0){d=b+16|0;h[g>>3]=(+h[d>>3]+ +h[b>>3])*.5;h[g+8>>3]=(+h[b+24>>3]+ +h[b+8>>3])*.5;b=g+16|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];if(!(c[a+152>>2]&8192)){yO(a,g,g,2)|0;f=c[i>>2]|0}vb[f&127](a,g,e)}l=j;return}function _O(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;m=o;f=c[a+60>>2]|0;if((f|0?(n=f+100|0,c[n>>2]|0):0)?(k=a+16|0,j=c[k>>2]|0,c[j+144>>2]|0):0){if(!(e&4)){f=e;g=0}else{f=e&-5;e=j+16|0;g=m;h=e;i=g+40|0;do{c[g>>2]=c[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(i|0));g=e;h=j+56|0;i=g+40|0;do{c[g>>2]=c[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(i|0));g=1}if(!(c[a+152>>2]&8192)){e=d+10|0;if((c[46593]|0)<(d|0)){c[46593]=e;e=xH(c[46594]|0,e<<4)|0;c[46594]=e}else e=c[46594]|0;yO(a,b,e,d)|0;xb[c[n>>2]&31](a,e,d,f)}else xb[c[n>>2]&31](a,b,d,f);if(g|0){g=(c[k>>2]|0)+16|0;h=m;i=g+40|0;do{c[g>>2]=c[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(i|0))}}l=o;return}function $O(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+64|0;f=e;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];g=f+32|0;b=b+16|0;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];h[f+16>>3]=+h[f>>3];h[f+24>>3]=+h[f+40>>3];h[f+48>>3]=+h[g>>3];h[f+56>>3]=+h[f+8>>3];_O(a,f,4,d);l=e;return}function aP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=c[a+60>>2]|0;do if((i|0?(j=i+104|0,h=c[j>>2]|0,h|0):0)?c[(c[a+16>>2]|0)+144>>2]|0:0){if(c[a+152>>2]&8192|0){zb[h&15](a,b,d,e,f,g&255);break}h=d+10|0;if((c[46593]|0)<(d|0)){c[46593]=h;h=xH(c[46594]|0,h<<4)|0;c[46594]=h}else h=c[46594]|0;yO(a,b,h,d)|0;zb[c[j>>2]&15](a,h,d,e,f,g&255)}while(0);return}function bP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[a+60>>2]|0;do if((e|0?(g=e+108|0,f=c[g>>2]|0,f|0):0)?c[(c[a+16>>2]|0)+144>>2]|0:0){if(c[a+152>>2]&8192|0){vb[f&127](a,b,d);break}e=d+10|0;if((c[46593]|0)<(d|0)){c[46593]=e;e=xH(c[46594]|0,e<<4)|0;c[46594]=e}else e=c[46594]|0;yO(a,b,e,d)|0;vb[c[g>>2]&127](a,e,d)}while(0);return}function cP(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b+60>>2]|0;if((d|0?!((e|0)==0|(a[d>>0]|0)==0):0)?(f=c[e+112>>2]|0,f|0):0)ub[f&63](b,d);return}function dP(b,d,e,f,g,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0.0,k=0.0,m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;F=l;l=l+112|0;B=F+64|0;E=F;n=F+96|0;x=F+48|0;y=F+32|0;C=c[b+60>>2]|0;if(!b)qa(108200,108152,691,108163);if(!d)qa(108182,108152,692,108163);if(!(a[d>>0]|0))qa(108187,108152,693,108163);D=yC(d)|0;if(!D){if((C|0)!=0&(VJ(d)|0)!=0?(m=c[C+116>>2]|0,m|0):0)yb[m&15](b,d,e,f,g&255)}else{s=b+432|0;c[B>>2]=c[s>>2];c[B+4>>2]=c[s+4>>2];c[B+8>>2]=c[s+8>>2];c[B+12>>2]=c[s+12>>2];BC(n,D,B);s=c[n>>2]|0;m=c[n+4>>2]|0;if(!((s|0)<1&(m|0)<1)){n=E+16|0;c[n>>2]=c[e>>2];c[n+4>>2]=c[e+4>>2];c[n+8>>2]=c[e+8>>2];c[n+12>>2]=c[e+12>>2];c[E>>2]=c[e>>2];c[E+4>>2]=c[e+4>>2];c[E+8>>2]=c[e+8>>2];c[E+12>>2]=c[e+12>>2];z=E+8|0;A=E+24|0;d=1;while(1){if((d|0)>=(f|0))break;G=e+(d<<4)|0;v=+h[G>>3];h[E>>3]=+h[(+h[E>>3]<v?E:G)>>3];w=+h[e+(d<<4)+8>>3];h[z>>3]=+h[(+h[z>>3]<w?E:G)+8>>3];h[n>>3]=+h[(+h[n>>3]>v?n:G)>>3];h[A>>3]=+h[(+h[A>>3]>w?n:G)+8>>3];d=d+1|0}k=+h[n>>3];j=+h[E>>3];t=k-j;u=+h[A>>3];v=+h[z>>3];w=u-v;o=+(m|0);p=+(s|0);q=t/p;r=w/o;a:do switch(eP(i)|0){case 1:if(q<r){p=q*p;o=q*o;break a}else{p=r*p;o=r*o;break a}case 2:{p=q*p;break}case 3:{o=r*o;break}case 4:{p=q*p;o=r*o;break}default:{}}while(0);if(p<t){t=(t-p)*.5;j=j+t;h[E>>3]=j;k=k-t;h[n>>3]=k}if(o<w){w=(w-o)*.5;h[z>>3]=v+w;h[A>>3]=u-w}if(!(c[b+152>>2]&8192)){c[B>>2]=c[E>>2];c[B+4>>2]=c[E+4>>2];c[B+8>>2]=c[E+8>>2];c[B+12>>2]=c[E+12>>2];xO(x,b,B);c[E>>2]=c[x>>2];c[E+4>>2]=c[x+4>>2];c[E+8>>2]=c[x+8>>2];c[E+12>>2]=c[x+12>>2];c[B>>2]=c[n>>2];c[B+4>>2]=c[n+4>>2];c[B+8>>2]=c[n+8>>2];c[B+12>>2]=c[n+12>>2];xO(y,b,B);c[n>>2]=c[y>>2];c[n+4>>2]=c[y+4>>2];c[n+8>>2]=c[y+8>>2];c[n+12>>2]=c[y+12>>2];k=+h[n>>3];j=+h[E>>3]}if(j>k){h[E>>3]=k;h[n>>3]=j}j=+h[z>>3];k=+h[A>>3];if(j>k){h[z>>3]=k;h[A>>3]=j}if(C|0){G=c[b+72>>2]|0;c[B>>2]=c[E>>2];c[B+4>>2]=c[E+4>>2];c[B+8>>2]=c[E+8>>2];c[B+12>>2]=c[E+12>>2];c[B+16>>2]=c[E+16>>2];c[B+20>>2]=c[E+20>>2];c[B+24>>2]=c[E+24>>2];c[B+28>>2]=c[E+28>>2];gP(b,D,B,g,G)}}}l=F;return}function eP(b){b=b|0;if(a[b>>0]|0)if(O$(b,138034)|0)if(O$(b,137966)|0)if(!(O$(b,108195)|0))b=4;else b=(QL(b)|0)<<24>>24!=0&1;else b=3;else b=2;else b=0;return b|0}function fP(a,b){a=a|0;b=+b;if(c[a+60>>2]|0)h[(c[a+16>>2]|0)+152>>3]=b;return} + function SX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=f-e|0;a:do if((h|0)>0){l=b+72|0;switch(a[l+(d[e>>0]|0)>>0]|0){case 29:{c[g>>2]=e;f=0;break a}case 24:case 22:{h=1;break}case 5:{if((h|0)<2){f=-2;break a}if(!(lb[c[b+340>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else h=2;break}case 6:{if((h|0)<3){f=-2;break a}if(!(lb[c[b+344>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else h=3;break}case 7:{if((h|0)<4){f=-2;break a}if(!(lb[c[b+348>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else h=4;break}default:{c[g>>2]=e;f=0;break a}}i=b+328|0;j=b+332|0;k=b+336|0;e=e+h|0;b:while(1){h=f-e|0;if((h|0)<=0){f=-20;break a}switch(a[l+(d[e>>0]|0)>>0]|0){case 29:{h=17;break b}case 36:case 30:case 11:case 32:case 21:case 10:case 9:{h=28;break b}case 27:case 26:case 25:case 24:case 22:{h=1;break}case 5:{if((h|0)<2){f=-2;break a}if(!(lb[c[i>>2]&127](b,e)|0)){h=20;break b}else h=2;break}case 6:{if((h|0)<3){f=-2;break a}if(!(lb[c[j>>2]&127](b,e)|0)){h=23;break b}else h=3;break}case 7:{if((h|0)<4){f=-2;break a}if(!(lb[c[k>>2]&127](b,e)|0)){h=26;break b}else h=4;break}default:{h=29;break b}}e=e+h|0}if((h|0)==17){c[g>>2]=e;f=0;break}else if((h|0)==20){c[g>>2]=e;f=0;break}else if((h|0)==23){c[g>>2]=e;f=0;break}else if((h|0)==26){c[g>>2]=e;f=0;break}else if((h|0)==28){c[g>>2]=e;f=20;break}else if((h|0)==29){c[g>>2]=e;f=0;break}}else f=-1;while(0);return f|0}function TX(){return 58116}function UX(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=l;l=l+16|0;g=i;c[g>>2]=d;h=c[b>>2]|0;a=f-(c[e>>2]|0)|0;if((d-h|0)>(a|0)){a=h+a|0;c[g>>2]=a;f=1}else{f=0;a=d}fX(h,g);h=c[g>>2]|0;d=c[b>>2]|0;g=h-d|0;F3(c[e>>2]|0,d|0,g|0)|0;c[b>>2]=(c[b>>2]|0)+g;c[e>>2]=(c[e>>2]|0)+g;l=i;return (f?2:h>>>0<a>>>0&1)|0}function VX(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=d+72|0;k=f;l=h;m=c[e>>2]|0;n=c[g>>2]|0;a:while(1){d=m>>>0<f>>>0;if(!(n>>>0<h>>>0&d)){o=12;break}d=a[m>>0]|0;i=d&255;switch(a[j+i>>0]|0){case 5:{if((k-m|0)<2){d=1;break a}b[n>>1]=(d&31)<<6|a[m+1>>0]&63;m=m+2|0;n=n+2|0;continue a}case 6:{if((k-m|0)<3){d=1;break a}b[n>>1]=(a[m+1>>0]&63)<<6|i<<12|a[m+2>>0]&63;m=m+3|0;n=n+2|0;continue a}case 7:{if((l-n|0)<4){d=2;break a}if((k-m|0)<4){d=1;break a}i=((a[m+1>>0]&63)<<12|(d&7)<<18|(a[m+2>>0]&63)<<6|a[m+3>>0]&63)+-65536|0;b[n>>1]=i>>>10|55296;b[n+2>>1]=i&1023|56320;m=m+4|0;n=n+4|0;continue a}default:{b[n>>1]=d<<24>>24;m=m+1|0;n=n+2|0;continue a}}}if((o|0)==12)d=d?2:0;c[e>>2]=m;c[g>>2]=n;return d|0}function WX(a,b){a=a|0;b=b|0;a=d[b>>0]|0;b=d[b+1>>0]|0;return 1<<(b&31)&c[56836+(((d[140962+(a>>>2&7)>>0]|0)<<3|a<<1&6|b>>>5&1)<<2)>>2]|0}function XX(b,e){b=b|0;e=e|0;var f=0;f=d[e+1>>0]|0;b=d[e+2>>0]|0;return 1<<(b&31)&c[56836+(((d[140962+(f>>>2&15|a[e>>0]<<4&255)>>0]|0)<<3|f<<1&6|b>>>5&1)<<2)>>2]|0}function YX(a,b){a=a|0;b=b|0;return 0}function ZX(a,b){a=a|0;b=b|0;a=d[b>>0]|0;b=d[b+1>>0]|0;return 1<<(b&31)&c[56836+(((d[140706+(a>>>2&7)>>0]|0)<<3|a<<1&6|b>>>5&1)<<2)>>2]|0}function _X(b,e){b=b|0;e=e|0;var f=0;f=d[e+1>>0]|0;b=d[e+2>>0]|0;return 1<<(b&31)&c[56836+(((d[140706+(f>>>2&15|a[e>>0]<<4&255)>>0]|0)<<3|f<<1&6|b>>>5&1)<<2)>>2]|0}function $X(a,b){a=a|0;b=b|0;if((d[b>>0]|0)<194)return 1;else{b=d[b+1>>0]|0;return b>>>7^1|(b&192|0)==192|0}return 0}function aY(b,c){b=b|0;c=c|0;var d=0;b=a[c+2>>0]|0;do if(b<<24>>24>-1)b=1;else{d=a[c>>0]|0;if(d<<24>>24==-17?(a[c+1>>0]|0)==-65:0)if((b&255)>189){b=1;break}else{b=191;c=-65}else{if((b&255)>191){b=1;break}c=a[c+1>>0]|0;b=c&255;if(d<<24>>24==-32){b=(c&255)<160|(b&192|0)==192;break}}b=(b&128|0)==0?1:d<<24>>24==-19?(c&255)>159:(b&192|0)==192}while(0);return b&1|0}function bY(b,c){b=b|0;c=c|0;var e=0;e=d[c+3>>0]|0;do if(!((e&128|0)==0|(e&192|0)==192)?(e=d[c+2>>0]|0,!((e&128|0)==0|(e&192|0)==192)):0){e=a[c>>0]|0;b=a[c+1>>0]|0;c=b&255;if(e<<24>>24==-16){b=(b&255)<144|(c&192|0)==192;break}else{b=(c&128|0)==0?1:e<<24>>24==-12?(b&255)>143:(c&192|0)==192;break}}else b=1;while(0);return b&1|0}function cY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;a:do if(e>>>0<f>>>0){i=e;m=f-i|0;k=(m&1|0)==0;m=m&-2;l=(m|0)==0;m=k|l?f:e+m|0;if(k|l^1){f=a[e+1>>0]|0;if(!(f<<24>>24)){h=a[e>>0]|0;j=h;h=d[b+72+(h&255)>>0]|0}else{h=a[e>>0]|0;j=h;h=sY(f,h)|0}do switch(h|0){case 12:{f=EY(12,b,e+2|0,m,g)|0;break a}case 13:{f=EY(13,b,e+2|0,m,g)|0;break a}case 2:{h=e+2|0;if((m-h|0)<=1){f=-1;break a}f=a[e+3>>0]|0;if(!(f<<24>>24))f=d[b+72+(d[h>>0]|0)>>0]|0;else f=sY(f,a[h>>0]|0)|0;switch(f|0){case 16:{f=FY(b,e+4|0,m,g)|0;break a}case 15:{f=AY(b,e+4|0,m,g)|0;break a}case 7:case 6:case 5:case 29:case 24:case 22:{c[g>>2]=e;f=29;break a}default:{c[g>>2]=h;f=0;break a}}}case 9:{if((e+2|0)==(m|0)){c[g>>2]=m;f=-15;break a}else i=7;break}case 10:case 21:{i=7;break}case 30:{f=uY(b,e+2|0,m,g)|0;break a}case 35:{c[g>>2]=e+2;f=38;break a}case 20:{c[g>>2]=e+2;f=25;break a}case 4:{h=e+2|0;f=m-h|0;if((f|0)<=1){f=-26;break a}if((a[e+3>>0]|0)==0?(a[h>>0]|0)==93:0){if((f|0)<=3){f=-1;break a}if((a[e+5>>0]|0)==0?(a[e+4>>0]|0)==62:0){c[g>>2]=e+6;f=34;break a}}c[g>>2]=h;f=26;break a}case 31:{c[g>>2]=e+2;f=23;break a}case 32:{h=e+2|0;if((m-h|0)<=1){f=-24;break a}f=a[e+3>>0]|0;if(!(f<<24>>24))f=d[b+72+(d[h>>0]|0)>>0]|0;else f=sY(f,a[h>>0]|0)|0;switch(f|0){case 33:{c[g>>2]=e+4;f=36;break a}case 15:{c[g>>2]=e+4;f=35;break a}case 34:{c[g>>2]=e+4;f=37;break a}case 32:case 36:case 35:case 11:case 21:case 10:case 9:{c[g>>2]=h;f=24;break a}default:{c[g>>2]=h;f=0;break a}}}case 36:{c[g>>2]=e+2;f=21;break a}case 11:{c[g>>2]=e+2;f=17;break a}case 19:{f=GY(b,e+2|0,m,g)|0;break a}case 5:{if((m-i|0)<2){f=-2;break a}c[g>>2]=e;f=0;break a}case 6:{if((m-i|0)<3){f=-2;break a}c[g>>2]=e;f=0;break a}case 7:{if((m-i|0)<4){f=-2;break a}c[g>>2]=e;f=0;break a}case 24:case 22:{f=18;i=61;break}case 23:case 27:case 26:case 25:{f=19;i=61;break}case 29:{i=f&255;h=j&255;f=h>>>5;h=1<<(h&31);if(!(h&c[56836+((f|d[140706+i>>0]<<3)<<2)>>2]))if(!(c[56836+((d[140962+i>>0]<<3|f)<<2)>>2]&h))i=64;else{f=19;i=61}else{f=18;i=61}break}default:i=64}while(0);if((i|0)==7){k=m;b=b+72|0;j=e;b:while(1){i=j;j=j+2|0;if((k-j|0)<=1){i=28;break}f=a[i+3>>0]|0;h=a[j>>0]|0;if(!(f<<24>>24))f=d[b+(h&255)>>0]|0;else f=sY(f,h)|0;switch(f|0){case 10:case 21:continue b;case 9:break;default:{i=27;break b}}if((i+4|0)==(m|0)){i=27;break}}if((i|0)==27){c[g>>2]=j;f=15;break}else if((i|0)==28){c[g>>2]=j;f=15;break}}else if((i|0)==61){l=b+72|0;h=e+2|0;c:while(1){e=f&255;d:while(1){k=m-h|0;if((k|0)<=1){i=104;break c}i=a[h+1>>0]|0;j=a[h>>0]|0;if(!(i<<24>>24))b=d[l+(j&255)>>0]|0;else b=sY(i,j)|0;switch(b|0){case 5:{i=73;break c}case 6:{i=74;break c}case 7:{i=76;break c}case 10:case 9:case 21:case 30:case 20:case 36:case 35:case 32:case 11:{i=78;break c}case 34:{i=94;break c}case 33:{i=97;break c}case 15:{i=100;break c}case 29:{k=j&255;if(!(1<<(k&31)&c[56836+((k>>>5|d[140962+(i&255)>>0]<<3)<<2)>>2])){i=71;break c}break}case 27:case 26:case 25:case 24:case 22:break;case 23:{k=h+2|0;switch(e&63){case 41:{f=19;h=k;continue c}case 18:break d;default:{h=k;continue d}}}default:{i=103;break c}}h=h+2|0}b=m-k|0;if((b|0)<=1){f=-1;break a}f=a[h+3>>0]|0;i=a[k>>0]|0;if(!(f<<24>>24))j=d[l+(i&255)>>0]|0;else j=sY(f,i)|0;switch(j|0){case 5:{i=89;break c}case 6:{i=90;break c}case 7:{i=92;break c}case 29:{e=i&255;if(!(1<<(e&31)&c[56836+((e>>>5|d[140962+(f&255)>>0]<<3)<<2)>>2])){i=87;break c}break}case 27:case 26:case 25:case 24:case 22:break;default:{f=19;h=k;continue c}}f=41;h=h+4|0}switch(i|0){case 71:{c[g>>2]=h;f=0;break a}case 73:{c[g>>2]=h;f=0;break a}case 74:{if((k|0)<3){f=-2;break a}c[g>>2]=h;f=0;break a}case 76:{if((k|0)<4){f=-2;break a}c[g>>2]=h;f=0;break a}case 78:{c[g>>2]=h;break a}case 87:{c[g>>2]=k;f=0;break a}case 89:{c[g>>2]=k;f=0;break a}case 90:{if((b|0)<3){f=-2;break a}c[g>>2]=k;f=0;break a}case 92:{if((b|0)<4){f=-2;break a}c[g>>2]=k;f=0;break a}case 94:if((f|0)==19){c[g>>2]=h;f=0;break a}else{c[g>>2]=h+2;f=32;break a}case 97:if((f|0)==19){c[g>>2]=h;f=0;break a}else{c[g>>2]=h+2;f=31;break a}case 100:if((f|0)==19){c[g>>2]=h;f=0;break a}else{c[g>>2]=h+2;f=30;break a}case 103:{c[g>>2]=h;f=0;break a}case 104:{f=0-f|0;break a}}}else if((i|0)==64){c[g>>2]=e;f=0;break}}else f=-1}else f=-4;while(0);return f|0}function dY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;a:do if(e>>>0<f>>>0){h=e;i=f-h|0;k=(i&1|0)==0;i=i&-2;j=(i|0)==0;i=k|j?f:e+i|0;if(k|j^1){f=a[e+1>>0]|0;if(!(f<<24>>24))f=d[b+72+(d[e>>0]|0)>>0]|0;else f=sY(f,a[e>>0]|0)|0;do switch(f|0){case 2:{f=xY(b,e+2|0,i,g)|0;break a}case 3:{f=tY(b,e+2|0,i,g)|0;break a}case 9:{h=e+2|0;if((i-h|0)<=1){f=-3;break a}f=a[e+3>>0]|0;if(!(f<<24>>24))f=d[b+72+(d[h>>0]|0)>>0]|0;else f=sY(f,a[h>>0]|0)|0;c[g>>2]=(f|0)==10?e+4|0:h;f=7;break a}case 10:{c[g>>2]=e+2;f=7;break a}case 4:{h=e+2|0;if((i-h|0)<=1){f=-5;break a}if((a[e+3>>0]|0)==0?(a[h>>0]|0)==93:0){f=e+4|0;if((i-f|0)<=1){f=-5;break a}if((a[e+5>>0]|0)==0?(a[f>>0]|0)==62:0){c[g>>2]=f;f=0;break a}else f=i}else f=i;break}case 5:{f=i;if((f-h|0)<2){f=-2;break a}h=e+2|0;break}case 6:{f=i;if((f-h|0)<3){f=-2;break a}h=e+3|0;break}case 7:{f=i;if((f-h|0)<4){f=-2;break a}h=e+4|0;break}case 8:case 1:case 0:{c[g>>2]=e;f=0;break a}default:{h=e+2|0;f=i}}while(0);j=b+72|0;b=h;b:while(1){e=f-b|0;if((e|0)<=1){h=52;break}h=a[b+1>>0]|0;i=a[b>>0]|0;if(!(h<<24>>24))h=d[j+(i&255)>>0]|0;else h=sY(h,i)|0;switch(h|0){case 10:case 9:case 8:case 1:case 0:case 2:case 3:{h=50;break b}case 5:{b=b+2|0;continue b}case 6:{if((e|0)<3){h=38;break b}b=b+3|0;continue b}case 7:{if((e|0)<4){h=41;break b}b=b+4|0;continue b}case 4:{if((e|0)<=3){h=50;break b}h=b+2|0;if(a[b+3>>0]|0){b=h;continue b}if((a[h>>0]|0)!=93){b=h;continue b}if((e|0)<=5){h=50;break b}i=b+4|0;if(a[b+5>>0]|0){b=h;continue b}if((a[i>>0]|0)==62){h=49;break b}else{b=h;continue b}}default:{b=b+2|0;continue b}}}if((h|0)==38){c[g>>2]=b;f=6;break}else if((h|0)==41){c[g>>2]=b;f=6;break}else if((h|0)==49){c[g>>2]=i;f=0;break}else if((h|0)==50){c[g>>2]=b;f=6;break}else if((h|0)==52){c[g>>2]=b;f=6;break}}else f=-1}else f=-4;while(0);return f|0}function eY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;a:do if(e>>>0<f>>>0){h=e;i=f-h|0;k=(i&1|0)==0;i=i&-2;j=(i|0)==0;i=k|j?f:e+i|0;if(k|j^1){f=a[e+1>>0]|0;if(!(f<<24>>24))f=d[b+72+(d[e>>0]|0)>>0]|0;else f=sY(f,a[e>>0]|0)|0;switch(f|0){case 4:{h=e+2|0;if((i-h|0)<=1){f=-1;break a}if((a[e+3>>0]|0)==0?(a[h>>0]|0)==93:0){f=e+4|0;if((i-f|0)<=1){f=-1;break a}if((a[e+5>>0]|0)==0?(a[f>>0]|0)==62:0){c[g>>2]=e+6;f=40;break a}}break}case 9:{h=e+2|0;if((i-h|0)<=1){f=-1;break a}f=a[e+3>>0]|0;if(!(f<<24>>24))f=d[b+72+(d[h>>0]|0)>>0]|0;else f=sY(f,a[h>>0]|0)|0;c[g>>2]=(f|0)==10?e+4|0:h;f=7;break a}case 10:{c[g>>2]=e+2;f=7;break a}case 5:{f=i;if((f-h|0)<2){f=-2;break a}h=e+2|0;i=f;break}case 6:{f=i;if((f-h|0)<3){f=-2;break a}h=e+3|0;i=f;break}case 7:{f=i;if((f-h|0)<4){f=-2;break a}h=e+4|0;i=f;break}case 8:case 1:case 0:{c[g>>2]=e;f=0;break a}default:h=e+2|0}j=b+72|0;b=h;b:while(1){e=i-b|0;if((e|0)<=1){h=40;break}f=a[b+1>>0]|0;h=a[b>>0]|0;if(!(f<<24>>24))f=d[j+(h&255)>>0]|0;else f=sY(f,h)|0;switch(f|0){case 10:case 9:case 8:case 1:case 0:case 4:{h=38;break b}case 6:{if((e|0)<3){h=35;break b}else f=3;break}case 7:{if((e|0)<4){h=37;break b}else f=4;break}default:f=2}b=b+f|0}if((h|0)==35){c[g>>2]=b;f=6;break}else if((h|0)==37){c[g>>2]=b;f=6;break}else if((h|0)==38){c[g>>2]=b;f=6;break}else if((h|0)==40){c[g>>2]=b;f=6;break}}else f=-1}else f=-4;while(0);return f|0}function fY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;k=f-e|0;k=(k&1|0)==0?f:e+(k&-2)|0;j=b+72|0;i=0;f=e;a:while(1){h=k-f|0;if((h|0)<=1){f=-1;break}b=a[f+1>>0]|0;e=a[f>>0]|0;if(!(b<<24>>24))b=d[j+(e&255)>>0]|0;else b=sY(b,e)|0;switch(b|0){case 8:case 1:case 0:{l=12;break a}case 5:{h=i;f=f+2|0;i=h;continue a}case 6:{if((h|0)<3){f=-2;break a}h=i;f=f+3|0;i=h;continue a}case 7:{if((h|0)<4){f=-2;break a}h=i;f=f+4|0;i=h;continue a}case 2:{b=f+2|0;if((k-b|0)<=1){f=-1;break a}if(a[f+3>>0]|0){h=i;f=b;i=h;continue a}if((a[b>>0]|0)!=33){h=i;f=b;i=h;continue a}b=f+4|0;if((k-b|0)<=1){f=-1;break a}if(a[f+5>>0]|0){h=i;f=b;i=h;continue a}h=(a[b>>0]|0)==91;i=i+(h&1)|0;f=h?f+6|0:b;continue a}case 4:{b=f+2|0;if((k-b|0)<=1){f=-1;break a}if(a[f+3>>0]|0){h=i;f=b;i=h;continue a}if((a[b>>0]|0)!=93){h=i;f=b;i=h;continue a}b=f+4|0;if((k-b|0)<=1){f=-1;break a}if(a[f+5>>0]|0){h=i;f=b;i=h;continue a}if((a[b>>0]|0)!=62){h=i;f=b;i=h;continue a}f=f+6|0;if(!i){l=26;break a}i=i+-1|0;continue a}default:{h=i;f=f+2|0;i=h;continue a}}}if((l|0)==12){c[g>>2]=f;f=0}else if((l|0)==26){c[g>>2]=f;f=42}return f|0}function gY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;do if(e>>>0<f>>>0){k=f;if((k-e|0)>1){l=b+72|0;j=e;a:while(1){if((k-j|0)<=1){i=30;break}h=a[j+1>>0]|0;i=a[j>>0]|0;if(!(h<<24>>24))h=d[l+(i&255)>>0]|0;else h=sY(h,i)|0;switch(h|0){case 3:{i=11;break a}case 2:{i=14;break a}case 10:{i=15;break a}case 9:{i=18;break a}case 21:{i=25;break a}case 5:{h=2;break}case 6:{h=3;break}case 7:{h=4;break}default:h=2}j=j+h|0}if((i|0)==11)if((j|0)==(e|0)){h=tY(b,e+2|0,f,g)|0;break}else{c[g>>2]=j;h=6;break}else if((i|0)==14){c[g>>2]=j;h=0;break}else if((i|0)==15)if((j|0)==(e|0)){c[g>>2]=e+2;h=7;break}else{c[g>>2]=j;h=6;break}else if((i|0)==18){if((j|0)!=(e|0)){c[g>>2]=j;h=6;break}j=e+2|0;if((k-j|0)<=1){h=-3;break}h=a[e+3>>0]|0;i=a[j>>0]|0;if(!(h<<24>>24))h=d[l+(i&255)>>0]|0;else h=sY(h,i)|0;c[g>>2]=(h|0)==10?e+4|0:j;h=7;break}else if((i|0)==25)if((j|0)==(e|0)){c[g>>2]=e+2;h=39;break}else{c[g>>2]=j;h=6;break}else if((i|0)==30){c[g>>2]=j;h=6;break}}else h=-1}else h=-4;while(0);return h|0}function hY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;do if(e>>>0<f>>>0){k=f;if((k-e|0)>1){l=b+72|0;j=e;a:while(1){if((k-j|0)<=1){i=29;break}h=a[j+1>>0]|0;i=a[j>>0]|0;if(!(h<<24>>24))h=d[l+(i&255)>>0]|0;else h=sY(h,i)|0;switch(h|0){case 3:{i=11;break a}case 30:{i=14;break a}case 10:{i=17;break a}case 9:{i=20;break a}case 5:{h=2;break}case 6:{h=3;break}case 7:{h=4;break}default:h=2}j=j+h|0}if((i|0)==11)if((j|0)==(e|0)){h=tY(b,e+2|0,f,g)|0;break}else{c[g>>2]=j;h=6;break}else if((i|0)==14)if((j|0)==(e|0)){h=uY(b,e+2|0,f,g)|0;h=(h|0)==22?0:h;break}else{c[g>>2]=j;h=6;break}else if((i|0)==17)if((j|0)==(e|0)){c[g>>2]=e+2;h=7;break}else{c[g>>2]=j;h=6;break}else if((i|0)==20){if((j|0)!=(e|0)){c[g>>2]=j;h=6;break}j=e+2|0;if((k-j|0)<=1){h=-3;break}h=a[e+3>>0]|0;i=a[j>>0]|0;if(!(h<<24>>24))h=d[l+(i&255)>>0]|0;else h=sY(h,i)|0;c[g>>2]=(h|0)==10?e+4|0:j;h=7;break}else if((i|0)==29){c[g>>2]=j;h=6;break}}else h=-1}else h=-4;while(0);return h|0}function iY(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=d;b=c;while(1){c=a[e>>0]|0;if(!(c<<24>>24)){g=7;break}if((f-b|0)<2){b=0;break}if(a[b+1>>0]|0){b=0;break}if((a[b>>0]|0)!=c<<24>>24){b=0;break}e=e+1|0;b=b+2|0}if((g|0)==7)b=(b|0)==(d|0)&1;return b|0}function jY(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=b+72|0;f=c;a:while(1){b=a[f+1>>0]|0;e=a[f>>0]|0;if(!(b<<24>>24))b=d[g+(e&255)>>0]|0;else b=sY(b,e)|0;switch(b|0){case 5:{b=2;break}case 6:{b=3;break}case 7:{b=4;break}case 27:case 26:case 25:case 24:case 23:case 22:case 29:{b=2;break}default:break a}f=f+b|0}return f-c|0}function kY(b,c){b=b|0;c=c|0;var e=0,f=0;f=b+72|0;a:while(1){b=a[c+1>>0]|0;e=a[c>>0]|0;if(!(b<<24>>24))b=d[f+(e&255)>>0]|0;else b=sY(b,e)|0;switch(b|0){case 21:case 9:case 10:break;default:break a}c=c+2|0}return c|0}function lY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=b+72|0;m=0;n=0;b=1;a:while(1){l=e+2|0;i=e+3|0;h=a[i>>0]|0;j=h<<24>>24==0;k=a[l>>0]|0;if(j)h=d[o+(k&255)>>0]|0;else h=sY(h,k)|0;do switch(h|0){case 5:{if(b|0){i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}if((n|0)>=(f|0)){j=n;k=m;b=1;e=l;n=j;m=k;continue a}c[g+(n<<4)>>2]=l;a[g+(n<<4)+12>>0]=1;j=n;k=m;b=1;e=l;n=j;m=k;continue a}case 6:{if(b|0){j=b;k=n;l=m;e=i;b=j;n=k;m=l;continue a}if((n|0)>=(f|0)){k=n;l=m;b=1;e=i;n=k;m=l;continue a}c[g+(n<<4)>>2]=l;a[g+(n<<4)+12>>0]=1;k=n;l=m;b=1;e=i;n=k;m=l;continue a}case 7:{if(!b)if((n|0)<(f|0)){c[g+(n<<4)>>2]=l;a[g+(n<<4)+12>>0]=1;b=1}else b=1;k=n;l=m;e=e+4|0;n=k;m=l;continue a}case 24:case 22:case 29:{if(b|0){i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}if((n|0)>=(f|0)){j=n;k=m;b=1;e=l;n=j;m=k;continue a}c[g+(n<<4)>>2]=l;a[g+(n<<4)+12>>0]=1;j=n;k=m;b=1;e=l;n=j;m=k;continue a}case 12:{if((b|0)!=2){if((n|0)>=(f|0)){k=n;m=12;b=2;e=l;n=k;continue a}c[g+(n<<4)+4>>2]=e+4;k=n;m=12;b=2;e=l;n=k;continue a}if((m|0)!=12){j=n;k=m;b=2;e=l;n=j;m=k;continue a}if((n|0)<(f|0))c[g+(n<<4)+8>>2]=l;m=12;n=n+1|0;b=0;e=l;continue a}case 13:{if((b|0)!=2){if((n|0)>=(f|0)){k=n;m=13;b=2;e=l;n=k;continue a}c[g+(n<<4)+4>>2]=e+4;k=n;m=13;b=2;e=l;n=k;continue a}if((m|0)!=13){j=n;k=m;b=2;e=l;n=j;m=k;continue a}if((n|0)<(f|0))c[g+(n<<4)+8>>2]=l;m=13;n=n+1|0;b=0;e=l;continue a}case 3:{if((n|0)>=(f|0)){i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}a[g+(n<<4)+12>>0]=0;i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}case 21:{switch(b|0){case 1:{j=n;k=m;b=0;e=l;n=j;m=k;continue a}case 2:break;default:{i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}}if((n|0)>=(f|0)){j=n;k=m;b=2;e=l;n=j;m=k;continue a}i=g+(n<<4)+12|0;if(!(a[i>>0]|0)){j=n;k=m;b=2;e=l;n=j;m=k;continue a}do if(j&(l|0)!=(c[g+(n<<4)+4>>2]|0)&k<<24>>24==32){h=a[e+5>>0]|0;b=a[e+4>>0]|0;if(!(h<<24>>24)){if(b<<24>>24==32)break;b=d[o+(b&255)>>0]|0}else b=sY(h,b)|0;if((b|0)!=(m|0)){j=n;k=m;b=2;e=l;n=j;m=k;continue a}}while(0);a[i>>0]=0;j=n;k=m;b=2;e=l;n=j;m=k;continue a}case 10:case 9:{switch(b|0){case 1:{j=n;k=m;b=0;e=l;n=j;m=k;continue a}case 2:break;default:{i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}}if((n|0)>=(f|0)){j=n;k=m;b=2;e=l;n=j;m=k;continue a}a[g+(n<<4)+12>>0]=0;j=n;k=m;b=2;e=l;n=j;m=k;continue a}case 17:case 11:if((b|0)==2){j=n;k=m;b=2;e=l;n=j;m=k;continue a}else break a;default:{i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}}while(0)}return n|0}function mY(b,c){b=b|0;c=c|0;var d=0,e=0;b=c+4|0;a:do if((a[c+5>>0]|0)==0?(a[b>>0]|0)==120:0){c=c+6|0;b=0;while(1){b:while(1){if(!(a[c+1>>0]|0)){d=a[c>>0]|0;if(d<<24>>24==59){e=17;break a}d=d<<24>>24;switch(d|0){case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:case 48:{e=8;break b}case 70:case 69:case 68:case 67:case 66:case 65:{e=9;break b}case 102:case 101:case 100:case 99:case 98:case 97:{e=10;break b}default:{}}}c=c+2|0}if((e|0)==8){e=0;b=d+-48|b<<4}else if((e|0)==9){e=0;b=(b<<4)+-55+d|0}else if((e|0)==10){e=0;b=(b<<4)+-87+d|0}if((b|0)<1114112)c=c+2|0;else{b=-1;break}}}else{d=b;b=0;e=13}while(0);c:do if((e|0)==13)while(1){e=0;if(!(a[d+1>>0]|0)){c=a[d>>0]|0;if(c<<24>>24==59){e=17;break c}c=c<<24>>24}else c=-1;b=(b*10|0)+-48+c|0;if((b|0)>=1114112){b=-1;break}else{d=d+2|0;e=13}}while(0);if((e|0)==17)b=jX(b)|0;return b|0}function nY(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;a:do switch((d-c|0)/2|0|0){case 2:{if((a[c+3>>0]|0)==0?(a[c+2>>0]|0)==116:0){if(!(a[c+1>>0]|0))b=a[c>>0]|0;else b=-1;b=(b|0)==108?60:(b|0)==103?62:0}else e=27;break}case 3:{if((((((a[c+1>>0]|0)==0?(a[c>>0]|0)==97:0)?(a[c+3>>0]|0)==0:0)?(a[c+2>>0]|0)==109:0)?(a[c+5>>0]|0)==0:0)?(a[c+4>>0]|0)==112:0)b=38;else e=27;break}case 4:{if(!(a[c+1>>0]|0))switch(a[c>>0]|0){case 113:{if(a[c+3>>0]|0){e=27;break a}if((a[c+2>>0]|0)!=117){e=27;break a}if(a[c+5>>0]|0){e=27;break a}if((a[c+4>>0]|0)!=111){e=27;break a}if(a[c+7>>0]|0){e=27;break a}if((a[c+6>>0]|0)==116){b=34;break a}else{e=27;break a}}case 97:{if(a[c+3>>0]|0){e=27;break a}if((a[c+2>>0]|0)!=112){e=27;break a}if(a[c+5>>0]|0){e=27;break a}if((a[c+4>>0]|0)!=111){e=27;break a}if(a[c+7>>0]|0){e=27;break a}if((a[c+6>>0]|0)==115){b=39;break a}else{e=27;break a}}default:{e=27;break a}}else e=27;break}default:e=27}while(0);if((e|0)==27)b=0;return b|0}function oY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;j=b+72|0;k=g+4|0;while(1){if((f-e|0)<=1)break;b=a[e+1>>0]|0;h=a[e>>0]|0;if(!(b<<24>>24))b=d[j+(h&255)>>0]|0;else b=sY(b,h)|0;switch(b|0){case 5:{e=e+2|0;break}case 6:{e=e+3|0;break}case 7:{e=e+4|0;break}case 10:{c[k>>2]=-1;c[g>>2]=(c[g>>2]|0)+1;e=e+2|0;break}case 9:{c[g>>2]=(c[g>>2]|0)+1;i=e+2|0;if((f-i|0)>1){b=a[e+3>>0]|0;h=a[i>>0]|0;if(!(b<<24>>24))b=d[j+(h&255)>>0]|0;else b=sY(b,h)|0;e=(b|0)==10?e+4|0:i}else e=i;c[k>>2]=-1;break}default:e=e+2|0}c[k>>2]=(c[k>>2]|0)+1}return}function pY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;j=f+-2|0;i=b+72|0;f=e;a:while(1){h=f+2|0;if((j-h|0)<=1){f=1;break}f=a[f+3>>0]|0;b=f<<24>>24==0;e=a[h>>0]|0;if(b)f=d[i+(e&255)>>0]|0;else f=sY(f,e)|0;switch(f|0){case 23:case 19:case 30:case 33:case 16:case 18:case 10:case 9:case 15:case 14:case 17:case 35:case 34:case 32:case 31:case 13:case 27:case 24:case 25:{f=h;continue a}case 21:if(b&e<<24>>24==9){k=12;break a}else{f=h;continue a}case 22:case 26:{if(!b){k=12;break a}if(e<<24>>24>=0){f=h;continue a}break}default:if(!b){k=12;break a}}switch(e<<24>>24|0){case 64:case 36:{f=h;break}default:{k=12;break a}}}if((k|0)==12){c[g>>2]=h;f=0}return f|0}function qY(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=c[e>>2]|0;k=j+(f-j&-2)|0;l=k;m=h;a:while(1){if(j>>>0>=k>>>0){b=0;break}i=a[j>>0]|0;b=a[j+1>>0]|0;f=b&255;switch(b<<24>>24){case 0:{if(i<<24>>24>-1){b=c[g>>2]|0;if((b|0)==(h|0)){b=2;break a}c[g>>2]=b+1;a[b>>0]=i;b=j}else n=7;break}case 7:case 6:case 5:case 4:case 3:case 2:case 1:{n=7;break}case -37:case -38:case -39:case -40:{b=c[g>>2]|0;if((m-b|0)<4){b=2;break a}if((l-j|0)<4){b=1;break a}o=i&255;i=(f<<2&12|o>>>6)+1|0;c[g>>2]=b+1;a[b>>0]=i>>>2|240;b=c[g>>2]|0;c[g>>2]=b+1;a[b>>0]=o>>>2&15|i<<4&48|128;b=j+2|0;i=d[b>>0]|0;f=(o<<4&48|i>>>6|a[j+3>>0]<<2&12|128)&255;j=c[g>>2]|0;c[g>>2]=j+1;a[j>>0]=f;j=c[g>>2]|0;c[g>>2]=j+1;a[j>>0]=i&63|128;break}default:{b=c[g>>2]|0;if((m-b|0)<3){b=2;break a}c[g>>2]=b+1;a[b>>0]=f>>>4|224;o=i&255;b=c[g>>2]|0;c[g>>2]=b+1;a[b>>0]=o>>>6|f<<2&60|128;b=c[g>>2]|0;c[g>>2]=b+1;a[b>>0]=o&63|128;b=j}}if((n|0)==7){n=0;b=c[g>>2]|0;if((m-b|0)<2){b=2;break}o=i&255;c[g>>2]=b+1;a[b>>0]=o>>>6|f<<2|192;b=c[g>>2]|0;c[g>>2]=b+1;a[b>>0]=o&63|128;b=j}j=b+2|0}c[e>>2]=j;return b|0}function rY(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;j=c[f>>2]|0;l=g-j&-2;e=j+l|0;if((l|0)>(i-(c[h>>2]|0)|0)){k=e+-2|0;g=(a[k+1>>0]&-8)<<24>>24==-40;l=g&1;e=g?k:e}else l=0;g=j;while(1){j=g>>>0<e>>>0;k=c[h>>2]|0;if(!(j&k>>>0<i>>>0))break;j=((d[g+1>>0]|0)<<8|(d[g>>0]|0))&65535;c[h>>2]=k+2;b[k>>1]=j;k=(c[f>>2]|0)+2|0;c[f>>2]=k;g=k}return ((k|0)!=(i|0)|j^1?l:2)|0}function sY(a,b){a=a|0;b=b|0;var c=0;switch(a<<24>>24){case -37:case -38:case -39:case -40:{a=7;break}case -33:case -34:case -35:case -36:{a=8;break}case -1:{if((b&255)>253)a=0;else c=4;break}default:c=4}if((c|0)==4)a=29;return a|0}function tY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;l=f;j=l-e|0;a:do if((j|0)>1){k=a[e+1>>0]|0;if(!(k<<24>>24)){i=a[e>>0]|0;h=d[b+72+(i&255)>>0]|0}else{i=a[e>>0]|0;h=sY(k,i)|0}switch(h|0){case 29:{j=i&255;if(!(1<<(j&31)&c[56836+((j>>>5|(d[140706+(k&255)>>0]|0)<<3)<<2)>>2])){c[g>>2]=e;b=0;break a}break}case 24:case 22:break;case 5:{c[g>>2]=e;b=0;break a}case 6:{if((j|0)<3){b=-2;break a}c[g>>2]=e;b=0;break a}case 7:{if((j|0)<4){b=-2;break a}c[g>>2]=e;b=0;break a}case 19:{b=vY(b,e+2|0,f,g)|0;break a}default:{c[g>>2]=e;b=0;break a}}k=b+72|0;j=e;b:while(1){i=j+2|0;e=l-i|0;if((e|0)<=1){b=-1;break a}b=a[j+3>>0]|0;h=a[i>>0]|0;if(!(b<<24>>24))f=d[k+(h&255)>>0]|0;else f=sY(b,h)|0;switch(f|0){case 27:case 26:case 25:case 24:case 22:{j=i;continue b}case 5:{h=23;break b}case 6:{h=24;break b}case 7:{h=26;break b}case 18:{h=28;break b}case 29:break;default:{h=29;break b}}e=h&255;if(!(1<<(e&31)&c[56836+((e>>>5|(d[140962+(b&255)>>0]|0)<<3)<<2)>>2])){h=22;break}else j=i}if((h|0)==22){c[g>>2]=i;b=0;break}else if((h|0)==23){c[g>>2]=i;b=0;break}else if((h|0)==24){if((e|0)<3){b=-2;break}c[g>>2]=i;b=0;break}else if((h|0)==26){if((e|0)<4){b=-2;break}c[g>>2]=i;b=0;break}else if((h|0)==28){c[g>>2]=j+4;b=9;break}else if((h|0)==29){c[g>>2]=i;b=0;break}}else b=-1;while(0);return b|0}function uY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;j=f-e|0;a:do if((j|0)>1){k=a[e+1>>0]|0;if(!(k<<24>>24)){i=a[e>>0]|0;h=d[b+72+(i&255)>>0]|0}else{i=a[e>>0]|0;h=sY(k,i)|0}switch(h|0){case 29:{l=i&255;if(!(1<<(l&31)&c[56836+((l>>>5|(d[140706+(k&255)>>0]|0)<<3)<<2)>>2])){c[g>>2]=e;f=0;break a}break}case 24:case 22:break;case 5:{c[g>>2]=e;f=0;break a}case 6:{if((j|0)<3){f=-2;break a}c[g>>2]=e;f=0;break a}case 7:{if((j|0)<4){f=-2;break a}c[g>>2]=e;f=0;break a}case 30:case 9:case 10:case 21:{c[g>>2]=e;f=22;break a}default:{c[g>>2]=e;f=0;break a}}l=b+72|0;b=e;b:while(1){k=b+2|0;e=f-k|0;if((e|0)<=1){f=-1;break a}h=a[b+3>>0]|0;i=a[k>>0]|0;if(!(h<<24>>24))j=d[l+(i&255)>>0]|0;else j=sY(h,i)|0;switch(j|0){case 27:case 26:case 25:case 24:case 22:{b=k;continue b}case 5:{h=23;break b}case 6:{h=24;break b}case 7:{h=26;break b}case 18:{h=28;break b}case 29:break;default:{h=29;break b}}e=i&255;if(!(1<<(e&31)&c[56836+((e>>>5|(d[140962+(h&255)>>0]|0)<<3)<<2)>>2])){h=22;break}else b=k}if((h|0)==22){c[g>>2]=k;f=0;break}else if((h|0)==23){c[g>>2]=k;f=0;break}else if((h|0)==24){if((e|0)<3){f=-2;break}c[g>>2]=k;f=0;break}else if((h|0)==26){if((e|0)<4){f=-2;break}c[g>>2]=k;f=0;break}else if((h|0)==28){c[g>>2]=b+4;f=28;break}else if((h|0)==29){c[g>>2]=k;f=0;break}}else f=-1;while(0);return f|0}function vY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=f;a:do if((k-e|0)>1){i=a[e+1>>0]|0;h=a[e>>0]|0;do if(!(i<<24>>24))if(h<<24>>24==120){h=wY(b,e+2|0,f,g)|0;break a}else{h=d[b+72+(h&255)>>0]|0;break}else h=sY(i,h)|0;while(0);if((h|0)!=25){c[g>>2]=e;h=0;break}j=b+72|0;b=e;b:while(1){i=b+2|0;if((k-i|0)<=1){h=-1;break a}h=a[b+3>>0]|0;f=a[i>>0]|0;if(!(h<<24>>24))h=d[j+(f&255)>>0]|0;else h=sY(h,f)|0;switch(h|0){case 25:{b=i;break}case 18:{f=15;break b}default:{f=16;break b}}}if((f|0)==15){c[g>>2]=b+4;h=10;break}else if((f|0)==16){c[g>>2]=i;h=0;break}}else h=-1;while(0);return h|0}function wY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;a:do if((f-e|0)>1){h=a[e+1>>0]|0;if(!(h<<24>>24))h=d[b+72+(d[e>>0]|0)>>0]|0;else h=sY(h,a[e>>0]|0)|0;if((h&-2|0)!=24){c[g>>2]=e;f=0;break}j=b+72|0;b:while(1){i=e+2|0;if((f-i|0)<=1){f=-1;break a}h=a[e+3>>0]|0;b=a[i>>0]|0;if(!(h<<24>>24))h=d[j+(b&255)>>0]|0;else h=sY(h,b)|0;switch(h|0){case 24:case 25:{e=i;break}case 18:{h=13;break b}default:{h=14;break b}}}if((h|0)==13){c[g>>2]=e+4;f=10;break}else if((h|0)==14){c[g>>2]=i;f=0;break}}else f=-1;while(0);return f|0}function xY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f;j=o-e|0;a:do if((j|0)>1){k=a[e+1>>0]|0;if(!(k<<24>>24)){i=a[e>>0]|0;h=d[b+72+(i&255)>>0]|0}else{i=a[e>>0]|0;h=sY(k,i)|0}switch(h|0){case 29:{m=i&255;if(!(1<<(m&31)&c[56836+((m>>>5|d[140706+(k&255)>>0]<<3)<<2)>>2])){c[g>>2]=e;h=0;break a}break}case 24:case 22:break;case 5:{c[g>>2]=e;h=0;break a}case 6:{if((j|0)<3){h=-2;break a}c[g>>2]=e;h=0;break a}case 7:{if((j|0)<4){h=-2;break a}c[g>>2]=e;h=0;break a}case 16:{i=e+2|0;if((o-i|0)<=1){h=-1;break a}h=a[e+3>>0]|0;if(!(h<<24>>24))h=d[b+72+(d[i>>0]|0)>>0]|0;else h=sY(h,a[i>>0]|0)|0;switch(h|0){case 27:{h=yY(b,e+4|0,f,g)|0;break a}case 20:{h=zY(e+4|0,f,g)|0;break a}default:{c[g>>2]=i;h=0;break a}}}case 15:{h=AY(b,e+2|0,f,g)|0;break a}case 17:{h=BY(b,e+2|0,f,g)|0;break a}default:{c[g>>2]=e;h=0;break a}}m=b+72|0;l=0;h=e+2|0;b:while(1){c:while(1){i=o-h|0;if((i|0)<=1){h=-1;break a}j=a[h+1>>0]|0;k=a[h>>0]|0;if(!(j<<24>>24))e=d[m+(k&255)>>0]|0;else e=sY(j,k)|0;switch(e|0){case 5:{n=34;break b}case 6:{n=35;break b}case 7:{n=37;break b}case 10:case 9:case 21:{n=55;break b}case 11:{n=69;break b}case 17:break b;case 23:break c;case 29:{e=k&255;if(!(1<<(e&31)&c[56836+((e>>>5|d[140962+(j&255)>>0]<<3)<<2)>>2])){n=32;break b}break}case 27:case 26:case 25:case 24:case 22:break;default:{n=75;break b}}h=h+2|0}if(l|0){n=40;break}k=h+2|0;e=o-k|0;if((e|0)<=1){h=-1;break a}l=a[h+3>>0]|0;i=a[k>>0]|0;if(!(l<<24>>24))j=d[m+(i&255)>>0]|0;else j=sY(l,i)|0;switch(j|0){case 5:{n=49;break b}case 6:{n=50;break b}case 7:{n=52;break b}case 29:{e=i&255;if(!(1<<(e&31)&c[56836+((e>>>5|d[140706+(l&255)>>0]<<3)<<2)>>2])){n=47;break b}break}case 24:case 22:break;default:{n=54;break b}}l=1;h=h+4|0}d:switch(n|0){case 32:{c[g>>2]=h;h=0;break a}case 34:{c[g>>2]=h;h=0;break a}case 35:{if((i|0)<3){h=-2;break a}c[g>>2]=h;h=0;break a}case 37:{if((i|0)<4){h=-2;break a}c[g>>2]=h;h=0;break a}case 40:{c[g>>2]=h;h=0;break a}case 47:{c[g>>2]=k;h=0;break a}case 49:{c[g>>2]=k;h=0;break a}case 50:{if((e|0)<3){h=-2;break a}c[g>>2]=k;h=0;break a}case 52:{if((e|0)<4){h=-2;break a}c[g>>2]=k;h=0;break a}case 54:{c[g>>2]=k;h=0;break a}case 55:{e:while(1){n=0;i=h+2|0;j=o-i|0;if((j|0)<=1){h=-1;break a}k=a[h+3>>0]|0;e=a[i>>0]|0;if(!(k<<24>>24))l=d[m+(e&255)>>0]|0;else l=sY(k,e)|0;switch(l|0){case 11:{h=i;n=69;break d}case 17:{h=i;break d}case 10:case 9:case 21:{h=i;n=55;break}case 29:{n=60;break e}case 24:case 22:break e;case 5:{n=63;break e}case 6:{n=64;break e}case 7:{n=66;break e}default:{n=68;break e}}}if((n|0)==60){o=e&255;if(!(1<<(o&31)&c[56836+((o>>>5|d[140706+(k&255)>>0]<<3)<<2)>>2])){c[g>>2]=i;h=0;break a}}else if((n|0)==63){c[g>>2]=i;h=0;break a}else if((n|0)==64){if((j|0)<3){h=-2;break a}c[g>>2]=i;h=0;break a}else if((n|0)==66){if((j|0)<4){h=-2;break a}c[g>>2]=i;h=0;break a}else if((n|0)==68){c[g>>2]=i;h=0;break a}h=CY(b,h+4|0,f,g)|0;break a}case 75:{c[g>>2]=h;h=0;break a}}if((n|0)==69){c[g>>2]=h+2;h=2;break}i=h+2|0;if((o-i|0)>1){if((a[h+3>>0]|0)==0?(a[i>>0]|0)==62:0){c[g>>2]=h+4;h=4;break}c[g>>2]=i;h=0}else h=-1}else h=-1;while(0);return h|0}function yY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;j=f;a:do if((j-e|0)>1){if((a[e+1>>0]|0)==0?(a[e>>0]|0)==45:0){i=b+72|0;h=e+2|0;b:while(1){e=j-h|0;if((e|0)<=1){f=-1;break a}f=a[h+1>>0]|0;b=a[h>>0]|0;if(!(f<<24>>24))f=d[i+(b&255)>>0]|0;else f=sY(f,b)|0;switch(f|0){case 8:case 1:case 0:{k=16;break b}case 5:{h=h+2|0;continue b}case 6:{if((e|0)<3){f=-2;break a}h=h+3|0;continue b}case 7:{if((e|0)<4){f=-2;break a}h=h+4|0;continue b}case 27:{f=h+2|0;if((j-f|0)<=1){f=-1;break a}if(a[h+3>>0]|0){h=f;continue b}if((a[f>>0]|0)==45)break b;else{h=f;continue b}}default:{h=h+2|0;continue b}}}if((k|0)==16){c[g>>2]=h;f=0;break}f=h+4|0;if((j-f|0)<=1){f=-1;break}if((a[h+5>>0]|0)==0?(a[f>>0]|0)==62:0){c[g>>2]=h+6;f=13;break}c[g>>2]=f;f=0;break}c[g>>2]=e;f=0}else f=-1;while(0);return f|0}function zY(b,d,e){b=b|0;d=d|0;e=e|0;if((d-b|0)>11){d=0;while(1){if((d|0)>=6){d=8;break}if(a[b+1>>0]|0){d=0;break}if((a[b>>0]|0)!=(a[141218+d>>0]|0)){d=0;break}d=d+1|0;b=b+2|0}c[e>>2]=b}else d=-1;return d|0}function AY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;p=q;o=f;j=o-e|0;a:do if((j|0)>1){f=a[e+1>>0]|0;if(!(f<<24>>24)){i=a[e>>0]|0;h=d[b+72+(i&255)>>0]|0}else{i=a[e>>0]|0;h=sY(f,i)|0}switch(h|0){case 29:{m=i&255;if(!(1<<(m&31)&c[56836+((m>>>5|d[140706+(f&255)>>0]<<3)<<2)>>2])){c[g>>2]=e;f=0;break a}break}case 24:case 22:break;case 5:{c[g>>2]=e;f=0;break a}case 6:{if((j|0)<3){f=-2;break a}c[g>>2]=e;f=0;break a}case 7:{if((j|0)<4){f=-2;break a}c[g>>2]=e;f=0;break a}default:{c[g>>2]=e;f=0;break a}}m=b+72|0;k=e;b:while(1){f=k+2|0;h=o-f|0;if((h|0)<=1){f=-1;break a}i=a[k+3>>0]|0;j=a[f>>0]|0;if(!(i<<24>>24))b=d[m+(j&255)>>0]|0;else b=sY(i,j)|0;switch(b|0){case 27:case 26:case 25:case 24:case 22:{k=f;continue b}case 5:{n=22;break b}case 6:{n=23;break b}case 7:{n=25;break b}case 10:case 9:case 21:{n=27;break b}case 15:{n=46;break b}case 29:break;default:break b}k=j&255;if(!(1<<(k&31)&c[56836+((k>>>5|d[140962+(i&255)>>0]<<3)<<2)>>2])){n=21;break}else k=f}if((n|0)==21){c[g>>2]=f;f=0;break}else if((n|0)==22){c[g>>2]=f;f=0;break}else if((n|0)==23){if((h|0)<3){f=-2;break}c[g>>2]=f;f=0;break}else if((n|0)==25){if((h|0)<4){f=-2;break}c[g>>2]=f;f=0;break}else if((n|0)==27){if(!(DY(e,f,p)|0)){c[g>>2]=f;f=0;break}j=k+4|0;c:while(1){i=o-j|0;if((i|0)<=1){f=-1;break a}f=a[j+1>>0]|0;h=a[j>>0]|0;if(!(f<<24>>24))f=d[m+(h&255)>>0]|0;else f=sY(f,h)|0;switch(f|0){case 8:case 1:case 0:{n=40;break c}case 5:{j=j+2|0;continue c}case 6:{if((i|0)<3){f=-2;break a}j=j+3|0;continue c}case 7:{if((i|0)<4){f=-2;break a}j=j+4|0;continue c}case 15:{f=j+2|0;if((o-f|0)<=1){f=-1;break a}if(a[j+3>>0]|0){j=f;continue c}if((a[f>>0]|0)==62){n=44;break c}else{j=f;continue c}}default:{j=j+2|0;continue c}}}if((n|0)==40){c[g>>2]=j;f=0;break}else if((n|0)==44){c[g>>2]=j+4;f=c[p>>2]|0;break}}else if((n|0)==46){if(!(DY(e,f,p)|0)){c[g>>2]=f;f=0;break}f=k+4|0;if((o-f|0)<=1){f=-1;break}if((a[k+5>>0]|0)==0?(a[f>>0]|0)==62:0){c[g>>2]=k+6;f=c[p>>2]|0;break}}c[g>>2]=f;f=0}else f=-1;while(0);l=q;return f|0}function BY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;j=f-e|0;a:do if((j|0)>1){k=a[e+1>>0]|0;if(!(k<<24>>24)){i=a[e>>0]|0;h=d[b+72+(i&255)>>0]|0}else{i=a[e>>0]|0;h=sY(k,i)|0}switch(h|0){case 29:{l=i&255;if(!(1<<(l&31)&c[56836+((l>>>5|(d[140706+(k&255)>>0]|0)<<3)<<2)>>2])){c[g>>2]=e;f=0;break a}break}case 24:case 22:break;case 5:{c[g>>2]=e;f=0;break a}case 6:{if((j|0)<3){f=-2;break a}c[g>>2]=e;f=0;break a}case 7:{if((j|0)<4){f=-2;break a}c[g>>2]=e;f=0;break a}default:{c[g>>2]=e;f=0;break a}}l=b+72|0;b=e;b:while(1){j=b+2|0;e=f-j|0;if((e|0)<=1){f=-1;break a}h=a[b+3>>0]|0;i=a[j>>0]|0;if(!(h<<24>>24))k=d[l+(i&255)>>0]|0;else k=sY(h,i)|0;switch(k|0){case 23:case 27:case 26:case 25:case 24:case 22:{b=j;continue b}case 5:{h=22;break b}case 6:{h=23;break b}case 7:{h=25;break b}case 10:case 9:case 21:{h=27;break b}case 11:{h=34;break b}case 29:break;default:{h=35;break b}}e=i&255;if(!(1<<(e&31)&c[56836+((e>>>5|(d[140962+(h&255)>>0]|0)<<3)<<2)>>2])){h=21;break}else b=j}if((h|0)==21){c[g>>2]=j;f=0;break}else if((h|0)==22){c[g>>2]=j;f=0;break}else if((h|0)==23){if((e|0)<3){f=-2;break}c[g>>2]=j;f=0;break}else if((h|0)==25){if((e|0)<4){f=-2;break}c[g>>2]=j;f=0;break}else if((h|0)==27){c:while(1){k=j+2|0;if((f-k|0)<=1){f=-1;break a}h=a[j+3>>0]|0;i=a[k>>0]|0;if(!(h<<24>>24))h=d[l+(i&255)>>0]|0;else h=sY(h,i)|0;switch(h|0){case 10:case 9:case 21:{j=k;h=27;break}case 11:{h=32;break c}default:{h=33;break c}}}if((h|0)==32){c[g>>2]=j+4;f=5;break}else if((h|0)==33){c[g>>2]=k;f=0;break}}else if((h|0)==34){c[g>>2]=b+4;f=5;break}else if((h|0)==35){c[g>>2]=j;f=0;break}}else f=-1;while(0);return f|0}function CY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+16|0;q=s;c[q>>2]=e;r=f;o=b+72|0;h=0;a:while(1){b:while(1){m=r-e|0;if((m|0)<=1){e=-1;break a}i=a[e+1>>0]|0;j=a[e>>0]|0;if(!(i<<24>>24))k=d[o+(j&255)>>0]|0;else k=sY(i,j)|0;switch(k|0){case 5:{p=11;break a}case 6:{p=12;break a}case 7:{p=14;break a}case 23:{p=16;break b}case 10:case 9:case 21:{p=31;break b}case 14:{p=37;break b}case 29:{n=j&255;if(!(1<<(n&31)&c[56836+((n>>>5|d[140962+(i&255)>>0]<<3)<<2)>>2])){p=9;break a}break}case 27:case 26:case 25:case 24:case 22:break;default:{p=89;break a}}n=e+2|0;c[q>>2]=n;e=n}c:do if((p|0)==16){p=0;if(h|0){p=17;break a}h=e+2|0;c[q>>2]=h;i=h;j=r-i|0;if((j|0)<=1){e=-1;break a}k=a[e+3>>0]|0;m=a[h>>0]|0;if(!(k<<24>>24))n=d[o+(m&255)>>0]|0;else n=sY(k,m)|0;switch(n|0){case 5:{p=25;break a}case 6:{p=26;break a}case 7:{p=28;break a}case 24:case 22:{h=1;break c}case 29:break;default:{p=30;break a}}n=m&255;if(!(1<<(n&31)&c[56836+((n>>>5|d[140706+(k&255)>>0]<<3)<<2)>>2])){p=24;break a}else h=1}else if((p|0)==31)while(1){p=0;i=e+2|0;c[q>>2]=i;j=i;if((r-j|0)<=1){e=-1;break a}e=a[e+3>>0]|0;h=a[i>>0]|0;if(!(e<<24>>24))e=d[o+(h&255)>>0]|0;else e=sY(e,h)|0;switch(e|0){case 14:{e=i;p=37;break c}case 9:case 10:case 21:{e=i;p=31;break}default:{p=36;break a}}}while(0);d:do if((p|0)==37){while(1){p=0;j=e+2|0;c[q>>2]=j;k=j;if((r-k|0)<=1){e=-1;break a}h=a[e+3>>0]|0;i=a[j>>0]|0;if(!(h<<24>>24))m=d[o+(i&255)>>0]|0;else m=sY(h,i)|0;if((m|1|0)==13)break;switch(m|0){case 9:case 10:case 21:{e=j;p=37;break}default:{p=43;break a}}}e=e+4|0;c[q>>2]=e;e:while(1){j=r-e|0;if((j|0)<=1){e=-1;break a}h=a[e+1>>0]|0;i=a[e>>0]|0;if(!(h<<24>>24))h=d[o+(i&255)>>0]|0;else h=sY(h,i)|0;if((h|0)==(m|0))break;switch(h|0){case 8:case 1:case 0:{p=56;break a}case 2:{p=61;break a}case 5:{n=e+2|0;c[q>>2]=n;e=n;continue e}case 6:{if((j|0)<3){e=-2;break a}n=e+3|0;c[q>>2]=n;e=n;continue e}case 7:{if((j|0)<4){e=-2;break a}n=e+4|0;c[q>>2]=n;e=n;continue e}case 3:{e=tY(b,e+2|0,f,q)|0;if((e|0)<1){p=59;break a}e=c[q>>2]|0;continue e}default:{n=e+2|0;c[q>>2]=n;e=n;continue e}}}i=e+2|0;c[q>>2]=i;k=i;if((r-k|0)<=1){e=-1;break a}h=a[e+3>>0]|0;j=a[i>>0]|0;if(!(h<<24>>24))h=d[o+(j&255)>>0]|0;else h=sY(h,j)|0;switch(h|0){case 11:{p=81;break a}case 17:{p=82;break a}case 10:case 9:case 21:{e=i;break}default:{p=68;break a}}f:while(1){i=e+2|0;c[q>>2]=i;h=i;j=r-h|0;if((j|0)<=1){e=-1;break a}k=a[e+3>>0]|0;m=a[i>>0]|0;if(!(k<<24>>24))n=d[o+(m&255)>>0]|0;else n=sY(k,m)|0;switch(n|0){case 5:{p=76;break a}case 6:{p=77;break a}case 7:{p=79;break a}case 11:{p=81;break a}case 17:{p=82;break a}case 24:case 22:{h=0;break d}case 10:case 9:case 21:{e=i;break}case 29:break f;default:{p=87;break a}}}n=m&255;if(!(1<<(n&31)&c[56836+((n>>>5|d[140706+(k&255)>>0]<<3)<<2)>>2])){p=75;break a}else h=0}while(0);e=e+4|0;c[q>>2]=e}switch(p|0){case 9:{c[g>>2]=e;e=0;break}case 11:{c[g>>2]=e;e=0;break}case 12:{if((m|0)<3)e=-2;else{c[g>>2]=e;e=0}break}case 14:{if((m|0)<4)e=-2;else{c[g>>2]=e;e=0}break}case 17:{c[g>>2]=e;e=0;break}case 24:{c[g>>2]=h;e=0;break}case 25:{c[g>>2]=h;e=0;break}case 26:{if((j|0)<3)e=-2;else{c[g>>2]=h;e=0}break}case 28:{if((j|0)<4)e=-2;else{c[g>>2]=h;e=0}break}case 30:{c[g>>2]=i;e=0;break}case 36:{c[g>>2]=j;e=0;break}case 43:{c[g>>2]=k;e=0;break}case 56:{c[g>>2]=e;e=0;break}case 59:{if(!e){c[g>>2]=c[q>>2];e=0}break}case 61:{c[g>>2]=e;e=0;break}case 68:{c[g>>2]=k;e=0;break}case 75:{c[g>>2]=i;e=0;break}case 76:{c[g>>2]=i;e=0;break}case 77:{if((j|0)<3)e=-2;else{c[g>>2]=i;e=0}break}case 79:{if((j|0)<4)e=-2;else{c[g>>2]=i;e=0}break}case 81:{c[g>>2]=e+4;e=1;break}case 82:{h=i+2|0;c[q>>2]=h;e=h;if((r-e|0)>1){if((a[i+3>>0]|0)==0?(a[h>>0]|0)==62:0){c[g>>2]=i+4;e=3;break}c[g>>2]=e;e=0}else e=-1;break}case 87:{c[g>>2]=h;e=0;break}case 89:{c[g>>2]=e;e=0;break}}l=s;return e|0}function DY(b,d,e){b=b|0;d=d|0;e=e|0;c[e>>2]=11;a:do if((d-b|0)==6?(a[b+1>>0]|0)==0:0){switch(a[b>>0]|0){case 120:{d=0;break}case 88:{d=1;break}default:{d=1;break a}}if(!(a[b+3>>0]|0)){switch(a[b+2>>0]|0){case 109:break;case 77:{d=1;break}default:{d=1;break a}}if(!(a[b+5>>0]|0)){switch(a[b+4>>0]|0){case 108:break;case 76:{d=0;break a}default:{d=1;break a}}if(!d){c[e>>2]=12;d=1}else d=0}else d=1}else d=1}else d=1;while(0);return d|0}function EY(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;k=e+72|0;a:while(1){b:while(1){j=g-f|0;if((j|0)<=1){f=-1;break a}e=a[f+1>>0]|0;i=a[f>>0]|0;if(!(e<<24>>24))e=d[k+(i&255)>>0]|0;else e=sY(e,i)|0;switch(e|0){case 8:case 1:case 0:{l=10;break a}case 6:{l=9;break b}case 7:{l=19;break b}case 5:{f=f+2|0;continue b}case 13:case 12:{i=f+2|0;if((e|0)==(b|0)){l=12;break a}else{f=i;continue b}}default:{f=f+2|0;continue b}}}if((l|0)==9){l=0;if((j|0)<3){f=-2;break}else{f=f+3|0;continue}}else if((l|0)==19){l=0;if((j|0)<4){f=-2;break}else{f=f+4|0;continue}}}c:do if((l|0)==10){c[h>>2]=f;f=0}else if((l|0)==12)if((g-i|0)>1){c[h>>2]=i;g=a[f+3>>0]|0;f=a[i>>0]|0;if(!(g<<24>>24))f=d[k+(f&255)>>0]|0;else f=sY(g,f)|0;switch(f|0){case 20:case 30:case 11:case 10:case 9:case 21:{f=27;break c}default:{}}f=0}else f=-27;while(0);return f|0}function FY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;k=f;a:do if((k-e|0)>1){h=a[e+1>>0]|0;if(!(h<<24>>24))h=d[b+72+(d[e>>0]|0)>>0]|0;else h=sY(h,a[e>>0]|0)|0;switch(h|0){case 27:{h=yY(b,e+2|0,f,g)|0;break a}case 20:{c[g>>2]=e+2;h=33;break a}case 24:case 22:{j=b+72|0;b:while(1){i=e+2|0;f=k-i|0;if((f|0)<=1){h=-1;break a}h=a[e+3>>0]|0;b=a[i>>0]|0;if(!(h<<24>>24))h=d[j+(b&255)>>0]|0;else h=sY(h,b)|0;switch(h|0){case 24:case 22:{e=i;break}case 30:{l=15;break b}case 10:case 9:case 21:break b;default:{l=22;break b}}}if((l|0)==22){c[g>>2]=i;h=0;break a}c:do if((l|0)==15){if((f|0)<=3){h=-1;break a}b=a[e+5>>0]|0;h=a[e+4>>0]|0;if(!(b<<24>>24))h=d[j+(h&255)>>0]|0;else h=sY(b,h)|0;switch(h|0){case 30:case 10:case 9:case 21:break;default:break c}c[g>>2]=i;h=0;break a}while(0);c[g>>2]=i;h=16;break a}default:{c[g>>2]=e;h=0;break a}}}else h=-1;while(0);return h|0}function GY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;j=f-e|0;a:do if((j|0)>1){k=a[e+1>>0]|0;if(!(k<<24>>24)){i=a[e>>0]|0;h=d[b+72+(i&255)>>0]|0}else{i=a[e>>0]|0;h=sY(k,i)|0}switch(h|0){case 29:{j=i&255;if(!(1<<(j&31)&c[56836+((j>>>5|(d[140706+(k&255)>>0]|0)<<3)<<2)>>2])){c[g>>2]=e;f=0;break a}break}case 24:case 22:break;case 5:{c[g>>2]=e;f=0;break a}case 6:{if((j|0)<3){f=-2;break a}c[g>>2]=e;f=0;break a}case 7:{if((j|0)<4){f=-2;break a}c[g>>2]=e;f=0;break a}default:{c[g>>2]=e;f=0;break a}}b=b+72|0;k=e;b:while(1){h=k;k=k+2|0;e=f-k|0;if((e|0)<=1){f=-20;break a}h=a[h+3>>0]|0;i=a[k>>0]|0;if(!(h<<24>>24))j=d[b+(i&255)>>0]|0;else j=sY(h,i)|0;switch(j|0){case 27:case 26:case 25:case 24:case 22:continue b;case 5:{h=22;break b}case 6:{h=23;break b}case 7:{h=25;break b}case 36:case 30:case 11:case 32:case 21:case 10:case 9:{h=27;break b}case 29:break;default:{h=28;break b}}e=i&255;if(!(1<<(e&31)&c[56836+((e>>>5|(d[140962+(h&255)>>0]|0)<<3)<<2)>>2])){h=21;break}}if((h|0)==21){c[g>>2]=k;f=0;break}else if((h|0)==22){c[g>>2]=k;f=0;break}else if((h|0)==23){if((e|0)<3){f=-2;break}c[g>>2]=k;f=0;break}else if((h|0)==25){if((e|0)<4){f=-2;break}c[g>>2]=k;f=0;break}else if((h|0)==27){c[g>>2]=k;f=20;break}else if((h|0)==28){c[g>>2]=k;f=0;break}}else f=-1;while(0);return f|0}function HY(b,d,e){b=b|0;d=d|0;e=e|0;e=IY(e)|0;if((e|0)==-1)e=0;else{a[b+69>>0]=e;c[b>>2]=67;c[b+4>>2]=68;c[b+48>>2]=31;c[b+72>>2]=d;c[d>>2]=b;e=1}return e|0}function IY(a){a=a|0;var b=0;a:do if(!a)b=6;else{b=0;while(1){if((b|0)>=6){b=-1;break a}if(qZ(a,c[59964+(b<<2)>>2]|0)|0)break a;b=b+1|0}}while(0);return b|0}function JY(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return MY(58844,a,0,b,c,d)|0}function KY(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return MY(58844,a,1,b,c,d)|0}function LY(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;BX(58480,b,c,d);return}function MY(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;a:do if(f>>>0<g>>>0){l=c[d+72>>2]|0;i=f+1|0;b:do if((i|0)==(g|0)){i=a[d+69>>0]|0;if(((i<<24>>24)+-3|0)>>>0<3){i=-1;break a}switch(a[f>>0]|0){case 60:case 0:{i=-1;break a}case -17:case -1:case -2:break;default:break b}if(!((e|0)==1&i<<24>>24==0)){i=-1;break a}}else{k=a[f>>0]|0;i=a[i>>0]|0;j=((k&255)<<8|i&255)&65535;c:do if(j<<16>>16<-2){if(j<<16>>16>=-257){switch(j<<16>>16){case -257:break;default:break c}if((e|0)==1&(a[d+69>>0]|0)==0)break b;c[h>>2]=f+2;c[l>>2]=c[b+16>>2];i=14;break a}switch(j<<16>>16){case -4165:break;default:break c}if((e|0)==1)switch(a[d+69>>0]|0){case 0:case 3:case 4:case 5:break b;default:{}}i=f+2|0;if((i|0)==(g|0)){i=-1;break a}if((a[i>>0]|0)!=-65)break b;c[h>>2]=f+3;c[l>>2]=c[b+8>>2];i=14;break a}else{if(j<<16>>16<15360){switch(j<<16>>16){case -2:break;default:break c}if((e|0)==1&(a[d+69>>0]|0)==0)break b;c[h>>2]=f+2;c[l>>2]=c[b+20>>2];i=14;break a}switch(j<<16>>16){case 15360:break;default:break c}i=a[d+69>>0]|0;if(i<<24>>24==4){if((e|0)==1)break b}else if((e|0)==1&i<<24>>24==3)break b;i=c[b+20>>2]|0;c[l>>2]=i;i=ob[c[i+(e<<2)>>2]&127](i,f,g,h)|0;break a}while(0);if(k<<24>>24){if((e|0)==1|i<<24>>24!=0)break;i=c[b+20>>2]|0;c[l>>2]=i;i=ob[c[i+(e<<2)>>2]&127](i,f,g,h)|0;break a}if((e|0)==1?(a[d+69>>0]|0)==5:0)break;i=c[b+16>>2]|0;c[l>>2]=i;i=ob[c[i+(e<<2)>>2]&127](i,f,g,h)|0;break a}while(0);i=c[b+(a[d+69>>0]<<2)>>2]|0;c[l>>2]=i;i=ob[c[i+(e<<2)>>2]&127](i,f,g,h)|0}else i=-4;while(0);return i|0}function NY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;a:do if(e>>>0<f>>>0){i=e;m=f-i|0;k=(m&1|0)==0;m=m&-2;l=(m|0)==0;m=k|l?f:e+m|0;if(k|l^1){f=a[e>>0]|0;if(!(f<<24>>24)){h=a[e+1>>0]|0;j=h;h=d[b+72+(h&255)>>0]|0}else{h=a[e+1>>0]|0;j=h;h=sY(f,h)|0}do switch(h|0){case 12:{f=mZ(12,b,e+2|0,m,g)|0;break a}case 13:{f=mZ(13,b,e+2|0,m,g)|0;break a}case 2:{h=e+2|0;if((m-h|0)<=1){f=-1;break a}f=a[h>>0]|0;if(!(f<<24>>24))f=d[b+72+(d[e+3>>0]|0)>>0]|0;else f=sY(f,a[e+3>>0]|0)|0;switch(f|0){case 16:{f=nZ(b,e+4|0,m,g)|0;break a}case 15:{f=iZ(b,e+4|0,m,g)|0;break a}case 7:case 6:case 5:case 29:case 24:case 22:{c[g>>2]=e;f=29;break a}default:{c[g>>2]=h;f=0;break a}}}case 9:{if((e+2|0)==(m|0)){c[g>>2]=m;f=-15;break a}else i=7;break}case 10:case 21:{i=7;break}case 30:{f=cZ(b,e+2|0,m,g)|0;break a}case 35:{c[g>>2]=e+2;f=38;break a}case 20:{c[g>>2]=e+2;f=25;break a}case 4:{h=e+2|0;f=m-h|0;if((f|0)<=1){f=-26;break a}if((a[h>>0]|0)==0?(a[e+3>>0]|0)==93:0){if((f|0)<=3){f=-1;break a}if((a[e+4>>0]|0)==0?(a[e+5>>0]|0)==62:0){c[g>>2]=e+6;f=34;break a}}c[g>>2]=h;f=26;break a}case 31:{c[g>>2]=e+2;f=23;break a}case 32:{h=e+2|0;if((m-h|0)<=1){f=-24;break a}f=a[h>>0]|0;if(!(f<<24>>24))f=d[b+72+(d[e+3>>0]|0)>>0]|0;else f=sY(f,a[e+3>>0]|0)|0;switch(f|0){case 33:{c[g>>2]=e+4;f=36;break a}case 15:{c[g>>2]=e+4;f=35;break a}case 34:{c[g>>2]=e+4;f=37;break a}case 32:case 36:case 35:case 11:case 21:case 10:case 9:{c[g>>2]=h;f=24;break a}default:{c[g>>2]=h;f=0;break a}}}case 36:{c[g>>2]=e+2;f=21;break a}case 11:{c[g>>2]=e+2;f=17;break a}case 19:{f=oZ(b,e+2|0,m,g)|0;break a}case 5:{if((m-i|0)<2){f=-2;break a}c[g>>2]=e;f=0;break a}case 6:{if((m-i|0)<3){f=-2;break a}c[g>>2]=e;f=0;break a}case 7:{if((m-i|0)<4){f=-2;break a}c[g>>2]=e;f=0;break a}case 24:case 22:{f=18;i=61;break}case 23:case 27:case 26:case 25:{f=19;i=61;break}case 29:{i=f&255;h=j&255;f=h>>>5;h=1<<(h&31);if(!(h&c[56836+((f|d[140706+i>>0]<<3)<<2)>>2]))if(!(c[56836+((d[140962+i>>0]<<3|f)<<2)>>2]&h))i=64;else{f=19;i=61}else{f=18;i=61}break}default:i=64}while(0);if((i|0)==7){k=m;b=b+72|0;j=e;b:while(1){i=j;j=j+2|0;if((k-j|0)<=1){i=28;break}f=a[j>>0]|0;h=a[i+3>>0]|0;if(!(f<<24>>24))f=d[b+(h&255)>>0]|0;else f=sY(f,h)|0;switch(f|0){case 10:case 21:continue b;case 9:break;default:{i=27;break b}}if((i+4|0)==(m|0)){i=27;break}}if((i|0)==27){c[g>>2]=j;f=15;break}else if((i|0)==28){c[g>>2]=j;f=15;break}}else if((i|0)==61){l=b+72|0;h=e+2|0;c:while(1){e=f&255;d:while(1){k=m-h|0;if((k|0)<=1){i=104;break c}i=a[h>>0]|0;j=a[h+1>>0]|0;if(!(i<<24>>24))b=d[l+(j&255)>>0]|0;else b=sY(i,j)|0;switch(b|0){case 5:{i=73;break c}case 6:{i=74;break c}case 7:{i=76;break c}case 10:case 9:case 21:case 30:case 20:case 36:case 35:case 32:case 11:{i=78;break c}case 34:{i=94;break c}case 33:{i=97;break c}case 15:{i=100;break c}case 29:{k=j&255;if(!(1<<(k&31)&c[56836+((k>>>5|d[140962+(i&255)>>0]<<3)<<2)>>2])){i=71;break c}break}case 27:case 26:case 25:case 24:case 22:break;case 23:{k=h+2|0;switch(e&63){case 41:{f=19;h=k;continue c}case 18:break d;default:{h=k;continue d}}}default:{i=103;break c}}h=h+2|0}b=m-k|0;if((b|0)<=1){f=-1;break a}f=a[k>>0]|0;i=a[h+3>>0]|0;if(!(f<<24>>24))j=d[l+(i&255)>>0]|0;else j=sY(f,i)|0;switch(j|0){case 5:{i=89;break c}case 6:{i=90;break c}case 7:{i=92;break c}case 29:{e=i&255;if(!(1<<(e&31)&c[56836+((e>>>5|d[140962+(f&255)>>0]<<3)<<2)>>2])){i=87;break c}break}case 27:case 26:case 25:case 24:case 22:break;default:{f=19;h=k;continue c}}f=41;h=h+4|0}switch(i|0){case 71:{c[g>>2]=h;f=0;break a}case 73:{c[g>>2]=h;f=0;break a}case 74:{if((k|0)<3){f=-2;break a}c[g>>2]=h;f=0;break a}case 76:{if((k|0)<4){f=-2;break a}c[g>>2]=h;f=0;break a}case 78:{c[g>>2]=h;break a}case 87:{c[g>>2]=k;f=0;break a}case 89:{c[g>>2]=k;f=0;break a}case 90:{if((b|0)<3){f=-2;break a}c[g>>2]=k;f=0;break a}case 92:{if((b|0)<4){f=-2;break a}c[g>>2]=k;f=0;break a}case 94:if((f|0)==19){c[g>>2]=h;f=0;break a}else{c[g>>2]=h+2;f=32;break a}case 97:if((f|0)==19){c[g>>2]=h;f=0;break a}else{c[g>>2]=h+2;f=31;break a}case 100:if((f|0)==19){c[g>>2]=h;f=0;break a}else{c[g>>2]=h+2;f=30;break a}case 103:{c[g>>2]=h;f=0;break a}case 104:{f=0-f|0;break a}}}else if((i|0)==64){c[g>>2]=e;f=0;break}}else f=-1}else f=-4;while(0);return f|0}function OY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;a:do if(e>>>0<f>>>0){h=e;i=f-h|0;k=(i&1|0)==0;i=i&-2;j=(i|0)==0;i=k|j?f:e+i|0;if(k|j^1){f=a[e>>0]|0;if(!(f<<24>>24))f=d[b+72+(d[e+1>>0]|0)>>0]|0;else f=sY(f,a[e+1>>0]|0)|0;do switch(f|0){case 2:{f=fZ(b,e+2|0,i,g)|0;break a}case 3:{f=bZ(b,e+2|0,i,g)|0;break a}case 9:{h=e+2|0;if((i-h|0)<=1){f=-3;break a}f=a[h>>0]|0;if(!(f<<24>>24))f=d[b+72+(d[e+3>>0]|0)>>0]|0;else f=sY(f,a[e+3>>0]|0)|0;c[g>>2]=(f|0)==10?e+4|0:h;f=7;break a}case 10:{c[g>>2]=e+2;f=7;break a}case 4:{h=e+2|0;if((i-h|0)<=1){f=-5;break a}if((a[h>>0]|0)==0?(a[e+3>>0]|0)==93:0){f=e+4|0;if((i-f|0)<=1){f=-5;break a}if((a[f>>0]|0)==0?(a[e+5>>0]|0)==62:0){c[g>>2]=f;f=0;break a}else f=i}else f=i;break}case 5:{f=i;if((f-h|0)<2){f=-2;break a}h=e+2|0;break}case 6:{f=i;if((f-h|0)<3){f=-2;break a}h=e+3|0;break}case 7:{f=i;if((f-h|0)<4){f=-2;break a}h=e+4|0;break}case 8:case 1:case 0:{c[g>>2]=e;f=0;break a}default:{h=e+2|0;f=i}}while(0);j=b+72|0;b=h;b:while(1){e=f-b|0;if((e|0)<=1){h=52;break}h=a[b>>0]|0;i=a[b+1>>0]|0;if(!(h<<24>>24))h=d[j+(i&255)>>0]|0;else h=sY(h,i)|0;switch(h|0){case 10:case 9:case 8:case 1:case 0:case 2:case 3:{h=50;break b}case 5:{b=b+2|0;continue b}case 6:{if((e|0)<3){h=38;break b}b=b+3|0;continue b}case 7:{if((e|0)<4){h=41;break b}b=b+4|0;continue b}case 4:{if((e|0)<=3){h=50;break b}h=b+2|0;if(a[h>>0]|0){b=h;continue b}if((a[b+3>>0]|0)!=93){b=h;continue b}if((e|0)<=5){h=50;break b}i=b+4|0;if(a[i>>0]|0){b=h;continue b}if((a[b+5>>0]|0)==62){h=49;break b}else{b=h;continue b}}default:{b=b+2|0;continue b}}}if((h|0)==38){c[g>>2]=b;f=6;break}else if((h|0)==41){c[g>>2]=b;f=6;break}else if((h|0)==49){c[g>>2]=i;f=0;break}else if((h|0)==50){c[g>>2]=b;f=6;break}else if((h|0)==52){c[g>>2]=b;f=6;break}}else f=-1}else f=-4;while(0);return f|0}function PY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;a:do if(e>>>0<f>>>0){h=e;i=f-h|0;k=(i&1|0)==0;i=i&-2;j=(i|0)==0;i=k|j?f:e+i|0;if(k|j^1){f=a[e>>0]|0;if(!(f<<24>>24))f=d[b+72+(d[e+1>>0]|0)>>0]|0;else f=sY(f,a[e+1>>0]|0)|0;switch(f|0){case 4:{h=e+2|0;if((i-h|0)<=1){f=-1;break a}if((a[h>>0]|0)==0?(a[e+3>>0]|0)==93:0){f=e+4|0;if((i-f|0)<=1){f=-1;break a}if((a[f>>0]|0)==0?(a[e+5>>0]|0)==62:0){c[g>>2]=e+6;f=40;break a}}break}case 9:{h=e+2|0;if((i-h|0)<=1){f=-1;break a}f=a[h>>0]|0;if(!(f<<24>>24))f=d[b+72+(d[e+3>>0]|0)>>0]|0;else f=sY(f,a[e+3>>0]|0)|0;c[g>>2]=(f|0)==10?e+4|0:h;f=7;break a}case 10:{c[g>>2]=e+2;f=7;break a}case 5:{f=i;if((f-h|0)<2){f=-2;break a}h=e+2|0;i=f;break}case 6:{f=i;if((f-h|0)<3){f=-2;break a}h=e+3|0;i=f;break}case 7:{f=i;if((f-h|0)<4){f=-2;break a}h=e+4|0;i=f;break}case 8:case 1:case 0:{c[g>>2]=e;f=0;break a}default:h=e+2|0}j=b+72|0;b=h;b:while(1){e=i-b|0;if((e|0)<=1){h=40;break}f=a[b>>0]|0;h=a[b+1>>0]|0;if(!(f<<24>>24))f=d[j+(h&255)>>0]|0;else f=sY(f,h)|0;switch(f|0){case 10:case 9:case 8:case 1:case 0:case 4:{h=38;break b}case 6:{if((e|0)<3){h=35;break b}else f=3;break}case 7:{if((e|0)<4){h=37;break b}else f=4;break}default:f=2}b=b+f|0}if((h|0)==35){c[g>>2]=b;f=6;break}else if((h|0)==37){c[g>>2]=b;f=6;break}else if((h|0)==38){c[g>>2]=b;f=6;break}else if((h|0)==40){c[g>>2]=b;f=6;break}}else f=-1}else f=-4;while(0);return f|0}function QY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;k=f-e|0;k=(k&1|0)==0?f:e+(k&-2)|0;j=b+72|0;i=0;f=e;a:while(1){h=k-f|0;if((h|0)<=1){f=-1;break}b=a[f>>0]|0;e=a[f+1>>0]|0;if(!(b<<24>>24))b=d[j+(e&255)>>0]|0;else b=sY(b,e)|0;switch(b|0){case 8:case 1:case 0:{l=12;break a}case 5:{h=i;f=f+2|0;i=h;continue a}case 6:{if((h|0)<3){f=-2;break a}h=i;f=f+3|0;i=h;continue a}case 7:{if((h|0)<4){f=-2;break a}h=i;f=f+4|0;i=h;continue a}case 2:{b=f+2|0;if((k-b|0)<=1){f=-1;break a}if(a[b>>0]|0){h=i;f=b;i=h;continue a}if((a[f+3>>0]|0)!=33){h=i;f=b;i=h;continue a}b=f+4|0;if((k-b|0)<=1){f=-1;break a}if(a[b>>0]|0){h=i;f=b;i=h;continue a}h=(a[f+5>>0]|0)==91;i=i+(h&1)|0;f=h?f+6|0:b;continue a}case 4:{b=f+2|0;if((k-b|0)<=1){f=-1;break a}if(a[b>>0]|0){h=i;f=b;i=h;continue a}if((a[f+3>>0]|0)!=93){h=i;f=b;i=h;continue a}b=f+4|0;if((k-b|0)<=1){f=-1;break a}if(a[b>>0]|0){h=i;f=b;i=h;continue a}if((a[f+5>>0]|0)!=62){h=i;f=b;i=h;continue a}f=f+6|0;if(!i){l=26;break a}i=i+-1|0;continue a}default:{h=i;f=f+2|0;i=h;continue a}}}if((l|0)==12){c[g>>2]=f;f=0}else if((l|0)==26){c[g>>2]=f;f=42}return f|0}function RY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;do if(e>>>0<f>>>0){k=f;if((k-e|0)>1){l=b+72|0;j=e;a:while(1){if((k-j|0)<=1){i=30;break}h=a[j>>0]|0;i=a[j+1>>0]|0;if(!(h<<24>>24))h=d[l+(i&255)>>0]|0;else h=sY(h,i)|0;switch(h|0){case 3:{i=11;break a}case 2:{i=14;break a}case 10:{i=15;break a}case 9:{i=18;break a}case 21:{i=25;break a}case 5:{h=2;break}case 6:{h=3;break}case 7:{h=4;break}default:h=2}j=j+h|0}if((i|0)==11)if((j|0)==(e|0)){h=bZ(b,e+2|0,f,g)|0;break}else{c[g>>2]=j;h=6;break}else if((i|0)==14){c[g>>2]=j;h=0;break}else if((i|0)==15)if((j|0)==(e|0)){c[g>>2]=e+2;h=7;break}else{c[g>>2]=j;h=6;break}else if((i|0)==18){if((j|0)!=(e|0)){c[g>>2]=j;h=6;break}j=e+2|0;if((k-j|0)<=1){h=-3;break}h=a[j>>0]|0;i=a[e+3>>0]|0;if(!(h<<24>>24))h=d[l+(i&255)>>0]|0;else h=sY(h,i)|0;c[g>>2]=(h|0)==10?e+4|0:j;h=7;break}else if((i|0)==25)if((j|0)==(e|0)){c[g>>2]=e+2;h=39;break}else{c[g>>2]=j;h=6;break}else if((i|0)==30){c[g>>2]=j;h=6;break}}else h=-1}else h=-4;while(0);return h|0}function SY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;do if(e>>>0<f>>>0){k=f;if((k-e|0)>1){l=b+72|0;j=e;a:while(1){if((k-j|0)<=1){i=29;break}h=a[j>>0]|0;i=a[j+1>>0]|0;if(!(h<<24>>24))h=d[l+(i&255)>>0]|0;else h=sY(h,i)|0;switch(h|0){case 3:{i=11;break a}case 30:{i=14;break a}case 10:{i=17;break a}case 9:{i=20;break a}case 5:{h=2;break}case 6:{h=3;break}case 7:{h=4;break}default:h=2}j=j+h|0}if((i|0)==11)if((j|0)==(e|0)){h=bZ(b,e+2|0,f,g)|0;break}else{c[g>>2]=j;h=6;break}else if((i|0)==14)if((j|0)==(e|0)){h=cZ(b,e+2|0,f,g)|0;h=(h|0)==22?0:h;break}else{c[g>>2]=j;h=6;break}else if((i|0)==17)if((j|0)==(e|0)){c[g>>2]=e+2;h=7;break}else{c[g>>2]=j;h=6;break}else if((i|0)==20){if((j|0)!=(e|0)){c[g>>2]=j;h=6;break}j=e+2|0;if((k-j|0)<=1){h=-3;break}h=a[j>>0]|0;i=a[e+3>>0]|0;if(!(h<<24>>24))h=d[l+(i&255)>>0]|0;else h=sY(h,i)|0;c[g>>2]=(h|0)==10?e+4|0:j;h=7;break}else if((i|0)==29){c[g>>2]=j;h=6;break}}else h=-1}else h=-4;while(0);return h|0}function TY(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=d;b=c;while(1){c=a[e>>0]|0;if(!(c<<24>>24)){g=7;break}if((f-b|0)<2){b=0;break}if(a[b>>0]|0){b=0;break}if((a[b+1>>0]|0)!=c<<24>>24){b=0;break}e=e+1|0;b=b+2|0}if((g|0)==7)b=(b|0)==(d|0)&1;return b|0}function UY(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=b+72|0;f=c;a:while(1){b=a[f>>0]|0;e=a[f+1>>0]|0;if(!(b<<24>>24))b=d[g+(e&255)>>0]|0;else b=sY(b,e)|0;switch(b|0){case 5:{b=2;break}case 6:{b=3;break}case 7:{b=4;break}case 27:case 26:case 25:case 24:case 23:case 22:case 29:{b=2;break}default:break a}f=f+b|0}return f-c|0}function VY(b,c){b=b|0;c=c|0;var e=0,f=0;f=b+72|0;a:while(1){b=a[c>>0]|0;e=a[c+1>>0]|0;if(!(b<<24>>24))b=d[f+(e&255)>>0]|0;else b=sY(b,e)|0;switch(b|0){case 21:case 9:case 10:break;default:break a}c=c+2|0}return c|0}function WY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=b+72|0;m=0;n=0;b=1;a:while(1){l=e+2|0;h=a[l>>0]|0;j=h<<24>>24==0;i=e+3|0;k=a[i>>0]|0;if(j)h=d[o+(k&255)>>0]|0;else h=sY(h,k)|0;do switch(h|0){case 5:{if(b|0){i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}if((n|0)>=(f|0)){j=n;k=m;b=1;e=l;n=j;m=k;continue a}c[g+(n<<4)>>2]=l;a[g+(n<<4)+12>>0]=1;j=n;k=m;b=1;e=l;n=j;m=k;continue a}case 6:{if(b|0){j=b;k=n;l=m;e=i;b=j;n=k;m=l;continue a}if((n|0)>=(f|0)){k=n;l=m;b=1;e=i;n=k;m=l;continue a}c[g+(n<<4)>>2]=l;a[g+(n<<4)+12>>0]=1;k=n;l=m;b=1;e=i;n=k;m=l;continue a}case 7:{if(!b)if((n|0)<(f|0)){c[g+(n<<4)>>2]=l;a[g+(n<<4)+12>>0]=1;b=1}else b=1;k=n;l=m;e=e+4|0;n=k;m=l;continue a}case 24:case 22:case 29:{if(b|0){i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}if((n|0)>=(f|0)){j=n;k=m;b=1;e=l;n=j;m=k;continue a}c[g+(n<<4)>>2]=l;a[g+(n<<4)+12>>0]=1;j=n;k=m;b=1;e=l;n=j;m=k;continue a}case 12:{if((b|0)!=2){if((n|0)>=(f|0)){k=n;m=12;b=2;e=l;n=k;continue a}c[g+(n<<4)+4>>2]=e+4;k=n;m=12;b=2;e=l;n=k;continue a}if((m|0)!=12){j=n;k=m;b=2;e=l;n=j;m=k;continue a}if((n|0)<(f|0))c[g+(n<<4)+8>>2]=l;m=12;n=n+1|0;b=0;e=l;continue a}case 13:{if((b|0)!=2){if((n|0)>=(f|0)){k=n;m=13;b=2;e=l;n=k;continue a}c[g+(n<<4)+4>>2]=e+4;k=n;m=13;b=2;e=l;n=k;continue a}if((m|0)!=13){j=n;k=m;b=2;e=l;n=j;m=k;continue a}if((n|0)<(f|0))c[g+(n<<4)+8>>2]=l;m=13;n=n+1|0;b=0;e=l;continue a}case 3:{if((n|0)>=(f|0)){i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}a[g+(n<<4)+12>>0]=0;i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}case 21:{switch(b|0){case 1:{j=n;k=m;b=0;e=l;n=j;m=k;continue a}case 2:break;default:{i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}}if((n|0)>=(f|0)){j=n;k=m;b=2;e=l;n=j;m=k;continue a}i=g+(n<<4)+12|0;if(!(a[i>>0]|0)){j=n;k=m;b=2;e=l;n=j;m=k;continue a}do if(j&(l|0)!=(c[g+(n<<4)+4>>2]|0)&k<<24>>24==32){h=a[e+4>>0]|0;b=a[e+5>>0]|0;if(!(h<<24>>24)){if(b<<24>>24==32)break;b=d[o+(b&255)>>0]|0}else b=sY(h,b)|0;if((b|0)!=(m|0)){j=n;k=m;b=2;e=l;n=j;m=k;continue a}}while(0);a[i>>0]=0;j=n;k=m;b=2;e=l;n=j;m=k;continue a}case 10:case 9:{switch(b|0){case 1:{j=n;k=m;b=0;e=l;n=j;m=k;continue a}case 2:break;default:{i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}}if((n|0)>=(f|0)){j=n;k=m;b=2;e=l;n=j;m=k;continue a}a[g+(n<<4)+12>>0]=0;j=n;k=m;b=2;e=l;n=j;m=k;continue a}case 17:case 11:if((b|0)==2){j=n;k=m;b=2;e=l;n=j;m=k;continue a}else break a;default:{i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}}while(0)}return n|0}function XY(b,c){b=b|0;c=c|0;var d=0,e=0;b=c+4|0;a:do if(!(a[b>>0]|0))if((a[c+5>>0]|0)==120){c=c+6|0;b=0;while(1){b:while(1){if(!(a[c>>0]|0)){d=a[c+1>>0]|0;if(d<<24>>24==59){e=18;break a}d=d<<24>>24;switch(d|0){case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:case 48:{e=8;break b}case 70:case 69:case 68:case 67:case 66:case 65:{e=9;break b}case 102:case 101:case 100:case 99:case 98:case 97:{e=10;break b}default:{}}}c=c+2|0}if((e|0)==8)b=d+-48|b<<4;else if((e|0)==9)b=(b<<4)+-55+d|0;else if((e|0)==10)b=(b<<4)+-87+d|0;if((b|0)<1114112)c=c+2|0;else{b=-1;e=19;break}}}else{c=b;b=0;e=13}else{d=b;b=0;c=-1;e=16}while(0);while(1)if((e|0)==13){if(a[c>>0]|0){d=c;c=-1;e=16;continue}if((a[c+1>>0]|0)==59){e=18;continue}d=c;c=a[c+1>>0]|0;e=16;continue}else if((e|0)==16){b=(b*10|0)+-48+c|0;if((b|0)>=1114112){b=-1;e=19;continue}c=d+2|0;e=13;continue}else if((e|0)==18){b=jX(b)|0;e=19;continue}else if((e|0)==19)return b|0;return 0}function YY(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;a:do switch((d-c|0)/2|0|0){case 2:{if((a[c+2>>0]|0)==0?(a[c+3>>0]|0)==116:0){if(!(a[c>>0]|0))b=a[c+1>>0]|0;else b=-1;b=(b|0)==108?60:(b|0)==103?62:0}else e=27;break}case 3:{if((((((a[c>>0]|0)==0?(a[c+1>>0]|0)==97:0)?(a[c+2>>0]|0)==0:0)?(a[c+3>>0]|0)==109:0)?(a[c+4>>0]|0)==0:0)?(a[c+5>>0]|0)==112:0)b=38;else e=27;break}case 4:{if(!(a[c>>0]|0))switch(a[c+1>>0]|0){case 113:{if(a[c+2>>0]|0){e=27;break a}if((a[c+3>>0]|0)!=117){e=27;break a}if(a[c+4>>0]|0){e=27;break a}if((a[c+5>>0]|0)!=111){e=27;break a}if(a[c+6>>0]|0){e=27;break a}if((a[c+7>>0]|0)==116){b=34;break a}else{e=27;break a}}case 97:{if(a[c+2>>0]|0){e=27;break a}if((a[c+3>>0]|0)!=112){e=27;break a}if(a[c+4>>0]|0){e=27;break a}if((a[c+5>>0]|0)!=111){e=27;break a}if(a[c+6>>0]|0){e=27;break a}if((a[c+7>>0]|0)==115){b=39;break a}else{e=27;break a}}default:{e=27;break a}}else e=27;break}default:e=27}while(0);if((e|0)==27)b=0;return b|0}function ZY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;j=b+72|0;k=g+4|0;while(1){if((f-e|0)<=1)break;b=a[e>>0]|0;h=a[e+1>>0]|0;if(!(b<<24>>24))b=d[j+(h&255)>>0]|0;else b=sY(b,h)|0;switch(b|0){case 5:{e=e+2|0;break}case 6:{e=e+3|0;break}case 7:{e=e+4|0;break}case 10:{c[k>>2]=-1;c[g>>2]=(c[g>>2]|0)+1;e=e+2|0;break}case 9:{c[g>>2]=(c[g>>2]|0)+1;i=e+2|0;if((f-i|0)>1){b=a[i>>0]|0;h=a[e+3>>0]|0;if(!(b<<24>>24))b=d[j+(h&255)>>0]|0;else b=sY(b,h)|0;e=(b|0)==10?e+4|0:i}else e=i;c[k>>2]=-1;break}default:e=e+2|0}c[k>>2]=(c[k>>2]|0)+1}return}function _Y(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;k=f+-2|0;j=b+72|0;a:while(1){h=e+2|0;if((k-h|0)<=1){f=1;break}f=a[h>>0]|0;i=f<<24>>24==0;b=a[e+3>>0]|0;if(i)f=d[j+(b&255)>>0]|0;else f=sY(f,b)|0;switch(f|0){case 23:case 19:case 30:case 33:case 16:case 18:case 10:case 9:case 15:case 14:case 17:case 35:case 34:case 32:case 31:case 13:case 27:case 24:case 25:{e=h;continue a}case 21:if(i&b<<24>>24==9){l=12;break a}else{e=h;continue a}case 22:case 26:{if(!i){l=12;break a}if(b<<24>>24>=0){e=h;continue a}break}default:if(!i){l=12;break a}}switch(b<<24>>24|0){case 64:case 36:{e=h;break}default:{l=12;break a}}}if((l|0)==12){c[g>>2]=h;f=0}return f|0}function $Y(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=c[e>>2]|0;k=j+(f-j&-2)|0;l=k;m=h;a:while(1){if(j>>>0>=k>>>0){b=0;break}i=a[j+1>>0]|0;b=a[j>>0]|0;f=b&255;switch(b<<24>>24){case 0:{if(i<<24>>24>-1){b=c[g>>2]|0;if((b|0)==(h|0)){b=2;break a}c[g>>2]=b+1;a[b>>0]=i;b=j}else n=7;break}case 7:case 6:case 5:case 4:case 3:case 2:case 1:{n=7;break}case -37:case -38:case -39:case -40:{b=c[g>>2]|0;if((m-b|0)<4){b=2;break a}if((l-j|0)<4){b=1;break a}o=i&255;i=(f<<2&12|o>>>6)+1|0;c[g>>2]=b+1;a[b>>0]=i>>>2|240;b=c[g>>2]|0;c[g>>2]=b+1;a[b>>0]=o>>>2&15|i<<4&48|128;b=j+2|0;i=d[j+3>>0]|0;f=(o<<4&48|i>>>6|a[b>>0]<<2&12|128)&255;j=c[g>>2]|0;c[g>>2]=j+1;a[j>>0]=f;j=c[g>>2]|0;c[g>>2]=j+1;a[j>>0]=i&63|128;break}default:{b=c[g>>2]|0;if((m-b|0)<3){b=2;break a}c[g>>2]=b+1;a[b>>0]=f>>>4|224;o=i&255;b=c[g>>2]|0;c[g>>2]=b+1;a[b>>0]=o>>>6|f<<2&60|128;b=c[g>>2]|0;c[g>>2]=b+1;a[b>>0]=o&63|128;b=j}}if((n|0)==7){n=0;b=c[g>>2]|0;if((m-b|0)<2){b=2;break}o=i&255;c[g>>2]=b+1;a[b>>0]=o>>>6|f<<2|192;b=c[g>>2]|0;c[g>>2]=b+1;a[b>>0]=o&63|128;b=j}j=b+2|0}c[e>>2]=j;return b|0}function aZ(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;j=c[f>>2]|0;l=g-j&-2;e=j+l|0;if((l|0)>(i-(c[h>>2]|0)|0)){k=e+-2|0;g=(a[k>>0]&-8)<<24>>24==-40;l=g&1;e=g?k:e}else l=0;g=j;while(1){j=g>>>0<e>>>0;k=c[h>>2]|0;if(!(j&k>>>0<i>>>0))break;j=((d[g>>0]|0)<<8|(d[g+1>>0]|0))&65535;c[h>>2]=k+2;b[k>>1]=j;k=(c[f>>2]|0)+2|0;c[f>>2]=k;g=k}return ((k|0)!=(i|0)|j^1?l:2)|0}function bZ(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;l=f;j=l-e|0;a:do if((j|0)>1){k=a[e>>0]|0;if(!(k<<24>>24)){i=a[e+1>>0]|0;h=d[b+72+(i&255)>>0]|0}else{i=a[e+1>>0]|0;h=sY(k,i)|0}switch(h|0){case 29:{j=i&255;if(!(1<<(j&31)&c[56836+((j>>>5|(d[140706+(k&255)>>0]|0)<<3)<<2)>>2])){c[g>>2]=e;b=0;break a}break}case 24:case 22:break;case 5:{c[g>>2]=e;b=0;break a}case 6:{if((j|0)<3){b=-2;break a}c[g>>2]=e;b=0;break a}case 7:{if((j|0)<4){b=-2;break a}c[g>>2]=e;b=0;break a}case 19:{b=dZ(b,e+2|0,f,g)|0;break a}default:{c[g>>2]=e;b=0;break a}}k=b+72|0;j=e;b:while(1){i=j+2|0;e=l-i|0;if((e|0)<=1){b=-1;break a}b=a[i>>0]|0;f=a[j+3>>0]|0;if(!(b<<24>>24))h=d[k+(f&255)>>0]|0;else h=sY(b,f)|0;switch(h|0){case 27:case 26:case 25:case 24:case 22:{j=i;continue b}case 5:{f=23;break b}case 6:{f=24;break b}case 7:{f=26;break b}case 18:{f=28;break b}case 29:break;default:{f=29;break b}}e=f&255;if(!(1<<(e&31)&c[56836+((e>>>5|(d[140962+(b&255)>>0]|0)<<3)<<2)>>2])){f=22;break}else j=i}if((f|0)==22){c[g>>2]=i;b=0;break}else if((f|0)==23){c[g>>2]=i;b=0;break}else if((f|0)==24){if((e|0)<3){b=-2;break}c[g>>2]=i;b=0;break}else if((f|0)==26){if((e|0)<4){b=-2;break}c[g>>2]=i;b=0;break}else if((f|0)==28){c[g>>2]=j+4;b=9;break}else if((f|0)==29){c[g>>2]=i;b=0;break}}else b=-1;while(0);return b|0}function cZ(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;j=f-e|0;a:do if((j|0)>1){k=a[e>>0]|0;if(!(k<<24>>24)){i=a[e+1>>0]|0;h=d[b+72+(i&255)>>0]|0}else{i=a[e+1>>0]|0;h=sY(k,i)|0}switch(h|0){case 29:{l=i&255;if(!(1<<(l&31)&c[56836+((l>>>5|(d[140706+(k&255)>>0]|0)<<3)<<2)>>2])){c[g>>2]=e;f=0;break a}break}case 24:case 22:break;case 5:{c[g>>2]=e;f=0;break a}case 6:{if((j|0)<3){f=-2;break a}c[g>>2]=e;f=0;break a}case 7:{if((j|0)<4){f=-2;break a}c[g>>2]=e;f=0;break a}case 30:case 9:case 10:case 21:{c[g>>2]=e;f=22;break a}default:{c[g>>2]=e;f=0;break a}}l=b+72|0;b=e;b:while(1){k=b+2|0;e=f-k|0;if((e|0)<=1){f=-1;break a}h=a[k>>0]|0;i=a[b+3>>0]|0;if(!(h<<24>>24))j=d[l+(i&255)>>0]|0;else j=sY(h,i)|0;switch(j|0){case 27:case 26:case 25:case 24:case 22:{b=k;continue b}case 5:{h=23;break b}case 6:{h=24;break b}case 7:{h=26;break b}case 18:{h=28;break b}case 29:break;default:{h=29;break b}}e=i&255;if(!(1<<(e&31)&c[56836+((e>>>5|(d[140962+(h&255)>>0]|0)<<3)<<2)>>2])){h=22;break}else b=k}if((h|0)==22){c[g>>2]=k;f=0;break}else if((h|0)==23){c[g>>2]=k;f=0;break}else if((h|0)==24){if((e|0)<3){f=-2;break}c[g>>2]=k;f=0;break}else if((h|0)==26){if((e|0)<4){f=-2;break}c[g>>2]=k;f=0;break}else if((h|0)==28){c[g>>2]=b+4;f=28;break}else if((h|0)==29){c[g>>2]=k;f=0;break}}else f=-1;while(0);return f|0}function dZ(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=f;a:do if((k-e|0)>1){i=a[e>>0]|0;h=a[e+1>>0]|0;do if(!(i<<24>>24))if(h<<24>>24==120){h=eZ(b,e+2|0,f,g)|0;break a}else{h=d[b+72+(h&255)>>0]|0;break}else h=sY(i,h)|0;while(0);if((h|0)!=25){c[g>>2]=e;h=0;break}j=b+72|0;b=e;b:while(1){i=b+2|0;if((k-i|0)<=1){h=-1;break a}h=a[i>>0]|0;f=a[b+3>>0]|0;if(!(h<<24>>24))h=d[j+(f&255)>>0]|0;else h=sY(h,f)|0;switch(h|0){case 25:{b=i;break}case 18:{f=15;break b}default:{f=16;break b}}}if((f|0)==15){c[g>>2]=b+4;h=10;break}else if((f|0)==16){c[g>>2]=i;h=0;break}}else h=-1;while(0);return h|0}function eZ(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;a:do if((f-e|0)>1){h=a[e>>0]|0;if(!(h<<24>>24))h=d[b+72+(d[e+1>>0]|0)>>0]|0;else h=sY(h,a[e+1>>0]|0)|0;if((h&-2|0)!=24){c[g>>2]=e;f=0;break}j=b+72|0;b:while(1){i=e+2|0;if((f-i|0)<=1){f=-1;break a}h=a[i>>0]|0;b=a[e+3>>0]|0;if(!(h<<24>>24))h=d[j+(b&255)>>0]|0;else h=sY(h,b)|0;switch(h|0){case 24:case 25:{e=i;break}case 18:{h=13;break b}default:{h=14;break b}}}if((h|0)==13){c[g>>2]=e+4;f=10;break}else if((h|0)==14){c[g>>2]=i;f=0;break}}else f=-1;while(0);return f|0}function fZ(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f;j=o-e|0;a:do if((j|0)>1){k=a[e>>0]|0;if(!(k<<24>>24)){i=a[e+1>>0]|0;h=d[b+72+(i&255)>>0]|0}else{i=a[e+1>>0]|0;h=sY(k,i)|0}switch(h|0){case 29:{m=i&255;if(!(1<<(m&31)&c[56836+((m>>>5|d[140706+(k&255)>>0]<<3)<<2)>>2])){c[g>>2]=e;h=0;break a}break}case 24:case 22:break;case 5:{c[g>>2]=e;h=0;break a}case 6:{if((j|0)<3){h=-2;break a}c[g>>2]=e;h=0;break a}case 7:{if((j|0)<4){h=-2;break a}c[g>>2]=e;h=0;break a}case 16:{i=e+2|0;if((o-i|0)<=1){h=-1;break a}h=a[i>>0]|0;if(!(h<<24>>24))h=d[b+72+(d[e+3>>0]|0)>>0]|0;else h=sY(h,a[e+3>>0]|0)|0;switch(h|0){case 27:{h=gZ(b,e+4|0,f,g)|0;break a}case 20:{h=hZ(e+4|0,f,g)|0;break a}default:{c[g>>2]=i;h=0;break a}}}case 15:{h=iZ(b,e+2|0,f,g)|0;break a}case 17:{h=jZ(b,e+2|0,f,g)|0;break a}default:{c[g>>2]=e;h=0;break a}}m=b+72|0;l=0;h=e+2|0;b:while(1){c:while(1){i=o-h|0;if((i|0)<=1){h=-1;break a}j=a[h>>0]|0;k=a[h+1>>0]|0;if(!(j<<24>>24))e=d[m+(k&255)>>0]|0;else e=sY(j,k)|0;switch(e|0){case 5:{n=34;break b}case 6:{n=35;break b}case 7:{n=37;break b}case 10:case 9:case 21:{n=55;break b}case 11:{n=69;break b}case 17:break b;case 23:break c;case 29:{e=k&255;if(!(1<<(e&31)&c[56836+((e>>>5|d[140962+(j&255)>>0]<<3)<<2)>>2])){n=32;break b}break}case 27:case 26:case 25:case 24:case 22:break;default:{n=75;break b}}h=h+2|0}if(l|0){n=40;break}e=h+2|0;l=o-e|0;if((l|0)<=1){h=-1;break a}i=a[e>>0]|0;j=a[h+3>>0]|0;if(!(i<<24>>24))k=d[m+(j&255)>>0]|0;else k=sY(i,j)|0;switch(k|0){case 5:{n=49;break b}case 6:{n=50;break b}case 7:{n=52;break b}case 29:{l=j&255;if(!(1<<(l&31)&c[56836+((l>>>5|d[140706+(i&255)>>0]<<3)<<2)>>2])){n=47;break b}break}case 24:case 22:break;default:{n=54;break b}}l=1;h=h+4|0}d:switch(n|0){case 32:{c[g>>2]=h;h=0;break a}case 34:{c[g>>2]=h;h=0;break a}case 35:{if((i|0)<3){h=-2;break a}c[g>>2]=h;h=0;break a}case 37:{if((i|0)<4){h=-2;break a}c[g>>2]=h;h=0;break a}case 40:{c[g>>2]=h;h=0;break a}case 47:{c[g>>2]=e;h=0;break a}case 49:{c[g>>2]=e;h=0;break a}case 50:{if((l|0)<3){h=-2;break a}c[g>>2]=e;h=0;break a}case 52:{if((l|0)<4){h=-2;break a}c[g>>2]=e;h=0;break a}case 54:{c[g>>2]=e;h=0;break a}case 55:{e:while(1){n=0;i=h+2|0;j=o-i|0;if((j|0)<=1){h=-1;break a}k=a[i>>0]|0;e=a[h+3>>0]|0;if(!(k<<24>>24))l=d[m+(e&255)>>0]|0;else l=sY(k,e)|0;switch(l|0){case 11:{h=i;n=69;break d}case 17:{h=i;break d}case 10:case 9:case 21:{h=i;n=55;break}case 29:{n=60;break e}case 24:case 22:break e;case 5:{n=63;break e}case 6:{n=64;break e}case 7:{n=66;break e}default:{n=68;break e}}}if((n|0)==60){o=e&255;if(!(1<<(o&31)&c[56836+((o>>>5|d[140706+(k&255)>>0]<<3)<<2)>>2])){c[g>>2]=i;h=0;break a}}else if((n|0)==63){c[g>>2]=i;h=0;break a}else if((n|0)==64){if((j|0)<3){h=-2;break a}c[g>>2]=i;h=0;break a}else if((n|0)==66){if((j|0)<4){h=-2;break a}c[g>>2]=i;h=0;break a}else if((n|0)==68){c[g>>2]=i;h=0;break a}h=kZ(b,h+4|0,f,g)|0;break a}case 75:{c[g>>2]=h;h=0;break a}}if((n|0)==69){c[g>>2]=h+2;h=2;break}i=h+2|0;if((o-i|0)>1){if((a[i>>0]|0)==0?(a[h+3>>0]|0)==62:0){c[g>>2]=h+4;h=4;break}c[g>>2]=i;h=0}else h=-1}else h=-1;while(0);return h|0}function gZ(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;j=f;a:do if((j-e|0)>1){if((a[e>>0]|0)==0?(a[e+1>>0]|0)==45:0){i=b+72|0;h=e+2|0;b:while(1){e=j-h|0;if((e|0)<=1){f=-1;break a}f=a[h>>0]|0;b=a[h+1>>0]|0;if(!(f<<24>>24))f=d[i+(b&255)>>0]|0;else f=sY(f,b)|0;switch(f|0){case 8:case 1:case 0:{k=16;break b}case 5:{h=h+2|0;continue b}case 6:{if((e|0)<3){f=-2;break a}h=h+3|0;continue b}case 7:{if((e|0)<4){f=-2;break a}h=h+4|0;continue b}case 27:{f=h+2|0;if((j-f|0)<=1){f=-1;break a}if(a[f>>0]|0){h=f;continue b}if((a[h+3>>0]|0)==45)break b;else{h=f;continue b}}default:{h=h+2|0;continue b}}}if((k|0)==16){c[g>>2]=h;f=0;break}f=h+4|0;if((j-f|0)<=1){f=-1;break}if((a[f>>0]|0)==0?(a[h+5>>0]|0)==62:0){c[g>>2]=h+6;f=13;break}c[g>>2]=f;f=0;break}c[g>>2]=e;f=0}else f=-1;while(0);return f|0}function hZ(b,d,e){b=b|0;d=d|0;e=e|0;if((d-b|0)>11){d=0;while(1){if((d|0)>=6){d=8;break}if(a[b>>0]|0){d=0;break}if((a[b+1>>0]|0)!=(a[141218+d>>0]|0)){d=0;break}d=d+1|0;b=b+2|0}c[e>>2]=b}else d=-1;return d|0}function iZ(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;p=q;o=f;i=o-e|0;a:do if((i|0)>1){j=a[e>>0]|0;if(!(j<<24>>24)){h=a[e+1>>0]|0;f=d[b+72+(h&255)>>0]|0}else{h=a[e+1>>0]|0;f=sY(j,h)|0}switch(f|0){case 29:{m=h&255;if(!(1<<(m&31)&c[56836+((m>>>5|d[140706+(j&255)>>0]<<3)<<2)>>2])){c[g>>2]=e;f=0;break a}break}case 24:case 22:break;case 5:{c[g>>2]=e;f=0;break a}case 6:{if((i|0)<3){f=-2;break a}c[g>>2]=e;f=0;break a}case 7:{if((i|0)<4){f=-2;break a}c[g>>2]=e;f=0;break a}default:{c[g>>2]=e;f=0;break a}}m=b+72|0;k=e;b:while(1){f=k+2|0;h=o-f|0;if((h|0)<=1){f=-1;break a}i=a[f>>0]|0;j=a[k+3>>0]|0;if(!(i<<24>>24))b=d[m+(j&255)>>0]|0;else b=sY(i,j)|0;switch(b|0){case 27:case 26:case 25:case 24:case 22:{k=f;continue b}case 5:{n=22;break b}case 6:{n=23;break b}case 7:{n=25;break b}case 10:case 9:case 21:{n=27;break b}case 15:{n=46;break b}case 29:break;default:break b}k=j&255;if(!(1<<(k&31)&c[56836+((k>>>5|d[140962+(i&255)>>0]<<3)<<2)>>2])){n=21;break}else k=f}if((n|0)==21){c[g>>2]=f;f=0;break}else if((n|0)==22){c[g>>2]=f;f=0;break}else if((n|0)==23){if((h|0)<3){f=-2;break}c[g>>2]=f;f=0;break}else if((n|0)==25){if((h|0)<4){f=-2;break}c[g>>2]=f;f=0;break}else if((n|0)==27){if(!(lZ(e,f,p)|0)){c[g>>2]=f;f=0;break}j=k+4|0;c:while(1){i=o-j|0;if((i|0)<=1){f=-1;break a}f=a[j>>0]|0;h=a[j+1>>0]|0;if(!(f<<24>>24))f=d[m+(h&255)>>0]|0;else f=sY(f,h)|0;switch(f|0){case 8:case 1:case 0:{n=40;break c}case 5:{j=j+2|0;continue c}case 6:{if((i|0)<3){f=-2;break a}j=j+3|0;continue c}case 7:{if((i|0)<4){f=-2;break a}j=j+4|0;continue c}case 15:{f=j+2|0;if((o-f|0)<=1){f=-1;break a}if(a[f>>0]|0){j=f;continue c}if((a[j+3>>0]|0)==62){n=44;break c}else{j=f;continue c}}default:{j=j+2|0;continue c}}}if((n|0)==40){c[g>>2]=j;f=0;break}else if((n|0)==44){c[g>>2]=j+4;f=c[p>>2]|0;break}}else if((n|0)==46){if(!(lZ(e,f,p)|0)){c[g>>2]=f;f=0;break}f=k+4|0;if((o-f|0)<=1){f=-1;break}if((a[f>>0]|0)==0?(a[k+5>>0]|0)==62:0){c[g>>2]=k+6;f=c[p>>2]|0;break}}c[g>>2]=f;f=0}else f=-1;while(0);l=q;return f|0}function jZ(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;j=f-e|0;a:do if((j|0)>1){k=a[e>>0]|0;if(!(k<<24>>24)){i=a[e+1>>0]|0;h=d[b+72+(i&255)>>0]|0}else{i=a[e+1>>0]|0;h=sY(k,i)|0}switch(h|0){case 29:{l=i&255;if(!(1<<(l&31)&c[56836+((l>>>5|(d[140706+(k&255)>>0]|0)<<3)<<2)>>2])){c[g>>2]=e;f=0;break a}break}case 24:case 22:break;case 5:{c[g>>2]=e;f=0;break a}case 6:{if((j|0)<3){f=-2;break a}c[g>>2]=e;f=0;break a}case 7:{if((j|0)<4){f=-2;break a}c[g>>2]=e;f=0;break a}default:{c[g>>2]=e;f=0;break a}}l=b+72|0;b=e;b:while(1){j=b+2|0;e=f-j|0;if((e|0)<=1){f=-1;break a}h=a[j>>0]|0;i=a[b+3>>0]|0;if(!(h<<24>>24))k=d[l+(i&255)>>0]|0;else k=sY(h,i)|0;switch(k|0){case 23:case 27:case 26:case 25:case 24:case 22:{b=j;continue b}case 5:{h=22;break b}case 6:{h=23;break b}case 7:{h=25;break b}case 10:case 9:case 21:{h=27;break b}case 11:{h=34;break b}case 29:break;default:{h=35;break b}}e=i&255;if(!(1<<(e&31)&c[56836+((e>>>5|(d[140962+(h&255)>>0]|0)<<3)<<2)>>2])){h=21;break}else b=j}if((h|0)==21){c[g>>2]=j;f=0;break}else if((h|0)==22){c[g>>2]=j;f=0;break}else if((h|0)==23){if((e|0)<3){f=-2;break}c[g>>2]=j;f=0;break}else if((h|0)==25){if((e|0)<4){f=-2;break}c[g>>2]=j;f=0;break}else if((h|0)==27){c:while(1){k=j+2|0;if((f-k|0)<=1){f=-1;break a}h=a[k>>0]|0;i=a[j+3>>0]|0;if(!(h<<24>>24))h=d[l+(i&255)>>0]|0;else h=sY(h,i)|0;switch(h|0){case 10:case 9:case 21:{j=k;h=27;break}case 11:{h=32;break c}default:{h=33;break c}}}if((h|0)==32){c[g>>2]=j+4;f=5;break}else if((h|0)==33){c[g>>2]=k;f=0;break}}else if((h|0)==34){c[g>>2]=b+4;f=5;break}else if((h|0)==35){c[g>>2]=j;f=0;break}}else f=-1;while(0);return f|0}function kZ(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+16|0;q=s;c[q>>2]=e;r=f;o=b+72|0;h=0;a:while(1){b:while(1){m=r-e|0;if((m|0)<=1){e=-1;break a}i=a[e>>0]|0;j=a[e+1>>0]|0;if(!(i<<24>>24))k=d[o+(j&255)>>0]|0;else k=sY(i,j)|0;switch(k|0){case 5:{p=11;break a}case 6:{p=12;break a}case 7:{p=14;break a}case 23:{p=16;break b}case 10:case 9:case 21:{p=31;break b}case 14:{p=37;break b}case 29:{n=j&255;if(!(1<<(n&31)&c[56836+((n>>>5|d[140962+(i&255)>>0]<<3)<<2)>>2])){p=9;break a}break}case 27:case 26:case 25:case 24:case 22:break;default:{p=89;break a}}n=e+2|0;c[q>>2]=n;e=n}c:do if((p|0)==16){p=0;if(h|0){p=17;break a}h=e+2|0;c[q>>2]=h;i=h;j=r-i|0;if((j|0)<=1){e=-1;break a}k=a[h>>0]|0;m=a[e+3>>0]|0;if(!(k<<24>>24))n=d[o+(m&255)>>0]|0;else n=sY(k,m)|0;switch(n|0){case 5:{p=25;break a}case 6:{p=26;break a}case 7:{p=28;break a}case 24:case 22:{h=1;break c}case 29:break;default:{p=30;break a}}n=m&255;if(!(1<<(n&31)&c[56836+((n>>>5|d[140706+(k&255)>>0]<<3)<<2)>>2])){p=24;break a}else h=1}else if((p|0)==31)while(1){p=0;i=e+2|0;c[q>>2]=i;j=i;if((r-j|0)<=1){e=-1;break a}h=a[i>>0]|0;e=a[e+3>>0]|0;if(!(h<<24>>24))e=d[o+(e&255)>>0]|0;else e=sY(h,e)|0;switch(e|0){case 14:{e=i;p=37;break c}case 9:case 10:case 21:{e=i;p=31;break}default:{p=36;break a}}}while(0);d:do if((p|0)==37){while(1){p=0;j=e+2|0;c[q>>2]=j;k=j;if((r-k|0)<=1){e=-1;break a}h=a[j>>0]|0;i=a[e+3>>0]|0;if(!(h<<24>>24))m=d[o+(i&255)>>0]|0;else m=sY(h,i)|0;if((m|1|0)==13)break;switch(m|0){case 9:case 10:case 21:{e=j;p=37;break}default:{p=43;break a}}}e=e+4|0;c[q>>2]=e;e:while(1){j=r-e|0;if((j|0)<=1){e=-1;break a}h=a[e>>0]|0;i=a[e+1>>0]|0;if(!(h<<24>>24))h=d[o+(i&255)>>0]|0;else h=sY(h,i)|0;if((h|0)==(m|0))break;switch(h|0){case 8:case 1:case 0:{p=56;break a}case 2:{p=61;break a}case 5:{n=e+2|0;c[q>>2]=n;e=n;continue e}case 6:{if((j|0)<3){e=-2;break a}n=e+3|0;c[q>>2]=n;e=n;continue e}case 7:{if((j|0)<4){e=-2;break a}n=e+4|0;c[q>>2]=n;e=n;continue e}case 3:{e=bZ(b,e+2|0,f,q)|0;if((e|0)<1){p=59;break a}e=c[q>>2]|0;continue e}default:{n=e+2|0;c[q>>2]=n;e=n;continue e}}}i=e+2|0;c[q>>2]=i;k=i;if((r-k|0)<=1){e=-1;break a}h=a[i>>0]|0;j=a[e+3>>0]|0;if(!(h<<24>>24))h=d[o+(j&255)>>0]|0;else h=sY(h,j)|0;switch(h|0){case 11:{p=81;break a}case 17:{p=82;break a}case 10:case 9:case 21:{e=i;break}default:{p=68;break a}}f:while(1){i=e+2|0;c[q>>2]=i;h=i;j=r-h|0;if((j|0)<=1){e=-1;break a}k=a[i>>0]|0;m=a[e+3>>0]|0;if(!(k<<24>>24))n=d[o+(m&255)>>0]|0;else n=sY(k,m)|0;switch(n|0){case 5:{p=76;break a}case 6:{p=77;break a}case 7:{p=79;break a}case 11:{p=81;break a}case 17:{p=82;break a}case 24:case 22:{h=0;break d}case 10:case 9:case 21:{e=i;break}case 29:break f;default:{p=87;break a}}}n=m&255;if(!(1<<(n&31)&c[56836+((n>>>5|d[140706+(k&255)>>0]<<3)<<2)>>2])){p=75;break a}else h=0}while(0);e=e+4|0;c[q>>2]=e}switch(p|0){case 9:{c[g>>2]=e;e=0;break}case 11:{c[g>>2]=e;e=0;break}case 12:{if((m|0)<3)e=-2;else{c[g>>2]=e;e=0}break}case 14:{if((m|0)<4)e=-2;else{c[g>>2]=e;e=0}break}case 17:{c[g>>2]=e;e=0;break}case 24:{c[g>>2]=h;e=0;break}case 25:{c[g>>2]=h;e=0;break}case 26:{if((j|0)<3)e=-2;else{c[g>>2]=h;e=0}break}case 28:{if((j|0)<4)e=-2;else{c[g>>2]=h;e=0}break}case 30:{c[g>>2]=i;e=0;break}case 36:{c[g>>2]=j;e=0;break}case 43:{c[g>>2]=k;e=0;break}case 56:{c[g>>2]=e;e=0;break}case 59:{if(!e){c[g>>2]=c[q>>2];e=0}break}case 61:{c[g>>2]=e;e=0;break}case 68:{c[g>>2]=k;e=0;break}case 75:{c[g>>2]=i;e=0;break}case 76:{c[g>>2]=i;e=0;break}case 77:{if((j|0)<3)e=-2;else{c[g>>2]=i;e=0}break}case 79:{if((j|0)<4)e=-2;else{c[g>>2]=i;e=0}break}case 81:{c[g>>2]=e+4;e=1;break}case 82:{h=i+2|0;c[q>>2]=h;e=h;if((r-e|0)>1){if((a[h>>0]|0)==0?(a[i+3>>0]|0)==62:0){c[g>>2]=i+4;e=3;break}c[g>>2]=e;e=0}else e=-1;break}case 87:{c[g>>2]=h;e=0;break}case 89:{c[g>>2]=e;e=0;break}}l=s;return e|0}function lZ(b,d,e){b=b|0;d=d|0;e=e|0;c[e>>2]=11;a:do if((d-b|0)==6?(a[b>>0]|0)==0:0){switch(a[b+1>>0]|0){case 120:{d=0;break}case 88:{d=1;break}default:{d=1;break a}}if(!(a[b+2>>0]|0)){switch(a[b+3>>0]|0){case 109:break;case 77:{d=1;break}default:{d=1;break a}}if(!(a[b+4>>0]|0)){switch(a[b+5>>0]|0){case 108:break;case 76:{d=0;break a}default:{d=1;break a}}if(!d){c[e>>2]=12;d=1}else d=0}else d=1}else d=1}else d=1;while(0);return d|0}function mZ(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;k=e+72|0;a:while(1){b:while(1){j=g-f|0;if((j|0)<=1){f=-1;break a}e=a[f>>0]|0;i=a[f+1>>0]|0;if(!(e<<24>>24))i=d[k+(i&255)>>0]|0;else i=sY(e,i)|0;switch(i|0){case 8:case 1:case 0:{l=10;break a}case 6:{l=9;break b}case 7:{l=19;break b}case 5:{f=f+2|0;continue b}case 13:case 12:{e=f+2|0;if((i|0)==(b|0)){l=12;break a}else{f=e;continue b}}default:{f=f+2|0;continue b}}}if((l|0)==9){l=0;if((j|0)<3){f=-2;break}else{f=f+3|0;continue}}else if((l|0)==19){l=0;if((j|0)<4){f=-2;break}else{f=f+4|0;continue}}}c:do if((l|0)==10){c[h>>2]=f;f=0}else if((l|0)==12)if((g-e|0)>1){c[h>>2]=e;g=a[e>>0]|0;f=a[f+3>>0]|0;if(!(g<<24>>24))f=d[k+(f&255)>>0]|0;else f=sY(g,f)|0;switch(f|0){case 20:case 30:case 11:case 10:case 9:case 21:{f=27;break c}default:{}}f=0}else f=-27;while(0);return f|0}function nZ(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;k=f;a:do if((k-e|0)>1){h=a[e>>0]|0;if(!(h<<24>>24))h=d[b+72+(d[e+1>>0]|0)>>0]|0;else h=sY(h,a[e+1>>0]|0)|0;switch(h|0){case 27:{h=gZ(b,e+2|0,f,g)|0;break a}case 20:{c[g>>2]=e+2;h=33;break a}case 24:case 22:{j=b+72|0;b:while(1){i=e+2|0;f=k-i|0;if((f|0)<=1){h=-1;break a}h=a[i>>0]|0;b=a[e+3>>0]|0;if(!(h<<24>>24))h=d[j+(b&255)>>0]|0;else h=sY(h,b)|0;switch(h|0){case 24:case 22:{e=i;break}case 30:{l=15;break b}case 10:case 9:case 21:break b;default:{l=22;break b}}}if((l|0)==22){c[g>>2]=i;h=0;break a}c:do if((l|0)==15){if((f|0)<=3){h=-1;break a}b=a[e+4>>0]|0;h=a[e+5>>0]|0;if(!(b<<24>>24))h=d[j+(h&255)>>0]|0;else h=sY(b,h)|0;switch(h|0){case 30:case 10:case 9:case 21:break;default:break c}c[g>>2]=i;h=0;break a}while(0);c[g>>2]=i;h=16;break a}default:{c[g>>2]=e;h=0;break a}}}else h=-1;while(0);return h|0}function oZ(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;j=f-e|0;a:do if((j|0)>1){k=a[e>>0]|0;if(!(k<<24>>24)){i=a[e+1>>0]|0;h=d[b+72+(i&255)>>0]|0}else{i=a[e+1>>0]|0;h=sY(k,i)|0}switch(h|0){case 29:{j=i&255;if(!(1<<(j&31)&c[56836+((j>>>5|(d[140706+(k&255)>>0]|0)<<3)<<2)>>2])){c[g>>2]=e;f=0;break a}break}case 24:case 22:break;case 5:{c[g>>2]=e;f=0;break a}case 6:{if((j|0)<3){f=-2;break a}c[g>>2]=e;f=0;break a}case 7:{if((j|0)<4){f=-2;break a}c[g>>2]=e;f=0;break a}default:{c[g>>2]=e;f=0;break a}}b=b+72|0;k=e;b:while(1){h=k;k=k+2|0;e=f-k|0;if((e|0)<=1){f=-20;break a}j=a[k>>0]|0;h=a[h+3>>0]|0;if(!(j<<24>>24))i=d[b+(h&255)>>0]|0;else i=sY(j,h)|0;switch(i|0){case 27:case 26:case 25:case 24:case 22:continue b;case 5:{h=22;break b}case 6:{h=23;break b}case 7:{h=25;break b}case 36:case 30:case 11:case 32:case 21:case 10:case 9:{h=27;break b}case 29:break;default:{h=28;break b}}e=h&255;if(!(1<<(e&31)&c[56836+((e>>>5|(d[140962+(j&255)>>0]|0)<<3)<<2)>>2])){h=21;break}}if((h|0)==21){c[g>>2]=k;f=0;break}else if((h|0)==22){c[g>>2]=k;f=0;break}else if((h|0)==23){if((e|0)<3){f=-2;break}c[g>>2]=k;f=0;break}else if((h|0)==25){if((e|0)<4){f=-2;break}c[g>>2]=k;f=0;break}else if((h|0)==27){c[g>>2]=k;f=20;break}else if((h|0)==28){c[g>>2]=k;f=0;break}}else f=-1;while(0);return f|0}function pZ(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;while(1){b=c[d>>2]|0;h=b>>>0<e>>>0;i=c[f>>2]|0;if(!(h&i>>>0<g>>>0))break;c[d>>2]=b+1;h=a[b>>0]|0;i=c[f>>2]|0;c[f>>2]=i+1;a[i>>0]=h}return ((i|0)!=(g|0)|h^1?0:2)|0}function qZ(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;a:while(1){f=a[b>>0]|0;g=a[c>>0]|0;f=(f+-97&255)<26?(f&255)+224&255:f;switch((f<<24>>24==((g+-97&255)<26?(g&255)+224&255:g)<<24>>24?(f<<24>>24==0?2:0):1)&3){case 0:{c=c+1|0;b=b+1|0;break}case 1:{e=3;break a}case 2:{d=1;break a}default:{e=5;break a}}}if((e|0)==3)d=0;return d|0}function rZ(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;return tZ(36,a,b,c,d,e,f,g,h,i,j)|0}function sZ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=l;l=l+144|0;i=h+4|0;f=h+8|0;g=h;c[i>>2]=d;c[g>>2]=f;pb[c[b+56>>2]&127](b,i,e,g,f+127|0)|0;do if((c[i>>2]|0)==(e|0)){a[c[g>>2]>>0]=0;if(qZ(f,141233)|0?(c[b+64>>2]|0)==2:0)break;b=IY(f)|0;if((b|0)!=-1)b=c[58844+(b<<2)>>2]|0;else b=0}else b=0;while(0);l=h;return b|0}function tZ(a,b,d,e,f,g,h,i,j,k,m){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;t=v+8|0;q=v+12|0;o=v+4|0;p=v;c[q>>2]=0;c[o>>2]=0;c[p>>2]=0;u=d+64|0;s=c[u>>2]|0;r=e+(s*5|0)|0;c[t>>2]=r;s=f+(0-(s<<1))|0;r=(uZ(d,r,s,o,p,q,t)|0)!=0;n=c[o>>2]|0;e=n;a:do if(r&(n|0)!=0){r=d+24|0;f=c[p>>2]|0;do if(!(ob[c[r>>2]&127](d,n,f,141258)|0)){if(!b){c[g>>2]=e;e=0;break a}}else{if(h|0)c[h>>2]=c[q>>2];if(!i)e=c[t>>2]|0;else{e=c[t>>2]|0;c[i>>2]=e}if(!(uZ(d,e,s,o,p,q,t)|0)){c[g>>2]=c[t>>2];e=0;break a}f=c[o>>2]|0;if(f|0){e=f;n=f;f=c[p>>2]|0;break}if(!b){e=1;break a}c[g>>2]=c[t>>2];e=0;break a}while(0);if(ob[c[r>>2]&127](d,n,f,141266)|0){f=c[q>>2]|0;e=f;if((((vZ(d,f,s)|0)&-33)+-65|0)>>>0>=26){c[g>>2]=e;e=0;break}if(j|0)c[j>>2]=e;e=c[t>>2]|0;if(k|0)c[k>>2]=nb[a&63](d,f,e+(0-(c[u>>2]|0))|0)|0;if(!(uZ(d,e,s,o,p,q,t)|0)){c[g>>2]=c[t>>2];e=0;break}e=c[o>>2]|0;if(!e){e=1;break}n=e;f=c[p>>2]|0}if((b|0)!=0|(ob[c[r>>2]&127](d,n,f,141275)|0)==0){c[g>>2]=e;e=0;break}f=c[q>>2]|0;e=c[t>>2]|0;n=f;if(!(ob[c[r>>2]&127](d,f,e+(0-(c[u>>2]|0))|0,104631)|0)){if(!(ob[c[r>>2]&127](d,f,e+(0-(c[u>>2]|0))|0,104623)|0)){c[g>>2]=n;e=0;break}if(m)c[m>>2]=0}else if(m)c[m>>2]=1;while(1){if(!(wZ(vZ(d,e,s)|0)|0))break;e=e+(c[u>>2]|0)|0}c[t>>2]=e;if((e|0)==(s|0))e=1;else{c[g>>2]=e;e=0}}else{c[g>>2]=c[t>>2];e=0}while(0);l=v;return e|0}function uZ(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;a:do if((b|0)!=(d|0)){if(!(wZ(vZ(a,b,d)|0)|0)){c[h>>2]=b;b=0;break}j=a+64|0;do b=b+(c[j>>2]|0)|0;while((wZ(vZ(a,b,d)|0)|0)!=0);if((b|0)==(d|0)){c[e>>2]=0;b=1;break}c[e>>2]=b;b:while(1){i=vZ(a,b,d)|0;switch(i|0){case -1:{i=11;break b}case 61:{i=12;break b}default:{}}if(wZ(i)|0){i=14;break}b=b+(c[j>>2]|0)|0}if((i|0)==11){c[h>>2]=b;b=0;break}else if((i|0)==12)c[f>>2]=b;else if((i|0)==14){c[f>>2]=b;do{b=b+(c[j>>2]|0)|0;i=vZ(a,b,d)|0}while((wZ(i)|0)!=0);if((i|0)!=61){c[h>>2]=b;b=0;break}}if((b|0)==(c[e>>2]|0)){c[h>>2]=b;b=0;break}do{b=b+(c[j>>2]|0)|0;i=vZ(a,b,d)|0}while((wZ(i)|0)!=0);switch(i|0){case 34:case 39:break;default:{c[h>>2]=b;b=0;break a}}f=b+(c[j>>2]|0)|0;c[g>>2]=f;b=i<<24>>24;c:while(1){i=vZ(a,f,d)|0;if((i|0)==(b|0)){i=30;break}if((i+-48|0)>>>0>9&((i&-33)+-65|0)>>>0>25)switch(i|0){case 45:case 46:case 95:break;default:{i=28;break c}}f=f+(c[j>>2]|0)|0}if((i|0)==28){c[h>>2]=f;b=0;break}else if((i|0)==30){c[h>>2]=f+(c[j>>2]|0);b=1;break}}else{c[e>>2]=0;b=1}while(0);return b|0}function vZ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=l;l=l+16|0;i=h+4|0;f=h+8|0;g=h;c[i>>2]=d;c[g>>2]=f;pb[c[b+56>>2]&127](b,i,e,g,f+1|0)|0;l=h;return ((c[g>>2]|0)==(f|0)?-1:a[f>>0]|0)|0}function wZ(a){a=a|0;switch(a|0){case 9:case 10:case 13:case 32:{a=1;break}default:a=0}return a|0}function xZ(){return 59988}function yZ(b,d,e){b=b|0;d=d|0;e=e|0;e=IY(e)|0;if((e|0)==-1)e=0;else{a[b+69>>0]=e;c[b>>2]=69;c[b+4>>2]=70;c[b+48>>2]=31;c[b+72>>2]=d;c[d>>2]=b;e=1}return e|0}function zZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return MY(60352,a,0,b,c,d)|0}function AZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return MY(60352,a,1,b,c,d)|0}function BZ(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;return tZ(37,a,b,c,d,e,f,g,h,i,j)|0}function CZ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=l;l=l+144|0;i=h+4|0;f=h+8|0;g=h;c[i>>2]=d;c[g>>2]=f;pb[c[b+56>>2]&127](b,i,e,g,f+127|0)|0;do if((c[i>>2]|0)==(e|0)){a[c[g>>2]>>0]=0;if(qZ(f,141233)|0?(c[b+64>>2]|0)==2:0)break;b=IY(f)|0;if((b|0)!=-1)b=c[60352+(b<<2)>>2]|0;else b=0}else b=0;while(0);l=h;return b|0}function DZ(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;b=iX(b,c,d,e)|0;if(b|0)a[b+72+58>>0]=23;return b|0}function EZ(a){a=a|0;c[a>>2]=15;c[a+16>>2]=1;c[a+12>>2]=0;c[a+20>>2]=0;return}function FZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;switch(b|0){case 15:{c[a>>2]=16;a=0;break}case 12:{c[a>>2]=16;a=1;break}case 11:{c[a>>2]=16;a=55;break}case 13:{c[a>>2]=16;a=56;break}case 14:{a=0;break}case 16:{if(!(ob[c[f+24>>2]&127](f,d+(c[f+64>>2]<<1)|0,e,141286)|0))g=9;else{c[a>>2]=17;a=3}break}case 29:{c[a>>2]=18;a=2;break}default:g=9}if((g|0)==9)a=JZ(a,b)|0;return a|0}function GZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;switch(b|0){case 14:case 15:{a=0;break}case 11:{a=55;break}case 13:{a=56;break}case 16:{if(!(ob[c[f+24>>2]&127](f,d+(c[f+64>>2]<<1)|0,e,141286)|0))g=7;else{c[a>>2]=17;a=3}break}case 29:{c[a>>2]=18;a=2;break}default:g=7}if((g|0)==7)a=JZ(a,b)|0;return a|0}function HZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=3;break}case 41:case 18:{c[a>>2]=19;a=4;break}default:a=JZ(a,b)|0}return a|0}function IZ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return 0}function JZ(a,b){a=a|0;b=b|0;if((b|0)==28&(c[a+16>>2]|0)==0)a=59;else{c[a>>2]=18;a=-1}return a|0}function KZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do switch(b|0){case 15:{a=3;break}case 25:{c[a>>2]=20;a=7;break}case 17:{c[a>>2]=21;a=8;break}case 18:{g=f+24|0;if(ob[c[g>>2]&127](f,d,e,141294)|0){c[a>>2]=22;a=3;break a}if(!(ob[c[g>>2]&127](f,d,e,141301)|0))h=8;else{c[a>>2]=23;a=3}break}default:h=8}while(0);if((h|0)==8)a=JZ(a,b)|0;return a|0}function LZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;a:do switch(b|0){case -4:case 15:{a=0;break}case 16:{g=f+24|0;h=f+64|0;if(ob[c[g>>2]&127](f,d+(c[h>>2]<<1)|0,e,141308)|0){c[a>>2]=24;a=11;break a}if(ob[c[g>>2]&127](f,d+(c[h>>2]<<1)|0,e,141315)|0){c[a>>2]=25;a=33;break a}if(ob[c[g>>2]&127](f,d+(c[h>>2]<<1)|0,e,141323)|0){c[a>>2]=26;a=39;break a}if(!(ob[c[g>>2]&127](f,d+(c[h>>2]<<1)|0,e,141331)|0))i=14;else{c[a>>2]=27;a=17}break}case 11:{a=55;break}case 13:{a=56;break}case 28:{a=60;break}case 26:{c[a>>2]=28;a=3;break}default:i=14}while(0);if((i|0)==14)a=JZ(a,b)|0;return a|0}function MZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;f=b+-11|0;switch(f>>>1|f<<31|0){case 2:{a=0;break}case 0:{a=55;break}case 1:{a=56;break}case 9:{c[a>>2]=18;a=2;break}default:a=JZ(a,b)|0}return a|0}function NZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=3;break}case 27:{c[a>>2]=29;a=5;break}default:a=JZ(a,b)|0}return a|0}function OZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=3;break}case 27:{c[a>>2]=22;a=6;break}default:a=JZ(a,b)|0}return a|0}function PZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=3;break}case 25:{c[a>>2]=20;a=7;break}case 17:{c[a>>2]=21;a=8;break}default:a=JZ(a,b)|0}return a|0}function QZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=11;break}case 22:{c[a>>2]=30;a=11;break}case 18:{c[a>>2]=31;a=9;break}default:a=JZ(a,b)|0}return a|0}function RZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=33;break}case 41:case 18:{c[a>>2]=32;a=34;break}default:a=JZ(a,b)|0}return a|0}function SZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=39;break}case 41:case 18:{c[a>>2]=33;a=40;break}default:a=JZ(a,b)|0}return a|0}function TZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=17;break}case 18:{c[a>>2]=34;a=18;break}default:a=JZ(a,b)|0}return a|0}function UZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=3;break}case 17:{c[a>>2]=21;a=8;break}default:a=JZ(a,b)|0}return a|0}function VZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do switch(b|0){case 15:{a=17;break}case 18:{g=f+24|0;if(ob[c[g>>2]&127](f,d,e,141294)|0){c[a>>2]=35;a=17;break a}if(!(ob[c[g>>2]&127](f,d,e,141301)|0))h=6;else{c[a>>2]=36;a=17}break}default:h=6}while(0);if((h|0)==6)a=JZ(a,b)|0;return a|0}function WZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=17;break}case 27:{c[a>>2]=37;c[a+8>>2]=17;a=19;break}default:a=JZ(a,b)|0}return a|0}function XZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=17;break}case 27:{c[a>>2]=38;a=21;break}default:a=JZ(a,b)|0}return a|0}function YZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=17;break}case 27:{c[a>>2]=37;c[a+8>>2]=17;a=19;break}case 17:{c[a>>2]=c[a+16>>2]|0?20:39;a=20;break}default:a=JZ(a,b)|0}return a|0}function ZZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=c[a+8>>2]|0;break}case 17:{c[a>>2]=c[a+16>>2]|0?20:39;a=c[a+8>>2]|0;break}default:a=JZ(a,b)|0}return a|0}function _Z(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;switch(b|0){case 33:{c[a>>2]=40;d=0;break}case 34:{d=a+12|0;e=c[d>>2]|0;if(!e)g=7;else{c[d>>2]=e+-1;d=0}break}case 15:{d=0;break}case 26:{g=7;break}case -4:{if(!(c[a+12>>2]|0))d=0;else g=7;break}default:d=LZ(a,b,d,e,f)|0}if((g|0)==7)d=JZ(a,b)|0;return d|0}function $Z(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do switch(b|0){case 15:{a=0;break}case 18:{g=f+24|0;if(ob[c[g>>2]&127](f,d,e,141340)|0){c[a>>2]=41;a=0;break a}if(!(ob[c[g>>2]&127](f,d,e,141348)|0))h=6;else{c[a>>2]=42;a=0}break}default:h=6}while(0);if((h|0)==6)a=JZ(a,b)|0;return a|0}function a_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=0;break}case 25:{c[a>>2]=39;a=a+12|0;c[a>>2]=(c[a>>2]|0)+1;a=0;break}default:a=JZ(a,b)|0}return a|0}function b_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=0;break}case 25:{c[a>>2]=39;a=58;break}default:a=JZ(a,b)|0}return a|0}function c_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do switch(b|0){case 15:{a=39;break}case 18:{g=f+24|0;if(ob[c[g>>2]&127](f,d,e,141355)|0){c[a>>2]=37;c[a+8>>2]=39;a=42;break a}if(!(ob[c[g>>2]&127](f,d,e,141361)|0))h=7;else{c[a>>2]=37;c[a+8>>2]=39;a=41}break}case 23:{c[a>>2]=43;c[a+4>>2]=1;a=44;break}default:h=7}while(0);if((h|0)==7)a=JZ(a,b)|0;return a|0}function d_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;switch(b|0){case 15:{a=39;break}case 20:{if(!(ob[c[f+24>>2]&127](f,d+(c[f+64>>2]|0)|0,e,141365)|0))g=9;else{c[a>>2]=44;a=43}break}case 23:{c[a+4>>2]=2;c[a>>2]=45;a=44;break}case 41:case 18:{c[a>>2]=46;a=51;break}case 30:{c[a>>2]=46;a=53;break}case 31:{c[a>>2]=46;a=52;break}case 32:{c[a>>2]=46;a=54;break}default:g=9}if((g|0)==9)a=JZ(a,b)|0;return a|0}function e_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=39;break}case 24:{c[a>>2]=37;c[a+8>>2]=39;a=45;break}case 36:{c[a>>2]=37;c[a+8>>2]=39;a=46;break}case 21:{c[a>>2]=47;a=39;break}default:a=JZ(a,b)|0}return a|0}function f_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=39;break}case 23:{a=a+4|0;c[a>>2]=(c[a>>2]|0)+1;a=44;break}case 41:case 18:{c[a>>2]=46;a=51;break}case 30:{c[a>>2]=46;a=53;break}case 31:{c[a>>2]=46;a=52;break}case 32:{c[a>>2]=46;a=54;break}default:a=JZ(a,b)|0}return a|0}function g_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=39;break}case 24:{e=a+4|0;f=(c[e>>2]|0)+-1|0;c[e>>2]=f;if(!f){c[a>>2]=37;c[a+8>>2]=39;a=45}else a=45;break}case 36:{e=a+4|0;f=(c[e>>2]|0)+-1|0;c[e>>2]=f;if(!f){c[a>>2]=37;c[a+8>>2]=39;a=46}else a=46;break}case 35:{e=a+4|0;f=(c[e>>2]|0)+-1|0;c[e>>2]=f;if(!f){c[a>>2]=37;c[a+8>>2]=39;a=47}else a=47;break}case 37:{e=a+4|0;f=(c[e>>2]|0)+-1|0;c[e>>2]=f;if(!f){c[a>>2]=37;c[a+8>>2]=39;a=48}else a=48;break}case 38:{c[a>>2]=45;a=50;break}case 21:{c[a>>2]=45;a=49;break}default:a=JZ(a,b)|0}return a|0}function h_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=39;break}case 41:case 18:{c[a>>2]=48;a=51;break}default:a=JZ(a,b)|0}return a|0}function i_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=39;break}case 36:{c[a>>2]=37;c[a+8>>2]=39;a=46;break}case 21:{c[a>>2]=47;a=39;break}default:a=JZ(a,b)|0}return a|0}function j_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=33;break}case 17:{c[a>>2]=c[a+16>>2]|0?20:39;a=33;break}case 41:case 18:{c[a>>2]=49;a=22;break}default:a=JZ(a,b)|0}return a|0}function k_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;a:do switch(b|0){case 15:{g=33;break}case 18:{h=f+24|0;g=0;while(1){i=c[h>>2]|0;if((g|0)>=8)break;if(ob[i&127](f,d,e,c[62200+(g<<2)>>2]|0)|0){j=6;break}g=g+1|0}if((j|0)==6){c[a>>2]=50;g=g+23|0;break a}if(!(ob[i&127](f,d,e,141331)|0))j=10;else{c[a>>2]=51;g=33}break}case 23:{c[a>>2]=52;g=33;break}default:j=10}while(0);if((j|0)==10)g=JZ(a,b)|0;return g|0}function l_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;a:do switch(b|0){case 15:{a=33;break}case 20:{g=f+24|0;h=f+64|0;if(ob[c[g>>2]&127](f,d+(c[h>>2]|0)|0,e,141372)|0){c[a>>2]=32;a=35;break a}if(ob[c[g>>2]&127](f,d+(c[h>>2]|0)|0,e,141380)|0){c[a>>2]=32;a=36;break a}if(!(ob[c[g>>2]&127](f,d+(c[h>>2]|0)|0,e,141389)|0))i=9;else{c[a>>2]=53;a=33}break}case 27:{c[a>>2]=32;a=37;break}default:i=9}while(0);if((i|0)==9)a=JZ(a,b)|0;return a|0}function m_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=33;break}case 23:{c[a>>2]=54;a=33;break}default:a=JZ(a,b)|0}return a|0}function n_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=33;break}case 41:case 18:case 19:{c[a>>2]=55;a=31;break}default:a=JZ(a,b)|0}return a|0}function o_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=33;break}case 24:{c[a>>2]=50;a=33;break}case 21:{c[a>>2]=52;a=33;break}default:a=JZ(a,b)|0}return a|0}function p_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=33;break}case 18:{c[a>>2]=56;a=32;break}default:a=JZ(a,b)|0}return a|0}function q_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=33;break}case 24:{c[a>>2]=50;a=33;break}case 21:{c[a>>2]=54;a=33;break}default:a=JZ(a,b)|0}return a|0}function r_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=33;break}case 27:{c[a>>2]=32;a=38;break}default:a=JZ(a,b)|0}return a|0}function s_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=11;break}case 18:{c[a>>2]=57;a=10;break}default:a=JZ(a,b)|0}return a|0}function t_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do switch(b|0){case 15:{a=11;break}case 18:{g=f+24|0;if(ob[c[g>>2]&127](f,d,e,141294)|0){c[a>>2]=58;a=11;break a}if(!(ob[c[g>>2]&127](f,d,e,141301)|0))h=7;else{c[a>>2]=59;a=11}break}case 27:{c[a>>2]=37;c[a+8>>2]=11;a=12;break}default:h=7}while(0);if((h|0)==7)a=JZ(a,b)|0;return a|0}function u_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=11;break}case 27:{c[a>>2]=60;a=13;break}default:a=JZ(a,b)|0}return a|0}function v_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=11;break}case 27:{c[a>>2]=58;a=14;break}default:a=JZ(a,b)|0}return a|0}function w_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;switch(b|0){case 15:{a=11;break}case 17:{c[a>>2]=c[a+16>>2]|0?20:39;a=15;break}case 18:{if(!(ob[c[f+24>>2]&127](f,d,e,141443)|0))g=5;else{c[a>>2]=61;a=11}break}default:g=5}if((g|0)==5)a=JZ(a,b)|0;return a|0}function x_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=11;break}case 18:{c[a>>2]=37;c[a+8>>2]=11;a=16;break}default:a=JZ(a,b)|0}return a|0}function y_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do switch(b|0){case 15:{a=11;break}case 18:{g=f+24|0;if(ob[c[g>>2]&127](f,d,e,141294)|0){c[a>>2]=62;a=11;break a}if(!(ob[c[g>>2]&127](f,d,e,141301)|0))h=7;else{c[a>>2]=63;a=11}break}case 27:{c[a>>2]=37;c[a+8>>2]=11;a=12;break}default:h=7}while(0);if((h|0)==7)a=JZ(a,b)|0;return a|0}function z_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=11;break}case 27:{c[a>>2]=64;a=13;break}default:a=JZ(a,b)|0}return a|0}function A_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=11;break}case 27:{c[a>>2]=62;a=14;break}default:a=JZ(a,b)|0}return a|0}function B_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=11;break}case 17:{c[a>>2]=c[a+16>>2]|0?20:39;a=15;break}default:a=JZ(a,b)|0}return a|0}function C_(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[46749]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=187036+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[46749]=o&~(1<<b);else{c[g+12>>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[46751]|0;if(m>>>0>n>>>0){if(d|0){b=2<<a;b=d<<a&(b|0-b);b=(b&0-b)+-1|0;i=b>>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=187036+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<<e);c[46749]=a}else{c[d+12>>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[46754]|0;b=n>>>3;d=187036+(b<<1<<2)|0;b=1<<b;if(!(a&b)){c[46749]=a|b;b=d;a=d+8|0}else{a=d+8|0;b=c[a>>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[46751]=h;c[46754]=f;w=i;l=x;return w|0}j=c[46750]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[187300+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0<d>>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=187300+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[46750]=j&~(1<<b);break}}else{c[f+16+(((c[f+16>>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[46754]|0;b=n>>>3;d=187036+(b<<1<<2)|0;b=1<<b;if(!(o&b)){c[46749]=o|b;b=d;a=d+8|0}else{a=d+8|0;b=c[a>>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[46751]=h;c[46754]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[46750]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<<o;n=(v+520192|0)>>>16&4;v=v<<n;j=(v+245760|0)>>>16&2;j=14-(n|o|j)+(v<<j>>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[187300+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0<e>>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<<j;a=k&(a|0-a);if(!a){n=m;break}o=(a&0-a)+-1|0;i=o>>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[187300+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0<e>>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[46751]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=187300+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<<a);c[46750]=e;break}}else{c[f+16+(((c[f+16>>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=187036+(b<<1<<2)|0;a=c[46749]|0;b=1<<b;if(!(a&b)){c[46749]=a|b;b=d;a=d+8|0}else{a=d+8|0;b=c[a>>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<<v;u=(w+520192|0)>>>16&4;w=w<<u;b=(w+245760|0)>>>16&2;b=14-(u|v|b)+(w<<b>>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=187300+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<<b;if(!(e&a)){c[46750]=e|a;c[d>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[46751]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[46754]|0;if(b>>>0>15){w=a+n|0;c[46754]=w;c[46751]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[46751]=0;c[46754]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[46752]|0;if(i>>>0>n>>>0){u=i-n|0;c[46752]=u;w=c[46755]|0;v=w+n|0;c[46755]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[46867]|0)){c[46869]=4096;c[46868]=4096;c[46870]=-1;c[46871]=-1;c[46872]=0;c[46860]=0;c[46867]=p&-16^1431655768;a=4096}else a=c[46869]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[46859]|0;if(a|0?(o=c[46857]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[46860]&4)){d=c[46755]|0;c:do if(d){e=187444;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=I3(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=I3(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[46868]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[46857]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[46859]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=I3(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[46869]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((I3(a|0)|0)==(-1|0)){I3(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[46860]=c[46860]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=I3(m|0)|0,s=I3(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0<s>>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[46857]|0)+h|0;c[46857]=b;if(b>>>0>(c[46858]|0)>>>0)c[46858]=b;j=c[46755]|0;do if(j){b=187444;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[46752]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[46755]=v;c[46752]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[46756]=c[46871];break}if(g>>>0<(c[46753]|0)>>>0)c[46753]=g;a=g+h|0;b=187444;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=187444;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[46754]|0)==(b|0)){w=(c[46751]|0)+i|0;c[46751]=w;c[46754]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[46749]=c[46749]&~(1<<e);break}else{c[a+12>>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=187300+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[46750]=c[46750]&~(1<<d);break d}while(0);c[a+24>>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=187036+(b<<1<<2)|0;a=c[46749]|0;b=1<<b;if(!(a&b)){c[46749]=a|b;b=d;a=d+8|0}else{a=d+8|0;b=c[a>>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<<v;u=(w+520192|0)>>>16&4;w=w<<u;b=(w+245760|0)>>>16&2;b=14-(u|v|b)+(w<<b>>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=187300+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[46750]|0;d=1<<b;if(!(a&d)){c[46750]=a|d;c[e>>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[46752]|0)+i|0;c[46752]=w;c[46755]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=187444;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0<f>>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[46755]=v;c[46752]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[46756]=c[46871];d=a+4|0;c[d>>2]=27;c[b>>2]=c[46861];c[b+4>>2]=c[46862];c[b+8>>2]=c[46863];c[b+12>>2]=c[46864];c[46861]=g;c[46862]=h;c[46864]=0;c[46863]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0<w>>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=187036+(b<<1<<2)|0;a=c[46749]|0;b=1<<b;if(!(a&b)){c[46749]=a|b;b=d;a=d+8|0}else{a=d+8|0;b=c[a>>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<<v;u=(w+520192|0)>>>16&4;w=w<<u;d=(w+245760|0)>>>16&2;d=14-(u|v|d)+(w<<d>>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=187300+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[46750]|0;a=1<<d;if(!(b&a)){c[46750]=b|a;c[e>>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[46753]|0;if((w|0)==0|g>>>0<w>>>0)c[46753]=g;c[46861]=g;c[46862]=h;c[46864]=0;c[46758]=c[46867];c[46757]=-1;c[46762]=187036;c[46761]=187036;c[46764]=187044;c[46763]=187044;c[46766]=187052;c[46765]=187052;c[46768]=187060;c[46767]=187060;c[46770]=187068;c[46769]=187068;c[46772]=187076;c[46771]=187076;c[46774]=187084;c[46773]=187084;c[46776]=187092;c[46775]=187092;c[46778]=187100;c[46777]=187100;c[46780]=187108;c[46779]=187108;c[46782]=187116;c[46781]=187116;c[46784]=187124;c[46783]=187124;c[46786]=187132;c[46785]=187132;c[46788]=187140;c[46787]=187140;c[46790]=187148;c[46789]=187148;c[46792]=187156;c[46791]=187156;c[46794]=187164;c[46793]=187164;c[46796]=187172;c[46795]=187172;c[46798]=187180;c[46797]=187180;c[46800]=187188;c[46799]=187188;c[46802]=187196;c[46801]=187196;c[46804]=187204;c[46803]=187204;c[46806]=187212;c[46805]=187212;c[46808]=187220;c[46807]=187220;c[46810]=187228;c[46809]=187228;c[46812]=187236;c[46811]=187236;c[46814]=187244;c[46813]=187244;c[46816]=187252;c[46815]=187252;c[46818]=187260;c[46817]=187260;c[46820]=187268;c[46819]=187268;c[46822]=187276;c[46821]=187276;c[46824]=187284;c[46823]=187284;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[46755]=v;c[46752]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[46756]=c[46871]}while(0);b=c[46752]|0;if(b>>>0>n>>>0){u=b-n|0;c[46752]=u;w=c[46755]|0;v=w+n|0;c[46755]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(O_()|0)>>2]=12;w=0;l=x;return w|0}function D_(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[46753]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0<f>>>0)return;if((c[46754]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[46751]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[46749]=c[46749]&~(1<<d);i=h;b=g;break}else{c[a+12>>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=187300+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[46750]=c[46750]&~(1<<b);i=h;b=g;break}}else{c[f+16+(((c[f+16>>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[46755]|0)==(j|0)){j=(c[46752]|0)+b|0;c[46752]=j;c[46755]=i;c[i+4>>2]=j|1;if((i|0)!=(c[46754]|0))return;c[46754]=0;c[46751]=0;return}if((c[46754]|0)==(j|0)){j=(c[46751]|0)+b|0;c[46751]=j;c[46754]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[46749]=c[46749]&~(1<<d);break}else{c[b+12>>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=187300+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[46750]=c[46750]&~(1<<a);break}}else{c[g+16+(((c[g+16>>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[46754]|0)){c[46751]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=187036+(a<<1<<2)|0;b=c[46749]|0;a=1<<a;if(!(b&a)){c[46749]=b|a;a=d;b=d+8|0}else{b=d+8|0;a=c[b>>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<<h;g=(j+520192|0)>>>16&4;j=j<<g;a=(j+245760|0)>>>16&2;a=14-(g|h|a)+(j<<a>>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=187300+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[46750]|0;d=1<<a;do if(b&d){b=f<<((a|0)==31?0:25-(a>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[46750]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[46757]|0)+-1|0;c[46757]=j;if(!j)a=187452;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[46757]=-1;return}function E_(a,b){a=a|0;b=b|0;var d=0;if(a){d=O(b,a)|0;if((b|a)>>>0>65535)d=((d>>>0)/(a>>>0)|0|0)==(b|0)?d:-1}else d=0;a=C_(d)|0;if(!a)return a|0;if(!(c[a+-4>>2]&3))return a|0;H3(a|0,0,d|0)|0;return a|0}function F_(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=C_(b)|0;return b|0}if(b>>>0>4294967231){c[(O_()|0)>>2]=12;b=0;return b|0}d=G_(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=C_(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;F3(d|0,a|0,(e>>>0<b>>>0?e:b)|0)|0;D_(a);b=d;return b|0}function G_(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[46869]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;H_(k,d);return a|0}if((c[46755]|0)==(i|0)){k=(c[46752]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[46755]=e;c[46752]=d;return a|0}if((c[46754]|0)==(i|0)){e=(c[46751]|0)+d|0;if(e>>>0<b>>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[46751]=d;c[46754]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0<b>>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[46749]=c[46749]&~(1<<f);break}else{c[e+12>>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=187300+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[46750]=c[46750]&~(1<<d);break}}else{c[h+16+(((c[h+16>>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;H_(i,k);return a|0}return 0}function H_(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[46754]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[46751]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[46749]=c[46749]&~(1<<e);break}else{c[a+12>>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=187300+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[46750]=c[46750]&~(1<<d);break}}else{c[g+16+(((c[g+16>>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[46755]|0)==(i|0)){i=(c[46752]|0)+b|0;c[46752]=i;c[46755]=h;c[h+4>>2]=i|1;if((h|0)!=(c[46754]|0))return;c[46754]=0;c[46751]=0;return}if((c[46754]|0)==(i|0)){i=(c[46751]|0)+b|0;c[46751]=i;c[46754]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[46749]=c[46749]&~(1<<d);break}else{c[a+12>>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=187300+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[46750]=c[46750]&~(1<<b);break}}else{c[g+16+(((c[g+16>>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[46754]|0)){c[46751]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=187036+(b<<1<<2)|0;a=c[46749]|0;b=1<<b;if(!(a&b)){c[46749]=a|b;b=d;a=d+8|0}else{a=d+8|0;b=c[a>>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<<g;e=(i+520192|0)>>>16&4;i=i<<e;b=(i+245760|0)>>>16&2;b=14-(e|g|b)+(i<<b>>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=187300+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[46750]|0;d=1<<b;if(!(a&d)){c[46750]=a|d;c[e>>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function I_(a,b){a=a|0;b=b|0;if(a>>>0<9){b=C_(b)|0;return b|0}else{b=J_(a,b)|0;return b|0}return 0}function J_(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;a=a>>>0>16?a:16;if(a+-1&a){d=16;while(1)if(d>>>0<a>>>0)d=d<<1;else{a=d;break}}if((-64-a|0)>>>0<=b>>>0){c[(O_()|0)>>2]=12;h=0;return h|0}g=b>>>0<11?16:b+11&-8;d=C_(g+12+a|0)|0;if(!d){h=0;return h|0}f=d+-8|0;do if(a+-1&d){e=(d+a+-1&0-a)+-8|0;b=f;e=(e-b|0)>>>0>15?e:e+a|0;b=e-b|0;a=d+-4|0;i=c[a>>2]|0;d=(i&-8)-b|0;if(!(i&3)){c[e>>2]=(c[f>>2]|0)+b;c[e+4>>2]=d;a=e;b=e;break}else{i=e+4|0;c[i>>2]=d|c[i>>2]&1|2;d=e+d+4|0;c[d>>2]=c[d>>2]|1;c[a>>2]=b|c[a>>2]&1|2;c[i>>2]=c[i>>2]|1;H_(f,b);a=e;b=e;break}}else{a=f;b=f}while(0);a=a+4|0;d=c[a>>2]|0;if(d&3|0?(h=d&-8,h>>>0>(g+16|0)>>>0):0){i=h-g|0;f=b+g|0;c[a>>2]=g|d&1|2;c[f+4>>2]=i|3;h=b+h+4|0;c[h>>2]=c[h>>2]|1;H_(f,i)}i=b+8|0;return i|0}function K_(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=P_(c[a+60>>2]|0)|0;a=N_(Ja(6,d|0)|0)|0;l=b;return a|0}function L_(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=N_(ya(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function M_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((N_(xa(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function N_(a){a=a|0;if(a>>>0>4294963200){c[(O_()|0)>>2]=0-a;a=-1}return a|0}function O_(){return 187492}function P_(a){a=a|0;return a|0}function Q_(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=18;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Ia(54,f|0)|0):0)a[b+75>>0]=-1;f=R_(b,d,e)|0;l=g;return f|0}function R_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=N_(za(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=N_(za(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function S_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b;b=N_(Ka(91,e|0)|0)|0;l=d;return b|0}function T_(){return}function U_(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=l;l=l+32|0;h=i;do if((g&4095|0)==0&(((g|0)<0)<<31>>31&-4096|0)==0){if(b>>>0>2147483646){c[(O_()|0)>>2]=12;a=-1;break}c[h>>2]=a;c[h+4>>2]=b;c[h+8>>2]=d;c[h+12>>2]=e;c[h+16>>2]=f;c[h+20>>2]=g>>12;a=N_(Aa(192,h|0)|0)|0}else{c[(O_()|0)>>2]=22;a=-1}while(0);l=i;return a|0}function V_(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(W_(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function W_(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function X_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+48|0;g=h+16|0;f=h;e=h+32|0;if(!(b&4194368))e=0;else{c[e>>2]=d;i=(c[e>>2]|0)+(4-1)&~(4-1);d=c[i>>2]|0;c[e>>2]=i+4;e=d}c[f>>2]=a;c[f+4>>2]=b|32768;c[f+8>>2]=e;e=Ha(5,f|0)|0;if(!((b&524288|0)==0|(e|0)<0)){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Ea(221,g|0)|0}i=N_(e)|0;l=h;return i|0}function Y_(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[141449+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=141537;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=141537;else{f=141537;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return Z_(f,c[e+20>>2]|0)|0}function Z_(a,b){a=a|0;b=b|0;return __(a,b)|0}function __(a,b){a=a|0;b=b|0;if(!b)b=0;else b=$_(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function $_(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=a$(c[b+8>>2]|0,o)|0;f=a$(c[b+12>>2]|0,o)|0;g=a$(c[b+16>>2]|0,o)|0;a:do if((h>>>0<d>>>2>>>0?(n=d-(h<<2)|0,f>>>0<n>>>0&g>>>0<n>>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=a$(c[b+(g<<2)>>2]|0,o)|0;g=a$(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0<d>>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=b$(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=a$(c[b+(f<<2)>>2]|0,o)|0;f=a$(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0<d>>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function a$(a,b){a=a|0;b=b|0;var c=0;c=C3(a|0)|0;return ((b|0)==0?a:c)|0}function b$(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function c$(a){a=a|0;return Y_(a,c[(d$()|0)+188>>2]|0)|0}function d$(){return e$()|0}function e$(){return 62872}function f$(a,b,c){a=+a;b=+b;c=c|0;var d=0.0,e=0.0,f=0.0;f=a*a;d=f*(f*f)*(f*1.58969099521155e-10+-2.5050760253406863e-08)+(f*(f*2.7557313707070068e-06+-1.984126982985795e-04)+.00833333333332249);e=f*a;if(!c)a=e*(f*d+-.16666666666666632)+a;else a=a-(e*.16666666666666632+(f*(b*.5-e*d)-b));return +a}function g$(a){a=+a;var b=0,d=0,e=0,f=0,g=0.0,i=0.0,k=0.0,l=0.0,m=0.0;h[j>>3]=a;b=c[j>>2]|0;d=c[j+4>>2]|0;e=(d|0)<0;do if(e|d>>>0<1048576){if((b|0)==0&(d&2147483647|0)==0){a=-1.0/(a*a);break}if(e){a=(a-a)/0.0;break}else{h[j>>3]=a*18014398509481984.0;d=c[j+4>>2]|0;e=-1077;b=c[j>>2]|0;f=9;break}}else if(d>>>0<=2146435071)if((b|0)==0&0==0&(d|0)==1072693248)a=0.0;else{e=-1023;f=9}while(0);if((f|0)==9){f=d+614242|0;c[j>>2]=b;c[j+4>>2]=(f&1048575)+1072079006;m=+h[j>>3]+-1.0;k=m*(m*.5);i=m/(m+2.0);l=i*i;g=l*l;h[j>>3]=m-k;d=c[j+4>>2]|0;c[j>>2]=0;c[j+4>>2]=d;a=+h[j>>3];g=m-a-k+i*(k+(g*(g*(g*.15313837699209373+.22222198432149784)+.3999999999940942)+l*(g*(g*(g*.14798198605116586+.1818357216161805)+.2857142874366239)+.6666666666666735)));l=a*1.4426950407214463;k=+(e+(f>>>20)|0);i=l+k;a=i+(l+(k-i)+(g*1.4426950407214463+(g+a)*1.6751713164886512e-10))}return +a}function h$(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=z3(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+h$(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function i$(a,b){a=+a;b=+b;var c=0.0,d=0.0,e=0.0,f=0.0;c=a*a;d=c*c;e=c*.5;f=1.0-e;return +(f+(1.0-f-e+(c*(c*(c*(c*2.480158728947673e-05+-.001388888888887411)+.0416666666666666)+d*d*(c*(2.087572321298175e-09-c*1.1359647557788195e-11)+-2.7557314351390663e-07))-a*b)))}function j$(a){a=+a;var b=0,d=0,e=0,f=0,g=0.0,i=0.0,k=0.0,l=0.0,m=0.0;h[j>>3]=a;b=c[j>>2]|0;d=c[j+4>>2]|0;e=(d|0)<0;do if(e|d>>>0<1048576){if((b|0)==0&(d&2147483647|0)==0){a=-1.0/(a*a);break}if(e){a=(a-a)/0.0;break}else{h[j>>3]=a*18014398509481984.0;d=c[j+4>>2]|0;e=-1077;b=c[j>>2]|0;f=9;break}}else if(d>>>0<=2146435071)if((b|0)==0&0==0&(d|0)==1072693248)a=0.0;else{e=-1023;f=9}while(0);if((f|0)==9){f=d+614242|0;c[j>>2]=b;c[j+4>>2]=(f&1048575)+1072079006;k=+h[j>>3]+-1.0;i=k*(k*.5);l=k/(k+2.0);m=l*l;g=m*m;h[j>>3]=k-i;d=c[j+4>>2]|0;c[j>>2]=0;c[j+4>>2]=d;a=+h[j>>3];g=k-a-i+l*(i+(g*(g*(g*.15313837699209373+.22222198432149784)+.3999999999940942)+m*(g*(g*(g*.14798198605116586+.1818357216161805)+.2857142874366239)+.6666666666666735)));m=a*.4342944818781689;i=+(e+(f>>>20)|0);l=i*.30102999566361177;k=l+m;a=k+(m+(l-k)+(g*.4342944818781689+(i*3.694239077158931e-13+(g+a)*2.5082946711645275e-11)))}return +a}function k$(a,b){a=+a;b=b|0;var d=0,e=0.0,f=0.0,g=0.0,i=0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0;r=l;l=l+48|0;m=r+16|0;n=r;h[j>>3]=a;d=c[j>>2]|0;i=c[j+4>>2]|0;o=z3(d|0,i|0,63)|0;q=i&2147483647;do if(q>>>0<1074752123)if((i&1048575|0)!=598523){d=(o|0)!=0;if(q>>>0<1073928573)if(d){g=a+1.5707963267341256;k=g+6.077100506506192e-11;h[b>>3]=k;h[b+8>>3]=g-k+6.077100506506192e-11;d=-1;break}else{g=a+-1.5707963267341256;k=g+-6.077100506506192e-11;h[b>>3]=k;h[b+8>>3]=g-k+-6.077100506506192e-11;d=1;break}else if(d){g=a+3.1415926534682512;k=g+1.2154201013012384e-10;h[b>>3]=k;h[b+8>>3]=g-k+1.2154201013012384e-10;d=-2;break}else{g=a+-3.1415926534682512;k=g+-1.2154201013012384e-10;h[b>>3]=k;h[b+8>>3]=g-k+-1.2154201013012384e-10;d=2;break}}else p=21;else{if(q>>>0<1075594812)if(q>>>0<1075183037){if((q|0)==1074977148){p=21;break}if(!o){g=a+-4.712388980202377;k=g+-1.8231301519518578e-10;h[b>>3]=k;h[b+8>>3]=g-k+-1.8231301519518578e-10;d=3;break}else{g=a+4.712388980202377;k=g+1.8231301519518578e-10;h[b>>3]=k;h[b+8>>3]=g-k+1.8231301519518578e-10;d=-3;break}}else{if((q|0)==1075388923){p=21;break}if(!o){g=a+-6.2831853069365025;k=g+-2.430840202602477e-10;h[b>>3]=k;h[b+8>>3]=g-k+-2.430840202602477e-10;d=4;break}else{g=a+6.2831853069365025;k=g+2.430840202602477e-10;h[b>>3]=k;h[b+8>>3]=g-k+2.430840202602477e-10;d=-4;break}}if(q>>>0>=1094263291){if(q>>>0>2146435071){k=a-a;h[b+8>>3]=k;h[b>>3]=k;d=0;break}c[j>>2]=d;c[j+4>>2]=i&1048575|1096810496;a=+h[j>>3];d=0;do{k=+(~~a|0);h[m+(d<<3)>>3]=k;a=(a-k)*16777216.0;d=d+1|0}while((d|0)!=2);h[m+16>>3]=a;if(a==0.0){d=1;while(1)if(+h[m+(d<<3)>>3]==0.0)d=d+-1|0;else break}else d=2;d=l$(m,n,(q>>>20)+-1046|0,d+1|0,1)|0;a=+h[n>>3];if(!o){h[b>>3]=a;h[b+8>>3]=+h[n+8>>3];break}else{h[b>>3]=-a;h[b+8>>3]=-+h[n+8>>3];d=0-d|0;break}}else p=21}while(0);if((p|0)==21){g=a*.6366197723675814+6755399441055744.0+-6755399441055744.0;d=~~g;e=a-g*1.5707963267341256;f=g*6.077100506506192e-11;a=e-f;h[b>>3]=a;h[j>>3]=a;p=z3(c[j>>2]|0,c[j+4>>2]|0,52)|0;i=q>>>20;if((i-(p&2047)|0)>16){f=g*6.077100506303966e-11;k=e-f;f=g*2.0222662487959506e-21-(e-k-f);a=k-f;h[b>>3]=a;h[j>>3]=a;q=z3(c[j>>2]|0,c[j+4>>2]|0,52)|0;s=g*2.0222662487111665e-21;e=k-s;g=g*8.4784276603689e-32-(k-e-s);if((i-(q&2047)|0)>49){a=e-g;h[b>>3]=a;f=g}else e=k}h[b+8>>3]=e-a-f}l=r;return d|0}function l$(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0.0;H=l;l=l+560|0;C=H+480|0;z=H+320|0;G=H+160|0;E=H;D=c[63116+(f<<2)>>2]|0;p=e+-1|0;y=(d+-3|0)/24|0;y=(y|0)>0?y:0;B=O(y,-24)|0;j=d+-24+B|0;if((D+p|0)>=0){n=D+e|0;k=y-p|0;m=0;while(1){if((k|0)<0)g=0.0;else g=+(c[63132+(k<<2)>>2]|0);h[z+(m<<3)>>3]=g;m=m+1|0;if((m|0)==(n|0))break;else k=k+1|0}}o=(e|0)>0;n=0;while(1){if(o){m=n+p|0;g=0.0;k=0;do{g=g+ +h[a+(k<<3)>>3]*+h[z+(m-k<<3)>>3];k=k+1|0}while((k|0)!=(e|0))}else g=0.0;h[E+(n<<3)>>3]=g;if((n|0)<(D|0))n=n+1|0;else break}t=(j|0)>0;u=24-j|0;v=23-j|0;w=(e|0)>0;x=(j|0)==0;k=D;a:while(1){g=+h[E+(k<<3)>>3];o=(k|0)>0;if(o){m=k;n=0;while(1){i=+(~~(g*5.9604644775390625e-08)|0);c[C+(n<<2)>>2]=~~(g-i*16777216.0);s=m;m=m+-1|0;g=+h[E+(m<<3)>>3]+i;if((s|0)<=1)break;else n=n+1|0}}g=+m$(g,j);g=g-+A(+(g*.125))*8.0;m=~~g;g=g-+(m|0);do if(!t)if(!x)if(!(g>=.5)){p=0;s=m;break}else{n=2;F=20;break}else{n=c[C+(k+-1<<2)>>2]>>23;F=19;break}else{s=C+(k+-1<<2)|0;n=c[s>>2]|0;F=n>>u;n=n-(F<<u)|0;c[s>>2]=n;n=n>>v;m=F+m|0;F=19}while(0);if((F|0)==19){F=0;if((n|0)>0)F=20;else{p=n;s=m}}if((F|0)==20){F=0;s=m+1|0;if(o){m=0;r=0;do{p=C+(r<<2)|0;q=c[p>>2]|0;if(!m)if(!q)m=0;else{m=1;o=16777216;F=23}else{o=16777215;F=23}if((F|0)==23){F=0;c[p>>2]=o-q}r=r+1|0}while((r|0)!=(k|0))}else m=0;b:do if(t){switch(j|0){case 1:{o=8388607;break}case 2:{o=4194303;break}default:break b}r=C+(k+-1<<2)|0;c[r>>2]=c[r>>2]&o}while(0);if((n|0)==2){g=1.0-g;if(!m)p=2;else{p=2;g=g-+m$(1.0,j)}}else p=n}if(!(g==0.0)){F=42;break}if((k|0)>(D|0)){m=0;n=k;do{n=n+-1|0;m=c[C+(n<<2)>>2]|m}while((n|0)>(D|0));if(m){F=41;break}else m=1}else m=1;while(1)if(!(c[C+(D-m<<2)>>2]|0))m=m+1|0;else break;o=m+k|0;if((m|0)<=0){k=o;continue}while(1){n=k+1|0;m=k+e|0;h[z+(m<<3)>>3]=+(c[63132+(n+y<<2)>>2]|0);if(w){g=0.0;k=0;do{g=g+ +h[a+(k<<3)>>3]*+h[z+(m-k<<3)>>3];k=k+1|0}while((k|0)!=(e|0))}else g=0.0;h[E+(n<<3)>>3]=g;if((n|0)<(o|0))k=n;else{k=o;continue a}}}if((F|0)==41)while(1){F=0;j=j+-24|0;k=k+-1|0;if(!(c[C+(k<<2)>>2]|0))F=41;else{o=k;break}}else if((F|0)==42){g=+m$(g,0-j|0);if(g>=16777216.0){i=+(~~(g*5.9604644775390625e-08)|0);c[C+(k<<2)>>2]=~~(g-i*16777216.0);j=B+d|0;k=k+1|0;g=i}c[C+(k<<2)>>2]=~~g;o=k}g=+m$(1.0,j);n=(o|0)>-1;if(n){j=o;while(1){h[E+(j<<3)>>3]=g*+(c[C+(j<<2)>>2]|0);if((j|0)>0){g=g*5.9604644775390625e-08;j=j+-1|0}else break}if(n){k=o;while(1){m=o-k|0;j=0;g=0.0;while(1){g=g+ +h[10904+(j<<3)>>3]*+h[E+(j+k<<3)>>3];if((j|0)>=(D|0)|(j|0)>=(m|0))break;else j=j+1|0}h[G+(m<<3)>>3]=g;if((k|0)>0)k=k+-1|0;else break}}}switch(f|0){case 0:{if(n){g=0.0;j=o;while(1){g=g+ +h[G+(j<<3)>>3];if((j|0)>0)j=j+-1|0;else break}}else g=0.0;i=(p|0)==0?g:-g;F=72;break}case 2:case 1:{if(n){g=0.0;j=o;while(1){g=g+ +h[G+(j<<3)>>3];if((j|0)>0)j=j+-1|0;else break}}else g=0.0;k=(p|0)==0;h[b>>3]=k?g:-g;g=+h[G>>3]-g;if((o|0)>=1){j=1;while(1){g=g+ +h[G+(j<<3)>>3];if((j|0)==(o|0))break;else j=j+1|0}}i=k?g:-g;b=b+8|0;F=72;break}case 3:{if((o|0)>0){j=o;g=+h[G+(o<<3)>>3];do{F=j;j=j+-1|0;E=G+(j<<3)|0;i=+h[E>>3];I=g;g=i+g;h[G+(F<<3)>>3]=I+(i-g);h[E>>3]=g}while((F|0)>1);k=(o|0)>1;if(k){j=o;g=+h[G+(o<<3)>>3];do{F=j;j=j+-1|0;E=G+(j<<3)|0;I=+h[E>>3];i=g;g=I+g;h[G+(F<<3)>>3]=i+(I-g);h[E>>3]=g}while((F|0)>2);if(k){j=o;i=0.0;while(1){i=i+ +h[G+(j<<3)>>3];if((j|0)>2)j=j+-1|0;else break}}else i=0.0}else i=0.0}else i=0.0;g=+h[G>>3];if(!p){h[b>>3]=g;g=+h[G+8>>3]}else{h[b>>3]=-g;i=-i;g=-+h[G+8>>3]}h[b+8>>3]=g;b=b+16|0;F=72;break}default:{}}if((F|0)==72)h[b>>3]=i;l=H;return s&7|0}function m$(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=A3(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function n$(a){a=+a;var b=0,d=0,e=0,f=0.0,g=0.0;h[j>>3]=a;d=c[j+4>>2]|0;b=d&2147483647;do if(b>>>0>2146435071)a=a+a;else{if(b>>>0<1048576){h[j>>3]=a*18014398509481984.0;d=c[j+4>>2]|0;b=d&2147483647;if(!b)break;else e=696219795}else e=715094163;c[j>>2]=0;c[j+4>>2]=((b>>>0)/3|0)+e|d&-2147483648;f=+h[j>>3];g=f*f*(f/a);h[j>>3]=(g*(g*g)*(g*.14599619288661245+-.758397934778766)+(g*(g*1.6214297201053545+-1.8849797954337717)+1.87595182427177))*f;d=s3(c[j>>2]|0,c[j+4>>2]|0,-2147483648,0)|0;e=z;c[j>>2]=d&-1073741824;c[j+4>>2]=e;f=+h[j>>3];a=a/(f*f);a=(a-f)/(f+f+a)*f+f}while(0);return +a}function o$(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function p$(a,b){a=+a;b=+b;return +(+o$(a,b))}function q$(a,b){a=+a;b=b|0;return +(+m$(a,b))}function r$(a,b){a=+a;b=+b;return +(+s$(a,b))}function s$(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=z3(i|0,l|0,52)|0;e=e&2047;m=z3(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=A3(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=t$(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=A3(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=A3(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=A3(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=A3(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=A3(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=A3(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=A3(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=t3(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=A3(f|0,d|0,1)|0;g=z;e=e+-1|0;f=t3(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=A3(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=s3(f|0,d|0,0,-1048576)|0;d=z;e=A3(e|0,0,52)|0;d=d|z;e=o|e}else{e=z3(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function t$(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function u$(a,b){a=+a;b=+b;var d=0.0,e=0,f=0,g=0,i=0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+32|0;m=q+24|0;n=q+16|0;o=q+8|0;p=q;h[j>>3]=a;t=c[j>>2]|0;g=c[j+4>>2]|0;h[j>>3]=b;e=c[j>>2]|0;g=g&2147483647;f=c[j+4>>2]&2147483647;i=g>>>0<f>>>0|(g|0)==(f|0)&t>>>0<e>>>0;s=i?e:t;r=i?f:g;e=i?t:e;f=i?g:f;g=z3(s|0,r|0,52)|0;i=z3(e|0,f|0,52)|0;c[j>>2]=s;c[j+4>>2]=r;a=+h[j>>3];c[j>>2]=e;c[j+4>>2]=f;k=+h[j>>3];do if((i|0)!=2047){if(!((e|0)==0&(f|0)==0|(g|0)==2047)){if((g-i|0)>64){a=a+k;break}if((g|0)>1533){d=5260135901548373507240989.0e186;b=a*1.90109156629516e-211;a=k*1.90109156629516e-211}else{t=(i|0)<573;d=t?1.90109156629516e-211:1.0;b=t?a*5260135901548373507240989.0e186:a;a=t?k*5260135901548373507240989.0e186:k}v$(m,n,b);v$(o,p,a);a=d*+C(+(+h[p>>3]+ +h[n>>3]+ +h[o>>3]+ +h[m>>3]))}}else a=k;while(0);l=q;return +a}function v$(a,b,c){a=a|0;b=b|0;c=+c;var d=0.0,e=0.0;e=c*134217729.0;e=e+(c-e);d=c-e;c=c*c;h[a>>3]=c;h[b>>3]=d*d+(e*e-c+e*2.0*d);return}function w$(a,b,d){a=+a;b=b|0;d=d|0;var e=0.0,f=0,g=0,i=0.0,k=0,m=0;k=l;l=l+16|0;g=k;h[j>>3]=a;f=c[j+4>>2]&2147483647;do if(f>>>0<1072243196)if(f>>>0<1044816030){h[b>>3]=a;h[d>>3]=1.0;break}else{h[b>>3]=+f$(a,0.0,0);h[d>>3]=+i$(a,0.0);break}else{if(f>>>0>2146435071){i=a-a;h[d>>3]=i;h[b>>3]=i;break}f=k$(a,g)|0;m=g+8|0;e=+f$(+h[g>>3],+h[m>>3],1);a=+i$(+h[g>>3],+h[m>>3]);switch(f&3){case 0:{h[b>>3]=e;i=a;break}case 1:{h[b>>3]=a;i=-e;break}case 2:{h[b>>3]=-e;i=-a;break}case 3:{h[b>>3]=-a;i=e;break}default:{}}h[d>>3]=i}while(0);l=k;return}function x$(a,b){a=+a;b=b|0;return +(+h$(a,b))}function y$(a){a=a|0;if(a>>>0<131072)a=(d[143341+((d[143341+(a>>>8)>>0]|0)<<5|a>>>3&31)>>0]|0)>>>(a&7)&1;else a=0;return a|0}function z$(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;if(!e)f=0;else{f=a[b>>0]|0;a:do if(!(f<<24>>24))f=0;else while(1){e=e+-1|0;g=a[c>>0]|0;if(!(f<<24>>24==g<<24>>24&((e|0)!=0&g<<24>>24!=0)))break a;b=b+1|0;c=c+1|0;f=a[b>>0]|0;if(!(f<<24>>24)){f=0;break}}while(0);f=(f&255)-(d[c>>0]|0)|0}return f|0}function A$(b,c){b=b|0;c=c|0;b=V_(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function B$(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function C$(a,b,c){a=a|0;b=b|0;c=c|0;c=F$(a,b,c,-1,0)|0;return c|0}function D$(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function E$(a){a=a|0;return (a+-48|0)>>>0<10|0}function F$(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+128|0;h=j;c[h>>2]=0;i=h+4|0;c[i>>2]=a;c[h+44>>2]=a;g=h+8|0;c[g>>2]=(a|0)<0?-1:a+2147483647|0;c[h+76>>2]=-1;G$(h,0);d=H$(h,d,1,e,f)|0;if(b|0)c[b>>2]=a+((c[i>>2]|0)+(c[h+108>>2]|0)-(c[g>>2]|0));l=j;return d|0}function G$(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function H$(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(O_()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=I$(b)|0}while((B$(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=I$(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=I$(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=I$(b)|0;if((d[146510+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){G$(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[146510+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;G$(b,0);c[(O_()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=I$(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=r3(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=s3(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=I$(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[146766+((e*23|0)>>>5&7)>>0]|0;f=a[146510+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<<n;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=I$(b)|0;f=a[146510+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=z3(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0<k>>>0|(m|0)==(k|0)&l>>>0<i>>>0)){f=k;n=72;break}else j=k;while(1){i=A3(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=I$(b)|0;f=a[146510+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[146510+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=I$(b)|0;f=a[146510+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=w3(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=r3(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=s3(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=I$(b)|0;f=a[146510+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[146510+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=I$(b)|0}while(e>>>0>(d[146510+i>>0]|0)>>>0);c[(O_()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0<h>>>0|(e|0)==(h|0)&i>>>0<g>>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(O_()|0)>>2]=34;g=s3(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(O_()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=t3(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function I$(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=J$(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function J$(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((K$(a)|0)==0?(nb[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function K$(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)nb[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function L$(a){a=a|0;return (a+-48|0)>>>0<10|0}function M$(a){a=a|0;if(!(N$(a)|0))a=(E$(a)|0)!=0&1;else a=1;return a|0}function N$(a){a=a|0;return ((a|32)+-97|0)>>>0<26|0}function O$(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;e=a[b>>0]|0;a:do if(!(e<<24>>24))b=0;else{g=b;b=e;f=e&255;while(1){e=a[c>>0]|0;if(!(e<<24>>24))break a;if(b<<24>>24!=e<<24>>24?(f=P$(f)|0,(f|0)!=(P$(d[c>>0]|0)|0)):0)break;b=g+1|0;c=c+1|0;e=a[b>>0]|0;if(!(e<<24>>24)){b=0;break a}else{g=b;b=e;f=e&255}}b=a[g>>0]|0}while(0);g=P$(b&255)|0;return g-(P$(d[c>>0]|0)|0)|0}function P$(a){a=a|0;var b=0;b=(Q$(a)|0)==0;return (b?a:a|32)|0}function Q$(a){a=a|0;return (a+-65|0)>>>0<26|0}function R$(a){a=a|0;return S$(a,0)|0}function S$(c,f){c=c|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=(f<<1)+-1|0;l=f+-1|0;a:do if(!((c+-43008|0)>>>0<22272|((c+-11776|0)>>>0<30784|((c+-1536|0)>>>0<2560|(T$(c)|0)==0)))){g=(f|0)!=0;if(g&(c+-4256|0)>>>0<46){if((c|0)>4293)switch(c|0){case 4295:case 4301:break;default:break a}c=c+7264|0;break}if((c+-11520|0)>>>0<38&(g^1)){c=c+-7264|0;break}else g=0;do{i=a[66242+(g<<2)+2>>0]|0;j=i<<24>>24;h=c-(e[66242+(g<<2)>>1]|0)|0;if((h-(l&j)|0)>>>0<(d[66242+(g<<2)+3>>0]|0)>>>0){m=11;break}g=g+1|0}while((g|0)!=61);if((m|0)==11)if(i<<24>>24==1){c=f+c-(h&1)|0;break}else{c=(O(k,j)|0)+c|0;break}i=1-f|0;g=b[65754+(i<<1)>>1]|0;b:do if(g<<16>>16){h=0;while(1){if((g&65535|0)==(c|0))break;h=h+1|0;g=b[65754+(h<<2)+(i<<1)>>1]|0;if(!(g<<16>>16))break b}c=e[65754+(h<<2)+(f<<1)>>1]|0;break a}while(0);return ((c+-66600+(f*40|0)|0)>>>0<40?c+-40+(f*80|0)|0:c)|0}while(0);return c|0}function T$(a){a=a|0;if(a>>>0<131072)a=(d[146775+((d[146775+(a>>>8)>>0]|0)<<5|a>>>3&31)>>0]|0)>>>(a&7)&1;else a=a>>>0<196606&1;return a|0}function U$(a){a=a|0;var b=0;b=a;while(1)if(!(c[b>>2]|0))break;else b=b+4|0;return b-a>>2|0}function V$(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0;if(!e)b=0;else{f=a[b>>0]|0;a:do if(!(f<<24>>24))b=0;else{h=b;b=f;f=f&255;while(1){e=e+-1|0;g=a[c>>0]|0;if(!((e|0)!=0&g<<24>>24!=0))break a;if(b<<24>>24!=g<<24>>24?(g=P$(f)|0,(g|0)!=(P$(d[c>>0]|0)|0)):0)break;b=h+1|0;c=c+1|0;f=a[b>>0]|0;if(!(f<<24>>24)){b=0;break a}else{h=b;b=f;f=f&255}}b=a[h>>0]|0}while(0);b=P$(b&255)|0;b=b-(P$(d[c>>0]|0)|0)|0}return b|0}function W$(a){a=a|0;if(a>>>0>=255)if((a+-57344|0)>>>0<8185|(a>>>0<8232|(a+-8234|0)>>>0<47062))a=1;else return (a&65534|0)!=65534&(a+-65532|0)>>>0<1048580&1|0;else a=(a+1&127)>>>0>32&1;return a|0}function X$(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?187560:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[($$()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[62280+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(O_()|0)>>2]=84;f=-1}l=k;return f|0}function Y$(a,b){a=a|0;b=b|0;if(!a)a=0;else a=Z$(a,b,0)|0;return a|0}function Z$(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(_$()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(O_()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(O_()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function _$(){return e$()|0}function $$(){return e$()|0}function a0(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+272|0;n=p+8|0;o=p;do if(!(a[d>>0]|0)){d=Ta(149751)|0;if(d|0?a[d>>0]|0:0)break;d=Ta(149758+(b*12|0)|0)|0;if(d|0?a[d>>0]|0:0)break;d=Ta(149830)|0;if(d|0?a[d>>0]|0:0)break;d=149835}while(0);e=0;a:do{switch(a[d+e>>0]|0){case 47:case 0:break a;default:{}}e=e+1|0}while(e>>>0<15);f=a[d>>0]|0;if(f<<24>>24!=46?(a[d+e>>0]|0)==0:0)if(f<<24>>24==67)m=15;else{k=d;m=16}else{d=149835;m=15}if((m|0)==15)if(!(a[d+1>>0]|0))m=18;else{k=d;m=16}b:do if((m|0)==16)if((b$(k,149835)|0)!=0?(b$(k,149843)|0)!=0:0){d=c[46891]|0;if(d|0)do{if(!(b$(k,d+8|0)|0))break b;d=c[d+24>>2]|0}while((d|0)!=0);ta(187568);d=c[46891]|0;c:do if(d|0){while(1){if(!(b$(k,d+8|0)|0))break;d=c[d+24>>2]|0;if(!d)break c}La(187568);break b}while(0);d:do if(((c[46876]|0)==0?(g=Ta(149849)|0,(g|0)!=0):0)?(a[g>>0]|0)!=0:0){i=254-e|0;j=e+1|0;f=g;while(1){h=V_(f,58)|0;d=a[h>>0]|0;g=h-f+((d<<24>>24!=0)<<31>>31)|0;if(g>>>0<i>>>0){F3(n|0,f|0,g|0)|0;f=n+g|0;a[f>>0]=47;F3(f+1|0,k|0,e|0)|0;a[n+(j+g)>>0]=0;f=ua(n|0,o|0)|0;if(f|0)break;d=a[h>>0]|0}f=h+(d<<24>>24!=0&1)|0;if(!(a[f>>0]|0)){m=41;break d}}d=C_(28)|0;if(!d){S_(f,c[o>>2]|0)|0;m=41;break}else{c[d>>2]=f;c[d+4>>2]=c[o>>2];o=d+8|0;F3(o|0,k|0,e|0)|0;a[o+e>>0]=0;c[d+24>>2]=c[46891];c[46891]=d;break}}else m=41;while(0);if((m|0)==41){d=C_(28)|0;if(d){c[d>>2]=c[15558];c[d+4>>2]=c[15559];o=d+8|0;F3(o|0,k|0,e|0)|0;a[o+e>>0]=0;c[d+24>>2]=c[46891];c[46891]=d}}La(187568);d=(b|0)==0&(d|0)==0?62232:d}else{d=k;m=18}while(0);do if((m|0)==18){if((b|0)==0?(a[d+1>>0]|0)==46:0){d=62232;break}d=0}while(0);l=p;return d|0}function b0(a,b){a=a|0;b=b|0;c0(a,b)|0;return a|0}function c0(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function d0(a){a=a|0;return ((a|0)==32|(a|0)==9)&1|0}function e0(a){a=a|0;if(!a)a=0;else a=(f0(63396,a)|0)!=0&1;return a|0}function f0(a,b){a=a|0;b=b|0;var d=0;if(!b)a=a+((U$(a)|0)<<2)|0;else{while(1){d=c[a>>2]|0;if((d|0)==0|(d|0)==(b|0))break;else a=a+4|0}a=d|0?a:0}return a|0}function g0(a,b){a=a|0;b=b|0;do switch(b|0){case 1:{a=h0(a)|0;break}case 2:{a=T$(a)|0;break}case 3:{a=i0(a)|0;break}case 4:{a=j0(a)|0;break}case 5:{a=L$(a)|0;break}case 6:{a=k0(a)|0;break}case 7:{a=l0(a)|0;break}case 8:{a=W$(a)|0;break}case 9:{a=y$(a)|0;break}case 10:{a=e0(a)|0;break}case 11:{a=m0(a)|0;break}case 12:{a=n0(a)|0;break}default:a=0}while(0);return a|0}function h0(a){a=a|0;if(!(L$(a)|0))a=(T$(a)|0)!=0&1;else a=1;return a|0}function i0(a){a=a|0;return d0(a)|0}function j0(a){a=a|0;return ((a+-65529|0)>>>0<3|((a&-2|0)==8232|(a>>>0<32|(a+-127|0)>>>0<33)))&1|0}function k0(a){a=a|0;if(!(e0(a)|0))a=(W$(a)|0)!=0&1;else a=0;return a|0}function l0(a){a=a|0;return (R$(a)|0)!=(a|0)|0}function m0(a){a=a|0;return (o0(a)|0)!=(a|0)|0}function n0(a){a=a|0;return ((a+-48|0)>>>0<10|((a|32)+-97|0)>>>0<6)&1|0}function o0(a){a=a|0;return S$(a,1)|0}function p0(a){a=a|0;return (a+-97|0)>>>0<26|0}function q0(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=63484;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(O_()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=r0(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function r0(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((s0(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=t0(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=s0(b,d,n,q,p)|0;if(h){nb[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=s0(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)u0(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function s0(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;I=l;l=l+64|0;D=I+16|0;E=I;A=I+24|0;G=I+8|0;H=I+20|0;c[D>>2]=e;w=(d|0)!=0;x=A+40|0;y=x;A=A+39|0;B=G+4|0;j=0;e=0;m=0;a:while(1){do if((e|0)>-1)if((j|0)>(2147483647-e|0)){c[(O_()|0)>>2]=75;e=-1;break}else{e=j+e|0;break}while(0);r=c[D>>2]|0;j=a[r>>0]|0;if(!(j<<24>>24)){v=88;break}else k=r;b:while(1){switch(j<<24>>24){case 37:{j=k;v=9;break b}case 0:{j=k;break b}default:{}}u=k+1|0;c[D>>2]=u;j=a[u>>0]|0;k=u}c:do if((v|0)==9)while(1){v=0;if((a[k+1>>0]|0)!=37)break c;j=j+1|0;k=k+2|0;c[D>>2]=k;if((a[k>>0]|0)!=37)break;else v=9}while(0);j=j-r|0;if(w)v0(d,r,j);if(j|0)continue;u=(E$(a[(c[D>>2]|0)+1>>0]|0)|0)==0;k=c[D>>2]|0;if(!u?(a[k+2>>0]|0)==36:0){s=(a[k+1>>0]|0)+-48|0;n=1;j=3}else{s=-1;n=m;j=1}j=k+j|0;c[D>>2]=j;k=a[j>>0]|0;u=(k<<24>>24)+-32|0;if(u>>>0>31|(1<<u&75913|0)==0)m=0;else{m=0;do{m=1<<(k<<24>>24)+-32|m;j=j+1|0;c[D>>2]=j;k=a[j>>0]|0;u=(k<<24>>24)+-32|0}while(!(u>>>0>31|(1<<u&75913|0)==0))}if(k<<24>>24==42){if((E$(a[j+1>>0]|0)|0)!=0?(F=c[D>>2]|0,(a[F+2>>0]|0)==36):0){j=F+1|0;c[i+((a[j>>0]|0)+-48<<2)>>2]=10;j=c[g+((a[j>>0]|0)+-48<<3)>>2]|0;k=1;n=F+3|0}else{if(n|0){e=-1;break}if(w){u=(c[f>>2]|0)+(4-1)&~(4-1);j=c[u>>2]|0;c[f>>2]=u+4}else j=0;k=0;n=(c[D>>2]|0)+1|0}c[D>>2]=n;t=(j|0)<0;u=t?0-j|0:j;m=t?m|8192:m;t=k;j=n}else{j=w0(D)|0;if((j|0)<0){e=-1;break}u=j;t=n;j=c[D>>2]|0}do if((a[j>>0]|0)==46){if((a[j+1>>0]|0)!=42){c[D>>2]=j+1;p=w0(D)|0;j=c[D>>2]|0;break}if(E$(a[j+2>>0]|0)|0?(C=c[D>>2]|0,(a[C+3>>0]|0)==36):0){p=C+2|0;c[i+((a[p>>0]|0)+-48<<2)>>2]=10;p=c[g+((a[p>>0]|0)+-48<<3)>>2]|0;j=C+4|0;c[D>>2]=j;break}if(t|0){e=-1;break a}if(w){q=(c[f>>2]|0)+(4-1)&~(4-1);j=c[q>>2]|0;c[f>>2]=q+4}else j=0;q=(c[D>>2]|0)+2|0;c[D>>2]=q;p=j;j=q}else p=-1;while(0);q=0;while(1){if(((a[j>>0]|0)+-65|0)>>>0>57){e=-1;break a}k=j;j=j+1|0;c[D>>2]=j;k=a[(a[k>>0]|0)+-65+(149862+(q*58|0))>>0]|0;n=k&255;if((n+-1|0)>>>0>=8)break;else q=n}if(!(k<<24>>24)){e=-1;break}o=(s|0)>-1;do if(k<<24>>24==19)if(o){e=-1;break a}else v=50;else{if(o){c[i+(s<<2)>>2]=n;o=g+(s<<3)|0;s=c[o+4>>2]|0;v=E;c[v>>2]=c[o>>2];c[v+4>>2]=s;v=50;break}if(!w){e=0;break a}x0(E,n,f);j=c[D>>2]|0}while(0);if((v|0)==50){v=0;if(!w){j=0;m=t;continue}}k=a[j+-1>>0]|0;k=(q|0)!=0&(k&15|0)==3?k&-33:k;j=m&-65537;s=(m&8192|0)==0?m:j;d:do switch(k|0){case 110:switch((q&255)<<24>>24){case 0:{c[c[E>>2]>>2]=e;j=0;m=t;continue a}case 1:{c[c[E>>2]>>2]=e;j=0;m=t;continue a}case 2:{j=c[E>>2]|0;c[j>>2]=e;c[j+4>>2]=((e|0)<0)<<31>>31;j=0;m=t;continue a}case 3:{b[c[E>>2]>>1]=e;j=0;m=t;continue a}case 4:{a[c[E>>2]>>0]=e;j=0;m=t;continue a}case 6:{c[c[E>>2]>>2]=e;j=0;m=t;continue a}case 7:{j=c[E>>2]|0;c[j>>2]=e;c[j+4>>2]=((e|0)<0)<<31>>31;j=0;m=t;continue a}default:{j=0;m=t;continue a}}case 112:{k=120;j=p>>>0>8?p:8;m=s|8;v=62;break}case 88:case 120:{j=p;m=s;v=62;break}case 111:{k=E;j=c[k>>2]|0;k=c[k+4>>2]|0;o=z0(j,k,x)|0;m=y-o|0;q=0;n=150326;p=(s&8|0)==0|(p|0)>(m|0)?p:m+1|0;m=s;v=68;break}case 105:case 100:{k=E;j=c[k>>2]|0;k=c[k+4>>2]|0;if((k|0)<0){j=t3(0,0,j|0,k|0)|0;k=z;m=E;c[m>>2]=j;c[m+4>>2]=k;m=1;n=150326;v=67;break d}else{m=(s&2049|0)!=0&1;n=(s&2048|0)==0?((s&1|0)==0?150326:150328):150327;v=67;break d}}case 117:{k=E;m=0;n=150326;j=c[k>>2]|0;k=c[k+4>>2]|0;v=67;break}case 99:{a[A>>0]=c[E>>2];r=A;q=0;n=150326;o=x;k=1;break}case 109:{k=c$(c[(O_()|0)>>2]|0)|0;v=72;break}case 115:{k=c[E>>2]|0;k=k|0?k:150336;v=72;break}case 67:{c[G>>2]=c[E>>2];c[B>>2]=0;c[E>>2]=G;p=-1;m=G;v=76;break}case 83:{j=c[E>>2]|0;if(!p){B0(d,32,u,0,s);j=0;v=85}else{m=j;v=76}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{j=C0(d,+h[E>>3],u,p,s,k)|0;m=t;continue a}default:{q=0;n=150326;o=x;k=p;j=s}}while(0);e:do if((v|0)==62){s=E;r=c[s>>2]|0;s=c[s+4>>2]|0;o=y0(r,s,x,k&32)|0;n=(m&8|0)==0|(r|0)==0&(s|0)==0;q=n?0:2;n=n?150326:150326+(k>>4)|0;p=j;j=r;k=s;v=68}else if((v|0)==67){o=A0(j,k,x)|0;q=m;m=s;v=68}else if((v|0)==72){v=0;s=D$(k,0,p)|0;m=(s|0)==0;r=k;q=0;n=150326;o=m?k+p|0:s;k=m?p:s-k|0}else if((v|0)==76){v=0;o=m;j=0;k=0;while(1){n=c[o>>2]|0;if(!n)break;k=Y$(H,n)|0;if((k|0)<0|k>>>0>(p-j|0)>>>0)break;j=k+j|0;if(p>>>0>j>>>0)o=o+4|0;else break}if((k|0)<0){e=-1;break a}B0(d,32,u,j,s);if(!j){j=0;v=85}else{n=0;while(1){k=c[m>>2]|0;if(!k){v=85;break e}k=Y$(H,k)|0;n=k+n|0;if((n|0)>(j|0)){v=85;break e}v0(d,H,k);if(n>>>0>=j>>>0){v=85;break}else m=m+4|0}}}while(0);if((v|0)==68){v=0;k=(j|0)!=0|(k|0)!=0;j=(p|0)!=0|k;k=y-o+((k^1)&1)|0;r=j?o:x;o=x;k=j?((p|0)>(k|0)?p:k):p;j=(p|0)>-1?m&-65537:m}else if((v|0)==85){v=0;B0(d,32,u,j,s^8192);j=(u|0)>(j|0)?u:j;m=t;continue}p=o-r|0;o=(k|0)<(p|0)?p:k;s=o+q|0;m=(u|0)<(s|0)?s:u;B0(d,32,m,s,j);v0(d,n,q);B0(d,48,m,s,j^65536);B0(d,48,o,p,0);v0(d,r,p);B0(d,32,m,s,j^8192);j=m;m=t}f:do if((v|0)==88)if(!d)if(m){e=1;while(1){j=c[i+(e<<2)>>2]|0;if(!j)break;x0(g+(e<<3)|0,j,f);j=e+1|0;if((e|0)<9)e=j;else{e=j;break}}if((e|0)<10)while(1){if(c[i+(e<<2)>>2]|0){e=-1;break f}if((e|0)<9)e=e+1|0;else{e=1;break}}else e=1}else e=0;while(0);l=I;return e|0}function t0(a){a=a|0;return 0}function u0(a){a=a|0;return}function v0(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))E0(b,d,a)|0;return}function w0(b){b=b|0;var d=0,e=0;if(!(E$(a[c[b>>2]>>0]|0)|0))d=0;else{d=0;do{e=c[b>>2]|0;d=(d*10|0)+-48+(a[e>>0]|0)|0;e=e+1|0;c[b>>2]=e}while((E$(a[e>>0]|0)|0)!=0)}return d|0}function x0(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function y0(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[150374+(b&15)>>0]|0|f;b=z3(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function z0(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=z3(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function A0(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=x3(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=w3(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function B0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;H3(f|0,b<<24>>24|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{v0(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}v0(a,f,e)}l=g;return}function C0(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;D0(e)|0;if((z|0)<0){e=-e;C=1;B=150343}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?150344:150349):150346}D0(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;B0(b,32,f,j,h&-65537);v0(b,B,C);v0(b,e!=e|0.0!=0.0?(G?150511:150370):G?150362:150366,3);B0(b,32,f,j,h^8192)}else{r=+x$(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=A0(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[150374+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;B0(b,32,f,F,h);v0(b,s,q);B0(b,48,f,F,h^65536);v0(b,G,k);B0(b,48,j-k|0,0,0);v0(b,o,E);B0(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=A3(c[j>>2]|0,0,o|0)|0;x=s3(x|0,z|0,m|0,0)|0;y=z;v=x3(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=w3(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0<m>>>0){o=(1<<s)+-1|0;p=1e9>>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0<m>>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0<g>>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0<x>>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0<j>>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=A0(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;B0(b,32,f,j,h);v0(b,B,C);B0(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=A0(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){H3(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}v0(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)v0(b,150390,1);if(n>>>0<w>>>0&(k|0)>0)while(1){m=A0(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){H3(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}v0(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0<w>>>0&(k|0)>9)){k=m;break}else k=m}B0(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=A0(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;v0(b,m,1);if(s&(k|0)<1){m=n;break}v0(b,150390,1);m=n}else{if(m>>>0<=G>>>0)break;H3(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;v0(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0<t>>>0&(k|0)>-1)}B0(b,48,k+18|0,18,0);v0(b,v,E-v|0)}B0(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function D0(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function E0(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(F0(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0<d>>>0){f=nb[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=nb[c[e+36>>2]&63](e,b,i)|0;if(f>>>0<i>>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);F3(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function F0(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function G0(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;F3(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function H0(b){b=b|0;var c=0,d=0,e=0,f=0;e=a[b>>0]|0;c=1;d=150392;f=97;while(1){if(e<<24>>24==f<<24>>24?(b$(b,d)|0)==0:0)break;d=d+6|0;f=a[d>>0]|0;if(!(f<<24>>24)){c=0;break}else c=c+1|0}return c|0}function I0(a){a=a|0;var b=0;b=(p0(a)|0)==0;return (b?a:a&95)|0}function J0(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;do if(b>>>0>6)d=0;else{ta(187576);if((b|0)!=6){d=K0(b,d)|0;La(187576);break}if(!d){d=194052;b=0}else{b=g;e=150465;f=b+16|0;do{a[b>>0]=a[e>>0]|0;b=b+1|0;e=e+1|0}while((b|0)<(f|0));f=0;do{b=V_(d,59)|0;e=b-d|0;if((e|0)<16){F3(g|0,d|0,e|0)|0;a[g+e>>0]=0;d=(a[b>>0]|0)==0?d:b+1|0}K0(f,g)|0;f=f+1|0}while((f|0)!=6);d=194052;b=0}while(1){f=c[187536+(b<<2)>>2]|0;f=f|0?f+8|0:150481;e=W_(f)|0;F3(d|0,f|0,e|0)|0;f=d+e|0;a[f>>0]=59;b=b+1|0;if((b|0)==6)break;else d=d+(e+1)|0}a[f>>0]=0;La(187576);d=194052}while(0);l=h;return d|0}function K0(a,b){a=a|0;b=b|0;if(!b)a=c[187536+(a<<2)>>2]|0;else{b=a0(a,b)|0;c[187536+(a<<2)>>2]=b;a=b}return (a|0?a+8|0:150481)|0}function L0(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function M0(a){a=a|0;return N0(a)|0}function N0(a){a=a|0;return B3(a|0)|0}function O0(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if((c[f+76>>2]|0)>-1)m=t0(f)|0;else m=0;g=e+-1|0;if((e|0)<2){n=f+74|0;l=a[n>>0]|0;a[n>>0]=l+255|l;if(m|0)u0(f);if(!g)a[b>>0]=0;else b=0}else{a:do if(g){k=f+4|0;l=f+8|0;e=b;while(1){h=c[k>>2]|0;o=h;p=(c[l>>2]|0)-o|0;i=D$(h,10,p)|0;j=(i|0)==0;i=j?p:1-o+i|0;i=i>>>0<g>>>0?i:g;F3(e|0,h|0,i|0)|0;h=(c[k>>2]|0)+i|0;c[k>>2]=h;e=e+i|0;i=g-i|0;if(!(j&(i|0)!=0)){n=17;break a}if(h>>>0>=(c[l>>2]|0)>>>0){g=J$(f)|0;if((g|0)<0)break;else j=g}else{c[k>>2]=h+1;j=d[h>>0]|0}g=i+-1|0;h=e+1|0;a[e>>0]=j;if(!((g|0)!=0&(j&255|0)!=10)){e=h;n=17;break a}else e=h}if((e|0)!=(b|0)?(c[f>>2]&16|0)!=0:0)n=17;else b=0}else{e=b;n=17}while(0);if((n|0)==17)if(!b)b=0;else a[e>>0]=0;if(m)u0(f)}return b|0}function P0(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=A$(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=Q0(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=R0(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=S0(b,c)|0;break}else{b=T0(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function Q0(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function R0(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function S0(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function T0(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(L0(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0<s>>>0){i=D$(g,0,k)|0;if(i)if((i-h|0)>>>0<s>>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0<f>>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function U0(a,b,c){a=a|0;b=b|0;c=c|0;V0(a,b,c)|0;return a|0}function V0(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);H3(b|0,0,e|0)|0;return b|0}function W0(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+32|0;f=g;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f+24>>2]=0;c[f+28>>2]=0;e=a[d>>0]|0;do if(!(e<<24>>24))d=0;else{if(!(a[d+1>>0]|0)){d=b;while(1)if((a[d>>0]|0)==e<<24>>24)d=d+1|0;else break;d=d-b|0;break}do{h=f+(((e&255)>>>5&255)<<2)|0;c[h>>2]=c[h>>2]|1<<(e&31);d=d+1|0;e=a[d>>0]|0}while(e<<24>>24!=0);e=a[b>>0]|0;a:do if(!(e<<24>>24))d=b;else{d=b;do{if(!(c[f+(((e&255)>>>5&255)<<2)>>2]&1<<(e&31)))break a;d=d+1|0;e=a[d>>0]|0}while(e<<24>>24!=0)}while(0);d=d-b|0}while(0);l=g;return d|0}function X0(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=P_(a)|0;a=Ja(6,d|0)|0;a=N_((a|0)==-4?0:a)|0;l=b;return a|0}function Y0(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Z0(a,b,f)|0;l=e;return d|0}function Z0(a,b,c){a=a|0;b=b|0;c=c|0;return q0(a,2147483647,b,c)|0}function _0(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0<h>>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)$0(a,d,e,f,j);else b1(a,d,e,k,f,0,j);if((f|0)==1){c1(k,1);f=0;break}else{c1(k,b);f=1;break}}else{$0(a,d,e,f,j);a1(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0<g>>>0)}else{f=1;b=1}b1(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){c1(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;a1(k,1);b1(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);c1(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;b1(h,d,e,k,n,1,j);a=h;f=n;continue}b=d1(k)|0;a1(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return}function $0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((lb[d&127](a,g)|0)>-1?(lb[d&127](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((lb[d&127](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);f1(b,m,e);l=n;return}function a1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function b1(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(lb[d&127](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((lb[d&127](g,j)|0)>-1){i=10;break a}if((lb[d&127](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=d1(n)|0;a1(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((lb[d&127](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){f1(b,o,e);$0(a,b,d,f,h)}l=p;return}function c1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<<b;c[a>>2]=d<<b;return}function d1(a){a=a|0;var b=0;b=e1((c[a>>2]|0)+-1|0)|0;if(!b){b=e1(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function e1(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function f1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;F3(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;F3(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function g1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=r0(a,b,f)|0;l=e;return d|0}function h1(b){b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;e=f;sa(0,e|0)|0;d=0;e=(c[e+4>>2]|0)*65537^(e>>>4)+b;while(1){a[b+d>>0]=(e&15)+65|e<<1&32;d=d+1|0;if((d|0)==6)break;else e=e>>>5}l=f;return b|0}function i1(a,b,c){a=a|0;b=b|0;c=c|0;c=F$(a,b,c,-2147483648,0)|0;return c|0}function j1(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h;e=a[d>>0]|0;a:do if(e<<24>>24!=0?(a[d+1>>0]|0)!=0:0){H3(f|0,0,32)|0;e=a[d>>0]|0;if(e<<24>>24)do{i=f+(((e&255)>>>5&255)<<2)|0;c[i>>2]=c[i>>2]|1<<(e&31);d=d+1|0;e=a[d>>0]|0}while(e<<24>>24!=0);d=a[b>>0]|0;if(!(d<<24>>24))e=b;else{e=b;do{if(c[f+(((d&255)>>>5&255)<<2)>>2]&1<<(d&31)|0)break a;e=e+1|0;d=a[e>>0]|0}while(d<<24>>24!=0)}}else g=3;while(0);if((g|0)==3)e=V_(b,e<<24>>24)|0;l=h;return e-b|0}function k1(b,d){b=b|0;d=d|0;var e=0;if(!b){b=c[46896]|0;if(!b)b=0;else e=3}else e=3;do if((e|0)==3){b=b+(W0(b,d)|0)|0;if(!(a[b>>0]|0)){c[46896]=0;b=0;break}d=b+(j1(b,d)|0)|0;c[46896]=d;if(!(a[d>>0]|0)){c[46896]=0;break}else{c[46896]=d+1;a[d>>0]=0;break}}while(0);return b|0}function l1(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;e=c&255;do{if(!d){c=0;break}d=d+-1|0;c=b+d|0}while((a[c>>0]|0)!=e<<24>>24);return c|0}function m1(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if(!b){b=c[e>>2]|0;if(!b)b=0;else f=3}else f=3;do if((f|0)==3){b=b+(W0(b,d)|0)|0;if(!(a[b>>0]|0)){c[e>>2]=0;b=0;break}d=b+(j1(b,d)|0)|0;c[e>>2]=d;if(!(a[d>>0]|0)){c[e>>2]=0;break}else{c[e>>2]=d+1;a[d>>0]=0;break}}while(0);return b|0}function n1(a){a=a|0;var b=0,c=0;b=(W_(a)|0)+1|0;c=C_(b)|0;if(!c)a=0;else a=F3(c|0,a|0,b|0)|0;return a|0}function o1(a,b){a=a|0;b=b|0;return l1(a,b,(W_(a)|0)+1|0)|0}function p1(a,b){a=a|0;b=b|0;b0(a+(W_(a)|0)|0,b)|0;return a|0}function q1(b,c){b=b|0;c=c|0;c=b+(j1(b,c)|0)|0;return (a[c>>0]|0?c:0)|0}function r1(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(t0(a)|0)==0;a=(c[a>>2]|0)>>>4&1}else a=(c[a>>2]|0)>>>4&1;return a|0}function s1(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=t0(a)|0;else f=0;t1(a);g=(c[a>>2]&1|0)!=0;if(!g){e=u1()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;v1()}b=w1(a)|0;b=kb[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)D_(d);if(g){if(f|0)u0(a)}else D_(a);return b|0}function t1(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(y1()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function u1(){ta(187588);return 187596}function v1(){La(187588);return}function w1(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=x1(a)|0;break}d=(t0(a)|0)==0;b=x1(a)|0;if(!d)u0(a)}else{if(!(c[15685]|0))b=0;else b=w1(c[15685]|0)|0;a=c[(u1()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=t0(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=x1(a)|0|b;if(d|0)u0(a);a=c[a+56>>2]|0}while((a|0)!=0);v1()}while(0);return b|0}function x1(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(nb[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0<g>>>0)nb[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function y1(){return e$()|0}function z1(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+64|0;j=k+40|0;h=k+24|0;g=k+16|0;f=k;i=k+56|0;if(A$(150498,a[d>>0]|0)|0){e=C_(1156)|0;if(!e)e=0;else{H3(e|0,0,124)|0;if(!(A$(d,43)|0))c[e>>2]=(a[d>>0]|0)==114?8:4;if(A$(d,101)|0){c[f>>2]=b;c[f+4>>2]=2;c[f+8>>2]=1;Ea(221,f|0)|0}if((a[d>>0]|0)==97){c[g>>2]=b;c[g+4>>2]=3;d=Ea(221,g|0)|0;if(!(d&1024)){c[h>>2]=b;c[h+4>>2]=4;c[h+8>>2]=d|1024;Ea(221,h|0)|0}f=c[e>>2]|128;c[e>>2]=f}else f=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;d=e+75|0;a[d>>0]=-1;if((f&8|0)==0?(c[j>>2]=b,c[j+4>>2]=21523,c[j+8>>2]=i,(Ia(54,j|0)|0)==0):0)a[d>>0]=10;c[e+32>>2]=15;c[e+36>>2]=18;c[e+40>>2]=16;c[e+12>>2]=17;if(!(c[46875]|0))c[e+76>>2]=-1;A1(e)|0}}else{c[(O_()|0)>>2]=22;e=0}l=k;return e|0}function A1(a){a=a|0;var b=0,d=0;b=u1()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;v1();return a|0}function B1(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+16|0;g=j;a:do if(!e)b=0;else{do if(f|0){i=(b|0)==0?g:b;b=a[e>>0]|0;if(b<<24>>24>-1){c[i>>2]=b&255;b=b<<24>>24!=0&1;break a}h=(c[c[(C1()|0)+188>>2]>>2]|0)==0;b=a[e>>0]|0;if(h){c[i>>2]=b<<24>>24&57343;b=1;break a}b=(b&255)+-194|0;if(b>>>0<=50){g=e+1|0;h=c[62280+(b<<2)>>2]|0;if(f>>>0<4?h&-2147483648>>>((f*6|0)+-6|0)|0:0)break;b=d[g>>0]|0;f=b>>>3;if((f+-16|f+(h>>26))>>>0<=7){b=b+-128|h<<6;if((b|0)>=0){c[i>>2]=b;b=2;break a}g=(d[e+2>>0]|0)+-128|0;if(g>>>0<=63){g=g|b<<6;if((g|0)>=0){c[i>>2]=g;b=3;break a}b=(d[e+3>>0]|0)+-128|0;if(b>>>0<=63){c[i>>2]=b|g<<6;b=4;break a}}}}}while(0);c[(O_()|0)>>2]=84;b=-1}while(0);l=j;return b|0}function C1(){return e$()|0}function D1(a,b){a=a|0;b=b|0;var c=0;c=W_(a)|0;return ((E1(a,1,c,b)|0)!=(c|0))<<31>>31|0}function E1(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(t0(e)|0)==0;a=E0(a,f,e)|0;if(!g)u0(e)}else a=E0(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function F1(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(F0(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0<h>>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((nb[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function G1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;c[f+4>>2]=b;c[f+8>>2]=d;d=N_(Fa(3,f|0)|0)|0;l=e;return d|0}function H1(){var a=0,b=0;b=l;l=l+16|0;a=Da(20,b|0)|0;l=b;return a|0}function I1(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;d=b;e=150483;f=d+15|0;do{a[d>>0]=a[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(f|0));if(!c){a[b+14>>0]=48;a[b+15>>0]=0}else{e=c;d=14;while(1){d=d+1|0;if(e>>>0<10)break;else e=(e>>>0)/10|0}a[b+d>>0]=0;while(1){d=d+-1|0;a[b+d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}}return}function J1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+48|0;f=g+40|0;e=g+8|0;d=g;c[d>>2]=a;c[d+4>>2]=b;d=Ca(197,d|0)|0;if((d|0)==-9?(c[e>>2]=a,c[e+4>>2]=1,(Ea(221,e|0)|0)>=0):0){I1(e,a);c[f>>2]=e;c[f+4>>2]=b;b=N_(Ba(195,f|0)|0)|0}else b=N_(d)|0;l=g;return b|0}function K1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b;b=N_(Ga(33,e|0)|0)|0;l=d;return b|0}function L1(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(A$(150498,a[d>>0]|0)|0){f=M1(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=N_(Ha(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Ea(221,g|0)|0}b=z1(e,d)|0;if(!b){c[h>>2]=e;Ja(6,h|0)|0;b=0}}else b=0}else{c[(O_()|0)>>2]=22;b=0}l=i;return b|0}function M1(b){b=b|0;var c=0,d=0,e=0;d=(A$(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(A$(b,120)|0)==0;d=e?d:d|128;b=(A$(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function N1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=O1(a,b,f)|0;l=e;return d|0}function O1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=38;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=Q1(e,b,d)|0;l=g;return h|0}function P1(a,b,c){a=a|0;b=b|0;c=c|0;return Y1(a,b,c)|0}function Q1(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;L=l;l=l+288|0;F=L+8|0;G=L+17|0;H=L;I=L+16|0;if((c[b+76>>2]|0)>-1)K=t0(b)|0;else K=0;i=a[e>>0]|0;a:do if(i<<24>>24){y=b+4|0;A=b+100|0;B=b+108|0;C=b+8|0;D=G+10|0;E=G+33|0;x=F+4|0;p=e;u=0;e=0;j=0;k=i;i=0;b:while(1){c:do if(!(B$(k&255)|0)){k=(a[p>>0]|0)==37;d:do if(k){m=p+1|0;n=a[m>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{w=0;m=p+2|0;break}default:{if(E$(n&255)|0?(a[p+2>>0]|0)==36:0){w=R1(f,(d[m>>0]|0)+-48|0)|0;m=p+3|0;break e}v=(c[f>>2]|0)+(4-1)&~(4-1);w=c[v>>2]|0;c[f>>2]=v+4}}while(0);if(!(E$(d[m>>0]|0)|0))s=0;else{k=0;do{k=(k*10|0)+-48+(d[m>>0]|0)|0;m=m+1|0}while((E$(d[m>>0]|0)|0)!=0);s=k}p=a[m>>0]|0;n=m+1|0;if(p<<24>>24==109){k=(w|0)!=0&1;j=0;m=n;p=a[n>>0]|0;i=0}else k=0;n=m+1|0;switch(p<<24>>24){case 104:{v=(a[n>>0]|0)==104;p=v?-2:-1;m=v?m+2|0:n;break}case 108:{v=(a[n>>0]|0)==108;p=v?3:1;m=v?m+2|0:n;break}case 106:{p=3;m=n;break}case 116:case 122:{p=1;m=n;break}case 76:{p=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{p=0;break}default:{J=136;break b}}r=d[m>>0]|0;t=(r&47|0)==3;r=t?r|32:r;t=t?1:p;q=r&255;switch(q<<24>>24){case 99:{s=(s|0)>1?s:1;break}case 91:break;case 110:{S1(w,t,u,((u|0)<0)<<31>>31);n=u;break c}default:{G$(b,0);do{n=c[y>>2]|0;if(n>>>0<(c[A>>2]|0)>>>0){c[y>>2]=n+1;n=d[n>>0]|0}else n=I$(b)|0}while((B$(n)|0)!=0);if(!(c[A>>2]|0))n=c[y>>2]|0;else{n=(c[y>>2]|0)+-1|0;c[y>>2]=n}u=(c[B>>2]|0)+u+n-(c[C>>2]|0)|0}}G$(b,s);p=c[y>>2]|0;n=c[A>>2]|0;if(p>>>0<n>>>0)c[y>>2]=p+1;else{if((I$(b)|0)<0){J=136;break b}n=c[A>>2]|0}if(n|0)c[y>>2]=(c[y>>2]|0)+-1;f:do switch(q<<24>>24){case 91:case 99:case 115:{v=(r|0)==99;g:do if((r|16|0)==115){H3(G|0,-1,257)|0;a[G>>0]=0;if((r|0)==115){a[E>>0]=0;a[D>>0]=0;a[D+1>>0]=0;a[D+2>>0]=0;a[D+3>>0]=0;a[D+4>>0]=0}}else{n=m+1|0;q=(a[n>>0]|0)==94;r=q&1;m=q?m+2|0:n;H3(G|0,r|0,257)|0;a[G>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;J=65;break}case 93:{n=94;J=65;break}default:{}}while(1){if((J|0)==65){J=0;a[G+n>>0]=r^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{J=136;break b}case 93:break g;case 45:{q=m+1|0;n=a[q>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){p=(r^1)&255;m=m&255;do{m=m+1|0;a[G+m>>0]=p;n=a[q>>0]|0}while((m|0)<(n&255|0));m=q}else m=q;break}default:{}}while(0);n=(n&255)+1|0;J=65}}while(0);n=v?s+1|0:31;r=(t|0)==1;t=(k|0)!=0;i:do if(r){if(t){i=C_(n<<2)|0;if(!i){j=0;i=0;J=136;break b}}else i=w;c[F>>2]=0;c[x>>2]=0;q=n;j=0;j:while(1){p=(i|0)==0;do{k:while(1){n=c[y>>2]|0;if(n>>>0<(c[A>>2]|0)>>>0){c[y>>2]=n+1;n=d[n>>0]|0}else n=I$(b)|0;if(!(a[G+(n+1)>>0]|0))break j;a[I>>0]=n;switch(X$(H,I,1,F)|0){case -1:{j=0;J=136;break b}case -2:break;default:break k}}if(!p){c[i+(j<<2)>>2]=c[H>>2];j=j+1|0}}while(!(t&(j|0)==(q|0)));j=q<<1|1;n=F_(i,j<<2)|0;if(!n){j=0;J=136;break b}else{p=q;q=j;i=n;j=p}}if(!(T1(F)|0)){j=0;J=136;break b}else{q=j;j=0;p=i}}else{if(t){j=C_(n)|0;if(!j){j=0;i=0;J=136;break b}else{p=n;i=0}while(1){do{n=c[y>>2]|0;if(n>>>0<(c[A>>2]|0)>>>0){c[y>>2]=n+1;n=d[n>>0]|0}else n=I$(b)|0;if(!(a[G+(n+1)>>0]|0)){q=i;p=0;i=0;break i}a[j+i>>0]=n;i=i+1|0}while((i|0)!=(p|0));i=p<<1|1;n=F_(j,i)|0;if(!n){i=0;J=136;break b}else{q=p;p=i;j=n;i=q}}}if(!w)while(1){i=c[y>>2]|0;if(i>>>0<(c[A>>2]|0)>>>0){c[y>>2]=i+1;i=d[i>>0]|0}else i=I$(b)|0;if(!(a[G+(i+1)>>0]|0)){q=0;j=0;p=0;i=0;break i}}else j=0;while(1){i=c[y>>2]|0;if(i>>>0<(c[A>>2]|0)>>>0){c[y>>2]=i+1;i=d[i>>0]|0}else i=I$(b)|0;if(!(a[G+(i+1)>>0]|0)){q=j;j=w;p=0;i=0;break i}a[w+j>>0]=i;j=j+1|0}}while(0);if(!(c[A>>2]|0))n=c[y>>2]|0;else{n=(c[y>>2]|0)+-1|0;c[y>>2]=n}n=n-(c[C>>2]|0)+(c[B>>2]|0)|0;if(!n)break b;if(!((n|0)==(s|0)|v^1))break b;do if(t)if(r){c[w>>2]=p;break}else{c[w>>2]=j;break}while(0);if(!v){if(p|0)c[p+(q<<2)>>2]=0;if(!j){j=0;break f}a[j+q>>0]=0}break}case 120:case 88:case 112:{n=16;J=124;break}case 111:{n=8;J=124;break}case 117:case 100:{n=10;J=124;break}case 105:{n=0;J=124;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+U1(b,t,0);if((c[B>>2]|0)==((c[C>>2]|0)-(c[y>>2]|0)|0))break b;if(w)switch(t|0){case 0:{g[w>>2]=o;break f}case 1:{h[w>>3]=o;break f}case 2:{h[w>>3]=o;break f}default:break f}break}default:{}}while(0);do if((J|0)==124){J=0;n=H$(b,n,0,-1,-1)|0;if((c[B>>2]|0)==((c[C>>2]|0)-(c[y>>2]|0)|0))break b;if((w|0)!=0&(r|0)==112){c[w>>2]=n;break}else{S1(w,t,n,z);break}}while(0);e=e+((w|0)!=0&1)|0;n=(c[B>>2]|0)+u+(c[y>>2]|0)-(c[C>>2]|0)|0;break c}while(0);m=p+(k&1)|0;G$(b,0);k=c[y>>2]|0;if(k>>>0<(c[A>>2]|0)>>>0){c[y>>2]=k+1;k=d[k>>0]|0}else k=I$(b)|0;if((k|0)!=(d[m>>0]|0)){J=22;break b}n=u+1|0}else{m=p;while(1){k=m+1|0;if(!(B$(d[k>>0]|0)|0))break;else m=k}G$(b,0);do{k=c[y>>2]|0;if(k>>>0<(c[A>>2]|0)>>>0){c[y>>2]=k+1;k=d[k>>0]|0}else k=I$(b)|0}while((B$(k)|0)!=0);if(!(c[A>>2]|0))k=c[y>>2]|0;else{k=(c[y>>2]|0)+-1|0;c[y>>2]=k}n=(c[B>>2]|0)+u+k-(c[C>>2]|0)|0}while(0);p=m+1|0;k=a[p>>0]|0;if(!(k<<24>>24))break a;else u=n}if((J|0)==22){if(c[A>>2]|0)c[y>>2]=(c[y>>2]|0)+-1;if((e|0)!=0|(k|0)>-1)break;else{e=0;J=137}}else if((J|0)==136)if(!e){e=k;J=137}if((J|0)==137){k=e;e=-1}if(k){D_(j);D_(i)}}else e=0;while(0);if(K|0)u0(b);l=L;return e|0}function R1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function S1(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function T1(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function U1(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=I$(b)|0}while((B$(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=I$(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[150502+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=I$(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[150511+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=I$(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=I$(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=I$(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(O_()|0)>>2]=22;G$(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=I$(b)|0;if((e|32|0)==120){g=+V1(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+W1(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(O_()|0)>>2]=22;G$(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function V1(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=I$(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=I$(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=I$(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=I$(a)|0;l=s3(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=s3(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=I$(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else G$(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=s3(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=X1(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){G$(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=A3(q|0,p|0,2)|0;l=s3(l|0,z|0,-32,-1)|0;l=s3(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(O_()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0<y>>>0){c[(O_()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=s3(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=t3(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=s3(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0<b>>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+p$(+m$(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(O_()|0)>>2]=34;h=+q$(h,l)}while(0);return +h}function W1(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=I$(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=I$(a)|0;if((b|0)==48){k=0;b=0;while(1){k=s3(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=I$(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=s3(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=I$(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=X1(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){G$(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=s3(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(O_()|0)>>2]=22;G$(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(O_()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0<a>>>0){c[(O_()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[63608+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[63608+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[63608+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=A3(c[p>>2]|0,0,29)|0;k=s3(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=w3(k|0,m|0,1e9,0)|0;k=x3(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[63640+(p<<2)>>2]|0;if(n>>>0<o>>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<<v)+-1|0;u=1e9>>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+p$(+m$(1.0,105-n|0),j);r=+r$(j,+m$(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+r$(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(O_()|0)>>2]=34}while(0);i=+q$(i,b)}while(0);l=J;return +i}function X1(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=I$(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=I$(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=I$(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=r3(g|0,b|0,10,0)|0;g=z;e=s3(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=s3(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=I$(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=I$(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=t3(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function Y1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=D$(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0<d>>>0?f:d;F3(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function Z1(a,b,c){a=a|0;b=b|0;c=c|0;return _1(a,b,c)|0}function _1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(t0(a)|0)==0;b=$1(a,b,d)|0;if(!e)u0(a)}else b=$1(a,b,d)|0;return b|0}function $1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(nb[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((nb[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function a2(b){b=b|0;var c=0,d=0,e=0,f=0,g=0;while(1){e=b+1|0;if(!(B$(a[b>>0]|0)|0))break;else b=e}d=a[b>>0]|0;switch(d<<24>>24|0){case 45:{b=1;f=5;break}case 43:{b=0;f=5;break}default:{g=0;c=b;b=d}}if((f|0)==5){g=b;c=e;b=a[e>>0]|0}if(!(E$(b<<24>>24)|0))b=0;else{b=0;do{b=(b*10|0)+48-(a[c>>0]|0)|0;c=c+1|0}while((E$(a[c>>0]|0)|0)!=0)}return (g|0?b:0-b|0)|0}function b2(a){a=a|0;return +(+c2(a,0))}function c2(a,b){a=a|0;b=b|0;return +(+d2(a,b,1))}function d2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,h=0,i=0;i=l;l=l+128|0;h=i;f=h;g=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));f=h+4|0;c[f>>2]=a;g=h+8|0;c[g>>2]=-1;c[h+44>>2]=a;c[h+76>>2]=-1;G$(h,0);e=+U1(h,d,1);d=(c[f>>2]|0)-(c[g>>2]|0)+(c[h+108>>2]|0)|0;if(b|0)c[b>>2]=d|0?a+d|0:a;l=i;return +e}function e2(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;a:do if(!c)b=0;else{h=b;while(1){g=c>>>1;b=h+(O(g,d)|0)|0;f=lb[e&127](a,b)|0;if(!f)break a;if((c|0)==1){b=0;break a}f=(f|0)<0;c=f?g:c-g|0;if(!c){b=0;break}else h=f?h:b}}while(0);return b|0}function f2(a,c){a=a|0;c=c|0;var d=0,f=0,g=0;g=a+2|0;f=a+4|0;d=r3((e[c+2>>1]|0)<<16|(e[c>>1]|0)|0,e[c+4>>1]|0|0,(e[g>>1]|0)<<16|(e[a>>1]|0)|0,e[f>>1]|0|0)|0;c=s3(d|0,z|0,e[c+6>>1]|0|0,0)|0;d=z;b[a>>1]=c;a=z3(c|0,d|0,16)|0;b[g>>1]=a;b[f>>1]=d;z=d&65535;return c|0}function g2(){var a=0,b=0,d=0;b=183528;b=r3(c[b>>2]|0,c[b+4>>2]|0,1284865837,1481765933)|0;b=s3(b|0,z|0,1,0)|0;a=z;d=183528;c[d>>2]=b;c[d+4>>2]=a;a=z3(b|0,a|0,33)|0;return a|0}function h2(a){a=a|0;F3(190672,65740,6)|0;F3(65740,a|0,6)|0;return 190672}function i2(a){a=a|0;var c=0,d=0;c=l;l=l+16|0;d=c;b[d>>1]=13070;b[d+2>>1]=a;b[d+4>>1]=a>>>16;h2(d)|0;l=c;return}function j2(a){a=a|0;var b=0;b=f2(a,65746)|0;b=A3(b|0,z|0,4)|0;a=z|1072693248;c[j>>2]=b;c[j+4>>2]=a;return +(+h[j>>3]+-1.0)}function k2(){return +(+j2(65740))}function l2(a,b){a=a|0;b=b|0;if(!a)b=E_(1,24)|0;else H3(b|0,0,24)|0;return b|0}function m2(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;if(b|0)do{D_(c[b>>2]|0);d=b;b=c[b+4>>2]|0;D_(d)}while((b|0)!=0);D_(a);return}function n2(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;h=a+16|0;a:do if(!(c[h>>2]|0)){k=a+12|0;g=c[k>>2]|0;if(g>>>0<f>>>0){do if(b)if(!d){c[h>>2]=1;b=0;break a}else{h=a+8|0;c[h>>2]=d;g=1024;b=d;break}else{g=f<<3;g=g>>>0>1024?g:1024;j=C_(8)|0;if(!j){c[h>>2]=1;b=0;break a}b=C_(g)|0;c[j>>2]=b;d=b;if(!b){D_(j);c[h>>2]=1;b=0;break a}c[j+4>>2]=0;h=a+4|0;i=c[h>>2]|0;if(i|0)c[i+4>>2]=j;if(!(c[a>>2]|0))c[a>>2]=j;c[h>>2]=j;h=a+8|0;c[h>>2]=d}while(0);c[k>>2]=g}else{h=a+8|0;b=c[h>>2]|0;d=b}d=d+f&3;d=((d|0)==0?0:4-d|0)+f|0;c[h>>2]=b+d;c[k>>2]=g-d;if(e)H3(b|0,0,d|0)|0}else b=0;while(0);return b|0}function o2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;v=l;l=l+48|0;h=v;t=p2()|0;a:do if(!t)b=12;else{u=l2(0,0)|0;if(!u){q2(t);b=12;break}H3(h|0,0,36)|0;c[h>>2]=u;c[h+4>>2]=t;c[h+16>>2]=b;c[h+32>>2]=d;e=h+28|0;c[e>>2]=-1;b=r2(h)|0;b:do if(!b){g=h+20|0;r=c[g>>2]|0;c[a>>2]=r+-1;i=c[h+8>>2]|0;if((c[e>>2]|0)<(r|0)){r=E_(1,68)|0;if(r){q=(c[e>>2]|0)>>>31^1;c[r+60>>2]=q;c[r+64>>2]=0;c[r+28>>2]=c[g>>2];if((d&8|0)==0|(q|0)!=0){b=s2(0,t,i,r)|0;if(b|0){g=r;h=0;i=0;f=0;e=0;break}e=r+40|0;b=c[e>>2]|0;if((b|0)>0){b=C_((b<<2)+4|0)|0;if(!b){g=r;h=0;i=0;b=12;f=0;e=0;break}c[r+32>>2]=b;H3(b|0,-1,(c[e>>2]<<2)+4|0)|0;f=b;b=c[e>>2]|0}else f=0;q=E_(b<<1|1,4)|0;c[r+36>>2]=q;if(!q){g=r;h=0;i=0;b=12;f=0;e=0;break}b=E_(c[g>>2]|0,12)|0;if(!b){g=r;h=0;i=0;b=12;f=0;e=0;break}c[r+16>>2]=b;b=s2(u,t,i,r)|0;if(!b)b=f;else{g=r;h=0;i=0;f=0;e=0;break}}else b=0;p=h+24|0;b=t2(u,t,i,p,b)|0;if(!b){b=c[p>>2]|0;c[p>>2]=b+1;b=u2(u,0,0,b)|0;if((b|0)!=0?(s=v2(u,i,b)|0,(s|0)!=0):0){b=w2(u,t,s)|0;if(!b){o=C_(c[p>>2]<<2)|0;if(o){q=C_(c[p>>2]<<2)|0;if(q){b=c[p>>2]|0;if((b|0)>0)H3(o|0,0,b<<2|0)|0;x2(s,0,o,0)|0;f=c[p>>2]|0;if((f|0)>0){b=0;e=0;do{c[q+(e<<2)>>2]=b;n=o+(e<<2)|0;b=b+1+(c[n>>2]|0)|0;c[n>>2]=0;e=e+1|0}while((e|0)<(f|0));k=b}else k=0;m=E_(k+1|0,32)|0;if(m){c[r>>2]=m;n=r+4|0;c[n>>2]=k;b=x2(s,m,o,q)|0;if(!b){c[r+20>>2]=0;f=s+24|0;b=c[f>>2]|0;e=0;while(1){e=e+1|0;if((c[b>>2]|0)<=-1)break;else b=b+32|0}j=E_(e,32)|0;if(!j){g=r;h=o;i=q;b=12;f=o;e=q}else{c[r+8>>2]=j;f=c[f>>2]|0;e=c[f>>2]|0;if((e|0)>-1){b=0;do{c[j+(b<<5)+8>>2]=m+(c[q+(e<<2)>>2]<<5);c[j+(b<<5)+12>>2]=e;h=j+(b<<5)+16|0;c[h>>2]=0;i=f+12|0;g=c[i>>2]|0;if(g|0){e=0;do{w=e;e=e+1|0}while((c[g+(w<<2)>>2]|0)>-1);e=e<<2;g=C_(e)|0;c[h>>2]=g;if(!g){g=r;h=o;i=q;b=12;f=o;e=q;break b}F3(g|0,c[i>>2]|0,e|0)|0}c[j+(b<<5)+20>>2]=c[f+16>>2];b=b+1|0;f=f+32|0;e=c[f>>2]|0}while((e|0)>-1)}else b=0;c[j+(b<<5)+8>>2]=0;c[n>>2]=k;c[r+12>>2]=m+(c[q+(c[c[s+28>>2]>>2]<<2)>>2]<<5);c[r+52>>2]=c[p>>2];c[r+56>>2]=d;m2(u);q2(t);D_(o);D_(q);c[a+4>>2]=r;b=0;break a}}else{g=r;h=o;i=q;f=o;e=q}}else{g=r;h=o;i=q;b=12;f=o;e=q}}else{g=r;h=o;i=q;b=12;f=o;e=0}}else{g=r;h=o;i=0;b=12;f=0;e=0}}else{g=r;h=0;i=0;f=0;e=0}}else{g=r;h=0;i=0;b=12;f=0;e=0}}else{g=r;h=0;i=0;f=0;e=0}}else{g=r;h=0;i=0;b=12;f=0;e=0}}else{g=0;h=0;i=0;b=6;f=0;e=0}}else{g=0;h=0;i=0;f=0;e=0}while(0);m2(u);q2(t);if(h|0)D_(f);if(i|0)D_(e);c[a+4>>2]=g;y2(a)}while(0);l=v;return b|0}function p2(){var a=0,b=0;a=C_(20)|0;do if(a){b=C_(2048)|0;c[a+16>>2]=b;if(!b){D_(a);a=0;break}else{c[a>>2]=512;c[a+4>>2]=1024e3;c[a+8>>2]=128;c[a+12>>2]=0;break}}while(0);return a|0}function q2(a){a=a|0;D_(c[a+16>>2]|0);D_(a);return}function r2(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+16|0;p=u+4|0;q=u;r=c[b+32>>2]&1;s=b+16|0;e=c[s>>2]|0;t=c[b+4>>2]|0;d=C2(t,0)|0;a:do if(!d){m=(r|0)!=0;n=b+8|0;o=b+12|0;d=0;k=1;b:while(1){g=0;h=d;f=0;c:while(1){d=a[e>>0]|0;if(m){if(d<<24>>24==40)break;if((h|0)!=0&d<<24>>24==41)j=13;else j=14}else if(d<<24>>24==92)switch(a[e+1>>0]|0){case 40:break c;case 41:{j=13;break}default:j=14}else j=14;if((j|0)==13){j=0;i=u2(c[b>>2]|0,-1,-1,-1)|0;c[n>>2]=i;if(!i){d=12;break a}else i=f}else if((j|0)==14){j=0;d=R2(b,e)|0;if(d|0)break a;i=f;e=c[o>>2]|0}d:while(1){e:while(1){d=a[e>>0]|0;switch(d<<24>>24){case 42:case 92:break;default:{if(!m)break e;switch(d<<24>>24){case 123:case 63:case 43:break;default:break e}}}d=d<<24>>24==92;if(m&d)break;f=e+1|0;if(d)switch(a[f>>0]|0){case 123:case 63:case 43:break;default:break e}e=d?f:e;if((!m?(e|0)==((c[s>>2]|0)+1|0):0)?(a[e+-1>>0]|0)==94:0)break;if((a[e>>0]|0)==123){e=S2(e+1|0,r,p,q)|0;if(!e){j=28;break b}d=c[q>>2]|0;f=c[b>>2]|0;if(!d)d=u2(f,-1,-1,-1)|0;else j=36}else{c[p>>2]=0;c[q>>2]=-1;d=a[e>>0]|0;if(d<<24>>24==43){c[p>>2]=1;d=a[e>>0]|0}if(d<<24>>24==63){c[q>>2]=1;d=1}else d=-1;e=e+1|0;f=c[b>>2]|0;j=36}if((j|0)==36){j=0;d=M2(f,c[n>>2]|0,c[p>>2]|0,d,0)|0}c[n>>2]=d;if(!d){d=12;break a}}d=v2(c[b>>2]|0,g,c[n>>2]|0)|0;f=a[e>>0]|0;f:do if(m){if(f<<24>>24==124){j=40;break d}if((h|0)!=0&f<<24>>24==41|f<<24>>24==0)j=47;else{g=d;f=i;continue c}}else{switch(f<<24>>24){case 0:{j=47;break f}case 92:break;default:{g=d;f=i;continue c}}switch(a[e+1>>0]|0){case 124:case 41:break;default:{g=d;f=i;continue c}}d=N2(c[b>>2]|0,i,d)|0;if((a[e+1>>0]|0)==124){f=2;break d}if(!h){d=8;break a}e=e+2|0;f=92}while(0);if((j|0)==47){j=0;d=N2(c[b>>2]|0,i,d)|0;e=f<<24>>24==41?e+1|0:e}d=T2(b,d,D2(t)|0)|0;if(d|0)break a;d=f<<24>>24==0;f=(h|0)<1;if(f&d){j=50;break b}if(f|d){d=8;break a}g=E2(t)|0;h=h+-1|0;i=E2(t)|0}if((j|0)==40){f=1;d=N2(c[b>>2]|0,i,d)|0}g=0;e=e+f|0;f=d}d=B2(t,f)|0;if(d|0)break a;d=B2(t,g)|0;if(d|0)break a;d=C2(t,k)|0;if(d|0)break a;d=h+1|0;k=k+1|0;e=m?e+1|0:e+2|0}if((j|0)==28){d=10;break}else if((j|0)==50){c[b+20>>2]=k;d=0;break}}while(0);l=u;return d|0}function s2(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;x=A2(d)|0;y=(b|0)==0|(f|0)==0;if(!y){c[f+48>>2]=0;c[c[f+36>>2]>>2]=-1}g=f+28|0;z=C_((c[g>>2]<<3)+8|0)|0;do if(!z)g=12;else{c[z>>2]=-1;A=C_((c[g>>2]<<2)+4|0)|0;if(!A){D_(z);g=12;break}c[A>>2]=-1;B=C_((c[g>>2]<<3)+8|0)|0;if(!B){D_(z);D_(A);g=12;break}h=c[g>>2]|0;g=0;do{c[B+(g<<3)>>2]=-1;g=g+1|0}while(g>>>0<=h>>>0);B2(d,e)|0;g=C2(d,0)|0;a:do if((g|0)!=0|(A2(d)|0)<=(x|0)){e=z;n=0;h=0;m=0;l=-1}else{u=f+32|0;v=f+36|0;w=f+16|0;e=z;n=0;h=0;m=0;t=1;l=-1;s=0;while(1){b:do switch(D2(d)|0){case 6:{i=D2(d)|0;g=0;do{j=e+(g<<2)|0;g=g+1|0}while((c[j>>2]|0)>-1);c[j>>2]=i<<1|1;c[e+(g<<2)>>2]=-1;g=0;while(1)if((c[A+(g<<2)>>2]|0)>-1)g=g+1|0;else break;c[A+(g+-1<<2)>>2]=-1;g=0;j=t;i=s;break}case 0:{q=E2(d)|0;r=q+12|0;j=c[r>>2]|0;if((j|0)>-1){g=0;do{i=e+(g<<2)|0;g=g+1|0}while((c[i>>2]|0)>-1);c[i>>2]=j<<1;c[e+(g<<2)>>2]=-1;if(!y){g=0;while(1)if((c[A+(g<<2)>>2]|0)>-1)g=g+1|0;else break;c[(c[w>>2]|0)+(j*12|0)+8>>2]=0;if((g|0)>0){g=C_((g<<2)+4|0)|0;if(!g){g=12;j=t;i=s;break b}c[(c[w>>2]|0)+(j*12|0)+8>>2]=g;i=c[A>>2]|0;if((i|0)>-1){k=0;j=g;do{c[j>>2]=i;k=k+1|0;i=c[A+(k<<2)>>2]|0;j=g+(k<<2)|0}while((i|0)>-1);g=j}c[g>>2]=-1}}g=C2(d,c[r>>2]|0)|0;if(g|0){j=t;i=s;break b}g=C2(d,6)|0;if(g|0){j=t;i=s;break b}}c:do switch(c[q>>2]|0){case 0:{p=c[c[q+4>>2]>>2]|0;if((p|0)>-1|(p|0)==-4?(c[e>>2]|0)>-1:0){if(y){c[q+20>>2]=1;g=0}else{g=O2(b,q,m)|0;c[(c[u>>2]|0)+(m<<2)>>2]=s;if((l|0)>-1){j=c[v>>2]|0;i=0;while(1){k=j+(i<<2)|0;o=i+1|0;if((c[k>>2]|0)>-1)i=o;else break}c[k>>2]=m;c[j+(o<<2)>>2]=l;c[j+(i+2<<2)>>2]=-1;h=h+1|0;l=-1}P2(e,f,m)}c[e>>2]=-1;p=t+1|0;o=s;n=n+1|0;m=t}else{p=t;g=0;o=s}break}case 1:{j=c[q+4>>2]|0;k=c[j>>2]|0;j=c[j+4>>2]|0;g=B2(d,q)|0;if(!g){g=C2(d,5)|0;if(!g){g=B2(d,j)|0;if(!g){g=C2(d,0)|0;if(!g){i=k+20|0;g=C2(d,(c[i>>2]|0)+t|0)|0;if(!g){if((c[i>>2]|0)>0){i=(c[j+20>>2]|0)>0;g=i?t:-1;i=t+(i&1)|0}else{g=-1;i=t}g=C2(d,g)|0;if(!g){g=C2(d,4)|0;if(!g){g=B2(d,k)|0;if(!g){p=i;g=C2(d,0)|0;o=s}else{p=i;o=s}}else{p=i;o=s}}else{p=i;o=s}}else{p=t;o=s}}else{p=t;o=s}}else{p=t;o=s}}else{p=t;o=s}}else{p=t;o=s}break}case 2:{i=c[q+4>>2]|0;if(y){if((c[e>>2]|0)>-1)g=1;else g=(a[i+12>>0]&1)!=0;g=C2(d,g&1)|0;if(g|0){p=t;o=s;break c}}else{g=C2(d,m)|0;if(g|0){p=t;o=s;break c}g=C2(d,a[i+12>>0]&1)|0;if(g|0){p=t;o=s;break c}}g=B2(d,q)|0;if(!g){g=C2(d,1)|0;if(!g){g=B2(d,c[i>>2]|0)|0;if(!g){g=C2(d,0)|0;if(!g){if((c[e>>2]|0)<=-1?(a[i+12>>0]&1)==0:0){p=t;g=0;o=0;break c}if(y)g=0;else{g=O2(b,q,m)|0;c[(c[u>>2]|0)+(m<<2)>>2]=(a[i+12>>0]&1)==0?s:1;if((l|0)>-1){j=c[v>>2]|0;i=0;while(1){k=j+(i<<2)|0;o=i+1|0;if((c[k>>2]|0)>-1)i=o;else break}c[k>>2]=m;c[j+(o<<2)>>2]=l;c[j+(i+2<<2)>>2]=-1;h=h+1|0;l=-1}P2(e,f,m)}c[e>>2]=-1;p=t+1|0;o=0;n=n+1|0;m=t}else{p=t;o=s}}else{p=t;o=s}}else{p=t;o=s}}else{p=t;o=s}break}case 3:{j=c[q+4>>2]|0;k=c[j>>2]|0;j=c[j+4>>2]|0;i=(c[e>>2]|0)>-1;p=t+1|0;g=C2(d,i?p:t)|0;if(!g){g=C2(d,i?t:m)|0;if(!g){g=B2(d,e)|0;if(!g){g=C2(d,(c[e>>2]|0)>>>31^1)|0;if(!g){g=B2(d,q)|0;if(!g){g=B2(d,j)|0;if(!g){g=B2(d,k)|0;if(!g){g=C2(d,3)|0;if(!g){g=B2(d,j)|0;if(!g){g=C2(d,0)|0;if(g|0){p=t;o=s;break c}g=C2(d,2)|0;if(g|0){p=t;o=s;break c}g=B2(d,k)|0;if(g|0){p=t;o=s;break c}g=C2(d,0)|0;if(g|0){p=t;o=s;break c}if((c[e>>2]|0)>-1){if(y)g=0;else{g=O2(b,q,m)|0;c[(c[u>>2]|0)+(m<<2)>>2]=s;if((l|0)>-1){j=c[v>>2]|0;i=0;while(1){k=j+(i<<2)|0;o=i+1|0;if((c[k>>2]|0)>-1)i=o;else break}c[k>>2]=m;c[j+(o<<2)>>2]=l;c[j+(i+2<<2)>>2]=-1;h=h+1|0;l=-1}P2(e,f,m)}c[e>>2]=-1;n=n+1|0;m=t;i=p}else{g=0;i=t}t=(c[q+16>>2]|0)>0;p=t?i+2|0:i;o=s;m=t?i+1|0:m}else{p=t;o=s}}else{p=t;o=s}}else{p=t;o=s}}else{p=t;o=s}}else{p=t;o=s}}else{p=t;o=s}}else{p=t;o=s}}else{p=t;o=s}}else{p=t;o=s}break}default:{p=t;g=0;o=s}}while(0);j=c[r>>2]|0;if((j|0)>-1){i=0;do{k=A+(i<<2)|0;i=i+1|0}while((c[k>>2]|0)>-1);c[k>>2]=j;c[A+(i<<2)>>2]=-1;j=p;i=o}else{j=p;i=o}break}case 1:{g=E2(d)|0;if(y){i=c[(c[c[g+4>>2]>>2]|0)+20>>2]|0;c[g+20>>2]=(D2(d)|0)+i;i=0;l=-1}else{q=D2(d)|0;r=D2(d)|0;i=q;l=(q|0)==0?l:r}g=0;j=t;i=y?s:(i|0)==0&1;break}case 4:{i=D2(d)|0;j=D2(d)|0;g=0;m=(i|0)>-1?i:m;i=s;break}case 5:{g=E2(d)|0;if(y){j=c[g+4>>2]|0;c[g+20>>2]=(c[(c[j+4>>2]|0)+20>>2]|0)+(c[(c[j>>2]|0)+20>>2]|0);g=0;j=t;i=s}else{g=0;j=t;i=s}break}case 2:{while(1)if((c[e>>2]|0)>-1)e=e+4|0;else{g=0;j=t;i=s;break}break}case 3:{j=E2(d)|0;o=E2(d)|0;g=E2(d)|0;e=D2(d)|0;if(y){r=c[g+4>>2]|0;s=g+16|0;c[g+20>>2]=(c[(c[r>>2]|0)+20>>2]|0)+e+(c[(c[r+4>>2]|0)+20>>2]|0)+((c[s>>2]|0)>0?2:0);g=s}else g=g+16|0;e=E2(d)|0;i=D2(d)|0;k=D2(d)|0;if((c[g>>2]|0)>0){if(y)g=0;else{g=Q2(b,j,i)|0;c[(c[u>>2]|0)+(i<<2)>>2]=1;if(!g)g=Q2(b,o,k)|0;c[(c[u>>2]|0)+(k<<2)>>2]=1}n=n+2|0;j=t;i=1}else{g=0;j=t;i=1}break}default:{g=0;j=t;i=s}}while(0);if((g|0)!=0|(A2(d)|0)<=(x|0))break a;else{t=j;s=i}}}while(0);if(!y?(P2(e,f,m),(l|0)>-1):0){i=c[f+36>>2]|0;e=0;while(1){j=i+(e<<2)|0;k=e+1|0;if((c[j>>2]|0)>-1)e=k;else break}c[j>>2]=m;c[i+(k<<2)>>2]=l;c[i+(e+2<<2)>>2]=-1;h=h+1|0}c[f+48>>2]=n;c[f+40>>2]=n;c[f+44>>2]=h;D_(z);D_(A);D_(B)}while(0);return g|0}function t2(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;t=y+12|0;x=y+8|0;u=y+4|0;v=y;w=A2(b)|0;c[t>>2]=0;c[x>>2]=0;d=B2(b,d)|0;a:do if(!d){d=C2(b,0)|0;if(!d){b:do if((A2(b)|0)>(w|0)){g=0;i=0;j=0;c:while(1){q=D2(b)|0;r=E2(b)|0;d:do switch(q|0){case 0:{switch(c[r>>2]|0){case 0:{d=c[r+4>>2]|0;r=c[d>>2]|0;if(!((r|0)>-1|(r|0)==-4)){d=j;break d}r=d+8|0;d=(c[r>>2]|0)+j|0;c[r>>2]=d;if((d|0)<=(c[x>>2]|0)){d=j;break d}c[x>>2]=d;d=j;break d}case 3:{h=c[r+4>>2]|0;d=B2(b,c[h+4>>2]|0)|0;if(d|0)break b;d=C2(b,0)|0;if(d|0)break b;d=B2(b,c[h>>2]|0)|0;if(d|0)break b;break}case 1:{h=c[r+4>>2]|0;d=B2(b,c[h+4>>2]|0)|0;if(d|0)break b;d=C2(b,0)|0;if(d|0)break b;d=B2(b,c[h>>2]|0)|0;if(d|0)break b;break}case 2:{h=c[r+4>>2]|0;d=C2(b,j)|0;if(d|0)break b;d=B2(b,r)|0;if(d|0)break b;d=C2(b,1)|0;if(d|0)break b;d=B2(b,c[h>>2]|0)|0;if(d|0)break b;d=C2(b,0)|0;if(d|0)break b;if((c[h+4>>2]|0)<=1?(c[h+8>>2]|0)<=1:0)d=j;else{c[t>>2]=0;d=0}i=i+1|0;break d}default:{d=j;break d}}d=C2(b,0)|0;if(!d)d=j;else break b;break}case 1:{p=r+4|0;o=c[p>>2]|0;q=D2(b)|0;c[t>>2]=q;n=o+4|0;j=c[n>>2]|0;if((j|0)<=1)if((c[o+8>>2]|0)>1){c[u>>2]=0;if((j|0)>0)s=30;else{d=q;h=0;s=37}}else d=q;else{c[u>>2]=0;s=30}e:do if((s|0)==30){d=L2(a,b,c[o>>2]|0,(j|0)>1?1:2,t,f,v,x)|0;if(!d){h=0;k=q;m=1}else{s=34;break c}while(1){d=c[v>>2]|0;if(!h)h=d;else h=v2(a,h,d)|0;if(!h){d=12;s=34;break c}j=c[n>>2]|0;if((m|0)>=(j|0)){d=k;s=37;break e}k=c[t>>2]|0;m=m+1|0;d=L2(a,b,c[o>>2]|0,(m|0)<(j|0)?1:2,t,f,v,x)|0;if(d|0){s=34;break c}}}while(0);if((s|0)==37){s=0;n=o+8|0;k=c[n>>2]|0;if((k|0)==-1){k=c[t>>2]|0;d=L2(a,b,c[o>>2]|0,0,t,0,u,x)|0;if(d|0)break c;j=M2(a,c[u>>2]|0,0,-1,0)|0;c[u>>2]=j;if(!j){d=12;break c}else d=k}else if((j|0)<(k|0)){k=j;j=0;while(1){m=c[t>>2]|0;d=L2(a,b,c[o>>2]|0,0,t,0,v,x)|0;if(d|0){s=49;break c}if(!j){d=c[v>>2]|0;c[u>>2]=d}else{d=v2(a,c[v>>2]|0,j)|0;c[u>>2]=d}if(!d){d=12;s=49;break c}j=u2(a,-1,-1,-1)|0;if(!j){d=12;s=49;break c}j=N2(a,j,d)|0;c[u>>2]=j;if(!j){d=12;s=49;break c}k=k+1|0;if((k|0)>=(c[n>>2]|0)){d=m;break}}}else j=0;c[t>>2]=d;if(h){if(j){h=v2(a,h,j)|0;s=54}}else{h=j;s=54}if((s|0)==54){s=0;if(!h){d=12;break c}}c[p>>2]=c[h+4>>2];c[r>>2]=c[h>>2]}i=i+-1|0;h=d-q+g|0;if(!i){c[t>>2]=h;g=h;i=0;d=h}else g=h;break}default:d=j}while(0);if((A2(b)|0)>(w|0))j=d;else{d=0;break b}}break a}else{d=0;g=0}while(0);w=(c[e>>2]|0)+g|0;x=c[x>>2]|0;c[e>>2]=(x|0)>(w|0)?x:w}}while(0);l=y;return d|0}function u2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=n2(a,0,0,1,20)|0;a=K2(a,0,f)|0;if(!a)a=0;else{c[f>>2]=b;c[f+4>>2]=d;c[f+8>>2]=e}return a|0}function v2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if(b){e=n2(a,0,0,1,8)|0;a=K2(a,1,e)|0;if(!a)d=0;else{c[e>>2]=b;c[e+4>>2]=d;c[a+16>>2]=(c[d+16>>2]|0)+(c[b+16>>2]|0);d=a}}return d|0}function w2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;j=o+4|0;k=o;m=A2(b)|0;d=B2(b,d)|0;a:do if(!d){d=C2(b,0)|0;if(!d)if((A2(b)|0)>(m|0)){b:while(1){h=D2(b)|0;i=E2(b)|0;c:do switch(h|0){case 0:switch(c[i>>2]|0){case 0:{g=c[i+4>>2]|0;f=c[g>>2]|0;if((f|0)==-4){c[i+8>>2]=0;d=g+8|0;h=F2(a,c[d>>2]|0,0,1114111,0,0,-1)|0;c[i+24>>2]=h;if(!h){d=12;break a}h=F2(a,c[d>>2]|0,0,1114111,0,0,c[g+4>>2]|0)|0;c[i+28>>2]=h;if(!h){d=12;break a}else break c}d=i+8|0;if((f|0)<0){c[d>>2]=1;h=G2(a)|0;c[i+24>>2]=h;if(!h){d=12;break a}h=G2(a)|0;c[i+28>>2]=h;if(!h){d=12;break a}else break c}else{c[d>>2]=0;d=g+8|0;e=g+4|0;h=F2(a,c[d>>2]|0,f,c[e>>2]|0,0,0,-1)|0;c[i+24>>2]=h;if(!h){d=12;break a}h=F2(a,c[d>>2]|0,c[g>>2]|0,c[e>>2]|0,c[g+12>>2]|0,c[g+16>>2]|0,-1)|0;c[i+28>>2]=h;if(!h){d=12;break a}else break c}}case 3:{d=B2(b,i)|0;if(d|0)break a;d=C2(b,1)|0;if(d|0)break a;e=i+4|0;d=B2(b,c[(c[e>>2]|0)+4>>2]|0)|0;if(d|0)break a;d=C2(b,0)|0;if(d|0)break a;d=B2(b,c[c[e>>2]>>2]|0)|0;if(d|0)break a;d=C2(b,0)|0;if(!d)break c;else break a}case 1:{d=B2(b,i)|0;if(d|0)break a;d=C2(b,2)|0;if(d|0)break a;e=i+4|0;d=B2(b,c[(c[e>>2]|0)+4>>2]|0)|0;if(d|0)break a;d=C2(b,0)|0;if(d|0)break a;d=B2(b,c[c[e>>2]>>2]|0)|0;if(d|0)break a;d=C2(b,0)|0;if(!d)break c;else break a}case 2:{d=B2(b,i)|0;if(d|0)break a;d=C2(b,3)|0;if(d|0)break a;d=B2(b,c[c[i+4>>2]>>2]|0)|0;if(d|0)break a;d=C2(b,0)|0;if(!d)break c;else break a}default:break c}case 1:{d=c[i+4>>2]|0;e=c[d>>2]|0;f=d+4|0;g=c[f>>2]|0;if(!(c[e+8>>2]|0))h=(c[g+8>>2]|0)!=0;else h=1;c[i+8>>2]=h&1;h=H2(a,c[e+24>>2]|0,c[g+24>>2]|0,0,0)|0;c[i+24>>2]=h;if(!h){d=12;break a}h=H2(a,c[(c[d>>2]|0)+28>>2]|0,c[(c[f>>2]|0)+28>>2]|0,0,0)|0;c[i+28>>2]=h;if(!h){d=12;break a}break}case 3:{h=c[i+4>>2]|0;d=c[h>>2]|0;if(!(c[h+4>>2]|0))e=1;else e=(c[d+8>>2]|0)!=0&1;c[i+8>>2]=e;c[i+24>>2]=c[d+24>>2];c[i+28>>2]=c[d+28>>2];break}case 2:{g=c[i+4>>2]|0;d=c[g>>2]|0;e=d+8|0;if(!(c[e>>2]|0))f=0;else f=(c[(c[g+4>>2]|0)+8>>2]|0)!=0;c[i+8>>2]=f&1;if(c[e>>2]|0){d=I2(b,d,0,0,j)|0;if(d|0)break b;e=C_((c[j>>2]<<2)+4|0)|0;if(!e){d=12;break b}c[e>>2]=-1;c[k>>2]=0;d=I2(b,c[g>>2]|0,e,k,0)|0;if(d|0){n=45;break b}d=g+4|0;h=i+24|0;c[h>>2]=H2(a,c[(c[d>>2]|0)+24>>2]|0,c[(c[g>>2]|0)+24>>2]|0,e,c[k>>2]|0)|0;D_(e);if(!(c[h>>2]|0)){d=12;break b}else f=d}else{c[i+24>>2]=c[d+24>>2];f=g+4|0}d=c[f>>2]|0;if(c[d+8>>2]|0){d=I2(b,d,0,0,j)|0;if(d|0)break b;e=C_((c[j>>2]<<2)+4|0)|0;if(!e){d=12;break b}c[e>>2]=-1;c[k>>2]=0;d=I2(b,c[f>>2]|0,e,k,0)|0;if(d|0){n=52;break b}i=i+28|0;c[i>>2]=H2(a,c[(c[g>>2]|0)+28>>2]|0,c[(c[f>>2]|0)+28>>2]|0,e,c[k>>2]|0)|0;D_(e);if(!(c[i>>2]|0)){d=12;break b}}else c[i+28>>2]=c[d+28>>2];break}default:{}}while(0);if((A2(b)|0)<=(m|0)){d=0;break a}}if((n|0)==45)D_(e);else if((n|0)==52)D_(e)}else d=0}while(0);l=o;return d|0}function x2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;a:while(1){switch(c[a>>2]|0){case 2:{a=c[a+4>>2]|0;if((c[a+8>>2]|0)==-1?(h=c[a>>2]|0,h=z2(c[h+28>>2]|0,c[h+24>>2]|0,b,d,e)|0,(h|0)!=0):0){a=h;break a}break}case 3:{f=c[a+4>>2]|0;a=x2(c[f>>2]|0,b,d,e)|0;if(a|0)break a;a=f+4|0;break}case 1:{f=c[a+4>>2]|0;g=f+4|0;a=z2(c[(c[f>>2]|0)+28>>2]|0,c[(c[g>>2]|0)+24>>2]|0,b,d,e)|0;if(a|0)break a;a=x2(c[f>>2]|0,b,d,e)|0;if(!a)a=g;else break a;break}default:{a=0;break a}}a=c[a>>2]|0}return a|0}function y2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=c[a+4>>2]|0;if(h|0){e=h+4|0;a=c[h>>2]|0;if(c[e>>2]|0){d=0;do{if(c[a+(d<<5)+8>>2]|0){b=c[a+(d<<5)+16>>2]|0;if(b){D_(b);a=c[h>>2]|0}b=c[a+(d<<5)+28>>2]|0;if(b){D_(b);a=c[h>>2]|0}}d=d+1|0}while(d>>>0<(c[e>>2]|0)>>>0)}if(a|0)D_(a);d=h+8|0;a=c[d>>2]|0;if(a|0){if(c[a+8>>2]|0){while(1){b=c[a+16>>2]|0;if(b|0)D_(b);if(!(c[a+40>>2]|0))break;else a=a+32|0}a=c[d>>2]|0}D_(a)}f=h+16|0;a=c[f>>2]|0;if(a|0){g=h+28|0;b=c[g>>2]|0;if(b){e=0;do{d=c[a+(e*12|0)+8>>2]|0;if(d){D_(d);b=c[g>>2]|0;a=c[f>>2]|0}e=e+1|0}while(e>>>0<b>>>0)}D_(a)}a=c[h+32>>2]|0;if(a|0)D_(a);a=c[h+20>>2]|0;if(a|0)D_(a);a=c[h+36>>2]|0;if(a|0)D_(a);D_(h)}return}function z2(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;g=c[a>>2]|0;h=(g|0)>-1;a:do if(!d)if(h){h=b+32|0;do{if((c[b>>2]|0)>-1?(y=e+(g<<2)|0,c[y>>2]=(c[y>>2]|0)+1,(c[h>>2]|0)>-1):0){g=h;do{y=e+(c[a>>2]<<2)|0;c[y>>2]=(c[y>>2]|0)+1;g=g+32|0}while((c[g>>2]|0)>-1)}a=a+32|0;g=c[a>>2]|0}while((g|0)>-1);g=0}else g=0;else if(h)while(1){h=c[b>>2]|0;b:do if((h|0)>-1){p=a+4|0;q=a+8|0;r=a+16|0;s=a+20|0;t=a+24|0;u=a+28|0;v=a+12|0;e=-1;g=b;while(1){o=h;while(1){if((o|0)!=(e|0))break;g=g+32|0;h=c[g>>2]|0;if((h|0)>-1)o=h;else break b}l=d+(c[f+(c[a>>2]<<2)>>2]<<5)|0;while(1){h=l+8|0;if(!(c[h>>2]|0))break;else l=l+32|0}c[l+40>>2]=0;c[l>>2]=c[p>>2];c[l+4>>2]=c[q>>2];c[h>>2]=d+(c[f+(o<<2)>>2]<<5);c[l+12>>2]=o;h=c[s>>2]|0;e=c[g+16>>2]|c[r>>2]|(h|0?4:0)|(c[t>>2]|0?8:0);i=l+20|0;c[i>>2]=e;j=c[u>>2]|0;if((j|0)>-1){c[i>>2]=e|256;h=j}c[l+24>>2]=h;e=c[t>>2]|0;if(!e)c[l+28>>2]=0;else{h=0;do{n=h;h=h+1|0}while((c[e+(n<<2)>>2]|0)!=0);h=C_(h<<2)|0;c[l+28>>2]=h;if(!h){g=12;break a}k=c[t>>2]|0;e=c[k>>2]|0;if(e){j=0;i=h;do{c[i>>2]=e;j=j+1|0;e=c[k+(j<<2)>>2]|0;i=h+(j<<2)|0}while((e|0)!=0);h=i}c[h>>2]=0}e=c[v>>2]|0;if(!e)h=0;else{h=0;while(1)if((c[e+(h<<2)>>2]|0)>-1)h=h+1|0;else break}k=g+12|0;i=c[k>>2]|0;if(!i)e=0;else{e=0;while(1)if((c[i+(e<<2)>>2]|0)>-1)e=e+1|0;else break}j=l+16|0;i=c[j>>2]|0;if(i|0)D_(i);c[j>>2]=0;h=e+h|0;if((h|0)>0){n=C_((h<<2)+4|0)|0;c[j>>2]=n;if(!n){g=12;break a}e=c[v>>2]|0;if((e|0)!=0?(w=c[e>>2]|0,(w|0)>-1):0){h=0;i=w;do{c[n+(h<<2)>>2]=i;h=h+1|0;i=c[e+(h<<2)>>2]|0}while((i|0)>-1);m=h}else m=0;j=c[k>>2]|0;if((j|0)!=0?(x=c[j>>2]|0,(x|0)>-1):0){k=(m|0)>0;h=m;i=0;l=x;do{c:do if(k){e=0;while(1){if((c[n+(e<<2)>>2]|0)==(l|0))break c;e=e+1|0;if((e|0)>=(m|0)){y=39;break}}}else y=39;while(0);if((y|0)==39){y=0;c[n+(h<<2)>>2]=l;h=h+1|0}i=i+1|0;l=c[j+(i<<2)>>2]|0}while((l|0)>-1)}else h=m;c[n+(h<<2)>>2]=-1}g=g+32|0;h=c[g>>2]|0;if((h|0)<=-1)break;else e=o}}while(0);a=a+32|0;if((c[a>>2]|0)<=-1){g=0;break}}else g=0;while(0);return g|0}function A2(a){a=a|0;return c[a+12>>2]|0}function B2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;c[f>>2]=b;c[e>>2]=c[f>>2];b=J2(a,e)|0;l=d;return b|0}function C2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;c[f>>2]=b;c[e>>2]=c[f>>2];b=J2(a,e)|0;l=d;return b|0}function D2(a){a=a|0;var b=0,d=0;b=c[a+16>>2]|0;d=a+12|0;a=(c[d>>2]|0)+-1|0;c[d>>2]=a;return c[b+(a<<2)>>2]|0}function E2(a){a=a|0;var b=0,d=0;b=c[a+16>>2]|0;d=a+12|0;a=(c[d>>2]|0)+-1|0;c[d>>2]=a;return c[b+(a<<2)>>2]|0}function F2(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a=n2(a,0,0,1,64)|0;if(!a)a=0;else{c[a>>2]=b;c[a+4>>2]=d;c[a+8>>2]=e;c[a+20>>2]=f;c[a+24>>2]=g;c[a+28>>2]=h;c[a+32>>2]=-1;c[a+36>>2]=-1;c[a+40>>2]=-1}return a|0}function G2(a){a=a|0;a=n2(a,0,0,1,32)|0;if(!a)a=0;else{c[a>>2]=-1;c[a+4>>2]=-1;c[a+8>>2]=-1}return a|0}function H2(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(e|0)==0;if(o)n=0;else{g=0;while(1)if((c[e+(g<<2)>>2]|0)>-1)g=g+1|0;else{n=g;break}}h=0;while(1)if((c[b+(h<<5)>>2]|0)>-1)h=h+1|0;else{g=0;break}while(1)if((c[d+(g<<5)>>2]|0)>-1)g=g+1|0;else break;g=n2(a,0,0,1,(g+h<<5)+32|0)|0;a:do if(!g)g=0;else{h=c[b>>2]|0;if((h|0)>-1){m=(n|0)>0;i=0;while(1){c[g+(i<<5)>>2]=h;c[g+(i<<5)+4>>2]=c[b+(i<<5)+4>>2];c[g+(i<<5)+8>>2]=c[b+(i<<5)+8>>2];c[g+(i<<5)+16>>2]=c[b+(i<<5)+16>>2]|f;c[g+(i<<5)+20>>2]=c[b+(i<<5)+20>>2];c[g+(i<<5)+24>>2]=c[b+(i<<5)+24>>2];c[g+(i<<5)+28>>2]=c[b+(i<<5)+28>>2];l=b+(i<<5)+12|0;j=c[l>>2]|0;h=(j|0)==0;if(o&h)h=0;else{if(h)k=0;else{h=0;while(1)if((c[j+(h<<2)>>2]|0)>-1)h=h+1|0;else{k=h;break}}h=n2(a,0,0,0,(k+n<<2)+4|0)|0;if(!h){g=0;break a}if((k|0)>0){l=c[l>>2]|0;j=0;do{c[h+(j<<2)>>2]=c[l+(j<<2)>>2];j=j+1|0}while((j|0)!=(k|0))}else k=0;if(m){j=0;do{c[h+(j+k<<2)>>2]=c[e+(j<<2)>>2];j=j+1|0}while((j|0)!=(n|0));j=n}else j=0;c[h+(j+k<<2)>>2]=-1}c[g+(i<<5)+12>>2]=h;i=i+1|0;h=c[b+(i<<5)>>2]|0;if((h|0)<=-1){n=i;break}}}else n=0;i=c[d>>2]|0;h=g+(n<<5)|0;if((i|0)>-1){m=0;l=n;do{c[h>>2]=i;c[g+(l<<5)+4>>2]=c[d+(m<<5)+4>>2];c[g+(l<<5)+8>>2]=c[d+(m<<5)+8>>2];c[g+(l<<5)+16>>2]=c[d+(m<<5)+16>>2];c[g+(l<<5)+20>>2]=c[d+(m<<5)+20>>2];c[g+(l<<5)+24>>2]=c[d+(m<<5)+24>>2];c[g+(l<<5)+28>>2]=c[d+(m<<5)+28>>2];j=d+(m<<5)+12|0;h=c[j>>2]|0;if(!h)h=0;else{i=0;while(1)if((c[h+(i<<2)>>2]|0)>-1)i=i+1|0;else break;h=n2(a,0,0,0,(i<<2)+4|0)|0;if(!h){g=0;break a}if((i|0)>0){k=c[j>>2]|0;j=0;do{c[h+(j<<2)>>2]=c[k+(j<<2)>>2];j=j+1|0}while((j|0)!=(i|0))}else i=0;c[h+(i<<2)>>2]=-1}c[g+(l<<5)+12>>2]=h;m=m+1|0;i=c[d+(m<<5)>>2]|0;l=m+n|0;h=g+(l<<5)|0}while((i|0)>-1)}c[h>>2]=-1}while(0);return g|0}function I2(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=A2(a)|0;p=(f|0)!=0;if(p)c[f>>2]=0;b=B2(a,b)|0;a:do if(!b){m=(d|0)==0;l=(e|0)==0;if((A2(a)|0)>(o|0))while(1){b=E2(a)|0;b:do switch(c[b>>2]|0){case 0:{b=c[b+4>>2]|0;switch(c[b>>2]|0){case -3:break;case -2:{if(l)break b;c[e>>2]=c[e>>2]|c[b+4>>2];break b}default:break b}h=c[b+4>>2]|0;if((h|0)>-1){c:do if(!m){b=0;while(1){i=d+(b<<2)|0;j=c[i>>2]|0;if((j|0)<=-1)break;if((j|0)==(h|0))break c;else b=b+1|0}c[i>>2]=h;c[d+(b+1<<2)>>2]=-1}while(0);if(p)c[f>>2]=(c[f>>2]|0)+1}break}case 3:{b=c[b+4>>2]|0;h=c[b>>2]|0;if(c[h+8>>2]|0){k=h;n=6;break b}b=c[b+4>>2]|0;if(c[b+8>>2]|0){k=b;n=6}break}case 1:{b=c[b+4>>2]|0;h=B2(a,c[b>>2]|0)|0;if(h|0){g=h;break a}k=c[b+4>>2]|0;n=6;break}case 2:{b=c[c[b+4>>2]>>2]|0;if(c[b+8>>2]|0){k=b;n=6}break}default:{}}while(0);if((n|0)==6?(n=0,g=B2(a,k)|0,g|0):0)break a;if((A2(a)|0)<=(o|0)){g=0;break a}}else g=0}else g=b;while(0);return g|0}function J2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;g=k;d=a+12|0;e=c[d>>2]|0;j=c[a>>2]|0;if((e|0)>=(j|0)){d=c[a+4>>2]|0;if((j|0)<(d|0)?(f=(c[a+8>>2]|0)+j|0,f=(f|0)>(d|0)?d:f,h=a+16|0,i=F_(c[h>>2]|0,f<<2)|0,(i|0)!=0):0){c[a>>2]=f;c[h>>2]=i;c[g>>2]=c[b>>2];J2(a,g)|0;d=0}else d=12}else{c[(c[a+16>>2]|0)+(e<<2)>>2]=c[b>>2];c[d>>2]=(c[d>>2]|0)+1;d=0}l=k;return d|0}function K2(a,b,d){a=a|0;b=b|0;d=d|0;a=n2(a,0,0,1,32)|0;if((d|0)!=0&(a|0)!=0){c[a+4>>2]=d;c[a>>2]=b;c[a+8>>2]=-1;c[a+12>>2]=-1}else a=0;return a|0}function L2(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=A2(d)|0;B2(d,e)|0;e=C2(d,0)|0;a:do if(!e){q=(f&1|0)==0;p=(f&2|0)!=0;o=0;l=1;e=i;while(1){if((A2(d)|0)>(r|0))n=e;else{f=o;e=0;break a}b:while(1){c:while(1){switch(D2(d)|0){case 1:{i=7;break c}case 0:{e=E2(d)|0;switch(c[e>>2]|0){case 0:{i=9;break b}case 3:{i=19;break b}case 1:{i=26;break b}case 2:{i=33;break c}default:{}}break}default:{}}if((A2(d)|0)<=(r|0)){f=o;e=0;break a}}if((i|0)==7)e=E2(d)|0;else if((i|0)==33){f=c[e+4>>2]|0;e=B2(d,c[f>>2]|0)|0;if(e|0){f=o;break a}e=C2(d,0)|0;if(e|0){f=o;break a}e=M2(b,c[f>>2]|0,c[f+4>>2]|0,c[f+8>>2]|0,a[f+12>>0]&1)|0;c[n>>2]=e;if(!e){f=o;e=12;break a}e=c[e+4>>2]|0}if((A2(d)|0)>(r|0))n=e;else{f=o;e=0;break a}}if((i|0)==9){m=c[e+4>>2]|0;i=c[m+8>>2]|0;f=c[m>>2]|0;e=c[m+4>>2]|0;if(!((f|0)>-1|(f|0)==-4))if(q|(f|0)!=-3)if((f|0)==-3)if(p&(l|0)!=0){c[h+(e<<2)>>2]=1;f=-3;k=o;l=0}else{f=-3;k=o}else k=o;else{e=-1;f=-1;i=-1;k=o}else{i=(c[g>>2]|0)+i|0;k=o+1|0}e=u2(b,f,e,i)|0;c[n>>2]=e;if(!e)e=12;else{e=c[e+4>>2]|0;c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=0}if((i|0)>(c[j>>2]|0)){c[j>>2]=i;f=n}else f=n}else if((i|0)==19){i=c[e+4>>2]|0;f=i+4|0;e=N2(b,c[i>>2]|0,c[f>>2]|0)|0;c[n>>2]=e;if(!e){f=o;e=12;break a}m=c[e+4>>2]|0;e=B2(d,c[f>>2]|0)|0;if(e|0){f=o;break a}e=C2(d,0)|0;if(e|0){f=o;break a}e=B2(d,m+4|0)|0;if(e|0){f=o;break a}e=C2(d,1)|0;if(e|0){f=o;break a}e=B2(d,c[i>>2]|0)|0;if(e|0){f=o;break a}k=o;f=m;e=C2(d,0)|0}else if((i|0)==26){m=c[e+4>>2]|0;i=m+4|0;e=v2(b,c[m>>2]|0,c[i>>2]|0)|0;c[n>>2]=e;if(!e){f=o;e=12;break a}f=c[e+4>>2]|0;c[f>>2]=0;k=f+4|0;c[k>>2]=0;e=B2(d,c[i>>2]|0)|0;if(e|0){f=o;break a}e=C2(d,0)|0;if(e|0){f=o;break a}e=B2(d,k)|0;if(e|0){f=o;break a}e=C2(d,1)|0;if(e|0){f=o;break a}e=B2(d,c[m>>2]|0)|0;if(e|0){f=o;break a}k=o;e=C2(d,0)|0}if(!e){o=k;e=f}else{f=k;break}}}else f=0;while(0);c[g>>2]=(c[g>>2]|0)+f;return e|0}function M2(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;h=n2(b,0,0,1,16)|0;b=K2(b,2,h)|0;if(!b)b=0;else{c[h>>2]=d;c[h+4>>2]=e;c[h+8>>2]=f;h=h+12|0;a[h>>0]=a[h>>0]&-2|g&1;c[b+16>>2]=c[d+16>>2]}return b|0}function N2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if(b){e=n2(a,0,0,1,8)|0;a=K2(a,3,e)|0;if((d|0)!=0&(a|0)!=0){c[e>>2]=b;c[e+4>>2]=d;c[a+16>>2]=(c[d+16>>2]|0)+(c[b+16>>2]|0);d=a}else d=0}return d|0}function O2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=n2(a,0,0,0,8)|0;if(((e|0)!=0?(d=u2(a,-3,d,-1)|0,c[e>>2]=d,(d|0)!=0):0)?(f=n2(a,0,0,0,32)|0,c[e+4>>2]=f,(f|0)!=0):0){a=b+4|0;c[f+4>>2]=c[a>>2];c[f>>2]=c[b>>2];c[f+8>>2]=-1;c[f+12>>2]=-1;f=f+16|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[a>>2]=e;c[b>>2]=1;a=0}else a=12;return a|0}function P2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=c[a>>2]|0;if((f|0)>-1){g=c[b+16>>2]|0;e=0;b=f;do{f=b>>>1;c[((b&1|0)==0?g+(f*12|0)|0:g+(f*12|0)+4|0)>>2]=d;e=e+1|0;b=c[a+(e<<2)>>2]|0}while((b|0)>-1)}c[a>>2]=-1;return}function Q2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=n2(a,0,0,0,8)|0;if(((e|0)!=0?(d=u2(a,-3,d,-1)|0,c[e+4>>2]=d,(d|0)!=0):0)?(f=n2(a,0,0,0,32)|0,c[e>>2]=f,(f|0)!=0):0){a=b+4|0;c[f+4>>2]=c[a>>2];c[f>>2]=c[b>>2];c[f+8>>2]=-1;c[f+12>>2]=-1;f=f+16|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[a>>2]=e;c[b>>2]=1;a=0}else a=12;return a|0}function R2(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;i=b+32|0;h=c[i>>2]|0;g=h&1;a:do switch(a[d>>0]|0){case 91:{e=V2(b,d+1|0)|0;break}case 92:{e=d+1|0;f=W2(e)|0;if(f|0){e=R2(b,f)|0;c[b+12>>2]=d+2;break a}f=a[e>>0]|0;switch(f|0){case 0:{e=5;break a}case 98:{f=u2(c[b>>2]|0,-2,64,-1)|0;break}case 66:{f=u2(c[b>>2]|0,-2,128,-1)|0;break}case 60:{f=u2(c[b>>2]|0,-2,16,-1)|0;break}case 62:{f=u2(c[b>>2]|0,-2,32,-1)|0;break}case 120:{h=d+2|0;i=(a[h>>0]|0)==123;g=i?8:2;h=i?d+3|0:h;e=0;f=0;do{d=X2(a[h+e>>0]|0)|0;if((d|0)<0)break;f=d+(f<<4)|0;e=e+1|0}while((f|0)<1114112&(e|0)<(g|0));e=h+e|0;if(i){if((a[e>>0]|0)!=125){e=9;break a}e=e+1|0}j=c[b>>2]|0;i=b+24|0;k=c[i>>2]|0;c[i>>2]=k+1;f=u2(j,f,f,k)|0;e=e+-1|0;break}case 63:case 43:case 123:if(!g){e=13;break a}else{k=37;break a}case 124:{if(g|0){k=37;break a}e=u2(c[b>>2]|0,-1,-1,-1)|0;k=45;break a}default:{if(!((g|0)==0&(f+-49|0)>>>0<9)){k=37;break a}j=f+-48|0;k=c[b>>2]|0;i=b+24|0;f=c[i>>2]|0;c[i>>2]=f+1;f=u2(k,-4,j,f)|0;k=b+28|0;i=c[k>>2]|0;c[k>>2]=(j|0)<(i|0)?i:j}}d=e+1|0;e=f;k=45;break}case 46:{e=c[b>>2]|0;g=b+24|0;f=c[g>>2]|0;c[g>>2]=f+1;if(h&4){f=u2(e,0,9,f)|0;k=c[b>>2]|0;e=c[g>>2]|0;c[g>>2]=e+1;e=u2(k,11,1114111,e)|0;if((f|0)!=0&(e|0)!=0)e=N2(c[b>>2]|0,f,e)|0;else e=0}else e=u2(e,0,1114111,f)|0;d=d+1|0;k=45;break}case 94:{if((g|0)==0?(c[b+16>>2]|0)!=(d|0):0){e=d;k=37;break a}d=d+1|0;e=u2(c[b>>2]|0,-2,1,-1)|0;k=45;break}case 36:{e=d+1|0;if((g|0)==0?a[e>>0]|0:0){e=d;k=37;break a}d=e;e=u2(c[b>>2]|0,-2,2,-1)|0;k=45;break}case 63:case 43:case 123:case 42:{if(!g){e=d;k=37}else e=13;break}case 124:{if(!g){e=d;k=37}else k=36;break}case 0:{k=36;break}default:{e=d;k=37}}while(0);if((k|0)==36){e=u2(c[b>>2]|0,-1,-1,-1)|0;k=45}else if((k|0)==37){h=B1(j,e,-1)|0;if((h|0)<0)e=2;else{do if(c[i>>2]&2){if((m0(c[j>>2]|0)|0)==0?(l0(c[j>>2]|0)|0)==0:0){k=43;break}i=c[b>>2]|0;n=R$(c[j>>2]|0)|0;g=R$(c[j>>2]|0)|0;f=b+24|0;g=u2(i,n,g,c[f>>2]|0)|0;n=c[b>>2]|0;i=o0(c[j>>2]|0)|0;d=o0(c[j>>2]|0)|0;d=u2(n,i,d,c[f>>2]|0)|0;if((g|0)!=0&(d|0)!=0)g=N2(c[b>>2]|0,g,d)|0;else g=0}else k=43;while(0);if((k|0)==43){g=c[j>>2]|0;f=b+24|0;g=u2(c[b>>2]|0,g,g,c[f>>2]|0)|0}c[f>>2]=(c[f>>2]|0)+1;d=e+h|0;e=g;k=45}}if((k|0)==45)if(!e)e=12;else{c[b+8>>2]=e;c[b+12>>2]=d;e=0}l=m;return e|0}function S2(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+16|0;i=j+4|0;g=j;b=U2(b,i)|0;if((a[b>>0]|0)==44){b=U2(b+1|0,g)|0;h=c[g>>2]|0;g=c[i>>2]|0}else{i=c[i>>2]|0;c[g>>2]=i;h=i;g=i}do if(!(g>>>0>255|((h|0)>255|(h|0)>-1&(h|0)<(g|0)))){if(!d)if((a[b>>0]|0)==92)b=b+1|0;else{b=0;break}if((a[b>>0]|0)==125){c[e>>2]=g;c[f>>2]=h;b=b+1|0}else b=0}else b=0;while(0);l=j;return b|0}function T2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;if((c[b+12>>2]|0)>-1){e=u2(c[a>>2]|0,-1,-1,-1)|0;if((e|0)!=0?(f=v2(c[a>>2]|0,e,b)|0,(f|0)!=0):0){e=c[b+16>>2]|0;c[f+16>>2]=e;g=6}else e=12}else{f=b;e=c[b+16>>2]|0;g=6}if((g|0)==6){c[f+12>>2]=d;c[f+16>>2]=e+1;c[a+8>>2]=f;e=0}return e|0}function U2(b,d){b=b|0;d=d|0;var e=0;c[d>>2]=-1;a:do if(E$(a[b>>0]|0)|0){c[d>>2]=0;e=0;do{c[d>>2]=(e*10|0)+-48+(a[b>>0]|0);b=b+1|0;if(!(E$(a[b>>0]|0)|0))break a;e=c[d>>2]|0}while((e|0)<=255)}while(0);return b|0}function V2(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+288|0;e=s+264|0;g=s;c[e>>2]=c[b>>2];h=e+8|0;c[h>>2]=0;c[e+12>>2]=32;p=C_(128)|0;r=e+4|0;c[r>>2]=p;if(!p)d=12;else{f=g+4|0;c[f>>2]=0;p=(a[d>>0]|0)==94;c[g>>2]=p&1;d=Y2(b,p?d+1|0:d,e,g)|0;a:do if(!d){p=(c[g>>2]|0)==0;if(!p){_0(c[r>>2]|0,c[h>>2]|0,4,109);d=_2(e)|0;if(!d){d=12;e=0;break}c[d>>2]=1114112;c[d+4>>2]=1114112;c[d+8>>2]=-1;d=c[f>>2]|0;if(d){e=d<<2;f=n2(c[b>>2]|0,0,0,0,e+4|0)|0;if(!f){d=12;e=0;break}F3(f|0,g+8|0,e|0)|0;c[f+(d<<2)>>2]=0}else f=0}else f=0;m=c[h>>2]|0;if((m|0)>0){n=c[r>>2]|0;o=b+24|0;e=0;d=0;k=0;while(1){j=c[n+(k<<2)>>2]|0;g=c[j>>2]|0;h=j+4|0;i=c[h>>2]|0;do if(!p)if((g|0)>(d|0)){c[j>>2]=d;c[h>>2]=g+-1;d=i+1|0;q=14;break}else{j=i+1|0;d=(j|0)>=(d|0)?j:d;break}else q=14;while(0);if((q|0)==14){q=0;c[j+8>>2]=c[o>>2];c[j+16>>2]=f;j=K2(c[b>>2]|0,0,j)|0;e=N2(c[b>>2]|0,e,j)|0;if(!e){d=12;e=0;break a}}k=k+1|0;if((k|0)>=(m|0)){d=0;break}}}else{d=0;e=0}}else e=0;while(0);D_(c[r>>2]|0);r=b+24|0;c[r>>2]=(c[r>>2]|0)+1;c[b+8>>2]=e}l=s;return d|0}function W2(b){b=b|0;var d=0;d=a[b>>0]|0;b=0;while(1){if((a[63648+(b<<3)>>0]|0)==d<<24>>24)break;b=b+1|0;if((b|0)==12){b=12;break}}return c[63648+(b<<3)+4>>2]|0}function X2(a){a=a|0;var b=0;b=a+-48|0;if(b>>>0<10)return b|0;else{b=a|32;return ((b+-97|0)>>>0<6?b+-87|0:-1)|0}return 0}function Y2(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+32|0;o=t;q=t+4|0;i=B1(o,d,-1)|0;g=a[d>>0]|0;a:do if((i|0)>=1){r=f+4|0;n=b+32|0;h=d;j=i;b:while(1){i=(h|0)==(d|0);if(!(i|g<<24>>24!=93)){s=5;break}c:do if(!(i|g<<24>>24!=45)){switch(a[h+1>>0]|0){case 93:break c;case 45:break;default:{g=11;break a}}if((a[h+2>>0]|0)==93){g=11;break a}}while(0);d:do if(g<<24>>24==91){switch(a[h+1>>0]|0){case 61:case 46:{g=3;break a}case 58:break;default:{s=17;break d}}i=h+2|0;g=0;e:while(1){switch(a[i+g>>0]|0){case 0:{s=16;break b}case 58:break e;default:{}}if((g|0)<13)g=g+1|0;else{s=16;break b}}F3(q|0,i|0,g|0)|0;a[q+g>>0]=0;j=H0(q)|0;if(!j){s=16;break b}h=i+(g+2)|0;if((a[i+(g+1)>>0]|0)!=93){s=16;break b}if(!(c[f>>2]|0)){g=1114111;m=0;k=1;s=25}else{g=c[r>>2]|0;if((g|0)>63){g=12;break a}c[r>>2]=g+1;c[f+8+(g<<2)>>2]=j}}else s=17;while(0);if((s|0)==17){s=0;i=c[o>>2]|0;h=h+j|0;if((a[h>>0]|0)==45?(p=h+1|0,(a[p>>0]|0)!=93):0){h=B1(o,p,-1)|0;g=c[o>>2]|0;if((h|0)<1|(i|0)>(g|0)){g=11;break a}j=0;m=i;h=p+h|0;k=0;s=25}else{j=0;g=i;m=i;k=0;s=25}}if((s|0)==25){s=0;i=_2(e)|0;if(!i){g=12;break a}c[i>>2]=m;c[i+4>>2]=g;c[i+12>>2]=j;c[i+8>>2]=-1;if(!(k|(c[n>>2]&2|0)==0)?($2(e,m,g)|0)!=0:0){g=12;break a}}j=B1(o,h,-1)|0;g=a[h>>0]|0;if((j|0)<1){s=3;break a}}if((s|0)==5){c[b+12>>2]=h+1;g=0;break}else if((s|0)==16){g=4;break}}else s=3;while(0);if((s|0)==3)g=g<<24>>24?2:7;l=t;return g|0}function Z2(a,b){a=a|0;b=b|0;return (c[c[a>>2]>>2]|0)-(c[c[b>>2]>>2]|0)|0}function _2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=a+8|0;d=c[h>>2]|0;e=a+12|0;f=c[e>>2]|0;if((d|0)>=(f|0))if((f|0)<=32767?(c[e>>2]=f<<1,g=a+4|0,b=F_(c[g>>2]|0,f<<3)|0,(b|0)!=0):0){c[g>>2]=b;d=c[h>>2]|0;i=6}else b=0;else{b=c[a+4>>2]|0;i=6}if((i|0)==6){c[h>>2]=d+1;i=n2(c[a>>2]|0,0,0,1,20)|0;c[b+(d<<2)>>2]=i;b=i}return b|0}function $2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;a:do if((b|0)>(d|0))b=0;else while(1){b:do if(!(l0(b)|0)){if(!(m0(b)|0)){b=b+1|0;break}f=o0(b)|0;e=f;while(1){g=b+1|0;e=e+1|0;if((b|0)>=(d|0)){h=f;b=g;g=12;break b}if((o0(g)|0)==(e|0))b=g;else{h=f;b=g;g=12;break}}}else{f=R$(b)|0;e=f;while(1){g=b+1|0;e=e+1|0;if((b|0)>=(d|0)){h=f;b=g;g=12;break b}if((R$(g)|0)==(e|0))b=g;else{h=f;b=g;g=12;break}}}while(0);if((g|0)==12){g=0;f=_2(a)|0;if(!f){b=-1;break a}c[f>>2]=h;c[f+4>>2]=e+-1;c[f+8>>2]=-1}if((b|0)>(d|0)){b=0;break}}while(0);return b|0}function a3(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;k=n;i=c[a+4>>2]|0;j=i+56|0;h=(c[j>>2]&8|0)==0?d:0;a=c[i+40>>2]|0;if((a|0)>0&(h|0)!=0){a=C_(a<<2)|0;if(!a)a=12;else{g=a;d=a;m=3}}else{g=0;d=0;m=3}if((m|0)==3){if(!(c[i+60>>2]|0))a=c3(i,b,g,f,k)|0;else a=b3(i,b,g,f,k)|0;if(!a)d3(h,e,c[j>>2]|0,i,g,c[k>>2]|0);if(g)D_(d)}l=n;return a|0}function b3(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;V=l;l=l+16|0;T=V;c[T>>2]=0;o=e&1;R=e&2;S=a+56|0;n=c[S>>2]&4;U=l2(0,0)|0;a:do if(U){p=n2(U,0,0,0,32)|0;if(!p){m2(U);e=12;break}c[p+24>>2]=0;c[p+28>>2]=0;Q=a+40|0;e=c[Q>>2]|0;if(e){e=C_(e<<2)|0;if(!e){m=0;k=0;j=e;e=12;i=0;h=0;g=0}else{j=e;i=e;C=6}}else{j=0;i=0;C=6}b:do if((C|0)==6){e=c[a+28>>2]|0;if(e){e=C_(e<<3)|0;if(!e){m=e;k=0;e=12;h=0;g=0;break}else{m=e;h=e}}else{m=0;h=0}P=a+52|0;e=c[P>>2]|0;if(e){e=C_(e<<2)|0;if(!e){k=e;e=12;g=0;break}else{k=e;g=e}}else{k=0;g=0}K=a+8|0;L=a+12|0;M=(d|0)==0;N=(d|0)!=0;O=a+32|0;J=(n|0)!=0;I=(o|0)==0;r=b;e=1;q=-1;v=-1;B=0;c:while(1){n=c[Q>>2]|0;if((n|0)>0){o=0;do{c[j+(o<<2)>>2]=-1;if(!M){c[d+(o<<2)>>2]=-1;n=c[Q>>2]|0}o=o+1|0}while((o|0)<(n|0))}n=c[P>>2]|0;if((n|0)>0)H3(g|0,0,n<<2|0)|0;G=e+q|0;e=B1(T,r,4)|0;if((e|0)<1)if((e|0)<0){e=1;break b}else e=1;F=r+e|0;H=c[T>>2]|0;n=c[K>>2]|0;o=n+8|0;if(c[o>>2]|0){w=(G|0)!=0;x=(B|0)==95;y=(G|0)==0;A=J&(B|0)==10;z=(G|0)<1&I;u=n;n=0;t=0;s=o;while(1){r=u+20|0;o=c[r>>2]|0;d:do if(o)if((o&1|0)==0|z|A){if(o&2|0?(E=c[T>>2]|0,!((E|R|0)==0|J&(E|0)==10)):0){q=t;break}do if(o&16|0){if(x){q=t;break d}if(h0(B)|0){q=t;break d}o=c[T>>2]|0;if((o|0)==95)break;if(!(h0(o)|0)){q=t;break d}}while(0);o=c[r>>2]|0;if(o&32){if(x){o=c[T>>2]|0;if((o|0)==95){q=t;break}}else{E=(h0(B)|0)==0;o=c[T>>2]|0;if(E|(o|0)==95){q=t;break}}if(h0(o)|0){q=t;break}o=c[r>>2]|0}q=c[T>>2]|0;do if((q|0)!=0&(w&(o&64|0)!=0)){if(x)o=1;else{o=(h0(B)|0)!=0;q=c[T>>2]|0}if((q|0)==95)if(o){q=t;break d}else break;else if(o^(h0(q)|0)!=0)break;else{q=t;break d}}while(0);if(!(c[r>>2]&128)){C=49;break}o=c[T>>2]|0;if(y|(o|0)==0){q=t;break}if(x)q=1;else{q=(h0(B)|0)!=0;o=c[T>>2]|0}if((o|0)==95)if(q){C=49;break}else{q=t;break}else if(q^(h0(o)|0)!=0){q=t;break}else{C=49;break}}else q=t;else C=49;while(0);do if((C|0)==49){C=0;if(!t){n=c[u+16>>2]|0;q=c[s>>2]|0;break}q=p+28|0;o=c[q>>2]|0;if(!o){o=n2(U,0,0,0,32)|0;if(!o){C=53;break c}c[o+24>>2]=p;c[o+28>>2]=0;E=n2(U,0,0,0,c[Q>>2]<<2)|0;c[o+20>>2]=E;if(!E){C=60;break c}c[q>>2]=o;p=o}else p=o;c[p>>2]=G;c[p+4>>2]=F;c[p+8>>2]=c[s>>2];c[p+12>>2]=c[u+12>>2];c[p+16>>2]=c[T>>2];if((c[Q>>2]|0)>0){q=c[p+20>>2]|0;o=0;do{c[q+(o<<2)>>2]=c[j+(o<<2)>>2];o=o+1|0}while((o|0)<(c[Q>>2]|0))}o=c[u+16>>2]|0;if(!o)q=t;else{q=c[o>>2]|0;if((q|0)<=-1){q=t;break}r=c[p+20>>2]|0;do{o=o+4|0;c[r+(q<<2)>>2]=G;q=c[o>>2]|0}while((q|0)>-1);q=t}}while(0);s=u+40|0;if(!(c[s>>2]|0))break;else{u=u+32|0;t=q}}if(n){o=c[n>>2]|0;if((o|0)>-1)do{c[j+(o<<2)>>2]=G;n=n+4|0;o=c[n>>2]|0}while((o|0)>-1)}else n=0;if(!q)C=171;else{s=G;r=F;w=q;x=n;C=79}}else{n=0;C=171}e:while(1){if((C|0)==79){if((w|0)==(c[L>>2]|0)){if((v|0)>=(s|0)){if(!(N&(v|0)==(s|0))){n=x;C=171;continue}n=c[Q>>2]|0;if(!(f3(n,c[O>>2]|0,j,d)|0)){n=x;C=171;continue}}else{if(M){v=s;n=x;C=171;continue}n=c[Q>>2]|0}if((n|0)>0)n=0;else{v=s;n=x;C=171;continue}while(1){c[d+(n<<2)>>2]=c[j+(n<<2)>>2];n=n+1|0;if((n|0)>=(c[Q>>2]|0)){v=s;n=x;C=171;continue e}}}u=w+8|0;if((c[u>>2]|0)!=0?(c[w+20>>2]&256|0)!=0:0){o=c[w+24>>2]|0;d3(o+1|0,m,c[S>>2]&-9,a,j,s);E=c[m+(o<<3)>>2]|0;o=(c[m+(o<<3)+4>>2]|0)-E|0;if(z$(b+E|0,r+-1|0,o)|0){n=x;C=171;continue}E=(o|0)==0;n=E&1;q=c[w+12>>2]|0;if(E?c[k+(q<<2)>>2]|0:0){n=x;C=171;continue}c[k+(q<<2)>>2]=n;o=o+-1|0;r=r+o|0;o=o+s|0;q=c[T>>2]|0;n=B1(T,r,4)|0;if((n|0)<1)if((n|0)<0){e=1;break b}else n=1;D=r+n|0;E=n}else{q=c[T>>2]|0;if(!q){n=x;C=171;continue}n=B1(T,r,4)|0;if((n|0)<1)if((n|0)<0){e=1;break b}else n=1;o=s;D=r+n|0;E=n}s=o+e|0;if(!(c[u>>2]|0)){e=E;n=x;C=171;continue}y=(s|0)!=0;z=(q|0)==95;A=(s|0)==0;C=J&(q|0)==10;B=(s|0)<1&I;t=0;n=x;while(1){f:do if((c[w>>2]|0)>>>0<=q>>>0){if((c[w+4>>2]|0)>>>0<q>>>0)break;r=w+20|0;e=c[r>>2]|0;do if(e|0){if(!((e&1|0)==0|B|C))break f;if(e&2|0?(x=c[T>>2]|0,!((x|R|0)==0|J&(x|0)==10)):0)break f;do if(e&16|0){if(z)break f;if(h0(q)|0)break f;e=c[T>>2]|0;if((e|0)==95)break;if(!(h0(e)|0))break f}while(0);e=c[r>>2]|0;if(e&32){if(z){e=c[T>>2]|0;if((e|0)==95)break f}else{x=(h0(q)|0)==0;e=c[T>>2]|0;if(x|(e|0)==95)break f}if(h0(e)|0)break f;e=c[r>>2]|0}o=c[T>>2]|0;do if((o|0)!=0&(y&(e&64|0)!=0)){if(z)e=1;else{e=(h0(q)|0)!=0;o=c[T>>2]|0}if((o|0)==95)if(e)break f;else break;else if(e^(h0(o)|0)!=0)break;else break f}while(0);do if(c[r>>2]&128|0){e=c[T>>2]|0;if(A|(e|0)==0)break f;if(z)o=1;else{o=(h0(q)|0)!=0;e=c[T>>2]|0}if((e|0)==95)if(o)break;else break f;else if(o^(h0(e)|0)!=0)break f;else break}while(0);e=c[r>>2]|0;do if(e&4){if(c[S>>2]&2|0)break;if(!(g0(q,c[w+24>>2]|0)|0))break f;e=c[r>>2]|0}while(0);do if(e&4|0){if(!(c[S>>2]&2))break;x=o0(q)|0;e=w+24|0;if(g0(x,c[e>>2]|0)|0)break;x=R$(q)|0;if(!(g0(x,c[e>>2]|0)|0))break f}while(0);if(!(c[r>>2]&8))break;if(e3(c[w+28>>2]|0,q,c[S>>2]&2)|0)break f}while(0);if(!t){t=c[u>>2]|0;n=c[w+16>>2]|0;break}o=p+28|0;e=c[o>>2]|0;if(!e){e=n2(U,0,0,0,32)|0;if(!e){C=145;break c}c[e+24>>2]=p;c[e+28>>2]=0;x=n2(U,0,0,0,c[Q>>2]<<2)|0;c[e+20>>2]=x;if(!x){C=152;break c}c[o>>2]=e;p=e}else p=e;c[p>>2]=s;c[p+4>>2]=D;c[p+8>>2]=c[u>>2];c[p+12>>2]=c[w+12>>2];c[p+16>>2]=c[T>>2];if((c[Q>>2]|0)>0){o=c[p+20>>2]|0;e=0;do{c[o+(e<<2)>>2]=c[j+(e<<2)>>2];e=e+1|0}while((e|0)<(c[Q>>2]|0))}e=c[w+16>>2]|0;if(!e)break;o=c[e>>2]|0;if((o|0)<=-1)break;r=c[p+20>>2]|0;do{c[r+(o<<2)>>2]=s;e=e+4|0;o=c[e>>2]|0}while((o|0)>-1)}while(0);u=w+40|0;if(!(c[u>>2]|0))break;else w=w+32|0}if(!t){e=E;C=171;continue}if(n){e=c[n>>2]|0;if((e|0)>-1){do{n=n+4|0;c[j+(e<<2)>>2]=s;e=c[n>>2]|0}while((e|0)>-1);q=v;o=D;e=E}else{q=v;o=D;e=E}}else{q=v;o=D;e=E;n=0}}else if((C|0)==171){C=0;r=c[p+24>>2]|0;if(!r)break;t=c[p+8>>2]|0;if(c[t+20>>2]&256|0)c[k+(c[p+12>>2]<<2)>>2]=0;s=c[p>>2]|0;u=c[p+4>>2]|0;c[T>>2]=c[p+16>>2];q=c[Q>>2]|0;if((q|0)>0){p=c[p+20>>2]|0;o=0;do{c[j+(o<<2)>>2]=c[p+(o<<2)>>2];o=o+1|0}while((o|0)<(q|0));p=r;q=v;o=u}else{p=r;q=v;o=u}}r=o;v=q;w=t;x=n;C=79}n=(v|0)>-1;if(n|(c[T>>2]|0)==0){C=180;break}c[T>>2]=H;r=F;q=G;B=H}if((C|0)==53){m2(U);if(j|0)D_(i);if(m|0)D_(h);if(!k){e=12;break a}D_(g);e=12;break a}else if((C|0)==60){m2(U);if(j|0)D_(i);if(m|0)D_(h);if(!k){e=12;break a}D_(g);e=12;break a}else if((C|0)==145){m2(U);if(j|0)D_(i);if(m|0)D_(h);if(!k){e=12;break a}D_(g);e=12;break a}else if((C|0)==152){m2(U);if(j|0)D_(i);if(m|0)D_(h);if(!k){e=12;break a}D_(g);e=12;break a}else if((C|0)==180){c[f>>2]=v;e=(n^1)&1;break}}while(0);m2(U);if(j|0)D_(i);if(m|0)D_(h);if(k)D_(g)}else e=12;while(0);l=V;return e|0}function c3(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;W=l;l=l+16|0;T=W;c[T>>2]=0;k=e&1;Q=e&2;R=a+56|0;j=c[R>>2]&4;if(!d)N=0;else N=c[a+40>>2]|0;P=N<<2;i=a+52|0;e=c[i>>2]|0;h=e<<3;g=h+8|0;e=P+12+h+(g+(O(P,e)|0)<<1)|0;U=C_(e)|0;if(!U)e=12;else{H3(U|0,0,e|0)|0;e=U+P|0;m=e&3;m=e+((m|0)==0?0:4-m|0)|0;e=m+g|0;n=e&3;n=e+((n|0)==0?0:4-n|0)|0;e=n+g|0;M=e&3;M=e+((M|0)==0?0:4-M|0)|0;e=M+h|0;g=e&3;i=c[i>>2]|0;h=(i|0)>0;if(h){e=e+((g|0)==0?0:4-g|0)|0;g=0;while(1){c[n+(g<<3)+4>>2]=e;e=e+P|0;c[m+(g<<3)+4>>2]=e;g=g+1|0;if((g|0)>=(i|0))break;else e=e+P|0}if(h){e=0;do{c[M+(e<<3)>>2]=-1;e=e+1|0}while((e|0)<(i|0))}}e=B1(T,b,4)|0;if((e|0)<1)if((e|0)<0)e=1;else{i=1;V=11}else{i=e;V=11}a:do if((V|0)==11){L=a+8|0;K=(j|0)!=0;E=(k|0)==0;F=(N|0)>0;G=a+12|0;H=(N|0)<1;I=a+44|0;J=a+32|0;C=a+36|0;D=(N|0)==0;h=0;v=b+i|0;u=0;j=0;e=-1;g=m;A=U;x=m;w=n;while(1){if((e|0)<0){a=c[L>>2]|0;k=a+8|0;b:do if(c[k>>2]|0){p=(u|0)!=0;q=(h|0)==95;r=(u|0)==0;t=K&(h|0)==10;s=(u|0)<1&E;while(1){c:while(1){o=a+12|0;if((c[M+(c[o>>2]<<3)>>2]|0)>=(u|0))break;n=a+20|0;b=c[n>>2]|0;if(!b){V=46;break}d:do if((b&1|0)==0|s|t){if(b&2|0?(B=c[T>>2]|0,!((B|Q|0)==0|K&(B|0)==10)):0)break;do if(b&16|0){if(q)break d;if(h0(h)|0)break d;b=c[T>>2]|0;if((b|0)==95)break;if(!(h0(b)|0))break d}while(0);b=c[n>>2]|0;if(b&32){if(q){b=c[T>>2]|0;if((b|0)==95)break}else{B=(h0(h)|0)==0;b=c[T>>2]|0;if(B|(b|0)==95)break}if(h0(b)|0)break;b=c[n>>2]|0}m=c[T>>2]|0;do if((m|0)!=0&(p&(b&64|0)!=0)){if(q)b=1;else{b=(h0(h)|0)!=0;m=c[T>>2]|0}if((m|0)==95)if(b)break d;else break;else if(b^(h0(m)|0)!=0)break;else break d}while(0);if(!(c[n>>2]&128)){V=46;break c}b=c[T>>2]|0;if(r|(b|0)==0)break;if(q)m=1;else{m=(h0(h)|0)!=0;b=c[T>>2]|0}if((b|0)==95)if(m){V=46;break c}else break;else if(m^(h0(b)|0)!=0)break;else{V=46;break c}}while(0);k=a+40|0;if(!(c[k>>2]|0))break b;else a=a+32|0}if((V|0)==46){V=0;c[g>>2]=c[k>>2];if(F)H3(c[g+4>>2]|0,-1,P|0)|0;k=c[a+16>>2]|0;if(k|0?(S=c[k>>2]|0,(S|0)>-1):0){m=g+4|0;b=S;do{if((b|0)<(N|0))c[(c[m>>2]|0)+(b<<2)>>2]=u;k=k+4|0;b=c[k>>2]|0}while((b|0)>-1)}k=(c[g>>2]|0)!=(c[G>>2]|0);if(k|H){j=k?j:1;e=k?e:u;k=g+4|0}else{k=g+4|0;j=c[k>>2]|0;e=0;do{c[d+(e<<2)>>2]=c[j+(e<<2)>>2];e=e+1|0}while((e|0)!=(N|0));j=1;e=u}B=c[o>>2]|0;c[M+(B<<3)>>2]=u;c[M+(B<<3)+4>>2]=k;g=g+8|0}k=a+40|0;if(!(c[k>>2]|0))break;else a=a+32|0}}while(0);c[g>>2]=0;g=c[T>>2]|0;if(!g)break;else h=g}else{if(D)break;h=c[T>>2]|0;if(!((g|0)!=(x|0)&(h|0)!=0))break}B=u+i|0;g=B1(T,v,4)|0;if((g|0)<1)if((g|0)<0){e=1;break a}else i=1;else i=g;z=v+i|0;if((j|0)!=0&(c[I>>2]|0)!=0){if(!(c[x>>2]|0))g=w;else{o=c[C>>2]|0;p=c[o>>2]|0;q=(p|0)>-1;n=x;g=w;do{m=n+4|0;e:do if(q){k=0;b=p;do{a=c[o+((k|1)<<2)>>2]|0;if((b|0)>=(N|0))break e;j=c[m>>2]|0;if((c[j+(a<<2)>>2]|0)==(c[d+(a<<2)>>2]|0)?(c[j+(b<<2)>>2]|0)<(c[d+(b<<2)>>2]|0):0)break e;k=k+2|0;b=c[o+(k<<2)>>2]|0}while((b|0)>-1);k=m;V=75}else{k=m;j=c[m>>2]|0;V=75}while(0);if((V|0)==75){V=0;c[g>>2]=c[n>>2];v=g+4|0;y=c[v>>2]|0;c[v>>2]=j;c[k>>2]=y;g=g+8|0}n=n+8|0}while((c[n>>2]|0)!=0)}c[g>>2]=0;y=x;j=0}else{y=w;w=x}k=c[w>>2]|0;if(!k){k=A;g=y}else{r=(B|0)!=0;s=(h|0)==95;t=(B|0)==0;v=K&(h|0)==10;u=(B|0)<1&E;q=w;a=A;g=y;while(1){b=k+8|0;if(c[b>>2]|0){p=q+4|0;o=a;n=b;while(1){f:do if((c[k>>2]|0)>>>0<=h>>>0?(c[k+4>>2]|0)>>>0>=h>>>0:0){m=k+20|0;a=c[m>>2]|0;do if(a|0){if(!((a&1|0)==0|u|v)){a=o;break f}if(a&2|0?(A=c[T>>2]|0,!((A|Q|0)==0|K&(A|0)==10)):0){a=o;break f}do if(a&16|0){if(s){a=o;break f}if(h0(h)|0){a=o;break f}a=c[T>>2]|0;if((a|0)==95)break;if(!(h0(a)|0)){a=o;break f}}while(0);a=c[m>>2]|0;if(a&32){if(s){a=c[T>>2]|0;if((a|0)==95){a=o;break f}}else{A=(h0(h)|0)==0;a=c[T>>2]|0;if(A|(a|0)==95){a=o;break f}}if(h0(a)|0){a=o;break f}a=c[m>>2]|0}b=c[T>>2]|0;do if((b|0)!=0&(r&(a&64|0)!=0)){if(s)a=1;else{a=(h0(h)|0)!=0;b=c[T>>2]|0}if((b|0)==95)if(a){a=o;break f}else break;else if(a^(h0(b)|0)!=0)break;else{a=o;break f}}while(0);do if(c[m>>2]&128|0){a=c[T>>2]|0;if(t|(a|0)==0){a=o;break f}if(s)b=1;else{b=(h0(h)|0)!=0;a=c[T>>2]|0}if((a|0)==95)if(b)break;else{a=o;break f}else if(b^(h0(a)|0)!=0){a=o;break f}else break}while(0);a=c[m>>2]|0;do if(a&4){if(c[R>>2]&2|0)break;if(!(g0(h,c[k+24>>2]|0)|0)){a=o;break f}a=c[m>>2]|0}while(0);do if(a&4|0){if(!(c[R>>2]&2))break;A=o0(h)|0;a=k+24|0;if(g0(A,c[a>>2]|0)|0)break;A=R$(h)|0;if(!(g0(A,c[a>>2]|0)|0)){a=o;break f}}while(0);if(!(c[m>>2]&8))break;if(e3(c[k+28>>2]|0,h,c[R>>2]&2)|0){a=o;break f}}while(0);if(F){b=c[p>>2]|0;a=0;do{c[o+(a<<2)>>2]=c[b+(a<<2)>>2];a=a+1|0}while((a|0)!=(N|0))}a=c[k+16>>2]|0;do if(a|0){b=c[a>>2]|0;if((b|0)<=-1)break;do{if((b|0)<(N|0))c[o+(b<<2)>>2]=B;a=a+4|0;b=c[a>>2]|0}while((b|0)>-1)}while(0);a=c[k+12>>2]|0;b=M+(a<<3)|0;if((c[b>>2]|0)>=(B|0)){a=c[M+(a<<3)+4>>2]|0;b=c[a>>2]|0;if(!(f3(N,c[J>>2]|0,o,b)|0)){a=o;break}c[a>>2]=o;if((c[n>>2]|0)!=(c[G>>2]|0)){a=b;break}if(F)e=0;else{j=1;a=b;e=B;break}while(1){c[d+(e<<2)>>2]=c[o+(e<<2)>>2];e=e+1|0;if((e|0)==(N|0)){j=1;a=b;e=B;break f}}}A=c[n>>2]|0;c[g>>2]=A;x=g+4|0;m=c[x>>2]|0;c[x>>2]=o;c[b>>2]=B;c[M+(a<<3)+4>>2]=x;do if((c[G>>2]|0)==(A|0)){if((e|0)==-1)if(F)e=0;else{e=B;j=1;break}else{if(!F)break;if((c[o>>2]|0)>(c[d>>2]|0))break;else e=0}do{c[d+(e<<2)>>2]=c[o+(e<<2)>>2];e=e+1|0}while((e|0)<(N|0));e=B;j=1}while(0);a=m;g=g+8|0}else a=o;while(0);n=k+40|0;if(!(c[n>>2]|0))break;else{k=k+32|0;o=a}}}q=q+8|0;k=c[q>>2]|0;if(!k){k=a;break}}}c[g>>2]=0;v=z;u=B;A=k;x=y}c[f>>2]=e;e=e>>>31}while(0);D_(U)}l=W;return e|0}function d3(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;if((d&8|0)==0&(g|0)>-1?(m=c[e+16>>2]|0,n=c[e+28>>2]|0,l=(a|0)!=0&(n|0)!=0,l):0){k=c[e+48>>2]|0;j=0;do{d=c[m+(j*12|0)>>2]|0;if((d|0)==(k|0))i=g;else i=c[f+(d<<2)>>2]|0;h=b+(j<<3)|0;c[h>>2]=i;d=c[m+(j*12|0)+4>>2]|0;if((d|0)==(k|0))d=g;else d=c[f+(d<<2)>>2]|0;e=b+(j<<3)+4|0;c[e>>2]=d;if((d|0)==-1|(i|0)==-1){c[e>>2]=-1;c[h>>2]=-1}j=j+1|0}while(j>>>0<a>>>0&j>>>0<n>>>0);if(l){d=0;do{i=b+(d<<3)+4|0;j=c[m+(d*12|0)+8>>2]|0;if(j|0?(o=c[j>>2]|0,(o|0)>-1):0){k=b+(d<<3)|0;h=0;f=o;e=c[k>>2]|0;do{if(!((e|0)>=(c[b+(f<<3)>>2]|0)?(c[i>>2]|0)<=(c[b+(f<<3)+4>>2]|0):0)){c[i>>2]=-1;c[k>>2]=-1;e=-1}h=h+1|0;f=c[j+(h<<2)>>2]|0}while((f|0)>-1)}d=d+1|0}while(d>>>0<a>>>0&d>>>0<n>>>0)}else d=0}else d=0;if(d>>>0<a>>>0)H3(b+(d<<3)|0,-1,a-d<<3|0)|0;return}function e3(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=c[a>>2]|0;a:do if(!e)d=0;else{f=(d|0)==0;d=e;while(1){if(f){if(g0(b,d)|0){d=1;break a}}else{e=R$(b)|0;if(g0(e,c[a>>2]|0)|0){d=1;break a}e=o0(b)|0;if(g0(e,c[a>>2]|0)|0){d=1;break a}}a=a+4|0;d=c[a>>2]|0;if(!d){d=0;break}}}while(0);return d|0}function f3(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;a:do if((a|0)>0){f=0;while(1){h=c[d+(f<<2)>>2]|0;g=c[e+(f<<2)>>2]|0;if(!(c[b+(f<<2)>>2]|0)){if((h|0)<(g|0)){f=1;break a}if((h|0)>(g|0)){f=0;break a}}else{if((h|0)>(g|0)){f=1;break a}if((h|0)<(g|0)){f=0;break a}}f=f+1|0;if((f|0)>=(a|0)){f=0;break}}}else f=0;while(0);return f|0}function g3(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=t0(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;i=(c[f+8>>2]|0)-h|0;if((i|0)>0){i=i>>>0<k>>>0?i:k;F3(b|0,h|0,i|0)|0;c[g>>2]=(c[g>>2]|0)+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(K$(f)|0)break;h=nb[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)u0(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)u0(f);return e|0}function h3(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(t0(a)|0)==0;a=i3(a)|0}else a=i3(a)|0;return a|0}function i3(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=nb[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function j3(a){a=a|0;(c[a+76>>2]|0)>-1?t0(a)|0:0;return c[a+60>>2]|0}function k3(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[15653]|0;if((c[f+76>>2]|0)>-1)g=t0(f)|0;else g=0;do if((D1(b,f)|0)<0)b=-1;else{if((a[f+75>>0]|0)!=10?(d=f+20|0,e=c[d>>2]|0,e>>>0<(c[f+16>>2]|0)>>>0):0){c[d>>2]=e+1;a[e>>0]=10;b=0;break}b=(F1(f,10)|0)>>31}while(0);if(g|0)u0(f);return b|0}function l3(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;i=k+24|0;h=k+16|0;g=k;d=k+28|0;b=d;e=150604;f=b+20|0;do{a[b>>0]=a[e>>0]|0;b=b+1|0;e=e+1|0}while((b|0)<(f|0));e=d+13|0;b=0;while(1){h1(e)|0;c[g>>2]=d;c[g+4>>2]=32962;c[g+8>>2]=384;f=N_(Ha(5,g|0)|0)|0;if((f|0)>-1){j=4;break}if((b|0)<99)b=b+1|0;else{b=0;break}}if((j|0)==4){c[h>>2]=d;wa(10,h|0)|0;b=z1(f,150624)|0;if(!b){c[i>>2]=f;Ja(6,i|0)|0;b=0}}l=k;return b|0}function m3(a){a=a|0;var b=0,e=0,f=0;if((c[a+76>>2]|0)>=0?(t0(a)|0)!=0:0){b=a+4|0;e=c[b>>2]|0;if(e>>>0<(c[a+8>>2]|0)>>>0){c[b>>2]=e+1;b=d[e>>0]|0}else b=J$(a)|0}else f=3;do if((f|0)==3){b=a+4|0;e=c[b>>2]|0;if(e>>>0<(c[a+8>>2]|0)>>>0){c[b>>2]=e+1;b=d[e>>0]|0;break}else{b=J$(a)|0;break}}while(0);return b|0}function n3(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(t0(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=F1(d,b)|0;u0(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=F1(d,b)|0}while(0);return e|0}function o3(a){a=a|0;return h3(a)|0}function p3(){}function q3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function r3(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=q3(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function s3(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0<a>>>0|0)>>>0,c|0)|0}function t3(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function u3(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0} + function v3(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<<i;b=k>>>(m>>>0)&b;g=0;i=l<<i;break}if(!f){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<<m|l>>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<<p&j;i=(k<<p|l>>>(o>>>0))&j|l<<m&i-33>>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=u3(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((u3(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<<i|l>>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<<i;break}if(!f){o=0;p=0;return (z=o,p)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=s3(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;t3(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=t3(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function w3(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return v3(a,b,c,d,0)|0}function x3(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;v3(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function y3(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>c;return a>>>c|(b&(1<<c)-1)<<32-c}z=(b|0)<0?-1:0;return b>>c-32|0}function z3(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<<c)-1)<<32-c}z=0;return b>>>c-32|0}function A3(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}z=a<<c-32;return 0}function B3(a){a=a|0;return (a&255)<<8|a>>8&255|0}function C3(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function D3(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;q=q+1|0;c[a>>2]=q;while((f|0)<(e|0)){if(!(c[d+(f<<3)>>2]|0)){c[d+(f<<3)>>2]=q;c[d+((f<<3)+4)>>2]=b;c[d+((f<<3)+8)>>2]=0;z=e;return d|0}f=f+1|0}e=e*2|0;d=F_(d|0,8*(e+1|0)|0)|0;d=D3(a|0,b|0,d|0,e|0)|0;z=e;return d|0}function E3(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;while((f|0)<(d|0)){e=c[b+(f<<3)>>2]|0;if(!e)break;if((e|0)==(a|0))return c[b+((f<<3)+4)>>2]|0;f=f+1|0}return 0}function F3(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return Ra(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function G3(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else F3(b,c,d)|0;return b|0}function H3(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function I3(a){a=a|0;var b=0,d=0;d=c[i>>2]|0;b=d+a|0;if((a|0)>0&(b|0)<(d|0)|(b|0)<0){W()|0;va(12);return -1}c[i>>2]=b;if((b|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=d;va(12);return -1}return d|0}function J3(a){a=a|0;return +gb[a&1]()}function K3(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;return +hb[a&7](+b,+c,+d)}function L3(a,b){a=a|0;b=b|0;return +ib[a&1](b|0)}function M3(a){a=a|0;return jb[a&3]()|0}function N3(a,b){a=a|0;b=b|0;return kb[a&63](b|0)|0}function O3(a,b,c){a=a|0;b=b|0;c=c|0;return lb[a&127](b|0,c|0)|0}function P3(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return mb[a&3](b|0,c|0,+d,+e)|0}function Q3(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return nb[a&63](b|0,c|0,d|0)|0}function R3(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ob[a&127](b|0,c|0,d|0,e|0)|0}function S3(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return pb[a&127](b|0,c|0,d|0,e|0,f|0)|0}function T3(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return qb[a&1](b|0,c|0,d|0,e|0,f|0,g|0)|0}function U3(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;return rb[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)|0}function V3(a){a=a|0;sb[a&15]()}function W3(a,b){a=a|0;b=b|0;tb[a&127](b|0)}function X3(a,b,c){a=a|0;b=b|0;c=c|0;ub[a&63](b|0,c|0)}function Y3(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vb[a&127](b|0,c|0,d|0)}function Z3(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;wb[a&15](b|0,c|0,d|0,+e,+f,g|0)}function _3(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;xb[a&31](b|0,c|0,d|0,e|0)}function $3(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;yb[a&15](b|0,c|0,d|0,e|0,f|0)}function a4(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;zb[a&15](b|0,c|0,d|0,e|0,f|0,g|0)}function b4(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Ab[a&0](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function c4(){S(0);return 0.0}function d4(a,b,c){a=+a;b=+b;c=+c;S(1);return 0.0}function e4(a){a=a|0;S(2);return 0.0}function f4(){S(3);return 0}function g4(a){a=a|0;S(4);return 0}function h4(a,b){a=a|0;b=b|0;S(5);return 0}function i4(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(6);return 0}function j4(a,b,c){a=a|0;b=b|0;c=c|0;S(7);return 0}function k4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(8);return 0}function l4(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(9);return 0}function m4(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(10);return 0}function n4(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(11);return 0}function o4(){S(12)}function p4(a){a=a|0;S(13)}function q4(a,b){a=a|0;b=b|0;S(14)}function r4(a,b,c){a=a|0;b=b|0;c=c|0;S(15)}function s4(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;S(16)}function t4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(17)}function u4(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(18)}function v4(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(19)}function w4(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(20)} + + // EMSCRIPTEN_END_FUNCS + var gb=[c4,FL];var hb=[d4,RF,QF,SF,TF,d4,d4,d4];var ib=[e4,ML];var jb=[f4,eq,EH,vI];var kb=[g4,eh,zg,Nm,Om,Fy,Iy,sN,tN,iP,jP,kP,lP,mP,nP,oP,pP,K_,Ib,bC,Al,Dl,an,vH,ay,Sy,$x,AH,FH,by,eN,uH,jN,kN,bV,C_,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4];var lb=[h4,hy,Ey,Jy,EK,FK,wK,sK,aK,KT,LT,MT,NT,OT,PT,RT,ST,TT,UT,VT,WT,XT,YT,ZT,_T,$T,aU,bU,cU,dU,eU,fU,gU,hU,iU,jU,kU,lU,mU,nU,wX,xX,zX,WX,XX,YX,ZX,_X,$X,aY,bY,UY,VY,XY,jY,kY,mY,$B,pg,dh,Gh,ii,Ai,Lk,Jk,Bl,El,$o,oq,Kq,Mq,Oq,Pq,Rq,Qq,ar,is,ns,ps,tu,mB,lB,kB,gD,Ty,xH,tD,JD,ED,FD,GE,D1,n3,zL,NM,xx,PR,Ex,Gx,fN,b$,oQ,JT,ZU,_U,F_,kX,lX,mX,Z2,h4,h4,h4,h4,h4,h4,h4,h4,h4,h4,h4,h4,h4,h4,h4,h4,h4,h4];var mb=[i4,qt,vt,i4];var nb=[j4,Jm,Mu,kw,sw,Bw,Gw,Dy,Hy,HI,AM,zR,AX,YY,nY,L_,M_,Q_,R_,G0,Pw,Zm,Au,tp,os,Iw,eD,Y0,vA,g1,BL,DI,sO,WU,HY,yZ,sZ,CZ,P1,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4];var ob=[k4,Lm,Wq,Nu,mw,uw,Cx,AA,Dx,Wx,jy,ly,wy,vy,Ky,Oy,Qy,xI,CM,VN,TN,PP,BR,XR,WR,pX,qX,rX,sX,tX,uX,vX,yX,CX,NY,OY,PY,QY,RY,SY,TY,WY,_Y,cY,dY,eY,fY,gY,hY,iY,lY,pY,Lw,Az,iD,DL,QV,TV,_V,jW,sW,yW,wW,zW,iX,DZ,XW,JY,KY,zZ,AZ,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4];var pb=[l4,iy,bK,xK,DX,EX,UX,VX,pZ,$Y,aZ,qY,rY,nX,oX,FZ,GZ,HZ,IZ,KZ,LZ,MZ,NZ,OZ,QZ,RZ,SZ,TZ,UZ,PZ,s_,t_,j_,c_,VZ,WZ,XZ,ZZ,YZ,_Z,$Z,a_,b_,d_,e_,f_,g_,h_,i_,k_,l_,m_,n_,r_,p_,o_,q_,y_,u_,v_,w_,x_,z_,A_,B_,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4];var qb=[m4,AU];var rb=[n4,rZ,BZ,n4];var sb=[o4,EL,BH,CH,DH,HH,IH,JH,FR,o4,o4,o4,o4,o4,o4,o4];var tb=[p4,Ob,Pb,Tb,Ub,Vb,nc,oc,Mc,Nc,Oc,Pc,Qc,Rc,Sc,cd,dd,gd,hd,id,jd,kd,ld,md,yd,zd,Ad,Cd,Dd,Ed,Fd,Gd,Hd,Id,Jd,Ud,Vd,Wd,Yd,Zd,_d,$d,ae,be,ce,de,ee,ge,te,ue,ve,we,He,Ie,Je,Le,Ye,Ze,_e,af,bf,cf,df,ef,ff,gf,hf,jf,sf,tf,uf,vf,Yf,Tf,rm,bm,fp,Go,ao,co,Np,Op,Zl,_l,fo,no,po,Ao,my,IJ,_J,KJ,JJ,uK,fJ,iJ,qP,vP,Mf,Fl,Ko,Oo,gp,D_,ax,jD,cF,ER,lO,mN,yI,YR,zU,UU,VU,$U,p4,p4,p4,p4,p4,p4,p4,p4,p4,p4,p4,p4];var ub=[q4,Uc,Zc,od,td,Qd,me,Ce,Re,pf,Bf,Ly,cK,GK,yK,tK,YJ,ZJ,CK,DK,tP,xP,PI,Sw,fD,GH,dN,AT,yU,XU,YU,aV,cV,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4];var vb=[r4,Wb,Xb,_b,Lc,Tc,Vc,Yc,nd,pd,sd,Ld,Md,Pd,he,ie,le,xe,ye,Be,Me,Ne,Qe,kf,lf,of,wf,xf,Af,qk,rk,sk,Km,lw,tw,Zw,ny,Py,wz,BA,YC,BG,wI,II,hJ,BM,EM,UN,SN,rP,sP,uP,wP,yP,AR,nT,mT,qx,Sx,bz,Ez,Hz,zH,CL,BI,hN,lN,oT,qT,rT,zT,BT,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4];var wb=[s4,xE,yE,zE,AE,BE,CE,DE,EE,s4,s4,s4,s4,s4,s4,s4];var xb=[t4,Yb,Wc,qd,Bd,Nd,Xd,je,ze,Oe,$e,mf,yf,Pf,Of,Nf,Lf,Kf,Jf,mc,If,Hf,ky,$J,vK,BX,ZY,oY,_0,gN,iN,LY];var yb=[u4,ed,Kd,Rd,fe,Ke,Cl,hD,nN,u4,u4,u4,u4,u4,u4,u4];var zb=[v4,Zb,Xc,rd,Od,ke,Ae,Pe,nf,zf,oN,v4,v4,v4,v4,v4];var Ab=[w4];return{___errno_location:O_,___muldi3:r3,___udivdi3:w3,___uremdi3:x3,_bitshift64Ashr:y3,_bitshift64Lshr:z3,_bitshift64Shl:A3,_dtextract:zw,_free:D_,_htons:M0,_i64Add:s3,_i64Subtract:t3,_llvm_bswap_i16:B3,_llvm_bswap_i32:C3,_malloc:C_,_memalign:I_,_memcpy:F3,_memmove:G3,_memset:H3,_realloc:F_,_saveSetjmp:D3,_sbrk:I3,_testSetjmp:E3,_vizCreateFile:Kb,_vizLastErrorMessage:Jb,_vizRenderFromString:Nb,_vizSetNop:Mb,_vizSetY_invert:Lb,dynCall_d:J3,dynCall_dddd:K3,dynCall_di:L3,dynCall_i:M3,dynCall_ii:N3,dynCall_iii:O3,dynCall_iiidd:P3,dynCall_iiii:Q3,dynCall_iiiii:R3,dynCall_iiiiii:S3,dynCall_iiiiiii:T3,dynCall_iiiiiiiiiii:U3,dynCall_v:V3,dynCall_vi:W3,dynCall_vii:X3,dynCall_viii:Y3,dynCall_viiiddi:Z3,dynCall_viiii:_3,dynCall_viiiii:$3,dynCall_viiiiii:a4,dynCall_viiiiiiiii:b4,establishStackSpace:Eb,getTempRet0:Hb,runPostSets:p3,setTempRet0:Gb,setThrew:Fb,stackAlloc:Bb,stackRestore:Db,stackSave:Cb}}) + + + // EMSCRIPTEN_END_ASM + (Module.asmGlobalArg,Module.asmLibraryArg,buffer);var ___errno_location=Module["___errno_location"]=asm["___errno_location"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Ashr=Module["_bitshift64Ashr"]=asm["_bitshift64Ashr"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _dtextract=Module["_dtextract"]=asm["_dtextract"];var _free=Module["_free"]=asm["_free"];var _htons=Module["_htons"]=asm["_htons"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i16=Module["_llvm_bswap_i16"]=asm["_llvm_bswap_i16"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memalign=Module["_memalign"]=asm["_memalign"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _realloc=Module["_realloc"]=asm["_realloc"];var _saveSetjmp=Module["_saveSetjmp"]=asm["_saveSetjmp"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var _testSetjmp=Module["_testSetjmp"]=asm["_testSetjmp"];var _vizCreateFile=Module["_vizCreateFile"]=asm["_vizCreateFile"];var _vizLastErrorMessage=Module["_vizLastErrorMessage"]=asm["_vizLastErrorMessage"];var _vizRenderFromString=Module["_vizRenderFromString"]=asm["_vizRenderFromString"];var _vizSetNop=Module["_vizSetNop"]=asm["_vizSetNop"];var _vizSetY_invert=Module["_vizSetY_invert"]=asm["_vizSetY_invert"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_dddd=Module["dynCall_dddd"]=asm["dynCall_dddd"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiiiiii=Module["dynCall_iiiiiiiiiii"]=asm["dynCall_iiiiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiiddi=Module["dynCall_viiiddi"]=asm["dynCall_viiiddi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];Module["asm"]=asm;Module["ccall"]=ccall;Module["Pointer_stringify"]=Pointer_stringify;Module["UTF8ToString"]=UTF8ToString;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout((function(){setTimeout((function(){Module["setStatus"]("")}),1);doRun()}),1)}else{doRun()}}Module["run"]=run;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() + + + + + return Module; + }; + + function render(instance, src, options) { + var i; + for (i = 0; i < options.files.length; i++) { + instance['ccall']('vizCreateFile', 'number', ['string', 'string'], [options.files[i].path, options.files[i].data]); + } + + instance['ccall']('vizSetY_invert', 'number', ['number'], [options.yInvert ? 1 : 0]); + instance['ccall']('vizSetNop', 'number', ['number'], [options.nop ? options.nop : 0]); + + var resultPointer = instance['ccall']('vizRenderFromString', 'number', ['string', 'string', 'string'], [src, options.format, options.engine]); + var resultString = instance['Pointer_stringify'](resultPointer); + instance['ccall']('free', 'number', ['number'], [resultPointer]); + + var errorMessagePointer = instance['ccall']('vizLastErrorMessage', 'number', [], []); + var errorMessageString = instance['Pointer_stringify'](errorMessagePointer); + instance['ccall']('free', 'number', ['number'], [errorMessagePointer]); + + if (errorMessageString != '') { + throw new Error(errorMessageString); + } + + return resultString; + } + + if (typeof importScripts === "function") { + var instance = Module(); + + onmessage = function(event) { + var id = event.data.id; + var src = event.data.src; + var options = event.data.options; + + try { + var result = render(instance, src, options); + postMessage({ id: id, result: result }); + } catch (e) { + var error; + if (e instanceof Error) { + error = { message: e.message, fileName: e.fileName, lineNumber: e.lineNumber }; + } else { + error = { message: e.toString() }; + } + postMessage({ id: id, error: error }); + } + } + } + + if (typeof exports === 'object' && typeof module !== 'undefined') { + module.exports = { render: render, Module: Module }; + } else if (typeof define === 'function' && define.amd) { + define(function() { return { render: render, Module: Module }; }); + } + + if (typeof global.Viz !== 'undefined') { + global.Viz.render = render; + global.Viz.Module = Module; + } + + })(typeof self !== 'undefined' ? self : this); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/graphviz/viz.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/graphviz/viz.js new file mode 100644 index 0000000..d9e55bd --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/graphviz/viz.js @@ -0,0 +1,333 @@ +/* +Viz.js 2.1.2 (Graphviz 2.40.1, Expat 2.2.5, Emscripten 1.37.36) +Copyright (c) 2014-2018 Michael Daines +Licensed under MIT license + +This distribution contains other software in object code form: + +Graphviz +Licensed under Eclipse Public License - v 1.0 +http://www.graphviz.org + +Expat +Copyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd and Clark Cooper +Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006 Expat maintainers. +Licensed under MIT license +http://www.libexpat.org + +zlib +Copyright (C) 1995-2013 Jean-loup Gailly and Mark Adler +http://www.zlib.net/zlib_license.html +*/ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global.Viz = factory()); +}(this, (function () { 'use strict'; + + var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { + return typeof obj; + } : function (obj) { + return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; + }; + + var classCallCheck = function (instance, Constructor) { + if (!(instance instanceof Constructor)) { + throw new TypeError("Cannot call a class as a function"); + } + }; + + var createClass = function () { + function defineProperties(target, props) { + for (var i = 0; i < props.length; i++) { + var descriptor = props[i]; + descriptor.enumerable = descriptor.enumerable || false; + descriptor.configurable = true; + if ("value" in descriptor) descriptor.writable = true; + Object.defineProperty(target, descriptor.key, descriptor); + } + } + + return function (Constructor, protoProps, staticProps) { + if (protoProps) defineProperties(Constructor.prototype, protoProps); + if (staticProps) defineProperties(Constructor, staticProps); + return Constructor; + }; + }(); + + var _extends = Object.assign || function (target) { + for (var i = 1; i < arguments.length; i++) { + var source = arguments[i]; + + for (var key in source) { + if (Object.prototype.hasOwnProperty.call(source, key)) { + target[key] = source[key]; + } + } + } + + return target; + }; + + var WorkerWrapper = function () { + function WorkerWrapper(worker) { + var _this = this; + + classCallCheck(this, WorkerWrapper); + + this.worker = worker; + this.listeners = []; + this.nextId = 0; + + this.worker.addEventListener('message', function (event) { + var id = event.data.id; + var error = event.data.error; + var result = event.data.result; + + _this.listeners[id](error, result); + delete _this.listeners[id]; + }); + } + + createClass(WorkerWrapper, [{ + key: 'render', + value: function render(src, options) { + var _this2 = this; + + return new Promise(function (resolve, reject) { + var id = _this2.nextId++; + + _this2.listeners[id] = function (error, result) { + if (error) { + reject(new Error(error.message, error.fileName, error.lineNumber)); + return; + } + resolve(result); + }; + + _this2.worker.postMessage({ id: id, src: src, options: options }); + }); + } + }]); + return WorkerWrapper; + }(); + + var ModuleWrapper = function ModuleWrapper(module, render) { + classCallCheck(this, ModuleWrapper); + + var instance = module(); + this.render = function (src, options) { + return new Promise(function (resolve, reject) { + try { + resolve(render(instance, src, options)); + } catch (error) { + reject(error); + } + }); + }; + }; + + // https://developer.mozilla.org/en-US/docs/Web/API/WindowBase64/Base64_encoding_and_decoding + + + function b64EncodeUnicode(str) { + return btoa(encodeURIComponent(str).replace(/%([0-9A-F]{2})/g, function (match, p1) { + return String.fromCharCode('0x' + p1); + })); + } + + function defaultScale() { + if ('devicePixelRatio' in window && window.devicePixelRatio > 1) { + return window.devicePixelRatio; + } else { + return 1; + } + } + + function svgXmlToImageElement(svgXml) { + var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, + _ref$scale = _ref.scale, + scale = _ref$scale === undefined ? defaultScale() : _ref$scale, + _ref$mimeType = _ref.mimeType, + mimeType = _ref$mimeType === undefined ? "image/png" : _ref$mimeType, + _ref$quality = _ref.quality, + quality = _ref$quality === undefined ? 1 : _ref$quality; + + return new Promise(function (resolve, reject) { + var svgImage = new Image(); + + svgImage.onload = function () { + var canvas = document.createElement('canvas'); + canvas.width = svgImage.width * scale; + canvas.height = svgImage.height * scale; + + var context = canvas.getContext("2d"); + context.drawImage(svgImage, 0, 0, canvas.width, canvas.height); + + canvas.toBlob(function (blob) { + var image = new Image(); + image.src = URL.createObjectURL(blob); + image.width = svgImage.width; + image.height = svgImage.height; + + resolve(image); + }, mimeType, quality); + }; + + svgImage.onerror = function (e) { + var error; + + if ('error' in e) { + error = e.error; + } else { + error = new Error('Error loading SVG'); + } + + reject(error); + }; + + svgImage.src = 'data:image/svg+xml;base64,' + b64EncodeUnicode(svgXml); + }); + } + + function svgXmlToImageElementFabric(svgXml) { + var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, + _ref2$scale = _ref2.scale, + scale = _ref2$scale === undefined ? defaultScale() : _ref2$scale, + _ref2$mimeType = _ref2.mimeType, + mimeType = _ref2$mimeType === undefined ? 'image/png' : _ref2$mimeType, + _ref2$quality = _ref2.quality, + quality = _ref2$quality === undefined ? 1 : _ref2$quality; + + var multiplier = scale; + + var format = void 0; + if (mimeType == 'image/jpeg') { + format = 'jpeg'; + } else if (mimeType == 'image/png') { + format = 'png'; + } + + return new Promise(function (resolve, reject) { + fabric.loadSVGFromString(svgXml, function (objects, options) { + // If there's something wrong with the SVG, Fabric may return an empty array of objects. Graphviz appears to give us at least one <g> element back even given an empty graph, so we will assume an error in this case. + if (objects.length == 0) { + reject(new Error('Error loading SVG with Fabric')); + } + + var element = document.createElement("canvas"); + element.width = options.width; + element.height = options.height; + + var canvas = new fabric.Canvas(element, { enableRetinaScaling: false }); + var obj = fabric.util.groupSVGElements(objects, options); + canvas.add(obj).renderAll(); + + var image = new Image(); + image.src = canvas.toDataURL({ format: format, multiplier: multiplier, quality: quality }); + image.width = options.width; + image.height = options.height; + + resolve(image); + }); + }); + } + + var Viz = function () { + function Viz() { + var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, + workerURL = _ref3.workerURL, + worker = _ref3.worker, + Module = _ref3.Module, + render = _ref3.render; + + classCallCheck(this, Viz); + + if (typeof workerURL !== 'undefined') { + this.wrapper = new WorkerWrapper(new Worker(workerURL)); + } else if (typeof worker !== 'undefined') { + this.wrapper = new WorkerWrapper(worker); + } else if (typeof Module !== 'undefined' && typeof render !== 'undefined') { + this.wrapper = new ModuleWrapper(Module, render); + } else if (typeof Viz.Module !== 'undefined' && typeof Viz.render !== 'undefined') { + this.wrapper = new ModuleWrapper(Viz.Module, Viz.render); + } else { + throw new Error('Must specify workerURL or worker option, Module and render options, or include one of full.render.js or lite.render.js after viz.js.'); + } + } + + createClass(Viz, [{ + key: 'renderString', + value: function renderString(src) { + var _ref4 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, + _ref4$format = _ref4.format, + format = _ref4$format === undefined ? 'svg' : _ref4$format, + _ref4$engine = _ref4.engine, + engine = _ref4$engine === undefined ? 'dot' : _ref4$engine, + _ref4$files = _ref4.files, + files = _ref4$files === undefined ? [] : _ref4$files, + _ref4$images = _ref4.images, + images = _ref4$images === undefined ? [] : _ref4$images, + _ref4$yInvert = _ref4.yInvert, + yInvert = _ref4$yInvert === undefined ? false : _ref4$yInvert, + _ref4$nop = _ref4.nop, + nop = _ref4$nop === undefined ? 0 : _ref4$nop; + + for (var i = 0; i < images.length; i++) { + files.push({ + path: images[i].path, + data: '<?xml version="1.0" encoding="UTF-8" standalone="no"?>\n<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">\n<svg width="' + images[i].width + '" height="' + images[i].height + '"></svg>' + }); + } + + return this.wrapper.render(src, { format: format, engine: engine, files: files, images: images, yInvert: yInvert, nop: nop }); + } + }, { + key: 'renderSVGElement', + value: function renderSVGElement(src) { + var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + + return this.renderString(src, _extends({}, options, { format: 'svg' })).then(function (str) { + var parser = new DOMParser(); + return parser.parseFromString(str, 'image/svg+xml').documentElement; + }); + } + }, { + key: 'renderImageElement', + value: function renderImageElement(src) { + var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + var scale = options.scale, + mimeType = options.mimeType, + quality = options.quality; + + + return this.renderString(src, _extends({}, options, { format: 'svg' })).then(function (str) { + if ((typeof fabric === 'undefined' ? 'undefined' : _typeof(fabric)) === "object" && fabric.loadSVGFromString) { + return svgXmlToImageElementFabric(str, { scale: scale, mimeType: mimeType, quality: quality }); + } else { + return svgXmlToImageElement(str, { scale: scale, mimeType: mimeType, quality: quality }); + } + }); + } + }, { + key: 'renderJSONObject', + value: function renderJSONObject(src) { + var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + var format = options.format; + + + if (format !== 'json' || format !== 'json0') { + format = 'json'; + } + + return this.renderString(src, _extends({}, options, { format: format })).then(function (str) { + return JSON.parse(str); + }); + } + }]); + return Viz; + }(); + + return Viz; + +}))); diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/LICENSE b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/LICENSE new file mode 100644 index 0000000..2250cc7 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/LICENSE @@ -0,0 +1,29 @@ +BSD 3-Clause License + +Copyright (c) 2006, Ivan Sagalaev. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/highlight.min.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/highlight.min.js new file mode 100644 index 0000000..635e80d --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/highlight.min.js @@ -0,0 +1,3835 @@ +/*! + Highlight.js v11.7.0 (git: 82688fad18) + (c) 2006-2022 undefined and other contributors + License: BSD-3-Clause + */ +var hljs=function(){"use strict";var e={exports:{}};function t(e){ +return e instanceof Map?e.clear=e.delete=e.set=()=>{ +throw Error("map is read-only")}:e instanceof Set&&(e.add=e.clear=e.delete=()=>{ +throw Error("set is read-only") +}),Object.freeze(e),Object.getOwnPropertyNames(e).forEach((n=>{var i=e[n] +;"object"!=typeof i||Object.isFrozen(i)||t(i)})),e} +e.exports=t,e.exports.default=t;class n{constructor(e){ +void 0===e.data&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1} +ignoreMatch(){this.isMatchIgnored=!0}}function i(e){ +return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'") +}function r(e,...t){const n=Object.create(null);for(const t in e)n[t]=e[t] +;return t.forEach((e=>{for(const t in e)n[t]=e[t]})),n} +const s=e=>!!e.scope||e.sublanguage&&e.language;class o{constructor(e,t){ +this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){ +this.buffer+=i(e)}openNode(e){if(!s(e))return;let t="" +;t=e.sublanguage?"language-"+e.language:((e,{prefix:t})=>{if(e.includes(".")){ +const n=e.split(".") +;return[`${t}${n.shift()}`,...n.map(((e,t)=>`${e}${"_".repeat(t+1)}`))].join(" ") +}return`${t}${e}`})(e.scope,{prefix:this.classPrefix}),this.span(t)} +closeNode(e){s(e)&&(this.buffer+="</span>")}value(){return this.buffer}span(e){ +this.buffer+=`<span class="${e}">`}}const a=(e={})=>{const t={children:[]} +;return Object.assign(t,e),t};class c{constructor(){ +this.rootNode=a(),this.stack=[this.rootNode]}get top(){ +return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){ +this.top.children.push(e)}openNode(e){const t=a({scope:e}) +;this.add(t),this.stack.push(t)}closeNode(){ +if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){ +for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)} +walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){ +return"string"==typeof t?e.addText(t):t.children&&(e.openNode(t), +t.children.forEach((t=>this._walk(e,t))),e.closeNode(t)),e}static _collapse(e){ +"string"!=typeof e&&e.children&&(e.children.every((e=>"string"==typeof e))?e.children=[e.children.join("")]:e.children.forEach((e=>{ +c._collapse(e)})))}}class l extends c{constructor(e){super(),this.options=e} +addKeyword(e,t){""!==e&&(this.openNode(t),this.addText(e),this.closeNode())} +addText(e){""!==e&&this.add(e)}addSublanguage(e,t){const n=e.root +;n.sublanguage=!0,n.language=t,this.add(n)}toHTML(){ +return new o(this,this.options).value()}finalize(){return!0}}function g(e){ +return e?"string"==typeof e?e:e.source:null}function d(e){return p("(?=",e,")")} +function u(e){return p("(?:",e,")*")}function h(e){return p("(?:",e,")?")} +function p(...e){return e.map((e=>g(e))).join("")}function f(...e){const t=(e=>{ +const t=e[e.length-1] +;return"object"==typeof t&&t.constructor===Object?(e.splice(e.length-1,1),t):{} +})(e);return"("+(t.capture?"":"?:")+e.map((e=>g(e))).join("|")+")"} +function b(e){return RegExp(e.toString()+"|").exec("").length-1} +const m=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./ +;function E(e,{joinWith:t}){let n=0;return e.map((e=>{n+=1;const t=n +;let i=g(e),r="";for(;i.length>0;){const e=m.exec(i);if(!e){r+=i;break} +r+=i.substring(0,e.index), +i=i.substring(e.index+e[0].length),"\\"===e[0][0]&&e[1]?r+="\\"+(Number(e[1])+t):(r+=e[0], +"("===e[0]&&n++)}return r})).map((e=>`(${e})`)).join(t)} +const x="[a-zA-Z]\\w*",w="[a-zA-Z_]\\w*",y="\\b\\d+(\\.\\d+)?",_="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",O="\\b(0b[01]+)",v={ +begin:"\\\\[\\s\\S]",relevance:0},N={scope:"string",begin:"'",end:"'", +illegal:"\\n",contains:[v]},k={scope:"string",begin:'"',end:'"',illegal:"\\n", +contains:[v]},M=(e,t,n={})=>{const i=r({scope:"comment",begin:e,end:t, +contains:[]},n);i.contains.push({scope:"doctag", +begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)", +end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0}) +;const s=f("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/) +;return i.contains.push({begin:p(/[ ]+/,"(",s,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),i +},S=M("//","$"),R=M("/\\*","\\*/"),j=M("#","$");var A=Object.freeze({ +__proto__:null,MATCH_NOTHING_RE:/\b\B/,IDENT_RE:x,UNDERSCORE_IDENT_RE:w, +NUMBER_RE:y,C_NUMBER_RE:_,BINARY_NUMBER_RE:O, +RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~", +SHEBANG:(e={})=>{const t=/^#![ ]*\// +;return e.binary&&(e.begin=p(t,/.*\b/,e.binary,/\b.*/)),r({scope:"meta",begin:t, +end:/$/,relevance:0,"on:begin":(e,t)=>{0!==e.index&&t.ignoreMatch()}},e)}, +BACKSLASH_ESCAPE:v,APOS_STRING_MODE:N,QUOTE_STRING_MODE:k,PHRASAL_WORDS_MODE:{ +begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/ +},COMMENT:M,C_LINE_COMMENT_MODE:S,C_BLOCK_COMMENT_MODE:R,HASH_COMMENT_MODE:j, +NUMBER_MODE:{scope:"number",begin:y,relevance:0},C_NUMBER_MODE:{scope:"number", +begin:_,relevance:0},BINARY_NUMBER_MODE:{scope:"number",begin:O,relevance:0}, +REGEXP_MODE:{begin:/(?=\/[^/\n]*\/)/,contains:[{scope:"regexp",begin:/\//, +end:/\/[gimuy]*/,illegal:/\n/,contains:[v,{begin:/\[/,end:/\]/,relevance:0, +contains:[v]}]}]},TITLE_MODE:{scope:"title",begin:x,relevance:0}, +UNDERSCORE_TITLE_MODE:{scope:"title",begin:w,relevance:0},METHOD_GUARD:{ +begin:"\\.\\s*[a-zA-Z_]\\w*",relevance:0},END_SAME_AS_BEGIN:e=>Object.assign(e,{ +"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{ +t.data._beginMatch!==e[1]&&t.ignoreMatch()}})});function I(e,t){ +"."===e.input[e.index-1]&&t.ignoreMatch()}function T(e,t){ +void 0!==e.className&&(e.scope=e.className,delete e.className)}function L(e,t){ +t&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)", +e.__beforeBegin=I,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords, +void 0===e.relevance&&(e.relevance=0))}function B(e,t){ +Array.isArray(e.illegal)&&(e.illegal=f(...e.illegal))}function D(e,t){ +if(e.match){ +if(e.begin||e.end)throw Error("begin & end are not supported with match") +;e.begin=e.match,delete e.match}}function H(e,t){ +void 0===e.relevance&&(e.relevance=1)}const P=(e,t)=>{if(!e.beforeMatch)return +;if(e.starts)throw Error("beforeMatch cannot be used with starts") +;const n=Object.assign({},e);Object.keys(e).forEach((t=>{delete e[t] +})),e.keywords=n.keywords,e.begin=p(n.beforeMatch,d(n.begin)),e.starts={ +relevance:0,contains:[Object.assign(n,{endsParent:!0})] +},e.relevance=0,delete n.beforeMatch +},C=["of","and","for","in","not","or","if","then","parent","list","value"] +;function $(e,t,n="keyword"){const i=Object.create(null) +;return"string"==typeof e?r(n,e.split(" ")):Array.isArray(e)?r(n,e):Object.keys(e).forEach((n=>{ +Object.assign(i,$(e[n],t,n))})),i;function r(e,n){ +t&&(n=n.map((e=>e.toLowerCase()))),n.forEach((t=>{const n=t.split("|") +;i[n[0]]=[e,U(n[0],n[1])]}))}}function U(e,t){ +return t?Number(t):(e=>C.includes(e.toLowerCase()))(e)?0:1}const z={},K=e=>{ +console.error(e)},W=(e,...t)=>{console.log("WARN: "+e,...t)},X=(e,t)=>{ +z[`${e}/${t}`]||(console.log(`Deprecated as of ${e}. ${t}`),z[`${e}/${t}`]=!0) +},G=Error();function Z(e,t,{key:n}){let i=0;const r=e[n],s={},o={} +;for(let e=1;e<=t.length;e++)o[e+i]=r[e],s[e+i]=!0,i+=b(t[e-1]) +;e[n]=o,e[n]._emit=s,e[n]._multi=!0}function F(e){(e=>{ +e.scope&&"object"==typeof e.scope&&null!==e.scope&&(e.beginScope=e.scope, +delete e.scope)})(e),"string"==typeof e.beginScope&&(e.beginScope={ +_wrap:e.beginScope}),"string"==typeof e.endScope&&(e.endScope={_wrap:e.endScope +}),(e=>{if(Array.isArray(e.begin)){ +if(e.skip||e.excludeBegin||e.returnBegin)throw K("skip, excludeBegin, returnBegin not compatible with beginScope: {}"), +G +;if("object"!=typeof e.beginScope||null===e.beginScope)throw K("beginScope must be object"), +G;Z(e,e.begin,{key:"beginScope"}),e.begin=E(e.begin,{joinWith:""})}})(e),(e=>{ +if(Array.isArray(e.end)){ +if(e.skip||e.excludeEnd||e.returnEnd)throw K("skip, excludeEnd, returnEnd not compatible with endScope: {}"), +G +;if("object"!=typeof e.endScope||null===e.endScope)throw K("endScope must be object"), +G;Z(e,e.end,{key:"endScope"}),e.end=E(e.end,{joinWith:""})}})(e)}function V(e){ +function t(t,n){ +return RegExp(g(t),"m"+(e.case_insensitive?"i":"")+(e.unicodeRegex?"u":"")+(n?"g":"")) +}class n{constructor(){ +this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0} +addRule(e,t){ +t.position=this.position++,this.matchIndexes[this.matchAt]=t,this.regexes.push([t,e]), +this.matchAt+=b(e)+1}compile(){0===this.regexes.length&&(this.exec=()=>null) +;const e=this.regexes.map((e=>e[1]));this.matcherRe=t(E(e,{joinWith:"|" +}),!0),this.lastIndex=0}exec(e){this.matcherRe.lastIndex=this.lastIndex +;const t=this.matcherRe.exec(e);if(!t)return null +;const n=t.findIndex(((e,t)=>t>0&&void 0!==e)),i=this.matchIndexes[n] +;return t.splice(0,n),Object.assign(t,i)}}class i{constructor(){ +this.rules=[],this.multiRegexes=[], +this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){ +if(this.multiRegexes[e])return this.multiRegexes[e];const t=new n +;return this.rules.slice(e).forEach((([e,n])=>t.addRule(e,n))), +t.compile(),this.multiRegexes[e]=t,t}resumingScanAtSamePosition(){ +return 0!==this.regexIndex}considerAll(){this.regexIndex=0}addRule(e,t){ +this.rules.push([e,t]),"begin"===t.type&&this.count++}exec(e){ +const t=this.getMatcher(this.regexIndex);t.lastIndex=this.lastIndex +;let n=t.exec(e) +;if(this.resumingScanAtSamePosition())if(n&&n.index===this.lastIndex);else{ +const t=this.getMatcher(0);t.lastIndex=this.lastIndex+1,n=t.exec(e)} +return n&&(this.regexIndex+=n.position+1, +this.regexIndex===this.count&&this.considerAll()),n}} +if(e.compilerExtensions||(e.compilerExtensions=[]), +e.contains&&e.contains.includes("self"))throw Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.") +;return e.classNameAliases=r(e.classNameAliases||{}),function n(s,o){const a=s +;if(s.isCompiled)return a +;[T,D,F,P].forEach((e=>e(s,o))),e.compilerExtensions.forEach((e=>e(s,o))), +s.__beforeBegin=null,[L,B,H].forEach((e=>e(s,o))),s.isCompiled=!0;let c=null +;return"object"==typeof s.keywords&&s.keywords.$pattern&&(s.keywords=Object.assign({},s.keywords), +c=s.keywords.$pattern, +delete s.keywords.$pattern),c=c||/\w+/,s.keywords&&(s.keywords=$(s.keywords,e.case_insensitive)), +a.keywordPatternRe=t(c,!0), +o&&(s.begin||(s.begin=/\B|\b/),a.beginRe=t(a.begin),s.end||s.endsWithParent||(s.end=/\B|\b/), +s.end&&(a.endRe=t(a.end)), +a.terminatorEnd=g(a.end)||"",s.endsWithParent&&o.terminatorEnd&&(a.terminatorEnd+=(s.end?"|":"")+o.terminatorEnd)), +s.illegal&&(a.illegalRe=t(s.illegal)), +s.contains||(s.contains=[]),s.contains=[].concat(...s.contains.map((e=>(e=>(e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map((t=>r(e,{ +variants:null},t)))),e.cachedVariants?e.cachedVariants:q(e)?r(e,{ +starts:e.starts?r(e.starts):null +}):Object.isFrozen(e)?r(e):e))("self"===e?s:e)))),s.contains.forEach((e=>{n(e,a) +})),s.starts&&n(s.starts,o),a.matcher=(e=>{const t=new i +;return e.contains.forEach((e=>t.addRule(e.begin,{rule:e,type:"begin" +}))),e.terminatorEnd&&t.addRule(e.terminatorEnd,{type:"end" +}),e.illegal&&t.addRule(e.illegal,{type:"illegal"}),t})(a),a}(e)}function q(e){ +return!!e&&(e.endsWithParent||q(e.starts))}class J extends Error{ +constructor(e,t){super(e),this.name="HTMLInjectionError",this.html=t}} +const Y=i,Q=r,ee=Symbol("nomatch");var te=(t=>{ +const i=Object.create(null),r=Object.create(null),s=[];let o=!0 +;const a="Could not find the language '{}', did you forget to load/include a language module?",c={ +disableAutodetect:!0,name:"Plain text",contains:[]};let g={ +ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i, +languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-", +cssSelector:"pre code",languages:null,__emitter:l};function b(e){ +return g.noHighlightRe.test(e)}function m(e,t,n){let i="",r="" +;"object"==typeof t?(i=e, +n=t.ignoreIllegals,r=t.language):(X("10.7.0","highlight(lang, code, ...args) has been deprecated."), +X("10.7.0","Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277"), +r=e,i=t),void 0===n&&(n=!0);const s={code:i,language:r};k("before:highlight",s) +;const o=s.result?s.result:E(s.language,s.code,n) +;return o.code=s.code,k("after:highlight",o),o}function E(e,t,r,s){ +const c=Object.create(null);function l(){if(!N.keywords)return void M.addText(S) +;let e=0;N.keywordPatternRe.lastIndex=0;let t=N.keywordPatternRe.exec(S),n="" +;for(;t;){n+=S.substring(e,t.index) +;const r=y.case_insensitive?t[0].toLowerCase():t[0],s=(i=r,N.keywords[i]);if(s){ +const[e,i]=s +;if(M.addText(n),n="",c[r]=(c[r]||0)+1,c[r]<=7&&(R+=i),e.startsWith("_"))n+=t[0];else{ +const n=y.classNameAliases[e]||e;M.addKeyword(t[0],n)}}else n+=t[0] +;e=N.keywordPatternRe.lastIndex,t=N.keywordPatternRe.exec(S)}var i +;n+=S.substring(e),M.addText(n)}function d(){null!=N.subLanguage?(()=>{ +if(""===S)return;let e=null;if("string"==typeof N.subLanguage){ +if(!i[N.subLanguage])return void M.addText(S) +;e=E(N.subLanguage,S,!0,k[N.subLanguage]),k[N.subLanguage]=e._top +}else e=x(S,N.subLanguage.length?N.subLanguage:null) +;N.relevance>0&&(R+=e.relevance),M.addSublanguage(e._emitter,e.language) +})():l(),S=""}function u(e,t){let n=1;const i=t.length-1;for(;n<=i;){ +if(!e._emit[n]){n++;continue}const i=y.classNameAliases[e[n]]||e[n],r=t[n] +;i?M.addKeyword(r,i):(S=r,l(),S=""),n++}}function h(e,t){ +return e.scope&&"string"==typeof e.scope&&M.openNode(y.classNameAliases[e.scope]||e.scope), +e.beginScope&&(e.beginScope._wrap?(M.addKeyword(S,y.classNameAliases[e.beginScope._wrap]||e.beginScope._wrap), +S=""):e.beginScope._multi&&(u(e.beginScope,t),S="")),N=Object.create(e,{parent:{ +value:N}}),N}function p(e,t,i){let r=((e,t)=>{const n=e&&e.exec(t) +;return n&&0===n.index})(e.endRe,i);if(r){if(e["on:end"]){const i=new n(e) +;e["on:end"](t,i),i.isMatchIgnored&&(r=!1)}if(r){ +for(;e.endsParent&&e.parent;)e=e.parent;return e}} +if(e.endsWithParent)return p(e.parent,t,i)}function f(e){ +return 0===N.matcher.regexIndex?(S+=e[0],1):(I=!0,0)}function b(e){ +const n=e[0],i=t.substring(e.index),r=p(N,e,i);if(!r)return ee;const s=N +;N.endScope&&N.endScope._wrap?(d(), +M.addKeyword(n,N.endScope._wrap)):N.endScope&&N.endScope._multi?(d(), +u(N.endScope,e)):s.skip?S+=n:(s.returnEnd||s.excludeEnd||(S+=n), +d(),s.excludeEnd&&(S=n));do{ +N.scope&&M.closeNode(),N.skip||N.subLanguage||(R+=N.relevance),N=N.parent +}while(N!==r.parent);return r.starts&&h(r.starts,e),s.returnEnd?0:n.length} +let m={};function w(i,s){const a=s&&s[0];if(S+=i,null==a)return d(),0 +;if("begin"===m.type&&"end"===s.type&&m.index===s.index&&""===a){ +if(S+=t.slice(s.index,s.index+1),!o){const t=Error(`0 width match regex (${e})`) +;throw t.languageName=e,t.badRule=m.rule,t}return 1} +if(m=s,"begin"===s.type)return(e=>{ +const t=e[0],i=e.rule,r=new n(i),s=[i.__beforeBegin,i["on:begin"]] +;for(const n of s)if(n&&(n(e,r),r.isMatchIgnored))return f(t) +;return i.skip?S+=t:(i.excludeBegin&&(S+=t), +d(),i.returnBegin||i.excludeBegin||(S=t)),h(i,e),i.returnBegin?0:t.length})(s) +;if("illegal"===s.type&&!r){ +const e=Error('Illegal lexeme "'+a+'" for mode "'+(N.scope||"<unnamed>")+'"') +;throw e.mode=N,e}if("end"===s.type){const e=b(s);if(e!==ee)return e} +if("illegal"===s.type&&""===a)return 1 +;if(A>1e5&&A>3*s.index)throw Error("potential infinite loop, way more iterations than matches") +;return S+=a,a.length}const y=O(e) +;if(!y)throw K(a.replace("{}",e)),Error('Unknown language: "'+e+'"') +;const _=V(y);let v="",N=s||_;const k={},M=new g.__emitter(g);(()=>{const e=[] +;for(let t=N;t!==y;t=t.parent)t.scope&&e.unshift(t.scope) +;e.forEach((e=>M.openNode(e)))})();let S="",R=0,j=0,A=0,I=!1;try{ +for(N.matcher.considerAll();;){ +A++,I?I=!1:N.matcher.considerAll(),N.matcher.lastIndex=j +;const e=N.matcher.exec(t);if(!e)break;const n=w(t.substring(j,e.index),e) +;j=e.index+n} +return w(t.substring(j)),M.closeAllNodes(),M.finalize(),v=M.toHTML(),{ +language:e,value:v,relevance:R,illegal:!1,_emitter:M,_top:N}}catch(n){ +if(n.message&&n.message.includes("Illegal"))return{language:e,value:Y(t), +illegal:!0,relevance:0,_illegalBy:{message:n.message,index:j, +context:t.slice(j-100,j+100),mode:n.mode,resultSoFar:v},_emitter:M};if(o)return{ +language:e,value:Y(t),illegal:!1,relevance:0,errorRaised:n,_emitter:M,_top:N} +;throw n}}function x(e,t){t=t||g.languages||Object.keys(i);const n=(e=>{ +const t={value:Y(e),illegal:!1,relevance:0,_top:c,_emitter:new g.__emitter(g)} +;return t._emitter.addText(e),t})(e),r=t.filter(O).filter(N).map((t=>E(t,e,!1))) +;r.unshift(n);const s=r.sort(((e,t)=>{ +if(e.relevance!==t.relevance)return t.relevance-e.relevance +;if(e.language&&t.language){if(O(e.language).supersetOf===t.language)return 1 +;if(O(t.language).supersetOf===e.language)return-1}return 0})),[o,a]=s,l=o +;return l.secondBest=a,l}function w(e){let t=null;const n=(e=>{ +let t=e.className+" ";t+=e.parentNode?e.parentNode.className:"" +;const n=g.languageDetectRe.exec(t);if(n){const t=O(n[1]) +;return t||(W(a.replace("{}",n[1])), +W("Falling back to no-highlight mode for this block.",e)),t?n[1]:"no-highlight"} +return t.split(/\s+/).find((e=>b(e)||O(e)))})(e);if(b(n))return +;if(k("before:highlightElement",{el:e,language:n +}),e.children.length>0&&(g.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."), +console.warn("https://github.com/highlightjs/highlight.js/wiki/security"), +console.warn("The element with unescaped HTML:"), +console.warn(e)),g.throwUnescapedHTML))throw new J("One of your code blocks includes unescaped HTML.",e.innerHTML) +;t=e;const i=t.textContent,s=n?m(i,{language:n,ignoreIllegals:!0}):x(i) +;e.innerHTML=s.value,((e,t,n)=>{const i=t&&r[t]||n +;e.classList.add("hljs"),e.classList.add("language-"+i) +})(e,n,s.language),e.result={language:s.language,re:s.relevance, +relevance:s.relevance},s.secondBest&&(e.secondBest={ +language:s.secondBest.language,relevance:s.secondBest.relevance +}),k("after:highlightElement",{el:e,result:s,text:i})}let y=!1;function _(){ +"loading"!==document.readyState?document.querySelectorAll(g.cssSelector).forEach(w):y=!0 +}function O(e){return e=(e||"").toLowerCase(),i[e]||i[r[e]]} +function v(e,{languageName:t}){"string"==typeof e&&(e=[e]),e.forEach((e=>{ +r[e.toLowerCase()]=t}))}function N(e){const t=O(e) +;return t&&!t.disableAutodetect}function k(e,t){const n=e;s.forEach((e=>{ +e[n]&&e[n](t)}))} +"undefined"!=typeof window&&window.addEventListener&&window.addEventListener("DOMContentLoaded",(()=>{ +y&&_()}),!1),Object.assign(t,{highlight:m,highlightAuto:x,highlightAll:_, +highlightElement:w, +highlightBlock:e=>(X("10.7.0","highlightBlock will be removed entirely in v12.0"), +X("10.7.0","Please use highlightElement now."),w(e)),configure:e=>{g=Q(g,e)}, +initHighlighting:()=>{ +_(),X("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")}, +initHighlightingOnLoad:()=>{ +_(),X("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.") +},registerLanguage:(e,n)=>{let r=null;try{r=n(t)}catch(t){ +if(K("Language definition for '{}' could not be registered.".replace("{}",e)), +!o)throw t;K(t),r=c} +r.name||(r.name=e),i[e]=r,r.rawDefinition=n.bind(null,t),r.aliases&&v(r.aliases,{ +languageName:e})},unregisterLanguage:e=>{delete i[e] +;for(const t of Object.keys(r))r[t]===e&&delete r[t]}, +listLanguages:()=>Object.keys(i),getLanguage:O,registerAliases:v, +autoDetection:N,inherit:Q,addPlugin:e=>{(e=>{ +e["before:highlightBlock"]&&!e["before:highlightElement"]&&(e["before:highlightElement"]=t=>{ +e["before:highlightBlock"](Object.assign({block:t.el},t)) +}),e["after:highlightBlock"]&&!e["after:highlightElement"]&&(e["after:highlightElement"]=t=>{ +e["after:highlightBlock"](Object.assign({block:t.el},t))})})(e),s.push(e)} +}),t.debugMode=()=>{o=!1},t.safeMode=()=>{o=!0 +},t.versionString="11.7.0",t.regex={concat:p,lookahead:d,either:f,optional:h, +anyNumberOfTimes:u};for(const t in A)"object"==typeof A[t]&&e.exports(A[t]) +;return Object.assign(t,A),t})({});return te}() +;"object"==typeof exports&&"undefined"!=typeof module&&(module.exports=hljs);/*! `dns` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var d=(()=>{"use strict";return d=>({name:"DNS Zone", +aliases:["bind","zone"], +keywords:["IN","A","AAAA","AFSDB","APL","CAA","CDNSKEY","CDS","CERT","CNAME","DHCID","DLV","DNAME","DNSKEY","DS","HIP","IPSECKEY","KEY","KX","LOC","MX","NAPTR","NS","NSEC","NSEC3","NSEC3PARAM","PTR","RRSIG","RP","SIG","SOA","SRV","SSHFP","TA","TKEY","TLSA","TSIG","TXT"], +contains:[d.COMMENT(";","$",{relevance:0}),{className:"meta", +begin:/^\$(TTL|GENERATE|INCLUDE|ORIGIN)\b/},{className:"number", +begin:"((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:)))\\b" +},{className:"number", +begin:"((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]).){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\b" +},d.inherit(d.NUMBER_MODE,{begin:/\b\d+[dhwm]?/})]})})() +;hljs.registerLanguage("dns",d)})();/*! `ceylon` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const a=["assembly","module","package","import","alias","class","interface","object","given","value","assign","void","function","new","of","extends","satisfies","abstracts","in","out","return","break","continue","throw","assert","dynamic","if","else","switch","case","for","while","try","catch","finally","then","let","this","outer","super","is","exists","nonempty"],s={ +className:"subst",excludeBegin:!0,excludeEnd:!0,begin:/``/,end:/``/,keywords:a, +relevance:10},n=[{className:"string",begin:'"""',end:'"""',relevance:10},{ +className:"string",begin:'"',end:'"',contains:[s]},{className:"string", +begin:"'",end:"'"},{className:"number", +begin:"#[0-9a-fA-F_]+|\\$[01_]+|[0-9_]+(?:\\.[0-9_](?:[eE][+-]?\\d+)?)?[kMGTPmunpf]?", +relevance:0}];return s.contains=n,{name:"Ceylon",keywords:{ +keyword:a.concat(["shared","abstract","formal","default","actual","variable","late","native","deprecated","final","sealed","annotation","suppressWarnings","small"]), +meta:["doc","by","license","see","throws","tagged"]}, +illegal:"\\$[^01]|#[^0-9a-fA-F]", +contains:[e.C_LINE_COMMENT_MODE,e.COMMENT("/\\*","\\*/",{contains:["self"]}),{ +className:"meta",begin:'@[a-z]\\w*(?::"[^"]*")?'}].concat(n)}}})() +;hljs.registerLanguage("ceylon",e)})();/*! `ruleslanguage` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var T=(()=>{"use strict";return T=>({name:"Oracle Rules Language", +keywords:{ +keyword:"BILL_PERIOD BILL_START BILL_STOP RS_EFFECTIVE_START RS_EFFECTIVE_STOP RS_JURIS_CODE RS_OPCO_CODE INTDADDATTRIBUTE|5 INTDADDVMSG|5 INTDBLOCKOP|5 INTDBLOCKOPNA|5 INTDCLOSE|5 INTDCOUNT|5 INTDCOUNTSTATUSCODE|5 INTDCREATEMASK|5 INTDCREATEDAYMASK|5 INTDCREATEFACTORMASK|5 INTDCREATEHANDLE|5 INTDCREATEOVERRIDEDAYMASK|5 INTDCREATEOVERRIDEMASK|5 INTDCREATESTATUSCODEMASK|5 INTDCREATETOUPERIOD|5 INTDDELETE|5 INTDDIPTEST|5 INTDEXPORT|5 INTDGETERRORCODE|5 INTDGETERRORMESSAGE|5 INTDISEQUAL|5 INTDJOIN|5 INTDLOAD|5 INTDLOADACTUALCUT|5 INTDLOADDATES|5 INTDLOADHIST|5 INTDLOADLIST|5 INTDLOADLISTDATES|5 INTDLOADLISTENERGY|5 INTDLOADLISTHIST|5 INTDLOADRELATEDCHANNEL|5 INTDLOADSP|5 INTDLOADSTAGING|5 INTDLOADUOM|5 INTDLOADUOMDATES|5 INTDLOADUOMHIST|5 INTDLOADVERSION|5 INTDOPEN|5 INTDREADFIRST|5 INTDREADNEXT|5 INTDRECCOUNT|5 INTDRELEASE|5 INTDREPLACE|5 INTDROLLAVG|5 INTDROLLPEAK|5 INTDSCALAROP|5 INTDSCALE|5 INTDSETATTRIBUTE|5 INTDSETDSTPARTICIPANT|5 INTDSETSTRING|5 INTDSETVALUE|5 INTDSETVALUESTATUS|5 INTDSHIFTSTARTTIME|5 INTDSMOOTH|5 INTDSORT|5 INTDSPIKETEST|5 INTDSUBSET|5 INTDTOU|5 INTDTOURELEASE|5 INTDTOUVALUE|5 INTDUPDATESTATS|5 INTDVALUE|5 STDEV INTDDELETEEX|5 INTDLOADEXACTUAL|5 INTDLOADEXCUT|5 INTDLOADEXDATES|5 INTDLOADEX|5 INTDLOADEXRELATEDCHANNEL|5 INTDSAVEEX|5 MVLOAD|5 MVLOADACCT|5 MVLOADACCTDATES|5 MVLOADACCTHIST|5 MVLOADDATES|5 MVLOADHIST|5 MVLOADLIST|5 MVLOADLISTDATES|5 MVLOADLISTHIST|5 IF FOR NEXT DONE SELECT END CALL ABORT CLEAR CHANNEL FACTOR LIST NUMBER OVERRIDE SET WEEK DISTRIBUTIONNODE ELSE WHEN THEN OTHERWISE IENUM CSV INCLUDE LEAVE RIDER SAVE DELETE NOVALUE SECTION WARN SAVE_UPDATE DETERMINANT LABEL REPORT REVENUE EACH IN FROM TOTAL CHARGE BLOCK AND OR CSV_FILE RATE_CODE AUXILIARY_DEMAND UIDACCOUNT RS BILL_PERIOD_SELECT HOURS_PER_MONTH INTD_ERROR_STOP SEASON_SCHEDULE_NAME ACCOUNTFACTOR ARRAYUPPERBOUND CALLSTOREDPROC GETADOCONNECTION GETCONNECT GETDATASOURCE GETQUALIFIER GETUSERID HASVALUE LISTCOUNT LISTOP LISTUPDATE LISTVALUE PRORATEFACTOR RSPRORATE SETBINPATH SETDBMONITOR WQ_OPEN BILLINGHOURS DATE DATEFROMFLOAT DATETIMEFROMSTRING DATETIMETOSTRING DATETOFLOAT DAY DAYDIFF DAYNAME DBDATETIME HOUR MINUTE MONTH MONTHDIFF MONTHHOURS MONTHNAME ROUNDDATE SAMEWEEKDAYLASTYEAR SECOND WEEKDAY WEEKDIFF YEAR YEARDAY YEARSTR COMPSUM HISTCOUNT HISTMAX HISTMIN HISTMINNZ HISTVALUE MAXNRANGE MAXRANGE MINRANGE COMPIKVA COMPKVA COMPKVARFROMKQKW COMPLF IDATTR FLAG LF2KW LF2KWH MAXKW POWERFACTOR READING2USAGE AVGSEASON MAXSEASON MONTHLYMERGE SEASONVALUE SUMSEASON ACCTREADDATES ACCTTABLELOAD CONFIGADD CONFIGGET CREATEOBJECT CREATEREPORT EMAILCLIENT EXPBLKMDMUSAGE EXPMDMUSAGE EXPORT_USAGE FACTORINEFFECT GETUSERSPECIFIEDSTOP INEFFECT ISHOLIDAY RUNRATE SAVE_PROFILE SETREPORTTITLE USEREXIT WATFORRUNRATE TO TABLE ACOS ASIN ATAN ATAN2 BITAND CEIL COS COSECANT COSH COTANGENT DIVQUOT DIVREM EXP FABS FLOOR FMOD FREPM FREXPN LOG LOG10 MAX MAXN MIN MINNZ MODF POW ROUND ROUND2VALUE ROUNDINT SECANT SIN SINH SQROOT TAN TANH FLOAT2STRING FLOAT2STRINGNC INSTR LEFT LEN LTRIM MID RIGHT RTRIM STRING STRINGNC TOLOWER TOUPPER TRIM NUMDAYS READ_DATE STAGING", +built_in:"IDENTIFIER OPTIONS XML_ELEMENT XML_OP XML_ELEMENT_OF DOMDOCCREATE DOMDOCLOADFILE DOMDOCLOADXML DOMDOCSAVEFILE DOMDOCGETROOT DOMDOCADDPI DOMNODEGETNAME DOMNODEGETTYPE DOMNODEGETVALUE DOMNODEGETCHILDCT DOMNODEGETFIRSTCHILD DOMNODEGETSIBLING DOMNODECREATECHILDELEMENT DOMNODESETATTRIBUTE DOMNODEGETCHILDELEMENTCT DOMNODEGETFIRSTCHILDELEMENT DOMNODEGETSIBLINGELEMENT DOMNODEGETATTRIBUTECT DOMNODEGETATTRIBUTEI DOMNODEGETATTRIBUTEBYNAME DOMNODEGETBYNAME" +}, +contains:[T.C_LINE_COMMENT_MODE,T.C_BLOCK_COMMENT_MODE,T.APOS_STRING_MODE,T.QUOTE_STRING_MODE,T.C_NUMBER_MODE,{ +className:"literal",variants:[{begin:"#\\s+",relevance:0},{begin:"#[a-zA-Z .]+" +}]}]})})();hljs.registerLanguage("ruleslanguage",T)})();/*! `angelscript` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n={className:"built_in", +begin:"\\b(void|bool|int8|int16|int32|int64|int|uint8|uint16|uint32|uint64|uint|string|ref|array|double|float|auto|dictionary)" +},a={className:"symbol",begin:"[a-zA-Z0-9_]+@"},i={className:"keyword", +begin:"<",end:">",contains:[n,a]};return n.contains=[i],a.contains=[i],{ +name:"AngelScript",aliases:["asc"], +keywords:["for","in|0","break","continue","while","do|0","return","if","else","case","switch","namespace","is","cast","or","and","xor","not","get|0","in","inout|10","out","override","set|0","private","public","const","default|0","final","shared","external","mixin|10","enum","typedef","funcdef","this","super","import","from","interface","abstract|0","try","catch","protected","explicit","property"], +illegal:"(^using\\s+[A-Za-z0-9_\\.]+;$|\\bfunction\\s*[^\\(])",contains:[{ +className:"string",begin:"'",end:"'",illegal:"\\n", +contains:[e.BACKSLASH_ESCAPE],relevance:0},{className:"string",begin:'"""', +end:'"""'},{className:"string",begin:'"',end:'"',illegal:"\\n", +contains:[e.BACKSLASH_ESCAPE],relevance:0 +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"string", +begin:"^\\s*\\[",end:"\\]"},{beginKeywords:"interface namespace",end:/\{/, +illegal:"[;.\\-]",contains:[{className:"symbol",begin:"[a-zA-Z0-9_]+"}]},{ +beginKeywords:"class",end:/\{/,illegal:"[;.\\-]",contains:[{className:"symbol", +begin:"[a-zA-Z0-9_]+",contains:[{begin:"[:,]\\s*",contains:[{className:"symbol", +begin:"[a-zA-Z0-9_]+"}]}]}]},n,a,{className:"literal", +begin:"\\b(null|true|false)"},{className:"number",relevance:0, +begin:"(-?)(\\b0[xXbBoOdD][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?f?|\\.\\d+f?)([eE][-+]?\\d+f?)?)" +}]}}})();hljs.registerLanguage("angelscript",e)})();/*! `maxima` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Maxima",keywords:{ +$pattern:"[A-Za-z_%][0-9A-Za-z_%]*", +keyword:"if then else elseif for thru do while unless step in and or not", +literal:"true false unknown inf minf ind und %e %i %pi %phi %gamma", +built_in:" abasep abs absint absolute_real_time acos acosh acot acoth acsc acsch activate addcol add_edge add_edges addmatrices addrow add_vertex add_vertices adjacency_matrix adjoin adjoint af agd airy airy_ai airy_bi airy_dai airy_dbi algsys alg_type alias allroots alphacharp alphanumericp amortization %and annuity_fv annuity_pv antid antidiff AntiDifference append appendfile apply apply1 apply2 applyb1 apropos args arit_amortization arithmetic arithsum array arrayapply arrayinfo arraymake arraysetapply ascii asec asech asin asinh askinteger asksign assoc assoc_legendre_p assoc_legendre_q assume assume_external_byte_order asympa at atan atan2 atanh atensimp atom atvalue augcoefmatrix augmented_lagrangian_method av average_degree backtrace bars barsplot barsplot_description base64 base64_decode bashindices batch batchload bc2 bdvac belln benefit_cost bern bernpoly bernstein_approx bernstein_expand bernstein_poly bessel bessel_i bessel_j bessel_k bessel_simplify bessel_y beta beta_incomplete beta_incomplete_generalized beta_incomplete_regularized bezout bfallroots bffac bf_find_root bf_fmin_cobyla bfhzeta bfloat bfloatp bfpsi bfpsi0 bfzeta biconnected_components bimetric binomial bipartition block blockmatrixp bode_gain bode_phase bothcoef box boxplot boxplot_description break bug_report build_info|10 buildq build_sample burn cabs canform canten cardinality carg cartan cartesian_product catch cauchy_matrix cbffac cdf_bernoulli cdf_beta cdf_binomial cdf_cauchy cdf_chi2 cdf_continuous_uniform cdf_discrete_uniform cdf_exp cdf_f cdf_gamma cdf_general_finite_discrete cdf_geometric cdf_gumbel cdf_hypergeometric cdf_laplace cdf_logistic cdf_lognormal cdf_negative_binomial cdf_noncentral_chi2 cdf_noncentral_student_t cdf_normal cdf_pareto cdf_poisson cdf_rank_sum cdf_rayleigh cdf_signed_rank cdf_student_t cdf_weibull cdisplay ceiling central_moment cequal cequalignore cf cfdisrep cfexpand cgeodesic cgreaterp cgreaterpignore changename changevar chaosgame charat charfun charfun2 charlist charp charpoly chdir chebyshev_t chebyshev_u checkdiv check_overlaps chinese cholesky christof chromatic_index chromatic_number cint circulant_graph clear_edge_weight clear_rules clear_vertex_label clebsch_gordan clebsch_graph clessp clesspignore close closefile cmetric coeff coefmatrix cograd col collapse collectterms columnop columnspace columnswap columnvector combination combine comp2pui compare compfile compile compile_file complement_graph complete_bipartite_graph complete_graph complex_number_p components compose_functions concan concat conjugate conmetderiv connected_components connect_vertices cons constant constantp constituent constvalue cont2part content continuous_freq contortion contour_plot contract contract_edge contragrad contrib_ode convert coord copy copy_file copy_graph copylist copymatrix cor cos cosh cot coth cov cov1 covdiff covect covers crc24sum create_graph create_list csc csch csetup cspline ctaylor ct_coordsys ctransform ctranspose cube_graph cuboctahedron_graph cunlisp cv cycle_digraph cycle_graph cylindrical days360 dblint deactivate declare declare_constvalue declare_dimensions declare_fundamental_dimensions declare_fundamental_units declare_qty declare_translated declare_unit_conversion declare_units declare_weights decsym defcon define define_alt_display define_variable defint defmatch defrule defstruct deftaylor degree_sequence del delete deleten delta demo demoivre denom depends derivdegree derivlist describe desolve determinant dfloat dgauss_a dgauss_b dgeev dgemm dgeqrf dgesv dgesvd diag diagmatrix diag_matrix diagmatrixp diameter diff digitcharp dimacs_export dimacs_import dimension dimensionless dimensions dimensions_as_list direct directory discrete_freq disjoin disjointp disolate disp dispcon dispform dispfun dispJordan display disprule dispterms distrib divide divisors divsum dkummer_m dkummer_u dlange dodecahedron_graph dotproduct dotsimp dpart draw draw2d draw3d drawdf draw_file draw_graph dscalar echelon edge_coloring edge_connectivity edges eigens_by_jacobi eigenvalues eigenvectors eighth einstein eivals eivects elapsed_real_time elapsed_run_time ele2comp ele2polynome ele2pui elem elementp elevation_grid elim elim_allbut eliminate eliminate_using ellipse elliptic_e elliptic_ec elliptic_eu elliptic_f elliptic_kc elliptic_pi ematrix empty_graph emptyp endcons entermatrix entertensor entier equal equalp equiv_classes erf erfc erf_generalized erfi errcatch error errormsg errors euler ev eval_string evenp every evolution evolution2d evundiff example exp expand expandwrt expandwrt_factored expint expintegral_chi expintegral_ci expintegral_e expintegral_e1 expintegral_ei expintegral_e_simplify expintegral_li expintegral_shi expintegral_si explicit explose exponentialize express expt exsec extdiff extract_linear_equations extremal_subset ezgcd %f f90 facsum factcomb factor factorfacsum factorial factorout factorsum facts fast_central_elements fast_linsolve fasttimes featurep fernfale fft fib fibtophi fifth filename_merge file_search file_type fillarray findde find_root find_root_abs find_root_error find_root_rel first fix flatten flength float floatnump floor flower_snark flush flush1deriv flushd flushnd flush_output fmin_cobyla forget fortran fourcos fourexpand fourier fourier_elim fourint fourintcos fourintsin foursimp foursin fourth fposition frame_bracket freeof freshline fresnel_c fresnel_s from_adjacency_matrix frucht_graph full_listify fullmap fullmapl fullratsimp fullratsubst fullsetify funcsolve fundamental_dimensions fundamental_units fundef funmake funp fv g0 g1 gamma gamma_greek gamma_incomplete gamma_incomplete_generalized gamma_incomplete_regularized gauss gauss_a gauss_b gaussprob gcd gcdex gcdivide gcfac gcfactor gd generalized_lambert_w genfact gen_laguerre genmatrix gensym geo_amortization geo_annuity_fv geo_annuity_pv geomap geometric geometric_mean geosum get getcurrentdirectory get_edge_weight getenv get_lu_factors get_output_stream_string get_pixel get_plot_option get_tex_environment get_tex_environment_default get_vertex_label gfactor gfactorsum ggf girth global_variances gn gnuplot_close gnuplot_replot gnuplot_reset gnuplot_restart gnuplot_start go Gosper GosperSum gr2d gr3d gradef gramschmidt graph6_decode graph6_encode graph6_export graph6_import graph_center graph_charpoly graph_eigenvalues graph_flow graph_order graph_periphery graph_product graph_size graph_union great_rhombicosidodecahedron_graph great_rhombicuboctahedron_graph grid_graph grind grobner_basis grotzch_graph hamilton_cycle hamilton_path hankel hankel_1 hankel_2 harmonic harmonic_mean hav heawood_graph hermite hessian hgfred hilbertmap hilbert_matrix hipow histogram histogram_description hodge horner hypergeometric i0 i1 %ibes ic1 ic2 ic_convert ichr1 ichr2 icosahedron_graph icosidodecahedron_graph icurvature ident identfor identity idiff idim idummy ieqn %if ifactors iframes ifs igcdex igeodesic_coords ilt image imagpart imetric implicit implicit_derivative implicit_plot indexed_tensor indices induced_subgraph inferencep inference_result infix info_display init_atensor init_ctensor in_neighbors innerproduct inpart inprod inrt integerp integer_partitions integrate intersect intersection intervalp intopois intosum invariant1 invariant2 inverse_fft inverse_jacobi_cd inverse_jacobi_cn inverse_jacobi_cs inverse_jacobi_dc inverse_jacobi_dn inverse_jacobi_ds inverse_jacobi_nc inverse_jacobi_nd inverse_jacobi_ns inverse_jacobi_sc inverse_jacobi_sd inverse_jacobi_sn invert invert_by_adjoint invert_by_lu inv_mod irr is is_biconnected is_bipartite is_connected is_digraph is_edge_in_graph is_graph is_graph_or_digraph ishow is_isomorphic isolate isomorphism is_planar isqrt isreal_p is_sconnected is_tree is_vertex_in_graph items_inference %j j0 j1 jacobi jacobian jacobi_cd jacobi_cn jacobi_cs jacobi_dc jacobi_dn jacobi_ds jacobi_nc jacobi_nd jacobi_ns jacobi_p jacobi_sc jacobi_sd jacobi_sn JF jn join jordan julia julia_set julia_sin %k kdels kdelta kill killcontext kostka kron_delta kronecker_product kummer_m kummer_u kurtosis kurtosis_bernoulli kurtosis_beta kurtosis_binomial kurtosis_chi2 kurtosis_continuous_uniform kurtosis_discrete_uniform kurtosis_exp kurtosis_f kurtosis_gamma kurtosis_general_finite_discrete kurtosis_geometric kurtosis_gumbel kurtosis_hypergeometric kurtosis_laplace kurtosis_logistic kurtosis_lognormal kurtosis_negative_binomial kurtosis_noncentral_chi2 kurtosis_noncentral_student_t kurtosis_normal kurtosis_pareto kurtosis_poisson kurtosis_rayleigh kurtosis_student_t kurtosis_weibull label labels lagrange laguerre lambda lambert_w laplace laplacian_matrix last lbfgs lc2kdt lcharp lc_l lcm lc_u ldefint ldisp ldisplay legendre_p legendre_q leinstein length let letrules letsimp levi_civita lfreeof lgtreillis lhs li liediff limit Lindstedt linear linearinterpol linear_program linear_regression line_graph linsolve listarray list_correlations listify list_matrix_entries list_nc_monomials listoftens listofvars listp lmax lmin load loadfile local locate_matrix_entry log logcontract log_gamma lopow lorentz_gauge lowercasep lpart lratsubst lreduce lriemann lsquares_estimates lsquares_estimates_approximate lsquares_estimates_exact lsquares_mse lsquares_residual_mse lsquares_residuals lsum ltreillis lu_backsub lucas lu_factor %m macroexpand macroexpand1 make_array makebox makefact makegamma make_graph make_level_picture makelist makeOrders make_poly_continent make_poly_country make_polygon make_random_state make_rgb_picture makeset make_string_input_stream make_string_output_stream make_transform mandelbrot mandelbrot_set map mapatom maplist matchdeclare matchfix mat_cond mat_fullunblocker mat_function mathml_display mat_norm matrix matrixmap matrixp matrix_size mattrace mat_trace mat_unblocker max max_clique max_degree max_flow maximize_lp max_independent_set max_matching maybe md5sum mean mean_bernoulli mean_beta mean_binomial mean_chi2 mean_continuous_uniform mean_deviation mean_discrete_uniform mean_exp mean_f mean_gamma mean_general_finite_discrete mean_geometric mean_gumbel mean_hypergeometric mean_laplace mean_logistic mean_lognormal mean_negative_binomial mean_noncentral_chi2 mean_noncentral_student_t mean_normal mean_pareto mean_poisson mean_rayleigh mean_student_t mean_weibull median median_deviation member mesh metricexpandall mgf1_sha1 min min_degree min_edge_cut minfactorial minimalPoly minimize_lp minimum_spanning_tree minor minpack_lsquares minpack_solve min_vertex_cover min_vertex_cut mkdir mnewton mod mode_declare mode_identity ModeMatrix moebius mon2schur mono monomial_dimensions multibernstein_poly multi_display_for_texinfo multi_elem multinomial multinomial_coeff multi_orbit multiplot_mode multi_pui multsym multthru mycielski_graph nary natural_unit nc_degree ncexpt ncharpoly negative_picture neighbors new newcontext newdet new_graph newline newton new_variable next_prime nicedummies niceindices ninth nofix nonarray noncentral_moment nonmetricity nonnegintegerp nonscalarp nonzeroandfreeof notequal nounify nptetrad npv nroots nterms ntermst nthroot nullity nullspace num numbered_boundaries numberp number_to_octets num_distinct_partitions numerval numfactor num_partitions nusum nzeta nzetai nzetar octets_to_number octets_to_oid odd_girth oddp ode2 ode_check odelin oid_to_octets op opena opena_binary openr openr_binary openw openw_binary operatorp opsubst optimize %or orbit orbits ordergreat ordergreatp orderless orderlessp orthogonal_complement orthopoly_recur orthopoly_weight outermap out_neighbors outofpois pade parabolic_cylinder_d parametric parametric_surface parg parGosper parse_string parse_timedate part part2cont partfrac partition partition_set partpol path_digraph path_graph pathname_directory pathname_name pathname_type pdf_bernoulli pdf_beta pdf_binomial pdf_cauchy pdf_chi2 pdf_continuous_uniform pdf_discrete_uniform pdf_exp pdf_f pdf_gamma pdf_general_finite_discrete pdf_geometric pdf_gumbel pdf_hypergeometric pdf_laplace pdf_logistic pdf_lognormal pdf_negative_binomial pdf_noncentral_chi2 pdf_noncentral_student_t pdf_normal pdf_pareto pdf_poisson pdf_rank_sum pdf_rayleigh pdf_signed_rank pdf_student_t pdf_weibull pearson_skewness permanent permut permutation permutations petersen_graph petrov pickapart picture_equalp picturep piechart piechart_description planar_embedding playback plog plot2d plot3d plotdf ploteq plsquares pochhammer points poisdiff poisexpt poisint poismap poisplus poissimp poissubst poistimes poistrim polar polarform polartorect polar_to_xy poly_add poly_buchberger poly_buchberger_criterion poly_colon_ideal poly_content polydecomp poly_depends_p poly_elimination_ideal poly_exact_divide poly_expand poly_expt poly_gcd polygon poly_grobner poly_grobner_equal poly_grobner_member poly_grobner_subsetp poly_ideal_intersection poly_ideal_polysaturation poly_ideal_polysaturation1 poly_ideal_saturation poly_ideal_saturation1 poly_lcm poly_minimization polymod poly_multiply polynome2ele polynomialp poly_normal_form poly_normalize poly_normalize_list poly_polysaturation_extension poly_primitive_part poly_pseudo_divide poly_reduced_grobner poly_reduction poly_saturation_extension poly_s_polynomial poly_subtract polytocompanion pop postfix potential power_mod powerseries powerset prefix prev_prime primep primes principal_components print printf printfile print_graph printpois printprops prodrac product properties propvars psi psubst ptriangularize pui pui2comp pui2ele pui2polynome pui_direct puireduc push put pv qput qrange qty quad_control quad_qag quad_qagi quad_qagp quad_qags quad_qawc quad_qawf quad_qawo quad_qaws quadrilateral quantile quantile_bernoulli quantile_beta quantile_binomial quantile_cauchy quantile_chi2 quantile_continuous_uniform quantile_discrete_uniform quantile_exp quantile_f quantile_gamma quantile_general_finite_discrete quantile_geometric quantile_gumbel quantile_hypergeometric quantile_laplace quantile_logistic quantile_lognormal quantile_negative_binomial quantile_noncentral_chi2 quantile_noncentral_student_t quantile_normal quantile_pareto quantile_poisson quantile_rayleigh quantile_student_t quantile_weibull quartile_skewness quit qunit quotient racah_v racah_w radcan radius random random_bernoulli random_beta random_binomial random_bipartite_graph random_cauchy random_chi2 random_continuous_uniform random_digraph random_discrete_uniform random_exp random_f random_gamma random_general_finite_discrete random_geometric random_graph random_graph1 random_gumbel random_hypergeometric random_laplace random_logistic random_lognormal random_negative_binomial random_network random_noncentral_chi2 random_noncentral_student_t random_normal random_pareto random_permutation random_poisson random_rayleigh random_regular_graph random_student_t random_tournament random_tree random_weibull range rank rat ratcoef ratdenom ratdiff ratdisrep ratexpand ratinterpol rational rationalize ratnumer ratnump ratp ratsimp ratsubst ratvars ratweight read read_array read_binary_array read_binary_list read_binary_matrix readbyte readchar read_hashed_array readline read_list read_matrix read_nested_list readonly read_xpm real_imagpart_to_conjugate realpart realroots rearray rectangle rectform rectform_log_if_constant recttopolar rediff reduce_consts reduce_order region region_boundaries region_boundaries_plus rem remainder remarray rembox remcomps remcon remcoord remfun remfunction remlet remove remove_constvalue remove_dimensions remove_edge remove_fundamental_dimensions remove_fundamental_units remove_plot_option remove_vertex rempart remrule remsym remvalue rename rename_file reset reset_displays residue resolvante resolvante_alternee1 resolvante_bipartite resolvante_diedrale resolvante_klein resolvante_klein3 resolvante_produit_sym resolvante_unitaire resolvante_vierer rest resultant return reveal reverse revert revert2 rgb2level rhs ricci riemann rinvariant risch rk rmdir rncombine romberg room rootscontract round row rowop rowswap rreduce run_testsuite %s save saving scalarp scaled_bessel_i scaled_bessel_i0 scaled_bessel_i1 scalefactors scanmap scatterplot scatterplot_description scene schur2comp sconcat scopy scsimp scurvature sdowncase sec sech second sequal sequalignore set_alt_display setdifference set_draw_defaults set_edge_weight setelmx setequalp setify setp set_partitions set_plot_option set_prompt set_random_state set_tex_environment set_tex_environment_default setunits setup_autoload set_up_dot_simplifications set_vertex_label seventh sexplode sf sha1sum sha256sum shortest_path shortest_weighted_path show showcomps showratvars sierpinskiale sierpinskimap sign signum similaritytransform simp_inequality simplify_sum simplode simpmetderiv simtran sin sinh sinsert sinvertcase sixth skewness skewness_bernoulli skewness_beta skewness_binomial skewness_chi2 skewness_continuous_uniform skewness_discrete_uniform skewness_exp skewness_f skewness_gamma skewness_general_finite_discrete skewness_geometric skewness_gumbel skewness_hypergeometric skewness_laplace skewness_logistic skewness_lognormal skewness_negative_binomial skewness_noncentral_chi2 skewness_noncentral_student_t skewness_normal skewness_pareto skewness_poisson skewness_rayleigh skewness_student_t skewness_weibull slength smake small_rhombicosidodecahedron_graph small_rhombicuboctahedron_graph smax smin smismatch snowmap snub_cube_graph snub_dodecahedron_graph solve solve_rec solve_rec_rat some somrac sort sparse6_decode sparse6_encode sparse6_export sparse6_import specint spherical spherical_bessel_j spherical_bessel_y spherical_hankel1 spherical_hankel2 spherical_harmonic spherical_to_xyz splice split sposition sprint sqfr sqrt sqrtdenest sremove sremovefirst sreverse ssearch ssort sstatus ssubst ssubstfirst staircase standardize standardize_inverse_trig starplot starplot_description status std std1 std_bernoulli std_beta std_binomial std_chi2 std_continuous_uniform std_discrete_uniform std_exp std_f std_gamma std_general_finite_discrete std_geometric std_gumbel std_hypergeometric std_laplace std_logistic std_lognormal std_negative_binomial std_noncentral_chi2 std_noncentral_student_t std_normal std_pareto std_poisson std_rayleigh std_student_t std_weibull stemplot stirling stirling1 stirling2 strim striml strimr string stringout stringp strong_components struve_h struve_l sublis sublist sublist_indices submatrix subsample subset subsetp subst substinpart subst_parallel substpart substring subvar subvarp sum sumcontract summand_to_rec supcase supcontext symbolp symmdifference symmetricp system take_channel take_inference tan tanh taylor taylorinfo taylorp taylor_simplifier taytorat tcl_output tcontract tellrat tellsimp tellsimpafter tentex tenth test_mean test_means_difference test_normality test_proportion test_proportions_difference test_rank_sum test_sign test_signed_rank test_variance test_variance_ratio tex tex1 tex_display texput %th third throw time timedate timer timer_info tldefint tlimit todd_coxeter toeplitz tokens to_lisp topological_sort to_poly to_poly_solve totaldisrep totalfourier totient tpartpol trace tracematrix trace_options transform_sample translate translate_file transpose treefale tree_reduce treillis treinat triangle triangularize trigexpand trigrat trigreduce trigsimp trunc truncate truncated_cube_graph truncated_dodecahedron_graph truncated_icosahedron_graph truncated_tetrahedron_graph tr_warnings_get tube tutte_graph ueivects uforget ultraspherical underlying_graph undiff union unique uniteigenvectors unitp units unit_step unitvector unorder unsum untellrat untimer untrace uppercasep uricci uriemann uvect vandermonde_matrix var var1 var_bernoulli var_beta var_binomial var_chi2 var_continuous_uniform var_discrete_uniform var_exp var_f var_gamma var_general_finite_discrete var_geometric var_gumbel var_hypergeometric var_laplace var_logistic var_lognormal var_negative_binomial var_noncentral_chi2 var_noncentral_student_t var_normal var_pareto var_poisson var_rayleigh var_student_t var_weibull vector vectorpotential vectorsimp verbify vers vertex_coloring vertex_connectivity vertex_degree vertex_distance vertex_eccentricity vertex_in_degree vertex_out_degree vertices vertices_to_cycle vertices_to_path %w weyl wheel_graph wiener_index wigner_3j wigner_6j wigner_9j with_stdout write_binary_data writebyte write_data writefile wronskian xreduce xthru %y Zeilberger zeroequiv zerofor zeromatrix zeromatrixp zeta zgeev zheev zlange zn_add_table zn_carmichael_lambda zn_characteristic_factors zn_determinant zn_factor_generators zn_invert_by_lu zn_log zn_mult_table absboxchar activecontexts adapt_depth additive adim aform algebraic algepsilon algexact aliases allbut all_dotsimp_denoms allocation allsym alphabetic animation antisymmetric arrays askexp assume_pos assume_pos_pred assumescalar asymbol atomgrad atrig1 axes axis_3d axis_bottom axis_left axis_right axis_top azimuth background background_color backsubst berlefact bernstein_explicit besselexpand beta_args_sum_to_integer beta_expand bftorat bftrunc bindtest border boundaries_array box boxchar breakup %c capping cauchysum cbrange cbtics center cflength cframe_flag cnonmet_flag color color_bar color_bar_tics colorbox columns commutative complex cone context contexts contour contour_levels cosnpiflag ctaypov ctaypt ctayswitch ctayvar ct_coords ctorsion_flag ctrgsimp cube current_let_rule_package cylinder data_file_name debugmode decreasing default_let_rule_package delay dependencies derivabbrev derivsubst detout diagmetric diff dim dimensions dispflag display2d|10 display_format_internal distribute_over doallmxops domain domxexpt domxmxops domxnctimes dontfactor doscmxops doscmxplus dot0nscsimp dot0simp dot1simp dotassoc dotconstrules dotdistrib dotexptsimp dotident dotscrules draw_graph_program draw_realpart edge_color edge_coloring edge_partition edge_type edge_width %edispflag elevation %emode endphi endtheta engineering_format_floats enhanced3d %enumer epsilon_lp erfflag erf_representation errormsg error_size error_syms error_type %e_to_numlog eval even evenfun evflag evfun ev_point expandwrt_denom expintexpand expintrep expon expop exptdispflag exptisolate exptsubst facexpand facsum_combine factlim factorflag factorial_expand factors_only fb feature features file_name file_output_append file_search_demo file_search_lisp file_search_maxima|10 file_search_tests file_search_usage file_type_lisp file_type_maxima|10 fill_color fill_density filled_func fixed_vertices flipflag float2bf font font_size fortindent fortspaces fpprec fpprintprec functions gamma_expand gammalim gdet genindex gensumnum GGFCFMAX GGFINFINITY globalsolve gnuplot_command gnuplot_curve_styles gnuplot_curve_titles gnuplot_default_term_command gnuplot_dumb_term_command gnuplot_file_args gnuplot_file_name gnuplot_out_file gnuplot_pdf_term_command gnuplot_pm3d gnuplot_png_term_command gnuplot_postamble gnuplot_preamble gnuplot_ps_term_command gnuplot_svg_term_command gnuplot_term gnuplot_view_args Gosper_in_Zeilberger gradefs grid grid2d grind halfangles head_angle head_both head_length head_type height hypergeometric_representation %iargs ibase icc1 icc2 icounter idummyx ieqnprint ifb ifc1 ifc2 ifg ifgi ifr iframe_bracket_form ifri igeowedge_flag ikt1 ikt2 imaginary inchar increasing infeval infinity inflag infolists inm inmc1 inmc2 intanalysis integer integervalued integrate_use_rootsof integration_constant integration_constant_counter interpolate_color intfaclim ip_grid ip_grid_in irrational isolate_wrt_times iterations itr julia_parameter %k1 %k2 keepfloat key key_pos kinvariant kt label label_alignment label_orientation labels lassociative lbfgs_ncorrections lbfgs_nfeval_max leftjust legend letrat let_rule_packages lfg lg lhospitallim limsubst linear linear_solver linechar linel|10 linenum line_type linewidth line_width linsolve_params linsolvewarn lispdisp listarith listconstvars listdummyvars lmxchar load_pathname loadprint logabs logarc logcb logconcoeffp logexpand lognegint logsimp logx logx_secondary logy logy_secondary logz lriem m1pbranch macroexpansion macros mainvar manual_demo maperror mapprint matrix_element_add matrix_element_mult matrix_element_transpose maxapplydepth maxapplyheight maxima_tempdir|10 maxima_userdir|10 maxnegex MAX_ORD maxposex maxpsifracdenom maxpsifracnum maxpsinegint maxpsiposint maxtayorder mesh_lines_color method mod_big_prime mode_check_errorp mode_checkp mode_check_warnp mod_test mod_threshold modular_linear_solver modulus multiplicative multiplicities myoptions nary negdistrib negsumdispflag newline newtonepsilon newtonmaxiter nextlayerfactor niceindicespref nm nmc noeval nolabels nonegative_lp noninteger nonscalar noun noundisp nouns np npi nticks ntrig numer numer_pbranch obase odd oddfun opacity opproperties opsubst optimprefix optionset orientation origin orthopoly_returns_intervals outative outchar packagefile palette partswitch pdf_file pfeformat phiresolution %piargs piece pivot_count_sx pivot_max_sx plot_format plot_options plot_realpart png_file pochhammer_max_index points pointsize point_size points_joined point_type poislim poisson poly_coefficient_ring poly_elimination_order polyfactor poly_grobner_algorithm poly_grobner_debug poly_monomial_order poly_primary_elimination_order poly_return_term_list poly_secondary_elimination_order poly_top_reduction_only posfun position powerdisp pred prederror primep_number_of_tests product_use_gamma program programmode promote_float_to_bigfloat prompt proportional_axes props psexpand ps_file radexpand radius radsubstflag rassociative ratalgdenom ratchristof ratdenomdivide rateinstein ratepsilon ratfac rational ratmx ratprint ratriemann ratsimpexpons ratvarswitch ratweights ratweyl ratwtlvl real realonly redraw refcheck resolution restart resultant ric riem rmxchar %rnum_list rombergabs rombergit rombergmin rombergtol rootsconmode rootsepsilon run_viewer same_xy same_xyz savedef savefactors scalar scalarmatrixp scale scale_lp setcheck setcheckbreak setval show_edge_color show_edges show_edge_type show_edge_width show_id show_label showtime show_vertex_color show_vertex_size show_vertex_type show_vertices show_weight simp simplified_output simplify_products simpproduct simpsum sinnpiflag solvedecomposes solveexplicit solvefactors solvenullwarn solveradcan solvetrigwarn space sparse sphere spring_embedding_depth sqrtdispflag stardisp startphi starttheta stats_numer stringdisp structures style sublis_apply_lambda subnumsimp sumexpand sumsplitfact surface surface_hide svg_file symmetric tab taylordepth taylor_logexpand taylor_order_coefficients taylor_truncate_polynomials tensorkill terminal testsuite_files thetaresolution timer_devalue title tlimswitch tr track transcompile transform transform_xy translate_fast_arrays transparent transrun tr_array_as_ref tr_bound_function_applyp tr_file_tty_messagesp tr_float_can_branch_complex tr_function_call_default trigexpandplus trigexpandtimes triginverses trigsign trivial_solutions tr_numer tr_optimize_max_loop tr_semicompile tr_state_vars tr_warn_bad_function_calls tr_warn_fexpr tr_warn_meval tr_warn_mode tr_warn_undeclared tr_warn_undefined_variable tstep ttyoff tube_extremes ufg ug %unitexpand unit_vectors uric uriem use_fast_arrays user_preamble usersetunits values vect_cross verbose vertex_color vertex_coloring vertex_partition vertex_size vertex_type view warnings weyl width windowname windowtitle wired_surface wireframe xaxis xaxis_color xaxis_secondary xaxis_type xaxis_width xlabel xlabel_secondary xlength xrange xrange_secondary xtics xtics_axis xtics_rotate xtics_rotate_secondary xtics_secondary xtics_secondary_axis xu_grid x_voxel xy_file xyplane xy_scale yaxis yaxis_color yaxis_secondary yaxis_type yaxis_width ylabel ylabel_secondary ylength yrange yrange_secondary ytics ytics_axis ytics_rotate ytics_rotate_secondary ytics_secondary ytics_secondary_axis yv_grid y_voxel yx_ratio zaxis zaxis_color zaxis_type zaxis_width zeroa zerob zerobern zeta%pi zlabel zlabel_rotate zlength zmin zn_primroot_limit zn_primroot_pretest", +symbol:"_ __ %|0 %%|0"},contains:[{className:"comment",begin:"/\\*",end:"\\*/", +contains:["self"]},e.QUOTE_STRING_MODE,{className:"number",relevance:0, +variants:[{begin:"\\b(\\d+|\\d+\\.|\\.\\d+|\\d+\\.\\d+)[Ee][-+]?\\d+\\b"},{ +begin:"\\b(\\d+|\\d+\\.|\\.\\d+|\\d+\\.\\d+)[Bb][-+]?\\d+\\b",relevance:10},{ +begin:"\\b(\\.\\d+|\\d+\\.\\d+)\\b"},{begin:"\\b(\\d+|0[0-9A-Za-z]+)\\.?\\b"}] +}],illegal:/@/})})();hljs.registerLanguage("maxima",e)})();/*! `pony` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Pony",keywords:{ +keyword:"actor addressof and as be break class compile_error compile_intrinsic consume continue delegate digestof do else elseif embed end error for fun if ifdef in interface is isnt lambda let match new not object or primitive recover repeat return struct then trait try type until use var where while with xor", +meta:"iso val tag trn box ref",literal:"this false true"},contains:[{ +className:"type",begin:"\\b_?[A-Z][\\w]*",relevance:0},{className:"string", +begin:'"""',end:'"""',relevance:10},{className:"string",begin:'"',end:'"', +contains:[e.BACKSLASH_ESCAPE]},{className:"string",begin:"'",end:"'", +contains:[e.BACKSLASH_ESCAPE],relevance:0},{begin:e.IDENT_RE+"'",relevance:0},{ +className:"number", +begin:"(-?)(\\b0[xX][a-fA-F0-9]+|\\b0[bB][01]+|(\\b\\d+(_\\d+)?(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)", +relevance:0},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]})})() +;hljs.registerLanguage("pony",e)})();/*! `wren` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const a=e.regex,s=/[a-zA-Z]\w*/,t=["as","break","class","construct","continue","else","for","foreign","if","import","in","is","return","static","var","while"],c=["true","false","null"],n=["this","super"],r=["-","~",/\*/,"%",/\.\.\./,/\.\./,/\+/,"<<",">>",">=","<=","<",">",/\^/,/!=/,/!/,/\bis\b/,"==","&&","&",/\|\|/,/\|/,/\?:/,"="],i={ +relevance:0,match:a.concat(/\b(?!(if|while|for|else|super)\b)/,s,/(?=\s*[({])/), +className:"title.function"},o={ +match:a.concat(a.either(a.concat(/\b(?!(if|while|for|else|super)\b)/,s),a.either(...r)),/(?=\s*\([^)]+\)\s*\{)/), +className:"title.function",starts:{contains:[{begin:/\(/,end:/\)/,contains:[{ +relevance:0,scope:"params",match:s}]}]}},l={variants:[{ +match:[/class\s+/,s,/\s+is\s+/,s]},{match:[/class\s+/,s]}],scope:{ +2:"title.class",4:"title.class.inherited"},keywords:t},m={relevance:0, +match:a.either(...r),className:"operator"},b={className:"property", +begin:a.concat(/\./,a.lookahead(s)),end:s,excludeBegin:!0,relevance:0},h={ +relevance:0,match:a.concat(/\b_/,s),scope:"variable"},p={relevance:0, +match:/\b[A-Z]+[a-z]+([A-Z]+[a-z]+)*/,scope:"title.class",keywords:{ +_:["Bool","Class","Fiber","Fn","List","Map","Null","Num","Object","Range","Sequence","String","System"] +}},u=e.C_NUMBER_MODE,g={match:[s,/\s*/,/=/,/\s*/,/\(/,s,/\)\s*\{/],scope:{ +1:"title.function",3:"operator",6:"params"}},d=e.COMMENT(/\/\*\*/,/\*\//,{ +contains:[{match:/@[a-z]+/,scope:"doctag"},"self"]}),v={scope:"subst", +begin:/%\(/,end:/\)/,contains:[u,p,i,h,m]},f={scope:"string",begin:/"/,end:/"/, +contains:[v,{scope:"char.escape",variants:[{match:/\\\\|\\["0%abefnrtv]/},{ +match:/\\x[0-9A-F]{2}/},{match:/\\u[0-9A-F]{4}/},{match:/\\U[0-9A-F]{8}/}]}]} +;v.contains.push(f);const N=[...t,...n,...c],_={relevance:0, +match:a.concat("\\b(?!",N.join("|"),"\\b)",/[a-zA-Z_]\w*(?:[?!]|\b)/), +className:"variable"};return{name:"Wren",keywords:{keyword:t, +"variable.language":n,literal:c},contains:[{scope:"comment",variants:[{ +begin:[/#!?/,/[A-Za-z_]+(?=\()/],beginScope:{},keywords:{literal:c},contains:[], +end:/\)/},{begin:[/#!?/,/[A-Za-z_]+/],beginScope:{},end:/$/}]},u,f,{ +className:"string",begin:/"""/,end:/"""/ +},d,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,p,l,g,o,i,m,h,b,_]}}})() +;hljs.registerLanguage("wren",e)})();/*! `xml` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const a=e.regex,n=a.concat(/[\p{L}_]/u,a.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),s={ +className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},t={begin:/\s/, +contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}] +},i=e.inherit(t,{begin:/\(/,end:/\)/}),c=e.inherit(e.APOS_STRING_MODE,{ +className:"string"}),l=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),r={ +endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:"attr", +begin:/[\p{L}0-9._:-]+/u,relevance:0},{begin:/=\s*/,relevance:0,contains:[{ +className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[s]},{ +begin:/'/,end:/'/,contains:[s]},{begin:/[^\s"'=<>`]+/}]}]}]};return{ +name:"HTML, XML", +aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"], +case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin:/<![a-z]/, +end:/>/,relevance:10,contains:[t,l,c,i,{begin:/\[/,end:/\]/,contains:[{ +className:"meta",begin:/<![a-z]/,end:/>/,contains:[t,i,l,c]}]}] +},e.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/, +relevance:10},s,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/, +relevance:10,contains:[l]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag", +begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[r],starts:{ +end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag", +begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[r],starts:{ +end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{ +className:"tag",begin:/<>|<\/>/},{className:"tag", +begin:a.concat(/</,a.lookahead(a.concat(n,a.either(/\/>/,/>/,/\s/)))), +end:/\/?>/,contains:[{className:"name",begin:n,relevance:0,starts:r}]},{ +className:"tag",begin:a.concat(/<\//,a.lookahead(a.concat(n,/>/))),contains:[{ +className:"name",begin:n,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}} +})();hljs.registerLanguage("xml",e)})();/*! `vbscript` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const t=e.regex,r=["lcase","month","vartype","instrrev","ubound","setlocale","getobject","rgb","getref","string","weekdayname","rnd","dateadd","monthname","now","day","minute","isarray","cbool","round","formatcurrency","conversions","csng","timevalue","second","year","space","abs","clng","timeserial","fixs","len","asc","isempty","maths","dateserial","atn","timer","isobject","filter","weekday","datevalue","ccur","isdate","instr","datediff","formatdatetime","replace","isnull","right","sgn","array","snumeric","log","cdbl","hex","chr","lbound","msgbox","ucase","getlocale","cos","cdate","cbyte","rtrim","join","hour","oct","typename","trim","strcomp","int","createobject","loadpicture","tan","formatnumber","mid","split","cint","sin","datepart","ltrim","sqr","time","derived","eval","date","formatpercent","exp","inputbox","left","ascw","chrw","regexp","cstr","err"] +;return{name:"VBScript",aliases:["vbs"],case_insensitive:!0,keywords:{ +keyword:["call","class","const","dim","do","loop","erase","execute","executeglobal","exit","for","each","next","function","if","then","else","on","error","option","explicit","new","private","property","let","get","public","randomize","redim","rem","select","case","set","stop","sub","while","wend","with","end","to","elseif","is","or","xor","and","not","class_initialize","class_terminate","default","preserve","in","me","byval","byref","step","resume","goto"], +built_in:["server","response","request","scriptengine","scriptenginebuildversion","scriptengineminorversion","scriptenginemajorversion"], +literal:["true","false","null","nothing","empty"]},illegal:"//",contains:[{ +begin:t.concat(t.either(...r),"\\s*\\("),relevance:0,keywords:{built_in:r} +},e.inherit(e.QUOTE_STRING_MODE,{contains:[{begin:'""'}]}),e.COMMENT(/'/,/$/,{ +relevance:0}),e.C_NUMBER_MODE]}}})();hljs.registerLanguage("vbscript",e)})();/*! `vbscript-html` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"VBScript in HTML", +subLanguage:"xml",contains:[{begin:"<%",end:"%>",subLanguage:"vbscript"}]})})() +;hljs.registerLanguage("vbscript-html",e)})();/*! `llvm` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const a=e.regex,n=/([-a-zA-Z$._][\w$.-]*)/,t={className:"variable",variants:[{ +begin:a.concat(/%/,n)},{begin:/%\d+/},{begin:/#\d+/}]},i={className:"title", +variants:[{begin:a.concat(/@/,n)},{begin:/@\d+/},{begin:a.concat(/!/,n)},{ +begin:a.concat(/!\d+/,n)},{begin:/!\d+/}]};return{name:"LLVM IR", +keywords:"begin end true false declare define global constant private linker_private internal available_externally linkonce linkonce_odr weak weak_odr appending dllimport dllexport common default hidden protected extern_weak external thread_local zeroinitializer undef null to tail target triple datalayout volatile nuw nsw nnan ninf nsz arcp fast exact inbounds align addrspace section alias module asm sideeffect gc dbg linker_private_weak attributes blockaddress initialexec localdynamic localexec prefix unnamed_addr ccc fastcc coldcc x86_stdcallcc x86_fastcallcc arm_apcscc arm_aapcscc arm_aapcs_vfpcc ptx_device ptx_kernel intel_ocl_bicc msp430_intrcc spir_func spir_kernel x86_64_sysvcc x86_64_win64cc x86_thiscallcc cc c signext zeroext inreg sret nounwind noreturn noalias nocapture byval nest readnone readonly inlinehint noinline alwaysinline optsize ssp sspreq noredzone noimplicitfloat naked builtin cold nobuiltin noduplicate nonlazybind optnone returns_twice sanitize_address sanitize_memory sanitize_thread sspstrong uwtable returned type opaque eq ne slt sgt sle sge ult ugt ule uge oeq one olt ogt ole oge ord uno ueq une x acq_rel acquire alignstack atomic catch cleanup filter inteldialect max min monotonic nand personality release seq_cst singlethread umax umin unordered xchg add fadd sub fsub mul fmul udiv sdiv fdiv urem srem frem shl lshr ashr and or xor icmp fcmp phi call trunc zext sext fptrunc fpext uitofp sitofp fptoui fptosi inttoptr ptrtoint bitcast addrspacecast select va_arg ret br switch invoke unwind unreachable indirectbr landingpad resume malloc alloca free load store getelementptr extractelement insertelement shufflevector getresult extractvalue insertvalue atomicrmw cmpxchg fence argmemonly double", +contains:[{className:"type",begin:/\bi\d+(?=\s|\b)/},e.COMMENT(/;\s*$/,null,{ +relevance:0}),e.COMMENT(/;/,/$/),{className:"string",begin:/"/,end:/"/, +contains:[{className:"char.escape",match:/\\\d\d/}]},i,{className:"punctuation", +relevance:0,begin:/,/},{className:"operator",relevance:0,begin:/=/},t,{ +className:"symbol",variants:[{begin:/^\s*[a-z]+:/}],relevance:0},{ +className:"number",variants:[{begin:/[su]?0[xX][KMLHR]?[a-fA-F0-9]+/},{ +begin:/[-+]?\d+(?:[.]\d+)?(?:[eE][-+]?\d+(?:[.]\d+)?)?/}],relevance:0}]}}})() +;hljs.registerLanguage("llvm",e)})();/*! `d` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const a={ +$pattern:e.UNDERSCORE_IDENT_RE, +keyword:"abstract alias align asm assert auto body break byte case cast catch class const continue debug default delete deprecated do else enum export extern final finally for foreach foreach_reverse|10 goto if immutable import in inout int interface invariant is lazy macro mixin module new nothrow out override package pragma private protected public pure ref return scope shared static struct super switch synchronized template this throw try typedef typeid typeof union unittest version void volatile while with __FILE__ __LINE__ __gshared|10 __thread __traits __DATE__ __EOF__ __TIME__ __TIMESTAMP__ __VENDOR__ __VERSION__", +built_in:"bool cdouble cent cfloat char creal dchar delegate double dstring float function idouble ifloat ireal long real short string ubyte ucent uint ulong ushort wchar wstring", +literal:"false null true" +},d="((0|[1-9][\\d_]*)|0[bB][01_]+|0[xX]([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*))",n="\\\\(['\"\\?\\\\abfnrtv]|u[\\dA-Fa-f]{4}|[0-7]{1,3}|x[\\dA-Fa-f]{2}|U[\\dA-Fa-f]{8})|&[a-zA-Z\\d]{2,};",t={ +className:"number",begin:"\\b"+d+"(L|u|U|Lu|LU|uL|UL)?",relevance:0},_={ +className:"number", +begin:"\\b(((0[xX](([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*)\\.([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*)|\\.?([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*))[pP][+-]?(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d))|((0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d)(\\.\\d*|([eE][+-]?(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d)))|\\d+\\.(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d)|\\.(0|[1-9][\\d_]*)([eE][+-]?(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d))?))([fF]|L|i|[fF]i|Li)?|"+d+"(i|[fF]i|Li))", +relevance:0},r={className:"string",begin:"'("+n+"|.)",end:"'",illegal:"."},i={ +className:"string",begin:'"',contains:[{begin:n,relevance:0}],end:'"[cwd]?' +},s=e.COMMENT("\\/\\+","\\+\\/",{contains:["self"],relevance:10});return{ +name:"D",keywords:a,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,s,{ +className:"string",begin:'x"[\\da-fA-F\\s\\n\\r]*"[cwd]?',relevance:10},i,{ +className:"string",begin:'[rq]"',end:'"[cwd]?',relevance:5},{className:"string", +begin:"`",end:"`[cwd]?"},{className:"string",begin:'q"\\{',end:'\\}"'},_,t,r,{ +className:"meta",begin:"^#!",end:"$",relevance:5},{className:"meta", +begin:"#(line)",end:"$",relevance:5},{className:"keyword", +begin:"@[a-zA-Z_][a-zA-Z_\\d]*"}]}}})();hljs.registerLanguage("d",e)})();/*! `reasonml` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const n="~?[a-z$_][0-9a-zA-Z$_]*",a="`?[A-Z$_][0-9a-zA-Z$_]*",s="("+["||","++","**","+.","*","/","*.","/.","..."].map((e=>e.split("").map((e=>"\\"+e)).join(""))).join("|")+"|\\|>|&&|==|===)",i="\\s+"+s+"\\s+",r={ +keyword:"and as asr assert begin class constraint do done downto else end exception external for fun function functor if in include inherit initializer land lazy let lor lsl lsr lxor match method mod module mutable new nonrec object of open or private rec sig struct then to try type val virtual when while with", +built_in:"array bool bytes char exn|5 float int int32 int64 list lazy_t|5 nativeint|5 ref string unit ", +literal:"true false" +},l="\\b(0[xX][a-fA-F0-9_]+[Lln]?|0[oO][0-7_]+[Lln]?|0[bB][01_]+[Lln]?|[0-9][0-9_]*([Lln]|(\\.[0-9_]*)?([eE][-+]?[0-9_]+)?)?)",t={ +className:"number",relevance:0,variants:[{begin:l},{begin:"\\(-"+l+"\\)"}]},c={ +className:"operator",relevance:0,begin:s},o=[{className:"identifier", +relevance:0,begin:n},c,t],g=[e.QUOTE_STRING_MODE,c,{className:"module", +begin:"\\b"+a,returnBegin:!0,relevance:0,end:".",contains:[{ +className:"identifier",begin:a,relevance:0}]}],b=[{className:"module", +begin:"\\b"+a,returnBegin:!0,end:".",relevance:0,contains:[{ +className:"identifier",begin:a,relevance:0}]}],m={className:"function", +relevance:0,keywords:r,variants:[{begin:"\\s(\\(\\.?.*?\\)|"+n+")\\s*=>", +end:"\\s*=>",returnBegin:!0,relevance:0,contains:[{className:"params", +variants:[{begin:n},{ +begin:"~?[a-z$_][0-9a-zA-Z$_]*(\\s*:\\s*[a-z$_][0-9a-z$_]*(\\(\\s*('?[a-z$_][0-9a-z$_]*\\s*(,'?[a-z$_][0-9a-z$_]*\\s*)*)?\\))?){0,2}" +},{begin:/\(\s*\)/}]}]},{begin:"\\s\\(\\.?[^;\\|]*\\)\\s*=>",end:"\\s=>", +returnBegin:!0,relevance:0,contains:[{className:"params",relevance:0,variants:[{ +begin:n,end:"(,|\\n|\\))",relevance:0,contains:[c,{className:"typing",begin:":", +end:"(,|\\n)",returnBegin:!0,relevance:0,contains:b}]}]}]},{ +begin:"\\(\\.\\s"+n+"\\)\\s*=>"}]};g.push(m);const d={className:"constructor", +begin:a+"\\(",end:"\\)",illegal:"\\n",keywords:r, +contains:[e.QUOTE_STRING_MODE,c,{className:"params",begin:"\\b"+n}]},u={ +className:"pattern-match",begin:"\\|",returnBegin:!0,keywords:r,end:"=>", +relevance:0,contains:[d,c,{relevance:0,className:"constructor",begin:a}]},v={ +className:"module-access",keywords:r,returnBegin:!0,variants:[{ +begin:"\\b("+a+"\\.)+"+n},{begin:"\\b("+a+"\\.)+\\(",end:"\\)",returnBegin:!0, +contains:[m,{begin:"\\(",end:"\\)",relevance:0,skip:!0}].concat(g)},{ +begin:"\\b("+a+"\\.)+\\{",end:/\}/}],contains:g};return b.push(v),{ +name:"ReasonML",aliases:["re"],keywords:r,illegal:"(:-|:=|\\$\\{|\\+=)", +contains:[e.COMMENT("/\\*","\\*/",{illegal:"^(#,\\/\\/)"}),{ +className:"character",begin:"'(\\\\[^']+|[^'])'",illegal:"\\n",relevance:0 +},e.QUOTE_STRING_MODE,{className:"literal",begin:"\\(\\)",relevance:0},{ +className:"literal",begin:"\\[\\|",end:"\\|\\]",relevance:0,contains:o},{ +className:"literal",begin:"\\[",end:"\\]",relevance:0,contains:o},d,{ +className:"operator",begin:i,illegal:"--\x3e",relevance:0 +},t,e.C_LINE_COMMENT_MODE,u,m,{className:"module-def", +begin:"\\bmodule\\s+"+n+"\\s+"+a+"\\s+=\\s+\\{",end:/\}/,returnBegin:!0, +keywords:r,relevance:0,contains:[{className:"module",relevance:0,begin:a},{ +begin:/\{/,end:/\}/,relevance:0,skip:!0}].concat(g)},v]}}})() +;hljs.registerLanguage("reasonml",e)})();/*! `handlebars` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const a=e.regex,n={ +$pattern:/[\w.\/]+/, +built_in:["action","bindattr","collection","component","concat","debugger","each","each-in","get","hash","if","in","input","link-to","loc","log","lookup","mut","outlet","partial","query-params","render","template","textarea","unbound","unless","view","with","yield"] +},t=/\[\]|\[[^\]]+\]/,s=/[^\s!"#%&'()*+,.\/;<=>@\[\\\]^`{|}~]+/,i=a.either(/""|"[^"]+"/,/''|'[^']+'/,t,s),r=a.concat(a.optional(/\.|\.\/|\//),i,a.anyNumberOfTimes(a.concat(/(\.|\/)/,i))),l=a.concat("(",t,"|",s,")(?==)"),c={ +begin:r},o=e.inherit(c,{keywords:{$pattern:/[\w.\/]+/, +literal:["true","false","undefined","null"]}}),m={begin:/\(/,end:/\)/},d={ +className:"attr",begin:l,relevance:0,starts:{begin:/=/,end:/=/,starts:{ +contains:[e.NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,o,m]}}},g={ +contains:[e.NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{begin:/as\s+\|/, +keywords:{keyword:"as"},end:/\|/,contains:[{begin:/\w+/}]},d,o,m],returnEnd:!0 +},b=e.inherit(c,{className:"name",keywords:n,starts:e.inherit(g,{end:/\)/})}) +;m.contains=[b];const u=e.inherit(c,{keywords:n,className:"name", +starts:e.inherit(g,{end:/\}\}/})}),h=e.inherit(c,{keywords:n,className:"name" +}),N=e.inherit(c,{className:"name",keywords:n,starts:e.inherit(g,{end:/\}\}/})}) +;return{name:"Handlebars", +aliases:["hbs","html.hbs","html.handlebars","htmlbars"],case_insensitive:!0, +subLanguage:"xml",contains:[{begin:/\\\{\{/,skip:!0},{begin:/\\\\(?=\{\{)/, +skip:!0},e.COMMENT(/\{\{!--/,/--\}\}/),e.COMMENT(/\{\{!/,/\}\}/),{ +className:"template-tag",begin:/\{\{\{\{(?!\/)/,end:/\}\}\}\}/,contains:[u], +starts:{end:/\{\{\{\{\//,returnEnd:!0,subLanguage:"xml"}},{ +className:"template-tag",begin:/\{\{\{\{\//,end:/\}\}\}\}/,contains:[h]},{ +className:"template-tag",begin:/\{\{#/,end:/\}\}/,contains:[u]},{ +className:"template-tag",begin:/\{\{(?=else\}\})/,end:/\}\}/,keywords:"else"},{ +className:"template-tag",begin:/\{\{(?=else if)/,end:/\}\}/,keywords:"else if" +},{className:"template-tag",begin:/\{\{\//,end:/\}\}/,contains:[h]},{ +className:"template-variable",begin:/\{\{\{/,end:/\}\}\}/,contains:[N]},{ +className:"template-variable",begin:/\{\{/,end:/\}\}/,contains:[N]}]}}})() +;hljs.registerLanguage("handlebars",e)})();/*! `cmake` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"CMake",aliases:["cmake.in"], +case_insensitive:!0,keywords:{ +keyword:"break cmake_host_system_information cmake_minimum_required cmake_parse_arguments cmake_policy configure_file continue elseif else endforeach endfunction endif endmacro endwhile execute_process file find_file find_library find_package find_path find_program foreach function get_cmake_property get_directory_property get_filename_component get_property if include include_guard list macro mark_as_advanced math message option return separate_arguments set_directory_properties set_property set site_name string unset variable_watch while add_compile_definitions add_compile_options add_custom_command add_custom_target add_definitions add_dependencies add_executable add_library add_link_options add_subdirectory add_test aux_source_directory build_command create_test_sourcelist define_property enable_language enable_testing export fltk_wrap_ui get_source_file_property get_target_property get_test_property include_directories include_external_msproject include_regular_expression install link_directories link_libraries load_cache project qt_wrap_cpp qt_wrap_ui remove_definitions set_source_files_properties set_target_properties set_tests_properties source_group target_compile_definitions target_compile_features target_compile_options target_include_directories target_link_directories target_link_libraries target_link_options target_sources try_compile try_run ctest_build ctest_configure ctest_coverage ctest_empty_binary_directory ctest_memcheck ctest_read_custom_files ctest_run_script ctest_sleep ctest_start ctest_submit ctest_test ctest_update ctest_upload build_name exec_program export_library_dependencies install_files install_programs install_targets load_command make_directory output_required_files remove subdir_depends subdirs use_mangled_mesa utility_source variable_requires write_file qt5_use_modules qt5_use_package qt5_wrap_cpp on off true false and or not command policy target test exists is_newer_than is_directory is_symlink is_absolute matches less greater equal less_equal greater_equal strless strgreater strequal strless_equal strgreater_equal version_less version_greater version_equal version_less_equal version_greater_equal in_list defined" +},contains:[{className:"variable",begin:/\$\{/,end:/\}/ +},e.COMMENT(/#\[\[/,/]]/),e.HASH_COMMENT_MODE,e.QUOTE_STRING_MODE,e.NUMBER_MODE] +})})();hljs.registerLanguage("cmake",e)})();/*! `twig` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const a=e.regex,t=["absolute_url","asset|0","asset_version","attribute","block","constant","controller|0","country_timezones","csrf_token","cycle","date","dump","expression","form|0","form_end","form_errors","form_help","form_label","form_rest","form_row","form_start","form_widget","html_classes","include","is_granted","logout_path","logout_url","max","min","parent","path|0","random","range","relative_path","render","render_esi","source","template_from_string","url|0"] +;let r=["apply","autoescape","block","cache","deprecated","do","embed","extends","filter","flush","for","form_theme","from","if","import","include","macro","sandbox","set","stopwatch","trans","trans_default_domain","transchoice","use","verbatim","with"] +;r=r.concat(r.map((e=>"end"+e)));const n={scope:"string",variants:[{begin:/'/, +end:/'/},{begin:/"/,end:/"/}]},o={scope:"number",match:/\d+/},s={begin:/\(/, +end:/\)/,excludeBegin:!0,excludeEnd:!0,contains:[n,o]},c={ +beginKeywords:t.join(" "),keywords:{name:t},relevance:0,contains:[s]},m={ +match:/\|(?=[A-Za-z_]+:?)/,beginScope:"punctuation",relevance:0,contains:[{ +match:/[A-Za-z_]+:?/, +keywords:["abs","abbr_class","abbr_method","batch","capitalize","column","convert_encoding","country_name","currency_name","currency_symbol","data_uri","date","date_modify","default","escape","file_excerpt","file_link","file_relative","filter","first","format","format_args","format_args_as_text","format_currency","format_date","format_datetime","format_file","format_file_from_text","format_number","format_time","html_to_markdown","humanize","inky_to_html","inline_css","join","json_encode","keys","language_name","last","length","locale_name","lower","map","markdown","markdown_to_html","merge","nl2br","number_format","raw","reduce","replace","reverse","round","slice","slug","sort","spaceless","split","striptags","timezone_name","title","trans","transchoice","trim","u|0","upper","url_encode","yaml_dump","yaml_encode"] +}]},i=(e,{relevance:t})=>({beginScope:{1:"template-tag",3:"name"}, +relevance:t||2,endScope:"template-tag",begin:[/\{%/,/\s*/,a.either(...e)], +end:/%\}/,keywords:"in",contains:[m,c,n,o]}),l=i(r,{relevance:2 +}),_=i([/[a-z_]+/],{relevance:1});return{name:"Twig",aliases:["craftcms"], +case_insensitive:!0,subLanguage:"xml",contains:[e.COMMENT(/\{#/,/#\}/),l,_,{ +className:"template-variable",begin:/\{\{/,end:/\}\}/,contains:["self",m,c,n,o] +}]}}})();hljs.registerLanguage("twig",e)})();/*! `isbl` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var S=(()=>{"use strict";return S=>{ +const E="[A-Za-z\u0410-\u042f\u0430-\u044f\u0451\u0401_!][A-Za-z\u0410-\u042f\u0430-\u044f\u0451\u0401_0-9]*",_={ +className:"number",begin:S.NUMBER_RE,relevance:0},T={className:"string", +variants:[{begin:'"',end:'"'},{begin:"'",end:"'"}]},R={className:"doctag", +begin:"\\b(?:TODO|DONE|BEGIN|END|STUB|CHG|FIXME|NOTE|BUG|XXX)\\b",relevance:0 +},O={variants:[{className:"comment",begin:"//",end:"$",relevance:0, +contains:[S.PHRASAL_WORDS_MODE,R]},{className:"comment",begin:"/\\*",end:"\\*/", +relevance:0,contains:[S.PHRASAL_WORDS_MODE,R]}]},C={$pattern:E, +keyword:"and \u0438 else \u0438\u043d\u0430\u0447\u0435 endexcept endfinally endforeach \u043a\u043e\u043d\u0435\u0446\u0432\u0441\u0435 endif \u043a\u043e\u043d\u0435\u0446\u0435\u0441\u043b\u0438 endwhile \u043a\u043e\u043d\u0435\u0446\u043f\u043e\u043a\u0430 except exitfor finally foreach \u0432\u0441\u0435 if \u0435\u0441\u043b\u0438 in \u0432 not \u043d\u0435 or \u0438\u043b\u0438 try while \u043f\u043e\u043a\u0430 ", +built_in:"SYSRES_CONST_ACCES_RIGHT_TYPE_EDIT SYSRES_CONST_ACCES_RIGHT_TYPE_FULL SYSRES_CONST_ACCES_RIGHT_TYPE_VIEW SYSRES_CONST_ACCESS_MODE_REQUISITE_CODE SYSRES_CONST_ACCESS_NO_ACCESS_VIEW SYSRES_CONST_ACCESS_NO_ACCESS_VIEW_CODE SYSRES_CONST_ACCESS_RIGHTS_ADD_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_ADD_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_RIGHTS_CHANGE_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_CHANGE_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_RIGHTS_DELETE_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_DELETE_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_RIGHTS_EXECUTE_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_EXECUTE_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_RIGHTS_NO_ACCESS_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_NO_ACCESS_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_RIGHTS_RATIFY_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_RATIFY_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_RIGHTS_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_VIEW SYSRES_CONST_ACCESS_RIGHTS_VIEW_CODE SYSRES_CONST_ACCESS_RIGHTS_VIEW_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_VIEW_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_TYPE_CHANGE SYSRES_CONST_ACCESS_TYPE_CHANGE_CODE SYSRES_CONST_ACCESS_TYPE_EXISTS SYSRES_CONST_ACCESS_TYPE_EXISTS_CODE SYSRES_CONST_ACCESS_TYPE_FULL SYSRES_CONST_ACCESS_TYPE_FULL_CODE SYSRES_CONST_ACCESS_TYPE_VIEW SYSRES_CONST_ACCESS_TYPE_VIEW_CODE SYSRES_CONST_ACTION_TYPE_ABORT SYSRES_CONST_ACTION_TYPE_ACCEPT SYSRES_CONST_ACTION_TYPE_ACCESS_RIGHTS SYSRES_CONST_ACTION_TYPE_ADD_ATTACHMENT SYSRES_CONST_ACTION_TYPE_CHANGE_CARD SYSRES_CONST_ACTION_TYPE_CHANGE_KIND SYSRES_CONST_ACTION_TYPE_CHANGE_STORAGE SYSRES_CONST_ACTION_TYPE_CONTINUE SYSRES_CONST_ACTION_TYPE_COPY SYSRES_CONST_ACTION_TYPE_CREATE SYSRES_CONST_ACTION_TYPE_CREATE_VERSION SYSRES_CONST_ACTION_TYPE_DELETE SYSRES_CONST_ACTION_TYPE_DELETE_ATTACHMENT SYSRES_CONST_ACTION_TYPE_DELETE_VERSION SYSRES_CONST_ACTION_TYPE_DISABLE_DELEGATE_ACCESS_RIGHTS SYSRES_CONST_ACTION_TYPE_ENABLE_DELEGATE_ACCESS_RIGHTS SYSRES_CONST_ACTION_TYPE_ENCRYPTION_BY_CERTIFICATE SYSRES_CONST_ACTION_TYPE_ENCRYPTION_BY_CERTIFICATE_AND_PASSWORD SYSRES_CONST_ACTION_TYPE_ENCRYPTION_BY_PASSWORD SYSRES_CONST_ACTION_TYPE_EXPORT_WITH_LOCK SYSRES_CONST_ACTION_TYPE_EXPORT_WITHOUT_LOCK SYSRES_CONST_ACTION_TYPE_IMPORT_WITH_UNLOCK SYSRES_CONST_ACTION_TYPE_IMPORT_WITHOUT_UNLOCK SYSRES_CONST_ACTION_TYPE_LIFE_CYCLE_STAGE SYSRES_CONST_ACTION_TYPE_LOCK SYSRES_CONST_ACTION_TYPE_LOCK_FOR_SERVER SYSRES_CONST_ACTION_TYPE_LOCK_MODIFY SYSRES_CONST_ACTION_TYPE_MARK_AS_READED SYSRES_CONST_ACTION_TYPE_MARK_AS_UNREADED SYSRES_CONST_ACTION_TYPE_MODIFY SYSRES_CONST_ACTION_TYPE_MODIFY_CARD SYSRES_CONST_ACTION_TYPE_MOVE_TO_ARCHIVE SYSRES_CONST_ACTION_TYPE_OFF_ENCRYPTION SYSRES_CONST_ACTION_TYPE_PASSWORD_CHANGE SYSRES_CONST_ACTION_TYPE_PERFORM SYSRES_CONST_ACTION_TYPE_RECOVER_FROM_LOCAL_COPY SYSRES_CONST_ACTION_TYPE_RESTART SYSRES_CONST_ACTION_TYPE_RESTORE_FROM_ARCHIVE SYSRES_CONST_ACTION_TYPE_REVISION SYSRES_CONST_ACTION_TYPE_SEND_BY_MAIL SYSRES_CONST_ACTION_TYPE_SIGN SYSRES_CONST_ACTION_TYPE_START SYSRES_CONST_ACTION_TYPE_UNLOCK SYSRES_CONST_ACTION_TYPE_UNLOCK_FROM_SERVER SYSRES_CONST_ACTION_TYPE_VERSION_STATE SYSRES_CONST_ACTION_TYPE_VERSION_VISIBILITY SYSRES_CONST_ACTION_TYPE_VIEW SYSRES_CONST_ACTION_TYPE_VIEW_SHADOW_COPY SYSRES_CONST_ACTION_TYPE_WORKFLOW_DESCRIPTION_MODIFY SYSRES_CONST_ACTION_TYPE_WRITE_HISTORY SYSRES_CONST_ACTIVE_VERSION_STATE_PICK_VALUE SYSRES_CONST_ADD_REFERENCE_MODE_NAME SYSRES_CONST_ADDITION_REQUISITE_CODE SYSRES_CONST_ADDITIONAL_PARAMS_REQUISITE_CODE SYSRES_CONST_ADITIONAL_JOB_END_DATE_REQUISITE_NAME SYSRES_CONST_ADITIONAL_JOB_READ_REQUISITE_NAME SYSRES_CONST_ADITIONAL_JOB_START_DATE_REQUISITE_NAME SYSRES_CONST_ADITIONAL_JOB_STATE_REQUISITE_NAME SYSRES_CONST_ADMINISTRATION_HISTORY_ADDING_USER_TO_GROUP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_ADDING_USER_TO_GROUP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_CREATION_COMP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_CREATION_COMP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_CREATION_GROUP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_CREATION_GROUP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_CREATION_USER_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_CREATION_USER_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_DATABASE_USER_CREATION SYSRES_CONST_ADMINISTRATION_HISTORY_DATABASE_USER_CREATION_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_DATABASE_USER_DELETION SYSRES_CONST_ADMINISTRATION_HISTORY_DATABASE_USER_DELETION_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_COMP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_COMP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_GROUP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_GROUP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_USER_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_USER_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_USER_FROM_GROUP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_USER_FROM_GROUP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_GRANTING_FILTERER_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_GRANTING_FILTERER_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_GRANTING_FILTERER_RESTRICTION_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_GRANTING_FILTERER_RESTRICTION_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_GRANTING_PRIVILEGE_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_GRANTING_PRIVILEGE_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_GRANTING_RIGHTS_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_GRANTING_RIGHTS_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_IS_MAIN_SERVER_CHANGED_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_IS_MAIN_SERVER_CHANGED_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_IS_PUBLIC_CHANGED_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_IS_PUBLIC_CHANGED_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_REMOVING_FILTERER_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_REMOVING_FILTERER_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_REMOVING_FILTERER_RESTRICTION_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_REMOVING_FILTERER_RESTRICTION_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_REMOVING_PRIVILEGE_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_REMOVING_PRIVILEGE_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_REMOVING_RIGHTS_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_REMOVING_RIGHTS_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_SERVER_LOGIN_CREATION SYSRES_CONST_ADMINISTRATION_HISTORY_SERVER_LOGIN_CREATION_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_SERVER_LOGIN_DELETION SYSRES_CONST_ADMINISTRATION_HISTORY_SERVER_LOGIN_DELETION_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_CATEGORY_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_CATEGORY_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_COMP_TITLE_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_COMP_TITLE_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_FULL_NAME_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_FULL_NAME_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_GROUP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_GROUP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_PARENT_GROUP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_PARENT_GROUP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_USER_AUTH_TYPE_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_USER_AUTH_TYPE_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_USER_LOGIN_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_USER_LOGIN_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_USER_STATUS_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_UPDATING_USER_STATUS_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_USER_PASSWORD_CHANGE SYSRES_CONST_ADMINISTRATION_HISTORY_USER_PASSWORD_CHANGE_ACTION SYSRES_CONST_ALL_ACCEPT_CONDITION_RUS SYSRES_CONST_ALL_USERS_GROUP SYSRES_CONST_ALL_USERS_GROUP_NAME SYSRES_CONST_ALL_USERS_SERVER_GROUP_NAME SYSRES_CONST_ALLOWED_ACCESS_TYPE_CODE SYSRES_CONST_ALLOWED_ACCESS_TYPE_NAME SYSRES_CONST_APP_VIEWER_TYPE_REQUISITE_CODE SYSRES_CONST_APPROVING_SIGNATURE_NAME SYSRES_CONST_APPROVING_SIGNATURE_REQUISITE_CODE SYSRES_CONST_ASSISTANT_SUBSTITUE_TYPE SYSRES_CONST_ASSISTANT_SUBSTITUE_TYPE_CODE SYSRES_CONST_ATTACH_TYPE_COMPONENT_TOKEN SYSRES_CONST_ATTACH_TYPE_DOC SYSRES_CONST_ATTACH_TYPE_EDOC SYSRES_CONST_ATTACH_TYPE_FOLDER SYSRES_CONST_ATTACH_TYPE_JOB SYSRES_CONST_ATTACH_TYPE_REFERENCE SYSRES_CONST_ATTACH_TYPE_TASK SYSRES_CONST_AUTH_ENCODED_PASSWORD SYSRES_CONST_AUTH_ENCODED_PASSWORD_CODE SYSRES_CONST_AUTH_NOVELL SYSRES_CONST_AUTH_PASSWORD SYSRES_CONST_AUTH_PASSWORD_CODE SYSRES_CONST_AUTH_WINDOWS SYSRES_CONST_AUTHENTICATING_SIGNATURE_NAME SYSRES_CONST_AUTHENTICATING_SIGNATURE_REQUISITE_CODE SYSRES_CONST_AUTO_ENUM_METHOD_FLAG SYSRES_CONST_AUTO_NUMERATION_CODE SYSRES_CONST_AUTO_STRONG_ENUM_METHOD_FLAG SYSRES_CONST_AUTOTEXT_NAME_REQUISITE_CODE SYSRES_CONST_AUTOTEXT_TEXT_REQUISITE_CODE SYSRES_CONST_AUTOTEXT_USAGE_ALL SYSRES_CONST_AUTOTEXT_USAGE_ALL_CODE SYSRES_CONST_AUTOTEXT_USAGE_SIGN SYSRES_CONST_AUTOTEXT_USAGE_SIGN_CODE SYSRES_CONST_AUTOTEXT_USAGE_WORK SYSRES_CONST_AUTOTEXT_USAGE_WORK_CODE SYSRES_CONST_AUTOTEXT_USE_ANYWHERE_CODE SYSRES_CONST_AUTOTEXT_USE_ON_SIGNING_CODE SYSRES_CONST_AUTOTEXT_USE_ON_WORK_CODE SYSRES_CONST_BEGIN_DATE_REQUISITE_CODE SYSRES_CONST_BLACK_LIFE_CYCLE_STAGE_FONT_COLOR SYSRES_CONST_BLUE_LIFE_CYCLE_STAGE_FONT_COLOR SYSRES_CONST_BTN_PART SYSRES_CONST_CALCULATED_ROLE_TYPE_CODE SYSRES_CONST_CALL_TYPE_VARIABLE_BUTTON_VALUE SYSRES_CONST_CALL_TYPE_VARIABLE_PROGRAM_VALUE SYSRES_CONST_CANCEL_MESSAGE_FUNCTION_RESULT SYSRES_CONST_CARD_PART SYSRES_CONST_CARD_REFERENCE_MODE_NAME SYSRES_CONST_CERTIFICATE_TYPE_REQUISITE_ENCRYPT_VALUE SYSRES_CONST_CERTIFICATE_TYPE_REQUISITE_SIGN_AND_ENCRYPT_VALUE SYSRES_CONST_CERTIFICATE_TYPE_REQUISITE_SIGN_VALUE SYSRES_CONST_CHECK_PARAM_VALUE_DATE_PARAM_TYPE SYSRES_CONST_CHECK_PARAM_VALUE_FLOAT_PARAM_TYPE SYSRES_CONST_CHECK_PARAM_VALUE_INTEGER_PARAM_TYPE SYSRES_CONST_CHECK_PARAM_VALUE_PICK_PARAM_TYPE SYSRES_CONST_CHECK_PARAM_VALUE_REEFRENCE_PARAM_TYPE SYSRES_CONST_CLOSED_RECORD_FLAG_VALUE_FEMININE SYSRES_CONST_CLOSED_RECORD_FLAG_VALUE_MASCULINE SYSRES_CONST_CODE_COMPONENT_TYPE_ADMIN SYSRES_CONST_CODE_COMPONENT_TYPE_DEVELOPER SYSRES_CONST_CODE_COMPONENT_TYPE_DOCS SYSRES_CONST_CODE_COMPONENT_TYPE_EDOC_CARDS SYSRES_CONST_CODE_COMPONENT_TYPE_EXTERNAL_EXECUTABLE SYSRES_CONST_CODE_COMPONENT_TYPE_OTHER SYSRES_CONST_CODE_COMPONENT_TYPE_REFERENCE SYSRES_CONST_CODE_COMPONENT_TYPE_REPORT SYSRES_CONST_CODE_COMPONENT_TYPE_SCRIPT SYSRES_CONST_CODE_COMPONENT_TYPE_URL SYSRES_CONST_CODE_REQUISITE_ACCESS SYSRES_CONST_CODE_REQUISITE_CODE SYSRES_CONST_CODE_REQUISITE_COMPONENT SYSRES_CONST_CODE_REQUISITE_DESCRIPTION SYSRES_CONST_CODE_REQUISITE_EXCLUDE_COMPONENT SYSRES_CONST_CODE_REQUISITE_RECORD SYSRES_CONST_COMMENT_REQ_CODE SYSRES_CONST_COMMON_SETTINGS_REQUISITE_CODE SYSRES_CONST_COMP_CODE_GRD SYSRES_CONST_COMPONENT_GROUP_TYPE_REQUISITE_CODE SYSRES_CONST_COMPONENT_TYPE_ADMIN_COMPONENTS SYSRES_CONST_COMPONENT_TYPE_DEVELOPER_COMPONENTS SYSRES_CONST_COMPONENT_TYPE_DOCS SYSRES_CONST_COMPONENT_TYPE_EDOC_CARDS SYSRES_CONST_COMPONENT_TYPE_EDOCS SYSRES_CONST_COMPONENT_TYPE_EXTERNAL_EXECUTABLE SYSRES_CONST_COMPONENT_TYPE_OTHER SYSRES_CONST_COMPONENT_TYPE_REFERENCE_TYPES SYSRES_CONST_COMPONENT_TYPE_REFERENCES SYSRES_CONST_COMPONENT_TYPE_REPORTS SYSRES_CONST_COMPONENT_TYPE_SCRIPTS SYSRES_CONST_COMPONENT_TYPE_URL SYSRES_CONST_COMPONENTS_REMOTE_SERVERS_VIEW_CODE SYSRES_CONST_CONDITION_BLOCK_DESCRIPTION SYSRES_CONST_CONST_FIRM_STATUS_COMMON SYSRES_CONST_CONST_FIRM_STATUS_INDIVIDUAL SYSRES_CONST_CONST_NEGATIVE_VALUE SYSRES_CONST_CONST_POSITIVE_VALUE SYSRES_CONST_CONST_SERVER_STATUS_DONT_REPLICATE SYSRES_CONST_CONST_SERVER_STATUS_REPLICATE SYSRES_CONST_CONTENTS_REQUISITE_CODE SYSRES_CONST_DATA_TYPE_BOOLEAN SYSRES_CONST_DATA_TYPE_DATE SYSRES_CONST_DATA_TYPE_FLOAT SYSRES_CONST_DATA_TYPE_INTEGER SYSRES_CONST_DATA_TYPE_PICK SYSRES_CONST_DATA_TYPE_REFERENCE SYSRES_CONST_DATA_TYPE_STRING SYSRES_CONST_DATA_TYPE_TEXT SYSRES_CONST_DATA_TYPE_VARIANT SYSRES_CONST_DATE_CLOSE_REQ_CODE SYSRES_CONST_DATE_FORMAT_DATE_ONLY_CHAR SYSRES_CONST_DATE_OPEN_REQ_CODE SYSRES_CONST_DATE_REQUISITE SYSRES_CONST_DATE_REQUISITE_CODE SYSRES_CONST_DATE_REQUISITE_NAME SYSRES_CONST_DATE_REQUISITE_TYPE SYSRES_CONST_DATE_TYPE_CHAR SYSRES_CONST_DATETIME_FORMAT_VALUE SYSRES_CONST_DEA_ACCESS_RIGHTS_ACTION_CODE SYSRES_CONST_DESCRIPTION_LOCALIZE_ID_REQUISITE_CODE SYSRES_CONST_DESCRIPTION_REQUISITE_CODE SYSRES_CONST_DET1_PART SYSRES_CONST_DET2_PART SYSRES_CONST_DET3_PART SYSRES_CONST_DET4_PART SYSRES_CONST_DET5_PART SYSRES_CONST_DET6_PART SYSRES_CONST_DETAIL_DATASET_KEY_REQUISITE_CODE SYSRES_CONST_DETAIL_PICK_REQUISITE_CODE SYSRES_CONST_DETAIL_REQ_CODE SYSRES_CONST_DO_NOT_USE_ACCESS_TYPE_CODE SYSRES_CONST_DO_NOT_USE_ACCESS_TYPE_NAME SYSRES_CONST_DO_NOT_USE_ON_VIEW_ACCESS_TYPE_CODE SYSRES_CONST_DO_NOT_USE_ON_VIEW_ACCESS_TYPE_NAME SYSRES_CONST_DOCUMENT_STORAGES_CODE SYSRES_CONST_DOCUMENT_TEMPLATES_TYPE_NAME SYSRES_CONST_DOUBLE_REQUISITE_CODE SYSRES_CONST_EDITOR_CLOSE_FILE_OBSERV_TYPE_CODE SYSRES_CONST_EDITOR_CLOSE_PROCESS_OBSERV_TYPE_CODE SYSRES_CONST_EDITOR_TYPE_REQUISITE_CODE SYSRES_CONST_EDITORS_APPLICATION_NAME_REQUISITE_CODE SYSRES_CONST_EDITORS_CREATE_SEVERAL_PROCESSES_REQUISITE_CODE SYSRES_CONST_EDITORS_EXTENSION_REQUISITE_CODE SYSRES_CONST_EDITORS_OBSERVER_BY_PROCESS_TYPE SYSRES_CONST_EDITORS_REFERENCE_CODE SYSRES_CONST_EDITORS_REPLACE_SPEC_CHARS_REQUISITE_CODE SYSRES_CONST_EDITORS_USE_PLUGINS_REQUISITE_CODE SYSRES_CONST_EDITORS_VIEW_DOCUMENT_OPENED_TO_EDIT_CODE SYSRES_CONST_EDOC_CARD_TYPE_REQUISITE_CODE SYSRES_CONST_EDOC_CARD_TYPES_LINK_REQUISITE_CODE SYSRES_CONST_EDOC_CERTIFICATE_AND_PASSWORD_ENCODE_CODE SYSRES_CONST_EDOC_CERTIFICATE_ENCODE_CODE SYSRES_CONST_EDOC_DATE_REQUISITE_CODE SYSRES_CONST_EDOC_KIND_REFERENCE_CODE SYSRES_CONST_EDOC_KINDS_BY_TEMPLATE_ACTION_CODE SYSRES_CONST_EDOC_MANAGE_ACCESS_CODE SYSRES_CONST_EDOC_NONE_ENCODE_CODE SYSRES_CONST_EDOC_NUMBER_REQUISITE_CODE SYSRES_CONST_EDOC_PASSWORD_ENCODE_CODE SYSRES_CONST_EDOC_READONLY_ACCESS_CODE SYSRES_CONST_EDOC_SHELL_LIFE_TYPE_VIEW_VALUE SYSRES_CONST_EDOC_SIZE_RESTRICTION_PRIORITY_REQUISITE_CODE SYSRES_CONST_EDOC_STORAGE_CHECK_ACCESS_RIGHTS_REQUISITE_CODE SYSRES_CONST_EDOC_STORAGE_COMPUTER_NAME_REQUISITE_CODE SYSRES_CONST_EDOC_STORAGE_DATABASE_NAME_REQUISITE_CODE SYSRES_CONST_EDOC_STORAGE_EDIT_IN_STORAGE_REQUISITE_CODE SYSRES_CONST_EDOC_STORAGE_LOCAL_PATH_REQUISITE_CODE SYSRES_CONST_EDOC_STORAGE_SHARED_SOURCE_NAME_REQUISITE_CODE SYSRES_CONST_EDOC_TEMPLATE_REQUISITE_CODE SYSRES_CONST_EDOC_TYPES_REFERENCE_CODE SYSRES_CONST_EDOC_VERSION_ACTIVE_STAGE_CODE SYSRES_CONST_EDOC_VERSION_DESIGN_STAGE_CODE SYSRES_CONST_EDOC_VERSION_OBSOLETE_STAGE_CODE SYSRES_CONST_EDOC_WRITE_ACCES_CODE SYSRES_CONST_EDOCUMENT_CARD_REQUISITES_REFERENCE_CODE_SELECTED_REQUISITE SYSRES_CONST_ENCODE_CERTIFICATE_TYPE_CODE SYSRES_CONST_END_DATE_REQUISITE_CODE SYSRES_CONST_ENUMERATION_TYPE_REQUISITE_CODE SYSRES_CONST_EXECUTE_ACCESS_RIGHTS_TYPE_CODE SYSRES_CONST_EXECUTIVE_FILE_STORAGE_TYPE SYSRES_CONST_EXIST_CONST SYSRES_CONST_EXIST_VALUE SYSRES_CONST_EXPORT_LOCK_TYPE_ASK SYSRES_CONST_EXPORT_LOCK_TYPE_WITH_LOCK SYSRES_CONST_EXPORT_LOCK_TYPE_WITHOUT_LOCK SYSRES_CONST_EXPORT_VERSION_TYPE_ASK SYSRES_CONST_EXPORT_VERSION_TYPE_LAST SYSRES_CONST_EXPORT_VERSION_TYPE_LAST_ACTIVE SYSRES_CONST_EXTENSION_REQUISITE_CODE SYSRES_CONST_FILTER_NAME_REQUISITE_CODE SYSRES_CONST_FILTER_REQUISITE_CODE SYSRES_CONST_FILTER_TYPE_COMMON_CODE SYSRES_CONST_FILTER_TYPE_COMMON_NAME SYSRES_CONST_FILTER_TYPE_USER_CODE SYSRES_CONST_FILTER_TYPE_USER_NAME SYSRES_CONST_FILTER_VALUE_REQUISITE_NAME SYSRES_CONST_FLOAT_NUMBER_FORMAT_CHAR SYSRES_CONST_FLOAT_REQUISITE_TYPE SYSRES_CONST_FOLDER_AUTHOR_VALUE SYSRES_CONST_FOLDER_KIND_ANY_OBJECTS SYSRES_CONST_FOLDER_KIND_COMPONENTS SYSRES_CONST_FOLDER_KIND_EDOCS SYSRES_CONST_FOLDER_KIND_JOBS SYSRES_CONST_FOLDER_KIND_TASKS SYSRES_CONST_FOLDER_TYPE_COMMON SYSRES_CONST_FOLDER_TYPE_COMPONENT SYSRES_CONST_FOLDER_TYPE_FAVORITES SYSRES_CONST_FOLDER_TYPE_INBOX SYSRES_CONST_FOLDER_TYPE_OUTBOX SYSRES_CONST_FOLDER_TYPE_QUICK_LAUNCH SYSRES_CONST_FOLDER_TYPE_SEARCH SYSRES_CONST_FOLDER_TYPE_SHORTCUTS SYSRES_CONST_FOLDER_TYPE_USER SYSRES_CONST_FROM_DICTIONARY_ENUM_METHOD_FLAG SYSRES_CONST_FULL_SUBSTITUTE_TYPE SYSRES_CONST_FULL_SUBSTITUTE_TYPE_CODE SYSRES_CONST_FUNCTION_CANCEL_RESULT SYSRES_CONST_FUNCTION_CATEGORY_SYSTEM SYSRES_CONST_FUNCTION_CATEGORY_USER SYSRES_CONST_FUNCTION_FAILURE_RESULT SYSRES_CONST_FUNCTION_SAVE_RESULT SYSRES_CONST_GENERATED_REQUISITE SYSRES_CONST_GREEN_LIFE_CYCLE_STAGE_FONT_COLOR SYSRES_CONST_GROUP_ACCOUNT_TYPE_VALUE_CODE SYSRES_CONST_GROUP_CATEGORY_NORMAL_CODE SYSRES_CONST_GROUP_CATEGORY_NORMAL_NAME SYSRES_CONST_GROUP_CATEGORY_SERVICE_CODE SYSRES_CONST_GROUP_CATEGORY_SERVICE_NAME SYSRES_CONST_GROUP_COMMON_CATEGORY_FIELD_VALUE SYSRES_CONST_GROUP_FULL_NAME_REQUISITE_CODE SYSRES_CONST_GROUP_NAME_REQUISITE_CODE SYSRES_CONST_GROUP_RIGHTS_T_REQUISITE_CODE SYSRES_CONST_GROUP_SERVER_CODES_REQUISITE_CODE SYSRES_CONST_GROUP_SERVER_NAME_REQUISITE_CODE SYSRES_CONST_GROUP_SERVICE_CATEGORY_FIELD_VALUE SYSRES_CONST_GROUP_USER_REQUISITE_CODE SYSRES_CONST_GROUPS_REFERENCE_CODE SYSRES_CONST_GROUPS_REQUISITE_CODE SYSRES_CONST_HIDDEN_MODE_NAME SYSRES_CONST_HIGH_LVL_REQUISITE_CODE SYSRES_CONST_HISTORY_ACTION_CREATE_CODE SYSRES_CONST_HISTORY_ACTION_DELETE_CODE SYSRES_CONST_HISTORY_ACTION_EDIT_CODE SYSRES_CONST_HOUR_CHAR SYSRES_CONST_ID_REQUISITE_CODE SYSRES_CONST_IDSPS_REQUISITE_CODE SYSRES_CONST_IMAGE_MODE_COLOR SYSRES_CONST_IMAGE_MODE_GREYSCALE SYSRES_CONST_IMAGE_MODE_MONOCHROME SYSRES_CONST_IMPORTANCE_HIGH SYSRES_CONST_IMPORTANCE_LOW SYSRES_CONST_IMPORTANCE_NORMAL SYSRES_CONST_IN_DESIGN_VERSION_STATE_PICK_VALUE SYSRES_CONST_INCOMING_WORK_RULE_TYPE_CODE SYSRES_CONST_INT_REQUISITE SYSRES_CONST_INT_REQUISITE_TYPE SYSRES_CONST_INTEGER_NUMBER_FORMAT_CHAR SYSRES_CONST_INTEGER_TYPE_CHAR SYSRES_CONST_IS_GENERATED_REQUISITE_NEGATIVE_VALUE SYSRES_CONST_IS_PUBLIC_ROLE_REQUISITE_CODE SYSRES_CONST_IS_REMOTE_USER_NEGATIVE_VALUE SYSRES_CONST_IS_REMOTE_USER_POSITIVE_VALUE SYSRES_CONST_IS_STORED_REQUISITE_NEGATIVE_VALUE SYSRES_CONST_IS_STORED_REQUISITE_STORED_VALUE SYSRES_CONST_ITALIC_LIFE_CYCLE_STAGE_DRAW_STYLE SYSRES_CONST_JOB_BLOCK_DESCRIPTION SYSRES_CONST_JOB_KIND_CONTROL_JOB SYSRES_CONST_JOB_KIND_JOB SYSRES_CONST_JOB_KIND_NOTICE SYSRES_CONST_JOB_STATE_ABORTED SYSRES_CONST_JOB_STATE_COMPLETE SYSRES_CONST_JOB_STATE_WORKING SYSRES_CONST_KIND_REQUISITE_CODE SYSRES_CONST_KIND_REQUISITE_NAME SYSRES_CONST_KINDS_CREATE_SHADOW_COPIES_REQUISITE_CODE SYSRES_CONST_KINDS_DEFAULT_EDOC_LIFE_STAGE_REQUISITE_CODE SYSRES_CONST_KINDS_EDOC_ALL_TEPLATES_ALLOWED_REQUISITE_CODE SYSRES_CONST_KINDS_EDOC_ALLOW_LIFE_CYCLE_STAGE_CHANGING_REQUISITE_CODE SYSRES_CONST_KINDS_EDOC_ALLOW_MULTIPLE_ACTIVE_VERSIONS_REQUISITE_CODE SYSRES_CONST_KINDS_EDOC_SHARE_ACCES_RIGHTS_BY_DEFAULT_CODE SYSRES_CONST_KINDS_EDOC_TEMPLATE_REQUISITE_CODE SYSRES_CONST_KINDS_EDOC_TYPE_REQUISITE_CODE SYSRES_CONST_KINDS_SIGNERS_REQUISITES_CODE SYSRES_CONST_KOD_INPUT_TYPE SYSRES_CONST_LAST_UPDATE_DATE_REQUISITE_CODE SYSRES_CONST_LIFE_CYCLE_START_STAGE_REQUISITE_CODE SYSRES_CONST_LILAC_LIFE_CYCLE_STAGE_FONT_COLOR SYSRES_CONST_LINK_OBJECT_KIND_COMPONENT SYSRES_CONST_LINK_OBJECT_KIND_DOCUMENT SYSRES_CONST_LINK_OBJECT_KIND_EDOC SYSRES_CONST_LINK_OBJECT_KIND_FOLDER SYSRES_CONST_LINK_OBJECT_KIND_JOB SYSRES_CONST_LINK_OBJECT_KIND_REFERENCE SYSRES_CONST_LINK_OBJECT_KIND_TASK SYSRES_CONST_LINK_REF_TYPE_REQUISITE_CODE SYSRES_CONST_LIST_REFERENCE_MODE_NAME SYSRES_CONST_LOCALIZATION_DICTIONARY_MAIN_VIEW_CODE SYSRES_CONST_MAIN_VIEW_CODE SYSRES_CONST_MANUAL_ENUM_METHOD_FLAG SYSRES_CONST_MASTER_COMP_TYPE_REQUISITE_CODE SYSRES_CONST_MASTER_TABLE_REC_ID_REQUISITE_CODE SYSRES_CONST_MAXIMIZED_MODE_NAME SYSRES_CONST_ME_VALUE SYSRES_CONST_MESSAGE_ATTENTION_CAPTION SYSRES_CONST_MESSAGE_CONFIRMATION_CAPTION SYSRES_CONST_MESSAGE_ERROR_CAPTION SYSRES_CONST_MESSAGE_INFORMATION_CAPTION SYSRES_CONST_MINIMIZED_MODE_NAME SYSRES_CONST_MINUTE_CHAR SYSRES_CONST_MODULE_REQUISITE_CODE SYSRES_CONST_MONITORING_BLOCK_DESCRIPTION SYSRES_CONST_MONTH_FORMAT_VALUE SYSRES_CONST_NAME_LOCALIZE_ID_REQUISITE_CODE SYSRES_CONST_NAME_REQUISITE_CODE SYSRES_CONST_NAME_SINGULAR_REQUISITE_CODE SYSRES_CONST_NAMEAN_INPUT_TYPE SYSRES_CONST_NEGATIVE_PICK_VALUE SYSRES_CONST_NEGATIVE_VALUE SYSRES_CONST_NO SYSRES_CONST_NO_PICK_VALUE SYSRES_CONST_NO_SIGNATURE_REQUISITE_CODE SYSRES_CONST_NO_VALUE SYSRES_CONST_NONE_ACCESS_RIGHTS_TYPE_CODE SYSRES_CONST_NONOPERATING_RECORD_FLAG_VALUE SYSRES_CONST_NONOPERATING_RECORD_FLAG_VALUE_MASCULINE SYSRES_CONST_NORMAL_ACCESS_RIGHTS_TYPE_CODE SYSRES_CONST_NORMAL_LIFE_CYCLE_STAGE_DRAW_STYLE SYSRES_CONST_NORMAL_MODE_NAME SYSRES_CONST_NOT_ALLOWED_ACCESS_TYPE_CODE SYSRES_CONST_NOT_ALLOWED_ACCESS_TYPE_NAME SYSRES_CONST_NOTE_REQUISITE_CODE SYSRES_CONST_NOTICE_BLOCK_DESCRIPTION SYSRES_CONST_NUM_REQUISITE SYSRES_CONST_NUM_STR_REQUISITE_CODE SYSRES_CONST_NUMERATION_AUTO_NOT_STRONG SYSRES_CONST_NUMERATION_AUTO_STRONG SYSRES_CONST_NUMERATION_FROM_DICTONARY SYSRES_CONST_NUMERATION_MANUAL SYSRES_CONST_NUMERIC_TYPE_CHAR SYSRES_CONST_NUMREQ_REQUISITE_CODE SYSRES_CONST_OBSOLETE_VERSION_STATE_PICK_VALUE SYSRES_CONST_OPERATING_RECORD_FLAG_VALUE SYSRES_CONST_OPERATING_RECORD_FLAG_VALUE_CODE SYSRES_CONST_OPERATING_RECORD_FLAG_VALUE_FEMININE SYSRES_CONST_OPERATING_RECORD_FLAG_VALUE_MASCULINE SYSRES_CONST_OPTIONAL_FORM_COMP_REQCODE_PREFIX SYSRES_CONST_ORANGE_LIFE_CYCLE_STAGE_FONT_COLOR SYSRES_CONST_ORIGINALREF_REQUISITE_CODE SYSRES_CONST_OURFIRM_REF_CODE SYSRES_CONST_OURFIRM_REQUISITE_CODE SYSRES_CONST_OURFIRM_VAR SYSRES_CONST_OUTGOING_WORK_RULE_TYPE_CODE SYSRES_CONST_PICK_NEGATIVE_RESULT SYSRES_CONST_PICK_POSITIVE_RESULT SYSRES_CONST_PICK_REQUISITE SYSRES_CONST_PICK_REQUISITE_TYPE SYSRES_CONST_PICK_TYPE_CHAR SYSRES_CONST_PLAN_STATUS_REQUISITE_CODE SYSRES_CONST_PLATFORM_VERSION_COMMENT SYSRES_CONST_PLUGINS_SETTINGS_DESCRIPTION_REQUISITE_CODE SYSRES_CONST_POSITIVE_PICK_VALUE SYSRES_CONST_POWER_TO_CREATE_ACTION_CODE SYSRES_CONST_POWER_TO_SIGN_ACTION_CODE SYSRES_CONST_PRIORITY_REQUISITE_CODE SYSRES_CONST_QUALIFIED_TASK_TYPE SYSRES_CONST_QUALIFIED_TASK_TYPE_CODE SYSRES_CONST_RECSTAT_REQUISITE_CODE SYSRES_CONST_RED_LIFE_CYCLE_STAGE_FONT_COLOR SYSRES_CONST_REF_ID_T_REF_TYPE_REQUISITE_CODE SYSRES_CONST_REF_REQUISITE SYSRES_CONST_REF_REQUISITE_TYPE SYSRES_CONST_REF_REQUISITES_REFERENCE_CODE_SELECTED_REQUISITE SYSRES_CONST_REFERENCE_RECORD_HISTORY_CREATE_ACTION_CODE SYSRES_CONST_REFERENCE_RECORD_HISTORY_DELETE_ACTION_CODE SYSRES_CONST_REFERENCE_RECORD_HISTORY_MODIFY_ACTION_CODE SYSRES_CONST_REFERENCE_TYPE_CHAR SYSRES_CONST_REFERENCE_TYPE_REQUISITE_NAME SYSRES_CONST_REFERENCES_ADD_PARAMS_REQUISITE_CODE SYSRES_CONST_REFERENCES_DISPLAY_REQUISITE_REQUISITE_CODE SYSRES_CONST_REMOTE_SERVER_STATUS_WORKING SYSRES_CONST_REMOTE_SERVER_TYPE_MAIN SYSRES_CONST_REMOTE_SERVER_TYPE_SECONDARY SYSRES_CONST_REMOTE_USER_FLAG_VALUE_CODE SYSRES_CONST_REPORT_APP_EDITOR_INTERNAL SYSRES_CONST_REPORT_BASE_REPORT_ID_REQUISITE_CODE SYSRES_CONST_REPORT_BASE_REPORT_REQUISITE_CODE SYSRES_CONST_REPORT_SCRIPT_REQUISITE_CODE SYSRES_CONST_REPORT_TEMPLATE_REQUISITE_CODE SYSRES_CONST_REPORT_VIEWER_CODE_REQUISITE_CODE SYSRES_CONST_REQ_ALLOW_COMPONENT_DEFAULT_VALUE SYSRES_CONST_REQ_ALLOW_RECORD_DEFAULT_VALUE SYSRES_CONST_REQ_ALLOW_SERVER_COMPONENT_DEFAULT_VALUE SYSRES_CONST_REQ_MODE_AVAILABLE_CODE SYSRES_CONST_REQ_MODE_EDIT_CODE SYSRES_CONST_REQ_MODE_HIDDEN_CODE SYSRES_CONST_REQ_MODE_NOT_AVAILABLE_CODE SYSRES_CONST_REQ_MODE_VIEW_CODE SYSRES_CONST_REQ_NUMBER_REQUISITE_CODE SYSRES_CONST_REQ_SECTION_VALUE SYSRES_CONST_REQ_TYPE_VALUE SYSRES_CONST_REQUISITE_FORMAT_BY_UNIT SYSRES_CONST_REQUISITE_FORMAT_DATE_FULL SYSRES_CONST_REQUISITE_FORMAT_DATE_TIME SYSRES_CONST_REQUISITE_FORMAT_LEFT SYSRES_CONST_REQUISITE_FORMAT_RIGHT SYSRES_CONST_REQUISITE_FORMAT_WITHOUT_UNIT SYSRES_CONST_REQUISITE_NUMBER_REQUISITE_CODE SYSRES_CONST_REQUISITE_SECTION_ACTIONS SYSRES_CONST_REQUISITE_SECTION_BUTTON SYSRES_CONST_REQUISITE_SECTION_BUTTONS SYSRES_CONST_REQUISITE_SECTION_CARD SYSRES_CONST_REQUISITE_SECTION_TABLE SYSRES_CONST_REQUISITE_SECTION_TABLE10 SYSRES_CONST_REQUISITE_SECTION_TABLE11 SYSRES_CONST_REQUISITE_SECTION_TABLE12 SYSRES_CONST_REQUISITE_SECTION_TABLE13 SYSRES_CONST_REQUISITE_SECTION_TABLE14 SYSRES_CONST_REQUISITE_SECTION_TABLE15 SYSRES_CONST_REQUISITE_SECTION_TABLE16 SYSRES_CONST_REQUISITE_SECTION_TABLE17 SYSRES_CONST_REQUISITE_SECTION_TABLE18 SYSRES_CONST_REQUISITE_SECTION_TABLE19 SYSRES_CONST_REQUISITE_SECTION_TABLE2 SYSRES_CONST_REQUISITE_SECTION_TABLE20 SYSRES_CONST_REQUISITE_SECTION_TABLE21 SYSRES_CONST_REQUISITE_SECTION_TABLE22 SYSRES_CONST_REQUISITE_SECTION_TABLE23 SYSRES_CONST_REQUISITE_SECTION_TABLE24 SYSRES_CONST_REQUISITE_SECTION_TABLE3 SYSRES_CONST_REQUISITE_SECTION_TABLE4 SYSRES_CONST_REQUISITE_SECTION_TABLE5 SYSRES_CONST_REQUISITE_SECTION_TABLE6 SYSRES_CONST_REQUISITE_SECTION_TABLE7 SYSRES_CONST_REQUISITE_SECTION_TABLE8 SYSRES_CONST_REQUISITE_SECTION_TABLE9 SYSRES_CONST_REQUISITES_PSEUDOREFERENCE_REQUISITE_NUMBER_REQUISITE_CODE SYSRES_CONST_RIGHT_ALIGNMENT_CODE SYSRES_CONST_ROLES_REFERENCE_CODE SYSRES_CONST_ROUTE_STEP_AFTER_RUS SYSRES_CONST_ROUTE_STEP_AND_CONDITION_RUS SYSRES_CONST_ROUTE_STEP_OR_CONDITION_RUS SYSRES_CONST_ROUTE_TYPE_COMPLEX SYSRES_CONST_ROUTE_TYPE_PARALLEL SYSRES_CONST_ROUTE_TYPE_SERIAL SYSRES_CONST_SBDATASETDESC_NEGATIVE_VALUE SYSRES_CONST_SBDATASETDESC_POSITIVE_VALUE SYSRES_CONST_SBVIEWSDESC_POSITIVE_VALUE SYSRES_CONST_SCRIPT_BLOCK_DESCRIPTION SYSRES_CONST_SEARCH_BY_TEXT_REQUISITE_CODE SYSRES_CONST_SEARCHES_COMPONENT_CONTENT SYSRES_CONST_SEARCHES_CRITERIA_ACTION_NAME SYSRES_CONST_SEARCHES_EDOC_CONTENT SYSRES_CONST_SEARCHES_FOLDER_CONTENT SYSRES_CONST_SEARCHES_JOB_CONTENT SYSRES_CONST_SEARCHES_REFERENCE_CODE SYSRES_CONST_SEARCHES_TASK_CONTENT SYSRES_CONST_SECOND_CHAR SYSRES_CONST_SECTION_REQUISITE_ACTIONS_VALUE SYSRES_CONST_SECTION_REQUISITE_CARD_VALUE SYSRES_CONST_SECTION_REQUISITE_CODE SYSRES_CONST_SECTION_REQUISITE_DETAIL_1_VALUE SYSRES_CONST_SECTION_REQUISITE_DETAIL_2_VALUE SYSRES_CONST_SECTION_REQUISITE_DETAIL_3_VALUE SYSRES_CONST_SECTION_REQUISITE_DETAIL_4_VALUE SYSRES_CONST_SECTION_REQUISITE_DETAIL_5_VALUE SYSRES_CONST_SECTION_REQUISITE_DETAIL_6_VALUE SYSRES_CONST_SELECT_REFERENCE_MODE_NAME SYSRES_CONST_SELECT_TYPE_SELECTABLE SYSRES_CONST_SELECT_TYPE_SELECTABLE_ONLY_CHILD SYSRES_CONST_SELECT_TYPE_SELECTABLE_WITH_CHILD SYSRES_CONST_SELECT_TYPE_UNSLECTABLE SYSRES_CONST_SERVER_TYPE_MAIN SYSRES_CONST_SERVICE_USER_CATEGORY_FIELD_VALUE SYSRES_CONST_SETTINGS_USER_REQUISITE_CODE SYSRES_CONST_SIGNATURE_AND_ENCODE_CERTIFICATE_TYPE_CODE SYSRES_CONST_SIGNATURE_CERTIFICATE_TYPE_CODE SYSRES_CONST_SINGULAR_TITLE_REQUISITE_CODE SYSRES_CONST_SQL_SERVER_AUTHENTIFICATION_FLAG_VALUE_CODE SYSRES_CONST_SQL_SERVER_ENCODE_AUTHENTIFICATION_FLAG_VALUE_CODE SYSRES_CONST_STANDART_ROUTE_REFERENCE_CODE SYSRES_CONST_STANDART_ROUTE_REFERENCE_COMMENT_REQUISITE_CODE SYSRES_CONST_STANDART_ROUTES_GROUPS_REFERENCE_CODE SYSRES_CONST_STATE_REQ_NAME SYSRES_CONST_STATE_REQUISITE_ACTIVE_VALUE SYSRES_CONST_STATE_REQUISITE_CLOSED_VALUE SYSRES_CONST_STATE_REQUISITE_CODE SYSRES_CONST_STATIC_ROLE_TYPE_CODE SYSRES_CONST_STATUS_PLAN_DEFAULT_VALUE SYSRES_CONST_STATUS_VALUE_AUTOCLEANING SYSRES_CONST_STATUS_VALUE_BLUE_SQUARE SYSRES_CONST_STATUS_VALUE_COMPLETE SYSRES_CONST_STATUS_VALUE_GREEN_SQUARE SYSRES_CONST_STATUS_VALUE_ORANGE_SQUARE SYSRES_CONST_STATUS_VALUE_PURPLE_SQUARE SYSRES_CONST_STATUS_VALUE_RED_SQUARE SYSRES_CONST_STATUS_VALUE_SUSPEND SYSRES_CONST_STATUS_VALUE_YELLOW_SQUARE SYSRES_CONST_STDROUTE_SHOW_TO_USERS_REQUISITE_CODE SYSRES_CONST_STORAGE_TYPE_FILE SYSRES_CONST_STORAGE_TYPE_SQL_SERVER SYSRES_CONST_STR_REQUISITE SYSRES_CONST_STRIKEOUT_LIFE_CYCLE_STAGE_DRAW_STYLE SYSRES_CONST_STRING_FORMAT_LEFT_ALIGN_CHAR SYSRES_CONST_STRING_FORMAT_RIGHT_ALIGN_CHAR SYSRES_CONST_STRING_REQUISITE_CODE SYSRES_CONST_STRING_REQUISITE_TYPE SYSRES_CONST_STRING_TYPE_CHAR SYSRES_CONST_SUBSTITUTES_PSEUDOREFERENCE_CODE SYSRES_CONST_SUBTASK_BLOCK_DESCRIPTION SYSRES_CONST_SYSTEM_SETTING_CURRENT_USER_PARAM_VALUE SYSRES_CONST_SYSTEM_SETTING_EMPTY_VALUE_PARAM_VALUE SYSRES_CONST_SYSTEM_VERSION_COMMENT SYSRES_CONST_TASK_ACCESS_TYPE_ALL SYSRES_CONST_TASK_ACCESS_TYPE_ALL_MEMBERS SYSRES_CONST_TASK_ACCESS_TYPE_MANUAL SYSRES_CONST_TASK_ENCODE_TYPE_CERTIFICATION SYSRES_CONST_TASK_ENCODE_TYPE_CERTIFICATION_AND_PASSWORD SYSRES_CONST_TASK_ENCODE_TYPE_NONE SYSRES_CONST_TASK_ENCODE_TYPE_PASSWORD SYSRES_CONST_TASK_ROUTE_ALL_CONDITION SYSRES_CONST_TASK_ROUTE_AND_CONDITION SYSRES_CONST_TASK_ROUTE_OR_CONDITION SYSRES_CONST_TASK_STATE_ABORTED SYSRES_CONST_TASK_STATE_COMPLETE SYSRES_CONST_TASK_STATE_CONTINUED SYSRES_CONST_TASK_STATE_CONTROL SYSRES_CONST_TASK_STATE_INIT SYSRES_CONST_TASK_STATE_WORKING SYSRES_CONST_TASK_TITLE SYSRES_CONST_TASK_TYPES_GROUPS_REFERENCE_CODE SYSRES_CONST_TASK_TYPES_REFERENCE_CODE SYSRES_CONST_TEMPLATES_REFERENCE_CODE SYSRES_CONST_TEST_DATE_REQUISITE_NAME SYSRES_CONST_TEST_DEV_DATABASE_NAME SYSRES_CONST_TEST_DEV_SYSTEM_CODE SYSRES_CONST_TEST_EDMS_DATABASE_NAME SYSRES_CONST_TEST_EDMS_MAIN_CODE SYSRES_CONST_TEST_EDMS_MAIN_DB_NAME SYSRES_CONST_TEST_EDMS_SECOND_CODE SYSRES_CONST_TEST_EDMS_SECOND_DB_NAME SYSRES_CONST_TEST_EDMS_SYSTEM_CODE SYSRES_CONST_TEST_NUMERIC_REQUISITE_NAME SYSRES_CONST_TEXT_REQUISITE SYSRES_CONST_TEXT_REQUISITE_CODE SYSRES_CONST_TEXT_REQUISITE_TYPE SYSRES_CONST_TEXT_TYPE_CHAR SYSRES_CONST_TYPE_CODE_REQUISITE_CODE SYSRES_CONST_TYPE_REQUISITE_CODE SYSRES_CONST_UNDEFINED_LIFE_CYCLE_STAGE_FONT_COLOR SYSRES_CONST_UNITS_SECTION_ID_REQUISITE_CODE SYSRES_CONST_UNITS_SECTION_REQUISITE_CODE SYSRES_CONST_UNOPERATING_RECORD_FLAG_VALUE_CODE SYSRES_CONST_UNSTORED_DATA_REQUISITE_CODE SYSRES_CONST_UNSTORED_DATA_REQUISITE_NAME SYSRES_CONST_USE_ACCESS_TYPE_CODE SYSRES_CONST_USE_ACCESS_TYPE_NAME SYSRES_CONST_USER_ACCOUNT_TYPE_VALUE_CODE SYSRES_CONST_USER_ADDITIONAL_INFORMATION_REQUISITE_CODE SYSRES_CONST_USER_AND_GROUP_ID_FROM_PSEUDOREFERENCE_REQUISITE_CODE SYSRES_CONST_USER_CATEGORY_NORMAL SYSRES_CONST_USER_CERTIFICATE_REQUISITE_CODE SYSRES_CONST_USER_CERTIFICATE_STATE_REQUISITE_CODE SYSRES_CONST_USER_CERTIFICATE_SUBJECT_NAME_REQUISITE_CODE SYSRES_CONST_USER_CERTIFICATE_THUMBPRINT_REQUISITE_CODE SYSRES_CONST_USER_COMMON_CATEGORY SYSRES_CONST_USER_COMMON_CATEGORY_CODE SYSRES_CONST_USER_FULL_NAME_REQUISITE_CODE SYSRES_CONST_USER_GROUP_TYPE_REQUISITE_CODE SYSRES_CONST_USER_LOGIN_REQUISITE_CODE SYSRES_CONST_USER_REMOTE_CONTROLLER_REQUISITE_CODE SYSRES_CONST_USER_REMOTE_SYSTEM_REQUISITE_CODE SYSRES_CONST_USER_RIGHTS_T_REQUISITE_CODE SYSRES_CONST_USER_SERVER_NAME_REQUISITE_CODE SYSRES_CONST_USER_SERVICE_CATEGORY SYSRES_CONST_USER_SERVICE_CATEGORY_CODE SYSRES_CONST_USER_STATUS_ADMINISTRATOR_CODE SYSRES_CONST_USER_STATUS_ADMINISTRATOR_NAME SYSRES_CONST_USER_STATUS_DEVELOPER_CODE SYSRES_CONST_USER_STATUS_DEVELOPER_NAME SYSRES_CONST_USER_STATUS_DISABLED_CODE SYSRES_CONST_USER_STATUS_DISABLED_NAME SYSRES_CONST_USER_STATUS_SYSTEM_DEVELOPER_CODE SYSRES_CONST_USER_STATUS_USER_CODE SYSRES_CONST_USER_STATUS_USER_NAME SYSRES_CONST_USER_STATUS_USER_NAME_DEPRECATED SYSRES_CONST_USER_TYPE_FIELD_VALUE_USER SYSRES_CONST_USER_TYPE_REQUISITE_CODE SYSRES_CONST_USERS_CONTROLLER_REQUISITE_CODE SYSRES_CONST_USERS_IS_MAIN_SERVER_REQUISITE_CODE SYSRES_CONST_USERS_REFERENCE_CODE SYSRES_CONST_USERS_REGISTRATION_CERTIFICATES_ACTION_NAME SYSRES_CONST_USERS_REQUISITE_CODE SYSRES_CONST_USERS_SYSTEM_REQUISITE_CODE SYSRES_CONST_USERS_USER_ACCESS_RIGHTS_TYPR_REQUISITE_CODE SYSRES_CONST_USERS_USER_AUTHENTICATION_REQUISITE_CODE SYSRES_CONST_USERS_USER_COMPONENT_REQUISITE_CODE SYSRES_CONST_USERS_USER_GROUP_REQUISITE_CODE SYSRES_CONST_USERS_VIEW_CERTIFICATES_ACTION_NAME SYSRES_CONST_VIEW_DEFAULT_CODE SYSRES_CONST_VIEW_DEFAULT_NAME SYSRES_CONST_VIEWER_REQUISITE_CODE SYSRES_CONST_WAITING_BLOCK_DESCRIPTION SYSRES_CONST_WIZARD_FORM_LABEL_TEST_STRING SYSRES_CONST_WIZARD_QUERY_PARAM_HEIGHT_ETALON_STRING SYSRES_CONST_WIZARD_REFERENCE_COMMENT_REQUISITE_CODE SYSRES_CONST_WORK_RULES_DESCRIPTION_REQUISITE_CODE SYSRES_CONST_WORK_TIME_CALENDAR_REFERENCE_CODE SYSRES_CONST_WORK_WORKFLOW_HARD_ROUTE_TYPE_VALUE SYSRES_CONST_WORK_WORKFLOW_HARD_ROUTE_TYPE_VALUE_CODE SYSRES_CONST_WORK_WORKFLOW_HARD_ROUTE_TYPE_VALUE_CODE_RUS SYSRES_CONST_WORK_WORKFLOW_SOFT_ROUTE_TYPE_VALUE_CODE_RUS SYSRES_CONST_WORKFLOW_ROUTE_TYPR_HARD SYSRES_CONST_WORKFLOW_ROUTE_TYPR_SOFT SYSRES_CONST_XML_ENCODING SYSRES_CONST_XREC_STAT_REQUISITE_CODE SYSRES_CONST_XRECID_FIELD_NAME SYSRES_CONST_YES SYSRES_CONST_YES_NO_2_REQUISITE_CODE SYSRES_CONST_YES_NO_REQUISITE_CODE SYSRES_CONST_YES_NO_T_REF_TYPE_REQUISITE_CODE SYSRES_CONST_YES_PICK_VALUE SYSRES_CONST_YES_VALUE CR FALSE nil NO_VALUE NULL TAB TRUE YES_VALUE ADMINISTRATORS_GROUP_NAME CUSTOMIZERS_GROUP_NAME DEVELOPERS_GROUP_NAME SERVICE_USERS_GROUP_NAME DECISION_BLOCK_FIRST_OPERAND_PROPERTY DECISION_BLOCK_NAME_PROPERTY DECISION_BLOCK_OPERATION_PROPERTY DECISION_BLOCK_RESULT_TYPE_PROPERTY DECISION_BLOCK_SECOND_OPERAND_PROPERTY ANY_FILE_EXTENTION COMPRESSED_DOCUMENT_EXTENSION EXTENDED_DOCUMENT_EXTENSION SHORT_COMPRESSED_DOCUMENT_EXTENSION SHORT_EXTENDED_DOCUMENT_EXTENSION JOB_BLOCK_ABORT_DEADLINE_PROPERTY JOB_BLOCK_AFTER_FINISH_EVENT JOB_BLOCK_AFTER_QUERY_PARAMETERS_EVENT JOB_BLOCK_ATTACHMENT_PROPERTY JOB_BLOCK_ATTACHMENTS_RIGHTS_GROUP_PROPERTY JOB_BLOCK_ATTACHMENTS_RIGHTS_TYPE_PROPERTY JOB_BLOCK_BEFORE_QUERY_PARAMETERS_EVENT JOB_BLOCK_BEFORE_START_EVENT JOB_BLOCK_CREATED_JOBS_PROPERTY JOB_BLOCK_DEADLINE_PROPERTY JOB_BLOCK_EXECUTION_RESULTS_PROPERTY JOB_BLOCK_IS_PARALLEL_PROPERTY JOB_BLOCK_IS_RELATIVE_ABORT_DEADLINE_PROPERTY JOB_BLOCK_IS_RELATIVE_DEADLINE_PROPERTY JOB_BLOCK_JOB_TEXT_PROPERTY JOB_BLOCK_NAME_PROPERTY JOB_BLOCK_NEED_SIGN_ON_PERFORM_PROPERTY JOB_BLOCK_PERFORMER_PROPERTY JOB_BLOCK_RELATIVE_ABORT_DEADLINE_TYPE_PROPERTY JOB_BLOCK_RELATIVE_DEADLINE_TYPE_PROPERTY JOB_BLOCK_SUBJECT_PROPERTY ENGLISH_LANGUAGE_CODE RUSSIAN_LANGUAGE_CODE smHidden smMaximized smMinimized smNormal wmNo wmYes COMPONENT_TOKEN_LINK_KIND DOCUMENT_LINK_KIND EDOCUMENT_LINK_KIND FOLDER_LINK_KIND JOB_LINK_KIND REFERENCE_LINK_KIND TASK_LINK_KIND COMPONENT_TOKEN_LOCK_TYPE EDOCUMENT_VERSION_LOCK_TYPE MONITOR_BLOCK_AFTER_FINISH_EVENT MONITOR_BLOCK_BEFORE_START_EVENT MONITOR_BLOCK_DEADLINE_PROPERTY MONITOR_BLOCK_INTERVAL_PROPERTY MONITOR_BLOCK_INTERVAL_TYPE_PROPERTY MONITOR_BLOCK_IS_RELATIVE_DEADLINE_PROPERTY MONITOR_BLOCK_NAME_PROPERTY MONITOR_BLOCK_RELATIVE_DEADLINE_TYPE_PROPERTY MONITOR_BLOCK_SEARCH_SCRIPT_PROPERTY NOTICE_BLOCK_AFTER_FINISH_EVENT NOTICE_BLOCK_ATTACHMENT_PROPERTY NOTICE_BLOCK_ATTACHMENTS_RIGHTS_GROUP_PROPERTY NOTICE_BLOCK_ATTACHMENTS_RIGHTS_TYPE_PROPERTY NOTICE_BLOCK_BEFORE_START_EVENT NOTICE_BLOCK_CREATED_NOTICES_PROPERTY NOTICE_BLOCK_DEADLINE_PROPERTY NOTICE_BLOCK_IS_RELATIVE_DEADLINE_PROPERTY NOTICE_BLOCK_NAME_PROPERTY NOTICE_BLOCK_NOTICE_TEXT_PROPERTY NOTICE_BLOCK_PERFORMER_PROPERTY NOTICE_BLOCK_RELATIVE_DEADLINE_TYPE_PROPERTY NOTICE_BLOCK_SUBJECT_PROPERTY dseAfterCancel dseAfterClose dseAfterDelete dseAfterDeleteOutOfTransaction dseAfterInsert dseAfterOpen dseAfterScroll dseAfterUpdate dseAfterUpdateOutOfTransaction dseBeforeCancel dseBeforeClose dseBeforeDelete dseBeforeDetailUpdate dseBeforeInsert dseBeforeOpen dseBeforeUpdate dseOnAnyRequisiteChange dseOnCloseRecord dseOnDeleteError dseOnOpenRecord dseOnPrepareUpdate dseOnUpdateError dseOnUpdateRatifiedRecord dseOnValidDelete dseOnValidUpdate reOnChange reOnChangeValues SELECTION_BEGIN_ROUTE_EVENT SELECTION_END_ROUTE_EVENT CURRENT_PERIOD_IS_REQUIRED PREVIOUS_CARD_TYPE_NAME SHOW_RECORD_PROPERTIES_FORM ACCESS_RIGHTS_SETTING_DIALOG_CODE ADMINISTRATOR_USER_CODE ANALYTIC_REPORT_TYPE asrtHideLocal asrtHideRemote CALCULATED_ROLE_TYPE_CODE COMPONENTS_REFERENCE_DEVELOPER_VIEW_CODE DCTS_TEST_PROTOCOLS_FOLDER_PATH E_EDOC_VERSION_ALREADY_APPROVINGLY_SIGNED E_EDOC_VERSION_ALREADY_APPROVINGLY_SIGNED_BY_USER E_EDOC_VERSION_ALREDY_SIGNED E_EDOC_VERSION_ALREDY_SIGNED_BY_USER EDOC_TYPES_CODE_REQUISITE_FIELD_NAME EDOCUMENTS_ALIAS_NAME FILES_FOLDER_PATH FILTER_OPERANDS_DELIMITER FILTER_OPERATIONS_DELIMITER FORMCARD_NAME FORMLIST_NAME GET_EXTENDED_DOCUMENT_EXTENSION_CREATION_MODE GET_EXTENDED_DOCUMENT_EXTENSION_IMPORT_MODE INTEGRATED_REPORT_TYPE IS_BUILDER_APPLICATION_ROLE IS_BUILDER_APPLICATION_ROLE2 IS_BUILDER_USERS ISBSYSDEV LOG_FOLDER_PATH mbCancel mbNo mbNoToAll mbOK mbYes mbYesToAll MEMORY_DATASET_DESRIPTIONS_FILENAME mrNo mrNoToAll mrYes mrYesToAll MULTIPLE_SELECT_DIALOG_CODE NONOPERATING_RECORD_FLAG_FEMININE NONOPERATING_RECORD_FLAG_MASCULINE OPERATING_RECORD_FLAG_FEMININE OPERATING_RECORD_FLAG_MASCULINE PROFILING_SETTINGS_COMMON_SETTINGS_CODE_VALUE PROGRAM_INITIATED_LOOKUP_ACTION ratDelete ratEdit ratInsert REPORT_TYPE REQUIRED_PICK_VALUES_VARIABLE rmCard rmList SBRTE_PROGID_DEV SBRTE_PROGID_RELEASE STATIC_ROLE_TYPE_CODE SUPPRESS_EMPTY_TEMPLATE_CREATION SYSTEM_USER_CODE UPDATE_DIALOG_DATASET USED_IN_OBJECT_HINT_PARAM USER_INITIATED_LOOKUP_ACTION USER_NAME_FORMAT USER_SELECTION_RESTRICTIONS WORKFLOW_TEST_PROTOCOLS_FOLDER_PATH ELS_SUBTYPE_CONTROL_NAME ELS_FOLDER_KIND_CONTROL_NAME REPEAT_PROCESS_CURRENT_OBJECT_EXCEPTION_NAME PRIVILEGE_COMPONENT_FULL_ACCESS PRIVILEGE_DEVELOPMENT_EXPORT PRIVILEGE_DEVELOPMENT_IMPORT PRIVILEGE_DOCUMENT_DELETE PRIVILEGE_ESD PRIVILEGE_FOLDER_DELETE PRIVILEGE_MANAGE_ACCESS_RIGHTS PRIVILEGE_MANAGE_REPLICATION PRIVILEGE_MANAGE_SESSION_SERVER PRIVILEGE_OBJECT_FULL_ACCESS PRIVILEGE_OBJECT_VIEW PRIVILEGE_RESERVE_LICENSE PRIVILEGE_SYSTEM_CUSTOMIZE PRIVILEGE_SYSTEM_DEVELOP PRIVILEGE_SYSTEM_INSTALL PRIVILEGE_TASK_DELETE PRIVILEGE_USER_PLUGIN_SETTINGS_CUSTOMIZE PRIVILEGES_PSEUDOREFERENCE_CODE ACCESS_TYPES_PSEUDOREFERENCE_CODE ALL_AVAILABLE_COMPONENTS_PSEUDOREFERENCE_CODE ALL_AVAILABLE_PRIVILEGES_PSEUDOREFERENCE_CODE ALL_REPLICATE_COMPONENTS_PSEUDOREFERENCE_CODE AVAILABLE_DEVELOPERS_COMPONENTS_PSEUDOREFERENCE_CODE COMPONENTS_PSEUDOREFERENCE_CODE FILTRATER_SETTINGS_CONFLICTS_PSEUDOREFERENCE_CODE GROUPS_PSEUDOREFERENCE_CODE RECEIVE_PROTOCOL_PSEUDOREFERENCE_CODE REFERENCE_REQUISITE_PSEUDOREFERENCE_CODE REFERENCE_REQUISITES_PSEUDOREFERENCE_CODE REFTYPES_PSEUDOREFERENCE_CODE REPLICATION_SEANCES_DIARY_PSEUDOREFERENCE_CODE SEND_PROTOCOL_PSEUDOREFERENCE_CODE SUBSTITUTES_PSEUDOREFERENCE_CODE SYSTEM_SETTINGS_PSEUDOREFERENCE_CODE UNITS_PSEUDOREFERENCE_CODE USERS_PSEUDOREFERENCE_CODE VIEWERS_PSEUDOREFERENCE_CODE CERTIFICATE_TYPE_ENCRYPT CERTIFICATE_TYPE_SIGN CERTIFICATE_TYPE_SIGN_AND_ENCRYPT STORAGE_TYPE_FILE STORAGE_TYPE_NAS_CIFS STORAGE_TYPE_SAPERION STORAGE_TYPE_SQL_SERVER COMPTYPE2_REQUISITE_DOCUMENTS_VALUE COMPTYPE2_REQUISITE_TASKS_VALUE COMPTYPE2_REQUISITE_FOLDERS_VALUE COMPTYPE2_REQUISITE_REFERENCES_VALUE SYSREQ_CODE SYSREQ_COMPTYPE2 SYSREQ_CONST_AVAILABLE_FOR_WEB SYSREQ_CONST_COMMON_CODE SYSREQ_CONST_COMMON_VALUE SYSREQ_CONST_FIRM_CODE SYSREQ_CONST_FIRM_STATUS SYSREQ_CONST_FIRM_VALUE SYSREQ_CONST_SERVER_STATUS SYSREQ_CONTENTS SYSREQ_DATE_OPEN SYSREQ_DATE_CLOSE SYSREQ_DESCRIPTION SYSREQ_DESCRIPTION_LOCALIZE_ID SYSREQ_DOUBLE SYSREQ_EDOC_ACCESS_TYPE SYSREQ_EDOC_AUTHOR SYSREQ_EDOC_CREATED SYSREQ_EDOC_DELEGATE_RIGHTS_REQUISITE_CODE SYSREQ_EDOC_EDITOR SYSREQ_EDOC_ENCODE_TYPE SYSREQ_EDOC_ENCRYPTION_PLUGIN_NAME SYSREQ_EDOC_ENCRYPTION_PLUGIN_VERSION SYSREQ_EDOC_EXPORT_DATE SYSREQ_EDOC_EXPORTER SYSREQ_EDOC_KIND SYSREQ_EDOC_LIFE_STAGE_NAME SYSREQ_EDOC_LOCKED_FOR_SERVER_CODE SYSREQ_EDOC_MODIFIED SYSREQ_EDOC_NAME SYSREQ_EDOC_NOTE SYSREQ_EDOC_QUALIFIED_ID SYSREQ_EDOC_SESSION_KEY SYSREQ_EDOC_SESSION_KEY_ENCRYPTION_PLUGIN_NAME SYSREQ_EDOC_SESSION_KEY_ENCRYPTION_PLUGIN_VERSION SYSREQ_EDOC_SIGNATURE_TYPE SYSREQ_EDOC_SIGNED SYSREQ_EDOC_STORAGE SYSREQ_EDOC_STORAGES_ARCHIVE_STORAGE SYSREQ_EDOC_STORAGES_CHECK_RIGHTS SYSREQ_EDOC_STORAGES_COMPUTER_NAME SYSREQ_EDOC_STORAGES_EDIT_IN_STORAGE SYSREQ_EDOC_STORAGES_EXECUTIVE_STORAGE SYSREQ_EDOC_STORAGES_FUNCTION SYSREQ_EDOC_STORAGES_INITIALIZED SYSREQ_EDOC_STORAGES_LOCAL_PATH SYSREQ_EDOC_STORAGES_SAPERION_DATABASE_NAME SYSREQ_EDOC_STORAGES_SEARCH_BY_TEXT SYSREQ_EDOC_STORAGES_SERVER_NAME SYSREQ_EDOC_STORAGES_SHARED_SOURCE_NAME SYSREQ_EDOC_STORAGES_TYPE SYSREQ_EDOC_TEXT_MODIFIED SYSREQ_EDOC_TYPE_ACT_CODE SYSREQ_EDOC_TYPE_ACT_DESCRIPTION SYSREQ_EDOC_TYPE_ACT_DESCRIPTION_LOCALIZE_ID SYSREQ_EDOC_TYPE_ACT_ON_EXECUTE SYSREQ_EDOC_TYPE_ACT_ON_EXECUTE_EXISTS SYSREQ_EDOC_TYPE_ACT_SECTION SYSREQ_EDOC_TYPE_ADD_PARAMS SYSREQ_EDOC_TYPE_COMMENT SYSREQ_EDOC_TYPE_EVENT_TEXT SYSREQ_EDOC_TYPE_NAME_IN_SINGULAR SYSREQ_EDOC_TYPE_NAME_IN_SINGULAR_LOCALIZE_ID SYSREQ_EDOC_TYPE_NAME_LOCALIZE_ID SYSREQ_EDOC_TYPE_NUMERATION_METHOD SYSREQ_EDOC_TYPE_PSEUDO_REQUISITE_CODE SYSREQ_EDOC_TYPE_REQ_CODE SYSREQ_EDOC_TYPE_REQ_DESCRIPTION SYSREQ_EDOC_TYPE_REQ_DESCRIPTION_LOCALIZE_ID SYSREQ_EDOC_TYPE_REQ_IS_LEADING SYSREQ_EDOC_TYPE_REQ_IS_REQUIRED SYSREQ_EDOC_TYPE_REQ_NUMBER SYSREQ_EDOC_TYPE_REQ_ON_CHANGE SYSREQ_EDOC_TYPE_REQ_ON_CHANGE_EXISTS SYSREQ_EDOC_TYPE_REQ_ON_SELECT SYSREQ_EDOC_TYPE_REQ_ON_SELECT_KIND SYSREQ_EDOC_TYPE_REQ_SECTION SYSREQ_EDOC_TYPE_VIEW_CARD SYSREQ_EDOC_TYPE_VIEW_CODE SYSREQ_EDOC_TYPE_VIEW_COMMENT SYSREQ_EDOC_TYPE_VIEW_IS_MAIN SYSREQ_EDOC_TYPE_VIEW_NAME SYSREQ_EDOC_TYPE_VIEW_NAME_LOCALIZE_ID SYSREQ_EDOC_VERSION_AUTHOR SYSREQ_EDOC_VERSION_CRC SYSREQ_EDOC_VERSION_DATA SYSREQ_EDOC_VERSION_EDITOR SYSREQ_EDOC_VERSION_EXPORT_DATE SYSREQ_EDOC_VERSION_EXPORTER SYSREQ_EDOC_VERSION_HIDDEN SYSREQ_EDOC_VERSION_LIFE_STAGE SYSREQ_EDOC_VERSION_MODIFIED SYSREQ_EDOC_VERSION_NOTE SYSREQ_EDOC_VERSION_SIGNATURE_TYPE SYSREQ_EDOC_VERSION_SIGNED SYSREQ_EDOC_VERSION_SIZE SYSREQ_EDOC_VERSION_SOURCE SYSREQ_EDOC_VERSION_TEXT_MODIFIED SYSREQ_EDOCKIND_DEFAULT_VERSION_STATE_CODE SYSREQ_FOLDER_KIND SYSREQ_FUNC_CATEGORY SYSREQ_FUNC_COMMENT SYSREQ_FUNC_GROUP SYSREQ_FUNC_GROUP_COMMENT SYSREQ_FUNC_GROUP_NUMBER SYSREQ_FUNC_HELP SYSREQ_FUNC_PARAM_DEF_VALUE SYSREQ_FUNC_PARAM_IDENT SYSREQ_FUNC_PARAM_NUMBER SYSREQ_FUNC_PARAM_TYPE SYSREQ_FUNC_TEXT SYSREQ_GROUP_CATEGORY SYSREQ_ID SYSREQ_LAST_UPDATE SYSREQ_LEADER_REFERENCE SYSREQ_LINE_NUMBER SYSREQ_MAIN_RECORD_ID SYSREQ_NAME SYSREQ_NAME_LOCALIZE_ID SYSREQ_NOTE SYSREQ_ORIGINAL_RECORD SYSREQ_OUR_FIRM SYSREQ_PROFILING_SETTINGS_BATCH_LOGING SYSREQ_PROFILING_SETTINGS_BATCH_SIZE SYSREQ_PROFILING_SETTINGS_PROFILING_ENABLED SYSREQ_PROFILING_SETTINGS_SQL_PROFILING_ENABLED SYSREQ_PROFILING_SETTINGS_START_LOGGED SYSREQ_RECORD_STATUS SYSREQ_REF_REQ_FIELD_NAME SYSREQ_REF_REQ_FORMAT SYSREQ_REF_REQ_GENERATED SYSREQ_REF_REQ_LENGTH SYSREQ_REF_REQ_PRECISION SYSREQ_REF_REQ_REFERENCE SYSREQ_REF_REQ_SECTION SYSREQ_REF_REQ_STORED SYSREQ_REF_REQ_TOKENS SYSREQ_REF_REQ_TYPE SYSREQ_REF_REQ_VIEW SYSREQ_REF_TYPE_ACT_CODE SYSREQ_REF_TYPE_ACT_DESCRIPTION SYSREQ_REF_TYPE_ACT_DESCRIPTION_LOCALIZE_ID SYSREQ_REF_TYPE_ACT_ON_EXECUTE SYSREQ_REF_TYPE_ACT_ON_EXECUTE_EXISTS SYSREQ_REF_TYPE_ACT_SECTION SYSREQ_REF_TYPE_ADD_PARAMS SYSREQ_REF_TYPE_COMMENT SYSREQ_REF_TYPE_COMMON_SETTINGS SYSREQ_REF_TYPE_DISPLAY_REQUISITE_NAME SYSREQ_REF_TYPE_EVENT_TEXT SYSREQ_REF_TYPE_MAIN_LEADING_REF SYSREQ_REF_TYPE_NAME_IN_SINGULAR SYSREQ_REF_TYPE_NAME_IN_SINGULAR_LOCALIZE_ID SYSREQ_REF_TYPE_NAME_LOCALIZE_ID SYSREQ_REF_TYPE_NUMERATION_METHOD SYSREQ_REF_TYPE_REQ_CODE SYSREQ_REF_TYPE_REQ_DESCRIPTION SYSREQ_REF_TYPE_REQ_DESCRIPTION_LOCALIZE_ID SYSREQ_REF_TYPE_REQ_IS_CONTROL SYSREQ_REF_TYPE_REQ_IS_FILTER SYSREQ_REF_TYPE_REQ_IS_LEADING SYSREQ_REF_TYPE_REQ_IS_REQUIRED SYSREQ_REF_TYPE_REQ_NUMBER SYSREQ_REF_TYPE_REQ_ON_CHANGE SYSREQ_REF_TYPE_REQ_ON_CHANGE_EXISTS SYSREQ_REF_TYPE_REQ_ON_SELECT SYSREQ_REF_TYPE_REQ_ON_SELECT_KIND SYSREQ_REF_TYPE_REQ_SECTION SYSREQ_REF_TYPE_VIEW_CARD SYSREQ_REF_TYPE_VIEW_CODE SYSREQ_REF_TYPE_VIEW_COMMENT SYSREQ_REF_TYPE_VIEW_IS_MAIN SYSREQ_REF_TYPE_VIEW_NAME SYSREQ_REF_TYPE_VIEW_NAME_LOCALIZE_ID SYSREQ_REFERENCE_TYPE_ID SYSREQ_STATE SYSREQ_STAT\u0415 SYSREQ_SYSTEM_SETTINGS_VALUE SYSREQ_TYPE SYSREQ_UNIT SYSREQ_UNIT_ID SYSREQ_USER_GROUPS_GROUP_FULL_NAME SYSREQ_USER_GROUPS_GROUP_NAME SYSREQ_USER_GROUPS_GROUP_SERVER_NAME SYSREQ_USERS_ACCESS_RIGHTS SYSREQ_USERS_AUTHENTICATION SYSREQ_USERS_CATEGORY SYSREQ_USERS_COMPONENT SYSREQ_USERS_COMPONENT_USER_IS_PUBLIC SYSREQ_USERS_DOMAIN SYSREQ_USERS_FULL_USER_NAME SYSREQ_USERS_GROUP SYSREQ_USERS_IS_MAIN_SERVER SYSREQ_USERS_LOGIN SYSREQ_USERS_REFERENCE_USER_IS_PUBLIC SYSREQ_USERS_STATUS SYSREQ_USERS_USER_CERTIFICATE SYSREQ_USERS_USER_CERTIFICATE_INFO SYSREQ_USERS_USER_CERTIFICATE_PLUGIN_NAME SYSREQ_USERS_USER_CERTIFICATE_PLUGIN_VERSION SYSREQ_USERS_USER_CERTIFICATE_STATE SYSREQ_USERS_USER_CERTIFICATE_SUBJECT_NAME SYSREQ_USERS_USER_CERTIFICATE_THUMBPRINT SYSREQ_USERS_USER_DEFAULT_CERTIFICATE SYSREQ_USERS_USER_DESCRIPTION SYSREQ_USERS_USER_GLOBAL_NAME SYSREQ_USERS_USER_LOGIN SYSREQ_USERS_USER_MAIN_SERVER SYSREQ_USERS_USER_TYPE SYSREQ_WORK_RULES_FOLDER_ID RESULT_VAR_NAME RESULT_VAR_NAME_ENG AUTO_NUMERATION_RULE_ID CANT_CHANGE_ID_REQUISITE_RULE_ID CANT_CHANGE_OURFIRM_REQUISITE_RULE_ID CHECK_CHANGING_REFERENCE_RECORD_USE_RULE_ID CHECK_CODE_REQUISITE_RULE_ID CHECK_DELETING_REFERENCE_RECORD_USE_RULE_ID CHECK_FILTRATER_CHANGES_RULE_ID CHECK_RECORD_INTERVAL_RULE_ID CHECK_REFERENCE_INTERVAL_RULE_ID CHECK_REQUIRED_DATA_FULLNESS_RULE_ID CHECK_REQUIRED_REQUISITES_FULLNESS_RULE_ID MAKE_RECORD_UNRATIFIED_RULE_ID RESTORE_AUTO_NUMERATION_RULE_ID SET_FIRM_CONTEXT_FROM_RECORD_RULE_ID SET_FIRST_RECORD_IN_LIST_FORM_RULE_ID SET_IDSPS_VALUE_RULE_ID SET_NEXT_CODE_VALUE_RULE_ID SET_OURFIRM_BOUNDS_RULE_ID SET_OURFIRM_REQUISITE_RULE_ID SCRIPT_BLOCK_AFTER_FINISH_EVENT SCRIPT_BLOCK_BEFORE_START_EVENT SCRIPT_BLOCK_EXECUTION_RESULTS_PROPERTY SCRIPT_BLOCK_NAME_PROPERTY SCRIPT_BLOCK_SCRIPT_PROPERTY SUBTASK_BLOCK_ABORT_DEADLINE_PROPERTY SUBTASK_BLOCK_AFTER_FINISH_EVENT SUBTASK_BLOCK_ASSIGN_PARAMS_EVENT SUBTASK_BLOCK_ATTACHMENTS_PROPERTY SUBTASK_BLOCK_ATTACHMENTS_RIGHTS_GROUP_PROPERTY SUBTASK_BLOCK_ATTACHMENTS_RIGHTS_TYPE_PROPERTY SUBTASK_BLOCK_BEFORE_START_EVENT SUBTASK_BLOCK_CREATED_TASK_PROPERTY SUBTASK_BLOCK_CREATION_EVENT SUBTASK_BLOCK_DEADLINE_PROPERTY SUBTASK_BLOCK_IMPORTANCE_PROPERTY SUBTASK_BLOCK_INITIATOR_PROPERTY SUBTASK_BLOCK_IS_RELATIVE_ABORT_DEADLINE_PROPERTY SUBTASK_BLOCK_IS_RELATIVE_DEADLINE_PROPERTY SUBTASK_BLOCK_JOBS_TYPE_PROPERTY SUBTASK_BLOCK_NAME_PROPERTY SUBTASK_BLOCK_PARALLEL_ROUTE_PROPERTY SUBTASK_BLOCK_PERFORMERS_PROPERTY SUBTASK_BLOCK_RELATIVE_ABORT_DEADLINE_TYPE_PROPERTY SUBTASK_BLOCK_RELATIVE_DEADLINE_TYPE_PROPERTY SUBTASK_BLOCK_REQUIRE_SIGN_PROPERTY SUBTASK_BLOCK_STANDARD_ROUTE_PROPERTY SUBTASK_BLOCK_START_EVENT SUBTASK_BLOCK_STEP_CONTROL_PROPERTY SUBTASK_BLOCK_SUBJECT_PROPERTY SUBTASK_BLOCK_TASK_CONTROL_PROPERTY SUBTASK_BLOCK_TEXT_PROPERTY SUBTASK_BLOCK_UNLOCK_ATTACHMENTS_ON_STOP_PROPERTY SUBTASK_BLOCK_USE_STANDARD_ROUTE_PROPERTY SUBTASK_BLOCK_WAIT_FOR_TASK_COMPLETE_PROPERTY SYSCOMP_CONTROL_JOBS SYSCOMP_FOLDERS SYSCOMP_JOBS SYSCOMP_NOTICES SYSCOMP_TASKS SYSDLG_CREATE_EDOCUMENT SYSDLG_CREATE_EDOCUMENT_VERSION SYSDLG_CURRENT_PERIOD SYSDLG_EDIT_FUNCTION_HELP SYSDLG_EDOCUMENT_KINDS_FOR_TEMPLATE SYSDLG_EXPORT_MULTIPLE_EDOCUMENTS SYSDLG_EXPORT_SINGLE_EDOCUMENT SYSDLG_IMPORT_EDOCUMENT SYSDLG_MULTIPLE_SELECT SYSDLG_SETUP_ACCESS_RIGHTS SYSDLG_SETUP_DEFAULT_RIGHTS SYSDLG_SETUP_FILTER_CONDITION SYSDLG_SETUP_SIGN_RIGHTS SYSDLG_SETUP_TASK_OBSERVERS SYSDLG_SETUP_TASK_ROUTE SYSDLG_SETUP_USERS_LIST SYSDLG_SIGN_EDOCUMENT SYSDLG_SIGN_MULTIPLE_EDOCUMENTS SYSREF_ACCESS_RIGHTS_TYPES SYSREF_ADMINISTRATION_HISTORY SYSREF_ALL_AVAILABLE_COMPONENTS SYSREF_ALL_AVAILABLE_PRIVILEGES SYSREF_ALL_REPLICATING_COMPONENTS SYSREF_AVAILABLE_DEVELOPERS_COMPONENTS SYSREF_CALENDAR_EVENTS SYSREF_COMPONENT_TOKEN_HISTORY SYSREF_COMPONENT_TOKENS SYSREF_COMPONENTS SYSREF_CONSTANTS SYSREF_DATA_RECEIVE_PROTOCOL SYSREF_DATA_SEND_PROTOCOL SYSREF_DIALOGS SYSREF_DIALOGS_REQUISITES SYSREF_EDITORS SYSREF_EDOC_CARDS SYSREF_EDOC_TYPES SYSREF_EDOCUMENT_CARD_REQUISITES SYSREF_EDOCUMENT_CARD_TYPES SYSREF_EDOCUMENT_CARD_TYPES_REFERENCE SYSREF_EDOCUMENT_CARDS SYSREF_EDOCUMENT_HISTORY SYSREF_EDOCUMENT_KINDS SYSREF_EDOCUMENT_REQUISITES SYSREF_EDOCUMENT_SIGNATURES SYSREF_EDOCUMENT_TEMPLATES SYSREF_EDOCUMENT_TEXT_STORAGES SYSREF_EDOCUMENT_VIEWS SYSREF_FILTERER_SETUP_CONFLICTS SYSREF_FILTRATER_SETTING_CONFLICTS SYSREF_FOLDER_HISTORY SYSREF_FOLDERS SYSREF_FUNCTION_GROUPS SYSREF_FUNCTION_PARAMS SYSREF_FUNCTIONS SYSREF_JOB_HISTORY SYSREF_LINKS SYSREF_LOCALIZATION_DICTIONARY SYSREF_LOCALIZATION_LANGUAGES SYSREF_MODULES SYSREF_PRIVILEGES SYSREF_RECORD_HISTORY SYSREF_REFERENCE_REQUISITES SYSREF_REFERENCE_TYPE_VIEWS SYSREF_REFERENCE_TYPES SYSREF_REFERENCES SYSREF_REFERENCES_REQUISITES SYSREF_REMOTE_SERVERS SYSREF_REPLICATION_SESSIONS_LOG SYSREF_REPLICATION_SESSIONS_PROTOCOL SYSREF_REPORTS SYSREF_ROLES SYSREF_ROUTE_BLOCK_GROUPS SYSREF_ROUTE_BLOCKS SYSREF_SCRIPTS SYSREF_SEARCHES SYSREF_SERVER_EVENTS SYSREF_SERVER_EVENTS_HISTORY SYSREF_STANDARD_ROUTE_GROUPS SYSREF_STANDARD_ROUTES SYSREF_STATUSES SYSREF_SYSTEM_SETTINGS SYSREF_TASK_HISTORY SYSREF_TASK_KIND_GROUPS SYSREF_TASK_KINDS SYSREF_TASK_RIGHTS SYSREF_TASK_SIGNATURES SYSREF_TASKS SYSREF_UNITS SYSREF_USER_GROUPS SYSREF_USER_GROUPS_REFERENCE SYSREF_USER_SUBSTITUTION SYSREF_USERS SYSREF_USERS_REFERENCE SYSREF_VIEWERS SYSREF_WORKING_TIME_CALENDARS ACCESS_RIGHTS_TABLE_NAME EDMS_ACCESS_TABLE_NAME EDOC_TYPES_TABLE_NAME TEST_DEV_DB_NAME TEST_DEV_SYSTEM_CODE TEST_EDMS_DB_NAME TEST_EDMS_MAIN_CODE TEST_EDMS_MAIN_DB_NAME TEST_EDMS_SECOND_CODE TEST_EDMS_SECOND_DB_NAME TEST_EDMS_SYSTEM_CODE TEST_ISB5_MAIN_CODE TEST_ISB5_SECOND_CODE TEST_SQL_SERVER_2005_NAME TEST_SQL_SERVER_NAME ATTENTION_CAPTION cbsCommandLinks cbsDefault CONFIRMATION_CAPTION ERROR_CAPTION INFORMATION_CAPTION mrCancel mrOk EDOC_VERSION_ACTIVE_STAGE_CODE EDOC_VERSION_DESIGN_STAGE_CODE EDOC_VERSION_OBSOLETE_STAGE_CODE cpDataEnciphermentEnabled cpDigitalSignatureEnabled cpID cpIssuer cpPluginVersion cpSerial cpSubjectName cpSubjSimpleName cpValidFromDate cpValidToDate ISBL_SYNTAX NO_SYNTAX XML_SYNTAX WAIT_BLOCK_AFTER_FINISH_EVENT WAIT_BLOCK_BEFORE_START_EVENT WAIT_BLOCK_DEADLINE_PROPERTY WAIT_BLOCK_IS_RELATIVE_DEADLINE_PROPERTY WAIT_BLOCK_NAME_PROPERTY WAIT_BLOCK_RELATIVE_DEADLINE_TYPE_PROPERTY SYSRES_COMMON SYSRES_CONST SYSRES_MBFUNC SYSRES_SBDATA SYSRES_SBGUI SYSRES_SBINTF SYSRES_SBREFDSC SYSRES_SQLERRORS SYSRES_SYSCOMP atUser atGroup atRole aemEnabledAlways aemDisabledAlways aemEnabledOnBrowse aemEnabledOnEdit aemDisabledOnBrowseEmpty apBegin apEnd alLeft alRight asmNever asmNoButCustomize asmAsLastTime asmYesButCustomize asmAlways cirCommon cirRevoked ctSignature ctEncode ctSignatureEncode clbUnchecked clbChecked clbGrayed ceISB ceAlways ceNever ctDocument ctReference ctScript ctUnknown ctReport ctDialog ctFunction ctFolder ctEDocument ctTask ctJob ctNotice ctControlJob cfInternal cfDisplay ciUnspecified ciWrite ciRead ckFolder ckEDocument ckTask ckJob ckComponentToken ckAny ckReference ckScript ckReport ckDialog ctISBLEditor ctBevel ctButton ctCheckListBox ctComboBox ctComboEdit ctGrid ctDBCheckBox ctDBComboBox ctDBEdit ctDBEllipsis ctDBMemo ctDBNavigator ctDBRadioGroup ctDBStatusLabel ctEdit ctGroupBox ctInplaceHint ctMemo ctPanel ctListBox ctRadioButton ctRichEdit ctTabSheet ctWebBrowser ctImage ctHyperLink ctLabel ctDBMultiEllipsis ctRibbon ctRichView ctInnerPanel ctPanelGroup ctBitButton cctDate cctInteger cctNumeric cctPick cctReference cctString cctText cltInternal cltPrimary cltGUI dseBeforeOpen dseAfterOpen dseBeforeClose dseAfterClose dseOnValidDelete dseBeforeDelete dseAfterDelete dseAfterDeleteOutOfTransaction dseOnDeleteError dseBeforeInsert dseAfterInsert dseOnValidUpdate dseBeforeUpdate dseOnUpdateRatifiedRecord dseAfterUpdate dseAfterUpdateOutOfTransaction dseOnUpdateError dseAfterScroll dseOnOpenRecord dseOnCloseRecord dseBeforeCancel dseAfterCancel dseOnUpdateDeadlockError dseBeforeDetailUpdate dseOnPrepareUpdate dseOnAnyRequisiteChange dssEdit dssInsert dssBrowse dssInActive dftDate dftShortDate dftDateTime dftTimeStamp dotDays dotHours dotMinutes dotSeconds dtkndLocal dtkndUTC arNone arView arEdit arFull ddaView ddaEdit emLock emEdit emSign emExportWithLock emImportWithUnlock emChangeVersionNote emOpenForModify emChangeLifeStage emDelete emCreateVersion emImport emUnlockExportedWithLock emStart emAbort emReInit emMarkAsReaded emMarkAsUnreaded emPerform emAccept emResume emChangeRights emEditRoute emEditObserver emRecoveryFromLocalCopy emChangeWorkAccessType emChangeEncodeTypeToCertificate emChangeEncodeTypeToPassword emChangeEncodeTypeToNone emChangeEncodeTypeToCertificatePassword emChangeStandardRoute emGetText emOpenForView emMoveToStorage emCreateObject emChangeVersionHidden emDeleteVersion emChangeLifeCycleStage emApprovingSign emExport emContinue emLockFromEdit emUnLockForEdit emLockForServer emUnlockFromServer emDelegateAccessRights emReEncode ecotFile ecotProcess eaGet eaCopy eaCreate eaCreateStandardRoute edltAll edltNothing edltQuery essmText essmCard esvtLast esvtLastActive esvtSpecified edsfExecutive edsfArchive edstSQLServer edstFile edvstNone edvstEDocumentVersionCopy edvstFile edvstTemplate edvstScannedFile vsDefault vsDesign vsActive vsObsolete etNone etCertificate etPassword etCertificatePassword ecException ecWarning ecInformation estAll estApprovingOnly evtLast evtLastActive evtQuery fdtString fdtNumeric fdtInteger fdtDate fdtText fdtUnknown fdtWideString fdtLargeInteger ftInbox ftOutbox ftFavorites ftCommonFolder ftUserFolder ftComponents ftQuickLaunch ftShortcuts ftSearch grhAuto grhX1 grhX2 grhX3 hltText hltRTF hltHTML iffBMP iffJPEG iffMultiPageTIFF iffSinglePageTIFF iffTIFF iffPNG im8bGrayscale im24bRGB im1bMonochrome itBMP itJPEG itWMF itPNG ikhInformation ikhWarning ikhError ikhNoIcon icUnknown icScript icFunction icIntegratedReport icAnalyticReport icDataSetEventHandler icActionHandler icFormEventHandler icLookUpEventHandler icRequisiteChangeEventHandler icBeforeSearchEventHandler icRoleCalculation icSelectRouteEventHandler icBlockPropertyCalculation icBlockQueryParamsEventHandler icChangeSearchResultEventHandler icBlockEventHandler icSubTaskInitEventHandler icEDocDataSetEventHandler icEDocLookUpEventHandler icEDocActionHandler icEDocFormEventHandler icEDocRequisiteChangeEventHandler icStructuredConversionRule icStructuredConversionEventBefore icStructuredConversionEventAfter icWizardEventHandler icWizardFinishEventHandler icWizardStepEventHandler icWizardStepFinishEventHandler icWizardActionEnableEventHandler icWizardActionExecuteEventHandler icCreateJobsHandler icCreateNoticesHandler icBeforeLookUpEventHandler icAfterLookUpEventHandler icTaskAbortEventHandler icWorkflowBlockActionHandler icDialogDataSetEventHandler icDialogActionHandler icDialogLookUpEventHandler icDialogRequisiteChangeEventHandler icDialogFormEventHandler icDialogValidCloseEventHandler icBlockFormEventHandler icTaskFormEventHandler icReferenceMethod icEDocMethod icDialogMethod icProcessMessageHandler isShow isHide isByUserSettings jkJob jkNotice jkControlJob jtInner jtLeft jtRight jtFull jtCross lbpAbove lbpBelow lbpLeft lbpRight eltPerConnection eltPerUser sfcUndefined sfcBlack sfcGreen sfcRed sfcBlue sfcOrange sfcLilac sfsItalic sfsStrikeout sfsNormal ldctStandardRoute ldctWizard ldctScript ldctFunction ldctRouteBlock ldctIntegratedReport ldctAnalyticReport ldctReferenceType ldctEDocumentType ldctDialog ldctServerEvents mrcrtNone mrcrtUser mrcrtMaximal mrcrtCustom vtEqual vtGreaterOrEqual vtLessOrEqual vtRange rdYesterday rdToday rdTomorrow rdThisWeek rdThisMonth rdThisYear rdNextMonth rdNextWeek rdLastWeek rdLastMonth rdWindow rdFile rdPrinter rdtString rdtNumeric rdtInteger rdtDate rdtReference rdtAccount rdtText rdtPick rdtUnknown rdtLargeInteger rdtDocument reOnChange reOnChangeValues ttGlobal ttLocal ttUser ttSystem ssmBrowse ssmSelect ssmMultiSelect ssmBrowseModal smSelect smLike smCard stNone stAuthenticating stApproving sctString sctStream sstAnsiSort sstNaturalSort svtEqual svtContain soatString soatNumeric soatInteger soatDatetime soatReferenceRecord soatText soatPick soatBoolean soatEDocument soatAccount soatIntegerCollection soatNumericCollection soatStringCollection soatPickCollection soatDatetimeCollection soatBooleanCollection soatReferenceRecordCollection soatEDocumentCollection soatAccountCollection soatContents soatUnknown tarAbortByUser tarAbortByWorkflowException tvtAllWords tvtExactPhrase tvtAnyWord usNone usCompleted usRedSquare usBlueSquare usYellowSquare usGreenSquare usOrangeSquare usPurpleSquare usFollowUp utUnknown utUser utDeveloper utAdministrator utSystemDeveloper utDisconnected btAnd btDetailAnd btOr btNotOr btOnly vmView vmSelect vmNavigation vsmSingle vsmMultiple vsmMultipleCheck vsmNoSelection wfatPrevious wfatNext wfatCancel wfatFinish wfepUndefined wfepText3 wfepText6 wfepText9 wfepSpinEdit wfepDropDown wfepRadioGroup wfepFlag wfepText12 wfepText15 wfepText18 wfepText21 wfepText24 wfepText27 wfepText30 wfepRadioGroupColumn1 wfepRadioGroupColumn2 wfepRadioGroupColumn3 wfetQueryParameter wfetText wfetDelimiter wfetLabel wptString wptInteger wptNumeric wptBoolean wptDateTime wptPick wptText wptUser wptUserList wptEDocumentInfo wptEDocumentInfoList wptReferenceRecordInfo wptReferenceRecordInfoList wptFolderInfo wptTaskInfo wptContents wptFileName wptDate wsrComplete wsrGoNext wsrGoPrevious wsrCustom wsrCancel wsrGoFinal wstForm wstEDocument wstTaskCard wstReferenceRecordCard wstFinal waAll waPerformers waManual wsbStart wsbFinish wsbNotice wsbStep wsbDecision wsbWait wsbMonitor wsbScript wsbConnector wsbSubTask wsbLifeCycleStage wsbPause wdtInteger wdtFloat wdtString wdtPick wdtDateTime wdtBoolean wdtTask wdtJob wdtFolder wdtEDocument wdtReferenceRecord wdtUser wdtGroup wdtRole wdtIntegerCollection wdtFloatCollection wdtStringCollection wdtPickCollection wdtDateTimeCollection wdtBooleanCollection wdtTaskCollection wdtJobCollection wdtFolderCollection wdtEDocumentCollection wdtReferenceRecordCollection wdtUserCollection wdtGroupCollection wdtRoleCollection wdtContents wdtUserList wdtSearchDescription wdtDeadLine wdtPickSet wdtAccountCollection wiLow wiNormal wiHigh wrtSoft wrtHard wsInit wsRunning wsDone wsControlled wsAborted wsContinued wtmFull wtmFromCurrent wtmOnlyCurrent ", +class:"AltState Application CallType ComponentTokens CreatedJobs CreatedNotices ControlState DialogResult Dialogs EDocuments EDocumentVersionSource Folders GlobalIDs Job Jobs InputValue LookUpReference LookUpRequisiteNames LookUpSearch Object ParentComponent Processes References Requisite ReportName Reports Result Scripts Searches SelectedAttachments SelectedItems SelectMode Sender ServerEvents ServiceFactory ShiftState SubTask SystemDialogs Tasks Wizard Wizards Work \u0412\u044b\u0437\u043e\u0432\u0421\u043f\u043e\u0441\u043e\u0431 \u0418\u043c\u044f\u041e\u0442\u0447\u0435\u0442\u0430 \u0420\u0435\u043a\u0432\u0417\u043d\u0430\u0447 ", +literal:"null true false nil "},I={begin:"\\.\\s*"+S.UNDERSCORE_IDENT_RE, +keywords:C,relevance:0},N={className:"type", +begin:":[ \\t]*(IApplication|IAccessRights|IAccountRepository|IAccountSelectionRestrictions|IAction|IActionList|IAdministrationHistoryDescription|IAnchors|IApplication|IArchiveInfo|IAttachment|IAttachmentList|ICheckListBox|ICheckPointedList|IColumn|IComponent|IComponentDescription|IComponentToken|IComponentTokenFactory|IComponentTokenInfo|ICompRecordInfo|IConnection|IContents|IControl|IControlJob|IControlJobInfo|IControlList|ICrypto|ICrypto2|ICustomJob|ICustomJobInfo|ICustomListBox|ICustomObjectWizardStep|ICustomWork|ICustomWorkInfo|IDataSet|IDataSetAccessInfo|IDataSigner|IDateCriterion|IDateRequisite|IDateRequisiteDescription|IDateValue|IDeaAccessRights|IDeaObjectInfo|IDevelopmentComponentLock|IDialog|IDialogFactory|IDialogPickRequisiteItems|IDialogsFactory|IDICSFactory|IDocRequisite|IDocumentInfo|IDualListDialog|IECertificate|IECertificateInfo|IECertificates|IEditControl|IEditorForm|IEdmsExplorer|IEdmsObject|IEdmsObjectDescription|IEdmsObjectFactory|IEdmsObjectInfo|IEDocument|IEDocumentAccessRights|IEDocumentDescription|IEDocumentEditor|IEDocumentFactory|IEDocumentInfo|IEDocumentStorage|IEDocumentVersion|IEDocumentVersionListDialog|IEDocumentVersionSource|IEDocumentWizardStep|IEDocVerSignature|IEDocVersionState|IEnabledMode|IEncodeProvider|IEncrypter|IEvent|IEventList|IException|IExternalEvents|IExternalHandler|IFactory|IField|IFileDialog|IFolder|IFolderDescription|IFolderDialog|IFolderFactory|IFolderInfo|IForEach|IForm|IFormTitle|IFormWizardStep|IGlobalIDFactory|IGlobalIDInfo|IGrid|IHasher|IHistoryDescription|IHyperLinkControl|IImageButton|IImageControl|IInnerPanel|IInplaceHint|IIntegerCriterion|IIntegerList|IIntegerRequisite|IIntegerValue|IISBLEditorForm|IJob|IJobDescription|IJobFactory|IJobForm|IJobInfo|ILabelControl|ILargeIntegerCriterion|ILargeIntegerRequisite|ILargeIntegerValue|ILicenseInfo|ILifeCycleStage|IList|IListBox|ILocalIDInfo|ILocalization|ILock|IMemoryDataSet|IMessagingFactory|IMetadataRepository|INotice|INoticeInfo|INumericCriterion|INumericRequisite|INumericValue|IObject|IObjectDescription|IObjectImporter|IObjectInfo|IObserver|IPanelGroup|IPickCriterion|IPickProperty|IPickRequisite|IPickRequisiteDescription|IPickRequisiteItem|IPickRequisiteItems|IPickValue|IPrivilege|IPrivilegeList|IProcess|IProcessFactory|IProcessMessage|IProgress|IProperty|IPropertyChangeEvent|IQuery|IReference|IReferenceCriterion|IReferenceEnabledMode|IReferenceFactory|IReferenceHistoryDescription|IReferenceInfo|IReferenceRecordCardWizardStep|IReferenceRequisiteDescription|IReferencesFactory|IReferenceValue|IRefRequisite|IReport|IReportFactory|IRequisite|IRequisiteDescription|IRequisiteDescriptionList|IRequisiteFactory|IRichEdit|IRouteStep|IRule|IRuleList|ISchemeBlock|IScript|IScriptFactory|ISearchCriteria|ISearchCriterion|ISearchDescription|ISearchFactory|ISearchFolderInfo|ISearchForObjectDescription|ISearchResultRestrictions|ISecuredContext|ISelectDialog|IServerEvent|IServerEventFactory|IServiceDialog|IServiceFactory|ISignature|ISignProvider|ISignProvider2|ISignProvider3|ISimpleCriterion|IStringCriterion|IStringList|IStringRequisite|IStringRequisiteDescription|IStringValue|ISystemDialogsFactory|ISystemInfo|ITabSheet|ITask|ITaskAbortReasonInfo|ITaskCardWizardStep|ITaskDescription|ITaskFactory|ITaskInfo|ITaskRoute|ITextCriterion|ITextRequisite|ITextValue|ITreeListSelectDialog|IUser|IUserList|IValue|IView|IWebBrowserControl|IWizard|IWizardAction|IWizardFactory|IWizardFormElement|IWizardParam|IWizardPickParam|IWizardReferenceParam|IWizardStep|IWorkAccessRights|IWorkDescription|IWorkflowAskableParam|IWorkflowAskableParams|IWorkflowBlock|IWorkflowBlockResult|IWorkflowEnabledMode|IWorkflowParam|IWorkflowPickParam|IWorkflowReferenceParam|IWorkState|IWorkTreeCustomNode|IWorkTreeJobNode|IWorkTreeTaskNode|IXMLEditorForm|SBCrypto)", +end:"[ \\t]*=",excludeEnd:!0},A={className:"variable",keywords:C,begin:E, +relevance:0,contains:[N,I] +},e="[A-Za-z\u0410-\u042f\u0430-\u044f\u0451\u0401_][A-Za-z\u0410-\u042f\u0430-\u044f\u0451\u0401_0-9]*\\(" +;return{name:"ISBL",case_insensitive:!0,keywords:C, +illegal:"\\$|\\?|%|,|;$|~|#|@|</",contains:[{className:"function",begin:e, +end:"\\)$",returnBegin:!0,keywords:C,illegal:"[\\[\\]\\|\\$\\?%,~#@]", +contains:[{className:"title",keywords:{$pattern:E, +built_in:"AddSubString AdjustLineBreaks AmountInWords Analysis ArrayDimCount ArrayHighBound ArrayLowBound ArrayOf ArrayReDim Assert Assigned BeginOfMonth BeginOfPeriod BuildProfilingOperationAnalysis CallProcedure CanReadFile CArrayElement CDataSetRequisite ChangeDate ChangeReferenceDataset Char CharPos CheckParam CheckParamValue CompareStrings ConstantExists ControlState ConvertDateStr Copy CopyFile CreateArray CreateCachedReference CreateConnection CreateDialog CreateDualListDialog CreateEditor CreateException CreateFile CreateFolderDialog CreateInputDialog CreateLinkFile CreateList CreateLock CreateMemoryDataSet CreateObject CreateOpenDialog CreateProgress CreateQuery CreateReference CreateReport CreateSaveDialog CreateScript CreateSQLPivotFunction CreateStringList CreateTreeListSelectDialog CSelectSQL CSQL CSubString CurrentUserID CurrentUserName CurrentVersion DataSetLocateEx DateDiff DateTimeDiff DateToStr DayOfWeek DeleteFile DirectoryExists DisableCheckAccessRights DisableCheckFullShowingRestriction DisableMassTaskSendingRestrictions DropTable DupeString EditText EnableCheckAccessRights EnableCheckFullShowingRestriction EnableMassTaskSendingRestrictions EndOfMonth EndOfPeriod ExceptionExists ExceptionsOff ExceptionsOn Execute ExecuteProcess Exit ExpandEnvironmentVariables ExtractFileDrive ExtractFileExt ExtractFileName ExtractFilePath ExtractParams FileExists FileSize FindFile FindSubString FirmContext ForceDirectories Format FormatDate FormatNumeric FormatSQLDate FormatString FreeException GetComponent GetComponentLaunchParam GetConstant GetLastException GetReferenceRecord GetRefTypeByRefID GetTableID GetTempFolder IfThen In IndexOf InputDialog InputDialogEx InteractiveMode IsFileLocked IsGraphicFile IsNumeric Length LoadString LoadStringFmt LocalTimeToUTC LowerCase Max MessageBox MessageBoxEx MimeDecodeBinary MimeDecodeString MimeEncodeBinary MimeEncodeString Min MoneyInWords MoveFile NewID Now OpenFile Ord Precision Raise ReadCertificateFromFile ReadFile ReferenceCodeByID ReferenceNumber ReferenceRequisiteMode ReferenceRequisiteValue RegionDateSettings RegionNumberSettings RegionTimeSettings RegRead RegWrite RenameFile Replace Round SelectServerCode SelectSQL ServerDateTime SetConstant SetManagedFolderFieldsState ShowConstantsInputDialog ShowMessage Sleep Split SQL SQL2XLSTAB SQLProfilingSendReport StrToDate SubString SubStringCount SystemSetting Time TimeDiff Today Transliterate Trim UpperCase UserStatus UTCToLocalTime ValidateXML VarIsClear VarIsEmpty VarIsNull WorkTimeDiff WriteFile WriteFileEx WriteObjectHistory \u0410\u043d\u0430\u043b\u0438\u0437 \u0411\u0430\u0437\u0430\u0414\u0430\u043d\u043d\u044b\u0445 \u0411\u043b\u043e\u043a\u0415\u0441\u0442\u044c \u0411\u043b\u043e\u043a\u0415\u0441\u0442\u044c\u0420\u0430\u0441\u0448 \u0411\u043b\u043e\u043a\u0418\u043d\u0444\u043e \u0411\u043b\u043e\u043a\u0421\u043d\u044f\u0442\u044c \u0411\u043b\u043e\u043a\u0421\u043d\u044f\u0442\u044c\u0420\u0430\u0441\u0448 \u0411\u043b\u043e\u043a\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0412\u0432\u043e\u0434 \u0412\u0432\u043e\u0434\u041c\u0435\u043d\u044e \u0412\u0435\u0434\u0421 \u0412\u0435\u0434\u0421\u043f\u0440 \u0412\u0435\u0440\u0445\u043d\u044f\u044f\u0413\u0440\u0430\u043d\u0438\u0446\u0430\u041c\u0430\u0441\u0441\u0438\u0432\u0430 \u0412\u043d\u0435\u0448\u041f\u0440\u043e\u0433\u0440 \u0412\u043e\u0441\u0441\u0442 \u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f\u041f\u0430\u043f\u043a\u0430 \u0412\u0440\u0435\u043c\u044f \u0412\u044b\u0431\u043e\u0440SQL \u0412\u044b\u0431\u0440\u0430\u0442\u044c\u0417\u0430\u043f\u0438\u0441\u044c \u0412\u044b\u0434\u0435\u043b\u0438\u0442\u044c\u0421\u0442\u0440 \u0412\u044b\u0437\u0432\u0430\u0442\u044c \u0412\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0412\u044b\u043f\u041f\u0440\u043e\u0433\u0440 \u0413\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0439\u0424\u0430\u0439\u043b \u0413\u0440\u0443\u043f\u043f\u0430\u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0414\u0430\u0442\u0430\u0412\u0440\u0435\u043c\u044f\u0421\u0435\u0440\u0432 \u0414\u0435\u043d\u044c\u041d\u0435\u0434\u0435\u043b\u0438 \u0414\u0438\u0430\u043b\u043e\u0433\u0414\u0430\u041d\u0435\u0442 \u0414\u043b\u0438\u043d\u0430\u0421\u0442\u0440 \u0414\u043e\u0431\u041f\u043e\u0434\u0441\u0442\u0440 \u0415\u041f\u0443\u0441\u0442\u043e \u0415\u0441\u043b\u0438\u0422\u043e \u0415\u0427\u0438\u0441\u043b\u043e \u0417\u0430\u043c\u041f\u043e\u0434\u0441\u0442\u0440 \u0417\u0430\u043f\u0438\u0441\u044c\u0421\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a\u0430 \u0417\u043d\u0430\u0447\u041f\u043e\u043b\u044f\u0421\u043f\u0440 \u0418\u0414\u0422\u0438\u043f\u0421\u043f\u0440 \u0418\u0437\u0432\u043b\u0435\u0447\u044c\u0414\u0438\u0441\u043a \u0418\u0437\u0432\u043b\u0435\u0447\u044c\u0418\u043c\u044f\u0424\u0430\u0439\u043b\u0430 \u0418\u0437\u0432\u043b\u0435\u0447\u044c\u041f\u0443\u0442\u044c \u0418\u0437\u0432\u043b\u0435\u0447\u044c\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435 \u0418\u0437\u043c\u0414\u0430\u0442 \u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c\u0420\u0430\u0437\u043c\u0435\u0440\u041c\u0430\u0441\u0441\u0438\u0432\u0430 \u0418\u0437\u043c\u0435\u0440\u0435\u043d\u0438\u0439\u041c\u0430\u0441\u0441\u0438\u0432\u0430 \u0418\u043c\u044f\u041e\u0440\u0433 \u0418\u043c\u044f\u041f\u043e\u043b\u044f\u0421\u043f\u0440 \u0418\u043d\u0434\u0435\u043a\u0441 \u0418\u043d\u0434\u0438\u043a\u0430\u0442\u043e\u0440\u0417\u0430\u043a\u0440\u044b\u0442\u044c \u0418\u043d\u0434\u0438\u043a\u0430\u0442\u043e\u0440\u041e\u0442\u043a\u0440\u044b\u0442\u044c \u0418\u043d\u0434\u0438\u043a\u0430\u0442\u043e\u0440\u0428\u0430\u0433 \u0418\u043d\u0442\u0435\u0440\u0430\u043a\u0442\u0438\u0432\u043d\u044b\u0439\u0420\u0435\u0436\u0438\u043c \u0418\u0442\u043e\u0433\u0422\u0431\u043b\u0421\u043f\u0440 \u041a\u043e\u0434\u0412\u0438\u0434\u0412\u0435\u0434\u0421\u043f\u0440 \u041a\u043e\u0434\u0412\u0438\u0434\u0421\u043f\u0440\u041f\u043e\u0418\u0414 \u041a\u043e\u0434\u041f\u043eAnalit \u041a\u043e\u0434\u0421\u0438\u043c\u0432\u043e\u043b\u0430 \u041a\u043e\u0434\u0421\u043f\u0440 \u041a\u043e\u043b\u041f\u043e\u0434\u0441\u0442\u0440 \u041a\u043e\u043b\u041f\u0440\u043e\u043f \u041a\u043e\u043d\u041c\u0435\u0441 \u041a\u043e\u043d\u0441\u0442 \u041a\u043e\u043d\u0441\u0442\u0415\u0441\u0442\u044c \u041a\u043e\u043d\u0441\u0442\u0417\u043d\u0430\u0447 \u041a\u043e\u043d\u0422\u0440\u0430\u043d \u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0424\u0430\u0439\u043b \u041a\u043e\u043f\u0438\u044f\u0421\u0442\u0440 \u041a\u041f\u0435\u0440\u0438\u043e\u0434 \u041a\u0421\u0442\u0440\u0422\u0431\u043b\u0421\u043f\u0440 \u041c\u0430\u043a\u0441 \u041c\u0430\u043a\u0441\u0421\u0442\u0440\u0422\u0431\u043b\u0421\u043f\u0440 \u041c\u0430\u0441\u0441\u0438\u0432 \u041c\u0435\u043d\u044e \u041c\u0435\u043d\u044e\u0420\u0430\u0441\u0448 \u041c\u0438\u043d \u041d\u0430\u0431\u043e\u0440\u0414\u0430\u043d\u043d\u044b\u0445\u041d\u0430\u0439\u0442\u0438\u0420\u0430\u0441\u0448 \u041d\u0430\u0438\u043c\u0412\u0438\u0434\u0421\u043f\u0440 \u041d\u0430\u0438\u043c\u041f\u043eAnalit \u041d\u0430\u0438\u043c\u0421\u043f\u0440 \u041d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c\u041f\u0435\u0440\u0435\u0432\u043e\u0434\u044b\u0421\u0442\u0440\u043e\u043a \u041d\u0430\u0447\u041c\u0435\u0441 \u041d\u0430\u0447\u0422\u0440\u0430\u043d \u041d\u0438\u0436\u043d\u044f\u044f\u0413\u0440\u0430\u043d\u0438\u0446\u0430\u041c\u0430\u0441\u0441\u0438\u0432\u0430 \u041d\u043e\u043c\u0435\u0440\u0421\u043f\u0440 \u041d\u041f\u0435\u0440\u0438\u043e\u0434 \u041e\u043a\u043d\u043e \u041e\u043a\u0440 \u041e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u041e\u0442\u043b\u0418\u043d\u0444\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u041e\u0442\u043b\u0418\u043d\u0444\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u041e\u0442\u0447\u0435\u0442 \u041e\u0442\u0447\u0435\u0442\u0410\u043d\u0430\u043b \u041e\u0442\u0447\u0435\u0442\u0418\u043d\u0442 \u041f\u0430\u043f\u043a\u0430\u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u041f\u0430\u0443\u0437\u0430 \u041f\u0412\u044b\u0431\u043e\u0440SQL \u041f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u0442\u044c\u0424\u0430\u0439\u043b \u041f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u041f\u0435\u0440\u0435\u043c\u0435\u0441\u0442\u0438\u0442\u044c\u0424\u0430\u0439\u043b \u041f\u043e\u0434\u0441\u0442\u0440 \u041f\u043e\u0438\u0441\u043a\u041f\u043e\u0434\u0441\u0442\u0440 \u041f\u043e\u0438\u0441\u043a\u0421\u0442\u0440 \u041f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0418\u0414\u0422\u0430\u0431\u043b\u0438\u0446\u044b \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0418\u0414 \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0418\u043c\u044f \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0421\u0442\u0430\u0442\u0443\u0441 \u041f\u0440\u0435\u0440\u0432\u0430\u0442\u044c \u041f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u041f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0417\u043d\u0430\u0447 \u041f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c\u0423\u0441\u043b\u043e\u0432\u0438\u0435 \u0420\u0430\u0437\u0431\u0421\u0442\u0440 \u0420\u0430\u0437\u043d\u0412\u0440\u0435\u043c\u044f \u0420\u0430\u0437\u043d\u0414\u0430\u0442 \u0420\u0430\u0437\u043d\u0414\u0430\u0442\u0430\u0412\u0440\u0435\u043c\u044f \u0420\u0430\u0437\u043d\u0420\u0430\u0431\u0412\u0440\u0435\u043c\u044f \u0420\u0435\u0433\u0423\u0441\u0442\u0412\u0440\u0435\u043c \u0420\u0435\u0433\u0423\u0441\u0442\u0414\u0430\u0442 \u0420\u0435\u0433\u0423\u0441\u0442\u0427\u0441\u043b \u0420\u0435\u0434\u0422\u0435\u043a\u0441\u0442 \u0420\u0435\u0435\u0441\u0442\u0440\u0417\u0430\u043f\u0438\u0441\u044c \u0420\u0435\u0435\u0441\u0442\u0440\u0421\u043f\u0438\u0441\u043e\u043a\u0418\u043c\u0435\u043d\u041f\u0430\u0440\u0430\u043c \u0420\u0435\u0435\u0441\u0442\u0440\u0427\u0442\u0435\u043d\u0438\u0435 \u0420\u0435\u043a\u0432\u0421\u043f\u0440 \u0420\u0435\u043a\u0432\u0421\u043f\u0440\u041f\u0440 \u0421\u0435\u0433\u043e\u0434\u043d\u044f \u0421\u0435\u0439\u0447\u0430\u0441 \u0421\u0435\u0440\u0432\u0435\u0440 \u0421\u0435\u0440\u0432\u0435\u0440\u041f\u0440\u043e\u0446\u0435\u0441\u0441\u0418\u0414 \u0421\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0424\u0430\u0439\u043b\u0421\u0447\u0438\u0442\u0430\u0442\u044c \u0421\u0436\u041f\u0440\u043e\u0431 \u0421\u0438\u043c\u0432\u043e\u043b \u0421\u0438\u0441\u0442\u0435\u043c\u0430\u0414\u0438\u0440\u0435\u043a\u0442\u0443\u043c\u041a\u043e\u0434 \u0421\u0438\u0441\u0442\u0435\u043c\u0430\u0418\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u0421\u0438\u0441\u0442\u0435\u043c\u0430\u041a\u043e\u0434 \u0421\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435\u0417\u0430\u043a\u0440\u044b\u0442\u044c \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435\u041e\u0442\u043a\u0440\u044b\u0442\u044c \u0421\u043e\u0437\u0434\u0430\u0442\u044c\u0414\u0438\u0430\u043b\u043e\u0433 \u0421\u043e\u0437\u0434\u0430\u0442\u044c\u0414\u0438\u0430\u043b\u043e\u0433\u0412\u044b\u0431\u043e\u0440\u0430\u0418\u0437\u0414\u0432\u0443\u0445\u0421\u043f\u0438\u0441\u043a\u043e\u0432 \u0421\u043e\u0437\u0434\u0430\u0442\u044c\u0414\u0438\u0430\u043b\u043e\u0433\u0412\u044b\u0431\u043e\u0440\u0430\u041f\u0430\u043f\u043a\u0438 \u0421\u043e\u0437\u0434\u0430\u0442\u044c\u0414\u0438\u0430\u043b\u043e\u0433\u041e\u0442\u043a\u0440\u044b\u0442\u0438\u044f\u0424\u0430\u0439\u043b\u0430 \u0421\u043e\u0437\u0434\u0430\u0442\u044c\u0414\u0438\u0430\u043b\u043e\u0433\u0421\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f\u0424\u0430\u0439\u043b\u0430 \u0421\u043e\u0437\u0434\u0430\u0442\u044c\u0417\u0430\u043f\u0440\u043e\u0441 \u0421\u043e\u0437\u0434\u0430\u0442\u044c\u0418\u043d\u0434\u0438\u043a\u0430\u0442\u043e\u0440 \u0421\u043e\u0437\u0434\u0430\u0442\u044c\u0418\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0421\u043e\u0437\u0434\u0430\u0442\u044c\u041a\u044d\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439\u0421\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a \u0421\u043e\u0437\u0434\u0430\u0442\u044c\u041c\u0430\u0441\u0441\u0438\u0432 \u0421\u043e\u0437\u0434\u0430\u0442\u044c\u041d\u0430\u0431\u043e\u0440\u0414\u0430\u043d\u043d\u044b\u0445 \u0421\u043e\u0437\u0434\u0430\u0442\u044c\u041e\u0431\u044a\u0435\u043a\u0442 \u0421\u043e\u0437\u0434\u0430\u0442\u044c\u041e\u0442\u0447\u0435\u0442 \u0421\u043e\u0437\u0434\u0430\u0442\u044c\u041f\u0430\u043f\u043a\u0443 \u0421\u043e\u0437\u0434\u0430\u0442\u044c\u0420\u0435\u0434\u0430\u043a\u0442\u043e\u0440 \u0421\u043e\u0437\u0434\u0430\u0442\u044c\u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0421\u043e\u0437\u0434\u0430\u0442\u044c\u0421\u043f\u0438\u0441\u043e\u043a \u0421\u043e\u0437\u0434\u0430\u0442\u044c\u0421\u043f\u0438\u0441\u043e\u043a\u0421\u0442\u0440\u043e\u043a \u0421\u043e\u0437\u0434\u0430\u0442\u044c\u0421\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a \u0421\u043e\u0437\u0434\u0430\u0442\u044c\u0421\u0446\u0435\u043d\u0430\u0440\u0438\u0439 \u0421\u043e\u0437\u0434\u0421\u043f\u0440 \u0421\u043e\u0441\u0442\u0421\u043f\u0440 \u0421\u043e\u0445\u0440 \u0421\u043e\u0445\u0440\u0421\u043f\u0440 \u0421\u043f\u0438\u0441\u043e\u043a\u0421\u0438\u0441\u0442\u0435\u043c \u0421\u043f\u0440 \u0421\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a \u0421\u043f\u0440\u0411\u043b\u043e\u043a\u0415\u0441\u0442\u044c \u0421\u043f\u0440\u0411\u043b\u043e\u043a\u0421\u043d\u044f\u0442\u044c \u0421\u043f\u0440\u0411\u043b\u043e\u043a\u0421\u043d\u044f\u0442\u044c\u0420\u0430\u0441\u0448 \u0421\u043f\u0440\u0411\u043b\u043e\u043a\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0421\u043f\u0440\u0418\u0437\u043c\u041d\u0430\u0431\u0414\u0430\u043d \u0421\u043f\u0440\u041a\u043e\u0434 \u0421\u043f\u0440\u041d\u043e\u043c\u0435\u0440 \u0421\u043f\u0440\u041e\u0431\u043d\u043e\u0432\u0438\u0442\u044c \u0421\u043f\u0440\u041e\u0442\u043a\u0440\u044b\u0442\u044c \u0421\u043f\u0440\u041e\u0442\u043c\u0435\u043d\u0438\u0442\u044c \u0421\u043f\u0440\u041f\u0430\u0440\u0430\u043c \u0421\u043f\u0440\u041f\u043e\u043b\u0435\u0417\u043d\u0430\u0447 \u0421\u043f\u0440\u041f\u043e\u043b\u0435\u0418\u043c\u044f \u0421\u043f\u0440\u0420\u0435\u043a\u0432 \u0421\u043f\u0440\u0420\u0435\u043a\u0432\u0412\u0432\u0435\u0434\u0417\u043d \u0421\u043f\u0440\u0420\u0435\u043a\u0432\u041d\u043e\u0432\u044b\u0435 \u0421\u043f\u0440\u0420\u0435\u043a\u0432\u041f\u0440 \u0421\u043f\u0440\u0420\u0435\u043a\u0432\u041f\u0440\u0435\u0434\u0417\u043d \u0421\u043f\u0440\u0420\u0435\u043a\u0432\u0420\u0435\u0436\u0438\u043c \u0421\u043f\u0440\u0420\u0435\u043a\u0432\u0422\u0438\u043f\u0422\u0435\u043a\u0441\u0442 \u0421\u043f\u0440\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0421\u043f\u0440\u0421\u043e\u0441\u0442 \u0421\u043f\u0440\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0421\u043f\u0440\u0422\u0431\u043b\u0418\u0442\u043e\u0433 \u0421\u043f\u0440\u0422\u0431\u043b\u0421\u0442\u0440 \u0421\u043f\u0440\u0422\u0431\u043b\u0421\u0442\u0440\u041a\u043e\u043b \u0421\u043f\u0440\u0422\u0431\u043b\u0421\u0442\u0440\u041c\u0430\u043a\u0441 \u0421\u043f\u0440\u0422\u0431\u043b\u0421\u0442\u0440\u041c\u0438\u043d \u0421\u043f\u0440\u0422\u0431\u043b\u0421\u0442\u0440\u041f\u0440\u0435\u0434 \u0421\u043f\u0440\u0422\u0431\u043b\u0421\u0442\u0440\u0421\u043b\u0435\u0434 \u0421\u043f\u0440\u0422\u0431\u043b\u0421\u0442\u0440\u0421\u043e\u0437\u0434 \u0421\u043f\u0440\u0422\u0431\u043b\u0421\u0442\u0440\u0423\u0434 \u0421\u043f\u0440\u0422\u0435\u043a\u041f\u0440\u0435\u0434\u0441\u0442 \u0421\u043f\u0440\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0421\u0440\u0430\u0432\u043d\u0438\u0442\u044c\u0421\u0442\u0440 \u0421\u0442\u0440\u0412\u0435\u0440\u0445\u0420\u0435\u0433\u0438\u0441\u0442\u0440 \u0421\u0442\u0440\u041d\u0438\u0436\u043d\u0420\u0435\u0433\u0438\u0441\u0442\u0440 \u0421\u0442\u0440\u0422\u0431\u043b\u0421\u043f\u0440 \u0421\u0443\u043c\u041f\u0440\u043e\u043f \u0421\u0446\u0435\u043d\u0430\u0440\u0438\u0439 \u0421\u0446\u0435\u043d\u0430\u0440\u0438\u0439\u041f\u0430\u0440\u0430\u043c \u0422\u0435\u043a\u0412\u0435\u0440\u0441\u0438\u044f \u0422\u0435\u043a\u041e\u0440\u0433 \u0422\u043e\u0447\u043d \u0422\u0440\u0430\u043d \u0422\u0440\u0430\u043d\u0441\u043b\u0438\u0442\u0435\u0440\u0430\u0446\u0438\u044f \u0423\u0434\u0430\u043b\u0438\u0442\u044c\u0422\u0430\u0431\u043b\u0438\u0446\u0443 \u0423\u0434\u0430\u043b\u0438\u0442\u044c\u0424\u0430\u0439\u043b \u0423\u0434\u0421\u043f\u0440 \u0423\u0434\u0421\u0442\u0440\u0422\u0431\u043b\u0421\u043f\u0440 \u0423\u0441\u0442 \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438\u041a\u043e\u043d\u0441\u0442\u0430\u043d\u0442 \u0424\u0430\u0439\u043b\u0410\u0442\u0440\u0438\u0431\u0443\u0442\u0421\u0447\u0438\u0442\u0430\u0442\u044c \u0424\u0430\u0439\u043b\u0410\u0442\u0440\u0438\u0431\u0443\u0442\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0424\u0430\u0439\u043b\u0412\u0440\u0435\u043c\u044f \u0424\u0430\u0439\u043b\u0412\u0440\u0435\u043c\u044f\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0424\u0430\u0439\u043b\u0412\u044b\u0431\u0440\u0430\u0442\u044c \u0424\u0430\u0439\u043b\u0417\u0430\u043d\u044f\u0442 \u0424\u0430\u0439\u043b\u0417\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0424\u0430\u0439\u043b\u0418\u0441\u043a\u0430\u0442\u044c \u0424\u0430\u0439\u043b\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0424\u0430\u0439\u043b\u041c\u043e\u0436\u043d\u043e\u0427\u0438\u0442\u0430\u0442\u044c \u0424\u0430\u0439\u043b\u041e\u0442\u043a\u0440\u044b\u0442\u044c \u0424\u0430\u0439\u043b\u041f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u0442\u044c \u0424\u0430\u0439\u043b\u041f\u0435\u0440\u0435\u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0424\u0430\u0439\u043b\u041f\u0435\u0440\u0435\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u0424\u0430\u0439\u043b\u041f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0424\u0430\u0439\u043b\u0420\u0430\u0437\u043c\u0435\u0440 \u0424\u0430\u0439\u043b\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0424\u0430\u0439\u043b\u0421\u0441\u044b\u043b\u043a\u0430\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0424\u0430\u0439\u043b\u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0424\u0430\u0439\u043b\u0421\u0447\u0438\u0442\u0430\u0442\u044c \u0424\u0430\u0439\u043b\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0424\u043c\u0442SQL\u0414\u0430\u0442 \u0424\u043c\u0442\u0414\u0430\u0442 \u0424\u043c\u0442\u0421\u0442\u0440 \u0424\u043c\u0442\u0427\u0441\u043b \u0424\u043e\u0440\u043c\u0430\u0442 \u0426\u041c\u0430\u0441\u0441\u0438\u0432\u042d\u043b\u0435\u043c\u0435\u043d\u0442 \u0426\u041d\u0430\u0431\u043e\u0440\u0414\u0430\u043d\u043d\u044b\u0445\u0420\u0435\u043a\u0432\u0438\u0437\u0438\u0442 \u0426\u041f\u043e\u0434\u0441\u0442\u0440 " +},begin:e,end:"\\(",returnBegin:!0,excludeEnd:!0},I,A,T,_,O]},N,I,A,T,_,O]}}})() +;hljs.registerLanguage("isbl",S)})();/*! `tcl` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const a=e.regex,t=/[a-zA-Z_][a-zA-Z0-9_]*/,r={className:"number", +variants:[e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE]};return{name:"Tcl", +aliases:["tk"], +keywords:["after","append","apply","array","auto_execok","auto_import","auto_load","auto_mkindex","auto_mkindex_old","auto_qualify","auto_reset","bgerror","binary","break","catch","cd","chan","clock","close","concat","continue","dde","dict","encoding","eof","error","eval","exec","exit","expr","fblocked","fconfigure","fcopy","file","fileevent","filename","flush","for","foreach","format","gets","glob","global","history","http","if","incr","info","interp","join","lappend|10","lassign|10","lindex|10","linsert|10","list","llength|10","load","lrange|10","lrepeat|10","lreplace|10","lreverse|10","lsearch|10","lset|10","lsort|10","mathfunc","mathop","memory","msgcat","namespace","open","package","parray","pid","pkg::create","pkg_mkIndex","platform","platform::shell","proc","puts","pwd","read","refchan","regexp","registry","regsub|10","rename","return","safe","scan","seek","set","socket","source","split","string","subst","switch","tcl_endOfWord","tcl_findLibrary","tcl_startOfNextWord","tcl_startOfPreviousWord","tcl_wordBreakAfter","tcl_wordBreakBefore","tcltest","tclvars","tell","time","tm","trace","unknown","unload","unset","update","uplevel","upvar","variable","vwait","while"], +contains:[e.COMMENT(";[ \\t]*#","$"),e.COMMENT("^[ \\t]*#","$"),{ +beginKeywords:"proc",end:"[\\{]",excludeEnd:!0,contains:[{className:"title", +begin:"[ \\t\\n\\r]+(::)?[a-zA-Z_]((::)?[a-zA-Z0-9_])*",end:"[ \\t\\n\\r]", +endsWithParent:!0,excludeEnd:!0}]},{className:"variable",variants:[{ +begin:a.concat(/\$/,a.optional(/::/),t,"(::",t,")*")},{ +begin:"\\$\\{(::)?[a-zA-Z_]((::)?[a-zA-Z0-9_])*",end:"\\}",contains:[r]}]},{ +className:"string",contains:[e.BACKSLASH_ESCAPE], +variants:[e.inherit(e.QUOTE_STRING_MODE,{illegal:null})]},r]}}})() +;hljs.registerLanguage("tcl",e)})();/*! `rust` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const t=e.regex,a={ +className:"title.function.invoke",relevance:0, +begin:t.concat(/\b/,/(?!let\b)/,e.IDENT_RE,t.lookahead(/\s*\(/)) +},n="([ui](8|16|32|64|128|size)|f(32|64))?",s=["drop ","Copy","Send","Sized","Sync","Drop","Fn","FnMut","FnOnce","ToOwned","Clone","Debug","PartialEq","PartialOrd","Eq","Ord","AsRef","AsMut","Into","From","Default","Iterator","Extend","IntoIterator","DoubleEndedIterator","ExactSizeIterator","SliceConcatExt","ToString","assert!","assert_eq!","bitflags!","bytes!","cfg!","col!","concat!","concat_idents!","debug_assert!","debug_assert_eq!","env!","panic!","file!","format!","format_args!","include_bytes!","include_str!","line!","local_data_key!","module_path!","option_env!","print!","println!","select!","stringify!","try!","unimplemented!","unreachable!","vec!","write!","writeln!","macro_rules!","assert_ne!","debug_assert_ne!"],r=["i8","i16","i32","i64","i128","isize","u8","u16","u32","u64","u128","usize","f32","f64","str","char","bool","Box","Option","Result","String","Vec"] +;return{name:"Rust",aliases:["rs"],keywords:{$pattern:e.IDENT_RE+"!?",type:r, +keyword:["abstract","as","async","await","become","box","break","const","continue","crate","do","dyn","else","enum","extern","false","final","fn","for","if","impl","in","let","loop","macro","match","mod","move","mut","override","priv","pub","ref","return","self","Self","static","struct","super","trait","true","try","type","typeof","unsafe","unsized","use","virtual","where","while","yield"], +literal:["true","false","Some","None","Ok","Err"],built_in:s},illegal:"</", +contains:[e.C_LINE_COMMENT_MODE,e.COMMENT("/\\*","\\*/",{contains:["self"] +}),e.inherit(e.QUOTE_STRING_MODE,{begin:/b?"/,illegal:null}),{ +className:"string",variants:[{begin:/b?r(#*)"(.|\n)*?"\1(?!#)/},{ +begin:/b?'\\?(x\w{2}|u\w{4}|U\w{8}|.)'/}]},{className:"symbol", +begin:/'[a-zA-Z_][a-zA-Z0-9_]*/},{className:"number",variants:[{ +begin:"\\b0b([01_]+)"+n},{begin:"\\b0o([0-7_]+)"+n},{ +begin:"\\b0x([A-Fa-f0-9_]+)"+n},{ +begin:"\\b(\\d[\\d_]*(\\.[0-9_]+)?([eE][+-]?[0-9_]+)?)"+n}],relevance:0},{ +begin:[/fn/,/\s+/,e.UNDERSCORE_IDENT_RE],className:{1:"keyword", +3:"title.function"}},{className:"meta",begin:"#!?\\[",end:"\\]",contains:[{ +className:"string",begin:/"/,end:/"/}]},{ +begin:[/let/,/\s+/,/(?:mut\s+)?/,e.UNDERSCORE_IDENT_RE],className:{1:"keyword", +3:"keyword",4:"variable"}},{ +begin:[/for/,/\s+/,e.UNDERSCORE_IDENT_RE,/\s+/,/in/],className:{1:"keyword", +3:"variable",5:"keyword"}},{begin:[/type/,/\s+/,e.UNDERSCORE_IDENT_RE], +className:{1:"keyword",3:"title.class"}},{ +begin:[/(?:trait|enum|struct|union|impl|for)/,/\s+/,e.UNDERSCORE_IDENT_RE], +className:{1:"keyword",3:"title.class"}},{begin:e.IDENT_RE+"::",keywords:{ +keyword:"Self",built_in:s,type:r}},{className:"punctuation",begin:"->"},a]}}})() +;hljs.registerLanguage("rust",e)})();/*! `parser3` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const a=e.COMMENT(/\{/,/\}/,{ +contains:["self"]});return{name:"Parser3",subLanguage:"xml",relevance:0, +contains:[e.COMMENT("^#","$"),e.COMMENT(/\^rem\{/,/\}/,{relevance:10, +contains:[a]}),{className:"meta",begin:"^@(?:BASE|USE|CLASS|OPTIONS)$", +relevance:10},{className:"title", +begin:"@[\\w\\-]+\\[[\\w^;\\-]*\\](?:\\[[\\w^;\\-]*\\])?(?:.*)$"},{ +className:"variable",begin:/\$\{?[\w\-.:]+\}?/},{className:"keyword", +begin:/\^[\w\-.:]+/},{className:"number",begin:"\\^#[0-9a-fA-F]+" +},e.C_NUMBER_MODE]}}})();hljs.registerLanguage("parser3",e)})();/*! `cos` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Cach\xe9 Object Script", +case_insensitive:!0,aliases:["cls"], +keywords:"property parameter class classmethod clientmethod extends as break catch close continue do d|0 else elseif for goto halt hang h|0 if job j|0 kill k|0 lock l|0 merge new open quit q|0 read r|0 return set s|0 tcommit throw trollback try tstart use view while write w|0 xecute x|0 zkill znspace zn ztrap zwrite zw zzdump zzwrite print zbreak zinsert zload zprint zremove zsave zzprint mv mvcall mvcrt mvdim mvprint zquit zsync ascii", +contains:[{className:"number",begin:"\\b(\\d+(\\.\\d*)?|\\.\\d+)",relevance:0},{ +className:"string",variants:[{begin:'"',end:'"',contains:[{begin:'""', +relevance:0}]}]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{ +className:"comment",begin:/;/,end:"$",relevance:0},{className:"built_in", +begin:/(?:\$\$?|\.\.)\^?[a-zA-Z]+/},{className:"built_in", +begin:/\$\$\$[a-zA-Z]+/},{className:"built_in",begin:/%[a-z]+(?:\.[a-z]+)*/},{ +className:"symbol",begin:/\^%?[a-zA-Z][\w]*/},{className:"keyword", +begin:/##class|##super|#define|#dim/},{begin:/&sql\(/,end:/\)/,excludeBegin:!0, +excludeEnd:!0,subLanguage:"sql"},{begin:/&(js|jscript|javascript)</,end:/>/, +excludeBegin:!0,excludeEnd:!0,subLanguage:"javascript"},{begin:/&html<\s*</, +end:/>\s*>/,subLanguage:"xml"}]})})();hljs.registerLanguage("cos",e)})();/*! `purebasic` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"PureBASIC", +aliases:["pb","pbi"], +keywords:"Align And Array As Break CallDebugger Case CompilerCase CompilerDefault CompilerElse CompilerElseIf CompilerEndIf CompilerEndSelect CompilerError CompilerIf CompilerSelect CompilerWarning Continue Data DataSection Debug DebugLevel Declare DeclareC DeclareCDLL DeclareDLL DeclareModule Default Define Dim DisableASM DisableDebugger DisableExplicit Else ElseIf EnableASM EnableDebugger EnableExplicit End EndDataSection EndDeclareModule EndEnumeration EndIf EndImport EndInterface EndMacro EndModule EndProcedure EndSelect EndStructure EndStructureUnion EndWith Enumeration EnumerationBinary Extends FakeReturn For ForEach ForEver Global Gosub Goto If Import ImportC IncludeBinary IncludeFile IncludePath Interface List Macro MacroExpandedCount Map Module NewList NewMap Next Not Or Procedure ProcedureC ProcedureCDLL ProcedureDLL ProcedureReturn Protected Prototype PrototypeC ReDim Read Repeat Restore Return Runtime Select Shared Static Step Structure StructureUnion Swap Threaded To UndefineMacro Until Until UnuseModule UseModule Wend While With XIncludeFile XOr", +contains:[e.COMMENT(";","$",{relevance:0}),{className:"function", +begin:"\\b(Procedure|Declare)(C|CDLL|DLL)?\\b",end:"\\(",excludeEnd:!0, +returnBegin:!0,contains:[{className:"keyword", +begin:"(Procedure|Declare)(C|CDLL|DLL)?",excludeEnd:!0},{className:"type", +begin:"\\.\\w*"},e.UNDERSCORE_TITLE_MODE]},{className:"string",begin:'(~)?"', +end:'"',illegal:"\\n"},{className:"symbol",begin:"#[a-zA-Z_]\\w*\\$?"}]})})() +;hljs.registerLanguage("purebasic",e)})();/*! `ruby` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const n=e.regex,a="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",s=n.either(/\b([A-Z]+[a-z0-9]+)+/,/\b([A-Z]+[a-z0-9]+)+[A-Z]+/),i=n.concat(s,/(::\w+)*/),t={ +"variable.constant":["__FILE__","__LINE__","__ENCODING__"], +"variable.language":["self","super"], +keyword:["alias","and","begin","BEGIN","break","case","class","defined","do","else","elsif","end","END","ensure","for","if","in","module","next","not","or","redo","require","rescue","retry","return","then","undef","unless","until","when","while","yield","include","extend","prepend","public","private","protected","raise","throw"], +built_in:["proc","lambda","attr_accessor","attr_reader","attr_writer","define_method","private_constant","module_function"], +literal:["true","false","nil"]},c={className:"doctag",begin:"@[A-Za-z]+"},r={ +begin:"#<",end:">"},b=[e.COMMENT("#","$",{contains:[c] +}),e.COMMENT("^=begin","^=end",{contains:[c],relevance:10 +}),e.COMMENT("^__END__",e.MATCH_NOTHING_RE)],l={className:"subst",begin:/#\{/, +end:/\}/,keywords:t},d={className:"string",contains:[e.BACKSLASH_ESCAPE,l], +variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{ +begin:/%[qQwWx]?\(/,end:/\)/},{begin:/%[qQwWx]?\[/,end:/\]/},{ +begin:/%[qQwWx]?\{/,end:/\}/},{begin:/%[qQwWx]?</,end:/>/},{begin:/%[qQwWx]?\//, +end:/\//},{begin:/%[qQwWx]?%/,end:/%/},{begin:/%[qQwWx]?-/,end:/-/},{ +begin:/%[qQwWx]?\|/,end:/\|/},{begin:/\B\?(\\\d{1,3})/},{ +begin:/\B\?(\\x[A-Fa-f0-9]{1,2})/},{begin:/\B\?(\\u\{?[A-Fa-f0-9]{1,6}\}?)/},{ +begin:/\B\?(\\M-\\C-|\\M-\\c|\\c\\M-|\\M-|\\C-\\M-)[\x20-\x7e]/},{ +begin:/\B\?\\(c|C-)[\x20-\x7e]/},{begin:/\B\?\\?\S/},{ +begin:n.concat(/<<[-~]?'?/,n.lookahead(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)), +contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/, +contains:[e.BACKSLASH_ESCAPE,l]})]}]},o="[0-9](_?[0-9])*",g={className:"number", +relevance:0,variants:[{ +begin:`\\b([1-9](_?[0-9])*|0)(\\.(${o}))?([eE][+-]?(${o})|r)?i?\\b`},{ +begin:"\\b0[dD][0-9](_?[0-9])*r?i?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*r?i?\\b" +},{begin:"\\b0[oO][0-7](_?[0-7])*r?i?\\b"},{ +begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b"},{ +begin:"\\b0(_?[0-7])+r?i?\\b"}]},_={variants:[{match:/\(\)/},{ +className:"params",begin:/\(/,end:/(?=\))/,excludeBegin:!0,endsParent:!0, +keywords:t}]},u=[d,{variants:[{match:[/class\s+/,i,/\s+<\s+/,i]},{ +match:[/\b(class|module)\s+/,i]}],scope:{2:"title.class", +4:"title.class.inherited"},keywords:t},{match:[/(include|extend)\s+/,i],scope:{ +2:"title.class"},keywords:t},{relevance:0,match:[i,/\.new[. (]/],scope:{ +1:"title.class"}},{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/, +className:"variable.constant"},{relevance:0,match:s,scope:"title.class"},{ +match:[/def/,/\s+/,a],scope:{1:"keyword",3:"title.function"},contains:[_]},{ +begin:e.IDENT_RE+"::"},{className:"symbol", +begin:e.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol", +begin:":(?!\\s)",contains:[d,{begin:a}],relevance:0},g,{className:"variable", +begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{ +className:"params",begin:/\|/,end:/\|/,excludeBegin:!0,excludeEnd:!0, +relevance:0,keywords:t},{begin:"("+e.RE_STARTERS_RE+"|unless)\\s*", +keywords:"unless",contains:[{className:"regexp",contains:[e.BACKSLASH_ESCAPE,l], +illegal:/\n/,variants:[{begin:"/",end:"/[a-z]*"},{begin:/%r\{/,end:/\}[a-z]*/},{ +begin:"%r\\(",end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[", +end:"\\][a-z]*"}]}].concat(r,b),relevance:0}].concat(r,b) +;l.contains=u,_.contains=u;const m=[{begin:/^\s*=>/,starts:{end:"$",contains:u} +},{className:"meta.prompt", +begin:"^([>?]>|[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]|(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>)(?=[ ])", +starts:{end:"$",keywords:t,contains:u}}];return b.unshift(r),{name:"Ruby", +aliases:["rb","gemspec","podspec","thor","irb"],keywords:t,illegal:/\/\*/, +contains:[e.SHEBANG({binary:"ruby"})].concat(m).concat(b).concat(u)}}})() +;hljs.registerLanguage("ruby",e)})();/*! `haml` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"HAML",case_insensitive:!0, +contains:[{className:"meta", +begin:"^!!!( (5|1\\.1|Strict|Frameset|Basic|Mobile|RDFa|XML\\b.*))?$", +relevance:10},e.COMMENT("^\\s*(!=#|=#|-#|/).*$",null,{relevance:0}),{ +begin:"^\\s*(-|=|!=)(?!#)",end:/$/,subLanguage:"ruby",excludeBegin:!0, +excludeEnd:!0},{className:"tag",begin:"^\\s*%",contains:[{ +className:"selector-tag",begin:"\\w+"},{className:"selector-id",begin:"#[\\w-]+" +},{className:"selector-class",begin:"\\.[\\w-]+"},{begin:/\{\s*/,end:/\s*\}/, +contains:[{begin:":\\w+\\s*=>",end:",\\s+",returnBegin:!0,endsWithParent:!0, +contains:[{className:"attr",begin:":\\w+" +},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{begin:"\\w+",relevance:0}]}]},{ +begin:"\\(\\s*",end:"\\s*\\)",excludeEnd:!0,contains:[{begin:"\\w+\\s*=", +end:"\\s+",returnBegin:!0,endsWithParent:!0,contains:[{className:"attr", +begin:"\\w+",relevance:0},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{begin:"\\w+", +relevance:0}]}]}]},{begin:"^\\s*[=~]\\s*"},{begin:/#\{/,end:/\}/, +subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0}]})})() +;hljs.registerLanguage("haml",e)})();/*! `basic` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var E=(()=>{"use strict";return E=>({name:"BASIC",case_insensitive:!0, +illegal:"^.",keywords:{$pattern:"[a-zA-Z][a-zA-Z0-9_$%!#]*", +keyword:["ABS","ASC","AND","ATN","AUTO|0","BEEP","BLOAD|10","BSAVE|10","CALL","CALLS","CDBL","CHAIN","CHDIR","CHR$|10","CINT","CIRCLE","CLEAR","CLOSE","CLS","COLOR","COM","COMMON","CONT","COS","CSNG","CSRLIN","CVD","CVI","CVS","DATA","DATE$","DEFDBL","DEFINT","DEFSNG","DEFSTR","DEF|0","SEG","USR","DELETE","DIM","DRAW","EDIT","END","ENVIRON","ENVIRON$","EOF","EQV","ERASE","ERDEV","ERDEV$","ERL","ERR","ERROR","EXP","FIELD","FILES","FIX","FOR|0","FRE","GET","GOSUB|10","GOTO","HEX$","IF","THEN","ELSE|0","INKEY$","INP","INPUT","INPUT#","INPUT$","INSTR","IMP","INT","IOCTL","IOCTL$","KEY","ON","OFF","LIST","KILL","LEFT$","LEN","LET","LINE","LLIST","LOAD","LOC","LOCATE","LOF","LOG","LPRINT","USING","LSET","MERGE","MID$","MKDIR","MKD$","MKI$","MKS$","MOD","NAME","NEW","NEXT","NOISE","NOT","OCT$","ON","OR","PEN","PLAY","STRIG","OPEN","OPTION","BASE","OUT","PAINT","PALETTE","PCOPY","PEEK","PMAP","POINT","POKE","POS","PRINT","PRINT]","PSET","PRESET","PUT","RANDOMIZE","READ","REM","RENUM","RESET|0","RESTORE","RESUME","RETURN|0","RIGHT$","RMDIR","RND","RSET","RUN","SAVE","SCREEN","SGN","SHELL","SIN","SOUND","SPACE$","SPC","SQR","STEP","STICK","STOP","STR$","STRING$","SWAP","SYSTEM","TAB","TAN","TIME$","TIMER","TROFF","TRON","TO","USR","VAL","VARPTR","VARPTR$","VIEW","WAIT","WHILE","WEND","WIDTH","WINDOW","WRITE","XOR"] +},contains:[E.QUOTE_STRING_MODE,E.COMMENT("REM","$",{relevance:10 +}),E.COMMENT("'","$",{relevance:0}),{className:"symbol",begin:"^[0-9]+ ", +relevance:10},{className:"number",begin:"\\b\\d+(\\.\\d+)?([edED]\\d+)?[#!]?", +relevance:0},{className:"number",begin:"(&[hH][0-9a-fA-F]{1,4})"},{ +className:"number",begin:"(&[oO][0-7]{1,6})"}]})})() +;hljs.registerLanguage("basic",E)})();/*! `ldif` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var a=(()=>{"use strict";return a=>({name:"LDIF",contains:[{ +className:"attribute",match:"^dn(?=:)",relevance:10},{className:"attribute", +match:"^\\w+(?=:)"},{className:"literal",match:"^-"},a.HASH_COMMENT_MODE]})})() +;hljs.registerLanguage("ldif",a)})();/*! `fortran` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n=e.regex,a={ +variants:[e.COMMENT("!","$",{relevance:0}),e.COMMENT("^C[ ]","$",{relevance:0 +}),e.COMMENT("^C$","$",{relevance:0})] +},t=/(_[a-z_\d]+)?/,i=/([de][+-]?\d+)?/,c={className:"number",variants:[{ +begin:n.concat(/\b\d+/,/\.(\d*)/,i,t)},{begin:n.concat(/\b\d+/,i,t)},{ +begin:n.concat(/\.\d+/,i,t)}],relevance:0},o={className:"function", +beginKeywords:"subroutine function program",illegal:"[${=\\n]", +contains:[e.UNDERSCORE_TITLE_MODE,{className:"params",begin:"\\(",end:"\\)"}]} +;return{name:"Fortran",case_insensitive:!0,aliases:["f90","f95"],keywords:{ +keyword:["kind","do","concurrent","local","shared","while","private","call","intrinsic","where","elsewhere","type","endtype","endmodule","endselect","endinterface","end","enddo","endif","if","forall","endforall","only","contains","default","return","stop","then","block","endblock","endassociate","public","subroutine|10","function","program",".and.",".or.",".not.",".le.",".eq.",".ge.",".gt.",".lt.","goto","save","else","use","module","select","case","access","blank","direct","exist","file","fmt","form","formatted","iostat","name","named","nextrec","number","opened","rec","recl","sequential","status","unformatted","unit","continue","format","pause","cycle","exit","c_null_char","c_alert","c_backspace","c_form_feed","flush","wait","decimal","round","iomsg","synchronous","nopass","non_overridable","pass","protected","volatile","abstract","extends","import","non_intrinsic","value","deferred","generic","final","enumerator","class","associate","bind","enum","c_int","c_short","c_long","c_long_long","c_signed_char","c_size_t","c_int8_t","c_int16_t","c_int32_t","c_int64_t","c_int_least8_t","c_int_least16_t","c_int_least32_t","c_int_least64_t","c_int_fast8_t","c_int_fast16_t","c_int_fast32_t","c_int_fast64_t","c_intmax_t","C_intptr_t","c_float","c_double","c_long_double","c_float_complex","c_double_complex","c_long_double_complex","c_bool","c_char","c_null_ptr","c_null_funptr","c_new_line","c_carriage_return","c_horizontal_tab","c_vertical_tab","iso_c_binding","c_loc","c_funloc","c_associated","c_f_pointer","c_ptr","c_funptr","iso_fortran_env","character_storage_size","error_unit","file_storage_size","input_unit","iostat_end","iostat_eor","numeric_storage_size","output_unit","c_f_procpointer","ieee_arithmetic","ieee_support_underflow_control","ieee_get_underflow_mode","ieee_set_underflow_mode","newunit","contiguous","recursive","pad","position","action","delim","readwrite","eor","advance","nml","interface","procedure","namelist","include","sequence","elemental","pure","impure","integer","real","character","complex","logical","codimension","dimension","allocatable|10","parameter","external","implicit|10","none","double","precision","assign","intent","optional","pointer","target","in","out","common","equivalence","data"], +literal:[".False.",".True."], +built_in:["alog","alog10","amax0","amax1","amin0","amin1","amod","cabs","ccos","cexp","clog","csin","csqrt","dabs","dacos","dasin","datan","datan2","dcos","dcosh","ddim","dexp","dint","dlog","dlog10","dmax1","dmin1","dmod","dnint","dsign","dsin","dsinh","dsqrt","dtan","dtanh","float","iabs","idim","idint","idnint","ifix","isign","max0","max1","min0","min1","sngl","algama","cdabs","cdcos","cdexp","cdlog","cdsin","cdsqrt","cqabs","cqcos","cqexp","cqlog","cqsin","cqsqrt","dcmplx","dconjg","derf","derfc","dfloat","dgamma","dimag","dlgama","iqint","qabs","qacos","qasin","qatan","qatan2","qcmplx","qconjg","qcos","qcosh","qdim","qerf","qerfc","qexp","qgamma","qimag","qlgama","qlog","qlog10","qmax1","qmin1","qmod","qnint","qsign","qsin","qsinh","qsqrt","qtan","qtanh","abs","acos","aimag","aint","anint","asin","atan","atan2","char","cmplx","conjg","cos","cosh","exp","ichar","index","int","log","log10","max","min","nint","sign","sin","sinh","sqrt","tan","tanh","print","write","dim","lge","lgt","lle","llt","mod","nullify","allocate","deallocate","adjustl","adjustr","all","allocated","any","associated","bit_size","btest","ceiling","count","cshift","date_and_time","digits","dot_product","eoshift","epsilon","exponent","floor","fraction","huge","iand","ibclr","ibits","ibset","ieor","ior","ishft","ishftc","lbound","len_trim","matmul","maxexponent","maxloc","maxval","merge","minexponent","minloc","minval","modulo","mvbits","nearest","pack","present","product","radix","random_number","random_seed","range","repeat","reshape","rrspacing","scale","scan","selected_int_kind","selected_real_kind","set_exponent","shape","size","spacing","spread","sum","system_clock","tiny","transpose","trim","ubound","unpack","verify","achar","iachar","transfer","dble","entry","dprod","cpu_time","command_argument_count","get_command","get_command_argument","get_environment_variable","is_iostat_end","ieee_arithmetic","ieee_support_underflow_control","ieee_get_underflow_mode","ieee_set_underflow_mode","is_iostat_eor","move_alloc","new_line","selected_char_kind","same_type_as","extends_type_of","acosh","asinh","atanh","bessel_j0","bessel_j1","bessel_jn","bessel_y0","bessel_y1","bessel_yn","erf","erfc","erfc_scaled","gamma","log_gamma","hypot","norm2","atomic_define","atomic_ref","execute_command_line","leadz","trailz","storage_size","merge_bits","bge","bgt","ble","blt","dshiftl","dshiftr","findloc","iall","iany","iparity","image_index","lcobound","ucobound","maskl","maskr","num_images","parity","popcnt","poppar","shifta","shiftl","shiftr","this_image","sync","change","team","co_broadcast","co_max","co_min","co_sum","co_reduce"] +},illegal:/\/\*/,contains:[{className:"string",relevance:0, +variants:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},o,{begin:/^C\s*=(?!=)/, +relevance:0},a,c]}}})();hljs.registerLanguage("fortran",e)})();/*! `nim` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Nim",keywords:{ +keyword:["addr","and","as","asm","bind","block","break","case","cast","const","continue","converter","discard","distinct","div","do","elif","else","end","enum","except","export","finally","for","from","func","generic","guarded","if","import","in","include","interface","is","isnot","iterator","let","macro","method","mixin","mod","nil","not","notin","object","of","or","out","proc","ptr","raise","ref","return","shared","shl","shr","static","template","try","tuple","type","using","var","when","while","with","without","xor","yield"], +literal:["true","false"], +type:["int","int8","int16","int32","int64","uint","uint8","uint16","uint32","uint64","float","float32","float64","bool","char","string","cstring","pointer","expr","stmt","void","auto","any","range","array","openarray","varargs","seq","set","clong","culong","cchar","cschar","cshort","cint","csize","clonglong","cfloat","cdouble","clongdouble","cuchar","cushort","cuint","culonglong","cstringarray","semistatic"], +built_in:["stdin","stdout","stderr","result"]},contains:[{className:"meta", +begin:/\{\./,end:/\.\}/,relevance:10},{className:"string",begin:/[a-zA-Z]\w*"/, +end:/"/,contains:[{begin:/""/}]},{className:"string",begin:/([a-zA-Z]\w*)?"""/, +end:/"""/},e.QUOTE_STRING_MODE,{className:"type",begin:/\b[A-Z]\w+\b/, +relevance:0},{className:"number",relevance:0,variants:[{ +begin:/\b(0[xX][0-9a-fA-F][_0-9a-fA-F]*)('?[iIuU](8|16|32|64))?/},{ +begin:/\b(0o[0-7][_0-7]*)('?[iIuUfF](8|16|32|64))?/},{ +begin:/\b(0(b|B)[01][_01]*)('?[iIuUfF](8|16|32|64))?/},{ +begin:/\b(\d[_\d]*)('?[iIuUfF](8|16|32|64))?/}]},e.HASH_COMMENT_MODE]})})() +;hljs.registerLanguage("nim",e)})();/*! `zephir` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n={className:"string", +contains:[e.BACKSLASH_ESCAPE],variants:[e.inherit(e.APOS_STRING_MODE,{ +illegal:null}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null})] +},a=e.UNDERSCORE_TITLE_MODE,s={variants:[e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE] +},i="namespace class interface use extends function return abstract final public protected private static deprecated throw try catch Exception echo empty isset instanceof unset let var new const self require if else elseif switch case default do while loop for continue break likely unlikely __LINE__ __FILE__ __DIR__ __FUNCTION__ __CLASS__ __TRAIT__ __METHOD__ __NAMESPACE__ array boolean float double integer object resource string char long unsigned bool int uint ulong uchar true false null undefined" +;return{name:"Zephir",aliases:["zep"],keywords:i, +contains:[e.C_LINE_COMMENT_MODE,e.COMMENT(/\/\*/,/\*\//,{contains:[{ +className:"doctag",begin:/@[A-Za-z]+/}]}),{className:"string", +begin:/<<<['"]?\w+['"]?$/,end:/^\w+;/,contains:[e.BACKSLASH_ESCAPE]},{ +begin:/(::|->)+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/},{className:"function", +beginKeywords:"function fn",end:/[;{]/,excludeEnd:!0,illegal:/\$|\[|%/, +contains:[a,{className:"params",begin:/\(/,end:/\)/,keywords:i, +contains:["self",e.C_BLOCK_COMMENT_MODE,n,s]}]},{className:"class", +beginKeywords:"class interface",end:/\{/,excludeEnd:!0,illegal:/[:($"]/, +contains:[{beginKeywords:"extends implements"},a]},{beginKeywords:"namespace", +end:/;/,illegal:/[.']/,contains:[a]},{beginKeywords:"use",end:/;/,contains:[a] +},{begin:/=>/},n,s]}}})();hljs.registerLanguage("zephir",e)})();/*! `taggerscript` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Tagger Script",contains:[{ +className:"comment",begin:/\$noop\(/,end:/\)/,contains:[{begin:/\\[()]/},{ +begin:/\(/,end:/\)/,contains:[{begin:/\\[()]/},"self"]}],relevance:10},{ +className:"keyword",begin:/\$[_a-zA-Z0-9]+(?=\()/},{className:"variable", +begin:/%[_a-zA-Z0-9:]+%/},{className:"symbol",begin:/\\[\\nt$%,()]/},{ +className:"symbol",begin:/\\u[a-fA-F0-9]{4}/}]})})() +;hljs.registerLanguage("taggerscript",e)})();/*! `axapta` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const t=e.UNDERSCORE_IDENT_RE,s={ +keyword:["abstract","as","asc","avg","break","breakpoint","by","byref","case","catch","changecompany","class","client","client","common","const","continue","count","crosscompany","delegate","delete_from","desc","display","div","do","edit","else","eventhandler","exists","extends","final","finally","firstfast","firstonly","firstonly1","firstonly10","firstonly100","firstonly1000","flush","for","forceliterals","forcenestedloop","forceplaceholders","forceselectorder","forupdate","from","generateonly","group","hint","if","implements","in","index","insert_recordset","interface","internal","is","join","like","maxof","minof","mod","namespace","new","next","nofetch","notexists","optimisticlock","order","outer","pessimisticlock","print","private","protected","public","readonly","repeatableread","retry","return","reverse","select","server","setting","static","sum","super","switch","this","throw","try","ttsabort","ttsbegin","ttscommit","unchecked","update_recordset","using","validtimestate","void","where","while"], +built_in:["anytype","boolean","byte","char","container","date","double","enum","guid","int","int64","long","real","short","str","utcdatetime","var"], +literal:["default","false","null","true"]},r={variants:[{ +match:[/(class|interface)\s+/,t,/\s+(extends|implements)\s+/,t]},{ +match:[/class\s+/,t]}],scope:{2:"title.class",4:"title.class.inherited"}, +keywords:s};return{name:"X++",aliases:["x++"],keywords:s, +contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,{ +className:"meta",begin:"#",end:"$"},r]}}})();hljs.registerLanguage("axapta",e) +})();/*! `vhdl` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"VHDL",case_insensitive:!0, +keywords:{ +keyword:["abs","access","after","alias","all","and","architecture","array","assert","assume","assume_guarantee","attribute","begin","block","body","buffer","bus","case","component","configuration","constant","context","cover","disconnect","downto","default","else","elsif","end","entity","exit","fairness","file","for","force","function","generate","generic","group","guarded","if","impure","in","inertial","inout","is","label","library","linkage","literal","loop","map","mod","nand","new","next","nor","not","null","of","on","open","or","others","out","package","parameter","port","postponed","procedure","process","property","protected","pure","range","record","register","reject","release","rem","report","restrict","restrict_guarantee","return","rol","ror","select","sequence","severity","shared","signal","sla","sll","sra","srl","strong","subtype","then","to","transport","type","unaffected","units","until","use","variable","view","vmode","vprop","vunit","wait","when","while","with","xnor","xor"], +built_in:["boolean","bit","character","integer","time","delay_length","natural","positive","string","bit_vector","file_open_kind","file_open_status","std_logic","std_logic_vector","unsigned","signed","boolean_vector","integer_vector","std_ulogic","std_ulogic_vector","unresolved_unsigned","u_unsigned","unresolved_signed","u_signed","real_vector","time_vector"], +literal:["false","true","note","warning","error","failure","line","text","side","width"] +},illegal:/\{/, +contains:[e.C_BLOCK_COMMENT_MODE,e.COMMENT("--","$"),e.QUOTE_STRING_MODE,{ +className:"number", +begin:"\\b(\\d(_|\\d)*#\\w+(\\.\\w+)?#([eE][-+]?\\d(_|\\d)*)?|\\d(_|\\d)*(\\.\\d(_|\\d)*)?([eE][-+]?\\d(_|\\d)*)?)", +relevance:0},{className:"string",begin:"'(U|X|0|1|Z|W|L|H|-)'", +contains:[e.BACKSLASH_ESCAPE]},{className:"symbol", +begin:"'[A-Za-z](_?[A-Za-z0-9])*",contains:[e.BACKSLASH_ESCAPE]}]})})() +;hljs.registerLanguage("vhdl",e)})();/*! `clojure` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const t="a-zA-Z_\\-!.?+*=<>&'",n="[#]?["+t+"]["+t+"0-9/;:$#]*",a="def defonce defprotocol defstruct defmulti defmethod defn- defn defmacro deftype defrecord",r={ +$pattern:n, +built_in:a+" cond apply if-not if-let if not not= =|0 <|0 >|0 <=|0 >=|0 ==|0 +|0 /|0 *|0 -|0 rem quot neg? pos? delay? symbol? keyword? true? false? integer? empty? coll? list? set? ifn? fn? associative? sequential? sorted? counted? reversible? number? decimal? class? distinct? isa? float? rational? reduced? ratio? odd? even? char? seq? vector? string? map? nil? contains? zero? instance? not-every? not-any? libspec? -> ->> .. . inc compare do dotimes mapcat take remove take-while drop letfn drop-last take-last drop-while while intern condp case reduced cycle split-at split-with repeat replicate iterate range merge zipmap declare line-seq sort comparator sort-by dorun doall nthnext nthrest partition eval doseq await await-for let agent atom send send-off release-pending-sends add-watch mapv filterv remove-watch agent-error restart-agent set-error-handler error-handler set-error-mode! error-mode shutdown-agents quote var fn loop recur throw try monitor-enter monitor-exit macroexpand macroexpand-1 for dosync and or when when-not when-let comp juxt partial sequence memoize constantly complement identity assert peek pop doto proxy first rest cons cast coll last butlast sigs reify second ffirst fnext nfirst nnext meta with-meta ns in-ns create-ns import refer keys select-keys vals key val rseq name namespace promise into transient persistent! conj! assoc! dissoc! pop! disj! use class type num float double short byte boolean bigint biginteger bigdec print-method print-dup throw-if printf format load compile get-in update-in pr pr-on newline flush read slurp read-line subvec with-open memfn time re-find re-groups rand-int rand mod locking assert-valid-fdecl alias resolve ref deref refset swap! reset! set-validator! compare-and-set! alter-meta! reset-meta! commute get-validator alter ref-set ref-history-count ref-min-history ref-max-history ensure sync io! new next conj set! to-array future future-call into-array aset gen-class reduce map filter find empty hash-map hash-set sorted-map sorted-map-by sorted-set sorted-set-by vec vector seq flatten reverse assoc dissoc list disj get union difference intersection extend extend-type extend-protocol int nth delay count concat chunk chunk-buffer chunk-append chunk-first chunk-rest max min dec unchecked-inc-int unchecked-inc unchecked-dec-inc unchecked-dec unchecked-negate unchecked-add-int unchecked-add unchecked-subtract-int unchecked-subtract chunk-next chunk-cons chunked-seq? prn vary-meta lazy-seq spread list* str find-keyword keyword symbol gensym force rationalize" +},s={begin:n,relevance:0},o={scope:"number",relevance:0,variants:[{ +match:/[-+]?0[xX][0-9a-fA-F]+N?/},{match:/[-+]?0[0-7]+N?/},{ +match:/[-+]?[1-9][0-9]?[rR][0-9a-zA-Z]+N?/},{match:/[-+]?[0-9]+\/[0-9]+N?/},{ +match:/[-+]?[0-9]+((\.[0-9]*([eE][+-]?[0-9]+)?M?)|([eE][+-]?[0-9]+M?|M))/},{ +match:/[-+]?([1-9][0-9]*|0)N?/}]},c={scope:"character",variants:[{ +match:/\\o[0-3]?[0-7]{1,2}/},{match:/\\u[0-9a-fA-F]{4}/},{ +match:/\\(newline|space|tab|formfeed|backspace|return)/},{match:/\\\S/, +relevance:0}]},i={scope:"regex",begin:/#"/,end:/"/,contains:[e.BACKSLASH_ESCAPE] +},d=e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),l={scope:"punctuation", +match:/,/,relevance:0},m=e.COMMENT(";","$",{relevance:0}),p={ +className:"literal",begin:/\b(true|false|nil)\b/},u={ +begin:"\\[|(#::?"+n+")?\\{",end:"[\\]\\}]",relevance:0},f={className:"symbol", +begin:"[:]{1,2}"+n},h={begin:"\\(",end:"\\)"},y={endsWithParent:!0,relevance:0 +},g={keywords:r,className:"name",begin:n,relevance:0,starts:y +},b=[l,h,c,i,d,m,f,u,o,p,s],v={beginKeywords:a,keywords:{$pattern:n,keyword:a}, +end:'(\\[|#|\\d|"|:|\\{|\\)|\\(|$)',contains:[{className:"title",begin:n, +relevance:0,excludeEnd:!0,endsParent:!0}].concat(b)} +;return h.contains=[v,g,y],y.contains=b,u.contains=b,{name:"Clojure", +aliases:["clj","edn"],illegal:/\S/,contains:[l,h,c,i,d,m,f,u,o,p]}}})() +;hljs.registerLanguage("clojure",e)})();/*! `clojure-repl` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Clojure REPL",contains:[{ +className:"meta.prompt",begin:/^([\w.-]+|\s*#_)?=>/,starts:{end:/$/, +subLanguage:"clojure"}}]})})();hljs.registerLanguage("clojure-repl",e)})();/*! `plaintext` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var t=(()=>{"use strict";return t=>({name:"Plain text", +aliases:["text","txt"],disableAutodetect:!0})})() +;hljs.registerLanguage("plaintext",t)})();/*! `javascript` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict" +;const e="[A-Za-z$_][0-9A-Za-z$_]*",n=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],a=["true","false","null","undefined","NaN","Infinity"],t=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],s=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],r=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],c=["arguments","this","super","console","window","document","localStorage","module","global"],i=[].concat(r,t,s) +;return o=>{const l=o.regex,b=e,d={begin:/<[A-Za-z0-9\\._:-]+/, +end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(e,n)=>{ +const a=e[0].length+e.index,t=e.input[a] +;if("<"===t||","===t)return void n.ignoreMatch();let s +;">"===t&&(((e,{after:n})=>{const a="</"+e[0].slice(1) +;return-1!==e.input.indexOf(a,n)})(e,{after:a})||n.ignoreMatch()) +;const r=e.input.substring(a) +;((s=r.match(/^\s*=/))||(s=r.match(/^\s+extends\s+/))&&0===s.index)&&n.ignoreMatch() +}},g={$pattern:e,keyword:n,literal:a,built_in:i,"variable.language":c +},u="\\.([0-9](_?[0-9])*)",m="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",E={ +className:"number",variants:[{ +begin:`(\\b(${m})((${u})|\\.)?|(${u}))[eE][+-]?([0-9](_?[0-9])*)\\b`},{ +begin:`\\b(${m})\\b((${u})\\b|\\.)?|(${u})\\b`},{ +begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{ +begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{ +begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{ +begin:"\\b0[0-7]+n?\\b"}],relevance:0},A={className:"subst",begin:"\\$\\{", +end:"\\}",keywords:g,contains:[]},y={begin:"html`",end:"",starts:{end:"`", +returnEnd:!1,contains:[o.BACKSLASH_ESCAPE,A],subLanguage:"xml"}},N={ +begin:"css`",end:"",starts:{end:"`",returnEnd:!1, +contains:[o.BACKSLASH_ESCAPE,A],subLanguage:"css"}},_={className:"string", +begin:"`",end:"`",contains:[o.BACKSLASH_ESCAPE,A]},h={className:"comment", +variants:[o.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{ +begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag", +begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0, +excludeBegin:!0,relevance:0},{className:"variable",begin:b+"(?=\\s*(-)|$)", +endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}] +}),o.C_BLOCK_COMMENT_MODE,o.C_LINE_COMMENT_MODE] +},f=[o.APOS_STRING_MODE,o.QUOTE_STRING_MODE,y,N,_,{match:/\$\d+/},E] +;A.contains=f.concat({begin:/\{/,end:/\}/,keywords:g,contains:["self"].concat(f) +});const v=[].concat(h,A.contains),p=v.concat([{begin:/\(/,end:/\)/,keywords:g, +contains:["self"].concat(v)}]),S={className:"params",begin:/\(/,end:/\)/, +excludeBegin:!0,excludeEnd:!0,keywords:g,contains:p},w={variants:[{ +match:[/class/,/\s+/,b,/\s+/,/extends/,/\s+/,l.concat(b,"(",l.concat(/\./,b),")*")], +scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{ +match:[/class/,/\s+/,b],scope:{1:"keyword",3:"title.class"}}]},R={relevance:0, +match:l.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/), +className:"title.class",keywords:{_:[...t,...s]}},O={variants:[{ +match:[/function/,/\s+/,b,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}], +className:{1:"keyword",3:"title.function"},label:"func.def",contains:[S], +illegal:/%/},k={ +match:l.concat(/\b/,(I=[...r,"super","import"],l.concat("(?!",I.join("|"),")")),b,l.lookahead(/\(/)), +className:"title.function",relevance:0};var I;const x={ +begin:l.concat(/\./,l.lookahead(l.concat(b,/(?![0-9A-Za-z$_(])/))),end:b, +excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},T={ +match:[/get|set/,/\s+/,b,/(?=\()/],className:{1:"keyword",3:"title.function"}, +contains:[{begin:/\(\)/},S] +},C="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+o.UNDERSCORE_IDENT_RE+")\\s*=>",M={ +match:[/const|var|let/,/\s+/,b,/\s*/,/=\s*/,/(async\s*)?/,l.lookahead(C)], +keywords:"async",className:{1:"keyword",3:"title.function"},contains:[S]} +;return{name:"Javascript",aliases:["js","jsx","mjs","cjs"],keywords:g,exports:{ +PARAMS_CONTAINS:p,CLASS_REFERENCE:R},illegal:/#(?![$_A-z])/, +contains:[o.SHEBANG({label:"shebang",binary:"node",relevance:5}),{ +label:"use_strict",className:"meta",relevance:10, +begin:/^\s*['"]use (strict|asm)['"]/ +},o.APOS_STRING_MODE,o.QUOTE_STRING_MODE,y,N,_,h,{match:/\$\d+/},E,R,{ +className:"attr",begin:b+l.lookahead(":"),relevance:0},M,{ +begin:"("+o.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*", +keywords:"return throw case",relevance:0,contains:[h,o.REGEXP_MODE,{ +className:"function",begin:C,returnBegin:!0,end:"\\s*=>",contains:[{ +className:"params",variants:[{begin:o.UNDERSCORE_IDENT_RE,relevance:0},{ +className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0, +excludeEnd:!0,keywords:g,contains:p}]}]},{begin:/,/,relevance:0},{match:/\s+/, +relevance:0},{variants:[{begin:"<>",end:"</>"},{ +match:/<[A-Za-z0-9\\._:-]+\s*\/>/},{begin:d.begin, +"on:begin":d.isTrulyOpeningTag,end:d.end}],subLanguage:"xml",contains:[{ +begin:d.begin,end:d.end,skip:!0,contains:["self"]}]}]},O,{ +beginKeywords:"while if switch catch for"},{ +begin:"\\b(?!function)"+o.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{", +returnBegin:!0,label:"func.def",contains:[S,o.inherit(o.TITLE_MODE,{begin:b, +className:"title.function"})]},{match:/\.\.\./,relevance:0},x,{match:"\\$"+b, +relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"}, +contains:[S]},k,{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/, +className:"variable.constant"},w,T,{match:/\$[(.]/}]}}})() +;hljs.registerLanguage("javascript",e)})();/*! `node-repl` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var a=(()=>{"use strict";return a=>({name:"Node REPL",contains:[{ +className:"meta.prompt",starts:{end:/ |$/,starts:{end:"$", +subLanguage:"javascript"}},variants:[{begin:/^>(?=[ ]|$)/},{ +begin:/^\.\.\.(?=[ ]|$)/}]}]})})();hljs.registerLanguage("node-repl",a)})();/*! `smali` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const n=["add","and","cmp","cmpg","cmpl","const","div","double","float","goto","if","int","long","move","mul","neg","new","nop","not","or","rem","return","shl","shr","sput","sub","throw","ushr","xor"] +;return{name:"Smali",contains:[{className:"string",begin:'"',end:'"',relevance:0 +},e.COMMENT("#","$",{relevance:0}),{className:"keyword",variants:[{ +begin:"\\s*\\.end\\s[a-zA-Z0-9]*"},{begin:"^[ ]*\\.[a-zA-Z]*",relevance:0},{ +begin:"\\s:[a-zA-Z_0-9]*",relevance:0},{ +begin:"\\s(transient|constructor|abstract|final|synthetic|public|private|protected|static|bridge|system)" +}]},{className:"built_in",variants:[{begin:"\\s("+n.join("|")+")\\s"},{ +begin:"\\s("+n.join("|")+")((-|/)[a-zA-Z0-9]+)+\\s",relevance:10},{ +begin:"\\s(aget|aput|array|check|execute|fill|filled|goto/16|goto/32|iget|instance|invoke|iput|monitor|packed|sget|sparse)((-|/)[a-zA-Z0-9]+)*\\s", +relevance:10}]},{className:"class",begin:"L[^(;:\n]*;",relevance:0},{ +begin:"[vp][0-9]+"}]}}})();hljs.registerLanguage("smali",e)})();/*! `python` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const n=e.regex,a=/[\p{XID_Start}_]\p{XID_Continue}*/u,i=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],s={ +$pattern:/[A-Za-z]\w+|__\w+__/,keyword:i, +built_in:["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"], +literal:["__debug__","Ellipsis","False","None","NotImplemented","True"], +type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"] +},t={className:"meta",begin:/^(>>>|\.\.\.) /},r={className:"subst",begin:/\{/, +end:/\}/,keywords:s,illegal:/#/},l={begin:/\{\{/,relevance:0},b={ +className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{ +begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/, +contains:[e.BACKSLASH_ESCAPE,t],relevance:10},{ +begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/, +contains:[e.BACKSLASH_ESCAPE,t],relevance:10},{ +begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/, +contains:[e.BACKSLASH_ESCAPE,t,l,r]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/, +end:/"""/,contains:[e.BACKSLASH_ESCAPE,t,l,r]},{begin:/([uU]|[rR])'/,end:/'/, +relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{ +begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/, +end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/, +contains:[e.BACKSLASH_ESCAPE,l,r]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/, +contains:[e.BACKSLASH_ESCAPE,l,r]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE] +},o="[0-9](_?[0-9])*",c=`(\\b(${o}))?\\.(${o})|\\b(${o})\\.`,d="\\b|"+i.join("|"),g={ +className:"number",relevance:0,variants:[{ +begin:`(\\b(${o})|(${c}))[eE][+-]?(${o})[jJ]?(?=${d})`},{begin:`(${c})[jJ]?`},{ +begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${d})`},{ +begin:`\\b0[bB](_?[01])+[lL]?(?=${d})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${d})` +},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${d})`},{begin:`\\b(${o})[jJ](?=${d})` +}]},p={className:"comment",begin:n.lookahead(/# type:/),end:/$/,keywords:s, +contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},m={ +className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/, +end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s, +contains:["self",t,g,b,e.HASH_COMMENT_MODE]}]};return r.contains=[b,g,t],{ +name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:s, +illegal:/(<\/|->|\?)|=>/,contains:[t,g,{begin:/\bself\b/},{beginKeywords:"if", +relevance:0},b,p,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,a],scope:{ +1:"keyword",3:"title.function"},contains:[m]},{variants:[{ +match:[/\bclass/,/\s+/,a,/\s*/,/\(\s*/,a,/\s*\)/]},{match:[/\bclass/,/\s+/,a]}], +scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{ +className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[g,m,b]}]}}})() +;hljs.registerLanguage("python",e)})();/*! `golo` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Golo",keywords:{ +keyword:["println","readln","print","import","module","function","local","return","let","var","while","for","foreach","times","in","case","when","match","with","break","continue","augment","augmentation","each","find","filter","reduce","if","then","else","otherwise","try","catch","finally","raise","throw","orIfNull","DynamicObject|10","DynamicVariable","struct","Observable","map","set","vector","list","array"], +literal:["true","false","null"]}, +contains:[e.HASH_COMMENT_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,{ +className:"meta",begin:"@[A-Za-z]+"}]})})();hljs.registerLanguage("golo",e)})();/*! `ini` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n=e.regex,a={className:"number", +relevance:0,variants:[{begin:/([+-]+)?[\d]+_[\d_]+/},{begin:e.NUMBER_RE}] +},s=e.COMMENT();s.variants=[{begin:/;/,end:/$/},{begin:/#/,end:/$/}];const i={ +className:"variable",variants:[{begin:/\$[\w\d"][\w\d_]*/},{begin:/\$\{(.*?)\}/ +}]},t={className:"literal",begin:/\bon|off|true|false|yes|no\b/},r={ +className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:"'''", +end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"' +},{begin:"'",end:"'"}]},l={begin:/\[/,end:/\]/,contains:[s,t,i,r,a,"self"], +relevance:0},c=n.either(/[A-Za-z0-9_-]+/,/"(\\"|[^"])*"/,/'[^']*'/);return{ +name:"TOML, also INI",aliases:["toml"],case_insensitive:!0,illegal:/\S/, +contains:[s,{className:"section",begin:/\[+/,end:/\]+/},{ +begin:n.concat(c,"(\\s*\\.\\s*",c,")*",n.lookahead(/\s*=\s*[^#\s]/)), +className:"attr",starts:{end:/$/,contains:[s,l,t,i,r,a]}}]}}})() +;hljs.registerLanguage("ini",e)})();/*! `scss` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict" +;const e=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],r=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],i=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],t=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],o=["align-content","align-items","align-self","all","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","content","content-visibility","counter-increment","counter-reset","cue","cue-after","cue-before","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-synthesis","font-variant","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","gap","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inline-size","isolation","justify-content","left","letter-spacing","line-break","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","pause","pause-after","pause-before","perspective","perspective-origin","pointer-events","position","quotes","resize","rest","rest-after","rest-before","right","row-gap","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","speak","speak-as","src","tab-size","table-layout","text-align","text-align-all","text-align-last","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-box","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","z-index"].reverse() +;return n=>{const a=(e=>({IMPORTANT:{scope:"meta",begin:"!important"}, +BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number", +begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{ +className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{ +scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$", +contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{ +scope:"number", +begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?", +relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z][A-Za-z0-9_-]*/} +}))(n),l=t,s=i,d="@[a-z-]+",c={className:"variable", +begin:"(\\$[a-zA-Z-][a-zA-Z0-9_-]*)\\b",relevance:0};return{name:"SCSS", +case_insensitive:!0,illegal:"[=/|']", +contains:[n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,a.CSS_NUMBER_MODE,{ +className:"selector-id",begin:"#[A-Za-z0-9_-]+",relevance:0},{ +className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0 +},a.ATTRIBUTE_SELECTOR_MODE,{className:"selector-tag", +begin:"\\b("+e.join("|")+")\\b",relevance:0},{className:"selector-pseudo", +begin:":("+s.join("|")+")"},{className:"selector-pseudo", +begin:":(:)?("+l.join("|")+")"},c,{begin:/\(/,end:/\)/, +contains:[a.CSS_NUMBER_MODE]},a.CSS_VARIABLE,{className:"attribute", +begin:"\\b("+o.join("|")+")\\b"},{ +begin:"\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b" +},{begin:/:/,end:/[;}{]/,relevance:0, +contains:[a.BLOCK_COMMENT,c,a.HEXCOLOR,a.CSS_NUMBER_MODE,n.QUOTE_STRING_MODE,n.APOS_STRING_MODE,a.IMPORTANT,a.FUNCTION_DISPATCH] +},{begin:"@(page|font-face)",keywords:{$pattern:d,keyword:"@page @font-face"}},{ +begin:"@",end:"[{;]",returnBegin:!0,keywords:{$pattern:/[a-z-]+/, +keyword:"and or not only",attribute:r.join(" ")},contains:[{begin:d, +className:"keyword"},{begin:/[a-z-]+(?=:)/,className:"attribute" +},c,n.QUOTE_STRING_MODE,n.APOS_STRING_MODE,a.HEXCOLOR,a.CSS_NUMBER_MODE] +},a.FUNCTION_DISPATCH]}}})();hljs.registerLanguage("scss",e)})();/*! `sql` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const r=e.regex,t=e.COMMENT("--","$"),n=["true","false","unknown"],a=["bigint","binary","blob","boolean","char","character","clob","date","dec","decfloat","decimal","float","int","integer","interval","nchar","nclob","national","numeric","real","row","smallint","time","timestamp","varchar","varying","varbinary"],i=["abs","acos","array_agg","asin","atan","avg","cast","ceil","ceiling","coalesce","corr","cos","cosh","count","covar_pop","covar_samp","cume_dist","dense_rank","deref","element","exp","extract","first_value","floor","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","last_value","lead","listagg","ln","log","log10","lower","max","min","mod","nth_value","ntile","nullif","percent_rank","percentile_cont","percentile_disc","position","position_regex","power","rank","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","row_number","sin","sinh","sqrt","stddev_pop","stddev_samp","substring","substring_regex","sum","tan","tanh","translate","translate_regex","treat","trim","trim_array","unnest","upper","value_of","var_pop","var_samp","width_bucket"],s=["create table","insert into","primary key","foreign key","not null","alter table","add constraint","grouping sets","on overflow","character set","respect nulls","ignore nulls","nulls first","nulls last","depth first","breadth first"],o=i,c=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year","add","asc","collation","desc","final","first","last","view"].filter((e=>!i.includes(e))),l={ +begin:r.concat(/\b/,r.either(...o),/\s*\(/),relevance:0,keywords:{built_in:o}} +;return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{ +$pattern:/\b[\w\.]+/,keyword:((e,{exceptions:r,when:t}={})=>{const n=t +;return r=r||[],e.map((e=>e.match(/\|\d+$/)||r.includes(e)?e:n(e)?e+"|0":e)) +})(c,{when:e=>e.length<3}),literal:n,type:a, +built_in:["current_catalog","current_date","current_default_transform_group","current_path","current_role","current_schema","current_transform_group_for_type","current_user","session_user","system_time","system_user","current_time","localtime","current_timestamp","localtimestamp"] +},contains:[{begin:r.either(...s),relevance:0,keywords:{$pattern:/[\w\.]+/, +keyword:c.concat(s),literal:n,type:a}},{className:"type", +begin:r.either("double precision","large object","with timezone","without timezone") +},l,{className:"variable",begin:/@[a-z0-9]+/},{className:"string",variants:[{ +begin:/'/,end:/'/,contains:[{begin:/''/}]}]},{begin:/"/,end:/"/,contains:[{ +begin:/""/}]},e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,t,{className:"operator", +begin:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0}]}}})() +;hljs.registerLanguage("sql",e)})();/*! `elixir` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const n=e.regex,a="[a-zA-Z_][a-zA-Z0-9_.]*(!|\\?)?",i={$pattern:a, +keyword:["after","alias","and","case","catch","cond","defstruct","defguard","do","else","end","fn","for","if","import","in","not","or","quote","raise","receive","require","reraise","rescue","try","unless","unquote","unquote_splicing","use","when","with|0"], +literal:["false","nil","true"]},s={className:"subst",begin:/#\{/,end:/\}/, +keywords:i},c={match:/\\[\s\S]/,scope:"char.escape",relevance:0},r=[{begin:/"/, +end:/"/},{begin:/'/,end:/'/},{begin:/\//,end:/\//},{begin:/\|/,end:/\|/},{ +begin:/\(/,end:/\)/},{begin:/\[/,end:/\]/},{begin:/\{/,end:/\}/},{begin:/</, +end:/>/}],t=e=>({scope:"char.escape",begin:n.concat(/\\/,e),relevance:0}),d={ +className:"string",begin:"~[a-z](?=[/|([{<\"'])", +contains:r.map((n=>e.inherit(n,{contains:[t(n.end),c,s]})))},o={ +className:"string",begin:"~[A-Z](?=[/|([{<\"'])", +contains:r.map((n=>e.inherit(n,{contains:[t(n.end)]})))},b={className:"regex", +variants:[{begin:"~r(?=[/|([{<\"'])",contains:r.map((a=>e.inherit(a,{ +end:n.concat(a.end,/[uismxfU]{0,7}/),contains:[t(a.end),c,s]})))},{ +begin:"~R(?=[/|([{<\"'])",contains:r.map((a=>e.inherit(a,{ +end:n.concat(a.end,/[uismxfU]{0,7}/),contains:[t(a.end)]})))}]},g={ +className:"string",contains:[e.BACKSLASH_ESCAPE,s],variants:[{begin:/"""/, +end:/"""/},{begin:/'''/,end:/'''/},{begin:/~S"""/,end:/"""/,contains:[]},{ +begin:/~S"/,end:/"/,contains:[]},{begin:/~S'''/,end:/'''/,contains:[]},{ +begin:/~S'/,end:/'/,contains:[]},{begin:/'/,end:/'/},{begin:/"/,end:/"/}]},l={ +className:"function",beginKeywords:"def defp defmacro defmacrop",end:/\B\b/, +contains:[e.inherit(e.TITLE_MODE,{begin:a,endsParent:!0})]},m=e.inherit(l,{ +className:"class",beginKeywords:"defimpl defmodule defprotocol defrecord", +end:/\bdo\b|$|;/}),u=[g,b,o,d,e.HASH_COMMENT_MODE,m,l,{begin:"::"},{ +className:"symbol",begin:":(?![\\s:])",contains:[g,{ +begin:"[a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?" +}],relevance:0},{className:"symbol",begin:a+":(?!:)",relevance:0},{ +className:"title.class",begin:/(\b[A-Z][a-zA-Z0-9_]+)/,relevance:0},{ +className:"number", +begin:"(\\b0o[0-7_]+)|(\\b0b[01_]+)|(\\b0x[0-9a-fA-F_]+)|(-?\\b[0-9][0-9_]*(\\.[0-9_]+([eE][-+]?[0-9]+)?)?)", +relevance:0},{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))"}] +;return s.contains=u,{name:"Elixir",aliases:["ex","exs"],keywords:i,contains:u}} +})();hljs.registerLanguage("elixir",e)})();/*! `glsl` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"GLSL",keywords:{ +keyword:"break continue discard do else for if return while switch case default attribute binding buffer ccw centroid centroid varying coherent column_major const cw depth_any depth_greater depth_less depth_unchanged early_fragment_tests equal_spacing flat fractional_even_spacing fractional_odd_spacing highp in index inout invariant invocations isolines layout line_strip lines lines_adjacency local_size_x local_size_y local_size_z location lowp max_vertices mediump noperspective offset origin_upper_left out packed patch pixel_center_integer point_mode points precise precision quads r11f_g11f_b10f r16 r16_snorm r16f r16i r16ui r32f r32i r32ui r8 r8_snorm r8i r8ui readonly restrict rg16 rg16_snorm rg16f rg16i rg16ui rg32f rg32i rg32ui rg8 rg8_snorm rg8i rg8ui rgb10_a2 rgb10_a2ui rgba16 rgba16_snorm rgba16f rgba16i rgba16ui rgba32f rgba32i rgba32ui rgba8 rgba8_snorm rgba8i rgba8ui row_major sample shared smooth std140 std430 stream triangle_strip triangles triangles_adjacency uniform varying vertices volatile writeonly", +type:"atomic_uint bool bvec2 bvec3 bvec4 dmat2 dmat2x2 dmat2x3 dmat2x4 dmat3 dmat3x2 dmat3x3 dmat3x4 dmat4 dmat4x2 dmat4x3 dmat4x4 double dvec2 dvec3 dvec4 float iimage1D iimage1DArray iimage2D iimage2DArray iimage2DMS iimage2DMSArray iimage2DRect iimage3D iimageBuffer iimageCube iimageCubeArray image1D image1DArray image2D image2DArray image2DMS image2DMSArray image2DRect image3D imageBuffer imageCube imageCubeArray int isampler1D isampler1DArray isampler2D isampler2DArray isampler2DMS isampler2DMSArray isampler2DRect isampler3D isamplerBuffer isamplerCube isamplerCubeArray ivec2 ivec3 ivec4 mat2 mat2x2 mat2x3 mat2x4 mat3 mat3x2 mat3x3 mat3x4 mat4 mat4x2 mat4x3 mat4x4 sampler1D sampler1DArray sampler1DArrayShadow sampler1DShadow sampler2D sampler2DArray sampler2DArrayShadow sampler2DMS sampler2DMSArray sampler2DRect sampler2DRectShadow sampler2DShadow sampler3D samplerBuffer samplerCube samplerCubeArray samplerCubeArrayShadow samplerCubeShadow image1D uimage1DArray uimage2D uimage2DArray uimage2DMS uimage2DMSArray uimage2DRect uimage3D uimageBuffer uimageCube uimageCubeArray uint usampler1D usampler1DArray usampler2D usampler2DArray usampler2DMS usampler2DMSArray usampler2DRect usampler3D samplerBuffer usamplerCube usamplerCubeArray uvec2 uvec3 uvec4 vec2 vec3 vec4 void", +built_in:"gl_MaxAtomicCounterBindings gl_MaxAtomicCounterBufferSize gl_MaxClipDistances gl_MaxClipPlanes gl_MaxCombinedAtomicCounterBuffers gl_MaxCombinedAtomicCounters gl_MaxCombinedImageUniforms gl_MaxCombinedImageUnitsAndFragmentOutputs gl_MaxCombinedTextureImageUnits gl_MaxComputeAtomicCounterBuffers gl_MaxComputeAtomicCounters gl_MaxComputeImageUniforms gl_MaxComputeTextureImageUnits gl_MaxComputeUniformComponents gl_MaxComputeWorkGroupCount gl_MaxComputeWorkGroupSize gl_MaxDrawBuffers gl_MaxFragmentAtomicCounterBuffers gl_MaxFragmentAtomicCounters gl_MaxFragmentImageUniforms gl_MaxFragmentInputComponents gl_MaxFragmentInputVectors gl_MaxFragmentUniformComponents gl_MaxFragmentUniformVectors gl_MaxGeometryAtomicCounterBuffers gl_MaxGeometryAtomicCounters gl_MaxGeometryImageUniforms gl_MaxGeometryInputComponents gl_MaxGeometryOutputComponents gl_MaxGeometryOutputVertices gl_MaxGeometryTextureImageUnits gl_MaxGeometryTotalOutputComponents gl_MaxGeometryUniformComponents gl_MaxGeometryVaryingComponents gl_MaxImageSamples gl_MaxImageUnits gl_MaxLights gl_MaxPatchVertices gl_MaxProgramTexelOffset gl_MaxTessControlAtomicCounterBuffers gl_MaxTessControlAtomicCounters gl_MaxTessControlImageUniforms gl_MaxTessControlInputComponents gl_MaxTessControlOutputComponents gl_MaxTessControlTextureImageUnits gl_MaxTessControlTotalOutputComponents gl_MaxTessControlUniformComponents gl_MaxTessEvaluationAtomicCounterBuffers gl_MaxTessEvaluationAtomicCounters gl_MaxTessEvaluationImageUniforms gl_MaxTessEvaluationInputComponents gl_MaxTessEvaluationOutputComponents gl_MaxTessEvaluationTextureImageUnits gl_MaxTessEvaluationUniformComponents gl_MaxTessGenLevel gl_MaxTessPatchComponents gl_MaxTextureCoords gl_MaxTextureImageUnits gl_MaxTextureUnits gl_MaxVaryingComponents gl_MaxVaryingFloats gl_MaxVaryingVectors gl_MaxVertexAtomicCounterBuffers gl_MaxVertexAtomicCounters gl_MaxVertexAttribs gl_MaxVertexImageUniforms gl_MaxVertexOutputComponents gl_MaxVertexOutputVectors gl_MaxVertexTextureImageUnits gl_MaxVertexUniformComponents gl_MaxVertexUniformVectors gl_MaxViewports gl_MinProgramTexelOffset gl_BackColor gl_BackLightModelProduct gl_BackLightProduct gl_BackMaterial gl_BackSecondaryColor gl_ClipDistance gl_ClipPlane gl_ClipVertex gl_Color gl_DepthRange gl_EyePlaneQ gl_EyePlaneR gl_EyePlaneS gl_EyePlaneT gl_Fog gl_FogCoord gl_FogFragCoord gl_FragColor gl_FragCoord gl_FragData gl_FragDepth gl_FrontColor gl_FrontFacing gl_FrontLightModelProduct gl_FrontLightProduct gl_FrontMaterial gl_FrontSecondaryColor gl_GlobalInvocationID gl_InstanceID gl_InvocationID gl_Layer gl_LightModel gl_LightSource gl_LocalInvocationID gl_LocalInvocationIndex gl_ModelViewMatrix gl_ModelViewMatrixInverse gl_ModelViewMatrixInverseTranspose gl_ModelViewMatrixTranspose gl_ModelViewProjectionMatrix gl_ModelViewProjectionMatrixInverse gl_ModelViewProjectionMatrixInverseTranspose gl_ModelViewProjectionMatrixTranspose gl_MultiTexCoord0 gl_MultiTexCoord1 gl_MultiTexCoord2 gl_MultiTexCoord3 gl_MultiTexCoord4 gl_MultiTexCoord5 gl_MultiTexCoord6 gl_MultiTexCoord7 gl_Normal gl_NormalMatrix gl_NormalScale gl_NumSamples gl_NumWorkGroups gl_ObjectPlaneQ gl_ObjectPlaneR gl_ObjectPlaneS gl_ObjectPlaneT gl_PatchVerticesIn gl_Point gl_PointCoord gl_PointSize gl_Position gl_PrimitiveID gl_PrimitiveIDIn gl_ProjectionMatrix gl_ProjectionMatrixInverse gl_ProjectionMatrixInverseTranspose gl_ProjectionMatrixTranspose gl_SampleID gl_SampleMask gl_SampleMaskIn gl_SamplePosition gl_SecondaryColor gl_TessCoord gl_TessLevelInner gl_TessLevelOuter gl_TexCoord gl_TextureEnvColor gl_TextureMatrix gl_TextureMatrixInverse gl_TextureMatrixInverseTranspose gl_TextureMatrixTranspose gl_Vertex gl_VertexID gl_ViewportIndex gl_WorkGroupID gl_WorkGroupSize gl_in gl_out EmitStreamVertex EmitVertex EndPrimitive EndStreamPrimitive abs acos acosh all any asin asinh atan atanh atomicAdd atomicAnd atomicCompSwap atomicCounter atomicCounterDecrement atomicCounterIncrement atomicExchange atomicMax atomicMin atomicOr atomicXor barrier bitCount bitfieldExtract bitfieldInsert bitfieldReverse ceil clamp cos cosh cross dFdx dFdy degrees determinant distance dot equal exp exp2 faceforward findLSB findMSB floatBitsToInt floatBitsToUint floor fma fract frexp ftransform fwidth greaterThan greaterThanEqual groupMemoryBarrier imageAtomicAdd imageAtomicAnd imageAtomicCompSwap imageAtomicExchange imageAtomicMax imageAtomicMin imageAtomicOr imageAtomicXor imageLoad imageSize imageStore imulExtended intBitsToFloat interpolateAtCentroid interpolateAtOffset interpolateAtSample inverse inversesqrt isinf isnan ldexp length lessThan lessThanEqual log log2 matrixCompMult max memoryBarrier memoryBarrierAtomicCounter memoryBarrierBuffer memoryBarrierImage memoryBarrierShared min mix mod modf noise1 noise2 noise3 noise4 normalize not notEqual outerProduct packDouble2x32 packHalf2x16 packSnorm2x16 packSnorm4x8 packUnorm2x16 packUnorm4x8 pow radians reflect refract round roundEven shadow1D shadow1DLod shadow1DProj shadow1DProjLod shadow2D shadow2DLod shadow2DProj shadow2DProjLod sign sin sinh smoothstep sqrt step tan tanh texelFetch texelFetchOffset texture texture1D texture1DLod texture1DProj texture1DProjLod texture2D texture2DLod texture2DProj texture2DProjLod texture3D texture3DLod texture3DProj texture3DProjLod textureCube textureCubeLod textureGather textureGatherOffset textureGatherOffsets textureGrad textureGradOffset textureLod textureLodOffset textureOffset textureProj textureProjGrad textureProjGradOffset textureProjLod textureProjLodOffset textureProjOffset textureQueryLevels textureQueryLod textureSize transpose trunc uaddCarry uintBitsToFloat umulExtended unpackDouble2x32 unpackHalf2x16 unpackSnorm2x16 unpackSnorm4x8 unpackUnorm2x16 unpackUnorm4x8 usubBorrow", +literal:"true false"},illegal:'"', +contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.C_NUMBER_MODE,{ +className:"meta",begin:"#",end:"$"}]})})();hljs.registerLanguage("glsl",e)})();/*! `typescript` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict" +;const e="[A-Za-z$_][0-9A-Za-z$_]*",n=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],a=["true","false","null","undefined","NaN","Infinity"],t=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],s=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],c=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],r=["arguments","this","super","console","window","document","localStorage","module","global"],i=[].concat(c,t,s) +;function o(o){const l=o.regex,d=e,b={begin:/<[A-Za-z0-9\\._:-]+/, +end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(e,n)=>{ +const a=e[0].length+e.index,t=e.input[a] +;if("<"===t||","===t)return void n.ignoreMatch();let s +;">"===t&&(((e,{after:n})=>{const a="</"+e[0].slice(1) +;return-1!==e.input.indexOf(a,n)})(e,{after:a})||n.ignoreMatch()) +;const c=e.input.substring(a) +;((s=c.match(/^\s*=/))||(s=c.match(/^\s+extends\s+/))&&0===s.index)&&n.ignoreMatch() +}},g={$pattern:e,keyword:n,literal:a,built_in:i,"variable.language":r +},u="\\.([0-9](_?[0-9])*)",m="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",E={ +className:"number",variants:[{ +begin:`(\\b(${m})((${u})|\\.)?|(${u}))[eE][+-]?([0-9](_?[0-9])*)\\b`},{ +begin:`\\b(${m})\\b((${u})\\b|\\.)?|(${u})\\b`},{ +begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{ +begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{ +begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{ +begin:"\\b0[0-7]+n?\\b"}],relevance:0},y={className:"subst",begin:"\\$\\{", +end:"\\}",keywords:g,contains:[]},A={begin:"html`",end:"",starts:{end:"`", +returnEnd:!1,contains:[o.BACKSLASH_ESCAPE,y],subLanguage:"xml"}},p={ +begin:"css`",end:"",starts:{end:"`",returnEnd:!1, +contains:[o.BACKSLASH_ESCAPE,y],subLanguage:"css"}},_={className:"string", +begin:"`",end:"`",contains:[o.BACKSLASH_ESCAPE,y]},N={className:"comment", +variants:[o.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{ +begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag", +begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0, +excludeBegin:!0,relevance:0},{className:"variable",begin:d+"(?=\\s*(-)|$)", +endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}] +}),o.C_BLOCK_COMMENT_MODE,o.C_LINE_COMMENT_MODE] +},f=[o.APOS_STRING_MODE,o.QUOTE_STRING_MODE,A,p,_,{match:/\$\d+/},E] +;y.contains=f.concat({begin:/\{/,end:/\}/,keywords:g,contains:["self"].concat(f) +});const h=[].concat(N,y.contains),v=h.concat([{begin:/\(/,end:/\)/,keywords:g, +contains:["self"].concat(h)}]),S={className:"params",begin:/\(/,end:/\)/, +excludeBegin:!0,excludeEnd:!0,keywords:g,contains:v},w={variants:[{ +match:[/class/,/\s+/,d,/\s+/,/extends/,/\s+/,l.concat(d,"(",l.concat(/\./,d),")*")], +scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{ +match:[/class/,/\s+/,d],scope:{1:"keyword",3:"title.class"}}]},R={relevance:0, +match:l.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/), +className:"title.class",keywords:{_:[...t,...s]}},x={variants:[{ +match:[/function/,/\s+/,d,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}], +className:{1:"keyword",3:"title.function"},label:"func.def",contains:[S], +illegal:/%/},k={ +match:l.concat(/\b/,(O=[...c,"super","import"],l.concat("(?!",O.join("|"),")")),d,l.lookahead(/\(/)), +className:"title.function",relevance:0};var O;const I={ +begin:l.concat(/\./,l.lookahead(l.concat(d,/(?![0-9A-Za-z$_(])/))),end:d, +excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},C={ +match:[/get|set/,/\s+/,d,/(?=\()/],className:{1:"keyword",3:"title.function"}, +contains:[{begin:/\(\)/},S] +},T="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+o.UNDERSCORE_IDENT_RE+")\\s*=>",M={ +match:[/const|var|let/,/\s+/,d,/\s*/,/=\s*/,/(async\s*)?/,l.lookahead(T)], +keywords:"async",className:{1:"keyword",3:"title.function"},contains:[S]} +;return{name:"Javascript",aliases:["js","jsx","mjs","cjs"],keywords:g,exports:{ +PARAMS_CONTAINS:v,CLASS_REFERENCE:R},illegal:/#(?![$_A-z])/, +contains:[o.SHEBANG({label:"shebang",binary:"node",relevance:5}),{ +label:"use_strict",className:"meta",relevance:10, +begin:/^\s*['"]use (strict|asm)['"]/ +},o.APOS_STRING_MODE,o.QUOTE_STRING_MODE,A,p,_,N,{match:/\$\d+/},E,R,{ +className:"attr",begin:d+l.lookahead(":"),relevance:0},M,{ +begin:"("+o.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*", +keywords:"return throw case",relevance:0,contains:[N,o.REGEXP_MODE,{ +className:"function",begin:T,returnBegin:!0,end:"\\s*=>",contains:[{ +className:"params",variants:[{begin:o.UNDERSCORE_IDENT_RE,relevance:0},{ +className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0, +excludeEnd:!0,keywords:g,contains:v}]}]},{begin:/,/,relevance:0},{match:/\s+/, +relevance:0},{variants:[{begin:"<>",end:"</>"},{ +match:/<[A-Za-z0-9\\._:-]+\s*\/>/},{begin:b.begin, +"on:begin":b.isTrulyOpeningTag,end:b.end}],subLanguage:"xml",contains:[{ +begin:b.begin,end:b.end,skip:!0,contains:["self"]}]}]},x,{ +beginKeywords:"while if switch catch for"},{ +begin:"\\b(?!function)"+o.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{", +returnBegin:!0,label:"func.def",contains:[S,o.inherit(o.TITLE_MODE,{begin:d, +className:"title.function"})]},{match:/\.\.\./,relevance:0},I,{match:"\\$"+d, +relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"}, +contains:[S]},k,{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/, +className:"variable.constant"},w,C,{match:/\$[(.]/}]}}return t=>{ +const s=o(t),c=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],l={ +beginKeywords:"namespace",end:/\{/,excludeEnd:!0, +contains:[s.exports.CLASS_REFERENCE]},d={beginKeywords:"interface",end:/\{/, +excludeEnd:!0,keywords:{keyword:"interface extends",built_in:c}, +contains:[s.exports.CLASS_REFERENCE]},b={$pattern:e, +keyword:n.concat(["type","namespace","interface","public","private","protected","implements","declare","abstract","readonly","enum","override"]), +literal:a,built_in:i.concat(c),"variable.language":r},g={className:"meta", +begin:"@[A-Za-z$_][0-9A-Za-z$_]*"},u=(e,n,a)=>{ +const t=e.contains.findIndex((e=>e.label===n)) +;if(-1===t)throw Error("can not find mode to replace");e.contains.splice(t,1,a)} +;return Object.assign(s.keywords,b), +s.exports.PARAMS_CONTAINS.push(g),s.contains=s.contains.concat([g,l,d]), +u(s,"shebang",t.SHEBANG()),u(s,"use_strict",{className:"meta",relevance:10, +begin:/^\s*['"]use strict['"]/ +}),s.contains.find((e=>"func.def"===e.label)).relevance=0,Object.assign(s,{ +name:"TypeScript",aliases:["ts","tsx"]}),s}})() +;hljs.registerLanguage("typescript",e)})();/*! `applescript` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const t=e.regex,r=e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),i={ +className:"params",begin:/\(/,end:/\)/,contains:["self",e.C_NUMBER_MODE,r] +},n=e.COMMENT(/--/,/$/),a=[n,e.COMMENT(/\(\*/,/\*\)/,{contains:["self",n] +}),e.HASH_COMMENT_MODE];return{name:"AppleScript",aliases:["osascript"], +keywords:{ +keyword:"about above after against and around as at back before beginning behind below beneath beside between but by considering contain contains continue copy div does eighth else end equal equals error every exit fifth first for fourth from front get given global if ignoring in into is it its last local me middle mod my ninth not of on onto or over prop property put ref reference repeat returning script second set seventh since sixth some tell tenth that the|0 then third through thru timeout times to transaction try until where while whose with without", +literal:"AppleScript false linefeed return pi quote result space tab true", +built_in:"alias application boolean class constant date file integer list number real record string text activate beep count delay launch log offset read round run say summarize write character characters contents day frontmost id item length month name|0 paragraph paragraphs rest reverse running time version weekday word words year" +},contains:[r,e.C_NUMBER_MODE,{className:"built_in", +begin:t.concat(/\b/,t.either(/clipboard info/,/the clipboard/,/info for/,/list (disks|folder)/,/mount volume/,/path to/,/(close|open for) access/,/(get|set) eof/,/current date/,/do shell script/,/get volume settings/,/random number/,/set volume/,/system attribute/,/system info/,/time to GMT/,/(load|run|store) script/,/scripting components/,/ASCII (character|number)/,/localized string/,/choose (application|color|file|file name|folder|from list|remote application|URL)/,/display (alert|dialog)/),/\b/) +},{className:"built_in",begin:/^\s*return\b/},{className:"literal", +begin:/\b(text item delimiters|current application|missing value)\b/},{ +className:"keyword", +begin:t.concat(/\b/,t.either(/apart from/,/aside from/,/instead of/,/out of/,/greater than/,/isn't|(doesn't|does not) (equal|come before|come after|contain)/,/(greater|less) than( or equal)?/,/(starts?|ends|begins?) with/,/contained by/,/comes (before|after)/,/a (ref|reference)/,/POSIX (file|path)/,/(date|time) string/,/quoted form/),/\b/) +},{beginKeywords:"on",illegal:/[${=;\n]/,contains:[e.UNDERSCORE_TITLE_MODE,i] +},...a],illegal:/\/\/|->|=>|\[\[/}}})();hljs.registerLanguage("applescript",e) +})();/*! `processing` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const t=e.regex,a=["displayHeight","displayWidth","mouseY","mouseX","mousePressed","pmouseX","pmouseY","key","keyCode","pixels","focused","frameCount","frameRate","height","width","size","createGraphics","beginDraw","createShape","loadShape","PShape","arc","ellipse","line","point","quad","rect","triangle","bezier","bezierDetail","bezierPoint","bezierTangent","curve","curveDetail","curvePoint","curveTangent","curveTightness","shape","shapeMode","beginContour","beginShape","bezierVertex","curveVertex","endContour","endShape","quadraticVertex","vertex","ellipseMode","noSmooth","rectMode","smooth","strokeCap","strokeJoin","strokeWeight","mouseClicked","mouseDragged","mouseMoved","mousePressed","mouseReleased","mouseWheel","keyPressed","keyPressedkeyReleased","keyTyped","print","println","save","saveFrame","day","hour","millis","minute","month","second","year","background","clear","colorMode","fill","noFill","noStroke","stroke","alpha","blue","brightness","color","green","hue","lerpColor","red","saturation","modelX","modelY","modelZ","screenX","screenY","screenZ","ambient","emissive","shininess","specular","add","createImage","beginCamera","camera","endCamera","frustum","ortho","perspective","printCamera","printProjection","cursor","frameRate","noCursor","exit","loop","noLoop","popStyle","pushStyle","redraw","binary","boolean","byte","char","float","hex","int","str","unbinary","unhex","join","match","matchAll","nf","nfc","nfp","nfs","split","splitTokens","trim","append","arrayCopy","concat","expand","reverse","shorten","sort","splice","subset","box","sphere","sphereDetail","createInput","createReader","loadBytes","loadJSONArray","loadJSONObject","loadStrings","loadTable","loadXML","open","parseXML","saveTable","selectFolder","selectInput","beginRaw","beginRecord","createOutput","createWriter","endRaw","endRecord","PrintWritersaveBytes","saveJSONArray","saveJSONObject","saveStream","saveStrings","saveXML","selectOutput","popMatrix","printMatrix","pushMatrix","resetMatrix","rotate","rotateX","rotateY","rotateZ","scale","shearX","shearY","translate","ambientLight","directionalLight","lightFalloff","lights","lightSpecular","noLights","normal","pointLight","spotLight","image","imageMode","loadImage","noTint","requestImage","tint","texture","textureMode","textureWrap","blend","copy","filter","get","loadPixels","set","updatePixels","blendMode","loadShader","PShaderresetShader","shader","createFont","loadFont","text","textFont","textAlign","textLeading","textMode","textSize","textWidth","textAscent","textDescent","abs","ceil","constrain","dist","exp","floor","lerp","log","mag","map","max","min","norm","pow","round","sq","sqrt","acos","asin","atan","atan2","cos","degrees","radians","sin","tan","noise","noiseDetail","noiseSeed","random","randomGaussian","randomSeed"],r=e.IDENT_RE,s={ +variants:[{match:t.concat(t.either(...a),t.lookahead(/\s*\(/)), +className:"built_in"},{relevance:0, +match:t.concat(/\b(?!for|if|while)/,r,t.lookahead(/\s*\(/)), +className:"title.function"}]},o={match:[/new\s+/,r],className:{1:"keyword", +2:"class.title"}},i={relevance:0,match:[/\./,r],className:{2:"property"}},n={ +variants:[{match:[/class/,/\s+/,r,/\s+/,/extends/,/\s+/,r]},{ +match:[/class/,/\s+/,r]}],className:{1:"keyword",3:"title.class",5:"keyword", +7:"title.class.inherited"}};return{name:"Processing",aliases:["pde"],keywords:{ +keyword:["abstract","assert","break","case","catch","const","continue","default","else","enum","final","finally","for","if","import","instanceof","long","native","new","package","private","private","protected","protected","public","public","return","static","strictfp","switch","synchronized","throw","throws","transient","try","void","volatile","while"], +literal:"P2D P3D HALF_PI PI QUARTER_PI TAU TWO_PI null true false", +title:"setup draw",variable:"super this", +built_in:[...a,"BufferedReader","PVector","PFont","PImage","PGraphics","HashMap","String","Array","FloatDict","ArrayList","FloatList","IntDict","IntList","JSONArray","JSONObject","Object","StringDict","StringList","Table","TableRow","XML"], +type:["boolean","byte","char","color","double","float","int","long","short"]}, +contains:[n,o,s,i,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE] +}}})();hljs.registerLanguage("processing",e)})();/*! `bash` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const s=e.regex,t={},n={begin:/\$\{/, +end:/\}/,contains:["self",{begin:/:-/,contains:[t]}]};Object.assign(t,{ +className:"variable",variants:[{ +begin:s.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},n]});const a={ +className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},i={ +begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/, +end:/(\w+)/,className:"string"})]}},c={className:"string",begin:/"/,end:/"/, +contains:[e.BACKSLASH_ESCAPE,t,a]};a.contains.push(c);const o={begin:/\$?\(\(/, +end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,t] +},r=e.SHEBANG({binary:"(fish|bash|zsh|sh|csh|ksh|tcsh|dash|scsh)",relevance:10 +}),l={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0, +contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0};return{ +name:"Bash",aliases:["sh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/, +keyword:["if","then","else","elif","fi","for","while","in","do","done","case","esac","function"], +literal:["true","false"], +built_in:["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset","alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","type","typeset","ulimit","unalias","set","shopt","autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp","chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"] +},contains:[r,e.SHEBANG(),l,o,e.HASH_COMMENT_MODE,i,{match:/(\/[a-z._-]+)+/},c,{ +className:"",begin:/\\"/},{className:"string",begin:/'/,end:/'/},t]}}})() +;hljs.registerLanguage("bash",e)})();/*! `yaml` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const n="true false yes no null",a="[\\w#;/?:@&=+$,.~*'()[\\]]+",s={ +className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/ +},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,{className:"template-variable", +variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]}]},i=e.inherit(s,{ +variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),l={ +end:",",endsWithParent:!0,excludeEnd:!0,keywords:n,relevance:0},t={begin:/\{/, +end:/\}/,contains:[l],illegal:"\\n",relevance:0},g={begin:"\\[",end:"\\]", +contains:[l],illegal:"\\n",relevance:0},b=[{className:"attr",variants:[{ +begin:"\\w[\\w :\\/.-]*:(?=[ \t]|$)"},{begin:'"\\w[\\w :\\/.-]*":(?=[ \t]|$)'},{ +begin:"'\\w[\\w :\\/.-]*':(?=[ \t]|$)"}]},{className:"meta",begin:"^---\\s*$", +relevance:10},{className:"string", +begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{ +begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0, +relevance:0},{className:"type",begin:"!\\w+!"+a},{className:"type", +begin:"!<"+a+">"},{className:"type",begin:"!"+a},{className:"type",begin:"!!"+a +},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta", +begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)", +relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:n,keywords:{literal:n}},{ +className:"number", +begin:"\\b[0-9]{4}(-[0-9][0-9]){0,2}([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?(\\.[0-9]*)?([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?\\b" +},{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},t,g,s],r=[...b] +;return r.pop(),r.push(i),l.contains=r,{name:"YAML",case_insensitive:!0, +aliases:["yml"],contains:b}}})();hljs.registerLanguage("yaml",e)})();/*! `1c` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var s=(()=>{"use strict";return s=>{ +const x="[A-Za-z\u0410-\u042f\u0430-\u044f\u0451\u0401_][A-Za-z\u0410-\u042f\u0430-\u044f\u0451\u0401_0-9]+",n="\u0434\u0430\u043b\u0435\u0435 \u0432\u043e\u0437\u0432\u0440\u0430\u0442 \u0432\u044b\u0437\u0432\u0430\u0442\u044c\u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0434\u043b\u044f \u0435\u0441\u043b\u0438 \u0438 \u0438\u0437 \u0438\u043b\u0438 \u0438\u043d\u0430\u0447\u0435 \u0438\u043d\u0430\u0447\u0435\u0435\u0441\u043b\u0438 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043a\u043e\u043d\u0435\u0446\u0435\u0441\u043b\u0438 \u043a\u043e\u043d\u0435\u0446\u043f\u043e\u043f\u044b\u0442\u043a\u0438 \u043a\u043e\u043d\u0435\u0446\u0446\u0438\u043a\u043b\u0430 \u043d\u0435 \u043d\u043e\u0432\u044b\u0439 \u043f\u0435\u0440\u0435\u0439\u0442\u0438 \u043f\u0435\u0440\u0435\u043c \u043f\u043e \u043f\u043e\u043a\u0430 \u043f\u043e\u043f\u044b\u0442\u043a\u0430 \u043f\u0440\u0435\u0440\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c \u0442\u043e\u0433\u0434\u0430 \u0446\u0438\u043a\u043b \u044d\u043a\u0441\u043f\u043e\u0440\u0442 ",e="null \u0438\u0441\u0442\u0438\u043d\u0430 \u043b\u043e\u0436\u044c \u043d\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043e",o=s.inherit(s.NUMBER_MODE),t={ +className:"string",begin:'"|\\|',end:'"|$',contains:[{begin:'""'}]},a={ +begin:"'",end:"'",excludeBegin:!0,excludeEnd:!0,contains:[{className:"number", +begin:"\\d{4}([\\.\\\\/:-]?\\d{2}){0,5}"}]},m=s.inherit(s.C_LINE_COMMENT_MODE) +;return{name:"1C:Enterprise",case_insensitive:!0,keywords:{$pattern:x,keyword:n, +built_in:"\u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c\u0441\u0442\u0440\u0430\u043d\u0438\u0446 \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c\u0441\u0442\u0440\u043e\u043a \u0441\u0438\u043c\u0432\u043e\u043b\u0442\u0430\u0431\u0443\u043b\u044f\u0446\u0438\u0438 ansitooem oemtoansi \u0432\u0432\u0435\u0441\u0442\u0438\u0432\u0438\u0434\u0441\u0443\u0431\u043a\u043e\u043d\u0442\u043e \u0432\u0432\u0435\u0441\u0442\u0438\u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u0432\u0432\u0435\u0441\u0442\u0438\u043f\u0435\u0440\u0438\u043e\u0434 \u0432\u0432\u0435\u0441\u0442\u0438\u043f\u043b\u0430\u043d\u0441\u0447\u0435\u0442\u043e\u0432 \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u044b\u0439\u043f\u043b\u0430\u043d\u0441\u0447\u0435\u0442\u043e\u0432 \u0434\u0430\u0442\u0430\u0433\u043e\u0434 \u0434\u0430\u0442\u0430\u043c\u0435\u0441\u044f\u0446 \u0434\u0430\u0442\u0430\u0447\u0438\u0441\u043b\u043e \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a\u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u0432\u0441\u0442\u0440\u043e\u043a\u0443 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u0438\u0437\u0441\u0442\u0440\u043e\u043a\u0438 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0438\u0431 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043a\u043e\u0434\u0441\u0438\u043c\u0432 \u043a\u043e\u043d\u0433\u043e\u0434\u0430 \u043a\u043e\u043d\u0435\u0446\u043f\u0435\u0440\u0438\u043e\u0434\u0430\u0431\u0438 \u043a\u043e\u043d\u0435\u0446\u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043d\u043d\u043e\u0433\u043e\u043f\u0435\u0440\u0438\u043e\u0434\u0430\u0431\u0438 \u043a\u043e\u043d\u0435\u0446\u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0433\u043e\u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u0430 \u043a\u043e\u043d\u043a\u0432\u0430\u0440\u0442\u0430\u043b\u0430 \u043a\u043e\u043d\u043c\u0435\u0441\u044f\u0446\u0430 \u043a\u043e\u043d\u043d\u0435\u0434\u0435\u043b\u0438 \u043b\u043e\u0433 \u043b\u043e\u043310 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435\u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e\u0441\u0443\u0431\u043a\u043e\u043d\u0442\u043e \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435\u043d\u0430\u0431\u043e\u0440\u0430\u043f\u0440\u0430\u0432 \u043d\u0430\u0437\u043d\u0430\u0447\u0438\u0442\u044c\u0432\u0438\u0434 \u043d\u0430\u0437\u043d\u0430\u0447\u0438\u0442\u044c\u0441\u0447\u0435\u0442 \u043d\u0430\u0439\u0442\u0438\u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430\u0447\u0430\u043b\u043e\u043f\u0435\u0440\u0438\u043e\u0434\u0430\u0431\u0438 \u043d\u0430\u0447\u0430\u043b\u043e\u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0433\u043e\u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u0430 \u043d\u0430\u0447\u0433\u043e\u0434\u0430 \u043d\u0430\u0447\u043a\u0432\u0430\u0440\u0442\u0430\u043b\u0430 \u043d\u0430\u0447\u043c\u0435\u0441\u044f\u0446\u0430 \u043d\u0430\u0447\u043d\u0435\u0434\u0435\u043b\u0438 \u043d\u043e\u043c\u0435\u0440\u0434\u043d\u044f\u0433\u043e\u0434\u0430 \u043d\u043e\u043c\u0435\u0440\u0434\u043d\u044f\u043d\u0435\u0434\u0435\u043b\u0438 \u043d\u043e\u043c\u0435\u0440\u043d\u0435\u0434\u0435\u043b\u0438\u0433\u043e\u0434\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430\u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439\u0436\u0443\u0440\u043d\u0430\u043b\u0440\u0430\u0441\u0447\u0435\u0442\u043e\u0432 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439\u043f\u043b\u0430\u043d\u0441\u0447\u0435\u0442\u043e\u0432 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439\u044f\u0437\u044b\u043a \u043e\u0447\u0438\u0441\u0442\u0438\u0442\u044c\u043e\u043a\u043d\u043e\u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439 \u043f\u0435\u0440\u0438\u043e\u0434\u0441\u0442\u0440 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0432\u0440\u0435\u043c\u044f\u0442\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0434\u0430\u0442\u0443\u0442\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0442\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043e\u0442\u0431\u043e\u0440\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u043f\u043e\u0437\u0438\u0446\u0438\u044e\u0442\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u043f\u0443\u0441\u0442\u043e\u0435\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0442\u0430 \u043f\u0440\u0435\u0444\u0438\u043a\u0441\u0430\u0432\u0442\u043e\u043d\u0443\u043c\u0435\u0440\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u043f\u0438\u0441\u044c \u043f\u0443\u0441\u0442\u043e\u0435\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0440\u0430\u0437\u043c \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u043f\u043e\u0437\u0438\u0446\u0438\u044e\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u0442\u044c\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u044b\u043d\u0430 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u0442\u044c\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u044b\u043f\u043e \u0441\u0438\u043c\u0432 \u0441\u043e\u0437\u0434\u0430\u0442\u044c\u043e\u0431\u044a\u0435\u043a\u0442 \u0441\u0442\u0430\u0442\u0443\u0441\u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0430 \u0441\u0442\u0440\u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e\u0441\u0442\u0440\u043e\u043a \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u043f\u043e\u0437\u0438\u0446\u0438\u044e\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0441\u0447\u0435\u0442\u043f\u043e\u043a\u043e\u0434\u0443 \u0442\u0435\u043a\u0443\u0449\u0435\u0435\u0432\u0440\u0435\u043c\u044f \u0442\u0438\u043f\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0442\u0438\u043f\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u0441\u0442\u0440 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0442\u0430\u043d\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0442\u0430\u043f\u043e \u0444\u0438\u043a\u0441\u0448\u0430\u0431\u043b\u043e\u043d \u0448\u0430\u0431\u043b\u043e\u043d acos asin atan base64\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 base64\u0441\u0442\u0440\u043e\u043a\u0430 cos exp log log10 pow sin sqrt tan xml\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 xml\u0441\u0442\u0440\u043e\u043a\u0430 xml\u0442\u0438\u043f xml\u0442\u0438\u043f\u0437\u043d\u0447 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0435\u043e\u043a\u043d\u043e \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u044b\u0439\u0440\u0435\u0436\u0438\u043c \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u044b\u0439\u0440\u0435\u0436\u0438\u043c\u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u044f\u0434\u0430\u043d\u043d\u044b\u0445 \u0431\u0443\u043b\u0435\u0432\u043e \u0432\u0432\u0435\u0441\u0442\u0438\u0434\u0430\u0442\u0443 \u0432\u0432\u0435\u0441\u0442\u0438\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0432\u0432\u0435\u0441\u0442\u0438\u0441\u0442\u0440\u043e\u043a\u0443 \u0432\u0432\u0435\u0441\u0442\u0438\u0447\u0438\u0441\u043b\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c\u0447\u0442\u0435\u043d\u0438\u044fxml \u0432\u043e\u043f\u0440\u043e\u0441 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0432\u0440\u0435\u0433 \u0432\u044b\u0433\u0440\u0443\u0437\u0438\u0442\u044c\u0436\u0443\u0440\u043d\u0430\u043b\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0443\u043e\u043f\u043e\u0432\u0435\u0449\u0435\u043d\u0438\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c\u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443\u043f\u0440\u0430\u0432\u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u044c \u0433\u043e\u0434 \u0434\u0430\u043d\u043d\u044b\u0435\u0444\u043e\u0440\u043c\u044b\u0432\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0434\u0430\u0442\u0430 \u0434\u0435\u043d\u044c \u0434\u0435\u043d\u044c\u0433\u043e\u0434\u0430 \u0434\u0435\u043d\u044c\u043d\u0435\u0434\u0435\u043b\u0438 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c\u043c\u0435\u0441\u044f\u0446 \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0434\u0430\u043d\u043d\u044b\u0435\u0434\u043b\u044f\u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0440\u0430\u0431\u043e\u0442\u0443\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0437\u0430\u0432\u0435\u0440\u0448\u0438\u0442\u044c\u0440\u0430\u0431\u043e\u0442\u0443\u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c\u0432\u043d\u0435\u0448\u043d\u044e\u044e\u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0443 \u0437\u0430\u043a\u0440\u044b\u0442\u044c\u0441\u043f\u0440\u0430\u0432\u043a\u0443 \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044cjson \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044cxml \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c\u0434\u0430\u0442\u0443json \u0437\u0430\u043f\u0438\u0441\u044c\u0436\u0443\u0440\u043d\u0430\u043b\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0437\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u044c\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u0441\u0432\u043e\u0439\u0441\u0442\u0432 \u0437\u0430\u043f\u0440\u043e\u0441\u0438\u0442\u044c\u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c\u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0437\u0430\u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u044e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u0432\u0434\u0430\u043d\u043d\u044b\u0435\u0444\u043e\u0440\u043c\u044b \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u0432\u0441\u0442\u0440\u043e\u043a\u0443\u0432\u043d\u0443\u0442\u0440 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u0432\u0444\u0430\u0439\u043b \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u0438\u0437\u0441\u0442\u0440\u043e\u043a\u0438\u0432\u043d\u0443\u0442\u0440 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u0438\u0437\u0444\u0430\u0439\u043b\u0430 \u0438\u0437xml\u0442\u0438\u043f\u0430 \u0438\u043c\u043f\u043e\u0440\u0442\u043c\u043e\u0434\u0435\u043b\u0438xdto \u0438\u043c\u044f\u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0430 \u0438\u043c\u044f\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u043f\u0440\u0435\u0434\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0435\u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f\u043e\u0431\u043e\u0448\u0438\u0431\u043a\u0435 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438\u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0433\u043e\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445\u0444\u0430\u0439\u043b\u043e\u0432 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u0442\u0440\u043e\u043a\u0443 \u043a\u043e\u0434\u043b\u043e\u043a\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439\u0431\u0430\u0437\u044b \u043a\u043e\u0434\u0441\u0438\u043c\u0432\u043e\u043b\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0430\u0441\u0438\u0441\u0442\u0435\u043c\u044b \u043a\u043e\u043d\u0435\u0446\u0433\u043e\u0434\u0430 \u043a\u043e\u043d\u0435\u0446\u0434\u043d\u044f \u043a\u043e\u043d\u0435\u0446\u043a\u0432\u0430\u0440\u0442\u0430\u043b\u0430 \u043a\u043e\u043d\u0435\u0446\u043c\u0435\u0441\u044f\u0446\u0430 \u043a\u043e\u043d\u0435\u0446\u043c\u0438\u043d\u0443\u0442\u044b \u043a\u043e\u043d\u0435\u0446\u043d\u0435\u0434\u0435\u043b\u0438 \u043a\u043e\u043d\u0435\u0446\u0447\u0430\u0441\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f\u0431\u0430\u0437\u044b\u0434\u0430\u043d\u043d\u044b\u0445\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0430\u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0430 \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0434\u0430\u043d\u043d\u044b\u0435\u0444\u043e\u0440\u043c\u044b \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0444\u0430\u0439\u043b \u043a\u0440\u0430\u0442\u043a\u043e\u0435\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043e\u0448\u0438\u0431\u043a\u0438 \u043b\u0435\u0432 \u043c\u0430\u043a\u0441 \u043c\u0435\u0441\u0442\u043d\u043e\u0435\u0432\u0440\u0435\u043c\u044f \u043c\u0435\u0441\u044f\u0446 \u043c\u0438\u043d \u043c\u0438\u043d\u0443\u0442\u0430 \u043c\u043e\u043d\u043e\u043f\u043e\u043b\u044c\u043d\u044b\u0439\u0440\u0435\u0436\u0438\u043c \u043d\u0430\u0439\u0442\u0438 \u043d\u0430\u0439\u0442\u0438\u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0435\u0441\u0438\u043c\u0432\u043e\u043b\u044bxml \u043d\u0430\u0439\u0442\u0438\u043e\u043a\u043d\u043e\u043f\u043e\u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439\u0441\u0441\u044b\u043b\u043a\u0435 \u043d\u0430\u0439\u0442\u0438\u043f\u043e\u043c\u0435\u0447\u0435\u043d\u043d\u044b\u0435\u043d\u0430\u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u043d\u0430\u0439\u0442\u0438\u043f\u043e\u0441\u0441\u044b\u043b\u043a\u0430\u043c \u043d\u0430\u0439\u0442\u0438\u0444\u0430\u0439\u043b\u044b \u043d\u0430\u0447\u0430\u043b\u043e\u0433\u043e\u0434\u0430 \u043d\u0430\u0447\u0430\u043b\u043e\u0434\u043d\u044f \u043d\u0430\u0447\u0430\u043b\u043e\u043a\u0432\u0430\u0440\u0442\u0430\u043b\u0430 \u043d\u0430\u0447\u0430\u043b\u043e\u043c\u0435\u0441\u044f\u0446\u0430 \u043d\u0430\u0447\u0430\u043b\u043e\u043c\u0438\u043d\u0443\u0442\u044b \u043d\u0430\u0447\u0430\u043b\u043e\u043d\u0435\u0434\u0435\u043b\u0438 \u043d\u0430\u0447\u0430\u043b\u043e\u0447\u0430\u0441\u0430 \u043d\u0430\u0447\u0430\u0442\u044c\u0437\u0430\u043f\u0440\u043e\u0441\u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u044f\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043d\u0430\u0447\u0430\u0442\u044c\u0437\u0430\u043f\u0443\u0441\u043a\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430\u0447\u0430\u0442\u044c\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u0444\u0430\u0439\u043b\u0430 \u043d\u0430\u0447\u0430\u0442\u044c\u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d\u0438\u0435\u0444\u0430\u0439\u043b\u0430 \u043d\u0430\u0447\u0430\u0442\u044c\u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u0432\u043d\u0435\u0448\u043d\u0435\u0439\u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b \u043d\u0430\u0447\u0430\u0442\u044c\u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f\u0440\u0430\u0431\u043e\u0442\u044b\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0435\u0439 \u043d\u0430\u0447\u0430\u0442\u044c\u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f\u0440\u0430\u0431\u043e\u0442\u044b\u0441\u0444\u0430\u0439\u043b\u0430\u043c\u0438 \u043d\u0430\u0447\u0430\u0442\u044c\u043f\u043e\u0438\u0441\u043a\u0444\u0430\u0439\u043b\u043e\u0432 \u043d\u0430\u0447\u0430\u0442\u044c\u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435\u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0430\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445\u0444\u0430\u0439\u043b\u043e\u0432 \u043d\u0430\u0447\u0430\u0442\u044c\u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435\u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0430\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043d\u0430\u0447\u0430\u0442\u044c\u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435\u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e\u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0430\u0434\u0430\u043d\u043d\u044b\u0445\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043d\u0430\u0447\u0430\u0442\u044c\u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435\u0444\u0430\u0439\u043b\u043e\u0432 \u043d\u0430\u0447\u0430\u0442\u044c\u043f\u043e\u043c\u0435\u0449\u0435\u043d\u0438\u0435\u0444\u0430\u0439\u043b\u0430 \u043d\u0430\u0447\u0430\u0442\u044c\u043f\u043e\u043c\u0435\u0449\u0435\u043d\u0438\u0435\u0444\u0430\u0439\u043b\u043e\u0432 \u043d\u0430\u0447\u0430\u0442\u044c\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435\u0434\u0432\u043e\u0438\u0447\u043d\u044b\u0445\u0434\u0430\u043d\u043d\u044b\u0445\u0438\u0437\u0444\u0430\u0439\u043b\u0430 \u043d\u0430\u0447\u0430\u0442\u044c\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435\u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0430 \u043d\u0430\u0447\u0430\u0442\u044c\u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u044e \u043d\u0430\u0447\u0430\u0442\u044c\u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435\u0444\u0430\u0439\u043b\u043e\u0432 \u043d\u0430\u0447\u0430\u0442\u044c\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443\u0432\u043d\u0435\u0448\u043d\u0435\u0439\u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b \u043d\u0430\u0447\u0430\u0442\u044c\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f\u0440\u0430\u0431\u043e\u0442\u044b\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0435\u0439 \u043d\u0430\u0447\u0430\u0442\u044c\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f\u0440\u0430\u0431\u043e\u0442\u044b\u0441\u0444\u0430\u0439\u043b\u0430\u043c\u0438 \u043d\u0435\u0434\u0435\u043b\u044f\u0433\u043e\u0434\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u044c\u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u043d\u043e\u043c\u0435\u0440\u0441\u0435\u0430\u043d\u0441\u0430\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439\u0431\u0430\u0437\u044b \u043d\u043e\u043c\u0435\u0440\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439\u0431\u0430\u0437\u044b \u043d\u0440\u0435\u0433 \u043d\u0441\u0442\u0440 \u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c\u043d\u0443\u043c\u0435\u0440\u0430\u0446\u0438\u044e\u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c\u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0435\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430\u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u0442\u044c\u0444\u0430\u0439\u043b\u044b \u043e\u043a\u0440 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435\u043e\u0448\u0438\u0431\u043a\u0438 \u043e\u043f\u043e\u0432\u0435\u0441\u0442\u0438\u0442\u044c \u043e\u043f\u043e\u0432\u0435\u0441\u0442\u0438\u0442\u044c\u043e\u0431\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0438 \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0437\u0430\u043f\u0440\u043e\u0441\u0430\u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a\u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u043f\u043e\u0432\u0435\u0449\u0435\u043d\u0438\u044f \u043e\u0442\u043a\u0440\u044b\u0442\u044c\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043e\u0442\u043a\u0440\u044b\u0442\u044c\u0438\u043d\u0434\u0435\u043a\u0441\u0441\u043f\u0440\u0430\u0432\u043a\u0438 \u043e\u0442\u043a\u0440\u044b\u0442\u044c\u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0435\u0441\u043f\u0440\u0430\u0432\u043a\u0438 \u043e\u0442\u043a\u0440\u044b\u0442\u044c\u0441\u043f\u0440\u0430\u0432\u043a\u0443 \u043e\u0442\u043a\u0440\u044b\u0442\u044c\u0444\u043e\u0440\u043c\u0443 \u043e\u0442\u043a\u0440\u044b\u0442\u044c\u0444\u043e\u0440\u043c\u0443\u043c\u043e\u0434\u0430\u043b\u044c\u043d\u043e \u043e\u0442\u043c\u0435\u043d\u0438\u0442\u044c\u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u044e \u043e\u0447\u0438\u0441\u0442\u0438\u0442\u044c\u0436\u0443\u0440\u043d\u0430\u043b\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043e\u0447\u0438\u0441\u0442\u0438\u0442\u044c\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043e\u0447\u0438\u0441\u0442\u0438\u0442\u044c\u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b\u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043f\u0435\u0440\u0435\u0439\u0442\u0438\u043f\u043e\u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439\u0441\u0441\u044b\u043b\u043a\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u0441\u0442\u0438\u0442\u044c\u0444\u0430\u0439\u043b \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0432\u043d\u0435\u0448\u043d\u044e\u044e\u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0443 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0437\u0430\u043f\u0440\u043e\u0441\u0430\u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a\u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u043f\u043e\u0432\u0435\u0449\u0435\u043d\u0438\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435\u0440\u0430\u0431\u043e\u0442\u044b\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0435\u0439 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435\u0440\u0430\u0431\u043e\u0442\u044b\u0441\u0444\u0430\u0439\u043b\u0430\u043c\u0438 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0435\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043e\u0448\u0438\u0431\u043a\u0438 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c\u0432\u0432\u043e\u0434\u0434\u0430\u0442\u044b \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c\u0432\u0432\u043e\u0434\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c\u0432\u0432\u043e\u0434\u0441\u0442\u0440\u043e\u043a\u0438 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c\u0432\u0432\u043e\u0434\u0447\u0438\u0441\u043b\u0430 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c\u0432\u043e\u043f\u0440\u043e\u0441 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e\u043e\u0431\u043e\u0448\u0438\u0431\u043a\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c\u043d\u0430\u043a\u0430\u0440\u0442\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c\u043e\u043f\u043e\u0432\u0435\u0449\u0435\u043d\u0438\u0435\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c\u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u043d\u043e\u0435\u0438\u043c\u044f\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044ccom\u043e\u0431\u044a\u0435\u043a\u0442 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044cxml\u0442\u0438\u043f \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0430\u0434\u0440\u0435\u0441\u043f\u043e\u043c\u0435\u0441\u0442\u043e\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u044e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0443\u0441\u0435\u0430\u043d\u0441\u043e\u0432 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0432\u0440\u0435\u043c\u044f\u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f\u0441\u043f\u044f\u0449\u0435\u0433\u043e\u0441\u0435\u0430\u043d\u0441\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0432\u0440\u0435\u043c\u044f\u0437\u0430\u0441\u044b\u043f\u0430\u043d\u0438\u044f\u043f\u0430\u0441\u0441\u0438\u0432\u043d\u043e\u0433\u043e\u0441\u0435\u0430\u043d\u0441\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0432\u0440\u0435\u043c\u044f\u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0434\u0430\u043d\u043d\u044b\u0435\u0432\u044b\u0431\u043e\u0440\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0435\u043a\u043e\u0434\u044b\u043b\u043e\u043a\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0435\u0447\u0430\u0441\u043e\u0432\u044b\u0435\u043f\u043e\u044f\u0441\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a\u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u043e\u0433\u043e\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a\u0441\u0438\u0441\u0442\u0435\u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043e\u0442\u0431\u043e\u0440\u0430\u0436\u0443\u0440\u043d\u0430\u043b\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0438\u0437\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0433\u043e\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0438\u043c\u044f\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0433\u043e\u0444\u0430\u0439\u043b\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0438\u043c\u044f\u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e\u044d\u043a\u0440\u0430\u043d\u043e\u0432\u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u0436\u0443\u0440\u043d\u0430\u043b\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u0441\u043e\u0431\u044b\u0442\u0438\u044f\u0436\u0443\u0440\u043d\u0430\u043b\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u043a\u0440\u0430\u0442\u043a\u0438\u0439\u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u043c\u0430\u043a\u0435\u0442\u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u043c\u0430\u0441\u043a\u0443\u0432\u0441\u0435\u0444\u0430\u0439\u043b\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u043c\u0430\u0441\u043a\u0443\u0432\u0441\u0435\u0444\u0430\u0439\u043b\u044b\u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u043c\u0430\u0441\u043a\u0443\u0432\u0441\u0435\u0444\u0430\u0439\u043b\u044b\u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u043c\u0435\u0441\u0442\u043e\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043f\u043e\u0430\u0434\u0440\u0435\u0441\u0443 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u0443\u044e\u0434\u043b\u0438\u043d\u0443\u043f\u0430\u0440\u043e\u043b\u0435\u0439\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u043e\u043d\u043d\u0443\u044e\u0441\u0441\u044b\u043b\u043a\u0443 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u043e\u043d\u043d\u0443\u044e\u0441\u0441\u044b\u043b\u043a\u0443\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439\u0431\u0430\u0437\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438\u0431\u0430\u0437\u044b\u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435\u043f\u0440\u0435\u0434\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445\u0434\u0430\u043d\u043d\u044b\u0445\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439\u0431\u0430\u0437\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u043e\u0431\u0449\u0438\u0439\u043c\u0430\u043a\u0435\u0442 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u043e\u0431\u0449\u0443\u044e\u0444\u043e\u0440\u043c\u0443 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u043e\u043a\u043d\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u0443\u044e\u043e\u0442\u043c\u0435\u0442\u043a\u0443\u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0433\u043e\u0440\u0435\u0436\u0438\u043c\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b\u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0445\u043e\u043f\u0446\u0438\u0439\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u043f\u043e\u043b\u043d\u043e\u0435\u0438\u043c\u044f\u043f\u0440\u0435\u0434\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0433\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f\u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0445\u0441\u0441\u044b\u043b\u043e\u043a \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443\u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u0438\u043f\u0430\u0440\u043e\u043b\u0435\u0439\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c\u043f\u0443\u0442\u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c\u043f\u0443\u0442\u0438\u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c\u043f\u0443\u0442\u0438\u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0441\u0435\u0430\u043d\u0441\u044b\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439\u0431\u0430\u0437\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c\u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u043e\u0433\u043e\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439\u0431\u0430\u0437\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435\u043e\u0431\u044a\u0435\u043a\u0442\u0430\u0438\u0444\u043e\u0440\u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0441\u043e\u0441\u0442\u0430\u0432\u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0433\u043e\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430odata \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f\u0431\u0430\u0437\u044b\u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0442\u0435\u043a\u0443\u0449\u0438\u0439\u0441\u0435\u0430\u043d\u0441\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439\u0431\u0430\u0437\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0444\u0430\u0439\u043b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0444\u0430\u0439\u043b\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0444\u043e\u0440\u043c\u0443 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u0443\u044e\u043e\u043f\u0446\u0438\u044e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u0443\u044e\u043e\u043f\u0446\u0438\u044e\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0447\u0430\u0441\u043e\u0432\u043e\u0439\u043f\u043e\u044f\u0441\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439\u0431\u0430\u0437\u044b \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438\u043e\u0441 \u043f\u043e\u043c\u0435\u0441\u0442\u0438\u0442\u044c\u0432\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0435\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u043f\u043e\u043c\u0435\u0441\u0442\u0438\u0442\u044c\u0444\u0430\u0439\u043b \u043f\u043e\u043c\u0435\u0441\u0442\u0438\u0442\u044c\u0444\u0430\u0439\u043b\u044b \u043f\u0440\u0430\u0432 \u043f\u0440\u0430\u0432\u043e\u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043f\u0440\u0435\u0434\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0435\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043a\u043e\u0434\u0430\u043b\u043e\u043a\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043f\u0435\u0440\u0438\u043e\u0434\u0430 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043f\u0440\u0430\u0432\u0430 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u0441\u043e\u0431\u044b\u0442\u0438\u044f\u0436\u0443\u0440\u043d\u0430\u043b\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u0447\u0430\u0441\u043e\u0432\u043e\u0433\u043e\u043f\u043e\u044f\u0441\u0430 \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435 \u043f\u0440\u0435\u043a\u0440\u0430\u0442\u0438\u0442\u044c\u0440\u0430\u0431\u043e\u0442\u0443\u0441\u0438\u0441\u0442\u0435\u043c\u044b \u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439\u0440\u0435\u0436\u0438\u043c \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c\u0432\u044b\u0437\u043e\u0432 \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044cjson \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044cxml \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c\u0434\u0430\u0442\u0443json \u043f\u0443\u0441\u0442\u0430\u044f\u0441\u0442\u0440\u043e\u043a\u0430 \u0440\u0430\u0431\u043e\u0447\u0438\u0439\u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0434\u0430\u043d\u043d\u044b\u0445\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0440\u0430\u0437\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0434\u0430\u043d\u043d\u044b\u0435\u0434\u043b\u044f\u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u044c\u0444\u0430\u0439\u043b \u0440\u0430\u0437\u043e\u0440\u0432\u0430\u0442\u044c\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435\u0441\u0432\u043d\u0435\u0448\u043d\u0438\u043c\u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u043c\u0434\u0430\u043d\u043d\u044b\u0445 \u0440\u0430\u0441\u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u0442\u0440\u043e\u043a\u0443 \u0440\u043e\u043b\u044c\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0441\u0435\u043a\u0443\u043d\u0434\u0430 \u0441\u0438\u0433\u043d\u0430\u043b \u0441\u0438\u043c\u0432\u043e\u043b \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0436\u0443\u0440\u043d\u0430\u043b\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0441\u043c\u0435\u0449\u0435\u043d\u0438\u0435\u043b\u0435\u0442\u043d\u0435\u0433\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0441\u043c\u0435\u0449\u0435\u043d\u0438\u0435\u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0433\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0438\u0442\u044c\u0431\u0443\u0444\u0435\u0440\u044b\u0434\u0432\u043e\u0438\u0447\u043d\u044b\u0445\u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u043e\u0437\u0434\u0430\u0442\u044c\u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0441\u043e\u0437\u0434\u0430\u0442\u044c\u0444\u0430\u0431\u0440\u0438\u043a\u0443xdto \u0441\u043e\u043a\u0440\u043b \u0441\u043e\u043a\u0440\u043b\u043f \u0441\u043e\u043a\u0440\u043f \u0441\u043e\u043e\u0431\u0449\u0438\u0442\u044c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0441\u0440\u0435\u0434 \u0441\u0442\u0440\u0434\u043b\u0438\u043d\u0430 \u0441\u0442\u0440\u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044f\u043d\u0430 \u0441\u0442\u0440\u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u0441\u0442\u0440\u043d\u0430\u0439\u0442\u0438 \u0441\u0442\u0440\u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f\u0441 \u0441\u0442\u0440\u043e\u043a\u0430 \u0441\u0442\u0440\u043e\u043a\u0430\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439\u0431\u0430\u0437\u044b \u0441\u0442\u0440\u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0441\u0442\u0440\u043e\u043a\u0443 \u0441\u0442\u0440\u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u044c \u0441\u0442\u0440\u0441\u043e\u0435\u0434\u0438\u043d\u0438\u0442\u044c \u0441\u0442\u0440\u0441\u0440\u0430\u0432\u043d\u0438\u0442\u044c \u0441\u0442\u0440\u0447\u0438\u0441\u043b\u043e\u0432\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u0439 \u0441\u0442\u0440\u0447\u0438\u0441\u043b\u043e\u0441\u0442\u0440\u043e\u043a \u0441\u0442\u0440\u0448\u0430\u0431\u043b\u043e\u043d \u0442\u0435\u043a\u0443\u0449\u0430\u044f\u0434\u0430\u0442\u0430 \u0442\u0435\u043a\u0443\u0449\u0430\u044f\u0434\u0430\u0442\u0430\u0441\u0435\u0430\u043d\u0441\u0430 \u0442\u0435\u043a\u0443\u0449\u0430\u044f\u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u0430\u044f\u0434\u0430\u0442\u0430 \u0442\u0435\u043a\u0443\u0449\u0430\u044f\u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u0430\u044f\u0434\u0430\u0442\u0430\u0432\u043c\u0438\u043b\u043b\u0438\u0441\u0435\u043a\u0443\u043d\u0434\u0430\u0445 \u0442\u0435\u043a\u0443\u0449\u0438\u0439\u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430\u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u043e\u0433\u043e\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0442\u0435\u043a\u0443\u0449\u0438\u0439\u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e\u0448\u0440\u0438\u0444\u0442\u0430\u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u043e\u0433\u043e\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0442\u0435\u043a\u0443\u0449\u0438\u0439\u043a\u043e\u0434\u043b\u043e\u043a\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0442\u0435\u043a\u0443\u0449\u0438\u0439\u0440\u0435\u0436\u0438\u043c\u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0442\u0435\u043a\u0443\u0449\u0438\u0439\u044f\u0437\u044b\u043a \u0442\u0435\u043a\u0443\u0449\u0438\u0439\u044f\u0437\u044b\u043a\u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0442\u0438\u043f \u0442\u0438\u043f\u0437\u043d\u0447 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u044f\u0430\u043a\u0442\u0438\u0432\u043d\u0430 \u0442\u0440\u0435\u0433 \u0443\u0434\u0430\u043b\u0438\u0442\u044c\u0434\u0430\u043d\u043d\u044b\u0435\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439\u0431\u0430\u0437\u044b \u0443\u0434\u0430\u043b\u0438\u0442\u044c\u0438\u0437\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0433\u043e\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u0443\u0434\u0430\u043b\u0438\u0442\u044c\u043e\u0431\u044a\u0435\u043a\u0442\u044b \u0443\u0434\u0430\u043b\u0438\u0442\u044c\u0444\u0430\u0439\u043b\u044b \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u043e\u0435\u0432\u0440\u0435\u043c\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u044b\u0439\u0440\u0435\u0436\u0438\u043c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u044b\u0439\u0440\u0435\u0436\u0438\u043c\u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u044f\u0434\u0430\u043d\u043d\u044b\u0445 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0443\u0441\u0435\u0430\u043d\u0441\u043e\u0432 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0432\u043d\u0435\u0448\u043d\u044e\u044e\u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0443 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0432\u0440\u0435\u043c\u044f\u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f\u0441\u043f\u044f\u0449\u0435\u0433\u043e\u0441\u0435\u0430\u043d\u0441\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0432\u0440\u0435\u043c\u044f\u0437\u0430\u0441\u044b\u043f\u0430\u043d\u0438\u044f\u043f\u0430\u0441\u0441\u0438\u0432\u043d\u043e\u0433\u043e\u0441\u0435\u0430\u043d\u0441\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0432\u0440\u0435\u043c\u044f\u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a\u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u043e\u0433\u043e\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a\u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u0436\u0443\u0440\u043d\u0430\u043b\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u0441\u043e\u0431\u044b\u0442\u0438\u044f\u0436\u0443\u0440\u043d\u0430\u043b\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u043a\u0440\u0430\u0442\u043a\u0438\u0439\u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u0443\u044e\u0434\u043b\u0438\u043d\u0443\u043f\u0430\u0440\u043e\u043b\u0435\u0439\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u043c\u043e\u043d\u043e\u043f\u043e\u043b\u044c\u043d\u044b\u0439\u0440\u0435\u0436\u0438\u043c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435\u043f\u0440\u0435\u0434\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445\u0434\u0430\u043d\u043d\u044b\u0445\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439\u0431\u0430\u0437\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0433\u043e\u0440\u0435\u0436\u0438\u043c\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b\u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0445\u043e\u043f\u0446\u0438\u0439\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439\u0440\u0435\u0436\u0438\u043c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443\u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u0438\u043f\u0430\u0440\u043e\u043b\u0435\u0439\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435\u0440\u0430\u0431\u043e\u0442\u044b\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0435\u0439 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435\u0440\u0430\u0431\u043e\u0442\u044b\u0441\u0444\u0430\u0439\u043b\u0430\u043c\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435\u0441\u0432\u043d\u0435\u0448\u043d\u0438\u043c\u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u043c\u0434\u0430\u043d\u043d\u044b\u0445 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435\u043e\u0431\u044a\u0435\u043a\u0442\u0430\u0438\u0444\u043e\u0440\u043c\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0441\u043e\u0441\u0442\u0430\u0432\u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0433\u043e\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430odata \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0447\u0430\u0441\u043e\u0432\u043e\u0439\u043f\u043e\u044f\u0441\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439\u0431\u0430\u0437\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0447\u0430\u0441\u043e\u0432\u043e\u0439\u043f\u043e\u044f\u0441\u0441\u0435\u0430\u043d\u0441\u0430 \u0444\u043e\u0440\u043c\u0430\u0442 \u0446\u0435\u043b \u0447\u0430\u0441 \u0447\u0430\u0441\u043e\u0432\u043e\u0439\u043f\u043e\u044f\u0441 \u0447\u0430\u0441\u043e\u0432\u043e\u0439\u043f\u043e\u044f\u0441\u0441\u0435\u0430\u043d\u0441\u0430 \u0447\u0438\u0441\u043b\u043e \u0447\u0438\u0441\u043b\u043e\u043f\u0440\u043e\u043f\u0438\u0441\u044c\u044e \u044d\u0442\u043e\u0430\u0434\u0440\u0435\u0441\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0433\u043e\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 ws\u0441\u0441\u044b\u043b\u043a\u0438 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430\u043a\u0430\u0440\u0442\u0438\u043d\u043e\u043a \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430\u043c\u0430\u043a\u0435\u0442\u043e\u0432\u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u044f\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430\u0441\u0442\u0438\u043b\u0435\u0439 \u0431\u0438\u0437\u043d\u0435\u0441\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u044b \u0432\u043d\u0435\u0448\u043d\u0438\u0435\u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0432\u043d\u0435\u0448\u043d\u0438\u0435\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432\u043d\u0435\u0448\u043d\u0438\u0435\u043e\u0442\u0447\u0435\u0442\u044b \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0435\u043f\u043e\u043a\u0443\u043f\u043a\u0438 \u0433\u043b\u0430\u0432\u043d\u044b\u0439\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0433\u043b\u0430\u0432\u043d\u044b\u0439\u0441\u0442\u0438\u043b\u044c \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u044b \u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0435\u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u044f \u0436\u0443\u0440\u043d\u0430\u043b\u044b\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0437\u0430\u0434\u0430\u0447\u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f\u043e\u0431\u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u0440\u0430\u0431\u043e\u0447\u0435\u0439\u0434\u0430\u0442\u044b \u0438\u0441\u0442\u043e\u0440\u0438\u044f\u0440\u0430\u0431\u043e\u0442\u044b\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b \u043a\u0440\u0438\u0442\u0435\u0440\u0438\u0438\u043e\u0442\u0431\u043e\u0440\u0430 \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u0440\u0435\u043a\u043b\u0430\u043c\u044b \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0430\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0445\u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u0439 \u043e\u0442\u0447\u0435\u0442\u044b \u043f\u0430\u043d\u0435\u043b\u044c\u0437\u0430\u0434\u0430\u0447\u043e\u0441 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b\u0441\u0435\u0430\u043d\u0441\u0430 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u043f\u043b\u0430\u043d\u044b\u0432\u0438\u0434\u043e\u0432\u0440\u0430\u0441\u0447\u0435\u0442\u0430 \u043f\u043b\u0430\u043d\u044b\u0432\u0438\u0434\u043e\u0432\u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a \u043f\u043b\u0430\u043d\u044b\u043e\u0431\u043c\u0435\u043d\u0430 \u043f\u043b\u0430\u043d\u044b\u0441\u0447\u0435\u0442\u043e\u0432 \u043f\u043e\u043b\u043d\u043e\u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0439\u043f\u043e\u0438\u0441\u043a \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439\u0431\u0430\u0437\u044b \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430\u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0445\u043f\u043e\u043a\u0443\u043f\u043e\u043a \u0440\u0430\u0431\u043e\u0447\u0430\u044f\u0434\u0430\u0442\u0430 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u044b\u0431\u0443\u0445\u0433\u0430\u043b\u0442\u0435\u0440\u0438\u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u044b\u043d\u0430\u043a\u043e\u043f\u043b\u0435\u043d\u0438\u044f \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u044b\u0440\u0430\u0441\u0447\u0435\u0442\u0430 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u044b\u0441\u0432\u0435\u0434\u0435\u043d\u0438\u0439 \u0440\u0435\u0433\u043b\u0430\u043c\u0435\u043d\u0442\u043d\u044b\u0435\u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0441\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440xdto \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a\u0438 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u0433\u0435\u043e\u043f\u043e\u0437\u0438\u0446\u0438\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0438 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u043c\u0443\u043b\u044c\u0442\u0438\u043c\u0435\u0434\u0438\u0430 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u0440\u0435\u043a\u043b\u0430\u043c\u044b \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u043f\u043e\u0447\u0442\u044b \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0438\u0438 \u0444\u0430\u0431\u0440\u0438\u043a\u0430xdto \u0444\u0430\u0439\u043b\u043e\u0432\u044b\u0435\u043f\u043e\u0442\u043e\u043a\u0438 \u0444\u043e\u043d\u043e\u0432\u044b\u0435\u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430\u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435\u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432\u043e\u0442\u0447\u0435\u0442\u043e\u0432 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435\u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a\u0434\u0430\u043d\u043d\u044b\u0445\u0444\u043e\u0440\u043c \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435\u043e\u0431\u0449\u0438\u0445\u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0445\u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a\u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0445\u0441\u043f\u0438\u0441\u043a\u043e\u0432 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0445\u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a\u043e\u0442\u0447\u0435\u0442\u043e\u0432 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435\u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445\u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a ", +class:"web\u0446\u0432\u0435\u0442\u0430 windows\u0446\u0432\u0435\u0442\u0430 windows\u0448\u0440\u0438\u0444\u0442\u044b \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430\u043a\u0430\u0440\u0442\u0438\u043d\u043e\u043a \u0440\u0430\u043c\u043a\u0438\u0441\u0442\u0438\u043b\u044f \u0441\u0438\u043c\u0432\u043e\u043b\u044b \u0446\u0432\u0435\u0442\u0430\u0441\u0442\u0438\u043b\u044f \u0448\u0440\u0438\u0444\u0442\u044b\u0441\u0442\u0438\u043b\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435\u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435\u0434\u0430\u043d\u043d\u044b\u0445\u0444\u043e\u0440\u043c\u044b\u0432\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445 \u0430\u0432\u0442\u043e\u043d\u0443\u043c\u0435\u0440\u0430\u0446\u0438\u044f\u0432\u0444\u043e\u0440\u043c\u0435 \u0430\u0432\u0442\u043e\u0440\u0430\u0437\u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0435\u0441\u0435\u0440\u0438\u0439 \u0430\u043d\u0438\u043c\u0430\u0446\u0438\u044f\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0432\u044b\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u043d\u0438\u044f\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432\u0438\u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u043e\u0432 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f\u0432\u044b\u0441\u043e\u0442\u043e\u0439\u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0432\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u0430\u044f\u043f\u0440\u043e\u043a\u0440\u0443\u0442\u043a\u0430\u0444\u043e\u0440\u043c\u044b \u0432\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u043e\u0435\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0432\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u043e\u0435\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0432\u0438\u0434\u0433\u0440\u0443\u043f\u043f\u044b\u0444\u043e\u0440\u043c\u044b \u0432\u0438\u0434\u0434\u0435\u043a\u043e\u0440\u0430\u0446\u0438\u0438\u0444\u043e\u0440\u043c\u044b \u0432\u0438\u0434\u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0444\u043e\u0440\u043c\u044b \u0432\u0438\u0434\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f\u0434\u0430\u043d\u043d\u044b\u0445 \u0432\u0438\u0434\u043a\u043d\u043e\u043f\u043a\u0438\u0444\u043e\u0440\u043c\u044b \u0432\u0438\u0434\u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u0435\u043b\u044f \u0432\u0438\u0434\u043f\u043e\u0434\u043f\u0438\u0441\u0435\u0439\u043a\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0435 \u0432\u0438\u0434\u043f\u043e\u043b\u044f\u0444\u043e\u0440\u043c\u044b \u0432\u0438\u0434\u0444\u043b\u0430\u0436\u043a\u0430 \u0432\u043b\u0438\u044f\u043d\u0438\u0435\u0440\u0430\u0437\u043c\u0435\u0440\u0430\u043d\u0430\u043f\u0443\u0437\u044b\u0440\u0435\u043a\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0435\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0435\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0433\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u043a\u0430\u043a\u043e\u043b\u043e\u043d\u043e\u043a \u0433\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u043a\u0430\u043f\u043e\u0434\u0447\u0438\u043d\u0435\u043d\u043d\u044b\u0445\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432\u0444\u043e\u0440\u043c\u044b \u0433\u0440\u0443\u043f\u043f\u044b\u0438\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435\u043f\u0435\u0440\u0435\u0442\u0430\u0441\u043a\u0438\u0432\u0430\u043d\u0438\u044f \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439\u0440\u0435\u0436\u0438\u043c\u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f\u043f\u0435\u0440\u0435\u0442\u0430\u0441\u043a\u0438\u0432\u0430\u043d\u0438\u044f \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u043c\u0435\u0436\u0434\u0443\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u043c\u0438\u0444\u043e\u0440\u043c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u0432\u044b\u0432\u043e\u0434\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043f\u043e\u043b\u043e\u0441\u044b\u043f\u0440\u043e\u043a\u0440\u0443\u0442\u043a\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u043e\u0435\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u0442\u043e\u0447\u043a\u0438\u0431\u0438\u0440\u0436\u0435\u0432\u043e\u0439\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u0438\u0441\u0442\u043e\u0440\u0438\u044f\u0432\u044b\u0431\u043e\u0440\u0430\u043f\u0440\u0438\u0432\u0432\u043e\u0434\u0435 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439\u043e\u0441\u0438\u0442\u043e\u0447\u0435\u043a\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u0440\u0430\u0437\u043c\u0435\u0440\u0430\u043f\u0443\u0437\u044b\u0440\u044c\u043a\u0430\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u044f\u0433\u0440\u0443\u043f\u043f\u044b\u043a\u043e\u043c\u0430\u043d\u0434 \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c\u0441\u0435\u0440\u0438\u0439 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0435\u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u0434\u0435\u0440\u0435\u0432\u0430 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0435\u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u0441\u043f\u0438\u0441\u043a\u0430 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435\u0442\u0435\u043a\u0441\u0442\u0430\u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u0440\u0438\u0435\u043d\u0442\u0430\u0446\u0438\u044f\u0434\u0435\u043d\u0434\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u043e\u0440\u0438\u0435\u043d\u0442\u0430\u0446\u0438\u044f\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u043e\u0440\u0438\u0435\u043d\u0442\u0430\u0446\u0438\u044f\u043c\u0435\u0442\u043e\u043a\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u043e\u0440\u0438\u0435\u043d\u0442\u0430\u0446\u0438\u044f\u043c\u0435\u0442\u043e\u043a\u0441\u0432\u043e\u0434\u043d\u043e\u0439\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u043e\u0440\u0438\u0435\u043d\u0442\u0430\u0446\u0438\u044f\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0444\u043e\u0440\u043c\u044b \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u0432\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0435 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u0432\u043b\u0435\u0433\u0435\u043d\u0434\u0435\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u0433\u0440\u0443\u043f\u043f\u044b\u043a\u043d\u043e\u043f\u043e\u043a \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0430\u0448\u043a\u0430\u043b\u044b\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439\u0441\u0432\u043e\u0434\u043d\u043e\u0439\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u0438\u0437\u043c\u0435\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u0430\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b\u0433\u0430\u043d\u0442\u0430 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043a\u043d\u043e\u043f\u043a\u0438 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043a\u043d\u043e\u043f\u043a\u0438\u0432\u044b\u0431\u043e\u0440\u0430 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043e\u0431\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u0439\u0444\u043e\u0440\u043c\u044b \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043e\u0431\u044b\u0447\u043d\u043e\u0439\u0433\u0440\u0443\u043f\u043f\u044b \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043e\u0442\u0440\u0438\u0446\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0445\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439\u043f\u0443\u0437\u044b\u0440\u044c\u043a\u043e\u0432\u043e\u0439\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043f\u0430\u043d\u0435\u043b\u0438\u043f\u043e\u0438\u0441\u043a\u0430 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043f\u043e\u0434\u0441\u043a\u0430\u0437\u043a\u0438 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u044f\u043f\u0440\u0438\u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u0440\u0430\u0437\u043c\u0435\u0442\u043a\u0438\u043f\u043e\u043b\u043e\u0441\u044b\u0440\u0435\u0433\u0443\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0444\u043e\u0440\u043c\u044b \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u0442\u0430\u0431\u043b\u0438\u0446\u044b \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u0442\u0435\u043a\u0441\u0442\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b\u0433\u0430\u043d\u0442\u0430 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f\u043e\u0431\u044b\u0447\u043d\u043e\u0439\u0433\u0440\u0443\u043f\u043f\u044b \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u0444\u0438\u0433\u0443\u0440\u044b\u043a\u043d\u043e\u043f\u043a\u0438 \u043f\u0430\u043b\u0438\u0442\u0440\u0430\u0446\u0432\u0435\u0442\u043e\u0432\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435\u043e\u0431\u044b\u0447\u043d\u043e\u0439\u0433\u0440\u0443\u043f\u043f\u044b \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430\u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0430\u0434\u0435\u043d\u0434\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430\u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0430\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b\u0433\u0430\u043d\u0442\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430\u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0430\u0441\u0432\u043e\u0434\u043d\u043e\u0439\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u043f\u043e\u0438\u0441\u043a\u0432\u0442\u0430\u0431\u043b\u0438\u0446\u0435\u043f\u0440\u0438\u0432\u0432\u043e\u0434\u0435 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0430\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0444\u043e\u0440\u043c\u044b \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438\u043a\u043d\u043e\u043f\u043a\u0438\u0444\u043e\u0440\u043c\u044b \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0439\u0441\u0445\u0435\u043c\u044b \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439\u043f\u0430\u043d\u0435\u043b\u0438\u0444\u043e\u0440\u043c\u044b \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439\u043f\u0430\u043d\u0435\u043b\u0438\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0444\u043e\u0440\u043c\u044b \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043e\u043f\u043e\u0440\u043d\u043e\u0439\u0442\u043e\u0447\u043a\u0438\u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0438 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043f\u043e\u0434\u043f\u0438\u0441\u0435\u0439\u043a\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0435 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043f\u043e\u0434\u043f\u0438\u0441\u0435\u0439\u0448\u043a\u0430\u043b\u044b\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439\u0438\u0437\u043c\u0435\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f\u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0441\u0442\u0440\u043e\u043a\u0438\u043f\u043e\u0438\u0441\u043a\u0430 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0442\u0435\u043a\u0441\u0442\u0430\u0441\u043e\u0435\u0434\u0438\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439\u043b\u0438\u043d\u0438\u0438 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f\u043f\u043e\u0438\u0441\u043a\u043e\u043c \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0448\u043a\u0430\u043b\u044b\u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043f\u043e\u0440\u044f\u0434\u043e\u043a\u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u0442\u043e\u0447\u0435\u043a\u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0439\u0433\u0438\u0441\u0442\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u043f\u043e\u0440\u044f\u0434\u043e\u043a\u0441\u0435\u0440\u0438\u0439\u0432\u043b\u0435\u0433\u0435\u043d\u0434\u0435\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u0440\u0430\u0437\u043c\u0435\u0440\u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0430\u0448\u043a\u0430\u043b\u044b\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u0440\u0430\u0441\u0442\u044f\u0433\u0438\u0432\u0430\u043d\u0438\u0435\u043f\u043e\u0432\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u0438\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b\u0433\u0430\u043d\u0442\u0430 \u0440\u0435\u0436\u0438\u043c\u0430\u0432\u0442\u043e\u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0440\u0435\u0436\u0438\u043c\u0432\u0432\u043e\u0434\u0430\u0441\u0442\u0440\u043e\u043a\u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0440\u0435\u0436\u0438\u043c\u0432\u044b\u0431\u043e\u0440\u0430\u043d\u0435\u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u043e\u0433\u043e \u0440\u0435\u0436\u0438\u043c\u0432\u044b\u0434\u0435\u043b\u0435\u043d\u0438\u044f\u0434\u0430\u0442\u044b \u0440\u0435\u0436\u0438\u043c\u0432\u044b\u0434\u0435\u043b\u0435\u043d\u0438\u044f\u0441\u0442\u0440\u043e\u043a\u0438\u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0440\u0435\u0436\u0438\u043c\u0432\u044b\u0434\u0435\u043b\u0435\u043d\u0438\u044f\u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0440\u0435\u0436\u0438\u043c\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f\u0440\u0430\u0437\u043c\u0435\u0440\u0430 \u0440\u0435\u0436\u0438\u043c\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f\u0441\u0432\u044f\u0437\u0430\u043d\u043d\u043e\u0433\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0440\u0435\u0436\u0438\u043c\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f\u0434\u0438\u0430\u043b\u043e\u0433\u0430\u043f\u0435\u0447\u0430\u0442\u0438 \u0440\u0435\u0436\u0438\u043c\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0440\u0435\u0436\u0438\u043c\u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f\u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0440\u0435\u0436\u0438\u043c\u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e\u043e\u043a\u043d\u0430\u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u043e\u0433\u043e\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0440\u0435\u0436\u0438\u043c\u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f\u043e\u043a\u043d\u0430\u0444\u043e\u0440\u043c\u044b \u0440\u0435\u0436\u0438\u043c\u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u0432\u044b\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0440\u0435\u0436\u0438\u043c\u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u0433\u0435\u043e\u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0439\u0441\u0445\u0435\u043c\u044b \u0440\u0435\u0436\u0438\u043c\u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439\u0441\u0435\u0440\u0438\u0438 \u0440\u0435\u0436\u0438\u043c\u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0438\u0441\u0435\u0442\u043a\u0438\u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0439\u0441\u0445\u0435\u043c\u044b \u0440\u0435\u0436\u0438\u043c\u043f\u043e\u043b\u0443\u043f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u043e\u0441\u0442\u0438\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u0440\u0435\u0436\u0438\u043c\u043f\u0440\u043e\u0431\u0435\u043b\u043e\u0432\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u0440\u0435\u0436\u0438\u043c\u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u0438\u044f\u043d\u0430\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 \u0440\u0435\u0436\u0438\u043c\u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f\u043a\u043e\u043b\u043e\u043d\u043a\u0438 \u0440\u0435\u0436\u0438\u043c\u0441\u0433\u043b\u0430\u0436\u0438\u0432\u0430\u043d\u0438\u044f\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u0440\u0435\u0436\u0438\u043c\u0441\u0433\u043b\u0430\u0436\u0438\u0432\u0430\u043d\u0438\u044f\u0438\u043d\u0434\u0438\u043a\u0430\u0442\u043e\u0440\u0430 \u0440\u0435\u0436\u0438\u043c\u0441\u043f\u0438\u0441\u043a\u0430\u0437\u0430\u0434\u0430\u0447 \u0441\u043a\u0432\u043e\u0437\u043d\u043e\u0435\u0432\u044b\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u043d\u0438\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435\u0434\u0430\u043d\u043d\u044b\u0445\u0444\u043e\u0440\u043c\u044b\u0432\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445 \u0441\u043f\u043e\u0441\u043e\u0431\u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f\u0442\u0435\u043a\u0441\u0442\u0430\u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0430\u0448\u043a\u0430\u043b\u044b\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f\u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0430\u044f\u0433\u0440\u0443\u043f\u043f\u0430\u043a\u043e\u043c\u0430\u043d\u0434 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0435\u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u0435 \u0441\u0442\u0430\u0442\u0443\u0441\u043e\u043f\u043e\u0432\u0435\u0449\u0435\u043d\u0438\u044f\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0441\u0442\u0438\u043b\u044c\u0441\u0442\u0440\u0435\u043b\u043a\u0438 \u0442\u0438\u043f\u0430\u043f\u043f\u0440\u043e\u043a\u0441\u0438\u043c\u0430\u0446\u0438\u0438\u043b\u0438\u043d\u0438\u0438\u0442\u0440\u0435\u043d\u0434\u0430\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u0442\u0438\u043f\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u0442\u0438\u043f\u0435\u0434\u0438\u043d\u0438\u0446\u044b\u0448\u043a\u0430\u043b\u044b\u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0442\u0438\u043f\u0438\u043c\u043f\u043e\u0440\u0442\u0430\u0441\u0435\u0440\u0438\u0439\u0441\u043b\u043e\u044f\u0433\u0435\u043e\u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0439\u0441\u0445\u0435\u043c\u044b \u0442\u0438\u043f\u043b\u0438\u043d\u0438\u0438\u0433\u0435\u043e\u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0439\u0441\u0445\u0435\u043c\u044b \u0442\u0438\u043f\u043b\u0438\u043d\u0438\u0438\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u0442\u0438\u043f\u043c\u0430\u0440\u043a\u0435\u0440\u0430\u0433\u0435\u043e\u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0439\u0441\u0445\u0435\u043c\u044b \u0442\u0438\u043f\u043c\u0430\u0440\u043a\u0435\u0440\u0430\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u0442\u0438\u043f\u043e\u0431\u043b\u0430\u0441\u0442\u0438\u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u044f \u0442\u0438\u043f\u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438\u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430\u0434\u0430\u043d\u043d\u044b\u0445\u0433\u0435\u043e\u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0439\u0441\u0445\u0435\u043c\u044b \u0442\u0438\u043f\u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u0441\u0435\u0440\u0438\u0438\u0441\u043b\u043e\u044f\u0433\u0435\u043e\u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0439\u0441\u0445\u0435\u043c\u044b \u0442\u0438\u043f\u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u0442\u043e\u0447\u0435\u0447\u043d\u043e\u0433\u043e\u043e\u0431\u044a\u0435\u043a\u0442\u0430\u0433\u0435\u043e\u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0439\u0441\u0445\u0435\u043c\u044b \u0442\u0438\u043f\u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u0448\u043a\u0430\u043b\u044b\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u043b\u0435\u0433\u0435\u043d\u0434\u044b\u0433\u0435\u043e\u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0439\u0441\u0445\u0435\u043c\u044b \u0442\u0438\u043f\u043f\u043e\u0438\u0441\u043a\u0430\u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432\u0433\u0435\u043e\u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0439\u0441\u0445\u0435\u043c\u044b \u0442\u0438\u043f\u043f\u0440\u043e\u0435\u043a\u0446\u0438\u0438\u0433\u0435\u043e\u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0439\u0441\u0445\u0435\u043c\u044b \u0442\u0438\u043f\u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u0438\u044f\u0438\u0437\u043c\u0435\u0440\u0435\u043d\u0438\u0439 \u0442\u0438\u043f\u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u0438\u044f\u0440\u0435\u043a\u0432\u0438\u0437\u0438\u0442\u043e\u0432\u0438\u0437\u043c\u0435\u0440\u0435\u043d\u0438\u0439 \u0442\u0438\u043f\u0440\u0430\u043c\u043a\u0438\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0442\u0438\u043f\u0441\u0432\u043e\u0434\u043d\u043e\u0439\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u0442\u0438\u043f\u0441\u0432\u044f\u0437\u0438\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b\u0433\u0430\u043d\u0442\u0430 \u0442\u0438\u043f\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439\u043f\u043e\u0441\u0435\u0440\u0438\u044f\u043c\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u0442\u0438\u043f\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f\u0442\u043e\u0447\u0435\u043a\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u0442\u0438\u043f\u0441\u043e\u0435\u0434\u0438\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439\u043b\u0438\u043d\u0438\u0438 \u0442\u0438\u043f\u0441\u0442\u043e\u0440\u043e\u043d\u044b\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0439\u0441\u0445\u0435\u043c\u044b \u0442\u0438\u043f\u0444\u043e\u0440\u043c\u044b\u043e\u0442\u0447\u0435\u0442\u0430 \u0442\u0438\u043f\u0448\u043a\u0430\u043b\u044b\u0440\u0430\u0434\u0430\u0440\u043d\u043e\u0439\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u0444\u0430\u043a\u0442\u043e\u0440\u043b\u0438\u043d\u0438\u0438\u0442\u0440\u0435\u043d\u0434\u0430\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u0444\u0438\u0433\u0443\u0440\u0430\u043a\u043d\u043e\u043f\u043a\u0438 \u0444\u0438\u0433\u0443\u0440\u044b\u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0439\u0441\u0445\u0435\u043c\u044b \u0444\u0438\u043a\u0441\u0430\u0446\u0438\u044f\u0432\u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u0444\u043e\u0440\u043c\u0430\u0442\u0434\u043d\u044f\u0448\u043a\u0430\u043b\u044b\u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0444\u043e\u0440\u043c\u0430\u0442\u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438 \u0448\u0438\u0440\u0438\u043d\u0430\u043f\u043e\u0434\u0447\u0438\u043d\u0435\u043d\u043d\u044b\u0445\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432\u0444\u043e\u0440\u043c\u044b \u0432\u0438\u0434\u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f\u0431\u0443\u0445\u0433\u0430\u043b\u0442\u0435\u0440\u0438\u0438 \u0432\u0438\u0434\u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f\u043d\u0430\u043a\u043e\u043f\u043b\u0435\u043d\u0438\u044f \u0432\u0438\u0434\u043f\u0435\u0440\u0438\u043e\u0434\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0440\u0430\u0441\u0447\u0435\u0442\u0430 \u0432\u0438\u0434\u0441\u0447\u0435\u0442\u0430 \u0432\u0438\u0434\u0442\u043e\u0447\u043a\u0438\u043c\u0430\u0440\u0448\u0440\u0443\u0442\u0430\u0431\u0438\u0437\u043d\u0435\u0441\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u0430\u0433\u0440\u0435\u0433\u0430\u0442\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u043d\u0430\u043a\u043e\u043f\u043b\u0435\u043d\u0438\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u0433\u0440\u0443\u043f\u043f\u0438\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u0440\u0435\u0436\u0438\u043c\u0430\u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u0441\u0440\u0435\u0437\u0430 \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u043d\u043e\u0441\u0442\u044c\u0430\u0433\u0440\u0435\u0433\u0430\u0442\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u043d\u0430\u043a\u043e\u043f\u043b\u0435\u043d\u0438\u044f \u0440\u0435\u0436\u0438\u043c\u0430\u0432\u0442\u043e\u0432\u0440\u0435\u043c\u044f \u0440\u0435\u0436\u0438\u043c\u0437\u0430\u043f\u0438\u0441\u0438\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0440\u0435\u0436\u0438\u043c\u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0430\u0432\u0442\u043e\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044f\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439\u043d\u043e\u043c\u0435\u0440\u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0430\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u0438\u0442\u0430\u0431\u043b\u0438\u0447\u043d\u043e\u0433\u043e\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u043e\u0440\u0438\u0435\u043d\u0442\u0430\u0446\u0438\u044f\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0438\u0442\u043e\u0433\u043e\u0432\u043a\u043e\u043b\u043e\u043d\u043e\u043a\u0441\u0432\u043e\u0434\u043d\u043e\u0439\u0442\u0430\u0431\u043b\u0438\u0446\u044b \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0438\u0442\u043e\u0433\u043e\u0432\u0441\u0442\u0440\u043e\u043a\u0441\u0432\u043e\u0434\u043d\u043e\u0439\u0442\u0430\u0431\u043b\u0438\u0446\u044b \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0442\u0435\u043a\u0441\u0442\u0430\u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0430\u0433\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u043a\u0438\u0442\u0430\u0431\u043b\u0438\u0447\u043d\u043e\u0433\u043e\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0441\u043f\u043e\u0441\u043e\u0431\u0447\u0442\u0435\u043d\u0438\u044f\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439\u0442\u0430\u0431\u043b\u0438\u0447\u043d\u043e\u0433\u043e\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0442\u0438\u043f\u0434\u0432\u0443\u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0435\u0439\u043f\u0435\u0447\u0430\u0442\u0438 \u0442\u0438\u043f\u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f\u043e\u0431\u043b\u0430\u0441\u0442\u0438\u0442\u0430\u0431\u043b\u0438\u0447\u043d\u043e\u0433\u043e\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0442\u0438\u043f\u043a\u0443\u0440\u0441\u043e\u0440\u043e\u0432\u0442\u0430\u0431\u043b\u0438\u0447\u043d\u043e\u0433\u043e\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0442\u0438\u043f\u043b\u0438\u043d\u0438\u0438\u0440\u0438\u0441\u0443\u043d\u043a\u0430\u0442\u0430\u0431\u043b\u0438\u0447\u043d\u043e\u0433\u043e\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0442\u0438\u043f\u043b\u0438\u043d\u0438\u0438\u044f\u0447\u0435\u0439\u043a\u0438\u0442\u0430\u0431\u043b\u0438\u0447\u043d\u043e\u0433\u043e\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0442\u0438\u043f\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f\u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0430\u0442\u0430\u0431\u043b\u0438\u0447\u043d\u043e\u0433\u043e\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0442\u0438\u043f\u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u0432\u044b\u0434\u0435\u043b\u0435\u043d\u0438\u044f\u0442\u0430\u0431\u043b\u0438\u0447\u043d\u043e\u0433\u043e\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0442\u0438\u043f\u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u043b\u0438\u043d\u0438\u0439\u0441\u0432\u043e\u0434\u043d\u043e\u0439\u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0442\u0438\u043f\u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u0438\u044f\u0442\u0435\u043a\u0441\u0442\u0430\u0442\u0430\u0431\u043b\u0438\u0447\u043d\u043e\u0433\u043e\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0442\u0438\u043f\u0440\u0438\u0441\u0443\u043d\u043a\u0430\u0442\u0430\u0431\u043b\u0438\u0447\u043d\u043e\u0433\u043e\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0442\u0438\u043f\u0441\u043c\u0435\u0449\u0435\u043d\u0438\u044f\u0442\u0430\u0431\u043b\u0438\u0447\u043d\u043e\u0433\u043e\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0442\u0438\u043f\u0443\u0437\u043e\u0440\u0430\u0442\u0430\u0431\u043b\u0438\u0447\u043d\u043e\u0433\u043e\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0442\u0438\u043f\u0444\u0430\u0439\u043b\u0430\u0442\u0430\u0431\u043b\u0438\u0447\u043d\u043e\u0433\u043e\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c\u043f\u0435\u0447\u0430\u0442\u0438 \u0447\u0435\u0440\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0435\u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0441\u0442\u0440\u0430\u043d\u0438\u0446 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u0432\u0440\u0435\u043c\u0435\u043d\u0438\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432\u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u0430 \u0442\u0438\u043f\u0444\u0430\u0439\u043b\u0430\u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u043e\u0431\u0445\u043e\u0434\u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430\u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0442\u0438\u043f\u0437\u0430\u043f\u0438\u0441\u0438\u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0432\u0438\u0434\u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f\u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u0438\u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044f\u043e\u0442\u0447\u0435\u0442\u0430 \u0442\u0438\u043f\u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0439 \u0442\u0438\u043f\u0438\u0437\u043c\u0435\u0440\u0435\u043d\u0438\u044f\u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044f\u043e\u0442\u0447\u0435\u0442\u0430 \u0442\u0438\u043f\u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u0438\u044f\u0438\u0442\u043e\u0433\u043e\u0432 \u0434\u043e\u0441\u0442\u0443\u043f\u043a\u0444\u0430\u0439\u043b\u0443 \u0440\u0435\u0436\u0438\u043c\u0434\u0438\u0430\u043b\u043e\u0433\u0430\u0432\u044b\u0431\u043e\u0440\u0430\u0444\u0430\u0439\u043b\u0430 \u0440\u0435\u0436\u0438\u043c\u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f\u0444\u0430\u0439\u043b\u0430 \u0442\u0438\u043f\u0438\u0437\u043c\u0435\u0440\u0435\u043d\u0438\u044f\u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044f\u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0432\u0438\u0434\u0434\u0430\u043d\u043d\u044b\u0445\u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u043c\u0435\u0442\u043e\u0434\u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u0442\u0438\u043f\u0435\u0434\u0438\u043d\u0438\u0446\u044b\u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u0430\u0432\u0440\u0435\u043c\u0435\u043d\u0438\u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0438\u043f\u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f\u0442\u0430\u0431\u043b\u0438\u0446\u044b\u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430\u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0438\u043f\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f\u0447\u0438\u0441\u043b\u043e\u0432\u044b\u0445\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439\u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0438\u043f\u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430\u0434\u0430\u043d\u043d\u044b\u0445\u043f\u043e\u0438\u0441\u043a\u0430\u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0446\u0438\u0439 \u0442\u0438\u043f\u043a\u043e\u043b\u043e\u043d\u043a\u0438\u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0445\u0434\u0435\u0440\u0435\u0432\u043e\u0440\u0435\u0448\u0435\u043d\u0438\u0439 \u0442\u0438\u043f\u043a\u043e\u043b\u043e\u043d\u043a\u0438\u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0445\u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0438\u0437\u0430\u0446\u0438\u044f \u0442\u0438\u043f\u043a\u043e\u043b\u043e\u043d\u043a\u0438\u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0445\u043e\u0431\u0449\u0430\u044f\u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 \u0442\u0438\u043f\u043a\u043e\u043b\u043e\u043d\u043a\u0438\u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0445\u043f\u043e\u0438\u0441\u043a\u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0446\u0438\u0439 \u0442\u0438\u043f\u043a\u043e\u043b\u043e\u043d\u043a\u0438\u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0445\u043f\u043e\u0438\u0441\u043a\u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0435\u0439 \u0442\u0438\u043f\u043a\u043e\u043b\u043e\u043d\u043a\u0438\u043c\u043e\u0434\u0435\u043b\u0438\u043f\u0440\u043e\u0433\u043d\u043e\u0437\u0430 \u0442\u0438\u043f\u043c\u0435\u0440\u044b\u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u044f\u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0438\u043f\u043e\u0442\u0441\u0435\u0447\u0435\u043d\u0438\u044f\u043f\u0440\u0430\u0432\u0438\u043b\u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0446\u0438\u0438 \u0442\u0438\u043f\u043f\u043e\u043b\u044f\u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0438\u043f\u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0438\u0437\u0430\u0446\u0438\u0438\u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0438\u043f\u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0438\u0432\u0430\u043d\u0438\u044f\u043f\u0440\u0430\u0432\u0438\u043b\u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0446\u0438\u0438\u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0438\u043f\u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0438\u0432\u0430\u043d\u0438\u044f\u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432\u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0435\u0439\u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0438\u043f\u0443\u043f\u0440\u043e\u0449\u0435\u043d\u0438\u044f\u0434\u0435\u0440\u0435\u0432\u0430\u0440\u0435\u0448\u0435\u043d\u0438\u0439 ws\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 \u0432\u0430\u0440\u0438\u0430\u043d\u0442xpathxs \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0437\u0430\u043f\u0438\u0441\u0438\u0434\u0430\u0442\u044bjson \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e\u0442\u0438\u043f\u0430xs \u0432\u0438\u0434\u0433\u0440\u0443\u043f\u043f\u044b\u043c\u043e\u0434\u0435\u043b\u0438xs \u0432\u0438\u0434\u0444\u0430\u0441\u0435\u0442\u0430xdto \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435\u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044fdom \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u043d\u043e\u0441\u0442\u044c\u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e\u0442\u0438\u043f\u0430xs \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u043d\u043e\u0441\u0442\u044c\u0441\u043e\u0441\u0442\u0430\u0432\u043d\u043e\u0433\u043e\u0442\u0438\u043f\u0430xs \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u043d\u043e\u0441\u0442\u044c\u0441\u0445\u0435\u043c\u044bxs \u0437\u0430\u043f\u0440\u0435\u0449\u0435\u043d\u043d\u044b\u0435\u043f\u043e\u0434\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438xs \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f\u0433\u0440\u0443\u043f\u043f\u043f\u043e\u0434\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438xs \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u044f\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f\u0430\u0442\u0440\u0438\u0431\u0443\u0442\u0430xs \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u044f\u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f\u0438\u0434\u0435\u043d\u0442\u0438\u0447\u043d\u043e\u0441\u0442\u0438xs \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u044f\u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0438\u043c\u0435\u043dxs \u043c\u0435\u0442\u043e\u0434\u043d\u0430\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044fxs \u043c\u043e\u0434\u0435\u043b\u044c\u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0433\u043exs \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u0442\u0438\u043f\u0430xml \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0435\u043f\u043e\u0434\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438xs \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430\u043f\u0440\u043e\u0431\u0435\u043b\u044c\u043d\u044b\u0445\u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432xs \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430\u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0433\u043exs \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044fxs \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b\u043e\u0442\u0431\u043e\u0440\u0430\u0443\u0437\u043b\u043e\u0432dom \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0441\u0442\u0440\u043e\u043ajson \u043f\u043e\u0437\u0438\u0446\u0438\u044f\u0432\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0435dom \u043f\u0440\u043e\u0431\u0435\u043b\u044c\u043d\u044b\u0435\u0441\u0438\u043c\u0432\u043e\u043b\u044bxml \u0442\u0438\u043f\u0430\u0442\u0440\u0438\u0431\u0443\u0442\u0430xml \u0442\u0438\u043f\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044fjson \u0442\u0438\u043f\u043a\u0430\u043d\u043e\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043exml \u0442\u0438\u043f\u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044bxs \u0442\u0438\u043f\u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438xml \u0442\u0438\u043f\u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430domxpath \u0442\u0438\u043f\u0443\u0437\u043b\u0430dom \u0442\u0438\u043f\u0443\u0437\u043b\u0430xml \u0444\u043e\u0440\u043c\u0430xml \u0444\u043e\u0440\u043c\u0430\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044fxs \u0444\u043e\u0440\u043c\u0430\u0442\u0434\u0430\u0442\u044bjson \u044d\u043a\u0440\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432json \u0432\u0438\u0434\u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438\u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u0438\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u0441\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u0438\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432\u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0438\u0442\u043e\u0433\u043e\u0432\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0433\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u043a\u0438\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043f\u043e\u043b\u0435\u0439\u0433\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u043a\u0438\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043f\u043e\u043b\u044f\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0440\u0435\u043a\u0432\u0438\u0437\u0438\u0442\u043e\u0432\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0438\u043f\u0431\u0443\u0445\u0433\u0430\u043b\u0442\u0435\u0440\u0441\u043a\u043e\u0433\u043e\u043e\u0441\u0442\u0430\u0442\u043a\u0430\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0438\u043f\u0432\u044b\u0432\u043e\u0434\u0430\u0442\u0435\u043a\u0441\u0442\u0430\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0438\u043f\u0433\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u043a\u0438\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0438\u043f\u0433\u0440\u0443\u043f\u043f\u044b\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432\u043e\u0442\u0431\u043e\u0440\u0430\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0438\u043f\u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f\u043f\u0435\u0440\u0438\u043e\u0434\u0430\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0438\u043f\u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0430\u043f\u043e\u043b\u0435\u0439\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0438\u043f\u043c\u0430\u043a\u0435\u0442\u0430\u0433\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u043a\u0438\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0438\u043f\u043c\u0430\u043a\u0435\u0442\u0430\u043e\u0431\u043b\u0430\u0441\u0442\u0438\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0438\u043f\u043e\u0441\u0442\u0430\u0442\u043a\u0430\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0438\u043f\u043f\u0435\u0440\u0438\u043e\u0434\u0430\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0438\u043f\u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u0438\u044f\u0442\u0435\u043a\u0441\u0442\u0430\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0438\u043f\u0441\u0432\u044f\u0437\u0438\u043d\u0430\u0431\u043e\u0440\u043e\u0432\u0434\u0430\u043d\u043d\u044b\u0445\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0438\u043f\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043b\u0435\u0433\u0435\u043d\u0434\u044b\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0438\u043f\u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f\u043e\u0442\u0431\u043e\u0440\u0430\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0440\u0435\u0436\u0438\u043c\u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0440\u0435\u0436\u0438\u043c\u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u043f\u043e\u0441\u043e\u0431\u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f\u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0440\u0435\u0436\u0438\u043c\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0430\u0432\u0442\u043e\u043f\u043e\u0437\u0438\u0446\u0438\u044f\u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f\u0433\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u043a\u0438\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432\u0432\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0435\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0444\u0438\u043a\u0441\u0430\u0446\u0438\u044f\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u0443\u0441\u043b\u043e\u0432\u043d\u043e\u0433\u043e\u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u044f\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0432\u0430\u0436\u043d\u043e\u0441\u0442\u044c\u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u043f\u043e\u0447\u0442\u043e\u0432\u043e\u0433\u043e\u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430\u0442\u0435\u043a\u0441\u0442\u0430\u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u043f\u043e\u0447\u0442\u043e\u0432\u043e\u0433\u043e\u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u0441\u043f\u043e\u0441\u043e\u0431\u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f\u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u043f\u043e\u0447\u0442\u043e\u0432\u043e\u0433\u043e\u0432\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441\u043f\u043e\u0441\u043e\u0431\u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f\u043d\u0435ascii\u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432\u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u043f\u043e\u0447\u0442\u043e\u0432\u043e\u0433\u043e\u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u0442\u0438\u043f\u0442\u0435\u043a\u0441\u0442\u0430\u043f\u043e\u0447\u0442\u043e\u0432\u043e\u0433\u043e\u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u043f\u043e\u0447\u0442\u044b \u0441\u0442\u0430\u0442\u0443\u0441\u0440\u0430\u0437\u0431\u043e\u0440\u0430\u043f\u043e\u0447\u0442\u043e\u0432\u043e\u0433\u043e\u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u0440\u0435\u0436\u0438\u043c\u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438\u0437\u0430\u043f\u0438\u0441\u0438\u0436\u0443\u0440\u043d\u0430\u043b\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0441\u0442\u0430\u0442\u0443\u0441\u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438\u0437\u0430\u043f\u0438\u0441\u0438\u0436\u0443\u0440\u043d\u0430\u043b\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0443\u0440\u043e\u0432\u0435\u043d\u044c\u0436\u0443\u0440\u043d\u0430\u043b\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432\u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0438 \u0440\u0435\u0436\u0438\u043c\u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432\u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0438 \u0440\u0435\u0436\u0438\u043c\u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430\u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0438 \u0442\u0438\u043f\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432\u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0438 \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u043a\u0430\u0438\u043c\u0435\u043d\u0444\u0430\u0439\u043b\u043e\u0432\u0432zip\u0444\u0430\u0439\u043b\u0435 \u043c\u0435\u0442\u043e\u0434\u0441\u0436\u0430\u0442\u0438\u044fzip \u043c\u0435\u0442\u043e\u0434\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044fzip \u0440\u0435\u0436\u0438\u043c\u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f\u043f\u0443\u0442\u0435\u0439\u0444\u0430\u0439\u043b\u043e\u0432zip \u0440\u0435\u0436\u0438\u043c\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438\u043f\u043e\u0434\u043a\u0430\u0442\u0430\u043b\u043e\u0433\u043e\u0432zip \u0440\u0435\u0436\u0438\u043c\u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f\u043f\u0443\u0442\u0435\u0439zip \u0443\u0440\u043e\u0432\u0435\u043d\u044c\u0441\u0436\u0430\u0442\u0438\u044fzip \u0437\u0432\u0443\u043a\u043e\u0432\u043e\u0435\u043e\u043f\u043e\u0432\u0435\u0449\u0435\u043d\u0438\u0435 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0430\u043a\u0441\u0442\u0440\u043e\u043a\u0435 \u043f\u043e\u0437\u0438\u0446\u0438\u044f\u0432\u043f\u043e\u0442\u043e\u043a\u0435 \u043f\u043e\u0440\u044f\u0434\u043e\u043a\u0431\u0430\u0439\u0442\u043e\u0432 \u0440\u0435\u0436\u0438\u043c\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0440\u0435\u0436\u0438\u043c\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u043e\u0439\u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u0435\u0440\u0432\u0438\u0441\u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0445\u043f\u043e\u043a\u0443\u043f\u043e\u043a \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u0444\u043e\u043d\u043e\u0432\u043e\u0433\u043e\u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0442\u0438\u043f\u043f\u043e\u0434\u043f\u0438\u0441\u0447\u0438\u043a\u0430\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0445\u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f\u0437\u0430\u0449\u0438\u0449\u0435\u043d\u043d\u043e\u0433\u043e\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044fftp \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043f\u043e\u0440\u044f\u0434\u043a\u0430\u0441\u0445\u0435\u043c\u044b\u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0442\u0438\u043f\u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f\u043f\u0435\u0440\u0438\u043e\u0434\u0430\u043c\u0438\u0441\u0445\u0435\u043c\u044b\u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0442\u0438\u043f\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u043e\u0439\u0442\u043e\u0447\u043a\u0438\u0441\u0445\u0435\u043c\u044b\u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0442\u0438\u043f\u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f\u0441\u0445\u0435\u043c\u044b\u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0442\u0438\u043f\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0439\u0442\u0430\u0431\u043b\u0438\u0446\u044b\u0441\u0445\u0435\u043c\u044b\u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0442\u0438\u043f\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f\u0441\u0445\u0435\u043c\u044b\u0437\u0430\u043f\u0440\u043e\u0441\u0430 http\u043c\u0435\u0442\u043e\u0434 \u0430\u0432\u0442\u043e\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043e\u0431\u0449\u0435\u0433\u043e\u0440\u0435\u043a\u0432\u0438\u0437\u0438\u0442\u0430 \u0430\u0432\u0442\u043e\u043f\u0440\u0435\u0444\u0438\u043a\u0441\u043d\u043e\u043c\u0435\u0440\u0430\u0437\u0430\u0434\u0430\u0447\u0438 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u0433\u043e\u044f\u0437\u044b\u043a\u0430 \u0432\u0438\u0434\u0438\u0435\u0440\u0430\u0440\u0445\u0438\u0438 \u0432\u0438\u0434\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u043d\u0430\u043a\u043e\u043f\u043b\u0435\u043d\u0438\u044f \u0432\u0438\u0434\u0442\u0430\u0431\u043b\u0438\u0446\u044b\u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e\u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u0437\u0430\u043f\u0438\u0441\u044c\u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0439\u043f\u0440\u0438\u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0438 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435\u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0435\u0439 \u0438\u043d\u0434\u0435\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u0431\u0430\u0437\u044b\u043f\u043b\u0430\u043d\u0430\u0432\u0438\u0434\u043e\u0432\u0440\u0430\u0441\u0447\u0435\u0442\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u0431\u044b\u0441\u0442\u0440\u043e\u0433\u043e\u0432\u044b\u0431\u043e\u0440\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043e\u0431\u0449\u0435\u0433\u043e\u0440\u0435\u043a\u0432\u0438\u0437\u0438\u0442\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043f\u043e\u0434\u0447\u0438\u043d\u0435\u043d\u0438\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043f\u043e\u043b\u043d\u043e\u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0433\u043e\u043f\u043e\u0438\u0441\u043a\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u0440\u0430\u0437\u0434\u0435\u043b\u044f\u0435\u043c\u044b\u0445\u0434\u0430\u043d\u043d\u044b\u0445\u043e\u0431\u0449\u0435\u0433\u043e\u0440\u0435\u043a\u0432\u0438\u0437\u0438\u0442\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u0440\u0435\u043a\u0432\u0438\u0437\u0438\u0442\u0430 \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435\u043f\u0440\u0435\u0434\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445\u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0435\u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u0432\u0438\u0434\u0430\u0440\u0430\u0441\u0447\u0435\u0442\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u0432\u0438\u0434\u0430\u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0438 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u0437\u0430\u0434\u0430\u0447\u0438 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043f\u043b\u0430\u043d\u0430\u043e\u0431\u043c\u0435\u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u0441\u0447\u0435\u0442\u0430 \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d\u0438\u0435\u0433\u0440\u0430\u043d\u0438\u0446\u044b\u043f\u0440\u0438\u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0438 \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u043d\u043e\u0441\u0442\u044c\u043d\u043e\u043c\u0435\u0440\u0430\u0431\u0438\u0437\u043d\u0435\u0441\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u043d\u043e\u0441\u0442\u044c\u043d\u043e\u043c\u0435\u0440\u0430\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u043d\u043e\u0441\u0442\u044c\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0440\u0430\u0441\u0447\u0435\u0442\u0430 \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u043d\u043e\u0441\u0442\u044c\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0441\u0432\u0435\u0434\u0435\u043d\u0438\u0439 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e\u0435\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u043c\u044b\u0445\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u043f\u043e\u043b\u043d\u043e\u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0439\u043f\u043e\u0438\u0441\u043a\u043f\u0440\u0438\u0432\u0432\u043e\u0434\u0435\u043f\u043e\u0441\u0442\u0440\u043e\u043a\u0435 \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u043d\u043e\u0441\u0442\u044c\u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u0435\u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438\u043e\u0431\u0449\u0435\u0433\u043e\u0440\u0435\u043a\u0432\u0438\u0437\u0438\u0442\u0430 \u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u0435\u0434\u0430\u043d\u043d\u044b\u0445\u043e\u0431\u0449\u0435\u0433\u043e\u0440\u0435\u043a\u0432\u0438\u0437\u0438\u0442\u0430 \u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u0435\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0439\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438\u043e\u0431\u0449\u0435\u0433\u043e\u0440\u0435\u043a\u0432\u0438\u0437\u0438\u0442\u0430 \u0440\u0435\u0436\u0438\u043c\u0430\u0432\u0442\u043e\u043d\u0443\u043c\u0435\u0440\u0430\u0446\u0438\u0438\u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u0440\u0435\u0436\u0438\u043c\u0437\u0430\u043f\u0438\u0441\u0438\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u0440\u0435\u0436\u0438\u043c\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f\u043c\u043e\u0434\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0440\u0435\u0436\u0438\u043c\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u044b\u0445\u0432\u044b\u0437\u043e\u0432\u043e\u0432\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0439\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b\u0438\u0432\u043d\u0435\u0448\u043d\u0438\u0445\u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 \u0440\u0435\u0436\u0438\u043c\u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e\u0433\u043e\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f\u0441\u0435\u0430\u043d\u0441\u043e\u0432 \u0440\u0435\u0436\u0438\u043c\u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f\u0434\u0430\u043d\u043d\u044b\u0445\u0432\u044b\u0431\u043e\u0440\u0430\u043f\u0440\u0438\u0432\u0432\u043e\u0434\u0435\u043f\u043e\u0441\u0442\u0440\u043e\u043a\u0435 \u0440\u0435\u0436\u0438\u043c\u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0440\u0435\u0436\u0438\u043c\u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u0440\u0435\u0436\u0438\u043c\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u043e\u0439\u0434\u0430\u043d\u043d\u044b\u0445\u043f\u043e\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0441\u0435\u0440\u0438\u0438\u043a\u043e\u0434\u043e\u0432\u043f\u043b\u0430\u043d\u0430\u0432\u0438\u0434\u043e\u0432\u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a \u0441\u0435\u0440\u0438\u0438\u043a\u043e\u0434\u043e\u0432\u043f\u043b\u0430\u043d\u0430\u0441\u0447\u0435\u0442\u043e\u0432 \u0441\u0435\u0440\u0438\u0438\u043a\u043e\u0434\u043e\u0432\u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a\u0430 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435\u043f\u0440\u0438\u0432\u0432\u043e\u0434\u0435 \u0441\u043f\u043e\u0441\u043e\u0431\u0432\u044b\u0431\u043e\u0440\u0430 \u0441\u043f\u043e\u0441\u043e\u0431\u043f\u043e\u0438\u0441\u043a\u0430\u0441\u0442\u0440\u043e\u043a\u0438\u043f\u0440\u0438\u0432\u0432\u043e\u0434\u0435\u043f\u043e\u0441\u0442\u0440\u043e\u043a\u0435 \u0441\u043f\u043e\u0441\u043e\u0431\u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0442\u0438\u043f\u0434\u0430\u043d\u043d\u044b\u0445\u0442\u0430\u0431\u043b\u0438\u0446\u044b\u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e\u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0438\u043f\u043a\u043e\u0434\u0430\u043f\u043b\u0430\u043d\u0430\u0432\u0438\u0434\u043e\u0432\u0440\u0430\u0441\u0447\u0435\u0442\u0430 \u0442\u0438\u043f\u043a\u043e\u0434\u0430\u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a\u0430 \u0442\u0438\u043f\u043c\u0430\u043a\u0435\u0442\u0430 \u0442\u0438\u043f\u043d\u043e\u043c\u0435\u0440\u0430\u0431\u0438\u0437\u043d\u0435\u0441\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0442\u0438\u043f\u043d\u043e\u043c\u0435\u0440\u0430\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0442\u0438\u043f\u043d\u043e\u043c\u0435\u0440\u0430\u0437\u0430\u0434\u0430\u0447\u0438 \u0442\u0438\u043f\u0444\u043e\u0440\u043c\u044b \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435\u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0439 \u0432\u0430\u0436\u043d\u043e\u0441\u0442\u044c\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b\u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430\u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u043e\u0433\u043e\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0430\u0444\u043e\u0440\u043c\u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u043e\u0433\u043e\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e\u0448\u0440\u0438\u0444\u0442\u0430\u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u043e\u0433\u043e\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0433\u043e\u043f\u0435\u0440\u0438\u043e\u0434\u0430 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439\u0434\u0430\u0442\u044b\u043d\u0430\u0447\u0430\u043b\u0430 \u0432\u0438\u0434\u0433\u0440\u0430\u043d\u0438\u0446\u044b \u0432\u0438\u0434\u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438 \u0432\u0438\u0434\u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u043f\u043e\u043b\u043d\u043e\u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0433\u043e\u043f\u043e\u0438\u0441\u043a\u0430 \u0432\u0438\u0434\u0440\u0430\u043c\u043a\u0438 \u0432\u0438\u0434\u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0432\u0438\u0434\u0446\u0432\u0435\u0442\u0430 \u0432\u0438\u0434\u0447\u0438\u0441\u043b\u043e\u0432\u043e\u0433\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0432\u0438\u0434\u0448\u0440\u0438\u0444\u0442\u0430 \u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f\u0434\u043b\u0438\u043d\u0430 \u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439\u0437\u043d\u0430\u043a \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435byteordermark \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0445\u043f\u043e\u043b\u043d\u043e\u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0433\u043e\u043f\u043e\u0438\u0441\u043a\u0430 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0439\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u043a\u043b\u0430\u0432\u0438\u0448\u0430 \u043a\u043e\u0434\u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0430\u0434\u0438\u0430\u043b\u043e\u0433\u0430 \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u043a\u0430xbase \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u043a\u0430\u0442\u0435\u043a\u0441\u0442\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043f\u043e\u0438\u0441\u043a\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u0441\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435\u043f\u0440\u0435\u0434\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445\u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435\u043f\u0440\u0438\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043f\u0430\u043d\u0435\u043b\u0438\u0440\u0430\u0437\u0434\u0435\u043b\u043e\u0432 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430\u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0440\u0435\u0436\u0438\u043c\u0434\u0438\u0430\u043b\u043e\u0433\u0430\u0432\u043e\u043f\u0440\u043e\u0441 \u0440\u0435\u0436\u0438\u043c\u0437\u0430\u043f\u0443\u0441\u043a\u0430\u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u043e\u0433\u043e\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0440\u0435\u0436\u0438\u043c\u043e\u043a\u0440\u0443\u0433\u043b\u0435\u043d\u0438\u044f \u0440\u0435\u0436\u0438\u043c\u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f\u0444\u043e\u0440\u043c\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0440\u0435\u0436\u0438\u043c\u043f\u043e\u043b\u043d\u043e\u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0433\u043e\u043f\u043e\u0438\u0441\u043a\u0430 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c\u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u043e\u0433\u043e\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e\u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438\u0431\u0430\u0437\u044b\u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u043f\u043e\u0441\u043e\u0431\u0432\u044b\u0431\u043e\u0440\u0430\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430windows \u0441\u043f\u043e\u0441\u043e\u0431\u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f\u0441\u0442\u0440\u043e\u043a\u0438 \u0441\u0442\u0430\u0442\u0443\u0441\u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u0442\u0438\u043f\u0432\u043d\u0435\u0448\u043d\u0435\u0439\u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b \u0442\u0438\u043f\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b \u0442\u0438\u043f\u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f\u043a\u043b\u0430\u0432\u0438\u0448\u0438enter \u0442\u0438\u043f\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438\u043e\u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0438\u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438\u0431\u0430\u0437\u044b\u0434\u0430\u043d\u043d\u044b\u0445 \u0443\u0440\u043e\u0432\u0435\u043d\u044c\u0438\u0437\u043e\u043b\u044f\u0446\u0438\u0438\u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0439 \u0445\u0435\u0448\u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0447\u0430\u0441\u0442\u0438\u0434\u0430\u0442\u044b", +type:"com\u043e\u0431\u044a\u0435\u043a\u0442 ftp\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 http\u0437\u0430\u043f\u0440\u043e\u0441 http\u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0442\u0432\u0435\u0442 http\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 ws\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f ws\u043f\u0440\u043e\u043a\u0441\u0438 xbase \u0430\u043d\u0430\u043b\u0438\u0437\u0434\u0430\u043d\u043d\u044b\u0445 \u0430\u043d\u043d\u043e\u0442\u0430\u0446\u0438\u044fxs \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u0431\u0443\u0444\u0435\u0440\u0434\u0432\u043e\u0438\u0447\u043d\u044b\u0445\u0434\u0430\u043d\u043d\u044b\u0445 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435xs \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445\u0447\u0438\u0441\u0435\u043b \u0433\u0435\u043e\u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0430\u044f\u0441\u0445\u0435\u043c\u0430 \u0433\u0435\u043e\u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0435\u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442\u044b \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0430\u044f\u0441\u0445\u0435\u043c\u0430 \u0433\u0440\u0443\u043f\u043f\u0430\u043c\u043e\u0434\u0435\u043b\u0438xs \u0434\u0430\u043d\u043d\u044b\u0435\u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u0438\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u0432\u043e\u0438\u0447\u043d\u044b\u0435\u0434\u0430\u043d\u043d\u044b\u0435 \u0434\u0435\u043d\u0434\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430\u0433\u0430\u043d\u0442\u0430 \u0434\u0438\u0430\u043b\u043e\u0433\u0432\u044b\u0431\u043e\u0440\u0430\u0444\u0430\u0439\u043b\u0430 \u0434\u0438\u0430\u043b\u043e\u0433\u0432\u044b\u0431\u043e\u0440\u0430\u0446\u0432\u0435\u0442\u0430 \u0434\u0438\u0430\u043b\u043e\u0433\u0432\u044b\u0431\u043e\u0440\u0430\u0448\u0440\u0438\u0444\u0442\u0430 \u0434\u0438\u0430\u043b\u043e\u0433\u0440\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u044f\u0440\u0435\u0433\u043b\u0430\u043c\u0435\u043d\u0442\u043d\u043e\u0433\u043e\u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0434\u0438\u0430\u043b\u043e\u0433\u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f\u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0433\u043e\u043f\u0435\u0440\u0438\u043e\u0434\u0430 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442dom \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442html \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044fxs \u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c\u043e\u0435\u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u0435 \u0437\u0430\u043f\u0438\u0441\u044cdom \u0437\u0430\u043f\u0438\u0441\u044cfastinfoset \u0437\u0430\u043f\u0438\u0441\u044chtml \u0437\u0430\u043f\u0438\u0441\u044cjson \u0437\u0430\u043f\u0438\u0441\u044cxml \u0437\u0430\u043f\u0438\u0441\u044czip\u0444\u0430\u0439\u043b\u0430 \u0437\u0430\u043f\u0438\u0441\u044c\u0434\u0430\u043d\u043d\u044b\u0445 \u0437\u0430\u043f\u0438\u0441\u044c\u0442\u0435\u043a\u0441\u0442\u0430 \u0437\u0430\u043f\u0438\u0441\u044c\u0443\u0437\u043b\u043e\u0432dom \u0437\u0430\u043f\u0440\u043e\u0441 \u0437\u0430\u0449\u0438\u0449\u0435\u043d\u043d\u043e\u0435\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435openssl \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043f\u043e\u043b\u0435\u0439\u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u0438\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437\u0432\u043b\u0435\u0447\u0435\u043d\u0438\u0435\u0442\u0435\u043a\u0441\u0442\u0430 \u0438\u043c\u043f\u043e\u0440\u0442xs \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u043f\u043e\u0447\u0442\u0430 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u043f\u043e\u0447\u0442\u043e\u0432\u043e\u0435\u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u043f\u043e\u0447\u0442\u043e\u0432\u044b\u0439\u043f\u0440\u043e\u0444\u0438\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u043f\u0440\u043e\u043a\u0441\u0438 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f\u0434\u043b\u044f\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044fxs \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u0430\u0442\u0440\u0438\u0431\u0443\u0442\u0430xs \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u0441\u043e\u0431\u044b\u0442\u0438\u044f\u0436\u0443\u0440\u043d\u0430\u043b\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445\u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0442\u0435\u0440\u0430\u0442\u043e\u0440\u0443\u0437\u043b\u043e\u0432dom \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 \u043a\u0432\u0430\u043b\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u044b\u0434\u0430\u0442\u044b \u043a\u0432\u0430\u043b\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u044b\u0434\u0432\u043e\u0438\u0447\u043d\u044b\u0445\u0434\u0430\u043d\u043d\u044b\u0445 \u043a\u0432\u0430\u043b\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u044b\u0441\u0442\u0440\u043e\u043a\u0438 \u043a\u0432\u0430\u043b\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u044b\u0447\u0438\u0441\u043b\u0430 \u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u0449\u0438\u043a\u043c\u0430\u043a\u0435\u0442\u0430\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u0449\u0438\u043a\u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440\u043c\u0430\u043a\u0435\u0442\u0430\u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u044f\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440\u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440\u0444\u043e\u0440\u043c\u0430\u0442\u043d\u043e\u0439\u0441\u0442\u0440\u043e\u043a\u0438 \u043b\u0438\u043d\u0438\u044f \u043c\u0430\u043a\u0435\u0442\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u043c\u0430\u043a\u0435\u0442\u043e\u0431\u043b\u0430\u0441\u0442\u0438\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u043c\u0430\u043a\u0435\u0442\u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u044f\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u043c\u0430\u0441\u043a\u0430xs \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0438 \u043d\u0430\u0431\u043e\u0440\u0441\u0445\u0435\u043cxml \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\u0441\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438json \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430\u043a\u0430\u0440\u0442\u0438\u043d\u043e\u043a \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430\u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u0438\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0431\u0445\u043e\u0434\u0434\u0435\u0440\u0435\u0432\u0430dom \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0435\u0430\u0442\u0440\u0438\u0431\u0443\u0442\u0430xs \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0435\u043d\u043e\u0442\u0430\u0446\u0438\u0438xs \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0435\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430xs \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f\u0441\u043e\u0431\u044b\u0442\u0438\u044f\u0434\u043e\u0441\u0442\u0443\u043f\u0436\u0443\u0440\u043d\u0430\u043b\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f\u0441\u043e\u0431\u044b\u0442\u0438\u044f\u043e\u0442\u043a\u0430\u0437\u0432\u0434\u043e\u0441\u0442\u0443\u043f\u0435\u0436\u0443\u0440\u043d\u0430\u043b\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438\u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u0438\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435\u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0435\u043c\u043e\u0433\u043e\u0444\u0430\u0439\u043b\u0430 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435\u0442\u0438\u043f\u043e\u0432 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435\u0433\u0440\u0443\u043f\u043f\u044b\u0430\u0442\u0440\u0438\u0431\u0443\u0442\u043e\u0432xs \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435\u0433\u0440\u0443\u043f\u043f\u044b\u043c\u043e\u0434\u0435\u043b\u0438xs \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435\u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f\u0438\u0434\u0435\u043d\u0442\u0438\u0447\u043d\u043e\u0441\u0442\u0438xs \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435\u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e\u0442\u0438\u043f\u0430xs \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435\u0441\u043e\u0441\u0442\u0430\u0432\u043d\u043e\u0433\u043e\u0442\u0438\u043f\u0430xs \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435\u0442\u0438\u043f\u0430\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430dom \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044fxpathxs \u043e\u0442\u0431\u043e\u0440\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u043c\u044b\u0445\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0432\u044b\u0431\u043e\u0440\u0430 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b\u0437\u0430\u043f\u0438\u0441\u0438json \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b\u0437\u0430\u043f\u0438\u0441\u0438xml \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b\u0447\u0442\u0435\u043d\u0438\u044fxml \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435xs \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a \u043f\u043e\u043b\u0435\u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e\u043b\u0435\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044cdom \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u043e\u0442\u0447\u0435\u0442\u0430 \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u043e\u0442\u0447\u0435\u0442\u0430\u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u0435\u043b\u044c\u0441\u0445\u0435\u043cxml \u043f\u043e\u0442\u043e\u043a \u043f\u043e\u0442\u043e\u043a\u0432\u043f\u0430\u043c\u044f\u0442\u0438 \u043f\u043e\u0447\u0442\u0430 \u043f\u043e\u0447\u0442\u043e\u0432\u043e\u0435\u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435xsl \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043a\u043a\u0430\u043d\u043e\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u043c\u0443xml \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0432\u044b\u0432\u043e\u0434\u0430\u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445\u0432\u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044e\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0432\u044b\u0432\u043e\u0434\u0430\u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445\u0432\u0442\u0430\u0431\u043b\u0438\u0447\u043d\u044b\u0439\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0440\u0430\u0437\u044b\u043c\u0435\u043d\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0438\u043c\u0435\u043ddom \u0440\u0430\u043c\u043a\u0430 \u0440\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u0435\u0440\u0435\u0433\u043b\u0430\u043c\u0435\u043d\u0442\u043d\u043e\u0433\u043e\u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u043e\u0435\u0438\u043c\u044fxml \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0447\u0442\u0435\u043d\u0438\u044f\u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u0432\u043e\u0434\u043d\u0430\u044f\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0441\u0432\u044f\u0437\u044c\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u0432\u044b\u0431\u043e\u0440\u0430 \u0441\u0432\u044f\u0437\u044c\u043f\u043e\u0442\u0438\u043f\u0443 \u0441\u0432\u044f\u0437\u044c\u043f\u043e\u0442\u0438\u043f\u0443\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440xdto \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043a\u043b\u0438\u0435\u043d\u0442\u0430windows \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043a\u043b\u0438\u0435\u043d\u0442\u0430\u0444\u0430\u0439\u043b \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0438 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b\u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u044f\u044e\u0449\u0438\u0445\u0446\u0435\u043d\u0442\u0440\u043e\u0432windows \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b\u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u044f\u044e\u0449\u0438\u0445\u0446\u0435\u043d\u0442\u0440\u043e\u0432\u0444\u0430\u0439\u043b \u0441\u0436\u0430\u0442\u0438\u0435\u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u0430\u044f\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u0441\u043e\u0447\u0435\u0442\u0430\u043d\u0438\u0435\u043a\u043b\u0430\u0432\u0438\u0448 \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0430\u044f\u0434\u0430\u0442\u0430\u043d\u0430\u0447\u0430\u043b\u0430 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0439\u043f\u0435\u0440\u0438\u043e\u0434 \u0441\u0445\u0435\u043c\u0430xml \u0441\u0445\u0435\u043c\u0430\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0430\u0431\u043b\u0438\u0447\u043d\u044b\u0439\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0439\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442 \u0442\u0435\u0441\u0442\u0438\u0440\u0443\u0435\u043c\u043e\u0435\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0442\u0438\u043f\u0434\u0430\u043d\u043d\u044b\u0445xml \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0439\u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0444\u0430\u0431\u0440\u0438\u043a\u0430xdto \u0444\u0430\u0439\u043b \u0444\u0430\u0439\u043b\u043e\u0432\u044b\u0439\u043f\u043e\u0442\u043e\u043a \u0444\u0430\u0441\u0435\u0442\u0434\u043b\u0438\u043d\u044bxs \u0444\u0430\u0441\u0435\u0442\u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430\u0440\u0430\u0437\u0440\u044f\u0434\u043e\u0432\u0434\u0440\u043e\u0431\u043d\u043e\u0439\u0447\u0430\u0441\u0442\u0438xs \u0444\u0430\u0441\u0435\u0442\u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0433\u043e\u0432\u043a\u043b\u044e\u0447\u0430\u044e\u0449\u0435\u0433\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044fxs \u0444\u0430\u0441\u0435\u0442\u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0433\u043e\u0438\u0441\u043a\u043b\u044e\u0447\u0430\u044e\u0449\u0435\u0433\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044fxs \u0444\u0430\u0441\u0435\u0442\u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0439\u0434\u043b\u0438\u043d\u044bxs \u0444\u0430\u0441\u0435\u0442\u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0433\u043e\u0432\u043a\u043b\u044e\u0447\u0430\u044e\u0449\u0435\u0433\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044fxs \u0444\u0430\u0441\u0435\u0442\u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0433\u043e\u0438\u0441\u043a\u043b\u044e\u0447\u0430\u044e\u0449\u0435\u0433\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044fxs \u0444\u0430\u0441\u0435\u0442\u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0439\u0434\u043b\u0438\u043d\u044bxs \u0444\u0430\u0441\u0435\u0442\u043e\u0431\u0440\u0430\u0437\u0446\u0430xs \u0444\u0430\u0441\u0435\u0442\u043e\u0431\u0449\u0435\u0433\u043e\u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430\u0440\u0430\u0437\u0440\u044f\u0434\u043e\u0432xs \u0444\u0430\u0441\u0435\u0442\u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044fxs \u0444\u0430\u0441\u0435\u0442\u043f\u0440\u043e\u0431\u0435\u043b\u044c\u043d\u044b\u0445\u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432xs \u0444\u0438\u043b\u044c\u0442\u0440\u0443\u0437\u043b\u043e\u0432dom \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f\u0441\u0442\u0440\u043e\u043a\u0430 \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442 \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442xs \u0445\u0435\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u0434\u0430\u043d\u043d\u044b\u0445 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0446\u0432\u0435\u0442 \u0447\u0442\u0435\u043d\u0438\u0435fastinfoset \u0447\u0442\u0435\u043d\u0438\u0435html \u0447\u0442\u0435\u043d\u0438\u0435json \u0447\u0442\u0435\u043d\u0438\u0435xml \u0447\u0442\u0435\u043d\u0438\u0435zip\u0444\u0430\u0439\u043b\u0430 \u0447\u0442\u0435\u043d\u0438\u0435\u0434\u0430\u043d\u043d\u044b\u0445 \u0447\u0442\u0435\u043d\u0438\u0435\u0442\u0435\u043a\u0441\u0442\u0430 \u0447\u0442\u0435\u043d\u0438\u0435\u0443\u0437\u043b\u043e\u0432dom \u0448\u0440\u0438\u0444\u0442 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438\u0434\u0430\u043d\u043d\u044b\u0445 comsafearray \u0434\u0435\u0440\u0435\u0432\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435 \u0441\u043f\u0438\u0441\u043e\u043a\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0435\u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435 \u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439\u043c\u0430\u0441\u0441\u0438\u0432 ", +literal:e},contains:[{className:"meta",begin:"#|&",end:"$",keywords:{$pattern:x, +keyword:n+"\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c\u0438\u0437\u0444\u0430\u0439\u043b\u0430 \u0432\u0435\u0431\u043a\u043b\u0438\u0435\u043d\u0442 \u0432\u043c\u0435\u0441\u0442\u043e \u0432\u043d\u0435\u0448\u043d\u0435\u0435\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043a\u043b\u0438\u0435\u043d\u0442 \u043a\u043e\u043d\u0435\u0446\u043e\u0431\u043b\u0430\u0441\u0442\u0438 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0435\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043a\u043b\u0438\u0435\u043d\u0442 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0435\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0441\u0435\u0440\u0432\u0435\u0440 \u043d\u0430\u043a\u043b\u0438\u0435\u043d\u0442\u0435 \u043d\u0430\u043a\u043b\u0438\u0435\u043d\u0442\u0435\u043d\u0430\u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u043d\u0430\u043a\u043b\u0438\u0435\u043d\u0442\u0435\u043d\u0430\u0441\u0435\u0440\u0432\u0435\u0440\u0435\u0431\u0435\u0437\u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u0430 \u043d\u0430\u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u043d\u0430\u0441\u0435\u0440\u0432\u0435\u0440\u0435\u0431\u0435\u0437\u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u0430 \u043e\u0431\u043b\u0430\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u0434 \u043f\u043e\u0441\u043b\u0435 \u0441\u0435\u0440\u0432\u0435\u0440 \u0442\u043e\u043b\u0441\u0442\u044b\u0439\u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0431\u044b\u0447\u043d\u043e\u0435\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0442\u043e\u043b\u0441\u0442\u044b\u0439\u043a\u043b\u0438\u0435\u043d\u0442\u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c\u043e\u0435\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0442\u043e\u043d\u043a\u0438\u0439\u043a\u043b\u0438\u0435\u043d\u0442 " +},contains:[m]},{className:"function",variants:[{ +begin:"\u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0430|\u0444\u0443\u043d\u043a\u0446\u0438\u044f", +end:"\\)", +keywords:"\u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044f" +},{ +begin:"\u043a\u043e\u043d\u0435\u0446\u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u044b|\u043a\u043e\u043d\u0435\u0446\u0444\u0443\u043d\u043a\u0446\u0438\u0438", +keywords:"\u043a\u043e\u043d\u0435\u0446\u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u044b \u043a\u043e\u043d\u0435\u0446\u0444\u0443\u043d\u043a\u0446\u0438\u0438" +}],contains:[{begin:"\\(",end:"\\)",endsParent:!0,contains:[{className:"params", +begin:x,end:",",excludeEnd:!0,endsWithParent:!0,keywords:{$pattern:x, +keyword:"\u0437\u043d\u0430\u0447",literal:e},contains:[o,t,a]},m] +},s.inherit(s.TITLE_MODE,{begin:x})]},m,{className:"symbol",begin:"~",end:";|:", +excludeEnd:!0},o,t,a]}}})();hljs.registerLanguage("1c",s)})();/*! `q` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Q",aliases:["k","kdb"], +keywords:{$pattern:/(`?)[A-Za-z0-9_]+\b/, +keyword:"do while select delete by update from",literal:"0b 1b", +built_in:"neg not null string reciprocal floor ceiling signum mod xbar xlog and or each scan over prior mmu lsq inv md5 ltime gtime count first var dev med cov cor all any rand sums prds mins maxs fills deltas ratios avgs differ prev next rank reverse iasc idesc asc desc msum mcount mavg mdev xrank mmin mmax xprev rotate distinct group where flip type key til get value attr cut set upsert raze union inter except cross sv vs sublist enlist read0 read1 hopen hclose hdel hsym hcount peach system ltrim rtrim trim lower upper ssr view tables views cols xcols keys xkey xcol xasc xdesc fkeys meta lj aj aj0 ij pj asof uj ww wj wj1 fby xgroup ungroup ej save load rsave rload show csv parse eval min max avg wavg wsum sin cos tan sum", +type:"`float `double int `timestamp `timespan `datetime `time `boolean `symbol `char `byte `short `long `real `month `date `minute `second `guid" +},contains:[e.C_LINE_COMMENT_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE]})})() +;hljs.registerLanguage("q",e)})();/*! `x86asm` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var s=(()=>{"use strict";return s=>({name:"Intel x86 Assembly", +case_insensitive:!0,keywords:{$pattern:"[.%]?"+s.IDENT_RE, +keyword:"lock rep repe repz repne repnz xaquire xrelease bnd nobnd aaa aad aam aas adc add and arpl bb0_reset bb1_reset bound bsf bsr bswap bt btc btr bts call cbw cdq cdqe clc cld cli clts cmc cmp cmpsb cmpsd cmpsq cmpsw cmpxchg cmpxchg486 cmpxchg8b cmpxchg16b cpuid cpu_read cpu_write cqo cwd cwde daa das dec div dmint emms enter equ f2xm1 fabs fadd faddp fbld fbstp fchs fclex fcmovb fcmovbe fcmove fcmovnb fcmovnbe fcmovne fcmovnu fcmovu fcom fcomi fcomip fcomp fcompp fcos fdecstp fdisi fdiv fdivp fdivr fdivrp femms feni ffree ffreep fiadd ficom ficomp fidiv fidivr fild fimul fincstp finit fist fistp fisttp fisub fisubr fld fld1 fldcw fldenv fldl2e fldl2t fldlg2 fldln2 fldpi fldz fmul fmulp fnclex fndisi fneni fninit fnop fnsave fnstcw fnstenv fnstsw fpatan fprem fprem1 fptan frndint frstor fsave fscale fsetpm fsin fsincos fsqrt fst fstcw fstenv fstp fstsw fsub fsubp fsubr fsubrp ftst fucom fucomi fucomip fucomp fucompp fxam fxch fxtract fyl2x fyl2xp1 hlt ibts icebp idiv imul in inc incbin insb insd insw int int01 int1 int03 int3 into invd invpcid invlpg invlpga iret iretd iretq iretw jcxz jecxz jrcxz jmp jmpe lahf lar lds lea leave les lfence lfs lgdt lgs lidt lldt lmsw loadall loadall286 lodsb lodsd lodsq lodsw loop loope loopne loopnz loopz lsl lss ltr mfence monitor mov movd movq movsb movsd movsq movsw movsx movsxd movzx mul mwait neg nop not or out outsb outsd outsw packssdw packsswb packuswb paddb paddd paddsb paddsiw paddsw paddusb paddusw paddw pand pandn pause paveb pavgusb pcmpeqb pcmpeqd pcmpeqw pcmpgtb pcmpgtd pcmpgtw pdistib pf2id pfacc pfadd pfcmpeq pfcmpge pfcmpgt pfmax pfmin pfmul pfrcp pfrcpit1 pfrcpit2 pfrsqit1 pfrsqrt pfsub pfsubr pi2fd pmachriw pmaddwd pmagw pmulhriw pmulhrwa pmulhrwc pmulhw pmullw pmvgezb pmvlzb pmvnzb pmvzb pop popa popad popaw popf popfd popfq popfw por prefetch prefetchw pslld psllq psllw psrad psraw psrld psrlq psrlw psubb psubd psubsb psubsiw psubsw psubusb psubusw psubw punpckhbw punpckhdq punpckhwd punpcklbw punpckldq punpcklwd push pusha pushad pushaw pushf pushfd pushfq pushfw pxor rcl rcr rdshr rdmsr rdpmc rdtsc rdtscp ret retf retn rol ror rdm rsdc rsldt rsm rsts sahf sal salc sar sbb scasb scasd scasq scasw sfence sgdt shl shld shr shrd sidt sldt skinit smi smint smintold smsw stc std sti stosb stosd stosq stosw str sub svdc svldt svts swapgs syscall sysenter sysexit sysret test ud0 ud1 ud2b ud2 ud2a umov verr verw fwait wbinvd wrshr wrmsr xadd xbts xchg xlatb xlat xor cmove cmovz cmovne cmovnz cmova cmovnbe cmovae cmovnb cmovb cmovnae cmovbe cmovna cmovg cmovnle cmovge cmovnl cmovl cmovnge cmovle cmovng cmovc cmovnc cmovo cmovno cmovs cmovns cmovp cmovpe cmovnp cmovpo je jz jne jnz ja jnbe jae jnb jb jnae jbe jna jg jnle jge jnl jl jnge jle jng jc jnc jo jno js jns jpo jnp jpe jp sete setz setne setnz seta setnbe setae setnb setnc setb setnae setcset setbe setna setg setnle setge setnl setl setnge setle setng sets setns seto setno setpe setp setpo setnp addps addss andnps andps cmpeqps cmpeqss cmpleps cmpless cmpltps cmpltss cmpneqps cmpneqss cmpnleps cmpnless cmpnltps cmpnltss cmpordps cmpordss cmpunordps cmpunordss cmpps cmpss comiss cvtpi2ps cvtps2pi cvtsi2ss cvtss2si cvttps2pi cvttss2si divps divss ldmxcsr maxps maxss minps minss movaps movhps movlhps movlps movhlps movmskps movntps movss movups mulps mulss orps rcpps rcpss rsqrtps rsqrtss shufps sqrtps sqrtss stmxcsr subps subss ucomiss unpckhps unpcklps xorps fxrstor fxrstor64 fxsave fxsave64 xgetbv xsetbv xsave xsave64 xsaveopt xsaveopt64 xrstor xrstor64 prefetchnta prefetcht0 prefetcht1 prefetcht2 maskmovq movntq pavgb pavgw pextrw pinsrw pmaxsw pmaxub pminsw pminub pmovmskb pmulhuw psadbw pshufw pf2iw pfnacc pfpnacc pi2fw pswapd maskmovdqu clflush movntdq movnti movntpd movdqa movdqu movdq2q movq2dq paddq pmuludq pshufd pshufhw pshuflw pslldq psrldq psubq punpckhqdq punpcklqdq addpd addsd andnpd andpd cmpeqpd cmpeqsd cmplepd cmplesd cmpltpd cmpltsd cmpneqpd cmpneqsd cmpnlepd cmpnlesd cmpnltpd cmpnltsd cmpordpd cmpordsd cmpunordpd cmpunordsd cmppd comisd cvtdq2pd cvtdq2ps cvtpd2dq cvtpd2pi cvtpd2ps cvtpi2pd cvtps2dq cvtps2pd cvtsd2si cvtsd2ss cvtsi2sd cvtss2sd cvttpd2pi cvttpd2dq cvttps2dq cvttsd2si divpd divsd maxpd maxsd minpd minsd movapd movhpd movlpd movmskpd movupd mulpd mulsd orpd shufpd sqrtpd sqrtsd subpd subsd ucomisd unpckhpd unpcklpd xorpd addsubpd addsubps haddpd haddps hsubpd hsubps lddqu movddup movshdup movsldup clgi stgi vmcall vmclear vmfunc vmlaunch vmload vmmcall vmptrld vmptrst vmread vmresume vmrun vmsave vmwrite vmxoff vmxon invept invvpid pabsb pabsw pabsd palignr phaddw phaddd phaddsw phsubw phsubd phsubsw pmaddubsw pmulhrsw pshufb psignb psignw psignd extrq insertq movntsd movntss lzcnt blendpd blendps blendvpd blendvps dppd dpps extractps insertps movntdqa mpsadbw packusdw pblendvb pblendw pcmpeqq pextrb pextrd pextrq phminposuw pinsrb pinsrd pinsrq pmaxsb pmaxsd pmaxud pmaxuw pminsb pminsd pminud pminuw pmovsxbw pmovsxbd pmovsxbq pmovsxwd pmovsxwq pmovsxdq pmovzxbw pmovzxbd pmovzxbq pmovzxwd pmovzxwq pmovzxdq pmuldq pmulld ptest roundpd roundps roundsd roundss crc32 pcmpestri pcmpestrm pcmpistri pcmpistrm pcmpgtq popcnt getsec pfrcpv pfrsqrtv movbe aesenc aesenclast aesdec aesdeclast aesimc aeskeygenassist vaesenc vaesenclast vaesdec vaesdeclast vaesimc vaeskeygenassist vaddpd vaddps vaddsd vaddss vaddsubpd vaddsubps vandpd vandps vandnpd vandnps vblendpd vblendps vblendvpd vblendvps vbroadcastss vbroadcastsd vbroadcastf128 vcmpeq_ospd vcmpeqpd vcmplt_ospd vcmpltpd vcmple_ospd vcmplepd vcmpunord_qpd vcmpunordpd vcmpneq_uqpd vcmpneqpd vcmpnlt_uspd vcmpnltpd vcmpnle_uspd vcmpnlepd vcmpord_qpd vcmpordpd vcmpeq_uqpd vcmpnge_uspd vcmpngepd vcmpngt_uspd vcmpngtpd vcmpfalse_oqpd vcmpfalsepd vcmpneq_oqpd vcmpge_ospd vcmpgepd vcmpgt_ospd vcmpgtpd vcmptrue_uqpd vcmptruepd vcmplt_oqpd vcmple_oqpd vcmpunord_spd vcmpneq_uspd vcmpnlt_uqpd vcmpnle_uqpd vcmpord_spd vcmpeq_uspd vcmpnge_uqpd vcmpngt_uqpd vcmpfalse_ospd vcmpneq_ospd vcmpge_oqpd vcmpgt_oqpd vcmptrue_uspd vcmppd vcmpeq_osps vcmpeqps vcmplt_osps vcmpltps vcmple_osps vcmpleps vcmpunord_qps vcmpunordps vcmpneq_uqps vcmpneqps vcmpnlt_usps vcmpnltps vcmpnle_usps vcmpnleps vcmpord_qps vcmpordps vcmpeq_uqps vcmpnge_usps vcmpngeps vcmpngt_usps vcmpngtps vcmpfalse_oqps vcmpfalseps vcmpneq_oqps vcmpge_osps vcmpgeps vcmpgt_osps vcmpgtps vcmptrue_uqps vcmptrueps vcmplt_oqps vcmple_oqps vcmpunord_sps vcmpneq_usps vcmpnlt_uqps vcmpnle_uqps vcmpord_sps vcmpeq_usps vcmpnge_uqps vcmpngt_uqps vcmpfalse_osps vcmpneq_osps vcmpge_oqps vcmpgt_oqps vcmptrue_usps vcmpps vcmpeq_ossd vcmpeqsd vcmplt_ossd vcmpltsd vcmple_ossd vcmplesd vcmpunord_qsd vcmpunordsd vcmpneq_uqsd vcmpneqsd vcmpnlt_ussd vcmpnltsd vcmpnle_ussd vcmpnlesd vcmpord_qsd vcmpordsd vcmpeq_uqsd vcmpnge_ussd vcmpngesd vcmpngt_ussd vcmpngtsd vcmpfalse_oqsd vcmpfalsesd vcmpneq_oqsd vcmpge_ossd vcmpgesd vcmpgt_ossd vcmpgtsd vcmptrue_uqsd vcmptruesd vcmplt_oqsd vcmple_oqsd vcmpunord_ssd vcmpneq_ussd vcmpnlt_uqsd vcmpnle_uqsd vcmpord_ssd vcmpeq_ussd vcmpnge_uqsd vcmpngt_uqsd vcmpfalse_ossd vcmpneq_ossd vcmpge_oqsd vcmpgt_oqsd vcmptrue_ussd vcmpsd vcmpeq_osss vcmpeqss vcmplt_osss vcmpltss vcmple_osss vcmpless vcmpunord_qss vcmpunordss vcmpneq_uqss vcmpneqss vcmpnlt_usss vcmpnltss vcmpnle_usss vcmpnless vcmpord_qss vcmpordss vcmpeq_uqss vcmpnge_usss vcmpngess vcmpngt_usss vcmpngtss vcmpfalse_oqss vcmpfalsess vcmpneq_oqss vcmpge_osss vcmpgess vcmpgt_osss vcmpgtss vcmptrue_uqss vcmptruess vcmplt_oqss vcmple_oqss vcmpunord_sss vcmpneq_usss vcmpnlt_uqss vcmpnle_uqss vcmpord_sss vcmpeq_usss vcmpnge_uqss vcmpngt_uqss vcmpfalse_osss vcmpneq_osss vcmpge_oqss vcmpgt_oqss vcmptrue_usss vcmpss vcomisd vcomiss vcvtdq2pd vcvtdq2ps vcvtpd2dq vcvtpd2ps vcvtps2dq vcvtps2pd vcvtsd2si vcvtsd2ss vcvtsi2sd vcvtsi2ss vcvtss2sd vcvtss2si vcvttpd2dq vcvttps2dq vcvttsd2si vcvttss2si vdivpd vdivps vdivsd vdivss vdppd vdpps vextractf128 vextractps vhaddpd vhaddps vhsubpd vhsubps vinsertf128 vinsertps vlddqu vldqqu vldmxcsr vmaskmovdqu vmaskmovps vmaskmovpd vmaxpd vmaxps vmaxsd vmaxss vminpd vminps vminsd vminss vmovapd vmovaps vmovd vmovq vmovddup vmovdqa vmovqqa vmovdqu vmovqqu vmovhlps vmovhpd vmovhps vmovlhps vmovlpd vmovlps vmovmskpd vmovmskps vmovntdq vmovntqq vmovntdqa vmovntpd vmovntps vmovsd vmovshdup vmovsldup vmovss vmovupd vmovups vmpsadbw vmulpd vmulps vmulsd vmulss vorpd vorps vpabsb vpabsw vpabsd vpacksswb vpackssdw vpackuswb vpackusdw vpaddb vpaddw vpaddd vpaddq vpaddsb vpaddsw vpaddusb vpaddusw vpalignr vpand vpandn vpavgb vpavgw vpblendvb vpblendw vpcmpestri vpcmpestrm vpcmpistri vpcmpistrm vpcmpeqb vpcmpeqw vpcmpeqd vpcmpeqq vpcmpgtb vpcmpgtw vpcmpgtd vpcmpgtq vpermilpd vpermilps vperm2f128 vpextrb vpextrw vpextrd vpextrq vphaddw vphaddd vphaddsw vphminposuw vphsubw vphsubd vphsubsw vpinsrb vpinsrw vpinsrd vpinsrq vpmaddwd vpmaddubsw vpmaxsb vpmaxsw vpmaxsd vpmaxub vpmaxuw vpmaxud vpminsb vpminsw vpminsd vpminub vpminuw vpminud vpmovmskb vpmovsxbw vpmovsxbd vpmovsxbq vpmovsxwd vpmovsxwq vpmovsxdq vpmovzxbw vpmovzxbd vpmovzxbq vpmovzxwd vpmovzxwq vpmovzxdq vpmulhuw vpmulhrsw vpmulhw vpmullw vpmulld vpmuludq vpmuldq vpor vpsadbw vpshufb vpshufd vpshufhw vpshuflw vpsignb vpsignw vpsignd vpslldq vpsrldq vpsllw vpslld vpsllq vpsraw vpsrad vpsrlw vpsrld vpsrlq vptest vpsubb vpsubw vpsubd vpsubq vpsubsb vpsubsw vpsubusb vpsubusw vpunpckhbw vpunpckhwd vpunpckhdq vpunpckhqdq vpunpcklbw vpunpcklwd vpunpckldq vpunpcklqdq vpxor vrcpps vrcpss vrsqrtps vrsqrtss vroundpd vroundps vroundsd vroundss vshufpd vshufps vsqrtpd vsqrtps vsqrtsd vsqrtss vstmxcsr vsubpd vsubps vsubsd vsubss vtestps vtestpd vucomisd vucomiss vunpckhpd vunpckhps vunpcklpd vunpcklps vxorpd vxorps vzeroall vzeroupper pclmullqlqdq pclmulhqlqdq pclmullqhqdq pclmulhqhqdq pclmulqdq vpclmullqlqdq vpclmulhqlqdq vpclmullqhqdq vpclmulhqhqdq vpclmulqdq vfmadd132ps vfmadd132pd vfmadd312ps vfmadd312pd vfmadd213ps vfmadd213pd vfmadd123ps vfmadd123pd vfmadd231ps vfmadd231pd vfmadd321ps vfmadd321pd vfmaddsub132ps vfmaddsub132pd vfmaddsub312ps vfmaddsub312pd vfmaddsub213ps vfmaddsub213pd vfmaddsub123ps vfmaddsub123pd vfmaddsub231ps vfmaddsub231pd vfmaddsub321ps vfmaddsub321pd vfmsub132ps vfmsub132pd vfmsub312ps vfmsub312pd vfmsub213ps vfmsub213pd vfmsub123ps vfmsub123pd vfmsub231ps vfmsub231pd vfmsub321ps vfmsub321pd vfmsubadd132ps vfmsubadd132pd vfmsubadd312ps vfmsubadd312pd vfmsubadd213ps vfmsubadd213pd vfmsubadd123ps vfmsubadd123pd vfmsubadd231ps vfmsubadd231pd vfmsubadd321ps vfmsubadd321pd vfnmadd132ps vfnmadd132pd vfnmadd312ps vfnmadd312pd vfnmadd213ps vfnmadd213pd vfnmadd123ps vfnmadd123pd vfnmadd231ps vfnmadd231pd vfnmadd321ps vfnmadd321pd vfnmsub132ps vfnmsub132pd vfnmsub312ps vfnmsub312pd vfnmsub213ps vfnmsub213pd vfnmsub123ps vfnmsub123pd vfnmsub231ps vfnmsub231pd vfnmsub321ps vfnmsub321pd vfmadd132ss vfmadd132sd vfmadd312ss vfmadd312sd vfmadd213ss vfmadd213sd vfmadd123ss vfmadd123sd vfmadd231ss vfmadd231sd vfmadd321ss vfmadd321sd vfmsub132ss vfmsub132sd vfmsub312ss vfmsub312sd vfmsub213ss vfmsub213sd vfmsub123ss vfmsub123sd vfmsub231ss vfmsub231sd vfmsub321ss vfmsub321sd vfnmadd132ss vfnmadd132sd vfnmadd312ss vfnmadd312sd vfnmadd213ss vfnmadd213sd vfnmadd123ss vfnmadd123sd vfnmadd231ss vfnmadd231sd vfnmadd321ss vfnmadd321sd vfnmsub132ss vfnmsub132sd vfnmsub312ss vfnmsub312sd vfnmsub213ss vfnmsub213sd vfnmsub123ss vfnmsub123sd vfnmsub231ss vfnmsub231sd vfnmsub321ss vfnmsub321sd rdfsbase rdgsbase rdrand wrfsbase wrgsbase vcvtph2ps vcvtps2ph adcx adox rdseed clac stac xstore xcryptecb xcryptcbc xcryptctr xcryptcfb xcryptofb montmul xsha1 xsha256 llwpcb slwpcb lwpval lwpins vfmaddpd vfmaddps vfmaddsd vfmaddss vfmaddsubpd vfmaddsubps vfmsubaddpd vfmsubaddps vfmsubpd vfmsubps vfmsubsd vfmsubss vfnmaddpd vfnmaddps vfnmaddsd vfnmaddss vfnmsubpd vfnmsubps vfnmsubsd vfnmsubss vfrczpd vfrczps vfrczsd vfrczss vpcmov vpcomb vpcomd vpcomq vpcomub vpcomud vpcomuq vpcomuw vpcomw vphaddbd vphaddbq vphaddbw vphadddq vphaddubd vphaddubq vphaddubw vphaddudq vphadduwd vphadduwq vphaddwd vphaddwq vphsubbw vphsubdq vphsubwd vpmacsdd vpmacsdqh vpmacsdql vpmacssdd vpmacssdqh vpmacssdql vpmacsswd vpmacssww vpmacswd vpmacsww vpmadcsswd vpmadcswd vpperm vprotb vprotd vprotq vprotw vpshab vpshad vpshaq vpshaw vpshlb vpshld vpshlq vpshlw vbroadcasti128 vpblendd vpbroadcastb vpbroadcastw vpbroadcastd vpbroadcastq vpermd vpermpd vpermps vpermq vperm2i128 vextracti128 vinserti128 vpmaskmovd vpmaskmovq vpsllvd vpsllvq vpsravd vpsrlvd vpsrlvq vgatherdpd vgatherqpd vgatherdps vgatherqps vpgatherdd vpgatherqd vpgatherdq vpgatherqq xabort xbegin xend xtest andn bextr blci blcic blsi blsic blcfill blsfill blcmsk blsmsk blsr blcs bzhi mulx pdep pext rorx sarx shlx shrx tzcnt tzmsk t1mskc valignd valignq vblendmpd vblendmps vbroadcastf32x4 vbroadcastf64x4 vbroadcasti32x4 vbroadcasti64x4 vcompresspd vcompressps vcvtpd2udq vcvtps2udq vcvtsd2usi vcvtss2usi vcvttpd2udq vcvttps2udq vcvttsd2usi vcvttss2usi vcvtudq2pd vcvtudq2ps vcvtusi2sd vcvtusi2ss vexpandpd vexpandps vextractf32x4 vextractf64x4 vextracti32x4 vextracti64x4 vfixupimmpd vfixupimmps vfixupimmsd vfixupimmss vgetexppd vgetexpps vgetexpsd vgetexpss vgetmantpd vgetmantps vgetmantsd vgetmantss vinsertf32x4 vinsertf64x4 vinserti32x4 vinserti64x4 vmovdqa32 vmovdqa64 vmovdqu32 vmovdqu64 vpabsq vpandd vpandnd vpandnq vpandq vpblendmd vpblendmq vpcmpltd vpcmpled vpcmpneqd vpcmpnltd vpcmpnled vpcmpd vpcmpltq vpcmpleq vpcmpneqq vpcmpnltq vpcmpnleq vpcmpq vpcmpequd vpcmpltud vpcmpleud vpcmpnequd vpcmpnltud vpcmpnleud vpcmpud vpcmpequq vpcmpltuq vpcmpleuq vpcmpnequq vpcmpnltuq vpcmpnleuq vpcmpuq vpcompressd vpcompressq vpermi2d vpermi2pd vpermi2ps vpermi2q vpermt2d vpermt2pd vpermt2ps vpermt2q vpexpandd vpexpandq vpmaxsq vpmaxuq vpminsq vpminuq vpmovdb vpmovdw vpmovqb vpmovqd vpmovqw vpmovsdb vpmovsdw vpmovsqb vpmovsqd vpmovsqw vpmovusdb vpmovusdw vpmovusqb vpmovusqd vpmovusqw vpord vporq vprold vprolq vprolvd vprolvq vprord vprorq vprorvd vprorvq vpscatterdd vpscatterdq vpscatterqd vpscatterqq vpsraq vpsravq vpternlogd vpternlogq vptestmd vptestmq vptestnmd vptestnmq vpxord vpxorq vrcp14pd vrcp14ps vrcp14sd vrcp14ss vrndscalepd vrndscaleps vrndscalesd vrndscaless vrsqrt14pd vrsqrt14ps vrsqrt14sd vrsqrt14ss vscalefpd vscalefps vscalefsd vscalefss vscatterdpd vscatterdps vscatterqpd vscatterqps vshuff32x4 vshuff64x2 vshufi32x4 vshufi64x2 kandnw kandw kmovw knotw kortestw korw kshiftlw kshiftrw kunpckbw kxnorw kxorw vpbroadcastmb2q vpbroadcastmw2d vpconflictd vpconflictq vplzcntd vplzcntq vexp2pd vexp2ps vrcp28pd vrcp28ps vrcp28sd vrcp28ss vrsqrt28pd vrsqrt28ps vrsqrt28sd vrsqrt28ss vgatherpf0dpd vgatherpf0dps vgatherpf0qpd vgatherpf0qps vgatherpf1dpd vgatherpf1dps vgatherpf1qpd vgatherpf1qps vscatterpf0dpd vscatterpf0dps vscatterpf0qpd vscatterpf0qps vscatterpf1dpd vscatterpf1dps vscatterpf1qpd vscatterpf1qps prefetchwt1 bndmk bndcl bndcu bndcn bndmov bndldx bndstx sha1rnds4 sha1nexte sha1msg1 sha1msg2 sha256rnds2 sha256msg1 sha256msg2 hint_nop0 hint_nop1 hint_nop2 hint_nop3 hint_nop4 hint_nop5 hint_nop6 hint_nop7 hint_nop8 hint_nop9 hint_nop10 hint_nop11 hint_nop12 hint_nop13 hint_nop14 hint_nop15 hint_nop16 hint_nop17 hint_nop18 hint_nop19 hint_nop20 hint_nop21 hint_nop22 hint_nop23 hint_nop24 hint_nop25 hint_nop26 hint_nop27 hint_nop28 hint_nop29 hint_nop30 hint_nop31 hint_nop32 hint_nop33 hint_nop34 hint_nop35 hint_nop36 hint_nop37 hint_nop38 hint_nop39 hint_nop40 hint_nop41 hint_nop42 hint_nop43 hint_nop44 hint_nop45 hint_nop46 hint_nop47 hint_nop48 hint_nop49 hint_nop50 hint_nop51 hint_nop52 hint_nop53 hint_nop54 hint_nop55 hint_nop56 hint_nop57 hint_nop58 hint_nop59 hint_nop60 hint_nop61 hint_nop62 hint_nop63", +built_in:"ip eip rip al ah bl bh cl ch dl dh sil dil bpl spl r8b r9b r10b r11b r12b r13b r14b r15b ax bx cx dx si di bp sp r8w r9w r10w r11w r12w r13w r14w r15w eax ebx ecx edx esi edi ebp esp eip r8d r9d r10d r11d r12d r13d r14d r15d rax rbx rcx rdx rsi rdi rbp rsp r8 r9 r10 r11 r12 r13 r14 r15 cs ds es fs gs ss st st0 st1 st2 st3 st4 st5 st6 st7 mm0 mm1 mm2 mm3 mm4 mm5 mm6 mm7 xmm0 xmm1 xmm2 xmm3 xmm4 xmm5 xmm6 xmm7 xmm8 xmm9 xmm10 xmm11 xmm12 xmm13 xmm14 xmm15 xmm16 xmm17 xmm18 xmm19 xmm20 xmm21 xmm22 xmm23 xmm24 xmm25 xmm26 xmm27 xmm28 xmm29 xmm30 xmm31 ymm0 ymm1 ymm2 ymm3 ymm4 ymm5 ymm6 ymm7 ymm8 ymm9 ymm10 ymm11 ymm12 ymm13 ymm14 ymm15 ymm16 ymm17 ymm18 ymm19 ymm20 ymm21 ymm22 ymm23 ymm24 ymm25 ymm26 ymm27 ymm28 ymm29 ymm30 ymm31 zmm0 zmm1 zmm2 zmm3 zmm4 zmm5 zmm6 zmm7 zmm8 zmm9 zmm10 zmm11 zmm12 zmm13 zmm14 zmm15 zmm16 zmm17 zmm18 zmm19 zmm20 zmm21 zmm22 zmm23 zmm24 zmm25 zmm26 zmm27 zmm28 zmm29 zmm30 zmm31 k0 k1 k2 k3 k4 k5 k6 k7 bnd0 bnd1 bnd2 bnd3 cr0 cr1 cr2 cr3 cr4 cr8 dr0 dr1 dr2 dr3 dr8 tr3 tr4 tr5 tr6 tr7 r0 r1 r2 r3 r4 r5 r6 r7 r0b r1b r2b r3b r4b r5b r6b r7b r0w r1w r2w r3w r4w r5w r6w r7w r0d r1d r2d r3d r4d r5d r6d r7d r0h r1h r2h r3h r0l r1l r2l r3l r4l r5l r6l r7l r8l r9l r10l r11l r12l r13l r14l r15l db dw dd dq dt ddq do dy dz resb resw resd resq rest resdq reso resy resz incbin equ times byte word dword qword nosplit rel abs seg wrt strict near far a32 ptr", +meta:"%define %xdefine %+ %undef %defstr %deftok %assign %strcat %strlen %substr %rotate %elif %else %endif %if %ifmacro %ifctx %ifidn %ifidni %ifid %ifnum %ifstr %iftoken %ifempty %ifenv %error %warning %fatal %rep %endrep %include %push %pop %repl %pathsearch %depend %use %arg %stacksize %local %line %comment %endcomment .nolist __FILE__ __LINE__ __SECT__ __BITS__ __OUTPUT_FORMAT__ __DATE__ __TIME__ __DATE_NUM__ __TIME_NUM__ __UTC_DATE__ __UTC_TIME__ __UTC_DATE_NUM__ __UTC_TIME_NUM__ __PASS__ struc endstruc istruc at iend align alignb sectalign daz nodaz up down zero default option assume public bits use16 use32 use64 default section segment absolute extern global common cpu float __utf16__ __utf16le__ __utf16be__ __utf32__ __utf32le__ __utf32be__ __float8__ __float16__ __float32__ __float64__ __float80m__ __float80e__ __float128l__ __float128h__ __Infinity__ __QNaN__ __SNaN__ Inf NaN QNaN SNaN float8 float16 float32 float64 float80m float80e float128l float128h __FLOAT_DAZ__ __FLOAT_ROUND__ __FLOAT__" +},contains:[s.COMMENT(";","$",{relevance:0}),{className:"number",variants:[{ +begin:"\\b(?:([0-9][0-9_]*)?\\.[0-9_]*(?:[eE][+-]?[0-9_]+)?|(0[Xx])?[0-9][0-9_]*(\\.[0-9_]*)?(?:[pP](?:[+-]?[0-9_]+)?)?)\\b", +relevance:0},{begin:"\\$[0-9][0-9A-Fa-f]*",relevance:0},{ +begin:"\\b(?:[0-9A-Fa-f][0-9A-Fa-f_]*[Hh]|[0-9][0-9_]*[DdTt]?|[0-7][0-7_]*[QqOo]|[0-1][0-1_]*[BbYy])\\b" +},{ +begin:"\\b(?:0[Xx][0-9A-Fa-f_]+|0[DdTt][0-9_]+|0[QqOo][0-7_]+|0[BbYy][0-1_]+)\\b" +}]},s.QUOTE_STRING_MODE,{className:"string",variants:[{begin:"'",end:"[^\\\\]'" +},{begin:"`",end:"[^\\\\]`"}],relevance:0},{className:"symbol",variants:[{ +begin:"^\\s*[A-Za-z._?][A-Za-z0-9_$#@~.?]*(:|\\s+label)"},{ +begin:"^\\s*%%[A-Za-z0-9_$#@~.?]*:"}],relevance:0},{className:"subst", +begin:"%[0-9]+",relevance:0},{className:"subst",begin:"%!S+",relevance:0},{ +className:"meta",begin:/^\s*\.[\w_-]+/}]})})();hljs.registerLanguage("x86asm",s) +})();/*! `markdown` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n={begin:/<\/?[A-Za-z_]/, +end:">",subLanguage:"xml",relevance:0},a={variants:[{begin:/\[.+?\]\[.*?\]/, +relevance:0},{ +begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/, +relevance:2},{ +begin:e.regex.concat(/\[.+?\]\(/,/[A-Za-z][A-Za-z0-9+.-]*/,/:\/\/.*?\)/), +relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{ +begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{match:/\[(?=\])/ +},{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0, +returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)", +excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[", +end:"\\]",excludeBegin:!0,excludeEnd:!0}]},i={className:"strong",contains:[], +variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}] +},s={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{ +begin:/_(?![_\s])/,end:/_/,relevance:0}]},c=e.inherit(i,{contains:[] +}),t=e.inherit(s,{contains:[]});i.contains.push(t),s.contains.push(c) +;let g=[n,a];return[i,s,c,t].forEach((e=>{e.contains=e.contains.concat(g) +})),g=g.concat(i,s),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{ +className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:g},{ +begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n", +contains:g}]}]},n,{className:"bullet",begin:"^[ \t]*([*+-]|(\\d+\\.))(?=\\s+)", +end:"\\s+",excludeEnd:!0},i,s,{className:"quote",begin:"^>\\s+",contains:g, +end:"$"},{className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{ +begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{ +begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))", +contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},{ +begin:"^[-\\*]{3,}",end:"$"},a,{begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{ +className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{ +className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]}]}}})() +;hljs.registerLanguage("markdown",e)})();/*! `dart` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n={className:"subst",variants:[{ +begin:"\\$[A-Za-z0-9_]+"}]},a={className:"subst",variants:[{begin:/\$\{/, +end:/\}/}],keywords:"true false null this is new super"},t={className:"string", +variants:[{begin:"r'''",end:"'''"},{begin:'r"""',end:'"""'},{begin:"r'",end:"'", +illegal:"\\n"},{begin:'r"',end:'"',illegal:"\\n"},{begin:"'''",end:"'''", +contains:[e.BACKSLASH_ESCAPE,n,a]},{begin:'"""',end:'"""', +contains:[e.BACKSLASH_ESCAPE,n,a]},{begin:"'",end:"'",illegal:"\\n", +contains:[e.BACKSLASH_ESCAPE,n,a]},{begin:'"',end:'"',illegal:"\\n", +contains:[e.BACKSLASH_ESCAPE,n,a]}]};a.contains=[e.C_NUMBER_MODE,t] +;const i=["Comparable","DateTime","Duration","Function","Iterable","Iterator","List","Map","Match","Object","Pattern","RegExp","Set","Stopwatch","String","StringBuffer","StringSink","Symbol","Type","Uri","bool","double","int","num","Element","ElementList"],r=i.map((e=>e+"?")) +;return{name:"Dart",keywords:{ +keyword:["abstract","as","assert","async","await","break","case","catch","class","const","continue","covariant","default","deferred","do","dynamic","else","enum","export","extends","extension","external","factory","false","final","finally","for","Function","get","hide","if","implements","import","in","inferface","is","late","library","mixin","new","null","on","operator","part","required","rethrow","return","set","show","static","super","switch","sync","this","throw","true","try","typedef","var","void","while","with","yield"], +built_in:i.concat(r).concat(["Never","Null","dynamic","print","document","querySelector","querySelectorAll","window"]), +$pattern:/[A-Za-z][A-Za-z0-9_]*\??/}, +contains:[t,e.COMMENT(/\/\*\*(?!\/)/,/\*\//,{subLanguage:"markdown",relevance:0 +}),e.COMMENT(/\/{3,} ?/,/$/,{contains:[{subLanguage:"markdown",begin:".", +end:"$",relevance:0}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{ +className:"class",beginKeywords:"class interface",end:/\{/,excludeEnd:!0, +contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE] +},e.C_NUMBER_MODE,{className:"meta",begin:"@[A-Za-z]+"},{begin:"=>"}]}}})() +;hljs.registerLanguage("dart",e)})();/*! `actionscript` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const a=e.regex,t=/[a-zA-Z_$][a-zA-Z0-9_$]*/,n=a.concat(t,a.concat("(\\.",t,")*")),s={ +className:"rest_arg",begin:/[.]{3}/,end:t,relevance:10};return{ +name:"ActionScript",aliases:["as"],keywords:{ +keyword:["as","break","case","catch","class","const","continue","default","delete","do","dynamic","each","else","extends","final","finally","for","function","get","if","implements","import","in","include","instanceof","interface","internal","is","namespace","native","new","override","package","private","protected","public","return","set","static","super","switch","this","throw","try","typeof","use","var","void","while","with"], +literal:["true","false","null","undefined"]}, +contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.C_NUMBER_MODE,{ +match:[/\bpackage/,/\s+/,n],className:{1:"keyword",3:"title.class"}},{ +match:[/\b(?:class|interface|extends|implements)/,/\s+/,t],className:{ +1:"keyword",3:"title.class"}},{className:"meta",beginKeywords:"import include", +end:/;/,keywords:{keyword:"import include"}},{beginKeywords:"function", +end:/[{;]/,excludeEnd:!0,illegal:/\S/,contains:[e.inherit(e.TITLE_MODE,{ +className:"title.function"}),{className:"params",begin:/\(/,end:/\)/, +contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,s] +},{begin:a.concat(/:\s*/,/([*]|[a-zA-Z_$][a-zA-Z0-9_$]*)/)}]},e.METHOD_GUARD], +illegal:/#/}}})();hljs.registerLanguage("actionscript",e)})();/*! `monkey` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n={className:"number", +relevance:0,variants:[{begin:"[$][a-fA-F0-9]+"},e.NUMBER_MODE]},a={variants:[{ +match:[/(function|method)/,/\s+/,e.UNDERSCORE_IDENT_RE]}],scope:{1:"keyword", +3:"title.function"}},t={variants:[{ +match:[/(class|interface|extends|implements)/,/\s+/,e.UNDERSCORE_IDENT_RE]}], +scope:{1:"keyword",3:"title.class"}};return{name:"Monkey",case_insensitive:!0, +keywords:{ +keyword:["public","private","property","continue","exit","extern","new","try","catch","eachin","not","abstract","final","select","case","default","const","local","global","field","end","if","then","else","elseif","endif","while","wend","repeat","until","forever","for","to","step","next","return","module","inline","throw","import","and","or","shl","shr","mod"], +built_in:["DebugLog","DebugStop","Error","Print","ACos","ACosr","ASin","ASinr","ATan","ATan2","ATan2r","ATanr","Abs","Abs","Ceil","Clamp","Clamp","Cos","Cosr","Exp","Floor","Log","Max","Max","Min","Min","Pow","Sgn","Sgn","Sin","Sinr","Sqrt","Tan","Tanr","Seed","PI","HALFPI","TWOPI"], +literal:["true","false","null"]},illegal:/\/\*/, +contains:[e.COMMENT("#rem","#end"),e.COMMENT("'","$",{relevance:0}),a,t,{ +className:"variable.language",begin:/\b(self|super)\b/},{className:"meta", +begin:/\s*#/,end:"$",keywords:{keyword:"if else elseif endif end then"}},{ +match:[/^\s*/,/strict\b/],scope:{2:"meta"}},{beginKeywords:"alias",end:"=", +contains:[e.UNDERSCORE_TITLE_MODE]},e.QUOTE_STRING_MODE,n]}}})() +;hljs.registerLanguage("monkey",e)})();/*! `gherkin` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Gherkin",aliases:["feature"], +keywords:"Feature Background Ability Business Need Scenario Scenarios Scenario Outline Scenario Template Examples Given And Then But When", +contains:[{className:"symbol",begin:"\\*",relevance:0},{className:"meta", +begin:"@[^@\\s]+"},{begin:"\\|",end:"\\|\\w*$",contains:[{className:"string", +begin:"[^|]+"}]},{className:"variable",begin:"<",end:">"},e.HASH_COMMENT_MODE,{ +className:"string",begin:'"""',end:'"""'},e.QUOTE_STRING_MODE]})})() +;hljs.registerLanguage("gherkin",e)})();/*! `thrift` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const t=["bool","byte","i16","i32","i64","double","string","binary"];return{ +name:"Thrift",keywords:{ +keyword:["namespace","const","typedef","struct","enum","service","exception","void","oneway","set","list","map","required","optional"], +type:t,literal:"true false"}, +contains:[e.QUOTE_STRING_MODE,e.NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{ +className:"class",beginKeywords:"struct enum service exception",end:/\{/, +illegal:/\n/,contains:[e.inherit(e.TITLE_MODE,{starts:{endsWithParent:!0, +excludeEnd:!0}})]},{begin:"\\b(set|list|map)\\s*<",keywords:{ +type:[...t,"set","list","map"]},end:">",contains:["self"]}]}}})() +;hljs.registerLanguage("thrift",e)})();/*! `smalltalk` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n="[a-z][a-zA-Z0-9_]*",a={ +className:"string",begin:"\\$.{1}"},s={className:"symbol", +begin:"#"+e.UNDERSCORE_IDENT_RE};return{name:"Smalltalk",aliases:["st"], +keywords:["self","super","nil","true","false","thisContext"], +contains:[e.COMMENT('"','"'),e.APOS_STRING_MODE,{className:"type", +begin:"\\b[A-Z][A-Za-z0-9_]*",relevance:0},{begin:n+":",relevance:0 +},e.C_NUMBER_MODE,s,a,{begin:"\\|[ ]*"+n+"([ ]+"+n+")*[ ]*\\|",returnBegin:!0, +end:/\|/,illegal:/\S/,contains:[{begin:"(\\|[ ]*)?"+n}]},{begin:"#\\(", +end:"\\)",contains:[e.APOS_STRING_MODE,a,e.C_NUMBER_MODE,s]}]}}})() +;hljs.registerLanguage("smalltalk",e)})();/*! `julia` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const r="[A-Za-z_\\u00A1-\\uFFFF][A-Za-z_0-9\\u00A1-\\uFFFF]*",t={$pattern:r, +keyword:["baremodule","begin","break","catch","ccall","const","continue","do","else","elseif","end","export","false","finally","for","function","global","if","import","in","isa","let","local","macro","module","quote","return","true","try","using","where","while"], +literal:["ARGS","C_NULL","DEPOT_PATH","ENDIAN_BOM","ENV","Inf","Inf16","Inf32","Inf64","InsertionSort","LOAD_PATH","MergeSort","NaN","NaN16","NaN32","NaN64","PROGRAM_FILE","QuickSort","RoundDown","RoundFromZero","RoundNearest","RoundNearestTiesAway","RoundNearestTiesUp","RoundToZero","RoundUp","VERSION|0","devnull","false","im","missing","nothing","pi","stderr","stdin","stdout","true","undef","\u03c0","\u212f"], +built_in:["AbstractArray","AbstractChannel","AbstractChar","AbstractDict","AbstractDisplay","AbstractFloat","AbstractIrrational","AbstractMatrix","AbstractRange","AbstractSet","AbstractString","AbstractUnitRange","AbstractVecOrMat","AbstractVector","Any","ArgumentError","Array","AssertionError","BigFloat","BigInt","BitArray","BitMatrix","BitSet","BitVector","Bool","BoundsError","CapturedException","CartesianIndex","CartesianIndices","Cchar","Cdouble","Cfloat","Channel","Char","Cint","Cintmax_t","Clong","Clonglong","Cmd","Colon","Complex","ComplexF16","ComplexF32","ComplexF64","CompositeException","Condition","Cptrdiff_t","Cshort","Csize_t","Cssize_t","Cstring","Cuchar","Cuint","Cuintmax_t","Culong","Culonglong","Cushort","Cvoid","Cwchar_t","Cwstring","DataType","DenseArray","DenseMatrix","DenseVecOrMat","DenseVector","Dict","DimensionMismatch","Dims","DivideError","DomainError","EOFError","Enum","ErrorException","Exception","ExponentialBackOff","Expr","Float16","Float32","Float64","Function","GlobalRef","HTML","IO","IOBuffer","IOContext","IOStream","IdDict","IndexCartesian","IndexLinear","IndexStyle","InexactError","InitError","Int","Int128","Int16","Int32","Int64","Int8","Integer","InterruptException","InvalidStateException","Irrational","KeyError","LinRange","LineNumberNode","LinearIndices","LoadError","MIME","Matrix","Method","MethodError","Missing","MissingException","Module","NTuple","NamedTuple","Nothing","Number","OrdinalRange","OutOfMemoryError","OverflowError","Pair","PartialQuickSort","PermutedDimsArray","Pipe","ProcessFailedException","Ptr","QuoteNode","Rational","RawFD","ReadOnlyMemoryError","Real","ReentrantLock","Ref","Regex","RegexMatch","RoundingMode","SegmentationFault","Set","Signed","Some","StackOverflowError","StepRange","StepRangeLen","StridedArray","StridedMatrix","StridedVecOrMat","StridedVector","String","StringIndexError","SubArray","SubString","SubstitutionString","Symbol","SystemError","Task","TaskFailedException","Text","TextDisplay","Timer","Tuple","Type","TypeError","TypeVar","UInt","UInt128","UInt16","UInt32","UInt64","UInt8","UndefInitializer","UndefKeywordError","UndefRefError","UndefVarError","Union","UnionAll","UnitRange","Unsigned","Val","Vararg","VecElement","VecOrMat","Vector","VersionNumber","WeakKeyDict","WeakRef"] +},n={keywords:t,illegal:/<\//},a={className:"subst",begin:/\$\(/,end:/\)/, +keywords:t},i={className:"variable",begin:"\\$"+r},o={className:"string", +contains:[e.BACKSLASH_ESCAPE,a,i],variants:[{begin:/\w*"""/,end:/"""\w*/, +relevance:10},{begin:/\w*"/,end:/"\w*/}]},s={className:"string", +contains:[e.BACKSLASH_ESCAPE,a,i],begin:"`",end:"`"},l={className:"meta", +begin:"@"+r};return n.name="Julia",n.contains=[{className:"number", +begin:/(\b0x[\d_]*(\.[\d_]*)?|0x\.\d[\d_]*)p[-+]?\d+|\b0[box][a-fA-F0-9][a-fA-F0-9_]*|(\b\d[\d_]*(\.[\d_]*)?|\.\d[\d_]*)([eEfF][-+]?\d+)?/, +relevance:0},{className:"string",begin:/'(.|\\[xXuU][a-zA-Z0-9]+)'/},o,s,l,{ +className:"comment",variants:[{begin:"#=",end:"=#",relevance:10},{begin:"#", +end:"$"}]},e.HASH_COMMENT_MODE,{className:"keyword", +begin:"\\b(((abstract|primitive)\\s+)type|(mutable\\s+)?struct)\\b"},{begin:/<:/ +}],a.contains=n.contains,n}})();hljs.registerLanguage("julia",e)})();/*! `objectivec` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n=/[a-zA-Z@][a-zA-Z0-9_]*/,_={ +$pattern:n,keyword:["@interface","@class","@protocol","@implementation"]} +;return{name:"Objective-C", +aliases:["mm","objc","obj-c","obj-c++","objective-c++"],keywords:{ +"variable.language":["this","super"],$pattern:n, +keyword:["while","export","sizeof","typedef","const","struct","for","union","volatile","static","mutable","if","do","return","goto","enum","else","break","extern","asm","case","default","register","explicit","typename","switch","continue","inline","readonly","assign","readwrite","self","@synchronized","id","typeof","nonatomic","IBOutlet","IBAction","strong","weak","copy","in","out","inout","bycopy","byref","oneway","__strong","__weak","__block","__autoreleasing","@private","@protected","@public","@try","@property","@end","@throw","@catch","@finally","@autoreleasepool","@synthesize","@dynamic","@selector","@optional","@required","@encode","@package","@import","@defs","@compatibility_alias","__bridge","__bridge_transfer","__bridge_retained","__bridge_retain","__covariant","__contravariant","__kindof","_Nonnull","_Nullable","_Null_unspecified","__FUNCTION__","__PRETTY_FUNCTION__","__attribute__","getter","setter","retain","unsafe_unretained","nonnull","nullable","null_unspecified","null_resettable","class","instancetype","NS_DESIGNATED_INITIALIZER","NS_UNAVAILABLE","NS_REQUIRES_SUPER","NS_RETURNS_INNER_POINTER","NS_INLINE","NS_AVAILABLE","NS_DEPRECATED","NS_ENUM","NS_OPTIONS","NS_SWIFT_UNAVAILABLE","NS_ASSUME_NONNULL_BEGIN","NS_ASSUME_NONNULL_END","NS_REFINED_FOR_SWIFT","NS_SWIFT_NAME","NS_SWIFT_NOTHROW","NS_DURING","NS_HANDLER","NS_ENDHANDLER","NS_VALUERETURN","NS_VOIDRETURN"], +literal:["false","true","FALSE","TRUE","nil","YES","NO","NULL"], +built_in:["dispatch_once_t","dispatch_queue_t","dispatch_sync","dispatch_async","dispatch_once"], +type:["int","float","char","unsigned","signed","short","long","double","wchar_t","unichar","void","bool","BOOL","id|0","_Bool"] +},illegal:"</",contains:[{className:"built_in", +begin:"\\b(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)\\w+" +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.C_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{ +className:"string",variants:[{begin:'@"',end:'"',illegal:"\\n", +contains:[e.BACKSLASH_ESCAPE]}]},{className:"meta",begin:/#\s*[a-z]+\b/,end:/$/, +keywords:{ +keyword:"if else elif endif define undef warning error line pragma ifdef ifndef include" +},contains:[{begin:/\\\n/,relevance:0},e.inherit(e.QUOTE_STRING_MODE,{ +className:"string"}),{className:"string",begin:/<.*?>/,end:/$/,illegal:"\\n" +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"class", +begin:"("+_.keyword.join("|")+")\\b",end:/(\{|$)/,excludeEnd:!0,keywords:_, +contains:[e.UNDERSCORE_TITLE_MODE]},{begin:"\\."+e.UNDERSCORE_IDENT_RE, +relevance:0}]}}})();hljs.registerLanguage("objectivec",e)})();/*! `swift` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";function e(e){ +return e?"string"==typeof e?e:e.source:null}function a(e){return t("(?=",e,")")} +function t(...a){return a.map((a=>e(a))).join("")}function n(...a){const t=(e=>{ +const a=e[e.length-1] +;return"object"==typeof a&&a.constructor===Object?(e.splice(e.length-1,1),a):{} +})(a);return"("+(t.capture?"":"?:")+a.map((a=>e(a))).join("|")+")"} +const i=e=>t(/\b/,e,/\w$/.test(e)?/\b/:/\B/),s=["Protocol","Type"].map(i),u=["init","self"].map(i),c=["Any","Self"],r=["actor","any","associatedtype","async","await",/as\?/,/as!/,"as","break","case","catch","class","continue","convenience","default","defer","deinit","didSet","distributed","do","dynamic","else","enum","extension","fallthrough",/fileprivate\(set\)/,"fileprivate","final","for","func","get","guard","if","import","indirect","infix",/init\?/,/init!/,"inout",/internal\(set\)/,"internal","in","is","isolated","nonisolated","lazy","let","mutating","nonmutating",/open\(set\)/,"open","operator","optional","override","postfix","precedencegroup","prefix",/private\(set\)/,"private","protocol",/public\(set\)/,"public","repeat","required","rethrows","return","set","some","static","struct","subscript","super","switch","throws","throw",/try\?/,/try!/,"try","typealias",/unowned\(safe\)/,/unowned\(unsafe\)/,"unowned","var","weak","where","while","willSet"],o=["false","nil","true"],l=["assignment","associativity","higherThan","left","lowerThan","none","right"],m=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warn_unqualified_access","#warning"],p=["abs","all","any","assert","assertionFailure","debugPrint","dump","fatalError","getVaList","isKnownUniquelyReferenced","max","min","numericCast","pointwiseMax","pointwiseMin","precondition","preconditionFailure","print","readLine","repeatElement","sequence","stride","swap","swift_unboxFromSwiftValueWithType","transcode","type","unsafeBitCast","unsafeDowncast","withExtendedLifetime","withUnsafeMutablePointer","withUnsafePointer","withVaList","withoutActuallyEscaping","zip"],d=n(/[/=\-+!*%<>&|^~?]/,/[\u00A1-\u00A7]/,/[\u00A9\u00AB]/,/[\u00AC\u00AE]/,/[\u00B0\u00B1]/,/[\u00B6\u00BB\u00BF\u00D7\u00F7]/,/[\u2016-\u2017]/,/[\u2020-\u2027]/,/[\u2030-\u203E]/,/[\u2041-\u2053]/,/[\u2055-\u205E]/,/[\u2190-\u23FF]/,/[\u2500-\u2775]/,/[\u2794-\u2BFF]/,/[\u2E00-\u2E7F]/,/[\u3001-\u3003]/,/[\u3008-\u3020]/,/[\u3030]/),F=n(d,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),b=t(d,F,"*"),h=n(/[a-zA-Z_]/,/[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/,/[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/,/[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/,/[\u1E00-\u1FFF]/,/[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/,/[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/,/[\u2C00-\u2DFF\u2E80-\u2FFF]/,/[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/,/[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/,/[\uFE47-\uFEFE\uFF00-\uFFFD]/),f=n(h,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),w=t(h,f,"*"),y=t(/[A-Z]/,f,"*"),g=["autoclosure",t(/convention\(/,n("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",t(/objc\(/,w,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","resultBuilder","testable","UIApplicationMain","unknown","usableFromInline"],E=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"] +;return e=>{const d={match:/\s+/,relevance:0},h=e.COMMENT("/\\*","\\*/",{ +contains:["self"]}),v=[e.C_LINE_COMMENT_MODE,h],A={match:[/\./,n(...s,...u)], +className:{2:"keyword"}},N={match:t(/\./,n(...r)),relevance:0 +},C=r.filter((e=>"string"==typeof e)).concat(["_|0"]),D={variants:[{ +className:"keyword", +match:n(...r.filter((e=>"string"!=typeof e)).concat(c).map(i),...u)}]},k={ +$pattern:n(/\b\w+/,/#\w+/),keyword:C.concat(m),literal:o},B=[A,N,D],_=[{ +match:t(/\./,n(...p)),relevance:0},{className:"built_in", +match:t(/\b/,n(...p),/(?=\()/)}],S={match:/->/,relevance:0},M=[S,{ +className:"operator",relevance:0,variants:[{match:b},{match:`\\.(\\.|${F})+`}] +}],x="([0-9a-fA-F]_*)+",I={className:"number",relevance:0,variants:[{ +match:"\\b(([0-9]_*)+)(\\.(([0-9]_*)+))?([eE][+-]?(([0-9]_*)+))?\\b"},{ +match:`\\b0x(${x})(\\.(${x}))?([pP][+-]?(([0-9]_*)+))?\\b`},{ +match:/\b0o([0-7]_*)+\b/},{match:/\b0b([01]_*)+\b/}]},L=(e="")=>({ +className:"subst",variants:[{match:t(/\\/,e,/[0\\tnr"']/)},{ +match:t(/\\/,e,/u\{[0-9a-fA-F]{1,8}\}/)}]}),O=(e="")=>({className:"subst", +match:t(/\\/,e,/[\t ]*(?:[\r\n]|\r\n)/)}),T=(e="")=>({className:"subst", +label:"interpol",begin:t(/\\/,e,/\(/),end:/\)/}),$=(e="")=>({begin:t(e,/"""/), +end:t(/"""/,e),contains:[L(e),O(e),T(e)]}),j=(e="")=>({begin:t(e,/"/), +end:t(/"/,e),contains:[L(e),T(e)]}),P={className:"string", +variants:[$(),$("#"),$("##"),$("###"),j(),j("#"),j("##"),j("###")]},K={ +match:t(/`/,w,/`/)},z=[K,{className:"variable",match:/\$\d+/},{ +className:"variable",match:`\\$${f}+`}],q=[{match:/(@|#(un)?)available/, +className:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:E, +contains:[...M,I,P]}]}},{className:"keyword",match:t(/@/,n(...g))},{ +className:"meta",match:t(/@/,w)}],U={match:a(/\b[A-Z]/),relevance:0,contains:[{ +className:"type", +match:t(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,f,"+") +},{className:"type",match:y,relevance:0},{match:/[?!]+/,relevance:0},{ +match:/\.\.\./,relevance:0},{match:t(/\s+&\s+/,a(y)),relevance:0}]},Z={ +begin:/</,end:/>/,keywords:k,contains:[...v,...B,...q,S,U]};U.contains.push(Z) +;const V={begin:/\(/,end:/\)/,relevance:0,keywords:k,contains:["self",{ +match:t(w,/\s*:/),keywords:"_|0",relevance:0 +},...v,...B,..._,...M,I,P,...z,...q,U]},W={begin:/</,end:/>/,contains:[...v,U] +},G={begin:/\(/,end:/\)/,keywords:k,contains:[{ +begin:n(a(t(w,/\s*:/)),a(t(w,/\s+/,w,/\s*:/))),end:/:/,relevance:0,contains:[{ +className:"keyword",match:/\b_\b/},{className:"params",match:w}] +},...v,...B,...M,I,P,...q,U,V],endsParent:!0,illegal:/["']/},R={ +match:[/func/,/\s+/,n(K.match,w,b)],className:{1:"keyword",3:"title.function"}, +contains:[W,G,d],illegal:[/\[/,/%/]},X={ +match:[/\b(?:subscript|init[?!]?)/,/\s*(?=[<(])/],className:{1:"keyword"}, +contains:[W,G,d],illegal:/\[|%/},H={match:[/operator/,/\s+/,b],className:{ +1:"keyword",3:"title"}},J={begin:[/precedencegroup/,/\s+/,y],className:{ +1:"keyword",3:"title"},contains:[U],keywords:[...l,...o],end:/}/} +;for(const e of P.variants){const a=e.contains.find((e=>"interpol"===e.label)) +;a.keywords=k;const t=[...B,..._,...M,I,P,...z];a.contains=[...t,{begin:/\(/, +end:/\)/,contains:["self",...t]}]}return{name:"Swift",keywords:k, +contains:[...v,R,X,{beginKeywords:"struct protocol class extension enum actor", +end:"\\{",excludeEnd:!0,keywords:k,contains:[e.inherit(e.TITLE_MODE,{ +className:"title.class",begin:/[A-Za-z$_][\u00C0-\u02B80-9A-Za-z$_]*/}),...B] +},H,J,{beginKeywords:"import",end:/$/,contains:[...v],relevance:0 +},...B,..._,...M,I,P,...z,...q,U,V]}}})();hljs.registerLanguage("swift",e)})();/*! `dsconfig` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({keywords:"dsconfig",contains:[{ +className:"keyword",begin:"^dsconfig",end:/\s/,excludeEnd:!0,relevance:10},{ +className:"built_in",begin:/(list|create|get|set|delete)-(\w+)/,end:/\s/, +excludeEnd:!0,illegal:"!@#$%^&*()",relevance:10},{className:"built_in", +begin:/--(\w+)/,end:/\s/,excludeEnd:!0},{className:"string",begin:/"/,end:/"/},{ +className:"string",begin:/'/,end:/'/},{className:"string",begin:/[\w\-?]+:\w+/, +end:/\W/,relevance:0},{className:"string",begin:/\w+(\-\w+)*/,end:/(?=\W)/, +relevance:0},e.HASH_COMMENT_MODE]})})();hljs.registerLanguage("dsconfig",e)})();/*! `perl` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const n=e.regex,t=/[dualxmsipngr]{0,12}/,r={$pattern:/[\w.]+/, +keyword:"abs accept alarm and atan2 bind binmode bless break caller chdir chmod chomp chop chown chr chroot close closedir connect continue cos crypt dbmclose dbmopen defined delete die do dump each else elsif endgrent endhostent endnetent endprotoent endpwent endservent eof eval exec exists exit exp fcntl fileno flock for foreach fork format formline getc getgrent getgrgid getgrnam gethostbyaddr gethostbyname gethostent getlogin getnetbyaddr getnetbyname getnetent getpeername getpgrp getpriority getprotobyname getprotobynumber getprotoent getpwent getpwnam getpwuid getservbyname getservbyport getservent getsockname getsockopt given glob gmtime goto grep gt hex if index int ioctl join keys kill last lc lcfirst length link listen local localtime log lstat lt ma map mkdir msgctl msgget msgrcv msgsnd my ne next no not oct open opendir or ord our pack package pipe pop pos print printf prototype push q|0 qq quotemeta qw qx rand read readdir readline readlink readpipe recv redo ref rename require reset return reverse rewinddir rindex rmdir say scalar seek seekdir select semctl semget semop send setgrent sethostent setnetent setpgrp setpriority setprotoent setpwent setservent setsockopt shift shmctl shmget shmread shmwrite shutdown sin sleep socket socketpair sort splice split sprintf sqrt srand stat state study sub substr symlink syscall sysopen sysread sysseek system syswrite tell telldir tie tied time times tr truncate uc ucfirst umask undef unless unlink unpack unshift untie until use utime values vec wait waitpid wantarray warn when while write x|0 xor y|0" +},s={className:"subst",begin:"[$@]\\{",end:"\\}",keywords:r},i={begin:/->\{/, +end:/\}/},a={variants:[{begin:/\$\d/},{ +begin:n.concat(/[$%@](\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/,"(?![A-Za-z])(?![@$%])") +},{begin:/[$%@][^\s\w{]/,relevance:0}] +},c=[e.BACKSLASH_ESCAPE,s,a],o=[/!/,/\//,/\|/,/\?/,/'/,/"/,/#/],g=(e,r,s="\\1")=>{ +const i="\\1"===s?s:n.concat(s,r) +;return n.concat(n.concat("(?:",e,")"),r,/(?:\\.|[^\\\/])*?/,i,/(?:\\.|[^\\\/])*?/,s,t) +},l=(e,r,s)=>n.concat(n.concat("(?:",e,")"),r,/(?:\\.|[^\\\/])*?/,s,t),d=[a,e.HASH_COMMENT_MODE,e.COMMENT(/^=\w/,/=cut/,{ +endsWithParent:!0}),i,{className:"string",contains:c,variants:[{ +begin:"q[qwxr]?\\s*\\(",end:"\\)",relevance:5},{begin:"q[qwxr]?\\s*\\[", +end:"\\]",relevance:5},{begin:"q[qwxr]?\\s*\\{",end:"\\}",relevance:5},{ +begin:"q[qwxr]?\\s*\\|",end:"\\|",relevance:5},{begin:"q[qwxr]?\\s*<",end:">", +relevance:5},{begin:"qw\\s+q",end:"q",relevance:5},{begin:"'",end:"'", +contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"'},{begin:"`",end:"`", +contains:[e.BACKSLASH_ESCAPE]},{begin:/\{\w+\}/,relevance:0},{ +begin:"-?\\w+\\s*=>",relevance:0}]},{className:"number", +begin:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b", +relevance:0},{ +begin:"(\\/\\/|"+e.RE_STARTERS_RE+"|\\b(split|return|print|reverse|grep)\\b)\\s*", +keywords:"split return print reverse grep",relevance:0, +contains:[e.HASH_COMMENT_MODE,{className:"regexp",variants:[{ +begin:g("s|tr|y",n.either(...o,{capture:!0}))},{begin:g("s|tr|y","\\(","\\)")},{ +begin:g("s|tr|y","\\[","\\]")},{begin:g("s|tr|y","\\{","\\}")}],relevance:2},{ +className:"regexp",variants:[{begin:/(m|qr)\/\//,relevance:0},{ +begin:l("(?:m|qr)?",/\//,/\//)},{begin:l("m|qr",n.either(...o,{capture:!0 +}),/\1/)},{begin:l("m|qr",/\(/,/\)/)},{begin:l("m|qr",/\[/,/\]/)},{ +begin:l("m|qr",/\{/,/\}/)}]}]},{className:"function",beginKeywords:"sub", +end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE]},{ +begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$", +subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}] +}];return s.contains=d,i.contains=d,{name:"Perl",aliases:["pl","pm"],keywords:r, +contains:d}}})();hljs.registerLanguage("perl",e)})();/*! `less` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict" +;const e=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],t=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],r=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],i=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],o=["align-content","align-items","align-self","all","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","content","content-visibility","counter-increment","counter-reset","cue","cue-after","cue-before","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-synthesis","font-variant","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","gap","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inline-size","isolation","justify-content","left","letter-spacing","line-break","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","pause","pause-after","pause-before","perspective","perspective-origin","pointer-events","position","quotes","resize","rest","rest-after","rest-before","right","row-gap","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","speak","speak-as","src","tab-size","table-layout","text-align","text-align-all","text-align-last","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-box","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","z-index"].reverse(),n=r.concat(i) +;return a=>{const l=(e=>({IMPORTANT:{scope:"meta",begin:"!important"}, +BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number", +begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{ +className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{ +scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$", +contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{ +scope:"number", +begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?", +relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z][A-Za-z0-9_-]*/} +}))(a),s=n,d="([\\w-]+|@\\{[\\w-]+\\})",c=[],g=[],b=e=>({className:"string", +begin:"~?"+e+".*?"+e}),m=(e,t,r)=>({className:e,begin:t,relevance:r}),p={ +$pattern:/[a-z-]+/,keyword:"and or not only",attribute:t.join(" ")},u={ +begin:"\\(",end:"\\)",contains:g,keywords:p,relevance:0} +;g.push(a.C_LINE_COMMENT_MODE,a.C_BLOCK_COMMENT_MODE,b("'"),b('"'),l.CSS_NUMBER_MODE,{ +begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]", +excludeEnd:!0} +},l.HEXCOLOR,u,m("variable","@@?[\\w-]+",10),m("variable","@\\{[\\w-]+\\}"),m("built_in","~?`[^`]*?`"),{ +className:"attribute",begin:"[\\w-]+\\s*:",end:":",returnBegin:!0,excludeEnd:!0 +},l.IMPORTANT,{beginKeywords:"and not"},l.FUNCTION_DISPATCH);const h=g.concat({ +begin:/\{/,end:/\}/,contains:c}),f={beginKeywords:"when",endsWithParent:!0, +contains:[{beginKeywords:"and not"}].concat(g)},k={begin:d+"\\s*:", +returnBegin:!0,end:/[;}]/,relevance:0,contains:[{begin:/-(webkit|moz|ms|o)-/ +},l.CSS_VARIABLE,{className:"attribute",begin:"\\b("+o.join("|")+")\\b", +end:/(?=:)/,starts:{endsWithParent:!0,illegal:"[<=$]",relevance:0,contains:g}}] +},w={className:"keyword", +begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b", +starts:{end:"[;{}]",keywords:p,returnEnd:!0,contains:g,relevance:0}},v={ +className:"variable",variants:[{begin:"@[\\w-]+\\s*:",relevance:15},{ +begin:"@[\\w-]+"}],starts:{end:"[;}]",returnEnd:!0,contains:h}},y={variants:[{ +begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:d,end:/\{/}],returnBegin:!0, +returnEnd:!0,illegal:"[<='$\"]",relevance:0, +contains:[a.C_LINE_COMMENT_MODE,a.C_BLOCK_COMMENT_MODE,f,m("keyword","all\\b"),m("variable","@\\{[\\w-]+\\}"),{ +begin:"\\b("+e.join("|")+")\\b",className:"selector-tag" +},l.CSS_NUMBER_MODE,m("selector-tag",d,0),m("selector-id","#"+d),m("selector-class","\\."+d,0),m("selector-tag","&",0),l.ATTRIBUTE_SELECTOR_MODE,{ +className:"selector-pseudo",begin:":("+r.join("|")+")"},{ +className:"selector-pseudo",begin:":(:)?("+i.join("|")+")"},{begin:/\(/, +end:/\)/,relevance:0,contains:h},{begin:"!important"},l.FUNCTION_DISPATCH]},x={ +begin:`[\\w-]+:(:)?(${s.join("|")})`,returnBegin:!0,contains:[y]} +;return c.push(a.C_LINE_COMMENT_MODE,a.C_BLOCK_COMMENT_MODE,w,v,x,k,y,f,l.FUNCTION_DISPATCH), +{name:"Less",case_insensitive:!0,illegal:"[=>'/<($\"]",contains:c}}})() +;hljs.registerLanguage("less",e)})();/*! `julia-repl` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var a=(()=>{"use strict";return a=>({name:"Julia REPL",contains:[{ +className:"meta.prompt",begin:/^julia>/,relevance:10,starts:{end:/^(?![ ]{6})/, +subLanguage:"julia"}}],aliases:["jldoctest"]})})() +;hljs.registerLanguage("julia-repl",a)})();/*! `nix` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n={ +keyword:["rec","with","let","in","inherit","assert","if","else","then"], +literal:["true","false","or","and","null"], +built_in:["import","abort","baseNameOf","dirOf","isNull","builtins","map","removeAttrs","throw","toString","derivation"] +},s={className:"subst",begin:/\$\{/,end:/\}/,keywords:n},a={className:"string", +contains:[{className:"char.escape",begin:/''\$/},s],variants:[{begin:"''", +end:"''"},{begin:'"',end:'"'}] +},i=[e.NUMBER_MODE,e.HASH_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,a,{ +begin:/[a-zA-Z0-9-_]+(\s*=)/,returnBegin:!0,relevance:0,contains:[{ +className:"attr",begin:/\S+/,relevance:.2}]}];return s.contains=i,{name:"Nix", +aliases:["nixos"],keywords:n,contains:i}}})();hljs.registerLanguage("nix",e) +})();/*! `gcode` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const a=e.inherit(e.C_NUMBER_MODE,{ +begin:"([-+]?((\\.\\d+)|(\\d+)(\\.\\d*)?))|"+e.C_NUMBER_RE +}),n=[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.COMMENT(/\(/,/\)/),a,e.inherit(e.APOS_STRING_MODE,{ +illegal:null}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),{className:"name", +begin:"([G])([0-9]+\\.?[0-9]?)"},{className:"name", +begin:"([M])([0-9]+\\.?[0-9]?)"},{className:"attr",begin:"(VC|VS|#)", +end:"(\\d+)"},{className:"attr",begin:"(VZOFX|VZOFY|VZOFZ)"},{ +className:"built_in", +begin:"(ATAN|ABS|ACOS|ASIN|SIN|COS|EXP|FIX|FUP|ROUND|LN|TAN)(\\[)",contains:[a], +end:"\\]"},{className:"symbol",variants:[{begin:"N",end:"\\d+",illegal:"\\W"}]}] +;return{name:"G-code (ISO 6983)",aliases:["nc"],case_insensitive:!0,keywords:{ +$pattern:"[A-Z_][A-Z0-9_.]*", +keyword:"IF DO WHILE ENDWHILE CALL ENDIF SUB ENDSUB GOTO REPEAT ENDREPEAT EQ LT GT NE GE LE OR XOR" +},contains:[{className:"meta",begin:"%"},{className:"meta",begin:"([O])([0-9]+)" +}].concat(n)}}})();hljs.registerLanguage("gcode",e)})();/*! `nsis` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const t=e.regex,n={ +className:"variable.constant", +begin:t.concat(/\$/,t.either("ADMINTOOLS","APPDATA","CDBURN_AREA","CMDLINE","COMMONFILES32","COMMONFILES64","COMMONFILES","COOKIES","DESKTOP","DOCUMENTS","EXEDIR","EXEFILE","EXEPATH","FAVORITES","FONTS","HISTORY","HWNDPARENT","INSTDIR","INTERNET_CACHE","LANGUAGE","LOCALAPPDATA","MUSIC","NETHOOD","OUTDIR","PICTURES","PLUGINSDIR","PRINTHOOD","PROFILE","PROGRAMFILES32","PROGRAMFILES64","PROGRAMFILES","QUICKLAUNCH","RECENT","RESOURCES_LOCALIZED","RESOURCES","SENDTO","SMPROGRAMS","SMSTARTUP","STARTMENU","SYSDIR","TEMP","TEMPLATES","VIDEOS","WINDIR")) +},i={className:"variable",begin:/\$+\{[\!\w.:-]+\}/},r={className:"variable", +begin:/\$+\w[\w\.]*/,illegal:/\(\)\{\}/},a={className:"variable", +begin:/\$+\([\w^.:!-]+\)/},l={className:"params", +begin:t.either("ARCHIVE","FILE_ATTRIBUTE_ARCHIVE","FILE_ATTRIBUTE_NORMAL","FILE_ATTRIBUTE_OFFLINE","FILE_ATTRIBUTE_READONLY","FILE_ATTRIBUTE_SYSTEM","FILE_ATTRIBUTE_TEMPORARY","HKCR","HKCU","HKDD","HKEY_CLASSES_ROOT","HKEY_CURRENT_CONFIG","HKEY_CURRENT_USER","HKEY_DYN_DATA","HKEY_LOCAL_MACHINE","HKEY_PERFORMANCE_DATA","HKEY_USERS","HKLM","HKPD","HKU","IDABORT","IDCANCEL","IDIGNORE","IDNO","IDOK","IDRETRY","IDYES","MB_ABORTRETRYIGNORE","MB_DEFBUTTON1","MB_DEFBUTTON2","MB_DEFBUTTON3","MB_DEFBUTTON4","MB_ICONEXCLAMATION","MB_ICONINFORMATION","MB_ICONQUESTION","MB_ICONSTOP","MB_OK","MB_OKCANCEL","MB_RETRYCANCEL","MB_RIGHT","MB_RTLREADING","MB_SETFOREGROUND","MB_TOPMOST","MB_USERICON","MB_YESNO","NORMAL","OFFLINE","READONLY","SHCTX","SHELL_CONTEXT","SYSTEM|TEMPORARY") +},s={className:"keyword", +begin:t.concat(/!/,t.either("addincludedir","addplugindir","appendfile","cd","define","delfile","echo","else","endif","error","execute","finalize","getdllversion","gettlbversion","if","ifdef","ifmacrodef","ifmacrondef","ifndef","include","insertmacro","macro","macroend","makensis","packhdr","searchparse","searchreplace","system","tempfile","undef","uninstfinalize","verbose","warning")) +},o={className:"string",variants:[{begin:'"',end:'"'},{begin:"'",end:"'"},{ +begin:"`",end:"`"}],illegal:/\n/,contains:[{className:"char.escape", +begin:/\$(\\[nrt]|\$)/},n,i,r,a]},S={ +match:[/Function/,/\s+/,t.concat(/(\.)?/,e.IDENT_RE)],scope:{1:"keyword", +3:"title.function"}};return{name:"NSIS",case_insensitive:!0,keywords:{ +keyword:["Abort","AddBrandingImage","AddSize","AllowRootDirInstall","AllowSkipFiles","AutoCloseWindow","BGFont","BGGradient","BrandingText","BringToFront","Call","CallInstDLL","Caption","ChangeUI","CheckBitmap","ClearErrors","CompletedText","ComponentText","CopyFiles","CRCCheck","CreateDirectory","CreateFont","CreateShortCut","Delete","DeleteINISec","DeleteINIStr","DeleteRegKey","DeleteRegValue","DetailPrint","DetailsButtonText","DirText","DirVar","DirVerify","EnableWindow","EnumRegKey","EnumRegValue","Exch","Exec","ExecShell","ExecShellWait","ExecWait","ExpandEnvStrings","File","FileBufSize","FileClose","FileErrorText","FileOpen","FileRead","FileReadByte","FileReadUTF16LE","FileReadWord","FileWriteUTF16LE","FileSeek","FileWrite","FileWriteByte","FileWriteWord","FindClose","FindFirst","FindNext","FindWindow","FlushINI","GetCurInstType","GetCurrentAddress","GetDlgItem","GetDLLVersion","GetDLLVersionLocal","GetErrorLevel","GetFileTime","GetFileTimeLocal","GetFullPathName","GetFunctionAddress","GetInstDirError","GetKnownFolderPath","GetLabelAddress","GetTempFileName","GetWinVer","Goto","HideWindow","Icon","IfAbort","IfErrors","IfFileExists","IfRebootFlag","IfRtlLanguage","IfShellVarContextAll","IfSilent","InitPluginsDir","InstallButtonText","InstallColors","InstallDir","InstallDirRegKey","InstProgressFlags","InstType","InstTypeGetText","InstTypeSetText","Int64Cmp","Int64CmpU","Int64Fmt","IntCmp","IntCmpU","IntFmt","IntOp","IntPtrCmp","IntPtrCmpU","IntPtrOp","IsWindow","LangString","LicenseBkColor","LicenseData","LicenseForceSelection","LicenseLangString","LicenseText","LoadAndSetImage","LoadLanguageFile","LockWindow","LogSet","LogText","ManifestDPIAware","ManifestLongPathAware","ManifestMaxVersionTested","ManifestSupportedOS","MessageBox","MiscButtonText","Name|0","Nop","OutFile","Page","PageCallbacks","PEAddResource","PEDllCharacteristics","PERemoveResource","PESubsysVer","Pop","Push","Quit","ReadEnvStr","ReadINIStr","ReadRegDWORD","ReadRegStr","Reboot","RegDLL","Rename","RequestExecutionLevel","ReserveFile","Return","RMDir","SearchPath","SectionGetFlags","SectionGetInstTypes","SectionGetSize","SectionGetText","SectionIn","SectionSetFlags","SectionSetInstTypes","SectionSetSize","SectionSetText","SendMessage","SetAutoClose","SetBrandingImage","SetCompress","SetCompressor","SetCompressorDictSize","SetCtlColors","SetCurInstType","SetDatablockOptimize","SetDateSave","SetDetailsPrint","SetDetailsView","SetErrorLevel","SetErrors","SetFileAttributes","SetFont","SetOutPath","SetOverwrite","SetRebootFlag","SetRegView","SetShellVarContext","SetSilent","ShowInstDetails","ShowUninstDetails","ShowWindow","SilentInstall","SilentUnInstall","Sleep","SpaceTexts","StrCmp","StrCmpS","StrCpy","StrLen","SubCaption","Unicode","UninstallButtonText","UninstallCaption","UninstallIcon","UninstallSubCaption","UninstallText","UninstPage","UnRegDLL","Var","VIAddVersionKey","VIFileVersion","VIProductVersion","WindowIcon","WriteINIStr","WriteRegBin","WriteRegDWORD","WriteRegExpandStr","WriteRegMultiStr","WriteRegNone","WriteRegStr","WriteUninstaller","XPStyle"], +literal:["admin","all","auto","both","bottom","bzip2","colored","components","current","custom","directory","false","force","hide","highest","ifdiff","ifnewer","instfiles","lastused","leave","left","license","listonly","lzma","nevershow","none","normal","notset","off","on","open","print","right","show","silent","silentlog","smooth","textonly","top","true","try","un.components","un.custom","un.directory","un.instfiles","un.license","uninstConfirm","user","Win10","Win7","Win8","WinVista","zlib"] +},contains:[e.HASH_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.COMMENT(";","$",{ +relevance:0}),{match:[/Var/,/\s+/,/(?:\/GLOBAL\s+)?/,/[A-Za-z][\w.]*/],scope:{ +1:"keyword",3:"params",4:"variable"}},S,{ +beginKeywords:"Function PageEx Section SectionGroup FunctionEnd SectionEnd" +},o,s,i,r,a,l,{className:"title.function",begin:/\w+::\w+/},e.NUMBER_MODE]}}})() +;hljs.registerLanguage("nsis",e)})();/*! `erb` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"ERB",subLanguage:"xml", +contains:[e.COMMENT("<%#","%>"),{begin:"<%[%=-]?",end:"[%-]?%>", +subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0}]})})() +;hljs.registerLanguage("erb",e)})();/*! `flix` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Flix",keywords:{ +keyword:["case","class","def","else","enum","if","impl","import","in","lat","rel","index","let","match","namespace","switch","type","yield","with"], +literal:["true","false"]}, +contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"string", +begin:/'(.|\\[xXuU][a-zA-Z0-9]+)'/},{className:"string",variants:[{begin:'"', +end:'"'}]},{className:"function",beginKeywords:"def",end:/[:={\[(\n;]/, +excludeEnd:!0,contains:[{className:"title",relevance:0, +begin:/[^0-9\n\t "'(),.`{}\[\]:;][^\n\t "'(),.`{}\[\]:;]+|[^0-9\n\t "'(),.`{}\[\]:;=]/ +}]},e.C_NUMBER_MODE]})})();hljs.registerLanguage("flix",e)})();/*! `roboconf` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n="[a-zA-Z-_][^\\n{]+\\{",a={ +className:"attribute",begin:/[a-zA-Z-_]+/,end:/\s*:/,excludeEnd:!0,starts:{ +end:";",relevance:0,contains:[{className:"variable",begin:/\.[a-zA-Z-_]+/},{ +className:"keyword",begin:/\(optional\)/}]}};return{name:"Roboconf", +aliases:["graph","instances"],case_insensitive:!0,keywords:"import",contains:[{ +begin:"^facet "+n,end:/\}/,keywords:"facet",contains:[a,e.HASH_COMMENT_MODE]},{ +begin:"^\\s*instance of "+n,end:/\}/, +keywords:"name count channels instance-data instance-state instance of", +illegal:/\S/,contains:["self",a,e.HASH_COMMENT_MODE]},{begin:"^"+n,end:/\}/, +contains:[a,e.HASH_COMMENT_MODE]},e.HASH_COMMENT_MODE]}}})() +;hljs.registerLanguage("roboconf",e)})();/*! `step21` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"STEP Part 21", +aliases:["p21","step","stp"],case_insensitive:!0,keywords:{ +$pattern:"[A-Z_][A-Z0-9_.]*",keyword:["HEADER","ENDSEC","DATA"]},contains:[{ +className:"meta",begin:"ISO-10303-21;",relevance:10},{className:"meta", +begin:"END-ISO-10303-21;",relevance:10 +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.COMMENT("/\\*\\*!","\\*/"),e.C_NUMBER_MODE,e.inherit(e.APOS_STRING_MODE,{ +illegal:null}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),{ +className:"string",begin:"'",end:"'"},{className:"symbol",variants:[{begin:"#", +end:"\\d+",illegal:"\\W"}]}]})})();hljs.registerLanguage("step21",e)})();/*! `scala` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n=e.regex,a={className:"subst", +variants:[{begin:"\\$[A-Za-z0-9_]+"},{begin:/\$\{/,end:/\}/}]},s={ +className:"string",variants:[{begin:'"""',end:'"""'},{begin:'"',end:'"', +illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:'[a-z]+"',end:'"', +illegal:"\\n",contains:[e.BACKSLASH_ESCAPE,a]},{className:"string", +begin:'[a-z]+"""',end:'"""',contains:[a],relevance:10}]},i={className:"type", +begin:"\\b[A-Z][A-Za-z0-9_]*",relevance:0},t={className:"title", +begin:/[^0-9\n\t "'(),.`{}\[\]:;][^\n\t "'(),.`{}\[\]:;]+|[^0-9\n\t "'(),.`{}\[\]:;=]/, +relevance:0},l={className:"class",beginKeywords:"class object trait type", +end:/[:={\[\n;]/,excludeEnd:!0, +contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{ +beginKeywords:"extends with",relevance:10},{begin:/\[/,end:/\]/,excludeBegin:!0, +excludeEnd:!0,relevance:0,contains:[i]},{className:"params",begin:/\(/,end:/\)/, +excludeBegin:!0,excludeEnd:!0,relevance:0,contains:[i]},t]},r={ +className:"function",beginKeywords:"def",end:n.lookahead(/[:={\[(\n;]/), +contains:[t]};return{name:"Scala",keywords:{literal:"true false null", +keyword:"type yield lazy override def with val var sealed abstract private trait object if then forSome for while do throw finally protected extends import final return else break new catch super class case package default try this match continue throws implicit export enum given transparent" +}, +contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,s,i,r,l,e.C_NUMBER_MODE,{ +begin:[/^\s*/,"extension",/\s+(?=[[(])/],beginScope:{2:"keyword"}},{ +begin:[/^\s*/,/end/,/\s+/,/(extension\b)?/],beginScope:{2:"keyword",4:"keyword"} +},{match:/\.inline\b/},{begin:/\binline(?=\s)/,keywords:"inline"},{ +begin:[/\(\s*/,/using/,/\s+(?!\))/],beginScope:{2:"keyword"}},{className:"meta", +begin:"@[A-Za-z]+"}]}}})();hljs.registerLanguage("scala",e)})();/*! `mercury` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const i=e.COMMENT("%","$"),n=e.inherit(e.APOS_STRING_MODE,{relevance:0 +}),r=e.inherit(e.QUOTE_STRING_MODE,{relevance:0}) +;return r.contains=r.contains.slice(),r.contains.push({className:"subst", +begin:"\\\\[abfnrtv]\\|\\\\x[0-9a-fA-F]*\\\\\\|%[-+# *.0-9]*[dioxXucsfeEgGp]", +relevance:0}),{name:"Mercury",aliases:["m","moo"],keywords:{ +keyword:"module use_module import_module include_module end_module initialise mutable initialize finalize finalise interface implementation pred mode func type inst solver any_pred any_func is semidet det nondet multi erroneous failure cc_nondet cc_multi typeclass instance where pragma promise external trace atomic or_else require_complete_switch require_det require_semidet require_multi require_nondet require_cc_multi require_cc_nondet require_erroneous require_failure", +meta:"inline no_inline type_spec source_file fact_table obsolete memo loop_check minimal_model terminates does_not_terminate check_termination promise_equivalent_clauses foreign_proc foreign_decl foreign_code foreign_type foreign_import_module foreign_export_enum foreign_export foreign_enum may_call_mercury will_not_call_mercury thread_safe not_thread_safe maybe_thread_safe promise_pure promise_semipure tabled_for_io local untrailed trailed attach_to_io_state can_pass_as_mercury_type stable will_not_throw_exception may_modify_trail will_not_modify_trail may_duplicate may_not_duplicate affects_liveness does_not_affect_liveness doesnt_affect_liveness no_sharing unknown_sharing sharing", +built_in:"some all not if then else true fail false try catch catch_any semidet_true semidet_false semidet_fail impure_true impure semipure" +},contains:[{className:"built_in",variants:[{begin:"<=>"},{begin:"<=", +relevance:0},{begin:"=>",relevance:0},{begin:"/\\\\"},{begin:"\\\\/"}]},{ +className:"built_in",variants:[{begin:":-\\|--\x3e"},{begin:"=",relevance:0}] +},i,e.C_BLOCK_COMMENT_MODE,{className:"number",begin:"0'.\\|0[box][0-9a-fA-F]*" +},e.NUMBER_MODE,n,r,{begin:/:-/},{begin:/\.$/}]}}})() +;hljs.registerLanguage("mercury",e)})();/*! `aspectj` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const n=e.regex,t=["false","synchronized","int","abstract","float","private","char","boolean","static","null","if","const","for","true","while","long","throw","strictfp","finally","protected","import","native","final","return","void","enum","else","extends","implements","break","transient","new","catch","instanceof","byte","super","volatile","case","assert","short","package","default","double","public","try","this","switch","continue","throws","privileged","aspectOf","adviceexecution","proceed","cflowbelow","cflow","initialization","preinitialization","staticinitialization","withincode","target","within","execution","getWithinTypeName","handler","thisJoinPoint","thisJoinPointStaticPart","thisEnclosingJoinPointStaticPart","declare","parents","warning","error","soft","precedence","thisAspectInstance"],i=["get","set","args","call"] +;return{name:"AspectJ",keywords:t,illegal:/<\/|#/, +contains:[e.COMMENT(/\/\*\*/,/\*\//,{relevance:0,contains:[{begin:/\w+@/, +relevance:0},{className:"doctag",begin:/@[A-Za-z]+/}] +}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{ +className:"class",beginKeywords:"aspect",end:/[{;=]/,excludeEnd:!0, +illegal:/[:;"\[\]]/,contains:[{ +beginKeywords:"extends implements pertypewithin perthis pertarget percflowbelow percflow issingleton" +},e.UNDERSCORE_TITLE_MODE,{begin:/\([^\)]*/,end:/[)]+/,keywords:t.concat(i), +excludeEnd:!1}]},{className:"class",beginKeywords:"class interface",end:/[{;=]/, +excludeEnd:!0,relevance:0,keywords:"class interface",illegal:/[:"\[\]]/, +contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{ +beginKeywords:"pointcut after before around throwing returning",end:/[)]/, +excludeEnd:!1,illegal:/["\[\]]/,contains:[{ +begin:n.concat(e.UNDERSCORE_IDENT_RE,/\s*\(/),returnBegin:!0, +contains:[e.UNDERSCORE_TITLE_MODE]}]},{begin:/[:]/,returnBegin:!0,end:/[{;]/, +relevance:0,excludeEnd:!1,keywords:t,illegal:/["\[\]]/,contains:[{ +begin:n.concat(e.UNDERSCORE_IDENT_RE,/\s*\(/),keywords:t.concat(i),relevance:0 +},e.QUOTE_STRING_MODE]},{beginKeywords:"new throw",relevance:0},{ +className:"function", +begin:/\w+ +\w+(\.\w+)?\s*\([^\)]*\)\s*((throws)[\w\s,]+)?[\{;]/,returnBegin:!0, +end:/[{;=]/,keywords:t,excludeEnd:!0,contains:[{ +begin:n.concat(e.UNDERSCORE_IDENT_RE,/\s*\(/),returnBegin:!0,relevance:0, +contains:[e.UNDERSCORE_TITLE_MODE]},{className:"params",begin:/\(/,end:/\)/, +relevance:0,keywords:t, +contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE] +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},e.C_NUMBER_MODE,{ +className:"meta",begin:/@[A-Za-z]+/}]}}})();hljs.registerLanguage("aspectj",e) +})();/*! `mizar` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Mizar", +keywords:"environ vocabularies notations constructors definitions registrations theorems schemes requirements begin end definition registration cluster existence pred func defpred deffunc theorem proof let take assume then thus hence ex for st holds consider reconsider such that and in provided of as from be being by means equals implies iff redefine define now not or attr is mode suppose per cases set thesis contradiction scheme reserve struct correctness compatibility coherence symmetry assymetry reflexivity irreflexivity connectedness uniqueness commutativity idempotence involutiveness projectivity", +contains:[e.COMMENT("::","$")]})})();hljs.registerLanguage("mizar",e)})();/*! `gradle` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Gradle",case_insensitive:!0, +keywords:["task","project","allprojects","subprojects","artifacts","buildscript","configurations","dependencies","repositories","sourceSets","description","delete","from","into","include","exclude","source","classpath","destinationDir","includes","options","sourceCompatibility","targetCompatibility","group","flatDir","doLast","doFirst","flatten","todir","fromdir","ant","def","abstract","break","case","catch","continue","default","do","else","extends","final","finally","for","if","implements","instanceof","native","new","private","protected","public","return","static","switch","synchronized","throw","throws","transient","try","volatile","while","strictfp","package","import","false","null","super","this","true","antlrtask","checkstyle","codenarc","copy","boolean","byte","char","class","double","float","int","interface","long","short","void","compile","runTime","file","fileTree","abs","any","append","asList","asWritable","call","collect","compareTo","count","div","dump","each","eachByte","eachFile","eachLine","every","find","findAll","flatten","getAt","getErr","getIn","getOut","getText","grep","immutable","inject","inspect","intersect","invokeMethods","isCase","join","leftShift","minus","multiply","newInputStream","newOutputStream","newPrintWriter","newReader","newWriter","next","plus","pop","power","previous","print","println","push","putAt","read","readBytes","readLines","reverse","reverseEach","round","size","sort","splitEachLine","step","subMap","times","toInteger","toList","tokenize","upto","waitForOrKill","withPrintWriter","withReader","withStream","withWriter","withWriterAppend","write","writeLine"], +contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.NUMBER_MODE,e.REGEXP_MODE] +})})();hljs.registerLanguage("gradle",e)})();/*! `r` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const a=e.regex,n=/(?:(?:[a-zA-Z]|\.[._a-zA-Z])[._a-zA-Z0-9]*)|\.(?!\d)/,i=a.either(/0[xX][0-9a-fA-F]+\.[0-9a-fA-F]*[pP][+-]?\d+i?/,/0[xX][0-9a-fA-F]+(?:[pP][+-]?\d+)?[Li]?/,/(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?[Li]?/),s=/[=!<>:]=|\|\||&&|:::?|<-|<<-|->>|->|\|>|[-+*\/?!$&|:<=>@^~]|\*\*/,t=a.either(/[()]/,/[{}]/,/\[\[/,/[[\]]/,/\\/,/,/) +;return{name:"R",keywords:{$pattern:n, +keyword:"function if in break next repeat else for while", +literal:"NULL NA TRUE FALSE Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 NA_complex_|10", +built_in:"LETTERS letters month.abb month.name pi T F abs acos acosh all any anyNA Arg as.call as.character as.complex as.double as.environment as.integer as.logical as.null.default as.numeric as.raw asin asinh atan atanh attr attributes baseenv browser c call ceiling class Conj cos cosh cospi cummax cummin cumprod cumsum digamma dim dimnames emptyenv exp expression floor forceAndCall gamma gc.time globalenv Im interactive invisible is.array is.atomic is.call is.character is.complex is.double is.environment is.expression is.finite is.function is.infinite is.integer is.language is.list is.logical is.matrix is.na is.name is.nan is.null is.numeric is.object is.pairlist is.raw is.recursive is.single is.symbol lazyLoadDBfetch length lgamma list log max min missing Mod names nargs nzchar oldClass on.exit pos.to.env proc.time prod quote range Re rep retracemem return round seq_along seq_len seq.int sign signif sin sinh sinpi sqrt standardGeneric substitute sum switch tan tanh tanpi tracemem trigamma trunc unclass untracemem UseMethod xtfrm" +},contains:[e.COMMENT(/#'/,/$/,{contains:[{scope:"doctag",match:/@examples/, +starts:{end:a.lookahead(a.either(/\n^#'\s*(?=@[a-zA-Z]+)/,/\n^(?!#')/)), +endsParent:!0}},{scope:"doctag",begin:"@param",end:/$/,contains:[{ +scope:"variable",variants:[{match:n},{match:/`(?:\\.|[^`\\])+`/}],endsParent:!0 +}]},{scope:"doctag",match:/@[a-zA-Z]+/},{scope:"keyword",match:/\\[a-zA-Z]+/}] +}),e.HASH_COMMENT_MODE,{scope:"string",contains:[e.BACKSLASH_ESCAPE], +variants:[e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\(/,end:/\)(-*)"/ +}),e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\{/,end:/\}(-*)"/ +}),e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\[/,end:/\](-*)"/ +}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\(/,end:/\)(-*)'/ +}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\{/,end:/\}(-*)'/ +}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\[/,end:/\](-*)'/}),{begin:'"',end:'"', +relevance:0},{begin:"'",end:"'",relevance:0}]},{relevance:0,variants:[{scope:{ +1:"operator",2:"number"},match:[s,i]},{scope:{1:"operator",2:"number"}, +match:[/%[^%]*%/,i]},{scope:{1:"punctuation",2:"number"},match:[t,i]},{scope:{ +2:"number"},match:[/[^a-zA-Z0-9._]|^/,i]}]},{scope:{3:"operator"}, +match:[n,/\s+/,/<-/,/\s+/]},{scope:"operator",relevance:0,variants:[{match:s},{ +match:/%[^%]*%/}]},{scope:"punctuation",relevance:0,match:t},{begin:"`",end:"`", +contains:[{begin:/\\./}]}]}}})();hljs.registerLanguage("r",e)})();/*! `clean` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Clean",aliases:["icl","dcl"], +keywords:{ +keyword:["if","let","in","with","where","case","of","class","instance","otherwise","implementation","definition","system","module","from","import","qualified","as","special","code","inline","foreign","export","ccall","stdcall","generic","derive","infix","infixl","infixr"], +built_in:"Int Real Char Bool",literal:"True False"}, +contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,{ +begin:"->|<-[|:]?|#!?|>>=|\\{\\||\\|\\}|:==|=:|<>"}]})})() +;hljs.registerLanguage("clean",e)})();/*! `shell` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var s=(()=>{"use strict";return s=>({name:"Shell Session", +aliases:["console","shellsession"],contains:[{className:"meta.prompt", +begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/, +subLanguage:"bash"}}]})})();hljs.registerLanguage("shell",s)})();/*! `csp` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var s=(()=>{"use strict";return s=>({name:"CSP",case_insensitive:!1, +keywords:{$pattern:"[a-zA-Z][a-zA-Z0-9_-]*", +keyword:["base-uri","child-src","connect-src","default-src","font-src","form-action","frame-ancestors","frame-src","img-src","manifest-src","media-src","object-src","plugin-types","report-uri","sandbox","script-src","style-src","trusted-types","unsafe-hashes","worker-src"] +},contains:[{className:"string",begin:"'",end:"'"},{className:"attribute", +begin:"^Content",end:":",excludeEnd:!0}]})})();hljs.registerLanguage("csp",s) +})();/*! `haskell` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n={ +variants:[e.COMMENT("--","$"),e.COMMENT(/\{-/,/-\}/,{contains:["self"]})]},a={ +className:"meta",begin:/\{-#/,end:/#-\}/},i={className:"meta",begin:"^#",end:"$" +},s={className:"type",begin:"\\b[A-Z][\\w']*",relevance:0},l={begin:"\\(", +end:"\\)",illegal:'"',contains:[a,i,{className:"type", +begin:"\\b[A-Z][\\w]*(\\((\\.\\.|,|\\w+)\\))?"},e.inherit(e.TITLE_MODE,{ +begin:"[_a-z][\\w']*"}),n]},t="([0-9a-fA-F]_*)+",c={className:"number", +relevance:0,variants:[{ +match:"\\b(([0-9]_*)+)(\\.(([0-9]_*)+))?([eE][+-]?(([0-9]_*)+))?\\b"},{ +match:`\\b0[xX]_*(${t})(\\.(${t}))?([pP][+-]?(([0-9]_*)+))?\\b`},{ +match:"\\b0[oO](([0-7]_*)+)\\b"},{match:"\\b0[bB](([01]_*)+)\\b"}]};return{ +name:"Haskell",aliases:["hs"], +keywords:"let in if then else case of where do module import hiding qualified type data newtype deriving class instance as default infix infixl infixr foreign export ccall stdcall cplusplus jvm dotnet safe unsafe family forall mdo proc rec", +contains:[{beginKeywords:"module",end:"where",keywords:"module where", +contains:[l,n],illegal:"\\W\\.|;"},{begin:"\\bimport\\b",end:"$", +keywords:"import qualified as hiding",contains:[l,n],illegal:"\\W\\.|;"},{ +className:"class",begin:"^(\\s*)?(class|instance)\\b",end:"where", +keywords:"class family instance where",contains:[s,l,n]},{className:"class", +begin:"\\b(data|(new)?type)\\b",end:"$", +keywords:"data family type newtype deriving",contains:[a,s,l,{begin:/\{/, +end:/\}/,contains:l.contains},n]},{beginKeywords:"default",end:"$", +contains:[s,l,n]},{beginKeywords:"infix infixl infixr",end:"$", +contains:[e.C_NUMBER_MODE,n]},{begin:"\\bforeign\\b",end:"$", +keywords:"foreign import export ccall stdcall cplusplus jvm dotnet safe unsafe", +contains:[s,e.QUOTE_STRING_MODE,n]},{className:"meta", +begin:"#!\\/usr\\/bin\\/env runhaskell",end:"$" +},a,i,e.QUOTE_STRING_MODE,c,s,e.inherit(e.TITLE_MODE,{begin:"^[_a-z][\\w']*" +}),n,{begin:"->|<-"}]}}})();hljs.registerLanguage("haskell",e)})();/*! `cal` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const n=e.regex,a=["div","mod","in","and","or","not","xor","asserterror","begin","case","do","downto","else","end","exit","for","local","if","of","repeat","then","to","until","while","with","var"],r=[e.C_LINE_COMMENT_MODE,e.COMMENT(/\{/,/\}/,{ +relevance:0}),e.COMMENT(/\(\*/,/\*\)/,{relevance:10})],t={className:"string", +begin:/'/,end:/'/,contains:[{begin:/''/}]},s={className:"string",begin:/(#\d+)+/ +},i={match:[/procedure/,/\s+/,/[a-zA-Z_][\w@]*/,/\s*/],scope:{1:"keyword", +3:"title.function"},contains:[{className:"params",begin:/\(/,end:/\)/, +keywords:a,contains:[t,s,e.NUMBER_MODE]},...r]},o={ +match:[/OBJECT/,/\s+/,n.either("Table","Form","Report","Dataport","Codeunit","XMLport","MenuSuite","Page","Query"),/\s+/,/\d+/,/\s+(?=[^\s])/,/.*/,/$/], +relevance:3,scope:{1:"keyword",3:"type",5:"number",7:"title"}};return{ +name:"C/AL",case_insensitive:!0,keywords:{keyword:a,literal:"false true"}, +illegal:/\/\*/,contains:[{match:/[\w]+(?=\=)/,scope:"attribute",relevance:0 +},t,s,{className:"number",begin:"\\b\\d+(\\.\\d+)?(DT|D|T)",relevance:0},{ +className:"string",begin:'"',end:'"'},e.NUMBER_MODE,o,i]}}})() +;hljs.registerLanguage("cal",e)})();/*! `fix` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"FIX",contains:[{ +begin:/[^\u2401\u0001]+/,end:/[\u2401\u0001]/,excludeEnd:!0,returnBegin:!0, +returnEnd:!1,contains:[{begin:/([^\u2401\u0001=]+)/,end:/=([^\u2401\u0001=]+)/, +returnEnd:!0,returnBegin:!1,className:"attr"},{begin:/=/,end:/([\u2401\u0001])/, +excludeEnd:!0,excludeBegin:!0,className:"string"}]}],case_insensitive:!0})})() +;hljs.registerLanguage("fix",e)})();/*! `accesslog` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const n=e.regex,a=["GET","POST","HEAD","PUT","DELETE","CONNECT","OPTIONS","PATCH","TRACE"] +;return{name:"Apache Access Log",contains:[{className:"number", +begin:/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}(:\d{1,5})?\b/,relevance:5},{ +className:"number",begin:/\b\d+\b/,relevance:0},{className:"string", +begin:n.concat(/"/,n.either(...a)),end:/"/,keywords:a,illegal:/\n/,relevance:5, +contains:[{begin:/HTTP\/[12]\.\d'/,relevance:5}]},{className:"string", +begin:/\[\d[^\]\n]{8,}\]/,illegal:/\n/,relevance:1},{className:"string", +begin:/\[/,end:/\]/,illegal:/\n/,relevance:0},{className:"string", +begin:/"Mozilla\/\d\.\d \(/,end:/"/,illegal:/\n/,relevance:3},{ +className:"string",begin:/"/,end:/"/,illegal:/\n/,relevance:0}]}}})() +;hljs.registerLanguage("accesslog",e)})();/*! `apache` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n={className:"number", +begin:/\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}(:\d{1,5})?/};return{ +name:"Apache config",aliases:["apacheconf"],case_insensitive:!0, +contains:[e.HASH_COMMENT_MODE,{className:"section",begin:/<\/?/,end:/>/, +contains:[n,{className:"number",begin:/:\d{1,5}/ +},e.inherit(e.QUOTE_STRING_MODE,{relevance:0})]},{className:"attribute", +begin:/\w+/,relevance:0,keywords:{ +_:["order","deny","allow","setenv","rewriterule","rewriteengine","rewritecond","documentroot","sethandler","errordocument","loadmodule","options","header","listen","serverroot","servername"] +},starts:{end:/$/,relevance:0,keywords:{literal:"on off all deny allow"}, +contains:[{className:"meta",begin:/\s\[/,end:/\]$/},{className:"variable", +begin:/[\$%]\{/,end:/\}/,contains:["self",{className:"number",begin:/[$%]\d+/}] +},n,{className:"number",begin:/\b\d+/},e.QUOTE_STRING_MODE]}}],illegal:/\S/}} +})();hljs.registerLanguage("apache",e)})();/*! `ocaml` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"OCaml",aliases:["ml"], +keywords:{$pattern:"[a-z_]\\w*!?", +keyword:"and as assert asr begin class constraint do done downto else end exception external for fun function functor if in include inherit! inherit initializer land lazy let lor lsl lsr lxor match method!|10 method mod module mutable new object of open! open or private rec sig struct then to try type val! val virtual when while with parser value", +built_in:"array bool bytes char exn|5 float int int32 int64 list lazy_t|5 nativeint|5 string unit in_channel out_channel ref", +literal:"true false"},illegal:/\/\/|>>/,contains:[{className:"literal", +begin:"\\[(\\|\\|)?\\]|\\(\\)",relevance:0},e.COMMENT("\\(\\*","\\*\\)",{ +contains:["self"]}),{className:"symbol",begin:"'[A-Za-z_](?!')[\\w']*"},{ +className:"type",begin:"`[A-Z][\\w']*"},{className:"type", +begin:"\\b[A-Z][\\w']*",relevance:0},{begin:"[a-z_]\\w*'[\\w']*",relevance:0 +},e.inherit(e.APOS_STRING_MODE,{className:"string",relevance:0 +}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),{className:"number", +begin:"\\b(0[xX][a-fA-F0-9_]+[Lln]?|0[oO][0-7_]+[Lln]?|0[bB][01_]+[Lln]?|[0-9][0-9_]*([Lln]|(\\.[0-9_]*)?([eE][-+]?[0-9_]+)?)?)", +relevance:0},{begin:/->/}]})})();hljs.registerLanguage("ocaml",e)})();/*! `matlab` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const a={relevance:0,contains:[{ +begin:"('|\\.')+"}]};return{name:"Matlab",keywords:{ +keyword:"arguments break case catch classdef continue else elseif end enumeration events for function global if methods otherwise parfor persistent properties return spmd switch try while", +built_in:"sin sind sinh asin asind asinh cos cosd cosh acos acosd acosh tan tand tanh atan atand atan2 atanh sec secd sech asec asecd asech csc cscd csch acsc acscd acsch cot cotd coth acot acotd acoth hypot exp expm1 log log1p log10 log2 pow2 realpow reallog realsqrt sqrt nthroot nextpow2 abs angle complex conj imag real unwrap isreal cplxpair fix floor ceil round mod rem sign airy besselj bessely besselh besseli besselk beta betainc betaln ellipj ellipke erf erfc erfcx erfinv expint gamma gammainc gammaln psi legendre cross dot factor isprime primes gcd lcm rat rats perms nchoosek factorial cart2sph cart2pol pol2cart sph2cart hsv2rgb rgb2hsv zeros ones eye repmat rand randn linspace logspace freqspace meshgrid accumarray size length ndims numel disp isempty isequal isequalwithequalnans cat reshape diag blkdiag tril triu fliplr flipud flipdim rot90 find sub2ind ind2sub bsxfun ndgrid permute ipermute shiftdim circshift squeeze isscalar isvector ans eps realmax realmin pi i|0 inf nan isnan isinf isfinite j|0 why compan gallery hadamard hankel hilb invhilb magic pascal rosser toeplitz vander wilkinson max min nanmax nanmin mean nanmean type table readtable writetable sortrows sort figure plot plot3 scatter scatter3 cellfun legend intersect ismember procrustes hold num2cell " +},illegal:'(//|"|#|/\\*|\\s+/\\w+)',contains:[{className:"function", +beginKeywords:"function",end:"$",contains:[e.UNDERSCORE_TITLE_MODE,{ +className:"params",variants:[{begin:"\\(",end:"\\)"},{begin:"\\[",end:"\\]"}]}] +},{className:"built_in",begin:/true|false/,relevance:0,starts:a},{ +begin:"[a-zA-Z][a-zA-Z_0-9]*('|\\.')+",relevance:0},{className:"number", +begin:e.C_NUMBER_RE,relevance:0,starts:a},{className:"string",begin:"'",end:"'", +contains:[{begin:"''"}]},{begin:/\]|\}|\)/,relevance:0,starts:a},{ +className:"string",begin:'"',end:'"',contains:[{begin:'""'}],starts:a +},e.COMMENT("^\\s*%\\{\\s*$","^\\s*%\\}\\s*$"),e.COMMENT("%","$")]}}})() +;hljs.registerLanguage("matlab",e)})();/*! `rib` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"RenderMan RIB", +keywords:"ArchiveRecord AreaLightSource Atmosphere Attribute AttributeBegin AttributeEnd Basis Begin Blobby Bound Clipping ClippingPlane Color ColorSamples ConcatTransform Cone CoordinateSystem CoordSysTransform CropWindow Curves Cylinder DepthOfField Detail DetailRange Disk Displacement Display End ErrorHandler Exposure Exterior Format FrameAspectRatio FrameBegin FrameEnd GeneralPolygon GeometricApproximation Geometry Hider Hyperboloid Identity Illuminate Imager Interior LightSource MakeCubeFaceEnvironment MakeLatLongEnvironment MakeShadow MakeTexture Matte MotionBegin MotionEnd NuPatch ObjectBegin ObjectEnd ObjectInstance Opacity Option Orientation Paraboloid Patch PatchMesh Perspective PixelFilter PixelSamples PixelVariance Points PointsGeneralPolygons PointsPolygons Polygon Procedural Projection Quantize ReadArchive RelativeDetail ReverseOrientation Rotate Scale ScreenWindow ShadingInterpolation ShadingRate Shutter Sides Skew SolidBegin SolidEnd Sphere SubdivisionMesh Surface TextureCoordinates Torus Transform TransformBegin TransformEnd TransformPoints Translate TrimCurve WorldBegin WorldEnd", +illegal:"</", +contains:[e.HASH_COMMENT_MODE,e.C_NUMBER_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE] +})})();hljs.registerLanguage("rib",e)})();/*! `gams` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const a=e.regex,n={ +keyword:"abort acronym acronyms alias all and assign binary card diag display else eq file files for free ge gt if integer le loop lt maximizing minimizing model models ne negative no not option options or ord positive prod put putpage puttl repeat sameas semicont semiint smax smin solve sos1 sos2 sum system table then until using while xor yes", +literal:"eps inf na", +built_in:"abs arccos arcsin arctan arctan2 Beta betaReg binomial ceil centropy cos cosh cvPower div div0 eDist entropy errorf execSeed exp fact floor frac gamma gammaReg log logBeta logGamma log10 log2 mapVal max min mod ncpCM ncpF ncpVUpow ncpVUsin normal pi poly power randBinomial randLinear randTriangle round rPower sigmoid sign signPower sin sinh slexp sllog10 slrec sqexp sqlog10 sqr sqrec sqrt tan tanh trunc uniform uniformInt vcPower bool_and bool_eqv bool_imp bool_not bool_or bool_xor ifThen rel_eq rel_ge rel_gt rel_le rel_lt rel_ne gday gdow ghour gleap gmillisec gminute gmonth gsecond gyear jdate jnow jstart jtime errorLevel execError gamsRelease gamsVersion handleCollect handleDelete handleStatus handleSubmit heapFree heapLimit heapSize jobHandle jobKill jobStatus jobTerminate licenseLevel licenseStatus maxExecError sleep timeClose timeComp timeElapsed timeExec timeStart" +},i={className:"symbol",variants:[{begin:/=[lgenxc]=/},{begin:/\$/}]},s={ +className:"comment",variants:[{begin:"'",end:"'"},{begin:'"',end:'"'}], +illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},o={begin:"/",end:"/",keywords:n, +contains:[s,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,e.C_NUMBER_MODE] +},t=/[a-z0-9&#*=?@\\><:,()$[\]_.{}!+%^-]+/,r={ +begin:/[a-z][a-z0-9_]*(\([a-z0-9_, ]*\))?[ \t]+/,excludeBegin:!0,end:"$", +endsWithParent:!0,contains:[s,o,{className:"comment", +begin:a.concat(t,a.anyNumberOfTimes(a.concat(/[ ]+/,t))),relevance:0}]};return{ +name:"GAMS",aliases:["gms"],case_insensitive:!0,keywords:n, +contains:[e.COMMENT(/^\$ontext/,/^\$offtext/),{className:"meta", +begin:"^\\$[a-z0-9]+",end:"$",returnBegin:!0,contains:[{className:"keyword", +begin:"^\\$[a-z0-9]+"}] +},e.COMMENT("^\\*","$"),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{ +beginKeywords:"set sets parameter parameters variable variables scalar scalars equation equations", +end:";", +contains:[e.COMMENT("^\\*","$"),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,o,r] +},{beginKeywords:"table",end:";",returnBegin:!0,contains:[{ +beginKeywords:"table",end:"$",contains:[r] +},e.COMMENT("^\\*","$"),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,e.C_NUMBER_MODE] +},{className:"function",begin:/^[a-z][a-z0-9_,\-+' ()$]+\.{2}/,returnBegin:!0, +contains:[{className:"title",begin:/^[a-z0-9_]+/},{className:"params", +begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0},i]},e.C_NUMBER_MODE,i]}}})() +;hljs.registerLanguage("gams",e)})();/*! `livescript` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict" +;const e=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],n=["true","false","null","undefined","NaN","Infinity"],a=[].concat(["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"]) +;return t=>{const r={ +keyword:e.concat(["then","unless","until","loop","of","by","when","and","or","is","isnt","not","it","that","otherwise","from","to","til","fallthrough","case","enum","native","list","map","__hasProp","__extends","__slice","__bind","__indexOf"]), +literal:n.concat(["yes","no","on","off","it","that","void"]), +built_in:a.concat(["npm","print"]) +},s="[A-Za-z$_](?:-[0-9A-Za-z$_]|[0-9A-Za-z$_])*",i=t.inherit(t.TITLE_MODE,{ +begin:s}),o={className:"subst",begin:/#\{/,end:/\}/,keywords:r},c={ +className:"subst",begin:/#[A-Za-z$_]/,end:/(?:-[0-9A-Za-z$_]|[0-9A-Za-z$_])*/, +keywords:r},l=[t.BINARY_NUMBER_MODE,{className:"number", +begin:"(\\b0[xX][a-fA-F0-9_]+)|(\\b\\d(\\d|_\\d)*(\\.(\\d(\\d|_\\d)*)?)?(_*[eE]([-+]\\d(_\\d|\\d)*)?)?[_a-z]*)", +relevance:0,starts:{end:"(\\s*/)?",relevance:0}},{className:"string",variants:[{ +begin:/'''/,end:/'''/,contains:[t.BACKSLASH_ESCAPE]},{begin:/'/,end:/'/, +contains:[t.BACKSLASH_ESCAPE]},{begin:/"""/,end:/"""/, +contains:[t.BACKSLASH_ESCAPE,o,c]},{begin:/"/,end:/"/, +contains:[t.BACKSLASH_ESCAPE,o,c]},{begin:/\\/,end:/(\s|$)/,excludeEnd:!0}]},{ +className:"regexp",variants:[{begin:"//",end:"//[gim]*", +contains:[o,t.HASH_COMMENT_MODE]},{ +begin:/\/(?![ *])(\\.|[^\\\n])*?\/[gim]*(?=\W)/}]},{begin:"@"+s},{begin:"``", +end:"``",excludeBegin:!0,excludeEnd:!0,subLanguage:"javascript"}];o.contains=l +;const d={className:"params",begin:"\\(",returnBegin:!0,contains:[{begin:/\(/, +end:/\)/,keywords:r,contains:["self"].concat(l)}]},g={variants:[{ +match:[/class\s+/,s,/\s+extends\s+/,s]},{match:[/class\s+/,s]}],scope:{ +2:"title.class",4:"title.class.inherited"},keywords:r};return{name:"LiveScript", +aliases:["ls"],keywords:r,illegal:/\/\*/, +contains:l.concat([t.COMMENT("\\/\\*","\\*\\/"),t.HASH_COMMENT_MODE,{ +begin:"(#=>|=>|\\|>>|-?->|!->)"},{className:"function",contains:[i,d], +returnBegin:!0,variants:[{ +begin:"("+s+"\\s*(?:=|:=)\\s*)?(\\(.*\\)\\s*)?\\B->\\*?",end:"->\\*?"},{ +begin:"("+s+"\\s*(?:=|:=)\\s*)?!?(\\(.*\\)\\s*)?\\B[-~]{1,2}>\\*?", +end:"[-~]{1,2}>\\*?"},{ +begin:"("+s+"\\s*(?:=|:=)\\s*)?(\\(.*\\)\\s*)?\\B!?[-~]{1,2}>\\*?", +end:"!?[-~]{1,2}>\\*?"}]},g,{begin:s+":",end:":",returnBegin:!0,returnEnd:!0, +relevance:0}])}}})();hljs.registerLanguage("livescript",e)})();/*! `n1ql` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"N1QL",case_insensitive:!0, +contains:[{ +beginKeywords:"build create index delete drop explain infer|10 insert merge prepare select update upsert|10", +end:/;/,keywords:{ +keyword:["all","alter","analyze","and","any","array","as","asc","begin","between","binary","boolean","break","bucket","build","by","call","case","cast","cluster","collate","collection","commit","connect","continue","correlate","cover","create","database","dataset","datastore","declare","decrement","delete","derived","desc","describe","distinct","do","drop","each","element","else","end","every","except","exclude","execute","exists","explain","fetch","first","flatten","for","force","from","function","grant","group","gsi","having","if","ignore","ilike","in","include","increment","index","infer","inline","inner","insert","intersect","into","is","join","key","keys","keyspace","known","last","left","let","letting","like","limit","lsm","map","mapping","matched","materialized","merge","minus","namespace","nest","not","number","object","offset","on","option","or","order","outer","over","parse","partition","password","path","pool","prepare","primary","private","privilege","procedure","public","raw","realm","reduce","rename","return","returning","revoke","right","role","rollback","satisfies","schema","select","self","semi","set","show","some","start","statistics","string","system","then","to","transaction","trigger","truncate","under","union","unique","unknown","unnest","unset","update","upsert","use","user","using","validate","value","valued","values","via","view","when","where","while","with","within","work","xor"], +literal:["true","false","null","missing|5"], +built_in:["array_agg","array_append","array_concat","array_contains","array_count","array_distinct","array_ifnull","array_length","array_max","array_min","array_position","array_prepend","array_put","array_range","array_remove","array_repeat","array_replace","array_reverse","array_sort","array_sum","avg","count","max","min","sum","greatest","least","ifmissing","ifmissingornull","ifnull","missingif","nullif","ifinf","ifnan","ifnanorinf","naninf","neginfif","posinfif","clock_millis","clock_str","date_add_millis","date_add_str","date_diff_millis","date_diff_str","date_part_millis","date_part_str","date_trunc_millis","date_trunc_str","duration_to_str","millis","str_to_millis","millis_to_str","millis_to_utc","millis_to_zone_name","now_millis","now_str","str_to_duration","str_to_utc","str_to_zone_name","decode_json","encode_json","encoded_size","poly_length","base64","base64_encode","base64_decode","meta","uuid","abs","acos","asin","atan","atan2","ceil","cos","degrees","e","exp","ln","log","floor","pi","power","radians","random","round","sign","sin","sqrt","tan","trunc","object_length","object_names","object_pairs","object_inner_pairs","object_values","object_inner_values","object_add","object_put","object_remove","object_unwrap","regexp_contains","regexp_like","regexp_position","regexp_replace","contains","initcap","length","lower","ltrim","position","repeat","replace","rtrim","split","substr","title","trim","upper","isarray","isatom","isboolean","isnumber","isobject","isstring","type","toarray","toatom","toboolean","tonumber","toobject","tostring"] +},contains:[{className:"string",begin:"'",end:"'",contains:[e.BACKSLASH_ESCAPE] +},{className:"string",begin:'"',end:'"',contains:[e.BACKSLASH_ESCAPE]},{ +className:"symbol",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE] +},e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE]},e.C_BLOCK_COMMENT_MODE]})})() +;hljs.registerLanguage("n1ql",e)})();/*! `rsl` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const t={ +match:[/(surface|displacement|light|volume|imager)/,/\s+/,e.IDENT_RE],scope:{ +1:"keyword",3:"title.class"}};return{name:"RenderMan RSL",keywords:{ +keyword:["while","for","if","do","return","else","break","extern","continue"], +built_in:["abs","acos","ambient","area","asin","atan","atmosphere","attribute","calculatenormal","ceil","cellnoise","clamp","comp","concat","cos","degrees","depth","Deriv","diffuse","distance","Du","Dv","environment","exp","faceforward","filterstep","floor","format","fresnel","incident","length","lightsource","log","match","max","min","mod","noise","normalize","ntransform","opposite","option","phong","pnoise","pow","printf","ptlined","radians","random","reflect","refract","renderinfo","round","setcomp","setxcomp","setycomp","setzcomp","shadow","sign","sin","smoothstep","specular","specularbrdf","spline","sqrt","step","tan","texture","textureinfo","trace","transform","vtransform","xcomp","ycomp","zcomp"], +type:["matrix","float","color","point","normal","vector"]},illegal:"</", +contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,e.C_NUMBER_MODE,{ +className:"meta",begin:"#",end:"$"},t,{ +beginKeywords:"illuminate illuminance gather",end:"\\("}]}}})() +;hljs.registerLanguage("rsl",e)})();/*! `groovy` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";function e(e,a={}){return a.variants=e,a} +return a=>{ +const n=a.regex,t="[A-Za-z0-9_$]+",r=e([a.C_LINE_COMMENT_MODE,a.C_BLOCK_COMMENT_MODE,a.COMMENT("/\\*\\*","\\*/",{ +relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag", +begin:"@[A-Za-z]+"}]})]),s={className:"regexp",begin:/~?\/[^\/\n]+\//, +contains:[a.BACKSLASH_ESCAPE] +},i=e([a.BINARY_NUMBER_MODE,a.C_NUMBER_MODE]),l=e([{begin:/"""/,end:/"""/},{ +begin:/'''/,end:/'''/},{begin:"\\$/",end:"/\\$",relevance:10 +},a.APOS_STRING_MODE,a.QUOTE_STRING_MODE],{className:"string"}),c={ +match:[/(class|interface|trait|enum|extends|implements)/,/\s+/,a.UNDERSCORE_IDENT_RE], +scope:{1:"keyword",3:"title.class"}};return{name:"Groovy",keywords:{ +"variable.language":"this super",literal:"true false null", +type:["byte","short","char","int","long","boolean","float","double","void"], +keyword:["def","as","in","assert","trait","abstract","static","volatile","transient","public","private","protected","synchronized","final","class","interface","enum","if","else","for","while","switch","case","break","default","continue","throw","throws","try","catch","finally","implements","extends","new","import","package","return","instanceof"] +},contains:[a.SHEBANG({binary:"groovy",relevance:10}),r,l,s,i,c,{ +className:"meta",begin:"@[A-Za-z]+",relevance:0},{className:"attr", +begin:t+"[ \t]*:",relevance:0},{begin:/\?/,end:/:/,relevance:0, +contains:[r,l,s,i,"self"]},{className:"symbol", +begin:"^[ \t]*"+n.lookahead(t+":"),excludeBegin:!0,end:t+":",relevance:0}], +illegal:/#|<\//}}})();hljs.registerLanguage("groovy",e)})();/*! `scheme` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const t="[^\\(\\)\\[\\]\\{\\}\",'`;#|\\\\\\s]+",n={$pattern:t, +built_in:"case-lambda call/cc class define-class exit-handler field import inherit init-field interface let*-values let-values let/ec mixin opt-lambda override protect provide public rename require require-for-syntax syntax syntax-case syntax-error unit/sig unless when with-syntax and begin call-with-current-continuation call-with-input-file call-with-output-file case cond define define-syntax delay do dynamic-wind else for-each if lambda let let* let-syntax letrec letrec-syntax map or syntax-rules ' * + , ,@ - ... / ; < <= = => > >= ` abs acos angle append apply asin assoc assq assv atan boolean? caar cadr call-with-input-file call-with-output-file call-with-values car cdddar cddddr cdr ceiling char->integer char-alphabetic? char-ci<=? char-ci<? char-ci=? char-ci>=? char-ci>? char-downcase char-lower-case? char-numeric? char-ready? char-upcase char-upper-case? char-whitespace? char<=? char<? char=? char>=? char>? char? close-input-port close-output-port complex? cons cos current-input-port current-output-port denominator display eof-object? eq? equal? eqv? eval even? exact->inexact exact? exp expt floor force gcd imag-part inexact->exact inexact? input-port? integer->char integer? interaction-environment lcm length list list->string list->vector list-ref list-tail list? load log magnitude make-polar make-rectangular make-string make-vector max member memq memv min modulo negative? newline not null-environment null? number->string number? numerator odd? open-input-file open-output-file output-port? pair? peek-char port? positive? procedure? quasiquote quote quotient rational? rationalize read read-char real-part real? remainder reverse round scheme-report-environment set! set-car! set-cdr! sin sqrt string string->list string->number string->symbol string-append string-ci<=? string-ci<? string-ci=? string-ci>=? string-ci>? string-copy string-fill! string-length string-ref string-set! string<=? string<? string=? string>=? string>? string? substring symbol->string symbol? tan transcript-off transcript-on truncate values vector vector->list vector-fill! vector-length vector-ref vector-set! with-input-from-file with-output-to-file write write-char zero?" +},r={className:"literal",begin:"(#t|#f|#\\\\"+t+"|#\\\\.)"},a={ +className:"number",variants:[{begin:"(-|\\+)?\\d+([./]\\d+)?",relevance:0},{ +begin:"(-|\\+)?\\d+([./]\\d+)?[+\\-](-|\\+)?\\d+([./]\\d+)?i",relevance:0},{ +begin:"#b[0-1]+(/[0-1]+)?"},{begin:"#o[0-7]+(/[0-7]+)?"},{ +begin:"#x[0-9a-f]+(/[0-9a-f]+)?"}]},i=e.QUOTE_STRING_MODE,c=[e.COMMENT(";","$",{ +relevance:0}),e.COMMENT("#\\|","\\|#")],s={begin:t,relevance:0},l={ +className:"symbol",begin:"'"+t},o={endsWithParent:!0,relevance:0},g={variants:[{ +begin:/'/},{begin:"`"}],contains:[{begin:"\\(",end:"\\)", +contains:["self",r,i,a,s,l]}]},u={className:"name",relevance:0,begin:t, +keywords:n},d={variants:[{begin:"\\(",end:"\\)"},{begin:"\\[",end:"\\]"}], +contains:[{begin:/lambda/,endsWithParent:!0,returnBegin:!0,contains:[u,{ +endsParent:!0,variants:[{begin:/\(/,end:/\)/},{begin:/\[/,end:/\]/}], +contains:[s]}]},u,o]};return o.contains=[r,a,i,s,l,g,d].concat(c),{ +name:"Scheme",aliases:["scm"],illegal:/\S/, +contains:[e.SHEBANG(),a,i,l,g,d].concat(c)}}})() +;hljs.registerLanguage("scheme",e)})();/*! `awk` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Awk",keywords:{ +keyword:"BEGIN END if else while do for in break continue delete next nextfile function func exit|10" +},contains:[{className:"variable",variants:[{begin:/\$[\w\d#@][\w\d_]*/},{ +begin:/\$\{(.*?)\}/}]},{className:"string",contains:[e.BACKSLASH_ESCAPE], +variants:[{begin:/(u|b)?r?'''/,end:/'''/,relevance:10},{begin:/(u|b)?r?"""/, +end:/"""/,relevance:10},{begin:/(u|r|ur)'/,end:/'/,relevance:10},{ +begin:/(u|r|ur)"/,end:/"/,relevance:10},{begin:/(b|br)'/,end:/'/},{ +begin:/(b|br)"/,end:/"/},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE] +},e.REGEXP_MODE,e.HASH_COMMENT_MODE,e.NUMBER_MODE]})})() +;hljs.registerLanguage("awk",e)})();/*! `pf` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var t=(()=>{"use strict";return t=>({name:"Packet Filter config", +aliases:["pf.conf"],keywords:{$pattern:/[a-z0-9_<>-]+/, +built_in:"block match pass load anchor|5 antispoof|10 set table", +keyword:"in out log quick on rdomain inet inet6 proto from port os to route allow-opts divert-packet divert-reply divert-to flags group icmp-type icmp6-type label once probability recieved-on rtable prio queue tos tag tagged user keep fragment for os drop af-to|10 binat-to|10 nat-to|10 rdr-to|10 bitmask least-stats random round-robin source-hash static-port dup-to reply-to route-to parent bandwidth default min max qlimit block-policy debug fingerprints hostid limit loginterface optimization reassemble ruleset-optimization basic none profile skip state-defaults state-policy timeout const counters persist no modulate synproxy state|5 floating if-bound no-sync pflow|10 sloppy source-track global rule max-src-nodes max-src-states max-src-conn max-src-conn-rate overload flush scrub|5 max-mss min-ttl no-df|10 random-id", +literal:"all any no-route self urpf-failed egress|5 unknown"}, +contains:[t.HASH_COMMENT_MODE,t.NUMBER_MODE,t.QUOTE_STRING_MODE,{ +className:"variable",begin:/\$[\w\d#@][\w\d_]*/,relevance:0},{ +className:"variable",begin:/<(?!\/)/,end:/>/}]})})() +;hljs.registerLanguage("pf",t)})();/*! `stylus` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict" +;const e=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],i=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],t=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],r=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],o=["align-content","align-items","align-self","all","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","content","content-visibility","counter-increment","counter-reset","cue","cue-after","cue-before","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-synthesis","font-variant","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","gap","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inline-size","isolation","justify-content","left","letter-spacing","line-break","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","pause","pause-after","pause-before","perspective","perspective-origin","pointer-events","position","quotes","resize","rest","rest-after","rest-before","right","row-gap","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","speak","speak-as","src","tab-size","table-layout","text-align","text-align-all","text-align-last","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-box","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","z-index"].reverse() +;return n=>{const a=(e=>({IMPORTANT:{scope:"meta",begin:"!important"}, +BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number", +begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{ +className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{ +scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$", +contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{ +scope:"number", +begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?", +relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z][A-Za-z0-9_-]*/} +}))(n),l={className:"variable",begin:"\\$"+n.IDENT_RE},s="(?=[.\\s\\n[:,(])" +;return{name:"Stylus",aliases:["styl"],case_insensitive:!1, +keywords:"if else for in", +illegal:"(\\?|(\\bReturn\\b)|(\\bEnd\\b)|(\\bend\\b)|(\\bdef\\b)|;|#\\s|\\*\\s|===\\s|\\||%)", +contains:[n.QUOTE_STRING_MODE,n.APOS_STRING_MODE,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,a.HEXCOLOR,{ +begin:"\\.[a-zA-Z][a-zA-Z0-9_-]*(?=[.\\s\\n[:,(])",className:"selector-class"},{ +begin:"#[a-zA-Z][a-zA-Z0-9_-]*(?=[.\\s\\n[:,(])",className:"selector-id"},{ +begin:"\\b("+e.join("|")+")"+s,className:"selector-tag"},{ +className:"selector-pseudo",begin:"&?:("+t.join("|")+")"+s},{ +className:"selector-pseudo",begin:"&?:(:)?("+r.join("|")+")"+s +},a.ATTRIBUTE_SELECTOR_MODE,{className:"keyword",begin:/@media/,starts:{ +end:/[{;}]/,keywords:{$pattern:/[a-z-]+/,keyword:"and or not only", +attribute:i.join(" ")},contains:[a.CSS_NUMBER_MODE]}},{className:"keyword", +begin:"@((-(o|moz|ms|webkit)-)?(charset|css|debug|extend|font-face|for|import|include|keyframes|media|mixin|page|warn|while))\\b" +},l,a.CSS_NUMBER_MODE,{className:"function", +begin:"^[a-zA-Z][a-zA-Z0-9_-]*\\(.*\\)",illegal:"[\\n]",returnBegin:!0, +contains:[{className:"title",begin:"\\b[a-zA-Z][a-zA-Z0-9_-]*"},{ +className:"params",begin:/\(/,end:/\)/, +contains:[a.HEXCOLOR,l,n.APOS_STRING_MODE,a.CSS_NUMBER_MODE,n.QUOTE_STRING_MODE] +}]},a.CSS_VARIABLE,{className:"attribute",begin:"\\b("+o.join("|")+")\\b", +starts:{end:/;|$/, +contains:[a.HEXCOLOR,l,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,a.CSS_NUMBER_MODE,n.C_BLOCK_COMMENT_MODE,a.IMPORTANT,a.FUNCTION_DISPATCH], +illegal:/\./,relevance:0}},a.FUNCTION_DISPATCH]}}})() +;hljs.registerLanguage("stylus",e)})();/*! `php` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const t=e.regex,a=/(?![A-Za-z0-9])(?![$])/,r=t.concat(/[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/,a),n=t.concat(/(\\?[A-Z][a-z0-9_\x7f-\xff]+|\\?[A-Z]+(?=[A-Z][a-z0-9_\x7f-\xff])){1,}/,a),o={ +scope:"variable",match:"\\$+"+r},c={scope:"subst",variants:[{begin:/\$\w+/},{ +begin:/\{\$/,end:/\}/}]},i=e.inherit(e.APOS_STRING_MODE,{illegal:null +}),s="[ \t\n]",l={scope:"string",variants:[e.inherit(e.QUOTE_STRING_MODE,{ +illegal:null,contains:e.QUOTE_STRING_MODE.contains.concat(c) +}),i,e.END_SAME_AS_BEGIN({begin:/<<<[ \t]*(\w+)\n/,end:/[ \t]*(\w+)\b/, +contains:e.QUOTE_STRING_MODE.contains.concat(c)})]},_={scope:"number", +variants:[{begin:"\\b0[bB][01]+(?:_[01]+)*\\b"},{ +begin:"\\b0[oO][0-7]+(?:_[0-7]+)*\\b"},{ +begin:"\\b0[xX][\\da-fA-F]+(?:_[\\da-fA-F]+)*\\b"},{ +begin:"(?:\\b\\d+(?:_\\d+)*(\\.(?:\\d+(?:_\\d+)*))?|\\B\\.\\d+)(?:[eE][+-]?\\d+)?" +}],relevance:0 +},d=["false","null","true"],p=["__CLASS__","__DIR__","__FILE__","__FUNCTION__","__COMPILER_HALT_OFFSET__","__LINE__","__METHOD__","__NAMESPACE__","__TRAIT__","die","echo","exit","include","include_once","print","require","require_once","array","abstract","and","as","binary","bool","boolean","break","callable","case","catch","class","clone","const","continue","declare","default","do","double","else","elseif","empty","enddeclare","endfor","endforeach","endif","endswitch","endwhile","enum","eval","extends","final","finally","float","for","foreach","from","global","goto","if","implements","instanceof","insteadof","int","integer","interface","isset","iterable","list","match|0","mixed","new","never","object","or","private","protected","public","readonly","real","return","string","switch","throw","trait","try","unset","use","var","void","while","xor","yield"],b=["Error|0","AppendIterator","ArgumentCountError","ArithmeticError","ArrayIterator","ArrayObject","AssertionError","BadFunctionCallException","BadMethodCallException","CachingIterator","CallbackFilterIterator","CompileError","Countable","DirectoryIterator","DivisionByZeroError","DomainException","EmptyIterator","ErrorException","Exception","FilesystemIterator","FilterIterator","GlobIterator","InfiniteIterator","InvalidArgumentException","IteratorIterator","LengthException","LimitIterator","LogicException","MultipleIterator","NoRewindIterator","OutOfBoundsException","OutOfRangeException","OuterIterator","OverflowException","ParentIterator","ParseError","RangeException","RecursiveArrayIterator","RecursiveCachingIterator","RecursiveCallbackFilterIterator","RecursiveDirectoryIterator","RecursiveFilterIterator","RecursiveIterator","RecursiveIteratorIterator","RecursiveRegexIterator","RecursiveTreeIterator","RegexIterator","RuntimeException","SeekableIterator","SplDoublyLinkedList","SplFileInfo","SplFileObject","SplFixedArray","SplHeap","SplMaxHeap","SplMinHeap","SplObjectStorage","SplObserver","SplPriorityQueue","SplQueue","SplStack","SplSubject","SplTempFileObject","TypeError","UnderflowException","UnexpectedValueException","UnhandledMatchError","ArrayAccess","BackedEnum","Closure","Fiber","Generator","Iterator","IteratorAggregate","Serializable","Stringable","Throwable","Traversable","UnitEnum","WeakReference","WeakMap","Directory","__PHP_Incomplete_Class","parent","php_user_filter","self","static","stdClass"],E={ +keyword:p,literal:(e=>{const t=[];return e.forEach((e=>{ +t.push(e),e.toLowerCase()===e?t.push(e.toUpperCase()):t.push(e.toLowerCase()) +})),t})(d),built_in:b},u=e=>e.map((e=>e.replace(/\|\d+$/,""))),g={variants:[{ +match:[/new/,t.concat(s,"+"),t.concat("(?!",u(b).join("\\b|"),"\\b)"),n],scope:{ +1:"keyword",4:"title.class"}}]},h=t.concat(r,"\\b(?!\\()"),m={variants:[{ +match:[t.concat(/::/,t.lookahead(/(?!class\b)/)),h],scope:{2:"variable.constant" +}},{match:[/::/,/class/],scope:{2:"variable.language"}},{ +match:[n,t.concat(/::/,t.lookahead(/(?!class\b)/)),h],scope:{1:"title.class", +3:"variable.constant"}},{match:[n,t.concat("::",t.lookahead(/(?!class\b)/))], +scope:{1:"title.class"}},{match:[n,/::/,/class/],scope:{1:"title.class", +3:"variable.language"}}]},I={scope:"attr", +match:t.concat(r,t.lookahead(":"),t.lookahead(/(?!::)/))},f={relevance:0, +begin:/\(/,end:/\)/,keywords:E,contains:[I,o,m,e.C_BLOCK_COMMENT_MODE,l,_,g] +},O={relevance:0, +match:[/\b/,t.concat("(?!fn\\b|function\\b|",u(p).join("\\b|"),"|",u(b).join("\\b|"),"\\b)"),r,t.concat(s,"*"),t.lookahead(/(?=\()/)], +scope:{3:"title.function.invoke"},contains:[f]};f.contains.push(O) +;const v=[I,m,e.C_BLOCK_COMMENT_MODE,l,_,g];return{case_insensitive:!1, +keywords:E,contains:[{begin:t.concat(/#\[\s*/,n),beginScope:"meta",end:/]/, +endScope:"meta",keywords:{literal:d,keyword:["new","array"]},contains:[{ +begin:/\[/,end:/]/,keywords:{literal:d,keyword:["new","array"]}, +contains:["self",...v]},...v,{scope:"meta",match:n}] +},e.HASH_COMMENT_MODE,e.COMMENT("//","$"),e.COMMENT("/\\*","\\*/",{contains:[{ +scope:"doctag",match:"@[A-Za-z]+"}]}),{match:/__halt_compiler\(\);/, +keywords:"__halt_compiler",starts:{scope:"comment",end:e.MATCH_NOTHING_RE, +contains:[{match:/\?>/,scope:"meta",endsParent:!0}]}},{scope:"meta",variants:[{ +begin:/<\?php/,relevance:10},{begin:/<\?=/},{begin:/<\?/,relevance:.1},{ +begin:/\?>/}]},{scope:"variable.language",match:/\$this\b/},o,O,m,{ +match:[/const/,/\s/,r],scope:{1:"keyword",3:"variable.constant"}},g,{ +scope:"function",relevance:0,beginKeywords:"fn function",end:/[;{]/, +excludeEnd:!0,illegal:"[$%\\[]",contains:[{beginKeywords:"use" +},e.UNDERSCORE_TITLE_MODE,{begin:"=>",endsParent:!0},{scope:"params", +begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0,keywords:E, +contains:["self",o,m,e.C_BLOCK_COMMENT_MODE,l,_]}]},{scope:"class",variants:[{ +beginKeywords:"enum",illegal:/[($"]/},{beginKeywords:"class interface trait", +illegal:/[:($"]/}],relevance:0,end:/\{/,excludeEnd:!0,contains:[{ +beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{ +beginKeywords:"namespace",relevance:0,end:";",illegal:/[.']/, +contains:[e.inherit(e.UNDERSCORE_TITLE_MODE,{scope:"title.class"})]},{ +beginKeywords:"use",relevance:0,end:";",contains:[{ +match:/\b(as|const|function)\b/,scope:"keyword"},e.UNDERSCORE_TITLE_MODE]},l,_]} +}})();hljs.registerLanguage("php",e)})();/*! `tap` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Test Anything Protocol", +case_insensitive:!0,contains:[e.HASH_COMMENT_MODE,{className:"meta",variants:[{ +begin:"^TAP version (\\d+)$"},{begin:"^1\\.\\.(\\d+)$"}]},{begin:/---$/, +end:"\\.\\.\\.$",subLanguage:"yaml",relevance:0},{className:"number", +begin:" (\\d+) "},{className:"symbol",variants:[{begin:"^ok"},{begin:"^not ok"}] +}]})})();hljs.registerLanguage("tap",e)})();/*! `makefile` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const i={className:"variable", +variants:[{begin:"\\$\\("+e.UNDERSCORE_IDENT_RE+"\\)", +contains:[e.BACKSLASH_ESCAPE]},{begin:/\$[@%<?\^\+\*]/}]},a={className:"string", +begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,i]},n={className:"variable", +begin:/\$\([\w-]+\s/,end:/\)/,keywords:{ +built_in:"subst patsubst strip findstring filter filter-out sort word wordlist firstword lastword dir notdir suffix basename addsuffix addprefix join wildcard realpath abspath error warning shell origin flavor foreach if or and call eval file value" +},contains:[i]},s={begin:"^"+e.UNDERSCORE_IDENT_RE+"\\s*(?=[:+?]?=)"},r={ +className:"section",begin:/^[^\s]+:/,end:/$/,contains:[i]};return{ +name:"Makefile",aliases:["mk","mak","make"],keywords:{$pattern:/[\w-]+/, +keyword:"define endef undefine ifdef ifndef ifeq ifneq else endif include -include sinclude override export unexport private vpath" +},contains:[e.HASH_COMMENT_MODE,i,a,n,s,{className:"meta",begin:/^\.PHONY:/, +end:/$/,keywords:{$pattern:/[\.\w]+/,keyword:".PHONY"}},r]}}})() +;hljs.registerLanguage("makefile",e)})();/*! `dts` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const a={className:"string", +variants:[e.inherit(e.QUOTE_STRING_MODE,{begin:'((u8?|U)|L)?"'}),{ +begin:'(u8?|U)?R"',end:'"',contains:[e.BACKSLASH_ESCAPE]},{begin:"'\\\\?.", +end:"'",illegal:"."}]},n={className:"number",variants:[{ +begin:"\\b(\\d+(\\.\\d*)?|\\.\\d+)(u|U|l|L|ul|UL|f|F)"},{begin:e.C_NUMBER_RE}], +relevance:0},s={className:"meta",begin:"#",end:"$",keywords:{ +keyword:"if else elif endif define undef ifdef ifndef"},contains:[{begin:/\\\n/, +relevance:0},{beginKeywords:"include",end:"$",keywords:{keyword:"include"}, +contains:[e.inherit(a,{className:"string"}),{className:"string",begin:"<", +end:">",illegal:"\\n"}]},a,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},i={ +className:"variable",begin:/&[a-z\d_]*\b/};return{name:"Device Tree",contains:[{ +className:"title.class",begin:/^\/(?=\s*\{)/,relevance:10},i,{ +className:"keyword",begin:"/[a-z][a-z\\d-]*/"},{className:"symbol", +begin:"^\\s*[a-zA-Z_][a-zA-Z\\d_]*:"},{className:"title.class", +begin:/[a-zA-Z_][a-zA-Z\d_@-]*(?=\s\{)/,relevance:.2},{relevance:0, +match:[/[a-z][a-z-,]+/,/\s*/,/=/],scope:{1:"attr",3:"operator"}},{ +match:/[a-z][a-z-,]+(?=;)/,relevance:0,scope:"attr"},{className:"params", +relevance:0,begin:"<",end:">",contains:[n,i] +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,n,a,s,{scope:"punctuation", +relevance:0,match:/\};|[;{}]/},{begin:e.IDENT_RE+"::",keywords:""}]}}})() +;hljs.registerLanguage("dts",e)})();/*! `xl` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const t={ +$pattern:/[a-zA-Z][a-zA-Z0-9_?]*/, +keyword:["if","then","else","do","while","until","for","loop","import","with","is","as","where","when","by","data","constant","integer","real","text","name","boolean","symbol","infix","prefix","postfix","block","tree"], +literal:["true","false","nil"], +built_in:["in","mod","rem","and","or","xor","not","abs","sign","floor","ceil","sqrt","sin","cos","tan","asin","acos","atan","exp","expm1","log","log2","log10","log1p","pi","at","text_length","text_range","text_find","text_replace","contains","page","slide","basic_slide","title_slide","title","subtitle","fade_in","fade_out","fade_at","clear_color","color","line_color","line_width","texture_wrap","texture_transform","texture","scale_?x","scale_?y","scale_?z?","translate_?x","translate_?y","translate_?z?","rotate_?x","rotate_?y","rotate_?z?","rectangle","circle","ellipse","sphere","path","line_to","move_to","quad_to","curve_to","theme","background","contents","locally","time","mouse_?x","mouse_?y","mouse_buttons"].concat(["ObjectLoader","Animate","MovieCredits","Slides","Filters","Shading","Materials","LensFlare","Mapping","VLCAudioVideo","StereoDecoder","PointCloud","NetworkAccess","RemoteControl","RegExp","ChromaKey","Snowfall","NodeJS","Speech","Charts"]) +},a={className:"string",begin:'"',end:'"',illegal:"\\n"},n={ +beginKeywords:"import",end:"$",keywords:t,contains:[a]},o={className:"function", +begin:/[a-z][^\n]*->/,returnBegin:!0,end:/->/,contains:[e.inherit(e.TITLE_MODE,{ +starts:{endsWithParent:!0,keywords:t}})]};return{name:"XL",aliases:["tao"], +keywords:t,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,a,{ +className:"string",begin:"'",end:"'",illegal:"\\n"},{className:"string", +begin:"<<",end:">>"},o,n,{className:"number", +begin:"[0-9]+#[0-9A-Z_]+(\\.[0-9-A-Z_]+)?#?([Ee][+-]?[0-9]+)?"},e.NUMBER_MODE]}} +})();hljs.registerLanguage("xl",e)})();/*! `stan` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const _=e.regex,o=["bernoulli","bernoulli_logit","bernoulli_logit_glm","beta","beta_binomial","beta_proportion","binomial","binomial_logit","categorical","categorical_logit","categorical_logit_glm","cauchy","chi_square","dirichlet","discrete_range","double_exponential","exp_mod_normal","exponential","frechet","gamma","gaussian_dlm_obs","gumbel","hmm_latent","hypergeometric","inv_chi_square","inv_gamma","inv_wishart","lkj_corr","lkj_corr_cholesky","logistic","lognormal","multi_gp","multi_gp_cholesky","multi_normal","multi_normal_cholesky","multi_normal_prec","multi_student_t","multinomial","multinomial_logit","neg_binomial","neg_binomial_2","neg_binomial_2_log","neg_binomial_2_log_glm","normal","normal_id_glm","ordered_logistic","ordered_logistic_glm","ordered_probit","pareto","pareto_type_2","poisson","poisson_log","poisson_log_glm","rayleigh","scaled_inv_chi_square","skew_double_exponential","skew_normal","std_normal","student_t","uniform","von_mises","weibull","wiener","wishart"],i=e.COMMENT(/\/\*/,/\*\//,{ +relevance:0,contains:[{scope:"doctag",match:/@(return|param)/}]}),r={ +scope:"meta",begin:/#include\b/,end:/$/,contains:[{match:/[a-z][a-z-._]+/, +scope:"string"},e.C_LINE_COMMENT_MODE] +},t=["lower","upper","offset","multiplier"];return{name:"Stan", +aliases:["stanfuncs"],keywords:{$pattern:e.IDENT_RE, +title:["functions","model","data","parameters","quantities","transformed","generated"], +type:["array","complex","int","real","vector","ordered","positive_ordered","simplex","unit_vector","row_vector","matrix","cholesky_factor_corr|10","cholesky_factor_cov|10","corr_matrix|10","cov_matrix|10","void"], +keyword:["for","in","if","else","while","break","continue","return"], +built_in:["Phi","Phi_approx","abs","acos","acosh","add_diag","algebra_solver","algebra_solver_newton","append_array","append_col","append_row","asin","asinh","atan","atan2","atanh","bessel_first_kind","bessel_second_kind","binary_log_loss","binomial_coefficient_log","block","cbrt","ceil","chol2inv","cholesky_decompose","choose","col","cols","columns_dot_product","columns_dot_self","conj","cos","cosh","cov_exp_quad","crossprod","csr_extract_u","csr_extract_v","csr_extract_w","csr_matrix_times_vector","csr_to_dense_matrix","cumulative_sum","determinant","diag_matrix","diag_post_multiply","diag_pre_multiply","diagonal","digamma","dims","distance","dot_product","dot_self","eigenvalues_sym","eigenvectors_sym","erf","erfc","exp","exp2","expm1","fabs","falling_factorial","fdim","floor","fma","fmax","fmin","fmod","gamma_p","gamma_q","generalized_inverse","get_imag","get_lp","get_real","head","hmm_hidden_state_prob","hmm_marginal","hypot","identity_matrix","inc_beta","int_step","integrate_1d","integrate_ode","integrate_ode_adams","integrate_ode_bdf","integrate_ode_rk45","inv","inv_Phi","inv_cloglog","inv_logit","inv_sqrt","inv_square","inverse","inverse_spd","is_inf","is_nan","lambert_w0","lambert_wm1","lbeta","lchoose","ldexp","lgamma","linspaced_array","linspaced_int_array","linspaced_row_vector","linspaced_vector","lmgamma","lmultiply","log","log1m","log1m_exp","log1m_inv_logit","log1p","log1p_exp","log_determinant","log_diff_exp","log_falling_factorial","log_inv_logit","log_inv_logit_diff","log_mix","log_modified_bessel_first_kind","log_rising_factorial","log_softmax","log_sum_exp","logit","machine_precision","map_rect","matrix_exp","matrix_exp_multiply","matrix_power","max","mdivide_left_spd","mdivide_left_tri_low","mdivide_right_spd","mdivide_right_tri_low","mean","min","modified_bessel_first_kind","modified_bessel_second_kind","multiply_log","multiply_lower_tri_self_transpose","negative_infinity","norm","not_a_number","num_elements","ode_adams","ode_adams_tol","ode_adjoint_tol_ctl","ode_bdf","ode_bdf_tol","ode_ckrk","ode_ckrk_tol","ode_rk45","ode_rk45_tol","one_hot_array","one_hot_int_array","one_hot_row_vector","one_hot_vector","ones_array","ones_int_array","ones_row_vector","ones_vector","owens_t","polar","positive_infinity","pow","print","prod","proj","qr_Q","qr_R","qr_thin_Q","qr_thin_R","quad_form","quad_form_diag","quad_form_sym","quantile","rank","reduce_sum","reject","rep_array","rep_matrix","rep_row_vector","rep_vector","reverse","rising_factorial","round","row","rows","rows_dot_product","rows_dot_self","scale_matrix_exp_multiply","sd","segment","sin","singular_values","sinh","size","softmax","sort_asc","sort_desc","sort_indices_asc","sort_indices_desc","sqrt","square","squared_distance","step","sub_col","sub_row","sum","svd_U","svd_V","symmetrize_from_lower_tri","tail","tan","tanh","target","tcrossprod","tgamma","to_array_1d","to_array_2d","to_complex","to_matrix","to_row_vector","to_vector","trace","trace_gen_quad_form","trace_quad_form","trigamma","trunc","uniform_simplex","variance","zeros_array","zeros_int_array","zeros_row_vector"] +},contains:[e.C_LINE_COMMENT_MODE,r,e.HASH_COMMENT_MODE,i,{scope:"built_in", +match:/\s(pi|e|sqrt2|log2|log10)(?=\()/,relevance:0},{ +match:_.concat(/[<,]\s*/,_.either(...t),/\s*=/),keywords:t},{scope:"keyword", +match:/\btarget(?=\s*\+=)/},{ +match:[/~\s*/,_.either(...o),/(?:\(\))/,/\s*T(?=\s*\[)/],scope:{2:"built_in", +4:"keyword"}},{scope:"built_in",keywords:o, +begin:_.concat(/\w*/,_.either(...o),/(_lpdf|_lupdf|_lpmf|_cdf|_lcdf|_lccdf|_qf)(?=\s*[\(.*\)])/) +},{begin:[/~/,/\s*/,_.concat(_.either(...o),/(?=\s*[\(.*\)])/)],scope:{ +3:"built_in"}},{ +begin:[/~/,/\s*\w+(?=\s*[\(.*\)])/,"(?!.*/\b("+_.either(...o)+")\b)"],scope:{ +2:"title.function"}},{scope:"title.function", +begin:/\w*(_lpdf|_lupdf|_lpmf|_cdf|_lcdf|_lccdf|_qf)(?=\s*[\(.*\)])/},{ +scope:"number", +match:_.concat(/(?:\b\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\B\.\d+(?:_\d+)*)/,/(?:[eE][+-]?\d+(?:_\d+)*)?i?(?!\w)/), +relevance:0},{scope:"string",begin:/"/,end:/"/}]}}})() +;hljs.registerLanguage("stan",e)})();/*! `erlang-repl` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n=e.regex;return{ +name:"Erlang REPL",keywords:{built_in:"spawn spawn_link self", +keyword:"after and andalso|10 band begin bnot bor bsl bsr bxor case catch cond div end fun if let not of or orelse|10 query receive rem try when xor" +},contains:[{className:"meta.prompt",begin:"^[0-9]+> ",relevance:10 +},e.COMMENT("%","$"),{className:"number", +begin:"\\b(\\d+(_\\d+)*#[a-fA-F0-9]+(_[a-fA-F0-9]+)*|\\d+(_\\d+)*(\\.\\d+(_\\d+)*)?([eE][-+]?\\d+)?)", +relevance:0},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{ +begin:n.concat(/\?(::)?/,/([A-Z]\w*)/,/((::)[A-Z]\w*)*/)},{begin:"->"},{ +begin:"ok"},{begin:"!"},{ +begin:"(\\b[a-z'][a-zA-Z0-9_']*:[a-z'][a-zA-Z0-9_']*)|(\\b[a-z'][a-zA-Z0-9_']*)", +relevance:0},{begin:"[A-Z][a-zA-Z0-9_']*",relevance:0}]}}})() +;hljs.registerLanguage("erlang-repl",e)})();/*! `livecodeserver` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const r={className:"variable", +variants:[{begin:"\\b([gtps][A-Z]{1}[a-zA-Z0-9]*)(\\[.+\\])?(?:\\s*?)"},{ +begin:"\\$_[A-Z]+"}],relevance:0 +},t=[e.C_BLOCK_COMMENT_MODE,e.HASH_COMMENT_MODE,e.COMMENT("--","$"),e.COMMENT("[^:]//","$")],a=e.inherit(e.TITLE_MODE,{ +variants:[{begin:"\\b_*rig[A-Z][A-Za-z0-9_\\-]*"},{begin:"\\b_[a-z0-9\\-]+"}] +}),o=e.inherit(e.TITLE_MODE,{begin:"\\b([A-Za-z0-9_\\-]+)\\b"});return{ +name:"LiveCode",case_insensitive:!1,keywords:{ +keyword:"$_COOKIE $_FILES $_GET $_GET_BINARY $_GET_RAW $_POST $_POST_BINARY $_POST_RAW $_SESSION $_SERVER codepoint codepoints segment segments codeunit codeunits sentence sentences trueWord trueWords paragraph after byte bytes english the until http forever descending using line real8 with seventh for stdout finally element word words fourth before black ninth sixth characters chars stderr uInt1 uInt1s uInt2 uInt2s stdin string lines relative rel any fifth items from middle mid at else of catch then third it file milliseconds seconds second secs sec int1 int1s int4 int4s internet int2 int2s normal text item last long detailed effective uInt4 uInt4s repeat end repeat URL in try into switch to words https token binfile each tenth as ticks tick system real4 by dateItems without char character ascending eighth whole dateTime numeric short first ftp integer abbreviated abbr abbrev private case while if div mod wrap and or bitAnd bitNot bitOr bitXor among not in a an within contains ends with begins the keys of keys", +literal:"SIX TEN FORMFEED NINE ZERO NONE SPACE FOUR FALSE COLON CRLF PI COMMA ENDOFFILE EOF EIGHT FIVE QUOTE EMPTY ONE TRUE RETURN CR LINEFEED RIGHT BACKSLASH NULL SEVEN TAB THREE TWO six ten formfeed nine zero none space four false colon crlf pi comma endoffile eof eight five quote empty one true return cr linefeed right backslash null seven tab three two RIVERSION RISTATE FILE_READ_MODE FILE_WRITE_MODE FILE_WRITE_MODE DIR_WRITE_MODE FILE_READ_UMASK FILE_WRITE_UMASK DIR_READ_UMASK DIR_WRITE_UMASK", +built_in:"put abs acos aliasReference annuity arrayDecode arrayEncode asin atan atan2 average avg avgDev base64Decode base64Encode baseConvert binaryDecode binaryEncode byteOffset byteToNum cachedURL cachedURLs charToNum cipherNames codepointOffset codepointProperty codepointToNum codeunitOffset commandNames compound compress constantNames cos date dateFormat decompress difference directories diskSpace DNSServers exp exp1 exp2 exp10 extents files flushEvents folders format functionNames geometricMean global globals hasMemory harmonicMean hostAddress hostAddressToName hostName hostNameToAddress isNumber ISOToMac itemOffset keys len length libURLErrorData libUrlFormData libURLftpCommand libURLLastHTTPHeaders libURLLastRHHeaders libUrlMultipartFormAddPart libUrlMultipartFormData libURLVersion lineOffset ln ln1 localNames log log2 log10 longFilePath lower macToISO matchChunk matchText matrixMultiply max md5Digest median merge messageAuthenticationCode messageDigest millisec millisecs millisecond milliseconds min monthNames nativeCharToNum normalizeText num number numToByte numToChar numToCodepoint numToNativeChar offset open openfiles openProcesses openProcessIDs openSockets paragraphOffset paramCount param params peerAddress pendingMessages platform popStdDev populationStandardDeviation populationVariance popVariance processID random randomBytes replaceText result revCreateXMLTree revCreateXMLTreeFromFile revCurrentRecord revCurrentRecordIsFirst revCurrentRecordIsLast revDatabaseColumnCount revDatabaseColumnIsNull revDatabaseColumnLengths revDatabaseColumnNames revDatabaseColumnNamed revDatabaseColumnNumbered revDatabaseColumnTypes revDatabaseConnectResult revDatabaseCursors revDatabaseID revDatabaseTableNames revDatabaseType revDataFromQuery revdb_closeCursor revdb_columnbynumber revdb_columncount revdb_columnisnull revdb_columnlengths revdb_columnnames revdb_columntypes revdb_commit revdb_connect revdb_connections revdb_connectionerr revdb_currentrecord revdb_cursorconnection revdb_cursorerr revdb_cursors revdb_dbtype revdb_disconnect revdb_execute revdb_iseof revdb_isbof revdb_movefirst revdb_movelast revdb_movenext revdb_moveprev revdb_query revdb_querylist revdb_recordcount revdb_rollback revdb_tablenames revGetDatabaseDriverPath revNumberOfRecords revOpenDatabase revOpenDatabases revQueryDatabase revQueryDatabaseBlob revQueryResult revQueryIsAtStart revQueryIsAtEnd revUnixFromMacPath revXMLAttribute revXMLAttributes revXMLAttributeValues revXMLChildContents revXMLChildNames revXMLCreateTreeFromFileWithNamespaces revXMLCreateTreeWithNamespaces revXMLDataFromXPathQuery revXMLEvaluateXPath revXMLFirstChild revXMLMatchingNode revXMLNextSibling revXMLNodeContents revXMLNumberOfChildren revXMLParent revXMLPreviousSibling revXMLRootNode revXMLRPC_CreateRequest revXMLRPC_Documents revXMLRPC_Error revXMLRPC_GetHost revXMLRPC_GetMethod revXMLRPC_GetParam revXMLText revXMLRPC_Execute revXMLRPC_GetParamCount revXMLRPC_GetParamNode revXMLRPC_GetParamType revXMLRPC_GetPath revXMLRPC_GetPort revXMLRPC_GetProtocol revXMLRPC_GetRequest revXMLRPC_GetResponse revXMLRPC_GetSocket revXMLTree revXMLTrees revXMLValidateDTD revZipDescribeItem revZipEnumerateItems revZipOpenArchives round sampVariance sec secs seconds sentenceOffset sha1Digest shell shortFilePath sin specialFolderPath sqrt standardDeviation statRound stdDev sum sysError systemVersion tan tempName textDecode textEncode tick ticks time to tokenOffset toLower toUpper transpose truewordOffset trunc uniDecode uniEncode upper URLDecode URLEncode URLStatus uuid value variableNames variance version waitDepth weekdayNames wordOffset xsltApplyStylesheet xsltApplyStylesheetFromFile xsltLoadStylesheet xsltLoadStylesheetFromFile add breakpoint cancel clear local variable file word line folder directory URL close socket process combine constant convert create new alias folder directory decrypt delete variable word line folder directory URL dispatch divide do encrypt filter get include intersect kill libURLDownloadToFile libURLFollowHttpRedirects libURLftpUpload libURLftpUploadFile libURLresetAll libUrlSetAuthCallback libURLSetDriver libURLSetCustomHTTPHeaders libUrlSetExpect100 libURLSetFTPListCommand libURLSetFTPMode libURLSetFTPStopTime libURLSetStatusCallback load extension loadedExtensions multiply socket prepare process post seek rel relative read from process rename replace require resetAll resolve revAddXMLNode revAppendXML revCloseCursor revCloseDatabase revCommitDatabase revCopyFile revCopyFolder revCopyXMLNode revDeleteFolder revDeleteXMLNode revDeleteAllXMLTrees revDeleteXMLTree revExecuteSQL revGoURL revInsertXMLNode revMoveFolder revMoveToFirstRecord revMoveToLastRecord revMoveToNextRecord revMoveToPreviousRecord revMoveToRecord revMoveXMLNode revPutIntoXMLNode revRollBackDatabase revSetDatabaseDriverPath revSetXMLAttribute revXMLRPC_AddParam revXMLRPC_DeleteAllDocuments revXMLAddDTD revXMLRPC_Free revXMLRPC_FreeAll revXMLRPC_DeleteDocument revXMLRPC_DeleteParam revXMLRPC_SetHost revXMLRPC_SetMethod revXMLRPC_SetPort revXMLRPC_SetProtocol revXMLRPC_SetSocket revZipAddItemWithData revZipAddItemWithFile revZipAddUncompressedItemWithData revZipAddUncompressedItemWithFile revZipCancel revZipCloseArchive revZipDeleteItem revZipExtractItemToFile revZipExtractItemToVariable revZipSetProgressCallback revZipRenameItem revZipReplaceItemWithData revZipReplaceItemWithFile revZipOpenArchive send set sort split start stop subtract symmetric union unload vectorDotProduct wait write" +},contains:[r,{className:"keyword",begin:"\\bend\\sif\\b"},{ +className:"function",beginKeywords:"function",end:"$", +contains:[r,o,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE,a] +},{className:"function",begin:"\\bend\\s+",end:"$",keywords:"end", +contains:[o,a],relevance:0},{beginKeywords:"command on",end:"$", +contains:[r,o,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE,a] +},{className:"meta",variants:[{begin:"<\\?(rev|lc|livecode)",relevance:10},{ +begin:"<\\?"},{begin:"\\?>"}] +},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE,a].concat(t), +illegal:";$|^\\[|^=|&|\\{"}}})();hljs.registerLanguage("livecodeserver",e)})();/*! `lua` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const t="\\[=*\\[",a="\\]=*\\]",n={ +begin:t,end:a,contains:["self"] +},o=[e.COMMENT("--(?!\\[=*\\[)","$"),e.COMMENT("--\\[=*\\[",a,{contains:[n], +relevance:10})];return{name:"Lua",keywords:{$pattern:e.UNDERSCORE_IDENT_RE, +literal:"true false nil", +keyword:"and break do else elseif end for goto if in local not or repeat return then until while", +built_in:"_G _ENV _VERSION __index __newindex __mode __call __metatable __tostring __len __gc __add __sub __mul __div __mod __pow __concat __unm __eq __lt __le assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring module next pairs pcall print rawequal rawget rawset require select setfenv setmetatable tonumber tostring type unpack xpcall arg self coroutine resume yield status wrap create running debug getupvalue debug sethook getmetatable gethook setmetatable setlocal traceback setfenv getinfo setupvalue getlocal getregistry getfenv io lines write close flush open output type read stderr stdin input stdout popen tmpfile math log max acos huge ldexp pi cos tanh pow deg tan cosh sinh random randomseed frexp ceil floor rad abs sqrt modf asin min mod fmod log10 atan2 exp sin atan os exit setlocale date getenv difftime remove time clock tmpname rename execute package preload loadlib loaded loaders cpath config path seeall string sub upper len gfind rep find match char dump gmatch reverse byte format gsub lower table setn insert getn foreachi maxn foreach concat sort remove" +},contains:o.concat([{className:"function",beginKeywords:"function",end:"\\)", +contains:[e.inherit(e.TITLE_MODE,{ +begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{className:"params", +begin:"\\(",endsWithParent:!0,contains:o}].concat(o) +},e.C_NUMBER_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"string", +begin:t,end:a,contains:[n],relevance:5}])}}})();hljs.registerLanguage("lua",e) +})();/*! `protobuf` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const t={ +match:[/(message|enum|service)\s+/,e.IDENT_RE],scope:{1:"keyword", +2:"title.class"}};return{name:"Protocol Buffers",keywords:{ +keyword:["package","import","option","optional","required","repeated","group","oneof"], +type:["double","float","int32","int64","uint32","uint64","sint32","sint64","fixed32","fixed64","sfixed32","sfixed64","bool","string","bytes"], +literal:["true","false"]}, +contains:[e.QUOTE_STRING_MODE,e.NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,t,{ +className:"function",beginKeywords:"rpc",end:/[{;]/,excludeEnd:!0, +keywords:"rpc returns"},{begin:/^\s*[A-Z_]+(?=\s*=[^\n]+;$)/}]}}})() +;hljs.registerLanguage("protobuf",e)})();/*! `python-repl` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var a=(()=>{"use strict";return a=>({aliases:["pycon"],contains:[{ +className:"meta.prompt",starts:{end:/ |$/,starts:{end:"$",subLanguage:"python"} +},variants:[{begin:/^>>>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]})})() +;hljs.registerLanguage("python-repl",a)})();/*! `stata` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Stata",aliases:["do","ado"], +case_insensitive:!0, +keywords:"if else in foreach for forv forva forval forvalu forvalue forvalues by bys bysort xi quietly qui capture about ac ac_7 acprplot acprplot_7 adjust ado adopath adoupdate alpha ameans an ano anov anova anova_estat anova_terms anovadef aorder ap app appe appen append arch arch_dr arch_estat arch_p archlm areg areg_p args arima arima_dr arima_estat arima_p as asmprobit asmprobit_estat asmprobit_lf asmprobit_mfx__dlg asmprobit_p ass asse asser assert avplot avplot_7 avplots avplots_7 bcskew0 bgodfrey bias binreg bip0_lf biplot bipp_lf bipr_lf bipr_p biprobit bitest bitesti bitowt blogit bmemsize boot bootsamp bootstrap bootstrap_8 boxco_l boxco_p boxcox boxcox_6 boxcox_p bprobit br break brier bro brow brows browse brr brrstat bs bs_7 bsampl_w bsample bsample_7 bsqreg bstat bstat_7 bstat_8 bstrap bstrap_7 bubble bubbleplot ca ca_estat ca_p cabiplot camat canon canon_8 canon_8_p canon_estat canon_p cap caprojection capt captu captur capture cat cc cchart cchart_7 cci cd censobs_table centile cf char chdir checkdlgfiles checkestimationsample checkhlpfiles checksum chelp ci cii cl class classutil clear cli clis clist clo clog clog_lf clog_p clogi clogi_sw clogit clogit_lf clogit_p clogitp clogl_sw cloglog clonevar clslistarray cluster cluster_measures cluster_stop cluster_tree cluster_tree_8 clustermat cmdlog cnr cnre cnreg cnreg_p cnreg_sw cnsreg codebook collaps4 collapse colormult_nb colormult_nw compare compress conf confi confir confirm conren cons const constr constra constrai constrain constraint continue contract copy copyright copysource cor corc corr corr2data corr_anti corr_kmo corr_smc corre correl correla correlat correlate corrgram cou coun count cox cox_p cox_sw coxbase coxhaz coxvar cprplot cprplot_7 crc cret cretu cretur creturn cross cs cscript cscript_log csi ct ct_is ctset ctst_5 ctst_st cttost cumsp cumsp_7 cumul cusum cusum_7 cutil d|0 datasig datasign datasigna datasignat datasignatu datasignatur datasignature datetof db dbeta de dec deco decod decode deff des desc descr descri describ describe destring dfbeta dfgls dfuller di di_g dir dirstats dis discard disp disp_res disp_s displ displa display distinct do doe doed doedi doedit dotplot dotplot_7 dprobit drawnorm drop ds ds_util dstdize duplicates durbina dwstat dydx e|0 ed edi edit egen eivreg emdef en enc enco encod encode eq erase ereg ereg_lf ereg_p ereg_sw ereghet ereghet_glf ereghet_glf_sh ereghet_gp ereghet_ilf ereghet_ilf_sh ereghet_ip eret eretu eretur ereturn err erro error esize est est_cfexist est_cfname est_clickable est_expand est_hold est_table est_unhold est_unholdok estat estat_default estat_summ estat_vce_only esti estimates etodow etof etomdy ex exi exit expand expandcl fac fact facto factor factor_estat factor_p factor_pca_rotated factor_rotate factormat fcast fcast_compute fcast_graph fdades fdadesc fdadescr fdadescri fdadescrib fdadescribe fdasav fdasave fdause fh_st file open file read file close file filefilter fillin find_hlp_file findfile findit findit_7 fit fl fli flis flist for5_0 forest forestplot form forma format fpredict frac_154 frac_adj frac_chk frac_cox frac_ddp frac_dis frac_dv frac_in frac_mun frac_pp frac_pq frac_pv frac_wgt frac_xo fracgen fracplot fracplot_7 fracpoly fracpred fron_ex fron_hn fron_p fron_tn fron_tn2 frontier ftodate ftoe ftomdy ftowdate funnel funnelplot g|0 gamhet_glf gamhet_gp gamhet_ilf gamhet_ip gamma gamma_d2 gamma_p gamma_sw gammahet gdi_hexagon gdi_spokes ge gen gene gener genera generat generate genrank genstd genvmean gettoken gl gladder gladder_7 glim_l01 glim_l02 glim_l03 glim_l04 glim_l05 glim_l06 glim_l07 glim_l08 glim_l09 glim_l10 glim_l11 glim_l12 glim_lf glim_mu glim_nw1 glim_nw2 glim_nw3 glim_p glim_v1 glim_v2 glim_v3 glim_v4 glim_v5 glim_v6 glim_v7 glm glm_6 glm_p glm_sw glmpred glo glob globa global glogit glogit_8 glogit_p gmeans gnbre_lf gnbreg gnbreg_5 gnbreg_p gomp_lf gompe_sw gomper_p gompertz gompertzhet gomphet_glf gomphet_glf_sh gomphet_gp gomphet_ilf gomphet_ilf_sh gomphet_ip gphdot gphpen gphprint gprefs gprobi_p gprobit gprobit_8 gr gr7 gr_copy gr_current gr_db gr_describe gr_dir gr_draw gr_draw_replay gr_drop gr_edit gr_editviewopts gr_example gr_example2 gr_export gr_print gr_qscheme gr_query gr_read gr_rename gr_replay gr_save gr_set gr_setscheme gr_table gr_undo gr_use graph graph7 grebar greigen greigen_7 greigen_8 grmeanby grmeanby_7 gs_fileinfo gs_filetype gs_graphinfo gs_stat gsort gwood h|0 hadimvo hareg hausman haver he heck_d2 heckma_p heckman heckp_lf heckpr_p heckprob hel help hereg hetpr_lf hetpr_p hetprob hettest hexdump hilite hist hist_7 histogram hlogit hlu hmeans hotel hotelling hprobit hreg hsearch icd9 icd9_ff icd9p iis impute imtest inbase include inf infi infil infile infix inp inpu input ins insheet insp inspe inspec inspect integ inten intreg intreg_7 intreg_p intrg2_ll intrg_ll intrg_ll2 ipolate iqreg ir irf irf_create irfm iri is_svy is_svysum isid istdize ivprob_1_lf ivprob_lf ivprobit ivprobit_p ivreg ivreg_footnote ivtob_1_lf ivtob_lf ivtobit ivtobit_p jackknife jacknife jknife jknife_6 jknife_8 jkstat joinby kalarma1 kap kap_3 kapmeier kappa kapwgt kdensity kdensity_7 keep ksm ksmirnov ktau kwallis l|0 la lab labbe labbeplot labe label labelbook ladder levels levelsof leverage lfit lfit_p li lincom line linktest lis list lloghet_glf lloghet_glf_sh lloghet_gp lloghet_ilf lloghet_ilf_sh lloghet_ip llogi_sw llogis_p llogist llogistic llogistichet lnorm_lf lnorm_sw lnorma_p lnormal lnormalhet lnormhet_glf lnormhet_glf_sh lnormhet_gp lnormhet_ilf lnormhet_ilf_sh lnormhet_ip lnskew0 loadingplot loc loca local log logi logis_lf logistic logistic_p logit logit_estat logit_p loglogs logrank loneway lookfor lookup lowess lowess_7 lpredict lrecomp lroc lroc_7 lrtest ls lsens lsens_7 lsens_x lstat ltable ltable_7 ltriang lv lvr2plot lvr2plot_7 m|0 ma mac macr macro makecns man manova manova_estat manova_p manovatest mantel mark markin markout marksample mat mat_capp mat_order mat_put_rr mat_rapp mata mata_clear mata_describe mata_drop mata_matdescribe mata_matsave mata_matuse mata_memory mata_mlib mata_mosave mata_rename mata_which matalabel matcproc matlist matname matr matri matrix matrix_input__dlg matstrik mcc mcci md0_ md1_ md1debug_ md2_ md2debug_ mds mds_estat mds_p mdsconfig mdslong mdsmat mdsshepard mdytoe mdytof me_derd mean means median memory memsize menl meqparse mer merg merge meta mfp mfx mhelp mhodds minbound mixed_ll mixed_ll_reparm mkassert mkdir mkmat mkspline ml ml_5 ml_adjs ml_bhhhs ml_c_d ml_check ml_clear ml_cnt ml_debug ml_defd ml_e0 ml_e0_bfgs ml_e0_cycle ml_e0_dfp ml_e0i ml_e1 ml_e1_bfgs ml_e1_bhhh ml_e1_cycle ml_e1_dfp ml_e2 ml_e2_cycle ml_ebfg0 ml_ebfr0 ml_ebfr1 ml_ebh0q ml_ebhh0 ml_ebhr0 ml_ebr0i ml_ecr0i ml_edfp0 ml_edfr0 ml_edfr1 ml_edr0i ml_eds ml_eer0i ml_egr0i ml_elf ml_elf_bfgs ml_elf_bhhh ml_elf_cycle ml_elf_dfp ml_elfi ml_elfs ml_enr0i ml_enrr0 ml_erdu0 ml_erdu0_bfgs ml_erdu0_bhhh ml_erdu0_bhhhq ml_erdu0_cycle ml_erdu0_dfp ml_erdu0_nrbfgs ml_exde ml_footnote ml_geqnr ml_grad0 ml_graph ml_hbhhh ml_hd0 ml_hold ml_init ml_inv ml_log ml_max ml_mlout ml_mlout_8 ml_model ml_nb0 ml_opt ml_p ml_plot ml_query ml_rdgrd ml_repor ml_s_e ml_score ml_searc ml_technique ml_unhold mleval mlf_ mlmatbysum mlmatsum mlog mlogi mlogit mlogit_footnote mlogit_p mlopts mlsum mlvecsum mnl0_ mor more mov move mprobit mprobit_lf mprobit_p mrdu0_ mrdu1_ mvdecode mvencode mvreg mvreg_estat n|0 nbreg nbreg_al nbreg_lf nbreg_p nbreg_sw nestreg net newey newey_7 newey_p news nl nl_7 nl_9 nl_9_p nl_p nl_p_7 nlcom nlcom_p nlexp2 nlexp2_7 nlexp2a nlexp2a_7 nlexp3 nlexp3_7 nlgom3 nlgom3_7 nlgom4 nlgom4_7 nlinit nllog3 nllog3_7 nllog4 nllog4_7 nlog_rd nlogit nlogit_p nlogitgen nlogittree nlpred no nobreak noi nois noisi noisil noisily note notes notes_dlg nptrend numlabel numlist odbc old_ver olo olog ologi ologi_sw ologit ologit_p ologitp on one onew onewa oneway op_colnm op_comp op_diff op_inv op_str opr opro oprob oprob_sw oprobi oprobi_p oprobit oprobitp opts_exclusive order orthog orthpoly ou out outf outfi outfil outfile outs outsh outshe outshee outsheet ovtest pac pac_7 palette parse parse_dissim pause pca pca_8 pca_display pca_estat pca_p pca_rotate pcamat pchart pchart_7 pchi pchi_7 pcorr pctile pentium pergram pergram_7 permute permute_8 personal peto_st pkcollapse pkcross pkequiv pkexamine pkexamine_7 pkshape pksumm pksumm_7 pl plo plot plugin pnorm pnorm_7 poisgof poiss_lf poiss_sw poisso_p poisson poisson_estat post postclose postfile postutil pperron pr prais prais_e prais_e2 prais_p predict predictnl preserve print pro prob probi probit probit_estat probit_p proc_time procoverlay procrustes procrustes_estat procrustes_p profiler prog progr progra program prop proportion prtest prtesti pwcorr pwd q\\s qby qbys qchi qchi_7 qladder qladder_7 qnorm qnorm_7 qqplot qqplot_7 qreg qreg_c qreg_p qreg_sw qu quadchk quantile quantile_7 que quer query range ranksum ratio rchart rchart_7 rcof recast reclink recode reg reg3 reg3_p regdw regr regre regre_p2 regres regres_p regress regress_estat regriv_p remap ren rena renam rename renpfix repeat replace report reshape restore ret retu retur return rm rmdir robvar roccomp roccomp_7 roccomp_8 rocf_lf rocfit rocfit_8 rocgold rocplot rocplot_7 roctab roctab_7 rolling rologit rologit_p rot rota rotat rotate rotatemat rreg rreg_p ru run runtest rvfplot rvfplot_7 rvpplot rvpplot_7 sa safesum sample sampsi sav save savedresults saveold sc sca scal scala scalar scatter scm_mine sco scob_lf scob_p scobi_sw scobit scor score scoreplot scoreplot_help scree screeplot screeplot_help sdtest sdtesti se search separate seperate serrbar serrbar_7 serset set set_defaults sfrancia sh she shel shell shewhart shewhart_7 signestimationsample signrank signtest simul simul_7 simulate simulate_8 sktest sleep slogit slogit_d2 slogit_p smooth snapspan so sor sort spearman spikeplot spikeplot_7 spikeplt spline_x split sqreg sqreg_p sret sretu sretur sreturn ssc st st_ct st_hc st_hcd st_hcd_sh st_is st_issys st_note st_promo st_set st_show st_smpl st_subid stack statsby statsby_8 stbase stci stci_7 stcox stcox_estat stcox_fr stcox_fr_ll stcox_p stcox_sw stcoxkm stcoxkm_7 stcstat stcurv stcurve stcurve_7 stdes stem stepwise stereg stfill stgen stir stjoin stmc stmh stphplot stphplot_7 stphtest stphtest_7 stptime strate strate_7 streg streg_sw streset sts sts_7 stset stsplit stsum sttocc sttoct stvary stweib su suest suest_8 sum summ summa summar summari summariz summarize sunflower sureg survcurv survsum svar svar_p svmat svy svy_disp svy_dreg svy_est svy_est_7 svy_estat svy_get svy_gnbreg_p svy_head svy_header svy_heckman_p svy_heckprob_p svy_intreg_p svy_ivreg_p svy_logistic_p svy_logit_p svy_mlogit_p svy_nbreg_p svy_ologit_p svy_oprobit_p svy_poisson_p svy_probit_p svy_regress_p svy_sub svy_sub_7 svy_x svy_x_7 svy_x_p svydes svydes_8 svygen svygnbreg svyheckman svyheckprob svyintreg svyintreg_7 svyintrg svyivreg svylc svylog_p svylogit svymarkout svymarkout_8 svymean svymlog svymlogit svynbreg svyolog svyologit svyoprob svyoprobit svyopts svypois svypois_7 svypoisson svyprobit svyprobt svyprop svyprop_7 svyratio svyreg svyreg_p svyregress svyset svyset_7 svyset_8 svytab svytab_7 svytest svytotal sw sw_8 swcnreg swcox swereg swilk swlogis swlogit swologit swoprbt swpois swprobit swqreg swtobit swweib symmetry symmi symplot symplot_7 syntax sysdescribe sysdir sysuse szroeter ta tab tab1 tab2 tab_or tabd tabdi tabdis tabdisp tabi table tabodds tabodds_7 tabstat tabu tabul tabula tabulat tabulate te tempfile tempname tempvar tes test testnl testparm teststd tetrachoric time_it timer tis tob tobi tobit tobit_p tobit_sw token tokeni tokeniz tokenize tostring total translate translator transmap treat_ll treatr_p treatreg trim trimfill trnb_cons trnb_mean trpoiss_d2 trunc_ll truncr_p truncreg tsappend tset tsfill tsline tsline_ex tsreport tsrevar tsrline tsset tssmooth tsunab ttest ttesti tut_chk tut_wait tutorial tw tware_st two twoway twoway__fpfit_serset twoway__function_gen twoway__histogram_gen twoway__ipoint_serset twoway__ipoints_serset twoway__kdensity_gen twoway__lfit_serset twoway__normgen_gen twoway__pci_serset twoway__qfit_serset twoway__scatteri_serset twoway__sunflower_gen twoway_ksm_serset ty typ type typeof u|0 unab unabbrev unabcmd update us use uselabel var var_mkcompanion var_p varbasic varfcast vargranger varirf varirf_add varirf_cgraph varirf_create varirf_ctable varirf_describe varirf_dir varirf_drop varirf_erase varirf_graph varirf_ograph varirf_rename varirf_set varirf_table varlist varlmar varnorm varsoc varstable varstable_w varstable_w2 varwle vce vec vec_fevd vec_mkphi vec_p vec_p_w vecirf_create veclmar veclmar_w vecnorm vecnorm_w vecrank vecstable verinst vers versi versio version view viewsource vif vwls wdatetof webdescribe webseek webuse weib1_lf weib2_lf weib_lf weib_lf0 weibhet_glf weibhet_glf_sh weibhet_glfa weibhet_glfa_sh weibhet_gp weibhet_ilf weibhet_ilf_sh weibhet_ilfa weibhet_ilfa_sh weibhet_ip weibu_sw weibul_p weibull weibull_c weibull_s weibullhet wh whelp whi which whil while wilc_st wilcoxon win wind windo window winexec wntestb wntestb_7 wntestq xchart xchart_7 xcorr xcorr_7 xi xi_6 xmlsav xmlsave xmluse xpose xsh xshe xshel xshell xt_iis xt_tis xtab_p xtabond xtbin_p xtclog xtcloglog xtcloglog_8 xtcloglog_d2 xtcloglog_pa_p xtcloglog_re_p xtcnt_p xtcorr xtdata xtdes xtfront_p xtfrontier xtgee xtgee_elink xtgee_estat xtgee_makeivar xtgee_p xtgee_plink xtgls xtgls_p xthaus xthausman xtht_p xthtaylor xtile xtint_p xtintreg xtintreg_8 xtintreg_d2 xtintreg_p xtivp_1 xtivp_2 xtivreg xtline xtline_ex xtlogit xtlogit_8 xtlogit_d2 xtlogit_fe_p xtlogit_pa_p xtlogit_re_p xtmixed xtmixed_estat xtmixed_p xtnb_fe xtnb_lf xtnbreg xtnbreg_pa_p xtnbreg_refe_p xtpcse xtpcse_p xtpois xtpoisson xtpoisson_d2 xtpoisson_pa_p xtpoisson_refe_p xtpred xtprobit xtprobit_8 xtprobit_d2 xtprobit_re_p xtps_fe xtps_lf xtps_ren xtps_ren_8 xtrar_p xtrc xtrc_p xtrchh xtrefe_p xtreg xtreg_be xtreg_fe xtreg_ml xtreg_pa_p xtreg_re xtregar xtrere_p xtset xtsf_ll xtsf_llti xtsum xttab xttest0 xttobit xttobit_8 xttobit_p xttrans yx yxview__barlike_draw yxview_area_draw yxview_bar_draw yxview_dot_draw yxview_dropline_draw yxview_function_draw yxview_iarrow_draw yxview_ilabels_draw yxview_normal_draw yxview_pcarrow_draw yxview_pcbarrow_draw yxview_pccapsym_draw yxview_pcscatter_draw yxview_pcspike_draw yxview_rarea_draw yxview_rbar_draw yxview_rbarm_draw yxview_rcap_draw yxview_rcapsym_draw yxview_rconnected_draw yxview_rline_draw yxview_rscatter_draw yxview_rspike_draw yxview_spike_draw yxview_sunflower_draw zap_s zinb zinb_llf zinb_plf zip zip_llf zip_p zip_plf zt_ct_5 zt_hc_5 zt_hcd_5 zt_is_5 zt_iss_5 zt_sho_5 zt_smp_5 ztbase_5 ztcox_5 ztdes_5 ztereg_5 ztfill_5 ztgen_5 ztir_5 ztjoin_5 ztnb ztnb_p ztp ztp_p zts_5 ztset_5 ztspli_5 ztsum_5 zttoct_5 ztvary_5 ztweib_5", +contains:[{className:"symbol",begin:/`[a-zA-Z0-9_]+'/},{className:"variable", +begin:/\$\{?[a-zA-Z0-9_]+\}?/,relevance:0},{className:"string",variants:[{ +begin:'`"[^\r\n]*?"\''},{begin:'"[^\r\n"]*"'}]},{className:"built_in", +variants:[{ +begin:"\\b(abs|acos|asin|atan|atan2|atanh|ceil|cloglog|comb|cos|digamma|exp|floor|invcloglog|invlogit|ln|lnfact|lnfactorial|lngamma|log|log10|max|min|mod|reldif|round|sign|sin|sqrt|sum|tan|tanh|trigamma|trunc|betaden|Binomial|binorm|binormal|chi2|chi2tail|dgammapda|dgammapdada|dgammapdadx|dgammapdx|dgammapdxdx|F|Fden|Ftail|gammaden|gammap|ibeta|invbinomial|invchi2|invchi2tail|invF|invFtail|invgammap|invibeta|invnchi2|invnFtail|invnibeta|invnorm|invnormal|invttail|nbetaden|nchi2|nFden|nFtail|nibeta|norm|normal|normalden|normd|npnchi2|tden|ttail|uniform|abbrev|char|index|indexnot|length|lower|ltrim|match|plural|proper|real|regexm|regexr|regexs|reverse|rtrim|string|strlen|strlower|strltrim|strmatch|strofreal|strpos|strproper|strreverse|strrtrim|strtrim|strupper|subinstr|subinword|substr|trim|upper|word|wordcount|_caller|autocode|byteorder|chop|clip|cond|e|epsdouble|epsfloat|group|inlist|inrange|irecode|matrix|maxbyte|maxdouble|maxfloat|maxint|maxlong|mi|minbyte|mindouble|minfloat|minint|minlong|missing|r|recode|replay|return|s|scalar|d|date|day|dow|doy|halfyear|mdy|month|quarter|week|year|d|daily|dofd|dofh|dofm|dofq|dofw|dofy|h|halfyearly|hofd|m|mofd|monthly|q|qofd|quarterly|tin|twithin|w|weekly|wofd|y|yearly|yh|ym|yofd|yq|yw|cholesky|colnumb|colsof|corr|det|diag|diag0cnt|el|get|hadamard|I|inv|invsym|issym|issymmetric|J|matmissing|matuniform|mreldif|nullmat|rownumb|rowsof|sweep|syminv|trace|vec|vecdiag)(?=\\()" +}]},e.COMMENT("^[ \t]*\\*.*$",!1),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE] +})})();hljs.registerLanguage("stata",e)})();/*! `hy` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const a="a-zA-Z_\\-!.?+*=<>&#'",t="["+a+"]["+a+"0-9/;:]*",i={$pattern:t, +built_in:"!= % %= & &= * ** **= *= *map + += , --build-class-- --import-- -= . / // //= /= < << <<= <= = > >= >> >>= @ @= ^ ^= abs accumulate all and any ap-compose ap-dotimes ap-each ap-each-while ap-filter ap-first ap-if ap-last ap-map ap-map-when ap-pipe ap-reduce ap-reject apply as-> ascii assert assoc bin break butlast callable calling-module-name car case cdr chain chr coll? combinations compile compress cond cons cons? continue count curry cut cycle dec def default-method defclass defmacro defmacro-alias defmacro/g! defmain defmethod defmulti defn defn-alias defnc defnr defreader defseq del delattr delete-route dict-comp dir disassemble dispatch-reader-macro distinct divmod do doto drop drop-last drop-while empty? end-sequence eval eval-and-compile eval-when-compile even? every? except exec filter first flatten float? fn fnc fnr for for* format fraction genexpr gensym get getattr global globals group-by hasattr hash hex id identity if if* if-not if-python2 import in inc input instance? integer integer-char? integer? interleave interpose is is-coll is-cons is-empty is-even is-every is-float is-instance is-integer is-integer-char is-iterable is-iterator is-keyword is-neg is-none is-not is-numeric is-odd is-pos is-string is-symbol is-zero isinstance islice issubclass iter iterable? iterate iterator? keyword keyword? lambda last len let lif lif-not list* list-comp locals loop macro-error macroexpand macroexpand-1 macroexpand-all map max merge-with method-decorator min multi-decorator multicombinations name neg? next none? nonlocal not not-in not? nth numeric? oct odd? open or ord partition permutations pos? post-route postwalk pow prewalk print product profile/calls profile/cpu put-route quasiquote quote raise range read read-str recursive-replace reduce remove repeat repeatedly repr require rest round route route-with-methods rwm second seq set-comp setattr setv some sorted string string? sum switch symbol? take take-nth take-while tee try unless unquote unquote-splicing vars walk when while with with* with-decorator with-gensyms xi xor yield yield-from zero? zip zip-longest | |= ~" +},r={begin:t,relevance:0},n={className:"number",begin:"[-+]?\\d+(\\.\\d+)?", +relevance:0},s=e.inherit(e.QUOTE_STRING_MODE,{illegal:null +}),o=e.COMMENT(";","$",{relevance:0}),l={className:"literal", +begin:/\b([Tt]rue|[Ff]alse|nil|None)\b/},c={begin:"[\\[\\{]",end:"[\\]\\}]", +relevance:0},d={className:"comment",begin:"\\^"+t +},m=e.COMMENT("\\^\\{","\\}"),p={className:"symbol",begin:"[:]{1,2}"+t},u={ +begin:"\\(",end:"\\)"},f={endsWithParent:!0,relevance:0},g={className:"name", +relevance:0,keywords:i,begin:t,starts:f},h=[u,s,d,m,o,p,c,n,l,r] +;return u.contains=[e.COMMENT("comment",""),g,f],f.contains=h,c.contains=h,{ +name:"Hy",aliases:["hylang"],illegal:/\S/, +contains:[e.SHEBANG(),u,s,d,m,o,p,c,n,l]}}})();hljs.registerLanguage("hy",e) +})();/*! `tp` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var O=(()=>{"use strict";return O=>{const e={className:"number", +begin:"[1-9][0-9]*",relevance:0},R={className:"symbol",begin:":[^\\]]+"};return{ +name:"TP",keywords:{ +keyword:["ABORT","ACC","ADJUST","AND","AP_LD","BREAK","CALL","CNT","COL","CONDITION","CONFIG","DA","DB","DIV","DETECT","ELSE","END","ENDFOR","ERR_NUM","ERROR_PROG","FINE","FOR","GP","GUARD","INC","IF","JMP","LINEAR_MAX_SPEED","LOCK","MOD","MONITOR","OFFSET","Offset","OR","OVERRIDE","PAUSE","PREG","PTH","RT_LD","RUN","SELECT","SKIP","Skip","TA","TB","TO","TOOL_OFFSET","Tool_Offset","UF","UT","UFRAME_NUM","UTOOL_NUM","UNLOCK","WAIT","X","Y","Z","W","P","R","STRLEN","SUBSTR","FINDSTR","VOFFSET","PROG","ATTR","MN","POS"], +literal:["ON","OFF","max_speed","LPOS","JPOS","ENABLE","DISABLE","START","STOP","RESET"] +},contains:[{className:"built_in", +begin:"(AR|P|PAYLOAD|PR|R|SR|RSR|LBL|VR|UALM|MESSAGE|UTOOL|UFRAME|TIMER|TIMER_OVERFLOW|JOINT_MAX_SPEED|RESUME_PROG|DIAG_REC)\\[", +end:"\\]",contains:["self",e,R]},{className:"built_in", +begin:"(AI|AO|DI|DO|F|RI|RO|UI|UO|GI|GO|SI|SO)\\[",end:"\\]", +contains:["self",e,O.QUOTE_STRING_MODE,R]},{className:"keyword", +begin:"/(PROG|ATTR|MN|POS|END)\\b"},{className:"keyword", +begin:"(CALL|RUN|POINT_LOGIC|LBL)\\b"},{className:"keyword", +begin:"\\b(ACC|CNT|Skip|Offset|PSPD|RT_LD|AP_LD|Tool_Offset)"},{ +className:"number", +begin:"\\d+(sec|msec|mm/sec|cm/min|inch/min|deg/sec|mm|in|cm)?\\b",relevance:0 +},O.COMMENT("//","[;$]"),O.COMMENT("!","[;$]"),O.COMMENT("--eg:","$"),O.QUOTE_STRING_MODE,{ +className:"string",begin:"'",end:"'"},O.C_NUMBER_MODE,{className:"variable", +begin:"\\$[A-Za-z0-9_]+"}]}}})();hljs.registerLanguage("tp",O)})();/*! `lsl` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var E=(()=>{"use strict";return E=>{const T={className:"number", +relevance:0,begin:E.C_NUMBER_RE};return{name:"LSL (Linden Scripting Language)", +illegal:":",contains:[{className:"string",begin:'"',end:'"',contains:[{ +className:"subst",begin:/\\[tn"\\]/}]},{className:"comment", +variants:[E.COMMENT("//","$"),E.COMMENT("/\\*","\\*/")],relevance:0},T,{ +className:"section",variants:[{begin:"\\b(state|default)\\b"},{ +begin:"\\b(state_(entry|exit)|touch(_(start|end))?|(land_)?collision(_(start|end))?|timer|listen|(no_)?sensor|control|(not_)?at_(rot_)?target|money|email|experience_permissions(_denied)?|run_time_permissions|changed|attach|dataserver|moving_(start|end)|link_message|(on|object)_rez|remote_data|http_re(sponse|quest)|path_update|transaction_result)\\b" +}]},{className:"built_in", +begin:"\\b(ll(AgentInExperience|(Create|DataSize|Delete|KeyCount|Keys|Read|Update)KeyValue|GetExperience(Details|ErrorMessage)|ReturnObjectsBy(ID|Owner)|Json(2List|[GS]etValue|ValueType)|Sin|Cos|Tan|Atan2|Sqrt|Pow|Abs|Fabs|Frand|Floor|Ceil|Round|Vec(Mag|Norm|Dist)|Rot(Between|2(Euler|Fwd|Left|Up))|(Euler|Axes)2Rot|Whisper|(Region|Owner)?Say|Shout|Listen(Control|Remove)?|Sensor(Repeat|Remove)?|Detected(Name|Key|Owner|Type|Pos|Vel|Grab|Rot|Group|LinkNumber)|Die|Ground|Wind|([GS]et)(AnimationOverride|MemoryLimit|PrimMediaParams|ParcelMusicURL|Object(Desc|Name)|PhysicsMaterial|Status|Scale|Color|Alpha|Texture|Pos|Rot|Force|Torque)|ResetAnimationOverride|(Scale|Offset|Rotate)Texture|(Rot)?Target(Remove)?|(Stop)?MoveToTarget|Apply(Rotational)?Impulse|Set(KeyframedMotion|ContentType|RegionPos|(Angular)?Velocity|Buoyancy|HoverHeight|ForceAndTorque|TimerEvent|ScriptState|Damage|TextureAnim|Sound(Queueing|Radius)|Vehicle(Type|(Float|Vector|Rotation)Param)|(Touch|Sit)?Text|Camera(Eye|At)Offset|PrimitiveParams|ClickAction|Link(Alpha|Color|PrimitiveParams(Fast)?|Texture(Anim)?|Camera|Media)|RemoteScriptAccessPin|PayPrice|LocalRot)|ScaleByFactor|Get((Max|Min)ScaleFactor|ClosestNavPoint|StaticPath|SimStats|Env|PrimitiveParams|Link(PrimitiveParams|Number(OfSides)?|Key|Name|Media)|HTTPHeader|FreeURLs|Object(Details|PermMask|PrimCount)|Parcel(MaxPrims|Details|Prim(Count|Owners))|Attached(List)?|(SPMax|Free|Used)Memory|Region(Name|TimeDilation|FPS|Corner|AgentCount)|Root(Position|Rotation)|UnixTime|(Parcel|Region)Flags|(Wall|GMT)clock|SimulatorHostname|BoundingBox|GeometricCenter|Creator|NumberOf(Prims|NotecardLines|Sides)|Animation(List)?|(Camera|Local)(Pos|Rot)|Vel|Accel|Omega|Time(stamp|OfDay)|(Object|CenterOf)?Mass|MassMKS|Energy|Owner|(Owner)?Key|SunDirection|Texture(Offset|Scale|Rot)|Inventory(Number|Name|Key|Type|Creator|PermMask)|Permissions(Key)?|StartParameter|List(Length|EntryType)|Date|Agent(Size|Info|Language|List)|LandOwnerAt|NotecardLine|Script(Name|State))|(Get|Reset|GetAndReset)Time|PlaySound(Slave)?|LoopSound(Master|Slave)?|(Trigger|Stop|Preload)Sound|((Get|Delete)Sub|Insert)String|To(Upper|Lower)|Give(InventoryList|Money)|RezObject|(Stop)?LookAt|Sleep|CollisionFilter|(Take|Release)Controls|DetachFromAvatar|AttachToAvatar(Temp)?|InstantMessage|(GetNext)?Email|StopHover|MinEventDelay|RotLookAt|String(Length|Trim)|(Start|Stop)Animation|TargetOmega|Request(Experience)?Permissions|(Create|Break)Link|BreakAllLinks|(Give|Remove)Inventory|Water|PassTouches|Request(Agent|Inventory)Data|TeleportAgent(Home|GlobalCoords)?|ModifyLand|CollisionSound|ResetScript|MessageLinked|PushObject|PassCollisions|AxisAngle2Rot|Rot2(Axis|Angle)|A(cos|sin)|AngleBetween|AllowInventoryDrop|SubStringIndex|List2(CSV|Integer|Json|Float|String|Key|Vector|Rot|List(Strided)?)|DeleteSubList|List(Statistics|Sort|Randomize|(Insert|Find|Replace)List)|EdgeOfWorld|AdjustSoundVolume|Key2Name|TriggerSoundLimited|EjectFromLand|(CSV|ParseString)2List|OverMyLand|SameGroup|UnSit|Ground(Slope|Normal|Contour)|GroundRepel|(Set|Remove)VehicleFlags|SitOnLink|(AvatarOn)?(Link)?SitTarget|Script(Danger|Profiler)|Dialog|VolumeDetect|ResetOtherScript|RemoteLoadScriptPin|(Open|Close)RemoteDataChannel|SendRemoteData|RemoteDataReply|(Integer|String)ToBase64|XorBase64|Log(10)?|Base64To(String|Integer)|ParseStringKeepNulls|RezAtRoot|RequestSimulatorData|ForceMouselook|(Load|Release|(E|Une)scape)URL|ParcelMedia(CommandList|Query)|ModPow|MapDestination|(RemoveFrom|AddTo|Reset)Land(Pass|Ban)List|(Set|Clear)CameraParams|HTTP(Request|Response)|TextBox|DetectedTouch(UV|Face|Pos|(N|Bin)ormal|ST)|(MD5|SHA1|DumpList2)String|Request(Secure)?URL|Clear(Prim|Link)Media|(Link)?ParticleSystem|(Get|Request)(Username|DisplayName)|RegionSayTo|CastRay|GenerateKey|TransferLindenDollars|ManageEstateAccess|(Create|Delete)Character|ExecCharacterCmd|Evade|FleeFrom|NavigateTo|PatrolPoints|Pursue|UpdateCharacter|WanderWithin))\\b" +},{className:"literal",variants:[{ +begin:"\\b(PI|TWO_PI|PI_BY_TWO|DEG_TO_RAD|RAD_TO_DEG|SQRT2)\\b"},{ +begin:"\\b(XP_ERROR_(EXPERIENCES_DISABLED|EXPERIENCE_(DISABLED|SUSPENDED)|INVALID_(EXPERIENCE|PARAMETERS)|KEY_NOT_FOUND|MATURITY_EXCEEDED|NONE|NOT_(FOUND|PERMITTED(_LAND)?)|NO_EXPERIENCE|QUOTA_EXCEEDED|RETRY_UPDATE|STORAGE_EXCEPTION|STORE_DISABLED|THROTTLED|UNKNOWN_ERROR)|JSON_APPEND|STATUS_(PHYSICS|ROTATE_[XYZ]|PHANTOM|SANDBOX|BLOCK_GRAB(_OBJECT)?|(DIE|RETURN)_AT_EDGE|CAST_SHADOWS|OK|MALFORMED_PARAMS|TYPE_MISMATCH|BOUNDS_ERROR|NOT_(FOUND|SUPPORTED)|INTERNAL_ERROR|WHITELIST_FAILED)|AGENT(_(BY_(LEGACY_|USER)NAME|FLYING|ATTACHMENTS|SCRIPTED|MOUSELOOK|SITTING|ON_OBJECT|AWAY|WALKING|IN_AIR|TYPING|CROUCHING|BUSY|ALWAYS_RUN|AUTOPILOT|LIST_(PARCEL(_OWNER)?|REGION)))?|CAMERA_(PITCH|DISTANCE|BEHINDNESS_(ANGLE|LAG)|(FOCUS|POSITION)(_(THRESHOLD|LOCKED|LAG))?|FOCUS_OFFSET|ACTIVE)|ANIM_ON|LOOP|REVERSE|PING_PONG|SMOOTH|ROTATE|SCALE|ALL_SIDES|LINK_(ROOT|SET|ALL_(OTHERS|CHILDREN)|THIS)|ACTIVE|PASS(IVE|_(ALWAYS|IF_NOT_HANDLED|NEVER))|SCRIPTED|CONTROL_(FWD|BACK|(ROT_)?(LEFT|RIGHT)|UP|DOWN|(ML_)?LBUTTON)|PERMISSION_(RETURN_OBJECTS|DEBIT|OVERRIDE_ANIMATIONS|SILENT_ESTATE_MANAGEMENT|TAKE_CONTROLS|TRIGGER_ANIMATION|ATTACH|CHANGE_LINKS|(CONTROL|TRACK)_CAMERA|TELEPORT)|INVENTORY_(TEXTURE|SOUND|OBJECT|SCRIPT|LANDMARK|CLOTHING|NOTECARD|BODYPART|ANIMATION|GESTURE|ALL|NONE)|CHANGED_(INVENTORY|COLOR|SHAPE|SCALE|TEXTURE|LINK|ALLOWED_DROP|OWNER|REGION(_START)?|TELEPORT|MEDIA)|OBJECT_(CLICK_ACTION|HOVER_HEIGHT|LAST_OWNER_ID|(PHYSICS|SERVER|STREAMING)_COST|UNKNOWN_DETAIL|CHARACTER_TIME|PHANTOM|PHYSICS|TEMP_(ATTACHED|ON_REZ)|NAME|DESC|POS|PRIM_(COUNT|EQUIVALENCE)|RETURN_(PARCEL(_OWNER)?|REGION)|REZZER_KEY|ROO?T|VELOCITY|OMEGA|OWNER|GROUP(_TAG)?|CREATOR|ATTACHED_(POINT|SLOTS_AVAILABLE)|RENDER_WEIGHT|(BODY_SHAPE|PATHFINDING)_TYPE|(RUNNING|TOTAL)_SCRIPT_COUNT|TOTAL_INVENTORY_COUNT|SCRIPT_(MEMORY|TIME))|TYPE_(INTEGER|FLOAT|STRING|KEY|VECTOR|ROTATION|INVALID)|(DEBUG|PUBLIC)_CHANNEL|ATTACH_(AVATAR_CENTER|CHEST|HEAD|BACK|PELVIS|MOUTH|CHIN|NECK|NOSE|BELLY|[LR](SHOULDER|HAND|FOOT|EAR|EYE|[UL](ARM|LEG)|HIP)|(LEFT|RIGHT)_PEC|HUD_(CENTER_[12]|TOP_(RIGHT|CENTER|LEFT)|BOTTOM(_(RIGHT|LEFT))?)|[LR]HAND_RING1|TAIL_(BASE|TIP)|[LR]WING|FACE_(JAW|[LR]EAR|[LR]EYE|TOUNGE)|GROIN|HIND_[LR]FOOT)|LAND_(LEVEL|RAISE|LOWER|SMOOTH|NOISE|REVERT)|DATA_(ONLINE|NAME|BORN|SIM_(POS|STATUS|RATING)|PAYINFO)|PAYMENT_INFO_(ON_FILE|USED)|REMOTE_DATA_(CHANNEL|REQUEST|REPLY)|PSYS_(PART_(BF_(ZERO|ONE(_MINUS_(DEST_COLOR|SOURCE_(ALPHA|COLOR)))?|DEST_COLOR|SOURCE_(ALPHA|COLOR))|BLEND_FUNC_(DEST|SOURCE)|FLAGS|(START|END)_(COLOR|ALPHA|SCALE|GLOW)|MAX_AGE|(RIBBON|WIND|INTERP_(COLOR|SCALE)|BOUNCE|FOLLOW_(SRC|VELOCITY)|TARGET_(POS|LINEAR)|EMISSIVE)_MASK)|SRC_(MAX_AGE|PATTERN|ANGLE_(BEGIN|END)|BURST_(RATE|PART_COUNT|RADIUS|SPEED_(MIN|MAX))|ACCEL|TEXTURE|TARGET_KEY|OMEGA|PATTERN_(DROP|EXPLODE|ANGLE(_CONE(_EMPTY)?)?)))|VEHICLE_(REFERENCE_FRAME|TYPE_(NONE|SLED|CAR|BOAT|AIRPLANE|BALLOON)|(LINEAR|ANGULAR)_(FRICTION_TIMESCALE|MOTOR_DIRECTION)|LINEAR_MOTOR_OFFSET|HOVER_(HEIGHT|EFFICIENCY|TIMESCALE)|BUOYANCY|(LINEAR|ANGULAR)_(DEFLECTION_(EFFICIENCY|TIMESCALE)|MOTOR_(DECAY_)?TIMESCALE)|VERTICAL_ATTRACTION_(EFFICIENCY|TIMESCALE)|BANKING_(EFFICIENCY|MIX|TIMESCALE)|FLAG_(NO_DEFLECTION_UP|LIMIT_(ROLL_ONLY|MOTOR_UP)|HOVER_((WATER|TERRAIN|UP)_ONLY|GLOBAL_HEIGHT)|MOUSELOOK_(STEER|BANK)|CAMERA_DECOUPLED))|PRIM_(ALLOW_UNSIT|ALPHA_MODE(_(BLEND|EMISSIVE|MASK|NONE))?|NORMAL|SPECULAR|TYPE(_(BOX|CYLINDER|PRISM|SPHERE|TORUS|TUBE|RING|SCULPT))?|HOLE_(DEFAULT|CIRCLE|SQUARE|TRIANGLE)|MATERIAL(_(STONE|METAL|GLASS|WOOD|FLESH|PLASTIC|RUBBER))?|SHINY_(NONE|LOW|MEDIUM|HIGH)|BUMP_(NONE|BRIGHT|DARK|WOOD|BARK|BRICKS|CHECKER|CONCRETE|TILE|STONE|DISKS|GRAVEL|BLOBS|SIDING|LARGETILE|STUCCO|SUCTION|WEAVE)|TEXGEN_(DEFAULT|PLANAR)|SCRIPTED_SIT_ONLY|SCULPT_(TYPE_(SPHERE|TORUS|PLANE|CYLINDER|MASK)|FLAG_(MIRROR|INVERT))|PHYSICS(_(SHAPE_(CONVEX|NONE|PRIM|TYPE)))?|(POS|ROT)_LOCAL|SLICE|TEXT|FLEXIBLE|POINT_LIGHT|TEMP_ON_REZ|PHANTOM|POSITION|SIT_TARGET|SIZE|ROTATION|TEXTURE|NAME|OMEGA|DESC|LINK_TARGET|COLOR|BUMP_SHINY|FULLBRIGHT|TEXGEN|GLOW|MEDIA_(ALT_IMAGE_ENABLE|CONTROLS|(CURRENT|HOME)_URL|AUTO_(LOOP|PLAY|SCALE|ZOOM)|FIRST_CLICK_INTERACT|(WIDTH|HEIGHT)_PIXELS|WHITELIST(_ENABLE)?|PERMS_(INTERACT|CONTROL)|PARAM_MAX|CONTROLS_(STANDARD|MINI)|PERM_(NONE|OWNER|GROUP|ANYONE)|MAX_(URL_LENGTH|WHITELIST_(SIZE|COUNT)|(WIDTH|HEIGHT)_PIXELS)))|MASK_(BASE|OWNER|GROUP|EVERYONE|NEXT)|PERM_(TRANSFER|MODIFY|COPY|MOVE|ALL)|PARCEL_(MEDIA_COMMAND_(STOP|PAUSE|PLAY|LOOP|TEXTURE|URL|TIME|AGENT|UNLOAD|AUTO_ALIGN|TYPE|SIZE|DESC|LOOP_SET)|FLAG_(ALLOW_(FLY|(GROUP_)?SCRIPTS|LANDMARK|TERRAFORM|DAMAGE|CREATE_(GROUP_)?OBJECTS)|USE_(ACCESS_(GROUP|LIST)|BAN_LIST|LAND_PASS_LIST)|LOCAL_SOUND_ONLY|RESTRICT_PUSHOBJECT|ALLOW_(GROUP|ALL)_OBJECT_ENTRY)|COUNT_(TOTAL|OWNER|GROUP|OTHER|SELECTED|TEMP)|DETAILS_(NAME|DESC|OWNER|GROUP|AREA|ID|SEE_AVATARS))|LIST_STAT_(MAX|MIN|MEAN|MEDIAN|STD_DEV|SUM(_SQUARES)?|NUM_COUNT|GEOMETRIC_MEAN|RANGE)|PAY_(HIDE|DEFAULT)|REGION_FLAG_(ALLOW_DAMAGE|FIXED_SUN|BLOCK_TERRAFORM|SANDBOX|DISABLE_(COLLISIONS|PHYSICS)|BLOCK_FLY|ALLOW_DIRECT_TELEPORT|RESTRICT_PUSHOBJECT)|HTTP_(METHOD|MIMETYPE|BODY_(MAXLENGTH|TRUNCATED)|CUSTOM_HEADER|PRAGMA_NO_CACHE|VERBOSE_THROTTLE|VERIFY_CERT)|SIT_(INVALID_(AGENT|LINK_OBJECT)|NO(T_EXPERIENCE|_(ACCESS|EXPERIENCE_PERMISSION|SIT_TARGET)))|STRING_(TRIM(_(HEAD|TAIL))?)|CLICK_ACTION_(NONE|TOUCH|SIT|BUY|PAY|OPEN(_MEDIA)?|PLAY|ZOOM)|TOUCH_INVALID_FACE|PROFILE_(NONE|SCRIPT_MEMORY)|RC_(DATA_FLAGS|DETECT_PHANTOM|GET_(LINK_NUM|NORMAL|ROOT_KEY)|MAX_HITS|REJECT_(TYPES|AGENTS|(NON)?PHYSICAL|LAND))|RCERR_(CAST_TIME_EXCEEDED|SIM_PERF_LOW|UNKNOWN)|ESTATE_ACCESS_(ALLOWED_(AGENT|GROUP)_(ADD|REMOVE)|BANNED_AGENT_(ADD|REMOVE))|DENSITY|FRICTION|RESTITUTION|GRAVITY_MULTIPLIER|KFM_(COMMAND|CMD_(PLAY|STOP|PAUSE)|MODE|FORWARD|LOOP|PING_PONG|REVERSE|DATA|ROTATION|TRANSLATION)|ERR_(GENERIC|PARCEL_PERMISSIONS|MALFORMED_PARAMS|RUNTIME_PERMISSIONS|THROTTLED)|CHARACTER_(CMD_((SMOOTH_)?STOP|JUMP)|DESIRED_(TURN_)?SPEED|RADIUS|STAY_WITHIN_PARCEL|LENGTH|ORIENTATION|ACCOUNT_FOR_SKIPPED_FRAMES|AVOIDANCE_MODE|TYPE(_([ABCD]|NONE))?|MAX_(DECEL|TURN_RADIUS|(ACCEL|SPEED)))|PURSUIT_(OFFSET|FUZZ_FACTOR|GOAL_TOLERANCE|INTERCEPT)|REQUIRE_LINE_OF_SIGHT|FORCE_DIRECT_PATH|VERTICAL|HORIZONTAL|AVOID_(CHARACTERS|DYNAMIC_OBSTACLES|NONE)|PU_(EVADE_(HIDDEN|SPOTTED)|FAILURE_(DYNAMIC_PATHFINDING_DISABLED|INVALID_(GOAL|START)|NO_(NAVMESH|VALID_DESTINATION)|OTHER|TARGET_GONE|(PARCEL_)?UNREACHABLE)|(GOAL|SLOWDOWN_DISTANCE)_REACHED)|TRAVERSAL_TYPE(_(FAST|NONE|SLOW))?|CONTENT_TYPE_(ATOM|FORM|HTML|JSON|LLSD|RSS|TEXT|XHTML|XML)|GCNP_(RADIUS|STATIC)|(PATROL|WANDER)_PAUSE_AT_WAYPOINTS|OPT_(AVATAR|CHARACTER|EXCLUSION_VOLUME|LEGACY_LINKSET|MATERIAL_VOLUME|OTHER|STATIC_OBSTACLE|WALKABLE)|SIM_STAT_PCT_CHARS_STEPPED)\\b" +},{begin:"\\b(FALSE|TRUE)\\b"},{begin:"\\b(ZERO_ROTATION)\\b"},{ +begin:"\\b(EOF|JSON_(ARRAY|DELETE|FALSE|INVALID|NULL|NUMBER|OBJECT|STRING|TRUE)|NULL_KEY|TEXTURE_(BLANK|DEFAULT|MEDIA|PLYWOOD|TRANSPARENT)|URL_REQUEST_(GRANTED|DENIED))\\b" +},{begin:"\\b(ZERO_VECTOR|TOUCH_INVALID_(TEXCOORD|VECTOR))\\b"}]},{ +className:"type", +begin:"\\b(integer|float|string|key|vector|quaternion|rotation|list)\\b"}]}}})() +;hljs.registerLanguage("lsl",E)})();/*! `verilog` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const n=e.regex,t=["begin_keywords","celldefine","default_nettype","default_decay_time","default_trireg_strength","define","delay_mode_distributed","delay_mode_path","delay_mode_unit","delay_mode_zero","else","elsif","end_keywords","endcelldefine","endif","ifdef","ifndef","include","line","nounconnected_drive","pragma","resetall","timescale","unconnected_drive","undef","undefineall"] +;return{name:"Verilog",aliases:["v","sv","svh"],case_insensitive:!1,keywords:{ +$pattern:/\$?[\w]+(\$[\w]+)*/, +keyword:["accept_on","alias","always","always_comb","always_ff","always_latch","and","assert","assign","assume","automatic","before","begin","bind","bins","binsof","bit","break","buf|0","bufif0","bufif1","byte","case","casex","casez","cell","chandle","checker","class","clocking","cmos","config","const","constraint","context","continue","cover","covergroup","coverpoint","cross","deassign","default","defparam","design","disable","dist","do","edge","else","end","endcase","endchecker","endclass","endclocking","endconfig","endfunction","endgenerate","endgroup","endinterface","endmodule","endpackage","endprimitive","endprogram","endproperty","endspecify","endsequence","endtable","endtask","enum","event","eventually","expect","export","extends","extern","final","first_match","for","force","foreach","forever","fork","forkjoin","function","generate|5","genvar","global","highz0","highz1","if","iff","ifnone","ignore_bins","illegal_bins","implements","implies","import","incdir","include","initial","inout","input","inside","instance","int","integer","interconnect","interface","intersect","join","join_any","join_none","large","let","liblist","library","local","localparam","logic","longint","macromodule","matches","medium","modport","module","nand","negedge","nettype","new","nexttime","nmos","nor","noshowcancelled","not","notif0","notif1","or","output","package","packed","parameter","pmos","posedge","primitive","priority","program","property","protected","pull0","pull1","pulldown","pullup","pulsestyle_ondetect","pulsestyle_onevent","pure","rand","randc","randcase","randsequence","rcmos","real","realtime","ref","reg","reject_on","release","repeat","restrict","return","rnmos","rpmos","rtran","rtranif0","rtranif1","s_always","s_eventually","s_nexttime","s_until","s_until_with","scalared","sequence","shortint","shortreal","showcancelled","signed","small","soft","solve","specify","specparam","static","string","strong","strong0","strong1","struct","super","supply0","supply1","sync_accept_on","sync_reject_on","table","tagged","task","this","throughout","time","timeprecision","timeunit","tran","tranif0","tranif1","tri","tri0","tri1","triand","trior","trireg","type","typedef","union","unique","unique0","unsigned","until","until_with","untyped","use","uwire","var","vectored","virtual","void","wait","wait_order","wand","weak","weak0","weak1","while","wildcard","wire","with","within","wor","xnor","xor"], +literal:["null"], +built_in:["$finish","$stop","$exit","$fatal","$error","$warning","$info","$realtime","$time","$printtimescale","$bitstoreal","$bitstoshortreal","$itor","$signed","$cast","$bits","$stime","$timeformat","$realtobits","$shortrealtobits","$rtoi","$unsigned","$asserton","$assertkill","$assertpasson","$assertfailon","$assertnonvacuouson","$assertoff","$assertcontrol","$assertpassoff","$assertfailoff","$assertvacuousoff","$isunbounded","$sampled","$fell","$changed","$past_gclk","$fell_gclk","$changed_gclk","$rising_gclk","$steady_gclk","$coverage_control","$coverage_get","$coverage_save","$set_coverage_db_name","$rose","$stable","$past","$rose_gclk","$stable_gclk","$future_gclk","$falling_gclk","$changing_gclk","$display","$coverage_get_max","$coverage_merge","$get_coverage","$load_coverage_db","$typename","$unpacked_dimensions","$left","$low","$increment","$clog2","$ln","$log10","$exp","$sqrt","$pow","$floor","$ceil","$sin","$cos","$tan","$countbits","$onehot","$isunknown","$fatal","$warning","$dimensions","$right","$high","$size","$asin","$acos","$atan","$atan2","$hypot","$sinh","$cosh","$tanh","$asinh","$acosh","$atanh","$countones","$onehot0","$error","$info","$random","$dist_chi_square","$dist_erlang","$dist_exponential","$dist_normal","$dist_poisson","$dist_t","$dist_uniform","$q_initialize","$q_remove","$q_exam","$async$and$array","$async$nand$array","$async$or$array","$async$nor$array","$sync$and$array","$sync$nand$array","$sync$or$array","$sync$nor$array","$q_add","$q_full","$psprintf","$async$and$plane","$async$nand$plane","$async$or$plane","$async$nor$plane","$sync$and$plane","$sync$nand$plane","$sync$or$plane","$sync$nor$plane","$system","$display","$displayb","$displayh","$displayo","$strobe","$strobeb","$strobeh","$strobeo","$write","$readmemb","$readmemh","$writememh","$value$plusargs","$dumpvars","$dumpon","$dumplimit","$dumpports","$dumpportson","$dumpportslimit","$writeb","$writeh","$writeo","$monitor","$monitorb","$monitorh","$monitoro","$writememb","$dumpfile","$dumpoff","$dumpall","$dumpflush","$dumpportsoff","$dumpportsall","$dumpportsflush","$fclose","$fdisplay","$fdisplayb","$fdisplayh","$fdisplayo","$fstrobe","$fstrobeb","$fstrobeh","$fstrobeo","$swrite","$swriteb","$swriteh","$swriteo","$fscanf","$fread","$fseek","$fflush","$feof","$fopen","$fwrite","$fwriteb","$fwriteh","$fwriteo","$fmonitor","$fmonitorb","$fmonitorh","$fmonitoro","$sformat","$sformatf","$fgetc","$ungetc","$fgets","$sscanf","$rewind","$ftell","$ferror"] +},contains:[e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE,e.QUOTE_STRING_MODE,{ +scope:"number",contains:[e.BACKSLASH_ESCAPE],variants:[{ +begin:/\b((\d+'([bhodBHOD]))[0-9xzXZa-fA-F_]+)/},{ +begin:/\B(('([bhodBHOD]))[0-9xzXZa-fA-F_]+)/},{begin:/\b[0-9][0-9_]*/, +relevance:0}]},{scope:"variable",variants:[{begin:"#\\((?!parameter).+\\)"},{ +begin:"\\.\\w+",relevance:0}]},{scope:"variable.constant", +match:n.concat(/`/,n.either("__FILE__","__LINE__"))},{scope:"meta", +begin:n.concat(/`/,n.either(...t)),end:/$|\/\/|\/\*/,returnEnd:!0,keywords:t}]}} +})();hljs.registerLanguage("verilog",e)})();/*! `routeros` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const r="foreach do while for if from to step else on-error and or not in",n="true false yes no nothing nil null",i={ +className:"variable",variants:[{begin:/\$[\w\d#@][\w\d_]*/},{begin:/\$\{(.*?)\}/ +}]},s={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,i,{ +className:"variable",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]}]},t={ +className:"string",begin:/'/,end:/'/};return{name:"MikroTik RouterOS script", +aliases:["mikrotik"],case_insensitive:!0,keywords:{$pattern:/:?[\w-]+/, +literal:n, +keyword:r+" :"+r.split(" ").join(" :")+" :"+"global local beep delay put len typeof pick log time set find environment terminal error execute parse resolve toarray tobool toid toip toip6 tonum tostr totime".split(" ").join(" :") +},contains:[{variants:[{begin:/\/\*/,end:/\*\//},{begin:/\/\//,end:/$/},{ +begin:/<\//,end:/>/}],illegal:/./},e.COMMENT("^#","$"),s,t,i,{ +begin:/[\w-]+=([^\s{}[\]()>]+)/,relevance:0,returnBegin:!0,contains:[{ +className:"attribute",begin:/[^=]+/},{begin:/=/,endsWithParent:!0,relevance:0, +contains:[s,t,i,{className:"literal",begin:"\\b("+n.split(" ").join("|")+")\\b" +},{begin:/("[^"]*"|[^\s{}[\]]+)/}]}]},{className:"number",begin:/\*[0-9a-fA-F]+/ +},{ +begin:"\\b(add|remove|enable|disable|set|get|print|export|edit|find|run|debug|error|info|warning)([\\s[(\\]|])", +returnBegin:!0,contains:[{className:"built_in",begin:/\w+/}]},{ +className:"built_in",variants:[{ +begin:"(\\.\\./|/|\\s)((traffic-flow|traffic-generator|firewall|scheduler|aaa|accounting|address-list|address|align|area|bandwidth-server|bfd|bgp|bridge|client|clock|community|config|connection|console|customer|default|dhcp-client|dhcp-server|discovery|dns|e-mail|ethernet|filter|firmware|gps|graphing|group|hardware|health|hotspot|identity|igmp-proxy|incoming|instance|interface|ip|ipsec|ipv6|irq|l2tp-server|lcd|ldp|logging|mac-server|mac-winbox|mangle|manual|mirror|mme|mpls|nat|nd|neighbor|network|note|ntp|ospf|ospf-v3|ovpn-server|page|peer|pim|ping|policy|pool|port|ppp|pppoe-client|pptp-server|prefix|profile|proposal|proxy|queue|radius|resource|rip|ripng|route|routing|screen|script|security-profiles|server|service|service-port|settings|shares|smb|sms|sniffer|snmp|snooper|socks|sstp-server|system|tool|tracking|type|upgrade|upnp|user-manager|users|user|vlan|secret|vrrp|watchdog|web-access|wireless|pptp|pppoe|lan|wan|layer7-protocol|lease|simple|raw);?\\s)+" +},{begin:/\.\./,relevance:0}]}]}}})();hljs.registerLanguage("routeros",e)})();/*! `capnproto` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var t=(()=>{"use strict";return t=>{const n={variants:[{ +match:[/(struct|enum|interface)/,/\s+/,t.IDENT_RE]},{ +match:[/extends/,/\s*\(/,t.IDENT_RE,/\s*\)/]}],scope:{1:"keyword", +3:"title.class"}};return{name:"Cap\u2019n Proto",aliases:["capnp"],keywords:{ +keyword:["struct","enum","interface","union","group","import","using","const","annotation","extends","in","of","on","as","with","from","fixed"], +type:["Void","Bool","Int8","Int16","Int32","Int64","UInt8","UInt16","UInt32","UInt64","Float32","Float64","Text","Data","AnyPointer","AnyStruct","Capability","List"], +literal:["true","false"]}, +contains:[t.QUOTE_STRING_MODE,t.NUMBER_MODE,t.HASH_COMMENT_MODE,{ +className:"meta",begin:/@0x[\w\d]{16};/,illegal:/\n/},{className:"symbol", +begin:/@\d+\b/},n]}}})();hljs.registerLanguage("capnproto",t)})();/*! `hsp` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"HSP",case_insensitive:!0, +keywords:{$pattern:/[\w._]+/, +keyword:"goto gosub return break repeat loop continue wait await dim sdim foreach dimtype dup dupptr end stop newmod delmod mref run exgoto on mcall assert logmes newlab resume yield onexit onerror onkey onclick oncmd exist delete mkdir chdir dirlist bload bsave bcopy memfile if else poke wpoke lpoke getstr chdpm memexpand memcpy memset notesel noteadd notedel noteload notesave randomize noteunsel noteget split strrep setease button chgdisp exec dialog mmload mmplay mmstop mci pset pget syscolor mes print title pos circle cls font sysfont objsize picload color palcolor palette redraw width gsel gcopy gzoom gmode bmpsave hsvcolor getkey listbox chkbox combox input mesbox buffer screen bgscr mouse objsel groll line clrobj boxf objprm objmode stick grect grotate gsquare gradf objimage objskip objenable celload celdiv celput newcom querycom delcom cnvstow comres axobj winobj sendmsg comevent comevarg sarrayconv callfunc cnvwtos comevdisp libptr system hspstat hspver stat cnt err strsize looplev sublev iparam wparam lparam refstr refdval int rnd strlen length length2 length3 length4 vartype gettime peek wpeek lpeek varptr varuse noteinfo instr abs limit getease str strmid strf getpath strtrim sin cos tan atan sqrt double absf expf logf limitf powf geteasef mousex mousey mousew hwnd hinstance hdc ginfo objinfo dirinfo sysinfo thismod __hspver__ __hsp30__ __date__ __time__ __line__ __file__ _debug __hspdef__ and or xor not screen_normal screen_palette screen_hide screen_fixedsize screen_tool screen_frame gmode_gdi gmode_mem gmode_rgb0 gmode_alpha gmode_rgb0alpha gmode_add gmode_sub gmode_pixela ginfo_mx ginfo_my ginfo_act ginfo_sel ginfo_wx1 ginfo_wy1 ginfo_wx2 ginfo_wy2 ginfo_vx ginfo_vy ginfo_sizex ginfo_sizey ginfo_winx ginfo_winy ginfo_mesx ginfo_mesy ginfo_r ginfo_g ginfo_b ginfo_paluse ginfo_dispx ginfo_dispy ginfo_cx ginfo_cy ginfo_intid ginfo_newid ginfo_sx ginfo_sy objinfo_mode objinfo_bmscr objinfo_hwnd notemax notesize dir_cur dir_exe dir_win dir_sys dir_cmdline dir_desktop dir_mydoc dir_tv font_normal font_bold font_italic font_underline font_strikeout font_antialias objmode_normal objmode_guifont objmode_usefont gsquare_grad msgothic msmincho do until while wend for next _break _continue switch case default swbreak swend ddim ldim alloc m_pi rad2deg deg2rad ease_linear ease_quad_in ease_quad_out ease_quad_inout ease_cubic_in ease_cubic_out ease_cubic_inout ease_quartic_in ease_quartic_out ease_quartic_inout ease_bounce_in ease_bounce_out ease_bounce_inout ease_shake_in ease_shake_out ease_shake_inout ease_loop" +}, +contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{ +className:"string",begin:/\{"/,end:/"\}/,contains:[e.BACKSLASH_ESCAPE] +},e.COMMENT(";","$",{relevance:0}),{className:"meta",begin:"#",end:"$", +keywords:{ +keyword:"addion cfunc cmd cmpopt comfunc const defcfunc deffunc define else endif enum epack func global if ifdef ifndef include modcfunc modfunc modinit modterm module pack packopt regcmd runtime undef usecom uselib" +},contains:[e.inherit(e.QUOTE_STRING_MODE,{className:"string" +}),e.NUMBER_MODE,e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE] +},{className:"symbol",begin:"^\\*(\\w+|@)"},e.NUMBER_MODE,e.C_NUMBER_MODE]})})() +;hljs.registerLanguage("hsp",e)})();/*! `brainfuck` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n={className:"literal", +begin:/[+-]+/,relevance:0};return{name:"Brainfuck",aliases:["bf"], +contains:[e.COMMENT(/[^\[\]\.,\+\-<> \r\n]/,/[\[\]\.,\+\-<> \r\n]/,{contains:[{ +match:/[ ]+[^\[\]\.,\+\-<> \r\n]/,relevance:0}],returnEnd:!0,relevance:0}),{ +className:"title",begin:"[\\[\\]]",relevance:0},{className:"string", +begin:"[\\.,]",relevance:0},{begin:/(?=\+\+|--)/,contains:[n]},n]}}})() +;hljs.registerLanguage("brainfuck",e)})();/*! `arduino` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const t={ +type:["boolean","byte","word","String"], +built_in:["KeyboardController","MouseController","SoftwareSerial","EthernetServer","EthernetClient","LiquidCrystal","RobotControl","GSMVoiceCall","EthernetUDP","EsploraTFT","HttpClient","RobotMotor","WiFiClient","GSMScanner","FileSystem","Scheduler","GSMServer","YunClient","YunServer","IPAddress","GSMClient","GSMModem","Keyboard","Ethernet","Console","GSMBand","Esplora","Stepper","Process","WiFiUDP","GSM_SMS","Mailbox","USBHost","Firmata","PImage","Client","Server","GSMPIN","FileIO","Bridge","Serial","EEPROM","Stream","Mouse","Audio","Servo","File","Task","GPRS","WiFi","Wire","TFT","GSM","SPI","SD"], +_hints:["setup","loop","runShellCommandAsynchronously","analogWriteResolution","retrieveCallingNumber","printFirmwareVersion","analogReadResolution","sendDigitalPortPair","noListenOnLocalhost","readJoystickButton","setFirmwareVersion","readJoystickSwitch","scrollDisplayRight","getVoiceCallStatus","scrollDisplayLeft","writeMicroseconds","delayMicroseconds","beginTransmission","getSignalStrength","runAsynchronously","getAsynchronously","listenOnLocalhost","getCurrentCarrier","readAccelerometer","messageAvailable","sendDigitalPorts","lineFollowConfig","countryNameWrite","runShellCommand","readStringUntil","rewindDirectory","readTemperature","setClockDivider","readLightSensor","endTransmission","analogReference","detachInterrupt","countryNameRead","attachInterrupt","encryptionType","readBytesUntil","robotNameWrite","readMicrophone","robotNameRead","cityNameWrite","userNameWrite","readJoystickY","readJoystickX","mouseReleased","openNextFile","scanNetworks","noInterrupts","digitalWrite","beginSpeaker","mousePressed","isActionDone","mouseDragged","displayLogos","noAutoscroll","addParameter","remoteNumber","getModifiers","keyboardRead","userNameRead","waitContinue","processInput","parseCommand","printVersion","readNetworks","writeMessage","blinkVersion","cityNameRead","readMessage","setDataMode","parsePacket","isListening","setBitOrder","beginPacket","isDirectory","motorsWrite","drawCompass","digitalRead","clearScreen","serialEvent","rightToLeft","setTextSize","leftToRight","requestFrom","keyReleased","compassRead","analogWrite","interrupts","WiFiServer","disconnect","playMelody","parseFloat","autoscroll","getPINUsed","setPINUsed","setTimeout","sendAnalog","readSlider","analogRead","beginWrite","createChar","motorsStop","keyPressed","tempoWrite","readButton","subnetMask","debugPrint","macAddress","writeGreen","randomSeed","attachGPRS","readString","sendString","remotePort","releaseAll","mouseMoved","background","getXChange","getYChange","answerCall","getResult","voiceCall","endPacket","constrain","getSocket","writeJSON","getButton","available","connected","findUntil","readBytes","exitValue","readGreen","writeBlue","startLoop","IPAddress","isPressed","sendSysex","pauseMode","gatewayIP","setCursor","getOemKey","tuneWrite","noDisplay","loadImage","switchPIN","onRequest","onReceive","changePIN","playFile","noBuffer","parseInt","overflow","checkPIN","knobRead","beginTFT","bitClear","updateIR","bitWrite","position","writeRGB","highByte","writeRed","setSpeed","readBlue","noStroke","remoteIP","transfer","shutdown","hangCall","beginSMS","endWrite","attached","maintain","noCursor","checkReg","checkPUK","shiftOut","isValid","shiftIn","pulseIn","connect","println","localIP","pinMode","getIMEI","display","noBlink","process","getBand","running","beginSD","drawBMP","lowByte","setBand","release","bitRead","prepare","pointTo","readRed","setMode","noFill","remove","listen","stroke","detach","attach","noTone","exists","buffer","height","bitSet","circle","config","cursor","random","IRread","setDNS","endSMS","getKey","micros","millis","begin","print","write","ready","flush","width","isPIN","blink","clear","press","mkdir","rmdir","close","point","yield","image","BSSID","click","delay","read","text","move","peek","beep","rect","line","open","seek","fill","size","turn","stop","home","find","step","tone","sqrt","RSSI","SSID","end","bit","tan","cos","sin","pow","map","abs","max","min","get","run","put"], +literal:["DIGITAL_MESSAGE","FIRMATA_STRING","ANALOG_MESSAGE","REPORT_DIGITAL","REPORT_ANALOG","INPUT_PULLUP","SET_PIN_MODE","INTERNAL2V56","SYSTEM_RESET","LED_BUILTIN","INTERNAL1V1","SYSEX_START","INTERNAL","EXTERNAL","DEFAULT","OUTPUT","INPUT","HIGH","LOW"] +},r=(e=>{const t=e.regex,r=e.COMMENT("//","$",{contains:[{begin:/\\\n/}] +}),n="[a-zA-Z_]\\w*::",a="(?!struct)(decltype\\(auto\\)|"+t.optional(n)+"[a-zA-Z_]\\w*"+t.optional("<[^<>]+>")+")",i={ +className:"type",begin:"\\b[a-z\\d_]*_t\\b"},s={className:"string",variants:[{ +begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{ +begin:"(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)", +end:"'",illegal:"."},e.END_SAME_AS_BEGIN({ +begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},o={ +className:"number",variants:[{begin:"\\b(0b[01']+)"},{ +begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)" +},{ +begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)" +}],relevance:0},l={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{ +keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include" +},contains:[{begin:/\\\n/,relevance:0},e.inherit(s,{className:"string"}),{ +className:"string",begin:/<.*?>/},r,e.C_BLOCK_COMMENT_MODE]},c={ +className:"title",begin:t.optional(n)+e.IDENT_RE,relevance:0 +},d=t.optional(n)+e.IDENT_RE+"\\s*\\(",u={ +type:["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"], +keyword:["alignas","alignof","and","and_eq","asm","atomic_cancel","atomic_commit","atomic_noexcept","auto","bitand","bitor","break","case","catch","class","co_await","co_return","co_yield","compl","concept","const_cast|10","consteval","constexpr","constinit","continue","decltype","default","delete","do","dynamic_cast|10","else","enum","explicit","export","extern","false","final","for","friend","goto","if","import","inline","module","mutable","namespace","new","noexcept","not","not_eq","nullptr","operator","or","or_eq","override","private","protected","public","reflexpr","register","reinterpret_cast|10","requires","return","sizeof","static_assert","static_cast|10","struct","switch","synchronized","template","this","thread_local","throw","transaction_safe","transaction_safe_dynamic","true","try","typedef","typeid","typename","union","using","virtual","volatile","while","xor","xor_eq"], +literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"], +_type_hints:["any","auto_ptr","barrier","binary_semaphore","bitset","complex","condition_variable","condition_variable_any","counting_semaphore","deque","false_type","future","imaginary","initializer_list","istringstream","jthread","latch","lock_guard","multimap","multiset","mutex","optional","ostringstream","packaged_task","pair","promise","priority_queue","queue","recursive_mutex","recursive_timed_mutex","scoped_lock","set","shared_future","shared_lock","shared_mutex","shared_timed_mutex","shared_ptr","stack","string_view","stringstream","timed_mutex","thread","true_type","tuple","unique_lock","unique_ptr","unordered_map","unordered_multimap","unordered_multiset","unordered_set","variant","vector","weak_ptr","wstring","wstring_view"] +},p={className:"function.dispatch",relevance:0,keywords:{ +_hint:["abort","abs","acos","apply","as_const","asin","atan","atan2","calloc","ceil","cerr","cin","clog","cos","cosh","cout","declval","endl","exchange","exit","exp","fabs","floor","fmod","forward","fprintf","fputs","free","frexp","fscanf","future","invoke","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","labs","launder","ldexp","log","log10","make_pair","make_shared","make_shared_for_overwrite","make_tuple","make_unique","malloc","memchr","memcmp","memcpy","memset","modf","move","pow","printf","putchar","puts","realloc","scanf","sin","sinh","snprintf","sprintf","sqrt","sscanf","std","stderr","stdin","stdout","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","swap","tan","tanh","terminate","to_underlying","tolower","toupper","vfprintf","visit","vprintf","vsprintf"] +}, +begin:t.concat(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!switch)/,/(?!while)/,e.IDENT_RE,t.lookahead(/(<[^<>]+>|)\s*\(/)) +},m=[p,l,i,r,e.C_BLOCK_COMMENT_MODE,o,s],g={variants:[{begin:/=/,end:/;/},{ +begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}], +keywords:u,contains:m.concat([{begin:/\(/,end:/\)/,keywords:u, +contains:m.concat(["self"]),relevance:0}]),relevance:0},_={className:"function", +begin:"("+a+"[\\*&\\s]+)+"+d,returnBegin:!0,end:/[{;=]/,excludeEnd:!0, +keywords:u,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:"decltype\\(auto\\)", +keywords:u,relevance:0},{begin:d,returnBegin:!0,contains:[c],relevance:0},{ +begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[s,o]},{ +relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:u, +relevance:0,contains:[r,e.C_BLOCK_COMMENT_MODE,s,o,i,{begin:/\(/,end:/\)/, +keywords:u,relevance:0,contains:["self",r,e.C_BLOCK_COMMENT_MODE,s,o,i]}] +},i,r,e.C_BLOCK_COMMENT_MODE,l]};return{name:"C++", +aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:u,illegal:"</", +classNameAliases:{"function.dispatch":"built_in"}, +contains:[].concat(g,_,p,m,[l,{ +begin:"\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array|tuple|optional|variant|function)\\s*<(?!<)", +end:">",keywords:u,contains:["self",i]},{begin:e.IDENT_RE+"::",keywords:u},{ +match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/], +className:{1:"keyword",3:"title.class"}}])}})(e),n=r.keywords +;return n.type=[...n.type,...t.type], +n.literal=[...n.literal,...t.literal],n.built_in=[...n.built_in,...t.built_in], +n._hints=t._hints,r.name="Arduino",r.aliases=["ino"],r.supersetOf="cpp",r}})() +;hljs.registerLanguage("arduino",e)})();/*! `ada` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const n="[A-Za-z](_?[A-Za-z0-9.])*",s="[]\\{\\}%#'\"",a=e.COMMENT("--","$"),r={ +begin:"\\s+:\\s+",end:"\\s*(:=|;|\\)|=>|$)",illegal:s,contains:[{ +beginKeywords:"loop for declare others",endsParent:!0},{className:"keyword", +beginKeywords:"not null constant access function procedure in out aliased exception" +},{className:"type",begin:n,endsParent:!0,relevance:0}]};return{name:"Ada", +case_insensitive:!0,keywords:{ +keyword:["abort","else","new","return","abs","elsif","not","reverse","abstract","end","accept","entry","select","access","exception","of","separate","aliased","exit","or","some","all","others","subtype","and","for","out","synchronized","array","function","overriding","at","tagged","generic","package","task","begin","goto","pragma","terminate","body","private","then","if","procedure","type","case","in","protected","constant","interface","is","raise","use","declare","range","delay","limited","record","when","delta","loop","rem","while","digits","renames","with","do","mod","requeue","xor"], +literal:["True","False"]},contains:[a,{className:"string",begin:/"/,end:/"/, +contains:[{begin:/""/,relevance:0}]},{className:"string",begin:/'.'/},{ +className:"number", +begin:"\\b(\\d(_|\\d)*#\\w+(\\.\\w+)?#([eE][-+]?\\d(_|\\d)*)?|\\d(_|\\d)*(\\.\\d(_|\\d)*)?([eE][-+]?\\d(_|\\d)*)?)", +relevance:0},{className:"symbol",begin:"'"+n},{className:"title", +begin:"(\\bwith\\s+)?(\\bprivate\\s+)?\\bpackage\\s+(\\bbody\\s+)?", +end:"(is|$)",keywords:"package body",excludeBegin:!0,excludeEnd:!0,illegal:s},{ +begin:"(\\b(with|overriding)\\s+)?\\b(function|procedure)\\s+", +end:"(\\bis|\\bwith|\\brenames|\\)\\s*;)", +keywords:"overriding function procedure with is renames return",returnBegin:!0, +contains:[a,{className:"title", +begin:"(\\bwith\\s+)?\\b(function|procedure)\\s+",end:"(\\(|\\s+|$)", +excludeBegin:!0,excludeEnd:!0,illegal:s},r,{className:"type", +begin:"\\breturn\\s+",end:"(\\s+|;|$)",keywords:"return",excludeBegin:!0, +excludeEnd:!0,endsParent:!0,illegal:s}]},{className:"type", +begin:"\\b(sub)?type\\s+",end:"\\s+",keywords:"type",excludeBegin:!0,illegal:s +},r]}}})();hljs.registerLanguage("ada",e)})();/*! `sqf` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const t={className:"string", +variants:[{begin:'"',end:'"',contains:[{begin:'""',relevance:0}]},{begin:"'", +end:"'",contains:[{begin:"''",relevance:0}]}]},a={className:"meta", +begin:/#\s*[a-z]+\b/,end:/$/,keywords:{ +keyword:"define undef ifdef ifndef else endif include"},contains:[{begin:/\\\n/, +relevance:0},e.inherit(t,{className:"string"}),{className:"string", +begin:/<[^\n>]*>/,end:/$/,illegal:"\\n" +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]};return{name:"SQF", +case_insensitive:!0,keywords:{ +keyword:["case","catch","default","do","else","exit","exitWith","for","forEach","from","if","private","switch","then","throw","to","try","waitUntil","while","with"], +built_in:["abs","accTime","acos","action","actionIDs","actionKeys","actionKeysImages","actionKeysNames","actionKeysNamesArray","actionName","actionParams","activateAddons","activatedAddons","activateKey","add3DENConnection","add3DENEventHandler","add3DENLayer","addAction","addBackpack","addBackpackCargo","addBackpackCargoGlobal","addBackpackGlobal","addBinocularItem","addCamShake","addCuratorAddons","addCuratorCameraArea","addCuratorEditableObjects","addCuratorEditingArea","addCuratorPoints","addEditorObject","addEventHandler","addForce","addForceGeneratorRTD","addGoggles","addGroupIcon","addHandgunItem","addHeadgear","addItem","addItemCargo","addItemCargoGlobal","addItemPool","addItemToBackpack","addItemToUniform","addItemToVest","addLiveStats","addMagazine","addMagazineAmmoCargo","addMagazineCargo","addMagazineCargoGlobal","addMagazineGlobal","addMagazinePool","addMagazines","addMagazineTurret","addMenu","addMenuItem","addMissionEventHandler","addMPEventHandler","addMusicEventHandler","addonFiles","addOwnedMine","addPlayerScores","addPrimaryWeaponItem","addPublicVariableEventHandler","addRating","addResources","addScore","addScoreSide","addSecondaryWeaponItem","addSwitchableUnit","addTeamMember","addToRemainsCollector","addTorque","addUniform","addVehicle","addVest","addWaypoint","addWeapon","addWeaponCargo","addWeaponCargoGlobal","addWeaponGlobal","addWeaponItem","addWeaponPool","addWeaponTurret","addWeaponWithAttachmentsCargo","addWeaponWithAttachmentsCargoGlobal","admin","agent","agents","AGLToASL","aimedAtTarget","aimPos","airDensityCurveRTD","airDensityRTD","airplaneThrottle","airportSide","AISFinishHeal","alive","all3DENEntities","allActiveTitleEffects","allAddonsInfo","allAirports","allControls","allCurators","allCutLayers","allDead","allDeadMen","allDiarySubjects","allDisplays","allGroups","allMapMarkers","allMines","allMissionObjects","allow3DMode","allowCrewInImmobile","allowCuratorLogicIgnoreAreas","allowDamage","allowDammage","allowFileOperations","allowFleeing","allowGetIn","allowSprint","allPlayers","allSimpleObjects","allSites","allTurrets","allUnits","allUnitsUAV","allVariables","ammo","ammoOnPylon","and","animate","animateBay","animateDoor","animatePylon","animateSource","animationNames","animationPhase","animationSourcePhase","animationState","apertureParams","append","apply","armoryPoints","arrayIntersect","asin","ASLToAGL","ASLToATL","assert","assignAsCargo","assignAsCargoIndex","assignAsCommander","assignAsDriver","assignAsGunner","assignAsTurret","assignCurator","assignedCargo","assignedCommander","assignedDriver","assignedGunner","assignedItems","assignedTarget","assignedTeam","assignedVehicle","assignedVehicleRole","assignItem","assignTeam","assignToAirport","atan","atan2","atg","ATLToASL","attachedObject","attachedObjects","attachedTo","attachObject","attachTo","attackEnabled","backpack","backpackCargo","backpackContainer","backpackItems","backpackMagazines","backpackSpaceFor","batteryChargeRTD","behaviour","benchmark","bezierInterpolation","binocular","binocularItems","binocularMagazine","boundingBox","boundingBoxReal","boundingCenter","break","breakOut","breakTo","breakWith","briefingName","buildingExit","buildingPos","buldozer_EnableRoadDiag","buldozer_IsEnabledRoadDiag","buldozer_LoadNewRoads","buldozer_reloadOperMap","buttonAction","buttonSetAction","cadetMode","calculatePath","calculatePlayerVisibilityByFriendly","call","callExtension","camCommand","camCommit","camCommitPrepared","camCommitted","camConstuctionSetParams","camCreate","camDestroy","cameraEffect","cameraEffectEnableHUD","cameraInterest","cameraOn","cameraView","campaignConfigFile","camPreload","camPreloaded","camPrepareBank","camPrepareDir","camPrepareDive","camPrepareFocus","camPrepareFov","camPrepareFovRange","camPreparePos","camPrepareRelPos","camPrepareTarget","camSetBank","camSetDir","camSetDive","camSetFocus","camSetFov","camSetFovRange","camSetPos","camSetRelPos","camSetTarget","camTarget","camUseNVG","canAdd","canAddItemToBackpack","canAddItemToUniform","canAddItemToVest","cancelSimpleTaskDestination","canFire","canMove","canSlingLoad","canStand","canSuspend","canTriggerDynamicSimulation","canUnloadInCombat","canVehicleCargo","captive","captiveNum","cbChecked","cbSetChecked","ceil","channelEnabled","cheatsEnabled","checkAIFeature","checkVisibility","className","clear3DENAttribute","clear3DENInventory","clearAllItemsFromBackpack","clearBackpackCargo","clearBackpackCargoGlobal","clearForcesRTD","clearGroupIcons","clearItemCargo","clearItemCargoGlobal","clearItemPool","clearMagazineCargo","clearMagazineCargoGlobal","clearMagazinePool","clearOverlay","clearRadio","clearVehicleInit","clearWeaponCargo","clearWeaponCargoGlobal","clearWeaponPool","clientOwner","closeDialog","closeDisplay","closeOverlay","collapseObjectTree","collect3DENHistory","collectiveRTD","combatBehaviour","combatMode","commandArtilleryFire","commandChat","commander","commandFire","commandFollow","commandFSM","commandGetOut","commandingMenu","commandMove","commandRadio","commandStop","commandSuppressiveFire","commandTarget","commandWatch","comment","commitOverlay","compile","compileFinal","compileScript","completedFSM","composeText","configClasses","configFile","configHierarchy","configName","configOf","configProperties","configSourceAddonList","configSourceMod","configSourceModList","confirmSensorTarget","connectTerminalToUAV","connectToServer","continue","continueWith","controlsGroupCtrl","copyFromClipboard","copyToClipboard","copyWaypoints","cos","count","countEnemy","countFriendly","countSide","countType","countUnknown","create3DENComposition","create3DENEntity","createAgent","createCenter","createDialog","createDiaryLink","createDiaryRecord","createDiarySubject","createDisplay","createGearDialog","createGroup","createGuardedPoint","createHashMap","createHashMapFromArray","createLocation","createMarker","createMarkerLocal","createMenu","createMine","createMissionDisplay","createMPCampaignDisplay","createSimpleObject","createSimpleTask","createSite","createSoundSource","createTarget","createTask","createTeam","createTrigger","createUnit","createVehicle","createVehicleCrew","createVehicleLocal","crew","ctAddHeader","ctAddRow","ctClear","ctCurSel","ctData","ctFindHeaderRows","ctFindRowHeader","ctHeaderControls","ctHeaderCount","ctRemoveHeaders","ctRemoveRows","ctrlActivate","ctrlAddEventHandler","ctrlAngle","ctrlAnimateModel","ctrlAnimationPhaseModel","ctrlAutoScrollDelay","ctrlAutoScrollRewind","ctrlAutoScrollSpeed","ctrlChecked","ctrlClassName","ctrlCommit","ctrlCommitted","ctrlCreate","ctrlDelete","ctrlEnable","ctrlEnabled","ctrlFade","ctrlFontHeight","ctrlHTMLLoaded","ctrlIDC","ctrlIDD","ctrlMapAnimAdd","ctrlMapAnimClear","ctrlMapAnimCommit","ctrlMapAnimDone","ctrlMapCursor","ctrlMapMouseOver","ctrlMapScale","ctrlMapScreenToWorld","ctrlMapWorldToScreen","ctrlModel","ctrlModelDirAndUp","ctrlModelScale","ctrlMousePosition","ctrlParent","ctrlParentControlsGroup","ctrlPosition","ctrlRemoveAllEventHandlers","ctrlRemoveEventHandler","ctrlScale","ctrlScrollValues","ctrlSetActiveColor","ctrlSetAngle","ctrlSetAutoScrollDelay","ctrlSetAutoScrollRewind","ctrlSetAutoScrollSpeed","ctrlSetBackgroundColor","ctrlSetChecked","ctrlSetDisabledColor","ctrlSetEventHandler","ctrlSetFade","ctrlSetFocus","ctrlSetFont","ctrlSetFontH1","ctrlSetFontH1B","ctrlSetFontH2","ctrlSetFontH2B","ctrlSetFontH3","ctrlSetFontH3B","ctrlSetFontH4","ctrlSetFontH4B","ctrlSetFontH5","ctrlSetFontH5B","ctrlSetFontH6","ctrlSetFontH6B","ctrlSetFontHeight","ctrlSetFontHeightH1","ctrlSetFontHeightH2","ctrlSetFontHeightH3","ctrlSetFontHeightH4","ctrlSetFontHeightH5","ctrlSetFontHeightH6","ctrlSetFontHeightSecondary","ctrlSetFontP","ctrlSetFontPB","ctrlSetFontSecondary","ctrlSetForegroundColor","ctrlSetModel","ctrlSetModelDirAndUp","ctrlSetModelScale","ctrlSetMousePosition","ctrlSetPixelPrecision","ctrlSetPosition","ctrlSetPositionH","ctrlSetPositionW","ctrlSetPositionX","ctrlSetPositionY","ctrlSetScale","ctrlSetScrollValues","ctrlSetStructuredText","ctrlSetText","ctrlSetTextColor","ctrlSetTextColorSecondary","ctrlSetTextSecondary","ctrlSetTextSelection","ctrlSetTooltip","ctrlSetTooltipColorBox","ctrlSetTooltipColorShade","ctrlSetTooltipColorText","ctrlSetURL","ctrlShow","ctrlShown","ctrlStyle","ctrlText","ctrlTextColor","ctrlTextHeight","ctrlTextSecondary","ctrlTextSelection","ctrlTextWidth","ctrlTooltip","ctrlType","ctrlURL","ctrlVisible","ctRowControls","ctRowCount","ctSetCurSel","ctSetData","ctSetHeaderTemplate","ctSetRowTemplate","ctSetValue","ctValue","curatorAddons","curatorCamera","curatorCameraArea","curatorCameraAreaCeiling","curatorCoef","curatorEditableObjects","curatorEditingArea","curatorEditingAreaType","curatorMouseOver","curatorPoints","curatorRegisteredObjects","curatorSelected","curatorWaypointCost","current3DENOperation","currentChannel","currentCommand","currentMagazine","currentMagazineDetail","currentMagazineDetailTurret","currentMagazineTurret","currentMuzzle","currentNamespace","currentPilot","currentTask","currentTasks","currentThrowable","currentVisionMode","currentWaypoint","currentWeapon","currentWeaponMode","currentWeaponTurret","currentZeroing","cursorObject","cursorTarget","customChat","customRadio","customWaypointPosition","cutFadeOut","cutObj","cutRsc","cutText","damage","date","dateToNumber","daytime","deActivateKey","debriefingText","debugFSM","debugLog","decayGraphValues","deg","delete3DENEntities","deleteAt","deleteCenter","deleteCollection","deleteEditorObject","deleteGroup","deleteGroupWhenEmpty","deleteIdentity","deleteLocation","deleteMarker","deleteMarkerLocal","deleteRange","deleteResources","deleteSite","deleteStatus","deleteTarget","deleteTeam","deleteVehicle","deleteVehicleCrew","deleteWaypoint","detach","detectedMines","diag_activeMissionFSMs","diag_activeScripts","diag_activeSQSScripts","diag_captureFrameToFile","diag_captureSlowFrame","diag_deltaTime","diag_drawMode","diag_enable","diag_enabled","diag_fps","diag_fpsMin","diag_frameNo","diag_list","diag_mergeConfigFile","diag_scope","diag_activeSQFScripts","diag_allMissionEventHandlers","diag_captureFrame","diag_codePerformance","diag_dumpCalltraceToLog","diag_dumpTerrainSynth","diag_dynamicSimulationEnd","diag_exportConfig","diag_exportTerrainSVG","diag_lightNewLoad","diag_localized","diag_log","diag_logSlowFrame","diag_recordTurretLimits","diag_resetShapes","diag_setLightNew","diag_tickTime","diag_toggle","dialog","diaryRecordNull","diarySubjectExists","didJIP","didJIPOwner","difficulty","difficultyEnabled","difficultyEnabledRTD","difficultyOption","direction","directSay","disableAI","disableCollisionWith","disableConversation","disableDebriefingStats","disableMapIndicators","disableNVGEquipment","disableRemoteSensors","disableSerialization","disableTIEquipment","disableUAVConnectability","disableUserInput","displayAddEventHandler","displayCtrl","displayParent","displayRemoveAllEventHandlers","displayRemoveEventHandler","displaySetEventHandler","dissolveTeam","distance","distance2D","distanceSqr","distributionRegion","do3DENAction","doArtilleryFire","doFire","doFollow","doFSM","doGetOut","doMove","doorPhase","doStop","doSuppressiveFire","doTarget","doWatch","drawArrow","drawEllipse","drawIcon","drawIcon3D","drawLine","drawLine3D","drawLink","drawLocation","drawPolygon","drawRectangle","drawTriangle","driver","drop","dynamicSimulationDistance","dynamicSimulationDistanceCoef","dynamicSimulationEnabled","dynamicSimulationSystemEnabled","echo","edit3DENMissionAttributes","editObject","editorSetEventHandler","effectiveCommander","elevatePeriscope","emptyPositions","enableAI","enableAIFeature","enableAimPrecision","enableAttack","enableAudioFeature","enableAutoStartUpRTD","enableAutoTrimRTD","enableCamShake","enableCaustics","enableChannel","enableCollisionWith","enableCopilot","enableDebriefingStats","enableDiagLegend","enableDynamicSimulation","enableDynamicSimulationSystem","enableEndDialog","enableEngineArtillery","enableEnvironment","enableFatigue","enableGunLights","enableInfoPanelComponent","enableIRLasers","enableMimics","enablePersonTurret","enableRadio","enableReload","enableRopeAttach","enableSatNormalOnDetail","enableSaving","enableSentences","enableSimulation","enableSimulationGlobal","enableStamina","enableStressDamage","enableTeamSwitch","enableTraffic","enableUAVConnectability","enableUAVWaypoints","enableVehicleCargo","enableVehicleSensor","enableWeaponDisassembly","endLoadingScreen","endMission","enemy","engineOn","enginesIsOnRTD","enginesPowerRTD","enginesRpmRTD","enginesTorqueRTD","entities","environmentEnabled","environmentVolume","estimatedEndServerTime","estimatedTimeLeft","evalObjectArgument","everyBackpack","everyContainer","exec","execEditorScript","execFSM","execVM","exp","expectedDestination","exportJIPMessages","exportLandscapeXYZ","eyeDirection","eyePos","face","faction","fadeEnvironment","fadeMusic","fadeRadio","fadeSound","fadeSpeech","failMission","fileExists","fillWeaponsFromPool","find","findCover","findDisplay","findEditorObject","findEmptyPosition","findEmptyPositionReady","findIf","findNearestEnemy","finishMissionInit","finite","fire","fireAtTarget","firstBackpack","flag","flagAnimationPhase","flagOwner","flagSide","flagTexture","flatten","fleeing","floor","flyInHeight","flyInHeightASL","focusedCtrl","fog","fogForecast","fogParams","forceAddUniform","forceAtPositionRTD","forceCadetDifficulty","forcedMap","forceEnd","forceFlagTexture","forceFollowRoad","forceGeneratorRTD","forceMap","forceRespawn","forceSpeed","forceUnicode","forceWalk","forceWeaponFire","forceWeatherChange","forEachMember","forEachMemberAgent","forEachMemberTeam","forgetTarget","format","formation","formationDirection","formationLeader","formationMembers","formationPosition","formationTask","formatText","formLeader","freeLook","friendly","fromEditor","fuel","fullCrew","gearIDCAmmoCount","gearSlotAmmoCount","gearSlotData","get","get3DENActionState","get3DENAttribute","get3DENCamera","get3DENConnections","get3DENEntity","get3DENEntityID","get3DENGrid","get3DENIconsVisible","get3DENLayerEntities","get3DENLinesVisible","get3DENMissionAttribute","get3DENMouseOver","get3DENSelected","getAimingCoef","getAllEnvSoundControllers","getAllHitPointsDamage","getAllOwnedMines","getAllPylonsInfo","getAllSoundControllers","getAllUnitTraits","getAmmoCargo","getAnimAimPrecision","getAnimSpeedCoef","getArray","getArtilleryAmmo","getArtilleryComputerSettings","getArtilleryETA","getAssetDLCInfo","getAssignedCuratorLogic","getAssignedCuratorUnit","getAttackTarget","getAudioOptionVolumes","getBackpackCargo","getBleedingRemaining","getBurningValue","getCalculatePlayerVisibilityByFriendly","getCameraViewDirection","getCargoIndex","getCenterOfMass","getClientState","getClientStateNumber","getCompatiblePylonMagazines","getConnectedUAV","getContainerMaxLoad","getCursorObjectParams","getCustomAimCoef","getCustomSoundController","getCustomSoundControllerCount","getDammage","getDescription","getDir","getDirVisual","getDiverState","getDLCAssetsUsage","getDLCAssetsUsageByName","getDLCs","getDLCUsageTime","getEditorCamera","getEditorMode","getEditorObjectScope","getElevationOffset","getEnvSoundController","getFatigue","getFieldManualStartPage","getForcedFlagTexture","getFriend","getFSMVariable","getFuelCargo","getGraphValues","getGroupIcon","getGroupIconParams","getGroupIcons","getHideFrom","getHit","getHitIndex","getHitPointDamage","getItemCargo","getLighting","getLightingAt","getLoadedModsInfo","getMagazineCargo","getMarkerColor","getMarkerPos","getMarkerSize","getMarkerType","getMass","getMissionConfig","getMissionConfigValue","getMissionDLCs","getMissionLayerEntities","getMissionLayers","getMissionPath","getModelInfo","getMousePosition","getMusicPlayedTime","getNumber","getObjectArgument","getObjectChildren","getObjectDLC","getObjectFOV","getObjectMaterials","getObjectProxy","getObjectScale","getObjectTextures","getObjectType","getObjectViewDistance","getOrDefault","getOxygenRemaining","getPersonUsedDLCs","getPilotCameraDirection","getPilotCameraPosition","getPilotCameraRotation","getPilotCameraTarget","getPlateNumber","getPlayerChannel","getPlayerID","getPlayerScores","getPlayerUID","getPlayerUIDOld","getPlayerVoNVolume","getPos","getPosASL","getPosASLVisual","getPosASLW","getPosATL","getPosATLVisual","getPosVisual","getPosWorld","getPosWorldVisual","getPylonMagazines","getRelDir","getRelPos","getRemoteSensorsDisabled","getRepairCargo","getResolution","getRoadInfo","getRotorBrakeRTD","getShadowDistance","getShotParents","getSlingLoad","getSoundController","getSoundControllerResult","getSpeed","getStamina","getStatValue","getSteamFriendsServers","getSubtitleOptions","getSuppression","getTerrainGrid","getTerrainHeightASL","getText","getTextRaw","getTextWidth","getTotalDLCUsageTime","getTrimOffsetRTD","getUnitLoadout","getUnitTrait","getUserMFDText","getUserMFDValue","getVariable","getVehicleCargo","getVehicleTIPars","getWeaponCargo","getWeaponSway","getWingsOrientationRTD","getWingsPositionRTD","getWorld","getWPPos","glanceAt","globalChat","globalRadio","goggles","goto","group","groupChat","groupFromNetId","groupIconSelectable","groupIconsVisible","groupId","groupOwner","groupRadio","groupSelectedUnits","groupSelectUnit","gunner","gusts","halt","handgunItems","handgunMagazine","handgunWeapon","handsHit","hasInterface","hasPilotCamera","hasWeapon","hcAllGroups","hcGroupParams","hcLeader","hcRemoveAllGroups","hcRemoveGroup","hcSelected","hcSelectGroup","hcSetGroup","hcShowBar","hcShownBar","headgear","hideBehindScripted","hideBody","hideObject","hideObjectGlobal","hideSelection","hierarchyObjectsCount","hint","hintC","hintCadet","hintSilent","hmd","hostMission","htmlLoad","HUDMovementLevels","humidity","image","importAllGroups","importance","in","inArea","inAreaArray","incapacitatedState","inflame","inflamed","infoPanel","infoPanelComponentEnabled","infoPanelComponents","infoPanels","inGameUISetEventHandler","inheritsFrom","initAmbientLife","inPolygon","inputAction","inRangeOfArtillery","insert","insertEditorObject","intersect","is3DEN","is3DENMultiplayer","is3DENPreview","isAbleToBreathe","isActionMenuVisible","isAgent","isAimPrecisionEnabled","isArray","isAutoHoverOn","isAutonomous","isAutoStartUpEnabledRTD","isAutotest","isAutoTrimOnRTD","isBleeding","isBurning","isClass","isCollisionLightOn","isCopilotEnabled","isDamageAllowed","isDedicated","isDLCAvailable","isEngineOn","isEqualTo","isEqualType","isEqualTypeAll","isEqualTypeAny","isEqualTypeArray","isEqualTypeParams","isFilePatchingEnabled","isFinal","isFlashlightOn","isFlatEmpty","isForcedWalk","isFormationLeader","isGameFocused","isGamePaused","isGroupDeletedWhenEmpty","isHidden","isHideBehindScripted","isInRemainsCollector","isInstructorFigureEnabled","isIRLaserOn","isKeyActive","isKindOf","isLaserOn","isLightOn","isLocalized","isManualFire","isMarkedForCollection","isMultiplayer","isMultiplayerSolo","isNil","isNotEqualTo","isNull","isNumber","isObjectHidden","isObjectRTD","isOnRoad","isPiPEnabled","isPlayer","isRealTime","isRemoteExecuted","isRemoteExecutedJIP","isSensorTargetConfirmed","isServer","isShowing3DIcons","isSimpleObject","isSprintAllowed","isStaminaEnabled","isSteamMission","isStreamFriendlyUIEnabled","isStressDamageEnabled","isText","isTouchingGround","isTurnedOut","isTutHintsEnabled","isUAVConnectable","isUAVConnected","isUIContext","isUniformAllowed","isVehicleCargo","isVehicleRadarOn","isVehicleSensorEnabled","isWalking","isWeaponDeployed","isWeaponRested","itemCargo","items","itemsWithMagazines","join","joinAs","joinAsSilent","joinSilent","joinString","kbAddDatabase","kbAddDatabaseTargets","kbAddTopic","kbHasTopic","kbReact","kbRemoveTopic","kbTell","kbWasSaid","keyImage","keyName","keys","knowsAbout","land","landAt","landResult","language","laserTarget","lbAdd","lbClear","lbColor","lbColorRight","lbCurSel","lbData","lbDelete","lbIsSelected","lbPicture","lbPictureRight","lbSelection","lbSetColor","lbSetColorRight","lbSetCurSel","lbSetData","lbSetPicture","lbSetPictureColor","lbSetPictureColorDisabled","lbSetPictureColorSelected","lbSetPictureRight","lbSetPictureRightColor","lbSetPictureRightColorDisabled","lbSetPictureRightColorSelected","lbSetSelectColor","lbSetSelectColorRight","lbSetSelected","lbSetText","lbSetTextRight","lbSetTooltip","lbSetValue","lbSize","lbSort","lbSortByValue","lbText","lbTextRight","lbValue","leader","leaderboardDeInit","leaderboardGetRows","leaderboardInit","leaderboardRequestRowsFriends","leaderboardRequestRowsGlobal","leaderboardRequestRowsGlobalAroundUser","leaderboardsRequestUploadScore","leaderboardsRequestUploadScoreKeepBest","leaderboardState","leaveVehicle","libraryCredits","libraryDisclaimers","lifeState","lightAttachObject","lightDetachObject","lightIsOn","lightnings","limitSpeed","linearConversion","lineIntersects","lineIntersectsObjs","lineIntersectsSurfaces","lineIntersectsWith","linkItem","list","listObjects","listRemoteTargets","listVehicleSensors","ln","lnbAddArray","lnbAddColumn","lnbAddRow","lnbClear","lnbColor","lnbColorRight","lnbCurSelRow","lnbData","lnbDeleteColumn","lnbDeleteRow","lnbGetColumnsPosition","lnbPicture","lnbPictureRight","lnbSetColor","lnbSetColorRight","lnbSetColumnsPos","lnbSetCurSelRow","lnbSetData","lnbSetPicture","lnbSetPictureColor","lnbSetPictureColorRight","lnbSetPictureColorSelected","lnbSetPictureColorSelectedRight","lnbSetPictureRight","lnbSetText","lnbSetTextRight","lnbSetTooltip","lnbSetValue","lnbSize","lnbSort","lnbSortByValue","lnbText","lnbTextRight","lnbValue","load","loadAbs","loadBackpack","loadFile","loadGame","loadIdentity","loadMagazine","loadOverlay","loadStatus","loadUniform","loadVest","local","localize","localNamespace","locationPosition","lock","lockCameraTo","lockCargo","lockDriver","locked","lockedCargo","lockedDriver","lockedInventory","lockedTurret","lockIdentity","lockInventory","lockTurret","lockWP","log","logEntities","logNetwork","logNetworkTerminate","lookAt","lookAtPos","magazineCargo","magazines","magazinesAllTurrets","magazinesAmmo","magazinesAmmoCargo","magazinesAmmoFull","magazinesDetail","magazinesDetailBackpack","magazinesDetailUniform","magazinesDetailVest","magazinesTurret","magazineTurretAmmo","mapAnimAdd","mapAnimClear","mapAnimCommit","mapAnimDone","mapCenterOnCamera","mapGridPosition","markAsFinishedOnSteam","markerAlpha","markerBrush","markerChannel","markerColor","markerDir","markerPolyline","markerPos","markerShadow","markerShape","markerSize","markerText","markerType","matrixMultiply","matrixTranspose","max","members","menuAction","menuAdd","menuChecked","menuClear","menuCollapse","menuData","menuDelete","menuEnable","menuEnabled","menuExpand","menuHover","menuPicture","menuSetAction","menuSetCheck","menuSetData","menuSetPicture","menuSetShortcut","menuSetText","menuSetURL","menuSetValue","menuShortcut","menuShortcutText","menuSize","menuSort","menuText","menuURL","menuValue","merge","min","mineActive","mineDetectedBy","missileTarget","missileTargetPos","missionConfigFile","missionDifficulty","missionName","missionNameSource","missionNamespace","missionStart","missionVersion","mod","modelToWorld","modelToWorldVisual","modelToWorldVisualWorld","modelToWorldWorld","modParams","moonIntensity","moonPhase","morale","move","move3DENCamera","moveInAny","moveInCargo","moveInCommander","moveInDriver","moveInGunner","moveInTurret","moveObjectToEnd","moveOut","moveTarget","moveTime","moveTo","moveToCompleted","moveToFailed","musicVolume","name","namedProperties","nameSound","nearEntities","nearestBuilding","nearestLocation","nearestLocations","nearestLocationWithDubbing","nearestObject","nearestObjects","nearestTerrainObjects","nearObjects","nearObjectsReady","nearRoads","nearSupplies","nearTargets","needReload","netId","netObjNull","newOverlay","nextMenuItemIndex","nextWeatherChange","nMenuItems","not","numberOfEnginesRTD","numberToDate","object","objectCurators","objectFromNetId","objectParent","objStatus","onBriefingGear","onBriefingGroup","onBriefingNotes","onBriefingPlan","onBriefingTeamSwitch","onCommandModeChanged","onDoubleClick","onEachFrame","onGroupIconClick","onGroupIconOverEnter","onGroupIconOverLeave","onHCGroupSelectionChanged","onMapSingleClick","onPlayerConnected","onPlayerDisconnected","onPreloadFinished","onPreloadStarted","onShowNewObject","onTeamSwitch","openCuratorInterface","openDLCPage","openDSInterface","openGPS","openMap","openSteamApp","openYoutubeVideo","or","orderGetIn","overcast","overcastForecast","owner","param","params","parseNumber","parseSimpleArray","parseText","parsingNamespace","particlesQuality","periscopeElevation","pickWeaponPool","pitch","pixelGrid","pixelGridBase","pixelGridNoUIScale","pixelH","pixelW","playableSlotsNumber","playableUnits","playAction","playActionNow","player","playerRespawnTime","playerSide","playersNumber","playGesture","playMission","playMove","playMoveNow","playMusic","playScriptedMission","playSound","playSound3D","position","positionCameraToWorld","posScreenToWorld","posWorldToScreen","ppEffectAdjust","ppEffectCommit","ppEffectCommitted","ppEffectCreate","ppEffectDestroy","ppEffectEnable","ppEffectEnabled","ppEffectForceInNVG","precision","preloadCamera","preloadObject","preloadSound","preloadTitleObj","preloadTitleRsc","preprocessFile","preprocessFileLineNumbers","primaryWeapon","primaryWeaponItems","primaryWeaponMagazine","priority","processDiaryLink","processInitCommands","productVersion","profileName","profileNamespace","profileNameSteam","progressLoadingScreen","progressPosition","progressSetPosition","publicVariable","publicVariableClient","publicVariableServer","pushBack","pushBackUnique","putWeaponPool","queryItemsPool","queryMagazinePool","queryWeaponPool","rad","radioChannelAdd","radioChannelCreate","radioChannelInfo","radioChannelRemove","radioChannelSetCallSign","radioChannelSetLabel","radioVolume","rain","rainbow","random","rank","rankId","rating","rectangular","registeredTasks","registerTask","reload","reloadEnabled","remoteControl","remoteExec","remoteExecCall","remoteExecutedOwner","remove3DENConnection","remove3DENEventHandler","remove3DENLayer","removeAction","removeAll3DENEventHandlers","removeAllActions","removeAllAssignedItems","removeAllBinocularItems","removeAllContainers","removeAllCuratorAddons","removeAllCuratorCameraAreas","removeAllCuratorEditingAreas","removeAllEventHandlers","removeAllHandgunItems","removeAllItems","removeAllItemsWithMagazines","removeAllMissionEventHandlers","removeAllMPEventHandlers","removeAllMusicEventHandlers","removeAllOwnedMines","removeAllPrimaryWeaponItems","removeAllSecondaryWeaponItems","removeAllWeapons","removeBackpack","removeBackpackGlobal","removeBinocularItem","removeClothing","removeCuratorAddons","removeCuratorCameraArea","removeCuratorEditableObjects","removeCuratorEditingArea","removeDiaryRecord","removeDiarySubject","removeDrawIcon","removeDrawLinks","removeEventHandler","removeFromRemainsCollector","removeGoggles","removeGroupIcon","removeHandgunItem","removeHeadgear","removeItem","removeItemFromBackpack","removeItemFromUniform","removeItemFromVest","removeItems","removeMagazine","removeMagazineGlobal","removeMagazines","removeMagazinesTurret","removeMagazineTurret","removeMenuItem","removeMissionEventHandler","removeMPEventHandler","removeMusicEventHandler","removeOwnedMine","removePrimaryWeaponItem","removeSecondaryWeaponItem","removeSimpleTask","removeSwitchableUnit","removeTeamMember","removeUniform","removeVest","removeWeapon","removeWeaponAttachmentCargo","removeWeaponCargo","removeWeaponGlobal","removeWeaponTurret","reportRemoteTarget","requiredVersion","resetCamShake","resetSubgroupDirection","resize","resources","respawnVehicle","restartEditorCamera","reveal","revealMine","reverse","reversedMouseY","roadAt","roadsConnectedTo","roleDescription","ropeAttachedObjects","ropeAttachedTo","ropeAttachEnabled","ropeAttachTo","ropeCreate","ropeCut","ropeDestroy","ropeDetach","ropeEndPosition","ropeLength","ropes","ropeSegments","ropeSetCargoMass","ropeUnwind","ropeUnwound","rotorsForcesRTD","rotorsRpmRTD","round","runInitScript","safeZoneH","safeZoneW","safeZoneWAbs","safeZoneX","safeZoneXAbs","safeZoneY","save3DENInventory","saveGame","saveIdentity","saveJoysticks","saveOverlay","saveProfileNamespace","saveStatus","saveVar","savingEnabled","say","say2D","say3D","scopeName","score","scoreSide","screenshot","screenToWorld","scriptDone","scriptName","scudState","secondaryWeapon","secondaryWeaponItems","secondaryWeaponMagazine","select","selectBestPlaces","selectDiarySubject","selectedEditorObjects","selectEditorObject","selectionNames","selectionPosition","selectLeader","selectMax","selectMin","selectNoPlayer","selectPlayer","selectRandom","selectRandomWeighted","selectWeapon","selectWeaponTurret","sendAUMessage","sendSimpleCommand","sendTask","sendTaskResult","sendUDPMessage","serverCommand","serverCommandAvailable","serverCommandExecutable","serverName","serverTime","set","set3DENAttribute","set3DENAttributes","set3DENGrid","set3DENIconsVisible","set3DENLayer","set3DENLinesVisible","set3DENLogicType","set3DENMissionAttribute","set3DENMissionAttributes","set3DENModelsVisible","set3DENObjectType","set3DENSelected","setAccTime","setActualCollectiveRTD","setAirplaneThrottle","setAirportSide","setAmmo","setAmmoCargo","setAmmoOnPylon","setAnimSpeedCoef","setAperture","setApertureNew","setAPURTD","setArmoryPoints","setAttributes","setAutonomous","setBatteryChargeRTD","setBatteryRTD","setBehaviour","setBehaviourStrong","setBleedingRemaining","setBrakesRTD","setCameraEffect","setCameraInterest","setCamShakeDefParams","setCamShakeParams","setCamUseTI","setCaptive","setCenterOfMass","setCollisionLight","setCombatBehaviour","setCombatMode","setCompassOscillation","setConvoySeparation","setCuratorCameraAreaCeiling","setCuratorCoef","setCuratorEditingAreaType","setCuratorWaypointCost","setCurrentChannel","setCurrentTask","setCurrentWaypoint","setCustomAimCoef","setCustomMissionData","setCustomSoundController","setCustomWeightRTD","setDamage","setDammage","setDate","setDebriefingText","setDefaultCamera","setDestination","setDetailMapBlendPars","setDiaryRecordText","setDiarySubjectPicture","setDir","setDirection","setDrawIcon","setDriveOnPath","setDropInterval","setDynamicSimulationDistance","setDynamicSimulationDistanceCoef","setEditorMode","setEditorObjectScope","setEffectCondition","setEffectiveCommander","setEngineRPMRTD","setEngineRpmRTD","setFace","setFaceAnimation","setFatigue","setFeatureType","setFlagAnimationPhase","setFlagOwner","setFlagSide","setFlagTexture","setFog","setForceGeneratorRTD","setFormation","setFormationTask","setFormDir","setFriend","setFromEditor","setFSMVariable","setFuel","setFuelCargo","setGroupIcon","setGroupIconParams","setGroupIconsSelectable","setGroupIconsVisible","setGroupId","setGroupIdGlobal","setGroupOwner","setGusts","setHideBehind","setHit","setHitIndex","setHitPointDamage","setHorizonParallaxCoef","setHUDMovementLevels","setIdentity","setImportance","setInfoPanel","setLeader","setLightAmbient","setLightAttenuation","setLightBrightness","setLightColor","setLightDayLight","setLightFlareMaxDistance","setLightFlareSize","setLightIntensity","setLightnings","setLightUseFlare","setLocalWindParams","setMagazineTurretAmmo","setMarkerAlpha","setMarkerAlphaLocal","setMarkerBrush","setMarkerBrushLocal","setMarkerColor","setMarkerColorLocal","setMarkerDir","setMarkerDirLocal","setMarkerPolyline","setMarkerPolylineLocal","setMarkerPos","setMarkerPosLocal","setMarkerShadow","setMarkerShadowLocal","setMarkerShape","setMarkerShapeLocal","setMarkerSize","setMarkerSizeLocal","setMarkerText","setMarkerTextLocal","setMarkerType","setMarkerTypeLocal","setMass","setMimic","setMissileTarget","setMissileTargetPos","setMousePosition","setMusicEffect","setMusicEventHandler","setName","setNameSound","setObjectArguments","setObjectMaterial","setObjectMaterialGlobal","setObjectProxy","setObjectScale","setObjectTexture","setObjectTextureGlobal","setObjectViewDistance","setOvercast","setOwner","setOxygenRemaining","setParticleCircle","setParticleClass","setParticleFire","setParticleParams","setParticleRandom","setPilotCameraDirection","setPilotCameraRotation","setPilotCameraTarget","setPilotLight","setPiPEffect","setPitch","setPlateNumber","setPlayable","setPlayerRespawnTime","setPlayerVoNVolume","setPos","setPosASL","setPosASL2","setPosASLW","setPosATL","setPosition","setPosWorld","setPylonLoadout","setPylonsPriority","setRadioMsg","setRain","setRainbow","setRandomLip","setRank","setRectangular","setRepairCargo","setRotorBrakeRTD","setShadowDistance","setShotParents","setSide","setSimpleTaskAlwaysVisible","setSimpleTaskCustomData","setSimpleTaskDescription","setSimpleTaskDestination","setSimpleTaskTarget","setSimpleTaskType","setSimulWeatherLayers","setSize","setSkill","setSlingLoad","setSoundEffect","setSpeaker","setSpeech","setSpeedMode","setStamina","setStaminaScheme","setStarterRTD","setStatValue","setSuppression","setSystemOfUnits","setTargetAge","setTaskMarkerOffset","setTaskResult","setTaskState","setTerrainGrid","setText","setThrottleRTD","setTimeMultiplier","setTitleEffect","setToneMapping","setToneMappingParams","setTrafficDensity","setTrafficDistance","setTrafficGap","setTrafficSpeed","setTriggerActivation","setTriggerArea","setTriggerInterval","setTriggerStatements","setTriggerText","setTriggerTimeout","setTriggerType","setType","setUnconscious","setUnitAbility","setUnitCombatMode","setUnitLoadout","setUnitPos","setUnitPosWeak","setUnitRank","setUnitRecoilCoefficient","setUnitTrait","setUnloadInCombat","setUserActionText","setUserMFDText","setUserMFDValue","setVariable","setVectorDir","setVectorDirAndUp","setVectorUp","setVehicleAmmo","setVehicleAmmoDef","setVehicleArmor","setVehicleCargo","setVehicleId","setVehicleInit","setVehicleLock","setVehiclePosition","setVehicleRadar","setVehicleReceiveRemoteTargets","setVehicleReportOwnPosition","setVehicleReportRemoteTargets","setVehicleTIPars","setVehicleVarName","setVelocity","setVelocityModelSpace","setVelocityTransformation","setViewDistance","setVisibleIfTreeCollapsed","setWantedRPMRTD","setWaves","setWaypointBehaviour","setWaypointCombatMode","setWaypointCompletionRadius","setWaypointDescription","setWaypointForceBehaviour","setWaypointFormation","setWaypointHousePosition","setWaypointLoiterAltitude","setWaypointLoiterRadius","setWaypointLoiterType","setWaypointName","setWaypointPosition","setWaypointScript","setWaypointSpeed","setWaypointStatements","setWaypointTimeout","setWaypointType","setWaypointVisible","setWeaponReloadingTime","setWeaponZeroing","setWind","setWindDir","setWindForce","setWindStr","setWingForceScaleRTD","setWPPos","show3DIcons","showChat","showCinemaBorder","showCommandingMenu","showCompass","showCuratorCompass","showGPS","showHUD","showLegend","showMap","shownArtilleryComputer","shownChat","shownCompass","shownCuratorCompass","showNewEditorObject","shownGPS","shownHUD","shownMap","shownPad","shownRadio","shownScoretable","shownUAVFeed","shownWarrant","shownWatch","showPad","showRadio","showScoretable","showSubtitles","showUAVFeed","showWarrant","showWatch","showWaypoint","showWaypoints","side","sideChat","sideEmpty","sideEnemy","sideFriendly","sideRadio","simpleTasks","simulationEnabled","simulCloudDensity","simulCloudOcclusion","simulInClouds","simulSetHumidity","simulWeatherSync","sin","size","sizeOf","skill","skillFinal","skipTime","sleep","sliderPosition","sliderRange","sliderSetPosition","sliderSetRange","sliderSetSpeed","sliderSpeed","slingLoadAssistantShown","soldierMagazines","someAmmo","sort","soundVolume","spawn","speaker","speechVolume","speed","speedMode","splitString","sqrt","squadParams","stance","startLoadingScreen","step","stop","stopEngineRTD","stopped","str","sunOrMoon","supportInfo","suppressFor","surfaceIsWater","surfaceNormal","surfaceTexture","surfaceType","swimInDepth","switchableUnits","switchAction","switchCamera","switchGesture","switchLight","switchMove","synchronizedObjects","synchronizedTriggers","synchronizedWaypoints","synchronizeObjectsAdd","synchronizeObjectsRemove","synchronizeTrigger","synchronizeWaypoint","systemChat","systemOfUnits","systemTime","systemTimeUTC","tan","targetKnowledge","targets","targetsAggregate","targetsQuery","taskAlwaysVisible","taskChildren","taskCompleted","taskCustomData","taskDescription","taskDestination","taskHint","taskMarkerOffset","taskName","taskParent","taskResult","taskState","taskType","teamMember","teamName","teams","teamSwitch","teamSwitchEnabled","teamType","terminate","terrainIntersect","terrainIntersectASL","terrainIntersectAtASL","text","textLog","textLogFormat","tg","throttleRTD","time","timeMultiplier","titleCut","titleFadeOut","titleObj","titleRsc","titleText","toArray","toFixed","toLower","toLowerANSI","toString","toUpper","toUpperANSI","triggerActivated","triggerActivation","triggerAmmo","triggerArea","triggerAttachedVehicle","triggerAttachObject","triggerAttachVehicle","triggerDynamicSimulation","triggerInterval","triggerStatements","triggerText","triggerTimeout","triggerTimeoutCurrent","triggerType","trim","turretLocal","turretOwner","turretUnit","tvAdd","tvClear","tvCollapse","tvCollapseAll","tvCount","tvCurSel","tvData","tvDelete","tvExpand","tvExpandAll","tvIsSelected","tvPicture","tvPictureRight","tvSelection","tvSetColor","tvSetCurSel","tvSetData","tvSetPicture","tvSetPictureColor","tvSetPictureColorDisabled","tvSetPictureColorSelected","tvSetPictureRight","tvSetPictureRightColor","tvSetPictureRightColorDisabled","tvSetPictureRightColorSelected","tvSetSelectColor","tvSetSelected","tvSetText","tvSetTooltip","tvSetValue","tvSort","tvSortAll","tvSortByValue","tvSortByValueAll","tvText","tvTooltip","tvValue","type","typeName","typeOf","UAVControl","uiNamespace","uiSleep","unassignCurator","unassignItem","unassignTeam","unassignVehicle","underwater","uniform","uniformContainer","uniformItems","uniformMagazines","unitAddons","unitAimPosition","unitAimPositionVisual","unitBackpack","unitCombatMode","unitIsUAV","unitPos","unitReady","unitRecoilCoefficient","units","unitsBelowHeight","unitTurret","unlinkItem","unlockAchievement","unregisterTask","updateDrawIcon","updateMenuItem","updateObjectTree","useAIOperMapObstructionTest","useAISteeringComponent","useAudioTimeForMoves","userInputDisabled","vectorAdd","vectorCos","vectorCrossProduct","vectorDiff","vectorDir","vectorDirVisual","vectorDistance","vectorDistanceSqr","vectorDotProduct","vectorFromTo","vectorLinearConversion","vectorMagnitude","vectorMagnitudeSqr","vectorModelToWorld","vectorModelToWorldVisual","vectorMultiply","vectorNormalized","vectorUp","vectorUpVisual","vectorWorldToModel","vectorWorldToModelVisual","vehicle","vehicleCargoEnabled","vehicleChat","vehicleMoveInfo","vehicleRadio","vehicleReceiveRemoteTargets","vehicleReportOwnPosition","vehicleReportRemoteTargets","vehicles","vehicleVarName","velocity","velocityModelSpace","verifySignature","vest","vestContainer","vestItems","vestMagazines","viewDistance","visibleCompass","visibleGPS","visibleMap","visiblePosition","visiblePositionASL","visibleScoretable","visibleWatch","waves","waypointAttachedObject","waypointAttachedVehicle","waypointAttachObject","waypointAttachVehicle","waypointBehaviour","waypointCombatMode","waypointCompletionRadius","waypointDescription","waypointForceBehaviour","waypointFormation","waypointHousePosition","waypointLoiterAltitude","waypointLoiterRadius","waypointLoiterType","waypointName","waypointPosition","waypoints","waypointScript","waypointsEnabledUAV","waypointShow","waypointSpeed","waypointStatements","waypointTimeout","waypointTimeoutCurrent","waypointType","waypointVisible","weaponAccessories","weaponAccessoriesCargo","weaponCargo","weaponDirection","weaponInertia","weaponLowered","weapons","weaponsItems","weaponsItemsCargo","weaponState","weaponsTurret","weightRTD","WFSideText","wind","windDir","windRTD","windStr","wingsForcesRTD","worldName","worldSize","worldToModel","worldToModelVisual","worldToScreen"], +literal:["blufor","civilian","configNull","controlNull","displayNull","east","endl","false","grpNull","independent","lineBreak","locationNull","nil","objNull","opfor","pi","resistance","scriptNull","sideAmbientLife","sideEmpty","sideLogic","sideUnknown","taskNull","teamMemberNull","true","west"] +},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.NUMBER_MODE,{ +className:"variable",begin:/\b_+[a-zA-Z]\w*/},{className:"title", +begin:/[a-zA-Z]\w+_fnc_\w+/},t,a],illegal:/#|^\$ /}}})() +;hljs.registerLanguage("sqf",e)})();/*! `arcade` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n="[A-Za-z_][0-9A-Za-z_]*",a={ +keyword:["if","for","while","var","new","function","do","return","void","else","break"], +literal:["BackSlash","DoubleQuote","false","ForwardSlash","Infinity","NaN","NewLine","null","PI","SingleQuote","Tab","TextFormatting","true","undefined"], +built_in:["Abs","Acos","All","Angle","Any","Area","AreaGeodetic","Array","Asin","Atan","Atan2","Attachments","Average","Back","Bearing","Boolean","Buffer","BufferGeodetic","Ceil","Centroid","Clip","Concatenate","Console","Constrain","Contains","ConvertDirection","Cos","Count","Crosses","Cut","Date","DateAdd","DateDiff","Day","Decode","DefaultValue","Densify","DensifyGeodetic","Dictionary","Difference","Disjoint","Distance","DistanceGeodetic","Distinct","Domain","DomainCode","DomainName","EnvelopeIntersects","Equals","Erase","Exp","Expects","Extent","Feature","FeatureSet","FeatureSetByAssociation","FeatureSetById","FeatureSetByName","FeatureSetByPortalItem","FeatureSetByRelationshipName","Filter","Find","First","Floor","FromCharCode","FromCodePoint","FromJSON","GdbVersion","Generalize","Geometry","GetFeatureSet","GetUser","GroupBy","Guid","Hash","HasKey","Hour","IIf","Includes","IndexOf","Insert","Intersection","Intersects","IsEmpty","IsNan","ISOMonth","ISOWeek","ISOWeekday","ISOYear","IsSelfIntersecting","IsSimple","Left|0","Length","Length3D","LengthGeodetic","Log","Lower","Map","Max","Mean","Mid","Millisecond","Min","Minute","Month","MultiPartToSinglePart","Multipoint","NextSequenceValue","None","Now","Number","Offset|0","OrderBy","Overlaps","Point","Polygon","Polyline","Pop","Portal","Pow","Proper","Push","Random","Reduce","Relate","Replace","Resize","Reverse","Right|0","RingIsClockwise","Rotate","Round","Schema","Second","SetGeometry","Simplify","Sin","Slice","Sort","Splice","Split","Sqrt","Stdev","SubtypeCode","SubtypeName","Subtypes","Sum","SymmetricDifference","Tan","Text","Timestamp","ToCharCode","ToCodePoint","Today","ToHex","ToLocal","Top|0","Touches","ToUTC","TrackAccelerationAt","TrackAccelerationWindow","TrackCurrentAcceleration","TrackCurrentDistance","TrackCurrentSpeed","TrackCurrentTime","TrackDistanceAt","TrackDistanceWindow","TrackDuration","TrackFieldWindow","TrackGeometryWindow","TrackIndex","TrackSpeedAt","TrackSpeedWindow","TrackStartTime","TrackWindow","Trim","TypeOf","Union","Upper","UrlEncode","Variance","Week","Weekday","When","Within","Year"] +},t={className:"number",variants:[{begin:"\\b(0[bB][01]+)"},{ +begin:"\\b(0[oO][0-7]+)"},{begin:e.C_NUMBER_RE}],relevance:0},r={ +className:"subst",begin:"\\$\\{",end:"\\}",keywords:a,contains:[]},i={ +className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,r]} +;r.contains=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,i,t,e.REGEXP_MODE] +;const o=r.contains.concat([e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]) +;return{name:"ArcGIS Arcade",case_insensitive:!0,keywords:a, +contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,i,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{ +className:"symbol", +begin:"\\$[datastore|feature|layer|map|measure|sourcefeature|sourcelayer|targetfeature|targetlayer|value|view]+" +},t,{begin:/[{,]\s*/,relevance:0,contains:[{begin:n+"\\s*:",returnBegin:!0, +relevance:0,contains:[{className:"attr",begin:n,relevance:0}]}]},{ +begin:"("+e.RE_STARTERS_RE+"|\\b(return)\\b)\\s*",keywords:"return", +contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.REGEXP_MODE,{ +className:"function",begin:"(\\(.*?\\)|"+n+")\\s*=>",returnBegin:!0, +end:"\\s*=>",contains:[{className:"params",variants:[{begin:n},{begin:/\(\s*\)/ +},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:o}]}] +}],relevance:0},{beginKeywords:"function",end:/\{/,excludeEnd:!0, +contains:[e.inherit(e.TITLE_MODE,{className:"title.function",begin:n}),{ +className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,contains:o +}],illegal:/\[|%/},{begin:/\$[(.]/}],illegal:/#(?!!)/}}})() +;hljs.registerLanguage("arcade",e)})();/*! `django` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const t={begin:/\|[A-Za-z]+:?/, +keywords:{ +name:"truncatewords removetags linebreaksbr yesno get_digit timesince random striptags filesizeformat escape linebreaks length_is ljust rjust cut urlize fix_ampersands title floatformat capfirst pprint divisibleby add make_list unordered_list urlencode timeuntil urlizetrunc wordcount stringformat linenumbers slice date dictsort dictsortreversed default_if_none pluralize lower join center default truncatewords_html upper length phone2numeric wordwrap time addslashes slugify first escapejs force_escape iriencode last safe safeseq truncatechars localize unlocalize localtime utc timezone" +},contains:[e.QUOTE_STRING_MODE,e.APOS_STRING_MODE]};return{name:"Django", +aliases:["jinja"],case_insensitive:!0,subLanguage:"xml", +contains:[e.COMMENT(/\{%\s*comment\s*%\}/,/\{%\s*endcomment\s*%\}/),e.COMMENT(/\{#/,/#\}/),{ +className:"template-tag",begin:/\{%/,end:/%\}/,contains:[{className:"name", +begin:/\w+/,keywords:{ +name:"comment endcomment load templatetag ifchanged endifchanged if endif firstof for endfor ifnotequal endifnotequal widthratio extends include spaceless endspaceless regroup ifequal endifequal ssi now with cycle url filter endfilter debug block endblock else autoescape endautoescape csrf_token empty elif endwith static trans blocktrans endblocktrans get_static_prefix get_media_prefix plural get_current_language language get_available_languages get_current_language_bidi get_language_info get_language_info_list localize endlocalize localtime endlocaltime timezone endtimezone get_current_timezone verbatim" +},starts:{endsWithParent:!0,keywords:"in by as",contains:[t],relevance:0}}]},{ +className:"template-variable",begin:/\{\{/,end:/\}\}/,contains:[t]}]}}})() +;hljs.registerLanguage("django",e)})();/*! `asciidoc` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n=e.regex,a=[{ +className:"strong",begin:/\*{2}([^\n]+?)\*{2}/},{className:"strong", +begin:n.concat(/\*\*/,/((\*(?!\*)|\\[^\n]|[^*\n\\])+\n)+/,/(\*(?!\*)|\\[^\n]|[^*\n\\])*/,/\*\*/), +relevance:0},{className:"strong",begin:/\B\*(\S|\S[^\n]*?\S)\*(?!\w)/},{ +className:"strong",begin:/\*[^\s]([^\n]+\n)+([^\n]+)\*/}],s=[{ +className:"emphasis",begin:/_{2}([^\n]+?)_{2}/},{className:"emphasis", +begin:n.concat(/__/,/((_(?!_)|\\[^\n]|[^_\n\\])+\n)+/,/(_(?!_)|\\[^\n]|[^_\n\\])*/,/__/), +relevance:0},{className:"emphasis",begin:/\b_(\S|\S[^\n]*?\S)_(?!\w)/},{ +className:"emphasis",begin:/_[^\s]([^\n]+\n)+([^\n]+)_/},{className:"emphasis", +begin:"\\B'(?!['\\s])",end:"(\\n{2}|')",contains:[{begin:"\\\\'\\w",relevance:0 +}],relevance:0}];return{name:"AsciiDoc",aliases:["adoc"], +contains:[e.COMMENT("^/{4,}\\n","\\n/{4,}$",{relevance:10 +}),e.COMMENT("^//","$",{relevance:0}),{className:"title",begin:"^\\.\\w.*$"},{ +begin:"^[=\\*]{4,}\\n",end:"\\n^[=\\*]{4,}$",relevance:10},{className:"section", +relevance:10,variants:[{begin:"^(={1,6})[ \t].+?([ \t]\\1)?$"},{ +begin:"^[^\\[\\]\\n]+?\\n[=\\-~\\^\\+]{2,}$"}]},{className:"meta", +begin:"^:.+?:",end:"\\s",excludeEnd:!0,relevance:10},{className:"meta", +begin:"^\\[.+?\\]$",relevance:0},{className:"quote",begin:"^_{4,}\\n", +end:"\\n_{4,}$",relevance:10},{className:"code",begin:"^[\\-\\.]{4,}\\n", +end:"\\n[\\-\\.]{4,}$",relevance:10},{begin:"^\\+{4,}\\n",end:"\\n\\+{4,}$", +contains:[{begin:"<",end:">",subLanguage:"xml",relevance:0}],relevance:10},{ +className:"bullet",begin:"^(\\*+|-+|\\.+|[^\\n]+?::)\\s+"},{className:"symbol", +begin:"^(NOTE|TIP|IMPORTANT|WARNING|CAUTION):\\s+",relevance:10},{ +begin:/\\[*_`]/},{begin:/\\\\\*{2}[^\n]*?\*{2}/},{begin:/\\\\_{2}[^\n]*_{2}/},{ +begin:/\\\\`{2}[^\n]*`{2}/},{begin:/[:;}][*_`](?![*_`])/},...a,...s,{ +className:"string",variants:[{begin:"``.+?''"},{begin:"`.+?'"}]},{ +className:"code",begin:/`{2}/,end:/(\n{2}|`{2})/},{className:"code", +begin:"(`.+?`|\\+.+?\\+)",relevance:0},{className:"code",begin:"^[ \\t]", +end:"$",relevance:0},{begin:"^'{3,}[ \\t]*$",relevance:10},{ +begin:"(link:)?(http|https|ftp|file|irc|image:?):\\S+?\\[[^[]*?\\]", +returnBegin:!0,contains:[{begin:"(link|image:?):",relevance:0},{ +className:"link",begin:"\\w",end:"[^\\[]+",relevance:0},{className:"string", +begin:"\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0,relevance:0}],relevance:10}] +}}})();hljs.registerLanguage("asciidoc",e)})();/*! `xquery` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"XQuery",aliases:["xpath","xq"], +case_insensitive:!1,illegal:/(proc)|(abstract)|(extends)|(until)|(#)/,keywords:{ +$pattern:/[a-zA-Z$][a-zA-Z0-9_:-]*/, +keyword:["module","schema","namespace","boundary-space","preserve","no-preserve","strip","default","collation","base-uri","ordering","context","decimal-format","decimal-separator","copy-namespaces","empty-sequence","except","exponent-separator","external","grouping-separator","inherit","no-inherit","lax","minus-sign","per-mille","percent","schema-attribute","schema-element","strict","unordered","zero-digit","declare","import","option","function","validate","variable","for","at","in","let","where","order","group","by","return","if","then","else","tumbling","sliding","window","start","when","only","end","previous","next","stable","ascending","descending","allowing","empty","greatest","least","some","every","satisfies","switch","case","typeswitch","try","catch","and","or","to","union","intersect","instance","of","treat","as","castable","cast","map","array","delete","insert","into","replace","value","rename","copy","modify","update"], +type:["item","document-node","node","attribute","document","element","comment","namespace","namespace-node","processing-instruction","text","construction","xs:anyAtomicType","xs:untypedAtomic","xs:duration","xs:time","xs:decimal","xs:float","xs:double","xs:gYearMonth","xs:gYear","xs:gMonthDay","xs:gMonth","xs:gDay","xs:boolean","xs:base64Binary","xs:hexBinary","xs:anyURI","xs:QName","xs:NOTATION","xs:dateTime","xs:dateTimeStamp","xs:date","xs:string","xs:normalizedString","xs:token","xs:language","xs:NMTOKEN","xs:Name","xs:NCName","xs:ID","xs:IDREF","xs:ENTITY","xs:integer","xs:nonPositiveInteger","xs:negativeInteger","xs:long","xs:int","xs:short","xs:byte","xs:nonNegativeInteger","xs:unisignedLong","xs:unsignedInt","xs:unsignedShort","xs:unsignedByte","xs:positiveInteger","xs:yearMonthDuration","xs:dayTimeDuration"], +literal:["eq","ne","lt","le","gt","ge","is","self::","child::","descendant::","descendant-or-self::","attribute::","following::","following-sibling::","parent::","ancestor::","ancestor-or-self::","preceding::","preceding-sibling::","NaN"] +},contains:[{className:"variable",begin:/[$][\w\-:]+/},{className:"built_in", +variants:[{begin:/\barray:/, +end:/(?:append|filter|flatten|fold-(?:left|right)|for-each(?:-pair)?|get|head|insert-before|join|put|remove|reverse|size|sort|subarray|tail)\b/ +},{begin:/\bmap:/, +end:/(?:contains|entry|find|for-each|get|keys|merge|put|remove|size)\b/},{ +begin:/\bmath:/, +end:/(?:a(?:cos|sin|tan[2]?)|cos|exp(?:10)?|log(?:10)?|pi|pow|sin|sqrt|tan)\b/ +},{begin:/\bop:/,end:/\(/,excludeEnd:!0},{begin:/\bfn:/,end:/\(/,excludeEnd:!0 +},{ +begin:/[^</$:'"-]\b(?:abs|accumulator-(?:after|before)|adjust-(?:date(?:Time)?|time)-to-timezone|analyze-string|apply|available-(?:environment-variables|system-properties)|avg|base-uri|boolean|ceiling|codepoints?-(?:equal|to-string)|collation-key|collection|compare|concat|contains(?:-token)?|copy-of|count|current(?:-)?(?:date(?:Time)?|time|group(?:ing-key)?|output-uri|merge-(?:group|key))?data|dateTime|days?-from-(?:date(?:Time)?|duration)|deep-equal|default-(?:collation|language)|distinct-values|document(?:-uri)?|doc(?:-available)?|element-(?:available|with-id)|empty|encode-for-uri|ends-with|environment-variable|error|escape-html-uri|exactly-one|exists|false|filter|floor|fold-(?:left|right)|for-each(?:-pair)?|format-(?:date(?:Time)?|time|integer|number)|function-(?:arity|available|lookup|name)|generate-id|has-children|head|hours-from-(?:dateTime|duration|time)|id(?:ref)?|implicit-timezone|in-scope-prefixes|index-of|innermost|insert-before|iri-to-uri|json-(?:doc|to-xml)|key|lang|last|load-xquery-module|local-name(?:-from-QName)?|(?:lower|upper)-case|matches|max|minutes-from-(?:dateTime|duration|time)|min|months?-from-(?:date(?:Time)?|duration)|name(?:space-uri-?(?:for-prefix|from-QName)?)?|nilled|node-name|normalize-(?:space|unicode)|not|number|one-or-more|outermost|parse-(?:ietf-date|json)|path|position|(?:prefix-from-)?QName|random-number-generator|regex-group|remove|replace|resolve-(?:QName|uri)|reverse|root|round(?:-half-to-even)?|seconds-from-(?:dateTime|duration|time)|snapshot|sort|starts-with|static-base-uri|stream-available|string-?(?:join|length|to-codepoints)?|subsequence|substring-?(?:after|before)?|sum|system-property|tail|timezone-from-(?:date(?:Time)?|time)|tokenize|trace|trans(?:form|late)|true|type-available|unordered|unparsed-(?:entity|text)?-?(?:public-id|uri|available|lines)?|uri-collection|xml-to-json|years?-from-(?:date(?:Time)?|duration)|zero-or-one)\b/ +},{begin:/\blocal:/,end:/\(/,excludeEnd:!0},{begin:/\bzip:/, +end:/(?:zip-file|(?:xml|html|text|binary)-entry| (?:update-)?entries)\b/},{ +begin:/\b(?:util|db|functx|app|xdmp|xmldb):/,end:/\(/,excludeEnd:!0}]},{ +className:"string",variants:[{begin:/"/,end:/"/,contains:[{begin:/""/, +relevance:0}]},{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]}]},{ +className:"number", +begin:/(\b0[0-7_]+)|(\b0x[0-9a-fA-F_]+)|(\b[1-9][0-9_]*(\.[0-9_]+)?)|[0_]\b/, +relevance:0},{className:"comment",begin:/\(:/,end:/:\)/,relevance:10,contains:[{ +className:"doctag",begin:/@\w+/}]},{className:"meta",begin:/%[\w\-:]+/},{ +className:"title",begin:/\bxquery version "[13]\.[01]"\s?(?:encoding ".+")?/, +end:/;/},{ +beginKeywords:"element attribute comment document processing-instruction", +end:/\{/,excludeEnd:!0},{begin:/<([\w._:-]+)(\s+\S*=('|").*('|"))?>/, +end:/(\/[\w._:-]+>)/,subLanguage:"xml",contains:[{begin:/\{/,end:/\}/, +subLanguage:"xquery"},"self"]}]})})();hljs.registerLanguage("xquery",e)})();/*! `crystal` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const n="(_?[ui](8|16|32|64|128))?",i="[a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|[=!]~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~|]|//|//=|&[-+*]=?|&\\*\\*|\\[\\][=?]?",s="[A-Za-z_]\\w*(::\\w+)*(\\?|!)?",a={ +$pattern:"[a-zA-Z_]\\w*[!?=]?", +keyword:"abstract alias annotation as as? asm begin break case class def do else elsif end ensure enum extend for fun if include instance_sizeof is_a? lib macro module next nil? of out pointerof private protected rescue responds_to? return require select self sizeof struct super then type typeof union uninitialized unless until verbatim when while with yield __DIR__ __END_LINE__ __FILE__ __LINE__", +literal:"false nil true"},t={className:"subst",begin:/#\{/,end:/\}/,keywords:a +},c={className:"template-variable",variants:[{begin:"\\{\\{",end:"\\}\\}"},{ +begin:"\\{%",end:"%\\}"}],keywords:a};function r(e,n){const i=[{begin:e,end:n}] +;return i[0].contains=i,i}const l={className:"string", +contains:[e.BACKSLASH_ESCAPE,t],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/ +},{begin:/`/,end:/`/},{begin:"%[Qwi]?\\(",end:"\\)",contains:r("\\(","\\)")},{ +begin:"%[Qwi]?\\[",end:"\\]",contains:r("\\[","\\]")},{begin:"%[Qwi]?\\{", +end:/\}/,contains:r(/\{/,/\}/)},{begin:"%[Qwi]?<",end:">",contains:r("<",">")},{ +begin:"%[Qwi]?\\|",end:"\\|"},{begin:/<<-\w+$/,end:/^\s*\w+$/}],relevance:0},b={ +className:"string",variants:[{begin:"%q\\(",end:"\\)",contains:r("\\(","\\)")},{ +begin:"%q\\[",end:"\\]",contains:r("\\[","\\]")},{begin:"%q\\{",end:/\}/, +contains:r(/\{/,/\}/)},{begin:"%q<",end:">",contains:r("<",">")},{begin:"%q\\|", +end:"\\|"},{begin:/<<-'\w+'$/,end:/^\s*\w+$/}],relevance:0},o={ +begin:"(?!%\\})("+e.RE_STARTERS_RE+"|\\n|\\b(case|if|select|unless|until|when|while)\\b)\\s*", +keywords:"case if select unless until when while",contains:[{className:"regexp", +contains:[e.BACKSLASH_ESCAPE,t],variants:[{begin:"//[a-z]*",relevance:0},{ +begin:"/(?!\\/)",end:"/[a-z]*"}]}],relevance:0},g=[c,l,b,{className:"regexp", +contains:[e.BACKSLASH_ESCAPE,t],variants:[{begin:"%r\\(",end:"\\)", +contains:r("\\(","\\)")},{begin:"%r\\[",end:"\\]",contains:r("\\[","\\]")},{ +begin:"%r\\{",end:/\}/,contains:r(/\{/,/\}/)},{begin:"%r<",end:">", +contains:r("<",">")},{begin:"%r\\|",end:"\\|"}],relevance:0},o,{ +className:"meta",begin:"@\\[",end:"\\]", +contains:[e.inherit(e.QUOTE_STRING_MODE,{className:"string"})]},{ +className:"variable", +begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])" +},e.HASH_COMMENT_MODE,{className:"class",beginKeywords:"class module struct", +end:"$|;",illegal:/=/,contains:[e.HASH_COMMENT_MODE,e.inherit(e.TITLE_MODE,{ +begin:s}),{begin:"<"}]},{className:"class",beginKeywords:"lib enum union", +end:"$|;",illegal:/=/,contains:[e.HASH_COMMENT_MODE,e.inherit(e.TITLE_MODE,{ +begin:s})]},{beginKeywords:"annotation",end:"$|;",illegal:/=/, +contains:[e.HASH_COMMENT_MODE,e.inherit(e.TITLE_MODE,{begin:s})],relevance:2},{ +className:"function",beginKeywords:"def",end:/\B\b/, +contains:[e.inherit(e.TITLE_MODE,{begin:i,endsParent:!0})]},{ +className:"function",beginKeywords:"fun macro",end:/\B\b/, +contains:[e.inherit(e.TITLE_MODE,{begin:i,endsParent:!0})],relevance:2},{ +className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{ +className:"symbol",begin:":",contains:[l,{begin:i}],relevance:0},{ +className:"number",variants:[{begin:"\\b0b([01_]+)"+n},{begin:"\\b0o([0-7_]+)"+n +},{begin:"\\b0x([A-Fa-f0-9_]+)"+n},{ +begin:"\\b([1-9][0-9_]*[0-9]|[0-9])(\\.[0-9][0-9_]*)?([eE]_?[-+]?[0-9_]*)?(_?f(32|64))?(?!_)" +},{begin:"\\b([1-9][0-9_]*|0)"+n}],relevance:0}] +;return t.contains=g,c.contains=g.slice(1),{name:"Crystal",aliases:["cr"], +keywords:a,contains:g}}})();hljs.registerLanguage("crystal",e)})();/*! `css` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict" +;const e=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],i=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],r=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],t=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],o=["align-content","align-items","align-self","all","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","content","content-visibility","counter-increment","counter-reset","cue","cue-after","cue-before","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-synthesis","font-variant","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","gap","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inline-size","isolation","justify-content","left","letter-spacing","line-break","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","pause","pause-after","pause-before","perspective","perspective-origin","pointer-events","position","quotes","resize","rest","rest-after","rest-before","right","row-gap","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","speak","speak-as","src","tab-size","table-layout","text-align","text-align-all","text-align-last","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-box","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","z-index"].reverse() +;return n=>{const a=n.regex,l=(e=>({IMPORTANT:{scope:"meta",begin:"!important"}, +BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number", +begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{ +className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{ +scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$", +contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{ +scope:"number", +begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?", +relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z][A-Za-z0-9_-]*/} +}))(n),s=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE];return{name:"CSS", +case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"}, +classNameAliases:{keyframePosition:"selector-tag"},contains:[l.BLOCK_COMMENT,{ +begin:/-(webkit|moz|ms|o)-(?=[a-z])/},l.CSS_NUMBER_MODE,{ +className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{ +className:"selector-class",begin:"\\.[a-zA-Z-][a-zA-Z0-9_-]*",relevance:0 +},l.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{ +begin:":("+r.join("|")+")"},{begin:":(:)?("+t.join("|")+")"}]},l.CSS_VARIABLE,{ +className:"attribute",begin:"\\b("+o.join("|")+")\\b"},{begin:/:/,end:/[;}{]/, +contains:[l.BLOCK_COMMENT,l.HEXCOLOR,l.IMPORTANT,l.CSS_NUMBER_MODE,...s,{ +begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri" +},contains:[...s,{className:"string",begin:/[^)]/,endsWithParent:!0, +excludeEnd:!0}]},l.FUNCTION_DISPATCH]},{begin:a.lookahead(/@/),end:"[{;]", +relevance:0,illegal:/:/,contains:[{className:"keyword",begin:/@-?\w[\w]*(-\w+)*/ +},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{ +$pattern:/[a-z-]+/,keyword:"and or not only",attribute:i.join(" ")},contains:[{ +begin:/[a-z-]+(?=:)/,className:"attribute"},...s,l.CSS_NUMBER_MODE]}]},{ +className:"selector-tag",begin:"\\b("+e.join("|")+")\\b"}]}}})() +;hljs.registerLanguage("css",e)})();/*! `graphql` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const a=e.regex;return{name:"GraphQL", +aliases:["gql"],case_insensitive:!0,disableAutodetect:!1,keywords:{ +keyword:["query","mutation","subscription","type","input","schema","directive","interface","union","scalar","fragment","enum","on"], +literal:["true","false","null"]}, +contains:[e.HASH_COMMENT_MODE,e.QUOTE_STRING_MODE,e.NUMBER_MODE,{ +scope:"punctuation",match:/[.]{3}/,relevance:0},{scope:"punctuation", +begin:/[\!\(\)\:\=\[\]\{\|\}]{1}/,relevance:0},{scope:"variable",begin:/\$/, +end:/\W/,excludeEnd:!0,relevance:0},{scope:"meta",match:/@\w+/,excludeEnd:!0},{ +scope:"symbol",begin:a.concat(/[_A-Za-z][_0-9A-Za-z]*/,a.lookahead(/\s*:/)), +relevance:0}],illegal:[/[;<']/,/BEGIN/]}}})();hljs.registerLanguage("graphql",e) +})();/*! `sml` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"SML (Standard ML)", +aliases:["ml"],keywords:{$pattern:"[a-z_]\\w*!?", +keyword:"abstype and andalso as case datatype do else end eqtype exception fn fun functor handle if in include infix infixr let local nonfix of op open orelse raise rec sharing sig signature struct structure then type val with withtype where while", +built_in:"array bool char exn int list option order real ref string substring vector unit word", +literal:"true false NONE SOME LESS EQUAL GREATER nil"},illegal:/\/\/|>>/, +contains:[{className:"literal",begin:/\[(\|\|)?\]|\(\)/,relevance:0 +},e.COMMENT("\\(\\*","\\*\\)",{contains:["self"]}),{className:"symbol", +begin:"'[A-Za-z_](?!')[\\w']*"},{className:"type",begin:"`[A-Z][\\w']*"},{ +className:"type",begin:"\\b[A-Z][\\w']*",relevance:0},{ +begin:"[a-z_]\\w*'[\\w']*"},e.inherit(e.APOS_STRING_MODE,{className:"string", +relevance:0}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),{className:"number", +begin:"\\b(0[xX][a-fA-F0-9_]+[Lln]?|0[oO][0-7_]+[Lln]?|0[bB][01_]+[Lln]?|[0-9][0-9_]*([Lln]|(\\.[0-9_]*)?([eE][-+]?[0-9_]+)?)?)", +relevance:0},{begin:/[-=]>/}]})})();hljs.registerLanguage("sml",e)})();/*! `diff` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const a=e.regex;return{name:"Diff", +aliases:["patch"],contains:[{className:"meta",relevance:10, +match:a.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/) +},{className:"comment",variants:[{ +begin:a.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/), +end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{ +className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/, +end:/$/}]}}})();hljs.registerLanguage("diff",e)})();/*! `haxe` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Haxe",aliases:["hx"],keywords:{ +keyword:"break case cast catch continue default do dynamic else enum extern for function here if import in inline never new override package private get set public return static super switch this throw trace try typedef untyped using var while Int Float String Bool Dynamic Void Array ", +built_in:"trace this",literal:"true false null _"},contains:[{ +className:"string",begin:"'",end:"'",contains:[e.BACKSLASH_ESCAPE,{ +className:"subst",begin:"\\$\\{",end:"\\}"},{className:"subst",begin:"\\$", +end:/\W\}/}] +},e.QUOTE_STRING_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.C_NUMBER_MODE,{ +className:"meta",begin:"@:",end:"$"},{className:"meta",begin:"#",end:"$", +keywords:{keyword:"if else elseif end error"}},{className:"type", +begin:":[ \t]*",end:"[^A-Za-z0-9_ \t\\->]",excludeBegin:!0,excludeEnd:!0, +relevance:0},{className:"type",begin:":[ \t]*",end:"\\W",excludeBegin:!0, +excludeEnd:!0},{className:"type",begin:"new *",end:"\\W",excludeBegin:!0, +excludeEnd:!0},{className:"class",beginKeywords:"enum",end:"\\{", +contains:[e.TITLE_MODE]},{className:"class",beginKeywords:"abstract", +end:"[\\{$]",contains:[{className:"type",begin:"\\(",end:"\\)",excludeBegin:!0, +excludeEnd:!0},{className:"type",begin:"from +",end:"\\W",excludeBegin:!0, +excludeEnd:!0},{className:"type",begin:"to +",end:"\\W",excludeBegin:!0, +excludeEnd:!0},e.TITLE_MODE],keywords:{keyword:"abstract from to"}},{ +className:"class",begin:"\\b(class|interface) +",end:"[\\{$]",excludeEnd:!0, +keywords:"class interface",contains:[{className:"keyword", +begin:"\\b(extends|implements) +",keywords:"extends implements",contains:[{ +className:"type",begin:e.IDENT_RE,relevance:0}]},e.TITLE_MODE]},{ +className:"function",beginKeywords:"function",end:"\\(",excludeEnd:!0, +illegal:"\\S",contains:[e.TITLE_MODE]}],illegal:/<\//})})() +;hljs.registerLanguage("haxe",e)})();/*! `wasm` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{e.regex;const a=e.COMMENT(/\(;/,/;\)/) +;return a.contains.push("self"),{name:"WebAssembly",keywords:{$pattern:/[\w.]+/, +keyword:["anyfunc","block","br","br_if","br_table","call","call_indirect","data","drop","elem","else","end","export","func","global.get","global.set","local.get","local.set","local.tee","get_global","get_local","global","if","import","local","loop","memory","memory.grow","memory.size","module","mut","nop","offset","param","result","return","select","set_global","set_local","start","table","tee_local","then","type","unreachable"] +},contains:[e.COMMENT(/;;/,/$/),a,{match:[/(?:offset|align)/,/\s*/,/=/], +className:{1:"keyword",3:"operator"}},{className:"variable",begin:/\$[\w_]+/},{ +match:/(\((?!;)|\))+/,className:"punctuation",relevance:0},{ +begin:[/(?:func|call|call_indirect)/,/\s+/,/\$[^\s)]+/],className:{1:"keyword", +3:"title.function"}},e.QUOTE_STRING_MODE,{match:/(i32|i64|f32|f64)(?!\.)/, +className:"type"},{className:"keyword", +match:/\b(f32|f64|i32|i64)(?:\.(?:abs|add|and|ceil|clz|const|convert_[su]\/i(?:32|64)|copysign|ctz|demote\/f64|div(?:_[su])?|eqz?|extend_[su]\/i32|floor|ge(?:_[su])?|gt(?:_[su])?|le(?:_[su])?|load(?:(?:8|16|32)_[su])?|lt(?:_[su])?|max|min|mul|nearest|neg?|or|popcnt|promote\/f32|reinterpret\/[fi](?:32|64)|rem_[su]|rot[lr]|shl|shr_[su]|store(?:8|16|32)?|sqrt|sub|trunc(?:_[su]\/f(?:32|64))?|wrap\/i64|xor))\b/ +},{className:"number",relevance:0, +match:/[+-]?\b(?:\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:[eE][+-]?\d(?:_?\d)*)?|0x[\da-fA-F](?:_?[\da-fA-F])*(?:\.[\da-fA-F](?:_?[\da-fA-D])*)?(?:[pP][+-]?\d(?:_?\d)*)?)\b|\binf\b|\bnan(?::0x[\da-fA-F](?:_?[\da-fA-D])*)?\b/ +}]}}})();hljs.registerLanguage("wasm",e)})();/*! `vim` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Vim Script",keywords:{ +$pattern:/[!#@\w]+/, +keyword:"N|0 P|0 X|0 a|0 ab abc abo al am an|0 ar arga argd arge argdo argg argl argu as au aug aun b|0 bN ba bad bd be bel bf bl bm bn bo bp br brea breaka breakd breakl bro bufdo buffers bun bw c|0 cN cNf ca cabc caddb cad caddf cal cat cb cc ccl cd ce cex cf cfir cgetb cgete cg changes chd che checkt cl cla clo cm cmapc cme cn cnew cnf cno cnorea cnoreme co col colo com comc comp con conf cope cp cpf cq cr cs cst cu cuna cunme cw delm deb debugg delc delf dif diffg diffo diffp diffpu diffs diffthis dig di dl dell dj dli do doautoa dp dr ds dsp e|0 ea ec echoe echoh echom echon el elsei em en endfo endf endt endw ene ex exe exi exu f|0 files filet fin fina fini fir fix fo foldc foldd folddoc foldo for fu go gr grepa gu gv ha helpf helpg helpt hi hid his ia iabc if ij il im imapc ime ino inorea inoreme int is isp iu iuna iunme j|0 ju k|0 keepa kee keepj lN lNf l|0 lad laddb laddf la lan lat lb lc lch lcl lcs le lefta let lex lf lfir lgetb lgete lg lgr lgrepa lh ll lla lli lmak lm lmapc lne lnew lnf ln loadk lo loc lockv lol lope lp lpf lr ls lt lu lua luad luaf lv lvimgrepa lw m|0 ma mak map mapc marks mat me menut mes mk mks mksp mkv mkvie mod mz mzf nbc nb nbs new nm nmapc nme nn nnoreme noa no noh norea noreme norm nu nun nunme ol o|0 om omapc ome on ono onoreme opt ou ounme ow p|0 profd prof pro promptr pc ped pe perld po popu pp pre prev ps pt ptN ptf ptj ptl ptn ptp ptr pts pu pw py3 python3 py3d py3f py pyd pyf quita qa rec red redi redr redraws reg res ret retu rew ri rightb rub rubyd rubyf rund ru rv sN san sa sal sav sb sbN sba sbf sbl sbm sbn sbp sbr scrip scripte scs se setf setg setl sf sfir sh sim sig sil sl sla sm smap smapc sme sn sni sno snor snoreme sor so spelld spe spelli spellr spellu spellw sp spr sre st sta startg startr star stopi stj sts sun sunm sunme sus sv sw sy synti sync tN tabN tabc tabdo tabe tabf tabfir tabl tabm tabnew tabn tabo tabp tabr tabs tab ta tags tc tcld tclf te tf th tj tl tm tn to tp tr try ts tu u|0 undoj undol una unh unl unlo unm unme uns up ve verb vert vim vimgrepa vi viu vie vm vmapc vme vne vn vnoreme vs vu vunme windo w|0 wN wa wh wi winc winp wn wp wq wqa ws wu wv x|0 xa xmapc xm xme xn xnoreme xu xunme y|0 z|0 ~ Next Print append abbreviate abclear aboveleft all amenu anoremenu args argadd argdelete argedit argglobal arglocal argument ascii autocmd augroup aunmenu buffer bNext ball badd bdelete behave belowright bfirst blast bmodified bnext botright bprevious brewind break breakadd breakdel breaklist browse bunload bwipeout change cNext cNfile cabbrev cabclear caddbuffer caddexpr caddfile call catch cbuffer cclose center cexpr cfile cfirst cgetbuffer cgetexpr cgetfile chdir checkpath checktime clist clast close cmap cmapclear cmenu cnext cnewer cnfile cnoremap cnoreabbrev cnoremenu copy colder colorscheme command comclear compiler continue confirm copen cprevious cpfile cquit crewind cscope cstag cunmap cunabbrev cunmenu cwindow delete delmarks debug debuggreedy delcommand delfunction diffupdate diffget diffoff diffpatch diffput diffsplit digraphs display deletel djump dlist doautocmd doautoall deletep drop dsearch dsplit edit earlier echo echoerr echohl echomsg else elseif emenu endif endfor endfunction endtry endwhile enew execute exit exusage file filetype find finally finish first fixdel fold foldclose folddoopen folddoclosed foldopen function global goto grep grepadd gui gvim hardcopy help helpfind helpgrep helptags highlight hide history insert iabbrev iabclear ijump ilist imap imapclear imenu inoremap inoreabbrev inoremenu intro isearch isplit iunmap iunabbrev iunmenu join jumps keepalt keepmarks keepjumps lNext lNfile list laddexpr laddbuffer laddfile last language later lbuffer lcd lchdir lclose lcscope left leftabove lexpr lfile lfirst lgetbuffer lgetexpr lgetfile lgrep lgrepadd lhelpgrep llast llist lmake lmap lmapclear lnext lnewer lnfile lnoremap loadkeymap loadview lockmarks lockvar lolder lopen lprevious lpfile lrewind ltag lunmap luado luafile lvimgrep lvimgrepadd lwindow move mark make mapclear match menu menutranslate messages mkexrc mksession mkspell mkvimrc mkview mode mzscheme mzfile nbclose nbkey nbsart next nmap nmapclear nmenu nnoremap nnoremenu noautocmd noremap nohlsearch noreabbrev noremenu normal number nunmap nunmenu oldfiles open omap omapclear omenu only onoremap onoremenu options ounmap ounmenu ownsyntax print profdel profile promptfind promptrepl pclose pedit perl perldo pop popup ppop preserve previous psearch ptag ptNext ptfirst ptjump ptlast ptnext ptprevious ptrewind ptselect put pwd py3do py3file python pydo pyfile quit quitall qall read recover redo redir redraw redrawstatus registers resize retab return rewind right rightbelow ruby rubydo rubyfile rundo runtime rviminfo substitute sNext sandbox sargument sall saveas sbuffer sbNext sball sbfirst sblast sbmodified sbnext sbprevious sbrewind scriptnames scriptencoding scscope set setfiletype setglobal setlocal sfind sfirst shell simalt sign silent sleep slast smagic smapclear smenu snext sniff snomagic snoremap snoremenu sort source spelldump spellgood spellinfo spellrepall spellundo spellwrong split sprevious srewind stop stag startgreplace startreplace startinsert stopinsert stjump stselect sunhide sunmap sunmenu suspend sview swapname syntax syntime syncbind tNext tabNext tabclose tabedit tabfind tabfirst tablast tabmove tabnext tabonly tabprevious tabrewind tag tcl tcldo tclfile tearoff tfirst throw tjump tlast tmenu tnext topleft tprevious trewind tselect tunmenu undo undojoin undolist unabbreviate unhide unlet unlockvar unmap unmenu unsilent update vglobal version verbose vertical vimgrep vimgrepadd visual viusage view vmap vmapclear vmenu vnew vnoremap vnoremenu vsplit vunmap vunmenu write wNext wall while winsize wincmd winpos wnext wprevious wqall wsverb wundo wviminfo xit xall xmapclear xmap xmenu xnoremap xnoremenu xunmap xunmenu yank", +built_in:"synIDtrans atan2 range matcharg did_filetype asin feedkeys xor argv complete_check add getwinposx getqflist getwinposy screencol clearmatches empty extend getcmdpos mzeval garbagecollect setreg ceil sqrt diff_hlID inputsecret get getfperm getpid filewritable shiftwidth max sinh isdirectory synID system inputrestore winline atan visualmode inputlist tabpagewinnr round getregtype mapcheck hasmapto histdel argidx findfile sha256 exists toupper getcmdline taglist string getmatches bufnr strftime winwidth bufexists strtrans tabpagebuflist setcmdpos remote_read printf setloclist getpos getline bufwinnr float2nr len getcmdtype diff_filler luaeval resolve libcallnr foldclosedend reverse filter has_key bufname str2float strlen setline getcharmod setbufvar index searchpos shellescape undofile foldclosed setqflist buflisted strchars str2nr virtcol floor remove undotree remote_expr winheight gettabwinvar reltime cursor tabpagenr finddir localtime acos getloclist search tanh matchend rename gettabvar strdisplaywidth type abs py3eval setwinvar tolower wildmenumode log10 spellsuggest bufloaded synconcealed nextnonblank server2client complete settabwinvar executable input wincol setmatches getftype hlID inputsave searchpair or screenrow line settabvar histadd deepcopy strpart remote_peek and eval getftime submatch screenchar winsaveview matchadd mkdir screenattr getfontname libcall reltimestr getfsize winnr invert pow getbufline byte2line soundfold repeat fnameescape tagfiles sin strwidth spellbadword trunc maparg log lispindent hostname setpos globpath remote_foreground getchar synIDattr fnamemodify cscope_connection stridx winbufnr indent min complete_add nr2char searchpairpos inputdialog values matchlist items hlexists strridx browsedir expand fmod pathshorten line2byte argc count getwinvar glob foldtextresult getreg foreground cosh matchdelete has char2nr simplify histget searchdecl iconv winrestcmd pumvisible writefile foldlevel haslocaldir keys cos matchstr foldtext histnr tan tempname getcwd byteidx getbufvar islocked escape eventhandler remote_send serverlist winrestview synstack pyeval prevnonblank readfile cindent filereadable changenr exp" +},illegal:/;/,contains:[e.NUMBER_MODE,{className:"string",begin:"'",end:"'", +illegal:"\\n"},{className:"string",begin:/"(\\"|\n\\|[^"\n])*"/ +},e.COMMENT('"',"$"),{className:"variable",begin:/[bwtglsav]:[\w\d_]+/},{ +begin:[/\b(?:function|function!)/,/\s+/,e.IDENT_RE],className:{1:"keyword", +3:"title"},end:"$",relevance:0,contains:[{className:"params",begin:"\\(", +end:"\\)"}]},{className:"symbol",begin:/<[\w-]+>/}]})})() +;hljs.registerLanguage("vim",e)})();/*! `bnf` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Backus\u2013Naur Form", +contains:[{className:"attribute",begin:/</,end:/>/},{begin:/::=/,end:/$/, +contains:[{begin:/</,end:/>/ +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE] +}]})})();hljs.registerLanguage("bnf",e)})();/*! `fsharp` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";function e(e){ +return RegExp(e.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"),"m")}function n(e){ +return e?"string"==typeof e?e:e.source:null}function t(e){return i("(?=",e,")")} +function i(...e){return e.map((e=>n(e))).join("")}function a(...e){const t=(e=>{ +const n=e[e.length-1] +;return"object"==typeof n&&n.constructor===Object?(e.splice(e.length-1,1),n):{} +})(e);return"("+(t.capture?"":"?:")+e.map((e=>n(e))).join("|")+")"}return n=>{ +const r={scope:"keyword",match:/\b(yield|return|let|do|match|use)!/ +},o=["bool","byte","sbyte","int8","int16","int32","uint8","uint16","uint32","int","uint","int64","uint64","nativeint","unativeint","decimal","float","double","float32","single","char","string","unit","bigint","option","voption","list","array","seq","byref","exn","inref","nativeptr","obj","outref","voidptr","Result"],s={ +keyword:["abstract","and","as","assert","base","begin","class","default","delegate","do","done","downcast","downto","elif","else","end","exception","extern","finally","fixed","for","fun","function","global","if","in","inherit","inline","interface","internal","lazy","let","match","member","module","mutable","namespace","new","of","open","or","override","private","public","rec","return","static","struct","then","to","try","type","upcast","use","val","void","when","while","with","yield"], +literal:["true","false","null","Some","None","Ok","Error","infinity","infinityf","nan","nanf"], +built_in:["not","ref","raise","reraise","dict","readOnlyDict","set","get","enum","sizeof","typeof","typedefof","nameof","nullArg","invalidArg","invalidOp","id","fst","snd","ignore","lock","using","box","unbox","tryUnbox","printf","printfn","sprintf","eprintf","eprintfn","fprintf","fprintfn","failwith","failwithf"], +"variable.constant":["__LINE__","__SOURCE_DIRECTORY__","__SOURCE_FILE__"]},c={ +variants:[n.COMMENT(/\(\*(?!\))/,/\*\)/,{contains:["self"] +}),n.C_LINE_COMMENT_MODE]},l={scope:"variable",begin:/``/,end:/``/ +},u=/\B('|\^)/,p={scope:"symbol",variants:[{match:i(u,/``.*?``/)},{ +match:i(u,n.UNDERSCORE_IDENT_RE)}],relevance:0},f=({includeEqual:n})=>{let r +;r=n?"!%&*+-/<=>@^|~?":"!%&*+-/<>@^|~?" +;const o=i("[",...Array.from(r).map(e),"]"),s=a(o,/\./),c=i(s,t(s)),l=a(i(c,s,"*"),i(o,"+")) +;return{scope:"operator",match:a(l,/:\?>/,/:\?/,/:>/,/:=/,/::?/,/\$/), +relevance:0}},d=f({includeEqual:!0}),b=f({includeEqual:!1}),g=(e,r)=>({ +begin:i(e,t(i(/\s*/,a(/\w/,/'/,/\^/,/#/,/``/,/\(/,/{\|/)))),beginScope:r, +end:t(a(/\n/,/=/)),relevance:0,keywords:n.inherit(s,{type:o}), +contains:[c,p,n.inherit(l,{scope:null}),b] +}),m=g(/:/,"operator"),h=g(/\bof\b/,"keyword"),y={ +begin:[/(^|\s+)/,/type/,/\s+/,/[a-zA-Z_](\w|')*/],beginScope:{2:"keyword", +4:"title.class"},end:t(/\(|=|$/),keywords:s,contains:[c,n.inherit(l,{scope:null +}),p,{scope:"operator",match:/<|>/},m]},E={scope:"computation-expression", +match:/\b[_a-z]\w*(?=\s*\{)/},_={ +begin:[/^\s*/,i(/#/,a("if","else","endif","line","nowarn","light","r","i","I","load","time","help","quit")),/\b/], +beginScope:{2:"meta"},end:t(/\s|$/)},v={ +variants:[n.BINARY_NUMBER_MODE,n.C_NUMBER_MODE]},w={scope:"string",begin:/"/, +end:/"/,contains:[n.BACKSLASH_ESCAPE]},A={scope:"string",begin:/@"/,end:/"/, +contains:[{match:/""/},n.BACKSLASH_ESCAPE]},S={scope:"string",begin:/"""/, +end:/"""/,relevance:2},C={scope:"subst",begin:/\{/,end:/\}/,keywords:s},O={ +scope:"string",begin:/\$"/,end:/"/,contains:[{match:/\{\{/},{match:/\}\}/ +},n.BACKSLASH_ESCAPE,C]},R={scope:"string",begin:/(\$@|@\$)"/,end:/"/, +contains:[{match:/\{\{/},{match:/\}\}/},{match:/""/},n.BACKSLASH_ESCAPE,C]},k={ +scope:"string",begin:/\$"""/,end:/"""/,contains:[{match:/\{\{/},{match:/\}\}/ +},C],relevance:2},x={scope:"string", +match:i(/'/,a(/[^\\']/,/\\(?:.|\d{3}|x[a-fA-F\d]{2}|u[a-fA-F\d]{4}|U[a-fA-F\d]{8})/),/'/) +};return C.contains=[R,O,A,w,x,r,c,l,m,E,_,v,p,d],{name:"F#", +aliases:["fs","f#"],keywords:s,illegal:/\/\*/,classNameAliases:{ +"computation-expression":"keyword"},contains:[r,{variants:[k,R,O,S,A,w,x] +},c,l,y,{scope:"meta",begin:/\[</,end:/>\]/,relevance:2,contains:[l,S,A,w,x,v] +},h,m,E,_,v,p,d]}}})();hljs.registerLanguage("fsharp",e)})();/*! `oxygene` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const t={$pattern:/\.?\w+/, +keyword:"abstract add and array as asc aspect assembly async begin break block by case class concat const copy constructor continue create default delegate desc distinct div do downto dynamic each else empty end ensure enum equals event except exit extension external false final finalize finalizer finally flags for forward from function future global group has if implementation implements implies in index inherited inline interface into invariants is iterator join locked locking loop matching method mod module namespace nested new nil not notify nullable of old on operator or order out override parallel params partial pinned private procedure property protected public queryable raise read readonly record reintroduce remove repeat require result reverse sealed select self sequence set shl shr skip static step soft take then to true try tuple type union unit unsafe until uses using var virtual raises volatile where while with write xor yield await mapped deprecated stdcall cdecl pascal register safecall overload library platform reference packed strict published autoreleasepool selector strong weak unretained" +},r=e.COMMENT(/\{/,/\}/,{relevance:0}),n=e.COMMENT("\\(\\*","\\*\\)",{ +relevance:10}),a={className:"string",begin:"'",end:"'",contains:[{begin:"''"}] +},i={className:"string",begin:"(#\\d+)+"},s={ +beginKeywords:"function constructor destructor procedure method",end:"[:;]", +keywords:"function constructor|10 destructor|10 procedure|10 method|10", +contains:[e.inherit(e.TITLE_MODE,{scope:"title.function"}),{className:"params", +begin:"\\(",end:"\\)",keywords:t,contains:[a,i]},r,n]};return{name:"Oxygene", +case_insensitive:!0,keywords:t,illegal:'("|\\$[G-Zg-z]|\\/\\*|</|=>|->)', +contains:[r,n,e.C_LINE_COMMENT_MODE,a,i,e.NUMBER_MODE,s,{scope:"punctuation", +match:/;/,relevance:0}]}}})();hljs.registerLanguage("oxygene",e)})();/*! `leaf` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Leaf",contains:[{ +className:"function",begin:"#+[A-Za-z_0-9]*\\(",end:/ \{/,returnBegin:!0, +excludeEnd:!0,contains:[{className:"keyword",begin:"#+"},{className:"title", +begin:"[A-Za-z_][A-Za-z_0-9]*"},{className:"params",begin:"\\(",end:"\\)", +endsParent:!0,contains:[{className:"string",begin:'"',end:'"'},{ +className:"variable",begin:"[A-Za-z_][A-Za-z_0-9]*"}]}]}]})})() +;hljs.registerLanguage("leaf",e)})();/*! `coffeescript` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict" +;const e=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],n=["true","false","null","undefined","NaN","Infinity"],r=[].concat(["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"]) +;return t=>{const a={ +keyword:e.concat(["then","unless","until","loop","by","when","and","or","is","isnt","not"]).filter((i=["var","const","let","function","static"], +e=>!i.includes(e))),literal:n.concat(["yes","no","on","off"]), +built_in:r.concat(["npm","print"])};var i;const s="[A-Za-z$_][0-9A-Za-z$_]*",o={ +className:"subst",begin:/#\{/,end:/\}/,keywords:a +},c=[t.BINARY_NUMBER_MODE,t.inherit(t.C_NUMBER_MODE,{starts:{end:"(\\s*/)?", +relevance:0}}),{className:"string",variants:[{begin:/'''/,end:/'''/, +contains:[t.BACKSLASH_ESCAPE]},{begin:/'/,end:/'/,contains:[t.BACKSLASH_ESCAPE] +},{begin:/"""/,end:/"""/,contains:[t.BACKSLASH_ESCAPE,o]},{begin:/"/,end:/"/, +contains:[t.BACKSLASH_ESCAPE,o]}]},{className:"regexp",variants:[{begin:"///", +end:"///",contains:[o,t.HASH_COMMENT_MODE]},{begin:"//[gim]{0,3}(?=\\W)", +relevance:0},{begin:/\/(?![ *]).*?(?![\\]).\/[gim]{0,3}(?=\W)/}]},{begin:"@"+s +},{subLanguage:"javascript",excludeBegin:!0,excludeEnd:!0,variants:[{ +begin:"```",end:"```"},{begin:"`",end:"`"}]}];o.contains=c +;const l=t.inherit(t.TITLE_MODE,{begin:s}),d="(\\(.*\\)\\s*)?\\B[-=]>",g={ +className:"params",begin:"\\([^\\(]",returnBegin:!0,contains:[{begin:/\(/, +end:/\)/,keywords:a,contains:["self"].concat(c)}]},u={variants:[{ +match:[/class\s+/,s,/\s+extends\s+/,s]},{match:[/class\s+/,s]}],scope:{ +2:"title.class",4:"title.class.inherited"},keywords:a};return{ +name:"CoffeeScript",aliases:["coffee","cson","iced"],keywords:a,illegal:/\/\*/, +contains:[...c,t.COMMENT("###","###"),t.HASH_COMMENT_MODE,{className:"function", +begin:"^\\s*"+s+"\\s*=\\s*"+d,end:"[-=]>",returnBegin:!0,contains:[l,g]},{ +begin:/[:\(,=]\s*/,relevance:0,contains:[{className:"function",begin:d, +end:"[-=]>",returnBegin:!0,contains:[g]}]},u,{begin:s+":",end:":", +returnBegin:!0,returnEnd:!0,relevance:0}]}}})() +;hljs.registerLanguage("coffeescript",e)})();/*! `subunit` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var s=(()=>{"use strict";return s=>({name:"SubUnit",case_insensitive:!0, +contains:[{className:"string",begin:"\\[\n(multipart)?",end:"\\]\n"},{ +className:"string",begin:"\\d{4}-\\d{2}-\\d{2}(\\s+)\\d{2}:\\d{2}:\\d{2}.\\d+Z" +},{className:"string",begin:"(\\+|-)\\d+"},{className:"keyword",relevance:10, +variants:[{ +begin:"^(test|testing|success|successful|failure|error|skip|xfail|uxsuccess)(:?)\\s+(test)?" +},{begin:"^progress(:?)(\\s+)?(pop|push)?"},{begin:"^tags:"},{begin:"^time:"}]}] +})})();hljs.registerLanguage("subunit",s)})();/*! `erlang` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const n="[a-z'][a-zA-Z0-9_']*",r="("+n+":"+n+"|"+n+")",a={ +keyword:"after and andalso|10 band begin bnot bor bsl bzr bxor case catch cond div end fun if let not of orelse|10 query receive rem try when xor", +literal:"false true"},i=e.COMMENT("%","$"),s={className:"number", +begin:"\\b(\\d+(_\\d+)*#[a-fA-F0-9]+(_[a-fA-F0-9]+)*|\\d+(_\\d+)*(\\.\\d+(_\\d+)*)?([eE][-+]?\\d+)?)", +relevance:0},c={begin:"fun\\s+"+n+"/\\d+"},t={begin:r+"\\(",end:"\\)", +returnBegin:!0,relevance:0,contains:[{begin:r,relevance:0},{begin:"\\(", +end:"\\)",endsWithParent:!0,returnEnd:!0,relevance:0}]},d={begin:/\{/,end:/\}/, +relevance:0},o={begin:"\\b_([A-Z][A-Za-z0-9_]*)?",relevance:0},l={ +begin:"[A-Z][a-zA-Z0-9_]*",relevance:0},b={begin:"#"+e.UNDERSCORE_IDENT_RE, +relevance:0,returnBegin:!0,contains:[{begin:"#"+e.UNDERSCORE_IDENT_RE, +relevance:0},{begin:/\{/,end:/\}/,relevance:0}]},g={ +beginKeywords:"fun receive if try case",end:"end",keywords:a} +;g.contains=[i,c,e.inherit(e.APOS_STRING_MODE,{className:"" +}),g,t,e.QUOTE_STRING_MODE,s,d,o,l,b] +;const E=[i,c,g,t,e.QUOTE_STRING_MODE,s,d,o,l,b] +;t.contains[1].contains=E,d.contains=E,b.contains[1].contains=E;const u={ +className:"params",begin:"\\(",end:"\\)",contains:E};return{name:"Erlang", +aliases:["erl"],keywords:a,illegal:"(</|\\*=|\\+=|-=|/\\*|\\*/|\\(\\*|\\*\\))", +contains:[{className:"function",begin:"^"+n+"\\s*\\(",end:"->",returnBegin:!0, +illegal:"\\(|#|//|/\\*|\\\\|:|;",contains:[u,e.inherit(e.TITLE_MODE,{begin:n})], +starts:{end:";|\\.",keywords:a,contains:E}},i,{begin:"^-",end:"\\.",relevance:0, +excludeEnd:!0,returnBegin:!0,keywords:{$pattern:"-"+e.IDENT_RE, +keyword:["-module","-record","-undef","-export","-ifdef","-ifndef","-author","-copyright","-doc","-vsn","-import","-include","-include_lib","-compile","-define","-else","-endif","-file","-behaviour","-behavior","-spec"].map((e=>e+"|1.5")).join(" ") +},contains:[u]},s,e.QUOTE_STRING_MODE,b,o,l,d,{begin:/\.$/}]}}})() +;hljs.registerLanguage("erlang",e)})();/*! `csharp` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n={ +keyword:["abstract","as","base","break","case","catch","class","const","continue","do","else","event","explicit","extern","finally","fixed","for","foreach","goto","if","implicit","in","interface","internal","is","lock","namespace","new","operator","out","override","params","private","protected","public","readonly","record","ref","return","scoped","sealed","sizeof","stackalloc","static","struct","switch","this","throw","try","typeof","unchecked","unsafe","using","virtual","void","volatile","while"].concat(["add","alias","and","ascending","async","await","by","descending","equals","from","get","global","group","init","into","join","let","nameof","not","notnull","on","or","orderby","partial","remove","select","set","unmanaged","value|0","var","when","where","with","yield"]), +built_in:["bool","byte","char","decimal","delegate","double","dynamic","enum","float","int","long","nint","nuint","object","sbyte","short","string","ulong","uint","ushort"], +literal:["default","false","null","true"]},a=e.inherit(e.TITLE_MODE,{ +begin:"[a-zA-Z](\\.?\\w)*"}),i={className:"number",variants:[{ +begin:"\\b(0b[01']+)"},{ +begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"},{ +begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)" +}],relevance:0},s={className:"string",begin:'@"',end:'"',contains:[{begin:'""'}] +},t=e.inherit(s,{illegal:/\n/}),r={className:"subst",begin:/\{/,end:/\}/, +keywords:n},l=e.inherit(r,{illegal:/\n/}),c={className:"string",begin:/\$"/, +end:'"',illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/ +},e.BACKSLASH_ESCAPE,l]},o={className:"string",begin:/\$@"/,end:'"',contains:[{ +begin:/\{\{/},{begin:/\}\}/},{begin:'""'},r]},d=e.inherit(o,{illegal:/\n/, +contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},l]}) +;r.contains=[o,c,s,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,i,e.C_BLOCK_COMMENT_MODE], +l.contains=[d,c,t,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,i,e.inherit(e.C_BLOCK_COMMENT_MODE,{ +illegal:/\n/})];const g={variants:[o,c,s,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE] +},E={begin:"<",end:">",contains:[{beginKeywords:"in out"},a] +},_=e.IDENT_RE+"(<"+e.IDENT_RE+"(\\s*,\\s*"+e.IDENT_RE+")*>)?(\\[\\])?",b={ +begin:"@"+e.IDENT_RE,relevance:0};return{name:"C#",aliases:["cs","c#"], +keywords:n,illegal:/::/,contains:[e.COMMENT("///","$",{returnBegin:!0, +contains:[{className:"doctag",variants:[{begin:"///",relevance:0},{ +begin:"\x3c!--|--\x3e"},{begin:"</?",end:">"}]}] +}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"meta",begin:"#", +end:"$",keywords:{ +keyword:"if else elif endif define undef warning error line region endregion pragma checksum" +}},g,i,{beginKeywords:"class interface",relevance:0,end:/[{;=]/, +illegal:/[^\s:,]/,contains:[{beginKeywords:"where class" +},a,E,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"namespace", +relevance:0,end:/[{;=]/,illegal:/[^\s:]/, +contains:[a,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{ +beginKeywords:"record",relevance:0,end:/[{;=]/,illegal:/[^\s:]/, +contains:[a,E,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"meta", +begin:"^\\s*\\[(?=[\\w])",excludeBegin:!0,end:"\\]",excludeEnd:!0,contains:[{ +className:"string",begin:/"/,end:/"/}]},{ +beginKeywords:"new return throw await else",relevance:0},{className:"function", +begin:"("+_+"\\s+)+"+e.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0, +end:/\s*[{;=]/,excludeEnd:!0,keywords:n,contains:[{ +beginKeywords:"public private protected static internal protected abstract async extern override unsafe virtual new sealed partial", +relevance:0},{begin:e.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0, +contains:[e.TITLE_MODE,E],relevance:0},{match:/\(\)/},{className:"params", +begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:n,relevance:0, +contains:[g,i,e.C_BLOCK_COMMENT_MODE] +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},b]}}})() +;hljs.registerLanguage("csharp",e)})();/*! `cpp` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const t=e.regex,a=e.COMMENT("//","$",{ +contains:[{begin:/\\\n/}] +}),n="[a-zA-Z_]\\w*::",r="(?!struct)(decltype\\(auto\\)|"+t.optional(n)+"[a-zA-Z_]\\w*"+t.optional("<[^<>]+>")+")",i={ +className:"type",begin:"\\b[a-z\\d_]*_t\\b"},s={className:"string",variants:[{ +begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{ +begin:"(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)", +end:"'",illegal:"."},e.END_SAME_AS_BEGIN({ +begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},c={ +className:"number",variants:[{begin:"\\b(0b[01']+)"},{ +begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)" +},{ +begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)" +}],relevance:0},o={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{ +keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include" +},contains:[{begin:/\\\n/,relevance:0},e.inherit(s,{className:"string"}),{ +className:"string",begin:/<.*?>/},a,e.C_BLOCK_COMMENT_MODE]},l={ +className:"title",begin:t.optional(n)+e.IDENT_RE,relevance:0 +},d=t.optional(n)+e.IDENT_RE+"\\s*\\(",u={ +type:["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"], +keyword:["alignas","alignof","and","and_eq","asm","atomic_cancel","atomic_commit","atomic_noexcept","auto","bitand","bitor","break","case","catch","class","co_await","co_return","co_yield","compl","concept","const_cast|10","consteval","constexpr","constinit","continue","decltype","default","delete","do","dynamic_cast|10","else","enum","explicit","export","extern","false","final","for","friend","goto","if","import","inline","module","mutable","namespace","new","noexcept","not","not_eq","nullptr","operator","or","or_eq","override","private","protected","public","reflexpr","register","reinterpret_cast|10","requires","return","sizeof","static_assert","static_cast|10","struct","switch","synchronized","template","this","thread_local","throw","transaction_safe","transaction_safe_dynamic","true","try","typedef","typeid","typename","union","using","virtual","volatile","while","xor","xor_eq"], +literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"], +_type_hints:["any","auto_ptr","barrier","binary_semaphore","bitset","complex","condition_variable","condition_variable_any","counting_semaphore","deque","false_type","future","imaginary","initializer_list","istringstream","jthread","latch","lock_guard","multimap","multiset","mutex","optional","ostringstream","packaged_task","pair","promise","priority_queue","queue","recursive_mutex","recursive_timed_mutex","scoped_lock","set","shared_future","shared_lock","shared_mutex","shared_timed_mutex","shared_ptr","stack","string_view","stringstream","timed_mutex","thread","true_type","tuple","unique_lock","unique_ptr","unordered_map","unordered_multimap","unordered_multiset","unordered_set","variant","vector","weak_ptr","wstring","wstring_view"] +},p={className:"function.dispatch",relevance:0,keywords:{ +_hint:["abort","abs","acos","apply","as_const","asin","atan","atan2","calloc","ceil","cerr","cin","clog","cos","cosh","cout","declval","endl","exchange","exit","exp","fabs","floor","fmod","forward","fprintf","fputs","free","frexp","fscanf","future","invoke","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","labs","launder","ldexp","log","log10","make_pair","make_shared","make_shared_for_overwrite","make_tuple","make_unique","malloc","memchr","memcmp","memcpy","memset","modf","move","pow","printf","putchar","puts","realloc","scanf","sin","sinh","snprintf","sprintf","sqrt","sscanf","std","stderr","stdin","stdout","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","swap","tan","tanh","terminate","to_underlying","tolower","toupper","vfprintf","visit","vprintf","vsprintf"] +}, +begin:t.concat(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!switch)/,/(?!while)/,e.IDENT_RE,t.lookahead(/(<[^<>]+>|)\s*\(/)) +},_=[p,o,i,a,e.C_BLOCK_COMMENT_MODE,c,s],m={variants:[{begin:/=/,end:/;/},{ +begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}], +keywords:u,contains:_.concat([{begin:/\(/,end:/\)/,keywords:u, +contains:_.concat(["self"]),relevance:0}]),relevance:0},g={className:"function", +begin:"("+r+"[\\*&\\s]+)+"+d,returnBegin:!0,end:/[{;=]/,excludeEnd:!0, +keywords:u,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:"decltype\\(auto\\)", +keywords:u,relevance:0},{begin:d,returnBegin:!0,contains:[l],relevance:0},{ +begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[s,c]},{ +relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:u, +relevance:0,contains:[a,e.C_BLOCK_COMMENT_MODE,s,c,i,{begin:/\(/,end:/\)/, +keywords:u,relevance:0,contains:["self",a,e.C_BLOCK_COMMENT_MODE,s,c,i]}] +},i,a,e.C_BLOCK_COMMENT_MODE,o]};return{name:"C++", +aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:u,illegal:"</", +classNameAliases:{"function.dispatch":"built_in"}, +contains:[].concat(m,g,p,_,[o,{ +begin:"\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array|tuple|optional|variant|function)\\s*<(?!<)", +end:">",keywords:u,contains:["self",i]},{begin:e.IDENT_RE+"::",keywords:u},{ +match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/], +className:{1:"keyword",3:"title.class"}}])}}})();hljs.registerLanguage("cpp",e) +})();/*! `java` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict" +;var e="\\.([0-9](_*[0-9])*)",a="[0-9a-fA-F](_*[0-9a-fA-F])*",n={ +className:"number",variants:[{ +begin:`(\\b([0-9](_*[0-9])*)((${e})|\\.)?|(${e}))[eE][+-]?([0-9](_*[0-9])*)[fFdD]?\\b` +},{begin:`\\b([0-9](_*[0-9])*)((${e})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{ +begin:`(${e})[fFdD]?\\b`},{begin:"\\b([0-9](_*[0-9])*)[fFdD]\\b"},{ +begin:`\\b0[xX]((${a})\\.?|(${a})?\\.(${a}))[pP][+-]?([0-9](_*[0-9])*)[fFdD]?\\b` +},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${a})[lL]?\\b`},{ +begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}], +relevance:0};function s(e,a,n){return-1===n?"":e.replace(a,(t=>s(e,a,n-1)))} +return e=>{ +const a=e.regex,t="[\xc0-\u02b8a-zA-Z_$][\xc0-\u02b8a-zA-Z_$0-9]*",i=t+s("(?:<"+t+"~~~(?:\\s*,\\s*"+t+"~~~)*>)?",/~~~/g,2),r={ +keyword:["synchronized","abstract","private","var","static","if","const ","for","while","strictfp","finally","protected","import","native","final","void","enum","else","break","transient","catch","instanceof","volatile","case","assert","package","default","public","try","switch","continue","throws","protected","public","private","module","requires","exports","do","sealed","yield","permits"], +literal:["false","true","null"], +type:["char","boolean","long","float","int","byte","short","double"], +built_in:["super","this"]},l={className:"meta",begin:"@"+t,contains:[{ +begin:/\(/,end:/\)/,contains:["self"]}]},c={className:"params",begin:/\(/, +end:/\)/,keywords:r,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE],endsParent:!0} +;return{name:"Java",aliases:["jsp"],keywords:r,illegal:/<\/|#/, +contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/, +relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{ +begin:/import java\.[a-z]+\./,keywords:"import",relevance:2 +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/, +className:"string",contains:[e.BACKSLASH_ESCAPE] +},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{ +match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,t],className:{ +1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{ +begin:[a.concat(/(?!else)/,t),/\s+/,t,/\s+/,/=(?!=)/],className:{1:"type", +3:"variable",5:"operator"}},{begin:[/record/,/\s+/,t],className:{1:"keyword", +3:"title.class"},contains:[c,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{ +beginKeywords:"new throw return else",relevance:0},{ +begin:["(?:"+i+"\\s+)",e.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{ +2:"title.function"},keywords:r,contains:[{className:"params",begin:/\(/, +end:/\)/,keywords:r,relevance:0, +contains:[l,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,n,e.C_BLOCK_COMMENT_MODE] +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},n,l]}}})() +;hljs.registerLanguage("java",e)})();/*! `puppet` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const s=e.COMMENT("#","$"),r="([A-Za-z_]|::)(\\w|::)*",a=e.inherit(e.TITLE_MODE,{ +begin:r}),n={className:"variable",begin:"\\$"+r},i={className:"string", +contains:[e.BACKSLASH_ESCAPE,n],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/ +}]};return{name:"Puppet",aliases:["pp"],contains:[s,n,i,{beginKeywords:"class", +end:"\\{|;",illegal:/=/,contains:[a,s]},{beginKeywords:"define",end:/\{/, +contains:[{className:"section",begin:e.IDENT_RE,endsParent:!0}]},{ +begin:e.IDENT_RE+"\\s+\\{",returnBegin:!0,end:/\S/,contains:[{ +className:"keyword",begin:e.IDENT_RE,relevance:.2},{begin:/\{/,end:/\}/, +keywords:{ +keyword:"and case default else elsif false if in import enherits node or true undef unless main settings $string ", +literal:"alias audit before loglevel noop require subscribe tag owner ensure group mode name|0 changes context force incl lens load_path onlyif provider returns root show_diff type_check en_address ip_address realname command environment hour monute month monthday special target weekday creates cwd ogoutput refresh refreshonly tries try_sleep umask backup checksum content ctime force ignore links mtime purge recurse recurselimit replace selinux_ignore_defaults selrange selrole seltype seluser source souirce_permissions sourceselect validate_cmd validate_replacement allowdupe attribute_membership auth_membership forcelocal gid ia_load_module members system host_aliases ip allowed_trunk_vlans description device_url duplex encapsulation etherchannel native_vlan speed principals allow_root auth_class auth_type authenticate_user k_of_n mechanisms rule session_owner shared options device fstype enable hasrestart directory present absent link atboot blockdevice device dump pass remounts poller_tag use message withpath adminfile allow_virtual allowcdrom category configfiles flavor install_options instance package_settings platform responsefile status uninstall_options vendor unless_system_user unless_uid binary control flags hasstatus manifest pattern restart running start stop allowdupe auths expiry gid groups home iterations key_membership keys managehome membership password password_max_age password_min_age profile_membership profiles project purge_ssh_keys role_membership roles salt shell uid baseurl cost descr enabled enablegroups exclude failovermethod gpgcheck gpgkey http_caching include includepkgs keepalive metadata_expire metalink mirrorlist priority protect proxy proxy_password proxy_username repo_gpgcheck s3_enabled skip_if_unavailable sslcacert sslclientcert sslclientkey sslverify mounted", +built_in:"architecture augeasversion blockdevices boardmanufacturer boardproductname boardserialnumber cfkey dhcp_servers domain ec2_ ec2_userdata facterversion filesystems ldom fqdn gid hardwareisa hardwaremodel hostname id|0 interfaces ipaddress ipaddress_ ipaddress6 ipaddress6_ iphostnumber is_virtual kernel kernelmajversion kernelrelease kernelversion kernelrelease kernelversion lsbdistcodename lsbdistdescription lsbdistid lsbdistrelease lsbmajdistrelease lsbminordistrelease lsbrelease macaddress macaddress_ macosx_buildversion macosx_productname macosx_productversion macosx_productverson_major macosx_productversion_minor manufacturer memoryfree memorysize netmask metmask_ network_ operatingsystem operatingsystemmajrelease operatingsystemrelease osfamily partitions path physicalprocessorcount processor processorcount productname ps puppetversion rubysitedir rubyversion selinux selinux_config_mode selinux_config_policy selinux_current_mode selinux_current_mode selinux_enforced selinux_policyversion serialnumber sp_ sshdsakey sshecdsakey sshrsakey swapencrypted swapfree swapsize timezone type uniqueid uptime uptime_days uptime_hours uptime_seconds uuid virtual vlans xendomains zfs_version zonenae zones zpool_version" +},relevance:0,contains:[i,s,{begin:"[a-zA-Z_]+\\s*=>",returnBegin:!0,end:"=>", +contains:[{className:"attr",begin:e.IDENT_RE}]},{className:"number", +begin:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b", +relevance:0},n]}],relevance:0}]}}})();hljs.registerLanguage("puppet",e)})();/*! `dust` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Dust",aliases:["dst"], +case_insensitive:!0,subLanguage:"xml",contains:[{className:"template-tag", +begin:/\{[#\/]/,end:/\}/,illegal:/;/,contains:[{className:"name", +begin:/[a-zA-Z\.-]+/,starts:{endsWithParent:!0,relevance:0, +contains:[e.QUOTE_STRING_MODE]}}]},{className:"template-variable",begin:/\{/, +end:/\}/,illegal:/;/,keywords:"if eq ne lt lte gt gte select default math sep"}] +})})();hljs.registerLanguage("dust",e)})();/*! `lasso` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const a="<\\?(lasso(script)?|=)",n="\\]|\\?>",r={ +$pattern:"[a-zA-Z_][\\w.]*|&[lg]t;", +literal:"true false none minimal full all void and or not bw nbw ew new cn ncn lt lte gt gte eq neq rx nrx ft", +built_in:"array date decimal duration integer map pair string tag xml null boolean bytes keyword list locale queue set stack staticarray local var variable global data self inherited currentcapture givenblock", +keyword:"cache database_names database_schemanames database_tablenames define_tag define_type email_batch encode_set html_comment handle handle_error header if inline iterate ljax_target link link_currentaction link_currentgroup link_currentrecord link_detail link_firstgroup link_firstrecord link_lastgroup link_lastrecord link_nextgroup link_nextrecord link_prevgroup link_prevrecord log loop namespace_using output_none portal private protect records referer referrer repeating resultset rows search_args search_arguments select sort_args sort_arguments thread_atomic value_list while abort case else fail_if fail_ifnot fail if_empty if_false if_null if_true loop_abort loop_continue loop_count params params_up return return_value run_children soap_definetag soap_lastrequest soap_lastresponse tag_name ascending average by define descending do equals frozen group handle_failure import in into join let match max min on order parent protected provide public require returnhome skip split_thread sum take thread to trait type where with yield yieldhome" +},t=e.COMMENT("\x3c!--","--\x3e",{relevance:0}),s={className:"meta", +begin:"\\[noprocess\\]",starts:{end:"\\[/noprocess\\]",returnEnd:!0,contains:[t] +}},i={className:"meta",begin:"\\[/noprocess|"+a +},l=[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.inherit(e.C_NUMBER_MODE,{ +begin:e.C_NUMBER_RE+"|(-?infinity|NaN)\\b"}),e.inherit(e.APOS_STRING_MODE,{ +illegal:null}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),{ +className:"string",begin:"`",end:"`"},{variants:[{begin:"[#$][a-zA-Z_][\\w.]*" +},{begin:"#",end:"\\d+",illegal:"\\W"}]},{className:"type",begin:"::\\s*", +end:"[a-zA-Z_][\\w.]*",illegal:"\\W"},{className:"params",variants:[{ +begin:"-(?!infinity)[a-zA-Z_][\\w.]*",relevance:0},{begin:"(\\.\\.\\.)"}]},{ +begin:/(->|\.)\s*/,relevance:0,contains:[{className:"symbol", +begin:"'[a-zA-Z_][\\w.]*'"}]},{className:"class",beginKeywords:"define", +returnEnd:!0,end:"\\(|=>",contains:[e.inherit(e.TITLE_MODE,{ +begin:"[a-zA-Z_][\\w.]*(=(?!>))?|[-+*/%](?!>)"})]}];return{name:"Lasso", +aliases:["ls","lassoscript"],case_insensitive:!0,keywords:r,contains:[{ +className:"meta",begin:n,relevance:0,starts:{end:"\\[|"+a,returnEnd:!0, +relevance:0,contains:[t]}},s,i,{className:"meta",begin:"\\[no_square_brackets", +starts:{end:"\\[/no_square_brackets\\]",keywords:r,contains:[{className:"meta", +begin:n,relevance:0,starts:{end:"\\[noprocess\\]|"+a,returnEnd:!0,contains:[t]} +},s,i].concat(l)}},{className:"meta",begin:"\\[",relevance:0},{className:"meta", +begin:"^#!",end:"lasso9$",relevance:10}].concat(l)}}})() +;hljs.registerLanguage("lasso",e)})();/*! `http` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n="HTTP/(2|1\\.[01])",a={ +className:"attribute", +begin:e.regex.concat("^",/[A-Za-z][A-Za-z0-9-]*/,"(?=\\:\\s)"),starts:{ +contains:[{className:"punctuation",begin:/: /,relevance:0,starts:{end:"$", +relevance:0}}]}},s=[a,{begin:"\\n\\n",starts:{subLanguage:[],endsWithParent:!0} +}];return{name:"HTTP",aliases:["https"],illegal:/\S/,contains:[{ +begin:"^(?="+n+" \\d{3})",end:/$/,contains:[{className:"meta",begin:n},{ +className:"number",begin:"\\b\\d{3}\\b"}],starts:{end:/\b\B/,illegal:/\S/, +contains:s}},{begin:"(?=^[A-Z]+ (.*?) "+n+"$)",end:/$/,contains:[{ +className:"string",begin:" ",end:" ",excludeBegin:!0,excludeEnd:!0},{ +className:"meta",begin:n},{className:"keyword",begin:"[A-Z]+"}],starts:{ +end:/\b\B/,illegal:/\S/,contains:s}},e.inherit(a,{relevance:0})]}}})() +;hljs.registerLanguage("http",e)})();/*! `scilab` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n=[e.C_NUMBER_MODE,{ +className:"string",begin:"'|\"",end:"'|\"",contains:[e.BACKSLASH_ESCAPE,{ +begin:"''"}]}];return{name:"Scilab",aliases:["sci"],keywords:{$pattern:/%?\w+/, +keyword:"abort break case clear catch continue do elseif else endfunction end for function global if pause return resume select try then while", +literal:"%f %F %t %T %pi %eps %inf %nan %e %i %z %s", +built_in:"abs and acos asin atan ceil cd chdir clearglobal cosh cos cumprod deff disp error exec execstr exists exp eye gettext floor fprintf fread fsolve imag isdef isempty isinfisnan isvector lasterror length load linspace list listfiles log10 log2 log max min msprintf mclose mopen ones or pathconvert poly printf prod pwd rand real round sinh sin size gsort sprintf sqrt strcat strcmps tring sum system tanh tan type typename warning zeros matrix" +},illegal:'("|#|/\\*|\\s+/\\w+)',contains:[{className:"function", +beginKeywords:"function",end:"$",contains:[e.UNDERSCORE_TITLE_MODE,{ +className:"params",begin:"\\(",end:"\\)"}]},{ +begin:"[a-zA-Z_][a-zA-Z_0-9]*[\\.']+",relevance:0},{begin:"\\[", +end:"\\][\\.']*",relevance:0,contains:n},e.COMMENT("//","$")].concat(n)}}})() +;hljs.registerLanguage("scilab",e)})();/*! `lisp` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const n="[a-zA-Z_\\-+\\*\\/<=>&#][a-zA-Z0-9_\\-+*\\/<=>&#!]*",a="\\|[^]*?\\|",i="(-|\\+)?\\d+(\\.\\d+|\\/\\d+)?((d|e|f|l|s|D|E|F|L|S)(\\+|-)?\\d+)?",s={ +className:"literal",begin:"\\b(t{1}|nil)\\b"},l={className:"number",variants:[{ +begin:i,relevance:0},{begin:"#(b|B)[0-1]+(/[0-1]+)?"},{ +begin:"#(o|O)[0-7]+(/[0-7]+)?"},{begin:"#(x|X)[0-9a-fA-F]+(/[0-9a-fA-F]+)?"},{ +begin:"#(c|C)\\("+i+" +"+i,end:"\\)"}]},b=e.inherit(e.QUOTE_STRING_MODE,{ +illegal:null}),g=e.COMMENT(";","$",{relevance:0}),r={begin:"\\*",end:"\\*"},t={ +className:"symbol",begin:"[:&]"+n},c={begin:n,relevance:0},d={begin:a},o={ +contains:[l,b,r,t,{begin:"\\(",end:"\\)",contains:["self",s,b,l,c]},c], +variants:[{begin:"['`]\\(",end:"\\)"},{begin:"\\(quote ",end:"\\)",keywords:{ +name:"quote"}},{begin:"'"+a}]},v={variants:[{begin:"'"+n},{ +begin:"#'"+n+"(::"+n+")*"}]},m={begin:"\\(\\s*",end:"\\)"},u={endsWithParent:!0, +relevance:0};return m.contains=[{className:"name",variants:[{begin:n,relevance:0 +},{begin:a}]},u],u.contains=[o,v,m,s,l,b,g,r,t,d,c],{name:"Lisp",illegal:/\S/, +contains:[l,e.SHEBANG(),s,b,g,o,v,m,c]}}})();hljs.registerLanguage("lisp",e) +})();/*! `excel` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var E=(()=>{"use strict";return E=>({name:"Excel formulae", +aliases:["xlsx","xls"],case_insensitive:!0,keywords:{$pattern:/[a-zA-Z][\w\.]*/, +built_in:["ABS","ACCRINT","ACCRINTM","ACOS","ACOSH","ACOT","ACOTH","AGGREGATE","ADDRESS","AMORDEGRC","AMORLINC","AND","ARABIC","AREAS","ASC","ASIN","ASINH","ATAN","ATAN2","ATANH","AVEDEV","AVERAGE","AVERAGEA","AVERAGEIF","AVERAGEIFS","BAHTTEXT","BASE","BESSELI","BESSELJ","BESSELK","BESSELY","BETADIST","BETA.DIST","BETAINV","BETA.INV","BIN2DEC","BIN2HEX","BIN2OCT","BINOMDIST","BINOM.DIST","BINOM.DIST.RANGE","BINOM.INV","BITAND","BITLSHIFT","BITOR","BITRSHIFT","BITXOR","CALL","CEILING","CEILING.MATH","CEILING.PRECISE","CELL","CHAR","CHIDIST","CHIINV","CHITEST","CHISQ.DIST","CHISQ.DIST.RT","CHISQ.INV","CHISQ.INV.RT","CHISQ.TEST","CHOOSE","CLEAN","CODE","COLUMN","COLUMNS","COMBIN","COMBINA","COMPLEX","CONCAT","CONCATENATE","CONFIDENCE","CONFIDENCE.NORM","CONFIDENCE.T","CONVERT","CORREL","COS","COSH","COT","COTH","COUNT","COUNTA","COUNTBLANK","COUNTIF","COUNTIFS","COUPDAYBS","COUPDAYS","COUPDAYSNC","COUPNCD","COUPNUM","COUPPCD","COVAR","COVARIANCE.P","COVARIANCE.S","CRITBINOM","CSC","CSCH","CUBEKPIMEMBER","CUBEMEMBER","CUBEMEMBERPROPERTY","CUBERANKEDMEMBER","CUBESET","CUBESETCOUNT","CUBEVALUE","CUMIPMT","CUMPRINC","DATE","DATEDIF","DATEVALUE","DAVERAGE","DAY","DAYS","DAYS360","DB","DBCS","DCOUNT","DCOUNTA","DDB","DEC2BIN","DEC2HEX","DEC2OCT","DECIMAL","DEGREES","DELTA","DEVSQ","DGET","DISC","DMAX","DMIN","DOLLAR","DOLLARDE","DOLLARFR","DPRODUCT","DSTDEV","DSTDEVP","DSUM","DURATION","DVAR","DVARP","EDATE","EFFECT","ENCODEURL","EOMONTH","ERF","ERF.PRECISE","ERFC","ERFC.PRECISE","ERROR.TYPE","EUROCONVERT","EVEN","EXACT","EXP","EXPON.DIST","EXPONDIST","FACT","FACTDOUBLE","FALSE|0","F.DIST","FDIST","F.DIST.RT","FILTERXML","FIND","FINDB","F.INV","F.INV.RT","FINV","FISHER","FISHERINV","FIXED","FLOOR","FLOOR.MATH","FLOOR.PRECISE","FORECAST","FORECAST.ETS","FORECAST.ETS.CONFINT","FORECAST.ETS.SEASONALITY","FORECAST.ETS.STAT","FORECAST.LINEAR","FORMULATEXT","FREQUENCY","F.TEST","FTEST","FV","FVSCHEDULE","GAMMA","GAMMA.DIST","GAMMADIST","GAMMA.INV","GAMMAINV","GAMMALN","GAMMALN.PRECISE","GAUSS","GCD","GEOMEAN","GESTEP","GETPIVOTDATA","GROWTH","HARMEAN","HEX2BIN","HEX2DEC","HEX2OCT","HLOOKUP","HOUR","HYPERLINK","HYPGEOM.DIST","HYPGEOMDIST","IF","IFERROR","IFNA","IFS","IMABS","IMAGINARY","IMARGUMENT","IMCONJUGATE","IMCOS","IMCOSH","IMCOT","IMCSC","IMCSCH","IMDIV","IMEXP","IMLN","IMLOG10","IMLOG2","IMPOWER","IMPRODUCT","IMREAL","IMSEC","IMSECH","IMSIN","IMSINH","IMSQRT","IMSUB","IMSUM","IMTAN","INDEX","INDIRECT","INFO","INT","INTERCEPT","INTRATE","IPMT","IRR","ISBLANK","ISERR","ISERROR","ISEVEN","ISFORMULA","ISLOGICAL","ISNA","ISNONTEXT","ISNUMBER","ISODD","ISREF","ISTEXT","ISO.CEILING","ISOWEEKNUM","ISPMT","JIS","KURT","LARGE","LCM","LEFT","LEFTB","LEN","LENB","LINEST","LN","LOG","LOG10","LOGEST","LOGINV","LOGNORM.DIST","LOGNORMDIST","LOGNORM.INV","LOOKUP","LOWER","MATCH","MAX","MAXA","MAXIFS","MDETERM","MDURATION","MEDIAN","MID","MIDBs","MIN","MINIFS","MINA","MINUTE","MINVERSE","MIRR","MMULT","MOD","MODE","MODE.MULT","MODE.SNGL","MONTH","MROUND","MULTINOMIAL","MUNIT","N","NA","NEGBINOM.DIST","NEGBINOMDIST","NETWORKDAYS","NETWORKDAYS.INTL","NOMINAL","NORM.DIST","NORMDIST","NORMINV","NORM.INV","NORM.S.DIST","NORMSDIST","NORM.S.INV","NORMSINV","NOT","NOW","NPER","NPV","NUMBERVALUE","OCT2BIN","OCT2DEC","OCT2HEX","ODD","ODDFPRICE","ODDFYIELD","ODDLPRICE","ODDLYIELD","OFFSET","OR","PDURATION","PEARSON","PERCENTILE.EXC","PERCENTILE.INC","PERCENTILE","PERCENTRANK.EXC","PERCENTRANK.INC","PERCENTRANK","PERMUT","PERMUTATIONA","PHI","PHONETIC","PI","PMT","POISSON.DIST","POISSON","POWER","PPMT","PRICE","PRICEDISC","PRICEMAT","PROB","PRODUCT","PROPER","PV","QUARTILE","QUARTILE.EXC","QUARTILE.INC","QUOTIENT","RADIANS","RAND","RANDBETWEEN","RANK.AVG","RANK.EQ","RANK","RATE","RECEIVED","REGISTER.ID","REPLACE","REPLACEB","REPT","RIGHT","RIGHTB","ROMAN","ROUND","ROUNDDOWN","ROUNDUP","ROW","ROWS","RRI","RSQ","RTD","SEARCH","SEARCHB","SEC","SECH","SECOND","SERIESSUM","SHEET","SHEETS","SIGN","SIN","SINH","SKEW","SKEW.P","SLN","SLOPE","SMALL","SQL.REQUEST","SQRT","SQRTPI","STANDARDIZE","STDEV","STDEV.P","STDEV.S","STDEVA","STDEVP","STDEVPA","STEYX","SUBSTITUTE","SUBTOTAL","SUM","SUMIF","SUMIFS","SUMPRODUCT","SUMSQ","SUMX2MY2","SUMX2PY2","SUMXMY2","SWITCH","SYD","T","TAN","TANH","TBILLEQ","TBILLPRICE","TBILLYIELD","T.DIST","T.DIST.2T","T.DIST.RT","TDIST","TEXT","TEXTJOIN","TIME","TIMEVALUE","T.INV","T.INV.2T","TINV","TODAY","TRANSPOSE","TREND","TRIM","TRIMMEAN","TRUE|0","TRUNC","T.TEST","TTEST","TYPE","UNICHAR","UNICODE","UPPER","VALUE","VAR","VAR.P","VAR.S","VARA","VARP","VARPA","VDB","VLOOKUP","WEBSERVICE","WEEKDAY","WEEKNUM","WEIBULL","WEIBULL.DIST","WORKDAY","WORKDAY.INTL","XIRR","XNPV","XOR","YEAR","YEARFRAC","YIELD","YIELDDISC","YIELDMAT","Z.TEST","ZTEST"] +},contains:[{begin:/^=/,end:/[^=]/,returnEnd:!0,illegal:/=/,relevance:10},{ +className:"symbol",begin:/\b[A-Z]{1,2}\d+\b/,end:/[^\d]/,excludeEnd:!0, +relevance:0},{className:"symbol",begin:/[A-Z]{0,2}\d*:[A-Z]{0,2}\d*/,relevance:0 +},E.BACKSLASH_ESCAPE,E.QUOTE_STRING_MODE,{className:"number", +begin:E.NUMBER_RE+"(%)?",relevance:0},E.COMMENT(/\bN\(/,/\)/,{excludeBegin:!0, +excludeEnd:!0,illegal:/\n/})]})})();hljs.registerLanguage("excel",E)})();/*! `php-template` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var n=(()=>{"use strict";return n=>({name:"PHP template", +subLanguage:"xml",contains:[{begin:/<\?(php|=)?/,end:/\?>/,subLanguage:"php", +contains:[{begin:"/\\*",end:"\\*/",skip:!0},{begin:'b"',end:'"',skip:!0},{ +begin:"b'",end:"'",skip:!0},n.inherit(n.APOS_STRING_MODE,{illegal:null, +className:null,contains:null,skip:!0}),n.inherit(n.QUOTE_STRING_MODE,{ +illegal:null,className:null,contains:null,skip:!0})]}]})})() +;hljs.registerLanguage("php-template",n)})();/*! `pgsql` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var E=(()=>{"use strict";return E=>{ +const T=E.COMMENT("--","$"),N="\\$([a-zA-Z_]?|[a-zA-Z_][a-zA-Z_0-9]*)\\$",A="BIGINT INT8 BIGSERIAL SERIAL8 BIT VARYING VARBIT BOOLEAN BOOL BOX BYTEA CHARACTER CHAR VARCHAR CIDR CIRCLE DATE DOUBLE PRECISION FLOAT8 FLOAT INET INTEGER INT INT4 INTERVAL JSON JSONB LINE LSEG|10 MACADDR MACADDR8 MONEY NUMERIC DEC DECIMAL PATH POINT POLYGON REAL FLOAT4 SMALLINT INT2 SMALLSERIAL|10 SERIAL2|10 SERIAL|10 SERIAL4|10 TEXT TIME ZONE TIMETZ|10 TIMESTAMP TIMESTAMPTZ|10 TSQUERY|10 TSVECTOR|10 TXID_SNAPSHOT|10 UUID XML NATIONAL NCHAR INT4RANGE|10 INT8RANGE|10 NUMRANGE|10 TSRANGE|10 TSTZRANGE|10 DATERANGE|10 ANYELEMENT ANYARRAY ANYNONARRAY ANYENUM ANYRANGE CSTRING INTERNAL RECORD PG_DDL_COMMAND VOID UNKNOWN OPAQUE REFCURSOR NAME OID REGPROC|10 REGPROCEDURE|10 REGOPER|10 REGOPERATOR|10 REGCLASS|10 REGTYPE|10 REGROLE|10 REGNAMESPACE|10 REGCONFIG|10 REGDICTIONARY|10 ",R=A.trim().split(" ").map((E=>E.split("|")[0])).join("|"),I="ARRAY_AGG AVG BIT_AND BIT_OR BOOL_AND BOOL_OR COUNT EVERY JSON_AGG JSONB_AGG JSON_OBJECT_AGG JSONB_OBJECT_AGG MAX MIN MODE STRING_AGG SUM XMLAGG CORR COVAR_POP COVAR_SAMP REGR_AVGX REGR_AVGY REGR_COUNT REGR_INTERCEPT REGR_R2 REGR_SLOPE REGR_SXX REGR_SXY REGR_SYY STDDEV STDDEV_POP STDDEV_SAMP VARIANCE VAR_POP VAR_SAMP PERCENTILE_CONT PERCENTILE_DISC ROW_NUMBER RANK DENSE_RANK PERCENT_RANK CUME_DIST NTILE LAG LEAD FIRST_VALUE LAST_VALUE NTH_VALUE NUM_NONNULLS NUM_NULLS ABS CBRT CEIL CEILING DEGREES DIV EXP FLOOR LN LOG MOD PI POWER RADIANS ROUND SCALE SIGN SQRT TRUNC WIDTH_BUCKET RANDOM SETSEED ACOS ACOSD ASIN ASIND ATAN ATAND ATAN2 ATAN2D COS COSD COT COTD SIN SIND TAN TAND BIT_LENGTH CHAR_LENGTH CHARACTER_LENGTH LOWER OCTET_LENGTH OVERLAY POSITION SUBSTRING TREAT TRIM UPPER ASCII BTRIM CHR CONCAT CONCAT_WS CONVERT CONVERT_FROM CONVERT_TO DECODE ENCODE INITCAP LEFT LENGTH LPAD LTRIM MD5 PARSE_IDENT PG_CLIENT_ENCODING QUOTE_IDENT|10 QUOTE_LITERAL|10 QUOTE_NULLABLE|10 REGEXP_MATCH REGEXP_MATCHES REGEXP_REPLACE REGEXP_SPLIT_TO_ARRAY REGEXP_SPLIT_TO_TABLE REPEAT REPLACE REVERSE RIGHT RPAD RTRIM SPLIT_PART STRPOS SUBSTR TO_ASCII TO_HEX TRANSLATE OCTET_LENGTH GET_BIT GET_BYTE SET_BIT SET_BYTE TO_CHAR TO_DATE TO_NUMBER TO_TIMESTAMP AGE CLOCK_TIMESTAMP|10 DATE_PART DATE_TRUNC ISFINITE JUSTIFY_DAYS JUSTIFY_HOURS JUSTIFY_INTERVAL MAKE_DATE MAKE_INTERVAL|10 MAKE_TIME MAKE_TIMESTAMP|10 MAKE_TIMESTAMPTZ|10 NOW STATEMENT_TIMESTAMP|10 TIMEOFDAY TRANSACTION_TIMESTAMP|10 ENUM_FIRST ENUM_LAST ENUM_RANGE AREA CENTER DIAMETER HEIGHT ISCLOSED ISOPEN NPOINTS PCLOSE POPEN RADIUS WIDTH BOX BOUND_BOX CIRCLE LINE LSEG PATH POLYGON ABBREV BROADCAST HOST HOSTMASK MASKLEN NETMASK NETWORK SET_MASKLEN TEXT INET_SAME_FAMILY INET_MERGE MACADDR8_SET7BIT ARRAY_TO_TSVECTOR GET_CURRENT_TS_CONFIG NUMNODE PLAINTO_TSQUERY PHRASETO_TSQUERY WEBSEARCH_TO_TSQUERY QUERYTREE SETWEIGHT STRIP TO_TSQUERY TO_TSVECTOR JSON_TO_TSVECTOR JSONB_TO_TSVECTOR TS_DELETE TS_FILTER TS_HEADLINE TS_RANK TS_RANK_CD TS_REWRITE TSQUERY_PHRASE TSVECTOR_TO_ARRAY TSVECTOR_UPDATE_TRIGGER TSVECTOR_UPDATE_TRIGGER_COLUMN XMLCOMMENT XMLCONCAT XMLELEMENT XMLFOREST XMLPI XMLROOT XMLEXISTS XML_IS_WELL_FORMED XML_IS_WELL_FORMED_DOCUMENT XML_IS_WELL_FORMED_CONTENT XPATH XPATH_EXISTS XMLTABLE XMLNAMESPACES TABLE_TO_XML TABLE_TO_XMLSCHEMA TABLE_TO_XML_AND_XMLSCHEMA QUERY_TO_XML QUERY_TO_XMLSCHEMA QUERY_TO_XML_AND_XMLSCHEMA CURSOR_TO_XML CURSOR_TO_XMLSCHEMA SCHEMA_TO_XML SCHEMA_TO_XMLSCHEMA SCHEMA_TO_XML_AND_XMLSCHEMA DATABASE_TO_XML DATABASE_TO_XMLSCHEMA DATABASE_TO_XML_AND_XMLSCHEMA XMLATTRIBUTES TO_JSON TO_JSONB ARRAY_TO_JSON ROW_TO_JSON JSON_BUILD_ARRAY JSONB_BUILD_ARRAY JSON_BUILD_OBJECT JSONB_BUILD_OBJECT JSON_OBJECT JSONB_OBJECT JSON_ARRAY_LENGTH JSONB_ARRAY_LENGTH JSON_EACH JSONB_EACH JSON_EACH_TEXT JSONB_EACH_TEXT JSON_EXTRACT_PATH JSONB_EXTRACT_PATH JSON_OBJECT_KEYS JSONB_OBJECT_KEYS JSON_POPULATE_RECORD JSONB_POPULATE_RECORD JSON_POPULATE_RECORDSET JSONB_POPULATE_RECORDSET JSON_ARRAY_ELEMENTS JSONB_ARRAY_ELEMENTS JSON_ARRAY_ELEMENTS_TEXT JSONB_ARRAY_ELEMENTS_TEXT JSON_TYPEOF JSONB_TYPEOF JSON_TO_RECORD JSONB_TO_RECORD JSON_TO_RECORDSET JSONB_TO_RECORDSET JSON_STRIP_NULLS JSONB_STRIP_NULLS JSONB_SET JSONB_INSERT JSONB_PRETTY CURRVAL LASTVAL NEXTVAL SETVAL COALESCE NULLIF GREATEST LEAST ARRAY_APPEND ARRAY_CAT ARRAY_NDIMS ARRAY_DIMS ARRAY_FILL ARRAY_LENGTH ARRAY_LOWER ARRAY_POSITION ARRAY_POSITIONS ARRAY_PREPEND ARRAY_REMOVE ARRAY_REPLACE ARRAY_TO_STRING ARRAY_UPPER CARDINALITY STRING_TO_ARRAY UNNEST ISEMPTY LOWER_INC UPPER_INC LOWER_INF UPPER_INF RANGE_MERGE GENERATE_SERIES GENERATE_SUBSCRIPTS CURRENT_DATABASE CURRENT_QUERY CURRENT_SCHEMA|10 CURRENT_SCHEMAS|10 INET_CLIENT_ADDR INET_CLIENT_PORT INET_SERVER_ADDR INET_SERVER_PORT ROW_SECURITY_ACTIVE FORMAT_TYPE TO_REGCLASS TO_REGPROC TO_REGPROCEDURE TO_REGOPER TO_REGOPERATOR TO_REGTYPE TO_REGNAMESPACE TO_REGROLE COL_DESCRIPTION OBJ_DESCRIPTION SHOBJ_DESCRIPTION TXID_CURRENT TXID_CURRENT_IF_ASSIGNED TXID_CURRENT_SNAPSHOT TXID_SNAPSHOT_XIP TXID_SNAPSHOT_XMAX TXID_SNAPSHOT_XMIN TXID_VISIBLE_IN_SNAPSHOT TXID_STATUS CURRENT_SETTING SET_CONFIG BRIN_SUMMARIZE_NEW_VALUES BRIN_SUMMARIZE_RANGE BRIN_DESUMMARIZE_RANGE GIN_CLEAN_PENDING_LIST SUPPRESS_REDUNDANT_UPDATES_TRIGGER LO_FROM_BYTEA LO_PUT LO_GET LO_CREAT LO_CREATE LO_UNLINK LO_IMPORT LO_EXPORT LOREAD LOWRITE GROUPING CAST".split(" ").map((E=>E.split("|")[0])).join("|") +;return{name:"PostgreSQL",aliases:["postgres","postgresql"],supersetOf:"sql", +case_insensitive:!0,keywords:{ +keyword:"ABORT ALTER ANALYZE BEGIN CALL CHECKPOINT|10 CLOSE CLUSTER COMMENT COMMIT COPY CREATE DEALLOCATE DECLARE DELETE DISCARD DO DROP END EXECUTE EXPLAIN FETCH GRANT IMPORT INSERT LISTEN LOAD LOCK MOVE NOTIFY PREPARE REASSIGN|10 REFRESH REINDEX RELEASE RESET REVOKE ROLLBACK SAVEPOINT SECURITY SELECT SET SHOW START TRUNCATE UNLISTEN|10 UPDATE VACUUM|10 VALUES AGGREGATE COLLATION CONVERSION|10 DATABASE DEFAULT PRIVILEGES DOMAIN TRIGGER EXTENSION FOREIGN WRAPPER|10 TABLE FUNCTION GROUP LANGUAGE LARGE OBJECT MATERIALIZED VIEW OPERATOR CLASS FAMILY POLICY PUBLICATION|10 ROLE RULE SCHEMA SEQUENCE SERVER STATISTICS SUBSCRIPTION SYSTEM TABLESPACE CONFIGURATION DICTIONARY PARSER TEMPLATE TYPE USER MAPPING PREPARED ACCESS METHOD CAST AS TRANSFORM TRANSACTION OWNED TO INTO SESSION AUTHORIZATION INDEX PROCEDURE ASSERTION ALL ANALYSE AND ANY ARRAY ASC ASYMMETRIC|10 BOTH CASE CHECK COLLATE COLUMN CONCURRENTLY|10 CONSTRAINT CROSS DEFERRABLE RANGE DESC DISTINCT ELSE EXCEPT FOR FREEZE|10 FROM FULL HAVING ILIKE IN INITIALLY INNER INTERSECT IS ISNULL JOIN LATERAL LEADING LIKE LIMIT NATURAL NOT NOTNULL NULL OFFSET ON ONLY OR ORDER OUTER OVERLAPS PLACING PRIMARY REFERENCES RETURNING SIMILAR SOME SYMMETRIC TABLESAMPLE THEN TRAILING UNION UNIQUE USING VARIADIC|10 VERBOSE WHEN WHERE WINDOW WITH BY RETURNS INOUT OUT SETOF|10 IF STRICT CURRENT CONTINUE OWNER LOCATION OVER PARTITION WITHIN BETWEEN ESCAPE EXTERNAL INVOKER DEFINER WORK RENAME VERSION CONNECTION CONNECT TABLES TEMP TEMPORARY FUNCTIONS SEQUENCES TYPES SCHEMAS OPTION CASCADE RESTRICT ADD ADMIN EXISTS VALID VALIDATE ENABLE DISABLE REPLICA|10 ALWAYS PASSING COLUMNS PATH REF VALUE OVERRIDING IMMUTABLE STABLE VOLATILE BEFORE AFTER EACH ROW PROCEDURAL ROUTINE NO HANDLER VALIDATOR OPTIONS STORAGE OIDS|10 WITHOUT INHERIT DEPENDS CALLED INPUT LEAKPROOF|10 COST ROWS NOWAIT SEARCH UNTIL ENCRYPTED|10 PASSWORD CONFLICT|10 INSTEAD INHERITS CHARACTERISTICS WRITE CURSOR ALSO STATEMENT SHARE EXCLUSIVE INLINE ISOLATION REPEATABLE READ COMMITTED SERIALIZABLE UNCOMMITTED LOCAL GLOBAL SQL PROCEDURES RECURSIVE SNAPSHOT ROLLUP CUBE TRUSTED|10 INCLUDE FOLLOWING PRECEDING UNBOUNDED RANGE GROUPS UNENCRYPTED|10 SYSID FORMAT DELIMITER HEADER QUOTE ENCODING FILTER OFF FORCE_QUOTE FORCE_NOT_NULL FORCE_NULL COSTS BUFFERS TIMING SUMMARY DISABLE_PAGE_SKIPPING RESTART CYCLE GENERATED IDENTITY DEFERRED IMMEDIATE LEVEL LOGGED UNLOGGED OF NOTHING NONE EXCLUDE ATTRIBUTE USAGE ROUTINES TRUE FALSE NAN INFINITY ALIAS BEGIN CONSTANT DECLARE END EXCEPTION RETURN PERFORM|10 RAISE GET DIAGNOSTICS STACKED|10 FOREACH LOOP ELSIF EXIT WHILE REVERSE SLICE DEBUG LOG INFO NOTICE WARNING ASSERT OPEN SUPERUSER NOSUPERUSER CREATEDB NOCREATEDB CREATEROLE NOCREATEROLE INHERIT NOINHERIT LOGIN NOLOGIN REPLICATION NOREPLICATION BYPASSRLS NOBYPASSRLS ", +built_in:"CURRENT_TIME CURRENT_TIMESTAMP CURRENT_USER CURRENT_CATALOG|10 CURRENT_DATE LOCALTIME LOCALTIMESTAMP CURRENT_ROLE|10 CURRENT_SCHEMA|10 SESSION_USER PUBLIC FOUND NEW OLD TG_NAME|10 TG_WHEN|10 TG_LEVEL|10 TG_OP|10 TG_RELID|10 TG_RELNAME|10 TG_TABLE_NAME|10 TG_TABLE_SCHEMA|10 TG_NARGS|10 TG_ARGV|10 TG_EVENT|10 TG_TAG|10 ROW_COUNT RESULT_OID|10 PG_CONTEXT|10 RETURNED_SQLSTATE COLUMN_NAME CONSTRAINT_NAME PG_DATATYPE_NAME|10 MESSAGE_TEXT TABLE_NAME SCHEMA_NAME PG_EXCEPTION_DETAIL|10 PG_EXCEPTION_HINT|10 PG_EXCEPTION_CONTEXT|10 SQLSTATE SQLERRM|10 SUCCESSFUL_COMPLETION WARNING DYNAMIC_RESULT_SETS_RETURNED IMPLICIT_ZERO_BIT_PADDING NULL_VALUE_ELIMINATED_IN_SET_FUNCTION PRIVILEGE_NOT_GRANTED PRIVILEGE_NOT_REVOKED STRING_DATA_RIGHT_TRUNCATION DEPRECATED_FEATURE NO_DATA NO_ADDITIONAL_DYNAMIC_RESULT_SETS_RETURNED SQL_STATEMENT_NOT_YET_COMPLETE CONNECTION_EXCEPTION CONNECTION_DOES_NOT_EXIST CONNECTION_FAILURE SQLCLIENT_UNABLE_TO_ESTABLISH_SQLCONNECTION SQLSERVER_REJECTED_ESTABLISHMENT_OF_SQLCONNECTION TRANSACTION_RESOLUTION_UNKNOWN PROTOCOL_VIOLATION TRIGGERED_ACTION_EXCEPTION FEATURE_NOT_SUPPORTED INVALID_TRANSACTION_INITIATION LOCATOR_EXCEPTION INVALID_LOCATOR_SPECIFICATION INVALID_GRANTOR INVALID_GRANT_OPERATION INVALID_ROLE_SPECIFICATION DIAGNOSTICS_EXCEPTION STACKED_DIAGNOSTICS_ACCESSED_WITHOUT_ACTIVE_HANDLER CASE_NOT_FOUND CARDINALITY_VIOLATION DATA_EXCEPTION ARRAY_SUBSCRIPT_ERROR CHARACTER_NOT_IN_REPERTOIRE DATETIME_FIELD_OVERFLOW DIVISION_BY_ZERO ERROR_IN_ASSIGNMENT ESCAPE_CHARACTER_CONFLICT INDICATOR_OVERFLOW INTERVAL_FIELD_OVERFLOW INVALID_ARGUMENT_FOR_LOGARITHM INVALID_ARGUMENT_FOR_NTILE_FUNCTION INVALID_ARGUMENT_FOR_NTH_VALUE_FUNCTION INVALID_ARGUMENT_FOR_POWER_FUNCTION INVALID_ARGUMENT_FOR_WIDTH_BUCKET_FUNCTION INVALID_CHARACTER_VALUE_FOR_CAST INVALID_DATETIME_FORMAT INVALID_ESCAPE_CHARACTER INVALID_ESCAPE_OCTET INVALID_ESCAPE_SEQUENCE NONSTANDARD_USE_OF_ESCAPE_CHARACTER INVALID_INDICATOR_PARAMETER_VALUE INVALID_PARAMETER_VALUE INVALID_REGULAR_EXPRESSION INVALID_ROW_COUNT_IN_LIMIT_CLAUSE INVALID_ROW_COUNT_IN_RESULT_OFFSET_CLAUSE INVALID_TABLESAMPLE_ARGUMENT INVALID_TABLESAMPLE_REPEAT INVALID_TIME_ZONE_DISPLACEMENT_VALUE INVALID_USE_OF_ESCAPE_CHARACTER MOST_SPECIFIC_TYPE_MISMATCH NULL_VALUE_NOT_ALLOWED NULL_VALUE_NO_INDICATOR_PARAMETER NUMERIC_VALUE_OUT_OF_RANGE SEQUENCE_GENERATOR_LIMIT_EXCEEDED STRING_DATA_LENGTH_MISMATCH STRING_DATA_RIGHT_TRUNCATION SUBSTRING_ERROR TRIM_ERROR UNTERMINATED_C_STRING ZERO_LENGTH_CHARACTER_STRING FLOATING_POINT_EXCEPTION INVALID_TEXT_REPRESENTATION INVALID_BINARY_REPRESENTATION BAD_COPY_FILE_FORMAT UNTRANSLATABLE_CHARACTER NOT_AN_XML_DOCUMENT INVALID_XML_DOCUMENT INVALID_XML_CONTENT INVALID_XML_COMMENT INVALID_XML_PROCESSING_INSTRUCTION INTEGRITY_CONSTRAINT_VIOLATION RESTRICT_VIOLATION NOT_NULL_VIOLATION FOREIGN_KEY_VIOLATION UNIQUE_VIOLATION CHECK_VIOLATION EXCLUSION_VIOLATION INVALID_CURSOR_STATE INVALID_TRANSACTION_STATE ACTIVE_SQL_TRANSACTION BRANCH_TRANSACTION_ALREADY_ACTIVE HELD_CURSOR_REQUIRES_SAME_ISOLATION_LEVEL INAPPROPRIATE_ACCESS_MODE_FOR_BRANCH_TRANSACTION INAPPROPRIATE_ISOLATION_LEVEL_FOR_BRANCH_TRANSACTION NO_ACTIVE_SQL_TRANSACTION_FOR_BRANCH_TRANSACTION READ_ONLY_SQL_TRANSACTION SCHEMA_AND_DATA_STATEMENT_MIXING_NOT_SUPPORTED NO_ACTIVE_SQL_TRANSACTION IN_FAILED_SQL_TRANSACTION IDLE_IN_TRANSACTION_SESSION_TIMEOUT INVALID_SQL_STATEMENT_NAME TRIGGERED_DATA_CHANGE_VIOLATION INVALID_AUTHORIZATION_SPECIFICATION INVALID_PASSWORD DEPENDENT_PRIVILEGE_DESCRIPTORS_STILL_EXIST DEPENDENT_OBJECTS_STILL_EXIST INVALID_TRANSACTION_TERMINATION SQL_ROUTINE_EXCEPTION FUNCTION_EXECUTED_NO_RETURN_STATEMENT MODIFYING_SQL_DATA_NOT_PERMITTED PROHIBITED_SQL_STATEMENT_ATTEMPTED READING_SQL_DATA_NOT_PERMITTED INVALID_CURSOR_NAME EXTERNAL_ROUTINE_EXCEPTION CONTAINING_SQL_NOT_PERMITTED MODIFYING_SQL_DATA_NOT_PERMITTED PROHIBITED_SQL_STATEMENT_ATTEMPTED READING_SQL_DATA_NOT_PERMITTED EXTERNAL_ROUTINE_INVOCATION_EXCEPTION INVALID_SQLSTATE_RETURNED NULL_VALUE_NOT_ALLOWED TRIGGER_PROTOCOL_VIOLATED SRF_PROTOCOL_VIOLATED EVENT_TRIGGER_PROTOCOL_VIOLATED SAVEPOINT_EXCEPTION INVALID_SAVEPOINT_SPECIFICATION INVALID_CATALOG_NAME INVALID_SCHEMA_NAME TRANSACTION_ROLLBACK TRANSACTION_INTEGRITY_CONSTRAINT_VIOLATION SERIALIZATION_FAILURE STATEMENT_COMPLETION_UNKNOWN DEADLOCK_DETECTED SYNTAX_ERROR_OR_ACCESS_RULE_VIOLATION SYNTAX_ERROR INSUFFICIENT_PRIVILEGE CANNOT_COERCE GROUPING_ERROR WINDOWING_ERROR INVALID_RECURSION INVALID_FOREIGN_KEY INVALID_NAME NAME_TOO_LONG RESERVED_NAME DATATYPE_MISMATCH INDETERMINATE_DATATYPE COLLATION_MISMATCH INDETERMINATE_COLLATION WRONG_OBJECT_TYPE GENERATED_ALWAYS UNDEFINED_COLUMN UNDEFINED_FUNCTION UNDEFINED_TABLE UNDEFINED_PARAMETER UNDEFINED_OBJECT DUPLICATE_COLUMN DUPLICATE_CURSOR DUPLICATE_DATABASE DUPLICATE_FUNCTION DUPLICATE_PREPARED_STATEMENT DUPLICATE_SCHEMA DUPLICATE_TABLE DUPLICATE_ALIAS DUPLICATE_OBJECT AMBIGUOUS_COLUMN AMBIGUOUS_FUNCTION AMBIGUOUS_PARAMETER AMBIGUOUS_ALIAS INVALID_COLUMN_REFERENCE INVALID_COLUMN_DEFINITION INVALID_CURSOR_DEFINITION INVALID_DATABASE_DEFINITION INVALID_FUNCTION_DEFINITION INVALID_PREPARED_STATEMENT_DEFINITION INVALID_SCHEMA_DEFINITION INVALID_TABLE_DEFINITION INVALID_OBJECT_DEFINITION WITH_CHECK_OPTION_VIOLATION INSUFFICIENT_RESOURCES DISK_FULL OUT_OF_MEMORY TOO_MANY_CONNECTIONS CONFIGURATION_LIMIT_EXCEEDED PROGRAM_LIMIT_EXCEEDED STATEMENT_TOO_COMPLEX TOO_MANY_COLUMNS TOO_MANY_ARGUMENTS OBJECT_NOT_IN_PREREQUISITE_STATE OBJECT_IN_USE CANT_CHANGE_RUNTIME_PARAM LOCK_NOT_AVAILABLE OPERATOR_INTERVENTION QUERY_CANCELED ADMIN_SHUTDOWN CRASH_SHUTDOWN CANNOT_CONNECT_NOW DATABASE_DROPPED SYSTEM_ERROR IO_ERROR UNDEFINED_FILE DUPLICATE_FILE SNAPSHOT_TOO_OLD CONFIG_FILE_ERROR LOCK_FILE_EXISTS FDW_ERROR FDW_COLUMN_NAME_NOT_FOUND FDW_DYNAMIC_PARAMETER_VALUE_NEEDED FDW_FUNCTION_SEQUENCE_ERROR FDW_INCONSISTENT_DESCRIPTOR_INFORMATION FDW_INVALID_ATTRIBUTE_VALUE FDW_INVALID_COLUMN_NAME FDW_INVALID_COLUMN_NUMBER FDW_INVALID_DATA_TYPE FDW_INVALID_DATA_TYPE_DESCRIPTORS FDW_INVALID_DESCRIPTOR_FIELD_IDENTIFIER FDW_INVALID_HANDLE FDW_INVALID_OPTION_INDEX FDW_INVALID_OPTION_NAME FDW_INVALID_STRING_LENGTH_OR_BUFFER_LENGTH FDW_INVALID_STRING_FORMAT FDW_INVALID_USE_OF_NULL_POINTER FDW_TOO_MANY_HANDLES FDW_OUT_OF_MEMORY FDW_NO_SCHEMAS FDW_OPTION_NAME_NOT_FOUND FDW_REPLY_HANDLE FDW_SCHEMA_NOT_FOUND FDW_TABLE_NOT_FOUND FDW_UNABLE_TO_CREATE_EXECUTION FDW_UNABLE_TO_CREATE_REPLY FDW_UNABLE_TO_ESTABLISH_CONNECTION PLPGSQL_ERROR RAISE_EXCEPTION NO_DATA_FOUND TOO_MANY_ROWS ASSERT_FAILURE INTERNAL_ERROR DATA_CORRUPTED INDEX_CORRUPTED " +},illegal:/:==|\W\s*\(\*|(^|\s)\$[a-z]|\{\{|[a-z]:\s*$|\.\.\.|TO:|DO:/, +contains:[{className:"keyword",variants:[{begin:/\bTEXT\s*SEARCH\b/},{ +begin:/\b(PRIMARY|FOREIGN|FOR(\s+NO)?)\s+KEY\b/},{ +begin:/\bPARALLEL\s+(UNSAFE|RESTRICTED|SAFE)\b/},{ +begin:/\bSTORAGE\s+(PLAIN|EXTERNAL|EXTENDED|MAIN)\b/},{ +begin:/\bMATCH\s+(FULL|PARTIAL|SIMPLE)\b/},{begin:/\bNULLS\s+(FIRST|LAST)\b/},{ +begin:/\bEVENT\s+TRIGGER\b/},{begin:/\b(MAPPING|OR)\s+REPLACE\b/},{ +begin:/\b(FROM|TO)\s+(PROGRAM|STDIN|STDOUT)\b/},{ +begin:/\b(SHARE|EXCLUSIVE)\s+MODE\b/},{ +begin:/\b(LEFT|RIGHT)\s+(OUTER\s+)?JOIN\b/},{ +begin:/\b(FETCH|MOVE)\s+(NEXT|PRIOR|FIRST|LAST|ABSOLUTE|RELATIVE|FORWARD|BACKWARD)\b/ +},{begin:/\bPRESERVE\s+ROWS\b/},{begin:/\bDISCARD\s+PLANS\b/},{ +begin:/\bREFERENCING\s+(OLD|NEW)\b/},{begin:/\bSKIP\s+LOCKED\b/},{ +begin:/\bGROUPING\s+SETS\b/},{ +begin:/\b(BINARY|INSENSITIVE|SCROLL|NO\s+SCROLL)\s+(CURSOR|FOR)\b/},{ +begin:/\b(WITH|WITHOUT)\s+HOLD\b/},{ +begin:/\bWITH\s+(CASCADED|LOCAL)\s+CHECK\s+OPTION\b/},{ +begin:/\bEXCLUDE\s+(TIES|NO\s+OTHERS)\b/},{ +begin:/\bFORMAT\s+(TEXT|XML|JSON|YAML)\b/},{ +begin:/\bSET\s+((SESSION|LOCAL)\s+)?NAMES\b/},{begin:/\bIS\s+(NOT\s+)?UNKNOWN\b/ +},{begin:/\bSECURITY\s+LABEL\b/},{begin:/\bSTANDALONE\s+(YES|NO|NO\s+VALUE)\b/ +},{begin:/\bWITH\s+(NO\s+)?DATA\b/},{begin:/\b(FOREIGN|SET)\s+DATA\b/},{ +begin:/\bSET\s+(CATALOG|CONSTRAINTS)\b/},{begin:/\b(WITH|FOR)\s+ORDINALITY\b/},{ +begin:/\bIS\s+(NOT\s+)?DOCUMENT\b/},{ +begin:/\bXML\s+OPTION\s+(DOCUMENT|CONTENT)\b/},{ +begin:/\b(STRIP|PRESERVE)\s+WHITESPACE\b/},{ +begin:/\bNO\s+(ACTION|MAXVALUE|MINVALUE)\b/},{ +begin:/\bPARTITION\s+BY\s+(RANGE|LIST|HASH)\b/},{begin:/\bAT\s+TIME\s+ZONE\b/},{ +begin:/\bGRANTED\s+BY\b/},{begin:/\bRETURN\s+(QUERY|NEXT)\b/},{ +begin:/\b(ATTACH|DETACH)\s+PARTITION\b/},{ +begin:/\bFORCE\s+ROW\s+LEVEL\s+SECURITY\b/},{ +begin:/\b(INCLUDING|EXCLUDING)\s+(COMMENTS|CONSTRAINTS|DEFAULTS|IDENTITY|INDEXES|STATISTICS|STORAGE|ALL)\b/ +},{begin:/\bAS\s+(ASSIGNMENT|IMPLICIT|PERMISSIVE|RESTRICTIVE|ENUM|RANGE)\b/}]},{ +begin:/\b(FORMAT|FAMILY|VERSION)\s*\(/},{begin:/\bINCLUDE\s*\(/, +keywords:"INCLUDE"},{begin:/\bRANGE(?!\s*(BETWEEN|UNBOUNDED|CURRENT|[-0-9]+))/ +},{ +begin:/\b(VERSION|OWNER|TEMPLATE|TABLESPACE|CONNECTION\s+LIMIT|PROCEDURE|RESTRICT|JOIN|PARSER|COPY|START|END|COLLATION|INPUT|ANALYZE|STORAGE|LIKE|DEFAULT|DELIMITER|ENCODING|COLUMN|CONSTRAINT|TABLE|SCHEMA)\s*=/ +},{begin:/\b(PG_\w+?|HAS_[A-Z_]+_PRIVILEGE)\b/,relevance:10},{ +begin:/\bEXTRACT\s*\(/,end:/\bFROM\b/,returnEnd:!0,keywords:{ +type:"CENTURY DAY DECADE DOW DOY EPOCH HOUR ISODOW ISOYEAR MICROSECONDS MILLENNIUM MILLISECONDS MINUTE MONTH QUARTER SECOND TIMEZONE TIMEZONE_HOUR TIMEZONE_MINUTE WEEK YEAR" +}},{begin:/\b(XMLELEMENT|XMLPI)\s*\(\s*NAME/,keywords:{keyword:"NAME"}},{ +begin:/\b(XMLPARSE|XMLSERIALIZE)\s*\(\s*(DOCUMENT|CONTENT)/,keywords:{ +keyword:"DOCUMENT CONTENT"}},{beginKeywords:"CACHE INCREMENT MAXVALUE MINVALUE", +end:E.C_NUMBER_RE,returnEnd:!0,keywords:"BY CACHE INCREMENT MAXVALUE MINVALUE" +},{className:"type",begin:/\b(WITH|WITHOUT)\s+TIME\s+ZONE\b/},{className:"type", +begin:/\bINTERVAL\s+(YEAR|MONTH|DAY|HOUR|MINUTE|SECOND)(\s+TO\s+(MONTH|HOUR|MINUTE|SECOND))?\b/ +},{ +begin:/\bRETURNS\s+(LANGUAGE_HANDLER|TRIGGER|EVENT_TRIGGER|FDW_HANDLER|INDEX_AM_HANDLER|TSM_HANDLER)\b/, +keywords:{keyword:"RETURNS", +type:"LANGUAGE_HANDLER TRIGGER EVENT_TRIGGER FDW_HANDLER INDEX_AM_HANDLER TSM_HANDLER" +}},{begin:"\\b("+I+")\\s*\\("},{begin:"\\.("+R+")\\b"},{ +begin:"\\b("+R+")\\s+PATH\\b",keywords:{keyword:"PATH", +type:A.replace("PATH ","")}},{className:"type",begin:"\\b("+R+")\\b"},{ +className:"string",begin:"'",end:"'",contains:[{begin:"''"}]},{ +className:"string",begin:"(e|E|u&|U&)'",end:"'",contains:[{begin:"\\\\."}], +relevance:10},E.END_SAME_AS_BEGIN({begin:N,end:N,contains:[{ +subLanguage:["pgsql","perl","python","tcl","r","lua","java","php","ruby","bash","scheme","xml","json"], +endsWithParent:!0}]}),{begin:'"',end:'"',contains:[{begin:'""'}] +},E.C_NUMBER_MODE,E.C_BLOCK_COMMENT_MODE,T,{className:"meta",variants:[{ +begin:"%(ROW)?TYPE",relevance:10},{begin:"\\$\\d+"},{begin:"^#\\w",end:"$"}]},{ +className:"symbol",begin:"<<\\s*[a-zA-Z_][a-zA-Z_0-9$]*\\s*>>",relevance:10}]}} +})();hljs.registerLanguage("pgsql",E)})();/*! `latex` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n=[{begin:/\^{6}[0-9a-f]{6}/},{ +begin:/\^{5}[0-9a-f]{5}/},{begin:/\^{4}[0-9a-f]{4}/},{begin:/\^{3}[0-9a-f]{3}/ +},{begin:/\^{2}[0-9a-f]{2}/},{begin:/\^{2}[\u0000-\u007f]/}],a=[{ +className:"keyword",begin:/\\/,relevance:0,contains:[{endsParent:!0, +begin:e.regex.either(...["(?:NeedsTeXFormat|RequirePackage|GetIdInfo)","Provides(?:Expl)?(?:Package|Class|File)","(?:DeclareOption|ProcessOptions)","(?:documentclass|usepackage|input|include)","makeat(?:letter|other)","ExplSyntax(?:On|Off)","(?:new|renew|provide)?command","(?:re)newenvironment","(?:New|Renew|Provide|Declare)(?:Expandable)?DocumentCommand","(?:New|Renew|Provide|Declare)DocumentEnvironment","(?:(?:e|g|x)?def|let)","(?:begin|end)","(?:part|chapter|(?:sub){0,2}section|(?:sub)?paragraph)","caption","(?:label|(?:eq|page|name)?ref|(?:paren|foot|super)?cite)","(?:alpha|beta|[Gg]amma|[Dd]elta|(?:var)?epsilon|zeta|eta|[Tt]heta|vartheta)","(?:iota|(?:var)?kappa|[Ll]ambda|mu|nu|[Xx]i|[Pp]i|varpi|(?:var)rho)","(?:[Ss]igma|varsigma|tau|[Uu]psilon|[Pp]hi|varphi|chi|[Pp]si|[Oo]mega)","(?:frac|sum|prod|lim|infty|times|sqrt|leq|geq|left|right|middle|[bB]igg?)","(?:[lr]angle|q?quad|[lcvdi]?dots|d?dot|hat|tilde|bar)"].map((e=>e+"(?![a-zA-Z@:_])"))) +},{endsParent:!0, +begin:RegExp(["(?:__)?[a-zA-Z]{2,}_[a-zA-Z](?:_?[a-zA-Z])+:[a-zA-Z]*","[lgc]__?[a-zA-Z](?:_?[a-zA-Z])*_[a-zA-Z]{2,}","[qs]__?[a-zA-Z](?:_?[a-zA-Z])+","use(?:_i)?:[a-zA-Z]*","(?:else|fi|or):","(?:if|cs|exp):w","(?:hbox|vbox):n","::[a-zA-Z]_unbraced","::[a-zA-Z:]"].map((e=>e+"(?![a-zA-Z:_])")).join("|")) +},{endsParent:!0,variants:n},{endsParent:!0,relevance:0,variants:[{ +begin:/[a-zA-Z@]+/},{begin:/[^a-zA-Z@]?/}]}]},{className:"params",relevance:0, +begin:/#+\d?/},{variants:n},{className:"built_in",relevance:0,begin:/[$&^_]/},{ +className:"meta",begin:/% ?!(T[eE]X|tex|BIB|bib)/,end:"$",relevance:10 +},e.COMMENT("%","$",{relevance:0})],i={begin:/\{/,end:/\}/,relevance:0, +contains:["self",...a]},t=e.inherit(i,{relevance:0,endsParent:!0, +contains:[i,...a]}),r={begin:/\[/,end:/\]/,endsParent:!0,relevance:0, +contains:[i,...a]},s={begin:/\s+/,relevance:0},c=[t],l=[r],o=(e,n)=>({ +contains:[s],starts:{relevance:0,contains:e,starts:n}}),d=(e,n)=>({ +begin:"\\\\"+e+"(?![a-zA-Z@:_])",keywords:{$pattern:/\\[a-zA-Z]+/,keyword:"\\"+e +},relevance:0,contains:[s],starts:n}),g=(n,a)=>e.inherit({ +begin:"\\\\begin(?=[ \t]*(\\r?\\n[ \t]*)?\\{"+n+"\\})",keywords:{ +$pattern:/\\[a-zA-Z]+/,keyword:"\\begin"},relevance:0 +},o(c,a)),m=(n="string")=>e.END_SAME_AS_BEGIN({className:n,begin:/(.|\r?\n)/, +end:/(.|\r?\n)/,excludeBegin:!0,excludeEnd:!0,endsParent:!0}),b=e=>({ +className:"string",end:"(?=\\\\end\\{"+e+"\\})"}),p=(e="string")=>({relevance:0, +begin:/\{/,starts:{endsParent:!0,contains:[{className:e,end:/(?=\})/, +endsParent:!0,contains:[{begin:/\{/,end:/\}/,relevance:0,contains:["self"]}]}]} +});return{name:"LaTeX",aliases:["tex"], +contains:[...["verb","lstinline"].map((e=>d(e,{contains:[m()]}))),d("mint",o(c,{ +contains:[m()]})),d("mintinline",o(c,{contains:[p(),m()]})),d("url",{ +contains:[p("link"),p("link")]}),d("hyperref",{contains:[p("link")] +}),d("href",o(l,{contains:[p("link")] +})),...[].concat(...["","\\*"].map((e=>[g("verbatim"+e,b("verbatim"+e)),g("filecontents"+e,o(c,b("filecontents"+e))),...["","B","L"].map((n=>g(n+"Verbatim"+e,o(l,b(n+"Verbatim"+e)))))]))),g("minted",o(l,o(c,b("minted")))),...a] +}}})();hljs.registerLanguage("latex",e)})();/*! `vala` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Vala",keywords:{ +keyword:"char uchar unichar int uint long ulong short ushort int8 int16 int32 int64 uint8 uint16 uint32 uint64 float double bool struct enum string void weak unowned owned async signal static abstract interface override virtual delegate if while do for foreach else switch case break default return try catch public private protected internal using new this get set const stdout stdin stderr var", +built_in:"DBus GLib CCode Gee Object Gtk Posix",literal:"false true null"}, +contains:[{className:"class",beginKeywords:"class interface namespace",end:/\{/, +excludeEnd:!0,illegal:"[^,:\\n\\s\\.]",contains:[e.UNDERSCORE_TITLE_MODE] +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"string",begin:'"""', +end:'"""',relevance:5},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,{ +className:"meta",begin:"^#",end:"$"}]})})();hljs.registerLanguage("vala",e)})();/*! `delphi` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const r=["exports","register","file","shl","array","record","property","for","mod","while","set","ally","label","uses","raise","not","stored","class","safecall","var","interface","or","private","static","exit","index","inherited","to","else","stdcall","override","shr","asm","far","resourcestring","finalization","packed","virtual","out","and","protected","library","do","xorwrite","goto","near","function","end","div","overload","object","unit","begin","string","on","inline","repeat","until","destructor","write","message","program","with","read","initialization","except","default","nil","if","case","cdecl","in","downto","threadvar","of","try","pascal","const","external","constructor","type","public","then","implementation","finally","published","procedure","absolute","reintroduce","operator","as","is","abstract","alias","assembler","bitpacked","break","continue","cppdecl","cvar","enumerator","experimental","platform","deprecated","unimplemented","dynamic","export","far16","forward","generic","helper","implements","interrupt","iochecks","local","name","nodefault","noreturn","nostackframe","oldfpccall","otherwise","saveregisters","softfloat","specialize","strict","unaligned","varargs"],a=[e.C_LINE_COMMENT_MODE,e.COMMENT(/\{/,/\}/,{ +relevance:0}),e.COMMENT(/\(\*/,/\*\)/,{relevance:10})],t={className:"meta", +variants:[{begin:/\{\$/,end:/\}/},{begin:/\(\*\$/,end:/\*\)/}]},n={ +className:"string",begin:/'/,end:/'/,contains:[{begin:/''/}]},i={ +className:"string",begin:/(#\d+)+/},s={begin:e.IDENT_RE+"\\s*=\\s*class\\s*\\(", +returnBegin:!0,contains:[e.TITLE_MODE]},c={className:"function", +beginKeywords:"function constructor destructor procedure",end:/[:;]/, +keywords:"function constructor|10 destructor|10 procedure|10", +contains:[e.TITLE_MODE,{className:"params",begin:/\(/,end:/\)/,keywords:r, +contains:[n,i,t].concat(a)},t].concat(a)};return{name:"Delphi", +aliases:["dpr","dfm","pas","pascal"],case_insensitive:!0,keywords:r, +illegal:/"|\$[G-Zg-z]|\/\*|<\/|\|/,contains:[n,i,e.NUMBER_MODE,{ +className:"number",relevance:0,variants:[{begin:"\\$[0-9A-Fa-f]+"},{ +begin:"&[0-7]+"},{begin:"%[01]+"}]},s,c,t].concat(a)}}})() +;hljs.registerLanguage("delphi",e)})();/*! `jboss-cli` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"JBoss CLI", +aliases:["wildfly-cli"],keywords:{$pattern:"[a-z-]+", +keyword:"alias batch cd clear command connect connection-factory connection-info data-source deploy deployment-info deployment-overlay echo echo-dmr help history if jdbc-driver-info jms-queue|20 jms-topic|20 ls patch pwd quit read-attribute read-operation reload rollout-plan run-batch set shutdown try unalias undeploy unset version xa-data-source", +literal:"true false"},contains:[e.HASH_COMMENT_MODE,e.QUOTE_STRING_MODE,{ +className:"params",begin:/--[\w\-=\/]+/},{className:"function", +begin:/:[\w\-.]+/,relevance:0},{className:"string",begin:/\B([\/.])[\w\-.\/=]+/ +},{className:"params",begin:/\(/,end:/\)/,contains:[{begin:/[\w-]+ *=/, +returnBegin:!0,relevance:0,contains:[{className:"attr",begin:/[\w-]+/}]}], +relevance:0}]})})();hljs.registerLanguage("jboss-cli",e)})();/*! `inform7` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Inform 7",aliases:["i7"], +case_insensitive:!0,keywords:{ +keyword:"thing room person man woman animal container supporter backdrop door scenery open closed locked inside gender is are say understand kind of rule" +},contains:[{className:"string",begin:'"',end:'"',relevance:0,contains:[{ +className:"subst",begin:"\\[",end:"\\]"}]},{className:"section", +begin:/^(Volume|Book|Part|Chapter|Section|Table)\b/,end:"$"},{ +begin:/^(Check|Carry out|Report|Instead of|To|Rule|When|Before|After)\b/, +end:":",contains:[{begin:"\\(This",end:"\\)"}]},{className:"comment", +begin:"\\[",end:"\\]",contains:["self"]}]})})() +;hljs.registerLanguage("inform7",e)})();/*! `ebnf` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const a=e.COMMENT(/\(\*/,/\*\)/) +;return{name:"Extended Backus-Naur Form",illegal:/\S/,contains:[a,{ +className:"attribute",begin:/^[ ]*[a-zA-Z]+([\s_-]+[a-zA-Z]+)*/},{begin:/=/, +end:/[.;]/,contains:[a,{className:"meta",begin:/\?.*\?/},{className:"string", +variants:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{begin:"`",end:"`"}]}]}]}}})() +;hljs.registerLanguage("ebnf",e)})();/*! `dockerfile` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Dockerfile",aliases:["docker"], +case_insensitive:!0, +keywords:["from","maintainer","expose","env","arg","user","onbuild","stopsignal"], +contains:[e.HASH_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.NUMBER_MODE,{ +beginKeywords:"run cmd entrypoint volume add copy workdir label healthcheck shell", +starts:{end:/[^\\]$/,subLanguage:"bash"}}],illegal:"</"})})() +;hljs.registerLanguage("dockerfile",e)})();/*! `vbnet` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const n=e.regex,t=/\d{1,2}\/\d{1,2}\/\d{4}/,a=/\d{4}-\d{1,2}-\d{1,2}/,i=/(\d|1[012])(:\d+){0,2} *(AM|PM)/,s=/\d{1,2}(:\d{1,2}){1,2}/,r={ +className:"literal",variants:[{begin:n.concat(/# */,n.either(a,t),/ *#/)},{ +begin:n.concat(/# */,s,/ *#/)},{begin:n.concat(/# */,i,/ *#/)},{ +begin:n.concat(/# */,n.either(a,t),/ +/,n.either(i,s),/ *#/)}] +},l=e.COMMENT(/'''/,/$/,{contains:[{className:"doctag",begin:/<\/?/,end:/>/}] +}),o=e.COMMENT(null,/$/,{variants:[{begin:/'/},{begin:/([\t ]|^)REM(?=\s)/}]}) +;return{name:"Visual Basic .NET",aliases:["vb"],case_insensitive:!0, +classNameAliases:{label:"symbol"},keywords:{ +keyword:"addhandler alias aggregate ansi as async assembly auto binary by byref byval call case catch class compare const continue custom declare default delegate dim distinct do each equals else elseif end enum erase error event exit explicit finally for friend from function get global goto group handles if implements imports in inherits interface into iterator join key let lib loop me mid module mustinherit mustoverride mybase myclass namespace narrowing new next notinheritable notoverridable of off on operator option optional order overloads overridable overrides paramarray partial preserve private property protected public raiseevent readonly redim removehandler resume return select set shadows shared skip static step stop structure strict sub synclock take text then throw to try unicode until using when where while widening with withevents writeonly yield", +built_in:"addressof and andalso await directcast gettype getxmlnamespace is isfalse isnot istrue like mod nameof new not or orelse trycast typeof xor cbool cbyte cchar cdate cdbl cdec cint clng cobj csbyte cshort csng cstr cuint culng cushort", +type:"boolean byte char date decimal double integer long object sbyte short single string uinteger ulong ushort", +literal:"true false nothing"}, +illegal:"//|\\{|\\}|endif|gosub|variant|wend|^\\$ ",contains:[{ +className:"string",begin:/"(""|[^/n])"C\b/},{className:"string",begin:/"/, +end:/"/,illegal:/\n/,contains:[{begin:/""/}]},r,{className:"number",relevance:0, +variants:[{begin:/\b\d[\d_]*((\.[\d_]+(E[+-]?[\d_]+)?)|(E[+-]?[\d_]+))[RFD@!#]?/ +},{begin:/\b\d[\d_]*((U?[SIL])|[%&])?/},{begin:/&H[\dA-F_]+((U?[SIL])|[%&])?/},{ +begin:/&O[0-7_]+((U?[SIL])|[%&])?/},{begin:/&B[01_]+((U?[SIL])|[%&])?/}]},{ +className:"label",begin:/^\w+:/},l,o,{className:"meta", +begin:/[\t ]*#(const|disable|else|elseif|enable|end|externalsource|if|region)\b/, +end:/$/,keywords:{ +keyword:"const disable else elseif enable end externalsource if region then"}, +contains:[o]}]}}})();hljs.registerLanguage("vbnet",e)})();/*! `elm` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n={ +variants:[e.COMMENT("--","$"),e.COMMENT(/\{-/,/-\}/,{contains:["self"]})]},i={ +className:"type",begin:"\\b[A-Z][\\w']*",relevance:0},s={begin:"\\(",end:"\\)", +illegal:'"',contains:[{className:"type", +begin:"\\b[A-Z][\\w]*(\\((\\.\\.|,|\\w+)\\))?"},n]};return{name:"Elm", +keywords:["let","in","if","then","else","case","of","where","module","import","exposing","type","alias","as","infix","infixl","infixr","port","effect","command","subscription"], +contains:[{beginKeywords:"port effect module",end:"exposing", +keywords:"port effect module where command subscription exposing", +contains:[s,n],illegal:"\\W\\.|;"},{begin:"import",end:"$", +keywords:"import as exposing",contains:[s,n],illegal:"\\W\\.|;"},{begin:"type", +end:"$",keywords:"type alias",contains:[i,s,{begin:/\{/,end:/\}/, +contains:s.contains},n]},{beginKeywords:"infix infixl infixr",end:"$", +contains:[e.C_NUMBER_MODE,n]},{begin:"port",end:"$",keywords:"port",contains:[n] +},{className:"string",begin:"'\\\\?.",end:"'",illegal:"." +},e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,i,e.inherit(e.TITLE_MODE,{ +begin:"^[_a-z][\\w']*"}),n,{begin:"->|<-"}],illegal:/;/}}})() +;hljs.registerLanguage("elm",e)})();/*! `nestedtext` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var t=(()=>{"use strict";return t=>({name:"Nested Text",aliases:["nt"], +contains:[t.inherit(t.HASH_COMMENT_MODE,{begin:/^\s*(?=#)/,excludeBegin:!0}),{ +variants:[{match:[/^\s*/,/-/,/[ ]/,/.*$/]},{match:[/^\s*/,/-$/]}],className:{ +2:"bullet",4:"string"}},{match:[/^\s*/,/>/,/[ ]/,/.*$/],className:{ +2:"punctuation",4:"string"}},{match:[/^\s*(?=\S)/,/[^:]+/,/:\s*/,/$/], +className:{2:"attribute",3:"punctuation"}},{ +match:[/^\s*(?=\S)/,/[^:]*[^: ]/,/[ ]*:/,/[ ]/,/.*$/],className:{2:"attribute", +3:"punctuation",5:"string"}}]})})();hljs.registerLanguage("nestedtext",t)})();/*! `dos` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const r=e.COMMENT(/^\s*@?rem\b/,/$/,{ +relevance:10});return{name:"Batch file (DOS)",aliases:["bat","cmd"], +case_insensitive:!0,illegal:/\/\*/,keywords:{ +keyword:["if","else","goto","for","in","do","call","exit","not","exist","errorlevel","defined","equ","neq","lss","leq","gtr","geq"], +built_in:["prn","nul","lpt3","lpt2","lpt1","con","com4","com3","com2","com1","aux","shift","cd","dir","echo","setlocal","endlocal","set","pause","copy","append","assoc","at","attrib","break","cacls","cd","chcp","chdir","chkdsk","chkntfs","cls","cmd","color","comp","compact","convert","date","dir","diskcomp","diskcopy","doskey","erase","fs","find","findstr","format","ftype","graftabl","help","keyb","label","md","mkdir","mode","more","move","path","pause","print","popd","pushd","promt","rd","recover","rem","rename","replace","restore","rmdir","shift","sort","start","subst","time","title","tree","type","ver","verify","vol","ping","net","ipconfig","taskkill","xcopy","ren","del"] +},contains:[{className:"variable",begin:/%%[^ ]|%[^ ]+?%|![^ ]+?!/},{ +className:"function",begin:"^\\s*[A-Za-z._?][A-Za-z0-9_$#@~.?]*(:|\\s+label)", +end:"goto:eof",contains:[e.inherit(e.TITLE_MODE,{ +begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),r]},{ +className:"number",begin:"\\b\\d+",relevance:0},r]}}})() +;hljs.registerLanguage("dos",e)})();/*! `irpf90` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const n=e.regex,t=/(_[a-z_\d]+)?/,a=/([de][+-]?\d+)?/,i={className:"number", +variants:[{begin:n.concat(/\b\d+/,/\.(\d*)/,a,t)},{begin:n.concat(/\b\d+/,a,t) +},{begin:n.concat(/\.\d+/,a,t)}],relevance:0};return{name:"IRPF90", +case_insensitive:!0,keywords:{literal:".False. .True.", +keyword:"kind do while private call intrinsic where elsewhere type endtype endmodule endselect endinterface end enddo endif if forall endforall only contains default return stop then public subroutine|10 function program .and. .or. .not. .le. .eq. .ge. .gt. .lt. goto save else use module select case access blank direct exist file fmt form formatted iostat name named nextrec number opened rec recl sequential status unformatted unit continue format pause cycle exit c_null_char c_alert c_backspace c_form_feed flush wait decimal round iomsg synchronous nopass non_overridable pass protected volatile abstract extends import non_intrinsic value deferred generic final enumerator class associate bind enum c_int c_short c_long c_long_long c_signed_char c_size_t c_int8_t c_int16_t c_int32_t c_int64_t c_int_least8_t c_int_least16_t c_int_least32_t c_int_least64_t c_int_fast8_t c_int_fast16_t c_int_fast32_t c_int_fast64_t c_intmax_t C_intptr_t c_float c_double c_long_double c_float_complex c_double_complex c_long_double_complex c_bool c_char c_null_ptr c_null_funptr c_new_line c_carriage_return c_horizontal_tab c_vertical_tab iso_c_binding c_loc c_funloc c_associated c_f_pointer c_ptr c_funptr iso_fortran_env character_storage_size error_unit file_storage_size input_unit iostat_end iostat_eor numeric_storage_size output_unit c_f_procpointer ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode newunit contiguous recursive pad position action delim readwrite eor advance nml interface procedure namelist include sequence elemental pure integer real character complex logical dimension allocatable|10 parameter external implicit|10 none double precision assign intent optional pointer target in out common equivalence data begin_provider &begin_provider end_provider begin_shell end_shell begin_template end_template subst assert touch soft_touch provide no_dep free irp_if irp_else irp_endif irp_write irp_read", +built_in:"alog alog10 amax0 amax1 amin0 amin1 amod cabs ccos cexp clog csin csqrt dabs dacos dasin datan datan2 dcos dcosh ddim dexp dint dlog dlog10 dmax1 dmin1 dmod dnint dsign dsin dsinh dsqrt dtan dtanh float iabs idim idint idnint ifix isign max0 max1 min0 min1 sngl algama cdabs cdcos cdexp cdlog cdsin cdsqrt cqabs cqcos cqexp cqlog cqsin cqsqrt dcmplx dconjg derf derfc dfloat dgamma dimag dlgama iqint qabs qacos qasin qatan qatan2 qcmplx qconjg qcos qcosh qdim qerf qerfc qexp qgamma qimag qlgama qlog qlog10 qmax1 qmin1 qmod qnint qsign qsin qsinh qsqrt qtan qtanh abs acos aimag aint anint asin atan atan2 char cmplx conjg cos cosh exp ichar index int log log10 max min nint sign sin sinh sqrt tan tanh print write dim lge lgt lle llt mod nullify allocate deallocate adjustl adjustr all allocated any associated bit_size btest ceiling count cshift date_and_time digits dot_product eoshift epsilon exponent floor fraction huge iand ibclr ibits ibset ieor ior ishft ishftc lbound len_trim matmul maxexponent maxloc maxval merge minexponent minloc minval modulo mvbits nearest pack present product radix random_number random_seed range repeat reshape rrspacing scale scan selected_int_kind selected_real_kind set_exponent shape size spacing spread sum system_clock tiny transpose trim ubound unpack verify achar iachar transfer dble entry dprod cpu_time command_argument_count get_command get_command_argument get_environment_variable is_iostat_end ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode is_iostat_eor move_alloc new_line selected_char_kind same_type_as extends_type_of acosh asinh atanh bessel_j0 bessel_j1 bessel_jn bessel_y0 bessel_y1 bessel_yn erf erfc erfc_scaled gamma log_gamma hypot norm2 atomic_define atomic_ref execute_command_line leadz trailz storage_size merge_bits bge bgt ble blt dshiftl dshiftr findloc iall iany iparity image_index lcobound ucobound maskl maskr num_images parity popcnt poppar shifta shiftl shiftr this_image IRP_ALIGN irp_here" +},illegal:/\/\*/,contains:[e.inherit(e.APOS_STRING_MODE,{className:"string", +relevance:0}),e.inherit(e.QUOTE_STRING_MODE,{className:"string",relevance:0}),{ +className:"function",beginKeywords:"subroutine function program", +illegal:"[${=\\n]",contains:[e.UNDERSCORE_TITLE_MODE,{className:"params", +begin:"\\(",end:"\\)"}]},e.COMMENT("!","$",{relevance:0 +}),e.COMMENT("begin_doc","end_doc",{relevance:10}),i]}}})() +;hljs.registerLanguage("irpf90",e)})();/*! `qml` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const n="[a-zA-Z_][a-zA-Z0-9\\._]*",r={className:"attribute",begin:"\\bid\\s*:", +starts:{className:"string",end:n,returnEnd:!1}},a={begin:n+"\\s*:", +returnBegin:!0,contains:[{className:"attribute",begin:n,end:"\\s*:", +excludeEnd:!0,relevance:0}],relevance:0},t={begin:e.regex.concat(n,/\s*\{/), +end:/\{/,returnBegin:!0,relevance:0,contains:[e.inherit(e.TITLE_MODE,{begin:n})] +};return{name:"QML",aliases:["qt"],case_insensitive:!1,keywords:{ +keyword:"in of on if for while finally var new function do return void else break catch instanceof with throw case default try this switch continue typeof delete let yield const export super debugger as async await import", +literal:"true false null undefined NaN Infinity", +built_in:"eval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent encodeURI encodeURIComponent escape unescape Object Function Boolean Error EvalError InternalError RangeError ReferenceError StopIteration SyntaxError TypeError URIError Number Math Date String RegExp Array Float32Array Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array Uint8Array Uint8ClampedArray ArrayBuffer DataView JSON Intl arguments require module console window document Symbol Set Map WeakSet WeakMap Proxy Reflect Behavior bool color coordinate date double enumeration font geocircle georectangle geoshape int list matrix4x4 parent point quaternion real rect size string url variant vector2d vector3d vector4d Promise" +},contains:[{className:"meta",begin:/^\s*['"]use (strict|asm)['"]/ +},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"string",begin:"`",end:"`", +contains:[e.BACKSLASH_ESCAPE,{className:"subst",begin:"\\$\\{",end:"\\}"}] +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"number",variants:[{ +begin:"\\b(0[bB][01]+)"},{begin:"\\b(0[oO][0-7]+)"},{begin:e.C_NUMBER_RE}], +relevance:0},{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*", +keywords:"return throw case", +contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.REGEXP_MODE,{begin:/</, +end:/>\s*[);\]]/,relevance:0,subLanguage:"xml"}],relevance:0},{ +className:"keyword",begin:"\\bsignal\\b",starts:{className:"string", +end:"(\\(|:|=|;|,|//|/\\*|$)",returnEnd:!0}},{className:"keyword", +begin:"\\bproperty\\b",starts:{className:"string",end:"(:|=|;|,|//|/\\*|$)", +returnEnd:!0}},{className:"function",beginKeywords:"function",end:/\{/, +excludeEnd:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/[A-Za-z$_][0-9A-Za-z$_]*/ +}),{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0, +contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]}],illegal:/\[|%/},{ +begin:"\\."+e.IDENT_RE,relevance:0},r,a,t],illegal:/#/}}})() +;hljs.registerLanguage("qml",e)})();/*! `mojolicious` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Mojolicious",subLanguage:"xml", +contains:[{className:"meta",begin:"^__(END|DATA)__$"},{ +begin:"^\\s*%{1,2}={0,2}",end:"$",subLanguage:"perl"},{begin:"<%{1,2}={0,2}", +end:"={0,1}%>",subLanguage:"perl",excludeBegin:!0,excludeEnd:!0}]})})() +;hljs.registerLanguage("mojolicious",e)})();/*! `autohotkey` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const a={begin:"`[\\s\\S]"};return{ +name:"AutoHotkey",case_insensitive:!0,aliases:["ahk"],keywords:{ +keyword:"Break Continue Critical Exit ExitApp Gosub Goto New OnExit Pause return SetBatchLines SetTimer Suspend Thread Throw Until ahk_id ahk_class ahk_pid ahk_exe ahk_group", +literal:"true false NOT AND OR", +built_in:"ComSpec Clipboard ClipboardAll ErrorLevel"}, +contains:[a,e.inherit(e.QUOTE_STRING_MODE,{contains:[a]}),e.COMMENT(";","$",{ +relevance:0}),e.C_BLOCK_COMMENT_MODE,{className:"number",begin:e.NUMBER_RE, +relevance:0},{className:"variable",begin:"%[a-zA-Z0-9#_$@]+%"},{ +className:"built_in",begin:"^\\s*\\w+\\s*(,|%)"},{className:"title",variants:[{ +begin:'^[^\\n";]+::(?!=)'},{begin:'^[^\\n";]+:(?!=)',relevance:0}]},{ +className:"meta",begin:"^\\s*#\\w+",end:"$",relevance:0},{className:"built_in", +begin:"A_[a-zA-Z0-9]+"},{begin:",\\s*,"}]}}})() +;hljs.registerLanguage("autohotkey",e)})();/*! `properties` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const t="[ \\t\\f]*",n="([^\\\\:= \\t\\f\\n]|\\\\.)+";return{name:".properties", +disableAutodetect:!0,case_insensitive:!0,illegal:/\S/, +contains:[e.COMMENT("^\\s*[!#]","$"),{returnBegin:!0,variants:[{ +begin:n+"[ \\t\\f]*[:=][ \\t\\f]*"},{begin:n+"[ \\t\\f]+"}],contains:[{ +className:"attr",begin:n,endsParent:!0}],starts:{ +end:"([ \\t\\f]*[:=][ \\t\\f]*|[ \\t\\f]+)",relevance:0,starts:{ +className:"string",end:/$/,relevance:0,contains:[{begin:"\\\\\\\\"},{ +begin:"\\\\\\n"}]}}},{className:"attr",begin:n+t+"$"}]}}})() +;hljs.registerLanguage("properties",e)})();/*! `c` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n=e.regex,t=e.COMMENT("//","$",{ +contains:[{begin:/\\\n/}] +}),s="[a-zA-Z_]\\w*::",a="(decltype\\(auto\\)|"+n.optional(s)+"[a-zA-Z_]\\w*"+n.optional("<[^<>]+>")+")",r={ +className:"type",variants:[{begin:"\\b[a-z\\d_]*_t\\b"},{ +match:/\batomic_[a-z]{3,6}\b/}]},i={className:"string",variants:[{ +begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{ +begin:"(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)", +end:"'",illegal:"."},e.END_SAME_AS_BEGIN({ +begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},l={ +className:"number",variants:[{begin:"\\b(0b[01']+)"},{ +begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)" +},{ +begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)" +}],relevance:0},o={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{ +keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include" +},contains:[{begin:/\\\n/,relevance:0},e.inherit(i,{className:"string"}),{ +className:"string",begin:/<.*?>/},t,e.C_BLOCK_COMMENT_MODE]},c={ +className:"title",begin:n.optional(s)+e.IDENT_RE,relevance:0 +},d=n.optional(s)+e.IDENT_RE+"\\s*\\(",u={ +keyword:["asm","auto","break","case","continue","default","do","else","enum","extern","for","fortran","goto","if","inline","register","restrict","return","sizeof","struct","switch","typedef","union","volatile","while","_Alignas","_Alignof","_Atomic","_Generic","_Noreturn","_Static_assert","_Thread_local","alignas","alignof","noreturn","static_assert","thread_local","_Pragma"], +type:["float","double","signed","unsigned","int","short","long","char","void","_Bool","_Complex","_Imaginary","_Decimal32","_Decimal64","_Decimal128","const","static","complex","bool","imaginary"], +literal:"true false NULL", +built_in:"std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr" +},g=[o,r,t,e.C_BLOCK_COMMENT_MODE,l,i],m={variants:[{begin:/=/,end:/;/},{ +begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}], +keywords:u,contains:g.concat([{begin:/\(/,end:/\)/,keywords:u, +contains:g.concat(["self"]),relevance:0}]),relevance:0},p={ +begin:"("+a+"[\\*&\\s]+)+"+d,returnBegin:!0,end:/[{;=]/,excludeEnd:!0, +keywords:u,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:"decltype\\(auto\\)", +keywords:u,relevance:0},{begin:d,returnBegin:!0,contains:[e.inherit(c,{ +className:"title.function"})],relevance:0},{relevance:0,match:/,/},{ +className:"params",begin:/\(/,end:/\)/,keywords:u,relevance:0, +contains:[t,e.C_BLOCK_COMMENT_MODE,i,l,r,{begin:/\(/,end:/\)/,keywords:u, +relevance:0,contains:["self",t,e.C_BLOCK_COMMENT_MODE,i,l,r]}] +},r,t,e.C_BLOCK_COMMENT_MODE,o]};return{name:"C",aliases:["h"],keywords:u, +disableAutodetect:!0,illegal:"</",contains:[].concat(m,p,g,[o,{ +begin:e.IDENT_RE+"::",keywords:u},{className:"class", +beginKeywords:"enum class struct union",end:/[{;:<>=]/,contains:[{ +beginKeywords:"final class struct"},e.TITLE_MODE]}]),exports:{preprocessor:o, +strings:i,keywords:u}}}})();hljs.registerLanguage("c",e)})();/*! `powershell` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n={$pattern:/-?[A-z\.\-]+\b/, +keyword:"if else foreach return do while until elseif begin for trap data dynamicparam end break throw param continue finally in switch exit filter try process catch hidden static parameter", +built_in:"ac asnp cat cd CFS chdir clc clear clhy cli clp cls clv cnsn compare copy cp cpi cpp curl cvpa dbp del diff dir dnsn ebp echo|0 epal epcsv epsn erase etsn exsn fc fhx fl ft fw gal gbp gc gcb gci gcm gcs gdr gerr ghy gi gin gjb gl gm gmo gp gps gpv group gsn gsnp gsv gtz gu gv gwmi h history icm iex ihy ii ipal ipcsv ipmo ipsn irm ise iwmi iwr kill lp ls man md measure mi mount move mp mv nal ndr ni nmo npssc nsn nv ogv oh popd ps pushd pwd r rbp rcjb rcsn rd rdr ren ri rjb rm rmdir rmo rni rnp rp rsn rsnp rujb rv rvpa rwmi sajb sal saps sasv sbp sc scb select set shcm si sl sleep sls sort sp spjb spps spsv start stz sujb sv swmi tee trcm type wget where wjb write" +},s={begin:"`[\\s\\S]",relevance:0},i={className:"variable",variants:[{ +begin:/\$\B/},{className:"keyword",begin:/\$this/},{begin:/\$[\w\d][\w\d_:]*/}] +},a={className:"string",variants:[{begin:/"/,end:/"/},{begin:/@"/,end:/^"@/}], +contains:[s,i,{className:"variable",begin:/\$[A-z]/,end:/[^A-z]/}]},t={ +className:"string",variants:[{begin:/'/,end:/'/},{begin:/@'/,end:/^'@/}] +},r=e.inherit(e.COMMENT(null,null),{variants:[{begin:/#/,end:/$/},{begin:/<#/, +end:/#>/}],contains:[{className:"doctag",variants:[{ +begin:/\.(synopsis|description|example|inputs|outputs|notes|link|component|role|functionality)/ +},{ +begin:/\.(parameter|forwardhelptargetname|forwardhelpcategory|remotehelprunspace|externalhelp)\s+\S+/ +}]}]}),c={className:"class",beginKeywords:"class enum",end:/\s*[{]/, +excludeEnd:!0,relevance:0,contains:[e.TITLE_MODE]},l={className:"function", +begin:/function\s+/,end:/\s*\{|$/,excludeEnd:!0,returnBegin:!0,relevance:0, +contains:[{begin:"function",relevance:0,className:"keyword"},{className:"title", +begin:/\w[\w\d]*((-)[\w\d]+)*/,relevance:0},{begin:/\(/,end:/\)/, +className:"params",relevance:0,contains:[i]}]},o={begin:/using\s/,end:/$/, +returnBegin:!0,contains:[a,t,{className:"keyword", +begin:/(using|assembly|command|module|namespace|type)/}]},p={ +className:"function",begin:/\[.*\]\s*[\w]+[ ]??\(/,end:/$/,returnBegin:!0, +relevance:0,contains:[{className:"keyword", +begin:"(".concat(n.keyword.toString().replace(/\s/g,"|"),")\\b"),endsParent:!0, +relevance:0},e.inherit(e.TITLE_MODE,{endsParent:!0})] +},g=[p,r,s,e.NUMBER_MODE,a,t,{className:"built_in",variants:[{ +begin:"(Add|Clear|Close|Copy|Enter|Exit|Find|Format|Get|Hide|Join|Lock|Move|New|Open|Optimize|Pop|Push|Redo|Remove|Rename|Reset|Resize|Search|Select|Set|Show|Skip|Split|Step|Switch|Undo|Unlock|Watch|Backup|Checkpoint|Compare|Compress|Convert|ConvertFrom|ConvertTo|Dismount|Edit|Expand|Export|Group|Import|Initialize|Limit|Merge|Mount|Out|Publish|Restore|Save|Sync|Unpublish|Update|Approve|Assert|Build|Complete|Confirm|Deny|Deploy|Disable|Enable|Install|Invoke|Register|Request|Restart|Resume|Start|Stop|Submit|Suspend|Uninstall|Unregister|Wait|Debug|Measure|Ping|Repair|Resolve|Test|Trace|Connect|Disconnect|Read|Receive|Send|Write|Block|Grant|Protect|Revoke|Unblock|Unprotect|Use|ForEach|Sort|Tee|Where)+(-)[\\w\\d]+" +}]},i,{className:"literal",begin:/\$(null|true|false)\b/},{ +className:"selector-tag",begin:/@\B/,relevance:0}],m={begin:/\[/,end:/\]/, +excludeBegin:!0,excludeEnd:!0,relevance:0,contains:[].concat("self",g,{ +begin:"(string|char|byte|int|long|bool|decimal|single|double|DateTime|xml|array|hashtable|void)", +className:"built_in",relevance:0},{className:"type",begin:/[\.\w\d]+/, +relevance:0})};return p.contains.unshift(m),{name:"PowerShell", +aliases:["pwsh","ps","ps1"],case_insensitive:!0,keywords:n, +contains:g.concat(c,l,o,{variants:[{className:"operator", +begin:"(-and|-as|-band|-bnot|-bor|-bxor|-casesensitive|-ccontains|-ceq|-cge|-cgt|-cle|-clike|-clt|-cmatch|-cne|-cnotcontains|-cnotlike|-cnotmatch|-contains|-creplace|-csplit|-eq|-exact|-f|-file|-ge|-gt|-icontains|-ieq|-ige|-igt|-ile|-ilike|-ilt|-imatch|-in|-ine|-inotcontains|-inotlike|-inotmatch|-ireplace|-is|-isnot|-isplit|-join|-le|-like|-lt|-match|-ne|-not|-notcontains|-notin|-notlike|-notmatch|-or|-regex|-replace|-shl|-shr|-split|-wildcard|-xor)\\b" +},{className:"literal",begin:/(-){1,2}[\w\d-]+/,relevance:0}]},m)}}})() +;hljs.registerLanguage("powershell",e)})();/*! `prolog` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var n=(()=>{"use strict";return n=>{const e={begin:/\(/,end:/\)/, +relevance:0},a={begin:/\[/,end:/\]/},s={className:"comment",begin:/%/,end:/$/, +contains:[n.PHRASAL_WORDS_MODE]},i={className:"string",begin:/`/,end:/`/, +contains:[n.BACKSLASH_ESCAPE]},g=[{begin:/[a-z][A-Za-z0-9_]*/,relevance:0},{ +className:"symbol",variants:[{begin:/[A-Z][a-zA-Z0-9_]*/},{ +begin:/_[A-Za-z0-9_]*/}],relevance:0},e,{begin:/:-/ +},a,s,n.C_BLOCK_COMMENT_MODE,n.QUOTE_STRING_MODE,n.APOS_STRING_MODE,i,{ +className:"string",begin:/0'(\\'|.)/},{className:"string",begin:/0'\\s/ +},n.C_NUMBER_MODE];return e.contains=g,a.contains=g,{name:"Prolog", +contains:g.concat([{begin:/\.$/}])}}})();hljs.registerLanguage("prolog",n)})();/*! `gml` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"GML",case_insensitive:!1, +keywords:{ +keyword:["#endregion","#macro","#region","and","begin","break","case","constructor","continue","default","delete","div","do","else","end","enum","exit","for","function","globalvar","if","mod","not","or","repeat","return","switch","then","until","var","while","with","xor"], +built_in:["abs","achievement_available","achievement_event","achievement_get_challenges","achievement_get_info","achievement_get_pic","achievement_increment","achievement_load_friends","achievement_load_leaderboard","achievement_load_progress","achievement_login","achievement_login_status","achievement_logout","achievement_post","achievement_post_score","achievement_reset","achievement_send_challenge","achievement_show","achievement_show_achievements","achievement_show_challenge_notifications","achievement_show_leaderboards","action_inherited","action_kill_object","ads_disable","ads_enable","ads_engagement_active","ads_engagement_available","ads_engagement_launch","ads_event","ads_event_preload","ads_get_display_height","ads_get_display_width","ads_interstitial_available","ads_interstitial_display","ads_move","ads_set_reward_callback","ads_setup","alarm_get","alarm_set","analytics_event","analytics_event_ext","angle_difference","ansi_char","application_get_position","application_surface_draw_enable","application_surface_enable","application_surface_is_enabled","arccos","arcsin","arctan","arctan2","array_copy","array_create","array_delete","array_equals","array_height_2d","array_insert","array_length","array_length_1d","array_length_2d","array_pop","array_push","array_resize","array_sort","asset_get_index","asset_get_type","audio_channel_num","audio_create_buffer_sound","audio_create_play_queue","audio_create_stream","audio_create_sync_group","audio_debug","audio_destroy_stream","audio_destroy_sync_group","audio_emitter_create","audio_emitter_exists","audio_emitter_falloff","audio_emitter_free","audio_emitter_gain","audio_emitter_get_gain","audio_emitter_get_listener_mask","audio_emitter_get_pitch","audio_emitter_get_vx","audio_emitter_get_vy","audio_emitter_get_vz","audio_emitter_get_x","audio_emitter_get_y","audio_emitter_get_z","audio_emitter_pitch","audio_emitter_position","audio_emitter_set_listener_mask","audio_emitter_velocity","audio_exists","audio_falloff_set_model","audio_free_buffer_sound","audio_free_play_queue","audio_get_listener_count","audio_get_listener_info","audio_get_listener_mask","audio_get_master_gain","audio_get_name","audio_get_recorder_count","audio_get_recorder_info","audio_get_type","audio_group_is_loaded","audio_group_load","audio_group_load_progress","audio_group_name","audio_group_set_gain","audio_group_stop_all","audio_group_unload","audio_is_paused","audio_is_playing","audio_listener_get_data","audio_listener_orientation","audio_listener_position","audio_listener_set_orientation","audio_listener_set_position","audio_listener_set_velocity","audio_listener_velocity","audio_master_gain","audio_music_gain","audio_music_is_playing","audio_pause_all","audio_pause_music","audio_pause_sound","audio_pause_sync_group","audio_play_in_sync_group","audio_play_music","audio_play_sound","audio_play_sound_at","audio_play_sound_on","audio_queue_sound","audio_resume_all","audio_resume_music","audio_resume_sound","audio_resume_sync_group","audio_set_listener_mask","audio_set_master_gain","audio_sound_gain","audio_sound_get_gain","audio_sound_get_listener_mask","audio_sound_get_pitch","audio_sound_get_track_position","audio_sound_length","audio_sound_pitch","audio_sound_set_listener_mask","audio_sound_set_track_position","audio_start_recording","audio_start_sync_group","audio_stop_all","audio_stop_music","audio_stop_recording","audio_stop_sound","audio_stop_sync_group","audio_sync_group_debug","audio_sync_group_get_track_pos","audio_sync_group_is_playing","audio_system","background_get_height","background_get_width","base64_decode","base64_encode","browser_input_capture","buffer_async_group_begin","buffer_async_group_end","buffer_async_group_option","buffer_base64_decode","buffer_base64_decode_ext","buffer_base64_encode","buffer_copy","buffer_copy_from_vertex_buffer","buffer_create","buffer_create_from_vertex_buffer","buffer_create_from_vertex_buffer_ext","buffer_delete","buffer_exists","buffer_fill","buffer_get_address","buffer_get_alignment","buffer_get_size","buffer_get_surface","buffer_get_type","buffer_load","buffer_load_async","buffer_load_ext","buffer_load_partial","buffer_md5","buffer_peek","buffer_poke","buffer_read","buffer_resize","buffer_save","buffer_save_async","buffer_save_ext","buffer_seek","buffer_set_surface","buffer_sha1","buffer_sizeof","buffer_tell","buffer_write","camera_apply","camera_create","camera_create_view","camera_destroy","camera_get_active","camera_get_begin_script","camera_get_default","camera_get_end_script","camera_get_proj_mat","camera_get_update_script","camera_get_view_angle","camera_get_view_border_x","camera_get_view_border_y","camera_get_view_height","camera_get_view_mat","camera_get_view_speed_x","camera_get_view_speed_y","camera_get_view_target","camera_get_view_width","camera_get_view_x","camera_get_view_y","camera_set_begin_script","camera_set_default","camera_set_end_script","camera_set_proj_mat","camera_set_update_script","camera_set_view_angle","camera_set_view_border","camera_set_view_mat","camera_set_view_pos","camera_set_view_size","camera_set_view_speed","camera_set_view_target","ceil","choose","chr","clamp","clickable_add","clickable_add_ext","clickable_change","clickable_change_ext","clickable_delete","clickable_exists","clickable_set_style","clipboard_get_text","clipboard_has_text","clipboard_set_text","cloud_file_save","cloud_string_save","cloud_synchronise","code_is_compiled","collision_circle","collision_circle_list","collision_ellipse","collision_ellipse_list","collision_line","collision_line_list","collision_point","collision_point_list","collision_rectangle","collision_rectangle_list","color_get_blue","color_get_green","color_get_hue","color_get_red","color_get_saturation","color_get_value","colour_get_blue","colour_get_green","colour_get_hue","colour_get_red","colour_get_saturation","colour_get_value","cos","darccos","darcsin","darctan","darctan2","date_compare_date","date_compare_datetime","date_compare_time","date_create_datetime","date_current_datetime","date_date_of","date_date_string","date_datetime_string","date_day_span","date_days_in_month","date_days_in_year","date_get_day","date_get_day_of_year","date_get_hour","date_get_hour_of_year","date_get_minute","date_get_minute_of_year","date_get_month","date_get_second","date_get_second_of_year","date_get_timezone","date_get_week","date_get_weekday","date_get_year","date_hour_span","date_inc_day","date_inc_hour","date_inc_minute","date_inc_month","date_inc_second","date_inc_week","date_inc_year","date_is_today","date_leap_year","date_minute_span","date_month_span","date_second_span","date_set_timezone","date_time_of","date_time_string","date_valid_datetime","date_week_span","date_year_span","dcos","debug_event","debug_get_callstack","degtorad","device_get_tilt_x","device_get_tilt_y","device_get_tilt_z","device_is_keypad_open","device_mouse_check_button","device_mouse_check_button_pressed","device_mouse_check_button_released","device_mouse_dbclick_enable","device_mouse_raw_x","device_mouse_raw_y","device_mouse_x","device_mouse_x_to_gui","device_mouse_y","device_mouse_y_to_gui","directory_create","directory_destroy","directory_exists","display_get_dpi_x","display_get_dpi_y","display_get_gui_height","display_get_gui_width","display_get_height","display_get_orientation","display_get_sleep_margin","display_get_timing_method","display_get_width","display_mouse_get_x","display_mouse_get_y","display_mouse_set","display_reset","display_set_gui_maximise","display_set_gui_maximize","display_set_gui_size","display_set_sleep_margin","display_set_timing_method","display_set_ui_visibility","distance_to_object","distance_to_point","dot_product","dot_product_3d","dot_product_3d_normalised","dot_product_3d_normalized","dot_product_normalised","dot_product_normalized","draw_arrow","draw_background","draw_background_ext","draw_background_part_ext","draw_background_tiled","draw_button","draw_circle","draw_circle_color","draw_circle_colour","draw_clear","draw_clear_alpha","draw_ellipse","draw_ellipse_color","draw_ellipse_colour","draw_enable_alphablend","draw_enable_drawevent","draw_enable_swf_aa","draw_flush","draw_get_alpha","draw_get_color","draw_get_colour","draw_get_lighting","draw_get_swf_aa_level","draw_getpixel","draw_getpixel_ext","draw_healthbar","draw_highscore","draw_light_define_ambient","draw_light_define_direction","draw_light_define_point","draw_light_enable","draw_light_get","draw_light_get_ambient","draw_line","draw_line_color","draw_line_colour","draw_line_width","draw_line_width_color","draw_line_width_colour","draw_path","draw_point","draw_point_color","draw_point_colour","draw_primitive_begin","draw_primitive_begin_texture","draw_primitive_end","draw_rectangle","draw_rectangle_color","draw_rectangle_colour","draw_roundrect","draw_roundrect_color","draw_roundrect_color_ext","draw_roundrect_colour","draw_roundrect_colour_ext","draw_roundrect_ext","draw_self","draw_set_alpha","draw_set_alpha_test","draw_set_alpha_test_ref_value","draw_set_blend_mode","draw_set_blend_mode_ext","draw_set_circle_precision","draw_set_color","draw_set_color_write_enable","draw_set_colour","draw_set_font","draw_set_halign","draw_set_lighting","draw_set_swf_aa_level","draw_set_valign","draw_skeleton","draw_skeleton_collision","draw_skeleton_instance","draw_skeleton_time","draw_sprite","draw_sprite_ext","draw_sprite_general","draw_sprite_part","draw_sprite_part_ext","draw_sprite_pos","draw_sprite_stretched","draw_sprite_stretched_ext","draw_sprite_tiled","draw_sprite_tiled_ext","draw_surface","draw_surface_ext","draw_surface_general","draw_surface_part","draw_surface_part_ext","draw_surface_stretched","draw_surface_stretched_ext","draw_surface_tiled","draw_surface_tiled_ext","draw_text","draw_text_color","draw_text_colour","draw_text_ext","draw_text_ext_color","draw_text_ext_colour","draw_text_ext_transformed","draw_text_ext_transformed_color","draw_text_ext_transformed_colour","draw_text_transformed","draw_text_transformed_color","draw_text_transformed_colour","draw_texture_flush","draw_tile","draw_tilemap","draw_triangle","draw_triangle_color","draw_triangle_colour","draw_vertex","draw_vertex_color","draw_vertex_colour","draw_vertex_texture","draw_vertex_texture_color","draw_vertex_texture_colour","ds_exists","ds_grid_add","ds_grid_add_disk","ds_grid_add_grid_region","ds_grid_add_region","ds_grid_clear","ds_grid_copy","ds_grid_create","ds_grid_destroy","ds_grid_get","ds_grid_get_disk_max","ds_grid_get_disk_mean","ds_grid_get_disk_min","ds_grid_get_disk_sum","ds_grid_get_max","ds_grid_get_mean","ds_grid_get_min","ds_grid_get_sum","ds_grid_height","ds_grid_multiply","ds_grid_multiply_disk","ds_grid_multiply_grid_region","ds_grid_multiply_region","ds_grid_read","ds_grid_resize","ds_grid_set","ds_grid_set_disk","ds_grid_set_grid_region","ds_grid_set_region","ds_grid_shuffle","ds_grid_sort","ds_grid_value_disk_exists","ds_grid_value_disk_x","ds_grid_value_disk_y","ds_grid_value_exists","ds_grid_value_x","ds_grid_value_y","ds_grid_width","ds_grid_write","ds_list_add","ds_list_clear","ds_list_copy","ds_list_create","ds_list_delete","ds_list_destroy","ds_list_empty","ds_list_find_index","ds_list_find_value","ds_list_insert","ds_list_mark_as_list","ds_list_mark_as_map","ds_list_read","ds_list_replace","ds_list_set","ds_list_shuffle","ds_list_size","ds_list_sort","ds_list_write","ds_map_add","ds_map_add_list","ds_map_add_map","ds_map_clear","ds_map_copy","ds_map_create","ds_map_delete","ds_map_destroy","ds_map_empty","ds_map_exists","ds_map_find_first","ds_map_find_last","ds_map_find_next","ds_map_find_previous","ds_map_find_value","ds_map_read","ds_map_replace","ds_map_replace_list","ds_map_replace_map","ds_map_secure_load","ds_map_secure_load_buffer","ds_map_secure_save","ds_map_secure_save_buffer","ds_map_set","ds_map_size","ds_map_write","ds_priority_add","ds_priority_change_priority","ds_priority_clear","ds_priority_copy","ds_priority_create","ds_priority_delete_max","ds_priority_delete_min","ds_priority_delete_value","ds_priority_destroy","ds_priority_empty","ds_priority_find_max","ds_priority_find_min","ds_priority_find_priority","ds_priority_read","ds_priority_size","ds_priority_write","ds_queue_clear","ds_queue_copy","ds_queue_create","ds_queue_dequeue","ds_queue_destroy","ds_queue_empty","ds_queue_enqueue","ds_queue_head","ds_queue_read","ds_queue_size","ds_queue_tail","ds_queue_write","ds_set_precision","ds_stack_clear","ds_stack_copy","ds_stack_create","ds_stack_destroy","ds_stack_empty","ds_stack_pop","ds_stack_push","ds_stack_read","ds_stack_size","ds_stack_top","ds_stack_write","dsin","dtan","effect_clear","effect_create_above","effect_create_below","environment_get_variable","event_inherited","event_perform","event_perform_object","event_user","exp","external_call","external_define","external_free","facebook_accesstoken","facebook_check_permission","facebook_dialog","facebook_graph_request","facebook_init","facebook_launch_offerwall","facebook_login","facebook_logout","facebook_post_message","facebook_request_publish_permissions","facebook_request_read_permissions","facebook_send_invite","facebook_status","facebook_user_id","file_attributes","file_bin_close","file_bin_open","file_bin_position","file_bin_read_byte","file_bin_rewrite","file_bin_seek","file_bin_size","file_bin_write_byte","file_copy","file_delete","file_exists","file_find_close","file_find_first","file_find_next","file_rename","file_text_close","file_text_eof","file_text_eoln","file_text_open_append","file_text_open_from_string","file_text_open_read","file_text_open_write","file_text_read_real","file_text_read_string","file_text_readln","file_text_write_real","file_text_write_string","file_text_writeln","filename_change_ext","filename_dir","filename_drive","filename_ext","filename_name","filename_path","floor","font_add","font_add_enable_aa","font_add_get_enable_aa","font_add_sprite","font_add_sprite_ext","font_delete","font_exists","font_get_bold","font_get_first","font_get_fontname","font_get_italic","font_get_last","font_get_name","font_get_size","font_get_texture","font_get_uvs","font_replace","font_replace_sprite","font_replace_sprite_ext","font_set_cache_size","font_texture_page_size","frac","game_end","game_get_speed","game_load","game_load_buffer","game_restart","game_save","game_save_buffer","game_set_speed","gamepad_axis_count","gamepad_axis_value","gamepad_button_check","gamepad_button_check_pressed","gamepad_button_check_released","gamepad_button_count","gamepad_button_value","gamepad_get_axis_deadzone","gamepad_get_button_threshold","gamepad_get_description","gamepad_get_device_count","gamepad_is_connected","gamepad_is_supported","gamepad_set_axis_deadzone","gamepad_set_button_threshold","gamepad_set_color","gamepad_set_colour","gamepad_set_vibration","gesture_double_tap_distance","gesture_double_tap_time","gesture_drag_distance","gesture_drag_time","gesture_flick_speed","gesture_get_double_tap_distance","gesture_get_double_tap_time","gesture_get_drag_distance","gesture_get_drag_time","gesture_get_flick_speed","gesture_get_pinch_angle_away","gesture_get_pinch_angle_towards","gesture_get_pinch_distance","gesture_get_rotate_angle","gesture_get_rotate_time","gesture_get_tap_count","gesture_pinch_angle_away","gesture_pinch_angle_towards","gesture_pinch_distance","gesture_rotate_angle","gesture_rotate_time","gesture_tap_count","get_integer","get_integer_async","get_login_async","get_open_filename","get_open_filename_ext","get_save_filename","get_save_filename_ext","get_string","get_string_async","get_timer","gml_pragma","gml_release_mode","gpu_get_alphatestenable","gpu_get_alphatestfunc","gpu_get_alphatestref","gpu_get_blendenable","gpu_get_blendmode","gpu_get_blendmode_dest","gpu_get_blendmode_destalpha","gpu_get_blendmode_ext","gpu_get_blendmode_ext_sepalpha","gpu_get_blendmode_src","gpu_get_blendmode_srcalpha","gpu_get_colorwriteenable","gpu_get_colourwriteenable","gpu_get_cullmode","gpu_get_fog","gpu_get_lightingenable","gpu_get_state","gpu_get_tex_filter","gpu_get_tex_filter_ext","gpu_get_tex_max_aniso","gpu_get_tex_max_aniso_ext","gpu_get_tex_max_mip","gpu_get_tex_max_mip_ext","gpu_get_tex_min_mip","gpu_get_tex_min_mip_ext","gpu_get_tex_mip_bias","gpu_get_tex_mip_bias_ext","gpu_get_tex_mip_enable","gpu_get_tex_mip_enable_ext","gpu_get_tex_mip_filter","gpu_get_tex_mip_filter_ext","gpu_get_tex_repeat","gpu_get_tex_repeat_ext","gpu_get_texfilter","gpu_get_texfilter_ext","gpu_get_texrepeat","gpu_get_texrepeat_ext","gpu_get_zfunc","gpu_get_ztestenable","gpu_get_zwriteenable","gpu_pop_state","gpu_push_state","gpu_set_alphatestenable","gpu_set_alphatestfunc","gpu_set_alphatestref","gpu_set_blendenable","gpu_set_blendmode","gpu_set_blendmode_ext","gpu_set_blendmode_ext_sepalpha","gpu_set_colorwriteenable","gpu_set_colourwriteenable","gpu_set_cullmode","gpu_set_fog","gpu_set_lightingenable","gpu_set_state","gpu_set_tex_filter","gpu_set_tex_filter_ext","gpu_set_tex_max_aniso","gpu_set_tex_max_aniso_ext","gpu_set_tex_max_mip","gpu_set_tex_max_mip_ext","gpu_set_tex_min_mip","gpu_set_tex_min_mip_ext","gpu_set_tex_mip_bias","gpu_set_tex_mip_bias_ext","gpu_set_tex_mip_enable","gpu_set_tex_mip_enable_ext","gpu_set_tex_mip_filter","gpu_set_tex_mip_filter_ext","gpu_set_tex_repeat","gpu_set_tex_repeat_ext","gpu_set_texfilter","gpu_set_texfilter_ext","gpu_set_texrepeat","gpu_set_texrepeat_ext","gpu_set_zfunc","gpu_set_ztestenable","gpu_set_zwriteenable","highscore_add","highscore_clear","highscore_name","highscore_value","http_get","http_get_file","http_post_string","http_request","iap_acquire","iap_activate","iap_consume","iap_enumerate_products","iap_product_details","iap_purchase_details","iap_restore_all","iap_status","ini_close","ini_key_delete","ini_key_exists","ini_open","ini_open_from_string","ini_read_real","ini_read_string","ini_section_delete","ini_section_exists","ini_write_real","ini_write_string","instance_activate_all","instance_activate_layer","instance_activate_object","instance_activate_region","instance_change","instance_copy","instance_create","instance_create_depth","instance_create_layer","instance_deactivate_all","instance_deactivate_layer","instance_deactivate_object","instance_deactivate_region","instance_destroy","instance_exists","instance_find","instance_furthest","instance_id_get","instance_nearest","instance_number","instance_place","instance_place_list","instance_position","instance_position_list","int64","io_clear","irandom","irandom_range","is_array","is_bool","is_infinity","is_int32","is_int64","is_matrix","is_method","is_nan","is_numeric","is_ptr","is_real","is_string","is_struct","is_undefined","is_vec3","is_vec4","json_decode","json_encode","keyboard_check","keyboard_check_direct","keyboard_check_pressed","keyboard_check_released","keyboard_clear","keyboard_get_map","keyboard_get_numlock","keyboard_key_press","keyboard_key_release","keyboard_set_map","keyboard_set_numlock","keyboard_unset_map","keyboard_virtual_height","keyboard_virtual_hide","keyboard_virtual_show","keyboard_virtual_status","layer_add_instance","layer_background_alpha","layer_background_blend","layer_background_change","layer_background_create","layer_background_destroy","layer_background_exists","layer_background_get_alpha","layer_background_get_blend","layer_background_get_htiled","layer_background_get_id","layer_background_get_index","layer_background_get_speed","layer_background_get_sprite","layer_background_get_stretch","layer_background_get_visible","layer_background_get_vtiled","layer_background_get_xscale","layer_background_get_yscale","layer_background_htiled","layer_background_index","layer_background_speed","layer_background_sprite","layer_background_stretch","layer_background_visible","layer_background_vtiled","layer_background_xscale","layer_background_yscale","layer_create","layer_depth","layer_destroy","layer_destroy_instances","layer_element_move","layer_exists","layer_force_draw_depth","layer_get_all","layer_get_all_elements","layer_get_depth","layer_get_element_layer","layer_get_element_type","layer_get_forced_depth","layer_get_hspeed","layer_get_id","layer_get_id_at_depth","layer_get_name","layer_get_script_begin","layer_get_script_end","layer_get_shader","layer_get_target_room","layer_get_visible","layer_get_vspeed","layer_get_x","layer_get_y","layer_has_instance","layer_hspeed","layer_instance_get_instance","layer_is_draw_depth_forced","layer_reset_target_room","layer_script_begin","layer_script_end","layer_set_target_room","layer_set_visible","layer_shader","layer_sprite_alpha","layer_sprite_angle","layer_sprite_blend","layer_sprite_change","layer_sprite_create","layer_sprite_destroy","layer_sprite_exists","layer_sprite_get_alpha","layer_sprite_get_angle","layer_sprite_get_blend","layer_sprite_get_id","layer_sprite_get_index","layer_sprite_get_speed","layer_sprite_get_sprite","layer_sprite_get_x","layer_sprite_get_xscale","layer_sprite_get_y","layer_sprite_get_yscale","layer_sprite_index","layer_sprite_speed","layer_sprite_x","layer_sprite_xscale","layer_sprite_y","layer_sprite_yscale","layer_tile_alpha","layer_tile_blend","layer_tile_change","layer_tile_create","layer_tile_destroy","layer_tile_exists","layer_tile_get_alpha","layer_tile_get_blend","layer_tile_get_region","layer_tile_get_sprite","layer_tile_get_visible","layer_tile_get_x","layer_tile_get_xscale","layer_tile_get_y","layer_tile_get_yscale","layer_tile_region","layer_tile_visible","layer_tile_x","layer_tile_xscale","layer_tile_y","layer_tile_yscale","layer_tilemap_create","layer_tilemap_destroy","layer_tilemap_exists","layer_tilemap_get_id","layer_vspeed","layer_x","layer_y","lengthdir_x","lengthdir_y","lerp","ln","load_csv","log10","log2","logn","make_color_hsv","make_color_rgb","make_colour_hsv","make_colour_rgb","math_get_epsilon","math_set_epsilon","matrix_build","matrix_build_identity","matrix_build_lookat","matrix_build_projection_ortho","matrix_build_projection_perspective","matrix_build_projection_perspective_fov","matrix_get","matrix_multiply","matrix_set","matrix_stack_clear","matrix_stack_is_empty","matrix_stack_multiply","matrix_stack_pop","matrix_stack_push","matrix_stack_set","matrix_stack_top","matrix_transform_vertex","max","md5_file","md5_string_unicode","md5_string_utf8","mean","median","merge_color","merge_colour","min","motion_add","motion_set","mouse_check_button","mouse_check_button_pressed","mouse_check_button_released","mouse_clear","mouse_wheel_down","mouse_wheel_up","move_bounce_all","move_bounce_solid","move_contact_all","move_contact_solid","move_outside_all","move_outside_solid","move_random","move_snap","move_towards_point","move_wrap","mp_grid_add_cell","mp_grid_add_instances","mp_grid_add_rectangle","mp_grid_clear_all","mp_grid_clear_cell","mp_grid_clear_rectangle","mp_grid_create","mp_grid_destroy","mp_grid_draw","mp_grid_get_cell","mp_grid_path","mp_grid_to_ds_grid","mp_linear_path","mp_linear_path_object","mp_linear_step","mp_linear_step_object","mp_potential_path","mp_potential_path_object","mp_potential_settings","mp_potential_step","mp_potential_step_object","network_connect","network_connect_raw","network_create_server","network_create_server_raw","network_create_socket","network_create_socket_ext","network_destroy","network_resolve","network_send_broadcast","network_send_packet","network_send_raw","network_send_udp","network_send_udp_raw","network_set_config","network_set_timeout","object_exists","object_get_depth","object_get_mask","object_get_name","object_get_parent","object_get_persistent","object_get_physics","object_get_solid","object_get_sprite","object_get_visible","object_is_ancestor","object_set_mask","object_set_persistent","object_set_solid","object_set_sprite","object_set_visible","ord","os_get_config","os_get_info","os_get_language","os_get_region","os_is_network_connected","os_is_paused","os_lock_orientation","os_powersave_enable","parameter_count","parameter_string","part_emitter_burst","part_emitter_clear","part_emitter_create","part_emitter_destroy","part_emitter_destroy_all","part_emitter_exists","part_emitter_region","part_emitter_stream","part_particles_clear","part_particles_count","part_particles_create","part_particles_create_color","part_particles_create_colour","part_system_automatic_draw","part_system_automatic_update","part_system_clear","part_system_create","part_system_create_layer","part_system_depth","part_system_destroy","part_system_draw_order","part_system_drawit","part_system_exists","part_system_get_layer","part_system_layer","part_system_position","part_system_update","part_type_alpha1","part_type_alpha2","part_type_alpha3","part_type_blend","part_type_clear","part_type_color1","part_type_color2","part_type_color3","part_type_color_hsv","part_type_color_mix","part_type_color_rgb","part_type_colour1","part_type_colour2","part_type_colour3","part_type_colour_hsv","part_type_colour_mix","part_type_colour_rgb","part_type_create","part_type_death","part_type_destroy","part_type_direction","part_type_exists","part_type_gravity","part_type_life","part_type_orientation","part_type_scale","part_type_shape","part_type_size","part_type_speed","part_type_sprite","part_type_step","path_add","path_add_point","path_append","path_assign","path_change_point","path_clear_points","path_delete","path_delete_point","path_duplicate","path_end","path_exists","path_flip","path_get_closed","path_get_kind","path_get_length","path_get_name","path_get_number","path_get_point_speed","path_get_point_x","path_get_point_y","path_get_precision","path_get_speed","path_get_time","path_get_x","path_get_y","path_insert_point","path_mirror","path_rescale","path_reverse","path_rotate","path_set_closed","path_set_kind","path_set_precision","path_shift","path_start","physics_apply_angular_impulse","physics_apply_force","physics_apply_impulse","physics_apply_local_force","physics_apply_local_impulse","physics_apply_torque","physics_draw_debug","physics_fixture_add_point","physics_fixture_bind","physics_fixture_bind_ext","physics_fixture_create","physics_fixture_delete","physics_fixture_set_angular_damping","physics_fixture_set_awake","physics_fixture_set_box_shape","physics_fixture_set_chain_shape","physics_fixture_set_circle_shape","physics_fixture_set_collision_group","physics_fixture_set_density","physics_fixture_set_edge_shape","physics_fixture_set_friction","physics_fixture_set_kinematic","physics_fixture_set_linear_damping","physics_fixture_set_polygon_shape","physics_fixture_set_restitution","physics_fixture_set_sensor","physics_get_density","physics_get_friction","physics_get_restitution","physics_joint_delete","physics_joint_distance_create","physics_joint_enable_motor","physics_joint_friction_create","physics_joint_gear_create","physics_joint_get_value","physics_joint_prismatic_create","physics_joint_pulley_create","physics_joint_revolute_create","physics_joint_rope_create","physics_joint_set_value","physics_joint_weld_create","physics_joint_wheel_create","physics_mass_properties","physics_particle_count","physics_particle_create","physics_particle_delete","physics_particle_delete_region_box","physics_particle_delete_region_circle","physics_particle_delete_region_poly","physics_particle_draw","physics_particle_draw_ext","physics_particle_get_damping","physics_particle_get_data","physics_particle_get_data_particle","physics_particle_get_density","physics_particle_get_gravity_scale","physics_particle_get_group_flags","physics_particle_get_max_count","physics_particle_get_radius","physics_particle_group_add_point","physics_particle_group_begin","physics_particle_group_box","physics_particle_group_circle","physics_particle_group_count","physics_particle_group_delete","physics_particle_group_end","physics_particle_group_get_ang_vel","physics_particle_group_get_angle","physics_particle_group_get_centre_x","physics_particle_group_get_centre_y","physics_particle_group_get_data","physics_particle_group_get_inertia","physics_particle_group_get_mass","physics_particle_group_get_vel_x","physics_particle_group_get_vel_y","physics_particle_group_get_x","physics_particle_group_get_y","physics_particle_group_join","physics_particle_group_polygon","physics_particle_set_category_flags","physics_particle_set_damping","physics_particle_set_density","physics_particle_set_flags","physics_particle_set_gravity_scale","physics_particle_set_group_flags","physics_particle_set_max_count","physics_particle_set_radius","physics_pause_enable","physics_remove_fixture","physics_set_density","physics_set_friction","physics_set_restitution","physics_test_overlap","physics_world_create","physics_world_draw_debug","physics_world_gravity","physics_world_update_iterations","physics_world_update_speed","place_empty","place_free","place_meeting","place_snapped","point_direction","point_distance","point_distance_3d","point_in_circle","point_in_rectangle","point_in_triangle","position_change","position_destroy","position_empty","position_meeting","power","ptr","push_cancel_local_notification","push_get_first_local_notification","push_get_next_local_notification","push_local_notification","radtodeg","random","random_get_seed","random_range","random_set_seed","randomise","randomize","real","rectangle_in_circle","rectangle_in_rectangle","rectangle_in_triangle","room_add","room_assign","room_duplicate","room_exists","room_get_camera","room_get_name","room_get_viewport","room_goto","room_goto_next","room_goto_previous","room_instance_add","room_instance_clear","room_next","room_previous","room_restart","room_set_background_color","room_set_background_colour","room_set_camera","room_set_height","room_set_persistent","room_set_view","room_set_view_enabled","room_set_viewport","room_set_width","round","screen_save","screen_save_part","script_execute","script_exists","script_get_name","sha1_file","sha1_string_unicode","sha1_string_utf8","shader_current","shader_enable_corner_id","shader_get_name","shader_get_sampler_index","shader_get_uniform","shader_is_compiled","shader_reset","shader_set","shader_set_uniform_f","shader_set_uniform_f_array","shader_set_uniform_i","shader_set_uniform_i_array","shader_set_uniform_matrix","shader_set_uniform_matrix_array","shaders_are_supported","shop_leave_rating","show_debug_message","show_debug_overlay","show_error","show_message","show_message_async","show_question","show_question_async","sign","sin","skeleton_animation_clear","skeleton_animation_get","skeleton_animation_get_duration","skeleton_animation_get_ext","skeleton_animation_get_frame","skeleton_animation_get_frames","skeleton_animation_list","skeleton_animation_mix","skeleton_animation_set","skeleton_animation_set_ext","skeleton_animation_set_frame","skeleton_attachment_create","skeleton_attachment_get","skeleton_attachment_set","skeleton_bone_data_get","skeleton_bone_data_set","skeleton_bone_state_get","skeleton_bone_state_set","skeleton_collision_draw_set","skeleton_get_bounds","skeleton_get_minmax","skeleton_get_num_bounds","skeleton_skin_get","skeleton_skin_list","skeleton_skin_set","skeleton_slot_data","sprite_add","sprite_add_from_surface","sprite_assign","sprite_collision_mask","sprite_create_from_surface","sprite_delete","sprite_duplicate","sprite_exists","sprite_flush","sprite_flush_multi","sprite_get_bbox_bottom","sprite_get_bbox_left","sprite_get_bbox_right","sprite_get_bbox_top","sprite_get_height","sprite_get_name","sprite_get_number","sprite_get_speed","sprite_get_speed_type","sprite_get_texture","sprite_get_tpe","sprite_get_uvs","sprite_get_width","sprite_get_xoffset","sprite_get_yoffset","sprite_merge","sprite_prefetch","sprite_prefetch_multi","sprite_replace","sprite_save","sprite_save_strip","sprite_set_alpha_from_sprite","sprite_set_cache_size","sprite_set_cache_size_ext","sprite_set_offset","sprite_set_speed","sqr","sqrt","steam_activate_overlay","steam_activate_overlay_browser","steam_activate_overlay_store","steam_activate_overlay_user","steam_available_languages","steam_clear_achievement","steam_create_leaderboard","steam_current_game_language","steam_download_friends_scores","steam_download_scores","steam_download_scores_around_user","steam_file_delete","steam_file_exists","steam_file_persisted","steam_file_read","steam_file_share","steam_file_size","steam_file_write","steam_file_write_file","steam_get_achievement","steam_get_app_id","steam_get_persona_name","steam_get_quota_free","steam_get_quota_total","steam_get_stat_avg_rate","steam_get_stat_float","steam_get_stat_int","steam_get_user_account_id","steam_get_user_persona_name","steam_get_user_steam_id","steam_initialised","steam_is_cloud_enabled_for_account","steam_is_cloud_enabled_for_app","steam_is_overlay_activated","steam_is_overlay_enabled","steam_is_screenshot_requested","steam_is_user_logged_on","steam_reset_all_stats","steam_reset_all_stats_achievements","steam_send_screenshot","steam_set_achievement","steam_set_stat_avg_rate","steam_set_stat_float","steam_set_stat_int","steam_stats_ready","steam_ugc_create_item","steam_ugc_create_query_all","steam_ugc_create_query_all_ex","steam_ugc_create_query_user","steam_ugc_create_query_user_ex","steam_ugc_download","steam_ugc_get_item_install_info","steam_ugc_get_item_update_info","steam_ugc_get_item_update_progress","steam_ugc_get_subscribed_items","steam_ugc_num_subscribed_items","steam_ugc_query_add_excluded_tag","steam_ugc_query_add_required_tag","steam_ugc_query_set_allow_cached_response","steam_ugc_query_set_cloud_filename_filter","steam_ugc_query_set_match_any_tag","steam_ugc_query_set_ranked_by_trend_days","steam_ugc_query_set_return_long_description","steam_ugc_query_set_return_total_only","steam_ugc_query_set_search_text","steam_ugc_request_item_details","steam_ugc_send_query","steam_ugc_set_item_content","steam_ugc_set_item_description","steam_ugc_set_item_preview","steam_ugc_set_item_tags","steam_ugc_set_item_title","steam_ugc_set_item_visibility","steam_ugc_start_item_update","steam_ugc_submit_item_update","steam_ugc_subscribe_item","steam_ugc_unsubscribe_item","steam_upload_score","steam_upload_score_buffer","steam_upload_score_buffer_ext","steam_upload_score_ext","steam_user_installed_dlc","steam_user_owns_dlc","string","string_byte_at","string_byte_length","string_char_at","string_copy","string_count","string_delete","string_digits","string_format","string_hash_to_newline","string_height","string_height_ext","string_insert","string_length","string_letters","string_lettersdigits","string_lower","string_ord_at","string_pos","string_repeat","string_replace","string_replace_all","string_set_byte_at","string_upper","string_width","string_width_ext","surface_copy","surface_copy_part","surface_create","surface_create_ext","surface_depth_disable","surface_exists","surface_free","surface_get_depth_disable","surface_get_height","surface_get_texture","surface_get_width","surface_getpixel","surface_getpixel_ext","surface_reset_target","surface_resize","surface_save","surface_save_part","surface_set_target","surface_set_target_ext","tan","texture_get_height","texture_get_texel_height","texture_get_texel_width","texture_get_uvs","texture_get_width","texture_global_scale","texture_set_stage","tile_get_empty","tile_get_flip","tile_get_index","tile_get_mirror","tile_get_rotate","tile_set_empty","tile_set_flip","tile_set_index","tile_set_mirror","tile_set_rotate","tilemap_clear","tilemap_get","tilemap_get_at_pixel","tilemap_get_cell_x_at_pixel","tilemap_get_cell_y_at_pixel","tilemap_get_frame","tilemap_get_global_mask","tilemap_get_height","tilemap_get_mask","tilemap_get_tile_height","tilemap_get_tile_width","tilemap_get_tileset","tilemap_get_width","tilemap_get_x","tilemap_get_y","tilemap_set","tilemap_set_at_pixel","tilemap_set_global_mask","tilemap_set_mask","tilemap_tileset","tilemap_x","tilemap_y","timeline_add","timeline_clear","timeline_delete","timeline_exists","timeline_get_name","timeline_max_moment","timeline_moment_add_script","timeline_moment_clear","timeline_size","typeof","url_get_domain","url_open","url_open_ext","url_open_full","variable_global_exists","variable_global_get","variable_global_set","variable_instance_exists","variable_instance_get","variable_instance_get_names","variable_instance_set","variable_struct_exists","variable_struct_get","variable_struct_get_names","variable_struct_names_count","variable_struct_remove","variable_struct_set","vertex_argb","vertex_begin","vertex_color","vertex_colour","vertex_create_buffer","vertex_create_buffer_ext","vertex_create_buffer_from_buffer","vertex_create_buffer_from_buffer_ext","vertex_delete_buffer","vertex_end","vertex_float1","vertex_float2","vertex_float3","vertex_float4","vertex_format_add_color","vertex_format_add_colour","vertex_format_add_custom","vertex_format_add_normal","vertex_format_add_position","vertex_format_add_position_3d","vertex_format_add_texcoord","vertex_format_add_textcoord","vertex_format_begin","vertex_format_delete","vertex_format_end","vertex_freeze","vertex_get_buffer_size","vertex_get_number","vertex_normal","vertex_position","vertex_position_3d","vertex_submit","vertex_texcoord","vertex_ubyte4","view_get_camera","view_get_hport","view_get_surface_id","view_get_visible","view_get_wport","view_get_xport","view_get_yport","view_set_camera","view_set_hport","view_set_surface_id","view_set_visible","view_set_wport","view_set_xport","view_set_yport","virtual_key_add","virtual_key_delete","virtual_key_hide","virtual_key_show","win8_appbar_add_element","win8_appbar_enable","win8_appbar_remove_element","win8_device_touchscreen_available","win8_license_initialize_sandbox","win8_license_trial_version","win8_livetile_badge_clear","win8_livetile_badge_notification","win8_livetile_notification_begin","win8_livetile_notification_end","win8_livetile_notification_expiry","win8_livetile_notification_image_add","win8_livetile_notification_secondary_begin","win8_livetile_notification_tag","win8_livetile_notification_text_add","win8_livetile_queue_enable","win8_livetile_tile_clear","win8_livetile_tile_notification","win8_search_add_suggestions","win8_search_disable","win8_search_enable","win8_secondarytile_badge_notification","win8_secondarytile_delete","win8_secondarytile_pin","win8_settingscharm_add_entry","win8_settingscharm_add_html_entry","win8_settingscharm_add_xaml_entry","win8_settingscharm_get_xaml_property","win8_settingscharm_remove_entry","win8_settingscharm_set_xaml_property","win8_share_file","win8_share_image","win8_share_screenshot","win8_share_text","win8_share_url","window_center","window_device","window_get_caption","window_get_color","window_get_colour","window_get_cursor","window_get_fullscreen","window_get_height","window_get_visible_rects","window_get_width","window_get_x","window_get_y","window_handle","window_has_focus","window_mouse_get_x","window_mouse_get_y","window_mouse_set","window_set_caption","window_set_color","window_set_colour","window_set_cursor","window_set_fullscreen","window_set_max_height","window_set_max_width","window_set_min_height","window_set_min_width","window_set_position","window_set_rectangle","window_set_size","window_view_mouse_get_x","window_view_mouse_get_y","window_views_mouse_get_x","window_views_mouse_get_y","winphone_license_trial_version","winphone_tile_back_content","winphone_tile_back_content_wide","winphone_tile_back_image","winphone_tile_back_image_wide","winphone_tile_back_title","winphone_tile_background_color","winphone_tile_background_colour","winphone_tile_count","winphone_tile_cycle_images","winphone_tile_front_image","winphone_tile_front_image_small","winphone_tile_front_image_wide","winphone_tile_icon_image","winphone_tile_small_background_image","winphone_tile_small_icon_image","winphone_tile_title","winphone_tile_wide_content","zip_unzip"], +literal:["all","false","noone","pointer_invalid","pointer_null","true","undefined"], +symbol:["ANSI_CHARSET","ARABIC_CHARSET","BALTIC_CHARSET","CHINESEBIG5_CHARSET","DEFAULT_CHARSET","EASTEUROPE_CHARSET","GB2312_CHARSET","GM_build_date","GM_runtime_version","GM_version","GREEK_CHARSET","HANGEUL_CHARSET","HEBREW_CHARSET","JOHAB_CHARSET","MAC_CHARSET","OEM_CHARSET","RUSSIAN_CHARSET","SHIFTJIS_CHARSET","SYMBOL_CHARSET","THAI_CHARSET","TURKISH_CHARSET","VIETNAMESE_CHARSET","achievement_achievement_info","achievement_filter_all_players","achievement_filter_favorites_only","achievement_filter_friends_only","achievement_friends_info","achievement_leaderboard_info","achievement_our_info","achievement_pic_loaded","achievement_show_achievement","achievement_show_bank","achievement_show_friend_picker","achievement_show_leaderboard","achievement_show_profile","achievement_show_purchase_prompt","achievement_show_ui","achievement_type_achievement_challenge","achievement_type_score_challenge","asset_font","asset_object","asset_path","asset_room","asset_script","asset_shader","asset_sound","asset_sprite","asset_tiles","asset_timeline","asset_unknown","audio_3d","audio_falloff_exponent_distance","audio_falloff_exponent_distance_clamped","audio_falloff_inverse_distance","audio_falloff_inverse_distance_clamped","audio_falloff_linear_distance","audio_falloff_linear_distance_clamped","audio_falloff_none","audio_mono","audio_new_system","audio_old_system","audio_stereo","bm_add","bm_complex","bm_dest_alpha","bm_dest_color","bm_dest_colour","bm_inv_dest_alpha","bm_inv_dest_color","bm_inv_dest_colour","bm_inv_src_alpha","bm_inv_src_color","bm_inv_src_colour","bm_max","bm_normal","bm_one","bm_src_alpha","bm_src_alpha_sat","bm_src_color","bm_src_colour","bm_subtract","bm_zero","browser_chrome","browser_edge","browser_firefox","browser_ie","browser_ie_mobile","browser_not_a_browser","browser_opera","browser_safari","browser_safari_mobile","browser_tizen","browser_unknown","browser_windows_store","buffer_bool","buffer_f16","buffer_f32","buffer_f64","buffer_fast","buffer_fixed","buffer_generalerror","buffer_grow","buffer_invalidtype","buffer_network","buffer_outofbounds","buffer_outofspace","buffer_s16","buffer_s32","buffer_s8","buffer_seek_end","buffer_seek_relative","buffer_seek_start","buffer_string","buffer_surface_copy","buffer_text","buffer_u16","buffer_u32","buffer_u64","buffer_u8","buffer_vbuffer","buffer_wrap","button_type","c_aqua","c_black","c_blue","c_dkgray","c_fuchsia","c_gray","c_green","c_lime","c_ltgray","c_maroon","c_navy","c_olive","c_orange","c_purple","c_red","c_silver","c_teal","c_white","c_yellow","cmpfunc_always","cmpfunc_equal","cmpfunc_greater","cmpfunc_greaterequal","cmpfunc_less","cmpfunc_lessequal","cmpfunc_never","cmpfunc_notequal","cr_appstart","cr_arrow","cr_beam","cr_cross","cr_default","cr_drag","cr_handpoint","cr_hourglass","cr_none","cr_size_all","cr_size_nesw","cr_size_ns","cr_size_nwse","cr_size_we","cr_uparrow","cull_clockwise","cull_counterclockwise","cull_noculling","device_emulator","device_ios_ipad","device_ios_ipad_retina","device_ios_iphone","device_ios_iphone5","device_ios_iphone6","device_ios_iphone6plus","device_ios_iphone_retina","device_ios_unknown","device_tablet","display_landscape","display_landscape_flipped","display_portrait","display_portrait_flipped","dll_cdecl","dll_stdcall","ds_type_grid","ds_type_list","ds_type_map","ds_type_priority","ds_type_queue","ds_type_stack","ef_cloud","ef_ellipse","ef_explosion","ef_firework","ef_flare","ef_rain","ef_ring","ef_smoke","ef_smokeup","ef_snow","ef_spark","ef_star","ev_alarm","ev_animation_end","ev_boundary","ev_cleanup","ev_close_button","ev_collision","ev_create","ev_destroy","ev_draw","ev_draw_begin","ev_draw_end","ev_draw_post","ev_draw_pre","ev_end_of_path","ev_game_end","ev_game_start","ev_gesture","ev_gesture_double_tap","ev_gesture_drag_end","ev_gesture_drag_start","ev_gesture_dragging","ev_gesture_flick","ev_gesture_pinch_end","ev_gesture_pinch_in","ev_gesture_pinch_out","ev_gesture_pinch_start","ev_gesture_rotate_end","ev_gesture_rotate_start","ev_gesture_rotating","ev_gesture_tap","ev_global_gesture_double_tap","ev_global_gesture_drag_end","ev_global_gesture_drag_start","ev_global_gesture_dragging","ev_global_gesture_flick","ev_global_gesture_pinch_end","ev_global_gesture_pinch_in","ev_global_gesture_pinch_out","ev_global_gesture_pinch_start","ev_global_gesture_rotate_end","ev_global_gesture_rotate_start","ev_global_gesture_rotating","ev_global_gesture_tap","ev_global_left_button","ev_global_left_press","ev_global_left_release","ev_global_middle_button","ev_global_middle_press","ev_global_middle_release","ev_global_right_button","ev_global_right_press","ev_global_right_release","ev_gui","ev_gui_begin","ev_gui_end","ev_joystick1_button1","ev_joystick1_button2","ev_joystick1_button3","ev_joystick1_button4","ev_joystick1_button5","ev_joystick1_button6","ev_joystick1_button7","ev_joystick1_button8","ev_joystick1_down","ev_joystick1_left","ev_joystick1_right","ev_joystick1_up","ev_joystick2_button1","ev_joystick2_button2","ev_joystick2_button3","ev_joystick2_button4","ev_joystick2_button5","ev_joystick2_button6","ev_joystick2_button7","ev_joystick2_button8","ev_joystick2_down","ev_joystick2_left","ev_joystick2_right","ev_joystick2_up","ev_keyboard","ev_keypress","ev_keyrelease","ev_left_button","ev_left_press","ev_left_release","ev_middle_button","ev_middle_press","ev_middle_release","ev_mouse","ev_mouse_enter","ev_mouse_leave","ev_mouse_wheel_down","ev_mouse_wheel_up","ev_no_button","ev_no_more_health","ev_no_more_lives","ev_other","ev_outside","ev_right_button","ev_right_press","ev_right_release","ev_room_end","ev_room_start","ev_step","ev_step_begin","ev_step_end","ev_step_normal","ev_trigger","ev_user0","ev_user1","ev_user2","ev_user3","ev_user4","ev_user5","ev_user6","ev_user7","ev_user8","ev_user9","ev_user10","ev_user11","ev_user12","ev_user13","ev_user14","ev_user15","fa_archive","fa_bottom","fa_center","fa_directory","fa_hidden","fa_left","fa_middle","fa_readonly","fa_right","fa_sysfile","fa_top","fa_volumeid","fb_login_default","fb_login_fallback_to_webview","fb_login_forcing_safari","fb_login_forcing_webview","fb_login_no_fallback_to_webview","fb_login_use_system_account","gamespeed_fps","gamespeed_microseconds","ge_lose","global","gp_axislh","gp_axislv","gp_axisrh","gp_axisrv","gp_face1","gp_face2","gp_face3","gp_face4","gp_padd","gp_padl","gp_padr","gp_padu","gp_select","gp_shoulderl","gp_shoulderlb","gp_shoulderr","gp_shoulderrb","gp_start","gp_stickl","gp_stickr","iap_available","iap_canceled","iap_ev_consume","iap_ev_product","iap_ev_purchase","iap_ev_restore","iap_ev_storeload","iap_failed","iap_purchased","iap_refunded","iap_status_available","iap_status_loading","iap_status_processing","iap_status_restoring","iap_status_unavailable","iap_status_uninitialised","iap_storeload_failed","iap_storeload_ok","iap_unavailable","input_type","kbv_autocapitalize_characters","kbv_autocapitalize_none","kbv_autocapitalize_sentences","kbv_autocapitalize_words","kbv_returnkey_continue","kbv_returnkey_default","kbv_returnkey_done","kbv_returnkey_emergency","kbv_returnkey_go","kbv_returnkey_google","kbv_returnkey_join","kbv_returnkey_next","kbv_returnkey_route","kbv_returnkey_search","kbv_returnkey_send","kbv_returnkey_yahoo","kbv_type_ascii","kbv_type_default","kbv_type_email","kbv_type_numbers","kbv_type_phone","kbv_type_phone_name","kbv_type_url","layerelementtype_background","layerelementtype_instance","layerelementtype_oldtilemap","layerelementtype_particlesystem","layerelementtype_sprite","layerelementtype_tile","layerelementtype_tilemap","layerelementtype_undefined","lb_disp_none","lb_disp_numeric","lb_disp_time_ms","lb_disp_time_sec","lb_sort_ascending","lb_sort_descending","lb_sort_none","leaderboard_type_number","leaderboard_type_time_mins_secs","lighttype_dir","lighttype_point","local","matrix_projection","matrix_view","matrix_world","mb_any","mb_left","mb_middle","mb_none","mb_right","mip_markedonly","mip_off","mip_on","network_config_connect_timeout","network_config_disable_reliable_udp","network_config_enable_reliable_udp","network_config_use_non_blocking_socket","network_socket_bluetooth","network_socket_tcp","network_socket_udp","network_type_connect","network_type_data","network_type_disconnect","network_type_non_blocking_connect","of_challen","of_challenge_tie","of_challenge_win","os_3ds","os_android","os_bb10","os_ios","os_linux","os_macosx","os_ps3","os_ps4","os_psvita","os_switch","os_symbian","os_tizen","os_tvos","os_unknown","os_uwp","os_wiiu","os_win32","os_win8native","os_windows","os_winphone","os_xbox360","os_xboxone","other","ov_achievements","ov_community","ov_friends","ov_gamegroup","ov_players","ov_settings","path_action_continue","path_action_restart","path_action_reverse","path_action_stop","phy_debug_render_aabb","phy_debug_render_collision_pairs","phy_debug_render_coms","phy_debug_render_core_shapes","phy_debug_render_joints","phy_debug_render_obb","phy_debug_render_shapes","phy_joint_anchor_1_x","phy_joint_anchor_1_y","phy_joint_anchor_2_x","phy_joint_anchor_2_y","phy_joint_angle","phy_joint_angle_limits","phy_joint_damping_ratio","phy_joint_frequency","phy_joint_length_1","phy_joint_length_2","phy_joint_lower_angle_limit","phy_joint_max_force","phy_joint_max_length","phy_joint_max_motor_force","phy_joint_max_motor_torque","phy_joint_max_torque","phy_joint_motor_force","phy_joint_motor_speed","phy_joint_motor_torque","phy_joint_reaction_force_x","phy_joint_reaction_force_y","phy_joint_reaction_torque","phy_joint_speed","phy_joint_translation","phy_joint_upper_angle_limit","phy_particle_data_flag_category","phy_particle_data_flag_color","phy_particle_data_flag_colour","phy_particle_data_flag_position","phy_particle_data_flag_typeflags","phy_particle_data_flag_velocity","phy_particle_flag_colormixing","phy_particle_flag_colourmixing","phy_particle_flag_elastic","phy_particle_flag_powder","phy_particle_flag_spring","phy_particle_flag_tensile","phy_particle_flag_viscous","phy_particle_flag_wall","phy_particle_flag_water","phy_particle_flag_zombie","phy_particle_group_flag_rigid","phy_particle_group_flag_solid","pi","pr_linelist","pr_linestrip","pr_pointlist","pr_trianglefan","pr_trianglelist","pr_trianglestrip","ps_distr_gaussian","ps_distr_invgaussian","ps_distr_linear","ps_shape_diamond","ps_shape_ellipse","ps_shape_line","ps_shape_rectangle","pt_shape_circle","pt_shape_cloud","pt_shape_disk","pt_shape_explosion","pt_shape_flare","pt_shape_line","pt_shape_pixel","pt_shape_ring","pt_shape_smoke","pt_shape_snow","pt_shape_spark","pt_shape_sphere","pt_shape_square","pt_shape_star","spritespeed_framespergameframe","spritespeed_framespersecond","text_type","tf_anisotropic","tf_linear","tf_point","tile_flip","tile_index_mask","tile_mirror","tile_rotate","timezone_local","timezone_utc","tm_countvsyncs","tm_sleep","ty_real","ty_string","ugc_filetype_community","ugc_filetype_microtrans","ugc_list_Favorited","ugc_list_Followed","ugc_list_Published","ugc_list_Subscribed","ugc_list_UsedOrPlayed","ugc_list_VotedDown","ugc_list_VotedOn","ugc_list_VotedUp","ugc_list_WillVoteLater","ugc_match_AllGuides","ugc_match_Artwork","ugc_match_Collections","ugc_match_ControllerBindings","ugc_match_IntegratedGuides","ugc_match_Items","ugc_match_Items_Mtx","ugc_match_Items_ReadyToUse","ugc_match_Screenshots","ugc_match_UsableInGame","ugc_match_Videos","ugc_match_WebGuides","ugc_query_AcceptedForGameRankedByAcceptanceDate","ugc_query_CreatedByFollowedUsersRankedByPublicationDate","ugc_query_CreatedByFriendsRankedByPublicationDate","ugc_query_FavoritedByFriendsRankedByPublicationDate","ugc_query_NotYetRated","ugc_query_RankedByNumTimesReported","ugc_query_RankedByPublicationDate","ugc_query_RankedByTextSearch","ugc_query_RankedByTotalVotesAsc","ugc_query_RankedByTrend","ugc_query_RankedByVote","ugc_query_RankedByVotesUp","ugc_result_success","ugc_sortorder_CreationOrderAsc","ugc_sortorder_CreationOrderDesc","ugc_sortorder_ForModeration","ugc_sortorder_LastUpdatedDesc","ugc_sortorder_SubscriptionDateDesc","ugc_sortorder_TitleAsc","ugc_sortorder_VoteScoreDesc","ugc_visibility_friends_only","ugc_visibility_private","ugc_visibility_public","vertex_type_color","vertex_type_colour","vertex_type_float1","vertex_type_float2","vertex_type_float3","vertex_type_float4","vertex_type_ubyte4","vertex_usage_binormal","vertex_usage_blendindices","vertex_usage_blendweight","vertex_usage_color","vertex_usage_colour","vertex_usage_depth","vertex_usage_fog","vertex_usage_normal","vertex_usage_position","vertex_usage_psize","vertex_usage_sample","vertex_usage_tangent","vertex_usage_texcoord","vertex_usage_textcoord","vk_add","vk_alt","vk_anykey","vk_backspace","vk_control","vk_decimal","vk_delete","vk_divide","vk_down","vk_end","vk_enter","vk_escape","vk_f1","vk_f2","vk_f3","vk_f4","vk_f5","vk_f6","vk_f7","vk_f8","vk_f9","vk_f10","vk_f11","vk_f12","vk_home","vk_insert","vk_lalt","vk_lcontrol","vk_left","vk_lshift","vk_multiply","vk_nokey","vk_numpad0","vk_numpad1","vk_numpad2","vk_numpad3","vk_numpad4","vk_numpad5","vk_numpad6","vk_numpad7","vk_numpad8","vk_numpad9","vk_pagedown","vk_pageup","vk_pause","vk_printscreen","vk_ralt","vk_rcontrol","vk_return","vk_right","vk_rshift","vk_shift","vk_space","vk_subtract","vk_tab","vk_up"], +"variable.language":["alarm","application_surface","argument","argument0","argument1","argument2","argument3","argument4","argument5","argument6","argument7","argument8","argument9","argument10","argument11","argument12","argument13","argument14","argument15","argument_count","argument_relative","async_load","background_color","background_colour","background_showcolor","background_showcolour","bbox_bottom","bbox_left","bbox_right","bbox_top","browser_height","browser_width","caption_health","caption_lives","caption_score","current_day","current_hour","current_minute","current_month","current_second","current_time","current_weekday","current_year","cursor_sprite","debug_mode","delta_time","depth","direction","display_aa","error_last","error_occurred","event_action","event_data","event_number","event_object","event_type","fps","fps_real","friction","game_display_name","game_id","game_project_name","game_save_id","gamemaker_pro","gamemaker_registered","gamemaker_version","gravity","gravity_direction","health","hspeed","iap_data","id|0","image_alpha","image_angle","image_blend","image_index","image_number","image_speed","image_xscale","image_yscale","instance_count","instance_id","keyboard_key","keyboard_lastchar","keyboard_lastkey","keyboard_string","layer","lives","mask_index","mouse_button","mouse_lastbutton","mouse_x","mouse_y","object_index","os_browser","os_device","os_type","os_version","path_endaction","path_index","path_orientation","path_position","path_positionprevious","path_scale","path_speed","persistent","phy_active","phy_angular_damping","phy_angular_velocity","phy_bullet","phy_col_normal_x","phy_col_normal_y","phy_collision_points","phy_collision_x","phy_collision_y","phy_com_x","phy_com_y","phy_dynamic","phy_fixed_rotation","phy_inertia","phy_kinematic","phy_linear_damping","phy_linear_velocity_x","phy_linear_velocity_y","phy_mass","phy_position_x","phy_position_xprevious","phy_position_y","phy_position_yprevious","phy_rotation","phy_sleeping","phy_speed","phy_speed_x","phy_speed_y","program_directory","room","room_caption","room_first","room_height","room_last","room_persistent","room_speed","room_width","score","self","show_health","show_lives","show_score","solid","speed","sprite_height","sprite_index","sprite_width","sprite_xoffset","sprite_yoffset","temp_directory","timeline_index","timeline_loop","timeline_position","timeline_running","timeline_speed","view_angle","view_camera","view_current","view_enabled","view_hborder","view_hport","view_hspeed","view_hview","view_object","view_surface_id","view_vborder","view_visible","view_vspeed","view_wport","view_wview","view_xport","view_xview","view_yport","view_yview","visible","vspeed","webgl_enabled","working_directory","xprevious","xstart","x|0","yprevious","ystart","y|0"] +}, +contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE] +})})();hljs.registerLanguage("gml",e)})();/*! `go` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n={ +keyword:["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var"], +type:["bool","byte","complex64","complex128","error","float32","float64","int8","int16","int32","int64","string","uint8","uint16","uint32","uint64","int","uint","uintptr","rune"], +literal:["true","false","iota","nil"], +built_in:["append","cap","close","complex","copy","imag","len","make","new","panic","print","println","real","recover","delete"] +};return{name:"Go",aliases:["golang"],keywords:n,illegal:"</", +contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"string", +variants:[e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{begin:"`",end:"`"}]},{ +className:"number",variants:[{begin:e.C_NUMBER_RE+"[i]",relevance:1 +},e.C_NUMBER_MODE]},{begin:/:=/},{className:"function",beginKeywords:"func", +end:"\\s*(\\{|$)",excludeEnd:!0,contains:[e.TITLE_MODE,{className:"params", +begin:/\(/,end:/\)/,endsParent:!0,keywords:n,illegal:/["']/}]}]}}})() +;hljs.registerLanguage("go",e)})();/*! `autoit` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const t={variants:[e.COMMENT(";","$",{ +relevance:0 +}),e.COMMENT("#cs","#ce"),e.COMMENT("#comments-start","#comments-end")]},r={ +begin:"\\$[A-z0-9_]+"},i={className:"string",variants:[{begin:/"/,end:/"/, +contains:[{begin:/""/,relevance:0}]},{begin:/'/,end:/'/,contains:[{begin:/''/, +relevance:0}]}]},n={variants:[e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE]};return{ +name:"AutoIt",case_insensitive:!0,illegal:/\/\*/,keywords:{ +keyword:"ByRef Case Const ContinueCase ContinueLoop Dim Do Else ElseIf EndFunc EndIf EndSelect EndSwitch EndWith Enum Exit ExitLoop For Func Global If In Local Next ReDim Return Select Static Step Switch Then To Until Volatile WEnd While With", +built_in:"Abs ACos AdlibRegister AdlibUnRegister Asc AscW ASin Assign ATan AutoItSetOption AutoItWinGetTitle AutoItWinSetTitle Beep Binary BinaryLen BinaryMid BinaryToString BitAND BitNOT BitOR BitRotate BitShift BitXOR BlockInput Break Call CDTray Ceiling Chr ChrW ClipGet ClipPut ConsoleRead ConsoleWrite ConsoleWriteError ControlClick ControlCommand ControlDisable ControlEnable ControlFocus ControlGetFocus ControlGetHandle ControlGetPos ControlGetText ControlHide ControlListView ControlMove ControlSend ControlSetText ControlShow ControlTreeView Cos Dec DirCopy DirCreate DirGetSize DirMove DirRemove DllCall DllCallAddress DllCallbackFree DllCallbackGetPtr DllCallbackRegister DllClose DllOpen DllStructCreate DllStructGetData DllStructGetPtr DllStructGetSize DllStructSetData DriveGetDrive DriveGetFileSystem DriveGetLabel DriveGetSerial DriveGetType DriveMapAdd DriveMapDel DriveMapGet DriveSetLabel DriveSpaceFree DriveSpaceTotal DriveStatus EnvGet EnvSet EnvUpdate Eval Execute Exp FileChangeDir FileClose FileCopy FileCreateNTFSLink FileCreateShortcut FileDelete FileExists FileFindFirstFile FileFindNextFile FileFlush FileGetAttrib FileGetEncoding FileGetLongName FileGetPos FileGetShortcut FileGetShortName FileGetSize FileGetTime FileGetVersion FileInstall FileMove FileOpen FileOpenDialog FileRead FileReadLine FileReadToArray FileRecycle FileRecycleEmpty FileSaveDialog FileSelectFolder FileSetAttrib FileSetEnd FileSetPos FileSetTime FileWrite FileWriteLine Floor FtpSetProxy FuncName GUICreate GUICtrlCreateAvi GUICtrlCreateButton GUICtrlCreateCheckbox GUICtrlCreateCombo GUICtrlCreateContextMenu GUICtrlCreateDate GUICtrlCreateDummy GUICtrlCreateEdit GUICtrlCreateGraphic GUICtrlCreateGroup GUICtrlCreateIcon GUICtrlCreateInput GUICtrlCreateLabel GUICtrlCreateList GUICtrlCreateListView GUICtrlCreateListViewItem GUICtrlCreateMenu GUICtrlCreateMenuItem GUICtrlCreateMonthCal GUICtrlCreateObj GUICtrlCreatePic GUICtrlCreateProgress GUICtrlCreateRadio GUICtrlCreateSlider GUICtrlCreateTab GUICtrlCreateTabItem GUICtrlCreateTreeView GUICtrlCreateTreeViewItem GUICtrlCreateUpdown GUICtrlDelete GUICtrlGetHandle GUICtrlGetState GUICtrlRead GUICtrlRecvMsg GUICtrlRegisterListViewSort GUICtrlSendMsg GUICtrlSendToDummy GUICtrlSetBkColor GUICtrlSetColor GUICtrlSetCursor GUICtrlSetData GUICtrlSetDefBkColor GUICtrlSetDefColor GUICtrlSetFont GUICtrlSetGraphic GUICtrlSetImage GUICtrlSetLimit GUICtrlSetOnEvent GUICtrlSetPos GUICtrlSetResizing GUICtrlSetState GUICtrlSetStyle GUICtrlSetTip GUIDelete GUIGetCursorInfo GUIGetMsg GUIGetStyle GUIRegisterMsg GUISetAccelerators GUISetBkColor GUISetCoord GUISetCursor GUISetFont GUISetHelp GUISetIcon GUISetOnEvent GUISetState GUISetStyle GUIStartGroup GUISwitch Hex HotKeySet HttpSetProxy HttpSetUserAgent HWnd InetClose InetGet InetGetInfo InetGetSize InetRead IniDelete IniRead IniReadSection IniReadSectionNames IniRenameSection IniWrite IniWriteSection InputBox Int IsAdmin IsArray IsBinary IsBool IsDeclared IsDllStruct IsFloat IsFunc IsHWnd IsInt IsKeyword IsNumber IsObj IsPtr IsString Log MemGetStats Mod MouseClick MouseClickDrag MouseDown MouseGetCursor MouseGetPos MouseMove MouseUp MouseWheel MsgBox Number ObjCreate ObjCreateInterface ObjEvent ObjGet ObjName OnAutoItExitRegister OnAutoItExitUnRegister Ping PixelChecksum PixelGetColor PixelSearch ProcessClose ProcessExists ProcessGetStats ProcessList ProcessSetPriority ProcessWait ProcessWaitClose ProgressOff ProgressOn ProgressSet Ptr Random RegDelete RegEnumKey RegEnumVal RegRead RegWrite Round Run RunAs RunAsWait RunWait Send SendKeepActive SetError SetExtended ShellExecute ShellExecuteWait Shutdown Sin Sleep SoundPlay SoundSetWaveVolume SplashImageOn SplashOff SplashTextOn Sqrt SRandom StatusbarGetText StderrRead StdinWrite StdioClose StdoutRead String StringAddCR StringCompare StringFormat StringFromASCIIArray StringInStr StringIsAlNum StringIsAlpha StringIsASCII StringIsDigit StringIsFloat StringIsInt StringIsLower StringIsSpace StringIsUpper StringIsXDigit StringLeft StringLen StringLower StringMid StringRegExp StringRegExpReplace StringReplace StringReverse StringRight StringSplit StringStripCR StringStripWS StringToASCIIArray StringToBinary StringTrimLeft StringTrimRight StringUpper Tan TCPAccept TCPCloseSocket TCPConnect TCPListen TCPNameToIP TCPRecv TCPSend TCPShutdown, UDPShutdown TCPStartup, UDPStartup TimerDiff TimerInit ToolTip TrayCreateItem TrayCreateMenu TrayGetMsg TrayItemDelete TrayItemGetHandle TrayItemGetState TrayItemGetText TrayItemSetOnEvent TrayItemSetState TrayItemSetText TraySetClick TraySetIcon TraySetOnEvent TraySetPauseIcon TraySetState TraySetToolTip TrayTip UBound UDPBind UDPCloseSocket UDPOpen UDPRecv UDPSend VarGetType WinActivate WinActive WinClose WinExists WinFlash WinGetCaretPos WinGetClassList WinGetClientSize WinGetHandle WinGetPos WinGetProcess WinGetState WinGetText WinGetTitle WinKill WinList WinMenuSelectItem WinMinimizeAll WinMinimizeAllUndo WinMove WinSetOnTop WinSetState WinSetTitle WinSetTrans WinWait WinWaitActive WinWaitClose WinWaitNotActive", +literal:"True False And Null Not Or Default"},contains:[t,r,i,n,{ +className:"meta",begin:"#",end:"$",keywords:{ +keyword:["EndRegion","forcedef","forceref","ignorefunc","include","include-once","NoTrayIcon","OnAutoItStartRegister","pragma","Region","RequireAdmin","Tidy_Off","Tidy_On","Tidy_Parameters"] +},contains:[{begin:/\\\n/,relevance:0},{beginKeywords:"include",keywords:{ +keyword:"include"},end:"$",contains:[i,{className:"string",variants:[{begin:"<", +end:">"},{begin:/"/,end:/"/,contains:[{begin:/""/,relevance:0}]},{begin:/'/, +end:/'/,contains:[{begin:/''/,relevance:0}]}]}]},i,t]},{className:"symbol", +begin:"@[A-z0-9_]+"},{beginKeywords:"Func",end:"$",illegal:"\\$|\\[|%", +contains:[e.inherit(e.UNDERSCORE_TITLE_MODE,{className:"title.function"}),{ +className:"params",begin:"\\(",end:"\\)",contains:[r,i,n]}]}]}}})() +;hljs.registerLanguage("autoit",e)})();/*! `crmsh` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{ +const t="group clone ms master location colocation order fencing_topology rsc_ticket acl_target acl_group user role tag xml" +;return{name:"crmsh",aliases:["crm","pcmk"],case_insensitive:!0,keywords:{ +keyword:"params meta operations op rule attributes utilization read write deny defined not_defined in_range date spec in ref reference attribute type xpath version and or lt gt tag lte gte eq ne \\ number string", +literal:"Master Started Slave Stopped start promote demote stop monitor true false" +},contains:[e.HASH_COMMENT_MODE,{beginKeywords:"node",starts:{ +end:"\\s*([\\w_-]+:)?",starts:{className:"title",end:"\\s*[\\$\\w_][\\w_-]*"}} +},{beginKeywords:"primitive rsc_template",starts:{className:"title", +end:"\\s*[\\$\\w_][\\w_-]*",starts:{end:"\\s*@?[\\w_][\\w_\\.:-]*"}}},{ +begin:"\\b("+t.split(" ").join("|")+")\\s+",keywords:t,starts:{ +className:"title",end:"[\\$\\w_][\\w_-]*"}},{ +beginKeywords:"property rsc_defaults op_defaults",starts:{className:"title", +end:"\\s*([\\w_-]+:)?"}},e.QUOTE_STRING_MODE,{className:"meta", +begin:"(ocf|systemd|service|lsb):[\\w_:-]+",relevance:0},{className:"number", +begin:"\\b\\d+(\\.\\d+)?(ms|s|h|m)?",relevance:0},{className:"literal", +begin:"[-]?(infinity|inf)",relevance:0},{className:"attr", +begin:/([A-Za-z$_#][\w_-]+)=/,relevance:0},{className:"tag",begin:"</?", +end:"/?>",relevance:0}]}}})();hljs.registerLanguage("crmsh",e)})();/*! `profile` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Python profiler", +contains:[e.C_NUMBER_MODE,{begin:"[a-zA-Z_][\\da-zA-Z_]+\\.[\\da-zA-Z_]{1,3}", +end:":",excludeEnd:!0},{begin:"(ncalls|tottime|cumtime)",end:"$", +keywords:"ncalls tottime|10 cumtime|10 filename",relevance:10},{ +begin:"function calls",end:"$",contains:[e.C_NUMBER_MODE],relevance:10 +},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"string",begin:"\\(", +end:"\\)$",excludeBegin:!0,excludeEnd:!0,relevance:0}]})})() +;hljs.registerLanguage("profile",e)})();/*! `mel` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"MEL", +keywords:"int float string vector matrix if else switch case default while do for in break continue global proc return about abs addAttr addAttributeEditorNodeHelp addDynamic addNewShelfTab addPP addPanelCategory addPrefixToName advanceToNextDrivenKey affectedNet affects aimConstraint air alias aliasAttr align alignCtx alignCurve alignSurface allViewFit ambientLight angle angleBetween animCone animCurveEditor animDisplay animView annotate appendStringArray applicationName applyAttrPreset applyTake arcLenDimContext arcLengthDimension arclen arrayMapper art3dPaintCtx artAttrCtx artAttrPaintVertexCtx artAttrSkinPaintCtx artAttrTool artBuildPaintMenu artFluidAttrCtx artPuttyCtx artSelectCtx artSetPaintCtx artUserPaintCtx assignCommand assignInputDevice assignViewportFactories attachCurve attachDeviceAttr attachSurface attrColorSliderGrp attrCompatibility attrControlGrp attrEnumOptionMenu attrEnumOptionMenuGrp attrFieldGrp attrFieldSliderGrp attrNavigationControlGrp attrPresetEditWin attributeExists attributeInfo attributeMenu attributeQuery autoKeyframe autoPlace bakeClip bakeFluidShading bakePartialHistory bakeResults bakeSimulation basename basenameEx batchRender bessel bevel bevelPlus binMembership bindSkin blend2 blendShape blendShapeEditor blendShapePanel blendTwoAttr blindDataType boneLattice boundary boxDollyCtx boxZoomCtx bufferCurve buildBookmarkMenu buildKeyframeMenu button buttonManip CBG cacheFile cacheFileCombine cacheFileMerge cacheFileTrack camera cameraView canCreateManip canvas capitalizeString catch catchQuiet ceil changeSubdivComponentDisplayLevel changeSubdivRegion channelBox character characterMap characterOutlineEditor characterize chdir checkBox checkBoxGrp checkDefaultRenderGlobals choice circle circularFillet clamp clear clearCache clip clipEditor clipEditorCurrentTimeCtx clipSchedule clipSchedulerOutliner clipTrimBefore closeCurve closeSurface cluster cmdFileOutput cmdScrollFieldExecuter cmdScrollFieldReporter cmdShell coarsenSubdivSelectionList collision color colorAtPoint colorEditor colorIndex colorIndexSliderGrp colorSliderButtonGrp colorSliderGrp columnLayout commandEcho commandLine commandPort compactHairSystem componentEditor compositingInterop computePolysetVolume condition cone confirmDialog connectAttr connectControl connectDynamic connectJoint connectionInfo constrain constrainValue constructionHistory container containsMultibyte contextInfo control convertFromOldLayers convertIffToPsd convertLightmap convertSolidTx convertTessellation convertUnit copyArray copyFlexor copyKey copySkinWeights cos cpButton cpCache cpClothSet cpCollision cpConstraint cpConvClothToMesh cpForces cpGetSolverAttr cpPanel cpProperty cpRigidCollisionFilter cpSeam cpSetEdit cpSetSolverAttr cpSolver cpSolverTypes cpTool cpUpdateClothUVs createDisplayLayer createDrawCtx createEditor createLayeredPsdFile createMotionField createNewShelf createNode createRenderLayer createSubdivRegion cross crossProduct ctxAbort ctxCompletion ctxEditMode ctxTraverse currentCtx currentTime currentTimeCtx currentUnit curve curveAddPtCtx curveCVCtx curveEPCtx curveEditorCtx curveIntersect curveMoveEPCtx curveOnSurface curveSketchCtx cutKey cycleCheck cylinder dagPose date defaultLightListCheckBox defaultNavigation defineDataServer defineVirtualDevice deformer deg_to_rad delete deleteAttr deleteShadingGroupsAndMaterials deleteShelfTab deleteUI deleteUnusedBrushes delrandstr detachCurve detachDeviceAttr detachSurface deviceEditor devicePanel dgInfo dgdirty dgeval dgtimer dimWhen directKeyCtx directionalLight dirmap dirname disable disconnectAttr disconnectJoint diskCache displacementToPoly displayAffected displayColor displayCull displayLevelOfDetail displayPref displayRGBColor displaySmoothness displayStats displayString displaySurface distanceDimContext distanceDimension doBlur dolly dollyCtx dopeSheetEditor dot dotProduct doubleProfileBirailSurface drag dragAttrContext draggerContext dropoffLocator duplicate duplicateCurve duplicateSurface dynCache dynControl dynExport dynExpression dynGlobals dynPaintEditor dynParticleCtx dynPref dynRelEdPanel dynRelEditor dynamicLoad editAttrLimits editDisplayLayerGlobals editDisplayLayerMembers editRenderLayerAdjustment editRenderLayerGlobals editRenderLayerMembers editor editorTemplate effector emit emitter enableDevice encodeString endString endsWith env equivalent equivalentTol erf error eval evalDeferred evalEcho event exactWorldBoundingBox exclusiveLightCheckBox exec executeForEachObject exists exp expression expressionEditorListen extendCurve extendSurface extrude fcheck fclose feof fflush fgetline fgetword file fileBrowserDialog fileDialog fileExtension fileInfo filetest filletCurve filter filterCurve filterExpand filterStudioImport findAllIntersections findAnimCurves findKeyframe findMenuItem findRelatedSkinCluster finder firstParentOf fitBspline flexor floatEq floatField floatFieldGrp floatScrollBar floatSlider floatSlider2 floatSliderButtonGrp floatSliderGrp floor flow fluidCacheInfo fluidEmitter fluidVoxelInfo flushUndo fmod fontDialog fopen formLayout format fprint frameLayout fread freeFormFillet frewind fromNativePath fwrite gamma gauss geometryConstraint getApplicationVersionAsFloat getAttr getClassification getDefaultBrush getFileList getFluidAttr getInputDeviceRange getMayaPanelTypes getModifiers getPanel getParticleAttr getPluginResource getenv getpid glRender glRenderEditor globalStitch gmatch goal gotoBindPose grabColor gradientControl gradientControlNoAttr graphDollyCtx graphSelectContext graphTrackCtx gravity grid gridLayout group groupObjectsByName HfAddAttractorToAS HfAssignAS HfBuildEqualMap HfBuildFurFiles HfBuildFurImages HfCancelAFR HfConnectASToHF HfCreateAttractor HfDeleteAS HfEditAS HfPerformCreateAS HfRemoveAttractorFromAS HfSelectAttached HfSelectAttractors HfUnAssignAS hardenPointCurve hardware hardwareRenderPanel headsUpDisplay headsUpMessage help helpLine hermite hide hilite hitTest hotBox hotkey hotkeyCheck hsv_to_rgb hudButton hudSlider hudSliderButton hwReflectionMap hwRender hwRenderLoad hyperGraph hyperPanel hyperShade hypot iconTextButton iconTextCheckBox iconTextRadioButton iconTextRadioCollection iconTextScrollList iconTextStaticLabel ikHandle ikHandleCtx ikHandleDisplayScale ikSolver ikSplineHandleCtx ikSystem ikSystemInfo ikfkDisplayMethod illustratorCurves image imfPlugins inheritTransform insertJoint insertJointCtx insertKeyCtx insertKnotCurve insertKnotSurface instance instanceable instancer intField intFieldGrp intScrollBar intSlider intSliderGrp interToUI internalVar intersect iprEngine isAnimCurve isConnected isDirty isParentOf isSameObject isTrue isValidObjectName isValidString isValidUiName isolateSelect itemFilter itemFilterAttr itemFilterRender itemFilterType joint jointCluster jointCtx jointDisplayScale jointLattice keyTangent keyframe keyframeOutliner keyframeRegionCurrentTimeCtx keyframeRegionDirectKeyCtx keyframeRegionDollyCtx keyframeRegionInsertKeyCtx keyframeRegionMoveKeyCtx keyframeRegionScaleKeyCtx keyframeRegionSelectKeyCtx keyframeRegionSetKeyCtx keyframeRegionTrackCtx keyframeStats lassoContext lattice latticeDeformKeyCtx launch launchImageEditor layerButton layeredShaderPort layeredTexturePort layout layoutDialog lightList lightListEditor lightListPanel lightlink lineIntersection linearPrecision linstep listAnimatable listAttr listCameras listConnections listDeviceAttachments listHistory listInputDeviceAxes listInputDeviceButtons listInputDevices listMenuAnnotation listNodeTypes listPanelCategories listRelatives listSets listTransforms listUnselected listerEditor loadFluid loadNewShelf loadPlugin loadPluginLanguageResources loadPrefObjects localizedPanelLabel lockNode loft log longNameOf lookThru ls lsThroughFilter lsType lsUI Mayatomr mag makeIdentity makeLive makePaintable makeRoll makeSingleSurface makeTubeOn makebot manipMoveContext manipMoveLimitsCtx manipOptions manipRotateContext manipRotateLimitsCtx manipScaleContext manipScaleLimitsCtx marker match max memory menu menuBarLayout menuEditor menuItem menuItemToShelf menuSet menuSetPref messageLine min minimizeApp mirrorJoint modelCurrentTimeCtx modelEditor modelPanel mouse movIn movOut move moveIKtoFK moveKeyCtx moveVertexAlongDirection multiProfileBirailSurface mute nParticle nameCommand nameField namespace namespaceInfo newPanelItems newton nodeCast nodeIconButton nodeOutliner nodePreset nodeType noise nonLinear normalConstraint normalize nurbsBoolean nurbsCopyUVSet nurbsCube nurbsEditUV nurbsPlane nurbsSelect nurbsSquare nurbsToPoly nurbsToPolygonsPref nurbsToSubdiv nurbsToSubdivPref nurbsUVSet nurbsViewDirectionVector objExists objectCenter objectLayer objectType objectTypeUI obsoleteProc oceanNurbsPreviewPlane offsetCurve offsetCurveOnSurface offsetSurface openGLExtension openMayaPref optionMenu optionMenuGrp optionVar orbit orbitCtx orientConstraint outlinerEditor outlinerPanel overrideModifier paintEffectsDisplay pairBlend palettePort paneLayout panel panelConfiguration panelHistory paramDimContext paramDimension paramLocator parent parentConstraint particle particleExists particleInstancer particleRenderInfo partition pasteKey pathAnimation pause pclose percent performanceOptions pfxstrokes pickWalk picture pixelMove planarSrf plane play playbackOptions playblast plugAttr plugNode pluginInfo pluginResourceUtil pointConstraint pointCurveConstraint pointLight pointMatrixMult pointOnCurve pointOnSurface pointPosition poleVectorConstraint polyAppend polyAppendFacetCtx polyAppendVertex polyAutoProjection polyAverageNormal polyAverageVertex polyBevel polyBlendColor polyBlindData polyBoolOp polyBridgeEdge polyCacheMonitor polyCheck polyChipOff polyClipboard polyCloseBorder polyCollapseEdge polyCollapseFacet polyColorBlindData polyColorDel polyColorPerVertex polyColorSet polyCompare polyCone polyCopyUV polyCrease polyCreaseCtx polyCreateFacet polyCreateFacetCtx polyCube polyCut polyCutCtx polyCylinder polyCylindricalProjection polyDelEdge polyDelFacet polyDelVertex polyDuplicateAndConnect polyDuplicateEdge polyEditUV polyEditUVShell polyEvaluate polyExtrudeEdge polyExtrudeFacet polyExtrudeVertex polyFlipEdge polyFlipUV polyForceUV polyGeoSampler polyHelix polyInfo polyInstallAction polyLayoutUV polyListComponentConversion polyMapCut polyMapDel polyMapSew polyMapSewMove polyMergeEdge polyMergeEdgeCtx polyMergeFacet polyMergeFacetCtx polyMergeUV polyMergeVertex polyMirrorFace polyMoveEdge polyMoveFacet polyMoveFacetUV polyMoveUV polyMoveVertex polyNormal polyNormalPerVertex polyNormalizeUV polyOptUvs polyOptions polyOutput polyPipe polyPlanarProjection polyPlane polyPlatonicSolid polyPoke polyPrimitive polyPrism polyProjection polyPyramid polyQuad polyQueryBlindData polyReduce polySelect polySelectConstraint polySelectConstraintMonitor polySelectCtx polySelectEditCtx polySeparate polySetToFaceNormal polySewEdge polyShortestPathCtx polySmooth polySoftEdge polySphere polySphericalProjection polySplit polySplitCtx polySplitEdge polySplitRing polySplitVertex polyStraightenUVBorder polySubdivideEdge polySubdivideFacet polyToSubdiv polyTorus polyTransfer polyTriangulate polyUVSet polyUnite polyWedgeFace popen popupMenu pose pow preloadRefEd print progressBar progressWindow projFileViewer projectCurve projectTangent projectionContext projectionManip promptDialog propModCtx propMove psdChannelOutliner psdEditTextureFile psdExport psdTextureFile putenv pwd python querySubdiv quit rad_to_deg radial radioButton radioButtonGrp radioCollection radioMenuItemCollection rampColorPort rand randomizeFollicles randstate rangeControl readTake rebuildCurve rebuildSurface recordAttr recordDevice redo reference referenceEdit referenceQuery refineSubdivSelectionList refresh refreshAE registerPluginResource rehash reloadImage removeJoint removeMultiInstance removePanelCategory rename renameAttr renameSelectionList renameUI render renderGlobalsNode renderInfo renderLayerButton renderLayerParent renderLayerPostProcess renderLayerUnparent renderManip renderPartition renderQualityNode renderSettings renderThumbnailUpdate renderWindowEditor renderWindowSelectContext renderer reorder reorderDeformers requires reroot resampleFluid resetAE resetPfxToPolyCamera resetTool resolutionNode retarget reverseCurve reverseSurface revolve rgb_to_hsv rigidBody rigidSolver roll rollCtx rootOf rot rotate rotationInterpolation roundConstantRadius rowColumnLayout rowLayout runTimeCommand runup sampleImage saveAllShelves saveAttrPreset saveFluid saveImage saveInitialState saveMenu savePrefObjects savePrefs saveShelf saveToolSettings scale scaleBrushBrightness scaleComponents scaleConstraint scaleKey scaleKeyCtx sceneEditor sceneUIReplacement scmh scriptCtx scriptEditorInfo scriptJob scriptNode scriptTable scriptToShelf scriptedPanel scriptedPanelType scrollField scrollLayout sculpt searchPathArray seed selLoadSettings select selectContext selectCurveCV selectKey selectKeyCtx selectKeyframeRegionCtx selectMode selectPref selectPriority selectType selectedNodes selectionConnection separator setAttr setAttrEnumResource setAttrMapping setAttrNiceNameResource setConstraintRestPosition setDefaultShadingGroup setDrivenKeyframe setDynamic setEditCtx setEditor setFluidAttr setFocus setInfinity setInputDeviceMapping setKeyCtx setKeyPath setKeyframe setKeyframeBlendshapeTargetWts setMenuMode setNodeNiceNameResource setNodeTypeFlag setParent setParticleAttr setPfxToPolyCamera setPluginResource setProject setStampDensity setStartupMessage setState setToolTo setUITemplate setXformManip sets shadingConnection shadingGeometryRelCtx shadingLightRelCtx shadingNetworkCompare shadingNode shapeCompare shelfButton shelfLayout shelfTabLayout shellField shortNameOf showHelp showHidden showManipCtx showSelectionInTitle showShadingGroupAttrEditor showWindow sign simplify sin singleProfileBirailSurface size sizeBytes skinCluster skinPercent smoothCurve smoothTangentSurface smoothstep snap2to2 snapKey snapMode snapTogetherCtx snapshot soft softMod softModCtx sort sound soundControl source spaceLocator sphere sphrand spotLight spotLightPreviewPort spreadSheetEditor spring sqrt squareSurface srtContext stackTrace startString startsWith stitchAndExplodeShell stitchSurface stitchSurfacePoints strcmp stringArrayCatenate stringArrayContains stringArrayCount stringArrayInsertAtIndex stringArrayIntersector stringArrayRemove stringArrayRemoveAtIndex stringArrayRemoveDuplicates stringArrayRemoveExact stringArrayToString stringToStringArray strip stripPrefixFromName stroke subdAutoProjection subdCleanTopology subdCollapse subdDuplicateAndConnect subdEditUV subdListComponentConversion subdMapCut subdMapSewMove subdMatchTopology subdMirror subdToBlind subdToPoly subdTransferUVsToCache subdiv subdivCrease subdivDisplaySmoothness substitute substituteAllString substituteGeometry substring surface surfaceSampler surfaceShaderList swatchDisplayPort switchTable symbolButton symbolCheckBox sysFile system tabLayout tan tangentConstraint texLatticeDeformContext texManipContext texMoveContext texMoveUVShellContext texRotateContext texScaleContext texSelectContext texSelectShortestPathCtx texSmudgeUVContext texWinToolCtx text textCurves textField textFieldButtonGrp textFieldGrp textManip textScrollList textToShelf textureDisplacePlane textureHairColor texturePlacementContext textureWindow threadCount threePointArcCtx timeControl timePort timerX toNativePath toggle toggleAxis toggleWindowVisibility tokenize tokenizeList tolerance tolower toolButton toolCollection toolDropped toolHasOptions toolPropertyWindow torus toupper trace track trackCtx transferAttributes transformCompare transformLimits translator trim trunc truncateFluidCache truncateHairCache tumble tumbleCtx turbulence twoPointArcCtx uiRes uiTemplate unassignInputDevice undo undoInfo ungroup uniform unit unloadPlugin untangleUV untitledFileName untrim upAxis updateAE userCtx uvLink uvSnapshot validateShelfName vectorize view2dToolCtx viewCamera viewClipPlane viewFit viewHeadOn viewLookAt viewManip viewPlace viewSet visor volumeAxis vortex waitCursor warning webBrowser webBrowserPrefs whatIs window windowPref wire wireContext workspace wrinkle wrinkleContext writeTake xbmLangPathList xform", +illegal:"</",contains:[e.C_NUMBER_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{ +className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE]},{ +begin:/[$%@](\^\w\b|#\w+|[^\s\w{]|\{\w+\}|\w+)/ +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]})})() +;hljs.registerLanguage("mel",e)})();/*! `kotlin` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict" +;var e="\\.([0-9](_*[0-9])*)",n="[0-9a-fA-F](_*[0-9a-fA-F])*",a={ +className:"number",variants:[{ +begin:`(\\b([0-9](_*[0-9])*)((${e})|\\.)?|(${e}))[eE][+-]?([0-9](_*[0-9])*)[fFdD]?\\b` +},{begin:`\\b([0-9](_*[0-9])*)((${e})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{ +begin:`(${e})[fFdD]?\\b`},{begin:"\\b([0-9](_*[0-9])*)[fFdD]\\b"},{ +begin:`\\b0[xX]((${n})\\.?|(${n})?\\.(${n}))[pP][+-]?([0-9](_*[0-9])*)[fFdD]?\\b` +},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${n})[lL]?\\b`},{ +begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}], +relevance:0};return e=>{const n={ +keyword:"abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual", +built_in:"Byte Short Char Int Long Boolean Float Double Void Unit Nothing", +literal:"true false null"},i={className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"@" +},s={className:"subst",begin:/\$\{/,end:/\}/,contains:[e.C_NUMBER_MODE]},t={ +className:"variable",begin:"\\$"+e.UNDERSCORE_IDENT_RE},r={className:"string", +variants:[{begin:'"""',end:'"""(?=[^"])',contains:[t,s]},{begin:"'",end:"'", +illegal:/\n/,contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/, +contains:[e.BACKSLASH_ESCAPE,t,s]}]};s.contains.push(r);const l={ +className:"meta", +begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+e.UNDERSCORE_IDENT_RE+")?" +},c={className:"meta",begin:"@"+e.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/, +end:/\)/,contains:[e.inherit(r,{className:"string"}),"self"]}] +},o=a,b=e.COMMENT("/\\*","\\*/",{contains:[e.C_BLOCK_COMMENT_MODE]}),E={ +variants:[{className:"type",begin:e.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/, +contains:[]}]},d=E;return d.variants[1].contains=[E],E.variants[1].contains=[d], +{name:"Kotlin",aliases:["kt","kts"],keywords:n, +contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag", +begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,b,{className:"keyword", +begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol", +begin:/@\w+/}]}},i,l,c,{className:"function",beginKeywords:"fun",end:"[(]|$", +returnBegin:!0,excludeEnd:!0,keywords:n,relevance:5,contains:[{ +begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0, +contains:[e.UNDERSCORE_TITLE_MODE]},{className:"type",begin:/</,end:/>/, +keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/, +endsParent:!0,keywords:n,relevance:0,contains:[{begin:/:/,end:/[=,\/]/, +endsWithParent:!0,contains:[E,e.C_LINE_COMMENT_MODE,b],relevance:0 +},e.C_LINE_COMMENT_MODE,b,l,c,r,e.C_NUMBER_MODE]},b]},{ +begin:[/class|interface|trait/,/\s+/,e.UNDERSCORE_IDENT_RE],beginScope:{ +3:"title.class"},keywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0, +illegal:"extends implements",contains:[{ +beginKeywords:"public protected internal private constructor" +},e.UNDERSCORE_TITLE_MODE,{className:"type",begin:/</,end:/>/,excludeBegin:!0, +excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,){\s]|$/, +excludeBegin:!0,returnEnd:!0},l,c]},r,{className:"meta",begin:"^#!/usr/bin/env", +end:"$",illegal:"\n"},o]}}})();hljs.registerLanguage("kotlin",e)})();/*! `armasm` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var s=(()=>{"use strict";return s=>{const e={ +variants:[s.COMMENT("^[ \\t]*(?=#)","$",{relevance:0,excludeBegin:!0 +}),s.COMMENT("[;@]","$",{relevance:0 +}),s.C_LINE_COMMENT_MODE,s.C_BLOCK_COMMENT_MODE]};return{name:"ARM Assembly", +case_insensitive:!0,aliases:["arm"],keywords:{$pattern:"\\.?"+s.IDENT_RE, +meta:".2byte .4byte .align .ascii .asciz .balign .byte .code .data .else .end .endif .endm .endr .equ .err .exitm .extern .global .hword .if .ifdef .ifndef .include .irp .long .macro .rept .req .section .set .skip .space .text .word .arm .thumb .code16 .code32 .force_thumb .thumb_func .ltorg ALIAS ALIGN ARM AREA ASSERT ATTR CN CODE CODE16 CODE32 COMMON CP DATA DCB DCD DCDU DCDO DCFD DCFDU DCI DCQ DCQU DCW DCWU DN ELIF ELSE END ENDFUNC ENDIF ENDP ENTRY EQU EXPORT EXPORTAS EXTERN FIELD FILL FUNCTION GBLA GBLL GBLS GET GLOBAL IF IMPORT INCBIN INCLUDE INFO KEEP LCLA LCLL LCLS LTORG MACRO MAP MEND MEXIT NOFP OPT PRESERVE8 PROC QN READONLY RELOC REQUIRE REQUIRE8 RLIST FN ROUT SETA SETL SETS SN SPACE SUBT THUMB THUMBX TTL WHILE WEND ", +built_in:"r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 pc lr sp ip sl sb fp a1 a2 a3 a4 v1 v2 v3 v4 v5 v6 v7 v8 f0 f1 f2 f3 f4 f5 f6 f7 p0 p1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12 p13 p14 p15 c0 c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 c12 c13 c14 c15 q0 q1 q2 q3 q4 q5 q6 q7 q8 q9 q10 q11 q12 q13 q14 q15 cpsr_c cpsr_x cpsr_s cpsr_f cpsr_cx cpsr_cxs cpsr_xs cpsr_xsf cpsr_sf cpsr_cxsf spsr_c spsr_x spsr_s spsr_f spsr_cx spsr_cxs spsr_xs spsr_xsf spsr_sf spsr_cxsf s0 s1 s2 s3 s4 s5 s6 s7 s8 s9 s10 s11 s12 s13 s14 s15 s16 s17 s18 s19 s20 s21 s22 s23 s24 s25 s26 s27 s28 s29 s30 s31 d0 d1 d2 d3 d4 d5 d6 d7 d8 d9 d10 d11 d12 d13 d14 d15 d16 d17 d18 d19 d20 d21 d22 d23 d24 d25 d26 d27 d28 d29 d30 d31 {PC} {VAR} {TRUE} {FALSE} {OPT} {CONFIG} {ENDIAN} {CODESIZE} {CPU} {FPU} {ARCHITECTURE} {PCSTOREOFFSET} {ARMASM_VERSION} {INTER} {ROPI} {RWPI} {SWST} {NOSWST} . @" +},contains:[{className:"keyword", +begin:"\\b(adc|(qd?|sh?|u[qh]?)?add(8|16)?|usada?8|(q|sh?|u[qh]?)?(as|sa)x|and|adrl?|sbc|rs[bc]|asr|b[lx]?|blx|bxj|cbn?z|tb[bh]|bic|bfc|bfi|[su]bfx|bkpt|cdp2?|clz|clrex|cmp|cmn|cpsi[ed]|cps|setend|dbg|dmb|dsb|eor|isb|it[te]{0,3}|lsl|lsr|ror|rrx|ldm(([id][ab])|f[ds])?|ldr((s|ex)?[bhd])?|movt?|mvn|mra|mar|mul|[us]mull|smul[bwt][bt]|smu[as]d|smmul|smmla|mla|umlaal|smlal?([wbt][bt]|d)|mls|smlsl?[ds]|smc|svc|sev|mia([bt]{2}|ph)?|mrr?c2?|mcrr2?|mrs|msr|orr|orn|pkh(tb|bt)|rbit|rev(16|sh)?|sel|[su]sat(16)?|nop|pop|push|rfe([id][ab])?|stm([id][ab])?|str(ex)?[bhd]?|(qd?)?sub|(sh?|q|u[qh]?)?sub(8|16)|[su]xt(a?h|a?b(16)?)|srs([id][ab])?|swpb?|swi|smi|tst|teq|wfe|wfi|yield)(eq|ne|cs|cc|mi|pl|vs|vc|hi|ls|ge|lt|gt|le|al|hs|lo)?[sptrx]?(?=\\s)" +},e,s.QUOTE_STRING_MODE,{className:"string",begin:"'",end:"[^\\\\]'",relevance:0 +},{className:"title",begin:"\\|",end:"\\|",illegal:"\\n",relevance:0},{ +className:"number",variants:[{begin:"[#$=]?0x[0-9a-f]+"},{begin:"[#$=]?0b[01]+" +},{begin:"[#$=]\\d+"},{begin:"\\b\\d+"}],relevance:0},{className:"symbol", +variants:[{begin:"^[ \\t]*[a-z_\\.\\$][a-z0-9_\\.\\$]+:"},{ +begin:"^[a-z_\\.\\$][a-z0-9_\\.\\$]+"},{begin:"[=#]\\w+"}],relevance:0}]}}})() +;hljs.registerLanguage("armasm",s)})();/*! `moonscript` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n={ +keyword:"if then not for in while do return else elseif break continue switch and or unless when class extends super local import export from using", +literal:"true false nil", +built_in:"_G _VERSION assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring module next pairs pcall print rawequal rawget rawset require select setfenv setmetatable tonumber tostring type unpack xpcall coroutine debug io math os package string table" +},s="[A-Za-z$_][0-9A-Za-z$_]*",a={className:"subst",begin:/#\{/,end:/\}/, +keywords:n},t=[e.inherit(e.C_NUMBER_MODE,{starts:{end:"(\\s*/)?",relevance:0} +}),{className:"string",variants:[{begin:/'/,end:/'/, +contains:[e.BACKSLASH_ESCAPE]},{begin:/"/,end:/"/, +contains:[e.BACKSLASH_ESCAPE,a]}]},{className:"built_in",begin:"@__"+e.IDENT_RE +},{begin:"@"+e.IDENT_RE},{begin:e.IDENT_RE+"\\\\"+e.IDENT_RE}];a.contains=t +;const i=e.inherit(e.TITLE_MODE,{begin:s}),r="(\\(.*\\)\\s*)?\\B[-=]>",l={ +className:"params",begin:"\\([^\\(]",returnBegin:!0,contains:[{begin:/\(/, +end:/\)/,keywords:n,contains:["self"].concat(t)}]};return{name:"MoonScript", +aliases:["moon"],keywords:n,illegal:/\/\*/, +contains:t.concat([e.COMMENT("--","$"),{className:"function", +begin:"^\\s*"+s+"\\s*=\\s*"+r,end:"[-=]>",returnBegin:!0,contains:[i,l]},{ +begin:/[\(,:=]\s*/,relevance:0,contains:[{className:"function",begin:r, +end:"[-=]>",returnBegin:!0,contains:[l]}]},{className:"class", +beginKeywords:"class",end:"$",illegal:/[:="\[\]]/,contains:[{ +beginKeywords:"extends",endsWithParent:!0,illegal:/[:="\[\]]/,contains:[i]},i] +},{className:"name",begin:s+":",end:":",returnBegin:!0,returnEnd:!0,relevance:0 +}])}}})();hljs.registerLanguage("moonscript",e)})();/*! `mipsasm` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"MIPS Assembly", +case_insensitive:!0,aliases:["mips"],keywords:{$pattern:"\\.?"+e.IDENT_RE, +meta:".2byte .4byte .align .ascii .asciz .balign .byte .code .data .else .end .endif .endm .endr .equ .err .exitm .extern .global .hword .if .ifdef .ifndef .include .irp .long .macro .rept .req .section .set .skip .space .text .word .ltorg ", +built_in:"$0 $1 $2 $3 $4 $5 $6 $7 $8 $9 $10 $11 $12 $13 $14 $15 $16 $17 $18 $19 $20 $21 $22 $23 $24 $25 $26 $27 $28 $29 $30 $31 zero at v0 v1 a0 a1 a2 a3 a4 a5 a6 a7 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 s0 s1 s2 s3 s4 s5 s6 s7 s8 k0 k1 gp sp fp ra $f0 $f1 $f2 $f2 $f4 $f5 $f6 $f7 $f8 $f9 $f10 $f11 $f12 $f13 $f14 $f15 $f16 $f17 $f18 $f19 $f20 $f21 $f22 $f23 $f24 $f25 $f26 $f27 $f28 $f29 $f30 $f31 Context Random EntryLo0 EntryLo1 Context PageMask Wired EntryHi HWREna BadVAddr Count Compare SR IntCtl SRSCtl SRSMap Cause EPC PRId EBase Config Config1 Config2 Config3 LLAddr Debug DEPC DESAVE CacheErr ECC ErrorEPC TagLo DataLo TagHi DataHi WatchLo WatchHi PerfCtl PerfCnt " +},contains:[{className:"keyword", +begin:"\\b(addi?u?|andi?|b(al)?|beql?|bgez(al)?l?|bgtzl?|blezl?|bltz(al)?l?|bnel?|cl[oz]|divu?|ext|ins|j(al)?|jalr(\\.hb)?|jr(\\.hb)?|lbu?|lhu?|ll|lui|lw[lr]?|maddu?|mfhi|mflo|movn|movz|move|msubu?|mthi|mtlo|mul|multu?|nop|nor|ori?|rotrv?|sb|sc|se[bh]|sh|sllv?|slti?u?|srav?|srlv?|subu?|sw[lr]?|xori?|wsbh|abs\\.[sd]|add\\.[sd]|alnv.ps|bc1[ft]l?|c\\.(s?f|un|u?eq|[ou]lt|[ou]le|ngle?|seq|l[et]|ng[et])\\.[sd]|(ceil|floor|round|trunc)\\.[lw]\\.[sd]|cfc1|cvt\\.d\\.[lsw]|cvt\\.l\\.[dsw]|cvt\\.ps\\.s|cvt\\.s\\.[dlw]|cvt\\.s\\.p[lu]|cvt\\.w\\.[dls]|div\\.[ds]|ldx?c1|luxc1|lwx?c1|madd\\.[sd]|mfc1|mov[fntz]?\\.[ds]|msub\\.[sd]|mth?c1|mul\\.[ds]|neg\\.[ds]|nmadd\\.[ds]|nmsub\\.[ds]|p[lu][lu]\\.ps|recip\\.fmt|r?sqrt\\.[ds]|sdx?c1|sub\\.[ds]|suxc1|swx?c1|break|cache|d?eret|[de]i|ehb|mfc0|mtc0|pause|prefx?|rdhwr|rdpgpr|sdbbp|ssnop|synci?|syscall|teqi?|tgei?u?|tlb(p|r|w[ir])|tlti?u?|tnei?|wait|wrpgpr)", +end:"\\s" +},e.COMMENT("[;#](?!\\s*$)","$"),e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,{ +className:"string",begin:"'",end:"[^\\\\]'",relevance:0},{className:"title", +begin:"\\|",end:"\\|",illegal:"\\n",relevance:0},{className:"number",variants:[{ +begin:"0x[0-9a-f]+"},{begin:"\\b-?\\d+"}],relevance:0},{className:"symbol", +variants:[{begin:"^\\s*[a-z_\\.\\$][a-z0-9_\\.\\$]+:"},{begin:"^\\s*[0-9]+:"},{ +begin:"[0-9]+[bf]"}],relevance:0}],illegal:/\//})})() +;hljs.registerLanguage("mipsasm",e)})();/*! `openscad` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n={className:"keyword", +begin:"\\$(f[asn]|t|vp[rtd]|children)"},r={className:"number", +begin:"\\b\\d+(\\.\\d+)?(e-?\\d+)?",relevance:0 +},s=e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),a={className:"function", +beginKeywords:"module function",end:/=|\{/,contains:[{className:"params", +begin:"\\(",end:"\\)",contains:["self",r,s,n,{className:"literal", +begin:"false|true|PI|undef"}]},e.UNDERSCORE_TITLE_MODE]};return{name:"OpenSCAD", +aliases:["scad"],keywords:{ +keyword:"function module include use for intersection_for if else \\%", +literal:"false true PI undef", +built_in:"circle square polygon text sphere cube cylinder polyhedron translate rotate scale resize mirror multmatrix color offset hull minkowski union difference intersection abs sign sin cos tan acos asin atan atan2 floor round ceil ln log pow sqrt exp rands min max concat lookup str chr search version version_num norm cross parent_module echo import import_dxf dxf_linear_extrude linear_extrude rotate_extrude surface projection render children dxf_cross dxf_dim let assign" +},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,r,{className:"meta", +keywords:{keyword:"include use"},begin:"include|use <",end:">"},s,n,{ +begin:"[*!#%]",relevance:0},a]}}})();hljs.registerLanguage("openscad",e)})();/*! `mathematica` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict" +;const e=["AASTriangle","AbelianGroup","Abort","AbortKernels","AbortProtect","AbortScheduledTask","Above","Abs","AbsArg","AbsArgPlot","Absolute","AbsoluteCorrelation","AbsoluteCorrelationFunction","AbsoluteCurrentValue","AbsoluteDashing","AbsoluteFileName","AbsoluteOptions","AbsolutePointSize","AbsoluteThickness","AbsoluteTime","AbsoluteTiming","AcceptanceThreshold","AccountingForm","Accumulate","Accuracy","AccuracyGoal","ActionDelay","ActionMenu","ActionMenuBox","ActionMenuBoxOptions","Activate","Active","ActiveClassification","ActiveClassificationObject","ActiveItem","ActivePrediction","ActivePredictionObject","ActiveStyle","AcyclicGraphQ","AddOnHelpPath","AddSides","AddTo","AddToSearchIndex","AddUsers","AdjacencyGraph","AdjacencyList","AdjacencyMatrix","AdjacentMeshCells","AdjustmentBox","AdjustmentBoxOptions","AdjustTimeSeriesForecast","AdministrativeDivisionData","AffineHalfSpace","AffineSpace","AffineStateSpaceModel","AffineTransform","After","AggregatedEntityClass","AggregationLayer","AircraftData","AirportData","AirPressureData","AirTemperatureData","AiryAi","AiryAiPrime","AiryAiZero","AiryBi","AiryBiPrime","AiryBiZero","AlgebraicIntegerQ","AlgebraicNumber","AlgebraicNumberDenominator","AlgebraicNumberNorm","AlgebraicNumberPolynomial","AlgebraicNumberTrace","AlgebraicRules","AlgebraicRulesData","Algebraics","AlgebraicUnitQ","Alignment","AlignmentMarker","AlignmentPoint","All","AllowAdultContent","AllowedCloudExtraParameters","AllowedCloudParameterExtensions","AllowedDimensions","AllowedFrequencyRange","AllowedHeads","AllowGroupClose","AllowIncomplete","AllowInlineCells","AllowKernelInitialization","AllowLooseGrammar","AllowReverseGroupClose","AllowScriptLevelChange","AllowVersionUpdate","AllTrue","Alphabet","AlphabeticOrder","AlphabeticSort","AlphaChannel","AlternateImage","AlternatingFactorial","AlternatingGroup","AlternativeHypothesis","Alternatives","AltitudeMethod","AmbientLight","AmbiguityFunction","AmbiguityList","Analytic","AnatomyData","AnatomyForm","AnatomyPlot3D","AnatomySkinStyle","AnatomyStyling","AnchoredSearch","And","AndersonDarlingTest","AngerJ","AngleBisector","AngleBracket","AnglePath","AnglePath3D","AngleVector","AngularGauge","Animate","AnimationCycleOffset","AnimationCycleRepetitions","AnimationDirection","AnimationDisplayTime","AnimationRate","AnimationRepetitions","AnimationRunning","AnimationRunTime","AnimationTimeIndex","Animator","AnimatorBox","AnimatorBoxOptions","AnimatorElements","Annotate","Annotation","AnnotationDelete","AnnotationKeys","AnnotationRules","AnnotationValue","Annuity","AnnuityDue","Annulus","AnomalyDetection","AnomalyDetector","AnomalyDetectorFunction","Anonymous","Antialiasing","AntihermitianMatrixQ","Antisymmetric","AntisymmetricMatrixQ","Antonyms","AnyOrder","AnySubset","AnyTrue","Apart","ApartSquareFree","APIFunction","Appearance","AppearanceElements","AppearanceRules","AppellF1","Append","AppendCheck","AppendLayer","AppendTo","Apply","ApplySides","ArcCos","ArcCosh","ArcCot","ArcCoth","ArcCsc","ArcCsch","ArcCurvature","ARCHProcess","ArcLength","ArcSec","ArcSech","ArcSin","ArcSinDistribution","ArcSinh","ArcTan","ArcTanh","Area","Arg","ArgMax","ArgMin","ArgumentCountQ","ARIMAProcess","ArithmeticGeometricMean","ARMAProcess","Around","AroundReplace","ARProcess","Array","ArrayComponents","ArrayDepth","ArrayFilter","ArrayFlatten","ArrayMesh","ArrayPad","ArrayPlot","ArrayQ","ArrayResample","ArrayReshape","ArrayRules","Arrays","Arrow","Arrow3DBox","ArrowBox","Arrowheads","ASATriangle","Ask","AskAppend","AskConfirm","AskDisplay","AskedQ","AskedValue","AskFunction","AskState","AskTemplateDisplay","AspectRatio","AspectRatioFixed","Assert","AssociateTo","Association","AssociationFormat","AssociationMap","AssociationQ","AssociationThread","AssumeDeterministic","Assuming","Assumptions","AstronomicalData","Asymptotic","AsymptoticDSolveValue","AsymptoticEqual","AsymptoticEquivalent","AsymptoticGreater","AsymptoticGreaterEqual","AsymptoticIntegrate","AsymptoticLess","AsymptoticLessEqual","AsymptoticOutputTracker","AsymptoticProduct","AsymptoticRSolveValue","AsymptoticSolve","AsymptoticSum","Asynchronous","AsynchronousTaskObject","AsynchronousTasks","Atom","AtomCoordinates","AtomCount","AtomDiagramCoordinates","AtomList","AtomQ","AttentionLayer","Attributes","Audio","AudioAmplify","AudioAnnotate","AudioAnnotationLookup","AudioBlockMap","AudioCapture","AudioChannelAssignment","AudioChannelCombine","AudioChannelMix","AudioChannels","AudioChannelSeparate","AudioData","AudioDelay","AudioDelete","AudioDevice","AudioDistance","AudioEncoding","AudioFade","AudioFrequencyShift","AudioGenerator","AudioIdentify","AudioInputDevice","AudioInsert","AudioInstanceQ","AudioIntervals","AudioJoin","AudioLabel","AudioLength","AudioLocalMeasurements","AudioLooping","AudioLoudness","AudioMeasurements","AudioNormalize","AudioOutputDevice","AudioOverlay","AudioPad","AudioPan","AudioPartition","AudioPause","AudioPitchShift","AudioPlay","AudioPlot","AudioQ","AudioRecord","AudioReplace","AudioResample","AudioReverb","AudioReverse","AudioSampleRate","AudioSpectralMap","AudioSpectralTransformation","AudioSplit","AudioStop","AudioStream","AudioStreams","AudioTimeStretch","AudioTracks","AudioTrim","AudioType","AugmentedPolyhedron","AugmentedSymmetricPolynomial","Authenticate","Authentication","AuthenticationDialog","AutoAction","Autocomplete","AutocompletionFunction","AutoCopy","AutocorrelationTest","AutoDelete","AutoEvaluateEvents","AutoGeneratedPackage","AutoIndent","AutoIndentSpacings","AutoItalicWords","AutoloadPath","AutoMatch","Automatic","AutomaticImageSize","AutoMultiplicationSymbol","AutoNumberFormatting","AutoOpenNotebooks","AutoOpenPalettes","AutoQuoteCharacters","AutoRefreshed","AutoRemove","AutorunSequencing","AutoScaling","AutoScroll","AutoSpacing","AutoStyleOptions","AutoStyleWords","AutoSubmitting","Axes","AxesEdge","AxesLabel","AxesOrigin","AxesStyle","AxiomaticTheory","Axis","BabyMonsterGroupB","Back","Background","BackgroundAppearance","BackgroundTasksSettings","Backslash","Backsubstitution","Backward","Ball","Band","BandpassFilter","BandstopFilter","BarabasiAlbertGraphDistribution","BarChart","BarChart3D","BarcodeImage","BarcodeRecognize","BaringhausHenzeTest","BarLegend","BarlowProschanImportance","BarnesG","BarOrigin","BarSpacing","BartlettHannWindow","BartlettWindow","BaseDecode","BaseEncode","BaseForm","Baseline","BaselinePosition","BaseStyle","BasicRecurrentLayer","BatchNormalizationLayer","BatchSize","BatesDistribution","BattleLemarieWavelet","BayesianMaximization","BayesianMaximizationObject","BayesianMinimization","BayesianMinimizationObject","Because","BeckmannDistribution","Beep","Before","Begin","BeginDialogPacket","BeginFrontEndInteractionPacket","BeginPackage","BellB","BellY","Below","BenfordDistribution","BeniniDistribution","BenktanderGibratDistribution","BenktanderWeibullDistribution","BernoulliB","BernoulliDistribution","BernoulliGraphDistribution","BernoulliProcess","BernsteinBasis","BesselFilterModel","BesselI","BesselJ","BesselJZero","BesselK","BesselY","BesselYZero","Beta","BetaBinomialDistribution","BetaDistribution","BetaNegativeBinomialDistribution","BetaPrimeDistribution","BetaRegularized","Between","BetweennessCentrality","BeveledPolyhedron","BezierCurve","BezierCurve3DBox","BezierCurve3DBoxOptions","BezierCurveBox","BezierCurveBoxOptions","BezierFunction","BilateralFilter","Binarize","BinaryDeserialize","BinaryDistance","BinaryFormat","BinaryImageQ","BinaryRead","BinaryReadList","BinarySerialize","BinaryWrite","BinCounts","BinLists","Binomial","BinomialDistribution","BinomialProcess","BinormalDistribution","BiorthogonalSplineWavelet","BipartiteGraphQ","BiquadraticFilterModel","BirnbaumImportance","BirnbaumSaundersDistribution","BitAnd","BitClear","BitGet","BitLength","BitNot","BitOr","BitSet","BitShiftLeft","BitShiftRight","BitXor","BiweightLocation","BiweightMidvariance","Black","BlackmanHarrisWindow","BlackmanNuttallWindow","BlackmanWindow","Blank","BlankForm","BlankNullSequence","BlankSequence","Blend","Block","BlockchainAddressData","BlockchainBase","BlockchainBlockData","BlockchainContractValue","BlockchainData","BlockchainGet","BlockchainKeyEncode","BlockchainPut","BlockchainTokenData","BlockchainTransaction","BlockchainTransactionData","BlockchainTransactionSign","BlockchainTransactionSubmit","BlockMap","BlockRandom","BlomqvistBeta","BlomqvistBetaTest","Blue","Blur","BodePlot","BohmanWindow","Bold","Bond","BondCount","BondList","BondQ","Bookmarks","Boole","BooleanConsecutiveFunction","BooleanConvert","BooleanCountingFunction","BooleanFunction","BooleanGraph","BooleanMaxterms","BooleanMinimize","BooleanMinterms","BooleanQ","BooleanRegion","Booleans","BooleanStrings","BooleanTable","BooleanVariables","BorderDimensions","BorelTannerDistribution","Bottom","BottomHatTransform","BoundaryDiscretizeGraphics","BoundaryDiscretizeRegion","BoundaryMesh","BoundaryMeshRegion","BoundaryMeshRegionQ","BoundaryStyle","BoundedRegionQ","BoundingRegion","Bounds","Box","BoxBaselineShift","BoxData","BoxDimensions","Boxed","Boxes","BoxForm","BoxFormFormatTypes","BoxFrame","BoxID","BoxMargins","BoxMatrix","BoxObject","BoxRatios","BoxRotation","BoxRotationPoint","BoxStyle","BoxWhiskerChart","Bra","BracketingBar","BraKet","BrayCurtisDistance","BreadthFirstScan","Break","BridgeData","BrightnessEqualize","BroadcastStationData","Brown","BrownForsytheTest","BrownianBridgeProcess","BrowserCategory","BSplineBasis","BSplineCurve","BSplineCurve3DBox","BSplineCurve3DBoxOptions","BSplineCurveBox","BSplineCurveBoxOptions","BSplineFunction","BSplineSurface","BSplineSurface3DBox","BSplineSurface3DBoxOptions","BubbleChart","BubbleChart3D","BubbleScale","BubbleSizes","BuildingData","BulletGauge","BusinessDayQ","ButterflyGraph","ButterworthFilterModel","Button","ButtonBar","ButtonBox","ButtonBoxOptions","ButtonCell","ButtonContents","ButtonData","ButtonEvaluator","ButtonExpandable","ButtonFrame","ButtonFunction","ButtonMargins","ButtonMinHeight","ButtonNote","ButtonNotebook","ButtonSource","ButtonStyle","ButtonStyleMenuListing","Byte","ByteArray","ByteArrayFormat","ByteArrayQ","ByteArrayToString","ByteCount","ByteOrdering","C","CachedValue","CacheGraphics","CachePersistence","CalendarConvert","CalendarData","CalendarType","Callout","CalloutMarker","CalloutStyle","CallPacket","CanberraDistance","Cancel","CancelButton","CandlestickChart","CanonicalGraph","CanonicalizePolygon","CanonicalizePolyhedron","CanonicalName","CanonicalWarpingCorrespondence","CanonicalWarpingDistance","CantorMesh","CantorStaircase","Cap","CapForm","CapitalDifferentialD","Capitalize","CapsuleShape","CaptureRunning","CardinalBSplineBasis","CarlemanLinearize","CarmichaelLambda","CaseOrdering","Cases","CaseSensitive","Cashflow","Casoratian","Catalan","CatalanNumber","Catch","CategoricalDistribution","Catenate","CatenateLayer","CauchyDistribution","CauchyWindow","CayleyGraph","CDF","CDFDeploy","CDFInformation","CDFWavelet","Ceiling","CelestialSystem","Cell","CellAutoOverwrite","CellBaseline","CellBoundingBox","CellBracketOptions","CellChangeTimes","CellContents","CellContext","CellDingbat","CellDynamicExpression","CellEditDuplicate","CellElementsBoundingBox","CellElementSpacings","CellEpilog","CellEvaluationDuplicate","CellEvaluationFunction","CellEvaluationLanguage","CellEventActions","CellFrame","CellFrameColor","CellFrameLabelMargins","CellFrameLabels","CellFrameMargins","CellGroup","CellGroupData","CellGrouping","CellGroupingRules","CellHorizontalScrolling","CellID","CellLabel","CellLabelAutoDelete","CellLabelMargins","CellLabelPositioning","CellLabelStyle","CellLabelTemplate","CellMargins","CellObject","CellOpen","CellPrint","CellProlog","Cells","CellSize","CellStyle","CellTags","CellularAutomaton","CensoredDistribution","Censoring","Center","CenterArray","CenterDot","CentralFeature","CentralMoment","CentralMomentGeneratingFunction","Cepstrogram","CepstrogramArray","CepstrumArray","CForm","ChampernowneNumber","ChangeOptions","ChannelBase","ChannelBrokerAction","ChannelDatabin","ChannelHistoryLength","ChannelListen","ChannelListener","ChannelListeners","ChannelListenerWait","ChannelObject","ChannelPreSendFunction","ChannelReceiverFunction","ChannelSend","ChannelSubscribers","ChanVeseBinarize","Character","CharacterCounts","CharacterEncoding","CharacterEncodingsPath","CharacteristicFunction","CharacteristicPolynomial","CharacterName","CharacterNormalize","CharacterRange","Characters","ChartBaseStyle","ChartElementData","ChartElementDataFunction","ChartElementFunction","ChartElements","ChartLabels","ChartLayout","ChartLegends","ChartStyle","Chebyshev1FilterModel","Chebyshev2FilterModel","ChebyshevDistance","ChebyshevT","ChebyshevU","Check","CheckAbort","CheckAll","Checkbox","CheckboxBar","CheckboxBox","CheckboxBoxOptions","ChemicalData","ChessboardDistance","ChiDistribution","ChineseRemainder","ChiSquareDistribution","ChoiceButtons","ChoiceDialog","CholeskyDecomposition","Chop","ChromaticityPlot","ChromaticityPlot3D","ChromaticPolynomial","Circle","CircleBox","CircleDot","CircleMinus","CirclePlus","CirclePoints","CircleThrough","CircleTimes","CirculantGraph","CircularOrthogonalMatrixDistribution","CircularQuaternionMatrixDistribution","CircularRealMatrixDistribution","CircularSymplecticMatrixDistribution","CircularUnitaryMatrixDistribution","Circumsphere","CityData","ClassifierFunction","ClassifierInformation","ClassifierMeasurements","ClassifierMeasurementsObject","Classify","ClassPriors","Clear","ClearAll","ClearAttributes","ClearCookies","ClearPermissions","ClearSystemCache","ClebschGordan","ClickPane","Clip","ClipboardNotebook","ClipFill","ClippingStyle","ClipPlanes","ClipPlanesStyle","ClipRange","Clock","ClockGauge","ClockwiseContourIntegral","Close","Closed","CloseKernels","ClosenessCentrality","Closing","ClosingAutoSave","ClosingEvent","ClosingSaveDialog","CloudAccountData","CloudBase","CloudConnect","CloudConnections","CloudDeploy","CloudDirectory","CloudDisconnect","CloudEvaluate","CloudExport","CloudExpression","CloudExpressions","CloudFunction","CloudGet","CloudImport","CloudLoggingData","CloudObject","CloudObjectInformation","CloudObjectInformationData","CloudObjectNameFormat","CloudObjects","CloudObjectURLType","CloudPublish","CloudPut","CloudRenderingMethod","CloudSave","CloudShare","CloudSubmit","CloudSymbol","CloudUnshare","CloudUserID","ClusterClassify","ClusterDissimilarityFunction","ClusteringComponents","ClusteringTree","CMYKColor","Coarse","CodeAssistOptions","Coefficient","CoefficientArrays","CoefficientDomain","CoefficientList","CoefficientRules","CoifletWavelet","Collect","Colon","ColonForm","ColorBalance","ColorCombine","ColorConvert","ColorCoverage","ColorData","ColorDataFunction","ColorDetect","ColorDistance","ColorFunction","ColorFunctionScaling","Colorize","ColorNegate","ColorOutput","ColorProfileData","ColorQ","ColorQuantize","ColorReplace","ColorRules","ColorSelectorSettings","ColorSeparate","ColorSetter","ColorSetterBox","ColorSetterBoxOptions","ColorSlider","ColorsNear","ColorSpace","ColorToneMapping","Column","ColumnAlignments","ColumnBackgrounds","ColumnForm","ColumnLines","ColumnsEqual","ColumnSpacings","ColumnWidths","CombinedEntityClass","CombinerFunction","CometData","CommonDefaultFormatTypes","Commonest","CommonestFilter","CommonName","CommonUnits","CommunityBoundaryStyle","CommunityGraphPlot","CommunityLabels","CommunityRegionStyle","CompanyData","CompatibleUnitQ","CompilationOptions","CompilationTarget","Compile","Compiled","CompiledCodeFunction","CompiledFunction","CompilerOptions","Complement","ComplementedEntityClass","CompleteGraph","CompleteGraphQ","CompleteKaryTree","CompletionsListPacket","Complex","ComplexContourPlot","Complexes","ComplexExpand","ComplexInfinity","ComplexityFunction","ComplexListPlot","ComplexPlot","ComplexPlot3D","ComplexRegionPlot","ComplexStreamPlot","ComplexVectorPlot","ComponentMeasurements","ComponentwiseContextMenu","Compose","ComposeList","ComposeSeries","CompositeQ","Composition","CompoundElement","CompoundExpression","CompoundPoissonDistribution","CompoundPoissonProcess","CompoundRenewalProcess","Compress","CompressedData","CompressionLevel","ComputeUncertainty","Condition","ConditionalExpression","Conditioned","Cone","ConeBox","ConfidenceLevel","ConfidenceRange","ConfidenceTransform","ConfigurationPath","ConformAudio","ConformImages","Congruent","ConicHullRegion","ConicHullRegion3DBox","ConicHullRegionBox","ConicOptimization","Conjugate","ConjugateTranspose","Conjunction","Connect","ConnectedComponents","ConnectedGraphComponents","ConnectedGraphQ","ConnectedMeshComponents","ConnectedMoleculeComponents","ConnectedMoleculeQ","ConnectionSettings","ConnectLibraryCallbackFunction","ConnectSystemModelComponents","ConnesWindow","ConoverTest","ConsoleMessage","ConsoleMessagePacket","Constant","ConstantArray","ConstantArrayLayer","ConstantImage","ConstantPlusLayer","ConstantRegionQ","Constants","ConstantTimesLayer","ConstellationData","ConstrainedMax","ConstrainedMin","Construct","Containing","ContainsAll","ContainsAny","ContainsExactly","ContainsNone","ContainsOnly","ContentFieldOptions","ContentLocationFunction","ContentObject","ContentPadding","ContentsBoundingBox","ContentSelectable","ContentSize","Context","ContextMenu","Contexts","ContextToFileName","Continuation","Continue","ContinuedFraction","ContinuedFractionK","ContinuousAction","ContinuousMarkovProcess","ContinuousTask","ContinuousTimeModelQ","ContinuousWaveletData","ContinuousWaveletTransform","ContourDetect","ContourGraphics","ContourIntegral","ContourLabels","ContourLines","ContourPlot","ContourPlot3D","Contours","ContourShading","ContourSmoothing","ContourStyle","ContraharmonicMean","ContrastiveLossLayer","Control","ControlActive","ControlAlignment","ControlGroupContentsBox","ControllabilityGramian","ControllabilityMatrix","ControllableDecomposition","ControllableModelQ","ControllerDuration","ControllerInformation","ControllerInformationData","ControllerLinking","ControllerManipulate","ControllerMethod","ControllerPath","ControllerState","ControlPlacement","ControlsRendering","ControlType","Convergents","ConversionOptions","ConversionRules","ConvertToBitmapPacket","ConvertToPostScript","ConvertToPostScriptPacket","ConvexHullMesh","ConvexPolygonQ","ConvexPolyhedronQ","ConvolutionLayer","Convolve","ConwayGroupCo1","ConwayGroupCo2","ConwayGroupCo3","CookieFunction","Cookies","CoordinateBoundingBox","CoordinateBoundingBoxArray","CoordinateBounds","CoordinateBoundsArray","CoordinateChartData","CoordinatesToolOptions","CoordinateTransform","CoordinateTransformData","CoprimeQ","Coproduct","CopulaDistribution","Copyable","CopyDatabin","CopyDirectory","CopyFile","CopyTag","CopyToClipboard","CornerFilter","CornerNeighbors","Correlation","CorrelationDistance","CorrelationFunction","CorrelationTest","Cos","Cosh","CoshIntegral","CosineDistance","CosineWindow","CosIntegral","Cot","Coth","Count","CountDistinct","CountDistinctBy","CounterAssignments","CounterBox","CounterBoxOptions","CounterClockwiseContourIntegral","CounterEvaluator","CounterFunction","CounterIncrements","CounterStyle","CounterStyleMenuListing","CountRoots","CountryData","Counts","CountsBy","Covariance","CovarianceEstimatorFunction","CovarianceFunction","CoxianDistribution","CoxIngersollRossProcess","CoxModel","CoxModelFit","CramerVonMisesTest","CreateArchive","CreateCellID","CreateChannel","CreateCloudExpression","CreateDatabin","CreateDataStructure","CreateDataSystemModel","CreateDialog","CreateDirectory","CreateDocument","CreateFile","CreateIntermediateDirectories","CreateManagedLibraryExpression","CreateNotebook","CreatePacletArchive","CreatePalette","CreatePalettePacket","CreatePermissionsGroup","CreateScheduledTask","CreateSearchIndex","CreateSystemModel","CreateTemporary","CreateUUID","CreateWindow","CriterionFunction","CriticalityFailureImportance","CriticalitySuccessImportance","CriticalSection","Cross","CrossEntropyLossLayer","CrossingCount","CrossingDetect","CrossingPolygon","CrossMatrix","Csc","Csch","CTCLossLayer","Cube","CubeRoot","Cubics","Cuboid","CuboidBox","Cumulant","CumulantGeneratingFunction","Cup","CupCap","Curl","CurlyDoubleQuote","CurlyQuote","CurrencyConvert","CurrentDate","CurrentImage","CurrentlySpeakingPacket","CurrentNotebookImage","CurrentScreenImage","CurrentValue","Curry","CurryApplied","CurvatureFlowFilter","CurveClosed","Cyan","CycleGraph","CycleIndexPolynomial","Cycles","CyclicGroup","Cyclotomic","Cylinder","CylinderBox","CylindricalDecomposition","D","DagumDistribution","DamData","DamerauLevenshteinDistance","DampingFactor","Darker","Dashed","Dashing","DatabaseConnect","DatabaseDisconnect","DatabaseReference","Databin","DatabinAdd","DatabinRemove","Databins","DatabinUpload","DataCompression","DataDistribution","DataRange","DataReversed","Dataset","DatasetDisplayPanel","DataStructure","DataStructureQ","Date","DateBounds","Dated","DateDelimiters","DateDifference","DatedUnit","DateFormat","DateFunction","DateHistogram","DateInterval","DateList","DateListLogPlot","DateListPlot","DateListStepPlot","DateObject","DateObjectQ","DateOverlapsQ","DatePattern","DatePlus","DateRange","DateReduction","DateString","DateTicksFormat","DateValue","DateWithinQ","DaubechiesWavelet","DavisDistribution","DawsonF","DayCount","DayCountConvention","DayHemisphere","DaylightQ","DayMatchQ","DayName","DayNightTerminator","DayPlus","DayRange","DayRound","DeBruijnGraph","DeBruijnSequence","Debug","DebugTag","Decapitalize","Decimal","DecimalForm","DeclareKnownSymbols","DeclarePackage","Decompose","DeconvolutionLayer","Decrement","Decrypt","DecryptFile","DedekindEta","DeepSpaceProbeData","Default","DefaultAxesStyle","DefaultBaseStyle","DefaultBoxStyle","DefaultButton","DefaultColor","DefaultControlPlacement","DefaultDuplicateCellStyle","DefaultDuration","DefaultElement","DefaultFaceGridsStyle","DefaultFieldHintStyle","DefaultFont","DefaultFontProperties","DefaultFormatType","DefaultFormatTypeForStyle","DefaultFrameStyle","DefaultFrameTicksStyle","DefaultGridLinesStyle","DefaultInlineFormatType","DefaultInputFormatType","DefaultLabelStyle","DefaultMenuStyle","DefaultNaturalLanguage","DefaultNewCellStyle","DefaultNewInlineCellStyle","DefaultNotebook","DefaultOptions","DefaultOutputFormatType","DefaultPrintPrecision","DefaultStyle","DefaultStyleDefinitions","DefaultTextFormatType","DefaultTextInlineFormatType","DefaultTicksStyle","DefaultTooltipStyle","DefaultValue","DefaultValues","Defer","DefineExternal","DefineInputStreamMethod","DefineOutputStreamMethod","DefineResourceFunction","Definition","Degree","DegreeCentrality","DegreeGraphDistribution","DegreeLexicographic","DegreeReverseLexicographic","DEigensystem","DEigenvalues","Deinitialization","Del","DelaunayMesh","Delayed","Deletable","Delete","DeleteAnomalies","DeleteBorderComponents","DeleteCases","DeleteChannel","DeleteCloudExpression","DeleteContents","DeleteDirectory","DeleteDuplicates","DeleteDuplicatesBy","DeleteFile","DeleteMissing","DeleteObject","DeletePermissionsKey","DeleteSearchIndex","DeleteSmallComponents","DeleteStopwords","DeleteWithContents","DeletionWarning","DelimitedArray","DelimitedSequence","Delimiter","DelimiterFlashTime","DelimiterMatching","Delimiters","DeliveryFunction","Dendrogram","Denominator","DensityGraphics","DensityHistogram","DensityPlot","DensityPlot3D","DependentVariables","Deploy","Deployed","Depth","DepthFirstScan","Derivative","DerivativeFilter","DerivedKey","DescriptorStateSpace","DesignMatrix","DestroyAfterEvaluation","Det","DeviceClose","DeviceConfigure","DeviceExecute","DeviceExecuteAsynchronous","DeviceObject","DeviceOpen","DeviceOpenQ","DeviceRead","DeviceReadBuffer","DeviceReadLatest","DeviceReadList","DeviceReadTimeSeries","Devices","DeviceStreams","DeviceWrite","DeviceWriteBuffer","DGaussianWavelet","DiacriticalPositioning","Diagonal","DiagonalizableMatrixQ","DiagonalMatrix","DiagonalMatrixQ","Dialog","DialogIndent","DialogInput","DialogLevel","DialogNotebook","DialogProlog","DialogReturn","DialogSymbols","Diamond","DiamondMatrix","DiceDissimilarity","DictionaryLookup","DictionaryWordQ","DifferenceDelta","DifferenceOrder","DifferenceQuotient","DifferenceRoot","DifferenceRootReduce","Differences","DifferentialD","DifferentialRoot","DifferentialRootReduce","DifferentiatorFilter","DigitalSignature","DigitBlock","DigitBlockMinimum","DigitCharacter","DigitCount","DigitQ","DihedralAngle","DihedralGroup","Dilation","DimensionalCombinations","DimensionalMeshComponents","DimensionReduce","DimensionReducerFunction","DimensionReduction","Dimensions","DiracComb","DiracDelta","DirectedEdge","DirectedEdges","DirectedGraph","DirectedGraphQ","DirectedInfinity","Direction","Directive","Directory","DirectoryName","DirectoryQ","DirectoryStack","DirichletBeta","DirichletCharacter","DirichletCondition","DirichletConvolve","DirichletDistribution","DirichletEta","DirichletL","DirichletLambda","DirichletTransform","DirichletWindow","DisableConsolePrintPacket","DisableFormatting","DiscreteAsymptotic","DiscreteChirpZTransform","DiscreteConvolve","DiscreteDelta","DiscreteHadamardTransform","DiscreteIndicator","DiscreteLimit","DiscreteLQEstimatorGains","DiscreteLQRegulatorGains","DiscreteLyapunovSolve","DiscreteMarkovProcess","DiscreteMaxLimit","DiscreteMinLimit","DiscretePlot","DiscretePlot3D","DiscreteRatio","DiscreteRiccatiSolve","DiscreteShift","DiscreteTimeModelQ","DiscreteUniformDistribution","DiscreteVariables","DiscreteWaveletData","DiscreteWaveletPacketTransform","DiscreteWaveletTransform","DiscretizeGraphics","DiscretizeRegion","Discriminant","DisjointQ","Disjunction","Disk","DiskBox","DiskMatrix","DiskSegment","Dispatch","DispatchQ","DispersionEstimatorFunction","Display","DisplayAllSteps","DisplayEndPacket","DisplayFlushImagePacket","DisplayForm","DisplayFunction","DisplayPacket","DisplayRules","DisplaySetSizePacket","DisplayString","DisplayTemporary","DisplayWith","DisplayWithRef","DisplayWithVariable","DistanceFunction","DistanceMatrix","DistanceTransform","Distribute","Distributed","DistributedContexts","DistributeDefinitions","DistributionChart","DistributionDomain","DistributionFitTest","DistributionParameterAssumptions","DistributionParameterQ","Dithering","Div","Divergence","Divide","DivideBy","Dividers","DivideSides","Divisible","Divisors","DivisorSigma","DivisorSum","DMSList","DMSString","Do","DockedCells","DocumentGenerator","DocumentGeneratorInformation","DocumentGeneratorInformationData","DocumentGenerators","DocumentNotebook","DocumentWeightingRules","Dodecahedron","DomainRegistrationInformation","DominantColors","DOSTextFormat","Dot","DotDashed","DotEqual","DotLayer","DotPlusLayer","Dotted","DoubleBracketingBar","DoubleContourIntegral","DoubleDownArrow","DoubleLeftArrow","DoubleLeftRightArrow","DoubleLeftTee","DoubleLongLeftArrow","DoubleLongLeftRightArrow","DoubleLongRightArrow","DoubleRightArrow","DoubleRightTee","DoubleUpArrow","DoubleUpDownArrow","DoubleVerticalBar","DoublyInfinite","Down","DownArrow","DownArrowBar","DownArrowUpArrow","DownLeftRightVector","DownLeftTeeVector","DownLeftVector","DownLeftVectorBar","DownRightTeeVector","DownRightVector","DownRightVectorBar","Downsample","DownTee","DownTeeArrow","DownValues","DragAndDrop","DrawEdges","DrawFrontFaces","DrawHighlighted","Drop","DropoutLayer","DSolve","DSolveValue","Dt","DualLinearProgramming","DualPolyhedron","DualSystemsModel","DumpGet","DumpSave","DuplicateFreeQ","Duration","Dynamic","DynamicBox","DynamicBoxOptions","DynamicEvaluationTimeout","DynamicGeoGraphics","DynamicImage","DynamicLocation","DynamicModule","DynamicModuleBox","DynamicModuleBoxOptions","DynamicModuleParent","DynamicModuleValues","DynamicName","DynamicNamespace","DynamicReference","DynamicSetting","DynamicUpdating","DynamicWrapper","DynamicWrapperBox","DynamicWrapperBoxOptions","E","EarthImpactData","EarthquakeData","EccentricityCentrality","Echo","EchoFunction","EclipseType","EdgeAdd","EdgeBetweennessCentrality","EdgeCapacity","EdgeCapForm","EdgeColor","EdgeConnectivity","EdgeContract","EdgeCost","EdgeCount","EdgeCoverQ","EdgeCycleMatrix","EdgeDashing","EdgeDelete","EdgeDetect","EdgeForm","EdgeIndex","EdgeJoinForm","EdgeLabeling","EdgeLabels","EdgeLabelStyle","EdgeList","EdgeOpacity","EdgeQ","EdgeRenderingFunction","EdgeRules","EdgeShapeFunction","EdgeStyle","EdgeTaggedGraph","EdgeTaggedGraphQ","EdgeTags","EdgeThickness","EdgeWeight","EdgeWeightedGraphQ","Editable","EditButtonSettings","EditCellTagsSettings","EditDistance","EffectiveInterest","Eigensystem","Eigenvalues","EigenvectorCentrality","Eigenvectors","Element","ElementData","ElementwiseLayer","ElidedForms","Eliminate","EliminationOrder","Ellipsoid","EllipticE","EllipticExp","EllipticExpPrime","EllipticF","EllipticFilterModel","EllipticK","EllipticLog","EllipticNomeQ","EllipticPi","EllipticReducedHalfPeriods","EllipticTheta","EllipticThetaPrime","EmbedCode","EmbeddedHTML","EmbeddedService","EmbeddingLayer","EmbeddingObject","EmitSound","EmphasizeSyntaxErrors","EmpiricalDistribution","Empty","EmptyGraphQ","EmptyRegion","EnableConsolePrintPacket","Enabled","Encode","Encrypt","EncryptedObject","EncryptFile","End","EndAdd","EndDialogPacket","EndFrontEndInteractionPacket","EndOfBuffer","EndOfFile","EndOfLine","EndOfString","EndPackage","EngineEnvironment","EngineeringForm","Enter","EnterExpressionPacket","EnterTextPacket","Entity","EntityClass","EntityClassList","EntityCopies","EntityFunction","EntityGroup","EntityInstance","EntityList","EntityPrefetch","EntityProperties","EntityProperty","EntityPropertyClass","EntityRegister","EntityStore","EntityStores","EntityTypeName","EntityUnregister","EntityValue","Entropy","EntropyFilter","Environment","Epilog","EpilogFunction","Equal","EqualColumns","EqualRows","EqualTilde","EqualTo","EquatedTo","Equilibrium","EquirippleFilterKernel","Equivalent","Erf","Erfc","Erfi","ErlangB","ErlangC","ErlangDistribution","Erosion","ErrorBox","ErrorBoxOptions","ErrorNorm","ErrorPacket","ErrorsDialogSettings","EscapeRadius","EstimatedBackground","EstimatedDistribution","EstimatedProcess","EstimatorGains","EstimatorRegulator","EuclideanDistance","EulerAngles","EulerCharacteristic","EulerE","EulerGamma","EulerianGraphQ","EulerMatrix","EulerPhi","Evaluatable","Evaluate","Evaluated","EvaluatePacket","EvaluateScheduledTask","EvaluationBox","EvaluationCell","EvaluationCompletionAction","EvaluationData","EvaluationElements","EvaluationEnvironment","EvaluationMode","EvaluationMonitor","EvaluationNotebook","EvaluationObject","EvaluationOrder","Evaluator","EvaluatorNames","EvenQ","EventData","EventEvaluator","EventHandler","EventHandlerTag","EventLabels","EventSeries","ExactBlackmanWindow","ExactNumberQ","ExactRootIsolation","ExampleData","Except","ExcludedForms","ExcludedLines","ExcludedPhysicalQuantities","ExcludePods","Exclusions","ExclusionsStyle","Exists","Exit","ExitDialog","ExoplanetData","Exp","Expand","ExpandAll","ExpandDenominator","ExpandFileName","ExpandNumerator","Expectation","ExpectationE","ExpectedValue","ExpGammaDistribution","ExpIntegralE","ExpIntegralEi","ExpirationDate","Exponent","ExponentFunction","ExponentialDistribution","ExponentialFamily","ExponentialGeneratingFunction","ExponentialMovingAverage","ExponentialPowerDistribution","ExponentPosition","ExponentStep","Export","ExportAutoReplacements","ExportByteArray","ExportForm","ExportPacket","ExportString","Expression","ExpressionCell","ExpressionGraph","ExpressionPacket","ExpressionUUID","ExpToTrig","ExtendedEntityClass","ExtendedGCD","Extension","ExtentElementFunction","ExtentMarkers","ExtentSize","ExternalBundle","ExternalCall","ExternalDataCharacterEncoding","ExternalEvaluate","ExternalFunction","ExternalFunctionName","ExternalIdentifier","ExternalObject","ExternalOptions","ExternalSessionObject","ExternalSessions","ExternalStorageBase","ExternalStorageDownload","ExternalStorageGet","ExternalStorageObject","ExternalStoragePut","ExternalStorageUpload","ExternalTypeSignature","ExternalValue","Extract","ExtractArchive","ExtractLayer","ExtractPacletArchive","ExtremeValueDistribution","FaceAlign","FaceForm","FaceGrids","FaceGridsStyle","FacialFeatures","Factor","FactorComplete","Factorial","Factorial2","FactorialMoment","FactorialMomentGeneratingFunction","FactorialPower","FactorInteger","FactorList","FactorSquareFree","FactorSquareFreeList","FactorTerms","FactorTermsList","Fail","Failure","FailureAction","FailureDistribution","FailureQ","False","FareySequence","FARIMAProcess","FeatureDistance","FeatureExtract","FeatureExtraction","FeatureExtractor","FeatureExtractorFunction","FeatureNames","FeatureNearest","FeatureSpacePlot","FeatureSpacePlot3D","FeatureTypes","FEDisableConsolePrintPacket","FeedbackLinearize","FeedbackSector","FeedbackSectorStyle","FeedbackType","FEEnableConsolePrintPacket","FetalGrowthData","Fibonacci","Fibonorial","FieldCompletionFunction","FieldHint","FieldHintStyle","FieldMasked","FieldSize","File","FileBaseName","FileByteCount","FileConvert","FileDate","FileExistsQ","FileExtension","FileFormat","FileHandler","FileHash","FileInformation","FileName","FileNameDepth","FileNameDialogSettings","FileNameDrop","FileNameForms","FileNameJoin","FileNames","FileNameSetter","FileNameSplit","FileNameTake","FilePrint","FileSize","FileSystemMap","FileSystemScan","FileTemplate","FileTemplateApply","FileType","FilledCurve","FilledCurveBox","FilledCurveBoxOptions","Filling","FillingStyle","FillingTransform","FilteredEntityClass","FilterRules","FinancialBond","FinancialData","FinancialDerivative","FinancialIndicator","Find","FindAnomalies","FindArgMax","FindArgMin","FindChannels","FindClique","FindClusters","FindCookies","FindCurvePath","FindCycle","FindDevices","FindDistribution","FindDistributionParameters","FindDivisions","FindEdgeCover","FindEdgeCut","FindEdgeIndependentPaths","FindEquationalProof","FindEulerianCycle","FindExternalEvaluators","FindFaces","FindFile","FindFit","FindFormula","FindFundamentalCycles","FindGeneratingFunction","FindGeoLocation","FindGeometricConjectures","FindGeometricTransform","FindGraphCommunities","FindGraphIsomorphism","FindGraphPartition","FindHamiltonianCycle","FindHamiltonianPath","FindHiddenMarkovStates","FindImageText","FindIndependentEdgeSet","FindIndependentVertexSet","FindInstance","FindIntegerNullVector","FindKClan","FindKClique","FindKClub","FindKPlex","FindLibrary","FindLinearRecurrence","FindList","FindMatchingColor","FindMaximum","FindMaximumCut","FindMaximumFlow","FindMaxValue","FindMeshDefects","FindMinimum","FindMinimumCostFlow","FindMinimumCut","FindMinValue","FindMoleculeSubstructure","FindPath","FindPeaks","FindPermutation","FindPostmanTour","FindProcessParameters","FindRepeat","FindRoot","FindSequenceFunction","FindSettings","FindShortestPath","FindShortestTour","FindSpanningTree","FindSystemModelEquilibrium","FindTextualAnswer","FindThreshold","FindTransientRepeat","FindVertexCover","FindVertexCut","FindVertexIndependentPaths","Fine","FinishDynamic","FiniteAbelianGroupCount","FiniteGroupCount","FiniteGroupData","First","FirstCase","FirstPassageTimeDistribution","FirstPosition","FischerGroupFi22","FischerGroupFi23","FischerGroupFi24Prime","FisherHypergeometricDistribution","FisherRatioTest","FisherZDistribution","Fit","FitAll","FitRegularization","FittedModel","FixedOrder","FixedPoint","FixedPointList","FlashSelection","Flat","Flatten","FlattenAt","FlattenLayer","FlatTopWindow","FlipView","Floor","FlowPolynomial","FlushPrintOutputPacket","Fold","FoldList","FoldPair","FoldPairList","FollowRedirects","Font","FontColor","FontFamily","FontForm","FontName","FontOpacity","FontPostScriptName","FontProperties","FontReencoding","FontSize","FontSlant","FontSubstitutions","FontTracking","FontVariations","FontWeight","For","ForAll","ForceVersionInstall","Format","FormatRules","FormatType","FormatTypeAutoConvert","FormatValues","FormBox","FormBoxOptions","FormControl","FormFunction","FormLayoutFunction","FormObject","FormPage","FormTheme","FormulaData","FormulaLookup","FortranForm","Forward","ForwardBackward","Fourier","FourierCoefficient","FourierCosCoefficient","FourierCosSeries","FourierCosTransform","FourierDCT","FourierDCTFilter","FourierDCTMatrix","FourierDST","FourierDSTMatrix","FourierMatrix","FourierParameters","FourierSequenceTransform","FourierSeries","FourierSinCoefficient","FourierSinSeries","FourierSinTransform","FourierTransform","FourierTrigSeries","FractionalBrownianMotionProcess","FractionalGaussianNoiseProcess","FractionalPart","FractionBox","FractionBoxOptions","FractionLine","Frame","FrameBox","FrameBoxOptions","Framed","FrameInset","FrameLabel","Frameless","FrameMargins","FrameRate","FrameStyle","FrameTicks","FrameTicksStyle","FRatioDistribution","FrechetDistribution","FreeQ","FrenetSerretSystem","FrequencySamplingFilterKernel","FresnelC","FresnelF","FresnelG","FresnelS","Friday","FrobeniusNumber","FrobeniusSolve","FromAbsoluteTime","FromCharacterCode","FromCoefficientRules","FromContinuedFraction","FromDate","FromDigits","FromDMS","FromEntity","FromJulianDate","FromLetterNumber","FromPolarCoordinates","FromRomanNumeral","FromSphericalCoordinates","FromUnixTime","Front","FrontEndDynamicExpression","FrontEndEventActions","FrontEndExecute","FrontEndObject","FrontEndResource","FrontEndResourceString","FrontEndStackSize","FrontEndToken","FrontEndTokenExecute","FrontEndValueCache","FrontEndVersion","FrontFaceColor","FrontFaceOpacity","Full","FullAxes","FullDefinition","FullForm","FullGraphics","FullInformationOutputRegulator","FullOptions","FullRegion","FullSimplify","Function","FunctionCompile","FunctionCompileExport","FunctionCompileExportByteArray","FunctionCompileExportLibrary","FunctionCompileExportString","FunctionDomain","FunctionExpand","FunctionInterpolation","FunctionPeriod","FunctionRange","FunctionSpace","FussellVeselyImportance","GaborFilter","GaborMatrix","GaborWavelet","GainMargins","GainPhaseMargins","GalaxyData","GalleryView","Gamma","GammaDistribution","GammaRegularized","GapPenalty","GARCHProcess","GatedRecurrentLayer","Gather","GatherBy","GaugeFaceElementFunction","GaugeFaceStyle","GaugeFrameElementFunction","GaugeFrameSize","GaugeFrameStyle","GaugeLabels","GaugeMarkers","GaugeStyle","GaussianFilter","GaussianIntegers","GaussianMatrix","GaussianOrthogonalMatrixDistribution","GaussianSymplecticMatrixDistribution","GaussianUnitaryMatrixDistribution","GaussianWindow","GCD","GegenbauerC","General","GeneralizedLinearModelFit","GenerateAsymmetricKeyPair","GenerateConditions","GeneratedCell","GeneratedDocumentBinding","GenerateDerivedKey","GenerateDigitalSignature","GenerateDocument","GeneratedParameters","GeneratedQuantityMagnitudes","GenerateFileSignature","GenerateHTTPResponse","GenerateSecuredAuthenticationKey","GenerateSymmetricKey","GeneratingFunction","GeneratorDescription","GeneratorHistoryLength","GeneratorOutputType","Generic","GenericCylindricalDecomposition","GenomeData","GenomeLookup","GeoAntipode","GeoArea","GeoArraySize","GeoBackground","GeoBoundingBox","GeoBounds","GeoBoundsRegion","GeoBubbleChart","GeoCenter","GeoCircle","GeoContourPlot","GeoDensityPlot","GeodesicClosing","GeodesicDilation","GeodesicErosion","GeodesicOpening","GeoDestination","GeodesyData","GeoDirection","GeoDisk","GeoDisplacement","GeoDistance","GeoDistanceList","GeoElevationData","GeoEntities","GeoGraphics","GeogravityModelData","GeoGridDirectionDifference","GeoGridLines","GeoGridLinesStyle","GeoGridPosition","GeoGridRange","GeoGridRangePadding","GeoGridUnitArea","GeoGridUnitDistance","GeoGridVector","GeoGroup","GeoHemisphere","GeoHemisphereBoundary","GeoHistogram","GeoIdentify","GeoImage","GeoLabels","GeoLength","GeoListPlot","GeoLocation","GeologicalPeriodData","GeomagneticModelData","GeoMarker","GeometricAssertion","GeometricBrownianMotionProcess","GeometricDistribution","GeometricMean","GeometricMeanFilter","GeometricOptimization","GeometricScene","GeometricTransformation","GeometricTransformation3DBox","GeometricTransformation3DBoxOptions","GeometricTransformationBox","GeometricTransformationBoxOptions","GeoModel","GeoNearest","GeoPath","GeoPosition","GeoPositionENU","GeoPositionXYZ","GeoProjection","GeoProjectionData","GeoRange","GeoRangePadding","GeoRegionValuePlot","GeoResolution","GeoScaleBar","GeoServer","GeoSmoothHistogram","GeoStreamPlot","GeoStyling","GeoStylingImageFunction","GeoVariant","GeoVector","GeoVectorENU","GeoVectorPlot","GeoVectorXYZ","GeoVisibleRegion","GeoVisibleRegionBoundary","GeoWithinQ","GeoZoomLevel","GestureHandler","GestureHandlerTag","Get","GetBoundingBoxSizePacket","GetContext","GetEnvironment","GetFileName","GetFrontEndOptionsDataPacket","GetLinebreakInformationPacket","GetMenusPacket","GetPageBreakInformationPacket","Glaisher","GlobalClusteringCoefficient","GlobalPreferences","GlobalSession","Glow","GoldenAngle","GoldenRatio","GompertzMakehamDistribution","GoochShading","GoodmanKruskalGamma","GoodmanKruskalGammaTest","Goto","Grad","Gradient","GradientFilter","GradientOrientationFilter","GrammarApply","GrammarRules","GrammarToken","Graph","Graph3D","GraphAssortativity","GraphAutomorphismGroup","GraphCenter","GraphComplement","GraphData","GraphDensity","GraphDiameter","GraphDifference","GraphDisjointUnion","GraphDistance","GraphDistanceMatrix","GraphElementData","GraphEmbedding","GraphHighlight","GraphHighlightStyle","GraphHub","Graphics","Graphics3D","Graphics3DBox","Graphics3DBoxOptions","GraphicsArray","GraphicsBaseline","GraphicsBox","GraphicsBoxOptions","GraphicsColor","GraphicsColumn","GraphicsComplex","GraphicsComplex3DBox","GraphicsComplex3DBoxOptions","GraphicsComplexBox","GraphicsComplexBoxOptions","GraphicsContents","GraphicsData","GraphicsGrid","GraphicsGridBox","GraphicsGroup","GraphicsGroup3DBox","GraphicsGroup3DBoxOptions","GraphicsGroupBox","GraphicsGroupBoxOptions","GraphicsGrouping","GraphicsHighlightColor","GraphicsRow","GraphicsSpacing","GraphicsStyle","GraphIntersection","GraphLayout","GraphLinkEfficiency","GraphPeriphery","GraphPlot","GraphPlot3D","GraphPower","GraphPropertyDistribution","GraphQ","GraphRadius","GraphReciprocity","GraphRoot","GraphStyle","GraphUnion","Gray","GrayLevel","Greater","GreaterEqual","GreaterEqualLess","GreaterEqualThan","GreaterFullEqual","GreaterGreater","GreaterLess","GreaterSlantEqual","GreaterThan","GreaterTilde","Green","GreenFunction","Grid","GridBaseline","GridBox","GridBoxAlignment","GridBoxBackground","GridBoxDividers","GridBoxFrame","GridBoxItemSize","GridBoxItemStyle","GridBoxOptions","GridBoxSpacings","GridCreationSettings","GridDefaultElement","GridElementStyleOptions","GridFrame","GridFrameMargins","GridGraph","GridLines","GridLinesStyle","GroebnerBasis","GroupActionBase","GroupBy","GroupCentralizer","GroupElementFromWord","GroupElementPosition","GroupElementQ","GroupElements","GroupElementToWord","GroupGenerators","Groupings","GroupMultiplicationTable","GroupOrbits","GroupOrder","GroupPageBreakWithin","GroupSetwiseStabilizer","GroupStabilizer","GroupStabilizerChain","GroupTogetherGrouping","GroupTogetherNestedGrouping","GrowCutComponents","Gudermannian","GuidedFilter","GumbelDistribution","HaarWavelet","HadamardMatrix","HalfLine","HalfNormalDistribution","HalfPlane","HalfSpace","HalftoneShading","HamiltonianGraphQ","HammingDistance","HammingWindow","HandlerFunctions","HandlerFunctionsKeys","HankelH1","HankelH2","HankelMatrix","HankelTransform","HannPoissonWindow","HannWindow","HaradaNortonGroupHN","HararyGraph","HarmonicMean","HarmonicMeanFilter","HarmonicNumber","Hash","HatchFilling","HatchShading","Haversine","HazardFunction","Head","HeadCompose","HeaderAlignment","HeaderBackground","HeaderDisplayFunction","HeaderLines","HeaderSize","HeaderStyle","Heads","HeavisideLambda","HeavisidePi","HeavisideTheta","HeldGroupHe","HeldPart","HelpBrowserLookup","HelpBrowserNotebook","HelpBrowserSettings","Here","HermiteDecomposition","HermiteH","HermitianMatrixQ","HessenbergDecomposition","Hessian","HeunB","HeunBPrime","HeunC","HeunCPrime","HeunD","HeunDPrime","HeunG","HeunGPrime","HeunT","HeunTPrime","HexadecimalCharacter","Hexahedron","HexahedronBox","HexahedronBoxOptions","HiddenItems","HiddenMarkovProcess","HiddenSurface","Highlighted","HighlightGraph","HighlightImage","HighlightMesh","HighpassFilter","HigmanSimsGroupHS","HilbertCurve","HilbertFilter","HilbertMatrix","Histogram","Histogram3D","HistogramDistribution","HistogramList","HistogramTransform","HistogramTransformInterpolation","HistoricalPeriodData","HitMissTransform","HITSCentrality","HjorthDistribution","HodgeDual","HoeffdingD","HoeffdingDTest","Hold","HoldAll","HoldAllComplete","HoldComplete","HoldFirst","HoldForm","HoldPattern","HoldRest","HolidayCalendar","HomeDirectory","HomePage","Horizontal","HorizontalForm","HorizontalGauge","HorizontalScrollPosition","HornerForm","HostLookup","HotellingTSquareDistribution","HoytDistribution","HTMLSave","HTTPErrorResponse","HTTPRedirect","HTTPRequest","HTTPRequestData","HTTPResponse","Hue","HumanGrowthData","HumpDownHump","HumpEqual","HurwitzLerchPhi","HurwitzZeta","HyperbolicDistribution","HypercubeGraph","HyperexponentialDistribution","Hyperfactorial","Hypergeometric0F1","Hypergeometric0F1Regularized","Hypergeometric1F1","Hypergeometric1F1Regularized","Hypergeometric2F1","Hypergeometric2F1Regularized","HypergeometricDistribution","HypergeometricPFQ","HypergeometricPFQRegularized","HypergeometricU","Hyperlink","HyperlinkAction","HyperlinkCreationSettings","Hyperplane","Hyphenation","HyphenationOptions","HypoexponentialDistribution","HypothesisTestData","I","IconData","Iconize","IconizedObject","IconRules","Icosahedron","Identity","IdentityMatrix","If","IgnoreCase","IgnoreDiacritics","IgnorePunctuation","IgnoreSpellCheck","IgnoringInactive","Im","Image","Image3D","Image3DProjection","Image3DSlices","ImageAccumulate","ImageAdd","ImageAdjust","ImageAlign","ImageApply","ImageApplyIndexed","ImageAspectRatio","ImageAssemble","ImageAugmentationLayer","ImageBoundingBoxes","ImageCache","ImageCacheValid","ImageCapture","ImageCaptureFunction","ImageCases","ImageChannels","ImageClip","ImageCollage","ImageColorSpace","ImageCompose","ImageContainsQ","ImageContents","ImageConvolve","ImageCooccurrence","ImageCorners","ImageCorrelate","ImageCorrespondingPoints","ImageCrop","ImageData","ImageDeconvolve","ImageDemosaic","ImageDifference","ImageDimensions","ImageDisplacements","ImageDistance","ImageEffect","ImageExposureCombine","ImageFeatureTrack","ImageFileApply","ImageFileFilter","ImageFileScan","ImageFilter","ImageFocusCombine","ImageForestingComponents","ImageFormattingWidth","ImageForwardTransformation","ImageGraphics","ImageHistogram","ImageIdentify","ImageInstanceQ","ImageKeypoints","ImageLabels","ImageLegends","ImageLevels","ImageLines","ImageMargins","ImageMarker","ImageMarkers","ImageMeasurements","ImageMesh","ImageMultiply","ImageOffset","ImagePad","ImagePadding","ImagePartition","ImagePeriodogram","ImagePerspectiveTransformation","ImagePosition","ImagePreviewFunction","ImagePyramid","ImagePyramidApply","ImageQ","ImageRangeCache","ImageRecolor","ImageReflect","ImageRegion","ImageResize","ImageResolution","ImageRestyle","ImageRotate","ImageRotated","ImageSaliencyFilter","ImageScaled","ImageScan","ImageSize","ImageSizeAction","ImageSizeCache","ImageSizeMultipliers","ImageSizeRaw","ImageSubtract","ImageTake","ImageTransformation","ImageTrim","ImageType","ImageValue","ImageValuePositions","ImagingDevice","ImplicitRegion","Implies","Import","ImportAutoReplacements","ImportByteArray","ImportOptions","ImportString","ImprovementImportance","In","Inactivate","Inactive","IncidenceGraph","IncidenceList","IncidenceMatrix","IncludeAromaticBonds","IncludeConstantBasis","IncludeDefinitions","IncludeDirectories","IncludeFileExtension","IncludeGeneratorTasks","IncludeHydrogens","IncludeInflections","IncludeMetaInformation","IncludePods","IncludeQuantities","IncludeRelatedTables","IncludeSingularTerm","IncludeWindowTimes","Increment","IndefiniteMatrixQ","Indent","IndentingNewlineSpacings","IndentMaxFraction","IndependenceTest","IndependentEdgeSetQ","IndependentPhysicalQuantity","IndependentUnit","IndependentUnitDimension","IndependentVertexSetQ","Indeterminate","IndeterminateThreshold","IndexCreationOptions","Indexed","IndexEdgeTaggedGraph","IndexGraph","IndexTag","Inequality","InexactNumberQ","InexactNumbers","InfiniteFuture","InfiniteLine","InfinitePast","InfinitePlane","Infinity","Infix","InflationAdjust","InflationMethod","Information","InformationData","InformationDataGrid","Inherited","InheritScope","InhomogeneousPoissonProcess","InitialEvaluationHistory","Initialization","InitializationCell","InitializationCellEvaluation","InitializationCellWarning","InitializationObjects","InitializationValue","Initialize","InitialSeeding","InlineCounterAssignments","InlineCounterIncrements","InlineRules","Inner","InnerPolygon","InnerPolyhedron","Inpaint","Input","InputAliases","InputAssumptions","InputAutoReplacements","InputField","InputFieldBox","InputFieldBoxOptions","InputForm","InputGrouping","InputNamePacket","InputNotebook","InputPacket","InputSettings","InputStream","InputString","InputStringPacket","InputToBoxFormPacket","Insert","InsertionFunction","InsertionPointObject","InsertLinebreaks","InsertResults","Inset","Inset3DBox","Inset3DBoxOptions","InsetBox","InsetBoxOptions","Insphere","Install","InstallService","InstanceNormalizationLayer","InString","Integer","IntegerDigits","IntegerExponent","IntegerLength","IntegerName","IntegerPart","IntegerPartitions","IntegerQ","IntegerReverse","Integers","IntegerString","Integral","Integrate","Interactive","InteractiveTradingChart","Interlaced","Interleaving","InternallyBalancedDecomposition","InterpolatingFunction","InterpolatingPolynomial","Interpolation","InterpolationOrder","InterpolationPoints","InterpolationPrecision","Interpretation","InterpretationBox","InterpretationBoxOptions","InterpretationFunction","Interpreter","InterpretTemplate","InterquartileRange","Interrupt","InterruptSettings","IntersectedEntityClass","IntersectingQ","Intersection","Interval","IntervalIntersection","IntervalMarkers","IntervalMarkersStyle","IntervalMemberQ","IntervalSlider","IntervalUnion","Into","Inverse","InverseBetaRegularized","InverseCDF","InverseChiSquareDistribution","InverseContinuousWaveletTransform","InverseDistanceTransform","InverseEllipticNomeQ","InverseErf","InverseErfc","InverseFourier","InverseFourierCosTransform","InverseFourierSequenceTransform","InverseFourierSinTransform","InverseFourierTransform","InverseFunction","InverseFunctions","InverseGammaDistribution","InverseGammaRegularized","InverseGaussianDistribution","InverseGudermannian","InverseHankelTransform","InverseHaversine","InverseImagePyramid","InverseJacobiCD","InverseJacobiCN","InverseJacobiCS","InverseJacobiDC","InverseJacobiDN","InverseJacobiDS","InverseJacobiNC","InverseJacobiND","InverseJacobiNS","InverseJacobiSC","InverseJacobiSD","InverseJacobiSN","InverseLaplaceTransform","InverseMellinTransform","InversePermutation","InverseRadon","InverseRadonTransform","InverseSeries","InverseShortTimeFourier","InverseSpectrogram","InverseSurvivalFunction","InverseTransformedRegion","InverseWaveletTransform","InverseWeierstrassP","InverseWishartMatrixDistribution","InverseZTransform","Invisible","InvisibleApplication","InvisibleTimes","IPAddress","IrreduciblePolynomialQ","IslandData","IsolatingInterval","IsomorphicGraphQ","IsotopeData","Italic","Item","ItemAspectRatio","ItemBox","ItemBoxOptions","ItemDisplayFunction","ItemSize","ItemStyle","ItoProcess","JaccardDissimilarity","JacobiAmplitude","Jacobian","JacobiCD","JacobiCN","JacobiCS","JacobiDC","JacobiDN","JacobiDS","JacobiNC","JacobiND","JacobiNS","JacobiP","JacobiSC","JacobiSD","JacobiSN","JacobiSymbol","JacobiZeta","JankoGroupJ1","JankoGroupJ2","JankoGroupJ3","JankoGroupJ4","JarqueBeraALMTest","JohnsonDistribution","Join","JoinAcross","Joined","JoinedCurve","JoinedCurveBox","JoinedCurveBoxOptions","JoinForm","JordanDecomposition","JordanModelDecomposition","JulianDate","JuliaSetBoettcher","JuliaSetIterationCount","JuliaSetPlot","JuliaSetPoints","K","KagiChart","KaiserBesselWindow","KaiserWindow","KalmanEstimator","KalmanFilter","KarhunenLoeveDecomposition","KaryTree","KatzCentrality","KCoreComponents","KDistribution","KEdgeConnectedComponents","KEdgeConnectedGraphQ","KeepExistingVersion","KelvinBei","KelvinBer","KelvinKei","KelvinKer","KendallTau","KendallTauTest","KernelExecute","KernelFunction","KernelMixtureDistribution","KernelObject","Kernels","Ket","Key","KeyCollisionFunction","KeyComplement","KeyDrop","KeyDropFrom","KeyExistsQ","KeyFreeQ","KeyIntersection","KeyMap","KeyMemberQ","KeypointStrength","Keys","KeySelect","KeySort","KeySortBy","KeyTake","KeyUnion","KeyValueMap","KeyValuePattern","Khinchin","KillProcess","KirchhoffGraph","KirchhoffMatrix","KleinInvariantJ","KnapsackSolve","KnightTourGraph","KnotData","KnownUnitQ","KochCurve","KolmogorovSmirnovTest","KroneckerDelta","KroneckerModelDecomposition","KroneckerProduct","KroneckerSymbol","KuiperTest","KumaraswamyDistribution","Kurtosis","KuwaharaFilter","KVertexConnectedComponents","KVertexConnectedGraphQ","LABColor","Label","Labeled","LabeledSlider","LabelingFunction","LabelingSize","LabelStyle","LabelVisibility","LaguerreL","LakeData","LambdaComponents","LambertW","LaminaData","LanczosWindow","LandauDistribution","Language","LanguageCategory","LanguageData","LanguageIdentify","LanguageOptions","LaplaceDistribution","LaplaceTransform","Laplacian","LaplacianFilter","LaplacianGaussianFilter","Large","Larger","Last","Latitude","LatitudeLongitude","LatticeData","LatticeReduce","Launch","LaunchKernels","LayeredGraphPlot","LayerSizeFunction","LayoutInformation","LCHColor","LCM","LeaderSize","LeafCount","LeapYearQ","LearnDistribution","LearnedDistribution","LearningRate","LearningRateMultipliers","LeastSquares","LeastSquaresFilterKernel","Left","LeftArrow","LeftArrowBar","LeftArrowRightArrow","LeftDownTeeVector","LeftDownVector","LeftDownVectorBar","LeftRightArrow","LeftRightVector","LeftTee","LeftTeeArrow","LeftTeeVector","LeftTriangle","LeftTriangleBar","LeftTriangleEqual","LeftUpDownVector","LeftUpTeeVector","LeftUpVector","LeftUpVectorBar","LeftVector","LeftVectorBar","LegendAppearance","Legended","LegendFunction","LegendLabel","LegendLayout","LegendMargins","LegendMarkers","LegendMarkerSize","LegendreP","LegendreQ","LegendreType","Length","LengthWhile","LerchPhi","Less","LessEqual","LessEqualGreater","LessEqualThan","LessFullEqual","LessGreater","LessLess","LessSlantEqual","LessThan","LessTilde","LetterCharacter","LetterCounts","LetterNumber","LetterQ","Level","LeveneTest","LeviCivitaTensor","LevyDistribution","Lexicographic","LibraryDataType","LibraryFunction","LibraryFunctionError","LibraryFunctionInformation","LibraryFunctionLoad","LibraryFunctionUnload","LibraryLoad","LibraryUnload","LicenseID","LiftingFilterData","LiftingWaveletTransform","LightBlue","LightBrown","LightCyan","Lighter","LightGray","LightGreen","Lighting","LightingAngle","LightMagenta","LightOrange","LightPink","LightPurple","LightRed","LightSources","LightYellow","Likelihood","Limit","LimitsPositioning","LimitsPositioningTokens","LindleyDistribution","Line","Line3DBox","Line3DBoxOptions","LinearFilter","LinearFractionalOptimization","LinearFractionalTransform","LinearGradientImage","LinearizingTransformationData","LinearLayer","LinearModelFit","LinearOffsetFunction","LinearOptimization","LinearProgramming","LinearRecurrence","LinearSolve","LinearSolveFunction","LineBox","LineBoxOptions","LineBreak","LinebreakAdjustments","LineBreakChart","LinebreakSemicolonWeighting","LineBreakWithin","LineColor","LineGraph","LineIndent","LineIndentMaxFraction","LineIntegralConvolutionPlot","LineIntegralConvolutionScale","LineLegend","LineOpacity","LineSpacing","LineWrapParts","LinkActivate","LinkClose","LinkConnect","LinkConnectedQ","LinkCreate","LinkError","LinkFlush","LinkFunction","LinkHost","LinkInterrupt","LinkLaunch","LinkMode","LinkObject","LinkOpen","LinkOptions","LinkPatterns","LinkProtocol","LinkRankCentrality","LinkRead","LinkReadHeld","LinkReadyQ","Links","LinkService","LinkWrite","LinkWriteHeld","LiouvilleLambda","List","Listable","ListAnimate","ListContourPlot","ListContourPlot3D","ListConvolve","ListCorrelate","ListCurvePathPlot","ListDeconvolve","ListDensityPlot","ListDensityPlot3D","Listen","ListFormat","ListFourierSequenceTransform","ListInterpolation","ListLineIntegralConvolutionPlot","ListLinePlot","ListLogLinearPlot","ListLogLogPlot","ListLogPlot","ListPicker","ListPickerBox","ListPickerBoxBackground","ListPickerBoxOptions","ListPlay","ListPlot","ListPlot3D","ListPointPlot3D","ListPolarPlot","ListQ","ListSliceContourPlot3D","ListSliceDensityPlot3D","ListSliceVectorPlot3D","ListStepPlot","ListStreamDensityPlot","ListStreamPlot","ListSurfacePlot3D","ListVectorDensityPlot","ListVectorPlot","ListVectorPlot3D","ListZTransform","Literal","LiteralSearch","LocalAdaptiveBinarize","LocalCache","LocalClusteringCoefficient","LocalizeDefinitions","LocalizeVariables","LocalObject","LocalObjects","LocalResponseNormalizationLayer","LocalSubmit","LocalSymbol","LocalTime","LocalTimeZone","LocationEquivalenceTest","LocationTest","Locator","LocatorAutoCreate","LocatorBox","LocatorBoxOptions","LocatorCentering","LocatorPane","LocatorPaneBox","LocatorPaneBoxOptions","LocatorRegion","Locked","Log","Log10","Log2","LogBarnesG","LogGamma","LogGammaDistribution","LogicalExpand","LogIntegral","LogisticDistribution","LogisticSigmoid","LogitModelFit","LogLikelihood","LogLinearPlot","LogLogisticDistribution","LogLogPlot","LogMultinormalDistribution","LogNormalDistribution","LogPlot","LogRankTest","LogSeriesDistribution","LongEqual","Longest","LongestCommonSequence","LongestCommonSequencePositions","LongestCommonSubsequence","LongestCommonSubsequencePositions","LongestMatch","LongestOrderedSequence","LongForm","Longitude","LongLeftArrow","LongLeftRightArrow","LongRightArrow","LongShortTermMemoryLayer","Lookup","Loopback","LoopFreeGraphQ","Looping","LossFunction","LowerCaseQ","LowerLeftArrow","LowerRightArrow","LowerTriangularize","LowerTriangularMatrixQ","LowpassFilter","LQEstimatorGains","LQGRegulator","LQOutputRegulatorGains","LQRegulatorGains","LUBackSubstitution","LucasL","LuccioSamiComponents","LUDecomposition","LunarEclipse","LUVColor","LyapunovSolve","LyonsGroupLy","MachineID","MachineName","MachineNumberQ","MachinePrecision","MacintoshSystemPageSetup","Magenta","Magnification","Magnify","MailAddressValidation","MailExecute","MailFolder","MailItem","MailReceiverFunction","MailResponseFunction","MailSearch","MailServerConnect","MailServerConnection","MailSettings","MainSolve","MaintainDynamicCaches","Majority","MakeBoxes","MakeExpression","MakeRules","ManagedLibraryExpressionID","ManagedLibraryExpressionQ","MandelbrotSetBoettcher","MandelbrotSetDistance","MandelbrotSetIterationCount","MandelbrotSetMemberQ","MandelbrotSetPlot","MangoldtLambda","ManhattanDistance","Manipulate","Manipulator","MannedSpaceMissionData","MannWhitneyTest","MantissaExponent","Manual","Map","MapAll","MapAt","MapIndexed","MAProcess","MapThread","MarchenkoPasturDistribution","MarcumQ","MardiaCombinedTest","MardiaKurtosisTest","MardiaSkewnessTest","MarginalDistribution","MarkovProcessProperties","Masking","MatchingDissimilarity","MatchLocalNameQ","MatchLocalNames","MatchQ","Material","MathematicalFunctionData","MathematicaNotation","MathieuC","MathieuCharacteristicA","MathieuCharacteristicB","MathieuCharacteristicExponent","MathieuCPrime","MathieuGroupM11","MathieuGroupM12","MathieuGroupM22","MathieuGroupM23","MathieuGroupM24","MathieuS","MathieuSPrime","MathMLForm","MathMLText","Matrices","MatrixExp","MatrixForm","MatrixFunction","MatrixLog","MatrixNormalDistribution","MatrixPlot","MatrixPower","MatrixPropertyDistribution","MatrixQ","MatrixRank","MatrixTDistribution","Max","MaxBend","MaxCellMeasure","MaxColorDistance","MaxDate","MaxDetect","MaxDuration","MaxExtraBandwidths","MaxExtraConditions","MaxFeatureDisplacement","MaxFeatures","MaxFilter","MaximalBy","Maximize","MaxItems","MaxIterations","MaxLimit","MaxMemoryUsed","MaxMixtureKernels","MaxOverlapFraction","MaxPlotPoints","MaxPoints","MaxRecursion","MaxStableDistribution","MaxStepFraction","MaxSteps","MaxStepSize","MaxTrainingRounds","MaxValue","MaxwellDistribution","MaxWordGap","McLaughlinGroupMcL","Mean","MeanAbsoluteLossLayer","MeanAround","MeanClusteringCoefficient","MeanDegreeConnectivity","MeanDeviation","MeanFilter","MeanGraphDistance","MeanNeighborDegree","MeanShift","MeanShiftFilter","MeanSquaredLossLayer","Median","MedianDeviation","MedianFilter","MedicalTestData","Medium","MeijerG","MeijerGReduce","MeixnerDistribution","MellinConvolve","MellinTransform","MemberQ","MemoryAvailable","MemoryConstrained","MemoryConstraint","MemoryInUse","MengerMesh","Menu","MenuAppearance","MenuCommandKey","MenuEvaluator","MenuItem","MenuList","MenuPacket","MenuSortingValue","MenuStyle","MenuView","Merge","MergeDifferences","MergingFunction","MersennePrimeExponent","MersennePrimeExponentQ","Mesh","MeshCellCentroid","MeshCellCount","MeshCellHighlight","MeshCellIndex","MeshCellLabel","MeshCellMarker","MeshCellMeasure","MeshCellQuality","MeshCells","MeshCellShapeFunction","MeshCellStyle","MeshConnectivityGraph","MeshCoordinates","MeshFunctions","MeshPrimitives","MeshQualityGoal","MeshRange","MeshRefinementFunction","MeshRegion","MeshRegionQ","MeshShading","MeshStyle","Message","MessageDialog","MessageList","MessageName","MessageObject","MessageOptions","MessagePacket","Messages","MessagesNotebook","MetaCharacters","MetaInformation","MeteorShowerData","Method","MethodOptions","MexicanHatWavelet","MeyerWavelet","Midpoint","Min","MinColorDistance","MinDate","MinDetect","MineralData","MinFilter","MinimalBy","MinimalPolynomial","MinimalStateSpaceModel","Minimize","MinimumTimeIncrement","MinIntervalSize","MinkowskiQuestionMark","MinLimit","MinMax","MinorPlanetData","Minors","MinRecursion","MinSize","MinStableDistribution","Minus","MinusPlus","MinValue","Missing","MissingBehavior","MissingDataMethod","MissingDataRules","MissingQ","MissingString","MissingStyle","MissingValuePattern","MittagLefflerE","MixedFractionParts","MixedGraphQ","MixedMagnitude","MixedRadix","MixedRadixQuantity","MixedUnit","MixtureDistribution","Mod","Modal","Mode","Modular","ModularInverse","ModularLambda","Module","Modulus","MoebiusMu","Molecule","MoleculeContainsQ","MoleculeEquivalentQ","MoleculeGraph","MoleculeModify","MoleculePattern","MoleculePlot","MoleculePlot3D","MoleculeProperty","MoleculeQ","MoleculeRecognize","MoleculeValue","Moment","Momentary","MomentConvert","MomentEvaluate","MomentGeneratingFunction","MomentOfInertia","Monday","Monitor","MonomialList","MonomialOrder","MonsterGroupM","MoonPhase","MoonPosition","MorletWavelet","MorphologicalBinarize","MorphologicalBranchPoints","MorphologicalComponents","MorphologicalEulerNumber","MorphologicalGraph","MorphologicalPerimeter","MorphologicalTransform","MortalityData","Most","MountainData","MouseAnnotation","MouseAppearance","MouseAppearanceTag","MouseButtons","Mouseover","MousePointerNote","MousePosition","MovieData","MovingAverage","MovingMap","MovingMedian","MoyalDistribution","Multicolumn","MultiedgeStyle","MultigraphQ","MultilaunchWarning","MultiLetterItalics","MultiLetterStyle","MultilineFunction","Multinomial","MultinomialDistribution","MultinormalDistribution","MultiplicativeOrder","Multiplicity","MultiplySides","Multiselection","MultivariateHypergeometricDistribution","MultivariatePoissonDistribution","MultivariateTDistribution","N","NakagamiDistribution","NameQ","Names","NamespaceBox","NamespaceBoxOptions","Nand","NArgMax","NArgMin","NBernoulliB","NBodySimulation","NBodySimulationData","NCache","NDEigensystem","NDEigenvalues","NDSolve","NDSolveValue","Nearest","NearestFunction","NearestMeshCells","NearestNeighborGraph","NearestTo","NebulaData","NeedCurrentFrontEndPackagePacket","NeedCurrentFrontEndSymbolsPacket","NeedlemanWunschSimilarity","Needs","Negative","NegativeBinomialDistribution","NegativeDefiniteMatrixQ","NegativeIntegers","NegativeMultinomialDistribution","NegativeRationals","NegativeReals","NegativeSemidefiniteMatrixQ","NeighborhoodData","NeighborhoodGraph","Nest","NestedGreaterGreater","NestedLessLess","NestedScriptRules","NestGraph","NestList","NestWhile","NestWhileList","NetAppend","NetBidirectionalOperator","NetChain","NetDecoder","NetDelete","NetDrop","NetEncoder","NetEvaluationMode","NetExtract","NetFlatten","NetFoldOperator","NetGANOperator","NetGraph","NetInformation","NetInitialize","NetInsert","NetInsertSharedArrays","NetJoin","NetMapOperator","NetMapThreadOperator","NetMeasurements","NetModel","NetNestOperator","NetPairEmbeddingOperator","NetPort","NetPortGradient","NetPrepend","NetRename","NetReplace","NetReplacePart","NetSharedArray","NetStateObject","NetTake","NetTrain","NetTrainResultsObject","NetworkPacketCapture","NetworkPacketRecording","NetworkPacketRecordingDuring","NetworkPacketTrace","NeumannValue","NevilleThetaC","NevilleThetaD","NevilleThetaN","NevilleThetaS","NewPrimitiveStyle","NExpectation","Next","NextCell","NextDate","NextPrime","NextScheduledTaskTime","NHoldAll","NHoldFirst","NHoldRest","NicholsGridLines","NicholsPlot","NightHemisphere","NIntegrate","NMaximize","NMaxValue","NMinimize","NMinValue","NominalVariables","NonAssociative","NoncentralBetaDistribution","NoncentralChiSquareDistribution","NoncentralFRatioDistribution","NoncentralStudentTDistribution","NonCommutativeMultiply","NonConstants","NondimensionalizationTransform","None","NoneTrue","NonlinearModelFit","NonlinearStateSpaceModel","NonlocalMeansFilter","NonNegative","NonNegativeIntegers","NonNegativeRationals","NonNegativeReals","NonPositive","NonPositiveIntegers","NonPositiveRationals","NonPositiveReals","Nor","NorlundB","Norm","Normal","NormalDistribution","NormalGrouping","NormalizationLayer","Normalize","Normalized","NormalizedSquaredEuclideanDistance","NormalMatrixQ","NormalsFunction","NormFunction","Not","NotCongruent","NotCupCap","NotDoubleVerticalBar","Notebook","NotebookApply","NotebookAutoSave","NotebookClose","NotebookConvertSettings","NotebookCreate","NotebookCreateReturnObject","NotebookDefault","NotebookDelete","NotebookDirectory","NotebookDynamicExpression","NotebookEvaluate","NotebookEventActions","NotebookFileName","NotebookFind","NotebookFindReturnObject","NotebookGet","NotebookGetLayoutInformationPacket","NotebookGetMisspellingsPacket","NotebookImport","NotebookInformation","NotebookInterfaceObject","NotebookLocate","NotebookObject","NotebookOpen","NotebookOpenReturnObject","NotebookPath","NotebookPrint","NotebookPut","NotebookPutReturnObject","NotebookRead","NotebookResetGeneratedCells","Notebooks","NotebookSave","NotebookSaveAs","NotebookSelection","NotebookSetupLayoutInformationPacket","NotebooksMenu","NotebookTemplate","NotebookWrite","NotElement","NotEqualTilde","NotExists","NotGreater","NotGreaterEqual","NotGreaterFullEqual","NotGreaterGreater","NotGreaterLess","NotGreaterSlantEqual","NotGreaterTilde","Nothing","NotHumpDownHump","NotHumpEqual","NotificationFunction","NotLeftTriangle","NotLeftTriangleBar","NotLeftTriangleEqual","NotLess","NotLessEqual","NotLessFullEqual","NotLessGreater","NotLessLess","NotLessSlantEqual","NotLessTilde","NotNestedGreaterGreater","NotNestedLessLess","NotPrecedes","NotPrecedesEqual","NotPrecedesSlantEqual","NotPrecedesTilde","NotReverseElement","NotRightTriangle","NotRightTriangleBar","NotRightTriangleEqual","NotSquareSubset","NotSquareSubsetEqual","NotSquareSuperset","NotSquareSupersetEqual","NotSubset","NotSubsetEqual","NotSucceeds","NotSucceedsEqual","NotSucceedsSlantEqual","NotSucceedsTilde","NotSuperset","NotSupersetEqual","NotTilde","NotTildeEqual","NotTildeFullEqual","NotTildeTilde","NotVerticalBar","Now","NoWhitespace","NProbability","NProduct","NProductFactors","NRoots","NSolve","NSum","NSumTerms","NuclearExplosionData","NuclearReactorData","Null","NullRecords","NullSpace","NullWords","Number","NumberCompose","NumberDecompose","NumberExpand","NumberFieldClassNumber","NumberFieldDiscriminant","NumberFieldFundamentalUnits","NumberFieldIntegralBasis","NumberFieldNormRepresentatives","NumberFieldRegulator","NumberFieldRootsOfUnity","NumberFieldSignature","NumberForm","NumberFormat","NumberLinePlot","NumberMarks","NumberMultiplier","NumberPadding","NumberPoint","NumberQ","NumberSeparator","NumberSigns","NumberString","Numerator","NumeratorDenominator","NumericalOrder","NumericalSort","NumericArray","NumericArrayQ","NumericArrayType","NumericFunction","NumericQ","NuttallWindow","NValues","NyquistGridLines","NyquistPlot","O","ObservabilityGramian","ObservabilityMatrix","ObservableDecomposition","ObservableModelQ","OceanData","Octahedron","OddQ","Off","Offset","OLEData","On","ONanGroupON","Once","OneIdentity","Opacity","OpacityFunction","OpacityFunctionScaling","Open","OpenAppend","Opener","OpenerBox","OpenerBoxOptions","OpenerView","OpenFunctionInspectorPacket","Opening","OpenRead","OpenSpecialOptions","OpenTemporary","OpenWrite","Operate","OperatingSystem","OperatorApplied","OptimumFlowData","Optional","OptionalElement","OptionInspectorSettings","OptionQ","Options","OptionsPacket","OptionsPattern","OptionValue","OptionValueBox","OptionValueBoxOptions","Or","Orange","Order","OrderDistribution","OrderedQ","Ordering","OrderingBy","OrderingLayer","Orderless","OrderlessPatternSequence","OrnsteinUhlenbeckProcess","Orthogonalize","OrthogonalMatrixQ","Out","Outer","OuterPolygon","OuterPolyhedron","OutputAutoOverwrite","OutputControllabilityMatrix","OutputControllableModelQ","OutputForm","OutputFormData","OutputGrouping","OutputMathEditExpression","OutputNamePacket","OutputResponse","OutputSizeLimit","OutputStream","Over","OverBar","OverDot","Overflow","OverHat","Overlaps","Overlay","OverlayBox","OverlayBoxOptions","Overscript","OverscriptBox","OverscriptBoxOptions","OverTilde","OverVector","OverwriteTarget","OwenT","OwnValues","Package","PackingMethod","PackPaclet","PacletDataRebuild","PacletDirectoryAdd","PacletDirectoryLoad","PacletDirectoryRemove","PacletDirectoryUnload","PacletDisable","PacletEnable","PacletFind","PacletFindRemote","PacletInformation","PacletInstall","PacletInstallSubmit","PacletNewerQ","PacletObject","PacletObjectQ","PacletSite","PacletSiteObject","PacletSiteRegister","PacletSites","PacletSiteUnregister","PacletSiteUpdate","PacletUninstall","PacletUpdate","PaddedForm","Padding","PaddingLayer","PaddingSize","PadeApproximant","PadLeft","PadRight","PageBreakAbove","PageBreakBelow","PageBreakWithin","PageFooterLines","PageFooters","PageHeaderLines","PageHeaders","PageHeight","PageRankCentrality","PageTheme","PageWidth","Pagination","PairedBarChart","PairedHistogram","PairedSmoothHistogram","PairedTTest","PairedZTest","PaletteNotebook","PalettePath","PalindromeQ","Pane","PaneBox","PaneBoxOptions","Panel","PanelBox","PanelBoxOptions","Paneled","PaneSelector","PaneSelectorBox","PaneSelectorBoxOptions","PaperWidth","ParabolicCylinderD","ParagraphIndent","ParagraphSpacing","ParallelArray","ParallelCombine","ParallelDo","Parallelepiped","ParallelEvaluate","Parallelization","Parallelize","ParallelMap","ParallelNeeds","Parallelogram","ParallelProduct","ParallelSubmit","ParallelSum","ParallelTable","ParallelTry","Parameter","ParameterEstimator","ParameterMixtureDistribution","ParameterVariables","ParametricFunction","ParametricNDSolve","ParametricNDSolveValue","ParametricPlot","ParametricPlot3D","ParametricRampLayer","ParametricRegion","ParentBox","ParentCell","ParentConnect","ParentDirectory","ParentForm","Parenthesize","ParentList","ParentNotebook","ParetoDistribution","ParetoPickandsDistribution","ParkData","Part","PartBehavior","PartialCorrelationFunction","PartialD","ParticleAcceleratorData","ParticleData","Partition","PartitionGranularity","PartitionsP","PartitionsQ","PartLayer","PartOfSpeech","PartProtection","ParzenWindow","PascalDistribution","PassEventsDown","PassEventsUp","Paste","PasteAutoQuoteCharacters","PasteBoxFormInlineCells","PasteButton","Path","PathGraph","PathGraphQ","Pattern","PatternFilling","PatternSequence","PatternTest","PauliMatrix","PaulWavelet","Pause","PausedTime","PDF","PeakDetect","PeanoCurve","PearsonChiSquareTest","PearsonCorrelationTest","PearsonDistribution","PercentForm","PerfectNumber","PerfectNumberQ","PerformanceGoal","Perimeter","PeriodicBoundaryCondition","PeriodicInterpolation","Periodogram","PeriodogramArray","Permanent","Permissions","PermissionsGroup","PermissionsGroupMemberQ","PermissionsGroups","PermissionsKey","PermissionsKeys","PermutationCycles","PermutationCyclesQ","PermutationGroup","PermutationLength","PermutationList","PermutationListQ","PermutationMax","PermutationMin","PermutationOrder","PermutationPower","PermutationProduct","PermutationReplace","Permutations","PermutationSupport","Permute","PeronaMalikFilter","Perpendicular","PerpendicularBisector","PersistenceLocation","PersistenceTime","PersistentObject","PersistentObjects","PersistentValue","PersonData","PERTDistribution","PetersenGraph","PhaseMargins","PhaseRange","PhysicalSystemData","Pi","Pick","PIDData","PIDDerivativeFilter","PIDFeedforward","PIDTune","Piecewise","PiecewiseExpand","PieChart","PieChart3D","PillaiTrace","PillaiTraceTest","PingTime","Pink","PitchRecognize","Pivoting","PixelConstrained","PixelValue","PixelValuePositions","Placed","Placeholder","PlaceholderReplace","Plain","PlanarAngle","PlanarGraph","PlanarGraphQ","PlanckRadiationLaw","PlaneCurveData","PlanetaryMoonData","PlanetData","PlantData","Play","PlayRange","Plot","Plot3D","Plot3Matrix","PlotDivision","PlotJoined","PlotLabel","PlotLabels","PlotLayout","PlotLegends","PlotMarkers","PlotPoints","PlotRange","PlotRangeClipping","PlotRangeClipPlanesStyle","PlotRangePadding","PlotRegion","PlotStyle","PlotTheme","Pluralize","Plus","PlusMinus","Pochhammer","PodStates","PodWidth","Point","Point3DBox","Point3DBoxOptions","PointBox","PointBoxOptions","PointFigureChart","PointLegend","PointSize","PoissonConsulDistribution","PoissonDistribution","PoissonProcess","PoissonWindow","PolarAxes","PolarAxesOrigin","PolarGridLines","PolarPlot","PolarTicks","PoleZeroMarkers","PolyaAeppliDistribution","PolyGamma","Polygon","Polygon3DBox","Polygon3DBoxOptions","PolygonalNumber","PolygonAngle","PolygonBox","PolygonBoxOptions","PolygonCoordinates","PolygonDecomposition","PolygonHoleScale","PolygonIntersections","PolygonScale","Polyhedron","PolyhedronAngle","PolyhedronCoordinates","PolyhedronData","PolyhedronDecomposition","PolyhedronGenus","PolyLog","PolynomialExtendedGCD","PolynomialForm","PolynomialGCD","PolynomialLCM","PolynomialMod","PolynomialQ","PolynomialQuotient","PolynomialQuotientRemainder","PolynomialReduce","PolynomialRemainder","Polynomials","PoolingLayer","PopupMenu","PopupMenuBox","PopupMenuBoxOptions","PopupView","PopupWindow","Position","PositionIndex","Positive","PositiveDefiniteMatrixQ","PositiveIntegers","PositiveRationals","PositiveReals","PositiveSemidefiniteMatrixQ","PossibleZeroQ","Postfix","PostScript","Power","PowerDistribution","PowerExpand","PowerMod","PowerModList","PowerRange","PowerSpectralDensity","PowersRepresentations","PowerSymmetricPolynomial","Precedence","PrecedenceForm","Precedes","PrecedesEqual","PrecedesSlantEqual","PrecedesTilde","Precision","PrecisionGoal","PreDecrement","Predict","PredictionRoot","PredictorFunction","PredictorInformation","PredictorMeasurements","PredictorMeasurementsObject","PreemptProtect","PreferencesPath","Prefix","PreIncrement","Prepend","PrependLayer","PrependTo","PreprocessingRules","PreserveColor","PreserveImageOptions","Previous","PreviousCell","PreviousDate","PriceGraphDistribution","PrimaryPlaceholder","Prime","PrimeNu","PrimeOmega","PrimePi","PrimePowerQ","PrimeQ","Primes","PrimeZetaP","PrimitivePolynomialQ","PrimitiveRoot","PrimitiveRootList","PrincipalComponents","PrincipalValue","Print","PrintableASCIIQ","PrintAction","PrintForm","PrintingCopies","PrintingOptions","PrintingPageRange","PrintingStartingPageNumber","PrintingStyleEnvironment","Printout3D","Printout3DPreviewer","PrintPrecision","PrintTemporary","Prism","PrismBox","PrismBoxOptions","PrivateCellOptions","PrivateEvaluationOptions","PrivateFontOptions","PrivateFrontEndOptions","PrivateKey","PrivateNotebookOptions","PrivatePaths","Probability","ProbabilityDistribution","ProbabilityPlot","ProbabilityPr","ProbabilityScalePlot","ProbitModelFit","ProcessConnection","ProcessDirectory","ProcessEnvironment","Processes","ProcessEstimator","ProcessInformation","ProcessObject","ProcessParameterAssumptions","ProcessParameterQ","ProcessStateDomain","ProcessStatus","ProcessTimeDomain","Product","ProductDistribution","ProductLog","ProgressIndicator","ProgressIndicatorBox","ProgressIndicatorBoxOptions","Projection","Prolog","PromptForm","ProofObject","Properties","Property","PropertyList","PropertyValue","Proportion","Proportional","Protect","Protected","ProteinData","Pruning","PseudoInverse","PsychrometricPropertyData","PublicKey","PublisherID","PulsarData","PunctuationCharacter","Purple","Put","PutAppend","Pyramid","PyramidBox","PyramidBoxOptions","QBinomial","QFactorial","QGamma","QHypergeometricPFQ","QnDispersion","QPochhammer","QPolyGamma","QRDecomposition","QuadraticIrrationalQ","QuadraticOptimization","Quantile","QuantilePlot","Quantity","QuantityArray","QuantityDistribution","QuantityForm","QuantityMagnitude","QuantityQ","QuantityUnit","QuantityVariable","QuantityVariableCanonicalUnit","QuantityVariableDimensions","QuantityVariableIdentifier","QuantityVariablePhysicalQuantity","Quartics","QuartileDeviation","Quartiles","QuartileSkewness","Query","QueueingNetworkProcess","QueueingProcess","QueueProperties","Quiet","Quit","Quotient","QuotientRemainder","RadialGradientImage","RadialityCentrality","RadicalBox","RadicalBoxOptions","RadioButton","RadioButtonBar","RadioButtonBox","RadioButtonBoxOptions","Radon","RadonTransform","RamanujanTau","RamanujanTauL","RamanujanTauTheta","RamanujanTauZ","Ramp","Random","RandomChoice","RandomColor","RandomComplex","RandomEntity","RandomFunction","RandomGeoPosition","RandomGraph","RandomImage","RandomInstance","RandomInteger","RandomPermutation","RandomPoint","RandomPolygon","RandomPolyhedron","RandomPrime","RandomReal","RandomSample","RandomSeed","RandomSeeding","RandomVariate","RandomWalkProcess","RandomWord","Range","RangeFilter","RangeSpecification","RankedMax","RankedMin","RarerProbability","Raster","Raster3D","Raster3DBox","Raster3DBoxOptions","RasterArray","RasterBox","RasterBoxOptions","Rasterize","RasterSize","Rational","RationalFunctions","Rationalize","Rationals","Ratios","RawArray","RawBoxes","RawData","RawMedium","RayleighDistribution","Re","Read","ReadByteArray","ReadLine","ReadList","ReadProtected","ReadString","Real","RealAbs","RealBlockDiagonalForm","RealDigits","RealExponent","Reals","RealSign","Reap","RebuildPacletData","RecognitionPrior","RecognitionThreshold","Record","RecordLists","RecordSeparators","Rectangle","RectangleBox","RectangleBoxOptions","RectangleChart","RectangleChart3D","RectangularRepeatingElement","RecurrenceFilter","RecurrenceTable","RecurringDigitsForm","Red","Reduce","RefBox","ReferenceLineStyle","ReferenceMarkers","ReferenceMarkerStyle","Refine","ReflectionMatrix","ReflectionTransform","Refresh","RefreshRate","Region","RegionBinarize","RegionBoundary","RegionBoundaryStyle","RegionBounds","RegionCentroid","RegionDifference","RegionDimension","RegionDisjoint","RegionDistance","RegionDistanceFunction","RegionEmbeddingDimension","RegionEqual","RegionFillingStyle","RegionFunction","RegionImage","RegionIntersection","RegionMeasure","RegionMember","RegionMemberFunction","RegionMoment","RegionNearest","RegionNearestFunction","RegionPlot","RegionPlot3D","RegionProduct","RegionQ","RegionResize","RegionSize","RegionSymmetricDifference","RegionUnion","RegionWithin","RegisterExternalEvaluator","RegularExpression","Regularization","RegularlySampledQ","RegularPolygon","ReIm","ReImLabels","ReImPlot","ReImStyle","Reinstall","RelationalDatabase","RelationGraph","Release","ReleaseHold","ReliabilityDistribution","ReliefImage","ReliefPlot","RemoteAuthorizationCaching","RemoteConnect","RemoteConnectionObject","RemoteFile","RemoteRun","RemoteRunProcess","Remove","RemoveAlphaChannel","RemoveAsynchronousTask","RemoveAudioStream","RemoveBackground","RemoveChannelListener","RemoveChannelSubscribers","Removed","RemoveDiacritics","RemoveInputStreamMethod","RemoveOutputStreamMethod","RemoveProperty","RemoveScheduledTask","RemoveUsers","RemoveVideoStream","RenameDirectory","RenameFile","RenderAll","RenderingOptions","RenewalProcess","RenkoChart","RepairMesh","Repeated","RepeatedNull","RepeatedString","RepeatedTiming","RepeatingElement","Replace","ReplaceAll","ReplaceHeldPart","ReplaceImageValue","ReplaceList","ReplacePart","ReplacePixelValue","ReplaceRepeated","ReplicateLayer","RequiredPhysicalQuantities","Resampling","ResamplingAlgorithmData","ResamplingMethod","Rescale","RescalingTransform","ResetDirectory","ResetMenusPacket","ResetScheduledTask","ReshapeLayer","Residue","ResizeLayer","Resolve","ResourceAcquire","ResourceData","ResourceFunction","ResourceObject","ResourceRegister","ResourceRemove","ResourceSearch","ResourceSubmissionObject","ResourceSubmit","ResourceSystemBase","ResourceSystemPath","ResourceUpdate","ResourceVersion","ResponseForm","Rest","RestartInterval","Restricted","Resultant","ResumePacket","Return","ReturnEntersInput","ReturnExpressionPacket","ReturnInputFormPacket","ReturnPacket","ReturnReceiptFunction","ReturnTextPacket","Reverse","ReverseApplied","ReverseBiorthogonalSplineWavelet","ReverseElement","ReverseEquilibrium","ReverseGraph","ReverseSort","ReverseSortBy","ReverseUpEquilibrium","RevolutionAxis","RevolutionPlot3D","RGBColor","RiccatiSolve","RiceDistribution","RidgeFilter","RiemannR","RiemannSiegelTheta","RiemannSiegelZ","RiemannXi","Riffle","Right","RightArrow","RightArrowBar","RightArrowLeftArrow","RightComposition","RightCosetRepresentative","RightDownTeeVector","RightDownVector","RightDownVectorBar","RightTee","RightTeeArrow","RightTeeVector","RightTriangle","RightTriangleBar","RightTriangleEqual","RightUpDownVector","RightUpTeeVector","RightUpVector","RightUpVectorBar","RightVector","RightVectorBar","RiskAchievementImportance","RiskReductionImportance","RogersTanimotoDissimilarity","RollPitchYawAngles","RollPitchYawMatrix","RomanNumeral","Root","RootApproximant","RootIntervals","RootLocusPlot","RootMeanSquare","RootOfUnityQ","RootReduce","Roots","RootSum","Rotate","RotateLabel","RotateLeft","RotateRight","RotationAction","RotationBox","RotationBoxOptions","RotationMatrix","RotationTransform","Round","RoundImplies","RoundingRadius","Row","RowAlignments","RowBackgrounds","RowBox","RowHeights","RowLines","RowMinHeight","RowReduce","RowsEqual","RowSpacings","RSolve","RSolveValue","RudinShapiro","RudvalisGroupRu","Rule","RuleCondition","RuleDelayed","RuleForm","RulePlot","RulerUnits","Run","RunProcess","RunScheduledTask","RunThrough","RuntimeAttributes","RuntimeOptions","RussellRaoDissimilarity","SameQ","SameTest","SameTestProperties","SampledEntityClass","SampleDepth","SampledSoundFunction","SampledSoundList","SampleRate","SamplingPeriod","SARIMAProcess","SARMAProcess","SASTriangle","SatelliteData","SatisfiabilityCount","SatisfiabilityInstances","SatisfiableQ","Saturday","Save","Saveable","SaveAutoDelete","SaveConnection","SaveDefinitions","SavitzkyGolayMatrix","SawtoothWave","Scale","Scaled","ScaleDivisions","ScaledMousePosition","ScaleOrigin","ScalePadding","ScaleRanges","ScaleRangeStyle","ScalingFunctions","ScalingMatrix","ScalingTransform","Scan","ScheduledTask","ScheduledTaskActiveQ","ScheduledTaskInformation","ScheduledTaskInformationData","ScheduledTaskObject","ScheduledTasks","SchurDecomposition","ScientificForm","ScientificNotationThreshold","ScorerGi","ScorerGiPrime","ScorerHi","ScorerHiPrime","ScreenRectangle","ScreenStyleEnvironment","ScriptBaselineShifts","ScriptForm","ScriptLevel","ScriptMinSize","ScriptRules","ScriptSizeMultipliers","Scrollbars","ScrollingOptions","ScrollPosition","SearchAdjustment","SearchIndexObject","SearchIndices","SearchQueryString","SearchResultObject","Sec","Sech","SechDistribution","SecondOrderConeOptimization","SectionGrouping","SectorChart","SectorChart3D","SectorOrigin","SectorSpacing","SecuredAuthenticationKey","SecuredAuthenticationKeys","SeedRandom","Select","Selectable","SelectComponents","SelectedCells","SelectedNotebook","SelectFirst","Selection","SelectionAnimate","SelectionCell","SelectionCellCreateCell","SelectionCellDefaultStyle","SelectionCellParentStyle","SelectionCreateCell","SelectionDebuggerTag","SelectionDuplicateCell","SelectionEvaluate","SelectionEvaluateCreateCell","SelectionMove","SelectionPlaceholder","SelectionSetStyle","SelectWithContents","SelfLoops","SelfLoopStyle","SemanticImport","SemanticImportString","SemanticInterpretation","SemialgebraicComponentInstances","SemidefiniteOptimization","SendMail","SendMessage","Sequence","SequenceAlignment","SequenceAttentionLayer","SequenceCases","SequenceCount","SequenceFold","SequenceFoldList","SequenceForm","SequenceHold","SequenceLastLayer","SequenceMostLayer","SequencePosition","SequencePredict","SequencePredictorFunction","SequenceReplace","SequenceRestLayer","SequenceReverseLayer","SequenceSplit","Series","SeriesCoefficient","SeriesData","SeriesTermGoal","ServiceConnect","ServiceDisconnect","ServiceExecute","ServiceObject","ServiceRequest","ServiceResponse","ServiceSubmit","SessionSubmit","SessionTime","Set","SetAccuracy","SetAlphaChannel","SetAttributes","Setbacks","SetBoxFormNamesPacket","SetCloudDirectory","SetCookies","SetDelayed","SetDirectory","SetEnvironment","SetEvaluationNotebook","SetFileDate","SetFileLoadingContext","SetNotebookStatusLine","SetOptions","SetOptionsPacket","SetPermissions","SetPrecision","SetProperty","SetSecuredAuthenticationKey","SetSelectedNotebook","SetSharedFunction","SetSharedVariable","SetSpeechParametersPacket","SetStreamPosition","SetSystemModel","SetSystemOptions","Setter","SetterBar","SetterBox","SetterBoxOptions","Setting","SetUsers","SetValue","Shading","Shallow","ShannonWavelet","ShapiroWilkTest","Share","SharingList","Sharpen","ShearingMatrix","ShearingTransform","ShellRegion","ShenCastanMatrix","ShiftedGompertzDistribution","ShiftRegisterSequence","Short","ShortDownArrow","Shortest","ShortestMatch","ShortestPathFunction","ShortLeftArrow","ShortRightArrow","ShortTimeFourier","ShortTimeFourierData","ShortUpArrow","Show","ShowAutoConvert","ShowAutoSpellCheck","ShowAutoStyles","ShowCellBracket","ShowCellLabel","ShowCellTags","ShowClosedCellArea","ShowCodeAssist","ShowContents","ShowControls","ShowCursorTracker","ShowGroupOpenCloseIcon","ShowGroupOpener","ShowInvisibleCharacters","ShowPageBreaks","ShowPredictiveInterface","ShowSelection","ShowShortBoxForm","ShowSpecialCharacters","ShowStringCharacters","ShowSyntaxStyles","ShrinkingDelay","ShrinkWrapBoundingBox","SiderealTime","SiegelTheta","SiegelTukeyTest","SierpinskiCurve","SierpinskiMesh","Sign","Signature","SignedRankTest","SignedRegionDistance","SignificanceLevel","SignPadding","SignTest","SimilarityRules","SimpleGraph","SimpleGraphQ","SimplePolygonQ","SimplePolyhedronQ","Simplex","Simplify","Sin","Sinc","SinghMaddalaDistribution","SingleEvaluation","SingleLetterItalics","SingleLetterStyle","SingularValueDecomposition","SingularValueList","SingularValuePlot","SingularValues","Sinh","SinhIntegral","SinIntegral","SixJSymbol","Skeleton","SkeletonTransform","SkellamDistribution","Skewness","SkewNormalDistribution","SkinStyle","Skip","SliceContourPlot3D","SliceDensityPlot3D","SliceDistribution","SliceVectorPlot3D","Slider","Slider2D","Slider2DBox","Slider2DBoxOptions","SliderBox","SliderBoxOptions","SlideView","Slot","SlotSequence","Small","SmallCircle","Smaller","SmithDecomposition","SmithDelayCompensator","SmithWatermanSimilarity","SmoothDensityHistogram","SmoothHistogram","SmoothHistogram3D","SmoothKernelDistribution","SnDispersion","Snippet","SnubPolyhedron","SocialMediaData","Socket","SocketConnect","SocketListen","SocketListener","SocketObject","SocketOpen","SocketReadMessage","SocketReadyQ","Sockets","SocketWaitAll","SocketWaitNext","SoftmaxLayer","SokalSneathDissimilarity","SolarEclipse","SolarSystemFeatureData","SolidAngle","SolidData","SolidRegionQ","Solve","SolveAlways","SolveDelayed","Sort","SortBy","SortedBy","SortedEntityClass","Sound","SoundAndGraphics","SoundNote","SoundVolume","SourceLink","Sow","Space","SpaceCurveData","SpaceForm","Spacer","Spacings","Span","SpanAdjustments","SpanCharacterRounding","SpanFromAbove","SpanFromBoth","SpanFromLeft","SpanLineThickness","SpanMaxSize","SpanMinSize","SpanningCharacters","SpanSymmetric","SparseArray","SpatialGraphDistribution","SpatialMedian","SpatialTransformationLayer","Speak","SpeakerMatchQ","SpeakTextPacket","SpearmanRankTest","SpearmanRho","SpeciesData","SpecificityGoal","SpectralLineData","Spectrogram","SpectrogramArray","Specularity","SpeechCases","SpeechInterpreter","SpeechRecognize","SpeechSynthesize","SpellingCorrection","SpellingCorrectionList","SpellingDictionaries","SpellingDictionariesPath","SpellingOptions","SpellingSuggestionsPacket","Sphere","SphereBox","SpherePoints","SphericalBesselJ","SphericalBesselY","SphericalHankelH1","SphericalHankelH2","SphericalHarmonicY","SphericalPlot3D","SphericalRegion","SphericalShell","SpheroidalEigenvalue","SpheroidalJoiningFactor","SpheroidalPS","SpheroidalPSPrime","SpheroidalQS","SpheroidalQSPrime","SpheroidalRadialFactor","SpheroidalS1","SpheroidalS1Prime","SpheroidalS2","SpheroidalS2Prime","Splice","SplicedDistribution","SplineClosed","SplineDegree","SplineKnots","SplineWeights","Split","SplitBy","SpokenString","Sqrt","SqrtBox","SqrtBoxOptions","Square","SquaredEuclideanDistance","SquareFreeQ","SquareIntersection","SquareMatrixQ","SquareRepeatingElement","SquaresR","SquareSubset","SquareSubsetEqual","SquareSuperset","SquareSupersetEqual","SquareUnion","SquareWave","SSSTriangle","StabilityMargins","StabilityMarginsStyle","StableDistribution","Stack","StackBegin","StackComplete","StackedDateListPlot","StackedListPlot","StackInhibit","StadiumShape","StandardAtmosphereData","StandardDeviation","StandardDeviationFilter","StandardForm","Standardize","Standardized","StandardOceanData","StandbyDistribution","Star","StarClusterData","StarData","StarGraph","StartAsynchronousTask","StartExternalSession","StartingStepSize","StartOfLine","StartOfString","StartProcess","StartScheduledTask","StartupSound","StartWebSession","StateDimensions","StateFeedbackGains","StateOutputEstimator","StateResponse","StateSpaceModel","StateSpaceRealization","StateSpaceTransform","StateTransformationLinearize","StationaryDistribution","StationaryWaveletPacketTransform","StationaryWaveletTransform","StatusArea","StatusCentrality","StepMonitor","StereochemistryElements","StieltjesGamma","StippleShading","StirlingS1","StirlingS2","StopAsynchronousTask","StoppingPowerData","StopScheduledTask","StrataVariables","StratonovichProcess","StreamColorFunction","StreamColorFunctionScaling","StreamDensityPlot","StreamMarkers","StreamPlot","StreamPoints","StreamPosition","Streams","StreamScale","StreamStyle","String","StringBreak","StringByteCount","StringCases","StringContainsQ","StringCount","StringDelete","StringDrop","StringEndsQ","StringExpression","StringExtract","StringForm","StringFormat","StringFreeQ","StringInsert","StringJoin","StringLength","StringMatchQ","StringPadLeft","StringPadRight","StringPart","StringPartition","StringPosition","StringQ","StringRepeat","StringReplace","StringReplaceList","StringReplacePart","StringReverse","StringRiffle","StringRotateLeft","StringRotateRight","StringSkeleton","StringSplit","StringStartsQ","StringTake","StringTemplate","StringToByteArray","StringToStream","StringTrim","StripBoxes","StripOnInput","StripWrapperBoxes","StrokeForm","StructuralImportance","StructuredArray","StructuredArrayHeadQ","StructuredSelection","StruveH","StruveL","Stub","StudentTDistribution","Style","StyleBox","StyleBoxAutoDelete","StyleData","StyleDefinitions","StyleForm","StyleHints","StyleKeyMapping","StyleMenuListing","StyleNameDialogSettings","StyleNames","StylePrint","StyleSheetPath","Subdivide","Subfactorial","Subgraph","SubMinus","SubPlus","SubresultantPolynomialRemainders","SubresultantPolynomials","Subresultants","Subscript","SubscriptBox","SubscriptBoxOptions","Subscripted","Subsequences","Subset","SubsetCases","SubsetCount","SubsetEqual","SubsetMap","SubsetPosition","SubsetQ","SubsetReplace","Subsets","SubStar","SubstitutionSystem","Subsuperscript","SubsuperscriptBox","SubsuperscriptBoxOptions","SubtitleEncoding","SubtitleTracks","Subtract","SubtractFrom","SubtractSides","SubValues","Succeeds","SucceedsEqual","SucceedsSlantEqual","SucceedsTilde","Success","SuchThat","Sum","SumConvergence","SummationLayer","Sunday","SunPosition","Sunrise","Sunset","SuperDagger","SuperMinus","SupernovaData","SuperPlus","Superscript","SuperscriptBox","SuperscriptBoxOptions","Superset","SupersetEqual","SuperStar","Surd","SurdForm","SurfaceAppearance","SurfaceArea","SurfaceColor","SurfaceData","SurfaceGraphics","SurvivalDistribution","SurvivalFunction","SurvivalModel","SurvivalModelFit","SuspendPacket","SuzukiDistribution","SuzukiGroupSuz","SwatchLegend","Switch","Symbol","SymbolName","SymletWavelet","Symmetric","SymmetricGroup","SymmetricKey","SymmetricMatrixQ","SymmetricPolynomial","SymmetricReduction","Symmetrize","SymmetrizedArray","SymmetrizedArrayRules","SymmetrizedDependentComponents","SymmetrizedIndependentComponents","SymmetrizedReplacePart","SynchronousInitialization","SynchronousUpdating","Synonyms","Syntax","SyntaxForm","SyntaxInformation","SyntaxLength","SyntaxPacket","SyntaxQ","SynthesizeMissingValues","SystemCredential","SystemCredentialData","SystemCredentialKey","SystemCredentialKeys","SystemCredentialStoreObject","SystemDialogInput","SystemException","SystemGet","SystemHelpPath","SystemInformation","SystemInformationData","SystemInstall","SystemModel","SystemModeler","SystemModelExamples","SystemModelLinearize","SystemModelParametricSimulate","SystemModelPlot","SystemModelProgressReporting","SystemModelReliability","SystemModels","SystemModelSimulate","SystemModelSimulateSensitivity","SystemModelSimulationData","SystemOpen","SystemOptions","SystemProcessData","SystemProcesses","SystemsConnectionsModel","SystemsModelDelay","SystemsModelDelayApproximate","SystemsModelDelete","SystemsModelDimensions","SystemsModelExtract","SystemsModelFeedbackConnect","SystemsModelLabels","SystemsModelLinearity","SystemsModelMerge","SystemsModelOrder","SystemsModelParallelConnect","SystemsModelSeriesConnect","SystemsModelStateFeedbackConnect","SystemsModelVectorRelativeOrders","SystemStub","SystemTest","Tab","TabFilling","Table","TableAlignments","TableDepth","TableDirections","TableForm","TableHeadings","TableSpacing","TableView","TableViewBox","TableViewBoxBackground","TableViewBoxItemSize","TableViewBoxOptions","TabSpacings","TabView","TabViewBox","TabViewBoxOptions","TagBox","TagBoxNote","TagBoxOptions","TaggingRules","TagSet","TagSetDelayed","TagStyle","TagUnset","Take","TakeDrop","TakeLargest","TakeLargestBy","TakeList","TakeSmallest","TakeSmallestBy","TakeWhile","Tally","Tan","Tanh","TargetDevice","TargetFunctions","TargetSystem","TargetUnits","TaskAbort","TaskExecute","TaskObject","TaskRemove","TaskResume","Tasks","TaskSuspend","TaskWait","TautologyQ","TelegraphProcess","TemplateApply","TemplateArgBox","TemplateBox","TemplateBoxOptions","TemplateEvaluate","TemplateExpression","TemplateIf","TemplateObject","TemplateSequence","TemplateSlot","TemplateSlotSequence","TemplateUnevaluated","TemplateVerbatim","TemplateWith","TemporalData","TemporalRegularity","Temporary","TemporaryVariable","TensorContract","TensorDimensions","TensorExpand","TensorProduct","TensorQ","TensorRank","TensorReduce","TensorSymmetry","TensorTranspose","TensorWedge","TestID","TestReport","TestReportObject","TestResultObject","Tetrahedron","TetrahedronBox","TetrahedronBoxOptions","TeXForm","TeXSave","Text","Text3DBox","Text3DBoxOptions","TextAlignment","TextBand","TextBoundingBox","TextBox","TextCases","TextCell","TextClipboardType","TextContents","TextData","TextElement","TextForm","TextGrid","TextJustification","TextLine","TextPacket","TextParagraph","TextPosition","TextRecognize","TextSearch","TextSearchReport","TextSentences","TextString","TextStructure","TextStyle","TextTranslation","Texture","TextureCoordinateFunction","TextureCoordinateScaling","TextWords","Therefore","ThermodynamicData","ThermometerGauge","Thick","Thickness","Thin","Thinning","ThisLink","ThompsonGroupTh","Thread","ThreadingLayer","ThreeJSymbol","Threshold","Through","Throw","ThueMorse","Thumbnail","Thursday","Ticks","TicksStyle","TideData","Tilde","TildeEqual","TildeFullEqual","TildeTilde","TimeConstrained","TimeConstraint","TimeDirection","TimeFormat","TimeGoal","TimelinePlot","TimeObject","TimeObjectQ","TimeRemaining","Times","TimesBy","TimeSeries","TimeSeriesAggregate","TimeSeriesForecast","TimeSeriesInsert","TimeSeriesInvertibility","TimeSeriesMap","TimeSeriesMapThread","TimeSeriesModel","TimeSeriesModelFit","TimeSeriesResample","TimeSeriesRescale","TimeSeriesShift","TimeSeriesThread","TimeSeriesWindow","TimeUsed","TimeValue","TimeWarpingCorrespondence","TimeWarpingDistance","TimeZone","TimeZoneConvert","TimeZoneOffset","Timing","Tiny","TitleGrouping","TitsGroupT","ToBoxes","ToCharacterCode","ToColor","ToContinuousTimeModel","ToDate","Today","ToDiscreteTimeModel","ToEntity","ToeplitzMatrix","ToExpression","ToFileName","Together","Toggle","ToggleFalse","Toggler","TogglerBar","TogglerBox","TogglerBoxOptions","ToHeldExpression","ToInvertibleTimeSeries","TokenWords","Tolerance","ToLowerCase","Tomorrow","ToNumberField","TooBig","Tooltip","TooltipBox","TooltipBoxOptions","TooltipDelay","TooltipStyle","ToonShading","Top","TopHatTransform","ToPolarCoordinates","TopologicalSort","ToRadicals","ToRules","ToSphericalCoordinates","ToString","Total","TotalHeight","TotalLayer","TotalVariationFilter","TotalWidth","TouchPosition","TouchscreenAutoZoom","TouchscreenControlPlacement","ToUpperCase","Tr","Trace","TraceAbove","TraceAction","TraceBackward","TraceDepth","TraceDialog","TraceForward","TraceInternal","TraceLevel","TraceOff","TraceOn","TraceOriginal","TracePrint","TraceScan","TrackedSymbols","TrackingFunction","TracyWidomDistribution","TradingChart","TraditionalForm","TraditionalFunctionNotation","TraditionalNotation","TraditionalOrder","TrainingProgressCheckpointing","TrainingProgressFunction","TrainingProgressMeasurements","TrainingProgressReporting","TrainingStoppingCriterion","TrainingUpdateSchedule","TransferFunctionCancel","TransferFunctionExpand","TransferFunctionFactor","TransferFunctionModel","TransferFunctionPoles","TransferFunctionTransform","TransferFunctionZeros","TransformationClass","TransformationFunction","TransformationFunctions","TransformationMatrix","TransformedDistribution","TransformedField","TransformedProcess","TransformedRegion","TransitionDirection","TransitionDuration","TransitionEffect","TransitiveClosureGraph","TransitiveReductionGraph","Translate","TranslationOptions","TranslationTransform","Transliterate","Transparent","TransparentColor","Transpose","TransposeLayer","TrapSelection","TravelDirections","TravelDirectionsData","TravelDistance","TravelDistanceList","TravelMethod","TravelTime","TreeForm","TreeGraph","TreeGraphQ","TreePlot","TrendStyle","Triangle","TriangleCenter","TriangleConstruct","TriangleMeasurement","TriangleWave","TriangularDistribution","TriangulateMesh","Trig","TrigExpand","TrigFactor","TrigFactorList","Trigger","TrigReduce","TrigToExp","TrimmedMean","TrimmedVariance","TropicalStormData","True","TrueQ","TruncatedDistribution","TruncatedPolyhedron","TsallisQExponentialDistribution","TsallisQGaussianDistribution","TTest","Tube","TubeBezierCurveBox","TubeBezierCurveBoxOptions","TubeBox","TubeBoxOptions","TubeBSplineCurveBox","TubeBSplineCurveBoxOptions","Tuesday","TukeyLambdaDistribution","TukeyWindow","TunnelData","Tuples","TuranGraph","TuringMachine","TuttePolynomial","TwoWayRule","Typed","TypeSpecifier","UnateQ","Uncompress","UnconstrainedParameters","Undefined","UnderBar","Underflow","Underlined","Underoverscript","UnderoverscriptBox","UnderoverscriptBoxOptions","Underscript","UnderscriptBox","UnderscriptBoxOptions","UnderseaFeatureData","UndirectedEdge","UndirectedGraph","UndirectedGraphQ","UndoOptions","UndoTrackedVariables","Unequal","UnequalTo","Unevaluated","UniformDistribution","UniformGraphDistribution","UniformPolyhedron","UniformSumDistribution","Uninstall","Union","UnionedEntityClass","UnionPlus","Unique","UnitaryMatrixQ","UnitBox","UnitConvert","UnitDimensions","Unitize","UnitRootTest","UnitSimplify","UnitStep","UnitSystem","UnitTriangle","UnitVector","UnitVectorLayer","UnityDimensions","UniverseModelData","UniversityData","UnixTime","Unprotect","UnregisterExternalEvaluator","UnsameQ","UnsavedVariables","Unset","UnsetShared","UntrackedVariables","Up","UpArrow","UpArrowBar","UpArrowDownArrow","Update","UpdateDynamicObjects","UpdateDynamicObjectsSynchronous","UpdateInterval","UpdatePacletSites","UpdateSearchIndex","UpDownArrow","UpEquilibrium","UpperCaseQ","UpperLeftArrow","UpperRightArrow","UpperTriangularize","UpperTriangularMatrixQ","Upsample","UpSet","UpSetDelayed","UpTee","UpTeeArrow","UpTo","UpValues","URL","URLBuild","URLDecode","URLDispatcher","URLDownload","URLDownloadSubmit","URLEncode","URLExecute","URLExpand","URLFetch","URLFetchAsynchronous","URLParse","URLQueryDecode","URLQueryEncode","URLRead","URLResponseTime","URLSave","URLSaveAsynchronous","URLShorten","URLSubmit","UseGraphicsRange","UserDefinedWavelet","Using","UsingFrontEnd","UtilityFunction","V2Get","ValenceErrorHandling","ValidationLength","ValidationSet","Value","ValueBox","ValueBoxOptions","ValueDimensions","ValueForm","ValuePreprocessingFunction","ValueQ","Values","ValuesData","Variables","Variance","VarianceEquivalenceTest","VarianceEstimatorFunction","VarianceGammaDistribution","VarianceTest","VectorAngle","VectorAround","VectorAspectRatio","VectorColorFunction","VectorColorFunctionScaling","VectorDensityPlot","VectorGlyphData","VectorGreater","VectorGreaterEqual","VectorLess","VectorLessEqual","VectorMarkers","VectorPlot","VectorPlot3D","VectorPoints","VectorQ","VectorRange","Vectors","VectorScale","VectorScaling","VectorSizes","VectorStyle","Vee","Verbatim","Verbose","VerboseConvertToPostScriptPacket","VerificationTest","VerifyConvergence","VerifyDerivedKey","VerifyDigitalSignature","VerifyFileSignature","VerifyInterpretation","VerifySecurityCertificates","VerifySolutions","VerifyTestAssumptions","Version","VersionedPreferences","VersionNumber","VertexAdd","VertexCapacity","VertexColors","VertexComponent","VertexConnectivity","VertexContract","VertexCoordinateRules","VertexCoordinates","VertexCorrelationSimilarity","VertexCosineSimilarity","VertexCount","VertexCoverQ","VertexDataCoordinates","VertexDegree","VertexDelete","VertexDiceSimilarity","VertexEccentricity","VertexInComponent","VertexInDegree","VertexIndex","VertexJaccardSimilarity","VertexLabeling","VertexLabels","VertexLabelStyle","VertexList","VertexNormals","VertexOutComponent","VertexOutDegree","VertexQ","VertexRenderingFunction","VertexReplace","VertexShape","VertexShapeFunction","VertexSize","VertexStyle","VertexTextureCoordinates","VertexWeight","VertexWeightedGraphQ","Vertical","VerticalBar","VerticalForm","VerticalGauge","VerticalSeparator","VerticalSlider","VerticalTilde","Video","VideoEncoding","VideoExtractFrames","VideoFrameList","VideoFrameMap","VideoPause","VideoPlay","VideoQ","VideoStop","VideoStream","VideoStreams","VideoTimeSeries","VideoTracks","VideoTrim","ViewAngle","ViewCenter","ViewMatrix","ViewPoint","ViewPointSelectorSettings","ViewPort","ViewProjection","ViewRange","ViewVector","ViewVertical","VirtualGroupData","Visible","VisibleCell","VoiceStyleData","VoigtDistribution","VolcanoData","Volume","VonMisesDistribution","VoronoiMesh","WaitAll","WaitAsynchronousTask","WaitNext","WaitUntil","WakebyDistribution","WalleniusHypergeometricDistribution","WaringYuleDistribution","WarpingCorrespondence","WarpingDistance","WatershedComponents","WatsonUSquareTest","WattsStrogatzGraphDistribution","WaveletBestBasis","WaveletFilterCoefficients","WaveletImagePlot","WaveletListPlot","WaveletMapIndexed","WaveletMatrixPlot","WaveletPhi","WaveletPsi","WaveletScale","WaveletScalogram","WaveletThreshold","WeaklyConnectedComponents","WeaklyConnectedGraphComponents","WeaklyConnectedGraphQ","WeakStationarity","WeatherData","WeatherForecastData","WebAudioSearch","WebElementObject","WeberE","WebExecute","WebImage","WebImageSearch","WebSearch","WebSessionObject","WebSessions","WebWindowObject","Wedge","Wednesday","WeibullDistribution","WeierstrassE1","WeierstrassE2","WeierstrassE3","WeierstrassEta1","WeierstrassEta2","WeierstrassEta3","WeierstrassHalfPeriods","WeierstrassHalfPeriodW1","WeierstrassHalfPeriodW2","WeierstrassHalfPeriodW3","WeierstrassInvariantG2","WeierstrassInvariantG3","WeierstrassInvariants","WeierstrassP","WeierstrassPPrime","WeierstrassSigma","WeierstrassZeta","WeightedAdjacencyGraph","WeightedAdjacencyMatrix","WeightedData","WeightedGraphQ","Weights","WelchWindow","WheelGraph","WhenEvent","Which","While","White","WhiteNoiseProcess","WhitePoint","Whitespace","WhitespaceCharacter","WhittakerM","WhittakerW","WienerFilter","WienerProcess","WignerD","WignerSemicircleDistribution","WikidataData","WikidataSearch","WikipediaData","WikipediaSearch","WilksW","WilksWTest","WindDirectionData","WindingCount","WindingPolygon","WindowClickSelect","WindowElements","WindowFloating","WindowFrame","WindowFrameElements","WindowMargins","WindowMovable","WindowOpacity","WindowPersistentStyles","WindowSelected","WindowSize","WindowStatusArea","WindowTitle","WindowToolbars","WindowWidth","WindSpeedData","WindVectorData","WinsorizedMean","WinsorizedVariance","WishartMatrixDistribution","With","WolframAlpha","WolframAlphaDate","WolframAlphaQuantity","WolframAlphaResult","WolframLanguageData","Word","WordBoundary","WordCharacter","WordCloud","WordCount","WordCounts","WordData","WordDefinition","WordFrequency","WordFrequencyData","WordList","WordOrientation","WordSearch","WordSelectionFunction","WordSeparators","WordSpacings","WordStem","WordTranslation","WorkingPrecision","WrapAround","Write","WriteLine","WriteString","Wronskian","XMLElement","XMLObject","XMLTemplate","Xnor","Xor","XYZColor","Yellow","Yesterday","YuleDissimilarity","ZernikeR","ZeroSymmetric","ZeroTest","ZeroWidthTimes","Zeta","ZetaZero","ZIPCodeData","ZipfDistribution","ZoomCenter","ZoomFactor","ZTest","ZTransform","$Aborted","$ActivationGroupID","$ActivationKey","$ActivationUserRegistered","$AddOnsDirectory","$AllowDataUpdates","$AllowExternalChannelFunctions","$AllowInternet","$AssertFunction","$Assumptions","$AsynchronousTask","$AudioDecoders","$AudioEncoders","$AudioInputDevices","$AudioOutputDevices","$BaseDirectory","$BasePacletsDirectory","$BatchInput","$BatchOutput","$BlockchainBase","$BoxForms","$ByteOrdering","$CacheBaseDirectory","$Canceled","$ChannelBase","$CharacterEncoding","$CharacterEncodings","$CloudAccountName","$CloudBase","$CloudConnected","$CloudConnection","$CloudCreditsAvailable","$CloudEvaluation","$CloudExpressionBase","$CloudObjectNameFormat","$CloudObjectURLType","$CloudRootDirectory","$CloudSymbolBase","$CloudUserID","$CloudUserUUID","$CloudVersion","$CloudVersionNumber","$CloudWolframEngineVersionNumber","$CommandLine","$CompilationTarget","$ConditionHold","$ConfiguredKernels","$Context","$ContextPath","$ControlActiveSetting","$Cookies","$CookieStore","$CreationDate","$CurrentLink","$CurrentTask","$CurrentWebSession","$DataStructures","$DateStringFormat","$DefaultAudioInputDevice","$DefaultAudioOutputDevice","$DefaultFont","$DefaultFrontEnd","$DefaultImagingDevice","$DefaultLocalBase","$DefaultMailbox","$DefaultNetworkInterface","$DefaultPath","$DefaultProxyRules","$DefaultSystemCredentialStore","$Display","$DisplayFunction","$DistributedContexts","$DynamicEvaluation","$Echo","$EmbedCodeEnvironments","$EmbeddableServices","$EntityStores","$Epilog","$EvaluationCloudBase","$EvaluationCloudObject","$EvaluationEnvironment","$ExportFormats","$ExternalIdentifierTypes","$ExternalStorageBase","$Failed","$FinancialDataSource","$FontFamilies","$FormatType","$FrontEnd","$FrontEndSession","$GeoEntityTypes","$GeoLocation","$GeoLocationCity","$GeoLocationCountry","$GeoLocationPrecision","$GeoLocationSource","$HistoryLength","$HomeDirectory","$HTMLExportRules","$HTTPCookies","$HTTPRequest","$IgnoreEOF","$ImageFormattingWidth","$ImageResolution","$ImagingDevice","$ImagingDevices","$ImportFormats","$IncomingMailSettings","$InitialDirectory","$Initialization","$InitializationContexts","$Input","$InputFileName","$InputStreamMethods","$Inspector","$InstallationDate","$InstallationDirectory","$InterfaceEnvironment","$InterpreterTypes","$IterationLimit","$KernelCount","$KernelID","$Language","$LaunchDirectory","$LibraryPath","$LicenseExpirationDate","$LicenseID","$LicenseProcesses","$LicenseServer","$LicenseSubprocesses","$LicenseType","$Line","$Linked","$LinkSupported","$LoadedFiles","$LocalBase","$LocalSymbolBase","$MachineAddresses","$MachineDomain","$MachineDomains","$MachineEpsilon","$MachineID","$MachineName","$MachinePrecision","$MachineType","$MaxExtraPrecision","$MaxLicenseProcesses","$MaxLicenseSubprocesses","$MaxMachineNumber","$MaxNumber","$MaxPiecewiseCases","$MaxPrecision","$MaxRootDegree","$MessageGroups","$MessageList","$MessagePrePrint","$Messages","$MinMachineNumber","$MinNumber","$MinorReleaseNumber","$MinPrecision","$MobilePhone","$ModuleNumber","$NetworkConnected","$NetworkInterfaces","$NetworkLicense","$NewMessage","$NewSymbol","$NotebookInlineStorageLimit","$Notebooks","$NoValue","$NumberMarks","$Off","$OperatingSystem","$Output","$OutputForms","$OutputSizeLimit","$OutputStreamMethods","$Packages","$ParentLink","$ParentProcessID","$PasswordFile","$PatchLevelID","$Path","$PathnameSeparator","$PerformanceGoal","$Permissions","$PermissionsGroupBase","$PersistenceBase","$PersistencePath","$PipeSupported","$PlotTheme","$Post","$Pre","$PreferencesDirectory","$PreInitialization","$PrePrint","$PreRead","$PrintForms","$PrintLiteral","$Printout3DPreviewer","$ProcessID","$ProcessorCount","$ProcessorType","$ProductInformation","$ProgramName","$PublisherID","$RandomState","$RecursionLimit","$RegisteredDeviceClasses","$RegisteredUserName","$ReleaseNumber","$RequesterAddress","$RequesterWolframID","$RequesterWolframUUID","$RootDirectory","$ScheduledTask","$ScriptCommandLine","$ScriptInputString","$SecuredAuthenticationKeyTokens","$ServiceCreditsAvailable","$Services","$SessionID","$SetParentLink","$SharedFunctions","$SharedVariables","$SoundDisplay","$SoundDisplayFunction","$SourceLink","$SSHAuthentication","$SubtitleDecoders","$SubtitleEncoders","$SummaryBoxDataSizeLimit","$SuppressInputFormHeads","$SynchronousEvaluation","$SyntaxHandler","$System","$SystemCharacterEncoding","$SystemCredentialStore","$SystemID","$SystemMemory","$SystemShell","$SystemTimeZone","$SystemWordLength","$TemplatePath","$TemporaryDirectory","$TemporaryPrefix","$TestFileName","$TextStyle","$TimedOut","$TimeUnit","$TimeZone","$TimeZoneEntity","$TopDirectory","$TraceOff","$TraceOn","$TracePattern","$TracePostAction","$TracePreAction","$UnitSystem","$Urgent","$UserAddOnsDirectory","$UserAgentLanguages","$UserAgentMachine","$UserAgentName","$UserAgentOperatingSystem","$UserAgentString","$UserAgentVersion","$UserBaseDirectory","$UserBasePacletsDirectory","$UserDocumentsDirectory","$Username","$UserName","$UserURLBase","$Version","$VersionNumber","$VideoDecoders","$VideoEncoders","$VoiceStyles","$WolframDocumentsDirectory","$WolframID","$WolframUUID"] +;return t=>{ +const i=t.regex,o=i.either(i.concat(/([2-9]|[1-2]\d|[3][0-5])\^\^/,/(\w*\.\w+|\w+\.\w*|\w+)/),/(\d*\.\d+|\d+\.\d*|\d+)/),a=i.either(/``[+-]?(\d*\.\d+|\d+\.\d*|\d+)/,/`([+-]?(\d*\.\d+|\d+\.\d*|\d+))?/),n={ +className:"number",relevance:0, +begin:i.concat(o,i.optional(a),i.optional(/\*\^[+-]?\d+/)) +},r=/[a-zA-Z$][a-zA-Z0-9$]*/,l=new Set(e),s={variants:[{ +className:"builtin-symbol",begin:r,"on:begin":(e,t)=>{ +l.has(e[0])||t.ignoreMatch()}},{className:"symbol",relevance:0,begin:r}]},c={ +className:"message-name",relevance:0,begin:i.concat("::",r)};return{ +name:"Mathematica",aliases:["mma","wl"],classNameAliases:{brace:"punctuation", +pattern:"type",slot:"type",symbol:"variable","named-character":"variable", +"builtin-symbol":"built_in","message-name":"string"}, +contains:[t.COMMENT(/\(\*/,/\*\)/,{contains:["self"]}),{className:"pattern", +relevance:0,begin:/([a-zA-Z$][a-zA-Z0-9$]*)?_+([a-zA-Z$][a-zA-Z0-9$]*)?/},{ +className:"slot",relevance:0,begin:/#[a-zA-Z$][a-zA-Z0-9$]*|#+[0-9]?/},c,s,{ +className:"named-character",begin:/\\\[[$a-zA-Z][$a-zA-Z0-9]+\]/ +},t.QUOTE_STRING_MODE,n,{className:"operator",relevance:0, +begin:/[+\-*/,;.:@~=><&|_`'^?!%]+/},{className:"brace",relevance:0, +begin:/[[\](){}]/}]}}})();hljs.registerLanguage("mathematica",e)})();/*! `sas` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const t=e.regex;return{name:"SAS", +case_insensitive:!0,keywords:{ +literal:["null","missing","_all_","_automatic_","_character_","_infile_","_n_","_name_","_null_","_numeric_","_user_","_webout_"], +keyword:["do","if","then","else","end","until","while","abort","array","attrib","by","call","cards","cards4","catname","continue","datalines","datalines4","delete","delim","delimiter","display","dm","drop","endsas","error","file","filename","footnote","format","goto","in","infile","informat","input","keep","label","leave","length","libname","link","list","lostcard","merge","missing","modify","options","output","out","page","put","redirect","remove","rename","replace","retain","return","select","set","skip","startsas","stop","title","update","waitsas","where","window","x|0","systask","add","and","alter","as","cascade","check","create","delete","describe","distinct","drop","foreign","from","group","having","index","insert","into","in","key","like","message","modify","msgtype","not","null","on","or","order","primary","references","reset","restrict","select","set","table","unique","update","validate","view","where"] +},contains:[{className:"keyword",begin:/^\s*(proc [\w\d_]+|data|run|quit)[\s;]/ +},{className:"variable",begin:/&[a-zA-Z_&][a-zA-Z0-9_]*\.?/},{ +begin:[/^\s*/,/datalines;|cards;/,/(?:.*\n)+/,/^\s*;\s*$/],className:{ +2:"keyword",3:"string"}},{ +begin:[/%mend|%macro/,/\s+/,/[a-zA-Z_&][a-zA-Z0-9_]*/],className:{1:"built_in", +3:"title.function"}},{className:"built_in", +begin:"%"+t.either("bquote","nrbquote","cmpres","qcmpres","compstor","datatyp","display","do","else","end","eval","global","goto","if","index","input","keydef","label","left","length","let","local","lowcase","macro","mend","nrbquote","nrquote","nrstr","put","qcmpres","qleft","qlowcase","qscan","qsubstr","qsysfunc","qtrim","quote","qupcase","scan","str","substr","superq","syscall","sysevalf","sysexec","sysfunc","sysget","syslput","sysprod","sysrc","sysrput","then","to","trim","unquote","until","upcase","verify","while","window") +},{className:"title.function",begin:/%[a-zA-Z_][a-zA-Z_0-9]*/},{ +className:"meta", +begin:t.either("abs","addr","airy","arcos","arsin","atan","attrc","attrn","band","betainv","blshift","bnot","bor","brshift","bxor","byte","cdf","ceil","cexist","cinv","close","cnonct","collate","compbl","compound","compress","cos","cosh","css","curobs","cv","daccdb","daccdbsl","daccsl","daccsyd","dacctab","dairy","date","datejul","datepart","datetime","day","dclose","depdb","depdbsl","depdbsl","depsl","depsl","depsyd","depsyd","deptab","deptab","dequote","dhms","dif","digamma","dim","dinfo","dnum","dopen","doptname","doptnum","dread","dropnote","dsname","erf","erfc","exist","exp","fappend","fclose","fcol","fdelete","fetch","fetchobs","fexist","fget","fileexist","filename","fileref","finfo","finv","fipname","fipnamel","fipstate","floor","fnonct","fnote","fopen","foptname","foptnum","fpoint","fpos","fput","fread","frewind","frlen","fsep","fuzz","fwrite","gaminv","gamma","getoption","getvarc","getvarn","hbound","hms","hosthelp","hour","ibessel","index","indexc","indexw","input","inputc","inputn","int","intck","intnx","intrr","irr","jbessel","juldate","kurtosis","lag","lbound","left","length","lgamma","libname","libref","log","log10","log2","logpdf","logpmf","logsdf","lowcase","max","mdy","mean","min","minute","mod","month","mopen","mort","n","netpv","nmiss","normal","note","npv","open","ordinal","pathname","pdf","peek","peekc","pmf","point","poisson","poke","probbeta","probbnml","probchi","probf","probgam","probhypr","probit","probnegb","probnorm","probt","put","putc","putn","qtr","quote","ranbin","rancau","ranexp","rangam","range","rank","rannor","ranpoi","rantbl","rantri","ranuni","repeat","resolve","reverse","rewind","right","round","saving","scan","sdf","second","sign","sin","sinh","skewness","soundex","spedis","sqrt","std","stderr","stfips","stname","stnamel","substr","sum","symget","sysget","sysmsg","sysprod","sysrc","system","tan","tanh","time","timepart","tinv","tnonct","today","translate","tranwrd","trigamma","trim","trimn","trunc","uniform","upcase","uss","var","varfmt","varinfmt","varlabel","varlen","varname","varnum","varray","varrayx","vartype","verify","vformat","vformatd","vformatdx","vformatn","vformatnx","vformatw","vformatwx","vformatx","vinarray","vinarrayx","vinformat","vinformatd","vinformatdx","vinformatn","vinformatnx","vinformatw","vinformatwx","vinformatx","vlabel","vlabelx","vlength","vlengthx","vname","vnamex","vtype","vtypex","weekday","year","yyq","zipfips","zipname","zipnamel","zipstate")+"(?=\\()" +},{className:"string",variants:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE] +},e.COMMENT("\\*",";"),e.C_BLOCK_COMMENT_MODE]}}})() +;hljs.registerLanguage("sas",e)})();/*! `coq` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>({name:"Coq",keywords:{ +keyword:["_|0","as","at","cofix","else","end","exists","exists2","fix","for","forall","fun","if","IF","in","let","match","mod","Prop","return","Set","then","Type","using","where","with","Abort","About","Add","Admit","Admitted","All","Arguments","Assumptions","Axiom","Back","BackTo","Backtrack","Bind","Blacklist","Canonical","Cd","Check","Class","Classes","Close","Coercion","Coercions","CoFixpoint","CoInductive","Collection","Combined","Compute","Conjecture","Conjectures","Constant","constr","Constraint","Constructors","Context","Corollary","CreateHintDb","Cut","Declare","Defined","Definition","Delimit","Dependencies","Dependent","Derive","Drop","eauto","End","Equality","Eval","Example","Existential","Existentials","Existing","Export","exporting","Extern","Extract","Extraction","Fact","Field","Fields","File","Fixpoint","Focus","for","From","Function","Functional","Generalizable","Global","Goal","Grab","Grammar","Graph","Guarded","Heap","Hint","HintDb","Hints","Hypotheses","Hypothesis","ident","Identity","If","Immediate","Implicit","Import","Include","Inductive","Infix","Info","Initial","Inline","Inspect","Instance","Instances","Intro","Intros","Inversion","Inversion_clear","Language","Left","Lemma","Let","Libraries","Library","Load","LoadPath","Local","Locate","Ltac","ML","Mode","Module","Modules","Monomorphic","Morphism","Next","NoInline","Notation","Obligation","Obligations","Opaque","Open","Optimize","Options","Parameter","Parameters","Parametric","Path","Paths","pattern","Polymorphic","Preterm","Print","Printing","Program","Projections","Proof","Proposition","Pwd","Qed","Quit","Rec","Record","Recursive","Redirect","Relation","Remark","Remove","Require","Reserved","Reset","Resolve","Restart","Rewrite","Right","Ring","Rings","Save","Scheme","Scope","Scopes","Script","Search","SearchAbout","SearchHead","SearchPattern","SearchRewrite","Section","Separate","Set","Setoid","Show","Solve","Sorted","Step","Strategies","Strategy","Structure","SubClass","Table","Tables","Tactic","Term","Test","Theorem","Time","Timeout","Transparent","Type","Typeclasses","Types","Undelimit","Undo","Unfocus","Unfocused","Unfold","Universe","Universes","Unset","Unshelve","using","Variable","Variables","Variant","Verbose","Visibility","where","with"], +built_in:["abstract","absurd","admit","after","apply","as","assert","assumption","at","auto","autorewrite","autounfold","before","bottom","btauto","by","case","case_eq","cbn","cbv","change","classical_left","classical_right","clear","clearbody","cofix","compare","compute","congruence","constr_eq","constructor","contradict","contradiction","cut","cutrewrite","cycle","decide","decompose","dependent","destruct","destruction","dintuition","discriminate","discrR","do","double","dtauto","eapply","eassumption","eauto","ecase","econstructor","edestruct","ediscriminate","eelim","eexact","eexists","einduction","einjection","eleft","elim","elimtype","enough","equality","erewrite","eright","esimplify_eq","esplit","evar","exact","exactly_once","exfalso","exists","f_equal","fail","field","field_simplify","field_simplify_eq","first","firstorder","fix","fold","fourier","functional","generalize","generalizing","gfail","give_up","has_evar","hnf","idtac","in","induction","injection","instantiate","intro","intro_pattern","intros","intuition","inversion","inversion_clear","is_evar","is_var","lapply","lazy","left","lia","lra","move","native_compute","nia","nsatz","omega","once","pattern","pose","progress","proof","psatz","quote","record","red","refine","reflexivity","remember","rename","repeat","replace","revert","revgoals","rewrite","rewrite_strat","right","ring","ring_simplify","rtauto","set","setoid_reflexivity","setoid_replace","setoid_rewrite","setoid_symmetry","setoid_transitivity","shelve","shelve_unifiable","simpl","simple","simplify_eq","solve","specialize","split","split_Rabs","split_Rmult","stepl","stepr","subst","sum","swap","symmetry","tactic","tauto","time","timeout","top","transitivity","trivial","try","tryif","unfold","unify","until","using","vm_compute","with"] +},contains:[e.QUOTE_STRING_MODE,e.COMMENT("\\(\\*","\\*\\)"),e.C_NUMBER_MODE,{ +className:"type",excludeBegin:!0,begin:"\\|\\s*",end:"\\w+"},{begin:/[-=]>/}]}) +})();hljs.registerLanguage("coq",e)})();/*! `json` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const a=["true","false","null"],n={ +scope:"literal",beginKeywords:a.join(" ")};return{name:"JSON",keywords:{ +literal:a},contains:[{className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/, +relevance:1.01},{match:/[{}[\],:]/,className:"punctuation",relevance:0 +},e.QUOTE_STRING_MODE,n,e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE], +illegal:"\\S"}}})();hljs.registerLanguage("json",e)})();/*! `gauss` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const t={ +keyword:"bool break call callexe checkinterrupt clear clearg closeall cls comlog compile continue create debug declare delete disable dlibrary dllcall do dos ed edit else elseif enable end endfor endif endp endo errorlog errorlogat expr external fn for format goto gosub graph if keyword let lib library line load loadarray loadexe loadf loadk loadm loadp loads loadx local locate loopnextindex lprint lpwidth lshow matrix msym ndpclex new open output outwidth plot plotsym pop prcsn print printdos proc push retp return rndcon rndmod rndmult rndseed run save saveall screen scroll setarray show sparse stop string struct system trace trap threadfor threadendfor threadbegin threadjoin threadstat threadend until use while winprint ne ge le gt lt and xor or not eq eqv", +built_in:"abs acf aconcat aeye amax amean AmericanBinomCall AmericanBinomCall_Greeks AmericanBinomCall_ImpVol AmericanBinomPut AmericanBinomPut_Greeks AmericanBinomPut_ImpVol AmericanBSCall AmericanBSCall_Greeks AmericanBSCall_ImpVol AmericanBSPut AmericanBSPut_Greeks AmericanBSPut_ImpVol amin amult annotationGetDefaults annotationSetBkd annotationSetFont annotationSetLineColor annotationSetLineStyle annotationSetLineThickness annualTradingDays arccos arcsin areshape arrayalloc arrayindex arrayinit arraytomat asciiload asclabel astd astds asum atan atan2 atranspose axmargin balance band bandchol bandcholsol bandltsol bandrv bandsolpd bar base10 begwind besselj bessely beta box boxcox cdfBeta cdfBetaInv cdfBinomial cdfBinomialInv cdfBvn cdfBvn2 cdfBvn2e cdfCauchy cdfCauchyInv cdfChic cdfChii cdfChinc cdfChincInv cdfExp cdfExpInv cdfFc cdfFnc cdfFncInv cdfGam cdfGenPareto cdfHyperGeo cdfLaplace cdfLaplaceInv cdfLogistic cdfLogisticInv cdfmControlCreate cdfMvn cdfMvn2e cdfMvnce cdfMvne cdfMvt2e cdfMvtce cdfMvte cdfN cdfN2 cdfNc cdfNegBinomial cdfNegBinomialInv cdfNi cdfPoisson cdfPoissonInv cdfRayleigh cdfRayleighInv cdfTc cdfTci cdfTnc cdfTvn cdfWeibull cdfWeibullInv cdir ceil ChangeDir chdir chiBarSquare chol choldn cholsol cholup chrs close code cols colsf combinate combinated complex con cond conj cons ConScore contour conv convertsatostr convertstrtosa corrm corrms corrvc corrx corrxs cos cosh counts countwts crossprd crout croutp csrcol csrlin csvReadM csvReadSA cumprodc cumsumc curve cvtos datacreate datacreatecomplex datalist dataload dataloop dataopen datasave date datestr datestring datestrymd dayinyr dayofweek dbAddDatabase dbClose dbCommit dbCreateQuery dbExecQuery dbGetConnectOptions dbGetDatabaseName dbGetDriverName dbGetDrivers dbGetHostName dbGetLastErrorNum dbGetLastErrorText dbGetNumericalPrecPolicy dbGetPassword dbGetPort dbGetTableHeaders dbGetTables dbGetUserName dbHasFeature dbIsDriverAvailable dbIsOpen dbIsOpenError dbOpen dbQueryBindValue dbQueryClear dbQueryCols dbQueryExecPrepared dbQueryFetchAllM dbQueryFetchAllSA dbQueryFetchOneM dbQueryFetchOneSA dbQueryFinish dbQueryGetBoundValue dbQueryGetBoundValues dbQueryGetField dbQueryGetLastErrorNum dbQueryGetLastErrorText dbQueryGetLastInsertID dbQueryGetLastQuery dbQueryGetPosition dbQueryIsActive dbQueryIsForwardOnly dbQueryIsNull dbQueryIsSelect dbQueryIsValid dbQueryPrepare dbQueryRows dbQuerySeek dbQuerySeekFirst dbQuerySeekLast dbQuerySeekNext dbQuerySeekPrevious dbQuerySetForwardOnly dbRemoveDatabase dbRollback dbSetConnectOptions dbSetDatabaseName dbSetHostName dbSetNumericalPrecPolicy dbSetPort dbSetUserName dbTransaction DeleteFile delif delrows denseToSp denseToSpRE denToZero design det detl dfft dffti diag diagrv digamma doswin DOSWinCloseall DOSWinOpen dotfeq dotfeqmt dotfge dotfgemt dotfgt dotfgtmt dotfle dotflemt dotflt dotfltmt dotfne dotfnemt draw drop dsCreate dstat dstatmt dstatmtControlCreate dtdate dtday dttime dttodtv dttostr dttoutc dtvnormal dtvtodt dtvtoutc dummy dummybr dummydn eig eigh eighv eigv elapsedTradingDays endwind envget eof eqSolve eqSolvemt eqSolvemtControlCreate eqSolvemtOutCreate eqSolveset erf erfc erfccplx erfcplx error etdays ethsec etstr EuropeanBinomCall EuropeanBinomCall_Greeks EuropeanBinomCall_ImpVol EuropeanBinomPut EuropeanBinomPut_Greeks EuropeanBinomPut_ImpVol EuropeanBSCall EuropeanBSCall_Greeks EuropeanBSCall_ImpVol EuropeanBSPut EuropeanBSPut_Greeks EuropeanBSPut_ImpVol exctsmpl exec execbg exp extern eye fcheckerr fclearerr feq feqmt fflush fft ffti fftm fftmi fftn fge fgemt fgets fgetsa fgetsat fgetst fgt fgtmt fileinfo filesa fle flemt floor flt fltmt fmod fne fnemt fonts fopen formatcv formatnv fputs fputst fseek fstrerror ftell ftocv ftos ftostrC gamma gammacplx gammaii gausset gdaAppend gdaCreate gdaDStat gdaDStatMat gdaGetIndex gdaGetName gdaGetNames gdaGetOrders gdaGetType gdaGetTypes gdaGetVarInfo gdaIsCplx gdaLoad gdaPack gdaRead gdaReadByIndex gdaReadSome gdaReadSparse gdaReadStruct gdaReportVarInfo gdaSave gdaUpdate gdaUpdateAndPack gdaVars gdaWrite gdaWrite32 gdaWriteSome getarray getdims getf getGAUSShome getmatrix getmatrix4D getname getnamef getNextTradingDay getNextWeekDay getnr getorders getpath getPreviousTradingDay getPreviousWeekDay getRow getscalar3D getscalar4D getTrRow getwind glm gradcplx gradMT gradMTm gradMTT gradMTTm gradp graphprt graphset hasimag header headermt hess hessMT hessMTg hessMTgw hessMTm hessMTmw hessMTT hessMTTg hessMTTgw hessMTTm hessMTw hessp hist histf histp hsec imag indcv indexcat indices indices2 indicesf indicesfn indnv indsav integrate1d integrateControlCreate intgrat2 intgrat3 inthp1 inthp2 inthp3 inthp4 inthpControlCreate intquad1 intquad2 intquad3 intrleav intrleavsa intrsect intsimp inv invpd invswp iscplx iscplxf isden isinfnanmiss ismiss key keyav keyw lag lag1 lagn lapEighb lapEighi lapEighvb lapEighvi lapgEig lapgEigh lapgEighv lapgEigv lapgSchur lapgSvdcst lapgSvds lapgSvdst lapSvdcusv lapSvds lapSvdusv ldlp ldlsol linSolve listwise ln lncdfbvn lncdfbvn2 lncdfmvn lncdfn lncdfn2 lncdfnc lnfact lngammacplx lnpdfmvn lnpdfmvt lnpdfn lnpdft loadd loadstruct loadwind loess loessmt loessmtControlCreate log loglog logx logy lower lowmat lowmat1 ltrisol lu lusol machEpsilon make makevars makewind margin matalloc matinit mattoarray maxbytes maxc maxindc maxv maxvec mbesselei mbesselei0 mbesselei1 mbesseli mbesseli0 mbesseli1 meanc median mergeby mergevar minc minindc minv miss missex missrv moment momentd movingave movingaveExpwgt movingaveWgt nextindex nextn nextnevn nextwind ntos null null1 numCombinations ols olsmt olsmtControlCreate olsqr olsqr2 olsqrmt ones optn optnevn orth outtyp pacf packedToSp packr parse pause pdfCauchy pdfChi pdfExp pdfGenPareto pdfHyperGeo pdfLaplace pdfLogistic pdfn pdfPoisson pdfRayleigh pdfWeibull pi pinv pinvmt plotAddArrow plotAddBar plotAddBox plotAddHist plotAddHistF plotAddHistP plotAddPolar plotAddScatter plotAddShape plotAddTextbox plotAddTS plotAddXY plotArea plotBar plotBox plotClearLayout plotContour plotCustomLayout plotGetDefaults plotHist plotHistF plotHistP plotLayout plotLogLog plotLogX plotLogY plotOpenWindow plotPolar plotSave plotScatter plotSetAxesPen plotSetBar plotSetBarFill plotSetBarStacked plotSetBkdColor plotSetFill plotSetGrid plotSetLegend plotSetLineColor plotSetLineStyle plotSetLineSymbol plotSetLineThickness plotSetNewWindow plotSetTitle plotSetWhichYAxis plotSetXAxisShow plotSetXLabel plotSetXRange plotSetXTicInterval plotSetXTicLabel plotSetYAxisShow plotSetYLabel plotSetYRange plotSetZAxisShow plotSetZLabel plotSurface plotTS plotXY polar polychar polyeval polygamma polyint polymake polymat polymroot polymult polyroot pqgwin previousindex princomp printfm printfmt prodc psi putarray putf putvals pvCreate pvGetIndex pvGetParNames pvGetParVector pvLength pvList pvPack pvPacki pvPackm pvPackmi pvPacks pvPacksi pvPacksm pvPacksmi pvPutParVector pvTest pvUnpack QNewton QNewtonmt QNewtonmtControlCreate QNewtonmtOutCreate QNewtonSet QProg QProgmt QProgmtInCreate qqr qqre qqrep qr qre qrep qrsol qrtsol qtyr qtyre qtyrep quantile quantiled qyr qyre qyrep qz rank rankindx readr real reclassify reclassifyCuts recode recserar recsercp recserrc rerun rescale reshape rets rev rfft rffti rfftip rfftn rfftnp rfftp rndBernoulli rndBeta rndBinomial rndCauchy rndChiSquare rndCon rndCreateState rndExp rndGamma rndGeo rndGumbel rndHyperGeo rndi rndKMbeta rndKMgam rndKMi rndKMn rndKMnb rndKMp rndKMu rndKMvm rndLaplace rndLCbeta rndLCgam rndLCi rndLCn rndLCnb rndLCp rndLCu rndLCvm rndLogNorm rndMTu rndMVn rndMVt rndn rndnb rndNegBinomial rndp rndPoisson rndRayleigh rndStateSkip rndu rndvm rndWeibull rndWishart rotater round rows rowsf rref sampleData satostrC saved saveStruct savewind scale scale3d scalerr scalinfnanmiss scalmiss schtoc schur searchsourcepath seekr select selif seqa seqm setdif setdifsa setvars setvwrmode setwind shell shiftr sin singleindex sinh sleep solpd sortc sortcc sortd sorthc sorthcc sortind sortindc sortmc sortr sortrc spBiconjGradSol spChol spConjGradSol spCreate spDenseSubmat spDiagRvMat spEigv spEye spLDL spline spLU spNumNZE spOnes spreadSheetReadM spreadSheetReadSA spreadSheetWrite spScale spSubmat spToDense spTrTDense spTScalar spZeros sqpSolve sqpSolveMT sqpSolveMTControlCreate sqpSolveMTlagrangeCreate sqpSolveMToutCreate sqpSolveSet sqrt statements stdc stdsc stocv stof strcombine strindx strlen strput strrindx strsect strsplit strsplitPad strtodt strtof strtofcplx strtriml strtrimr strtrunc strtruncl strtruncpad strtruncr submat subscat substute subvec sumc sumr surface svd svd1 svd2 svdcusv svds svdusv sysstate tab tan tanh tempname time timedt timestr timeutc title tkf2eps tkf2ps tocart todaydt toeplitz token topolar trapchk trigamma trimr trunc type typecv typef union unionsa uniqindx uniqindxsa unique uniquesa upmat upmat1 upper utctodt utctodtv utrisol vals varCovMS varCovXS varget vargetl varmall varmares varput varputl vartypef vcm vcms vcx vcxs vec vech vecr vector vget view viewxyz vlist vnamecv volume vput vread vtypecv wait waitc walkindex where window writer xlabel xlsGetSheetCount xlsGetSheetSize xlsGetSheetTypes xlsMakeRange xlsReadM xlsReadSA xlsWrite xlsWriteM xlsWriteSA xpnd xtics xy xyz ylabel ytics zeros zeta zlabel ztics cdfEmpirical dot h5create h5open h5read h5readAttribute h5write h5writeAttribute ldl plotAddErrorBar plotAddSurface plotCDFEmpirical plotSetColormap plotSetContourLabels plotSetLegendFont plotSetTextInterpreter plotSetXTicCount plotSetYTicCount plotSetZLevels powerm strjoin sylvester strtrim", +literal:"DB_AFTER_LAST_ROW DB_ALL_TABLES DB_BATCH_OPERATIONS DB_BEFORE_FIRST_ROW DB_BLOB DB_EVENT_NOTIFICATIONS DB_FINISH_QUERY DB_HIGH_PRECISION DB_LAST_INSERT_ID DB_LOW_PRECISION_DOUBLE DB_LOW_PRECISION_INT32 DB_LOW_PRECISION_INT64 DB_LOW_PRECISION_NUMBERS DB_MULTIPLE_RESULT_SETS DB_NAMED_PLACEHOLDERS DB_POSITIONAL_PLACEHOLDERS DB_PREPARED_QUERIES DB_QUERY_SIZE DB_SIMPLE_LOCKING DB_SYSTEM_TABLES DB_TABLES DB_TRANSACTIONS DB_UNICODE DB_VIEWS __STDIN __STDOUT __STDERR __FILE_DIR" +},a=e.COMMENT("@","@"),r={className:"meta",begin:"#",end:"$",keywords:{ +keyword:"define definecs|10 undef ifdef ifndef iflight ifdllcall ifmac ifos2win ifunix else endif lineson linesoff srcfile srcline" +},contains:[{begin:/\\\n/,relevance:0},{beginKeywords:"include",end:"$", +keywords:{keyword:"include"},contains:[{className:"string",begin:'"',end:'"', +illegal:"\\n"}]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,a]},n={ +begin:/\bstruct\s+/,end:/\s/,keywords:"struct",contains:[{className:"type", +begin:e.UNDERSCORE_IDENT_RE,relevance:0}]},s=[{className:"params",begin:/\(/, +end:/\)/,excludeBegin:!0,excludeEnd:!0,endsWithParent:!0,relevance:0,contains:[{ +className:"literal",begin:/\.\.\./},e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,a,n] +}],o={className:"title",begin:e.UNDERSCORE_IDENT_RE,relevance:0},d=(t,r,n)=>{ +const d=e.inherit({className:"function",beginKeywords:t,end:r,excludeEnd:!0, +contains:[].concat(s)},n||{}) +;return d.contains.push(o),d.contains.push(e.C_NUMBER_MODE), +d.contains.push(e.C_BLOCK_COMMENT_MODE),d.contains.push(a),d},l={ +className:"built_in",begin:"\\b("+t.built_in.split(" ").join("|")+")\\b"},i={ +className:"string",begin:'"',end:'"',contains:[e.BACKSLASH_ESCAPE],relevance:0 +},c={begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,keywords:t, +relevance:0,contains:[{beginKeywords:t.keyword},l,{className:"built_in", +begin:e.UNDERSCORE_IDENT_RE,relevance:0}]},p={begin:/\(/,end:/\)/,relevance:0, +keywords:{built_in:t.built_in,literal:t.literal}, +contains:[e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,a,l,c,i,"self"]} +;return c.contains.push(p),{name:"GAUSS",aliases:["gss"],case_insensitive:!0, +keywords:t,illegal:/(\{[%#]|[%#]\}| <- )/, +contains:[e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,a,i,r,{ +className:"keyword", +begin:/\bexternal (matrix|string|array|sparse matrix|struct|proc|keyword|fn)/ +},d("proc keyword",";"),d("fn","="),{beginKeywords:"for threadfor",end:/;/, +relevance:0,contains:[e.C_BLOCK_COMMENT_MODE,a,p]},{variants:[{ +begin:e.UNDERSCORE_IDENT_RE+"\\."+e.UNDERSCORE_IDENT_RE},{ +begin:e.UNDERSCORE_IDENT_RE+"\\s*="}],relevance:0},c,n]}}})() +;hljs.registerLanguage("gauss",e)})();/*! `nginx` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n=e.regex,a={ +className:"variable",variants:[{begin:/\$\d+/},{begin:/\$\{\w+\}/},{ +begin:n.concat(/[$@]/,e.UNDERSCORE_IDENT_RE)}]},s={endsWithParent:!0,keywords:{ +$pattern:/[a-z_]{2,}|\/dev\/poll/, +literal:["on","off","yes","no","true","false","none","blocked","debug","info","notice","warn","error","crit","select","break","last","permanent","redirect","kqueue","rtsig","epoll","poll","/dev/poll"] +},relevance:0,illegal:"=>",contains:[e.HASH_COMMENT_MODE,{className:"string", +contains:[e.BACKSLASH_ESCAPE,a],variants:[{begin:/"/,end:/"/},{begin:/'/,end:/'/ +}]},{begin:"([a-z]+):/",end:"\\s",endsWithParent:!0,excludeEnd:!0,contains:[a] +},{className:"regexp",contains:[e.BACKSLASH_ESCAPE,a],variants:[{begin:"\\s\\^", +end:"\\s|\\{|;",returnEnd:!0},{begin:"~\\*?\\s+",end:"\\s|\\{|;",returnEnd:!0},{ +begin:"\\*(\\.[a-z\\-]+)+"},{begin:"([a-z\\-]+\\.)+\\*"}]},{className:"number", +begin:"\\b\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}(:\\d{1,5})?\\b"},{ +className:"number",begin:"\\b\\d+[kKmMgGdshdwy]?\\b",relevance:0},a]};return{ +name:"Nginx config",aliases:["nginxconf"],contains:[e.HASH_COMMENT_MODE,{ +beginKeywords:"upstream location",end:/;|\{/,contains:s.contains,keywords:{ +section:"upstream location"}},{className:"section", +begin:n.concat(e.UNDERSCORE_IDENT_RE+n.lookahead(/\s+\{/)),relevance:0},{ +begin:n.lookahead(e.UNDERSCORE_IDENT_RE+"\\s"),end:";|\\{",contains:[{ +className:"attribute",begin:e.UNDERSCORE_IDENT_RE,starts:s}],relevance:0}], +illegal:"[^\\s\\}\\{]"}}})();hljs.registerLanguage("nginx",e)})();/*! `abnf` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const a=e.regex,s=e.COMMENT(/;/,/$/) +;return{name:"Augmented Backus-Naur Form",illegal:/[!@#$^&',?+~`|:]/, +keywords:["ALPHA","BIT","CHAR","CR","CRLF","CTL","DIGIT","DQUOTE","HEXDIG","HTAB","LF","LWSP","OCTET","SP","VCHAR","WSP"], +contains:[{scope:"operator",match:/=\/?/},{scope:"attribute", +match:a.concat(/^[a-zA-Z][a-zA-Z0-9-]*/,/(?=\s*=)/)},s,{scope:"symbol", +match:/%b[0-1]+(-[0-1]+|(\.[0-1]+)+)?/},{scope:"symbol", +match:/%d[0-9]+(-[0-9]+|(\.[0-9]+)+)?/},{scope:"symbol", +match:/%x[0-9A-F]+(-[0-9A-F]+|(\.[0-9A-F]+)+)?/},{scope:"symbol", +match:/%[si](?=".*")/},e.QUOTE_STRING_MODE,e.NUMBER_MODE]}}})() +;hljs.registerLanguage("abnf",e)})();/*! `avrasm` grammar compiled for Highlight.js 11.7.0 */ +(()=>{var r=(()=>{"use strict";return r=>({name:"AVR Assembly", +case_insensitive:!0,keywords:{$pattern:"\\.?"+r.IDENT_RE, +keyword:"adc add adiw and andi asr bclr bld brbc brbs brcc brcs break breq brge brhc brhs brid brie brlo brlt brmi brne brpl brsh brtc brts brvc brvs bset bst call cbi cbr clc clh cli cln clr cls clt clv clz com cp cpc cpi cpse dec eicall eijmp elpm eor fmul fmuls fmulsu icall ijmp in inc jmp ld ldd ldi lds lpm lsl lsr mov movw mul muls mulsu neg nop or ori out pop push rcall ret reti rjmp rol ror sbc sbr sbrc sbrs sec seh sbi sbci sbic sbis sbiw sei sen ser ses set sev sez sleep spm st std sts sub subi swap tst wdr", +built_in:"r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 r16 r17 r18 r19 r20 r21 r22 r23 r24 r25 r26 r27 r28 r29 r30 r31 x|0 xh xl y|0 yh yl z|0 zh zl ucsr1c udr1 ucsr1a ucsr1b ubrr1l ubrr1h ucsr0c ubrr0h tccr3c tccr3a tccr3b tcnt3h tcnt3l ocr3ah ocr3al ocr3bh ocr3bl ocr3ch ocr3cl icr3h icr3l etimsk etifr tccr1c ocr1ch ocr1cl twcr twdr twar twsr twbr osccal xmcra xmcrb eicra spmcsr spmcr portg ddrg ping portf ddrf sreg sph spl xdiv rampz eicrb eimsk gimsk gicr eifr gifr timsk tifr mcucr mcucsr tccr0 tcnt0 ocr0 assr tccr1a tccr1b tcnt1h tcnt1l ocr1ah ocr1al ocr1bh ocr1bl icr1h icr1l tccr2 tcnt2 ocr2 ocdr wdtcr sfior eearh eearl eedr eecr porta ddra pina portb ddrb pinb portc ddrc pinc portd ddrd pind spdr spsr spcr udr0 ucsr0a ucsr0b ubrr0l acsr admux adcsr adch adcl porte ddre pine pinf", +meta:".byte .cseg .db .def .device .dseg .dw .endmacro .equ .eseg .exit .include .list .listmac .macro .nolist .org .set" +},contains:[r.C_BLOCK_COMMENT_MODE,r.COMMENT(";","$",{relevance:0 +}),r.C_NUMBER_MODE,r.BINARY_NUMBER_MODE,{className:"number", +begin:"\\b(\\$[a-zA-Z0-9]+|0o[0-7]+)"},r.QUOTE_STRING_MODE,{className:"string", +begin:"'",end:"[^\\\\]'",illegal:"[^\\\\][^']"},{className:"symbol", +begin:"^[A-Za-z0-9_.$]+:"},{className:"meta",begin:"#",end:"$"},{ +className:"subst",begin:"@[0-9]+"}]})})();hljs.registerLanguage("avrasm",r)})(); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/a11y-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/a11y-dark.min.css new file mode 100644 index 0000000..7e13f28 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/a11y-dark.min.css @@ -0,0 +1,7 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! + Theme: a11y-dark + Author: @ericwbailey + Maintainer: @ericwbailey + + Based on the Tomorrow Night Eighties theme: https://github.com/isagalaev/highlight.js/blob/master/src/styles/tomorrow-night-eighties.css +*/.hljs{background:#2b2b2b;color:#f8f8f2}.hljs-comment,.hljs-quote{color:#d4d0ab}.hljs-deletion,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#ffa07a}.hljs-built_in,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-params,.hljs-type{color:#f5ab35}.hljs-attribute{color:gold}.hljs-addition,.hljs-bullet,.hljs-string,.hljs-symbol{color:#abe338}.hljs-section,.hljs-title{color:#00e0e0}.hljs-keyword,.hljs-selector-tag{color:#dcc6e0}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}@media screen and (-ms-high-contrast:active){.hljs-addition,.hljs-attribute,.hljs-built_in,.hljs-bullet,.hljs-comment,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-params,.hljs-quote,.hljs-string,.hljs-symbol,.hljs-type{color:highlight}.hljs-keyword,.hljs-selector-tag{font-weight:700}} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/a11y-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/a11y-light.min.css new file mode 100644 index 0000000..2f233d4 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/a11y-light.min.css @@ -0,0 +1,7 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! + Theme: a11y-light + Author: @ericwbailey + Maintainer: @ericwbailey + + Based on the Tomorrow Night Eighties theme: https://github.com/isagalaev/highlight.js/blob/master/src/styles/tomorrow-night-eighties.css +*/.hljs{background:#fefefe;color:#545454}.hljs-comment,.hljs-quote{color:#696969}.hljs-deletion,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#d91e18}.hljs-attribute,.hljs-built_in,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-params,.hljs-type{color:#aa5d00}.hljs-addition,.hljs-bullet,.hljs-string,.hljs-symbol{color:green}.hljs-section,.hljs-title{color:#007faa}.hljs-keyword,.hljs-selector-tag{color:#7928a1}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}@media screen and (-ms-high-contrast:active){.hljs-addition,.hljs-attribute,.hljs-built_in,.hljs-bullet,.hljs-comment,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-params,.hljs-quote,.hljs-string,.hljs-symbol,.hljs-type{color:highlight}.hljs-keyword,.hljs-selector-tag{font-weight:700}} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/agate.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/agate.min.css new file mode 100644 index 0000000..b05047f --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/agate.min.css @@ -0,0 +1,20 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! + Theme: Agate + Author: (c) Taufik Nurrohman <hi@taufik-nurrohman.com> + Maintainer: @taufik-nurrohman + Updated: 2021-04-24 + + #333 + #62c8f3 + #7bd694 + #888 + #a2fca2 + #ade5fc + #b8d8a2 + #c6b4f0 + #d36363 + #fc9b9b + #fcc28c + #ffa + #fff +*/.hljs{background:#333;color:#fff}.hljs-doctag,.hljs-meta-keyword,.hljs-name,.hljs-strong{font-weight:700}.hljs-code,.hljs-emphasis{font-style:italic}.hljs-section,.hljs-tag{color:#62c8f3}.hljs-selector-class,.hljs-selector-id,.hljs-template-variable,.hljs-variable{color:#ade5fc}.hljs-meta-string,.hljs-string{color:#a2fca2}.hljs-attr,.hljs-quote,.hljs-selector-attr{color:#7bd694}.hljs-tag .hljs-attr{color:inherit}.hljs-attribute,.hljs-title,.hljs-type{color:#ffa}.hljs-number,.hljs-symbol{color:#d36363}.hljs-bullet,.hljs-template-tag{color:#b8d8a2}.hljs-built_in,.hljs-keyword,.hljs-literal,.hljs-selector-tag{color:#fcc28c}.hljs-code,.hljs-comment,.hljs-formula{color:#888}.hljs-link,.hljs-regexp,.hljs-selector-pseudo{color:#c6b4f0}.hljs-meta{color:#fc9b9b}.hljs-deletion{background:#fc9b9b;color:#333}.hljs-addition{background:#a2fca2;color:#333}.hljs-subst{color:#fff}.hljs a{color:inherit}.hljs a:focus,.hljs a:hover{color:inherit;text-decoration:underline}.hljs mark{background:#555;color:inherit} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/an-old-hope.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/an-old-hope.min.css new file mode 100644 index 0000000..ad7509c --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/an-old-hope.min.css @@ -0,0 +1,9 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! + Theme: An Old Hope – Star Wars Syntax + Author: (c) Gustavo Costa <gusbemacbe@gmail.com> + Maintainer: @gusbemacbe + + Original theme - Ocean Dark Theme – by https://github.com/gavsiu + Based on Jesse Leite's Atom syntax theme 'An Old Hope' + https://github.com/JesseLeite/an-old-hope-syntax-atom +*/.hljs{background:#1c1d21;color:#c0c5ce}.hljs-comment,.hljs-quote{color:#b6b18b}.hljs-deletion,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#eb3c54}.hljs-built_in,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-params,.hljs-type{color:#e7ce56}.hljs-attribute{color:#ee7c2b}.hljs-addition,.hljs-bullet,.hljs-string,.hljs-symbol{color:#4fb4d7}.hljs-section,.hljs-title{color:#78bb65}.hljs-keyword,.hljs-selector-tag{color:#b45ea4}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/androidstudio.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/androidstudio.min.css new file mode 100644 index 0000000..83e026a --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/androidstudio.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#a9b7c6;background:#282b2e}.hljs-bullet,.hljs-literal,.hljs-number,.hljs-symbol{color:#6897bb}.hljs-deletion,.hljs-keyword,.hljs-selector-tag{color:#cc7832}.hljs-link,.hljs-template-variable,.hljs-variable{color:#629755}.hljs-comment,.hljs-quote{color:grey}.hljs-meta{color:#bbb529}.hljs-addition,.hljs-attribute,.hljs-string{color:#6a8759}.hljs-section,.hljs-title,.hljs-type{color:#ffc66d}.hljs-name,.hljs-selector-class,.hljs-selector-id{color:#e8bf6a}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/ant-design.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/ant-design.min.css new file mode 100644 index 0000000..576dea2 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/ant-design.min.css @@ -0,0 +1,84 @@ +.hljs { + display: block; + padding: 1em; + overflow-x: auto; + color: rgba(0, 0, 0, .85); + border-radius: 2px; +} + +.hljs::selection { + text-shadow: none; + background: #b3d4fc; +} + +.hljs-comment, +.hljs-quote { + color: #708090; + font-style: italic; +} + +.hljs-doctag, +.hljs-keyword, +.hljs-formula { + color: #008dff; +} + +.hljs-section, +.hljs-name, +.hljs-selector-tag, +.hljs-deletion, +.hljs-subst { + color: #999; +} + +.hljs-literal { + color: #56b6c2; +} + + +.hljs-regexp { + color: #e90; +} +.hljs-string, +.hljs-addition, +.hljs-attribute, +.hljs-meta-string { + color: #0b8235; +} + +.hljs-built_in, +.hljs-class .hljs-title { + color: #e6c07b; +} + +.hljs-attr, +.hljs-variable, +.hljs-template-variable, +.hljs-type, +.hljs-selector-class, +.hljs-selector-attr, +.hljs-selector-pseudo, +.hljs-number { + color: #f81d22; +} + +.hljs-symbol, +.hljs-bullet, +.hljs-link, +.hljs-meta, +.hljs-selector-id, +.hljs-title { + color: #f81d22; +} + +.hljs-emphasis { + font-style: italic; +} + +.hljs-strong { + font-weight: bold; +} + +.hljs-link { + text-decoration: underline; +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/arduino-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/arduino-light.min.css new file mode 100644 index 0000000..f8ac6fa --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/arduino-light.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#fff;color:#434f54}.hljs-subst{color:#434f54}.hljs-attribute,.hljs-doctag,.hljs-keyword,.hljs-name,.hljs-selector-tag{color:#00979d}.hljs-addition,.hljs-built_in,.hljs-bullet,.hljs-code,.hljs-literal{color:#d35400}.hljs-link,.hljs-regexp,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#00979d}.hljs-deletion,.hljs-quote,.hljs-selector-class,.hljs-selector-id,.hljs-string,.hljs-template-tag,.hljs-type{color:#005c5f}.hljs-comment{color:rgba(149,165,166,.8)}.hljs-meta .hljs-keyword{color:#728e00}.hljs-meta{color:#434f54}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-function{color:#728e00}.hljs-section,.hljs-title{color:#800;font-weight:700}.hljs-number{color:#8a7b52} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/arta.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/arta.min.css new file mode 100644 index 0000000..8754b99 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/arta.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#222;color:#aaa}.hljs-subst{color:#aaa}.hljs-section{color:#fff}.hljs-comment,.hljs-meta,.hljs-quote{color:#444}.hljs-bullet,.hljs-regexp,.hljs-string,.hljs-symbol{color:#fc3}.hljs-addition,.hljs-number{color:#0c6}.hljs-attribute,.hljs-built_in,.hljs-link,.hljs-literal,.hljs-template-variable,.hljs-type{color:#32aaee}.hljs-keyword,.hljs-name,.hljs-selector-class,.hljs-selector-id,.hljs-selector-tag{color:#64a}.hljs-deletion,.hljs-template-tag,.hljs-title,.hljs-variable{color:#b16}.hljs-doctag,.hljs-section,.hljs-strong{font-weight:700}.hljs-emphasis{font-style:italic} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/ascetic.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/ascetic.min.css new file mode 100644 index 0000000..b200e00 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/ascetic.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#fff;color:#000}.hljs-addition,.hljs-attribute,.hljs-bullet,.hljs-link,.hljs-section,.hljs-string,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#888}.hljs-comment,.hljs-deletion,.hljs-meta,.hljs-quote{color:#ccc}.hljs-keyword,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-strong,.hljs-type{font-weight:700}.hljs-emphasis{font-style:italic} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/atom-one-dark-reasonable.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/atom-one-dark-reasonable.min.css new file mode 100644 index 0000000..a015869 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/atom-one-dark-reasonable.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#abb2bf;background:#282c34}.hljs-keyword,.hljs-operator,.hljs-pattern-match{color:#f92672}.hljs-function,.hljs-pattern-match .hljs-constructor{color:#61aeee}.hljs-function .hljs-params{color:#a6e22e}.hljs-function .hljs-params .hljs-typing{color:#fd971f}.hljs-module-access .hljs-module{color:#7e57c2}.hljs-constructor{color:#e2b93d}.hljs-constructor .hljs-string{color:#9ccc65}.hljs-comment,.hljs-quote{color:#b18eb1;font-style:italic}.hljs-doctag,.hljs-formula{color:#c678dd}.hljs-deletion,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-subst{color:#e06c75}.hljs-literal{color:#56b6c2}.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#98c379}.hljs-built_in,.hljs-class .hljs-title,.hljs-title.class_{color:#e6c07b}.hljs-attr,.hljs-number,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-pseudo,.hljs-template-variable,.hljs-type,.hljs-variable{color:#d19a66}.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-symbol,.hljs-title{color:#61aeee}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/atom-one-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/atom-one-dark.min.css new file mode 100644 index 0000000..23609b4 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/atom-one-dark.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#abb2bf;background:#282c34}.hljs-comment,.hljs-quote{color:#5c6370;font-style:italic}.hljs-doctag,.hljs-formula,.hljs-keyword{color:#c678dd}.hljs-deletion,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-subst{color:#e06c75}.hljs-literal{color:#56b6c2}.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#98c379}.hljs-attr,.hljs-number,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-pseudo,.hljs-template-variable,.hljs-type,.hljs-variable{color:#d19a66}.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-symbol,.hljs-title{color:#61aeee}.hljs-built_in,.hljs-class .hljs-title,.hljs-title.class_{color:#e6c07b}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/atom-one-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/atom-one-light.min.css new file mode 100644 index 0000000..2e58473 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/atom-one-light.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#383a42;background:#fafafa}.hljs-comment,.hljs-quote{color:#a0a1a7;font-style:italic}.hljs-doctag,.hljs-formula,.hljs-keyword{color:#a626a4}.hljs-deletion,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-subst{color:#e45649}.hljs-literal{color:#0184bb}.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#50a14f}.hljs-attr,.hljs-number,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-pseudo,.hljs-template-variable,.hljs-type,.hljs-variable{color:#986801}.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-symbol,.hljs-title{color:#4078f2}.hljs-built_in,.hljs-class .hljs-title,.hljs-title.class_{color:#c18401}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/3024.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/3024.min.css new file mode 100644 index 0000000..d5a2f7c --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/3024.min.css @@ -0,0 +1,7 @@ +/*! + Theme: 3024 + Author: Jan T. Sott (http://github.com/idleberg) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#a5a2a2;background:#090300}.hljs ::selection,.hljs::selection{background-color:#4a4543;color:#a5a2a2}.hljs-comment{color:#5c5855}.hljs-tag{color:#807d7c}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#a5a2a2}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#db2d20}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#e8bbd0}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fded02}.hljs-strong{font-weight:700;color:#fded02}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#01a252}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#b5e4f4}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#01a0e4}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#a16a94}.hljs-emphasis{color:#a16a94;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#cdab53}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/apathy.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/apathy.min.css new file mode 100644 index 0000000..fc1aad5 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/apathy.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Apathy + Author: Jannik Siebert (https://github.com/janniks) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#81b5ac;background:#031a16}.hljs ::selection,.hljs::selection{background-color:#184e45;color:#81b5ac}.hljs-comment{color:#2b685e}.hljs-tag{color:#5f9c92}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#81b5ac}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#3e9688}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#3e7996}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#3e4c96}.hljs-strong{font-weight:700;color:#3e4c96}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#883e96}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#963e4c}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#96883e}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#4c963e}.hljs-emphasis{color:#4c963e;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#3e965b}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/apprentice.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/apprentice.min.css new file mode 100644 index 0000000..1eb1b69 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/apprentice.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Apprentice + Author: romainl + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#bcbcbc;background:#262626}.hljs ::selection,.hljs::selection{background-color:#333;color:#bcbcbc}.hljs-comment{color:#6c6c6c}.hljs-tag{color:#787878}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#bcbcbc}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#5f8787}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#ff8700}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#5f8787}.hljs-strong{font-weight:700;color:#5f8787}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#87af87}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#5f875f}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#ffffaf}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#87afd7}.hljs-emphasis{color:#87afd7;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#5f87af}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ashes.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ashes.min.css new file mode 100644 index 0000000..d858c9a --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ashes.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Ashes + Author: Jannik Siebert (https://github.com/janniks) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c7ccd1;background:#1c2023}.hljs ::selection,.hljs::selection{background-color:#565e65;color:#c7ccd1}.hljs-comment{color:#747c84}.hljs-tag{color:#adb3ba}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#c7ccd1}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#c7ae95}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#c7c795}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#aec795}.hljs-strong{font-weight:700;color:#aec795}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#95c7ae}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#95aec7}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#ae95c7}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#c795ae}.hljs-emphasis{color:#c795ae;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#c79595}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-cave-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-cave-light.min.css new file mode 100644 index 0000000..d64f590 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-cave-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Atelier Cave Light + Author: Bram de Haan (http://atelierbramdehaan.nl) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#585260;background:#efecf4}.hljs ::selection,.hljs::selection{background-color:#8b8792;color:#585260}.hljs-comment{color:#7e7887}.hljs-tag{color:#655f6d}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#585260}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#be4678}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#aa573c}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#a06e3b}.hljs-strong{font-weight:700;color:#a06e3b}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#2a9292}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#398bc6}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#576ddb}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#955ae7}.hljs-emphasis{color:#955ae7;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#bf40bf}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-cave.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-cave.min.css new file mode 100644 index 0000000..88755e4 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-cave.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Atelier Cave + Author: Bram de Haan (http://atelierbramdehaan.nl) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#8b8792;background:#19171c}.hljs ::selection,.hljs::selection{background-color:#585260;color:#8b8792}.hljs-comment{color:#655f6d}.hljs-tag{color:#7e7887}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#8b8792}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#be4678}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#aa573c}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#a06e3b}.hljs-strong{font-weight:700;color:#a06e3b}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#2a9292}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#398bc6}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#576ddb}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#955ae7}.hljs-emphasis{color:#955ae7;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#bf40bf}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-dune-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-dune-light.min.css new file mode 100644 index 0000000..8205d36 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-dune-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Atelier Dune Light + Author: Bram de Haan (http://atelierbramdehaan.nl) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#6e6b5e;background:#fefbec}.hljs ::selection,.hljs::selection{background-color:#a6a28c;color:#6e6b5e}.hljs-comment{color:#999580}.hljs-tag{color:#7d7a68}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#6e6b5e}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#d73737}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#b65611}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ae9513}.hljs-strong{font-weight:700;color:#ae9513}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#60ac39}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#1fad83}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#6684e1}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#b854d4}.hljs-emphasis{color:#b854d4;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#d43552}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-dune.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-dune.min.css new file mode 100644 index 0000000..894ee0f --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-dune.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Atelier Dune + Author: Bram de Haan (http://atelierbramdehaan.nl) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#a6a28c;background:#20201d}.hljs ::selection,.hljs::selection{background-color:#6e6b5e;color:#a6a28c}.hljs-comment{color:#7d7a68}.hljs-tag{color:#999580}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#a6a28c}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#d73737}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#b65611}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ae9513}.hljs-strong{font-weight:700;color:#ae9513}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#60ac39}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#1fad83}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#6684e1}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#b854d4}.hljs-emphasis{color:#b854d4;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#d43552}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-estuary-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-estuary-light.min.css new file mode 100644 index 0000000..8ee463f --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-estuary-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Atelier Estuary Light + Author: Bram de Haan (http://atelierbramdehaan.nl) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#5f5e4e;background:#f4f3ec}.hljs ::selection,.hljs::selection{background-color:#929181;color:#5f5e4e}.hljs-comment{color:#878573}.hljs-tag{color:#6c6b5a}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#5f5e4e}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ba6236}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#ae7313}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#a5980d}.hljs-strong{font-weight:700;color:#a5980d}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#7d9726}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#5b9d48}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#36a166}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#5f9182}.hljs-emphasis{color:#5f9182;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#9d6c7c}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-estuary.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-estuary.min.css new file mode 100644 index 0000000..ba9b6c6 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-estuary.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Atelier Estuary + Author: Bram de Haan (http://atelierbramdehaan.nl) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#929181;background:#22221b}.hljs ::selection,.hljs::selection{background-color:#5f5e4e;color:#929181}.hljs-comment{color:#6c6b5a}.hljs-tag{color:#878573}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#929181}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ba6236}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#ae7313}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#a5980d}.hljs-strong{font-weight:700;color:#a5980d}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#7d9726}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#5b9d48}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#36a166}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#5f9182}.hljs-emphasis{color:#5f9182;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#9d6c7c}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-forest-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-forest-light.min.css new file mode 100644 index 0000000..95a3967 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-forest-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Atelier Forest Light + Author: Bram de Haan (http://atelierbramdehaan.nl) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#68615e;background:#f1efee}.hljs ::selection,.hljs::selection{background-color:#a8a19f;color:#68615e}.hljs-comment{color:#9c9491}.hljs-tag{color:#766e6b}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#68615e}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#f22c40}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#df5320}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#c38418}.hljs-strong{font-weight:700;color:#c38418}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#7b9726}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#3d97b8}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#407ee7}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#6666ea}.hljs-emphasis{color:#6666ea;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#c33ff3}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-forest.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-forest.min.css new file mode 100644 index 0000000..8df0169 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-forest.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Atelier Forest + Author: Bram de Haan (http://atelierbramdehaan.nl) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#a8a19f;background:#1b1918}.hljs ::selection,.hljs::selection{background-color:#68615e;color:#a8a19f}.hljs-comment{color:#766e6b}.hljs-tag{color:#9c9491}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#a8a19f}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#f22c40}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#df5320}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#c38418}.hljs-strong{font-weight:700;color:#c38418}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#7b9726}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#3d97b8}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#407ee7}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#6666ea}.hljs-emphasis{color:#6666ea;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#c33ff3}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-heath-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-heath-light.min.css new file mode 100644 index 0000000..f51f51b --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-heath-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Atelier Heath Light + Author: Bram de Haan (http://atelierbramdehaan.nl) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#695d69;background:#f7f3f7}.hljs ::selection,.hljs::selection{background-color:#ab9bab;color:#695d69}.hljs-comment{color:#9e8f9e}.hljs-tag{color:#776977}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#695d69}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ca402b}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#a65926}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#bb8a35}.hljs-strong{font-weight:700;color:#bb8a35}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#918b3b}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#159393}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#516aec}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#7b59c0}.hljs-emphasis{color:#7b59c0;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#c3c}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-heath.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-heath.min.css new file mode 100644 index 0000000..95928dc --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-heath.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Atelier Heath + Author: Bram de Haan (http://atelierbramdehaan.nl) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#ab9bab;background:#1b181b}.hljs ::selection,.hljs::selection{background-color:#695d69;color:#ab9bab}.hljs-comment{color:#776977}.hljs-tag{color:#9e8f9e}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#ab9bab}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ca402b}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#a65926}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#bb8a35}.hljs-strong{font-weight:700;color:#bb8a35}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#918b3b}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#159393}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#516aec}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#7b59c0}.hljs-emphasis{color:#7b59c0;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#c3c}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-lakeside-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-lakeside-light.min.css new file mode 100644 index 0000000..a7337db --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-lakeside-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Atelier Lakeside Light + Author: Bram de Haan (http://atelierbramdehaan.nl) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#516d7b;background:#ebf8ff}.hljs ::selection,.hljs::selection{background-color:#7ea2b4;color:#516d7b}.hljs-comment{color:#7195a8}.hljs-tag{color:#5a7b8c}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#516d7b}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#d22d72}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#935c25}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#8a8a0f}.hljs-strong{font-weight:700;color:#8a8a0f}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#568c3b}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#2d8f6f}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#257fad}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#6b6bb8}.hljs-emphasis{color:#6b6bb8;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#b72dd2}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-lakeside.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-lakeside.min.css new file mode 100644 index 0000000..4af75cd --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-lakeside.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Atelier Lakeside + Author: Bram de Haan (http://atelierbramdehaan.nl) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#7ea2b4;background:#161b1d}.hljs ::selection,.hljs::selection{background-color:#516d7b;color:#7ea2b4}.hljs-comment{color:#5a7b8c}.hljs-tag{color:#7195a8}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#7ea2b4}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#d22d72}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#935c25}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#8a8a0f}.hljs-strong{font-weight:700;color:#8a8a0f}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#568c3b}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#2d8f6f}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#257fad}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#6b6bb8}.hljs-emphasis{color:#6b6bb8;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#b72dd2}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-plateau-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-plateau-light.min.css new file mode 100644 index 0000000..f4c3b1a --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-plateau-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Atelier Plateau Light + Author: Bram de Haan (http://atelierbramdehaan.nl) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#585050;background:#f4ecec}.hljs ::selection,.hljs::selection{background-color:#8a8585;color:#585050}.hljs-comment{color:#7e7777}.hljs-tag{color:#655d5d}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#585050}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ca4949}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#b45a3c}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#a06e3b}.hljs-strong{font-weight:700;color:#a06e3b}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#4b8b8b}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#5485b6}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#7272ca}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#8464c4}.hljs-emphasis{color:#8464c4;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#bd5187}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-plateau.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-plateau.min.css new file mode 100644 index 0000000..858fd15 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-plateau.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Atelier Plateau + Author: Bram de Haan (http://atelierbramdehaan.nl) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#8a8585;background:#1b1818}.hljs ::selection,.hljs::selection{background-color:#585050;color:#8a8585}.hljs-comment{color:#655d5d}.hljs-tag{color:#7e7777}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#8a8585}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ca4949}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#b45a3c}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#a06e3b}.hljs-strong{font-weight:700;color:#a06e3b}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#4b8b8b}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#5485b6}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#7272ca}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#8464c4}.hljs-emphasis{color:#8464c4;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#bd5187}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-savanna-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-savanna-light.min.css new file mode 100644 index 0000000..88b380b --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-savanna-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Atelier Savanna Light + Author: Bram de Haan (http://atelierbramdehaan.nl) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#526057;background:#ecf4ee}.hljs ::selection,.hljs::selection{background-color:#87928a;color:#526057}.hljs-comment{color:#78877d}.hljs-tag{color:#5f6d64}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#526057}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#b16139}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#9f713c}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#a07e3b}.hljs-strong{font-weight:700;color:#a07e3b}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#489963}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#1c9aa0}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#478c90}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#55859b}.hljs-emphasis{color:#55859b;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#867469}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-savanna.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-savanna.min.css new file mode 100644 index 0000000..91c62bd --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-savanna.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Atelier Savanna + Author: Bram de Haan (http://atelierbramdehaan.nl) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#87928a;background:#171c19}.hljs ::selection,.hljs::selection{background-color:#526057;color:#87928a}.hljs-comment{color:#5f6d64}.hljs-tag{color:#78877d}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#87928a}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#b16139}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#9f713c}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#a07e3b}.hljs-strong{font-weight:700;color:#a07e3b}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#489963}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#1c9aa0}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#478c90}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#55859b}.hljs-emphasis{color:#55859b;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#867469}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-seaside-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-seaside-light.min.css new file mode 100644 index 0000000..e6e6572 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-seaside-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Atelier Seaside Light + Author: Bram de Haan (http://atelierbramdehaan.nl) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#5e6e5e;background:#f4fbf4}.hljs ::selection,.hljs::selection{background-color:#8ca68c;color:#5e6e5e}.hljs-comment{color:#809980}.hljs-tag{color:#687d68}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#5e6e5e}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#e6193c}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#87711d}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#98981b}.hljs-strong{font-weight:700;color:#98981b}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#29a329}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#1999b3}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#3d62f5}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#ad2bee}.hljs-emphasis{color:#ad2bee;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#e619c3}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-seaside.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-seaside.min.css new file mode 100644 index 0000000..6b4e0bb --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-seaside.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Atelier Seaside + Author: Bram de Haan (http://atelierbramdehaan.nl) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#8ca68c;background:#131513}.hljs ::selection,.hljs::selection{background-color:#5e6e5e;color:#8ca68c}.hljs-comment{color:#687d68}.hljs-tag{color:#809980}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#8ca68c}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#e6193c}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#87711d}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#98981b}.hljs-strong{font-weight:700;color:#98981b}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#29a329}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#1999b3}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#3d62f5}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#ad2bee}.hljs-emphasis{color:#ad2bee;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#e619c3}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-sulphurpool-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-sulphurpool-light.min.css new file mode 100644 index 0000000..a5a88f5 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-sulphurpool-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Atelier Sulphurpool Light + Author: Bram de Haan (http://atelierbramdehaan.nl) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#5e6687;background:#f5f7ff}.hljs ::selection,.hljs::selection{background-color:#979db4;color:#5e6687}.hljs-comment{color:#898ea4}.hljs-tag{color:#6b7394}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#5e6687}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#c94922}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#c76b29}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#c08b30}.hljs-strong{font-weight:700;color:#c08b30}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#ac9739}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#22a2c9}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#3d8fd1}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#6679cc}.hljs-emphasis{color:#6679cc;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#9c637a}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-sulphurpool.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-sulphurpool.min.css new file mode 100644 index 0000000..65c79a3 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atelier-sulphurpool.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Atelier Sulphurpool + Author: Bram de Haan (http://atelierbramdehaan.nl) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#979db4;background:#202746}.hljs ::selection,.hljs::selection{background-color:#5e6687;color:#979db4}.hljs-comment{color:#6b7394}.hljs-tag{color:#898ea4}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#979db4}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#c94922}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#c76b29}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#c08b30}.hljs-strong{font-weight:700;color:#c08b30}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#ac9739}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#22a2c9}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#3d8fd1}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#6679cc}.hljs-emphasis{color:#6679cc;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#9c637a}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atlas.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atlas.min.css new file mode 100644 index 0000000..98f89e9 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/atlas.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Atlas + Author: Alex Lende (https://ajlende.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#a1a19a;background:#002635}.hljs ::selection,.hljs::selection{background-color:#517f8d;color:#a1a19a}.hljs-comment{color:#6c8b91}.hljs-tag{color:#869696}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#a1a19a}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ff5a67}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f08e48}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ffcc1b}.hljs-strong{font-weight:700;color:#ffcc1b}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#7fc06e}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#14747e}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#5dd7b9}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#9a70a4}.hljs-emphasis{color:#9a70a4;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#c43060}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/bespin.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/bespin.min.css new file mode 100644 index 0000000..bb76a49 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/bespin.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Bespin + Author: Jan T. Sott + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#8a8986;background:#28211c}.hljs ::selection,.hljs::selection{background-color:#5e5d5c;color:#8a8986}.hljs-comment{color:#666}.hljs-tag{color:#797977}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#8a8986}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#cf6a4c}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#cf7d34}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#f9ee98}.hljs-strong{font-weight:700;color:#f9ee98}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#54be0d}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#afc4db}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#5ea6ea}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#9b859d}.hljs-emphasis{color:#9b859d;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#937121}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-bathory.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-bathory.min.css new file mode 100644 index 0000000..b06c52f --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-bathory.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Black Metal (Bathory) + Author: metalelf0 (https://github.com/metalelf0) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c1c1c1;background:#000}.hljs ::selection,.hljs::selection{background-color:#222;color:#c1c1c1}.hljs-comment{color:#333}.hljs-tag{color:#999}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#c1c1c1}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#5f8787}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#aaa}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#e78a53}.hljs-strong{font-weight:700;color:#e78a53}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#fbcb97}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#aaa}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#888}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#999}.hljs-emphasis{color:#999;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#444}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-burzum.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-burzum.min.css new file mode 100644 index 0000000..931a1b5 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-burzum.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Black Metal (Burzum) + Author: metalelf0 (https://github.com/metalelf0) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c1c1c1;background:#000}.hljs ::selection,.hljs::selection{background-color:#222;color:#c1c1c1}.hljs-comment{color:#333}.hljs-tag{color:#999}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#c1c1c1}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#5f8787}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#aaa}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#9ba}.hljs-strong{font-weight:700;color:#9ba}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#dec}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#aaa}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#888}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#999}.hljs-emphasis{color:#999;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#444}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-dark-funeral.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-dark-funeral.min.css new file mode 100644 index 0000000..c6eed68 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-dark-funeral.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Black Metal (Dark Funeral) + Author: metalelf0 (https://github.com/metalelf0) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c1c1c1;background:#000}.hljs ::selection,.hljs::selection{background-color:#222;color:#c1c1c1}.hljs-comment{color:#333}.hljs-tag{color:#999}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#c1c1c1}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#5f8787}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#aaa}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#5f81a5}.hljs-strong{font-weight:700;color:#5f81a5}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#d0dfee}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#aaa}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#888}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#999}.hljs-emphasis{color:#999;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#444}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-gorgoroth.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-gorgoroth.min.css new file mode 100644 index 0000000..de53858 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-gorgoroth.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Black Metal (Gorgoroth) + Author: metalelf0 (https://github.com/metalelf0) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c1c1c1;background:#000}.hljs ::selection,.hljs::selection{background-color:#222;color:#c1c1c1}.hljs-comment{color:#333}.hljs-tag{color:#999}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#c1c1c1}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#5f8787}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#aaa}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#8c7f70}.hljs-strong{font-weight:700;color:#8c7f70}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#9b8d7f}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#aaa}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#888}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#999}.hljs-emphasis{color:#999;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#444}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-immortal.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-immortal.min.css new file mode 100644 index 0000000..f6caec3 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-immortal.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Black Metal (Immortal) + Author: metalelf0 (https://github.com/metalelf0) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c1c1c1;background:#000}.hljs ::selection,.hljs::selection{background-color:#222;color:#c1c1c1}.hljs-comment{color:#333}.hljs-tag{color:#999}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#c1c1c1}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#5f8787}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#aaa}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#567}.hljs-strong{font-weight:700;color:#567}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#79b}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#aaa}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#888}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#999}.hljs-emphasis{color:#999;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#444}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-khold.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-khold.min.css new file mode 100644 index 0000000..59dfeb4 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-khold.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Black Metal (Khold) + Author: metalelf0 (https://github.com/metalelf0) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c1c1c1;background:#000}.hljs ::selection,.hljs::selection{background-color:#222;color:#c1c1c1}.hljs-comment{color:#333}.hljs-tag{color:#999}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#c1c1c1}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#5f8787}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#aaa}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#974b46}.hljs-strong{font-weight:700;color:#974b46}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#eceee3}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#aaa}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#888}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#999}.hljs-emphasis{color:#999;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#444}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-marduk.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-marduk.min.css new file mode 100644 index 0000000..f05741c --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-marduk.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Black Metal (Marduk) + Author: metalelf0 (https://github.com/metalelf0) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c1c1c1;background:#000}.hljs ::selection,.hljs::selection{background-color:#222;color:#c1c1c1}.hljs-comment{color:#333}.hljs-tag{color:#999}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#c1c1c1}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#5f8787}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#aaa}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#626b67}.hljs-strong{font-weight:700;color:#626b67}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#a5aaa7}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#aaa}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#888}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#999}.hljs-emphasis{color:#999;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#444}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-mayhem.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-mayhem.min.css new file mode 100644 index 0000000..cb7e355 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-mayhem.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Black Metal (Mayhem) + Author: metalelf0 (https://github.com/metalelf0) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c1c1c1;background:#000}.hljs ::selection,.hljs::selection{background-color:#222;color:#c1c1c1}.hljs-comment{color:#333}.hljs-tag{color:#999}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#c1c1c1}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#5f8787}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#aaa}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#eecc6c}.hljs-strong{font-weight:700;color:#eecc6c}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#f3ecd4}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#aaa}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#888}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#999}.hljs-emphasis{color:#999;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#444}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-nile.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-nile.min.css new file mode 100644 index 0000000..7488924 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-nile.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Black Metal (Nile) + Author: metalelf0 (https://github.com/metalelf0) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c1c1c1;background:#000}.hljs ::selection,.hljs::selection{background-color:#222;color:#c1c1c1}.hljs-comment{color:#333}.hljs-tag{color:#999}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#c1c1c1}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#5f8787}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#aaa}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#775}.hljs-strong{font-weight:700;color:#775}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#a98}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#aaa}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#888}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#999}.hljs-emphasis{color:#999;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#444}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-venom.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-venom.min.css new file mode 100644 index 0000000..36d2c47 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal-venom.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Black Metal (Venom) + Author: metalelf0 (https://github.com/metalelf0) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c1c1c1;background:#000}.hljs ::selection,.hljs::selection{background-color:#222;color:#c1c1c1}.hljs-comment{color:#333}.hljs-tag{color:#999}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#c1c1c1}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#5f8787}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#aaa}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#79241f}.hljs-strong{font-weight:700;color:#79241f}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#f8f7f2}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#aaa}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#888}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#999}.hljs-emphasis{color:#999;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#444}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal.min.css new file mode 100644 index 0000000..e506f00 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/black-metal.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Black Metal + Author: metalelf0 (https://github.com/metalelf0) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c1c1c1;background:#000}.hljs ::selection,.hljs::selection{background-color:#222;color:#c1c1c1}.hljs-comment{color:#333}.hljs-tag{color:#999}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#c1c1c1}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#5f8787}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#aaa}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#a06666}.hljs-strong{font-weight:700;color:#a06666}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#d99}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#aaa}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#888}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#999}.hljs-emphasis{color:#999;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#444}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/brewer.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/brewer.min.css new file mode 100644 index 0000000..fb97690 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/brewer.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Brewer + Author: Timothée Poisot (http://github.com/tpoisot) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#b7b8b9;background:#0c0d0e}.hljs ::selection,.hljs::selection{background-color:#515253;color:#b7b8b9}.hljs-comment{color:#737475}.hljs-tag{color:#959697}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#b7b8b9}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#e31a1c}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#e6550d}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#dca060}.hljs-strong{font-weight:700;color:#dca060}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#31a354}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#80b1d3}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#3182bd}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#756bb1}.hljs-emphasis{color:#756bb1;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#b15928}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/bright.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/bright.min.css new file mode 100644 index 0000000..f67a922 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/bright.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Bright + Author: Chris Kempson (http://chriskempson.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#e0e0e0;background:#000}.hljs ::selection,.hljs::selection{background-color:#505050;color:#e0e0e0}.hljs-comment{color:#b0b0b0}.hljs-tag{color:#d0d0d0}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#e0e0e0}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#fb0120}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#fc6d24}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fda331}.hljs-strong{font-weight:700;color:#fda331}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#a1c659}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#76c7b7}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#6fb3d2}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#d381c3}.hljs-emphasis{color:#d381c3;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#be643c}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/brogrammer.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/brogrammer.min.css new file mode 100644 index 0000000..10b870f --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/brogrammer.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Brogrammer + Author: Vik Ramanujam (http://github.com/piggyslasher) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#4e5ab7;background:#1f1f1f}.hljs ::selection,.hljs::selection{background-color:#2dc55e;color:#4e5ab7}.hljs-comment{color:#ecba0f}.hljs-tag{color:#2a84d2}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#4e5ab7}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#d6dbe5}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#de352e}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#1dd361}.hljs-strong{font-weight:700;color:#1dd361}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#f3bd09}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#1081d6}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#5350b9}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#0f7ddb}.hljs-emphasis{color:#0f7ddb;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#fff}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/brush-trees-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/brush-trees-dark.min.css new file mode 100644 index 0000000..c63e9dd --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/brush-trees-dark.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Brush Trees Dark + Author: Abraham White <abelincoln.white@gmail.com> + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#b0c5c8;background:#485867}.hljs ::selection,.hljs::selection{background-color:#6d828e;color:#b0c5c8}.hljs-comment{color:#8299a1}.hljs-tag{color:#98afb5}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#b0c5c8}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#b38686}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#d8bba2}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#aab386}.hljs-strong{font-weight:700;color:#aab386}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#87b386}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#86b3b3}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#868cb3}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#b386b2}.hljs-emphasis{color:#b386b2;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#b39f9f}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/brush-trees.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/brush-trees.min.css new file mode 100644 index 0000000..6661e08 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/brush-trees.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Brush Trees + Author: Abraham White <abelincoln.white@gmail.com> + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#6d828e;background:#e3efef}.hljs ::selection,.hljs::selection{background-color:#b0c5c8;color:#6d828e}.hljs-comment{color:#98afb5}.hljs-tag{color:#8299a1}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#6d828e}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#b38686}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#d8bba2}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#aab386}.hljs-strong{font-weight:700;color:#aab386}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#87b386}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#86b3b3}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#868cb3}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#b386b2}.hljs-emphasis{color:#b386b2;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#b39f9f}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/chalk.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/chalk.min.css new file mode 100644 index 0000000..f23f9c6 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/chalk.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Chalk + Author: Chris Kempson (http://chriskempson.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#d0d0d0;background:#151515}.hljs ::selection,.hljs::selection{background-color:#303030;color:#d0d0d0}.hljs-comment{color:#505050}.hljs-tag{color:#b0b0b0}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#d0d0d0}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#fb9fb1}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#eda987}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ddb26f}.hljs-strong{font-weight:700;color:#ddb26f}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#acc267}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#12cfc0}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#6fc2ef}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#e1a3ee}.hljs-emphasis{color:#e1a3ee;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#deaf8f}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/circus.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/circus.min.css new file mode 100644 index 0000000..ee437b7 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/circus.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Circus + Author: Stephan Boyer (https://github.com/stepchowfun) and Esther Wang (https://github.com/ewang12) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#a7a7a7;background:#191919}.hljs ::selection,.hljs::selection{background-color:#303030;color:#a7a7a7}.hljs-comment{color:#5f5a60}.hljs-tag{color:#505050}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#a7a7a7}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#dc657d}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#4bb1a7}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#c3ba63}.hljs-strong{font-weight:700;color:#c3ba63}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#84b97c}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#4bb1a7}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#639ee4}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#b888e2}.hljs-emphasis{color:#b888e2;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#b888e2}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/classic-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/classic-dark.min.css new file mode 100644 index 0000000..e4c67f9 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/classic-dark.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Classic Dark + Author: Jason Heeris (http://heeris.id.au) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#d0d0d0;background:#151515}.hljs ::selection,.hljs::selection{background-color:#303030;color:#d0d0d0}.hljs-comment{color:#505050}.hljs-tag{color:#b0b0b0}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#d0d0d0}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ac4142}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#d28445}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#f4bf75}.hljs-strong{font-weight:700;color:#f4bf75}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#90a959}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#75b5aa}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#6a9fb5}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#aa759f}.hljs-emphasis{color:#aa759f;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#8f5536}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/classic-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/classic-light.min.css new file mode 100644 index 0000000..d1b5ffa --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/classic-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Classic Light + Author: Jason Heeris (http://heeris.id.au) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#303030;background:#f5f5f5}.hljs ::selection,.hljs::selection{background-color:#d0d0d0;color:#303030}.hljs-comment{color:#b0b0b0}.hljs-tag{color:#505050}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#303030}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ac4142}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#d28445}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#f4bf75}.hljs-strong{font-weight:700;color:#f4bf75}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#90a959}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#75b5aa}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#6a9fb5}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#aa759f}.hljs-emphasis{color:#aa759f;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#8f5536}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/codeschool.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/codeschool.min.css new file mode 100644 index 0000000..649b7ee --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/codeschool.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Codeschool + Author: blockloop + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#9ea7a6;background:#232c31}.hljs ::selection,.hljs::selection{background-color:#2a343a;color:#9ea7a6}.hljs-comment{color:#3f4944}.hljs-tag{color:#84898c}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#9ea7a6}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#2a5491}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#43820d}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#a03b1e}.hljs-strong{font-weight:700;color:#a03b1e}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#237986}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#b02f30}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#484d79}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#c59820}.hljs-emphasis{color:#c59820;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#c98344}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/colors.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/colors.min.css new file mode 100644 index 0000000..acd6d2d --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/colors.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Colors + Author: mrmrs (http://clrs.cc) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#bbb;background:#111}.hljs ::selection,.hljs::selection{background-color:#555;color:#bbb}.hljs-comment{color:#777}.hljs-tag{color:#999}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#bbb}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ff4136}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#ff851b}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ffdc00}.hljs-strong{font-weight:700;color:#ffdc00}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#2ecc40}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#7fdbff}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#0074d9}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#b10dc9}.hljs-emphasis{color:#b10dc9;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#85144b}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/cupcake.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/cupcake.min.css new file mode 100644 index 0000000..c435397 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/cupcake.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Cupcake + Author: Chris Kempson (http://chriskempson.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#8b8198;background:#fbf1f2}.hljs ::selection,.hljs::selection{background-color:#d8d5dd;color:#8b8198}.hljs-comment{color:#bfb9c6}.hljs-tag{color:#a59daf}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#8b8198}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#d57e85}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#ebb790}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#dcb16c}.hljs-strong{font-weight:700;color:#dcb16c}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#a3b367}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#69a9a7}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#7297b9}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#bb99b4}.hljs-emphasis{color:#bb99b4;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#baa58c}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/cupertino.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/cupertino.min.css new file mode 100644 index 0000000..e1b6b60 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/cupertino.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Cupertino + Author: Defman21 + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#404040;background:#fff}.hljs ::selection,.hljs::selection{background-color:silver;color:#404040}.hljs-comment,.hljs-tag{color:grey}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#404040}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#c41a15}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#eb8500}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#826b28}.hljs-strong{font-weight:700;color:#826b28}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#007400}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#318495}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#00f}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#a90d91}.hljs-emphasis{color:#a90d91;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#826b28}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/danqing.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/danqing.min.css new file mode 100644 index 0000000..d211abf --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/danqing.min.css @@ -0,0 +1,7 @@ +/*! + Theme: DanQing + Author: Wenhan Zhu (Cosmos) (zhuwenhan950913@gmail.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#e0f0ef;background:#2d302f}.hljs ::selection,.hljs::selection{background-color:#5a605d;color:#e0f0ef}.hljs-comment{color:#9da8a3}.hljs-tag{color:#cad8d2}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#e0f0ef}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#f9906f}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#b38a61}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#f0c239}.hljs-strong{font-weight:700;color:#f0c239}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#8ab361}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#30dff3}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#b0a4e3}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#cca4e3}.hljs-emphasis{color:#cca4e3;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#ca6924}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/darcula.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/darcula.min.css new file mode 100644 index 0000000..82c5017 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/darcula.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Darcula + Author: jetbrains + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#a9b7c6;background:#2b2b2b}.hljs ::selection,.hljs::selection{background-color:#323232;color:#a9b7c6}.hljs-comment{color:#606366}.hljs-tag{color:#a4a3a3}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#a9b7c6}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#4eade5}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#689757}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#bbb529}.hljs-strong{font-weight:700;color:#bbb529}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#6a8759}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#629755}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#9876aa}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#cc7832}.hljs-emphasis{color:#cc7832;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:grey}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/dark-violet.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/dark-violet.min.css new file mode 100644 index 0000000..a78ce24 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/dark-violet.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Dark Violet + Author: ruler501 (https://github.com/ruler501/base16-darkviolet) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#b08ae6;background:#000}.hljs ::selection,.hljs::selection{background-color:#432d59;color:#b08ae6}.hljs-comment{color:#593380}.hljs-tag{color:#0f0}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#b08ae6}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#a82ee6}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#b6c}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#f29df2}.hljs-strong{font-weight:700;color:#f29df2}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#4595e6}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#40dfff}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#4136d9}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#7e5ce6}.hljs-emphasis{color:#7e5ce6;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#a886bf}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/darkmoss.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/darkmoss.min.css new file mode 100644 index 0000000..f0f5016 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/darkmoss.min.css @@ -0,0 +1,7 @@ +/*! + Theme: darkmoss + Author: Gabriel Avanzi (https://github.com/avanzzzi) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c7c7a5;background:#171e1f}.hljs ::selection,.hljs::selection{background-color:#373c3d;color:#c7c7a5}.hljs-comment{color:#555e5f}.hljs-tag{color:#818f80}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#c7c7a5}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ff4658}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#e6db74}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fdb11f}.hljs-strong{font-weight:700;color:#fdb11f}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#499180}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#66d9ef}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#498091}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#9bc0c8}.hljs-emphasis{color:#9bc0c8;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#d27b53}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/darktooth.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/darktooth.min.css new file mode 100644 index 0000000..81b8a39 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/darktooth.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Darktooth + Author: Jason Milkins (https://github.com/jasonm23) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#a89984;background:#1d2021}.hljs ::selection,.hljs::selection{background-color:#504945;color:#a89984}.hljs-comment{color:#665c54}.hljs-tag{color:#928374}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#a89984}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#fb543f}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#fe8625}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fac03b}.hljs-strong{font-weight:700;color:#fac03b}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#95c085}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#8ba59b}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#0d6678}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#8f4673}.hljs-emphasis{color:#8f4673;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#a87322}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/decaf.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/decaf.min.css new file mode 100644 index 0000000..ca926cf --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/decaf.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Decaf + Author: Alex Mirrington (https://github.com/alexmirrington) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#ccc;background:#2d2d2d}.hljs ::selection,.hljs::selection{background-color:#515151;color:#ccc}.hljs-comment{color:#777}.hljs-tag{color:#b4b7b4}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#ccc}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ff7f7b}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#ffbf70}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ffd67c}.hljs-strong{font-weight:700;color:#ffd67c}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#beda78}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#bed6ff}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#90bee1}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#efb3f7}.hljs-emphasis{color:#efb3f7;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#ff93b3}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/default-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/default-dark.min.css new file mode 100644 index 0000000..1c25c31 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/default-dark.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Default Dark + Author: Chris Kempson (http://chriskempson.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#d8d8d8;background:#181818}.hljs ::selection,.hljs::selection{background-color:#383838;color:#d8d8d8}.hljs-comment{color:#585858}.hljs-tag{color:#b8b8b8}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#d8d8d8}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ab4642}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#dc9656}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#f7ca88}.hljs-strong{font-weight:700;color:#f7ca88}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#a1b56c}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#86c1b9}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#7cafc2}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#ba8baf}.hljs-emphasis{color:#ba8baf;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#a16946}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/default-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/default-light.min.css new file mode 100644 index 0000000..516f13b --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/default-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Default Light + Author: Chris Kempson (http://chriskempson.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#383838;background:#f8f8f8}.hljs ::selection,.hljs::selection{background-color:#d8d8d8;color:#383838}.hljs-comment{color:#b8b8b8}.hljs-tag{color:#585858}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#383838}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ab4642}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#dc9656}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#f7ca88}.hljs-strong{font-weight:700;color:#f7ca88}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#a1b56c}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#86c1b9}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#7cafc2}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#ba8baf}.hljs-emphasis{color:#ba8baf;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#a16946}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/dirtysea.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/dirtysea.min.css new file mode 100644 index 0000000..3089bb1 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/dirtysea.min.css @@ -0,0 +1,7 @@ +/*! + Theme: dirtysea + Author: Kahlil (Kal) Hodgson + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#000;background:#e0e0e0}.hljs ::selection,.hljs::selection{background-color:#d0d0d0;color:#000}.hljs-comment{color:#707070}.hljs-tag{color:#202020}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#000}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#840000}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#006565}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#755b00}.hljs-strong{font-weight:700;color:#755b00}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#730073}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#755b00}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#007300}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#000090}.hljs-emphasis{color:#000090;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#755b00}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/dracula.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/dracula.min.css new file mode 100644 index 0000000..b003886 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/dracula.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Dracula + Author: Mike Barkmin (http://github.com/mikebarkmin) based on Dracula Theme (http://github.com/dracula) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#e9e9f4;background:#282936}.hljs ::selection,.hljs::selection{background-color:#4d4f68;color:#e9e9f4}.hljs-comment{color:#626483}.hljs-tag{color:#62d6e8}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#e9e9f4}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ea51b2}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#b45bcf}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#00f769}.hljs-strong{font-weight:700;color:#00f769}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#ebff87}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#a1efe4}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#62d6e8}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#b45bcf}.hljs-emphasis{color:#b45bcf;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#00f769}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/edge-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/edge-dark.min.css new file mode 100644 index 0000000..05022be --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/edge-dark.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Edge Dark + Author: cjayross (https://github.com/cjayross) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#b7bec9;background:#262729}.hljs ::selection,.hljs::selection{background-color:#b7bec9;color:#b7bec9}.hljs-comment{color:#3e4249}.hljs-tag{color:#73b3e7}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#b7bec9}.hljs-operator{opacity:.7}.hljs-attr,.hljs-bullet,.hljs-deletion,.hljs-link,.hljs-literal,.hljs-name,.hljs-number,.hljs-selector-tag,.hljs-symbol,.hljs-template-variable,.hljs-variable,.hljs-variable.constant_{color:#e77171}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#dbb774}.hljs-strong{font-weight:700;color:#dbb774}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#a1bf78}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#5ebaa5}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#73b3e7}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#d390e7}.hljs-emphasis{color:#d390e7;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#5ebaa5}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/edge-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/edge-light.min.css new file mode 100644 index 0000000..777a4f4 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/edge-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Edge Light + Author: cjayross (https://github.com/cjayross) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#5e646f;background:#fafafa}.hljs ::selection,.hljs::selection{background-color:#d69822;color:#5e646f}.hljs-comment{color:#5e646f}.hljs-tag{color:#6587bf}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#5e646f}.hljs-operator{opacity:.7}.hljs-attr,.hljs-bullet,.hljs-deletion,.hljs-link,.hljs-literal,.hljs-name,.hljs-number,.hljs-selector-tag,.hljs-symbol,.hljs-template-variable,.hljs-variable,.hljs-variable.constant_{color:#db7070}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#d69822}.hljs-strong{font-weight:700;color:#d69822}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#7c9f4b}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#509c93}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#6587bf}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#b870ce}.hljs-emphasis{color:#b870ce;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#509c93}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/eighties.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/eighties.min.css new file mode 100644 index 0000000..1353a9a --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/eighties.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Eighties + Author: Chris Kempson (http://chriskempson.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#d3d0c8;background:#2d2d2d}.hljs ::selection,.hljs::selection{background-color:#515151;color:#d3d0c8}.hljs-comment{color:#747369}.hljs-tag{color:#a09f93}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#d3d0c8}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#f2777a}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f99157}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fc6}.hljs-strong{font-weight:700;color:#fc6}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#9c9}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#6cc}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#69c}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#c9c}.hljs-emphasis{color:#c9c;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#d27b53}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/embers.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/embers.min.css new file mode 100644 index 0000000..acf9ece --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/embers.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Embers + Author: Jannik Siebert (https://github.com/janniks) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#a39a90;background:#16130f}.hljs ::selection,.hljs::selection{background-color:#433b32;color:#a39a90}.hljs-comment{color:#5a5047}.hljs-tag{color:#8a8075}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#a39a90}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#826d57}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#828257}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#6d8257}.hljs-strong{font-weight:700;color:#6d8257}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#57826d}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#576d82}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#6d5782}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#82576d}.hljs-emphasis{color:#82576d;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#825757}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/equilibrium-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/equilibrium-dark.min.css new file mode 100644 index 0000000..d6109ae --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/equilibrium-dark.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Equilibrium Dark + Author: Carlo Abelli + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#afaba2;background:#0c1118}.hljs ::selection,.hljs::selection{background-color:#22262d;color:#afaba2}.hljs-comment{color:#7b776e}.hljs-tag{color:#949088}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#afaba2}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#f04339}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#df5923}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#bb8801}.hljs-strong{font-weight:700;color:#bb8801}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#7f8b00}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#00948b}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#008dd1}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#6a7fd2}.hljs-emphasis{color:#6a7fd2;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#e3488e}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/equilibrium-gray-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/equilibrium-gray-dark.min.css new file mode 100644 index 0000000..83bb3ed --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/equilibrium-gray-dark.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Equilibrium Gray Dark + Author: Carlo Abelli + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#ababab;background:#111}.hljs ::selection,.hljs::selection{background-color:#262626;color:#ababab}.hljs-comment{color:#777}.hljs-tag{color:#919191}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#ababab}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#f04339}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#df5923}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#bb8801}.hljs-strong{font-weight:700;color:#bb8801}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#7f8b00}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#00948b}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#008dd1}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#6a7fd2}.hljs-emphasis{color:#6a7fd2;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#e3488e}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/equilibrium-gray-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/equilibrium-gray-light.min.css new file mode 100644 index 0000000..e9eea26 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/equilibrium-gray-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Equilibrium Gray Light + Author: Carlo Abelli + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#474747;background:#f1f1f1}.hljs ::selection,.hljs::selection{background-color:#d4d4d4;color:#474747}.hljs-comment{color:#777}.hljs-tag{color:#5e5e5e}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#474747}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#d02023}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#bf3e05}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#9d6f00}.hljs-strong{font-weight:700;color:#9d6f00}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#637200}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#007a72}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#0073b5}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#4e66b6}.hljs-emphasis{color:#4e66b6;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#c42775}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/equilibrium-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/equilibrium-light.min.css new file mode 100644 index 0000000..62469fc --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/equilibrium-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Equilibrium Light + Author: Carlo Abelli + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#43474e;background:#f5f0e7}.hljs ::selection,.hljs::selection{background-color:#d8d4cb;color:#43474e}.hljs-comment{color:#73777f}.hljs-tag{color:#5a5f66}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#43474e}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#d02023}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#bf3e05}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#9d6f00}.hljs-strong{font-weight:700;color:#9d6f00}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#637200}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#007a72}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#0073b5}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#4e66b6}.hljs-emphasis{color:#4e66b6;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#c42775}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/espresso.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/espresso.min.css new file mode 100644 index 0000000..fce80f8 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/espresso.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Espresso + Author: Unknown. Maintained by Alex Mirrington (https://github.com/alexmirrington) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#ccc;background:#2d2d2d}.hljs ::selection,.hljs::selection{background-color:#515151;color:#ccc}.hljs-comment{color:#777}.hljs-tag{color:#b4b7b4}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#ccc}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#d25252}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f9a959}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ffc66d}.hljs-strong{font-weight:700;color:#ffc66d}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#a5c261}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#bed6ff}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#6c99bb}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#d197d9}.hljs-emphasis{color:#d197d9;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#f97394}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/eva-dim.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/eva-dim.min.css new file mode 100644 index 0000000..95d5aee --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/eva-dim.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Eva Dim + Author: kjakapat (https://github.com/kjakapat) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#9fa2a6;background:#2a3b4d}.hljs ::selection,.hljs::selection{background-color:#4b6988;color:#9fa2a6}.hljs-comment{color:#55799c}.hljs-tag{color:#7e90a3}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#9fa2a6}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#c4676c}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f96}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#cfd05d}.hljs-strong{font-weight:700;color:#cfd05d}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#5de561}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#4b8f77}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#1ae1dc}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#9c6cd3}.hljs-emphasis{color:#9c6cd3;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#bb64a9}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/eva.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/eva.min.css new file mode 100644 index 0000000..220e75c --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/eva.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Eva + Author: kjakapat (https://github.com/kjakapat) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#9fa2a6;background:#2a3b4d}.hljs ::selection,.hljs::selection{background-color:#4b6988;color:#9fa2a6}.hljs-comment{color:#55799c}.hljs-tag{color:#7e90a3}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#9fa2a6}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#c4676c}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f96}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ff6}.hljs-strong{font-weight:700;color:#ff6}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#6f6}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#4b8f77}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#15f4ee}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#9c6cd3}.hljs-emphasis{color:#9c6cd3;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#bb64a9}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/flat.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/flat.min.css new file mode 100644 index 0000000..84a49f8 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/flat.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Flat + Author: Chris Kempson (http://chriskempson.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#e0e0e0;background:#2c3e50}.hljs ::selection,.hljs::selection{background-color:#7f8c8d;color:#e0e0e0}.hljs-comment{color:#95a5a6}.hljs-tag{color:#bdc3c7}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#e0e0e0}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#e74c3c}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#e67e22}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#f1c40f}.hljs-strong{font-weight:700;color:#f1c40f}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#2ecc71}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#1abc9c}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#3498db}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#9b59b6}.hljs-emphasis{color:#9b59b6;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#be643c}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/framer.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/framer.min.css new file mode 100644 index 0000000..c86f00e --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/framer.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Framer + Author: Framer (Maintained by Jesse Hoyos) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#d0d0d0;background:#181818}.hljs ::selection,.hljs::selection{background-color:#464646;color:#d0d0d0}.hljs-comment{color:#747474}.hljs-tag{color:#b9b9b9}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#d0d0d0}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#fd886b}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#fc4769}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fecb6e}.hljs-strong{font-weight:700;color:#fecb6e}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#32ccdc}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#acddfd}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#20bcfc}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#ba8cfc}.hljs-emphasis{color:#ba8cfc;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#b15f4a}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/fruit-soda.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/fruit-soda.min.css new file mode 100644 index 0000000..a398f6e --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/fruit-soda.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Fruit Soda + Author: jozip + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#515151;background:#f1ecf1}.hljs ::selection,.hljs::selection{background-color:#d8d5d5;color:#515151}.hljs-comment{color:#b5b4b6}.hljs-tag{color:#979598}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#515151}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#fe3e31}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#fe6d08}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#f7e203}.hljs-strong{font-weight:700;color:#f7e203}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#47f74c}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#0f9cfd}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#2931df}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#611fce}.hljs-emphasis{color:#611fce;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#b16f40}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gigavolt.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gigavolt.min.css new file mode 100644 index 0000000..28db77a --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gigavolt.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Gigavolt + Author: Aidan Swope (http://github.com/Whillikers) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#e9e7e1;background:#202126}.hljs ::selection,.hljs::selection{background-color:#5a576e;color:#e9e7e1}.hljs-comment{color:#a1d2e6}.hljs-tag{color:#cad3ff}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#e9e7e1}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ff661a}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#19f988}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ffdc2d}.hljs-strong{font-weight:700;color:#ffdc2d}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#f2e6a9}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#fb6acb}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#40bfff}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#ae94f9}.hljs-emphasis{color:#ae94f9;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#6187ff}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/github.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/github.min.css new file mode 100644 index 0000000..c9c240e --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/github.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Github + Author: Defman21 + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#333;background:#fff}.hljs ::selection,.hljs::selection{background-color:#c8c8fa;color:#333}.hljs-comment{color:#969896}.hljs-tag{color:#e8e8e8}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#333}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ed6a43}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#0086b3}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#795da3}.hljs-strong{font-weight:700;color:#795da3}.hljs-addition,.hljs-built_in,.hljs-code,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp,.hljs-string,.hljs-title.class_.inherited__{color:#183691}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#795da3}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#a71d5d}.hljs-emphasis{color:#a71d5d;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#333}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/google-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/google-dark.min.css new file mode 100644 index 0000000..f0158d5 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/google-dark.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Google Dark + Author: Seth Wright (http://sethawright.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c5c8c6;background:#1d1f21}.hljs ::selection,.hljs::selection{background-color:#373b41;color:#c5c8c6}.hljs-comment{color:#969896}.hljs-tag{color:#b4b7b4}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#c5c8c6}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#cc342b}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f96a38}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fba922}.hljs-strong{font-weight:700;color:#fba922}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#198844}.hljs-attribute,.hljs-built_in,.hljs-doctag,.hljs-function .hljs-title,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#3971ed}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#a36ac7}.hljs-emphasis{color:#a36ac7;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#3971ed}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/google-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/google-light.min.css new file mode 100644 index 0000000..6fe1b07 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/google-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Google Light + Author: Seth Wright (http://sethawright.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#373b41;background:#fff}.hljs ::selection,.hljs::selection{background-color:#c5c8c6;color:#373b41}.hljs-comment{color:#b4b7b4}.hljs-tag{color:#969896}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#373b41}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#cc342b}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f96a38}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fba922}.hljs-strong{font-weight:700;color:#fba922}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#198844}.hljs-attribute,.hljs-built_in,.hljs-doctag,.hljs-function .hljs-title,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#3971ed}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#a36ac7}.hljs-emphasis{color:#a36ac7;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#3971ed}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/grayscale-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/grayscale-dark.min.css new file mode 100644 index 0000000..31c616b --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/grayscale-dark.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Grayscale Dark + Author: Alexandre Gavioli (https://github.com/Alexx2/) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#b9b9b9;background:#101010}.hljs ::selection,.hljs::selection{background-color:#464646;color:#b9b9b9}.hljs-comment{color:#525252}.hljs-tag{color:#ababab}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#b9b9b9}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#7c7c7c}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#999}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#a0a0a0}.hljs-strong{font-weight:700;color:#a0a0a0}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#8e8e8e}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#868686}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#686868}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#747474}.hljs-emphasis{color:#747474;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#5e5e5e}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/grayscale-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/grayscale-light.min.css new file mode 100644 index 0000000..0d76402 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/grayscale-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Grayscale Light + Author: Alexandre Gavioli (https://github.com/Alexx2/) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#464646;background:#f7f7f7}.hljs ::selection,.hljs::selection{background-color:#b9b9b9;color:#464646}.hljs-comment{color:#ababab}.hljs-tag{color:#525252}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#464646}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#7c7c7c}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#999}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#a0a0a0}.hljs-strong{font-weight:700;color:#a0a0a0}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#8e8e8e}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#868686}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#686868}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#747474}.hljs-emphasis{color:#747474;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#5e5e5e}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/green-screen.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/green-screen.min.css new file mode 100644 index 0000000..f6849d3 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/green-screen.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Green Screen + Author: Chris Kempson (http://chriskempson.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#0b0;background:#010}.hljs ::selection,.hljs::selection{background-color:#050;color:#0b0}.hljs-comment{color:#070}.hljs-tag{color:#090}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#0b0}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#070}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#090}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#070}.hljs-strong{font-weight:700;color:#070}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#0b0}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#050}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#090}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#0b0}.hljs-emphasis{color:#0b0;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#050}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-dark-hard.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-dark-hard.min.css new file mode 100644 index 0000000..f42563b --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-dark-hard.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Gruvbox dark, hard + Author: Dawid Kurek (dawikur@gmail.com), morhetz (https://github.com/morhetz/gruvbox) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#d5c4a1;background:#1d2021}.hljs ::selection,.hljs::selection{background-color:#504945;color:#d5c4a1}.hljs-comment{color:#665c54}.hljs-tag{color:#bdae93}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#d5c4a1}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#fb4934}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#fe8019}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fabd2f}.hljs-strong{font-weight:700;color:#fabd2f}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#b8bb26}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#8ec07c}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#83a598}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#d3869b}.hljs-emphasis{color:#d3869b;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#d65d0e}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-dark-medium.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-dark-medium.min.css new file mode 100644 index 0000000..5e067ab --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-dark-medium.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Gruvbox dark, medium + Author: Dawid Kurek (dawikur@gmail.com), morhetz (https://github.com/morhetz/gruvbox) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#d5c4a1;background:#282828}.hljs ::selection,.hljs::selection{background-color:#504945;color:#d5c4a1}.hljs-comment{color:#665c54}.hljs-tag{color:#bdae93}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#d5c4a1}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#fb4934}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#fe8019}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fabd2f}.hljs-strong{font-weight:700;color:#fabd2f}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#b8bb26}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#8ec07c}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#83a598}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#d3869b}.hljs-emphasis{color:#d3869b;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#d65d0e}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-dark-pale.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-dark-pale.min.css new file mode 100644 index 0000000..6668d0c --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-dark-pale.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Gruvbox dark, pale + Author: Dawid Kurek (dawikur@gmail.com), morhetz (https://github.com/morhetz/gruvbox) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#dab997;background:#262626}.hljs ::selection,.hljs::selection{background-color:#4e4e4e;color:#dab997}.hljs-comment{color:#8a8a8a}.hljs-tag{color:#949494}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#dab997}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#d75f5f}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#ff8700}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ffaf00}.hljs-strong{font-weight:700;color:#ffaf00}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#afaf00}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#85ad85}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#83adad}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#d485ad}.hljs-emphasis{color:#d485ad;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#d65d0e}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-dark-soft.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-dark-soft.min.css new file mode 100644 index 0000000..717f6d5 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-dark-soft.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Gruvbox dark, soft + Author: Dawid Kurek (dawikur@gmail.com), morhetz (https://github.com/morhetz/gruvbox) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#d5c4a1;background:#32302f}.hljs ::selection,.hljs::selection{background-color:#504945;color:#d5c4a1}.hljs-comment{color:#665c54}.hljs-tag{color:#bdae93}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#d5c4a1}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#fb4934}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#fe8019}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fabd2f}.hljs-strong{font-weight:700;color:#fabd2f}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#b8bb26}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#8ec07c}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#83a598}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#d3869b}.hljs-emphasis{color:#d3869b;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#d65d0e}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-light-hard.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-light-hard.min.css new file mode 100644 index 0000000..8ea533c --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-light-hard.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Gruvbox light, hard + Author: Dawid Kurek (dawikur@gmail.com), morhetz (https://github.com/morhetz/gruvbox) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#504945;background:#f9f5d7}.hljs ::selection,.hljs::selection{background-color:#d5c4a1;color:#504945}.hljs-comment{color:#bdae93}.hljs-tag{color:#665c54}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#504945}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#9d0006}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#af3a03}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#b57614}.hljs-strong{font-weight:700;color:#b57614}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#79740e}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#427b58}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#076678}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#8f3f71}.hljs-emphasis{color:#8f3f71;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#d65d0e}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-light-medium.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-light-medium.min.css new file mode 100644 index 0000000..36916e2 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-light-medium.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Gruvbox light, medium + Author: Dawid Kurek (dawikur@gmail.com), morhetz (https://github.com/morhetz/gruvbox) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#504945;background:#fbf1c7}.hljs ::selection,.hljs::selection{background-color:#d5c4a1;color:#504945}.hljs-comment{color:#bdae93}.hljs-tag{color:#665c54}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#504945}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#9d0006}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#af3a03}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#b57614}.hljs-strong{font-weight:700;color:#b57614}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#79740e}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#427b58}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#076678}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#8f3f71}.hljs-emphasis{color:#8f3f71;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#d65d0e}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-light-soft.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-light-soft.min.css new file mode 100644 index 0000000..183abbb --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/gruvbox-light-soft.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Gruvbox light, soft + Author: Dawid Kurek (dawikur@gmail.com), morhetz (https://github.com/morhetz/gruvbox) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#504945;background:#f2e5bc}.hljs ::selection,.hljs::selection{background-color:#d5c4a1;color:#504945}.hljs-comment{color:#bdae93}.hljs-tag{color:#665c54}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#504945}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#9d0006}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#af3a03}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#b57614}.hljs-strong{font-weight:700;color:#b57614}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#79740e}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#427b58}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#076678}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#8f3f71}.hljs-emphasis{color:#8f3f71;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#d65d0e}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/hardcore.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/hardcore.min.css new file mode 100644 index 0000000..941230a --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/hardcore.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Hardcore + Author: Chris Caller + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#cdcdcd;background:#212121}.hljs ::selection,.hljs::selection{background-color:#353535;color:#cdcdcd}.hljs-comment{color:#4a4a4a}.hljs-tag{color:#707070}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#cdcdcd}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#f92672}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#fd971f}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#e6db74}.hljs-strong{font-weight:700;color:#e6db74}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#a6e22e}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#708387}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#66d9ef}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#9e6ffe}.hljs-emphasis{color:#9e6ffe;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#e8b882}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/harmonic16-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/harmonic16-dark.min.css new file mode 100644 index 0000000..2cb639b --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/harmonic16-dark.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Harmonic16 Dark + Author: Jannik Siebert (https://github.com/janniks) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#cbd6e2;background:#0b1c2c}.hljs ::selection,.hljs::selection{background-color:#405c79;color:#cbd6e2}.hljs-comment{color:#627e99}.hljs-tag{color:#aabcce}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#cbd6e2}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#bf8b56}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#bfbf56}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#8bbf56}.hljs-strong{font-weight:700;color:#8bbf56}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#56bf8b}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#568bbf}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#8b56bf}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#bf568b}.hljs-emphasis{color:#bf568b;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#bf5656}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/harmonic16-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/harmonic16-light.min.css new file mode 100644 index 0000000..c872008 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/harmonic16-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Harmonic16 Light + Author: Jannik Siebert (https://github.com/janniks) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#405c79;background:#f7f9fb}.hljs ::selection,.hljs::selection{background-color:#cbd6e2;color:#405c79}.hljs-comment{color:#aabcce}.hljs-tag{color:#627e99}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#405c79}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#bf8b56}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#bfbf56}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#8bbf56}.hljs-strong{font-weight:700;color:#8bbf56}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#56bf8b}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#568bbf}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#8b56bf}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#bf568b}.hljs-emphasis{color:#bf568b;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#bf5656}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/heetch-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/heetch-dark.min.css new file mode 100644 index 0000000..c72c85f --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/heetch-dark.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Heetch Dark + Author: Geoffrey Teale (tealeg@gmail.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#bdb6c5;background:#190134}.hljs ::selection,.hljs::selection{background-color:#5a496e;color:#bdb6c5}.hljs-comment{color:#7b6d8b}.hljs-tag{color:#9c92a8}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#bdb6c5}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#27d9d5}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#5ba2b6}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#8f6c97}.hljs-strong{font-weight:700;color:#8f6c97}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#c33678}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#f80059}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#bd0152}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#82034c}.hljs-emphasis{color:#82034c;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#470546}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/heetch-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/heetch-light.min.css new file mode 100644 index 0000000..1fd30b7 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/heetch-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Heetch Light + Author: Geoffrey Teale (tealeg@gmail.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#5a496e;background:#feffff}.hljs ::selection,.hljs::selection{background-color:#7b6d8b;color:#5a496e}.hljs-comment{color:#9c92a8}.hljs-tag{color:#ddd6e5}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#5a496e}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#27d9d5}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#bdb6c5}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#5ba2b6}.hljs-strong{font-weight:700;color:#5ba2b6}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#f80059}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#c33678}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#47f9f5}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#bd0152}.hljs-emphasis{color:#bd0152;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#dedae2}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/helios.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/helios.min.css new file mode 100644 index 0000000..d348d7b --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/helios.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Helios + Author: Alex Meyer (https://github.com/reyemxela) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#d5d5d5;background:#1d2021}.hljs ::selection,.hljs::selection{background-color:#53585b;color:#d5d5d5}.hljs-comment{color:#6f7579}.hljs-tag{color:#cdcdcd}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#d5d5d5}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#d72638}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#eb8413}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#f19d1a}.hljs-strong{font-weight:700;color:#f19d1a}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#88b92d}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#1ba595}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#1e8bac}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#be4264}.hljs-emphasis{color:#be4264;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#c85e0d}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/hopscotch.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/hopscotch.min.css new file mode 100644 index 0000000..d45cbd0 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/hopscotch.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Hopscotch + Author: Jan T. Sott + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#b9b5b8;background:#322931}.hljs ::selection,.hljs::selection{background-color:#5c545b;color:#b9b5b8}.hljs-comment{color:#797379}.hljs-tag{color:#989498}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#b9b5b8}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#dd464c}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#fd8b19}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fdcc59}.hljs-strong{font-weight:700;color:#fdcc59}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#8fc13e}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#149b93}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#1290bf}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#c85e7c}.hljs-emphasis{color:#c85e7c;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#b33508}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/horizon-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/horizon-dark.min.css new file mode 100644 index 0000000..ff24827 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/horizon-dark.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Horizon Dark + Author: Michaël Ball (http://github.com/michael-ball/) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#cbced0;background:#1c1e26}.hljs ::selection,.hljs::selection{background-color:#2e303e;color:#cbced0}.hljs-comment{color:#6f6f70}.hljs-tag{color:#9da0a2}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#cbced0}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#e93c58}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#e58d7d}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#efb993}.hljs-strong{font-weight:700;color:#efb993}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#efaf8e}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#24a8b4}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#df5273}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#b072d1}.hljs-emphasis{color:#b072d1;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#e4a382}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/horizon-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/horizon-light.min.css new file mode 100644 index 0000000..5088da7 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/horizon-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Horizon Light + Author: Michaël Ball (http://github.com/michael-ball/) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#403c3d;background:#fdf0ed}.hljs ::selection,.hljs::selection{background-color:#f9cbbe;color:#403c3d}.hljs-comment{color:#bdb3b1}.hljs-tag{color:#948c8a}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#403c3d}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#e95678}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f9cec3}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fadad1}.hljs-strong{font-weight:700;color:#fadad1}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#29d398}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#59e1e3}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#26bbd9}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#ee64ac}.hljs-emphasis{color:#ee64ac;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#f9cbbe}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/humanoid-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/humanoid-dark.min.css new file mode 100644 index 0000000..df68507 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/humanoid-dark.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Humanoid dark + Author: Thomas (tasmo) Friese + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#f8f8f2;background:#232629}.hljs ::selection,.hljs::selection{background-color:#484e54;color:#f8f8f2}.hljs-comment{color:#60615d}.hljs-tag{color:#c0c0bd}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#f8f8f2}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#f11235}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#ff9505}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ffb627}.hljs-strong{font-weight:700;color:#ffb627}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#02d849}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#0dd9d6}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#00a6fb}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#f15ee3}.hljs-emphasis{color:#f15ee3;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#b27701}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/humanoid-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/humanoid-light.min.css new file mode 100644 index 0000000..a8f707b --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/humanoid-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Humanoid light + Author: Thomas (tasmo) Friese + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#232629;background:#f8f8f2}.hljs ::selection,.hljs::selection{background-color:#deded8;color:#232629}.hljs-comment{color:#c0c0bd}.hljs-tag{color:#60615d}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#232629}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#b0151a}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#ff3d00}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ffb627}.hljs-strong{font-weight:700;color:#ffb627}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#388e3c}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#008e8e}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#0082c9}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#700f98}.hljs-emphasis{color:#700f98;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#b27701}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ia-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ia-dark.min.css new file mode 100644 index 0000000..4b40d93 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ia-dark.min.css @@ -0,0 +1,7 @@ +/*! + Theme: iA Dark + Author: iA Inc. (modified by aramisgithub) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#ccc;background:#1a1a1a}.hljs ::selection,.hljs::selection{background-color:#1d414d;color:#ccc}.hljs-comment{color:#767676}.hljs-tag{color:#b8b8b8}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#ccc}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#d88568}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#d86868}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#b99353}.hljs-strong{font-weight:700;color:#b99353}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#83a471}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#7c9cae}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#8eccdd}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#b98eb2}.hljs-emphasis{color:#b98eb2;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#8b6c37}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ia-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ia-light.min.css new file mode 100644 index 0000000..bd1c29c --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ia-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: iA Light + Author: iA Inc. (modified by aramisgithub) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#181818;background:#f6f6f6}.hljs ::selection,.hljs::selection{background-color:#bde5f2;color:#181818}.hljs-comment{color:#898989}.hljs-tag{color:#767676}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#181818}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#9c5a02}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#c43e18}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#c48218}.hljs-strong{font-weight:700;color:#c48218}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#38781c}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#2d6bb1}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#48bac2}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#a94598}.hljs-emphasis{color:#a94598;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#8b6c37}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/icy-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/icy-dark.min.css new file mode 100644 index 0000000..e3a8f74 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/icy-dark.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Icy Dark + Author: icyphox (https://icyphox.ga) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#095b67;background:#021012}.hljs ::selection,.hljs::selection{background-color:#041f23;color:#095b67}.hljs-comment{color:#052e34}.hljs-tag{color:#064048}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#095b67}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#16c1d9}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#b3ebf2}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#80deea}.hljs-strong{font-weight:700;color:#80deea}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#4dd0e1}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#26c6da}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#00bcd4}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#00acc1}.hljs-emphasis{color:#00acc1;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#0097a7}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ir-black.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ir-black.min.css new file mode 100644 index 0000000..1c2c9c9 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ir-black.min.css @@ -0,0 +1,7 @@ +/*! + Theme: IR Black + Author: Timothée Poisot (http://timotheepoisot.fr) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#b5b3aa;background:#000}.hljs ::selection,.hljs::selection{background-color:#484844;color:#b5b3aa}.hljs-comment{color:#6c6c66}.hljs-tag{color:#918f88}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#b5b3aa}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ff6c60}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#e9c062}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ffffb6}.hljs-strong{font-weight:700;color:#ffffb6}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#a8ff60}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#c6c5fe}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#96cbfe}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#ff73fd}.hljs-emphasis{color:#ff73fd;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#b18a3d}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/isotope.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/isotope.min.css new file mode 100644 index 0000000..faece59 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/isotope.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Isotope + Author: Jan T. Sott + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#d0d0d0;background:#000}.hljs ::selection,.hljs::selection{background-color:#606060;color:#d0d0d0}.hljs-comment{color:grey}.hljs-tag{color:silver}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#d0d0d0}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:red}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f90}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#f09}.hljs-strong{font-weight:700;color:#f09}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#3f0}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#0ff}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#06f}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#c0f}.hljs-emphasis{color:#c0f;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#30f}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/kimber.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/kimber.min.css new file mode 100644 index 0000000..13fd30c --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/kimber.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Kimber + Author: Mishka Nguyen (https://github.com/akhsiM) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#dedee7;background:#222}.hljs ::selection,.hljs::selection{background-color:#555d55;color:#dedee7}.hljs-comment{color:#644646}.hljs-tag{color:#5a5a5a}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#dedee7}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#c88c8c}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#476c88}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#d8b56d}.hljs-strong{font-weight:700;color:#d8b56d}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#99c899}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#78b4b4}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#537c9c}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#86cacd}.hljs-emphasis{color:#86cacd;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#704f4f}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/london-tube.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/london-tube.min.css new file mode 100644 index 0000000..02262b3 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/london-tube.min.css @@ -0,0 +1,7 @@ +/*! + Theme: London Tube + Author: Jan T. Sott + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#d9d8d8;background:#231f20}.hljs ::selection,.hljs::selection{background-color:#5a5758;color:#d9d8d8}.hljs-comment{color:#737171}.hljs-tag{color:#959ca1}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#d9d8d8}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ee2e24}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f386a1}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ffd204}.hljs-strong{font-weight:700;color:#ffd204}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#00853e}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#85cebc}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#009ddc}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#98005d}.hljs-emphasis{color:#98005d;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#b06110}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/macintosh.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/macintosh.min.css new file mode 100644 index 0000000..24aafc3 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/macintosh.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Macintosh + Author: Rebecca Bettencourt (http://www.kreativekorp.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:silver;background:#000}.hljs ::selection,.hljs::selection{background-color:#404040;color:silver}.hljs-comment,.hljs-tag{color:grey}.hljs-operator,.hljs-punctuation,.hljs-subst{color:silver}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#dd0907}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#ff6403}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fbf305}.hljs-strong{font-weight:700;color:#fbf305}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#1fb714}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#02abea}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#0000d3}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#4700a5}.hljs-emphasis{color:#4700a5;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#90713a}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/marrakesh.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/marrakesh.min.css new file mode 100644 index 0000000..33a9c88 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/marrakesh.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Marrakesh + Author: Alexandre Gavioli (http://github.com/Alexx2/) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#948e48;background:#201602}.hljs ::selection,.hljs::selection{background-color:#5f5b17;color:#948e48}.hljs-comment{color:#6c6823}.hljs-tag{color:#86813b}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#948e48}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#c35359}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#b36144}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#a88339}.hljs-strong{font-weight:700;color:#a88339}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#18974e}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#75a738}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#477ca1}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#8868b3}.hljs-emphasis{color:#8868b3;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#b3588e}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/materia.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/materia.min.css new file mode 100644 index 0000000..603c091 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/materia.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Materia + Author: Defman21 + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#cdd3de;background:#263238}.hljs ::selection,.hljs::selection{background-color:#37474f;color:#cdd3de}.hljs-comment{color:#707880}.hljs-tag{color:#c9ccd3}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#cdd3de}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ec5f67}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#ea9560}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fc0}.hljs-strong{font-weight:700;color:#fc0}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#8bd649}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#80cbc4}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#89ddff}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#82aaff}.hljs-emphasis{color:#82aaff;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#ec5f67}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/material-darker.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/material-darker.min.css new file mode 100644 index 0000000..27f62ba --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/material-darker.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Material Darker + Author: Nate Peterson + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#eff;background:#212121}.hljs ::selection,.hljs::selection{background-color:#353535;color:#eff}.hljs-comment{color:#4a4a4a}.hljs-tag{color:#b2ccd6}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#eff}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#f07178}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f78c6c}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ffcb6b}.hljs-strong{font-weight:700;color:#ffcb6b}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#c3e88d}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#89ddff}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#82aaff}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#c792ea}.hljs-emphasis{color:#c792ea;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#ff5370}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/material-lighter.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/material-lighter.min.css new file mode 100644 index 0000000..292682f --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/material-lighter.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Material Lighter + Author: Nate Peterson + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#80cbc4;background:#fafafa}.hljs ::selection,.hljs::selection{background-color:#cceae7;color:#80cbc4}.hljs-comment{color:#ccd7da}.hljs-tag{color:#8796b0}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#80cbc4}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ff5370}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f76d47}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ffb62c}.hljs-strong{font-weight:700;color:#ffb62c}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#91b859}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#39adb5}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#6182b8}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#7c4dff}.hljs-emphasis{color:#7c4dff;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#e53935}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/material-palenight.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/material-palenight.min.css new file mode 100644 index 0000000..2d394fa --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/material-palenight.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Material Palenight + Author: Nate Peterson + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#959dcb;background:#292d3e}.hljs ::selection,.hljs::selection{background-color:#32374d;color:#959dcb}.hljs-comment{color:#676e95}.hljs-tag{color:#8796b0}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#959dcb}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#f07178}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f78c6c}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ffcb6b}.hljs-strong{font-weight:700;color:#ffcb6b}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#c3e88d}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#89ddff}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#82aaff}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#c792ea}.hljs-emphasis{color:#c792ea;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#ff5370}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/material-vivid.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/material-vivid.min.css new file mode 100644 index 0000000..0edc0f1 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/material-vivid.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Material Vivid + Author: joshyrobot + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#80868b;background:#202124}.hljs ::selection,.hljs::selection{background-color:#323639;color:#80868b}.hljs-comment{color:#44464d}.hljs-tag{color:#676c71}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#80868b}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#f44336}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#ff9800}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ffeb3b}.hljs-strong{font-weight:700;color:#ffeb3b}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#00e676}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#00bcd4}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#2196f3}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#673ab7}.hljs-emphasis{color:#673ab7;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#8d6e63}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/material.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/material.min.css new file mode 100644 index 0000000..d37aa51 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/material.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Material + Author: Nate Peterson + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#eff;background:#263238}.hljs ::selection,.hljs::selection{background-color:#314549;color:#eff}.hljs-comment{color:#546e7a}.hljs-tag{color:#b2ccd6}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#eff}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#f07178}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f78c6c}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ffcb6b}.hljs-strong{font-weight:700;color:#ffcb6b}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#c3e88d}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#89ddff}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#82aaff}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#c792ea}.hljs-emphasis{color:#c792ea;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#ff5370}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/mellow-purple.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/mellow-purple.min.css new file mode 100644 index 0000000..66ba187 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/mellow-purple.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Mellow Purple + Author: gidsi + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#fef;background:#1e0528}.hljs ::selection,.hljs::selection{background-color:#331354;color:#fef}.hljs-comment{color:#320f55}.hljs-tag{color:#873582}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#fef}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#00d9e9}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#aa00a3}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#955ae7}.hljs-strong{font-weight:700;color:#955ae7}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#05cb0d}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#b900b1}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#550068}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#8991bb}.hljs-emphasis{color:#8991bb;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#4d6fff}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/mexico-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/mexico-light.min.css new file mode 100644 index 0000000..28f08e9 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/mexico-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Mexico Light + Author: Sheldon Johnson + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#383838;background:#f8f8f8}.hljs ::selection,.hljs::selection{background-color:#d8d8d8;color:#383838}.hljs-comment{color:#b8b8b8}.hljs-tag{color:#585858}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#383838}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ab4642}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#dc9656}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#f79a0e}.hljs-strong{font-weight:700;color:#f79a0e}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#538947}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#4b8093}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#7cafc2}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#96609e}.hljs-emphasis{color:#96609e;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#a16946}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/mocha.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/mocha.min.css new file mode 100644 index 0000000..f299135 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/mocha.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Mocha + Author: Chris Kempson (http://chriskempson.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#d0c8c6;background:#3b3228}.hljs ::selection,.hljs::selection{background-color:#645240;color:#d0c8c6}.hljs-comment{color:#7e705a}.hljs-tag{color:#b8afad}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#d0c8c6}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#cb6077}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#d28b71}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#f4bc87}.hljs-strong{font-weight:700;color:#f4bc87}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#beb55b}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#7bbda4}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#8ab3b5}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#a89bb9}.hljs-emphasis{color:#a89bb9;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#bb9584}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/monokai.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/monokai.min.css new file mode 100644 index 0000000..68ca3dd --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/monokai.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Monokai + Author: Wimer Hazenberg (http://www.monokai.nl) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#f8f8f2;background:#272822}.hljs ::selection,.hljs::selection{background-color:#49483e;color:#f8f8f2}.hljs-comment{color:#75715e}.hljs-tag{color:#a59f85}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#f8f8f2}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#f92672}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#fd971f}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#f4bf75}.hljs-strong{font-weight:700;color:#f4bf75}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#a6e22e}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#a1efe4}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#66d9ef}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#ae81ff}.hljs-emphasis{color:#ae81ff;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#c63}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/nebula.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/nebula.min.css new file mode 100644 index 0000000..00119b5 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/nebula.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Nebula + Author: Gabriel Fontes (https://github.com/Misterio77) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#a4a6a9;background:#22273b}.hljs ::selection,.hljs::selection{background-color:#5a8380;color:#a4a6a9}.hljs-comment{color:#6e6f72}.hljs-tag{color:#87888b}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#a4a6a9}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#777abc}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#94929e}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#4f9062}.hljs-strong{font-weight:700;color:#4f9062}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#6562a8}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#226f68}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#4d6bb6}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#716cae}.hljs-emphasis{color:#716cae;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#8c70a7}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/nord.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/nord.min.css new file mode 100644 index 0000000..822aac5 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/nord.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Nord + Author: arcticicestudio + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#e5e9f0;background:#2e3440}.hljs ::selection,.hljs::selection{background-color:#434c5e;color:#e5e9f0}.hljs-comment{color:#4c566a}.hljs-tag{color:#d8dee9}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#e5e9f0}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#bf616a}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#d08770}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ebcb8b}.hljs-strong{font-weight:700;color:#ebcb8b}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#a3be8c}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#88c0d0}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#81a1c1}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#b48ead}.hljs-emphasis{color:#b48ead;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#5e81ac}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/nova.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/nova.min.css new file mode 100644 index 0000000..a64ae0c --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/nova.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Nova + Author: George Essig (https://github.com/gessig), Trevor D. Miller (https://trevordmiller.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c5d4dd;background:#3c4c55}.hljs ::selection,.hljs::selection{background-color:#6a7d89;color:#c5d4dd}.hljs-comment,.hljs-tag{color:#899ba6}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#c5d4dd}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#83afe5}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#7fc1ca}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#a8ce93}.hljs-strong{font-weight:700;color:#a8ce93}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#7fc1ca}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#f2c38f}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#83afe5}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#9a93e1}.hljs-emphasis{color:#9a93e1;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#f2c38f}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ocean.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ocean.min.css new file mode 100644 index 0000000..1a33b4c --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ocean.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Ocean + Author: Chris Kempson (http://chriskempson.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c0c5ce;background:#2b303b}.hljs ::selection,.hljs::selection{background-color:#4f5b66;color:#c0c5ce}.hljs-comment{color:#65737e}.hljs-tag{color:#a7adba}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#c0c5ce}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#bf616a}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#d08770}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ebcb8b}.hljs-strong{font-weight:700;color:#ebcb8b}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#a3be8c}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#96b5b4}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#8fa1b3}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#b48ead}.hljs-emphasis{color:#b48ead;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#ab7967}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/oceanicnext.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/oceanicnext.min.css new file mode 100644 index 0000000..827d338 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/oceanicnext.min.css @@ -0,0 +1,7 @@ +/*! + Theme: OceanicNext + Author: https://github.com/voronianski/oceanic-next-color-scheme + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c0c5ce;background:#1b2b34}.hljs ::selection,.hljs::selection{background-color:#4f5b66;color:#c0c5ce}.hljs-comment{color:#65737e}.hljs-tag{color:#a7adba}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#c0c5ce}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ec5f67}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f99157}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fac863}.hljs-strong{font-weight:700;color:#fac863}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#99c794}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#5fb3b3}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#69c}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#c594c5}.hljs-emphasis{color:#c594c5;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#ab7967}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/one-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/one-light.min.css new file mode 100644 index 0000000..b7b2fad --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/one-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: One Light + Author: Daniel Pfeifer (http://github.com/purpleKarrot) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#383a42;background:#fafafa}.hljs ::selection,.hljs::selection{background-color:#e5e5e6;color:#383a42}.hljs-comment{color:#a0a1a7}.hljs-tag{color:#696c77}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#383a42}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ca1243}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#d75f00}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#c18401}.hljs-strong{font-weight:700;color:#c18401}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#50a14f}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#0184bc}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#4078f2}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#a626a4}.hljs-emphasis{color:#a626a4;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#986801}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/onedark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/onedark.min.css new file mode 100644 index 0000000..83ced20 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/onedark.min.css @@ -0,0 +1,7 @@ +/*! + Theme: OneDark + Author: Lalit Magant (http://github.com/tilal6991) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#abb2bf;background:#282c34}.hljs ::selection,.hljs::selection{background-color:#3e4451;color:#abb2bf}.hljs-comment{color:#545862}.hljs-tag{color:#565c64}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#abb2bf}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#e06c75}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#d19a66}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#e5c07b}.hljs-strong{font-weight:700;color:#e5c07b}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#98c379}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#56b6c2}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#61afef}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#c678dd}.hljs-emphasis{color:#c678dd;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#be5046}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/outrun-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/outrun-dark.min.css new file mode 100644 index 0000000..5cb80ac --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/outrun-dark.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Outrun Dark + Author: Hugo Delahousse (http://github.com/hugodelahousse/) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#d0d0fa;background:#00002a}.hljs ::selection,.hljs::selection{background-color:#30305a;color:#d0d0fa}.hljs-comment{color:#50507a}.hljs-tag{color:#b0b0da}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#d0d0fa}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ff4242}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#fc8d28}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#f3e877}.hljs-strong{font-weight:700;color:#f3e877}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#59f176}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#0ef0f0}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#66b0ff}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#f10596}.hljs-emphasis{color:#f10596;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#f003ef}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/papercolor-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/papercolor-dark.min.css new file mode 100644 index 0000000..d126932 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/papercolor-dark.min.css @@ -0,0 +1,7 @@ +/*! + Theme: PaperColor Dark + Author: Jon Leopard (http://github.com/jonleopard) based on PaperColor Theme (https://github.com/NLKNguyen/papercolor-theme) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:grey;background:#1c1c1c}.hljs ::selection,.hljs::selection{background-color:#5faf00;color:grey}.hljs-comment{color:#d7af5f}.hljs-tag{color:#5fafd7}.hljs-operator,.hljs-punctuation,.hljs-subst{color:grey}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#585858}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#5faf5f}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#afd700}.hljs-strong{font-weight:700;color:#afd700}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#af87d7}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#ffaf00}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#ff5faf}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#00afaf}.hljs-emphasis{color:#00afaf;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#5f8787}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/papercolor-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/papercolor-light.min.css new file mode 100644 index 0000000..16a4ef2 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/papercolor-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: PaperColor Light + Author: Jon Leopard (http://github.com/jonleopard) based on PaperColor Theme (https://github.com/NLKNguyen/papercolor-theme) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#444;background:#eee}.hljs ::selection,.hljs::selection{background-color:#008700;color:#444}.hljs-comment{color:#5f8700}.hljs-tag{color:#0087af}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#444}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#bcbcbc}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#d70000}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#d70087}.hljs-strong{font-weight:700;color:#d70087}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#8700af}.hljs-attribute,.hljs-built_in,.hljs-doctag,.hljs-function .hljs-title,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#d75f00}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#005faf}.hljs-emphasis{color:#005faf;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#005f87}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/paraiso.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/paraiso.min.css new file mode 100644 index 0000000..c1f0d08 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/paraiso.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Paraiso + Author: Jan T. Sott + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#a39e9b;background:#2f1e2e}.hljs ::selection,.hljs::selection{background-color:#4f424c;color:#a39e9b}.hljs-comment{color:#776e71}.hljs-tag{color:#8d8687}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#a39e9b}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ef6155}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f99b15}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fec418}.hljs-strong{font-weight:700;color:#fec418}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#48b685}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#5bc4bf}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#06b6ef}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#815ba4}.hljs-emphasis{color:#815ba4;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#e96ba8}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/pasque.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/pasque.min.css new file mode 100644 index 0000000..f223c21 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/pasque.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Pasque + Author: Gabriel Fontes (https://github.com/Misterio77) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#dedcdf;background:#271c3a}.hljs ::selection,.hljs::selection{background-color:#3e2d5c;color:#dedcdf}.hljs-comment{color:#5d5766}.hljs-tag{color:#bebcbf}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#dedcdf}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#a92258}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#918889}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#804ead}.hljs-strong{font-weight:700;color:#804ead}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#c6914b}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#7263aa}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#8e7dc6}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#953b9d}.hljs-emphasis{color:#953b9d;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#59325c}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/phd.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/phd.min.css new file mode 100644 index 0000000..9141781 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/phd.min.css @@ -0,0 +1,7 @@ +/*! + Theme: PhD + Author: Hennig Hasemann (http://leetless.de/vim.html) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#b8bbc2;background:#061229}.hljs ::selection,.hljs::selection{background-color:#4d5666;color:#b8bbc2}.hljs-comment{color:#717885}.hljs-tag{color:#9a99a3}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#b8bbc2}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#d07346}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f0a000}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fbd461}.hljs-strong{font-weight:700;color:#fbd461}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#99bf52}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#72b9bf}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#5299bf}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#9989cc}.hljs-emphasis{color:#9989cc;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#b08060}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/pico.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/pico.min.css new file mode 100644 index 0000000..3a92ad6 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/pico.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Pico + Author: PICO-8 (http://www.lexaloffle.com/pico-8.php) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#5f574f;background:#000}.hljs ::selection,.hljs::selection{background-color:#7e2553;color:#5f574f}.hljs-comment{color:#008751}.hljs-tag{color:#ab5236}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#5f574f}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ff004d}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#ffa300}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fff024}.hljs-strong{font-weight:700;color:#fff024}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#00e756}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#29adff}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#83769c}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#ff77a8}.hljs-emphasis{color:#ff77a8;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#fca}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/pop.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/pop.min.css new file mode 100644 index 0000000..35c96af --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/pop.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Pop + Author: Chris Kempson (http://chriskempson.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#d0d0d0;background:#000}.hljs ::selection,.hljs::selection{background-color:#303030;color:#d0d0d0}.hljs-comment{color:#505050}.hljs-tag{color:#b0b0b0}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#d0d0d0}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#eb008a}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f29333}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#f8ca12}.hljs-strong{font-weight:700;color:#f8ca12}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#37b349}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#0ab}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#0e5a94}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#b31e8d}.hljs-emphasis{color:#b31e8d;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#7a2d00}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/porple.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/porple.min.css new file mode 100644 index 0000000..2e9e74f --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/porple.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Porple + Author: Niek den Breeje (https://github.com/AuditeMarlow) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#d8d8d8;background:#292c36}.hljs ::selection,.hljs::selection{background-color:#474160;color:#d8d8d8}.hljs-comment{color:#65568a}.hljs-tag{color:#b8b8b8}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#d8d8d8}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#f84547}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#d28e5d}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#efa16b}.hljs-strong{font-weight:700;color:#efa16b}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#95c76f}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#64878f}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#8485ce}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#b74989}.hljs-emphasis{color:#b74989;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#986841}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/qualia.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/qualia.min.css new file mode 100644 index 0000000..9cd7f74 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/qualia.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Qualia + Author: isaacwhanson + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:silver;background:#101010}.hljs ::selection,.hljs::selection{background-color:#454545;color:silver}.hljs-comment{color:#454545}.hljs-tag{color:grey}.hljs-operator,.hljs-punctuation,.hljs-subst{color:silver}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#efa6a2}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#a3b8ef}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#e6a3dc}.hljs-strong{font-weight:700;color:#e6a3dc}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#80c990}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#c8c874}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#50cacd}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#e0af85}.hljs-emphasis{color:#e0af85;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:grey}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/railscasts.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/railscasts.min.css new file mode 100644 index 0000000..84e3886 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/railscasts.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Railscasts + Author: Ryan Bates (http://railscasts.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#e6e1dc;background:#2b2b2b}.hljs ::selection,.hljs::selection{background-color:#3a4055;color:#e6e1dc}.hljs-comment{color:#5a647e}.hljs-tag{color:#d4cfc9}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#e6e1dc}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#da4939}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#cc7833}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ffc66d}.hljs-strong{font-weight:700;color:#ffc66d}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#a5c261}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#519f50}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#6d9cbe}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#b6b3eb}.hljs-emphasis{color:#b6b3eb;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#bc9458}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/rebecca.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/rebecca.min.css new file mode 100644 index 0000000..ea75c6b --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/rebecca.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Rebecca + Author: Victor Borja (http://github.com/vic) based on Rebecca Theme (http://github.com/vic/rebecca-theme) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#f1eff8;background:#292a44}.hljs ::selection,.hljs::selection{background-color:#383a62;color:#f1eff8}.hljs-comment{color:#669}.hljs-tag{color:#a0a0c5}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#f1eff8}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#a0a0c5}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#efe4a1}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ae81ff}.hljs-strong{font-weight:700;color:#ae81ff}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#6dfedf}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#8eaee0}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#2de0a7}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#7aa5ff}.hljs-emphasis{color:#7aa5ff;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#ff79c6}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ros-pine-dawn.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ros-pine-dawn.min.css new file mode 100644 index 0000000..5d05907 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ros-pine-dawn.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Rosé Pine Dawn + Author: Emilia Dunfelt <sayhi@dunfelt.se> + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#575279;background:#faf4ed}.hljs ::selection,.hljs::selection{background-color:#f2e9de;color:#575279}.hljs-comment{color:#9893a5}.hljs-tag{color:#6e6a86}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#575279}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#1f1d2e}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#b4637a}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ea9d34}.hljs-strong{font-weight:700;color:#ea9d34}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#d7827e}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#286983}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#56949f}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#907aa9}.hljs-emphasis{color:#907aa9;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#c5c3ce}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ros-pine-moon.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ros-pine-moon.min.css new file mode 100644 index 0000000..2180bfe --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ros-pine-moon.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Rosé Pine Moon + Author: Emilia Dunfelt <sayhi@dunfelt.se> + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#e0def4;background:#232136}.hljs ::selection,.hljs::selection{background-color:#393552;color:#e0def4}.hljs-comment{color:#59546d}.hljs-tag{color:#817c9c}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#e0def4}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ecebf0}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#eb6f92}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#f6c177}.hljs-strong{font-weight:700;color:#f6c177}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#ea9a97}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#3e8fb0}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#9ccfd8}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#c4a7e7}.hljs-emphasis{color:#c4a7e7;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#b9b9bc}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ros-pine.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ros-pine.min.css new file mode 100644 index 0000000..3e98fae --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/ros-pine.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Rosé Pine + Author: Emilia Dunfelt <sayhi@dunfelt.se> + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#e0def4;background:#191724}.hljs ::selection,.hljs::selection{background-color:#26233a;color:#e0def4}.hljs-comment{color:#555169}.hljs-tag{color:#6e6a86}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#e0def4}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#e2e1e7}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#eb6f92}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#f6c177}.hljs-strong{font-weight:700;color:#f6c177}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#ebbcba}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#31748f}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#9ccfd8}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#c4a7e7}.hljs-emphasis{color:#c4a7e7;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#e5e5e5}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/sagelight.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/sagelight.min.css new file mode 100644 index 0000000..86c2656 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/sagelight.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Sagelight + Author: Carter Veldhuizen + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#383838;background:#f8f8f8}.hljs ::selection,.hljs::selection{background-color:#d8d8d8;color:#383838}.hljs-comment{color:#b8b8b8}.hljs-tag{color:#585858}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#383838}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#fa8480}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#ffaa61}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ffdc61}.hljs-strong{font-weight:700;color:#ffdc61}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#a0d2c8}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#a2d6f5}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#a0a7d2}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#c8a0d2}.hljs-emphasis{color:#c8a0d2;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#d2b2a0}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/sandcastle.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/sandcastle.min.css new file mode 100644 index 0000000..4b5ec5e --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/sandcastle.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Sandcastle + Author: George Essig (https://github.com/gessig) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#a89984;background:#282c34}.hljs ::selection,.hljs::selection{background-color:#3e4451;color:#a89984}.hljs-comment{color:#665c54}.hljs-tag{color:#928374}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#a89984}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#83a598}.hljs-attr,.hljs-class .hljs-title,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-title,.hljs-title.class_,.hljs-variable.constant_{color:#a07e3b}.hljs-strong{font-weight:700;color:#a07e3b}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#528b8b}.hljs-attribute,.hljs-built_in,.hljs-doctag,.hljs-function .hljs-title,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#83a598}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#d75f5f}.hljs-emphasis{color:#d75f5f;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#a87322}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/seti-ui.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/seti-ui.min.css new file mode 100644 index 0000000..fb7cbde --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/seti-ui.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Seti UI + Author: + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#d6d6d6;background:#151718}.hljs ::selection,.hljs::selection{background-color:#3b758c;color:#d6d6d6}.hljs-comment{color:#41535b}.hljs-tag{color:#43a5d5}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#d6d6d6}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#cd3f45}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#db7b55}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#e6cd69}.hljs-strong{font-weight:700;color:#e6cd69}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#9fca56}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#55dbbe}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#55b5db}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#a074c4}.hljs-emphasis{color:#a074c4;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#8a553f}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/shapeshifter.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/shapeshifter.min.css new file mode 100644 index 0000000..1d16e36 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/shapeshifter.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Shapeshifter + Author: Tyler Benziger (http://tybenz.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#102015;background:#f9f9f9}.hljs ::selection,.hljs::selection{background-color:#ababab;color:#102015}.hljs-comment{color:#555}.hljs-tag{color:#343434}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#102015}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#e92f2f}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#e09448}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#dddd13}.hljs-strong{font-weight:700;color:#dddd13}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#0ed839}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#23edda}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#3b48e3}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#f996e2}.hljs-emphasis{color:#f996e2;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#69542d}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/silk-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/silk-dark.min.css new file mode 100644 index 0000000..48b194d --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/silk-dark.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Silk Dark + Author: Gabriel Fontes (https://github.com/Misterio77) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c7dbdd;background:#0e3c46}.hljs ::selection,.hljs::selection{background-color:#2a5054;color:#c7dbdd}.hljs-comment{color:#587073}.hljs-tag{color:#9dc8cd}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#c7dbdd}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#fb6953}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#fcab74}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fce380}.hljs-strong{font-weight:700;color:#fce380}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#73d8ad}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#3fb2b9}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#46bddd}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#756b8a}.hljs-emphasis{color:#756b8a;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#9b647b}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/silk-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/silk-light.min.css new file mode 100644 index 0000000..abceae5 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/silk-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Silk Light + Author: Gabriel Fontes (https://github.com/Misterio77) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#385156;background:#e9f1ef}.hljs ::selection,.hljs::selection{background-color:#90b7b6;color:#385156}.hljs-comment{color:#5c787b}.hljs-tag{color:#4b5b5f}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#385156}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#cf432e}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#d27f46}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#cfad25}.hljs-strong{font-weight:700;color:#cfad25}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#6ca38c}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#329ca2}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#39aac9}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#6e6582}.hljs-emphasis{color:#6e6582;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#865369}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/snazzy.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/snazzy.min.css new file mode 100644 index 0000000..6963462 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/snazzy.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Snazzy + Author: Chawye Hsu (https://github.com/chawyehsu) based on Hyper Snazzy Theme (https://github.com/sindresorhus/hyper-snazzy) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#e2e4e5;background:#282a36}.hljs ::selection,.hljs::selection{background-color:#43454f;color:#e2e4e5}.hljs-comment{color:#78787e}.hljs-tag{color:#a5a5a9}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#e2e4e5}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ff5c57}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#ff9f43}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#f3f99d}.hljs-strong{font-weight:700;color:#f3f99d}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#5af78e}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#9aedfe}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#57c7ff}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#ff6ac1}.hljs-emphasis{color:#ff6ac1;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#b2643c}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/solar-flare-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/solar-flare-light.min.css new file mode 100644 index 0000000..36282c8 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/solar-flare-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Solar Flare Light + Author: Chuck Harmston (https://chuck.harmston.ch) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#586875;background:#f5f7fa}.hljs ::selection,.hljs::selection{background-color:#a6afb8;color:#586875}.hljs-comment{color:#85939e}.hljs-tag{color:#667581}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#586875}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ef5253}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#e66b2b}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#e4b51c}.hljs-strong{font-weight:700;color:#e4b51c}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#7cc844}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#52cbb0}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#33b5e1}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#a363d5}.hljs-emphasis{color:#a363d5;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#d73c9a}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/solar-flare.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/solar-flare.min.css new file mode 100644 index 0000000..1a4402c --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/solar-flare.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Solar Flare + Author: Chuck Harmston (https://chuck.harmston.ch) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#a6afb8;background:#18262f}.hljs ::selection,.hljs::selection{background-color:#586875;color:#a6afb8}.hljs-comment{color:#667581}.hljs-tag{color:#85939e}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#a6afb8}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ef5253}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#e66b2b}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#e4b51c}.hljs-strong{font-weight:700;color:#e4b51c}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#7cc844}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#52cbb0}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#33b5e1}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#a363d5}.hljs-emphasis{color:#a363d5;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#d73c9a}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/solarized-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/solarized-dark.min.css new file mode 100644 index 0000000..5d1cb07 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/solarized-dark.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Solarized Dark + Author: Ethan Schoonover (modified by aramisgithub) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#93a1a1;background:#002b36}.hljs ::selection,.hljs::selection{background-color:#586e75;color:#93a1a1}.hljs-comment{color:#657b83}.hljs-tag{color:#839496}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#93a1a1}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#dc322f}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#cb4b16}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#b58900}.hljs-strong{font-weight:700;color:#b58900}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#859900}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#2aa198}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#268bd2}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#6c71c4}.hljs-emphasis{color:#6c71c4;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#d33682}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/solarized-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/solarized-light.min.css new file mode 100644 index 0000000..cb814de --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/solarized-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Solarized Light + Author: Ethan Schoonover (modified by aramisgithub) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#586e75;background:#fdf6e3}.hljs ::selection,.hljs::selection{background-color:#93a1a1;color:#586e75}.hljs-comment{color:#839496}.hljs-tag{color:#657b83}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#586e75}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#dc322f}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#cb4b16}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#b58900}.hljs-strong{font-weight:700;color:#b58900}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#859900}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#2aa198}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#268bd2}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#6c71c4}.hljs-emphasis{color:#6c71c4;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#d33682}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/spacemacs.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/spacemacs.min.css new file mode 100644 index 0000000..de40a6d --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/spacemacs.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Spacemacs + Author: Nasser Alshammari (https://github.com/nashamri/spacemacs-theme) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#a3a3a3;background:#1f2022}.hljs ::selection,.hljs::selection{background-color:#444155;color:#a3a3a3}.hljs-comment{color:#585858}.hljs-tag{color:#b8b8b8}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#a3a3a3}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#f2241f}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:orange}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#b1951d}.hljs-strong{font-weight:700;color:#b1951d}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#67b11d}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#2d9574}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#4f97d7}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#a31db1}.hljs-emphasis{color:#a31db1;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#b03060}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/summercamp.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/summercamp.min.css new file mode 100644 index 0000000..2eef7ec --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/summercamp.min.css @@ -0,0 +1,7 @@ +/*! + Theme: summercamp + Author: zoe firi (zoefiri.github.io) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#736e55;background:#1c1810}.hljs ::selection,.hljs::selection{background-color:#3a3527;color:#736e55}.hljs-comment{color:#504b38}.hljs-tag{color:#5f5b45}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#736e55}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#e35142}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#fba11b}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#f2ff27}.hljs-strong{font-weight:700;color:#f2ff27}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#5ceb5a}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#5aebbc}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#489bf0}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#ff8080}.hljs-emphasis{color:#ff8080;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#f69be7}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/summerfruit-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/summerfruit-dark.min.css new file mode 100644 index 0000000..91babd5 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/summerfruit-dark.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Summerfruit Dark + Author: Christopher Corley (http://christop.club/) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#d0d0d0;background:#151515}.hljs ::selection,.hljs::selection{background-color:#303030;color:#d0d0d0}.hljs-comment{color:#505050}.hljs-tag{color:#b0b0b0}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#d0d0d0}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ff0086}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#fd8900}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#aba800}.hljs-strong{font-weight:700;color:#aba800}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#00c918}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#1faaaa}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#3777e6}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#ad00a1}.hljs-emphasis{color:#ad00a1;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#c63}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/summerfruit-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/summerfruit-light.min.css new file mode 100644 index 0000000..cf6332e --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/summerfruit-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Summerfruit Light + Author: Christopher Corley (http://christop.club/) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#101010;background:#fff}.hljs ::selection,.hljs::selection{background-color:#d0d0d0;color:#101010}.hljs-comment{color:#b0b0b0}.hljs-tag{color:#000}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#101010}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#ff0086}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#fd8900}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#aba800}.hljs-strong{font-weight:700;color:#aba800}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#00c918}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#1faaaa}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#3777e6}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#ad00a1}.hljs-emphasis{color:#ad00a1;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#c63}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/synth-midnight-terminal-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/synth-midnight-terminal-dark.min.css new file mode 100644 index 0000000..bb7f435 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/synth-midnight-terminal-dark.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Synth Midnight Terminal Dark + Author: Michaël Ball (http://github.com/michael-ball/) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c1c3c4;background:#050608}.hljs ::selection,.hljs::selection{background-color:#28292a;color:#c1c3c4}.hljs-comment{color:#474849}.hljs-tag{color:#a3a5a6}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#c1c3c4}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#b53b50}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#ea770d}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#c9d364}.hljs-strong{font-weight:700;color:#c9d364}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#06ea61}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#42fff9}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#03aeff}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#ea5ce2}.hljs-emphasis{color:#ea5ce2;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#cd6320}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/synth-midnight-terminal-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/synth-midnight-terminal-light.min.css new file mode 100644 index 0000000..48cabb4 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/synth-midnight-terminal-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Synth Midnight Terminal Light + Author: Michaël Ball (http://github.com/michael-ball/) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#28292a;background:#dddfe0}.hljs ::selection,.hljs::selection{background-color:#c1c3c4;color:#28292a}.hljs-comment{color:#a3a5a6}.hljs-tag{color:#474849}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#28292a}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#b53b50}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#ea770d}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#c9d364}.hljs-strong{font-weight:700;color:#c9d364}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#06ea61}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#42fff9}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#03aeff}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#ea5ce2}.hljs-emphasis{color:#ea5ce2;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#cd6320}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/tango.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/tango.min.css new file mode 100644 index 0000000..e2e6b41 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/tango.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Tango + Author: @Schnouki, based on the Tango Desktop Project + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#d3d7cf;background:#2e3436}.hljs ::selection,.hljs::selection{background-color:#fce94f;color:#d3d7cf}.hljs-comment{color:#555753}.hljs-tag{color:#729fcf}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#d3d7cf}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#c00}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#ef2929}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#c4a000}.hljs-strong{font-weight:700;color:#c4a000}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#4e9a06}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#06989a}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#3465a4}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#75507b}.hljs-emphasis{color:#75507b;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#34e2e2}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/tender.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/tender.min.css new file mode 100644 index 0000000..45f4e4f --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/tender.min.css @@ -0,0 +1,7 @@ +/*! + Theme: tender + Author: Jacobo Tabernero (https://github/com/jacoborus/tender.vim) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#eee;background:#282828}.hljs ::selection,.hljs::selection{background-color:#484848;color:#eee}.hljs-comment{color:#4c4c4c}.hljs-tag{color:#b8b8b8}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#eee}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#f43753}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#dc9656}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ffc24b}.hljs-strong{font-weight:700;color:#ffc24b}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#c9d05c}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#73cef4}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#b3deef}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#d3b987}.hljs-emphasis{color:#d3b987;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#a16946}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/tomorrow-night.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/tomorrow-night.min.css new file mode 100644 index 0000000..45eee9d --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/tomorrow-night.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Tomorrow Night + Author: Chris Kempson (http://chriskempson.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#ccc;background:#2d2d2d}.hljs ::selection,.hljs::selection{background-color:#515151;color:#ccc}.hljs-comment{color:#999}.hljs-tag{color:#b4b7b4}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#ccc}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#f2777a}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f99157}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fc6}.hljs-strong{font-weight:700;color:#fc6}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#9c9}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#6cc}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#69c}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#c9c}.hljs-emphasis{color:#c9c;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#a3685a}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/tomorrow.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/tomorrow.min.css new file mode 100644 index 0000000..0e44cbc --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/tomorrow.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Tomorrow + Author: Chris Kempson (http://chriskempson.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#4d4d4c;background:#fff}.hljs ::selection,.hljs::selection{background-color:#d6d6d6;color:#4d4d4c}.hljs-comment{color:#8e908c}.hljs-tag{color:#969896}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#4d4d4c}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#c82829}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f5871f}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#eab700}.hljs-strong{font-weight:700;color:#eab700}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#718c00}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#3e999f}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#4271ae}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#8959a8}.hljs-emphasis{color:#8959a8;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#a3685a}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/twilight.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/twilight.min.css new file mode 100644 index 0000000..d0377eb --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/twilight.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Twilight + Author: David Hart (https://github.com/hartbit) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#a7a7a7;background:#1e1e1e}.hljs ::selection,.hljs::selection{background-color:#464b50;color:#a7a7a7}.hljs-comment{color:#5f5a60}.hljs-tag{color:#838184}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#a7a7a7}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#cf6a4c}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#cda869}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#f9ee98}.hljs-strong{font-weight:700;color:#f9ee98}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#8f9d6a}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#afc4db}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#7587a6}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#9b859d}.hljs-emphasis{color:#9b859d;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#9b703f}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/unikitty-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/unikitty-dark.min.css new file mode 100644 index 0000000..7427084 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/unikitty-dark.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Unikitty Dark + Author: Josh W Lewis (@joshwlewis) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#bcbabe;background:#2e2a31}.hljs ::selection,.hljs::selection{background-color:#666369;color:#bcbabe}.hljs-comment{color:#838085}.hljs-tag{color:#9f9da2}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#bcbabe}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#d8137f}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#d65407}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#dc8a0e}.hljs-strong{font-weight:700;color:#dc8a0e}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#17ad98}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#149bda}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#796af5}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#bb60ea}.hljs-emphasis{color:#bb60ea;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#c720ca}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/unikitty-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/unikitty-light.min.css new file mode 100644 index 0000000..583f4de --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/unikitty-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Unikitty Light + Author: Josh W Lewis (@joshwlewis) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#6c696e;background:#fff}.hljs ::selection,.hljs::selection{background-color:#c4c3c5;color:#6c696e}.hljs-comment{color:#a7a5a8}.hljs-tag{color:#89878b}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#6c696e}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#d8137f}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#d65407}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#dc8a0e}.hljs-strong{font-weight:700;color:#dc8a0e}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#17ad98}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#149bda}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#775dff}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#aa17e6}.hljs-emphasis{color:#aa17e6;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#e013d0}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/vulcan.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/vulcan.min.css new file mode 100644 index 0000000..2640a89 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/vulcan.min.css @@ -0,0 +1,7 @@ +/*! + Theme: vulcan + Author: Andrey Varfolomeev + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#5b778c;background:#041523}.hljs ::selection,.hljs::selection{background-color:#003552;color:#5b778c}.hljs-comment{color:#7a5759}.hljs-tag{color:#6b6977}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#5b778c}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#818591}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#9198a3}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#adb4b9}.hljs-strong{font-weight:700;color:#adb4b9}.hljs-addition,.hljs-attribute,.hljs-built_in,.hljs-code,.hljs-doctag,.hljs-function .hljs-title,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp,.hljs-section,.hljs-string,.hljs-title.class_.inherited__,.hljs-title.function_,.ruby .hljs-property{color:#977d7c}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#9198a3}.hljs-emphasis{color:#9198a3;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#977d7c}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-10-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-10-light.min.css new file mode 100644 index 0000000..84bd8f4 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-10-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Windows 10 Light + Author: Fergus Collins (https://github.com/C-Fergus) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#767676;background:#f2f2f2}.hljs ::selection,.hljs::selection{background-color:#d9d9d9;color:#767676}.hljs-comment{color:#ccc}.hljs-tag{color:#ababab}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#767676}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#c50f1f}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#f9f1a5}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#c19c00}.hljs-strong{font-weight:700;color:#c19c00}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#13a10e}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#3a96dd}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#0037da}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#881798}.hljs-emphasis{color:#881798;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#16c60c}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-10.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-10.min.css new file mode 100644 index 0000000..59eae00 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-10.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Windows 10 + Author: Fergus Collins (https://github.com/C-Fergus) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#ccc;background:#0c0c0c}.hljs ::selection,.hljs::selection{background-color:#535353;color:#ccc}.hljs-comment{color:#767676}.hljs-tag{color:#b9b9b9}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#ccc}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#e74856}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#c19c00}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#f9f1a5}.hljs-strong{font-weight:700;color:#f9f1a5}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#16c60c}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#61d6d6}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#3b78ff}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#b4009e}.hljs-emphasis{color:#b4009e;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#13a10e}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-95-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-95-light.min.css new file mode 100644 index 0000000..408c47f --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-95-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Windows 95 Light + Author: Fergus Collins (https://github.com/C-Fergus) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#545454;background:#fcfcfc}.hljs ::selection,.hljs::selection{background-color:#c4c4c4;color:#545454}.hljs-comment{color:#a8a8a8}.hljs-tag{color:#7e7e7e}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#545454}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#a80000}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#fcfc54}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#a85400}.hljs-strong{font-weight:700;color:#a85400}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#00a800}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#00a8a8}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#0000a8}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#a800a8}.hljs-emphasis{color:#a800a8;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#54fc54}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-95.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-95.min.css new file mode 100644 index 0000000..27dbbe5 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-95.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Windows 95 + Author: Fergus Collins (https://github.com/C-Fergus) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#a8a8a8;background:#000}.hljs ::selection,.hljs::selection{background-color:#383838;color:#a8a8a8}.hljs-comment{color:#545454}.hljs-tag{color:#7e7e7e}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#a8a8a8}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#fc5454}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#a85400}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fcfc54}.hljs-strong{font-weight:700;color:#fcfc54}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#54fc54}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#54fcfc}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#5454fc}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#fc54fc}.hljs-emphasis{color:#fc54fc;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#00a800}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-high-contrast-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-high-contrast-light.min.css new file mode 100644 index 0000000..b548125 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-high-contrast-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Windows High Contrast Light + Author: Fergus Collins (https://github.com/C-Fergus) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#545454;background:#fcfcfc}.hljs ::selection,.hljs::selection{background-color:#d4d4d4;color:#545454}.hljs-comment{color:silver}.hljs-tag{color:#7e7e7e}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#545454}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:maroon}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#fcfc54}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:olive}.hljs-strong{font-weight:700;color:olive}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:green}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:teal}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:navy}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:purple}.hljs-emphasis{color:purple;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#54fc54}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-high-contrast.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-high-contrast.min.css new file mode 100644 index 0000000..b1088d8 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-high-contrast.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Windows High Contrast + Author: Fergus Collins (https://github.com/C-Fergus) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:silver;background:#000}.hljs ::selection,.hljs::selection{background-color:#383838;color:silver}.hljs-comment{color:#545454}.hljs-tag{color:#a2a2a2}.hljs-operator,.hljs-punctuation,.hljs-subst{color:silver}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#fc5454}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:olive}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#fcfc54}.hljs-strong{font-weight:700;color:#fcfc54}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#54fc54}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#54fcfc}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#5454fc}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#fc54fc}.hljs-emphasis{color:#fc54fc;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:green}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-nt-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-nt-light.min.css new file mode 100644 index 0000000..a0bdec5 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-nt-light.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Windows NT Light + Author: Fergus Collins (https://github.com/C-Fergus) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:grey;background:#fff}.hljs ::selection,.hljs::selection{background-color:#d5d5d5;color:grey}.hljs-comment{color:silver}.hljs-tag{color:#a0a0a0}.hljs-operator,.hljs-punctuation,.hljs-subst{color:grey}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:maroon}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#ff0}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:olive}.hljs-strong{font-weight:700;color:olive}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:green}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:teal}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:navy}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:purple}.hljs-emphasis{color:purple;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#0f0}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-nt.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-nt.min.css new file mode 100644 index 0000000..dc5f09a --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/windows-nt.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Windows NT + Author: Fergus Collins (https://github.com/C-Fergus) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:silver;background:#000}.hljs ::selection,.hljs::selection{background-color:#555;color:silver}.hljs-comment{color:grey}.hljs-tag{color:#a1a1a1}.hljs-operator,.hljs-punctuation,.hljs-subst{color:silver}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:red}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:olive}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#ff0}.hljs-strong{font-weight:700;color:#ff0}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#0f0}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#0ff}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#00f}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#f0f}.hljs-emphasis{color:#f0f;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:green}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/woodland.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/woodland.min.css new file mode 100644 index 0000000..9c30c57 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/woodland.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Woodland + Author: Jay Cornwall (https://jcornwall.com) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#cabcb1;background:#231e18}.hljs ::selection,.hljs::selection{background-color:#48413a;color:#cabcb1}.hljs-comment{color:#9d8b70}.hljs-tag{color:#b4a490}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#cabcb1}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#d35c5c}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#ca7f32}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#e0ac16}.hljs-strong{font-weight:700;color:#e0ac16}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#b7ba53}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#6eb958}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#88a4d3}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#bb90e2}.hljs-emphasis{color:#bb90e2;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#b49368}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/xcode-dusk.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/xcode-dusk.min.css new file mode 100644 index 0000000..ec724d4 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/xcode-dusk.min.css @@ -0,0 +1,7 @@ +/*! + Theme: XCode Dusk + Author: Elsa Gonsiorowski (https://github.com/gonsie) + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#939599;background:#282b35}.hljs ::selection,.hljs::selection{background-color:#53555d;color:#939599}.hljs-comment{color:#686a71}.hljs-tag{color:#7e8086}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#939599}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#b21889}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#786dc5}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#438288}.hljs-strong{font-weight:700;color:#438288}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#df0002}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#00a0be}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#790ead}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#b21889}.hljs-emphasis{color:#b21889;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#c77c48}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/zenburn.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/zenburn.min.css new file mode 100644 index 0000000..80ca37c --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/base16/zenburn.min.css @@ -0,0 +1,7 @@ +/*! + Theme: Zenburn + Author: elnawe + License: ~ MIT (or more permissive) [via base16-schemes-source] + Maintainer: @highlightjs/core-team + Version: 2021.09.0 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#dcdccc;background:#383838}.hljs ::selection,.hljs::selection{background-color:#606060;color:#dcdccc}.hljs-comment{color:#6f6f6f}.hljs-tag{color:grey}.hljs-operator,.hljs-punctuation,.hljs-subst{color:#dcdccc}.hljs-operator{opacity:.7}.hljs-bullet,.hljs-deletion,.hljs-name,.hljs-selector-tag,.hljs-template-variable,.hljs-variable{color:#dca3a3}.hljs-attr,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol,.hljs-variable.constant_{color:#dfaf8f}.hljs-class .hljs-title,.hljs-title,.hljs-title.class_{color:#e0cf9f}.hljs-strong{font-weight:700;color:#e0cf9f}.hljs-addition,.hljs-code,.hljs-string,.hljs-title.class_.inherited__{color:#5f7f5f}.hljs-built_in,.hljs-doctag,.hljs-keyword.hljs-atrule,.hljs-quote,.hljs-regexp{color:#93e0e3}.hljs-attribute,.hljs-function .hljs-title,.hljs-section,.hljs-title.function_,.ruby .hljs-property{color:#7cb8bb}.diff .hljs-meta,.hljs-keyword,.hljs-template-tag,.hljs-type{color:#dc8cc3}.hljs-emphasis{color:#dc8cc3;font-style:italic}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-meta .hljs-string{color:#000}.hljs-meta .hljs-keyword,.hljs-meta-keyword{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/brown-paper.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/brown-paper.min.css new file mode 100644 index 0000000..51f98f9 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/brown-paper.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#363c69;background:url(./brown-papersq.png) #b7a68e}.hljs-keyword,.hljs-literal,.hljs-selector-tag{color:#059}.hljs-addition,.hljs-attribute,.hljs-built_in,.hljs-bullet,.hljs-link,.hljs-name,.hljs-section,.hljs-string,.hljs-symbol,.hljs-template-tag,.hljs-template-variable,.hljs-title,.hljs-type,.hljs-variable{color:#2c009f}.hljs-comment,.hljs-deletion,.hljs-meta,.hljs-quote{color:#802022}.hljs-doctag,.hljs-keyword,.hljs-literal,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-strong,.hljs-title,.hljs-type{font-weight:700}.hljs-emphasis{font-style:italic} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/brown-papersq.png b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/brown-papersq.png new file mode 100644 index 0000000000000000000000000000000000000000..3813903dbf9fa7b1fb5bd11d9534c06667d9056f GIT binary patch literal 18198 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/codepen-embed.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/codepen-embed.min.css new file mode 100644 index 0000000..b8cf3c4 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/codepen-embed.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#222;color:#fff}.hljs-comment,.hljs-quote{color:#777}.hljs-built_in,.hljs-bullet,.hljs-deletion,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-params,.hljs-regexp,.hljs-symbol,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#ab875d}.hljs-attribute,.hljs-name,.hljs-section,.hljs-selector-class,.hljs-selector-id,.hljs-title,.hljs-type{color:#9b869b}.hljs-addition,.hljs-keyword,.hljs-selector-tag,.hljs-string{color:#8f9c6c}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/color-brewer.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/color-brewer.min.css new file mode 100644 index 0000000..109d5a6 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/color-brewer.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#000;background:#fff}.hljs-addition,.hljs-meta,.hljs-string,.hljs-symbol,.hljs-template-tag,.hljs-template-variable{color:#756bb1}.hljs-comment,.hljs-quote{color:#636363}.hljs-bullet,.hljs-link,.hljs-literal,.hljs-number,.hljs-regexp{color:#31a354}.hljs-deletion,.hljs-variable{color:#88f}.hljs-built_in,.hljs-doctag,.hljs-keyword,.hljs-name,.hljs-section,.hljs-selector-class,.hljs-selector-id,.hljs-selector-tag,.hljs-strong,.hljs-tag,.hljs-title,.hljs-type{color:#3182bd}.hljs-emphasis{font-style:italic}.hljs-attribute{color:#e6550d} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/dark.min.css new file mode 100644 index 0000000..9cae4a7 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/dark.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#ddd;background:#303030}.hljs-keyword,.hljs-link,.hljs-literal,.hljs-section,.hljs-selector-tag{color:#fff}.hljs-addition,.hljs-attribute,.hljs-built_in,.hljs-bullet,.hljs-name,.hljs-string,.hljs-symbol,.hljs-template-tag,.hljs-template-variable,.hljs-title,.hljs-type,.hljs-variable{color:#d88}.hljs-comment,.hljs-deletion,.hljs-meta,.hljs-quote{color:#979797}.hljs-doctag,.hljs-keyword,.hljs-literal,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-strong,.hljs-title,.hljs-type{font-weight:700}.hljs-emphasis{font-style:italic} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/default.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/default.min.css new file mode 100644 index 0000000..69edcf1 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/default.min.css @@ -0,0 +1,9 @@ +/*! + Theme: Default + Description: Original highlight.js style + Author: (c) Ivan Sagalaev <maniac@softwaremaniacs.org> + Maintainer: @highlightjs/core-team + Website: https://highlightjs.org/ + License: see project LICENSE + Touched: 2021 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#f3f3f3;color:#444}.hljs-comment{color:#697070}.hljs-punctuation,.hljs-tag{color:#444a}.hljs-tag .hljs-attr,.hljs-tag .hljs-name{color:#444}.hljs-attribute,.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-name,.hljs-selector-tag{font-weight:700}.hljs-deletion,.hljs-number,.hljs-quote,.hljs-selector-class,.hljs-selector-id,.hljs-string,.hljs-template-tag,.hljs-type{color:#800}.hljs-section,.hljs-title{color:#800;font-weight:700}.hljs-link,.hljs-operator,.hljs-regexp,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#ab5656}.hljs-literal{color:#695}.hljs-addition,.hljs-built_in,.hljs-bullet,.hljs-code{color:#397300}.hljs-meta{color:#1f7199}.hljs-meta .hljs-string{color:#38a}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/devibeans.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/devibeans.min.css new file mode 100644 index 0000000..421c580 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/devibeans.min.css @@ -0,0 +1,7 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! + Theme: devibeans (dark) + Author: @terminaldweller + Maintainer: @terminaldweller + + Inspired by vim's jellybeans theme (https://github.com/nanotech/jellybeans.vim) +*/.hljs{background:#000;color:#a39e9b}.hljs-attr,.hljs-template-tag{color:#8787d7}.hljs-comment,.hljs-doctag,.hljs-quote{color:#396}.hljs-params{color:#a39e9b}.hljs-regexp{color:#d700ff}.hljs-literal,.hljs-number,.hljs-selector-id,.hljs-tag{color:#ef5350}.hljs-meta,.hljs-meta .hljs-keyword{color:#0087ff}.hljs-code,.hljs-formula,.hljs-keyword,.hljs-link,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-pseudo,.hljs-template-variable,.hljs-variable{color:#64b5f6}.hljs-built_in,.hljs-deletion,.hljs-title{color:#ff8700}.hljs-attribute,.hljs-function,.hljs-name,.hljs-property,.hljs-section,.hljs-type{color:#ffd75f}.hljs-addition,.hljs-bullet,.hljs-meta .hljs-string,.hljs-string,.hljs-subst,.hljs-symbol{color:#558b2f}.hljs-selector-tag{color:#96f}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/docco.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/docco.min.css new file mode 100644 index 0000000..1cba674 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/docco.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#000;background:#f8f8ff}.hljs-comment,.hljs-quote{color:#408080;font-style:italic}.hljs-keyword,.hljs-literal,.hljs-selector-tag,.hljs-subst{color:#954121}.hljs-number{color:#40a070}.hljs-doctag,.hljs-string{color:#219161}.hljs-section,.hljs-selector-class,.hljs-selector-id,.hljs-type{color:#19469d}.hljs-params{color:#00f}.hljs-title{color:#458;font-weight:700}.hljs-attribute,.hljs-name,.hljs-tag{color:navy;font-weight:400}.hljs-template-variable,.hljs-variable{color:teal}.hljs-link,.hljs-regexp{color:#b68}.hljs-bullet,.hljs-symbol{color:#990073}.hljs-built_in{color:#0086b3}.hljs-meta{color:#999;font-weight:700}.hljs-deletion{background:#fdd}.hljs-addition{background:#dfd}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/far.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/far.min.css new file mode 100644 index 0000000..475c099 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/far.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#0ff;background:navy}.hljs-addition,.hljs-attribute,.hljs-built_in,.hljs-bullet,.hljs-string,.hljs-symbol,.hljs-template-tag,.hljs-template-variable{color:#ff0}.hljs-keyword,.hljs-name,.hljs-section,.hljs-selector-class,.hljs-selector-id,.hljs-selector-tag,.hljs-type,.hljs-variable{color:#fff}.hljs-comment,.hljs-deletion,.hljs-doctag,.hljs-quote{color:#888}.hljs-link,.hljs-literal,.hljs-number,.hljs-regexp{color:#0f0}.hljs-meta{color:teal}.hljs-keyword,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-strong,.hljs-title{font-weight:700}.hljs-emphasis{font-style:italic} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/felipec.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/felipec.min.css new file mode 100644 index 0000000..82cbb94 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/felipec.min.css @@ -0,0 +1,7 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! + * Theme: FelipeC + * Author: (c) 2021 Felipe Contreras <felipe.contreras@gmail.com> + * Website: https://github.com/felipec/vim-felipec + * + * Autogenerated with vim-felipec's generator. +*/.hljs{color:#dddde1;background:#1e1e22}.hljs ::selection,.hljs::selection{color:#1e1e22;background:#bf8fef}.hljs-code,.hljs-comment,.hljs-quote{color:#888896}.hljs-deletion,.hljs-literal,.hljs-number{color:#ef8f8f}.hljs-doctag,.hljs-meta,.hljs-operator,.hljs-punctuation,.hljs-selector-attr,.hljs-subst,.hljs-template-variable{color:#efbf8f}.hljs-type{color:#efef8f}.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-title{color:#bfef8f}.hljs-addition,.hljs-regexp,.hljs-string{color:#8fef8f}.hljs-class,.hljs-property{color:#8fefbf}.hljs-name,.hljs-selector-tag{color:#8fefef}.hljs-built_in,.hljs-keyword{color:#8fbfef}.hljs-bullet,.hljs-section{color:#8f8fef}.hljs-selector-pseudo{color:#bf8fef}.hljs-attr,.hljs-attribute,.hljs-params,.hljs-variable{color:#ef8fef}.hljs-link,.hljs-symbol{color:#ef8fbf}.hljs-literal,.hljs-strong,.hljs-title{font-weight:700}.hljs-emphasis{font-style:italic} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/foundation.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/foundation.min.css new file mode 100644 index 0000000..65bb5ff --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/foundation.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#eee;color:#000}.hljs-addition,.hljs-attribute,.hljs-emphasis,.hljs-link{color:#070}.hljs-emphasis{font-style:italic}.hljs-deletion,.hljs-string,.hljs-strong{color:#d14}.hljs-strong{font-weight:700}.hljs-comment,.hljs-quote{color:#998;font-style:italic}.hljs-section,.hljs-title{color:#900}.hljs-class .hljs-title,.hljs-title.class_,.hljs-type{color:#458}.hljs-template-variable,.hljs-variable{color:#369}.hljs-bullet{color:#970}.hljs-meta{color:#34b}.hljs-code,.hljs-keyword,.hljs-literal,.hljs-number,.hljs-selector-tag{color:#099}.hljs-regexp{background-color:#fff0ff;color:#808}.hljs-symbol{color:#990073}.hljs-name,.hljs-selector-class,.hljs-selector-id,.hljs-tag{color:#070} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/github-dark-dimmed.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/github-dark-dimmed.min.css new file mode 100644 index 0000000..7fe23a9 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/github-dark-dimmed.min.css @@ -0,0 +1,9 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! + Theme: GitHub Dark Dimmed + Description: Dark dimmed theme as seen on github.com + Author: github.com + Maintainer: @Hirse + Updated: 2021-05-15 + + Colors taken from GitHub's CSS +*/.hljs{color:#adbac7;background:#22272e}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#f47067}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#dcbdfb}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#6cb6ff}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#96d0ff}.hljs-built_in,.hljs-symbol{color:#f69d50}.hljs-code,.hljs-comment,.hljs-formula{color:#768390}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#8ddb8c}.hljs-subst{color:#adbac7}.hljs-section{color:#316dca;font-weight:700}.hljs-bullet{color:#eac55f}.hljs-emphasis{color:#adbac7;font-style:italic}.hljs-strong{color:#adbac7;font-weight:700}.hljs-addition{color:#b4f1b4;background-color:#1b4721}.hljs-deletion{color:#ffd8d3;background-color:#78191b} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/github-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/github-dark.min.css new file mode 100644 index 0000000..495769c --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/github-dark.min.css @@ -0,0 +1,10 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! + Theme: GitHub Dark + Description: Dark theme as seen on github.com + Author: github.com + Maintainer: @Hirse + Updated: 2021-05-15 + + Outdated base version: https://github.com/primer/github-syntax-dark + Current colors taken from GitHub's CSS +*/.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#79c0ff}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-code,.hljs-comment,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/github.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/github.min.css new file mode 100644 index 0000000..96af284 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/github.min.css @@ -0,0 +1,10 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! + Theme: GitHub + Description: Light theme as seen on github.com + Author: github.com + Maintainer: @Hirse + Updated: 2021-05-15 + + Outdated base version: https://github.com/primer/github-syntax-light + Current colors taken from GitHub's CSS +*/.hljs{color:#24292e;background:#fff}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#d73a49}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#6f42c1}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#005cc5}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#032f62}.hljs-built_in,.hljs-symbol{color:#e36209}.hljs-code,.hljs-comment,.hljs-formula{color:#6a737d}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#22863a}.hljs-subst{color:#24292e}.hljs-section{color:#005cc5;font-weight:700}.hljs-bullet{color:#735c0f}.hljs-emphasis{color:#24292e;font-style:italic}.hljs-strong{color:#24292e;font-weight:700}.hljs-addition{color:#22863a;background-color:#f0fff4}.hljs-deletion{color:#b31d28;background-color:#ffeef0} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/gml.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/gml.min.css new file mode 100644 index 0000000..5d2dd5c --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/gml.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#222;color:silver}.hljs-keyword{color:#ffb871;font-weight:700}.hljs-built_in{color:#ffb871}.hljs-literal{color:#ff8080}.hljs-symbol{color:#58e55a}.hljs-comment{color:#5b995b}.hljs-string{color:#ff0}.hljs-number{color:#ff8080}.hljs-addition,.hljs-attribute,.hljs-bullet,.hljs-code,.hljs-deletion,.hljs-doctag,.hljs-function,.hljs-link,.hljs-meta,.hljs-meta .hljs-keyword,.hljs-name,.hljs-quote,.hljs-regexp,.hljs-section,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-selector-pseudo,.hljs-selector-tag,.hljs-subst,.hljs-template-tag,.hljs-template-variable,.hljs-title,.hljs-type,.hljs-variable{color:silver}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/googlecode.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/googlecode.min.css new file mode 100644 index 0000000..40600eb --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/googlecode.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#fff;color:#000}.hljs-comment,.hljs-quote{color:#800}.hljs-keyword,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-title{color:#008}.hljs-template-variable,.hljs-variable{color:#660}.hljs-regexp,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-string{color:#080}.hljs-bullet,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-symbol{color:#066}.hljs-attr,.hljs-built_in,.hljs-doctag,.hljs-params,.hljs-title,.hljs-type{color:#606}.hljs-attribute,.hljs-subst{color:#000}.hljs-formula{background-color:#eee;font-style:italic}.hljs-selector-class,.hljs-selector-id{color:#9b703f}.hljs-addition{background-color:#baeeba}.hljs-deletion{background-color:#ffc8bd}.hljs-doctag,.hljs-strong{font-weight:700}.hljs-emphasis{font-style:italic} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/gradient-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/gradient-dark.min.css new file mode 100644 index 0000000..51bba43 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/gradient-dark.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background-color:#652487;background-image:linear-gradient(160deg,#652487 0,#443ac3 35%,#0174b7 68%,#04988e 100%);color:#e7e4eb}.hljs-subtr{color:#e7e4eb}.hljs-comment,.hljs-doctag,.hljs-meta,.hljs-quote{color:#af8dd9}.hljs-attr,.hljs-regexp,.hljs-selector-id,.hljs-selector-tag,.hljs-tag,.hljs-template-tag{color:#aefbff}.hljs-bullet,.hljs-params,.hljs-selector-class{color:#f19fff}.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-section,.hljs-symbol,.hljs-type{color:#17fc95}.hljs-addition,.hljs-link,.hljs-number{color:#c5fe00}.hljs-string{color:#38c0ff}.hljs-addition,.hljs-attribute{color:#e7ff9f}.hljs-template-variable,.hljs-variable{color:#e447ff}.hljs-built_in,.hljs-class,.hljs-formula,.hljs-function,.hljs-name,.hljs-title{color:#ffc800}.hljs-deletion,.hljs-literal,.hljs-selector-pseudo{color:#ff9e44}.hljs-emphasis,.hljs-quote{font-style:italic}.hljs-keyword,.hljs-params,.hljs-section,.hljs-selector-class,.hljs-selector-id,.hljs-selector-tag,.hljs-strong,.hljs-template-tag{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/gradient-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/gradient-light.min.css new file mode 100644 index 0000000..3f3e5e0 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/gradient-light.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background-color:#f9ccff;background-image:linear-gradient(295deg,#f9ccff 0,#e6bbf9 11%,#9ec6f9 32%,#55e6ee 60%,#91f5d1 74%,#f9ffbf 98%);color:#250482}.hljs-subtr{color:#01958b}.hljs-comment,.hljs-doctag,.hljs-meta,.hljs-quote{color:#cb7200}.hljs-attr,.hljs-regexp,.hljs-selector-id,.hljs-selector-tag,.hljs-tag,.hljs-template-tag{color:#07bd5f}.hljs-bullet,.hljs-params,.hljs-selector-class{color:#43449f}.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-section,.hljs-symbol,.hljs-type{color:#7d2801}.hljs-addition,.hljs-link,.hljs-number{color:#7f0096}.hljs-string{color:#2681ab}.hljs-addition,.hljs-attribute{color:#296562}.hljs-template-variable,.hljs-variable{color:#025c8f}.hljs-built_in,.hljs-class,.hljs-formula,.hljs-function,.hljs-name,.hljs-title{color:#529117}.hljs-deletion,.hljs-literal,.hljs-selector-pseudo{color:#ad13ff}.hljs-emphasis,.hljs-quote{font-style:italic}.hljs-keyword,.hljs-params,.hljs-section,.hljs-selector-class,.hljs-selector-id,.hljs-selector-tag,.hljs-strong,.hljs-template-tag{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/grayscale.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/grayscale.min.css new file mode 100644 index 0000000..1db7b89 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/grayscale.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#333;background:#fff}.hljs-comment,.hljs-quote{color:#777;font-style:italic}.hljs-keyword,.hljs-selector-tag,.hljs-subst{color:#333;font-weight:700}.hljs-literal,.hljs-number{color:#777}.hljs-doctag,.hljs-formula,.hljs-string{color:#333;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAJ0lEQVQIW2O8e/fufwYGBgZBQUEQxcCIIfDu3Tuwivfv30NUoAsAALHpFMMLqZlPAAAAAElFTkSuQmCC)}.hljs-section,.hljs-selector-id,.hljs-title{color:#000;font-weight:700}.hljs-subst{font-weight:400}.hljs-class .hljs-title,.hljs-name,.hljs-title.class_,.hljs-type{color:#333;font-weight:700}.hljs-tag{color:#333}.hljs-regexp{color:#333;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAICAYAAADA+m62AAAAPUlEQVQYV2NkQAN37979r6yszIgujiIAU4RNMVwhuiQ6H6wQl3XI4oy4FMHcCJPHcDS6J2A2EqUQpJhohQDexSef15DBCwAAAABJRU5ErkJggg==)}.hljs-bullet,.hljs-link,.hljs-symbol{color:#000;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAKElEQVQIW2NkQAO7d+/+z4gsBhJwdXVlhAvCBECKwIIwAbhKZBUwBQA6hBpm5efZsgAAAABJRU5ErkJggg==)}.hljs-built_in{color:#000;text-decoration:underline}.hljs-meta{color:#999;font-weight:700}.hljs-deletion{color:#fff;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAADCAYAAABS3WWCAAAAE0lEQVQIW2MMDQ39zzhz5kwIAQAyxweWgUHd1AAAAABJRU5ErkJggg==)}.hljs-addition{color:#000;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAALUlEQVQYV2N89+7dfwYk8P79ewZBQUFkIQZGOiu6e/cuiptQHAPl0NtNxAQBAM97Oejj3Dg7AAAAAElFTkSuQmCC)}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/hybrid.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/hybrid.min.css new file mode 100644 index 0000000..f001717 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/hybrid.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#1d1f21;color:#c5c8c6}.hljs span::selection,.hljs::selection{background:#373b41}.hljs span::-moz-selection,.hljs::-moz-selection{background:#373b41}.hljs-name,.hljs-title{color:#f0c674}.hljs-comment,.hljs-meta,.hljs-meta .hljs-keyword{color:#707880}.hljs-deletion,.hljs-link,.hljs-literal,.hljs-number,.hljs-symbol{color:#c66}.hljs-addition,.hljs-doctag,.hljs-regexp,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-string{color:#b5bd68}.hljs-attribute,.hljs-code,.hljs-selector-id{color:#b294bb}.hljs-bullet,.hljs-keyword,.hljs-selector-tag,.hljs-tag{color:#81a2be}.hljs-subst,.hljs-template-tag,.hljs-template-variable,.hljs-variable{color:#8abeb7}.hljs-built_in,.hljs-quote,.hljs-section,.hljs-selector-class,.hljs-type{color:#de935f}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/idea.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/idea.min.css new file mode 100644 index 0000000..faceb8a --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/idea.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#000;background:#fff}.hljs-subst,.hljs-title{font-weight:400;color:#000}.hljs-comment,.hljs-quote{color:grey;font-style:italic}.hljs-meta{color:olive}.hljs-tag{background:#efefef}.hljs-keyword,.hljs-literal,.hljs-name,.hljs-section,.hljs-selector-class,.hljs-selector-id,.hljs-selector-tag,.hljs-type{font-weight:700;color:navy}.hljs-attribute,.hljs-link,.hljs-number,.hljs-regexp{font-weight:700;color:#00f}.hljs-link,.hljs-number,.hljs-regexp{font-weight:400}.hljs-string{color:green;font-weight:700}.hljs-bullet,.hljs-formula,.hljs-symbol{color:#000;background:#d0eded;font-style:italic}.hljs-doctag{text-decoration:underline}.hljs-template-variable,.hljs-variable{color:#660e7a}.hljs-addition{background:#baeeba}.hljs-deletion{background:#ffc8bd}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/intellij-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/intellij-light.min.css new file mode 100644 index 0000000..39e58cf --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/intellij-light.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#000;background:#fff}.hljs-subst,.hljs-title{font-weight:400;color:#000}.hljs-title.function_{color:#7a7a43}.hljs-code,.hljs-comment,.hljs-quote{color:#8c8c8c;font-style:italic}.hljs-meta{color:#9e880d}.hljs-section{color:#871094}.hljs-built_in,.hljs-keyword,.hljs-literal,.hljs-meta .hljs-keyword,.hljs-name,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-selector-pseudo,.hljs-selector-tag,.hljs-symbol,.hljs-template-tag,.hljs-type,.hljs-variable.language_{color:#0033b3}.hljs-attr,.hljs-property{color:#871094}.hljs-attribute{color:#174ad4}.hljs-number{color:#1750eb}.hljs-regexp{color:#264eff}.hljs-link{text-decoration:underline;color:#006dcc}.hljs-meta .hljs-string,.hljs-string{color:#067d17}.hljs-char.escape_{color:#0037a6}.hljs-doctag{text-decoration:underline}.hljs-template-variable{color:#248f8f}.hljs-addition{background:#bee6be}.hljs-deletion{background:#d6d6d6}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/ir-black.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/ir-black.min.css new file mode 100644 index 0000000..07cf43b --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/ir-black.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#000;color:#f8f8f8}.hljs-comment,.hljs-meta,.hljs-quote{color:#7c7c7c}.hljs-keyword,.hljs-name,.hljs-selector-tag,.hljs-tag{color:#96cbfe}.hljs-attribute,.hljs-selector-id{color:#ffffb6}.hljs-addition,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-string{color:#a8ff60}.hljs-subst{color:#daefa3}.hljs-link,.hljs-regexp{color:#e9c062}.hljs-doctag,.hljs-section,.hljs-title,.hljs-type{color:#ffffb6}.hljs-bullet,.hljs-literal,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#c6c5fe}.hljs-deletion,.hljs-number{color:#ff73fd}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/isbl-editor-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/isbl-editor-dark.min.css new file mode 100644 index 0000000..7c913ae --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/isbl-editor-dark.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#404040}.hljs,.hljs-subst{color:#f0f0f0}.hljs-comment{color:#b5b5b5;font-style:italic}.hljs-attribute,.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-name,.hljs-selector-tag{color:#f0f0f0;font-weight:700}.hljs-string{color:#97bf0d}.hljs-deletion,.hljs-number,.hljs-quote,.hljs-selector-class,.hljs-selector-id,.hljs-template-tag,.hljs-type{color:#f0f0f0}.hljs-link,.hljs-regexp,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#e2c696}.hljs-built_in,.hljs-literal{color:#97bf0d;font-weight:700}.hljs-addition,.hljs-bullet,.hljs-code{color:#397300}.hljs-class{color:#ce9d4d;font-weight:700}.hljs-section,.hljs-title{color:#df471e}.hljs-title>.hljs-built_in{color:#81bce9;font-weight:400}.hljs-meta{color:#1f7199}.hljs-meta .hljs-string{color:#4d99bf}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/isbl-editor-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/isbl-editor-light.min.css new file mode 100644 index 0000000..e4e711d --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/isbl-editor-light.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#fff;color:#000}.hljs-subst{color:#000}.hljs-comment{color:#555;font-style:italic}.hljs-attribute,.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-name,.hljs-selector-tag{color:#000;font-weight:700}.hljs-string{color:navy}.hljs-deletion,.hljs-number,.hljs-quote,.hljs-selector-class,.hljs-selector-id,.hljs-template-tag,.hljs-type{color:#000}.hljs-link,.hljs-regexp,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#5e1700}.hljs-built_in,.hljs-literal{color:navy;font-weight:700}.hljs-addition,.hljs-bullet,.hljs-code{color:#397300}.hljs-class{color:#6f1c00;font-weight:700}.hljs-section,.hljs-title{color:#fb2c00}.hljs-title>.hljs-built_in{color:teal;font-weight:400}.hljs-meta{color:#1f7199}.hljs-meta .hljs-string{color:#4d99bf}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/kimbie-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/kimbie-dark.min.css new file mode 100644 index 0000000..42b0bca --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/kimbie-dark.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#221a0f;color:#d3af86}.hljs-comment,.hljs-quote{color:#d6baad}.hljs-meta,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#dc3958}.hljs-built_in,.hljs-deletion,.hljs-link,.hljs-literal,.hljs-number,.hljs-params,.hljs-type{color:#f79a32}.hljs-addition,.hljs-bullet,.hljs-string,.hljs-symbol{color:#889b4a}.hljs-function,.hljs-keyword,.hljs-selector-tag{color:#98676a}.hljs-attribute,.hljs-section,.hljs-title{color:#f06431}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/kimbie-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/kimbie-light.min.css new file mode 100644 index 0000000..fbd637d --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/kimbie-light.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#fbebd4;color:#84613d}.hljs-comment,.hljs-quote{color:#a57a4c}.hljs-meta,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#dc3958}.hljs-built_in,.hljs-deletion,.hljs-link,.hljs-literal,.hljs-number,.hljs-params,.hljs-type{color:#f79a32}.hljs-addition,.hljs-bullet,.hljs-string,.hljs-symbol{color:#889b4a}.hljs-function,.hljs-keyword,.hljs-selector-tag{color:#98676a}.hljs-attribute,.hljs-section,.hljs-title{color:#f06431}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/lightfair.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/lightfair.min.css new file mode 100644 index 0000000..3916ed0 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/lightfair.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#444;background:#fff}.hljs-name{color:#01a3a3}.hljs-meta,.hljs-tag{color:#789}.hljs-comment{color:#888}.hljs-attribute,.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-name,.hljs-selector-tag{font-weight:700}.hljs-deletion,.hljs-number,.hljs-quote,.hljs-selector-class,.hljs-selector-id,.hljs-string,.hljs-template-tag,.hljs-type{color:#4286f4}.hljs-section,.hljs-title{color:#4286f4;font-weight:700}.hljs-link,.hljs-regexp,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#bc6060}.hljs-literal{color:#62bcbc}.hljs-addition,.hljs-built_in,.hljs-bullet,.hljs-code{color:#25c6c6}.hljs-meta .hljs-string{color:#4d99bf}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/lioshi.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/lioshi.min.css new file mode 100644 index 0000000..ab661a6 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/lioshi.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#303030;color:#c5c8c6}.hljs-comment{color:#8d8d8d}.hljs-quote{color:#b3c7d8}.hljs-deletion,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#c66}.hljs-built_in,.hljs-literal,.hljs-number,.hljs-subst .hljs-link,.hljs-type{color:#de935f}.hljs-attribute{color:#f0c674}.hljs-addition,.hljs-bullet,.hljs-params,.hljs-string{color:#b5bd68}.hljs-class,.hljs-function,.hljs-keyword,.hljs-selector-tag{color:#be94bb}.hljs-meta,.hljs-section,.hljs-title{color:#81a2be}.hljs-symbol{color:#dbc4d9}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/magula.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/magula.min.css new file mode 100644 index 0000000..6e09628 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/magula.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background-color:#f4f4f4;color:#000}.hljs-subst{color:#000}.hljs-addition,.hljs-attribute,.hljs-bullet,.hljs-string,.hljs-symbol,.hljs-template-tag,.hljs-template-variable,.hljs-title,.hljs-variable{color:#050}.hljs-comment,.hljs-quote{color:#777}.hljs-link,.hljs-literal,.hljs-number,.hljs-regexp,.hljs-type{color:#800}.hljs-deletion,.hljs-meta{color:#00e}.hljs-built_in,.hljs-doctag,.hljs-keyword,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-tag,.hljs-title{font-weight:700;color:navy}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/mono-blue.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/mono-blue.min.css new file mode 100644 index 0000000..93eacc0 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/mono-blue.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#eaeef3;color:#00193a}.hljs-doctag,.hljs-keyword,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-strong,.hljs-title{font-weight:700}.hljs-comment{color:#738191}.hljs-addition,.hljs-built_in,.hljs-literal,.hljs-name,.hljs-quote,.hljs-section,.hljs-selector-class,.hljs-selector-id,.hljs-string,.hljs-tag,.hljs-title,.hljs-type{color:#0048ab}.hljs-attribute,.hljs-bullet,.hljs-deletion,.hljs-link,.hljs-meta,.hljs-regexp,.hljs-subst,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#4c81c9}.hljs-emphasis{font-style:italic} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/monokai-sublime.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/monokai-sublime.min.css new file mode 100644 index 0000000..2185892 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/monokai-sublime.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#23241f;color:#f8f8f2}.hljs-subst,.hljs-tag{color:#f8f8f2}.hljs-emphasis,.hljs-strong{color:#a8a8a2}.hljs-bullet,.hljs-link,.hljs-literal,.hljs-number,.hljs-quote,.hljs-regexp{color:#ae81ff}.hljs-code,.hljs-section,.hljs-selector-class,.hljs-title{color:#a6e22e}.hljs-strong{font-weight:700}.hljs-emphasis{font-style:italic}.hljs-attr,.hljs-keyword,.hljs-name,.hljs-selector-tag{color:#f92672}.hljs-attribute,.hljs-symbol{color:#66d9ef}.hljs-class .hljs-title,.hljs-params,.hljs-title.class_{color:#f8f8f2}.hljs-addition,.hljs-built_in,.hljs-selector-attr,.hljs-selector-id,.hljs-selector-pseudo,.hljs-string,.hljs-template-variable,.hljs-type,.hljs-variable{color:#e6db74}.hljs-comment,.hljs-deletion,.hljs-meta{color:#75715e} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/monokai.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/monokai.min.css new file mode 100644 index 0000000..165dc46 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/monokai.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#272822;color:#ddd}.hljs-keyword,.hljs-literal,.hljs-name,.hljs-selector-tag,.hljs-strong,.hljs-tag{color:#f92672}.hljs-code{color:#66d9ef}.hljs-attribute,.hljs-link,.hljs-regexp,.hljs-symbol{color:#bf79db}.hljs-addition,.hljs-built_in,.hljs-bullet,.hljs-emphasis,.hljs-section,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-string,.hljs-subst,.hljs-template-tag,.hljs-template-variable,.hljs-title,.hljs-type,.hljs-variable{color:#a6e22e}.hljs-class .hljs-title,.hljs-title.class_{color:#fff}.hljs-comment,.hljs-deletion,.hljs-meta,.hljs-quote{color:#75715e}.hljs-doctag,.hljs-keyword,.hljs-literal,.hljs-section,.hljs-selector-id,.hljs-selector-tag,.hljs-title,.hljs-type{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/night-owl.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/night-owl.min.css new file mode 100644 index 0000000..0511d0d --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/night-owl.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#011627;color:#d6deeb}.hljs-keyword{color:#c792ea;font-style:italic}.hljs-built_in{color:#addb67;font-style:italic}.hljs-type{color:#82aaff}.hljs-literal{color:#ff5874}.hljs-number{color:#f78c6c}.hljs-regexp{color:#5ca7e4}.hljs-string{color:#ecc48d}.hljs-subst{color:#d3423e}.hljs-symbol{color:#82aaff}.hljs-class{color:#ffcb8b}.hljs-function{color:#82aaff}.hljs-title{color:#dcdcaa;font-style:italic}.hljs-params{color:#7fdbca}.hljs-comment{color:#637777;font-style:italic}.hljs-doctag{color:#7fdbca}.hljs-meta,.hljs-meta .hljs-keyword{color:#82aaff}.hljs-meta .hljs-string{color:#ecc48d}.hljs-section{color:#82b1ff}.hljs-attr,.hljs-name,.hljs-tag{color:#7fdbca}.hljs-attribute{color:#80cbc4}.hljs-variable{color:#addb67}.hljs-bullet{color:#d9f5dd}.hljs-code{color:#80cbc4}.hljs-emphasis{color:#c792ea;font-style:italic}.hljs-strong{color:#addb67;font-weight:700}.hljs-formula{color:#c792ea}.hljs-link{color:#ff869a}.hljs-quote{color:#697098;font-style:italic}.hljs-selector-tag{color:#ff6363}.hljs-selector-id{color:#fad430}.hljs-selector-class{color:#addb67;font-style:italic}.hljs-selector-attr,.hljs-selector-pseudo{color:#c792ea;font-style:italic}.hljs-template-tag{color:#c792ea}.hljs-template-variable{color:#addb67}.hljs-addition{color:#addb67ff;font-style:italic}.hljs-deletion{color:#ef535090;font-style:italic} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/nnfx-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/nnfx-dark.min.css new file mode 100644 index 0000000..5f4b2e1 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/nnfx-dark.min.css @@ -0,0 +1,10 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! + Theme: nnfx dark + Description: a theme inspired by Netscape Navigator/Firefox + Author: (c) 2020-2021 Jim Mason <jmason@ibinx.com> + Maintainer: @RocketMan + License: https://creativecommons.org/licenses/by-sa/4.0 CC BY-SA 4.0 + Updated: 2021-05-17 + + @version 1.1.0 +*/.hljs{background:#333;color:#fff}.language-xml .hljs-meta,.language-xml .hljs-meta-string{font-weight:700;font-style:italic;color:#69f}.hljs-comment,.hljs-quote{font-style:italic;color:#9c6}.hljs-built_in,.hljs-keyword,.hljs-name{color:#a7a}.hljs-attr,.hljs-name{font-weight:700}.hljs-string{font-weight:400}.hljs-code,.hljs-link,.hljs-meta .hljs-string,.hljs-number,.hljs-regexp,.hljs-string{color:#bce}.hljs-bullet,.hljs-symbol,.hljs-template-variable,.hljs-title,.hljs-variable{color:#d40}.hljs-class .hljs-title,.hljs-title.class_,.hljs-type{font-weight:700;color:#96c}.hljs-attr,.hljs-function .hljs-title,.hljs-subst,.hljs-tag,.hljs-title.function_{color:#fff}.hljs-formula{background-color:#eee;font-style:italic}.hljs-addition{background-color:#797}.hljs-deletion{background-color:#c99}.hljs-meta{color:#69f}.hljs-section,.hljs-selector-class,.hljs-selector-id,.hljs-selector-pseudo,.hljs-selector-tag{font-weight:700;color:#69f}.hljs-selector-pseudo{font-style:italic}.hljs-doctag,.hljs-strong{font-weight:700}.hljs-emphasis{font-style:italic} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/nnfx-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/nnfx-light.min.css new file mode 100644 index 0000000..e99eb20 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/nnfx-light.min.css @@ -0,0 +1,10 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! + Theme: nnfx light + Description: a theme inspired by Netscape Navigator/Firefox + Author: (c) 2020-2021 Jim Mason <jmason@ibinx.com> + Maintainer: @RocketMan + License: https://creativecommons.org/licenses/by-sa/4.0 CC BY-SA 4.0 + Updated: 2021-05-17 + + @version 1.1.0 +*/.hljs{background:#fff;color:#000}.language-xml .hljs-meta,.language-xml .hljs-meta-string{font-weight:700;font-style:italic;color:#48b}.hljs-comment,.hljs-quote{font-style:italic;color:#070}.hljs-built_in,.hljs-keyword,.hljs-name{color:#808}.hljs-attr,.hljs-name{font-weight:700}.hljs-string{font-weight:400}.hljs-code,.hljs-link,.hljs-meta .hljs-string,.hljs-number,.hljs-regexp,.hljs-string{color:#00f}.hljs-bullet,.hljs-symbol,.hljs-template-variable,.hljs-title,.hljs-variable{color:#f40}.hljs-class .hljs-title,.hljs-title.class_,.hljs-type{font-weight:700;color:#639}.hljs-attr,.hljs-function .hljs-title,.hljs-subst,.hljs-tag,.hljs-title.function_{color:#000}.hljs-formula{background-color:#eee;font-style:italic}.hljs-addition{background-color:#beb}.hljs-deletion{background-color:#fbb}.hljs-meta{color:#269}.hljs-section,.hljs-selector-class,.hljs-selector-id,.hljs-selector-pseudo,.hljs-selector-tag{font-weight:700;color:#48b}.hljs-selector-pseudo{font-style:italic}.hljs-doctag,.hljs-strong{font-weight:700}.hljs-emphasis{font-style:italic} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/nord.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/nord.min.css new file mode 100644 index 0000000..82ff2a4 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/nord.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#2e3440}.hljs,.hljs-subst{color:#d8dee9}.hljs-selector-tag{color:#81a1c1}.hljs-selector-id{color:#8fbcbb;font-weight:700}.hljs-selector-attr,.hljs-selector-class{color:#8fbcbb}.hljs-property,.hljs-selector-pseudo{color:#88c0d0}.hljs-addition{background-color:rgba(163,190,140,.5)}.hljs-deletion{background-color:rgba(191,97,106,.5)}.hljs-built_in,.hljs-class,.hljs-type{color:#8fbcbb}.hljs-function,.hljs-function>.hljs-title,.hljs-title.hljs-function{color:#88c0d0}.hljs-keyword,.hljs-literal,.hljs-symbol{color:#81a1c1}.hljs-number{color:#b48ead}.hljs-regexp{color:#ebcb8b}.hljs-string{color:#a3be8c}.hljs-title{color:#8fbcbb}.hljs-params{color:#d8dee9}.hljs-bullet{color:#81a1c1}.hljs-code{color:#8fbcbb}.hljs-emphasis{font-style:italic}.hljs-formula{color:#8fbcbb}.hljs-strong{font-weight:700}.hljs-link:hover{text-decoration:underline}.hljs-comment,.hljs-quote{color:#4c566a}.hljs-doctag{color:#8fbcbb}.hljs-meta,.hljs-meta .hljs-keyword{color:#5e81ac}.hljs-meta .hljs-string{color:#a3be8c}.hljs-attr{color:#8fbcbb}.hljs-attribute{color:#d8dee9}.hljs-name{color:#81a1c1}.hljs-section{color:#88c0d0}.hljs-tag{color:#81a1c1}.hljs-template-variable,.hljs-variable{color:#d8dee9}.hljs-template-tag{color:#5e81ac}.language-abnf .hljs-attribute{color:#88c0d0}.language-abnf .hljs-symbol{color:#ebcb8b}.language-apache .hljs-attribute{color:#88c0d0}.language-apache .hljs-section{color:#81a1c1}.language-arduino .hljs-built_in{color:#88c0d0}.language-aspectj .hljs-meta{color:#d08770}.language-aspectj>.hljs-title{color:#88c0d0}.language-bnf .hljs-attribute{color:#8fbcbb}.language-clojure .hljs-name{color:#88c0d0}.language-clojure .hljs-symbol{color:#ebcb8b}.language-coq .hljs-built_in{color:#88c0d0}.language-cpp .hljs-meta .hljs-string{color:#8fbcbb}.language-css .hljs-built_in{color:#88c0d0}.language-css .hljs-keyword{color:#d08770}.language-diff .hljs-meta,.language-ebnf .hljs-attribute{color:#8fbcbb}.language-glsl .hljs-built_in{color:#88c0d0}.language-groovy .hljs-meta:not(:first-child),.language-haxe .hljs-meta,.language-java .hljs-meta{color:#d08770}.language-ldif .hljs-attribute{color:#8fbcbb}.language-lisp .hljs-name,.language-lua .hljs-built_in,.language-moonscript .hljs-built_in,.language-nginx .hljs-attribute{color:#88c0d0}.language-nginx .hljs-section{color:#5e81ac}.language-pf .hljs-built_in,.language-processing .hljs-built_in{color:#88c0d0}.language-scss .hljs-keyword,.language-stylus .hljs-keyword{color:#81a1c1}.language-swift .hljs-meta{color:#d08770}.language-vim .hljs-built_in{color:#88c0d0;font-style:italic}.language-yaml .hljs-meta{color:#d08770} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/obsidian.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/obsidian.min.css new file mode 100644 index 0000000..6934c8b --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/obsidian.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#e0e2e4;background:#282b2e}.hljs-keyword,.hljs-literal,.hljs-selector-id,.hljs-selector-tag{color:#93c763}.hljs-number{color:#ffcd22}.hljs-attribute{color:#668bb0}.hljs-link,.hljs-regexp{color:#d39745}.hljs-meta{color:#557182}.hljs-addition,.hljs-built_in,.hljs-bullet,.hljs-emphasis,.hljs-name,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-subst,.hljs-tag,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable{color:#8cbbad}.hljs-string,.hljs-symbol{color:#ec7600}.hljs-comment,.hljs-deletion,.hljs-quote{color:#818e96}.hljs-selector-class{color:#a082bd}.hljs-doctag,.hljs-keyword,.hljs-literal,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-strong,.hljs-title,.hljs-type{font-weight:700}.hljs-class .hljs-title,.hljs-code,.hljs-section,.hljs-title.class_{color:#fff} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/panda-syntax-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/panda-syntax-dark.min.css new file mode 100644 index 0000000..174b824 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/panda-syntax-dark.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#e6e6e6;background:#2a2c2d}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline}.hljs-comment,.hljs-quote{color:#bbb;font-style:italic}.hljs-params{color:#bbb}.hljs-attr,.hljs-punctuation{color:#e6e6e6}.hljs-meta,.hljs-name,.hljs-selector-tag{color:#ff4b82}.hljs-char.escape_,.hljs-operator{color:#b084eb}.hljs-deletion,.hljs-keyword{color:#ff75b5}.hljs-regexp,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-variable.language_{color:#ff9ac1}.hljs-code,.hljs-formula,.hljs-property,.hljs-section,.hljs-subst,.hljs-title.function_{color:#45a9f9}.hljs-addition,.hljs-bullet,.hljs-meta .hljs-string,.hljs-selector-class,.hljs-string,.hljs-symbol,.hljs-title.class_,.hljs-title.class_.inherited__{color:#19f9d8}.hljs-attribute,.hljs-built_in,.hljs-doctag,.hljs-link,.hljs-literal,.hljs-meta .hljs-keyword,.hljs-number,.hljs-punctuation,.hljs-selector-id,.hljs-tag,.hljs-template-tag,.hljs-template-variable,.hljs-title,.hljs-type,.hljs-variable{color:#ffb86c} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/panda-syntax-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/panda-syntax-light.min.css new file mode 100644 index 0000000..7dfe14e --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/panda-syntax-light.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#2a2c2d;background:#e6e6e6}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline}.hljs-comment,.hljs-quote{color:#676b79;font-style:italic}.hljs-params{color:#676b79}.hljs-attr,.hljs-punctuation{color:#2a2c2d}.hljs-char.escape_,.hljs-meta,.hljs-name,.hljs-operator,.hljs-selector-tag{color:#c56200}.hljs-deletion,.hljs-keyword{color:#d92792}.hljs-regexp,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-variable.language_{color:#cc5e91}.hljs-code,.hljs-formula,.hljs-property,.hljs-section,.hljs-subst,.hljs-title.function_{color:#3787c7}.hljs-addition,.hljs-bullet,.hljs-meta .hljs-string,.hljs-selector-class,.hljs-string,.hljs-symbol,.hljs-title.class_,.hljs-title.class_.inherited__{color:#0d7d6c}.hljs-attribute,.hljs-built_in,.hljs-doctag,.hljs-link,.hljs-literal,.hljs-meta .hljs-keyword,.hljs-number,.hljs-selector-id,.hljs-tag,.hljs-template-tag,.hljs-template-variable,.hljs-title,.hljs-type,.hljs-variable{color:#7641bb} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/paraiso-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/paraiso-dark.min.css new file mode 100644 index 0000000..fda402b --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/paraiso-dark.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#2f1e2e;color:#a39e9b}.hljs-comment,.hljs-quote{color:#8d8687}.hljs-link,.hljs-meta,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#ef6155}.hljs-built_in,.hljs-deletion,.hljs-literal,.hljs-number,.hljs-params,.hljs-type{color:#f99b15}.hljs-attribute,.hljs-section,.hljs-title{color:#fec418}.hljs-addition,.hljs-bullet,.hljs-string,.hljs-symbol{color:#48b685}.hljs-keyword,.hljs-selector-tag{color:#815ba4}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/paraiso-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/paraiso-light.min.css new file mode 100644 index 0000000..a7cb5c9 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/paraiso-light.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#e7e9db;color:#4f424c}.hljs-comment,.hljs-quote{color:#776e71}.hljs-link,.hljs-meta,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#ef6155}.hljs-built_in,.hljs-deletion,.hljs-literal,.hljs-number,.hljs-params,.hljs-type{color:#f99b15}.hljs-attribute,.hljs-section,.hljs-title{color:#fec418}.hljs-addition,.hljs-bullet,.hljs-string,.hljs-symbol{color:#48b685}.hljs-keyword,.hljs-selector-tag{color:#815ba4}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/pojoaque.jpg b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/pojoaque.jpg new file mode 100644 index 0000000000000000000000000000000000000000..9c07d4ab40b6d77e90ff69f0012bcd33b21d31c3 GIT binary patch literal 1186 zcmZXSe^8Tk9LK-kXFs3)f@f?)Cddzw3v4wdZyXQ;4x3=;Ja*N#%n9ik!UGmt9H3k0 zJST|5jOc(ID$FQt3C?jQZBws#kXolO1lg9Pba9BB=Q+UEBX!nY@6Uhl&+ofe$Q$y5 z@ci`~)&qzDP(lO<O#w_=Ra{yPARq$(#Dp~sI5{Qw_V+=FlW<^Y6zm5ml}e>iQ5p?p z(`j^e7!yUAVHk%K#^GQXn?s0=VLYCI$HRoe=xCuZ>A6<E5Jc&8l!3As3|1J6!wQRd z-V(uI9KaVwV1y!skwSq$AdHNO5ej2s5)+pvCcfxj8FB)Q4jMoM2_^spgCq=wu7Iro zLP#9>A3@sxEP#XqNFpIb=0)KQ#Nss_tD17;m4@$JKL;LR|K|QF3f%!L5+s(9Ft8SQ zG|~pGp<w4_&QCo@xn1P1M0j6PuuaUUx?w)Q15Ksdv-E1Uyr8jff%m|S;O0KGX4?5u zcY>EGFW5Z|OA)-O@mNHy-g@7m8JTf?kl@vUKBGmw)Y*9sDRNr3PN!IKefWaydTe1D zjzpyzPnD3}hBNaS4aFX7=0&~I*<I1gl);;MHu4&K1%I;}H}}pdeV}msD&8ZuzDzH< zjs%}^eZx9tj&Cj4Rem!m7?W9-;wPH|CTw__Q8b>Hu7#4au@qVBglH#-m;QFOx_`=j z{EqRY#Eh*yoWP^pa4H>8GH{rO?!_+xwL0(k4yL^D%^nBkJ*UI;Lx;ped8d|f*S_s@ z3~ilcRC(&NT#9Gn#UD;o^EYSMXDMf%XcUi3>;WXXD-QX3P9wMy<Tt*(wEUr;=}T08 zwr4iQLXQt-4U$zHxQBaftQf(Yp<ET%udI>P7eA&RS{)h5{??W3^Rq=goFJ>?lA~J- zdYe>!xvYLW*fPT0RK7wsJRg^?x#W1*GP9<C`ZfC?$$I3ZovN#F=y~=x<iwqpGc&Fa z!>_f`6t>QD_X>0d!owyN>nO2?U5}|3?hX_UZYT@^>S!9eB~bZ9U`q;`U)@L670o1g z`Hd<uZEy9yjY6-c(?%?S4=3`QI_=xfg529VWEEJk$>}h<_WR<Zc1@js5HPhhe{UnV z+qpwizwrJv_3wqH(KR=Zp2|HqVCv6SNX`wV`OPQRXJj)}%e$t=$MRdar)ZmEr9R!$ z<l(H`+bxXKz73<WvNG=#;y(f(W{xUg<V#f`{pr)>vUc|n*%v4Hbb-4tJD40iyF^<n zrd(ZUzA$o-V2Gj0TB0p$%WvWRao2gif1>q%g*&!6>hkYDvi-<Lx9G?TP4>{Uc4yTM zzcthN4Z{ka!+F_KzYV#yWi;c^X^q6g`pD8cp?$Kl?hCz0s^a|mH%P!CF%*<6k^~i` zT5Mi-t5-frUcHkk^Qh}+N)Kz1&Bi95`oNc|quI>tUi~BY>xcF9(%tv2i{G6kE9*q~ qCoAGl20`)w0rdgp9H%Q=M5|p`hOhFz6$I%Y&ncY8>c?7PXyh+SL&XXJ literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/pojoaque.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/pojoaque.min.css new file mode 100644 index 0000000..2a1f8f0 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/pojoaque.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#dccf8f;background:url(./pojoaque.jpg) left top #181914}.hljs-comment,.hljs-quote{color:#586e75;font-style:italic}.hljs-addition,.hljs-keyword,.hljs-literal,.hljs-selector-tag{color:#b64926}.hljs-doctag,.hljs-number,.hljs-regexp,.hljs-string{color:#468966}.hljs-built_in,.hljs-name,.hljs-section,.hljs-title{color:#ffb03b}.hljs-class .hljs-title,.hljs-tag,.hljs-template-variable,.hljs-title.class_,.hljs-type,.hljs-variable{color:#b58900}.hljs-attribute{color:#b89859}.hljs-bullet,.hljs-link,.hljs-meta,.hljs-subst,.hljs-symbol{color:#cb4b16}.hljs-deletion{color:#dc322f}.hljs-selector-class,.hljs-selector-id{color:#d3a60c}.hljs-formula{background:#073642}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/purebasic.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/purebasic.min.css new file mode 100644 index 0000000..b9c0f29 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/purebasic.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#ffffdf}.hljs,.hljs-attr,.hljs-function,.hljs-name,.hljs-number,.hljs-params,.hljs-subst,.hljs-type{color:#000}.hljs-addition,.hljs-comment,.hljs-regexp,.hljs-section,.hljs-selector-pseudo{color:#0aa}.hljs-built_in,.hljs-class,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-selector-class{color:#066;font-weight:700}.hljs-code,.hljs-tag,.hljs-title,.hljs-variable{color:#066}.hljs-selector-attr,.hljs-string{color:#0080ff}.hljs-attribute,.hljs-deletion,.hljs-link,.hljs-symbol{color:#924b72}.hljs-literal,.hljs-meta,.hljs-selector-id{color:#924b72;font-weight:700}.hljs-name,.hljs-strong{font-weight:700}.hljs-emphasis{font-style:italic} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/qtcreator-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/qtcreator-dark.min.css new file mode 100644 index 0000000..d081838 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/qtcreator-dark.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#aaa;background:#000}.hljs-emphasis,.hljs-strong{color:#a8a8a2}.hljs-bullet,.hljs-literal,.hljs-number,.hljs-quote,.hljs-regexp{color:#f5f}.hljs-code .hljs-selector-class{color:#aaf}.hljs-emphasis,.hljs-stronge,.hljs-type{font-style:italic}.hljs-function,.hljs-keyword,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-symbol{color:#ff5}.hljs-subst,.hljs-tag,.hljs-title{color:#aaa}.hljs-attribute{color:#f55}.hljs-class .hljs-title,.hljs-params,.hljs-title.class_,.hljs-variable{color:#88f}.hljs-addition,.hljs-built_in,.hljs-link,.hljs-selector-attr,.hljs-selector-id,.hljs-selector-pseudo,.hljs-string,.hljs-template-tag,.hljs-template-variable,.hljs-type{color:#f5f}.hljs-comment,.hljs-deletion,.hljs-meta{color:#5ff} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/qtcreator-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/qtcreator-light.min.css new file mode 100644 index 0000000..6d9dfa8 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/qtcreator-light.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#000;background:#fff}.hljs-emphasis,.hljs-strong{color:#000}.hljs-bullet,.hljs-literal,.hljs-number,.hljs-quote,.hljs-regexp{color:navy}.hljs-code .hljs-selector-class{color:purple}.hljs-emphasis,.hljs-stronge,.hljs-type{font-style:italic}.hljs-function,.hljs-keyword,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-symbol{color:olive}.hljs-subst,.hljs-tag,.hljs-title{color:#000}.hljs-attribute{color:maroon}.hljs-class .hljs-title,.hljs-params,.hljs-title.class_,.hljs-variable{color:#0055af}.hljs-addition,.hljs-built_in,.hljs-comment,.hljs-deletion,.hljs-link,.hljs-meta,.hljs-selector-attr,.hljs-selector-id,.hljs-selector-pseudo,.hljs-string,.hljs-template-tag,.hljs-template-variable,.hljs-type{color:green} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/rainbow.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/rainbow.min.css new file mode 100644 index 0000000..2249560 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/rainbow.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#474949;color:#d1d9e1}.hljs-comment,.hljs-quote{color:#969896;font-style:italic}.hljs-addition,.hljs-keyword,.hljs-literal,.hljs-selector-tag,.hljs-type{color:#c9c}.hljs-number,.hljs-selector-attr,.hljs-selector-pseudo{color:#f99157}.hljs-doctag,.hljs-regexp,.hljs-string{color:#8abeb7}.hljs-built_in,.hljs-name,.hljs-section,.hljs-title{color:#b5bd68}.hljs-class .hljs-title,.hljs-selector-id,.hljs-template-variable,.hljs-title.class_,.hljs-variable{color:#fc6}.hljs-name,.hljs-section,.hljs-strong{font-weight:700}.hljs-bullet,.hljs-link,.hljs-meta,.hljs-subst,.hljs-symbol{color:#f99157}.hljs-deletion{color:#dc322f}.hljs-formula{background:#eee8d5}.hljs-attr,.hljs-attribute{color:#81a2be}.hljs-emphasis{font-style:italic} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/routeros.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/routeros.min.css new file mode 100644 index 0000000..40fc168 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/routeros.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#444;background:#f0f0f0}.hljs-subst{color:#444}.hljs-comment{color:#888}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-name,.hljs-selector-tag{font-weight:700}.hljs-attribute{color:#0e9a00}.hljs-function{color:#99069a}.hljs-deletion,.hljs-number,.hljs-quote,.hljs-selector-class,.hljs-selector-id,.hljs-string,.hljs-template-tag,.hljs-type{color:#800}.hljs-section,.hljs-title{color:#800;font-weight:700}.hljs-link,.hljs-regexp,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#bc6060}.hljs-literal{color:#78a960}.hljs-addition,.hljs-built_in,.hljs-bullet,.hljs-code{color:#0c9a9a}.hljs-meta{color:#1f7199}.hljs-meta .hljs-string{color:#4d99bf}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/school-book.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/school-book.min.css new file mode 100644 index 0000000..453398d --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/school-book.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#3e5915;background:#f6f5b2}.hljs-keyword,.hljs-literal,.hljs-selector-tag{color:#059}.hljs-subst{color:#3e5915}.hljs-addition,.hljs-attribute,.hljs-built_in,.hljs-bullet,.hljs-link,.hljs-section,.hljs-string,.hljs-symbol,.hljs-template-tag,.hljs-template-variable,.hljs-title,.hljs-type,.hljs-variable{color:#2c009f}.hljs-comment,.hljs-deletion,.hljs-meta,.hljs-quote{color:#e60415}.hljs-doctag,.hljs-keyword,.hljs-literal,.hljs-name,.hljs-section,.hljs-selector-id,.hljs-selector-tag,.hljs-strong,.hljs-title,.hljs-type{font-weight:700}.hljs-emphasis{font-style:italic} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/shades-of-purple.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/shades-of-purple.min.css new file mode 100644 index 0000000..f5c9696 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/shades-of-purple.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#2d2b57;color:#e3dfff;font-weight:400}.hljs-subst{color:#e3dfff}.hljs-title{color:#fad000;font-weight:400}.hljs-name{color:#a1feff}.hljs-tag{color:#fff}.hljs-attr{color:#f8d000;font-style:italic}.hljs-built_in,.hljs-keyword,.hljs-section,.hljs-selector-tag{color:#fb9e00}.hljs-addition,.hljs-attribute,.hljs-bullet,.hljs-code,.hljs-deletion,.hljs-quote,.hljs-regexp,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-pseudo,.hljs-string,.hljs-symbol,.hljs-template-tag{color:#4cd213}.hljs-meta,.hljs-meta .hljs-string{color:#fb9e00}.hljs-comment{color:#ac65ff}.hljs-keyword,.hljs-literal,.hljs-name,.hljs-selector-tag,.hljs-strong{font-weight:400}.hljs-literal,.hljs-number{color:#fa658d}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/srcery.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/srcery.min.css new file mode 100644 index 0000000..c5d6673 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/srcery.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#1c1b19;color:#fce8c3}.hljs-literal,.hljs-quote,.hljs-subst{color:#fce8c3}.hljs-symbol,.hljs-type{color:#68a8e4}.hljs-deletion,.hljs-keyword{color:#ef2f27}.hljs-attribute,.hljs-function,.hljs-name,.hljs-section,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-selector-pseudo,.hljs-title{color:#fbb829}.hljs-class,.hljs-code,.hljs-property,.hljs-template-variable,.hljs-variable{color:#0aaeb3}.hljs-addition,.hljs-bullet,.hljs-regexp,.hljs-string{color:#98bc37}.hljs-built_in,.hljs-params{color:#ff5c8f}.hljs-selector-tag,.hljs-template-tag{color:#2c78bf}.hljs-comment,.hljs-link,.hljs-meta,.hljs-number{color:#918175}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/stackoverflow-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/stackoverflow-dark.min.css new file mode 100644 index 0000000..144f683 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/stackoverflow-dark.min.css @@ -0,0 +1,13 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! + Theme: StackOverflow Dark + Description: Dark theme as used on stackoverflow.com + Author: stackoverflow.com + Maintainer: @Hirse + Website: https://github.com/StackExchange/Stacks + License: MIT + Updated: 2021-05-15 + + Updated for @stackoverflow/stacks v0.64.0 + Code Blocks: /blob/v0.64.0/lib/css/components/_stacks-code-blocks.less + Colors: /blob/v0.64.0/lib/css/exports/_stacks-constants-colors.less +*/.hljs{color:#fff;background:#1c1b1b}.hljs-subst{color:#fff}.hljs-comment{color:#999}.hljs-attr,.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-section,.hljs-selector-tag{color:#88aece}.hljs-attribute{color:#c59bc1}.hljs-name,.hljs-number,.hljs-quote,.hljs-selector-id,.hljs-template-tag,.hljs-type{color:#f08d49}.hljs-selector-class{color:#88aece}.hljs-link,.hljs-regexp,.hljs-selector-attr,.hljs-string,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#b5bd68}.hljs-meta,.hljs-selector-pseudo{color:#88aece}.hljs-built_in,.hljs-literal,.hljs-title{color:#f08d49}.hljs-bullet,.hljs-code{color:#ccc}.hljs-meta .hljs-string{color:#b5bd68}.hljs-deletion{color:#de7176}.hljs-addition{color:#76c490}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/stackoverflow-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/stackoverflow-light.min.css new file mode 100644 index 0000000..11ca6f0 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/stackoverflow-light.min.css @@ -0,0 +1,13 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! + Theme: StackOverflow Light + Description: Light theme as used on stackoverflow.com + Author: stackoverflow.com + Maintainer: @Hirse + Website: https://github.com/StackExchange/Stacks + License: MIT + Updated: 2021-05-15 + + Updated for @stackoverflow/stacks v0.64.0 + Code Blocks: /blob/v0.64.0/lib/css/components/_stacks-code-blocks.less + Colors: /blob/v0.64.0/lib/css/exports/_stacks-constants-colors.less +*/.hljs{color:#2f3337;background:#f6f6f6}.hljs-subst{color:#2f3337}.hljs-comment{color:#656e77}.hljs-attr,.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-section,.hljs-selector-tag{color:#015692}.hljs-attribute{color:#803378}.hljs-name,.hljs-number,.hljs-quote,.hljs-selector-id,.hljs-template-tag,.hljs-type{color:#b75501}.hljs-selector-class{color:#015692}.hljs-link,.hljs-regexp,.hljs-selector-attr,.hljs-string,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#54790d}.hljs-meta,.hljs-selector-pseudo{color:#015692}.hljs-built_in,.hljs-literal,.hljs-title{color:#b75501}.hljs-bullet,.hljs-code{color:#535a60}.hljs-meta .hljs-string{color:#54790d}.hljs-deletion{color:#c02d2e}.hljs-addition{color:#2f6f44}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/sunburst.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/sunburst.min.css new file mode 100644 index 0000000..6a15c87 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/sunburst.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#000;color:#f8f8f8}.hljs-comment,.hljs-quote{color:#aeaeae;font-style:italic}.hljs-keyword,.hljs-selector-tag,.hljs-type{color:#e28964}.hljs-string{color:#65b042}.hljs-subst{color:#daefa3}.hljs-link,.hljs-regexp{color:#e9c062}.hljs-name,.hljs-section,.hljs-tag,.hljs-title{color:#89bdff}.hljs-class .hljs-title,.hljs-doctag,.hljs-title.class_{text-decoration:underline}.hljs-bullet,.hljs-number,.hljs-symbol{color:#3387cc}.hljs-params,.hljs-template-variable,.hljs-variable{color:#3e87e3}.hljs-attribute{color:#cda869}.hljs-meta{color:#8996a8}.hljs-formula{background-color:#0e2231;color:#f8f8f8;font-style:italic}.hljs-addition{background-color:#253b22;color:#f8f8f8}.hljs-deletion{background-color:#420e09;color:#f8f8f8}.hljs-selector-class{color:#9b703f}.hljs-selector-id{color:#8b98ab}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/tokyo-night-dark.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/tokyo-night-dark.min.css new file mode 100644 index 0000000..7cbad4d --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/tokyo-night-dark.min.css @@ -0,0 +1,8 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! + Theme: Tokyo-night-Dark + origin: https://github.com/enkia/tokyo-night-vscode-theme + Description: Original highlight.js style + Author: (c) Henri Vandersleyen <hvandersleyen@gmail.com> + License: see project LICENSE + Touched: 2022 +*/.hljs-comment,.hljs-meta{color:#565f89}.hljs-deletion,.hljs-doctag,.hljs-regexp,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-selector-pseudo,.hljs-tag,.hljs-template-tag,.hljs-variable.language_{color:#f7768e}.hljs-link,.hljs-literal,.hljs-number,.hljs-params,.hljs-template-variable,.hljs-type,.hljs-variable{color:#ff9e64}.hljs-attribute,.hljs-built_in{color:#e0af68}.hljs-keyword,.hljs-property,.hljs-subst,.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#7dcfff}.hljs-selector-tag{color:#73daca}.hljs-addition,.hljs-bullet,.hljs-quote,.hljs-string,.hljs-symbol{color:#9ece6a}.hljs-code,.hljs-formula,.hljs-section{color:#7aa2f7}.hljs-attr,.hljs-char.escape_,.hljs-keyword,.hljs-name,.hljs-operator{color:#bb9af7}.hljs-punctuation{color:#c0caf5}.hljs{background:#1a1b26;color:#9aa5ce}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/tokyo-night-light.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/tokyo-night-light.min.css new file mode 100644 index 0000000..89b0261 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/tokyo-night-light.min.css @@ -0,0 +1,8 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*! + Theme: Tokyo-night-light + origin: https://github.com/enkia/tokyo-night-vscode-theme + Description: Original highlight.js style + Author: (c) Henri Vandersleyen <hvandersleyen@gmail.com> + License: see project LICENSE + Touched: 2022 +*/.hljs-comment,.hljs-meta{color:#9699a3}.hljs-deletion,.hljs-doctag,.hljs-regexp,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-selector-pseudo,.hljs-tag,.hljs-template-tag,.hljs-variable.language_{color:#8c4351}.hljs-link,.hljs-literal,.hljs-number,.hljs-params,.hljs-template-variable,.hljs-type,.hljs-variable{color:#965027}.hljs-attribute,.hljs-built_in{color:#8f5e15}.hljs-keyword,.hljs-property,.hljs-subst,.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#0f4b6e}.hljs-selector-tag{color:#33635c}.hljs-addition,.hljs-bullet,.hljs-quote,.hljs-string,.hljs-symbol{color:#485e30}.hljs-code,.hljs-formula,.hljs-section{color:#34548a}.hljs-attr,.hljs-char.escape_,.hljs-keyword,.hljs-name,.hljs-operator{color:#5a4a78}.hljs-punctuation{color:#343b58}.hljs{background:#d5d6db;color:#565a6e}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/tomorrow-night-blue.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/tomorrow-night-blue.min.css new file mode 100644 index 0000000..60f0225 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/tomorrow-night-blue.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs-comment,.hljs-quote{color:#7285b7}.hljs-deletion,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#ff9da4}.hljs-built_in,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-params,.hljs-type{color:#ffc58f}.hljs-attribute{color:#ffeead}.hljs-addition,.hljs-bullet,.hljs-string,.hljs-symbol{color:#d1f1a9}.hljs-section,.hljs-title{color:#bbdaff}.hljs-keyword,.hljs-selector-tag{color:#ebbbff}.hljs{background:#002451;color:#fff}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/tomorrow-night-bright.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/tomorrow-night-bright.min.css new file mode 100644 index 0000000..796316a --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/tomorrow-night-bright.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs-comment,.hljs-quote{color:#969896}.hljs-deletion,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#d54e53}.hljs-built_in,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-params,.hljs-type{color:#e78c45}.hljs-attribute{color:#e7c547}.hljs-addition,.hljs-bullet,.hljs-string,.hljs-symbol{color:#b9ca4a}.hljs-section,.hljs-title{color:#7aa6da}.hljs-keyword,.hljs-selector-tag{color:#c397d8}.hljs{background:#000;color:#eaeaea}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/vs.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/vs.min.css new file mode 100644 index 0000000..3e7f00c --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/vs.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#fff;color:#000}.hljs-comment,.hljs-quote,.hljs-variable{color:green}.hljs-built_in,.hljs-keyword,.hljs-name,.hljs-selector-tag,.hljs-tag{color:#00f}.hljs-addition,.hljs-attribute,.hljs-literal,.hljs-section,.hljs-string,.hljs-template-tag,.hljs-template-variable,.hljs-title,.hljs-type{color:#a31515}.hljs-deletion,.hljs-meta,.hljs-selector-attr,.hljs-selector-pseudo{color:#2b91af}.hljs-doctag{color:grey}.hljs-attr{color:red}.hljs-bullet,.hljs-link,.hljs-symbol{color:#00b0e8}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/vs2015.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/vs2015.min.css new file mode 100644 index 0000000..f26d746 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/vs2015.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#1e1e1e;color:#dcdcdc}.hljs-keyword,.hljs-literal,.hljs-name,.hljs-symbol{color:#569cd6}.hljs-link{color:#569cd6;text-decoration:underline}.hljs-built_in,.hljs-type{color:#4ec9b0}.hljs-class,.hljs-number{color:#b8d7a3}.hljs-meta .hljs-string,.hljs-string{color:#d69d85}.hljs-regexp,.hljs-template-tag{color:#9a5334}.hljs-formula,.hljs-function,.hljs-params,.hljs-subst,.hljs-title{color:#dcdcdc}.hljs-comment,.hljs-quote{color:#57a64a;font-style:italic}.hljs-doctag{color:#608b4e}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-tag{color:#9b9b9b}.hljs-template-variable,.hljs-variable{color:#bd63c5}.hljs-attr,.hljs-attribute{color:#9cdcfe}.hljs-section{color:gold}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-bullet,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-selector-pseudo,.hljs-selector-tag{color:#d7ba7d}.hljs-addition{background-color:#144212;display:inline-block;width:100%}.hljs-deletion{background-color:#600;display:inline-block;width:100%} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/xcode.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/xcode.min.css new file mode 100644 index 0000000..3938f79 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/xcode.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#fff;color:#000}.xml .hljs-meta{color:silver}.hljs-comment,.hljs-quote{color:#007400}.hljs-attribute,.hljs-keyword,.hljs-literal,.hljs-name,.hljs-selector-tag,.hljs-tag{color:#aa0d91}.hljs-template-variable,.hljs-variable{color:#3f6e74}.hljs-code,.hljs-meta .hljs-string,.hljs-string{color:#c41a16}.hljs-link,.hljs-regexp{color:#0e0eff}.hljs-bullet,.hljs-number,.hljs-symbol,.hljs-title{color:#1c00cf}.hljs-meta,.hljs-section{color:#643820}.hljs-built_in,.hljs-class .hljs-title,.hljs-params,.hljs-title.class_,.hljs-type{color:#5c2699}.hljs-attr{color:#836c28}.hljs-subst{color:#000}.hljs-formula{background-color:#eee;font-style:italic}.hljs-addition{background-color:#baeeba}.hljs-deletion{background-color:#ffc8bd}.hljs-selector-class,.hljs-selector-id{color:#9b703f}.hljs-doctag,.hljs-strong{font-weight:700}.hljs-emphasis{font-style:italic} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/xt256.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/xt256.min.css new file mode 100644 index 0000000..f013c58 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/styles/xt256.min.css @@ -0,0 +1 @@ +pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#eaeaea;background:#000}.hljs-subst{color:#eaeaea}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-type{color:#eaeaea}.hljs-params{color:#da0000}.hljs-literal,.hljs-name,.hljs-number{color:red;font-weight:bolder}.hljs-comment{color:#969896}.hljs-quote,.hljs-selector-id{color:#0ff}.hljs-template-variable,.hljs-title,.hljs-variable{color:#0ff;font-weight:700}.hljs-keyword,.hljs-selector-class,.hljs-symbol{color:#fff000}.hljs-bullet,.hljs-string{color:#0f0}.hljs-section,.hljs-tag{color:#000fff}.hljs-selector-tag{color:#000fff;font-weight:700}.hljs-attribute,.hljs-built_in,.hljs-link,.hljs-regexp{color:#f0f}.hljs-meta{color:#fff;font-weight:bolder} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/third-languages.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/third-languages.js new file mode 100644 index 0000000..76216aa --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/highlight.js/third-languages.js @@ -0,0 +1,135 @@ +// https://cdn.jsdelivr.net/npm/highlightjs-solidity@2.0.5/dist/yul.min.js +hljs.registerLanguage("yul",(()=>{"use strict";function e(){try{return!0 +}catch(e){return!1}} + var a=/-?(\b0[xX]([a-fA-F0-9]_?)*[a-fA-F0-9]|(\b[1-9](_?\d)*(\.((\d_?)*\d)?)?|\.\d(_?\d)*)([eE][-+]?\d(_?\d)*)?|\b0)(?!\w|\$)/ + ;e()&&(a=a.source.replace(/\\b/g,"(?<!\\$)\\b"));var s={className:"number", + begin:a,relevance:0},t={ + keyword:"assembly let function if switch case default for leave break continue u256 jump jumpi stop return revert selfdestruct invalid", + built_in:"add sub mul div sdiv mod smod exp not lt gt slt sgt eq iszero and or xor byte shl shr sar addmod mulmod signextend keccak256 pc pop dup1 dup2 dup3 dup4 dup5 dup6 dup7 dup8 dup9 dup10 dup11 dup12 dup13 dup14 dup15 dup16 swap1 swap2 swap3 swap4 swap5 swap6 swap7 swap8 swap9 swap10 swap11 swap12 swap13 swap14 swap15 swap16 mload mstore mstore8 sload sstore msize gas address balance selfbalance caller callvalue calldataload calldatasize calldatacopy codesize codecopy extcodesize extcodecopy returndatasize returndatacopy extcodehash create create2 call callcode delegatecall staticcall log0 log1 log2 log3 log4 chainid origin gasprice basefee blockhash coinbase timestamp number difficulty gaslimit", + literal:"true false"},i={className:"string", + begin:/\bhex'(([0-9a-fA-F]{2}_?)*[0-9a-fA-F]{2})?'/},l={className:"string", + begin:/\bhex"(([0-9a-fA-F]{2}_?)*[0-9a-fA-F]{2})?"/};function d(e){ + return e.inherit(e.APOS_STRING_MODE,{begin:/(\bunicode)?'/})}function r(e){ + return e.inherit(e.QUOTE_STRING_MODE,{begin:/(\bunicode)?"/})}var n={ + SOL_ASSEMBLY_KEYWORDS:t,baseAssembly:e=>{ + var a=d(e),n=r(e),o=/[A-Za-z_$][A-Za-z_$0-9.]*/,c=e.inherit(e.TITLE_MODE,{ + begin:/[A-Za-z$_][0-9A-Za-z$_]*/,lexemes:o,keywords:t}),u={className:"params", + begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,lexemes:o,keywords:t, + contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,a,n,s]},b={ + className:"operator",begin:/:=|->/};return{keywords:t,lexemes:o, + contains:[a,n,i,l,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,s,b,{ + className:"function",lexemes:o,beginKeywords:"function",end:"{",excludeEnd:!0, + contains:[c,u,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,b]}]}}, + solAposStringMode:d,solQuoteStringMode:r,HEX_APOS_STRING_MODE:i, + HEX_QUOTE_STRING_MODE:l,SOL_NUMBER:s,isNegativeLookbehindAvailable:e} + ;const{SOL_ASSEMBLY_KEYWORDS:o,baseAssembly:c,isNegativeLookbehindAvailable:u}=n + ;return e=>{var a={keyword:o.keyword+" object code data", + built_in:o.built_in+" datasize dataoffset datacopy setimmutable loadimmutable linkersymbol memoryguard", + literal:o.literal},s=/\bverbatim_[1-9]?[0-9]i_[1-9]?[0-9]o\b(?!\$)/ + ;u()&&(s=s.source.replace(/\\b/,"(?<!\\$)\\b"));var t={className:"built_in", + begin:s},i=c(e);return e.inherit(i,{keywords:a,contains:i.contains.concat([t])}) + }})()); + +// https://cdn.jsdelivr.net/npm/highlightjs-solidity@2.0.5/dist/solidity.min.js +hljs.registerLanguage("solidity",(()=>{"use strict";function e(){try{return!0 +}catch(e){return!1}} + var a=/-?(\b0[xX]([a-fA-F0-9]_?)*[a-fA-F0-9]|(\b[1-9](_?\d)*(\.((\d_?)*\d)?)?|\.\d(_?\d)*)([eE][-+]?\d(_?\d)*)?|\b0)(?!\w|\$)/ + ;e()&&(a=a.source.replace(/\\b/g,"(?<!\\$)\\b"));var s={className:"number", + begin:a,relevance:0},n={ + keyword:"assembly let function if switch case default for leave break continue u256 jump jumpi stop return revert selfdestruct invalid", + built_in:"add sub mul div sdiv mod smod exp not lt gt slt sgt eq iszero and or xor byte shl shr sar addmod mulmod signextend keccak256 pc pop dup1 dup2 dup3 dup4 dup5 dup6 dup7 dup8 dup9 dup10 dup11 dup12 dup13 dup14 dup15 dup16 swap1 swap2 swap3 swap4 swap5 swap6 swap7 swap8 swap9 swap10 swap11 swap12 swap13 swap14 swap15 swap16 mload mstore mstore8 sload sstore msize gas address balance selfbalance caller callvalue calldataload calldatasize calldatacopy codesize codecopy extcodesize extcodecopy returndatasize returndatacopy extcodehash create create2 call callcode delegatecall staticcall log0 log1 log2 log3 log4 chainid origin gasprice basefee blockhash coinbase timestamp number difficulty gaslimit", + literal:"true false"},i={className:"string", + begin:/\bhex'(([0-9a-fA-F]{2}_?)*[0-9a-fA-F]{2})?'/},t={className:"string", + begin:/\bhex"(([0-9a-fA-F]{2}_?)*[0-9a-fA-F]{2})?"/};function r(e){ + return e.inherit(e.APOS_STRING_MODE,{begin:/(\bunicode)?'/})}function l(e){ + return e.inherit(e.QUOTE_STRING_MODE,{begin:/(\bunicode)?"/})}var o={ + SOL_ASSEMBLY_KEYWORDS:n,baseAssembly:e=>{ + var a=r(e),o=l(e),c=/[A-Za-z_$][A-Za-z_$0-9.]*/,d=e.inherit(e.TITLE_MODE,{ + begin:/[A-Za-z$_][0-9A-Za-z$_]*/,lexemes:c,keywords:n}),u={className:"params", + begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,lexemes:c,keywords:n, + contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,a,o,s]},_={ + className:"operator",begin:/:=|->/};return{keywords:n,lexemes:c, + contains:[a,o,i,t,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,s,_,{ + className:"function",lexemes:c,beginKeywords:"function",end:"{",excludeEnd:!0, + contains:[d,u,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,_]}]}}, + solAposStringMode:r,solQuoteStringMode:l,HEX_APOS_STRING_MODE:i, + HEX_QUOTE_STRING_MODE:t,SOL_NUMBER:s,isNegativeLookbehindAvailable:e} + ;const{baseAssembly:c,solAposStringMode:d,solQuoteStringMode:u,HEX_APOS_STRING_MODE:_,HEX_QUOTE_STRING_MODE:m,SOL_NUMBER:b,isNegativeLookbehindAvailable:g}=o + ;return e=>{for(var a=d(e),s=u(e),n=[],i=0;i<32;i++)n[i]=i+1 + ;var t=n.map((e=>8*e)),r=[];for(i=0;i<=80;i++)r[i]=i + ;var l=n.map((e=>"bytes"+e)).join(" ")+" ",o=t.map((e=>"uint"+e)).join(" ")+" ",E=t.map((e=>"int"+e)).join(" ")+" ",M=[].concat.apply([],t.map((e=>r.map((a=>e+"x"+a))))),p={ + keyword:"var bool string int uint "+E+o+"byte bytes "+l+"fixed ufixed "+M.map((e=>"fixed"+e)).join(" ")+" "+M.map((e=>"ufixed"+e)).join(" ")+" enum struct mapping address new delete if else for while continue break return throw emit try catch revert unchecked _ function modifier event constructor fallback receive error virtual override constant immutable anonymous indexed storage memory calldata external public internal payable pure view private returns import from as using global pragma contract interface library is abstract type assembly", + literal:"true false wei gwei szabo finney ether seconds minutes hours days weeks years", + built_in:"self this super selfdestruct suicide now msg block tx abi blockhash gasleft assert require Error Panic sha3 sha256 keccak256 ripemd160 ecrecover addmod mulmod log0 log1 log2 log3 log4" + },O={className:"operator",begin:/[+\-!~*\/%<>&^|=]/ + },C=/[A-Za-z_$][A-Za-z_$0-9]*/,N={className:"params",begin:/\(/,end:/\)/, + excludeBegin:!0,excludeEnd:!0,lexemes:C,keywords:p, + contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,a,s,b,"self"]},f={ + begin:/\.\s*/,end:/[^A-Za-z0-9$_\.]/,excludeBegin:!0,excludeEnd:!0,keywords:{ + built_in:"gas value selector address length push pop send transfer call callcode delegatecall staticcall balance code codehash wrap unwrap name creationCode runtimeCode interfaceId min max" + },relevance:2},y=e.inherit(e.TITLE_MODE,{begin:/[A-Za-z$_][0-9A-Za-z$_]*/, + lexemes:C,keywords:p}),w={className:"built_in", + begin:(g()?"(?<!\\$)\\b":"\\b")+"(gas|value|salt)(?=:)"};function x(e,a){return{ + begin:(g()?"(?<!\\$)\\b":"\\b")+e+"\\.\\s*",end:/[^A-Za-z0-9$_\.]/, + excludeBegin:!1,excludeEnd:!0,lexemes:C,keywords:{built_in:e+" "+a}, + contains:[f],relevance:10}}var h=c(e),v=e.inherit(h,{ + contains:h.contains.concat([{begin:/\./,end:/[^A-Za-z0-9$.]/,excludeBegin:!0, + excludeEnd:!0,keywords:{built_in:"slot offset length address selector"}, + relevance:2},{begin:/_/,end:/[^A-Za-z0-9$.]/,excludeBegin:!0,excludeEnd:!0, + keywords:{built_in:"slot offset"},relevance:2}])});return{aliases:["sol"], + keywords:p,lexemes:C, + contains:[a,s,_,m,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,b,w,O,{ + className:"function",lexemes:C, + beginKeywords:"function modifier event constructor fallback receive error", + end:/[{;]/,excludeEnd:!0, + contains:[y,N,w,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:/%/ + },x("msg","gas value data sender sig"),x("block","blockhash coinbase difficulty gaslimit basefee number timestamp chainid"),x("tx","gasprice origin"),x("abi","decode encode encodePacked encodeWithSelector encodeWithSignature encodeCall"),x("bytes","concat"),x("string","concat"),f,{ + className:"class",lexemes:C,beginKeywords:"contract interface library",end:"{", + excludeEnd:!0,illegal:/[:"\[\]]/,contains:[{beginKeywords:"is",lexemes:C + },y,N,w,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{lexemes:C, + beginKeywords:"struct enum",end:"{",excludeEnd:!0,illegal:/[:"\[\]]/, + contains:[y,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{ + beginKeywords:"import",end:";",lexemes:C,keywords:"import from as", + contains:[y,a,s,_,m,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,O]},{ + beginKeywords:"using",end:";",lexemes:C,keywords:"using for global", + contains:[y,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,O]},{className:"meta", + beginKeywords:"pragma",end:";",lexemes:C,keywords:{ + keyword:"pragma solidity experimental abicoder", + built_in:"ABIEncoderV2 SMTChecker v1 v2"}, + contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.inherit(a,{ + className:"meta-string"}),e.inherit(s,{className:"meta-string"})]},{ + beginKeywords:"assembly",end:/\b\B/, + contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.inherit(a,{ + className:"meta-string"}),e.inherit(s,{className:"meta-string"}),e.inherit(v,{ + begin:"{",end:"}",endsParent:!0,contains:v.contains.concat([e.inherit(v,{ + begin:"{",end:"}",contains:v.contains.concat(["self"])})])})]}],illegal:/#/}} +})()); + +// https://cdn.jsdelivr.net/npm/highlightjs-sap-abap@0.2.0/dist/abap.min.js +hljs.registerLanguage("abap",(()=>{"use strict";return E=>({case_insensitive:!0, + aliases:["sap-abap","abap"],keywords:{ + keyword:"ABBREVIATED ABS ABSTRACT ABSTRACTFINAL ACCEPT ACCEPTING ACCORDING ACOS ACTUAL ADD|0 ADD-CORRESPONDING ADDITIONS ADJACENT AFTER|0 ALIASES ALL|0 ALLOCATE ANALYZER AND|0 APPEND APPENDING AS|0 ASCENDING DESCENDING ASIN ASSIGN ASSIGNING ATAN ATTRIBUTE AUTHORITY-CHECK AVG|0 BACK|0 BACKGOUND BEFORE BETWEEN BINARY BIT BLANK|0 BLOCK BREAK-POINT BUFFER BY|0 BYPASSING BYTE|0 BYTECHARACTER CALL|0 CASTING CEIL|0 CENTERED CHANGE CHANGING CHARACTER CHECK CHECKBOX CLASS-DATA CLASS-EVENTS CLASS-METHODS CLEANUP CLEAR|0 CLASS ENDCLASS CLIENT CLOCK|0 CLOSE|0 COL_BACKGROUND COL_HEADING COL_NORMAL COL_TOTAL COLLECT|0 COLOR|0 COLUMN COMMENT COMMIT COMMON COMMUNICATION COMPARING COMPONENT COMPONENTS COMPUTE CONCATENATE CONDENSE CONSTANTS CONTEXT CONTEXTS CONTINUE|0 CONTROL CONTROLS CONVERSION CONVERT COS COSH COUNT|0 COUNTRY COUNTY CREATE CURRENCY CURRENT CURSOR CUSTOMER-FUNCTION DATA DATABASE DATASET DATE DEALLOCATE DECIMALS DEFAULT DEFERRED DEFINE DEFINING DEFINITION DELETE DELETING DEMAND DESCENDING DESCRIBE DESTINATION DIALOG DIRECTORY DISTANCE DISTINCT DIVIDE DIVIDE-CORRESPONDING DUPLICATE DUPLICATES DURING DYNAMIC EDIT EDITOR-CALL ELSE ELSEIF ENCODING ENDING ENDON ENTRIES ERRORS EVENT EVENTS EXCEPTION EXCEPTIONS EXCEPTION-TABLE EXCLUDE EXCLUDING EXIT EXIT-COMMAND EXPORT EXPORTING EXTENDED EXTENSION EXTRACT FETCH FIELD FIELD-GROUPS FIELDSNO FIELD-SYMBOLS FILTER FINAL FIND|0 FIRST FLOOR FOR|0 FORMAT FORWARDBACKWARD FOUND FRAC FRAME FREE|0 FRIENDS FROM FUNCTION-POOL GET|0 GIVING GROUP HANDLER HASHED HAVING HEADER HEADING HELP-ID HIDE|0 HIGHLOW HOLD|0 HOTSPOT ICON IGNORING IMMEDIATELY IMPLEMENTATION IMPORT IMPORTING IN INCLUDE|0 INCREMENT INDEX|0 INDEX-LINE INHERITING INIT INITIAL INITIALIZATION INNER INNERLEFT INSERT INSTANCES INTENSIFIED INTERFACES INTERVALS INTO INVERTED-DATE IS|0 ITAB JOIN KEEPING KEY|0 KEYS KIND LANGUAGE LAST|0 LEADING LEAVE LEFT LEFT-JUSTIFIED LEFTRIGHT LEFTRIGHTCIRCULAR LEGACY LENGTH LIKE LINE LINE-COUNT LINES LINE-SELECTION LINE-SIZE LIST LIST-PROCESSING LOAD LOAD-OF-PROGRAM LOCAL LOCALE LOG LOG10 LOWER MARGIN MARK MASK MATCH MAX MAXIMUM MEMORY|0 MESSAGE MESSAGE-ID MESSAGES METHODS MIN MOD MODE MODEIN MODIF MODIFIER MODIFY MOVE MOVE-CORRESPONDING MULTIPLY MULTIPLY-CORRESPONDING NEW|0 NEW-LINE NEW-PAGE NEXT|0 NODES NODETABLE NO-DISPLAY NO-GAP NO-GAPS NO-HEADINGWITH-HEADING NO-SCROLLING NO-SCROLLINGSCROLLING NOT|0 NO-TITLE WITH-TITLE NO-ZERO NP NS NUMBER OBJECT|0 OBLIGATORY OCCURENCE OCCURENCES OCCURS OF|0 OFF|0 OFFSET ON|0 ONLY|0 OPEN OPTION OPTIONAL OR|0 ORDER OTHERS|0 OUTER OUTPUT-LENGTH OVERLAY PACK PACKAGE PAGE PAGELAST PAGEOF PAGEPAGE PAGES PARAMETER PARAMETERS PARAMETER-TABLE PART PERFORM PERFORMING PFN PF-STATUS PLACES POS_HIGH POS_LOW POSITION POSITIONS PRIMARY PRINT PRINT-CONTROL PRIVATE PROCESS PROGRAM PROPERTY PROTECTED PUBLIC PUSHBUTTON PUT QUICKINFO RADIOBUTTON RAISE|0 RAISING RANGE RANGES READ RECEIVE RECEIVING REDEFINITION REF REFERENCE REFRESH REJECT RENAMING REPLACE REPLACEMENT REPORT RESERVE RESET RESOLUTION RESULTS RETURN|0 RETURNING RIGHT RIGHT-JUSTIFIED ROLLBACK ROWS RUN SCAN SCREEN SCREEN-GROUP1 SCREEN-GROUP2 SCREEN-GROUP3 SCREEN-GROUP4 SCREEN-GROUP5 SCREEN-INPUT SCREEN-INTENSIFIED SCROLL SCROLL-BOUNDARY SEARCH SECTION SELECT SELECTION SELECTIONS SELECTION-SCREEN SELECTION-SET SELECTION-TABLE SELECT-OPTIONS SEND|0 SEPARATED SET|0 SHARED SHIFT SIGN SIN SINGLE SINGLEDISTINCT SINH SIZE|0 SKIP SORT|0 SORTABLE SPECIFIED SPLIT SQL|0 SQRT STABLE STAMP STANDARD|0 START|0 STARTING STATICS STEP-LOOP STOP STRLEN STRUCTURE|0 SUBMIT SUBTRACT SUBTRACT-CORRESPONDING SUFFIX SUM SUPPLY SUPPRESS SYMBOLS SYSTEM-EXCEPTIONS TABLE|0 TABLENAME TABLES TABLEVIEW TAN TANH TASK TEXT THEN|0 TIME|0 TIMES TITLE TITLEBAR TO TOPIC TOP-OF-PAGE TRAILING TRANSACTION TRANSFER TRANSLATE TRUNC TYPE TYPELIKE TYPE-POOL TYPE-POOLS TYPES ULINE UNION UNIQUE UNIT UNTIL|0 UP|0 UPDATE|0 UPPER UPPERLOWER USER-COMMAND USING VALUE|0 VALUES VARY VARYING VERSION VIA WAIT WHEN WHERE WINDOW WITH|0 WORK|0 WRITE|0 XSTRLEN ZONECA CN CO CP CS EQ GE GT LE LT NA NESTART-OF-SELECTION START-OF-PAGE END-OF-PAGE END-OF-SELECTION AT ENDAT", + literal:"abap_true abap_false", + built_in:"DO FORM IF LOOP MODULE START-OF_FILE DEFINE WHILE BEGIN ENDDO ENDFORM|10 ENDIF ENDLOOP ENDMODULE END-OF_FILE END-OF-DEFINITION ENDWHILE END METHOD ENDMETHOD|10 CHAIN ENDCHAIN CASE ENDCASE FUNCTION ENDFUNCTION ELSEIF ELSE TRY ENDTRY|10 CATCH " + },contains:[E.APOS_STRING_MODE,E.NUMBER_MODE,{className:"comment",begin:"^[*]", + relevance:0,end:"\n"},{className:"comment",begin:'\b*"',relevance:0,end:"\n"}]}) +})()); + +// https://github.com/highlightjs/highlightjs-hlsl/blob/master/dist/hlsl.min.js +hljs.registerLanguage("hlsl",(()=>{"use strict";const e={className:"number", + begin:"(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?([hHfFlL]?)|\\.\\d+)([eE][-+]?\\d+)?([hHfFlL]?))", + relevance:0};return r=>{ + let t=["","1","2","3","4","1x1","1x2","1x3","1x4","2x1","2x2","2x3","2x4","3x1","3x2","3x3","3x4","4x1","4x2","4x3","4x4"],a=[] + ;for(let e of"bool double float half int uint min16float min10float min16int min12int min16uint".split(" "))for(let r of t)a.push(e+r) + ;let s="SV_Coverage SV_Depth SV_DispatchThreadID SV_DomainLocation SV_GroupID SV_GroupIndex SV_GroupThreadID SV_GSInstanceID SV_InnerCoverage SV_InsideTessFactor SV_InstanceID SV_IsFrontFace SV_OutputControlPointID SV_Position SV_PrimitiveID SV_RenderTargetArrayIndex SV_SampleIndex SV_StencilRef SV_TessFactor SV_VertexID SV_ViewportArrayIndex, SV_ShadingRate",o="BINORMAL BLENDINDICES BLENDWEIGHT COLOR NORMAL POSITION PSIZE TANGENT TEXCOORD TESSFACTOR DEPTH SV_ClipDistance SV_CullDistance SV_DepthGreaterEqual SV_DepthLessEqual SV_Target SV_CLIPDISTANCE SV_CULLDISTANCE SV_DEPTHGREATEREQUAL SV_DEPTHLESSEQUAL SV_TARGET",n=o.split(" ") + ;for(let e of o.split(" "))for(let r of Array(16).keys())n.push(e+r.toString()) + ;return{name:"HLSL",keywords:{ + keyword:"AppendStructuredBuffer asm asm_fragment BlendState break Buffer ByteAddressBuffer case cbuffer centroid class column_major compile compile_fragment CompileShader const continue ComputeShader ConsumeStructuredBuffer default DepthStencilState DepthStencilView discard do DomainShader dword else export extern false for fxgroup GeometryShader groupshared Hullshader if in inline inout InputPatch interface line lineadj linear LineStream matrix namespace nointerpolation noperspective NULL out OutputPatch packoffset pass pixelfragment PixelShader point PointStream precise RasterizerState RenderTargetView return register row_major RWBuffer RWByteAddressBuffer RWStructuredBuffer RWTexture1D RWTexture1DArray RWTexture2D RWTexture2DArray RWTexture3D sample sampler SamplerState SamplerComparisonState shared snorm stateblock stateblock_state static string struct switch StructuredBuffer tbuffer technique technique10 technique11 texture Texture1D Texture1DArray Texture2D Texture2DArray Texture2DMS Texture2DMSArray Texture3D TextureCube TextureCubeArray true typedef triangle triangleadj TriangleStream uint uniform unorm unsigned vector vertexfragment VertexShader void volatile while", + type:a.join(" ")+" Buffer vector matrix sampler SamplerState PixelShader VertexShader texture Texture1D Texture1DArray Texture2D Texture2DArray Texture2DMS Texture2DMSArray Texture3D TextureCube TextureCubeArray struct typedef", + built_in:"POSITIONT FOG PSIZE VFACE VPOS "+n.join(" ")+" "+s+" "+s.toUpperCase()+" abort abs acos all AllMemoryBarrier AllMemoryBarrierWithGroupSync any asdouble asfloat asin asint asuint atan atan2 ceil CheckAccessFullyMapped clamp clip cos cosh countbits cross D3DCOLORtoUBYTE4 ddx ddx_coarse ddx_fine ddy ddy_coarse ddy_fine degrees determinant DeviceMemoryBarrier DeviceMemoryBarrierWithGroupSync distance dot dst errorf EvaluateAttributeAtCentroid EvaluateAttributeAtSample EvaluateAttributeSnapped exp exp2 f16tof32 f32tof16 faceforward firstbithigh firstbitlow floor fma fmod frac frexp fwidth GetRenderTargetSampleCount GetRenderTargetSamplePosition GroupMemoryBarrier GroupMemoryBarrierWithGroupSync InterlockedAdd InterlockedAnd InterlockedCompareExchange InterlockedCompareStore InterlockedExchange InterlockedMax InterlockedMin InterlockedOr InterlockedXor isfinite isinf isnan ldexp length lerp lit log log10 log2 mad max min modf msad4 mul noise normalize pow printf Process2DQuadTessFactorsAvg Process2DQuadTessFactorsMax Process2DQuadTessFactorsMin ProcessIsolineTessFactors ProcessQuadTessFactorsAvg ProcessQuadTessFactorsMax ProcessQuadTessFactorsMin ProcessTriTessFactorsAvg ProcessTriTessFactorsMax ProcessTriTessFactorsMin radians rcp reflect refract reversebits round rsqrt saturate sign sin sincos sinh smoothstep sqrt step tan tanh tex1D tex1Dbias tex1Dgrad tex1Dlod tex1Dproj tex2D tex2Dbias tex2Dgrad tex2Dlod tex2Dproj tex3D tex3Dbias tex3Dgrad tex3Dlod tex3Dproj texCUBE texCUBEbias texCUBEgrad texCUBElod texCUBEproj transpose trunc", + literal:"true false"},illegal:'"', + contains:[r.C_LINE_COMMENT_MODE,r.C_BLOCK_COMMENT_MODE,e,{className:"meta", + begin:"#",end:"$"}]}}})()); + +// https://github.com/highlightjs/highlightjs-gdscript +hljs.registerLanguage("gdscript",function(){"use strict";var e=e||{};function r(e){return{aliases:["godot","gdscript"],keywords:{keyword:"and in not or self void as assert breakpoint class class_name extends is func setget signal tool yield const enum export onready static var break continue if elif else for pass return match while remote sync master puppet remotesync mastersync puppetsync",built_in:"Color8 ColorN abs acos asin atan atan2 bytes2var cartesian2polar ceil char clamp convert cos cosh db2linear decimals dectime deg2rad dict2inst ease exp floor fmod fposmod funcref get_stack hash inst2dict instance_from_id inverse_lerp is_equal_approx is_inf is_instance_valid is_nan is_zero_approx len lerp lerp_angle linear2db load log max min move_toward nearest_po2 ord parse_json polar2cartesian posmod pow preload print_stack push_error push_warning rad2deg rand_range rand_seed randf randi randomize range_lerp round seed sign sin sinh smoothstep sqrt step_decimals stepify str str2var tan tanh to_json type_exists typeof validate_json var2bytes var2str weakref wrapf wrapi bool int float String NodePath Vector2 Rect2 Transform2D Vector3 Rect3 Plane Quat Basis Transform Color RID Object NodePath Dictionary Array PoolByteArray PoolIntArray PoolRealArray PoolStringArray PoolVector2Array PoolVector3Array PoolColorArray",literal:"true false null"},contains:[e.NUMBER_MODE,e.HASH_COMMENT_MODE,{className:"comment",begin:/"""/,end:/"""/},e.QUOTE_STRING_MODE,{variants:[{className:"function",beginKeywords:"func"},{className:"class",beginKeywords:"class"}],end:/:/,contains:[e.UNDERSCORE_TITLE_MODE]}]}}return e.exports=function(e){e.registerLanguage("gdscript",r)},e.exports.definer=r,e.exports.definer||e.exports}()); diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/de_DE.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/de_DE.js new file mode 100644 index 0000000..7a9b07d --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/de_DE.js @@ -0,0 +1,86 @@ +window.VditorI18n = { + 'alignCenter': 'Zentriert', + 'alignLeft': 'Linksbündig', + 'alignRight': 'Rechtsbündig', + 'alternateText': 'Alternativtext', + 'bold': 'Fett', + 'both': 'Editor & Vorschau', + 'cancelUpload': 'Upload abbrechen', + 'check': 'Aufgabenliste', + 'close': 'Schließen', + 'code': 'Codeblock', + 'code-theme': 'Codeblock-Thema', + 'column': 'Spalte', + 'comment': 'Kommentar', + 'confirm': 'Bestätigen', + 'content-theme': 'Inhalts-Thema', + 'copied': 'Kopiert', + 'copy': 'Kopieren', + 'delete-column': 'Spalte löschen', + 'delete-row': 'Zeile löschen', + 'devtools': 'Entwicklertools', + 'down': 'Nach unten', + 'downloadTip': 'Der Browser unterstützt die Download-Funktion nicht', + 'edit': 'Bearbeiten', + 'edit-mode': 'Bearbeitungsmodus umschalten', + 'emoji': 'Emoji', + 'export': 'Exportieren', + 'fileTypeError': 'Dateityp-Fehler', + 'footnoteRef': 'Fußnotenverweis', + 'fullscreen': 'Vollbild umschalten', + 'generate': 'Wird generiert', + 'headings': 'Überschriften', + 'heading1': 'Überschrift 1', + 'heading2': 'Überschrift 2', + 'heading3': 'Überschrift 3', + 'heading4': 'Überschrift 4', + 'heading5': 'Überschrift 5', + 'heading6': 'Überschrift 6', + 'help': 'Hilfe', + 'imageURL': 'Bild-URL', + 'indent': 'Einrücken', + 'info': 'Info', + 'inline-code': 'Inline-Code', + 'insert-after': 'Zeile danach einfügen', + 'insert-before': 'Zeile davor einfügen', + 'insertColumnLeft': 'Spalte links einfügen', + 'insertColumnRight': 'Spalte rechts einfügen', + 'insertRowAbove': 'Zeile oberhalb einfügen', + 'insertRowBelow': 'Zeile unterhalb einfügen', + 'instantRendering': 'Sofort-Darstellung', + 'italic': 'Kursiv', + 'language': 'Sprache', + 'line': 'Zeile', + 'link': 'Link', + 'linkRef': 'Link-Verweis', + 'list': 'Liste', + 'more': 'Mehr', + 'nameEmpty': 'Name ist leer', + 'ordered-list': 'Nummerierte Liste', + 'outdent': 'Ausrücken', + 'outline': 'Gliederung', + 'over': 'über', + 'performanceTip': 'Echtzeit-Vorschau benötigt ${x}ms, Sie können diese deaktivieren', + 'preview': 'Vorschau', + 'quote': 'Zitat', + 'record': 'Aufnahme starten/beenden', + 'record-tip': 'Das Gerät unterstützt keine Aufzeichnung', + 'recording': 'Aufzeichnung läuft...', + 'redo': 'Wiederholen', + 'remove': 'Entfernen', + 'row': 'Zeile', + 'spin': 'Rotation', + 'splitView': 'Geteilte Ansicht', + 'strike': 'Durchgestrichen', + 'table': 'Tabelle', + 'textIsNotEmpty': 'Text (nicht leer)', + 'title': 'Titel', + 'tooltipText': 'Tooltip-Text', + 'undo': 'Rückgängig', + 'up': 'Nach oben', + 'update': 'Aktualisieren', + 'upload': 'Bild oder Datei hochladen', + 'uploadError': 'Upload-Fehler', + 'uploading': 'Upload läuft...', + 'wysiwyg': 'WYSIWYG', +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/en_US.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/en_US.js new file mode 100644 index 0000000..bb4bb3f --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/en_US.js @@ -0,0 +1,86 @@ +window.VditorI18n = { + 'alignCenter': 'Center', + 'alignLeft': 'Left', + 'alignRight': 'Right', + 'alternateText': 'Alternate text', + 'bold': 'Bold', + 'both': 'editor & preview', + 'cancelUpload': 'Cancel upload', + 'check': 'Task List', + 'close': 'Close', + 'code': 'Code Block', + 'code-theme': 'Code Block Theme Preview', + 'column': 'Column', + 'comment': 'Comment', + 'confirm': 'Confirm', + 'content-theme': 'Content Theme Preview', + 'copied': 'Copied', + 'copy': 'Copy', + 'delete-column': 'Delete Column', + 'delete-row': 'Delete Row', + 'devtools': 'DevTools', + 'down': 'Down', + 'downloadTip': 'The browser does not support the download function', + 'edit': 'Edit', + 'edit-mode': 'Toggle Edit Mode', + 'emoji': 'Emoji', + 'export': 'Export', + 'fileTypeError': 'file type is error', + 'footnoteRef': 'Footnote Ref', + 'fullscreen': 'Toggle Fullscreen', + 'generate': 'Generating', + 'headings': 'Headings', + 'heading1': 'Heading 1', + 'heading2': 'Heading 2', + 'heading3': 'Heading 3', + 'heading4': 'Heading 4', + 'heading5': 'Heading 5', + 'heading6': 'Heading 6', + 'help': 'Help', + 'imageURL': 'image URL', + 'indent': 'Indent', + 'info': 'Info', + 'inline-code': 'Inline Code', + 'insert-after': 'Insert line after', + 'insert-before': 'Insert line before', + 'insertColumnLeft': 'Insert 1 left', + 'insertColumnRight': 'Insert 1 right', + 'insertRowAbove': 'Insert 1 above', + 'insertRowBelow': 'Insert 1 below', + 'instantRendering': 'Instant Rendering', + 'italic': 'Italic', + 'language': 'Language', + 'line': 'Line', + 'link': 'Link', + 'linkRef': 'Link Ref', + 'list': 'List', + 'more': 'More', + 'nameEmpty': 'Name is empty', + 'ordered-list': 'Order List', + 'outdent': 'Outdent', + 'outline': 'Outline', + 'over': 'over', + 'performanceTip': 'Real-time preview requires ${x}ms, you can close it', + 'preview': 'Preview', + 'quote': 'Quote', + 'record': 'Start Record/End Record', + 'record-tip': 'The device does not support recording', + 'recording': 'recording...', + 'redo': 'Redo', + 'remove': 'Remove', + 'row': 'Row', + 'spin': 'Spin', + 'splitView': 'Split View', + 'strike': 'Strike', + 'table': 'Table', + 'textIsNotEmpty': 'text(no empty)', + 'title': 'Title', + 'tooltipText': 'Tooltip text', + 'undo': 'Undo', + 'up': 'Up', + 'update': 'Update', + 'upload': 'Upload image or file', + 'uploadError': 'upload error', + 'uploading': 'uploading...', + 'wysiwyg': 'WYSIWYG', +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/fr_FR.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/fr_FR.js new file mode 100644 index 0000000..9ea8cc9 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/fr_FR.js @@ -0,0 +1,86 @@ +window.VditorI18n = { + 'alignCenter': 'Centré', + 'alignLeft': 'Gauche', + 'alignRight': 'Droite', + 'alternateText': 'Texte de remplacement', + 'bold': 'Gras', + 'both': 'éditeur & prévisualisation', + 'cancelUpload': 'Annuler le téléchargement', + 'check': 'Liste de tâches', + 'close': 'Fermer', + 'code': 'Bloc de code', + 'code-theme': 'Thème pour le bloc de code', + 'column': 'Colonne', + 'comment': 'Commentaire', + 'confirm': 'Confirmez', + 'content-theme': 'Thème pour le contenu', + 'copied': 'Copié', + 'copy': 'Copier', + 'delete-column': 'Enlever ligne', + 'delete-row': 'Enlever colonne', + 'devtools': 'Outils de dev', + 'down': 'Bas', + 'downloadTip': 'Le navigateur ne permet pas le téléversement', + 'edit': 'Editer', + 'edit-mode': 'Changer le mode d\'édition', + 'emoji': 'Emoji', + 'export': 'Export', + 'fileTypeError': 'erreur de type de fichier', + 'footnoteRef': 'Ref. notes de pied de page', + 'fullscreen': 'Bascule en plein écran', + 'generate': 'Création', + 'headings': 'Titres', + 'heading1': 'Titre 1', + 'heading2': 'Titre 2', + 'heading3': 'Titre 3', + 'heading4': 'Titre 4', + 'heading5': 'Titre 5', + 'heading6': 'Titre 6', + 'help': 'Aide', + 'imageURL': 'URL de l\'image', + 'indent': 'Augmenter le retrait', + 'info': 'Info', + 'inline-code': 'Code en ligne', + 'insert-after': 'Insérer une ligne après', + 'insert-before': 'Insérer une ligne avant', + 'insertColumnLeft': 'Insérer col. à gauche', + 'insertColumnRight': 'Insérer col. à droite', + 'insertRowAbove': 'Insérer 1 au dessus', + 'insertRowBelow': 'Insérer 1 en dessous', + 'instantRendering': 'Aperçu instantané', + 'italic': 'Italique', + 'language': 'Langage', + 'line': 'Ligne', + 'link': 'Lien', + 'linkRef': 'Réf. Lien', + 'list': 'Liste', + 'more': 'Plus', + 'nameEmpty': 'Nom est vide', + 'ordered-list': 'Liste ordonnée', + 'outdent': 'Réduire le retrait', + 'outline': 'Table des matières', + 'over': 'survol', + 'performanceTip': 'La prévisualisation temps réel prend ${x}ms, vous pouvez fermer', + 'preview': 'Prévisualisation', + 'quote': 'Citation', + 'record': 'Démarrer/Stopper l\'enregistrement', + 'record-tip': 'L\'appareil ne supporte pas l\'enregistrement', + 'recording': 'Enregistrement en cours...', + 'redo': 'Rétablir', + 'remove': 'Enlever', + 'row': 'Ligne', + 'spin': 'Rotation', + 'splitView': 'Vue scindée', + 'strike': 'Barré', + 'table': 'Table', + 'textIsNotEmpty': 'texte(pas vide)', + 'title': 'Titre', + 'tooltipText': 'Texte au survol', + 'undo': 'Annuler', + 'up': 'Haut', + 'update': 'Mettre à jour', + 'upload': 'Téléverser image ou fichier', + 'uploadError': 'erreur de téléversement', + 'uploading': 'Téléversement en cours...', + 'wysiwyg': 'WYSIWYG', +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/ja_JP.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/ja_JP.js new file mode 100644 index 0000000..67ec8b2 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/ja_JP.js @@ -0,0 +1,86 @@ +window.VditorI18n = { + 'alignCenter': '中央', + 'alignLeft': '左側', + 'alignRight': '右側', + 'alternateText': 'イメージタグ', + 'bold': '太く', + 'both': 'エディター & プレビュー', + 'cancelUpload': 'アップロードをキャンセル', + 'check': 'チェックリスト', + 'close': '閉じる', + 'code': 'コードブロック挿入', + 'code-theme': 'コードブロックテーマ', + 'column': '行列', + 'comment': 'コメント', + 'confirm': '確認', + 'content-theme': 'コンテンツテーマ', + 'copied': 'コピー完了', + 'copy': 'コピー', + 'delete-column': '列 消去', + 'delete-row': '行 消去', + 'devtools': '開発ツール', + 'down': '下げる', + 'downloadTip': 'ブラウザがダウンロード機能をサポートしていません。', + 'edit': '修正', + 'edit-mode': '編集モード', + 'emoji': '絵文字', + 'export': 'エクスポート', + 'fileTypeError': 'サポートしていません。', + 'footnoteRef': '脚注参照', + 'fullscreen': 'フルスクリーン', + 'generate': '作成する', + 'headings': '見出しの大きさ', + 'heading1': '見出し1', + 'heading2': '見出し2', + 'heading3': '見出し3', + 'heading4': '見出し4', + 'heading5': '見出し5', + 'heading6': '見出し6', + 'help': 'ヘルプ', + 'imageURL': 'イメージ URL', + 'indent': '字下げ', + 'info': '情報', + 'inline-code': 'インラインコード', + 'insert-after': 'ブロックの後ろに入力', + 'insert-before': 'ブロックの前に入力', + 'insertColumnLeft': '左側に列を挿入', + 'insertColumnRight': '右側に列を挿入', + 'insertRowAbove': '上に行を挿入', + 'insertRowBelow': '下に行を挿入', + 'instantRendering': 'インスタントレンダリング', + 'italic': '斜体', + 'language': '言語', + 'line': '段落分割', + 'link': 'リンク', + 'linkRef': 'リンク参照', + 'list': 'リスト', + 'more': '詳しく見る', + 'nameEmpty': '名前が入力されていません。', + 'ordered-list': '順序のあるリスト', + 'outdent': 'ぶら下げインデント', + 'outline': '概要', + 'over': 'オーバー', + 'performanceTip': 'リアルタイムプレビューには、${x}msが必要でエディター/プレビューボタンをクリックして閉じる事が出来ます。', + 'preview': 'プレビュー', + 'quote': '引用段落', + 'record': '録音開始/録音終了', + 'record-tip': '録音がサポートされていません。', + 'recording': '録音中...', + 'redo': '戻る', + 'remove': '消去', + 'row': '列', + 'spin': 'スピン', + 'splitView': 'マークダウン', + 'strike': '取り消し線', + 'table': '表 挿入', + 'textIsNotEmpty': 'テキスト(空白は不可)', + 'title': '題名', + 'tooltipText': 'ツールチップ', + 'undo': '取り消す', + 'up': '上げる', + 'update': 'アップデート', + 'upload': 'イメージをアップロードする', + 'uploadError': 'アップロード失敗', + 'uploading': 'アップロード中', + 'wysiwyg': 'ウィジウィグ', +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/ko_KR.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/ko_KR.js new file mode 100644 index 0000000..336bc78 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/ko_KR.js @@ -0,0 +1,86 @@ +window.VditorI18n = { + 'alignCenter': '가운데', + 'alignLeft': '왼쪽', + 'alignRight': '오른쪽', + 'alternateText': '이미지 태그', + 'bold': '굵게', + 'both': '에디터 & 미리보기', + 'cancelUpload': '업로드 취소', + 'check': '체크박스', + 'close': '닫기', + 'code': '코드블럭삽입', + 'code-theme': '코드블럭테마', + 'column': '행', + 'comment': '코멘트', + 'confirm': '확인', + 'content-theme': '컨텐츠테마', + 'copied': '복사완료', + 'copy': '복사', + 'delete-column': '열 삭제', + 'delete-row': '행 삭제', + 'devtools': '개발툴', + 'down': '다운', + 'downloadTip': '브라우저가 다운로드 기능을 지원하지 않습니다', + 'edit': '수정', + 'edit-mode': '편집모드', + 'emoji': '이모지', + 'export': '내보내기', + 'fileTypeError': '지원하지않습니다.', + 'footnoteRef': '각주참조', + 'fullscreen': '전체화면', + 'generate': '생성', + 'headings': '제목크기', + 'heading1': '첫 번째 수준 제목', + 'heading2': '두 번째 수준 제목', + 'heading3': '3 단계 제목', + 'heading4': '제목 4', + 'heading5': '5 단계 제목', + 'heading6': '6 단계 제목', + 'help': '도움말', + 'imageURL': '이미지 URL', + 'indent': '들여쓰기', + 'info': '정보', + 'inline-code': '인라인코드', + 'insert-after': '블락 뒤로 입력', + 'insert-before': '블락 앞으로 입력', + 'insertColumnLeft': '왼쪽에 열 삽입', + 'insertColumnRight': '오른쪽에 열 삽입', + 'insertRowAbove': '위에 행 삽입', + 'insertRowBelow': '아래에 행 삽입', + 'instantRendering': '타이포라', + 'italic': '기울임꼴', + 'language': '언어', + 'line': '문단나눔', + 'link': '링크', + 'linkRef': '링크 참조', + 'list': '순서없는 목록', + 'more': '더보기', + 'nameEmpty': '이름이 비어있습니다.', + 'ordered-list': '순서있는 목록', + 'outdent': '내어쓰기', + 'outline': '개요', + 'over': '오버', + 'performanceTip': '실시간 미리보기에는 ${x}ms가 필요하며 에디터/미리보기 버튼을 클릭하여 닫을 수 있습니다.', + 'preview': '미리보기', + 'quote': '인용단락', + 'record': '녹음시작/녹음종료', + 'record-tip': '녹음을 지원하지 않습니다.', + 'recording': '녹음중...', + 'redo': '되돌리기', + 'remove': '삭제', + 'row': '열', + 'spin': '회전', + 'splitView': '마크다운', + 'strike': '취소선', + 'table': '표삽입', + 'textIsNotEmpty': '텍스트(no empty)', + 'title': '표제', + 'tooltipText': '툴팁', + 'undo': '취소하기', + 'up': '위로', + 'update': '업데이트', + 'upload': '이미지 업로드하기', + 'uploadError': '업로드 실패', + 'uploading': '업로드중...', + 'wysiwyg': '위지위그', +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/pt_BR.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/pt_BR.js new file mode 100644 index 0000000..bf4d7cf --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/pt_BR.js @@ -0,0 +1,86 @@ +window.VditorI18n = { + 'alignCenter': 'Centralizar', + 'alignLeft': 'Alinhar à esquerda', + 'alignRight': 'Alinhar à direita', + 'alternateText': 'Texto alternativo', + 'bold': 'Negrito', + 'both': 'Editor e visualização', + 'cancelUpload': 'Cancelar envio', + 'check': 'Lista de tarefas', + 'close': 'Fechar', + 'code': 'Bloco de código', + 'code-theme': 'Tema de bloco de código', + 'column': 'Coluna', + 'comment': 'Comentário', + 'confirm': 'Confirmar', + 'content-theme': 'Tema de conteúdo', + 'copied': 'Copiado', + 'copy': 'Copiar', + 'delete-column': 'Excluir coluna', + 'delete-row': 'Excluir linha', + 'devtools': 'Ferramentas de desenvolvimento', + 'down': 'Para baixo', + 'downloadTip': 'O navegador não suporta a função de download', + 'edit': 'Editar', + 'edit-mode': 'Alternar modo de edição', + 'emoji': 'Emoji', + 'export': 'Exportar', + 'fileTypeError': 'Tipo de arquivo incorreto', + 'footnoteRef': 'Referência de rodapé', + 'fullscreen': 'Alternar tela cheia', + 'generate': 'Gerando', + 'headings': 'Cabeçalhos', + 'heading1': 'Cabeçalho 1', + 'heading2': 'Cabeçalho 2', + 'heading3': 'Cabeçalho 3', + 'heading4': 'Cabeçalho 4', + 'heading5': 'Cabeçalho 5', + 'heading6': 'Cabeçalho 6', + 'help': 'Ajuda', + 'imageURL': 'URL da imagem', + 'indent': 'Recuar', + 'info': 'Informação', + 'inline-code': 'Código em linha', + 'insert-after': 'Inserir linha depois', + 'insert-before': 'Inserir linha antes', + 'insertColumnLeft': 'Inserir 1 à esquerda', + 'insertColumnRight': 'Inserir 1 à direita', + 'insertRowAbove': 'Inserir 1 acima', + 'insertRowBelow': 'Inserir 1 abaixo', + 'instantRendering': 'Renderização instantânea', + 'italic': 'Itálico', + 'language': 'Idioma', + 'line': 'Linha', + 'link': 'Link', + 'linkRef': 'Referência de link', + 'list': 'Lista', + 'more': 'Mais', + 'nameEmpty': 'Nome está vazio', + 'ordered-list': 'Lista ordenada', + 'outdent': 'Recuar para fora', + 'outline': 'Esboço', + 'over': 'sobre', + 'performanceTip': 'A visualização em tempo real requer ${x}ms, você pode fechá-la', + 'preview': 'Visualização', + 'quote': 'Citação', + 'record': 'Iniciar gravação/Encerrar gravação', + 'record-tip': 'O dispositivo não suporta gravação', + 'recording': 'gravando...', + 'redo': 'Refazer', +'remove': 'Remover', +'row': 'Linha', +'spin': 'Girar', +'splitView': 'Visão dividida', +'strike': 'Riscado', +'table': 'Tabela', +'textIsNotEmpty': 'Texto (não vazio)', +'title': 'Título', +'tooltipText': 'Texto da dica de ferramenta', +'undo': 'Desfazer', +'up': 'Para cima', +'update': 'Atualizar', +'upload': 'Enviar imagem ou arquivo', +'uploadError': 'Erro no envio', +'uploading': 'Enviando...', +'wysiwyg': 'WYSIWYG', +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/ru_RU.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/ru_RU.js new file mode 100644 index 0000000..9e2d79f --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/ru_RU.js @@ -0,0 +1,86 @@ +window.VditorI18n = { + 'alignCenter': 'Выровнять по центру', + 'alignLeft': 'Выровнять по левому краю', + 'alignRight': 'Выровнять по правому краю', + 'alternateText': 'Альтернативный текст', + 'bold': 'Полужирный текст', + 'both': 'Редактор с предпросмотром', + 'cancelUpload': 'Отменить загрузку', + 'check': 'Список задач', + 'close': 'Закрыть', + 'code': 'Блок кода', + 'code-theme': 'Тема отображения блока кода', + 'column': 'Количество столбцов', + 'comment': 'Комментарий', + 'confirm': 'Подтвердить', + 'content-theme': 'Тема отображения контента', + 'copied': 'Скопировано', + 'copy': 'Копировать', + 'delete-column': 'Удалить столбец', + 'delete-row': 'Удалить строку', + 'devtools': 'Граф документа', + 'down': 'Переместить вниз', + 'downloadTip': 'Браузер не поддерживает функции загрузки', + 'edit': 'Редактирование', + 'edit-mode': 'Переключить режим редактирования', + 'emoji': 'Смайлы', + 'export': 'Экспорт', + 'fileTypeError': 'Ошибка типа файла', + 'footnoteRef': 'Сноска', + 'fullscreen': 'Переключиться на полный экран', + 'generate': 'Генерация', + 'headings': 'Заголовки', + 'heading1': 'Заголовок 1 уровня', + 'heading2': 'Заголовок 2 уровня', + 'heading3': 'Заголовок 3 уровня', + 'heading4': 'Заголовок 4 уровня', + 'heading5': 'Заголовок 5 уровня', + 'heading6': 'Заголовок 6 уровня', + 'help': 'Помощь', + 'imageURL': 'Ссылка на картинку', + 'indent': 'Отступ', + 'info': 'Информация о редакторе', + 'inline-code': 'Встроенный код ', + 'insert-after': 'Вставить линию после этой строки', + 'insert-before': 'Вставить линию перед этой строкой', + 'insertColumnLeft': 'Вставить столбец слева', + 'insertColumnRight': 'Вставить столбец справа', + 'insertRowAbove': 'Вставить строку сверху', + 'insertRowBelow': 'Вставить строку снизу', + 'instantRendering': 'Мгновенный рендеринг', + 'italic': 'Курсив', + 'language': 'Синтаксис', + 'line': 'Линия', + 'link': 'Ссылка', + 'linkRef': 'Вставить ссылку', + 'list': 'Список', + 'more': 'Дополнительно', + 'nameEmpty': 'Имя пустое', + 'ordered-list': 'Упорядоченный список', + 'outdent': 'Выступ', + 'outline': 'Содержание', + 'over': 'Над', + 'performanceTip': 'Предварительный просмотр в реальном времени требует ${x}мс, вы можете закрыть его', + 'preview': 'Предпросмотр', + 'quote': 'Цитата', + 'record': 'Начать запись/Завершить запись', + 'record-tip': 'Устройство не поддерживает запись', + 'recording': 'Запись...', + 'redo': 'Вернуть', + 'remove': 'Удалить', + 'row': 'Количество строк', + 'spin': 'Прокрутка', + 'splitView': 'Разделенный просмотр', + 'strike': 'Зачеркнутый текст', + 'table': 'Таблица', + 'textIsNotEmpty': 'Текст (непустой)', + 'title': 'Заголовок', + 'tooltipText': 'Текст всплывающей подсказки', + 'undo': 'Отменить', + 'up': 'Переместить вверх', + 'update': 'Обновить', + 'upload': 'Загрузить изображение или файл', + 'uploadError': 'Ошибка загрузки', + 'uploading': 'Загрузка...', + 'wysiwyg': 'Редактор WYSIWYG', +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/sv_SE.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/sv_SE.js new file mode 100644 index 0000000..25cd9a0 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/sv_SE.js @@ -0,0 +1,86 @@ +window.VditorI18n = { + 'alignCenter': 'Centrera', + 'alignLeft': 'Vänsterställ', + 'alignRight': 'Högerställ', + 'alternateText': 'Alternativ text', + 'bold': 'Fet', + 'both': 'editera & granska', + 'cancelUpload': 'Avbryt uppladdning', + 'check': 'Att göra lista', + 'close': 'Stäng', + 'code': 'Kodblock', + 'code-theme': 'Granska tema för kodblock', + 'column': 'Kolumn', + 'comment': 'Kommentera', + 'confirm': 'Bekräfta', + 'content-theme': 'Granska tema för innehåll', + 'copied': 'Kopierad', + 'copy': 'Kopiera', + 'delete-column': 'Radera Kolumn', + 'delete-row': 'Radera Rad', + 'devtools': 'Utveckingsverktyg', + 'down': 'Ner', + 'downloadTip': 'Webläsaren kan ej hantera funktionen nedladdning', + 'edit': 'Redigera', + 'edit-mode': 'Skfta Redigeringsläge', + 'emoji': 'Emoji', + 'export': 'Exportera', + 'fileTypeError': 'Fel filtyp', + 'footnoteRef': 'Fotnotreferens', + 'fullscreen': 'Skifta fullskärmsläge', + 'generate': 'Genererar', + 'headings': 'Rubriker', + 'heading1': 'Rubriknivå 1', + 'heading2': 'Rubriknivå 2', + 'heading3': 'Rubriknivå 3', + 'heading4': 'Rubriknivå 4', + 'heading5': 'Rubriknivå 5', + 'heading6': 'Rubriknivå 6', + 'help': 'Hjälp', + 'imageURL': 'Bildlänk (URL)', + 'indent': 'Dra in', + 'info': 'Info', + 'inline-code': 'Dra in kod', + 'insert-after': 'Infoga rad efter', + 'insert-before': 'Infoga rad innan', + 'insertColumnLeft': 'Infoga kolumn till vänster', + 'insertColumnRight': 'Infoga kolumn till höger', + 'insertRowAbove': 'Infoga rad ovan', + 'insertRowBelow': 'Infoga rad under', + 'instantRendering': 'Omedelbar Rendering', + 'italic': 'Kursiv', + 'language': 'Språk', + 'line': 'Linje', + 'link': 'Länk', + 'linkRef': 'Länk Ref', + 'list': 'Lista', + 'more': 'Mer', + 'nameEmpty': 'Namn saknas', + 'ordered-list': 'Ordnad Lista', + 'outdent': 'Dra ut', + 'outline': 'Disponera', + 'over': 'över', + 'performanceTip': 'Granskning i realtid kräver ${x}ms, du kan stänga det', + 'preview': 'Granska', + 'quote': 'Citera', + 'record': 'Börja inspelning/Avsluta inspelning', + 'record-tip': 'Enheten stödjer inte inspelning', + 'recording': 'spelar in...', + 'redo': 'Gör om', + 'remove': 'Ta bort', + 'row': 'Rad', + 'spin': 'Snurra', + 'splitView': 'Splittad Vy', + 'strike': 'Genomstruket', + 'table': 'Tabell', + 'textIsNotEmpty': 'text(ej tom)', + 'title': 'Titel', + 'tooltipText': 'Tooltip text', + 'undo': 'Ångra', + 'up': 'Upp', + 'update': 'Uppdatera', + 'upload': 'Ladda upp bild eller fil', + 'uploadError': 'uppladdningsfel', + 'uploading': 'laddar upp...', + 'wysiwyg': 'WYSIWYG', +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/zh_CN.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/zh_CN.js new file mode 100644 index 0000000..1bee931 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/zh_CN.js @@ -0,0 +1,86 @@ +window.VditorI18n = { + 'alignCenter': '居中', + 'alignLeft': '居左', + 'alignRight': '居右', + 'alternateText': '替代文本', + 'bold': '粗体', + 'both': '编辑 & 预览', + 'cancelUpload': '取消上传', + 'check': '任务列表', + 'close': '关闭', + 'code': '代码块', + 'code-theme': '代码块主题预览', + 'column': '列', + 'comment': '评论', + 'confirm': '确定', + 'content-theme': '内容主题预览', + 'copied': '已复制', + 'copy': '复制', + 'delete-column': '删除列', + 'delete-row': '删除行', + 'devtools': '开发者工具', + 'down': '下', + 'downloadTip': '该浏览器不支持下载功能', + 'edit': '编辑', + 'edit-mode': '切换编辑模式', + 'emoji': '表情', + 'export': '导出', + 'fileTypeError': '文件类型不允许上传,请压缩后再试', + 'footnoteRef': '脚注标识', + 'fullscreen': '全屏切换', + 'generate': '生成中', + 'headings': '标题', + 'heading1': '一级标题', + 'heading2': '二级标题', + 'heading3': '三级标题', + 'heading4': '四级标题', + 'heading5': '五级标题', + 'heading6': '六级标题', + 'help': '帮助', + 'imageURL': '图片地址', + 'indent': '列表缩进', + 'info': '关于', + 'inline-code': '行内代码', + 'insert-after': '末尾插入行', + 'insert-before': '起始插入行', + 'insertColumnLeft': '在左边插入一列', + 'insertColumnRight': '在右边插入一列', + 'insertRowAbove': '在上方插入一行', + 'insertRowBelow': '在下方插入一行', + 'instantRendering': '即时渲染', + 'italic': '斜体', + 'language': '语言', + 'line': '分隔线', + 'link': '链接', + 'linkRef': '引用标识', + 'list': '无序列表', + 'more': '更多', + 'nameEmpty': '文件名不能为空', + 'ordered-list': '有序列表', + 'outdent': '列表反向缩进', + 'outline': '大纲', + 'over': '超过', + 'performanceTip': '实时预览需 ${x}ms,可点击编辑 & 预览按钮进行关闭', + 'preview': '预览', + 'quote': '引用', + 'record': '开始录音/结束录音', + 'record-tip': '该设备不支持录音功能', + 'recording': '录音中...', + 'redo': '重做', + 'remove': '删除', + 'row': '行', + 'spin': '旋转', + 'splitView': '分屏预览', + 'strike': '删除线', + 'table': '表格', + 'textIsNotEmpty': '文本(不能为空)', + 'title': '标题', + 'tooltipText': '提示文本', + 'undo': '撤销', + 'up': '上', + 'update': '更新', + 'upload': '上传图片或文件', + 'uploadError': '上传错误', + 'uploading': '上传中...', + 'wysiwyg': '所见即所得', +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/zh_TW.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/zh_TW.js new file mode 100644 index 0000000..26a6b78 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/i18n/zh_TW.js @@ -0,0 +1,86 @@ +window.VditorI18n = { + 'alignCenter': '置中', + 'alignLeft': '置左', + 'alignRight': '置右', + 'alternateText': '替代文字', + 'bold': '粗體', + 'both': '編輯 & 預覽', + 'cancelUpload': '取消上傳', + 'check': '任務列表', + 'close': '關閉', + 'code': '代碼塊', + 'code-theme': '代碼塊主題預覽', + 'column': '欄', + 'comment': '評論', + 'confirm': '確定', + 'content-theme': '內容主題預覽', + 'copied': '已複製', + 'copy': '複製', + 'delete-column': '刪除欄', + 'delete-row': '刪除列', + 'devtools': '開發者工具', + 'down': '下', + 'downloadTip': '該瀏覽器不支持下載功能', + 'edit': '編輯', + 'edit-mode': '切換編輯模式', + 'emoji': '表情', + 'export': '匯出', + 'fileTypeError': '檔案類型不允許上傳', + 'footnoteRef': '腳註參考', + 'fullscreen': '全螢幕切換', + 'generate': '生成中', + 'headings': '標題', + 'heading1': '一級標題', + 'heading2': '二級標題', + 'heading3': '三級標題', + 'heading4': '四級標題', + 'heading5': '五級標題', + 'heading6': '六級標題', + 'help': '幫助', + 'imageURL': '圖片位址', + 'indent': '列表縮排', + 'info': '關於', + 'inline-code': '行內代碼', + 'insert-after': '末尾插入列', + 'insert-before': '起始插入列', + 'insertColumnLeft': '在左邊插入一欄', + 'insertColumnRight': '在右邊插入一欄', + 'insertRowAbove': '在上方插入一行', + 'insertRowBelow': '在下方插入一行', + 'instantRendering': '即時渲染', + 'italic': '斜體', + 'language': '語言', + 'line': '分隔線', + 'link': '連結', + 'linkRef': '連結參考', + 'list': '無序列表', + 'more': '更多', + 'nameEmpty': '文件名不能為空', + 'ordered-list': '有序列表', + 'outdent': '列表反向縮排', + 'outline': '大綱', + 'over': '超過', + 'performanceTip': '即時預覽需 ${x}ms,可點擊編輯 & 預覽按鈕進行關閉', + 'preview': '預覽', + 'quote': '引用', + 'record': '開始錄音/結束錄音', + 'record-tip': '該設備不支持錄音功能', + 'recording': '錄音中...', + 'redo': '重做', + 'remove': '刪除', + 'row': '列', + 'spin': '旋轉', + 'splitView': '分割預覽', + 'strike': '刪除線', + 'table': '表格', + 'textIsNotEmpty': '文字(不能為空)', + 'title': '標題', + 'tooltipText': '提示文字', + 'undo': '撤銷', + 'up': '上', + 'update': '更新', + 'upload': '上傳圖片或文件', + 'uploadError': '上傳錯誤', + 'uploading': '上傳中...', + 'wysiwyg': '所見即所得', +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/icons/ant.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/icons/ant.js new file mode 100644 index 0000000..b8e0ca8 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/icons/ant.js @@ -0,0 +1,174 @@ +document.body.insertAdjacentHTML('afterBegin', `<svg style="position: absolute; width: 0; height: 0; overflow: hidden;" version="1.1" xmlns="http://www.w3.org/2000/svg"> + <defs> + <symbol id="vditor-icon-comment" viewBox="0 0 32 32"> + <path d="M18.177 12.965c-0.825 0-1.464 0.639-1.464 1.428s0.639 1.428 1.464 1.428c0.754 0 1.393-0.639 1.393-1.428s-0.639-1.428-1.393-1.428zM8.178 12.965c-0.825 0-1.464 0.639-1.464 1.428s0.639 1.428 1.464 1.428c0.754 0 1.393-0.639 1.393-1.428s-0.639-1.428-1.393-1.428z"></path> + <path d="M29.641 10.251c-1.637-2.234-3.964-3.878-6.663-4.622l-0.086-0.020v0.004c-0.611-0.679-1.3-1.303-2.071-1.861-5.846-4.25-14.053-2.953-18.32 2.893-3.439 4.75-3.293 11.139 0.214 15.678l0.029 4.735c0 0.114 0.018 0.229 0.054 0.336 0.15 0.467 0.581 0.799 1.089 0.799 0.123 0 0.241-0.019 0.351-0.055l-0.008 0.002 4.521-1.425c1.196 0.425 2.432 0.668 3.66 0.736l-0.018 0.014c3.182 2.318 7.353 3.014 11.178 1.75l4.539 1.478c0.114 0.036 0.232 0.057 0.354 0.057 0.632 0 1.143-0.511 1.143-1.143v-4.785c3.146-4.271 3.228-10.174 0.036-14.571zM9.249 24.179l-0.429-0.179-3.535 1.107-0.036-3.714-0.286-0.321c-3.021-3.686-3.221-8.996-0.393-12.892 3.443-4.721 10.042-5.764 14.749-2.357 4.721 3.432 5.767 10.021 2.357 14.713-2.861 3.925-7.982 5.375-12.428 3.643zM27.284 23.572l-0.286 0.357 0.036 3.714-3.5-1.178-0.429 0.179c-2 0.743-4.132 0.803-6.107 0.25l-0.007-0.004c2.782-0.871 5.098-2.559 6.731-4.781l0.026-0.036c2.728-3.761 3.171-8.485 1.586-12.514l0.021 0.014c0.821 0.589 1.575 1.325 2.214 2.214 2.593 3.557 2.446 8.399-0.286 11.785z"></path> + <path d="M13.177 12.965c-0.825 0-1.464 0.639-1.464 1.428s0.639 1.428 1.464 1.428c0.754 0 1.393-0.639 1.393-1.428s-0.639-1.428-1.393-1.428z"></path> + </symbol> + <symbol id="vditor-icon-mp-wechat" viewBox="0 0 32 32"> + <path d="M6.927 17.719s-3.040-3.431-2.915-6.942c0.16-4.453 4.738-10.257 11.359-10.257 1.884 0 5.653 0 10.328 5.52 0.249 0.302-15.075-3.84-18.772 11.679z"></path> + <path d="M17.477 9.301s3.946-1.298 7.271-0.178c4.222 1.422 8.693 6.826 6.809 13.182-0.533 1.804-1.609 5.413-8.231 8.32-0.356 0.16 10.613-13.351-5.849-21.323z"></path> + <path d="M10.944 24.332c-1.938 2.035-3.751 1.742-3.751 1.742l0.578-3.191c-5.235-3.44-6.373-10.328-6.453-10.106-2.444 6.817-0.916 11.377 0.027 13.004 3.315 5.733 11.982 7.351 17.484 3.893 2.969-1.867 4.533-7.057 4.533-7.057-5.298 2.338-9.342 2.569-12.417 1.715z"></path> + </symbol> + <symbol id="vditor-icon-code-theme" viewBox="0 0 32 32"> + <path d="M25.785 24.935c1.681 0 3.054-1.392 3.054-3.096 0-2.058-3.054-5.416-3.054-5.416s-3.054 3.358-3.054 5.416c0 1.704 1.373 3.096 3.054 3.096zM11.28 23.239c0.273 0.273 0.715 0.273 0.985 0l9.851-9.847c0.273-0.273 0.273-0.715 0-0.985l-9.847-9.847c-0.023-0.023-0.050-0.046-0.077-0.065l-3.008-3.008c-0.063-0.062-0.15-0.101-0.246-0.101s-0.183 0.039-0.246 0.101l-1.846 1.846c-0.062 0.063-0.101 0.15-0.101 0.246s0.039 0.183 0.101 0.246l2.585 2.585-7.993 7.997c-0.273 0.273-0.273 0.715 0 0.985l9.843 9.847zM11.777 5.984l6.881 6.881h-13.759l6.878-6.881zM31.078 27.693h-30.157c-0.169 0-0.308 0.138-0.308 0.308v3.077c0 0.169 0.138 0.308 0.308 0.308h30.157c0.169 0 0.308-0.138 0.308-0.308v-3.077c0-0.169-0.138-0.308-0.308-0.308z"></path> + </symbol> + <symbol id="vditor-icon-quote" viewBox="0 0 32 32"> + <path d="M31.452 15.517l-30.82-15.452c-0.125-0.063-0.269-0.077-0.405-0.044-0.313 0.077-0.508 0.394-0.431 0.711l3.176 12.976c0.048 0.195 0.192 0.354 0.383 0.416l5.442 1.868-5.438 1.868c-0.192 0.066-0.335 0.221-0.38 0.416l-3.183 12.995c-0.033 0.136-0.018 0.28 0.044 0.402 0.144 0.291 0.497 0.409 0.792 0.265l30.82-15.364c0.114-0.055 0.206-0.151 0.265-0.262 0.144-0.295 0.026-0.648-0.265-0.796zM3.429 27.58l1.853-7.575 10.876-3.732c0.085-0.029 0.155-0.096 0.184-0.184 0.052-0.155-0.029-0.321-0.184-0.376l-10.876-3.729-1.846-7.546 23.138 11.602-23.145 11.54z"></path> + </symbol> + <symbol id="vditor-icon-after" viewBox="0 0 32 32"> + <path d="M31.636 28.045h-31.272c-0.202 0-0.364 0.162-0.364 0.36v2.697c0 0.198 0.162 0.36 0.364 0.36h31.272c0.202 0 0.364-0.162 0.364-0.36v-2.697c0-0.198-0.162-0.36-0.364-0.36zM15.717 23.056c0.066 0.084 0.169 0.138 0.283 0.138s0.217-0.054 0.283-0.137l0.001-0.001 5.034-6.369c0.184-0.234 0.018-0.58-0.283-0.58h-3.33v-15.209c0-0.198-0.162-0.36-0.36-0.36h-2.697c-0.198 0-0.36 0.162-0.36 0.36v15.204h-3.321c-0.301 0-0.467 0.346-0.283 0.58l5.034 6.373z"></path> + </symbol> + <symbol id="vditor-icon-before" viewBox="0 0 32 32"> + <path d="M31.636 0.539h-31.272c-0.202 0-0.364 0.162-0.364 0.36v2.697c0 0.198 0.162 0.36 0.364 0.36h31.272c0.202 0 0.364-0.162 0.364-0.36v-2.697c0-0.198-0.162-0.36-0.364-0.36zM16.283 8.944c-0.066-0.084-0.169-0.138-0.283-0.138s-0.217 0.054-0.283 0.137l-0.001 0.001-5.034 6.369c-0.048 0.060-0.076 0.137-0.076 0.221 0 0.198 0.161 0.359 0.359 0.359 0 0 0.001 0 0.001 0h3.321v15.209c0 0.198 0.162 0.36 0.36 0.36h2.697c0.198 0 0.36-0.162 0.36-0.36v-15.204h3.33c0.301 0 0.467-0.346 0.283-0.58l-5.034-6.373z"></path> + </symbol> + <symbol id="vditor-icon-headings" viewBox="0 0 32 32"> + <path d="M8.889 14.222h14.222v-12.444c0-0.982 0.796-1.778 1.778-1.778s1.778 0.796 1.778 1.778v0 28.444c0 0.982-0.796 1.778-1.778 1.778s-1.778-0.796-1.778-1.778v0-12.444h-14.222v12.444c0 0.982-0.796 1.778-1.778 1.778s-1.778-0.796-1.778-1.778v0-28.444c0-0.982 0.796-1.778 1.778-1.778s1.778 0.796 1.778 1.778v0z"></path> + </symbol> + <symbol id="vditor-icon-line" viewBox="0 0 32 32"> + <path d="M31.68 14.56h-31.36c-0.176 0-0.32 0.144-0.32 0.32v2.24c0 0.176 0.144 0.32 0.32 0.32h31.36c0.176 0 0.32-0.144 0.32-0.32v-2.24c0-0.176-0.144-0.32-0.32-0.32z"></path> + </symbol> + <symbol id="vditor-icon-code" viewBox="0 0 32 32"> + <path d="M31.862 16.604c0.27-0.583 0.144-1.297-0.358-1.749l-6.422-5.782c-0.617-0.555-1.567-0.506-2.122 0.111s-0.506 1.567 0.111 2.122l5.206 4.688-5.237 4.716c-0.617 0.555-0.667 1.506-0.111 2.122s1.506 0.667 2.122 0.111l6.422-5.782c0.177-0.159 0.307-0.351 0.39-0.557zM3.725 15.981l5.206-4.688c0.617-0.555 0.667-1.506 0.111-2.122s-1.506-0.667-2.122-0.111l-6.422 5.782c-0.502 0.452-0.629 1.166-0.358 1.749 0.083 0.207 0.213 0.398 0.39 0.557l6.422 5.782c0.617 0.555 1.567 0.506 2.122-0.111s0.506-1.567-0.111-2.122l-5.237-4.716zM20.305 4.173c0.78 0.284 1.182 1.146 0.898 1.926l-7.581 20.83c-0.284 0.78-1.146 1.182-1.926 0.898s-1.182-1.146-0.898-1.926l7.581-20.83c0.284-0.78 1.146-1.182 1.926-0.898z"></path> + </symbol> + <symbol id="vditor-icon-inline-code" viewBox="0 0 32 32"> + <path d="M31.862 16.604c0.27-0.583 0.144-1.297-0.358-1.749l-6.422-5.782c-0.617-0.555-1.567-0.506-2.122 0.111v0 0c-0.555 0.617-0.506 1.567 0.111 2.122l5.206 4.688-5.237 4.716c-0.617 0.555-0.667 1.506-0.111 2.122s1.506 0.667 2.122 0.111l6.422-5.782c0.177-0.159 0.307-0.351 0.39-0.557zM3.725 15.981l5.206-4.688c0.617-0.555 0.667-1.506 0.111-2.122v0 0c-0.555-0.617-1.506-0.667-2.122-0.111v0l-6.422 5.782c-0.502 0.452-0.629 1.166-0.358 1.749 0.083 0.207 0.213 0.398 0.39 0.557l6.422 5.782c0.617 0.555 1.567 0.506 2.122-0.111s0.506-1.567-0.111-2.122l-5.237-4.716z"></path> + </symbol> + <symbol id="vditor-icon-both" viewBox="0 0 32 32"> + <path d="M31.858 22.232l-0.007-0.007c-1.575-3.332-4.014-5.047-7.261-5.047s-5.686 1.718-7.265 5.047v0.004c-0.193 0.411-0.193 0.889 0 1.3 1.579 3.329 4.018 5.043 7.265 5.043s5.686-1.718 7.265-5.047c0.193-0.411 0.193-0.886 0.004-1.293zM24.59 26.286c-2.218 0-3.836-1.071-5.040-3.411 1.2-2.339 2.822-3.411 5.040-3.411s3.836 1.071 5.040 3.411c-1.2 2.339-2.822 3.411-5.040 3.411z"></path> + <path d="M22.607 22.893c0 1.105 0.895 2 2 2s2-0.895 2-2v0c0-1.105-0.895-2-2-2s-2 0.895-2 2v0z"></path> + <path d="M2.571 6h25.144v9.036h2.572v-10.465c0-0.632-0.511-1.143-1.143-1.143h-28.001c-0.632 0-1.143 0.511-1.143 1.143v18.572c0 0.632 0.511 1.143 1.143 1.143h12.572v-2.572h-11.143v-15.715z"></path> + <path d="M23.604 9.789l-1.314-1.314c-0.111-0.111-0.293-0.111-0.404 0l-6.565 6.572-3.075-3.079c-0.111-0.111-0.293-0.111-0.404 0l-5.154 5.154c-0.111 0.111-0.111 0.293 0 0.404l1.314 1.314c0.111 0.111 0.293 0.111 0.404 0l3.636-3.636 3.075 3.079c0.111 0.111 0.293 0.111 0.404 0l8.082-8.090c0.114-0.111 0.114-0.293 0-0.404z"></path> + </symbol> + <symbol id="vditor-icon-theme" viewBox="0 0 32 32"> + <path d="M30.249 0.637h-8.207c-0.693 0-1.309 0.474-1.473 1.166-0.497 2.102-2.38 3.61-4.569 3.61s-4.072-1.508-4.569-3.61c-0.161-0.673-0.758-1.166-1.47-1.166-0.001 0-0.002 0-0.003 0h-8.207c-0.967 0-1.751 0.784-1.751 1.751v0 10.030c0 0.967 0.784 1.751 1.751 1.751v0h2.985v15.443c0 0.967 0.784 1.751 1.751 1.751v0h19.025c0.967 0 1.751-0.784 1.751-1.751v0-15.443h2.985c0.967 0 1.751-0.784 1.751-1.751v0-10.030c0-0.967-0.784-1.751-1.751-1.751v0zM29.134 11.303h-4.736v17.194h-16.796v-17.194h-4.736v-7.801h6.101c1.122 2.834 3.881 4.776 7.033 4.776s5.91-1.942 7.033-4.776h6.102v7.801z"></path> + </symbol> + <symbol id="vditor-icon-resize" viewBox="0 0 128 32"> + <path d="M1.28 0c-0.704 0-1.28 0.163-1.28 0.365 0 0.291 0 2.618 0 2.909 0 0.198 0.576 0.362 1.28 0.362 12.544 0 112.896 0 125.44 0 0.704 0 1.28-0.163 1.28-0.362 0-0.291 0-2.618 0-2.909 0-0.202-0.576-0.365-1.28-0.365-25.088 0-112.896 0-125.44 0zM1.28 28.365c-0.704 0-1.28 0.163-1.28 0.362 0 0.291 0 2.618 0 2.909 0 0.202 0.576 0.365 1.28 0.365 12.544 0 112.896 0 125.44 0 0.704 0 1.28-0.163 1.28-0.365 0-0.291 0-2.618 0-2.909 0-0.198-0.576-0.362-1.28-0.362-25.088 0-112.896 0-125.44 0zM1.28 14.182c-0.704 0-1.28 0.163-1.28 0.362 0 0.291 0 2.621 0 2.912 0 0.198 0.576 0.362 1.28 0.362 12.544 0 112.896 0 125.44 0 0.704 0 1.28-0.163 1.28-0.362 0-0.291 0-2.621 0-2.912 0-0.198-0.576-0.362-1.28-0.362-25.088 0-112.896 0-125.44 0z"></path> + </symbol> + <symbol id="vditor-icon-export" viewBox="0 0 32 32"> + <path d="M31.399 26.042h-2.202c-0.172 0-0.315 0.143-0.315 0.315v2.529h-25.769v-25.773h25.773v2.529c0 0.172 0.143 0.315 0.315 0.315h2.202c0.172 0 0.315-0.139 0.315-0.315v-4.1c0-0.696-0.561-1.256-1.256-1.256h-28.92c-0.696 0-1.256 0.561-1.256 1.256v28.916c0 0.696 0.561 1.256 1.256 1.256h28.916c0.696 0 1.256-0.561 1.256-1.256v-4.1c0-0.176-0.143-0.315-0.315-0.315zM32.16 15.742l-5.807-4.583c-0.217-0.172-0.532-0.016-0.532 0.258v3.11h-12.85c-0.18 0-0.327 0.147-0.327 0.327v2.292c0 0.18 0.147 0.327 0.327 0.327h12.85v3.11c0 0.274 0.319 0.43 0.532 0.258l5.807-4.583c0.077-0.060 0.126-0.153 0.126-0.258s-0.049-0.197-0.125-0.257l-0.001-0.001z"></path> + </symbol> + <symbol id="vditor-icon-copy" viewBox="0 0 32 32"> + <path d="M27.429 0h-19.143c-0.157 0-0.286 0.129-0.286 0.286v2c0 0.157 0.129 0.286 0.286 0.286h17.714v24.571c0 0.157 0.129 0.286 0.286 0.286h2c0.157 0 0.286-0.129 0.286-0.286v-26c0-0.632-0.511-1.143-1.143-1.143zM22.857 4.571h-18.286c-0.632 0-1.143 0.511-1.143 1.143v18.954c0 0.304 0.121 0.593 0.336 0.807l6.189 6.189c0.079 0.079 0.168 0.143 0.264 0.196v0.068h0.15c0.125 0.046 0.257 0.071 0.393 0.071h12.096c0.632 0 1.143-0.511 1.143-1.143v-25.143c0-0.632-0.511-1.143-1.143-1.143zM10.214 28.293l-3.075-3.079h3.075v3.079zM21.429 29.429h-8.929v-5.071c0-0.789-0.639-1.429-1.429-1.429h-5.071v-15.786h15.429v22.286z"></path> + </symbol> + <symbol id="vditor-icon-pause" viewBox="0 0 32 32"> + <path d="M6.095 0h3.81v32h-3.81zM25.524 0h-3.048c-0.21 0-0.381 0.171-0.381 0.381v31.238c0 0.21 0.171 0.381 0.381 0.381h3.048c0.21 0 0.381-0.171 0.381-0.381v-31.238c0-0.21-0.171-0.381-0.381-0.381z"></path> + </symbol> + <symbol id="vditor-icon-preview" viewBox="0 0 32 32"> + <path d="M31.788 15.053c-3.479-7.329-8.738-11.017-15.788-11.017-7.054 0-12.309 3.688-15.788 11.021-0.134 0.277-0.212 0.602-0.212 0.945s0.078 0.668 0.218 0.958l-0.006-0.013c3.479 7.329 8.738 11.017 15.788 11.017 7.054 0 12.309-3.688 15.788-11.021 0.283-0.595 0.283-1.284 0-1.89zM16 25.322c-5.92 0-10.254-3.002-13.311-9.322 3.057-6.32 7.391-9.322 13.311-9.322s10.254 3.002 13.311 9.322c-3.053 6.32-7.388 9.322-13.311 9.322zM15.853 9.541c-3.567 0-6.459 2.892-6.459 6.459s2.892 6.459 6.459 6.459 6.459-2.892 6.459-6.459-2.892-6.459-6.459-6.459zM15.853 20.11c-2.272 0-4.11-1.839-4.11-4.11s1.839-4.11 4.11-4.11 4.11 1.839 4.11 4.11-1.839 4.11-4.11 4.11z"></path> + </symbol> + <symbol id="vditor-icon-edit" viewBox="0 0 32 32"> + <path d="M31.68 16h-2.24c-0.176 0-0.32 0.144-0.32 0.32v12.8h-26.239v-26.239h12.8c0.176 0 0.32-0.144 0.32-0.32v-2.24c0-0.176-0.144-0.32-0.32-0.32h-14.4c-0.708 0-1.28 0.572-1.28 1.28v29.439c0 0.708 0.572 1.28 1.28 1.28h29.439c0.708 0 1.28-0.572 1.28-1.28v-14.4c0-0.176-0.144-0.32-0.32-0.32z"></path> + <path d="M9.756 16.916l-0.076 4.756c-0.004 0.356 0.284 0.648 0.64 0.648h0.016l4.72-0.116c0.080-0.004 0.16-0.036 0.216-0.092l16.635-16.599c0.124-0.124 0.124-0.328 0-0.452l-4.972-4.968c-0.064-0.064-0.144-0.092-0.228-0.092s-0.164 0.032-0.228 0.092l-16.631 16.599c-0.056 0.058-0.091 0.137-0.092 0.224v0zM12.296 17.86l14.412-14.38 1.808 1.804-14.42 14.388-1.828 0.044 0.028-1.856z"></path> + </symbol> + <symbol id="vditor-icon-info" viewBox="0 0 32 32"> + <path d="M13.124 3.056c0 1.589 1.288 2.876 2.876 2.876s2.876-1.288 2.876-2.876v0c0-1.589-1.288-2.876-2.876-2.876s-2.876 1.288-2.876 2.876v0zM17.438 10.607h-2.876c-0.198 0-0.36 0.162-0.36 0.36v20.854c0 0.198 0.162 0.36 0.36 0.36h2.876c0.198 0 0.36-0.162 0.36-0.36v-20.854c0-0.198-0.162-0.36-0.36-0.36z"></path> + </symbol> + <symbol id="vditor-icon-help" viewBox="0 0 32 32"> + <path d="M26.419 6.445c-0.579-1.265-1.402-2.402-2.452-3.374-2.133-1.98-4.965-3.072-7.967-3.072s-5.834 1.091-7.967 3.068c-1.050 0.976-1.873 2.109-2.452 3.378-0.604 1.323-0.91 2.725-0.91 4.172v1.116c0 0.256 0.207 0.463 0.463 0.463h2.233c0.256 0 0.463-0.207 0.463-0.463v-1.116c0-4.114 3.663-7.458 8.169-7.458s8.169 3.345 8.169 7.458c0 1.687-0.599 3.274-1.736 4.597-1.125 1.311-2.712 2.249-4.469 2.646-1.005 0.227-1.91 0.794-2.551 1.604-0.615 0.772-0.987 1.76-0.988 2.836v1.299c0 0.256 0.207 0.463 0.463 0.463h2.233c0.256 0 0.463-0.207 0.463-0.463v-1.298c0-0.649 0.451-1.22 1.075-1.36 2.414-0.546 4.606-1.848 6.173-3.667 0.79-0.922 1.406-1.947 1.832-3.059 0.442-1.153 0.666-2.365 0.666-3.597 0-1.447-0.306-2.853-0.91-4.172zM16 27.369c-1.278 0-2.315 1.038-2.315 2.315s1.038 2.315 2.315 2.315 2.315-1.038 2.315-2.315-1.038-2.315-2.315-2.315z"></path> + </symbol> + <symbol id="vditor-icon-strike" viewBox="0 0 32 32"> + <path d="M31.714 14.643h-13.646c-0.357-0.071-0.732-0.143-1.129-0.214-0.568-0.104-0.793-0.146-1.1-0.207-1.832-0.357-2.936-0.714-3.814-1.221-1.254-0.732-1.864-1.725-1.864-3.039 0-1.321 0.543-2.418 1.571-3.179 1.014-0.75 2.457-1.146 4.171-1.146 1.957 0 3.468 0.514 4.493 1.529 0.521 0.514 0.904 1.146 1.136 1.879 0.046 0.146 0.1 0.357 0.154 0.636 0.032 0.171 0.186 0.293 0.354 0.293h2.6c0.2 0 0.361-0.164 0.361-0.361v-0.036c-0.025-0.243-0.046-0.432-0.071-0.571-0.261-1.554-1-2.918-2.132-3.939-1.586-1.446-3.918-2.207-6.739-2.207-2.582 0-4.907 0.646-6.546 1.818-0.914 0.657-1.621 1.471-2.093 2.418-0.482 0.968-0.725 2.086-0.725 3.318 0 1.054 0.204 1.946 0.618 2.732 0.296 0.561 0.7 1.054 1.218 1.5h-8.243c-0.157 0-0.286 0.129-0.286 0.286v2.143c0 0.157 0.129 0.286 0.286 0.286h15.471c0.075 0.014 0.139 0.029 0.211 0.043 1.104 0.221 1.768 0.371 2.379 0.543 0.821 0.232 1.45 0.475 1.971 0.768 1.279 0.721 1.904 1.757 1.904 3.179 0 1.261-0.554 2.386-1.557 3.171-1.089 0.854-2.7 1.3-4.661 1.3-1.561 0-2.882-0.304-3.936-0.893-1.039-0.582-1.754-1.421-2.132-2.482-0.029-0.079-0.061-0.186-0.096-0.321-0.043-0.157-0.189-0.268-0.346-0.268h-2.846c-0.2 0-0.361 0.164-0.361 0.361v0.036c0.007 0.082 0.014 0.15 0.021 0.204 0.232 1.743 1.082 3.171 2.525 4.243 1.682 1.243 4.050 1.9 6.85 1.9 3.007 0 5.529-0.707 7.293-2.046 0.893-0.675 1.579-1.507 2.039-2.464 0.464-0.968 0.704-2.068 0.704-3.268 0-1.136-0.207-2.086-0.636-2.907-0.207-0.4-0.468-0.768-0.779-1.1h7.411c0.157 0 0.286-0.129 0.286-0.286v-2.143c-0.002-0.156-0.129-0.282-0.286-0.282 0 0 0 0-0 0v0z"></path> + </symbol> + <symbol id="vditor-icon-contract" viewBox="0 0 32 32"> + <path d="M31.9 2.040l-1.94-1.94c-0.062-0.062-0.148-0.1-0.243-0.1s-0.181 0.038-0.243 0.1l-6.774 6.778-2.352-2.353c-0.062-0.062-0.147-0.1-0.241-0.1-0.175 0-0.319 0.131-0.339 0.3l-0 0.002-1.011 8.133c-0.026 0.224 0.159 0.409 0.383 0.383l8.137-1.011c0.284-0.034 0.4-0.378 0.202-0.581l-2.352-2.352 6.778-6.778c0.129-0.129 0.129-0.348-0.004-0.482zM12.86 18.757l-8.137 1.011c-0.284 0.034-0.4 0.383-0.202 0.581l2.353 2.352-6.774 6.774c-0.062 0.062-0.1 0.148-0.1 0.243s0.038 0.181 0.1 0.243l1.94 1.94c0.133 0.133 0.353 0.133 0.486 0l6.778-6.778 2.352 2.352c0.062 0.062 0.147 0.1 0.241 0.1 0.175 0 0.319-0.131 0.339-0.3l0-0.002 1.006-8.133c0.002-0.014 0.003-0.030 0.003-0.046 0-0.188-0.152-0.34-0.34-0.34-0.016 0-0.032 0.001-0.048 0.003l0.002-0z"></path> + </symbol> + <symbol id="vditor-icon-record" viewBox="0 0 32 32"> + <path d="M27.786 13.929c0-0.157-0.129-0.286-0.286-0.286h-2.143c-0.157 0-0.286 0.129-0.286 0.286 0 5.011-4.061 9.071-9.071 9.071s-9.071-4.061-9.071-9.071c0-0.157-0.129-0.286-0.286-0.286h-2.143c-0.157 0-0.286 0.129-0.286 0.286 0 6.025 4.521 10.996 10.357 11.7v3.657h-5.189c-0.489 0-0.882 0.511-0.882 1.143v1.286c0 0.157 0.1 0.286 0.221 0.286h14.557c0.121 0 0.221-0.129 0.221-0.286v-1.286c0-0.632-0.393-1.143-0.882-1.143h-5.332v-3.639c5.904-0.643 10.5-5.643 10.5-11.718zM16 20c3.354 0 6.071-2.686 6.071-6v-8c0-3.314-2.718-6-6.071-6s-6.071 2.686-6.071 6v8c0 3.314 2.718 6 6.071 6zM12.643 6c0-1.807 1.496-3.286 3.357-3.286s3.357 1.479 3.357 3.286v8c0 1.807-1.496 3.286-3.357 3.286s-3.357-1.479-3.357-3.286v-8z"></path> + </symbol> + <symbol id="vditor-icon-bold" viewBox="0 0 32 32"> + <path d="M24.078 14.67c1.461-1.522 2.357-3.578 2.357-5.839v-0.443c0-4.678-3.83-8.474-8.552-8.474h-12.865c-0.657 0-1.191 0.535-1.191 1.191v29.526c0 0.709 0.574 1.283 1.283 1.283h13.857c5.087 0 9.209-4.096 9.209-9.152v-0.478c0-3.174-1.626-5.97-4.096-7.613zM8 4.087h9.77c2.483 0 4.491 1.93 4.491 4.317v0.413c0 2.383-2.013 4.317-4.491 4.317h-9.77v-9.048zM23.939 22.757c0 2.735-2.248 4.952-5.022 4.952h-10.917v-10.374h10.917c2.774 0 5.022 2.217 5.022 4.952v0.47z"></path> + </symbol> + <symbol id="vditor-icon-bug" viewBox="0 0 32 32"> + <path d="M8.571 7.714h2c0.157 0 0.286-0.129 0.286-0.286 0-1.011 0.211-1.9 0.611-2.625 0.379-0.693 0.929-1.243 1.621-1.621 0.729-0.396 1.614-0.611 2.625-0.611h0.571c1.011 0 1.9 0.211 2.625 0.611 0.693 0.379 1.243 0.929 1.621 1.621 0.396 0.729 0.611 1.614 0.611 2.625 0 0.157 0.129 0.286 0.286 0.286h2c0.157 0 0.286-0.129 0.286-0.286 0-1.429-0.314-2.739-0.925-3.861-0.614-1.125-1.518-2.029-2.643-2.643-1.121-0.611-2.432-0.925-3.861-0.925h-0.571c-1.429 0-2.739 0.314-3.861 0.925-1.125 0.614-2.029 1.518-2.643 2.643-0.611 1.121-0.925 2.432-0.925 3.861 0 0.157 0.129 0.286 0.286 0.286z"></path> + <path d="M31.286 16h-5.286v-3.571c2.743 0 4.964-2.221 4.964-4.964 0-0.157-0.129-0.286-0.286-0.286h-2.143c-0.157 0-0.286 0.129-0.286 0.286 0 1.243-1.007 2.25-2.25 2.25h-20c-1.243 0-2.25-1.007-2.25-2.25 0-0.157-0.129-0.286-0.286-0.286h-2.143c-0.157 0-0.286 0.129-0.286 0.286 0 2.743 2.221 4.964 4.964 4.964v3.571h-5.286c-0.157 0-0.286 0.129-0.286 0.286v2c0 0.157 0.129 0.286 0.286 0.286h5.286v3.429c0 0.232 0.007 0.464 0.025 0.689-2.45 1.046-4.168 3.479-4.168 6.311 0 0.157 0.129 0.286 0.286 0.286h2c0.157 0 0.286-0.129 0.286-0.286 0-1.579 0.854-2.961 2.129-3.704 0.214 0.614 0.486 1.2 0.811 1.75 0.868 1.482 2.107 2.721 3.589 3.589s3.204 1.364 5.043 1.364 3.564-0.496 5.046-1.364c1.482-0.868 2.721-2.107 3.589-3.589 0.325-0.554 0.596-1.139 0.811-1.75 1.271 0.743 2.125 2.125 2.125 3.704 0 0.157 0.129 0.286 0.286 0.286h2c0.157 0 0.286-0.129 0.286-0.286 0-2.832-1.718-5.264-4.168-6.311 0.014-0.229 0.025-0.457 0.025-0.689v-3.429h5.286c0.157 0 0.286-0.129 0.286-0.286v-2c0-0.157-0.129-0.286-0.286-0.286zM23.286 22c0 1.314-0.346 2.571-0.993 3.675-0.632 1.082-1.536 1.986-2.618 2.618-1.104 0.646-2.361 0.993-3.675 0.993s-2.571-0.346-3.675-0.993c-1.082-0.632-1.986-1.536-2.618-2.618-0.646-1.104-0.993-2.361-0.993-3.675v-9.571h14.571v9.571z"></path> + </symbol> + <symbol id="vditor-icon-play" viewBox="0 0 32 32"> + <path d="M25.263 15.159l-17.308-14.927c-0.645-0.555-1.591-0.055-1.591 0.841v29.853c0 0.895 0.945 1.395 1.591 0.841l17.308-14.927c0.495-0.427 0.495-1.255 0-1.682z"></path> + </symbol> + <symbol id="vditor-icon-check" viewBox="0 0 32 32"> + <path d="M12.844 21.828c0.234 0.323 0.61 0.531 1.034 0.531s0.8-0.208 1.031-0.527l0.003-0.004 8.424-11.68c0.152-0.212 0-0.508-0.26-0.508h-1.876c-0.408 0-0.796 0.196-1.036 0.532l-6.284 8.72-2.848-3.952c-0.24-0.332-0.624-0.532-1.036-0.532h-1.876c-0.26 0-0.412 0.296-0.26 0.508l4.984 6.912z"></path> + <path d="M30.72 0h-29.44c-0.708 0-1.28 0.572-1.28 1.28v29.44c0 0.708 0.572 1.28 1.28 1.28h29.44c0.708 0 1.28-0.572 1.28-1.28v-29.44c0-0.708-0.572-1.28-1.28-1.28zM29.12 29.12h-26.24v-26.24h26.24v26.24z"></path> + </symbol> + <symbol id="vditor-icon-upload" viewBox="0 0 32 32"> + <path d="M16.225 14.107c-0.053-0.067-0.134-0.11-0.225-0.11s-0.172 0.043-0.225 0.109l-0 0.001-4 5.061c-0.038 0.048-0.061 0.109-0.061 0.176 0 0.157 0.128 0.285 0.285 0.285 0 0 0 0 0.001 0h2.639v8.657c0 0.157 0.129 0.286 0.286 0.286h2.143c0.157 0 0.286-0.129 0.286-0.286v-8.654h2.646c0.239 0 0.371-0.275 0.225-0.461l-4-5.064z"></path> + <path d="M26.693 10.811c-1.636-4.314-5.804-7.382-10.686-7.382s-9.050 3.064-10.686 7.379c-3.061 0.804-5.321 3.593-5.321 6.907 0 3.946 3.196 7.143 7.139 7.143h1.432c0.157 0 0.286-0.129 0.286-0.286v-2.143c0-0.157-0.129-0.286-0.286-0.286h-1.432c-1.204 0-2.336-0.479-3.179-1.346-0.839-0.864-1.286-2.029-1.246-3.236 0.032-0.943 0.354-1.829 0.936-2.575 0.596-0.761 1.432-1.314 2.361-1.561l1.354-0.354 0.496-1.307c0.307-0.814 0.736-1.575 1.275-2.264 0.537-0.685 1.154-1.273 1.844-1.764l0.027-0.018c1.468-1.032 3.196-1.579 5-1.579s3.532 0.546 5 1.579c0.711 0.5 1.339 1.1 1.871 1.782 0.539 0.689 0.968 1.454 1.275 2.264l0.493 1.304 1.35 0.357c1.936 0.521 3.289 2.282 3.289 4.289 0 1.182-0.461 2.296-1.296 3.132-0.796 0.801-1.899 1.296-3.117 1.296-0.004 0-0.008 0-0.012 0h-1.431c-0.157 0-0.286 0.129-0.286 0.286v2.143c0 0.157 0.129 0.286 0.286 0.286h1.432c3.943 0 7.139-3.196 7.139-7.143 0-3.311-2.254-6.096-5.307-6.904z"></path> + </symbol> + <symbol id="vditor-icon-trashcan" viewBox="0 0 32 32"> + <path d="M9.92 2.88h-0.32c0.176 0 0.32-0.144 0.32-0.32v0.32h12.16v-0.32c0 0.176 0.144 0.32 0.32 0.32h-0.32v2.88h2.88v-3.2c0-1.412-1.148-2.56-2.56-2.56h-12.8c-1.412 0-2.56 1.148-2.56 2.56v3.2h2.88v-2.88zM30.080 5.76h-28.16c-0.708 0-1.28 0.572-1.28 1.28v1.28c0 0.176 0.144 0.32 0.32 0.32h2.416l0.988 20.92c0.064 1.364 1.192 2.44 2.556 2.44h18.16c1.368 0 2.492-1.072 2.556-2.44l0.988-20.92h2.416c0.176 0 0.32-0.144 0.32-0.32v-1.28c0-0.708-0.572-1.28-1.28-1.28zM24.772 29.12h-17.544l-0.968-20.48h19.48l-0.968 20.48z"></path> + </symbol> + <symbol id="vditor-icon-more" viewBox="0 0 32 32"> + <path d="M0 15.952c0 1.473 1.194 2.667 2.667 2.667s2.667-1.194 2.667-2.667v0c0-1.473-1.194-2.667-2.667-2.667s-2.667 1.194-2.667 2.667v0zM13.333 15.952c0 1.473 1.194 2.667 2.667 2.667s2.667-1.194 2.667-2.667v0c0-1.473-1.194-2.667-2.667-2.667s-2.667 1.194-2.667 2.667v0zM26.667 15.952c0 1.473 1.194 2.667 2.667 2.667s2.667-1.194 2.667-2.667v0c0-1.473-1.194-2.667-2.667-2.667s-2.667 1.194-2.667 2.667v0z"></path> + </symbol> + <symbol id="vditor-icon-fullscreen" viewBox="0 0 32 32"> + <path d="M31.592 0.003l-8.601 1.068c-0.3 0.036-0.423 0.4-0.214 0.614l2.487 2.487-6.978 6.978c-0.065 0.066-0.106 0.157-0.106 0.257s0.040 0.191 0.106 0.257l2.050 2.050c0.141 0.141 0.373 0.141 0.514 0l6.983-6.983 2.487 2.487c0.065 0.065 0.155 0.106 0.255 0.106 0.185 0 0.337-0.139 0.358-0.318l0-0.002 1.064-8.596c0.002-0.015 0.003-0.032 0.003-0.049 0-0.198-0.161-0.359-0.359-0.359-0.017 0-0.034 0.001-0.051 0.004l0.002-0zM11.663 18.287c-0.066-0.065-0.157-0.106-0.257-0.106s-0.191 0.040-0.257 0.106l-6.978 6.982-2.487-2.487c-0.065-0.065-0.155-0.106-0.255-0.106-0.185 0-0.337 0.139-0.358 0.318l-0 0.002-1.068 8.596c-0.027 0.236 0.168 0.432 0.405 0.405l8.601-1.068c0.3-0.036 0.423-0.4 0.214-0.614l-2.487-2.487 6.983-6.983c0.141-0.141 0.141-0.373 0-0.514l-2.055-2.046z"></path> + </symbol> + <symbol id="vditor-icon-emoji" viewBox="0 0 32 32"> + <path d="M8 12.75c0 0.947 0.768 1.714 1.714 1.714s1.714-0.768 1.714-1.714v0c0-0.947-0.768-1.714-1.714-1.714s-1.714 0.768-1.714 1.714v0zM20.571 12.75c0 0.947 0.767 1.714 1.714 1.714s1.714-0.768 1.714-1.714v0c0-0.947-0.767-1.714-1.714-1.714s-1.714 0.768-1.714 1.714v0zM16 0c-8.836 0-16 7.164-16 16s7.164 16 16 16 16-7.164 16-16-7.164-16-16-16zM25.393 25.393c-1.221 1.221-2.643 2.179-4.225 2.85-1.632 0.693-3.371 1.043-5.168 1.043s-3.536-0.35-5.171-1.043c-1.643-0.704-3.045-1.666-4.225-2.85l-0-0c-1.221-1.221-2.179-2.643-2.85-4.225-0.689-1.632-1.039-3.371-1.039-5.168s0.35-3.536 1.043-5.171c0.704-1.643 1.666-3.045 2.85-4.225l0-0c1.221-1.221 2.643-2.179 4.225-2.85 1.632-0.689 3.371-1.039 5.168-1.039s3.536 0.35 5.171 1.043c1.643 0.704 3.045 1.666 4.225 2.85l0 0c1.221 1.221 2.179 2.643 2.85 4.225 0.689 1.632 1.039 3.371 1.039 5.168s-0.35 3.536-1.043 5.171c-0.703 1.642-1.665 3.043-2.849 4.221l-0.001 0.001zM21.429 16.75h-1.718c-0.15 0-0.279 0.114-0.289 0.264-0.136 1.768-1.618 3.164-3.421 3.164s-3.289-1.396-3.421-3.164c-0.011-0.15-0.139-0.264-0.289-0.264h-1.718c-0 0-0 0-0 0-0.158 0-0.286 0.128-0.286 0.286 0 0.005 0 0.010 0 0.015l-0-0.001c0.157 3.011 2.661 5.414 5.714 5.414s5.557-2.404 5.714-5.414c0-0.004 0-0.009 0-0.014 0-0.158-0.128-0.286-0.286-0.286-0 0-0 0-0 0h0z"></path> + </symbol> + <symbol id="vditor-icon-align-center" viewBox="0 0 32 32"> + <path d="M6.080 4.72h19.84c0.176 0 0.32-0.144 0.32-0.32v-2.24c0-0.176-0.144-0.32-0.32-0.32h-19.84c-0.176 0-0.32 0.144-0.32 0.32v2.24c0 0.176 0.144 0.32 0.32 0.32zM25.92 21.68c0.176 0 0.32-0.144 0.32-0.32v-2.24c0-0.176-0.144-0.32-0.32-0.32h-19.84c-0.176 0-0.32 0.144-0.32 0.32v2.24c0 0.176 0.144 0.32 0.32 0.32h19.84zM31.68 27.28h-31.36c-0.176 0-0.32 0.144-0.32 0.32v2.24c0 0.176 0.144 0.32 0.32 0.32h31.36c0.176 0 0.32-0.144 0.32-0.32v-2.24c0-0.176-0.144-0.32-0.32-0.32zM31.68 10.32h-31.36c-0.176 0-0.32 0.144-0.32 0.32v2.24c0 0.176 0.144 0.32 0.32 0.32h31.36c0.176 0 0.32-0.144 0.32-0.32v-2.24c0-0.176-0.144-0.32-0.32-0.32z"></path> + </symbol> + <symbol id="vditor-icon-align-left" viewBox="0 0 32 32"> + <path d="M0.32 4.72h19.84c0.176 0 0.32-0.144 0.32-0.32v-2.24c0-0.176-0.144-0.32-0.32-0.32h-19.84c-0.176 0-0.32 0.144-0.32 0.32v2.24c0 0.176 0.144 0.32 0.32 0.32zM0.32 21.68h19.84c0.176 0 0.32-0.144 0.32-0.32v-2.24c0-0.176-0.144-0.32-0.32-0.32h-19.84c-0.176 0-0.32 0.144-0.32 0.32v2.24c0 0.176 0.144 0.32 0.32 0.32zM31.68 27.28h-31.36c-0.176 0-0.32 0.144-0.32 0.32v2.24c0 0.176 0.144 0.32 0.32 0.32h31.36c0.176 0 0.32-0.144 0.32-0.32v-2.24c0-0.176-0.144-0.32-0.32-0.32zM31.68 10.32h-31.36c-0.176 0-0.32 0.144-0.32 0.32v2.24c0 0.176 0.144 0.32 0.32 0.32h31.36c0.176 0 0.32-0.144 0.32-0.32v-2.24c0-0.176-0.144-0.32-0.32-0.32z"></path> + </symbol> + <symbol id="vditor-icon-align-right" viewBox="0 0 32 32"> + <path d="M31.68 1.84h-19.84c-0.176 0-0.32 0.144-0.32 0.32v2.24c0 0.176 0.144 0.32 0.32 0.32h19.84c0.176 0 0.32-0.144 0.32-0.32v-2.24c0-0.176-0.144-0.32-0.32-0.32zM31.68 18.8h-19.84c-0.176 0-0.32 0.144-0.32 0.32v2.24c0 0.176 0.144 0.32 0.32 0.32h19.84c0.176 0 0.32-0.144 0.32-0.32v-2.24c0-0.176-0.144-0.32-0.32-0.32zM31.68 27.28h-31.36c-0.176 0-0.32 0.144-0.32 0.32v2.24c0 0.176 0.144 0.32 0.32 0.32h31.36c0.176 0 0.32-0.144 0.32-0.32v-2.24c0-0.176-0.144-0.32-0.32-0.32zM31.68 10.32h-31.36c-0.176 0-0.32 0.144-0.32 0.32v2.24c0 0.176 0.144 0.32 0.32 0.32h31.36c0.176 0 0.32-0.144 0.32-0.32v-2.24c0-0.176-0.144-0.32-0.32-0.32z"></path> + </symbol> + <symbol id="vditor-icon-delete-column" viewBox="0 0 32 32"> + <path d="M21.563 21.195c-0.056-0.048-0.128-0.076-0.204-0.076h-2.188c-0.096 0-0.184 0.044-0.244 0.116l-2.928 3.512-2.924-3.512c-0.060-0.072-0.152-0.116-0.244-0.116h-2.192c-0.076 0-0.148 0.028-0.204 0.076-0.136 0.112-0.156 0.316-0.040 0.452l4.091 4.911-4.096 4.915c-0.112 0.136-0.096 0.336 0.040 0.452 0.056 0.048 0.128 0.076 0.204 0.076h2.188c0.096 0 0.184-0.044 0.244-0.116l2.924-3.512 2.924 3.512c0.060 0.072 0.152 0.116 0.244 0.116h2.2c0.076 0 0.148-0.028 0.204-0.076 0.136-0.112 0.156-0.316 0.040-0.452l-4.091-4.915 4.096-4.915c0.112-0.136 0.092-0.336-0.044-0.448zM14.4 17.28h3.2c0.176 0 0.32-0.144 0.32-0.32v-16.638c0-0.176-0.144-0.32-0.32-0.32h-3.2c-0.176 0-0.32 0.144-0.32 0.32v16.638c0 0.176 0.144 0.32 0.32 0.32zM9.521 10.961h-6.639v-9.999c0-0.132-0.108-0.24-0.24-0.24h-2.4c-0.132 0-0.24 0.108-0.24 0.24v11.679c0 0.664 0.536 1.2 1.2 1.2h8.319c0.132 0 0.24-0.108 0.24-0.24v-2.4c0-0.132-0.108-0.24-0.24-0.24zM31.758 0.722h-2.4c-0.132 0-0.24 0.108-0.24 0.24v9.999h-6.639c-0.132 0-0.24 0.108-0.24 0.24v2.4c0 0.132 0.108 0.24 0.24 0.24h8.319c0.664 0 1.2-0.536 1.2-1.2v-11.679c0-0.132-0.108-0.24-0.24-0.24z"></path> + </symbol> + <symbol id="vditor-icon-delete-row" viewBox="0 0 32 32"> + <path d="M28.129 16l4.035-4.843c0.11-0.134 0.095-0.331-0.039-0.445-0.055-0.047-0.126-0.075-0.201-0.075h-2.156c-0.095 0-0.181 0.043-0.24 0.114l-2.888 3.464-2.881-3.46c-0.059-0.071-0.15-0.114-0.24-0.114h-2.159c-0.075 0-0.146 0.028-0.201 0.075-0.134 0.11-0.154 0.311-0.039 0.445l4.031 4.839-4.035 4.843c-0.11 0.134-0.095 0.331 0.039 0.445 0.055 0.047 0.126 0.075 0.201 0.075h2.156c0.095 0 0.181-0.043 0.24-0.114l2.881-3.46 2.881 3.46c0.059 0.071 0.15 0.114 0.24 0.114h2.167c0.075 0 0.146-0.028 0.201-0.075 0.134-0.11 0.154-0.311 0.039-0.445l-4.031-4.843zM16.946 14.108h-16.393c-0.173 0-0.315 0.142-0.315 0.315v3.153c0 0.173 0.142 0.315 0.315 0.315h16.393c0.173 0 0.315-0.142 0.315-0.315v-3.152c0-0.173-0.142-0.315-0.315-0.315zM13.636 22.147h-2.364c-0.13 0-0.236 0.106-0.236 0.236v6.541h-9.852c-0.13 0-0.236 0.106-0.236 0.236v2.364c0 0.13 0.106 0.236 0.236 0.236h11.507c0.654 0 1.182-0.528 1.182-1.182v-8.197c0-0.13-0.106-0.236-0.236-0.236zM1.183 3.075h9.852v6.541c0 0.13 0.106 0.236 0.236 0.236h2.364c0.13 0 0.236-0.106 0.236-0.236v-8.197c0-0.654-0.528-1.182-1.182-1.182h-11.507c-0.13 0-0.236 0.106-0.236 0.236v2.364c0 0.13 0.106 0.236 0.236 0.236z"></path> + </symbol> + <symbol id="vditor-icon-down" viewBox="0 0 32 32"> + <path d="M31.663 5.221h-3.158c-0.215 0-0.417 0.105-0.543 0.278l-11.962 16.489-11.962-16.489c-0.126-0.173-0.328-0.278-0.543-0.278h-3.158c-0.274 0-0.434 0.312-0.274 0.535l14.847 20.468c0.539 0.741 1.642 0.741 2.177 0l14.847-20.468c0.164-0.223 0.004-0.535-0.269-0.535z"></path> + </symbol> + <symbol id="vditor-icon-insert-row" viewBox="0 0 32 32"> + <path d="M30.668 23.040h-29.336c-0.736 0-1.332-0.572-1.332-1.28v-18.56c0-0.708 0.596-1.28 1.332-1.28h29.332c0.736 0 1.332 0.572 1.332 1.28v18.56c0.004 0.708-0.592 1.28-1.328 1.28zM9.92 4.8h-7.040v6.4h7.040v-6.4zM9.92 13.76h-7.040v6.4h7.040v-6.4zM19.52 4.8h-7.040v6.4h7.040v-6.4zM19.52 13.76h-7.040v6.4h7.040v-6.4zM29.12 4.8h-7.040v6.4h7.040v-6.4zM29.12 13.76h-7.040v6.4h7.040v-6.4zM31.68 30.080h-31.36c-0.176 0-0.32-0.144-0.32-0.32v-3.2c0-0.176 0.144-0.32 0.32-0.32h31.36c0.176 0 0.32 0.144 0.32 0.32v3.2c0 0.176-0.144 0.32-0.32 0.32z"></path> + </symbol> + <symbol id="vditor-icon-insert-rowb" viewBox="0 0 32 32"> + <path d="M30.668 8.96h-29.336c-0.736 0-1.332 0.572-1.332 1.28v18.56c0 0.708 0.596 1.28 1.332 1.28h29.332c0.736 0 1.332-0.572 1.332-1.28v-18.56c0.004-0.708-0.592-1.28-1.328-1.28zM9.92 27.2h-7.040v-6.4h7.040v6.4zM9.92 18.24h-7.040v-6.4h7.040v6.4zM19.52 27.2h-7.040v-6.4h7.040v6.4zM19.52 18.24h-7.040v-6.4h7.040v6.4zM29.12 27.2h-7.040v-6.4h7.040v6.4zM29.12 18.24h-7.040v-6.4h7.040v6.4zM31.68 1.92h-31.36c-0.176 0-0.32 0.144-0.32 0.32v3.2c0 0.176 0.144 0.32 0.32 0.32h31.36c0.176 0 0.32-0.144 0.32-0.32v-3.2c0-0.176-0.144-0.32-0.32-0.32z"></path> + </symbol> + <symbol id="vditor-icon-insert-column" viewBox="0 0 32 32"> + <path d="M29.76 0h-3.2c-0.176 0-0.32 0.144-0.32 0.32v31.36c0 0.176 0.144 0.32 0.32 0.32h3.2c0.176 0 0.32-0.144 0.32-0.32v-31.36c0-0.176-0.144-0.32-0.32-0.32zM21.76 0h-18.56c-0.708 0-1.28 0.596-1.28 1.332v29.332c0 0.736 0.572 1.332 1.28 1.332h18.56c0.708 0 1.28-0.596 1.28-1.332v-29.332c0-0.736-0.572-1.332-1.28-1.332zM11.2 29.12h-6.4v-7.040h6.4v7.040zM11.2 19.52h-6.4v-7.040h6.4v7.040zM11.2 9.92h-6.4v-7.040h6.4v7.040zM20.16 29.12h-6.4v-7.040h6.4v7.040zM20.16 19.52h-6.4v-7.040h6.4v7.040zM20.16 9.92h-6.4v-7.040h6.4v7.040z"></path> + </symbol> + <symbol id="vditor-icon-insert-columnb" viewBox="0 0 32 32"> + <path d="M2.24 32h3.2c0.176 0 0.32-0.144 0.32-0.32v-31.36c0-0.176-0.144-0.32-0.32-0.32h-3.2c-0.176 0-0.32 0.144-0.32 0.32v31.36c0 0.176 0.144 0.32 0.32 0.32zM10.24 32h18.56c0.708 0 1.28-0.596 1.28-1.332v-29.332c0-0.736-0.572-1.332-1.28-1.332h-18.56c-0.708 0-1.28 0.596-1.28 1.332v29.332c0 0.736 0.572 1.332 1.28 1.332zM20.8 2.88h6.4v7.040h-6.4v-7.040zM20.8 12.48h6.4v7.040h-6.4v-7.040zM20.8 22.080h6.4v7.040h-6.4v-7.040zM11.84 2.88h6.4v7.040h-6.4v-7.040zM11.84 12.48h6.4v7.040h-6.4v-7.040zM11.84 22.080h6.4v7.040h-6.4v-7.040z"></path> + </symbol> + <symbol id="vditor-icon-italic" viewBox="0 0 32 32"> + <path d="M29 0h-19.636c-0.2 0-0.364 0.164-0.364 0.364v2.909c0 0.2 0.164 0.364 0.364 0.364h8.236l-7.091 24.727h-7.373c-0.2 0-0.364 0.164-0.364 0.364v2.909c0 0.2 0.164 0.364 0.364 0.364h19.636c0.2 0 0.364-0.164 0.364-0.364v-2.909c0-0.2-0.164-0.364-0.364-0.364h-8.482l7.091-24.727h7.618c0.2 0 0.364-0.164 0.364-0.364v-2.909c0-0.2-0.164-0.364-0.364-0.364z"></path> + </symbol> + <symbol id="vditor-icon-link" viewBox="0 0 32 32"> + <path d="M18.583 22.391c-0.060-0.060-0.144-0.097-0.235-0.097s-0.175 0.037-0.235 0.097l-4.841 4.841c-2.242 2.242-6.025 2.479-8.5 0-2.479-2.479-2.242-6.258 0-8.5l4.841-4.841c0.129-0.129 0.129-0.342 0-0.471l-1.658-1.658c-0.060-0.060-0.144-0.097-0.235-0.097s-0.175 0.037-0.235 0.097l-4.841 4.841c-3.525 3.525-3.525 9.229 0 12.75s9.229 3.525 12.75 0l4.841-4.841c0.129-0.129 0.129-0.342 0-0.471l-1.65-1.65zM29.358 2.642c-3.525-3.525-9.229-3.525-12.75 0l-4.846 4.841c-0.060 0.060-0.097 0.144-0.097 0.235s0.037 0.175 0.097 0.235l1.654 1.654c0.129 0.129 0.342 0.129 0.471 0l4.842-4.841c2.242-2.242 6.025-2.479 8.5 0 2.479 2.479 2.242 6.258 0 8.5l-4.841 4.841c-0.060 0.060-0.097 0.144-0.097 0.235s0.037 0.175 0.097 0.235l1.658 1.658c0.129 0.129 0.342 0.129 0.471 0l4.841-4.841c3.521-3.525 3.521-9.229 0-12.754zM20.087 10.179c-0.060-0.060-0.144-0.097-0.235-0.097s-0.175 0.037-0.235 0.097l-9.437 9.433c-0.060 0.060-0.097 0.144-0.097 0.235s0.037 0.175 0.097 0.235l1.65 1.65c0.129 0.129 0.342 0.129 0.471 0l9.433-9.433c0.129-0.129 0.129-0.342 0-0.471l-1.646-1.65z"></path> + </symbol> + <symbol id="vditor-icon-outdent" viewBox="0 0 32 32"> + <path d="M11.84 13.2h19.2c0.176 0 0.32-0.144 0.32-0.32v-2.24c0-0.176-0.144-0.32-0.32-0.32h-19.2c-0.176 0-0.32 0.144-0.32 0.32v2.24c0 0.176 0.144 0.32 0.32 0.32zM11.52 21.36c0 0.176 0.144 0.32 0.32 0.32h19.2c0.176 0 0.32-0.144 0.32-0.32v-2.24c0-0.176-0.144-0.32-0.32-0.32h-19.2c-0.176 0-0.32 0.144-0.32 0.32v2.24zM31.68 1.92h-31.36c-0.176 0-0.32 0.144-0.32 0.32v2.24c0 0.176 0.144 0.32 0.32 0.32h31.36c0.176 0 0.32-0.144 0.32-0.32v-2.24c0-0.176-0.144-0.32-0.32-0.32zM31.68 27.2h-31.36c-0.176 0-0.32 0.144-0.32 0.32v2.24c0 0.176 0.144 0.32 0.32 0.32h31.36c0.176 0 0.32-0.144 0.32-0.32v-2.24c0-0.176-0.144-0.32-0.32-0.32zM0.136 16.276l6.252 4.924c0.232 0.184 0.576 0.020 0.576-0.276v-9.848c0-0.296-0.34-0.46-0.576-0.276l-6.252 4.924c-0.082 0.065-0.135 0.164-0.135 0.276s0.053 0.211 0.134 0.275l0.001 0.001z"></path> + </symbol> + <symbol id="vditor-icon-indent" viewBox="0 0 32 32"> + <path d="M11.84 13.2h19.2c0.176 0 0.32-0.144 0.32-0.32v-2.24c0-0.176-0.144-0.32-0.32-0.32h-19.2c-0.176 0-0.32 0.144-0.32 0.32v2.24c0 0.176 0.144 0.32 0.32 0.32zM11.52 21.36c0 0.176 0.144 0.32 0.32 0.32h19.2c0.176 0 0.32-0.144 0.32-0.32v-2.24c0-0.176-0.144-0.32-0.32-0.32h-19.2c-0.176 0-0.32 0.144-0.32 0.32v2.24zM31.68 1.92h-31.36c-0.176 0-0.32 0.144-0.32 0.32v2.24c0 0.176 0.144 0.32 0.32 0.32h31.36c0.176 0 0.32-0.144 0.32-0.32v-2.24c0-0.176-0.144-0.32-0.32-0.32zM31.68 27.2h-31.36c-0.176 0-0.32 0.144-0.32 0.32v2.24c0 0.176 0.144 0.32 0.32 0.32h31.36c0.176 0 0.32-0.144 0.32-0.32v-2.24c0-0.176-0.144-0.32-0.32-0.32zM1.216 21.204l6.252-4.924c0.083-0.065 0.135-0.166 0.135-0.278s-0.053-0.213-0.134-0.277l-0.001-0.001-6.252-4.928c-0.232-0.184-0.576-0.020-0.576 0.276v9.852c0 0 0 0 0 0 0 0.197 0.159 0.356 0.356 0.356 0.083 0 0.16-0.029 0.221-0.077l-0.001 0.001z"></path> + </symbol> + <symbol id="vditor-icon-ordered-list" viewBox="0 0 32 32"> + <path d="M31.692 25.538h-22.462c-0.169 0-0.308 0.138-0.308 0.308v2.154c0 0.169 0.138 0.308 0.308 0.308h22.462c0.169 0 0.308-0.138 0.308-0.308v-2.154c0-0.169-0.138-0.308-0.308-0.308zM31.692 3.692h-22.462c-0.169 0-0.308 0.138-0.308 0.308v2.154c0 0.169 0.138 0.308 0.308 0.308h22.462c0.169 0 0.308-0.138 0.308-0.308v-2.154c0-0.169-0.138-0.308-0.308-0.308zM31.692 14.615h-22.462c-0.169 0-0.308 0.138-0.308 0.308v2.154c0 0.169 0.138 0.308 0.308 0.308h22.462c0.169 0 0.308-0.138 0.308-0.308v-2.154c0-0.169-0.138-0.308-0.308-0.308zM4.615 23.692h-4.462c-0.085 0-0.154 0.069-0.154 0.154v1.308c0 0.085 0.069 0.154 0.154 0.154h2.785v0.788h-1.373c-0.085 0-0.154 0.069-0.154 0.154v1.308c0 0.085 0.069 0.154 0.154 0.154h1.373v0.827h-2.785c-0.085 0-0.154 0.069-0.154 0.154v1.308c0 0.085 0.069 0.154 0.154 0.154h4.462c0.085 0 0.154-0.069 0.154-0.154v-6.154c0-0.085-0.069-0.154-0.154-0.154zM0.154 3.538h1.462v4.615c0 0.085 0.069 0.154 0.154 0.154h1.538c0.085 0 0.154-0.069 0.154-0.154v-6c0-0.169-0.138-0.308-0.308-0.308h-3c-0.085 0-0.154 0.069-0.154 0.154v1.385c0 0.085 0.069 0.154 0.154 0.154zM4.615 12.769h-4.462c-0.085 0-0.154 0.069-0.154 0.154v1.385c0 0.085 0.069 0.154 0.154 0.154h2.631l-2.704 2.988c-0.049 0.055-0.080 0.128-0.081 0.207v1.419c0 0.085 0.069 0.154 0.154 0.154h4.462c0.085 0 0.154-0.069 0.154-0.154v-1.385c0-0.085-0.069-0.154-0.154-0.154h-2.631l2.704-2.988c0.049-0.055 0.080-0.128 0.081-0.207v-1.419c0-0.085-0.069-0.154-0.154-0.154z"></path> + </symbol> + <symbol id="vditor-icon-redo" viewBox="0 0 32 32"> + <path d="M25.848 29.084c3.744-2.928 6.152-7.488 6.152-12.608 0-8.836-7.14-15.984-15.976-15.996-8.848-0.012-16.024 7.152-16.024 15.996 0 5.008 2.3 9.476 5.904 12.408 0.14 0.112 0.344 0.088 0.456-0.052l1.576-2.020c0.108-0.136 0.084-0.332-0.048-0.444-0.324-0.264-0.636-0.548-0.936-0.848-1.14-1.136-2.066-2.486-2.712-3.985l-0.032-0.083c-0.672-1.572-1.008-3.248-1.008-4.976s0.336-3.404 1.004-4.98c0.644-1.524 1.568-2.892 2.744-4.068s2.544-2.1 4.068-2.744c1.58-0.668 3.256-1.004 4.984-1.004s3.404 0.336 4.98 1.004c1.524 0.644 2.892 1.568 4.068 2.744s2.1 2.544 2.744 4.068c0.668 1.576 1.004 3.252 1.004 4.98s-0.336 3.404-1.004 4.98c-0.678 1.582-1.604 2.932-2.744 4.068l-0 0c-0.372 0.372-0.764 0.72-1.172 1.040l-1.628-2.084c-0.059-0.076-0.15-0.124-0.253-0.124-0.15 0-0.276 0.103-0.31 0.242l-0 0.002-1.584 6.488c-0.048 0.2 0.104 0.396 0.308 0.396l6.68 0.032c0.268 0 0.42-0.308 0.252-0.516l-1.492-1.916z"></path> + </symbol> + <symbol id="vditor-icon-table" viewBox="0 0 32 32"> + <path d="M30.857 3.429h-29.714c-0.632 0-1.143 0.511-1.143 1.143v22.857c0 0.632 0.511 1.143 1.143 1.143h29.714c0.632 0 1.143-0.511 1.143-1.143v-22.857c0-0.632-0.511-1.143-1.143-1.143zM29.429 10.857h-7.571v-4.857h7.571v4.857zM29.429 18.857h-7.571v-5.714h7.571v5.714zM12.429 13.143h7.143v5.714h-7.143v-5.714zM19.571 10.857h-7.143v-4.857h7.143v4.857zM2.571 13.143h7.571v5.714h-7.571v-5.714zM2.571 6h7.571v4.857h-7.571v-4.857zM2.571 21.143h7.571v4.857h-7.571v-4.857zM12.429 21.143h7.143v4.857h-7.143v-4.857zM29.429 26h-7.571v-4.857h7.571v4.857z"></path> + </symbol> + <symbol id="vditor-icon-undo" viewBox="0 0 32 32"> + <path d="M15.976 0.48c-8.836 0.012-15.976 7.16-15.976 15.996 0 5.12 2.408 9.68 6.152 12.608l-1.5 1.92c-0.164 0.212-0.012 0.52 0.252 0.516l6.68-0.032c0.208 0 0.36-0.196 0.308-0.396l-1.58-6.492c-0.035-0.141-0.161-0.244-0.311-0.244-0.103 0-0.194 0.048-0.253 0.123l-0.001 0.001-1.628 2.084c-0.408-0.32-0.8-0.668-1.172-1.040-1.14-1.136-2.066-2.486-2.712-3.985l-0.032-0.083c-0.668-1.576-1.004-3.252-1.004-4.98s0.336-3.404 1.004-4.98c0.644-1.524 1.568-2.892 2.744-4.068s2.544-2.1 4.068-2.744c1.58-0.668 3.256-1.004 4.984-1.004s3.404 0.336 4.98 1.004c1.524 0.644 2.892 1.568 4.068 2.744s2.1 2.544 2.744 4.068c0.668 1.576 1.004 3.252 1.004 4.98s-0.336 3.404-1.004 4.98c-0.678 1.582-1.604 2.932-2.744 4.068l-0 0c-0.3 0.3-0.612 0.58-0.936 0.848-0.072 0.059-0.117 0.147-0.117 0.246 0 0.075 0.026 0.144 0.070 0.198l-0-0.001 1.576 2.020c0.112 0.14 0.316 0.164 0.456 0.052 3.604-2.936 5.904-7.404 5.904-12.412 0-8.844-7.176-16.008-16.024-15.996z"></path> + </symbol> + <symbol id="vditor-icon-list" viewBox="0 0 32 32"> + <path d="M31.686 3.451h-22.902c-0.173 0-0.314 0.141-0.314 0.314v2.196c0 0.173 0.141 0.314 0.314 0.314h22.902c0.173 0 0.314-0.141 0.314-0.314v-2.196c0-0.173-0.141-0.314-0.314-0.314zM31.686 14.588h-22.902c-0.173 0-0.314 0.141-0.314 0.314v2.196c0 0.173 0.141 0.314 0.314 0.314h22.902c0.173 0 0.314-0.141 0.314-0.314v-2.196c0-0.173-0.141-0.314-0.314-0.314zM31.686 25.726h-22.902c-0.173 0-0.314 0.141-0.314 0.314v2.196c0 0.173 0.141 0.314 0.314 0.314h22.902c0.173 0 0.314-0.141 0.314-0.314v-2.196c0-0.173-0.141-0.314-0.314-0.314zM0 4.863c0 1.213 0.983 2.196 2.196 2.196s2.196-0.983 2.196-2.196v0c0-1.213-0.983-2.196-2.196-2.196s-2.196 0.983-2.196 2.196v0zM0 16c0 1.213 0.983 2.196 2.196 2.196s2.196-0.983 2.196-2.196v0c0-1.213-0.983-2.196-2.196-2.196s-2.196 0.983-2.196 2.196v0zM0 27.137c0 1.213 0.983 2.196 2.196 2.196s2.196-0.983 2.196-2.196v0c0-1.213-0.983-2.196-2.196-2.196s-2.196 0.983-2.196 2.196v0z"></path> + </symbol> + <symbol id="vditor-icon-up" viewBox="0 0 32 32"> + <path d="M31.936 26.244l-14.846-20.466c-0.539-0.741-1.642-0.741-2.177 0l-14.85 20.466c-0.040 0.055-0.064 0.124-0.064 0.198 0 0.186 0.151 0.337 0.337 0.337 0 0 0.001 0 0.001 0h3.158c0.215 0 0.417-0.105 0.543-0.278l11.961-16.488 11.961 16.488c0.126 0.173 0.328 0.278 0.543 0.278h3.158c0.274 0 0.434-0.312 0.274-0.535z"></path> + </symbol> + <symbol id="vditor-icon-zhihu" viewBox="0 0 32 32"> + <path d="M18.245 3.993v24.401h2.555l1.073 3.041 4.532-3.041h5.601v-24.401h-13.761zM28.795 25.162h-2.551l-3.199 2.147-0.758-2.147h-0.767v-17.837h7.27v17.837zM16.601 14.931h-5.656c0.089-1.912 0.183-4.442 0.281-7.364h5.575l-0.004-0.345c0-0.026-0.009-0.626-0.098-1.239-0.089-0.639-0.281-1.486-0.894-1.486h-9.353c0.187-0.877 0.669-2.969 1.252-3.995l0.273-0.477-0.549-0.030c-0.034 0-0.835-0.038-1.763 0.451-1.521 0.809-2.202 2.402-2.5 3.595-0.784 3.113-1.9 5.277-2.372 6.201-0.141 0.273-0.226 0.434-0.264 0.545-0.077 0.209-0.034 0.417 0.119 0.554 0.447 0.405 1.627-0.124 1.64-0.128 0.026-0.013 0.055-0.026 0.094-0.043 0.592-0.268 2.347-1.065 2.973-3.599h2.415c0.030 1.371 0.132 5.895 0.124 7.364h-6.005l-0.089 0.064c-0.984 0.72-1.299 2.692-1.312 2.777l-0.060 0.392h7.113c-0.524 3.335-1.129 4.83-1.448 5.426-0.158 0.298-0.311 0.596-0.456 0.886-0.907 1.797-1.849 3.654-5.379 6.542-0.153 0.119-0.298 0.341-0.204 0.584 0.102 0.268 0.396 0.388 1.048 0.388 0.23 0 0.503-0.013 0.826-0.043 2.125-0.187 4.293-0.767 5.754-3.731 0.724-1.495 1.35-3.054 1.87-4.638l5.814 6.815 0.213-0.511c0.034-0.081 0.809-1.972 0.217-4.085l-0.021-0.077-4.604-5.239-0.937 0.707c0.273-1.112 0.451-2.125 0.532-3.028h6.759v-0.341c0-1.708-0.788-2.722-0.818-2.764l-0.102-0.128z"></path> + </symbol> + </defs> +</svg>`) diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/icons/material.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/icons/material.js new file mode 100644 index 0000000..a921f64 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/icons/material.js @@ -0,0 +1,195 @@ +document.body.insertAdjacentHTML('afterBegin', `<svg style="position: absolute; width: 0; height: 0; overflow: hidden;" version="1.1" xmlns="http://www.w3.org/2000/svg"> + <defs> + <symbol id="vditor-icon-comment" viewBox="0 0 32 32"> + <path d="M28.8 24.272l-1.872-1.872h-23.728v-19.2h25.6v21.072zM28.8 0h-25.6c-1.76 0-3.2 1.44-3.2 3.2v19.2c0 1.76 1.44 3.2 3.2 3.2h22.4l6.4 6.4v-28.8c0-1.76-1.44-3.2-3.2-3.2z"></path> + </symbol> + <symbol id="vditor-icon-headings" viewBox="0 0 32 32"> + <path d="M1.050 0.007h6.279v31.993h-6.279v-31.993z"></path> + <path d="M24.671 0h6.279v31.993h-6.279v-31.993z"></path> + <path d="M5.159 12.845h21.683v6.317h-21.683v-6.317z"></path> + </symbol> + <symbol id="vditor-icon-before" viewBox="0 0 32 32"> + <path d="M1.462 26.507h21.543v-3.276h-21.543v3.276z"></path> + <path d="M1.462 9.928h16.48v-3.276h-16.48v3.276z"></path> + <path d="M1.462 18.217h21.543v-3.276h-21.543v3.276z"></path> + <path d="M24.366 8.29l6.171-5.952-2.43-2.338-8.619 8.29 8.619 8.29 2.43-2.337-6.171-5.953z"></path> + </symbol> + <symbol id="vditor-icon-after" viewBox="0 0 32 32"> + <path d="M1.462 5.493h21.543v3.276h-21.543v-3.276z"></path> + <path d="M1.462 22.072h16.48v3.276h-16.48v-3.276z"></path> + <path d="M1.462 13.783h21.543v3.276h-21.543v-3.276z"></path> + <path d="M24.366 23.71l6.171 5.952-2.43 2.338-8.619-8.29 8.619-8.29 2.43 2.337-6.171 5.953z"></path> + </symbol> + <symbol id="vditor-icon-delete-column" viewBox="0 0 32 32"> + <path d="M5.279 0v23.265h3.538v-23.265h-3.538z"></path> + <path d="M23.183 0v23.265h3.538v-23.265h-3.538z"></path> + <path d="M14.231 0v17.797h3.538v-17.797h-3.538z"></path> + <path d="M16 28.387l3.613 3.613 2.023-2.023-3.613-3.613 3.613-3.613-2.023-2.023-3.613 3.613-3.613-3.613-2.023 2.023 3.613 3.613-3.613 3.613 2.023 2.023 3.613-3.613z"></path> + </symbol> + <symbol id="vditor-icon-delete-row" viewBox="0 0 32 32"> + <path d="M0 5.279h23.265v3.538h-23.265v-3.538z"></path> + <path d="M0 23.183h23.265v3.538h-23.265v-3.538z"></path> + <path d="M0 14.231h17.797v3.538h-17.797v-3.538z"></path> + <path d="M28.387 16l3.613 3.613-2.023 2.023-3.613-3.613-3.613 3.613-2.023-2.023 3.613-3.613-3.613-3.613 2.023-2.023 3.613 3.613 3.613-3.613 2.023 2.023-3.613 3.613z"></path> + </symbol> + <symbol id="vditor-icon-insert-row" viewBox="0 0 32 32"> + <path d="M1.462 5.493h21.543v3.276h-21.543v-3.276z"></path> + <path d="M1.462 22.072h16.48v3.276h-16.48v-3.276z"></path> + <path d="M1.462 13.783h21.543v3.276h-21.543v-3.276z"></path> + <path d="M24.366 23.71l6.171 5.952-2.43 2.338-8.619-8.29 8.619-8.29 2.43 2.337-6.171 5.953z"></path> + </symbol> + <symbol id="vditor-icon-insert-rowb" viewBox="0 0 32 32"> + <path d="M1.462 26.507h21.543v-3.276h-21.543v3.276z"></path> + <path d="M1.462 9.928h16.48v-3.276h-16.48v3.276z"></path> + <path d="M1.462 18.217h21.543v-3.276h-21.543v3.276z"></path> + <path d="M24.366 8.29l6.171-5.952-2.43-2.338-8.619 8.29 8.619 8.29 2.43-2.337-6.171-5.953z"></path> + </symbol> + <symbol id="vditor-icon-insert-column" viewBox="0 0 32 32"> + <path d="M5.493 1.462v21.543h3.276v-21.543h-3.276z"></path> + <path d="M22.072 1.462v16.48h3.276v-16.48h-3.276z"></path> + <path d="M13.783 1.462v21.543h3.276v-21.543h-3.276z"></path> + <path d="M23.71 24.366l5.952 6.171 2.338-2.43-8.29-8.619-8.29 8.619 2.337 2.43 5.953-6.171z"></path> + </symbol> + <symbol id="vditor-icon-insert-columnb" viewBox="0 0 32 32"> + <path d="M26.507 1.462v21.543h-3.276v-21.543h3.276z"></path> + <path d="M9.928 1.462v16.48h-3.276v-16.48h3.276z"></path> + <path d="M18.217 1.462v21.543h-3.276v-21.543h3.276z"></path> + <path d="M8.29 24.366l-5.952 6.171-2.338-2.43 8.29-8.619 8.29 8.619-2.337 2.43-5.953-6.171z"></path> + </symbol> + <symbol id="vditor-icon-code-theme" viewBox="0 0 32 32"> + <path d="M28.444 12.444v16h-24.924v-24.889h16v-3.556h-15.964c-1.956 0-3.556 1.6-3.556 3.556v24.889c0 1.956 1.6 3.556 3.556 3.556h24.889c1.956 0 3.556-1.6 3.556-3.556v-16h-3.556zM23.218 8.782l1.671 3.662 1.671-3.662 3.662-1.671-3.662-1.671-1.671-3.662-1.671 3.662-3.662 1.671zM16 8.889l-2.222 4.889-4.889 2.222 4.889 2.222 2.222 4.889 2.222-4.889 4.889-2.222-4.889-2.222z"></path> + </symbol> + <symbol id="vditor-icon-code" viewBox="0 0 32 32"> + <path d="M9.946 8.501l-2.204-1.832-7.742 9.331 7.742 9.331 2.204-1.832-6.225-7.499 6.225-7.499zM8.844 17.431h2.862v-2.862h-2.862v2.862zM23.156 14.569h-2.862v2.862h2.862v-2.862zM14.569 17.431h2.862v-2.862h-2.862v2.862zM24.258 6.669l-2.204 1.832 6.225 7.499-6.225 7.499 2.204 1.832 7.742-9.331-7.742-9.331z"></path> + </symbol> + <symbol id="vditor-icon-table" viewBox="0 0 32 32"> + <path d="M22.801 2.286h-22.801v27.429h32v-27.429h-9.199zM19.372 5.714v4.571h-6.801v-4.571h6.801zM19.372 13.714v4.571h-6.801v-4.571h6.801zM3.429 5.714h5.714v4.571h-5.714v-4.571zM3.429 13.714h5.714v4.571h-5.714v-4.571zM3.429 26.286v-4.571h5.714v4.571h-5.714zM12.571 26.286v-4.571h6.801v4.571h-6.801zM28.571 26.286h-5.77v-4.571h5.77v4.571zM28.571 18.286h-5.77v-4.571h5.77v4.571zM22.801 10.286v-4.571h5.77v4.571h-5.77z"></path> + </symbol> + <symbol id="vditor-icon-export" viewBox="0 0 32 32"> + <path d="M28.444 28.444h-24.889v-24.889h12.444v-3.556h-12.444c-1.973 0-3.556 1.6-3.556 3.556v24.889c0 1.956 1.582 3.556 3.556 3.556h24.889c1.956 0 3.556-1.6 3.556-3.556v-12.444h-3.556v12.444zM19.556 0v3.556h6.382l-17.476 17.476 2.507 2.507 17.476-17.476v6.382h3.556v-12.444h-12.444z"></path> + </symbol> + <symbol id="vditor-icon-resize" viewBox="0 0 128 32"> + <path d="M128 32v-5.334h-128v5.334h128zM128 18.666v-5.331h-128v5.331h128zM0 5.334h128v-5.334h-128v5.334z"></path> + </symbol> + <symbol id="vditor-icon-edit" viewBox="0 0 32 32"> + <path d="M19.66 10.703l1.635 1.635-16.104 16.104h-1.635v-1.635l16.104-16.104zM26.059 0.002c-0.444 0-0.907 0.178-1.244 0.515l-3.253 3.253 6.666 6.666 3.253-3.253c0.693-0.693 0.693-1.813 0-2.506l-4.159-4.159c-0.355-0.355-0.8-0.515-1.262-0.515zM19.66 5.673l-19.66 19.66v6.666h6.666l19.66-19.66-6.666-6.666z"></path> + </symbol> + <symbol id="vditor-icon-quote" viewBox="0 0 32 32"> + <path d="M27.769 26.667h-9.316l3.556-7.111h-4.231v-14.222h14.222v12.871l-4.231 8.462zM24.213 23.111h1.351l2.88-5.76v-8.462h-7.111v7.111h6.436l-3.556 7.111zM9.991 26.667h-9.316l3.556-7.111h-4.231v-14.222h14.222v12.871l-4.231 8.462zM6.436 23.111h1.351l2.88-5.76v-8.462h-7.111v7.111h6.436l-3.556 7.111z"></path> + </symbol> + <symbol id="vditor-icon-strike" viewBox="0 0 32 32"> + <path d="M12.444 29.333h7.111v-5.333h-7.111v5.333zM3.556 2.667v5.333h8.889v5.333h7.111v-5.333h8.889v-5.333h-24.889zM0 20.444h32v-3.556h-32v3.556z"></path> + </symbol> + <symbol id="vditor-icon-line" viewBox="0 0 32 32"> + <path d="M0 14h32v4h-32v-4z"></path> + </symbol> + <symbol id="vditor-icon-both" viewBox="0 0 32 32"> + <path d="M2.909 3.636h26.182c1.6 0 2.909 1.309 2.909 2.909v18.909c0 1.6-1.309 2.909-2.909 2.909h-26.182c-1.6 0-2.909-1.309-2.909-2.909v-18.909c0-1.6 1.309-2.909 2.909-2.909zM29.091 25.455v-18.909h-11.636v18.909h11.636zM2.909 25.455h11.636v-18.909h-11.636v18.909zM13.091 11.636h-8.727v2.182h8.727zM13.091 15.273h-8.727v2.182h8.727zM13.091 18.909h-8.727v2.182h8.727z"></path> + </symbol> + <symbol id="vditor-icon-copy" viewBox="0 0 32 32"> + <path d="M22.545-0h-17.455c-1.6 0-2.909 1.309-2.909 2.909v20.364h2.909v-20.364h17.455v-2.909zM26.909 5.818h-16c-1.6 0-2.909 1.309-2.909 2.909v20.364c0 1.6 1.309 2.909 2.909 2.909h16c1.6 0 2.909-1.309 2.909-2.909v-20.364c0-1.6-1.309-2.909-2.909-2.909zM26.909 29.091h-16v-20.364h16v20.364z"></path> + </symbol> + <symbol id="vditor-icon-trashcan" viewBox="0 0 32 32"> + <path d="M23.111 10.667v17.778h-14.222v-17.778h14.222zM20.444 0h-8.889l-1.778 1.778h-6.222v3.556h24.889v-3.556h-6.222l-1.778-1.778zM26.667 7.111h-21.333v21.333c0 1.956 1.6 3.556 3.556 3.556h14.222c1.956 0 3.556-1.6 3.556-3.556v-21.333z"></path> + </symbol> + <symbol id="vditor-icon-more" viewBox="0 0 32 32"> + <path d="M4 12c-2.2 0-4 1.8-4 4s1.8 4 4 4 4-1.8 4-4-1.8-4-4-4zM28 12c-2.2 0-4 1.8-4 4s1.8 4 4 4 4-1.8 4-4-1.8-4-4-4zM16 12c-2.2 0-4 1.8-4 4s1.8 4 4 4 4-1.8 4-4-1.8-4-4-4z"></path> + </symbol> + <symbol id="vditor-icon-upload" viewBox="0 0 32 32"> + <path d="M25.8 13.387c-0.907-4.6-4.947-8.053-9.8-8.053-3.853 0-7.2 2.187-8.867 5.387-4.013 0.427-7.133 3.827-7.133 7.947 0 4.413 3.587 8 8 8h17.333c3.68 0 6.667-2.987 6.667-6.667 0-3.52-2.733-6.373-6.2-6.613zM25.333 24h-17.333c-2.947 0-5.333-2.387-5.333-5.333 0-2.733 2.040-5.013 4.747-5.293l1.427-0.147 0.667-1.267c1.267-2.44 3.747-3.96 6.493-3.96 3.493 0 6.507 2.48 7.187 5.907l0.4 2 2.040 0.147c2.080 0.133 3.707 1.88 3.707 3.947 0 2.2-1.8 4-4 4zM10.667 17.333h3.4v4h3.867v-4h3.4l-5.333-5.333z"></path> + </symbol> + <symbol id="vditor-icon-bug" viewBox="0 0 32 32"> + <path d="M30.222 8.889h-4.996c-0.8-1.387-1.902-2.578-3.236-3.484l2.898-2.898-2.507-2.507-3.858 3.858c-0.818-0.196-1.653-0.302-2.524-0.302s-1.707 0.107-2.507 0.302l-3.876-3.858-2.507 2.507 2.88 2.898c-1.316 0.907-2.418 2.098-3.218 3.484h-4.996v3.556h3.716c-0.089 0.587-0.16 1.173-0.16 1.778v1.778h-3.556v3.556h3.556v1.778c0 0.604 0.071 1.191 0.16 1.778h-3.716v3.556h4.996c1.849 3.182 5.28 5.333 9.227 5.333s7.378-2.151 9.227-5.333h4.996v-3.556h-3.716c0.089-0.587 0.16-1.173 0.16-1.778v-1.778h3.556v-3.556h-3.556v-1.778c0-0.604-0.071-1.191-0.16-1.778h3.716v-3.556zM23.111 16v5.333c0 0.391-0.053 0.836-0.124 1.244l-0.178 1.156-0.658 1.156c-1.28 2.204-3.627 3.556-6.151 3.556s-4.871-1.369-6.151-3.556l-0.658-1.138-0.178-1.156c-0.071-0.409-0.124-0.853-0.124-1.262v-7.111c0-0.409 0.053-0.853 0.124-1.244l0.178-1.156 0.658-1.156c0.533-0.924 1.28-1.724 2.151-2.329l1.013-0.693 1.316-0.32c0.551-0.142 1.12-0.213 1.671-0.213 0.569 0 1.12 0.071 1.689 0.213l1.209 0.284 1.084 0.747c0.889 0.604 1.618 1.387 2.151 2.329l0.676 1.156 0.178 1.156c0.071 0.391 0.124 0.836 0.124 1.227v1.778zM12.444 19.556h7.111v3.556h-7.111zM12.444 12.445h7.111v3.556h-7.111z"></path> + </symbol> + <symbol id="vditor-icon-contract" viewBox="0 0 32 32"> + <path d="M32 2.256l-8.464 8.464 5.264 5.28h-12.8v-12.8l5.264 5.264 8.48-8.464 2.256 2.256zM2.256 32l8.464-8.464 5.28 5.264v-12.8h-12.8l5.264 5.264-8.464 8.48 2.256 2.256z"></path> + </symbol> + <symbol id="vditor-icon-inline-code" viewBox="0 0 32 32"> + <path d="M11.84 23.36l-7.36-7.36 7.36-7.36-2.24-2.24-9.6 9.6 9.6 9.6 2.24-2.24zM20.16 23.36l7.36-7.36-7.36-7.36 2.24-2.24 9.6 9.6-9.6 9.6-2.24-2.24z"></path> + </symbol> + <symbol id="vditor-icon-down" viewBox="0 0 32 32"> + <path d="M3.76 6.12l12.24 12.213 12.24-12.213 3.76 3.76-16 16-16-16 3.76-3.76z"></path> + </symbol> + <symbol id="vditor-icon-up" viewBox="0 0 32 32"> + <path d="M3.76 25.88l12.24-12.213 12.24 12.213 3.76-3.76-16-16-16 16 3.76 3.76z"></path> + </symbol> + <symbol id="vditor-icon-check" viewBox="0 0 32 32"> + <path d="M28.444 0h-24.889c-1.956 0-3.556 1.6-3.556 3.556v24.889c0 1.956 1.6 3.556 3.556 3.556h24.889c1.956 0 3.556-1.6 3.556-3.556v-24.889c0-1.956-1.6-3.556-3.556-3.556zM28.444 28.445h-24.889v-24.889h24.889v24.889zM26.649 10.667l-2.507-2.524-11.716 11.716-4.587-4.569-2.524 2.507 7.111 7.093z"></path> + </symbol> + <symbol id="vditor-icon-theme" viewBox="0 0 32 32"> + <path d="M16 32c-8.816 0-16-7.184-16-16s7.184-16 16-16 16 6.464 16 14.4c0 5.296-4.304 9.6-9.6 9.6h-2.832c-0.448 0-0.8 0.352-0.8 0.8 0 0.192 0.080 0.368 0.208 0.528 0.656 0.752 1.024 1.696 1.024 2.672 0 2.208-1.792 4-4 4zM16 3.2c-7.056 0-12.8 5.744-12.8 12.8s5.744 12.8 12.8 12.8c0.448 0 0.8-0.352 0.8-0.8 0-0.256-0.128-0.448-0.224-0.56-0.656-0.736-1.008-1.68-1.008-2.64 0-2.208 1.792-4 4-4h2.832c3.536 0 6.4-2.864 6.4-6.4 0-6.176-5.744-11.2-12.8-11.2z"></path> + <path d="M9.6 15.2c0 1.325-1.075 2.4-2.4 2.4s-2.4-1.075-2.4-2.4c0-1.325 1.075-2.4 2.4-2.4s2.4 1.075 2.4 2.4z"></path> + <path d="M14.4 8.8c0 1.325-1.075 2.4-2.4 2.4s-2.4-1.075-2.4-2.4c0-1.325 1.075-2.4 2.4-2.4s2.4 1.075 2.4 2.4z"></path> + <path d="M22.4 8.8c0 1.325-1.075 2.4-2.4 2.4s-2.4-1.075-2.4-2.4c0-1.325 1.075-2.4 2.4-2.4s2.4 1.075 2.4 2.4z"></path> + <path d="M27.2 15.2c0 1.325-1.075 2.4-2.4 2.4s-2.4-1.075-2.4-2.4c0-1.325 1.075-2.4 2.4-2.4s2.4 1.075 2.4 2.4z"></path> + </symbol> + <symbol id="vditor-icon-help" viewBox="0 0 32 32"> + <path d="M14.4 25.6h3.2v-3.2h-3.2v3.2zM16 0c-8.832 0-16 7.168-16 16s7.168 16 16 16 16-7.168 16-16-7.168-16-16-16zM16 28.8c-7.056 0-12.8-5.744-12.8-12.8s5.744-12.8 12.8-12.8 12.8 5.744 12.8 12.8-5.744 12.8-12.8 12.8zM16 6.4c-3.536 0-6.4 2.864-6.4 6.4h3.2c0-1.76 1.44-3.2 3.2-3.2s3.2 1.44 3.2 3.2c0 3.2-4.8 2.8-4.8 8h3.2c0-3.6 4.8-4 4.8-8 0-3.536-2.864-6.4-6.4-6.4z"></path> + </symbol> + <symbol id="vditor-icon-info" viewBox="0 0 32 32"> + <path d="M14.4 8h3.2v3.2h-3.2zM14.4 14.4h3.2v9.6h-3.2zM16 0c-8.832 0-16 7.168-16 16s7.168 16 16 16 16-7.168 16-16-7.168-16-16-16zM16 28.8c-7.056 0-12.8-5.744-12.8-12.8s5.744-12.8 12.8-12.8 12.8 5.744 12.8 12.8-5.744 12.8-12.8 12.8z"></path> + </symbol> + <symbol id="vditor-icon-fullscreen" viewBox="0 0 32 32"> + <path d="M32 14.222v-14.222h-14.222l5.849 5.849-17.778 17.778-5.849-5.849v14.222h14.222l-5.849-5.849 17.778-17.778z"></path> + </symbol> + <symbol id="vditor-icon-preview" viewBox="0 0 32 32"> + <path d="M16 8c5.513 0 10.429 3.098 12.829 8-2.4 4.902-7.302 8-12.829 8s-10.429-3.098-12.829-8c2.4-4.902 7.316-8 12.829-8zM16 5.091c-7.273 0-13.484 4.524-16 10.909 2.516 6.385 8.727 10.909 16 10.909s13.484-4.524 16-10.909c-2.516-6.385-8.727-10.909-16-10.909zM16 12.364c2.007 0 3.636 1.629 3.636 3.636s-1.629 3.636-3.636 3.636-3.636-1.629-3.636-3.636 1.629-3.636 3.636-3.636zM16 9.455c-3.607 0-6.545 2.938-6.545 6.545s2.938 6.545 6.545 6.545 6.545-2.938 6.545-6.545-2.938-6.545-6.545-6.545z"></path> + </symbol> + <symbol id="vditor-icon-record" viewBox="0 0 32 32"> + <path d="M24.928 15.17h2.844q0 4.267-2.963 7.467t-7.151 3.832v5.531h-3.319v-5.531q-4.188-0.632-7.151-3.832t-2.963-7.467h2.844q0 3.714 2.647 6.123t6.281 2.41 6.281-2.41 2.647-6.123zM13.946 4.899v10.43q0 0.79 0.593 1.383t1.462 0.593q0.79 0 1.383-0.553t0.593-1.422l0.079-10.43q0-0.869-0.632-1.462t-1.422-0.593-1.422 0.593-0.632 1.462zM16 20.227q-2.054 0-3.556-1.501t-1.501-3.556v-10.114q0-2.054 1.501-3.556t3.556-1.501 3.556 1.501 1.501 3.556v10.114q0 2.054-1.501 3.556t-3.556 1.501z"></path> + </symbol> + <symbol id="vditor-icon-pause" viewBox="0 0 32 32"> + <path d="M20.617 0h9.128v32h-9.128v-32zM2.255 32v-32h9.128v32h-9.128z"></path> + </symbol> + <symbol id="vditor-icon-play" viewBox="0 0 32 32"> + <path d="M3.436 0l25.128 16-25.128 16v-32z"></path> + </symbol> + <symbol id="vditor-icon-emoji" viewBox="0 0 32 32"> + <path d="M16 24.789q-2.779 0-4.995-1.54t-3.192-4.019h2.629q1.878 3.155 5.559 3.155t5.559-3.155h2.629q-0.977 2.479-3.192 4.019t-4.995 1.54zM16 28.845q5.258 0 9.052-3.793t3.793-9.052-3.793-9.052-9.052-3.793-9.052 3.793-3.793 9.052 3.793 9.052 9.052 3.793zM16 0q6.61 0 11.305 4.695t4.695 11.305-4.695 11.305-11.305 4.695-11.305-4.695-4.695-11.305 4.695-11.305 11.305-4.695zM10.366 14.423q-0.977 0-1.69-0.714t-0.714-1.69 0.714-1.69 1.69-0.714 1.69 0.714 0.714 1.69-0.714 1.69-1.69 0.714zM21.634 14.423q-0.977 0-1.69-0.714t-0.714-1.69 0.714-1.69 1.69-0.714 1.69 0.714 0.714 1.69-0.714 1.69-1.69 0.714z"></path> + </symbol> + <symbol id="vditor-icon-link" viewBox="0 0 32 32"> + <path d="M24.038 7.962q3.305 0 5.634 2.366t2.329 5.671-2.329 5.671-5.634 2.366h-6.46v-3.080h6.46q2.028 0 3.493-1.465t1.465-3.493-1.465-3.493-3.493-1.465h-6.46v-3.080h6.46zM9.615 17.577v-3.155h12.77v3.155h-12.77zM3.005 16q0 2.028 1.465 3.493t3.493 1.465h6.46v3.080h-6.46q-3.305 0-5.634-2.366t-2.329-5.671 2.329-5.671 5.634-2.366h6.46v3.080h-6.46q-2.028 0-3.493 1.465t-1.465 3.493z"></path> + </symbol> + <symbol id="vditor-icon-redo" viewBox="0 0 32 32"> + <path d="M26.422 14.605l5.578-5.651v14.092h-14.092l5.725-5.651q-3.523-2.936-8.073-2.936-3.743 0-7.229 2.495t-4.661 6.092l-3.67-1.174q1.615-4.991 5.908-8.147t9.651-3.156q6.239 0 10.862 4.037z"></path> + </symbol> + <symbol id="vditor-icon-undo" viewBox="0 0 32 32"> + <path d="M16.44 10.569q5.358 0 9.615 3.156t5.945 8.147l-3.67 1.174q-1.248-3.817-4.514-6.202t-7.376-2.385q-4.55 0-8.073 2.936l5.725 5.651h-14.092v-14.092l5.578 5.651q4.624-4.037 10.862-4.037z"></path> + </symbol> + <symbol id="vditor-icon-align-center" viewBox="0 0 32 32"> + <path d="M0 0h32v3.583h-32v-3.583zM7.083 7.083h17.833v3.583h-17.833v-3.583zM0 17.75v-3.5h32v3.5h-32zM0 32v-3.583h32v3.583h-32zM7.083 21.333h17.833v3.583h-17.833v-3.583z"></path> + </symbol> + <symbol id="vditor-icon-align-left" viewBox="0 0 32 32"> + <path d="M0 0h32v3.583h-32v-3.583zM0 32v-3.583h32v3.583h-32zM0 17.75v-3.5h32v3.5h-32zM21.333 7.083v3.583h-21.333v-3.583h21.333zM21.333 21.333v3.583h-21.333v-3.583h21.333z"></path> + </symbol> + <symbol id="vditor-icon-align-right" viewBox="0 0 32 32"> + <path d="M0 0h32v3.583h-32v-3.583zM10.667 10.667v-3.583h21.333v3.583h-21.333zM0 17.75v-3.5h32v3.5h-32zM10.667 24.917v-3.583h21.333v3.583h-21.333zM0 32v-3.583h32v3.583h-32z"></path> + </symbol> + <symbol id="vditor-icon-bold" viewBox="0 0 32 32"> + <path d="M18.569 26.328q1.498 0 2.462-1.017t0.963-2.408-0.963-2.408-2.462-1.017h-8.027v6.849h8.027zM10.542 5.779v6.85h6.85q1.391 0 2.408-1.017t1.017-2.408-1.017-2.408-2.408-1.017h-6.849zM23.385 15.518q4.923 2.248 4.923 7.813 0 3.639-2.408 6.154t-6.047 2.515h-16.161v-32h14.341q3.853 0 6.475 2.676t2.622 6.528-3.746 6.314z"></path> + </symbol> + <symbol id="vditor-icon-indent" viewBox="0 0 32 32"> + <path d="M14.25 17.75v-3.5h17.75v3.5h-17.75zM14.25 10.667v-3.583h17.75v3.583h-17.75zM0 0h32v3.583h-32v-3.583zM14.25 24.917v-3.583h17.75v3.583h-17.75zM0 8.917l7.083 7.083-7.083 7.083v-14.167zM0 32v-3.583h32v3.583h-32z"></path> + </symbol> + <symbol id="vditor-icon-outdent" viewBox="0 0 32 32"> + <path d="M14.25 17.75v-3.5h17.75v3.5h-17.75zM14.25 10.667v-3.583h17.75v3.583h-17.75zM0 0h32v3.583h-32v-3.583zM0 32v-3.583h32v3.583h-32zM0 16l7.083-7.083v14.167zM14.25 24.917v-3.583h17.75v3.583h-17.75z"></path> + </symbol> + <symbol id="vditor-icon-italic" viewBox="0 0 32 32"> + <path d="M11.398 0h18.301v6.849h-6.421l-7.706 18.301h5.030v6.849h-18.301v-6.849h6.421l7.706-18.301h-5.030v-6.849z"></path> + </symbol> + <symbol id="vditor-icon-list" viewBox="0 0 32 32"> + <path d="M7.777 3.929h24.223v3.403h-24.223v-3.403zM7.777 17.701v-3.403h24.223v3.403h-24.223zM7.777 28.071v-3.403h24.223v3.403h-24.223zM2.592 23.777q1.053 0 1.823 0.77t0.77 1.823-0.77 1.823-1.823 0.77-1.823-0.77-0.77-1.823 0.77-1.823 1.823-0.77zM2.592 3.038q1.053 0 1.823 0.729t0.77 1.863-0.77 1.863-1.823 0.729-1.823-0.729-0.77-1.863 0.77-1.863 1.823-0.729zM2.592 13.408q1.053 0 1.823 0.729t0.77 1.863-0.77 1.863-1.823 0.729-1.823-0.729-0.77-1.863 0.77-1.863 1.823-0.729z"></path> + </symbol> + <symbol id="vditor-icon-ordered-list" viewBox="0 0 32 32"> + <path d="M8.375 17.659v-3.319h23.625v3.319h-23.625zM8.375 27.773v-3.319h23.625v3.319h-23.625zM8.375 4.227h23.625v3.319h-23.625v-3.319zM0 14.341v-1.738h5.057v1.58l-3.081 3.477h3.081v1.738h-5.057v-1.58l3.002-3.477h-3.002zM1.659 9.284v-5.057h-1.659v-1.738h3.319v6.795h-1.659zM0 24.454v-1.738h5.057v6.795h-5.057v-1.738h3.319v-0.79h-1.659v-1.738h1.659v-0.79h-3.319z"></path> + </symbol> + <symbol id="vditor-icon-mp-wechat" viewBox="0 0 32 32"> + <path d="M6.927 17.719s-3.040-3.431-2.915-6.942c0.16-4.453 4.738-10.257 11.359-10.257 1.884 0 5.653 0 10.328 5.52 0.249 0.302-15.075-3.84-18.772 11.679z"></path> + <path d="M17.477 9.301s3.946-1.298 7.271-0.178c4.222 1.422 8.693 6.826 6.809 13.182-0.533 1.804-1.609 5.413-8.231 8.32-0.356 0.16 10.613-13.351-5.849-21.323z"></path> + <path d="M10.944 24.332c-1.938 2.035-3.751 1.742-3.751 1.742l0.578-3.191c-5.235-3.44-6.373-10.328-6.453-10.106-2.444 6.817-0.916 11.377 0.027 13.004 3.315 5.733 11.982 7.351 17.484 3.893 2.969-1.867 4.533-7.057 4.533-7.057-5.298 2.338-9.342 2.569-12.417 1.715z"></path> + </symbol> + <symbol id="vditor-icon-zhihu" viewBox="0 0 32 32"> + <path d="M17.167 17.769s0-2.583-1.25-2.667c-1.25-0.167-5.167 0-5.167 0v-8h5.833s-0.083-2.667-1.167-2.667h-9.5l1.583-4.25s-2.333 0.167-3.25 1.667c-0.833 1.5-3.5 9.167-3.5 9.167s0.917 0.417 2.417-0.75c1.5-1.083 2-3.083 2-3.083l2.75-0.167 0.083 8.083s-4.917-0.083-5.833 0c-1 0.083-1.5 2.667-1.5 2.667h7.417s-0.667 4.583-2.5 7.75c-1.917 3.333-5.583 5.917-5.583 5.917s2.583 1.083 5.167-0.417 4.417-8.083 4.417-8.083l5.917 7.417s0.5-3.5-0.083-4.583c-0.667-1-4.167-5-4.167-5l-1.5 1.333 1.083-4.417 6.333 0.083zM18.667 4.269l-0.083 23.999h2.417l0.833 2.917 4.25-2.917h5.917v-23.999h-13.333zM29.333 25.602h-2.75l-3.5 2.667-0.75-2.667h-0.75v-18.582h7.75v18.582z"></path> + </symbol> + </defs> +</svg>`) diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_AMS-Regular.ttf b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_AMS-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..c6f9a5e7c03f9e64e9c7b4773a8e37ade8eaf406 GIT binary patch literal 63632 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 Rr6XQ~=0w<rz!|so{{kP0^UDAL literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_AMS-Regular.woff b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_AMS-Regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..b804d7b33a3fa5b2587d2d1d55006aed678e3eb2 GIT binary patch literal 33516 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_AMS-Regular.woff2 b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_AMS-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..0acaaff03d4bb7606de02a827aeee338e5a86910 GIT binary patch literal 28076 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 L=iyOmB@LKNp8<1V literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Caligraphic-Bold.ttf b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Caligraphic-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..9ff4a5e04421e5107f74c28e27354e0b2a4e7ef8 GIT binary patch literal 12368 zcmb_?32<Y_nO=9l8#f*v@Nn}14+lvcBmok<j{$fNha7SaiIC<1X2>}-hv?B<vLt&v zwq=Qm4zClHHrb6_DrXZ*j`nfJ>qxR)lFQkR*Gfg}IO{4^?2R3*QjVi7ZB;6ptg|cT z@Ap8?j4Vajt?<pD|L*>~`#-+_@9qa6j1Y36YluOOz5BaL)1SMLLn!hcXl)!n*IY+W z;5<UnDAXs9U%sf>o<~1MD5pR@e`5XQxnsru{SfpwU=qj4<^$`{?m?(~7E1Bt*#}R& z{LU}`7U=g73O##jt+~3oTzed$@Sj6l<rFlCKW2U()_V@>sZ-}JUR`;cIS+NZ-ot0_ zKi*t9apd0v|JR^CajtoF9sRNES*U*j>e~6{xwW;}wF1a9fe`yo*YAJe;@}T&jw96d zbLc;{eqn8WwfZlA2cgchQ2*zMpc0fnAb!wRK&b33d$VP)UV3)5R3iSr{ck0_2|U@Y zx0s)i_fZusA@L6uYcWJhIW?K->#g)x`b%mcP%Z&c>F+Q1_4ZewsZxekzapyv)#@ul zP2k~4W;2<ro~0y@E5oEOlkLr9`vm@}_VJL{DY-c|8{|lC?YFLQG1fK~BX-6i5x?8( z5F|F357|A1*i<qx=#ql`m%l98507MUP>#&sV`njT@9P;ZgvY%O9PmZ4{d2GW2hm}Z z{2e@&nCP_+UZ2^kIvpw&rAW-z=EAyXHH96ns~tgH6uHA+6jPi#{0zdVed~Sl4*4EB zj`*9J9hY*r1oDp&s%05;GL;cP@s?J+4tiz5Aiz)tjr)2tdJ-Bf3&9|0ND92EH8q0C z2=;<D%0z8e!6T}jumW@D5s$AuK2%N**rm#3Nr|3*R1D0OVg&p1efIHz>-X&yJB2_x z>PlQoI=dDlz0GK}>{GMpsG}HeR~aVI5mvh$k4rLnU2dDfEYIBQCfFSx?JK3*c-FTt zI6D>&9B|=?Q(zdkKhLDrC#QMYopA~FT*wwlr2Od{>t|QmJW(Qx%EGA^UkW<>ax^YX zG5`~dl&$y3-Q*240QONNuuq!W$5c<JxG>RBQB4q-YEv~qM`{QilooiuVj+WcM0_1X zjbnm*`ZD95d-6Rt9CxR9E@hXi;Q*Gx0?8g9oAr=gT@#}{J>T}()na;7!q?Bnl`AJ- z_Y)$>MW4^N+odKH!P^z$-Km+oKdt!A47T?HxCw&DWG<1HQ5V_;=pC*kD0<7Lkd<*l zMM_$Zx#bEIz=1NmqZ95;Co_81PX)KIe#Xt%1~gWxJ8@>e%(JY!)}|8I!QT2qcrqNC zA-G)VUw`p!Tb*=%@Hd>7h{2}By>@v|$RXHy!JiR{@{6C^C7-M~c{M9Dw(jLnLBv>o zd++j*x$_Q;zx4Yu#=?L7xkBd4D+RE6dh0LA1LSqIAFSRc?pPg!qVQ{3y#+(it87N0 z3Vty;0E>OS*$g#5H9nw}ss~-x<5!>sMiD&{>wRX?o-D*3V8fT$2*VAH6ds@CMI0RW zcQ8bnXy@%gyC<9-3<dqZ#m)dL^@QE=g?vK9cMW#*#k;=k^~8D?>{w{4dp&0kFfv0@ z!xLj&y9A6SPlr>~2L$5c+E@iF5zIzG9+?+qUE&B^$`n|s&>fC;fySP#|IEAqzFPu~ zOEwyZ$*fN0H8r9kXQrDt3yG$cf^;6Nv26@9Sj`}X0n|h}BEaxOz_beaZJB%3R!+5@ z>E%2DS6|YG*}Xc)vm6m{MCVAXV}F``&efyZoDOexXp#B#-}syXB39dE$=1lNV8)lh zei!I8gB>3A{(-J(9us@oCIu@5V}?${v4wlTdBfxK+eEt@4kj6lS>kc<Y@o<79Lou; zWA7Q>CVRr|G_p!tPm|}t$9IFqlN!~yw@9`_20TP#2okIxENA)dR^~BNv1x|>9UB05 zzl8$}%Pow9o86wI>fhHh8<7sqC1Ybz`&=Rtm9(XysRes>rs@}LvadhrPzJ{md?Ll= z&J_=zXWS1SJ8{8o6Yq)zMJ4Ya4ytlYz@+4od6MWpuWNf&z3C&dBJpzfMbAE(FFUZE zVR*^y^F;|OF<heV3MVcdiO9#k);GxGkfM40`C=d@yL^cNV`i2=VQzrO&ry$4jQh6p zW4UB{O%RlF*|fqAfc?-yGbrGlMkw85DA=w1$_pl7C}_Y`W@dsMq*D%<rDSF$8X1tU z!J?f2gKwNAYDW*@grIQlJTnz`&PIav+??CpVRQ4Gw-ydCLrV`P+&L^jb`o96{)R(~ zI5~%>nDsNBL_{4NbPuPbNSLrL0p}}~h-VJJE=z&ECq$e|hO)DVU~~FOyT3zbqo;ng zw7;_*6G2TXdU=Qy)go~)M^A<r4&(HZ3C-?xBs_e_^71UflH}{L1F{^>U3*wN$wfON za5%wR??R&c6<BQstk&(^u^Kf~f2mX{mCDuz%nO1}Ed-@XjkuixS~jEnU`i<ZDdd1} zAV>svdUnsl*q_P|MQ^%9XC*d0<+b@E`KomCgp@CbiL)^n$bJ7E)}cmH@~(lQT&5u9 zRt`wTxQze1mlXp_Pdve3n<zMyq=2K*%Gu2&8<sjCF^HKdx^WZM;qgc8!s6@Cj5=)o zc1Zv%^ld%Gd>yo!1Fc|}FXj3bNL@QYU`lCeL-D@7>rfT8L*7)i#j+hJRL9Z}*p<<s zx1`zH@x&opd1Nrr576;e!zve@Ie5CepM3thOLUY%E_*=G+q0csdF<17?;S`iKwx;f z%Iasi09zX7-Mf_MxOba2!5ta*+SH_%la~gj+gz-vt(*|SSwh?4!`~QhJ2TShiVZ5^ zNYo7nG=e&|-e;;1=}B}9_NDO-RfK)%Hngj^P8YXM3~*2~k0MlIn*OqIn%YTrt#cQo z27q@ZlQlgk&}2`a))}pGOzoB)m3)31Cy+q27Ps4{wFp0xk8t4}c`?HHo;eieU4gbt zZnvEfF*^J7$_SCUv@bdkx68!sbEF>VObc@No}k<7)5CCPC`lv^rvtvmNDM2=$JQSE z<~~I&5Rd43>E)A0T~76bFZu;(WFO(&{>s=t8x{RNKAc!uf}HO340JFyw~Yq~OzUlK zTfF>aBL)eVSCTT#2w*4jKAbhC0R=Jw6sWhknj#kdsU^$f=820QzO0N%aZZnGs%qwj z?VS+J2039oz}n(2yP~?>-FteUnPL5%J-l=<9bh71!Rc`McD099K0fg9-mH_aX9C3Y z#Ehg59=O`&apt{VL68G>C3SD5=PUP)FY$zQcZ8gwiih#BVa?%;G=Fck;J^y(<KZC> zBMu&NV5g6W5zr{J^%ge=o<9Z}9rjXO_W~rTkElAPN;KKQWA4ailNqUG`_yCwE=4zJ zN>M<;-v?FmUke#o0D#FtF_Os#I8jYGZIO`)Ka0hwq)TGQ=5)fG%xwJ85Me|=?~cM| zM8X}Rh))?P1Oh(E$LoSEfPXb@pKx_JC6VLhZmlcN@u}(Q8szjokySFwLV(4*^6c|p z3$tob^8DrRP2ZLL?DqyRAt|qK;)9><u5`v60W3THN>t@x=TG(wKlF8${ZC_3uS1hC zVS;0G=brKg9{t^~CPf_ciZrMFa_cR2nVCg*ftB{8sFijg+)v#ZXQ+ittMyuEOB&eb z#@Nbn;Qef`K)t>lEITH#wg?!|mF#fayoq5MOYY$|K?E3*p?llIVHd`OGucF8siQrZ zl6mJ8Bwj~yq7NL3g=yW+@~%qf_(7IQ>>8f2yON1mP<Gg#NIHV2ZoU?D`gOu{PWI(L zzPnKLV#or&_~}FC$u>_~pN4I)!_Gy|zV)L#BtA?+-3;TaEnWGk&GW)b&nk>xiA6?b z2R#jpLyourNTC^U7=sP4siNgqfo4OB5im!edE;oc@1zUB62(>E7VrTH6e`exzslQ! zjB{u_H!R^pLkFValTYklRGc1f$ZvBL${{SZ^?YSP4#qw62RhS_-F^8=TwZz5%X=cv zolcPN5-%^r+Tz2DtE`K?UdwUH%a^#j)@?R5Uhp|O86U^Q^Ly5u4C{I5l>_tF^CQG{ z|G~IcsT}=!ua}<7x4z3PLU!+lT?@|TrHFN_1o32F1$JW-yRE!VgQCA=21V=8szU@* zuw#gI@Hu6+LWf>4vY8iE&x0z#nSFO2&D-1KS1$F9iQzxGIN9qEy=BomiC>-gloK4} z>~v_UYn7A}6IV^<vRK7w`NPL^ua?~vj2wD8><*P5aRf5toCd+<;4Zwt%S0@+_48i0 z&<UQqx^<p;96Z+q&kd>IIqQZ5a#AdAr)-Gt5;zcC)VgW_p103<J6Gmg=-oaFS(>(7 z4pYLWsFq7)AgsohCc9&P&vZRhe(b@=3Fde=+a5e{GF>=)?<36YiE5Z*h&ZP^+}M9# z_pq4MZMz??cjY@0tW=4K@vR5<O8DZD(MsPQ8(E$d`u<Gz1foHKCC=u2-|$0sF9QB~ z<=WBZ-SvgJUdA6288O^LL>tE}_J?g4i`l4T!(LwWWnuHPUs=9Sa2~xHj+`3txF+{< z6x9l#`cGSDytbW;F8liEotb(Pp4%J`HY&IBVarNz^R^ypE9)3&j-Z*a_1tbM^V*}E zM?*UEx1;u}J`Q`h13u}FiyM>f4^1x~(Ni9gI6DWLPQlTpvhA8E=Cj3oknoYAr^ftJ zI^s`ucs*{(<7dEVeDIMrxo_}t02BX$?sZRky?hAUvEPP8pLFN#&L+z-Z_IBW>Zx_W znSZ3n&)Z2`MrL@A+C9KH(~;UzFdzxUEAR@npU~fy>XK!aQQr9Bp=clr)(gQc@JE2G zLx8L$dMfgj=xqiRvvzt5KU8Pyfz)6IJeUxyW`z$}#|)Ef#ys|J9}#FbOmu5Y>94#Q zCN_6ifU8V;aQ{#t>9YH@Gt=pmod~Wy11m>*s{;ZSY}1J->*SQ4VyK7rxZUAE*VXpe zp{0}8cP0AUv##_36(>C|htI<bP8S~xX1w-zP>F|fX*Cwhf}Pxfjy=(Wq-&fl=nKFF zf|WVd2`SVedXnLQ&*SoRc4u-U>+O9GPcl{x$L1m;SR=FbZRRHV6Ep$VD0rwfwoeEB z6|J8J%J!vzPwE0_n@rNw(E=H~iJ_@QhEEH4&@rkq%8B8cyN-|7rFa`;NzySqMOX$y zM)!p@_wk-G3F<aMt|fy+N-Fnr&UZx)Gq(P?g8!YDmlno#7bFzk#}hfC_rRqdfB#K! zX*wXPX~rjdXD9Kuu+!=A@RG0H#=~CsS6jbi7>I}ipv9m7TF5Oew!wYtg$c+DxsYyv ztzh5<MFkzUtJXkML35Ma&J}PXYA+2gEE0J%CTaaHDXauNnZ@r6u_3$NJsVLI@FFGc zhFecN-Tz0cdX?eA`}wat=<Zd=6<=3}TkyCQ(k@4n@SdVSI}@D!Okc9C5|-88ch{w{ zNJPzg)meAn=l<d7xX14Bn;U*Sfd`a8-?9DNbwA^1J5(I)KX<6hFDo{h2|`;p86NcR z1-(1rWNUhl`V5c?57i5vJ~+To#6mlOcw24yMhQ?(vYAq7Bq{or%hP`P{^TF+?{G0p zZ!$>tV{vd&>e)KEC<`*nDkp+u!KZYKgd4x>dt--7uJ!xMX<mrvj2;`2?Mox^)W7-3 zT}68(SKpV%;<VS2ag+TP$an-~tPv{X_Gt|y@muc%Ar({kXqHlFl)>{M(c!h=j^qMw zMJBj}P#{`&mp%`T#!P6Ty{F@dmnDqg;4e2ih21H*L_>(NhZ8JuU#_?W2J2x}_X&=! z60!H}{TGuCCv>}pvpjbF?w@wq1Wv);wMa^IkfXu==-AIH#c<KZh%VvDe>}-x8LNE^ zyoqrKY;XUUFfV`UWYjO(f*MIB<|Ky94|zNb&ENUfoWQeu?uUPPE%d=(|9M$p(=LAg z1>9DXP0tM=%xr*F?gy(3Q_ta+he~BreX1=zW|)@gr*Pd?U+_a;Aka$PCQz+}1NkbG z&F;J%wEPU`+wIM=QpvWG8jWBq1txNtVbSggDlt2D&DFhp8H)?)SkCWFPCggMG9OJ! zLNXB~!ScL4of5J>yC@O3ZSsqkl6;$AN#q5e6iNGi+QN@qJcbl1$@Z`$Wk|O-IOK9- zRt}FcUtn?PphsXmPAAU<dlKPLG#DMY+sl!caAyY_@cDy1c1#=@rE3}D+1@=F7gz;e z^0<|Ro#;U|9tuxf65!p|t~r0oYv&a}eroFw69fCvH(T9Y3;6(W^BO?&aO>!AZt^C$ zs0mwdo?Au(g8}NSA!gPGFj^4-C;z!%VDX-ya=23P!3jI<JYBR8ByIM%pRtuEB;qPO zw!U$s-{J0?wX<2p#o1%Agvf+@IXI$YX;=B6Ekkm$N8Qb-7Y{$bKPhJ1=P$KMu}shv z8M5KAE=kRF{gdafH>)mYtf&adF$jMd^Kn*obDYnE(e*Wl5T+4Sgg3AULDw^&>%K6> z3ca9#5>$^?qNA~M+iotX@Xn&8uC*W0q)p$rtMvT@C{5u3;{hHJM)1&G4xWB}=Y(6P zZ#eqN`D?q?ke9XfC%kfy@s2h=6^gwPO8GrZAaY<Wz_4~MAvuXqjzcsSg51HUV?*kX z_4a^ZySGhc0?+Joj(7Y;tP*uNLJp_?Tb~bgb$K~4qX^Yqp|OgWjB%0@>9h;j!;Af; z1v|$QucPhA(EtEVa1c?^F^k!Sb(Ovm)ML?p4`*L|#7!ul-Qx<c-ygt&lec*yED4Sb z_~08E`W;joT8C3I{iB~j^dx+SU2rWh|72u6Pv8jt6#fa>OMbx2GVid9?030k?lpda ze@hq@z99~YZ%Ym7`?hi0m+evecN`_hn~pcl`C*N}{zm&B9(9lW59DTk*_wB!*m`&C z5H|<+FZkZ7B?m&kHoq@IcmY~}4PO0ilqK(>cCv;P=3%6eqbSW3k%zp9O3Z(R`t_}M z89VA@PNEJ*K^@#NlwrOOd))>aXF6fbOXw=|XTbLg3Xw0M40&_wugEV@i2X7OF+FI2 z{7;l(N`N0&i^|N*ZXH7RaL2aZ{oqI3oT<f*yg;-e!l>js2o9NK14@McfmPz4qaJM9 z5^k2}-!+8Z_n`OwqE$spC#F{6456W~GTPPvx(D?BnugHRM;OWh*hSC>5}1~tZ3=v2 zM(YY<;RZu(WLZf=_n@zCZ9$6$-!}lY_0HD!w?1R?LL)*3%4-HXxH47OwE0(%YkA(_ z_usQ(^hS*KdgFw)ad5>T>E^3+!sEyFW06F{Ky?Gv^vN4AORZ5Y7&vcejS~ff<n@G} zC>Ts$TfNCBepIa)zM9r(R5yuIt8S*5nn7v@u4;xu2cp(oHQ1%AHwYmxjgeT3CTQyo zmmgQ78jyPRh7bFoPdCug%3A#foN3Jk*}TEz41aBfu4e>lwH8A}Th)v=mJBv?&y9BM ztW6!CGWe;Lgu$fi`|e!<=E%m1W-Kj1(?mU@83U9WsMobkiyI_rho)9dGrDPiH|2a| zX+;BTY&12)wzSfK7LE4VC{>|Ur4eb=>-7j&%W%|=8))B(f#xZ50_u@@BTlLKeDf6# zI!-xW;n1;qeYIIPaIRi&X;9ZzK_9(ZFBn{2o6-z6-2|P4+R}<4=v711tKb0`(kK|b zX>PEDwz?@Ct7^29svEJyr=P$#b==@O6VO@HHna^`YqOh6gN2q?8cUJpzWRz@Pt-MI zV*d*CMW|g`q7)1vZ%DP=4FH*GbrGt1RR_4})uus?oiOlmSilfE3x<@}sI)Fni$%wP z1>~J*)G142(v;SgzahC$ZK~Rt*a40`e<zR})+{&&BGf?jhBmdKH>p!iW1|Rlh@nM5 z$ZaXXwR&^XTEh7;!;KV-g26kg-9E@g@vm2JIvt3a0vAQ}M7<M0?9OizGG(kbCkuur z4=QMy;jZnbngIbGGCZ`l4{9FMUtXBVV;V&R8ypA04R5WXZ8S8)3uY@Aa(@26$|k!y zSx*_xHT`PA@a5;1SLXLyjgbVj`^<JFzlr49!Ie!}1{XG~hBrq;4xm-tbkh$Hd>A+Y zzF^WzE1NV9!Cci1@Gvav=}hP_Y?}r=(0)1uBANEqL6aGfe+F9bbk@hXa1$Y)4o0pS zXzT{uA51*>^9a6<pE|H&$a+<qGF$*ZCoJ5kYK?yt3}WO(K2)t%sRb11!_7@a%o$JQ zB1wRE0Ce={3Wl2B#Iy{8y=fWBZ!)wD=QmkeM)I2+Eu;BOo|duvra;Shep94nTYgib zWiAiau<UQ}4Y0JX6%BltMoYoS-_{w}>HL({S-7n;v(tIO>eTYcaOXZ&Pf+R)ELEwV zx9gVx{WOp(3Hs4e2mNT70{v*22K{K60sUy11^sB*4*Jou1N5V1C+J7ZVqP0D1F0*o zHH=_GgQSNW6cbG-jUvTtci!mA8C?*MJrD{rfY^@=NWD3r)5QLN<p4MqjMBD?H(mS` zMV!&oxyfPw)Cwd;>c#SH=J`0D-n`alO5O*vS@TT&W}1NP^O4fhb`<y~Y*p|Jmoa@{ zvlsiRt`)EcDDaVE8W1eafr8PWFRCL2W8jlm0occZeGpuP0%@(N&Crwprk&f^n9*k- z1+Bow2U!<(qydcm3Rrjua#z4mfsKW9nl{-s9jI#9Yq_<JqONHp8!+eaoorgsn$O_% z>NdA#G-ytlSYElwYMd6i$!554y-G8!4U#sj4-)9p4TA@7-x;nDSvY6yN^GsMsv8_^ zs*vp1S~CK4qYnAu!(*Bt8svX{x;YThVTEbX6AE(`nC~MN0YPX=<{^oIGdKVo>>wYK z1ZHf~-HHmqz-KFy-dYR5GO}$84J6<)EnDa#V5ZTXF2e@NMAN4A8M-L-;@Ebdsf=Z5 z107f?Y9p|rQ|XD-2$Sx(!r;?Tn}e>Mvy0`#-$Y(RZ+Qzcf58~vUd^<A%Uun6!1=Js z+b*7f{86M<oHo?j%2EXORBfbQ-0a2*#O<y-diO<^?&z)F(YrnN_W3?MqLw#?a<?;V z587UEGH(p$HUNGUV;d0ZA150)v}kmLh*PG@6vi3L@=Z9PRV~#ioOOt_B1E30&~$#& z273)fzlr?68>DAG3SfU96jOWCJT{^aL=v~*B~fq5IRgoJD7S5uS*Q)?64YnZE-h_# zOfUx~@LORIrxS>9U(u*Ql<)qS_Ia2ND?Xzic=qItK`0ie6{o=5+B9s!+tymlQ$QOF zVCKE~8wgDUu>=IB#B%-yHe2=qVYck2JTuUBfbvk{AmyRNU6h9scjs?HF028y0u=1+ zK-Kd%;rLIfdw{aq?xlQ~wjH8;CUuzdnbZ-=XHrM$np42mpled1N!O&rF}fxtj#Hjl zAXX_4CDtepB~DNtN}M$1ngr^UDHo+qn{rX=K2t7AoiXL2)LBz5N}V(1qSSd)E=t`G zHXhk=;JR5eCZOX}7P$+^3)JY8&8R}{0oZGSq&ycblJZ<Kd1wdaxeS9xcV@j}*31!C zEs~CS&>|`Or(vE^Ys!Z#k}^DOk(A*P;2qnU?=xo2obR(1N!hPiBxU~`j2yG(yKa$` z;qw+r8NL9#<2&<x(X5&CJ!+AZ{Yw@}*&l<E<JNqSTO?)Jut>`AME-`|JlPt2<OaOP zn}SOd>}B<8&JfoOCbe{RdqXcExB&iO9~>v~Q?S=rSHAU4BvirWsFM;m9q>y6i;{^+ ziPhJb3Fx*%t5kgrS@f%L9YvFyDg4+n+yfq4q4m|t&30OUMMPEunyg1Qv$W|o@fyPH z#AC+~n4Hi-|8Bz17F?aL;H@tj?31uFPu}EKc{DjmPXfRB_Y8Ult)VsYI($Fxhl_Em z1V#y6ptoaI0{R8`Z_yZj>F`2}CUCj^*Dabsd(gja(Jad2V2kEZ6;HNk{<d}}xqu&S zwYyL+^S@9H-a@XU2VvFI=p;IYF2dcr9e%sn0c8np=iO)!6-=rJXbnw*+z*(%=b^SA zI8Q^%c_`OV9$My1x`=F_ICBrYx!#_607lNk>P;9;@BYVuT7?<Ufn@VQ9{_p<9fdiY z=&ZT=1)$bp#A)EIf(~bae;Ug3paCr}fHrF|7kvXl<sLFu_@tQ%J9B;Vs<(LWf|V|q zR-x-_s0Y^ULBl{@gy#fEdI`$=O=+oo)WVldt^wdIgRTE=UZ8gVfAs@hYXn^}pCZ_^ z3G1Ii_d$6T*0$_41`_=L^Vgj#o@sftd52GLUpWtJUjaW-xiqv7Z25p`&&%++3N71S z)zBhHeGXbFRzAs-6oEFt4MoTUcg(UMv_1i=U4c0+n6p_N6jv0*=gsx$%9ntqD7*kP zm5#2w9}vC=%DsR-%6q$fd+wNldg-H)L1nuo*`4cZAk}5~e;N?ogkQOwHCMf5pQgFu zF0>3K_2m%EMWgm2$TI}L)9nK3kAuXgp?(qQBK)UwZCktxB%cNi{yt-@H+YbgwmuJW z^-+Iq(1_s`41-cAjWQ?;=<7h8C<nQr05WtzEcU?IGQ@r#s-S-O74#s;Jq#Efh2QaA SI)A#mdsjEif#E%%`~LuLuweQC literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Caligraphic-Bold.woff b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Caligraphic-Bold.woff new file mode 100644 index 0000000000000000000000000000000000000000..9759710d1d3e16eb10012d56babb73f2479ba9f0 GIT binary patch literal 7716 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 T)f2#Y9^(|*uYwQ=0PlYQ=R`P_ literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Caligraphic-Bold.woff2 b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Caligraphic-Bold.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..f390922eceffe1f6dfb81a3dc086a92d98171b02 GIT binary patch literal 6912 zcmV+b8~@~YPew8T0RR9102=@R4gdfE05EI-02-|T0RR9100000000000000000000 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 G2<`xUL{2yW literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Caligraphic-Regular.ttf b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Caligraphic-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..f522294ff0f3f8c52dfdaef7ebfaa06ebfcfaabf GIT binary patch literal 12344 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 J;k}^#e*sv&Q4RnA literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Caligraphic-Regular.woff b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Caligraphic-Regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..9bdd534fd2beb9b878f0219da9d63ffba56677e2 GIT binary patch literal 7656 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 Mepdy)y#Y}F4=Hd9=l}o! literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Caligraphic-Regular.woff2 b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Caligraphic-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..75344a1f98e37e2c631e178065854c3a81fb842f GIT binary patch literal 6908 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 CFgb+) literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Fraktur-Bold.ttf b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Fraktur-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..4e98259c3b54076d684bf3459baeaeae8dbce97a GIT binary patch literal 19584 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 F{|oFozGeUb literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Fraktur-Bold.woff b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Fraktur-Bold.woff new file mode 100644 index 0000000000000000000000000000000000000000..e7730f66275c87c28f26530d89264cffecf90be0 GIT binary patch literal 13296 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Fraktur-Bold.woff2 b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Fraktur-Bold.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..395f28beac23c7b0f7f3a1e714bd8dac253dd3bc GIT binary patch literal 11348 zcmV-aEUVLZPew8T0RR9104!7h4gdfE08HQj04x0f0RR9100000000000000000000 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 Wg04?dcHtp;<B|99v$cK}<F^66KJX*} literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Fraktur-Regular.ttf b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Fraktur-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..b8461b275fae76efd0d21fd0f1aaa696a5b10f9a GIT binary patch literal 19572 zcmb_^37jKWd1t*UsY<s>N9jIFDoLeVYTd2ArB>hF(|5OeuI}k$?!$BY92?(bj12}8 zybuUCS-|QU50}}EAz?`zuCN5MSpp>3gb<P}ci7<3ey^k+W{kbr-QV_DdatTpz4sme z?|6qyAc7!t#JvPXtnQjiWoqA<cn3igUV^);>&MqlefYEcKSdD5LAbta{rp*8`$5zo zh@rD^-Mw|{;PC^=f4dW&zW|+R4z8U!1@~Ekm^cQd;^48{w;oAwa;X29AhM-Hn`;~E zp~{~TL|y^+3WwkZQ=>MZ`T|@B4jn&x@sGZ!O~CVhf<X5kJGs6#|IZ^8g2>_VKYx7f z;whxneHg9-aLu1sJHC0Kc<+yZ9-v9~<f)Tq&R)@e<c9<?j^B@-I=y-7(AbObB#7FV zp#6sklE^^$rz8j5GC+|bYY?*rA@lS`CPQ+s{9^`fLz|W6FNiOZR|q9xAr#kG6+@Dl zSRq%)W-Mk}@E562K98?BGefQTZC0PpYEw8VyFDlmSd)H#(*MWkQkr6duB4d0{y6lg z1eyH_`AI@0^{7|N2<XuyhVnV+ljE4|PSwmXezV-K;kXTpTvVBm2{nE%><g(>xj*`x zps=Zwy#Dh9P~Xw~1^FHFGen6PASMabCx<J2T@EFci3Kg$Owp>N1ivT(vAE+x5r5&4 z%nVI47Hc7&6GMWZDdM(FNWc$5BF&lMnkv9kcu2z~`iI`+JkK%KP>)#ak&jQED)!du zj+IfdFJ+!H4&NOLunBL7EIoOThl(6gKJ{R=zHel5qc<9}xxDn5-bduYzHXsQ)?Msf z9GENgb&nj$g$HBCobp}wmUhJgtUN|hX(nW!f8wq0=~^E>jovDDbvO$F(Om`w5`*YD z;vtZmnxL=B3DlMuumS`#%SMvZdt?su+~;gso!+N&d<MUBTeF4|<lhlSct?fc9XS^Y zVKEd7MUFO@Jrqg|&#^{x<kBM)>&(B;MnAB0@Ub^+e8uAQUq9Zr=bkwL93mE*Rb(c= zM{qm+nDQ2bStn!ig<=5!ASTJh|148G!j;&R!*5cVa^x4B;`OE6?8*6EDcWY9+WM;h z(E}ZQqqsL0dV%;C@;Sl{z3C-RghG*KM9_^`v{-XumSze?E7lIE!t$=L0wuj%s6$LT zLmow#k%c_=c)aLyIKw1*A>9`U2qwSF<_cK*d_uQ}_j2Aa>-Kp2V60^G6XX}jF-dA_ zIY<Ec7@vVL_=-M55xo(0%CCPZeEmfRrNYP@zWx^sDuhv*hBvFtB=Jq+GFULk4pV6r zF;*lHN%)~pm@3*KMl=ig^w)JuX$L!}G??6%LV-EVWs>+Y`CpJ3@JU}K@%up-lYHTo z6Abz0ABS;^$>vXp|4Li{>!YvIB(wm#!e-^46icF5vf(cg+KJ76^i}d}1ijM^S&=BB zB6?AN{Z5`jZ%~teuKvxv3LSNkB*4NV&7Yw^MgIgmbJ%7za%^G90>}m<!0@-W;0@SD z@~Lyr)Ms|z<C>TmyzLPBC+h=K2cEq&zxy4w<ej5;zI)g0n3HA`eF^;~;f3+lm=lCM zfd5(+<7e{Nb|gara0y}t#Z(%^4UeGP7mpoCud3xVBacTJ3Y|iKso3*IMOJ@`N-<0V z(Xy{@xjDTYIk7yt2!vine@(bx937TN(8~Bk+%Yy#5uo0-T0C?C{dbl9`fcRK(;a@# ztm@!+wC6v`6_kv9Wt6V4`yQY1b)=2;p2)%rG$WHC1vptmgqmaM<1j)PMi6Kip=iZ@ zf>;1}*^I;jn7fegrEVGYm(=8;w;vcDVJjWGRzkr;a!&3km;8m8H^a^jXNJDcERL_< z8*vJU#s)(H<R|scls8fgs;4?T)<GjG(BR*pZ-X7$KqD5DM$!nDqP0+D1hW;m%lq<( z%H~9%>n^#B>h~*_$SDnT{jZSk+uvt2r_r~m4=(K9O;X8Aevfkaq!oSa`qnR}-h}x| zHAm2=(Tju!OHR@d<MVTzwIwq8CjKNz8qf!9*IzLx`zlk1mhT$PmNmJ=)MmA}Gh;+A zPHP%+&;F^&BQd+(ygAW3UsR(>;2{C1`WE?F&`t<=5IhbRqly8SNi#IFGnC*@lGw|_ z$Ot6ba-Zl+O2+M-o7_t>_0`J!n^!WEF>bJO{(|ZHUl{MWxLgh<$*Y}m4H{W`7LBY| zmmW=yFC<nQmAkGl{rWB4i)PGYusM!?ioQW;fk%xDqcF=6j35?Fe$iL7pva$H|M|I5 z>e3I9{Q7hJB6^X%{=m<)+vt>hQH7&KxcN);W%Bb7-$O(iqC`RzAR0rIFk$yD(VCQj z`?+Bzy`&T?iWqcKAiz=K+sW)?@uFTIHFS?1u!(QlnA~y{(!sMU<JW%AE7am6XxX+q zS3d9*7q$!9P+`a(>#Cn$nGE)3eB9*T%Ctv&_j(sM63JFrdwmq->I6)F1AP;sp#XCA zxeO|hYY^g9sO6_6iWtBoHZg1qVw+xckY4Ut+?@@bA96l=X5-pJqurievx(GDckh;L zgg!mJCmSl#s`OVrbY{af+Wi(!$KpdOZhxWgD2$qE{+xI}`Xa=26O3xmFt^5aQi_q- zFf#3+?r)bCDX63Sr2>1KbhAQSMSli8xu7Sml_3~!yl=YUH8CczaOrfrD@LEv`ju*( z(U$T%(Ct!>ul%F7FT+~0I*miEUiP_aemq8jc!2ymx=qSd6xV1ODcKMBQwICgFTHYv zA>T$z-)J=aPhof?(fkG4BCi2eNi0?MtN4RR4?(bP<=71Ib&EbmN5S<G$YU_esbth) ztj2_%pf|%;T^9yAM?CtTeAwAaZob1i5?0>U9~%-Q<6%Bv58LDAso~C0*3liyalC|F zOY>!jL7yge0dgHGj9eyT1;aPwL>%R44#op5<6H&e9T*fiyJ9chc6>mchXk=<7l8vU z&<W<%q7^-PB_2y_@0VX<1%{QAl;5aL(NFq3f8IME?PE_dQDcyEa*Ei2(P+&hcxq|3 zU#(18O=hG0On&qr>U)1Ijpk9!v$m@CXe__CXJ*5ytlQaBxdTrh3ac07yxwK9Th*n* zV@C@Sy~rm_;UTL!5ZCCn*{IVLvKsB32S(PVEbL_}MP4O(fX}^PU-h}sULUqExxd8` zP8FnV3akxGN|bC$!Z_dp`wy#!%tBtGqZp>`>8V~h<OCu7K7IvmOHLYJ)1;&G^MQdW z&0UWvn9a^au70Q97LLZUi))b?%hpDWQ|s(5&Z-EST<ZGFe#^oAcWU}fDMy%dshA+Y zB&dSt%3l_8-N#2_0opm9=0;~G$Hz~cjmPw->|@<(ZNjR~4Z2g=#cKQrr=F`&3JaxE z=oNj-!->*TAG%#;WlTDoPCJr`pN!6O|8Zq{AwRN@t>9SJ{2{qXew^qAo#!a5b5J;D zFawDfXjum;m0XRK_h7*Q9$Pn|32sBT64qh?srlMvmrSNnTAibDXWnd+Yt4nxlqTY1 zJygelZF=#sq+>C?8c4o%Wmjy8tg{`t870Fgtpd$1&^)K~2K(KaVV+@CJ~nT<=+f)a z;6nOs(@WZvIozwLPc`;0R)K0KAoWL(?PIDVyhOF+Y(Vw^&`d8?EU*yaLHdjcIV9E@ zPAgipV%Qdntsn~Api``~yz<uk%=wVl;AGfnZRLaS9PgEL3+cy4j*QNqD89STT7SH! zlx0J;@)oa&k}0*Z&u+TiKG&yq$5aYlZR<xwZDpeOsQUi-RK{$3s(#_gj|-(~cD$TP z27|h8^$JkE2(rEpWIX^>7h{-eOf*OrygA40(A$FF%~HNu$VIFk3&2ZK4|?A0R$8}w z@oJZXF&i!KVEsu0FYBn-rk5V;Su3o>#JA1QM|Y3$Lzi8&T5q$B#~tJuCS<X@YlFQ> zw=xu!>o=?{?KKtndpw36d3T%RWySnlW8YGZ$6C^=6c&Nj<M^g-Zj#4=iv{4Ks>NIY z`I0mEZAb!~BuPOMbjz1wHd`hU5|a!LyjVM6TJRV%gWU_@2+ISVx+9{E*<F^7CGJD( zU7ZZAQ81*#C!fyR9Xhwq+cP3K+>}{iP-<v-z59-V6`oaYEQb%S@s6^x!gB^blI%pm zbJ0*&EPTpS-uuW>H(N2<yc){L6>>gq!P?^%_VrmuLs6Ma<Ivj-W<_dmVC)(7${qQ9 zpRR6W?Yd4e2L8Fy{Co0?Fb4<|L*Sn~GlE*mCV+0tErY2B!<Qy1R^S5oECO$Met_9R zE$4BwGF!fd0W6a5Y1p`0qO|v!v@mc<oR2S!^QTmKN475>?4}0|1&`HoeHSa{Jyd$Y zK388`EYyzm+Z@3Jx$hY&n5>=MeaMg$=bv5K+ZSNR)ro}Xs52VZX5IZl#&Ug?RaWA{ z9WFgf_0Of=IaiN&p6OknmxFQ8V)I{{cajg1|ADB276(G0MR^ejhCq|gfnp?E0rTI{ z5r9rIeB49^Y+_Xbt6)Wv6yO@2N*lvgzd=b}9-DEg>`U5`&mGj*D(-lKqc*?LJxHq* zdbLBPJ?YJCb>v2mofvk;E`?%8`-4JiGB29{a;=sRY5j-Qxv(zQS8&84U&$Z1+)Ytx zrCFgrmh0#ZAD`&WuTH;v^&F11F7N>y;Lr?FS8**H)k&HGASGot$Od|m2>Fo|wR#~W zwKWCA@3;d}r5>AM%bu`DvoCLmO%23P_)XF4d*r%el=AA_VQ<o=Hj*QQngM;+=Ba3b zd^cN*(H6CqezW?_p*;J_!>qYCMpbq0K)KhKev3<EnT|4D#pGlDQ(c>Bf^7bC^Bk!H zN{uk{S6oX5sn$xu4e(<}3!<i}_SB(eC@oC2-5QoSSPm)pYkF5b?-{DOg8dgF?ju5^ zbWFaO5pAovVv#J(vVuSQ$n22ULCX{tQvm%B)$s9rp67bC^mO^UOFNv3zjMCS`OU1_ zI8{*zU5V89Z3~a_j;>(Pg{8`ZRIiX9Ax6Ny71w4)lUfPy90WZ|vQr>L5-<Q5!b35O zA+aOa0=8ys747hegQZ21eNhf>?M8?s@A$CWpf+iJ_9#y+b@b>cg^u%CVk!CbY9ZLE za)&K0t*na{-@oA<C>Yp7Bf|&G_sm-SI*lo)R$c#CCEppd7+^{}JfKE<CJ?J0supa9 zrBiNEwCXG={tmA!U+FapK1==!KBMNqJ-V<fQIHP~?;7aoebDXUGxCQ#DvL#1vbm2t z!K?AW_k*CLL9hoO&f0@k9Y|Yp%3`mgn3b{stP|j=HL2tnX_C5=D}YzV*$>F0SRl`_ zhK^Fl+NT39p+kc-a;-wAH5gT1Z+fpO`o#QQvg$>Ri|I}lXH>G`b;Eo1PY2y!Q1992 zoMz|slt=B-S~WU`RHYrB_otkJv6(ZvD&sYJ+y+^{Et{>B>>l0I0n4UlFz5#AAs))? z;HB;Z>fH?X$(T$l{@MxU*j`(4gAs8|#7+vMu9dK0_<=iycR-o>TuxH4q)OaGdVm#( z*HCcN-==!t&cq~4LW{kSGC+2OKHyzW4tYXHI@~_B%VxIsr+5|ZH5kKBb|RKfYYkc* zXB*4v`tM9y%~n=B>a}#*95NY309OjCM*cAC5Ay21g0J81v>OfeS}NxfT-B1^5z@kv zh(2qG&xz?djv_n5*}23}Bok5UeW|{Oj`HRZXF7h*NAu$yQRE4Q-LoU1cfI}T7;DlU z3fZ<61}$!Hr!QtRjD(|KzWBC$ls!^5JM6o5twfd{4m+G#UyO_OxzxIZMP*P$Z6Q-C zYw!!Zvani#2zT@QR4*W8Kgif2&FerOAThwV1$2&sG!_fgAS(uW$N=uxU|Y_#6)3=5 za9bP$B;iYL2n+s(7;%T_gI><E5Y5FjDwD}>j--NeojV$RvLDfu%B*oxMxEU3cg_y$ zV><GIlr5z%X_NtnTZ{@eOP_CJ&rQNwT+1(zoDc{k1u<Yz>)au4!`)qrSuBSi{Lm_= zG+VVUN@ijz=}Rl!Z=Sc2=l!+;Ye<Z~dHH=lZ)Dhe%>8PSEG|n~0M5Yv8!->kuq!a) zTGmh~W--zLbsm_WV6Fik5`;ilkQLApTJWk_i+38P7}&F5ACe?dW6_<lh7_#oenz2{ z53OY_yWf6henK8Hd9~dEHWd$aP^5xVlUk(mXw_3CZfI2qcnlWHY-ZG7*cCPV`X<PE z%4#*beJY*C1*?gOPL9pzzdrdGPqGY?XM5wCf<Wt3EMt_Jkv?j)Ds%h&>TH64m*3SD zv?~}7tIsU0mv<d2S+P%~n?Wi7)@3ISgHO!6EDZLEhO9@n<Ede$gB1!3u*?mcv)<&o zMKi=Dm=}TV=om)q1%|DXCA|&+o<YKxSKu`M)B)b($Wx?qs1gvu4_86~l5=Qn^5pFJ z#Syjnyjr=$IZHOB!JuVTdd5JiSVtu5HMti@w)WiugX}VT<@((afK^mP@ICJ5(oTzJ zDiVq%<lTF+-B|@|8+N(Ri!)Eq(ai;>PhI)4fl@Mh2)-7I<D(h7;(x9@GVD9#{T)2i zB|JP&=>ZSB0S_w!*nj?es>g~4pMjkUP8KEj6eaY4MFA!-dYG2?VnQSu$<0pvZ(*>d zx0}vRM@uVK4`3h*KvI`k)xeNRCBevVG}~iFfB4*%D)@f@gyBgg9W|A+mGc+{fG18} zhUlZC+i?2wtVd_DJDtuxFCYZ`FI5KLz!HZ5Au*Fun)erq*aZOkAu4cYFmlj3%%LS0 z0C<4h$trmcn4@6(2XFw#03lpyVMOu^Qf}}%KxuRr@3ZO{1?{p&yM1y)_CRk<Ew@{A zHs<zvIj&GR9Zc@Qe#$MRUHyiv_p~+dituWk!6z8Qh0$1;>+{F+^;?jVSwMTd%5hT1 zWHXWOl08uSVE@>Dm7X;jW!l7W@ME?Gj@>*b8#HXV1=FP|`=%LOsl^sHmoraaxVy_6 ziN#F^J--8!dF(|?5NCf*ZcB3@2aElN<Ou)=;P^OmE9SPcG!KlACk8wGV_AWmKso>| zXi`9P+O*(yJr^ubS5Mwwdw4usI=1{Vb()KCyv3#}+f25*1J9@DZyS4R|6SQsrPKdT zF<h#k-)Qv(mp3-r4K@@U&ptZ()Ug$TcBna(mX?pJ*HYB!ckSKt?#*m!t~A9*gRucj zxeX|PKlw)z<#9Yy4z_6n!!BagVr7M(jtK;HwU%n|6HGWKxkBs`q(u@bPayZJ_e}&Y zi>V1!zNRw!ES|(U+Ojz{+r1KW^=H%m+Of>%;$5klBQ{iaC4;eGEbLngmmg%02IWIt zY^j83L(buTgx`0-ndx*T)&1eJxab`S7Az~Q&N3J<6_dRVdtcBA+jFS-1K{8pSl=mu zjhdx(YfKc73js?qLoC!C&)i<bz!HbmA06o?fpUov^u^OoZ}Ja9R<CN>9uICF>{Kl* z=r@HYY=ISxTy=?cI%RT=&+7I*dGQ{uKW11Vlc7HUbJ6g5AKN<+XmrHAr^>SeTYK@z z6_s<Mlww}grba;hN3pkcw{6Kutbi?bcuaD<&d9X#NNFVuGF?nH4YMz%ZB~+qcN{LB zmF=W%Fh$8@0KJa=+_Bf0DeTR-!e$MrR*!j)__RJ1gnotZR6bgW2X&f6$sxGU89a2) z^3hbSpza%Z3%M}-su){b{N5;O_m?f+T-f8dG$<_8j7nv=_#ghbbSTKvthb&O-)W7^ zTNbqW{(g2i^6TXXhJA;B*GBf?6=1IUlFSR<#7e}7J79%sG9@^56s%AoiSKqoA;Ahm z4wf+5X(z@Xhy>@Mv<Xydfo!e?KX5CO1fawkrx|QRt>hLWHjch+A>nslosUqLx=cre zu5Ot-@9_Kq-(fduUioEaaA|a5sGKi%a*R@NX>yBwaUn74@*i^>O>{?6uhhSz9Ql25 zEKaJa{=P1!*sm*9sr*F5h~<||-r{pQ7SPLmwWUh%z5^r9TGTx!JmRlj|3xG`IMn&M zsW;lQZWN_mbN8bjZRbE>cQBr;D7e6QZ}6#L+><)j>-Qir*u@Uy((`+Z%MaE(T}8+5 zIG|auV!U$n1@J#O&lm9;rwOEFv4YGBMQMh^fxi(!T3MLg>>wV?OvJt!WLCsbE97A# z7WP1}(3q*WPQ*P{)Oo**)7tfFe#_adDC8T#<X#;=)Di1DDQE|#_0g_$pD*k0a^!QV zk#k+a$K*_Rc%YxuznhACmXHixC@4}k3u`KCik85m6H%IsE$%JHEGz1xW6>@?R;cAu zBOg>mhXe5m%!#8JBwudlqoN&qQtTRE8|PMx1yF5E{dm>}T!6`A<Hl=z04cDhR$$U8 zev1rnYG`e7WOMH=%F5M^M_2f9cA#)|CN`m~suaE9c-dEtIddU}zhsojDrb#HJh7+} znQ61qsAY9bV7NP+oK_1<IrdTXc>U24FEn^nuD!Usd^8%)Oh5a>yJv3~gyB%p#SeV* zEf36;S;`o<ne2bCu}7Xuv!sKuD@_WuEaETggA?R9NJ9;CY!32|3g|V2SET^|*f^wM zk#D6Hm}e=<NV`BgD;J{F3NSA{f;Ko6#d^IK>se2_ou?JG8msWSY^o_^w&$aA-g-L8 zPM>%<7uVVhf@Z4QYjFEI#>1xNVVHL0`(%fEonBRR6%tIAl!wFT4wH1PP`>BFZgnW) zbLjis*`PZ+x15}x;BZ{I*t{QE$(LaVfWFG$y*|Vktel@QShC1^;lk0Jc#-^5?Qebx zSs!%(j%A=`vw1)9`|UU6cqU>JVbjGB67t3K7cPpqqZi2Mq4jTmUvAUl5eW1r=wHb1 z5^@+phIideRz_sRfBU)kwZFBJ-~F}on}4Iho_C=6ZS)iLt(_enhXP5SHzciZ0f3~? zU<E9}>v_@NUK@rbmeFUU3DW$LSf;AbqkzrA+?hc6y2(UQ1+97ar9{cobAI;`x7tr{ zZtYGcU@m-Obo7@_(?l*VMk+A!V)Jj&X93G@@OX-AQJ%vin~GLQh$O%DTl|7mwjz>= zYpV(XOh0_lfZSmRV(Qs}9A&<LZQh|{42JA3m(8cAWtvf*Tw2mP{98lXtcD!tgSK?~ z_Wkqmap&m!{^pIc$?L!Vi<w|=$ukmRJs=@sr1^bx5PcmyFnv{l&m#n3T%47F6d0V4 z09D{M3Pp7AqnU2G<^!pooYGNsa*Sy}tn9fxHZ<N<FCCPHcTrZaa9d~8)1|>X<l5$U z(8tLQX<yfWbH6z3;`t+V3T#P17ef%I7H|iAGJ5m#t5J$xNSTr*Eu;7Jn3Qxz^Tth% zN@_F9o6l0J<4+7^65-<M8Lupp@^uOGCQCxK>%L0mDP&|_5#1Ao(WzCC^$^JV82YcE zWe>>OWi_;9Z2<!C3V{{;f|PY(eu2Y~2n&Mq?@f+8J|ZV;Ze*gy<n`%kzkF)8(32t^ z=)`6@`*5dLt1fCuB(k-Rv1qJ&ai+UVOkn5{o~98Ek{=@cAWIWI*<fNI#Nd<zoR0ur z6w5V(#frU`6(o>lz9O^uGbV=t)%By!%>^-~;*(h}BbS}lp#5Jta$ol{v(ovErzQl& z8PoJ|cn_+jOyT_sV-TVz+f1P^!ak*o2uk~>u@LXJ;ZruiOnara4P}t46^kAG9TSv7 zs06JX@GPl<&CZR;^ws^b;St)3<nBGgHqGvX0_s{_pC0swA3vo$UpC6k_X{KSL1A+} zS#q;sI{Aos!D6!9bEc-4H~pl#Fr5!NyJjC)Wu1xoG#rxviA*%h=qkh@5hNm7K_XUI zJ;A3_B$b14wGdv&;wdC^!*w$+^}D=sRfp*7kr!r*YFcAECo`1%NIV`LW1Qt9pDLP< z?H&{y4+lEFH95Zfg^xeAMouiNb9?e9Jd+{o#_(r$FU$f0bj^Q68uERBZZ9CfV`nLB zZ4%V*9v?se13;oeq>I?%fCi^FQxxn9oz*BX#lZq4<Lpm#+I@6f6+yRYBe|flb}AYx zS)Ha_ZX&<9Z<kH^qi$=64r|ijTbjRW7T`41AHcZ+j5@c&g!gf!Q84fAND82UP|VO2 zj9IjNxVn!mxXosnN@k(ulv{Vi3PDj`)`feV@!1Ju#A80OHGjdQu~R1Pena4=&!ow_ zyEPr10`O>S{s0{Xk0JsF6xR}A6Xp?T?7&tYqfRVBB96_D#uCPhmRUyNaK<ENu>3*v zXrI>q&{29w*~=JYO8H8dEe7QBJG!ll`*rX3btvMV_s2$3G5ZO<XZL=$`<n1?<1)4A zMnhIrcBCkqE5{wy-NJJ|L1s4mv^T<sxk>@+f35jrgjcRjpnpyKoXU<vxuJa|XDe<} z<1t!P_huEe!9ado+qrgc{W+smZZsU7c=8h;JuRDp-k9bO$X}rUPV_@>A?#CdMgyFI zL36+l_SP+*nWQ1_!|H8cLrNoQyRB&~eD1@S`Z{OQi-ODo`>C3H6j?Qe6s*>!cA%ik z$S-OmI=N$4k0v<R!N?pj&B+Y9xE?Zz#c)#9dHQx<uVM{H_5G8NMx3-tNh>JEWcq8J zFEZ*(^gLdUSh?sIluj-+G+pXDH1Du!_GYBDHDmK1NG0$P10Fm(JkXpKudskOYEcOE zf`{6n9s*b)Yq2(-%=9T_NJ%S|a#G>dTq-K$(XIg*6JD}7)iRr)-6HiOI(f`*Tb#Ow zWbvMng*`Q&nwwa%$m3r%DGTGGr*Ertz-rd4ux=a&E6tbCyU^dl2@WS<$D*V0Y~Biv zuz153Mexx8q_(5@z@XPSbzpK>Zn*=|tcxw}4bf#+IrN@K5+gZXU*^pIDUZp&zGqMt z8Mr$a7=|%4%_u|y2jDXUV|2vK*b7UH!fdQi%qMB^iqd`(9O?jFN(hCF)C4Q>7@jcl zN2b-vkVD<8qjd@;937g|8IxpocVbj-eW){wQYRcV-|zavIP-kfs_Rt!N?}%M7)C}0 zrj-`6kW|_HBLUZF*BkndCY5K<M}AW1xGyqm;M71}SCdEYMc;$H6&|Q_axA7!j@1AL zg#9%pNg@wu-SL-Z^z@usQ9BH)Z@1-gks*cYnt4Xvy%IoI6RJNsS*q-d#qL<`jq=Jg zbL@NHx=Y>tmJOM+|Dil(!&adOuk;w4dGY}Uyrve8LHms4pD}P@z!q`^C?r?$iQ}SE z?L=K_3!il>M(gBTBE7T%Da|3xChtf0EDh_mMO6o<{V$<H)O3jN?>c!qQs`LKUfu<H z)Jx63LvKglC2}xgPzfUz+k)O%f&uhdaXgmx#9&Z}|5A9ybb!IalNau^@f3Tcu&YDN zC}n<=&u0t@Gl+8JjD{`FLjT^3M(0S<dk&?|dV}WYC51-}O?0JvlX0a?G&(ev0y?s) zDmx;}g{>s*VW;S%soU3s<>3H%>?QA$auBwiwc#8A+*F$gpa(oz{w1B0AvMPgE2!6K zO;L}op%r$Nyiey~G(-0YFBN&q`rHd^!bhP`1^5aQWSjtwc_VO)S6`&_ao95gQ#8XQ zVH*k(;I@dReKOe71jwNeFxs#-Ob_K0A+2Z9YNcXMQ5z)<hLHXwZ$^&IWf_IOK_7gG zdDyJ)>>&F^bID{R-3E(n^a*but23*XLwa>g{qDW#uIlU*jzw9pwNJv?UON#1q=miG z+G;T;N?Cz~f3BqzpbRgrFf^QmgFL=%1FN#gw2n<aQSPM8ns3FrnOzhTV872Ls1=@~ z=kIMRs-!`fmf1OL&VNv}R1Uj0-KP^BlVARv;Ea#VL<&7lHJs8R;?0-HYd}XHcD@wX zDutM|@6{R_&X3};vDLwJ0@5Vxtff2n7B+_#q1Y&_emE8)Idcg&VhFwWO}+h$j8e;t z==s5lLOy0z+5<9_8t0uV3WYKGvytNHE;#0@<4BSsXA`}eG&*%K;1Lg4BaVnVBio4b z`(}qavN|WFeLRpWj~DFyyOTX$ZES}*zB4TNOte<XqA^~K21magN_s%!s^%a%js6>v z1&w!j+R=dl?P4ea8x}apBH0zjGn_&IZXnuAXJs+7aBK~jdf~XaqiTpCA1jv^IWyTu zy^YWHjCS<jCU{*8<yFcAQX8ra%hAO;FLWuQ$ZWOwJOfi@8S)zs2ST06a9FMkJNs;X zqPJtdFe3PjO0lz#0tyq&Ai73sh!jw0#d}wfe%&P0mI@dUJCM>&lSDu0U`Gjc61AlG zrm=|H11VXkm-qSQ>ZIRNB~b#ztZt4m+NjCjf&qUduHU!kEr<ErV+OC6zhh-WS=n^c zSxc!mo$4Gf+NwBT`E@gb$}kt=!Bzm5K1<63!a4v*2Pn*Alfd~J77)%JBo{5>Gg%m( zuqNYwv~WP7o`^2=CrAAmt7$+zI=ZEw84Ky^e7N8o4Y}OwXY<L(a>s&OuCDSnS0b+& z&E`5d{gT64+%<C973?b5J=x;}l0QhGr-=`dUmy%1C#{r6<DfvdmO^nN!<jGeY(Qhl z1zjFp2WjqbD7EebLF-U3q?`A{P6i_4=rQ7ba5mcveMp%H&icTEi`c0bqzSN&9Ail; zLTUwFKx59DxiET6P01$&y{*%#QhN^gEFF9SEM`=i%X}1KWDL5-q+ly)1qXckOQOg_ zGNPm@5Kn7fgZ?9>GD&lpQEx!>?b3KU_pbyW6b+2YQPC^t4EkhnY-%;pp3T&(I&;`L zJEjt1fi8g?OJ~a^Vcu#?s;2JG0!IS)@NM!C0lzIUwe8N@@(nH3v?3=s^fqNb>M|+F z;aHVA@qo*#C=T|&Ge?QFi=zcn6PrhWTukgP^|K}W<mZ#g+oEcd%cNT>#p3ThR+=bw zx;s}_BVAaIp6g9C2fO4vT!77hp@1oYV}|`D@Dm2`$}M@qS)?MG8+QAgf&O#agT{4Z z#~%GI#dyLk$`lm&4t7rPI`W5w>v#K~XP&-{I{hoj!V$L&+l8m8gL%_OU=~A|D4Kyq z8aT;-4^|eW{56yZ;6b9!_(d?>Eb}!vso`Q)(n6awG`W|ZbPB!6G{;oMu7d0=Oq;I1 zI1-A?C1j*|vW!aJ@(;^?!y8<s0iTH(*9vbEaMqlKtmLyWcM{+<A|aO|FT}(apdsW! zRJbYjbD(p)(<#M5s|7uKw=cCdDymg0`Bbm<+8l`t8$BJBA%%ncixZ07yR39P|CnWX zKS~!99l>+=t!k1%_UuH>=hcVh1Ah~G$YhwC*tl2e&g}2$Er0~<kSBMM&%(@+FmXFE zuf@Gsv|`9JI0cj@j#=iz-H_W1q04*dK0}IOtp_b^UA`%I=mQZhbIO4B|3imdu&yp% z{DAPOP5IP>RyDCX7Z!`17X=v04bgTFS%GLvz+7LrF^Uv#v6}=%?s;?{f<tSg<eXY} z&bW^Hb#%}C;aTzDgpG7uHh)O?nz`hMzILK4wu|45ui$&J>v+xhs*gf^jZP|T4$qX` zW}dd+6kXR>V6EpH^!W=oy81_{azK|enb?ft)v>iB*}IuJ0dx?=D)9!G5#v8dvtjP_ zIDETwu-GI08R0|<{?|op5Z@wxf;iL-vEm8zEP4S>`u><SlOyEq5EWmhtke>9f%;?W zx=fHQ$WF+flZ*0?(@J`S{vy-M{GmdvSXF#NnNhx3RaL#H?pJ?ZGo$%|wyJ%<_E)-# z`jGxH*2tb@A7S6aKF9vV&}rB-e8})!qt$rG_+jJUnH;7=rYB54F_+9o%%3*@jEi%3 zav$LS*^;sRzU5!6W$XR$?*rC9x9M!7wmWUtY`?K*?8|oeg^<J}@Y&=0%eU{>cmIOW zQ}8>YTmPCbU2no_`pa-vAxQy0{-4rsiU>F_j_U*p!(PL;2qpXirGxke{DS2{;x_m! zA`9Une@-N!thUQZ^h-j7PXs<m_;kT11RoWAQt(N@CkUS~e4NBz!8m_Kq~Tr2^N0lb z6~aQDB|6AWqKoP$oaEbyMRJ``QwE|!ey#bhWE92=H~*P@C&7}>5WLJmIH8@J>Vh_K z*0EhWsUD(4zKgJt4>f;4^$~8Fh2Y4qLfZktL9P&Lp!XuOz^@^G4!r%G7$D*7A@DPT zenx1~n~5PbM0n7@!Wc?o0$B+ivNwMP&uz#?tdUKEA@zh2{R2^fcQsIU!81L29x}B_ z=wD7K08CkmhG_C2@clF3`QhfTu^d5$3HZd(Pl!?UQ$m3D9yAJ{UlCcT+tC!^M!x_( zfX>L5uQ!PmnFF%$AIZFuCb4FA{#FSRJ%gTvHA{lL45#@C;*G5mW+fd6qxr_)y#(<u zEb-%i+PN{kRofu?3I6*G#WzdD3i&cZJV89M4=e%wJ**KE1TT$;d%@O$fBOOyK`Dd% zTLM<bShz!j-|2!=!hNu(y$|+b-ox9!&orCxoQIS7`2GN#A6|p|w(k?LCj0&7_nO~r zey902&2KmVx_Rw;y>5I?;x+#oM4WFB3(K`S&yRnK(9MiD=(&~UM$Xv?*H^dr%L~g5 zGPw3>1&C^WT{z(M`5HvMK~#moE6`_kwUTI{c!OWvN;Js0;1hg_1{LQwu2N=>s8k!K zD!;l~*(S}^%65>dHpuGyMZTdCpi*7iXvn57ULi>mx@q_}T|RvGijG4S7Y|jTas__D z2G4{BF}=K5zXF+$G@vZrpkfWKx{SwbSgO@_11G=1H(r=-$U-Yu!bn@Kt=AfKZQ0kL zg7w+m%h1?)d6{oaPs6SLx|45|aII9Y^V_Y~Kv5WOwXgU_8b43tmM=^%^B|4OYkWgB zy}Sx{c>GL-YXw{@tU6cg^|}+J)zDPe8^r8#gBZt+eQ@m@Z+LLcGrsmImRQFvJ|!m( z)ax5-^#+R7>unC|{08tNRO*R_JkHnnhAg-SJTcYj<pv{E8VaET8h}?;6AfAtH%Nlt z*k%q?c>EBv>uiyazoA`iy&;eK;9-@&%wLAFw$t(;NN8qxb=tW$TVEFHzB=FNpIe4! zPAr!;DTxLXZz!v=E8wamsVm@8s0aWTp|aK>4{SBiIt<WYqKSqw&SPqIz?O_S08N12 z{?$5evN|YHtBPMy>WFHs67}5xjyirTkTk7cPz*?@0_&@Aid$I2N|l67II%(+yc3Ar zp%PRptPQq?(7w*=jR3p_FW+G8=9hFB|3c-eRzpxVP?1yc)uRAneSDiFYmJSy!9;_N z0}DLg&{xMWXHWqRHCTK#3s<b9F9USMN<!g52J1k0!%$u2FR$_q1BflrFviE{m$zjb zgY`f|yD3~uG)(dFndR}h)=j4m?wh3h=J+;YtS&5X8;zjCwMxSf!zKsNs%-1=7Yknv zWC2}J!Rh5~Y=<DO%4N_n49iA+0=%|U2Rz{C_!Y2Z{Im|73<LecaQ9Yay^adEA?*=B z$khhXdj*a$NqFGm1pM5!Hox333KhQA&;k6kFz{-HU;U)bhG2SNA}W;%mVg<ap|x$Z zBGz~;=JW%+Ex;oeOEj$UZG=l3$QzgT_%?-0M|@j`OJ{srj!Rd3o5rO(zRlp$6W><g z(i`7a;xZNoX|&|upjScC0-tQ4z1Uh3jrdIuEjJ$C)_Rz@>0#)`!_%#Ye4J?LW3S66 zFm<iPD(3TM{(Qh64|Mr~KU@mHA1(vHA1;HyA1*_{A1+1U50_!!50??(50_Ek50}X} z-z^zZD$cJqY^yvtJ+z83u?A%$i7}gwH&U@i3hc21Oko%h`<ezRtd#`p*#EaJ0FH@9 zW=F-_I=Y4t*XW3D%Mn*w2B(O%n7v6nuh%9Q=kpTfdFZXxPwjWz1bCm<q!!;NEYC^7 zYp_=+ZRZe&c`blEfPvS1XBCWPt(0gK<4J3GqEY(yngX!bp?N2$h_D3tBtMK@0*H3> z^5tP+7+laY1U~S(5Rpm<ab}Qk8GM(eVTEQgaHm13*|vtLG}P7D=H;Zo^WB%B&#qgW z@yS+y4O*z|wB{SD*r)W*EMJxJa^87W7Lq&a73^tM;Iv_Upg<T}ZP1|YTg??L3&mPd zNmgCm5E^m_s^IKo)io#7SL@&(Uj5D*kOux=7+Nbi1sGun_=G|l1^Ro9L4XkKl4)=v zpbR+x4kE~_D1jc=aJ0fiQ1IRMq`w^tz|y@V3mzzthuX3bx<O1mHy$-q;7oXaNEpV0 zVlDRWJd>DdNxDJIFDLnK2<Vu4vUL+Wy`hQ*9fYe<cyuFoX({n{k+&+ewFRC((dgS5 zO_F|FU8^|3c{R&BD((mWk;GCQYFMkw(@uz~e0M#$oknJ`+kso2&N`=Wc?v&^c#U^& zzW3@ks_{lSc5{PQ4>%Zabj2<M{4mBYgQdS7ZJ^L(BMl_hB$hFZLoLa#L4sCkv5w&^ zfTbnD@>&cH#kW-uYcTpH<p1A6dib>f_Wy!nEN|?`x`mR{cN1QG^){Wu;DF1q9W{)= zRaeZ1b%y2A=H`Y7MnMEz%j_XL0Sh-J8wIfPvDdjj4&5QMsZoSB6Y)kT6q8trH4r!a zzzJ~MreZ3N0o|AcG4G0Bf&bG4RHmVVaAhWb1xa^ip(5Rx!)=D)(L8R0D+{;{t}Nm< zxUv+#3f`~^wPmP5Y=>GseiagYTw8%!>)vkM4&i%ya675C7q^pY`*1s{wjYmKgJ!FE zOk7#RW8%sIJSMKJ<2EBu*}!dZWfQl-l`Y%`R}M;a4MOdZL>I0dmgvH@BNAP>c2uGZ z*N#ba;o5PDE?hey(S>U#LB`!T6nILyYV^Z{+gjBDsGi0`$ITiQxH<!|7OJ?-*;W;| zIVZKj4{)3F@N&<MUN1;j(i<0BRs6>7ttxJQ2lUg^>hjK36*su6RmBbNhPJ&o`nyNE zlKQ*Us^aGNwyL=Keeh;)tG_q2s<^@ZttxKt0JQD9(cgp8mDJxuttxK*aI1=&KLT&| zwfcLsRmBZ1x2m|oWAQ6$DYI?R&MPvKs==fQVp+WsYbZ7wRABnzPC!o(FaiA2Sx6_* zn;_P;rhKQi38r$zj)*9(T-7L$s#UYlQcY3$4Al=HRKs0m<ugR9{%Jg!9o!C}M`mCi z@W?X0-Wc2t<Lgf;h}I2au<qOz@vYA&?j?|{|B>~1sU<wXe^+%1q>FwEH6Luq9*4+0 zcvZeZ6N7_ND)2jB)5J8sNB&XsW90kLH=BuO0`^c^*V}L%X<b7TC2<<aK{6%O-wU5s z9d^0ks#S+`3B+gHb&41xUToK81Z*d?>vC9==xx{Oo9=7LBk11teI1dbegwa3J4u`( zZii7169-{de->u#VPYM2nRr-}NyEQRSgXLb4*2kJ9&nR5BegvNS98$vFx)u-<t7n_ zJEKxP3I8{kf3N2b*iYQ)xdd;H!{}@9Hct#dZ)>pDwn-cZ%EqBS5A|jEMadA*xkelX zD$hY}7VaK|+A+9y8lIhmx6exDX}G@$J!N2h7E@i8`hUHC60hp%^+$Yl%S9OFv?LEa zHV-mN!lw&rXW`!#&~*;Vlfc<wi8d_T^HQr4w9JB(|2-+)Dt|2D|5FX%vAW^^MuPt( zL6U1g$sythlo#RpB+z}3=miS?|7q&h5s$X@xps>-Zyq@gV_yKtV7hoo2WKRCo`>%Z zxU-{Co|povk4qYTecfQpsQ@Wh)@N>cdk(nWf>AC&FQ=tmS}l%2ON`qS(7rX|IjCdY zord=@RTx8afawV+cY&SYwl~u?aZ3+aJFkrhOxtfMyLDV1s5%dy!xD}Uz&9TCw{lsN zMjRk!pu{>XLtofV&jLMV*bPhp_3J?KVYogE^(1_7Uptac0p&x$!T-xUBzPeBgL9Ob zR_#^at8k5A35J3dK{@y?75qPHG;kh7N9bW~&;V=ZCRi=xV5QIstLk>}Voo@3=7zIP zJggc9V9zE5Cp*G`!YJ&H#lasWfgkK^GGHA!*kvvdML37w37mETntK4T{oo%4i5l=U z413U{-~q>hyGg*vF7UE5fTKB(^#W*O34BH!R;+gudx*WT7WxU|lZb*7#BxL<2Eq9U rq+-sUIGj!oq;XlxrgzGY_I0LRX4_@1UFO?mp<NawIlzfiLjS)2NgHpi literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Fraktur-Regular.woff b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Fraktur-Regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..acab069f90b6fe6301a004e6f8beaf6a0db48bce GIT binary patch literal 13208 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 L0O<Q0fbf3+nYBJ! literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Fraktur-Regular.woff2 b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Fraktur-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..735f6948d63c8cc7f8233735bb9c8d843c83d804 GIT binary patch literal 11316 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Bold.ttf b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..4060e627dc341c1854260cbc3f7386e222a4d297 GIT binary patch literal 51336 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 Y{My=5Zj3WbM|mX<0#Lulu=APmKiR?A3IG5A literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Bold.woff b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Bold.woff new file mode 100644 index 0000000000000000000000000000000000000000..f38136ac1cc2dcdc9d9b10b8521487468b1f768c GIT binary patch literal 29912 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 bnfbLfgSm6Day;iB;wah|00962|Nj6Fv8wea literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Bold.woff2 b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Bold.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..ab2ad21da6fbe6c171bb869240954d0ead8f68fd GIT binary patch literal 25324 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 PaX<W`)*!_C5C8xGh1v`w literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-BoldItalic.ttf b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-BoldItalic.ttf new file mode 100644 index 0000000000000000000000000000000000000000..dc007977ee709a236d9e82719cf7d4e5577a81b9 GIT binary patch literal 32968 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-BoldItalic.woff b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-BoldItalic.woff new file mode 100644 index 0000000000000000000000000000000000000000..67807b0bd4f867853271f5917fb3adf377f93f53 GIT binary patch literal 19412 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-BoldItalic.woff2 b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-BoldItalic.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..5931794de4a2a485fa70099bf2659b145976d043 GIT binary patch literal 16780 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Italic.ttf b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Italic.ttf new file mode 100644 index 0000000000000000000000000000000000000000..0e9b0f354ad460202bba554359f5adcc8da666b7 GIT binary patch literal 33580 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Italic.woff b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Italic.woff new file mode 100644 index 0000000000000000000000000000000000000000..6f43b594b6c1d863a0e3f93b001f8dd503316464 GIT binary patch literal 19676 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Italic.woff2 b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Italic.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..b50920e138807f385d0b0359f4f0f09891f18406 GIT binary patch literal 16988 zcmV(>K-j-`Pew8T0RR91076^<4gdfE0E4su073x(0RR9100000000000000000000 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Regular.ttf b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..dd45e1ed2e18b32c516d9b481ebed3cb8bffa711 GIT binary patch literal 53580 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Regular.woff b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..21f5812968c42392a3eaea9b0c6320870b6b8b38 GIT binary patch literal 30772 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�q{iqW@P3>Beq0%EJjvF(<Oy+|ZOV_T% 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Regular.woff2 b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Main-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..eb24a7ba282b03d830fa6c63ee897d92a5188736 GIT binary patch literal 26272 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�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 bkH82T%!~T~dOL3iZSfI!+IWoKhyte*`46Vs literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Math-BoldItalic.ttf b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Math-BoldItalic.ttf new file mode 100644 index 0000000000000000000000000000000000000000..728ce7a1e2cb689df32c3a6c26e1bd072dcf2acb GIT binary patch literal 31196 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 T)YS6}E-Q5R&CfXgJ?`xQe`ny2 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Math-BoldItalic.woff b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Math-BoldItalic.woff new file mode 100644 index 0000000000000000000000000000000000000000..0ae390d74c9f665cf8b1e5ea5483395da7513444 GIT binary patch literal 18668 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�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 J00IC101u*7EU^Fp literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Math-BoldItalic.woff2 b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Math-BoldItalic.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..29657023adc09956249f6295746c8ce4469b50d3 GIT binary patch literal 16400 zcmV+rK<~eIPew8T0RR9106-7`4gdfE0D43K06(+<0RR9100000000000000000000 z00006U;u$k2x<wO3=s$lfxcLQl~@5b0we>2I17PZ00bZfi3|sWeGGvz8}4HT<CrC| zaR9K%d)L{47&Z<VF2mAM2y7gHh|FIQ{C`faWDGb3e$LE-O@<Mp4Q4_{V632U7hjkf z`~D<@XH(G0Mft`sKRRqSn-_}eeN0Xh>sSn}h_&&m_g4$s+7>x}(e0b|zhiFmih3+Y z_JHa$ux;c|a`FyO&iVK5;5haj2M0Us5CRDY31pB2cF2N2#x@CA?hH+IC$1T5oL#Oi zTm8l{f35!3j;S46ZTBB`{Z8%g_kYV-Npt*qbNf{)Q`HU6L<5cyhmJv2>TM?E4I!B; zTrs$#{npsIL(Zb)U1m1L)1HRv;hxQZYYB2DMJ06qtE=2;?F$=%RNirU)ujURtb<V0 z>7>?5s{7KnM;^!<)4(Fm5+BJ{pbl7Y+ig#pY8WtNs@R;Tv}Vb2zWA1jQzm*#o`3DI zY!Lj&klRuUKmwu&j_kk{H`eCp-_vbX8mEgy4^o9{Y;D`8bQQe5ncy0wN9<o)%0-p1 z0;Bx!J#Byt8`6;x^n;RbeMRk}R#%PI%=5OJPnU22`UL9kL+aUoOP6~={Y56-M@X<3 z(Yi*qdShqou}d#DMHq_0?d3EGxG_FVLkaw!&axdT<RDkq-McE-AC<wPPSePL#+K%f z<b58k_vF!`Y%j=*_Mr}ac96jKf#W?60F)^@;Fey`Rhza3D(Vzn7x+&nv;Y0OOOwtT ztnM<gPN9e&Xfh#jNP*H!97}!t#z_48^U^1LexN9-Tx43Mz;L#kcQw5)ibm0n2@JEM z`S5G5o}_!IB%L;To7mg@qo0pXG_j?li6ug@)GwkIDk%~|;<3!C0+P#YC=x-opXY32 zR>SLFsawuhEI@!jD6#EQ9wi)K3zoxV;?`!a^soM1A0#+O2q9KiRK~gx40mr#h`^il zZV<HPw!vpw2fI4>IM5HcJKuSG5?>jK5AE+syVBx&R<)q*ZxDgS_aq3?!Y?rd;$kJ} zznvM-#jF)AbEqu~X<-Qmg2H62$`k9B)$6!d`Tf6NKjrJ0h5H=%>B@|McT8H*%y`vb z(%rk>@RCE*6N6rnrAbrV{r!LUjAD%&0?-v-O(btVFYk|g>A9-v%&i0jKer!j?XGS& z<+bDDY`-WK+F91<?%x<)OEwUy4}AqzuOPwAD$%=Nfq4hCyu>kb{WD=t*O*|E9?6lh zmQXXHp!8Y@NHBUw0BY;l5r$Z?jtJ14BAd4+e3v8<qc8Ag*B8?S33KlR<QZXhQ$xn} zNeg#6jGnsj1KT^Y6>LqOKEP;%_?Ao?k!C_D5stN`Qb#dilpsL~Lt7xl?!e&&4S2=E zR{2+JNlWaH`b0~xsXo`8-vLLO+@wrgzj0rcEa>Pjcu^EFD>bx0qSJ`!4s=W)SB7DX zyeW+chsOzOWsuXMyNTP2sw-^>J9!)tN(MreuiV;}0bNt7IZIc#j3n1`#guN<CMiLv zIzn^<Nm0ByGJ!tG@YH}Ty6TZ-o|t)K?P{(%qJB4!L|9luj|S|vjUDjd5w80zG6&Z6 z+=;CHKQS4_G38|B?GU$2+R-3t74+Q&M1xPlq!l@`KsGxq1c#eokIyzQAY|}~@Ni7< zeMQI`II;oIBLy5?F{IlY@5)zIxUtu)j)RuHEWy5iZ3#rUm4vc+i)BH`JW7T~^s}J_ zmwH`7%D@a!dqAJ(JR%;nd#X+ff1WgrX$`8{5&>A&>Xg4INZAV3h}GAY<`bg8ox+~@ zEJqxB2|yuNW{M9&^Gdu^OA0)0gm8&_rxmUklFo)kf)TlsEy77;Lqu5J3xzT2=~ME@ za^gr%^4no`_dRXwz8N{T7zGk__bri%5HwFB)V2_IUxXhTJ|DrhfQVmM{8&nc`@9M2 zXW;`Y>&Y(L$PqX$=~u5($l+$x_;fizt0k1976`f_JpvLcZ9z((ubTuD1zh$5Mds0` zz&!azxO&7(+3ute6E`Nj_ec=&1{1U*o(*p996V7+3I&pM9Hm+ZM5e<;t|LUDGl)`W z5|xe;way|M9U~b!dwMn`4h@Oc)x9972tJC&*aY9UL5<3vTYEF-@6WWD;D@_Uf_DBs z#D|;c(4t2%pcqk1C}xyQ6bnigiWNO`fSS0<y++C^x-t%p-OxfdVovJL=Kynqxq~)_ z1~9B1)j-mmRQTE@(V#$_>@6sQ>5_QONDm4#ZS})jb=GnDsb<++9`MP5Y5ABCCsK6# z1OcgPe*jTu&{d@OP3B5o+H(0WaRW7mZg_-({3&wupt@5#7L1uiz|q?Lg($F4&rmf* z$WS!B%X!n#M3@kc4ExS+zAZ>;>*i}1Sp-59rFWX)PddDH;Yom8c8+t70d+3;Or*FI z)w110%}-KbC%4S+y9uWZomHd4JiD)+af=)x8zy=(h<t*~Ta2v7Hm5oa#zx3wY7S$V zP6jbD-g2jAlOWY7%OK4eA%}yF%jHnpnMSlIf=d8nP;Qv%iOj_n8QB=!IieDbx{OXs z@01r4j%kLOg(vl#XR8vI964)HKsiJ+RVqWRVu%}){nUjDwOC`mBj7oVfoasu<1HUy zSTL(5eIjaT)IV++pcKP~ai_Cf+moRVeGpV=8nU&NVax1jK&@4Aq|HufLjRF>%+`qq zmZ*8+O%8%Zp*R`>iz92bPPMa`3&xBf%8CvUVcQ{1?HmCwk#{g3!1tVj8kNlHDUYCV zCf$!chN=Cl7$!5g27GqiTIP&Rn~YVsBsv``>Y&5RP2<d1xg?x2eWAr{N&d?gDs=0{ zJmwxuPDO7e3Iv8}deEwh^1^SdMsvx&pu!*<8fvlz#7?t%1apa_#SB4_M#4a~9Y7=v zW=fW*>xNK$2M`Sg*GAhZ2!et{QvfwD0HP(pY?U`~n}OR6++i?h=qBvW(Wt8fh;D<K zmZjW1L#Vd{h(3d(A0D9?AQUqR#VkTGn^4Rl6mtp1JVNjJwrR*4$YZece!{oq5dJyr z{q-M#*NANz$ZA1>SXe-#52$2u#<GM(S#m5E>kmt|A1y7QWd-)-cPnK@ma;NS8P8HC zHlbAow7S5)rnEBFW*O_UjP+T@hD~T=0c|R9ZnmA|9&rCZfhtcjU?kjR&?$Az&4KI_ zSnmnMm{_!G_h+6R0wTPR5NfxX2gN>xR`3V}X}clF^apfh;T(gnCpvu?0v`_i$`RIJ z+Ei<p)QQ9W=7ZT`%2Z!eKmv5?i210)=H&4a3c$RjujWKk*S{PF16R7k$s%S|Hd$=K zNxLE@$`cTknUa~^ZA)E6litBLiNq_iYXoUYx~{!q(VEs+9%+;0l#(W4Q?aB$;N=wz zI2SZfWK^6dDhWlJ16}E+W*^0tNlcY?tF<lMI)fm_dfg(6T^Mwc5pD&)TrR*Zt$9&; zKE|iWXojR%C$v|4iMn*GpDYpz^9^1}p*Nq)G^n|eX|rtqd7nbdoH-d~mDt}0Cg89` z4ij}vqge=IP*NPFH%GHHSI(6SWo|Nw_f$@*d0j{m=;sx%L=$jiE&*g6L9qhnOSSxU z3VT=06B^tgRuajkd4z|NH#IlWmNSkph(f^4GIOxdCQ5yUk0`thNUp(&>@jh**$?k( zrfOsK`lg4QEV~?;Acltu=zD_V2Gcbn0mUMMVXrW?ONwM8CNz}N%W`~)Fa2-mI?xqH z!=N}Tl>ha&5U`|`{o@E=_R_W<Fyfb^sQ<=@C!0{>wIpVYF@9<u*$x$O&n6%%$8j-^ zST>)~n#%%{z+rHfnV>?n^r`pF48%*NN(_bN4xTXWen6;A%fKBKh1AkiwDiLZ5&f>9 zg6qVZ=o(X4(&5o8S<lWfxu(8I1mP(WhX{rjftLe<7II3Cz#>8@M0zKaYHDqr?5a=E zEK_S6$4%#%s)VqJaa^@Wc2!dE(cH(>hnNPUfp4xOAMInBCg>BMxNJH>Vx6eEDN|;k zWsNxONPv6#KWMji)PKrkuxR;KDvp3|cq2+8OEhoN0yNqtEY33b$_ElD0u4qA8=%$w zrdX|JEL;}($`?0GP9_Y4R3IJ4_z#+i!Z&M|Cbq^qQ3x!+n}|Nqk6ZrHqX!R`N~Ii4 zD7-q8SgYl}cH)xD{2a1TONpR}Mqp5s^kiCvHD!ZaZO|>_#-ti&1=q5@&qQ&tkV<FV zLmiesP3-K*?NOpv6U1saenDP{cySc|1_2c7VyGM-8l&hrbLv0UVJwF$s+5=q`lCC6 zJ|PVfGSYFS&zqbThIzgxI5zutpW=Gw+Fl;+O8O^Gsl^dZ^C$AQiZ|MX=NlHiOc5&i zjprwV2w69vWDy_bF|on8QqJ7L-jT#BM*F!`%VogFjX0@Jp+s7;Mp?9y3eOzyC0X1^ z1pQ!QNf?_vQ)pRc(De7ZfSTk1>xIl?8Z4h|EbuVLwU+pt@owAm0E^WOR5=hOs!SOS zzo8!zCdTiapnT20---od64lN*=@I5;d^zd~UOhY51+b^!Y4-`-{PgMza2~SCY|?}- ziWU^4tah0Mo|cbXAB;O~U~nrmvYx_@S~m}jRc*f5oo*DLdJ%FCmh2w{u|@%=#s4LH zuz-N8_2!GfNKk?7&sfh5&W6yEVtNgvS5W`T_^ekX-cR+KtghXko+AH|f3eI(a$I4V z-$?PV=3h6i(*|nqd5=Qs328S_{l>p?b(wGOGEKf9drHgyIC99<0tT*Dd=xMLMALs4 zz~ZI|RQt*5Dw(pa6)s1w*#dg<{{j$IV{8_*zaddF@mwSDtR$a5!siYB!5jaZ_!2+l z!GLS2*Rhz}ED=hmEUj$0f%`%wFW>3wl5ON@gn+Z$C|{wi;Xe1gFebxk3{!{ICZ}x5 zy6}uB%p!i68ptk%+5c|NWSubWzH?q<ZO!U}K~X!3a;6~ehb4t-!|k>!Ur;VE7Fz9b zU#Y}Tf{TQ~*=rojW{X*8c9z>Wh+uZP19(*Xk5I%S6VFfB$SXr5><lDlVMr0~ZX`E# zZi7)tN!PnUFW-kpI2oSAXW7_0>|bN|he758U|MC1>v`4Kuj+J5F5e=O??MH`ZIJS3 zP`wEK?CCHbTC%q?E3Z+e+Inww88OH?d&7t^n{C?>;U0gb9bD`y<0~?sC`A51fIQuP zjpSp0f+q@#eWQEcr8pkTz-BwjdC@XgWwYRfN`t%1My+#D6v3pjAbl2=FUT3K^~_X; z-)IRK3&;npTt)lwr~Mkw83e=JpAF&P2&i(%_q{I-9wNP6x^Hm_T*K$A`&v`qr72NI zAT#W*r374hzJySJ=EeRmYcp?S<Fb_ve&_x@`O<&+<)Od^rq~TQ$B``v3_th%)j;j~ zm~=9h-fra0d4@B^QMyhyC{Y}6mDEoi|4?}}>Lp8c=C<hiVLn64Jk<fX9(K8P(p4NP zZcCQq@1XxB2G@yL2#*g>1gpvw7P9iNfD!OvU_WbrzG-%o9(0`_u3WDGFa2TGgpJ(A z<r6njBc1Xs;(Uh^6x)X*N1RBaQgS}|`3{R86zG*KxOCz{do4>$gPglL(;}e=q)r5p z$C&ZESV}y}fXdDSBS$T<P~+E_`f)iY>q#l4Uo6w|`O-S#&P!yA!Xtd`P$;ZwWnf_d zCPTWG$P9uqtUnC)sO^n~XLTIotH33S6oNm{sx1*t3HGAV<Ax;oo50jyGv)TzmYn@V zc8h+oFeS+|05BCsp^v~$&l%YFE0XjwuxD8S5>|Adx}?W8^PrScYg!g`C5NLJZnUXz zjkx(TKcyL9VuAB0#5mUJ^cW=&%2B)4JHSt#7w<4FGE9XwW1e2l#4$Qi<-9n(Ndbq> zDA1>pu#v21<J1%-E_>wC_<6Z)9dssviDd!Plha?NOTdBUG$;%&LOS#8SJ8^C5^_&O zZFfZ+rPymKad?K45-M|L>?8*G%?14%aRexz3Xef%&~Qze=aUy2x26^Fd7#`-@81lw ztb&CD#SN~Qv*+|TZDJlv{mdJ1`Z8c`e61a894SihH5^)_htbfyD|5`boYb!7d5Pq! zR8ms_BZ(+_IO|0h8hXSu!De&hVR?+DHYGrL-`$e!iLPP+yzCnT*EQIw``4Im5yIfo zHwm_9N(T2vHL!fcYXwbK=0g{+KuaGHa7D=Rt&>ouMP|TMt+SDjx^u%D;Rd=Jm#hm} z9Wkw}<4w!_DTn$Ikm2^1=n3pLLy%fyWk&mC4Rsr*wedJ*a*eqnZF!5cT+QXIuB=Aq z^nqRh;hf5^;-J|F4iAO;Fz5p{&X1ejZHCObnYNyp;x0tFGFc@P^-pPuARS#X41}la z#yzkwF1#5ge%dZk75)UGbA#BubbLSl=PDr;*tRIjd+`RioSg)Up-}G5_9TUx0;g>? zpMi;hvTL*62<32`S2^s&Qw-DoXfIQy)EdRo`Iwk1LI3r5*!&BPoM5l4OJgL{u+ItB zmksA<!UAx#k>dF5DI_yKMF0T%norSxNWfvVj`HgSuuLfgVuB4agXWSf%fQyA<cHP4 z6&^7!h!4Vy7d{R+)^g^0UV~C-x23c#?|HiE0QQ9`-HkED&|)QHn5*$ARuuY>6PS&@ zYy`e31PHvlZF#G$W!A(?)`>qRFO}PE5OZcDIhQn!FDOp-a}^hXqpRj!&J>a5XlN2n z(!Mk8&{Vd!&@$hm3d65bph~~cv4oQ~Z^RwlU9C|7dr!n&I)@79of-(sss6QKrCv7O zxpQ@TB0lge<XL={@P<wy*QV+Y_e^mu{pXV+`9=Oq7aO*U(`wWFiq@9kG>u1>bhD%x zCRsyN+PlK=A{E&666s=KU8n)e%ys<m!s$F$#wr8}%&c#<t_Bid0j_&RQ<;&}8Q0ho zdwX$Fd0Q)M(KhfBOkEt8bWNou%j_`E>M2HF5cvJ5=lCVZcd75wD7?DyNU~k{!xe3_ z_tnCtqhWQMmiMS2C^sy-OJ@Y}P?5BBJpuX_e0w4t*tTVZICA{oTg8MjI|2ReT<@7s zbe^vKsJiSluHja24Zox_G_e<m7$8`hHI)}a6%rd>!Vd(NBFrsc6($Tp8sF4GPB*I3 z-Eu@eJc4}B>#{hqAS=mMGK@-w6FQUx@f3%SpLFYMwfyk@qxEV$psgl>mhTC$snT%g z!aD2L8J~qt^f)l5W}My7{l548+*C1aZlp`^Cor15-g5Prw%n0OS&R;yno~ow0gNay z?SR5dGgdLRJzO>oTJtu&2voqcAcdW`1an$ylZzD*N@NCwfmp}e8VyP$IwZPZt*-gL zhibS@3G3AknSH<o5FT5#42et8QR>pHW?no!$pSw_E4<Dv>2yJQ0lDRgTb(#-t^#Ia zE>Ibs7ZwbJr9IW1RRfC^EQFfVvRg5+o7PM#nuosWc1Ke-jzFWWT8p$eCQBQ;CD9Tl zhT?vr81M8BT{U(Zww$@4*RRj$AnMOFk)9F?-;_TzMP~xGX=9A>3mCglYeWj$WsuiU zNG-9RE7zF$1gUDU9%95iXmhMHl@$ekaWa(EGKuE+@S9vMRJ(ZHL<5UN<H}eS3CoxJ zC$0w~vur)HrKYTxszPfu$fB^w;7qt{(?DSTBj+zuEXVT@z^Qiv(~S8Qpde?ZVX+5A zi@q6`ll4O9N?B7{JS)A96<%W>qzG&ILeSPQcPQVt0G1u<%snZ#+RfxNC5_a#ZkrUB z%?xOP5$)#JjE#`_iBGGZWsf{#N)0rHCx90dMT`2FjYEd<LB@3&h#t*ortN7RxeBc~ z=b?v$!3r7$FYO{wCT{U2hDBAT3s1W51tgaihZTLu%G8@;ZcAnQ9%YYq)*fvcHU)>R zu`Uu&rm;daO<HHFWtwn#)o|}YTWDrvp0jBBzQ|*h1pAIkL2`vF4j?ZwnIh%qU7_NB zCs@0o#S$0DMkr%aPi&VG@IE~ae3>4$z)8~j6LM<DP|9&(c8ZQ&(Izl>H?v#E)#I{z zs5<7Er7N#oLZg(I=Xsvd{m&%$&nUn|G5`w|G}#2pd3YQrG0>-^=R`JY_&%-pu#x}A zh+YjFRJZnGiqn4EeRcI}#b#10@;4T|%AAZz?0G-F5A1S+O>zHZPml=&W-X_1B<0!^ zE#AsNMnGUuEYBC_IaayCi>ZYCBwD%jolp!Rg(>{_6!PS|&gL$Hu1JOdY#u=7tr#H) z3NA(xs0}Py(t71K=N1WImneZ{RuMd94IX7EMK^wVD@88x-?0|n50D#-VqX9iqQ#l! zDa5$E{<}U)kX!$>6|2LCIRI*w-N88K_7c{cWw#l}dkq(^L_iq5U*<-{)2~WgILP7K z_&R+ek5G)t)*r%!8ZKHQk(kjdl~YpFHQcYjtIXA&#(vq*pdlp|fUzuQ>v_6m>Y~;6 zD&To@qjl#nrVluR^Y?geX0iv4@3gx3p9t{HolhNn^QF$d9~a*mRKQAegth8RSlfcr z@az+Qm5pu_U9r*(*6n;AElIu8B#K+RSt5(5bVcXNAU~t!62n+#3KywdzrJNtdzqVD z7yIE&xb_U&cQ(wcB-ZJR=rH`9Bpsu^N}q=tyR3)eP`67rnCFwBHGj~oMt72Z-~vK1 zVu%yZy+$V7nUJN+Z&HBjoF32x<w)5Ox3c0Jj^Wh^0RPXz-t%5e6h%o#@o8Q<*pivk z@|s34v$-j&hd;&A!e%0agMKYX3(ZsX=i4U5bP;51QdCmpinmBt^)V47n&O6#mVx&h z-1y2;0=9S5DI#Ym{d$_jU~3VC8`TmL@Rt29nC7n(7QcCD7=)lm&S}kKhep7dK#EEY ztY2&OCxPRp%~h_wCK{mKB|0H*<23bVHFQA{ly6*mJSHOZ>B8sz<*r;)!`*M*EIu%8 zc`n~x_Pu5BjKh<YHbY6@aEDllwsZZ<sY8d#`#vXZpi`sLC?@+G3~(t_=bL4Zm^<JE zjB(R;l=bT=0uJBXO>R<1w>-K0n-2KPPFG>I9@EZ2^Av?ydwkIa;#J|=fgg($eMzR* z7;=_JQ|NZWsruzoiTeWVP(kKN9ppq4bAf7)ke|Bs*r1c5d&B9;!;+j-?=;w&her@D zMx1?W9A}feTCxkevk<wyhZF&gd9R8<o+KOnEb&!Zg6=?(?z*1KjF!$0e93Y0e$TN` zG{^xz=s&AY$!<xSc1}B?2l0C&^Op_O4A%)4%Ek0}n%^=wwCteniDJjt#c?h}K$Odg z>f4Xpt|sK=gn+>v$Kn$xi;1{E8kemsH=SYOh2+&MUN60iM2Xn~Y7jKc2U5Xo0+k%r zd5ib#1`h;~9|tkhP76AfnFkcAw+A+OPxN#DN_#Q_<115kEiIij>rv=Bclm&JH%ZWI zSS-zcu_Q^q_PVaSkf4ID!BE=!!}pNU8<+fHwXp!Pl~kZ77Qqfff2dzil)l>^sHmRh zXgjZ_?|%5ysW0oqONVkpCx4!6@z;-6aQsZJ@nN&^?|SPCP#^%M=`-E=;p|aQ<-9AK ze#te{Jz}u-C*t&W)~F?yWwoOpUft;-*@Crx2fb$9S~_VGNhwcaGp$D$jO(aEmo$>s zUNC3UQ;sP*)4ax<sXHPQ&Ebohfw5~m^nZBA)3Lg_5cbOJ0)>zeFOJ3L@P8srBr*ni z)Pd6O+$SR8-l^fC)>m(Pb^QiEtCWzQ_|PxXuXi>%%2(W}?>r~YtshvjMkuWiJ=0e2 zhd{s-QPjn&mG7Wai9&{pYYS!xTj72IG1q48Jif25I+%{V7bzbZthlw!*BI^Hz$J=* z2xcTSE^nSPlXWBDmo>e9sV|V4_p2dreP9HN^<xKLVd*h~38uhW{HjVskcqZLyQhLZ z;o&)@L9bNi4Wm-V1C5)W_J+lb*;}E&$cCshBqr!JEQaA*GV=jk5)Pn;$|*<OUT}MQ z&GFG23>Zf{=BA>_c<w@Y*jwD5-?e_uoUB(OcvX|%0uC2`KnGj}tw2@9ReyEwxk%=p z^~vFfOUiAzEc1pvQS%?`rgpLRT`KWbdO628&o&pO7LhTy1_zM`=9rWnm+mVgo;H;E z73tu2YS$jK5#JrC-4v>5D)npfym@NVreFH3=D?keIqZr`w&dacO7X^{_t`<Vt*pq3 z`Nbk)!aXEZl0+E1nD=slzW*HwTf7OjdF|c<*_W7Qu0@2X9hi(=fRqyC#0D1V<f^!U zDVWKCp>i|h3w&rbM?4Ygh8z_NKe+XC2=mWvusAs^1c3oaP1LRGg9fmJCCsoiM8Hk{ z?kq-GeK-B}HR#9R8u={aceaKl8e~WdqeDm{&X2cQO>l;PbxkvK{LVLri)cpue@s_@ zTX3Qa>Q;|w#^AaXbg%_CG#zj$!-svdp;_8B+BFc|(*sR=0~LF;9Nx2HTW71_@Qo|l zS_FFuWt2f8<AlUFBqlLJ5b`!G9arpY?bxUAGnIpds3>&s-L{@Kw(a0(OY1i^3#_^{ z#;{O{ZOc1lm-2h|hH5NzjoB@pkx#dw_B`#6ZjH}mEg#@@Vp<6*eE8)LcFMl`>@sxI zg1?S!4}~g%A<ke5N`$2mDV*0=8)J9ha-~G!n~(3r4*9_b0|eXbx+7fXGLe2H@h+E1 zeQIo?q|tn_MN)9Nv9ld&F3tY{1|}^!uzOe8ZjzWPWcb<oC?&eaVP&=8>e0h^)=}%z zN8wo0m$eu)X6-UoiFzhERHF&73f5e{Os?)S?2Ktt_XNK8SFI;1qWqqAD2X7NG4+_? z`mfL8QO9mEL9b<@K8DymgiE8I+*u-}`?NEmSu{)FD=USIigZUfBpsHxzQEcK#6*qS z?|&yPmWqf8gOfHG5Z7xU#9{~a8?<!+&#FyF$9RJ*FD5<y|4+{FsGRXQR~Nhzy%#TG zFwKm`Nz;Q_bN07q)@H`>c_FG{er;F%yyM?amzMg8cqi~5=UZApsGcaP8&Y?H91(Mw z$c6i9TD3s65KK+ov%#w`$y~#g%mkU{G$5t#7>ZloW~Zmny6)uU?98-<C5R8eQ&SJM z$!5@fke+Y{y$j<!T1$&{3p6u<OpJ>sLO7k5r^@MY;{$Wzz{lghuQ}X@QhpaIembKa zkmy(>5PDo?FaEjoF7#6ze)cuD^^Y16has{&kXb9pFep_&G$X(9v+Ntbp%#Ay18>Ru zY=u!tE$UhIjPfdHq2~izVH55|J5l<51`CE*7ompfhQHyf>|CDIdTnI53l%j2<BUn) z*IZWCxKFM*`9s&s<1d7$4rvF3$kD<5>#N^p*b3Kscl1Y{iw>PjYJ|=C$+GBh=VZuA z#xz4fA-h;`am&g)^)!tUVl!28Y{5D)J{%D<k&eGa<Z3Ok+oCm^8b(?0tcDhc$Pj@T zd^3OEO0Qh83)Xis7(-pjMLEHfh(7eeq9yo01X`kSMw-@)OL{;>2N3mG{TdPhkF@A7 zNr?BAphkZoG#3u?d<YW_QT6!@;Bxfy@i-^~0@WFXZZ&pUllB_?0@}U;gTW2XPqLH7 zhEzkX4#N{bQ-dGK#OC#JC_e~+J#C_>ki+Bkc^*^8HzhW&_>+N#MA%=CkRz@}8}W_% z){c`*-p16tlGNq&*ysa2WJ`}aD2?PFovfb~IC-}+kt%m|WRaJ(!`emu>guNQ$j7O| z>~TdEw{j*MckNCNQc_k>tNY|j2*x`@?7GT;|DwNPjg-*~bt>jH{kx<DwmCv6HZhSu z9C!-}j#;K&e(2wGI}=c~^$F!*bv?8|IXj96UX;rIug9JvuzeV7`XNVAOQJ?l=jQ2m z?8)7*ANs90@b>Gq&A%6%B$FpQ<Zs2}4HZ3A6|tD*aZy!%Q&w-*{5DU5plUxoJGUq1 z%<Qpra|c<92HBqy{!1hJ&+e{56o2PX=@#(nn~<@Un-OwQ*?27Bki3D{;&AFl8A?pB zG*t>d&3vafE2R@r;eN}(8#7uAmyy}TzyHIh6KC<s00Ni%MtS0Zxf_tLeaW4SznScY zQqA(Y!ZHUOsen4oOo|9Sh0T10yN-)WnSsh+#9ib0n?#s5-@iq>Ls;5Sq?jYFTQbzh zzp8C``r4tpy{cdk=d#iuUol@j<aUJfN<AEZPhp~@I&hjHu)MPS{C5%I;Yz7IwnroH z7e(N3sGlvePKG(@JT3Sc)G{OjM*at6lr2Qd6$CjEN=Bp5s@3{ULVt+J9pClpBgfQr z;u^B&0EcQM5!5_lc1LQ1p;k{g;~g3M1wFl*4b;ObePVBa)EdI?7$%2S!Ry{*fd<&f z@B~Y_7C7nU0F4SqALyJRB-qZ^>1zchEOj5MG@zuSoVo~H*WEV_xp?QwtDeXF^n0QR z5hJ1>twUe{<DCfihQ6V(0Avk1tQezzFR5vo9PHtZqZ^OmF`$TC_eHg7f%PJ1gz3^h zoYuSES17a#q<~+gIm-3tyDgRy>QwR7zPbeTH5WfuXEg)F{24iqoLe!ka^CJ+0D4>2 z7zw1DJ!mNTjPf9tRohKQKOS114nb?XNwGg^D7=Dfy0z(Mh*-D^muL^8lsV6w$1s}c z>YPb^Exscyp8=$@jjSq}G6Lqg_A_!T3tI=CY;A{)#`VwDk?1hY*emH0+^l$eJOq%{ z@Azj0W=$0;2u4X+bXc1}-zVUnK9YpLU}Bvo1x4nmbFd)^joUI*RI9D_$KU>{$g(ZP ztL=7rCkM@jO9*#j68ouN(FbHiDWfd-coEJpC5=e{;)z9zhP#9ZF;9uX`V=&|sT4cL z<rdT*O6jh@1K`Rdm5(QOqufGr1~8ktfmkL2wDZVkKSCWh&<~z=|HNZ$IjQ)eKiT!W z_C6*b5S9>Zw=qV>kz_z1?gdrdfE1Myp&%!XM+{qQ&IOOy?amRl&pce6rJM<5Y*Cr; zZY8FL=Q6>M(6axIO}wL);jH;apif(g_qj+NM?|jXlO)Ismcjk~5B~R9_~Dm7Y*@WD zQU!Hhn~}&g&hzdPi9;zi9Jod1`*chc8sTKaQZXPg6{h+u`FuUQrBl;_6eDhJHygdl zs_(9=)$PQ~yXS>uw;g^*9+9e%OJAkfnk9zKc}$^NBw4<b35P}rrevqrpIZ#GL%eC0 z(Wm&zpF6*=wur~T2R|n($&?pT=VtHjMKz1DPgu3>_0<w0H~$02^9(R}g~J;JC%2K6 zm6!Cv<%mF(gQ%BimV(vK+v~a-<5Cws!xyTnvo@6lb6>jHd0#%8WRYQ?4GR77xA(~^ z3}*F=HZ%>Snrq_|Y}}j}4b3dkIG)za?oe4@FNDomX1~6;Mc6Y(8Sj|*>-*trJl3W1 zsGXaGnz3hmR>8L^AnlfQ!`cQXD-ofZz;`^-Y_rd!%Tw(u0wt=)$C37-YIY@)Xv;5; z4?M!9hrBgT2M;;>{fm#95$n$TugUjk(3_S?0woZzG(jETU@xUiszEONrH|<E(4JR5 z2)y1><*n%LR|;674!$p*ILlQhMnBQ&KiA3sBhzl^1Iz@+U$LZyjnt+fWb=E)(BYL) z7?Ld0oVcu6u}=Ts1eyD%MgO^8b_e~kzPlkV*5f@}*AHN{zo0z?0|JNQeP6+prgiIe zYcD^mRYkHEE<$c8^tTQ2n~Kb=aj(l2SOCBE3;?IEcFa-P)y2ohp0pg<n?KWK{05Vj zOYW~6#!j>=JaYGu9NJj&n`G@w+dVNaqKc}$U2inV1IYR%RVG8XxLK6(lzrhn9fQT? zC!9CGkN4uJ|A&Sk%%Q^YG~0A5<|Mx?eh3A$>`h7)Tekz1-;rrc({r7XTpK0_U4Mcg zN62G8SO1^ev!sPT6{wBmS-*P3B6Kp<`9H|d6D(9`O$77xYkttm@5t4k>7;)Nb}F*h zn=;<k%l@QPR2as7e=KV5oXE}L<4gJQs-Mrz?-8P6I?Yk7d(<!AuNW0qNN}O!1^OlN z*Rvx5jtG0w6{r%RNgYS|<{QD{_0<V%o%pZTd_8{^TTLMBVJ%rz_LOwEvoGsXPoOyF zsm{+u<1Fi>M*zrLs$toDvxI|Rc{^7!w9`5MV$s@6gCnyi!9ryJK}BciOT!eXL}bR1 zwFhM(%frGfXE1Argb<D+3zrk!#**BXV8(r-a-v*Hs0pLAgI)`?(_vVGP>CZS7_$P} zk39=RXZ}-fn8%ATHtZF0^sA{l1*M$%qN&>@60nuxkNgWmcX}9`=(-A5F}+SF`pVFL zXSLLsox8Q=S+e-&!njj%SHjL%ty_=CMXH2}lQ@**HR^4t(=BF*<0ee0-(H=mS*BSk ziKBn9(j(1{a~tb?WogkGa*&O7E^4gTjEhsNM_LHx*xF>v?5x2#+$tt6AG^5QS$S-Y zD1iqsJ1c)FWSoMPs@-k?AzlF#@*CXe|6-cBgskZMHKMA29k-Xj>;dl+k<1G4r`ZO; zFS$hOyX$NDCB)2!wmVzYABerOQ1udjk?<>g=m)ZjOk$s~xKJNNUnr1@54(SQeep#W z`V<q}oMVWmDxj*sCpY?b2|li{5amP+tbTs=$W(4b8wEraS*0&4)4Yk~d4Fazu&sVB zj-y*|+Lg=XX$iFZVNnd~$0lSNnqTvAjUmOm>trRl7i^hl&9eW<40~Q{V7zylPZe#t zW}GtZ63s*RdLAlte|F7EyeNBNFm(v*r_9+mZPEFb&Ps09N+M&ET5?{Z42{8S6Y^?) z0f)cuKe7P#AIYNJkKJ|Kmo^`wj5mz(n~DPTIkc#P&K2r5>NkR%TzV&mI9KO(5#>aA ztR+YKF~ue#rK@E!(Drm!C7gD-#JbJ8b+Ak*S}sTi7K`SUV>!z0ACC8<)FsJX3CpmH zh!PPR#mE0U`7Z`<CR_KfpY@~F=Xc20%IgvuF1d1zW%f}61Lg8}{Q5HQOcut&Wl`U{ zX^f8MTJiVj<*nRMzVkpo8j(xm=yyZWkl7#6C$D-j)HDv3&28oDT{^>PmU_LoBmTg+ zG3Ufa32PR;YI(#zK0H00SkIKDqE1&Z&m{WV(7a|J`v0M5NV_lN``O~UQh{m5kIUw^ z2((56zqU83UhnvFApZ?hum0!<#yLL<3OPi~x#p-L!&N`<jwDR_1`0@PLp46lD|7W_ z;O}iam}#!4wtlGvoML(2+tQpX7e_g$7|3v;n%PE|Em(k+1ZnXctp*p%5)D}g^@E~) z`{?+y6N=2Yjk5p9<bT%F$WokFEBMIldQ;^TrU{wS&3{#e|Itu7;7i?Gbf~yVQkBim zyk=@WNuJ_R#?f}&Q7Ky0R2q=w3^*pxc>U0CXWLU1+-bHm?6e5KrB{^07#wixzbShT z#LOV>l>8y)rzZ=Wd+PuD7kb~>F4kW$$nHpW-=9=awfp=P!ll3;xR3tv4+oDtS-<Fl zj5D^rI+ntO89eTEA^d5&CRvso<7rp$5{c&)0+*9e<n@%^s;IpGq#-Bj+>Ij+Om^sB z@4Vs=$ifB$Jw9^#yL5GJX<!s9>HveOToPP;-V5c0nV5%On*mwEcHcZT81y2q7A@$` z1VplhAUnSKG!|R~*a=iK=8`0@?SNUk9)TX&5HY9@>Bp+Pp!Chs>!7l|b@=hOzJ{<~ zeCwe#D>WFWA@#@~3kRO&N?j+eNOC4Wb@a7e2o<zejY?-L|6SMAp7I_0`^CJFb`2iN zPqnrr>!P_&hQ?&wqRPh}g>$Z3%hri-?ekpg-wI_~0`Y=@ekkjuqEX9ZWMo*N<%sYY zkO!|gfFyUhj`X?o%je=74pG7byQQ$(6b9v@*HbGnc2D|Pc9pVaIGl3`>?`if3a)$$ zKp?O~ZWGGypg+e35saz7cN=;eac_GR*nkJ=X0y0x03`1?8L4$TO;nrco<Tf2ae`j+ zkt~B?Wq|_+t#n#vPPLLLanew44ZGmH*Q+04t)_LPNVh=B%zTt|4;}lOCZtifYMTJS zkn`Wry|aULm<Ytvw1}YBaG3532IH{DLm%O?MU8^$dQL7SvKWt>z!1k%+_$lMsNUZG zsEfFYa+vmuH~fki{NtSN<c7q038${_$mkPG2BF8kDd&9hsyr}%t%#t{D3O*Q0>i26 zr;l*4dT^y9Jm<u?vHz*`5l$x&O0Ir^&5+%KD`e#3=#6I+d@0gQDrP>O&7Y(5f6>q} zGa)>ep+6elLHe8q4x8*M(-^C%{JFz>CHn39^#Cp`4IBbO*MB=P`5qU|x*PVgQl??6 zaVOZ4D`*tQDsn!qFWN~{zBGmwOS)^&A4_C2*Z{kc!sZm-n<37fQ{8x)Bp5J^L$V$i z6cu^{4w9~wy1{UX7fdy?v`iSD07SS^87}B$a1}Qzll2AbIoGc~58$GrZ6o{a`j~A9 zP@?frc4#LA^GBnisku2C!N1;vwZQxHV_%?}rAI%CfQ0Y&VBoTp(hqWqt{F&dKTGw6 zuGs6}P^6xDMr{wwalA;sG%-Q=5=b&MuAL9$g4NqaYF9X}1$*SFklIjv{<rOCSH_0C z#s1ZNPP==@#d?un+5XV*e9o0q*BM~H7(ToH{fY5Kr+9ZSK(w&wft~tIB3=YNI2z1L zu#WAUGF1=vNrjQ^dDYL>jqgd81e}felRvCH9SlCWcp02g_|<S`DnJv`CKF(0wYOEd zaDPu?JQ!lZw4@@kG&B5xWv-pcEshrkR*pZlO@=)vFFH-9|8=4e;V4NYQNEhMSC?n1 zndm*%j0KGiKD{q1I$777m=j)hT*BB8SaXO!{y$?KP}O^4$4N%TN%UlmlH{rQD7^Sl zE1CH2{rq#uE?vi}dSltm*?|x6fHKuGBOQ4H;qGQfu-E@y+YyS&;=;;PyPkioWN7c! z5gtL6<~*_Cxr}9a5cF|)VqKDAJhCJ%E1$W*CoNIrL75!J-lxR13RRAVmk6?YXUf8v zepD_a^8F>A$_x7LtN#*e*2Bq%z1k6zgq+R%SbEqXN`&AcfTK(YOmGbMd92PbiWS*M z+kz~>;W8vUV#1u7&xQUnm@G^u9!Up8EWv3ub9>#Cch^2XBdQp<|J6Ulg5L=7hg6d^ zloq5~{co-AYo2kmD~mw?V0DbN)R+0k{u}iRTUxUl3q4<|S<?X7qxJ9ADAw9ObZQJ$ zl<EW1yjT0idh4gm6~z%*1bA!1i??jFdUNESOjT!YEGGfOj1l6#S=o&pSc-kh<vd^9 zu<fvPK7$vyzj1j&PRMq_)#a<h!R;_bkb-;j{*|$sm`R920P%lOl66&$Z+ZXaPD4JZ zv2fkHgZvWP7xamxdq-?cBunf#2y_lCyj%1d&c8IaXh&3>Ug6l0fl-gITSuH$Sk~^O zIDfL4Lp3M@9XzRM%aMH6AB44^Kzo>VV_p&6R+W+5mOT_yM@aNonLk(CAX$>f;^a=U z+?$TR^o3>`*5WW=%A`NDJWC~8O&awenW!c!DCD`iYyYIVbp_wLUiTEy($^^Vg11<* zd`Z2_O12EQ4_KF)X9db@YFjzTbw<g1e)m!d$?2`QIJZ32A^ho$!py5m{eF{&SImR2 zW-J%Zwmz=be*bB9hqP%X3_80|)k4kzmMfZT=V$0UGFGf!Hk>K_7sY8Z@3jovk_y=F z#-fjkc}76qxkyF9r?b$mWeq#qc1F@5X&9-LQ-4tW58gq*<LsWQ=|EokOs3*BdBzV$ z+25rYfdA1xdHyiZ1;d@lHEe)C!OkFsPn{HnwAQ@RCpVx3yP(qTU?mv_@JbjNM}Xxp z6h{y2V_*JRy0j~g)8>9mA7x-^UB2t&o{HGQye0b#J^gR)*Q8$*Qh&*1`7Zs}fGFAE z8E<vpK!(5>^cnlt<+k#Z0FO!<+KOoDs}ygIBt2<^yA=CqM9-*;j7Drzffgbnhv(%= z?n;CeYFUni40S$YM!)g}v;)a{#(oab8zs?(l*6T81@IrQL=mA_$jm-vKmB!!u{_e! zs2z69?zU2&Q0#1FUn;e0*Kal-UzT2rmhTqh>@~XALb9-qTVwG_n&PD&FN(M=9(&7} zg<wixSi`U~Jg!j6F@#hg(9y4jPg?M43MK4K>$C&VqD_XRC6o1(TN8R$>>JC!jXMCC z`sva?tvt#7n~U+=)%Y)k9L7RR!2}iCzgm{TWto@HenWOReLWXNdIe0Z6HV;+N`n0Y z5RT^h?t7V~%6P_HaETYrhaEHmW`EH56xFy_(z9GjaV6XW>cjGNGT)bs*a5@QqX|me zgE1dY&QD^{$H#mlZ3^megChz>l$dUoqv8OrDMG=XptagE9%9#~qN(}~Kl_b|qJk8F z2(n(<>M3$aKc=wGwY8>xt3Xks3U5-fEarz`^ya>t3VpySN)ll`CeM39z}uVGnd8eK z3^@_2yDa@l%-Mm7;_oSNL6Z>8E{%2(-Z>um5Gk5CsnGwe!T+F(u1e*Rf38bY_j%}{ z_oV3OtcHO^jcS>6#)gSr43Ix&<;ho#kF+VQweOea!}%5_H5!lC)@G^=577CG?klRC zvD!Lwd`dMJd+{Q4@j~qlGoD?0WV$vDL*h-6NmKnch4fVk8)3Ba3SbvS-wSO`<Izj= zG*ScU^%Th;5k_O~p+;LzZreZ}&j$+_ct(U4>A|}$X2$;)I?G>(tl5h)MDZDz?PefA z&5$$ruWg*OY;FsBZh!tGen&vqQGG#1sb{H2=HGVU5?TJNC-*60GGB&x`<rw4SD#bW z?r3;?n1_==B-BvJn@QI0Th%Sv)hS0HEX<98*rZx|fx@mGHdkbuE9~>CFRo+(e#ch# zW3OO^R}~uW&AUG*sjQijcF0U2g3Irz=}2m2JGg>x8mku{d|n<e=E4Acm%6!NP}?h* zyv@Pfo|Q|+muuG5<Ww9=qv~swPMt))v}nt{Z+B!&EOx7A2NE^)^&fx#3Oc&O6uCt3 zBLsOFsjAw?Hd36y^7|#bQ5<@B5gEmVvXF`S@E8QM*K}8za;y0!!KGdKy0`MJTWX}F zva#4F4;41|ors#tFse=30fl5@T^a-8da4P55!Jmldi0UI8e=6=cvEkSxqtaY#DZJ* zU(x7{k%p{H)ySJlU$W``m@2WpQLhLTxI^9(jV58n8`747>Yt`Y*g7roy*F+d6I(lM z+3QDCrhU6-S#P2HPktnAOb&MCTtrX=_I3VuUl33*33Lbyh^sIpCClR*KbVMV=*p(d z6IPjA$)Gx<onT-H9V7I8D;=8hxR7d>rBQ|0aOZo-^!?N3xHu|p1;d9!)S=e$j1!mF zZl9OoWv-^D?#|2RGB!jFJGt<!=dd?U=_F!0jpda7yG1p~?m%A+<~9l$oEfQbN6j7< zL)vCr<4hH5)#ytqX{MUkmj&u|GMPXal%+3>EoVB^BlOXx#wxbHxf5o+6VF_}QrMUy zw{Ez(s|FzO&Q3BbV2?CeH+;WN4LI(uYPkxR_K}H!@n2q1hw88ca03LwEluKHh5e7S zl{11}QHlMI9x}$qtbtmVUcE~fAI`gMw?V&pTRhTighe>RB7e3(JE1c;zKYeqoqa?? z1Qvv8Y)>9@AxH81x2fq+FZ5EqN5-G;Sg_#!<sq;RXF4!M@%$H-U{dx@yS_*|hnn-B zvSa5d!ZIG_B<jjX8yf2BR<;mFlck1*hN5JqdCdqa3Hu@E>8SKd>i~9abJr*`2{Svg z7X;7c8IMTXUG0m*crb_ylC(duxVW4F28FJLV**dpkJ=qIJY{q>3fekwvq-tecLm;n zUVPpSO&qc;z?bs7;}vawAd%q3oaxgqJFXREF0QPOZ=FN9q(=Yrj#N2^!Jj%r1teW- zu^ec9=6EK9U_r1m`;>wQ6s)L~!7ZIBE>aLgSiU*wwr5b5Tejz%KcCK2@)7btj$XFw zOmjT}!F8rGQtZiEJLO~ZCml95Uvvlnsbm6+7?pgOc@V*7CY*doA%kk3(Mj15YSLe7 z6SUP<7Un826>5H80R+vNFhNTsBomhhErc2tIhb&FS-vW;%dLV1saRRY;bd+m#YIg< zF;b#sZ^FP+RsoCJbn`G6Hf9t-24xgUh(4s3a*D}Vp<pPM<ZCb<R1iF3Qz9a&8Y&Ug zBtlY@YES}1u0Xn|pah5yK1D8*f&)d&?m0KsRA$$Zh?9l@MP}gw6u;4-*_{a;TJ*w+ z*UIN%h341MP)f@o*f^>*pBRd<2!*C9Rap`~T<VrH%c$hCQXB(dL(n21Il@NLeO8Q( z%<nNp+z15`_NHmmQ2-tcTv-iVN=j@L0=O70bsLUQt`c>YL>Ngzap7zOP~KKw;VsGl zh?d`DW5ZnJh%60Wga8CBKjpP%em6tt{S_0Iu^$3K%btg~(tG`j<(|JP0%6cw5Mc)F zz;uU}8x3iW(82y$a~}7!l@_Sh?(M*3a{lQF-K9HpZKiNb_Zf~G>SeE6b~H~%^|V#C z(^F##dcVH=G!|*?wYm07;YK4oE1kpgeMh=p`3)5N8D%a<rPVKcT<L|Cbc)%-EHRC_ z*qYDQD3GxG<yKY;_|$>mhuF7^Y#;2GYx@MiS9uuASL`vFHt(OcSrWFLRJcb;d<q&K zvdZ-IPTAI|Y<dq~vqN^56_n=A%vMaPrC)2Iu#eJupW0WM&DZW-ai^%P!GvGp5{&zw z7MsX)vg{#dox!|4%NNw^XO5+~J|5N1J@k8$&f^TSZH`r^|LF8hA%A1l0n5{^m$mm6 z@2<*yDZNc(JGWoZ5C<ng!m;<uo*r8(km`65OSa*V1ly~AD6-`O#16S&l(Q~Gg};lz z8p_2K2z3@ccJcd<&rb#N<{NZy^m4Ycuyh4jr1i9PatKw(K9J^4t&o`uhx?|d0#%=} zRUA%IvFd7L9KaYYPcL9)G*yf1ep&0dzVo757H>LI(s_+{G7h#nYyemTSDnI?dpnf2 z&K73CRF3|Oi)aP2qkdm`QVa&+)Y%#HAZa<0#ReAu=geD`2g_h)??q~q%mR6xE?GgG zm#q)UDX+1`#@JjtTx&k<h*$rFkQLcM;I*CE<m1&{r2=kaf6Pjs4<zk@ul%kc<Ychp z0yS#8>Jh=S^Ev9=KK_NzQ-(I@k4rl{fJj56?l~7EUsyz^LI7zo6UoZ7>c<^96@cSc z32DO`o`jR5uqwU}=yEUFm95emI9kRT(FOKt_Lc!Yf)kR#{0KZ(_#@iz_^}xv#wt3t zUf=U4;shGkh0Kof{+Cn7ymt}bNRpTYMM_3aK}p5P#4M9V7OQMFb~$n%((kX6OP+jg z9t8>&DdtrogeMS5WD1o=XE0f84wuIl2t{IvR3;B3O0uGAx?x(j<9Y}pBryq!l#HB$ zk}5n%O(TPrj-G*$iCHF#ELPcUb>URb{wbmygPV_a7UnVQdi@x+S^ev#MKVip)try* z?^n;7ZgsgeVi$csj4wRWp-D?D1O>iV=}fb0>F{=-pTg@6*|1up@(uT9+@hFVlK^Y` z-=0c`uTqR2p8JXyyj!rgeBJt262GDyc`M^%3yZnhI34tsG|h0hG<smu@~KFw=kFV) zUG$orE)P_B9(p<1G!4ME<`dv$<3@wi5G!!Xp@JdnF#8z;Cd6P)zpovYqlz84^hcTn z!4S6-?!J%@^0mDHArKUrHi8YcO(%RCntIZsThw_BYT;zitenp5hh4<RA;5@trRz?> eto0caMqseOdLG;#8C$2}qx2NB2Zcf*0001K|EysE literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Math-Italic.ttf b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Math-Italic.ttf new file mode 100644 index 0000000000000000000000000000000000000000..70d559b4e937ca1b805eb39f544cbebe3c58ca6f GIT binary patch literal 31308 zcmc${33wz|eJ@())Y{e6TlK#0-IBUnYIRF$?Yl;r(JY$P(s&tZHt!4GZOmpHgU4oz z*^>Yv34uW39vc&52r=-u5VkCk1oCcjlMqM(2}y2%<Rc!<`~9n08jZ0@?)%>Nz0r*N zbk(V<^WWD~BQQY_+`?-GQCL54xUaGB=<=@%!l`?4bp6!L8@EaM{}{ygZ{hn_Pu+cI zMp{k%vmo4Y8sBd?d)u`)pX|NxfFPXyHQdCwcH@rQaNH{h_s`=~yY{C0&OY*{+uwun zKMKN$yRSR5ar#tv7Wdkq>xZtx0X4-xg!>=C_ri5I-+Awk7Tpz`|0O|S&)#(Fsf~er z{2-R{FwXzw%^UaL#^UZT;X7TQxn<+#GbeuKfe_a7hk_v8e%q~g-1+T~f8$eva4(+E zF5GtencH6ZW%q9i!tHI$e@fs&1D{{wK|retLetmum7BhN<DI7)4IaGkg9bZ~IpvGr zXJ2Lim*5b}g7!?>R5@={S_4DPMkpA_=h#56n9r5+IYq@!Fc=7hL(RsdI5=27eeEl* z|Ko441<?q1rzM@I`W>3g!rlIKwi-70pWODE`|kb$(~8wb)W;G5U!T6aK0D`A1M$&X z#lVt<WBB!(><dCwP@WDdtWog~wVFdMJUbi=gsmrG5elB4qhEuxsus=<4k~KCd`#kz zv%|V1Yg|%%(-BQ_`ZxBh`<;>&nf7TS3-5`k><LK}bBglW=ef#d#peZls@JE;lEQ!a zmvj!qFg#yipT#=nu#OU^by)C+@o?2Gscx<+N}y>ijqnmy)PRchl<R|76D<f!8UT(| zg)UKYrPhsmj=aLnxD@c0Lovl~aP5Zc?r^A@q__-OjC19g$NCuO?8DQZ!2>gcDK3Yj zT`{(QbYfycF@uUPX@;GK=unt6$+<J-Rk->fXZXsv*TcnERE%0*y_KSK{%8y^^jz#> zUjiME0ET^ofFVo-R8-Zb7_G2eDwpzkT5@Bk1w`Ty)*P~zOn}&^C#Z2<I0OP%C{RH8 ze6CFRzb=}MnQ~n3=}Sfiy|G@UyQC=6jHu|T;@W5<63^5#qGO@y^Bf+S^raVdV4L3^ z;@ov&!5g@1Jd{=QkziJ4qF)Ypa;Hafb&V@dA6J>;+0!^xRin{xCKdG<-J?!1-!)y# zO{QgrKjjTA7}6$>8hn4Yn9P846Bj4hpRqp_MubUl?$~G}4$cj?nvKR#V^V6h28l$a z!NHadSTpQvhQdK`PKUSXo0=!G<;yJ}ApWe9lw7JVtCGx_`0BGs&W**zw@RYluUr8( zlCEIfX%<aMRGp){PWqh6*~a)S?^S4doO9_BCUd{vck<*HC9Z6qmUxa!GjrU*BvHzM z@09Pe`uvf16UQ|`t>@Vng<YW5c#)_DQsqgsY+eGPz)d#Nf%oPRooeBCFi1yp!Qc*B zS@X&k%f3GuRORlK#)K++0<ru`S@rn9W{RxN@7_D%mc@M!_IX*<ER@z-^-TQq_(<P^ zl8i-C)o`3U=Er(dy<=0s=$u25ej~Z!9O66?Q)JO_U8x;C7Sw!;V@JjZt7Dn^70GNG zH0Xi$_!57QFaSujXQqY{CTQRvf|OY71ARei!-j<T$C7PJqAkH`fhP%2{Di@pibABZ zAO&x}B|K7Tb`=ISE*p)?pf}?8Ty=Es{Lt`g9EnIc>DE26FOcv>$J24?54}h9TGMb0 zX1fzXH#=SGibf7KjI<dJj1APBl4w5j`kOvjE8Y~#rb1!2E-_Jes{W~=8)uHHXBLkY z(v?_nayKbbp#|D}m;C`?Ql3sbK${l$2up|jH=7U+kiude3oruEA`?J^j1A@T)?rmy zhMeb^B+Ig)7R&FxUlJF0i%nhRdbvku(vjpuAL}~wZdr3m68{NTr7v)asgfJK!n4<$ zln=kDuvC!BWjXTBC+deLIAfwT6%@GuZC<(f17Q8V(AXowK0*JTh0%Ifgo~HyEk%X! z;;%&lERjTkbXAMAKr3fqIvloDSGiOY8yy8vDwi#SK+`W=w`bv`n?<7IhPx|o`eg4d z2ln6W=3UvQ!xMK6e7tvWL|Yiv2YedWXR70e)5dOhUeo08h*v(w{$=6Jt`WtolnO=7 z5zFPuWy9;6K5}SU3r+Wy6SD4e4Sb<l$;2GBf|{-Q;-*&WzwoPz^>WVWbA)8s>>dw! zMh*xTpLMa{hlU;yc7xAmhI(@(>!jfb{kCun4%(!!0R=T6OpQ>}LIR|VZ~zYUmx$qP z@GVXwy?77U$)zifc+Xt5tW@@T-BZ1dkY^}fDl)h3=6hG2%I@irk?{kmuLttoiHN~O zZ+xH}?=zkK>0sFHQoJ)`uT>rM+!!6dV!W1Yxr2=9ue+wJdEKv63S)!O6#I-P7Moct z8)LDaMBmv{xhUYu1GqosUlnGBWx%y(As_&*CfQqPrV^2h?4i(tM1l4ECP5kwVf_H+ zvN`2ENfDT{K`2rDyo~Q^xbdI9J^sajrht36<ldE0*a<E>OrMfSaCtl^GEtPB=Hciy zNyDBK7}AX&<_b*e^^2l%F(}8qeaEl87TQbpx<pazQ}`94Lv*ms-`)IO(Wy!<kGge| zd)_%ZE^BI3(q)HRgR$zCEAf?gGw^H%kp75&6db!>*Z|L7eRy%IY=URW!^pwHTP#Za z*vy29ZwU<5vQ7jU$ym#>wN2XxFy(;~SQ(CiC2@2R*NSuyi0K$UI><6yk~BqE4JiV1 zB+3$d9TVLP<t~3{V^E(xIJ@r#^{ZbJRhh|(s4MX-)Z{sKeLkrk4OCq&x5TFo9yGdl z2ZBR=1!dpeEblWT3v24k8Ga`d86=a-qQ~Tn>!ngNpY57)ijF<4rKvp*cmO6i1+ptT zBwkn`YX@VYh%a!pStxD(Lv<9!jlX%<E(wR#vzBG}KK~E?Sz!^{XCwpd!)(vOCNB`v zffU?rqX?)0%sb3?IK`WdDf|ltIB*Dy4@TmT?VcZ;ylJB4X2*}Hu2OAm-IQckkVoEn zJfFYzalg7;dw6B6zo3kFbHl;JNVi9E&w{cZuS}lGUmrdZ?Y(*9AuYIe%E5e*TV`C6 z#<jIK2OW1^l`P!*iiI0uCeypP*NAm{RBiL8sw~Q)7aT2Qp|tX#eP2g<Gd^(nCAx#M zM0OHX+xJjB9P}Q<VL(aeEMgOrD3*TZP)^o~NzT&S)XjmJWr=^`H@X4`t}zm8XI|(2 z+^uVjixON;o2Vbyzl%rmseFXFWd7#x%t8IcOrf`Hi;k-3_7i<%^TCZq{S{YT7vv1C ziq|XK^n2@`V=7K-(uFUHAed*Su>L->7-{hK3;e^v&7j$-C5vXzro@ThT#z6Li$R9H zH7Pe6DKSh3iJvW%3;u=NhQc&~{zAUtq$pWXbteYktCh;OPRIgFm;u7_=aghId+$+6 z71=~M>X;evDh{lW%c>$PFmf!L6~&kc`yVh@29&Ar{52EF{+W`lghl0gS={{Yx0VP) znx8PlACt6Nn)HCed(;@?rlGRW>El|p*8#vqRs0vud<7?5Jc1vrFSCbV&!H89F@I9i zf)`=Kn5=tOt_(rlsGIPkum~G}GVj7Np+?-M2oLMez?)mR`zPS;I^gbX+_JW|uy51; zB_W3<hqWc$-9fUdlBT4ep@B)>AazOXZ*xD*%R@ujwj25r+Vzu(wSXbMB<%4m*r5f3 z!^c*@=q#IQjVoCXoD0$+3at7R2YwWQ88v5HnT%pAMlIC&x`CIM2U_B?E+>;qeg|+R zD(u16K_Pg|AyE?{XtFF`6eLwv-HAX-RbKOe!4=ZH3g4j{P6JmV0l1RMq*-i3X5l3T zzY~~%Uo5xR;zNr$ZC+|ZkZe`rmh+ZnR2AT~Jb()nHhcGbf4*8ErE>ZnlLz`9P==2C z#7MliXd|KPbZp7vhEfDKX^NvPu>qjXk(MPXdsFBguX=ff5rL-Z`TV11aHQu-wYQ+1 zkTr=Zk`FjwnuwqXcw%n$bqKqh*P&X|C0ho?`=Dcf1-Mx^Eg5{VU9mwW^NHw9>By!U zXf_e<4i5Bk%LoxZ5#te3wr5&OM^&J9;P^pLS^Pt{$dOBXnN<R_g3oMJzi6W6e!-60 z8jU5l6_;g}5Oa9CPehLTUBqAb<534S1RZ1SZEs^^qM{lOk6chhw|Q*(u-CmkNm6SX zzCdz&5hy`&J;jaa(SQ$n?2<W~ecRizIZ>@&HbdMo;oO!ABva-iqo!D&OaVv!6EuYQ zJr|d7Pd(_6Iq#g*u+j_PfLh?HXp@JLXKmX%8Mk0>cti#}TsrN9j@~whpjr$n;HRM4 zJg7FC-;#bCQ}BHnR+tK*HW6t<f-RQ_mV%JjBr<>m^qV8h1^;i6=IQ8_0RRE%aw`)a zAi}5^$}X-?1R$=WB)XUOw5A=pL&i9e&bkzFDVJ0ATE;@4w+KFyb+}6~$&B|rS&Oj< z6dRPN%OfGsb9nI~LWymD@A1bpC|MhN(q<zUzt4#an}8>&SzOpzbw|)_=Z#j)Az(1w z;2>}s>2p#}WCTq1dsj!XP$V_FuaEEdIxQ3Caa0w4pBQ}Lz{I}pTusi#G&R;=+U=F@ z;jb`c)kET8sU5ex8CND&C;IcvYO+h_qMDqm8|;5}w5@nA*7q3JcZKgVDcQ2ZTl#>I zi+`%vfcpsrYVkUW1~IT@r|C3YH2e#b?Y4flNB{`8sMQ!85IuZLCTx$rWJwP_5_cq} zZSIhVjv=?j!3Qyy5<?J$gN)rOxuaec-kWzhG8FJ=s_0#w;0kE+W#({{yvu;rT?|@e zbau7wF?Dbsh^#m6nx7AcNdgpAcKWW!W)8!f-B$kMHvhu~Fp2#&*%2Tq;PU3@SVnR? zJlx5n9J~)R7*S=pmr^n8eJm6@-gO=;&}}XdVQamHBt}&h7#zI%DvSLc+zaEnZ4}@M z5-pPO8r}d}946lXc^V5i>Y&v^IN|(~zW{C33<YouKN%qOGHtX2sU6=}G=_G&2MkXo zELsk~Tv{+x_qey<aF~tdsZv*e1jgBLDc!vy@Usc-xy&!#sVDr9Fn9p~*e$~;>i_4N zCkh1^H9ZvGHyzO6^4|U$5CEBxolY<yN7N(50r~xaJVSO2&JKwLxv}5{GUO)Zrr`0A zZ)-6L*vkwCCKW521I<7Yf`Vj-1voUbCH^nRTqY8RBDq|=%*h$EG_%5-?uGc0F9PMt zcwosVJp^#{o~RD1r6{KkL`Aj~=^h*%9qcv?xH`)EI`pfQC1w;K+h(RCne;)=4rby@ zyH;=bf+Ho0i^?06S)D`~F+SWS<ies{kqQcTfknt$)dLcfqziw-S#jp@)mI;x3HXVx zIJhVX-+;95g>Q=Bc>ZD@Vo4TZkNxK67agk18;uKpD`#cR?d1&kg+D6Z1N<HXeiss# zwCd2{q}U+r`nM2k**ai0j7$K@xP@%Xe<C@DY+4v4<mGc^EN2^e`O>=r3tkU^V2b9L z56F-3!K49A1rPkhzAzX6P-H`c(?Ng&aKHkhdv`oG=W?q&uxP%6``z$!ytjAIqqx!# zIj)P669%Z@;0au02URdqn|?+5lW(|VvMRbn4XETm2V_tzUU*97{P@`Bke0PIAVdne zweR!4<<ARYp^likC*h=+ni0oXT8nH(Cl>-tSWzVL9{pH;xTW7(L+mTQl78~;D@G1p zf5VN7dzpDMk-3#s7AD-jpm(wr&h$=?G-Kh3v3puc{ycNP^_Dl>cc?i(zvqFx{^%W< z#8uzkd(r?rHM2PO$>U3>eOhV%QzvMBh=%w-gF3Uql~~{5rQXY<p$@}?-|?5wZ~fTL zD=gg0vG`UvOuh;d)`2Z=ct?QLVeH@gjBD%wNM#Hx+^n8FkxFfI@+Gyn9WkA)cB{L6 zg%AZy`5ZfVM4KzbO?^uZbXb_{Q%xlh)kd20CS&*9>3#`@<%O|QUW2}1n)2pHpgWmf zitp;Cd{*P)q(!j-VMVwKxq)K`_s;bDksFZVn02x`9iIRN0-KOff{2<3OW;#t<FJJ) zSX2=i`WA&!me&u`0)wO<nous`2J&BUBq;yI-XeN>OE+xM_CAZ=A9@9OPL4#nH0e-O z2UojyMWelifkL0`+IPak=F0>1#_@YSY$zfxs=ZalV+lFYwc>25lH|NZeJ63mBmXdf ziU`=Yoa)QC9ZLAVymO4@2I`K%Pv5I&?`ou?)jxXBnYwN;sMV$)4eI%9IhM0{<l+zb zzkx??6&?YPyz2HA<y9|5%odLTXn?=PBS;<-YivcvWLItGA#N`ZOo}!>5JUdA+*27? zx)g2O%mjq);HHj2;UD{$`^vte6n>zpsB^OHj<}_gS5}NbB-Nz_uR{hEvaE4W#S@rV z$Yd{hp@kEXW8|h?a#PQ-#o+vu5%YuF*zCgo*i7CV+G4dWeZXD)UHy7st>u$TOU6Jw zolkPlfLk%la@EPFyb-6%tHtyYZzG~|_Ta-PE$nbWFZrji!p@Kj+$e7TCrGY1>*3{8 z8rpLJ`s4Nde+Y-5Jr{$Pk3_hj7#+-Z3E{aia%@m0R>WYLlprx<Ym4<jB-@^WP+-s2 z5Db<*ePD=pFU+*gq@&{NnI}A+n0(j>ooeZcgrd4exe4gGEM2jzyZe@PKA=1-RtHDA znoE-Eysl>~G@`fyfJvL*b9^#g)p%a=R*sGgy)waD&U9MR#J@+%-V=?@OmpY{rWT$K zvpjb#4>WE}R-J5mS~1k`D#-B5SwI^EyFJf;T{sD7`!3nyyya@!zFCtXf(wq&W=m0G zWJR7ho(+Y=0ZK@K`|`P7UWNyPXi7wC4o<FRm?4lM)ve^%`{S?5zb@~wBE-aa&<AxO z>v^AZS28^ptc2njRdI?gB^C0(B!BbujOCfcU5X0tTXYznaw5|kmD%Gi_e9PGM+~|I zrW%<|D>;d91CC$*vH1$~Bm3cqrLGET3RjLVbo=QJ@aDb+w1L(#Qv*ZMaLS9g9#;0k zHze!4EV>cP0QY1=$H4`gkia$Ir6)i(lyXiM8eZN^T9rbe#<DMyoGj|Ls9NT9JER0| zth(a6Cx#EbDtdCKq4eyD$L3)uMgO8H*6LE~eH#aFK@h;3{Uespy-cXchFY9I-kP{! znY}@O31g|9f8Mip?y5bCFKjx#_CGY$GO;fT_V^$Cb-+#DY4hUuVYxpl>;?RB;tOVZ z{>0~Q(T<)82EoJ0n!>RvRk+PFBm=gGl_&QsU~X$;OH_t<uW#90Fja5?kxy2Xp$v*- zqO|!|MK(>i>$|y9bNZ|h$k{V>caXezNk;iEDUPz;yMKYpHA+tNk6MIB;sorGga@uj z7d|SIzah%}Udd^>1eQY%?;8Q#ri<Nm*AJ1K4kH7D{Im_F6a$nG0!qKU4JAyBCE8$M z07)8@!wgvj!<PX7yOoRUgmss>=mfH9)mdy#X$`^n*v=H)4gbOcGl*m$RE3qEfd-kB z#YJ=3H|vM1g}kX_Di{0hw{pewNMhCq-H=``FeTvUus7ax#F8JQXH>5`UBv+JpeO0~ z@GSeK16)*<LV}PWiHY1q@&L-+j7J7^k!29Px`VNN@O4r-gyan52dTc_BpC|0l)mcb z*EbpbD)x7(S$wYb@D$S#+uz3=@O>!<b;;XD0!-cPL5y>**aPgtF$>^saB!tKyhN8M z8JlB<D0;$$-pRsu4AJY;Mcwk<NVXy{`bU8ER}*g$){B<^4>ViK6Tiwpak-;|Y~0z7 zkAjK-*s0^JqR<Y1U?;y>z7i%`o`GEpfjB~Y6Ae2zAG9<R6caHt*+_-S{*}P~kOQcf z6z{Qq{hRD&*)f!`@a)cA5jqmkp@cjoH?L&|`{L<{tU2I_Dn{t!6^2z@k-hu+9l*JC z?24&bNpI$X63^ar>X02~!a4<f*RW49Ey;8S%%EsYNOyyC`}KcdEF?Q^9Fs<ZZz~z> zmLp@$bk^xpx#kD%DX>Ikq6?D3r4#Gy{l6wTnC3*VOM#^aAF9TG@CRJe{R-%&yJTQG zB`{9;l@q{pneq|EfYsPROl>t)bOJ6?@GYn+#07*WaxE@NaV|(QOdf=dcQSZGml6RT zo<@kz%JV)4rKpZfAF`M(UyjOREZTj@;m>CfD?oD@^@;oa7RM^a@M#?K#!8VJRR?MU zs6@GUMVc`b)*1IN)f^AKE*2kgiYjtWfR0#;DY|^^wRinJa;J8rZlT4cxa7_6;9mY@ zE%7Sd<?xC+H$3271afqlTywnlUDw@6dTj*u?i;|!6fjbuo)ZQh;I@#rCi#HSD(6T< zA?;$&I*g-(gb~a47VJDT;R`t6CxVA$@rVC}@P@eG<W7C+xVHCL1YZywdwpU?^EnVl z|J~oo%7uSn;@Syq_tAvv&{PMDIi<~?!XAkpq>?y4N|)$|_7D?7E9y7JhEo6-ZV!)K z_$`D{%rU>)n~LhTfA|yjQ}#*ZnfAaxoE@qL$v+HGhSFM^<#Jr||AHl3Fh~k4>fwAN zOf+P6C551|-DQA|>KXg&a>C(+RhPIX`NdEsoSlN@#cJz)ihs6}V(LPDbh^>yO}PS_ z&!khytkEs;rZd#tHQ_}d$j-Sozisv~EwDF06%*q~CfpBi3!z|5XRYeISDC)6Q0q^5 zH@{h^MzpFXeO)s`mHFy{qoNm4QrE>Fvk&o42tCLRYR^nm1Jsw~x3wt1B>Z;*feugu zt=14E-4=9&xX2$^x)#a+Fj)bB?VGK!w=iRulIt;I#=zt+UzLpQR~k+33#bxeZYWLh zrxUP8NC=ClS}754B%6z-eJ1~?)1htt0P>kY9nm;4ecRKn{40_P_SLV#Sj&Dl(k1U* zVa^G}`|M46I$Do-GvT?#C2(C1&^*bW6NbTc1Kq@RohAr?(QK5lZsNG@Ra)e+@|!ke zUZPoueYBMHhXP(0J*Pj{s>L#1=alC2c&`~pQO1FgGd6i5<h!xQ?@vCoM{(s-!|YVL z9Q6A#s46&Xv8B1b#FC$L_k!*)WM_ET%~y-H-um+O8goV{KE3!8<hnkA`1B|+e_%dN zm}ec#V~PJQ4znQ`gy)FTi>=8;KxuQA9i)Ke*eyhhC-~3jwfV`tAb3({gYeRmXcR*s zAv9?7Svoa1syPavjiz2Wuj@aD<F3APuV3kbSMd$m0EJLd@NfR&0h{5ZLUqYmcpIQE zcPP~(i~;(As)MozVcXj!VnJrMLM|0`=Iw}!!cr14yT5=AcS3=$?LDpqAG(Tp#GWw} zgoCU7M~mnq>gl;{_ZGnpjVP1(Vt>RL$R@@{{i^fyfl_h*EjlYA^JuDz2vayS`qO=_ zqc+W!*i8e0<YWrIjvPsNNUyanHhBqk<K5t}DXOE9&jB$QqCO~Fr-Rchbq^>g6#^3g zzG_*#2O;U$1ysyzT|pq@3Mi4g<2>v$CK9Z#57|H{CwIASiou?)N}<0HujU=5k#uOL zt5rkypr>~@Ty*3{ic57m_d%s6%jVuiHp}$D@n(EoKT*u0ha}n6Q}oG7DRpKRZXDUM z`+u+NT|=3!Y^ob)NXzLLo9wS3H4Uq~XlAIAAX?a6AC`f#LM<SDI~pOaMyv<$pwn@j z^xY8a<y*?Yrb}yRj~NN5+}U3Wg}bz5p=!8hmXp25db=A%h(^K{xLx$$v*(VWTwsSZ zPbLh7(34I?eUl@DT46C{#^I<L&RXP*FXiM{E=-NCS3-3zhP{Sob5tH$tU5fgF7}pK zB8-e;@#K8wz%Ko9qEr3ik9h^swFEj9DX!?$@W`~17JwPG;2H353r@#(w6tD_O5m>$ z=nGf@EV(f7rr%d?=zT7+-_+)sYAz$Y(nk1+ErHQU(DtZfi>+DF(QCqSNc6i!1d@`` zpYiK`MQ`H1c~5wZyAQeE@SqX*MEKq<DIvA@7l@%zSq*!dukH`I^@*kvIq}M(&p~wZ zLuTsy9fA`bl-e^R85E?pdXX$PE2*8(G2rI8Tt07m7&aYIKd?mwplrF_wv8GbdbSib zqg@d*f(F4zDC41MK~mhB9BahWT>~<!)nuRBS&fQv0wJJ(v0m!u>`IxhhD#AM)D`*t zNH{wIuH%~LST5LGcKP^y_l5MR5<Fs{K<yhj(pN&9@oyX!=i-kp4zMRIC>8)kU(SMp zkqm@Tp8<;j3R_Jp=<)18(Slwig#cH<qJqVVHUp{_fhY=O-KCf>%#k>Y=rN}eZ~B-7 z2imPEsd_HY-14%Y^*2TDzP@OrT<?nd!x<SO<i^AKkyttCi<g66PD+l^9#I1<uB8&Z zW@!%HtY7?+R+)1txon~o@)!JUv><)u|8}W1pRs=jpPdDtjaxmfTej1R=Itfgf<vw! zL53fILfUPcBwJd|28%od*eWOp0@gZaT2{9Q@@4CoM~Tl)$3yw?NLL}1&!zp*Tv#=X zT(7^}8>)NjUWYSodZGbtx<RsdPc+ioQWRGq>*9tJgp7HN@a|#}<`^o2cMLMAcgN<f zlGn_Qd*WT$LM>!Q^CCBLo^lQDqCaZ}UE^ApCwc(Qz`iRpW~<jx(p*N=?d+|c)?9v% zp|k4S-nM0^NfJxoS{)b~0*0a#;o4f>KU5m%mB6N#v?eJN!bvy;fukSzf>y~+RUWMk zvDYGs5*5iI>tY1{JUocEh{i8)=9autB4oKxCiAL^s_tyo43v;C8LlZ@TC3m0sW~rv z#*LsUiF5?_9)rImOKQtIqf^a4c=5;L8g$?tSY@KK$^nyFA1sn>Nfdbqr1*$>O>1C< zNiU-=E_oF%Qafd2Z^+%<p^I*E2lk0kU5`XM;-|O+kw|hX>V&JavJpUscYiu_nOc$E z0Vy_bMoaOCyK0a|+SRXSv$87{(ZrnQbM83g^u$=d>M;tc|0<GHMRXNM!;zZb!JX5G zM7<ht+G?kcwoO~@TwQWR5@~<&t_f0Do+HL159#rM!})M#p~80@va!eKfxQDeXgpwU z0S(myb7yIr%WwxAk~ENBvXE+hvuz1s`Eum!<t!5RJ5lEGxfMAzsX4}CK+WVnphT~k zzFfbHn=gY80>0{!&2lk_9FwAmlJ9QBm=^2=^~l}zaBQhhb30xVX41XnS^iH%0)C+c zt(6JsmsdNKPBLm}NbK}XZ36(4k#=Xasik!B(Z`RWk;3!V<-U?>?k<Gf?9fy_ixl}M zne+JK*x1tA%8cTTd5^zk^Y<%FC30-&pc35}?b^E=dh^@p!~R#`_>gb|R&a8yu9Eh@ zgjGVB?W%V)WVuY0mK5^z4eHaeQ!S){@>T-LYI(dwBb&opWbw$Q!Od(6*v@@YartAB z<Z@82)h&PCA3Zr5iVdb@)`QZoETi*JqR0g;>fYVvE`O&LGLVzSyEuy)+7@5`Zal6k zp>k%(H2vmQ0Kh_usFg=!k!eSd6Hfo(>Au$NDO2f|*~bvTTS6>(4V7CNNaUUny8f|S zc64{Rxq9P`O2pY+E9CYs<?Pr1G|K{GUj@d7t*+07QKUP_4}eC6vjU%)95?(75EE{( z9S&?cHx%ZDJD3B`$m7IBOG5!cP{>2b6;W|cQoVgnB@|$4zH3L+Hj<C3IYWOur&^f7 zo`kgPMgH{jRyEG6sL~ZEyGw~3A=^Myig+)49hS&$d*I58d}vE&vEK%K6OcOWO|Ud8 zbk@shtZ*nq@LIYG@Dk?$Bm$nmQlNlVV$N+kxowJ<qal@ZwOCgI#om0<9~}<4gZ^wv z*ONKfMS?YHmbZ0^MMJ;ORG8MSvz|hx5;FTeE*<tLcjx1dIN5{2i$7t%idFB!s&`qv zDCD7F0eJ=cI&62^vVgs^9Yx#PwzFa^pTaoHO3-ZlKyBF68@k&c_Iq7$f+1wdzP)Kr z*3m5oRhQ~ey1RQ1Z3K8K>J6mOOCm*T<spyW-Rtf{E!Wroh8q)V@dF{#mq8^7hC%c6 zM}rx!qCr<mFg3}+;o88w>`vrOZ`LEpp=#cAI~=+i>{kN0;@L@0Al*aIk&m{A-)?o< z)cl}H%L-5k@mRW*2BYPc0NNn&9`vH+roq-(#IcK~lv=YzR<*)}H^f!B(XC?-hY^sR z{n27iq3PiHJZm;7dB#xo8T1E5Bj@t_C8vnKJRBC)8w*9o=6jf9(Hn$-aXmBRPZU#{ z-+cT{l(O--0p7|%CBeKdW4Etc*Gaw%^=<FaD60inc-hi8@S!PxDCf#VCtAH_2Pvz1 znR(piFJh?e8W}*h*-j)~k1>6-bwB&WY*bMi1A}vj+0=4KcF5r%a#UL$XrL!w>}i<Y z8jEClasinaQikU9yZw7vBJ6c~xak*D!<s%UE4}raT6a~h8w<Og!OXPnjxKa%`ig<R zTLv{xsjCn$q_^MOt$94|&Ckis9x)#t)sQo}+fN<<QSKY;Q^GX(5;<#%#XAPdmX#q$ z{EKAk61Zf#sP<`T6yjbAhu$BH1^mgW6VuBaO*4vLbu?q!kVP8te7S+rs3^M{@!({) zR(2KGr>dF!%D$1;%}klz`l-6<jf&=m1&a4TIan?D9BT1ZgK=NQ+x_;0S<M@s5Ow7d zrJlmtsk&5%Y^~j*!HX6J>8Au6PT7R)_?HC9OH#9=FEG86O+bzgJ)tPvf7Trs<2+`D z7kk1QD|m}xIFdajf8&tis?EDYwZhy%uKX-Xbw_a&Emw83DwPVAEE;wa8Og<-^tfH$ z^Eo38zj6O~L)IH9mp@cs&Z+7z)F1G&bRwCWo{BrVuD^`FDRbGw`wD@+yZc>TwFyTU z>5IExrJ|A|<be|%+<OK%X{o>oY-NY{LSc&q2@f`HL9lI2Xu*l|+dK;8Vj;^Ss>Qf& zp5LbSB)2g~wn52{A`jZP=vMP%E|*xWcQ>IjBMqmH%yP*T2e_CB_skmz2>skQ*f+4N zkgPd;qY=H3s2~RhuhwI@3o&OxajQ&@g=@1eF1ukJ;lVFD5!v{pp1xeVCuH{e;Ky)p zL;C}l#}i2`R*?2*`ebi$s^;O{zHq7s!M&vkk(D)X3lFEnxDiP#)EuJ4FHQC@z|AS( zW|{WhfY+@^eoK{hB$NP!inW?4fs(<24%hq_;tyFM{<1N-#V=oX2TrQq#lE4wy>Z<i z3|DP{Mbqm=^0qW@Vuwz#)|}N}QV|4ua!>@Ec`Q{B?hbm3T_SN!Z1Zk^|KUii?vCaB z{tnQ1ICriLXGsgjUrI0RDrb7T{ah*DIzXBs5)QC;yjQX86ZnRG6Sz4F-1IWy8*l=3 zK-j|Fq^QIK4<KUa2OYn}EnE1p`3cJ1(vu`zWTI>b!Y<E!*N{CimpdJD$iBELicXi} z2qbD7D@n+7zUl9pa-i@L;GP46*tnO726fF{&CBTjRJ?_rGyCF(Y;;%s=sa|zhsib0 zo<(5iPI0Y<3Wws&WCyQU%oxn!DyJNh&a{Dp=#>ZuWqDjvWM`^UziL;)>vZ}(8a3gS zhrt!7%JV-$k2vK_a-;#RdJ#kfF{d5(*eD<uW2<a*sYxDY3>pML0tcOnbjNbT13nyB zFXXSlmP!;Ow;K_5^ue=>b}u;UHFCNVUt6SB`^Oby7aF<HH3pN6ddF5z>sE_9^(xyf z?$~i!3D>*Oz)aoq7rudBMf3_%8<-3~u#P%d0K0zzLIR$1JYrDZq^PLb4AeBbE?cdJ zwbGD@0wm7~fsBYKVe^U2x1(NwFjG?%pCq#ny@pMU^Ua6Zf4~l-GnGFFc}1pO<QJCq zVTDY%uxafZyVMyqVC}(KnyMt70`0+}$7~xF(kH|jc6XFjC$c>;$c@cy)=3q~L%0cq zRI<D_A;^4^i$GU{J3CD|=p1^<cB<ap3*4o-_|n6bx|=ObY2k=t@)gMJ@&~#2&_gH% zi?m<X=fh{<@*^^rw7^R?UVZ224LV8=*B{-uOV1oS4W#O;bJss=egxGS=Emk(bPLbS zbCifKeV?9}fFUNJF_XU!6rp}(lQ_-Zi=|i?Atn<B0TvqOOd#S?!!hK??ght5YA`C7 za{{TE&Tg!KanFY*3@VN3(;3dz)F3Ld0rYS%EpP7`aHS6ij|99Z_xMIU9<(EHc2VHG z4`puHA@EMnq0~iwih*S}KePE9_7!fG3$41C`M<~RPiHn;vZTdm^OXntnneM7*+mC> zJ4)!QdL{a*t~gjP8}>fIRu+4#$<EjjFseVLe91C3sP02Oz)kQ|GlxY-tMX-2m6VL_ z6qE3^vP6B6W`o?;8GHwugc@TU+K24g_7&LE@|P<6$bF0@Xk!Wba@52ZzOOhSKIkD- z4Ydm$SLo9S1VL>V63y><uPiH0ui6EyxM<JC=GRaL<<F`qX2o2TK=J2t@3{7Km#7*} zY^_#nkYjQ4ANenFw5_6N<c%Woi)u?ken#sPDdQybH*DSkVP?k;q2Ndxb{Vz-WAFhH z;ddkuG!+GVmn89B5-w$$A!WgRn9AI_JkZYHrGSHoSE$SK{?5*o@eFtcyDIGn?qzin zcD7j-NVSbRmFr%Di7va`BpK`U(KI_d3Z9|{|CiBMhuC4eW!GixWFuAfb2bJnEns_r z<B>~ES=9T^E_Lbe)Mz`}c;yS<qP;vX(e<yOFEz|~_QH3quGLGO@uR?233XT6@jO-q zwvgPk^NHm=I(vgkFb8|FBPJn-hE$7^&%#&<gVc3F+?Ykfk#!<h;@^>~p>p!^2jxeY z5}qDiYUYoBB6L+@0GrZvF?fvec=o%S-vuj-{<7uYiY&nrA}Yd?$I#dp^@_GXtfQi# zZ+=&V$Z=PoGJL!RJD=#j(o~)7d(_*2z{}~A*fMJJCKy3czm2Y3&_4lP@o7|Ct^`E3 zAD5$sFVcIIg;N9Y%WX9n4q1lTitZ7aP-sgbd<YUlH6s!{aE^5?DG=!Wt#&=jFe~|* zriihztDEt0Xmv+q`bakK*RwsUYzA31JzQHXE$`TVbVu^KuoGPkj^MnhsT!23pR3OB zWNAtl9ZnubiZW1JkM!MJ#AXO3RJ$!}aL33Yr^+1MkP_+I{1cmhfqYhH;}Hs;LF`^s zxRy>|d1A%g-8~o`=}PM|Gz>a9psGI#9NZw>2@P}ejVG=e)~sEfP$EPx)M)@x2T;({ z`b!%I?2r>3Q$WYh!^M!@NkiCyOG{fkO;of<?+^;Zeuy{F3=7XruSKk$A<zCRCKmNe z?d`IIBe7_#-0z7#d_;DI(L4~`fv#61&g?*!?($YMH)4N{<HQ5gzTl1M{EZyQmkO!c z`D9(cs@gxnZ*$qr#uSrUo$s!^9)#2DI69q54IcF&9n7Sa?TuSI@Hc`ux%+_O(2arB zhQ`-6_cPW{&1fUD%_s_+1NVQ58$)9U>b>AE6S#c_xV;DbwZ}#Jg}{U#^Kyt)iFG<Z zRHr1r-$E3L5#E9Eb6E}sfOwZ4KvW|ZCJIr~?Qez#J>`4{w<|{`mvm&g(91zv2V9jw zX7rUu;;NQx$UPZYYiR07Fzkukx0c6t_t48?I{aa$lJd!-($yn%>rQbv_L)EZQ&<!6 za_q`|AN!`{E{$Cq5A1U?hoLKI3c2dlA&nnH3)s)_=rJ+!-g1A~?1Lden~65zjF#$M zM-y&fbOk!dL}&Poz-ZaB?xivT4V)3Y_(5?I{Myk=mQQ2hlh9!?ti^UAIMz+Nh<@lo zI@+O%b&LYmZ4M<Y5+(2k2{b>*Vh|o1b1_d+@0XM`HVI)r_GoE(&)D#_ySn>^!~13u zet*EoGrv=IM&SWrr)IGrife0l`-d}T_I1UYD|5@cPWYjk$RLH5&<Y^!9i@IQu@VYc zTMdjz@!;MbM=BGmt)>RT{!08%ed%anbx&84T2&;6X9)2Oy1!NqU;&z^t6ADN*I3^_ zyRW(H38Slb;ZPx1>e6MrFo#o)nO}*>V;FB2(Vp2q*1O#i0PY9}0W;K=1t$a>YK?Hy zIRd=o%4LfI;euPp-cCeA&y@#CgT1niES45M((Dy*g8E~$HCamTb|UV?Ca#D~`6b2K z6I18I;-Io;dGQK6U)|ds%M1^yF4Xh!M>T@k(855}M~Um*Gs#kN&sA<&W!_si+>wKj zX}?RwJ5`KOdP&WTJv(#Sn!8Izoab=leWjj>Y|gX0IK7)-52H7I0$M(Y=tFyEwC1w< z0RV~F5j85SSuPPNeGAYs`ht-^4ATTlV8IJG!7a}Sywk!#2qYmRsk~o`*JGjDF!xAP z2Zrme=9@S4_*zMt<|b>E3d$ft6Zd4$Gq4(yXBiu796u}PdnyM+_vgqFx!-+cJm)EC zY<ax@>Wr(oa_yTvd_lRO(5A5Rh9hFiP04-hVejTo9kO?L<}KGLqj`5)RZ&Y4oEN)z z8npw;(^g2sux%!{SlU|R6t{o?M-y<Jb$8nE3FPf|5FS;`gM%;=W)yuxUWN^8jG69* zX8oWSobL|Ep_8LVT&Yi@z96f`W)PhO>`8PLmfrs!pKD?1I)|9hmB}~zO+9#Isy;s0 z<3RV3Z{|2Wl4GmmQOW5&akh+bh6@GcYCq4vhT7dCs4_RwA4TM3_0&*>5;_tnCw13> zhnNsvIS`H?4De&StQ0<PwLn2?OQ0N_zR$;lC~pU|0ZB`Fv{U&^r97I9t3A0=A6f;k z?3!Q>5!+n*ikioF)-X4Jt6q%<V<nf@)UV11_&fb+E}IFN1)a|7ebuGb$s@~Yx9Q*8 zNJP&pr-PDD-9IQhyIa_36q2+H-|8C<#;zaCjg<>h=2i3LTgLHTm5<?VJ~N=q1d<?I zux-OdUPcN|1Z^ZIP|0nu+;r0Uod6Do)7EaJzSzeiE{ChoINF~@AmT_jOn+Dp`mV|8 z)33ihD>~g$Xnp!nt&nj=buAo>tq*$^dc*8dPskC^2GV|?16%8u;&O&`hfA%D>>gJ* zw)t0^wOpf8^#xT&G@Xm(>vGzI^;c0#|1)S>%2f<WmbW))y^+9@f#4A0Ln4I*12C>4 zepE?DERznJ*h<re1dxJ|P%2w$*#@drVqH)R4j<mSLv3X$TD4SvDCXi0b2uF~9K&Zq z<{rnZ>R!<kt7~RF)N*MsP3f3BT9n6Td?(!Db9)>Lf5>C{9k4^upzNj&SExs*M32+0 zA(dq)rMK-J8Mrzp_xSq_Z!FXA;hHa?8KTF@lYzVmZRY5GpwYVe(^c6A$b)!$%)did zQnnTwNB^tZ2Pj9Rv;c;JumWj6ASFUutspO5{jjR9R*8|{ExIyplil~Cn(EI~KQ2`j zjm?S@_qkN|y`9BUcyoD3)z_ixVnR10OaGllrI0|p4DN%H+olT0WXThe0j<q;Rfpbj zKws4s5(1W^0fuB#=xrEEmAPv;cV#slR;$TDy?Fb?s|U0BMn2GA-;iDIy8L;TjyTP( zY9GRRxjJ?>?tT58i#LSa>ETz_2fy^1x!0YoOx-o*M9{W-_n-OH2PWoY#>@h6UB`O& z0@w8ZFm$>iBes<prwpIvNz<zUwhr!CHQ4Vno`9pL=#+J3tUrq0XhqgsN+i=N7nQM) zuIDN`m!s@C)2-xx^;A0Kbv6?z*jugzijBCx7V>!$s~^eZEjA>t{jiWdSPAVJQD`OT zB_IpYBn<?75VPaQifL?5pA-#xNx|A-3J$E4Bu$|?bk3U9VR@_Z{IEN4jYNf%Y*tV8 zSCX|ttq}J|xt<(UTiBfycqj<Z%jxlYqkb!o8!W~Py#tDoID<-3I4)X6v3nd;Q*k_u zkXj9O6}-`|XgO?3n(V156$f|E>#;y85c0dDONOKw2a55bUPl@Ih1S-s6KAaqcHhMx z@j5yuN`N+Gzb_3QK5Zk!FN8DDI|LkH=!h!CZUE>*KL7Cu`#SR)nm!+OTr)mCK4F*z zO@7nD{AnqWR(1X>E=}y?7e3GHF3sWgUE~W33%iVr+fW~!h4~9PYv?#)u*zLlU7zwa zUg~QOTe)x>Z{<svC&UsTz=+vmcB#^X?;WQF>qOm1Remzi?Q{h-&1<>?><O!Ag_p0* z`OMy&jE$|Xlskax&d;{R>O;<Ob?{JJbNgI6UqaQ&<1&8aaYha*z9IE3Z+65xb)Cz* zVRcC#B3Nn{H(~3aLpBiI@H;wnz#U)*>u-mJZSbsy1-sWZZ`bJdP}5B>@<Yfmp8i0} zRdNO8uD^X3xZ2B<O4V*{rIa(;l%I5J%BMa9Pmz^>_vX6Ktpy(b<ARDfkU!aWt7wWu z8!N3Uh~B$TL4#k9RZUU0nGM+Jf^Y|sYX;-eYf4CS+mS_x5Db%q)V%HS*}5DYLCV}> zXPet?rwB~aF;nCQB66m07?zlkgi2>h++0Ax5V|}S@|H$)Nn@?3FB~;kGN0;=xfYTR z?&=nw7rV3BYWf&Gq8xApP5wzXi`<B#Cs}cb44Jgj@m+Y$$GuC?@L`yBNeoiwm5-?| z|26e=P}R`{q_~|v2!U8$j+kyO7hwBXuwKb$6R6?^P-cZtIQSAvPa0vDJTy{HAyuUC z(%{6kQ5kPCv^?bhU%N06EkXlLuqQ2#p+5|I6|EZ57LEr|7=nSdObm`uiMM5WbgJzz z*xIQ>tBwk1PbPyNG*>Y-BA)~*#aWk;4g>AWIW5zb4#Brn3@>^f7G~8y|9}+8C{xp- zkyeYolx9@t3dX|80779;(%8HhPWWV}Gx5GVB8t}&(~zPvuZR1i2GdUNTk2a|GA&=b zi)}&@($>!1O3vE33(4;I+T>}6ErkkVgQ0AfL7-rZI8hCSER{c+<!3~1dDj|}86jhE z`u^2`+nFzg;!%h;yDFE>?+UsjKCPN56-vQxrF8aor8RI2X-MPP%-To7awLA+Moe?F zAMfcM>rJ1U&vzH{OC%HNi|=6X!1_iY6MeK}KWx7>ZJU=ZB|}J5NC{fYA}I)ktz#W2 zu%P%WU&!R=_!zxN?9~T@k$N@+9p}tsm+sJ6g}+-e!q`LN3--BGMGGy4P58|FS#AL@ zKyWQz=azg<x6{Ma@D(jdA4p;IfDz4hO+$gZ;F@T_Wg7f24t_`oHF(J7R0o$GkB}B> zyNmhG#!+-GZ&`BKPN>Y*(6b9iqOoHGkraFETp+ECjmzfI;oaf)UoqBQ4r-P1P^~-U zbRM4{92v$28Ic)gTE{!E`ffWqjCV$5S1R4>#Yj(oUuCV2u;;z_Z^*+uDO7;HPFD!= zAsDgqU{Vs6x+6`}!B`IZ1T6Yow&6s3PH(^5D#6GZc*9mRkWVQe{D2%l3G?GDo#Ara zmDN93SPkIKYuXUrrla|1d~vFjgj_L7?|tyYvIj{Os!F579aU+1$Cggkdb^@-G1j)s zfV0RCQ@5JzY#|}NcgbP{PqtqQ?Zv(ojrl#n$u*zpe!|N{t?)B_1JQwaw!4mUVP9V* z7_96KYALrQS@ree@>u0HDdl#_6*g+?msOLG6au|nR26(pZ?&%ZZrU9;D+vReNJ2%@ zK8=edegpV&7~S89hQ`p%dO1uvxD;SXi}<8>tpU7m+s(G#onpIh1Y!7+K-ql2elk4H zeS7z;B{Q*%m<YIiEwUwZt8#J%_Oc#zFxfX(Fi{bUhx>+lUsLbuKbCO29d6~7NBRuT zp4&g^_nz6mgx9b9hA)IZIoEHJn;lqR3M5`Tqe=Sk)rnBl(@OZ5KXj~hW3}{amHNtJ zZn?&f^o>wAYxLp(Uj>A;8?j0qAAZZVunh__4piyvfMcg1tkNf#2yl03S}t2dJIxA{ z12m9`g1pLnKub*T%{g7sIIQIVLLZ*V`Th4fvgKUJ9YcdkkY3J|^LstcL+NC<L;6b@ z8VnqN|9xty5cO#aln?g2oX{n6tjCicx+eA$5e}9pzy9IO0|(|J*f5XWO`xP{eZ7xn zm4C(lIMfHF*FT&*x7hELMLlP|ht`iC{`=uqT>~hGy#%H0y4wD<N&X~AMpXmI=T64k zc5w+-_&oSc)|6^GwwF#Bsh?rxU+L;MYr9MrJ9wDtYrm=l&FNbMDlud!7=;E@<1=d~ z^l$__l9gUneLqu+FU8R8ll6R{@BY%VUt_!3GU@{Qh5JyR@ZU2R^Y&PL8p+o(;jS6; zz|0j_UqcN7@-v(TU+q>4XI{+cptc9P>nh0S3h>~t<+H=7P!Z)4k<4~2w*(U6c*%vf zs!rSN0HSZVL|l?oj*`8e7(Q->SFp*dcQD|+#TguM>nirm`F1&3PnV(83us)><EkSq z>OuHR%o*)3=aE*;;tfWS*aJ>;@5+0V>OQWv4EdeazEk@{vgC5;;f?)@r#a5BsmWjN zsk+31Zd9via}s55DP27f4)&$Ic#9Q;ms5W)A4JS`5d9$9GbfJJXs7>nZ<fWTcB;ZQ zec)#(Za7up5PYw4ho`rQd>M)DgTxxB1(ZtQbSp3mheA}A8yxufTrv@kB%)zsA~m)$ zA~}7|dKGV<LUV>L1sGxiJ?ISFI^5OsCW(imKhuJjuC{oS#l;ZP8fk7^t6-yB_~cSD zTpK*HCPkz5g}ECjfp^Qk(Gdgtml3B+3G7w8`s2m;okqfU^vsJJ^ag9;=h@e~i{a3G zRyB6@VAGrKyk;_hv@PCw+T?SPjRtn^9YAcldwygn!YDSiEt!?6-ZHb0fewqnv_Q=9 z*N#LWK<E-e#wXltwJh0JidJtx9$Z4)grN03^e(IMiNwBu{EizEJ_!w?kPf_M%PmhF zcFEEBnaM%CNNZyAuO|o9zFw|fI}}K;`$ziVLG;$8p7?DsnYW3@f5@D!(tb0t_MVV( zVx41m?C*e&oQng#SbzV(p`cF^|M|k-4Nc3R{$1`plstBIV^ZUv`ZO@*ZoCOS9~@rY zPsA2%<^bO1qCGR&3R&4lOZSogMqpYZK?~2Kx@f!FRM@3cgaZIxq7fS?TgBRK<zb-> z))kdEOP_rGDtEA<1iQld=q0y~UC*3SAmoggik4f=_Gn1<iqiZ^2m7wNIV?~3)u~dk zcehs*-EL(2m}~#+@Th)o@8HtB!|BWK@bjWBg=G?{^c$CAI$s<^_vo#7*J2}+Qupmk zL=S}$H_fQ1F(D<bieu%Qb{_!rbLf*Le{k5^<+w1`Yd|)vE`5tqt;-xjC<c%nkXjy> z?LZKApaQWk5WbkXW!EqR76T~z+OGMkcZa9=$hs0dh&R>2WnhZK=pDJ&@8rloW9gc% zn@eA`d`I2qEoX|QQt-EXhHHNYe(Jc6*R(xsk3-iJYF8+(yR?8aXcz`IdN@$5{|fn% zk+GRVSA(2MX6<i$H7MJFj!RqpnAXCrb%9ICauNB;wyg%d<gZzWa6+|wxBNN1FP!zb zGG*FYjY3Mf2QS-gPWEN5pX6O7^dRzlNm|cJ=UstMd^_8{l=O;9O!as~ojMiQrdG$R zV|W*W$3#WKxsI}wAN_?^zhNC%ZwUfi!pl?&vDucbAw=7&r5cFEhqjOn4*k~u*>)ZF zK;*x@O-EqZr_*G&VSVUsP_5lLVD^x05KYo+TVk<g`-n{tHEg|btz0t7F*A~qQ(CCo zDV`EpEMPX$lIU?OiF73zLC&f=z)o@RO=Ec!>D~}8hRhtgPt-<EW9Qt8x62t{Ms-j0 zRtBPY0}>yodN=QtM-C*Sc%voxmx6GM@ImM-`h!*hR7u~2-w8KDMeC1=+8+I^2yYjD z!fs_><Nf>>`9F$h#6OaDNq;WS%O6(`DSxlttsT@p>2NsyK;Nss;C!X?E5;GyFI>Oq zHr?;@q&#o)?)5R>Ip05-*O*`M$Nlg1|0J*;_;PR{_^#k)=q;hY3BNA<za!1aSEJ+6 zcg2+0O|kF9XX0N;tR?;~c^W@|n9@@3Nek&GGrKZRX8W`MEBD5HA^*XGw{UaeFNzbz z=Sq>%ZKY?*)$+~dZ*--)p6U8Y_iFctyEl6ldmiukQRPhKTh*(oe_T6T`|IBI-mmw? z`)=&R|3+ZJ4;)DEeg41+&-jl8kNEc;xVJyBXP|^PfPD=IC|0rm{1mc)KWra<{S==+ z63X~@4F9V5*Molv{A+Z^EqqpJ%zr54`M(Pp{uQAijtg1-H$s{}B&0<X-=~B$dsc|? ziZCJ`#PN>^N%6}<Ud&_spF)E_C}hPjKK~upoe>83k`P42b(}8>O|gxC<3fZl2q_#J z;XWbDeoN@W|C*5F8peN&^?hGxvA+;>J}uPQn&4-@gv^)&;~t?T-hz9r3PJW=A;<px z;<wpnaLwoO{ZE8JcD>-|<Cy<le16p$=W#DT`y;#?4Y2cTvHlsMZmsbXLV<rz7$jIk zLm0){68smjuG0eEl_9L~*J3?GLYOOplYLq!U|n(c3E=Est!L%gN!({z=*M+^{7NCr zekjy%-dYzQ6-;!Zh1re3#~5(+jNs)7tmn<Z$?ZavKZfxwc*n;9z;Z;W03S4ej=d9j zn8kWud+|p^Z~nE5CE>XEWzcm|q8``F|J)*Q_G$K3LB`B;{L?u3xc$lgO6X@>^tY~g ztswlfSNO+&+PcBY*@e@{rDy)8C1x%T3&+7Tf1VM9w_HO>s!xJ0f{?MEM|UBK3*a|B zKOjiLv-s@6c}dXmdqg;nH_m-Pe7pE=@fXGSi60PuRs4|n5%KrMKN9~`{8#bEf8GB# zt&10NO$Pag8Fa{fKzw4y++P<zES|^QKe;sb;&(27^WxVoe(~Z5UueJZTQ7X{g^#@O z;TJyi!mq#ZYcKrr3-5g4i5KpB;qLTUYRFm<Zv5Z*(-x|kws3THVJ(wcepYZFTy86e zkFT}|;_a@r^|P6CM_1dtxbaC1qI2q0{$xCxZ3}B{VJ<)a6rMA;K3i+EYCE%jw$|p= zd^Vr0wZ&@Y^wVM>D9p~a{d1Z1_1W`0FgJU?D9*L{+>v`TZ6lAt+{Wp)v~urLu)?@a zJ9{RPrK3;bUFNfi42JpHr~J&1bNRNgvU+CisSu-?wYF4ki<Ne8Zk3+b4$aMVCd4zR zGwtVB+EVHGQ(eq8w{U8qtt_l&+hTF;(3Pv096z_3X|Jr{(DYh7(;lYL@Y-7DygeH$ z>cXMUw@kZE=j$}{`IXfSuyJl9)7Dp3*Ks66=X4qk(P(HrzP`4$76-Q4#@wm4aA>tH zEYsvHzQ>o_DH^4gH=gwhr)b8rvT$;3?exZ4n^o4<IuNX7P6M9&>{_iYS2GKlwp82z zOzPaqYFo|Ewzd2$D1b}WYi-3sH!zVoeO^5|o1v2gZrolz{ciL1g;Q<0CySGFnRA(Q zc-Hy4Tm*&=uCA}dHx8|>=GU@onfCPIRh)|xUOG#uwbg3dF;}7g+Qq`UhOhbAJlG{a zyV2$+&$ihqETpaW)Y^_}hF0qaSdwrOQ?TCY^);HZK5wm7uRi5)3v&yzJ=tx>aaJ#9 zB*VT7t6&Lp0DV2Pa4x?=M75AD#EBs7OdN~cS|v!E-<Y=_;d+_N+XY;Oi?>1Bd6Ap= zKR^4l%Mio`kSLzduJwS4J=OD^FSJi@%-7o9DnQ6&+Mc;R1Q`aPP}@u24&j^EqL&Xh z@>)pA00*bA@V0MmJ#%h7)Aj*vwYFJZKC*gVIz7KuXuHnj@2$1{)#Zb$%ZKfQ@hpz} zt>b~}dBL1Jx_aI;=h|#zw(YBs$bq$H&wJ>X7r)vp1X_s2mDTekhd|ftIZzmn_4Z`* zxNK_-exUPo2_%`$t^txotbY+lFDKT^knlX5vpkSI*A^z9VvJe*5UdLLFMSq{thUYk zY-XYD2K%`n*z2>I_1}p^nBc=U!P(ha!axA$*v9#QR%t(0iRZxHA;1`{)Y{?dc}AZR z;F~_9)$<~K#;WHf`ixi4%k-J3o>%BISv{}PXR3N$qtA5pyn{X~Rba!$e_L4xrt_KJ zHoKanrPi+QI2qbL`3n1FZO6&d_Q~7rlbNc}_EcULP5||c4JyI86TU3q%V1qOz(=2X zz(=12z(=1&z(=1Yz(=2Dz(=25fR8@A0Uv$#06zNct!Bn8LF%h!*4vTw43r*QC!W~A zXS<hpwq9-bRoZ=!$9{;yA~^OX1v0-eoF~Qpb7z1ZYwgAsiO;*01>(4Nf6sYz8Z4|r zDH0W%JJ9oTa|WuJL2KoMxSM^Sg`ZUu&^|A@S~@O-K5p5v`N{n7`2iLrSciZQ0PvF6 ztV38fhHLFswKqIoYY+cdQ^DA$Fnt6h5<<mHZ)TBH0#LjA+_}a4B2>^S3?H;EEYdJz z!2mEk3f&cIhcQipIxSk$&KtsP+c{S`bFMd^$&8=FJ;yGemg%+c*H-egTeCCmb<!!* z2Unk#GIA#Vv{aH~YqO+jbtr8-A1lc3T5l_$_T}OV$zm1TDoJzer}J$YMit6Vn%jtD zyuJqg@ZxJWur%oZ{H~4RcpgvK1vv3xJq7oBiHBezq>>dV5fDQL!@+{QXeGGg23adw zgoxiAO?v5BV3zSMTx75Uxzxc$ejI3;*gn<Pp-eKFUHL_NC{b~8>zoCQjp?><WVJUl z4uejs=k`I|bej}yrHF64acbLlv5EMzoVT9uPz##B)}GpWnuYxixz@?Sc`?XaB%X%; z=p`)fYKP}mSK_d#nenyW^K}-0+|FEf_E3D~va_?7o!z>2=lx!M#ay*LTG=^a>!Pg( z&R5%Gm2+S};<0m(^p{&32-@4OV~GnE$i&7a8}l1*&}MDWiJkM1v|dP_4bZOYc^$Tf zxZmRZ|1*|ed?^O|f5XLuZ_;Dq`QdnW2ft+3I_q470v@ewVPy&5#wuB&8R4Y^%{B^l z0|h}_?BSh2!u`GNAxQb2mpQ(S+p&PZ-NKx`)%FNJ_7N5rfbPsL7~w5!?XMC;xAy_f z2dYmA!Y&L}Fkmz|Sbd6FM-E|N9XU*M7IEqb&7r|jnnQzQG=~OPRG)@6oWp1pBiMF~ z)~Zh<4586+jO=4q(mY1TuA+I?=xUm0jjo}2*60L1a{<%V>6tXxpl8zHBt4S`r)bU+ z2B&Eb4bIRU8l0s$G`QAU*E~koS?i+F_13y*bc3}n8r^8Ei$*tD>!Q)k*1BkPi?uEq z-3lC!Zxiq~>sxyoCthI>XE3~-kWSOuv-oxgY%PW~=T3V_bMCU{&<UDzH!hyozUw{K zH|vUf?IB%ppFO1M_v1bj_AOs&4{5>!_K+sL3Uep7@Aqo!n{~g}*h8BBT6;*-UxzCv z?fX4w4{5?f_K+q#jJZ?W_j|qd&AQ(s_K>E(!5-4|H{!}E`+kqwLz-~T9@2!zs!w6l z6+GLv5`PNYwH6RG!IrJfR@&N`wpduXcgvvH1O$LzIs|u;y&1O74*707FQ~Im*Aw{9 z*J$)iUh`lBwLPvW_>Ti<?3n$O17R-$1t-2aXKDBFwDs+i6eZ7}FR(WrL_qMyRr-E< z{(KjGe^wLh1H$}T{Ct@XJ*T}^VAAv(PaUyl;spJ9rl{fn{Brj^%PzjYExidwdj4to zv?9#UTVBD-{aO`PvBRpspGVE(v+T)>KSmdi_5NABYxT42Q(NCL%bxd9%=-lUB#uv7 z^FD!jpJ317dy~Ffe;mT?6!A-F3qsC~asV`Di2py>8FRr9KG7MAc&pjxI%5fW8L2at zg;`eWjFlb7UHmk=u5;Wi42WM9=I~DD+l2e@)a!+7@xRvGiEKd^_N#W|vw^%p9eIYD zHR{JWgPmk&@a`6xdkelD#?0$+<Q9CMLEl;i6<ZqjB17?C-MJrCfUP?Z<H}_`eZ#uz z4DPTYoW>n*#>$p4K7#Qo-uk!?<2x~LH-2vjH{sc*gk6B(7JR4A+p(@QxK{%!pw*6A z_x;)HYnR>OrJiv4jAOX#?H1hhtc=i)`}gCGY8gEDPP~(7L%0i{w_;`2TWcX4-fhhq z#>^(L`Cnn<ay%0z|GSu`XN_Z51^x5_V>X6vz~{aAZsTMUEBOD8B9}k$#tz*!E~DDc zCs*<8dw?0DTn0Ub#6g75yYc%pj%-mdWBp%hH{&RA!_QKUxJm~v5SH(_?7G8%^DORv z53ai1y562)a|rP#J&~Su7skX{w_{A}p=TWiH|)jd0Z0PP-MON@7LRS+f#~wmyg+Na zw6e>eo58B?#=q;qu^Ylk{QiGByRx2yfgs$WwDpR3AOSI60g<4AT8SaX2Q)y88Zk)J zs1FM?u(4NYn;2jH8U9%Pwitc!$u`a2Gqbxhn{;P(R$%=d5f)*rLuV>#2H@HmP$oFb zL%fXF$Jh!9^^oUdR)qvwKeJl~<xTY9KW)UC8a<!ykea_92bsb~UB=IL68^PQxQQSw zWnfjCg*8r2%ENB503Ix2Z?c3nU>|gqA$>aF8IbWRY;TXC^QxgQ$KccxaCQUqwr~RB z9Gb8TP=1A(zlQ$c2HerXICe40caZo8>~TIyPtr5gt+0L*c67MIW{Rfab#|8KaPDND z60|^zv_#94q!mixxL%qvv`Sf8lRj{KZ=E)1leTCZ-nVm<ryVNLE*0TVr$l>N=<rIV zUQt@iwpo-iYKO}0$PAcz$?V>M#qN2m&6N%xqC(g6x#c=?d&K3o&nFG)HHBH;h{bzo zr3?imWnfwX)67Zr_!|mjQ5Xooaqc4e!aR?uR)k{$=kzS*gt1qyxi;^Qfn_{$RbSxM zl_-z{7HZ))2_8u3<3mz$ZF9)f2)G_cfv!e5`UEb#Rf%pI&8i3+x)G%t2L@DPVr~h$ G#ECDig^RoZ literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Math-Italic.woff b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Math-Italic.woff new file mode 100644 index 0000000000000000000000000000000000000000..eb5159d4c1ca83fb92b3190223698427df0e010c GIT binary patch literal 18748 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Math-Italic.woff2 b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Math-Italic.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..215c143fd7805a5c2b222bd7892a1a2b09610020 GIT binary patch literal 16440 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 U-*4>v&?)=hdHw#v3!DrL0I>S<od5s; literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Bold.ttf b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..2f65a8a3a6d3628d11ea9c26c9077cef672fe427 GIT binary patch literal 24504 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≺+t?Nf`n5qwz%jcm`8_u4N8ib7Ypto#Q^B#WkY(z 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Bold.woff b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Bold.woff new file mode 100644 index 0000000000000000000000000000000000000000..8d47c02d9408d34b2a9d566c0fe0d42bf82fb735 GIT binary patch literal 14408 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Bold.woff2 b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Bold.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..cfaa3bda59246b49e94298478d6de3b3208066c8 GIT binary patch literal 12216 zcmV;pFGtXKPew8T0RR91057-z4gdfE0AMHp054wv0RR9100000000000000000000 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 G>;nKVNojrn literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Italic.ttf b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Italic.ttf new file mode 100644 index 0000000000000000000000000000000000000000..d5850df98ec19de2eee9ff922ef59586efe471d0 GIT binary patch literal 22364 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Italic.woff b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Italic.woff new file mode 100644 index 0000000000000000000000000000000000000000..7e02df963621a5e26d53d510f0b4992eebde1c60 GIT binary patch literal 14112 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 ZM6wWJ<I(}?-tpJ|Bm@Wm^!*J$_&+7*r^x^S literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Italic.woff2 b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Italic.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..349c06dc609f896392fd5bc8b364d3bc3efc9330 GIT binary patch literal 12028 zcmV<YE(6hbPew8T0RR91051Fh4gdfE09Vie04}5e0RR9100000000000000000000 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 aFC_WKl&sooIA2}*^<C=LGg3Tbu?qlSkMcDD literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Regular.ttf b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..537279f6bd2184ed32f1a5168850609147d58ee6 GIT binary patch literal 19436 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Regular.woff b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..31b84829b42edae20d0148eeec0d922dad2108c4 GIT binary patch literal 12316 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 DqysK0 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Regular.woff2 b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_SansSerif-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..a90eea85f6f7bded69ff5d40114447a6d8b48cfe GIT binary patch literal 10344 zcmV-uD3{lFPew8T0RR9104Qhx4gdfE08C&204NXu0RR9100000000000000000000 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 GG{*pT{>~Tx literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Script-Regular.ttf b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Script-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..fd679bf374af72f2a183b97b40c9c7e9e51fbe5e GIT binary patch literal 16648 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Script-Regular.woff b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Script-Regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..0e7da821eee0dd05a0a6f0b16c2c1345dc573a84 GIT binary patch literal 10588 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Script-Regular.woff2 b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Script-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..b3048fc115681ee6c1bc86b0aa158cfbbf59daa3 GIT binary patch literal 9644 zcmV;dB~#jWPew8T0RR91041yd4gdfE06`=G03}%f0RR9100000000000000000000 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size1-Regular.ttf b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size1-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..871fd7d19d8658f64d8696ed9cdfc82c821ed76d GIT binary patch literal 12228 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size1-Regular.woff b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size1-Regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..7f292d91184f257054ef77cc1cd3443db757c9cc GIT binary patch literal 6496 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size1-Regular.woff2 b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size1-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..c5a8462fbfe2c39a7c1857b9e296e62500a8a8a5 GIT binary patch literal 5468 zcmV-i6{G5RPew8T0RR9102N#S4gdfE059|a02KrP0RR9100000000000000000000 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 S<RjG9al%SJ@d7lsRsaAXDTTNI literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size2-Regular.ttf b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size2-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..7a212caf91c0007e826fee2d622bf48acbd30dde GIT binary patch literal 11508 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 a^|k5z`r34UeQg~YeP3G~_EX$#+W!Ytlnjvo literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size2-Regular.woff b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size2-Regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..d241d9be2d317f7b39b401d96c8b18836acea0fa GIT binary patch literal 6188 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size2-Regular.woff2 b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size2-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..e1bccfe2403a4ed770c1697ae7c15b9e1cd9bc4e GIT binary patch literal 5208 zcmV-e6sPNVPew8T0RR9102EjN4gdfE04)>%02BcL0RR9100000000000000000000 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 SX7z~8F|1R2%jjc5VHE(*y!0&q literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size3-Regular.ttf b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size3-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..00bff3495fa9d2f98c1c9ce436add6a1bcfe87fb GIT binary patch literal 7588 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 CPy?p` literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size3-Regular.woff b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size3-Regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..e6e9b658dcf1cd031ac82b6b8f312444c55d4fc0 GIT binary patch literal 4420 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size3-Regular.woff2 b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size3-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..249a28662218a7a17ad8bd1fe072169ecb666a49 GIT binary patch literal 3624 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size4-Regular.ttf b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size4-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..74f08921f00f71f413ca42c9d1c90202e672ef38 GIT binary patch literal 10364 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size4-Regular.woff b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size4-Regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..e1ec5457664f438ce5a1cc6dd8409bf60ca7804b GIT binary patch literal 5980 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size4-Regular.woff2 b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Size4-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..680c13085076a2f6c5a7e695935ec3f21cddb65f GIT binary patch literal 4928 zcmV-G6Tj?tPew8T0RR91024p}4gdfE04S^g021l|0RR9100000000000000000000 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Typewriter-Regular.ttf b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Typewriter-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..c83252c5714c71a3e0ec62195884167339a0129b GIT binary patch literal 27556 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 MzaRX}iWL5T03x1QQ2+n{ literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Typewriter-Regular.woff b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Typewriter-Regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..2432419f28936aff53ddfa2a732d027e6a6648fd GIT binary patch literal 16028 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 WNl-{k0Dy1Nv!D0^==&Rh@P7crHc6ZS literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Typewriter-Regular.woff2 b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/fonts/KaTeX_Typewriter-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..771f1af705f5cef5f578b3a1e7d8eff66f9b76b0 GIT binary patch literal 13568 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 G0ssIW<OAyf literal 0 HcmV?d00001 diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/katex.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/katex.min.css new file mode 100644 index 0000000..73a8c0a --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/katex.min.css @@ -0,0 +1 @@ +@font-face{font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(fonts/KaTeX_AMS-Regular.woff2) format("woff2"),url(fonts/KaTeX_AMS-Regular.woff) format("woff"),url(fonts/KaTeX_AMS-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Caligraphic-Bold.woff2) format("woff2"),url(fonts/KaTeX_Caligraphic-Bold.woff) format("woff"),url(fonts/KaTeX_Caligraphic-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Caligraphic-Regular.woff2) format("woff2"),url(fonts/KaTeX_Caligraphic-Regular.woff) format("woff"),url(fonts/KaTeX_Caligraphic-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Fraktur-Bold.woff2) format("woff2"),url(fonts/KaTeX_Fraktur-Bold.woff) format("woff"),url(fonts/KaTeX_Fraktur-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Fraktur-Regular.woff2) format("woff2"),url(fonts/KaTeX_Fraktur-Regular.woff) format("woff"),url(fonts/KaTeX_Fraktur-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Main-Bold.woff2) format("woff2"),url(fonts/KaTeX_Main-Bold.woff) format("woff"),url(fonts/KaTeX_Main-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(fonts/KaTeX_Main-BoldItalic.woff2) format("woff2"),url(fonts/KaTeX_Main-BoldItalic.woff) format("woff"),url(fonts/KaTeX_Main-BoldItalic.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(fonts/KaTeX_Main-Italic.woff2) format("woff2"),url(fonts/KaTeX_Main-Italic.woff) format("woff"),url(fonts/KaTeX_Main-Italic.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Main-Regular.woff2) format("woff2"),url(fonts/KaTeX_Main-Regular.woff) format("woff"),url(fonts/KaTeX_Main-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(fonts/KaTeX_Math-BoldItalic.woff2) format("woff2"),url(fonts/KaTeX_Math-BoldItalic.woff) format("woff"),url(fonts/KaTeX_Math-BoldItalic.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(fonts/KaTeX_Math-Italic.woff2) format("woff2"),url(fonts/KaTeX_Math-Italic.woff) format("woff"),url(fonts/KaTeX_Math-Italic.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:700;src:url(fonts/KaTeX_SansSerif-Bold.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Bold.woff) format("woff"),url(fonts/KaTeX_SansSerif-Bold.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:italic;font-weight:400;src:url(fonts/KaTeX_SansSerif-Italic.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Italic.woff) format("woff"),url(fonts/KaTeX_SansSerif-Italic.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:400;src:url(fonts/KaTeX_SansSerif-Regular.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Regular.woff) format("woff"),url(fonts/KaTeX_SansSerif-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Script-Regular.woff2) format("woff2"),url(fonts/KaTeX_Script-Regular.woff) format("woff"),url(fonts/KaTeX_Script-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size1-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size1-Regular.woff) format("woff"),url(fonts/KaTeX_Size1-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size2-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size2-Regular.woff) format("woff"),url(fonts/KaTeX_Size2-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size3-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size3-Regular.woff) format("woff"),url(fonts/KaTeX_Size3-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size4-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size4-Regular.woff) format("woff"),url(fonts/KaTeX_Size4-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Typewriter-Regular.woff2) format("woff2"),url(fonts/KaTeX_Typewriter-Regular.woff) format("woff"),url(fonts/KaTeX_Typewriter-Regular.ttf) format("truetype")}.katex{text-rendering:auto;font:normal 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.9"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.27777778em;margin-right:-.55555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.83333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.16666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.33333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.66666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.45666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.14666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.71428571em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.85714286em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.14285714em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.28571429em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.42857143em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.71428571em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.05714286em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.46857143em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.96285714em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.55428571em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.55555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.66666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.77777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.88888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.11111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.33333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.30444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.76444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.41666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.58333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.66666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.83333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.72833333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.07333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.34722222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.41666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.48611111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.55555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.69444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.83333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.44027778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.72777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.28935185em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.34722222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.40509259em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.46296296em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.52083333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.69444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.83333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.20023148em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.43981481em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.24108004em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.28929605em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.33751205em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.38572806em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.43394407em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.48216008em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.57859209em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.69431051em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.83317261em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.19961427em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.20096463em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.24115756em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.28135048em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.32154341em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.36173633em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.40192926em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.48231511em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.57877814em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.69453376em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.83360129em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/katex.min.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/katex.min.js new file mode 100644 index 0000000..18c62f7 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/katex.min.js @@ -0,0 +1 @@ +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.katex=t():e.katex=t()}("undefined"!=typeof self?self:this,(function(){return function(){"use strict";var e={d:function(t,r){for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}},t={};e.d(t,{default:function(){return na}});var r=function e(t,r){this.name=void 0,this.position=void 0,this.length=void 0,this.rawMessage=void 0;var n,a,i="KaTeX parse error: "+t,o=r&&r.loc;if(o&&o.start<=o.end){var s=o.lexer.input;n=o.start,a=o.end,n===s.length?i+=" at end of input: ":i+=" at position "+(n+1)+": ";var l=s.slice(n,a).replace(/[^]/g,"$&\u0332");i+=(n>15?"\u2026"+s.slice(n-15,n):s.slice(0,n))+l+(a+15<s.length?s.slice(a,a+15)+"\u2026":s.slice(a))}var h=new Error(i);return h.name="ParseError",h.__proto__=e.prototype,h.position=n,null!=n&&null!=a&&(h.length=a-n),h.rawMessage=t,h};r.prototype.__proto__=Error.prototype;var n=r,a=/([A-Z])/g,i={"&":"&",">":">","<":"<",'"':""","'":"'"},o=/[&><"']/g;var s=function e(t){return"ordgroup"===t.type||"color"===t.type?1===t.body.length?e(t.body[0]):t:"font"===t.type?e(t.body):t},l={contains:function(e,t){return-1!==e.indexOf(t)},deflt:function(e,t){return void 0===e?t:e},escape:function(e){return String(e).replace(o,(function(e){return i[e]}))},hyphenate:function(e){return e.replace(a,"-$1").toLowerCase()},getBaseElem:s,isCharacterBox:function(e){var t=s(e);return"mathord"===t.type||"textord"===t.type||"atom"===t.type},protocolFromUrl:function(e){var t=/^\s*([^\\/#]*?)(?::|�*58|�*3a)/i.exec(e);return null!=t?t[1]:"_relative"}},h={displayMode:{type:"boolean",description:"Render math in display mode, which puts the math in display style (so \\int and \\sum are large, for example), and centers the math on the page on its own line.",cli:"-d, --display-mode"},output:{type:{enum:["htmlAndMathml","html","mathml"]},description:"Determines the markup language of the output.",cli:"-F, --format <type>"},leqno:{type:"boolean",description:"Render display math in leqno style (left-justified tags)."},fleqn:{type:"boolean",description:"Render display math flush left."},throwOnError:{type:"boolean",default:!0,cli:"-t, --no-throw-on-error",cliDescription:"Render errors (in the color given by --error-color) instead of throwing a ParseError exception when encountering an error."},errorColor:{type:"string",default:"#cc0000",cli:"-c, --error-color <color>",cliDescription:"A color string given in the format 'rgb' or 'rrggbb' (no #). This option determines the color of errors rendered by the -t option.",cliProcessor:function(e){return"#"+e}},macros:{type:"object",cli:"-m, --macro <def>",cliDescription:"Define custom macro of the form '\\foo:expansion' (use multiple -m arguments for multiple macros).",cliDefault:[],cliProcessor:function(e,t){return t.push(e),t}},minRuleThickness:{type:"number",description:"Specifies a minimum thickness, in ems, for fraction lines, `\\sqrt` top lines, `{array}` vertical lines, `\\hline`, `\\hdashline`, `\\underline`, `\\overline`, and the borders of `\\fbox`, `\\boxed`, and `\\fcolorbox`.",processor:function(e){return Math.max(0,e)},cli:"--min-rule-thickness <size>",cliProcessor:parseFloat},colorIsTextColor:{type:"boolean",description:"Makes \\color behave like LaTeX's 2-argument \\textcolor, instead of LaTeX's one-argument \\color mode change.",cli:"-b, --color-is-text-color"},strict:{type:[{enum:["warn","ignore","error"]},"boolean","function"],description:"Turn on strict / LaTeX faithfulness mode, which throws an error if the input uses features that are not supported by LaTeX.",cli:"-S, --strict",cliDefault:!1},trust:{type:["boolean","function"],description:"Trust the input, enabling all HTML features such as \\url.",cli:"-T, --trust"},maxSize:{type:"number",default:1/0,description:"If non-zero, all user-specified sizes, e.g. in \\rule{500em}{500em}, will be capped to maxSize ems. Otherwise, elements and spaces can be arbitrarily large",processor:function(e){return Math.max(0,e)},cli:"-s, --max-size <n>",cliProcessor:parseInt},maxExpand:{type:"number",default:1e3,description:"Limit the number of macro expansions to the specified number, to prevent e.g. infinite macro loops. If set to Infinity, the macro expander will try to fully expand as in LaTeX.",processor:function(e){return Math.max(0,e)},cli:"-e, --max-expand <n>",cliProcessor:function(e){return"Infinity"===e?1/0:parseInt(e)}},globalGroup:{type:"boolean",cli:!1}};function c(e){if(e.default)return e.default;var t=e.type,r=Array.isArray(t)?t[0]:t;if("string"!=typeof r)return r.enum[0];switch(r){case"boolean":return!1;case"string":return"";case"number":return 0;case"object":return{}}}var m=function(){function e(e){for(var t in this.displayMode=void 0,this.output=void 0,this.leqno=void 0,this.fleqn=void 0,this.throwOnError=void 0,this.errorColor=void 0,this.macros=void 0,this.minRuleThickness=void 0,this.colorIsTextColor=void 0,this.strict=void 0,this.trust=void 0,this.maxSize=void 0,this.maxExpand=void 0,this.globalGroup=void 0,e=e||{},h)if(h.hasOwnProperty(t)){var r=h[t];this[t]=void 0!==e[t]?r.processor?r.processor(e[t]):e[t]:c(r)}}var t=e.prototype;return t.reportNonstrict=function(e,t,r){var a=this.strict;if("function"==typeof a&&(a=a(e,t,r)),a&&"ignore"!==a){if(!0===a||"error"===a)throw new n("LaTeX-incompatible input and strict mode is set to 'error': "+t+" ["+e+"]",r);"warn"===a?"undefined"!=typeof console&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+t+" ["+e+"]"):"undefined"!=typeof console&&console.warn("LaTeX-incompatible input and strict mode is set to unrecognized '"+a+"': "+t+" ["+e+"]")}},t.useStrictBehavior=function(e,t,r){var n=this.strict;if("function"==typeof n)try{n=n(e,t,r)}catch(e){n="error"}return!(!n||"ignore"===n)&&(!0===n||"error"===n||("warn"===n?("undefined"!=typeof console&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+t+" ["+e+"]"),!1):("undefined"!=typeof console&&console.warn("LaTeX-incompatible input and strict mode is set to unrecognized '"+n+"': "+t+" ["+e+"]"),!1)))},t.isTrusted=function(e){e.url&&!e.protocol&&(e.protocol=l.protocolFromUrl(e.url));var t="function"==typeof this.trust?this.trust(e):this.trust;return Boolean(t)},e}(),u=function(){function e(e,t,r){this.id=void 0,this.size=void 0,this.cramped=void 0,this.id=e,this.size=t,this.cramped=r}var t=e.prototype;return t.sup=function(){return p[d[this.id]]},t.sub=function(){return p[f[this.id]]},t.fracNum=function(){return p[g[this.id]]},t.fracDen=function(){return p[v[this.id]]},t.cramp=function(){return p[b[this.id]]},t.text=function(){return p[y[this.id]]},t.isTight=function(){return this.size>=2},e}(),p=[new u(0,0,!1),new u(1,0,!0),new u(2,1,!1),new u(3,1,!0),new u(4,2,!1),new u(5,2,!0),new u(6,3,!1),new u(7,3,!0)],d=[4,5,4,5,6,7,6,7],f=[5,5,5,5,7,7,7,7],g=[2,3,4,5,6,7,6,7],v=[3,3,5,5,7,7,7,7],b=[1,1,3,3,5,5,7,7],y=[0,1,2,3,2,3,2,3],x={DISPLAY:p[0],TEXT:p[2],SCRIPT:p[4],SCRIPTSCRIPT:p[6]},w=[{name:"latin",blocks:[[256,591],[768,879]]},{name:"cyrillic",blocks:[[1024,1279]]},{name:"armenian",blocks:[[1328,1423]]},{name:"brahmic",blocks:[[2304,4255]]},{name:"georgian",blocks:[[4256,4351]]},{name:"cjk",blocks:[[12288,12543],[19968,40879],[65280,65376]]},{name:"hangul",blocks:[[44032,55215]]}];var k=[];function S(e){for(var t=0;t<k.length;t+=2)if(e>=k[t]&&e<=k[t+1])return!0;return!1}w.forEach((function(e){return e.blocks.forEach((function(e){return k.push.apply(k,e)}))}));var M=80,z={doubleleftarrow:"M262 157\nl10-10c34-36 62.7-77 86-123 3.3-8 5-13.3 5-16 0-5.3-6.7-8-20-8-7.3\n 0-12.2.5-14.5 1.5-2.3 1-4.8 4.5-7.5 10.5-49.3 97.3-121.7 169.3-217 216-28\n 14-57.3 25-88 33-6.7 2-11 3.8-13 5.5-2 1.7-3 4.2-3 7.5s1 5.8 3 7.5\nc2 1.7 6.3 3.5 13 5.5 68 17.3 128.2 47.8 180.5 91.5 52.3 43.7 93.8 96.2 124.5\n 157.5 9.3 8 15.3 12.3 18 13h6c12-.7 18-4 18-10 0-2-1.7-7-5-15-23.3-46-52-87\n-86-123l-10-10h399738v-40H218c328 0 0 0 0 0l-10-8c-26.7-20-65.7-43-117-69 2.7\n-2 6-3.7 10-5 36.7-16 72.3-37.3 107-64l10-8h399782v-40z\nm8 0v40h399730v-40zm0 194v40h399730v-40z",doublerightarrow:"M399738 392l\n-10 10c-34 36-62.7 77-86 123-3.3 8-5 13.3-5 16 0 5.3 6.7 8 20 8 7.3 0 12.2-.5\n 14.5-1.5 2.3-1 4.8-4.5 7.5-10.5 49.3-97.3 121.7-169.3 217-216 28-14 57.3-25 88\n-33 6.7-2 11-3.8 13-5.5 2-1.7 3-4.2 3-7.5s-1-5.8-3-7.5c-2-1.7-6.3-3.5-13-5.5-68\n-17.3-128.2-47.8-180.5-91.5-52.3-43.7-93.8-96.2-124.5-157.5-9.3-8-15.3-12.3-18\n-13h-6c-12 .7-18 4-18 10 0 2 1.7 7 5 15 23.3 46 52 87 86 123l10 10H0v40h399782\nc-328 0 0 0 0 0l10 8c26.7 20 65.7 43 117 69-2.7 2-6 3.7-10 5-36.7 16-72.3 37.3\n-107 64l-10 8H0v40zM0 157v40h399730v-40zm0 194v40h399730v-40z",leftarrow:"M400000 241H110l3-3c68.7-52.7 113.7-120\n 135-202 4-14.7 6-23 6-25 0-7.3-7-11-21-11-8 0-13.2.8-15.5 2.5-2.3 1.7-4.2 5.8\n-5.5 12.5-1.3 4.7-2.7 10.3-4 17-12 48.7-34.8 92-68.5 130S65.3 228.3 18 247\nc-10 4-16 7.7-18 11 0 8.7 6 14.3 18 17 47.3 18.7 87.8 47 121.5 85S196 441.3 208\n 490c.7 2 1.3 5 2 9s1.2 6.7 1.5 8c.3 1.3 1 3.3 2 6s2.2 4.5 3.5 5.5c1.3 1 3.3\n 1.8 6 2.5s6 1 10 1c14 0 21-3.7 21-11 0-2-2-10.3-6-25-20-79.3-65-146.7-135-202\n l-3-3h399890zM100 241v40h399900v-40z",leftbrace:"M6 548l-6-6v-35l6-11c56-104 135.3-181.3 238-232 57.3-28.7 117\n-45 179-50h399577v120H403c-43.3 7-81 15-113 26-100.7 33-179.7 91-237 174-2.7\n 5-6 9-10 13-.7 1-7.3 1-20 1H6z",leftbraceunder:"M0 6l6-6h17c12.688 0 19.313.3 20 1 4 4 7.313 8.3 10 13\n 35.313 51.3 80.813 93.8 136.5 127.5 55.688 33.7 117.188 55.8 184.5 66.5.688\n 0 2 .3 4 1 18.688 2.7 76 4.3 172 5h399450v120H429l-6-1c-124.688-8-235-61.7\n-331-161C60.687 138.7 32.312 99.3 7 54L0 41V6z",leftgroup:"M400000 80\nH435C64 80 168.3 229.4 21 260c-5.9 1.2-18 0-18 0-2 0-3-1-3-3v-38C76 61 257 0\n 435 0h399565z",leftgroupunder:"M400000 262\nH435C64 262 168.3 112.6 21 82c-5.9-1.2-18 0-18 0-2 0-3 1-3 3v38c76 158 257 219\n 435 219h399565z",leftharpoon:"M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3\n-3.3 10.2-9.5 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5\n-18.3 3-21-1.3-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7\n-196 228-6.7 4.7-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40z",leftharpoonplus:"M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3-3.3 10.2-9.5\n 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5-18.3 3-21-1.3\n-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7-196 228-6.7 4.7\n-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40zM0 435v40h400000v-40z\nm0 0v40h400000v-40z",leftharpoondown:"M7 241c-4 4-6.333 8.667-7 14 0 5.333.667 9 2 11s5.333\n 5.333 12 10c90.667 54 156 130 196 228 3.333 10.667 6.333 16.333 9 17 2 .667 5\n 1 9 1h5c10.667 0 16.667-2 18-6 2-2.667 1-9.667-3-21-32-87.333-82.667-157.667\n-152-211l-3-3h399907v-40zM93 281 H400000 v-40L7 241z",leftharpoondownplus:"M7 435c-4 4-6.3 8.7-7 14 0 5.3.7 9 2 11s5.3 5.3 12\n 10c90.7 54 156 130 196 228 3.3 10.7 6.3 16.3 9 17 2 .7 5 1 9 1h5c10.7 0 16.7\n-2 18-6 2-2.7 1-9.7-3-21-32-87.3-82.7-157.7-152-211l-3-3h399907v-40H7zm93 0\nv40h399900v-40zM0 241v40h399900v-40zm0 0v40h399900v-40z",lefthook:"M400000 281 H103s-33-11.2-61-33.5S0 197.3 0 164s14.2-61.2 42.5\n-83.5C70.8 58.2 104 47 142 47 c16.7 0 25 6.7 25 20 0 12-8.7 18.7-26 20-40 3.3\n-68.7 15.7-86 37-10 12-15 25.3-15 40 0 22.7 9.8 40.7 29.5 54 19.7 13.3 43.5 21\n 71.5 23h399859zM103 281v-40h399897v40z",leftlinesegment:"M40 281 V428 H0 V94 H40 V241 H400000 v40z\nM40 281 V428 H0 V94 H40 V241 H400000 v40z",leftmapsto:"M40 281 V448H0V74H40V241H400000v40z\nM40 281 V448H0V74H40V241H400000v40z",leftToFrom:"M0 147h400000v40H0zm0 214c68 40 115.7 95.7 143 167h22c15.3 0 23\n-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69-70-101l-7-8h399905v-40H95l7-8\nc28.7-32 52-65.7 70-101 10.7-23.3 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 265.3\n 68 321 0 361zm0-174v-40h399900v40zm100 154v40h399900v-40z",longequal:"M0 50 h400000 v40H0z m0 194h40000v40H0z\nM0 50 h400000 v40H0z m0 194h40000v40H0z",midbrace:"M200428 334\nc-100.7-8.3-195.3-44-280-108-55.3-42-101.7-93-139-153l-9-14c-2.7 4-5.7 8.7-9 14\n-53.3 86.7-123.7 153-211 199-66.7 36-137.3 56.3-212 62H0V214h199568c178.3-11.7\n 311.7-78.3 403-201 6-8 9.7-12 11-12 .7-.7 6.7-1 18-1s17.3.3 18 1c1.3 0 5 4 11\n 12 44.7 59.3 101.3 106.3 170 141s145.3 54.3 229 60h199572v120z",midbraceunder:"M199572 214\nc100.7 8.3 195.3 44 280 108 55.3 42 101.7 93 139 153l9 14c2.7-4 5.7-8.7 9-14\n 53.3-86.7 123.7-153 211-199 66.7-36 137.3-56.3 212-62h199568v120H200432c-178.3\n 11.7-311.7 78.3-403 201-6 8-9.7 12-11 12-.7.7-6.7 1-18 1s-17.3-.3-18-1c-1.3 0\n-5-4-11-12-44.7-59.3-101.3-106.3-170-141s-145.3-54.3-229-60H0V214z",oiintSize1:"M512.6 71.6c272.6 0 320.3 106.8 320.3 178.2 0 70.8-47.7 177.6\n-320.3 177.6S193.1 320.6 193.1 249.8c0-71.4 46.9-178.2 319.5-178.2z\nm368.1 178.2c0-86.4-60.9-215.4-368.1-215.4-306.4 0-367.3 129-367.3 215.4 0 85.8\n60.9 214.8 367.3 214.8 307.2 0 368.1-129 368.1-214.8z",oiintSize2:"M757.8 100.1c384.7 0 451.1 137.6 451.1 230 0 91.3-66.4 228.8\n-451.1 228.8-386.3 0-452.7-137.5-452.7-228.8 0-92.4 66.4-230 452.7-230z\nm502.4 230c0-111.2-82.4-277.2-502.4-277.2s-504 166-504 277.2\nc0 110 84 276 504 276s502.4-166 502.4-276z",oiiintSize1:"M681.4 71.6c408.9 0 480.5 106.8 480.5 178.2 0 70.8-71.6 177.6\n-480.5 177.6S202.1 320.6 202.1 249.8c0-71.4 70.5-178.2 479.3-178.2z\nm525.8 178.2c0-86.4-86.8-215.4-525.7-215.4-437.9 0-524.7 129-524.7 215.4 0\n85.8 86.8 214.8 524.7 214.8 438.9 0 525.7-129 525.7-214.8z",oiiintSize2:"M1021.2 53c603.6 0 707.8 165.8 707.8 277.2 0 110-104.2 275.8\n-707.8 275.8-606 0-710.2-165.8-710.2-275.8C311 218.8 415.2 53 1021.2 53z\nm770.4 277.1c0-131.2-126.4-327.6-770.5-327.6S248.4 198.9 248.4 330.1\nc0 130 128.8 326.4 772.7 326.4s770.5-196.4 770.5-326.4z",rightarrow:"M0 241v40h399891c-47.3 35.3-84 78-110 128\n-16.7 32-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20\n 11 8 0 13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7\n 39-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85\n-40.5-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5\n-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67\n 151.7 139 205zm0 0v40h399900v-40z",rightbrace:"M400000 542l\n-6 6h-17c-12.7 0-19.3-.3-20-1-4-4-7.3-8.3-10-13-35.3-51.3-80.8-93.8-136.5-127.5\ns-117.2-55.8-184.5-66.5c-.7 0-2-.3-4-1-18.7-2.7-76-4.3-172-5H0V214h399571l6 1\nc124.7 8 235 61.7 331 161 31.3 33.3 59.7 72.7 85 118l7 13v35z",rightbraceunder:"M399994 0l6 6v35l-6 11c-56 104-135.3 181.3-238 232-57.3\n 28.7-117 45-179 50H-300V214h399897c43.3-7 81-15 113-26 100.7-33 179.7-91 237\n-174 2.7-5 6-9 10-13 .7-1 7.3-1 20-1h17z",rightgroup:"M0 80h399565c371 0 266.7 149.4 414 180 5.9 1.2 18 0 18 0 2 0\n 3-1 3-3v-38c-76-158-257-219-435-219H0z",rightgroupunder:"M0 262h399565c371 0 266.7-149.4 414-180 5.9-1.2 18 0 18\n 0 2 0 3 1 3 3v38c-76 158-257 219-435 219H0z",rightharpoon:"M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3\n-3.7-15.3-11-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2\n-10.7 0-16.7 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58\n 69.2 92 94.5zm0 0v40h399900v-40z",rightharpoonplus:"M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3-3.7-15.3-11\n-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2-10.7 0-16.7\n 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58 69.2 92 94.5z\nm0 0v40h399900v-40z m100 194v40h399900v-40zm0 0v40h399900v-40z",rightharpoondown:"M399747 511c0 7.3 6.7 11 20 11 8 0 13-.8 15-2.5s4.7-6.8\n 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3 8.5-5.8 9.5\n-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3-64.7 57-92 95\n-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 241v40h399900v-40z",rightharpoondownplus:"M399747 705c0 7.3 6.7 11 20 11 8 0 13-.8\n 15-2.5s4.7-6.8 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3\n 8.5-5.8 9.5-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3\n-64.7 57-92 95-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 435v40h399900v-40z\nm0-194v40h400000v-40zm0 0v40h400000v-40z",righthook:"M399859 241c-764 0 0 0 0 0 40-3.3 68.7-15.7 86-37 10-12 15-25.3\n 15-40 0-22.7-9.8-40.7-29.5-54-19.7-13.3-43.5-21-71.5-23-17.3-1.3-26-8-26-20 0\n-13.3 8.7-20 26-20 38 0 71 11.2 99 33.5 0 0 7 5.6 21 16.7 14 11.2 21 33.5 21\n 66.8s-14 61.2-42 83.5c-28 22.3-61 33.5-99 33.5L0 241z M0 281v-40h399859v40z",rightlinesegment:"M399960 241 V94 h40 V428 h-40 V281 H0 v-40z\nM399960 241 V94 h40 V428 h-40 V281 H0 v-40z",rightToFrom:"M400000 167c-70.7-42-118-97.7-142-167h-23c-15.3 0-23 .3-23\n 1 0 1.3 5.3 13.7 16 37 18 35.3 41.3 69 70 101l7 8H0v40h399905l-7 8c-28.7 32\n-52 65.7-70 101-10.7 23.3-16 35.7-16 37 0 .7 7.7 1 23 1h23c24-69.3 71.3-125 142\n-167z M100 147v40h399900v-40zM0 341v40h399900v-40z",twoheadleftarrow:"M0 167c68 40\n 115.7 95.7 143 167h22c15.3 0 23-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69\n-70-101l-7-8h125l9 7c50.7 39.3 85 86 103 140h46c0-4.7-6.3-18.7-19-42-18-35.3\n-40-67.3-66-96l-9-9h399716v-40H284l9-9c26-28.7 48-60.7 66-96 12.7-23.333 19\n-37.333 19-42h-46c-18 54-52.3 100.7-103 140l-9 7H95l7-8c28.7-32 52-65.7 70-101\n 10.7-23.333 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 71.3 68 127 0 167z",twoheadrightarrow:"M400000 167\nc-68-40-115.7-95.7-143-167h-22c-15.3 0-23 .3-23 1 0 1.3 5.3 13.7 16 37 18 35.3\n 41.3 69 70 101l7 8h-125l-9-7c-50.7-39.3-85-86-103-140h-46c0 4.7 6.3 18.7 19 42\n 18 35.3 40 67.3 66 96l9 9H0v40h399716l-9 9c-26 28.7-48 60.7-66 96-12.7 23.333\n-19 37.333-19 42h46c18-54 52.3-100.7 103-140l9-7h125l-7 8c-28.7 32-52 65.7-70\n 101-10.7 23.333-16 35.7-16 37 0 .7 7.7 1 23 1h22c27.3-71.3 75-127 143-167z",tilde1:"M200 55.538c-77 0-168 73.953-177 73.953-3 0-7\n-2.175-9-5.437L2 97c-1-2-2-4-2-6 0-4 2-7 5-9l20-12C116 12 171 0 207 0c86 0\n 114 68 191 68 78 0 168-68 177-68 4 0 7 2 9 5l12 19c1 2.175 2 4.35 2 6.525 0\n 4.35-2 7.613-5 9.788l-19 13.05c-92 63.077-116.937 75.308-183 76.128\n-68.267.847-113-73.952-191-73.952z",tilde2:"M344 55.266c-142 0-300.638 81.316-311.5 86.418\n-8.01 3.762-22.5 10.91-23.5 5.562L1 120c-1-2-1-3-1-4 0-5 3-9 8-10l18.4-9C160.9\n 31.9 283 0 358 0c148 0 188 122 331 122s314-97 326-97c4 0 8 2 10 7l7 21.114\nc1 2.14 1 3.21 1 4.28 0 5.347-3 9.626-7 10.696l-22.3 12.622C852.6 158.372 751\n 181.476 676 181.476c-149 0-189-126.21-332-126.21z",tilde3:"M786 59C457 59 32 175.242 13 175.242c-6 0-10-3.457\n-11-10.37L.15 138c-1-7 3-12 10-13l19.2-6.4C378.4 40.7 634.3 0 804.3 0c337 0\n 411.8 157 746.8 157 328 0 754-112 773-112 5 0 10 3 11 9l1 14.075c1 8.066-.697\n 16.595-6.697 17.492l-21.052 7.31c-367.9 98.146-609.15 122.696-778.15 122.696\n -338 0-409-156.573-744-156.573z",tilde4:"M786 58C457 58 32 177.487 13 177.487c-6 0-10-3.345\n-11-10.035L.15 143c-1-7 3-12 10-13l22-6.7C381.2 35 637.15 0 807.15 0c337 0 409\n 177 744 177 328 0 754-127 773-127 5 0 10 3 11 9l1 14.794c1 7.805-3 13.38-9\n 14.495l-20.7 5.574c-366.85 99.79-607.3 139.372-776.3 139.372-338 0-409\n -175.236-744-175.236z",vec:"M377 20c0-5.333 1.833-10 5.5-14S391 0 397 0c4.667 0 8.667 1.667 12 5\n3.333 2.667 6.667 9 10 19 6.667 24.667 20.333 43.667 41 57 7.333 4.667 11\n10.667 11 18 0 6-1 10-3 12s-6.667 5-14 9c-28.667 14.667-53.667 35.667-75 63\n-1.333 1.333-3.167 3.5-5.5 6.5s-4 4.833-5 5.5c-1 .667-2.5 1.333-4.5 2s-4.333 1\n-7 1c-4.667 0-9.167-1.833-13.5-5.5S337 184 337 178c0-12.667 15.667-32.333 47-59\nH213l-171-1c-8.667-6-13-12.333-13-19 0-4.667 4.333-11.333 13-20h359\nc-16-25.333-24-45-24-59z",widehat1:"M529 0h5l519 115c5 1 9 5 9 10 0 1-1 2-1 3l-4 22\nc-1 5-5 9-11 9h-2L532 67 19 159h-2c-5 0-9-4-11-9l-5-22c-1-6 2-12 8-13z",widehat2:"M1181 0h2l1171 176c6 0 10 5 10 11l-2 23c-1 6-5 10\n-11 10h-1L1182 67 15 220h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z",widehat3:"M1181 0h2l1171 236c6 0 10 5 10 11l-2 23c-1 6-5 10\n-11 10h-1L1182 67 15 280h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z",widehat4:"M1181 0h2l1171 296c6 0 10 5 10 11l-2 23c-1 6-5 10\n-11 10h-1L1182 67 15 340h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z",widecheck1:"M529,159h5l519,-115c5,-1,9,-5,9,-10c0,-1,-1,-2,-1,-3l-4,-22c-1,\n-5,-5,-9,-11,-9h-2l-512,92l-513,-92h-2c-5,0,-9,4,-11,9l-5,22c-1,6,2,12,8,13z",widecheck2:"M1181,220h2l1171,-176c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,\n-11,-10h-1l-1168,153l-1167,-153h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z",widecheck3:"M1181,280h2l1171,-236c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,\n-11,-10h-1l-1168,213l-1167,-213h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z",widecheck4:"M1181,340h2l1171,-296c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,\n-11,-10h-1l-1168,273l-1167,-273h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z",baraboveleftarrow:"M400000 620h-399890l3 -3c68.7 -52.7 113.7 -120 135 -202\nc4 -14.7 6 -23 6 -25c0 -7.3 -7 -11 -21 -11c-8 0 -13.2 0.8 -15.5 2.5\nc-2.3 1.7 -4.2 5.8 -5.5 12.5c-1.3 4.7 -2.7 10.3 -4 17c-12 48.7 -34.8 92 -68.5 130\ns-74.2 66.3 -121.5 85c-10 4 -16 7.7 -18 11c0 8.7 6 14.3 18 17c47.3 18.7 87.8 47\n121.5 85s56.5 81.3 68.5 130c0.7 2 1.3 5 2 9s1.2 6.7 1.5 8c0.3 1.3 1 3.3 2 6\ns2.2 4.5 3.5 5.5c1.3 1 3.3 1.8 6 2.5s6 1 10 1c14 0 21 -3.7 21 -11\nc0 -2 -2 -10.3 -6 -25c-20 -79.3 -65 -146.7 -135 -202l-3 -3h399890z\nM100 620v40h399900v-40z M0 241v40h399900v-40zM0 241v40h399900v-40z",rightarrowabovebar:"M0 241v40h399891c-47.3 35.3-84 78-110 128-16.7 32\n-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20 11 8 0\n13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7 39\n-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85-40.5\n-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5\n-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67\n151.7 139 205zm96 379h399894v40H0zm0 0h399904v40H0z",baraboveshortleftharpoon:"M507,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11\nc1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17\nc2,0.7,5,1,9,1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21\nc-32,-87.3,-82.7,-157.7,-152,-211c0,0,-3,-3,-3,-3l399351,0l0,-40\nc-398570,0,-399437,0,-399437,0z M593 435 v40 H399500 v-40z\nM0 281 v-40 H399908 v40z M0 281 v-40 H399908 v40z",rightharpoonaboveshortbar:"M0,241 l0,40c399126,0,399993,0,399993,0\nc4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,\n-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6\nc-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z\nM0 241 v40 H399908 v-40z M0 475 v-40 H399500 v40z M0 475 v-40 H399500 v40z",shortbaraboveleftharpoon:"M7,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11\nc1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17c2,0.7,5,1,9,\n1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21c-32,-87.3,-82.7,-157.7,\n-152,-211c0,0,-3,-3,-3,-3l399907,0l0,-40c-399126,0,-399993,0,-399993,0z\nM93 435 v40 H400000 v-40z M500 241 v40 H400000 v-40z M500 241 v40 H400000 v-40z",shortrightharpoonabovebar:"M53,241l0,40c398570,0,399437,0,399437,0\nc4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,\n-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6\nc-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z\nM500 241 v40 H399408 v-40z M500 435 v40 H400000 v-40z"},A=function(){function e(e){this.children=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,this.children=e,this.classes=[],this.height=0,this.depth=0,this.maxFontSize=0,this.style={}}var t=e.prototype;return t.hasClass=function(e){return l.contains(this.classes,e)},t.toNode=function(){for(var e=document.createDocumentFragment(),t=0;t<this.children.length;t++)e.appendChild(this.children[t].toNode());return e},t.toMarkup=function(){for(var e="",t=0;t<this.children.length;t++)e+=this.children[t].toMarkup();return e},t.toText=function(){var e=function(e){return e.toText()};return this.children.map(e).join("")},e}(),T={"AMS-Regular":{32:[0,0,0,0,.25],65:[0,.68889,0,0,.72222],66:[0,.68889,0,0,.66667],67:[0,.68889,0,0,.72222],68:[0,.68889,0,0,.72222],69:[0,.68889,0,0,.66667],70:[0,.68889,0,0,.61111],71:[0,.68889,0,0,.77778],72:[0,.68889,0,0,.77778],73:[0,.68889,0,0,.38889],74:[.16667,.68889,0,0,.5],75:[0,.68889,0,0,.77778],76:[0,.68889,0,0,.66667],77:[0,.68889,0,0,.94445],78:[0,.68889,0,0,.72222],79:[.16667,.68889,0,0,.77778],80:[0,.68889,0,0,.61111],81:[.16667,.68889,0,0,.77778],82:[0,.68889,0,0,.72222],83:[0,.68889,0,0,.55556],84:[0,.68889,0,0,.66667],85:[0,.68889,0,0,.72222],86:[0,.68889,0,0,.72222],87:[0,.68889,0,0,1],88:[0,.68889,0,0,.72222],89:[0,.68889,0,0,.72222],90:[0,.68889,0,0,.66667],107:[0,.68889,0,0,.55556],160:[0,0,0,0,.25],165:[0,.675,.025,0,.75],174:[.15559,.69224,0,0,.94666],240:[0,.68889,0,0,.55556],295:[0,.68889,0,0,.54028],710:[0,.825,0,0,2.33334],732:[0,.9,0,0,2.33334],770:[0,.825,0,0,2.33334],771:[0,.9,0,0,2.33334],989:[.08167,.58167,0,0,.77778],1008:[0,.43056,.04028,0,.66667],8245:[0,.54986,0,0,.275],8463:[0,.68889,0,0,.54028],8487:[0,.68889,0,0,.72222],8498:[0,.68889,0,0,.55556],8502:[0,.68889,0,0,.66667],8503:[0,.68889,0,0,.44445],8504:[0,.68889,0,0,.66667],8513:[0,.68889,0,0,.63889],8592:[-.03598,.46402,0,0,.5],8594:[-.03598,.46402,0,0,.5],8602:[-.13313,.36687,0,0,1],8603:[-.13313,.36687,0,0,1],8606:[.01354,.52239,0,0,1],8608:[.01354,.52239,0,0,1],8610:[.01354,.52239,0,0,1.11111],8611:[.01354,.52239,0,0,1.11111],8619:[0,.54986,0,0,1],8620:[0,.54986,0,0,1],8621:[-.13313,.37788,0,0,1.38889],8622:[-.13313,.36687,0,0,1],8624:[0,.69224,0,0,.5],8625:[0,.69224,0,0,.5],8630:[0,.43056,0,0,1],8631:[0,.43056,0,0,1],8634:[.08198,.58198,0,0,.77778],8635:[.08198,.58198,0,0,.77778],8638:[.19444,.69224,0,0,.41667],8639:[.19444,.69224,0,0,.41667],8642:[.19444,.69224,0,0,.41667],8643:[.19444,.69224,0,0,.41667],8644:[.1808,.675,0,0,1],8646:[.1808,.675,0,0,1],8647:[.1808,.675,0,0,1],8648:[.19444,.69224,0,0,.83334],8649:[.1808,.675,0,0,1],8650:[.19444,.69224,0,0,.83334],8651:[.01354,.52239,0,0,1],8652:[.01354,.52239,0,0,1],8653:[-.13313,.36687,0,0,1],8654:[-.13313,.36687,0,0,1],8655:[-.13313,.36687,0,0,1],8666:[.13667,.63667,0,0,1],8667:[.13667,.63667,0,0,1],8669:[-.13313,.37788,0,0,1],8672:[-.064,.437,0,0,1.334],8674:[-.064,.437,0,0,1.334],8705:[0,.825,0,0,.5],8708:[0,.68889,0,0,.55556],8709:[.08167,.58167,0,0,.77778],8717:[0,.43056,0,0,.42917],8722:[-.03598,.46402,0,0,.5],8724:[.08198,.69224,0,0,.77778],8726:[.08167,.58167,0,0,.77778],8733:[0,.69224,0,0,.77778],8736:[0,.69224,0,0,.72222],8737:[0,.69224,0,0,.72222],8738:[.03517,.52239,0,0,.72222],8739:[.08167,.58167,0,0,.22222],8740:[.25142,.74111,0,0,.27778],8741:[.08167,.58167,0,0,.38889],8742:[.25142,.74111,0,0,.5],8756:[0,.69224,0,0,.66667],8757:[0,.69224,0,0,.66667],8764:[-.13313,.36687,0,0,.77778],8765:[-.13313,.37788,0,0,.77778],8769:[-.13313,.36687,0,0,.77778],8770:[-.03625,.46375,0,0,.77778],8774:[.30274,.79383,0,0,.77778],8776:[-.01688,.48312,0,0,.77778],8778:[.08167,.58167,0,0,.77778],8782:[.06062,.54986,0,0,.77778],8783:[.06062,.54986,0,0,.77778],8785:[.08198,.58198,0,0,.77778],8786:[.08198,.58198,0,0,.77778],8787:[.08198,.58198,0,0,.77778],8790:[0,.69224,0,0,.77778],8791:[.22958,.72958,0,0,.77778],8796:[.08198,.91667,0,0,.77778],8806:[.25583,.75583,0,0,.77778],8807:[.25583,.75583,0,0,.77778],8808:[.25142,.75726,0,0,.77778],8809:[.25142,.75726,0,0,.77778],8812:[.25583,.75583,0,0,.5],8814:[.20576,.70576,0,0,.77778],8815:[.20576,.70576,0,0,.77778],8816:[.30274,.79383,0,0,.77778],8817:[.30274,.79383,0,0,.77778],8818:[.22958,.72958,0,0,.77778],8819:[.22958,.72958,0,0,.77778],8822:[.1808,.675,0,0,.77778],8823:[.1808,.675,0,0,.77778],8828:[.13667,.63667,0,0,.77778],8829:[.13667,.63667,0,0,.77778],8830:[.22958,.72958,0,0,.77778],8831:[.22958,.72958,0,0,.77778],8832:[.20576,.70576,0,0,.77778],8833:[.20576,.70576,0,0,.77778],8840:[.30274,.79383,0,0,.77778],8841:[.30274,.79383,0,0,.77778],8842:[.13597,.63597,0,0,.77778],8843:[.13597,.63597,0,0,.77778],8847:[.03517,.54986,0,0,.77778],8848:[.03517,.54986,0,0,.77778],8858:[.08198,.58198,0,0,.77778],8859:[.08198,.58198,0,0,.77778],8861:[.08198,.58198,0,0,.77778],8862:[0,.675,0,0,.77778],8863:[0,.675,0,0,.77778],8864:[0,.675,0,0,.77778],8865:[0,.675,0,0,.77778],8872:[0,.69224,0,0,.61111],8873:[0,.69224,0,0,.72222],8874:[0,.69224,0,0,.88889],8876:[0,.68889,0,0,.61111],8877:[0,.68889,0,0,.61111],8878:[0,.68889,0,0,.72222],8879:[0,.68889,0,0,.72222],8882:[.03517,.54986,0,0,.77778],8883:[.03517,.54986,0,0,.77778],8884:[.13667,.63667,0,0,.77778],8885:[.13667,.63667,0,0,.77778],8888:[0,.54986,0,0,1.11111],8890:[.19444,.43056,0,0,.55556],8891:[.19444,.69224,0,0,.61111],8892:[.19444,.69224,0,0,.61111],8901:[0,.54986,0,0,.27778],8903:[.08167,.58167,0,0,.77778],8905:[.08167,.58167,0,0,.77778],8906:[.08167,.58167,0,0,.77778],8907:[0,.69224,0,0,.77778],8908:[0,.69224,0,0,.77778],8909:[-.03598,.46402,0,0,.77778],8910:[0,.54986,0,0,.76042],8911:[0,.54986,0,0,.76042],8912:[.03517,.54986,0,0,.77778],8913:[.03517,.54986,0,0,.77778],8914:[0,.54986,0,0,.66667],8915:[0,.54986,0,0,.66667],8916:[0,.69224,0,0,.66667],8918:[.0391,.5391,0,0,.77778],8919:[.0391,.5391,0,0,.77778],8920:[.03517,.54986,0,0,1.33334],8921:[.03517,.54986,0,0,1.33334],8922:[.38569,.88569,0,0,.77778],8923:[.38569,.88569,0,0,.77778],8926:[.13667,.63667,0,0,.77778],8927:[.13667,.63667,0,0,.77778],8928:[.30274,.79383,0,0,.77778],8929:[.30274,.79383,0,0,.77778],8934:[.23222,.74111,0,0,.77778],8935:[.23222,.74111,0,0,.77778],8936:[.23222,.74111,0,0,.77778],8937:[.23222,.74111,0,0,.77778],8938:[.20576,.70576,0,0,.77778],8939:[.20576,.70576,0,0,.77778],8940:[.30274,.79383,0,0,.77778],8941:[.30274,.79383,0,0,.77778],8994:[.19444,.69224,0,0,.77778],8995:[.19444,.69224,0,0,.77778],9416:[.15559,.69224,0,0,.90222],9484:[0,.69224,0,0,.5],9488:[0,.69224,0,0,.5],9492:[0,.37788,0,0,.5],9496:[0,.37788,0,0,.5],9585:[.19444,.68889,0,0,.88889],9586:[.19444,.74111,0,0,.88889],9632:[0,.675,0,0,.77778],9633:[0,.675,0,0,.77778],9650:[0,.54986,0,0,.72222],9651:[0,.54986,0,0,.72222],9654:[.03517,.54986,0,0,.77778],9660:[0,.54986,0,0,.72222],9661:[0,.54986,0,0,.72222],9664:[.03517,.54986,0,0,.77778],9674:[.11111,.69224,0,0,.66667],9733:[.19444,.69224,0,0,.94445],10003:[0,.69224,0,0,.83334],10016:[0,.69224,0,0,.83334],10731:[.11111,.69224,0,0,.66667],10846:[.19444,.75583,0,0,.61111],10877:[.13667,.63667,0,0,.77778],10878:[.13667,.63667,0,0,.77778],10885:[.25583,.75583,0,0,.77778],10886:[.25583,.75583,0,0,.77778],10887:[.13597,.63597,0,0,.77778],10888:[.13597,.63597,0,0,.77778],10889:[.26167,.75726,0,0,.77778],10890:[.26167,.75726,0,0,.77778],10891:[.48256,.98256,0,0,.77778],10892:[.48256,.98256,0,0,.77778],10901:[.13667,.63667,0,0,.77778],10902:[.13667,.63667,0,0,.77778],10933:[.25142,.75726,0,0,.77778],10934:[.25142,.75726,0,0,.77778],10935:[.26167,.75726,0,0,.77778],10936:[.26167,.75726,0,0,.77778],10937:[.26167,.75726,0,0,.77778],10938:[.26167,.75726,0,0,.77778],10949:[.25583,.75583,0,0,.77778],10950:[.25583,.75583,0,0,.77778],10955:[.28481,.79383,0,0,.77778],10956:[.28481,.79383,0,0,.77778],57350:[.08167,.58167,0,0,.22222],57351:[.08167,.58167,0,0,.38889],57352:[.08167,.58167,0,0,.77778],57353:[0,.43056,.04028,0,.66667],57356:[.25142,.75726,0,0,.77778],57357:[.25142,.75726,0,0,.77778],57358:[.41951,.91951,0,0,.77778],57359:[.30274,.79383,0,0,.77778],57360:[.30274,.79383,0,0,.77778],57361:[.41951,.91951,0,0,.77778],57366:[.25142,.75726,0,0,.77778],57367:[.25142,.75726,0,0,.77778],57368:[.25142,.75726,0,0,.77778],57369:[.25142,.75726,0,0,.77778],57370:[.13597,.63597,0,0,.77778],57371:[.13597,.63597,0,0,.77778]},"Caligraphic-Regular":{32:[0,0,0,0,.25],65:[0,.68333,0,.19445,.79847],66:[0,.68333,.03041,.13889,.65681],67:[0,.68333,.05834,.13889,.52653],68:[0,.68333,.02778,.08334,.77139],69:[0,.68333,.08944,.11111,.52778],70:[0,.68333,.09931,.11111,.71875],71:[.09722,.68333,.0593,.11111,.59487],72:[0,.68333,.00965,.11111,.84452],73:[0,.68333,.07382,0,.54452],74:[.09722,.68333,.18472,.16667,.67778],75:[0,.68333,.01445,.05556,.76195],76:[0,.68333,0,.13889,.68972],77:[0,.68333,0,.13889,1.2009],78:[0,.68333,.14736,.08334,.82049],79:[0,.68333,.02778,.11111,.79611],80:[0,.68333,.08222,.08334,.69556],81:[.09722,.68333,0,.11111,.81667],82:[0,.68333,0,.08334,.8475],83:[0,.68333,.075,.13889,.60556],84:[0,.68333,.25417,0,.54464],85:[0,.68333,.09931,.08334,.62583],86:[0,.68333,.08222,0,.61278],87:[0,.68333,.08222,.08334,.98778],88:[0,.68333,.14643,.13889,.7133],89:[.09722,.68333,.08222,.08334,.66834],90:[0,.68333,.07944,.13889,.72473],160:[0,0,0,0,.25]},"Fraktur-Regular":{32:[0,0,0,0,.25],33:[0,.69141,0,0,.29574],34:[0,.69141,0,0,.21471],38:[0,.69141,0,0,.73786],39:[0,.69141,0,0,.21201],40:[.24982,.74947,0,0,.38865],41:[.24982,.74947,0,0,.38865],42:[0,.62119,0,0,.27764],43:[.08319,.58283,0,0,.75623],44:[0,.10803,0,0,.27764],45:[.08319,.58283,0,0,.75623],46:[0,.10803,0,0,.27764],47:[.24982,.74947,0,0,.50181],48:[0,.47534,0,0,.50181],49:[0,.47534,0,0,.50181],50:[0,.47534,0,0,.50181],51:[.18906,.47534,0,0,.50181],52:[.18906,.47534,0,0,.50181],53:[.18906,.47534,0,0,.50181],54:[0,.69141,0,0,.50181],55:[.18906,.47534,0,0,.50181],56:[0,.69141,0,0,.50181],57:[.18906,.47534,0,0,.50181],58:[0,.47534,0,0,.21606],59:[.12604,.47534,0,0,.21606],61:[-.13099,.36866,0,0,.75623],63:[0,.69141,0,0,.36245],65:[0,.69141,0,0,.7176],66:[0,.69141,0,0,.88397],67:[0,.69141,0,0,.61254],68:[0,.69141,0,0,.83158],69:[0,.69141,0,0,.66278],70:[.12604,.69141,0,0,.61119],71:[0,.69141,0,0,.78539],72:[.06302,.69141,0,0,.7203],73:[0,.69141,0,0,.55448],74:[.12604,.69141,0,0,.55231],75:[0,.69141,0,0,.66845],76:[0,.69141,0,0,.66602],77:[0,.69141,0,0,1.04953],78:[0,.69141,0,0,.83212],79:[0,.69141,0,0,.82699],80:[.18906,.69141,0,0,.82753],81:[.03781,.69141,0,0,.82699],82:[0,.69141,0,0,.82807],83:[0,.69141,0,0,.82861],84:[0,.69141,0,0,.66899],85:[0,.69141,0,0,.64576],86:[0,.69141,0,0,.83131],87:[0,.69141,0,0,1.04602],88:[0,.69141,0,0,.71922],89:[.18906,.69141,0,0,.83293],90:[.12604,.69141,0,0,.60201],91:[.24982,.74947,0,0,.27764],93:[.24982,.74947,0,0,.27764],94:[0,.69141,0,0,.49965],97:[0,.47534,0,0,.50046],98:[0,.69141,0,0,.51315],99:[0,.47534,0,0,.38946],100:[0,.62119,0,0,.49857],101:[0,.47534,0,0,.40053],102:[.18906,.69141,0,0,.32626],103:[.18906,.47534,0,0,.5037],104:[.18906,.69141,0,0,.52126],105:[0,.69141,0,0,.27899],106:[0,.69141,0,0,.28088],107:[0,.69141,0,0,.38946],108:[0,.69141,0,0,.27953],109:[0,.47534,0,0,.76676],110:[0,.47534,0,0,.52666],111:[0,.47534,0,0,.48885],112:[.18906,.52396,0,0,.50046],113:[.18906,.47534,0,0,.48912],114:[0,.47534,0,0,.38919],115:[0,.47534,0,0,.44266],116:[0,.62119,0,0,.33301],117:[0,.47534,0,0,.5172],118:[0,.52396,0,0,.5118],119:[0,.52396,0,0,.77351],120:[.18906,.47534,0,0,.38865],121:[.18906,.47534,0,0,.49884],122:[.18906,.47534,0,0,.39054],160:[0,0,0,0,.25],8216:[0,.69141,0,0,.21471],8217:[0,.69141,0,0,.21471],58112:[0,.62119,0,0,.49749],58113:[0,.62119,0,0,.4983],58114:[.18906,.69141,0,0,.33328],58115:[.18906,.69141,0,0,.32923],58116:[.18906,.47534,0,0,.50343],58117:[0,.69141,0,0,.33301],58118:[0,.62119,0,0,.33409],58119:[0,.47534,0,0,.50073]},"Main-Bold":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.35],34:[0,.69444,0,0,.60278],35:[.19444,.69444,0,0,.95833],36:[.05556,.75,0,0,.575],37:[.05556,.75,0,0,.95833],38:[0,.69444,0,0,.89444],39:[0,.69444,0,0,.31944],40:[.25,.75,0,0,.44722],41:[.25,.75,0,0,.44722],42:[0,.75,0,0,.575],43:[.13333,.63333,0,0,.89444],44:[.19444,.15556,0,0,.31944],45:[0,.44444,0,0,.38333],46:[0,.15556,0,0,.31944],47:[.25,.75,0,0,.575],48:[0,.64444,0,0,.575],49:[0,.64444,0,0,.575],50:[0,.64444,0,0,.575],51:[0,.64444,0,0,.575],52:[0,.64444,0,0,.575],53:[0,.64444,0,0,.575],54:[0,.64444,0,0,.575],55:[0,.64444,0,0,.575],56:[0,.64444,0,0,.575],57:[0,.64444,0,0,.575],58:[0,.44444,0,0,.31944],59:[.19444,.44444,0,0,.31944],60:[.08556,.58556,0,0,.89444],61:[-.10889,.39111,0,0,.89444],62:[.08556,.58556,0,0,.89444],63:[0,.69444,0,0,.54305],64:[0,.69444,0,0,.89444],65:[0,.68611,0,0,.86944],66:[0,.68611,0,0,.81805],67:[0,.68611,0,0,.83055],68:[0,.68611,0,0,.88194],69:[0,.68611,0,0,.75555],70:[0,.68611,0,0,.72361],71:[0,.68611,0,0,.90416],72:[0,.68611,0,0,.9],73:[0,.68611,0,0,.43611],74:[0,.68611,0,0,.59444],75:[0,.68611,0,0,.90138],76:[0,.68611,0,0,.69166],77:[0,.68611,0,0,1.09166],78:[0,.68611,0,0,.9],79:[0,.68611,0,0,.86388],80:[0,.68611,0,0,.78611],81:[.19444,.68611,0,0,.86388],82:[0,.68611,0,0,.8625],83:[0,.68611,0,0,.63889],84:[0,.68611,0,0,.8],85:[0,.68611,0,0,.88472],86:[0,.68611,.01597,0,.86944],87:[0,.68611,.01597,0,1.18888],88:[0,.68611,0,0,.86944],89:[0,.68611,.02875,0,.86944],90:[0,.68611,0,0,.70277],91:[.25,.75,0,0,.31944],92:[.25,.75,0,0,.575],93:[.25,.75,0,0,.31944],94:[0,.69444,0,0,.575],95:[.31,.13444,.03194,0,.575],97:[0,.44444,0,0,.55902],98:[0,.69444,0,0,.63889],99:[0,.44444,0,0,.51111],100:[0,.69444,0,0,.63889],101:[0,.44444,0,0,.52708],102:[0,.69444,.10903,0,.35139],103:[.19444,.44444,.01597,0,.575],104:[0,.69444,0,0,.63889],105:[0,.69444,0,0,.31944],106:[.19444,.69444,0,0,.35139],107:[0,.69444,0,0,.60694],108:[0,.69444,0,0,.31944],109:[0,.44444,0,0,.95833],110:[0,.44444,0,0,.63889],111:[0,.44444,0,0,.575],112:[.19444,.44444,0,0,.63889],113:[.19444,.44444,0,0,.60694],114:[0,.44444,0,0,.47361],115:[0,.44444,0,0,.45361],116:[0,.63492,0,0,.44722],117:[0,.44444,0,0,.63889],118:[0,.44444,.01597,0,.60694],119:[0,.44444,.01597,0,.83055],120:[0,.44444,0,0,.60694],121:[.19444,.44444,.01597,0,.60694],122:[0,.44444,0,0,.51111],123:[.25,.75,0,0,.575],124:[.25,.75,0,0,.31944],125:[.25,.75,0,0,.575],126:[.35,.34444,0,0,.575],160:[0,0,0,0,.25],163:[0,.69444,0,0,.86853],168:[0,.69444,0,0,.575],172:[0,.44444,0,0,.76666],176:[0,.69444,0,0,.86944],177:[.13333,.63333,0,0,.89444],184:[.17014,0,0,0,.51111],198:[0,.68611,0,0,1.04166],215:[.13333,.63333,0,0,.89444],216:[.04861,.73472,0,0,.89444],223:[0,.69444,0,0,.59722],230:[0,.44444,0,0,.83055],247:[.13333,.63333,0,0,.89444],248:[.09722,.54167,0,0,.575],305:[0,.44444,0,0,.31944],338:[0,.68611,0,0,1.16944],339:[0,.44444,0,0,.89444],567:[.19444,.44444,0,0,.35139],710:[0,.69444,0,0,.575],711:[0,.63194,0,0,.575],713:[0,.59611,0,0,.575],714:[0,.69444,0,0,.575],715:[0,.69444,0,0,.575],728:[0,.69444,0,0,.575],729:[0,.69444,0,0,.31944],730:[0,.69444,0,0,.86944],732:[0,.69444,0,0,.575],733:[0,.69444,0,0,.575],915:[0,.68611,0,0,.69166],916:[0,.68611,0,0,.95833],920:[0,.68611,0,0,.89444],923:[0,.68611,0,0,.80555],926:[0,.68611,0,0,.76666],928:[0,.68611,0,0,.9],931:[0,.68611,0,0,.83055],933:[0,.68611,0,0,.89444],934:[0,.68611,0,0,.83055],936:[0,.68611,0,0,.89444],937:[0,.68611,0,0,.83055],8211:[0,.44444,.03194,0,.575],8212:[0,.44444,.03194,0,1.14999],8216:[0,.69444,0,0,.31944],8217:[0,.69444,0,0,.31944],8220:[0,.69444,0,0,.60278],8221:[0,.69444,0,0,.60278],8224:[.19444,.69444,0,0,.51111],8225:[.19444,.69444,0,0,.51111],8242:[0,.55556,0,0,.34444],8407:[0,.72444,.15486,0,.575],8463:[0,.69444,0,0,.66759],8465:[0,.69444,0,0,.83055],8467:[0,.69444,0,0,.47361],8472:[.19444,.44444,0,0,.74027],8476:[0,.69444,0,0,.83055],8501:[0,.69444,0,0,.70277],8592:[-.10889,.39111,0,0,1.14999],8593:[.19444,.69444,0,0,.575],8594:[-.10889,.39111,0,0,1.14999],8595:[.19444,.69444,0,0,.575],8596:[-.10889,.39111,0,0,1.14999],8597:[.25,.75,0,0,.575],8598:[.19444,.69444,0,0,1.14999],8599:[.19444,.69444,0,0,1.14999],8600:[.19444,.69444,0,0,1.14999],8601:[.19444,.69444,0,0,1.14999],8636:[-.10889,.39111,0,0,1.14999],8637:[-.10889,.39111,0,0,1.14999],8640:[-.10889,.39111,0,0,1.14999],8641:[-.10889,.39111,0,0,1.14999],8656:[-.10889,.39111,0,0,1.14999],8657:[.19444,.69444,0,0,.70277],8658:[-.10889,.39111,0,0,1.14999],8659:[.19444,.69444,0,0,.70277],8660:[-.10889,.39111,0,0,1.14999],8661:[.25,.75,0,0,.70277],8704:[0,.69444,0,0,.63889],8706:[0,.69444,.06389,0,.62847],8707:[0,.69444,0,0,.63889],8709:[.05556,.75,0,0,.575],8711:[0,.68611,0,0,.95833],8712:[.08556,.58556,0,0,.76666],8715:[.08556,.58556,0,0,.76666],8722:[.13333,.63333,0,0,.89444],8723:[.13333,.63333,0,0,.89444],8725:[.25,.75,0,0,.575],8726:[.25,.75,0,0,.575],8727:[-.02778,.47222,0,0,.575],8728:[-.02639,.47361,0,0,.575],8729:[-.02639,.47361,0,0,.575],8730:[.18,.82,0,0,.95833],8733:[0,.44444,0,0,.89444],8734:[0,.44444,0,0,1.14999],8736:[0,.69224,0,0,.72222],8739:[.25,.75,0,0,.31944],8741:[.25,.75,0,0,.575],8743:[0,.55556,0,0,.76666],8744:[0,.55556,0,0,.76666],8745:[0,.55556,0,0,.76666],8746:[0,.55556,0,0,.76666],8747:[.19444,.69444,.12778,0,.56875],8764:[-.10889,.39111,0,0,.89444],8768:[.19444,.69444,0,0,.31944],8771:[.00222,.50222,0,0,.89444],8773:[.027,.638,0,0,.894],8776:[.02444,.52444,0,0,.89444],8781:[.00222,.50222,0,0,.89444],8801:[.00222,.50222,0,0,.89444],8804:[.19667,.69667,0,0,.89444],8805:[.19667,.69667,0,0,.89444],8810:[.08556,.58556,0,0,1.14999],8811:[.08556,.58556,0,0,1.14999],8826:[.08556,.58556,0,0,.89444],8827:[.08556,.58556,0,0,.89444],8834:[.08556,.58556,0,0,.89444],8835:[.08556,.58556,0,0,.89444],8838:[.19667,.69667,0,0,.89444],8839:[.19667,.69667,0,0,.89444],8846:[0,.55556,0,0,.76666],8849:[.19667,.69667,0,0,.89444],8850:[.19667,.69667,0,0,.89444],8851:[0,.55556,0,0,.76666],8852:[0,.55556,0,0,.76666],8853:[.13333,.63333,0,0,.89444],8854:[.13333,.63333,0,0,.89444],8855:[.13333,.63333,0,0,.89444],8856:[.13333,.63333,0,0,.89444],8857:[.13333,.63333,0,0,.89444],8866:[0,.69444,0,0,.70277],8867:[0,.69444,0,0,.70277],8868:[0,.69444,0,0,.89444],8869:[0,.69444,0,0,.89444],8900:[-.02639,.47361,0,0,.575],8901:[-.02639,.47361,0,0,.31944],8902:[-.02778,.47222,0,0,.575],8968:[.25,.75,0,0,.51111],8969:[.25,.75,0,0,.51111],8970:[.25,.75,0,0,.51111],8971:[.25,.75,0,0,.51111],8994:[-.13889,.36111,0,0,1.14999],8995:[-.13889,.36111,0,0,1.14999],9651:[.19444,.69444,0,0,1.02222],9657:[-.02778,.47222,0,0,.575],9661:[.19444,.69444,0,0,1.02222],9667:[-.02778,.47222,0,0,.575],9711:[.19444,.69444,0,0,1.14999],9824:[.12963,.69444,0,0,.89444],9825:[.12963,.69444,0,0,.89444],9826:[.12963,.69444,0,0,.89444],9827:[.12963,.69444,0,0,.89444],9837:[0,.75,0,0,.44722],9838:[.19444,.69444,0,0,.44722],9839:[.19444,.69444,0,0,.44722],10216:[.25,.75,0,0,.44722],10217:[.25,.75,0,0,.44722],10815:[0,.68611,0,0,.9],10927:[.19667,.69667,0,0,.89444],10928:[.19667,.69667,0,0,.89444],57376:[.19444,.69444,0,0,0]},"Main-BoldItalic":{32:[0,0,0,0,.25],33:[0,.69444,.11417,0,.38611],34:[0,.69444,.07939,0,.62055],35:[.19444,.69444,.06833,0,.94444],37:[.05556,.75,.12861,0,.94444],38:[0,.69444,.08528,0,.88555],39:[0,.69444,.12945,0,.35555],40:[.25,.75,.15806,0,.47333],41:[.25,.75,.03306,0,.47333],42:[0,.75,.14333,0,.59111],43:[.10333,.60333,.03306,0,.88555],44:[.19444,.14722,0,0,.35555],45:[0,.44444,.02611,0,.41444],46:[0,.14722,0,0,.35555],47:[.25,.75,.15806,0,.59111],48:[0,.64444,.13167,0,.59111],49:[0,.64444,.13167,0,.59111],50:[0,.64444,.13167,0,.59111],51:[0,.64444,.13167,0,.59111],52:[.19444,.64444,.13167,0,.59111],53:[0,.64444,.13167,0,.59111],54:[0,.64444,.13167,0,.59111],55:[.19444,.64444,.13167,0,.59111],56:[0,.64444,.13167,0,.59111],57:[0,.64444,.13167,0,.59111],58:[0,.44444,.06695,0,.35555],59:[.19444,.44444,.06695,0,.35555],61:[-.10889,.39111,.06833,0,.88555],63:[0,.69444,.11472,0,.59111],64:[0,.69444,.09208,0,.88555],65:[0,.68611,0,0,.86555],66:[0,.68611,.0992,0,.81666],67:[0,.68611,.14208,0,.82666],68:[0,.68611,.09062,0,.87555],69:[0,.68611,.11431,0,.75666],70:[0,.68611,.12903,0,.72722],71:[0,.68611,.07347,0,.89527],72:[0,.68611,.17208,0,.8961],73:[0,.68611,.15681,0,.47166],74:[0,.68611,.145,0,.61055],75:[0,.68611,.14208,0,.89499],76:[0,.68611,0,0,.69777],77:[0,.68611,.17208,0,1.07277],78:[0,.68611,.17208,0,.8961],79:[0,.68611,.09062,0,.85499],80:[0,.68611,.0992,0,.78721],81:[.19444,.68611,.09062,0,.85499],82:[0,.68611,.02559,0,.85944],83:[0,.68611,.11264,0,.64999],84:[0,.68611,.12903,0,.7961],85:[0,.68611,.17208,0,.88083],86:[0,.68611,.18625,0,.86555],87:[0,.68611,.18625,0,1.15999],88:[0,.68611,.15681,0,.86555],89:[0,.68611,.19803,0,.86555],90:[0,.68611,.14208,0,.70888],91:[.25,.75,.1875,0,.35611],93:[.25,.75,.09972,0,.35611],94:[0,.69444,.06709,0,.59111],95:[.31,.13444,.09811,0,.59111],97:[0,.44444,.09426,0,.59111],98:[0,.69444,.07861,0,.53222],99:[0,.44444,.05222,0,.53222],100:[0,.69444,.10861,0,.59111],101:[0,.44444,.085,0,.53222],102:[.19444,.69444,.21778,0,.4],103:[.19444,.44444,.105,0,.53222],104:[0,.69444,.09426,0,.59111],105:[0,.69326,.11387,0,.35555],106:[.19444,.69326,.1672,0,.35555],107:[0,.69444,.11111,0,.53222],108:[0,.69444,.10861,0,.29666],109:[0,.44444,.09426,0,.94444],110:[0,.44444,.09426,0,.64999],111:[0,.44444,.07861,0,.59111],112:[.19444,.44444,.07861,0,.59111],113:[.19444,.44444,.105,0,.53222],114:[0,.44444,.11111,0,.50167],115:[0,.44444,.08167,0,.48694],116:[0,.63492,.09639,0,.385],117:[0,.44444,.09426,0,.62055],118:[0,.44444,.11111,0,.53222],119:[0,.44444,.11111,0,.76777],120:[0,.44444,.12583,0,.56055],121:[.19444,.44444,.105,0,.56166],122:[0,.44444,.13889,0,.49055],126:[.35,.34444,.11472,0,.59111],160:[0,0,0,0,.25],168:[0,.69444,.11473,0,.59111],176:[0,.69444,0,0,.94888],184:[.17014,0,0,0,.53222],198:[0,.68611,.11431,0,1.02277],216:[.04861,.73472,.09062,0,.88555],223:[.19444,.69444,.09736,0,.665],230:[0,.44444,.085,0,.82666],248:[.09722,.54167,.09458,0,.59111],305:[0,.44444,.09426,0,.35555],338:[0,.68611,.11431,0,1.14054],339:[0,.44444,.085,0,.82666],567:[.19444,.44444,.04611,0,.385],710:[0,.69444,.06709,0,.59111],711:[0,.63194,.08271,0,.59111],713:[0,.59444,.10444,0,.59111],714:[0,.69444,.08528,0,.59111],715:[0,.69444,0,0,.59111],728:[0,.69444,.10333,0,.59111],729:[0,.69444,.12945,0,.35555],730:[0,.69444,0,0,.94888],732:[0,.69444,.11472,0,.59111],733:[0,.69444,.11472,0,.59111],915:[0,.68611,.12903,0,.69777],916:[0,.68611,0,0,.94444],920:[0,.68611,.09062,0,.88555],923:[0,.68611,0,0,.80666],926:[0,.68611,.15092,0,.76777],928:[0,.68611,.17208,0,.8961],931:[0,.68611,.11431,0,.82666],933:[0,.68611,.10778,0,.88555],934:[0,.68611,.05632,0,.82666],936:[0,.68611,.10778,0,.88555],937:[0,.68611,.0992,0,.82666],8211:[0,.44444,.09811,0,.59111],8212:[0,.44444,.09811,0,1.18221],8216:[0,.69444,.12945,0,.35555],8217:[0,.69444,.12945,0,.35555],8220:[0,.69444,.16772,0,.62055],8221:[0,.69444,.07939,0,.62055]},"Main-Italic":{32:[0,0,0,0,.25],33:[0,.69444,.12417,0,.30667],34:[0,.69444,.06961,0,.51444],35:[.19444,.69444,.06616,0,.81777],37:[.05556,.75,.13639,0,.81777],38:[0,.69444,.09694,0,.76666],39:[0,.69444,.12417,0,.30667],40:[.25,.75,.16194,0,.40889],41:[.25,.75,.03694,0,.40889],42:[0,.75,.14917,0,.51111],43:[.05667,.56167,.03694,0,.76666],44:[.19444,.10556,0,0,.30667],45:[0,.43056,.02826,0,.35778],46:[0,.10556,0,0,.30667],47:[.25,.75,.16194,0,.51111],48:[0,.64444,.13556,0,.51111],49:[0,.64444,.13556,0,.51111],50:[0,.64444,.13556,0,.51111],51:[0,.64444,.13556,0,.51111],52:[.19444,.64444,.13556,0,.51111],53:[0,.64444,.13556,0,.51111],54:[0,.64444,.13556,0,.51111],55:[.19444,.64444,.13556,0,.51111],56:[0,.64444,.13556,0,.51111],57:[0,.64444,.13556,0,.51111],58:[0,.43056,.0582,0,.30667],59:[.19444,.43056,.0582,0,.30667],61:[-.13313,.36687,.06616,0,.76666],63:[0,.69444,.1225,0,.51111],64:[0,.69444,.09597,0,.76666],65:[0,.68333,0,0,.74333],66:[0,.68333,.10257,0,.70389],67:[0,.68333,.14528,0,.71555],68:[0,.68333,.09403,0,.755],69:[0,.68333,.12028,0,.67833],70:[0,.68333,.13305,0,.65277],71:[0,.68333,.08722,0,.77361],72:[0,.68333,.16389,0,.74333],73:[0,.68333,.15806,0,.38555],74:[0,.68333,.14028,0,.525],75:[0,.68333,.14528,0,.76888],76:[0,.68333,0,0,.62722],77:[0,.68333,.16389,0,.89666],78:[0,.68333,.16389,0,.74333],79:[0,.68333,.09403,0,.76666],80:[0,.68333,.10257,0,.67833],81:[.19444,.68333,.09403,0,.76666],82:[0,.68333,.03868,0,.72944],83:[0,.68333,.11972,0,.56222],84:[0,.68333,.13305,0,.71555],85:[0,.68333,.16389,0,.74333],86:[0,.68333,.18361,0,.74333],87:[0,.68333,.18361,0,.99888],88:[0,.68333,.15806,0,.74333],89:[0,.68333,.19383,0,.74333],90:[0,.68333,.14528,0,.61333],91:[.25,.75,.1875,0,.30667],93:[.25,.75,.10528,0,.30667],94:[0,.69444,.06646,0,.51111],95:[.31,.12056,.09208,0,.51111],97:[0,.43056,.07671,0,.51111],98:[0,.69444,.06312,0,.46],99:[0,.43056,.05653,0,.46],100:[0,.69444,.10333,0,.51111],101:[0,.43056,.07514,0,.46],102:[.19444,.69444,.21194,0,.30667],103:[.19444,.43056,.08847,0,.46],104:[0,.69444,.07671,0,.51111],105:[0,.65536,.1019,0,.30667],106:[.19444,.65536,.14467,0,.30667],107:[0,.69444,.10764,0,.46],108:[0,.69444,.10333,0,.25555],109:[0,.43056,.07671,0,.81777],110:[0,.43056,.07671,0,.56222],111:[0,.43056,.06312,0,.51111],112:[.19444,.43056,.06312,0,.51111],113:[.19444,.43056,.08847,0,.46],114:[0,.43056,.10764,0,.42166],115:[0,.43056,.08208,0,.40889],116:[0,.61508,.09486,0,.33222],117:[0,.43056,.07671,0,.53666],118:[0,.43056,.10764,0,.46],119:[0,.43056,.10764,0,.66444],120:[0,.43056,.12042,0,.46389],121:[.19444,.43056,.08847,0,.48555],122:[0,.43056,.12292,0,.40889],126:[.35,.31786,.11585,0,.51111],160:[0,0,0,0,.25],168:[0,.66786,.10474,0,.51111],176:[0,.69444,0,0,.83129],184:[.17014,0,0,0,.46],198:[0,.68333,.12028,0,.88277],216:[.04861,.73194,.09403,0,.76666],223:[.19444,.69444,.10514,0,.53666],230:[0,.43056,.07514,0,.71555],248:[.09722,.52778,.09194,0,.51111],338:[0,.68333,.12028,0,.98499],339:[0,.43056,.07514,0,.71555],710:[0,.69444,.06646,0,.51111],711:[0,.62847,.08295,0,.51111],713:[0,.56167,.10333,0,.51111],714:[0,.69444,.09694,0,.51111],715:[0,.69444,0,0,.51111],728:[0,.69444,.10806,0,.51111],729:[0,.66786,.11752,0,.30667],730:[0,.69444,0,0,.83129],732:[0,.66786,.11585,0,.51111],733:[0,.69444,.1225,0,.51111],915:[0,.68333,.13305,0,.62722],916:[0,.68333,0,0,.81777],920:[0,.68333,.09403,0,.76666],923:[0,.68333,0,0,.69222],926:[0,.68333,.15294,0,.66444],928:[0,.68333,.16389,0,.74333],931:[0,.68333,.12028,0,.71555],933:[0,.68333,.11111,0,.76666],934:[0,.68333,.05986,0,.71555],936:[0,.68333,.11111,0,.76666],937:[0,.68333,.10257,0,.71555],8211:[0,.43056,.09208,0,.51111],8212:[0,.43056,.09208,0,1.02222],8216:[0,.69444,.12417,0,.30667],8217:[0,.69444,.12417,0,.30667],8220:[0,.69444,.1685,0,.51444],8221:[0,.69444,.06961,0,.51444],8463:[0,.68889,0,0,.54028]},"Main-Regular":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.27778],34:[0,.69444,0,0,.5],35:[.19444,.69444,0,0,.83334],36:[.05556,.75,0,0,.5],37:[.05556,.75,0,0,.83334],38:[0,.69444,0,0,.77778],39:[0,.69444,0,0,.27778],40:[.25,.75,0,0,.38889],41:[.25,.75,0,0,.38889],42:[0,.75,0,0,.5],43:[.08333,.58333,0,0,.77778],44:[.19444,.10556,0,0,.27778],45:[0,.43056,0,0,.33333],46:[0,.10556,0,0,.27778],47:[.25,.75,0,0,.5],48:[0,.64444,0,0,.5],49:[0,.64444,0,0,.5],50:[0,.64444,0,0,.5],51:[0,.64444,0,0,.5],52:[0,.64444,0,0,.5],53:[0,.64444,0,0,.5],54:[0,.64444,0,0,.5],55:[0,.64444,0,0,.5],56:[0,.64444,0,0,.5],57:[0,.64444,0,0,.5],58:[0,.43056,0,0,.27778],59:[.19444,.43056,0,0,.27778],60:[.0391,.5391,0,0,.77778],61:[-.13313,.36687,0,0,.77778],62:[.0391,.5391,0,0,.77778],63:[0,.69444,0,0,.47222],64:[0,.69444,0,0,.77778],65:[0,.68333,0,0,.75],66:[0,.68333,0,0,.70834],67:[0,.68333,0,0,.72222],68:[0,.68333,0,0,.76389],69:[0,.68333,0,0,.68056],70:[0,.68333,0,0,.65278],71:[0,.68333,0,0,.78472],72:[0,.68333,0,0,.75],73:[0,.68333,0,0,.36111],74:[0,.68333,0,0,.51389],75:[0,.68333,0,0,.77778],76:[0,.68333,0,0,.625],77:[0,.68333,0,0,.91667],78:[0,.68333,0,0,.75],79:[0,.68333,0,0,.77778],80:[0,.68333,0,0,.68056],81:[.19444,.68333,0,0,.77778],82:[0,.68333,0,0,.73611],83:[0,.68333,0,0,.55556],84:[0,.68333,0,0,.72222],85:[0,.68333,0,0,.75],86:[0,.68333,.01389,0,.75],87:[0,.68333,.01389,0,1.02778],88:[0,.68333,0,0,.75],89:[0,.68333,.025,0,.75],90:[0,.68333,0,0,.61111],91:[.25,.75,0,0,.27778],92:[.25,.75,0,0,.5],93:[.25,.75,0,0,.27778],94:[0,.69444,0,0,.5],95:[.31,.12056,.02778,0,.5],97:[0,.43056,0,0,.5],98:[0,.69444,0,0,.55556],99:[0,.43056,0,0,.44445],100:[0,.69444,0,0,.55556],101:[0,.43056,0,0,.44445],102:[0,.69444,.07778,0,.30556],103:[.19444,.43056,.01389,0,.5],104:[0,.69444,0,0,.55556],105:[0,.66786,0,0,.27778],106:[.19444,.66786,0,0,.30556],107:[0,.69444,0,0,.52778],108:[0,.69444,0,0,.27778],109:[0,.43056,0,0,.83334],110:[0,.43056,0,0,.55556],111:[0,.43056,0,0,.5],112:[.19444,.43056,0,0,.55556],113:[.19444,.43056,0,0,.52778],114:[0,.43056,0,0,.39167],115:[0,.43056,0,0,.39445],116:[0,.61508,0,0,.38889],117:[0,.43056,0,0,.55556],118:[0,.43056,.01389,0,.52778],119:[0,.43056,.01389,0,.72222],120:[0,.43056,0,0,.52778],121:[.19444,.43056,.01389,0,.52778],122:[0,.43056,0,0,.44445],123:[.25,.75,0,0,.5],124:[.25,.75,0,0,.27778],125:[.25,.75,0,0,.5],126:[.35,.31786,0,0,.5],160:[0,0,0,0,.25],163:[0,.69444,0,0,.76909],167:[.19444,.69444,0,0,.44445],168:[0,.66786,0,0,.5],172:[0,.43056,0,0,.66667],176:[0,.69444,0,0,.75],177:[.08333,.58333,0,0,.77778],182:[.19444,.69444,0,0,.61111],184:[.17014,0,0,0,.44445],198:[0,.68333,0,0,.90278],215:[.08333,.58333,0,0,.77778],216:[.04861,.73194,0,0,.77778],223:[0,.69444,0,0,.5],230:[0,.43056,0,0,.72222],247:[.08333,.58333,0,0,.77778],248:[.09722,.52778,0,0,.5],305:[0,.43056,0,0,.27778],338:[0,.68333,0,0,1.01389],339:[0,.43056,0,0,.77778],567:[.19444,.43056,0,0,.30556],710:[0,.69444,0,0,.5],711:[0,.62847,0,0,.5],713:[0,.56778,0,0,.5],714:[0,.69444,0,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,0,0,.5],729:[0,.66786,0,0,.27778],730:[0,.69444,0,0,.75],732:[0,.66786,0,0,.5],733:[0,.69444,0,0,.5],915:[0,.68333,0,0,.625],916:[0,.68333,0,0,.83334],920:[0,.68333,0,0,.77778],923:[0,.68333,0,0,.69445],926:[0,.68333,0,0,.66667],928:[0,.68333,0,0,.75],931:[0,.68333,0,0,.72222],933:[0,.68333,0,0,.77778],934:[0,.68333,0,0,.72222],936:[0,.68333,0,0,.77778],937:[0,.68333,0,0,.72222],8211:[0,.43056,.02778,0,.5],8212:[0,.43056,.02778,0,1],8216:[0,.69444,0,0,.27778],8217:[0,.69444,0,0,.27778],8220:[0,.69444,0,0,.5],8221:[0,.69444,0,0,.5],8224:[.19444,.69444,0,0,.44445],8225:[.19444,.69444,0,0,.44445],8230:[0,.123,0,0,1.172],8242:[0,.55556,0,0,.275],8407:[0,.71444,.15382,0,.5],8463:[0,.68889,0,0,.54028],8465:[0,.69444,0,0,.72222],8467:[0,.69444,0,.11111,.41667],8472:[.19444,.43056,0,.11111,.63646],8476:[0,.69444,0,0,.72222],8501:[0,.69444,0,0,.61111],8592:[-.13313,.36687,0,0,1],8593:[.19444,.69444,0,0,.5],8594:[-.13313,.36687,0,0,1],8595:[.19444,.69444,0,0,.5],8596:[-.13313,.36687,0,0,1],8597:[.25,.75,0,0,.5],8598:[.19444,.69444,0,0,1],8599:[.19444,.69444,0,0,1],8600:[.19444,.69444,0,0,1],8601:[.19444,.69444,0,0,1],8614:[.011,.511,0,0,1],8617:[.011,.511,0,0,1.126],8618:[.011,.511,0,0,1.126],8636:[-.13313,.36687,0,0,1],8637:[-.13313,.36687,0,0,1],8640:[-.13313,.36687,0,0,1],8641:[-.13313,.36687,0,0,1],8652:[.011,.671,0,0,1],8656:[-.13313,.36687,0,0,1],8657:[.19444,.69444,0,0,.61111],8658:[-.13313,.36687,0,0,1],8659:[.19444,.69444,0,0,.61111],8660:[-.13313,.36687,0,0,1],8661:[.25,.75,0,0,.61111],8704:[0,.69444,0,0,.55556],8706:[0,.69444,.05556,.08334,.5309],8707:[0,.69444,0,0,.55556],8709:[.05556,.75,0,0,.5],8711:[0,.68333,0,0,.83334],8712:[.0391,.5391,0,0,.66667],8715:[.0391,.5391,0,0,.66667],8722:[.08333,.58333,0,0,.77778],8723:[.08333,.58333,0,0,.77778],8725:[.25,.75,0,0,.5],8726:[.25,.75,0,0,.5],8727:[-.03472,.46528,0,0,.5],8728:[-.05555,.44445,0,0,.5],8729:[-.05555,.44445,0,0,.5],8730:[.2,.8,0,0,.83334],8733:[0,.43056,0,0,.77778],8734:[0,.43056,0,0,1],8736:[0,.69224,0,0,.72222],8739:[.25,.75,0,0,.27778],8741:[.25,.75,0,0,.5],8743:[0,.55556,0,0,.66667],8744:[0,.55556,0,0,.66667],8745:[0,.55556,0,0,.66667],8746:[0,.55556,0,0,.66667],8747:[.19444,.69444,.11111,0,.41667],8764:[-.13313,.36687,0,0,.77778],8768:[.19444,.69444,0,0,.27778],8771:[-.03625,.46375,0,0,.77778],8773:[-.022,.589,0,0,.778],8776:[-.01688,.48312,0,0,.77778],8781:[-.03625,.46375,0,0,.77778],8784:[-.133,.673,0,0,.778],8801:[-.03625,.46375,0,0,.77778],8804:[.13597,.63597,0,0,.77778],8805:[.13597,.63597,0,0,.77778],8810:[.0391,.5391,0,0,1],8811:[.0391,.5391,0,0,1],8826:[.0391,.5391,0,0,.77778],8827:[.0391,.5391,0,0,.77778],8834:[.0391,.5391,0,0,.77778],8835:[.0391,.5391,0,0,.77778],8838:[.13597,.63597,0,0,.77778],8839:[.13597,.63597,0,0,.77778],8846:[0,.55556,0,0,.66667],8849:[.13597,.63597,0,0,.77778],8850:[.13597,.63597,0,0,.77778],8851:[0,.55556,0,0,.66667],8852:[0,.55556,0,0,.66667],8853:[.08333,.58333,0,0,.77778],8854:[.08333,.58333,0,0,.77778],8855:[.08333,.58333,0,0,.77778],8856:[.08333,.58333,0,0,.77778],8857:[.08333,.58333,0,0,.77778],8866:[0,.69444,0,0,.61111],8867:[0,.69444,0,0,.61111],8868:[0,.69444,0,0,.77778],8869:[0,.69444,0,0,.77778],8872:[.249,.75,0,0,.867],8900:[-.05555,.44445,0,0,.5],8901:[-.05555,.44445,0,0,.27778],8902:[-.03472,.46528,0,0,.5],8904:[.005,.505,0,0,.9],8942:[.03,.903,0,0,.278],8943:[-.19,.313,0,0,1.172],8945:[-.1,.823,0,0,1.282],8968:[.25,.75,0,0,.44445],8969:[.25,.75,0,0,.44445],8970:[.25,.75,0,0,.44445],8971:[.25,.75,0,0,.44445],8994:[-.14236,.35764,0,0,1],8995:[-.14236,.35764,0,0,1],9136:[.244,.744,0,0,.412],9137:[.244,.745,0,0,.412],9651:[.19444,.69444,0,0,.88889],9657:[-.03472,.46528,0,0,.5],9661:[.19444,.69444,0,0,.88889],9667:[-.03472,.46528,0,0,.5],9711:[.19444,.69444,0,0,1],9824:[.12963,.69444,0,0,.77778],9825:[.12963,.69444,0,0,.77778],9826:[.12963,.69444,0,0,.77778],9827:[.12963,.69444,0,0,.77778],9837:[0,.75,0,0,.38889],9838:[.19444,.69444,0,0,.38889],9839:[.19444,.69444,0,0,.38889],10216:[.25,.75,0,0,.38889],10217:[.25,.75,0,0,.38889],10222:[.244,.744,0,0,.412],10223:[.244,.745,0,0,.412],10229:[.011,.511,0,0,1.609],10230:[.011,.511,0,0,1.638],10231:[.011,.511,0,0,1.859],10232:[.024,.525,0,0,1.609],10233:[.024,.525,0,0,1.638],10234:[.024,.525,0,0,1.858],10236:[.011,.511,0,0,1.638],10815:[0,.68333,0,0,.75],10927:[.13597,.63597,0,0,.77778],10928:[.13597,.63597,0,0,.77778],57376:[.19444,.69444,0,0,0]},"Math-BoldItalic":{32:[0,0,0,0,.25],48:[0,.44444,0,0,.575],49:[0,.44444,0,0,.575],50:[0,.44444,0,0,.575],51:[.19444,.44444,0,0,.575],52:[.19444,.44444,0,0,.575],53:[.19444,.44444,0,0,.575],54:[0,.64444,0,0,.575],55:[.19444,.44444,0,0,.575],56:[0,.64444,0,0,.575],57:[.19444,.44444,0,0,.575],65:[0,.68611,0,0,.86944],66:[0,.68611,.04835,0,.8664],67:[0,.68611,.06979,0,.81694],68:[0,.68611,.03194,0,.93812],69:[0,.68611,.05451,0,.81007],70:[0,.68611,.15972,0,.68889],71:[0,.68611,0,0,.88673],72:[0,.68611,.08229,0,.98229],73:[0,.68611,.07778,0,.51111],74:[0,.68611,.10069,0,.63125],75:[0,.68611,.06979,0,.97118],76:[0,.68611,0,0,.75555],77:[0,.68611,.11424,0,1.14201],78:[0,.68611,.11424,0,.95034],79:[0,.68611,.03194,0,.83666],80:[0,.68611,.15972,0,.72309],81:[.19444,.68611,0,0,.86861],82:[0,.68611,.00421,0,.87235],83:[0,.68611,.05382,0,.69271],84:[0,.68611,.15972,0,.63663],85:[0,.68611,.11424,0,.80027],86:[0,.68611,.25555,0,.67778],87:[0,.68611,.15972,0,1.09305],88:[0,.68611,.07778,0,.94722],89:[0,.68611,.25555,0,.67458],90:[0,.68611,.06979,0,.77257],97:[0,.44444,0,0,.63287],98:[0,.69444,0,0,.52083],99:[0,.44444,0,0,.51342],100:[0,.69444,0,0,.60972],101:[0,.44444,0,0,.55361],102:[.19444,.69444,.11042,0,.56806],103:[.19444,.44444,.03704,0,.5449],104:[0,.69444,0,0,.66759],105:[0,.69326,0,0,.4048],106:[.19444,.69326,.0622,0,.47083],107:[0,.69444,.01852,0,.6037],108:[0,.69444,.0088,0,.34815],109:[0,.44444,0,0,1.0324],110:[0,.44444,0,0,.71296],111:[0,.44444,0,0,.58472],112:[.19444,.44444,0,0,.60092],113:[.19444,.44444,.03704,0,.54213],114:[0,.44444,.03194,0,.5287],115:[0,.44444,0,0,.53125],116:[0,.63492,0,0,.41528],117:[0,.44444,0,0,.68102],118:[0,.44444,.03704,0,.56666],119:[0,.44444,.02778,0,.83148],120:[0,.44444,0,0,.65903],121:[.19444,.44444,.03704,0,.59028],122:[0,.44444,.04213,0,.55509],160:[0,0,0,0,.25],915:[0,.68611,.15972,0,.65694],916:[0,.68611,0,0,.95833],920:[0,.68611,.03194,0,.86722],923:[0,.68611,0,0,.80555],926:[0,.68611,.07458,0,.84125],928:[0,.68611,.08229,0,.98229],931:[0,.68611,.05451,0,.88507],933:[0,.68611,.15972,0,.67083],934:[0,.68611,0,0,.76666],936:[0,.68611,.11653,0,.71402],937:[0,.68611,.04835,0,.8789],945:[0,.44444,0,0,.76064],946:[.19444,.69444,.03403,0,.65972],947:[.19444,.44444,.06389,0,.59003],948:[0,.69444,.03819,0,.52222],949:[0,.44444,0,0,.52882],950:[.19444,.69444,.06215,0,.50833],951:[.19444,.44444,.03704,0,.6],952:[0,.69444,.03194,0,.5618],953:[0,.44444,0,0,.41204],954:[0,.44444,0,0,.66759],955:[0,.69444,0,0,.67083],956:[.19444,.44444,0,0,.70787],957:[0,.44444,.06898,0,.57685],958:[.19444,.69444,.03021,0,.50833],959:[0,.44444,0,0,.58472],960:[0,.44444,.03704,0,.68241],961:[.19444,.44444,0,0,.6118],962:[.09722,.44444,.07917,0,.42361],963:[0,.44444,.03704,0,.68588],964:[0,.44444,.13472,0,.52083],965:[0,.44444,.03704,0,.63055],966:[.19444,.44444,0,0,.74722],967:[.19444,.44444,0,0,.71805],968:[.19444,.69444,.03704,0,.75833],969:[0,.44444,.03704,0,.71782],977:[0,.69444,0,0,.69155],981:[.19444,.69444,0,0,.7125],982:[0,.44444,.03194,0,.975],1009:[.19444,.44444,0,0,.6118],1013:[0,.44444,0,0,.48333],57649:[0,.44444,0,0,.39352],57911:[.19444,.44444,0,0,.43889]},"Math-Italic":{32:[0,0,0,0,.25],48:[0,.43056,0,0,.5],49:[0,.43056,0,0,.5],50:[0,.43056,0,0,.5],51:[.19444,.43056,0,0,.5],52:[.19444,.43056,0,0,.5],53:[.19444,.43056,0,0,.5],54:[0,.64444,0,0,.5],55:[.19444,.43056,0,0,.5],56:[0,.64444,0,0,.5],57:[.19444,.43056,0,0,.5],65:[0,.68333,0,.13889,.75],66:[0,.68333,.05017,.08334,.75851],67:[0,.68333,.07153,.08334,.71472],68:[0,.68333,.02778,.05556,.82792],69:[0,.68333,.05764,.08334,.7382],70:[0,.68333,.13889,.08334,.64306],71:[0,.68333,0,.08334,.78625],72:[0,.68333,.08125,.05556,.83125],73:[0,.68333,.07847,.11111,.43958],74:[0,.68333,.09618,.16667,.55451],75:[0,.68333,.07153,.05556,.84931],76:[0,.68333,0,.02778,.68056],77:[0,.68333,.10903,.08334,.97014],78:[0,.68333,.10903,.08334,.80347],79:[0,.68333,.02778,.08334,.76278],80:[0,.68333,.13889,.08334,.64201],81:[.19444,.68333,0,.08334,.79056],82:[0,.68333,.00773,.08334,.75929],83:[0,.68333,.05764,.08334,.6132],84:[0,.68333,.13889,.08334,.58438],85:[0,.68333,.10903,.02778,.68278],86:[0,.68333,.22222,0,.58333],87:[0,.68333,.13889,0,.94445],88:[0,.68333,.07847,.08334,.82847],89:[0,.68333,.22222,0,.58056],90:[0,.68333,.07153,.08334,.68264],97:[0,.43056,0,0,.52859],98:[0,.69444,0,0,.42917],99:[0,.43056,0,.05556,.43276],100:[0,.69444,0,.16667,.52049],101:[0,.43056,0,.05556,.46563],102:[.19444,.69444,.10764,.16667,.48959],103:[.19444,.43056,.03588,.02778,.47697],104:[0,.69444,0,0,.57616],105:[0,.65952,0,0,.34451],106:[.19444,.65952,.05724,0,.41181],107:[0,.69444,.03148,0,.5206],108:[0,.69444,.01968,.08334,.29838],109:[0,.43056,0,0,.87801],110:[0,.43056,0,0,.60023],111:[0,.43056,0,.05556,.48472],112:[.19444,.43056,0,.08334,.50313],113:[.19444,.43056,.03588,.08334,.44641],114:[0,.43056,.02778,.05556,.45116],115:[0,.43056,0,.05556,.46875],116:[0,.61508,0,.08334,.36111],117:[0,.43056,0,.02778,.57246],118:[0,.43056,.03588,.02778,.48472],119:[0,.43056,.02691,.08334,.71592],120:[0,.43056,0,.02778,.57153],121:[.19444,.43056,.03588,.05556,.49028],122:[0,.43056,.04398,.05556,.46505],160:[0,0,0,0,.25],915:[0,.68333,.13889,.08334,.61528],916:[0,.68333,0,.16667,.83334],920:[0,.68333,.02778,.08334,.76278],923:[0,.68333,0,.16667,.69445],926:[0,.68333,.07569,.08334,.74236],928:[0,.68333,.08125,.05556,.83125],931:[0,.68333,.05764,.08334,.77986],933:[0,.68333,.13889,.05556,.58333],934:[0,.68333,0,.08334,.66667],936:[0,.68333,.11,.05556,.61222],937:[0,.68333,.05017,.08334,.7724],945:[0,.43056,.0037,.02778,.6397],946:[.19444,.69444,.05278,.08334,.56563],947:[.19444,.43056,.05556,0,.51773],948:[0,.69444,.03785,.05556,.44444],949:[0,.43056,0,.08334,.46632],950:[.19444,.69444,.07378,.08334,.4375],951:[.19444,.43056,.03588,.05556,.49653],952:[0,.69444,.02778,.08334,.46944],953:[0,.43056,0,.05556,.35394],954:[0,.43056,0,0,.57616],955:[0,.69444,0,0,.58334],956:[.19444,.43056,0,.02778,.60255],957:[0,.43056,.06366,.02778,.49398],958:[.19444,.69444,.04601,.11111,.4375],959:[0,.43056,0,.05556,.48472],960:[0,.43056,.03588,0,.57003],961:[.19444,.43056,0,.08334,.51702],962:[.09722,.43056,.07986,.08334,.36285],963:[0,.43056,.03588,0,.57141],964:[0,.43056,.1132,.02778,.43715],965:[0,.43056,.03588,.02778,.54028],966:[.19444,.43056,0,.08334,.65417],967:[.19444,.43056,0,.05556,.62569],968:[.19444,.69444,.03588,.11111,.65139],969:[0,.43056,.03588,0,.62245],977:[0,.69444,0,.08334,.59144],981:[.19444,.69444,0,.08334,.59583],982:[0,.43056,.02778,0,.82813],1009:[.19444,.43056,0,.08334,.51702],1013:[0,.43056,0,.05556,.4059],57649:[0,.43056,0,.02778,.32246],57911:[.19444,.43056,0,.08334,.38403]},"SansSerif-Bold":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.36667],34:[0,.69444,0,0,.55834],35:[.19444,.69444,0,0,.91667],36:[.05556,.75,0,0,.55],37:[.05556,.75,0,0,1.02912],38:[0,.69444,0,0,.83056],39:[0,.69444,0,0,.30556],40:[.25,.75,0,0,.42778],41:[.25,.75,0,0,.42778],42:[0,.75,0,0,.55],43:[.11667,.61667,0,0,.85556],44:[.10556,.13056,0,0,.30556],45:[0,.45833,0,0,.36667],46:[0,.13056,0,0,.30556],47:[.25,.75,0,0,.55],48:[0,.69444,0,0,.55],49:[0,.69444,0,0,.55],50:[0,.69444,0,0,.55],51:[0,.69444,0,0,.55],52:[0,.69444,0,0,.55],53:[0,.69444,0,0,.55],54:[0,.69444,0,0,.55],55:[0,.69444,0,0,.55],56:[0,.69444,0,0,.55],57:[0,.69444,0,0,.55],58:[0,.45833,0,0,.30556],59:[.10556,.45833,0,0,.30556],61:[-.09375,.40625,0,0,.85556],63:[0,.69444,0,0,.51945],64:[0,.69444,0,0,.73334],65:[0,.69444,0,0,.73334],66:[0,.69444,0,0,.73334],67:[0,.69444,0,0,.70278],68:[0,.69444,0,0,.79445],69:[0,.69444,0,0,.64167],70:[0,.69444,0,0,.61111],71:[0,.69444,0,0,.73334],72:[0,.69444,0,0,.79445],73:[0,.69444,0,0,.33056],74:[0,.69444,0,0,.51945],75:[0,.69444,0,0,.76389],76:[0,.69444,0,0,.58056],77:[0,.69444,0,0,.97778],78:[0,.69444,0,0,.79445],79:[0,.69444,0,0,.79445],80:[0,.69444,0,0,.70278],81:[.10556,.69444,0,0,.79445],82:[0,.69444,0,0,.70278],83:[0,.69444,0,0,.61111],84:[0,.69444,0,0,.73334],85:[0,.69444,0,0,.76389],86:[0,.69444,.01528,0,.73334],87:[0,.69444,.01528,0,1.03889],88:[0,.69444,0,0,.73334],89:[0,.69444,.0275,0,.73334],90:[0,.69444,0,0,.67223],91:[.25,.75,0,0,.34306],93:[.25,.75,0,0,.34306],94:[0,.69444,0,0,.55],95:[.35,.10833,.03056,0,.55],97:[0,.45833,0,0,.525],98:[0,.69444,0,0,.56111],99:[0,.45833,0,0,.48889],100:[0,.69444,0,0,.56111],101:[0,.45833,0,0,.51111],102:[0,.69444,.07639,0,.33611],103:[.19444,.45833,.01528,0,.55],104:[0,.69444,0,0,.56111],105:[0,.69444,0,0,.25556],106:[.19444,.69444,0,0,.28611],107:[0,.69444,0,0,.53056],108:[0,.69444,0,0,.25556],109:[0,.45833,0,0,.86667],110:[0,.45833,0,0,.56111],111:[0,.45833,0,0,.55],112:[.19444,.45833,0,0,.56111],113:[.19444,.45833,0,0,.56111],114:[0,.45833,.01528,0,.37222],115:[0,.45833,0,0,.42167],116:[0,.58929,0,0,.40417],117:[0,.45833,0,0,.56111],118:[0,.45833,.01528,0,.5],119:[0,.45833,.01528,0,.74445],120:[0,.45833,0,0,.5],121:[.19444,.45833,.01528,0,.5],122:[0,.45833,0,0,.47639],126:[.35,.34444,0,0,.55],160:[0,0,0,0,.25],168:[0,.69444,0,0,.55],176:[0,.69444,0,0,.73334],180:[0,.69444,0,0,.55],184:[.17014,0,0,0,.48889],305:[0,.45833,0,0,.25556],567:[.19444,.45833,0,0,.28611],710:[0,.69444,0,0,.55],711:[0,.63542,0,0,.55],713:[0,.63778,0,0,.55],728:[0,.69444,0,0,.55],729:[0,.69444,0,0,.30556],730:[0,.69444,0,0,.73334],732:[0,.69444,0,0,.55],733:[0,.69444,0,0,.55],915:[0,.69444,0,0,.58056],916:[0,.69444,0,0,.91667],920:[0,.69444,0,0,.85556],923:[0,.69444,0,0,.67223],926:[0,.69444,0,0,.73334],928:[0,.69444,0,0,.79445],931:[0,.69444,0,0,.79445],933:[0,.69444,0,0,.85556],934:[0,.69444,0,0,.79445],936:[0,.69444,0,0,.85556],937:[0,.69444,0,0,.79445],8211:[0,.45833,.03056,0,.55],8212:[0,.45833,.03056,0,1.10001],8216:[0,.69444,0,0,.30556],8217:[0,.69444,0,0,.30556],8220:[0,.69444,0,0,.55834],8221:[0,.69444,0,0,.55834]},"SansSerif-Italic":{32:[0,0,0,0,.25],33:[0,.69444,.05733,0,.31945],34:[0,.69444,.00316,0,.5],35:[.19444,.69444,.05087,0,.83334],36:[.05556,.75,.11156,0,.5],37:[.05556,.75,.03126,0,.83334],38:[0,.69444,.03058,0,.75834],39:[0,.69444,.07816,0,.27778],40:[.25,.75,.13164,0,.38889],41:[.25,.75,.02536,0,.38889],42:[0,.75,.11775,0,.5],43:[.08333,.58333,.02536,0,.77778],44:[.125,.08333,0,0,.27778],45:[0,.44444,.01946,0,.33333],46:[0,.08333,0,0,.27778],47:[.25,.75,.13164,0,.5],48:[0,.65556,.11156,0,.5],49:[0,.65556,.11156,0,.5],50:[0,.65556,.11156,0,.5],51:[0,.65556,.11156,0,.5],52:[0,.65556,.11156,0,.5],53:[0,.65556,.11156,0,.5],54:[0,.65556,.11156,0,.5],55:[0,.65556,.11156,0,.5],56:[0,.65556,.11156,0,.5],57:[0,.65556,.11156,0,.5],58:[0,.44444,.02502,0,.27778],59:[.125,.44444,.02502,0,.27778],61:[-.13,.37,.05087,0,.77778],63:[0,.69444,.11809,0,.47222],64:[0,.69444,.07555,0,.66667],65:[0,.69444,0,0,.66667],66:[0,.69444,.08293,0,.66667],67:[0,.69444,.11983,0,.63889],68:[0,.69444,.07555,0,.72223],69:[0,.69444,.11983,0,.59722],70:[0,.69444,.13372,0,.56945],71:[0,.69444,.11983,0,.66667],72:[0,.69444,.08094,0,.70834],73:[0,.69444,.13372,0,.27778],74:[0,.69444,.08094,0,.47222],75:[0,.69444,.11983,0,.69445],76:[0,.69444,0,0,.54167],77:[0,.69444,.08094,0,.875],78:[0,.69444,.08094,0,.70834],79:[0,.69444,.07555,0,.73611],80:[0,.69444,.08293,0,.63889],81:[.125,.69444,.07555,0,.73611],82:[0,.69444,.08293,0,.64584],83:[0,.69444,.09205,0,.55556],84:[0,.69444,.13372,0,.68056],85:[0,.69444,.08094,0,.6875],86:[0,.69444,.1615,0,.66667],87:[0,.69444,.1615,0,.94445],88:[0,.69444,.13372,0,.66667],89:[0,.69444,.17261,0,.66667],90:[0,.69444,.11983,0,.61111],91:[.25,.75,.15942,0,.28889],93:[.25,.75,.08719,0,.28889],94:[0,.69444,.0799,0,.5],95:[.35,.09444,.08616,0,.5],97:[0,.44444,.00981,0,.48056],98:[0,.69444,.03057,0,.51667],99:[0,.44444,.08336,0,.44445],100:[0,.69444,.09483,0,.51667],101:[0,.44444,.06778,0,.44445],102:[0,.69444,.21705,0,.30556],103:[.19444,.44444,.10836,0,.5],104:[0,.69444,.01778,0,.51667],105:[0,.67937,.09718,0,.23889],106:[.19444,.67937,.09162,0,.26667],107:[0,.69444,.08336,0,.48889],108:[0,.69444,.09483,0,.23889],109:[0,.44444,.01778,0,.79445],110:[0,.44444,.01778,0,.51667],111:[0,.44444,.06613,0,.5],112:[.19444,.44444,.0389,0,.51667],113:[.19444,.44444,.04169,0,.51667],114:[0,.44444,.10836,0,.34167],115:[0,.44444,.0778,0,.38333],116:[0,.57143,.07225,0,.36111],117:[0,.44444,.04169,0,.51667],118:[0,.44444,.10836,0,.46111],119:[0,.44444,.10836,0,.68334],120:[0,.44444,.09169,0,.46111],121:[.19444,.44444,.10836,0,.46111],122:[0,.44444,.08752,0,.43472],126:[.35,.32659,.08826,0,.5],160:[0,0,0,0,.25],168:[0,.67937,.06385,0,.5],176:[0,.69444,0,0,.73752],184:[.17014,0,0,0,.44445],305:[0,.44444,.04169,0,.23889],567:[.19444,.44444,.04169,0,.26667],710:[0,.69444,.0799,0,.5],711:[0,.63194,.08432,0,.5],713:[0,.60889,.08776,0,.5],714:[0,.69444,.09205,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,.09483,0,.5],729:[0,.67937,.07774,0,.27778],730:[0,.69444,0,0,.73752],732:[0,.67659,.08826,0,.5],733:[0,.69444,.09205,0,.5],915:[0,.69444,.13372,0,.54167],916:[0,.69444,0,0,.83334],920:[0,.69444,.07555,0,.77778],923:[0,.69444,0,0,.61111],926:[0,.69444,.12816,0,.66667],928:[0,.69444,.08094,0,.70834],931:[0,.69444,.11983,0,.72222],933:[0,.69444,.09031,0,.77778],934:[0,.69444,.04603,0,.72222],936:[0,.69444,.09031,0,.77778],937:[0,.69444,.08293,0,.72222],8211:[0,.44444,.08616,0,.5],8212:[0,.44444,.08616,0,1],8216:[0,.69444,.07816,0,.27778],8217:[0,.69444,.07816,0,.27778],8220:[0,.69444,.14205,0,.5],8221:[0,.69444,.00316,0,.5]},"SansSerif-Regular":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.31945],34:[0,.69444,0,0,.5],35:[.19444,.69444,0,0,.83334],36:[.05556,.75,0,0,.5],37:[.05556,.75,0,0,.83334],38:[0,.69444,0,0,.75834],39:[0,.69444,0,0,.27778],40:[.25,.75,0,0,.38889],41:[.25,.75,0,0,.38889],42:[0,.75,0,0,.5],43:[.08333,.58333,0,0,.77778],44:[.125,.08333,0,0,.27778],45:[0,.44444,0,0,.33333],46:[0,.08333,0,0,.27778],47:[.25,.75,0,0,.5],48:[0,.65556,0,0,.5],49:[0,.65556,0,0,.5],50:[0,.65556,0,0,.5],51:[0,.65556,0,0,.5],52:[0,.65556,0,0,.5],53:[0,.65556,0,0,.5],54:[0,.65556,0,0,.5],55:[0,.65556,0,0,.5],56:[0,.65556,0,0,.5],57:[0,.65556,0,0,.5],58:[0,.44444,0,0,.27778],59:[.125,.44444,0,0,.27778],61:[-.13,.37,0,0,.77778],63:[0,.69444,0,0,.47222],64:[0,.69444,0,0,.66667],65:[0,.69444,0,0,.66667],66:[0,.69444,0,0,.66667],67:[0,.69444,0,0,.63889],68:[0,.69444,0,0,.72223],69:[0,.69444,0,0,.59722],70:[0,.69444,0,0,.56945],71:[0,.69444,0,0,.66667],72:[0,.69444,0,0,.70834],73:[0,.69444,0,0,.27778],74:[0,.69444,0,0,.47222],75:[0,.69444,0,0,.69445],76:[0,.69444,0,0,.54167],77:[0,.69444,0,0,.875],78:[0,.69444,0,0,.70834],79:[0,.69444,0,0,.73611],80:[0,.69444,0,0,.63889],81:[.125,.69444,0,0,.73611],82:[0,.69444,0,0,.64584],83:[0,.69444,0,0,.55556],84:[0,.69444,0,0,.68056],85:[0,.69444,0,0,.6875],86:[0,.69444,.01389,0,.66667],87:[0,.69444,.01389,0,.94445],88:[0,.69444,0,0,.66667],89:[0,.69444,.025,0,.66667],90:[0,.69444,0,0,.61111],91:[.25,.75,0,0,.28889],93:[.25,.75,0,0,.28889],94:[0,.69444,0,0,.5],95:[.35,.09444,.02778,0,.5],97:[0,.44444,0,0,.48056],98:[0,.69444,0,0,.51667],99:[0,.44444,0,0,.44445],100:[0,.69444,0,0,.51667],101:[0,.44444,0,0,.44445],102:[0,.69444,.06944,0,.30556],103:[.19444,.44444,.01389,0,.5],104:[0,.69444,0,0,.51667],105:[0,.67937,0,0,.23889],106:[.19444,.67937,0,0,.26667],107:[0,.69444,0,0,.48889],108:[0,.69444,0,0,.23889],109:[0,.44444,0,0,.79445],110:[0,.44444,0,0,.51667],111:[0,.44444,0,0,.5],112:[.19444,.44444,0,0,.51667],113:[.19444,.44444,0,0,.51667],114:[0,.44444,.01389,0,.34167],115:[0,.44444,0,0,.38333],116:[0,.57143,0,0,.36111],117:[0,.44444,0,0,.51667],118:[0,.44444,.01389,0,.46111],119:[0,.44444,.01389,0,.68334],120:[0,.44444,0,0,.46111],121:[.19444,.44444,.01389,0,.46111],122:[0,.44444,0,0,.43472],126:[.35,.32659,0,0,.5],160:[0,0,0,0,.25],168:[0,.67937,0,0,.5],176:[0,.69444,0,0,.66667],184:[.17014,0,0,0,.44445],305:[0,.44444,0,0,.23889],567:[.19444,.44444,0,0,.26667],710:[0,.69444,0,0,.5],711:[0,.63194,0,0,.5],713:[0,.60889,0,0,.5],714:[0,.69444,0,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,0,0,.5],729:[0,.67937,0,0,.27778],730:[0,.69444,0,0,.66667],732:[0,.67659,0,0,.5],733:[0,.69444,0,0,.5],915:[0,.69444,0,0,.54167],916:[0,.69444,0,0,.83334],920:[0,.69444,0,0,.77778],923:[0,.69444,0,0,.61111],926:[0,.69444,0,0,.66667],928:[0,.69444,0,0,.70834],931:[0,.69444,0,0,.72222],933:[0,.69444,0,0,.77778],934:[0,.69444,0,0,.72222],936:[0,.69444,0,0,.77778],937:[0,.69444,0,0,.72222],8211:[0,.44444,.02778,0,.5],8212:[0,.44444,.02778,0,1],8216:[0,.69444,0,0,.27778],8217:[0,.69444,0,0,.27778],8220:[0,.69444,0,0,.5],8221:[0,.69444,0,0,.5]},"Script-Regular":{32:[0,0,0,0,.25],65:[0,.7,.22925,0,.80253],66:[0,.7,.04087,0,.90757],67:[0,.7,.1689,0,.66619],68:[0,.7,.09371,0,.77443],69:[0,.7,.18583,0,.56162],70:[0,.7,.13634,0,.89544],71:[0,.7,.17322,0,.60961],72:[0,.7,.29694,0,.96919],73:[0,.7,.19189,0,.80907],74:[.27778,.7,.19189,0,1.05159],75:[0,.7,.31259,0,.91364],76:[0,.7,.19189,0,.87373],77:[0,.7,.15981,0,1.08031],78:[0,.7,.3525,0,.9015],79:[0,.7,.08078,0,.73787],80:[0,.7,.08078,0,1.01262],81:[0,.7,.03305,0,.88282],82:[0,.7,.06259,0,.85],83:[0,.7,.19189,0,.86767],84:[0,.7,.29087,0,.74697],85:[0,.7,.25815,0,.79996],86:[0,.7,.27523,0,.62204],87:[0,.7,.27523,0,.80532],88:[0,.7,.26006,0,.94445],89:[0,.7,.2939,0,.70961],90:[0,.7,.24037,0,.8212],160:[0,0,0,0,.25]},"Size1-Regular":{32:[0,0,0,0,.25],40:[.35001,.85,0,0,.45834],41:[.35001,.85,0,0,.45834],47:[.35001,.85,0,0,.57778],91:[.35001,.85,0,0,.41667],92:[.35001,.85,0,0,.57778],93:[.35001,.85,0,0,.41667],123:[.35001,.85,0,0,.58334],125:[.35001,.85,0,0,.58334],160:[0,0,0,0,.25],710:[0,.72222,0,0,.55556],732:[0,.72222,0,0,.55556],770:[0,.72222,0,0,.55556],771:[0,.72222,0,0,.55556],8214:[-99e-5,.601,0,0,.77778],8593:[1e-5,.6,0,0,.66667],8595:[1e-5,.6,0,0,.66667],8657:[1e-5,.6,0,0,.77778],8659:[1e-5,.6,0,0,.77778],8719:[.25001,.75,0,0,.94445],8720:[.25001,.75,0,0,.94445],8721:[.25001,.75,0,0,1.05556],8730:[.35001,.85,0,0,1],8739:[-.00599,.606,0,0,.33333],8741:[-.00599,.606,0,0,.55556],8747:[.30612,.805,.19445,0,.47222],8748:[.306,.805,.19445,0,.47222],8749:[.306,.805,.19445,0,.47222],8750:[.30612,.805,.19445,0,.47222],8896:[.25001,.75,0,0,.83334],8897:[.25001,.75,0,0,.83334],8898:[.25001,.75,0,0,.83334],8899:[.25001,.75,0,0,.83334],8968:[.35001,.85,0,0,.47222],8969:[.35001,.85,0,0,.47222],8970:[.35001,.85,0,0,.47222],8971:[.35001,.85,0,0,.47222],9168:[-99e-5,.601,0,0,.66667],10216:[.35001,.85,0,0,.47222],10217:[.35001,.85,0,0,.47222],10752:[.25001,.75,0,0,1.11111],10753:[.25001,.75,0,0,1.11111],10754:[.25001,.75,0,0,1.11111],10756:[.25001,.75,0,0,.83334],10758:[.25001,.75,0,0,.83334]},"Size2-Regular":{32:[0,0,0,0,.25],40:[.65002,1.15,0,0,.59722],41:[.65002,1.15,0,0,.59722],47:[.65002,1.15,0,0,.81111],91:[.65002,1.15,0,0,.47222],92:[.65002,1.15,0,0,.81111],93:[.65002,1.15,0,0,.47222],123:[.65002,1.15,0,0,.66667],125:[.65002,1.15,0,0,.66667],160:[0,0,0,0,.25],710:[0,.75,0,0,1],732:[0,.75,0,0,1],770:[0,.75,0,0,1],771:[0,.75,0,0,1],8719:[.55001,1.05,0,0,1.27778],8720:[.55001,1.05,0,0,1.27778],8721:[.55001,1.05,0,0,1.44445],8730:[.65002,1.15,0,0,1],8747:[.86225,1.36,.44445,0,.55556],8748:[.862,1.36,.44445,0,.55556],8749:[.862,1.36,.44445,0,.55556],8750:[.86225,1.36,.44445,0,.55556],8896:[.55001,1.05,0,0,1.11111],8897:[.55001,1.05,0,0,1.11111],8898:[.55001,1.05,0,0,1.11111],8899:[.55001,1.05,0,0,1.11111],8968:[.65002,1.15,0,0,.52778],8969:[.65002,1.15,0,0,.52778],8970:[.65002,1.15,0,0,.52778],8971:[.65002,1.15,0,0,.52778],10216:[.65002,1.15,0,0,.61111],10217:[.65002,1.15,0,0,.61111],10752:[.55001,1.05,0,0,1.51112],10753:[.55001,1.05,0,0,1.51112],10754:[.55001,1.05,0,0,1.51112],10756:[.55001,1.05,0,0,1.11111],10758:[.55001,1.05,0,0,1.11111]},"Size3-Regular":{32:[0,0,0,0,.25],40:[.95003,1.45,0,0,.73611],41:[.95003,1.45,0,0,.73611],47:[.95003,1.45,0,0,1.04445],91:[.95003,1.45,0,0,.52778],92:[.95003,1.45,0,0,1.04445],93:[.95003,1.45,0,0,.52778],123:[.95003,1.45,0,0,.75],125:[.95003,1.45,0,0,.75],160:[0,0,0,0,.25],710:[0,.75,0,0,1.44445],732:[0,.75,0,0,1.44445],770:[0,.75,0,0,1.44445],771:[0,.75,0,0,1.44445],8730:[.95003,1.45,0,0,1],8968:[.95003,1.45,0,0,.58334],8969:[.95003,1.45,0,0,.58334],8970:[.95003,1.45,0,0,.58334],8971:[.95003,1.45,0,0,.58334],10216:[.95003,1.45,0,0,.75],10217:[.95003,1.45,0,0,.75]},"Size4-Regular":{32:[0,0,0,0,.25],40:[1.25003,1.75,0,0,.79167],41:[1.25003,1.75,0,0,.79167],47:[1.25003,1.75,0,0,1.27778],91:[1.25003,1.75,0,0,.58334],92:[1.25003,1.75,0,0,1.27778],93:[1.25003,1.75,0,0,.58334],123:[1.25003,1.75,0,0,.80556],125:[1.25003,1.75,0,0,.80556],160:[0,0,0,0,.25],710:[0,.825,0,0,1.8889],732:[0,.825,0,0,1.8889],770:[0,.825,0,0,1.8889],771:[0,.825,0,0,1.8889],8730:[1.25003,1.75,0,0,1],8968:[1.25003,1.75,0,0,.63889],8969:[1.25003,1.75,0,0,.63889],8970:[1.25003,1.75,0,0,.63889],8971:[1.25003,1.75,0,0,.63889],9115:[.64502,1.155,0,0,.875],9116:[1e-5,.6,0,0,.875],9117:[.64502,1.155,0,0,.875],9118:[.64502,1.155,0,0,.875],9119:[1e-5,.6,0,0,.875],9120:[.64502,1.155,0,0,.875],9121:[.64502,1.155,0,0,.66667],9122:[-99e-5,.601,0,0,.66667],9123:[.64502,1.155,0,0,.66667],9124:[.64502,1.155,0,0,.66667],9125:[-99e-5,.601,0,0,.66667],9126:[.64502,1.155,0,0,.66667],9127:[1e-5,.9,0,0,.88889],9128:[.65002,1.15,0,0,.88889],9129:[.90001,0,0,0,.88889],9130:[0,.3,0,0,.88889],9131:[1e-5,.9,0,0,.88889],9132:[.65002,1.15,0,0,.88889],9133:[.90001,0,0,0,.88889],9143:[.88502,.915,0,0,1.05556],10216:[1.25003,1.75,0,0,.80556],10217:[1.25003,1.75,0,0,.80556],57344:[-.00499,.605,0,0,1.05556],57345:[-.00499,.605,0,0,1.05556],57680:[0,.12,0,0,.45],57681:[0,.12,0,0,.45],57682:[0,.12,0,0,.45],57683:[0,.12,0,0,.45]},"Typewriter-Regular":{32:[0,0,0,0,.525],33:[0,.61111,0,0,.525],34:[0,.61111,0,0,.525],35:[0,.61111,0,0,.525],36:[.08333,.69444,0,0,.525],37:[.08333,.69444,0,0,.525],38:[0,.61111,0,0,.525],39:[0,.61111,0,0,.525],40:[.08333,.69444,0,0,.525],41:[.08333,.69444,0,0,.525],42:[0,.52083,0,0,.525],43:[-.08056,.53055,0,0,.525],44:[.13889,.125,0,0,.525],45:[-.08056,.53055,0,0,.525],46:[0,.125,0,0,.525],47:[.08333,.69444,0,0,.525],48:[0,.61111,0,0,.525],49:[0,.61111,0,0,.525],50:[0,.61111,0,0,.525],51:[0,.61111,0,0,.525],52:[0,.61111,0,0,.525],53:[0,.61111,0,0,.525],54:[0,.61111,0,0,.525],55:[0,.61111,0,0,.525],56:[0,.61111,0,0,.525],57:[0,.61111,0,0,.525],58:[0,.43056,0,0,.525],59:[.13889,.43056,0,0,.525],60:[-.05556,.55556,0,0,.525],61:[-.19549,.41562,0,0,.525],62:[-.05556,.55556,0,0,.525],63:[0,.61111,0,0,.525],64:[0,.61111,0,0,.525],65:[0,.61111,0,0,.525],66:[0,.61111,0,0,.525],67:[0,.61111,0,0,.525],68:[0,.61111,0,0,.525],69:[0,.61111,0,0,.525],70:[0,.61111,0,0,.525],71:[0,.61111,0,0,.525],72:[0,.61111,0,0,.525],73:[0,.61111,0,0,.525],74:[0,.61111,0,0,.525],75:[0,.61111,0,0,.525],76:[0,.61111,0,0,.525],77:[0,.61111,0,0,.525],78:[0,.61111,0,0,.525],79:[0,.61111,0,0,.525],80:[0,.61111,0,0,.525],81:[.13889,.61111,0,0,.525],82:[0,.61111,0,0,.525],83:[0,.61111,0,0,.525],84:[0,.61111,0,0,.525],85:[0,.61111,0,0,.525],86:[0,.61111,0,0,.525],87:[0,.61111,0,0,.525],88:[0,.61111,0,0,.525],89:[0,.61111,0,0,.525],90:[0,.61111,0,0,.525],91:[.08333,.69444,0,0,.525],92:[.08333,.69444,0,0,.525],93:[.08333,.69444,0,0,.525],94:[0,.61111,0,0,.525],95:[.09514,0,0,0,.525],96:[0,.61111,0,0,.525],97:[0,.43056,0,0,.525],98:[0,.61111,0,0,.525],99:[0,.43056,0,0,.525],100:[0,.61111,0,0,.525],101:[0,.43056,0,0,.525],102:[0,.61111,0,0,.525],103:[.22222,.43056,0,0,.525],104:[0,.61111,0,0,.525],105:[0,.61111,0,0,.525],106:[.22222,.61111,0,0,.525],107:[0,.61111,0,0,.525],108:[0,.61111,0,0,.525],109:[0,.43056,0,0,.525],110:[0,.43056,0,0,.525],111:[0,.43056,0,0,.525],112:[.22222,.43056,0,0,.525],113:[.22222,.43056,0,0,.525],114:[0,.43056,0,0,.525],115:[0,.43056,0,0,.525],116:[0,.55358,0,0,.525],117:[0,.43056,0,0,.525],118:[0,.43056,0,0,.525],119:[0,.43056,0,0,.525],120:[0,.43056,0,0,.525],121:[.22222,.43056,0,0,.525],122:[0,.43056,0,0,.525],123:[.08333,.69444,0,0,.525],124:[.08333,.69444,0,0,.525],125:[.08333,.69444,0,0,.525],126:[0,.61111,0,0,.525],127:[0,.61111,0,0,.525],160:[0,0,0,0,.525],176:[0,.61111,0,0,.525],184:[.19445,0,0,0,.525],305:[0,.43056,0,0,.525],567:[.22222,.43056,0,0,.525],711:[0,.56597,0,0,.525],713:[0,.56555,0,0,.525],714:[0,.61111,0,0,.525],715:[0,.61111,0,0,.525],728:[0,.61111,0,0,.525],730:[0,.61111,0,0,.525],770:[0,.61111,0,0,.525],771:[0,.61111,0,0,.525],776:[0,.61111,0,0,.525],915:[0,.61111,0,0,.525],916:[0,.61111,0,0,.525],920:[0,.61111,0,0,.525],923:[0,.61111,0,0,.525],926:[0,.61111,0,0,.525],928:[0,.61111,0,0,.525],931:[0,.61111,0,0,.525],933:[0,.61111,0,0,.525],934:[0,.61111,0,0,.525],936:[0,.61111,0,0,.525],937:[0,.61111,0,0,.525],8216:[0,.61111,0,0,.525],8217:[0,.61111,0,0,.525],8242:[0,.61111,0,0,.525],9251:[.11111,.21944,0,0,.525]}},B={slant:[.25,.25,.25],space:[0,0,0],stretch:[0,0,0],shrink:[0,0,0],xHeight:[.431,.431,.431],quad:[1,1.171,1.472],extraSpace:[0,0,0],num1:[.677,.732,.925],num2:[.394,.384,.387],num3:[.444,.471,.504],denom1:[.686,.752,1.025],denom2:[.345,.344,.532],sup1:[.413,.503,.504],sup2:[.363,.431,.404],sup3:[.289,.286,.294],sub1:[.15,.143,.2],sub2:[.247,.286,.4],supDrop:[.386,.353,.494],subDrop:[.05,.071,.1],delim1:[2.39,1.7,1.98],delim2:[1.01,1.157,1.42],axisHeight:[.25,.25,.25],defaultRuleThickness:[.04,.049,.049],bigOpSpacing1:[.111,.111,.111],bigOpSpacing2:[.166,.166,.166],bigOpSpacing3:[.2,.2,.2],bigOpSpacing4:[.6,.611,.611],bigOpSpacing5:[.1,.143,.143],sqrtRuleThickness:[.04,.04,.04],ptPerEm:[10,10,10],doubleRuleSep:[.2,.2,.2],arrayRuleWidth:[.04,.04,.04],fboxsep:[.3,.3,.3],fboxrule:[.04,.04,.04]},C={"\xc5":"A","\xd0":"D","\xde":"o","\xe5":"a","\xf0":"d","\xfe":"o","\u0410":"A","\u0411":"B","\u0412":"B","\u0413":"F","\u0414":"A","\u0415":"E","\u0416":"K","\u0417":"3","\u0418":"N","\u0419":"N","\u041a":"K","\u041b":"N","\u041c":"M","\u041d":"H","\u041e":"O","\u041f":"N","\u0420":"P","\u0421":"C","\u0422":"T","\u0423":"y","\u0424":"O","\u0425":"X","\u0426":"U","\u0427":"h","\u0428":"W","\u0429":"W","\u042a":"B","\u042b":"X","\u042c":"B","\u042d":"3","\u042e":"X","\u042f":"R","\u0430":"a","\u0431":"b","\u0432":"a","\u0433":"r","\u0434":"y","\u0435":"e","\u0436":"m","\u0437":"e","\u0438":"n","\u0439":"n","\u043a":"n","\u043b":"n","\u043c":"m","\u043d":"n","\u043e":"o","\u043f":"n","\u0440":"p","\u0441":"c","\u0442":"o","\u0443":"y","\u0444":"b","\u0445":"x","\u0446":"n","\u0447":"n","\u0448":"w","\u0449":"w","\u044a":"a","\u044b":"m","\u044c":"a","\u044d":"e","\u044e":"m","\u044f":"r"};function N(e,t,r){if(!T[t])throw new Error("Font metrics not found for font: "+t+".");var n=e.charCodeAt(0),a=T[t][n];if(!a&&e[0]in C&&(n=C[e[0]].charCodeAt(0),a=T[t][n]),a||"text"!==r||S(n)&&(a=T[t][77]),a)return{depth:a[0],height:a[1],italic:a[2],skew:a[3],width:a[4]}}var q={};var I=[[1,1,1],[2,1,1],[3,1,1],[4,2,1],[5,2,1],[6,3,1],[7,4,2],[8,6,3],[9,7,6],[10,8,7],[11,10,9]],R=[.5,.6,.7,.8,.9,1,1.2,1.44,1.728,2.074,2.488],H=function(e,t){return t.size<2?e:I[e-1][t.size-1]},O=function(){function e(t){this.style=void 0,this.color=void 0,this.size=void 0,this.textSize=void 0,this.phantom=void 0,this.font=void 0,this.fontFamily=void 0,this.fontWeight=void 0,this.fontShape=void 0,this.sizeMultiplier=void 0,this.maxSize=void 0,this.minRuleThickness=void 0,this._fontMetrics=void 0,this.style=t.style,this.color=t.color,this.size=t.size||e.BASESIZE,this.textSize=t.textSize||this.size,this.phantom=!!t.phantom,this.font=t.font||"",this.fontFamily=t.fontFamily||"",this.fontWeight=t.fontWeight||"",this.fontShape=t.fontShape||"",this.sizeMultiplier=R[this.size-1],this.maxSize=t.maxSize,this.minRuleThickness=t.minRuleThickness,this._fontMetrics=void 0}var t=e.prototype;return t.extend=function(t){var r={style:this.style,size:this.size,textSize:this.textSize,color:this.color,phantom:this.phantom,font:this.font,fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontShape:this.fontShape,maxSize:this.maxSize,minRuleThickness:this.minRuleThickness};for(var n in t)t.hasOwnProperty(n)&&(r[n]=t[n]);return new e(r)},t.havingStyle=function(e){return this.style===e?this:this.extend({style:e,size:H(this.textSize,e)})},t.havingCrampedStyle=function(){return this.havingStyle(this.style.cramp())},t.havingSize=function(e){return this.size===e&&this.textSize===e?this:this.extend({style:this.style.text(),size:e,textSize:e,sizeMultiplier:R[e-1]})},t.havingBaseStyle=function(t){t=t||this.style.text();var r=H(e.BASESIZE,t);return this.size===r&&this.textSize===e.BASESIZE&&this.style===t?this:this.extend({style:t,size:r})},t.havingBaseSizing=function(){var e;switch(this.style.id){case 4:case 5:e=3;break;case 6:case 7:e=1;break;default:e=6}return this.extend({style:this.style.text(),size:e})},t.withColor=function(e){return this.extend({color:e})},t.withPhantom=function(){return this.extend({phantom:!0})},t.withFont=function(e){return this.extend({font:e})},t.withTextFontFamily=function(e){return this.extend({fontFamily:e,font:""})},t.withTextFontWeight=function(e){return this.extend({fontWeight:e,font:""})},t.withTextFontShape=function(e){return this.extend({fontShape:e,font:""})},t.sizingClasses=function(e){return e.size!==this.size?["sizing","reset-size"+e.size,"size"+this.size]:[]},t.baseSizingClasses=function(){return this.size!==e.BASESIZE?["sizing","reset-size"+this.size,"size"+e.BASESIZE]:[]},t.fontMetrics=function(){return this._fontMetrics||(this._fontMetrics=function(e){var t;if(!q[t=e>=5?0:e>=3?1:2]){var r=q[t]={cssEmPerMu:B.quad[t]/18};for(var n in B)B.hasOwnProperty(n)&&(r[n]=B[n][t])}return q[t]}(this.size)),this._fontMetrics},t.getColor=function(){return this.phantom?"transparent":this.color},e}();O.BASESIZE=6;var E=O,L={pt:1,mm:7227/2540,cm:7227/254,in:72.27,bp:1.00375,pc:12,dd:1238/1157,cc:14856/1157,nd:685/642,nc:1370/107,sp:1/65536,px:1.00375},D={ex:!0,em:!0,mu:!0},V=function(e){return"string"!=typeof e&&(e=e.unit),e in L||e in D||"ex"===e},P=function(e,t){var r;if(e.unit in L)r=L[e.unit]/t.fontMetrics().ptPerEm/t.sizeMultiplier;else if("mu"===e.unit)r=t.fontMetrics().cssEmPerMu;else{var a;if(a=t.style.isTight()?t.havingStyle(t.style.text()):t,"ex"===e.unit)r=a.fontMetrics().xHeight;else{if("em"!==e.unit)throw new n("Invalid unit: '"+e.unit+"'");r=a.fontMetrics().quad}a!==t&&(r*=a.sizeMultiplier/t.sizeMultiplier)}return Math.min(e.number*r,t.maxSize)},F=function(e){return+e.toFixed(4)+"em"},G=function(e){return e.filter((function(e){return e})).join(" ")},U=function(e,t,r){if(this.classes=e||[],this.attributes={},this.height=0,this.depth=0,this.maxFontSize=0,this.style=r||{},t){t.style.isTight()&&this.classes.push("mtight");var n=t.getColor();n&&(this.style.color=n)}},Y=function(e){var t=document.createElement(e);for(var r in t.className=G(this.classes),this.style)this.style.hasOwnProperty(r)&&(t.style[r]=this.style[r]);for(var n in this.attributes)this.attributes.hasOwnProperty(n)&&t.setAttribute(n,this.attributes[n]);for(var a=0;a<this.children.length;a++)t.appendChild(this.children[a].toNode());return t},X=function(e){var t="<"+e;this.classes.length&&(t+=' class="'+l.escape(G(this.classes))+'"');var r="";for(var n in this.style)this.style.hasOwnProperty(n)&&(r+=l.hyphenate(n)+":"+this.style[n]+";");for(var a in r&&(t+=' style="'+l.escape(r)+'"'),this.attributes)this.attributes.hasOwnProperty(a)&&(t+=" "+a+'="'+l.escape(this.attributes[a])+'"');t+=">";for(var i=0;i<this.children.length;i++)t+=this.children[i].toMarkup();return t+="</"+e+">"},W=function(){function e(e,t,r,n){this.children=void 0,this.attributes=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.width=void 0,this.maxFontSize=void 0,this.style=void 0,U.call(this,e,r,n),this.children=t||[]}var t=e.prototype;return t.setAttribute=function(e,t){this.attributes[e]=t},t.hasClass=function(e){return l.contains(this.classes,e)},t.toNode=function(){return Y.call(this,"span")},t.toMarkup=function(){return X.call(this,"span")},e}(),_=function(){function e(e,t,r,n){this.children=void 0,this.attributes=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,U.call(this,t,n),this.children=r||[],this.setAttribute("href",e)}var t=e.prototype;return t.setAttribute=function(e,t){this.attributes[e]=t},t.hasClass=function(e){return l.contains(this.classes,e)},t.toNode=function(){return Y.call(this,"a")},t.toMarkup=function(){return X.call(this,"a")},e}(),j=function(){function e(e,t,r){this.src=void 0,this.alt=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,this.alt=t,this.src=e,this.classes=["mord"],this.style=r}var t=e.prototype;return t.hasClass=function(e){return l.contains(this.classes,e)},t.toNode=function(){var e=document.createElement("img");for(var t in e.src=this.src,e.alt=this.alt,e.className="mord",this.style)this.style.hasOwnProperty(t)&&(e.style[t]=this.style[t]);return e},t.toMarkup=function(){var e="<img src='"+this.src+" 'alt='"+this.alt+"' ",t="";for(var r in this.style)this.style.hasOwnProperty(r)&&(t+=l.hyphenate(r)+":"+this.style[r]+";");return t&&(e+=' style="'+l.escape(t)+'"'),e+="'/>"},e}(),$={"\xee":"\u0131\u0302","\xef":"\u0131\u0308","\xed":"\u0131\u0301","\xec":"\u0131\u0300"},Z=function(){function e(e,t,r,n,a,i,o,s){this.text=void 0,this.height=void 0,this.depth=void 0,this.italic=void 0,this.skew=void 0,this.width=void 0,this.maxFontSize=void 0,this.classes=void 0,this.style=void 0,this.text=e,this.height=t||0,this.depth=r||0,this.italic=n||0,this.skew=a||0,this.width=i||0,this.classes=o||[],this.style=s||{},this.maxFontSize=0;var l=function(e){for(var t=0;t<w.length;t++)for(var r=w[t],n=0;n<r.blocks.length;n++){var a=r.blocks[n];if(e>=a[0]&&e<=a[1])return r.name}return null}(this.text.charCodeAt(0));l&&this.classes.push(l+"_fallback"),/[\xee\xef\xed\xec]/.test(this.text)&&(this.text=$[this.text])}var t=e.prototype;return t.hasClass=function(e){return l.contains(this.classes,e)},t.toNode=function(){var e=document.createTextNode(this.text),t=null;for(var r in this.italic>0&&((t=document.createElement("span")).style.marginRight=F(this.italic)),this.classes.length>0&&((t=t||document.createElement("span")).className=G(this.classes)),this.style)this.style.hasOwnProperty(r)&&((t=t||document.createElement("span")).style[r]=this.style[r]);return t?(t.appendChild(e),t):e},t.toMarkup=function(){var e=!1,t="<span";this.classes.length&&(e=!0,t+=' class="',t+=l.escape(G(this.classes)),t+='"');var r="";for(var n in this.italic>0&&(r+="margin-right:"+this.italic+"em;"),this.style)this.style.hasOwnProperty(n)&&(r+=l.hyphenate(n)+":"+this.style[n]+";");r&&(e=!0,t+=' style="'+l.escape(r)+'"');var a=l.escape(this.text);return e?(t+=">",t+=a,t+="</span>"):a},e}(),K=function(){function e(e,t){this.children=void 0,this.attributes=void 0,this.children=e||[],this.attributes=t||{}}var t=e.prototype;return t.toNode=function(){var e=document.createElementNS("http://www.w3.org/2000/svg","svg");for(var t in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,t)&&e.setAttribute(t,this.attributes[t]);for(var r=0;r<this.children.length;r++)e.appendChild(this.children[r].toNode());return e},t.toMarkup=function(){var e='<svg xmlns="http://www.w3.org/2000/svg"';for(var t in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,t)&&(e+=" "+t+"='"+this.attributes[t]+"'");e+=">";for(var r=0;r<this.children.length;r++)e+=this.children[r].toMarkup();return e+="</svg>"},e}(),J=function(){function e(e,t){this.pathName=void 0,this.alternate=void 0,this.pathName=e,this.alternate=t}var t=e.prototype;return t.toNode=function(){var e=document.createElementNS("http://www.w3.org/2000/svg","path");return this.alternate?e.setAttribute("d",this.alternate):e.setAttribute("d",z[this.pathName]),e},t.toMarkup=function(){return this.alternate?"<path d='"+this.alternate+"'/>":"<path d='"+z[this.pathName]+"'/>"},e}(),Q=function(){function e(e){this.attributes=void 0,this.attributes=e||{}}var t=e.prototype;return t.toNode=function(){var e=document.createElementNS("http://www.w3.org/2000/svg","line");for(var t in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,t)&&e.setAttribute(t,this.attributes[t]);return e},t.toMarkup=function(){var e="<line";for(var t in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,t)&&(e+=" "+t+"='"+this.attributes[t]+"'");return e+="/>"},e}();function ee(e){if(e instanceof Z)return e;throw new Error("Expected symbolNode but got "+String(e)+".")}var te={bin:1,close:1,inner:1,open:1,punct:1,rel:1},re={"accent-token":1,mathord:1,"op-token":1,spacing:1,textord:1},ne={math:{},text:{}},ae=ne;function ie(e,t,r,n,a,i){ne[e][a]={font:t,group:r,replace:n},i&&n&&(ne[e][n]=ne[e][a])}var oe="math",se="text",le="main",he="ams",ce="accent-token",me="bin",ue="close",pe="inner",de="mathord",fe="op-token",ge="open",ve="punct",be="rel",ye="spacing",xe="textord";ie(oe,le,be,"\u2261","\\equiv",!0),ie(oe,le,be,"\u227a","\\prec",!0),ie(oe,le,be,"\u227b","\\succ",!0),ie(oe,le,be,"\u223c","\\sim",!0),ie(oe,le,be,"\u22a5","\\perp"),ie(oe,le,be,"\u2aaf","\\preceq",!0),ie(oe,le,be,"\u2ab0","\\succeq",!0),ie(oe,le,be,"\u2243","\\simeq",!0),ie(oe,le,be,"\u2223","\\mid",!0),ie(oe,le,be,"\u226a","\\ll",!0),ie(oe,le,be,"\u226b","\\gg",!0),ie(oe,le,be,"\u224d","\\asymp",!0),ie(oe,le,be,"\u2225","\\parallel"),ie(oe,le,be,"\u22c8","\\bowtie",!0),ie(oe,le,be,"\u2323","\\smile",!0),ie(oe,le,be,"\u2291","\\sqsubseteq",!0),ie(oe,le,be,"\u2292","\\sqsupseteq",!0),ie(oe,le,be,"\u2250","\\doteq",!0),ie(oe,le,be,"\u2322","\\frown",!0),ie(oe,le,be,"\u220b","\\ni",!0),ie(oe,le,be,"\u221d","\\propto",!0),ie(oe,le,be,"\u22a2","\\vdash",!0),ie(oe,le,be,"\u22a3","\\dashv",!0),ie(oe,le,be,"\u220b","\\owns"),ie(oe,le,ve,".","\\ldotp"),ie(oe,le,ve,"\u22c5","\\cdotp"),ie(oe,le,xe,"#","\\#"),ie(se,le,xe,"#","\\#"),ie(oe,le,xe,"&","\\&"),ie(se,le,xe,"&","\\&"),ie(oe,le,xe,"\u2135","\\aleph",!0),ie(oe,le,xe,"\u2200","\\forall",!0),ie(oe,le,xe,"\u210f","\\hbar",!0),ie(oe,le,xe,"\u2203","\\exists",!0),ie(oe,le,xe,"\u2207","\\nabla",!0),ie(oe,le,xe,"\u266d","\\flat",!0),ie(oe,le,xe,"\u2113","\\ell",!0),ie(oe,le,xe,"\u266e","\\natural",!0),ie(oe,le,xe,"\u2663","\\clubsuit",!0),ie(oe,le,xe,"\u2118","\\wp",!0),ie(oe,le,xe,"\u266f","\\sharp",!0),ie(oe,le,xe,"\u2662","\\diamondsuit",!0),ie(oe,le,xe,"\u211c","\\Re",!0),ie(oe,le,xe,"\u2661","\\heartsuit",!0),ie(oe,le,xe,"\u2111","\\Im",!0),ie(oe,le,xe,"\u2660","\\spadesuit",!0),ie(oe,le,xe,"\xa7","\\S",!0),ie(se,le,xe,"\xa7","\\S"),ie(oe,le,xe,"\xb6","\\P",!0),ie(se,le,xe,"\xb6","\\P"),ie(oe,le,xe,"\u2020","\\dag"),ie(se,le,xe,"\u2020","\\dag"),ie(se,le,xe,"\u2020","\\textdagger"),ie(oe,le,xe,"\u2021","\\ddag"),ie(se,le,xe,"\u2021","\\ddag"),ie(se,le,xe,"\u2021","\\textdaggerdbl"),ie(oe,le,ue,"\u23b1","\\rmoustache",!0),ie(oe,le,ge,"\u23b0","\\lmoustache",!0),ie(oe,le,ue,"\u27ef","\\rgroup",!0),ie(oe,le,ge,"\u27ee","\\lgroup",!0),ie(oe,le,me,"\u2213","\\mp",!0),ie(oe,le,me,"\u2296","\\ominus",!0),ie(oe,le,me,"\u228e","\\uplus",!0),ie(oe,le,me,"\u2293","\\sqcap",!0),ie(oe,le,me,"\u2217","\\ast"),ie(oe,le,me,"\u2294","\\sqcup",!0),ie(oe,le,me,"\u25ef","\\bigcirc",!0),ie(oe,le,me,"\u2219","\\bullet",!0),ie(oe,le,me,"\u2021","\\ddagger"),ie(oe,le,me,"\u2240","\\wr",!0),ie(oe,le,me,"\u2a3f","\\amalg"),ie(oe,le,me,"&","\\And"),ie(oe,le,be,"\u27f5","\\longleftarrow",!0),ie(oe,le,be,"\u21d0","\\Leftarrow",!0),ie(oe,le,be,"\u27f8","\\Longleftarrow",!0),ie(oe,le,be,"\u27f6","\\longrightarrow",!0),ie(oe,le,be,"\u21d2","\\Rightarrow",!0),ie(oe,le,be,"\u27f9","\\Longrightarrow",!0),ie(oe,le,be,"\u2194","\\leftrightarrow",!0),ie(oe,le,be,"\u27f7","\\longleftrightarrow",!0),ie(oe,le,be,"\u21d4","\\Leftrightarrow",!0),ie(oe,le,be,"\u27fa","\\Longleftrightarrow",!0),ie(oe,le,be,"\u21a6","\\mapsto",!0),ie(oe,le,be,"\u27fc","\\longmapsto",!0),ie(oe,le,be,"\u2197","\\nearrow",!0),ie(oe,le,be,"\u21a9","\\hookleftarrow",!0),ie(oe,le,be,"\u21aa","\\hookrightarrow",!0),ie(oe,le,be,"\u2198","\\searrow",!0),ie(oe,le,be,"\u21bc","\\leftharpoonup",!0),ie(oe,le,be,"\u21c0","\\rightharpoonup",!0),ie(oe,le,be,"\u2199","\\swarrow",!0),ie(oe,le,be,"\u21bd","\\leftharpoondown",!0),ie(oe,le,be,"\u21c1","\\rightharpoondown",!0),ie(oe,le,be,"\u2196","\\nwarrow",!0),ie(oe,le,be,"\u21cc","\\rightleftharpoons",!0),ie(oe,he,be,"\u226e","\\nless",!0),ie(oe,he,be,"\ue010","\\@nleqslant"),ie(oe,he,be,"\ue011","\\@nleqq"),ie(oe,he,be,"\u2a87","\\lneq",!0),ie(oe,he,be,"\u2268","\\lneqq",!0),ie(oe,he,be,"\ue00c","\\@lvertneqq"),ie(oe,he,be,"\u22e6","\\lnsim",!0),ie(oe,he,be,"\u2a89","\\lnapprox",!0),ie(oe,he,be,"\u2280","\\nprec",!0),ie(oe,he,be,"\u22e0","\\npreceq",!0),ie(oe,he,be,"\u22e8","\\precnsim",!0),ie(oe,he,be,"\u2ab9","\\precnapprox",!0),ie(oe,he,be,"\u2241","\\nsim",!0),ie(oe,he,be,"\ue006","\\@nshortmid"),ie(oe,he,be,"\u2224","\\nmid",!0),ie(oe,he,be,"\u22ac","\\nvdash",!0),ie(oe,he,be,"\u22ad","\\nvDash",!0),ie(oe,he,be,"\u22ea","\\ntriangleleft"),ie(oe,he,be,"\u22ec","\\ntrianglelefteq",!0),ie(oe,he,be,"\u228a","\\subsetneq",!0),ie(oe,he,be,"\ue01a","\\@varsubsetneq"),ie(oe,he,be,"\u2acb","\\subsetneqq",!0),ie(oe,he,be,"\ue017","\\@varsubsetneqq"),ie(oe,he,be,"\u226f","\\ngtr",!0),ie(oe,he,be,"\ue00f","\\@ngeqslant"),ie(oe,he,be,"\ue00e","\\@ngeqq"),ie(oe,he,be,"\u2a88","\\gneq",!0),ie(oe,he,be,"\u2269","\\gneqq",!0),ie(oe,he,be,"\ue00d","\\@gvertneqq"),ie(oe,he,be,"\u22e7","\\gnsim",!0),ie(oe,he,be,"\u2a8a","\\gnapprox",!0),ie(oe,he,be,"\u2281","\\nsucc",!0),ie(oe,he,be,"\u22e1","\\nsucceq",!0),ie(oe,he,be,"\u22e9","\\succnsim",!0),ie(oe,he,be,"\u2aba","\\succnapprox",!0),ie(oe,he,be,"\u2246","\\ncong",!0),ie(oe,he,be,"\ue007","\\@nshortparallel"),ie(oe,he,be,"\u2226","\\nparallel",!0),ie(oe,he,be,"\u22af","\\nVDash",!0),ie(oe,he,be,"\u22eb","\\ntriangleright"),ie(oe,he,be,"\u22ed","\\ntrianglerighteq",!0),ie(oe,he,be,"\ue018","\\@nsupseteqq"),ie(oe,he,be,"\u228b","\\supsetneq",!0),ie(oe,he,be,"\ue01b","\\@varsupsetneq"),ie(oe,he,be,"\u2acc","\\supsetneqq",!0),ie(oe,he,be,"\ue019","\\@varsupsetneqq"),ie(oe,he,be,"\u22ae","\\nVdash",!0),ie(oe,he,be,"\u2ab5","\\precneqq",!0),ie(oe,he,be,"\u2ab6","\\succneqq",!0),ie(oe,he,be,"\ue016","\\@nsubseteqq"),ie(oe,he,me,"\u22b4","\\unlhd"),ie(oe,he,me,"\u22b5","\\unrhd"),ie(oe,he,be,"\u219a","\\nleftarrow",!0),ie(oe,he,be,"\u219b","\\nrightarrow",!0),ie(oe,he,be,"\u21cd","\\nLeftarrow",!0),ie(oe,he,be,"\u21cf","\\nRightarrow",!0),ie(oe,he,be,"\u21ae","\\nleftrightarrow",!0),ie(oe,he,be,"\u21ce","\\nLeftrightarrow",!0),ie(oe,he,be,"\u25b3","\\vartriangle"),ie(oe,he,xe,"\u210f","\\hslash"),ie(oe,he,xe,"\u25bd","\\triangledown"),ie(oe,he,xe,"\u25ca","\\lozenge"),ie(oe,he,xe,"\u24c8","\\circledS"),ie(oe,he,xe,"\xae","\\circledR"),ie(se,he,xe,"\xae","\\circledR"),ie(oe,he,xe,"\u2221","\\measuredangle",!0),ie(oe,he,xe,"\u2204","\\nexists"),ie(oe,he,xe,"\u2127","\\mho"),ie(oe,he,xe,"\u2132","\\Finv",!0),ie(oe,he,xe,"\u2141","\\Game",!0),ie(oe,he,xe,"\u2035","\\backprime"),ie(oe,he,xe,"\u25b2","\\blacktriangle"),ie(oe,he,xe,"\u25bc","\\blacktriangledown"),ie(oe,he,xe,"\u25a0","\\blacksquare"),ie(oe,he,xe,"\u29eb","\\blacklozenge"),ie(oe,he,xe,"\u2605","\\bigstar"),ie(oe,he,xe,"\u2222","\\sphericalangle",!0),ie(oe,he,xe,"\u2201","\\complement",!0),ie(oe,he,xe,"\xf0","\\eth",!0),ie(se,le,xe,"\xf0","\xf0"),ie(oe,he,xe,"\u2571","\\diagup"),ie(oe,he,xe,"\u2572","\\diagdown"),ie(oe,he,xe,"\u25a1","\\square"),ie(oe,he,xe,"\u25a1","\\Box"),ie(oe,he,xe,"\u25ca","\\Diamond"),ie(oe,he,xe,"\xa5","\\yen",!0),ie(se,he,xe,"\xa5","\\yen",!0),ie(oe,he,xe,"\u2713","\\checkmark",!0),ie(se,he,xe,"\u2713","\\checkmark"),ie(oe,he,xe,"\u2136","\\beth",!0),ie(oe,he,xe,"\u2138","\\daleth",!0),ie(oe,he,xe,"\u2137","\\gimel",!0),ie(oe,he,xe,"\u03dd","\\digamma",!0),ie(oe,he,xe,"\u03f0","\\varkappa"),ie(oe,he,ge,"\u250c","\\@ulcorner",!0),ie(oe,he,ue,"\u2510","\\@urcorner",!0),ie(oe,he,ge,"\u2514","\\@llcorner",!0),ie(oe,he,ue,"\u2518","\\@lrcorner",!0),ie(oe,he,be,"\u2266","\\leqq",!0),ie(oe,he,be,"\u2a7d","\\leqslant",!0),ie(oe,he,be,"\u2a95","\\eqslantless",!0),ie(oe,he,be,"\u2272","\\lesssim",!0),ie(oe,he,be,"\u2a85","\\lessapprox",!0),ie(oe,he,be,"\u224a","\\approxeq",!0),ie(oe,he,me,"\u22d6","\\lessdot"),ie(oe,he,be,"\u22d8","\\lll",!0),ie(oe,he,be,"\u2276","\\lessgtr",!0),ie(oe,he,be,"\u22da","\\lesseqgtr",!0),ie(oe,he,be,"\u2a8b","\\lesseqqgtr",!0),ie(oe,he,be,"\u2251","\\doteqdot"),ie(oe,he,be,"\u2253","\\risingdotseq",!0),ie(oe,he,be,"\u2252","\\fallingdotseq",!0),ie(oe,he,be,"\u223d","\\backsim",!0),ie(oe,he,be,"\u22cd","\\backsimeq",!0),ie(oe,he,be,"\u2ac5","\\subseteqq",!0),ie(oe,he,be,"\u22d0","\\Subset",!0),ie(oe,he,be,"\u228f","\\sqsubset",!0),ie(oe,he,be,"\u227c","\\preccurlyeq",!0),ie(oe,he,be,"\u22de","\\curlyeqprec",!0),ie(oe,he,be,"\u227e","\\precsim",!0),ie(oe,he,be,"\u2ab7","\\precapprox",!0),ie(oe,he,be,"\u22b2","\\vartriangleleft"),ie(oe,he,be,"\u22b4","\\trianglelefteq"),ie(oe,he,be,"\u22a8","\\vDash",!0),ie(oe,he,be,"\u22aa","\\Vvdash",!0),ie(oe,he,be,"\u2323","\\smallsmile"),ie(oe,he,be,"\u2322","\\smallfrown"),ie(oe,he,be,"\u224f","\\bumpeq",!0),ie(oe,he,be,"\u224e","\\Bumpeq",!0),ie(oe,he,be,"\u2267","\\geqq",!0),ie(oe,he,be,"\u2a7e","\\geqslant",!0),ie(oe,he,be,"\u2a96","\\eqslantgtr",!0),ie(oe,he,be,"\u2273","\\gtrsim",!0),ie(oe,he,be,"\u2a86","\\gtrapprox",!0),ie(oe,he,me,"\u22d7","\\gtrdot"),ie(oe,he,be,"\u22d9","\\ggg",!0),ie(oe,he,be,"\u2277","\\gtrless",!0),ie(oe,he,be,"\u22db","\\gtreqless",!0),ie(oe,he,be,"\u2a8c","\\gtreqqless",!0),ie(oe,he,be,"\u2256","\\eqcirc",!0),ie(oe,he,be,"\u2257","\\circeq",!0),ie(oe,he,be,"\u225c","\\triangleq",!0),ie(oe,he,be,"\u223c","\\thicksim"),ie(oe,he,be,"\u2248","\\thickapprox"),ie(oe,he,be,"\u2ac6","\\supseteqq",!0),ie(oe,he,be,"\u22d1","\\Supset",!0),ie(oe,he,be,"\u2290","\\sqsupset",!0),ie(oe,he,be,"\u227d","\\succcurlyeq",!0),ie(oe,he,be,"\u22df","\\curlyeqsucc",!0),ie(oe,he,be,"\u227f","\\succsim",!0),ie(oe,he,be,"\u2ab8","\\succapprox",!0),ie(oe,he,be,"\u22b3","\\vartriangleright"),ie(oe,he,be,"\u22b5","\\trianglerighteq"),ie(oe,he,be,"\u22a9","\\Vdash",!0),ie(oe,he,be,"\u2223","\\shortmid"),ie(oe,he,be,"\u2225","\\shortparallel"),ie(oe,he,be,"\u226c","\\between",!0),ie(oe,he,be,"\u22d4","\\pitchfork",!0),ie(oe,he,be,"\u221d","\\varpropto"),ie(oe,he,be,"\u25c0","\\blacktriangleleft"),ie(oe,he,be,"\u2234","\\therefore",!0),ie(oe,he,be,"\u220d","\\backepsilon"),ie(oe,he,be,"\u25b6","\\blacktriangleright"),ie(oe,he,be,"\u2235","\\because",!0),ie(oe,he,be,"\u22d8","\\llless"),ie(oe,he,be,"\u22d9","\\gggtr"),ie(oe,he,me,"\u22b2","\\lhd"),ie(oe,he,me,"\u22b3","\\rhd"),ie(oe,he,be,"\u2242","\\eqsim",!0),ie(oe,le,be,"\u22c8","\\Join"),ie(oe,he,be,"\u2251","\\Doteq",!0),ie(oe,he,me,"\u2214","\\dotplus",!0),ie(oe,he,me,"\u2216","\\smallsetminus"),ie(oe,he,me,"\u22d2","\\Cap",!0),ie(oe,he,me,"\u22d3","\\Cup",!0),ie(oe,he,me,"\u2a5e","\\doublebarwedge",!0),ie(oe,he,me,"\u229f","\\boxminus",!0),ie(oe,he,me,"\u229e","\\boxplus",!0),ie(oe,he,me,"\u22c7","\\divideontimes",!0),ie(oe,he,me,"\u22c9","\\ltimes",!0),ie(oe,he,me,"\u22ca","\\rtimes",!0),ie(oe,he,me,"\u22cb","\\leftthreetimes",!0),ie(oe,he,me,"\u22cc","\\rightthreetimes",!0),ie(oe,he,me,"\u22cf","\\curlywedge",!0),ie(oe,he,me,"\u22ce","\\curlyvee",!0),ie(oe,he,me,"\u229d","\\circleddash",!0),ie(oe,he,me,"\u229b","\\circledast",!0),ie(oe,he,me,"\u22c5","\\centerdot"),ie(oe,he,me,"\u22ba","\\intercal",!0),ie(oe,he,me,"\u22d2","\\doublecap"),ie(oe,he,me,"\u22d3","\\doublecup"),ie(oe,he,me,"\u22a0","\\boxtimes",!0),ie(oe,he,be,"\u21e2","\\dashrightarrow",!0),ie(oe,he,be,"\u21e0","\\dashleftarrow",!0),ie(oe,he,be,"\u21c7","\\leftleftarrows",!0),ie(oe,he,be,"\u21c6","\\leftrightarrows",!0),ie(oe,he,be,"\u21da","\\Lleftarrow",!0),ie(oe,he,be,"\u219e","\\twoheadleftarrow",!0),ie(oe,he,be,"\u21a2","\\leftarrowtail",!0),ie(oe,he,be,"\u21ab","\\looparrowleft",!0),ie(oe,he,be,"\u21cb","\\leftrightharpoons",!0),ie(oe,he,be,"\u21b6","\\curvearrowleft",!0),ie(oe,he,be,"\u21ba","\\circlearrowleft",!0),ie(oe,he,be,"\u21b0","\\Lsh",!0),ie(oe,he,be,"\u21c8","\\upuparrows",!0),ie(oe,he,be,"\u21bf","\\upharpoonleft",!0),ie(oe,he,be,"\u21c3","\\downharpoonleft",!0),ie(oe,le,be,"\u22b6","\\origof",!0),ie(oe,le,be,"\u22b7","\\imageof",!0),ie(oe,he,be,"\u22b8","\\multimap",!0),ie(oe,he,be,"\u21ad","\\leftrightsquigarrow",!0),ie(oe,he,be,"\u21c9","\\rightrightarrows",!0),ie(oe,he,be,"\u21c4","\\rightleftarrows",!0),ie(oe,he,be,"\u21a0","\\twoheadrightarrow",!0),ie(oe,he,be,"\u21a3","\\rightarrowtail",!0),ie(oe,he,be,"\u21ac","\\looparrowright",!0),ie(oe,he,be,"\u21b7","\\curvearrowright",!0),ie(oe,he,be,"\u21bb","\\circlearrowright",!0),ie(oe,he,be,"\u21b1","\\Rsh",!0),ie(oe,he,be,"\u21ca","\\downdownarrows",!0),ie(oe,he,be,"\u21be","\\upharpoonright",!0),ie(oe,he,be,"\u21c2","\\downharpoonright",!0),ie(oe,he,be,"\u21dd","\\rightsquigarrow",!0),ie(oe,he,be,"\u21dd","\\leadsto"),ie(oe,he,be,"\u21db","\\Rrightarrow",!0),ie(oe,he,be,"\u21be","\\restriction"),ie(oe,le,xe,"\u2018","`"),ie(oe,le,xe,"$","\\$"),ie(se,le,xe,"$","\\$"),ie(se,le,xe,"$","\\textdollar"),ie(oe,le,xe,"%","\\%"),ie(se,le,xe,"%","\\%"),ie(oe,le,xe,"_","\\_"),ie(se,le,xe,"_","\\_"),ie(se,le,xe,"_","\\textunderscore"),ie(oe,le,xe,"\u2220","\\angle",!0),ie(oe,le,xe,"\u221e","\\infty",!0),ie(oe,le,xe,"\u2032","\\prime"),ie(oe,le,xe,"\u25b3","\\triangle"),ie(oe,le,xe,"\u0393","\\Gamma",!0),ie(oe,le,xe,"\u0394","\\Delta",!0),ie(oe,le,xe,"\u0398","\\Theta",!0),ie(oe,le,xe,"\u039b","\\Lambda",!0),ie(oe,le,xe,"\u039e","\\Xi",!0),ie(oe,le,xe,"\u03a0","\\Pi",!0),ie(oe,le,xe,"\u03a3","\\Sigma",!0),ie(oe,le,xe,"\u03a5","\\Upsilon",!0),ie(oe,le,xe,"\u03a6","\\Phi",!0),ie(oe,le,xe,"\u03a8","\\Psi",!0),ie(oe,le,xe,"\u03a9","\\Omega",!0),ie(oe,le,xe,"A","\u0391"),ie(oe,le,xe,"B","\u0392"),ie(oe,le,xe,"E","\u0395"),ie(oe,le,xe,"Z","\u0396"),ie(oe,le,xe,"H","\u0397"),ie(oe,le,xe,"I","\u0399"),ie(oe,le,xe,"K","\u039a"),ie(oe,le,xe,"M","\u039c"),ie(oe,le,xe,"N","\u039d"),ie(oe,le,xe,"O","\u039f"),ie(oe,le,xe,"P","\u03a1"),ie(oe,le,xe,"T","\u03a4"),ie(oe,le,xe,"X","\u03a7"),ie(oe,le,xe,"\xac","\\neg",!0),ie(oe,le,xe,"\xac","\\lnot"),ie(oe,le,xe,"\u22a4","\\top"),ie(oe,le,xe,"\u22a5","\\bot"),ie(oe,le,xe,"\u2205","\\emptyset"),ie(oe,he,xe,"\u2205","\\varnothing"),ie(oe,le,de,"\u03b1","\\alpha",!0),ie(oe,le,de,"\u03b2","\\beta",!0),ie(oe,le,de,"\u03b3","\\gamma",!0),ie(oe,le,de,"\u03b4","\\delta",!0),ie(oe,le,de,"\u03f5","\\epsilon",!0),ie(oe,le,de,"\u03b6","\\zeta",!0),ie(oe,le,de,"\u03b7","\\eta",!0),ie(oe,le,de,"\u03b8","\\theta",!0),ie(oe,le,de,"\u03b9","\\iota",!0),ie(oe,le,de,"\u03ba","\\kappa",!0),ie(oe,le,de,"\u03bb","\\lambda",!0),ie(oe,le,de,"\u03bc","\\mu",!0),ie(oe,le,de,"\u03bd","\\nu",!0),ie(oe,le,de,"\u03be","\\xi",!0),ie(oe,le,de,"\u03bf","\\omicron",!0),ie(oe,le,de,"\u03c0","\\pi",!0),ie(oe,le,de,"\u03c1","\\rho",!0),ie(oe,le,de,"\u03c3","\\sigma",!0),ie(oe,le,de,"\u03c4","\\tau",!0),ie(oe,le,de,"\u03c5","\\upsilon",!0),ie(oe,le,de,"\u03d5","\\phi",!0),ie(oe,le,de,"\u03c7","\\chi",!0),ie(oe,le,de,"\u03c8","\\psi",!0),ie(oe,le,de,"\u03c9","\\omega",!0),ie(oe,le,de,"\u03b5","\\varepsilon",!0),ie(oe,le,de,"\u03d1","\\vartheta",!0),ie(oe,le,de,"\u03d6","\\varpi",!0),ie(oe,le,de,"\u03f1","\\varrho",!0),ie(oe,le,de,"\u03c2","\\varsigma",!0),ie(oe,le,de,"\u03c6","\\varphi",!0),ie(oe,le,me,"\u2217","*",!0),ie(oe,le,me,"+","+"),ie(oe,le,me,"\u2212","-",!0),ie(oe,le,me,"\u22c5","\\cdot",!0),ie(oe,le,me,"\u2218","\\circ",!0),ie(oe,le,me,"\xf7","\\div",!0),ie(oe,le,me,"\xb1","\\pm",!0),ie(oe,le,me,"\xd7","\\times",!0),ie(oe,le,me,"\u2229","\\cap",!0),ie(oe,le,me,"\u222a","\\cup",!0),ie(oe,le,me,"\u2216","\\setminus",!0),ie(oe,le,me,"\u2227","\\land"),ie(oe,le,me,"\u2228","\\lor"),ie(oe,le,me,"\u2227","\\wedge",!0),ie(oe,le,me,"\u2228","\\vee",!0),ie(oe,le,xe,"\u221a","\\surd"),ie(oe,le,ge,"\u27e8","\\langle",!0),ie(oe,le,ge,"\u2223","\\lvert"),ie(oe,le,ge,"\u2225","\\lVert"),ie(oe,le,ue,"?","?"),ie(oe,le,ue,"!","!"),ie(oe,le,ue,"\u27e9","\\rangle",!0),ie(oe,le,ue,"\u2223","\\rvert"),ie(oe,le,ue,"\u2225","\\rVert"),ie(oe,le,be,"=","="),ie(oe,le,be,":",":"),ie(oe,le,be,"\u2248","\\approx",!0),ie(oe,le,be,"\u2245","\\cong",!0),ie(oe,le,be,"\u2265","\\ge"),ie(oe,le,be,"\u2265","\\geq",!0),ie(oe,le,be,"\u2190","\\gets"),ie(oe,le,be,">","\\gt",!0),ie(oe,le,be,"\u2208","\\in",!0),ie(oe,le,be,"\ue020","\\@not"),ie(oe,le,be,"\u2282","\\subset",!0),ie(oe,le,be,"\u2283","\\supset",!0),ie(oe,le,be,"\u2286","\\subseteq",!0),ie(oe,le,be,"\u2287","\\supseteq",!0),ie(oe,he,be,"\u2288","\\nsubseteq",!0),ie(oe,he,be,"\u2289","\\nsupseteq",!0),ie(oe,le,be,"\u22a8","\\models"),ie(oe,le,be,"\u2190","\\leftarrow",!0),ie(oe,le,be,"\u2264","\\le"),ie(oe,le,be,"\u2264","\\leq",!0),ie(oe,le,be,"<","\\lt",!0),ie(oe,le,be,"\u2192","\\rightarrow",!0),ie(oe,le,be,"\u2192","\\to"),ie(oe,he,be,"\u2271","\\ngeq",!0),ie(oe,he,be,"\u2270","\\nleq",!0),ie(oe,le,ye,"\xa0","\\ "),ie(oe,le,ye,"\xa0","\\space"),ie(oe,le,ye,"\xa0","\\nobreakspace"),ie(se,le,ye,"\xa0","\\ "),ie(se,le,ye,"\xa0"," "),ie(se,le,ye,"\xa0","\\space"),ie(se,le,ye,"\xa0","\\nobreakspace"),ie(oe,le,ye,null,"\\nobreak"),ie(oe,le,ye,null,"\\allowbreak"),ie(oe,le,ve,",",","),ie(oe,le,ve,";",";"),ie(oe,he,me,"\u22bc","\\barwedge",!0),ie(oe,he,me,"\u22bb","\\veebar",!0),ie(oe,le,me,"\u2299","\\odot",!0),ie(oe,le,me,"\u2295","\\oplus",!0),ie(oe,le,me,"\u2297","\\otimes",!0),ie(oe,le,xe,"\u2202","\\partial",!0),ie(oe,le,me,"\u2298","\\oslash",!0),ie(oe,he,me,"\u229a","\\circledcirc",!0),ie(oe,he,me,"\u22a1","\\boxdot",!0),ie(oe,le,me,"\u25b3","\\bigtriangleup"),ie(oe,le,me,"\u25bd","\\bigtriangledown"),ie(oe,le,me,"\u2020","\\dagger"),ie(oe,le,me,"\u22c4","\\diamond"),ie(oe,le,me,"\u22c6","\\star"),ie(oe,le,me,"\u25c3","\\triangleleft"),ie(oe,le,me,"\u25b9","\\triangleright"),ie(oe,le,ge,"{","\\{"),ie(se,le,xe,"{","\\{"),ie(se,le,xe,"{","\\textbraceleft"),ie(oe,le,ue,"}","\\}"),ie(se,le,xe,"}","\\}"),ie(se,le,xe,"}","\\textbraceright"),ie(oe,le,ge,"{","\\lbrace"),ie(oe,le,ue,"}","\\rbrace"),ie(oe,le,ge,"[","\\lbrack",!0),ie(se,le,xe,"[","\\lbrack",!0),ie(oe,le,ue,"]","\\rbrack",!0),ie(se,le,xe,"]","\\rbrack",!0),ie(oe,le,ge,"(","\\lparen",!0),ie(oe,le,ue,")","\\rparen",!0),ie(se,le,xe,"<","\\textless",!0),ie(se,le,xe,">","\\textgreater",!0),ie(oe,le,ge,"\u230a","\\lfloor",!0),ie(oe,le,ue,"\u230b","\\rfloor",!0),ie(oe,le,ge,"\u2308","\\lceil",!0),ie(oe,le,ue,"\u2309","\\rceil",!0),ie(oe,le,xe,"\\","\\backslash"),ie(oe,le,xe,"\u2223","|"),ie(oe,le,xe,"\u2223","\\vert"),ie(se,le,xe,"|","\\textbar",!0),ie(oe,le,xe,"\u2225","\\|"),ie(oe,le,xe,"\u2225","\\Vert"),ie(se,le,xe,"\u2225","\\textbardbl"),ie(se,le,xe,"~","\\textasciitilde"),ie(se,le,xe,"\\","\\textbackslash"),ie(se,le,xe,"^","\\textasciicircum"),ie(oe,le,be,"\u2191","\\uparrow",!0),ie(oe,le,be,"\u21d1","\\Uparrow",!0),ie(oe,le,be,"\u2193","\\downarrow",!0),ie(oe,le,be,"\u21d3","\\Downarrow",!0),ie(oe,le,be,"\u2195","\\updownarrow",!0),ie(oe,le,be,"\u21d5","\\Updownarrow",!0),ie(oe,le,fe,"\u2210","\\coprod"),ie(oe,le,fe,"\u22c1","\\bigvee"),ie(oe,le,fe,"\u22c0","\\bigwedge"),ie(oe,le,fe,"\u2a04","\\biguplus"),ie(oe,le,fe,"\u22c2","\\bigcap"),ie(oe,le,fe,"\u22c3","\\bigcup"),ie(oe,le,fe,"\u222b","\\int"),ie(oe,le,fe,"\u222b","\\intop"),ie(oe,le,fe,"\u222c","\\iint"),ie(oe,le,fe,"\u222d","\\iiint"),ie(oe,le,fe,"\u220f","\\prod"),ie(oe,le,fe,"\u2211","\\sum"),ie(oe,le,fe,"\u2a02","\\bigotimes"),ie(oe,le,fe,"\u2a01","\\bigoplus"),ie(oe,le,fe,"\u2a00","\\bigodot"),ie(oe,le,fe,"\u222e","\\oint"),ie(oe,le,fe,"\u222f","\\oiint"),ie(oe,le,fe,"\u2230","\\oiiint"),ie(oe,le,fe,"\u2a06","\\bigsqcup"),ie(oe,le,fe,"\u222b","\\smallint"),ie(se,le,pe,"\u2026","\\textellipsis"),ie(oe,le,pe,"\u2026","\\mathellipsis"),ie(se,le,pe,"\u2026","\\ldots",!0),ie(oe,le,pe,"\u2026","\\ldots",!0),ie(oe,le,pe,"\u22ef","\\@cdots",!0),ie(oe,le,pe,"\u22f1","\\ddots",!0),ie(oe,le,xe,"\u22ee","\\varvdots"),ie(oe,le,ce,"\u02ca","\\acute"),ie(oe,le,ce,"\u02cb","\\grave"),ie(oe,le,ce,"\xa8","\\ddot"),ie(oe,le,ce,"~","\\tilde"),ie(oe,le,ce,"\u02c9","\\bar"),ie(oe,le,ce,"\u02d8","\\breve"),ie(oe,le,ce,"\u02c7","\\check"),ie(oe,le,ce,"^","\\hat"),ie(oe,le,ce,"\u20d7","\\vec"),ie(oe,le,ce,"\u02d9","\\dot"),ie(oe,le,ce,"\u02da","\\mathring"),ie(oe,le,de,"\ue131","\\@imath"),ie(oe,le,de,"\ue237","\\@jmath"),ie(oe,le,xe,"\u0131","\u0131"),ie(oe,le,xe,"\u0237","\u0237"),ie(se,le,xe,"\u0131","\\i",!0),ie(se,le,xe,"\u0237","\\j",!0),ie(se,le,xe,"\xdf","\\ss",!0),ie(se,le,xe,"\xe6","\\ae",!0),ie(se,le,xe,"\u0153","\\oe",!0),ie(se,le,xe,"\xf8","\\o",!0),ie(se,le,xe,"\xc6","\\AE",!0),ie(se,le,xe,"\u0152","\\OE",!0),ie(se,le,xe,"\xd8","\\O",!0),ie(se,le,ce,"\u02ca","\\'"),ie(se,le,ce,"\u02cb","\\`"),ie(se,le,ce,"\u02c6","\\^"),ie(se,le,ce,"\u02dc","\\~"),ie(se,le,ce,"\u02c9","\\="),ie(se,le,ce,"\u02d8","\\u"),ie(se,le,ce,"\u02d9","\\."),ie(se,le,ce,"\xb8","\\c"),ie(se,le,ce,"\u02da","\\r"),ie(se,le,ce,"\u02c7","\\v"),ie(se,le,ce,"\xa8",'\\"'),ie(se,le,ce,"\u02dd","\\H"),ie(se,le,ce,"\u25ef","\\textcircled");var we={"--":!0,"---":!0,"``":!0,"''":!0};ie(se,le,xe,"\u2013","--",!0),ie(se,le,xe,"\u2013","\\textendash"),ie(se,le,xe,"\u2014","---",!0),ie(se,le,xe,"\u2014","\\textemdash"),ie(se,le,xe,"\u2018","`",!0),ie(se,le,xe,"\u2018","\\textquoteleft"),ie(se,le,xe,"\u2019","'",!0),ie(se,le,xe,"\u2019","\\textquoteright"),ie(se,le,xe,"\u201c","``",!0),ie(se,le,xe,"\u201c","\\textquotedblleft"),ie(se,le,xe,"\u201d","''",!0),ie(se,le,xe,"\u201d","\\textquotedblright"),ie(oe,le,xe,"\xb0","\\degree",!0),ie(se,le,xe,"\xb0","\\degree"),ie(se,le,xe,"\xb0","\\textdegree",!0),ie(oe,le,xe,"\xa3","\\pounds"),ie(oe,le,xe,"\xa3","\\mathsterling",!0),ie(se,le,xe,"\xa3","\\pounds"),ie(se,le,xe,"\xa3","\\textsterling",!0),ie(oe,he,xe,"\u2720","\\maltese"),ie(se,he,xe,"\u2720","\\maltese");for(var ke='0123456789/@."',Se=0;Se<ke.length;Se++){var Me=ke.charAt(Se);ie(oe,le,xe,Me,Me)}for(var ze='0123456789!@*()-=+";:?/.,',Ae=0;Ae<ze.length;Ae++){var Te=ze.charAt(Ae);ie(se,le,xe,Te,Te)}for(var Be="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",Ce=0;Ce<Be.length;Ce++){var Ne=Be.charAt(Ce);ie(oe,le,de,Ne,Ne),ie(se,le,xe,Ne,Ne)}ie(oe,he,xe,"C","\u2102"),ie(se,he,xe,"C","\u2102"),ie(oe,he,xe,"H","\u210d"),ie(se,he,xe,"H","\u210d"),ie(oe,he,xe,"N","\u2115"),ie(se,he,xe,"N","\u2115"),ie(oe,he,xe,"P","\u2119"),ie(se,he,xe,"P","\u2119"),ie(oe,he,xe,"Q","\u211a"),ie(se,he,xe,"Q","\u211a"),ie(oe,he,xe,"R","\u211d"),ie(se,he,xe,"R","\u211d"),ie(oe,he,xe,"Z","\u2124"),ie(se,he,xe,"Z","\u2124"),ie(oe,le,de,"h","\u210e"),ie(se,le,de,"h","\u210e");for(var qe="",Ie=0;Ie<Be.length;Ie++){var Re=Be.charAt(Ie);ie(oe,le,de,Re,qe=String.fromCharCode(55349,56320+Ie)),ie(se,le,xe,Re,qe),ie(oe,le,de,Re,qe=String.fromCharCode(55349,56372+Ie)),ie(se,le,xe,Re,qe),ie(oe,le,de,Re,qe=String.fromCharCode(55349,56424+Ie)),ie(se,le,xe,Re,qe),ie(oe,le,de,Re,qe=String.fromCharCode(55349,56580+Ie)),ie(se,le,xe,Re,qe),ie(oe,le,de,Re,qe=String.fromCharCode(55349,56684+Ie)),ie(se,le,xe,Re,qe),ie(oe,le,de,Re,qe=String.fromCharCode(55349,56736+Ie)),ie(se,le,xe,Re,qe),ie(oe,le,de,Re,qe=String.fromCharCode(55349,56788+Ie)),ie(se,le,xe,Re,qe),ie(oe,le,de,Re,qe=String.fromCharCode(55349,56840+Ie)),ie(se,le,xe,Re,qe),ie(oe,le,de,Re,qe=String.fromCharCode(55349,56944+Ie)),ie(se,le,xe,Re,qe),Ie<26&&(ie(oe,le,de,Re,qe=String.fromCharCode(55349,56632+Ie)),ie(se,le,xe,Re,qe),ie(oe,le,de,Re,qe=String.fromCharCode(55349,56476+Ie)),ie(se,le,xe,Re,qe))}ie(oe,le,de,"k",qe=String.fromCharCode(55349,56668)),ie(se,le,xe,"k",qe);for(var He=0;He<10;He++){var Oe=He.toString();ie(oe,le,de,Oe,qe=String.fromCharCode(55349,57294+He)),ie(se,le,xe,Oe,qe),ie(oe,le,de,Oe,qe=String.fromCharCode(55349,57314+He)),ie(se,le,xe,Oe,qe),ie(oe,le,de,Oe,qe=String.fromCharCode(55349,57324+He)),ie(se,le,xe,Oe,qe),ie(oe,le,de,Oe,qe=String.fromCharCode(55349,57334+He)),ie(se,le,xe,Oe,qe)}for(var Ee="\xd0\xde\xfe",Le=0;Le<Ee.length;Le++){var De=Ee.charAt(Le);ie(oe,le,de,De,De),ie(se,le,xe,De,De)}var Ve=[["mathbf","textbf","Main-Bold"],["mathbf","textbf","Main-Bold"],["mathnormal","textit","Math-Italic"],["mathnormal","textit","Math-Italic"],["boldsymbol","boldsymbol","Main-BoldItalic"],["boldsymbol","boldsymbol","Main-BoldItalic"],["mathscr","textscr","Script-Regular"],["","",""],["","",""],["","",""],["mathfrak","textfrak","Fraktur-Regular"],["mathfrak","textfrak","Fraktur-Regular"],["mathbb","textbb","AMS-Regular"],["mathbb","textbb","AMS-Regular"],["mathboldfrak","textboldfrak","Fraktur-Regular"],["mathboldfrak","textboldfrak","Fraktur-Regular"],["mathsf","textsf","SansSerif-Regular"],["mathsf","textsf","SansSerif-Regular"],["mathboldsf","textboldsf","SansSerif-Bold"],["mathboldsf","textboldsf","SansSerif-Bold"],["mathitsf","textitsf","SansSerif-Italic"],["mathitsf","textitsf","SansSerif-Italic"],["","",""],["","",""],["mathtt","texttt","Typewriter-Regular"],["mathtt","texttt","Typewriter-Regular"]],Pe=[["mathbf","textbf","Main-Bold"],["","",""],["mathsf","textsf","SansSerif-Regular"],["mathboldsf","textboldsf","SansSerif-Bold"],["mathtt","texttt","Typewriter-Regular"]],Fe=function(e,t,r){return ae[r][e]&&ae[r][e].replace&&(e=ae[r][e].replace),{value:e,metrics:N(e,t,r)}},Ge=function(e,t,r,n,a){var i,o=Fe(e,t,r),s=o.metrics;if(e=o.value,s){var l=s.italic;("text"===r||n&&"mathit"===n.font)&&(l=0),i=new Z(e,s.height,s.depth,l,s.skew,s.width,a)}else"undefined"!=typeof console&&console.warn("No character metrics for '"+e+"' in style '"+t+"' and mode '"+r+"'"),i=new Z(e,0,0,0,0,0,a);if(n){i.maxFontSize=n.sizeMultiplier,n.style.isTight()&&i.classes.push("mtight");var h=n.getColor();h&&(i.style.color=h)}return i},Ue=function(e,t){if(G(e.classes)!==G(t.classes)||e.skew!==t.skew||e.maxFontSize!==t.maxFontSize)return!1;if(1===e.classes.length){var r=e.classes[0];if("mbin"===r||"mord"===r)return!1}for(var n in e.style)if(e.style.hasOwnProperty(n)&&e.style[n]!==t.style[n])return!1;for(var a in t.style)if(t.style.hasOwnProperty(a)&&e.style[a]!==t.style[a])return!1;return!0},Ye=function(e){for(var t=0,r=0,n=0,a=0;a<e.children.length;a++){var i=e.children[a];i.height>t&&(t=i.height),i.depth>r&&(r=i.depth),i.maxFontSize>n&&(n=i.maxFontSize)}e.height=t,e.depth=r,e.maxFontSize=n},Xe=function(e,t,r,n){var a=new W(e,t,r,n);return Ye(a),a},We=function(e,t,r,n){return new W(e,t,r,n)},_e=function(e){var t=new A(e);return Ye(t),t},je=function(e,t,r){var n="";switch(e){case"amsrm":n="AMS";break;case"textrm":n="Main";break;case"textsf":n="SansSerif";break;case"texttt":n="Typewriter";break;default:n=e}return n+"-"+("textbf"===t&&"textit"===r?"BoldItalic":"textbf"===t?"Bold":"textit"===t?"Italic":"Regular")},$e={mathbf:{variant:"bold",fontName:"Main-Bold"},mathrm:{variant:"normal",fontName:"Main-Regular"},textit:{variant:"italic",fontName:"Main-Italic"},mathit:{variant:"italic",fontName:"Main-Italic"},mathnormal:{variant:"italic",fontName:"Math-Italic"},mathbb:{variant:"double-struck",fontName:"AMS-Regular"},mathcal:{variant:"script",fontName:"Caligraphic-Regular"},mathfrak:{variant:"fraktur",fontName:"Fraktur-Regular"},mathscr:{variant:"script",fontName:"Script-Regular"},mathsf:{variant:"sans-serif",fontName:"SansSerif-Regular"},mathtt:{variant:"monospace",fontName:"Typewriter-Regular"}},Ze={vec:["vec",.471,.714],oiintSize1:["oiintSize1",.957,.499],oiintSize2:["oiintSize2",1.472,.659],oiiintSize1:["oiiintSize1",1.304,.499],oiiintSize2:["oiiintSize2",1.98,.659]},Ke={fontMap:$e,makeSymbol:Ge,mathsym:function(e,t,r,n){return void 0===n&&(n=[]),"boldsymbol"===r.font&&Fe(e,"Main-Bold",t).metrics?Ge(e,"Main-Bold",t,r,n.concat(["mathbf"])):"\\"===e||"main"===ae[t][e].font?Ge(e,"Main-Regular",t,r,n):Ge(e,"AMS-Regular",t,r,n.concat(["amsrm"]))},makeSpan:Xe,makeSvgSpan:We,makeLineSpan:function(e,t,r){var n=Xe([e],[],t);return n.height=Math.max(r||t.fontMetrics().defaultRuleThickness,t.minRuleThickness),n.style.borderBottomWidth=F(n.height),n.maxFontSize=1,n},makeAnchor:function(e,t,r,n){var a=new _(e,t,r,n);return Ye(a),a},makeFragment:_e,wrapFragment:function(e,t){return e instanceof A?Xe([],[e],t):e},makeVList:function(e,t){for(var r=function(e){if("individualShift"===e.positionType){for(var t=e.children,r=[t[0]],n=-t[0].shift-t[0].elem.depth,a=n,i=1;i<t.length;i++){var o=-t[i].shift-a-t[i].elem.depth,s=o-(t[i-1].elem.height+t[i-1].elem.depth);a+=o,r.push({type:"kern",size:s}),r.push(t[i])}return{children:r,depth:n}}var l;if("top"===e.positionType){for(var h=e.positionData,c=0;c<e.children.length;c++){var m=e.children[c];h-="kern"===m.type?m.size:m.elem.height+m.elem.depth}l=h}else if("bottom"===e.positionType)l=-e.positionData;else{var u=e.children[0];if("elem"!==u.type)throw new Error('First child must have type "elem".');if("shift"===e.positionType)l=-u.elem.depth-e.positionData;else{if("firstBaseline"!==e.positionType)throw new Error("Invalid positionType "+e.positionType+".");l=-u.elem.depth}}return{children:e.children,depth:l}}(e),n=r.children,a=r.depth,i=0,o=0;o<n.length;o++){var s=n[o];if("elem"===s.type){var l=s.elem;i=Math.max(i,l.maxFontSize,l.height)}}i+=2;var h=Xe(["pstrut"],[]);h.style.height=F(i);for(var c=[],m=a,u=a,p=a,d=0;d<n.length;d++){var f=n[d];if("kern"===f.type)p+=f.size;else{var g=f.elem,v=f.wrapperClasses||[],b=f.wrapperStyle||{},y=Xe(v,[h,g],void 0,b);y.style.top=F(-i-p-g.depth),f.marginLeft&&(y.style.marginLeft=f.marginLeft),f.marginRight&&(y.style.marginRight=f.marginRight),c.push(y),p+=g.height+g.depth}m=Math.min(m,p),u=Math.max(u,p)}var x,w=Xe(["vlist"],c);if(w.style.height=F(u),m<0){var k=Xe([],[]),S=Xe(["vlist"],[k]);S.style.height=F(-m);var M=Xe(["vlist-s"],[new Z("\u200b")]);x=[Xe(["vlist-r"],[w,M]),Xe(["vlist-r"],[S])]}else x=[Xe(["vlist-r"],[w])];var z=Xe(["vlist-t"],x);return 2===x.length&&z.classes.push("vlist-t2"),z.height=u,z.depth=-m,z},makeOrd:function(e,t,r){var a=e.mode,i=e.text,o=["mord"],s="math"===a||"text"===a&&t.font,l=s?t.font:t.fontFamily,h="",c="";if(55349===i.charCodeAt(0)){var m=function(e,t){var r=1024*(e.charCodeAt(0)-55296)+(e.charCodeAt(1)-56320)+65536,a="math"===t?0:1;if(119808<=r&&r<120484){var i=Math.floor((r-119808)/26);return[Ve[i][2],Ve[i][a]]}if(120782<=r&&r<=120831){var o=Math.floor((r-120782)/10);return[Pe[o][2],Pe[o][a]]}if(120485===r||120486===r)return[Ve[0][2],Ve[0][a]];if(120486<r&&r<120782)return["",""];throw new n("Unsupported character: "+e)}(i,a);h=m[0],c=m[1]}if(h.length>0)return Ge(i,h,a,t,o.concat(c));if(l){var u,p;if("boldsymbol"===l){var d=function(e,t,r,n,a){return"textord"!==a&&Fe(e,"Math-BoldItalic",t).metrics?{fontName:"Math-BoldItalic",fontClass:"boldsymbol"}:{fontName:"Main-Bold",fontClass:"mathbf"}}(i,a,0,0,r);u=d.fontName,p=[d.fontClass]}else s?(u=$e[l].fontName,p=[l]):(u=je(l,t.fontWeight,t.fontShape),p=[l,t.fontWeight,t.fontShape]);if(Fe(i,u,a).metrics)return Ge(i,u,a,t,o.concat(p));if(we.hasOwnProperty(i)&&"Typewriter"===u.slice(0,10)){for(var f=[],g=0;g<i.length;g++)f.push(Ge(i[g],u,a,t,o.concat(p)));return _e(f)}}if("mathord"===r)return Ge(i,"Math-Italic",a,t,o.concat(["mathnormal"]));if("textord"===r){var v=ae[a][i]&&ae[a][i].font;if("ams"===v){var b=je("amsrm",t.fontWeight,t.fontShape);return Ge(i,b,a,t,o.concat("amsrm",t.fontWeight,t.fontShape))}if("main"!==v&&v){var y=je(v,t.fontWeight,t.fontShape);return Ge(i,y,a,t,o.concat(y,t.fontWeight,t.fontShape))}var x=je("textrm",t.fontWeight,t.fontShape);return Ge(i,x,a,t,o.concat(t.fontWeight,t.fontShape))}throw new Error("unexpected type: "+r+" in makeOrd")},makeGlue:function(e,t){var r=Xe(["mspace"],[],t),n=P(e,t);return r.style.marginRight=F(n),r},staticSvg:function(e,t){var r=Ze[e],n=r[0],a=r[1],i=r[2],o=new J(n),s=new K([o],{width:F(a),height:F(i),style:"width:"+F(a),viewBox:"0 0 "+1e3*a+" "+1e3*i,preserveAspectRatio:"xMinYMin"}),l=We(["overlay"],[s],t);return l.height=i,l.style.height=F(i),l.style.width=F(a),l},svgData:Ze,tryCombineChars:function(e){for(var t=0;t<e.length-1;t++){var r=e[t],n=e[t+1];r instanceof Z&&n instanceof Z&&Ue(r,n)&&(r.text+=n.text,r.height=Math.max(r.height,n.height),r.depth=Math.max(r.depth,n.depth),r.italic=n.italic,e.splice(t+1,1),t--)}return e}},Je={number:3,unit:"mu"},Qe={number:4,unit:"mu"},et={number:5,unit:"mu"},tt={mord:{mop:Je,mbin:Qe,mrel:et,minner:Je},mop:{mord:Je,mop:Je,mrel:et,minner:Je},mbin:{mord:Qe,mop:Qe,mopen:Qe,minner:Qe},mrel:{mord:et,mop:et,mopen:et,minner:et},mopen:{},mclose:{mop:Je,mbin:Qe,mrel:et,minner:Je},mpunct:{mord:Je,mop:Je,mrel:et,mopen:Je,mclose:Je,mpunct:Je,minner:Je},minner:{mord:Je,mop:Je,mbin:Qe,mrel:et,mopen:Je,mpunct:Je,minner:Je}},rt={mord:{mop:Je},mop:{mord:Je,mop:Je},mbin:{},mrel:{},mopen:{},mclose:{mop:Je},mpunct:{},minner:{mop:Je}},nt={},at={},it={};function ot(e){for(var t=e.type,r=e.names,n=e.props,a=e.handler,i=e.htmlBuilder,o=e.mathmlBuilder,s={type:t,numArgs:n.numArgs,argTypes:n.argTypes,allowedInArgument:!!n.allowedInArgument,allowedInText:!!n.allowedInText,allowedInMath:void 0===n.allowedInMath||n.allowedInMath,numOptionalArgs:n.numOptionalArgs||0,infix:!!n.infix,primitive:!!n.primitive,handler:a},l=0;l<r.length;++l)nt[r[l]]=s;t&&(i&&(at[t]=i),o&&(it[t]=o))}function st(e){ot({type:e.type,names:[],props:{numArgs:0},handler:function(){throw new Error("Should never be called.")},htmlBuilder:e.htmlBuilder,mathmlBuilder:e.mathmlBuilder})}var lt=function(e){return"ordgroup"===e.type&&1===e.body.length?e.body[0]:e},ht=function(e){return"ordgroup"===e.type?e.body:[e]},ct=Ke.makeSpan,mt=["leftmost","mbin","mopen","mrel","mop","mpunct"],ut=["rightmost","mrel","mclose","mpunct"],pt={display:x.DISPLAY,text:x.TEXT,script:x.SCRIPT,scriptscript:x.SCRIPTSCRIPT},dt={mord:"mord",mop:"mop",mbin:"mbin",mrel:"mrel",mopen:"mopen",mclose:"mclose",mpunct:"mpunct",minner:"minner"},ft=function(e,t,r,n){void 0===n&&(n=[null,null]);for(var a=[],i=0;i<e.length;i++){var o=wt(e[i],t);if(o instanceof A){var s=o.children;a.push.apply(a,s)}else a.push(o)}if(Ke.tryCombineChars(a),!r)return a;var h=t;if(1===e.length){var c=e[0];"sizing"===c.type?h=t.havingSize(c.size):"styling"===c.type&&(h=t.havingStyle(pt[c.style]))}var m=ct([n[0]||"leftmost"],[],t),u=ct([n[1]||"rightmost"],[],t),p="root"===r;return gt(a,(function(e,t){var r=t.classes[0],n=e.classes[0];"mbin"===r&&l.contains(ut,n)?t.classes[0]="mord":"mbin"===n&&l.contains(mt,r)&&(e.classes[0]="mord")}),{node:m},u,p),gt(a,(function(e,t){var r=yt(t),n=yt(e),a=r&&n?e.hasClass("mtight")?rt[r][n]:tt[r][n]:null;if(a)return Ke.makeGlue(a,h)}),{node:m},u,p),a},gt=function e(t,r,n,a,i){a&&t.push(a);for(var o=0;o<t.length;o++){var s=t[o],l=vt(s);if(l)e(l.children,r,n,null,i);else{var h=!s.hasClass("mspace");if(h){var c=r(s,n.node);c&&(n.insertAfter?n.insertAfter(c):(t.unshift(c),o++))}h?n.node=s:i&&s.hasClass("newline")&&(n.node=ct(["leftmost"])),n.insertAfter=function(e){return function(r){t.splice(e+1,0,r),o++}}(o)}}a&&t.pop()},vt=function(e){return e instanceof A||e instanceof _||e instanceof W&&e.hasClass("enclosing")?e:null},bt=function e(t,r){var n=vt(t);if(n){var a=n.children;if(a.length){if("right"===r)return e(a[a.length-1],"right");if("left"===r)return e(a[0],"left")}}return t},yt=function(e,t){return e?(t&&(e=bt(e,t)),dt[e.classes[0]]||null):null},xt=function(e,t){var r=["nulldelimiter"].concat(e.baseSizingClasses());return ct(t.concat(r))},wt=function(e,t,r){if(!e)return ct();if(at[e.type]){var a=at[e.type](e,t);if(r&&t.size!==r.size){a=ct(t.sizingClasses(r),[a],t);var i=t.sizeMultiplier/r.sizeMultiplier;a.height*=i,a.depth*=i}return a}throw new n("Got group of unknown type: '"+e.type+"'")};function kt(e,t){var r=ct(["base"],e,t),n=ct(["strut"]);return n.style.height=F(r.height+r.depth),r.depth&&(n.style.verticalAlign=F(-r.depth)),r.children.unshift(n),r}function St(e,t){var r=null;1===e.length&&"tag"===e[0].type&&(r=e[0].tag,e=e[0].body);var n,a=ft(e,t,"root");2===a.length&&a[1].hasClass("tag")&&(n=a.pop());for(var i,o=[],s=[],l=0;l<a.length;l++)if(s.push(a[l]),a[l].hasClass("mbin")||a[l].hasClass("mrel")||a[l].hasClass("allowbreak")){for(var h=!1;l<a.length-1&&a[l+1].hasClass("mspace")&&!a[l+1].hasClass("newline");)l++,s.push(a[l]),a[l].hasClass("nobreak")&&(h=!0);h||(o.push(kt(s,t)),s=[])}else a[l].hasClass("newline")&&(s.pop(),s.length>0&&(o.push(kt(s,t)),s=[]),o.push(a[l]));s.length>0&&o.push(kt(s,t)),r?((i=kt(ft(r,t,!0))).classes=["tag"],o.push(i)):n&&o.push(n);var c=ct(["katex-html"],o);if(c.setAttribute("aria-hidden","true"),i){var m=i.children[0];m.style.height=F(c.height+c.depth),c.depth&&(m.style.verticalAlign=F(-c.depth))}return c}function Mt(e){return new A(e)}var zt=function(){function e(e,t,r){this.type=void 0,this.attributes=void 0,this.children=void 0,this.classes=void 0,this.type=e,this.attributes={},this.children=t||[],this.classes=r||[]}var t=e.prototype;return t.setAttribute=function(e,t){this.attributes[e]=t},t.getAttribute=function(e){return this.attributes[e]},t.toNode=function(){var e=document.createElementNS("http://www.w3.org/1998/Math/MathML",this.type);for(var t in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,t)&&e.setAttribute(t,this.attributes[t]);this.classes.length>0&&(e.className=G(this.classes));for(var r=0;r<this.children.length;r++)e.appendChild(this.children[r].toNode());return e},t.toMarkup=function(){var e="<"+this.type;for(var t in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,t)&&(e+=" "+t+'="',e+=l.escape(this.attributes[t]),e+='"');this.classes.length>0&&(e+=' class ="'+l.escape(G(this.classes))+'"'),e+=">";for(var r=0;r<this.children.length;r++)e+=this.children[r].toMarkup();return e+="</"+this.type+">"},t.toText=function(){return this.children.map((function(e){return e.toText()})).join("")},e}(),At=function(){function e(e){this.text=void 0,this.text=e}var t=e.prototype;return t.toNode=function(){return document.createTextNode(this.text)},t.toMarkup=function(){return l.escape(this.toText())},t.toText=function(){return this.text},e}(),Tt={MathNode:zt,TextNode:At,SpaceNode:function(){function e(e){this.width=void 0,this.character=void 0,this.width=e,this.character=e>=.05555&&e<=.05556?"\u200a":e>=.1666&&e<=.1667?"\u2009":e>=.2222&&e<=.2223?"\u2005":e>=.2777&&e<=.2778?"\u2005\u200a":e>=-.05556&&e<=-.05555?"\u200a\u2063":e>=-.1667&&e<=-.1666?"\u2009\u2063":e>=-.2223&&e<=-.2222?"\u205f\u2063":e>=-.2778&&e<=-.2777?"\u2005\u2063":null}var t=e.prototype;return t.toNode=function(){if(this.character)return document.createTextNode(this.character);var e=document.createElementNS("http://www.w3.org/1998/Math/MathML","mspace");return e.setAttribute("width",F(this.width)),e},t.toMarkup=function(){return this.character?"<mtext>"+this.character+"</mtext>":'<mspace width="'+F(this.width)+'"/>'},t.toText=function(){return this.character?this.character:" "},e}(),newDocumentFragment:Mt},Bt=function(e,t,r){return!ae[t][e]||!ae[t][e].replace||55349===e.charCodeAt(0)||we.hasOwnProperty(e)&&r&&(r.fontFamily&&"tt"===r.fontFamily.slice(4,6)||r.font&&"tt"===r.font.slice(4,6))||(e=ae[t][e].replace),new Tt.TextNode(e)},Ct=function(e){return 1===e.length?e[0]:new Tt.MathNode("mrow",e)},Nt=function(e,t){if("texttt"===t.fontFamily)return"monospace";if("textsf"===t.fontFamily)return"textit"===t.fontShape&&"textbf"===t.fontWeight?"sans-serif-bold-italic":"textit"===t.fontShape?"sans-serif-italic":"textbf"===t.fontWeight?"bold-sans-serif":"sans-serif";if("textit"===t.fontShape&&"textbf"===t.fontWeight)return"bold-italic";if("textit"===t.fontShape)return"italic";if("textbf"===t.fontWeight)return"bold";var r=t.font;if(!r||"mathnormal"===r)return null;var n=e.mode;if("mathit"===r)return"italic";if("boldsymbol"===r)return"textord"===e.type?"bold":"bold-italic";if("mathbf"===r)return"bold";if("mathbb"===r)return"double-struck";if("mathfrak"===r)return"fraktur";if("mathscr"===r||"mathcal"===r)return"script";if("mathsf"===r)return"sans-serif";if("mathtt"===r)return"monospace";var a=e.text;return l.contains(["\\imath","\\jmath"],a)?null:(ae[n][a]&&ae[n][a].replace&&(a=ae[n][a].replace),N(a,Ke.fontMap[r].fontName,n)?Ke.fontMap[r].variant:null)},qt=function(e,t,r){if(1===e.length){var n=Rt(e[0],t);return r&&n instanceof zt&&"mo"===n.type&&(n.setAttribute("lspace","0em"),n.setAttribute("rspace","0em")),[n]}for(var a,i=[],o=0;o<e.length;o++){var s=Rt(e[o],t);if(s instanceof zt&&a instanceof zt){if("mtext"===s.type&&"mtext"===a.type&&s.getAttribute("mathvariant")===a.getAttribute("mathvariant")){var l;(l=a.children).push.apply(l,s.children);continue}if("mn"===s.type&&"mn"===a.type){var h;(h=a.children).push.apply(h,s.children);continue}if("mi"===s.type&&1===s.children.length&&"mn"===a.type){var c=s.children[0];if(c instanceof At&&"."===c.text){var m;(m=a.children).push.apply(m,s.children);continue}}else if("mi"===a.type&&1===a.children.length){var u=a.children[0];if(u instanceof At&&"\u0338"===u.text&&("mo"===s.type||"mi"===s.type||"mn"===s.type)){var p=s.children[0];p instanceof At&&p.text.length>0&&(p.text=p.text.slice(0,1)+"\u0338"+p.text.slice(1),i.pop())}}}i.push(s),a=s}return i},It=function(e,t,r){return Ct(qt(e,t,r))},Rt=function(e,t){if(!e)return new Tt.MathNode("mrow");if(it[e.type])return it[e.type](e,t);throw new n("Got group of unknown type: '"+e.type+"'")};function Ht(e,t,r,n,a){var i,o=qt(e,r);i=1===o.length&&o[0]instanceof zt&&l.contains(["mrow","mtable"],o[0].type)?o[0]:new Tt.MathNode("mrow",o);var s=new Tt.MathNode("annotation",[new Tt.TextNode(t)]);s.setAttribute("encoding","application/x-tex");var h=new Tt.MathNode("semantics",[i,s]),c=new Tt.MathNode("math",[h]);c.setAttribute("xmlns","http://www.w3.org/1998/Math/MathML"),n&&c.setAttribute("display","block");var m=a?"katex":"katex-mathml";return Ke.makeSpan([m],[c])}var Ot=function(e){return new E({style:e.displayMode?x.DISPLAY:x.TEXT,maxSize:e.maxSize,minRuleThickness:e.minRuleThickness})},Et=function(e,t){if(t.displayMode){var r=["katex-display"];t.leqno&&r.push("leqno"),t.fleqn&&r.push("fleqn"),e=Ke.makeSpan(r,[e])}return e},Lt=function(e,t,r){var n,a=Ot(r);if("mathml"===r.output)return Ht(e,t,a,r.displayMode,!0);if("html"===r.output){var i=St(e,a);n=Ke.makeSpan(["katex"],[i])}else{var o=Ht(e,t,a,r.displayMode,!1),s=St(e,a);n=Ke.makeSpan(["katex"],[o,s])}return Et(n,r)},Dt={widehat:"^",widecheck:"\u02c7",widetilde:"~",utilde:"~",overleftarrow:"\u2190",underleftarrow:"\u2190",xleftarrow:"\u2190",overrightarrow:"\u2192",underrightarrow:"\u2192",xrightarrow:"\u2192",underbrace:"\u23df",overbrace:"\u23de",overgroup:"\u23e0",undergroup:"\u23e1",overleftrightarrow:"\u2194",underleftrightarrow:"\u2194",xleftrightarrow:"\u2194",Overrightarrow:"\u21d2",xRightarrow:"\u21d2",overleftharpoon:"\u21bc",xleftharpoonup:"\u21bc",overrightharpoon:"\u21c0",xrightharpoonup:"\u21c0",xLeftarrow:"\u21d0",xLeftrightarrow:"\u21d4",xhookleftarrow:"\u21a9",xhookrightarrow:"\u21aa",xmapsto:"\u21a6",xrightharpoondown:"\u21c1",xleftharpoondown:"\u21bd",xrightleftharpoons:"\u21cc",xleftrightharpoons:"\u21cb",xtwoheadleftarrow:"\u219e",xtwoheadrightarrow:"\u21a0",xlongequal:"=",xtofrom:"\u21c4",xrightleftarrows:"\u21c4",xrightequilibrium:"\u21cc",xleftequilibrium:"\u21cb","\\cdrightarrow":"\u2192","\\cdleftarrow":"\u2190","\\cdlongequal":"="},Vt={overrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],overleftarrow:[["leftarrow"],.888,522,"xMinYMin"],underrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],underleftarrow:[["leftarrow"],.888,522,"xMinYMin"],xrightarrow:[["rightarrow"],1.469,522,"xMaxYMin"],"\\cdrightarrow":[["rightarrow"],3,522,"xMaxYMin"],xleftarrow:[["leftarrow"],1.469,522,"xMinYMin"],"\\cdleftarrow":[["leftarrow"],3,522,"xMinYMin"],Overrightarrow:[["doublerightarrow"],.888,560,"xMaxYMin"],xRightarrow:[["doublerightarrow"],1.526,560,"xMaxYMin"],xLeftarrow:[["doubleleftarrow"],1.526,560,"xMinYMin"],overleftharpoon:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoonup:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoondown:[["leftharpoondown"],.888,522,"xMinYMin"],overrightharpoon:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoonup:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoondown:[["rightharpoondown"],.888,522,"xMaxYMin"],xlongequal:[["longequal"],.888,334,"xMinYMin"],"\\cdlongequal":[["longequal"],3,334,"xMinYMin"],xtwoheadleftarrow:[["twoheadleftarrow"],.888,334,"xMinYMin"],xtwoheadrightarrow:[["twoheadrightarrow"],.888,334,"xMaxYMin"],overleftrightarrow:[["leftarrow","rightarrow"],.888,522],overbrace:[["leftbrace","midbrace","rightbrace"],1.6,548],underbrace:[["leftbraceunder","midbraceunder","rightbraceunder"],1.6,548],underleftrightarrow:[["leftarrow","rightarrow"],.888,522],xleftrightarrow:[["leftarrow","rightarrow"],1.75,522],xLeftrightarrow:[["doubleleftarrow","doublerightarrow"],1.75,560],xrightleftharpoons:[["leftharpoondownplus","rightharpoonplus"],1.75,716],xleftrightharpoons:[["leftharpoonplus","rightharpoondownplus"],1.75,716],xhookleftarrow:[["leftarrow","righthook"],1.08,522],xhookrightarrow:[["lefthook","rightarrow"],1.08,522],overlinesegment:[["leftlinesegment","rightlinesegment"],.888,522],underlinesegment:[["leftlinesegment","rightlinesegment"],.888,522],overgroup:[["leftgroup","rightgroup"],.888,342],undergroup:[["leftgroupunder","rightgroupunder"],.888,342],xmapsto:[["leftmapsto","rightarrow"],1.5,522],xtofrom:[["leftToFrom","rightToFrom"],1.75,528],xrightleftarrows:[["baraboveleftarrow","rightarrowabovebar"],1.75,901],xrightequilibrium:[["baraboveshortleftharpoon","rightharpoonaboveshortbar"],1.75,716],xleftequilibrium:[["shortbaraboveleftharpoon","shortrightharpoonabovebar"],1.75,716]},Pt=function(e,t,r,n,a){var i,o=e.height+e.depth+r+n;if(/fbox|color|angl/.test(t)){if(i=Ke.makeSpan(["stretchy",t],[],a),"fbox"===t){var s=a.color&&a.getColor();s&&(i.style.borderColor=s)}}else{var l=[];/^[bx]cancel$/.test(t)&&l.push(new Q({x1:"0",y1:"0",x2:"100%",y2:"100%","stroke-width":"0.046em"})),/^x?cancel$/.test(t)&&l.push(new Q({x1:"0",y1:"100%",x2:"100%",y2:"0","stroke-width":"0.046em"}));var h=new K(l,{width:"100%",height:F(o)});i=Ke.makeSvgSpan([],[h],a)}return i.height=o,i.style.height=F(o),i},Ft=function(e){var t=new Tt.MathNode("mo",[new Tt.TextNode(Dt[e.replace(/^\\/,"")])]);return t.setAttribute("stretchy","true"),t},Gt=function(e,t){var r=function(){var r=4e5,n=e.label.slice(1);if(l.contains(["widehat","widecheck","widetilde","utilde"],n)){var a,i,o,s="ordgroup"===(d=e.base).type?d.body.length:1;if(s>5)"widehat"===n||"widecheck"===n?(a=420,r=2364,o=.42,i=n+"4"):(a=312,r=2340,o=.34,i="tilde4");else{var h=[1,1,2,2,3,3][s];"widehat"===n||"widecheck"===n?(r=[0,1062,2364,2364,2364][h],a=[0,239,300,360,420][h],o=[0,.24,.3,.3,.36,.42][h],i=n+h):(r=[0,600,1033,2339,2340][h],a=[0,260,286,306,312][h],o=[0,.26,.286,.3,.306,.34][h],i="tilde"+h)}var c=new J(i),m=new K([c],{width:"100%",height:F(o),viewBox:"0 0 "+r+" "+a,preserveAspectRatio:"none"});return{span:Ke.makeSvgSpan([],[m],t),minWidth:0,height:o}}var u,p,d,f=[],g=Vt[n],v=g[0],b=g[1],y=g[2],x=y/1e3,w=v.length;if(1===w)u=["hide-tail"],p=[g[3]];else if(2===w)u=["halfarrow-left","halfarrow-right"],p=["xMinYMin","xMaxYMin"];else{if(3!==w)throw new Error("Correct katexImagesData or update code here to support\n "+w+" children.");u=["brace-left","brace-center","brace-right"],p=["xMinYMin","xMidYMin","xMaxYMin"]}for(var k=0;k<w;k++){var S=new J(v[k]),M=new K([S],{width:"400em",height:F(x),viewBox:"0 0 "+r+" "+y,preserveAspectRatio:p[k]+" slice"}),z=Ke.makeSvgSpan([u[k]],[M],t);if(1===w)return{span:z,minWidth:b,height:x};z.style.height=F(x),f.push(z)}return{span:Ke.makeSpan(["stretchy"],f,t),minWidth:b,height:x}}(),n=r.span,a=r.minWidth,i=r.height;return n.height=i,n.style.height=F(i),a>0&&(n.style.minWidth=F(a)),n};function Ut(e,t){if(!e||e.type!==t)throw new Error("Expected node of type "+t+", but got "+(e?"node of type "+e.type:String(e)));return e}function Yt(e){var t=Xt(e);if(!t)throw new Error("Expected node of symbol group type, but got "+(e?"node of type "+e.type:String(e)));return t}function Xt(e){return e&&("atom"===e.type||re.hasOwnProperty(e.type))?e:null}var Wt=function(e,t){var r,n,a;e&&"supsub"===e.type?(r=(n=Ut(e.base,"accent")).base,e.base=r,a=function(e){if(e instanceof W)return e;throw new Error("Expected span<HtmlDomNode> but got "+String(e)+".")}(wt(e,t)),e.base=n):r=(n=Ut(e,"accent")).base;var i=wt(r,t.havingCrampedStyle()),o=0;if(n.isShifty&&l.isCharacterBox(r)){var s=l.getBaseElem(r);o=ee(wt(s,t.havingCrampedStyle())).skew}var h,c="\\c"===n.label,m=c?i.height+i.depth:Math.min(i.height,t.fontMetrics().xHeight);if(n.isStretchy)h=Gt(n,t),h=Ke.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:i},{type:"elem",elem:h,wrapperClasses:["svg-align"],wrapperStyle:o>0?{width:"calc(100% - "+F(2*o)+")",marginLeft:F(2*o)}:void 0}]},t);else{var u,p;"\\vec"===n.label?(u=Ke.staticSvg("vec",t),p=Ke.svgData.vec[1]):((u=ee(u=Ke.makeOrd({mode:n.mode,text:n.label},t,"textord"))).italic=0,p=u.width,c&&(m+=u.depth)),h=Ke.makeSpan(["accent-body"],[u]);var d="\\textcircled"===n.label;d&&(h.classes.push("accent-full"),m=i.height);var f=o;d||(f-=p/2),h.style.left=F(f),"\\textcircled"===n.label&&(h.style.top=".2em"),h=Ke.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:i},{type:"kern",size:-m},{type:"elem",elem:h}]},t)}var g=Ke.makeSpan(["mord","accent"],[h],t);return a?(a.children[0]=g,a.height=Math.max(g.height,a.height),a.classes[0]="mord",a):g},_t=function(e,t){var r=e.isStretchy?Ft(e.label):new Tt.MathNode("mo",[Bt(e.label,e.mode)]),n=new Tt.MathNode("mover",[Rt(e.base,t),r]);return n.setAttribute("accent","true"),n},jt=new RegExp(["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring"].map((function(e){return"\\"+e})).join("|"));ot({type:"accent",names:["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring","\\widecheck","\\widehat","\\widetilde","\\overrightarrow","\\overleftarrow","\\Overrightarrow","\\overleftrightarrow","\\overgroup","\\overlinesegment","\\overleftharpoon","\\overrightharpoon"],props:{numArgs:1},handler:function(e,t){var r=lt(t[0]),n=!jt.test(e.funcName),a=!n||"\\widehat"===e.funcName||"\\widetilde"===e.funcName||"\\widecheck"===e.funcName;return{type:"accent",mode:e.parser.mode,label:e.funcName,isStretchy:n,isShifty:a,base:r}},htmlBuilder:Wt,mathmlBuilder:_t}),ot({type:"accent",names:["\\'","\\`","\\^","\\~","\\=","\\u","\\.",'\\"',"\\c","\\r","\\H","\\v","\\textcircled"],props:{numArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["primitive"]},handler:function(e,t){var r=t[0],n=e.parser.mode;return"math"===n&&(e.parser.settings.reportNonstrict("mathVsTextAccents","LaTeX's accent "+e.funcName+" works only in text mode"),n="text"),{type:"accent",mode:n,label:e.funcName,isStretchy:!1,isShifty:!0,base:r}},htmlBuilder:Wt,mathmlBuilder:_t}),ot({type:"accentUnder",names:["\\underleftarrow","\\underrightarrow","\\underleftrightarrow","\\undergroup","\\underlinesegment","\\utilde"],props:{numArgs:1},handler:function(e,t){var r=e.parser,n=e.funcName,a=t[0];return{type:"accentUnder",mode:r.mode,label:n,base:a}},htmlBuilder:function(e,t){var r=wt(e.base,t),n=Gt(e,t),a="\\utilde"===e.label?.12:0,i=Ke.makeVList({positionType:"top",positionData:r.height,children:[{type:"elem",elem:n,wrapperClasses:["svg-align"]},{type:"kern",size:a},{type:"elem",elem:r}]},t);return Ke.makeSpan(["mord","accentunder"],[i],t)},mathmlBuilder:function(e,t){var r=Ft(e.label),n=new Tt.MathNode("munder",[Rt(e.base,t),r]);return n.setAttribute("accentunder","true"),n}});var $t=function(e){var t=new Tt.MathNode("mpadded",e?[e]:[]);return t.setAttribute("width","+0.6em"),t.setAttribute("lspace","0.3em"),t};ot({type:"xArrow",names:["\\xleftarrow","\\xrightarrow","\\xLeftarrow","\\xRightarrow","\\xleftrightarrow","\\xLeftrightarrow","\\xhookleftarrow","\\xhookrightarrow","\\xmapsto","\\xrightharpoondown","\\xrightharpoonup","\\xleftharpoondown","\\xleftharpoonup","\\xrightleftharpoons","\\xleftrightharpoons","\\xlongequal","\\xtwoheadrightarrow","\\xtwoheadleftarrow","\\xtofrom","\\xrightleftarrows","\\xrightequilibrium","\\xleftequilibrium","\\\\cdrightarrow","\\\\cdleftarrow","\\\\cdlongequal"],props:{numArgs:1,numOptionalArgs:1},handler:function(e,t,r){var n=e.parser,a=e.funcName;return{type:"xArrow",mode:n.mode,label:a,body:t[0],below:r[0]}},htmlBuilder:function(e,t){var r,n=t.style,a=t.havingStyle(n.sup()),i=Ke.wrapFragment(wt(e.body,a,t),t),o="\\x"===e.label.slice(0,2)?"x":"cd";i.classes.push(o+"-arrow-pad"),e.below&&(a=t.havingStyle(n.sub()),(r=Ke.wrapFragment(wt(e.below,a,t),t)).classes.push(o+"-arrow-pad"));var s,l=Gt(e,t),h=-t.fontMetrics().axisHeight+.5*l.height,c=-t.fontMetrics().axisHeight-.5*l.height-.111;if((i.depth>.25||"\\xleftequilibrium"===e.label)&&(c-=i.depth),r){var m=-t.fontMetrics().axisHeight+r.height+.5*l.height+.111;s=Ke.makeVList({positionType:"individualShift",children:[{type:"elem",elem:i,shift:c},{type:"elem",elem:l,shift:h},{type:"elem",elem:r,shift:m}]},t)}else s=Ke.makeVList({positionType:"individualShift",children:[{type:"elem",elem:i,shift:c},{type:"elem",elem:l,shift:h}]},t);return s.children[0].children[0].children[1].classes.push("svg-align"),Ke.makeSpan(["mrel","x-arrow"],[s],t)},mathmlBuilder:function(e,t){var r,n=Ft(e.label);if(n.setAttribute("minsize","x"===e.label.charAt(0)?"1.75em":"3.0em"),e.body){var a=$t(Rt(e.body,t));if(e.below){var i=$t(Rt(e.below,t));r=new Tt.MathNode("munderover",[n,i,a])}else r=new Tt.MathNode("mover",[n,a])}else if(e.below){var o=$t(Rt(e.below,t));r=new Tt.MathNode("munder",[n,o])}else r=$t(),r=new Tt.MathNode("mover",[n,r]);return r}});var Zt=Ke.makeSpan;function Kt(e,t){var r=ft(e.body,t,!0);return Zt([e.mclass],r,t)}function Jt(e,t){var r,n=qt(e.body,t);return"minner"===e.mclass?r=new Tt.MathNode("mpadded",n):"mord"===e.mclass?e.isCharacterBox?(r=n[0]).type="mi":r=new Tt.MathNode("mi",n):(e.isCharacterBox?(r=n[0]).type="mo":r=new Tt.MathNode("mo",n),"mbin"===e.mclass?(r.attributes.lspace="0.22em",r.attributes.rspace="0.22em"):"mpunct"===e.mclass?(r.attributes.lspace="0em",r.attributes.rspace="0.17em"):"mopen"===e.mclass||"mclose"===e.mclass?(r.attributes.lspace="0em",r.attributes.rspace="0em"):"minner"===e.mclass&&(r.attributes.lspace="0.0556em",r.attributes.width="+0.1111em")),r}ot({type:"mclass",names:["\\mathord","\\mathbin","\\mathrel","\\mathopen","\\mathclose","\\mathpunct","\\mathinner"],props:{numArgs:1,primitive:!0},handler:function(e,t){var r=e.parser,n=e.funcName,a=t[0];return{type:"mclass",mode:r.mode,mclass:"m"+n.slice(5),body:ht(a),isCharacterBox:l.isCharacterBox(a)}},htmlBuilder:Kt,mathmlBuilder:Jt});var Qt=function(e){var t="ordgroup"===e.type&&e.body.length?e.body[0]:e;return"atom"!==t.type||"bin"!==t.family&&"rel"!==t.family?"mord":"m"+t.family};ot({type:"mclass",names:["\\@binrel"],props:{numArgs:2},handler:function(e,t){return{type:"mclass",mode:e.parser.mode,mclass:Qt(t[0]),body:ht(t[1]),isCharacterBox:l.isCharacterBox(t[1])}}}),ot({type:"mclass",names:["\\stackrel","\\overset","\\underset"],props:{numArgs:2},handler:function(e,t){var r,n=e.parser,a=e.funcName,i=t[1],o=t[0];r="\\stackrel"!==a?Qt(i):"mrel";var s={type:"op",mode:i.mode,limits:!0,alwaysHandleSupSub:!0,parentIsSupSub:!1,symbol:!1,suppressBaseShift:"\\stackrel"!==a,body:ht(i)},h={type:"supsub",mode:o.mode,base:s,sup:"\\underset"===a?null:o,sub:"\\underset"===a?o:null};return{type:"mclass",mode:n.mode,mclass:r,body:[h],isCharacterBox:l.isCharacterBox(h)}},htmlBuilder:Kt,mathmlBuilder:Jt}),ot({type:"pmb",names:["\\pmb"],props:{numArgs:1,allowedInText:!0},handler:function(e,t){return{type:"pmb",mode:e.parser.mode,mclass:Qt(t[0]),body:ht(t[0])}},htmlBuilder:function(e,t){var r=ft(e.body,t,!0),n=Ke.makeSpan([e.mclass],r,t);return n.style.textShadow="0.02em 0.01em 0.04px",n},mathmlBuilder:function(e,t){var r=qt(e.body,t),n=new Tt.MathNode("mstyle",r);return n.setAttribute("style","text-shadow: 0.02em 0.01em 0.04px"),n}});var er={">":"\\\\cdrightarrow","<":"\\\\cdleftarrow","=":"\\\\cdlongequal",A:"\\uparrow",V:"\\downarrow","|":"\\Vert",".":"no arrow"},tr=function(e){return"textord"===e.type&&"@"===e.text};function rr(e,t,r){var n=er[e];switch(n){case"\\\\cdrightarrow":case"\\\\cdleftarrow":return r.callFunction(n,[t[0]],[t[1]]);case"\\uparrow":case"\\downarrow":var a={type:"atom",text:n,mode:"math",family:"rel"},i={type:"ordgroup",mode:"math",body:[r.callFunction("\\\\cdleft",[t[0]],[]),r.callFunction("\\Big",[a],[]),r.callFunction("\\\\cdright",[t[1]],[])]};return r.callFunction("\\\\cdparent",[i],[]);case"\\\\cdlongequal":return r.callFunction("\\\\cdlongequal",[],[]);case"\\Vert":return r.callFunction("\\Big",[{type:"textord",text:"\\Vert",mode:"math"}],[]);default:return{type:"textord",text:" ",mode:"math"}}}ot({type:"cdlabel",names:["\\\\cdleft","\\\\cdright"],props:{numArgs:1},handler:function(e,t){var r=e.parser,n=e.funcName;return{type:"cdlabel",mode:r.mode,side:n.slice(4),label:t[0]}},htmlBuilder:function(e,t){var r=t.havingStyle(t.style.sup()),n=Ke.wrapFragment(wt(e.label,r,t),t);return n.classes.push("cd-label-"+e.side),n.style.bottom=F(.8-n.depth),n.height=0,n.depth=0,n},mathmlBuilder:function(e,t){var r=new Tt.MathNode("mrow",[Rt(e.label,t)]);return(r=new Tt.MathNode("mpadded",[r])).setAttribute("width","0"),"left"===e.side&&r.setAttribute("lspace","-1width"),r.setAttribute("voffset","0.7em"),(r=new Tt.MathNode("mstyle",[r])).setAttribute("displaystyle","false"),r.setAttribute("scriptlevel","1"),r}}),ot({type:"cdlabelparent",names:["\\\\cdparent"],props:{numArgs:1},handler:function(e,t){return{type:"cdlabelparent",mode:e.parser.mode,fragment:t[0]}},htmlBuilder:function(e,t){var r=Ke.wrapFragment(wt(e.fragment,t),t);return r.classes.push("cd-vert-arrow"),r},mathmlBuilder:function(e,t){return new Tt.MathNode("mrow",[Rt(e.fragment,t)])}}),ot({type:"textord",names:["\\@char"],props:{numArgs:1,allowedInText:!0},handler:function(e,t){for(var r=e.parser,a=Ut(t[0],"ordgroup").body,i="",o=0;o<a.length;o++){i+=Ut(a[o],"textord").text}var s,l=parseInt(i);if(isNaN(l))throw new n("\\@char has non-numeric argument "+i);if(l<0||l>=1114111)throw new n("\\@char with invalid code point "+i);return l<=65535?s=String.fromCharCode(l):(l-=65536,s=String.fromCharCode(55296+(l>>10),56320+(1023&l))),{type:"textord",mode:r.mode,text:s}}});var nr=function(e,t){var r=ft(e.body,t.withColor(e.color),!1);return Ke.makeFragment(r)},ar=function(e,t){var r=qt(e.body,t.withColor(e.color)),n=new Tt.MathNode("mstyle",r);return n.setAttribute("mathcolor",e.color),n};ot({type:"color",names:["\\textcolor"],props:{numArgs:2,allowedInText:!0,argTypes:["color","original"]},handler:function(e,t){var r=e.parser,n=Ut(t[0],"color-token").color,a=t[1];return{type:"color",mode:r.mode,color:n,body:ht(a)}},htmlBuilder:nr,mathmlBuilder:ar}),ot({type:"color",names:["\\color"],props:{numArgs:1,allowedInText:!0,argTypes:["color"]},handler:function(e,t){var r=e.parser,n=e.breakOnTokenText,a=Ut(t[0],"color-token").color;r.gullet.macros.set("\\current@color",a);var i=r.parseExpression(!0,n);return{type:"color",mode:r.mode,color:a,body:i}},htmlBuilder:nr,mathmlBuilder:ar}),ot({type:"cr",names:["\\\\"],props:{numArgs:0,numOptionalArgs:0,allowedInText:!0},handler:function(e,t,r){var n=e.parser,a="["===n.gullet.future().text?n.parseSizeGroup(!0):null,i=!n.settings.displayMode||!n.settings.useStrictBehavior("newLineInDisplayMode","In LaTeX, \\\\ or \\newline does nothing in display mode");return{type:"cr",mode:n.mode,newLine:i,size:a&&Ut(a,"size").value}},htmlBuilder:function(e,t){var r=Ke.makeSpan(["mspace"],[],t);return e.newLine&&(r.classes.push("newline"),e.size&&(r.style.marginTop=F(P(e.size,t)))),r},mathmlBuilder:function(e,t){var r=new Tt.MathNode("mspace");return e.newLine&&(r.setAttribute("linebreak","newline"),e.size&&r.setAttribute("height",F(P(e.size,t)))),r}});var ir={"\\global":"\\global","\\long":"\\\\globallong","\\\\globallong":"\\\\globallong","\\def":"\\gdef","\\gdef":"\\gdef","\\edef":"\\xdef","\\xdef":"\\xdef","\\let":"\\\\globallet","\\futurelet":"\\\\globalfuture"},or=function(e){var t=e.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(t))throw new n("Expected a control sequence",e);return t},sr=function(e,t,r,n){var a=e.gullet.macros.get(r.text);null==a&&(r.noexpand=!0,a={tokens:[r],numArgs:0,unexpandable:!e.gullet.isExpandable(r.text)}),e.gullet.macros.set(t,a,n)};ot({type:"internal",names:["\\global","\\long","\\\\globallong"],props:{numArgs:0,allowedInText:!0},handler:function(e){var t=e.parser,r=e.funcName;t.consumeSpaces();var a=t.fetch();if(ir[a.text])return"\\global"!==r&&"\\\\globallong"!==r||(a.text=ir[a.text]),Ut(t.parseFunction(),"internal");throw new n("Invalid token after macro prefix",a)}}),ot({type:"internal",names:["\\def","\\gdef","\\edef","\\xdef"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler:function(e){var t=e.parser,r=e.funcName,a=t.gullet.popToken(),i=a.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(i))throw new n("Expected a control sequence",a);for(var o,s=0,l=[[]];"{"!==t.gullet.future().text;)if("#"===(a=t.gullet.popToken()).text){if("{"===t.gullet.future().text){o=t.gullet.future(),l[s].push("{");break}if(a=t.gullet.popToken(),!/^[1-9]$/.test(a.text))throw new n('Invalid argument number "'+a.text+'"');if(parseInt(a.text)!==s+1)throw new n('Argument number "'+a.text+'" out of order');s++,l.push([])}else{if("EOF"===a.text)throw new n("Expected a macro definition");l[s].push(a.text)}var h=t.gullet.consumeArg().tokens;return o&&h.unshift(o),"\\edef"!==r&&"\\xdef"!==r||(h=t.gullet.expandTokens(h)).reverse(),t.gullet.macros.set(i,{tokens:h,numArgs:s,delimiters:l},r===ir[r]),{type:"internal",mode:t.mode}}}),ot({type:"internal",names:["\\let","\\\\globallet"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler:function(e){var t=e.parser,r=e.funcName,n=or(t.gullet.popToken());t.gullet.consumeSpaces();var a=function(e){var t=e.gullet.popToken();return"="===t.text&&" "===(t=e.gullet.popToken()).text&&(t=e.gullet.popToken()),t}(t);return sr(t,n,a,"\\\\globallet"===r),{type:"internal",mode:t.mode}}}),ot({type:"internal",names:["\\futurelet","\\\\globalfuture"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler:function(e){var t=e.parser,r=e.funcName,n=or(t.gullet.popToken()),a=t.gullet.popToken(),i=t.gullet.popToken();return sr(t,n,i,"\\\\globalfuture"===r),t.gullet.pushToken(i),t.gullet.pushToken(a),{type:"internal",mode:t.mode}}});var lr=function(e,t,r){var n=N(ae.math[e]&&ae.math[e].replace||e,t,r);if(!n)throw new Error("Unsupported symbol "+e+" and font size "+t+".");return n},hr=function(e,t,r,n){var a=r.havingBaseStyle(t),i=Ke.makeSpan(n.concat(a.sizingClasses(r)),[e],r),o=a.sizeMultiplier/r.sizeMultiplier;return i.height*=o,i.depth*=o,i.maxFontSize=a.sizeMultiplier,i},cr=function(e,t,r){var n=t.havingBaseStyle(r),a=(1-t.sizeMultiplier/n.sizeMultiplier)*t.fontMetrics().axisHeight;e.classes.push("delimcenter"),e.style.top=F(a),e.height-=a,e.depth+=a},mr=function(e,t,r,n,a,i){var o=function(e,t,r,n){return Ke.makeSymbol(e,"Size"+t+"-Regular",r,n)}(e,t,a,n),s=hr(Ke.makeSpan(["delimsizing","size"+t],[o],n),x.TEXT,n,i);return r&&cr(s,n,x.TEXT),s},ur=function(e,t,r){var n;return n="Size1-Regular"===t?"delim-size1":"delim-size4",{type:"elem",elem:Ke.makeSpan(["delimsizinginner",n],[Ke.makeSpan([],[Ke.makeSymbol(e,t,r)])])}},pr=function(e,t,r){var n=T["Size4-Regular"][e.charCodeAt(0)]?T["Size4-Regular"][e.charCodeAt(0)][4]:T["Size1-Regular"][e.charCodeAt(0)][4],a=new J("inner",function(e,t){switch(e){case"\u239c":return"M291 0 H417 V"+t+" H291z M291 0 H417 V"+t+" H291z";case"\u2223":return"M145 0 H188 V"+t+" H145z M145 0 H188 V"+t+" H145z";case"\u2225":return"M145 0 H188 V"+t+" H145z M145 0 H188 V"+t+" H145zM367 0 H410 V"+t+" H367z M367 0 H410 V"+t+" H367z";case"\u239f":return"M457 0 H583 V"+t+" H457z M457 0 H583 V"+t+" H457z";case"\u23a2":return"M319 0 H403 V"+t+" H319z M319 0 H403 V"+t+" H319z";case"\u23a5":return"M263 0 H347 V"+t+" H263z M263 0 H347 V"+t+" H263z";case"\u23aa":return"M384 0 H504 V"+t+" H384z M384 0 H504 V"+t+" H384z";case"\u23d0":return"M312 0 H355 V"+t+" H312z M312 0 H355 V"+t+" H312z";case"\u2016":return"M257 0 H300 V"+t+" H257z M257 0 H300 V"+t+" H257zM478 0 H521 V"+t+" H478z M478 0 H521 V"+t+" H478z";default:return""}}(e,Math.round(1e3*t))),i=new K([a],{width:F(n),height:F(t),style:"width:"+F(n),viewBox:"0 0 "+1e3*n+" "+Math.round(1e3*t),preserveAspectRatio:"xMinYMin"}),o=Ke.makeSvgSpan([],[i],r);return o.height=t,o.style.height=F(t),o.style.width=F(n),{type:"elem",elem:o}},dr={type:"kern",size:-.008},fr=["|","\\lvert","\\rvert","\\vert"],gr=["\\|","\\lVert","\\rVert","\\Vert"],vr=function(e,t,r,n,a,i){var o,s,h,c,m="",u=0;o=h=c=e,s=null;var p="Size1-Regular";"\\uparrow"===e?h=c="\u23d0":"\\Uparrow"===e?h=c="\u2016":"\\downarrow"===e?o=h="\u23d0":"\\Downarrow"===e?o=h="\u2016":"\\updownarrow"===e?(o="\\uparrow",h="\u23d0",c="\\downarrow"):"\\Updownarrow"===e?(o="\\Uparrow",h="\u2016",c="\\Downarrow"):l.contains(fr,e)?(h="\u2223",m="vert",u=333):l.contains(gr,e)?(h="\u2225",m="doublevert",u=556):"["===e||"\\lbrack"===e?(o="\u23a1",h="\u23a2",c="\u23a3",p="Size4-Regular",m="lbrack",u=667):"]"===e||"\\rbrack"===e?(o="\u23a4",h="\u23a5",c="\u23a6",p="Size4-Regular",m="rbrack",u=667):"\\lfloor"===e||"\u230a"===e?(h=o="\u23a2",c="\u23a3",p="Size4-Regular",m="lfloor",u=667):"\\lceil"===e||"\u2308"===e?(o="\u23a1",h=c="\u23a2",p="Size4-Regular",m="lceil",u=667):"\\rfloor"===e||"\u230b"===e?(h=o="\u23a5",c="\u23a6",p="Size4-Regular",m="rfloor",u=667):"\\rceil"===e||"\u2309"===e?(o="\u23a4",h=c="\u23a5",p="Size4-Regular",m="rceil",u=667):"("===e||"\\lparen"===e?(o="\u239b",h="\u239c",c="\u239d",p="Size4-Regular",m="lparen",u=875):")"===e||"\\rparen"===e?(o="\u239e",h="\u239f",c="\u23a0",p="Size4-Regular",m="rparen",u=875):"\\{"===e||"\\lbrace"===e?(o="\u23a7",s="\u23a8",c="\u23a9",h="\u23aa",p="Size4-Regular"):"\\}"===e||"\\rbrace"===e?(o="\u23ab",s="\u23ac",c="\u23ad",h="\u23aa",p="Size4-Regular"):"\\lgroup"===e||"\u27ee"===e?(o="\u23a7",c="\u23a9",h="\u23aa",p="Size4-Regular"):"\\rgroup"===e||"\u27ef"===e?(o="\u23ab",c="\u23ad",h="\u23aa",p="Size4-Regular"):"\\lmoustache"===e||"\u23b0"===e?(o="\u23a7",c="\u23ad",h="\u23aa",p="Size4-Regular"):"\\rmoustache"!==e&&"\u23b1"!==e||(o="\u23ab",c="\u23a9",h="\u23aa",p="Size4-Regular");var d=lr(o,p,a),f=d.height+d.depth,g=lr(h,p,a),v=g.height+g.depth,b=lr(c,p,a),y=b.height+b.depth,w=0,k=1;if(null!==s){var S=lr(s,p,a);w=S.height+S.depth,k=2}var M=f+y+w,z=M+Math.max(0,Math.ceil((t-M)/(k*v)))*k*v,A=n.fontMetrics().axisHeight;r&&(A*=n.sizeMultiplier);var T=z/2-A,B=[];if(m.length>0){var C=z-f-y,N=Math.round(1e3*z),q=function(e,t){switch(e){case"lbrack":return"M403 1759 V84 H666 V0 H319 V1759 v"+t+" v1759 h347 v-84\nH403z M403 1759 V0 H319 V1759 v"+t+" v1759 h84z";case"rbrack":return"M347 1759 V0 H0 V84 H263 V1759 v"+t+" v1759 H0 v84 H347z\nM347 1759 V0 H263 V1759 v"+t+" v1759 h84z";case"vert":return"M145 15 v585 v"+t+" v585 c2.667,10,9.667,15,21,15\nc10,0,16.667,-5,20,-15 v-585 v"+-t+" v-585 c-2.667,-10,-9.667,-15,-21,-15\nc-10,0,-16.667,5,-20,15z M188 15 H145 v585 v"+t+" v585 h43z";case"doublevert":return"M145 15 v585 v"+t+" v585 c2.667,10,9.667,15,21,15\nc10,0,16.667,-5,20,-15 v-585 v"+-t+" v-585 c-2.667,-10,-9.667,-15,-21,-15\nc-10,0,-16.667,5,-20,15z M188 15 H145 v585 v"+t+" v585 h43z\nM367 15 v585 v"+t+" v585 c2.667,10,9.667,15,21,15\nc10,0,16.667,-5,20,-15 v-585 v"+-t+" v-585 c-2.667,-10,-9.667,-15,-21,-15\nc-10,0,-16.667,5,-20,15z M410 15 H367 v585 v"+t+" v585 h43z";case"lfloor":return"M319 602 V0 H403 V602 v"+t+" v1715 h263 v84 H319z\nMM319 602 V0 H403 V602 v"+t+" v1715 H319z";case"rfloor":return"M319 602 V0 H403 V602 v"+t+" v1799 H0 v-84 H319z\nMM319 602 V0 H403 V602 v"+t+" v1715 H319z";case"lceil":return"M403 1759 V84 H666 V0 H319 V1759 v"+t+" v602 h84z\nM403 1759 V0 H319 V1759 v"+t+" v602 h84z";case"rceil":return"M347 1759 V0 H0 V84 H263 V1759 v"+t+" v602 h84z\nM347 1759 V0 h-84 V1759 v"+t+" v602 h84z";case"lparen":return"M863,9c0,-2,-2,-5,-6,-9c0,0,-17,0,-17,0c-12.7,0,-19.3,0.3,-20,1\nc-5.3,5.3,-10.3,11,-15,17c-242.7,294.7,-395.3,682,-458,1162c-21.3,163.3,-33.3,349,\n-36,557 l0,"+(t+84)+"c0.2,6,0,26,0,60c2,159.3,10,310.7,24,454c53.3,528,210,\n949.7,470,1265c4.7,6,9.7,11.7,15,17c0.7,0.7,7,1,19,1c0,0,18,0,18,0c4,-4,6,-7,6,-9\nc0,-2.7,-3.3,-8.7,-10,-18c-135.3,-192.7,-235.5,-414.3,-300.5,-665c-65,-250.7,-102.5,\n-544.7,-112.5,-882c-2,-104,-3,-167,-3,-189\nl0,-"+(t+92)+"c0,-162.7,5.7,-314,17,-454c20.7,-272,63.7,-513,129,-723c65.3,\n-210,155.3,-396.3,270,-559c6.7,-9.3,10,-15.3,10,-18z";case"rparen":return"M76,0c-16.7,0,-25,3,-25,9c0,2,2,6.3,6,13c21.3,28.7,42.3,60.3,\n63,95c96.7,156.7,172.8,332.5,228.5,527.5c55.7,195,92.8,416.5,111.5,664.5\nc11.3,139.3,17,290.7,17,454c0,28,1.7,43,3.3,45l0,"+(t+9)+"\nc-3,4,-3.3,16.7,-3.3,38c0,162,-5.7,313.7,-17,455c-18.7,248,-55.8,469.3,-111.5,664\nc-55.7,194.7,-131.8,370.3,-228.5,527c-20.7,34.7,-41.7,66.3,-63,95c-2,3.3,-4,7,-6,11\nc0,7.3,5.7,11,17,11c0,0,11,0,11,0c9.3,0,14.3,-0.3,15,-1c5.3,-5.3,10.3,-11,15,-17\nc242.7,-294.7,395.3,-681.7,458,-1161c21.3,-164.7,33.3,-350.7,36,-558\nl0,-"+(t+144)+"c-2,-159.3,-10,-310.7,-24,-454c-53.3,-528,-210,-949.7,\n-470,-1265c-4.7,-6,-9.7,-11.7,-15,-17c-0.7,-0.7,-6.7,-1,-18,-1z";default:throw new Error("Unknown stretchy delimiter.")}}(m,Math.round(1e3*C)),I=new J(m,q),R=(u/1e3).toFixed(3)+"em",H=(N/1e3).toFixed(3)+"em",O=new K([I],{width:R,height:H,viewBox:"0 0 "+u+" "+N}),E=Ke.makeSvgSpan([],[O],n);E.height=N/1e3,E.style.width=R,E.style.height=H,B.push({type:"elem",elem:E})}else{if(B.push(ur(c,p,a)),B.push(dr),null===s){var L=z-f-y+.016;B.push(pr(h,L,n))}else{var D=(z-f-y-w)/2+.016;B.push(pr(h,D,n)),B.push(dr),B.push(ur(s,p,a)),B.push(dr),B.push(pr(h,D,n))}B.push(dr),B.push(ur(o,p,a))}var V=n.havingBaseStyle(x.TEXT),P=Ke.makeVList({positionType:"bottom",positionData:T,children:B},V);return hr(Ke.makeSpan(["delimsizing","mult"],[P],V),x.TEXT,n,i)},br=.08,yr=function(e,t,r,n,a){var i=function(e,t,r){t*=1e3;var n="";switch(e){case"sqrtMain":n=function(e,t){return"M95,"+(622+e+t)+"\nc-2.7,0,-7.17,-2.7,-13.5,-8c-5.8,-5.3,-9.5,-10,-9.5,-14\nc0,-2,0.3,-3.3,1,-4c1.3,-2.7,23.83,-20.7,67.5,-54\nc44.2,-33.3,65.8,-50.3,66.5,-51c1.3,-1.3,3,-2,5,-2c4.7,0,8.7,3.3,12,10\ns173,378,173,378c0.7,0,35.3,-71,104,-213c68.7,-142,137.5,-285,206.5,-429\nc69,-144,104.5,-217.7,106.5,-221\nl"+e/2.075+" -"+e+"\nc5.3,-9.3,12,-14,20,-14\nH400000v"+(40+e)+"H845.2724\ns-225.272,467,-225.272,467s-235,486,-235,486c-2.7,4.7,-9,7,-19,7\nc-6,0,-10,-1,-12,-3s-194,-422,-194,-422s-65,47,-65,47z\nM"+(834+e)+" "+t+"h400000v"+(40+e)+"h-400000z"}(t,M);break;case"sqrtSize1":n=function(e,t){return"M263,"+(601+e+t)+"c0.7,0,18,39.7,52,119\nc34,79.3,68.167,158.7,102.5,238c34.3,79.3,51.8,119.3,52.5,120\nc340,-704.7,510.7,-1060.3,512,-1067\nl"+e/2.084+" -"+e+"\nc4.7,-7.3,11,-11,19,-11\nH40000v"+(40+e)+"H1012.3\ns-271.3,567,-271.3,567c-38.7,80.7,-84,175,-136,283c-52,108,-89.167,185.3,-111.5,232\nc-22.3,46.7,-33.8,70.3,-34.5,71c-4.7,4.7,-12.3,7,-23,7s-12,-1,-12,-1\ns-109,-253,-109,-253c-72.7,-168,-109.3,-252,-110,-252c-10.7,8,-22,16.7,-34,26\nc-22,17.3,-33.3,26,-34,26s-26,-26,-26,-26s76,-59,76,-59s76,-60,76,-60z\nM"+(1001+e)+" "+t+"h400000v"+(40+e)+"h-400000z"}(t,M);break;case"sqrtSize2":n=function(e,t){return"M983 "+(10+e+t)+"\nl"+e/3.13+" -"+e+"\nc4,-6.7,10,-10,18,-10 H400000v"+(40+e)+"\nH1013.1s-83.4,268,-264.1,840c-180.7,572,-277,876.3,-289,913c-4.7,4.7,-12.7,7,-24,7\ns-12,0,-12,0c-1.3,-3.3,-3.7,-11.7,-7,-25c-35.3,-125.3,-106.7,-373.3,-214,-744\nc-10,12,-21,25,-33,39s-32,39,-32,39c-6,-5.3,-15,-14,-27,-26s25,-30,25,-30\nc26.7,-32.7,52,-63,76,-91s52,-60,52,-60s208,722,208,722\nc56,-175.3,126.3,-397.3,211,-666c84.7,-268.7,153.8,-488.2,207.5,-658.5\nc53.7,-170.3,84.5,-266.8,92.5,-289.5z\nM"+(1001+e)+" "+t+"h400000v"+(40+e)+"h-400000z"}(t,M);break;case"sqrtSize3":n=function(e,t){return"M424,"+(2398+e+t)+"\nc-1.3,-0.7,-38.5,-172,-111.5,-514c-73,-342,-109.8,-513.3,-110.5,-514\nc0,-2,-10.7,14.3,-32,49c-4.7,7.3,-9.8,15.7,-15.5,25c-5.7,9.3,-9.8,16,-12.5,20\ns-5,7,-5,7c-4,-3.3,-8.3,-7.7,-13,-13s-13,-13,-13,-13s76,-122,76,-122s77,-121,77,-121\ns209,968,209,968c0,-2,84.7,-361.7,254,-1079c169.3,-717.3,254.7,-1077.7,256,-1081\nl"+e/4.223+" -"+e+"c4,-6.7,10,-10,18,-10 H400000\nv"+(40+e)+"H1014.6\ns-87.3,378.7,-272.6,1166c-185.3,787.3,-279.3,1182.3,-282,1185\nc-2,6,-10,9,-24,9\nc-8,0,-12,-0.7,-12,-2z M"+(1001+e)+" "+t+"\nh400000v"+(40+e)+"h-400000z"}(t,M);break;case"sqrtSize4":n=function(e,t){return"M473,"+(2713+e+t)+"\nc339.3,-1799.3,509.3,-2700,510,-2702 l"+e/5.298+" -"+e+"\nc3.3,-7.3,9.3,-11,18,-11 H400000v"+(40+e)+"H1017.7\ns-90.5,478,-276.2,1466c-185.7,988,-279.5,1483,-281.5,1485c-2,6,-10,9,-24,9\nc-8,0,-12,-0.7,-12,-2c0,-1.3,-5.3,-32,-16,-92c-50.7,-293.3,-119.7,-693.3,-207,-1200\nc0,-1.3,-5.3,8.7,-16,30c-10.7,21.3,-21.3,42.7,-32,64s-16,33,-16,33s-26,-26,-26,-26\ns76,-153,76,-153s77,-151,77,-151c0.7,0.7,35.7,202,105,604c67.3,400.7,102,602.7,104,\n606zM"+(1001+e)+" "+t+"h400000v"+(40+e)+"H1017.7z"}(t,M);break;case"sqrtTall":n=function(e,t,r){return"M702 "+(e+t)+"H400000"+(40+e)+"\nH742v"+(r-54-t-e)+"l-4 4-4 4c-.667.7 -2 1.5-4 2.5s-4.167 1.833-6.5 2.5-5.5 1-9.5 1\nh-12l-28-84c-16.667-52-96.667 -294.333-240-727l-212 -643 -85 170\nc-4-3.333-8.333-7.667-13 -13l-13-13l77-155 77-156c66 199.333 139 419.667\n219 661 l218 661zM702 "+t+"H400000v"+(40+e)+"H742z"}(t,M,r)}return n}(e,n,r),o=new J(e,i),s=new K([o],{width:"400em",height:F(t),viewBox:"0 0 400000 "+r,preserveAspectRatio:"xMinYMin slice"});return Ke.makeSvgSpan(["hide-tail"],[s],a)},xr=["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","\u230a","\u230b","\\lceil","\\rceil","\u2308","\u2309","\\surd"],wr=["\\uparrow","\\downarrow","\\updownarrow","\\Uparrow","\\Downarrow","\\Updownarrow","|","\\|","\\vert","\\Vert","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","\u27ee","\u27ef","\\lmoustache","\\rmoustache","\u23b0","\u23b1"],kr=["<",">","\\langle","\\rangle","/","\\backslash","\\lt","\\gt"],Sr=[0,1.2,1.8,2.4,3],Mr=[{type:"small",style:x.SCRIPTSCRIPT},{type:"small",style:x.SCRIPT},{type:"small",style:x.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4}],zr=[{type:"small",style:x.SCRIPTSCRIPT},{type:"small",style:x.SCRIPT},{type:"small",style:x.TEXT},{type:"stack"}],Ar=[{type:"small",style:x.SCRIPTSCRIPT},{type:"small",style:x.SCRIPT},{type:"small",style:x.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4},{type:"stack"}],Tr=function(e){if("small"===e.type)return"Main-Regular";if("large"===e.type)return"Size"+e.size+"-Regular";if("stack"===e.type)return"Size4-Regular";throw new Error("Add support for delim type '"+e.type+"' here.")},Br=function(e,t,r,n){for(var a=Math.min(2,3-n.style.size);a<r.length&&"stack"!==r[a].type;a++){var i=lr(e,Tr(r[a]),"math"),o=i.height+i.depth;if("small"===r[a].type&&(o*=n.havingBaseStyle(r[a].style).sizeMultiplier),o>t)return r[a]}return r[r.length-1]},Cr=function(e,t,r,n,a,i){var o;"<"===e||"\\lt"===e||"\u27e8"===e?e="\\langle":">"!==e&&"\\gt"!==e&&"\u27e9"!==e||(e="\\rangle"),o=l.contains(kr,e)?Mr:l.contains(xr,e)?Ar:zr;var s=Br(e,t,o,n);return"small"===s.type?function(e,t,r,n,a,i){var o=Ke.makeSymbol(e,"Main-Regular",a,n),s=hr(o,t,n,i);return r&&cr(s,n,t),s}(e,s.style,r,n,a,i):"large"===s.type?mr(e,s.size,r,n,a,i):vr(e,t,r,n,a,i)},Nr={sqrtImage:function(e,t){var r,n,a=t.havingBaseSizing(),i=Br("\\surd",e*a.sizeMultiplier,Ar,a),o=a.sizeMultiplier,s=Math.max(0,t.minRuleThickness-t.fontMetrics().sqrtRuleThickness),l=0,h=0,c=0;return"small"===i.type?(e<1?o=1:e<1.4&&(o=.7),h=(1+s)/o,(r=yr("sqrtMain",l=(1+s+br)/o,c=1e3+1e3*s+80,s,t)).style.minWidth="0.853em",n=.833/o):"large"===i.type?(c=1080*Sr[i.size],h=(Sr[i.size]+s)/o,l=(Sr[i.size]+s+br)/o,(r=yr("sqrtSize"+i.size,l,c,s,t)).style.minWidth="1.02em",n=1/o):(l=e+s+br,h=e+s,c=Math.floor(1e3*e+s)+80,(r=yr("sqrtTall",l,c,s,t)).style.minWidth="0.742em",n=1.056),r.height=h,r.style.height=F(l),{span:r,advanceWidth:n,ruleWidth:(t.fontMetrics().sqrtRuleThickness+s)*o}},sizedDelim:function(e,t,r,a,i){if("<"===e||"\\lt"===e||"\u27e8"===e?e="\\langle":">"!==e&&"\\gt"!==e&&"\u27e9"!==e||(e="\\rangle"),l.contains(xr,e)||l.contains(kr,e))return mr(e,t,!1,r,a,i);if(l.contains(wr,e))return vr(e,Sr[t],!1,r,a,i);throw new n("Illegal delimiter: '"+e+"'")},sizeToMaxHeight:Sr,customSizedDelim:Cr,leftRightDelim:function(e,t,r,n,a,i){var o=n.fontMetrics().axisHeight*n.sizeMultiplier,s=5/n.fontMetrics().ptPerEm,l=Math.max(t-o,r+o),h=Math.max(l/500*901,2*l-s);return Cr(e,h,!0,n,a,i)}},qr={"\\bigl":{mclass:"mopen",size:1},"\\Bigl":{mclass:"mopen",size:2},"\\biggl":{mclass:"mopen",size:3},"\\Biggl":{mclass:"mopen",size:4},"\\bigr":{mclass:"mclose",size:1},"\\Bigr":{mclass:"mclose",size:2},"\\biggr":{mclass:"mclose",size:3},"\\Biggr":{mclass:"mclose",size:4},"\\bigm":{mclass:"mrel",size:1},"\\Bigm":{mclass:"mrel",size:2},"\\biggm":{mclass:"mrel",size:3},"\\Biggm":{mclass:"mrel",size:4},"\\big":{mclass:"mord",size:1},"\\Big":{mclass:"mord",size:2},"\\bigg":{mclass:"mord",size:3},"\\Bigg":{mclass:"mord",size:4}},Ir=["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","\u230a","\u230b","\\lceil","\\rceil","\u2308","\u2309","<",">","\\langle","\u27e8","\\rangle","\u27e9","\\lt","\\gt","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","\u27ee","\u27ef","\\lmoustache","\\rmoustache","\u23b0","\u23b1","/","\\backslash","|","\\vert","\\|","\\Vert","\\uparrow","\\Uparrow","\\downarrow","\\Downarrow","\\updownarrow","\\Updownarrow","."];function Rr(e,t){var r=Xt(e);if(r&&l.contains(Ir,r.text))return r;throw new n(r?"Invalid delimiter '"+r.text+"' after '"+t.funcName+"'":"Invalid delimiter type '"+e.type+"'",e)}function Hr(e){if(!e.body)throw new Error("Bug: The leftright ParseNode wasn't fully parsed.")}ot({type:"delimsizing",names:["\\bigl","\\Bigl","\\biggl","\\Biggl","\\bigr","\\Bigr","\\biggr","\\Biggr","\\bigm","\\Bigm","\\biggm","\\Biggm","\\big","\\Big","\\bigg","\\Bigg"],props:{numArgs:1,argTypes:["primitive"]},handler:function(e,t){var r=Rr(t[0],e);return{type:"delimsizing",mode:e.parser.mode,size:qr[e.funcName].size,mclass:qr[e.funcName].mclass,delim:r.text}},htmlBuilder:function(e,t){return"."===e.delim?Ke.makeSpan([e.mclass]):Nr.sizedDelim(e.delim,e.size,t,e.mode,[e.mclass])},mathmlBuilder:function(e){var t=[];"."!==e.delim&&t.push(Bt(e.delim,e.mode));var r=new Tt.MathNode("mo",t);"mopen"===e.mclass||"mclose"===e.mclass?r.setAttribute("fence","true"):r.setAttribute("fence","false"),r.setAttribute("stretchy","true");var n=F(Nr.sizeToMaxHeight[e.size]);return r.setAttribute("minsize",n),r.setAttribute("maxsize",n),r}}),ot({type:"leftright-right",names:["\\right"],props:{numArgs:1,primitive:!0},handler:function(e,t){var r=e.parser.gullet.macros.get("\\current@color");if(r&&"string"!=typeof r)throw new n("\\current@color set to non-string in \\right");return{type:"leftright-right",mode:e.parser.mode,delim:Rr(t[0],e).text,color:r}}}),ot({type:"leftright",names:["\\left"],props:{numArgs:1,primitive:!0},handler:function(e,t){var r=Rr(t[0],e),n=e.parser;++n.leftrightDepth;var a=n.parseExpression(!1);--n.leftrightDepth,n.expect("\\right",!1);var i=Ut(n.parseFunction(),"leftright-right");return{type:"leftright",mode:n.mode,body:a,left:r.text,right:i.delim,rightColor:i.color}},htmlBuilder:function(e,t){Hr(e);for(var r,n,a=ft(e.body,t,!0,["mopen","mclose"]),i=0,o=0,s=!1,l=0;l<a.length;l++)a[l].isMiddle?s=!0:(i=Math.max(a[l].height,i),o=Math.max(a[l].depth,o));if(i*=t.sizeMultiplier,o*=t.sizeMultiplier,r="."===e.left?xt(t,["mopen"]):Nr.leftRightDelim(e.left,i,o,t,e.mode,["mopen"]),a.unshift(r),s)for(var h=1;h<a.length;h++){var c=a[h].isMiddle;c&&(a[h]=Nr.leftRightDelim(c.delim,i,o,c.options,e.mode,[]))}if("."===e.right)n=xt(t,["mclose"]);else{var m=e.rightColor?t.withColor(e.rightColor):t;n=Nr.leftRightDelim(e.right,i,o,m,e.mode,["mclose"])}return a.push(n),Ke.makeSpan(["minner"],a,t)},mathmlBuilder:function(e,t){Hr(e);var r=qt(e.body,t);if("."!==e.left){var n=new Tt.MathNode("mo",[Bt(e.left,e.mode)]);n.setAttribute("fence","true"),r.unshift(n)}if("."!==e.right){var a=new Tt.MathNode("mo",[Bt(e.right,e.mode)]);a.setAttribute("fence","true"),e.rightColor&&a.setAttribute("mathcolor",e.rightColor),r.push(a)}return Ct(r)}}),ot({type:"middle",names:["\\middle"],props:{numArgs:1,primitive:!0},handler:function(e,t){var r=Rr(t[0],e);if(!e.parser.leftrightDepth)throw new n("\\middle without preceding \\left",r);return{type:"middle",mode:e.parser.mode,delim:r.text}},htmlBuilder:function(e,t){var r;if("."===e.delim)r=xt(t,[]);else{r=Nr.sizedDelim(e.delim,1,t,e.mode,[]);var n={delim:e.delim,options:t};r.isMiddle=n}return r},mathmlBuilder:function(e,t){var r="\\vert"===e.delim||"|"===e.delim?Bt("|","text"):Bt(e.delim,e.mode),n=new Tt.MathNode("mo",[r]);return n.setAttribute("fence","true"),n.setAttribute("lspace","0.05em"),n.setAttribute("rspace","0.05em"),n}});var Or=function(e,t){var r,n,a,i=Ke.wrapFragment(wt(e.body,t),t),o=e.label.slice(1),s=t.sizeMultiplier,h=0,c=l.isCharacterBox(e.body);if("sout"===o)(r=Ke.makeSpan(["stretchy","sout"])).height=t.fontMetrics().defaultRuleThickness/s,h=-.5*t.fontMetrics().xHeight;else if("phase"===o){var m=P({number:.6,unit:"pt"},t),u=P({number:.35,unit:"ex"},t);s/=t.havingBaseSizing().sizeMultiplier;var p=i.height+i.depth+m+u;i.style.paddingLeft=F(p/2+m);var d=Math.floor(1e3*p*s),f="M400000 "+(n=d)+" H0 L"+n/2+" 0 l65 45 L145 "+(n-80)+" H400000z",g=new K([new J("phase",f)],{width:"400em",height:F(d/1e3),viewBox:"0 0 400000 "+d,preserveAspectRatio:"xMinYMin slice"});(r=Ke.makeSvgSpan(["hide-tail"],[g],t)).style.height=F(p),h=i.depth+m+u}else{/cancel/.test(o)?c||i.classes.push("cancel-pad"):"angl"===o?i.classes.push("anglpad"):i.classes.push("boxpad");var v=0,b=0,y=0;/box/.test(o)?(y=Math.max(t.fontMetrics().fboxrule,t.minRuleThickness),b=v=t.fontMetrics().fboxsep+("colorbox"===o?0:y)):"angl"===o?(v=4*(y=Math.max(t.fontMetrics().defaultRuleThickness,t.minRuleThickness)),b=Math.max(0,.25-i.depth)):b=v=c?.2:0,r=Pt(i,o,v,b,t),/fbox|boxed|fcolorbox/.test(o)?(r.style.borderStyle="solid",r.style.borderWidth=F(y)):"angl"===o&&.049!==y&&(r.style.borderTopWidth=F(y),r.style.borderRightWidth=F(y)),h=i.depth+b,e.backgroundColor&&(r.style.backgroundColor=e.backgroundColor,e.borderColor&&(r.style.borderColor=e.borderColor))}if(e.backgroundColor)a=Ke.makeVList({positionType:"individualShift",children:[{type:"elem",elem:r,shift:h},{type:"elem",elem:i,shift:0}]},t);else{var x=/cancel|phase/.test(o)?["svg-align"]:[];a=Ke.makeVList({positionType:"individualShift",children:[{type:"elem",elem:i,shift:0},{type:"elem",elem:r,shift:h,wrapperClasses:x}]},t)}return/cancel/.test(o)&&(a.height=i.height,a.depth=i.depth),/cancel/.test(o)&&!c?Ke.makeSpan(["mord","cancel-lap"],[a],t):Ke.makeSpan(["mord"],[a],t)},Er=function(e,t){var r=0,n=new Tt.MathNode(e.label.indexOf("colorbox")>-1?"mpadded":"menclose",[Rt(e.body,t)]);switch(e.label){case"\\cancel":n.setAttribute("notation","updiagonalstrike");break;case"\\bcancel":n.setAttribute("notation","downdiagonalstrike");break;case"\\phase":n.setAttribute("notation","phasorangle");break;case"\\sout":n.setAttribute("notation","horizontalstrike");break;case"\\fbox":n.setAttribute("notation","box");break;case"\\angl":n.setAttribute("notation","actuarial");break;case"\\fcolorbox":case"\\colorbox":if(r=t.fontMetrics().fboxsep*t.fontMetrics().ptPerEm,n.setAttribute("width","+"+2*r+"pt"),n.setAttribute("height","+"+2*r+"pt"),n.setAttribute("lspace",r+"pt"),n.setAttribute("voffset",r+"pt"),"\\fcolorbox"===e.label){var a=Math.max(t.fontMetrics().fboxrule,t.minRuleThickness);n.setAttribute("style","border: "+a+"em solid "+String(e.borderColor))}break;case"\\xcancel":n.setAttribute("notation","updiagonalstrike downdiagonalstrike")}return e.backgroundColor&&n.setAttribute("mathbackground",e.backgroundColor),n};ot({type:"enclose",names:["\\colorbox"],props:{numArgs:2,allowedInText:!0,argTypes:["color","text"]},handler:function(e,t,r){var n=e.parser,a=e.funcName,i=Ut(t[0],"color-token").color,o=t[1];return{type:"enclose",mode:n.mode,label:a,backgroundColor:i,body:o}},htmlBuilder:Or,mathmlBuilder:Er}),ot({type:"enclose",names:["\\fcolorbox"],props:{numArgs:3,allowedInText:!0,argTypes:["color","color","text"]},handler:function(e,t,r){var n=e.parser,a=e.funcName,i=Ut(t[0],"color-token").color,o=Ut(t[1],"color-token").color,s=t[2];return{type:"enclose",mode:n.mode,label:a,backgroundColor:o,borderColor:i,body:s}},htmlBuilder:Or,mathmlBuilder:Er}),ot({type:"enclose",names:["\\fbox"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!0},handler:function(e,t){return{type:"enclose",mode:e.parser.mode,label:"\\fbox",body:t[0]}}}),ot({type:"enclose",names:["\\cancel","\\bcancel","\\xcancel","\\sout","\\phase"],props:{numArgs:1},handler:function(e,t){var r=e.parser,n=e.funcName,a=t[0];return{type:"enclose",mode:r.mode,label:n,body:a}},htmlBuilder:Or,mathmlBuilder:Er}),ot({type:"enclose",names:["\\angl"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!1},handler:function(e,t){return{type:"enclose",mode:e.parser.mode,label:"\\angl",body:t[0]}}});var Lr={};function Dr(e){for(var t=e.type,r=e.names,n=e.props,a=e.handler,i=e.htmlBuilder,o=e.mathmlBuilder,s={type:t,numArgs:n.numArgs||0,allowedInText:!1,numOptionalArgs:0,handler:a},l=0;l<r.length;++l)Lr[r[l]]=s;i&&(at[t]=i),o&&(it[t]=o)}var Vr={};function Pr(e,t){Vr[e]=t}var Fr=function(){function e(e,t,r){this.lexer=void 0,this.start=void 0,this.end=void 0,this.lexer=e,this.start=t,this.end=r}return e.range=function(t,r){return r?t&&t.loc&&r.loc&&t.loc.lexer===r.loc.lexer?new e(t.loc.lexer,t.loc.start,r.loc.end):null:t&&t.loc},e}(),Gr=function(){function e(e,t){this.text=void 0,this.loc=void 0,this.noexpand=void 0,this.treatAsRelax=void 0,this.text=e,this.loc=t}return e.prototype.range=function(t,r){return new e(r,Fr.range(this,t))},e}();function Ur(e){var t=[];e.consumeSpaces();var r=e.fetch().text;for("\\relax"===r&&(e.consume(),e.consumeSpaces(),r=e.fetch().text);"\\hline"===r||"\\hdashline"===r;)e.consume(),t.push("\\hdashline"===r),e.consumeSpaces(),r=e.fetch().text;return t}var Yr=function(e){if(!e.parser.settings.displayMode)throw new n("{"+e.envName+"} can be used only in display mode.")};function Xr(e){if(-1===e.indexOf("ed"))return-1===e.indexOf("*")}function Wr(e,t,r){var a=t.hskipBeforeAndAfter,i=t.addJot,o=t.cols,s=t.arraystretch,l=t.colSeparationType,h=t.autoTag,c=t.singleRow,m=t.emptySingleRow,u=t.maxNumCols,p=t.leqno;if(e.gullet.beginGroup(),c||e.gullet.macros.set("\\cr","\\\\\\relax"),!s){var d=e.gullet.expandMacroAsText("\\arraystretch");if(null==d)s=1;else if(!(s=parseFloat(d))||s<0)throw new n("Invalid \\arraystretch: "+d)}e.gullet.beginGroup();var f=[],g=[f],v=[],b=[],y=null!=h?[]:void 0;function x(){h&&e.gullet.macros.set("\\@eqnsw","1",!0)}function w(){y&&(e.gullet.macros.get("\\df@tag")?(y.push(e.subparse([new Gr("\\df@tag")])),e.gullet.macros.set("\\df@tag",void 0,!0)):y.push(Boolean(h)&&"1"===e.gullet.macros.get("\\@eqnsw")))}for(x(),b.push(Ur(e));;){var k=e.parseExpression(!1,c?"\\end":"\\\\");e.gullet.endGroup(),e.gullet.beginGroup(),k={type:"ordgroup",mode:e.mode,body:k},r&&(k={type:"styling",mode:e.mode,style:r,body:[k]}),f.push(k);var S=e.fetch().text;if("&"===S){if(u&&f.length===u){if(c||l)throw new n("Too many tab characters: &",e.nextToken);e.settings.reportNonstrict("textEnv","Too few columns specified in the {array} column argument.")}e.consume()}else{if("\\end"===S){w(),1===f.length&&"styling"===k.type&&0===k.body[0].body.length&&(g.length>1||!m)&&g.pop(),b.length<g.length+1&&b.push([]);break}if("\\\\"!==S)throw new n("Expected & or \\\\ or \\cr or \\end",e.nextToken);e.consume();var M=void 0;" "!==e.gullet.future().text&&(M=e.parseSizeGroup(!0)),v.push(M?M.value:null),w(),b.push(Ur(e)),f=[],g.push(f),x()}}return e.gullet.endGroup(),e.gullet.endGroup(),{type:"array",mode:e.mode,addJot:i,arraystretch:s,body:g,cols:o,rowGaps:v,hskipBeforeAndAfter:a,hLinesBeforeRow:b,colSeparationType:l,tags:y,leqno:p}}function _r(e){return"d"===e.slice(0,1)?"display":"text"}var jr=function(e,t){var r,a,i=e.body.length,o=e.hLinesBeforeRow,s=0,h=new Array(i),c=[],m=Math.max(t.fontMetrics().arrayRuleWidth,t.minRuleThickness),u=1/t.fontMetrics().ptPerEm,p=5*u;e.colSeparationType&&"small"===e.colSeparationType&&(p=t.havingStyle(x.SCRIPT).sizeMultiplier/t.sizeMultiplier*.2778);var d="CD"===e.colSeparationType?P({number:3,unit:"ex"},t):12*u,f=3*u,g=e.arraystretch*d,v=.7*g,b=.3*g,y=0;function w(e){for(var t=0;t<e.length;++t)t>0&&(y+=.25),c.push({pos:y,isDashed:e[t]})}for(w(o[0]),r=0;r<e.body.length;++r){var k=e.body[r],S=v,M=b;s<k.length&&(s=k.length);var z=new Array(k.length);for(a=0;a<k.length;++a){var A=wt(k[a],t);M<A.depth&&(M=A.depth),S<A.height&&(S=A.height),z[a]=A}var T=e.rowGaps[r],B=0;T&&(B=P(T,t))>0&&(M<(B+=b)&&(M=B),B=0),e.addJot&&(M+=f),z.height=S,z.depth=M,y+=S,z.pos=y,y+=M+B,h[r]=z,w(o[r+1])}var C,N,q=y/2+t.fontMetrics().axisHeight,I=e.cols||[],R=[],H=[];if(e.tags&&e.tags.some((function(e){return e})))for(r=0;r<i;++r){var O=h[r],E=O.pos-q,L=e.tags[r],D=void 0;(D=!0===L?Ke.makeSpan(["eqn-num"],[],t):!1===L?Ke.makeSpan([],[],t):Ke.makeSpan([],ft(L,t,!0),t)).depth=O.depth,D.height=O.height,H.push({type:"elem",elem:D,shift:E})}for(a=0,N=0;a<s||N<I.length;++a,++N){for(var V=I[N]||{},G=!0;"separator"===V.type;){if(G||((C=Ke.makeSpan(["arraycolsep"],[])).style.width=F(t.fontMetrics().doubleRuleSep),R.push(C)),"|"!==V.separator&&":"!==V.separator)throw new n("Invalid separator type: "+V.separator);var U="|"===V.separator?"solid":"dashed",Y=Ke.makeSpan(["vertical-separator"],[],t);Y.style.height=F(y),Y.style.borderRightWidth=F(m),Y.style.borderRightStyle=U,Y.style.margin="0 "+F(-m/2);var X=y-q;X&&(Y.style.verticalAlign=F(-X)),R.push(Y),V=I[++N]||{},G=!1}if(!(a>=s)){var W=void 0;(a>0||e.hskipBeforeAndAfter)&&0!==(W=l.deflt(V.pregap,p))&&((C=Ke.makeSpan(["arraycolsep"],[])).style.width=F(W),R.push(C));var _=[];for(r=0;r<i;++r){var j=h[r],$=j[a];if($){var Z=j.pos-q;$.depth=j.depth,$.height=j.height,_.push({type:"elem",elem:$,shift:Z})}}_=Ke.makeVList({positionType:"individualShift",children:_},t),_=Ke.makeSpan(["col-align-"+(V.align||"c")],[_]),R.push(_),(a<s-1||e.hskipBeforeAndAfter)&&0!==(W=l.deflt(V.postgap,p))&&((C=Ke.makeSpan(["arraycolsep"],[])).style.width=F(W),R.push(C))}}if(h=Ke.makeSpan(["mtable"],R),c.length>0){for(var K=Ke.makeLineSpan("hline",t,m),J=Ke.makeLineSpan("hdashline",t,m),Q=[{type:"elem",elem:h,shift:0}];c.length>0;){var ee=c.pop(),te=ee.pos-q;ee.isDashed?Q.push({type:"elem",elem:J,shift:te}):Q.push({type:"elem",elem:K,shift:te})}h=Ke.makeVList({positionType:"individualShift",children:Q},t)}if(0===H.length)return Ke.makeSpan(["mord"],[h],t);var re=Ke.makeVList({positionType:"individualShift",children:H},t);return re=Ke.makeSpan(["tag"],[re],t),Ke.makeFragment([h,re])},$r={c:"center ",l:"left ",r:"right "},Zr=function(e,t){for(var r=[],n=new Tt.MathNode("mtd",[],["mtr-glue"]),a=new Tt.MathNode("mtd",[],["mml-eqn-num"]),i=0;i<e.body.length;i++){for(var o=e.body[i],s=[],l=0;l<o.length;l++)s.push(new Tt.MathNode("mtd",[Rt(o[l],t)]));e.tags&&e.tags[i]&&(s.unshift(n),s.push(n),e.leqno?s.unshift(a):s.push(a)),r.push(new Tt.MathNode("mtr",s))}var h=new Tt.MathNode("mtable",r),c=.5===e.arraystretch?.1:.16+e.arraystretch-1+(e.addJot?.09:0);h.setAttribute("rowspacing",F(c));var m="",u="";if(e.cols&&e.cols.length>0){var p=e.cols,d="",f=!1,g=0,v=p.length;"separator"===p[0].type&&(m+="top ",g=1),"separator"===p[p.length-1].type&&(m+="bottom ",v-=1);for(var b=g;b<v;b++)"align"===p[b].type?(u+=$r[p[b].align],f&&(d+="none "),f=!0):"separator"===p[b].type&&f&&(d+="|"===p[b].separator?"solid ":"dashed ",f=!1);h.setAttribute("columnalign",u.trim()),/[sd]/.test(d)&&h.setAttribute("columnlines",d.trim())}if("align"===e.colSeparationType){for(var y=e.cols||[],x="",w=1;w<y.length;w++)x+=w%2?"0em ":"1em ";h.setAttribute("columnspacing",x.trim())}else"alignat"===e.colSeparationType||"gather"===e.colSeparationType?h.setAttribute("columnspacing","0em"):"small"===e.colSeparationType?h.setAttribute("columnspacing","0.2778em"):"CD"===e.colSeparationType?h.setAttribute("columnspacing","0.5em"):h.setAttribute("columnspacing","1em");var k="",S=e.hLinesBeforeRow;m+=S[0].length>0?"left ":"",m+=S[S.length-1].length>0?"right ":"";for(var M=1;M<S.length-1;M++)k+=0===S[M].length?"none ":S[M][0]?"dashed ":"solid ";return/[sd]/.test(k)&&h.setAttribute("rowlines",k.trim()),""!==m&&(h=new Tt.MathNode("menclose",[h])).setAttribute("notation",m.trim()),e.arraystretch&&e.arraystretch<1&&(h=new Tt.MathNode("mstyle",[h])).setAttribute("scriptlevel","1"),h},Kr=function(e,t){-1===e.envName.indexOf("ed")&&Yr(e);var r,a=[],i=e.envName.indexOf("at")>-1?"alignat":"align",o="split"===e.envName,s=Wr(e.parser,{cols:a,addJot:!0,autoTag:o?void 0:Xr(e.envName),emptySingleRow:!0,colSeparationType:i,maxNumCols:o?2:void 0,leqno:e.parser.settings.leqno},"display"),l=0,h={type:"ordgroup",mode:e.mode,body:[]};if(t[0]&&"ordgroup"===t[0].type){for(var c="",m=0;m<t[0].body.length;m++){c+=Ut(t[0].body[m],"textord").text}r=Number(c),l=2*r}var u=!l;s.body.forEach((function(e){for(var t=1;t<e.length;t+=2){var a=Ut(e[t],"styling");Ut(a.body[0],"ordgroup").body.unshift(h)}if(u)l<e.length&&(l=e.length);else{var i=e.length/2;if(r<i)throw new n("Too many math in a row: expected "+r+", but got "+i,e[0])}}));for(var p=0;p<l;++p){var d="r",f=0;p%2==1?d="l":p>0&&u&&(f=1),a[p]={type:"align",align:d,pregap:f,postgap:0}}return s.colSeparationType=u?"align":"alignat",s};Dr({type:"array",names:["array","darray"],props:{numArgs:1},handler:function(e,t){var r=(Xt(t[0])?[t[0]]:Ut(t[0],"ordgroup").body).map((function(e){var t=Yt(e).text;if(-1!=="lcr".indexOf(t))return{type:"align",align:t};if("|"===t)return{type:"separator",separator:"|"};if(":"===t)return{type:"separator",separator:":"};throw new n("Unknown column alignment: "+t,e)})),a={cols:r,hskipBeforeAndAfter:!0,maxNumCols:r.length};return Wr(e.parser,a,_r(e.envName))},htmlBuilder:jr,mathmlBuilder:Zr}),Dr({type:"array",names:["matrix","pmatrix","bmatrix","Bmatrix","vmatrix","Vmatrix","matrix*","pmatrix*","bmatrix*","Bmatrix*","vmatrix*","Vmatrix*"],props:{numArgs:0},handler:function(e){var t={matrix:null,pmatrix:["(",")"],bmatrix:["[","]"],Bmatrix:["\\{","\\}"],vmatrix:["|","|"],Vmatrix:["\\Vert","\\Vert"]}[e.envName.replace("*","")],r="c",a={hskipBeforeAndAfter:!1,cols:[{type:"align",align:r}]};if("*"===e.envName.charAt(e.envName.length-1)){var i=e.parser;if(i.consumeSpaces(),"["===i.fetch().text){if(i.consume(),i.consumeSpaces(),r=i.fetch().text,-1==="lcr".indexOf(r))throw new n("Expected l or c or r",i.nextToken);i.consume(),i.consumeSpaces(),i.expect("]"),i.consume(),a.cols=[{type:"align",align:r}]}}var o=Wr(e.parser,a,_r(e.envName)),s=Math.max.apply(Math,[0].concat(o.body.map((function(e){return e.length}))));return o.cols=new Array(s).fill({type:"align",align:r}),t?{type:"leftright",mode:e.mode,body:[o],left:t[0],right:t[1],rightColor:void 0}:o},htmlBuilder:jr,mathmlBuilder:Zr}),Dr({type:"array",names:["smallmatrix"],props:{numArgs:0},handler:function(e){var t=Wr(e.parser,{arraystretch:.5},"script");return t.colSeparationType="small",t},htmlBuilder:jr,mathmlBuilder:Zr}),Dr({type:"array",names:["subarray"],props:{numArgs:1},handler:function(e,t){var r=(Xt(t[0])?[t[0]]:Ut(t[0],"ordgroup").body).map((function(e){var t=Yt(e).text;if(-1!=="lc".indexOf(t))return{type:"align",align:t};throw new n("Unknown column alignment: "+t,e)}));if(r.length>1)throw new n("{subarray} can contain only one column");var a={cols:r,hskipBeforeAndAfter:!1,arraystretch:.5};if((a=Wr(e.parser,a,"script")).body.length>0&&a.body[0].length>1)throw new n("{subarray} can contain only one column");return a},htmlBuilder:jr,mathmlBuilder:Zr}),Dr({type:"array",names:["cases","dcases","rcases","drcases"],props:{numArgs:0},handler:function(e){var t=Wr(e.parser,{arraystretch:1.2,cols:[{type:"align",align:"l",pregap:0,postgap:1},{type:"align",align:"l",pregap:0,postgap:0}]},_r(e.envName));return{type:"leftright",mode:e.mode,body:[t],left:e.envName.indexOf("r")>-1?".":"\\{",right:e.envName.indexOf("r")>-1?"\\}":".",rightColor:void 0}},htmlBuilder:jr,mathmlBuilder:Zr}),Dr({type:"array",names:["align","align*","aligned","split"],props:{numArgs:0},handler:Kr,htmlBuilder:jr,mathmlBuilder:Zr}),Dr({type:"array",names:["gathered","gather","gather*"],props:{numArgs:0},handler:function(e){l.contains(["gather","gather*"],e.envName)&&Yr(e);var t={cols:[{type:"align",align:"c"}],addJot:!0,colSeparationType:"gather",autoTag:Xr(e.envName),emptySingleRow:!0,leqno:e.parser.settings.leqno};return Wr(e.parser,t,"display")},htmlBuilder:jr,mathmlBuilder:Zr}),Dr({type:"array",names:["alignat","alignat*","alignedat"],props:{numArgs:1},handler:Kr,htmlBuilder:jr,mathmlBuilder:Zr}),Dr({type:"array",names:["equation","equation*"],props:{numArgs:0},handler:function(e){Yr(e);var t={autoTag:Xr(e.envName),emptySingleRow:!0,singleRow:!0,maxNumCols:1,leqno:e.parser.settings.leqno};return Wr(e.parser,t,"display")},htmlBuilder:jr,mathmlBuilder:Zr}),Dr({type:"array",names:["CD"],props:{numArgs:0},handler:function(e){return Yr(e),function(e){var t=[];for(e.gullet.beginGroup(),e.gullet.macros.set("\\cr","\\\\\\relax"),e.gullet.beginGroup();;){t.push(e.parseExpression(!1,"\\\\")),e.gullet.endGroup(),e.gullet.beginGroup();var r=e.fetch().text;if("&"!==r&&"\\\\"!==r){if("\\end"===r){0===t[t.length-1].length&&t.pop();break}throw new n("Expected \\\\ or \\cr or \\end",e.nextToken)}e.consume()}for(var a,i,o=[],s=[o],l=0;l<t.length;l++){for(var h=t[l],c={type:"styling",body:[],mode:"math",style:"display"},m=0;m<h.length;m++)if(tr(h[m])){o.push(c);var u=Yt(h[m+=1]).text,p=new Array(2);if(p[0]={type:"ordgroup",mode:"math",body:[]},p[1]={type:"ordgroup",mode:"math",body:[]},"=|.".indexOf(u)>-1);else{if(!("<>AV".indexOf(u)>-1))throw new n('Expected one of "<>AV=|." after @',h[m]);for(var d=0;d<2;d++){for(var f=!0,g=m+1;g<h.length;g++){if(i=u,("mathord"===(a=h[g]).type||"atom"===a.type)&&a.text===i){f=!1,m=g;break}if(tr(h[g]))throw new n("Missing a "+u+" character to complete a CD arrow.",h[g]);p[d].body.push(h[g])}if(f)throw new n("Missing a "+u+" character to complete a CD arrow.",h[m])}}var v={type:"styling",body:[rr(u,p,e)],mode:"math",style:"display"};o.push(v),c={type:"styling",body:[],mode:"math",style:"display"}}else c.body.push(h[m]);l%2==0?o.push(c):o.shift(),o=[],s.push(o)}return e.gullet.endGroup(),e.gullet.endGroup(),{type:"array",mode:"math",body:s,arraystretch:1,addJot:!0,rowGaps:[null],cols:new Array(s[0].length).fill({type:"align",align:"c",pregap:.25,postgap:.25}),colSeparationType:"CD",hLinesBeforeRow:new Array(s.length+1).fill([])}}(e.parser)},htmlBuilder:jr,mathmlBuilder:Zr}),Pr("\\nonumber","\\gdef\\@eqnsw{0}"),Pr("\\notag","\\nonumber"),ot({type:"text",names:["\\hline","\\hdashline"],props:{numArgs:0,allowedInText:!0,allowedInMath:!0},handler:function(e,t){throw new n(e.funcName+" valid only within array environment")}});var Jr=Lr;ot({type:"environment",names:["\\begin","\\end"],props:{numArgs:1,argTypes:["text"]},handler:function(e,t){var r=e.parser,a=e.funcName,i=t[0];if("ordgroup"!==i.type)throw new n("Invalid environment name",i);for(var o="",s=0;s<i.body.length;++s)o+=Ut(i.body[s],"textord").text;if("\\begin"===a){if(!Jr.hasOwnProperty(o))throw new n("No such environment: "+o,i);var l=Jr[o],h=r.parseArguments("\\begin{"+o+"}",l),c=h.args,m=h.optArgs,u={mode:r.mode,envName:o,parser:r},p=l.handler(u,c,m);r.expect("\\end",!1);var d=r.nextToken,f=Ut(r.parseFunction(),"environment");if(f.name!==o)throw new n("Mismatch: \\begin{"+o+"} matched by \\end{"+f.name+"}",d);return p}return{type:"environment",mode:r.mode,name:o,nameGroup:i}}});var Qr=function(e,t){var r=e.font,n=t.withFont(r);return wt(e.body,n)},en=function(e,t){var r=e.font,n=t.withFont(r);return Rt(e.body,n)},tn={"\\Bbb":"\\mathbb","\\bold":"\\mathbf","\\frak":"\\mathfrak","\\bm":"\\boldsymbol"};ot({type:"font",names:["\\mathrm","\\mathit","\\mathbf","\\mathnormal","\\mathbb","\\mathcal","\\mathfrak","\\mathscr","\\mathsf","\\mathtt","\\Bbb","\\bold","\\frak"],props:{numArgs:1,allowedInArgument:!0},handler:function(e,t){var r=e.parser,n=e.funcName,a=lt(t[0]),i=n;return i in tn&&(i=tn[i]),{type:"font",mode:r.mode,font:i.slice(1),body:a}},htmlBuilder:Qr,mathmlBuilder:en}),ot({type:"mclass",names:["\\boldsymbol","\\bm"],props:{numArgs:1},handler:function(e,t){var r=e.parser,n=t[0],a=l.isCharacterBox(n);return{type:"mclass",mode:r.mode,mclass:Qt(n),body:[{type:"font",mode:r.mode,font:"boldsymbol",body:n}],isCharacterBox:a}}}),ot({type:"font",names:["\\rm","\\sf","\\tt","\\bf","\\it","\\cal"],props:{numArgs:0,allowedInText:!0},handler:function(e,t){var r=e.parser,n=e.funcName,a=e.breakOnTokenText,i=r.mode,o=r.parseExpression(!0,a);return{type:"font",mode:i,font:"math"+n.slice(1),body:{type:"ordgroup",mode:r.mode,body:o}}},htmlBuilder:Qr,mathmlBuilder:en});var rn=function(e,t){var r=t;return"display"===e?r=r.id>=x.SCRIPT.id?r.text():x.DISPLAY:"text"===e&&r.size===x.DISPLAY.size?r=x.TEXT:"script"===e?r=x.SCRIPT:"scriptscript"===e&&(r=x.SCRIPTSCRIPT),r},nn=function(e,t){var r,n=rn(e.size,t.style),a=n.fracNum(),i=n.fracDen();r=t.havingStyle(a);var o=wt(e.numer,r,t);if(e.continued){var s=8.5/t.fontMetrics().ptPerEm,l=3.5/t.fontMetrics().ptPerEm;o.height=o.height<s?s:o.height,o.depth=o.depth<l?l:o.depth}r=t.havingStyle(i);var h,c,m,u,p,d,f,g,v,b,y=wt(e.denom,r,t);if(e.hasBarLine?(e.barSize?(c=P(e.barSize,t),h=Ke.makeLineSpan("frac-line",t,c)):h=Ke.makeLineSpan("frac-line",t),c=h.height,m=h.height):(h=null,c=0,m=t.fontMetrics().defaultRuleThickness),n.size===x.DISPLAY.size||"display"===e.size?(u=t.fontMetrics().num1,p=c>0?3*m:7*m,d=t.fontMetrics().denom1):(c>0?(u=t.fontMetrics().num2,p=m):(u=t.fontMetrics().num3,p=3*m),d=t.fontMetrics().denom2),h){var w=t.fontMetrics().axisHeight;u-o.depth-(w+.5*c)<p&&(u+=p-(u-o.depth-(w+.5*c))),w-.5*c-(y.height-d)<p&&(d+=p-(w-.5*c-(y.height-d)));var k=-(w-.5*c);f=Ke.makeVList({positionType:"individualShift",children:[{type:"elem",elem:y,shift:d},{type:"elem",elem:h,shift:k},{type:"elem",elem:o,shift:-u}]},t)}else{var S=u-o.depth-(y.height-d);S<p&&(u+=.5*(p-S),d+=.5*(p-S)),f=Ke.makeVList({positionType:"individualShift",children:[{type:"elem",elem:y,shift:d},{type:"elem",elem:o,shift:-u}]},t)}return r=t.havingStyle(n),f.height*=r.sizeMultiplier/t.sizeMultiplier,f.depth*=r.sizeMultiplier/t.sizeMultiplier,g=n.size===x.DISPLAY.size?t.fontMetrics().delim1:n.size===x.SCRIPTSCRIPT.size?t.havingStyle(x.SCRIPT).fontMetrics().delim2:t.fontMetrics().delim2,v=null==e.leftDelim?xt(t,["mopen"]):Nr.customSizedDelim(e.leftDelim,g,!0,t.havingStyle(n),e.mode,["mopen"]),b=e.continued?Ke.makeSpan([]):null==e.rightDelim?xt(t,["mclose"]):Nr.customSizedDelim(e.rightDelim,g,!0,t.havingStyle(n),e.mode,["mclose"]),Ke.makeSpan(["mord"].concat(r.sizingClasses(t)),[v,Ke.makeSpan(["mfrac"],[f]),b],t)},an=function(e,t){var r=new Tt.MathNode("mfrac",[Rt(e.numer,t),Rt(e.denom,t)]);if(e.hasBarLine){if(e.barSize){var n=P(e.barSize,t);r.setAttribute("linethickness",F(n))}}else r.setAttribute("linethickness","0px");var a=rn(e.size,t.style);if(a.size!==t.style.size){r=new Tt.MathNode("mstyle",[r]);var i=a.size===x.DISPLAY.size?"true":"false";r.setAttribute("displaystyle",i),r.setAttribute("scriptlevel","0")}if(null!=e.leftDelim||null!=e.rightDelim){var o=[];if(null!=e.leftDelim){var s=new Tt.MathNode("mo",[new Tt.TextNode(e.leftDelim.replace("\\",""))]);s.setAttribute("fence","true"),o.push(s)}if(o.push(r),null!=e.rightDelim){var l=new Tt.MathNode("mo",[new Tt.TextNode(e.rightDelim.replace("\\",""))]);l.setAttribute("fence","true"),o.push(l)}return Ct(o)}return r};ot({type:"genfrac",names:["\\dfrac","\\frac","\\tfrac","\\dbinom","\\binom","\\tbinom","\\\\atopfrac","\\\\bracefrac","\\\\brackfrac"],props:{numArgs:2,allowedInArgument:!0},handler:function(e,t){var r,n=e.parser,a=e.funcName,i=t[0],o=t[1],s=null,l=null,h="auto";switch(a){case"\\dfrac":case"\\frac":case"\\tfrac":r=!0;break;case"\\\\atopfrac":r=!1;break;case"\\dbinom":case"\\binom":case"\\tbinom":r=!1,s="(",l=")";break;case"\\\\bracefrac":r=!1,s="\\{",l="\\}";break;case"\\\\brackfrac":r=!1,s="[",l="]";break;default:throw new Error("Unrecognized genfrac command")}switch(a){case"\\dfrac":case"\\dbinom":h="display";break;case"\\tfrac":case"\\tbinom":h="text"}return{type:"genfrac",mode:n.mode,continued:!1,numer:i,denom:o,hasBarLine:r,leftDelim:s,rightDelim:l,size:h,barSize:null}},htmlBuilder:nn,mathmlBuilder:an}),ot({type:"genfrac",names:["\\cfrac"],props:{numArgs:2},handler:function(e,t){var r=e.parser,n=(e.funcName,t[0]),a=t[1];return{type:"genfrac",mode:r.mode,continued:!0,numer:n,denom:a,hasBarLine:!0,leftDelim:null,rightDelim:null,size:"display",barSize:null}}}),ot({type:"infix",names:["\\over","\\choose","\\atop","\\brace","\\brack"],props:{numArgs:0,infix:!0},handler:function(e){var t,r=e.parser,n=e.funcName,a=e.token;switch(n){case"\\over":t="\\frac";break;case"\\choose":t="\\binom";break;case"\\atop":t="\\\\atopfrac";break;case"\\brace":t="\\\\bracefrac";break;case"\\brack":t="\\\\brackfrac";break;default:throw new Error("Unrecognized infix genfrac command")}return{type:"infix",mode:r.mode,replaceWith:t,token:a}}});var on=["display","text","script","scriptscript"],sn=function(e){var t=null;return e.length>0&&(t="."===(t=e)?null:t),t};ot({type:"genfrac",names:["\\genfrac"],props:{numArgs:6,allowedInArgument:!0,argTypes:["math","math","size","text","math","math"]},handler:function(e,t){var r,n=e.parser,a=t[4],i=t[5],o=lt(t[0]),s="atom"===o.type&&"open"===o.family?sn(o.text):null,l=lt(t[1]),h="atom"===l.type&&"close"===l.family?sn(l.text):null,c=Ut(t[2],"size"),m=null;r=!!c.isBlank||(m=c.value).number>0;var u="auto",p=t[3];if("ordgroup"===p.type){if(p.body.length>0){var d=Ut(p.body[0],"textord");u=on[Number(d.text)]}}else p=Ut(p,"textord"),u=on[Number(p.text)];return{type:"genfrac",mode:n.mode,numer:a,denom:i,continued:!1,hasBarLine:r,barSize:m,leftDelim:s,rightDelim:h,size:u}},htmlBuilder:nn,mathmlBuilder:an}),ot({type:"infix",names:["\\above"],props:{numArgs:1,argTypes:["size"],infix:!0},handler:function(e,t){var r=e.parser,n=(e.funcName,e.token);return{type:"infix",mode:r.mode,replaceWith:"\\\\abovefrac",size:Ut(t[0],"size").value,token:n}}}),ot({type:"genfrac",names:["\\\\abovefrac"],props:{numArgs:3,argTypes:["math","size","math"]},handler:function(e,t){var r=e.parser,n=(e.funcName,t[0]),a=function(e){if(!e)throw new Error("Expected non-null, but got "+String(e));return e}(Ut(t[1],"infix").size),i=t[2],o=a.number>0;return{type:"genfrac",mode:r.mode,numer:n,denom:i,continued:!1,hasBarLine:o,barSize:a,leftDelim:null,rightDelim:null,size:"auto"}},htmlBuilder:nn,mathmlBuilder:an});var ln=function(e,t){var r,n,a=t.style;"supsub"===e.type?(r=e.sup?wt(e.sup,t.havingStyle(a.sup()),t):wt(e.sub,t.havingStyle(a.sub()),t),n=Ut(e.base,"horizBrace")):n=Ut(e,"horizBrace");var i,o=wt(n.base,t.havingBaseStyle(x.DISPLAY)),s=Gt(n,t);if(n.isOver?(i=Ke.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:o},{type:"kern",size:.1},{type:"elem",elem:s}]},t)).children[0].children[0].children[1].classes.push("svg-align"):(i=Ke.makeVList({positionType:"bottom",positionData:o.depth+.1+s.height,children:[{type:"elem",elem:s},{type:"kern",size:.1},{type:"elem",elem:o}]},t)).children[0].children[0].children[0].classes.push("svg-align"),r){var l=Ke.makeSpan(["mord",n.isOver?"mover":"munder"],[i],t);i=n.isOver?Ke.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:l},{type:"kern",size:.2},{type:"elem",elem:r}]},t):Ke.makeVList({positionType:"bottom",positionData:l.depth+.2+r.height+r.depth,children:[{type:"elem",elem:r},{type:"kern",size:.2},{type:"elem",elem:l}]},t)}return Ke.makeSpan(["mord",n.isOver?"mover":"munder"],[i],t)};ot({type:"horizBrace",names:["\\overbrace","\\underbrace"],props:{numArgs:1},handler:function(e,t){var r=e.parser,n=e.funcName;return{type:"horizBrace",mode:r.mode,label:n,isOver:/^\\over/.test(n),base:t[0]}},htmlBuilder:ln,mathmlBuilder:function(e,t){var r=Ft(e.label);return new Tt.MathNode(e.isOver?"mover":"munder",[Rt(e.base,t),r])}}),ot({type:"href",names:["\\href"],props:{numArgs:2,argTypes:["url","original"],allowedInText:!0},handler:function(e,t){var r=e.parser,n=t[1],a=Ut(t[0],"url").url;return r.settings.isTrusted({command:"\\href",url:a})?{type:"href",mode:r.mode,href:a,body:ht(n)}:r.formatUnsupportedCmd("\\href")},htmlBuilder:function(e,t){var r=ft(e.body,t,!1);return Ke.makeAnchor(e.href,[],r,t)},mathmlBuilder:function(e,t){var r=It(e.body,t);return r instanceof zt||(r=new zt("mrow",[r])),r.setAttribute("href",e.href),r}}),ot({type:"href",names:["\\url"],props:{numArgs:1,argTypes:["url"],allowedInText:!0},handler:function(e,t){var r=e.parser,n=Ut(t[0],"url").url;if(!r.settings.isTrusted({command:"\\url",url:n}))return r.formatUnsupportedCmd("\\url");for(var a=[],i=0;i<n.length;i++){var o=n[i];"~"===o&&(o="\\textasciitilde"),a.push({type:"textord",mode:"text",text:o})}var s={type:"text",mode:r.mode,font:"\\texttt",body:a};return{type:"href",mode:r.mode,href:n,body:ht(s)}}}),ot({type:"hbox",names:["\\hbox"],props:{numArgs:1,argTypes:["text"],allowedInText:!0,primitive:!0},handler:function(e,t){return{type:"hbox",mode:e.parser.mode,body:ht(t[0])}},htmlBuilder:function(e,t){var r=ft(e.body,t,!1);return Ke.makeFragment(r)},mathmlBuilder:function(e,t){return new Tt.MathNode("mrow",qt(e.body,t))}}),ot({type:"html",names:["\\htmlClass","\\htmlId","\\htmlStyle","\\htmlData"],props:{numArgs:2,argTypes:["raw","original"],allowedInText:!0},handler:function(e,t){var r,a=e.parser,i=e.funcName,o=(e.token,Ut(t[0],"raw").string),s=t[1];a.settings.strict&&a.settings.reportNonstrict("htmlExtension","HTML extension is disabled on strict mode");var l={};switch(i){case"\\htmlClass":l.class=o,r={command:"\\htmlClass",class:o};break;case"\\htmlId":l.id=o,r={command:"\\htmlId",id:o};break;case"\\htmlStyle":l.style=o,r={command:"\\htmlStyle",style:o};break;case"\\htmlData":for(var h=o.split(","),c=0;c<h.length;c++){var m=h[c].split("=");if(2!==m.length)throw new n("Error parsing key-value for \\htmlData");l["data-"+m[0].trim()]=m[1].trim()}r={command:"\\htmlData",attributes:l};break;default:throw new Error("Unrecognized html command")}return a.settings.isTrusted(r)?{type:"html",mode:a.mode,attributes:l,body:ht(s)}:a.formatUnsupportedCmd(i)},htmlBuilder:function(e,t){var r=ft(e.body,t,!1),n=["enclosing"];e.attributes.class&&n.push.apply(n,e.attributes.class.trim().split(/\s+/));var a=Ke.makeSpan(n,r,t);for(var i in e.attributes)"class"!==i&&e.attributes.hasOwnProperty(i)&&a.setAttribute(i,e.attributes[i]);return a},mathmlBuilder:function(e,t){return It(e.body,t)}}),ot({type:"htmlmathml",names:["\\html@mathml"],props:{numArgs:2,allowedInText:!0},handler:function(e,t){return{type:"htmlmathml",mode:e.parser.mode,html:ht(t[0]),mathml:ht(t[1])}},htmlBuilder:function(e,t){var r=ft(e.html,t,!1);return Ke.makeFragment(r)},mathmlBuilder:function(e,t){return It(e.mathml,t)}});var hn=function(e){if(/^[-+]? *(\d+(\.\d*)?|\.\d+)$/.test(e))return{number:+e,unit:"bp"};var t=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(e);if(!t)throw new n("Invalid size: '"+e+"' in \\includegraphics");var r={number:+(t[1]+t[2]),unit:t[3]};if(!V(r))throw new n("Invalid unit: '"+r.unit+"' in \\includegraphics.");return r};ot({type:"includegraphics",names:["\\includegraphics"],props:{numArgs:1,numOptionalArgs:1,argTypes:["raw","url"],allowedInText:!1},handler:function(e,t,r){var a=e.parser,i={number:0,unit:"em"},o={number:.9,unit:"em"},s={number:0,unit:"em"},l="";if(r[0])for(var h=Ut(r[0],"raw").string.split(","),c=0;c<h.length;c++){var m=h[c].split("=");if(2===m.length){var u=m[1].trim();switch(m[0].trim()){case"alt":l=u;break;case"width":i=hn(u);break;case"height":o=hn(u);break;case"totalheight":s=hn(u);break;default:throw new n("Invalid key: '"+m[0]+"' in \\includegraphics.")}}}var p=Ut(t[0],"url").url;return""===l&&(l=(l=(l=p).replace(/^.*[\\/]/,"")).substring(0,l.lastIndexOf("."))),a.settings.isTrusted({command:"\\includegraphics",url:p})?{type:"includegraphics",mode:a.mode,alt:l,width:i,height:o,totalheight:s,src:p}:a.formatUnsupportedCmd("\\includegraphics")},htmlBuilder:function(e,t){var r=P(e.height,t),n=0;e.totalheight.number>0&&(n=P(e.totalheight,t)-r);var a=0;e.width.number>0&&(a=P(e.width,t));var i={height:F(r+n)};a>0&&(i.width=F(a)),n>0&&(i.verticalAlign=F(-n));var o=new j(e.src,e.alt,i);return o.height=r,o.depth=n,o},mathmlBuilder:function(e,t){var r=new Tt.MathNode("mglyph",[]);r.setAttribute("alt",e.alt);var n=P(e.height,t),a=0;if(e.totalheight.number>0&&(a=P(e.totalheight,t)-n,r.setAttribute("valign",F(-a))),r.setAttribute("height",F(n+a)),e.width.number>0){var i=P(e.width,t);r.setAttribute("width",F(i))}return r.setAttribute("src",e.src),r}}),ot({type:"kern",names:["\\kern","\\mkern","\\hskip","\\mskip"],props:{numArgs:1,argTypes:["size"],primitive:!0,allowedInText:!0},handler:function(e,t){var r=e.parser,n=e.funcName,a=Ut(t[0],"size");if(r.settings.strict){var i="m"===n[1],o="mu"===a.value.unit;i?(o||r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" supports only mu units, not "+a.value.unit+" units"),"math"!==r.mode&&r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" works only in math mode")):o&&r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" doesn't support mu units")}return{type:"kern",mode:r.mode,dimension:a.value}},htmlBuilder:function(e,t){return Ke.makeGlue(e.dimension,t)},mathmlBuilder:function(e,t){var r=P(e.dimension,t);return new Tt.SpaceNode(r)}}),ot({type:"lap",names:["\\mathllap","\\mathrlap","\\mathclap"],props:{numArgs:1,allowedInText:!0},handler:function(e,t){var r=e.parser,n=e.funcName,a=t[0];return{type:"lap",mode:r.mode,alignment:n.slice(5),body:a}},htmlBuilder:function(e,t){var r;"clap"===e.alignment?(r=Ke.makeSpan([],[wt(e.body,t)]),r=Ke.makeSpan(["inner"],[r],t)):r=Ke.makeSpan(["inner"],[wt(e.body,t)]);var n=Ke.makeSpan(["fix"],[]),a=Ke.makeSpan([e.alignment],[r,n],t),i=Ke.makeSpan(["strut"]);return i.style.height=F(a.height+a.depth),a.depth&&(i.style.verticalAlign=F(-a.depth)),a.children.unshift(i),a=Ke.makeSpan(["thinbox"],[a],t),Ke.makeSpan(["mord","vbox"],[a],t)},mathmlBuilder:function(e,t){var r=new Tt.MathNode("mpadded",[Rt(e.body,t)]);if("rlap"!==e.alignment){var n="llap"===e.alignment?"-1":"-0.5";r.setAttribute("lspace",n+"width")}return r.setAttribute("width","0px"),r}}),ot({type:"styling",names:["\\(","$"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler:function(e,t){var r=e.funcName,n=e.parser,a=n.mode;n.switchMode("math");var i="\\("===r?"\\)":"$",o=n.parseExpression(!1,i);return n.expect(i),n.switchMode(a),{type:"styling",mode:n.mode,style:"text",body:o}}}),ot({type:"text",names:["\\)","\\]"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler:function(e,t){throw new n("Mismatched "+e.funcName)}});var cn=function(e,t){switch(t.style.size){case x.DISPLAY.size:return e.display;case x.TEXT.size:return e.text;case x.SCRIPT.size:return e.script;case x.SCRIPTSCRIPT.size:return e.scriptscript;default:return e.text}};ot({type:"mathchoice",names:["\\mathchoice"],props:{numArgs:4,primitive:!0},handler:function(e,t){return{type:"mathchoice",mode:e.parser.mode,display:ht(t[0]),text:ht(t[1]),script:ht(t[2]),scriptscript:ht(t[3])}},htmlBuilder:function(e,t){var r=cn(e,t),n=ft(r,t,!1);return Ke.makeFragment(n)},mathmlBuilder:function(e,t){var r=cn(e,t);return It(r,t)}});var mn=function(e,t,r,n,a,i,o){e=Ke.makeSpan([],[e]);var s,h,c,m=r&&l.isCharacterBox(r);if(t){var u=wt(t,n.havingStyle(a.sup()),n);h={elem:u,kern:Math.max(n.fontMetrics().bigOpSpacing1,n.fontMetrics().bigOpSpacing3-u.depth)}}if(r){var p=wt(r,n.havingStyle(a.sub()),n);s={elem:p,kern:Math.max(n.fontMetrics().bigOpSpacing2,n.fontMetrics().bigOpSpacing4-p.height)}}if(h&&s){var d=n.fontMetrics().bigOpSpacing5+s.elem.height+s.elem.depth+s.kern+e.depth+o;c=Ke.makeVList({positionType:"bottom",positionData:d,children:[{type:"kern",size:n.fontMetrics().bigOpSpacing5},{type:"elem",elem:s.elem,marginLeft:F(-i)},{type:"kern",size:s.kern},{type:"elem",elem:e},{type:"kern",size:h.kern},{type:"elem",elem:h.elem,marginLeft:F(i)},{type:"kern",size:n.fontMetrics().bigOpSpacing5}]},n)}else if(s){var f=e.height-o;c=Ke.makeVList({positionType:"top",positionData:f,children:[{type:"kern",size:n.fontMetrics().bigOpSpacing5},{type:"elem",elem:s.elem,marginLeft:F(-i)},{type:"kern",size:s.kern},{type:"elem",elem:e}]},n)}else{if(!h)return e;var g=e.depth+o;c=Ke.makeVList({positionType:"bottom",positionData:g,children:[{type:"elem",elem:e},{type:"kern",size:h.kern},{type:"elem",elem:h.elem,marginLeft:F(i)},{type:"kern",size:n.fontMetrics().bigOpSpacing5}]},n)}var v=[c];if(s&&0!==i&&!m){var b=Ke.makeSpan(["mspace"],[],n);b.style.marginRight=F(i),v.unshift(b)}return Ke.makeSpan(["mop","op-limits"],v,n)},un=["\\smallint"],pn=function(e,t){var r,n,a,i=!1;"supsub"===e.type?(r=e.sup,n=e.sub,a=Ut(e.base,"op"),i=!0):a=Ut(e,"op");var o,s=t.style,h=!1;if(s.size===x.DISPLAY.size&&a.symbol&&!l.contains(un,a.name)&&(h=!0),a.symbol){var c=h?"Size2-Regular":"Size1-Regular",m="";if("\\oiint"!==a.name&&"\\oiiint"!==a.name||(m=a.name.slice(1),a.name="oiint"===m?"\\iint":"\\iiint"),o=Ke.makeSymbol(a.name,c,"math",t,["mop","op-symbol",h?"large-op":"small-op"]),m.length>0){var u=o.italic,p=Ke.staticSvg(m+"Size"+(h?"2":"1"),t);o=Ke.makeVList({positionType:"individualShift",children:[{type:"elem",elem:o,shift:0},{type:"elem",elem:p,shift:h?.08:0}]},t),a.name="\\"+m,o.classes.unshift("mop"),o.italic=u}}else if(a.body){var d=ft(a.body,t,!0);1===d.length&&d[0]instanceof Z?(o=d[0]).classes[0]="mop":o=Ke.makeSpan(["mop"],d,t)}else{for(var f=[],g=1;g<a.name.length;g++)f.push(Ke.mathsym(a.name[g],a.mode,t));o=Ke.makeSpan(["mop"],f,t)}var v=0,b=0;return(o instanceof Z||"\\oiint"===a.name||"\\oiiint"===a.name)&&!a.suppressBaseShift&&(v=(o.height-o.depth)/2-t.fontMetrics().axisHeight,b=o.italic),i?mn(o,r,n,t,s,b,v):(v&&(o.style.position="relative",o.style.top=F(v)),o)},dn=function(e,t){var r;if(e.symbol)r=new zt("mo",[Bt(e.name,e.mode)]),l.contains(un,e.name)&&r.setAttribute("largeop","false");else if(e.body)r=new zt("mo",qt(e.body,t));else{r=new zt("mi",[new At(e.name.slice(1))]);var n=new zt("mo",[Bt("\u2061","text")]);r=e.parentIsSupSub?new zt("mrow",[r,n]):Mt([r,n])}return r},fn={"\u220f":"\\prod","\u2210":"\\coprod","\u2211":"\\sum","\u22c0":"\\bigwedge","\u22c1":"\\bigvee","\u22c2":"\\bigcap","\u22c3":"\\bigcup","\u2a00":"\\bigodot","\u2a01":"\\bigoplus","\u2a02":"\\bigotimes","\u2a04":"\\biguplus","\u2a06":"\\bigsqcup"};ot({type:"op",names:["\\coprod","\\bigvee","\\bigwedge","\\biguplus","\\bigcap","\\bigcup","\\intop","\\prod","\\sum","\\bigotimes","\\bigoplus","\\bigodot","\\bigsqcup","\\smallint","\u220f","\u2210","\u2211","\u22c0","\u22c1","\u22c2","\u22c3","\u2a00","\u2a01","\u2a02","\u2a04","\u2a06"],props:{numArgs:0},handler:function(e,t){var r=e.parser,n=e.funcName;return 1===n.length&&(n=fn[n]),{type:"op",mode:r.mode,limits:!0,parentIsSupSub:!1,symbol:!0,name:n}},htmlBuilder:pn,mathmlBuilder:dn}),ot({type:"op",names:["\\mathop"],props:{numArgs:1,primitive:!0},handler:function(e,t){var r=e.parser,n=t[0];return{type:"op",mode:r.mode,limits:!1,parentIsSupSub:!1,symbol:!1,body:ht(n)}},htmlBuilder:pn,mathmlBuilder:dn});var gn={"\u222b":"\\int","\u222c":"\\iint","\u222d":"\\iiint","\u222e":"\\oint","\u222f":"\\oiint","\u2230":"\\oiiint"};ot({type:"op",names:["\\arcsin","\\arccos","\\arctan","\\arctg","\\arcctg","\\arg","\\ch","\\cos","\\cosec","\\cosh","\\cot","\\cotg","\\coth","\\csc","\\ctg","\\cth","\\deg","\\dim","\\exp","\\hom","\\ker","\\lg","\\ln","\\log","\\sec","\\sin","\\sinh","\\sh","\\tan","\\tanh","\\tg","\\th"],props:{numArgs:0},handler:function(e){var t=e.parser,r=e.funcName;return{type:"op",mode:t.mode,limits:!1,parentIsSupSub:!1,symbol:!1,name:r}},htmlBuilder:pn,mathmlBuilder:dn}),ot({type:"op",names:["\\det","\\gcd","\\inf","\\lim","\\max","\\min","\\Pr","\\sup"],props:{numArgs:0},handler:function(e){var t=e.parser,r=e.funcName;return{type:"op",mode:t.mode,limits:!0,parentIsSupSub:!1,symbol:!1,name:r}},htmlBuilder:pn,mathmlBuilder:dn}),ot({type:"op",names:["\\int","\\iint","\\iiint","\\oint","\\oiint","\\oiiint","\u222b","\u222c","\u222d","\u222e","\u222f","\u2230"],props:{numArgs:0},handler:function(e){var t=e.parser,r=e.funcName;return 1===r.length&&(r=gn[r]),{type:"op",mode:t.mode,limits:!1,parentIsSupSub:!1,symbol:!0,name:r}},htmlBuilder:pn,mathmlBuilder:dn});var vn=function(e,t){var r,n,a,i,o=!1;if("supsub"===e.type?(r=e.sup,n=e.sub,a=Ut(e.base,"operatorname"),o=!0):a=Ut(e,"operatorname"),a.body.length>0){for(var s=a.body.map((function(e){var t=e.text;return"string"==typeof t?{type:"textord",mode:e.mode,text:t}:e})),l=ft(s,t.withFont("mathrm"),!0),h=0;h<l.length;h++){var c=l[h];c instanceof Z&&(c.text=c.text.replace(/\u2212/,"-").replace(/\u2217/,"*"))}i=Ke.makeSpan(["mop"],l,t)}else i=Ke.makeSpan(["mop"],[],t);return o?mn(i,r,n,t,t.style,0,0):i};function bn(e,t,r){for(var n=ft(e,t,!1),a=t.sizeMultiplier/r.sizeMultiplier,i=0;i<n.length;i++){var o=n[i].classes.indexOf("sizing");o<0?Array.prototype.push.apply(n[i].classes,t.sizingClasses(r)):n[i].classes[o+1]==="reset-size"+t.size&&(n[i].classes[o+1]="reset-size"+r.size),n[i].height*=a,n[i].depth*=a}return Ke.makeFragment(n)}ot({type:"operatorname",names:["\\operatorname@","\\operatornamewithlimits"],props:{numArgs:1},handler:function(e,t){var r=e.parser,n=e.funcName,a=t[0];return{type:"operatorname",mode:r.mode,body:ht(a),alwaysHandleSupSub:"\\operatornamewithlimits"===n,limits:!1,parentIsSupSub:!1}},htmlBuilder:vn,mathmlBuilder:function(e,t){for(var r=qt(e.body,t.withFont("mathrm")),n=!0,a=0;a<r.length;a++){var i=r[a];if(i instanceof Tt.SpaceNode);else if(i instanceof Tt.MathNode)switch(i.type){case"mi":case"mn":case"ms":case"mspace":case"mtext":break;case"mo":var o=i.children[0];1===i.children.length&&o instanceof Tt.TextNode?o.text=o.text.replace(/\u2212/,"-").replace(/\u2217/,"*"):n=!1;break;default:n=!1}else n=!1}if(n){var s=r.map((function(e){return e.toText()})).join("");r=[new Tt.TextNode(s)]}var l=new Tt.MathNode("mi",r);l.setAttribute("mathvariant","normal");var h=new Tt.MathNode("mo",[Bt("\u2061","text")]);return e.parentIsSupSub?new Tt.MathNode("mrow",[l,h]):Tt.newDocumentFragment([l,h])}}),Pr("\\operatorname","\\@ifstar\\operatornamewithlimits\\operatorname@"),st({type:"ordgroup",htmlBuilder:function(e,t){return e.semisimple?Ke.makeFragment(ft(e.body,t,!1)):Ke.makeSpan(["mord"],ft(e.body,t,!0),t)},mathmlBuilder:function(e,t){return It(e.body,t,!0)}}),ot({type:"overline",names:["\\overline"],props:{numArgs:1},handler:function(e,t){var r=e.parser,n=t[0];return{type:"overline",mode:r.mode,body:n}},htmlBuilder:function(e,t){var r=wt(e.body,t.havingCrampedStyle()),n=Ke.makeLineSpan("overline-line",t),a=t.fontMetrics().defaultRuleThickness,i=Ke.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:r},{type:"kern",size:3*a},{type:"elem",elem:n},{type:"kern",size:a}]},t);return Ke.makeSpan(["mord","overline"],[i],t)},mathmlBuilder:function(e,t){var r=new Tt.MathNode("mo",[new Tt.TextNode("\u203e")]);r.setAttribute("stretchy","true");var n=new Tt.MathNode("mover",[Rt(e.body,t),r]);return n.setAttribute("accent","true"),n}}),ot({type:"phantom",names:["\\phantom"],props:{numArgs:1,allowedInText:!0},handler:function(e,t){var r=e.parser,n=t[0];return{type:"phantom",mode:r.mode,body:ht(n)}},htmlBuilder:function(e,t){var r=ft(e.body,t.withPhantom(),!1);return Ke.makeFragment(r)},mathmlBuilder:function(e,t){var r=qt(e.body,t);return new Tt.MathNode("mphantom",r)}}),ot({type:"hphantom",names:["\\hphantom"],props:{numArgs:1,allowedInText:!0},handler:function(e,t){var r=e.parser,n=t[0];return{type:"hphantom",mode:r.mode,body:n}},htmlBuilder:function(e,t){var r=Ke.makeSpan([],[wt(e.body,t.withPhantom())]);if(r.height=0,r.depth=0,r.children)for(var n=0;n<r.children.length;n++)r.children[n].height=0,r.children[n].depth=0;return r=Ke.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:r}]},t),Ke.makeSpan(["mord"],[r],t)},mathmlBuilder:function(e,t){var r=qt(ht(e.body),t),n=new Tt.MathNode("mphantom",r),a=new Tt.MathNode("mpadded",[n]);return a.setAttribute("height","0px"),a.setAttribute("depth","0px"),a}}),ot({type:"vphantom",names:["\\vphantom"],props:{numArgs:1,allowedInText:!0},handler:function(e,t){var r=e.parser,n=t[0];return{type:"vphantom",mode:r.mode,body:n}},htmlBuilder:function(e,t){var r=Ke.makeSpan(["inner"],[wt(e.body,t.withPhantom())]),n=Ke.makeSpan(["fix"],[]);return Ke.makeSpan(["mord","rlap"],[r,n],t)},mathmlBuilder:function(e,t){var r=qt(ht(e.body),t),n=new Tt.MathNode("mphantom",r),a=new Tt.MathNode("mpadded",[n]);return a.setAttribute("width","0px"),a}}),ot({type:"raisebox",names:["\\raisebox"],props:{numArgs:2,argTypes:["size","hbox"],allowedInText:!0},handler:function(e,t){var r=e.parser,n=Ut(t[0],"size").value,a=t[1];return{type:"raisebox",mode:r.mode,dy:n,body:a}},htmlBuilder:function(e,t){var r=wt(e.body,t),n=P(e.dy,t);return Ke.makeVList({positionType:"shift",positionData:-n,children:[{type:"elem",elem:r}]},t)},mathmlBuilder:function(e,t){var r=new Tt.MathNode("mpadded",[Rt(e.body,t)]),n=e.dy.number+e.dy.unit;return r.setAttribute("voffset",n),r}}),ot({type:"internal",names:["\\relax"],props:{numArgs:0,allowedInText:!0},handler:function(e){return{type:"internal",mode:e.parser.mode}}}),ot({type:"rule",names:["\\rule"],props:{numArgs:2,numOptionalArgs:1,argTypes:["size","size","size"]},handler:function(e,t,r){var n=e.parser,a=r[0],i=Ut(t[0],"size"),o=Ut(t[1],"size");return{type:"rule",mode:n.mode,shift:a&&Ut(a,"size").value,width:i.value,height:o.value}},htmlBuilder:function(e,t){var r=Ke.makeSpan(["mord","rule"],[],t),n=P(e.width,t),a=P(e.height,t),i=e.shift?P(e.shift,t):0;return r.style.borderRightWidth=F(n),r.style.borderTopWidth=F(a),r.style.bottom=F(i),r.width=n,r.height=a+i,r.depth=-i,r.maxFontSize=1.125*a*t.sizeMultiplier,r},mathmlBuilder:function(e,t){var r=P(e.width,t),n=P(e.height,t),a=e.shift?P(e.shift,t):0,i=t.color&&t.getColor()||"black",o=new Tt.MathNode("mspace");o.setAttribute("mathbackground",i),o.setAttribute("width",F(r)),o.setAttribute("height",F(n));var s=new Tt.MathNode("mpadded",[o]);return a>=0?s.setAttribute("height",F(a)):(s.setAttribute("height",F(a)),s.setAttribute("depth",F(-a))),s.setAttribute("voffset",F(a)),s}});var yn=["\\tiny","\\sixptsize","\\scriptsize","\\footnotesize","\\small","\\normalsize","\\large","\\Large","\\LARGE","\\huge","\\Huge"];ot({type:"sizing",names:yn,props:{numArgs:0,allowedInText:!0},handler:function(e,t){var r=e.breakOnTokenText,n=e.funcName,a=e.parser,i=a.parseExpression(!1,r);return{type:"sizing",mode:a.mode,size:yn.indexOf(n)+1,body:i}},htmlBuilder:function(e,t){var r=t.havingSize(e.size);return bn(e.body,r,t)},mathmlBuilder:function(e,t){var r=t.havingSize(e.size),n=qt(e.body,r),a=new Tt.MathNode("mstyle",n);return a.setAttribute("mathsize",F(r.sizeMultiplier)),a}}),ot({type:"smash",names:["\\smash"],props:{numArgs:1,numOptionalArgs:1,allowedInText:!0},handler:function(e,t,r){var n=e.parser,a=!1,i=!1,o=r[0]&&Ut(r[0],"ordgroup");if(o)for(var s="",l=0;l<o.body.length;++l){if("t"===(s=o.body[l].text))a=!0;else{if("b"!==s){a=!1,i=!1;break}i=!0}}else a=!0,i=!0;var h=t[0];return{type:"smash",mode:n.mode,body:h,smashHeight:a,smashDepth:i}},htmlBuilder:function(e,t){var r=Ke.makeSpan([],[wt(e.body,t)]);if(!e.smashHeight&&!e.smashDepth)return r;if(e.smashHeight&&(r.height=0,r.children))for(var n=0;n<r.children.length;n++)r.children[n].height=0;if(e.smashDepth&&(r.depth=0,r.children))for(var a=0;a<r.children.length;a++)r.children[a].depth=0;var i=Ke.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:r}]},t);return Ke.makeSpan(["mord"],[i],t)},mathmlBuilder:function(e,t){var r=new Tt.MathNode("mpadded",[Rt(e.body,t)]);return e.smashHeight&&r.setAttribute("height","0px"),e.smashDepth&&r.setAttribute("depth","0px"),r}}),ot({type:"sqrt",names:["\\sqrt"],props:{numArgs:1,numOptionalArgs:1},handler:function(e,t,r){var n=e.parser,a=r[0],i=t[0];return{type:"sqrt",mode:n.mode,body:i,index:a}},htmlBuilder:function(e,t){var r=wt(e.body,t.havingCrampedStyle());0===r.height&&(r.height=t.fontMetrics().xHeight),r=Ke.wrapFragment(r,t);var n=t.fontMetrics().defaultRuleThickness,a=n;t.style.id<x.TEXT.id&&(a=t.fontMetrics().xHeight);var i=n+a/4,o=r.height+r.depth+i+n,s=Nr.sqrtImage(o,t),l=s.span,h=s.ruleWidth,c=s.advanceWidth,m=l.height-h;m>r.height+r.depth+i&&(i=(i+m-r.height-r.depth)/2);var u=l.height-r.height-i-h;r.style.paddingLeft=F(c);var p=Ke.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:r,wrapperClasses:["svg-align"]},{type:"kern",size:-(r.height+u)},{type:"elem",elem:l},{type:"kern",size:h}]},t);if(e.index){var d=t.havingStyle(x.SCRIPTSCRIPT),f=wt(e.index,d,t),g=.6*(p.height-p.depth),v=Ke.makeVList({positionType:"shift",positionData:-g,children:[{type:"elem",elem:f}]},t),b=Ke.makeSpan(["root"],[v]);return Ke.makeSpan(["mord","sqrt"],[b,p],t)}return Ke.makeSpan(["mord","sqrt"],[p],t)},mathmlBuilder:function(e,t){var r=e.body,n=e.index;return n?new Tt.MathNode("mroot",[Rt(r,t),Rt(n,t)]):new Tt.MathNode("msqrt",[Rt(r,t)])}});var xn={display:x.DISPLAY,text:x.TEXT,script:x.SCRIPT,scriptscript:x.SCRIPTSCRIPT};ot({type:"styling",names:["\\displaystyle","\\textstyle","\\scriptstyle","\\scriptscriptstyle"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler:function(e,t){var r=e.breakOnTokenText,n=e.funcName,a=e.parser,i=a.parseExpression(!0,r),o=n.slice(1,n.length-5);return{type:"styling",mode:a.mode,style:o,body:i}},htmlBuilder:function(e,t){var r=xn[e.style],n=t.havingStyle(r).withFont("");return bn(e.body,n,t)},mathmlBuilder:function(e,t){var r=xn[e.style],n=t.havingStyle(r),a=qt(e.body,n),i=new Tt.MathNode("mstyle",a),o={display:["0","true"],text:["0","false"],script:["1","false"],scriptscript:["2","false"]}[e.style];return i.setAttribute("scriptlevel",o[0]),i.setAttribute("displaystyle",o[1]),i}});var wn=function(e,t){var r=e.base;return r?"op"===r.type?r.limits&&(t.style.size===x.DISPLAY.size||r.alwaysHandleSupSub)?pn:null:"operatorname"===r.type?r.alwaysHandleSupSub&&(t.style.size===x.DISPLAY.size||r.limits)?vn:null:"accent"===r.type?l.isCharacterBox(r.base)?Wt:null:"horizBrace"===r.type&&!e.sub===r.isOver?ln:null:null};st({type:"supsub",htmlBuilder:function(e,t){var r=wn(e,t);if(r)return r(e,t);var n,a,i,o=e.base,s=e.sup,h=e.sub,c=wt(o,t),m=t.fontMetrics(),u=0,p=0,d=o&&l.isCharacterBox(o);if(s){var f=t.havingStyle(t.style.sup());n=wt(s,f,t),d||(u=c.height-f.fontMetrics().supDrop*f.sizeMultiplier/t.sizeMultiplier)}if(h){var g=t.havingStyle(t.style.sub());a=wt(h,g,t),d||(p=c.depth+g.fontMetrics().subDrop*g.sizeMultiplier/t.sizeMultiplier)}i=t.style===x.DISPLAY?m.sup1:t.style.cramped?m.sup3:m.sup2;var v,b=t.sizeMultiplier,y=F(.5/m.ptPerEm/b),w=null;if(a){var k=e.base&&"op"===e.base.type&&e.base.name&&("\\oiint"===e.base.name||"\\oiiint"===e.base.name);(c instanceof Z||k)&&(w=F(-c.italic))}if(n&&a){u=Math.max(u,i,n.depth+.25*m.xHeight),p=Math.max(p,m.sub2);var S=4*m.defaultRuleThickness;if(u-n.depth-(a.height-p)<S){p=S-(u-n.depth)+a.height;var M=.8*m.xHeight-(u-n.depth);M>0&&(u+=M,p-=M)}var z=[{type:"elem",elem:a,shift:p,marginRight:y,marginLeft:w},{type:"elem",elem:n,shift:-u,marginRight:y}];v=Ke.makeVList({positionType:"individualShift",children:z},t)}else if(a){p=Math.max(p,m.sub1,a.height-.8*m.xHeight);var A=[{type:"elem",elem:a,marginLeft:w,marginRight:y}];v=Ke.makeVList({positionType:"shift",positionData:p,children:A},t)}else{if(!n)throw new Error("supsub must have either sup or sub.");u=Math.max(u,i,n.depth+.25*m.xHeight),v=Ke.makeVList({positionType:"shift",positionData:-u,children:[{type:"elem",elem:n,marginRight:y}]},t)}var T=yt(c,"right")||"mord";return Ke.makeSpan([T],[c,Ke.makeSpan(["msupsub"],[v])],t)},mathmlBuilder:function(e,t){var r,n=!1;e.base&&"horizBrace"===e.base.type&&!!e.sup===e.base.isOver&&(n=!0,r=e.base.isOver),!e.base||"op"!==e.base.type&&"operatorname"!==e.base.type||(e.base.parentIsSupSub=!0);var a,i=[Rt(e.base,t)];if(e.sub&&i.push(Rt(e.sub,t)),e.sup&&i.push(Rt(e.sup,t)),n)a=r?"mover":"munder";else if(e.sub)if(e.sup){var o=e.base;a=o&&"op"===o.type&&o.limits&&t.style===x.DISPLAY||o&&"operatorname"===o.type&&o.alwaysHandleSupSub&&(t.style===x.DISPLAY||o.limits)?"munderover":"msubsup"}else{var s=e.base;a=s&&"op"===s.type&&s.limits&&(t.style===x.DISPLAY||s.alwaysHandleSupSub)||s&&"operatorname"===s.type&&s.alwaysHandleSupSub&&(s.limits||t.style===x.DISPLAY)?"munder":"msub"}else{var l=e.base;a=l&&"op"===l.type&&l.limits&&(t.style===x.DISPLAY||l.alwaysHandleSupSub)||l&&"operatorname"===l.type&&l.alwaysHandleSupSub&&(l.limits||t.style===x.DISPLAY)?"mover":"msup"}return new Tt.MathNode(a,i)}}),st({type:"atom",htmlBuilder:function(e,t){return Ke.mathsym(e.text,e.mode,t,["m"+e.family])},mathmlBuilder:function(e,t){var r=new Tt.MathNode("mo",[Bt(e.text,e.mode)]);if("bin"===e.family){var n=Nt(e,t);"bold-italic"===n&&r.setAttribute("mathvariant",n)}else"punct"===e.family?r.setAttribute("separator","true"):"open"!==e.family&&"close"!==e.family||r.setAttribute("stretchy","false");return r}});var kn={mi:"italic",mn:"normal",mtext:"normal"};st({type:"mathord",htmlBuilder:function(e,t){return Ke.makeOrd(e,t,"mathord")},mathmlBuilder:function(e,t){var r=new Tt.MathNode("mi",[Bt(e.text,e.mode,t)]),n=Nt(e,t)||"italic";return n!==kn[r.type]&&r.setAttribute("mathvariant",n),r}}),st({type:"textord",htmlBuilder:function(e,t){return Ke.makeOrd(e,t,"textord")},mathmlBuilder:function(e,t){var r,n=Bt(e.text,e.mode,t),a=Nt(e,t)||"normal";return r="text"===e.mode?new Tt.MathNode("mtext",[n]):/[0-9]/.test(e.text)?new Tt.MathNode("mn",[n]):"\\prime"===e.text?new Tt.MathNode("mo",[n]):new Tt.MathNode("mi",[n]),a!==kn[r.type]&&r.setAttribute("mathvariant",a),r}});var Sn={"\\nobreak":"nobreak","\\allowbreak":"allowbreak"},Mn={" ":{},"\\ ":{},"~":{className:"nobreak"},"\\space":{},"\\nobreakspace":{className:"nobreak"}};st({type:"spacing",htmlBuilder:function(e,t){if(Mn.hasOwnProperty(e.text)){var r=Mn[e.text].className||"";if("text"===e.mode){var a=Ke.makeOrd(e,t,"textord");return a.classes.push(r),a}return Ke.makeSpan(["mspace",r],[Ke.mathsym(e.text,e.mode,t)],t)}if(Sn.hasOwnProperty(e.text))return Ke.makeSpan(["mspace",Sn[e.text]],[],t);throw new n('Unknown type of space "'+e.text+'"')},mathmlBuilder:function(e,t){if(!Mn.hasOwnProperty(e.text)){if(Sn.hasOwnProperty(e.text))return new Tt.MathNode("mspace");throw new n('Unknown type of space "'+e.text+'"')}return new Tt.MathNode("mtext",[new Tt.TextNode("\xa0")])}});var zn=function(){var e=new Tt.MathNode("mtd",[]);return e.setAttribute("width","50%"),e};st({type:"tag",mathmlBuilder:function(e,t){var r=new Tt.MathNode("mtable",[new Tt.MathNode("mtr",[zn(),new Tt.MathNode("mtd",[It(e.body,t)]),zn(),new Tt.MathNode("mtd",[It(e.tag,t)])])]);return r.setAttribute("width","100%"),r}});var An={"\\text":void 0,"\\textrm":"textrm","\\textsf":"textsf","\\texttt":"texttt","\\textnormal":"textrm"},Tn={"\\textbf":"textbf","\\textmd":"textmd"},Bn={"\\textit":"textit","\\textup":"textup"},Cn=function(e,t){var r=e.font;return r?An[r]?t.withTextFontFamily(An[r]):Tn[r]?t.withTextFontWeight(Tn[r]):t.withTextFontShape(Bn[r]):t};ot({type:"text",names:["\\text","\\textrm","\\textsf","\\texttt","\\textnormal","\\textbf","\\textmd","\\textit","\\textup"],props:{numArgs:1,argTypes:["text"],allowedInArgument:!0,allowedInText:!0},handler:function(e,t){var r=e.parser,n=e.funcName,a=t[0];return{type:"text",mode:r.mode,body:ht(a),font:n}},htmlBuilder:function(e,t){var r=Cn(e,t),n=ft(e.body,r,!0);return Ke.makeSpan(["mord","text"],n,r)},mathmlBuilder:function(e,t){var r=Cn(e,t);return It(e.body,r)}}),ot({type:"underline",names:["\\underline"],props:{numArgs:1,allowedInText:!0},handler:function(e,t){return{type:"underline",mode:e.parser.mode,body:t[0]}},htmlBuilder:function(e,t){var r=wt(e.body,t),n=Ke.makeLineSpan("underline-line",t),a=t.fontMetrics().defaultRuleThickness,i=Ke.makeVList({positionType:"top",positionData:r.height,children:[{type:"kern",size:a},{type:"elem",elem:n},{type:"kern",size:3*a},{type:"elem",elem:r}]},t);return Ke.makeSpan(["mord","underline"],[i],t)},mathmlBuilder:function(e,t){var r=new Tt.MathNode("mo",[new Tt.TextNode("\u203e")]);r.setAttribute("stretchy","true");var n=new Tt.MathNode("munder",[Rt(e.body,t),r]);return n.setAttribute("accentunder","true"),n}}),ot({type:"vcenter",names:["\\vcenter"],props:{numArgs:1,argTypes:["original"],allowedInText:!1},handler:function(e,t){return{type:"vcenter",mode:e.parser.mode,body:t[0]}},htmlBuilder:function(e,t){var r=wt(e.body,t),n=t.fontMetrics().axisHeight,a=.5*(r.height-n-(r.depth+n));return Ke.makeVList({positionType:"shift",positionData:a,children:[{type:"elem",elem:r}]},t)},mathmlBuilder:function(e,t){return new Tt.MathNode("mpadded",[Rt(e.body,t)],["vcenter"])}}),ot({type:"verb",names:["\\verb"],props:{numArgs:0,allowedInText:!0},handler:function(e,t,r){throw new n("\\verb ended by end of line instead of matching delimiter")},htmlBuilder:function(e,t){for(var r=Nn(e),n=[],a=t.havingStyle(t.style.text()),i=0;i<r.length;i++){var o=r[i];"~"===o&&(o="\\textasciitilde"),n.push(Ke.makeSymbol(o,"Typewriter-Regular",e.mode,a,["mord","texttt"]))}return Ke.makeSpan(["mord","text"].concat(a.sizingClasses(t)),Ke.tryCombineChars(n),a)},mathmlBuilder:function(e,t){var r=new Tt.TextNode(Nn(e)),n=new Tt.MathNode("mtext",[r]);return n.setAttribute("mathvariant","monospace"),n}});var Nn=function(e){return e.body.replace(/ /g,e.star?"\u2423":"\xa0")},qn=nt,In="[ \r\n\t]",Rn="(\\\\[a-zA-Z@]+)"+In+"*",Hn="[\u0300-\u036f]",On=new RegExp(Hn+"+$"),En="("+In+"+)|\\\\(\n|[ \r\t]+\n?)[ \r\t]*|([!-\\[\\]-\u2027\u202a-\ud7ff\uf900-\uffff]"+Hn+"*|[\ud800-\udbff][\udc00-\udfff]"+Hn+"*|\\\\verb\\*([^]).*?\\4|\\\\verb([^*a-zA-Z]).*?\\5|"+Rn+"|\\\\[^\ud800-\udfff])",Ln=function(){function e(e,t){this.input=void 0,this.settings=void 0,this.tokenRegex=void 0,this.catcodes=void 0,this.input=e,this.settings=t,this.tokenRegex=new RegExp(En,"g"),this.catcodes={"%":14,"~":13}}var t=e.prototype;return t.setCatcode=function(e,t){this.catcodes[e]=t},t.lex=function(){var e=this.input,t=this.tokenRegex.lastIndex;if(t===e.length)return new Gr("EOF",new Fr(this,t,t));var r=this.tokenRegex.exec(e);if(null===r||r.index!==t)throw new n("Unexpected character: '"+e[t]+"'",new Gr(e[t],new Fr(this,t,t+1)));var a=r[6]||r[3]||(r[2]?"\\ ":" ");if(14===this.catcodes[a]){var i=e.indexOf("\n",this.tokenRegex.lastIndex);return-1===i?(this.tokenRegex.lastIndex=e.length,this.settings.reportNonstrict("commentAtEnd","% comment has no terminating newline; LaTeX would fail because of commenting the end of math mode (e.g. $)")):this.tokenRegex.lastIndex=i+1,this.lex()}return new Gr(a,new Fr(this,t,this.tokenRegex.lastIndex))},e}(),Dn=function(){function e(e,t){void 0===e&&(e={}),void 0===t&&(t={}),this.current=void 0,this.builtins=void 0,this.undefStack=void 0,this.current=t,this.builtins=e,this.undefStack=[]}var t=e.prototype;return t.beginGroup=function(){this.undefStack.push({})},t.endGroup=function(){if(0===this.undefStack.length)throw new n("Unbalanced namespace destruction: attempt to pop global namespace; please report this as a bug");var e=this.undefStack.pop();for(var t in e)e.hasOwnProperty(t)&&(null==e[t]?delete this.current[t]:this.current[t]=e[t])},t.endGroups=function(){for(;this.undefStack.length>0;)this.endGroup()},t.has=function(e){return this.current.hasOwnProperty(e)||this.builtins.hasOwnProperty(e)},t.get=function(e){return this.current.hasOwnProperty(e)?this.current[e]:this.builtins[e]},t.set=function(e,t,r){if(void 0===r&&(r=!1),r){for(var n=0;n<this.undefStack.length;n++)delete this.undefStack[n][e];this.undefStack.length>0&&(this.undefStack[this.undefStack.length-1][e]=t)}else{var a=this.undefStack[this.undefStack.length-1];a&&!a.hasOwnProperty(e)&&(a[e]=this.current[e])}null==t?delete this.current[e]:this.current[e]=t},e}(),Vn=Vr;Pr("\\noexpand",(function(e){var t=e.popToken();return e.isExpandable(t.text)&&(t.noexpand=!0,t.treatAsRelax=!0),{tokens:[t],numArgs:0}})),Pr("\\expandafter",(function(e){var t=e.popToken();return e.expandOnce(!0),{tokens:[t],numArgs:0}})),Pr("\\@firstoftwo",(function(e){return{tokens:e.consumeArgs(2)[0],numArgs:0}})),Pr("\\@secondoftwo",(function(e){return{tokens:e.consumeArgs(2)[1],numArgs:0}})),Pr("\\@ifnextchar",(function(e){var t=e.consumeArgs(3);e.consumeSpaces();var r=e.future();return 1===t[0].length&&t[0][0].text===r.text?{tokens:t[1],numArgs:0}:{tokens:t[2],numArgs:0}})),Pr("\\@ifstar","\\@ifnextchar *{\\@firstoftwo{#1}}"),Pr("\\TextOrMath",(function(e){var t=e.consumeArgs(2);return"text"===e.mode?{tokens:t[0],numArgs:0}:{tokens:t[1],numArgs:0}}));var Pn={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};Pr("\\char",(function(e){var t,r=e.popToken(),a="";if("'"===r.text)t=8,r=e.popToken();else if('"'===r.text)t=16,r=e.popToken();else if("`"===r.text)if("\\"===(r=e.popToken()).text[0])a=r.text.charCodeAt(1);else{if("EOF"===r.text)throw new n("\\char` missing argument");a=r.text.charCodeAt(0)}else t=10;if(t){if(null==(a=Pn[r.text])||a>=t)throw new n("Invalid base-"+t+" digit "+r.text);for(var i;null!=(i=Pn[e.future().text])&&i<t;)a*=t,a+=i,e.popToken()}return"\\@char{"+a+"}"}));var Fn=function(e,t,r){var a=e.consumeArg().tokens;if(1!==a.length)throw new n("\\newcommand's first argument must be a macro name");var i=a[0].text,o=e.isDefined(i);if(o&&!t)throw new n("\\newcommand{"+i+"} attempting to redefine "+i+"; use \\renewcommand");if(!o&&!r)throw new n("\\renewcommand{"+i+"} when command "+i+" does not yet exist; use \\newcommand");var s=0;if(1===(a=e.consumeArg().tokens).length&&"["===a[0].text){for(var l="",h=e.expandNextToken();"]"!==h.text&&"EOF"!==h.text;)l+=h.text,h=e.expandNextToken();if(!l.match(/^\s*[0-9]+\s*$/))throw new n("Invalid number of arguments: "+l);s=parseInt(l),a=e.consumeArg().tokens}return e.macros.set(i,{tokens:a,numArgs:s}),""};Pr("\\newcommand",(function(e){return Fn(e,!1,!0)})),Pr("\\renewcommand",(function(e){return Fn(e,!0,!1)})),Pr("\\providecommand",(function(e){return Fn(e,!0,!0)})),Pr("\\message",(function(e){var t=e.consumeArgs(1)[0];return console.log(t.reverse().map((function(e){return e.text})).join("")),""})),Pr("\\errmessage",(function(e){var t=e.consumeArgs(1)[0];return console.error(t.reverse().map((function(e){return e.text})).join("")),""})),Pr("\\show",(function(e){var t=e.popToken(),r=t.text;return console.log(t,e.macros.get(r),qn[r],ae.math[r],ae.text[r]),""})),Pr("\\bgroup","{"),Pr("\\egroup","}"),Pr("~","\\nobreakspace"),Pr("\\lq","`"),Pr("\\rq","'"),Pr("\\aa","\\r a"),Pr("\\AA","\\r A"),Pr("\\textcopyright","\\html@mathml{\\textcircled{c}}{\\char`\xa9}"),Pr("\\copyright","\\TextOrMath{\\textcopyright}{\\text{\\textcopyright}}"),Pr("\\textregistered","\\html@mathml{\\textcircled{\\scriptsize R}}{\\char`\xae}"),Pr("\u212c","\\mathscr{B}"),Pr("\u2130","\\mathscr{E}"),Pr("\u2131","\\mathscr{F}"),Pr("\u210b","\\mathscr{H}"),Pr("\u2110","\\mathscr{I}"),Pr("\u2112","\\mathscr{L}"),Pr("\u2133","\\mathscr{M}"),Pr("\u211b","\\mathscr{R}"),Pr("\u212d","\\mathfrak{C}"),Pr("\u210c","\\mathfrak{H}"),Pr("\u2128","\\mathfrak{Z}"),Pr("\\Bbbk","\\Bbb{k}"),Pr("\xb7","\\cdotp"),Pr("\\llap","\\mathllap{\\textrm{#1}}"),Pr("\\rlap","\\mathrlap{\\textrm{#1}}"),Pr("\\clap","\\mathclap{\\textrm{#1}}"),Pr("\\mathstrut","\\vphantom{(}"),Pr("\\underbar","\\underline{\\text{#1}}"),Pr("\\not",'\\html@mathml{\\mathrel{\\mathrlap\\@not}}{\\char"338}'),Pr("\\neq","\\html@mathml{\\mathrel{\\not=}}{\\mathrel{\\char`\u2260}}"),Pr("\\ne","\\neq"),Pr("\u2260","\\neq"),Pr("\\notin","\\html@mathml{\\mathrel{{\\in}\\mathllap{/\\mskip1mu}}}{\\mathrel{\\char`\u2209}}"),Pr("\u2209","\\notin"),Pr("\u2258","\\html@mathml{\\mathrel{=\\kern{-1em}\\raisebox{0.4em}{$\\scriptsize\\frown$}}}{\\mathrel{\\char`\u2258}}"),Pr("\u2259","\\html@mathml{\\stackrel{\\tiny\\wedge}{=}}{\\mathrel{\\char`\u2258}}"),Pr("\u225a","\\html@mathml{\\stackrel{\\tiny\\vee}{=}}{\\mathrel{\\char`\u225a}}"),Pr("\u225b","\\html@mathml{\\stackrel{\\scriptsize\\star}{=}}{\\mathrel{\\char`\u225b}}"),Pr("\u225d","\\html@mathml{\\stackrel{\\tiny\\mathrm{def}}{=}}{\\mathrel{\\char`\u225d}}"),Pr("\u225e","\\html@mathml{\\stackrel{\\tiny\\mathrm{m}}{=}}{\\mathrel{\\char`\u225e}}"),Pr("\u225f","\\html@mathml{\\stackrel{\\tiny?}{=}}{\\mathrel{\\char`\u225f}}"),Pr("\u27c2","\\perp"),Pr("\u203c","\\mathclose{!\\mkern-0.8mu!}"),Pr("\u220c","\\notni"),Pr("\u231c","\\ulcorner"),Pr("\u231d","\\urcorner"),Pr("\u231e","\\llcorner"),Pr("\u231f","\\lrcorner"),Pr("\xa9","\\copyright"),Pr("\xae","\\textregistered"),Pr("\ufe0f","\\textregistered"),Pr("\\ulcorner",'\\html@mathml{\\@ulcorner}{\\mathop{\\char"231c}}'),Pr("\\urcorner",'\\html@mathml{\\@urcorner}{\\mathop{\\char"231d}}'),Pr("\\llcorner",'\\html@mathml{\\@llcorner}{\\mathop{\\char"231e}}'),Pr("\\lrcorner",'\\html@mathml{\\@lrcorner}{\\mathop{\\char"231f}}'),Pr("\\vdots","\\mathord{\\varvdots\\rule{0pt}{15pt}}"),Pr("\u22ee","\\vdots"),Pr("\\varGamma","\\mathit{\\Gamma}"),Pr("\\varDelta","\\mathit{\\Delta}"),Pr("\\varTheta","\\mathit{\\Theta}"),Pr("\\varLambda","\\mathit{\\Lambda}"),Pr("\\varXi","\\mathit{\\Xi}"),Pr("\\varPi","\\mathit{\\Pi}"),Pr("\\varSigma","\\mathit{\\Sigma}"),Pr("\\varUpsilon","\\mathit{\\Upsilon}"),Pr("\\varPhi","\\mathit{\\Phi}"),Pr("\\varPsi","\\mathit{\\Psi}"),Pr("\\varOmega","\\mathit{\\Omega}"),Pr("\\substack","\\begin{subarray}{c}#1\\end{subarray}"),Pr("\\colon","\\nobreak\\mskip2mu\\mathpunct{}\\mathchoice{\\mkern-3mu}{\\mkern-3mu}{}{}{:}\\mskip6mu\\relax"),Pr("\\boxed","\\fbox{$\\displaystyle{#1}$}"),Pr("\\iff","\\DOTSB\\;\\Longleftrightarrow\\;"),Pr("\\implies","\\DOTSB\\;\\Longrightarrow\\;"),Pr("\\impliedby","\\DOTSB\\;\\Longleftarrow\\;");var Gn={",":"\\dotsc","\\not":"\\dotsb","+":"\\dotsb","=":"\\dotsb","<":"\\dotsb",">":"\\dotsb","-":"\\dotsb","*":"\\dotsb",":":"\\dotsb","\\DOTSB":"\\dotsb","\\coprod":"\\dotsb","\\bigvee":"\\dotsb","\\bigwedge":"\\dotsb","\\biguplus":"\\dotsb","\\bigcap":"\\dotsb","\\bigcup":"\\dotsb","\\prod":"\\dotsb","\\sum":"\\dotsb","\\bigotimes":"\\dotsb","\\bigoplus":"\\dotsb","\\bigodot":"\\dotsb","\\bigsqcup":"\\dotsb","\\And":"\\dotsb","\\longrightarrow":"\\dotsb","\\Longrightarrow":"\\dotsb","\\longleftarrow":"\\dotsb","\\Longleftarrow":"\\dotsb","\\longleftrightarrow":"\\dotsb","\\Longleftrightarrow":"\\dotsb","\\mapsto":"\\dotsb","\\longmapsto":"\\dotsb","\\hookrightarrow":"\\dotsb","\\doteq":"\\dotsb","\\mathbin":"\\dotsb","\\mathrel":"\\dotsb","\\relbar":"\\dotsb","\\Relbar":"\\dotsb","\\xrightarrow":"\\dotsb","\\xleftarrow":"\\dotsb","\\DOTSI":"\\dotsi","\\int":"\\dotsi","\\oint":"\\dotsi","\\iint":"\\dotsi","\\iiint":"\\dotsi","\\iiiint":"\\dotsi","\\idotsint":"\\dotsi","\\DOTSX":"\\dotsx"};Pr("\\dots",(function(e){var t="\\dotso",r=e.expandAfterFuture().text;return r in Gn?t=Gn[r]:("\\not"===r.slice(0,4)||r in ae.math&&l.contains(["bin","rel"],ae.math[r].group))&&(t="\\dotsb"),t}));var Un={")":!0,"]":!0,"\\rbrack":!0,"\\}":!0,"\\rbrace":!0,"\\rangle":!0,"\\rceil":!0,"\\rfloor":!0,"\\rgroup":!0,"\\rmoustache":!0,"\\right":!0,"\\bigr":!0,"\\biggr":!0,"\\Bigr":!0,"\\Biggr":!0,$:!0,";":!0,".":!0,",":!0};Pr("\\dotso",(function(e){return e.future().text in Un?"\\ldots\\,":"\\ldots"})),Pr("\\dotsc",(function(e){var t=e.future().text;return t in Un&&","!==t?"\\ldots\\,":"\\ldots"})),Pr("\\cdots",(function(e){return e.future().text in Un?"\\@cdots\\,":"\\@cdots"})),Pr("\\dotsb","\\cdots"),Pr("\\dotsm","\\cdots"),Pr("\\dotsi","\\!\\cdots"),Pr("\\dotsx","\\ldots\\,"),Pr("\\DOTSI","\\relax"),Pr("\\DOTSB","\\relax"),Pr("\\DOTSX","\\relax"),Pr("\\tmspace","\\TextOrMath{\\kern#1#3}{\\mskip#1#2}\\relax"),Pr("\\,","\\tmspace+{3mu}{.1667em}"),Pr("\\thinspace","\\,"),Pr("\\>","\\mskip{4mu}"),Pr("\\:","\\tmspace+{4mu}{.2222em}"),Pr("\\medspace","\\:"),Pr("\\;","\\tmspace+{5mu}{.2777em}"),Pr("\\thickspace","\\;"),Pr("\\!","\\tmspace-{3mu}{.1667em}"),Pr("\\negthinspace","\\!"),Pr("\\negmedspace","\\tmspace-{4mu}{.2222em}"),Pr("\\negthickspace","\\tmspace-{5mu}{.277em}"),Pr("\\enspace","\\kern.5em "),Pr("\\enskip","\\hskip.5em\\relax"),Pr("\\quad","\\hskip1em\\relax"),Pr("\\qquad","\\hskip2em\\relax"),Pr("\\tag","\\@ifstar\\tag@literal\\tag@paren"),Pr("\\tag@paren","\\tag@literal{({#1})}"),Pr("\\tag@literal",(function(e){if(e.macros.get("\\df@tag"))throw new n("Multiple \\tag");return"\\gdef\\df@tag{\\text{#1}}"})),Pr("\\bmod","\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}\\mathbin{\\rm mod}\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}"),Pr("\\pod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern8mu}{\\mkern8mu}{\\mkern8mu}(#1)"),Pr("\\pmod","\\pod{{\\rm mod}\\mkern6mu#1}"),Pr("\\mod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern12mu}{\\mkern12mu}{\\mkern12mu}{\\rm mod}\\,\\,#1"),Pr("\\newline","\\\\\\relax"),Pr("\\TeX","\\textrm{\\html@mathml{T\\kern-.1667em\\raisebox{-.5ex}{E}\\kern-.125emX}{TeX}}");var Yn=F(T["Main-Regular"]["T".charCodeAt(0)][1]-.7*T["Main-Regular"]["A".charCodeAt(0)][1]);Pr("\\LaTeX","\\textrm{\\html@mathml{L\\kern-.36em\\raisebox{"+Yn+"}{\\scriptstyle A}\\kern-.15em\\TeX}{LaTeX}}"),Pr("\\KaTeX","\\textrm{\\html@mathml{K\\kern-.17em\\raisebox{"+Yn+"}{\\scriptstyle A}\\kern-.15em\\TeX}{KaTeX}}"),Pr("\\hspace","\\@ifstar\\@hspacer\\@hspace"),Pr("\\@hspace","\\hskip #1\\relax"),Pr("\\@hspacer","\\rule{0pt}{0pt}\\hskip #1\\relax"),Pr("\\ordinarycolon",":"),Pr("\\vcentcolon","\\mathrel{\\mathop\\ordinarycolon}"),Pr("\\dblcolon",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-.9mu}\\vcentcolon}}{\\mathop{\\char"2237}}'),Pr("\\coloneqq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2254}}'),Pr("\\Coloneqq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2237\\char"3d}}'),Pr("\\coloneq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"3a\\char"2212}}'),Pr("\\Coloneq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"2237\\char"2212}}'),Pr("\\eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2255}}'),Pr("\\Eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"3d\\char"2237}}'),Pr("\\eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2239}}'),Pr("\\Eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"2212\\char"2237}}'),Pr("\\colonapprox",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"3a\\char"2248}}'),Pr("\\Colonapprox",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"2237\\char"2248}}'),Pr("\\colonsim",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"3a\\char"223c}}'),Pr("\\Colonsim",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"2237\\char"223c}}'),Pr("\u2237","\\dblcolon"),Pr("\u2239","\\eqcolon"),Pr("\u2254","\\coloneqq"),Pr("\u2255","\\eqqcolon"),Pr("\u2a74","\\Coloneqq"),Pr("\\ratio","\\vcentcolon"),Pr("\\coloncolon","\\dblcolon"),Pr("\\colonequals","\\coloneqq"),Pr("\\coloncolonequals","\\Coloneqq"),Pr("\\equalscolon","\\eqqcolon"),Pr("\\equalscoloncolon","\\Eqqcolon"),Pr("\\colonminus","\\coloneq"),Pr("\\coloncolonminus","\\Coloneq"),Pr("\\minuscolon","\\eqcolon"),Pr("\\minuscoloncolon","\\Eqcolon"),Pr("\\coloncolonapprox","\\Colonapprox"),Pr("\\coloncolonsim","\\Colonsim"),Pr("\\simcolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\vcentcolon}"),Pr("\\simcoloncolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\dblcolon}"),Pr("\\approxcolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\vcentcolon}"),Pr("\\approxcoloncolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\dblcolon}"),Pr("\\notni","\\html@mathml{\\not\\ni}{\\mathrel{\\char`\u220c}}"),Pr("\\limsup","\\DOTSB\\operatorname*{lim\\,sup}"),Pr("\\liminf","\\DOTSB\\operatorname*{lim\\,inf}"),Pr("\\injlim","\\DOTSB\\operatorname*{inj\\,lim}"),Pr("\\projlim","\\DOTSB\\operatorname*{proj\\,lim}"),Pr("\\varlimsup","\\DOTSB\\operatorname*{\\overline{lim}}"),Pr("\\varliminf","\\DOTSB\\operatorname*{\\underline{lim}}"),Pr("\\varinjlim","\\DOTSB\\operatorname*{\\underrightarrow{lim}}"),Pr("\\varprojlim","\\DOTSB\\operatorname*{\\underleftarrow{lim}}"),Pr("\\gvertneqq","\\html@mathml{\\@gvertneqq}{\u2269}"),Pr("\\lvertneqq","\\html@mathml{\\@lvertneqq}{\u2268}"),Pr("\\ngeqq","\\html@mathml{\\@ngeqq}{\u2271}"),Pr("\\ngeqslant","\\html@mathml{\\@ngeqslant}{\u2271}"),Pr("\\nleqq","\\html@mathml{\\@nleqq}{\u2270}"),Pr("\\nleqslant","\\html@mathml{\\@nleqslant}{\u2270}"),Pr("\\nshortmid","\\html@mathml{\\@nshortmid}{\u2224}"),Pr("\\nshortparallel","\\html@mathml{\\@nshortparallel}{\u2226}"),Pr("\\nsubseteqq","\\html@mathml{\\@nsubseteqq}{\u2288}"),Pr("\\nsupseteqq","\\html@mathml{\\@nsupseteqq}{\u2289}"),Pr("\\varsubsetneq","\\html@mathml{\\@varsubsetneq}{\u228a}"),Pr("\\varsubsetneqq","\\html@mathml{\\@varsubsetneqq}{\u2acb}"),Pr("\\varsupsetneq","\\html@mathml{\\@varsupsetneq}{\u228b}"),Pr("\\varsupsetneqq","\\html@mathml{\\@varsupsetneqq}{\u2acc}"),Pr("\\imath","\\html@mathml{\\@imath}{\u0131}"),Pr("\\jmath","\\html@mathml{\\@jmath}{\u0237}"),Pr("\\llbracket","\\html@mathml{\\mathopen{[\\mkern-3.2mu[}}{\\mathopen{\\char`\u27e6}}"),Pr("\\rrbracket","\\html@mathml{\\mathclose{]\\mkern-3.2mu]}}{\\mathclose{\\char`\u27e7}}"),Pr("\u27e6","\\llbracket"),Pr("\u27e7","\\rrbracket"),Pr("\\lBrace","\\html@mathml{\\mathopen{\\{\\mkern-3.2mu[}}{\\mathopen{\\char`\u2983}}"),Pr("\\rBrace","\\html@mathml{\\mathclose{]\\mkern-3.2mu\\}}}{\\mathclose{\\char`\u2984}}"),Pr("\u2983","\\lBrace"),Pr("\u2984","\\rBrace"),Pr("\\minuso","\\mathbin{\\html@mathml{{\\mathrlap{\\mathchoice{\\kern{0.145em}}{\\kern{0.145em}}{\\kern{0.1015em}}{\\kern{0.0725em}}\\circ}{-}}}{\\char`\u29b5}}"),Pr("\u29b5","\\minuso"),Pr("\\darr","\\downarrow"),Pr("\\dArr","\\Downarrow"),Pr("\\Darr","\\Downarrow"),Pr("\\lang","\\langle"),Pr("\\rang","\\rangle"),Pr("\\uarr","\\uparrow"),Pr("\\uArr","\\Uparrow"),Pr("\\Uarr","\\Uparrow"),Pr("\\N","\\mathbb{N}"),Pr("\\R","\\mathbb{R}"),Pr("\\Z","\\mathbb{Z}"),Pr("\\alef","\\aleph"),Pr("\\alefsym","\\aleph"),Pr("\\Alpha","\\mathrm{A}"),Pr("\\Beta","\\mathrm{B}"),Pr("\\bull","\\bullet"),Pr("\\Chi","\\mathrm{X}"),Pr("\\clubs","\\clubsuit"),Pr("\\cnums","\\mathbb{C}"),Pr("\\Complex","\\mathbb{C}"),Pr("\\Dagger","\\ddagger"),Pr("\\diamonds","\\diamondsuit"),Pr("\\empty","\\emptyset"),Pr("\\Epsilon","\\mathrm{E}"),Pr("\\Eta","\\mathrm{H}"),Pr("\\exist","\\exists"),Pr("\\harr","\\leftrightarrow"),Pr("\\hArr","\\Leftrightarrow"),Pr("\\Harr","\\Leftrightarrow"),Pr("\\hearts","\\heartsuit"),Pr("\\image","\\Im"),Pr("\\infin","\\infty"),Pr("\\Iota","\\mathrm{I}"),Pr("\\isin","\\in"),Pr("\\Kappa","\\mathrm{K}"),Pr("\\larr","\\leftarrow"),Pr("\\lArr","\\Leftarrow"),Pr("\\Larr","\\Leftarrow"),Pr("\\lrarr","\\leftrightarrow"),Pr("\\lrArr","\\Leftrightarrow"),Pr("\\Lrarr","\\Leftrightarrow"),Pr("\\Mu","\\mathrm{M}"),Pr("\\natnums","\\mathbb{N}"),Pr("\\Nu","\\mathrm{N}"),Pr("\\Omicron","\\mathrm{O}"),Pr("\\plusmn","\\pm"),Pr("\\rarr","\\rightarrow"),Pr("\\rArr","\\Rightarrow"),Pr("\\Rarr","\\Rightarrow"),Pr("\\real","\\Re"),Pr("\\reals","\\mathbb{R}"),Pr("\\Reals","\\mathbb{R}"),Pr("\\Rho","\\mathrm{P}"),Pr("\\sdot","\\cdot"),Pr("\\sect","\\S"),Pr("\\spades","\\spadesuit"),Pr("\\sub","\\subset"),Pr("\\sube","\\subseteq"),Pr("\\supe","\\supseteq"),Pr("\\Tau","\\mathrm{T}"),Pr("\\thetasym","\\vartheta"),Pr("\\weierp","\\wp"),Pr("\\Zeta","\\mathrm{Z}"),Pr("\\argmin","\\DOTSB\\operatorname*{arg\\,min}"),Pr("\\argmax","\\DOTSB\\operatorname*{arg\\,max}"),Pr("\\plim","\\DOTSB\\mathop{\\operatorname{plim}}\\limits"),Pr("\\bra","\\mathinner{\\langle{#1}|}"),Pr("\\ket","\\mathinner{|{#1}\\rangle}"),Pr("\\braket","\\mathinner{\\langle{#1}\\rangle}"),Pr("\\Bra","\\left\\langle#1\\right|"),Pr("\\Ket","\\left|#1\\right\\rangle");var Xn=function(e){return function(t){var r=t.consumeArg().tokens,n=t.consumeArg().tokens,a=t.consumeArg().tokens,i=t.consumeArg().tokens,o=t.macros.get("|"),s=t.macros.get("\\|");t.macros.beginGroup();var l=function(t){return function(r){e&&(r.macros.set("|",o),a.length&&r.macros.set("\\|",s));var i=t;!t&&a.length&&("|"===r.future().text&&(r.popToken(),i=!0));return{tokens:i?a:n,numArgs:0}}};t.macros.set("|",l(!1)),a.length&&t.macros.set("\\|",l(!0));var h=t.consumeArg().tokens,c=t.expandTokens([].concat(i,h,r));return t.macros.endGroup(),{tokens:c.reverse(),numArgs:0}}};Pr("\\bra@ket",Xn(!1)),Pr("\\bra@set",Xn(!0)),Pr("\\Braket","\\bra@ket{\\left\\langle}{\\,\\middle\\vert\\,}{\\,\\middle\\vert\\,}{\\right\\rangle}"),Pr("\\Set","\\bra@set{\\left\\{\\:}{\\;\\middle\\vert\\;}{\\;\\middle\\Vert\\;}{\\:\\right\\}}"),Pr("\\set","\\bra@set{\\{\\,}{\\mid}{}{\\,\\}}"),Pr("\\angln","{\\angl n}"),Pr("\\blue","\\textcolor{##6495ed}{#1}"),Pr("\\orange","\\textcolor{##ffa500}{#1}"),Pr("\\pink","\\textcolor{##ff00af}{#1}"),Pr("\\red","\\textcolor{##df0030}{#1}"),Pr("\\green","\\textcolor{##28ae7b}{#1}"),Pr("\\gray","\\textcolor{gray}{#1}"),Pr("\\purple","\\textcolor{##9d38bd}{#1}"),Pr("\\blueA","\\textcolor{##ccfaff}{#1}"),Pr("\\blueB","\\textcolor{##80f6ff}{#1}"),Pr("\\blueC","\\textcolor{##63d9ea}{#1}"),Pr("\\blueD","\\textcolor{##11accd}{#1}"),Pr("\\blueE","\\textcolor{##0c7f99}{#1}"),Pr("\\tealA","\\textcolor{##94fff5}{#1}"),Pr("\\tealB","\\textcolor{##26edd5}{#1}"),Pr("\\tealC","\\textcolor{##01d1c1}{#1}"),Pr("\\tealD","\\textcolor{##01a995}{#1}"),Pr("\\tealE","\\textcolor{##208170}{#1}"),Pr("\\greenA","\\textcolor{##b6ffb0}{#1}"),Pr("\\greenB","\\textcolor{##8af281}{#1}"),Pr("\\greenC","\\textcolor{##74cf70}{#1}"),Pr("\\greenD","\\textcolor{##1fab54}{#1}"),Pr("\\greenE","\\textcolor{##0d923f}{#1}"),Pr("\\goldA","\\textcolor{##ffd0a9}{#1}"),Pr("\\goldB","\\textcolor{##ffbb71}{#1}"),Pr("\\goldC","\\textcolor{##ff9c39}{#1}"),Pr("\\goldD","\\textcolor{##e07d10}{#1}"),Pr("\\goldE","\\textcolor{##a75a05}{#1}"),Pr("\\redA","\\textcolor{##fca9a9}{#1}"),Pr("\\redB","\\textcolor{##ff8482}{#1}"),Pr("\\redC","\\textcolor{##f9685d}{#1}"),Pr("\\redD","\\textcolor{##e84d39}{#1}"),Pr("\\redE","\\textcolor{##bc2612}{#1}"),Pr("\\maroonA","\\textcolor{##ffbde0}{#1}"),Pr("\\maroonB","\\textcolor{##ff92c6}{#1}"),Pr("\\maroonC","\\textcolor{##ed5fa6}{#1}"),Pr("\\maroonD","\\textcolor{##ca337c}{#1}"),Pr("\\maroonE","\\textcolor{##9e034e}{#1}"),Pr("\\purpleA","\\textcolor{##ddd7ff}{#1}"),Pr("\\purpleB","\\textcolor{##c6b9fc}{#1}"),Pr("\\purpleC","\\textcolor{##aa87ff}{#1}"),Pr("\\purpleD","\\textcolor{##7854ab}{#1}"),Pr("\\purpleE","\\textcolor{##543b78}{#1}"),Pr("\\mintA","\\textcolor{##f5f9e8}{#1}"),Pr("\\mintB","\\textcolor{##edf2df}{#1}"),Pr("\\mintC","\\textcolor{##e0e5cc}{#1}"),Pr("\\grayA","\\textcolor{##f6f7f7}{#1}"),Pr("\\grayB","\\textcolor{##f0f1f2}{#1}"),Pr("\\grayC","\\textcolor{##e3e5e6}{#1}"),Pr("\\grayD","\\textcolor{##d6d8da}{#1}"),Pr("\\grayE","\\textcolor{##babec2}{#1}"),Pr("\\grayF","\\textcolor{##888d93}{#1}"),Pr("\\grayG","\\textcolor{##626569}{#1}"),Pr("\\grayH","\\textcolor{##3b3e40}{#1}"),Pr("\\grayI","\\textcolor{##21242c}{#1}"),Pr("\\kaBlue","\\textcolor{##314453}{#1}"),Pr("\\kaGreen","\\textcolor{##71B307}{#1}");var Wn={"^":!0,_:!0,"\\limits":!0,"\\nolimits":!0},_n=function(){function e(e,t,r){this.settings=void 0,this.expansionCount=void 0,this.lexer=void 0,this.macros=void 0,this.stack=void 0,this.mode=void 0,this.settings=t,this.expansionCount=0,this.feed(e),this.macros=new Dn(Vn,t.macros),this.mode=r,this.stack=[]}var t=e.prototype;return t.feed=function(e){this.lexer=new Ln(e,this.settings)},t.switchMode=function(e){this.mode=e},t.beginGroup=function(){this.macros.beginGroup()},t.endGroup=function(){this.macros.endGroup()},t.endGroups=function(){this.macros.endGroups()},t.future=function(){return 0===this.stack.length&&this.pushToken(this.lexer.lex()),this.stack[this.stack.length-1]},t.popToken=function(){return this.future(),this.stack.pop()},t.pushToken=function(e){this.stack.push(e)},t.pushTokens=function(e){var t;(t=this.stack).push.apply(t,e)},t.scanArgument=function(e){var t,r,n;if(e){if(this.consumeSpaces(),"["!==this.future().text)return null;t=this.popToken();var a=this.consumeArg(["]"]);n=a.tokens,r=a.end}else{var i=this.consumeArg();n=i.tokens,t=i.start,r=i.end}return this.pushToken(new Gr("EOF",r.loc)),this.pushTokens(n),t.range(r,"")},t.consumeSpaces=function(){for(;;){if(" "!==this.future().text)break;this.stack.pop()}},t.consumeArg=function(e){var t=[],r=e&&e.length>0;r||this.consumeSpaces();var a,i=this.future(),o=0,s=0;do{if(a=this.popToken(),t.push(a),"{"===a.text)++o;else if("}"===a.text){if(-1===--o)throw new n("Extra }",a)}else if("EOF"===a.text)throw new n("Unexpected end of input in a macro argument, expected '"+(e&&r?e[s]:"}")+"'",a);if(e&&r)if((0===o||1===o&&"{"===e[s])&&a.text===e[s]){if(++s===e.length){t.splice(-s,s);break}}else s=0}while(0!==o||r);return"{"===i.text&&"}"===t[t.length-1].text&&(t.pop(),t.shift()),t.reverse(),{tokens:t,start:i,end:a}},t.consumeArgs=function(e,t){if(t){if(t.length!==e+1)throw new n("The length of delimiters doesn't match the number of args!");for(var r=t[0],a=0;a<r.length;a++){var i=this.popToken();if(r[a]!==i.text)throw new n("Use of the macro doesn't match its definition",i)}}for(var o=[],s=0;s<e;s++)o.push(this.consumeArg(t&&t[s+1]).tokens);return o},t.expandOnce=function(e){var t=this.popToken(),r=t.text,a=t.noexpand?null:this._getExpansion(r);if(null==a||e&&a.unexpandable){if(e&&null==a&&"\\"===r[0]&&!this.isDefined(r))throw new n("Undefined control sequence: "+r);return this.pushToken(t),!1}if(this.expansionCount++,this.expansionCount>this.settings.maxExpand)throw new n("Too many expansions: infinite loop or need to increase maxExpand setting");var i=a.tokens,o=this.consumeArgs(a.numArgs,a.delimiters);if(a.numArgs)for(var s=(i=i.slice()).length-1;s>=0;--s){var l=i[s];if("#"===l.text){if(0===s)throw new n("Incomplete placeholder at end of macro body",l);if("#"===(l=i[--s]).text)i.splice(s+1,1);else{if(!/^[1-9]$/.test(l.text))throw new n("Not a valid argument number",l);var h;(h=i).splice.apply(h,[s,2].concat(o[+l.text-1]))}}}return this.pushTokens(i),i.length},t.expandAfterFuture=function(){return this.expandOnce(),this.future()},t.expandNextToken=function(){for(;;)if(!1===this.expandOnce()){var e=this.stack.pop();return e.treatAsRelax&&(e.text="\\relax"),e}throw new Error},t.expandMacro=function(e){return this.macros.has(e)?this.expandTokens([new Gr(e)]):void 0},t.expandTokens=function(e){var t=[],r=this.stack.length;for(this.pushTokens(e);this.stack.length>r;)if(!1===this.expandOnce(!0)){var n=this.stack.pop();n.treatAsRelax&&(n.noexpand=!1,n.treatAsRelax=!1),t.push(n)}return t},t.expandMacroAsText=function(e){var t=this.expandMacro(e);return t?t.map((function(e){return e.text})).join(""):t},t._getExpansion=function(e){var t=this.macros.get(e);if(null==t)return t;if(1===e.length){var r=this.lexer.catcodes[e];if(null!=r&&13!==r)return}var n="function"==typeof t?t(this):t;if("string"==typeof n){var a=0;if(-1!==n.indexOf("#"))for(var i=n.replace(/##/g,"");-1!==i.indexOf("#"+(a+1));)++a;for(var o=new Ln(n,this.settings),s=[],l=o.lex();"EOF"!==l.text;)s.push(l),l=o.lex();return s.reverse(),{tokens:s,numArgs:a}}return n},t.isDefined=function(e){return this.macros.has(e)||qn.hasOwnProperty(e)||ae.math.hasOwnProperty(e)||ae.text.hasOwnProperty(e)||Wn.hasOwnProperty(e)},t.isExpandable=function(e){var t=this.macros.get(e);return null!=t?"string"==typeof t||"function"==typeof t||!t.unexpandable:qn.hasOwnProperty(e)&&!qn[e].primitive},e}(),jn=/^[\u208a\u208b\u208c\u208d\u208e\u2080\u2081\u2082\u2083\u2084\u2085\u2086\u2087\u2088\u2089\u2090\u2091\u2095\u1d62\u2c7c\u2096\u2097\u2098\u2099\u2092\u209a\u1d63\u209b\u209c\u1d64\u1d65\u2093\u1d66\u1d67\u1d68\u1d69\u1d6a]/,$n=Object.freeze({"\u208a":"+","\u208b":"-","\u208c":"=","\u208d":"(","\u208e":")","\u2080":"0","\u2081":"1","\u2082":"2","\u2083":"3","\u2084":"4","\u2085":"5","\u2086":"6","\u2087":"7","\u2088":"8","\u2089":"9","\u2090":"a","\u2091":"e","\u2095":"h","\u1d62":"i","\u2c7c":"j","\u2096":"k","\u2097":"l","\u2098":"m","\u2099":"n","\u2092":"o","\u209a":"p","\u1d63":"r","\u209b":"s","\u209c":"t","\u1d64":"u","\u1d65":"v","\u2093":"x","\u1d66":"\u03b2","\u1d67":"\u03b3","\u1d68":"\u03c1","\u1d69":"\u03d5","\u1d6a":"\u03c7","\u207a":"+","\u207b":"-","\u207c":"=","\u207d":"(","\u207e":")","\u2070":"0","\xb9":"1","\xb2":"2","\xb3":"3","\u2074":"4","\u2075":"5","\u2076":"6","\u2077":"7","\u2078":"8","\u2079":"9","\u1d2c":"A","\u1d2e":"B","\u1d30":"D","\u1d31":"E","\u1d33":"G","\u1d34":"H","\u1d35":"I","\u1d36":"J","\u1d37":"K","\u1d38":"L","\u1d39":"M","\u1d3a":"N","\u1d3c":"O","\u1d3e":"P","\u1d3f":"R","\u1d40":"T","\u1d41":"U","\u2c7d":"V","\u1d42":"W","\u1d43":"a","\u1d47":"b","\u1d9c":"c","\u1d48":"d","\u1d49":"e","\u1da0":"f","\u1d4d":"g","\u02b0":"h","\u2071":"i","\u02b2":"j","\u1d4f":"k","\u02e1":"l","\u1d50":"m","\u207f":"n","\u1d52":"o","\u1d56":"p","\u02b3":"r","\u02e2":"s","\u1d57":"t","\u1d58":"u","\u1d5b":"v","\u02b7":"w","\u02e3":"x","\u02b8":"y","\u1dbb":"z","\u1d5d":"\u03b2","\u1d5e":"\u03b3","\u1d5f":"\u03b4","\u1d60":"\u03d5","\u1d61":"\u03c7","\u1dbf":"\u03b8"}),Zn={"\u0301":{text:"\\'",math:"\\acute"},"\u0300":{text:"\\`",math:"\\grave"},"\u0308":{text:'\\"',math:"\\ddot"},"\u0303":{text:"\\~",math:"\\tilde"},"\u0304":{text:"\\=",math:"\\bar"},"\u0306":{text:"\\u",math:"\\breve"},"\u030c":{text:"\\v",math:"\\check"},"\u0302":{text:"\\^",math:"\\hat"},"\u0307":{text:"\\.",math:"\\dot"},"\u030a":{text:"\\r",math:"\\mathring"},"\u030b":{text:"\\H"},"\u0327":{text:"\\c"}},Kn={"\xe1":"a\u0301","\xe0":"a\u0300","\xe4":"a\u0308","\u01df":"a\u0308\u0304","\xe3":"a\u0303","\u0101":"a\u0304","\u0103":"a\u0306","\u1eaf":"a\u0306\u0301","\u1eb1":"a\u0306\u0300","\u1eb5":"a\u0306\u0303","\u01ce":"a\u030c","\xe2":"a\u0302","\u1ea5":"a\u0302\u0301","\u1ea7":"a\u0302\u0300","\u1eab":"a\u0302\u0303","\u0227":"a\u0307","\u01e1":"a\u0307\u0304","\xe5":"a\u030a","\u01fb":"a\u030a\u0301","\u1e03":"b\u0307","\u0107":"c\u0301","\u1e09":"c\u0327\u0301","\u010d":"c\u030c","\u0109":"c\u0302","\u010b":"c\u0307","\xe7":"c\u0327","\u010f":"d\u030c","\u1e0b":"d\u0307","\u1e11":"d\u0327","\xe9":"e\u0301","\xe8":"e\u0300","\xeb":"e\u0308","\u1ebd":"e\u0303","\u0113":"e\u0304","\u1e17":"e\u0304\u0301","\u1e15":"e\u0304\u0300","\u0115":"e\u0306","\u1e1d":"e\u0327\u0306","\u011b":"e\u030c","\xea":"e\u0302","\u1ebf":"e\u0302\u0301","\u1ec1":"e\u0302\u0300","\u1ec5":"e\u0302\u0303","\u0117":"e\u0307","\u0229":"e\u0327","\u1e1f":"f\u0307","\u01f5":"g\u0301","\u1e21":"g\u0304","\u011f":"g\u0306","\u01e7":"g\u030c","\u011d":"g\u0302","\u0121":"g\u0307","\u0123":"g\u0327","\u1e27":"h\u0308","\u021f":"h\u030c","\u0125":"h\u0302","\u1e23":"h\u0307","\u1e29":"h\u0327","\xed":"i\u0301","\xec":"i\u0300","\xef":"i\u0308","\u1e2f":"i\u0308\u0301","\u0129":"i\u0303","\u012b":"i\u0304","\u012d":"i\u0306","\u01d0":"i\u030c","\xee":"i\u0302","\u01f0":"j\u030c","\u0135":"j\u0302","\u1e31":"k\u0301","\u01e9":"k\u030c","\u0137":"k\u0327","\u013a":"l\u0301","\u013e":"l\u030c","\u013c":"l\u0327","\u1e3f":"m\u0301","\u1e41":"m\u0307","\u0144":"n\u0301","\u01f9":"n\u0300","\xf1":"n\u0303","\u0148":"n\u030c","\u1e45":"n\u0307","\u0146":"n\u0327","\xf3":"o\u0301","\xf2":"o\u0300","\xf6":"o\u0308","\u022b":"o\u0308\u0304","\xf5":"o\u0303","\u1e4d":"o\u0303\u0301","\u1e4f":"o\u0303\u0308","\u022d":"o\u0303\u0304","\u014d":"o\u0304","\u1e53":"o\u0304\u0301","\u1e51":"o\u0304\u0300","\u014f":"o\u0306","\u01d2":"o\u030c","\xf4":"o\u0302","\u1ed1":"o\u0302\u0301","\u1ed3":"o\u0302\u0300","\u1ed7":"o\u0302\u0303","\u022f":"o\u0307","\u0231":"o\u0307\u0304","\u0151":"o\u030b","\u1e55":"p\u0301","\u1e57":"p\u0307","\u0155":"r\u0301","\u0159":"r\u030c","\u1e59":"r\u0307","\u0157":"r\u0327","\u015b":"s\u0301","\u1e65":"s\u0301\u0307","\u0161":"s\u030c","\u1e67":"s\u030c\u0307","\u015d":"s\u0302","\u1e61":"s\u0307","\u015f":"s\u0327","\u1e97":"t\u0308","\u0165":"t\u030c","\u1e6b":"t\u0307","\u0163":"t\u0327","\xfa":"u\u0301","\xf9":"u\u0300","\xfc":"u\u0308","\u01d8":"u\u0308\u0301","\u01dc":"u\u0308\u0300","\u01d6":"u\u0308\u0304","\u01da":"u\u0308\u030c","\u0169":"u\u0303","\u1e79":"u\u0303\u0301","\u016b":"u\u0304","\u1e7b":"u\u0304\u0308","\u016d":"u\u0306","\u01d4":"u\u030c","\xfb":"u\u0302","\u016f":"u\u030a","\u0171":"u\u030b","\u1e7d":"v\u0303","\u1e83":"w\u0301","\u1e81":"w\u0300","\u1e85":"w\u0308","\u0175":"w\u0302","\u1e87":"w\u0307","\u1e98":"w\u030a","\u1e8d":"x\u0308","\u1e8b":"x\u0307","\xfd":"y\u0301","\u1ef3":"y\u0300","\xff":"y\u0308","\u1ef9":"y\u0303","\u0233":"y\u0304","\u0177":"y\u0302","\u1e8f":"y\u0307","\u1e99":"y\u030a","\u017a":"z\u0301","\u017e":"z\u030c","\u1e91":"z\u0302","\u017c":"z\u0307","\xc1":"A\u0301","\xc0":"A\u0300","\xc4":"A\u0308","\u01de":"A\u0308\u0304","\xc3":"A\u0303","\u0100":"A\u0304","\u0102":"A\u0306","\u1eae":"A\u0306\u0301","\u1eb0":"A\u0306\u0300","\u1eb4":"A\u0306\u0303","\u01cd":"A\u030c","\xc2":"A\u0302","\u1ea4":"A\u0302\u0301","\u1ea6":"A\u0302\u0300","\u1eaa":"A\u0302\u0303","\u0226":"A\u0307","\u01e0":"A\u0307\u0304","\xc5":"A\u030a","\u01fa":"A\u030a\u0301","\u1e02":"B\u0307","\u0106":"C\u0301","\u1e08":"C\u0327\u0301","\u010c":"C\u030c","\u0108":"C\u0302","\u010a":"C\u0307","\xc7":"C\u0327","\u010e":"D\u030c","\u1e0a":"D\u0307","\u1e10":"D\u0327","\xc9":"E\u0301","\xc8":"E\u0300","\xcb":"E\u0308","\u1ebc":"E\u0303","\u0112":"E\u0304","\u1e16":"E\u0304\u0301","\u1e14":"E\u0304\u0300","\u0114":"E\u0306","\u1e1c":"E\u0327\u0306","\u011a":"E\u030c","\xca":"E\u0302","\u1ebe":"E\u0302\u0301","\u1ec0":"E\u0302\u0300","\u1ec4":"E\u0302\u0303","\u0116":"E\u0307","\u0228":"E\u0327","\u1e1e":"F\u0307","\u01f4":"G\u0301","\u1e20":"G\u0304","\u011e":"G\u0306","\u01e6":"G\u030c","\u011c":"G\u0302","\u0120":"G\u0307","\u0122":"G\u0327","\u1e26":"H\u0308","\u021e":"H\u030c","\u0124":"H\u0302","\u1e22":"H\u0307","\u1e28":"H\u0327","\xcd":"I\u0301","\xcc":"I\u0300","\xcf":"I\u0308","\u1e2e":"I\u0308\u0301","\u0128":"I\u0303","\u012a":"I\u0304","\u012c":"I\u0306","\u01cf":"I\u030c","\xce":"I\u0302","\u0130":"I\u0307","\u0134":"J\u0302","\u1e30":"K\u0301","\u01e8":"K\u030c","\u0136":"K\u0327","\u0139":"L\u0301","\u013d":"L\u030c","\u013b":"L\u0327","\u1e3e":"M\u0301","\u1e40":"M\u0307","\u0143":"N\u0301","\u01f8":"N\u0300","\xd1":"N\u0303","\u0147":"N\u030c","\u1e44":"N\u0307","\u0145":"N\u0327","\xd3":"O\u0301","\xd2":"O\u0300","\xd6":"O\u0308","\u022a":"O\u0308\u0304","\xd5":"O\u0303","\u1e4c":"O\u0303\u0301","\u1e4e":"O\u0303\u0308","\u022c":"O\u0303\u0304","\u014c":"O\u0304","\u1e52":"O\u0304\u0301","\u1e50":"O\u0304\u0300","\u014e":"O\u0306","\u01d1":"O\u030c","\xd4":"O\u0302","\u1ed0":"O\u0302\u0301","\u1ed2":"O\u0302\u0300","\u1ed6":"O\u0302\u0303","\u022e":"O\u0307","\u0230":"O\u0307\u0304","\u0150":"O\u030b","\u1e54":"P\u0301","\u1e56":"P\u0307","\u0154":"R\u0301","\u0158":"R\u030c","\u1e58":"R\u0307","\u0156":"R\u0327","\u015a":"S\u0301","\u1e64":"S\u0301\u0307","\u0160":"S\u030c","\u1e66":"S\u030c\u0307","\u015c":"S\u0302","\u1e60":"S\u0307","\u015e":"S\u0327","\u0164":"T\u030c","\u1e6a":"T\u0307","\u0162":"T\u0327","\xda":"U\u0301","\xd9":"U\u0300","\xdc":"U\u0308","\u01d7":"U\u0308\u0301","\u01db":"U\u0308\u0300","\u01d5":"U\u0308\u0304","\u01d9":"U\u0308\u030c","\u0168":"U\u0303","\u1e78":"U\u0303\u0301","\u016a":"U\u0304","\u1e7a":"U\u0304\u0308","\u016c":"U\u0306","\u01d3":"U\u030c","\xdb":"U\u0302","\u016e":"U\u030a","\u0170":"U\u030b","\u1e7c":"V\u0303","\u1e82":"W\u0301","\u1e80":"W\u0300","\u1e84":"W\u0308","\u0174":"W\u0302","\u1e86":"W\u0307","\u1e8c":"X\u0308","\u1e8a":"X\u0307","\xdd":"Y\u0301","\u1ef2":"Y\u0300","\u0178":"Y\u0308","\u1ef8":"Y\u0303","\u0232":"Y\u0304","\u0176":"Y\u0302","\u1e8e":"Y\u0307","\u0179":"Z\u0301","\u017d":"Z\u030c","\u1e90":"Z\u0302","\u017b":"Z\u0307","\u03ac":"\u03b1\u0301","\u1f70":"\u03b1\u0300","\u1fb1":"\u03b1\u0304","\u1fb0":"\u03b1\u0306","\u03ad":"\u03b5\u0301","\u1f72":"\u03b5\u0300","\u03ae":"\u03b7\u0301","\u1f74":"\u03b7\u0300","\u03af":"\u03b9\u0301","\u1f76":"\u03b9\u0300","\u03ca":"\u03b9\u0308","\u0390":"\u03b9\u0308\u0301","\u1fd2":"\u03b9\u0308\u0300","\u1fd1":"\u03b9\u0304","\u1fd0":"\u03b9\u0306","\u03cc":"\u03bf\u0301","\u1f78":"\u03bf\u0300","\u03cd":"\u03c5\u0301","\u1f7a":"\u03c5\u0300","\u03cb":"\u03c5\u0308","\u03b0":"\u03c5\u0308\u0301","\u1fe2":"\u03c5\u0308\u0300","\u1fe1":"\u03c5\u0304","\u1fe0":"\u03c5\u0306","\u03ce":"\u03c9\u0301","\u1f7c":"\u03c9\u0300","\u038e":"\u03a5\u0301","\u1fea":"\u03a5\u0300","\u03ab":"\u03a5\u0308","\u1fe9":"\u03a5\u0304","\u1fe8":"\u03a5\u0306","\u038f":"\u03a9\u0301","\u1ffa":"\u03a9\u0300"},Jn=function(){function e(e,t){this.mode=void 0,this.gullet=void 0,this.settings=void 0,this.leftrightDepth=void 0,this.nextToken=void 0,this.mode="math",this.gullet=new _n(e,t,this.mode),this.settings=t,this.leftrightDepth=0}var t=e.prototype;return t.expect=function(e,t){if(void 0===t&&(t=!0),this.fetch().text!==e)throw new n("Expected '"+e+"', got '"+this.fetch().text+"'",this.fetch());t&&this.consume()},t.consume=function(){this.nextToken=null},t.fetch=function(){return null==this.nextToken&&(this.nextToken=this.gullet.expandNextToken()),this.nextToken},t.switchMode=function(e){this.mode=e,this.gullet.switchMode(e)},t.parse=function(){this.settings.globalGroup||this.gullet.beginGroup(),this.settings.colorIsTextColor&&this.gullet.macros.set("\\color","\\textcolor");try{var e=this.parseExpression(!1);return this.expect("EOF"),this.settings.globalGroup||this.gullet.endGroup(),e}finally{this.gullet.endGroups()}},t.subparse=function(e){var t=this.nextToken;this.consume(),this.gullet.pushToken(new Gr("}")),this.gullet.pushTokens(e);var r=this.parseExpression(!1);return this.expect("}"),this.nextToken=t,r},t.parseExpression=function(t,r){for(var n=[];;){"math"===this.mode&&this.consumeSpaces();var a=this.fetch();if(-1!==e.endOfExpression.indexOf(a.text))break;if(r&&a.text===r)break;if(t&&qn[a.text]&&qn[a.text].infix)break;var i=this.parseAtom(r);if(!i)break;"internal"!==i.type&&n.push(i)}return"text"===this.mode&&this.formLigatures(n),this.handleInfixNodes(n)},t.handleInfixNodes=function(e){for(var t,r=-1,a=0;a<e.length;a++)if("infix"===e[a].type){if(-1!==r)throw new n("only one infix operator per group",e[a].token);r=a,t=e[a].replaceWith}if(-1!==r&&t){var i,o,s=e.slice(0,r),l=e.slice(r+1);return i=1===s.length&&"ordgroup"===s[0].type?s[0]:{type:"ordgroup",mode:this.mode,body:s},o=1===l.length&&"ordgroup"===l[0].type?l[0]:{type:"ordgroup",mode:this.mode,body:l},["\\\\abovefrac"===t?this.callFunction(t,[i,e[r],o],[]):this.callFunction(t,[i,o],[])]}return e},t.handleSupSubscript=function(e){var t=this.fetch(),r=t.text;this.consume(),this.consumeSpaces();var a=this.parseGroup(e);if(!a)throw new n("Expected group after '"+r+"'",t);return a},t.formatUnsupportedCmd=function(e){for(var t=[],r=0;r<e.length;r++)t.push({type:"textord",mode:"text",text:e[r]});var n={type:"text",mode:this.mode,body:t};return{type:"color",mode:this.mode,color:this.settings.errorColor,body:[n]}},t.parseAtom=function(t){var r,a,i=this.parseGroup("atom",t);if("text"===this.mode)return i;for(;;){this.consumeSpaces();var o=this.fetch();if("\\limits"===o.text||"\\nolimits"===o.text){if(i&&"op"===i.type){var s="\\limits"===o.text;i.limits=s,i.alwaysHandleSupSub=!0}else{if(!i||"operatorname"!==i.type)throw new n("Limit controls must follow a math operator",o);i.alwaysHandleSupSub&&(i.limits="\\limits"===o.text)}this.consume()}else if("^"===o.text){if(r)throw new n("Double superscript",o);r=this.handleSupSubscript("superscript")}else if("_"===o.text){if(a)throw new n("Double subscript",o);a=this.handleSupSubscript("subscript")}else if("'"===o.text){if(r)throw new n("Double superscript",o);var l={type:"textord",mode:this.mode,text:"\\prime"},h=[l];for(this.consume();"'"===this.fetch().text;)h.push(l),this.consume();"^"===this.fetch().text&&h.push(this.handleSupSubscript("superscript")),r={type:"ordgroup",mode:this.mode,body:h}}else{if(!$n[o.text])break;var c=$n[o.text],m=jn.test(o.text);for(this.consume();;){var u=this.fetch().text;if(!$n[u])break;if(jn.test(u)!==m)break;this.consume(),c+=$n[u]}var p=new e(c,this.settings).parse();m?a={type:"ordgroup",mode:"math",body:p}:r={type:"ordgroup",mode:"math",body:p}}}return r||a?{type:"supsub",mode:this.mode,base:i,sup:r,sub:a}:i},t.parseFunction=function(e,t){var r=this.fetch(),a=r.text,i=qn[a];if(!i)return null;if(this.consume(),t&&"atom"!==t&&!i.allowedInArgument)throw new n("Got function '"+a+"' with no arguments"+(t?" as "+t:""),r);if("text"===this.mode&&!i.allowedInText)throw new n("Can't use function '"+a+"' in text mode",r);if("math"===this.mode&&!1===i.allowedInMath)throw new n("Can't use function '"+a+"' in math mode",r);var o=this.parseArguments(a,i),s=o.args,l=o.optArgs;return this.callFunction(a,s,l,r,e)},t.callFunction=function(e,t,r,a,i){var o={funcName:e,parser:this,token:a,breakOnTokenText:i},s=qn[e];if(s&&s.handler)return s.handler(o,t,r);throw new n("No function handler for "+e)},t.parseArguments=function(e,t){var r=t.numArgs+t.numOptionalArgs;if(0===r)return{args:[],optArgs:[]};for(var a=[],i=[],o=0;o<r;o++){var s=t.argTypes&&t.argTypes[o],l=o<t.numOptionalArgs;(t.primitive&&null==s||"sqrt"===t.type&&1===o&&null==i[0])&&(s="primitive");var h=this.parseGroupOfType("argument to '"+e+"'",s,l);if(l)i.push(h);else{if(null==h)throw new n("Null argument, please report this as a bug");a.push(h)}}return{args:a,optArgs:i}},t.parseGroupOfType=function(e,t,r){switch(t){case"color":return this.parseColorGroup(r);case"size":return this.parseSizeGroup(r);case"url":return this.parseUrlGroup(r);case"math":case"text":return this.parseArgumentGroup(r,t);case"hbox":var a=this.parseArgumentGroup(r,"text");return null!=a?{type:"styling",mode:a.mode,body:[a],style:"text"}:null;case"raw":var i=this.parseStringGroup("raw",r);return null!=i?{type:"raw",mode:"text",string:i.text}:null;case"primitive":if(r)throw new n("A primitive argument cannot be optional");var o=this.parseGroup(e);if(null==o)throw new n("Expected group as "+e,this.fetch());return o;case"original":case null:case void 0:return this.parseArgumentGroup(r);default:throw new n("Unknown group type as "+e,this.fetch())}},t.consumeSpaces=function(){for(;" "===this.fetch().text;)this.consume()},t.parseStringGroup=function(e,t){var r=this.gullet.scanArgument(t);if(null==r)return null;for(var n,a="";"EOF"!==(n=this.fetch()).text;)a+=n.text,this.consume();return this.consume(),r.text=a,r},t.parseRegexGroup=function(e,t){for(var r,a=this.fetch(),i=a,o="";"EOF"!==(r=this.fetch()).text&&e.test(o+r.text);)o+=(i=r).text,this.consume();if(""===o)throw new n("Invalid "+t+": '"+a.text+"'",a);return a.range(i,o)},t.parseColorGroup=function(e){var t=this.parseStringGroup("color",e);if(null==t)return null;var r=/^(#[a-f0-9]{3}|#?[a-f0-9]{6}|[a-z]+)$/i.exec(t.text);if(!r)throw new n("Invalid color: '"+t.text+"'",t);var a=r[0];return/^[0-9a-f]{6}$/i.test(a)&&(a="#"+a),{type:"color-token",mode:this.mode,color:a}},t.parseSizeGroup=function(e){var t,r=!1;if(this.gullet.consumeSpaces(),!(t=e||"{"===this.gullet.future().text?this.parseStringGroup("size",e):this.parseRegexGroup(/^[-+]? *(?:$|\d+|\d+\.\d*|\.\d*) *[a-z]{0,2} *$/,"size")))return null;e||0!==t.text.length||(t.text="0pt",r=!0);var a=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(t.text);if(!a)throw new n("Invalid size: '"+t.text+"'",t);var i={number:+(a[1]+a[2]),unit:a[3]};if(!V(i))throw new n("Invalid unit: '"+i.unit+"'",t);return{type:"size",mode:this.mode,value:i,isBlank:r}},t.parseUrlGroup=function(e){this.gullet.lexer.setCatcode("%",13),this.gullet.lexer.setCatcode("~",12);var t=this.parseStringGroup("url",e);if(this.gullet.lexer.setCatcode("%",14),this.gullet.lexer.setCatcode("~",13),null==t)return null;var r=t.text.replace(/\\([#$%&~_^{}])/g,"$1");return{type:"url",mode:this.mode,url:r}},t.parseArgumentGroup=function(e,t){var r=this.gullet.scanArgument(e);if(null==r)return null;var n=this.mode;t&&this.switchMode(t),this.gullet.beginGroup();var a=this.parseExpression(!1,"EOF");this.expect("EOF"),this.gullet.endGroup();var i={type:"ordgroup",mode:this.mode,loc:r.loc,body:a};return t&&this.switchMode(n),i},t.parseGroup=function(e,t){var r,a=this.fetch(),i=a.text;if("{"===i||"\\begingroup"===i){this.consume();var o="{"===i?"}":"\\endgroup";this.gullet.beginGroup();var s=this.parseExpression(!1,o),l=this.fetch();this.expect(o),this.gullet.endGroup(),r={type:"ordgroup",mode:this.mode,loc:Fr.range(a,l),body:s,semisimple:"\\begingroup"===i||void 0}}else if(null==(r=this.parseFunction(t,e)||this.parseSymbol())&&"\\"===i[0]&&!Wn.hasOwnProperty(i)){if(this.settings.throwOnError)throw new n("Undefined control sequence: "+i,a);r=this.formatUnsupportedCmd(i),this.consume()}return r},t.formLigatures=function(e){for(var t=e.length-1,r=0;r<t;++r){var n=e[r],a=n.text;"-"===a&&"-"===e[r+1].text&&(r+1<t&&"-"===e[r+2].text?(e.splice(r,3,{type:"textord",mode:"text",loc:Fr.range(n,e[r+2]),text:"---"}),t-=2):(e.splice(r,2,{type:"textord",mode:"text",loc:Fr.range(n,e[r+1]),text:"--"}),t-=1)),"'"!==a&&"`"!==a||e[r+1].text!==a||(e.splice(r,2,{type:"textord",mode:"text",loc:Fr.range(n,e[r+1]),text:a+a}),t-=1)}},t.parseSymbol=function(){var e=this.fetch(),t=e.text;if(/^\\verb[^a-zA-Z]/.test(t)){this.consume();var r=t.slice(5),a="*"===r.charAt(0);if(a&&(r=r.slice(1)),r.length<2||r.charAt(0)!==r.slice(-1))throw new n("\\verb assertion failed --\n please report what input caused this bug");return{type:"verb",mode:"text",body:r=r.slice(1,-1),star:a}}Kn.hasOwnProperty(t[0])&&!ae[this.mode][t[0]]&&(this.settings.strict&&"math"===this.mode&&this.settings.reportNonstrict("unicodeTextInMathMode",'Accented Unicode text character "'+t[0]+'" used in math mode',e),t=Kn[t[0]]+t.slice(1));var i,o=On.exec(t);if(o&&("i"===(t=t.substring(0,o.index))?t="\u0131":"j"===t&&(t="\u0237")),ae[this.mode][t]){this.settings.strict&&"math"===this.mode&&Ee.indexOf(t)>=0&&this.settings.reportNonstrict("unicodeTextInMathMode",'Latin-1/Unicode text character "'+t[0]+'" used in math mode',e);var s,l=ae[this.mode][t].group,h=Fr.range(e);if(te.hasOwnProperty(l)){var c=l;s={type:"atom",mode:this.mode,family:c,loc:h,text:t}}else s={type:l,mode:this.mode,loc:h,text:t};i=s}else{if(!(t.charCodeAt(0)>=128))return null;this.settings.strict&&(S(t.charCodeAt(0))?"math"===this.mode&&this.settings.reportNonstrict("unicodeTextInMathMode",'Unicode text character "'+t[0]+'" used in math mode',e):this.settings.reportNonstrict("unknownSymbol",'Unrecognized Unicode character "'+t[0]+'" ('+t.charCodeAt(0)+")",e)),i={type:"textord",mode:"text",loc:Fr.range(e),text:t}}if(this.consume(),o)for(var m=0;m<o[0].length;m++){var u=o[0][m];if(!Zn[u])throw new n("Unknown accent ' "+u+"'",e);var p=Zn[u][this.mode]||Zn[u].text;if(!p)throw new n("Accent "+u+" unsupported in "+this.mode+" mode",e);i={type:"accent",mode:this.mode,loc:Fr.range(e),label:p,isStretchy:!1,isShifty:!0,base:i}}return i},e}();Jn.endOfExpression=["}","\\endgroup","\\end","\\right","&"];var Qn=function(e,t){if(!("string"==typeof e||e instanceof String))throw new TypeError("KaTeX can only parse string typed expression");var r=new Jn(e,t);delete r.gullet.macros.current["\\df@tag"];var a=r.parse();if(delete r.gullet.macros.current["\\current@color"],delete r.gullet.macros.current["\\color"],r.gullet.macros.get("\\df@tag")){if(!t.displayMode)throw new n("\\tag works only in display equations");a=[{type:"tag",mode:"text",body:a,tag:r.subparse([new Gr("\\df@tag")])}]}return a},ea=function(e,t,r){t.textContent="";var n=ra(e,r).toNode();t.appendChild(n)};"undefined"!=typeof document&&"CSS1Compat"!==document.compatMode&&("undefined"!=typeof console&&console.warn("Warning: KaTeX doesn't work in quirks mode. Make sure your website has a suitable doctype."),ea=function(){throw new n("KaTeX doesn't work in quirks mode.")});var ta=function(e,t,r){if(r.throwOnError||!(e instanceof n))throw e;var a=Ke.makeSpan(["katex-error"],[new Z(t)]);return a.setAttribute("title",e.toString()),a.setAttribute("style","color:"+r.errorColor),a},ra=function(e,t){var r=new m(t);try{var n=Qn(e,r);return Lt(n,e,r)}catch(t){return ta(t,e,r)}},na={version:"0.16.9",render:ea,renderToString:function(e,t){return ra(e,t).toMarkup()},ParseError:n,SETTINGS_SCHEMA:h,__parse:function(e,t){var r=new m(t);return Qn(e,r)},__renderToDomTree:ra,__renderToHTMLTree:function(e,t){var r=new m(t);try{return function(e,t,r){var n=St(e,Ot(r)),a=Ke.makeSpan(["katex"],[n]);return Et(a,r)}(Qn(e,r),0,r)}catch(t){return ta(t,e,r)}},__setFontMetrics:function(e,t){T[e]=t},__defineSymbol:ie,__defineFunction:ot,__defineMacro:Pr,__domTree:{Span:W,Anchor:_,SymbolNode:Z,SvgNode:K,PathNode:J,LineNode:Q}};return t=t.default}()})); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/mhchem.min.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/mhchem.min.js new file mode 100644 index 0000000..63c7ec0 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/katex/mhchem.min.js @@ -0,0 +1 @@ +!function(t,e){if("object"==typeof exports&&"object"==typeof module)module.exports=e(require("katex"));else if("function"==typeof define&&define.amd)define(["katex"],e);else{var n="object"==typeof exports?e(require("katex")):e(t.katex);for(var o in n)("object"==typeof exports?exports:t)[o]=n[o]}}("undefined"!=typeof self?self:this,(function(t){return function(){"use strict";var e={771:function(e){e.exports=t}},n={};function o(t){var a=n[t];if(void 0!==a)return a.exports;var r=n[t]={exports:{}};return e[t](r,r.exports,o),r.exports}o.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return o.d(e,{a:e}),e},o.d=function(t,e){for(var n in e)o.o(e,n)&&!o.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},o.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)};var a={};return function(){var t=o(771),e=o.n(t);e().__defineMacro("\\ce",(function(t){return n(t.consumeArgs(1)[0],"ce")})),e().__defineMacro("\\pu",(function(t){return n(t.consumeArgs(1)[0],"pu")})),e().__defineMacro("\\tripledash","{\\vphantom{-}\\raisebox{2.56mu}{$\\mkern2mu\\tiny\\text{-}\\mkern1mu\\text{-}\\mkern1mu\\text{-}\\mkern2mu$}}");var n=function(t,e){for(var n="",o=t.length&&t[t.length-1].loc.start,i=t.length-1;i>=0;i--)t[i].loc.start>o&&(n+=" ",o=t[i].loc.start),n+=t[i].text,o+=t[i].text.length;return r.go(a.go(n,e))},a={go:function(t,e){if(!t)return[];void 0===e&&(e="ce");var n,o="0",r={};r.parenthesisLevel=0,t=(t=(t=t.replace(/\n/g," ")).replace(/[\u2212\u2013\u2014\u2010]/g,"-")).replace(/[\u2026]/g,"...");for(var i=10,c=[];;){n!==t?(i=10,n=t):i--;var u=a.stateMachines[e],p=u.transitions[o]||u.transitions["*"];t:for(var s=0;s<p.length;s++){var _=a.patterns.match_(p[s].pattern,t);if(_){for(var d=p[s].task,m=0;m<d.action_.length;m++){var l;if(u.actions[d.action_[m].type_])l=u.actions[d.action_[m].type_](r,_.match_,d.action_[m].option);else{if(!a.actions[d.action_[m].type_])throw["MhchemBugA","mhchem bug A. Please report. ("+d.action_[m].type_+")"];l=a.actions[d.action_[m].type_](r,_.match_,d.action_[m].option)}a.concatArray(c,l)}if(o=d.nextState||o,!(t.length>0))return c;if(d.revisit||(t=_.remainder),!d.toContinue)break t}}if(i<=0)throw["MhchemBugU","mhchem bug U. Please report."]}},concatArray:function(t,e){if(e)if(Array.isArray(e))for(var n=0;n<e.length;n++)t.push(e[n]);else t.push(e)},patterns:{patterns:{empty:/^$/,else:/^./,else2:/^./,space:/^\s/,"space A":/^\s(?=[A-Z\\$])/,space$:/^\s$/,"a-z":/^[a-z]/,x:/^x/,x$:/^x$/,i$:/^i$/,letters:/^(?:[a-zA-Z\u03B1-\u03C9\u0391-\u03A9?@]|(?:\\(?:alpha|beta|gamma|delta|epsilon|zeta|eta|theta|iota|kappa|lambda|mu|nu|xi|omicron|pi|rho|sigma|tau|upsilon|phi|chi|psi|omega|Gamma|Delta|Theta|Lambda|Xi|Pi|Sigma|Upsilon|Phi|Psi|Omega)(?:\s+|\{\}|(?![a-zA-Z]))))+/,"\\greek":/^\\(?:alpha|beta|gamma|delta|epsilon|zeta|eta|theta|iota|kappa|lambda|mu|nu|xi|omicron|pi|rho|sigma|tau|upsilon|phi|chi|psi|omega|Gamma|Delta|Theta|Lambda|Xi|Pi|Sigma|Upsilon|Phi|Psi|Omega)(?:\s+|\{\}|(?![a-zA-Z]))/,"one lowercase latin letter $":/^(?:([a-z])(?:$|[^a-zA-Z]))$/,"$one lowercase latin letter$ $":/^\$(?:([a-z])(?:$|[^a-zA-Z]))\$$/,"one lowercase greek letter $":/^(?:\$?[\u03B1-\u03C9]\$?|\$?\\(?:alpha|beta|gamma|delta|epsilon|zeta|eta|theta|iota|kappa|lambda|mu|nu|xi|omicron|pi|rho|sigma|tau|upsilon|phi|chi|psi|omega)\s*\$?)(?:\s+|\{\}|(?![a-zA-Z]))$/,digits:/^[0-9]+/,"-9.,9":/^[+\-]?(?:[0-9]+(?:[,.][0-9]+)?|[0-9]*(?:\.[0-9]+))/,"-9.,9 no missing 0":/^[+\-]?[0-9]+(?:[.,][0-9]+)?/,"(-)(9.,9)(e)(99)":function(t){var e=t.match(/^(\+\-|\+\/\-|\+|\-|\\pm\s?)?([0-9]+(?:[,.][0-9]+)?|[0-9]*(?:\.[0-9]+))?(\((?:[0-9]+(?:[,.][0-9]+)?|[0-9]*(?:\.[0-9]+))\))?(?:([eE]|\s*(\*|x|\\times|\u00D7)\s*10\^)([+\-]?[0-9]+|\{[+\-]?[0-9]+\}))?/);return e&&e[0]?{match_:e.splice(1),remainder:t.substr(e[0].length)}:null},"(-)(9)^(-9)":function(t){var e=t.match(/^(\+\-|\+\/\-|\+|\-|\\pm\s?)?([0-9]+(?:[,.][0-9]+)?|[0-9]*(?:\.[0-9]+)?)\^([+\-]?[0-9]+|\{[+\-]?[0-9]+\})/);return e&&e[0]?{match_:e.splice(1),remainder:t.substr(e[0].length)}:null},"state of aggregation $":function(t){var e=a.patterns.findObserveGroups(t,"",/^\([a-z]{1,3}(?=[\),])/,")","");if(e&&e.remainder.match(/^($|[\s,;\)\]\}])/))return e;var n=t.match(/^(?:\((?:\\ca\s?)?\$[amothc]\$\))/);return n?{match_:n[0],remainder:t.substr(n[0].length)}:null},"_{(state of aggregation)}$":/^_\{(\([a-z]{1,3}\))\}/,"{[(":/^(?:\\\{|\[|\()/,")]}":/^(?:\)|\]|\\\})/,", ":/^[,;]\s*/,",":/^[,;]/,".":/^[.]/,". ":/^([.\u22C5\u00B7\u2022])\s*/,"...":/^\.\.\.(?=$|[^.])/,"* ":/^([*])\s*/,"^{(...)}":function(t){return a.patterns.findObserveGroups(t,"^{","","","}")},"^($...$)":function(t){return a.patterns.findObserveGroups(t,"^","$","$","")},"^a":/^\^([0-9]+|[^\\_])/,"^\\x{}{}":function(t){return a.patterns.findObserveGroups(t,"^",/^\\[a-zA-Z]+\{/,"}","","","{","}","",!0)},"^\\x{}":function(t){return a.patterns.findObserveGroups(t,"^",/^\\[a-zA-Z]+\{/,"}","")},"^\\x":/^\^(\\[a-zA-Z]+)\s*/,"^(-1)":/^\^(-?\d+)/,"'":/^'/,"_{(...)}":function(t){return a.patterns.findObserveGroups(t,"_{","","","}")},"_($...$)":function(t){return a.patterns.findObserveGroups(t,"_","$","$","")},_9:/^_([+\-]?[0-9]+|[^\\])/,"_\\x{}{}":function(t){return a.patterns.findObserveGroups(t,"_",/^\\[a-zA-Z]+\{/,"}","","","{","}","",!0)},"_\\x{}":function(t){return a.patterns.findObserveGroups(t,"_",/^\\[a-zA-Z]+\{/,"}","")},"_\\x":/^_(\\[a-zA-Z]+)\s*/,"^_":/^(?:\^(?=_)|\_(?=\^)|[\^_]$)/,"{}":/^\{\}/,"{...}":function(t){return a.patterns.findObserveGroups(t,"","{","}","")},"{(...)}":function(t){return a.patterns.findObserveGroups(t,"{","","","}")},"$...$":function(t){return a.patterns.findObserveGroups(t,"","$","$","")},"${(...)}$":function(t){return a.patterns.findObserveGroups(t,"${","","","}$")},"$(...)$":function(t){return a.patterns.findObserveGroups(t,"$","","","$")},"=<>":/^[=<>]/,"#":/^[#\u2261]/,"+":/^\+/,"-$":/^-(?=[\s_},;\]/]|$|\([a-z]+\))/,"-9":/^-(?=[0-9])/,"- orbital overlap":/^-(?=(?:[spd]|sp)(?:$|[\s,;\)\]\}]))/,"-":/^-/,"pm-operator":/^(?:\\pm|\$\\pm\$|\+-|\+\/-)/,operator:/^(?:\+|(?:[\-=<>]|<<|>>|\\approx|\$\\approx\$)(?=\s|$|-?[0-9]))/,arrowUpDown:/^(?:v|\(v\)|\^|\(\^\))(?=$|[\s,;\)\]\}])/,"\\bond{(...)}":function(t){return a.patterns.findObserveGroups(t,"\\bond{","","","}")},"->":/^(?:<->|<-->|->|<-|<=>>|<<=>|<=>|[\u2192\u27F6\u21CC])/,CMT:/^[CMT](?=\[)/,"[(...)]":function(t){return a.patterns.findObserveGroups(t,"[","","","]")},"1st-level escape":/^(&|\\\\|\\hline)\s*/,"\\,":/^(?:\\[,\ ;:])/,"\\x{}{}":function(t){return a.patterns.findObserveGroups(t,"",/^\\[a-zA-Z]+\{/,"}","","","{","}","",!0)},"\\x{}":function(t){return a.patterns.findObserveGroups(t,"",/^\\[a-zA-Z]+\{/,"}","")},"\\ca":/^\\ca(?:\s+|(?![a-zA-Z]))/,"\\x":/^(?:\\[a-zA-Z]+\s*|\\[_&{}%])/,orbital:/^(?:[0-9]{1,2}[spdfgh]|[0-9]{0,2}sp)(?=$|[^a-zA-Z])/,others:/^[\/~|]/,"\\frac{(...)}":function(t){return a.patterns.findObserveGroups(t,"\\frac{","","","}","{","","","}")},"\\overset{(...)}":function(t){return a.patterns.findObserveGroups(t,"\\overset{","","","}","{","","","}")},"\\underset{(...)}":function(t){return a.patterns.findObserveGroups(t,"\\underset{","","","}","{","","","}")},"\\underbrace{(...)}":function(t){return a.patterns.findObserveGroups(t,"\\underbrace{","","","}_","{","","","}")},"\\color{(...)}0":function(t){return a.patterns.findObserveGroups(t,"\\color{","","","}")},"\\color{(...)}{(...)}1":function(t){return a.patterns.findObserveGroups(t,"\\color{","","","}","{","","","}")},"\\color(...){(...)}2":function(t){return a.patterns.findObserveGroups(t,"\\color","\\","",/^(?=\{)/,"{","","","}")},"\\ce{(...)}":function(t){return a.patterns.findObserveGroups(t,"\\ce{","","","}")},oxidation$:/^(?:[+-][IVX]+|\\pm\s*0|\$\\pm\$\s*0)$/,"d-oxidation$":/^(?:[+-]?\s?[IVX]+|\\pm\s*0|\$\\pm\$\s*0)$/,"roman numeral":/^[IVX]+/,"1/2$":/^[+\-]?(?:[0-9]+|\$[a-z]\$|[a-z])\/[0-9]+(?:\$[a-z]\$|[a-z])?$/,amount:function(t){var e;if(e=t.match(/^(?:(?:(?:\([+\-]?[0-9]+\/[0-9]+\)|[+\-]?(?:[0-9]+|\$[a-z]\$|[a-z])\/[0-9]+|[+\-]?[0-9]+[.,][0-9]+|[+\-]?\.[0-9]+|[+\-]?[0-9]+)(?:[a-z](?=\s*[A-Z]))?)|[+\-]?[a-z](?=\s*[A-Z])|\+(?!\s))/))return{match_:e[0],remainder:t.substr(e[0].length)};var n=a.patterns.findObserveGroups(t,"","$","$","");return n&&(e=n.match_.match(/^\$(?:\(?[+\-]?(?:[0-9]*[a-z]?[+\-])?[0-9]*[a-z](?:[+\-][0-9]*[a-z]?)?\)?|\+|-)\$$/))?{match_:e[0],remainder:t.substr(e[0].length)}:null},amount2:function(t){return this.amount(t)},"(KV letters),":/^(?:[A-Z][a-z]{0,2}|i)(?=,)/,formula$:function(t){if(t.match(/^\([a-z]+\)$/))return null;var e=t.match(/^(?:[a-z]|(?:[0-9\ \+\-\,\.\(\)]+[a-z])+[0-9\ \+\-\,\.\(\)]*|(?:[a-z][0-9\ \+\-\,\.\(\)]+)+[a-z]?)$/);return e?{match_:e[0],remainder:t.substr(e[0].length)}:null},uprightEntities:/^(?:pH|pOH|pC|pK|iPr|iBu)(?=$|[^a-zA-Z])/,"/":/^\s*(\/)\s*/,"//":/^\s*(\/\/)\s*/,"*":/^\s*[*.]\s*/},findObserveGroups:function(t,e,n,o,a,r,i,c,u,p){var s=function(t,e){if("string"==typeof e)return 0!==t.indexOf(e)?null:e;var n=t.match(e);return n?n[0]:null},_=s(t,e);if(null===_)return null;if(t=t.substr(_.length),null===(_=s(t,n)))return null;var d=function(t,e,n){for(var o=0;e<t.length;){var a=t.charAt(e),r=s(t.substr(e),n);if(null!==r&&0===o)return{endMatchBegin:e,endMatchEnd:e+r.length};if("{"===a)o++;else if("}"===a){if(0===o)throw["ExtraCloseMissingOpen","Extra close brace or missing open brace"];o--}e++}return null}(t,_.length,o||a);if(null===d)return null;var m=t.substring(0,o?d.endMatchEnd:d.endMatchBegin);if(r||i){var l=this.findObserveGroups(t.substr(d.endMatchEnd),r,i,c,u);if(null===l)return null;var f=[m,l.match_];return{match_:p?f.join(""):f,remainder:l.remainder}}return{match_:m,remainder:t.substr(d.endMatchEnd)}},match_:function(t,e){var n=a.patterns.patterns[t];if(void 0===n)throw["MhchemBugP","mhchem bug P. Please report. ("+t+")"];if("function"==typeof n)return a.patterns.patterns[t](e);var o=e.match(n);return o?{match_:o[2]?[o[1],o[2]]:o[1]?o[1]:o[0],remainder:e.substr(o[0].length)}:null}},actions:{"a=":function(t,e){t.a=(t.a||"")+e},"b=":function(t,e){t.b=(t.b||"")+e},"p=":function(t,e){t.p=(t.p||"")+e},"o=":function(t,e){t.o=(t.o||"")+e},"q=":function(t,e){t.q=(t.q||"")+e},"d=":function(t,e){t.d=(t.d||"")+e},"rm=":function(t,e){t.rm=(t.rm||"")+e},"text=":function(t,e){t.text_=(t.text_||"")+e},insert:function(t,e,n){return{type_:n}},"insert+p1":function(t,e,n){return{type_:n,p1:e}},"insert+p1+p2":function(t,e,n){return{type_:n,p1:e[0],p2:e[1]}},copy:function(t,e){return e},rm:function(t,e){return{type_:"rm",p1:e||""}},text:function(t,e){return a.go(e,"text")},"{text}":function(t,e){var n=["{"];return a.concatArray(n,a.go(e,"text")),n.push("}"),n},"tex-math":function(t,e){return a.go(e,"tex-math")},"tex-math tight":function(t,e){return a.go(e,"tex-math tight")},bond:function(t,e,n){return{type_:"bond",kind_:n||e}},"color0-output":function(t,e){return{type_:"color0",color:e[0]}},ce:function(t,e){return a.go(e)},"1/2":function(t,e){var n=[];e.match(/^[+\-]/)&&(n.push(e.substr(0,1)),e=e.substr(1));var o=e.match(/^([0-9]+|\$[a-z]\$|[a-z])\/([0-9]+)(\$[a-z]\$|[a-z])?$/);return o[1]=o[1].replace(/\$/g,""),n.push({type_:"frac",p1:o[1],p2:o[2]}),o[3]&&(o[3]=o[3].replace(/\$/g,""),n.push({type_:"tex-math",p1:o[3]})),n},"9,9":function(t,e){return a.go(e,"9,9")}},createTransitions:function(t){var e,n,o,a,r={};for(e in t)for(n in t[e])for(o=n.split("|"),t[e][n].stateArray=o,a=0;a<o.length;a++)r[o[a]]=[];for(e in t)for(n in t[e])for(o=t[e][n].stateArray||[],a=0;a<o.length;a++){var i=t[e][n];if(i.action_){i.action_=[].concat(i.action_);for(var c=0;c<i.action_.length;c++)"string"==typeof i.action_[c]&&(i.action_[c]={type_:i.action_[c]})}else i.action_=[];for(var u=e.split("|"),p=0;p<u.length;p++)if("*"===o[a])for(var s in r)r[s].push({pattern:u[p],task:i});else r[o[a]].push({pattern:u[p],task:i})}return r},stateMachines:{}};a.stateMachines={ce:{transitions:a.createTransitions({empty:{"*":{action_:"output"}},else:{"0|1|2":{action_:"beginsWithBond=false",revisit:!0,toContinue:!0}},oxidation$:{0:{action_:"oxidation-output"}},CMT:{r:{action_:"rdt=",nextState:"rt"},rd:{action_:"rqt=",nextState:"rdt"}},arrowUpDown:{"0|1|2|as":{action_:["sb=false","output","operator"],nextState:"1"}},uprightEntities:{"0|1|2":{action_:["o=","output"],nextState:"1"}},orbital:{"0|1|2|3":{action_:"o=",nextState:"o"}},"->":{"0|1|2|3":{action_:"r=",nextState:"r"},"a|as":{action_:["output","r="],nextState:"r"},"*":{action_:["output","r="],nextState:"r"}},"+":{o:{action_:"d= kv",nextState:"d"},"d|D":{action_:"d=",nextState:"d"},q:{action_:"d=",nextState:"qd"},"qd|qD":{action_:"d=",nextState:"qd"},dq:{action_:["output","d="],nextState:"d"},3:{action_:["sb=false","output","operator"],nextState:"0"}},amount:{"0|2":{action_:"a=",nextState:"a"}},"pm-operator":{"0|1|2|a|as":{action_:["sb=false","output",{type_:"operator",option:"\\pm"}],nextState:"0"}},operator:{"0|1|2|a|as":{action_:["sb=false","output","operator"],nextState:"0"}},"-$":{"o|q":{action_:["charge or bond","output"],nextState:"qd"},d:{action_:"d=",nextState:"d"},D:{action_:["output",{type_:"bond",option:"-"}],nextState:"3"},q:{action_:"d=",nextState:"qd"},qd:{action_:"d=",nextState:"qd"},"qD|dq":{action_:["output",{type_:"bond",option:"-"}],nextState:"3"}},"-9":{"3|o":{action_:["output",{type_:"insert",option:"hyphen"}],nextState:"3"}},"- orbital overlap":{o:{action_:["output",{type_:"insert",option:"hyphen"}],nextState:"2"},d:{action_:["output",{type_:"insert",option:"hyphen"}],nextState:"2"}},"-":{"0|1|2":{action_:[{type_:"output",option:1},"beginsWithBond=true",{type_:"bond",option:"-"}],nextState:"3"},3:{action_:{type_:"bond",option:"-"}},a:{action_:["output",{type_:"insert",option:"hyphen"}],nextState:"2"},as:{action_:[{type_:"output",option:2},{type_:"bond",option:"-"}],nextState:"3"},b:{action_:"b="},o:{action_:{type_:"- after o/d",option:!1},nextState:"2"},q:{action_:{type_:"- after o/d",option:!1},nextState:"2"},"d|qd|dq":{action_:{type_:"- after o/d",option:!0},nextState:"2"},"D|qD|p":{action_:["output",{type_:"bond",option:"-"}],nextState:"3"}},amount2:{"1|3":{action_:"a=",nextState:"a"}},letters:{"0|1|2|3|a|as|b|p|bp|o":{action_:"o=",nextState:"o"},"q|dq":{action_:["output","o="],nextState:"o"},"d|D|qd|qD":{action_:"o after d",nextState:"o"}},digits:{o:{action_:"q=",nextState:"q"},"d|D":{action_:"q=",nextState:"dq"},q:{action_:["output","o="],nextState:"o"},a:{action_:"o=",nextState:"o"}},"space A":{"b|p|bp":{}},space:{a:{nextState:"as"},0:{action_:"sb=false"},"1|2":{action_:"sb=true"},"r|rt|rd|rdt|rdq":{action_:"output",nextState:"0"},"*":{action_:["output","sb=true"],nextState:"1"}},"1st-level escape":{"1|2":{action_:["output",{type_:"insert+p1",option:"1st-level escape"}]},"*":{action_:["output",{type_:"insert+p1",option:"1st-level escape"}],nextState:"0"}},"[(...)]":{"r|rt":{action_:"rd=",nextState:"rd"},"rd|rdt":{action_:"rq=",nextState:"rdq"}},"...":{"o|d|D|dq|qd|qD":{action_:["output",{type_:"bond",option:"..."}],nextState:"3"},"*":{action_:[{type_:"output",option:1},{type_:"insert",option:"ellipsis"}],nextState:"1"}},". |* ":{"*":{action_:["output",{type_:"insert",option:"addition compound"}],nextState:"1"}},"state of aggregation $":{"*":{action_:["output","state of aggregation"],nextState:"1"}},"{[(":{"a|as|o":{action_:["o=","output","parenthesisLevel++"],nextState:"2"},"0|1|2|3":{action_:["o=","output","parenthesisLevel++"],nextState:"2"},"*":{action_:["output","o=","output","parenthesisLevel++"],nextState:"2"}},")]}":{"0|1|2|3|b|p|bp|o":{action_:["o=","parenthesisLevel--"],nextState:"o"},"a|as|d|D|q|qd|qD|dq":{action_:["output","o=","parenthesisLevel--"],nextState:"o"}},", ":{"*":{action_:["output","comma"],nextState:"0"}},"^_":{"*":{}},"^{(...)}|^($...$)":{"0|1|2|as":{action_:"b=",nextState:"b"},p:{action_:"b=",nextState:"bp"},"3|o":{action_:"d= kv",nextState:"D"},q:{action_:"d=",nextState:"qD"},"d|D|qd|qD|dq":{action_:["output","d="],nextState:"D"}},"^a|^\\x{}{}|^\\x{}|^\\x|'":{"0|1|2|as":{action_:"b=",nextState:"b"},p:{action_:"b=",nextState:"bp"},"3|o":{action_:"d= kv",nextState:"d"},q:{action_:"d=",nextState:"qd"},"d|qd|D|qD":{action_:"d="},dq:{action_:["output","d="],nextState:"d"}},"_{(state of aggregation)}$":{"d|D|q|qd|qD|dq":{action_:["output","q="],nextState:"q"}},"_{(...)}|_($...$)|_9|_\\x{}{}|_\\x{}|_\\x":{"0|1|2|as":{action_:"p=",nextState:"p"},b:{action_:"p=",nextState:"bp"},"3|o":{action_:"q=",nextState:"q"},"d|D":{action_:"q=",nextState:"dq"},"q|qd|qD|dq":{action_:["output","q="],nextState:"q"}},"=<>":{"0|1|2|3|a|as|o|q|d|D|qd|qD|dq":{action_:[{type_:"output",option:2},"bond"],nextState:"3"}},"#":{"0|1|2|3|a|as|o":{action_:[{type_:"output",option:2},{type_:"bond",option:"#"}],nextState:"3"}},"{}":{"*":{action_:{type_:"output",option:1},nextState:"1"}},"{...}":{"0|1|2|3|a|as|b|p|bp":{action_:"o=",nextState:"o"},"o|d|D|q|qd|qD|dq":{action_:["output","o="],nextState:"o"}},"$...$":{a:{action_:"a="},"0|1|2|3|as|b|p|bp|o":{action_:"o=",nextState:"o"},"as|o":{action_:"o="},"q|d|D|qd|qD|dq":{action_:["output","o="],nextState:"o"}},"\\bond{(...)}":{"*":{action_:[{type_:"output",option:2},"bond"],nextState:"3"}},"\\frac{(...)}":{"*":{action_:[{type_:"output",option:1},"frac-output"],nextState:"3"}},"\\overset{(...)}":{"*":{action_:[{type_:"output",option:2},"overset-output"],nextState:"3"}},"\\underset{(...)}":{"*":{action_:[{type_:"output",option:2},"underset-output"],nextState:"3"}},"\\underbrace{(...)}":{"*":{action_:[{type_:"output",option:2},"underbrace-output"],nextState:"3"}},"\\color{(...)}{(...)}1|\\color(...){(...)}2":{"*":{action_:[{type_:"output",option:2},"color-output"],nextState:"3"}},"\\color{(...)}0":{"*":{action_:[{type_:"output",option:2},"color0-output"]}},"\\ce{(...)}":{"*":{action_:[{type_:"output",option:2},"ce"],nextState:"3"}},"\\,":{"*":{action_:[{type_:"output",option:1},"copy"],nextState:"1"}},"\\x{}{}|\\x{}|\\x":{"0|1|2|3|a|as|b|p|bp|o|c0":{action_:["o=","output"],nextState:"3"},"*":{action_:["output","o=","output"],nextState:"3"}},others:{"*":{action_:[{type_:"output",option:1},"copy"],nextState:"3"}},else2:{a:{action_:"a to o",nextState:"o",revisit:!0},as:{action_:["output","sb=true"],nextState:"1",revisit:!0},"r|rt|rd|rdt|rdq":{action_:["output"],nextState:"0",revisit:!0},"*":{action_:["output","copy"],nextState:"3"}}}),actions:{"o after d":function(t,e){var n;if((t.d||"").match(/^[0-9]+$/)){var o=t.d;t.d=void 0,n=this.output(t),t.b=o}else n=this.output(t);return a.actions["o="](t,e),n},"d= kv":function(t,e){t.d=e,t.dType="kv"},"charge or bond":function(t,e){if(t.beginsWithBond){var n=[];return a.concatArray(n,this.output(t)),a.concatArray(n,a.actions.bond(t,e,"-")),n}t.d=e},"- after o/d":function(t,e,n){var o=a.patterns.match_("orbital",t.o||""),r=a.patterns.match_("one lowercase greek letter $",t.o||""),i=a.patterns.match_("one lowercase latin letter $",t.o||""),c=a.patterns.match_("$one lowercase latin letter$ $",t.o||""),u="-"===e&&(o&&""===o.remainder||r||i||c);!u||t.a||t.b||t.p||t.d||t.q||o||!i||(t.o="$"+t.o+"$");var p=[];return u?(a.concatArray(p,this.output(t)),p.push({type_:"hyphen"})):(o=a.patterns.match_("digits",t.d||""),n&&o&&""===o.remainder?(a.concatArray(p,a.actions["d="](t,e)),a.concatArray(p,this.output(t))):(a.concatArray(p,this.output(t)),a.concatArray(p,a.actions.bond(t,e,"-")))),p},"a to o":function(t){t.o=t.a,t.a=void 0},"sb=true":function(t){t.sb=!0},"sb=false":function(t){t.sb=!1},"beginsWithBond=true":function(t){t.beginsWithBond=!0},"beginsWithBond=false":function(t){t.beginsWithBond=!1},"parenthesisLevel++":function(t){t.parenthesisLevel++},"parenthesisLevel--":function(t){t.parenthesisLevel--},"state of aggregation":function(t,e){return{type_:"state of aggregation",p1:a.go(e,"o")}},comma:function(t,e){var n=e.replace(/\s*$/,"");return n!==e&&0===t.parenthesisLevel?{type_:"comma enumeration L",p1:n}:{type_:"comma enumeration M",p1:n}},output:function(t,e,n){var o,r,i;t.r?(r="M"===t.rdt?a.go(t.rd,"tex-math"):"T"===t.rdt?[{type_:"text",p1:t.rd||""}]:a.go(t.rd),i="M"===t.rqt?a.go(t.rq,"tex-math"):"T"===t.rqt?[{type_:"text",p1:t.rq||""}]:a.go(t.rq),o={type_:"arrow",r:t.r,rd:r,rq:i}):(o=[],(t.a||t.b||t.p||t.o||t.q||t.d||n)&&(t.sb&&o.push({type_:"entitySkip"}),t.o||t.q||t.d||t.b||t.p||2===n?t.o||t.q||t.d||!t.b&&!t.p?t.o&&"kv"===t.dType&&a.patterns.match_("d-oxidation$",t.d||"")?t.dType="oxidation":t.o&&"kv"===t.dType&&!t.q&&(t.dType=void 0):(t.o=t.a,t.d=t.b,t.q=t.p,t.a=t.b=t.p=void 0):(t.o=t.a,t.a=void 0),o.push({type_:"chemfive",a:a.go(t.a,"a"),b:a.go(t.b,"bd"),p:a.go(t.p,"pq"),o:a.go(t.o,"o"),q:a.go(t.q,"pq"),d:a.go(t.d,"oxidation"===t.dType?"oxidation":"bd"),dType:t.dType})));for(var c in t)"parenthesisLevel"!==c&&"beginsWithBond"!==c&&delete t[c];return o},"oxidation-output":function(t,e){var n=["{"];return a.concatArray(n,a.go(e,"oxidation")),n.push("}"),n},"frac-output":function(t,e){return{type_:"frac-ce",p1:a.go(e[0]),p2:a.go(e[1])}},"overset-output":function(t,e){return{type_:"overset",p1:a.go(e[0]),p2:a.go(e[1])}},"underset-output":function(t,e){return{type_:"underset",p1:a.go(e[0]),p2:a.go(e[1])}},"underbrace-output":function(t,e){return{type_:"underbrace",p1:a.go(e[0]),p2:a.go(e[1])}},"color-output":function(t,e){return{type_:"color",color1:e[0],color2:a.go(e[1])}},"r=":function(t,e){t.r=e},"rdt=":function(t,e){t.rdt=e},"rd=":function(t,e){t.rd=e},"rqt=":function(t,e){t.rqt=e},"rq=":function(t,e){t.rq=e},operator:function(t,e,n){return{type_:"operator",kind_:n||e}}}},a:{transitions:a.createTransitions({empty:{"*":{}},"1/2$":{0:{action_:"1/2"}},else:{0:{nextState:"1",revisit:!0}},"$(...)$":{"*":{action_:"tex-math tight",nextState:"1"}},",":{"*":{action_:{type_:"insert",option:"commaDecimal"}}},else2:{"*":{action_:"copy"}}}),actions:{}},o:{transitions:a.createTransitions({empty:{"*":{}},"1/2$":{0:{action_:"1/2"}},else:{0:{nextState:"1",revisit:!0}},letters:{"*":{action_:"rm"}},"\\ca":{"*":{action_:{type_:"insert",option:"circa"}}},"\\x{}{}|\\x{}|\\x":{"*":{action_:"copy"}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},"{(...)}":{"*":{action_:"{text}"}},else2:{"*":{action_:"copy"}}}),actions:{}},text:{transitions:a.createTransitions({empty:{"*":{action_:"output"}},"{...}":{"*":{action_:"text="}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},"\\greek":{"*":{action_:["output","rm"]}},"\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:["output","copy"]}},else:{"*":{action_:"text="}}}),actions:{output:function(t){if(t.text_){var e={type_:"text",p1:t.text_};for(var n in t)delete t[n];return e}}}},pq:{transitions:a.createTransitions({empty:{"*":{}},"state of aggregation $":{"*":{action_:"state of aggregation"}},i$:{0:{nextState:"!f",revisit:!0}},"(KV letters),":{0:{action_:"rm",nextState:"0"}},formula$:{0:{nextState:"f",revisit:!0}},"1/2$":{0:{action_:"1/2"}},else:{0:{nextState:"!f",revisit:!0}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},"{(...)}":{"*":{action_:"text"}},"a-z":{f:{action_:"tex-math"}},letters:{"*":{action_:"rm"}},"-9.,9":{"*":{action_:"9,9"}},",":{"*":{action_:{type_:"insert+p1",option:"comma enumeration S"}}},"\\color{(...)}{(...)}1|\\color(...){(...)}2":{"*":{action_:"color-output"}},"\\color{(...)}0":{"*":{action_:"color0-output"}},"\\ce{(...)}":{"*":{action_:"ce"}},"\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:"copy"}},else2:{"*":{action_:"copy"}}}),actions:{"state of aggregation":function(t,e){return{type_:"state of aggregation subscript",p1:a.go(e,"o")}},"color-output":function(t,e){return{type_:"color",color1:e[0],color2:a.go(e[1],"pq")}}}},bd:{transitions:a.createTransitions({empty:{"*":{}},x$:{0:{nextState:"!f",revisit:!0}},formula$:{0:{nextState:"f",revisit:!0}},else:{0:{nextState:"!f",revisit:!0}},"-9.,9 no missing 0":{"*":{action_:"9,9"}},".":{"*":{action_:{type_:"insert",option:"electron dot"}}},"a-z":{f:{action_:"tex-math"}},x:{"*":{action_:{type_:"insert",option:"KV x"}}},letters:{"*":{action_:"rm"}},"'":{"*":{action_:{type_:"insert",option:"prime"}}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},"{(...)}":{"*":{action_:"text"}},"\\color{(...)}{(...)}1|\\color(...){(...)}2":{"*":{action_:"color-output"}},"\\color{(...)}0":{"*":{action_:"color0-output"}},"\\ce{(...)}":{"*":{action_:"ce"}},"\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:"copy"}},else2:{"*":{action_:"copy"}}}),actions:{"color-output":function(t,e){return{type_:"color",color1:e[0],color2:a.go(e[1],"bd")}}}},oxidation:{transitions:a.createTransitions({empty:{"*":{}},"roman numeral":{"*":{action_:"roman-numeral"}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},else:{"*":{action_:"copy"}}}),actions:{"roman-numeral":function(t,e){return{type_:"roman numeral",p1:e||""}}}},"tex-math":{transitions:a.createTransitions({empty:{"*":{action_:"output"}},"\\ce{(...)}":{"*":{action_:["output","ce"]}},"{...}|\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:"o="}},else:{"*":{action_:"o="}}}),actions:{output:function(t){if(t.o){var e={type_:"tex-math",p1:t.o};for(var n in t)delete t[n];return e}}}},"tex-math tight":{transitions:a.createTransitions({empty:{"*":{action_:"output"}},"\\ce{(...)}":{"*":{action_:["output","ce"]}},"{...}|\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:"o="}},"-|+":{"*":{action_:"tight operator"}},else:{"*":{action_:"o="}}}),actions:{"tight operator":function(t,e){t.o=(t.o||"")+"{"+e+"}"},output:function(t){if(t.o){var e={type_:"tex-math",p1:t.o};for(var n in t)delete t[n];return e}}}},"9,9":{transitions:a.createTransitions({empty:{"*":{}},",":{"*":{action_:"comma"}},else:{"*":{action_:"copy"}}}),actions:{comma:function(){return{type_:"commaDecimal"}}}},pu:{transitions:a.createTransitions({empty:{"*":{action_:"output"}},space$:{"*":{action_:["output","space"]}},"{[(|)]}":{"0|a":{action_:"copy"}},"(-)(9)^(-9)":{0:{action_:"number^",nextState:"a"}},"(-)(9.,9)(e)(99)":{0:{action_:"enumber",nextState:"a"}},space:{"0|a":{}},"pm-operator":{"0|a":{action_:{type_:"operator",option:"\\pm"},nextState:"0"}},operator:{"0|a":{action_:"copy",nextState:"0"}},"//":{d:{action_:"o=",nextState:"/"}},"/":{d:{action_:"o=",nextState:"/"}},"{...}|else":{"0|d":{action_:"d=",nextState:"d"},a:{action_:["space","d="],nextState:"d"},"/|q":{action_:"q=",nextState:"q"}}}),actions:{enumber:function(t,e){var n=[];return"+-"===e[0]||"+/-"===e[0]?n.push("\\pm "):e[0]&&n.push(e[0]),e[1]&&(a.concatArray(n,a.go(e[1],"pu-9,9")),e[2]&&(e[2].match(/[,.]/)?a.concatArray(n,a.go(e[2],"pu-9,9")):n.push(e[2])),e[3]=e[4]||e[3],e[3]&&(e[3]=e[3].trim(),"e"===e[3]||"*"===e[3].substr(0,1)?n.push({type_:"cdot"}):n.push({type_:"times"}))),e[3]&&n.push("10^{"+e[5]+"}"),n},"number^":function(t,e){var n=[];return"+-"===e[0]||"+/-"===e[0]?n.push("\\pm "):e[0]&&n.push(e[0]),a.concatArray(n,a.go(e[1],"pu-9,9")),n.push("^{"+e[2]+"}"),n},operator:function(t,e,n){return{type_:"operator",kind_:n||e}},space:function(){return{type_:"pu-space-1"}},output:function(t){var e,n=a.patterns.match_("{(...)}",t.d||"");n&&""===n.remainder&&(t.d=n.match_);var o=a.patterns.match_("{(...)}",t.q||"");if(o&&""===o.remainder&&(t.q=o.match_),t.d&&(t.d=t.d.replace(/\u00B0C|\^oC|\^{o}C/g,"{}^{\\circ}C"),t.d=t.d.replace(/\u00B0F|\^oF|\^{o}F/g,"{}^{\\circ}F")),t.q){t.q=t.q.replace(/\u00B0C|\^oC|\^{o}C/g,"{}^{\\circ}C"),t.q=t.q.replace(/\u00B0F|\^oF|\^{o}F/g,"{}^{\\circ}F");var r={d:a.go(t.d,"pu"),q:a.go(t.q,"pu")};"//"===t.o?e={type_:"pu-frac",p1:r.d,p2:r.q}:(e=r.d,r.d.length>1||r.q.length>1?e.push({type_:" / "}):e.push({type_:"/"}),a.concatArray(e,r.q))}else e=a.go(t.d,"pu-2");for(var i in t)delete t[i];return e}}},"pu-2":{transitions:a.createTransitions({empty:{"*":{action_:"output"}},"*":{"*":{action_:["output","cdot"],nextState:"0"}},"\\x":{"*":{action_:"rm="}},space:{"*":{action_:["output","space"],nextState:"0"}},"^{(...)}|^(-1)":{1:{action_:"^(-1)"}},"-9.,9":{0:{action_:"rm=",nextState:"0"},1:{action_:"^(-1)",nextState:"0"}},"{...}|else":{"*":{action_:"rm=",nextState:"1"}}}),actions:{cdot:function(){return{type_:"tight cdot"}},"^(-1)":function(t,e){t.rm+="^{"+e+"}"},space:function(){return{type_:"pu-space-2"}},output:function(t){var e=[];if(t.rm){var n=a.patterns.match_("{(...)}",t.rm||"");e=n&&""===n.remainder?a.go(n.match_,"pu"):{type_:"rm",p1:t.rm}}for(var o in t)delete t[o];return e}}},"pu-9,9":{transitions:a.createTransitions({empty:{0:{action_:"output-0"},o:{action_:"output-o"}},",":{0:{action_:["output-0","comma"],nextState:"o"}},".":{0:{action_:["output-0","copy"],nextState:"o"}},else:{"*":{action_:"text="}}}),actions:{comma:function(){return{type_:"commaDecimal"}},"output-0":function(t){var e=[];if(t.text_=t.text_||"",t.text_.length>4){var n=t.text_.length%3;0===n&&(n=3);for(var o=t.text_.length-3;o>0;o-=3)e.push(t.text_.substr(o,3)),e.push({type_:"1000 separator"});e.push(t.text_.substr(0,n)),e.reverse()}else e.push(t.text_);for(var a in t)delete t[a];return e},"output-o":function(t){var e=[];if(t.text_=t.text_||"",t.text_.length>4){for(var n=t.text_.length-3,o=0;o<n;o+=3)e.push(t.text_.substr(o,3)),e.push({type_:"1000 separator"});e.push(t.text_.substr(o))}else e.push(t.text_);for(var a in t)delete t[a];return e}}}};var r={go:function(t,e){if(!t)return"";for(var n="",o=!1,a=0;a<t.length;a++){var i=t[a];"string"==typeof i?n+=i:(n+=r._go2(i),"1st-level escape"===i.type_&&(o=!0))}return e||o||!n||(n="{"+n+"}"),n},_goInner:function(t){return t?r.go(t,!0):t},_go2:function(t){var e;switch(t.type_){case"chemfive":e="";var n={a:r._goInner(t.a),b:r._goInner(t.b),p:r._goInner(t.p),o:r._goInner(t.o),q:r._goInner(t.q),d:r._goInner(t.d)};n.a&&(n.a.match(/^[+\-]/)&&(n.a="{"+n.a+"}"),e+=n.a+"\\,"),(n.b||n.p)&&(e+="{\\vphantom{X}}",e+="^{\\hphantom{"+(n.b||"")+"}}_{\\hphantom{"+(n.p||"")+"}}",e+="{\\vphantom{X}}",e+="^{\\smash[t]{\\vphantom{2}}\\mathllap{"+(n.b||"")+"}}",e+="_{\\vphantom{2}\\mathllap{\\smash[t]{"+(n.p||"")+"}}}"),n.o&&(n.o.match(/^[+\-]/)&&(n.o="{"+n.o+"}"),e+=n.o),"kv"===t.dType?((n.d||n.q)&&(e+="{\\vphantom{X}}"),n.d&&(e+="^{"+n.d+"}"),n.q&&(e+="_{\\smash[t]{"+n.q+"}}")):"oxidation"===t.dType?(n.d&&(e+="{\\vphantom{X}}",e+="^{"+n.d+"}"),n.q&&(e+="{\\vphantom{X}}",e+="_{\\smash[t]{"+n.q+"}}")):(n.q&&(e+="{\\vphantom{X}}",e+="_{\\smash[t]{"+n.q+"}}"),n.d&&(e+="{\\vphantom{X}}",e+="^{"+n.d+"}"));break;case"rm":case"roman numeral":e="\\mathrm{"+t.p1+"}";break;case"text":t.p1.match(/[\^_]/)?(t.p1=t.p1.replace(" ","~").replace("-","\\text{-}"),e="\\mathrm{"+t.p1+"}"):e="\\text{"+t.p1+"}";break;case"state of aggregation":e="\\mskip2mu "+r._goInner(t.p1);break;case"state of aggregation subscript":e="\\mskip1mu "+r._goInner(t.p1);break;case"bond":if(!(e=r._getBond(t.kind_)))throw["MhchemErrorBond","mhchem Error. Unknown bond type ("+t.kind_+")"];break;case"frac":var o="\\frac{"+t.p1+"}{"+t.p2+"}";e="\\mathchoice{\\textstyle"+o+"}{"+o+"}{"+o+"}{"+o+"}";break;case"pu-frac":var a="\\frac{"+r._goInner(t.p1)+"}{"+r._goInner(t.p2)+"}";e="\\mathchoice{\\textstyle"+a+"}{"+a+"}{"+a+"}{"+a+"}";break;case"tex-math":case"1st-level escape":e=t.p1+" ";break;case"frac-ce":e="\\frac{"+r._goInner(t.p1)+"}{"+r._goInner(t.p2)+"}";break;case"overset":e="\\overset{"+r._goInner(t.p1)+"}{"+r._goInner(t.p2)+"}";break;case"underset":e="\\underset{"+r._goInner(t.p1)+"}{"+r._goInner(t.p2)+"}";break;case"underbrace":e="\\underbrace{"+r._goInner(t.p1)+"}_{"+r._goInner(t.p2)+"}";break;case"color":e="{\\color{"+t.color1+"}{"+r._goInner(t.color2)+"}}";break;case"color0":e="\\color{"+t.color+"}";break;case"arrow":var i={rd:r._goInner(t.rd),rq:r._goInner(t.rq)},c="\\x"+r._getArrow(t.r);i.rq&&(c+="[{"+i.rq+"}]"),e=c+=i.rd?"{"+i.rd+"}":"{}";break;case"operator":e=r._getOperator(t.kind_);break;case"space":e=" ";break;case"entitySkip":case"pu-space-1":e="~";break;case"pu-space-2":e="\\mkern3mu ";break;case"1000 separator":e="\\mkern2mu ";break;case"commaDecimal":e="{,}";break;case"comma enumeration L":e="{"+t.p1+"}\\mkern6mu ";break;case"comma enumeration M":e="{"+t.p1+"}\\mkern3mu ";break;case"comma enumeration S":e="{"+t.p1+"}\\mkern1mu ";break;case"hyphen":e="\\text{-}";break;case"addition compound":e="\\,{\\cdot}\\,";break;case"electron dot":e="\\mkern1mu \\bullet\\mkern1mu ";break;case"KV x":e="{\\times}";break;case"prime":e="\\prime ";break;case"cdot":e="\\cdot ";break;case"tight cdot":e="\\mkern1mu{\\cdot}\\mkern1mu ";break;case"times":e="\\times ";break;case"circa":e="{\\sim}";break;case"^":e="uparrow";break;case"v":e="downarrow";break;case"ellipsis":e="\\ldots ";break;case"/":e="/";break;case" / ":e="\\,/\\,";break;default:throw["MhchemBugT","mhchem bug T. Please report."]}return e},_getArrow:function(t){switch(t){case"->":case"\u2192":case"\u27f6":return"rightarrow";case"<-":return"leftarrow";case"<->":return"leftrightarrow";case"<--\x3e":return"rightleftarrows";case"<=>":case"\u21cc":return"rightleftharpoons";case"<=>>":return"rightequilibrium";case"<<=>":return"leftequilibrium";default:throw["MhchemBugT","mhchem bug T. Please report."]}},_getBond:function(t){switch(t){case"-":case"1":return"{-}";case"=":case"2":return"{=}";case"#":case"3":return"{\\equiv}";case"~":return"{\\tripledash}";case"~-":return"{\\mathrlap{\\raisebox{-.1em}{$-$}}\\raisebox{.1em}{$\\tripledash$}}";case"~=":case"~--":return"{\\mathrlap{\\raisebox{-.2em}{$-$}}\\mathrlap{\\raisebox{.2em}{$\\tripledash$}}-}";case"-~-":return"{\\mathrlap{\\raisebox{-.2em}{$-$}}\\mathrlap{\\raisebox{.2em}{$-$}}\\tripledash}";case"...":return"{{\\cdot}{\\cdot}{\\cdot}}";case"....":return"{{\\cdot}{\\cdot}{\\cdot}{\\cdot}}";case"->":return"{\\rightarrow}";case"<-":return"{\\leftarrow}";case"<":return"{<}";case">":return"{>}";default:throw["MhchemBugT","mhchem bug T. Please report."]}},_getOperator:function(t){switch(t){case"+":return" {}+{} ";case"-":return" {}-{} ";case"=":return" {}={} ";case"<":return" {}<{} ";case">":return" {}>{} ";case"<<":return" {}\\ll{} ";case">>":return" {}\\gg{} ";case"\\pm":return" {}\\pm{} ";case"\\approx":case"$\\approx$":return" {}\\approx{} ";case"v":case"(v)":return" \\downarrow{} ";case"^":case"(^)":return" \\uparrow{} ";default:throw["MhchemBugT","mhchem bug T. Please report."]}}}}(),a=a.default}()})); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/lute/lute.min.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/lute/lute.min.js new file mode 100644 index 0000000..99716de --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/lute/lute.min.js @@ -0,0 +1,71 @@ +"use strict"; +(function() { + +var $goVersion = "go1.18.10"; +Error.stackTraceLimit=1/0;var $global,$module,$NaN=NaN;if("undefined"!=typeof window?$global=window:"undefined"!=typeof self?$global=self:"undefined"!=typeof global?($global=global).require=require:$global=this,void 0===$global||void 0===$global.Array)throw new Error("no global object found");if("undefined"!=typeof module&&($module=module),!$global.fs&&$global.require)try{var fs=$global.require("fs");"object"==typeof fs&&null!==fs&&0!==Object.keys(fs).length&&($global.fs=fs)}catch(e){}if(!$global.fs){var outputBuf="",decoder=new TextDecoder("utf-8");$global.fs={constants:{O_WRONLY:-1,O_RDWR:-1,O_CREAT:-1,O_TRUNC:-1,O_APPEND:-1,O_EXCL:-1},writeSync:function(e,n){var r=(outputBuf+=decoder.decode(n)).lastIndexOf("\n");return-1!=r&&(console.log(outputBuf.substr(0,r)),outputBuf=outputBuf.substr(r+1)),n.length},write:function(e,n,r,t,i,a){0===r&&t===n.length&&null===i?a(null,this.writeSync(e,n)):a(enosys())}}}var $throwRuntimeError,$linknames={},$packages={},$idCounter=0,$keys=function(e){return e?Object.keys(e):[]},$flushConsole=function(){},$throwNilPointerError=function(){$throwRuntimeError("invalid memory address or nil pointer dereference")},$call=function(e,n,r){return e.apply(n,r)},$makeFunc=function(e){return function(){return $externalize(e(this,new($sliceType($jsObjectPtr))($global.Array.prototype.slice.call(arguments,[]))),$emptyInterface)}},$unused=function(e){},$print=console.log;if(void 0!==$global.process&&$global.require)try{var util=$global.require("util");$print=function(){$global.process.stderr.write(util.format.apply(this,arguments))}}catch(e){}var $println=console.log,$initAllLinknames=function(){for(var e=$keys($packages),n=0;n<e.length;n++){var r=$packages[e[n]].$initLinknames;"function"==typeof r&&r()}},$mapArray=function(e,n){for(var r=new e.constructor(e.length),t=0;t<e.length;t++)r[t]=n(e[t]);return r},$mapIndex=function(e,n){return"function"==typeof e.get?e.get(n):void 0},$mapDelete=function(e,n){"function"==typeof e.delete&&e.delete(n)},$methodVal=function(e,n){var r=e.$methodVals||{};e.$methodVals=r;var t=r[n];return void 0!==t?t:(t=e[n].bind(e),r[n]=t,t)},$methodExpr=function(e,n){var r=e.prototype[n];return void 0===r.$expr&&(r.$expr=function(){$stackDepthOffset--;try{return e.wrapped&&(arguments[0]=new e(arguments[0])),Function.call.apply(r,arguments)}finally{$stackDepthOffset++}}),r.$expr},$ifaceMethodExprs={},$ifaceMethodExpr=function(e){var n=$ifaceMethodExprs["$"+e];return void 0===n&&(n=$ifaceMethodExprs["$"+e]=function(){$stackDepthOffset--;try{return Function.call.apply(arguments[0][e],arguments)}finally{$stackDepthOffset++}}),n},$subslice=function(e,n,r,t){if(void 0===r&&(r=e.$length),void 0===t&&(t=e.$capacity),(n<0||r<n||t<r||r>e.$capacity||t>e.$capacity)&&$throwRuntimeError("slice bounds out of range"),e===e.constructor.nil)return e;var i=new e.constructor(e.$array);return i.$offset=e.$offset+n,i.$length=r-n,i.$capacity=t-n,i},$substring=function(e,n,r){return(n<0||r<n||r>e.length)&&$throwRuntimeError("slice bounds out of range"),e.substring(n,r)},$sliceToNativeArray=function(e){return e.$array.constructor!==Array?e.$array.subarray(e.$offset,e.$offset+e.$length):e.$array.slice(e.$offset,e.$offset+e.$length)},$sliceToGoArray=function(e,n){var r=n.elem;return void 0!==r&&e.$length<r.len&&$throwRuntimeError("cannot convert slice with length "+e.$length+" to pointer to array with length "+r.len),e==e.constructor.nil?n.nil:e.$array.constructor!==Array?e.$array.subarray(e.$offset,e.$offset+r.len):0==e.$offset&&e.$length==e.$capacity&&e.$length==r.len?e.$array:0==r.len?new r([]):void $throwRuntimeError("gopherjs: non-numeric slice to underlying array conversion is not supported for subslices")},$convertSliceType=function(e,n){return e==e.constructor.nil?n.nil:$subslice(new n(e.$array),e.$offset,e.$offset+e.$length)},$decodeRune=function(e,n){var r=e.charCodeAt(n);if(r<128)return[r,1];if(r!=r||r<192)return[65533,1];var t=e.charCodeAt(n+1);if(t!=t||t<128||192<=t)return[65533,1];if(r<224)return(a=(31&r)<<6|63&t)<=127?[65533,1]:[a,2];var i=e.charCodeAt(n+2);if(i!=i||i<128||192<=i)return[65533,1];if(r<240)return(a=(15&r)<<12|(63&t)<<6|63&i)<=2047?[65533,1]:55296<=a&&a<=57343?[65533,1]:[a,3];var a,o=e.charCodeAt(n+3);return o!=o||o<128||192<=o?[65533,1]:r<248?(a=(7&r)<<18|(63&t)<<12|(63&i)<<6|63&o)<=65535||1114111<a?[65533,1]:[a,4]:[65533,1]},$encodeRune=function(e){return(e<0||e>1114111||55296<=e&&e<=57343)&&(e=65533),e<=127?String.fromCharCode(e):e<=2047?String.fromCharCode(192|e>>6,128|63&e):e<=65535?String.fromCharCode(224|e>>12,128|e>>6&63,128|63&e):String.fromCharCode(240|e>>18,128|e>>12&63,128|e>>6&63,128|63&e)},$stringToBytes=function(e){for(var n=new Uint8Array(e.length),r=0;r<e.length;r++)n[r]=e.charCodeAt(r);return n},$bytesToString=function(e){if(0===e.$length)return"";for(var n="",r=0;r<e.$length;r+=1e4)n+=String.fromCharCode.apply(void 0,e.$array.subarray(e.$offset+r,e.$offset+Math.min(e.$length,r+1e4)));return n},$stringToRunes=function(e){for(var n,r=new Int32Array(e.length),t=0,i=0;i<e.length;i+=n[1],t++)n=$decodeRune(e,i),r[t]=n[0];return r.subarray(0,t)},$runesToString=function(e){if(0===e.$length)return"";for(var n="",r=0;r<e.$length;r++)n+=$encodeRune(e.$array[e.$offset+r]);return n},$copyString=function(e,n){for(var r=Math.min(n.length,e.$length),t=0;t<r;t++)e.$array[e.$offset+t]=n.charCodeAt(t);return r},$copySlice=function(e,n){var r=Math.min(n.$length,e.$length);return $copyArray(e.$array,n.$array,e.$offset,n.$offset,r,e.constructor.elem),r},$copyArray=function(e,n,r,t,i,a){if(0!==i&&(e!==n||r!==t))if(n.subarray)e.set(n.subarray(t,t+i),r);else{switch(a.kind){case $kindArray:case $kindStruct:if(e===n&&r>t){for(var o=i-1;o>=0;o--)a.copy(e[r+o],n[t+o]);return}for(o=0;o<i;o++)a.copy(e[r+o],n[t+o]);return}if(e===n&&r>t)for(o=i-1;o>=0;o--)e[r+o]=n[t+o];else for(o=0;o<i;o++)e[r+o]=n[t+o]}},$clone=function(e,n){var r=n.zero();return n.copy(r,e),r},$pointerOfStructConversion=function(e,n){void 0===e.$proxies&&(e.$proxies={},e.$proxies[e.constructor.string]=e);var r=e.$proxies[n.string];if(void 0===r){for(var t={},i=0;i<n.elem.fields.length;i++)!function(n){t[n]={get:function(){return e[n]},set:function(r){e[n]=r}}}(n.elem.fields[i].prop);(r=Object.create(n.prototype,t)).$val=r,e.$proxies[n.string]=r,r.$proxies=e.$proxies}return r},$append=function(e){return $internalAppend(e,arguments,1,arguments.length-1)},$appendSlice=function(e,n){if(n.constructor===String){var r=$stringToBytes(n);return $internalAppend(e,r,0,r.length)}return $internalAppend(e,n.$array,n.$offset,n.$length)},$internalAppend=function(e,n,r,t){if(0===t)return e;var i=e.$array,a=e.$offset,o=e.$length+t,c=e.$capacity;if(o>c)if(a=0,c=Math.max(o,e.$capacity<1024?2*e.$capacity:Math.floor(5*e.$capacity/4)),e.$array.constructor===Array){(i=e.$array.slice(e.$offset,e.$offset+e.$length)).length=c;for(var $=e.constructor.elem.zero,u=e.$length;u<c;u++)i[u]=$()}else(i=new e.$array.constructor(c)).set(e.$array.subarray(e.$offset,e.$offset+e.$length));$copyArray(i,n,a+e.$length,r,t,e.constructor.elem);var l=new e.constructor(i);return l.$offset=a,l.$length=o,l.$capacity=c,l},$equal=function(e,n,r){if(r===$jsObjectPtr)return e===n;switch(r.kind){case $kindComplex64:case $kindComplex128:return e.$real===n.$real&&e.$imag===n.$imag;case $kindInt64:case $kindUint64:return e.$high===n.$high&&e.$low===n.$low;case $kindArray:if(e.length!==n.length)return!1;for(var t=0;t<e.length;t++)if(!$equal(e[t],n[t],r.elem))return!1;return!0;case $kindStruct:for(t=0;t<r.fields.length;t++){var i=r.fields[t];if(!$equal(e[i.prop],n[i.prop],i.typ))return!1}return!0;case $kindInterface:return $interfaceIsEqual(e,n);default:return e===n}},$interfaceIsEqual=function(e,n){return e===$ifaceNil||n===$ifaceNil?e===n:e.constructor===n.constructor&&(e.constructor===$jsObjectPtr?e.object===n.object:(e.constructor.comparable||$throwRuntimeError("comparing uncomparable type "+e.constructor.string),$equal(e.$val,n.$val,e.constructor)))},$unsafeMethodToFunction=function(e,n,r){return r?function(r,...t){var i=$ptrType(e);if(r.constructor!=i)switch(e.kind){case $kindStruct:r=$pointerOfStructConversion(r,i);break;case $kindArray:r=new i(r);break;default:r=new i(r.$get,r.$set,r.$target)}return r[n](...t)}:function(r,...t){var i=$ptrType(e);if(r.constructor!=i)switch(e.kind){case $kindStruct:r=$clone(r,e);break;case $kindSlice:r=$convertSliceType(r,e);break;case $kindComplex64:case $kindComplex128:r=new e(r.$real,r.$imag);break;default:r=new e(r)}return r[n](...t)}},$id=function(e){return e},$instanceOf=function(e,n){return e instanceof n},$typeOf=function(e){return typeof e},$min=Math.min,$mod=function(e,n){return e%n},$parseInt=parseInt,$parseFloat=function(e){return void 0!==e&&null!==e&&e.constructor===Number?e:parseFloat(e)},$froundBuf=new Float32Array(1),$fround=Math.fround||function(e){return $froundBuf[0]=e,$froundBuf[0]},$imul=Math.imul||function(e,n){var r=65535&e,t=65535&n;return r*t+((e>>>16&65535)*t+r*(n>>>16&65535)<<16>>>0)>>0},$floatKey=function(e){return e!=e?"NaN$"+ ++$idCounter:String(e)},$flatten64=function(e){return 4294967296*e.$high+e.$low},$shiftLeft64=function(e,n){return 0===n?e:n<32?new e.constructor(e.$high<<n|e.$low>>>32-n,e.$low<<n>>>0):n<64?new e.constructor(e.$low<<n-32,0):new e.constructor(0,0)},$shiftRightInt64=function(e,n){return 0===n?e:n<32?new e.constructor(e.$high>>n,(e.$low>>>n|e.$high<<32-n)>>>0):n<64?new e.constructor(e.$high>>31,e.$high>>n-32>>>0):e.$high<0?new e.constructor(-1,4294967295):new e.constructor(0,0)},$shiftRightUint64=function(e,n){return 0===n?e:n<32?new e.constructor(e.$high>>>n,(e.$low>>>n|e.$high<<32-n)>>>0):n<64?new e.constructor(0,e.$high>>>n-32):new e.constructor(0,0)},$mul64=function(e,n){var r=e.$high>>>16,t=65535&e.$high,i=e.$low>>>16,a=65535&e.$low,o=n.$high>>>16,c=65535&n.$high,$=n.$low>>>16,u=65535&n.$low,l=0,s=0,f=0,d=0;f+=(d+=a*u)>>>16,s+=(f+=i*u)>>>16,f&=65535,s+=(f+=a*$)>>>16,l+=(s+=t*u)>>>16,s&=65535,l+=(s+=i*$)>>>16,s&=65535,l+=(s+=a*c)>>>16,l+=r*u+t*$+i*c+a*o;var p=((l&=65535)<<16|(s&=65535))>>>0,h=((f&=65535)<<16|(d&=65535))>>>0;return new e.constructor(p,h)},$div64=function(e,n,r){0===n.$high&&0===n.$low&&$throwRuntimeError("integer divide by zero");var t=1,i=1,a=e.$high,o=e.$low;a<0&&(t=-1,i=-1,a=-a,0!==o&&(a--,o=4294967296-o));var c=n.$high,$=n.$low;n.$high<0&&(t*=-1,c=-c,0!==$&&(c--,$=4294967296-$));for(var u=0,l=0,s=0;c<2147483648&&(a>c||a===c&&o>$);)c=(c<<1|$>>>31)>>>0,$=$<<1>>>0,s++;for(var f=0;f<=s;f++)u=u<<1|l>>>31,l=l<<1>>>0,(a>c||a===c&&o>=$)&&(a-=c,(o-=$)<0&&(a--,o+=4294967296),4294967296===++l&&(u++,l=0)),$=($>>>1|c<<31)>>>0,c>>>=1;return r?new e.constructor(a*i,o*i):new e.constructor(u*t,l*t)},$divComplex=function(e,n){var r=e.$real===1/0||e.$real===-1/0||e.$imag===1/0||e.$imag===-1/0,t=n.$real===1/0||n.$real===-1/0||n.$imag===1/0||n.$imag===-1/0,i=!r&&(e.$real!=e.$real||e.$imag!=e.$imag),a=!t&&(n.$real!=n.$real||n.$imag!=n.$imag);if(i||a)return new e.constructor(NaN,NaN);if(r&&!t)return new e.constructor(1/0,1/0);if(!r&&t)return new e.constructor(0,0);if(0===n.$real&&0===n.$imag)return 0===e.$real&&0===e.$imag?new e.constructor(NaN,NaN):new e.constructor(1/0,1/0);if(Math.abs(n.$real)<=Math.abs(n.$imag)){var o=n.$real/n.$imag,c=n.$real*o+n.$imag;return new e.constructor((e.$real*o+e.$imag)/c,(e.$imag*o-e.$real)/c)}o=n.$imag/n.$real,c=n.$imag*o+n.$real;return new e.constructor((e.$imag*o+e.$real)/c,(e.$imag-e.$real*o)/c)},$kindBool=1,$kindInt=2,$kindInt8=3,$kindInt16=4,$kindInt32=5,$kindInt64=6,$kindUint=7,$kindUint8=8,$kindUint16=9,$kindUint32=10,$kindUint64=11,$kindUintptr=12,$kindFloat32=13,$kindFloat64=14,$kindComplex64=15,$kindComplex128=16,$kindArray=17,$kindChan=18,$kindFunc=19,$kindInterface=20,$kindMap=21,$kindPtr=22,$kindSlice=23,$kindString=24,$kindStruct=25,$kindUnsafePointer=26,$methodSynthesizers=[],$addMethodSynthesizer=function(e){null!==$methodSynthesizers?$methodSynthesizers.push(e):e()},$synthesizeMethods=function(){$methodSynthesizers.forEach(function(e){e()}),$methodSynthesizers=null},$ifaceKeyFor=function(e){if(e===$ifaceNil)return"nil";var n=e.constructor;return n.string+"$"+n.keyFor(e.$val)},$identity=function(e){return e},$typeIDCounter=0,$idKey=function(e){return void 0===e.$id&&($idCounter++,e.$id=$idCounter),String(e.$id)},$arrayPtrCtor=function(){return function(e){this.$get=function(){return e},this.$set=function(e){typ.copy(this,e)},this.$val=e}},$newType=function(e,n,r,t,i,a,o){var c;switch(n){case $kindBool:case $kindInt:case $kindInt8:case $kindInt16:case $kindInt32:case $kindUint:case $kindUint8:case $kindUint16:case $kindUint32:case $kindUintptr:case $kindUnsafePointer:(c=function(e){this.$val=e}).wrapped=!0,c.keyFor=$identity;break;case $kindString:(c=function(e){this.$val=e}).wrapped=!0,c.keyFor=function(e){return"$"+e};break;case $kindFloat32:case $kindFloat64:(c=function(e){this.$val=e}).wrapped=!0,c.keyFor=function(e){return $floatKey(e)};break;case $kindInt64:(c=function(e,n){this.$high=e+Math.floor(Math.ceil(n)/4294967296)>>0,this.$low=n>>>0,this.$val=this}).keyFor=function(e){return e.$high+"$"+e.$low};break;case $kindUint64:(c=function(e,n){this.$high=e+Math.floor(Math.ceil(n)/4294967296)>>>0,this.$low=n>>>0,this.$val=this}).keyFor=function(e){return e.$high+"$"+e.$low};break;case $kindComplex64:(c=function(e,n){this.$real=$fround(e),this.$imag=$fround(n),this.$val=this}).keyFor=function(e){return e.$real+"$"+e.$imag};break;case $kindComplex128:(c=function(e,n){this.$real=e,this.$imag=n,this.$val=this}).keyFor=function(e){return e.$real+"$"+e.$imag};break;case $kindArray:(c=function(e){this.$val=e}).wrapped=!0,c.ptr=$newType(4,$kindPtr,"*"+r,!1,"",!1,$arrayPtrCtor()),c.init=function(e,n){c.elem=e,c.len=n,c.comparable=e.comparable,c.keyFor=function(n){return Array.prototype.join.call($mapArray(n,function(n){return String(e.keyFor(n)).replace(/\\/g,"\\\\").replace(/\$/g,"\\$")}),"$")},c.copy=function(n,r){$copyArray(n,r,0,0,r.length,e)},c.ptr.init(c),Object.defineProperty(c.ptr.nil,"nilCheck",{get:$throwNilPointerError})};break;case $kindChan:(c=function(e){this.$val=e}).wrapped=!0,c.keyFor=$idKey,c.init=function(e,n,r){c.elem=e,c.sendOnly=n,c.recvOnly=r};break;case $kindFunc:(c=function(e){this.$val=e}).wrapped=!0,c.init=function(e,n,r){c.params=e,c.results=n,c.variadic=r,c.comparable=!1};break;case $kindInterface:(c={implementedBy:{},missingMethodFor:{}}).keyFor=$ifaceKeyFor,c.init=function(e){c.methods=e,e.forEach(function(e){$ifaceNil[e.prop]=$throwNilPointerError})};break;case $kindMap:(c=function(e){this.$val=e}).wrapped=!0,c.init=function(e,n){c.key=e,c.elem=n,c.comparable=!1};break;case $kindPtr:(c=o||function(e,n,r){this.$get=e,this.$set=n,this.$target=r,this.$val=this}).keyFor=$idKey,c.init=function(e){c.elem=e,c.wrapped=e.kind===$kindArray,c.nil=new c($throwNilPointerError,$throwNilPointerError)};break;case $kindSlice:(c=function(e){e.constructor!==c.nativeArray&&(e=new c.nativeArray(e)),this.$array=e,this.$offset=0,this.$length=e.length,this.$capacity=e.length,this.$val=this}).init=function(e){c.elem=e,c.comparable=!1,c.nativeArray=$nativeArray(e.kind),c.nil=new c([])};break;case $kindStruct:(c=function(e){this.$val=e}).wrapped=!0,c.ptr=$newType(4,$kindPtr,"*"+r,!1,i,a,o),c.ptr.elem=c,c.ptr.prototype.$get=function(){return this},c.ptr.prototype.$set=function(e){c.copy(this,e)},c.init=function(e,n){c.pkgPath=e,c.fields=n,n.forEach(function(e){e.typ.comparable||(c.comparable=!1)}),c.keyFor=function(e){var r=e.$val;return $mapArray(n,function(e){return String(e.typ.keyFor(r[e.prop])).replace(/\\/g,"\\\\").replace(/\$/g,"\\$")}).join("$")},c.copy=function(e,r){for(var t=0;t<n.length;t++){var i=n[t];switch(i.typ.kind){case $kindArray:case $kindStruct:i.typ.copy(e[i.prop],r[i.prop]);continue;default:e[i.prop]=r[i.prop];continue}}};var r={};n.forEach(function(e){r[e.prop]={get:$throwNilPointerError,set:$throwNilPointerError}}),c.ptr.nil=Object.create(o.prototype,r),c.ptr.nil.$val=c.ptr.nil,$addMethodSynthesizer(function(){var e=function(e,n,r){void 0===e.prototype[n.prop]&&(e.prototype[n.prop]=function(){var e=this.$val[r.prop];return r.typ===$jsObjectPtr&&(e=new $jsObjectPtr(e)),void 0===e.$val&&(e=new r.typ(e)),e[n.prop].apply(e,arguments)})};n.forEach(function(n){n.embedded&&($methodSet(n.typ).forEach(function(r){e(c,r,n),e(c.ptr,r,n)}),$methodSet($ptrType(n.typ)).forEach(function(r){e(c.ptr,r,n)}))})})};break;default:$panic(new $String("invalid kind: "+n))}switch(n){case $kindBool:case $kindMap:c.zero=function(){return!1};break;case $kindInt:case $kindInt8:case $kindInt16:case $kindInt32:case $kindUint:case $kindUint8:case $kindUint16:case $kindUint32:case $kindUintptr:case $kindUnsafePointer:case $kindFloat32:case $kindFloat64:c.zero=function(){return 0};break;case $kindString:c.zero=function(){return""};break;case $kindInt64:case $kindUint64:case $kindComplex64:case $kindComplex128:var $=new c(0,0);c.zero=function(){return $};break;case $kindPtr:case $kindSlice:c.zero=function(){return c.nil};break;case $kindChan:c.zero=function(){return $chanNil};break;case $kindFunc:c.zero=function(){return $throwNilPointerError};break;case $kindInterface:c.zero=function(){return $ifaceNil};break;case $kindArray:c.zero=function(){var e=$nativeArray(c.elem.kind);if(e!==Array)return new e(c.len);for(var n=new Array(c.len),r=0;r<c.len;r++)n[r]=c.elem.zero();return n};break;case $kindStruct:c.zero=function(){return new c.ptr};break;default:$panic(new $String("invalid kind: "+n))}return c.id=$typeIDCounter,$typeIDCounter++,c.size=e,c.kind=n,c.string=r,c.named=t,c.pkg=i,c.exported=a,c.methods=[],c.methodSetCache=null,c.comparable=!0,c},$methodSet=function(e){if(null!==e.methodSetCache)return e.methodSetCache;var n={},r=e.kind===$kindPtr;if(r&&e.elem.kind===$kindInterface)return e.methodSetCache=[],[];for(var t=[{typ:r?e.elem:e,indirect:r}],i={};t.length>0;){var a=[],o=[];t.forEach(function(e){if(!i[e.typ.string])switch(i[e.typ.string]=!0,e.typ.named&&(o=o.concat(e.typ.methods),e.indirect&&(o=o.concat($ptrType(e.typ).methods))),e.typ.kind){case $kindStruct:e.typ.fields.forEach(function(n){if(n.embedded){var r=n.typ,t=r.kind===$kindPtr;a.push({typ:t?r.elem:r,indirect:e.indirect||t})}});break;case $kindInterface:o=o.concat(e.typ.methods)}}),o.forEach(function(e){void 0===n[e.name]&&(n[e.name]=e)}),t=a}return e.methodSetCache=[],Object.keys(n).sort().forEach(function(r){e.methodSetCache.push(n[r])}),e.methodSetCache},$Bool=$newType(1,$kindBool,"bool",!0,"",!1,null),$Int=$newType(4,$kindInt,"int",!0,"",!1,null),$Int8=$newType(1,$kindInt8,"int8",!0,"",!1,null),$Int16=$newType(2,$kindInt16,"int16",!0,"",!1,null),$Int32=$newType(4,$kindInt32,"int32",!0,"",!1,null),$Int64=$newType(8,$kindInt64,"int64",!0,"",!1,null),$Uint=$newType(4,$kindUint,"uint",!0,"",!1,null),$Uint8=$newType(1,$kindUint8,"uint8",!0,"",!1,null),$Uint16=$newType(2,$kindUint16,"uint16",!0,"",!1,null),$Uint32=$newType(4,$kindUint32,"uint32",!0,"",!1,null),$Uint64=$newType(8,$kindUint64,"uint64",!0,"",!1,null),$Uintptr=$newType(4,$kindUintptr,"uintptr",!0,"",!1,null),$Float32=$newType(4,$kindFloat32,"float32",!0,"",!1,null),$Float64=$newType(8,$kindFloat64,"float64",!0,"",!1,null),$Complex64=$newType(8,$kindComplex64,"complex64",!0,"",!1,null),$Complex128=$newType(16,$kindComplex128,"complex128",!0,"",!1,null),$String=$newType(8,$kindString,"string",!0,"",!1,null),$UnsafePointer=$newType(4,$kindUnsafePointer,"unsafe.Pointer",!0,"unsafe",!1,null),$nativeArray=function(e){switch(e){case $kindInt:return Int32Array;case $kindInt8:return Int8Array;case $kindInt16:return Int16Array;case $kindInt32:return Int32Array;case $kindUint:return Uint32Array;case $kindUint8:return Uint8Array;case $kindUint16:return Uint16Array;case $kindUint32:case $kindUintptr:return Uint32Array;case $kindFloat32:return Float32Array;case $kindFloat64:return Float64Array;default:return Array}},$toNativeArray=function(e,n){var r=$nativeArray(e);return r===Array?n:new r(n)},$arrayTypes={},$arrayType=function(e,n){var r=e.id+"$"+n,t=$arrayTypes[r];return void 0===t&&(t=$newType(e.size*n,$kindArray,"["+n+"]"+e.string,!1,"",!1,null),$arrayTypes[r]=t,t.init(e,n)),t},$chanType=function(e,n,r){var t=(r?"<-":"")+"chan"+(n?"<- ":" ");n||r||"<"!=e.string[0]?t+=e.string:t+="("+e.string+")";var i=n?"SendChan":r?"RecvChan":"Chan",a=e[i];return void 0===a&&(a=$newType(4,$kindChan,t,!1,"",!1,null),e[i]=a,a.init(e,n,r)),a},$Chan=function(e,n){(n<0||n>2147483647)&&$throwRuntimeError("makechan: size out of range"),this.$elem=e,this.$capacity=n,this.$buffer=[],this.$sendQueue=[],this.$recvQueue=[],this.$closed=!1},$chanNil=new $Chan(null,0);$chanNil.$sendQueue=$chanNil.$recvQueue={length:0,push:function(){},shift:function(){},indexOf:function(){return-1}};var $funcTypes={},$funcType=function(e,n,r){var t=$mapArray(e,function(e){return e.id}).join(",")+"$"+$mapArray(n,function(e){return e.id}).join(",")+"$"+r,i=$funcTypes[t];if(void 0===i){var a=$mapArray(e,function(e){return e.string});r&&(a[a.length-1]="..."+a[a.length-1].substr(2));var o="func("+a.join(", ")+")";1===n.length?o+=" "+n[0].string:n.length>1&&(o+=" ("+$mapArray(n,function(e){return e.string}).join(", ")+")"),i=$newType(4,$kindFunc,o,!1,"",!1,null),$funcTypes[t]=i,i.init(e,n,r)}return i},$interfaceTypes={},$interfaceType=function(e){var n=$mapArray(e,function(e){return e.pkg+","+e.name+","+e.typ.id}).join("$"),r=$interfaceTypes[n];if(void 0===r){var t="interface {}";0!==e.length&&(t="interface { "+$mapArray(e,function(e){return(""!==e.pkg?e.pkg+".":"")+e.name+e.typ.string.substr(4)}).join("; ")+" }"),r=$newType(8,$kindInterface,t,!1,"",!1,null),$interfaceTypes[n]=r,r.init(e)}return r},$emptyInterface=$interfaceType([]),$ifaceNil={},$error=$newType(8,$kindInterface,"error",!0,"",!1,null);$error.init([{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],!1)}]);var $panicValue,$jsObjectPtr,$jsErrorPtr,$mapTypes={},$mapType=function(e,n){var r=e.id+"$"+n.id,t=$mapTypes[r];return void 0===t&&(t=$newType(4,$kindMap,"map["+e.string+"]"+n.string,!1,"",!1,null),$mapTypes[r]=t,t.init(e,n)),t},$makeMap=function(e,n){for(var r=new Map,t=0;t<n.length;t++){var i=n[t];r.set(e(i.k),i)}return r},$ptrType=function(e){var n=e.ptr;return void 0===n&&(n=$newType(4,$kindPtr,"*"+e.string,!1,"",e.exported,null),e.ptr=n,n.init(e)),n},$newDataPointer=function(e,n){return n.elem.kind===$kindStruct?e:new n(function(){return e},function(n){e=n})},$indexPtr=function(e,n,r){if(e.buffer){var t=e.buffer.$ptr=e.buffer.$ptr||{},i=t[e.name]=t[e.name]||{},a=e.BYTES_PER_ELEMENT*n+e.byteOffset;return i[a]||(i[a]=new r(function(){return e[n]},function(r){e[n]=r}))}return e.$ptr=e.$ptr||{},e.$ptr[n]||(e.$ptr[n]=new r(function(){return e[n]},function(r){e[n]=r}))},$sliceType=function(e){var n=e.slice;return void 0===n&&(n=$newType(12,$kindSlice,"[]"+e.string,!1,"",!1,null),e.slice=n,n.init(e)),n},$makeSlice=function(e,n,r){r=r||n,(n<0||n>2147483647)&&$throwRuntimeError("makeslice: len out of range"),(r<0||r<n||r>2147483647)&&$throwRuntimeError("makeslice: cap out of range");var t=new e.nativeArray(r);if(e.nativeArray===Array)for(var i=0;i<r;i++)t[i]=e.elem.zero();var a=new e(t);return a.$length=n,a},$structTypes={},$structType=function(e,n){var r=$mapArray(n,function(e){return e.name+","+e.typ.id+","+e.tag}).join("$"),t=$structTypes[r];if(void 0===t){var i="struct { "+$mapArray(n,function(e){var n=e.typ.string+(""!==e.tag?' "'+e.tag.replace(/\\/g,"\\\\").replace(/"/g,'\\"')+'"':"");return e.embedded?n:e.name+" "+n}).join("; ")+" }";0===n.length&&(i="struct {}"),t=$newType(0,$kindStruct,i,!1,"",!1,function(){this.$val=this;for(var e=0;e<n.length;e++){var r=n[e];if("_"!=r.name){var t=arguments[e];this[r.prop]=void 0!==t?t:r.typ.zero()}}}),$structTypes[r]=t,t.init(e,n)}return t},$assertType=function(e,n,r){var t,i=n.kind===$kindInterface,a="";if(e===$ifaceNil)t=!1;else if(i){var o=e.constructor.string;if(void 0===(t=n.implementedBy[o])){t=!0;for(var c=$methodSet(e.constructor),$=n.methods,u=0;u<$.length;u++){for(var l=$[u],s=!1,f=0;f<c.length;f++){var d=c[f];if(d.name===l.name&&d.pkg===l.pkg&&d.typ===l.typ){s=!0;break}}if(!s){t=!1,n.missingMethodFor[o]=l.name;break}}n.implementedBy[o]=t}t||(a=n.missingMethodFor[o])}else t=e.constructor===n;if(!t){if(r)return[n.zero(),!1];$panic(new $packages.runtime.TypeAssertionError.ptr($packages.runtime._type.ptr.nil,e===$ifaceNil?$packages.runtime._type.ptr.nil:new $packages.runtime._type.ptr(e.constructor.string),new $packages.runtime._type.ptr(n.string),a))}return i||(e=e.$val),n===$jsObjectPtr&&(e=e.object),r?[e,!0]:e},$stackDepthOffset=0,$getStackDepth=function(){var e=new Error;if(void 0!==e.stack)return $stackDepthOffset+e.stack.split("\n").length},$panicStackDepth=null,$callDeferred=function(e,n,r){if(!r&&null!==e&&-1==$curGoroutine.deferStack.indexOf(e))throw n;if(null===n){if(!$curGoroutine.asleep){$stackDepthOffset--;var t=$panicStackDepth,i=$panicValue,a=$curGoroutine.panicStack.pop();void 0!==a&&($panicStackDepth=$getStackDepth(),$panicValue=a);try{for(;;){if(null===e&&void 0===(e=$curGoroutine.deferStack[$curGoroutine.deferStack.length-1])){if($panicStackDepth=null,a.Object instanceof Error)throw a.Object;var o;throw o=a.constructor===$String?a.$val:void 0!==a.Error?a.Error():void 0!==a.String?a.String():a,new Error(o)}var c=e.pop();if(void 0===c){if($curGoroutine.deferStack.pop(),void 0!==a){e=null;continue}return}var $=c[0].apply(c[2],c[1]);if($&&void 0!==$.$blk){if(e.push([$.$blk,[],$]),r)throw null;return}if(void 0!==a&&null===$panicStackDepth){if(r)throw null;return}}}catch(n){if(r)throw n;$callDeferred(e,n,r)}finally{void 0!==a&&(null!==$panicStackDepth&&$curGoroutine.panicStack.push(a),$panicStackDepth=t,$panicValue=i),$stackDepthOffset++}}}else{var u=null;try{$panic(new $jsErrorPtr(n))}catch(e){u=e}$callDeferred(e,u)}},$panic=function(e){$curGoroutine.panicStack.push(e),$callDeferred(null,null,!0)},$recover=function(){return null===$panicStackDepth||void 0!==$panicStackDepth&&$panicStackDepth!==$getStackDepth()-2?$ifaceNil:($panicStackDepth=null,$panicValue)},$throw=function(e){throw e},$noGoroutine={asleep:!1,exit:!1,deferStack:[],panicStack:[]},$curGoroutine=$noGoroutine,$totalGoroutines=0,$awakeGoroutines=0,$checkForDeadlock=!0,$exportedFunctions=0,$mainFinished=!1,$go=function(e,n){$totalGoroutines++,$awakeGoroutines++;var $goroutine=function(){try{$curGoroutine=$goroutine;var r=e.apply(void 0,n);if(r&&void 0!==r.$blk)return e=function(){return r.$blk()},void(n=[]);$goroutine.exit=!0}catch(e){if(!$goroutine.exit)throw e}finally{$curGoroutine=$noGoroutine,$goroutine.exit&&($totalGoroutines--,$goroutine.asleep=!0),$goroutine.asleep&&($awakeGoroutines--,!$mainFinished&&0===$awakeGoroutines&&$checkForDeadlock&&0===$exportedFunctions&&(console.error("fatal error: all goroutines are asleep - deadlock!"),void 0!==$global.process&&$global.process.exit(2)))}};$goroutine.asleep=!1,$goroutine.exit=!1,$goroutine.deferStack=[],$goroutine.panicStack=[],$schedule($goroutine)},$scheduled=[],$runScheduled=function(){var e=setTimeout($runScheduled);try{for(var n,r=Date.now();void 0!==(n=$scheduled.shift());){n();var t=Date.now()-r;if(t>4||t<0)break}}finally{0==$scheduled.length&&clearTimeout(e)}},$schedule=function(e){e.asleep&&(e.asleep=!1,$awakeGoroutines++),$scheduled.push(e),$curGoroutine===$noGoroutine&&$runScheduled()},$setTimeout=function(e,n){return $awakeGoroutines++,setTimeout(function(){$awakeGoroutines--,e()},n)},$block=function(){$curGoroutine===$noGoroutine&&$throwRuntimeError("cannot block in JavaScript callback, fix by wrapping code in goroutine"),$curGoroutine.asleep=!0},$restore=function(e,n){return void 0!==e&&void 0!==e.$blk?e:n},$send=function(e,n){e.$closed&&$throwRuntimeError("send on closed channel");var r=e.$recvQueue.shift();if(void 0===r){if(!(e.$buffer.length<e.$capacity)){var t,i=$curGoroutine;return e.$sendQueue.push(function(e){return t=e,$schedule(i),n}),$block(),{$blk:function(){t&&$throwRuntimeError("send on closed channel")}}}e.$buffer.push(n)}else r([n,!0])},$recv=function(e){var n=e.$sendQueue.shift();void 0!==n&&e.$buffer.push(n(!1));var r=e.$buffer.shift();if(void 0!==r)return[r,!0];if(e.$closed)return[e.$elem.zero(),!1];var t=$curGoroutine,i={$blk:function(){return this.value}};return e.$recvQueue.push(function(e){i.value=e,$schedule(t)}),$block(),i},$close=function(e){for(e.$closed&&$throwRuntimeError("close of closed channel"),e.$closed=!0;;){var n=e.$sendQueue.shift();if(void 0===n)break;n(!0)}for(;;){var r=e.$recvQueue.shift();if(void 0===r)break;r([e.$elem.zero(),!1])}},$select=function(e){for(var n=[],r=-1,t=0;t<e.length;t++){var i,a=(i=e[t])[0];switch(i.length){case 0:r=t;break;case 1:(0!==a.$sendQueue.length||0!==a.$buffer.length||a.$closed)&&n.push(t);break;case 2:a.$closed&&$throwRuntimeError("send on closed channel"),(0!==a.$recvQueue.length||a.$buffer.length<a.$capacity)&&n.push(t)}}if(0!==n.length&&(r=n[Math.floor(Math.random()*n.length)]),-1!==r)switch((i=e[r]).length){case 0:return[r];case 1:return[r,$recv(i[0])];case 2:return $send(i[0],i[1]),[r]}var o=[],c=$curGoroutine,$={$blk:function(){return this.selection}},u=function(){for(var e=0;e<o.length;e++){var n=o[e],r=n[0],t=r.indexOf(n[1]);-1!==t&&r.splice(t,1)}};for(t=0;t<e.length;t++)!function(n){var r=e[n];switch(r.length){case 1:var t=function(e){$.selection=[n,e],u(),$schedule(c)};o.push([r[0].$recvQueue,t]),r[0].$recvQueue.push(t);break;case 2:t=function(){return r[0].$closed&&$throwRuntimeError("send on closed channel"),$.selection=[n],u(),$schedule(c),r[1]};o.push([r[0].$sendQueue,t]),r[0].$sendQueue.push(t)}}(t);return $block(),$},$needsExternalization=function(e){switch(e.kind){case $kindBool:case $kindInt:case $kindInt8:case $kindInt16:case $kindInt32:case $kindUint:case $kindUint8:case $kindUint16:case $kindUint32:case $kindUintptr:case $kindFloat32:case $kindFloat64:return!1;default:return e!==$jsObjectPtr}},$externalize=function(e,n,r){if(n===$jsObjectPtr)return e;switch(n.kind){case $kindBool:case $kindInt:case $kindInt8:case $kindInt16:case $kindInt32:case $kindUint:case $kindUint8:case $kindUint16:case $kindUint32:case $kindUintptr:case $kindFloat32:case $kindFloat64:return e;case $kindInt64:case $kindUint64:return $flatten64(e);case $kindArray:return $needsExternalization(n.elem)?$mapArray(e,function(e){return $externalize(e,n.elem,r)}):e;case $kindFunc:return $externalizeFunction(e,n,!1,r);case $kindInterface:return e===$ifaceNil?null:e.constructor===$jsObjectPtr?e.$val.object:$externalize(e.$val,e.constructor,r);case $kindMap:for(var t={},i=Array.from(e.keys()),a=0;a<i.length;a++){var o=e.get(i[a]);t[$externalize(o.k,n.key,r)]=$externalize(o.v,n.elem,r)}return t;case $kindPtr:return e===n.nil?null:$externalize(e.$get(),n.elem,r);case $kindSlice:return $needsExternalization(n.elem)?$mapArray($sliceToNativeArray(e),function(e){return $externalize(e,n.elem,r)}):$sliceToNativeArray(e);case $kindString:if($isASCII(e))return e;var c,$="";for(a=0;a<e.length;a+=c[1]){var u=(c=$decodeRune(e,a))[0];if(u>65535){var l=Math.floor((u-65536)/1024)+55296,s=(u-65536)%1024+56320;$+=String.fromCharCode(l,s)}else $+=String.fromCharCode(u)}return $;case $kindStruct:var f=$packages.time;if(void 0!==f&&e.constructor===f.Time.ptr){var d=$div64(e.UnixNano(),new $Int64(0,1e6));return new Date($flatten64(d))}var p={},h=function(e,n){if(n===$jsObjectPtr)return e;switch(n.kind){case $kindPtr:return e===n.nil?p:h(e.$get(),n.elem);case $kindStruct:var r=n.fields[0];return h(e[r.prop],r.typ);case $kindInterface:return h(e.$val,e.constructor);default:return p}},k=h(e,n);if(k!==p)return k;if(void 0!==r)return r(e);k={};for(a=0;a<n.fields.length;a++){var y=n.fields[a];y.exported&&(k[y.name]=$externalize(e[y.prop],y.typ,r))}return k}$throwRuntimeError("cannot externalize "+n.string)},$externalizeFunction=function(e,n,r,t){return e===$throwNilPointerError?null:(void 0===e.$externalizeWrapper&&($checkForDeadlock=!1,e.$externalizeWrapper=function(){for(var i=[],a=0;a<n.params.length;a++){if(n.variadic&&a===n.params.length-1){for(var o=n.params[a].elem,c=[],$=a;$<arguments.length;$++)c.push($internalize(arguments[$],o,t));i.push(new n.params[a](c));break}i.push($internalize(arguments[a],n.params[a],t))}var u=e.apply(r?this:void 0,i);switch(n.results.length){case 0:return;case 1:return $externalize($copyIfRequired(u,n.results[0]),n.results[0],t);default:for(a=0;a<n.results.length;a++)u[a]=$externalize($copyIfRequired(u[a],n.results[a]),n.results[a],t);return u}}),e.$externalizeWrapper)},$internalize=function(e,n,r,t,i){if(n===$jsObjectPtr)return e;if(n===$jsObjectPtr.elem&&$throwRuntimeError("cannot internalize js.Object, use *js.Object instead"),e&&void 0!==e.__internal_object__)return $assertType(e.__internal_object__,n,!1);var a=$packages.time;if(void 0!==a&&n===a.Time)return null!==e&&void 0!==e&&e.constructor===Date||$throwRuntimeError("cannot internalize time.Time from "+typeof e+", must be Date"),a.Unix(new $Int64(0,0),new $Int64(0,1e6*e.getTime()));if(void 0===t&&(t=new Map),t.has(n)||t.set(n,new Map),t.get(n).has(e))return t.get(n).get(e);switch(n.kind){case $kindBool:return!!e;case $kindInt:return parseInt(e);case $kindInt8:return parseInt(e)<<24>>24;case $kindInt16:return parseInt(e)<<16>>16;case $kindInt32:return parseInt(e)>>0;case $kindUint:return parseInt(e);case $kindUint8:return parseInt(e)<<24>>>24;case $kindUint16:return parseInt(e)<<16>>>16;case $kindUint32:case $kindUintptr:return parseInt(e)>>>0;case $kindInt64:case $kindUint64:return new n(0,e);case $kindFloat32:case $kindFloat64:return parseFloat(e);case $kindArray:return e.length!==n.len&&$throwRuntimeError("got array with wrong size from JavaScript native"),$mapArray(e,function(e){return $internalize(e,n.elem,i)});case $kindFunc:return function(){for(var t=[],a=0;a<n.params.length;a++){if(n.variadic&&a===n.params.length-1){for(var o=n.params[a].elem,c=arguments[a],$=0;$<c.$length;$++)t.push($externalize(c.$array[c.$offset+$],o,i));break}t.push($externalize(arguments[a],n.params[a],i))}var u=e.apply(r,t);switch(n.results.length){case 0:return;case 1:return $internalize(u,n.results[0],i);default:for(a=0;a<n.results.length;a++)u[a]=$internalize(u[a],n.results[a],i);return u}};case $kindInterface:if(0!==n.methods.length&&$throwRuntimeError("cannot internalize "+n.string),null===e)return $ifaceNil;if(void 0===e)return new $jsObjectPtr(void 0);switch(e.constructor){case Int8Array:return new($sliceType($Int8))(e);case Int16Array:return new($sliceType($Int16))(e);case Int32Array:return new($sliceType($Int))(e);case Uint8Array:return new($sliceType($Uint8))(e);case Uint16Array:return new($sliceType($Uint16))(e);case Uint32Array:return new($sliceType($Uint))(e);case Float32Array:return new($sliceType($Float32))(e);case Float64Array:return new($sliceType($Float64))(e);case Array:return $internalize(e,$sliceType($emptyInterface),i);case Boolean:return new $Bool(!!e);case Date:return void 0===a?new $jsObjectPtr(e):new a.Time($internalize(e,a.Time,i));case function(){}.constructor:var o=$funcType([$sliceType($emptyInterface)],[$jsObjectPtr],!0);return new o($internalize(e,o,i));case Number:return new $Float64(parseFloat(e));case String:return new $String($internalize(e,$String,i));default:if($global.Node&&e instanceof $global.Node)return new $jsObjectPtr(e);var c=$mapType($String,$emptyInterface);return new c($internalize(e,c,r,t,i))}case $kindMap:var $=new Map;t.get(n).set(e,$);for(var u=$keys(e),l=0;l<u.length;l++){var s=$internalize(u[l],n.key,r,t,i);$.set(n.key.keyFor(s),{k:s,v:$internalize(e[u[l]],n.elem,r,t,i)})}return $;case $kindPtr:if(n.elem.kind===$kindStruct)return $internalize(e,n.elem,i);case $kindSlice:return new n($mapArray(e,function(e){return $internalize(e,n.elem,i)}));case $kindString:if(e=String(e),$isASCII(e))return e;var f="";for(l=0;l<e.length;){var d=e.charCodeAt(l);if(55296<=d&&d<=56319){var p=e.charCodeAt(l+1);f+=$encodeRune(1024*(d-55296)+p-56320+65536),l+=2}else f+=$encodeRune(d),l++}return f;case $kindStruct:var h={},k=function(n){if(n===$jsObjectPtr)return e;switch(n===$jsObjectPtr.elem&&$throwRuntimeError("cannot internalize js.Object, use *js.Object instead"),n.kind){case $kindPtr:return k(n.elem);case $kindStruct:var r=n.fields[0],t=k(r.typ);if(t!==h){var i=new n.ptr;return i[r.prop]=t,i}return h;default:return h}},y=k(n);if(y!==h)return y}$throwRuntimeError("cannot internalize "+n.string)},$copyIfRequired=function(e,n){if(e&&e.constructor&&e.constructor.copy)return new e.constructor($clone(e.$val,e.constructor));if(n.copy){var r=n.zero();return n.copy(r,e),r}return e},$isASCII=function(e){for(var n=0;n<e.length;n++)if(e.charCodeAt(n)>=128)return!1;return!0}; + +$packages["github.com/gopherjs/gopherjs/js"]=(function(){var $pkg={},$init,A,B,J,M,O,P,Q,T,E,G,L;A=$pkg.Object=$newType(0,$kindStruct,"js.Object",true,"github.com/gopherjs/gopherjs/js",true,function(object_){this.$val=this;if(arguments.length===0){this.object=null;return;}this.object=object_;});B=$pkg.Error=$newType(0,$kindStruct,"js.Error",true,"github.com/gopherjs/gopherjs/js",true,function(Object_){this.$val=this;if(arguments.length===0){this.Object=null;return;}this.Object=Object_;});J=$pkg.M=$newType(4,$kindMap,"js.M",true,"github.com/gopherjs/gopherjs/js",true,null);M=$sliceType($emptyInterface);O=$ptrType(A);P=$sliceType(O);Q=$funcType([P],[O],true);T=$ptrType(B);A.ptr.prototype.Get=function(a){var a,b;b=this;return b.object[$externalize(a,$String)];};A.prototype.Get=function(a){return this.$val.Get(a);};A.ptr.prototype.Set=function(a,b){var a,b,c;c=this;c.object[$externalize(a,$String)]=$externalize(b,$emptyInterface);};A.prototype.Set=function(a,b){return this.$val.Set(a,b);};A.ptr.prototype.Delete=function(a){var a,b;b=this;delete b.object[$externalize(a,$String)];};A.prototype.Delete=function(a){return this.$val.Delete(a);};A.ptr.prototype.Length=function(){var a;a=this;return $parseInt(a.object.length);};A.prototype.Length=function(){return this.$val.Length();};A.ptr.prototype.Index=function(a){var a,b;b=this;return b.object[a];};A.prototype.Index=function(a){return this.$val.Index(a);};A.ptr.prototype.SetIndex=function(a,b){var a,b,c;c=this;c.object[a]=$externalize(b,$emptyInterface);};A.prototype.SetIndex=function(a,b){return this.$val.SetIndex(a,b);};A.ptr.prototype.Call=function(a,b){var a,b,c,d;c=this;return(d=c.object,d[$externalize(a,$String)].apply(d,$externalize(b,M)));};A.prototype.Call=function(a,b){return this.$val.Call(a,b);};A.ptr.prototype.Invoke=function(a){var a,b;b=this;return b.object.apply(undefined,$externalize(a,M));};A.prototype.Invoke=function(a){return this.$val.Invoke(a);};A.ptr.prototype.New=function(a){var a,b;b=this;return new($global.Function.prototype.bind.apply(b.object,[undefined].concat($externalize(a,M))));};A.prototype.New=function(a){return this.$val.New(a);};A.ptr.prototype.Bool=function(){var a;a=this;return!!(a.object);};A.prototype.Bool=function(){return this.$val.Bool();};A.ptr.prototype.String=function(){var a;a=this;return $internalize(a.object,$String);};A.prototype.String=function(){return this.$val.String();};A.ptr.prototype.Int=function(){var a;a=this;return $parseInt(a.object)>>0;};A.prototype.Int=function(){return this.$val.Int();};A.ptr.prototype.Int64=function(){var a;a=this;return $internalize(a.object,$Int64);};A.prototype.Int64=function(){return this.$val.Int64();};A.ptr.prototype.Uint64=function(){var a;a=this;return $internalize(a.object,$Uint64);};A.prototype.Uint64=function(){return this.$val.Uint64();};A.ptr.prototype.Float=function(){var a;a=this;return $parseFloat(a.object);};A.prototype.Float=function(){return this.$val.Float();};A.ptr.prototype.Interface=function(){var a;a=this;return $internalize(a.object,$emptyInterface);};A.prototype.Interface=function(){return this.$val.Interface();};A.ptr.prototype.Unsafe=function(){var a;a=this;return a.object;};A.prototype.Unsafe=function(){return this.$val.Unsafe();};B.ptr.prototype.Error=function(){var a;a=this;return"JavaScript error: "+$internalize(a.Object.message,$String);};B.prototype.Error=function(){return this.$val.Error();};B.ptr.prototype.Stack=function(){var a;a=this;return $internalize(a.Object.stack,$String);};B.prototype.Stack=function(){return this.$val.Stack();};E=function(a){var a;return $makeFunc(a);};$pkg.MakeFunc=E;G=function(a){var a,b,c,d,e,f;b=a;c=new($global.Object)();c.__internal_object__=b;d=b.constructor.methods;e=0;while(true){if(!(e<$parseInt(d.length))){break;}f=[f];f[0]=d[e];if(!($internalize(f[0].pkg,$String)==="")){e=e+(1)>>0;continue;}c[$externalize($internalize(f[0].name,$String),$String)]=$externalize((function(f){return function(g){var g;return $externalizeFunction(b[$externalize($internalize(f[0].prop,$String),$String)],f[0].typ,$externalize(true,$Bool)).apply(b,$externalize(g,P));};})(f),Q);e=e+(1)>>0;}return c;};$pkg.MakeWrapper=G;L=function(){var a;a=new B.ptr(null);$unused(a);};O.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([$String],[O],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$String,$emptyInterface],[],false)},{prop:"Delete",name:"Delete",pkg:"",typ:$funcType([$String],[],false)},{prop:"Length",name:"Length",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([$Int],[O],false)},{prop:"SetIndex",name:"SetIndex",pkg:"",typ:$funcType([$Int,$emptyInterface],[],false)},{prop:"Call",name:"Call",pkg:"",typ:$funcType([$String,M],[O],true)},{prop:"Invoke",name:"Invoke",pkg:"",typ:$funcType([M],[O],true)},{prop:"New",name:"New",pkg:"",typ:$funcType([M],[O],true)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Int",name:"Int",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Int64",name:"Int64",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"Float",name:"Float",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Interface",name:"Interface",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"Unsafe",name:"Unsafe",pkg:"",typ:$funcType([],[$Uintptr],false)}];T.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Stack",name:"Stack",pkg:"",typ:$funcType([],[$String],false)}];A.init("github.com/gopherjs/gopherjs/js",[{prop:"object",name:"object",embedded:false,exported:false,typ:O,tag:""}]);B.init("",[{prop:"Object",name:"Object",embedded:true,exported:true,typ:O,tag:""}]);J.init($String,$emptyInterface);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:L();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["runtime"]=(function(){var $pkg={},$init,A,C,D,L,AF,AT,AX,AY,AZ,BA,BB,BD,H,I,N,O,AM,E,F,J,K,M,P,Q,R,AE,AG,AS,AU,AV,AW;A=$packages["github.com/gopherjs/gopherjs/js"];C=$pkg._type=$newType(0,$kindStruct,"runtime._type",true,"runtime",false,function(str_){this.$val=this;if(arguments.length===0){this.str="";return;}this.str=str_;});D=$pkg.TypeAssertionError=$newType(0,$kindStruct,"runtime.TypeAssertionError",true,"runtime",true,function(_interface_,concrete_,asserted_,missingMethod_){this.$val=this;if(arguments.length===0){this._interface=AZ.nil;this.concrete=AZ.nil;this.asserted=AZ.nil;this.missingMethod="";return;}this._interface=_interface_;this.concrete=concrete_;this.asserted=asserted_;this.missingMethod=missingMethod_;});L=$pkg.basicFrame=$newType(0,$kindStruct,"runtime.basicFrame",true,"runtime",false,function(FuncName_,File_,Line_,Col_){this.$val=this;if(arguments.length===0){this.FuncName="";this.File="";this.Line=0;this.Col=0;return;}this.FuncName=FuncName_;this.File=File_;this.Line=Line_;this.Col=Col_;});AF=$pkg.Func=$newType(0,$kindStruct,"runtime.Func",true,"runtime",true,function(name_,file_,line_,opaque_){this.$val=this;if(arguments.length===0){this.name="";this.file="";this.line=0;this.opaque=new BA.ptr();return;}this.name=name_;this.file=file_;this.line=line_;this.opaque=opaque_;});AT=$pkg.errorString=$newType(8,$kindString,"runtime.errorString",true,"runtime",false,null);AX=$ptrType(AF);AY=$sliceType(AX);AZ=$ptrType(C);BA=$structType("",[]);BB=$sliceType(L);BD=$ptrType(D);C.ptr.prototype.string=function(){var a;a=this;return a.str;};C.prototype.string=function(){return this.$val.string();};C.ptr.prototype.pkgpath=function(){var a;a=this;return"";};C.prototype.pkgpath=function(){return this.$val.pkgpath();};D.ptr.prototype.RuntimeError=function(){};D.prototype.RuntimeError=function(){return this.$val.RuntimeError();};D.ptr.prototype.Error=function(){var a,b,c,d,e;a=this;b="interface";if(!(a._interface===AZ.nil)){b=a._interface.string();}c=a.asserted.string();if(a.concrete===AZ.nil){return"interface conversion: "+b+" is nil, not "+c;}d=a.concrete.string();if(a.missingMethod===""){e="interface conversion: "+b+" is "+d+", not "+c;if(d===c){if(!(a.concrete.pkgpath()===a.asserted.pkgpath())){e=e+(" (types from different packages)");}else{e=e+(" (types from different scopes)");}}return e;}return"interface conversion: "+d+" is not "+c+": missing method "+a.missingMethod;};D.prototype.Error=function(){return this.$val.Error();};E=function(){var a,b;a=$packages[$externalize("github.com/gopherjs/gopherjs/js",$String)];$jsObjectPtr=a.Object.ptr;$jsErrorPtr=a.Error.ptr;$throwRuntimeError=AU;AM=$internalize($goVersion,$String);b=$ifaceNil;b=new D.ptr(AZ.nil,AZ.nil,AZ.nil,"");$unused(b);};F=function(){var a,b,c;a=$global.process;if(a===undefined){return"/";}b=a.env.GOPHERJS_GOROOT;if(!(b===undefined)&&!($internalize(b,$String)==="")){return $internalize(b,$String);}else{c=a.env.GOROOT;if(!(c===undefined)&&!($internalize(c,$String)==="")){return $internalize(c,$String);}}return"/usr/local/go";};$pkg.GOROOT=F;J=function(a,b,c,d){var a,b,c,d,e,f,g,h,i,j,k,l;e=b+":"+K(c)+":"+K(d);f=(g=$mapIndex(H,$String.keyFor(e)),g!==undefined?[g.v,true]:[0,false]);h=f[0];i=f[1];if(i){return h;}j=new AF.ptr(a,b,c,new BA.ptr());k=((I.$length>>>0));I=$append(I,j);l=e;(H||$throwRuntimeError("assignment to entry in nil map")).set($String.keyFor(l),{k:l,v:k});return k;};K=function(a){var a;return $internalize(new($global.String)(a),$String);};M=function(a,b){var a,b,c;a=(a+1>>0)+1>>0;c=new($global.Error)().stack.split($externalize("\n",$String)).slice(a,a+b>>0);return P(c);};P=function(a){var a,b,c,d,e,f,g,h,i,j;b=new BB([]);c=$parseInt(a.length);d=0;while(true){if(!(d<c)){break;}e=$clone(Q(a[d]),L);if((f=$mapIndex(N,$String.keyFor(e.FuncName)),f!==undefined?f.v:false)){d=d+(1)>>0;continue;}g=(h=$mapIndex(O,$String.keyFor(e.FuncName)),h!==undefined?[h.v,true]:["",false]);i=g[0];j=g[1];if(j){e.FuncName=i;}b=$append(b,e);if(e.FuncName==="runtime.goexit"){break;}d=d+(1)>>0;}return b;};Q=function(a){var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;if(($parseInt(a.indexOf($externalize("@",$String)))>>0)>=0){b=new($global.RegExp)($externalize("[@:]",$String));c=a.split(b);return new L.ptr($internalize(c[0],$String),$internalize(c.slice(1,$parseInt(c.length)-2>>0).join($externalize(":",$String)),$String),$parseInt(c[($parseInt(c.length)-2>>0)])>>0,$parseInt(c[($parseInt(c.length)-1>>0)])>>0);}d=$parseInt(a.lastIndexOf($externalize("(",$String)))>>0;if(d===-1){e=a.split($externalize(":",$String));return new L.ptr("<none>",$internalize(e.slice(0,$parseInt(e.length)-2>>0).join($externalize(":",$String)).replace(new($global.RegExp)($externalize("^\\s*at ",$String)),$externalize("",$String)),$String),$parseInt(e[($parseInt(e.length)-2>>0)])>>0,$parseInt(e[($parseInt(e.length)-1>>0)])>>0);}f="";g="";h=f;i=g;j=0;k=0;l=j;m=k;n=a.substring(d+1>>0,$parseInt(a.indexOf($externalize(")",$String)))>>0);o=n.split($externalize(":",$String));if($internalize(n,$String)==="<anonymous>"){h="<anonymous>";}else{h=$internalize(o.slice(0,$parseInt(o.length)-2>>0).join($externalize(":",$String)),$String);l=$parseInt(o[($parseInt(o.length)-2>>0)])>>0;m=$parseInt(o[($parseInt(o.length)-1>>0)])>>0;}p=a.substring(($parseInt(a.indexOf($externalize("at ",$String)))>>0)+3>>0,$parseInt(a.indexOf($externalize(" (",$String)))>>0);q=$parseInt(p.indexOf($externalize("[as ",$String)))>>0;if(q>0){p=p.substring(q+4>>0,p.indexOf($externalize("]",$String)));}i=$internalize(p,$String);return new L.ptr(i,h,l,m);};$pkg.ParseCallFrame=Q;R=function(a){var a,b,c,d,e,f,g,h,i,j,k,l,m,n;b=0;c="";d=0;e=false;a=a+1>>0;f=M(a,1);if(!((f.$length===1))){g=0;h="";i=0;j=false;b=g;c=h;d=i;e=j;return[b,c,d,e];}b=J((0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]).FuncName,(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]).File,(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]).Line,(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]).Col);k=b;l=(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]).File;m=(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]).Line;n=true;b=k;c=l;d=m;e=n;return[b,c,d,e];};$pkg.Caller=R;AE=function(a,b){var a,b;};$pkg.SetFinalizer=AE;AF.ptr.prototype.Entry=function(){return 0;};AF.prototype.Entry=function(){return this.$val.Entry();};AF.ptr.prototype.FileLine=function(a){var a,b,c,d,e,f,g,h;b="";c=0;d=this;if(d===AX.nil){e="";f=0;b=e;c=f;return[b,c];}g=d.file;h=d.line;b=g;c=h;return[b,c];};AF.prototype.FileLine=function(a){return this.$val.FileLine(a);};AF.ptr.prototype.Name=function(){var a;a=this;if(a===AX.nil||a.name===""){return"<unknown>";}return a.name;};AF.prototype.Name=function(){return this.$val.Name();};AG=function(a){var a,b;b=((a>>0));if(b>=I.$length){$panic(new $String("GopherJS: pc="+K(b)+" is out of range of known position counters"));}return((b<0||b>=I.$length)?($throwRuntimeError("index out of range"),undefined):I.$array[I.$offset+b]);};$pkg.FuncForPC=AG;AS=function(a){var a;};$pkg.KeepAlive=AS;AT.prototype.RuntimeError=function(){var a;a=this.$val;};$ptrType(AT).prototype.RuntimeError=function(){return new AT(this.$get()).RuntimeError();};AT.prototype.Error=function(){var a;a=this.$val;return"runtime error: "+(a);};$ptrType(AT).prototype.Error=function(){return new AT(this.$get()).Error();};AU=function(a){var a;$panic(new AT((a)));};AV=function(){return $mul64($internalize(new($global.Date)().getTime(),$Int64),new $Int64(0,1000000));};$linknames["runtime.nanotime"]=AV;AW=function(){return(($parseFloat($global.Math.random())*4.294967295e+09>>0));};$linknames["runtime.fastrand"]=AW;AZ.methods=[{prop:"string",name:"string",pkg:"runtime",typ:$funcType([],[$String],false)},{prop:"pkgpath",name:"pkgpath",pkg:"runtime",typ:$funcType([],[$String],false)}];BD.methods=[{prop:"RuntimeError",name:"RuntimeError",pkg:"",typ:$funcType([],[],false)},{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];AX.methods=[{prop:"Entry",name:"Entry",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"FileLine",name:"FileLine",pkg:"",typ:$funcType([$Uintptr],[$String,$Int],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)}];AT.methods=[{prop:"RuntimeError",name:"RuntimeError",pkg:"",typ:$funcType([],[],false)},{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];C.init("runtime",[{prop:"str",name:"str",embedded:false,exported:false,typ:$String,tag:""}]);D.init("runtime",[{prop:"_interface",name:"_interface",embedded:false,exported:false,typ:AZ,tag:""},{prop:"concrete",name:"concrete",embedded:false,exported:false,typ:AZ,tag:""},{prop:"asserted",name:"asserted",embedded:false,exported:false,typ:AZ,tag:""},{prop:"missingMethod",name:"missingMethod",embedded:false,exported:false,typ:$String,tag:""}]);L.init("",[{prop:"FuncName",name:"FuncName",embedded:false,exported:true,typ:$String,tag:""},{prop:"File",name:"File",embedded:false,exported:true,typ:$String,tag:""},{prop:"Line",name:"Line",embedded:false,exported:true,typ:$Int,tag:""},{prop:"Col",name:"Col",embedded:false,exported:true,typ:$Int,tag:""}]);AF.init("runtime",[{prop:"name",name:"name",embedded:false,exported:false,typ:$String,tag:""},{prop:"file",name:"file",embedded:false,exported:false,typ:$String,tag:""},{prop:"line",name:"line",embedded:false,exported:false,typ:$Int,tag:""},{prop:"opaque",name:"opaque",embedded:false,exported:false,typ:BA,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}AM="";H=$makeMap($String.keyFor,[]);I=new AY([]);N=$makeMap($String.keyFor,[{k:"$callDeferred",v:true}]);O=$makeMap($String.keyFor,[{k:"$panic",v:"runtime.gopanic"},{k:"$goroutine",v:"runtime.goexit"}]);E();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["internal/goarch"]=(function(){var $pkg={},$init;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["internal/unsafeheader"]=(function(){var $pkg={},$init,A;A=$pkg.Slice=$newType(0,$kindStruct,"unsafeheader.Slice",true,"internal/unsafeheader",true,function(Data_,Len_,Cap_){this.$val=this;if(arguments.length===0){this.Data=0;this.Len=0;this.Cap=0;return;}this.Data=Data_;this.Len=Len_;this.Cap=Cap_;});A.init("",[{prop:"Data",name:"Data",embedded:false,exported:true,typ:$UnsafePointer,tag:""},{prop:"Len",name:"Len",embedded:false,exported:true,typ:$Int,tag:""},{prop:"Cap",name:"Cap",embedded:false,exported:true,typ:$Int,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["internal/reflectlite"]=(function(){var $pkg={},$init,D,A,B,C,E,F,I,O,P,Q,R,S,T,U,V,W,X,Y,Z,AA,AB,AC,AG,AH,AI,AT,AV,BL,BN,BO,BP,CU,CW,DU,DV,DW,DX,DY,DZ,EA,EC,ED,EE,EF,EG,EH,EI,EJ,EK,EL,EM,EN,EO,ES,ET,EU,EV,EW,EX,EY,EZ,AD,AR,BB,BD,BE,BF,BG,BH,BM,BQ,BS,BU,DH,DN,AK,AL,AM,AN,AP,AQ,AU,BA,BC,BI,BJ,BK,BR,BT,BV,BW,BX,BY,BZ,CB,CC,CF,CH,CJ,CM,CQ,CR,CV,CX,CY,CZ,DC,DD,DE,DF,DG,DI,DJ,DK,DL,DM;D=$packages["github.com/gopherjs/gopherjs/js"];A=$packages["internal/goarch"];B=$packages["internal/unsafeheader"];C=$packages["runtime"];E=$pkg.Value=$newType(0,$kindStruct,"reflectlite.Value",true,"internal/reflectlite",true,function(typ_,ptr_,flag_){this.$val=this;if(arguments.length===0){this.typ=DU.nil;this.ptr=0;this.flag=0;return;}this.typ=typ_;this.ptr=ptr_;this.flag=flag_;});F=$pkg.flag=$newType(4,$kindUintptr,"reflectlite.flag",true,"internal/reflectlite",false,null);I=$pkg.ValueError=$newType(0,$kindStruct,"reflectlite.ValueError",true,"internal/reflectlite",true,function(Method_,Kind_){this.$val=this;if(arguments.length===0){this.Method="";this.Kind=0;return;}this.Method=Method_;this.Kind=Kind_;});O=$pkg.Type=$newType(8,$kindInterface,"reflectlite.Type",true,"internal/reflectlite",true,null);P=$pkg.Kind=$newType(4,$kindUint,"reflectlite.Kind",true,"internal/reflectlite",true,null);Q=$pkg.tflag=$newType(1,$kindUint8,"reflectlite.tflag",true,"internal/reflectlite",false,null);R=$pkg.rtype=$newType(0,$kindStruct,"reflectlite.rtype",true,"internal/reflectlite",false,function(size_,ptrdata_,hash_,tflag_,align_,fieldAlign_,kind_,equal_,gcdata_,str_,ptrToThis_){this.$val=this;if(arguments.length===0){this.size=0;this.ptrdata=0;this.hash=0;this.tflag=0;this.align=0;this.fieldAlign=0;this.kind=0;this.equal=$throwNilPointerError;this.gcdata=EG.nil;this.str=0;this.ptrToThis=0;return;}this.size=size_;this.ptrdata=ptrdata_;this.hash=hash_;this.tflag=tflag_;this.align=align_;this.fieldAlign=fieldAlign_;this.kind=kind_;this.equal=equal_;this.gcdata=gcdata_;this.str=str_;this.ptrToThis=ptrToThis_;});S=$pkg.method=$newType(0,$kindStruct,"reflectlite.method",true,"internal/reflectlite",false,function(name_,mtyp_,ifn_,tfn_){this.$val=this;if(arguments.length===0){this.name=0;this.mtyp=0;this.ifn=0;this.tfn=0;return;}this.name=name_;this.mtyp=mtyp_;this.ifn=ifn_;this.tfn=tfn_;});T=$pkg.chanDir=$newType(4,$kindInt,"reflectlite.chanDir",true,"internal/reflectlite",false,null);U=$pkg.arrayType=$newType(0,$kindStruct,"reflectlite.arrayType",true,"internal/reflectlite",false,function(rtype_,elem_,slice_,len_){this.$val=this;if(arguments.length===0){this.rtype=new R.ptr(0,0,0,0,0,0,0,$throwNilPointerError,EG.nil,0,0);this.elem=DU.nil;this.slice=DU.nil;this.len=0;return;}this.rtype=rtype_;this.elem=elem_;this.slice=slice_;this.len=len_;});V=$pkg.chanType=$newType(0,$kindStruct,"reflectlite.chanType",true,"internal/reflectlite",false,function(rtype_,elem_,dir_){this.$val=this;if(arguments.length===0){this.rtype=new R.ptr(0,0,0,0,0,0,0,$throwNilPointerError,EG.nil,0,0);this.elem=DU.nil;this.dir=0;return;}this.rtype=rtype_;this.elem=elem_;this.dir=dir_;});W=$pkg.imethod=$newType(0,$kindStruct,"reflectlite.imethod",true,"internal/reflectlite",false,function(name_,typ_){this.$val=this;if(arguments.length===0){this.name=0;this.typ=0;return;}this.name=name_;this.typ=typ_;});X=$pkg.interfaceType=$newType(0,$kindStruct,"reflectlite.interfaceType",true,"internal/reflectlite",false,function(rtype_,pkgPath_,methods_){this.$val=this;if(arguments.length===0){this.rtype=new R.ptr(0,0,0,0,0,0,0,$throwNilPointerError,EG.nil,0,0);this.pkgPath=new BO.ptr(EG.nil);this.methods=EK.nil;return;}this.rtype=rtype_;this.pkgPath=pkgPath_;this.methods=methods_;});Y=$pkg.mapType=$newType(0,$kindStruct,"reflectlite.mapType",true,"internal/reflectlite",false,function(rtype_,key_,elem_,bucket_,hasher_,keysize_,valuesize_,bucketsize_,flags_){this.$val=this;if(arguments.length===0){this.rtype=new R.ptr(0,0,0,0,0,0,0,$throwNilPointerError,EG.nil,0,0);this.key=DU.nil;this.elem=DU.nil;this.bucket=DU.nil;this.hasher=$throwNilPointerError;this.keysize=0;this.valuesize=0;this.bucketsize=0;this.flags=0;return;}this.rtype=rtype_;this.key=key_;this.elem=elem_;this.bucket=bucket_;this.hasher=hasher_;this.keysize=keysize_;this.valuesize=valuesize_;this.bucketsize=bucketsize_;this.flags=flags_;});Z=$pkg.ptrType=$newType(0,$kindStruct,"reflectlite.ptrType",true,"internal/reflectlite",false,function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new R.ptr(0,0,0,0,0,0,0,$throwNilPointerError,EG.nil,0,0);this.elem=DU.nil;return;}this.rtype=rtype_;this.elem=elem_;});AA=$pkg.sliceType=$newType(0,$kindStruct,"reflectlite.sliceType",true,"internal/reflectlite",false,function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new R.ptr(0,0,0,0,0,0,0,$throwNilPointerError,EG.nil,0,0);this.elem=DU.nil;return;}this.rtype=rtype_;this.elem=elem_;});AB=$pkg.structField=$newType(0,$kindStruct,"reflectlite.structField",true,"internal/reflectlite",false,function(name_,typ_,offsetEmbed_){this.$val=this;if(arguments.length===0){this.name=new BO.ptr(EG.nil);this.typ=DU.nil;this.offsetEmbed=0;return;}this.name=name_;this.typ=typ_;this.offsetEmbed=offsetEmbed_;});AC=$pkg.structType=$newType(0,$kindStruct,"reflectlite.structType",true,"internal/reflectlite",false,function(rtype_,pkgPath_,fields_){this.$val=this;if(arguments.length===0){this.rtype=new R.ptr(0,0,0,0,0,0,0,$throwNilPointerError,EG.nil,0,0);this.pkgPath=new BO.ptr(EG.nil);this.fields=EL.nil;return;}this.rtype=rtype_;this.pkgPath=pkgPath_;this.fields=fields_;});AG=$pkg.nameOff=$newType(4,$kindInt32,"reflectlite.nameOff",true,"internal/reflectlite",false,null);AH=$pkg.typeOff=$newType(4,$kindInt32,"reflectlite.typeOff",true,"internal/reflectlite",false,null);AI=$pkg.textOff=$newType(4,$kindInt32,"reflectlite.textOff",true,"internal/reflectlite",false,null);AT=$pkg.errorString=$newType(0,$kindStruct,"reflectlite.errorString",true,"internal/reflectlite",false,function(s_){this.$val=this;if(arguments.length===0){this.s="";return;}this.s=s_;});AV=$pkg.Method=$newType(0,$kindStruct,"reflectlite.Method",true,"internal/reflectlite",true,function(Name_,PkgPath_,Type_,Func_,Index_){this.$val=this;if(arguments.length===0){this.Name="";this.PkgPath="";this.Type=$ifaceNil;this.Func=new E.ptr(DU.nil,0,0);this.Index=0;return;}this.Name=Name_;this.PkgPath=PkgPath_;this.Type=Type_;this.Func=Func_;this.Index=Index_;});BL=$pkg.uncommonType=$newType(0,$kindStruct,"reflectlite.uncommonType",true,"internal/reflectlite",false,function(pkgPath_,mcount_,xcount_,moff_,_methods_){this.$val=this;if(arguments.length===0){this.pkgPath=0;this.mcount=0;this.xcount=0;this.moff=0;this._methods=ED.nil;return;}this.pkgPath=pkgPath_;this.mcount=mcount_;this.xcount=xcount_;this.moff=moff_;this._methods=_methods_;});BN=$pkg.funcType=$newType(0,$kindStruct,"reflectlite.funcType",true,"internal/reflectlite",false,function(rtype_,inCount_,outCount_,_in_,_out_){this.$val=this;if(arguments.length===0){this.rtype=new R.ptr(0,0,0,0,0,0,0,$throwNilPointerError,EG.nil,0,0);this.inCount=0;this.outCount=0;this._in=DW.nil;this._out=DW.nil;return;}this.rtype=rtype_;this.inCount=inCount_;this.outCount=outCount_;this._in=_in_;this._out=_out_;});BO=$pkg.name=$newType(0,$kindStruct,"reflectlite.name",true,"internal/reflectlite",false,function(bytes_){this.$val=this;if(arguments.length===0){this.bytes=EG.nil;return;}this.bytes=bytes_;});BP=$pkg.nameData=$newType(0,$kindStruct,"reflectlite.nameData",true,"internal/reflectlite",false,function(name_,tag_,exported_){this.$val=this;if(arguments.length===0){this.name="";this.tag="";this.exported=false;return;}this.name=name_;this.tag=tag_;this.exported=exported_;});CU=$pkg.mapIter=$newType(0,$kindStruct,"reflectlite.mapIter",true,"internal/reflectlite",false,function(t_,m_,keys_,i_,last_){this.$val=this;if(arguments.length===0){this.t=$ifaceNil;this.m=null;this.keys=null;this.i=0;this.last=null;return;}this.t=t_;this.m=m_;this.keys=keys_;this.i=i_;this.last=last_;});CW=$pkg.TypeEx=$newType(8,$kindInterface,"reflectlite.TypeEx",true,"internal/reflectlite",true,null);DU=$ptrType(R);DV=$sliceType(BO);DW=$sliceType(DU);DX=$sliceType($String);DY=$sliceType($emptyInterface);DZ=$ptrType(D.Object);EA=$funcType([DY],[DZ],true);EC=$ptrType(BL);ED=$sliceType(S);EE=$ptrType(BN);EF=$sliceType(E);EG=$ptrType($Uint8);EH=$ptrType($UnsafePointer);EI=$sliceType(O);EJ=$sliceType(DZ);EK=$sliceType(W);EL=$sliceType(AB);EM=$ptrType(BP);EN=$structType("internal/reflectlite",[{prop:"str",name:"str",embedded:false,exported:false,typ:$String,tag:""}]);EO=$ptrType(CU);ES=$arrayType($Uintptr,2);ET=$sliceType($Uint8);EU=$ptrType(I);EV=$funcType([$UnsafePointer,$UnsafePointer],[$Bool],false);EW=$ptrType(X);EX=$funcType([$UnsafePointer,$Uintptr],[$Uintptr],false);EY=$ptrType(AB);EZ=$ptrType(AT);F.prototype.kind=function(){var m;m=this.$val;return((((m&31)>>>0)>>>0));};$ptrType(F).prototype.kind=function(){return new F(this.$get()).kind();};F.prototype.ro=function(){var m;m=this.$val;if(!((((m&96)>>>0)===0))){return 32;}return 0;};$ptrType(F).prototype.ro=function(){return new F(this.$get()).ro();};E.ptr.prototype.pointer=function(){var m;m=this;if(!((m.typ.size===4))||!m.typ.pointers()){$panic(new $String("can't call pointer on a non-pointer Value"));}if(!((((m.flag&128)>>>0)===0))){return(m.ptr).$get();}return m.ptr;};E.prototype.pointer=function(){return this.$val.pointer();};I.ptr.prototype.Error=function(){var m;m=this;if(m.Kind===0){return"reflect: call of "+m.Method+" on zero Value";}return"reflect: call of "+m.Method+" on "+new P(m.Kind).String()+" Value";};I.prototype.Error=function(){return this.$val.Error();};F.prototype.mustBeExported=function(){var m;m=this.$val;if(m===0){$panic(new I.ptr(DF(),0));}if(!((((m&96)>>>0)===0))){$panic(new $String("reflect: "+DF()+" using value obtained using unexported field"));}};$ptrType(F).prototype.mustBeExported=function(){return new F(this.$get()).mustBeExported();};F.prototype.mustBeAssignable=function(){var m;m=this.$val;if(m===0){$panic(new I.ptr(DF(),0));}if(!((((m&96)>>>0)===0))){$panic(new $String("reflect: "+DF()+" using value obtained using unexported field"));}if(((m&256)>>>0)===0){$panic(new $String("reflect: "+DF()+" using unaddressable value"));}};$ptrType(F).prototype.mustBeAssignable=function(){return new F(this.$get()).mustBeAssignable();};E.ptr.prototype.CanSet=function(){var m;m=this;return((m.flag&352)>>>0)===256;};E.prototype.CanSet=function(){return this.$val.CanSet();};E.ptr.prototype.IsValid=function(){var m;m=this;return!((m.flag===0));};E.prototype.IsValid=function(){return this.$val.IsValid();};E.ptr.prototype.Kind=function(){var m;m=this;return new F(m.flag).kind();};E.prototype.Kind=function(){return this.$val.Kind();};E.ptr.prototype.Type=function(){var m,n;m=this;n=m.flag;if(n===0){$panic(new I.ptr("reflectlite.Value.Type",0));}return m.typ;};E.prototype.Type=function(){return this.$val.Type();};AB.ptr.prototype.embedded=function(){var m;m=this;return!((((m.offsetEmbed&1)>>>0)===0));};AB.prototype.embedded=function(){return this.$val.embedded();};P.prototype.String=function(){var m;m=this.$val;if(((m>>0))<AD.$length){return((m<0||m>=AD.$length)?($throwRuntimeError("index out of range"),undefined):AD.$array[AD.$offset+m]);}return(0>=AD.$length?($throwRuntimeError("index out of range"),undefined):AD.$array[AD.$offset+0]);};$ptrType(P).prototype.String=function(){return new P(this.$get()).String();};R.ptr.prototype.String=function(){var m,n;m=this;n=$clone(m.nameOff(m.str),BO).name();if(!((((m.tflag&2)>>>0)===0))){return $substring(n,1);}return n;};R.prototype.String=function(){return this.$val.String();};R.ptr.prototype.Size=function(){var m;m=this;return m.size;};R.prototype.Size=function(){return this.$val.Size();};R.ptr.prototype.Kind=function(){var m;m=this;return((((m.kind&31)>>>0)>>>0));};R.prototype.Kind=function(){return this.$val.Kind();};R.ptr.prototype.pointers=function(){var m;m=this;return!((m.ptrdata===0));};R.prototype.pointers=function(){return this.$val.pointers();};R.ptr.prototype.common=function(){var m;m=this;return m;};R.prototype.common=function(){return this.$val.common();};R.ptr.prototype.exportedMethods=function(){var m,n;m=this;n=m.uncommon();if(n===EC.nil){return ED.nil;}return n.exportedMethods();};R.prototype.exportedMethods=function(){return this.$val.exportedMethods();};R.ptr.prototype.NumMethod=function(){var m,n;m=this;if(m.Kind()===20){n=(m.kindType);return n.NumMethod();}return m.exportedMethods().$length;};R.prototype.NumMethod=function(){return this.$val.NumMethod();};R.ptr.prototype.PkgPath=function(){var m,n;m=this;if(((m.tflag&4)>>>0)===0){return"";}n=m.uncommon();if(n===EC.nil){return"";}return $clone(m.nameOff(n.pkgPath),BO).name();};R.prototype.PkgPath=function(){return this.$val.PkgPath();};R.ptr.prototype.hasName=function(){var m;m=this;return!((((m.tflag&4)>>>0)===0));};R.prototype.hasName=function(){return this.$val.hasName();};R.ptr.prototype.Name=function(){var m,n,o;m=this;if(!m.hasName()){return"";}n=m.String();o=n.length-1>>0;while(true){if(!(o>=0&&!((n.charCodeAt(o)===46)))){break;}o=o-(1)>>0;}return $substring(n,(o+1>>0));};R.prototype.Name=function(){return this.$val.Name();};R.ptr.prototype.chanDir=function(){var m,n;m=this;if(!((m.Kind()===18))){$panic(new $String("reflect: chanDir of non-chan type"));}n=(m.kindType);return((n.dir>>0));};R.prototype.chanDir=function(){return this.$val.chanDir();};R.ptr.prototype.Elem=function(){var m,n,o,p,q,r,s;m=this;n=m.Kind();if(n===(17)){o=(m.kindType);return AP(o.elem);}else if(n===(18)){p=(m.kindType);return AP(p.elem);}else if(n===(21)){q=(m.kindType);return AP(q.elem);}else if(n===(22)){r=(m.kindType);return AP(r.elem);}else if(n===(23)){s=(m.kindType);return AP(s.elem);}$panic(new $String("reflect: Elem of invalid type"));};R.prototype.Elem=function(){return this.$val.Elem();};R.ptr.prototype.In=function(m){var m,n,o,p;n=this;if(!((n.Kind()===19))){$panic(new $String("reflect: In of non-func type"));}o=(n.kindType);return AP((p=o.in$(),((m<0||m>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+m])));};R.prototype.In=function(m){return this.$val.In(m);};R.ptr.prototype.Len=function(){var m,n;m=this;if(!((m.Kind()===17))){$panic(new $String("reflect: Len of non-array type"));}n=(m.kindType);return((n.len>>0));};R.prototype.Len=function(){return this.$val.Len();};R.ptr.prototype.NumIn=function(){var m,n;m=this;if(!((m.Kind()===19))){$panic(new $String("reflect: NumIn of non-func type"));}n=(m.kindType);return((n.inCount>>0));};R.prototype.NumIn=function(){return this.$val.NumIn();};R.ptr.prototype.NumOut=function(){var m,n;m=this;if(!((m.Kind()===19))){$panic(new $String("reflect: NumOut of non-func type"));}n=(m.kindType);return n.out().$length;};R.prototype.NumOut=function(){return this.$val.NumOut();};R.ptr.prototype.Out=function(m){var m,n,o,p;n=this;if(!((n.Kind()===19))){$panic(new $String("reflect: Out of non-func type"));}o=(n.kindType);return AP((p=o.out(),((m<0||m>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+m])));};R.prototype.Out=function(m){return this.$val.Out(m);};X.ptr.prototype.NumMethod=function(){var m;m=this;return m.methods.$length;};X.prototype.NumMethod=function(){return this.$val.NumMethod();};R.ptr.prototype.Implements=function(m){var{m,n,o,$s,$r,$c}=$restore(this,{m});$s=$s||0;s:while(true){switch($s){case 0:n=this;if($interfaceIsEqual(m,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.Implements"));}o=m.Kind();$s=3;case 3:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}if(!((o===20))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect: non-interface type passed to Type.Implements"));case 2:$s=-1;return AK($assertType(m,DU),n);}return;}var $f={$blk:R.ptr.prototype.Implements,$c:true,$r,m,n,o,$s};return $f;};R.prototype.Implements=function(m){return this.$val.Implements(m);};R.ptr.prototype.AssignableTo=function(m){var{m,n,o,p,q,$s,$r,$c}=$restore(this,{m});$s=$s||0;s:while(true){switch($s){case 0:n=this;if($interfaceIsEqual(m,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.AssignableTo"));}o=$assertType(m,DU);p=AL(o,n);$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=p||AK(o,n);$s=2;case 2:return q;}return;}var $f={$blk:R.ptr.prototype.AssignableTo,$c:true,$r,m,n,o,p,q,$s};return $f;};R.prototype.AssignableTo=function(m){return this.$val.AssignableTo(m);};AK=function(m,n){var aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,m,n,o,p,q,r,s,t,u,v,w,x,y,z;if(!((m.Kind()===20))){return false;}o=(m.kindType);if(o.methods.$length===0){return true;}if(n.Kind()===20){p=(n.kindType);q=0;r=0;while(true){if(!(r<p.methods.$length)){break;}t=(s=o.methods,((q<0||q>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+q]));u=$clone(o.rtype.nameOff(t.name),BO);w=(v=p.methods,((r<0||r>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+r]));x=$clone(n.nameOff(w.name),BO);if($clone(x,BO).name()===$clone(u,BO).name()&&n.typeOff(w.typ)===o.rtype.typeOff(t.typ)){if(!$clone(u,BO).isExported()){y=$clone(u,BO).pkgPath();if(y===""){y=$clone(o.pkgPath,BO).name();}z=$clone(x,BO).pkgPath();if(z===""){z=$clone(p.pkgPath,BO).name();}if(!(y===z)){r=r+(1)>>0;continue;}}q=q+(1)>>0;if(q>=o.methods.$length){return true;}}r=r+(1)>>0;}return false;}aa=n.uncommon();if(aa===EC.nil){return false;}ab=0;ac=aa.methods();ad=0;while(true){if(!(ad<((aa.mcount>>0)))){break;}af=(ae=o.methods,((ab<0||ab>=ae.$length)?($throwRuntimeError("index out of range"),undefined):ae.$array[ae.$offset+ab]));ag=$clone(o.rtype.nameOff(af.name),BO);ah=$clone(((ad<0||ad>=ac.$length)?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+ad]),S);ai=$clone(n.nameOff(ah.name),BO);if($clone(ai,BO).name()===$clone(ag,BO).name()&&n.typeOff(ah.mtyp)===o.rtype.typeOff(af.typ)){if(!$clone(ag,BO).isExported()){aj=$clone(ag,BO).pkgPath();if(aj===""){aj=$clone(o.pkgPath,BO).name();}ak=$clone(ai,BO).pkgPath();if(ak===""){ak=$clone(n.nameOff(aa.pkgPath),BO).name();}if(!(aj===ak)){ad=ad+(1)>>0;continue;}}ab=ab+(1)>>0;if(ab>=o.methods.$length){return true;}}ad=ad+(1)>>0;}return false;};AL=function(m,n){var{m,n,o,p,$s,$r,$c}=$restore(this,{m,n});$s=$s||0;s:while(true){switch($s){case 0:if(m===n){$s=-1;return true;}if(m.hasName()&&n.hasName()||!((m.Kind()===n.Kind()))){$s=-1;return false;}o=AN(m,n,true);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;$s=2;case 2:return p;}return;}var $f={$blk:AL,$c:true,$r,m,n,o,p,$s};return $f;};AM=function(m,n,o){var{m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{m,n,o});$s=$s||0;s:while(true){switch($s){case 0:if(o){$s=-1;return $interfaceIsEqual(m,n);}q=m.Name();$s=4;case 4:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=n.Name();$s=5;case 5:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}if(!(q===r)){p=true;$s=3;continue s;}s=m.Kind();$s=6;case 6:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=n.Kind();$s=7;case 7:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}p=!((s===t));case 3:if(p){$s=1;continue;}$s=2;continue;case 1:$s=-1;return false;case 2:u=m.common();$s=8;case 8:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}v=u;w=n.common();$s=9;case 9:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}x=w;y=AN(v,x,false);$s=10;case 10:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=y;$s=11;case 11:return z;}return;}var $f={$blk:AM,$c:true,$r,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};AN=function(m,n,o){var{aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{m,n,o});$s=$s||0;s:while(true){switch($s){case 0:if(m===n){$s=-1;return true;}p=m.Kind();if(!((p===n.Kind()))){$s=-1;return false;}if(1<=p&&p<=16||(p===24)||(p===26)){$s=-1;return true;}q=p;if(q===(17)){$s=2;continue;}if(q===(18)){$s=3;continue;}if(q===(19)){$s=4;continue;}if(q===(20)){$s=5;continue;}if(q===(21)){$s=6;continue;}if((q===(22))||(q===(23))){$s=7;continue;}if(q===(25)){$s=8;continue;}$s=9;continue;case 2:if(!(m.Len()===n.Len())){r=false;$s=10;continue s;}s=AM(m.Elem(),n.Elem(),o);$s=11;case 11:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;case 10:t=r;$s=12;case 12:return t;case 3:if(!(n.chanDir()===3)){u=false;$s=15;continue s;}v=AM(m.Elem(),n.Elem(),o);$s=16;case 16:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;case 15:if(u){$s=13;continue;}$s=14;continue;case 13:$s=-1;return true;case 14:if(!(n.chanDir()===m.chanDir())){w=false;$s=17;continue s;}x=AM(m.Elem(),n.Elem(),o);$s=18;case 18:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;case 17:y=w;$s=19;case 19:return y;case 4:z=(m.kindType);aa=(n.kindType);if(!((z.outCount===aa.outCount))||!((z.inCount===aa.inCount))){$s=-1;return false;}ab=0;case 20:if(!(ab<z.rtype.NumIn())){$s=21;continue;}ac=AM(z.rtype.In(ab),aa.rtype.In(ab),o);$s=24;case 24:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}if(!ac){$s=22;continue;}$s=23;continue;case 22:$s=-1;return false;case 23:ab=ab+(1)>>0;$s=20;continue;case 21:ad=0;case 25:if(!(ad<z.rtype.NumOut())){$s=26;continue;}ae=AM(z.rtype.Out(ad),aa.rtype.Out(ad),o);$s=29;case 29:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}if(!ae){$s=27;continue;}$s=28;continue;case 27:$s=-1;return false;case 28:ad=ad+(1)>>0;$s=25;continue;case 26:$s=-1;return true;case 5:af=(m.kindType);ag=(n.kindType);if((af.methods.$length===0)&&(ag.methods.$length===0)){$s=-1;return true;}$s=-1;return false;case 6:ai=AM(m.Key(),n.Key(),o);$s=31;case 31:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}if(!(ai)){ah=false;$s=30;continue s;}aj=AM(m.Elem(),n.Elem(),o);$s=32;case 32:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ah=aj;case 30:ak=ah;$s=33;case 33:return ak;case 7:al=AM(m.Elem(),n.Elem(),o);$s=34;case 34:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;$s=35;case 35:return am;case 8:an=(m.kindType);ao=(n.kindType);if(!((an.fields.$length===ao.fields.$length))){$s=-1;return false;}if(!($clone(an.pkgPath,BO).name()===$clone(ao.pkgPath,BO).name())){$s=-1;return false;}ap=an.fields;aq=0;case 36:if(!(aq<ap.$length)){$s=37;continue;}ar=aq;at=(as=an.fields,((ar<0||ar>=as.$length)?($throwRuntimeError("index out of range"),undefined):as.$array[as.$offset+ar]));av=(au=ao.fields,((ar<0||ar>=au.$length)?($throwRuntimeError("index out of range"),undefined):au.$array[au.$offset+ar]));if(!($clone(at.name,BO).name()===$clone(av.name,BO).name())){$s=-1;return false;}aw=AM(at.typ,av.typ,o);$s=40;case 40:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}if(!aw){$s=38;continue;}$s=39;continue;case 38:$s=-1;return false;case 39:if(o&&!($clone(at.name,BO).tag()===$clone(av.name,BO).tag())){$s=-1;return false;}if(!((at.offsetEmbed===av.offsetEmbed))){$s=-1;return false;}aq++;$s=36;continue;case 37:$s=-1;return true;case 9:case 1:$s=-1;return false;}return;}var $f={$blk:AN,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};AP=function(m){var m;if(m===DU.nil){return $ifaceNil;}return m;};AQ=function(m){var m;return((m.kind&32)>>>0)===0;};E.ptr.prototype.object=function(){var m,n,o,p;m=this;if((m.typ.Kind()===17)||(m.typ.Kind()===25)){return m.ptr;}if(!((((m.flag&128)>>>0)===0))){n=m.ptr.$get();if(!(n===$ifaceNil)&&!(n.constructor===BI(m.typ))){switch(0){default:o=m.typ.Kind();if((o===(11))||(o===(6))){n=new(BI(m.typ))(n.$high,n.$low);}else if((o===(15))||(o===(16))){n=new(BI(m.typ))(n.$real,n.$imag);}else if(o===(23)){if(n===n.constructor.nil){n=BI(m.typ).nil;break;}p=new(BI(m.typ))(n.$array);p.$offset=n.$offset;p.$length=n.$length;p.$capacity=n.$capacity;n=p;}}}return n;}return m.ptr;};E.prototype.object=function(){return this.$val.object();};E.ptr.prototype.assignTo=function(m,n,o){var{m,n,o,p,q,r,s,t,u,$s,$r,$c}=$restore(this,{m,n,o});$s=$s||0;s:while(true){switch($s){case 0:p=this;if(!((((p.flag&512)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:q=DG(m,$clone(p,E));$s=3;case 3:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}E.copy(p,q);case 2:r=AL(n,p.typ);$s=8;case 8:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}if(r){$s=5;continue;}if(AK(n,p.typ)){$s=6;continue;}$s=7;continue;case 5:s=(((p.flag&384)>>>0)|new F(p.flag).ro())>>>0;s=(s|(((n.Kind()>>>0))))>>>0;$s=-1;return new E.ptr(n,p.ptr,s);case 6:if(o===0){o=CJ(n);}t=DD($clone(p,E));$s=9;case 9:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}u=t;if(n.NumMethod()===0){(o).$set(u);}else{DE(n,u,o);}$s=-1;return new E.ptr(n,o,148);case 7:case 4:$panic(new $String(m+": value of type "+p.typ.String()+" is not assignable to type "+n.String()));$s=-1;return new E.ptr(DU.nil,0,0);}return;}var $f={$blk:E.ptr.prototype.assignTo,$c:true,$r,m,n,o,p,q,r,s,t,u,$s};return $f;};E.prototype.assignTo=function(m,n,o){return this.$val.assignTo(m,n,o);};E.ptr.prototype.Cap=function(){var m,n,o;m=this;n=new F(m.flag).kind();o=n;if(o===(17)){return m.typ.Len();}else if((o===(18))||(o===(23))){return $parseInt($clone(m,E).object().$capacity)>>0;}$panic(new I.ptr("reflect.Value.Cap",n));};E.prototype.Cap=function(){return this.$val.Cap();};E.ptr.prototype.Index=function(m){var{aa,ab,ac,ad,ae,af,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{m});$s=$s||0;s:while(true){switch($s){case 0:m=[m];n=[n];o=[o];p=[p];q=[q];r=[r];s=this;t=new F(s.flag).kind();u=t;if(u===(17)){$s=2;continue;}if(u===(23)){$s=3;continue;}if(u===(24)){$s=4;continue;}$s=5;continue;case 2:v=(s.typ.kindType);if(m[0]<0||m[0]>((v.len>>0))){$panic(new $String("reflect: array index out of range"));}q[0]=v.elem;w=(((((s.flag&384)>>>0)|new F(s.flag).ro())>>>0)|((q[0].Kind()>>>0)))>>>0;n[0]=s.ptr;if(!((((w&128)>>>0)===0))&&!((q[0].Kind()===17))&&!((q[0].Kind()===25))){$s=7;continue;}$s=8;continue;case 7:$s=-1;return new E.ptr(q[0],(new(BI(DL(q[0])))((function(m,n,o,p,q,r){return function(){return DI(q[0],n[0][m[0]]);};})(m,n,o,p,q,r),(function(m,n,o,p,q,r){return function(x){var x;n[0][m[0]]=DJ(q[0],x);};})(m,n,o,p,q,r))),w);case 8:x=BZ(q[0],DI(q[0],n[0][m[0]]),w);$s=9;case 9:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}y=x;$s=10;case 10:return y;case 3:z=$clone(s,E).object();if(m[0]<0||m[0]>=($parseInt(z.$length)>>0)){$panic(new $String("reflect: slice index out of range"));}aa=(s.typ.kindType);r[0]=aa.elem;ab=(((384|new F(s.flag).ro())>>>0)|((r[0].Kind()>>>0)))>>>0;m[0]=m[0]+(($parseInt(z.$offset)>>0))>>0;o[0]=z.$array;if(!((((ab&128)>>>0)===0))&&!((r[0].Kind()===17))&&!((r[0].Kind()===25))){$s=11;continue;}$s=12;continue;case 11:$s=-1;return new E.ptr(r[0],(new(BI(DL(r[0])))((function(m,n,o,p,q,r){return function(){return DI(r[0],o[0][m[0]]);};})(m,n,o,p,q,r),(function(m,n,o,p,q,r){return function(ac){var ac;o[0][m[0]]=DJ(r[0],ac);};})(m,n,o,p,q,r))),ab);case 12:ac=BZ(r[0],DI(r[0],o[0][m[0]]),ab);$s=13;case 13:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ad=ac;$s=14;case 14:return ad;case 4:ae=(s.ptr).$get();if(m[0]<0||m[0]>=ae.length){$panic(new $String("reflect: string index out of range"));}af=(((new F(s.flag).ro()|8)>>>0)|128)>>>0;p[0]=ae.charCodeAt(m[0]);$s=-1;return new E.ptr(BD,((p.$ptr||(p.$ptr=new EG(function(){return this.$target[0];},function($v){this.$target[0]=$v;},p)))),af);case 5:$panic(new I.ptr("reflect.Value.Index",t));case 6:case 1:$s=-1;return new E.ptr(DU.nil,0,0);}return;}var $f={$blk:E.ptr.prototype.Index,$c:true,$r,aa,ab,ac,ad,ae,af,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};E.prototype.Index=function(m){return this.$val.Index(m);};E.ptr.prototype.InterfaceData=function(){var m;m=this;$panic(new $String("InterfaceData is not supported by GopherJS"));};E.prototype.InterfaceData=function(){return this.$val.InterfaceData();};E.ptr.prototype.IsNil=function(){var m,n,o;m=this;n=new F(m.flag).kind();o=n;if((o===(22))||(o===(23))){return $clone(m,E).object()===BI(m.typ).nil;}else if(o===(18)){return $clone(m,E).object()===$chanNil;}else if(o===(19)){return $clone(m,E).object()===$throwNilPointerError;}else if(o===(21)){return $clone(m,E).object()===false;}else if(o===(20)){return $clone(m,E).object()===$ifaceNil;}else if(o===(26)){return $clone(m,E).object()===0;}else{$panic(new I.ptr("reflect.Value.IsNil",n));}};E.prototype.IsNil=function(){return this.$val.IsNil();};E.ptr.prototype.Len=function(){var m,n,o;m=this;n=new F(m.flag).kind();o=n;if((o===(17))||(o===(24))){return $parseInt($clone(m,E).object().length);}else if(o===(23)){return $parseInt($clone(m,E).object().$length)>>0;}else if(o===(18)){return $parseInt($clone(m,E).object().$buffer.length)>>0;}else if(o===(21)){return $parseInt($clone(m,E).object().size)>>0;}else{$panic(new I.ptr("reflect.Value.Len",n));}};E.prototype.Len=function(){return this.$val.Len();};E.ptr.prototype.Pointer=function(){var m,n,o;m=this;n=new F(m.flag).kind();o=n;if((o===(18))||(o===(21))||(o===(22))||(o===(26))){if($clone(m,E).IsNil()){return 0;}return $clone(m,E).object();}else if(o===(19)){if($clone(m,E).IsNil()){return 0;}return 1;}else if(o===(23)){if($clone(m,E).IsNil()){return 0;}return $clone(m,E).object().$array;}else{$panic(new I.ptr("reflect.Value.Pointer",n));}};E.prototype.Pointer=function(){return this.$val.Pointer();};E.ptr.prototype.Set=function(m){var{m,n,o,p,q,$s,$r,$c}=$restore(this,{m});$s=$s||0;s:while(true){switch($s){case 0:n=this;new F(n.flag).mustBeAssignable();new F(m.flag).mustBeExported();o=$clone(m,E).assignTo("reflect.Set",n.typ,0);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}E.copy(m,o);if(!((((n.flag&128)>>>0)===0))){$s=2;continue;}$s=3;continue;case 2:p=n.typ.Kind();if(p===(17)){$s=5;continue;}if(p===(20)){$s=6;continue;}if(p===(25)){$s=7;continue;}$s=8;continue;case 5:BI(n.typ).copy(n.ptr,m.ptr);$s=9;continue;case 6:q=DD($clone(m,E));$s=10;case 10:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}n.ptr.$set(q);$s=9;continue;case 7:BY(n.ptr,m.ptr,n.typ);$s=9;continue;case 8:n.ptr.$set($clone(m,E).object());case 9:case 4:$s=-1;return;case 3:n.ptr=m.ptr;$s=-1;return;}return;}var $f={$blk:E.ptr.prototype.Set,$c:true,$r,m,n,o,p,q,$s};return $f;};E.prototype.Set=function(m){return this.$val.Set(m);};E.ptr.prototype.SetBytes=function(m){var{m,n,o,p,q,r,s,$s,$r,$c}=$restore(this,{m});$s=$s||0;s:while(true){switch($s){case 0:n=this;new F(n.flag).mustBeAssignable();new F(n.flag).mustBe(23);o=n.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}if(!((o===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.SetBytes of non-byte slice"));case 2:p=m;if(!(n.typ.Name()==="")){q=true;$s=6;continue s;}r=n.typ.Elem().Name();$s=7;case 7:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=!(r==="");case 6:if(q){$s=4;continue;}$s=5;continue;case 4:s=new(BI(n.typ))(p.$array);s.$offset=p.$offset;s.$length=p.$length;s.$capacity=p.$capacity;p=s;case 5:n.ptr.$set(p);$s=-1;return;}return;}var $f={$blk:E.ptr.prototype.SetBytes,$c:true,$r,m,n,o,p,q,r,s,$s};return $f;};E.prototype.SetBytes=function(m){return this.$val.SetBytes(m);};E.ptr.prototype.SetCap=function(m){var m,n,o,p;n=this;new F(n.flag).mustBeAssignable();new F(n.flag).mustBe(23);o=n.ptr.$get();if(m<($parseInt(o.$length)>>0)||m>($parseInt(o.$capacity)>>0)){$panic(new $String("reflect: slice capacity out of range in SetCap"));}p=new(BI(n.typ))(o.$array);p.$offset=o.$offset;p.$length=o.$length;p.$capacity=m;n.ptr.$set(p);};E.prototype.SetCap=function(m){return this.$val.SetCap(m);};E.ptr.prototype.SetLen=function(m){var m,n,o,p;n=this;new F(n.flag).mustBeAssignable();new F(n.flag).mustBe(23);o=n.ptr.$get();if(m<0||m>($parseInt(o.$capacity)>>0)){$panic(new $String("reflect: slice length out of range in SetLen"));}p=new(BI(n.typ))(o.$array);p.$offset=o.$offset;p.$length=m;p.$capacity=o.$capacity;n.ptr.$set(p);};E.prototype.SetLen=function(m){return this.$val.SetLen(m);};E.ptr.prototype.Slice=function(m,n){var{m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{m,n});$s=$s||0;s:while(true){switch($s){case 0:o=this;p=0;q=$ifaceNil;r=null;s=new F(o.flag).kind();t=s;if(t===(17)){$s=2;continue;}if(t===(23)){$s=3;continue;}if(t===(24)){$s=4;continue;}$s=5;continue;case 2:if(((o.flag&256)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}u=(o.typ.kindType);p=((u.len>>0));q=CH(u.elem);r=new(BI(q))($clone(o,E).object());$s=6;continue;case 3:q=o.typ;r=$clone(o,E).object();p=$parseInt(r.$capacity)>>0;$s=6;continue;case 4:v=(o.ptr).$get();if(m<0||n<m||n>v.length){$panic(new $String("reflect.Value.Slice: string slice index out of bounds"));}w=CC(new $String($substring(v,m,n)));$s=7;case 7:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}x=w;$s=8;case 8:return x;case 5:$panic(new I.ptr("reflect.Value.Slice",s));case 6:case 1:if(m<0||n<m||n>p){$panic(new $String("reflect.Value.Slice: slice index out of bounds"));}y=BZ(q,$subslice(r,m,n),new F(o.flag).ro());$s=9;case 9:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=y;$s=10;case 10:return z;}return;}var $f={$blk:E.ptr.prototype.Slice,$c:true,$r,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};E.prototype.Slice=function(m,n){return this.$val.Slice(m,n);};E.ptr.prototype.Slice3=function(m,n,o){var{m,n,o,p,q,r,s,t,u,v,w,x,$s,$r,$c}=$restore(this,{m,n,o});$s=$s||0;s:while(true){switch($s){case 0:p=this;q=0;r=$ifaceNil;s=null;t=new F(p.flag).kind();u=t;if(u===(17)){if(((p.flag&256)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}v=(p.typ.kindType);q=((v.len>>0));r=CH(v.elem);s=new(BI(r))($clone(p,E).object());}else if(u===(23)){r=p.typ;s=$clone(p,E).object();q=$parseInt(s.$capacity)>>0;}else{$panic(new I.ptr("reflect.Value.Slice3",t));}if(m<0||n<m||o<n||o>q){$panic(new $String("reflect.Value.Slice3: slice index out of bounds"));}w=BZ(r,$subslice(s,m,n,o),new F(p.flag).ro());$s=1;case 1:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}x=w;$s=2;case 2:return x;}return;}var $f={$blk:E.ptr.prototype.Slice3,$c:true,$r,m,n,o,p,q,r,s,t,u,v,w,x,$s};return $f;};E.prototype.Slice3=function(m,n,o){return this.$val.Slice3(m,n,o);};E.ptr.prototype.Close=function(){var m;m=this;new F(m.flag).mustBe(18);new F(m.flag).mustBeExported();$close($clone(m,E).object());};E.prototype.Close=function(){return this.$val.Close();};E.ptr.prototype.Elem=function(){var{m,n,o,p,q,r,s,t,u,v,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:m=this;n=new F(m.flag).kind();o=n;if(o===(20)){$s=2;continue;}if(o===(22)){$s=3;continue;}$s=4;continue;case 2:p=$clone(m,E).object();if(p===$ifaceNil){$s=-1;return new E.ptr(DU.nil,0,0);}q=BJ(p.constructor);r=BZ(q,p.$val,new F(m.flag).ro());$s=6;case 6:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=r;$s=7;case 7:return s;case 3:if($clone(m,E).IsNil()){$s=-1;return new E.ptr(DU.nil,0,0);}t=$clone(m,E).object();u=(m.typ.kindType);v=(((((m.flag&96)>>>0)|128)>>>0)|256)>>>0;v=(v|(((u.elem.Kind()>>>0))))>>>0;$s=-1;return new E.ptr(u.elem,(DI(u.elem,t)),v);case 4:$panic(new I.ptr("reflect.Value.Elem",n));case 5:case 1:$s=-1;return new E.ptr(DU.nil,0,0);}return;}var $f={$blk:E.ptr.prototype.Elem,$c:true,$r,m,n,o,p,q,r,s,t,u,v,$s};return $f;};E.prototype.Elem=function(){return this.$val.Elem();};E.ptr.prototype.NumField=function(){var m,n;m=this;new F(m.flag).mustBe(25);n=(m.typ.kindType);return n.fields.$length;};E.prototype.NumField=function(){return this.$val.NumField();};E.ptr.prototype.MapKeys=function(){var{m,n,o,p,q,r,s,t,u,v,w,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:m=this;new F(m.flag).mustBe(21);n=(m.typ.kindType);o=n.key;p=(new F(m.flag).ro()|((o.Kind()>>>0)))>>>0;q=$clone(m,E).pointer();r=0;if(!(q===0)){r=CZ(q);}s=CV(m.typ,q);t=$makeSlice(EF,r);u=0;u=0;case 1:if(!(u<t.$length)){$s=2;continue;}v=CX(s);$s=3;case 3:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}w=v;if(w===0){$s=2;continue;}E.copy(((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u]),DM(o,p,w));CY(s);u=u+(1)>>0;$s=1;continue;case 2:$s=-1;return $subslice(t,0,u);}return;}var $f={$blk:E.ptr.prototype.MapKeys,$c:true,$r,m,n,o,p,q,r,s,t,u,v,w,$s};return $f;};E.prototype.MapKeys=function(){return this.$val.MapKeys();};E.ptr.prototype.MapIndex=function(m){var{m,n,o,p,q,r,s,t,$s,$r,$c}=$restore(this,{m});$s=$s||0;s:while(true){switch($s){case 0:n=this;new F(n.flag).mustBe(21);o=(n.typ.kindType);p=$clone(m,E).assignTo("reflect.Value.MapIndex",o.key,0);$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}E.copy(m,p);q=0;if(!((((m.flag&128)>>>0)===0))){q=m.ptr;}else{q=((m.$ptr_ptr||(m.$ptr_ptr=new EH(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},m))));}r=CR(n.typ,$clone(n,E).pointer(),q);if(r===0){$s=-1;return new E.ptr(DU.nil,0,0);}s=o.elem;t=new F((((n.flag|m.flag)>>>0))).ro();t=(t|(((s.Kind()>>>0))))>>>0;$s=-1;return DM(s,t,r);}return;}var $f={$blk:E.ptr.prototype.MapIndex,$c:true,$r,m,n,o,p,q,r,s,t,$s};return $f;};E.prototype.MapIndex=function(m){return this.$val.MapIndex(m);};E.ptr.prototype.Field=function(m){var{aa,ab,ac,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{m});$s=$s||0;s:while(true){switch($s){case 0:n=[n];o=[o];p=[p];q=[q];r=this;if(!((new F(r.flag).kind()===25))){$panic(new I.ptr("reflect.Value.Field",new F(r.flag).kind()));}s=(r.typ.kindType);if(((m>>>0))>=((s.fields.$length>>>0))){$panic(new $String("reflect: Field index out of range"));}o[0]=$internalize(BI(r.typ).fields[m].prop,$String);u=(t=s.fields,((m<0||m>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+m]));q[0]=u.typ;v=(((r.flag&416)>>>0)|((q[0].Kind()>>>0)))>>>0;if(!$clone(u.name,BO).isExported()){if(u.embedded()){v=(v|(64))>>>0;}else{v=(v|(32))>>>0;}}x=$clone((w=s.fields,((m<0||m>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+m])).name,BO).tag();if(!(x==="")&&!((m===0))){$s=1;continue;}$s=2;continue;case 1:n[0]=DK(x);if(!(n[0]==="")){$s=3;continue;}$s=4;continue;case 3:case 5:y=[y];z=$clone(r,E).Field(0);$s=7;case 7:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}E.copy(r,z);if(r.typ===DH){$s=8;continue;}$s=9;continue;case 8:y[0]=$clone(r,E).object().object;$s=-1;return new E.ptr(q[0],(new(BI(DL(q[0])))((function(n,o,p,q,y){return function(){return $internalize(y[0][$externalize(n[0],$String)],BI(q[0]));};})(n,o,p,q,y),(function(n,o,p,q,y){return function(aa){var aa;y[0][$externalize(n[0],$String)]=$externalize(aa,BI(q[0]));};})(n,o,p,q,y))),v);case 9:if(r.typ.Kind()===22){$s=10;continue;}$s=11;continue;case 10:aa=$clone(r,E).Elem();$s=12;case 12:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}E.copy(r,aa);case 11:$s=5;continue;case 6:case 4:case 2:p[0]=r.ptr;if(!((((v&128)>>>0)===0))&&!((q[0].Kind()===17))&&!((q[0].Kind()===25))){$s=13;continue;}$s=14;continue;case 13:$s=-1;return new E.ptr(q[0],(new(BI(DL(q[0])))((function(n,o,p,q){return function(){return DI(q[0],p[0][$externalize(o[0],$String)]);};})(n,o,p,q),(function(n,o,p,q){return function(ab){var ab;p[0][$externalize(o[0],$String)]=DJ(q[0],ab);};})(n,o,p,q))),v);case 14:ab=BZ(q[0],DI(q[0],p[0][$externalize(o[0],$String)]),v);$s=15;case 15:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ac=ab;$s=16;case 16:return ac;}return;}var $f={$blk:E.ptr.prototype.Field,$c:true,$r,aa,ab,ac,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};E.prototype.Field=function(m){return this.$val.Field(m);};AT.ptr.prototype.Error=function(){var m;m=this;return m.s;};AT.prototype.Error=function(){return this.$val.Error();};AU=function(m){var m;if(m.length<2){return[m,$ifaceNil];}if((m.charCodeAt(0)===39)||(m.charCodeAt(0)===34)){if(m.charCodeAt((m.length-1>>0))===m.charCodeAt(0)){return[$substring(m,1,(m.length-1>>0)),$ifaceNil];}return["",$pkg.ErrSyntax];}return[m,$ifaceNil];};F.prototype.mustBe=function(m){var m,n;n=this.$val;if(!((((((n&31)>>>0)>>>0))===m))){$panic(new I.ptr(DF(),new F(n).kind()));}};$ptrType(F).prototype.mustBe=function(m){return new F(this.$get()).mustBe(m);};R.ptr.prototype.Comparable=function(){var{m,n,o,p,q,r,s,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:m=this;n=m.Kind();if((n===(19))||(n===(23))||(n===(21))){$s=2;continue;}if(n===(17)){$s=3;continue;}if(n===(25)){$s=4;continue;}$s=5;continue;case 2:$s=-1;return false;case 3:o=m.Elem().Comparable();$s=6;case 6:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;$s=7;case 7:return p;case 4:q=0;case 8:if(!(q<m.NumField())){$s=9;continue;}r=$clone(m.Field(q),AB);s=r.typ.Comparable();$s=12;case 12:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}if(!s){$s=10;continue;}$s=11;continue;case 10:$s=-1;return false;case 11:q=q+(1)>>0;$s=8;continue;case 9:case 5:case 1:$s=-1;return true;}return;}var $f={$blk:R.ptr.prototype.Comparable,$c:true,$r,m,n,o,p,q,r,s,$s};return $f;};R.prototype.Comparable=function(){return this.$val.Comparable();};R.ptr.prototype.IsVariadic=function(){var m,n;m=this;if(!((m.Kind()===19))){$panic(new $String("reflect: IsVariadic of non-func type"));}n=(m.kindType);return!((((n.outCount&32768)>>>0)===0));};R.prototype.IsVariadic=function(){return this.$val.IsVariadic();};R.ptr.prototype.Field=function(m){var m,n,o,p;n=this;if(!((n.Kind()===25))){$panic(new $String("reflect: Field of non-struct type"));}o=(n.kindType);if(m<0||m>=o.fields.$length){$panic(new $String("reflect: Field index out of bounds"));}return(p=o.fields,((m<0||m>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+m]));};R.prototype.Field=function(m){return this.$val.Field(m);};R.ptr.prototype.Key=function(){var m,n;m=this;if(!((m.Kind()===21))){$panic(new $String("reflect: Key of non-map type"));}n=(m.kindType);return AP(n.key);};R.prototype.Key=function(){return this.$val.Key();};R.ptr.prototype.NumField=function(){var m,n;m=this;if(!((m.Kind()===25))){$panic(new $String("reflect: NumField of non-struct type"));}n=(m.kindType);return n.fields.$length;};R.prototype.NumField=function(){return this.$val.NumField();};R.ptr.prototype.Method=function(m){var{aa,ab,ac,ad,ae,af,ag,ah,ai,aj,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{m});$s=$s||0;s:while(true){switch($s){case 0:n=[n];o=new AV.ptr("","",$ifaceNil,new E.ptr(DU.nil,0,0),0);p=this;if(p.Kind()===20){$s=1;continue;}$s=2;continue;case 1:q=(p.kindType);r=q.rtype.Method(m);$s=3;case 3:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}AV.copy(o,r);s=o;$s=4;case 4:return s;case 2:t=p.exportedMethods();if(m<0||m>=t.$length){$panic(new $String("reflect: Method index out of range"));}u=$clone(((m<0||m>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+m]),S);v=$clone(p.nameOff(u.name),BO);o.Name=$clone(v,BO).name();w=19;x=p.typeOff(u.mtyp);y=(x.kindType);z=$makeSlice(EI,0,(1+y.in$().$length>>0));z=$append(z,p);aa=y.in$();ab=0;while(true){if(!(ab<aa.$length)){break;}ac=((ab<0||ab>=aa.$length)?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+ab]);z=$append(z,ac);ab++;}ad=$makeSlice(EI,0,y.out().$length);ae=y.out();af=0;while(true){if(!(af<ae.$length)){break;}ag=((af<0||af>=ae.$length)?($throwRuntimeError("index out of range"),undefined):ae.$array[ae.$offset+af]);ad=$append(ad,ag);af++;}ah=CF(z,ad,y.rtype.IsVariadic());$s=5;case 5:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=ah;o.Type=ai;n[0]=$internalize($methodSet(p[$externalize(BE,$String)])[m].prop,$String);aj=D.MakeFunc((function(n){return function(aj,ak){var aj,ak,al;al=(0>=ak.$length?($throwRuntimeError("index out of range"),undefined):ak.$array[ak.$offset+0]);return new $jsObjectPtr(al[$externalize(n[0],$String)].apply(al,$externalize($subslice(ak,1),EJ)));};})(n));E.copy(o.Func,new E.ptr($assertType(ai,DU),(aj),w));o.Index=m;AV.copy(o,o);$s=-1;return o;}return;}var $f={$blk:R.ptr.prototype.Method,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};R.prototype.Method=function(m){return this.$val.Method(m);};BA=function(m){var{m,n,o,p,q,r,s,$s,$r,$c}=$restore(this,{m});$s=$s||0;s:while(true){switch($s){case 0:n=[n];o=[o];p=[p];q=CC(m);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=$clone(q,E);if(!(($clone(r,E).Kind()===23))){$panic(new I.ptr("Swapper",$clone(r,E).Kind()));}p[0]=(($clone(r,E).Len()>>>0));s=p[0];if(s===(0)){$s=-1;return(function(n,o,p){return function(t,u){var t,u;$panic(new $String("reflect: slice index out of range"));};})(n,o,p);}else if(s===(1)){$s=-1;return(function(n,o,p){return function(t,u){var t,u;if(!((t===0))||!((u===0))){$panic(new $String("reflect: slice index out of range"));}};})(n,o,p);}n[0]=m.$array;o[0]=$parseInt(m.$offset)>>0;$s=-1;return(function(n,o,p){return function(t,u){var t,u,v;if(((t>>>0))>=p[0]||((u>>>0))>=p[0]){$panic(new $String("reflect: slice index out of range"));}t=t+(o[0])>>0;u=u+(o[0])>>0;v=n[0][t];n[0][t]=n[0][u];n[0][u]=v;};})(n,o,p);}return;}var $f={$blk:BA,$c:true,$r,m,n,o,p,q,r,s,$s};return $f;};$pkg.Swapper=BA;BC=function(){var{m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:m=(function(m){var m;});$r=m((n=new R.ptr(0,0,0,0,0,0,0,$throwNilPointerError,EG.nil,0,0),new n.constructor.elem(n)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=m((o=new BL.ptr(0,0,0,0,ED.nil),new o.constructor.elem(o)));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=m((p=new S.ptr(0,0,0,0),new p.constructor.elem(p)));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=m((q=new U.ptr(new R.ptr(0,0,0,0,0,0,0,$throwNilPointerError,EG.nil,0,0),DU.nil,DU.nil,0),new q.constructor.elem(q)));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=m((r=new V.ptr(new R.ptr(0,0,0,0,0,0,0,$throwNilPointerError,EG.nil,0,0),DU.nil,0),new r.constructor.elem(r)));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=m((s=new BN.ptr(new R.ptr(0,0,0,0,0,0,0,$throwNilPointerError,EG.nil,0,0),0,0,DW.nil,DW.nil),new s.constructor.elem(s)));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=m((t=new X.ptr(new R.ptr(0,0,0,0,0,0,0,$throwNilPointerError,EG.nil,0,0),new BO.ptr(EG.nil),EK.nil),new t.constructor.elem(t)));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=m((u=new Y.ptr(new R.ptr(0,0,0,0,0,0,0,$throwNilPointerError,EG.nil,0,0),DU.nil,DU.nil,DU.nil,$throwNilPointerError,0,0,0,0),new u.constructor.elem(u)));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=m((v=new Z.ptr(new R.ptr(0,0,0,0,0,0,0,$throwNilPointerError,EG.nil,0,0),DU.nil),new v.constructor.elem(v)));$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=m((w=new AA.ptr(new R.ptr(0,0,0,0,0,0,0,$throwNilPointerError,EG.nil,0,0),DU.nil),new w.constructor.elem(w)));$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=m((x=new AC.ptr(new R.ptr(0,0,0,0,0,0,0,$throwNilPointerError,EG.nil,0,0),new BO.ptr(EG.nil),EL.nil),new x.constructor.elem(x)));$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=m((y=new W.ptr(0,0),new y.constructor.elem(y)));$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=m((z=new AB.ptr(new BO.ptr(EG.nil),DU.nil,0),new z.constructor.elem(z)));$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}BB=true;BD=$assertType(CB(new $Uint8(0)),DU);$s=-1;return;}return;}var $f={$blk:BC,$c:true,$r,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};BI=function(m){var m;return m[$externalize(BE,$String)];};BJ=function(m){var aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,m,n,o,p,q,r,s,t,u,v,w,x,y,z;if(m[$externalize(BF,$String)]===undefined){n=new R.ptr(((($parseInt(m.size)>>0)>>>0)),0,0,0,0,0,((($parseInt(m.kind)>>0)<<24>>>24)),$throwNilPointerError,EG.nil,BT($clone(BR(BW(m.string),"",!!(m.exported)),BO)),0);n[$externalize(BE,$String)]=m;m[$externalize(BF,$String)]=n;o=$methodSet(m);if(!(($parseInt(o.length)===0))||!!(m.named)){n.tflag=(n.tflag|(1))>>>0;if(!!(m.named)){n.tflag=(n.tflag|(4))>>>0;}p=ED.nil;q=0;while(true){if(!(q<$parseInt(o.length))){break;}r=o[q];s=BW(r.pkg)==="";if(!s){q=q+(1)>>0;continue;}p=$append(p,new S.ptr(BT($clone(BR(BW(r.name),"",s),BO)),BV(BJ(r.typ)),0,0));q=q+(1)>>0;}t=((p.$length<<16>>>16));u=0;while(true){if(!(u<$parseInt(o.length))){break;}v=o[u];w=BW(v.pkg)==="";if(w){u=u+(1)>>0;continue;}p=$append(p,new S.ptr(BT($clone(BR(BW(v.name),"",w),BO)),BV(BJ(v.typ)),0,0));u=u+(1)>>0;}x=new BL.ptr(BT($clone(BR(BW(m.pkg),"",false),BO)),(($parseInt(o.length)<<16>>>16)),t,0,p);y=n;(BM||$throwRuntimeError("assignment to entry in nil map")).set(DU.keyFor(y),{k:y,v:x});x[$externalize(BE,$String)]=m;}z=n.Kind();if(z===(17)){BK(n,new U.ptr(new R.ptr(0,0,0,0,0,0,0,$throwNilPointerError,EG.nil,0,0),BJ(m.elem),DU.nil,((($parseInt(m.len)>>0)>>>0))));}else if(z===(18)){aa=3;if(!!(m.sendOnly)){aa=2;}if(!!(m.recvOnly)){aa=1;}BK(n,new V.ptr(new R.ptr(0,0,0,0,0,0,0,$throwNilPointerError,EG.nil,0,0),BJ(m.elem),((aa>>>0))));}else if(z===(19)){ab=m.params;ac=$makeSlice(DW,$parseInt(ab.length));ad=ac;ae=0;while(true){if(!(ae<ad.$length)){break;}af=ae;((af<0||af>=ac.$length)?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+af]=BJ(ab[af]));ae++;}ag=m.results;ah=$makeSlice(DW,$parseInt(ag.length));ai=ah;aj=0;while(true){if(!(aj<ai.$length)){break;}ak=aj;((ak<0||ak>=ah.$length)?($throwRuntimeError("index out of range"),undefined):ah.$array[ah.$offset+ak]=BJ(ag[ak]));aj++;}al=(($parseInt(ag.length)<<16>>>16));if(!!(m.variadic)){al=(al|(32768))>>>0;}BK(n,new BN.ptr($clone(n,R),(($parseInt(ab.length)<<16>>>16)),al,ac,ah));}else if(z===(20)){am=m.methods;an=$makeSlice(EK,$parseInt(am.length));ao=an;ap=0;while(true){if(!(ap<ao.$length)){break;}aq=ap;ar=am[aq];W.copy(((aq<0||aq>=an.$length)?($throwRuntimeError("index out of range"),undefined):an.$array[an.$offset+aq]),new W.ptr(BT($clone(BR(BW(ar.name),"",BW(ar.pkg)===""),BO)),BV(BJ(ar.typ))));ap++;}BK(n,new X.ptr($clone(n,R),$clone(BR(BW(m.pkg),"",false),BO),an));}else if(z===(21)){BK(n,new Y.ptr(new R.ptr(0,0,0,0,0,0,0,$throwNilPointerError,EG.nil,0,0),BJ(m.key),BJ(m.elem),DU.nil,$throwNilPointerError,0,0,0,0));}else if(z===(22)){BK(n,new Z.ptr(new R.ptr(0,0,0,0,0,0,0,$throwNilPointerError,EG.nil,0,0),BJ(m.elem)));}else if(z===(23)){BK(n,new AA.ptr(new R.ptr(0,0,0,0,0,0,0,$throwNilPointerError,EG.nil,0,0),BJ(m.elem)));}else if(z===(25)){as=m.fields;at=$makeSlice(EL,$parseInt(as.length));au=at;av=0;while(true){if(!(av<au.$length)){break;}aw=av;ax=as[aw];ay=((aw>>>0))<<1>>>0;if(!!(ax.embedded)){ay=(ay|(1))>>>0;}AB.copy(((aw<0||aw>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+aw]),new AB.ptr($clone(BR(BW(ax.name),BW(ax.tag),!!(ax.exported)),BO),BJ(ax.typ),ay));av++;}BK(n,new AC.ptr($clone(n,R),$clone(BR(BW(m.pkgPath),"",false),BO),at));}}return((m[$externalize(BF,$String)]));};BK=function(m,n){var m,n;m[$externalize(BG,$String)]=n;n[$externalize(BH,$String)]=m;};BL.ptr.prototype.methods=function(){var m;m=this;return m._methods;};BL.prototype.methods=function(){return this.$val.methods();};BL.ptr.prototype.exportedMethods=function(){var m;m=this;return $subslice(m._methods,0,m.xcount,m.xcount);};BL.prototype.exportedMethods=function(){return this.$val.exportedMethods();};R.ptr.prototype.uncommon=function(){var m,n;m=this;return(n=$mapIndex(BM,DU.keyFor(m)),n!==undefined?n.v:EC.nil);};R.prototype.uncommon=function(){return this.$val.uncommon();};BN.ptr.prototype.in$=function(){var m;m=this;return m._in;};BN.prototype.in$=function(){return this.$val.in$();};BN.ptr.prototype.out=function(){var m;m=this;return m._out;};BN.prototype.out=function(){return this.$val.out();};BO.ptr.prototype.name=function(){var m,n,o;m="";n=this;m=(o=$mapIndex(BQ,EG.keyFor(n.bytes)),o!==undefined?o.v:EM.nil).name;return m;};BO.prototype.name=function(){return this.$val.name();};BO.ptr.prototype.tag=function(){var m,n,o;m="";n=this;m=(o=$mapIndex(BQ,EG.keyFor(n.bytes)),o!==undefined?o.v:EM.nil).tag;return m;};BO.prototype.tag=function(){return this.$val.tag();};BO.ptr.prototype.pkgPath=function(){var m;m=this;return"";};BO.prototype.pkgPath=function(){return this.$val.pkgPath();};BO.ptr.prototype.isExported=function(){var m,n;m=this;return(n=$mapIndex(BQ,EG.keyFor(m.bytes)),n!==undefined?n.v:EM.nil).exported;};BO.prototype.isExported=function(){return this.$val.isExported();};BR=function(m,n,o){var m,n,o,p,q;p=$newDataPointer(0,EG);q=p;(BQ||$throwRuntimeError("assignment to entry in nil map")).set(EG.keyFor(q),{k:q,v:new BP.ptr(m,n,o)});return new BO.ptr(p);};R.ptr.prototype.nameOff=function(m){var m,n,o;n=this;return(o=((m>>0)),((o<0||o>=BS.$length)?($throwRuntimeError("index out of range"),undefined):BS.$array[BS.$offset+o]));};R.prototype.nameOff=function(m){return this.$val.nameOff(m);};BT=function(m){var m,n;n=BS.$length;BS=$append(BS,m);return((n>>0));};R.ptr.prototype.typeOff=function(m){var m,n,o;n=this;return(o=((m>>0)),((o<0||o>=BU.$length)?($throwRuntimeError("index out of range"),undefined):BU.$array[BU.$offset+o]));};R.prototype.typeOff=function(m){return this.$val.typeOff(m);};BV=function(m){var m,n;n=BU.$length;BU=$append(BU,m);return((n>>0));};BW=function(m){var m,n;n=new EN.ptr("");n.str=m;return n.str;};BX=function(m){var m;return!!(BI(m).wrapped);};BY=function(m,n,o){var m,n,o,p,q,r;p=BI(o).fields;q=0;while(true){if(!(q<$parseInt(p.length))){break;}r=$internalize(p[q].prop,$String);m[$externalize(r,$String)]=n[$externalize(r,$String)];q=q+(1)>>0;}};BZ=function(m,n,o){var{m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{m,n,o});$s=$s||0;s:while(true){switch($s){case 0:p=m.common();$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=p;t=m.Kind();$s=6;case 6:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}if(t===17){s=true;$s=5;continue s;}u=m.Kind();$s=7;case 7:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}s=u===25;case 5:if(s){r=true;$s=4;continue s;}v=m.Kind();$s=8;case 8:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}r=v===22;case 4:if(r){$s=2;continue;}$s=3;continue;case 2:w=m.Kind();$s=9;case 9:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}x=new E.ptr(q,(n),(o|((w>>>0)))>>>0);$s=10;case 10:return x;case 3:y=m.Kind();$s=11;case 11:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=new E.ptr(q,($newDataPointer(n,BI(q.ptrTo()))),(((o|((y>>>0)))>>>0)|128)>>>0);$s=12;case 12:return z;}return;}var $f={$blk:BZ,$c:true,$r,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};CB=function(m){var m;if(!BB){return new R.ptr(0,0,0,0,0,0,0,$throwNilPointerError,EG.nil,0,0);}if($interfaceIsEqual(m,$ifaceNil)){return $ifaceNil;}return BJ(m.constructor);};$pkg.TypeOf=CB;CC=function(m){var{m,n,o,$s,$r,$c}=$restore(this,{m});$s=$s||0;s:while(true){switch($s){case 0:if($interfaceIsEqual(m,$ifaceNil)){$s=-1;return new E.ptr(DU.nil,0,0);}n=BZ(BJ(m.constructor),m.$val,0);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;$s=2;case 2:return o;}return;}var $f={$blk:CC,$c:true,$r,m,n,o,$s};return $f;};$pkg.ValueOf=CC;CF=function(m,n,o){var{aa,ab,ac,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{m,n,o});$s=$s||0;s:while(true){switch($s){case 0:if(!(o)){p=false;$s=3;continue s;}if(m.$length===0){q=true;$s=4;continue s;}s=(r=m.$length-1>>0,((r<0||r>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+r])).Kind();$s=5;case 5:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}q=!((s===23));case 4:p=q;case 3:if(p){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.FuncOf: last arg of variadic func must be slice"));case 2:t=$makeSlice(EJ,m.$length);u=m;v=0;while(true){if(!(v<u.$length)){break;}w=v;x=((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]);((w<0||w>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+w]=BI(x));v++;}y=$makeSlice(EJ,n.$length);z=n;aa=0;while(true){if(!(aa<z.$length)){break;}ab=aa;ac=((aa<0||aa>=z.$length)?($throwRuntimeError("index out of range"),undefined):z.$array[z.$offset+aa]);((ab<0||ab>=y.$length)?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+ab]=BI(ac));aa++;}$s=-1;return BJ($funcType($externalize(t,EJ),$externalize(y,EJ),$externalize(o,$Bool)));}return;}var $f={$blk:CF,$c:true,$r,aa,ab,ac,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};$pkg.FuncOf=CF;R.ptr.prototype.ptrTo=function(){var m;m=this;return BJ($ptrType(BI(m)));};R.prototype.ptrTo=function(){return this.$val.ptrTo();};CH=function(m){var m;return BJ($sliceType(BI(m)));};$pkg.SliceOf=CH;CJ=function(m){var m,n;n=m.Kind();if(n===(25)){return(new(BI(m).ptr)());}else if(n===(17)){return(BI(m).zero());}else{return($newDataPointer(BI(m).zero(),BI(m.ptrTo())));}};CM=function(m,n,o){var m,n,o;n.$set(o.$get());};CQ=function(m,n){var m,n,o,p;o=n;if(!(o.$get===undefined)){o=o.$get();}p=$internalize(BI(m.Key()).keyFor(o),$String);return[o,p];};CR=function(m,n,o){var m,n,o,p,q,r;p=CQ(m,o);q=p[1];r=n.get($externalize(q,$String));if(r===undefined){return 0;}return($newDataPointer(r.v,BI(DL(m.Elem()))));};CU.ptr.prototype.skipUntilValidKey=function(){var m,n;m=this;while(true){if(!(m.i<$parseInt(m.keys.length))){break;}n=m.keys[m.i];if(!(m.m.get(n)===undefined)){break;}m.i=m.i+(1)>>0;}};CU.prototype.skipUntilValidKey=function(){return this.$val.skipUntilValidKey();};CV=function(m,n){var m,n;return(new CU.ptr(m,n,$global.Array.from(n.keys()),0,null));};CX=function(m){var{m,n,o,p,q,r,s,t,$s,$r,$c}=$restore(this,{m});$s=$s||0;s:while(true){switch($s){case 0:n=($pointerOfStructConversion(m,EO));o=null;if(!(n.last===null)){o=n.last;}else{n.skipUntilValidKey();if(n.i===$parseInt(n.keys.length)){$s=-1;return 0;}p=n.keys[n.i];o=n.m.get(p);n.last=o;}q=$assertType(n.t,CW).Key();$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=DL(q);$s=2;case 2:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=BI(r);$s=3;case 3:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=($newDataPointer(o.k,s));$s=4;case 4:return t;}return;}var $f={$blk:CX,$c:true,$r,m,n,o,p,q,r,s,t,$s};return $f;};CY=function(m){var m,n;n=($pointerOfStructConversion(m,EO));n.last=null;n.i=n.i+(1)>>0;};CZ=function(m){var m;return $parseInt(m.size)>>0;};DC=function(m,n,o){var m,n,o,p,q,r,s,t,u,v,w,x,y;p=DU.nil;q=EE.nil;r=0;s="";if(n.typ.Kind()===20){t=(n.typ.kindType);if(o<0||o>=t.methods.$length){$panic(new $String("reflect: internal error: invalid method index"));}v=(u=t.methods,((o<0||o>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+o]));if(!$clone(t.rtype.nameOff(v.name),BO).isExported()){$panic(new $String("reflect: "+m+" of unexported method"));}q=(t.rtype.typeOff(v.typ).kindType);s=$clone(t.rtype.nameOff(v.name),BO).name();}else{w=n.typ.exportedMethods();if(((o>>>0))>=((w.$length>>>0))){$panic(new $String("reflect: internal error: invalid method index"));}x=$clone(((o<0||o>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+o]),S);if(!$clone(n.typ.nameOff(x.name),BO).isExported()){$panic(new $String("reflect: "+m+" of unexported method"));}q=(n.typ.typeOff(x.mtyp).kindType);s=$internalize($methodSet(BI(n.typ))[o].prop,$String);}y=$clone(n,E).object();if(BX(n.typ)){y=new(BI(n.typ))(y);}r=(y[$externalize(s,$String)]);return[p,q,r];};DD=function(m){var{m,n,o,$s,$r,$c}=$restore(this,{m});$s=$s||0;s:while(true){switch($s){case 0:if(m.flag===0){$panic(new I.ptr("reflect.Value.Interface",0));}if(!((((m.flag&512)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:n=DG("Interface",$clone(m,E));$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}E.copy(m,n);case 2:if(BX(m.typ)){if(!((((m.flag&128)>>>0)===0))&&($clone(m,E).Kind()===25)){o=BI(m.typ).zero();BY(o,$clone(m,E).object(),m.typ);$s=-1;return((new(BI(m.typ))(o)));}$s=-1;return((new(BI(m.typ))($clone(m,E).object())));}$s=-1;return(($clone(m,E).object()));}return;}var $f={$blk:DD,$c:true,$r,m,n,o,$s};return $f;};DE=function(m,n,o){var m,n,o;o.$set(n);};DF=function(){return"?FIXME?";};DG=function(m,n){var{m,n,o,p,q,r,s,t,$s,$r,$c}=$restore(this,{m,n});$s=$s||0;s:while(true){switch($s){case 0:o=[o];p=[p];if(((n.flag&512)>>>0)===0){$panic(new $String("reflect: internal error: invalid use of makePartialFunc"));}q=DC(m,$clone(n,E),((n.flag>>0))>>10>>0);o[0]=q[2];p[0]=$clone(n,E).object();if(BX(n.typ)){p[0]=new(BI(n.typ))(p[0]);}r=D.MakeFunc((function(o,p){return function(r,s){var r,s;return new $jsObjectPtr(o[0].apply(p[0],$externalize(s,EJ)));};})(o,p));s=$clone(n,E).Type().common();$s=1;case 1:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=new E.ptr(s,(r),(new F(n.flag).ro()|19)>>>0);$s=2;case 2:return t;}return;}var $f={$blk:DG,$c:true,$r,m,n,o,p,q,r,s,t,$s};return $f;};DI=function(m,n){var m,n;if($interfaceIsEqual(m,DH)){return new(BI(DH))(n);}return n;};DJ=function(m,n){var m,n;if($interfaceIsEqual(m,DH)){return n.object;}return n;};DK=function(m){var m,n,o,p,q,r;while(true){if(!(!(m===""))){break;}n=0;while(true){if(!(n<m.length&&(m.charCodeAt(n)===32))){break;}n=n+(1)>>0;}m=$substring(m,n);if(m===""){break;}n=0;while(true){if(!(n<m.length&&!((m.charCodeAt(n)===32))&&!((m.charCodeAt(n)===58))&&!((m.charCodeAt(n)===34)))){break;}n=n+(1)>>0;}if((n+1>>0)>=m.length||!((m.charCodeAt(n)===58))||!((m.charCodeAt((n+1>>0))===34))){break;}o=($substring(m,0,n));m=$substring(m,(n+1>>0));n=1;while(true){if(!(n<m.length&&!((m.charCodeAt(n)===34)))){break;}if(m.charCodeAt(n)===92){n=n+(1)>>0;}n=n+(1)>>0;}if(n>=m.length){break;}p=($substring(m,0,(n+1>>0)));m=$substring(m,(n+1>>0));if(o==="js"){q=AU(p);r=q[0];return r;}}return"";};DL=function(m){var m;return $assertType(m,DU).ptrTo();};$pkg.PtrTo=DL;DM=function(m,n,o){var m,n,o,p;if(AQ(m)){p=CJ(m);CM(m,p,o);return new E.ptr(m,p,(n|128)>>>0);}return new E.ptr(m,(o).$get(),n);};E.methods=[{prop:"pointer",name:"pointer",pkg:"internal/reflectlite",typ:$funcType([],[$UnsafePointer],false)},{prop:"CanSet",name:"CanSet",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsValid",name:"IsValid",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[P],false)},{prop:"numMethod",name:"numMethod",pkg:"internal/reflectlite",typ:$funcType([],[$Int],false)},{prop:"Type",name:"Type",pkg:"",typ:$funcType([],[O],false)},{prop:"object",name:"object",pkg:"internal/reflectlite",typ:$funcType([],[DZ],false)},{prop:"assignTo",name:"assignTo",pkg:"internal/reflectlite",typ:$funcType([$String,DU,$UnsafePointer],[E],false)},{prop:"call",name:"call",pkg:"internal/reflectlite",typ:$funcType([$String,EF],[EF],false)},{prop:"Cap",name:"Cap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([$Int],[E],false)},{prop:"InterfaceData",name:"InterfaceData",pkg:"",typ:$funcType([],[ES],false)},{prop:"IsNil",name:"IsNil",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Pointer",name:"Pointer",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([E],[],false)},{prop:"SetBytes",name:"SetBytes",pkg:"",typ:$funcType([ET],[],false)},{prop:"SetCap",name:"SetCap",pkg:"",typ:$funcType([$Int],[],false)},{prop:"SetLen",name:"SetLen",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Slice",name:"Slice",pkg:"",typ:$funcType([$Int,$Int],[E],false)},{prop:"Slice3",name:"Slice3",pkg:"",typ:$funcType([$Int,$Int,$Int],[E],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[E],false)},{prop:"NumField",name:"NumField",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MapKeys",name:"MapKeys",pkg:"",typ:$funcType([],[EF],false)},{prop:"MapIndex",name:"MapIndex",pkg:"",typ:$funcType([E],[E],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[E],false)}];F.methods=[{prop:"kind",name:"kind",pkg:"internal/reflectlite",typ:$funcType([],[P],false)},{prop:"ro",name:"ro",pkg:"internal/reflectlite",typ:$funcType([],[F],false)},{prop:"mustBeExported",name:"mustBeExported",pkg:"internal/reflectlite",typ:$funcType([],[],false)},{prop:"mustBeAssignable",name:"mustBeAssignable",pkg:"internal/reflectlite",typ:$funcType([],[],false)},{prop:"mustBe",name:"mustBe",pkg:"internal/reflectlite",typ:$funcType([P],[],false)}];EU.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];P.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];DU.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[P],false)},{prop:"pointers",name:"pointers",pkg:"internal/reflectlite",typ:$funcType([],[$Bool],false)},{prop:"common",name:"common",pkg:"internal/reflectlite",typ:$funcType([],[DU],false)},{prop:"exportedMethods",name:"exportedMethods",pkg:"internal/reflectlite",typ:$funcType([],[ED],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$funcType([],[$String],false)},{prop:"hasName",name:"hasName",pkg:"internal/reflectlite",typ:$funcType([],[$Bool],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"chanDir",name:"chanDir",pkg:"internal/reflectlite",typ:$funcType([],[T],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[O],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[O],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumIn",name:"NumIn",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumOut",name:"NumOut",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Out",name:"Out",pkg:"",typ:$funcType([$Int],[O],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([O],[$Bool],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([O],[$Bool],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"kindType",name:"kindType",pkg:"internal/reflectlite",typ:$funcType([],[DU],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[AB],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[O],false)},{prop:"NumField",name:"NumField",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[AV],false)},{prop:"uncommon",name:"uncommon",pkg:"internal/reflectlite",typ:$funcType([],[EC],false)},{prop:"nameOff",name:"nameOff",pkg:"internal/reflectlite",typ:$funcType([AG],[BO],false)},{prop:"typeOff",name:"typeOff",pkg:"internal/reflectlite",typ:$funcType([AH],[DU],false)},{prop:"ptrTo",name:"ptrTo",pkg:"internal/reflectlite",typ:$funcType([],[DU],false)}];EW.methods=[{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)}];EY.methods=[{prop:"offset",name:"offset",pkg:"internal/reflectlite",typ:$funcType([],[$Uintptr],false)},{prop:"embedded",name:"embedded",pkg:"internal/reflectlite",typ:$funcType([],[$Bool],false)}];EZ.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];EC.methods=[{prop:"methods",name:"methods",pkg:"internal/reflectlite",typ:$funcType([],[ED],false)},{prop:"exportedMethods",name:"exportedMethods",pkg:"internal/reflectlite",typ:$funcType([],[ED],false)}];EE.methods=[{prop:"in$",name:"in",pkg:"internal/reflectlite",typ:$funcType([],[DW],false)},{prop:"out",name:"out",pkg:"internal/reflectlite",typ:$funcType([],[DW],false)}];BO.methods=[{prop:"data",name:"data",pkg:"internal/reflectlite",typ:$funcType([$Int,$String],[EG],false)},{prop:"hasTag",name:"hasTag",pkg:"internal/reflectlite",typ:$funcType([],[$Bool],false)},{prop:"readVarint",name:"readVarint",pkg:"internal/reflectlite",typ:$funcType([$Int],[$Int,$Int],false)},{prop:"name",name:"name",pkg:"internal/reflectlite",typ:$funcType([],[$String],false)},{prop:"tag",name:"tag",pkg:"internal/reflectlite",typ:$funcType([],[$String],false)},{prop:"pkgPath",name:"pkgPath",pkg:"internal/reflectlite",typ:$funcType([],[$String],false)},{prop:"isExported",name:"isExported",pkg:"internal/reflectlite",typ:$funcType([],[$Bool],false)}];EO.methods=[{prop:"skipUntilValidKey",name:"skipUntilValidKey",pkg:"internal/reflectlite",typ:$funcType([],[],false)}];E.init("internal/reflectlite",[{prop:"typ",name:"typ",embedded:false,exported:false,typ:DU,tag:""},{prop:"ptr",name:"ptr",embedded:false,exported:false,typ:$UnsafePointer,tag:""},{prop:"flag",name:"flag",embedded:true,exported:false,typ:F,tag:""}]);I.init("",[{prop:"Method",name:"Method",embedded:false,exported:true,typ:$String,tag:""},{prop:"Kind",name:"Kind",embedded:false,exported:true,typ:P,tag:""}]);O.init([{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([O],[$Bool],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[O],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([O],[$Bool],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[P],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$funcType([],[$String],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"common",name:"common",pkg:"internal/reflectlite",typ:$funcType([],[DU],false)},{prop:"uncommon",name:"uncommon",pkg:"internal/reflectlite",typ:$funcType([],[EC],false)}]);R.init("internal/reflectlite",[{prop:"size",name:"size",embedded:false,exported:false,typ:$Uintptr,tag:""},{prop:"ptrdata",name:"ptrdata",embedded:false,exported:false,typ:$Uintptr,tag:""},{prop:"hash",name:"hash",embedded:false,exported:false,typ:$Uint32,tag:""},{prop:"tflag",name:"tflag",embedded:false,exported:false,typ:Q,tag:""},{prop:"align",name:"align",embedded:false,exported:false,typ:$Uint8,tag:""},{prop:"fieldAlign",name:"fieldAlign",embedded:false,exported:false,typ:$Uint8,tag:""},{prop:"kind",name:"kind",embedded:false,exported:false,typ:$Uint8,tag:""},{prop:"equal",name:"equal",embedded:false,exported:false,typ:EV,tag:""},{prop:"gcdata",name:"gcdata",embedded:false,exported:false,typ:EG,tag:""},{prop:"str",name:"str",embedded:false,exported:false,typ:AG,tag:""},{prop:"ptrToThis",name:"ptrToThis",embedded:false,exported:false,typ:AH,tag:""}]);S.init("internal/reflectlite",[{prop:"name",name:"name",embedded:false,exported:false,typ:AG,tag:""},{prop:"mtyp",name:"mtyp",embedded:false,exported:false,typ:AH,tag:""},{prop:"ifn",name:"ifn",embedded:false,exported:false,typ:AI,tag:""},{prop:"tfn",name:"tfn",embedded:false,exported:false,typ:AI,tag:""}]);U.init("internal/reflectlite",[{prop:"rtype",name:"rtype",embedded:true,exported:false,typ:R,tag:""},{prop:"elem",name:"elem",embedded:false,exported:false,typ:DU,tag:""},{prop:"slice",name:"slice",embedded:false,exported:false,typ:DU,tag:""},{prop:"len",name:"len",embedded:false,exported:false,typ:$Uintptr,tag:""}]);V.init("internal/reflectlite",[{prop:"rtype",name:"rtype",embedded:true,exported:false,typ:R,tag:""},{prop:"elem",name:"elem",embedded:false,exported:false,typ:DU,tag:""},{prop:"dir",name:"dir",embedded:false,exported:false,typ:$Uintptr,tag:""}]);W.init("internal/reflectlite",[{prop:"name",name:"name",embedded:false,exported:false,typ:AG,tag:""},{prop:"typ",name:"typ",embedded:false,exported:false,typ:AH,tag:""}]);X.init("internal/reflectlite",[{prop:"rtype",name:"rtype",embedded:true,exported:false,typ:R,tag:""},{prop:"pkgPath",name:"pkgPath",embedded:false,exported:false,typ:BO,tag:""},{prop:"methods",name:"methods",embedded:false,exported:false,typ:EK,tag:""}]);Y.init("internal/reflectlite",[{prop:"rtype",name:"rtype",embedded:true,exported:false,typ:R,tag:""},{prop:"key",name:"key",embedded:false,exported:false,typ:DU,tag:""},{prop:"elem",name:"elem",embedded:false,exported:false,typ:DU,tag:""},{prop:"bucket",name:"bucket",embedded:false,exported:false,typ:DU,tag:""},{prop:"hasher",name:"hasher",embedded:false,exported:false,typ:EX,tag:""},{prop:"keysize",name:"keysize",embedded:false,exported:false,typ:$Uint8,tag:""},{prop:"valuesize",name:"valuesize",embedded:false,exported:false,typ:$Uint8,tag:""},{prop:"bucketsize",name:"bucketsize",embedded:false,exported:false,typ:$Uint16,tag:""},{prop:"flags",name:"flags",embedded:false,exported:false,typ:$Uint32,tag:""}]);Z.init("internal/reflectlite",[{prop:"rtype",name:"rtype",embedded:true,exported:false,typ:R,tag:""},{prop:"elem",name:"elem",embedded:false,exported:false,typ:DU,tag:""}]);AA.init("internal/reflectlite",[{prop:"rtype",name:"rtype",embedded:true,exported:false,typ:R,tag:""},{prop:"elem",name:"elem",embedded:false,exported:false,typ:DU,tag:""}]);AB.init("internal/reflectlite",[{prop:"name",name:"name",embedded:false,exported:false,typ:BO,tag:""},{prop:"typ",name:"typ",embedded:false,exported:false,typ:DU,tag:""},{prop:"offsetEmbed",name:"offsetEmbed",embedded:false,exported:false,typ:$Uintptr,tag:""}]);AC.init("internal/reflectlite",[{prop:"rtype",name:"rtype",embedded:true,exported:false,typ:R,tag:""},{prop:"pkgPath",name:"pkgPath",embedded:false,exported:false,typ:BO,tag:""},{prop:"fields",name:"fields",embedded:false,exported:false,typ:EL,tag:""}]);AT.init("internal/reflectlite",[{prop:"s",name:"s",embedded:false,exported:false,typ:$String,tag:""}]);AV.init("",[{prop:"Name",name:"Name",embedded:false,exported:true,typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",embedded:false,exported:true,typ:$String,tag:""},{prop:"Type",name:"Type",embedded:false,exported:true,typ:O,tag:""},{prop:"Func",name:"Func",embedded:false,exported:true,typ:E,tag:""},{prop:"Index",name:"Index",embedded:false,exported:true,typ:$Int,tag:""}]);BL.init("internal/reflectlite",[{prop:"pkgPath",name:"pkgPath",embedded:false,exported:false,typ:AG,tag:""},{prop:"mcount",name:"mcount",embedded:false,exported:false,typ:$Uint16,tag:""},{prop:"xcount",name:"xcount",embedded:false,exported:false,typ:$Uint16,tag:""},{prop:"moff",name:"moff",embedded:false,exported:false,typ:$Uint32,tag:""},{prop:"_methods",name:"_methods",embedded:false,exported:false,typ:ED,tag:""}]);BN.init("internal/reflectlite",[{prop:"rtype",name:"rtype",embedded:true,exported:false,typ:R,tag:"reflect:\"func\""},{prop:"inCount",name:"inCount",embedded:false,exported:false,typ:$Uint16,tag:""},{prop:"outCount",name:"outCount",embedded:false,exported:false,typ:$Uint16,tag:""},{prop:"_in",name:"_in",embedded:false,exported:false,typ:DW,tag:""},{prop:"_out",name:"_out",embedded:false,exported:false,typ:DW,tag:""}]);BO.init("internal/reflectlite",[{prop:"bytes",name:"bytes",embedded:false,exported:false,typ:EG,tag:""}]);BP.init("internal/reflectlite",[{prop:"name",name:"name",embedded:false,exported:false,typ:$String,tag:""},{prop:"tag",name:"tag",embedded:false,exported:false,typ:$String,tag:""},{prop:"exported",name:"exported",embedded:false,exported:false,typ:$Bool,tag:""}]);CU.init("internal/reflectlite",[{prop:"t",name:"t",embedded:false,exported:false,typ:O,tag:""},{prop:"m",name:"m",embedded:false,exported:false,typ:DZ,tag:""},{prop:"keys",name:"keys",embedded:false,exported:false,typ:DZ,tag:""},{prop:"i",name:"i",embedded:false,exported:false,typ:$Int,tag:""},{prop:"last",name:"last",embedded:false,exported:false,typ:DZ,tag:""}]);CW.init([{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([O],[$Bool],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[O],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([O],[$Bool],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[O],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[P],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$funcType([],[$String],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"common",name:"common",pkg:"internal/reflectlite",typ:$funcType([],[DU],false)},{prop:"uncommon",name:"uncommon",pkg:"internal/reflectlite",typ:$funcType([],[EC],false)}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=D.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}BD=DU.nil;BS=DV.nil;BU=DW.nil;AD=new DX(["invalid","bool","int","int8","int16","int32","int64","uint","uint8","uint16","uint32","uint64","uintptr","float32","float64","complex64","complex128","array","chan","func","interface","map","ptr","slice","string","struct","unsafe.Pointer"]);AR=$assertType($internalize($call,$emptyInterface),EA);$pkg.ErrSyntax=new AT.ptr("invalid syntax");BB=false;BE="_jsType";BF="_reflectType";BG="kindType";BH="_rtype";BM=new $global.Map();BQ=new $global.Map();DH=BJ($jsObjectPtr);DN=$assertType($internalize($select,$emptyInterface),EA);$r=BC();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["errors"]=(function(){var $pkg={},$init,A,G,H,L,E,a,F;A=$packages["internal/reflectlite"];G=$pkg.errorString=$newType(0,$kindStruct,"errors.errorString",true,"errors",false,function(s_){this.$val=this;if(arguments.length===0){this.s="";return;}this.s=s_;});H=$ptrType($error);L=$ptrType(G);F=function(b){var b;return new G.ptr(b);};$pkg.New=F;G.ptr.prototype.Error=function(){var b;b=this;return b.s;};G.prototype.Error=function(){return this.$val.Error();};L.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];G.init("errors",[{prop:"s",name:"s",embedded:false,exported:false,typ:$String,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a=A.TypeOf((H.nil)).Elem();$s=2;case 2:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}E=a;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["internal/cpu"]=(function(){var $pkg={},$init;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["internal/bytealg"]=(function(){var $pkg={},$init,A,B,C,D,G,K,M,O,Q,S;A=$packages["internal/cpu"];B=function(d,e){var d,e;$panic(new $String("unimplemented"));};$pkg.Index=B;C=function(d,e){var d,e;$panic(new $String("unimplemented"));};$pkg.IndexString=C;D=function(d){var d;$panic(new $String("unimplemented"));};$pkg.Cutover=D;G=function(d,e){var d,e,f,g,h,i;f=0;g=d;h=0;while(true){if(!(h<g.$length)){break;}i=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]);if(i===e){f=f+(1)>>0;}h++;}return f;};$pkg.Count=G;K=function(d){var d,e,f,g,h,i,j,k;e=0;f=0;while(true){if(!(f<d.$length)){break;}e=($imul(e,16777619)>>>0)+((((f<0||f>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+f])>>>0))>>>0;f=f+(1)>>0;}g=1;h=16777619;i=g;j=h;k=d.$length;while(true){if(!(k>0)){break;}if(!(((k&1)===0))){i=$imul(i,(j))>>>0;}j=$imul(j,(j))>>>0;k=(k>>$min((1),31))>>0;}return[e,i];};$pkg.HashStrBytes=K;M=function(d){var d,e,f,g,h,i,j,k;e=0;f=d.$length-1>>0;while(true){if(!(f>=0)){break;}e=($imul(e,16777619)>>>0)+((((f<0||f>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+f])>>>0))>>>0;f=f-(1)>>0;}g=1;h=16777619;i=g;j=h;k=d.$length;while(true){if(!(k>0)){break;}if(!(((k&1)===0))){i=$imul(i,(j))>>>0;}j=$imul(j,(j))>>>0;k=(k>>$min((1),31))>>0;}return[e,i];};$pkg.HashStrRevBytes=M;O=function(d,e){var d,e,f,g,h,i,j,k,l,m;f=K(e);g=f[0];h=f[1];i=e.$length;j=0;k=0;while(true){if(!(k<i)){break;}j=($imul(j,16777619)>>>0)+((((k<0||k>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+k])>>>0))>>>0;k=k+(1)>>0;}if((j===g)&&Q($subslice(d,0,i),e)){return 0;}l=i;while(true){if(!(l<d.$length)){break;}j=$imul(j,(16777619))>>>0;j=j+(((((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l])>>>0)))>>>0;j=j-(($imul(h,(((m=l-i>>0,((m<0||m>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+m]))>>>0)))>>>0))>>>0;l=l+(1)>>0;if((j===g)&&Q($subslice(d,(l-i>>0),l),e)){return l-i>>0;}}return-1;};$pkg.IndexRabinKarpBytes=O;Q=function(d,e){var d,e,f,g,h,i;if(!((d.$length===e.$length))){return false;}f=d;g=0;while(true){if(!(g<f.$length)){break;}h=g;i=((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]);if(!((i===((h<0||h>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+h])))){return false;}g++;}return true;};$pkg.Equal=Q;S=function(d,e){var d,e,f;f=0;while(true){if(!(f<d.length)){break;}if(d.charCodeAt(f)===e){return f;}f=f+(1)>>0;}return-1;};$pkg.IndexByteString=S;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.MaxLen=0;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["internal/race"]=(function(){var $pkg={},$init,A,B,C,D,E;A=function(a){var a;};$pkg.Acquire=A;B=function(a){var a;};$pkg.Release=B;C=function(a){var a;};$pkg.ReleaseMerge=C;D=function(){};$pkg.Disable=D;E=function(){};$pkg.Enable=E;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["sync/atomic"]=(function(){var $pkg={},$init,A,B,AL,M,P,S,X,Z,AA,AD,AF,AJ;A=$packages["github.com/gopherjs/gopherjs/js"];B=$pkg.Value=$newType(0,$kindStruct,"atomic.Value",true,"sync/atomic",true,function(v_){this.$val=this;if(arguments.length===0){this.v=$ifaceNil;return;}this.v=v_;});AL=$ptrType(B);M=function(ad,ae,af){var ad,ae,af;if(ad.$get()===ae){ad.$set(af);return true;}return false;};$pkg.CompareAndSwapInt32=M;P=function(ad,ae,af){var ad,ae,af,ag;if((ag=ad.$get(),(ag.$high===ae.$high&&ag.$low===ae.$low))){ad.$set(af);return true;}return false;};$pkg.CompareAndSwapUint64=P;S=function(ad,ae){var ad,ae,af;af=ad.$get()+ae>>0;ad.$set(af);return af;};$pkg.AddInt32=S;X=function(ad){var ad;return ad.$get();};$pkg.LoadInt32=X;Z=function(ad){var ad;return ad.$get();};$pkg.LoadUint32=Z;AA=function(ad){var ad;return ad.$get();};$pkg.LoadUint64=AA;AD=function(ad,ae){var ad,ae;ad.$set(ae);};$pkg.StoreInt32=AD;AF=function(ad,ae){var ad,ae;ad.$set(ae);};$pkg.StoreUint32=AF;B.ptr.prototype.Load=function(){var ad,ae;ad=$ifaceNil;ae=this;ad=ae.v;return ad;};B.prototype.Load=function(){return this.$val.Load();};B.ptr.prototype.Store=function(ad){var ad,ae;ae=this;ae.checkNew("store",ad);ae.v=ad;};B.prototype.Store=function(ad){return this.$val.Store(ad);};B.ptr.prototype.Swap=function(ad){var ad,ae,af,ag,ah;ae=$ifaceNil;af=this;af.checkNew("swap",ad);ag=af.v;ah=ad;ae=ag;af.v=ah;ae=ae;return ae;};B.prototype.Swap=function(ad){return this.$val.Swap(ad);};B.ptr.prototype.CompareAndSwap=function(ad,ae){var ad,ae,af,ag;af=false;ag=this;ag.checkNew("compare and swap",ae);if(!($interfaceIsEqual(ag.v,$ifaceNil)&&$interfaceIsEqual(ad,$ifaceNil))&&!AJ(ad,ae)){$panic(new $String("sync/atomic: compare and swap of inconsistently typed values into Value"));}if(!($interfaceIsEqual(ag.v,ad))){af=false;return af;}ag.v=ae;af=true;return af;};B.prototype.CompareAndSwap=function(ad,ae){return this.$val.CompareAndSwap(ad,ae);};B.ptr.prototype.checkNew=function(ad,ae){var ad,ae,af;af=this;if($interfaceIsEqual(ae,$ifaceNil)){$panic(new $String("sync/atomic: "+ad+" of nil value into Value"));}if(!($interfaceIsEqual(af.v,$ifaceNil))&&!AJ(ae,af.v)){$panic(new $String("sync/atomic: "+ad+" of inconsistently typed value into Value"));}};B.prototype.checkNew=function(ad,ae){return this.$val.checkNew(ad,ae);};AJ=function(ad,ae){var ad,ae;return ad.constructor===ae.constructor;};AL.methods=[{prop:"Load",name:"Load",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"Store",name:"Store",pkg:"",typ:$funcType([$emptyInterface],[],false)},{prop:"Swap",name:"Swap",pkg:"",typ:$funcType([$emptyInterface],[$emptyInterface],false)},{prop:"CompareAndSwap",name:"CompareAndSwap",pkg:"",typ:$funcType([$emptyInterface,$emptyInterface],[$Bool],false)},{prop:"checkNew",name:"checkNew",pkg:"sync/atomic",typ:$funcType([$String,$emptyInterface],[],false)}];B.init("sync/atomic",[{prop:"v",name:"v",embedded:false,exported:false,typ:$emptyInterface,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["sync"]=(function(){var $pkg={},$init,C,A,B,D,E,F,T,U,V,AO,AT,AV,AW,AX,BH,BI,BL,BM,BN,BV,BW,BX,Y,AF,AG,K,L,AH,AI,AJ,AK,AL,AM,AN;C=$packages["github.com/gopherjs/gopherjs/js"];A=$packages["internal/race"];B=$packages["sync/atomic"];D=$pkg.RWMutex=$newType(0,$kindStruct,"sync.RWMutex",true,"sync",true,function(w_,writerSem_,readerSem_,readerCount_,readerWait_){this.$val=this;if(arguments.length===0){this.w=new U.ptr(0,0);this.writerSem=0;this.readerSem=0;this.readerCount=0;this.readerWait=0;return;}this.w=w_;this.writerSem=writerSem_;this.readerSem=readerSem_;this.readerCount=readerCount_;this.readerWait=readerWait_;});E=$pkg.rlocker=$newType(0,$kindStruct,"sync.rlocker",true,"sync",false,function(w_,writerSem_,readerSem_,readerCount_,readerWait_){this.$val=this;if(arguments.length===0){this.w=new U.ptr(0,0);this.writerSem=0;this.readerSem=0;this.readerCount=0;this.readerWait=0;return;}this.w=w_;this.writerSem=writerSem_;this.readerSem=readerSem_;this.readerCount=readerCount_;this.readerWait=readerWait_;});F=$pkg.notifyList=$newType(0,$kindStruct,"sync.notifyList",true,"sync",false,function(wait_,notify_,lock_,head_,tail_){this.$val=this;if(arguments.length===0){this.wait=0;this.notify=0;this.lock=0;this.head=0;this.tail=0;return;}this.wait=wait_;this.notify=notify_;this.lock=lock_;this.head=head_;this.tail=tail_;});T=$pkg.Once=$newType(0,$kindStruct,"sync.Once",true,"sync",true,function(done_,m_){this.$val=this;if(arguments.length===0){this.done=0;this.m=new U.ptr(0,0);return;}this.done=done_;this.m=m_;});U=$pkg.Mutex=$newType(0,$kindStruct,"sync.Mutex",true,"sync",true,function(state_,sema_){this.$val=this;if(arguments.length===0){this.state=0;this.sema=0;return;}this.state=state_;this.sema=sema_;});V=$pkg.Locker=$newType(8,$kindInterface,"sync.Locker",true,"sync",true,null);AO=$pkg.Pool=$newType(0,$kindStruct,"sync.Pool",true,"sync",true,function(store_,New_){this.$val=this;if(arguments.length===0){this.store=BV.nil;this.New=$throwNilPointerError;return;}this.store=store_;this.New=New_;});AT=$ptrType($Uint32);AV=$ptrType($Int32);AW=$ptrType(E);AX=$ptrType(D);BH=$chanType($Bool,false,false);BI=$sliceType(BH);BL=$funcType([],[],false);BM=$ptrType(T);BN=$ptrType(U);BV=$sliceType($emptyInterface);BW=$ptrType(AO);BX=$funcType([],[$emptyInterface],false);D.ptr.prototype.RLock=function(){var{j,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:j=this;if(false){$unused(j.w.state);A.Disable();}if(B.AddInt32((j.$ptr_readerCount||(j.$ptr_readerCount=new AV(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},j))),1)<0){$s=1;continue;}$s=2;continue;case 1:$r=AI((j.$ptr_readerSem||(j.$ptr_readerSem=new AT(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},j))),false,0);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:if(false){A.Enable();A.Acquire(((j.$ptr_readerSem||(j.$ptr_readerSem=new AT(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},j)))));}$s=-1;return;}return;}var $f={$blk:D.ptr.prototype.RLock,$c:true,$r,j,$s};return $f;};D.prototype.RLock=function(){return this.$val.RLock();};D.ptr.prototype.TryRLock=function(){var j,k;j=this;if(false){$unused(j.w.state);A.Disable();}while(true){k=B.LoadInt32((j.$ptr_readerCount||(j.$ptr_readerCount=new AV(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},j))));if(k<0){if(false){A.Enable();}return false;}if(B.CompareAndSwapInt32((j.$ptr_readerCount||(j.$ptr_readerCount=new AV(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},j))),k,k+1>>0)){if(false){A.Enable();A.Acquire(((j.$ptr_readerSem||(j.$ptr_readerSem=new AT(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},j)))));}return true;}}};D.prototype.TryRLock=function(){return this.$val.TryRLock();};D.ptr.prototype.RUnlock=function(){var{j,k,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:j=this;if(false){$unused(j.w.state);A.ReleaseMerge(((j.$ptr_writerSem||(j.$ptr_writerSem=new AT(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},j)))));A.Disable();}k=B.AddInt32((j.$ptr_readerCount||(j.$ptr_readerCount=new AV(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},j))),-1);if(k<0){$s=1;continue;}$s=2;continue;case 1:$r=j.rUnlockSlow(k);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:if(false){A.Enable();}$s=-1;return;}return;}var $f={$blk:D.ptr.prototype.RUnlock,$c:true,$r,j,k,$s};return $f;};D.prototype.RUnlock=function(){return this.$val.RUnlock();};D.ptr.prototype.rUnlockSlow=function(j){var{j,k,$s,$r,$c}=$restore(this,{j});$s=$s||0;s:while(true){switch($s){case 0:k=this;if(((j+1>>0)===0)||((j+1>>0)===-1073741824)){A.Enable();AN("sync: RUnlock of unlocked RWMutex");}if(B.AddInt32((k.$ptr_readerWait||(k.$ptr_readerWait=new AV(function(){return this.$target.readerWait;},function($v){this.$target.readerWait=$v;},k))),-1)===0){$s=1;continue;}$s=2;continue;case 1:$r=AJ((k.$ptr_writerSem||(k.$ptr_writerSem=new AT(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},k))),false,1);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return;}return;}var $f={$blk:D.ptr.prototype.rUnlockSlow,$c:true,$r,j,k,$s};return $f;};D.prototype.rUnlockSlow=function(j){return this.$val.rUnlockSlow(j);};D.ptr.prototype.Lock=function(){var{j,k,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:j=this;if(false){$unused(j.w.state);A.Disable();}$r=j.w.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=B.AddInt32((j.$ptr_readerCount||(j.$ptr_readerCount=new AV(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},j))),-1073741824)+1073741824>>0;if(!((k===0))&&!((B.AddInt32((j.$ptr_readerWait||(j.$ptr_readerWait=new AV(function(){return this.$target.readerWait;},function($v){this.$target.readerWait=$v;},j))),k)===0))){$s=2;continue;}$s=3;continue;case 2:$r=AI((j.$ptr_writerSem||(j.$ptr_writerSem=new AT(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},j))),false,0);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:if(false){A.Enable();A.Acquire(((j.$ptr_readerSem||(j.$ptr_readerSem=new AT(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},j)))));A.Acquire(((j.$ptr_writerSem||(j.$ptr_writerSem=new AT(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},j)))));}$s=-1;return;}return;}var $f={$blk:D.ptr.prototype.Lock,$c:true,$r,j,k,$s};return $f;};D.prototype.Lock=function(){return this.$val.Lock();};D.ptr.prototype.TryLock=function(){var{j,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:j=this;if(false){$unused(j.w.state);A.Disable();}if(!j.w.TryLock()){if(false){A.Enable();}$s=-1;return false;}if(!B.CompareAndSwapInt32((j.$ptr_readerCount||(j.$ptr_readerCount=new AV(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},j))),0,-1073741824)){$s=1;continue;}$s=2;continue;case 1:$r=j.w.Unlock();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(false){A.Enable();}$s=-1;return false;case 2:if(false){A.Enable();A.Acquire(((j.$ptr_readerSem||(j.$ptr_readerSem=new AT(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},j)))));A.Acquire(((j.$ptr_writerSem||(j.$ptr_writerSem=new AT(function(){return this.$target.writerSem;},function($v){this.$target.writerSem=$v;},j)))));}$s=-1;return true;}return;}var $f={$blk:D.ptr.prototype.TryLock,$c:true,$r,j,$s};return $f;};D.prototype.TryLock=function(){return this.$val.TryLock();};D.ptr.prototype.Unlock=function(){var{j,k,l,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:j=this;if(false){$unused(j.w.state);A.Release(((j.$ptr_readerSem||(j.$ptr_readerSem=new AT(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},j)))));A.Disable();}k=B.AddInt32((j.$ptr_readerCount||(j.$ptr_readerCount=new AV(function(){return this.$target.readerCount;},function($v){this.$target.readerCount=$v;},j))),1073741824);if(k>=1073741824){A.Enable();AN("sync: Unlock of unlocked RWMutex");}l=0;case 1:if(!(l<((k>>0)))){$s=2;continue;}$r=AJ((j.$ptr_readerSem||(j.$ptr_readerSem=new AT(function(){return this.$target.readerSem;},function($v){this.$target.readerSem=$v;},j))),false,0);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}l=l+(1)>>0;$s=1;continue;case 2:$r=j.w.Unlock();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(false){A.Enable();}$s=-1;return;}return;}var $f={$blk:D.ptr.prototype.Unlock,$c:true,$r,j,k,l,$s};return $f;};D.prototype.Unlock=function(){return this.$val.Unlock();};D.ptr.prototype.RLocker=function(){var j;j=this;return($pointerOfStructConversion(j,AW));};D.prototype.RLocker=function(){return this.$val.RLocker();};E.ptr.prototype.Lock=function(){var{j,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:j=this;$r=($pointerOfStructConversion(j,AX)).RLock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:E.ptr.prototype.Lock,$c:true,$r,j,$s};return $f;};E.prototype.Lock=function(){return this.$val.Lock();};E.ptr.prototype.Unlock=function(){var{j,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:j=this;$r=($pointerOfStructConversion(j,AX)).RUnlock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:E.ptr.prototype.Unlock,$c:true,$r,j,$s};return $f;};E.prototype.Unlock=function(){return this.$val.Unlock();};K=function(){var j;j=new F.ptr(0,0,0,0,0);AK(20);};L=function(){$throwRuntimeError("native function not implemented: sync.runtime_doSpin");};T.ptr.prototype.Do=function(j){var{j,k,$s,$r,$c}=$restore(this,{j});$s=$s||0;s:while(true){switch($s){case 0:k=this;if(B.LoadUint32((k.$ptr_done||(k.$ptr_done=new AT(function(){return this.$target.done;},function($v){this.$target.done=$v;},k))))===0){$s=1;continue;}$s=2;continue;case 1:$r=k.doSlow(j);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return;}return;}var $f={$blk:T.ptr.prototype.Do,$c:true,$r,j,k,$s};return $f;};T.prototype.Do=function(j){return this.$val.Do(j);};T.ptr.prototype.doSlow=function(j){var{j,k,$s,$deferred,$r,$c}=$restore(this,{j});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);k=this;$r=k.m.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(k.m,"Unlock"),[]]);if(k.done===0){$s=2;continue;}$s=3;continue;case 2:$deferred.push([B.StoreUint32,[(k.$ptr_done||(k.$ptr_done=new AT(function(){return this.$target.done;},function($v){this.$target.done=$v;},k))),1]]);$r=j();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:T.ptr.prototype.doSlow,$c:true,$r,j,k,$s,$deferred};return $f;}}};T.prototype.doSlow=function(j){return this.$val.doSlow(j);};U.ptr.prototype.Lock=function(){var{j,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:j=this;if(B.CompareAndSwapInt32((j.$ptr_state||(j.$ptr_state=new AV(function(){return this.$target.state;},function($v){this.$target.state=$v;},j))),0,1)){if(false){A.Acquire((j));}$s=-1;return;}$r=j.lockSlow();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:U.ptr.prototype.Lock,$c:true,$r,j,$s};return $f;};U.prototype.Lock=function(){return this.$val.Lock();};U.ptr.prototype.TryLock=function(){var j,k;j=this;k=j.state;if(!(((k&5)===0))){return false;}if(!B.CompareAndSwapInt32((j.$ptr_state||(j.$ptr_state=new AV(function(){return this.$target.state;},function($v){this.$target.state=$v;},j))),k,k|1)){return false;}if(false){A.Acquire((j));}return true;};U.prototype.TryLock=function(){return this.$val.TryLock();};U.ptr.prototype.lockSlow=function(){var{j,k,l,m,n,o,p,q,r,s,t,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:j=this;k=new $Int64(0,0);l=false;m=false;n=0;o=j.state;case 1:if(((o&5)===1)&&AL(n)){$s=3;continue;}$s=4;continue;case 3:if(!m&&((o&2)===0)&&!(((o>>3>>0)===0))&&B.CompareAndSwapInt32((j.$ptr_state||(j.$ptr_state=new AV(function(){return this.$target.state;},function($v){this.$target.state=$v;},j))),o,o|2)){m=true;}$r=L();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}n=n+(1)>>0;o=j.state;$s=1;continue;case 4:p=o;if((o&4)===0){p=p|(1);}if(!(((o&5)===0))){p=p+(8)>>0;}if(l&&!(((o&1)===0))){p=p|(4);}if(m){if((p&2)===0){AN("sync: inconsistent mutex state");}p=(p&~(2))>>0;}if(B.CompareAndSwapInt32((j.$ptr_state||(j.$ptr_state=new AV(function(){return this.$target.state;},function($v){this.$target.state=$v;},j))),o,p)){$s=6;continue;}$s=7;continue;case 6:if((o&5)===0){$s=2;continue;}q=!((k.$high===0&&k.$low===0));if((k.$high===0&&k.$low===0)){k=AM();}$r=AI((j.$ptr_sema||(j.$ptr_sema=new AT(function(){return this.$target.sema;},function($v){this.$target.sema=$v;},j))),q,1);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}l=l||(r=(s=AM(),new $Int64(s.$high-k.$high,s.$low-k.$low)),(r.$high>0||(r.$high===0&&r.$low>1000000)));o=j.state;if(!(((o&4)===0))){if(!(((o&3)===0))||((o>>3>>0)===0)){AN("sync: inconsistent mutex state");}t=-7;if(!l||((o>>3>>0)===1)){t=t-(4)>>0;}B.AddInt32((j.$ptr_state||(j.$ptr_state=new AV(function(){return this.$target.state;},function($v){this.$target.state=$v;},j))),t);$s=2;continue;}m=true;n=0;$s=8;continue;case 7:o=j.state;case 8:$s=1;continue;case 2:if(false){A.Acquire((j));}$s=-1;return;}return;}var $f={$blk:U.ptr.prototype.lockSlow,$c:true,$r,j,k,l,m,n,o,p,q,r,s,t,$s};return $f;};U.prototype.lockSlow=function(){return this.$val.lockSlow();};U.ptr.prototype.Unlock=function(){var{j,k,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:j=this;if(false){$unused(j.state);A.Release((j));}k=B.AddInt32((j.$ptr_state||(j.$ptr_state=new AV(function(){return this.$target.state;},function($v){this.$target.state=$v;},j))),-1);if(!((k===0))){$s=1;continue;}$s=2;continue;case 1:$r=j.unlockSlow(k);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return;}return;}var $f={$blk:U.ptr.prototype.Unlock,$c:true,$r,j,k,$s};return $f;};U.prototype.Unlock=function(){return this.$val.Unlock();};U.ptr.prototype.unlockSlow=function(j){var{j,k,l,$s,$r,$c}=$restore(this,{j});$s=$s||0;s:while(true){switch($s){case 0:k=this;if((((j+1>>0))&1)===0){AN("sync: unlock of unlocked mutex");}if((j&4)===0){$s=1;continue;}$s=2;continue;case 1:l=j;case 4:if(((l>>3>>0)===0)||!(((l&7)===0))){$s=-1;return;}j=((l-8>>0))|2;if(B.CompareAndSwapInt32((k.$ptr_state||(k.$ptr_state=new AV(function(){return this.$target.state;},function($v){this.$target.state=$v;},k))),l,j)){$s=6;continue;}$s=7;continue;case 6:$r=AJ((k.$ptr_sema||(k.$ptr_sema=new AT(function(){return this.$target.sema;},function($v){this.$target.sema=$v;},k))),false,1);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 7:l=k.state;$s=4;continue;case 5:$s=3;continue;case 2:$r=AJ((k.$ptr_sema||(k.$ptr_sema=new AT(function(){return this.$target.sema;},function($v){this.$target.sema=$v;},k))),true,1);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return;}return;}var $f={$blk:U.ptr.prototype.unlockSlow,$c:true,$r,j,k,l,$s};return $f;};U.prototype.unlockSlow=function(j){return this.$val.unlockSlow(j);};AH=function(j){var{j,$s,$r,$c}=$restore(this,{j});$s=$s||0;s:while(true){switch($s){case 0:$r=AI(j,false,1);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:AH,$c:true,$r,j,$s};return $f;};$linknames["sync.runtime_Semacquire"]=AH;AI=function(j,k,l){var{j,k,l,m,n,o,p,q,r,s,t,u,v,$s,$r,$c}=$restore(this,{j,k,l});$s=$s||0;s:while(true){switch($s){case 0:if(((j.$get()-(m=$mapIndex(AG,AT.keyFor(j)),m!==undefined?m.v:0)>>>0))===0){$s=1;continue;}$s=2;continue;case 1:n=new $Chan($Bool,0);if(k){o=j;(AF||$throwRuntimeError("assignment to entry in nil map")).set(AT.keyFor(o),{k:o,v:$appendSlice(new BI([n]),(p=$mapIndex(AF,AT.keyFor(j)),p!==undefined?p.v:BI.nil))});}else{q=j;(AF||$throwRuntimeError("assignment to entry in nil map")).set(AT.keyFor(q),{k:q,v:$append((r=$mapIndex(AF,AT.keyFor(j)),r!==undefined?r.v:BI.nil),n)});}s=$recv(n);$s=3;case 3:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s[0];t=j;(AG||$throwRuntimeError("assignment to entry in nil map")).set(AT.keyFor(t),{k:t,v:(u=$mapIndex(AG,AT.keyFor(j)),u!==undefined?u.v:0)-(1)>>>0});if((v=$mapIndex(AG,AT.keyFor(j)),v!==undefined?v.v:0)===0){$mapDelete(AG,AT.keyFor(j));}case 2:j.$set(j.$get()-(1)>>>0);$s=-1;return;}return;}var $f={$blk:AI,$c:true,$r,j,k,l,m,n,o,p,q,r,s,t,u,v,$s};return $f;};AJ=function(j,k,l){var{j,k,l,m,n,o,p,q,r,$s,$r,$c}=$restore(this,{j,k,l});$s=$s||0;s:while(true){switch($s){case 0:j.$set(j.$get()+(1)>>>0);n=(m=$mapIndex(AF,AT.keyFor(j)),m!==undefined?m.v:BI.nil);if(n.$length===0){$s=-1;return;}o=(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]);n=$subslice(n,1);p=j;(AF||$throwRuntimeError("assignment to entry in nil map")).set(AT.keyFor(p),{k:p,v:n});if(n.$length===0){$mapDelete(AF,AT.keyFor(j));}q=j;(AG||$throwRuntimeError("assignment to entry in nil map")).set(AT.keyFor(q),{k:q,v:(r=$mapIndex(AG,AT.keyFor(j)),r!==undefined?r.v:0)+(1)>>>0});$r=$send(o,true);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:AJ,$c:true,$r,j,k,l,m,n,o,p,q,r,$s};return $f;};$linknames["sync.runtime_Semrelease"]=AJ;AK=function(j){var j;};AL=function(j){var j;return false;};AM=function(){return $mul64($internalize(new($global.Date)().getTime(),$Int64),new $Int64(0,1000000));};AN=function(j){var j;$throwRuntimeError($externalize(j,$String));};AO.ptr.prototype.Get=function(){var{j,k,l,m,n,o,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:j=this;if(j.store.$length===0){$s=1;continue;}$s=2;continue;case 1:if(!(j.New===$throwNilPointerError)){$s=3;continue;}$s=4;continue;case 3:k=j.New();$s=5;case 5:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;$s=6;case 6:return l;case 4:$s=-1;return $ifaceNil;case 2:o=(m=j.store,n=j.store.$length-1>>0,((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]));j.store=$subslice(j.store,0,(j.store.$length-1>>0));$s=-1;return o;}return;}var $f={$blk:AO.ptr.prototype.Get,$c:true,$r,j,k,l,m,n,o,$s};return $f;};AO.prototype.Get=function(){return this.$val.Get();};AO.ptr.prototype.Put=function(j){var j,k;k=this;if($interfaceIsEqual(j,$ifaceNil)){return;}k.store=$append(k.store,j);};AO.prototype.Put=function(j){return this.$val.Put(j);};AX.methods=[{prop:"RLock",name:"RLock",pkg:"",typ:$funcType([],[],false)},{prop:"TryRLock",name:"TryRLock",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"RUnlock",name:"RUnlock",pkg:"",typ:$funcType([],[],false)},{prop:"rUnlockSlow",name:"rUnlockSlow",pkg:"sync",typ:$funcType([$Int32],[],false)},{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"TryLock",name:"TryLock",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)},{prop:"RLocker",name:"RLocker",pkg:"",typ:$funcType([],[V],false)}];AW.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];BM.methods=[{prop:"Do",name:"Do",pkg:"",typ:$funcType([BL],[],false)},{prop:"doSlow",name:"doSlow",pkg:"sync",typ:$funcType([BL],[],false)}];BN.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"TryLock",name:"TryLock",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"lockSlow",name:"lockSlow",pkg:"sync",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)},{prop:"unlockSlow",name:"unlockSlow",pkg:"sync",typ:$funcType([$Int32],[],false)}];BW.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"Put",name:"Put",pkg:"",typ:$funcType([$emptyInterface],[],false)}];D.init("sync",[{prop:"w",name:"w",embedded:false,exported:false,typ:U,tag:""},{prop:"writerSem",name:"writerSem",embedded:false,exported:false,typ:$Uint32,tag:""},{prop:"readerSem",name:"readerSem",embedded:false,exported:false,typ:$Uint32,tag:""},{prop:"readerCount",name:"readerCount",embedded:false,exported:false,typ:$Int32,tag:""},{prop:"readerWait",name:"readerWait",embedded:false,exported:false,typ:$Int32,tag:""}]);E.init("sync",[{prop:"w",name:"w",embedded:false,exported:false,typ:U,tag:""},{prop:"writerSem",name:"writerSem",embedded:false,exported:false,typ:$Uint32,tag:""},{prop:"readerSem",name:"readerSem",embedded:false,exported:false,typ:$Uint32,tag:""},{prop:"readerCount",name:"readerCount",embedded:false,exported:false,typ:$Int32,tag:""},{prop:"readerWait",name:"readerWait",embedded:false,exported:false,typ:$Int32,tag:""}]);F.init("sync",[{prop:"wait",name:"wait",embedded:false,exported:false,typ:$Uint32,tag:""},{prop:"notify",name:"notify",embedded:false,exported:false,typ:$Uint32,tag:""},{prop:"lock",name:"lock",embedded:false,exported:false,typ:$Uintptr,tag:""},{prop:"head",name:"head",embedded:false,exported:false,typ:$UnsafePointer,tag:""},{prop:"tail",name:"tail",embedded:false,exported:false,typ:$UnsafePointer,tag:""}]);T.init("sync",[{prop:"done",name:"done",embedded:false,exported:false,typ:$Uint32,tag:""},{prop:"m",name:"m",embedded:false,exported:false,typ:U,tag:""}]);U.init("sync",[{prop:"state",name:"state",embedded:false,exported:false,typ:$Int32,tag:""},{prop:"sema",name:"sema",embedded:false,exported:false,typ:$Uint32,tag:""}]);V.init([{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}]);AO.init("sync",[{prop:"store",name:"store",embedded:false,exported:false,typ:BV,tag:""},{prop:"New",name:"New",embedded:false,exported:true,typ:BX,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=C.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}Y=(new Uint8Array(8));AF=new $global.Map();AG=new $global.Map();K();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["io"]=(function(){var $pkg={},$init,A,B,N,O,Z,AA,AH,AI,AR,BE,BF,BG,BL,M,AU,AV,AZ,AJ,AN,AP;A=$packages["errors"];B=$packages["sync"];N=$pkg.Reader=$newType(8,$kindInterface,"io.Reader",true,"io",true,null);O=$pkg.Writer=$newType(8,$kindInterface,"io.Writer",true,"io",true,null);Z=$pkg.ReaderFrom=$newType(8,$kindInterface,"io.ReaderFrom",true,"io",true,null);AA=$pkg.WriterTo=$newType(8,$kindInterface,"io.WriterTo",true,"io",true,null);AH=$pkg.RuneScanner=$newType(8,$kindInterface,"io.RuneScanner",true,"io",true,null);AI=$pkg.StringWriter=$newType(8,$kindInterface,"io.StringWriter",true,"io",true,null);AR=$pkg.LimitedReader=$newType(0,$kindStruct,"io.LimitedReader",true,"io",true,function(R_,N_){this.$val=this;if(arguments.length===0){this.R=$ifaceNil;this.N=new $Int64(0,0);return;}this.R=R_;this.N=N_;});BE=$sliceType($emptyInterface);BF=$sliceType($Uint8);BG=$ptrType(BF);BL=$ptrType(AR);AJ=function(c,d){var{c,d,e,f,g,h,i,j,k,l,m,n,o,$s,$r,$c}=$restore(this,{c,d});$s=$s||0;s:while(true){switch($s){case 0:e=0;f=$ifaceNil;g=$assertType(c,AI,true);h=g[0];i=g[1];if(i){$s=1;continue;}$s=2;continue;case 1:k=h.WriteString(d);$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;e=j[0];f=j[1];l=[e,f];$s=4;case 4:return l;case 2:n=c.Write((new BF($stringToBytes(d))));$s=5;case 5:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;e=m[0];f=m[1];o=[e,f];$s=6;case 6:return o;}return;}var $f={$blk:AJ,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,$s};return $f;};$pkg.WriteString=AJ;AN=function(c,d){var{c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{c,d});$s=$s||0;s:while(true){switch($s){case 0:e=new $Int64(0,0);f=$ifaceNil;h=AP(c,d,BF.nil);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;e=g[0];f=g[1];i=[e,f];$s=2;case 2:return i;}return;}var $f={$blk:AN,$c:true,$r,c,d,e,f,g,h,i,$s};return $f;};$pkg.Copy=AN;AP=function(c,d,e){var{aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{c,d,e});$s=$s||0;s:while(true){switch($s){case 0:f=new $Int64(0,0);g=$ifaceNil;h=$assertType(d,AA,true);i=h[0];j=h[1];if(j){$s=1;continue;}$s=2;continue;case 1:l=i.WriteTo(c);$s=3;case 3:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;f=k[0];g=k[1];m=[f,g];$s=4;case 4:return m;case 2:n=$assertType(c,Z,true);o=n[0];p=n[1];if(p){$s=5;continue;}$s=6;continue;case 5:r=o.ReadFrom(d);$s=7;case 7:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;f=q[0];g=q[1];s=[f,g];$s=8;case 8:return s;case 6:if(e===BF.nil){t=32768;u=$assertType(d,BL,true);v=u[0];w=u[1];if(w&&(x=(new $Int64(0,t)),y=v.N,(x.$high>y.$high||(x.$high===y.$high&&x.$low>y.$low)))){if((z=v.N,(z.$high<0||(z.$high===0&&z.$low<1)))){t=1;}else{t=(((aa=v.N,aa.$low+((aa.$high>>31)*4294967296))>>0));}}e=$makeSlice(BF,t);}case 9:ac=d.Read(e);$s=11;case 11:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ab=ac;ad=ab[0];ae=ab[1];if(ad>0){$s=12;continue;}$s=13;continue;case 12:ag=c.Write($subslice(e,0,ad));$s=14;case 14:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}af=ag;ah=af[0];ai=af[1];if(ah<0||ad<ah){ah=0;if($interfaceIsEqual(ai,$ifaceNil)){ai=M;}}f=(aj=(new $Int64(0,ah)),new $Int64(f.$high+aj.$high,f.$low+aj.$low));if(!($interfaceIsEqual(ai,$ifaceNil))){g=ai;$s=10;continue;}if(!((ad===ah))){g=$pkg.ErrShortWrite;$s=10;continue;}case 13:if(!($interfaceIsEqual(ae,$ifaceNil))){if(!($interfaceIsEqual(ae,$pkg.EOF))){g=ae;}$s=10;continue;}$s=9;continue;case 10:ak=f;al=g;f=ak;g=al;$s=-1;return[f,g];}return;}var $f={$blk:AP,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};AR.ptr.prototype.Read=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,o,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d=0;e=$ifaceNil;f=this;if((g=f.N,(g.$high<0||(g.$high===0&&g.$low<=0)))){h=0;i=$pkg.EOF;d=h;e=i;$s=-1;return[d,e];}if((j=(new $Int64(0,c.$length)),k=f.N,(j.$high>k.$high||(j.$high===k.$high&&j.$low>k.$low)))){c=$subslice(c,0,$flatten64(f.N));}m=f.R.Read(c);$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;d=l[0];e=l[1];f.N=(n=f.N,o=(new $Int64(0,d)),new $Int64(n.$high-o.$high,n.$low-o.$low));$s=-1;return[d,e];}return;}var $f={$blk:AR.ptr.prototype.Read,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,$s};return $f;};AR.prototype.Read=function(c){return this.$val.Read(c);};BL.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([BF],[$Int,$error],false)}];N.init([{prop:"Read",name:"Read",pkg:"",typ:$funcType([BF],[$Int,$error],false)}]);O.init([{prop:"Write",name:"Write",pkg:"",typ:$funcType([BF],[$Int,$error],false)}]);Z.init([{prop:"ReadFrom",name:"ReadFrom",pkg:"",typ:$funcType([N],[$Int64,$error],false)}]);AA.init([{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([O],[$Int64,$error],false)}]);AH.init([{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)}]);AI.init([{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)}]);AR.init("",[{prop:"R",name:"R",embedded:false,exported:true,typ:N,tag:""},{prop:"N",name:"N",embedded:false,exported:true,typ:$Int64,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.ErrClosedPipe=A.New("io: read/write on closed pipe");$pkg.ErrShortWrite=A.New("short write");M=A.New("invalid write result");$pkg.ErrShortBuffer=A.New("short buffer");$pkg.EOF=A.New("EOF");$pkg.ErrUnexpectedEOF=A.New("unexpected EOF");$pkg.ErrNoProgress=A.New("multiple Read calls return no data or error");AU=A.New("Seek: invalid whence");AV=A.New("Seek: invalid offset");AZ=new B.Pool.ptr(BE.nil,(function(){var c,d;c=$makeSlice(BF,8192);return(d||(d=new BG(function(){return c;},function($v){c=$convertSliceType($v,BF);})));}));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["unicode"]=(function(){var $pkg={},$init,IF,IG,IH,II,IK,IW,JM,JN,JO,JP,JQ,JR,JS,F,H,L,P,Q,T,AB,AJ,CE,CF,CK,CS,HR,HS,HT,HU,HV,IL,IM,IN,IO,IS,IT,IU,IX,IZ,JB,JC,JD,JG,JH,JI,JJ,JL;IF=$pkg.RangeTable=$newType(0,$kindStruct,"unicode.RangeTable",true,"unicode",true,function(R16_,R32_,LatinOffset_){this.$val=this;if(arguments.length===0){this.R16=JM.nil;this.R32=JN.nil;this.LatinOffset=0;return;}this.R16=R16_;this.R32=R32_;this.LatinOffset=LatinOffset_;});IG=$pkg.Range16=$newType(0,$kindStruct,"unicode.Range16",true,"unicode",true,function(Lo_,Hi_,Stride_){this.$val=this;if(arguments.length===0){this.Lo=0;this.Hi=0;this.Stride=0;return;}this.Lo=Lo_;this.Hi=Hi_;this.Stride=Stride_;});IH=$pkg.Range32=$newType(0,$kindStruct,"unicode.Range32",true,"unicode",true,function(Lo_,Hi_,Stride_){this.$val=this;if(arguments.length===0){this.Lo=0;this.Hi=0;this.Stride=0;return;}this.Lo=Lo_;this.Hi=Hi_;this.Stride=Stride_;});II=$pkg.CaseRange=$newType(0,$kindStruct,"unicode.CaseRange",true,"unicode",true,function(Lo_,Hi_,Delta_){this.$val=this;if(arguments.length===0){this.Lo=0;this.Hi=0;this.Delta=JQ.zero();return;}this.Lo=Lo_;this.Hi=Hi_;this.Delta=Delta_;});IK=$pkg.d=$newType(12,$kindArray,"unicode.d",true,"unicode",false,null);IW=$pkg.foldPair=$newType(0,$kindStruct,"unicode.foldPair",true,"unicode",false,function(From_,To_){this.$val=this;if(arguments.length===0){this.From=0;this.To=0;return;}this.From=From_;this.To=To_;});JM=$sliceType(IG);JN=$sliceType(IH);JO=$sliceType(IW);JP=$sliceType(II);JQ=$arrayType($Int32,3);JR=$ptrType(IF);JS=$sliceType(JR);IL=function(b,c){var b,c,d,e,f,g,h,i,j,k,l,m,n;if(b.$length<=18||c<=255){d=b;e=0;while(true){if(!(e<d.$length)){break;}f=e;g=((f<0||f>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+f]);if(c<g.Lo){return false;}if(c<=g.Hi){return(g.Stride===1)||((h=((c-g.Lo<<16>>>16))%g.Stride,h===h?h:$throwRuntimeError("integer divide by zero"))===0);}e++;}return false;}i=0;j=b.$length;while(true){if(!(i<j)){break;}l=i+(k=((j-i>>0))/2,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))>>0;m=((l<0||l>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+l]);if(m.Lo<=c&&c<=m.Hi){return(m.Stride===1)||((n=((c-m.Lo<<16>>>16))%m.Stride,n===n?n:$throwRuntimeError("integer divide by zero"))===0);}if(c<m.Lo){j=l;}else{i=l+1>>0;}}return false;};IM=function(b,c){var b,c,d,e,f,g,h,i,j,k,l,m,n;if(b.$length<=18){d=b;e=0;while(true){if(!(e<d.$length)){break;}f=e;g=((f<0||f>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+f]);if(c<g.Lo){return false;}if(c<=g.Hi){return(g.Stride===1)||((h=((c-g.Lo>>>0))%g.Stride,h===h?h:$throwRuntimeError("integer divide by zero"))===0);}e++;}return false;}i=0;j=b.$length;while(true){if(!(i<j)){break;}l=i+(k=((j-i>>0))/2,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))>>0;m=$clone(((l<0||l>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+l]),IH);if(m.Lo<=c&&c<=m.Hi){return(m.Stride===1)||((n=((c-m.Lo>>>0))%m.Stride,n===n?n:$throwRuntimeError("integer divide by zero"))===0);}if(c<m.Lo){j=l;}else{i=l+1>>0;}}return false;};IN=function(b,c){var b,c,d,e,f;d=b.R16;if(d.$length>0&&((c>>>0))<=(((e=d.$length-1>>0,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e])).Hi>>>0))){return IL(d,((c<<16>>>16)));}f=b.R32;if(f.$length>0&&c>=(((0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]).Lo>>0))){return IM(f,((c>>>0)));}return false;};$pkg.Is=IN;IO=function(b,c){var b,c,d,e,f,g;d=b.R16;e=b.LatinOffset;if(d.$length>e&&((c>>>0))<=(((f=d.$length-1>>0,((f<0||f>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+f])).Hi>>>0))){return IL($subslice(d,e),((c<<16>>>16)));}g=b.R32;if(g.$length>0&&c>=(((0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0]).Lo>>0))){return IM(g,((c>>>0)));}return false;};IS=function(b,c){var b,c,d;d=JL(b,c,$pkg.CaseRanges);c=d[0];return c;};$pkg.To=IS;IT=function(b){var b;if(b<=127){if(97<=b&&b<=122){b=b-(32)>>0;}return b;}return IS(0,b);};$pkg.ToUpper=IT;IU=function(b){var b;if(b<=127){if(65<=b&&b<=90){b=b+(32)>>0;}return b;}return IS(1,b);};$pkg.ToLower=IU;IX=function(b){var b,c,d,e,f,g;if(b<0||b>1114111){return b;}if(((b>>0))<128){return((((b<0||b>=HU.length)?($throwRuntimeError("index out of range"),undefined):HU[b])>>0));}c=0;d=HV.$length;while(true){if(!(c<d)){break;}f=c+(e=((d-c>>0))/2,(e===e&&e!==1/0&&e!==-1/0)?e>>0:$throwRuntimeError("integer divide by zero"))>>0;if(((((f<0||f>=HV.$length)?($throwRuntimeError("index out of range"),undefined):HV.$array[HV.$offset+f]).From>>0))<b){c=f+1>>0;}else{d=f;}}if(c<HV.$length&&(((((c<0||c>=HV.$length)?($throwRuntimeError("index out of range"),undefined):HV.$array[HV.$offset+c]).From>>0))===b)){return((((c<0||c>=HV.$length)?($throwRuntimeError("index out of range"),undefined):HV.$array[HV.$offset+c]).To>>0));}g=IU(b);if(!((g===b))){return g;}return IT(b);};$pkg.SimpleFold=IX;IZ=function(b){var b,c;if(((b>>>0))<=255){return!(((((c=((b<<24>>>24)),((c<0||c>=HT.length)?($throwRuntimeError("index out of range"),undefined):HT[c]))&128)>>>0)===0));}return JB(b,$pkg.PrintRanges);};$pkg.IsPrint=IZ;JB=function(b,c){var b,c,d,e,f;d=c;e=0;while(true){if(!(e<d.$length)){break;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);if(IN(f,b)){return true;}e++;}return false;};$pkg.In=JB;JC=function(b){var b,c;if(((b>>>0))<=255){return!(((((c=((b<<24>>>24)),((c<0||c>=HT.length)?($throwRuntimeError("index out of range"),undefined):HT[c]))&1)>>>0)===0));}return false;};$pkg.IsControl=JC;JD=function(b){var b,c;if(((b>>>0))<=255){return!(((((c=((b<<24>>>24)),((c<0||c>=HT.length)?($throwRuntimeError("index out of range"),undefined):HT[c]))&96)>>>0)===0));}return IO($pkg.Letter,b);};$pkg.IsLetter=JD;JG=function(b){var b,c;if(((b>>>0))<=255){return!(((((c=((b<<24>>>24)),((c<0||c>=HT.length)?($throwRuntimeError("index out of range"),undefined):HT[c]))&2)>>>0)===0));}return IN($pkg.Punct,b);};$pkg.IsPunct=JG;JH=function(b){var b,c;if(((b>>>0))<=255){c=b;if((c===(9))||(c===(10))||(c===(11))||(c===(12))||(c===(13))||(c===(32))||(c===(133))||(c===(160))){return true;}return false;}return IO($pkg.White_Space,b);};$pkg.IsSpace=JH;JI=function(b){var b,c;if(((b>>>0))<=255){return!(((((c=((b<<24>>>24)),((c<0||c>=HT.length)?($throwRuntimeError("index out of range"),undefined):HT[c]))&8)>>>0)===0));}return IO($pkg.Symbol,b);};$pkg.IsSymbol=JI;JJ=function(b){var b;if(b<=255){return 48<=b&&b<=57;}return IO($pkg.Digit,b);};$pkg.IsDigit=JJ;JL=function(b,c,d){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;e=0;f=false;if(b<0||3<=b){g=65533;h=false;e=g;f=h;return[e,f];}i=0;j=d.$length;while(true){if(!(i<j)){break;}l=i+(k=((j-i>>0))/2,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))>>0;m=((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l]);if(((m.Lo>>0))<=c&&c<=((m.Hi>>0))){o=((n=m.Delta,((b<0||b>=n.length)?($throwRuntimeError("index out of range"),undefined):n[b])));if(o>1114111){p=((m.Lo>>0))+((((((c-((m.Lo>>0))>>0))&~1)>>0)|(((b&1)>>0))))>>0;q=true;e=p;f=q;return[e,f];}r=c+o>>0;s=true;e=r;f=s;return[e,f];}if(c<((m.Lo>>0))){j=l;}else{i=l+1>>0;}}t=c;u=false;e=t;f=u;return[e,f];};IF.init("",[{prop:"R16",name:"R16",embedded:false,exported:true,typ:JM,tag:""},{prop:"R32",name:"R32",embedded:false,exported:true,typ:JN,tag:""},{prop:"LatinOffset",name:"LatinOffset",embedded:false,exported:true,typ:$Int,tag:""}]);IG.init("",[{prop:"Lo",name:"Lo",embedded:false,exported:true,typ:$Uint16,tag:""},{prop:"Hi",name:"Hi",embedded:false,exported:true,typ:$Uint16,tag:""},{prop:"Stride",name:"Stride",embedded:false,exported:true,typ:$Uint16,tag:""}]);IH.init("",[{prop:"Lo",name:"Lo",embedded:false,exported:true,typ:$Uint32,tag:""},{prop:"Hi",name:"Hi",embedded:false,exported:true,typ:$Uint32,tag:""},{prop:"Stride",name:"Stride",embedded:false,exported:true,typ:$Uint32,tag:""}]);II.init("",[{prop:"Lo",name:"Lo",embedded:false,exported:true,typ:$Uint32,tag:""},{prop:"Hi",name:"Hi",embedded:false,exported:true,typ:$Uint32,tag:""},{prop:"Delta",name:"Delta",embedded:false,exported:true,typ:IK,tag:""}]);IK.init($Int32,3);IW.init("",[{prop:"From",name:"From",embedded:false,exported:true,typ:$Uint16,tag:""},{prop:"To",name:"To",embedded:false,exported:true,typ:$Uint16,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:F=new IF.ptr(new JM([new IG.ptr(65,90,1),new IG.ptr(97,122,1),new IG.ptr(170,181,11),new IG.ptr(186,192,6),new IG.ptr(193,214,1),new IG.ptr(216,246,1),new IG.ptr(248,705,1),new IG.ptr(710,721,1),new IG.ptr(736,740,1),new IG.ptr(748,750,2),new IG.ptr(880,884,1),new IG.ptr(886,887,1),new IG.ptr(890,893,1),new IG.ptr(895,902,7),new IG.ptr(904,906,1),new IG.ptr(908,910,2),new IG.ptr(911,929,1),new IG.ptr(931,1013,1),new IG.ptr(1015,1153,1),new IG.ptr(1162,1327,1),new IG.ptr(1329,1366,1),new IG.ptr(1369,1376,7),new IG.ptr(1377,1416,1),new IG.ptr(1488,1514,1),new IG.ptr(1519,1522,1),new IG.ptr(1568,1610,1),new IG.ptr(1646,1647,1),new IG.ptr(1649,1747,1),new IG.ptr(1749,1765,16),new IG.ptr(1766,1774,8),new IG.ptr(1775,1786,11),new IG.ptr(1787,1788,1),new IG.ptr(1791,1808,17),new IG.ptr(1810,1839,1),new IG.ptr(1869,1957,1),new IG.ptr(1969,1994,25),new IG.ptr(1995,2026,1),new IG.ptr(2036,2037,1),new IG.ptr(2042,2048,6),new IG.ptr(2049,2069,1),new IG.ptr(2074,2084,10),new IG.ptr(2088,2112,24),new IG.ptr(2113,2136,1),new IG.ptr(2144,2154,1),new IG.ptr(2208,2228,1),new IG.ptr(2230,2247,1),new IG.ptr(2308,2361,1),new IG.ptr(2365,2384,19),new IG.ptr(2392,2401,1),new IG.ptr(2417,2432,1),new IG.ptr(2437,2444,1),new IG.ptr(2447,2448,1),new IG.ptr(2451,2472,1),new IG.ptr(2474,2480,1),new IG.ptr(2482,2486,4),new IG.ptr(2487,2489,1),new IG.ptr(2493,2510,17),new IG.ptr(2524,2525,1),new IG.ptr(2527,2529,1),new IG.ptr(2544,2545,1),new IG.ptr(2556,2565,9),new IG.ptr(2566,2570,1),new IG.ptr(2575,2576,1),new IG.ptr(2579,2600,1),new IG.ptr(2602,2608,1),new IG.ptr(2610,2611,1),new IG.ptr(2613,2614,1),new IG.ptr(2616,2617,1),new IG.ptr(2649,2652,1),new IG.ptr(2654,2674,20),new IG.ptr(2675,2676,1),new IG.ptr(2693,2701,1),new IG.ptr(2703,2705,1),new IG.ptr(2707,2728,1),new IG.ptr(2730,2736,1),new IG.ptr(2738,2739,1),new IG.ptr(2741,2745,1),new IG.ptr(2749,2768,19),new IG.ptr(2784,2785,1),new IG.ptr(2809,2821,12),new IG.ptr(2822,2828,1),new IG.ptr(2831,2832,1),new IG.ptr(2835,2856,1),new IG.ptr(2858,2864,1),new IG.ptr(2866,2867,1),new IG.ptr(2869,2873,1),new IG.ptr(2877,2908,31),new IG.ptr(2909,2911,2),new IG.ptr(2912,2913,1),new IG.ptr(2929,2947,18),new IG.ptr(2949,2954,1),new IG.ptr(2958,2960,1),new IG.ptr(2962,2965,1),new IG.ptr(2969,2970,1),new IG.ptr(2972,2974,2),new IG.ptr(2975,2979,4),new IG.ptr(2980,2984,4),new IG.ptr(2985,2986,1),new IG.ptr(2990,3001,1),new IG.ptr(3024,3077,53),new IG.ptr(3078,3084,1),new IG.ptr(3086,3088,1),new IG.ptr(3090,3112,1),new IG.ptr(3114,3129,1),new IG.ptr(3133,3160,27),new IG.ptr(3161,3162,1),new IG.ptr(3168,3169,1),new IG.ptr(3200,3205,5),new IG.ptr(3206,3212,1),new IG.ptr(3214,3216,1),new IG.ptr(3218,3240,1),new IG.ptr(3242,3251,1),new IG.ptr(3253,3257,1),new IG.ptr(3261,3294,33),new IG.ptr(3296,3297,1),new IG.ptr(3313,3314,1),new IG.ptr(3332,3340,1),new IG.ptr(3342,3344,1),new IG.ptr(3346,3386,1),new IG.ptr(3389,3406,17),new IG.ptr(3412,3414,1),new IG.ptr(3423,3425,1),new IG.ptr(3450,3455,1),new IG.ptr(3461,3478,1),new IG.ptr(3482,3505,1),new IG.ptr(3507,3515,1),new IG.ptr(3517,3520,3),new IG.ptr(3521,3526,1),new IG.ptr(3585,3632,1),new IG.ptr(3634,3635,1),new IG.ptr(3648,3654,1),new IG.ptr(3713,3714,1),new IG.ptr(3716,3718,2),new IG.ptr(3719,3722,1),new IG.ptr(3724,3747,1),new IG.ptr(3749,3751,2),new IG.ptr(3752,3760,1),new IG.ptr(3762,3763,1),new IG.ptr(3773,3776,3),new IG.ptr(3777,3780,1),new IG.ptr(3782,3804,22),new IG.ptr(3805,3807,1),new IG.ptr(3840,3904,64),new IG.ptr(3905,3911,1),new IG.ptr(3913,3948,1),new IG.ptr(3976,3980,1),new IG.ptr(4096,4138,1),new IG.ptr(4159,4176,17),new IG.ptr(4177,4181,1),new IG.ptr(4186,4189,1),new IG.ptr(4193,4197,4),new IG.ptr(4198,4206,8),new IG.ptr(4207,4208,1),new IG.ptr(4213,4225,1),new IG.ptr(4238,4256,18),new IG.ptr(4257,4293,1),new IG.ptr(4295,4301,6),new IG.ptr(4304,4346,1),new IG.ptr(4348,4680,1),new IG.ptr(4682,4685,1),new IG.ptr(4688,4694,1),new IG.ptr(4696,4698,2),new IG.ptr(4699,4701,1),new IG.ptr(4704,4744,1),new IG.ptr(4746,4749,1),new IG.ptr(4752,4784,1),new IG.ptr(4786,4789,1),new IG.ptr(4792,4798,1),new IG.ptr(4800,4802,2),new IG.ptr(4803,4805,1),new IG.ptr(4808,4822,1),new IG.ptr(4824,4880,1),new IG.ptr(4882,4885,1),new IG.ptr(4888,4954,1),new IG.ptr(4992,5007,1),new IG.ptr(5024,5109,1),new IG.ptr(5112,5117,1),new IG.ptr(5121,5740,1),new IG.ptr(5743,5759,1),new IG.ptr(5761,5786,1),new IG.ptr(5792,5866,1),new IG.ptr(5873,5880,1),new IG.ptr(5888,5900,1),new IG.ptr(5902,5905,1),new IG.ptr(5920,5937,1),new IG.ptr(5952,5969,1),new IG.ptr(5984,5996,1),new IG.ptr(5998,6000,1),new IG.ptr(6016,6067,1),new IG.ptr(6103,6108,5),new IG.ptr(6176,6264,1),new IG.ptr(6272,6276,1),new IG.ptr(6279,6312,1),new IG.ptr(6314,6320,6),new IG.ptr(6321,6389,1),new IG.ptr(6400,6430,1),new IG.ptr(6480,6509,1),new IG.ptr(6512,6516,1),new IG.ptr(6528,6571,1),new IG.ptr(6576,6601,1),new IG.ptr(6656,6678,1),new IG.ptr(6688,6740,1),new IG.ptr(6823,6917,94),new IG.ptr(6918,6963,1),new IG.ptr(6981,6987,1),new IG.ptr(7043,7072,1),new IG.ptr(7086,7087,1),new IG.ptr(7098,7141,1),new IG.ptr(7168,7203,1),new IG.ptr(7245,7247,1),new IG.ptr(7258,7293,1),new IG.ptr(7296,7304,1),new IG.ptr(7312,7354,1),new IG.ptr(7357,7359,1),new IG.ptr(7401,7404,1),new IG.ptr(7406,7411,1),new IG.ptr(7413,7414,1),new IG.ptr(7418,7424,6),new IG.ptr(7425,7615,1),new IG.ptr(7680,7957,1),new IG.ptr(7960,7965,1),new IG.ptr(7968,8005,1),new IG.ptr(8008,8013,1),new IG.ptr(8016,8023,1),new IG.ptr(8025,8031,2),new IG.ptr(8032,8061,1),new IG.ptr(8064,8116,1),new IG.ptr(8118,8124,1),new IG.ptr(8126,8130,4),new IG.ptr(8131,8132,1),new IG.ptr(8134,8140,1),new IG.ptr(8144,8147,1),new IG.ptr(8150,8155,1),new IG.ptr(8160,8172,1),new IG.ptr(8178,8180,1),new IG.ptr(8182,8188,1),new IG.ptr(8305,8319,14),new IG.ptr(8336,8348,1),new IG.ptr(8450,8455,5),new IG.ptr(8458,8467,1),new IG.ptr(8469,8473,4),new IG.ptr(8474,8477,1),new IG.ptr(8484,8490,2),new IG.ptr(8491,8493,1),new IG.ptr(8495,8505,1),new IG.ptr(8508,8511,1),new IG.ptr(8517,8521,1),new IG.ptr(8526,8579,53),new IG.ptr(8580,11264,2684),new IG.ptr(11265,11310,1),new IG.ptr(11312,11358,1),new IG.ptr(11360,11492,1),new IG.ptr(11499,11502,1),new IG.ptr(11506,11507,1),new IG.ptr(11520,11557,1),new IG.ptr(11559,11565,6),new IG.ptr(11568,11623,1),new IG.ptr(11631,11648,17),new IG.ptr(11649,11670,1),new IG.ptr(11680,11686,1),new IG.ptr(11688,11694,1),new IG.ptr(11696,11702,1),new IG.ptr(11704,11710,1),new IG.ptr(11712,11718,1),new IG.ptr(11720,11726,1),new IG.ptr(11728,11734,1),new IG.ptr(11736,11742,1),new IG.ptr(11823,12293,470),new IG.ptr(12294,12337,43),new IG.ptr(12338,12341,1),new IG.ptr(12347,12348,1),new IG.ptr(12353,12438,1),new IG.ptr(12445,12447,1),new IG.ptr(12449,12538,1),new IG.ptr(12540,12543,1),new IG.ptr(12549,12591,1),new IG.ptr(12593,12686,1),new IG.ptr(12704,12735,1),new IG.ptr(12784,12799,1),new IG.ptr(13312,19903,1),new IG.ptr(19968,40956,1),new IG.ptr(40960,42124,1),new IG.ptr(42192,42237,1),new IG.ptr(42240,42508,1),new IG.ptr(42512,42527,1),new IG.ptr(42538,42539,1),new IG.ptr(42560,42606,1),new IG.ptr(42623,42653,1),new IG.ptr(42656,42725,1),new IG.ptr(42775,42783,1),new IG.ptr(42786,42888,1),new IG.ptr(42891,42943,1),new IG.ptr(42946,42954,1),new IG.ptr(42997,43009,1),new IG.ptr(43011,43013,1),new IG.ptr(43015,43018,1),new IG.ptr(43020,43042,1),new IG.ptr(43072,43123,1),new IG.ptr(43138,43187,1),new IG.ptr(43250,43255,1),new IG.ptr(43259,43261,2),new IG.ptr(43262,43274,12),new IG.ptr(43275,43301,1),new IG.ptr(43312,43334,1),new IG.ptr(43360,43388,1),new IG.ptr(43396,43442,1),new IG.ptr(43471,43488,17),new IG.ptr(43489,43492,1),new IG.ptr(43494,43503,1),new IG.ptr(43514,43518,1),new IG.ptr(43520,43560,1),new IG.ptr(43584,43586,1),new IG.ptr(43588,43595,1),new IG.ptr(43616,43638,1),new IG.ptr(43642,43646,4),new IG.ptr(43647,43695,1),new IG.ptr(43697,43701,4),new IG.ptr(43702,43705,3),new IG.ptr(43706,43709,1),new IG.ptr(43712,43714,2),new IG.ptr(43739,43741,1),new IG.ptr(43744,43754,1),new IG.ptr(43762,43764,1),new IG.ptr(43777,43782,1),new IG.ptr(43785,43790,1),new IG.ptr(43793,43798,1),new IG.ptr(43808,43814,1),new IG.ptr(43816,43822,1),new IG.ptr(43824,43866,1),new IG.ptr(43868,43881,1),new IG.ptr(43888,44002,1),new IG.ptr(44032,55203,1),new IG.ptr(55216,55238,1),new IG.ptr(55243,55291,1),new IG.ptr(63744,64109,1),new IG.ptr(64112,64217,1),new IG.ptr(64256,64262,1),new IG.ptr(64275,64279,1),new IG.ptr(64285,64287,2),new IG.ptr(64288,64296,1),new IG.ptr(64298,64310,1),new IG.ptr(64312,64316,1),new IG.ptr(64318,64320,2),new IG.ptr(64321,64323,2),new IG.ptr(64324,64326,2),new IG.ptr(64327,64433,1),new IG.ptr(64467,64829,1),new IG.ptr(64848,64911,1),new IG.ptr(64914,64967,1),new IG.ptr(65008,65019,1),new IG.ptr(65136,65140,1),new IG.ptr(65142,65276,1),new IG.ptr(65313,65338,1),new IG.ptr(65345,65370,1),new IG.ptr(65382,65470,1),new IG.ptr(65474,65479,1),new IG.ptr(65482,65487,1),new IG.ptr(65490,65495,1),new IG.ptr(65498,65500,1)]),new JN([new IH.ptr(65536,65547,1),new IH.ptr(65549,65574,1),new IH.ptr(65576,65594,1),new IH.ptr(65596,65597,1),new IH.ptr(65599,65613,1),new IH.ptr(65616,65629,1),new IH.ptr(65664,65786,1),new IH.ptr(66176,66204,1),new IH.ptr(66208,66256,1),new IH.ptr(66304,66335,1),new IH.ptr(66349,66368,1),new IH.ptr(66370,66377,1),new IH.ptr(66384,66421,1),new IH.ptr(66432,66461,1),new IH.ptr(66464,66499,1),new IH.ptr(66504,66511,1),new IH.ptr(66560,66717,1),new IH.ptr(66736,66771,1),new IH.ptr(66776,66811,1),new IH.ptr(66816,66855,1),new IH.ptr(66864,66915,1),new IH.ptr(67072,67382,1),new IH.ptr(67392,67413,1),new IH.ptr(67424,67431,1),new IH.ptr(67584,67589,1),new IH.ptr(67592,67594,2),new IH.ptr(67595,67637,1),new IH.ptr(67639,67640,1),new IH.ptr(67644,67647,3),new IH.ptr(67648,67669,1),new IH.ptr(67680,67702,1),new IH.ptr(67712,67742,1),new IH.ptr(67808,67826,1),new IH.ptr(67828,67829,1),new IH.ptr(67840,67861,1),new IH.ptr(67872,67897,1),new IH.ptr(67968,68023,1),new IH.ptr(68030,68031,1),new IH.ptr(68096,68112,16),new IH.ptr(68113,68115,1),new IH.ptr(68117,68119,1),new IH.ptr(68121,68149,1),new IH.ptr(68192,68220,1),new IH.ptr(68224,68252,1),new IH.ptr(68288,68295,1),new IH.ptr(68297,68324,1),new IH.ptr(68352,68405,1),new IH.ptr(68416,68437,1),new IH.ptr(68448,68466,1),new IH.ptr(68480,68497,1),new IH.ptr(68608,68680,1),new IH.ptr(68736,68786,1),new IH.ptr(68800,68850,1),new IH.ptr(68864,68899,1),new IH.ptr(69248,69289,1),new IH.ptr(69296,69297,1),new IH.ptr(69376,69404,1),new IH.ptr(69415,69424,9),new IH.ptr(69425,69445,1),new IH.ptr(69552,69572,1),new IH.ptr(69600,69622,1),new IH.ptr(69635,69687,1),new IH.ptr(69763,69807,1),new IH.ptr(69840,69864,1),new IH.ptr(69891,69926,1),new IH.ptr(69956,69959,3),new IH.ptr(69968,70002,1),new IH.ptr(70006,70019,13),new IH.ptr(70020,70066,1),new IH.ptr(70081,70084,1),new IH.ptr(70106,70108,2),new IH.ptr(70144,70161,1),new IH.ptr(70163,70187,1),new IH.ptr(70272,70278,1),new IH.ptr(70280,70282,2),new IH.ptr(70283,70285,1),new IH.ptr(70287,70301,1),new IH.ptr(70303,70312,1),new IH.ptr(70320,70366,1),new IH.ptr(70405,70412,1),new IH.ptr(70415,70416,1),new IH.ptr(70419,70440,1),new IH.ptr(70442,70448,1),new IH.ptr(70450,70451,1),new IH.ptr(70453,70457,1),new IH.ptr(70461,70480,19),new IH.ptr(70493,70497,1),new IH.ptr(70656,70708,1),new IH.ptr(70727,70730,1),new IH.ptr(70751,70753,1),new IH.ptr(70784,70831,1),new IH.ptr(70852,70853,1),new IH.ptr(70855,71040,185),new IH.ptr(71041,71086,1),new IH.ptr(71128,71131,1),new IH.ptr(71168,71215,1),new IH.ptr(71236,71296,60),new IH.ptr(71297,71338,1),new IH.ptr(71352,71424,72),new IH.ptr(71425,71450,1),new IH.ptr(71680,71723,1),new IH.ptr(71840,71903,1),new IH.ptr(71935,71942,1),new IH.ptr(71945,71948,3),new IH.ptr(71949,71955,1),new IH.ptr(71957,71958,1),new IH.ptr(71960,71983,1),new IH.ptr(71999,72001,2),new IH.ptr(72096,72103,1),new IH.ptr(72106,72144,1),new IH.ptr(72161,72163,2),new IH.ptr(72192,72203,11),new IH.ptr(72204,72242,1),new IH.ptr(72250,72272,22),new IH.ptr(72284,72329,1),new IH.ptr(72349,72384,35),new IH.ptr(72385,72440,1),new IH.ptr(72704,72712,1),new IH.ptr(72714,72750,1),new IH.ptr(72768,72818,50),new IH.ptr(72819,72847,1),new IH.ptr(72960,72966,1),new IH.ptr(72968,72969,1),new IH.ptr(72971,73008,1),new IH.ptr(73030,73056,26),new IH.ptr(73057,73061,1),new IH.ptr(73063,73064,1),new IH.ptr(73066,73097,1),new IH.ptr(73112,73440,328),new IH.ptr(73441,73458,1),new IH.ptr(73648,73728,80),new IH.ptr(73729,74649,1),new IH.ptr(74880,75075,1),new IH.ptr(77824,78894,1),new IH.ptr(82944,83526,1),new IH.ptr(92160,92728,1),new IH.ptr(92736,92766,1),new IH.ptr(92880,92909,1),new IH.ptr(92928,92975,1),new IH.ptr(92992,92995,1),new IH.ptr(93027,93047,1),new IH.ptr(93053,93071,1),new IH.ptr(93760,93823,1),new IH.ptr(93952,94026,1),new IH.ptr(94032,94099,67),new IH.ptr(94100,94111,1),new IH.ptr(94176,94177,1),new IH.ptr(94179,94208,29),new IH.ptr(94209,100343,1),new IH.ptr(100352,101589,1),new IH.ptr(101632,101640,1),new IH.ptr(110592,110878,1),new IH.ptr(110928,110930,1),new IH.ptr(110948,110951,1),new IH.ptr(110960,111355,1),new IH.ptr(113664,113770,1),new IH.ptr(113776,113788,1),new IH.ptr(113792,113800,1),new IH.ptr(113808,113817,1),new IH.ptr(119808,119892,1),new IH.ptr(119894,119964,1),new IH.ptr(119966,119967,1),new IH.ptr(119970,119973,3),new IH.ptr(119974,119977,3),new IH.ptr(119978,119980,1),new IH.ptr(119982,119993,1),new IH.ptr(119995,119997,2),new IH.ptr(119998,120003,1),new IH.ptr(120005,120069,1),new IH.ptr(120071,120074,1),new IH.ptr(120077,120084,1),new IH.ptr(120086,120092,1),new IH.ptr(120094,120121,1),new IH.ptr(120123,120126,1),new IH.ptr(120128,120132,1),new IH.ptr(120134,120138,4),new IH.ptr(120139,120144,1),new IH.ptr(120146,120485,1),new IH.ptr(120488,120512,1),new IH.ptr(120514,120538,1),new IH.ptr(120540,120570,1),new IH.ptr(120572,120596,1),new IH.ptr(120598,120628,1),new IH.ptr(120630,120654,1),new IH.ptr(120656,120686,1),new IH.ptr(120688,120712,1),new IH.ptr(120714,120744,1),new IH.ptr(120746,120770,1),new IH.ptr(120772,120779,1),new IH.ptr(123136,123180,1),new IH.ptr(123191,123197,1),new IH.ptr(123214,123584,370),new IH.ptr(123585,123627,1),new IH.ptr(124928,125124,1),new IH.ptr(125184,125251,1),new IH.ptr(125259,126464,1205),new IH.ptr(126465,126467,1),new IH.ptr(126469,126495,1),new IH.ptr(126497,126498,1),new IH.ptr(126500,126503,3),new IH.ptr(126505,126514,1),new IH.ptr(126516,126519,1),new IH.ptr(126521,126523,2),new IH.ptr(126530,126535,5),new IH.ptr(126537,126541,2),new IH.ptr(126542,126543,1),new IH.ptr(126545,126546,1),new IH.ptr(126548,126551,3),new IH.ptr(126553,126561,2),new IH.ptr(126562,126564,2),new IH.ptr(126567,126570,1),new IH.ptr(126572,126578,1),new IH.ptr(126580,126583,1),new IH.ptr(126585,126588,1),new IH.ptr(126590,126592,2),new IH.ptr(126593,126601,1),new IH.ptr(126603,126619,1),new IH.ptr(126625,126627,1),new IH.ptr(126629,126633,1),new IH.ptr(126635,126651,1),new IH.ptr(131072,173789,1),new IH.ptr(173824,177972,1),new IH.ptr(177984,178205,1),new IH.ptr(178208,183969,1),new IH.ptr(183984,191456,1),new IH.ptr(194560,195101,1),new IH.ptr(196608,201546,1)]),6);H=new IF.ptr(new JM([new IG.ptr(688,705,1),new IG.ptr(710,721,1),new IG.ptr(736,740,1),new IG.ptr(748,750,2),new IG.ptr(884,890,6),new IG.ptr(1369,1600,231),new IG.ptr(1765,1766,1),new IG.ptr(2036,2037,1),new IG.ptr(2042,2074,32),new IG.ptr(2084,2088,4),new IG.ptr(2417,3654,1237),new IG.ptr(3782,4348,566),new IG.ptr(6103,6211,108),new IG.ptr(6823,7288,465),new IG.ptr(7289,7293,1),new IG.ptr(7468,7530,1),new IG.ptr(7544,7579,35),new IG.ptr(7580,7615,1),new IG.ptr(8305,8319,14),new IG.ptr(8336,8348,1),new IG.ptr(11388,11389,1),new IG.ptr(11631,11823,192),new IG.ptr(12293,12337,44),new IG.ptr(12338,12341,1),new IG.ptr(12347,12445,98),new IG.ptr(12446,12540,94),new IG.ptr(12541,12542,1),new IG.ptr(40981,42232,1251),new IG.ptr(42233,42237,1),new IG.ptr(42508,42623,115),new IG.ptr(42652,42653,1),new IG.ptr(42775,42783,1),new IG.ptr(42864,42888,24),new IG.ptr(43000,43001,1),new IG.ptr(43471,43494,23),new IG.ptr(43632,43741,109),new IG.ptr(43763,43764,1),new IG.ptr(43868,43871,1),new IG.ptr(43881,65392,21511),new IG.ptr(65438,65439,1)]),new JN([new IH.ptr(92992,92995,1),new IH.ptr(94099,94111,1),new IH.ptr(94176,94177,1),new IH.ptr(94179,123191,29012),new IH.ptr(123192,123197,1),new IH.ptr(125259,125259,1)]),0);L=new IF.ptr(new JM([new IG.ptr(768,879,1),new IG.ptr(1155,1161,1),new IG.ptr(1425,1469,1),new IG.ptr(1471,1473,2),new IG.ptr(1474,1476,2),new IG.ptr(1477,1479,2),new IG.ptr(1552,1562,1),new IG.ptr(1611,1631,1),new IG.ptr(1648,1750,102),new IG.ptr(1751,1756,1),new IG.ptr(1759,1764,1),new IG.ptr(1767,1768,1),new IG.ptr(1770,1773,1),new IG.ptr(1809,1840,31),new IG.ptr(1841,1866,1),new IG.ptr(1958,1968,1),new IG.ptr(2027,2035,1),new IG.ptr(2045,2070,25),new IG.ptr(2071,2073,1),new IG.ptr(2075,2083,1),new IG.ptr(2085,2087,1),new IG.ptr(2089,2093,1),new IG.ptr(2137,2139,1),new IG.ptr(2259,2273,1),new IG.ptr(2275,2307,1),new IG.ptr(2362,2364,1),new IG.ptr(2366,2383,1),new IG.ptr(2385,2391,1),new IG.ptr(2402,2403,1),new IG.ptr(2433,2435,1),new IG.ptr(2492,2494,2),new IG.ptr(2495,2500,1),new IG.ptr(2503,2504,1),new IG.ptr(2507,2509,1),new IG.ptr(2519,2530,11),new IG.ptr(2531,2558,27),new IG.ptr(2561,2563,1),new IG.ptr(2620,2622,2),new IG.ptr(2623,2626,1),new IG.ptr(2631,2632,1),new IG.ptr(2635,2637,1),new IG.ptr(2641,2672,31),new IG.ptr(2673,2677,4),new IG.ptr(2689,2691,1),new IG.ptr(2748,2750,2),new IG.ptr(2751,2757,1),new IG.ptr(2759,2761,1),new IG.ptr(2763,2765,1),new IG.ptr(2786,2787,1),new IG.ptr(2810,2815,1),new IG.ptr(2817,2819,1),new IG.ptr(2876,2878,2),new IG.ptr(2879,2884,1),new IG.ptr(2887,2888,1),new IG.ptr(2891,2893,1),new IG.ptr(2901,2903,1),new IG.ptr(2914,2915,1),new IG.ptr(2946,3006,60),new IG.ptr(3007,3010,1),new IG.ptr(3014,3016,1),new IG.ptr(3018,3021,1),new IG.ptr(3031,3072,41),new IG.ptr(3073,3076,1),new IG.ptr(3134,3140,1),new IG.ptr(3142,3144,1),new IG.ptr(3146,3149,1),new IG.ptr(3157,3158,1),new IG.ptr(3170,3171,1),new IG.ptr(3201,3203,1),new IG.ptr(3260,3262,2),new IG.ptr(3263,3268,1),new IG.ptr(3270,3272,1),new IG.ptr(3274,3277,1),new IG.ptr(3285,3286,1),new IG.ptr(3298,3299,1),new IG.ptr(3328,3331,1),new IG.ptr(3387,3388,1),new IG.ptr(3390,3396,1),new IG.ptr(3398,3400,1),new IG.ptr(3402,3405,1),new IG.ptr(3415,3426,11),new IG.ptr(3427,3457,30),new IG.ptr(3458,3459,1),new IG.ptr(3530,3535,5),new IG.ptr(3536,3540,1),new IG.ptr(3542,3544,2),new IG.ptr(3545,3551,1),new IG.ptr(3570,3571,1),new IG.ptr(3633,3636,3),new IG.ptr(3637,3642,1),new IG.ptr(3655,3662,1),new IG.ptr(3761,3764,3),new IG.ptr(3765,3772,1),new IG.ptr(3784,3789,1),new IG.ptr(3864,3865,1),new IG.ptr(3893,3897,2),new IG.ptr(3902,3903,1),new IG.ptr(3953,3972,1),new IG.ptr(3974,3975,1),new IG.ptr(3981,3991,1),new IG.ptr(3993,4028,1),new IG.ptr(4038,4139,101),new IG.ptr(4140,4158,1),new IG.ptr(4182,4185,1),new IG.ptr(4190,4192,1),new IG.ptr(4194,4196,1),new IG.ptr(4199,4205,1),new IG.ptr(4209,4212,1),new IG.ptr(4226,4237,1),new IG.ptr(4239,4250,11),new IG.ptr(4251,4253,1),new IG.ptr(4957,4959,1),new IG.ptr(5906,5908,1),new IG.ptr(5938,5940,1),new IG.ptr(5970,5971,1),new IG.ptr(6002,6003,1),new IG.ptr(6068,6099,1),new IG.ptr(6109,6155,46),new IG.ptr(6156,6157,1),new IG.ptr(6277,6278,1),new IG.ptr(6313,6432,119),new IG.ptr(6433,6443,1),new IG.ptr(6448,6459,1),new IG.ptr(6679,6683,1),new IG.ptr(6741,6750,1),new IG.ptr(6752,6780,1),new IG.ptr(6783,6832,49),new IG.ptr(6833,6848,1),new IG.ptr(6912,6916,1),new IG.ptr(6964,6980,1),new IG.ptr(7019,7027,1),new IG.ptr(7040,7042,1),new IG.ptr(7073,7085,1),new IG.ptr(7142,7155,1),new IG.ptr(7204,7223,1),new IG.ptr(7376,7378,1),new IG.ptr(7380,7400,1),new IG.ptr(7405,7412,7),new IG.ptr(7415,7417,1),new IG.ptr(7616,7673,1),new IG.ptr(7675,7679,1),new IG.ptr(8400,8432,1),new IG.ptr(11503,11505,1),new IG.ptr(11647,11744,97),new IG.ptr(11745,11775,1),new IG.ptr(12330,12335,1),new IG.ptr(12441,12442,1),new IG.ptr(42607,42610,1),new IG.ptr(42612,42621,1),new IG.ptr(42654,42655,1),new IG.ptr(42736,42737,1),new IG.ptr(43010,43014,4),new IG.ptr(43019,43043,24),new IG.ptr(43044,43047,1),new IG.ptr(43052,43136,84),new IG.ptr(43137,43188,51),new IG.ptr(43189,43205,1),new IG.ptr(43232,43249,1),new IG.ptr(43263,43302,39),new IG.ptr(43303,43309,1),new IG.ptr(43335,43347,1),new IG.ptr(43392,43395,1),new IG.ptr(43443,43456,1),new IG.ptr(43493,43561,68),new IG.ptr(43562,43574,1),new IG.ptr(43587,43596,9),new IG.ptr(43597,43643,46),new IG.ptr(43644,43645,1),new IG.ptr(43696,43698,2),new IG.ptr(43699,43700,1),new IG.ptr(43703,43704,1),new IG.ptr(43710,43711,1),new IG.ptr(43713,43755,42),new IG.ptr(43756,43759,1),new IG.ptr(43765,43766,1),new IG.ptr(44003,44010,1),new IG.ptr(44012,44013,1),new IG.ptr(64286,65024,738),new IG.ptr(65025,65039,1),new IG.ptr(65056,65071,1)]),new JN([new IH.ptr(66045,66272,227),new IH.ptr(66422,66426,1),new IH.ptr(68097,68099,1),new IH.ptr(68101,68102,1),new IH.ptr(68108,68111,1),new IH.ptr(68152,68154,1),new IH.ptr(68159,68325,166),new IH.ptr(68326,68900,574),new IH.ptr(68901,68903,1),new IH.ptr(69291,69292,1),new IH.ptr(69446,69456,1),new IH.ptr(69632,69634,1),new IH.ptr(69688,69702,1),new IH.ptr(69759,69762,1),new IH.ptr(69808,69818,1),new IH.ptr(69888,69890,1),new IH.ptr(69927,69940,1),new IH.ptr(69957,69958,1),new IH.ptr(70003,70016,13),new IH.ptr(70017,70018,1),new IH.ptr(70067,70080,1),new IH.ptr(70089,70092,1),new IH.ptr(70094,70095,1),new IH.ptr(70188,70199,1),new IH.ptr(70206,70367,161),new IH.ptr(70368,70378,1),new IH.ptr(70400,70403,1),new IH.ptr(70459,70460,1),new IH.ptr(70462,70468,1),new IH.ptr(70471,70472,1),new IH.ptr(70475,70477,1),new IH.ptr(70487,70498,11),new IH.ptr(70499,70502,3),new IH.ptr(70503,70508,1),new IH.ptr(70512,70516,1),new IH.ptr(70709,70726,1),new IH.ptr(70750,70832,82),new IH.ptr(70833,70851,1),new IH.ptr(71087,71093,1),new IH.ptr(71096,71104,1),new IH.ptr(71132,71133,1),new IH.ptr(71216,71232,1),new IH.ptr(71339,71351,1),new IH.ptr(71453,71467,1),new IH.ptr(71724,71738,1),new IH.ptr(71984,71989,1),new IH.ptr(71991,71992,1),new IH.ptr(71995,71998,1),new IH.ptr(72000,72002,2),new IH.ptr(72003,72145,142),new IH.ptr(72146,72151,1),new IH.ptr(72154,72160,1),new IH.ptr(72164,72193,29),new IH.ptr(72194,72202,1),new IH.ptr(72243,72249,1),new IH.ptr(72251,72254,1),new IH.ptr(72263,72273,10),new IH.ptr(72274,72283,1),new IH.ptr(72330,72345,1),new IH.ptr(72751,72758,1),new IH.ptr(72760,72767,1),new IH.ptr(72850,72871,1),new IH.ptr(72873,72886,1),new IH.ptr(73009,73014,1),new IH.ptr(73018,73020,2),new IH.ptr(73021,73023,2),new IH.ptr(73024,73029,1),new IH.ptr(73031,73098,67),new IH.ptr(73099,73102,1),new IH.ptr(73104,73105,1),new IH.ptr(73107,73111,1),new IH.ptr(73459,73462,1),new IH.ptr(92912,92916,1),new IH.ptr(92976,92982,1),new IH.ptr(94031,94033,2),new IH.ptr(94034,94087,1),new IH.ptr(94095,94098,1),new IH.ptr(94180,94192,12),new IH.ptr(94193,113821,19628),new IH.ptr(113822,119141,5319),new IH.ptr(119142,119145,1),new IH.ptr(119149,119154,1),new IH.ptr(119163,119170,1),new IH.ptr(119173,119179,1),new IH.ptr(119210,119213,1),new IH.ptr(119362,119364,1),new IH.ptr(121344,121398,1),new IH.ptr(121403,121452,1),new IH.ptr(121461,121476,15),new IH.ptr(121499,121503,1),new IH.ptr(121505,121519,1),new IH.ptr(122880,122886,1),new IH.ptr(122888,122904,1),new IH.ptr(122907,122913,1),new IH.ptr(122915,122916,1),new IH.ptr(122918,122922,1),new IH.ptr(123184,123190,1),new IH.ptr(123628,123631,1),new IH.ptr(125136,125142,1),new IH.ptr(125252,125258,1),new IH.ptr(917760,917999,1)]),0);P=new IF.ptr(new JM([new IG.ptr(48,57,1),new IG.ptr(178,179,1),new IG.ptr(185,188,3),new IG.ptr(189,190,1),new IG.ptr(1632,1641,1),new IG.ptr(1776,1785,1),new IG.ptr(1984,1993,1),new IG.ptr(2406,2415,1),new IG.ptr(2534,2543,1),new IG.ptr(2548,2553,1),new IG.ptr(2662,2671,1),new IG.ptr(2790,2799,1),new IG.ptr(2918,2927,1),new IG.ptr(2930,2935,1),new IG.ptr(3046,3058,1),new IG.ptr(3174,3183,1),new IG.ptr(3192,3198,1),new IG.ptr(3302,3311,1),new IG.ptr(3416,3422,1),new IG.ptr(3430,3448,1),new IG.ptr(3558,3567,1),new IG.ptr(3664,3673,1),new IG.ptr(3792,3801,1),new IG.ptr(3872,3891,1),new IG.ptr(4160,4169,1),new IG.ptr(4240,4249,1),new IG.ptr(4969,4988,1),new IG.ptr(5870,5872,1),new IG.ptr(6112,6121,1),new IG.ptr(6128,6137,1),new IG.ptr(6160,6169,1),new IG.ptr(6470,6479,1),new IG.ptr(6608,6618,1),new IG.ptr(6784,6793,1),new IG.ptr(6800,6809,1),new IG.ptr(6992,7001,1),new IG.ptr(7088,7097,1),new IG.ptr(7232,7241,1),new IG.ptr(7248,7257,1),new IG.ptr(8304,8308,4),new IG.ptr(8309,8313,1),new IG.ptr(8320,8329,1),new IG.ptr(8528,8578,1),new IG.ptr(8581,8585,1),new IG.ptr(9312,9371,1),new IG.ptr(9450,9471,1),new IG.ptr(10102,10131,1),new IG.ptr(11517,12295,778),new IG.ptr(12321,12329,1),new IG.ptr(12344,12346,1),new IG.ptr(12690,12693,1),new IG.ptr(12832,12841,1),new IG.ptr(12872,12879,1),new IG.ptr(12881,12895,1),new IG.ptr(12928,12937,1),new IG.ptr(12977,12991,1),new IG.ptr(42528,42537,1),new IG.ptr(42726,42735,1),new IG.ptr(43056,43061,1),new IG.ptr(43216,43225,1),new IG.ptr(43264,43273,1),new IG.ptr(43472,43481,1),new IG.ptr(43504,43513,1),new IG.ptr(43600,43609,1),new IG.ptr(44016,44025,1),new IG.ptr(65296,65305,1)]),new JN([new IH.ptr(65799,65843,1),new IH.ptr(65856,65912,1),new IH.ptr(65930,65931,1),new IH.ptr(66273,66299,1),new IH.ptr(66336,66339,1),new IH.ptr(66369,66378,9),new IH.ptr(66513,66517,1),new IH.ptr(66720,66729,1),new IH.ptr(67672,67679,1),new IH.ptr(67705,67711,1),new IH.ptr(67751,67759,1),new IH.ptr(67835,67839,1),new IH.ptr(67862,67867,1),new IH.ptr(68028,68029,1),new IH.ptr(68032,68047,1),new IH.ptr(68050,68095,1),new IH.ptr(68160,68168,1),new IH.ptr(68221,68222,1),new IH.ptr(68253,68255,1),new IH.ptr(68331,68335,1),new IH.ptr(68440,68447,1),new IH.ptr(68472,68479,1),new IH.ptr(68521,68527,1),new IH.ptr(68858,68863,1),new IH.ptr(68912,68921,1),new IH.ptr(69216,69246,1),new IH.ptr(69405,69414,1),new IH.ptr(69457,69460,1),new IH.ptr(69573,69579,1),new IH.ptr(69714,69743,1),new IH.ptr(69872,69881,1),new IH.ptr(69942,69951,1),new IH.ptr(70096,70105,1),new IH.ptr(70113,70132,1),new IH.ptr(70384,70393,1),new IH.ptr(70736,70745,1),new IH.ptr(70864,70873,1),new IH.ptr(71248,71257,1),new IH.ptr(71360,71369,1),new IH.ptr(71472,71483,1),new IH.ptr(71904,71922,1),new IH.ptr(72016,72025,1),new IH.ptr(72784,72812,1),new IH.ptr(73040,73049,1),new IH.ptr(73120,73129,1),new IH.ptr(73664,73684,1),new IH.ptr(74752,74862,1),new IH.ptr(92768,92777,1),new IH.ptr(93008,93017,1),new IH.ptr(93019,93025,1),new IH.ptr(93824,93846,1),new IH.ptr(119520,119539,1),new IH.ptr(119648,119672,1),new IH.ptr(120782,120831,1),new IH.ptr(123200,123209,1),new IH.ptr(123632,123641,1),new IH.ptr(125127,125135,1),new IH.ptr(125264,125273,1),new IH.ptr(126065,126123,1),new IH.ptr(126125,126127,1),new IH.ptr(126129,126132,1),new IH.ptr(126209,126253,1),new IH.ptr(126255,126269,1),new IH.ptr(127232,127244,1),new IH.ptr(130032,130041,1)]),4);Q=new IF.ptr(new JM([new IG.ptr(48,57,1),new IG.ptr(1632,1641,1),new IG.ptr(1776,1785,1),new IG.ptr(1984,1993,1),new IG.ptr(2406,2415,1),new IG.ptr(2534,2543,1),new IG.ptr(2662,2671,1),new IG.ptr(2790,2799,1),new IG.ptr(2918,2927,1),new IG.ptr(3046,3055,1),new IG.ptr(3174,3183,1),new IG.ptr(3302,3311,1),new IG.ptr(3430,3439,1),new IG.ptr(3558,3567,1),new IG.ptr(3664,3673,1),new IG.ptr(3792,3801,1),new IG.ptr(3872,3881,1),new IG.ptr(4160,4169,1),new IG.ptr(4240,4249,1),new IG.ptr(6112,6121,1),new IG.ptr(6160,6169,1),new IG.ptr(6470,6479,1),new IG.ptr(6608,6617,1),new IG.ptr(6784,6793,1),new IG.ptr(6800,6809,1),new IG.ptr(6992,7001,1),new IG.ptr(7088,7097,1),new IG.ptr(7232,7241,1),new IG.ptr(7248,7257,1),new IG.ptr(42528,42537,1),new IG.ptr(43216,43225,1),new IG.ptr(43264,43273,1),new IG.ptr(43472,43481,1),new IG.ptr(43504,43513,1),new IG.ptr(43600,43609,1),new IG.ptr(44016,44025,1),new IG.ptr(65296,65305,1)]),new JN([new IH.ptr(66720,66729,1),new IH.ptr(68912,68921,1),new IH.ptr(69734,69743,1),new IH.ptr(69872,69881,1),new IH.ptr(69942,69951,1),new IH.ptr(70096,70105,1),new IH.ptr(70384,70393,1),new IH.ptr(70736,70745,1),new IH.ptr(70864,70873,1),new IH.ptr(71248,71257,1),new IH.ptr(71360,71369,1),new IH.ptr(71472,71481,1),new IH.ptr(71904,71913,1),new IH.ptr(72016,72025,1),new IH.ptr(72784,72793,1),new IH.ptr(73040,73049,1),new IH.ptr(73120,73129,1),new IH.ptr(92768,92777,1),new IH.ptr(93008,93017,1),new IH.ptr(120782,120831,1),new IH.ptr(123200,123209,1),new IH.ptr(123632,123641,1),new IH.ptr(125264,125273,1),new IH.ptr(130032,130041,1)]),1);T=new IF.ptr(new JM([new IG.ptr(33,35,1),new IG.ptr(37,42,1),new IG.ptr(44,47,1),new IG.ptr(58,59,1),new IG.ptr(63,64,1),new IG.ptr(91,93,1),new IG.ptr(95,123,28),new IG.ptr(125,161,36),new IG.ptr(167,171,4),new IG.ptr(182,183,1),new IG.ptr(187,191,4),new IG.ptr(894,903,9),new IG.ptr(1370,1375,1),new IG.ptr(1417,1418,1),new IG.ptr(1470,1472,2),new IG.ptr(1475,1478,3),new IG.ptr(1523,1524,1),new IG.ptr(1545,1546,1),new IG.ptr(1548,1549,1),new IG.ptr(1563,1566,3),new IG.ptr(1567,1642,75),new IG.ptr(1643,1645,1),new IG.ptr(1748,1792,44),new IG.ptr(1793,1805,1),new IG.ptr(2039,2041,1),new IG.ptr(2096,2110,1),new IG.ptr(2142,2404,262),new IG.ptr(2405,2416,11),new IG.ptr(2557,2678,121),new IG.ptr(2800,3191,391),new IG.ptr(3204,3572,368),new IG.ptr(3663,3674,11),new IG.ptr(3675,3844,169),new IG.ptr(3845,3858,1),new IG.ptr(3860,3898,38),new IG.ptr(3899,3901,1),new IG.ptr(3973,4048,75),new IG.ptr(4049,4052,1),new IG.ptr(4057,4058,1),new IG.ptr(4170,4175,1),new IG.ptr(4347,4960,613),new IG.ptr(4961,4968,1),new IG.ptr(5120,5742,622),new IG.ptr(5787,5788,1),new IG.ptr(5867,5869,1),new IG.ptr(5941,5942,1),new IG.ptr(6100,6102,1),new IG.ptr(6104,6106,1),new IG.ptr(6144,6154,1),new IG.ptr(6468,6469,1),new IG.ptr(6686,6687,1),new IG.ptr(6816,6822,1),new IG.ptr(6824,6829,1),new IG.ptr(7002,7008,1),new IG.ptr(7164,7167,1),new IG.ptr(7227,7231,1),new IG.ptr(7294,7295,1),new IG.ptr(7360,7367,1),new IG.ptr(7379,8208,829),new IG.ptr(8209,8231,1),new IG.ptr(8240,8259,1),new IG.ptr(8261,8273,1),new IG.ptr(8275,8286,1),new IG.ptr(8317,8318,1),new IG.ptr(8333,8334,1),new IG.ptr(8968,8971,1),new IG.ptr(9001,9002,1),new IG.ptr(10088,10101,1),new IG.ptr(10181,10182,1),new IG.ptr(10214,10223,1),new IG.ptr(10627,10648,1),new IG.ptr(10712,10715,1),new IG.ptr(10748,10749,1),new IG.ptr(11513,11516,1),new IG.ptr(11518,11519,1),new IG.ptr(11632,11776,144),new IG.ptr(11777,11822,1),new IG.ptr(11824,11855,1),new IG.ptr(11858,12289,431),new IG.ptr(12290,12291,1),new IG.ptr(12296,12305,1),new IG.ptr(12308,12319,1),new IG.ptr(12336,12349,13),new IG.ptr(12448,12539,91),new IG.ptr(42238,42239,1),new IG.ptr(42509,42511,1),new IG.ptr(42611,42622,11),new IG.ptr(42738,42743,1),new IG.ptr(43124,43127,1),new IG.ptr(43214,43215,1),new IG.ptr(43256,43258,1),new IG.ptr(43260,43310,50),new IG.ptr(43311,43359,48),new IG.ptr(43457,43469,1),new IG.ptr(43486,43487,1),new IG.ptr(43612,43615,1),new IG.ptr(43742,43743,1),new IG.ptr(43760,43761,1),new IG.ptr(44011,64830,20819),new IG.ptr(64831,65040,209),new IG.ptr(65041,65049,1),new IG.ptr(65072,65106,1),new IG.ptr(65108,65121,1),new IG.ptr(65123,65128,5),new IG.ptr(65130,65131,1),new IG.ptr(65281,65283,1),new IG.ptr(65285,65290,1),new IG.ptr(65292,65295,1),new IG.ptr(65306,65307,1),new IG.ptr(65311,65312,1),new IG.ptr(65339,65341,1),new IG.ptr(65343,65371,28),new IG.ptr(65373,65375,2),new IG.ptr(65376,65381,1)]),new JN([new IH.ptr(65792,65794,1),new IH.ptr(66463,66512,49),new IH.ptr(66927,67671,744),new IH.ptr(67871,67903,32),new IH.ptr(68176,68184,1),new IH.ptr(68223,68336,113),new IH.ptr(68337,68342,1),new IH.ptr(68409,68415,1),new IH.ptr(68505,68508,1),new IH.ptr(69293,69461,168),new IH.ptr(69462,69465,1),new IH.ptr(69703,69709,1),new IH.ptr(69819,69820,1),new IH.ptr(69822,69825,1),new IH.ptr(69952,69955,1),new IH.ptr(70004,70005,1),new IH.ptr(70085,70088,1),new IH.ptr(70093,70107,14),new IH.ptr(70109,70111,1),new IH.ptr(70200,70205,1),new IH.ptr(70313,70731,418),new IH.ptr(70732,70735,1),new IH.ptr(70746,70747,1),new IH.ptr(70749,70854,105),new IH.ptr(71105,71127,1),new IH.ptr(71233,71235,1),new IH.ptr(71264,71276,1),new IH.ptr(71484,71486,1),new IH.ptr(71739,72004,265),new IH.ptr(72005,72006,1),new IH.ptr(72162,72255,93),new IH.ptr(72256,72262,1),new IH.ptr(72346,72348,1),new IH.ptr(72350,72354,1),new IH.ptr(72769,72773,1),new IH.ptr(72816,72817,1),new IH.ptr(73463,73464,1),new IH.ptr(73727,74864,1137),new IH.ptr(74865,74868,1),new IH.ptr(92782,92783,1),new IH.ptr(92917,92983,66),new IH.ptr(92984,92987,1),new IH.ptr(92996,93847,851),new IH.ptr(93848,93850,1),new IH.ptr(94178,113823,19645),new IH.ptr(121479,121483,1),new IH.ptr(125278,125279,1)]),11);AB=new IF.ptr(new JM([new IG.ptr(36,43,7),new IG.ptr(60,62,1),new IG.ptr(94,96,2),new IG.ptr(124,126,2),new IG.ptr(162,166,1),new IG.ptr(168,169,1),new IG.ptr(172,174,2),new IG.ptr(175,177,1),new IG.ptr(180,184,4),new IG.ptr(215,247,32),new IG.ptr(706,709,1),new IG.ptr(722,735,1),new IG.ptr(741,747,1),new IG.ptr(749,751,2),new IG.ptr(752,767,1),new IG.ptr(885,900,15),new IG.ptr(901,1014,113),new IG.ptr(1154,1421,267),new IG.ptr(1422,1423,1),new IG.ptr(1542,1544,1),new IG.ptr(1547,1550,3),new IG.ptr(1551,1758,207),new IG.ptr(1769,1789,20),new IG.ptr(1790,2038,248),new IG.ptr(2046,2047,1),new IG.ptr(2546,2547,1),new IG.ptr(2554,2555,1),new IG.ptr(2801,2928,127),new IG.ptr(3059,3066,1),new IG.ptr(3199,3407,208),new IG.ptr(3449,3647,198),new IG.ptr(3841,3843,1),new IG.ptr(3859,3861,2),new IG.ptr(3862,3863,1),new IG.ptr(3866,3871,1),new IG.ptr(3892,3896,2),new IG.ptr(4030,4037,1),new IG.ptr(4039,4044,1),new IG.ptr(4046,4047,1),new IG.ptr(4053,4056,1),new IG.ptr(4254,4255,1),new IG.ptr(5008,5017,1),new IG.ptr(5741,6107,366),new IG.ptr(6464,6622,158),new IG.ptr(6623,6655,1),new IG.ptr(7009,7018,1),new IG.ptr(7028,7036,1),new IG.ptr(8125,8127,2),new IG.ptr(8128,8129,1),new IG.ptr(8141,8143,1),new IG.ptr(8157,8159,1),new IG.ptr(8173,8175,1),new IG.ptr(8189,8190,1),new IG.ptr(8260,8274,14),new IG.ptr(8314,8316,1),new IG.ptr(8330,8332,1),new IG.ptr(8352,8383,1),new IG.ptr(8448,8449,1),new IG.ptr(8451,8454,1),new IG.ptr(8456,8457,1),new IG.ptr(8468,8470,2),new IG.ptr(8471,8472,1),new IG.ptr(8478,8483,1),new IG.ptr(8485,8489,2),new IG.ptr(8494,8506,12),new IG.ptr(8507,8512,5),new IG.ptr(8513,8516,1),new IG.ptr(8522,8525,1),new IG.ptr(8527,8586,59),new IG.ptr(8587,8592,5),new IG.ptr(8593,8967,1),new IG.ptr(8972,9000,1),new IG.ptr(9003,9254,1),new IG.ptr(9280,9290,1),new IG.ptr(9372,9449,1),new IG.ptr(9472,10087,1),new IG.ptr(10132,10180,1),new IG.ptr(10183,10213,1),new IG.ptr(10224,10626,1),new IG.ptr(10649,10711,1),new IG.ptr(10716,10747,1),new IG.ptr(10750,11123,1),new IG.ptr(11126,11157,1),new IG.ptr(11159,11263,1),new IG.ptr(11493,11498,1),new IG.ptr(11856,11857,1),new IG.ptr(11904,11929,1),new IG.ptr(11931,12019,1),new IG.ptr(12032,12245,1),new IG.ptr(12272,12283,1),new IG.ptr(12292,12306,14),new IG.ptr(12307,12320,13),new IG.ptr(12342,12343,1),new IG.ptr(12350,12351,1),new IG.ptr(12443,12444,1),new IG.ptr(12688,12689,1),new IG.ptr(12694,12703,1),new IG.ptr(12736,12771,1),new IG.ptr(12800,12830,1),new IG.ptr(12842,12871,1),new IG.ptr(12880,12896,16),new IG.ptr(12897,12927,1),new IG.ptr(12938,12976,1),new IG.ptr(12992,13311,1),new IG.ptr(19904,19967,1),new IG.ptr(42128,42182,1),new IG.ptr(42752,42774,1),new IG.ptr(42784,42785,1),new IG.ptr(42889,42890,1),new IG.ptr(43048,43051,1),new IG.ptr(43062,43065,1),new IG.ptr(43639,43641,1),new IG.ptr(43867,43882,15),new IG.ptr(43883,64297,20414),new IG.ptr(64434,64449,1),new IG.ptr(65020,65021,1),new IG.ptr(65122,65124,2),new IG.ptr(65125,65126,1),new IG.ptr(65129,65284,155),new IG.ptr(65291,65308,17),new IG.ptr(65309,65310,1),new IG.ptr(65342,65344,2),new IG.ptr(65372,65374,2),new IG.ptr(65504,65510,1),new IG.ptr(65512,65518,1),new IG.ptr(65532,65533,1)]),new JN([new IH.ptr(65847,65855,1),new IH.ptr(65913,65929,1),new IH.ptr(65932,65934,1),new IH.ptr(65936,65948,1),new IH.ptr(65952,66000,48),new IH.ptr(66001,66044,1),new IH.ptr(67703,67704,1),new IH.ptr(68296,71487,3191),new IH.ptr(73685,73713,1),new IH.ptr(92988,92991,1),new IH.ptr(92997,113820,20823),new IH.ptr(118784,119029,1),new IH.ptr(119040,119078,1),new IH.ptr(119081,119140,1),new IH.ptr(119146,119148,1),new IH.ptr(119171,119172,1),new IH.ptr(119180,119209,1),new IH.ptr(119214,119272,1),new IH.ptr(119296,119361,1),new IH.ptr(119365,119552,187),new IH.ptr(119553,119638,1),new IH.ptr(120513,120539,26),new IH.ptr(120571,120597,26),new IH.ptr(120629,120655,26),new IH.ptr(120687,120713,26),new IH.ptr(120745,120771,26),new IH.ptr(120832,121343,1),new IH.ptr(121399,121402,1),new IH.ptr(121453,121460,1),new IH.ptr(121462,121475,1),new IH.ptr(121477,121478,1),new IH.ptr(123215,123647,432),new IH.ptr(126124,126128,4),new IH.ptr(126254,126704,450),new IH.ptr(126705,126976,271),new IH.ptr(126977,127019,1),new IH.ptr(127024,127123,1),new IH.ptr(127136,127150,1),new IH.ptr(127153,127167,1),new IH.ptr(127169,127183,1),new IH.ptr(127185,127221,1),new IH.ptr(127245,127405,1),new IH.ptr(127462,127490,1),new IH.ptr(127504,127547,1),new IH.ptr(127552,127560,1),new IH.ptr(127568,127569,1),new IH.ptr(127584,127589,1),new IH.ptr(127744,128727,1),new IH.ptr(128736,128748,1),new IH.ptr(128752,128764,1),new IH.ptr(128768,128883,1),new IH.ptr(128896,128984,1),new IH.ptr(128992,129003,1),new IH.ptr(129024,129035,1),new IH.ptr(129040,129095,1),new IH.ptr(129104,129113,1),new IH.ptr(129120,129159,1),new IH.ptr(129168,129197,1),new IH.ptr(129200,129201,1),new IH.ptr(129280,129400,1),new IH.ptr(129402,129483,1),new IH.ptr(129485,129619,1),new IH.ptr(129632,129645,1),new IH.ptr(129648,129652,1),new IH.ptr(129656,129658,1),new IH.ptr(129664,129670,1),new IH.ptr(129680,129704,1),new IH.ptr(129712,129718,1),new IH.ptr(129728,129730,1),new IH.ptr(129744,129750,1),new IH.ptr(129792,129938,1),new IH.ptr(129940,129994,1)]),10);AJ=new IF.ptr(new JM([new IG.ptr(32,160,128),new IG.ptr(5760,8192,2432),new IG.ptr(8193,8202,1),new IG.ptr(8239,8287,48),new IG.ptr(12288,12288,1)]),JN.nil,1);$pkg.Digit=Q;$pkg.Letter=F;$pkg.L=F;$pkg.Lm=H;$pkg.M=L;$pkg.N=P;$pkg.Punct=T;$pkg.P=T;$pkg.Symbol=AB;$pkg.S=AB;$pkg.Zs=AJ;CE=new IF.ptr(new JM([new IG.ptr(11904,11929,1),new IG.ptr(11931,12019,1),new IG.ptr(12032,12245,1),new IG.ptr(12293,12295,2),new IG.ptr(12321,12329,1),new IG.ptr(12344,12347,1),new IG.ptr(13312,19903,1),new IG.ptr(19968,40956,1),new IG.ptr(63744,64109,1),new IG.ptr(64112,64217,1)]),new JN([new IH.ptr(94192,94193,1),new IH.ptr(131072,173789,1),new IH.ptr(173824,177972,1),new IH.ptr(177984,178205,1),new IH.ptr(178208,183969,1),new IH.ptr(183984,191456,1),new IH.ptr(194560,195101,1),new IH.ptr(196608,201546,1)]),0);CF=new IF.ptr(new JM([new IG.ptr(4352,4607,1),new IG.ptr(12334,12335,1),new IG.ptr(12593,12686,1),new IG.ptr(12800,12830,1),new IG.ptr(12896,12926,1),new IG.ptr(43360,43388,1),new IG.ptr(44032,55203,1),new IG.ptr(55216,55238,1),new IG.ptr(55243,55291,1),new IG.ptr(65440,65470,1),new IG.ptr(65474,65479,1),new IG.ptr(65482,65487,1),new IG.ptr(65490,65495,1),new IG.ptr(65498,65500,1)]),JN.nil,0);CK=new IF.ptr(new JM([new IG.ptr(12353,12438,1),new IG.ptr(12445,12447,1)]),new JN([new IH.ptr(110593,110878,1),new IH.ptr(110928,110930,1),new IH.ptr(127488,127488,1)]),0);CS=new IF.ptr(new JM([new IG.ptr(12449,12538,1),new IG.ptr(12541,12543,1),new IG.ptr(12784,12799,1),new IG.ptr(13008,13054,1),new IG.ptr(13056,13143,1),new IG.ptr(65382,65391,1),new IG.ptr(65393,65437,1)]),new JN([new IH.ptr(110592,110948,356),new IH.ptr(110949,110951,1)]),0);$pkg.Han=CE;$pkg.Hangul=CF;$pkg.Hiragana=CK;$pkg.Katakana=CS;HR=new IF.ptr(new JM([new IG.ptr(9,13,1),new IG.ptr(32,133,101),new IG.ptr(160,5760,5600),new IG.ptr(8192,8202,1),new IG.ptr(8232,8233,1),new IG.ptr(8239,8287,48),new IG.ptr(12288,12288,1)]),JN.nil,2);$pkg.White_Space=HR;HV=new JO([new IW.ptr(75,107),new IW.ptr(83,115),new IW.ptr(107,8490),new IW.ptr(115,383),new IW.ptr(181,924),new IW.ptr(197,229),new IW.ptr(223,7838),new IW.ptr(229,8491),new IW.ptr(304,304),new IW.ptr(305,305),new IW.ptr(383,83),new IW.ptr(452,453),new IW.ptr(453,454),new IW.ptr(454,452),new IW.ptr(455,456),new IW.ptr(456,457),new IW.ptr(457,455),new IW.ptr(458,459),new IW.ptr(459,460),new IW.ptr(460,458),new IW.ptr(497,498),new IW.ptr(498,499),new IW.ptr(499,497),new IW.ptr(837,921),new IW.ptr(914,946),new IW.ptr(917,949),new IW.ptr(920,952),new IW.ptr(921,953),new IW.ptr(922,954),new IW.ptr(924,956),new IW.ptr(928,960),new IW.ptr(929,961),new IW.ptr(931,962),new IW.ptr(934,966),new IW.ptr(937,969),new IW.ptr(946,976),new IW.ptr(949,1013),new IW.ptr(952,977),new IW.ptr(953,8126),new IW.ptr(954,1008),new IW.ptr(956,181),new IW.ptr(960,982),new IW.ptr(961,1009),new IW.ptr(962,963),new IW.ptr(963,931),new IW.ptr(966,981),new IW.ptr(969,8486),new IW.ptr(976,914),new IW.ptr(977,1012),new IW.ptr(981,934),new IW.ptr(982,928),new IW.ptr(1008,922),new IW.ptr(1009,929),new IW.ptr(1012,920),new IW.ptr(1013,917),new IW.ptr(1042,1074),new IW.ptr(1044,1076),new IW.ptr(1054,1086),new IW.ptr(1057,1089),new IW.ptr(1058,1090),new IW.ptr(1066,1098),new IW.ptr(1074,7296),new IW.ptr(1076,7297),new IW.ptr(1086,7298),new IW.ptr(1089,7299),new IW.ptr(1090,7300),new IW.ptr(1098,7302),new IW.ptr(1122,1123),new IW.ptr(1123,7303),new IW.ptr(7296,1042),new IW.ptr(7297,1044),new IW.ptr(7298,1054),new IW.ptr(7299,1057),new IW.ptr(7300,7301),new IW.ptr(7301,1058),new IW.ptr(7302,1066),new IW.ptr(7303,1122),new IW.ptr(7304,42570),new IW.ptr(7776,7777),new IW.ptr(7777,7835),new IW.ptr(7835,7776),new IW.ptr(7838,223),new IW.ptr(8126,837),new IW.ptr(8486,937),new IW.ptr(8490,75),new IW.ptr(8491,197),new IW.ptr(42570,42571),new IW.ptr(42571,7304)]);HU=$toNativeArray($kindUint16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,91,92,93,94,95,96,65,66,67,68,69,70,71,72,73,74,8490,76,77,78,79,80,81,82,383,84,85,86,87,88,89,90,123,124,125,126,127]);HS=new JP([new II.ptr(65,90,$toNativeArray($kindInt32,[0,32,0])),new II.ptr(97,122,$toNativeArray($kindInt32,[-32,0,-32])),new II.ptr(181,181,$toNativeArray($kindInt32,[743,0,743])),new II.ptr(192,214,$toNativeArray($kindInt32,[0,32,0])),new II.ptr(216,222,$toNativeArray($kindInt32,[0,32,0])),new II.ptr(224,246,$toNativeArray($kindInt32,[-32,0,-32])),new II.ptr(248,254,$toNativeArray($kindInt32,[-32,0,-32])),new II.ptr(255,255,$toNativeArray($kindInt32,[121,0,121])),new II.ptr(256,303,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(304,304,$toNativeArray($kindInt32,[0,-199,0])),new II.ptr(305,305,$toNativeArray($kindInt32,[-232,0,-232])),new II.ptr(306,311,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(313,328,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(330,375,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(376,376,$toNativeArray($kindInt32,[0,-121,0])),new II.ptr(377,382,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(383,383,$toNativeArray($kindInt32,[-300,0,-300])),new II.ptr(384,384,$toNativeArray($kindInt32,[195,0,195])),new II.ptr(385,385,$toNativeArray($kindInt32,[0,210,0])),new II.ptr(386,389,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(390,390,$toNativeArray($kindInt32,[0,206,0])),new II.ptr(391,392,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(393,394,$toNativeArray($kindInt32,[0,205,0])),new II.ptr(395,396,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(398,398,$toNativeArray($kindInt32,[0,79,0])),new II.ptr(399,399,$toNativeArray($kindInt32,[0,202,0])),new II.ptr(400,400,$toNativeArray($kindInt32,[0,203,0])),new II.ptr(401,402,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(403,403,$toNativeArray($kindInt32,[0,205,0])),new II.ptr(404,404,$toNativeArray($kindInt32,[0,207,0])),new II.ptr(405,405,$toNativeArray($kindInt32,[97,0,97])),new II.ptr(406,406,$toNativeArray($kindInt32,[0,211,0])),new II.ptr(407,407,$toNativeArray($kindInt32,[0,209,0])),new II.ptr(408,409,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(410,410,$toNativeArray($kindInt32,[163,0,163])),new II.ptr(412,412,$toNativeArray($kindInt32,[0,211,0])),new II.ptr(413,413,$toNativeArray($kindInt32,[0,213,0])),new II.ptr(414,414,$toNativeArray($kindInt32,[130,0,130])),new II.ptr(415,415,$toNativeArray($kindInt32,[0,214,0])),new II.ptr(416,421,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(422,422,$toNativeArray($kindInt32,[0,218,0])),new II.ptr(423,424,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(425,425,$toNativeArray($kindInt32,[0,218,0])),new II.ptr(428,429,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(430,430,$toNativeArray($kindInt32,[0,218,0])),new II.ptr(431,432,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(433,434,$toNativeArray($kindInt32,[0,217,0])),new II.ptr(435,438,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(439,439,$toNativeArray($kindInt32,[0,219,0])),new II.ptr(440,441,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(444,445,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(447,447,$toNativeArray($kindInt32,[56,0,56])),new II.ptr(452,452,$toNativeArray($kindInt32,[0,2,1])),new II.ptr(453,453,$toNativeArray($kindInt32,[-1,1,0])),new II.ptr(454,454,$toNativeArray($kindInt32,[-2,0,-1])),new II.ptr(455,455,$toNativeArray($kindInt32,[0,2,1])),new II.ptr(456,456,$toNativeArray($kindInt32,[-1,1,0])),new II.ptr(457,457,$toNativeArray($kindInt32,[-2,0,-1])),new II.ptr(458,458,$toNativeArray($kindInt32,[0,2,1])),new II.ptr(459,459,$toNativeArray($kindInt32,[-1,1,0])),new II.ptr(460,460,$toNativeArray($kindInt32,[-2,0,-1])),new II.ptr(461,476,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(477,477,$toNativeArray($kindInt32,[-79,0,-79])),new II.ptr(478,495,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(497,497,$toNativeArray($kindInt32,[0,2,1])),new II.ptr(498,498,$toNativeArray($kindInt32,[-1,1,0])),new II.ptr(499,499,$toNativeArray($kindInt32,[-2,0,-1])),new II.ptr(500,501,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(502,502,$toNativeArray($kindInt32,[0,-97,0])),new II.ptr(503,503,$toNativeArray($kindInt32,[0,-56,0])),new II.ptr(504,543,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(544,544,$toNativeArray($kindInt32,[0,-130,0])),new II.ptr(546,563,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(570,570,$toNativeArray($kindInt32,[0,10795,0])),new II.ptr(571,572,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(573,573,$toNativeArray($kindInt32,[0,-163,0])),new II.ptr(574,574,$toNativeArray($kindInt32,[0,10792,0])),new II.ptr(575,576,$toNativeArray($kindInt32,[10815,0,10815])),new II.ptr(577,578,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(579,579,$toNativeArray($kindInt32,[0,-195,0])),new II.ptr(580,580,$toNativeArray($kindInt32,[0,69,0])),new II.ptr(581,581,$toNativeArray($kindInt32,[0,71,0])),new II.ptr(582,591,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(592,592,$toNativeArray($kindInt32,[10783,0,10783])),new II.ptr(593,593,$toNativeArray($kindInt32,[10780,0,10780])),new II.ptr(594,594,$toNativeArray($kindInt32,[10782,0,10782])),new II.ptr(595,595,$toNativeArray($kindInt32,[-210,0,-210])),new II.ptr(596,596,$toNativeArray($kindInt32,[-206,0,-206])),new II.ptr(598,599,$toNativeArray($kindInt32,[-205,0,-205])),new II.ptr(601,601,$toNativeArray($kindInt32,[-202,0,-202])),new II.ptr(603,603,$toNativeArray($kindInt32,[-203,0,-203])),new II.ptr(604,604,$toNativeArray($kindInt32,[42319,0,42319])),new II.ptr(608,608,$toNativeArray($kindInt32,[-205,0,-205])),new II.ptr(609,609,$toNativeArray($kindInt32,[42315,0,42315])),new II.ptr(611,611,$toNativeArray($kindInt32,[-207,0,-207])),new II.ptr(613,613,$toNativeArray($kindInt32,[42280,0,42280])),new II.ptr(614,614,$toNativeArray($kindInt32,[42308,0,42308])),new II.ptr(616,616,$toNativeArray($kindInt32,[-209,0,-209])),new II.ptr(617,617,$toNativeArray($kindInt32,[-211,0,-211])),new II.ptr(618,618,$toNativeArray($kindInt32,[42308,0,42308])),new II.ptr(619,619,$toNativeArray($kindInt32,[10743,0,10743])),new II.ptr(620,620,$toNativeArray($kindInt32,[42305,0,42305])),new II.ptr(623,623,$toNativeArray($kindInt32,[-211,0,-211])),new II.ptr(625,625,$toNativeArray($kindInt32,[10749,0,10749])),new II.ptr(626,626,$toNativeArray($kindInt32,[-213,0,-213])),new II.ptr(629,629,$toNativeArray($kindInt32,[-214,0,-214])),new II.ptr(637,637,$toNativeArray($kindInt32,[10727,0,10727])),new II.ptr(640,640,$toNativeArray($kindInt32,[-218,0,-218])),new II.ptr(642,642,$toNativeArray($kindInt32,[42307,0,42307])),new II.ptr(643,643,$toNativeArray($kindInt32,[-218,0,-218])),new II.ptr(647,647,$toNativeArray($kindInt32,[42282,0,42282])),new II.ptr(648,648,$toNativeArray($kindInt32,[-218,0,-218])),new II.ptr(649,649,$toNativeArray($kindInt32,[-69,0,-69])),new II.ptr(650,651,$toNativeArray($kindInt32,[-217,0,-217])),new II.ptr(652,652,$toNativeArray($kindInt32,[-71,0,-71])),new II.ptr(658,658,$toNativeArray($kindInt32,[-219,0,-219])),new II.ptr(669,669,$toNativeArray($kindInt32,[42261,0,42261])),new II.ptr(670,670,$toNativeArray($kindInt32,[42258,0,42258])),new II.ptr(837,837,$toNativeArray($kindInt32,[84,0,84])),new II.ptr(880,883,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(886,887,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(891,893,$toNativeArray($kindInt32,[130,0,130])),new II.ptr(895,895,$toNativeArray($kindInt32,[0,116,0])),new II.ptr(902,902,$toNativeArray($kindInt32,[0,38,0])),new II.ptr(904,906,$toNativeArray($kindInt32,[0,37,0])),new II.ptr(908,908,$toNativeArray($kindInt32,[0,64,0])),new II.ptr(910,911,$toNativeArray($kindInt32,[0,63,0])),new II.ptr(913,929,$toNativeArray($kindInt32,[0,32,0])),new II.ptr(931,939,$toNativeArray($kindInt32,[0,32,0])),new II.ptr(940,940,$toNativeArray($kindInt32,[-38,0,-38])),new II.ptr(941,943,$toNativeArray($kindInt32,[-37,0,-37])),new II.ptr(945,961,$toNativeArray($kindInt32,[-32,0,-32])),new II.ptr(962,962,$toNativeArray($kindInt32,[-31,0,-31])),new II.ptr(963,971,$toNativeArray($kindInt32,[-32,0,-32])),new II.ptr(972,972,$toNativeArray($kindInt32,[-64,0,-64])),new II.ptr(973,974,$toNativeArray($kindInt32,[-63,0,-63])),new II.ptr(975,975,$toNativeArray($kindInt32,[0,8,0])),new II.ptr(976,976,$toNativeArray($kindInt32,[-62,0,-62])),new II.ptr(977,977,$toNativeArray($kindInt32,[-57,0,-57])),new II.ptr(981,981,$toNativeArray($kindInt32,[-47,0,-47])),new II.ptr(982,982,$toNativeArray($kindInt32,[-54,0,-54])),new II.ptr(983,983,$toNativeArray($kindInt32,[-8,0,-8])),new II.ptr(984,1007,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(1008,1008,$toNativeArray($kindInt32,[-86,0,-86])),new II.ptr(1009,1009,$toNativeArray($kindInt32,[-80,0,-80])),new II.ptr(1010,1010,$toNativeArray($kindInt32,[7,0,7])),new II.ptr(1011,1011,$toNativeArray($kindInt32,[-116,0,-116])),new II.ptr(1012,1012,$toNativeArray($kindInt32,[0,-60,0])),new II.ptr(1013,1013,$toNativeArray($kindInt32,[-96,0,-96])),new II.ptr(1015,1016,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(1017,1017,$toNativeArray($kindInt32,[0,-7,0])),new II.ptr(1018,1019,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(1021,1023,$toNativeArray($kindInt32,[0,-130,0])),new II.ptr(1024,1039,$toNativeArray($kindInt32,[0,80,0])),new II.ptr(1040,1071,$toNativeArray($kindInt32,[0,32,0])),new II.ptr(1072,1103,$toNativeArray($kindInt32,[-32,0,-32])),new II.ptr(1104,1119,$toNativeArray($kindInt32,[-80,0,-80])),new II.ptr(1120,1153,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(1162,1215,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(1216,1216,$toNativeArray($kindInt32,[0,15,0])),new II.ptr(1217,1230,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(1231,1231,$toNativeArray($kindInt32,[-15,0,-15])),new II.ptr(1232,1327,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(1329,1366,$toNativeArray($kindInt32,[0,48,0])),new II.ptr(1377,1414,$toNativeArray($kindInt32,[-48,0,-48])),new II.ptr(4256,4293,$toNativeArray($kindInt32,[0,7264,0])),new II.ptr(4295,4295,$toNativeArray($kindInt32,[0,7264,0])),new II.ptr(4301,4301,$toNativeArray($kindInt32,[0,7264,0])),new II.ptr(4304,4346,$toNativeArray($kindInt32,[3008,0,0])),new II.ptr(4349,4351,$toNativeArray($kindInt32,[3008,0,0])),new II.ptr(5024,5103,$toNativeArray($kindInt32,[0,38864,0])),new II.ptr(5104,5109,$toNativeArray($kindInt32,[0,8,0])),new II.ptr(5112,5117,$toNativeArray($kindInt32,[-8,0,-8])),new II.ptr(7296,7296,$toNativeArray($kindInt32,[-6254,0,-6254])),new II.ptr(7297,7297,$toNativeArray($kindInt32,[-6253,0,-6253])),new II.ptr(7298,7298,$toNativeArray($kindInt32,[-6244,0,-6244])),new II.ptr(7299,7300,$toNativeArray($kindInt32,[-6242,0,-6242])),new II.ptr(7301,7301,$toNativeArray($kindInt32,[-6243,0,-6243])),new II.ptr(7302,7302,$toNativeArray($kindInt32,[-6236,0,-6236])),new II.ptr(7303,7303,$toNativeArray($kindInt32,[-6181,0,-6181])),new II.ptr(7304,7304,$toNativeArray($kindInt32,[35266,0,35266])),new II.ptr(7312,7354,$toNativeArray($kindInt32,[0,-3008,0])),new II.ptr(7357,7359,$toNativeArray($kindInt32,[0,-3008,0])),new II.ptr(7545,7545,$toNativeArray($kindInt32,[35332,0,35332])),new II.ptr(7549,7549,$toNativeArray($kindInt32,[3814,0,3814])),new II.ptr(7566,7566,$toNativeArray($kindInt32,[35384,0,35384])),new II.ptr(7680,7829,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(7835,7835,$toNativeArray($kindInt32,[-59,0,-59])),new II.ptr(7838,7838,$toNativeArray($kindInt32,[0,-7615,0])),new II.ptr(7840,7935,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(7936,7943,$toNativeArray($kindInt32,[8,0,8])),new II.ptr(7944,7951,$toNativeArray($kindInt32,[0,-8,0])),new II.ptr(7952,7957,$toNativeArray($kindInt32,[8,0,8])),new II.ptr(7960,7965,$toNativeArray($kindInt32,[0,-8,0])),new II.ptr(7968,7975,$toNativeArray($kindInt32,[8,0,8])),new II.ptr(7976,7983,$toNativeArray($kindInt32,[0,-8,0])),new II.ptr(7984,7991,$toNativeArray($kindInt32,[8,0,8])),new II.ptr(7992,7999,$toNativeArray($kindInt32,[0,-8,0])),new II.ptr(8000,8005,$toNativeArray($kindInt32,[8,0,8])),new II.ptr(8008,8013,$toNativeArray($kindInt32,[0,-8,0])),new II.ptr(8017,8017,$toNativeArray($kindInt32,[8,0,8])),new II.ptr(8019,8019,$toNativeArray($kindInt32,[8,0,8])),new II.ptr(8021,8021,$toNativeArray($kindInt32,[8,0,8])),new II.ptr(8023,8023,$toNativeArray($kindInt32,[8,0,8])),new II.ptr(8025,8025,$toNativeArray($kindInt32,[0,-8,0])),new II.ptr(8027,8027,$toNativeArray($kindInt32,[0,-8,0])),new II.ptr(8029,8029,$toNativeArray($kindInt32,[0,-8,0])),new II.ptr(8031,8031,$toNativeArray($kindInt32,[0,-8,0])),new II.ptr(8032,8039,$toNativeArray($kindInt32,[8,0,8])),new II.ptr(8040,8047,$toNativeArray($kindInt32,[0,-8,0])),new II.ptr(8048,8049,$toNativeArray($kindInt32,[74,0,74])),new II.ptr(8050,8053,$toNativeArray($kindInt32,[86,0,86])),new II.ptr(8054,8055,$toNativeArray($kindInt32,[100,0,100])),new II.ptr(8056,8057,$toNativeArray($kindInt32,[128,0,128])),new II.ptr(8058,8059,$toNativeArray($kindInt32,[112,0,112])),new II.ptr(8060,8061,$toNativeArray($kindInt32,[126,0,126])),new II.ptr(8064,8071,$toNativeArray($kindInt32,[8,0,8])),new II.ptr(8072,8079,$toNativeArray($kindInt32,[0,-8,0])),new II.ptr(8080,8087,$toNativeArray($kindInt32,[8,0,8])),new II.ptr(8088,8095,$toNativeArray($kindInt32,[0,-8,0])),new II.ptr(8096,8103,$toNativeArray($kindInt32,[8,0,8])),new II.ptr(8104,8111,$toNativeArray($kindInt32,[0,-8,0])),new II.ptr(8112,8113,$toNativeArray($kindInt32,[8,0,8])),new II.ptr(8115,8115,$toNativeArray($kindInt32,[9,0,9])),new II.ptr(8120,8121,$toNativeArray($kindInt32,[0,-8,0])),new II.ptr(8122,8123,$toNativeArray($kindInt32,[0,-74,0])),new II.ptr(8124,8124,$toNativeArray($kindInt32,[0,-9,0])),new II.ptr(8126,8126,$toNativeArray($kindInt32,[-7205,0,-7205])),new II.ptr(8131,8131,$toNativeArray($kindInt32,[9,0,9])),new II.ptr(8136,8139,$toNativeArray($kindInt32,[0,-86,0])),new II.ptr(8140,8140,$toNativeArray($kindInt32,[0,-9,0])),new II.ptr(8144,8145,$toNativeArray($kindInt32,[8,0,8])),new II.ptr(8152,8153,$toNativeArray($kindInt32,[0,-8,0])),new II.ptr(8154,8155,$toNativeArray($kindInt32,[0,-100,0])),new II.ptr(8160,8161,$toNativeArray($kindInt32,[8,0,8])),new II.ptr(8165,8165,$toNativeArray($kindInt32,[7,0,7])),new II.ptr(8168,8169,$toNativeArray($kindInt32,[0,-8,0])),new II.ptr(8170,8171,$toNativeArray($kindInt32,[0,-112,0])),new II.ptr(8172,8172,$toNativeArray($kindInt32,[0,-7,0])),new II.ptr(8179,8179,$toNativeArray($kindInt32,[9,0,9])),new II.ptr(8184,8185,$toNativeArray($kindInt32,[0,-128,0])),new II.ptr(8186,8187,$toNativeArray($kindInt32,[0,-126,0])),new II.ptr(8188,8188,$toNativeArray($kindInt32,[0,-9,0])),new II.ptr(8486,8486,$toNativeArray($kindInt32,[0,-7517,0])),new II.ptr(8490,8490,$toNativeArray($kindInt32,[0,-8383,0])),new II.ptr(8491,8491,$toNativeArray($kindInt32,[0,-8262,0])),new II.ptr(8498,8498,$toNativeArray($kindInt32,[0,28,0])),new II.ptr(8526,8526,$toNativeArray($kindInt32,[-28,0,-28])),new II.ptr(8544,8559,$toNativeArray($kindInt32,[0,16,0])),new II.ptr(8560,8575,$toNativeArray($kindInt32,[-16,0,-16])),new II.ptr(8579,8580,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(9398,9423,$toNativeArray($kindInt32,[0,26,0])),new II.ptr(9424,9449,$toNativeArray($kindInt32,[-26,0,-26])),new II.ptr(11264,11310,$toNativeArray($kindInt32,[0,48,0])),new II.ptr(11312,11358,$toNativeArray($kindInt32,[-48,0,-48])),new II.ptr(11360,11361,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(11362,11362,$toNativeArray($kindInt32,[0,-10743,0])),new II.ptr(11363,11363,$toNativeArray($kindInt32,[0,-3814,0])),new II.ptr(11364,11364,$toNativeArray($kindInt32,[0,-10727,0])),new II.ptr(11365,11365,$toNativeArray($kindInt32,[-10795,0,-10795])),new II.ptr(11366,11366,$toNativeArray($kindInt32,[-10792,0,-10792])),new II.ptr(11367,11372,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(11373,11373,$toNativeArray($kindInt32,[0,-10780,0])),new II.ptr(11374,11374,$toNativeArray($kindInt32,[0,-10749,0])),new II.ptr(11375,11375,$toNativeArray($kindInt32,[0,-10783,0])),new II.ptr(11376,11376,$toNativeArray($kindInt32,[0,-10782,0])),new II.ptr(11378,11379,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(11381,11382,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(11390,11391,$toNativeArray($kindInt32,[0,-10815,0])),new II.ptr(11392,11491,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(11499,11502,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(11506,11507,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(11520,11557,$toNativeArray($kindInt32,[-7264,0,-7264])),new II.ptr(11559,11559,$toNativeArray($kindInt32,[-7264,0,-7264])),new II.ptr(11565,11565,$toNativeArray($kindInt32,[-7264,0,-7264])),new II.ptr(42560,42605,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(42624,42651,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(42786,42799,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(42802,42863,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(42873,42876,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(42877,42877,$toNativeArray($kindInt32,[0,-35332,0])),new II.ptr(42878,42887,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(42891,42892,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(42893,42893,$toNativeArray($kindInt32,[0,-42280,0])),new II.ptr(42896,42899,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(42900,42900,$toNativeArray($kindInt32,[48,0,48])),new II.ptr(42902,42921,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(42922,42922,$toNativeArray($kindInt32,[0,-42308,0])),new II.ptr(42923,42923,$toNativeArray($kindInt32,[0,-42319,0])),new II.ptr(42924,42924,$toNativeArray($kindInt32,[0,-42315,0])),new II.ptr(42925,42925,$toNativeArray($kindInt32,[0,-42305,0])),new II.ptr(42926,42926,$toNativeArray($kindInt32,[0,-42308,0])),new II.ptr(42928,42928,$toNativeArray($kindInt32,[0,-42258,0])),new II.ptr(42929,42929,$toNativeArray($kindInt32,[0,-42282,0])),new II.ptr(42930,42930,$toNativeArray($kindInt32,[0,-42261,0])),new II.ptr(42931,42931,$toNativeArray($kindInt32,[0,928,0])),new II.ptr(42932,42943,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(42946,42947,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(42948,42948,$toNativeArray($kindInt32,[0,-48,0])),new II.ptr(42949,42949,$toNativeArray($kindInt32,[0,-42307,0])),new II.ptr(42950,42950,$toNativeArray($kindInt32,[0,-35384,0])),new II.ptr(42951,42954,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(42997,42998,$toNativeArray($kindInt32,[1114112,1114112,1114112])),new II.ptr(43859,43859,$toNativeArray($kindInt32,[-928,0,-928])),new II.ptr(43888,43967,$toNativeArray($kindInt32,[-38864,0,-38864])),new II.ptr(65313,65338,$toNativeArray($kindInt32,[0,32,0])),new II.ptr(65345,65370,$toNativeArray($kindInt32,[-32,0,-32])),new II.ptr(66560,66599,$toNativeArray($kindInt32,[0,40,0])),new II.ptr(66600,66639,$toNativeArray($kindInt32,[-40,0,-40])),new II.ptr(66736,66771,$toNativeArray($kindInt32,[0,40,0])),new II.ptr(66776,66811,$toNativeArray($kindInt32,[-40,0,-40])),new II.ptr(68736,68786,$toNativeArray($kindInt32,[0,64,0])),new II.ptr(68800,68850,$toNativeArray($kindInt32,[-64,0,-64])),new II.ptr(71840,71871,$toNativeArray($kindInt32,[0,32,0])),new II.ptr(71872,71903,$toNativeArray($kindInt32,[-32,0,-32])),new II.ptr(93760,93791,$toNativeArray($kindInt32,[0,32,0])),new II.ptr(93792,93823,$toNativeArray($kindInt32,[-32,0,-32])),new II.ptr(125184,125217,$toNativeArray($kindInt32,[0,34,0])),new II.ptr(125218,125251,$toNativeArray($kindInt32,[-34,0,-34]))]);$pkg.CaseRanges=HS;HT=$toNativeArray($kindUint8,[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,144,130,130,130,136,130,130,130,130,130,130,136,130,130,130,130,132,132,132,132,132,132,132,132,132,132,130,130,136,136,136,130,130,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,130,130,130,136,130,136,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,130,136,130,136,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,16,130,136,136,136,136,136,130,136,136,224,130,136,0,136,136,136,136,132,132,136,192,130,130,136,132,224,130,132,132,132,130,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,136,160,160,160,160,160,160,160,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,136,192,192,192,192,192,192,192,192]);$pkg.PrintRanges=new JS([$pkg.L,$pkg.M,$pkg.N,$pkg.P,$pkg.S]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["unicode/utf8"]=(function(){var $pkg={},$init,B,A,C,F,G,H,I,J,K,N,O,P,R,S;B=$pkg.acceptRange=$newType(0,$kindStruct,"utf8.acceptRange",true,"unicode/utf8",false,function(lo_,hi_){this.$val=this;if(arguments.length===0){this.lo=0;this.hi=0;return;}this.lo=lo_;this.hi=hi_;});F=function(a){var a,aa,ab,ac,ad,ae,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=0;c=0;d=a.$length;if(d<1){e=65533;f=0;b=e;c=f;return[b,c];}g=(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]);h=((g<0||g>=A.length)?($throwRuntimeError("index out of range"),undefined):A[g]);if(h>=240){i=(((h>>0))<<31>>0)>>31>>0;j=(((((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])>>0))&~i)>>0)|(65533&i);k=1;b=j;c=k;return[b,c];}l=((((h&7)>>>0)>>0));n=$clone((m=h>>>4<<24>>>24,((m<0||m>=C.length)?($throwRuntimeError("index out of range"),undefined):C[m])),B);if(d<l){o=65533;p=1;b=o;c=p;return[b,c];}q=(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]);if(q<n.lo||n.hi<q){r=65533;s=1;b=r;c=s;return[b,c];}if(l<=2){t=(((((g&31)>>>0)>>0))<<6>>0)|((((q&63)>>>0)>>0));u=2;b=t;c=u;return[b,c];}v=(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]);if(v<128||191<v){w=65533;x=1;b=w;c=x;return[b,c];}if(l<=3){y=((((((g&15)>>>0)>>0))<<12>>0)|(((((q&63)>>>0)>>0))<<6>>0))|((((v&63)>>>0)>>0));z=3;b=y;c=z;return[b,c];}aa=(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]);if(aa<128||191<aa){ab=65533;ac=1;b=ab;c=ac;return[b,c];}ad=(((((((g&7)>>>0)>>0))<<18>>0)|(((((q&63)>>>0)>>0))<<12>>0))|(((((v&63)>>>0)>>0))<<6>>0))|((((aa&63)>>>0)>>0));ae=4;b=ad;c=ae;return[b,c];};$pkg.DecodeRune=F;G=function(a){var a,aa,ab,ac,ad,ae,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=0;c=0;d=a.length;if(d<1){e=65533;f=0;b=e;c=f;return[b,c];}g=a.charCodeAt(0);h=((g<0||g>=A.length)?($throwRuntimeError("index out of range"),undefined):A[g]);if(h>=240){i=(((h>>0))<<31>>0)>>31>>0;j=((((a.charCodeAt(0)>>0))&~i)>>0)|(65533&i);k=1;b=j;c=k;return[b,c];}l=((((h&7)>>>0)>>0));n=$clone((m=h>>>4<<24>>>24,((m<0||m>=C.length)?($throwRuntimeError("index out of range"),undefined):C[m])),B);if(d<l){o=65533;p=1;b=o;c=p;return[b,c];}q=a.charCodeAt(1);if(q<n.lo||n.hi<q){r=65533;s=1;b=r;c=s;return[b,c];}if(l<=2){t=(((((g&31)>>>0)>>0))<<6>>0)|((((q&63)>>>0)>>0));u=2;b=t;c=u;return[b,c];}v=a.charCodeAt(2);if(v<128||191<v){w=65533;x=1;b=w;c=x;return[b,c];}if(l<=3){y=((((((g&15)>>>0)>>0))<<12>>0)|(((((q&63)>>>0)>>0))<<6>>0))|((((v&63)>>>0)>>0));z=3;b=y;c=z;return[b,c];}aa=a.charCodeAt(3);if(aa<128||191<aa){ab=65533;ac=1;b=ab;c=ac;return[b,c];}ad=(((((((g&7)>>>0)>>0))<<18>>0)|(((((q&63)>>>0)>>0))<<12>>0))|(((((v&63)>>>0)>>0))<<6>>0))|((((aa&63)>>>0)>>0));ae=4;b=ad;c=ae;return[b,c];};$pkg.DecodeRuneInString=G;H=function(a){var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=0;c=0;d=a.$length;if(d===0){e=65533;f=0;b=e;c=f;return[b,c];}g=d-1>>0;b=((((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g])>>0));if(b<128){h=b;i=1;b=h;c=i;return[b,c];}j=d-4>>0;if(j<0){j=0;}g=g-(1)>>0;while(true){if(!(g>=j)){break;}if(P(((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]))){break;}g=g-(1)>>0;}if(g<0){g=0;}k=F($subslice(a,g,d));b=k[0];c=k[1];if(!(((g+c>>0)===d))){l=65533;m=1;b=l;c=m;return[b,c];}n=b;o=c;b=n;c=o;return[b,c];};$pkg.DecodeLastRune=H;I=function(a){var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=0;c=0;d=a.length;if(d===0){e=65533;f=0;b=e;c=f;return[b,c];}g=d-1>>0;b=((a.charCodeAt(g)>>0));if(b<128){h=b;i=1;b=h;c=i;return[b,c];}j=d-4>>0;if(j<0){j=0;}g=g-(1)>>0;while(true){if(!(g>=j)){break;}if(P(a.charCodeAt(g))){break;}g=g-(1)>>0;}if(g<0){g=0;}k=G($substring(a,g,d));b=k[0];c=k[1];if(!(((g+c>>0)===d))){l=65533;m=1;b=l;c=m;return[b,c];}n=b;o=c;b=n;c=o;return[b,c];};$pkg.DecodeLastRuneInString=I;J=function(a){var a;if(a<0){return-1;}else if(a<=127){return 1;}else if(a<=2047){return 2;}else if(55296<=a&&a<=57343){return-1;}else if(a<=65535){return 3;}else if(a<=1114111){return 4;}return-1;};$pkg.RuneLen=J;K=function(a,b){var a,b,c;c=((b>>>0));if(c<=127){(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((b<<24>>>24)));return 1;}else if(c<=2047){$unused((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((192|(((b>>6>>0)<<24>>>24)))>>>0));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((128|((((b<<24>>>24))&63)>>>0))>>>0));return 2;}else if((c>1114111)||(55296<=c&&c<=57343)){b=65533;$unused((2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((224|(((b>>12>>0)<<24>>>24)))>>>0));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((128|(((((b>>6>>0)<<24>>>24))&63)>>>0))>>>0));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=((128|((((b<<24>>>24))&63)>>>0))>>>0));return 3;}else if(c<=65535){$unused((2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((224|(((b>>12>>0)<<24>>>24)))>>>0));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((128|(((((b>>6>>0)<<24>>>24))&63)>>>0))>>>0));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=((128|((((b<<24>>>24))&63)>>>0))>>>0));return 3;}else{$unused((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=((240|(((b>>18>>0)<<24>>>24)))>>>0));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((128|(((((b>>12>>0)<<24>>>24))&63)>>>0))>>>0));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=((128|(((((b>>6>>0)<<24>>>24))&63)>>>0))>>>0));(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]=((128|((((b<<24>>>24))&63)>>>0))>>>0));return 4;}};$pkg.EncodeRune=K;N=function(a){var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=a.$length;c=0;d=0;while(true){if(!(d<b)){break;}c=c+(1)>>0;e=((d<0||d>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+d]);if(e<128){d=d+(1)>>0;continue;}f=((e<0||e>=A.length)?($throwRuntimeError("index out of range"),undefined):A[e]);if(f===241){d=d+(1)>>0;continue;}g=((((f&7)>>>0)>>0));if((d+g>>0)>b){d=d+(1)>>0;continue;}i=$clone((h=f>>>4<<24>>>24,((h<0||h>=C.length)?($throwRuntimeError("index out of range"),undefined):C[h])),B);k=(j=d+1>>0,((j<0||j>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+j]));if(k<i.lo||i.hi<k){g=1;}else if(g===2){}else{m=(l=d+2>>0,((l<0||l>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+l]));if(m<128||191<m){g=1;}else if(g===3){}else{o=(n=d+3>>0,((n<0||n>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+n]));if(o<128||191<o){g=1;}}}d=d+(g)>>0;}return c;};$pkg.RuneCount=N;O=function(a){var a,b,c,d,e,f,g,h,i,j,k,l;b=0;c=a.length;d=0;while(true){if(!(d<c)){break;}e=a.charCodeAt(d);if(e<128){d=d+(1)>>0;b=b+(1)>>0;continue;}f=((e<0||e>=A.length)?($throwRuntimeError("index out of range"),undefined):A[e]);if(f===241){d=d+(1)>>0;b=b+(1)>>0;continue;}g=((((f&7)>>>0)>>0));if((d+g>>0)>c){d=d+(1)>>0;b=b+(1)>>0;continue;}i=$clone((h=f>>>4<<24>>>24,((h<0||h>=C.length)?($throwRuntimeError("index out of range"),undefined):C[h])),B);j=a.charCodeAt((d+1>>0));if(j<i.lo||i.hi<j){g=1;}else if(g===2){}else{k=a.charCodeAt((d+2>>0));if(k<128||191<k){g=1;}else if(g===3){}else{l=a.charCodeAt((d+3>>0));if(l<128||191<l){g=1;}}}d=d+(g)>>0;b=b+(1)>>0;}b=b;return b;};$pkg.RuneCountInString=O;P=function(a){var a;return!((((a&192)>>>0)===128));};$pkg.RuneStart=P;R=function(a){var a,b,c,d,e,f,g,h,i,j,k,l,m;while(true){if(!(a.length>=8)){break;}b=(((((((a.charCodeAt(0)>>>0))|(((a.charCodeAt(1)>>>0))<<8>>>0))>>>0)|(((a.charCodeAt(2)>>>0))<<16>>>0))>>>0)|(((a.charCodeAt(3)>>>0))<<24>>>0))>>>0;c=(((((((a.charCodeAt(4)>>>0))|(((a.charCodeAt(5)>>>0))<<8>>>0))>>>0)|(((a.charCodeAt(6)>>>0))<<16>>>0))>>>0)|(((a.charCodeAt(7)>>>0))<<24>>>0))>>>0;if(!(((((((b|c)>>>0))&2155905152)>>>0)===0))){break;}a=$substring(a,8);}d=a.length;e=0;while(true){if(!(e<d)){break;}f=a.charCodeAt(e);if(f<128){e=e+(1)>>0;continue;}g=((f<0||f>=A.length)?($throwRuntimeError("index out of range"),undefined):A[f]);if(g===241){return false;}h=((((g&7)>>>0)>>0));if((e+h>>0)>d){return false;}j=$clone((i=g>>>4<<24>>>24,((i<0||i>=C.length)?($throwRuntimeError("index out of range"),undefined):C[i])),B);k=a.charCodeAt((e+1>>0));if(k<j.lo||j.hi<k){return false;}else if(h===2){}else{l=a.charCodeAt((e+2>>0));if(l<128||191<l){return false;}else if(h===3){}else{m=a.charCodeAt((e+3>>0));if(m<128||191<m){return false;}}}e=e+(h)>>0;}return true;};$pkg.ValidString=R;S=function(a){var a;if(0<=a&&a<55296){return true;}else if(57343<a&&a<=1114111){return true;}return false;};$pkg.ValidRune=S;B.init("unicode/utf8",[{prop:"lo",name:"lo",embedded:false,exported:false,typ:$Uint8,tag:""},{prop:"hi",name:"hi",embedded:false,exported:false,typ:$Uint8,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:A=$toNativeArray($kindUint8,[240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,19,3,3,3,3,3,3,3,3,3,3,3,3,35,3,3,52,4,4,4,68,241,241,241,241,241,241,241,241,241,241,241]);C=$toNativeArray($kindStruct,[new B.ptr(128,191),new B.ptr(160,191),new B.ptr(128,159),new B.ptr(144,191),new B.ptr(128,143),new B.ptr(0,0),new B.ptr(0,0),new B.ptr(0,0),new B.ptr(0,0),new B.ptr(0,0),new B.ptr(0,0),new B.ptr(0,0),new B.ptr(0,0),new B.ptr(0,0),new B.ptr(0,0),new B.ptr(0,0)]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["bytes"]=(function(){var $pkg={},$init,A,D,B,E,C,F,AX,BQ,BR,CA,CB,CC,CD,CG,CI,CJ,X,BS,BU,G,H,I,J,K,N,O,P,Q,S,T,V,W,AA,AB,AC,AD,AE,AG,AO,AP,AQ,AR,AS,AV,AW,AY,AZ,BA,BB,BC,BD,BE,BF,BG,BH,BI,BJ,BL,BM,BN,BO,BT,BW,BX,BY;A=$packages["errors"];D=$packages["internal/bytealg"];B=$packages["io"];E=$packages["unicode"];C=$packages["unicode/utf8"];F=$pkg.Reader=$newType(0,$kindStruct,"bytes.Reader",true,"bytes",true,function(s_,i_,prevRune_){this.$val=this;if(arguments.length===0){this.s=CA.nil;this.i=new $Int64(0,0);this.prevRune=0;return;}this.s=s_;this.i=i_;this.prevRune=prevRune_;});AX=$pkg.asciiSet=$newType(32,$kindArray,"bytes.asciiSet",true,"bytes",false,null);BQ=$pkg.Buffer=$newType(0,$kindStruct,"bytes.Buffer",true,"bytes",true,function(buf_,off_,lastRead_){this.$val=this;if(arguments.length===0){this.buf=CA.nil;this.off=0;this.lastRead=0;return;}this.buf=buf_;this.off=off_;this.lastRead=lastRead_;});BR=$pkg.readOp=$newType(1,$kindInt8,"bytes.readOp",true,"bytes",false,null);CA=$sliceType($Uint8);CB=$sliceType(CA);CC=$arrayType($Uint8,4);CD=$ptrType(AX);CG=$arrayType($Uint32,8);CI=$ptrType(BQ);CJ=$ptrType(F);F.ptr.prototype.Len=function(){var d,e,f,g,h,i;d=this;if((e=d.i,f=(new $Int64(0,d.s.$length)),(e.$high>f.$high||(e.$high===f.$high&&e.$low>=f.$low)))){return 0;}return(((g=(h=(new $Int64(0,d.s.$length)),i=d.i,new $Int64(h.$high-i.$high,h.$low-i.$low)),g.$low+((g.$high>>31)*4294967296))>>0));};F.prototype.Len=function(){return this.$val.Len();};F.ptr.prototype.Size=function(){var d;d=this;return(new $Int64(0,d.s.$length));};F.prototype.Size=function(){return this.$val.Size();};F.ptr.prototype.Read=function(d){var d,e,f,g,h,i,j,k,l,m;e=0;f=$ifaceNil;g=this;if((h=g.i,i=(new $Int64(0,g.s.$length)),(h.$high>i.$high||(h.$high===i.$high&&h.$low>=i.$low)))){j=0;k=B.EOF;e=j;f=k;return[e,f];}g.prevRune=-1;e=$copySlice(d,$subslice(g.s,$flatten64(g.i)));g.i=(l=g.i,m=(new $Int64(0,e)),new $Int64(l.$high+m.$high,l.$low+m.$low));return[e,f];};F.prototype.Read=function(d){return this.$val.Read(d);};F.ptr.prototype.ReadAt=function(d,e){var d,e,f,g,h,i,j,k,l,m;f=0;g=$ifaceNil;h=this;if((e.$high<0||(e.$high===0&&e.$low<0))){i=0;j=A.New("bytes.Reader.ReadAt: negative offset");f=i;g=j;return[f,g];}if((k=(new $Int64(0,h.s.$length)),(e.$high>k.$high||(e.$high===k.$high&&e.$low>=k.$low)))){l=0;m=B.EOF;f=l;g=m;return[f,g];}f=$copySlice(d,$subslice(h.s,$flatten64(e)));if(f<d.$length){g=B.EOF;}return[f,g];};F.prototype.ReadAt=function(d,e){return this.$val.ReadAt(d,e);};F.ptr.prototype.ReadByte=function(){var d,e,f,g,h,i,j,k;d=this;d.prevRune=-1;if((e=d.i,f=(new $Int64(0,d.s.$length)),(e.$high>f.$high||(e.$high===f.$high&&e.$low>=f.$low)))){return[0,B.EOF];}i=(g=d.s,h=d.i,(($flatten64(h)<0||$flatten64(h)>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+$flatten64(h)]));d.i=(j=d.i,k=new $Int64(0,1),new $Int64(j.$high+k.$high,j.$low+k.$low));return[i,$ifaceNil];};F.prototype.ReadByte=function(){return this.$val.ReadByte();};F.ptr.prototype.UnreadByte=function(){var d,e,f,g;d=this;if((e=d.i,(e.$high<0||(e.$high===0&&e.$low<=0)))){return A.New("bytes.Reader.UnreadByte: at beginning of slice");}d.prevRune=-1;d.i=(f=d.i,g=new $Int64(0,1),new $Int64(f.$high-g.$high,f.$low-g.$low));return $ifaceNil;};F.prototype.UnreadByte=function(){return this.$val.UnreadByte();};F.ptr.prototype.ReadRune=function(){var d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;d=0;e=0;f=$ifaceNil;g=this;if((h=g.i,i=(new $Int64(0,g.s.$length)),(h.$high>i.$high||(h.$high===i.$high&&h.$low>=i.$low)))){g.prevRune=-1;j=0;k=0;l=B.EOF;d=j;e=k;f=l;return[d,e,f];}g.prevRune=(((m=g.i,m.$low+((m.$high>>31)*4294967296))>>0));p=(n=g.s,o=g.i,(($flatten64(o)<0||$flatten64(o)>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+$flatten64(o)]));if(p<128){g.i=(q=g.i,r=new $Int64(0,1),new $Int64(q.$high+r.$high,q.$low+r.$low));s=((p>>0));t=1;u=$ifaceNil;d=s;e=t;f=u;return[d,e,f];}v=C.DecodeRune($subslice(g.s,$flatten64(g.i)));d=v[0];e=v[1];g.i=(w=g.i,x=(new $Int64(0,e)),new $Int64(w.$high+x.$high,w.$low+x.$low));return[d,e,f];};F.prototype.ReadRune=function(){return this.$val.ReadRune();};F.ptr.prototype.UnreadRune=function(){var d,e;d=this;if((e=d.i,(e.$high<0||(e.$high===0&&e.$low<=0)))){return A.New("bytes.Reader.UnreadRune: at beginning of slice");}if(d.prevRune<0){return A.New("bytes.Reader.UnreadRune: previous operation was not ReadRune");}d.i=(new $Int64(0,d.prevRune));d.prevRune=-1;return $ifaceNil;};F.prototype.UnreadRune=function(){return this.$val.UnreadRune();};F.ptr.prototype.Seek=function(d,e){var d,e,f,g,h,i,j;f=this;f.prevRune=-1;g=new $Int64(0,0);h=e;if(h===(0)){g=d;}else if(h===(1)){g=(i=f.i,new $Int64(i.$high+d.$high,i.$low+d.$low));}else if(h===(2)){g=(j=(new $Int64(0,f.s.$length)),new $Int64(j.$high+d.$high,j.$low+d.$low));}else{return[new $Int64(0,0),A.New("bytes.Reader.Seek: invalid whence")];}if((g.$high<0||(g.$high===0&&g.$low<0))){return[new $Int64(0,0),A.New("bytes.Reader.Seek: negative position")];}f.i=g;return[g,$ifaceNil];};F.prototype.Seek=function(d,e){return this.$val.Seek(d,e);};F.ptr.prototype.WriteTo=function(d){var{d,e,f,g,h,i,j,k,l,m,n,o,p,q,$s,$r,$c}=$restore(this,{d});$s=$s||0;s:while(true){switch($s){case 0:e=new $Int64(0,0);f=$ifaceNil;g=this;g.prevRune=-1;if((h=g.i,i=(new $Int64(0,g.s.$length)),(h.$high>i.$high||(h.$high===i.$high&&h.$low>=i.$low)))){j=new $Int64(0,0);k=$ifaceNil;e=j;f=k;$s=-1;return[e,f];}l=$subslice(g.s,$flatten64(g.i));n=d.Write(l);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];f=m[1];if(o>l.$length){$panic(new $String("bytes.Reader.WriteTo: invalid Write count"));}g.i=(p=g.i,q=(new $Int64(0,o)),new $Int64(p.$high+q.$high,p.$low+q.$low));e=(new $Int64(0,o));if(!((o===l.$length))&&$interfaceIsEqual(f,$ifaceNil)){f=B.ErrShortWrite;}$s=-1;return[e,f];}return;}var $f={$blk:F.ptr.prototype.WriteTo,$c:true,$r,d,e,f,g,h,i,j,k,l,m,n,o,p,q,$s};return $f;};F.prototype.WriteTo=function(d){return this.$val.WriteTo(d);};F.ptr.prototype.Reset=function(d){var d,e;e=this;F.copy(e,new F.ptr(d,new $Int64(0,0),-1));};F.prototype.Reset=function(d){return this.$val.Reset(d);};G=function(d){var d;return new F.ptr(d,new $Int64(0,0),-1);};$pkg.NewReader=G;H=function(d,e){var d,e,f,g,h,i;if(e<=0){e=d.$length;}f=$makeSlice(CB,e);g=0;h=0;while(true){if(!(d.$length>0)){break;}if((h+1>>0)>=e){((h<0||h>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+h]=d);h=h+(1)>>0;break;}i=C.DecodeRune(d);g=i[1];((h<0||h>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+h]=$subslice(d,0,g,g));d=$subslice(d,g);h=h+(1)>>0;}return $subslice(f,0,h);};I=function(d,e){var d,e,f,g;if(e.$length===0){return C.RuneCount(d)+1>>0;}if(e.$length===1){return D.Count(d,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]));}f=0;while(true){g=BO(d,e);if(g===-1){return f;}f=f+(1)>>0;d=$subslice(d,(g+e.$length>>0));}};$pkg.Count=I;J=function(d,e){var d,e;return!((BO(d,e)===-1));};$pkg.Contains=J;K=function(d,e){var d,e;return Q(d,e)>=0;};$pkg.ContainsAny=K;N=function(d,e){var d,e,f,g,h,i,j,k,l,m,n;f=e.$length;if((f===0)){return d.$length;}else if((f===1)){return O(d,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]));}else if((f===d.$length)){if(BY(d,e)){return 0;}return-1;}else if(f>d.$length){return-1;}g=D.HashStrRevBytes(e);h=g[0];i=g[1];j=d.$length-f>>0;k=0;l=d.$length-1>>0;while(true){if(!(l>=j)){break;}k=($imul(k,16777619)>>>0)+((((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l])>>>0))>>>0;l=l-(1)>>0;}if((k===h)&&BY($subslice(d,j),e)){return j;}m=j-1>>0;while(true){if(!(m>=0)){break;}k=$imul(k,(16777619))>>>0;k=k+(((((m<0||m>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+m])>>>0)))>>>0;k=k-(($imul(i,(((n=m+f>>0,((n<0||n>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+n]))>>>0)))>>>0))>>>0;if((k===h)&&BY($subslice(d,m,(m+f>>0)),e)){return m;}m=m-(1)>>0;}return-1;};$pkg.LastIndex=N;O=function(d,e){var d,e,f;f=d.$length-1>>0;while(true){if(!(f>=0)){break;}if(((f<0||f>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+f])===e){return f;}f=f-(1)>>0;}return-1;};$pkg.LastIndexByte=O;P=function(d,e){var d,e,f,g,h,i,j,k;if(0<=e&&e<128){return BX(d,((e<<24>>>24)));}else if((e===65533)){f=0;while(true){if(!(f<d.$length)){break;}g=C.DecodeRune($subslice(d,f));h=g[0];i=g[1];if(h===65533){return f;}f=f+(i)>>0;}return-1;}else if(!C.ValidRune(e)){return-1;}else{j=CC.zero();k=C.EncodeRune(new CA(j),e);return BO(d,$subslice(new CA(j),0,k));}};$pkg.IndexRune=P;Q=function(d,e){var d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;if(e===""){return-1;}if(d.$length===1){f=(((0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])>>0));if(f>=128){g=e;h=0;while(true){if(!(h<g.length)){break;}i=$decodeRune(g,h);f=i[0];if(f===65533){return 0;}h+=i[1];}return-1;}if(D.IndexByteString(e,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]))>=0){return 0;}return-1;}if(e.length===1){j=((e.charCodeAt(0)>>0));if(j>=128){j=65533;}return P(d,j);}if(d.$length>8){k=AY(e);l=$clone(k[0],AX);m=k[1];if(m){n=d;o=0;while(true){if(!(o<n.$length)){break;}p=o;q=((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o]);if(new CD(l).contains(q)){return p;}o++;}return-1;}}r=0;s=0;while(true){if(!(s<d.$length)){break;}t=((((s<0||s>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+s])>>0));if(t<128){if(D.IndexByteString(e,((s<0||s>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+s]))>=0){return s;}r=1;s=s+(r)>>0;continue;}u=C.DecodeRune($subslice(d,s));t=u[0];r=u[1];if(!((t===65533))){if(e.length===r){if(e===($encodeRune(t))){return s;}s=s+(r)>>0;continue;}if(D.MaxLen>=r){if(D.IndexString(e,($encodeRune(t)))>=0){return s;}s=s+(r)>>0;continue;}}v=e;w=0;while(true){if(!(w<v.length)){break;}x=$decodeRune(v,w);y=x[0];if(t===y){return s;}w+=x[1];}s=s+(r)>>0;}return-1;};$pkg.IndexAny=Q;S=function(d,e,f,g){var d,e,f,g,h,i,j;if(g===0){return CB.nil;}if(e.$length===0){return H(d,g);}if(g<0){g=I(d,e)+1>>0;}h=$makeSlice(CB,g);g=g-(1)>>0;i=0;while(true){if(!(i<g)){break;}j=BO(d,e);if(j<0){break;}((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]=$subslice(d,0,(j+f>>0),(j+f>>0)));d=$subslice(d,(j+e.$length>>0));i=i+(1)>>0;}((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]=d);return $subslice(h,0,(i+1>>0));};T=function(d,e,f){var d,e,f;return S(d,e,0,f);};$pkg.SplitN=T;V=function(d,e){var d,e;return S(d,e,0,-1);};$pkg.Split=V;W=function(d,e){var d,e;return S(d,e,e.$length,-1);};$pkg.SplitAfter=W;AA=function(d,e){var d,e,f,g,h,i,j,k,l,m,n;if(d.$length===0){return new CA([]);}if(d.$length===1){return $appendSlice((CA.nil),(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]));}f=$imul(e.$length,((d.$length-1>>0)));g=d;h=0;while(true){if(!(h<g.$length)){break;}i=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]);f=f+(i.$length)>>0;h++;}j=$makeSlice(CA,f);k=$copySlice(j,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]));l=$subslice(d,1);m=0;while(true){if(!(m<l.$length)){break;}n=((m<0||m>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+m]);k=k+($copySlice($subslice(j,k),e))>>0;k=k+($copySlice($subslice(j,k),n))>>0;m++;}return j;};$pkg.Join=AA;AB=function(d,e){var d,e;return d.$length>=e.$length&&BY($subslice(d,0,e.$length),e);};$pkg.HasPrefix=AB;AC=function(d,e){var d,e;return d.$length>=e.$length&&BY($subslice(d,(d.$length-e.$length>>0)),e);};$pkg.HasSuffix=AC;AD=function(d,e){var{d,e,f,g,h,i,j,k,l,m,n,o,$s,$r,$c}=$restore(this,{d,e});$s=$s||0;s:while(true){switch($s){case 0:f=e.$length;g=0;h=$makeSlice(CA,f);i=0;case 1:if(!(i<e.$length)){$s=2;continue;}j=1;k=((((i<0||i>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+i])>>0));if(k>=128){l=C.DecodeRune($subslice(e,i));k=l[0];j=l[1];}m=d(k);$s=3;case 3:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}k=m;if(k>=0){n=C.RuneLen(k);if(n<0){n=3;}if((g+n>>0)>f){f=($imul(f,2))+4>>0;o=$makeSlice(CA,f);$copySlice(o,$subslice(h,0,g));h=o;}g=g+(C.EncodeRune($subslice(h,g,f),k))>>0;}i=i+(j)>>0;$s=1;continue;case 2:$s=-1;return $subslice(h,0,g);}return;}var $f={$blk:AD,$c:true,$r,d,e,f,g,h,i,j,k,l,m,n,o,$s};return $f;};$pkg.Map=AD;AE=function(d,e){var d,e,f,g,h;if(e===0){return new CA([]);}if(e<0){$panic(new $String("bytes: negative Repeat count"));}else if(!(((f=($imul(d.$length,e))/e,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero"))===d.$length))){$panic(new $String("bytes: Repeat count causes overflow"));}g=$makeSlice(CA,($imul(d.$length,e)));h=$copySlice(g,d);while(true){if(!(h<g.$length)){break;}$copySlice($subslice(g,h),$subslice(g,0,h));h=$imul(h,(2));}return g;};$pkg.Repeat=AE;AG=function(d){var{d,e,f,g,h,i,j,k,l,m,n,o,$s,$r,$c}=$restore(this,{d});$s=$s||0;s:while(true){switch($s){case 0:e=true;f=false;g=e;h=f;i=0;while(true){if(!(i<d.$length)){break;}j=((i<0||i>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+i]);if(j>=128){g=false;break;}h=h||(65<=j&&j<=90);i=i+(1)>>0;}if(g){if(!h){$s=-1;return $appendSlice((new CA($stringToBytes(""))),d);}k=$makeSlice(CA,d.$length);l=0;while(true){if(!(l<d.$length)){break;}m=((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l]);if(65<=m&&m<=90){m=m+(32)<<24>>>24;}((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]=m);l=l+(1)>>0;}$s=-1;return k;}n=AD(E.ToLower,d);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;$s=2;case 2:return o;}return;}var $f={$blk:AG,$c:true,$r,d,e,f,g,h,i,j,k,l,m,n,o,$s};return $f;};$pkg.ToLower=AG;AO=function(d,e){var{d,e,f,g,$s,$r,$c}=$restore(this,{d,e});$s=$s||0;s:while(true){switch($s){case 0:f=AV(d,e,false);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(g===-1){$s=-1;return CA.nil;}$s=-1;return $subslice(d,g);}return;}var $f={$blk:AO,$c:true,$r,d,e,f,g,$s};return $f;};$pkg.TrimLeftFunc=AO;AP=function(d,e){var{d,e,f,g,h,i,$s,$r,$c}=$restore(this,{d,e});$s=$s||0;s:while(true){switch($s){case 0:f=AW(d,e,false);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(g>=0&&((g<0||g>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+g])>=128){h=C.DecodeRune($subslice(d,g));i=h[1];g=g+(i)>>0;}else{g=g+(1)>>0;}$s=-1;return $subslice(d,0,g);}return;}var $f={$blk:AP,$c:true,$r,d,e,f,g,h,i,$s};return $f;};$pkg.TrimRightFunc=AP;AQ=function(d,e){var{d,e,f,g,h,$s,$r,$c}=$restore(this,{d,e});$s=$s||0;s:while(true){switch($s){case 0:f=AO(d,e);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=AP(f,e);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$s=3;case 3:return h;}return;}var $f={$blk:AQ,$c:true,$r,d,e,f,g,h,$s};return $f;};$pkg.TrimFunc=AQ;AR=function(d,e){var d,e;if(AB(d,e)){return $subslice(d,e.$length);}return d;};$pkg.TrimPrefix=AR;AS=function(d,e){var d,e;if(AC(d,e)){return $subslice(d,0,(d.$length-e.$length>>0));}return d;};$pkg.TrimSuffix=AS;AV=function(d,e,f){var{d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{d,e,f});$s=$s||0;s:while(true){switch($s){case 0:g=0;case 1:if(!(g<d.$length)){$s=2;continue;}h=1;i=((((g<0||g>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+g])>>0));if(i>=128){j=C.DecodeRune($subslice(d,g));i=j[0];h=j[1];}k=e(i);$s=5;case 5:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(k===f){$s=3;continue;}$s=4;continue;case 3:$s=-1;return g;case 4:g=g+(h)>>0;$s=1;continue;case 2:$s=-1;return-1;}return;}var $f={$blk:AV,$c:true,$r,d,e,f,g,h,i,j,k,$s};return $f;};AW=function(d,e,f){var{d,e,f,g,h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{d,e,f});$s=$s||0;s:while(true){switch($s){case 0:g=d.$length;case 1:if(!(g>0)){$s=2;continue;}h=(((i=g-1>>0,((i<0||i>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+i]))>>0));j=1;k=h;l=j;if(k>=128){m=C.DecodeLastRune($subslice(d,0,g));k=m[0];l=m[1];}g=g-(l)>>0;n=e(k);$s=5;case 5:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}if(n===f){$s=3;continue;}$s=4;continue;case 3:$s=-1;return g;case 4:$s=1;continue;case 2:$s=-1;return-1;}return;}var $f={$blk:AW,$c:true,$r,d,e,f,g,h,i,j,k,l,m,n,$s};return $f;};AY=function(d){var d,e,f,g,h,i,j,k,l,m,n,o,p;e=CG.zero();f=false;g=0;while(true){if(!(g<d.length)){break;}h=d.charCodeAt(g);if(h>=128){i=$clone(e,AX);j=false;AX.copy(e,i);f=j;return[e,f];}l=(k=h/32,(k===k&&k!==1/0&&k!==-1/0)?k>>>0:$throwRuntimeError("integer divide by zero"));((l<0||l>=e.length)?($throwRuntimeError("index out of range"),undefined):e[l]=((((l<0||l>=e.length)?($throwRuntimeError("index out of range"),undefined):e[l])|(((m=((n=h%32,n===n?n:$throwRuntimeError("integer divide by zero"))),m<32?(1<<m):0)>>>0)))>>>0));g=g+(1)>>0;}o=$clone(e,AX);p=true;AX.copy(e,o);f=p;return[e,f];};AX.prototype.contains=function(d){var d,e,f,g,h,i,j;e=this.$val;return!((((((f=e,g=(h=d/32,(h===h&&h!==1/0&&h!==-1/0)?h>>>0:$throwRuntimeError("integer divide by zero")),((g<0||g>=f.length)?($throwRuntimeError("index out of range"),undefined):f[g]))&(((i=((j=d%32,j===j?j:$throwRuntimeError("integer divide by zero"))),i<32?(1<<i):0)>>>0)))>>>0))===0));};$ptrType(AX).prototype.contains=function(d){return(new AX(this.$get())).contains(d);};AZ=function(d,e){var d,e,f,g,h,i;f=d;g=0;while(true){if(!(g<f.length)){break;}h=$decodeRune(f,g);i=h[0];if(i===e){return true;}g+=h[1];}return false;};BA=function(d,e){var d,e,f,g,h;if(d.$length===0){return CA.nil;}if(e===""){return d;}if((e.length===1)&&e.charCodeAt(0)<128){return BC(BG(d,e.charCodeAt(0)),e.charCodeAt(0));}f=AY(e);g=$clone(f[0],AX);h=f[1];if(h){return BD(BH(d,g),g);}return BE(BI(d,e),e);};$pkg.Trim=BA;BB=function(d,e){var d,e,f,g,h;if(d.$length===0){return CA.nil;}if(e===""){return d;}if((e.length===1)&&e.charCodeAt(0)<128){return BC(d,e.charCodeAt(0));}f=AY(e);g=$clone(f[0],AX);h=f[1];if(h){return BD(d,g);}return BE(d,e);};$pkg.TrimLeft=BB;BC=function(d,e){var d,e;while(true){if(!(d.$length>0&&((0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])===e))){break;}d=$subslice(d,1);}if(d.$length===0){return CA.nil;}return d;};BD=function(d,e){var d,e;while(true){if(!(d.$length>0)){break;}if(!new CD(e).contains((0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]))){break;}d=$subslice(d,1);}if(d.$length===0){return CA.nil;}return d;};BE=function(d,e){var d,e,f,g,h,i,j;while(true){if(!(d.$length>0)){break;}f=(((0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])>>0));g=1;h=f;i=g;if(h>=128){j=C.DecodeRune(d);h=j[0];i=j[1];}if(!AZ(e,h)){break;}d=$subslice(d,i);}if(d.$length===0){return CA.nil;}return d;};BF=function(d,e){var d,e,f,g,h;if((d.$length===0)||e===""){return d;}if((e.length===1)&&e.charCodeAt(0)<128){return BG(d,e.charCodeAt(0));}f=AY(e);g=$clone(f[0],AX);h=f[1];if(h){return BH(d,g);}return BI(d,e);};$pkg.TrimRight=BF;BG=function(d,e){var d,e,f;while(true){if(!(d.$length>0&&((f=d.$length-1>>0,((f<0||f>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+f]))===e))){break;}d=$subslice(d,0,(d.$length-1>>0));}return d;};BH=function(d,e){var d,e,f;while(true){if(!(d.$length>0)){break;}if(!new CD(e).contains((f=d.$length-1>>0,((f<0||f>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+f])))){break;}d=$subslice(d,0,(d.$length-1>>0));}return d;};BI=function(d,e){var d,e,f,g,h,i,j,k;while(true){if(!(d.$length>0)){break;}f=(((g=d.$length-1>>0,((g<0||g>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+g]))>>0));h=1;i=f;j=h;if(i>=128){k=C.DecodeLastRune(d);i=k[0];j=k[1];}if(!AZ(e,i)){break;}d=$subslice(d,0,(d.$length-j>>0));}return d;};BJ=function(d){var{d,e,f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{d});$s=$s||0;s:while(true){switch($s){case 0:e=0;case 1:if(!(e<d.$length)){$s=2;continue;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);if(f>=128){$s=3;continue;}$s=4;continue;case 3:g=AQ($subslice(d,e),E.IsSpace);$s=5;case 5:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$s=6;case 6:return h;case 4:if(((f<0||f>=X.length)?($throwRuntimeError("index out of range"),undefined):X[f])===0){$s=2;continue;}e=e+(1)>>0;$s=1;continue;case 2:i=d.$length;case 7:if(!(i>e)){$s=8;continue;}k=(j=i-1>>0,((j<0||j>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+j]));if(k>=128){$s=9;continue;}$s=10;continue;case 9:l=AQ($subslice(d,e,i),E.IsSpace);$s=11;case 11:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;$s=12;case 12:return m;case 10:if(((k<0||k>=X.length)?($throwRuntimeError("index out of range"),undefined):X[k])===0){$s=8;continue;}i=i-(1)>>0;$s=7;continue;case 8:if(e===i){$s=-1;return CA.nil;}$s=-1;return $subslice(d,e,i);}return;}var $f={$blk:BJ,$c:true,$r,d,e,f,g,h,i,j,k,l,m,$s};return $f;};$pkg.TrimSpace=BJ;BL=function(d,e,f,g){var d,e,f,g,h,i,j,k,l,m,n,o;h=0;if(!((g===0))){h=I(d,e);}if(h===0){return $appendSlice((CA.nil),d);}if(g<0||h<g){g=h;}i=$makeSlice(CA,(d.$length+($imul(g,((f.$length-e.$length>>0))))>>0));j=0;k=0;l=0;while(true){if(!(l<g)){break;}m=k;if(e.$length===0){if(l>0){n=C.DecodeRune($subslice(d,k));o=n[1];m=m+(o)>>0;}}else{m=m+(BO($subslice(d,k),e))>>0;}j=j+($copySlice($subslice(i,j),$subslice(d,k,m)))>>0;j=j+($copySlice($subslice(i,j),f))>>0;k=m+e.$length>>0;l=l+(1)>>0;}j=j+($copySlice($subslice(i,j),$subslice(d,k)))>>0;return $subslice(i,0,j);};$pkg.Replace=BL;BM=function(d,e,f){var d,e,f;return BL(d,e,f,-1);};$pkg.ReplaceAll=BM;BN=function(d,e){var d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;while(true){if(!(!((d.$length===0))&&!((e.$length===0)))){break;}f=0;g=0;h=f;i=g;if((0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])<128){j=(((0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])>>0));k=$subslice(d,1);h=j;d=k;}else{l=C.DecodeRune(d);m=l[0];n=l[1];o=m;p=$subslice(d,n);h=o;d=p;}if((0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0])<128){q=(((0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0])>>0));r=$subslice(e,1);i=q;e=r;}else{s=C.DecodeRune(e);t=s[0];u=s[1];v=t;w=$subslice(e,u);i=v;e=w;}if(i===h){continue;}if(i<h){x=h;y=i;i=x;h=y;}if(i<128){if(65<=h&&h<=90&&(i===((h+97>>0)-65>>0))){continue;}return false;}z=E.SimpleFold(h);while(true){if(!(!((z===h))&&z<i)){break;}z=E.SimpleFold(z);}if(z===i){continue;}return false;}return d.$length===e.$length;};$pkg.EqualFold=BN;BO=function(d,e){var d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;f=e.$length;if((f===0)){return 0;}else if((f===1)){return BX(d,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]));}else if((f===d.$length)){if(BY(e,d)){return 0;}return-1;}else if(f>d.$length){return-1;}else if(f<=D.MaxLen){if(d.$length<=0){return D.Index(d,e);}g=(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]);h=(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1]);i=0;j=(d.$length-f>>0)+1>>0;k=0;while(true){if(!(i<j)){break;}if(!((((i<0||i>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+i])===g))){l=BX($subslice(d,(i+1>>0),j),g);if(l<0){return-1;}i=i+((l+1>>0))>>0;}if(((m=i+1>>0,((m<0||m>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+m]))===h)&&BY($subslice(d,i,(i+f>>0)),e)){return i;}k=k+(1)>>0;i=i+(1)>>0;if(k>D.Cutover(i)){n=D.Index($subslice(d,i),e);if(n>=0){return n+i>>0;}return-1;}}return-1;}o=(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]);p=(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1]);q=0;r=0;s=(d.$length-f>>0)+1>>0;while(true){if(!(q<s)){break;}if(!((((q<0||q>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+q])===o))){t=BX($subslice(d,(q+1>>0),s),o);if(t<0){break;}q=q+((t+1>>0))>>0;}if(((u=q+1>>0,((u<0||u>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+u]))===p)&&BY($subslice(d,q,(q+f>>0)),e)){return q;}q=q+(1)>>0;r=r+(1)>>0;if(r>=(4+(q>>4>>0)>>0)&&q<s){v=D.IndexRabinKarpBytes($subslice(d,q),e);if(v<0){return-1;}return q+v>>0;}}return-1;};$pkg.Index=BO;BQ.ptr.prototype.Bytes=function(){var d;d=this;return $subslice(d.buf,d.off);};BQ.prototype.Bytes=function(){return this.$val.Bytes();};BQ.ptr.prototype.String=function(){var d;d=this;if(d===CI.nil){return"<nil>";}return($bytesToString($subslice(d.buf,d.off)));};BQ.prototype.String=function(){return this.$val.String();};BQ.ptr.prototype.empty=function(){var d;d=this;return d.buf.$length<=d.off;};BQ.prototype.empty=function(){return this.$val.empty();};BQ.ptr.prototype.Len=function(){var d;d=this;return d.buf.$length-d.off>>0;};BQ.prototype.Len=function(){return this.$val.Len();};BQ.ptr.prototype.Cap=function(){var d;d=this;return d.buf.$capacity;};BQ.prototype.Cap=function(){return this.$val.Cap();};BQ.ptr.prototype.Truncate=function(d){var d,e;e=this;if(d===0){e.Reset();return;}e.lastRead=0;if(d<0||d>e.Len()){$panic(new $String("bytes.Buffer: truncation out of range"));}e.buf=$subslice(e.buf,0,(e.off+d>>0));};BQ.prototype.Truncate=function(d){return this.$val.Truncate(d);};BQ.ptr.prototype.Reset=function(){var d;d=this;d.buf=$subslice(d.buf,0,0);d.off=0;d.lastRead=0;};BQ.prototype.Reset=function(){return this.$val.Reset();};BQ.ptr.prototype.tryGrowByReslice=function(d){var d,e,f;e=this;f=e.buf.$length;if(d<=(e.buf.$capacity-f>>0)){e.buf=$subslice(e.buf,0,(f+d>>0));return[f,true];}return[0,false];};BQ.prototype.tryGrowByReslice=function(d){return this.$val.tryGrowByReslice(d);};BQ.ptr.prototype.grow=function(d){var{d,e,f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{d});$s=$s||0;s:while(true){switch($s){case 0:e=this;f=e.Len();if((f===0)&&!((e.off===0))){e.Reset();}g=e.tryGrowByReslice(d);h=g[0];i=g[1];if(i){$s=-1;return h;}if(e.buf===CA.nil&&d<=64){e.buf=$makeSlice(CA,d,64);$s=-1;return 0;}j=e.buf.$capacity;if(d<=((k=j/2,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))-f>>0)){$s=1;continue;}if(j>((2147483647-j>>0)-d>>0)){$s=2;continue;}$s=3;continue;case 1:$copySlice(e.buf,$subslice(e.buf,e.off));$s=4;continue;case 2:$panic($pkg.ErrTooLarge);$s=4;continue;case 3:l=BT(($imul(2,j))+d>>0);$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;$copySlice(m,$subslice(e.buf,e.off));e.buf=m;case 4:e.off=0;e.buf=$subslice(e.buf,0,(f+d>>0));$s=-1;return f;}return;}var $f={$blk:BQ.ptr.prototype.grow,$c:true,$r,d,e,f,g,h,i,j,k,l,m,$s};return $f;};BQ.prototype.grow=function(d){return this.$val.grow(d);};BQ.ptr.prototype.Grow=function(d){var{d,e,f,g,$s,$r,$c}=$restore(this,{d});$s=$s||0;s:while(true){switch($s){case 0:e=this;if(d<0){$panic(new $String("bytes.Buffer.Grow: negative count"));}f=e.grow(d);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;e.buf=$subslice(e.buf,0,g);$s=-1;return;}return;}var $f={$blk:BQ.ptr.prototype.Grow,$c:true,$r,d,e,f,g,$s};return $f;};BQ.prototype.Grow=function(d){return this.$val.Grow(d);};BQ.ptr.prototype.Write=function(d){var{d,e,f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{d});$s=$s||0;s:while(true){switch($s){case 0:e=0;f=$ifaceNil;g=this;g.lastRead=0;h=g.tryGrowByReslice(d.$length);i=h[0];j=h[1];if(!j){$s=1;continue;}$s=2;continue;case 1:k=g.grow(d.$length);$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}i=k;case 2:l=$copySlice($subslice(g.buf,i),d);m=$ifaceNil;e=l;f=m;$s=-1;return[e,f];}return;}var $f={$blk:BQ.ptr.prototype.Write,$c:true,$r,d,e,f,g,h,i,j,k,l,m,$s};return $f;};BQ.prototype.Write=function(d){return this.$val.Write(d);};BQ.ptr.prototype.WriteString=function(d){var{d,e,f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{d});$s=$s||0;s:while(true){switch($s){case 0:e=0;f=$ifaceNil;g=this;g.lastRead=0;h=g.tryGrowByReslice(d.length);i=h[0];j=h[1];if(!j){$s=1;continue;}$s=2;continue;case 1:k=g.grow(d.length);$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}i=k;case 2:l=$copyString($subslice(g.buf,i),d);m=$ifaceNil;e=l;f=m;$s=-1;return[e,f];}return;}var $f={$blk:BQ.ptr.prototype.WriteString,$c:true,$r,d,e,f,g,h,i,j,k,l,m,$s};return $f;};BQ.prototype.WriteString=function(d){return this.$val.WriteString(d);};BQ.ptr.prototype.ReadFrom=function(d){var{d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s,$r,$c}=$restore(this,{d});$s=$s||0;s:while(true){switch($s){case 0:e=new $Int64(0,0);f=$ifaceNil;g=this;g.lastRead=0;case 1:h=g.grow(512);$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;g.buf=$subslice(g.buf,0,i);k=d.Read($subslice(g.buf,i,g.buf.$capacity));$s=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];if(l<0){$panic(BS);}g.buf=$subslice(g.buf,0,(i+l>>0));e=(n=(new $Int64(0,l)),new $Int64(e.$high+n.$high,e.$low+n.$low));if($interfaceIsEqual(m,B.EOF)){o=e;p=$ifaceNil;e=o;f=p;$s=-1;return[e,f];}if(!($interfaceIsEqual(m,$ifaceNil))){q=e;r=m;e=q;f=r;$s=-1;return[e,f];}$s=1;continue;case 2:$s=-1;return[e,f];}return;}var $f={$blk:BQ.ptr.prototype.ReadFrom,$c:true,$r,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s};return $f;};BQ.prototype.ReadFrom=function(d){return this.$val.ReadFrom(d);};BT=function(d){var{d,e,$s,$deferred,$r,$c}=$restore(this,{d});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);$deferred.push([(function(){if(!($interfaceIsEqual($recover(),$ifaceNil))){$panic($pkg.ErrTooLarge);}}),[]]);e=$makeSlice(CA,d);$s=1;case 1:return e;}return;}}catch(err){$err=err;$s=-1;return CA.nil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:BT,$c:true,$r,d,e,$s,$deferred};return $f;}}};BQ.ptr.prototype.WriteTo=function(d){var{d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s,$r,$c}=$restore(this,{d});$s=$s||0;s:while(true){switch($s){case 0:e=new $Int64(0,0);f=$ifaceNil;g=this;g.lastRead=0;h=g.Len();if(h>0){$s=1;continue;}$s=2;continue;case 1:j=d.Write($subslice(g.buf,g.off));$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if(k>h){$panic(new $String("bytes.Buffer.WriteTo: invalid Write count"));}g.off=g.off+(k)>>0;e=(new $Int64(0,k));if(!($interfaceIsEqual(l,$ifaceNil))){m=e;n=l;e=m;f=n;$s=-1;return[e,f];}if(!((k===h))){o=e;p=B.ErrShortWrite;e=o;f=p;$s=-1;return[e,f];}case 2:g.Reset();q=e;r=$ifaceNil;e=q;f=r;$s=-1;return[e,f];}return;}var $f={$blk:BQ.ptr.prototype.WriteTo,$c:true,$r,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s};return $f;};BQ.prototype.WriteTo=function(d){return this.$val.WriteTo(d);};BQ.ptr.prototype.WriteByte=function(d){var{d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{d});$s=$s||0;s:while(true){switch($s){case 0:e=this;e.lastRead=0;f=e.tryGrowByReslice(1);g=f[0];h=f[1];if(!h){$s=1;continue;}$s=2;continue;case 1:i=e.grow(1);$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}g=i;case 2:(j=e.buf,((g<0||g>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+g]=d));$s=-1;return $ifaceNil;}return;}var $f={$blk:BQ.ptr.prototype.WriteByte,$c:true,$r,d,e,f,g,h,i,j,$s};return $f;};BQ.prototype.WriteByte=function(d){return this.$val.WriteByte(d);};BQ.ptr.prototype.WriteRune=function(d){var{d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r,$c}=$restore(this,{d});$s=$s||0;s:while(true){switch($s){case 0:e=0;f=$ifaceNil;g=this;if(((d>>>0))<128){$s=1;continue;}$s=2;continue;case 1:h=g.WriteByte(((d<<24>>>24)));$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;i=1;j=$ifaceNil;e=i;f=j;$s=-1;return[e,f];case 2:g.lastRead=0;k=g.tryGrowByReslice(4);l=k[0];m=k[1];if(!m){$s=4;continue;}$s=5;continue;case 4:n=g.grow(4);$s=6;case 6:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}l=n;case 5:e=C.EncodeRune($subslice(g.buf,l,(l+4>>0)),d);g.buf=$subslice(g.buf,0,(l+e>>0));o=e;p=$ifaceNil;e=o;f=p;$s=-1;return[e,f];}return;}var $f={$blk:BQ.ptr.prototype.WriteRune,$c:true,$r,d,e,f,g,h,i,j,k,l,m,n,o,p,$s};return $f;};BQ.prototype.WriteRune=function(d){return this.$val.WriteRune(d);};BQ.ptr.prototype.Read=function(d){var d,e,f,g,h,i,j,k,l,m;e=0;f=$ifaceNil;g=this;g.lastRead=0;if(g.empty()){g.Reset();if(d.$length===0){h=0;i=$ifaceNil;e=h;f=i;return[e,f];}j=0;k=B.EOF;e=j;f=k;return[e,f];}e=$copySlice(d,$subslice(g.buf,g.off));g.off=g.off+(e)>>0;if(e>0){g.lastRead=-1;}l=e;m=$ifaceNil;e=l;f=m;return[e,f];};BQ.prototype.Read=function(d){return this.$val.Read(d);};BQ.ptr.prototype.Next=function(d){var d,e,f,g;e=this;e.lastRead=0;f=e.Len();if(d>f){d=f;}g=$subslice(e.buf,e.off,(e.off+d>>0));e.off=e.off+(d)>>0;if(d>0){e.lastRead=-1;}return g;};BQ.prototype.Next=function(d){return this.$val.Next(d);};BQ.ptr.prototype.ReadByte=function(){var d,e,f,g;d=this;if(d.empty()){d.Reset();return[0,B.EOF];}g=(e=d.buf,f=d.off,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));d.off=d.off+(1)>>0;d.lastRead=-1;return[g,$ifaceNil];};BQ.prototype.ReadByte=function(){return this.$val.ReadByte();};BQ.ptr.prototype.ReadRune=function(){var d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;d=0;e=0;f=$ifaceNil;g=this;if(g.empty()){g.Reset();h=0;i=0;j=B.EOF;d=h;e=i;f=j;return[d,e,f];}m=(k=g.buf,l=g.off,((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]));if(m<128){g.off=g.off+(1)>>0;g.lastRead=1;n=((m>>0));o=1;p=$ifaceNil;d=n;e=o;f=p;return[d,e,f];}q=C.DecodeRune($subslice(g.buf,g.off));d=q[0];r=q[1];g.off=g.off+(r)>>0;g.lastRead=((r<<24>>24));s=d;t=r;u=$ifaceNil;d=s;e=t;f=u;return[d,e,f];};BQ.prototype.ReadRune=function(){return this.$val.ReadRune();};BQ.ptr.prototype.UnreadRune=function(){var d;d=this;if(d.lastRead<=0){return A.New("bytes.Buffer: UnreadRune: previous operation was not a successful ReadRune");}if(d.off>=((d.lastRead>>0))){d.off=d.off-(((d.lastRead>>0)))>>0;}d.lastRead=0;return $ifaceNil;};BQ.prototype.UnreadRune=function(){return this.$val.UnreadRune();};BQ.ptr.prototype.UnreadByte=function(){var d;d=this;if(d.lastRead===0){return BU;}d.lastRead=0;if(d.off>0){d.off=d.off-(1)>>0;}return $ifaceNil;};BQ.prototype.UnreadByte=function(){return this.$val.UnreadByte();};BQ.ptr.prototype.ReadBytes=function(d){var d,e,f,g,h,i,j,k;e=CA.nil;f=$ifaceNil;g=this;h=g.readSlice(d);i=h[0];f=h[1];e=$appendSlice(e,i);j=e;k=f;e=j;f=k;return[e,f];};BQ.prototype.ReadBytes=function(d){return this.$val.ReadBytes(d);};BQ.ptr.prototype.readSlice=function(d){var d,e,f,g,h,i,j,k;e=CA.nil;f=$ifaceNil;g=this;h=BX($subslice(g.buf,g.off),d);i=(g.off+h>>0)+1>>0;if(h<0){i=g.buf.$length;f=B.EOF;}e=$subslice(g.buf,g.off,i);g.off=i;g.lastRead=-1;j=e;k=f;e=j;f=k;return[e,f];};BQ.prototype.readSlice=function(d){return this.$val.readSlice(d);};BQ.ptr.prototype.ReadString=function(d){var d,e,f,g,h,i,j,k;e="";f=$ifaceNil;g=this;h=g.readSlice(d);i=h[0];f=h[1];j=($bytesToString(i));k=f;e=j;f=k;return[e,f];};BQ.prototype.ReadString=function(d){return this.$val.ReadString(d);};BW=function(d){var d;return new BQ.ptr((new CA($stringToBytes(d))),0,0);};$pkg.NewBufferString=BW;BX=function(d,e){var d,e,f,g,h,i;f=d;g=0;while(true){if(!(g<f.$length)){break;}h=g;i=((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]);if(i===e){return h;}g++;}return-1;};$pkg.IndexByte=BX;BY=function(d,e){var d,e,f,g,h,i;if(!((d.$length===e.$length))){return false;}f=d;g=0;while(true){if(!(g<f.$length)){break;}h=g;i=((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]);if(!((i===((h<0||h>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+h])))){return false;}g++;}return true;};$pkg.Equal=BY;CJ.methods=[{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([CA],[$Int,$error],false)},{prop:"ReadAt",name:"ReadAt",pkg:"",typ:$funcType([CA,$Int64],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"Seek",name:"Seek",pkg:"",typ:$funcType([$Int64,$Int],[$Int64,$error],false)},{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([B.Writer],[$Int64,$error],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([CA],[],false)}];CD.methods=[{prop:"contains",name:"contains",pkg:"bytes",typ:$funcType([$Uint8],[$Bool],false)}];CI.methods=[{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[CA],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"empty",name:"empty",pkg:"bytes",typ:$funcType([],[$Bool],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Cap",name:"Cap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"tryGrowByReslice",name:"tryGrowByReslice",pkg:"bytes",typ:$funcType([$Int],[$Int,$Bool],false)},{prop:"grow",name:"grow",pkg:"bytes",typ:$funcType([$Int],[$Int],false)},{prop:"Grow",name:"Grow",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([CA],[$Int,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"ReadFrom",name:"ReadFrom",pkg:"",typ:$funcType([B.Reader],[$Int64,$error],false)},{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([B.Writer],[$Int64,$error],false)},{prop:"WriteByte",name:"WriteByte",pkg:"",typ:$funcType([$Uint8],[$error],false)},{prop:"WriteRune",name:"WriteRune",pkg:"",typ:$funcType([$Int32],[$Int,$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([CA],[$Int,$error],false)},{prop:"Next",name:"Next",pkg:"",typ:$funcType([$Int],[CA],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)},{prop:"ReadBytes",name:"ReadBytes",pkg:"",typ:$funcType([$Uint8],[CA,$error],false)},{prop:"readSlice",name:"readSlice",pkg:"bytes",typ:$funcType([$Uint8],[CA,$error],false)},{prop:"ReadString",name:"ReadString",pkg:"",typ:$funcType([$Uint8],[$String,$error],false)}];F.init("bytes",[{prop:"s",name:"s",embedded:false,exported:false,typ:CA,tag:""},{prop:"i",name:"i",embedded:false,exported:false,typ:$Int64,tag:""},{prop:"prevRune",name:"prevRune",embedded:false,exported:false,typ:$Int,tag:""}]);AX.init($Uint32,8);BQ.init("bytes",[{prop:"buf",name:"buf",embedded:false,exported:false,typ:CA,tag:""},{prop:"off",name:"off",embedded:false,exported:false,typ:$Int,tag:""},{prop:"lastRead",name:"lastRead",embedded:false,exported:false,typ:BR,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}X=$toNativeArray($kindUint8,[0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);$pkg.ErrTooLarge=A.New("bytes.Buffer: too large");BS=A.New("bytes.Buffer: reader returned negative count from Read");BU=A.New("bytes.Buffer: UnreadByte: previous operation was not a successful read");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["internal/abi"]=(function(){var $pkg={},$init,A,D;A=$packages["internal/goarch"];D=function(){$throwRuntimeError("native function not implemented: internal/abi.FuncPCABI0");};$pkg.FuncPCABI0=D;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["internal/goexperiment"]=(function(){var $pkg={},$init;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["internal/itoa"]=(function(){var $pkg={},$init,C,D,A,B;C=$arrayType($Uint8,20);D=$sliceType($Uint8);A=function(a){var a;if(a<0){return"-"+B(((-a>>>0)));}return B(((a>>>0)));};$pkg.Itoa=A;B=function(a){var a,b,c,d,e;if(a===0){return"0";}b=C.zero();c=19;while(true){if(!(a>=10)){break;}e=(d=a/10,(d===d&&d!==1/0&&d!==-1/0)?d>>>0:$throwRuntimeError("integer divide by zero"));((c<0||c>=b.length)?($throwRuntimeError("index out of range"),undefined):b[c]=((((48+a>>>0)-(e*10>>>0)>>>0)<<24>>>24)));c=c-(1)>>0;a=e;}((c<0||c>=b.length)?($throwRuntimeError("index out of range"),undefined):b[c]=(((48+a>>>0)<<24>>>24)));return($bytesToString($subslice(new D(b),c)));};$pkg.Uitoa=B;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["math/bits"]=(function(){var $pkg={},$init,F,G,E,H,K,L,AI,AJ,AL,AQ;E=function(e){var e;return 64-AJ(e)>>0;};$pkg.LeadingZeros64=E;H=function(e){var e;if(true){return K(((e>>>0)));}return L((new $Uint64(0,e)));};$pkg.TrailingZeros=H;K=function(e){var e,f;if(e===0){return 32;}return(((f=($imul((((e&(-e>>>0))>>>0)),125613361)>>>0)>>>27>>>0,((f<0||f>=F.length)?($throwRuntimeError("index out of range"),undefined):F[f]))>>0));};$pkg.TrailingZeros32=K;L=function(e){var e,f,g;if((e.$high===0&&e.$low===0)){return 64;}return(((f=$shiftRightUint64($mul64(((g=new $Uint64(-e.$high,-e.$low),new $Uint64(e.$high&g.$high,(e.$low&g.$low)>>>0))),new $Uint64(66559345,3033172745)),58),(($flatten64(f)<0||$flatten64(f)>=G.length)?($throwRuntimeError("index out of range"),undefined):G[$flatten64(f)]))>>0));};$pkg.TrailingZeros64=L;AI=function(e){var e,f,g,h;f=0;if(e>=65536){e=(g=(16),g<32?(e>>>g):0)>>>0;f=16;}if(e>=256){e=(h=(8),h<32?(e>>>h):0)>>>0;f=f+(8)>>0;}f=f+(("\x00\x01\x02\x02\x03\x03\x03\x03\x04\x04\x04\x04\x04\x04\x04\x04\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b".charCodeAt(e)>>0))>>0;return f;};$pkg.Len32=AI;AJ=function(e){var e,f;f=0;if((e.$high>1||(e.$high===1&&e.$low>=0))){e=$shiftRightUint64(e,(32));f=32;}if((e.$high>0||(e.$high===0&&e.$low>=65536))){e=$shiftRightUint64(e,(16));f=f+(16)>>0;}if((e.$high>0||(e.$high===0&&e.$low>=256))){e=$shiftRightUint64(e,(8));f=f+(8)>>0;}f=f+(("\x00\x01\x02\x02\x03\x03\x03\x03\x04\x04\x04\x04\x04\x04\x04\x04\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b".charCodeAt($flatten64(e))>>0))>>0;return f;};$pkg.Len64=AJ;AL=function(e,f,g){var e,f,g,h,i,j,k,l,m;h=new $Uint64(0,0);i=new $Uint64(0,0);h=(j=new $Uint64(e.$high+f.$high,e.$low+f.$low),new $Uint64(j.$high+g.$high,j.$low+g.$low));i=$shiftRightUint64(((k=new $Uint64(e.$high&f.$high,(e.$low&f.$low)>>>0),l=(m=new $Uint64(e.$high|f.$high,(e.$low|f.$low)>>>0),new $Uint64(m.$high&~h.$high,(m.$low&~h.$low)>>>0)),new $Uint64(k.$high|l.$high,(k.$low|l.$low)>>>0))),63);return[h,i];};$pkg.Add64=AL;AQ=function(e,f){var e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;g=new $Uint64(0,0);h=new $Uint64(0,0);i=new $Uint64(e.$high&0,(e.$low&4294967295)>>>0);j=$shiftRightUint64(e,32);k=new $Uint64(f.$high&0,(f.$low&4294967295)>>>0);l=$shiftRightUint64(f,32);m=$mul64(i,k);p=(n=$mul64(j,k),o=$shiftRightUint64(m,32),new $Uint64(n.$high+o.$high,n.$low+o.$low));q=new $Uint64(p.$high&0,(p.$low&4294967295)>>>0);r=$shiftRightUint64(p,32);q=(s=$mul64(i,l),new $Uint64(q.$high+s.$high,q.$low+s.$low));g=(t=(u=$mul64(j,l),new $Uint64(u.$high+r.$high,u.$low+r.$low)),v=$shiftRightUint64(q,32),new $Uint64(t.$high+v.$high,t.$low+v.$low));h=$mul64(e,f);return[g,h];};$pkg.Mul64=AQ;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:F=$toNativeArray($kindUint8,[0,1,28,2,29,14,24,3,30,22,20,15,25,17,4,8,31,27,13,23,21,19,16,7,26,12,18,6,11,5,10,9]);G=$toNativeArray($kindUint8,[0,1,56,2,57,49,28,3,61,58,42,50,38,29,17,4,62,47,59,36,45,43,51,22,53,39,33,30,24,18,12,5,63,55,48,27,60,41,37,16,46,35,44,21,52,32,23,11,54,26,40,15,34,20,31,10,25,14,19,9,13,8,7,6]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["math"]=(function(){var $pkg={},$init,B,A,IT,IU,IV,IW,FL,FM,FN,FO,FP,HH,FK,GE,GK,GL,GM,GO,GW,HI,HJ,HK,HL,HM;B=$packages["github.com/gopherjs/gopherjs/js"];A=$packages["math/bits"];IT=$arrayType($Uint32,2);IU=$arrayType($Float32,2);IV=$arrayType($Float64,1);IW=$structType("math",[{prop:"uint32array",name:"uint32array",embedded:false,exported:false,typ:IT,tag:""},{prop:"float32array",name:"float32array",embedded:false,exported:false,typ:IU,tag:""},{prop:"float64array",name:"float64array",embedded:false,exported:false,typ:IV,tag:""}]);FK=function(av){var av,aw;return HM((aw=HL(av),new $Uint64(aw.$high&~2147483648,(aw.$low&~0)>>>0)));};$pkg.Abs=FK;GE=function(av){var av;return $parseFloat(FL.exp(av));};$pkg.Exp=GE;GK=function(av){var av;if(av>=0){return FN;}else{return FO;}};$pkg.Inf=GK;GL=function(av,aw){var av,aw;if(av===FN){return aw>=0;}if(av===FO){return aw<=0;}return false;};$pkg.IsInf=GL;GM=function(av){var av,aw;aw=false;aw=!((av===av));return aw;};$pkg.IsNaN=GM;GO=function(av){var av;if(!((av===av))){return FP;}return $parseFloat(FL.log(av));};$pkg.Log=GO;GW=function(){return FP;};$pkg.NaN=GW;HI=function(){var av;av=new($global.ArrayBuffer)(8);HH.uint32array=new($global.Uint32Array)(av);HH.float32array=new($global.Float32Array)(av);HH.float64array=new($global.Float64Array)(av);};HJ=function(av){var av;HH.float32array[0]=av;return HH.uint32array[0];};$pkg.Float32bits=HJ;HK=function(av){var av;HH.uint32array[0]=av;return HH.float32array[0];};$pkg.Float32frombits=HK;HL=function(av){var av,aw,ax;HH.float64array[0]=av;return(aw=$shiftLeft64((new $Uint64(0,HH.uint32array[1])),32),ax=(new $Uint64(0,HH.uint32array[0])),new $Uint64(aw.$high+ax.$high,aw.$low+ax.$low));};$pkg.Float64bits=HL;HM=function(av){var av;HH.uint32array[0]=((av.$low>>>0));HH.uint32array[1]=(($shiftRightUint64(av,32).$low>>>0));return HH.float64array[0];};$pkg.Float64frombits=HM;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=B.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}HH=new IW.ptr(IT.zero(),IU.zero(),IV.zero());FL=$global.Math;FM=0;FN=1/FM;FO=-1/FM;FP=$parseFloat($NaN);HI();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["strconv"]=(function(){var $pkg={},$init,E,F,D,C,B,A,BJ,BS,CC,CG,CO,DT,DU,DV,DW,DX,DY,DZ,EA,EB,EC,ED,EE,EF,EG,EH,EI,AQ,AR,AS,AT,AU,AX,BK,DR,BL,DS,CB,CH,CW,DA,DB,DC,G,H,J,K,L,M,N,P,T,V,Y,Z,AA,AC,AD,AE,AF,AG,AI,AJ,AK,AL,AM,AN,AO,AP,AV,AW,AY,AZ,BA,BB,BC,BD,BE,BF,BG,BH,BI,BM,BN,BO,BP,BQ,BR,BT,BU,BV,BW,BX,BY,BZ,CA,CD,CE,CF,CI,CJ,CK,CM,CN,CP,CQ,CR,CS,CT,CU,CV,CX,CY,CZ,DD,DE,DF,DG,DH,DI,DJ,DN,DP,DQ;E=$packages["errors"];F=$packages["github.com/gopherjs/gopherjs/js"];D=$packages["internal/bytealg"];C=$packages["math"];B=$packages["math/bits"];A=$packages["unicode/utf8"];BJ=$pkg.floatInfo=$newType(0,$kindStruct,"strconv.floatInfo",true,"strconv",false,function(mantbits_,expbits_,bias_){this.$val=this;if(arguments.length===0){this.mantbits=0;this.expbits=0;this.bias=0;return;}this.mantbits=mantbits_;this.expbits=expbits_;this.bias=bias_;});BS=$pkg.decimalSlice=$newType(0,$kindStruct,"strconv.decimalSlice",true,"strconv",false,function(d_,nd_,dp_,neg_){this.$val=this;if(arguments.length===0){this.d=EA.nil;this.nd=0;this.dp=0;this.neg=false;return;}this.d=d_;this.nd=nd_;this.dp=dp_;this.neg=neg_;});CC=$pkg.decimal=$newType(0,$kindStruct,"strconv.decimal",true,"strconv",false,function(d_,nd_,dp_,neg_,trunc_){this.$val=this;if(arguments.length===0){this.d=EG.zero();this.nd=0;this.dp=0;this.neg=false;this.trunc=false;return;}this.d=d_;this.nd=nd_;this.dp=dp_;this.neg=neg_;this.trunc=trunc_;});CG=$pkg.leftCheat=$newType(0,$kindStruct,"strconv.leftCheat",true,"strconv",false,function(delta_,cutoff_){this.$val=this;if(arguments.length===0){this.delta=0;this.cutoff="";return;}this.delta=delta_;this.cutoff=cutoff_;});CO=$pkg.NumError=$newType(0,$kindStruct,"strconv.NumError",true,"strconv",true,function(Func_,Num_,Err_){this.$val=this;if(arguments.length===0){this.Func="";this.Num="";this.Err=$ifaceNil;return;}this.Func=Func_;this.Num=Num_;this.Err=Err_;});DT=$sliceType($Uint16);DU=$sliceType($Uint32);DV=$arrayType($Uint64,2);DW=$sliceType(CG);DX=$sliceType($Int);DY=$sliceType($Float64);DZ=$sliceType($Float32);EA=$sliceType($Uint8);EB=$arrayType($Uint8,4);EC=$arrayType($Uint8,65);ED=$ptrType(BJ);EE=$arrayType($Uint8,32);EF=$arrayType($Uint8,24);EG=$arrayType($Uint8,800);EH=$ptrType(CO);EI=$ptrType(CC);G=function(c,d){var c,d;return!((CM(c,d)===-1));};H=function(c,d,e,f){var c,d,e,f,g;return($bytesToString(J($makeSlice(EA,0,(g=($imul(3,c.length))/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"))),c,d,e,f)));};J=function(c,d,e,f,g){var c,d,e,f,g,h,i,j,k;if((c.$capacity-c.$length>>0)<d.length){h=$makeSlice(EA,c.$length,(((c.$length+1>>0)+d.length>>0)+1>>0));$copySlice(h,c);c=h;}c=$append(c,e);i=0;while(true){if(!(d.length>0)){break;}j=((d.charCodeAt(0)>>0));i=1;if(j>=128){k=A.DecodeRuneInString(d);j=k[0];i=k[1];}if((i===1)&&(j===65533)){c=$appendSlice(c,"\\x");c=$append(c,"0123456789abcdef".charCodeAt((d.charCodeAt(0)>>>4<<24>>>24)));c=$append(c,"0123456789abcdef".charCodeAt(((d.charCodeAt(0)&15)>>>0)));d=$substring(d,i);continue;}c=L(c,j,e,f,g);d=$substring(d,i);}c=$append(c,e);return c;};K=function(c,d,e,f,g){var c,d,e,f,g;c=$append(c,e);if(!A.ValidRune(d)){d=65533;}c=L(c,d,e,f,g);c=$append(c,e);return c;};L=function(c,d,e,f,g){var c,d,e,f,g,h,i,j,k,l;h=EB.zero();if((d===((e>>0)))||(d===92)){c=$append(c,92);c=$append(c,((d<<24>>>24)));return c;}if(f){if(d<128&&AG(d)){c=$append(c,((d<<24>>>24)));return c;}}else if(AG(d)||g&&AI(d)){i=A.EncodeRune(new EA(h),d);c=$appendSlice(c,$subslice(new EA(h),0,i));return c;}j=d;if(j===(7)){c=$appendSlice(c,"\\a");}else if(j===(8)){c=$appendSlice(c,"\\b");}else if(j===(12)){c=$appendSlice(c,"\\f");}else if(j===(10)){c=$appendSlice(c,"\\n");}else if(j===(13)){c=$appendSlice(c,"\\r");}else if(j===(9)){c=$appendSlice(c,"\\t");}else if(j===(11)){c=$appendSlice(c,"\\v");}else{if(d<32){c=$appendSlice(c,"\\x");c=$append(c,"0123456789abcdef".charCodeAt((((d<<24>>>24))>>>4<<24>>>24)));c=$append(c,"0123456789abcdef".charCodeAt(((((d<<24>>>24))&15)>>>0)));}else if(!A.ValidRune(d)){d=65533;c=$appendSlice(c,"\\u");k=12;while(true){if(!(k>=0)){break;}c=$append(c,"0123456789abcdef".charCodeAt((((d>>$min(((k>>>0)),31))>>0)&15)));k=k-(4)>>0;}}else if(d<65536){c=$appendSlice(c,"\\u");k=12;while(true){if(!(k>=0)){break;}c=$append(c,"0123456789abcdef".charCodeAt((((d>>$min(((k>>>0)),31))>>0)&15)));k=k-(4)>>0;}}else{c=$appendSlice(c,"\\U");l=28;while(true){if(!(l>=0)){break;}c=$append(c,"0123456789abcdef".charCodeAt((((d>>$min(((l>>>0)),31))>>0)&15)));l=l-(4)>>0;}}}return c;};M=function(c){var c;return H(c,34,false,false);};$pkg.Quote=M;N=function(c,d){var c,d;return J(c,d,34,false,false);};$pkg.AppendQuote=N;P=function(c,d){var c,d;return J(c,d,34,true,false);};$pkg.AppendQuoteToASCII=P;T=function(c,d){var c,d;return K(c,d,39,false,false);};$pkg.AppendQuoteRune=T;V=function(c,d){var c,d;return K(c,d,39,true,false);};$pkg.AppendQuoteRuneToASCII=V;Y=function(c){var c,d,e,f;while(true){if(!(c.length>0)){break;}d=A.DecodeRuneInString(c);e=d[0];f=d[1];c=$substring(c,f);if(f>1){if(e===65279){return false;}continue;}if(e===65533){return false;}if((e<32&&!((e===9)))||(e===96)||(e===127)){return false;}}return true;};$pkg.CanBackquote=Y;Z=function(c){var c,d,e,f,g,h,i,j,k,l;d=0;e=false;f=((c>>0));if(48<=f&&f<=57){g=f-48>>0;h=true;d=g;e=h;return[d,e];}else if(97<=f&&f<=102){i=(f-97>>0)+10>>0;j=true;d=i;e=j;return[d,e];}else if(65<=f&&f<=70){k=(f-65>>0)+10>>0;l=true;d=k;e=l;return[d,e];}return[d,e];};AA=function(c,d){var aa,ab,ac,ad,ae,af,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;e=0;f=false;g="";h=$ifaceNil;if(c.length===0){h=$pkg.ErrSyntax;return[e,f,g,h];}i=c.charCodeAt(0);if((i===d)&&((d===39)||(d===34))){h=$pkg.ErrSyntax;return[e,f,g,h];}else if(i>=128){j=A.DecodeRuneInString(c);k=j[0];l=j[1];m=k;n=true;o=$substring(c,l);p=$ifaceNil;e=m;f=n;g=o;h=p;return[e,f,g,h];}else if(!((i===92))){q=((c.charCodeAt(0)>>0));r=false;s=$substring(c,1);t=$ifaceNil;e=q;f=r;g=s;h=t;return[e,f,g,h];}if(c.length<=1){h=$pkg.ErrSyntax;return[e,f,g,h];}u=c.charCodeAt(1);c=$substring(c,2);switch(0){default:v=u;if(v===(97)){e=7;}else if(v===(98)){e=8;}else if(v===(102)){e=12;}else if(v===(110)){e=10;}else if(v===(114)){e=13;}else if(v===(116)){e=9;}else if(v===(118)){e=11;}else if((v===(120))||(v===(117))||(v===(85))){w=0;x=u;if(x===(120)){w=2;}else if(x===(117)){w=4;}else if(x===(85)){w=8;}y=0;if(c.length<w){h=$pkg.ErrSyntax;return[e,f,g,h];}z=0;while(true){if(!(z<w)){break;}aa=Z(c.charCodeAt(z));ab=aa[0];ac=aa[1];if(!ac){h=$pkg.ErrSyntax;return[e,f,g,h];}y=(y<<4>>0)|ab;z=z+(1)>>0;}c=$substring(c,w);if(u===120){e=y;break;}if(!A.ValidRune(y)){h=$pkg.ErrSyntax;return[e,f,g,h];}e=y;f=true;}else if((v===(48))||(v===(49))||(v===(50))||(v===(51))||(v===(52))||(v===(53))||(v===(54))||(v===(55))){ad=((u>>0))-48>>0;if(c.length<2){h=$pkg.ErrSyntax;return[e,f,g,h];}ae=0;while(true){if(!(ae<2)){break;}af=((c.charCodeAt(ae)>>0))-48>>0;if(af<0||af>7){h=$pkg.ErrSyntax;return[e,f,g,h];}ad=((ad<<3>>0))|af;ae=ae+(1)>>0;}c=$substring(c,2);if(ad>255){h=$pkg.ErrSyntax;return[e,f,g,h];}e=ad;}else if(v===(92)){e=92;}else if((v===(39))||(v===(34))){if(!((u===d))){h=$pkg.ErrSyntax;return[e,f,g,h];}e=((u>>0));}else{h=$pkg.ErrSyntax;return[e,f,g,h];}}g=c;return[e,f,g,h];};$pkg.UnquoteChar=AA;AC=function(c){var c,d,e,f,g;d=AD(c,true);e=d[0];f=d[1];g=d[2];if(f.length>0){return["",$pkg.ErrSyntax];}return[e,g];};$pkg.Unquote=AC;AD=function(c,d){var aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;e="";f="";g=$ifaceNil;if(c.length<2){h="";i=c;j=$pkg.ErrSyntax;e=h;f=i;g=j;return[e,f,g];}k=c.charCodeAt(0);l=CM($substring(c,1),k);if(l<0){m="";n=c;o=$pkg.ErrSyntax;e=m;f=n;g=o;return[e,f,g];}l=l+(2)>>0;p=k;if(p===(96)){if(!d){e=$substring(c,0,l);}else if(!G($substring(c,0,l),13)){e=$substring(c,1,(l-1>>0));}else{q=$makeSlice(EA,0,(((l-1>>0)-1>>0)-1>>0));r=1;while(true){if(!(r<(l-1>>0))){break;}if(!((c.charCodeAt(r)===13))){q=$append(q,c.charCodeAt(r));}r=r+(1)>>0;}e=($bytesToString(q));}s=e;t=$substring(c,l);u=$ifaceNil;e=s;f=t;g=u;return[e,f,g];}else if((p===(34))||(p===(39))){if(!G($substring(c,0,l),92)&&!G($substring(c,0,l),10)){v=false;w=k;if(w===(34)){v=A.ValidString($substring(c,1,(l-1>>0)));}else if(w===(39)){x=A.DecodeRuneInString($substring(c,1,(l-1>>0)));y=x[0];z=x[1];v=(((1+z>>0)+1>>0)===l)&&(!((y===65533))||!((z===1)));}if(v){e=$substring(c,0,l);if(d){e=$substring(e,1,(l-1>>0));}aa=e;ab=$substring(c,l);ac=$ifaceNil;e=aa;f=ab;g=ac;return[e,f,g];}}ad=EA.nil;ae=c;c=$substring(c,1);if(d){ad=$makeSlice(EA,0,(af=($imul(3,l))/2,(af===af&&af!==1/0&&af!==-1/0)?af>>0:$throwRuntimeError("integer divide by zero")));}while(true){if(!(c.length>0&&!((c.charCodeAt(0)===k)))){break;}ag=AA(c,k);ah=ag[0];ai=ag[1];aj=ag[2];ak=ag[3];if((c.charCodeAt(0)===10)||!($interfaceIsEqual(ak,$ifaceNil))){al="";am=ae;an=$pkg.ErrSyntax;e=al;f=am;g=an;return[e,f,g];}c=aj;if(d){if(ah<128||!ai){ad=$append(ad,((ah<<24>>>24)));}else{ao=EB.zero();ap=A.EncodeRune(new EA(ao),ah);ad=$appendSlice(ad,$subslice(new EA(ao),0,ap));}}if(k===39){break;}}if(!(c.length>0&&(c.charCodeAt(0)===k))){aq="";ar=ae;as=$pkg.ErrSyntax;e=aq;f=ar;g=as;return[e,f,g];}c=$substring(c,1);if(d){at=($bytesToString(ad));au=c;av=$ifaceNil;e=at;f=au;g=av;return[e,f,g];}aw=$substring(ae,0,(ae.length-c.length>>0));ax=c;ay=$ifaceNil;e=aw;f=ax;g=ay;return[e,f,g];}else{az="";ba=c;bb=$pkg.ErrSyntax;e=az;f=ba;g=bb;return[e,f,g];}};AE=function(c,d){var c,d,e,f,g,h,i;e=0;f=c.$length;g=e;h=f;while(true){if(!(g<h)){break;}i=g+(((h-g>>0))>>1>>0)>>0;if(((i<0||i>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+i])<d){g=i+1>>0;}else{h=i;}}return g;};AF=function(c,d){var c,d,e,f,g,h,i;e=0;f=c.$length;g=e;h=f;while(true){if(!(g<h)){break;}i=g+(((h-g>>0))>>1>>0)>>0;if(((i<0||i>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+i])<d){g=i+1>>0;}else{h=i;}}return g;};AG=function(c){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;if(c<=255){if(32<=c&&c<=126){return true;}if(161<=c&&c<=255){return!((c===173));}return false;}if(0<=c&&c<65536){d=((c<<16>>>16));e=AQ;f=AR;g=d;h=e;i=f;j=AE(h,g);if(j>=h.$length||g<(k=(j&~1)>>0,((k<0||k>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+k]))||(l=j|1,((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]))<g){return false;}m=AE(i,g);return m>=i.$length||!((((m<0||m>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+m])===g));}n=((c>>>0));o=AS;p=AT;q=n;r=o;s=p;t=AF(r,q);if(t>=r.$length||q<(u=(t&~1)>>0,((u<0||u>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+u]))||(v=t|1,((v<0||v>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+v]))<q){return false;}if(c>=131072){return true;}c=c-(65536)>>0;w=AE(s,((c<<16>>>16)));return w>=s.$length||!((((w<0||w>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+w])===((c<<16>>>16))));};$pkg.IsPrint=AG;AI=function(c){var c,d,e;if(c>65535){return false;}d=((c<<16>>>16));e=AE(AU,d);return e<AU.$length&&(d===((e<0||e>=AU.$length)?($throwRuntimeError("index out of range"),undefined):AU.$array[AU.$offset+e]));};AJ=function(c,d){var c,d,e,f;if(true&&(c.$high<0||(c.$high===0&&c.$low<100))&&(d===10)){return AN(((c.$low>>0)));}e=AO(EA.nil,c,d,false,false);f=e[1];return f;};$pkg.FormatUint=AJ;AK=function(c,d){var c,d,e,f;if(true&&(0<c.$high||(0===c.$high&&0<=c.$low))&&(c.$high<0||(c.$high===0&&c.$low<100))&&(d===10)){return AN((((c.$low+((c.$high>>31)*4294967296))>>0)));}e=AO(EA.nil,(new $Uint64(c.$high,c.$low)),d,(c.$high<0||(c.$high===0&&c.$low<0)),false);f=e[1];return f;};$pkg.FormatInt=AK;AL=function(c,d,e){var c,d,e,f;if(true&&(0<d.$high||(0===d.$high&&0<=d.$low))&&(d.$high<0||(d.$high===0&&d.$low<100))&&(e===10)){return $appendSlice(c,AN((((d.$low+((d.$high>>31)*4294967296))>>0))));}f=AO(c,(new $Uint64(d.$high,d.$low)),e,(d.$high<0||(d.$high===0&&d.$low<0)),true);c=f[0];return c;};$pkg.AppendInt=AL;AM=function(c,d,e){var c,d,e,f;if(true&&(d.$high<0||(d.$high===0&&d.$low<100))&&(e===10)){return $appendSlice(c,AN(((d.$low>>0))));}f=AO(c,d,e,false,true);c=f[0];return c;};$pkg.AppendUint=AM;AN=function(c){var c;if(c<10){return $substring("0123456789abcdefghijklmnopqrstuvwxyz",c,(c+1>>0));}return $substring("00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899",($imul(c,2)),(($imul(c,2))+2>>0));};AO=function(c,d,e,f,g){var aa,ab,ac,ad,ae,af,ag,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;h=EA.nil;i="";if(e<2||e>36){$panic(new $String("strconv: illegal AppendInt/FormatInt base"));}j=EC.zero();k=65;if(f){d=new $Uint64(-d.$high,-d.$low);}if(e===10){if(true){while(true){if(!((d.$high>0||(d.$high===0&&d.$low>=1000000000)))){break;}l=$div64(d,new $Uint64(0,1000000000),false);n=(((m=$mul64(l,new $Uint64(0,1000000000)),new $Uint64(d.$high-m.$high,d.$low-m.$low)).$low>>>0));o=4;while(true){if(!(o>0)){break;}q=(p=n%100,p===p?p:$throwRuntimeError("integer divide by zero"))*2>>>0;n=(r=n/(100),(r===r&&r!==1/0&&r!==-1/0)?r>>>0:$throwRuntimeError("integer divide by zero"));k=k-(2)>>0;(s=k+1>>0,((s<0||s>=j.length)?($throwRuntimeError("index out of range"),undefined):j[s]="00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899".charCodeAt((q+1>>>0))));(t=k+0>>0,((t<0||t>=j.length)?($throwRuntimeError("index out of range"),undefined):j[t]="00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899".charCodeAt((q+0>>>0))));o=o-(1)>>0;}k=k-(1)>>0;((k<0||k>=j.length)?($throwRuntimeError("index out of range"),undefined):j[k]="00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899".charCodeAt(((n*2>>>0)+1>>>0)));d=l;}}u=((d.$low>>>0));while(true){if(!(u>=100)){break;}w=(v=u%100,v===v?v:$throwRuntimeError("integer divide by zero"))*2>>>0;u=(x=u/(100),(x===x&&x!==1/0&&x!==-1/0)?x>>>0:$throwRuntimeError("integer divide by zero"));k=k-(2)>>0;(y=k+1>>0,((y<0||y>=j.length)?($throwRuntimeError("index out of range"),undefined):j[y]="00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899".charCodeAt((w+1>>>0))));(z=k+0>>0,((z<0||z>=j.length)?($throwRuntimeError("index out of range"),undefined):j[z]="00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899".charCodeAt((w+0>>>0))));}aa=u*2>>>0;k=k-(1)>>0;((k<0||k>=j.length)?($throwRuntimeError("index out of range"),undefined):j[k]="00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899".charCodeAt((aa+1>>>0)));if(u>=10){k=k-(1)>>0;((k<0||k>=j.length)?($throwRuntimeError("index out of range"),undefined):j[k]="00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899".charCodeAt(aa));}}else if(AP(e)){ab=(((B.TrailingZeros(((e>>>0)))>>>0))&7)>>>0;ac=(new $Uint64(0,e));ad=((e>>>0))-1>>>0;while(true){if(!((d.$high>ac.$high||(d.$high===ac.$high&&d.$low>=ac.$low)))){break;}k=k-(1)>>0;((k<0||k>=j.length)?($throwRuntimeError("index out of range"),undefined):j[k]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt(((((d.$low>>>0))&ad)>>>0)));d=$shiftRightUint64(d,(ab));}k=k-(1)>>0;((k<0||k>=j.length)?($throwRuntimeError("index out of range"),undefined):j[k]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt(((d.$low>>>0))));}else{ae=(new $Uint64(0,e));while(true){if(!((d.$high>ae.$high||(d.$high===ae.$high&&d.$low>=ae.$low)))){break;}k=k-(1)>>0;af=$div64(d,ae,false);((k<0||k>=j.length)?($throwRuntimeError("index out of range"),undefined):j[k]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((((ag=$mul64(af,ae),new $Uint64(d.$high-ag.$high,d.$low-ag.$low)).$low>>>0))));d=af;}k=k-(1)>>0;((k<0||k>=j.length)?($throwRuntimeError("index out of range"),undefined):j[k]="0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt(((d.$low>>>0))));}if(f){k=k-(1)>>0;((k<0||k>=j.length)?($throwRuntimeError("index out of range"),undefined):j[k]=45);}if(g){h=$appendSlice(c,$subslice(new EA(j),k));return[h,i];}i=($bytesToString($subslice(new EA(j),k)));return[h,i];};AP=function(c){var c;return(c&((c-1>>0)))===0;};AV=function(c,d,e,f){var aa,ab,ac,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;if(f<0){$panic(new $String("ryuFtoaFixed32 called with negative prec"));}if(f>9){$panic(new $String("ryuFtoaFixed32 called with prec > 9"));}if(d===0){g=0;h=0;c.nd=g;c.dp=h;return;}i=e;j=B.Len32(d);if(j<25){d=(k=((((25-j>>0)>>>0))),k<32?(d<<k):0)>>>0;i=i+(((j)-25>>0))>>0;}l=(-BA(i+24>>0)+f>>0)-1>>0;m=l<=27&&l>=0;n=BF(d,i,l);o=n[0];p=n[1];q=n[2];if(p>=0){$panic(new $String("not enough significant bits after mult64bitPow10"));}if(l<0&&l>=-10&&BH((new $Uint64(0,d)),-l)){m=true;q=true;}r=((-p>>>0));t=((((s=r,s<32?(1<<s):0)>>>0)-1>>>0));u=(v=r,v<32?(o>>>v):0)>>>0;w=(o&t)>>>0;o=u;x=w;y=false;if(m){y=x>((z=((r-1>>>0)),z<32?(1<<z):0)>>>0)||((x===((aa=((r-1>>>0)),aa<32?(1<<aa):0)>>>0))&&!q)||((x===((ab=((r-1>>>0)),ab<32?(1<<ab):0)>>>0))&&q&&(((o&1)>>>0)===1));}else{y=((ac=((r-1>>>0)),ac<32?(x>>>ac):0)>>>0)===1;}if(!((x===0))){q=false;}AY(c,(new $Uint64(0,o)),!q,y,f);c.dp=c.dp-(l)>>0;};AW=function(c,d,e,f){var aa,ab,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;if(f>18){$panic(new $String("ryuFtoaFixed64 called with prec > 18"));}if((d.$high===0&&d.$low===0)){g=0;h=0;c.nd=g;c.dp=h;return;}i=e;j=B.Len64(d);if(j<55){d=$shiftLeft64(d,(((55-j>>0)>>>0)));i=i+(((j)-55>>0))>>0;}k=(-BA(i+54>>0)+f>>0)-1>>0;l=k<=55&&k>=0;m=BG(d,i,k);n=m[0];o=m[1];p=m[2];if(o>=0){$panic(new $String("not enough significant bits after mult128bitPow10"));}if(k<0&&k>=-22&&BH(d,-k)){l=true;p=true;}q=((-o>>>0));s=((r=$shiftLeft64(new $Uint64(0,1),q),new $Uint64(r.$high-0,r.$low-1)));t=$shiftRightUint64(n,q);u=new $Uint64(n.$high&s.$high,(n.$low&s.$low)>>>0);n=t;v=u;w=false;if(l){w=(x=$shiftLeft64(new $Uint64(0,1),((q-1>>>0))),(v.$high>x.$high||(v.$high===x.$high&&v.$low>x.$low)))||((y=$shiftLeft64(new $Uint64(0,1),((q-1>>>0))),(v.$high===y.$high&&v.$low===y.$low))&&!p)||((z=$shiftLeft64(new $Uint64(0,1),((q-1>>>0))),(v.$high===z.$high&&v.$low===z.$low))&&p&&(aa=new $Uint64(n.$high&0,(n.$low&1)>>>0),(aa.$high===0&&aa.$low===1)));}else{w=(ab=$shiftRightUint64(v,((q-1>>>0))),(ab.$high===0&&ab.$low===1));}if(!((v.$high===0&&v.$low===0))){p=false;}AY(c,n,!p,w,f);c.dp=c.dp-(k)>>0;};AY=function(c,d,e,f,g){var aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;h=((g<0||g>=AX.length)?($throwRuntimeError("index out of range"),undefined):AX[g]);i=0;while(true){if(!((d.$high>h.$high||(d.$high===h.$high&&d.$low>=h.$low)))){break;}j=$div64(d,new $Uint64(0,10),false);k=$div64(d,new $Uint64(0,10),true);l=j;m=k;d=l;i=i+(1)>>0;if((m.$high>0||(m.$high===0&&m.$low>5))){f=true;}else if((m.$high<0||(m.$high===0&&m.$low<5))){f=false;}else{f=e||(n=new $Uint64(d.$high&0,(d.$low&1)>>>0),(n.$high===0&&n.$low===1));}if(!((m.$high===0&&m.$low===0))){e=true;}}if(f){d=(o=new $Uint64(0,1),new $Uint64(d.$high+o.$high,d.$low+o.$low));}if((d.$high>h.$high||(d.$high===h.$high&&d.$low>=h.$low))){d=$div64(d,(new $Uint64(0,10)),false);i=i+(1)>>0;}p=((g>>>0));c.nd=(g);q=d;while(true){if(!((q.$high>0||(q.$high===0&&q.$low>=100)))){break;}r=new $Uint64(0,0);s=new $Uint64(0,0);t=r;u=s;if((v=$shiftRightUint64(q,32),(v.$high===0&&v.$low===0))){w=(new $Uint64(0,(x=((q.$low>>>0))/100,(x===x&&x!==1/0&&x!==-1/0)?x>>>0:$throwRuntimeError("integer divide by zero"))));y=(new $Uint64(0,(z=((q.$low>>>0))%100,z===z?z:$throwRuntimeError("integer divide by zero"))));t=w;u=y;}else{aa=$div64(q,new $Uint64(0,100),false);ab=$div64(q,new $Uint64(0,100),true);t=aa;u=ab;}p=p-(2)>>>0;(ad=c.d,ae=p+1>>>0,((ae<0||ae>=ad.$length)?($throwRuntimeError("index out of range"),undefined):ad.$array[ad.$offset+ae]="00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899".charCodeAt($flatten64((ac=$mul64(new $Uint64(0,2),u),new $Uint64(ac.$high+0,ac.$low+1))))));(ag=c.d,ah=p+0>>>0,((ah<0||ah>=ag.$length)?($throwRuntimeError("index out of range"),undefined):ag.$array[ag.$offset+ah]="00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899".charCodeAt($flatten64((af=$mul64(new $Uint64(0,2),u),new $Uint64(af.$high+0,af.$low+0))))));q=t;}if((q.$high>0||(q.$high===0&&q.$low>0))){p=p-(1)>>>0;(aj=c.d,((p<0||p>=aj.$length)?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+p]="00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899".charCodeAt($flatten64((ai=$mul64(new $Uint64(0,2),q),new $Uint64(ai.$high+0,ai.$low+1))))));}if((q.$high>0||(q.$high===0&&q.$low>=10))){p=p-(1)>>>0;(ak=c.d,((p<0||p>=ak.$length)?($throwRuntimeError("index out of range"),undefined):ak.$array[ak.$offset+p]="00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899".charCodeAt($flatten64($mul64(new $Uint64(0,2),q)))));}while(true){if(!((al=c.d,am=c.nd-1>>0,((am<0||am>=al.$length)?($throwRuntimeError("index out of range"),undefined):al.$array[al.$offset+am]))===48)){break;}c.nd=c.nd-(1)>>0;i=i+(1)>>0;}c.dp=c.nd+i>>0;};AZ=function(c,d,e,f){var aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;if((d.$high===0&&d.$low===0)){g=0;h=0;c.nd=g;c.dp=h;return;}if(e<=0&&B.TrailingZeros64(d)>=-e){d=$shiftRightUint64(d,(((-e>>>0))));BD(c,d,d,d,true,false);return;}i=BC(d,e,f);j=i[0];k=i[1];l=i[2];m=i[3];if(m===0){BD(c,j,k,l,true,false);return;}n=BA(-m)+1>>0;o=new $Uint64(0,0);p=new $Uint64(0,0);q=new $Uint64(0,0);r=o;s=p;t=q;u=false;v=false;w=false;x=u;y=v;z=w;if(f===BK){aa=0;ab=0;ac=0;ad=aa;ae=ab;af=ac;ag=BF(((j.$low>>>0)),m,n);ad=ag[0];x=ag[2];ah=BF(((k.$low>>>0)),m,n);ae=ah[0];y=ah[2];ai=BF(((l.$low>>>0)),m,n);af=ai[0];m=ai[1];z=ai[2];aj=(new $Uint64(0,ad));ak=(new $Uint64(0,ae));al=(new $Uint64(0,af));r=aj;s=ak;t=al;}else{am=BG(j,m,n);r=am[0];x=am[2];an=BG(k,m,n);s=an[0];y=an[2];ao=BG(l,m,n);t=ao[0];m=ao[1];z=ao[2];}if(m>=0){$panic(new $String("not enough significant bits after mult128bitPow10"));}if(n>55){ap=false;aq=false;ar=false;x=ap;y=aq;z=ar;}if(n<0&&n>=-24){if(BH(j,-n)){x=true;}if(BH(k,-n)){y=true;}if(BH(l,-n)){z=true;}}as=((-m>>>0));au=((at=$shiftLeft64(new $Uint64(0,1),as),new $Uint64(at.$high-0,at.$low-1)));av=$shiftRightUint64(r,as);aw=new $Uint64(r.$high&au.$high,(r.$low&au.$low)>>>0);r=av;ax=aw;ay=$shiftRightUint64(s,as);az=new $Uint64(s.$high&au.$high,(s.$low&au.$low)>>>0);s=ay;ba=az;bb=$shiftRightUint64(t,as);bc=new $Uint64(t.$high&au.$high,(t.$low&au.$low)>>>0);t=bb;bd=bc;be=!z||(bd.$high>0||(bd.$high===0&&bd.$low>0));if(z&&(bd.$high===0&&bd.$low===0)){be=(bf=new $Uint64(d.$high&0,(d.$low&1)>>>0),(bf.$high===0&&bf.$low===0));}if(!be){t=(bg=new $Uint64(0,1),new $Uint64(t.$high-bg.$high,t.$low-bg.$low));}bh=false;if(y){bh=(bi=$shiftLeft64(new $Uint64(0,1),((as-1>>>0))),(ba.$high>bi.$high||(ba.$high===bi.$high&&ba.$low>bi.$low)))||((bj=$shiftLeft64(new $Uint64(0,1),((as-1>>>0))),(ba.$high===bj.$high&&ba.$low===bj.$low))&&(bk=new $Uint64(s.$high&0,(s.$low&1)>>>0),(bk.$high===0&&bk.$low===1)));}else{bh=(bl=$shiftRightUint64(ba,((as-1>>>0))),(bl.$high===0&&bl.$low===1));}bn=x&&(ax.$high===0&&ax.$low===0)&&((bm=new $Uint64(d.$high&0,(d.$low&1)>>>0),(bm.$high===0&&bm.$low===0)));if(!bn){r=(bo=new $Uint64(0,1),new $Uint64(r.$high+bo.$high,r.$low+bo.$low));}bp=y&&(ba.$high===0&&ba.$low===0);BD(c,r,s,t,bp,bh);c.dp=c.dp-(n)>>0;};BA=function(c){var c;return(($imul(c,78913)))>>18>>0;};BB=function(c){var c;return(($imul(c,108853)))>>15>>0;};BC=function(c,d,e){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;f=new $Uint64(0,0);g=new $Uint64(0,0);h=new $Uint64(0,0);i=0;if(!((j=$shiftLeft64(new $Uint64(0,1),e.mantbits),(c.$high===j.$high&&c.$low===j.$low)))||(d===((e.bias+1>>0)-((e.mantbits>>0))>>0))){k=(l=$mul64(new $Uint64(0,2),c),new $Uint64(l.$high-0,l.$low-1));m=$mul64(new $Uint64(0,2),c);n=(o=$mul64(new $Uint64(0,2),c),new $Uint64(o.$high+0,o.$low+1));f=k;g=m;h=n;i=d-1>>0;return[f,g,h,i];}else{p=(q=$mul64(new $Uint64(0,4),c),new $Uint64(q.$high-0,q.$low-1));r=$mul64(new $Uint64(0,4),c);s=(t=$mul64(new $Uint64(0,4),c),new $Uint64(t.$high+0,t.$low+2));f=p;g=r;h=s;i=d-2>>0;return[f,g,h,i];}};BD=function(c,d,e,f,g,h){var aa,ab,ac,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;i=BI(d);j=i[0];k=i[1];l=BI(e);m=l[0];n=l[1];o=BI(f);p=o[0];q=o[1];if(p===0){BE(c,k,n,q,g,h,8);}else if(j<p){if(!((k===0))){j=j+(1)>>>0;}g=g&&(n===0);h=(n>500000000)||((n===500000000)&&h);BE(c,j,m,p,g,h,8);c.dp=c.dp+(9)>>0;}else{c.nd=0;r=9;s=m;while(true){if(!(s>0)){break;}t=(u=s/10,(u===u&&u!==1/0&&u!==-1/0)?u>>>0:$throwRuntimeError("integer divide by zero"));v=(w=s%10,w===w?w:$throwRuntimeError("integer divide by zero"));x=t;y=v;s=x;r=r-(1)>>>0;(z=c.d,((r<0||r>=z.$length)?($throwRuntimeError("index out of range"),undefined):z.$array[z.$offset+r]=(((y+48>>>0)<<24>>>24))));}c.d=$subslice(c.d,r);c.nd=(((9-r>>>0)>>0));BE(c,k,n,q,g,h,c.nd+8>>0);}while(true){if(!(c.nd>0&&((aa=c.d,ab=c.nd-1>>0,((ab<0||ab>=aa.$length)?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+ab]))===48))){break;}c.nd=c.nd-(1)>>0;}while(true){if(!(c.nd>0&&((ac=c.d,(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]))===48))){break;}c.nd=c.nd-(1)>>0;c.dp=c.dp-(1)>>0;c.d=$subslice(c.d,1);}};BE=function(c,d,e,f,g,h,i){var aa,ab,ac,ad,ae,af,ag,ah,ai,aj,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;if(f===0){c.dp=i+1>>0;return;}j=0;k=0;while(true){if(!(f>0)){break;}m=(l=((d+9>>>0))/10,(l===l&&l!==1/0&&l!==-1/0)?l>>>0:$throwRuntimeError("integer divide by zero"));n=(o=e/10,(o===o&&o!==1/0&&o!==-1/0)?o>>>0:$throwRuntimeError("integer divide by zero"));p=(q=e%10,q===q?q:$throwRuntimeError("integer divide by zero"));r=n;s=p;u=(t=f/10,(t===t&&t!==1/0&&t!==-1/0)?t>>>0:$throwRuntimeError("integer divide by zero"));if(m>u){break;}if((m===(r+1>>>0))&&r<u){r=r+(1)>>>0;s=0;h=false;}j=j+(1)>>0;g=g&&(k===0);k=((s>>0));v=m;w=r;x=u;d=v;e=w;f=x;}if(j>0){h=k>5||((k===5)&&!g)||((k===5)&&g&&(((e&1)>>>0)===1));}if(e<f&&h){e=e+(1)>>>0;}i=i-(j)>>0;y=e;z=i;while(true){if(!(z>c.nd)){break;}aa=(ab=y/100,(ab===ab&&ab!==1/0&&ab!==-1/0)?ab>>>0:$throwRuntimeError("integer divide by zero"));ac=(ad=y%100,ad===ad?ad:$throwRuntimeError("integer divide by zero"));ae=aa;af=ac;(ag=c.d,((z<0||z>=ag.$length)?($throwRuntimeError("index out of range"),undefined):ag.$array[ag.$offset+z]="00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899".charCodeAt((($imul(2,af)>>>0)+1>>>0))));(ah=c.d,ai=z-1>>0,((ai<0||ai>=ah.$length)?($throwRuntimeError("index out of range"),undefined):ah.$array[ah.$offset+ai]="00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899".charCodeAt((($imul(2,af)>>>0)+0>>>0))));z=z-(2)>>0;y=ae;}if(z===c.nd){(aj=c.d,((z<0||z>=aj.$length)?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+z]=(((y+48>>>0)<<24>>>24))));}c.nd=i+1>>0;c.dp=c.nd+j>>0;};BF=function(c,d,e){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w;f=0;g=0;h=false;if(e===0){i=c<<6>>>0;j=d-6>>0;k=true;f=i;g=j;h=k;return[f,g,h];}if(e<-348||347<e){$panic(new $String("mult64bitPow10: power of 10 is out of range"));}m=(l=e- -348>>0,((l<0||l>=CB.length)?($throwRuntimeError("index out of range"),undefined):CB[l]))[1];if(e<0){m=(n=new $Uint64(0,1),new $Uint64(m.$high+n.$high,m.$low+n.$low));}o=B.Mul64((new $Uint64(0,c)),m);p=o[0];q=o[1];d=d+(((BB(e)-63>>0)+57>>0))>>0;r=(((s=$shiftLeft64(p,7),t=$shiftRightUint64(q,57),new $Uint64(s.$high|t.$high,(s.$low|t.$low)>>>0)).$low>>>0));u=d;v=(w=$shiftLeft64(q,7),(w.$high===0&&w.$low===0));f=r;g=u;h=v;return[f,g,h];};BG=function(c,d,e){var aa,ab,ac,ad,ae,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;f=new $Uint64(0,0);g=0;h=false;if(e===0){i=$shiftLeft64(c,8);j=d-8>>0;k=true;f=i;g=j;h=k;return[f,g,h];}if(e<-348||347<e){$panic(new $String("mult128bitPow10: power of 10 is out of range"));}m=$clone((l=e- -348>>0,((l<0||l>=CB.length)?($throwRuntimeError("index out of range"),undefined):CB[l])),DV);if(e<0){m[0]=(n=m[0],o=new $Uint64(0,1),new $Uint64(n.$high+o.$high,n.$low+o.$low));}d=d+(((BB(e)-127>>0)+119>>0))>>0;p=B.Mul64(c,m[0]);q=p[0];r=p[1];s=B.Mul64(c,m[1]);t=s[0];u=s[1];v=B.Add64(q,u,new $Uint64(0,0));w=v[0];x=v[1];t=(y=x,new $Uint64(t.$high+y.$high,t.$low+y.$low));z=(aa=$shiftLeft64(t,9),ab=$shiftRightUint64(w,55),new $Uint64(aa.$high|ab.$high,(aa.$low|ab.$low)>>>0));ac=d;ad=(ae=$shiftLeft64(w,9),(ae.$high===0&&ae.$low===0))&&(r.$high===0&&r.$low===0);f=z;g=ac;h=ad;return[f,g,h];};BH=function(c,d){var c,d,e,f;if((c.$high===0&&c.$low===0)){return true;}e=0;while(true){if(!(e<d)){break;}if(!((f=$div64(c,new $Uint64(0,5),true),(f.$high===0&&f.$low===0)))){return false;}c=$div64(c,(new $Uint64(0,5)),false);e=e+(1)>>0;}return true;};BI=function(c){var c,d,e,f,g;if(false){return[(($div64(c,new $Uint64(0,1000000000),false).$low>>>0)),(($div64(c,new $Uint64(0,1000000000),true).$low>>>0))];}d=B.Mul64($shiftRightUint64(c,1),new $Uint64(2305843009,917808536));e=d[0];f=$shiftRightUint64(e,28);return[((f.$low>>>0)),(((g=$mul64(f,new $Uint64(0,1000000000)),new $Uint64(c.$high-g.$high,c.$low-g.$low)).$low>>>0))];};BM=function(c,d,e,f){var c,d,e,f;return($bytesToString(BO($makeSlice(EA,0,BY(e+4>>0,24)),c,d,e,f)));};$pkg.FormatFloat=BM;BN=function(c,d,e,f,g){var c,d,e,f,g;return BO(c,d,e,f,g);};$pkg.AppendFloat=BN;BO=function(c,d,e,f,g){var aa,ab,ac,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;h=new $Uint64(0,0);i=ED.nil;j=g;if(j===(32)){h=(new $Uint64(0,C.Float32bits(($fround(d)))));i=BK;}else if(j===(64)){h=C.Float64bits(d);i=BL;}else{$panic(new $String("strconv: illegal AppendFloat/FormatFloat bitSize"));}l=!((k=$shiftRightUint64(h,((i.expbits+i.mantbits>>>0))),(k.$high===0&&k.$low===0)));n=(($shiftRightUint64(h,i.mantbits).$low>>0))&((((m=i.expbits,m<32?(1<<m):0)>>0)-1>>0));q=(o=(p=$shiftLeft64(new $Uint64(0,1),i.mantbits),new $Uint64(p.$high-0,p.$low-1)),new $Uint64(h.$high&o.$high,(h.$low&o.$low)>>>0));r=n;if(r===((((s=i.expbits,s<32?(1<<s):0)>>0)-1>>0))){t="";if(!((q.$high===0&&q.$low===0))){t="NaN";}else if(l){t="-Inf";}else{t="+Inf";}return $appendSlice(c,t);}else if(r===(0)){n=n+(1)>>0;}else{q=(u=$shiftLeft64(new $Uint64(0,1),i.mantbits),new $Uint64(q.$high|u.$high,(q.$low|u.$low)>>>0));}n=n+(i.bias)>>0;if(e===98){return BV(c,l,q,n,i);}if((e===120)||(e===88)){return BW(c,f,e,l,q,n,i);}if(!CW){return BP(c,f,e,l,q,n,i);}v=new BS.ptr(EA.nil,0,0,false);w=false;x=f<0;if(x){y=EE.zero();v.d=new EA(y);AZ(v,q,n-((i.mantbits>>0))>>0,i);w=true;z=e;if((z===(101))||(z===(69))){f=BY(v.nd-1>>0,0);}else if(z===(102)){f=BY(v.nd-v.dp>>0,0);}else if((z===(103))||(z===(71))){f=v.nd;}}else if(!((e===102))){aa=f;ab=e;if((ab===(101))||(ab===(69))){aa=aa+(1)>>0;}else if((ab===(103))||(ab===(71))){if(f===0){f=1;}aa=f;}ac=EF.zero();if((g===32)&&aa<=9){v.d=new EA(ac);AV(v,((q.$low>>>0)),n-((i.mantbits>>0))>>0,aa);w=true;}else if(aa<=18){v.d=new EA(ac);AW(v,q,n-((i.mantbits>>0))>>0,aa);w=true;}}if(!w){return BP(c,f,e,l,q,n,i);}return BQ(c,x,l,$clone(v,BS),f,e);};BP=function(c,d,e,f,g,h,i){var c,d,e,f,g,h,i,j,k,l,m,n;j=new CC.ptr(EG.zero(),0,0,false,false);j.Assign(g);j.Shift(h-((i.mantbits>>0))>>0);k=new BS.ptr(EA.nil,0,0,false);l=d<0;if(l){BR(j,g,h,i);BS.copy(k,new BS.ptr(new EA(j.d),j.nd,j.dp,false));m=e;if((m===(101))||(m===(69))){d=k.nd-1>>0;}else if(m===(102)){d=BY(k.nd-k.dp>>0,0);}else if((m===(103))||(m===(71))){d=k.nd;}}else{n=e;if((n===(101))||(n===(69))){j.Round(d+1>>0);}else if(n===(102)){j.Round(j.dp+d>>0);}else if((n===(103))||(n===(71))){if(d===0){d=1;}j.Round(d);}BS.copy(k,new BS.ptr(new EA(j.d),j.nd,j.dp,false));}return BQ(c,l,f,$clone(k,BS),d,e);};BQ=function(c,d,e,f,g,h){var c,d,e,f,g,h,i,j,k;i=h;if((i===(101))||(i===(69))){return BT(c,e,$clone(f,BS),g,h);}else if(i===(102)){return BU(c,e,$clone(f,BS),g);}else if((i===(103))||(i===(71))){j=g;if(j>f.nd&&f.nd>=f.dp){j=f.nd;}if(d){j=6;}k=f.dp-1>>0;if(k<-4||k>=j){if(g>f.nd){g=f.nd;}return BT(c,e,$clone(f,BS),g-1>>0,(h+101<<24>>>24)-103<<24>>>24);}if(g>f.dp){g=f.nd;}return BU(c,e,$clone(f,BS),BY(g-f.dp>>0,0));}return $append(c,37,h);};BR=function(c,d,e,f){var aa,ab,ac,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;if((d.$high===0&&d.$low===0)){c.nd=0;return;}g=f.bias+1>>0;if(e>g&&($imul(332,((c.dp-c.nd>>0))))>=($imul(100,((e-((f.mantbits>>0))>>0))))){return;}h=new CC.ptr(EG.zero(),0,0,false,false);h.Assign((i=$mul64(d,new $Uint64(0,2)),new $Uint64(i.$high+0,i.$low+1)));h.Shift((e-((f.mantbits>>0))>>0)-1>>0);j=new $Uint64(0,0);k=0;if((l=$shiftLeft64(new $Uint64(0,1),f.mantbits),(d.$high>l.$high||(d.$high===l.$high&&d.$low>l.$low)))||(e===g)){j=new $Uint64(d.$high-0,d.$low-1);k=e;}else{j=(m=$mul64(d,new $Uint64(0,2)),new $Uint64(m.$high-0,m.$low-1));k=e-1>>0;}n=new CC.ptr(EG.zero(),0,0,false,false);n.Assign((o=$mul64(j,new $Uint64(0,2)),new $Uint64(o.$high+0,o.$low+1)));n.Shift((k-((f.mantbits>>0))>>0)-1>>0);q=(p=$div64(d,new $Uint64(0,2),true),(p.$high===0&&p.$low===0));r=0;s=0;while(true){t=(s-h.dp>>0)+c.dp>>0;if(t>=c.nd){break;}u=(s-h.dp>>0)+n.dp>>0;v=48;if(u>=0&&u<n.nd){v=(w=n.d,((u<0||u>=w.length)?($throwRuntimeError("index out of range"),undefined):w[u]));}x=48;if(t>=0){x=(y=c.d,((t<0||t>=y.length)?($throwRuntimeError("index out of range"),undefined):y[t]));}z=48;if(s<h.nd){z=(aa=h.d,((s<0||s>=aa.length)?($throwRuntimeError("index out of range"),undefined):aa[s]));}ab=!((v===x))||q&&((u+1>>0)===n.nd);if((r===0)&&(x+1<<24>>>24)<z){r=2;}else if((r===0)&&!((x===z))){r=1;}else if((r===1)&&(!((x===57))||!((z===48)))){r=2;}ac=r>0&&(q||r>1||(s+1>>0)<h.nd);if(ab&&ac){c.Round(t+1>>0);return;}else if(ab){c.RoundDown(t+1>>0);return;}else if(ac){c.RoundUp(t+1>>0);return;}s=s+(1)>>0;}};BT=function(c,d,e,f,g){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;if(d){c=$append(c,45);}h=48;if(!((e.nd===0))){h=(i=e.d,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0]));}c=$append(c,h);if(f>0){c=$append(c,46);j=1;k=BX(e.nd,f+1>>0);if(j<k){c=$appendSlice(c,$subslice(e.d,j,k));j=k;}while(true){if(!(j<=f)){break;}c=$append(c,48);j=j+(1)>>0;}}c=$append(c,g);l=e.dp-1>>0;if(e.nd===0){l=0;}if(l<0){h=45;l=-l;}else{h=43;}c=$append(c,h);if(l<10){c=$append(c,48,((l<<24>>>24))+48<<24>>>24);}else if(l<100){c=$append(c,(((m=l/10,(m===m&&m!==1/0&&m!==-1/0)?m>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24))+48<<24>>>24,(((n=l%10,n===n?n:$throwRuntimeError("integer divide by zero"))<<24>>>24))+48<<24>>>24);}else{c=$append(c,(((o=l/100,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24))+48<<24>>>24,(p=(((q=l/10,(q===q&&q!==1/0&&q!==-1/0)?q>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24))%10,p===p?p:$throwRuntimeError("integer divide by zero"))+48<<24>>>24,(((r=l%10,r===r?r:$throwRuntimeError("integer divide by zero"))<<24>>>24))+48<<24>>>24);}return c;};BU=function(c,d,e,f){var c,d,e,f,g,h,i,j,k;if(d){c=$append(c,45);}if(e.dp>0){g=BX(e.nd,e.dp);c=$appendSlice(c,$subslice(e.d,0,g));while(true){if(!(g<e.dp)){break;}c=$append(c,48);g=g+(1)>>0;}}else{c=$append(c,48);}if(f>0){c=$append(c,46);h=0;while(true){if(!(h<f)){break;}i=48;j=e.dp+h>>0;if(0<=j&&j<e.nd){i=(k=e.d,((j<0||j>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+j]));}c=$append(c,i);h=h+(1)>>0;}}return c;};BV=function(c,d,e,f,g){var c,d,e,f,g,h,i;if(d){c=$append(c,45);}h=AO(c,e,10,false,true);c=h[0];c=$append(c,112);f=f-(((g.mantbits>>0)))>>0;if(f>=0){c=$append(c,43);}i=AO(c,(new $Uint64(0,f)),10,f<0,true);c=i[0];return c;};BW=function(c,d,e,f,g,h,i){var aa,ab,ac,ad,ae,af,ag,ah,ai,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;if((g.$high===0&&g.$low===0)){h=0;}g=$shiftLeft64(g,((60-i.mantbits>>>0)));while(true){if(!(!((g.$high===0&&g.$low===0))&&(j=new $Uint64(g.$high&268435456,(g.$low&0)>>>0),(j.$high===0&&j.$low===0)))){break;}g=$shiftLeft64(g,(1));h=h-(1)>>0;}if(d>=0&&d<15){k=((($imul(d,4))>>>0));m=(l=$shiftLeft64(g,k),new $Uint64(l.$high&268435455,(l.$low&4294967295)>>>0));g=$shiftRightUint64(g,((60-k>>>0)));if((n=(o=new $Uint64(g.$high&0,(g.$low&1)>>>0),new $Uint64(m.$high|o.$high,(m.$low|o.$low)>>>0)),(n.$high>134217728||(n.$high===134217728&&n.$low>0)))){g=(p=new $Uint64(0,1),new $Uint64(g.$high+p.$high,g.$low+p.$low));}g=$shiftLeft64(g,((60-k>>>0)));if(!((q=new $Uint64(g.$high&536870912,(g.$low&0)>>>0),(q.$high===0&&q.$low===0)))){g=$shiftRightUint64(g,(1));h=h+(1)>>0;}}r="0123456789abcdef";if(e===88){r="0123456789ABCDEF";}if(f){c=$append(c,45);}c=$append(c,48,e,48+(((s=$shiftRightUint64(g,60),new $Uint64(s.$high&0,(s.$low&1)>>>0)).$low<<24>>>24))<<24>>>24);g=$shiftLeft64(g,(4));if(d<0&&!((g.$high===0&&g.$low===0))){c=$append(c,46);while(true){if(!(!((g.$high===0&&g.$low===0)))){break;}c=$append(c,r.charCodeAt($flatten64((t=$shiftRightUint64(g,60),new $Uint64(t.$high&0,(t.$low&15)>>>0)))));g=$shiftLeft64(g,(4));}}else if(d>0){c=$append(c,46);u=0;while(true){if(!(u<d)){break;}c=$append(c,r.charCodeAt($flatten64((v=$shiftRightUint64(g,60),new $Uint64(v.$high&0,(v.$low&15)>>>0)))));g=$shiftLeft64(g,(4));u=u+(1)>>0;}}w=80;if(e===CN(e)){w=112;}c=$append(c,w);if(h<0){w=45;h=-h;}else{w=43;}c=$append(c,w);if(h<100){c=$append(c,(((x=h/10,(x===x&&x!==1/0&&x!==-1/0)?x>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24))+48<<24>>>24,(((y=h%10,y===y?y:$throwRuntimeError("integer divide by zero"))<<24>>>24))+48<<24>>>24);}else if(h<1000){c=$append(c,(((z=h/100,(z===z&&z!==1/0&&z!==-1/0)?z>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24))+48<<24>>>24,(((aa=((ab=h/10,(ab===ab&&ab!==1/0&&ab!==-1/0)?ab>>0:$throwRuntimeError("integer divide by zero")))%10,aa===aa?aa:$throwRuntimeError("integer divide by zero"))<<24>>>24))+48<<24>>>24,(((ac=h%10,ac===ac?ac:$throwRuntimeError("integer divide by zero"))<<24>>>24))+48<<24>>>24);}else{c=$append(c,(((ad=h/1000,(ad===ad&&ad!==1/0&&ad!==-1/0)?ad>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24))+48<<24>>>24,(ae=(((af=h/100,(af===af&&af!==1/0&&af!==-1/0)?af>>0:$throwRuntimeError("integer divide by zero"))<<24>>>24))%10,ae===ae?ae:$throwRuntimeError("integer divide by zero"))+48<<24>>>24,(((ag=((ah=h/10,(ah===ah&&ah!==1/0&&ah!==-1/0)?ah>>0:$throwRuntimeError("integer divide by zero")))%10,ag===ag?ag:$throwRuntimeError("integer divide by zero"))<<24>>>24))+48<<24>>>24,(((ai=h%10,ai===ai?ai:$throwRuntimeError("integer divide by zero"))<<24>>>24))+48<<24>>>24);}return c;};BX=function(c,d){var c,d;if(c<d){return c;}return d;};BY=function(c,d){var c,d;if(c>d){return c;}return d;};BZ=function(c,d,e){var aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;f=0;g=false;if((c.$high===0&&c.$low===0)){if(e){f=C.Float64frombits(new $Uint64(2147483648,0));}h=f;i=true;f=h;g=i;return[f,g];}if(d<-348||347<d){j=0;k=false;f=j;g=k;return[f,g];}l=B.LeadingZeros64(c);c=$shiftLeft64(c,(((l>>>0))));o=(m=(new $Uint64(0,(((($imul(217706,d))>>16>>0)+64>>0)+1023>>0))),n=(new $Uint64(0,l)),new $Uint64(m.$high-n.$high,m.$low-n.$low));p=B.Mul64(c,(q=d- -348>>0,((q<0||q>=CB.length)?($throwRuntimeError("index out of range"),undefined):CB[q]))[1]);r=p[0];s=p[1];if((t=new $Uint64(r.$high&0,(r.$low&511)>>>0),(t.$high===0&&t.$low===511))&&(u=new $Uint64(s.$high+c.$high,s.$low+c.$low),(u.$high<c.$high||(u.$high===c.$high&&u.$low<c.$low)))){v=B.Mul64(c,(w=d- -348>>0,((w<0||w>=CB.length)?($throwRuntimeError("index out of range"),undefined):CB[w]))[0]);x=v[0];y=v[1];z=r;aa=new $Uint64(s.$high+x.$high,s.$low+x.$low);ab=z;ac=aa;if((ac.$high<s.$high||(ac.$high===s.$high&&ac.$low<s.$low))){ab=(ad=new $Uint64(0,1),new $Uint64(ab.$high+ad.$high,ab.$low+ad.$low));}if((ae=new $Uint64(ab.$high&0,(ab.$low&511)>>>0),(ae.$high===0&&ae.$low===511))&&(af=new $Uint64(ac.$high+0,ac.$low+1),(af.$high===0&&af.$low===0))&&(ag=new $Uint64(y.$high+c.$high,y.$low+c.$low),(ag.$high<c.$high||(ag.$high===c.$high&&ag.$low<c.$low)))){ah=0;ai=false;f=ah;g=ai;return[f,g];}aj=ab;ak=ac;r=aj;s=ak;}al=$shiftRightUint64(r,63);am=$shiftRightUint64(r,$flatten64((new $Uint64(al.$high+0,al.$low+9))));o=(an=new $Uint64(0^al.$high,(1^al.$low)>>>0),new $Uint64(o.$high-an.$high,o.$low-an.$low));if((s.$high===0&&s.$low===0)&&(ao=new $Uint64(r.$high&0,(r.$low&511)>>>0),(ao.$high===0&&ao.$low===0))&&(ap=new $Uint64(am.$high&0,(am.$low&3)>>>0),(ap.$high===0&&ap.$low===1))){aq=0;ar=false;f=aq;g=ar;return[f,g];}am=(as=new $Uint64(am.$high&0,(am.$low&1)>>>0),new $Uint64(am.$high+as.$high,am.$low+as.$low));am=$shiftRightUint64(am,(1));if((at=$shiftRightUint64(am,53),(at.$high>0||(at.$high===0&&at.$low>0)))){am=$shiftRightUint64(am,(1));o=(au=new $Uint64(0,1),new $Uint64(o.$high+au.$high,o.$low+au.$low));}if((av=new $Uint64(o.$high-0,o.$low-1),(av.$high>0||(av.$high===0&&av.$low>=2046)))){aw=0;ax=false;f=aw;g=ax;return[f,g];}ba=(ay=$shiftLeft64(o,52),az=new $Uint64(am.$high&1048575,(am.$low&4294967295)>>>0),new $Uint64(ay.$high|az.$high,(ay.$low|az.$low)>>>0));if(e){ba=(bb=new $Uint64(2147483648,0),new $Uint64(ba.$high|bb.$high,(ba.$low|bb.$low)>>>0));}bc=C.Float64frombits(ba);bd=true;f=bc;g=bd;return[f,g];};CA=function(c,d,e){var aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;f=0;g=false;if((c.$high===0&&c.$low===0)){if(e){f=C.Float32frombits(2147483648);}h=f;i=true;f=h;g=i;return[f,g];}if(d<-348||347<d){j=0;k=false;f=j;g=k;return[f,g];}l=B.LeadingZeros64(c);c=$shiftLeft64(c,(((l>>>0))));o=(m=(new $Uint64(0,(((($imul(217706,d))>>16>>0)+64>>0)+127>>0))),n=(new $Uint64(0,l)),new $Uint64(m.$high-n.$high,m.$low-n.$low));p=B.Mul64(c,(q=d- -348>>0,((q<0||q>=CB.length)?($throwRuntimeError("index out of range"),undefined):CB[q]))[1]);r=p[0];s=p[1];if((t=new $Uint64(r.$high&63,(r.$low&4294967295)>>>0),(t.$high===63&&t.$low===4294967295))&&(u=new $Uint64(s.$high+c.$high,s.$low+c.$low),(u.$high<c.$high||(u.$high===c.$high&&u.$low<c.$low)))){v=B.Mul64(c,(w=d- -348>>0,((w<0||w>=CB.length)?($throwRuntimeError("index out of range"),undefined):CB[w]))[0]);x=v[0];y=v[1];z=r;aa=new $Uint64(s.$high+x.$high,s.$low+x.$low);ab=z;ac=aa;if((ac.$high<s.$high||(ac.$high===s.$high&&ac.$low<s.$low))){ab=(ad=new $Uint64(0,1),new $Uint64(ab.$high+ad.$high,ab.$low+ad.$low));}if((ae=new $Uint64(ab.$high&63,(ab.$low&4294967295)>>>0),(ae.$high===63&&ae.$low===4294967295))&&(af=new $Uint64(ac.$high+0,ac.$low+1),(af.$high===0&&af.$low===0))&&(ag=new $Uint64(y.$high+c.$high,y.$low+c.$low),(ag.$high<c.$high||(ag.$high===c.$high&&ag.$low<c.$low)))){ah=0;ai=false;f=ah;g=ai;return[f,g];}aj=ab;ak=ac;r=aj;s=ak;}al=$shiftRightUint64(r,63);am=$shiftRightUint64(r,$flatten64((new $Uint64(al.$high+0,al.$low+38))));o=(an=new $Uint64(0^al.$high,(1^al.$low)>>>0),new $Uint64(o.$high-an.$high,o.$low-an.$low));if((s.$high===0&&s.$low===0)&&(ao=new $Uint64(r.$high&63,(r.$low&4294967295)>>>0),(ao.$high===0&&ao.$low===0))&&(ap=new $Uint64(am.$high&0,(am.$low&3)>>>0),(ap.$high===0&&ap.$low===1))){aq=0;ar=false;f=aq;g=ar;return[f,g];}am=(as=new $Uint64(am.$high&0,(am.$low&1)>>>0),new $Uint64(am.$high+as.$high,am.$low+as.$low));am=$shiftRightUint64(am,(1));if((at=$shiftRightUint64(am,24),(at.$high>0||(at.$high===0&&at.$low>0)))){am=$shiftRightUint64(am,(1));o=(au=new $Uint64(0,1),new $Uint64(o.$high+au.$high,o.$low+au.$low));}if((av=new $Uint64(o.$high-0,o.$low-1),(av.$high>0||(av.$high===0&&av.$low>=254)))){aw=0;ax=false;f=aw;g=ax;return[f,g];}ba=(ay=$shiftLeft64(o,23),az=new $Uint64(am.$high&0,(am.$low&8388607)>>>0),new $Uint64(ay.$high|az.$high,(ay.$low|az.$low)>>>0));if(e){ba=(bb=new $Uint64(0,2147483648),new $Uint64(ba.$high|bb.$high,(ba.$low|bb.$low)>>>0));}bc=C.Float32frombits(((ba.$low>>>0)));bd=true;f=bc;g=bd;return[f,g];};CC.ptr.prototype.String=function(){var c,d,e,f;c=this;d=10+c.nd>>0;if(c.dp>0){d=d+(c.dp)>>0;}if(c.dp<0){d=d+(-c.dp)>>0;}e=$makeSlice(EA,d);f=0;if((c.nd===0)){return"0";}else if(c.dp<=0){((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]=48);f=f+(1)>>0;((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]=46);f=f+(1)>>0;f=f+(CD($subslice(e,f,(f+-c.dp>>0))))>>0;f=f+($copySlice($subslice(e,f),$subslice(new EA(c.d),0,c.nd)))>>0;}else if(c.dp<c.nd){f=f+($copySlice($subslice(e,f),$subslice(new EA(c.d),0,c.dp)))>>0;((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]=46);f=f+(1)>>0;f=f+($copySlice($subslice(e,f),$subslice(new EA(c.d),c.dp,c.nd)))>>0;}else{f=f+($copySlice($subslice(e,f),$subslice(new EA(c.d),0,c.nd)))>>0;f=f+(CD($subslice(e,f,((f+c.dp>>0)-c.nd>>0))))>>0;}return($bytesToString($subslice(e,0,f)));};CC.prototype.String=function(){return this.$val.String();};CD=function(c){var c,d,e,f;d=c;e=0;while(true){if(!(e<d.$length)){break;}f=e;((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]=48);e++;}return c.$length;};CE=function(c){var c,d,e;while(true){if(!(c.nd>0&&((d=c.d,e=c.nd-1>>0,((e<0||e>=d.length)?($throwRuntimeError("index out of range"),undefined):d[e]))===48))){break;}c.nd=c.nd-(1)>>0;}if(c.nd===0){c.dp=0;}};CC.ptr.prototype.Assign=function(c){var c,d,e,f,g,h,i,j;d=this;e=EF.zero();f=0;while(true){if(!((c.$high>0||(c.$high===0&&c.$low>0)))){break;}g=$div64(c,new $Uint64(0,10),false);c=(h=$mul64(new $Uint64(0,10),g),new $Uint64(c.$high-h.$high,c.$low-h.$low));((f<0||f>=e.length)?($throwRuntimeError("index out of range"),undefined):e[f]=((new $Uint64(c.$high+0,c.$low+48).$low<<24>>>24)));f=f+(1)>>0;c=g;}d.nd=0;f=f-(1)>>0;while(true){if(!(f>=0)){break;}(i=d.d,j=d.nd,((j<0||j>=i.length)?($throwRuntimeError("index out of range"),undefined):i[j]=((f<0||f>=e.length)?($throwRuntimeError("index out of range"),undefined):e[f])));d.nd=d.nd+(1)>>0;f=f-(1)>>0;}d.dp=d.nd;CE(d);};CC.prototype.Assign=function(c){return this.$val.Assign(c);};CF=function(c,d){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;e=0;f=0;g=0;while(true){if(!(((h=d,h<32?(g>>>h):0)>>>0)===0)){break;}if(e>=c.nd){if(g===0){c.nd=0;return;}while(true){if(!(((i=d,i<32?(g>>>i):0)>>>0)===0)){break;}g=g*10>>>0;e=e+(1)>>0;}break;}k=(((j=c.d,((e<0||e>=j.length)?($throwRuntimeError("index out of range"),undefined):j[e]))>>>0));g=((g*10>>>0)+k>>>0)-48>>>0;e=e+(1)>>0;}c.dp=c.dp-((e-1>>0))>>0;m=(((l=d,l<32?(1<<l):0)>>>0))-1>>>0;while(true){if(!(e<c.nd)){break;}o=(((n=c.d,((e<0||e>=n.length)?($throwRuntimeError("index out of range"),undefined):n[e]))>>>0));q=(p=d,p<32?(g>>>p):0)>>>0;g=(g&(m))>>>0;(r=c.d,((f<0||f>=r.length)?($throwRuntimeError("index out of range"),undefined):r[f]=(((q+48>>>0)<<24>>>24))));f=f+(1)>>0;g=((g*10>>>0)+o>>>0)-48>>>0;e=e+(1)>>0;}while(true){if(!(g>0)){break;}t=(s=d,s<32?(g>>>s):0)>>>0;g=(g&(m))>>>0;if(f<800){(u=c.d,((f<0||f>=u.length)?($throwRuntimeError("index out of range"),undefined):u[f]=(((t+48>>>0)<<24>>>24))));f=f+(1)>>0;}else if(t>0){c.trunc=true;}g=g*10>>>0;}c.nd=f;CE(c);};CI=function(c,d){var c,d,e;e=0;while(true){if(!(e<d.length)){break;}if(e>=c.$length){return true;}if(!((((e<0||e>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+e])===d.charCodeAt(e)))){return((e<0||e>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+e])<d.charCodeAt(e);}e=e+(1)>>0;}return false;};CJ=function(c,d){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;e=((d<0||d>=CH.$length)?($throwRuntimeError("index out of range"),undefined):CH.$array[CH.$offset+d]).delta;if(CI($subslice(new EA(c.d),0,c.nd),((d<0||d>=CH.$length)?($throwRuntimeError("index out of range"),undefined):CH.$array[CH.$offset+d]).cutoff)){e=e-(1)>>0;}f=c.nd;g=c.nd+e>>0;h=0;f=f-(1)>>0;while(true){if(!(f>=0)){break;}h=h+(((i=d,i<32?((((((j=c.d,((f<0||f>=j.length)?($throwRuntimeError("index out of range"),undefined):j[f]))>>>0))-48>>>0))<<i):0)>>>0))>>>0;l=(k=h/10,(k===k&&k!==1/0&&k!==-1/0)?k>>>0:$throwRuntimeError("integer divide by zero"));m=h-(10*l>>>0)>>>0;g=g-(1)>>0;if(g<800){(n=c.d,((g<0||g>=n.length)?($throwRuntimeError("index out of range"),undefined):n[g]=(((m+48>>>0)<<24>>>24))));}else if(!((m===0))){c.trunc=true;}h=l;f=f-(1)>>0;}while(true){if(!(h>0)){break;}p=(o=h/10,(o===o&&o!==1/0&&o!==-1/0)?o>>>0:$throwRuntimeError("integer divide by zero"));q=h-(10*p>>>0)>>>0;g=g-(1)>>0;if(g<800){(r=c.d,((g<0||g>=r.length)?($throwRuntimeError("index out of range"),undefined):r[g]=(((q+48>>>0)<<24>>>24))));}else if(!((q===0))){c.trunc=true;}h=p;}c.nd=c.nd+(e)>>0;if(c.nd>=800){c.nd=800;}c.dp=c.dp+(e)>>0;CE(c);};CC.ptr.prototype.Shift=function(c){var c,d;d=this;if((d.nd===0)){}else if(c>0){while(true){if(!(c>28)){break;}CJ(d,28);c=c-(28)>>0;}CJ(d,((c>>>0)));}else if(c<0){while(true){if(!(c<-28)){break;}CF(d,28);c=c+(28)>>0;}CF(d,((-c>>>0)));}};CC.prototype.Shift=function(c){return this.$val.Shift(c);};CK=function(c,d){var c,d,e,f,g,h,i;if(d<0||d>=c.nd){return false;}if(((e=c.d,((d<0||d>=e.length)?($throwRuntimeError("index out of range"),undefined):e[d]))===53)&&((d+1>>0)===c.nd)){if(c.trunc){return true;}return d>0&&!(((f=(((g=c.d,h=d-1>>0,((h<0||h>=g.length)?($throwRuntimeError("index out of range"),undefined):g[h]))-48<<24>>>24))%2,f===f?f:$throwRuntimeError("integer divide by zero"))===0));}return(i=c.d,((d<0||d>=i.length)?($throwRuntimeError("index out of range"),undefined):i[d]))>=53;};CC.ptr.prototype.Round=function(c){var c,d;d=this;if(c<0||c>=d.nd){return;}if(CK(d,c)){d.RoundUp(c);}else{d.RoundDown(c);}};CC.prototype.Round=function(c){return this.$val.Round(c);};CC.ptr.prototype.RoundDown=function(c){var c,d;d=this;if(c<0||c>=d.nd){return;}d.nd=c;CE(d);};CC.prototype.RoundDown=function(c){return this.$val.RoundDown(c);};CC.ptr.prototype.RoundUp=function(c){var c,d,e,f,g,h,i;d=this;if(c<0||c>=d.nd){return;}e=c-1>>0;while(true){if(!(e>=0)){break;}g=(f=d.d,((e<0||e>=f.length)?($throwRuntimeError("index out of range"),undefined):f[e]));if(g<57){(i=d.d,((e<0||e>=i.length)?($throwRuntimeError("index out of range"),undefined):i[e]=((h=d.d,((e<0||e>=h.length)?($throwRuntimeError("index out of range"),undefined):h[e]))+(1)<<24>>>24)));d.nd=e+1>>0;return;}e=e-(1)>>0;}d.d[0]=49;d.nd=1;d.dp=d.dp+(1)>>0;};CC.prototype.RoundUp=function(c){return this.$val.RoundUp(c);};CC.ptr.prototype.RoundedInteger=function(){var c,d,e,f,g,h,i;c=this;if(c.dp>20){return new $Uint64(4294967295,4294967295);}d=0;e=new $Uint64(0,0);d=0;while(true){if(!(d<c.dp&&d<c.nd)){break;}e=(f=$mul64(e,new $Uint64(0,10)),g=(new $Uint64(0,((h=c.d,((d<0||d>=h.length)?($throwRuntimeError("index out of range"),undefined):h[d]))-48<<24>>>24))),new $Uint64(f.$high+g.$high,f.$low+g.$low));d=d+(1)>>0;}while(true){if(!(d<c.dp)){break;}e=$mul64(e,(new $Uint64(0,10)));d=d+(1)>>0;}if(CK(c,c.dp)){e=(i=new $Uint64(0,1),new $Uint64(e.$high+i.$high,e.$low+i.$low));}return e;};CC.prototype.RoundedInteger=function(){return this.$val.RoundedInteger();};CM=function(c,d){var c,d;return D.IndexByteString(c,d);};CN=function(c){var c;return(c|32)>>>0;};CO.ptr.prototype.Error=function(){var{c,d,e,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=c.Err.Error();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e="strconv."+c.Func+": "+"parsing "+M(c.Num)+": "+d;$s=2;case 2:return e;}return;}var $f={$blk:CO.ptr.prototype.Error,$c:true,$r,c,d,e,$s};return $f;};CO.prototype.Error=function(){return this.$val.Error();};CO.ptr.prototype.Unwrap=function(){var c;c=this;return c.Err;};CO.prototype.Unwrap=function(){return this.$val.Unwrap();};CP=function(c,d){var c,d;return new CO.ptr(c,d,$pkg.ErrSyntax);};CQ=function(c,d){var c,d;return new CO.ptr(c,d,$pkg.ErrRange);};CR=function(c,d,e){var c,d,e;return new CO.ptr(c,d,E.New("invalid base "+DP(e)));};CS=function(c,d,e){var c,d,e;return new CO.ptr(c,d,E.New("invalid bit size "+DP(e)));};CT=function(c,d,e){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;if(c===""){return[new $Uint64(0,0),CP("ParseUint",c)];}f=d===0;g=c;if(2<=d&&d<=36){}else if((d===0)){d=10;if(c.charCodeAt(0)===48){if(c.length>=3&&(CN(c.charCodeAt(1))===98)){d=2;c=$substring(c,2);}else if(c.length>=3&&(CN(c.charCodeAt(1))===111)){d=8;c=$substring(c,2);}else if(c.length>=3&&(CN(c.charCodeAt(1))===120)){d=16;c=$substring(c,2);}else{d=8;c=$substring(c,1);}}}else{return[new $Uint64(0,0),CR("ParseUint",g,d)];}if(e===0){e=32;}else if(e<0||e>64){return[new $Uint64(0,0),CS("ParseUint",g,e)];}h=new $Uint64(0,0);i=d;if(i===(10)){h=new $Uint64(429496729,2576980378);}else if(i===(16)){h=new $Uint64(268435456,0);}else{h=(j=$div64(new $Uint64(4294967295,4294967295),(new $Uint64(0,d)),false),new $Uint64(j.$high+0,j.$low+1));}l=(k=$shiftLeft64(new $Uint64(0,1),((e>>>0))),new $Uint64(k.$high-0,k.$low-1));m=false;n=new $Uint64(0,0);o=(new EA($stringToBytes(c)));p=0;while(true){if(!(p<o.$length)){break;}q=((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]);r=0;if((q===95)&&f){m=true;p++;continue;}else if(48<=q&&q<=57){r=q-48<<24>>>24;}else if(97<=CN(q)&&CN(q)<=122){r=(CN(q)-97<<24>>>24)+10<<24>>>24;}else{return[new $Uint64(0,0),CP("ParseUint",g)];}if(r>=((d<<24>>>24))){return[new $Uint64(0,0),CP("ParseUint",g)];}if((n.$high>h.$high||(n.$high===h.$high&&n.$low>=h.$low))){return[l,CQ("ParseUint",g)];}n=$mul64(n,((new $Uint64(0,d))));t=(s=(new $Uint64(0,r)),new $Uint64(n.$high+s.$high,n.$low+s.$low));if((t.$high<n.$high||(t.$high===n.$high&&t.$low<n.$low))||(t.$high>l.$high||(t.$high===l.$high&&t.$low>l.$low))){return[l,CQ("ParseUint",g)];}n=t;p++;}if(m&&!CV(g)){return[new $Uint64(0,0),CP("ParseUint",g)];}return[n,$ifaceNil];};$pkg.ParseUint=CT;CU=function(c,d,e){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;f=new $Int64(0,0);g=$ifaceNil;if(c===""){h=new $Int64(0,0);i=CP("ParseInt",c);f=h;g=i;return[f,g];}j=c;k=false;if(c.charCodeAt(0)===43){c=$substring(c,1);}else if(c.charCodeAt(0)===45){k=true;c=$substring(c,1);}l=new $Uint64(0,0);m=CT(c,d,e);l=m[0];g=m[1];if(!($interfaceIsEqual(g,$ifaceNil))&&!($interfaceIsEqual($assertType(g,EH).Err,$pkg.ErrRange))){$assertType(g,EH).Func="ParseInt";$assertType(g,EH).Num=j;n=new $Int64(0,0);o=g;f=n;g=o;return[f,g];}if(e===0){e=32;}p=($shiftLeft64(new $Uint64(0,1),(((e-1>>0)>>>0))));if(!k&&(l.$high>p.$high||(l.$high===p.$high&&l.$low>=p.$low))){q=((r=new $Uint64(p.$high-0,p.$low-1),new $Int64(r.$high,r.$low)));s=CQ("ParseInt",j);f=q;g=s;return[f,g];}if(k&&(l.$high>p.$high||(l.$high===p.$high&&l.$low>p.$low))){t=(u=(new $Int64(p.$high,p.$low)),new $Int64(-u.$high,-u.$low));v=CQ("ParseInt",j);f=t;g=v;return[f,g];}w=(new $Int64(l.$high,l.$low));if(k){w=new $Int64(-w.$high,-w.$low);}x=w;y=$ifaceNil;f=x;g=y;return[f,g];};$pkg.ParseInt=CU;CV=function(c){var c,d,e,f;d=94;e=0;if(c.length>=1&&((c.charCodeAt(0)===45)||(c.charCodeAt(0)===43))){c=$substring(c,1);}f=false;if(c.length>=2&&(c.charCodeAt(0)===48)&&((CN(c.charCodeAt(1))===98)||(CN(c.charCodeAt(1))===111)||(CN(c.charCodeAt(1))===120))){e=2;d=48;f=CN(c.charCodeAt(1))===120;}while(true){if(!(e<c.length)){break;}if(48<=c.charCodeAt(e)&&c.charCodeAt(e)<=57||f&&97<=CN(c.charCodeAt(e))&&CN(c.charCodeAt(e))<=102){d=48;e=e+(1)>>0;continue;}if(c.charCodeAt(e)===95){if(!((d===48))){return false;}d=95;e=e+(1)>>0;continue;}if(d===95){return false;}d=33;e=e+(1)>>0;}return!((d===95));};CX=function(c,d){var c,d,e,f,g;e=d.length;if(e>c.length){e=c.length;}f=0;while(true){if(!(f<e)){break;}g=c.charCodeAt(f);if(65<=g&&g<=90){g=g+(32)<<24>>>24;}if(!((g===d.charCodeAt(f)))){return f;}f=f+(1)>>0;}return e;};CY=function(c){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;d=0;e=0;f=false;if(c.length===0){g=0;h=0;i=false;d=g;e=h;f=i;return[d,e,f];}j=1;k=0;l=c.charCodeAt(0);if((l===(43))||(l===(45))){if(c.charCodeAt(0)===45){j=-1;}k=1;c=$substring(c,1);m=CX(c,"infinity");if(3<m&&m<8){m=3;}if((m===3)||(m===8)){n=C.Inf(j);o=k+m>>0;p=true;d=n;e=o;f=p;return[d,e,f];}}else if((l===(105))||(l===(73))){m=CX(c,"infinity");if(3<m&&m<8){m=3;}if((m===3)||(m===8)){q=C.Inf(j);r=k+m>>0;s=true;d=q;e=r;f=s;return[d,e,f];}}else if((l===(110))||(l===(78))){if(CX(c,"nan")===3){t=C.NaN();u=3;v=true;d=t;e=u;f=v;return[d,e,f];}}w=0;x=0;y=false;d=w;e=x;f=y;return[d,e,f];};CC.ptr.prototype.set=function(c){var c,d,e,f,g,h,i,j,k,l;d=false;e=this;f=0;e.neg=false;e.trunc=false;if(f>=c.length){return d;}if((c.charCodeAt(f)===43)){f=f+(1)>>0;}else if((c.charCodeAt(f)===45)){e.neg=true;f=f+(1)>>0;}g=false;h=false;while(true){if(!(f<c.length)){break;}if((c.charCodeAt(f)===95)){f=f+(1)>>0;continue;}else if((c.charCodeAt(f)===46)){if(g){return d;}g=true;e.dp=e.nd;f=f+(1)>>0;continue;}else if(48<=c.charCodeAt(f)&&c.charCodeAt(f)<=57){h=true;if((c.charCodeAt(f)===48)&&(e.nd===0)){e.dp=e.dp-(1)>>0;f=f+(1)>>0;continue;}if(e.nd<800){(i=e.d,j=e.nd,((j<0||j>=i.length)?($throwRuntimeError("index out of range"),undefined):i[j]=c.charCodeAt(f)));e.nd=e.nd+(1)>>0;}else if(!((c.charCodeAt(f)===48))){e.trunc=true;}f=f+(1)>>0;continue;}break;}if(!h){return d;}if(!g){e.dp=e.nd;}if(f<c.length&&(CN(c.charCodeAt(f))===101)){f=f+(1)>>0;if(f>=c.length){return d;}k=1;if(c.charCodeAt(f)===43){f=f+(1)>>0;}else if(c.charCodeAt(f)===45){f=f+(1)>>0;k=-1;}if(f>=c.length||c.charCodeAt(f)<48||c.charCodeAt(f)>57){return d;}l=0;while(true){if(!(f<c.length&&(48<=c.charCodeAt(f)&&c.charCodeAt(f)<=57||(c.charCodeAt(f)===95)))){break;}if(c.charCodeAt(f)===95){f=f+(1)>>0;continue;}if(l<10000){l=(($imul(l,10))+((c.charCodeAt(f)>>0))>>0)-48>>0;}f=f+(1)>>0;}e.dp=e.dp+(($imul(l,k)))>>0;}if(!((f===c.length))){return d;}d=true;return d;};CC.prototype.set=function(c){return this.$val.set(c);};CZ=function(c){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;d=new $Uint64(0,0);e=0;f=false;g=false;h=false;i=0;j=false;k=false;if(i>=c.length){return[d,e,f,g,h,i,j];}if((c.charCodeAt(i)===43)){i=i+(1)>>0;}else if((c.charCodeAt(i)===45)){f=true;i=i+(1)>>0;}l=new $Uint64(0,10);m=19;n=101;if((i+2>>0)<c.length&&(c.charCodeAt(i)===48)&&(CN(c.charCodeAt((i+1>>0)))===120)){l=new $Uint64(0,16);m=16;i=i+(2)>>0;n=112;h=true;}o=false;p=false;q=0;r=0;s=0;loop:while(true){if(!(i<c.length)){break;}t=c.charCodeAt(i);u=true;if(u===((t===95))){k=true;i=i+(1)>>0;continue;}else if(u===((t===46))){if(o){break loop;}o=true;s=q;i=i+(1)>>0;continue;}else if(u===(48<=t&&t<=57)){p=true;if((t===48)&&(q===0)){s=s-(1)>>0;i=i+(1)>>0;continue;}q=q+(1)>>0;if(r<m){d=$mul64(d,(l));d=(v=(new $Uint64(0,(t-48<<24>>>24))),new $Uint64(d.$high+v.$high,d.$low+v.$low));r=r+(1)>>0;}else if(!((t===48))){g=true;}i=i+(1)>>0;continue;}else if(u===((l.$high===0&&l.$low===16)&&97<=CN(t)&&CN(t)<=102)){p=true;q=q+(1)>>0;if(r<m){d=$mul64(d,(new $Uint64(0,16)));d=(w=(new $Uint64(0,((CN(t)-97<<24>>>24)+10<<24>>>24))),new $Uint64(d.$high+w.$high,d.$low+w.$low));r=r+(1)>>0;}else{g=true;}i=i+(1)>>0;continue;}break;}if(!p){return[d,e,f,g,h,i,j];}if(!o){s=q;}if((l.$high===0&&l.$low===16)){s=$imul(s,(4));r=$imul(r,(4));}if(i<c.length&&(CN(c.charCodeAt(i))===n)){i=i+(1)>>0;if(i>=c.length){return[d,e,f,g,h,i,j];}x=1;if(c.charCodeAt(i)===43){i=i+(1)>>0;}else if(c.charCodeAt(i)===45){i=i+(1)>>0;x=-1;}if(i>=c.length||c.charCodeAt(i)<48||c.charCodeAt(i)>57){return[d,e,f,g,h,i,j];}y=0;while(true){if(!(i<c.length&&(48<=c.charCodeAt(i)&&c.charCodeAt(i)<=57||(c.charCodeAt(i)===95)))){break;}if(c.charCodeAt(i)===95){k=true;i=i+(1)>>0;continue;}if(y<10000){y=(($imul(y,10))+((c.charCodeAt(i)>>0))>>0)-48>>0;}i=i+(1)>>0;}s=s+(($imul(y,x)))>>0;}else if((l.$high===0&&l.$low===16)){return[d,e,f,g,h,i,j];}if(!((d.$high===0&&d.$low===0))){e=s-r>>0;}if(k&&!CV($substring(c,0,i))){return[d,e,f,g,h,i,j];}j=true;return[d,e,f,g,h,i,j];};CC.ptr.prototype.floatBits=function(c){var aa,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s;$s=$s||0;s:while(true){switch($s){case 0:d=new $Uint64(0,0);e=false;f=this;g=0;h=new $Uint64(0,0);if(f.nd===0){$s=1;continue;}$s=2;continue;case 1:h=new $Uint64(0,0);g=c.bias;$s=3;continue;case 2:if(f.dp>310){$s=4;continue;}$s=5;continue;case 4:$s=6;continue;case 5:if(f.dp<-330){$s=7;continue;}$s=8;continue;case 7:h=new $Uint64(0,0);g=c.bias;$s=3;continue;case 8:g=0;while(true){if(!(f.dp>0)){break;}i=0;if(f.dp>=DA.$length){i=27;}else{i=(j=f.dp,((j<0||j>=DA.$length)?($throwRuntimeError("index out of range"),undefined):DA.$array[DA.$offset+j]));}f.Shift(-i);g=g+(i)>>0;}while(true){if(!(f.dp<0||(f.dp===0)&&f.d[0]<53)){break;}k=0;if(-f.dp>=DA.$length){k=27;}else{k=(l=-f.dp,((l<0||l>=DA.$length)?($throwRuntimeError("index out of range"),undefined):DA.$array[DA.$offset+l]));}f.Shift(k);g=g-(k)>>0;}g=g-(1)>>0;if(g<(c.bias+1>>0)){m=(c.bias+1>>0)-g>>0;f.Shift(-m);g=g+(m)>>0;}if((g-c.bias>>0)>=(((n=c.expbits,n<32?(1<<n):0)>>0)-1>>0)){$s=9;continue;}$s=10;continue;case 9:$s=6;continue;case 10:f.Shift((((1+c.mantbits>>>0)>>0)));h=f.RoundedInteger();if((o=$shiftLeft64(new $Uint64(0,2),c.mantbits),(h.$high===o.$high&&h.$low===o.$low))){$s=11;continue;}$s=12;continue;case 11:h=$shiftRightUint64(h,(1));g=g+(1)>>0;if((g-c.bias>>0)>=(((p=c.expbits,p<32?(1<<p):0)>>0)-1>>0)){$s=13;continue;}$s=14;continue;case 13:$s=6;continue;case 14:case 12:if((q=(r=$shiftLeft64(new $Uint64(0,1),c.mantbits),new $Uint64(h.$high&r.$high,(h.$low&r.$low)>>>0)),(q.$high===0&&q.$low===0))){g=c.bias;}$s=3;continue;case 6:h=new $Uint64(0,0);g=(((s=c.expbits,s<32?(1<<s):0)>>0)-1>>0)+c.bias>>0;e=true;case 3:v=(t=(u=$shiftLeft64(new $Uint64(0,1),c.mantbits),new $Uint64(u.$high-0,u.$low-1)),new $Uint64(h.$high&t.$high,(h.$low&t.$low)>>>0));v=(w=$shiftLeft64((new $Uint64(0,(((g-c.bias>>0))&((((x=c.expbits,x<32?(1<<x):0)>>0)-1>>0))))),c.mantbits),new $Uint64(v.$high|w.$high,(v.$low|w.$low)>>>0));if(f.neg){v=(y=$shiftLeft64($shiftLeft64(new $Uint64(0,1),c.mantbits),c.expbits),new $Uint64(v.$high|y.$high,(v.$low|y.$low)>>>0));}z=v;aa=e;d=z;e=aa;$s=-1;return[d,e];}return;}};CC.prototype.floatBits=function(c){return this.$val.floatBits(c);};DD=function(c,d,e){var c,d,e,f,g,h,i,j,k,l,m,n,o,p;f=0;g=false;if(!((h=$shiftRightUint64(c,BL.mantbits),(h.$high===0&&h.$low===0)))){return[f,g];}f=($flatten64(c));if(e){f=-f;}if((d===0)){i=f;j=true;f=i;g=j;return[f,g];}else if(d>0&&d<=37){if(d>22){f=f*((k=d-22>>0,((k<0||k>=DB.$length)?($throwRuntimeError("index out of range"),undefined):DB.$array[DB.$offset+k])));d=22;}if(f>1e+15||f<-1e+15){return[f,g];}l=f*((d<0||d>=DB.$length)?($throwRuntimeError("index out of range"),undefined):DB.$array[DB.$offset+d]);m=true;f=l;g=m;return[f,g];}else if(d<0&&d>=-22){n=f/(o=-d,((o<0||o>=DB.$length)?($throwRuntimeError("index out of range"),undefined):DB.$array[DB.$offset+o]));p=true;f=n;g=p;return[f,g];}return[f,g];};DE=function(c,d,e){var c,d,e,f,g,h,i,j,k,l,m,n,o,p;f=0;g=false;if(!((h=$shiftRightUint64(c,BK.mantbits),(h.$high===0&&h.$low===0)))){return[f,g];}f=($flatten64(c));if(e){f=-f;}if((d===0)){i=f;j=true;f=i;g=j;return[f,g];}else if(d>0&&d<=17){if(d>10){f=$fround(f*((k=d-10>>0,((k<0||k>=DC.$length)?($throwRuntimeError("index out of range"),undefined):DC.$array[DC.$offset+k]))));d=10;}if(f>1e+07||f<-1e+07){return[f,g];}l=$fround(f*((d<0||d>=DC.$length)?($throwRuntimeError("index out of range"),undefined):DC.$array[DC.$offset+d]));m=true;f=l;g=m;return[f,g];}else if(d<0&&d>=-10){n=$fround(f/(o=-d,((o<0||o>=DC.$length)?($throwRuntimeError("index out of range"),undefined):DC.$array[DC.$offset+o])));p=true;f=n;g=p;return[f,g];}return[f,g];};DF=function(c,d,e,f,g,h){var aa,ab,ac,ad,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j=(((i=d.expbits,i<32?(1<<i):0)>>0)+d.bias>>0)-2>>0;k=d.bias+1>>0;f=f+(((d.mantbits>>0)))>>0;while(true){if(!(!((e.$high===0&&e.$low===0))&&(l=$shiftRightUint64(e,((d.mantbits+2>>>0))),(l.$high===0&&l.$low===0)))){break;}e=$shiftLeft64(e,(1));f=f-(1)>>0;}if(h){e=(m=new $Uint64(0,1),new $Uint64(e.$high|m.$high,(e.$low|m.$low)>>>0));}while(true){if(!(!((n=$shiftRightUint64(e,(((1+d.mantbits>>>0)+2>>>0))),(n.$high===0&&n.$low===0))))){break;}e=(o=$shiftRightUint64(e,1),p=new $Uint64(e.$high&0,(e.$low&1)>>>0),new $Uint64(o.$high|p.$high,(o.$low|p.$low)>>>0));f=f+(1)>>0;}while(true){if(!((e.$high>0||(e.$high===0&&e.$low>1))&&f<(k-2>>0))){break;}e=(q=$shiftRightUint64(e,1),r=new $Uint64(e.$high&0,(e.$low&1)>>>0),new $Uint64(q.$high|r.$high,(q.$low|r.$low)>>>0));f=f+(1)>>0;}s=new $Uint64(e.$high&0,(e.$low&3)>>>0);e=$shiftRightUint64(e,(2));s=(t=new $Uint64(e.$high&0,(e.$low&1)>>>0),new $Uint64(s.$high|t.$high,(s.$low|t.$low)>>>0));f=f+(2)>>0;if((s.$high===0&&s.$low===3)){e=(u=new $Uint64(0,1),new $Uint64(e.$high+u.$high,e.$low+u.$low));if((v=$shiftLeft64(new $Uint64(0,1),((1+d.mantbits>>>0))),(e.$high===v.$high&&e.$low===v.$low))){e=$shiftRightUint64(e,(1));f=f+(1)>>0;}}if((w=$shiftRightUint64(e,d.mantbits),(w.$high===0&&w.$low===0))){f=d.bias;}x=$ifaceNil;if(f>j){e=$shiftLeft64(new $Uint64(0,1),d.mantbits);f=j+1>>0;x=CQ("ParseFloat",c);}aa=(y=(z=$shiftLeft64(new $Uint64(0,1),d.mantbits),new $Uint64(z.$high-0,z.$low-1)),new $Uint64(e.$high&y.$high,(e.$low&y.$low)>>>0));aa=(ab=$shiftLeft64((new $Uint64(0,(((f-d.bias>>0))&((((ac=d.expbits,ac<32?(1<<ac):0)>>0)-1>>0))))),d.mantbits),new $Uint64(aa.$high|ab.$high,(aa.$low|ab.$low)>>>0));if(g){aa=(ad=$shiftLeft64($shiftLeft64(new $Uint64(0,1),d.mantbits),d.expbits),new $Uint64(aa.$high|ad.$high,(aa.$low|ad.$low)>>>0));}if(d===BK){return[(C.Float32frombits(((aa.$low>>>0)))),x];}return[C.Float64frombits(aa),x];};DG=function(c){var aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;d=0;e=0;f=$ifaceNil;g=CY(c);h=g[0];i=g[1];j=g[2];if(j){k=($fround(h));l=i;m=$ifaceNil;d=k;e=l;f=m;return[d,e,f];}n=CZ(c);o=n[0];p=n[1];q=n[2];r=n[3];s=n[4];e=n[5];t=n[6];if(!t){u=0;v=e;w=CP("ParseFloat",c);d=u;e=v;f=w;return[d,e,f];}if(s){x=DF($substring(c,0,e),BK,o,p,q,r);y=x[0];z=x[1];aa=($fround(y));ab=e;ac=z;d=aa;e=ab;f=ac;return[d,e,f];}if(CW){if(!r){ad=DE(o,p,q);ae=ad[0];af=ad[1];if(af){ag=ae;ah=e;ai=$ifaceNil;d=ag;e=ah;f=ai;return[d,e,f];}}aj=CA(o,p,q);ak=aj[0];al=aj[1];if(al){if(!r){am=ak;an=e;ao=$ifaceNil;d=am;e=an;f=ao;return[d,e,f];}ap=CA(new $Uint64(o.$high+0,o.$low+1),p,q);aq=ap[0];ar=ap[1];if(ar&&(ak===aq)){as=ak;at=e;au=$ifaceNil;d=as;e=at;f=au;return[d,e,f];}}}av=new CC.ptr(EG.zero(),0,0,false,false);if(!av.set($substring(c,0,e))){aw=0;ax=e;ay=CP("ParseFloat",c);d=aw;e=ax;f=ay;return[d,e,f];}az=av.floatBits(BK);ba=az[0];bb=az[1];d=C.Float32frombits(((ba.$low>>>0)));if(bb){f=CQ("ParseFloat",c);}bc=d;bd=e;be=f;d=bc;e=bd;f=be;return[d,e,f];};DH=function(c){var aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;d=0;e=0;f=$ifaceNil;g=CY(c);h=g[0];i=g[1];j=g[2];if(j){k=h;l=i;m=$ifaceNil;d=k;e=l;f=m;return[d,e,f];}n=CZ(c);o=n[0];p=n[1];q=n[2];r=n[3];s=n[4];e=n[5];t=n[6];if(!t){u=0;v=e;w=CP("ParseFloat",c);d=u;e=v;f=w;return[d,e,f];}if(s){x=DF($substring(c,0,e),BL,o,p,q,r);y=x[0];z=x[1];aa=y;ab=e;ac=z;d=aa;e=ab;f=ac;return[d,e,f];}if(CW){if(!r){ad=DD(o,p,q);ae=ad[0];af=ad[1];if(af){ag=ae;ah=e;ai=$ifaceNil;d=ag;e=ah;f=ai;return[d,e,f];}}aj=BZ(o,p,q);ak=aj[0];al=aj[1];if(al){if(!r){am=ak;an=e;ao=$ifaceNil;d=am;e=an;f=ao;return[d,e,f];}ap=BZ(new $Uint64(o.$high+0,o.$low+1),p,q);aq=ap[0];ar=ap[1];if(ar&&(ak===aq)){as=ak;at=e;au=$ifaceNil;d=as;e=at;f=au;return[d,e,f];}}}av=new CC.ptr(EG.zero(),0,0,false,false);if(!av.set($substring(c,0,e))){aw=0;ax=e;ay=CP("ParseFloat",c);d=aw;e=ax;f=ay;return[d,e,f];}az=av.floatBits(BL);ba=az[0];bb=az[1];d=C.Float64frombits(ba);if(bb){f=CQ("ParseFloat",c);}bc=d;bd=e;be=f;d=bc;e=bd;f=be;return[d,e,f];};DI=function(c,d){var c,d,e,f,g,h;e=DJ(c,d);f=e[0];g=e[1];h=e[2];if(!((g===c.length))&&($interfaceIsEqual(h,$ifaceNil)||!($interfaceIsEqual($assertType(h,EH).Err,$pkg.ErrSyntax)))){return[0,CP("ParseFloat",c)];}return[f,h];};$pkg.ParseFloat=DI;DJ=function(c,d){var c,d,e,f,g,h;if(d===32){e=DG(c);f=e[0];g=e[1];h=e[2];return[(f),g,h];}return DH(c);};DN=function(c){var c;if(c){return"true";}return"false";};$pkg.FormatBool=DN;DP=function(c){var c;return $internalize(c.toString(),$String);};$pkg.Itoa=DP;DQ=function(c){var c,d,e,f,g;if(c.length===0){return[0,CP("Atoi",c)];}d=0;while(true){if(!(d<c.length)){break;}e=c.charCodeAt(d);if(e<48||e>57){if(!((e===43))&&!((e===45))){return[0,CP("Atoi",c)];}}d=d+(1)>>0;}f=$global.Number($externalize(c,$String),10);if(!!!($global.isFinite(f))){return[0,CP("Atoi",c)];}g=$parseFloat(f);if(g>2.147483647e+09){return[2147483647,CQ("Atoi",c)];}else if(g<-2.147483648e+09){return[-2147483648,CQ("Atoi",c)];}return[$parseInt(f)>>0,$ifaceNil];};$pkg.Atoi=DQ;EI.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Assign",name:"Assign",pkg:"",typ:$funcType([$Uint64],[],false)},{prop:"Shift",name:"Shift",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Round",name:"Round",pkg:"",typ:$funcType([$Int],[],false)},{prop:"RoundDown",name:"RoundDown",pkg:"",typ:$funcType([$Int],[],false)},{prop:"RoundUp",name:"RoundUp",pkg:"",typ:$funcType([$Int],[],false)},{prop:"RoundedInteger",name:"RoundedInteger",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"set",name:"set",pkg:"strconv",typ:$funcType([$String],[$Bool],false)},{prop:"floatBits",name:"floatBits",pkg:"strconv",typ:$funcType([ED],[$Uint64,$Bool],false)}];EH.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Unwrap",name:"Unwrap",pkg:"",typ:$funcType([],[$error],false)}];BJ.init("strconv",[{prop:"mantbits",name:"mantbits",embedded:false,exported:false,typ:$Uint,tag:""},{prop:"expbits",name:"expbits",embedded:false,exported:false,typ:$Uint,tag:""},{prop:"bias",name:"bias",embedded:false,exported:false,typ:$Int,tag:""}]);BS.init("strconv",[{prop:"d",name:"d",embedded:false,exported:false,typ:EA,tag:""},{prop:"nd",name:"nd",embedded:false,exported:false,typ:$Int,tag:""},{prop:"dp",name:"dp",embedded:false,exported:false,typ:$Int,tag:""},{prop:"neg",name:"neg",embedded:false,exported:false,typ:$Bool,tag:""}]);CC.init("strconv",[{prop:"d",name:"d",embedded:false,exported:false,typ:EG,tag:""},{prop:"nd",name:"nd",embedded:false,exported:false,typ:$Int,tag:""},{prop:"dp",name:"dp",embedded:false,exported:false,typ:$Int,tag:""},{prop:"neg",name:"neg",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"trunc",name:"trunc",embedded:false,exported:false,typ:$Bool,tag:""}]);CG.init("strconv",[{prop:"delta",name:"delta",embedded:false,exported:false,typ:$Int,tag:""},{prop:"cutoff",name:"cutoff",embedded:false,exported:false,typ:$String,tag:""}]);CO.init("",[{prop:"Func",name:"Func",embedded:false,exported:true,typ:$String,tag:""},{prop:"Num",name:"Num",embedded:false,exported:true,typ:$String,tag:""},{prop:"Err",name:"Err",embedded:false,exported:true,typ:$error,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=E.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}AQ=new DT([32,126,161,887,890,895,900,1366,1369,1418,1421,1479,1488,1514,1519,1524,1542,1563,1566,1805,1808,1866,1869,1969,1984,2042,2045,2093,2096,2139,2142,2154,2208,2247,2259,2444,2447,2448,2451,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2531,2534,2558,2561,2570,2575,2576,2579,2617,2620,2626,2631,2632,2635,2637,2641,2641,2649,2654,2662,2678,2689,2745,2748,2765,2768,2768,2784,2787,2790,2801,2809,2828,2831,2832,2835,2873,2876,2884,2887,2888,2891,2893,2901,2903,2908,2915,2918,2935,2946,2954,2958,2965,2969,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3021,3024,3024,3031,3031,3046,3066,3072,3129,3133,3149,3157,3162,3168,3171,3174,3183,3191,3257,3260,3277,3285,3286,3294,3299,3302,3314,3328,3407,3412,3427,3430,3478,3482,3517,3520,3526,3530,3530,3535,3551,3558,3567,3570,3572,3585,3642,3647,3675,3713,3773,3776,3789,3792,3801,3804,3807,3840,3948,3953,4058,4096,4295,4301,4301,4304,4685,4688,4701,4704,4749,4752,4789,4792,4805,4808,4885,4888,4954,4957,4988,4992,5017,5024,5109,5112,5117,5120,5788,5792,5880,5888,5908,5920,5942,5952,5971,5984,6003,6016,6109,6112,6121,6128,6137,6144,6157,6160,6169,6176,6264,6272,6314,6320,6389,6400,6443,6448,6459,6464,6464,6468,6509,6512,6516,6528,6571,6576,6601,6608,6618,6622,6683,6686,6780,6783,6793,6800,6809,6816,6829,6832,6848,6912,6987,6992,7036,7040,7155,7164,7223,7227,7241,7245,7304,7312,7354,7357,7367,7376,7418,7424,7957,7960,7965,7968,8005,8008,8013,8016,8061,8064,8147,8150,8175,8178,8190,8208,8231,8240,8286,8304,8305,8308,8348,8352,8383,8400,8432,8448,8587,8592,9254,9280,9290,9312,11123,11126,11507,11513,11559,11565,11565,11568,11623,11631,11632,11647,11670,11680,11858,11904,12019,12032,12245,12272,12283,12289,12438,12441,12543,12549,12771,12784,40956,40960,42124,42128,42182,42192,42539,42560,42743,42752,42943,42946,42954,42997,43052,43056,43065,43072,43127,43136,43205,43214,43225,43232,43347,43359,43388,43392,43481,43486,43574,43584,43597,43600,43609,43612,43714,43739,43766,43777,43782,43785,43790,43793,43798,43808,43883,43888,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64449,64467,64831,64848,64911,64914,64967,65008,65021,65024,65049,65056,65131,65136,65276,65281,65470,65474,65479,65482,65487,65490,65495,65498,65500,65504,65518,65532,65533]);AR=new DT([173,907,909,930,1328,1424,1757,2111,2143,2229,2274,2436,2473,2481,2526,2564,2601,2609,2612,2615,2621,2653,2692,2702,2706,2729,2737,2740,2758,2762,2816,2820,2857,2865,2868,2910,2948,2961,2971,2973,3017,3085,3089,3113,3141,3145,3159,3213,3217,3241,3252,3269,3273,3295,3312,3341,3345,3397,3401,3456,3460,3506,3516,3541,3543,3715,3717,3723,3748,3750,3781,3783,3912,3992,4029,4045,4294,4681,4695,4697,4745,4785,4799,4801,4823,4881,5760,5901,5997,6001,6431,6751,7674,8024,8026,8028,8030,8117,8133,8156,8181,8335,11158,11311,11359,11558,11687,11695,11703,11711,11719,11727,11735,11743,11930,12352,12592,12687,12831,43470,43519,43815,43823,64311,64317,64319,64322,64325,65107,65127,65141,65511]);AS=new DU([65536,65613,65616,65629,65664,65786,65792,65794,65799,65843,65847,65948,65952,65952,66000,66045,66176,66204,66208,66256,66272,66299,66304,66339,66349,66378,66384,66426,66432,66499,66504,66517,66560,66717,66720,66729,66736,66771,66776,66811,66816,66855,66864,66915,66927,66927,67072,67382,67392,67413,67424,67431,67584,67589,67592,67640,67644,67644,67647,67742,67751,67759,67808,67829,67835,67867,67871,67897,67903,67903,67968,68023,68028,68047,68050,68102,68108,68149,68152,68154,68159,68168,68176,68184,68192,68255,68288,68326,68331,68342,68352,68405,68409,68437,68440,68466,68472,68497,68505,68508,68521,68527,68608,68680,68736,68786,68800,68850,68858,68903,68912,68921,69216,69293,69296,69297,69376,69415,69424,69465,69552,69579,69600,69622,69632,69709,69714,69743,69759,69825,69840,69864,69872,69881,69888,69959,69968,70006,70016,70132,70144,70206,70272,70313,70320,70378,70384,70393,70400,70412,70415,70416,70419,70468,70471,70472,70475,70477,70480,70480,70487,70487,70493,70499,70502,70508,70512,70516,70656,70753,70784,70855,70864,70873,71040,71093,71096,71133,71168,71236,71248,71257,71264,71276,71296,71352,71360,71369,71424,71450,71453,71467,71472,71487,71680,71739,71840,71922,71935,71942,71945,71945,71948,71992,71995,72006,72016,72025,72096,72103,72106,72151,72154,72164,72192,72263,72272,72354,72384,72440,72704,72773,72784,72812,72816,72847,72850,72886,72960,73014,73018,73031,73040,73049,73056,73112,73120,73129,73440,73464,73648,73648,73664,73713,73727,74649,74752,74868,74880,75075,77824,78894,82944,83526,92160,92728,92736,92777,92782,92783,92880,92909,92912,92917,92928,92997,93008,93047,93053,93071,93760,93850,93952,94026,94031,94087,94095,94111,94176,94180,94192,94193,94208,100343,100352,101589,101632,101640,110592,110878,110928,110930,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,113820,113823,118784,119029,119040,119078,119081,119154,119163,119272,119296,119365,119520,119539,119552,119638,119648,119672,119808,119967,119970,119970,119973,119974,119977,120074,120077,120134,120138,120485,120488,120779,120782,121483,121499,121519,122880,122904,122907,122922,123136,123180,123184,123197,123200,123209,123214,123215,123584,123641,123647,123647,124928,125124,125127,125142,125184,125259,125264,125273,125278,125279,126065,126132,126209,126269,126464,126500,126503,126523,126530,126530,126535,126548,126551,126564,126567,126619,126625,126651,126704,126705,126976,127019,127024,127123,127136,127150,127153,127221,127232,127405,127462,127490,127504,127547,127552,127560,127568,127569,127584,127589,127744,128727,128736,128748,128752,128764,128768,128883,128896,128984,128992,129003,129024,129035,129040,129095,129104,129113,129120,129159,129168,129197,129200,129201,129280,129619,129632,129645,129648,129652,129656,129658,129664,129670,129680,129704,129712,129718,129728,129730,129744,129750,129792,129994,130032,130041,131072,173789,173824,177972,177984,178205,178208,183969,183984,191456,194560,195101,196608,201546,917760,917999]);AT=new DT([12,39,59,62,399,926,2057,2102,2134,2291,2564,2580,2584,3711,3754,4285,4405,4576,4626,4743,4745,4750,4766,4868,4905,4913,4916,4922,5212,6420,6423,6454,7177,7223,7336,7431,7434,7483,7486,7526,7529,7567,7570,9327,27231,27482,27490,54357,54429,54445,54458,54460,54468,54534,54549,54557,54586,54591,54597,54609,55968,57351,57378,57381,60932,60960,60963,60968,60979,60984,60986,61000,61002,61004,61008,61011,61016,61018,61020,61022,61024,61027,61035,61043,61048,61053,61055,61066,61092,61098,61632,61648,63865,63948,64403]);AU=new DT([160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288]);AX=$toNativeArray($kindUint64,[new $Uint64(0,1),new $Uint64(0,10),new $Uint64(0,100),new $Uint64(0,1000),new $Uint64(0,10000),new $Uint64(0,100000),new $Uint64(0,1000000),new $Uint64(0,10000000),new $Uint64(0,100000000),new $Uint64(0,1000000000),new $Uint64(2,1410065408),new $Uint64(23,1215752192),new $Uint64(232,3567587328),new $Uint64(2328,1316134912),new $Uint64(23283,276447232),new $Uint64(232830,2764472320),new $Uint64(2328306,1874919424),new $Uint64(23283064,1569325056),new $Uint64(232830643,2808348672),new $Uint64(2328306436,2313682944)]);BK=new BJ.ptr(23,8,-127);BL=new BJ.ptr(52,11,-1023);CB=$toNativeArray($kindArray,[$toNativeArray($kindUint64,[new $Uint64(389204073,3445679187),new $Uint64(4203730336,136053384)]),$toNativeArray($kindUint64,[new $Uint64(243252546,542936756),new $Uint64(2627331460,85033365)]),$toNativeArray($kindUint64,[new $Uint64(1377807506,2826154593),new $Uint64(3284164325,106291706)]),$toNativeArray($kindUint64,[new $Uint64(3869743031,1385209593),new $Uint64(4105205406,1206606456)]),$toNativeArray($kindUint64,[new $Uint64(2418589394,2476368732),new $Uint64(2565753378,3975354507)]),$toNativeArray($kindUint64,[new $Uint64(1949494919,947977267),new $Uint64(3207191723,2821709486)]),$toNativeArray($kindUint64,[new $Uint64(289385001,111229759),new $Uint64(4008989654,2453395034)]),$toNativeArray($kindUint64,[new $Uint64(1254607449,2753873159),new $Uint64(2505618534,459630072)]),$toNativeArray($kindUint64,[new $Uint64(1568259312,221115977),new $Uint64(3132023167,2722021238)]),$toNativeArray($kindUint64,[new $Uint64(4107807788,276394972),new $Uint64(3915028959,2328784723)]),$toNativeArray($kindUint64,[new $Uint64(2030508955,2320230505),new $Uint64(2446893099,3066103188)]),$toNativeArray($kindUint64,[new $Uint64(2538136194,1826546308),new $Uint64(3058616374,2758887161)]),$toNativeArray($kindUint64,[new $Uint64(4246412067,135699237),new $Uint64(3823270468,1301125303)]),$toNativeArray($kindUint64,[new $Uint64(4264620277,3842908407),new $Uint64(2389544042,2960686962)]),$toNativeArray($kindUint64,[new $Uint64(3183291699,1582410037),new $Uint64(2986930053,1553375055)]),$toNativeArray($kindUint64,[new $Uint64(2905372800,904270722),new $Uint64(3733662566,3015460643)]),$toNativeArray($kindUint64,[new $Uint64(1278987088,565169201),new $Uint64(2333539104,810921078)]),$toNativeArray($kindUint64,[new $Uint64(3746217508,706461501),new $Uint64(2916923880,1013651347)]),$toNativeArray($kindUint64,[new $Uint64(3609030061,883076877),new $Uint64(3646154850,1267064184)]),$toNativeArray($kindUint64,[new $Uint64(2255643788,1088793960),new $Uint64(2278846781,1865656939)]),$toNativeArray($kindUint64,[new $Uint64(1745812911,1360992450),new $Uint64(2848558476,3405812998)]),$toNativeArray($kindUint64,[new $Uint64(34782491,627498738),new $Uint64(3560698095,4257266248)]),$toNativeArray($kindUint64,[new $Uint64(21739056,4150283095),new $Uint64(2225436309,4271404141)]),$toNativeArray($kindUint64,[new $Uint64(1100915645,892886573),new $Uint64(2781795387,2118029704)]),$toNativeArray($kindUint64,[new $Uint64(1376144556,2189850041),new $Uint64(3477244234,1573795306)]),$toNativeArray($kindUint64,[new $Uint64(1933832171,3516139923),new $Uint64(2173277646,2057363890)]),$toNativeArray($kindUint64,[new $Uint64(269806566,3321433080),new $Uint64(2716597058,424221215)]),$toNativeArray($kindUint64,[new $Uint64(3558483680,2004307702),new $Uint64(3395746322,2677760166)]),$toNativeArray($kindUint64,[new $Uint64(2300620952,2505384628),new $Uint64(4244682903,1199716560)]),$toNativeArray($kindUint64,[new $Uint64(1437888095,1565865392),new $Uint64(2652926814,2360435586)]),$toNativeArray($kindUint64,[new $Uint64(3944843767,883589917),new $Uint64(3316158518,803060834)]),$toNativeArray($kindUint64,[new $Uint64(2783571061,30745572),new $Uint64(4145198147,3151309691)]),$toNativeArray($kindUint64,[new $Uint64(1202861001,556086894),new $Uint64(2590748842,1432697645)]),$toNativeArray($kindUint64,[new $Uint64(2577318075,1768850442),new $Uint64(3238436052,3938355704)]),$toNativeArray($kindUint64,[new $Uint64(3221647594,1137321229),new $Uint64(4048045066,627977334)]),$toNativeArray($kindUint64,[new $Uint64(939787922,1784567592),new $Uint64(2530028166,1466227658)]),$toNativeArray($kindUint64,[new $Uint64(3322218551,83225842),new $Uint64(3162535207,3980268220)]),$toNativeArray($kindUint64,[new $Uint64(4152773188,3325257774),new $Uint64(3953169009,3901593451)]),$toNativeArray($kindUint64,[new $Uint64(2058612330,4225769757),new $Uint64(2470730631,827883171)]),$toNativeArray($kindUint64,[new $Uint64(1499523589,3134728548),new $Uint64(3088413288,4256079436)]),$toNativeArray($kindUint64,[new $Uint64(1874404487,697185213),new $Uint64(3860516611,1025131999)]),$toNativeArray($kindUint64,[new $Uint64(2782115540,2046353494),new $Uint64(2412822882,103836587)]),$toNativeArray($kindUint64,[new $Uint64(2403902601,2557941868),new $Uint64(3016028602,2277279382)]),$toNativeArray($kindUint64,[new $Uint64(857394603,4271169159),new $Uint64(3770035753,699115580)]),$toNativeArray($kindUint64,[new $Uint64(2683355275,2132609812),new $Uint64(2356272345,3121301797)]),$toNativeArray($kindUint64,[new $Uint64(132968622,1592020441),new $Uint64(2945340432,680401775)]),$toNativeArray($kindUint64,[new $Uint64(3387436249,4137509200),new $Uint64(3681675540,850502218)]),$toNativeArray($kindUint64,[new $Uint64(3190889480,975330514),new $Uint64(2301047212,2679047534)]),$toNativeArray($kindUint64,[new $Uint64(1841128202,1219163142),new $Uint64(2876309015,3348809418)]),$toNativeArray($kindUint64,[new $Uint64(153926604,3671437576),new $Uint64(3595386269,3112269949)]),$toNativeArray($kindUint64,[new $Uint64(633075040,147164837),new $Uint64(2247116418,2482039630)]),$toNativeArray($kindUint64,[new $Uint64(2938827448,183956046),new $Uint64(2808895523,955065889)]),$toNativeArray($kindUint64,[new $Uint64(452308838,229945057),new $Uint64(3511119404,120090538)]),$toNativeArray($kindUint64,[new $Uint64(1356434847,3364941133),new $Uint64(2194449627,2222540234)]),$toNativeArray($kindUint64,[new $Uint64(3843027207,3132434592),new $Uint64(2743062034,1704433468)]),$toNativeArray($kindUint64,[new $Uint64(508816713,2841801416),new $Uint64(3428827542,4278025484)]),$toNativeArray($kindUint64,[new $Uint64(636020892,331026298),new $Uint64(4286034428,3200048207)]),$toNativeArray($kindUint64,[new $Uint64(2008125793,2354375084),new $Uint64(2678771517,4147513777)]),$toNativeArray($kindUint64,[new $Uint64(3583899065,4016710679),new $Uint64(3348464397,1963166749)]),$toNativeArray($kindUint64,[new $Uint64(1258648360,1799662877),new $Uint64(4185580496,3527700261)]),$toNativeArray($kindUint64,[new $Uint64(1323526137,1124789298),new $Uint64(2615987810,2204812663)]),$toNativeArray($kindUint64,[new $Uint64(580665847,2479728447),new $Uint64(3269984763,608532181)]),$toNativeArray($kindUint64,[new $Uint64(1799574133,2025918735),new $Uint64(4087480953,3981890698)]),$toNativeArray($kindUint64,[new $Uint64(2198475657,1803070121),new $Uint64(2554675596,878068950)]),$toNativeArray($kindUint64,[new $Uint64(600610923,3327579475),new $Uint64(3193344495,1097586188)]),$toNativeArray($kindUint64,[new $Uint64(750763654,3085732520),new $Uint64(3991680619,298240911)]),$toNativeArray($kindUint64,[new $Uint64(2079840020,854841001),new $Uint64(2494800386,3944496953)]),$toNativeArray($kindUint64,[new $Uint64(3673541849,1068551251),new $Uint64(3118500483,2783137543)]),$toNativeArray($kindUint64,[new $Uint64(3518185487,2409430888),new $Uint64(3898125604,2405180105)]),$toNativeArray($kindUint64,[new $Uint64(588253193,3116507041),new $Uint64(2436328502,3650721214)]),$toNativeArray($kindUint64,[new $Uint64(2882800140,674408330),new $Uint64(3045410628,2415917869)]),$toNativeArray($kindUint64,[new $Uint64(382274703,843010412),new $Uint64(3806763285,3019897337)]),$toNativeArray($kindUint64,[new $Uint64(2923276249,2137494243),new $Uint64(2379227053,2424306747)]),$toNativeArray($kindUint64,[new $Uint64(2580353487,3745609628),new $Uint64(2974033816,4104125258)]),$toNativeArray($kindUint64,[new $Uint64(1077958211,3608270211),new $Uint64(3717542271,835189277)]),$toNativeArray($kindUint64,[new $Uint64(1210594794,1718297970),new $Uint64(2323463919,2132606034)]),$toNativeArray($kindUint64,[new $Uint64(3660727141,388815),new $Uint64(2904329899,1592015718)]),$toNativeArray($kindUint64,[new $Uint64(2428425278,1074227842),new $Uint64(3630412374,916277824)]),$toNativeArray($kindUint64,[new $Uint64(1517765798,3892617873),new $Uint64(2269007733,3793899112)]),$toNativeArray($kindUint64,[new $Uint64(1897207248,2718288694),new $Uint64(2836259667,1521148418)]),$toNativeArray($kindUint64,[new $Uint64(224025412,3397860867),new $Uint64(3545324584,827693699)]),$toNativeArray($kindUint64,[new $Uint64(3898112266,4271146690),new $Uint64(2215827865,517308561)]),$toNativeArray($kindUint64,[new $Uint64(1651414861,3191449714),new $Uint64(2769784831,1720377526)]),$toNativeArray($kindUint64,[new $Uint64(4211752225,768086671),new $Uint64(3462231039,1076730083)]),$toNativeArray($kindUint64,[new $Uint64(2095474228,3164408729),new $Uint64(2163894399,2283569038)]),$toNativeArray($kindUint64,[new $Uint64(471859137,3955510912),new $Uint64(2704867999,1780719474)]),$toNativeArray($kindUint64,[new $Uint64(2737307570,1723163168),new $Uint64(3381084999,1152157518)]),$toNativeArray($kindUint64,[new $Uint64(1274150815,6470312),new $Uint64(4226356249,366455074)]),$toNativeArray($kindUint64,[new $Uint64(1870086083,1614656681),new $Uint64(2641472655,2913388981)]),$toNativeArray($kindUint64,[new $Uint64(3411349428,944579027),new $Uint64(3301840819,2567994402)]),$toNativeArray($kindUint64,[new $Uint64(2116703137,1180723784),new $Uint64(4127301024,2136251179)]),$toNativeArray($kindUint64,[new $Uint64(786068548,3422306925),new $Uint64(2579563140,1335156987)]),$toNativeArray($kindUint64,[new $Uint64(4203811157,4277883656),new $Uint64(3224453925,1668946233)]),$toNativeArray($kindUint64,[new $Uint64(2033538475,2126129098),new $Uint64(4030567406,3159924616)]),$toNativeArray($kindUint64,[new $Uint64(1270961547,791959774),new $Uint64(2519104629,901211061)]),$toNativeArray($kindUint64,[new $Uint64(2662443757,4211175190),new $Uint64(3148880786,2200255650)]),$toNativeArray($kindUint64,[new $Uint64(1180571049,2042743516),new $Uint64(3936100983,602835915)]),$toNativeArray($kindUint64,[new $Uint64(200985993,3961069257),new $Uint64(2460063114,1987385183)]),$toNativeArray($kindUint64,[new $Uint64(3472457964,1730111099),new $Uint64(3075078893,336747830)]),$toNativeArray($kindUint64,[new $Uint64(2193088807,2162638874),new $Uint64(3843848616,1494676612)]),$toNativeArray($kindUint64,[new $Uint64(3518164152,2962262032),new $Uint64(2402405385,934172882)]),$toNativeArray($kindUint64,[new $Uint64(2250221542,3702827541),new $Uint64(3003006731,2241457927)]),$toNativeArray($kindUint64,[new $Uint64(1739035104,2481050778),new $Uint64(3753758414,1728080585)]),$toNativeArray($kindUint64,[new $Uint64(3771251500,1550656736),new $Uint64(2346099009,6308541)]),$toNativeArray($kindUint64,[new $Uint64(1492838903,1938320920),new $Uint64(2932623761,1081627501)]),$toNativeArray($kindUint64,[new $Uint64(2939790453,1349159326),new $Uint64(3665779701,2425776200)]),$toNativeArray($kindUint64,[new $Uint64(1837369033,1380095491),new $Uint64(2291112313,2052981037)]),$toNativeArray($kindUint64,[new $Uint64(3370453115,2798861187),new $Uint64(2863890391,3639968120)]),$toNativeArray($kindUint64,[new $Uint64(4213066394,2424834660),new $Uint64(3579862989,3476218326)]),$toNativeArray($kindUint64,[new $Uint64(1559424672,2589263487),new $Uint64(2237414368,2709507366)]),$toNativeArray($kindUint64,[new $Uint64(4096764488,3236579358),new $Uint64(2796767960,3386884207)]),$toNativeArray($kindUint64,[new $Uint64(4047213786,4045724198),new $Uint64(3495959950,4233605259)]),$toNativeArray($kindUint64,[new $Uint64(1992637704,3602319448),new $Uint64(2184974969,1572261463)]),$toNativeArray($kindUint64,[new $Uint64(1417055307,207932014),new $Uint64(2731218711,3039068653)]),$toNativeArray($kindUint64,[new $Uint64(2845060957,3481140489),new $Uint64(3414023389,2725093992)]),$toNativeArray($kindUint64,[new $Uint64(3556326197,1130200140),new $Uint64(4267529237,185142018)]),$toNativeArray($kindUint64,[new $Uint64(3296445697,1243245999),new $Uint64(2667205773,652584673)]),$toNativeArray($kindUint64,[new $Uint64(899331649,2627799323),new $Uint64(3334007216,1889472666)]),$toNativeArray($kindUint64,[new $Uint64(3271648210,63523682),new $Uint64(4167509020,2361840832)]),$toNativeArray($kindUint64,[new $Uint64(2044780131,1113444125),new $Uint64(2604693137,3623634168)]),$toNativeArray($kindUint64,[new $Uint64(2555975164,318063332),new $Uint64(3255866422,1308317238)]),$toNativeArray($kindUint64,[new $Uint64(1047485307,397579165),new $Uint64(4069833027,3782880196)]),$toNativeArray($kindUint64,[new $Uint64(2802161964,4006583362),new $Uint64(2543645642,1827429210)]),$toNativeArray($kindUint64,[new $Uint64(1355218808,713261907),new $Uint64(3179557053,136802865)]),$toNativeArray($kindUint64,[new $Uint64(2767765334,891577384),new $Uint64(3974446316,1244745405)]),$toNativeArray($kindUint64,[new $Uint64(2266724245,3778461337),new $Uint64(2484028947,2925449526)]),$toNativeArray($kindUint64,[new $Uint64(685921659,1501851199),new $Uint64(3105036184,2583070084)]),$toNativeArray($kindUint64,[new $Uint64(857402074,803572175),new $Uint64(3881295230,3228837605)]),$toNativeArray($kindUint64,[new $Uint64(1072747208,1575974433),new $Uint64(2425809519,944281679)]),$toNativeArray($kindUint64,[new $Uint64(267192186,1969968041),new $Uint64(3032261899,106610275)]),$toNativeArray($kindUint64,[new $Uint64(3555215705,314976404),new $Uint64(3790327373,3354488315)]),$toNativeArray($kindUint64,[new $Uint64(1685138903,2881214812),new $Uint64(2368954608,2633426109)]),$toNativeArray($kindUint64,[new $Uint64(3180165453,2527776691),new $Uint64(2961193260,3291782636)]),$toNativeArray($kindUint64,[new $Uint64(3975206816,4233462688),new $Uint64(3701491575,4114728295)]),$toNativeArray($kindUint64,[new $Uint64(4095116996,2645914180),new $Uint64(2313432234,4182317920)]),$toNativeArray($kindUint64,[new $Uint64(823928949,3307392725),new $Uint64(2891790293,3080413753)]),$toNativeArray($kindUint64,[new $Uint64(2103653011,913015435),new $Uint64(3614737867,629291719)]),$toNativeArray($kindUint64,[new $Uint64(2925395868,33763735),new $Uint64(2259211166,4151403708)]),$toNativeArray($kindUint64,[new $Uint64(3656744835,42204668),new $Uint64(2824013958,3041770987)]),$toNativeArray($kindUint64,[new $Uint64(3497189219,3273981307),new $Uint64(3530017448,1654730086)]),$toNativeArray($kindUint64,[new $Uint64(1112001438,1509367405),new $Uint64(2206260905,1034206304)]),$toNativeArray($kindUint64,[new $Uint64(1390001797,4034192904),new $Uint64(2757826131,2366499704)]),$toNativeArray($kindUint64,[new $Uint64(1737502247,1821515659),new $Uint64(3447282664,1884382806)]),$toNativeArray($kindUint64,[new $Uint64(12197080,2749060022),new $Uint64(2154551665,1177739254)]),$toNativeArray($kindUint64,[new $Uint64(2162729998,3436325028),new $Uint64(2693189581,2545915891)]),$toNativeArray($kindUint64,[new $Uint64(1629670674,2147922637),new $Uint64(3366486976,4256136688)]),$toNativeArray($kindUint64,[new $Uint64(2037088343,537419649),new $Uint64(4208108721,1025203564)]),$toNativeArray($kindUint64,[new $Uint64(3420663862,1946500016),new $Uint64(2630067950,3325106787)]),$toNativeArray($kindUint64,[new $Uint64(3202088004,285641372),new $Uint64(3287584938,2008899836)]),$toNativeArray($kindUint64,[new $Uint64(4002610005,357051716),new $Uint64(4109481173,363641147)]),$toNativeArray($kindUint64,[new $Uint64(1964760341,760028234),new $Uint64(2568425733,764146629)]),$toNativeArray($kindUint64,[new $Uint64(3529692250,2023777117),new $Uint64(3210532166,2028925110)]),$toNativeArray($kindUint64,[new $Uint64(2264631665,382237748),new $Uint64(4013165208,388672740)]),$toNativeArray($kindUint64,[new $Uint64(3562878438,2923253152),new $Uint64(2508228255,242920462)]),$toNativeArray($kindUint64,[new $Uint64(2306114400,1506582793),new $Uint64(3135285318,3524876050)]),$toNativeArray($kindUint64,[new $Uint64(735159352,1883228491),new $Uint64(3919106648,2258611415)]),$toNativeArray($kindUint64,[new $Uint64(2070087331,1177017807),new $Uint64(2449441655,1411632134)]),$toNativeArray($kindUint64,[new $Uint64(440125516,397530434),new $Uint64(3061802069,690798344)]),$toNativeArray($kindUint64,[new $Uint64(550156895,496913043),new $Uint64(3827252586,1937239754)]),$toNativeArray($kindUint64,[new $Uint64(1417589883,1921183388),new $Uint64(2392032866,2284516670)]),$toNativeArray($kindUint64,[new $Uint64(3919471002,1327737411),new $Uint64(2990041083,708162189)]),$toNativeArray($kindUint64,[new $Uint64(1678113280,3807155412),new $Uint64(3737551353,4106428209)]),$toNativeArray($kindUint64,[new $Uint64(3733175360,2379472132),new $Uint64(2335969596,955904894)]),$toNativeArray($kindUint64,[new $Uint64(2518985552,2974340165),new $Uint64(2919961995,1194881118)]),$toNativeArray($kindUint64,[new $Uint64(1001248292,3717925207),new $Uint64(3649952494,419859574)]),$toNativeArray($kindUint64,[new $Uint64(3847005655,176219606),new $Uint64(2281220308,3483637705)]),$toNativeArray($kindUint64,[new $Uint64(1587531596,3441499980),new $Uint64(2851525386,59579836)]),$toNativeArray($kindUint64,[new $Uint64(1984414496,6907679),new $Uint64(3564406732,2221958443)]),$toNativeArray($kindUint64,[new $Uint64(703388148,4317299),new $Uint64(2227754207,3536207675)]),$toNativeArray($kindUint64,[new $Uint64(4100460657,5396624),new $Uint64(2784692759,3346517769)]),$toNativeArray($kindUint64,[new $Uint64(1904350349,1080487604),new $Uint64(3480865949,3109405388)]),$toNativeArray($kindUint64,[new $Uint64(3337702616,1212175664),new $Uint64(2175541218,2480249279)]),$toNativeArray($kindUint64,[new $Uint64(3098386446,1515219580),new $Uint64(2719426523,952827951)]),$toNativeArray($kindUint64,[new $Uint64(2799241233,4041508124),new $Uint64(3399283154,117293115)]),$toNativeArray($kindUint64,[new $Uint64(2425309718,1830659683),new $Uint64(4249103942,2294100042)]),$toNativeArray($kindUint64,[new $Uint64(2589560398,70420478),new $Uint64(2655689964,360070702)]),$toNativeArray($kindUint64,[new $Uint64(1089466849,2235509245),new $Uint64(3319612455,450088378)]),$toNativeArray($kindUint64,[new $Uint64(3509317209,3868128380),new $Uint64(4149515568,3783835944)]),$toNativeArray($kindUint64,[new $Uint64(2193323256,806967502),new $Uint64(2593447230,2364897465)]),$toNativeArray($kindUint64,[new $Uint64(3815395894,1008709377),new $Uint64(3241809038,808638183)]),$toNativeArray($kindUint64,[new $Uint64(3695503043,3408370369),new $Uint64(4052261297,3158281377)]),$toNativeArray($kindUint64,[new $Uint64(699076666,1593360569),new $Uint64(2532663311,363313125)]),$toNativeArray($kindUint64,[new $Uint64(1947587656,4139184359),new $Uint64(3165829138,3675366878)]),$toNativeArray($kindUint64,[new $Uint64(287000923,879013153),new $Uint64(3957286423,2446724950)]),$toNativeArray($kindUint64,[new $Uint64(3400601049,12512308),new $Uint64(2473304014,3139815829)]),$toNativeArray($kindUint64,[new $Uint64(1029525839,1089382210),new $Uint64(3091630018,1777286139)]),$toNativeArray($kindUint64,[new $Uint64(213165475,287985938),new $Uint64(3864537523,74124026)]),$toNativeArray($kindUint64,[new $Uint64(1206970245,3938087595),new $Uint64(2415335951,3804423900)]),$toNativeArray($kindUint64,[new $Uint64(1508712807,1701384022),new $Uint64(3019169939,3681788051)]),$toNativeArray($kindUint64,[new $Uint64(812149185,1052988204),new $Uint64(3773962424,3528493240)]),$toNativeArray($kindUint64,[new $Uint64(507593240,3342472187),new $Uint64(2358726515,2205308275)]),$toNativeArray($kindUint64,[new $Uint64(3855717022,4178090234),new $Uint64(2948408144,1682893519)]),$toNativeArray($kindUint64,[new $Uint64(3745904454,3075129145),new $Uint64(3685510180,2103616899)]),$toNativeArray($kindUint64,[new $Uint64(1804319372,848213891),new $Uint64(2303443862,3462244210)]),$toNativeArray($kindUint64,[new $Uint64(107915567,1060267364),new $Uint64(2879304828,2180321615)]),$toNativeArray($kindUint64,[new $Uint64(3356119931,251592381),new $Uint64(3599131035,2725402018)]),$toNativeArray($kindUint64,[new $Uint64(3171316780,3915341622),new $Uint64(2249456897,1166505349)]),$toNativeArray($kindUint64,[new $Uint64(742920504,599209732),new $Uint64(2811821121,2531873511)]),$toNativeArray($kindUint64,[new $Uint64(4149876102,749012165),new $Uint64(3514776401,4238583712)]),$toNativeArray($kindUint64,[new $Uint64(2593672563,3689358075),new $Uint64(2196735251,1038502084)]),$toNativeArray($kindUint64,[new $Uint64(3242090704,3537955770),new $Uint64(2745919064,224385781)]),$toNativeArray($kindUint64,[new $Uint64(831387909,127477416),new $Uint64(3432398830,280482227)]),$toNativeArray($kindUint64,[new $Uint64(4260460358,1233088594),new $Uint64(4290498537,2498086431)]),$toNativeArray($kindUint64,[new $Uint64(4273400459,3991905843),new $Uint64(2681561585,4245658579)]),$toNativeArray($kindUint64,[new $Uint64(4268008750,3916140480),new $Uint64(3351951982,2085847752)]),$toNativeArray($kindUint64,[new $Uint64(1040043642,2747691952),new $Uint64(4189939978,459826043)]),$toNativeArray($kindUint64,[new $Uint64(113156364,2791049294),new $Uint64(2618712486,1361133101)]),$toNativeArray($kindUint64,[new $Uint64(1215187279,3488811618),new $Uint64(3273390607,3848900024)]),$toNativeArray($kindUint64,[new $Uint64(1518984099,3287272698),new $Uint64(4091738259,3737383206)]),$toNativeArray($kindUint64,[new $Uint64(4170590534,1517674524),new $Uint64(2557336412,1798993591)]),$toNativeArray($kindUint64,[new $Uint64(4139496343,4044576803),new $Uint64(3196670515,2248741989)]),$toNativeArray($kindUint64,[new $Uint64(1953144957,3981979180),new $Uint64(3995838144,1737185663)]),$toNativeArray($kindUint64,[new $Uint64(2831328334,3025607900),new $Uint64(2497398840,1085741039)]),$toNativeArray($kindUint64,[new $Uint64(2465418594,1634526227),new $Uint64(3121748550,1357176299)]),$toNativeArray($kindUint64,[new $Uint64(2008031418,4190641431),new $Uint64(3902185687,3843954022)]),$toNativeArray($kindUint64,[new $Uint64(181277812,3692892718),new $Uint64(2438866054,4013084000)]),$toNativeArray($kindUint64,[new $Uint64(226597266,321148602),new $Uint64(3048582568,2868871352)]),$toNativeArray($kindUint64,[new $Uint64(283246582,2548919401),new $Uint64(3810728210,3586089190)]),$toNativeArray($kindUint64,[new $Uint64(3398254586,519332801),new $Uint64(2381705131,3315047567)]),$toNativeArray($kindUint64,[new $Uint64(3174076408,2796649650),new $Uint64(2977131414,3070067635)]),$toNativeArray($kindUint64,[new $Uint64(2893853686,3495812062),new $Uint64(3721414268,1690100896)]),$toNativeArray($kindUint64,[new $Uint64(1808658554,1111140715),new $Uint64(2325883917,3203796708)]),$toNativeArray($kindUint64,[new $Uint64(2260823192,3536409542),new $Uint64(2907354897,783520413)]),$toNativeArray($kindUint64,[new $Uint64(3899770815,125544631),new $Uint64(3634193621,2053142340)]),$toNativeArray($kindUint64,[new $Uint64(289873111,1689078130),new $Uint64(2271371013,1820084875)]),$toNativeArray($kindUint64,[new $Uint64(3583566861,1037605839),new $Uint64(2839213766,3348847917)]),$toNativeArray($kindUint64,[new $Uint64(1258233104,2370749123),new $Uint64(3549017208,2038576249)]),$toNativeArray($kindUint64,[new $Uint64(3470750250,1481718202),new $Uint64(2218135755,1274110155)]),$toNativeArray($kindUint64,[new $Uint64(3264695988,3999631400),new $Uint64(2772669694,518895870)]),$toNativeArray($kindUint64,[new $Uint64(1933386338,704571954),new $Uint64(3465837117,2796103486)]),$toNativeArray($kindUint64,[new $Uint64(134624637,1514099295),new $Uint64(2166148198,2284435591)]),$toNativeArray($kindUint64,[new $Uint64(3389506268,2966365943),new $Uint64(2707685248,708060840)]),$toNativeArray($kindUint64,[new $Uint64(4236882835,3707957429),new $Uint64(3384606560,885076050)]),$toNativeArray($kindUint64,[new $Uint64(3148619896,3561204962),new $Uint64(4230758200,1106345063)]),$toNativeArray($kindUint64,[new $Uint64(3578500171,2225753101),new $Uint64(2644223875,691465664)]),$toNativeArray($kindUint64,[new $Uint64(178157918,1708449553),new $Uint64(3305279843,4085557553)]),$toNativeArray($kindUint64,[new $Uint64(1296439221,4283045589),new $Uint64(4131599804,4033205117)]),$toNativeArray($kindUint64,[new $Uint64(1347145425,3213774405),new $Uint64(2582249878,373269550)]),$toNativeArray($kindUint64,[new $Uint64(3831415430,795992534),new $Uint64(3227812347,2614070585)]),$toNativeArray($kindUint64,[new $Uint64(1568043815,3142474316),new $Uint64(4034765434,2193846408)]),$toNativeArray($kindUint64,[new $Uint64(980027384,3574659183),new $Uint64(2521728396,2444895829)]),$toNativeArray($kindUint64,[new $Uint64(2298776055,173356683),new $Uint64(3152160495,3056119786)]),$toNativeArray($kindUint64,[new $Uint64(725986420,3437921326),new $Uint64(3940200619,2746407909)]),$toNativeArray($kindUint64,[new $Uint64(990612425,1217181),new $Uint64(2462625387,1179634031)]),$toNativeArray($kindUint64,[new $Uint64(164523707,1075263300),new $Uint64(3078281734,400800715)]),$toNativeArray($kindUint64,[new $Uint64(3426880106,270337301),new $Uint64(3847852167,2648484541)]),$toNativeArray($kindUint64,[new $Uint64(2678670978,1242702637),new $Uint64(2404907604,3265915574)]),$toNativeArray($kindUint64,[new $Uint64(1200855074,3700861945),new $Uint64(3006134505,4082394468)]),$toNativeArray($kindUint64,[new $Uint64(1501068843,2478593783),new $Uint64(3757668132,1881767613)]),$toNativeArray($kindUint64,[new $Uint64(1475038939,1012250202),new $Uint64(2348542582,3323588406)]),$toNativeArray($kindUint64,[new $Uint64(3991282322,191570929),new $Uint64(2935678228,2007001859)]),$toNativeArray($kindUint64,[new $Uint64(3915361078,2386947309),new $Uint64(3669597785,2508752324)]),$toNativeArray($kindUint64,[new $Uint64(299617026,418100244),new $Uint64(2293498615,4252324763)]),$toNativeArray($kindUint64,[new $Uint64(3595746754,2670108953),new $Uint64(2866873269,4241664129)]),$toNativeArray($kindUint64,[new $Uint64(1273457971,1190152543),new $Uint64(3583591587,2080854690)]),$toNativeArray($kindUint64,[new $Uint64(1869653056,206974427),new $Uint64(2239744742,763663269)]),$toNativeArray($kindUint64,[new $Uint64(3410808144,258718034),new $Uint64(2799680927,3102062734)]),$toNativeArray($kindUint64,[new $Uint64(2116026532,323397543),new $Uint64(3499601159,2803836594)]),$toNativeArray($kindUint64,[new $Uint64(2396258406,2349607112),new $Uint64(2187250724,3363010607)]),$toNativeArray($kindUint64,[new $Uint64(1921581184,789525242),new $Uint64(2734063405,4203763259)]),$toNativeArray($kindUint64,[new $Uint64(1328234656,986906553),new $Uint64(3417579257,2033478602)]),$toNativeArray($kindUint64,[new $Uint64(3807776968,1233633192),new $Uint64(4271974071,3615590076)]),$toNativeArray($kindUint64,[new $Uint64(232376957,771020745),new $Uint64(2669983794,3870356534)]),$toNativeArray($kindUint64,[new $Uint64(2437954844,2037517755),new $Uint64(3337479743,2690462019)]),$toNativeArray($kindUint64,[new $Uint64(1973701731,2546897194),new $Uint64(4171849679,2289335700)]),$toNativeArray($kindUint64,[new $Uint64(3381047230,1054939834),new $Uint64(2607406049,3041447548)]),$toNativeArray($kindUint64,[new $Uint64(4226309037,3466158440),new $Uint64(3259257562,580583963)]),$toNativeArray($kindUint64,[new $Uint64(4209144473,1111472579),new $Uint64(4074071952,2873213602)]),$toNativeArray($kindUint64,[new $Uint64(3704457119,3379024922),new $Uint64(2546294970,1795758501)]),$toNativeArray($kindUint64,[new $Uint64(1409345927,3150039328),new $Uint64(3182868713,97214479)]),$toNativeArray($kindUint64,[new $Uint64(687940585,2863807336),new $Uint64(3978585891,1195259923)]),$toNativeArray($kindUint64,[new $Uint64(4188059250,179266849),new $Uint64(2486616182,210166539)]),$toNativeArray($kindUint64,[new $Uint64(4161332238,2371567209),new $Uint64(3108270227,2410191822)]),$toNativeArray($kindUint64,[new $Uint64(3054181650,816975364),new $Uint64(3885337784,1938997954)]),$toNativeArray($kindUint64,[new $Uint64(2982605355,1584351426),new $Uint64(2428336115,1211873721)]),$toNativeArray($kindUint64,[new $Uint64(507031222,906697459),new $Uint64(3035420144,441100328)]),$toNativeArray($kindUint64,[new $Uint64(633789027,3280855472),new $Uint64(3794275180,551375410)]),$toNativeArray($kindUint64,[new $Uint64(1469859966,1513663758),new $Uint64(2371421987,2492093279)]),$toNativeArray($kindUint64,[new $Uint64(763583133,4039563345),new $Uint64(2964277484,2041374775)]),$toNativeArray($kindUint64,[new $Uint64(4175704389,1828228709),new $Uint64(3705346855,2551718468)]),$toNativeArray($kindUint64,[new $Uint64(462331595,1679513855),new $Uint64(2315841784,3205436779)]),$toNativeArray($kindUint64,[new $Uint64(3799139966,1025650495),new $Uint64(2894802230,4006795973)]),$toNativeArray($kindUint64,[new $Uint64(1527699485,3429546767),new $Uint64(3618502788,2861011319)]),$toNativeArray($kindUint64,[new $Uint64(2565424914,2680337641),new $Uint64(2261564242,3935615722)]),$toNativeArray($kindUint64,[new $Uint64(1059297495,1202938404),new $Uint64(2826955303,2772036005)]),$toNativeArray($kindUint64,[new $Uint64(2397863693,429931181),new $Uint64(3533694129,2391303182)]),$toNativeArray($kindUint64,[new $Uint64(424922984,805577900),new $Uint64(2208558830,4178919049)]),$toNativeArray($kindUint64,[new $Uint64(1604895554,1006972375),new $Uint64(2760698538,3076165163)]),$toNativeArray($kindUint64,[new $Uint64(932377618,3406199117),new $Uint64(3450873173,1697722806)]),$toNativeArray($kindUint64,[new $Uint64(3803961483,3202616272),new $Uint64(2156795733,1597947665)]),$toNativeArray($kindUint64,[new $Uint64(1533726382,2929528516),new $Uint64(2695994666,3071176406)]),$toNativeArray($kindUint64,[new $Uint64(4064641626,1514426997),new $Uint64(3369993333,1691486859)]),$toNativeArray($kindUint64,[new $Uint64(4007060208,4040517394),new $Uint64(4212491666,3188100398)]),$toNativeArray($kindUint64,[new $Uint64(1430670806,2525323371),new $Uint64(2632807291,3066304573)]),$toNativeArray($kindUint64,[new $Uint64(2862080332,1009170566),new $Uint64(3291009114,2759138892)]),$toNativeArray($kindUint64,[new $Uint64(3577600415,1261463208),new $Uint64(4113761393,1301439967)]),$toNativeArray($kindUint64,[new $Uint64(3846612995,2399027241),new $Uint64(2571100870,3497754539)]),$toNativeArray($kindUint64,[new $Uint64(3734524420,1925042227),new $Uint64(3213876088,2224709526)]),$toNativeArray($kindUint64,[new $Uint64(2520671877,2406302784),new $Uint64(4017345110,2780886908)]),$toNativeArray($kindUint64,[new $Uint64(3722903571,2040810152),new $Uint64(2510840694,664312493)]),$toNativeArray($kindUint64,[new $Uint64(1432403992,1477270866),new $Uint64(3138550867,2977874265)]),$toNativeArray($kindUint64,[new $Uint64(2864246814,1846588582),new $Uint64(3923188584,2648601007)]),$toNativeArray($kindUint64,[new $Uint64(3400766995,80376040),new $Uint64(2451992865,1655375629)]),$toNativeArray($kindUint64,[new $Uint64(1029733271,3321695522),new $Uint64(3064991081,3142961361)]),$toNativeArray($kindUint64,[new $Uint64(2360908413,3078377578),new $Uint64(3831238852,707476229)]),$toNativeArray($kindUint64,[new $Uint64(2012438670,2460856898),new $Uint64(2394524282,2589656291)]),$toNativeArray($kindUint64,[new $Uint64(1441806514,928587475),new $Uint64(2993155353,1089586716)]),$toNativeArray($kindUint64,[new $Uint64(1802258142,3308217992),new $Uint64(3741444191,2435725219)]),$toNativeArray($kindUint64,[new $Uint64(589540427,993894421),new $Uint64(2338402619,3132940998)]),$toNativeArray($kindUint64,[new $Uint64(2884409182,168626202),new $Uint64(2923003274,2842434423)]),$toNativeArray($kindUint64,[new $Uint64(2531769653,2358266401),new $Uint64(3653754093,1405559381)]),$toNativeArray($kindUint64,[new $Uint64(2119226945,2010787412),new $Uint64(2283596308,1415345525)]),$toNativeArray($kindUint64,[new $Uint64(3722775505,3587226089),new $Uint64(2854495385,1769181906)]),$toNativeArray($kindUint64,[new $Uint64(2505985734,1262807140),new $Uint64(3568119231,3285219207)]),$toNativeArray($kindUint64,[new $Uint64(3176853819,4010479934),new $Uint64(2230074519,3663874740)]),$toNativeArray($kindUint64,[new $Uint64(3971067274,3939358094),new $Uint64(2787593149,3506101601)]),$toNativeArray($kindUint64,[new $Uint64(1742608621,2776713970),new $Uint64(3484491437,1161401530)]),$toNativeArray($kindUint64,[new $Uint64(2162872212,2272317143),new $Uint64(2177807148,1262746868)]),$toNativeArray($kindUint64,[new $Uint64(2703590265,2840396429),new $Uint64(2722258935,1578433585)]),$toNativeArray($kindUint64,[new $Uint64(158262360,329270064),new $Uint64(3402823669,899300158)]),$toNativeArray($kindUint64,[new $Uint64(2345311598,411587580),new $Uint64(4253529586,2197867021)]),$toNativeArray($kindUint64,[new $Uint64(2002690660,3478467709),new $Uint64(2658455991,2447408712)]),$toNativeArray($kindUint64,[new $Uint64(2503363326,53117341),new $Uint64(3323069989,1985519066)]),$toNativeArray($kindUint64,[new $Uint64(981720509,2213880324),new $Uint64(4153837486,3555640657)]),$toNativeArray($kindUint64,[new $Uint64(3297929878,1920546114),new $Uint64(2596148429,1148533586)]),$toNativeArray($kindUint64,[new $Uint64(1974928700,253198995),new $Uint64(3245185536,2509408807)]),$toNativeArray($kindUint64,[new $Uint64(1394919051,316498744),new $Uint64(4056481920,3136761009)]),$toNativeArray($kindUint64,[new $Uint64(3556178966,3955908099),new $Uint64(2535301200,1960475630)]),$toNativeArray($kindUint64,[new $Uint64(2297740060,2797401476),new $Uint64(3169126500,2450594538)]),$toNativeArray($kindUint64,[new $Uint64(724691427,3496751845),new $Uint64(3961408125,3063243173)]),$toNativeArray($kindUint64,[new $Uint64(989803054,1648598991),new $Uint64(2475880078,2451397895)]),$toNativeArray($kindUint64,[new $Uint64(163511993,4208232386),new $Uint64(3094850098,916763721)]),$toNativeArray($kindUint64,[new $Uint64(1278131816,2039065011),new $Uint64(3868562622,3293438299)]),$toNativeArray($kindUint64,[new $Uint64(261961473,1274415632),new $Uint64(2417851639,984657113)]),$toNativeArray($kindUint64,[new $Uint64(1401193665,2666761364),new $Uint64(3022314549,157079567)]),$toNativeArray($kindUint64,[new $Uint64(677750258,112226233),new $Uint64(3777893186,1270091283)]),$toNativeArray($kindUint64,[new $Uint64(4181690295,1143883219),new $Uint64(2361183241,1867548875)]),$toNativeArray($kindUint64,[new $Uint64(4153371045,356112200),new $Uint64(2951479051,3408177918)]),$toNativeArray($kindUint64,[new $Uint64(3044230158,1518882075),new $Uint64(3689348814,3186480574)]),$toNativeArray($kindUint64,[new $Uint64(828902024,4170526768),new $Uint64(2305843009,917808535)]),$toNativeArray($kindUint64,[new $Uint64(4257353003,918191165),new $Uint64(2882303761,2221002492)]),$toNativeArray($kindUint64,[new $Uint64(1026723958,73997132),new $Uint64(3602879701,3849994940)]),$toNativeArray($kindUint64,[new $Uint64(2789186121,3267473679),new $Uint64(2251799813,2943117749)]),$toNativeArray($kindUint64,[new $Uint64(265257180,863116627),new $Uint64(2814749767,457671715)]),$toNativeArray($kindUint64,[new $Uint64(3552796947,1078895784),new $Uint64(3518437208,3793315115)]),$toNativeArray($kindUint64,[new $Uint64(1683627180,137438953),new $Uint64(2199023255,2370821947)]),$toNativeArray($kindUint64,[new $Uint64(1030792151,171798691),new $Uint64(2748779069,1889785610)]),$toNativeArray($kindUint64,[new $Uint64(3435973836,3435973836),new $Uint64(3435973836,3435973836)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(2147483648,0)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(2684354560,0)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(3355443200,0)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(4194304000,0)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(2621440000,0)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(3276800000,0)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(4096000000,0)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(2560000000,0)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(3200000000,0)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(4000000000,0)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(2500000000,0)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(3125000000,0)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(3906250000,0)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(2441406250,0)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(3051757812,2147483648)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(3814697265,2684354560)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(2384185791,67108864)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(2980232238,3305111552)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(3725290298,1983905792)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(2328306436,2313682944)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(2910383045,2892103680)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(3637978807,393904128)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(2273736754,1856802816)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(2842170943,173519872)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(3552713678,3438125312)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(2220446049,1075086496)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(2775557561,2417599944)]),$toNativeArray($kindUint64,[new $Uint64(0,0),new $Uint64(3469446951,4095741754)]),$toNativeArray($kindUint64,[new $Uint64(1073741824,0),new $Uint64(2168404344,4170451332)]),$toNativeArray($kindUint64,[new $Uint64(1342177280,0),new $Uint64(2710505431,918096869)]),$toNativeArray($kindUint64,[new $Uint64(2751463424,0),new $Uint64(3388131789,73879262)]),$toNativeArray($kindUint64,[new $Uint64(1291845632,0),new $Uint64(4235164736,1166090902)]),$toNativeArray($kindUint64,[new $Uint64(4028628992,0),new $Uint64(2646977960,728806813)]),$toNativeArray($kindUint64,[new $Uint64(1814560768,0),new $Uint64(3308722450,911008517)]),$toNativeArray($kindUint64,[new $Uint64(3341942784,0),new $Uint64(4135903062,3286244294)]),$toNativeArray($kindUint64,[new $Uint64(1014972416,0),new $Uint64(2584939414,980160860)]),$toNativeArray($kindUint64,[new $Uint64(1268715520,0),new $Uint64(3231174267,3372684723)]),$toNativeArray($kindUint64,[new $Uint64(512152576,0),new $Uint64(4038967834,3142114080)]),$toNativeArray($kindUint64,[new $Uint64(320095360,0),new $Uint64(2524354896,3037563124)]),$toNativeArray($kindUint64,[new $Uint64(400119200,0),new $Uint64(3155443620,3796953905)]),$toNativeArray($kindUint64,[new $Uint64(1573890824,0),new $Uint64(3944304526,451225085)]),$toNativeArray($kindUint64,[new $Uint64(1520552677,0),new $Uint64(2465190328,3503241150)]),$toNativeArray($kindUint64,[new $Uint64(4048174494,1073741824),new $Uint64(3081487911,84084141)]),$toNativeArray($kindUint64,[new $Uint64(1838992645,3489660928),new $Uint64(3851859888,3326330649)]),$toNativeArray($kindUint64,[new $Uint64(3833724963,2717908992),new $Uint64(2407412430,2078956655)]),$toNativeArray($kindUint64,[new $Uint64(3718414380,2323644416),new $Uint64(3009265538,451212171)]),$toNativeArray($kindUint64,[new $Uint64(3574276151,2904555520),new $Uint64(3761581922,2711498862)]),$toNativeArray($kindUint64,[new $Uint64(1160180770,3425959936),new $Uint64(2350988701,2768428613)]),$toNativeArray($kindUint64,[new $Uint64(2523967787,2134966272),new $Uint64(2938735877,239310294)]),$toNativeArray($kindUint64,[new $Uint64(1007476086,1594966016),new $Uint64(3673419846,1372879692)]),$toNativeArray($kindUint64,[new $Uint64(2777156201,4218079232),new $Uint64(2295887403,4079275279)]),$toNativeArray($kindUint64,[new $Uint64(2397703428,2051373568),new $Uint64(2869859254,4025352275)]),$toNativeArray($kindUint64,[new $Uint64(1923387461,2564216960),new $Uint64(3587324068,2884206696)]),$toNativeArray($kindUint64,[new $Uint64(1202117163,2139506512),new $Uint64(2242077542,3950112833)]),$toNativeArray($kindUint64,[new $Uint64(2576388278,1600641316),new $Uint64(2802596928,2790157393)]),$toNativeArray($kindUint64,[new $Uint64(4294227171,4148285293),new $Uint64(3503246160,3487696741)]),$toNativeArray($kindUint64,[new $Uint64(3220762894,2055807396),new $Uint64(2189528850,2179810463)]),$toNativeArray($kindUint64,[new $Uint64(2952211794,422275597),new $Uint64(2736911063,577279431)]),$toNativeArray($kindUint64,[new $Uint64(2616522918,2675328144),new $Uint64(3421138828,3942824761)]),$toNativeArray($kindUint64,[new $Uint64(49428176,1196676532),new $Uint64(4276423536,633563656)]),$toNativeArray($kindUint64,[new $Uint64(30892610,747922832),new $Uint64(2672764710,395977285)]),$toNativeArray($kindUint64,[new $Uint64(1112357586,3082387189),new $Uint64(3340955887,2642455254)]),$toNativeArray($kindUint64,[new $Uint64(3537930631,1705500338),new $Uint64(4176194859,2229327243)]),$toNativeArray($kindUint64,[new $Uint64(1674335732,2676550447),new $Uint64(2610121787,856458615)]),$toNativeArray($kindUint64,[new $Uint64(1019177841,3345688059),new $Uint64(3262652233,4291798741)]),$toNativeArray($kindUint64,[new $Uint64(2347714126,960884602),new $Uint64(4078315292,2143522954)]),$toNativeArray($kindUint64,[new $Uint64(2541063152,3821778348),new $Uint64(2548947057,3487185494)]),$toNativeArray($kindUint64,[new $Uint64(1028845293,482255639),new $Uint64(3186183822,1137756396)]),$toNativeArray($kindUint64,[new $Uint64(1286056616,1676561373),new $Uint64(3982729777,3569679143)]),$toNativeArray($kindUint64,[new $Uint64(2414398121,1047850858),new $Uint64(2489206111,620436728)]),$toNativeArray($kindUint64,[new $Uint64(3017997651,2383555396),new $Uint64(3111507638,3996771382)]),$toNativeArray($kindUint64,[new $Uint64(1625013416,1905702422),new $Uint64(3889384548,2848480580)]),$toNativeArray($kindUint64,[new $Uint64(3163117033,1191064013),new $Uint64(2430865342,3927784010)]),$toNativeArray($kindUint64,[new $Uint64(1806412643,2562571841),new $Uint64(3038581678,2762246365)]),$toNativeArray($kindUint64,[new $Uint64(3331757628,2129472977),new $Uint64(3798227098,1305324308)]),$toNativeArray($kindUint64,[new $Uint64(4229832165,3478404258),new $Uint64(2373891936,1889569516)]),$toNativeArray($kindUint64,[new $Uint64(992322911,1126779851),new $Uint64(2967364920,2361961896)]),$toNativeArray($kindUint64,[new $Uint64(1240403639,334732990),new $Uint64(3709206150,2952452370)]),$toNativeArray($kindUint64,[new $Uint64(1848994098,1819820855),new $Uint64(2318253844,771540907)]),$toNativeArray($kindUint64,[new $Uint64(1237500799,127292420),new $Uint64(2897817305,964426134)]),$toNativeArray($kindUint64,[new $Uint64(3694359646,3380340998),new $Uint64(3622271631,2279274491)]),$toNativeArray($kindUint64,[new $Uint64(1772103867,1038971299),new $Uint64(2263919769,3035159293)]),$toNativeArray($kindUint64,[new $Uint64(3288871658,224972300),new $Uint64(2829899712,572723644)]),$toNativeArray($kindUint64,[new $Uint64(4111089572,2428699024),new $Uint64(3537374640,715904555)]),$toNativeArray($kindUint64,[new $Uint64(2032560070,3665420538),new $Uint64(2210859150,447440347)]),$toNativeArray($kindUint64,[new $Uint64(1466958264,2434292024),new $Uint64(2763573937,2706784082)]),$toNativeArray($kindUint64,[new $Uint64(3981181478,3042865030),new $Uint64(3454467422,162254630)]),$toNativeArray($kindUint64,[new $Uint64(1414496600,828048820),new $Uint64(2159042138,3322634616)]),$toNativeArray($kindUint64,[new $Uint64(1768120750,1035061025),new $Uint64(2698802673,2005809622)]),$toNativeArray($kindUint64,[new $Uint64(62667289,3441309929),new $Uint64(3373503341,3581003852)]),$toNativeArray($kindUint64,[new $Uint64(78334112,1080411939),new $Uint64(4216879177,1255029343)]),$toNativeArray($kindUint64,[new $Uint64(1659571556,675257462),new $Uint64(2635549485,3468747899)]),$toNativeArray($kindUint64,[new $Uint64(1000722621,844071828),new $Uint64(3294436857,1114709402)]),$toNativeArray($kindUint64,[new $Uint64(3398386924,2128831609),new $Uint64(4118046071,2467128576)]),$toNativeArray($kindUint64,[new $Uint64(2123991827,3478003403),new $Uint64(2573778794,3152568096)]),$toNativeArray($kindUint64,[new $Uint64(2654989784,3273762430),new $Uint64(3217223493,1793226472)]),$toNativeArray($kindUint64,[new $Uint64(3318737230,4092203038),new $Uint64(4021529366,3315274914)]),$toNativeArray($kindUint64,[new $Uint64(3147952593,1483885074),new $Uint64(2513455854,998304997)]),$toNativeArray($kindUint64,[new $Uint64(713715269,2928598167),new $Uint64(3141819817,3395364895)]),$toNativeArray($kindUint64,[new $Uint64(4113369559,439522237),new $Uint64(3927274772,1022980646)]),$toNativeArray($kindUint64,[new $Uint64(1497114150,1885314134),new $Uint64(2454546732,2786846552)]),$toNativeArray($kindUint64,[new $Uint64(1871392688,209159020),new $Uint64(3068183415,3483558190)]),$toNativeArray($kindUint64,[new $Uint64(191757212,261448775),new $Uint64(3835229269,3280705914)]),$toNativeArray($kindUint64,[new $Uint64(1193590081,2310889132),new $Uint64(2397018293,2587312108)]),$toNativeArray($kindUint64,[new $Uint64(1491987601,3962353239),new $Uint64(2996272867,12914663)]),$toNativeArray($kindUint64,[new $Uint64(791242678,1731716077),new $Uint64(3745341083,3237368801)]),$toNativeArray($kindUint64,[new $Uint64(3178881234,8580724),new $Uint64(2340838177,1486484588)]),$toNativeArray($kindUint64,[new $Uint64(3973601542,2158209553),new $Uint64(2926047721,2931847559)]),$toNativeArray($kindUint64,[new $Uint64(3893260104,550278293),new $Uint64(3657559652,443583977)]),$toNativeArray($kindUint64,[new $Uint64(822674829,343923933),new $Uint64(2285974782,2424723634)]),$toNativeArray($kindUint64,[new $Uint64(3175827184,1503646741),new $Uint64(2857468478,883420894)]),$toNativeArray($kindUint64,[new $Uint64(1822300332,1879558426),new $Uint64(3571835597,3251759766)]),$toNativeArray($kindUint64,[new $Uint64(65195883,3322207664),new $Uint64(2232397248,2569220766)]),$toNativeArray($kindUint64,[new $Uint64(2228978502,3079017756),new $Uint64(2790496560,3211525957)]),$toNativeArray($kindUint64,[new $Uint64(3859964952,1701288547),new $Uint64(3488120700,4014407446)]),$toNativeArray($kindUint64,[new $Uint64(1338736271,1063305342),new $Uint64(2180075438,361521006)]),$toNativeArray($kindUint64,[new $Uint64(3820903987,255389853),new $Uint64(2725094297,2599384905)]),$toNativeArray($kindUint64,[new $Uint64(1554904511,3540462789),new $Uint64(3406367872,28005660)]),$toNativeArray($kindUint64,[new $Uint64(1943630639,3351836662),new $Uint64(4257959840,35007075)]),$toNativeArray($kindUint64,[new $Uint64(677898237,3705510650),new $Uint64(2661224900,21879422)]),$toNativeArray($kindUint64,[new $Uint64(2994856445,1410662840),new $Uint64(3326531125,27349277)]),$toNativeArray($kindUint64,[new $Uint64(522345084,2837070374),new $Uint64(4158163906,1107928421)]),$toNativeArray($kindUint64,[new $Uint64(863336589,3920652632),new $Uint64(2598852441,1766197087)]),$toNativeArray($kindUint64,[new $Uint64(5428913,1679590318),new $Uint64(3248565551,3281488183)]),$toNativeArray($kindUint64,[new $Uint64(3228011613,3173229722),new $Uint64(4060706939,3028118404)]),$toNativeArray($kindUint64,[new $Uint64(4164990906,2520139488),new $Uint64(2537941837,1355703090)]),$toNativeArray($kindUint64,[new $Uint64(3058754985,1002690712),new $Uint64(3172427296,2768370687)]),$toNativeArray($kindUint64,[new $Uint64(2749701907,2327105214),new $Uint64(3965534120,3460463359)]),$toNativeArray($kindUint64,[new $Uint64(3329176428,917569847),new $Uint64(2478458825,2162789599)]),$toNativeArray($kindUint64,[new $Uint64(3087728711,1146962308),new $Uint64(3098073531,3777228823)]),$toNativeArray($kindUint64,[new $Uint64(2785919065,359961061),new $Uint64(3872591914,3647794205)]),$toNativeArray($kindUint64,[new $Uint64(2278070327,2909330223),new $Uint64(2420369946,3353613202)]),$toNativeArray($kindUint64,[new $Uint64(700104261,2562920955),new $Uint64(3025462433,2044532855)]),$toNativeArray($kindUint64,[new $Uint64(4096355798,4277393018),new $Uint64(3781828041,3629407892)]),$toNativeArray($kindUint64,[new $Uint64(412738726,1599628812),new $Uint64(2363642526,657767197)]),$toNativeArray($kindUint64,[new $Uint64(1589665231,4147019663),new $Uint64(2954553157,2969692644)]),$toNativeArray($kindUint64,[new $Uint64(1987081539,4110032755),new $Uint64(3693191447,490890333)]),$toNativeArray($kindUint64,[new $Uint64(1778796874,2031899560),new $Uint64(2308244654,1917419194)]),$toNativeArray($kindUint64,[new $Uint64(76012445,392390802),new $Uint64(2885305818,249290345)]),$toNativeArray($kindUint64,[new $Uint64(1168757380,1564230326),new $Uint64(3606632272,2459096579)]),$toNativeArray($kindUint64,[new $Uint64(193602450,3125127602),new $Uint64(2254145170,1536935362)]),$toNativeArray($kindUint64,[new $Uint64(2389486711,1758925854),new $Uint64(2817681462,4068652850)]),$toNativeArray($kindUint64,[new $Uint64(839374741,1124915494),new $Uint64(3522101828,2938332415)]),$toNativeArray($kindUint64,[new $Uint64(2135221949,1239943096),new $Uint64(2201313642,3983941407)]),$toNativeArray($kindUint64,[new $Uint64(1595285612,2623670694),new $Uint64(2751642053,2832443111)]),$toNativeArray($kindUint64,[new $Uint64(920365191,3279588367),new $Uint64(3439552567,319328417)]),$toNativeArray($kindUint64,[new $Uint64(3259582804,3660355465),new $Uint64(2149720354,1810192996)]),$toNativeArray($kindUint64,[new $Uint64(4074478506,280477036),new $Uint64(2687150443,115257597)]),$toNativeArray($kindUint64,[new $Uint64(1871872660,2498079943),new $Uint64(3358938053,3365297469)]),$toNativeArray($kindUint64,[new $Uint64(3413582649,3122599929),new $Uint64(4198672567,985396364)]),$toNativeArray($kindUint64,[new $Uint64(4280972804,341012219),new $Uint64(2624170354,2226485463)]),$toNativeArray($kindUint64,[new $Uint64(4277474181,426265274),new $Uint64(3280212943,635623181)]),$toNativeArray($kindUint64,[new $Uint64(2125617254,1606573417),new $Uint64(4100266178,4015754449)]),$toNativeArray($kindUint64,[new $Uint64(4012865343,4225333857),new $Uint64(2562666361,3583588354)]),$toNativeArray($kindUint64,[new $Uint64(2868598031,4207925498),new $Uint64(3203332952,1258259971)]),$toNativeArray($kindUint64,[new $Uint64(2512005715,4186165048),new $Uint64(4004166190,1572824964)]),$toNativeArray($kindUint64,[new $Uint64(3717487220,2079482243),new $Uint64(2502603868,4204241074)]),$toNativeArray($kindUint64,[new $Uint64(2499375377,2599352804),new $Uint64(3128254836,960334047)]),$toNativeArray($kindUint64,[new $Uint64(2050477398,27965533),new $Uint64(3910318545,1200417559)]),$toNativeArray($kindUint64,[new $Uint64(2892161109,3238703930),new $Uint64(2443949090,3434615534)]),$toNativeArray($kindUint64,[new $Uint64(1467717739,827154441),new $Uint64(3054936363,2145785770)]),$toNativeArray($kindUint64,[new $Uint64(3982130821,4255168523),new $Uint64(3818670454,1608490388)]),$toNativeArray($kindUint64,[new $Uint64(341348115,3196351239),new $Uint64(2386669033,4226531965)]),$toNativeArray($kindUint64,[new $Uint64(1500426968,2921697224),new $Uint64(2983336292,2061939484)]),$toNativeArray($kindUint64,[new $Uint64(1875533710,3652121531),new $Uint64(3729170365,2577424355)]),$toNativeArray($kindUint64,[new $Uint64(635337657,1208834132),new $Uint64(2330731478,2147761134)]),$toNativeArray($kindUint64,[new $Uint64(2941655719,2584784490),new $Uint64(2913414348,537217769)]),$toNativeArray($kindUint64,[new $Uint64(455844177,2157238788),new $Uint64(3641767935,671522212)]),$toNativeArray($kindUint64,[new $Uint64(2432386258,4032628802),new $Uint64(2276104959,2030314118)]),$toNativeArray($kindUint64,[new $Uint64(892999175,2893302355),new $Uint64(2845131199,1464150824)]),$toNativeArray($kindUint64,[new $Uint64(1116248969,2542886120),new $Uint64(3556413999,756446706)]),$toNativeArray($kindUint64,[new $Uint64(1771397429,4273658385),new $Uint64(2222758749,2083391927)]),$toNativeArray($kindUint64,[new $Uint64(1140504963,2120847509),new $Uint64(2778448436,3677981733)]),$toNativeArray($kindUint64,[new $Uint64(2499373028,1577317563),new $Uint64(3473060546,302509870)]),$toNativeArray($kindUint64,[new $Uint64(488366318,3133307125),new $Uint64(2170662841,1262810493)]),$toNativeArray($kindUint64,[new $Uint64(1684199722,1769150258),new $Uint64(2713328551,2652254940)]),$toNativeArray($kindUint64,[new $Uint64(2105249653,63954174),new $Uint64(3391660689,2241576851)]),$toNativeArray($kindUint64,[new $Uint64(1557820242,1153684542),new $Uint64(4239575861,3875712888)]),$toNativeArray($kindUint64,[new $Uint64(973637651,1794794663),new $Uint64(2649734913,2959191467)]),$toNativeArray($kindUint64,[new $Uint64(143305240,1169751504),new $Uint64(3312168642,477763862)]),$toNativeArray($kindUint64,[new $Uint64(2326615198,1462189381),new $Uint64(4140210802,2744688475)]),$toNativeArray($kindUint64,[new $Uint64(917263586,4135093835),new $Uint64(2587631751,2789172121)]),$toNativeArray($kindUint64,[new $Uint64(2220321307,3021383645),new $Uint64(3234539689,2412723327)]),$toNativeArray($kindUint64,[new $Uint64(1701659810,2702987733),new $Uint64(4043174611,4089645983)]),$toNativeArray($kindUint64,[new $Uint64(2674150117,2763109157),new $Uint64(2526984132,2019157827)]),$toNativeArray($kindUint64,[new $Uint64(2268945823,232660974),new $Uint64(3158730165,2523947284)]),$toNativeArray($kindUint64,[new $Uint64(2836182278,3512051690),new $Uint64(3948412706,4228675929)]),$toNativeArray($kindUint64,[new $Uint64(162001188,1121290482),new $Uint64(2467757941,3716664280)]),$toNativeArray($kindUint64,[new $Uint64(202501485,1401613103),new $Uint64(3084697427,1424604878)]),$toNativeArray($kindUint64,[new $Uint64(2400610504,2825758202),new $Uint64(3855871784,707014273)]),$toNativeArray($kindUint64,[new $Uint64(4184736125,1766098876),new $Uint64(2409919865,441883920)]),$toNativeArray($kindUint64,[new $Uint64(935952860,3281365420),new $Uint64(3012399831,1626096725)]),$toNativeArray($kindUint64,[new $Uint64(2243682899,4101706775),new $Uint64(3765499789,958879082)]),$toNativeArray($kindUint64,[new $Uint64(2476043636,2026695822),new $Uint64(2353437368,1136170338)]),$toNativeArray($kindUint64,[new $Uint64(947570897,2533369778),new $Uint64(2941796710,1420212923)]),$toNativeArray($kindUint64,[new $Uint64(110721797,4240454046),new $Uint64(3677245887,3922749802)]),$toNativeArray($kindUint64,[new $Uint64(1142942947,3187154691),new $Uint64(2298278679,4062331362)]),$toNativeArray($kindUint64,[new $Uint64(3576162332,2910201539),new $Uint64(2872848349,4004172378)]),$toNativeArray($kindUint64,[new $Uint64(2322719267,3637751924),new $Uint64(3591060437,1783990001)]),$toNativeArray($kindUint64,[new $Uint64(4136054102,1736724041),new $Uint64(2244412773,1651864662)]),$toNativeArray($kindUint64,[new $Uint64(3022583980,23421403),new $Uint64(2805515966,3138572652)]),$toNativeArray($kindUint64,[new $Uint64(3778229975,29276754),new $Uint64(3506894958,1775732167)]),$toNativeArray($kindUint64,[new $Uint64(3972006470,1628910707),new $Uint64(2191809349,36090780)]),$toNativeArray($kindUint64,[new $Uint64(670040791,4183622032),new $Uint64(2739761686,1118855300)]),$toNativeArray($kindUint64,[new $Uint64(837550989,4155785716),new $Uint64(3424702107,3546052773)]),$toNativeArray($kindUint64,[new $Uint64(2120680561,1973506673),new $Uint64(4280877634,3358824142)]),$toNativeArray($kindUint64,[new $Uint64(251683526,3917796230),new $Uint64(2675548521,3173006913)]),$toNativeArray($kindUint64,[new $Uint64(1388346232,2749761640),new $Uint64(3344435652,745033169)]),$toNativeArray($kindUint64,[new $Uint64(2809174614,3437202050),new $Uint64(4180544565,931291461)]),$toNativeArray($kindUint64,[new $Uint64(2292605046,1074509457),new $Uint64(2612840353,1118928075)]),$toNativeArray($kindUint64,[new $Uint64(1792014483,3490620469),new $Uint64(3266050441,2472401918)]),$toNativeArray($kindUint64,[new $Uint64(92534456,3289533763),new $Uint64(4082563051,4164244222)]),$toNativeArray($kindUint64,[new $Uint64(3279059507,2055958602),new $Uint64(2551601907,2065781726)]),$toNativeArray($kindUint64,[new $Uint64(1951340736,1496206428),new $Uint64(3189502384,1508485334)]),$toNativeArray($kindUint64,[new $Uint64(291692272,1870258035),new $Uint64(3986877980,1885606668)]),$toNativeArray($kindUint64,[new $Uint64(2329791318,1168911272),new $Uint64(2491798737,3325987815)]),$toNativeArray($kindUint64,[new $Uint64(1838497323,3608622738),new $Uint64(3114748422,936259297)]),$toNativeArray($kindUint64,[new $Uint64(3371863478,3437036599),new $Uint64(3893435527,3317807769)]),$toNativeArray($kindUint64,[new $Uint64(496801938,1074406050),new $Uint64(2433397204,3684242592)]),$toNativeArray($kindUint64,[new $Uint64(621002422,3490491211),new $Uint64(3041746506,310335944)]),$toNativeArray($kindUint64,[new $Uint64(776253028,2215630365),new $Uint64(3802183132,2535403578)]),$toNativeArray($kindUint64,[new $Uint64(1558899966,3532252626),new $Uint64(2376364457,3732110884)]),$toNativeArray($kindUint64,[new $Uint64(1948624958,2267832135),new $Uint64(2970455572,1443913133)]),$toNativeArray($kindUint64,[new $Uint64(3509523022,687306521),new $Uint64(3713069465,1804891416)]),$toNativeArray($kindUint64,[new $Uint64(2193451888,3650792047),new $Uint64(2320668415,3812411695)]),$toNativeArray($kindUint64,[new $Uint64(1668073037,268522763),new $Uint64(2900835519,3691772795)]),$toNativeArray($kindUint64,[new $Uint64(1011349472,1409395278),new $Uint64(3626044399,3540974170)]),$toNativeArray($kindUint64,[new $Uint64(1705835244,880872049),new $Uint64(2266277749,3823721592)]),$toNativeArray($kindUint64,[new $Uint64(2132294055,1101090061),new $Uint64(2832847187,1558426518)]),$toNativeArray($kindUint64,[new $Uint64(517883921,302620752),new $Uint64(3541058984,874291324)]),$toNativeArray($kindUint64,[new $Uint64(2471161098,2873492530),new $Uint64(2213161865,546432077)]),$toNativeArray($kindUint64,[new $Uint64(4162693197,1444382015),new $Uint64(2766452331,1756781920)]),$toNativeArray($kindUint64,[new $Uint64(908399200,2879219342),new $Uint64(3458065414,1122235577)]),$toNativeArray($kindUint64,[new $Uint64(3252104060,1799512089),new $Uint64(2161290883,3922622707)]),$toNativeArray($kindUint64,[new $Uint64(2991388251,2249390111),new $Uint64(2701613604,3829536560)]),$toNativeArray($kindUint64,[new $Uint64(3739235314,1737995815),new $Uint64(3377017006,491953404)]),$toNativeArray($kindUint64,[new $Uint64(379076847,25011121),new $Uint64(4221271257,2762425404)]),$toNativeArray($kindUint64,[new $Uint64(2384406677,1626244686),new $Uint64(2638294536,115903141)]),$toNativeArray($kindUint64,[new $Uint64(4054250170,3106547682),new $Uint64(3297868170,144878926)]),$toNativeArray($kindUint64,[new $Uint64(2920329065,1735700955),new $Uint64(4122335212,2328582306)]),$toNativeArray($kindUint64,[new $Uint64(2898947489,3769167657),new $Uint64(2576459507,3602847589)]),$toNativeArray($kindUint64,[new $Uint64(402458890,1490234099),new $Uint64(3220574384,3429817663)]),$toNativeArray($kindUint64,[new $Uint64(3724299084,4010276272),new $Uint64(4025717980,4287272078)]),$toNativeArray($kindUint64,[new $Uint64(1253945104,358939022),new $Uint64(2516073738,532061401)]),$toNativeArray($kindUint64,[new $Uint64(2641173204,448673777),new $Uint64(3145092172,2812560399)]),$toNativeArray($kindUint64,[new $Uint64(2227724681,560842221),new $Uint64(3931365215,3515700499)]),$toNativeArray($kindUint64,[new $Uint64(855457013,3034880948),new $Uint64(2457103259,3807925548)]),$toNativeArray($kindUint64,[new $Uint64(1069321267,572375713),new $Uint64(3071379074,3686165111)]),$toNativeArray($kindUint64,[new $Uint64(262909759,3936695114),new $Uint64(3839223843,2460222741)]),$toNativeArray($kindUint64,[new $Uint64(701189511,4071047182),new $Uint64(2399514902,1000768301)]),$toNativeArray($kindUint64,[new $Uint64(1950228713,4015067154),new $Uint64(2999393627,3398444024)]),$toNativeArray($kindUint64,[new $Uint64(2437785892,1797608470),new $Uint64(3749242034,3174313206)]),$toNativeArray($kindUint64,[new $Uint64(449874358,3270988942),new $Uint64(2343276271,3057687578)]),$toNativeArray($kindUint64,[new $Uint64(2709826596,1941252529),new $Uint64(2929095339,2748367648)]),$toNativeArray($kindUint64,[new $Uint64(3387283245,2426565662),new $Uint64(3661369174,2361717736)]),$toNativeArray($kindUint64,[new $Uint64(2117052028,2053474450),new $Uint64(2288355734,402331761)]),$toNativeArray($kindUint64,[new $Uint64(3720056859,2566843063),new $Uint64(2860444667,2650398349)]),$toNativeArray($kindUint64,[new $Uint64(1428845602,2134812005),new $Uint64(3575555834,2239256113)]),$toNativeArray($kindUint64,[new $Uint64(3577383061,2407999327),new $Uint64(2234722396,2473276894)]),$toNativeArray($kindUint64,[new $Uint64(2324245178,4083740983),new $Uint64(2793402995,3091596118)]),$toNativeArray($kindUint64,[new $Uint64(757822825,2957192581),new $Uint64(3491753744,2790753324)]),$toNativeArray($kindUint64,[new $Uint64(2621122914,237632627),new $Uint64(2182346090,1744220827)]),$toNativeArray($kindUint64,[new $Uint64(2202661818,2444524431),new $Uint64(2727932613,32792386)]),$toNativeArray($kindUint64,[new $Uint64(605843625,908171891),new $Uint64(3409915766,1114732307)]),$toNativeArray($kindUint64,[new $Uint64(3978530003,2208956688),new $Uint64(4262394707,3540899031)]),$toNativeArray($kindUint64,[new $Uint64(4097193988,843727018),new $Uint64(2663996692,1676190982)]),$toNativeArray($kindUint64,[new $Uint64(2974008837,1054658773),new $Uint64(3329995865,2095238728)]),$toNativeArray($kindUint64,[new $Uint64(3717511046,2392065290),new $Uint64(4162494831,3692790234)]),$toNativeArray($kindUint64,[new $Uint64(3397186228,421298982),new $Uint64(2601559269,3918606632)]),$toNativeArray($kindUint64,[new $Uint64(4246482785,526623728),new $Uint64(3251949087,1677032818)]),$toNativeArray($kindUint64,[new $Uint64(3160619833,1732021484),new $Uint64(4064936359,1022549199)]),$toNativeArray($kindUint64,[new $Uint64(3586000131,3766867987),new $Uint64(2540585224,2249705985)]),$toNativeArray($kindUint64,[new $Uint64(1261274692,3634843160),new $Uint64(3175731530,2812132482)]),$toNativeArray($kindUint64,[new $Uint64(3724077014,248586654),new $Uint64(3969664413,1367681954)]),$toNativeArray($kindUint64,[new $Uint64(3401289957,3376592131),new $Uint64(2481040258,1391672133)]),$toNativeArray($kindUint64,[new $Uint64(1030386975,999514691),new $Uint64(3101300322,3887073815)]),$toNativeArray($kindUint64,[new $Uint64(214241895,175651540),new $Uint64(3876625403,2711358621)]),$toNativeArray($kindUint64,[new $Uint64(670772096,1720394949),new $Uint64(2422890877,1157728226)]),$toNativeArray($kindUint64,[new $Uint64(2985948768,2150493686),new $Uint64(3028613596,2520902106)]),$toNativeArray($kindUint64,[new $Uint64(1584952312,2688117107),new $Uint64(3785766995,3151127633)]),$toNativeArray($kindUint64,[new $Uint64(3674949755,1680073192),new $Uint64(2366104372,1432583858)]),$toNativeArray($kindUint64,[new $Uint64(2446203546,1026349666),new $Uint64(2957630465,1790729823)]),$toNativeArray($kindUint64,[new $Uint64(1984012608,3430420731),new $Uint64(3697038081,3312154103)]),$toNativeArray($kindUint64,[new $Uint64(2850620616,2144012957),new $Uint64(2310648801,459483578)]),$toNativeArray($kindUint64,[new $Uint64(1415792122,2680016196),new $Uint64(2888311001,1648096297)]),$toNativeArray($kindUint64,[new $Uint64(2843481977,1202536597),new $Uint64(3610388751,3133862195)]),$toNativeArray($kindUint64,[new $Uint64(1240305323,3435939933),new $Uint64(2256492969,3569276608)]),$toNativeArray($kindUint64,[new $Uint64(1550381654,3221183092),new $Uint64(2820616212,1240370288)]),$toNativeArray($kindUint64,[new $Uint64(1937977068,1878995217),new $Uint64(3525770265,1550462860)]),$toNativeArray($kindUint64,[new $Uint64(3358719315,3321855659),new $Uint64(2203606415,3653393847)]),$toNativeArray($kindUint64,[new $Uint64(3124657320,3078577749),new $Uint64(2754508019,3493000485)]),$toNativeArray($kindUint64,[new $Uint64(684596178,3848222187),new $Uint64(3443135024,3292508783)]),$toNativeArray($kindUint64,[new $Uint64(2038485347,3478880691),new $Uint64(2151959390,2057817989)]),$toNativeArray($kindUint64,[new $Uint64(3621848508,3274859039),new $Uint64(2689949238,424788838)]),$toNativeArray($kindUint64,[new $Uint64(2379826987,4093573799),new $Uint64(3362436547,2678469696)]),$toNativeArray($kindUint64,[new $Uint64(2974783734,4043225425),new $Uint64(4203045684,2274345296)]),$toNativeArray($kindUint64,[new $Uint64(1859239834,1453274067),new $Uint64(2626903552,3568949458)]),$toNativeArray($kindUint64,[new $Uint64(176566144,3964076232),new $Uint64(3283629441,166219527)]),$toNativeArray($kindUint64,[new $Uint64(3441933153,660127994),new $Uint64(4104536801,1281516232)]),$toNativeArray($kindUint64,[new $Uint64(2151208220,3096934556),new $Uint64(2565335500,3485302205)]),$toNativeArray($kindUint64,[new $Uint64(3762752099,3871168195),new $Uint64(3206669376,61660460)]),$toNativeArray($kindUint64,[new $Uint64(408472828,3765218420),new $Uint64(4008336720,77075576)]),$toNativeArray($kindUint64,[new $Uint64(255295518,205777864),new $Uint64(2505210450,48172235)]),$toNativeArray($kindUint64,[new $Uint64(3540344869,2404705978),new $Uint64(3131513062,2207698941)]),$toNativeArray($kindUint64,[new $Uint64(1204205614,4079624297),new $Uint64(3914391328,612140029)]),$toNativeArray($kindUint64,[new $Uint64(1289499421,1476023361),new $Uint64(2446494580,382587518)]),$toNativeArray($kindUint64,[new $Uint64(3759357924,2918771026),new $Uint64(3058118225,478234397)]),$toNativeArray($kindUint64,[new $Uint64(1477971933,3648463782),new $Uint64(3822647781,1671534821)]),$toNativeArray($kindUint64,[new $Uint64(1460603370,2817160776),new $Uint64(2389154863,1581580175)]),$toNativeArray($kindUint64,[new $Uint64(752012389,1373967322),new $Uint64(2986443579,903233395)]),$toNativeArray($kindUint64,[new $Uint64(4161240958,2791200977),new $Uint64(3733054474,55299919)]),$toNativeArray($kindUint64,[new $Uint64(4211388335,670758786),new $Uint64(2333159046,1108304273)]),$toNativeArray($kindUint64,[new $Uint64(2043009946,4059673955),new $Uint64(2916448807,3532863990)]),$toNativeArray($kindUint64,[new $Uint64(406278785,2927108796),new $Uint64(3645561009,3342338164)]),$toNativeArray($kindUint64,[new $Uint64(2401407889,218830261),new $Uint64(2278475631,478348616)]),$toNativeArray($kindUint64,[new $Uint64(3001759861,1347279650),new $Uint64(2848094538,3819161242)]),$toNativeArray($kindUint64,[new $Uint64(1604716178,2757841387),new $Uint64(3560118173,2626467905)]),$toNativeArray($kindUint64,[new $Uint64(3687302171,2797392691),new $Uint64(2225073858,2178413352)]),$toNativeArray($kindUint64,[new $Uint64(314160418,2422999040),new $Uint64(2781342323,575533043)]),$toNativeArray($kindUint64,[new $Uint64(3613925995,881265152),new $Uint64(3476677903,3940641775)]),$toNativeArray($kindUint64,[new $Uint64(3869316483,13919808),new $Uint64(2172923689,4073513845)]),$toNativeArray($kindUint64,[new $Uint64(1615420131,3238625232),new $Uint64(2716154612,1870666835)]),$toNativeArray($kindUint64,[new $Uint64(945533340,2974539716),new $Uint64(3395193265,2338333544)]),$toNativeArray($kindUint64,[new $Uint64(1181916675,3718174645),new $Uint64(4243991581,3996658754)]),$toNativeArray($kindUint64,[new $Uint64(1812439746,1786988241),new $Uint64(2652494738,3034782633)]),$toNativeArray($kindUint64,[new $Uint64(3339291507,86251653),new $Uint64(3315618423,1645994643)]),$toNativeArray($kindUint64,[new $Uint64(3100372559,3329040039),new $Uint64(4144523029,983751480)]),$toNativeArray($kindUint64,[new $Uint64(1937732849,3691262760),new $Uint64(2590326893,1151715587)]),$toNativeArray($kindUint64,[new $Uint64(1348424238,1392852978),new $Uint64(3237908616,2513386308)]),$toNativeArray($kindUint64,[new $Uint64(1685530297,3888549871),new $Uint64(4047385770,3141732885)]),$toNativeArray($kindUint64,[new $Uint64(1590327348,819730933),new $Uint64(2529616106,3037324877)]),$toNativeArray($kindUint64,[new $Uint64(3061651009,1024663666),new $Uint64(3162020133,1649172448)]),$toNativeArray($kindUint64,[new $Uint64(3827063761,2354571407),new $Uint64(3952525166,3135207384)]),$toNativeArray($kindUint64,[new $Uint64(2391914850,4155961689),new $Uint64(2470328229,885762791)]),$toNativeArray($kindUint64,[new $Uint64(1916151739,3047468464),new $Uint64(3087910286,2180945313)]),$toNativeArray($kindUint64,[new $Uint64(3468931498,2735593756),new $Uint64(3859887858,578697993)]),$toNativeArray($kindUint64,[new $Uint64(557469450,2783487921),new $Uint64(2412429911,1435428070)]),$toNativeArray($kindUint64,[new $Uint64(2844320461,1331876253),new $Uint64(3015537389,720543263)]),$toNativeArray($kindUint64,[new $Uint64(2481658752,2738587141),new $Uint64(3769421736,1974420903)]),$toNativeArray($kindUint64,[new $Uint64(3161649456,1711616963),new $Uint64(2355888585,1234013064)]),$toNativeArray($kindUint64,[new $Uint64(3952061820,2139521204),new $Uint64(2944860731,2616258154)]),$toNativeArray($kindUint64,[new $Uint64(2792593627,2674401505),new $Uint64(3681075914,2196580869)]),$toNativeArray($kindUint64,[new $Uint64(2282241929,1134630028),new $Uint64(2300672446,2446604867)]),$toNativeArray($kindUint64,[new $Uint64(1779060587,2492029360),new $Uint64(2875840558,910772436)]),$toNativeArray($kindUint64,[new $Uint64(2223825734,2041294876),new $Uint64(3594800697,3285949193)]),$toNativeArray($kindUint64,[new $Uint64(4074245644,202067473),new $Uint64(2246750436,443105509)]),$toNativeArray($kindUint64,[new $Uint64(1871581583,252584341),new $Uint64(2808438045,553881887)]),$toNativeArray($kindUint64,[new $Uint64(1265735154,3536955899),new $Uint64(3510547556,1766094183)])]);CH=new DW([new CG.ptr(0,""),new CG.ptr(1,"5"),new CG.ptr(1,"25"),new CG.ptr(1,"125"),new CG.ptr(2,"625"),new CG.ptr(2,"3125"),new CG.ptr(2,"15625"),new CG.ptr(3,"78125"),new CG.ptr(3,"390625"),new CG.ptr(3,"1953125"),new CG.ptr(4,"9765625"),new CG.ptr(4,"48828125"),new CG.ptr(4,"244140625"),new CG.ptr(4,"1220703125"),new CG.ptr(5,"6103515625"),new CG.ptr(5,"30517578125"),new CG.ptr(5,"152587890625"),new CG.ptr(6,"762939453125"),new CG.ptr(6,"3814697265625"),new CG.ptr(6,"19073486328125"),new CG.ptr(7,"95367431640625"),new CG.ptr(7,"476837158203125"),new CG.ptr(7,"2384185791015625"),new CG.ptr(7,"11920928955078125"),new CG.ptr(8,"59604644775390625"),new CG.ptr(8,"298023223876953125"),new CG.ptr(8,"1490116119384765625"),new CG.ptr(9,"7450580596923828125"),new CG.ptr(9,"37252902984619140625"),new CG.ptr(9,"186264514923095703125"),new CG.ptr(10,"931322574615478515625"),new CG.ptr(10,"4656612873077392578125"),new CG.ptr(10,"23283064365386962890625"),new CG.ptr(10,"116415321826934814453125"),new CG.ptr(11,"582076609134674072265625"),new CG.ptr(11,"2910383045673370361328125"),new CG.ptr(11,"14551915228366851806640625"),new CG.ptr(12,"72759576141834259033203125"),new CG.ptr(12,"363797880709171295166015625"),new CG.ptr(12,"1818989403545856475830078125"),new CG.ptr(13,"9094947017729282379150390625"),new CG.ptr(13,"45474735088646411895751953125"),new CG.ptr(13,"227373675443232059478759765625"),new CG.ptr(13,"1136868377216160297393798828125"),new CG.ptr(14,"5684341886080801486968994140625"),new CG.ptr(14,"28421709430404007434844970703125"),new CG.ptr(14,"142108547152020037174224853515625"),new CG.ptr(15,"710542735760100185871124267578125"),new CG.ptr(15,"3552713678800500929355621337890625"),new CG.ptr(15,"17763568394002504646778106689453125"),new CG.ptr(16,"88817841970012523233890533447265625"),new CG.ptr(16,"444089209850062616169452667236328125"),new CG.ptr(16,"2220446049250313080847263336181640625"),new CG.ptr(16,"11102230246251565404236316680908203125"),new CG.ptr(17,"55511151231257827021181583404541015625"),new CG.ptr(17,"277555756156289135105907917022705078125"),new CG.ptr(17,"1387778780781445675529539585113525390625"),new CG.ptr(18,"6938893903907228377647697925567626953125"),new CG.ptr(18,"34694469519536141888238489627838134765625"),new CG.ptr(18,"173472347597680709441192448139190673828125"),new CG.ptr(19,"867361737988403547205962240695953369140625")]);$pkg.ErrRange=E.New("value out of range");$pkg.ErrSyntax=E.New("invalid syntax");CW=true;DA=new DX([1,3,6,9,13,16,19,23,26]);DB=new DY([1,10,100,1000,10000,100000,1e+06,1e+07,1e+08,1e+09,1e+10,1e+11,1e+12,1e+13,1e+14,1e+15,1e+16,1e+17,1e+18,1e+19,1e+20,1e+21,1e+22]);DC=new DZ([1,10,100,1000,10000,100000,1e+06,1e+07,1e+08,1e+09,1e+10]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["reflect"]=(function(){var $pkg={},$init,A,N,B,L,C,M,D,E,F,G,H,I,J,K,Q,R,U,AG,CK,CL,CM,CN,CO,CP,CQ,CR,CS,CT,CU,CV,CW,CX,CY,DA,DH,DI,DJ,DL,DM,DN,GK,GL,GM,GN,HY,JB,JC,JD,JE,JF,JG,JH,JJ,JL,JM,JT,JU,JW,JX,JY,JZ,KA,KB,KC,KD,KE,KI,KL,KM,KN,KO,KP,KS,KT,KU,KV,LB,LC,LD,LE,LJ,LK,LL,LV,AE,AF,DB,GE,GO,GR,GT,IL,IM,IQ,V,AH,AI,BB,BC,BD,BE,BF,BG,BH,BI,BJ,BK,BL,BM,BN,BO,BP,BQ,BR,BS,BT,BU,BV,BW,BX,DP,DQ,DS,DT,DU,DV,DW,EX,FC,FI,FJ,GF,GG,GH,GI,GJ,GP,GQ,GS,GU,GW,GX,GY,GZ,HA,HB,HC,HF,HH,HJ,HK,HL,HN,HR,HS,HT,HU,HV,HW,HX,HZ,IA,IB,IC,ID,IE,IF,IH,II,IJ,IK,IN,IO,IP,IR,IS,IW,IX;A=$packages["errors"];N=$packages["github.com/gopherjs/gopherjs/js"];B=$packages["internal/abi"];L=$packages["internal/bytealg"];C=$packages["internal/goarch"];M=$packages["internal/goexperiment"];D=$packages["internal/itoa"];E=$packages["internal/unsafeheader"];F=$packages["math"];G=$packages["runtime"];H=$packages["strconv"];I=$packages["sync"];J=$packages["unicode"];K=$packages["unicode/utf8"];Q=$pkg.Value=$newType(0,$kindStruct,"reflect.Value",true,"reflect",true,function(typ_,ptr_,flag_){this.$val=this;if(arguments.length===0){this.typ=JC.nil;this.ptr=0;this.flag=0;return;}this.typ=typ_;this.ptr=ptr_;this.flag=flag_;});R=$pkg.flag=$newType(4,$kindUintptr,"reflect.flag",true,"reflect",false,null);U=$pkg.ValueError=$newType(0,$kindStruct,"reflect.ValueError",true,"reflect",true,function(Method_,Kind_){this.$val=this;if(arguments.length===0){this.Method="";this.Kind=0;return;}this.Method=Method_;this.Kind=Kind_;});AG=$pkg.MapIter=$newType(0,$kindStruct,"reflect.MapIter",true,"reflect",true,function(m_,hiter_){this.$val=this;if(arguments.length===0){this.m=new Q.ptr(JC.nil,0,0);this.hiter=new HY.ptr($ifaceNil,null,null,0,null);return;}this.m=m_;this.hiter=hiter_;});CK=$pkg.Type=$newType(8,$kindInterface,"reflect.Type",true,"reflect",true,null);CL=$pkg.Kind=$newType(4,$kindUint,"reflect.Kind",true,"reflect",true,null);CM=$pkg.tflag=$newType(1,$kindUint8,"reflect.tflag",true,"reflect",false,null);CN=$pkg.rtype=$newType(0,$kindStruct,"reflect.rtype",true,"reflect",false,function(size_,ptrdata_,hash_,tflag_,align_,fieldAlign_,kind_,equal_,gcdata_,str_,ptrToThis_){this.$val=this;if(arguments.length===0){this.size=0;this.ptrdata=0;this.hash=0;this.tflag=0;this.align=0;this.fieldAlign=0;this.kind=0;this.equal=$throwNilPointerError;this.gcdata=KE.nil;this.str=0;this.ptrToThis=0;return;}this.size=size_;this.ptrdata=ptrdata_;this.hash=hash_;this.tflag=tflag_;this.align=align_;this.fieldAlign=fieldAlign_;this.kind=kind_;this.equal=equal_;this.gcdata=gcdata_;this.str=str_;this.ptrToThis=ptrToThis_;});CO=$pkg.method=$newType(0,$kindStruct,"reflect.method",true,"reflect",false,function(name_,mtyp_,ifn_,tfn_){this.$val=this;if(arguments.length===0){this.name=0;this.mtyp=0;this.ifn=0;this.tfn=0;return;}this.name=name_;this.mtyp=mtyp_;this.ifn=ifn_;this.tfn=tfn_;});CP=$pkg.ChanDir=$newType(4,$kindInt,"reflect.ChanDir",true,"reflect",true,null);CQ=$pkg.arrayType=$newType(0,$kindStruct,"reflect.arrayType",true,"reflect",false,function(rtype_,elem_,slice_,len_){this.$val=this;if(arguments.length===0){this.rtype=new CN.ptr(0,0,0,0,0,0,0,$throwNilPointerError,KE.nil,0,0);this.elem=JC.nil;this.slice=JC.nil;this.len=0;return;}this.rtype=rtype_;this.elem=elem_;this.slice=slice_;this.len=len_;});CR=$pkg.chanType=$newType(0,$kindStruct,"reflect.chanType",true,"reflect",false,function(rtype_,elem_,dir_){this.$val=this;if(arguments.length===0){this.rtype=new CN.ptr(0,0,0,0,0,0,0,$throwNilPointerError,KE.nil,0,0);this.elem=JC.nil;this.dir=0;return;}this.rtype=rtype_;this.elem=elem_;this.dir=dir_;});CS=$pkg.imethod=$newType(0,$kindStruct,"reflect.imethod",true,"reflect",false,function(name_,typ_){this.$val=this;if(arguments.length===0){this.name=0;this.typ=0;return;}this.name=name_;this.typ=typ_;});CT=$pkg.interfaceType=$newType(0,$kindStruct,"reflect.interfaceType",true,"reflect",false,function(rtype_,pkgPath_,methods_){this.$val=this;if(arguments.length===0){this.rtype=new CN.ptr(0,0,0,0,0,0,0,$throwNilPointerError,KE.nil,0,0);this.pkgPath=new GM.ptr(KE.nil);this.methods=KL.nil;return;}this.rtype=rtype_;this.pkgPath=pkgPath_;this.methods=methods_;});CU=$pkg.mapType=$newType(0,$kindStruct,"reflect.mapType",true,"reflect",false,function(rtype_,key_,elem_,bucket_,hasher_,keysize_,valuesize_,bucketsize_,flags_){this.$val=this;if(arguments.length===0){this.rtype=new CN.ptr(0,0,0,0,0,0,0,$throwNilPointerError,KE.nil,0,0);this.key=JC.nil;this.elem=JC.nil;this.bucket=JC.nil;this.hasher=$throwNilPointerError;this.keysize=0;this.valuesize=0;this.bucketsize=0;this.flags=0;return;}this.rtype=rtype_;this.key=key_;this.elem=elem_;this.bucket=bucket_;this.hasher=hasher_;this.keysize=keysize_;this.valuesize=valuesize_;this.bucketsize=bucketsize_;this.flags=flags_;});CV=$pkg.ptrType=$newType(0,$kindStruct,"reflect.ptrType",true,"reflect",false,function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new CN.ptr(0,0,0,0,0,0,0,$throwNilPointerError,KE.nil,0,0);this.elem=JC.nil;return;}this.rtype=rtype_;this.elem=elem_;});CW=$pkg.sliceType=$newType(0,$kindStruct,"reflect.sliceType",true,"reflect",false,function(rtype_,elem_){this.$val=this;if(arguments.length===0){this.rtype=new CN.ptr(0,0,0,0,0,0,0,$throwNilPointerError,KE.nil,0,0);this.elem=JC.nil;return;}this.rtype=rtype_;this.elem=elem_;});CX=$pkg.structField=$newType(0,$kindStruct,"reflect.structField",true,"reflect",false,function(name_,typ_,offsetEmbed_){this.$val=this;if(arguments.length===0){this.name=new GM.ptr(KE.nil);this.typ=JC.nil;this.offsetEmbed=0;return;}this.name=name_;this.typ=typ_;this.offsetEmbed=offsetEmbed_;});CY=$pkg.structType=$newType(0,$kindStruct,"reflect.structType",true,"reflect",false,function(rtype_,pkgPath_,fields_){this.$val=this;if(arguments.length===0){this.rtype=new CN.ptr(0,0,0,0,0,0,0,$throwNilPointerError,KE.nil,0,0);this.pkgPath=new GM.ptr(KE.nil);this.fields=KM.nil;return;}this.rtype=rtype_;this.pkgPath=pkgPath_;this.fields=fields_;});DA=$pkg.Method=$newType(0,$kindStruct,"reflect.Method",true,"reflect",true,function(Name_,PkgPath_,Type_,Func_,Index_){this.$val=this;if(arguments.length===0){this.Name="";this.PkgPath="";this.Type=$ifaceNil;this.Func=new Q.ptr(JC.nil,0,0);this.Index=0;return;}this.Name=Name_;this.PkgPath=PkgPath_;this.Type=Type_;this.Func=Func_;this.Index=Index_;});DH=$pkg.nameOff=$newType(4,$kindInt32,"reflect.nameOff",true,"reflect",false,null);DI=$pkg.typeOff=$newType(4,$kindInt32,"reflect.typeOff",true,"reflect",false,null);DJ=$pkg.textOff=$newType(4,$kindInt32,"reflect.textOff",true,"reflect",false,null);DL=$pkg.StructField=$newType(0,$kindStruct,"reflect.StructField",true,"reflect",true,function(Name_,PkgPath_,Type_,Tag_,Offset_,Index_,Anonymous_){this.$val=this;if(arguments.length===0){this.Name="";this.PkgPath="";this.Type=$ifaceNil;this.Tag="";this.Offset=0;this.Index=JJ.nil;this.Anonymous=false;return;}this.Name=Name_;this.PkgPath=PkgPath_;this.Type=Type_;this.Tag=Tag_;this.Offset=Offset_;this.Index=Index_;this.Anonymous=Anonymous_;});DM=$pkg.StructTag=$newType(8,$kindString,"reflect.StructTag",true,"reflect",true,null);DN=$pkg.fieldScan=$newType(0,$kindStruct,"reflect.fieldScan",true,"reflect",false,function(typ_,index_){this.$val=this;if(arguments.length===0){this.typ=KD.nil;this.index=JJ.nil;return;}this.typ=typ_;this.index=index_;});GK=$pkg.uncommonType=$newType(0,$kindStruct,"reflect.uncommonType",true,"reflect",false,function(pkgPath_,mcount_,xcount_,moff_,_methods_){this.$val=this;if(arguments.length===0){this.pkgPath=0;this.mcount=0;this.xcount=0;this.moff=0;this._methods=JZ.nil;return;}this.pkgPath=pkgPath_;this.mcount=mcount_;this.xcount=xcount_;this.moff=moff_;this._methods=_methods_;});GL=$pkg.funcType=$newType(0,$kindStruct,"reflect.funcType",true,"reflect",false,function(rtype_,inCount_,outCount_,_in_,_out_){this.$val=this;if(arguments.length===0){this.rtype=new CN.ptr(0,0,0,0,0,0,0,$throwNilPointerError,KE.nil,0,0);this.inCount=0;this.outCount=0;this._in=JD.nil;this._out=JD.nil;return;}this.rtype=rtype_;this.inCount=inCount_;this.outCount=outCount_;this._in=_in_;this._out=_out_;});GM=$pkg.name=$newType(0,$kindStruct,"reflect.name",true,"reflect",false,function(bytes_){this.$val=this;if(arguments.length===0){this.bytes=KE.nil;return;}this.bytes=bytes_;});GN=$pkg.nameData=$newType(0,$kindStruct,"reflect.nameData",true,"reflect",false,function(name_,tag_,exported_,pkgPath_){this.$val=this;if(arguments.length===0){this.name="";this.tag="";this.exported=false;this.pkgPath="";return;}this.name=name_;this.tag=tag_;this.exported=exported_;this.pkgPath=pkgPath_;});HY=$pkg.hiter=$newType(0,$kindStruct,"reflect.hiter",true,"reflect",false,function(t_,m_,keys_,i_,last_){this.$val=this;if(arguments.length===0){this.t=$ifaceNil;this.m=null;this.keys=null;this.i=0;this.last=null;return;}this.t=t_;this.m=m_;this.keys=keys_;this.i=i_;this.last=last_;});JB=$sliceType(GM);JC=$ptrType(CN);JD=$sliceType(JC);JE=$sliceType($String);JF=$sliceType($emptyInterface);JG=$ptrType(N.Object);JH=$funcType([JF],[JG],true);JJ=$sliceType($Int);JL=$ptrType(G.Func);JM=$sliceType(Q);JT=$ptrType($UnsafePointer);JU=$ptrType(E.Slice);JW=$sliceType($Uint8);JX=$sliceType($Int32);JY=$ptrType(GK);JZ=$sliceType(CO);KA=$ptrType(CT);KB=$ptrType(CS);KC=$sliceType(DN);KD=$ptrType(CY);KE=$ptrType($Uint8);KI=$funcType([],[],false);KL=$sliceType(CS);KM=$sliceType(CX);KN=$ptrType(GN);KO=$structType("reflect",[{prop:"str",name:"str",embedded:false,exported:false,typ:$String,tag:""}]);KP=$sliceType(JG);KS=$ptrType($String);KT=$ptrType(GL);KU=$sliceType(CK);KV=$sliceType(KP);LB=$funcType([$String],[$Bool],false);LC=$ptrType(AG);LD=$arrayType($Uintptr,2);LE=$ptrType(U);LJ=$funcType([$UnsafePointer,$UnsafePointer],[$Bool],false);LK=$funcType([$UnsafePointer,$Uintptr],[$Uintptr],false);LL=$ptrType(CX);LV=$ptrType(HY);R.prototype.kind=function(){var ax;ax=this.$val;return((((ax&31)>>>0)>>>0));};$ptrType(R).prototype.kind=function(){return new R(this.$get()).kind();};R.prototype.ro=function(){var ax;ax=this.$val;if(!((((ax&96)>>>0)===0))){return 32;}return 0;};$ptrType(R).prototype.ro=function(){return new R(this.$get()).ro();};Q.ptr.prototype.pointer=function(){var ax;ax=this;if(!((ax.typ.size===4))||!ax.typ.pointers()){$panic(new $String("can't call pointer on a non-pointer Value"));}if(!((((ax.flag&128)>>>0)===0))){return(ax.ptr).$get();}return ax.ptr;};Q.prototype.pointer=function(){return this.$val.pointer();};U.ptr.prototype.Error=function(){var ax;ax=this;if(ax.Kind===0){return"reflect: call of "+ax.Method+" on zero Value";}return"reflect: call of "+ax.Method+" on "+new CL(ax.Kind).String()+" Value";};U.prototype.Error=function(){return this.$val.Error();};V=function(){var ax,ay,az;ax=G.Caller(2);ay=ax[0];az=G.FuncForPC(ay);if(az===JL.nil){return"unknown method";}return az.Name();};R.prototype.mustBe=function(ax){var ax,ay;ay=this.$val;if(!((((((ay&31)>>>0)>>>0))===ax))){$panic(new U.ptr(V(),new R(ay).kind()));}};$ptrType(R).prototype.mustBe=function(ax){return new R(this.$get()).mustBe(ax);};R.prototype.mustBeExported=function(){var ax;ax=this.$val;if((ax===0)||!((((ax&96)>>>0)===0))){new R(ax).mustBeExportedSlow();}};$ptrType(R).prototype.mustBeExported=function(){return new R(this.$get()).mustBeExported();};R.prototype.mustBeExportedSlow=function(){var ax;ax=this.$val;if(ax===0){$panic(new U.ptr(IW(),0));}if(!((((ax&96)>>>0)===0))){$panic(new $String("reflect: "+IW()+" using value obtained using unexported field"));}};$ptrType(R).prototype.mustBeExportedSlow=function(){return new R(this.$get()).mustBeExportedSlow();};R.prototype.mustBeAssignable=function(){var ax;ax=this.$val;if(!((((ax&96)>>>0)===0))||(((ax&256)>>>0)===0)){new R(ax).mustBeAssignableSlow();}};$ptrType(R).prototype.mustBeAssignable=function(){return new R(this.$get()).mustBeAssignable();};R.prototype.mustBeAssignableSlow=function(){var ax;ax=this.$val;if(ax===0){$panic(new U.ptr(IW(),0));}if(!((((ax&96)>>>0)===0))){$panic(new $String("reflect: "+IW()+" using value obtained using unexported field"));}if(((ax&256)>>>0)===0){$panic(new $String("reflect: "+IW()+" using unaddressable value"));}};$ptrType(R).prototype.mustBeAssignableSlow=function(){return new R(this.$get()).mustBeAssignableSlow();};Q.ptr.prototype.Addr=function(){var ax,ay;ax=this;if(((ax.flag&256)>>>0)===0){$panic(new $String("reflect.Value.Addr of unaddressable value"));}ay=(ax.flag&96)>>>0;return new Q.ptr(ax.typ.ptrTo(),ax.ptr,(ay|22)>>>0);};Q.prototype.Addr=function(){return this.$val.Addr();};Q.ptr.prototype.Bool=function(){var ax;ax=this;new R(ax.flag).mustBe(1);return(ax.ptr).$get();};Q.prototype.Bool=function(){return this.$val.Bool();};Q.ptr.prototype.Bytes=function(){var{ax,ay,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:ax=this;new R(ax.flag).mustBe(23);ay=ax.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}if(!((ay===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-byte slice"));case 2:$s=-1;return(ax.ptr).$get();}return;}var $f={$blk:Q.ptr.prototype.Bytes,$c:true,$r,ax,ay,$s};return $f;};Q.prototype.Bytes=function(){return this.$val.Bytes();};Q.ptr.prototype.runes=function(){var{ax,ay,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:ax=this;new R(ax.flag).mustBe(23);ay=ax.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}if(!((ay===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.Bytes of non-rune slice"));case 2:$s=-1;return(ax.ptr).$get();}return;}var $f={$blk:Q.ptr.prototype.runes,$c:true,$r,ax,ay,$s};return $f;};Q.prototype.runes=function(){return this.$val.runes();};Q.ptr.prototype.CanAddr=function(){var ax;ax=this;return!((((ax.flag&256)>>>0)===0));};Q.prototype.CanAddr=function(){return this.$val.CanAddr();};Q.ptr.prototype.CanSet=function(){var ax;ax=this;return((ax.flag&352)>>>0)===256;};Q.prototype.CanSet=function(){return this.$val.CanSet();};Q.ptr.prototype.Call=function(ax){var{ax,ay,az,ba,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=this;new R(ay.flag).mustBe(19);new R(ay.flag).mustBeExported();az=$clone(ay,Q).call("Call",ax);$s=1;case 1:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ba=az;$s=2;case 2:return ba;}return;}var $f={$blk:Q.ptr.prototype.Call,$c:true,$r,ax,ay,az,ba,$s};return $f;};Q.prototype.Call=function(ax){return this.$val.Call(ax);};Q.ptr.prototype.CallSlice=function(ax){var{ax,ay,az,ba,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=this;new R(ay.flag).mustBe(19);new R(ay.flag).mustBeExported();az=$clone(ay,Q).call("CallSlice",ax);$s=1;case 1:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ba=az;$s=2;case 2:return ba;}return;}var $f={$blk:Q.ptr.prototype.CallSlice,$c:true,$r,ax,ay,az,ba,$s};return $f;};Q.prototype.CallSlice=function(ax){return this.$val.CallSlice(ax);};Q.ptr.prototype.CanComplex=function(){var ax,ay;ax=this;ay=new R(ax.flag).kind();if((ay===(15))||(ay===(16))){return true;}else{return false;}};Q.prototype.CanComplex=function(){return this.$val.CanComplex();};Q.ptr.prototype.Complex=function(){var ax,ay,az,ba;ax=this;ay=new R(ax.flag).kind();az=ay;if(az===(15)){return((ba=(ax.ptr).$get(),new $Complex128(ba.$real,ba.$imag)));}else if(az===(16)){return(ax.ptr).$get();}$panic(new U.ptr("reflect.Value.Complex",new R(ax.flag).kind()));};Q.prototype.Complex=function(){return this.$val.Complex();};Q.ptr.prototype.FieldByIndex=function(ax){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=this;if(ax.$length===1){$s=1;continue;}$s=2;continue;case 1:az=$clone(ay,Q).Field((0>=ax.$length?($throwRuntimeError("index out of range"),undefined):ax.$array[ax.$offset+0]));$s=3;case 3:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ba=az;$s=4;case 4:return ba;case 2:new R(ay.flag).mustBe(25);bb=ax;bc=0;case 5:if(!(bc<bb.$length)){$s=6;continue;}bd=bc;be=((bc<0||bc>=bb.$length)?($throwRuntimeError("index out of range"),undefined):bb.$array[bb.$offset+bc]);if(bd>0){$s=7;continue;}$s=8;continue;case 7:if(!($clone(ay,Q).Kind()===22)){bf=false;$s=11;continue s;}bg=ay.typ.Elem().Kind();$s=12;case 12:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}bf=bg===25;case 11:if(bf){$s=9;continue;}$s=10;continue;case 9:if($clone(ay,Q).IsNil()){$panic(new $String("reflect: indirection through nil pointer to embedded struct"));}bh=$clone(ay,Q).Elem();$s=13;case 13:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}ay=bh;case 10:case 8:bi=$clone(ay,Q).Field(be);$s=14;case 14:if($c){$c=false;bi=bi.$blk();}if(bi&&bi.$blk!==undefined){break s;}ay=bi;bc++;$s=5;continue;case 6:$s=-1;return ay;}return;}var $f={$blk:Q.ptr.prototype.FieldByIndex,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,$s};return $f;};Q.prototype.FieldByIndex=function(ax){return this.$val.FieldByIndex(ax);};Q.ptr.prototype.FieldByIndexErr=function(ax){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=this;if(ax.$length===1){$s=1;continue;}$s=2;continue;case 1:az=$clone(ay,Q).Field((0>=ax.$length?($throwRuntimeError("index out of range"),undefined):ax.$array[ax.$offset+0]));$s=3;case 3:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ba=[az,$ifaceNil];$s=4;case 4:return ba;case 2:new R(ay.flag).mustBe(25);bb=ax;bc=0;case 5:if(!(bc<bb.$length)){$s=6;continue;}bd=bc;be=((bc<0||bc>=bb.$length)?($throwRuntimeError("index out of range"),undefined):bb.$array[bb.$offset+bc]);if(bd>0){$s=7;continue;}$s=8;continue;case 7:if(!($clone(ay,Q).Kind()===22)){bf=false;$s=11;continue s;}bg=ay.typ.Elem().Kind();$s=12;case 12:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}bf=bg===25;case 11:if(bf){$s=9;continue;}$s=10;continue;case 9:if($clone(ay,Q).IsNil()){$s=13;continue;}$s=14;continue;case 13:bh=ay.typ.Elem().Name();$s=15;case 15:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bi=A.New("reflect: indirection through nil pointer to embedded struct field "+bh);$s=16;case 16:if($c){$c=false;bi=bi.$blk();}if(bi&&bi.$blk!==undefined){break s;}bj=[new Q.ptr(JC.nil,0,0),bi];$s=17;case 17:return bj;case 14:bk=$clone(ay,Q).Elem();$s=18;case 18:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}ay=bk;case 10:case 8:bl=$clone(ay,Q).Field(be);$s=19;case 19:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}ay=bl;bc++;$s=5;continue;case 6:$s=-1;return[ay,$ifaceNil];}return;}var $f={$blk:Q.ptr.prototype.FieldByIndexErr,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,$s};return $f;};Q.prototype.FieldByIndexErr=function(ax){return this.$val.FieldByIndexErr(ax);};Q.ptr.prototype.FieldByName=function(ax){var{ax,ay,az,ba,bb,bc,bd,be,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=this;new R(ay.flag).mustBe(25);ba=ay.typ.FieldByName(ax);$s=1;case 1:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}az=ba;bb=$clone(az[0],DL);bc=az[1];if(bc){$s=2;continue;}$s=3;continue;case 2:bd=$clone(ay,Q).FieldByIndex(bb.Index);$s=4;case 4:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}be=bd;$s=5;case 5:return be;case 3:$s=-1;return new Q.ptr(JC.nil,0,0);}return;}var $f={$blk:Q.ptr.prototype.FieldByName,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,$s};return $f;};Q.prototype.FieldByName=function(ax){return this.$val.FieldByName(ax);};Q.ptr.prototype.FieldByNameFunc=function(ax){var{ax,ay,az,ba,bb,bc,bd,be,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=this;ba=ay.typ.FieldByNameFunc(ax);$s=1;case 1:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}az=ba;bb=$clone(az[0],DL);bc=az[1];if(bc){$s=2;continue;}$s=3;continue;case 2:bd=$clone(ay,Q).FieldByIndex(bb.Index);$s=4;case 4:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}be=bd;$s=5;case 5:return be;case 3:$s=-1;return new Q.ptr(JC.nil,0,0);}return;}var $f={$blk:Q.ptr.prototype.FieldByNameFunc,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,$s};return $f;};Q.prototype.FieldByNameFunc=function(ax){return this.$val.FieldByNameFunc(ax);};Q.ptr.prototype.CanFloat=function(){var ax,ay;ax=this;ay=new R(ax.flag).kind();if((ay===(13))||(ay===(14))){return true;}else{return false;}};Q.prototype.CanFloat=function(){return this.$val.CanFloat();};Q.ptr.prototype.Float=function(){var ax,ay,az;ax=this;ay=new R(ax.flag).kind();az=ay;if(az===(13)){return((ax.ptr).$get());}else if(az===(14)){return(ax.ptr).$get();}$panic(new U.ptr("reflect.Value.Float",new R(ax.flag).kind()));};Q.prototype.Float=function(){return this.$val.Float();};Q.ptr.prototype.CanInt=function(){var ax,ay;ax=this;ay=new R(ax.flag).kind();if((ay===(2))||(ay===(3))||(ay===(4))||(ay===(5))||(ay===(6))){return true;}else{return false;}};Q.prototype.CanInt=function(){return this.$val.CanInt();};Q.ptr.prototype.Int=function(){var ax,ay,az,ba;ax=this;ay=new R(ax.flag).kind();az=ax.ptr;ba=ay;if(ba===(2)){return(new $Int64(0,(az).$get()));}else if(ba===(3)){return(new $Int64(0,(az).$get()));}else if(ba===(4)){return(new $Int64(0,(az).$get()));}else if(ba===(5)){return(new $Int64(0,(az).$get()));}else if(ba===(6)){return(az).$get();}$panic(new U.ptr("reflect.Value.Int",new R(ax.flag).kind()));};Q.prototype.Int=function(){return this.$val.Int();};Q.ptr.prototype.CanInterface=function(){var ax;ax=this;if(ax.flag===0){$panic(new U.ptr("reflect.Value.CanInterface",0));}return((ax.flag&96)>>>0)===0;};Q.prototype.CanInterface=function(){return this.$val.CanInterface();};Q.ptr.prototype.Interface=function(){var{ax,ay,az,ba,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:ax=$ifaceNil;ay=this;az=II($clone(ay,Q),true);$s=1;case 1:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ax=az;ba=ax;$s=2;case 2:return ba;}return;}var $f={$blk:Q.ptr.prototype.Interface,$c:true,$r,ax,ay,az,ba,$s};return $f;};Q.prototype.Interface=function(){return this.$val.Interface();};Q.ptr.prototype.IsValid=function(){var ax;ax=this;return!((ax.flag===0));};Q.prototype.IsValid=function(){return this.$val.IsValid();};Q.ptr.prototype.IsZero=function(){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:ax=this;ay=new R(ax.flag).kind();if(ay===(1)){$s=2;continue;}if((ay===(2))||(ay===(3))||(ay===(4))||(ay===(5))||(ay===(6))){$s=3;continue;}if((ay===(7))||(ay===(8))||(ay===(9))||(ay===(10))||(ay===(11))||(ay===(12))){$s=4;continue;}if((ay===(13))||(ay===(14))){$s=5;continue;}if((ay===(15))||(ay===(16))){$s=6;continue;}if(ay===(17)){$s=7;continue;}if((ay===(18))||(ay===(19))||(ay===(20))||(ay===(21))||(ay===(22))||(ay===(23))||(ay===(26))){$s=8;continue;}if(ay===(24)){$s=9;continue;}if(ay===(25)){$s=10;continue;}$s=11;continue;case 2:$s=-1;return!$clone(ax,Q).Bool();case 3:$s=-1;return(az=$clone(ax,Q).Int(),(az.$high===0&&az.$low===0));case 4:$s=-1;return(ba=$clone(ax,Q).Uint(),(ba.$high===0&&ba.$low===0));case 5:$s=-1;return(bb=F.Float64bits($clone(ax,Q).Float()),(bb.$high===0&&bb.$low===0));case 6:bc=$clone(ax,Q).Complex();$s=-1;return(bd=F.Float64bits(bc.$real),(bd.$high===0&&bd.$low===0))&&(be=F.Float64bits(bc.$imag),(be.$high===0&&be.$low===0));case 7:bf=0;case 13:if(!(bf<$clone(ax,Q).Len())){$s=14;continue;}bg=$clone(ax,Q).Index(bf);$s=17;case 17:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}bh=$clone(bg,Q).IsZero();$s=18;case 18:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}if(!bh){$s=15;continue;}$s=16;continue;case 15:$s=-1;return false;case 16:bf=bf+(1)>>0;$s=13;continue;case 14:$s=-1;return true;case 8:$s=-1;return $clone(ax,Q).IsNil();case 9:$s=-1;return $clone(ax,Q).Len()===0;case 10:bi=0;case 19:if(!(bi<$clone(ax,Q).NumField())){$s=20;continue;}bj=$clone(ax,Q).Field(bi);$s=23;case 23:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}bk=$clone(bj,Q).IsZero();$s=24;case 24:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}if(!bk){$s=21;continue;}$s=22;continue;case 21:$s=-1;return false;case 22:bi=bi+(1)>>0;$s=19;continue;case 20:$s=-1;return true;case 11:$panic(new U.ptr("reflect.Value.IsZero",$clone(ax,Q).Kind()));case 12:case 1:$s=-1;return false;}return;}var $f={$blk:Q.ptr.prototype.IsZero,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,$s};return $f;};Q.prototype.IsZero=function(){return this.$val.IsZero();};Q.ptr.prototype.Kind=function(){var ax;ax=this;return new R(ax.flag).kind();};Q.prototype.Kind=function(){return this.$val.Kind();};Q.ptr.prototype.MapIndex=function(ax){var{ax,ay,az,ba,bb,bc,bd,be,bf,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=this;new R(ay.flag).mustBe(21);az=(ay.typ.kindType);ba=0;if((az.key===AF||(new R(ax.flag).kind()===24))&&az.key===ax.typ&&az.elem.size<=128){$s=1;continue;}$s=2;continue;case 1:bb=(ax.ptr).$get();ba=HV(ay.typ,$clone(ay,Q).pointer(),bb);$s=3;continue;case 2:bc=$clone(ax,Q).assignTo("reflect.Value.MapIndex",az.key,0);$s=4;case 4:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}ax=bc;bd=0;if(!((((ax.flag&128)>>>0)===0))){bd=ax.ptr;}else{bd=((ax.$ptr_ptr||(ax.$ptr_ptr=new JT(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ax))));}ba=HS(ay.typ,$clone(ay,Q).pointer(),bd);case 3:if(ba===0){$s=-1;return new Q.ptr(JC.nil,0,0);}be=az.elem;bf=new R((((ay.flag|ax.flag)>>>0))).ro();bf=(bf|(((be.Kind()>>>0))))>>>0;$s=-1;return AH(be,bf,ba);}return;}var $f={$blk:Q.ptr.prototype.MapIndex,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,$s};return $f;};Q.prototype.MapIndex=function(ax){return this.$val.MapIndex(ax);};Q.ptr.prototype.MapKeys=function(){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:ax=[ax];ay=this;new R(ay.flag).mustBe(21);az=(ay.typ.kindType);ba=az.key;bb=(new R(ay.flag).ro()|((ba.Kind()>>>0)))>>>0;bc=$clone(ay,Q).pointer();bd=0;if(!(bc===0)){bd=ID(bc);}ax[0]=new HY.ptr($ifaceNil,null,null,0,null);HZ(ay.typ,bc,ax[0]);be=$makeSlice(JM,bd);bf=0;bf=0;case 1:if(!(bf<be.$length)){$s=2;continue;}bg=IA(ax[0]);$s=3;case 3:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}bh=bg;if(bh===0){$s=2;continue;}((bf<0||bf>=be.$length)?($throwRuntimeError("index out of range"),undefined):be.$array[be.$offset+bf]=AH(ba,bb,bh));IC(ax[0]);bf=bf+(1)>>0;$s=1;continue;case 2:$s=-1;return $subslice(be,0,bf);}return;}var $f={$blk:Q.ptr.prototype.MapKeys,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,$s};return $f;};Q.prototype.MapKeys=function(){return this.$val.MapKeys();};HY.ptr.prototype.initialized=function(){var ax;ax=this;return!($interfaceIsEqual(ax.t,$ifaceNil));};HY.prototype.initialized=function(){return this.$val.initialized();};AG.ptr.prototype.Key=function(){var{ax,ay,az,ba,bb,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:ax=this;if(!ax.hiter.initialized()){$panic(new $String("MapIter.Key called before Next"));}ay=IA(ax.hiter);$s=1;case 1:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}az=ay;if(az===0){$panic(new $String("MapIter.Key called on exhausted iterator"));}ba=(ax.m.typ.kindType);bb=ba.key;$s=-1;return AH(bb,(new R(ax.m.flag).ro()|((bb.Kind()>>>0)))>>>0,az);}return;}var $f={$blk:AG.ptr.prototype.Key,$c:true,$r,ax,ay,az,ba,bb,$s};return $f;};AG.prototype.Key=function(){return this.$val.Key();};Q.ptr.prototype.SetIterKey=function(ax){var{ax,ay,az,ba,bb,bc,bd,be,bf,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=this;if(!ax.hiter.initialized()){$panic(new $String("reflect: Value.SetIterKey called before Next"));}az=IA(ax.hiter);$s=1;case 1:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ba=az;if(ba===0){$panic(new $String("reflect: Value.SetIterKey called on exhausted iterator"));}new R(ay.flag).mustBeAssignable();bb=0;if(new R(ay.flag).kind()===20){bb=ay.ptr;}bc=(ax.m.typ.kindType);bd=bc.key;be=new Q.ptr(bd,ba,(((ax.m.flag|((bd.Kind()>>>0)))>>>0)|128)>>>0);bf=$clone(be,Q).assignTo("reflect.MapIter.SetKey",ay.typ,bb);$s=2;case 2:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}be=bf;HN(ay.typ,ay.ptr,be.ptr);$s=-1;return;}return;}var $f={$blk:Q.ptr.prototype.SetIterKey,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,$s};return $f;};Q.prototype.SetIterKey=function(ax){return this.$val.SetIterKey(ax);};AG.ptr.prototype.Value=function(){var{ax,ay,az,ba,bb,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:ax=this;if(!ax.hiter.initialized()){$panic(new $String("MapIter.Value called before Next"));}ay=IB(ax.hiter);$s=1;case 1:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}az=ay;if(az===0){$panic(new $String("MapIter.Value called on exhausted iterator"));}ba=(ax.m.typ.kindType);bb=ba.elem;$s=-1;return AH(bb,(new R(ax.m.flag).ro()|((bb.Kind()>>>0)))>>>0,az);}return;}var $f={$blk:AG.ptr.prototype.Value,$c:true,$r,ax,ay,az,ba,bb,$s};return $f;};AG.prototype.Value=function(){return this.$val.Value();};Q.ptr.prototype.SetIterValue=function(ax){var{ax,ay,az,ba,bb,bc,bd,be,bf,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=this;if(!ax.hiter.initialized()){$panic(new $String("reflect: Value.SetIterValue called before Next"));}az=IB(ax.hiter);$s=1;case 1:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ba=az;if(ba===0){$panic(new $String("reflect: Value.SetIterValue called on exhausted iterator"));}new R(ay.flag).mustBeAssignable();bb=0;if(new R(ay.flag).kind()===20){bb=ay.ptr;}bc=(ax.m.typ.kindType);bd=bc.elem;be=new Q.ptr(bd,ba,(((ax.m.flag|((bd.Kind()>>>0)))>>>0)|128)>>>0);bf=$clone(be,Q).assignTo("reflect.MapIter.SetValue",ay.typ,bb);$s=2;case 2:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}be=bf;HN(ay.typ,ay.ptr,be.ptr);$s=-1;return;}return;}var $f={$blk:Q.ptr.prototype.SetIterValue,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,$s};return $f;};Q.prototype.SetIterValue=function(ax){return this.$val.SetIterValue(ax);};AG.ptr.prototype.Next=function(){var{ax,ay,az,ba,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:ax=this;if(!$clone(ax.m,Q).IsValid()){$panic(new $String("MapIter.Next called on an iterator that does not have an associated map Value"));}if(!ax.hiter.initialized()){$s=1;continue;}$s=2;continue;case 1:HZ(ax.m.typ,$clone(ax.m,Q).pointer(),ax.hiter);$s=3;continue;case 2:ay=IA(ax.hiter);$s=6;case 6:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}if(ay===0){$s=4;continue;}$s=5;continue;case 4:$panic(new $String("MapIter.Next called on exhausted iterator"));case 5:IC(ax.hiter);case 3:az=IA(ax.hiter);$s=7;case 7:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ba=!(az===0);$s=8;case 8:return ba;}return;}var $f={$blk:AG.ptr.prototype.Next,$c:true,$r,ax,ay,az,ba,$s};return $f;};AG.prototype.Next=function(){return this.$val.Next();};AG.ptr.prototype.Reset=function(ax){var ax,ay;ay=this;if($clone(ax,Q).IsValid()){new R(ax.flag).mustBe(21);}ay.m=ax;HY.copy(ay.hiter,new HY.ptr($ifaceNil,null,null,0,null));};AG.prototype.Reset=function(ax){return this.$val.Reset(ax);};Q.ptr.prototype.MapRange=function(){var ax;ax=this;new R(ax.flag).mustBe(21);return new AG.ptr($clone(ax,Q),new HY.ptr($ifaceNil,null,null,0,null));};Q.prototype.MapRange=function(){return this.$val.MapRange();};AH=function(ax,ay,az){var ax,ay,az,ba;if(FC(ax)){ba=HK(ax);HN(ax,ba,az);return new Q.ptr(ax,ba,(ay|128)>>>0);}return new Q.ptr(ax,(az).$get(),ay);};Q.ptr.prototype.Method=function(ax){var ax,ay,az;ay=this;if(ay.typ===JC.nil){$panic(new U.ptr("reflect.Value.Method",0));}if(!((((ay.flag&512)>>>0)===0))||((ax>>>0))>=((ay.typ.NumMethod()>>>0))){$panic(new $String("reflect: Method index out of range"));}if((ay.typ.Kind()===20)&&$clone(ay,Q).IsNil()){$panic(new $String("reflect: Method on nil interface value"));}az=(new R(ay.flag).ro()|(((ay.flag&128)>>>0)))>>>0;az=(az|(19))>>>0;az=(az|((((((ax>>>0))<<10>>>0)|512)>>>0)))>>>0;return new Q.ptr(ay.typ,ay.ptr,az);};Q.prototype.Method=function(ax){return this.$val.Method(ax);};Q.ptr.prototype.NumMethod=function(){var ax;ax=this;if(ax.typ===JC.nil){$panic(new U.ptr("reflect.Value.NumMethod",0));}if(!((((ax.flag&512)>>>0)===0))){return 0;}return ax.typ.NumMethod();};Q.prototype.NumMethod=function(){return this.$val.NumMethod();};Q.ptr.prototype.MethodByName=function(ax){var{ax,ay,az,ba,bb,bc,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=this;if(ay.typ===JC.nil){$panic(new U.ptr("reflect.Value.MethodByName",0));}if(!((((ay.flag&512)>>>0)===0))){$s=-1;return new Q.ptr(JC.nil,0,0);}ba=ay.typ.MethodByName(ax);$s=1;case 1:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}az=ba;bb=$clone(az[0],DA);bc=az[1];if(!bc){$s=-1;return new Q.ptr(JC.nil,0,0);}$s=-1;return $clone(ay,Q).Method(bb.Index);}return;}var $f={$blk:Q.ptr.prototype.MethodByName,$c:true,$r,ax,ay,az,ba,bb,bc,$s};return $f;};Q.prototype.MethodByName=function(ax){return this.$val.MethodByName(ax);};Q.ptr.prototype.NumField=function(){var ax,ay;ax=this;new R(ax.flag).mustBe(25);ay=(ax.typ.kindType);return ay.fields.$length;};Q.prototype.NumField=function(){return this.$val.NumField();};Q.ptr.prototype.OverflowComplex=function(ax){var ax,ay,az,ba;ay=this;az=new R(ay.flag).kind();ba=az;if(ba===(15)){return AI(ax.$real)||AI(ax.$imag);}else if(ba===(16)){return false;}$panic(new U.ptr("reflect.Value.OverflowComplex",new R(ay.flag).kind()));};Q.prototype.OverflowComplex=function(ax){return this.$val.OverflowComplex(ax);};Q.ptr.prototype.OverflowFloat=function(ax){var ax,ay,az,ba;ay=this;az=new R(ay.flag).kind();ba=az;if(ba===(13)){return AI(ax);}else if(ba===(14)){return false;}$panic(new U.ptr("reflect.Value.OverflowFloat",new R(ay.flag).kind()));};Q.prototype.OverflowFloat=function(ax){return this.$val.OverflowFloat(ax);};AI=function(ax){var ax;if(ax<0){ax=-ax;}return 3.4028234663852886e+38<ax&&ax<=1.7976931348623157e+308;};Q.ptr.prototype.OverflowInt=function(ax){var ax,ay,az,ba,bb,bc;ay=this;az=new R(ay.flag).kind();ba=az;if((ba===(2))||(ba===(3))||(ba===(4))||(ba===(5))||(ba===(6))){bb=$imul(ay.typ.size,8)>>>0;bc=$shiftRightInt64(($shiftLeft64(ax,((64-bb>>>0)))),((64-bb>>>0)));return!((ax.$high===bc.$high&&ax.$low===bc.$low));}$panic(new U.ptr("reflect.Value.OverflowInt",new R(ay.flag).kind()));};Q.prototype.OverflowInt=function(ax){return this.$val.OverflowInt(ax);};Q.ptr.prototype.OverflowUint=function(ax){var ax,ay,az,ba,bb,bc;ay=this;az=new R(ay.flag).kind();ba=az;if((ba===(7))||(ba===(12))||(ba===(8))||(ba===(9))||(ba===(10))||(ba===(11))){bb=$imul(ay.typ.size,8)>>>0;bc=$shiftRightUint64(($shiftLeft64(ax,((64-bb>>>0)))),((64-bb>>>0)));return!((ax.$high===bc.$high&&ax.$low===bc.$low));}$panic(new U.ptr("reflect.Value.OverflowUint",new R(ay.flag).kind()));};Q.prototype.OverflowUint=function(ax){return this.$val.OverflowUint(ax);};Q.ptr.prototype.Recv=function(){var{ax,ay,az,ba,bb,bc,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:ax=new Q.ptr(JC.nil,0,0);ay=false;az=this;new R(az.flag).mustBe(18);new R(az.flag).mustBeExported();bb=$clone(az,Q).recv(false);$s=1;case 1:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}ba=bb;ax=ba[0];ay=ba[1];bc=[ax,ay];$s=2;case 2:return bc;}return;}var $f={$blk:Q.ptr.prototype.Recv,$c:true,$r,ax,ay,az,ba,bb,bc,$s};return $f;};Q.prototype.Recv=function(){return this.$val.Recv();};Q.ptr.prototype.recv=function(ax){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=new Q.ptr(JC.nil,0,0);az=false;ba=this;bb=(ba.typ.kindType);if((((bb.dir>>0))&1)===0){$panic(new $String("reflect: recv on send-only channel"));}bc=bb.elem;ay=new Q.ptr(bc,0,((bc.Kind()>>>0)));bd=0;if(FC(bc)){bd=HK(bc);ay.ptr=bd;ay.flag=(ay.flag|(128))>>>0;}else{bd=((ay.$ptr_ptr||(ay.$ptr_ptr=new JT(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ay))));}bf=IR($clone(ba,Q).pointer(),ax,bd);$s=1;case 1:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}be=bf;bg=be[0];az=be[1];if(!bg){ay=new Q.ptr(JC.nil,0,0);}$s=-1;return[ay,az];}return;}var $f={$blk:Q.ptr.prototype.recv,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,$s};return $f;};Q.prototype.recv=function(ax){return this.$val.recv(ax);};Q.ptr.prototype.Send=function(ax){var{ax,ay,az,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=this;new R(ay.flag).mustBe(18);new R(ay.flag).mustBeExported();az=$clone(ay,Q).send($clone(ax,Q),false);$s=1;case 1:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}az;$s=-1;return;}return;}var $f={$blk:Q.ptr.prototype.Send,$c:true,$r,ax,ay,az,$s};return $f;};Q.prototype.Send=function(ax){return this.$val.Send(ax);};Q.ptr.prototype.send=function(ax,ay){var{ax,ay,az,ba,bb,bc,bd,be,bf,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:az=false;ba=this;bb=(ba.typ.kindType);if((((bb.dir>>0))&2)===0){$panic(new $String("reflect: send on recv-only channel"));}new R(ax.flag).mustBeExported();bc=$clone(ax,Q).assignTo("reflect.Value.Send",bb.elem,0);$s=1;case 1:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}ax=bc;bd=0;if(!((((ax.flag&128)>>>0)===0))){bd=ax.ptr;}else{bd=((ax.$ptr_ptr||(ax.$ptr_ptr=new JT(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ax))));}be=IS($clone(ba,Q).pointer(),bd,ay);$s=2;case 2:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}az=be;bf=az;$s=3;case 3:return bf;}return;}var $f={$blk:Q.ptr.prototype.send,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,$s};return $f;};Q.prototype.send=function(ax,ay){return this.$val.send(ax,ay);};Q.ptr.prototype.SetBool=function(ax){var ax,ay;ay=this;new R(ay.flag).mustBeAssignable();new R(ay.flag).mustBe(1);(ay.ptr).$set(ax);};Q.prototype.SetBool=function(ax){return this.$val.SetBool(ax);};Q.ptr.prototype.setRunes=function(ax){var{ax,ay,az,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=this;new R(ay.flag).mustBeAssignable();new R(ay.flag).mustBe(23);az=ay.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}if(!((az===5))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.setRunes of non-rune slice"));case 2:(ay.ptr).$set(ax);$s=-1;return;}return;}var $f={$blk:Q.ptr.prototype.setRunes,$c:true,$r,ax,ay,az,$s};return $f;};Q.prototype.setRunes=function(ax){return this.$val.setRunes(ax);};Q.ptr.prototype.SetComplex=function(ax){var ax,ay,az,ba;ay=this;new R(ay.flag).mustBeAssignable();az=new R(ay.flag).kind();ba=az;if(ba===(15)){(ay.ptr).$set((new $Complex64(ax.$real,ax.$imag)));}else if(ba===(16)){(ay.ptr).$set(ax);}else{$panic(new U.ptr("reflect.Value.SetComplex",new R(ay.flag).kind()));}};Q.prototype.SetComplex=function(ax){return this.$val.SetComplex(ax);};Q.ptr.prototype.SetFloat=function(ax){var ax,ay,az,ba;ay=this;new R(ay.flag).mustBeAssignable();az=new R(ay.flag).kind();ba=az;if(ba===(13)){(ay.ptr).$set(($fround(ax)));}else if(ba===(14)){(ay.ptr).$set(ax);}else{$panic(new U.ptr("reflect.Value.SetFloat",new R(ay.flag).kind()));}};Q.prototype.SetFloat=function(ax){return this.$val.SetFloat(ax);};Q.ptr.prototype.SetInt=function(ax){var ax,ay,az,ba;ay=this;new R(ay.flag).mustBeAssignable();az=new R(ay.flag).kind();ba=az;if(ba===(2)){(ay.ptr).$set((((ax.$low+((ax.$high>>31)*4294967296))>>0)));}else if(ba===(3)){(ay.ptr).$set((((ax.$low+((ax.$high>>31)*4294967296))<<24>>24)));}else if(ba===(4)){(ay.ptr).$set((((ax.$low+((ax.$high>>31)*4294967296))<<16>>16)));}else if(ba===(5)){(ay.ptr).$set((((ax.$low+((ax.$high>>31)*4294967296))>>0)));}else if(ba===(6)){(ay.ptr).$set(ax);}else{$panic(new U.ptr("reflect.Value.SetInt",new R(ay.flag).kind()));}};Q.prototype.SetInt=function(ax){return this.$val.SetInt(ax);};Q.ptr.prototype.SetMapIndex=function(ax,ay){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:az=this;new R(az.flag).mustBe(21);new R(az.flag).mustBeExported();new R(ax.flag).mustBeExported();ba=(az.typ.kindType);if((ba.key===AF||(new R(ax.flag).kind()===24))&&ba.key===ax.typ&&ba.elem.size<=128){$s=1;continue;}$s=2;continue;case 1:bb=(ax.ptr).$get();if(ay.typ===JC.nil){HX(az.typ,$clone(az,Q).pointer(),bb);$s=-1;return;}new R(ay.flag).mustBeExported();bc=$clone(ay,Q).assignTo("reflect.Value.SetMapIndex",ba.elem,0);$s=3;case 3:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}ay=bc;bd=0;if(!((((ay.flag&128)>>>0)===0))){bd=ay.ptr;}else{bd=((ay.$ptr_ptr||(ay.$ptr_ptr=new JT(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ay))));}$r=HW(az.typ,$clone(az,Q).pointer(),bb,bd);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 2:be=$clone(ax,Q).assignTo("reflect.Value.SetMapIndex",ba.key,0);$s=5;case 5:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}ax=be;bf=0;if(!((((ax.flag&128)>>>0)===0))){bf=ax.ptr;}else{bf=((ax.$ptr_ptr||(ax.$ptr_ptr=new JT(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ax))));}if(ay.typ===JC.nil){HU(az.typ,$clone(az,Q).pointer(),bf);$s=-1;return;}new R(ay.flag).mustBeExported();bg=$clone(ay,Q).assignTo("reflect.Value.SetMapIndex",ba.elem,0);$s=6;case 6:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}ay=bg;bh=0;if(!((((ay.flag&128)>>>0)===0))){bh=ay.ptr;}else{bh=((ay.$ptr_ptr||(ay.$ptr_ptr=new JT(function(){return this.$target.ptr;},function($v){this.$target.ptr=$v;},ay))));}$r=HT(az.typ,$clone(az,Q).pointer(),bf,bh);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:Q.ptr.prototype.SetMapIndex,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,$s};return $f;};Q.prototype.SetMapIndex=function(ax,ay){return this.$val.SetMapIndex(ax,ay);};Q.ptr.prototype.SetUint=function(ax){var ax,ay,az,ba;ay=this;new R(ay.flag).mustBeAssignable();az=new R(ay.flag).kind();ba=az;if(ba===(7)){(ay.ptr).$set(((ax.$low>>>0)));}else if(ba===(8)){(ay.ptr).$set(((ax.$low<<24>>>24)));}else if(ba===(9)){(ay.ptr).$set(((ax.$low<<16>>>16)));}else if(ba===(10)){(ay.ptr).$set(((ax.$low>>>0)));}else if(ba===(11)){(ay.ptr).$set(ax);}else if(ba===(12)){(ay.ptr).$set(((ax.$low>>>0)));}else{$panic(new U.ptr("reflect.Value.SetUint",new R(ay.flag).kind()));}};Q.prototype.SetUint=function(ax){return this.$val.SetUint(ax);};Q.ptr.prototype.SetPointer=function(ax){var ax,ay;ay=this;new R(ay.flag).mustBeAssignable();new R(ay.flag).mustBe(26);(ay.ptr).$set(ax);};Q.prototype.SetPointer=function(ax){return this.$val.SetPointer(ax);};Q.ptr.prototype.SetString=function(ax){var ax,ay;ay=this;new R(ay.flag).mustBeAssignable();new R(ay.flag).mustBe(24);(ay.ptr).$set(ax);};Q.prototype.SetString=function(ax){return this.$val.SetString(ax);};Q.ptr.prototype.String=function(){var{ax,ay,az,ba,bb,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:ax=this;ay=new R(ax.flag).kind();az=ay;if(az===(0)){$s=-1;return"<invalid Value>";}else if(az===(24)){$s=-1;return(ax.ptr).$get();}ba=$clone(ax,Q).Type().String();$s=1;case 1:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb="<"+ba+" Value>";$s=2;case 2:return bb;}return;}var $f={$blk:Q.ptr.prototype.String,$c:true,$r,ax,ay,az,ba,bb,$s};return $f;};Q.prototype.String=function(){return this.$val.String();};Q.ptr.prototype.TryRecv=function(){var{ax,ay,az,ba,bb,bc,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:ax=new Q.ptr(JC.nil,0,0);ay=false;az=this;new R(az.flag).mustBe(18);new R(az.flag).mustBeExported();bb=$clone(az,Q).recv(true);$s=1;case 1:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}ba=bb;ax=ba[0];ay=ba[1];bc=[ax,ay];$s=2;case 2:return bc;}return;}var $f={$blk:Q.ptr.prototype.TryRecv,$c:true,$r,ax,ay,az,ba,bb,bc,$s};return $f;};Q.prototype.TryRecv=function(){return this.$val.TryRecv();};Q.ptr.prototype.TrySend=function(ax){var{ax,ay,az,ba,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=this;new R(ay.flag).mustBe(18);new R(ay.flag).mustBeExported();az=$clone(ay,Q).send($clone(ax,Q),true);$s=1;case 1:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ba=az;$s=2;case 2:return ba;}return;}var $f={$blk:Q.ptr.prototype.TrySend,$c:true,$r,ax,ay,az,ba,$s};return $f;};Q.prototype.TrySend=function(ax){return this.$val.TrySend(ax);};Q.ptr.prototype.Type=function(){var ax,ay,az,ba,bb,bc,bd,be;ax=this;ay=ax.flag;if(ay===0){$panic(new U.ptr("reflect.Value.Type",0));}if(((ay&512)>>>0)===0){return ax.typ;}az=((ax.flag>>0))>>10>>0;if(ax.typ.Kind()===20){ba=(ax.typ.kindType);if(((az>>>0))>=((ba.methods.$length>>>0))){$panic(new $String("reflect: internal error: invalid method index"));}bc=(bb=ba.methods,((az<0||az>=bb.$length)?($throwRuntimeError("index out of range"),undefined):bb.$array[bb.$offset+az]));return ax.typ.typeOff(bc.typ);}bd=ax.typ.exportedMethods();if(((az>>>0))>=((bd.$length>>>0))){$panic(new $String("reflect: internal error: invalid method index"));}be=$clone(((az<0||az>=bd.$length)?($throwRuntimeError("index out of range"),undefined):bd.$array[bd.$offset+az]),CO);return ax.typ.typeOff(be.mtyp);};Q.prototype.Type=function(){return this.$val.Type();};Q.ptr.prototype.CanUint=function(){var ax,ay;ax=this;ay=new R(ax.flag).kind();if((ay===(7))||(ay===(8))||(ay===(9))||(ay===(10))||(ay===(11))||(ay===(12))){return true;}else{return false;}};Q.prototype.CanUint=function(){return this.$val.CanUint();};Q.ptr.prototype.Uint=function(){var ax,ay,az,ba,bb;ax=this;ay=new R(ax.flag).kind();az=ax.ptr;ba=ay;if(ba===(7)){return(new $Uint64(0,(az).$get()));}else if(ba===(8)){return(new $Uint64(0,(az).$get()));}else if(ba===(9)){return(new $Uint64(0,(az).$get()));}else if(ba===(10)){return(new $Uint64(0,(az).$get()));}else if(ba===(11)){return(az).$get();}else if(ba===(12)){return((bb=(az).$get(),new $Uint64(0,bb.constructor===Number?bb:1)));}$panic(new U.ptr("reflect.Value.Uint",new R(ax.flag).kind()));};Q.prototype.Uint=function(){return this.$val.Uint();};Q.ptr.prototype.UnsafeAddr=function(){var ax;ax=this;if(ax.typ===JC.nil){$panic(new U.ptr("reflect.Value.UnsafeAddr",0));}if(((ax.flag&256)>>>0)===0){$panic(new $String("reflect.Value.UnsafeAddr of unaddressable value"));}return(ax.ptr);};Q.prototype.UnsafeAddr=function(){return this.$val.UnsafeAddr();};Q.ptr.prototype.UnsafePointer=function(){var{ax,ay,az,ba,bb,bc,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:ax=[ax];ay=this;az=new R(ay.flag).kind();ba=az;if(ba===(22)){$s=2;continue;}if((ba===(18))||(ba===(21))||(ba===(26))){$s=3;continue;}if(ba===(19)){$s=4;continue;}if(ba===(23)){$s=5;continue;}$s=6;continue;case 2:if(ay.typ.ptrdata===0){if(!IX((ay.ptr).$get())){$panic(new $String("reflect: reflect.Value.UnsafePointer on an invalid notinheap pointer"));}$s=-1;return(ay.ptr).$get();}$s=-1;return $clone(ay,Q).pointer();case 3:$s=-1;return $clone(ay,Q).pointer();case 4:if(!((((ay.flag&512)>>>0)===0))){$s=7;continue;}$s=8;continue;case 7:bb=FI();$s=9;case 9:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}ax[0]=bb;$s=-1;return ax[0];case 8:bc=$clone(ay,Q).pointer();if(!(bc===0)){bc=(bc).$get();}$s=-1;return bc;case 5:$s=-1;return($pointerOfStructConversion(ay.ptr,JU)).Data;case 6:case 1:$panic(new U.ptr("reflect.Value.UnsafePointer",new R(ay.flag).kind()));$s=-1;return 0;}return;}var $f={$blk:Q.ptr.prototype.UnsafePointer,$c:true,$r,ax,ay,az,ba,bb,bc,$s};return $f;};Q.prototype.UnsafePointer=function(){return this.$val.UnsafePointer();};Q.ptr.prototype.Convert=function(ax){var{ax,ay,az,ba,bb,bc,bd,be,bf,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=this;if(!((((ay.flag&512)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:az=IK("Convert",$clone(ay,Q));$s=3;case 3:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ay=az;case 2:ba=ax.common();$s=4;case 4:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=BB(ba,ay.typ);$s=5;case 5:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=bb;if(bc===$throwNilPointerError){$s=6;continue;}$s=7;continue;case 6:bd=ax.String();$s=8;case 8:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}$panic(new $String("reflect.Value.Convert: value of type "+ay.typ.String()+" cannot be converted to type "+bd));case 7:be=bc($clone(ay,Q),ax);$s=9;case 9:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bf=be;$s=10;case 10:return bf;}return;}var $f={$blk:Q.ptr.prototype.Convert,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,$s};return $f;};Q.prototype.Convert=function(ax){return this.$val.Convert(ax);};Q.ptr.prototype.CanConvert=function(ax){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=this;az=$clone(ay,Q).Type();ba=az.ConvertibleTo(ax);$s=3;case 3:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}if(!ba){$s=1;continue;}$s=2;continue;case 1:$s=-1;return false;case 2:bd=az.Kind();$s=8;case 8:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}if(!(bd===23)){bc=false;$s=7;continue s;}be=ax.Kind();$s=9;case 9:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bc=be===22;case 7:if(!(bc)){bb=false;$s=6;continue s;}bf=ax.Elem();$s=10;case 10:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bg=bf.Kind();$s=11;case 11:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}bb=bg===17;case 6:if(bb){$s=4;continue;}$s=5;continue;case 4:bh=ax.Elem();$s=12;case 12:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bi=bh.Len();$s=13;case 13:if($c){$c=false;bi=bi.$blk();}if(bi&&bi.$blk!==undefined){break s;}bj=bi;if(bj>$clone(ay,Q).Len()){$s=-1;return false;}case 5:$s=-1;return true;}return;}var $f={$blk:Q.ptr.prototype.CanConvert,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,$s};return $f;};Q.prototype.CanConvert=function(ax){return this.$val.CanConvert(ax);};BB=function(ax,ay){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:az=ay.Kind();if((az===(2))||(az===(3))||(az===(4))||(az===(5))||(az===(6))){$s=2;continue;}if((az===(7))||(az===(8))||(az===(9))||(az===(10))||(az===(11))||(az===(12))){$s=3;continue;}if((az===(13))||(az===(14))){$s=4;continue;}if((az===(15))||(az===(16))){$s=5;continue;}if(az===(24)){$s=6;continue;}if(az===(23)){$s=7;continue;}if(az===(18)){$s=8;continue;}$s=9;continue;case 2:ba=ax.Kind();if((ba===(2))||(ba===(3))||(ba===(4))||(ba===(5))||(ba===(6))||(ba===(7))||(ba===(8))||(ba===(9))||(ba===(10))||(ba===(11))||(ba===(12))){$s=-1;return BI;}else if((ba===(13))||(ba===(14))){$s=-1;return BM;}else if(ba===(24)){$s=-1;return BQ;}$s=9;continue;case 3:bb=ax.Kind();if((bb===(2))||(bb===(3))||(bb===(4))||(bb===(5))||(bb===(6))||(bb===(7))||(bb===(8))||(bb===(9))||(bb===(10))||(bb===(11))||(bb===(12))){$s=-1;return BJ;}else if((bb===(13))||(bb===(14))){$s=-1;return BN;}else if(bb===(24)){$s=-1;return BR;}$s=9;continue;case 4:bc=ax.Kind();if((bc===(2))||(bc===(3))||(bc===(4))||(bc===(5))||(bc===(6))){$s=-1;return BK;}else if((bc===(7))||(bc===(8))||(bc===(9))||(bc===(10))||(bc===(11))||(bc===(12))){$s=-1;return BL;}else if((bc===(13))||(bc===(14))){$s=-1;return BO;}$s=9;continue;case 5:bd=ax.Kind();if((bd===(15))||(bd===(16))){$s=-1;return BP;}$s=9;continue;case 6:if(!(ax.Kind()===23)){be=false;$s=12;continue s;}bf=ax.Elem().PkgPath();$s=13;case 13:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}be=bf==="";case 12:if(be){$s=10;continue;}$s=11;continue;case 10:bg=ax.Elem().Kind();$s=15;case 15:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}bh=bg;if(bh===(8)){$s=-1;return BT;}else if(bh===(5)){$s=-1;return BV;}case 14:case 11:$s=9;continue;case 7:if(!(ax.Kind()===24)){bi=false;$s=18;continue s;}bj=ay.Elem().PkgPath();$s=19;case 19:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}bi=bj==="";case 18:if(bi){$s=16;continue;}$s=17;continue;case 16:bk=ay.Elem().Kind();$s=21;case 21:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bl=bk;if(bl===(8)){$s=-1;return BS;}else if(bl===(5)){$s=-1;return BU;}case 20:case 17:if(!(ax.Kind()===22)){bn=false;$s=25;continue s;}bo=ax.Elem().Kind();$s=26;case 26:if($c){$c=false;bo=bo.$blk();}if(bo&&bo.$blk!==undefined){break s;}bn=bo===17;case 25:if(!(bn)){bm=false;$s=24;continue s;}bp=ax.Elem().Elem();$s=27;case 27:if($c){$c=false;bp=bp.$blk();}if(bp&&bp.$blk!==undefined){break s;}bm=$interfaceIsEqual(ay.Elem(),bp);case 24:if(bm){$s=22;continue;}$s=23;continue;case 22:$s=-1;return IF;case 23:$s=9;continue;case 8:if(!(ax.Kind()===18)){bq=false;$s=30;continue s;}br=DT(ax,ay);$s=31;case 31:if($c){$c=false;br=br.$blk();}if(br&&br.$blk!==undefined){break s;}bq=br;case 30:if(bq){$s=28;continue;}$s=29;continue;case 28:$s=-1;return IE;case 29:case 9:case 1:bs=DW(ax,ay,false);$s=34;case 34:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}if(bs){$s=32;continue;}$s=33;continue;case 32:$s=-1;return IE;case 33:if(!((ax.Kind()===22)&&ax.Name()===""&&(ay.Kind()===22)&&ay.Name()==="")){bt=false;$s=37;continue s;}bu=ax.Elem().common();$s=38;case 38:if($c){$c=false;bu=bu.$blk();}if(bu&&bu.$blk!==undefined){break s;}bv=bu;bw=ay.Elem().common();$s=39;case 39:if($c){$c=false;bw=bw.$blk();}if(bw&&bw.$blk!==undefined){break s;}bx=bw;by=DW(bv,bx,false);$s=40;case 40:if($c){$c=false;by=by.$blk();}if(by&&by.$blk!==undefined){break s;}bt=by;case 37:if(bt){$s=35;continue;}$s=36;continue;case 35:$s=-1;return IE;case 36:if(DS(ax,ay)){if(ay.Kind()===20){$s=-1;return BX;}$s=-1;return BW;}$s=-1;return $throwNilPointerError;}return;}var $f={$blk:BB,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,$s};return $f;};BC=function(ax,ay,az){var{ax,ay,az,ba,bb,bc,bd,$s,$r,$c}=$restore(this,{ax,ay,az});$s=$s||0;s:while(true){switch($s){case 0:ba=az.common();$s=1;case 1:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=ba;bc=HK(bb);bd=bb.size;if(bd===(4)){(bc).$set(($fround(ay)));}else if(bd===(8)){(bc).$set(ay);}$s=-1;return new Q.ptr(bb,bc,(((ax|128)>>>0)|((bb.Kind()>>>0)))>>>0);}return;}var $f={$blk:BC,$c:true,$r,ax,ay,az,ba,bb,bc,bd,$s};return $f;};BD=function(ax,ay,az){var{ax,ay,az,ba,bb,bc,$s,$r,$c}=$restore(this,{ax,ay,az});$s=$s||0;s:while(true){switch($s){case 0:ba=az.common();$s=1;case 1:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=ba;bc=HK(bb);(bc).$set(ay);$s=-1;return new Q.ptr(bb,bc,(((ax|128)>>>0)|((bb.Kind()>>>0)))>>>0);}return;}var $f={$blk:BD,$c:true,$r,ax,ay,az,ba,bb,bc,$s};return $f;};BE=function(ax,ay,az){var{ax,ay,az,ba,bb,bc,bd,$s,$r,$c}=$restore(this,{ax,ay,az});$s=$s||0;s:while(true){switch($s){case 0:ba=az.common();$s=1;case 1:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=ba;bc=HK(bb);bd=bb.size;if(bd===(8)){(bc).$set((new $Complex64(ay.$real,ay.$imag)));}else if(bd===(16)){(bc).$set(ay);}$s=-1;return new Q.ptr(bb,bc,(((ax|128)>>>0)|((bb.Kind()>>>0)))>>>0);}return;}var $f={$blk:BE,$c:true,$r,ax,ay,az,ba,bb,bc,bd,$s};return $f;};BF=function(ax,ay,az){var{ax,ay,az,ba,bb,$s,$r,$c}=$restore(this,{ax,ay,az});$s=$s||0;s:while(true){switch($s){case 0:ba=$clone(GG(az),Q).Elem();$s=1;case 1:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=ba;$clone(bb,Q).SetString(ay);bb.flag=(((bb.flag&~256)>>>0)|ax)>>>0;$s=-1;return bb;}return;}var $f={$blk:BF,$c:true,$r,ax,ay,az,ba,bb,$s};return $f;};BG=function(ax,ay,az){var{ax,ay,az,ba,bb,$s,$r,$c}=$restore(this,{ax,ay,az});$s=$s||0;s:while(true){switch($s){case 0:ba=$clone(GG(az),Q).Elem();$s=1;case 1:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=ba;$r=$clone(bb,Q).SetBytes(ay);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bb.flag=(((bb.flag&~256)>>>0)|ax)>>>0;$s=-1;return bb;}return;}var $f={$blk:BG,$c:true,$r,ax,ay,az,ba,bb,$s};return $f;};BH=function(ax,ay,az){var{ax,ay,az,ba,bb,$s,$r,$c}=$restore(this,{ax,ay,az});$s=$s||0;s:while(true){switch($s){case 0:ba=$clone(GG(az),Q).Elem();$s=1;case 1:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=ba;$r=$clone(bb,Q).setRunes(ay);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bb.flag=(((bb.flag&~256)>>>0)|ax)>>>0;$s=-1;return bb;}return;}var $f={$blk:BH,$c:true,$r,ax,ay,az,ba,bb,$s};return $f;};BI=function(ax,ay){var{ax,ay,az,ba,bb,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:ba=HL(new R(ax.flag).ro(),((az=$clone(ax,Q).Int(),new $Uint64(az.$high,az.$low))),ay);$s=1;case 1:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=ba;$s=2;case 2:return bb;}return;}var $f={$blk:BI,$c:true,$r,ax,ay,az,ba,bb,$s};return $f;};BJ=function(ax,ay){var{ax,ay,az,ba,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:az=HL(new R(ax.flag).ro(),$clone(ax,Q).Uint(),ay);$s=1;case 1:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ba=az;$s=2;case 2:return ba;}return;}var $f={$blk:BJ,$c:true,$r,ax,ay,az,ba,$s};return $f;};BK=function(ax,ay){var{ax,ay,az,ba,bb,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:ba=HL(new R(ax.flag).ro(),((az=(new $Int64(0,$clone(ax,Q).Float())),new $Uint64(az.$high,az.$low))),ay);$s=1;case 1:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=ba;$s=2;case 2:return bb;}return;}var $f={$blk:BK,$c:true,$r,ax,ay,az,ba,bb,$s};return $f;};BL=function(ax,ay){var{ax,ay,az,ba,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:az=HL(new R(ax.flag).ro(),(new $Uint64(0,$clone(ax,Q).Float())),ay);$s=1;case 1:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ba=az;$s=2;case 2:return ba;}return;}var $f={$blk:BL,$c:true,$r,ax,ay,az,ba,$s};return $f;};BM=function(ax,ay){var{ax,ay,az,ba,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:az=BC(new R(ax.flag).ro(),($flatten64($clone(ax,Q).Int())),ay);$s=1;case 1:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ba=az;$s=2;case 2:return ba;}return;}var $f={$blk:BM,$c:true,$r,ax,ay,az,ba,$s};return $f;};BN=function(ax,ay){var{ax,ay,az,ba,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:az=BC(new R(ax.flag).ro(),($flatten64($clone(ax,Q).Uint())),ay);$s=1;case 1:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ba=az;$s=2;case 2:return ba;}return;}var $f={$blk:BN,$c:true,$r,ax,ay,az,ba,$s};return $f;};BO=function(ax,ay){var{ax,ay,az,ba,bb,bc,bd,be,bf,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:ba=$clone(ax,Q).Type().Kind();$s=4;case 4:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}if(!(ba===13)){az=false;$s=3;continue s;}bb=ay.Kind();$s=5;case 5:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}az=bb===13;case 3:if(az){$s=1;continue;}$s=2;continue;case 1:bc=BD(new R(ax.flag).ro(),(ax.ptr).$get(),ay);$s=6;case 6:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}bd=bc;$s=7;case 7:return bd;case 2:be=BC(new R(ax.flag).ro(),$clone(ax,Q).Float(),ay);$s=8;case 8:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bf=be;$s=9;case 9:return bf;}return;}var $f={$blk:BO,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,$s};return $f;};BP=function(ax,ay){var{ax,ay,az,ba,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:az=BE(new R(ax.flag).ro(),$clone(ax,Q).Complex(),ay);$s=1;case 1:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ba=az;$s=2;case 2:return ba;}return;}var $f={$blk:BP,$c:true,$r,ax,ay,az,ba,$s};return $f;};BQ=function(ax,ay){var{ax,ay,az,ba,bb,bc,bd,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:az="\xEF\xBF\xBD";ba=$clone(ax,Q).Int();if((bb=(new $Int64(0,(((ba.$low+((ba.$high>>31)*4294967296))>>0)))),(bb.$high===ba.$high&&bb.$low===ba.$low))){az=($encodeRune((((ba.$low+((ba.$high>>31)*4294967296))>>0))));}bc=BF(new R(ax.flag).ro(),az,ay);$s=1;case 1:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}bd=bc;$s=2;case 2:return bd;}return;}var $f={$blk:BQ,$c:true,$r,ax,ay,az,ba,bb,bc,bd,$s};return $f;};BR=function(ax,ay){var{ax,ay,az,ba,bb,bc,bd,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:az="\xEF\xBF\xBD";ba=$clone(ax,Q).Uint();if((bb=(new $Uint64(0,((ba.$low>>0)))),(bb.$high===ba.$high&&bb.$low===ba.$low))){az=($encodeRune(((ba.$low>>0))));}bc=BF(new R(ax.flag).ro(),az,ay);$s=1;case 1:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}bd=bc;$s=2;case 2:return bd;}return;}var $f={$blk:BR,$c:true,$r,ax,ay,az,ba,bb,bc,bd,$s};return $f;};BS=function(ax,ay){var{ax,ay,az,ba,bb,bc,bd,be,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:az=new R(ax.flag).ro();ba=$clone(ax,Q).Bytes();$s=1;case 1:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=($bytesToString(ba));bc=ay;bd=BF(az,bb,bc);$s=2;case 2:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}be=bd;$s=3;case 3:return be;}return;}var $f={$blk:BS,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,$s};return $f;};BT=function(ax,ay){var{ax,ay,az,ba,bb,bc,bd,be,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:az=new R(ax.flag).ro();ba=$clone(ax,Q).String();$s=1;case 1:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=(new JW($stringToBytes(ba)));bc=ay;bd=BG(az,bb,bc);$s=2;case 2:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}be=bd;$s=3;case 3:return be;}return;}var $f={$blk:BT,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,$s};return $f;};BU=function(ax,ay){var{ax,ay,az,ba,bb,bc,bd,be,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:az=new R(ax.flag).ro();ba=$clone(ax,Q).runes();$s=1;case 1:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=($runesToString(ba));bc=ay;bd=BF(az,bb,bc);$s=2;case 2:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}be=bd;$s=3;case 3:return be;}return;}var $f={$blk:BU,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,$s};return $f;};BV=function(ax,ay){var{ax,ay,az,ba,bb,bc,bd,be,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:az=new R(ax.flag).ro();ba=$clone(ax,Q).String();$s=1;case 1:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=(new JX($stringToRunes(ba)));bc=ay;bd=BH(az,bb,bc);$s=2;case 2:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}be=bd;$s=3;case 3:return be;}return;}var $f={$blk:BV,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,$s};return $f;};BW=function(ax,ay){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:az=ay.common();$s=1;case 1:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ba=HK(az);$s=2;case 2:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=ba;bc=II($clone(ax,Q),false);$s=3;case 3:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}bd=bc;be=ay.NumMethod();$s=7;case 7:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}if(be===0){$s=4;continue;}$s=5;continue;case 4:(bb).$set(bd);$s=6;continue;case 5:IJ($assertType(ay,JC),bd,bb);case 6:bf=ay.common();$s=8;case 8:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bg=new Q.ptr(bf,bb,(((new R(ax.flag).ro()|128)>>>0)|20)>>>0);$s=9;case 9:return bg;}return;}var $f={$blk:BW,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,$s};return $f;};BX=function(ax,ay){var{ax,ay,az,ba,bb,bc,bd,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:if($clone(ax,Q).IsNil()){$s=1;continue;}$s=2;continue;case 1:az=HJ(ay);$s=3;case 3:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ba=az;ba.flag=(ba.flag|(new R(ax.flag).ro()))>>>0;$s=-1;return ba;case 2:bb=$clone(ax,Q).Elem();$s=4;case 4:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=BW($clone(bb,Q),ay);$s=5;case 5:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}bd=bc;$s=6;case 6:return bd;}return;}var $f={$blk:BX,$c:true,$r,ax,ay,az,ba,bb,bc,bd,$s};return $f;};CX.ptr.prototype.offset=function(){var ax;ax=this;return ax.offsetEmbed>>>1>>>0;};CX.prototype.offset=function(){return this.$val.offset();};CX.ptr.prototype.embedded=function(){var ax;ax=this;return!((((ax.offsetEmbed&1)>>>0)===0));};CX.prototype.embedded=function(){return this.$val.embedded();};DA.ptr.prototype.IsExported=function(){var ax;ax=this;return ax.PkgPath==="";};DA.prototype.IsExported=function(){return this.$val.IsExported();};CL.prototype.String=function(){var ax;ax=this.$val;if(((ax>>0))<DB.$length){return((ax<0||ax>=DB.$length)?($throwRuntimeError("index out of range"),undefined):DB.$array[DB.$offset+ax]);}return"kind"+H.Itoa(((ax>>0)));};$ptrType(CL).prototype.String=function(){return new CL(this.$get()).String();};CN.ptr.prototype.String=function(){var ax,ay;ax=this;ay=$clone(ax.nameOff(ax.str),GM).name();if(!((((ax.tflag&2)>>>0)===0))){return $substring(ay,1);}return ay;};CN.prototype.String=function(){return this.$val.String();};CN.ptr.prototype.Size=function(){var ax;ax=this;return ax.size;};CN.prototype.Size=function(){return this.$val.Size();};CN.ptr.prototype.Bits=function(){var ax,ay;ax=this;if(ax===JC.nil){$panic(new $String("reflect: Bits of nil Type"));}ay=ax.Kind();if(ay<2||ay>16){$panic(new $String("reflect: Bits of non-arithmetic Type "+ax.String()));}return $imul(((ax.size>>0)),8);};CN.prototype.Bits=function(){return this.$val.Bits();};CN.ptr.prototype.Align=function(){var ax;ax=this;return((ax.align>>0));};CN.prototype.Align=function(){return this.$val.Align();};CN.ptr.prototype.FieldAlign=function(){var ax;ax=this;return((ax.fieldAlign>>0));};CN.prototype.FieldAlign=function(){return this.$val.FieldAlign();};CN.ptr.prototype.Kind=function(){var ax;ax=this;return((((ax.kind&31)>>>0)>>>0));};CN.prototype.Kind=function(){return this.$val.Kind();};CN.ptr.prototype.common=function(){var ax;ax=this;return ax;};CN.prototype.common=function(){return this.$val.common();};CN.ptr.prototype.exportedMethods=function(){var ax,ay;ax=this;ay=ax.uncommon();if(ay===JY.nil){return JZ.nil;}return ay.exportedMethods();};CN.prototype.exportedMethods=function(){return this.$val.exportedMethods();};CN.ptr.prototype.NumMethod=function(){var ax,ay;ax=this;if(ax.Kind()===20){ay=(ax.kindType);return ay.NumMethod();}return ax.exportedMethods().$length;};CN.prototype.NumMethod=function(){return this.$val.NumMethod();};CN.ptr.prototype.MethodByName=function(ax){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=new DA.ptr("","",$ifaceNil,new Q.ptr(JC.nil,0,0),0);az=false;ba=this;if(ba.Kind()===20){bb=(ba.kindType);bc=bb.MethodByName(ax);DA.copy(ay,bc[0]);az=bc[1];$s=-1;return[ay,az];}bd=ba.uncommon();if(bd===JY.nil){be=new DA.ptr("","",$ifaceNil,new Q.ptr(JC.nil,0,0),0);bf=false;DA.copy(ay,be);az=bf;$s=-1;return[ay,az];}bg=bd.exportedMethods();bh=0;case 1:if(!(bh<bg.$length)){$s=2;continue;}bi=bh;bj=$clone(((bh<0||bh>=bg.$length)?($throwRuntimeError("index out of range"),undefined):bg.$array[bg.$offset+bh]),CO);if($clone(ba.nameOff(bj.name),GM).name()===ax){$s=3;continue;}$s=4;continue;case 3:bl=ba.Method(bi);$s=5;case 5:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}bk=$clone(bl,DA);bm=true;DA.copy(ay,bk);az=bm;bn=[ay,az];$s=6;case 6:return bn;case 4:bh++;$s=1;continue;case 2:bo=new DA.ptr("","",$ifaceNil,new Q.ptr(JC.nil,0,0),0);bp=false;DA.copy(ay,bo);az=bp;$s=-1;return[ay,az];}return;}var $f={$blk:CN.ptr.prototype.MethodByName,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,$s};return $f;};CN.prototype.MethodByName=function(ax){return this.$val.MethodByName(ax);};CN.ptr.prototype.PkgPath=function(){var ax,ay;ax=this;if(((ax.tflag&4)>>>0)===0){return"";}ay=ax.uncommon();if(ay===JY.nil){return"";}return $clone(ax.nameOff(ay.pkgPath),GM).name();};CN.prototype.PkgPath=function(){return this.$val.PkgPath();};CN.ptr.prototype.hasName=function(){var ax;ax=this;return!((((ax.tflag&4)>>>0)===0));};CN.prototype.hasName=function(){return this.$val.hasName();};CN.ptr.prototype.Name=function(){var ax,ay,az,ba,bb;ax=this;if(!ax.hasName()){return"";}ay=ax.String();az=ay.length-1>>0;ba=0;while(true){if(!(az>=0&&(!((ay.charCodeAt(az)===46))||!((ba===0))))){break;}bb=ay.charCodeAt(az);if(bb===(93)){ba=ba+(1)>>0;}else if(bb===(91)){ba=ba-(1)>>0;}az=az-(1)>>0;}return $substring(ay,(az+1>>0));};CN.prototype.Name=function(){return this.$val.Name();};CN.ptr.prototype.ChanDir=function(){var ax,ay;ax=this;if(!((ax.Kind()===18))){$panic(new $String("reflect: ChanDir of non-chan type "+ax.String()));}ay=(ax.kindType);return((ay.dir>>0));};CN.prototype.ChanDir=function(){return this.$val.ChanDir();};CN.ptr.prototype.IsVariadic=function(){var ax,ay;ax=this;if(!((ax.Kind()===19))){$panic(new $String("reflect: IsVariadic of non-func type "+ax.String()));}ay=(ax.kindType);return!((((ay.outCount&32768)>>>0)===0));};CN.prototype.IsVariadic=function(){return this.$val.IsVariadic();};CN.ptr.prototype.Elem=function(){var ax,ay,az,ba,bb,bc,bd;ax=this;ay=ax.Kind();if(ay===(17)){az=(ax.kindType);return EX(az.elem);}else if(ay===(18)){ba=(ax.kindType);return EX(ba.elem);}else if(ay===(21)){bb=(ax.kindType);return EX(bb.elem);}else if(ay===(22)){bc=(ax.kindType);return EX(bc.elem);}else if(ay===(23)){bd=(ax.kindType);return EX(bd.elem);}$panic(new $String("reflect: Elem of invalid type "+ax.String()));};CN.prototype.Elem=function(){return this.$val.Elem();};CN.ptr.prototype.Field=function(ax){var ax,ay,az;ay=this;if(!((ay.Kind()===25))){$panic(new $String("reflect: Field of non-struct type "+ay.String()));}az=(ay.kindType);return az.Field(ax);};CN.prototype.Field=function(ax){return this.$val.Field(ax);};CN.ptr.prototype.FieldByIndex=function(ax){var{ax,ay,az,ba,bb,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=this;if(!((ay.Kind()===25))){$panic(new $String("reflect: FieldByIndex of non-struct type "+ay.String()));}az=(ay.kindType);ba=az.FieldByIndex(ax);$s=1;case 1:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=ba;$s=2;case 2:return bb;}return;}var $f={$blk:CN.ptr.prototype.FieldByIndex,$c:true,$r,ax,ay,az,ba,bb,$s};return $f;};CN.prototype.FieldByIndex=function(ax){return this.$val.FieldByIndex(ax);};CN.ptr.prototype.FieldByName=function(ax){var{ax,ay,az,ba,bb,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=this;if(!((ay.Kind()===25))){$panic(new $String("reflect: FieldByName of non-struct type "+ay.String()));}az=(ay.kindType);ba=az.FieldByName(ax);$s=1;case 1:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=ba;$s=2;case 2:return bb;}return;}var $f={$blk:CN.ptr.prototype.FieldByName,$c:true,$r,ax,ay,az,ba,bb,$s};return $f;};CN.prototype.FieldByName=function(ax){return this.$val.FieldByName(ax);};CN.ptr.prototype.FieldByNameFunc=function(ax){var{ax,ay,az,ba,bb,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=this;if(!((ay.Kind()===25))){$panic(new $String("reflect: FieldByNameFunc of non-struct type "+ay.String()));}az=(ay.kindType);ba=az.FieldByNameFunc(ax);$s=1;case 1:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=ba;$s=2;case 2:return bb;}return;}var $f={$blk:CN.ptr.prototype.FieldByNameFunc,$c:true,$r,ax,ay,az,ba,bb,$s};return $f;};CN.prototype.FieldByNameFunc=function(ax){return this.$val.FieldByNameFunc(ax);};CN.ptr.prototype.In=function(ax){var ax,ay,az,ba;ay=this;if(!((ay.Kind()===19))){$panic(new $String("reflect: In of non-func type "+ay.String()));}az=(ay.kindType);return EX((ba=az.in$(),((ax<0||ax>=ba.$length)?($throwRuntimeError("index out of range"),undefined):ba.$array[ba.$offset+ax])));};CN.prototype.In=function(ax){return this.$val.In(ax);};CN.ptr.prototype.Key=function(){var ax,ay;ax=this;if(!((ax.Kind()===21))){$panic(new $String("reflect: Key of non-map type "+ax.String()));}ay=(ax.kindType);return EX(ay.key);};CN.prototype.Key=function(){return this.$val.Key();};CN.ptr.prototype.Len=function(){var ax,ay;ax=this;if(!((ax.Kind()===17))){$panic(new $String("reflect: Len of non-array type "+ax.String()));}ay=(ax.kindType);return((ay.len>>0));};CN.prototype.Len=function(){return this.$val.Len();};CN.ptr.prototype.NumField=function(){var ax,ay;ax=this;if(!((ax.Kind()===25))){$panic(new $String("reflect: NumField of non-struct type "+ax.String()));}ay=(ax.kindType);return ay.fields.$length;};CN.prototype.NumField=function(){return this.$val.NumField();};CN.ptr.prototype.NumIn=function(){var ax,ay;ax=this;if(!((ax.Kind()===19))){$panic(new $String("reflect: NumIn of non-func type "+ax.String()));}ay=(ax.kindType);return((ay.inCount>>0));};CN.prototype.NumIn=function(){return this.$val.NumIn();};CN.ptr.prototype.NumOut=function(){var ax,ay;ax=this;if(!((ax.Kind()===19))){$panic(new $String("reflect: NumOut of non-func type "+ax.String()));}ay=(ax.kindType);return ay.out().$length;};CN.prototype.NumOut=function(){return this.$val.NumOut();};CN.ptr.prototype.Out=function(ax){var ax,ay,az,ba;ay=this;if(!((ay.Kind()===19))){$panic(new $String("reflect: Out of non-func type "+ay.String()));}az=(ay.kindType);return EX((ba=az.out(),((ax<0||ax>=ba.$length)?($throwRuntimeError("index out of range"),undefined):ba.$array[ba.$offset+ax])));};CN.prototype.Out=function(ax){return this.$val.Out(ax);};CP.prototype.String=function(){var ax,ay;ax=this.$val;ay=ax;if(ay===(2)){return"chan<-";}else if(ay===(1)){return"<-chan";}else if(ay===(3)){return"chan";}return"ChanDir"+H.Itoa(((ax>>0)));};$ptrType(CP).prototype.String=function(){return new CP(this.$get()).String();};CT.ptr.prototype.Method=function(ax){var ax,ay,az,ba,bb,bc;ay=new DA.ptr("","",$ifaceNil,new Q.ptr(JC.nil,0,0),0);az=this;if(ax<0||ax>=az.methods.$length){return ay;}bb=(ba=az.methods,((ax<0||ax>=ba.$length)?($throwRuntimeError("index out of range"),undefined):ba.$array[ba.$offset+ax]));bc=$clone(az.rtype.nameOff(bb.name),GM);ay.Name=$clone(bc,GM).name();if(!$clone(bc,GM).isExported()){ay.PkgPath=$clone(bc,GM).pkgPath();if(ay.PkgPath===""){ay.PkgPath=$clone(az.pkgPath,GM).name();}}ay.Type=EX(az.rtype.typeOff(bb.typ));ay.Index=ax;return ay;};CT.prototype.Method=function(ax){return this.$val.Method(ax);};CT.ptr.prototype.NumMethod=function(){var ax;ax=this;return ax.methods.$length;};CT.prototype.NumMethod=function(){return this.$val.NumMethod();};CT.ptr.prototype.MethodByName=function(ax){var ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh;ay=new DA.ptr("","",$ifaceNil,new Q.ptr(JC.nil,0,0),0);az=false;ba=this;if(ba===KA.nil){return[ay,az];}bb=KB.nil;bc=ba.methods;bd=0;while(true){if(!(bd<bc.$length)){break;}be=bd;bb=(bf=ba.methods,((be<0||be>=bf.$length)?($throwRuntimeError("index out of range"),undefined):bf.$array[bf.$offset+be]));if($clone(ba.rtype.nameOff(bb.name),GM).name()===ax){bg=$clone(ba.Method(be),DA);bh=true;DA.copy(ay,bg);az=bh;return[ay,az];}bd++;}return[ay,az];};CT.prototype.MethodByName=function(ax){return this.$val.MethodByName(ax);};DL.ptr.prototype.IsExported=function(){var ax;ax=this;return ax.PkgPath==="";};DL.prototype.IsExported=function(){return this.$val.IsExported();};DM.prototype.Get=function(ax){var ax,ay,az,ba;ay=this.$val;az=new DM(ay).Lookup(ax);ba=az[0];return ba;};$ptrType(DM).prototype.Get=function(ax){return new DM(this.$get()).Get(ax);};DM.prototype.Lookup=function(ax){var ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk;ay="";az=false;ba=this.$val;while(true){if(!(!(ba===""))){break;}bb=0;while(true){if(!(bb<ba.length&&(ba.charCodeAt(bb)===32))){break;}bb=bb+(1)>>0;}ba=$substring(ba,bb);if(ba===""){break;}bb=0;while(true){if(!(bb<ba.length&&ba.charCodeAt(bb)>32&&!((ba.charCodeAt(bb)===58))&&!((ba.charCodeAt(bb)===34))&&!((ba.charCodeAt(bb)===127)))){break;}bb=bb+(1)>>0;}if((bb===0)||(bb+1>>0)>=ba.length||!((ba.charCodeAt(bb)===58))||!((ba.charCodeAt((bb+1>>0))===34))){break;}bc=($substring(ba,0,bb));ba=$substring(ba,(bb+1>>0));bb=1;while(true){if(!(bb<ba.length&&!((ba.charCodeAt(bb)===34)))){break;}if(ba.charCodeAt(bb)===92){bb=bb+(1)>>0;}bb=bb+(1)>>0;}if(bb>=ba.length){break;}bd=($substring(ba,0,(bb+1>>0)));ba=$substring(ba,(bb+1>>0));if(ax===bc){be=H.Unquote(bd);bf=be[0];bg=be[1];if(!($interfaceIsEqual(bg,$ifaceNil))){break;}bh=bf;bi=true;ay=bh;az=bi;return[ay,az];}}bj="";bk=false;ay=bj;az=bk;return[ay,az];};$ptrType(DM).prototype.Lookup=function(ax){return new DM(this.$get()).Lookup(ax);};CY.ptr.prototype.Field=function(ax){var ax,ay,az,ba,bb,bc;ay=new DL.ptr("","",$ifaceNil,"",0,JJ.nil,false);az=this;if(ax<0||ax>=az.fields.$length){$panic(new $String("reflect: Field index out of bounds"));}bb=(ba=az.fields,((ax<0||ax>=ba.$length)?($throwRuntimeError("index out of range"),undefined):ba.$array[ba.$offset+ax]));ay.Type=EX(bb.typ);ay.Name=$clone(bb.name,GM).name();ay.Anonymous=bb.embedded();if(!$clone(bb.name,GM).isExported()){ay.PkgPath=$clone(az.pkgPath,GM).name();}bc=$clone(bb.name,GM).tag();if(!(bc==="")){ay.Tag=(bc);}ay.Offset=bb.offset();ay.Index=new JJ([ax]);return ay;};CY.prototype.Field=function(ax){return this.$val.Field(ax);};CY.ptr.prototype.FieldByIndex=function(ax){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=new DL.ptr("","",$ifaceNil,"",0,JJ.nil,false);az=this;ay.Type=EX(az.rtype);ba=ax;bb=0;case 1:if(!(bb<ba.$length)){$s=2;continue;}bc=bb;bd=((bb<0||bb>=ba.$length)?($throwRuntimeError("index out of range"),undefined):ba.$array[ba.$offset+bb]);if(bc>0){$s=3;continue;}$s=4;continue;case 3:be=ay.Type;bg=be.Kind();$s=8;case 8:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}if(!(bg===22)){bf=false;$s=7;continue s;}bh=be.Elem();$s=9;case 9:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bi=bh.Kind();$s=10;case 10:if($c){$c=false;bi=bi.$blk();}if(bi&&bi.$blk!==undefined){break s;}bf=bi===25;case 7:if(bf){$s=5;continue;}$s=6;continue;case 5:bj=be.Elem();$s=11;case 11:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}be=bj;case 6:ay.Type=be;case 4:bk=ay.Type.Field(bd);$s=12;case 12:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}DL.copy(ay,bk);bb++;$s=1;continue;case 2:$s=-1;return ay;}return;}var $f={$blk:CY.ptr.prototype.FieldByIndex,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,$s};return $f;};CY.prototype.FieldByIndex=function(ax){return this.$val.FieldByIndex(ax);};CY.ptr.prototype.FieldByNameFunc=function(ax){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=new DL.ptr("","",$ifaceNil,"",0,JJ.nil,false);az=false;ba=this;bb=new KC([]);bc=new KC([new DN.ptr(ba,JJ.nil)]);bd=false;be=$makeMap(KD.keyFor,[]);case 1:if(!(bc.$length>0)){$s=2;continue;}bf=bc;bg=$subslice(bb,0,0);bb=bf;bc=bg;bh=bd;bd=false;bi=bb;bj=0;case 3:if(!(bj<bi.$length)){$s=4;continue;}bk=$clone(((bj<0||bj>=bi.$length)?($throwRuntimeError("index out of range"),undefined):bi.$array[bi.$offset+bj]),DN);bl=bk.typ;if((bm=$mapIndex(be,KD.keyFor(bl)),bm!==undefined?bm.v:false)){bj++;$s=3;continue;}bn=bl;(be||$throwRuntimeError("assignment to entry in nil map")).set(KD.keyFor(bn),{k:bn,v:true});bo=bl.fields;bp=0;case 5:if(!(bp<bo.$length)){$s=6;continue;}bq=bp;bs=(br=bl.fields,((bq<0||bq>=br.$length)?($throwRuntimeError("index out of range"),undefined):br.$array[br.$offset+bq]));bt=$clone(bs.name,GM).name();bu=JC.nil;if(bs.embedded()){$s=7;continue;}$s=8;continue;case 7:bu=bs.typ;if(bu.Kind()===22){$s=9;continue;}$s=10;continue;case 9:bv=bu.Elem().common();$s=11;case 11:if($c){$c=false;bv=bv.$blk();}if(bv&&bv.$blk!==undefined){break s;}bu=bv;case 10:case 8:bw=ax(bt);$s=14;case 14:if($c){$c=false;bw=bw.$blk();}if(bw&&bw.$blk!==undefined){break s;}if(bw){$s=12;continue;}$s=13;continue;case 12:if((bx=$mapIndex(bh,KD.keyFor(bl)),bx!==undefined?bx.v:0)>1||az){by=new DL.ptr("","",$ifaceNil,"",0,JJ.nil,false);bz=false;DL.copy(ay,by);az=bz;$s=-1;return[ay,az];}DL.copy(ay,bl.Field(bq));ay.Index=JJ.nil;ay.Index=$appendSlice(ay.Index,bk.index);ay.Index=$append(ay.Index,bq);az=true;bp++;$s=5;continue;case 13:if(az||bu===JC.nil||!((bu.Kind()===25))){bp++;$s=5;continue;}ca=(bu.kindType);if((cb=$mapIndex(bd,KD.keyFor(ca)),cb!==undefined?cb.v:0)>0){cc=ca;(bd||$throwRuntimeError("assignment to entry in nil map")).set(KD.keyFor(cc),{k:cc,v:2});bp++;$s=5;continue;}if(bd===false){bd=$makeMap(KD.keyFor,[]);}cd=ca;(bd||$throwRuntimeError("assignment to entry in nil map")).set(KD.keyFor(cd),{k:cd,v:1});if((ce=$mapIndex(bh,KD.keyFor(bl)),ce!==undefined?ce.v:0)>1){cf=ca;(bd||$throwRuntimeError("assignment to entry in nil map")).set(KD.keyFor(cf),{k:cf,v:2});}cg=JJ.nil;cg=$appendSlice(cg,bk.index);cg=$append(cg,bq);bc=$append(bc,new DN.ptr(ca,cg));bp++;$s=5;continue;case 6:bj++;$s=3;continue;case 4:if(az){$s=2;continue;}$s=1;continue;case 2:$s=-1;return[ay,az];}return;}var $f={$blk:CY.ptr.prototype.FieldByNameFunc,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,$s};return $f;};CY.prototype.FieldByNameFunc=function(ax){return this.$val.FieldByNameFunc(ax);};CY.ptr.prototype.FieldByName=function(ax){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ax=[ax];ay=new DL.ptr("","",$ifaceNil,"",0,JJ.nil,false);az=false;ba=this;bb=false;if(!(ax[0]==="")){bc=ba.fields;bd=0;while(true){if(!(bd<bc.$length)){break;}be=bd;bg=(bf=ba.fields,((be<0||be>=bf.$length)?($throwRuntimeError("index out of range"),undefined):bf.$array[bf.$offset+be]));if($clone(bg.name,GM).name()===ax[0]){bh=$clone(ba.Field(be),DL);bi=true;DL.copy(ay,bh);az=bi;$s=-1;return[ay,az];}if(bg.embedded()){bb=true;}bd++;}}if(!bb){$s=-1;return[ay,az];}bk=ba.FieldByNameFunc((function(ax){return function(bk){var bk;return bk===ax[0];};})(ax));$s=1;case 1:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bj=bk;DL.copy(ay,bj[0]);az=bj[1];bl=[ay,az];$s=2;case 2:return bl;}return;}var $f={$blk:CY.ptr.prototype.FieldByName,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,$s};return $f;};CY.prototype.FieldByName=function(ax){return this.$val.FieldByName(ax);};DP=function(ax){var ax;return DQ(ax);};$pkg.PtrTo=DP;DQ=function(ax){var ax;return $assertType(ax,JC).ptrTo();};$pkg.PointerTo=DQ;CN.ptr.prototype.Implements=function(ax){var{ax,ay,az,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=this;if($interfaceIsEqual(ax,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.Implements"));}az=ax.Kind();$s=3;case 3:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}if(!((az===20))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect: non-interface type passed to Type.Implements"));case 2:$s=-1;return DS($assertType(ax,JC),ay);}return;}var $f={$blk:CN.ptr.prototype.Implements,$c:true,$r,ax,ay,az,$s};return $f;};CN.prototype.Implements=function(ax){return this.$val.Implements(ax);};CN.ptr.prototype.AssignableTo=function(ax){var{ax,ay,az,ba,bb,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=this;if($interfaceIsEqual(ax,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.AssignableTo"));}az=$assertType(ax,JC);ba=DU(az,ay);$s=1;case 1:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=ba||DS(az,ay);$s=2;case 2:return bb;}return;}var $f={$blk:CN.ptr.prototype.AssignableTo,$c:true,$r,ax,ay,az,ba,bb,$s};return $f;};CN.prototype.AssignableTo=function(ax){return this.$val.AssignableTo(ax);};CN.ptr.prototype.ConvertibleTo=function(ax){var{ax,ay,az,ba,bb,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=this;if($interfaceIsEqual(ax,$ifaceNil)){$panic(new $String("reflect: nil type passed to Type.ConvertibleTo"));}az=$assertType(ax,JC);ba=BB(az,ay);$s=1;case 1:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=!(ba===$throwNilPointerError);$s=2;case 2:return bb;}return;}var $f={$blk:CN.ptr.prototype.ConvertibleTo,$c:true,$r,ax,ay,az,ba,bb,$s};return $f;};CN.prototype.ConvertibleTo=function(ax){return this.$val.ConvertibleTo(ax);};DS=function(ax,ay){var ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv;if(!((ax.Kind()===20))){return false;}az=(ax.kindType);if(az.methods.$length===0){return true;}if(ay.Kind()===20){ba=(ay.kindType);bb=0;bc=0;while(true){if(!(bc<ba.methods.$length)){break;}be=(bd=az.methods,((bb<0||bb>=bd.$length)?($throwRuntimeError("index out of range"),undefined):bd.$array[bd.$offset+bb]));bf=$clone(az.rtype.nameOff(be.name),GM);bh=(bg=ba.methods,((bc<0||bc>=bg.$length)?($throwRuntimeError("index out of range"),undefined):bg.$array[bg.$offset+bc]));bi=$clone(ay.nameOff(bh.name),GM);if($clone(bi,GM).name()===$clone(bf,GM).name()&&ay.typeOff(bh.typ)===az.rtype.typeOff(be.typ)){if(!$clone(bf,GM).isExported()){bj=$clone(bf,GM).pkgPath();if(bj===""){bj=$clone(az.pkgPath,GM).name();}bk=$clone(bi,GM).pkgPath();if(bk===""){bk=$clone(ba.pkgPath,GM).name();}if(!(bj===bk)){bc=bc+(1)>>0;continue;}}bb=bb+(1)>>0;if(bb>=az.methods.$length){return true;}}bc=bc+(1)>>0;}return false;}bl=ay.uncommon();if(bl===JY.nil){return false;}bm=0;bn=bl.methods();bo=0;while(true){if(!(bo<((bl.mcount>>0)))){break;}bq=(bp=az.methods,((bm<0||bm>=bp.$length)?($throwRuntimeError("index out of range"),undefined):bp.$array[bp.$offset+bm]));br=$clone(az.rtype.nameOff(bq.name),GM);bs=$clone(((bo<0||bo>=bn.$length)?($throwRuntimeError("index out of range"),undefined):bn.$array[bn.$offset+bo]),CO);bt=$clone(ay.nameOff(bs.name),GM);if($clone(bt,GM).name()===$clone(br,GM).name()&&ay.typeOff(bs.mtyp)===az.rtype.typeOff(bq.typ)){if(!$clone(br,GM).isExported()){bu=$clone(br,GM).pkgPath();if(bu===""){bu=$clone(az.pkgPath,GM).name();}bv=$clone(bt,GM).pkgPath();if(bv===""){bv=$clone(ay.nameOff(bl.pkgPath),GM).name();}if(!(bu===bv)){bo=bo+(1)>>0;continue;}}bm=bm+(1)>>0;if(bm>=az.methods.$length){return true;}}bo=bo+(1)>>0;}return false;};DT=function(ax,ay){var{ax,ay,az,ba,bb,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:if(!((ay.ChanDir()===3)&&(ax.Name()===""||ay.Name()===""))){az=false;$s=1;continue s;}ba=DV(ax.Elem(),ay.Elem(),true);$s=2;case 2:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}az=ba;case 1:bb=az;$s=3;case 3:return bb;}return;}var $f={$blk:DT,$c:true,$r,ax,ay,az,ba,bb,$s};return $f;};DU=function(ax,ay){var{ax,ay,az,ba,bb,bc,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:if(ax===ay){$s=-1;return true;}if(ax.hasName()&&ay.hasName()||!((ax.Kind()===ay.Kind()))){$s=-1;return false;}if(!(ax.Kind()===18)){az=false;$s=3;continue s;}ba=DT(ax,ay);$s=4;case 4:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}az=ba;case 3:if(az){$s=1;continue;}$s=2;continue;case 1:$s=-1;return true;case 2:bb=DW(ax,ay,true);$s=5;case 5:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=bb;$s=6;case 6:return bc;}return;}var $f={$blk:DU,$c:true,$r,ax,ay,az,ba,bb,bc,$s};return $f;};DV=function(ax,ay,az){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,$s,$r,$c}=$restore(this,{ax,ay,az});$s=$s||0;s:while(true){switch($s){case 0:if(az){$s=-1;return $interfaceIsEqual(ax,ay);}bc=ax.Name();$s=5;case 5:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}bd=ay.Name();$s=6;case 6:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}if(!(bc===bd)){bb=true;$s=4;continue s;}be=ax.Kind();$s=7;case 7:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bf=ay.Kind();$s=8;case 8:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bb=!((be===bf));case 4:if(bb){ba=true;$s=3;continue s;}bg=ax.PkgPath();$s=9;case 9:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}bh=ay.PkgPath();$s=10;case 10:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}ba=!(bg===bh);case 3:if(ba){$s=1;continue;}$s=2;continue;case 1:$s=-1;return false;case 2:bi=ax.common();$s=11;case 11:if($c){$c=false;bi=bi.$blk();}if(bi&&bi.$blk!==undefined){break s;}bj=bi;bk=ay.common();$s=12;case 12:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bl=bk;bm=DW(bj,bl,false);$s=13;case 13:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}bn=bm;$s=14;case 14:return bn;}return;}var $f={$blk:DV,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,$s};return $f;};DW=function(ax,ay,az){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,$s,$r,$c}=$restore(this,{ax,ay,az});$s=$s||0;s:while(true){switch($s){case 0:if(ax===ay){$s=-1;return true;}ba=ax.Kind();if(!((ba===ay.Kind()))){$s=-1;return false;}if(1<=ba&&ba<=16||(ba===24)||(ba===26)){$s=-1;return true;}bb=ba;if(bb===(17)){$s=2;continue;}if(bb===(18)){$s=3;continue;}if(bb===(19)){$s=4;continue;}if(bb===(20)){$s=5;continue;}if(bb===(21)){$s=6;continue;}if((bb===(22))||(bb===(23))){$s=7;continue;}if(bb===(25)){$s=8;continue;}$s=9;continue;case 2:if(!(ax.Len()===ay.Len())){bc=false;$s=10;continue s;}bd=DV(ax.Elem(),ay.Elem(),az);$s=11;case 11:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}bc=bd;case 10:be=bc;$s=12;case 12:return be;case 3:if(!(ay.ChanDir()===ax.ChanDir())){bf=false;$s=13;continue s;}bg=DV(ax.Elem(),ay.Elem(),az);$s=14;case 14:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}bf=bg;case 13:bh=bf;$s=15;case 15:return bh;case 4:bi=(ax.kindType);bj=(ay.kindType);if(!((bi.outCount===bj.outCount))||!((bi.inCount===bj.inCount))){$s=-1;return false;}bk=0;case 16:if(!(bk<bi.rtype.NumIn())){$s=17;continue;}bl=DV(bi.rtype.In(bk),bj.rtype.In(bk),az);$s=20;case 20:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}if(!bl){$s=18;continue;}$s=19;continue;case 18:$s=-1;return false;case 19:bk=bk+(1)>>0;$s=16;continue;case 17:bm=0;case 21:if(!(bm<bi.rtype.NumOut())){$s=22;continue;}bn=DV(bi.rtype.Out(bm),bj.rtype.Out(bm),az);$s=25;case 25:if($c){$c=false;bn=bn.$blk();}if(bn&&bn.$blk!==undefined){break s;}if(!bn){$s=23;continue;}$s=24;continue;case 23:$s=-1;return false;case 24:bm=bm+(1)>>0;$s=21;continue;case 22:$s=-1;return true;case 5:bo=(ax.kindType);bp=(ay.kindType);if((bo.methods.$length===0)&&(bp.methods.$length===0)){$s=-1;return true;}$s=-1;return false;case 6:br=DV(ax.Key(),ay.Key(),az);$s=27;case 27:if($c){$c=false;br=br.$blk();}if(br&&br.$blk!==undefined){break s;}if(!(br)){bq=false;$s=26;continue s;}bs=DV(ax.Elem(),ay.Elem(),az);$s=28;case 28:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}bq=bs;case 26:bt=bq;$s=29;case 29:return bt;case 7:bu=DV(ax.Elem(),ay.Elem(),az);$s=30;case 30:if($c){$c=false;bu=bu.$blk();}if(bu&&bu.$blk!==undefined){break s;}bv=bu;$s=31;case 31:return bv;case 8:bw=(ax.kindType);bx=(ay.kindType);if(!((bw.fields.$length===bx.fields.$length))){$s=-1;return false;}if(!($clone(bw.pkgPath,GM).name()===$clone(bx.pkgPath,GM).name())){$s=-1;return false;}by=bw.fields;bz=0;case 32:if(!(bz<by.$length)){$s=33;continue;}ca=bz;cc=(cb=bw.fields,((ca<0||ca>=cb.$length)?($throwRuntimeError("index out of range"),undefined):cb.$array[cb.$offset+ca]));ce=(cd=bx.fields,((ca<0||ca>=cd.$length)?($throwRuntimeError("index out of range"),undefined):cd.$array[cd.$offset+ca]));if(!($clone(cc.name,GM).name()===$clone(ce.name,GM).name())){$s=-1;return false;}cf=DV(cc.typ,ce.typ,az);$s=36;case 36:if($c){$c=false;cf=cf.$blk();}if(cf&&cf.$blk!==undefined){break s;}if(!cf){$s=34;continue;}$s=35;continue;case 34:$s=-1;return false;case 35:if(az&&!($clone(cc.name,GM).tag()===$clone(ce.name,GM).tag())){$s=-1;return false;}if(!((cc.offsetEmbed===ce.offsetEmbed))){$s=-1;return false;}bz++;$s=32;continue;case 33:$s=-1;return true;case 9:case 1:$s=-1;return false;}return;}var $f={$blk:DW,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,$s};return $f;};EX=function(ax){var ax;if(ax===JC.nil){return $ifaceNil;}return ax;};FC=function(ax){var ax;return((ax.kind&32)>>>0)===0;};FI=function(){var{ax,ay,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:ax=B.FuncPCABI0(new KI(FJ));$s=1;case 1:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}ay=ax;$s=2;case 2:return ay;}return;}var $f={$blk:FI,$c:true,$r,ax,ay,$s};return $f;};FJ=function(){$throwRuntimeError("native function not implemented: reflect.methodValueCall");};GF=function(){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:ax=(function(ax){var ax;});$r=ax((ay=new CN.ptr(0,0,0,0,0,0,0,$throwNilPointerError,KE.nil,0,0),new ay.constructor.elem(ay)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ax((az=new GK.ptr(0,0,0,0,JZ.nil),new az.constructor.elem(az)));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ax((ba=new CO.ptr(0,0,0,0),new ba.constructor.elem(ba)));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ax((bb=new CQ.ptr(new CN.ptr(0,0,0,0,0,0,0,$throwNilPointerError,KE.nil,0,0),JC.nil,JC.nil,0),new bb.constructor.elem(bb)));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ax((bc=new CR.ptr(new CN.ptr(0,0,0,0,0,0,0,$throwNilPointerError,KE.nil,0,0),JC.nil,0),new bc.constructor.elem(bc)));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ax((bd=new GL.ptr(new CN.ptr(0,0,0,0,0,0,0,$throwNilPointerError,KE.nil,0,0),0,0,JD.nil,JD.nil),new bd.constructor.elem(bd)));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ax((be=new CT.ptr(new CN.ptr(0,0,0,0,0,0,0,$throwNilPointerError,KE.nil,0,0),new GM.ptr(KE.nil),KL.nil),new be.constructor.elem(be)));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ax((bf=new CU.ptr(new CN.ptr(0,0,0,0,0,0,0,$throwNilPointerError,KE.nil,0,0),JC.nil,JC.nil,JC.nil,$throwNilPointerError,0,0,0,0),new bf.constructor.elem(bf)));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ax((bg=new CV.ptr(new CN.ptr(0,0,0,0,0,0,0,$throwNilPointerError,KE.nil,0,0),JC.nil),new bg.constructor.elem(bg)));$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ax((bh=new CW.ptr(new CN.ptr(0,0,0,0,0,0,0,$throwNilPointerError,KE.nil,0,0),JC.nil),new bh.constructor.elem(bh)));$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ax((bi=new CY.ptr(new CN.ptr(0,0,0,0,0,0,0,$throwNilPointerError,KE.nil,0,0),new GM.ptr(KE.nil),KM.nil),new bi.constructor.elem(bi)));$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ax((bj=new CS.ptr(0,0),new bj.constructor.elem(bj)));$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=ax((bk=new CX.ptr(new GM.ptr(KE.nil),JC.nil,0),new bk.constructor.elem(bk)));$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}GE=true;AE=$assertType(HB(new $Uint8(0)),JC);$s=-1;return;}return;}var $f={$blk:GF,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,$s};return $f;};GG=function(ax){var ax,ay,az,ba,bb;if($interfaceIsEqual(ax,$ifaceNil)){$panic(new $String("reflect: New(nil)"));}ay=$assertType(ax,JC);az=ay.ptrTo();ba=HK(ay);bb=22;return new Q.ptr(az,ba,bb);};$pkg.New=GG;GH=function(ax){var ax;return ax.jsType;};GI=function(ax){var ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci;if(ax.reflectType===undefined){ay=new CN.ptr(((($parseInt(ax.size)>>0)>>>0)),0,0,0,0,0,((($parseInt(ax.kind)>>0)<<24>>>24)),$throwNilPointerError,KE.nil,GS($clone(GP(GW(ax.string),"",!!(ax.exported)),GM)),0);ay.jsType=ax;ax.reflectType=ay;az=$methodSet(ax);if(!(($parseInt(az.length)===0))||!!(ax.named)){ay.tflag=(ay.tflag|(1))>>>0;if(!!(ax.named)){ay.tflag=(ay.tflag|(4))>>>0;}ba=JZ.nil;bb=0;while(true){if(!(bb<$parseInt(az.length))){break;}bc=az[bb];bd=GW(bc.pkg)==="";if(!bd){bb=bb+(1)>>0;continue;}ba=$append(ba,new CO.ptr(GS($clone(GQ(bc),GM)),GU(GI(bc.typ)),0,0));bb=bb+(1)>>0;}be=((ba.$length<<16>>>16));bf=0;while(true){if(!(bf<$parseInt(az.length))){break;}bg=az[bf];bh=GW(bg.pkg)==="";if(bh){bf=bf+(1)>>0;continue;}ba=$append(ba,new CO.ptr(GS($clone(GQ(bg),GM)),GU(GI(bg.typ)),0,0));bf=bf+(1)>>0;}bi=new GK.ptr(GS($clone(GP(GW(ax.pkg),"",false),GM)),(($parseInt(az.length)<<16>>>16)),be,0,ba);bi.jsType=ax;ay.uncommonType=bi;}bj=ay.Kind();if(bj===(17)){GJ(ay,new CQ.ptr(new CN.ptr(0,0,0,0,0,0,0,$throwNilPointerError,KE.nil,0,0),GI(ax.elem),JC.nil,((($parseInt(ax.len)>>0)>>>0))));}else if(bj===(18)){bk=3;if(!!(ax.sendOnly)){bk=2;}if(!!(ax.recvOnly)){bk=1;}GJ(ay,new CR.ptr(new CN.ptr(0,0,0,0,0,0,0,$throwNilPointerError,KE.nil,0,0),GI(ax.elem),((bk>>>0))));}else if(bj===(19)){bl=ax.params;bm=$makeSlice(JD,$parseInt(bl.length));bn=bm;bo=0;while(true){if(!(bo<bn.$length)){break;}bp=bo;((bp<0||bp>=bm.$length)?($throwRuntimeError("index out of range"),undefined):bm.$array[bm.$offset+bp]=GI(bl[bp]));bo++;}bq=ax.results;br=$makeSlice(JD,$parseInt(bq.length));bs=br;bt=0;while(true){if(!(bt<bs.$length)){break;}bu=bt;((bu<0||bu>=br.$length)?($throwRuntimeError("index out of range"),undefined):br.$array[br.$offset+bu]=GI(bq[bu]));bt++;}bv=(($parseInt(bq.length)<<16>>>16));if(!!(ax.variadic)){bv=(bv|(32768))>>>0;}GJ(ay,new GL.ptr($clone(ay,CN),(($parseInt(bl.length)<<16>>>16)),bv,bm,br));}else if(bj===(20)){bw=ax.methods;bx=$makeSlice(KL,$parseInt(bw.length));by=bx;bz=0;while(true){if(!(bz<by.$length)){break;}ca=bz;cb=bw[ca];CS.copy(((ca<0||ca>=bx.$length)?($throwRuntimeError("index out of range"),undefined):bx.$array[bx.$offset+ca]),new CS.ptr(GS($clone(GQ(cb),GM)),GU(GI(cb.typ))));bz++;}GJ(ay,new CT.ptr($clone(ay,CN),$clone(GP(GW(ax.pkg),"",false),GM),bx));}else if(bj===(21)){GJ(ay,new CU.ptr(new CN.ptr(0,0,0,0,0,0,0,$throwNilPointerError,KE.nil,0,0),GI(ax.key),GI(ax.elem),JC.nil,$throwNilPointerError,0,0,0,0));}else if(bj===(22)){GJ(ay,new CV.ptr(new CN.ptr(0,0,0,0,0,0,0,$throwNilPointerError,KE.nil,0,0),GI(ax.elem)));}else if(bj===(23)){GJ(ay,new CW.ptr(new CN.ptr(0,0,0,0,0,0,0,$throwNilPointerError,KE.nil,0,0),GI(ax.elem)));}else if(bj===(25)){cc=ax.fields;cd=$makeSlice(KM,$parseInt(cc.length));ce=cd;cf=0;while(true){if(!(cf<ce.$length)){break;}cg=cf;ch=cc[cg];ci=((cg>>>0))<<1>>>0;if(!!(ch.embedded)){ci=(ci|(1))>>>0;}CX.copy(((cg<0||cg>=cd.$length)?($throwRuntimeError("index out of range"),undefined):cd.$array[cd.$offset+cg]),new CX.ptr($clone(GP(GW(ch.name),GW(ch.tag),!!(ch.exported)),GM),GI(ch.typ),ci));cf++;}GJ(ay,new CY.ptr($clone(ay,CN),$clone(GP(GW(ax.pkgPath),"",false),GM),cd));}}return((ax.reflectType));};GJ=function(ax,ay){var ax,ay;ax.kindType=ay;ay.rtype=ax;};GK.ptr.prototype.methods=function(){var ax;ax=this;return ax._methods;};GK.prototype.methods=function(){return this.$val.methods();};GK.ptr.prototype.exportedMethods=function(){var ax;ax=this;return $subslice(ax._methods,0,ax.xcount,ax.xcount);};GK.prototype.exportedMethods=function(){return this.$val.exportedMethods();};CN.ptr.prototype.uncommon=function(){var ax,ay;ax=this;ay=ax.uncommonType;if(ay===undefined){return JY.nil;}return((ay));};CN.prototype.uncommon=function(){return this.$val.uncommon();};GL.ptr.prototype.in$=function(){var ax;ax=this;return ax._in;};GL.prototype.in$=function(){return this.$val.in$();};GL.ptr.prototype.out=function(){var ax;ax=this;return ax._out;};GL.prototype.out=function(){return this.$val.out();};GM.ptr.prototype.name=function(){var ax,ay,az;ax="";ay=this;ax=(az=$mapIndex(GO,KE.keyFor(ay.bytes)),az!==undefined?az.v:KN.nil).name;return ax;};GM.prototype.name=function(){return this.$val.name();};GM.ptr.prototype.tag=function(){var ax,ay,az;ax="";ay=this;ax=(az=$mapIndex(GO,KE.keyFor(ay.bytes)),az!==undefined?az.v:KN.nil).tag;return ax;};GM.prototype.tag=function(){return this.$val.tag();};GM.ptr.prototype.pkgPath=function(){var ax,ay;ax=this;return(ay=$mapIndex(GO,KE.keyFor(ax.bytes)),ay!==undefined?ay.v:KN.nil).pkgPath;};GM.prototype.pkgPath=function(){return this.$val.pkgPath();};GM.ptr.prototype.isExported=function(){var ax,ay;ax=this;return(ay=$mapIndex(GO,KE.keyFor(ax.bytes)),ay!==undefined?ay.v:KN.nil).exported;};GM.prototype.isExported=function(){return this.$val.isExported();};GP=function(ax,ay,az){var ax,ay,az,ba,bb;ba=$newDataPointer(0,KE);bb=ba;(GO||$throwRuntimeError("assignment to entry in nil map")).set(KE.keyFor(bb),{k:bb,v:new GN.ptr(ax,ay,az,"")});return new GM.ptr(ba);};GQ=function(ax){var ax,ay,az;ay=$newDataPointer(0,KE);az=ay;(GO||$throwRuntimeError("assignment to entry in nil map")).set(KE.keyFor(az),{k:az,v:new GN.ptr(GW(ax.name),"",GW(ax.pkg)==="",GW(ax.pkg))});return new GM.ptr(ay);};CN.ptr.prototype.nameOff=function(ax){var ax,ay,az;ay=this;return(az=((ax>>0)),((az<0||az>=GR.$length)?($throwRuntimeError("index out of range"),undefined):GR.$array[GR.$offset+az]));};CN.prototype.nameOff=function(ax){return this.$val.nameOff(ax);};GS=function(ax){var ax,ay;ay=GR.$length;GR=$append(GR,ax);return((ay>>0));};CN.ptr.prototype.typeOff=function(ax){var ax,ay,az;ay=this;return(az=((ax>>0)),((az<0||az>=GT.$length)?($throwRuntimeError("index out of range"),undefined):GT.$array[GT.$offset+az]));};CN.prototype.typeOff=function(ax){return this.$val.typeOff(ax);};GU=function(ax){var ax,ay;ay=GT.$length;GT=$append(GT,ax);return((ay>>0));};GW=function(ax){var ax,ay;ay=new KO.ptr("");ay.str=ax;return ay.str;};GX=function(ax){var ax;return!!(GH(ax).wrapped);};GY=function(ax,ay,az){var ax,ay,az,ba,bb,bc;ba=GH(az).fields;bb=0;while(true){if(!(bb<$parseInt(ba.length))){break;}bc=$internalize(ba[bb].prop,$String);ax[$externalize(bc,$String)]=ay[$externalize(bc,$String)];bb=bb+(1)>>0;}};GZ=function(ax,ay,az){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,$s,$r,$c}=$restore(this,{ax,ay,az});$s=$s||0;s:while(true){switch($s){case 0:ba=ax.common();$s=1;case 1:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=ba;be=ax.Kind();$s=6;case 6:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}if(be===17){bd=true;$s=5;continue s;}bf=ax.Kind();$s=7;case 7:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bd=bf===25;case 5:if(bd){bc=true;$s=4;continue s;}bg=ax.Kind();$s=8;case 8:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}bc=bg===22;case 4:if(bc){$s=2;continue;}$s=3;continue;case 2:bh=ax.Kind();$s=9;case 9:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bi=new Q.ptr(bb,(ay),(az|((bh>>>0)))>>>0);$s=10;case 10:return bi;case 3:bj=ax.Kind();$s=11;case 11:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}bk=new Q.ptr(bb,($newDataPointer(ay,GH(bb.ptrTo()))),(((az|((bj>>>0)))>>>0)|128)>>>0);$s=12;case 12:return bk;}return;}var $f={$blk:GZ,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,$s};return $f;};HA=function(ax,ay,az){var{ax,ay,az,ba,bb,bc,$s,$r,$c}=$restore(this,{ax,ay,az});$s=$s||0;s:while(true){switch($s){case 0:ax=[ax];ba=ax[0].Kind();$s=3;case 3:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}if(!((ba===23))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.MakeSlice of non-slice type"));case 2:if(ay<0){$panic(new $String("reflect.MakeSlice: negative len"));}if(az<0){$panic(new $String("reflect.MakeSlice: negative cap"));}if(ay>az){$panic(new $String("reflect.MakeSlice: len > cap"));}bb=GZ(ax[0],$makeSlice(GH(ax[0]),ay,az,(function(ax){return function $b(){var{bb,bc,bd,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:bb=ax[0].Elem();$s=1;case 1:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=GH(bb);$s=2;case 2:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}bd=bc.zero();$s=3;case 3:return bd;}return;}var $f={$blk:$b,$c:true,$r,bb,bc,bd,$s};return $f;};})(ax)),0);$s=4;case 4:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=bb;$s=5;case 5:return bc;}return;}var $f={$blk:HA,$c:true,$r,ax,ay,az,ba,bb,bc,$s};return $f;};$pkg.MakeSlice=HA;HB=function(ax){var ax;if(!GE){return new CN.ptr(0,0,0,0,0,0,0,$throwNilPointerError,KE.nil,0,0);}if($interfaceIsEqual(ax,$ifaceNil)){return $ifaceNil;}return GI(ax.constructor);};$pkg.TypeOf=HB;HC=function(ax){var{ax,ay,az,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:if($interfaceIsEqual(ax,$ifaceNil)){$s=-1;return new Q.ptr(JC.nil,0,0);}ay=GZ(GI(ax.constructor),ax.$val,0);$s=1;case 1:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}az=ay;$s=2;case 2:return az;}return;}var $f={$blk:HC,$c:true,$r,ax,ay,az,$s};return $f;};$pkg.ValueOf=HC;HF=function(ax,ay,az){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,$s,$r,$c}=$restore(this,{ax,ay,az});$s=$s||0;s:while(true){switch($s){case 0:if(!(az)){ba=false;$s=3;continue s;}if(ax.$length===0){bb=true;$s=4;continue s;}bd=(bc=ax.$length-1>>0,((bc<0||bc>=ax.$length)?($throwRuntimeError("index out of range"),undefined):ax.$array[ax.$offset+bc])).Kind();$s=5;case 5:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}bb=!((bd===23));case 4:ba=bb;case 3:if(ba){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.FuncOf: last arg of variadic func must be slice"));case 2:be=$makeSlice(KP,ax.$length);bf=ax;bg=0;while(true){if(!(bg<bf.$length)){break;}bh=bg;bi=((bg<0||bg>=bf.$length)?($throwRuntimeError("index out of range"),undefined):bf.$array[bf.$offset+bg]);((bh<0||bh>=be.$length)?($throwRuntimeError("index out of range"),undefined):be.$array[be.$offset+bh]=GH(bi));bg++;}bj=$makeSlice(KP,ay.$length);bk=ay;bl=0;while(true){if(!(bl<bk.$length)){break;}bm=bl;bn=((bl<0||bl>=bk.$length)?($throwRuntimeError("index out of range"),undefined):bk.$array[bk.$offset+bl]);((bm<0||bm>=bj.$length)?($throwRuntimeError("index out of range"),undefined):bj.$array[bj.$offset+bm]=GH(bn));bl++;}$s=-1;return GI($funcType($externalize(be,KP),$externalize(bj,KP),$externalize(az,$Bool)));}return;}var $f={$blk:HF,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,$s};return $f;};$pkg.FuncOf=HF;CN.ptr.prototype.ptrTo=function(){var ax;ax=this;return GI($ptrType(GH(ax)));};CN.prototype.ptrTo=function(){return this.$val.ptrTo();};HH=function(ax){var ax;return GI($sliceType(GH(ax)));};$pkg.SliceOf=HH;HJ=function(ax){var{ax,ay,az,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=GZ(ax,GH(ax).zero(),0);$s=1;case 1:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}az=ay;$s=2;case 2:return az;}return;}var $f={$blk:HJ,$c:true,$r,ax,ay,az,$s};return $f;};$pkg.Zero=HJ;HK=function(ax){var ax,ay;ay=ax.Kind();if(ay===(25)){return(new(GH(ax).ptr)());}else if(ay===(17)){return(GH(ax).zero());}else{return($newDataPointer(GH(ax).zero(),GH(ax.ptrTo())));}};HL=function(ax,ay,az){var{ax,ay,az,ba,bb,bc,bd,$s,$r,$c}=$restore(this,{ax,ay,az});$s=$s||0;s:while(true){switch($s){case 0:ba=az.common();$s=1;case 1:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=ba;bc=HK(bb);bd=bb.Kind();if(bd===(3)){(bc).$set(((ay.$low<<24>>24)));}else if(bd===(4)){(bc).$set(((ay.$low<<16>>16)));}else if((bd===(2))||(bd===(5))){(bc).$set(((ay.$low>>0)));}else if(bd===(6)){(bc).$set((new $Int64(ay.$high,ay.$low)));}else if(bd===(8)){(bc).$set(((ay.$low<<24>>>24)));}else if(bd===(9)){(bc).$set(((ay.$low<<16>>>16)));}else if((bd===(7))||(bd===(10))||(bd===(12))){(bc).$set(((ay.$low>>>0)));}else if(bd===(11)){(bc).$set((ay));}$s=-1;return new Q.ptr(bb,bc,(((ax|128)>>>0)|((bb.Kind()>>>0)))>>>0);}return;}var $f={$blk:HL,$c:true,$r,ax,ay,az,ba,bb,bc,bd,$s};return $f;};HN=function(ax,ay,az){var ax,ay,az;ay.$set(az.$get());};HR=function(ax,ay){var ax,ay,az,ba;az=ay;if(!(az.$get===undefined)){az=az.$get();}ba=GH(ax.Key()).keyFor(az);return[az,ba];};HS=function(ax,ay,az){var ax,ay,az,ba,bb,bc;if(!!!(ay)){return 0;}ba=HR(ax,az);bb=ba[1];bc=ay.get(bb);if(bc===undefined){return 0;}return($newDataPointer(bc.v,GH(DP(ax.Elem()))));};HT=function(ax,ay,az,ba){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,$s,$r,$c}=$restore(this,{ax,ay,az,ba});$s=$s||0;s:while(true){switch($s){case 0:bb=HR(ax,az);bc=bb[0];bd=bb[1];be=ba.$get();bf=ax.Elem();bg=bf.Kind();$s=3;case 3:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}if(bg===25){$s=1;continue;}$s=2;continue;case 1:bh=GH(bf).zero();GY(bh,be,bf);be=bh;case 2:bi=new($global.Object)();bi.k=bc;bi.v=be;ay.set(bd,bi);$s=-1;return;}return;}var $f={$blk:HT,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,$s};return $f;};HU=function(ax,ay,az){var ax,ay,az,ba,bb;ba=HR(ax,az);bb=ba[1];if(!!!(ay)){return;}ay.delete(bb);};HV=function(ax,ay,az){var ax,ay,az,ba,bb;ba=0;ba=HS(ax,ay,((bb||(bb=new KS(function(){return az;},function($v){az=$v;})))));return ba;};HW=function(ax,ay,az,ba){var{ax,ay,az,ba,$s,$r,$c}=$restore(this,{ax,ay,az,ba});$s=$s||0;s:while(true){switch($s){case 0:az=[az];$r=HT(ax,ay,((az.$ptr||(az.$ptr=new KS(function(){return this.$target[0];},function($v){this.$target[0]=$v;},az)))),ba);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:HW,$c:true,$r,ax,ay,az,ba,$s};return $f;};HX=function(ax,ay,az){var ax,ay,az,ba;HU(ax,ay,((ba||(ba=new KS(function(){return az;},function($v){az=$v;})))));};HY.ptr.prototype.skipUntilValidKey=function(){var ax,ay,az;ax=this;while(true){if(!(ax.i<$parseInt(ax.keys.length))){break;}ay=ax.keys[ax.i];az=ax.m.get(ay);if(!(az===undefined)){break;}ax.i=ax.i+(1)>>0;}};HY.prototype.skipUntilValidKey=function(){return this.$val.skipUntilValidKey();};HZ=function(ax,ay,az){var ax,ay,az,ba,bb,bc;ba=ay;bb=new($global.Array)();if(!(ba.keys===undefined)){bc=ba.keys();if(!(ba.keys===undefined)){bb=$global.Array.from(bc);}}HY.copy(az,new HY.ptr(ax,ba,bb,0,null));};IA=function(ax){var{ax,ay,az,ba,bb,bc,bd,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=null;if(!(ax.last===null)){ay=ax.last;}else{ax.skipUntilValidKey();if(ax.i===$parseInt(ax.keys.length)){$s=-1;return 0;}az=ax.keys[ax.i];ay=ax.m.get(az);ax.last=ay;}ba=ax.t.Key();$s=1;case 1:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=DP(ba);$s=2;case 2:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=GH(bb);$s=3;case 3:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}bd=($newDataPointer(ay.k,bc));$s=4;case 4:return bd;}return;}var $f={$blk:IA,$c:true,$r,ax,ay,az,ba,bb,bc,bd,$s};return $f;};IB=function(ax){var{ax,ay,az,ba,bb,bc,bd,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=null;if(!(ax.last===null)){ay=ax.last;}else{ax.skipUntilValidKey();if(ax.i===$parseInt(ax.keys.length)){$s=-1;return 0;}az=ax.keys[ax.i];ay=ax.m.get(az);ax.last=ay;}ba=ax.t.Elem();$s=1;case 1:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=DP(ba);$s=2;case 2:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=GH(bb);$s=3;case 3:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}bd=($newDataPointer(ay.v,bc));$s=4;case 4:return bd;}return;}var $f={$blk:IB,$c:true,$r,ax,ay,az,ba,bb,bc,bd,$s};return $f;};IC=function(ax){var ax;ax.last=null;ax.i=ax.i+(1)>>0;};ID=function(ax){var ax;return $parseInt(ax.size)>>0;};IE=function(ax,ay){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:az=$clone(ax,Q).object();if(az===GH(ax.typ).nil){$s=1;continue;}$s=2;continue;case 1:ba=GZ(ay,GH(ay).nil,ax.flag);$s=3;case 3:if($c){$c=false;ba=ba.$blk();}if(ba&&ba.$blk!==undefined){break s;}bb=ba;$s=4;case 4:return bb;case 2:bc=null;bd=ay.Kind();$s=6;case 6:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}be=bd;bf=be;if(bf===(23)){$s=7;continue;}if(bf===(22)){$s=8;continue;}if(bf===(25)){$s=9;continue;}if((bf===(17))||(bf===(1))||(bf===(18))||(bf===(19))||(bf===(20))||(bf===(21))||(bf===(24))||(bf===(26))){$s=10;continue;}$s=11;continue;case 7:bg=new(GH(ay))(az.$array);bg.$offset=az.$offset;bg.$length=az.$length;bg.$capacity=az.$capacity;bc=$newDataPointer(bg,GH(DP(ay)));$s=12;continue;case 8:bh=ay.Elem();$s=14;case 14:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bi=bh.Kind();$s=15;case 15:if($c){$c=false;bi=bi.$blk();}if(bi&&bi.$blk!==undefined){break s;}bj=bi;if(bj===(25)){$s=16;continue;}if(bj===(17)){$s=17;continue;}$s=18;continue;case 16:bk=ay.Elem();$s=22;case 22:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}if($interfaceIsEqual(bk,ax.typ.Elem())){$s=20;continue;}$s=21;continue;case 20:bc=az;$s=13;continue;case 21:bc=new(GH(ay))();bl=bc;bm=az;bn=ay.Elem();$s=23;case 23:if($c){$c=false;bn=bn.$blk();}if(bn&&bn.$blk!==undefined){break s;}bo=bn;$r=GY(bl,bm,bo);$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=19;continue;case 17:bc=az;$s=19;continue;case 18:bc=new(GH(ay))(az.$get,az.$set);case 19:case 13:$s=12;continue;case 9:bc=new(GH(ay).ptr)();GY(bc,az,ay);$s=12;continue;case 10:bc=ax.ptr;$s=12;continue;case 11:$panic(new U.ptr("reflect.Convert",be));case 12:case 5:bp=ay.common();$s=25;case 25:if($c){$c=false;bp=bp.$blk();}if(bp&&bp.$blk!==undefined){break s;}bq=ay.Kind();$s=26;case 26:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}br=new Q.ptr(bp,(bc),(((new R(ax.flag).ro()|((ax.flag&128)>>>0))>>>0)|((bq>>>0)))>>>0);$s=27;case 27:return br;}return;}var $f={$blk:IE,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,$s};return $f;};IF=function(ax,ay){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:az=$clone(ax,Q).object();ba=$parseInt(az.$length)>>0;bb=ay.Elem();$s=1;case 1:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=bb.Len();$s=2;case 2:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}bd=bc;if(bd>ba){$panic(new $String("reflect: cannot convert slice with length "+D.Itoa(ba)+" to pointer to array with length "+D.Itoa(bd)));}be=$sliceToGoArray(az,GH(ay));bf=ay.common();$s=3;case 3:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bg=new Q.ptr(bf,(be),(((ax.flag&~415)>>>0)|22)>>>0);$s=4;case 4:return bg;}return;}var $f={$blk:IF,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,$s};return $f;};IH=function(ax,ay,az){var ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj;ba=JC.nil;bb=KT.nil;bc=0;bd="";if(ay.typ.Kind()===20){be=(ay.typ.kindType);if(az<0||az>=be.methods.$length){$panic(new $String("reflect: internal error: invalid method index"));}bg=(bf=be.methods,((az<0||az>=bf.$length)?($throwRuntimeError("index out of range"),undefined):bf.$array[bf.$offset+az]));if(!$clone(be.rtype.nameOff(bg.name),GM).isExported()){$panic(new $String("reflect: "+ax+" of unexported method"));}bb=(be.rtype.typeOff(bg.typ).kindType);bd=$clone(be.rtype.nameOff(bg.name),GM).name();}else{bh=ay.typ.exportedMethods();if(((az>>>0))>=((bh.$length>>>0))){$panic(new $String("reflect: internal error: invalid method index"));}bi=$clone(((az<0||az>=bh.$length)?($throwRuntimeError("index out of range"),undefined):bh.$array[bh.$offset+az]),CO);if(!$clone(ay.typ.nameOff(bi.name),GM).isExported()){$panic(new $String("reflect: "+ax+" of unexported method"));}bb=(ay.typ.typeOff(bi.mtyp).kindType);bd=$internalize($methodSet(GH(ay.typ))[az].prop,$String);}bj=$clone(ay,Q).object();if(GX(ay.typ)){bj=new(GH(ay.typ))(bj);}bc=(bj[$externalize(bd,$String)]);return[ba,bb,bc];};II=function(ax,ay){var{ax,ay,az,ba,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:if(ax.flag===0){$panic(new U.ptr("reflect.Value.Interface",0));}if(ay&&!((((ax.flag&96)>>>0)===0))){$panic(new $String("reflect.Value.Interface: cannot return value obtained from unexported field or method"));}if(!((((ax.flag&512)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:az=IK("Interface",$clone(ax,Q));$s=3;case 3:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ax=az;case 2:if(GX(ax.typ)){if(!((((ax.flag&128)>>>0)===0))&&($clone(ax,Q).Kind()===25)){ba=GH(ax.typ).zero();GY(ba,$clone(ax,Q).object(),ax.typ);$s=-1;return((new(GH(ax.typ))(ba)));}$s=-1;return((new(GH(ax.typ))($clone(ax,Q).object())));}$s=-1;return(($clone(ax,Q).object()));}return;}var $f={$blk:II,$c:true,$r,ax,ay,az,ba,$s};return $f;};IJ=function(ax,ay,az){var ax,ay,az;az.$set(ay);};IK=function(ax,ay){var{ax,ay,az,ba,bb,bc,bd,be,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:az=[az];ba=[ba];if(((ay.flag&512)>>>0)===0){$panic(new $String("reflect: internal error: invalid use of makePartialFunc"));}bb=IH(ax,$clone(ay,Q),((ay.flag>>0))>>10>>0);az[0]=bb[2];ba[0]=$clone(ay,Q).object();if(GX(ay.typ)){ba[0]=new(GH(ay.typ))(ba[0]);}bc=N.MakeFunc((function(az,ba){return function(bc,bd){var bc,bd;return new $jsObjectPtr(az[0].apply(ba[0],$externalize(bd,KP)));};})(az,ba));bd=$clone(ay,Q).Type().common();$s=1;case 1:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}be=new Q.ptr(bd,(bc),(new R(ay.flag).ro()|19)>>>0);$s=2;case 2:return be;}return;}var $f={$blk:IK,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,$s};return $f;};CN.ptr.prototype.pointers=function(){var ax,ay;ax=this;ay=ax.Kind();if((ay===(22))||(ay===(21))||(ay===(18))||(ay===(19))||(ay===(25))||(ay===(17))){return true;}else{return false;}};CN.prototype.pointers=function(){return this.$val.pointers();};CN.ptr.prototype.Comparable=function(){var{ax,ay,az,ba,bb,bc,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:ax=this;ay=ax.Kind();if((ay===(19))||(ay===(23))||(ay===(21))){$s=2;continue;}if(ay===(17)){$s=3;continue;}if(ay===(25)){$s=4;continue;}$s=5;continue;case 2:$s=-1;return false;case 3:az=ax.Elem().Comparable();$s=6;case 6:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ba=az;$s=7;case 7:return ba;case 4:bb=0;case 8:if(!(bb<ax.NumField())){$s=9;continue;}bc=ax.Field(bb).Type.Comparable();$s=12;case 12:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}if(!bc){$s=10;continue;}$s=11;continue;case 10:$s=-1;return false;case 11:bb=bb+(1)>>0;$s=8;continue;case 9:case 5:case 1:$s=-1;return true;}return;}var $f={$blk:CN.ptr.prototype.Comparable,$c:true,$r,ax,ay,az,ba,bb,bc,$s};return $f;};CN.prototype.Comparable=function(){return this.$val.Comparable();};CN.ptr.prototype.Method=function(ax){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=[ay];az=new DA.ptr("","",$ifaceNil,new Q.ptr(JC.nil,0,0),0);ba=this;if(ba.Kind()===20){bb=(ba.kindType);DA.copy(az,bb.Method(ax));$s=-1;return az;}bc=ba.exportedMethods();if(ax<0||ax>=bc.$length){$panic(new $String("reflect: Method index out of range"));}bd=$clone(((ax<0||ax>=bc.$length)?($throwRuntimeError("index out of range"),undefined):bc.$array[bc.$offset+ax]),CO);be=$clone(ba.nameOff(bd.name),GM);az.Name=$clone(be,GM).name();bf=19;bg=ba.typeOff(bd.mtyp);bh=(bg.kindType);bi=$makeSlice(KU,0,(1+bh.in$().$length>>0));bi=$append(bi,ba);bj=bh.in$();bk=0;while(true){if(!(bk<bj.$length)){break;}bl=((bk<0||bk>=bj.$length)?($throwRuntimeError("index out of range"),undefined):bj.$array[bj.$offset+bk]);bi=$append(bi,bl);bk++;}bm=$makeSlice(KU,0,bh.out().$length);bn=bh.out();bo=0;while(true){if(!(bo<bn.$length)){break;}bp=((bo<0||bo>=bn.$length)?($throwRuntimeError("index out of range"),undefined):bn.$array[bn.$offset+bo]);bm=$append(bm,bp);bo++;}bq=HF(bi,bm,bh.rtype.IsVariadic());$s=1;case 1:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}br=bq;az.Type=br;ay[0]=$internalize($methodSet(ba.jsType)[ax].prop,$String);bs=N.MakeFunc((function(ay){return function(bs,bt){var bs,bt,bu;bu=(0>=bt.$length?($throwRuntimeError("index out of range"),undefined):bt.$array[bt.$offset+0]);return new $jsObjectPtr(bu[$externalize(ay[0],$String)].apply(bu,$externalize($subslice(bt,1),KP)));};})(ay));az.Func=new Q.ptr($assertType(br,JC),(bs),bf);az.Index=ax;DA.copy(az,az);$s=-1;return az;}return;}var $f={$blk:CN.ptr.prototype.Method,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,$s};return $f;};CN.prototype.Method=function(ax){return this.$val.Method(ax);};Q.ptr.prototype.object=function(){var ax,ay,az,ba;ax=this;if((ax.typ.Kind()===17)||(ax.typ.Kind()===25)){return ax.ptr;}if(!((((ax.flag&128)>>>0)===0))){ay=ax.ptr.$get();if(!(ay===$ifaceNil)&&!(ay.constructor===GH(ax.typ))){switch(0){default:az=ax.typ.Kind();if((az===(11))||(az===(6))){ay=new(GH(ax.typ))(ay.$high,ay.$low);}else if((az===(15))||(az===(16))){ay=new(GH(ax.typ))(ay.$real,ay.$imag);}else if(az===(23)){if(ay===ay.constructor.nil){ay=GH(ax.typ).nil;break;}ba=new(GH(ax.typ))(ay.$array);ba.$offset=ay.$offset;ba.$length=ay.$length;ba.$capacity=ay.$capacity;ay=ba;}}}return ay;}return ax.ptr;};Q.prototype.object=function(){return this.$val.object();};Q.ptr.prototype.assignTo=function(ax,ay,az){var{ax,ay,az,ba,bb,bc,bd,be,bf,$s,$r,$c}=$restore(this,{ax,ay,az});$s=$s||0;s:while(true){switch($s){case 0:ba=this;if(!((((ba.flag&512)>>>0)===0))){$s=1;continue;}$s=2;continue;case 1:bb=IK(ax,$clone(ba,Q));$s=3;case 3:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}ba=bb;case 2:bc=DU(ay,ba.typ);$s=8;case 8:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}if(bc){$s=5;continue;}if(DS(ay,ba.typ)){$s=6;continue;}$s=7;continue;case 5:bd=(((ba.flag&384)>>>0)|new R(ba.flag).ro())>>>0;bd=(bd|(((ay.Kind()>>>0))))>>>0;$s=-1;return new Q.ptr(ay,ba.ptr,bd);case 6:if(az===0){az=HK(ay);}be=II($clone(ba,Q),false);$s=9;case 9:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bf=be;if(ay.NumMethod()===0){(az).$set(bf);}else{IJ(ay,bf,az);}$s=-1;return new Q.ptr(ay,az,148);case 7:case 4:$panic(new $String(ax+": value of type "+ba.typ.String()+" is not assignable to type "+ay.String()));$s=-1;return new Q.ptr(JC.nil,0,0);}return;}var $f={$blk:Q.ptr.prototype.assignTo,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,$s};return $f;};Q.prototype.assignTo=function(ax,ay,az){return this.$val.assignTo(ax,ay,az);};Q.ptr.prototype.call=function(ax,ay){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,da,db,dc,dd,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:az=this;ba=KT.nil;bb=0;bc=null;if(!((((az.flag&512)>>>0)===0))){bd=IH(ax,$clone(az,Q),((az.flag>>0))>>10>>0);ba=bd[1];bb=bd[2];bc=$clone(az,Q).object();if(GX(az.typ)){bc=new(GH(az.typ))(bc);}}else{ba=(az.typ.kindType);bb=($clone(az,Q).object());bc=undefined;}if(bb===0){$panic(new $String("reflect.Value.Call: call of nil function"));}be=ax==="CallSlice";bf=ba.rtype.NumIn();if(be){if(!ba.rtype.IsVariadic()){$panic(new $String("reflect: CallSlice of non-variadic function"));}if(ay.$length<bf){$panic(new $String("reflect: CallSlice with too few input arguments"));}if(ay.$length>bf){$panic(new $String("reflect: CallSlice with too many input arguments"));}}else{if(ba.rtype.IsVariadic()){bf=bf-(1)>>0;}if(ay.$length<bf){$panic(new $String("reflect: Call with too few input arguments"));}if(!ba.rtype.IsVariadic()&&ay.$length>bf){$panic(new $String("reflect: Call with too many input arguments"));}}bg=ay;bh=0;while(true){if(!(bh<bg.$length)){break;}bi=((bh<0||bh>=bg.$length)?($throwRuntimeError("index out of range"),undefined):bg.$array[bg.$offset+bh]);if($clone(bi,Q).Kind()===0){$panic(new $String("reflect: "+ax+" using zero Value argument"));}bh++;}bj=0;case 1:if(!(bj<bf)){$s=2;continue;}bk=$clone(((bj<0||bj>=ay.$length)?($throwRuntimeError("index out of range"),undefined):ay.$array[ay.$offset+bj]),Q).Type();bl=ba.rtype.In(bj);bm=bk;bn=bl;bo=bm.AssignableTo(bn);$s=5;case 5:if($c){$c=false;bo=bo.$blk();}if(bo&&bo.$blk!==undefined){break s;}if(!bo){$s=3;continue;}$s=4;continue;case 3:bp=bm.String();$s=6;case 6:if($c){$c=false;bp=bp.$blk();}if(bp&&bp.$blk!==undefined){break s;}bq=bn.String();$s=7;case 7:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}$panic(new $String("reflect: "+ax+" using "+bp+" as type "+bq));case 4:bj=bj+(1)>>0;$s=1;continue;case 2:if(!be&&ba.rtype.IsVariadic()){$s=8;continue;}$s=9;continue;case 8:br=ay.$length-bf>>0;bs=HA(ba.rtype.In(bf),br,br);$s=10;case 10:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}bt=bs;bu=ba.rtype.In(bf).Elem();$s=11;case 11:if($c){$c=false;bu=bu.$blk();}if(bu&&bu.$blk!==undefined){break s;}bv=bu;bw=0;case 12:if(!(bw<br)){$s=13;continue;}by=(bx=bf+bw>>0,((bx<0||bx>=ay.$length)?($throwRuntimeError("index out of range"),undefined):ay.$array[ay.$offset+bx]));bz=$clone(by,Q).Type();ca=bz.AssignableTo(bv);$s=16;case 16:if($c){$c=false;ca=ca.$blk();}if(ca&&ca.$blk!==undefined){break s;}if(!ca){$s=14;continue;}$s=15;continue;case 14:cb=bz.String();$s=17;case 17:if($c){$c=false;cb=cb.$blk();}if(cb&&cb.$blk!==undefined){break s;}cc=bv.String();$s=18;case 18:if($c){$c=false;cc=cc.$blk();}if(cc&&cc.$blk!==undefined){break s;}$panic(new $String("reflect: cannot use "+cb+" as type "+cc+" in "+ax));case 15:cd=$clone(bt,Q).Index(bw);$s=19;case 19:if($c){$c=false;cd=cd.$blk();}if(cd&&cd.$blk!==undefined){break s;}$r=$clone(cd,Q).Set($clone(by,Q));$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bw=bw+(1)>>0;$s=12;continue;case 13:ce=ay;ay=$makeSlice(JM,(bf+1>>0));$copySlice($subslice(ay,0,bf),ce);((bf<0||bf>=ay.$length)?($throwRuntimeError("index out of range"),undefined):ay.$array[ay.$offset+bf]=bt);case 9:cf=ay.$length;if(!((cf===ba.rtype.NumIn()))){$panic(new $String("reflect.Value.Call: wrong argument count"));}cg=ba.rtype.NumOut();ch=new($global.Array)(ba.rtype.NumIn());ci=ay;cj=0;case 21:if(!(cj<ci.$length)){$s=22;continue;}ck=cj;cl=((cj<0||cj>=ci.$length)?($throwRuntimeError("index out of range"),undefined):ci.$array[ci.$offset+cj]);cm=ba.rtype.In(ck);cn=ba.rtype.In(ck).common();$s=23;case 23:if($c){$c=false;cn=cn.$blk();}if(cn&&cn.$blk!==undefined){break s;}co=cn;cp=0;cq=$clone(cl,Q).assignTo("reflect.Value.Call",co,cp);$s=24;case 24:if($c){$c=false;cq=cq.$blk();}if(cq&&cq.$blk!==undefined){break s;}cr=$clone(cq,Q).object();$s=25;case 25:if($c){$c=false;cr=cr.$blk();}if(cr&&cr.$blk!==undefined){break s;}cs=cr;ct=IO(cm,cs);$s=26;case 26:if($c){$c=false;ct=ct.$blk();}if(ct&&ct.$blk!==undefined){break s;}ch[ck]=ct;cj++;$s=21;continue;case 22:cu=IL(new JF([new $jsObjectPtr(bb),new $jsObjectPtr(bc),new $jsObjectPtr(ch)]));$s=27;case 27:if($c){$c=false;cu=cu.$blk();}if(cu&&cu.$blk!==undefined){break s;}cv=cu;cw=cg;if(cw===(0)){$s=29;continue;}if(cw===(1)){$s=30;continue;}$s=31;continue;case 29:$s=-1;return JM.nil;case 30:cx=GZ(ba.rtype.Out(0),IN(ba.rtype.Out(0),cv),0);$s=33;case 33:if($c){$c=false;cx=cx.$blk();}if(cx&&cx.$blk!==undefined){break s;}cy=new JM([$clone(cx,Q)]);$s=34;case 34:return cy;case 31:cz=$makeSlice(JM,cg);da=cz;db=0;case 35:if(!(db<da.$length)){$s=36;continue;}dc=db;dd=GZ(ba.rtype.Out(dc),IN(ba.rtype.Out(dc),cv[dc]),0);$s=37;case 37:if($c){$c=false;dd=dd.$blk();}if(dd&&dd.$blk!==undefined){break s;}((dc<0||dc>=cz.$length)?($throwRuntimeError("index out of range"),undefined):cz.$array[cz.$offset+dc]=dd);db++;$s=35;continue;case 36:$s=-1;return cz;case 32:case 28:$s=-1;return JM.nil;}return;}var $f={$blk:Q.ptr.prototype.call,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,da,db,dc,dd,$s};return $f;};Q.prototype.call=function(ax,ay){return this.$val.call(ax,ay);};Q.ptr.prototype.Cap=function(){var ax,ay,az;ax=this;ay=new R(ax.flag).kind();az=ay;if(az===(17)){return ax.typ.Len();}else if((az===(18))||(az===(23))){return $parseInt($clone(ax,Q).object().$capacity)>>0;}$panic(new U.ptr("reflect.Value.Cap",ay));};Q.prototype.Cap=function(){return this.$val.Cap();};IN=function(ax,ay){var ax,ay;if($interfaceIsEqual(ax,IM)){return new(GH(IM))(ay);}return ay;};IO=function(ax,ay){var ax,ay;if($interfaceIsEqual(ax,IM)){return ay.object;}return ay;};Q.ptr.prototype.Elem=function(){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:ax=this;ay=new R(ax.flag).kind();az=ay;if(az===(20)){$s=2;continue;}if(az===(22)){$s=3;continue;}$s=4;continue;case 2:ba=$clone(ax,Q).object();if(ba===$ifaceNil){$s=-1;return new Q.ptr(JC.nil,0,0);}bb=GI(ba.constructor);bc=GZ(bb,ba.$val,new R(ax.flag).ro());$s=6;case 6:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}bd=bc;$s=7;case 7:return bd;case 3:if($clone(ax,Q).IsNil()){$s=-1;return new Q.ptr(JC.nil,0,0);}be=$clone(ax,Q).object();bf=(ax.typ.kindType);bg=(((((ax.flag&96)>>>0)|128)>>>0)|256)>>>0;bg=(bg|(((bf.elem.Kind()>>>0))))>>>0;$s=-1;return new Q.ptr(bf.elem,(IN(bf.elem,be)),bg);case 4:$panic(new U.ptr("reflect.Value.Elem",ay));case 5:case 1:$s=-1;return new Q.ptr(JC.nil,0,0);}return;}var $f={$blk:Q.ptr.prototype.Elem,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,$s};return $f;};Q.prototype.Elem=function(){return this.$val.Elem();};Q.ptr.prototype.Field=function(ax){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=[ay];az=[az];ba=[ba];bb=[bb];bc=this;if(!((new R(bc.flag).kind()===25))){$panic(new U.ptr("reflect.Value.Field",new R(bc.flag).kind()));}bd=(bc.typ.kindType);if(((ax>>>0))>=((bd.fields.$length>>>0))){$panic(new $String("reflect: Field index out of range"));}az[0]=$internalize(GH(bc.typ).fields[ax].prop,$String);bf=(be=bd.fields,((ax<0||ax>=be.$length)?($throwRuntimeError("index out of range"),undefined):be.$array[be.$offset+ax]));bb[0]=bf.typ;bg=(((bc.flag&416)>>>0)|((bb[0].Kind()>>>0)))>>>0;if(!$clone(bf.name,GM).isExported()){if(bf.embedded()){bg=(bg|(64))>>>0;}else{bg=(bg|(32))>>>0;}}bi=$clone((bh=bd.fields,((ax<0||ax>=bh.$length)?($throwRuntimeError("index out of range"),undefined):bh.$array[bh.$offset+ax])).name,GM).tag();if(!(bi==="")&&!((ax===0))){$s=1;continue;}$s=2;continue;case 1:ay[0]=IP(bi);if(!(ay[0]==="")){$s=3;continue;}$s=4;continue;case 3:case 5:bj=[bj];bk=$clone(bc,Q).Field(0);$s=7;case 7:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bc=bk;if(bc.typ===IM){$s=8;continue;}$s=9;continue;case 8:bj[0]=$clone(bc,Q).object().object;$s=-1;return new Q.ptr(bb[0],(new(GH(DP(bb[0])))((function(ay,az,ba,bb,bj){return function(){return $internalize(bj[0][$externalize(ay[0],$String)],GH(bb[0]));};})(ay,az,ba,bb,bj),(function(ay,az,ba,bb,bj){return function(bl){var bl;bj[0][$externalize(ay[0],$String)]=$externalize(bl,GH(bb[0]));};})(ay,az,ba,bb,bj))),bg);case 9:if(bc.typ.Kind()===22){$s=10;continue;}$s=11;continue;case 10:bl=$clone(bc,Q).Elem();$s=12;case 12:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}bc=bl;case 11:$s=5;continue;case 6:case 4:case 2:ba[0]=bc.ptr;if(!((((bg&128)>>>0)===0))&&!((bb[0].Kind()===17))&&!((bb[0].Kind()===25))){$s=13;continue;}$s=14;continue;case 13:$s=-1;return new Q.ptr(bb[0],(new(GH(DP(bb[0])))((function(ay,az,ba,bb){return function(){return IN(bb[0],ba[0][$externalize(az[0],$String)]);};})(ay,az,ba,bb),(function(ay,az,ba,bb){return function(bm){var bm;ba[0][$externalize(az[0],$String)]=IO(bb[0],bm);};})(ay,az,ba,bb))),bg);case 14:bm=GZ(bb[0],IN(bb[0],ba[0][$externalize(az[0],$String)]),bg);$s=15;case 15:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}bn=bm;$s=16;case 16:return bn;}return;}var $f={$blk:Q.ptr.prototype.Field,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,$s};return $f;};Q.prototype.Field=function(ax){return this.$val.Field(ax);};IP=function(ax){var ax,ay,az,ba,bb,bc;while(true){if(!(!(ax===""))){break;}ay=0;while(true){if(!(ay<ax.length&&(ax.charCodeAt(ay)===32))){break;}ay=ay+(1)>>0;}ax=$substring(ax,ay);if(ax===""){break;}ay=0;while(true){if(!(ay<ax.length&&!((ax.charCodeAt(ay)===32))&&!((ax.charCodeAt(ay)===58))&&!((ax.charCodeAt(ay)===34)))){break;}ay=ay+(1)>>0;}if((ay+1>>0)>=ax.length||!((ax.charCodeAt(ay)===58))||!((ax.charCodeAt((ay+1>>0))===34))){break;}az=($substring(ax,0,ay));ax=$substring(ax,(ay+1>>0));ay=1;while(true){if(!(ay<ax.length&&!((ax.charCodeAt(ay)===34)))){break;}if(ax.charCodeAt(ay)===92){ay=ay+(1)>>0;}ay=ay+(1)>>0;}if(ay>=ax.length){break;}ba=($substring(ax,0,(ay+1>>0)));ax=$substring(ax,(ay+1>>0));if(az==="js"){bb=H.Unquote(ba);bc=bb[0];return bc;}}return"";};Q.ptr.prototype.Index=function(ax){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ax=[ax];ay=[ay];az=[az];ba=[ba];bb=[bb];bc=[bc];bd=this;be=new R(bd.flag).kind();bf=be;if(bf===(17)){$s=2;continue;}if(bf===(23)){$s=3;continue;}if(bf===(24)){$s=4;continue;}$s=5;continue;case 2:bg=(bd.typ.kindType);if(ax[0]<0||ax[0]>((bg.len>>0))){$panic(new $String("reflect: array index out of range"));}bb[0]=bg.elem;bh=(((((bd.flag&384)>>>0)|new R(bd.flag).ro())>>>0)|((bb[0].Kind()>>>0)))>>>0;ay[0]=bd.ptr;if(!((((bh&128)>>>0)===0))&&!((bb[0].Kind()===17))&&!((bb[0].Kind()===25))){$s=7;continue;}$s=8;continue;case 7:$s=-1;return new Q.ptr(bb[0],(new(GH(DP(bb[0])))((function(ax,ay,az,ba,bb,bc){return function(){return IN(bb[0],ay[0][ax[0]]);};})(ax,ay,az,ba,bb,bc),(function(ax,ay,az,ba,bb,bc){return function(bi){var bi;ay[0][ax[0]]=IO(bb[0],bi);};})(ax,ay,az,ba,bb,bc))),bh);case 8:bi=GZ(bb[0],IN(bb[0],ay[0][ax[0]]),bh);$s=9;case 9:if($c){$c=false;bi=bi.$blk();}if(bi&&bi.$blk!==undefined){break s;}bj=bi;$s=10;case 10:return bj;case 3:bk=$clone(bd,Q).object();if(ax[0]<0||ax[0]>=($parseInt(bk.$length)>>0)){$panic(new $String("reflect: slice index out of range"));}bl=(bd.typ.kindType);bc[0]=bl.elem;bm=(((384|new R(bd.flag).ro())>>>0)|((bc[0].Kind()>>>0)))>>>0;ax[0]=ax[0]+(($parseInt(bk.$offset)>>0))>>0;az[0]=bk.$array;if(!((((bm&128)>>>0)===0))&&!((bc[0].Kind()===17))&&!((bc[0].Kind()===25))){$s=11;continue;}$s=12;continue;case 11:$s=-1;return new Q.ptr(bc[0],(new(GH(DP(bc[0])))((function(ax,ay,az,ba,bb,bc){return function(){return IN(bc[0],az[0][ax[0]]);};})(ax,ay,az,ba,bb,bc),(function(ax,ay,az,ba,bb,bc){return function(bn){var bn;az[0][ax[0]]=IO(bc[0],bn);};})(ax,ay,az,ba,bb,bc))),bm);case 12:bn=GZ(bc[0],IN(bc[0],az[0][ax[0]]),bm);$s=13;case 13:if($c){$c=false;bn=bn.$blk();}if(bn&&bn.$blk!==undefined){break s;}bo=bn;$s=14;case 14:return bo;case 4:bp=(bd.ptr).$get();if(ax[0]<0||ax[0]>=bp.length){$panic(new $String("reflect: string index out of range"));}bq=(((new R(bd.flag).ro()|8)>>>0)|128)>>>0;ba[0]=bp.charCodeAt(ax[0]);$s=-1;return new Q.ptr(AE,((ba.$ptr||(ba.$ptr=new KE(function(){return this.$target[0];},function($v){this.$target[0]=$v;},ba)))),bq);case 5:$panic(new U.ptr("reflect.Value.Index",be));case 6:case 1:$s=-1;return new Q.ptr(JC.nil,0,0);}return;}var $f={$blk:Q.ptr.prototype.Index,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,$s};return $f;};Q.prototype.Index=function(ax){return this.$val.Index(ax);};Q.ptr.prototype.InterfaceData=function(){var ax;ax=this;$panic(A.New("InterfaceData is not supported by GopherJS"));};Q.prototype.InterfaceData=function(){return this.$val.InterfaceData();};Q.ptr.prototype.IsNil=function(){var ax,ay,az;ax=this;ay=new R(ax.flag).kind();az=ay;if((az===(22))||(az===(23))){return $clone(ax,Q).object()===GH(ax.typ).nil;}else if(az===(18)){return $clone(ax,Q).object()===$chanNil;}else if(az===(19)){return $clone(ax,Q).object()===$throwNilPointerError;}else if(az===(21)){return $clone(ax,Q).object()===false;}else if(az===(20)){return $clone(ax,Q).object()===$ifaceNil;}else if(az===(26)){return $clone(ax,Q).object()===0;}else{$panic(new U.ptr("reflect.Value.IsNil",ay));}};Q.prototype.IsNil=function(){return this.$val.IsNil();};Q.ptr.prototype.Len=function(){var ax,ay,az;ax=this;ay=new R(ax.flag).kind();az=ay;if((az===(17))||(az===(24))){return $parseInt($clone(ax,Q).object().length);}else if(az===(23)){return $parseInt($clone(ax,Q).object().$length)>>0;}else if(az===(18)){return $parseInt($clone(ax,Q).object().$buffer.length)>>0;}else if(az===(21)){return $parseInt($clone(ax,Q).object().size)>>0;}else{$panic(new U.ptr("reflect.Value.Len",ay));}};Q.prototype.Len=function(){return this.$val.Len();};Q.ptr.prototype.Pointer=function(){var ax,ay,az;ax=this;ay=new R(ax.flag).kind();az=ay;if((az===(18))||(az===(21))||(az===(22))||(az===(26))){if($clone(ax,Q).IsNil()){return 0;}return $clone(ax,Q).object();}else if(az===(19)){if($clone(ax,Q).IsNil()){return 0;}return 1;}else if(az===(23)){if($clone(ax,Q).IsNil()){return 0;}return $clone(ax,Q).object().$array;}else{$panic(new U.ptr("reflect.Value.Pointer",ay));}};Q.prototype.Pointer=function(){return this.$val.Pointer();};Q.ptr.prototype.Set=function(ax){var{ax,ay,az,ba,bb,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=this;new R(ay.flag).mustBeAssignable();new R(ax.flag).mustBeExported();az=$clone(ax,Q).assignTo("reflect.Set",ay.typ,0);$s=1;case 1:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ax=az;if(!((((ay.flag&128)>>>0)===0))){$s=2;continue;}$s=3;continue;case 2:ba=ay.typ.Kind();if((ba===(17))||(ba===(25))){$s=5;continue;}if(ba===(20)){$s=6;continue;}$s=7;continue;case 5:GH(ay.typ).copy(ay.ptr,ax.ptr);$s=8;continue;case 6:bb=II($clone(ax,Q),false);$s=9;case 9:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}ay.ptr.$set(bb);$s=8;continue;case 7:ay.ptr.$set($clone(ax,Q).object());case 8:case 4:$s=-1;return;case 3:ay.ptr=ax.ptr;$s=-1;return;}return;}var $f={$blk:Q.ptr.prototype.Set,$c:true,$r,ax,ay,az,ba,bb,$s};return $f;};Q.prototype.Set=function(ax){return this.$val.Set(ax);};Q.ptr.prototype.SetBytes=function(ax){var{ax,ay,az,ba,bb,bc,bd,$s,$r,$c}=$restore(this,{ax});$s=$s||0;s:while(true){switch($s){case 0:ay=this;new R(ay.flag).mustBeAssignable();new R(ay.flag).mustBe(23);az=ay.typ.Elem().Kind();$s=3;case 3:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}if(!((az===8))){$s=1;continue;}$s=2;continue;case 1:$panic(new $String("reflect.Value.SetBytes of non-byte slice"));case 2:ba=ax;if(!(ay.typ.Name()==="")){bb=true;$s=6;continue s;}bc=ay.typ.Elem().Name();$s=7;case 7:if($c){$c=false;bc=bc.$blk();}if(bc&&bc.$blk!==undefined){break s;}bb=!(bc==="");case 6:if(bb){$s=4;continue;}$s=5;continue;case 4:bd=new(GH(ay.typ))(ba.$array);bd.$offset=ba.$offset;bd.$length=ba.$length;bd.$capacity=ba.$capacity;ba=bd;case 5:ay.ptr.$set(ba);$s=-1;return;}return;}var $f={$blk:Q.ptr.prototype.SetBytes,$c:true,$r,ax,ay,az,ba,bb,bc,bd,$s};return $f;};Q.prototype.SetBytes=function(ax){return this.$val.SetBytes(ax);};Q.ptr.prototype.SetCap=function(ax){var ax,ay,az,ba;ay=this;new R(ay.flag).mustBeAssignable();new R(ay.flag).mustBe(23);az=ay.ptr.$get();if(ax<($parseInt(az.$length)>>0)||ax>($parseInt(az.$capacity)>>0)){$panic(new $String("reflect: slice capacity out of range in SetCap"));}ba=new(GH(ay.typ))(az.$array);ba.$offset=az.$offset;ba.$length=az.$length;ba.$capacity=ax;ay.ptr.$set(ba);};Q.prototype.SetCap=function(ax){return this.$val.SetCap(ax);};Q.ptr.prototype.SetLen=function(ax){var ax,ay,az,ba;ay=this;new R(ay.flag).mustBeAssignable();new R(ay.flag).mustBe(23);az=ay.ptr.$get();if(ax<0||ax>($parseInt(az.$capacity)>>0)){$panic(new $String("reflect: slice length out of range in SetLen"));}ba=new(GH(ay.typ))(az.$array);ba.$offset=az.$offset;ba.$length=ax;ba.$capacity=az.$capacity;ay.ptr.$set(ba);};Q.prototype.SetLen=function(ax){return this.$val.SetLen(ax);};Q.ptr.prototype.Slice=function(ax,ay){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,$s,$r,$c}=$restore(this,{ax,ay});$s=$s||0;s:while(true){switch($s){case 0:az=this;ba=0;bb=$ifaceNil;bc=null;bd=new R(az.flag).kind();be=bd;if(be===(17)){$s=2;continue;}if(be===(23)){$s=3;continue;}if(be===(24)){$s=4;continue;}$s=5;continue;case 2:if(((az.flag&256)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}bf=(az.typ.kindType);ba=((bf.len>>0));bb=HH(bf.elem);bc=new(GH(bb))($clone(az,Q).object());$s=6;continue;case 3:bb=az.typ;bc=$clone(az,Q).object();ba=$parseInt(bc.$capacity)>>0;$s=6;continue;case 4:bg=(az.ptr).$get();if(ax<0||ay<ax||ay>bg.length){$panic(new $String("reflect.Value.Slice: string slice index out of bounds"));}bh=HC(new $String($substring(bg,ax,ay)));$s=7;case 7:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bi=bh;$s=8;case 8:return bi;case 5:$panic(new U.ptr("reflect.Value.Slice",bd));case 6:case 1:if(ax<0||ay<ax||ay>ba){$panic(new $String("reflect.Value.Slice: slice index out of bounds"));}bj=GZ(bb,$subslice(bc,ax,ay),new R(az.flag).ro());$s=9;case 9:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}bk=bj;$s=10;case 10:return bk;}return;}var $f={$blk:Q.ptr.prototype.Slice,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,$s};return $f;};Q.prototype.Slice=function(ax,ay){return this.$val.Slice(ax,ay);};Q.ptr.prototype.Slice3=function(ax,ay,az){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,$s,$r,$c}=$restore(this,{ax,ay,az});$s=$s||0;s:while(true){switch($s){case 0:ba=this;bb=0;bc=$ifaceNil;bd=null;be=new R(ba.flag).kind();bf=be;if(bf===(17)){if(((ba.flag&256)>>>0)===0){$panic(new $String("reflect.Value.Slice: slice of unaddressable array"));}bg=(ba.typ.kindType);bb=((bg.len>>0));bc=HH(bg.elem);bd=new(GH(bc))($clone(ba,Q).object());}else if(bf===(23)){bc=ba.typ;bd=$clone(ba,Q).object();bb=$parseInt(bd.$capacity)>>0;}else{$panic(new U.ptr("reflect.Value.Slice3",be));}if(ax<0||ay<ax||az<ay||az>bb){$panic(new $String("reflect.Value.Slice3: slice index out of bounds"));}bh=GZ(bc,$subslice(bd,ax,ay,az),new R(ba.flag).ro());$s=1;case 1:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bi=bh;$s=2;case 2:return bi;}return;}var $f={$blk:Q.ptr.prototype.Slice3,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,$s};return $f;};Q.prototype.Slice3=function(ax,ay,az){return this.$val.Slice3(ax,ay,az);};Q.ptr.prototype.Close=function(){var ax;ax=this;new R(ax.flag).mustBe(18);new R(ax.flag).mustBeExported();$close($clone(ax,Q).object());};Q.prototype.Close=function(){return this.$val.Close();};IR=function(ax,ay,az){var{ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,$s,$r,$c}=$restore(this,{ax,ay,az});$s=$s||0;s:while(true){switch($s){case 0:ba=false;bb=false;bc=new KV([new KP([ax])]);if(ay){bc=$append(bc,new KP([]));}bd=IQ(new JF([bc]));$s=1;case 1:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}be=bd;if(ay&&(($parseInt(be[0])>>0)===1)){bf=false;bg=false;ba=bf;bb=bg;$s=-1;return[ba,bb];}bh=be[1];az.$set(bh[0]);bi=true;bj=!!(bh[1]);ba=bi;bb=bj;$s=-1;return[ba,bb];}return;}var $f={$blk:IR,$c:true,$r,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,$s};return $f;};IS=function(ax,ay,az){var{ax,ay,az,ba,bb,bc,$s,$r,$c}=$restore(this,{ax,ay,az});$s=$s||0;s:while(true){switch($s){case 0:ba=new KV([new KP([ax,ay.$get()])]);if(az){ba=$append(ba,new KP([]));}bb=IQ(new JF([ba]));$s=1;case 1:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=bb;if(az&&(($parseInt(bc[0])>>0)===1)){$s=-1;return false;}$s=-1;return true;}return;}var $f={$blk:IS,$c:true,$r,ax,ay,az,ba,bb,bc,$s};return $f;};IW=function(){var ax,ay,az,ba,bb;ax=G.Caller(3);ay=ax[0];az=G.FuncForPC(ay);if(az===JL.nil){return"unknown method";}ba=az.Name();bb=ba.length-1>>0;while(true){if(!(bb>0)){break;}if(ba.charCodeAt(bb)===46){break;}bb=bb-(1)>>0;}if(bb<0){return ba;}return"Value"+$substring(ba,bb);};IX=function(ax){var ax;return true;};Q.methods=[{prop:"pointer",name:"pointer",pkg:"reflect",typ:$funcType([],[$UnsafePointer],false)},{prop:"Addr",name:"Addr",pkg:"",typ:$funcType([],[Q],false)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Bytes",name:"Bytes",pkg:"",typ:$funcType([],[JW],false)},{prop:"runes",name:"runes",pkg:"reflect",typ:$funcType([],[JX],false)},{prop:"CanAddr",name:"CanAddr",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"CanSet",name:"CanSet",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Call",name:"Call",pkg:"",typ:$funcType([JM],[JM],false)},{prop:"CallSlice",name:"CallSlice",pkg:"",typ:$funcType([JM],[JM],false)},{prop:"CanComplex",name:"CanComplex",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Complex",name:"Complex",pkg:"",typ:$funcType([],[$Complex128],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([JJ],[Q],false)},{prop:"FieldByIndexErr",name:"FieldByIndexErr",pkg:"",typ:$funcType([JJ],[Q,$error],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[Q],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([LB],[Q],false)},{prop:"CanFloat",name:"CanFloat",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Float",name:"Float",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"CanInt",name:"CanInt",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Int",name:"Int",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"CanInterface",name:"CanInterface",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Interface",name:"Interface",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"IsValid",name:"IsValid",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsZero",name:"IsZero",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[CL],false)},{prop:"MapIndex",name:"MapIndex",pkg:"",typ:$funcType([Q],[Q],false)},{prop:"MapKeys",name:"MapKeys",pkg:"",typ:$funcType([],[JM],false)},{prop:"SetIterKey",name:"SetIterKey",pkg:"",typ:$funcType([LC],[],false)},{prop:"SetIterValue",name:"SetIterValue",pkg:"",typ:$funcType([LC],[],false)},{prop:"MapRange",name:"MapRange",pkg:"",typ:$funcType([],[LC],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[Q],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[Q],false)},{prop:"NumField",name:"NumField",pkg:"",typ:$funcType([],[$Int],false)},{prop:"OverflowComplex",name:"OverflowComplex",pkg:"",typ:$funcType([$Complex128],[$Bool],false)},{prop:"OverflowFloat",name:"OverflowFloat",pkg:"",typ:$funcType([$Float64],[$Bool],false)},{prop:"OverflowInt",name:"OverflowInt",pkg:"",typ:$funcType([$Int64],[$Bool],false)},{prop:"OverflowUint",name:"OverflowUint",pkg:"",typ:$funcType([$Uint64],[$Bool],false)},{prop:"Recv",name:"Recv",pkg:"",typ:$funcType([],[Q,$Bool],false)},{prop:"recv",name:"recv",pkg:"reflect",typ:$funcType([$Bool],[Q,$Bool],false)},{prop:"Send",name:"Send",pkg:"",typ:$funcType([Q],[],false)},{prop:"send",name:"send",pkg:"reflect",typ:$funcType([Q,$Bool],[$Bool],false)},{prop:"SetBool",name:"SetBool",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"setRunes",name:"setRunes",pkg:"reflect",typ:$funcType([JX],[],false)},{prop:"SetComplex",name:"SetComplex",pkg:"",typ:$funcType([$Complex128],[],false)},{prop:"SetFloat",name:"SetFloat",pkg:"",typ:$funcType([$Float64],[],false)},{prop:"SetInt",name:"SetInt",pkg:"",typ:$funcType([$Int64],[],false)},{prop:"SetMapIndex",name:"SetMapIndex",pkg:"",typ:$funcType([Q,Q],[],false)},{prop:"SetUint",name:"SetUint",pkg:"",typ:$funcType([$Uint64],[],false)},{prop:"SetPointer",name:"SetPointer",pkg:"",typ:$funcType([$UnsafePointer],[],false)},{prop:"SetString",name:"SetString",pkg:"",typ:$funcType([$String],[],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"TryRecv",name:"TryRecv",pkg:"",typ:$funcType([],[Q,$Bool],false)},{prop:"TrySend",name:"TrySend",pkg:"",typ:$funcType([Q],[$Bool],false)},{prop:"Type",name:"Type",pkg:"",typ:$funcType([],[CK],false)},{prop:"CanUint",name:"CanUint",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Uint",name:"Uint",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"UnsafeAddr",name:"UnsafeAddr",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"UnsafePointer",name:"UnsafePointer",pkg:"",typ:$funcType([],[$UnsafePointer],false)},{prop:"Convert",name:"Convert",pkg:"",typ:$funcType([CK],[Q],false)},{prop:"CanConvert",name:"CanConvert",pkg:"",typ:$funcType([CK],[$Bool],false)},{prop:"object",name:"object",pkg:"reflect",typ:$funcType([],[JG],false)},{prop:"assignTo",name:"assignTo",pkg:"reflect",typ:$funcType([$String,JC,$UnsafePointer],[Q],false)},{prop:"call",name:"call",pkg:"reflect",typ:$funcType([$String,JM],[JM],false)},{prop:"Cap",name:"Cap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[Q],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[Q],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([$Int],[Q],false)},{prop:"InterfaceData",name:"InterfaceData",pkg:"",typ:$funcType([],[LD],false)},{prop:"IsNil",name:"IsNil",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Pointer",name:"Pointer",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([Q],[],false)},{prop:"SetBytes",name:"SetBytes",pkg:"",typ:$funcType([JW],[],false)},{prop:"SetCap",name:"SetCap",pkg:"",typ:$funcType([$Int],[],false)},{prop:"SetLen",name:"SetLen",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Slice",name:"Slice",pkg:"",typ:$funcType([$Int,$Int],[Q],false)},{prop:"Slice3",name:"Slice3",pkg:"",typ:$funcType([$Int,$Int,$Int],[Q],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[],false)}];R.methods=[{prop:"kind",name:"kind",pkg:"reflect",typ:$funcType([],[CL],false)},{prop:"ro",name:"ro",pkg:"reflect",typ:$funcType([],[R],false)},{prop:"mustBe",name:"mustBe",pkg:"reflect",typ:$funcType([CL],[],false)},{prop:"mustBeExported",name:"mustBeExported",pkg:"reflect",typ:$funcType([],[],false)},{prop:"mustBeExportedSlow",name:"mustBeExportedSlow",pkg:"reflect",typ:$funcType([],[],false)},{prop:"mustBeAssignable",name:"mustBeAssignable",pkg:"reflect",typ:$funcType([],[],false)},{prop:"mustBeAssignableSlow",name:"mustBeAssignableSlow",pkg:"reflect",typ:$funcType([],[],false)}];LE.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];LC.methods=[{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[Q],false)},{prop:"Value",name:"Value",pkg:"",typ:$funcType([],[Q],false)},{prop:"Next",name:"Next",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([Q],[],false)}];CL.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];JC.methods=[{prop:"textOff",name:"textOff",pkg:"reflect",typ:$funcType([DJ],[$UnsafePointer],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"Bits",name:"Bits",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Align",name:"Align",pkg:"",typ:$funcType([],[$Int],false)},{prop:"FieldAlign",name:"FieldAlign",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[CL],false)},{prop:"common",name:"common",pkg:"reflect",typ:$funcType([],[JC],false)},{prop:"exportedMethods",name:"exportedMethods",pkg:"reflect",typ:$funcType([],[JZ],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[DA,$Bool],false)},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$funcType([],[$String],false)},{prop:"hasName",name:"hasName",pkg:"reflect",typ:$funcType([],[$Bool],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"ChanDir",name:"ChanDir",pkg:"",typ:$funcType([],[CP],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[CK],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[DL],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([JJ],[DL],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[DL,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([LB],[DL,$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[CK],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[CK],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumField",name:"NumField",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumIn",name:"NumIn",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumOut",name:"NumOut",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Out",name:"Out",pkg:"",typ:$funcType([$Int],[CK],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([CK],[$Bool],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([CK],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([CK],[$Bool],false)},{prop:"gcSlice",name:"gcSlice",pkg:"reflect",typ:$funcType([$Uintptr,$Uintptr],[JW],false)},{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[JY],false)},{prop:"nameOff",name:"nameOff",pkg:"reflect",typ:$funcType([DH],[GM],false)},{prop:"typeOff",name:"typeOff",pkg:"reflect",typ:$funcType([DI],[JC],false)},{prop:"ptrTo",name:"ptrTo",pkg:"reflect",typ:$funcType([],[JC],false)},{prop:"pointers",name:"pointers",pkg:"reflect",typ:$funcType([],[$Bool],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[DA],false)}];CP.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];KA.methods=[{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[DA],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[DA,$Bool],false)}];LL.methods=[{prop:"offset",name:"offset",pkg:"reflect",typ:$funcType([],[$Uintptr],false)},{prop:"embedded",name:"embedded",pkg:"reflect",typ:$funcType([],[$Bool],false)}];KD.methods=[{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[DL],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([JJ],[DL],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([LB],[DL,$Bool],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[DL,$Bool],false)}];DA.methods=[{prop:"IsExported",name:"IsExported",pkg:"",typ:$funcType([],[$Bool],false)}];DL.methods=[{prop:"IsExported",name:"IsExported",pkg:"",typ:$funcType([],[$Bool],false)}];DM.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"Lookup",name:"Lookup",pkg:"",typ:$funcType([$String],[$String,$Bool],false)}];JY.methods=[{prop:"methods",name:"methods",pkg:"reflect",typ:$funcType([],[JZ],false)},{prop:"exportedMethods",name:"exportedMethods",pkg:"reflect",typ:$funcType([],[JZ],false)}];KT.methods=[{prop:"in$",name:"in",pkg:"reflect",typ:$funcType([],[JD],false)},{prop:"out",name:"out",pkg:"reflect",typ:$funcType([],[JD],false)}];GM.methods=[{prop:"data",name:"data",pkg:"reflect",typ:$funcType([$Int,$String],[KE],false)},{prop:"hasTag",name:"hasTag",pkg:"reflect",typ:$funcType([],[$Bool],false)},{prop:"readVarint",name:"readVarint",pkg:"reflect",typ:$funcType([$Int],[$Int,$Int],false)},{prop:"name",name:"name",pkg:"reflect",typ:$funcType([],[$String],false)},{prop:"tag",name:"tag",pkg:"reflect",typ:$funcType([],[$String],false)},{prop:"pkgPath",name:"pkgPath",pkg:"reflect",typ:$funcType([],[$String],false)},{prop:"isExported",name:"isExported",pkg:"reflect",typ:$funcType([],[$Bool],false)}];LV.methods=[{prop:"initialized",name:"initialized",pkg:"reflect",typ:$funcType([],[$Bool],false)},{prop:"skipUntilValidKey",name:"skipUntilValidKey",pkg:"reflect",typ:$funcType([],[],false)}];Q.init("reflect",[{prop:"typ",name:"typ",embedded:false,exported:false,typ:JC,tag:""},{prop:"ptr",name:"ptr",embedded:false,exported:false,typ:$UnsafePointer,tag:""},{prop:"flag",name:"flag",embedded:true,exported:false,typ:R,tag:""}]);U.init("",[{prop:"Method",name:"Method",embedded:false,exported:true,typ:$String,tag:""},{prop:"Kind",name:"Kind",embedded:false,exported:true,typ:CL,tag:""}]);AG.init("reflect",[{prop:"m",name:"m",embedded:false,exported:false,typ:Q,tag:""},{prop:"hiter",name:"hiter",embedded:false,exported:false,typ:HY,tag:""}]);CK.init([{prop:"Align",name:"Align",pkg:"",typ:$funcType([],[$Int],false)},{prop:"AssignableTo",name:"AssignableTo",pkg:"",typ:$funcType([CK],[$Bool],false)},{prop:"Bits",name:"Bits",pkg:"",typ:$funcType([],[$Int],false)},{prop:"ChanDir",name:"ChanDir",pkg:"",typ:$funcType([],[CP],false)},{prop:"Comparable",name:"Comparable",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"ConvertibleTo",name:"ConvertibleTo",pkg:"",typ:$funcType([CK],[$Bool],false)},{prop:"Elem",name:"Elem",pkg:"",typ:$funcType([],[CK],false)},{prop:"Field",name:"Field",pkg:"",typ:$funcType([$Int],[DL],false)},{prop:"FieldAlign",name:"FieldAlign",pkg:"",typ:$funcType([],[$Int],false)},{prop:"FieldByIndex",name:"FieldByIndex",pkg:"",typ:$funcType([JJ],[DL],false)},{prop:"FieldByName",name:"FieldByName",pkg:"",typ:$funcType([$String],[DL,$Bool],false)},{prop:"FieldByNameFunc",name:"FieldByNameFunc",pkg:"",typ:$funcType([LB],[DL,$Bool],false)},{prop:"Implements",name:"Implements",pkg:"",typ:$funcType([CK],[$Bool],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([$Int],[CK],false)},{prop:"IsVariadic",name:"IsVariadic",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Key",name:"Key",pkg:"",typ:$funcType([],[CK],false)},{prop:"Kind",name:"Kind",pkg:"",typ:$funcType([],[CL],false)},{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Method",name:"Method",pkg:"",typ:$funcType([$Int],[DA],false)},{prop:"MethodByName",name:"MethodByName",pkg:"",typ:$funcType([$String],[DA,$Bool],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"NumField",name:"NumField",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumIn",name:"NumIn",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumMethod",name:"NumMethod",pkg:"",typ:$funcType([],[$Int],false)},{prop:"NumOut",name:"NumOut",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Out",name:"Out",pkg:"",typ:$funcType([$Int],[CK],false)},{prop:"PkgPath",name:"PkgPath",pkg:"",typ:$funcType([],[$String],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"common",name:"common",pkg:"reflect",typ:$funcType([],[JC],false)},{prop:"uncommon",name:"uncommon",pkg:"reflect",typ:$funcType([],[JY],false)}]);CN.init("reflect",[{prop:"size",name:"size",embedded:false,exported:false,typ:$Uintptr,tag:""},{prop:"ptrdata",name:"ptrdata",embedded:false,exported:false,typ:$Uintptr,tag:""},{prop:"hash",name:"hash",embedded:false,exported:false,typ:$Uint32,tag:""},{prop:"tflag",name:"tflag",embedded:false,exported:false,typ:CM,tag:""},{prop:"align",name:"align",embedded:false,exported:false,typ:$Uint8,tag:""},{prop:"fieldAlign",name:"fieldAlign",embedded:false,exported:false,typ:$Uint8,tag:""},{prop:"kind",name:"kind",embedded:false,exported:false,typ:$Uint8,tag:""},{prop:"equal",name:"equal",embedded:false,exported:false,typ:LJ,tag:""},{prop:"gcdata",name:"gcdata",embedded:false,exported:false,typ:KE,tag:""},{prop:"str",name:"str",embedded:false,exported:false,typ:DH,tag:""},{prop:"ptrToThis",name:"ptrToThis",embedded:false,exported:false,typ:DI,tag:""}]);CO.init("reflect",[{prop:"name",name:"name",embedded:false,exported:false,typ:DH,tag:""},{prop:"mtyp",name:"mtyp",embedded:false,exported:false,typ:DI,tag:""},{prop:"ifn",name:"ifn",embedded:false,exported:false,typ:DJ,tag:""},{prop:"tfn",name:"tfn",embedded:false,exported:false,typ:DJ,tag:""}]);CQ.init("reflect",[{prop:"rtype",name:"rtype",embedded:true,exported:false,typ:CN,tag:""},{prop:"elem",name:"elem",embedded:false,exported:false,typ:JC,tag:""},{prop:"slice",name:"slice",embedded:false,exported:false,typ:JC,tag:""},{prop:"len",name:"len",embedded:false,exported:false,typ:$Uintptr,tag:""}]);CR.init("reflect",[{prop:"rtype",name:"rtype",embedded:true,exported:false,typ:CN,tag:""},{prop:"elem",name:"elem",embedded:false,exported:false,typ:JC,tag:""},{prop:"dir",name:"dir",embedded:false,exported:false,typ:$Uintptr,tag:""}]);CS.init("reflect",[{prop:"name",name:"name",embedded:false,exported:false,typ:DH,tag:""},{prop:"typ",name:"typ",embedded:false,exported:false,typ:DI,tag:""}]);CT.init("reflect",[{prop:"rtype",name:"rtype",embedded:true,exported:false,typ:CN,tag:""},{prop:"pkgPath",name:"pkgPath",embedded:false,exported:false,typ:GM,tag:""},{prop:"methods",name:"methods",embedded:false,exported:false,typ:KL,tag:""}]);CU.init("reflect",[{prop:"rtype",name:"rtype",embedded:true,exported:false,typ:CN,tag:""},{prop:"key",name:"key",embedded:false,exported:false,typ:JC,tag:""},{prop:"elem",name:"elem",embedded:false,exported:false,typ:JC,tag:""},{prop:"bucket",name:"bucket",embedded:false,exported:false,typ:JC,tag:""},{prop:"hasher",name:"hasher",embedded:false,exported:false,typ:LK,tag:""},{prop:"keysize",name:"keysize",embedded:false,exported:false,typ:$Uint8,tag:""},{prop:"valuesize",name:"valuesize",embedded:false,exported:false,typ:$Uint8,tag:""},{prop:"bucketsize",name:"bucketsize",embedded:false,exported:false,typ:$Uint16,tag:""},{prop:"flags",name:"flags",embedded:false,exported:false,typ:$Uint32,tag:""}]);CV.init("reflect",[{prop:"rtype",name:"rtype",embedded:true,exported:false,typ:CN,tag:""},{prop:"elem",name:"elem",embedded:false,exported:false,typ:JC,tag:""}]);CW.init("reflect",[{prop:"rtype",name:"rtype",embedded:true,exported:false,typ:CN,tag:""},{prop:"elem",name:"elem",embedded:false,exported:false,typ:JC,tag:""}]);CX.init("reflect",[{prop:"name",name:"name",embedded:false,exported:false,typ:GM,tag:""},{prop:"typ",name:"typ",embedded:false,exported:false,typ:JC,tag:""},{prop:"offsetEmbed",name:"offsetEmbed",embedded:false,exported:false,typ:$Uintptr,tag:""}]);CY.init("reflect",[{prop:"rtype",name:"rtype",embedded:true,exported:false,typ:CN,tag:""},{prop:"pkgPath",name:"pkgPath",embedded:false,exported:false,typ:GM,tag:""},{prop:"fields",name:"fields",embedded:false,exported:false,typ:KM,tag:""}]);DA.init("",[{prop:"Name",name:"Name",embedded:false,exported:true,typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",embedded:false,exported:true,typ:$String,tag:""},{prop:"Type",name:"Type",embedded:false,exported:true,typ:CK,tag:""},{prop:"Func",name:"Func",embedded:false,exported:true,typ:Q,tag:""},{prop:"Index",name:"Index",embedded:false,exported:true,typ:$Int,tag:""}]);DL.init("",[{prop:"Name",name:"Name",embedded:false,exported:true,typ:$String,tag:""},{prop:"PkgPath",name:"PkgPath",embedded:false,exported:true,typ:$String,tag:""},{prop:"Type",name:"Type",embedded:false,exported:true,typ:CK,tag:""},{prop:"Tag",name:"Tag",embedded:false,exported:true,typ:DM,tag:""},{prop:"Offset",name:"Offset",embedded:false,exported:true,typ:$Uintptr,tag:""},{prop:"Index",name:"Index",embedded:false,exported:true,typ:JJ,tag:""},{prop:"Anonymous",name:"Anonymous",embedded:false,exported:true,typ:$Bool,tag:""}]);DN.init("reflect",[{prop:"typ",name:"typ",embedded:false,exported:false,typ:KD,tag:""},{prop:"index",name:"index",embedded:false,exported:false,typ:JJ,tag:""}]);GK.init("reflect",[{prop:"pkgPath",name:"pkgPath",embedded:false,exported:false,typ:DH,tag:""},{prop:"mcount",name:"mcount",embedded:false,exported:false,typ:$Uint16,tag:""},{prop:"xcount",name:"xcount",embedded:false,exported:false,typ:$Uint16,tag:""},{prop:"moff",name:"moff",embedded:false,exported:false,typ:$Uint32,tag:""},{prop:"_methods",name:"_methods",embedded:false,exported:false,typ:JZ,tag:""}]);GL.init("reflect",[{prop:"rtype",name:"rtype",embedded:true,exported:false,typ:CN,tag:"reflect:\"func\""},{prop:"inCount",name:"inCount",embedded:false,exported:false,typ:$Uint16,tag:""},{prop:"outCount",name:"outCount",embedded:false,exported:false,typ:$Uint16,tag:""},{prop:"_in",name:"_in",embedded:false,exported:false,typ:JD,tag:""},{prop:"_out",name:"_out",embedded:false,exported:false,typ:JD,tag:""}]);GM.init("reflect",[{prop:"bytes",name:"bytes",embedded:false,exported:false,typ:KE,tag:""}]);GN.init("reflect",[{prop:"name",name:"name",embedded:false,exported:false,typ:$String,tag:""},{prop:"tag",name:"tag",embedded:false,exported:false,typ:$String,tag:""},{prop:"exported",name:"exported",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"pkgPath",name:"pkgPath",embedded:false,exported:false,typ:$String,tag:""}]);HY.init("reflect",[{prop:"t",name:"t",embedded:false,exported:false,typ:CK,tag:""},{prop:"m",name:"m",embedded:false,exported:false,typ:JG,tag:""},{prop:"keys",name:"keys",embedded:false,exported:false,typ:JG,tag:""},{prop:"i",name:"i",embedded:false,exported:false,typ:$Int,tag:""},{prop:"last",name:"last",embedded:false,exported:false,typ:JG,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}GR=JB.nil;GT=JD.nil;DB=new JE(["invalid","bool","int","int8","int16","int32","int64","uint","uint8","uint16","uint32","uint64","uintptr","float32","float64","complex64","complex128","array","chan","func","interface","map","ptr","slice","string","struct","unsafe.Pointer"]);GE=false;GO=new $global.Map();AE=$assertType(HB(new $Uint8(0)),JC);AF=$assertType(HB(new $String("")),JC);IL=$assertType($internalize($call,$emptyInterface),JH);IM=GI($jsObjectPtr);IQ=$assertType($internalize($select,$emptyInterface),JH);$r=GF();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["sort"]=(function(){var $pkg={},$init,A,V,AC,AY,AZ,BA,AN,AO,B,C,D,E,G,H,M,N,O,P,Q,R,S,T,U,AF,AJ,AK,AL,AM,AP,AS,AV;A=$packages["internal/reflectlite"];V=$pkg.lessSwap=$newType(0,$kindStruct,"sort.lessSwap",true,"sort",false,function(Less_,Swap_){this.$val=this;if(arguments.length===0){this.Less=$throwNilPointerError;this.Swap=$throwNilPointerError;return;}this.Less=Less_;this.Swap=Swap_;});AC=$pkg.StringSlice=$newType(12,$kindSlice,"sort.StringSlice",true,"sort",true,null);AY=$sliceType($String);AZ=$funcType([$Int,$Int],[$Bool],false);BA=$funcType([$Int,$Int],[],false);B=function(a,b,c){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b,c});$s=$s||0;s:while(true){switch($s){case 0:d=b+1>>0;case 1:if(!(d<c)){$s=2;continue;}e=d;case 3:if(!(e>b)){f=false;$s=5;continue s;}g=a.Less(e,e-1>>0);$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;case 5:if(!(f)){$s=4;continue;}$r=a.Swap(e,e-1>>0);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=e-(1)>>0;$s=3;continue;case 4:d=d+(1)>>0;$s=1;continue;case 2:$s=-1;return;}return;}var $f={$blk:B,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};C=function(a,b,c,d){var{a,b,c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{a,b,c,d});$s=$s||0;s:while(true){switch($s){case 0:e=b;case 1:f=($imul(2,e))+1>>0;if(f>=c){$s=2;continue;}if(!((f+1>>0)<c)){g=false;$s=5;continue s;}h=a.Less(d+f>>0,(d+f>>0)+1>>0);$s=6;case 6:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;case 5:if(g){$s=3;continue;}$s=4;continue;case 3:f=f+(1)>>0;case 4:i=a.Less(d+e>>0,d+f>>0);$s=9;case 9:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}if(!i){$s=7;continue;}$s=8;continue;case 7:$s=-1;return;case 8:$r=a.Swap(d+e>>0,d+f>>0);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=f;$s=1;continue;case 2:$s=-1;return;}return;}var $f={$blk:C,$c:true,$r,a,b,c,d,e,f,g,h,i,$s};return $f;};D=function(a,b,c){var{a,b,c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{a,b,c});$s=$s||0;s:while(true){switch($s){case 0:d=b;e=0;f=c-b>>0;h=(g=((f-1>>0))/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"));case 1:if(!(h>=0)){$s=2;continue;}$r=C($clone(a,V),h,f,d);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=h-(1)>>0;$s=1;continue;case 2:i=f-1>>0;case 4:if(!(i>=0)){$s=5;continue;}$r=a.Swap(d,d+i>>0);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C($clone(a,V),e,i,d);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=i-(1)>>0;$s=4;continue;case 5:$s=-1;return;}return;}var $f={$blk:D,$c:true,$r,a,b,c,d,e,f,g,h,i,$s};return $f;};E=function(a,b,c,d){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b,c,d});$s=$s||0;s:while(true){switch($s){case 0:e=a.Less(b,c);$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}if(e){$s=1;continue;}$s=2;continue;case 1:$r=a.Swap(b,c);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:f=a.Less(d,b);$s=7;case 7:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(f){$s=5;continue;}$s=6;continue;case 5:$r=a.Swap(d,b);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=a.Less(b,c);$s=11;case 11:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}if(g){$s=9;continue;}$s=10;continue;case 9:$r=a.Swap(b,c);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:case 6:$s=-1;return;}return;}var $f={$blk:E,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};G=function(a,b,c){var{a,aa,ab,ac,ad,ae,af,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a,b,c});$s=$s||0;s:while(true){switch($s){case 0:d=0;e=0;f=((((((b+c>>0)>>>0))>>>1>>>0)>>0));if((c-b>>0)>40){$s=1;continue;}$s=2;continue;case 1:h=(g=((c-b>>0))/8,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"));$r=E($clone(a,V),b,b+h>>0,b+($imul(2,h))>>0);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E($clone(a,V),f,f-h>>0,f+h>>0);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E($clone(a,V),c-1>>0,(c-1>>0)-h>>0,(c-1>>0)-($imul(2,h))>>0);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$r=E($clone(a,V),b,f,c-1>>0);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=b;j=b+1>>0;k=c-1>>0;l=j;m=k;case 7:if(!(l<m)){n=false;$s=9;continue s;}o=a.Less(l,i);$s=10;case 10:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;case 9:if(!(n)){$s=8;continue;}l=l+(1)>>0;$s=7;continue;case 8:p=l;case 11:case 13:if(!(p<m)){q=false;$s=15;continue s;}r=a.Less(i,p);$s=16;case 16:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=!r;case 15:if(!(q)){$s=14;continue;}p=p+(1)>>0;$s=13;continue;case 14:case 17:if(!(p<m)){s=false;$s=19;continue s;}t=a.Less(i,m-1>>0);$s=20;case 20:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}s=t;case 19:if(!(s)){$s=18;continue;}m=m-(1)>>0;$s=17;continue;case 18:if(p>=m){$s=12;continue;}$r=a.Swap(p,m-1>>0);$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=p+(1)>>0;m=m-(1)>>0;$s=11;continue;case 12:u=(c-m>>0)<5;if(!u&&(c-m>>0)<(v=((c-b>>0))/4,(v===v&&v!==1/0&&v!==-1/0)?v>>0:$throwRuntimeError("integer divide by zero"))){$s=22;continue;}$s=23;continue;case 22:w=0;x=a.Less(i,c-1>>0);$s=26;case 26:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}if(!x){$s=24;continue;}$s=25;continue;case 24:$r=a.Swap(m,c-1>>0);$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}m=m+(1)>>0;w=w+(1)>>0;case 25:y=a.Less(p-1>>0,i);$s=30;case 30:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}if(!y){$s=28;continue;}$s=29;continue;case 28:p=p-(1)>>0;w=w+(1)>>0;case 29:z=a.Less(f,i);$s=33;case 33:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}if(!z){$s=31;continue;}$s=32;continue;case 31:$r=a.Swap(f,p-1>>0);$s=34;case 34:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=p-(1)>>0;w=w+(1)>>0;case 32:u=w>1;case 23:if(u){$s=35;continue;}$s=36;continue;case 35:case 37:case 39:if(!(l<p)){aa=false;$s=41;continue s;}ab=a.Less(p-1>>0,i);$s=42;case 42:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}aa=!ab;case 41:if(!(aa)){$s=40;continue;}p=p-(1)>>0;$s=39;continue;case 40:case 43:if(!(l<p)){ac=false;$s=45;continue s;}ad=a.Less(l,i);$s=46;case 46:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ac=ad;case 45:if(!(ac)){$s=44;continue;}l=l+(1)>>0;$s=43;continue;case 44:if(l>=p){$s=38;continue;}$r=a.Swap(l,p-1>>0);$s=47;case 47:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}l=l+(1)>>0;p=p-(1)>>0;$s=37;continue;case 38:case 36:$r=a.Swap(i,p-1>>0);$s=48;case 48:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ae=p-1>>0;af=m;d=ae;e=af;$s=-1;return[d,e];}return;}var $f={$blk:G,$c:true,$r,a,aa,ab,ac,ad,ae,af,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};H=function(a,b,c,d){var{a,b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{a,b,c,d});$s=$s||0;s:while(true){switch($s){case 0:case 1:if(!((c-b>>0)>12)){$s=2;continue;}if(d===0){$s=3;continue;}$s=4;continue;case 3:$r=D($clone(a,V),b,c);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 4:d=d-(1)>>0;f=G($clone(a,V),b,c);$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];if((g-b>>0)<(c-h>>0)){$s=7;continue;}$s=8;continue;case 7:$r=H($clone(a,V),b,g,d);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b=h;$s=9;continue;case 8:$r=H($clone(a,V),h,c,d);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c=g;case 9:$s=1;continue;case 2:if((c-b>>0)>1){$s=12;continue;}$s=13;continue;case 12:i=b+6>>0;case 14:if(!(i<c)){$s=15;continue;}j=a.Less(i,i-6>>0);$s=18;case 18:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}if(j){$s=16;continue;}$s=17;continue;case 16:$r=a.Swap(i,i-6>>0);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 17:i=i+(1)>>0;$s=14;continue;case 15:$r=B($clone(a,V),b,c);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 13:$s=-1;return;}return;}var $f={$blk:H,$c:true,$r,a,b,c,d,e,f,g,h,i,j,$s};return $f;};M=function(a,b,c){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b,c});$s=$s||0;s:while(true){switch($s){case 0:d=b+1>>0;case 1:if(!(d<c)){$s=2;continue;}e=d;case 3:if(!(e>b)){f=false;$s=5;continue s;}g=a.Less(e,e-1>>0);$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;case 5:if(!(f)){$s=4;continue;}$r=a.Swap(e,e-1>>0);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=e-(1)>>0;$s=3;continue;case 4:d=d+(1)>>0;$s=1;continue;case 2:$s=-1;return;}return;}var $f={$blk:M,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};N=function(a,b,c,d){var{a,b,c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{a,b,c,d});$s=$s||0;s:while(true){switch($s){case 0:e=b;case 1:f=($imul(2,e))+1>>0;if(f>=c){$s=2;continue;}if(!((f+1>>0)<c)){g=false;$s=5;continue s;}h=a.Less(d+f>>0,(d+f>>0)+1>>0);$s=6;case 6:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;case 5:if(g){$s=3;continue;}$s=4;continue;case 3:f=f+(1)>>0;case 4:i=a.Less(d+e>>0,d+f>>0);$s=9;case 9:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}if(!i){$s=7;continue;}$s=8;continue;case 7:$s=-1;return;case 8:$r=a.Swap(d+e>>0,d+f>>0);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=f;$s=1;continue;case 2:$s=-1;return;}return;}var $f={$blk:N,$c:true,$r,a,b,c,d,e,f,g,h,i,$s};return $f;};O=function(a,b,c){var{a,b,c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{a,b,c});$s=$s||0;s:while(true){switch($s){case 0:d=b;e=0;f=c-b>>0;h=(g=((f-1>>0))/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"));case 1:if(!(h>=0)){$s=2;continue;}$r=N(a,h,f,d);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=h-(1)>>0;$s=1;continue;case 2:i=f-1>>0;case 4:if(!(i>=0)){$s=5;continue;}$r=a.Swap(d,d+i>>0);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N(a,e,i,d);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=i-(1)>>0;$s=4;continue;case 5:$s=-1;return;}return;}var $f={$blk:O,$c:true,$r,a,b,c,d,e,f,g,h,i,$s};return $f;};P=function(a,b,c,d){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b,c,d});$s=$s||0;s:while(true){switch($s){case 0:e=a.Less(b,c);$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}if(e){$s=1;continue;}$s=2;continue;case 1:$r=a.Swap(b,c);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:f=a.Less(d,b);$s=7;case 7:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(f){$s=5;continue;}$s=6;continue;case 5:$r=a.Swap(d,b);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=a.Less(b,c);$s=11;case 11:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}if(g){$s=9;continue;}$s=10;continue;case 9:$r=a.Swap(b,c);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:case 6:$s=-1;return;}return;}var $f={$blk:P,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};Q=function(a,b,c,d){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b,c,d});$s=$s||0;s:while(true){switch($s){case 0:e=0;case 1:if(!(e<d)){$s=2;continue;}$r=a.Swap(b+e>>0,c+e>>0);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=e+(1)>>0;$s=1;continue;case 2:$s=-1;return;}return;}var $f={$blk:Q,$c:true,$r,a,b,c,d,e,$s};return $f;};R=function(a,b,c){var{a,aa,ab,ac,ad,ae,af,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a,b,c});$s=$s||0;s:while(true){switch($s){case 0:d=0;e=0;f=((((((b+c>>0)>>>0))>>>1>>>0)>>0));if((c-b>>0)>40){$s=1;continue;}$s=2;continue;case 1:h=(g=((c-b>>0))/8,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero"));$r=P(a,b,b+h>>0,b+($imul(2,h))>>0);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=P(a,f,f-h>>0,f+h>>0);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=P(a,c-1>>0,(c-1>>0)-h>>0,(c-1>>0)-($imul(2,h))>>0);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$r=P(a,b,f,c-1>>0);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=b;j=b+1>>0;k=c-1>>0;l=j;m=k;case 7:if(!(l<m)){n=false;$s=9;continue s;}o=a.Less(l,i);$s=10;case 10:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;case 9:if(!(n)){$s=8;continue;}l=l+(1)>>0;$s=7;continue;case 8:p=l;case 11:case 13:if(!(p<m)){q=false;$s=15;continue s;}r=a.Less(i,p);$s=16;case 16:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=!r;case 15:if(!(q)){$s=14;continue;}p=p+(1)>>0;$s=13;continue;case 14:case 17:if(!(p<m)){s=false;$s=19;continue s;}t=a.Less(i,m-1>>0);$s=20;case 20:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}s=t;case 19:if(!(s)){$s=18;continue;}m=m-(1)>>0;$s=17;continue;case 18:if(p>=m){$s=12;continue;}$r=a.Swap(p,m-1>>0);$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=p+(1)>>0;m=m-(1)>>0;$s=11;continue;case 12:u=(c-m>>0)<5;if(!u&&(c-m>>0)<(v=((c-b>>0))/4,(v===v&&v!==1/0&&v!==-1/0)?v>>0:$throwRuntimeError("integer divide by zero"))){$s=22;continue;}$s=23;continue;case 22:w=0;x=a.Less(i,c-1>>0);$s=26;case 26:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}if(!x){$s=24;continue;}$s=25;continue;case 24:$r=a.Swap(m,c-1>>0);$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}m=m+(1)>>0;w=w+(1)>>0;case 25:y=a.Less(p-1>>0,i);$s=30;case 30:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}if(!y){$s=28;continue;}$s=29;continue;case 28:p=p-(1)>>0;w=w+(1)>>0;case 29:z=a.Less(f,i);$s=33;case 33:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}if(!z){$s=31;continue;}$s=32;continue;case 31:$r=a.Swap(f,p-1>>0);$s=34;case 34:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=p-(1)>>0;w=w+(1)>>0;case 32:u=w>1;case 23:if(u){$s=35;continue;}$s=36;continue;case 35:case 37:case 39:if(!(l<p)){aa=false;$s=41;continue s;}ab=a.Less(p-1>>0,i);$s=42;case 42:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}aa=!ab;case 41:if(!(aa)){$s=40;continue;}p=p-(1)>>0;$s=39;continue;case 40:case 43:if(!(l<p)){ac=false;$s=45;continue s;}ad=a.Less(l,i);$s=46;case 46:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ac=ad;case 45:if(!(ac)){$s=44;continue;}l=l+(1)>>0;$s=43;continue;case 44:if(l>=p){$s=38;continue;}$r=a.Swap(l,p-1>>0);$s=47;case 47:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}l=l+(1)>>0;p=p-(1)>>0;$s=37;continue;case 38:case 36:$r=a.Swap(i,p-1>>0);$s=48;case 48:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ae=p-1>>0;af=m;d=ae;e=af;$s=-1;return[d,e];}return;}var $f={$blk:R,$c:true,$r,a,aa,ab,ac,ad,ae,af,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};S=function(a,b,c,d){var{a,b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{a,b,c,d});$s=$s||0;s:while(true){switch($s){case 0:case 1:if(!((c-b>>0)>12)){$s=2;continue;}if(d===0){$s=3;continue;}$s=4;continue;case 3:$r=O(a,b,c);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 4:d=d-(1)>>0;f=R(a,b,c);$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=e[0];h=e[1];if((g-b>>0)<(c-h>>0)){$s=7;continue;}$s=8;continue;case 7:$r=S(a,b,g,d);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b=h;$s=9;continue;case 8:$r=S(a,h,c,d);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c=g;case 9:$s=1;continue;case 2:if((c-b>>0)>1){$s=12;continue;}$s=13;continue;case 12:i=b+6>>0;case 14:if(!(i<c)){$s=15;continue;}j=a.Less(i,i-6>>0);$s=18;case 18:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}if(j){$s=16;continue;}$s=17;continue;case 16:$r=a.Swap(i,i-6>>0);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 17:i=i+(1)>>0;$s=14;continue;case 15:$r=M(a,b,c);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 13:$s=-1;return;}return;}var $f={$blk:S,$c:true,$r,a,b,c,d,e,f,g,h,i,j,$s};return $f;};T=function(a){var{a,b,c,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=a.Len();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;$r=S(a,0,c,U(c));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:T,$c:true,$r,a,b,c,$s};return $f;};$pkg.Sort=T;U=function(a){var a,b,c;b=0;c=a;while(true){if(!(c>0)){break;}b=b+(1)>>0;c=(c>>$min((1),31))>>0;}return $imul(b,2);};AC.prototype.Len=function(){var a;a=this;return a.$length;};$ptrType(AC).prototype.Len=function(){return this.$get().Len();};AC.prototype.Less=function(a,b){var a,b,c;c=this;return((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a])<((b<0||b>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+b]);};$ptrType(AC).prototype.Less=function(a,b){return this.$get().Less(a,b);};AC.prototype.Swap=function(a,b){var a,b,c,d,e;c=this;d=((b<0||b>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+b]);e=((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]);((a<0||a>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+a]=d);((b<0||b>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+b]=e);};$ptrType(AC).prototype.Swap=function(a,b){return this.$get().Swap(a,b);};AC.prototype.Sort=function(){var{a,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;$r=T(a);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:AC.prototype.Sort,$c:true,$r,a,$s};return $f;};$ptrType(AC).prototype.Sort=function(){return this.$get().Sort();};AF=function(a){var{a,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:$r=T(($convertSliceType(a,AC)));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:AF,$c:true,$r,a,$s};return $f;};$pkg.Strings=AF;AJ=function(a){var{a,b,c,d,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=a;c=a.Len();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;$r=AK(b,d);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:AJ,$c:true,$r,a,b,c,d,$s};return $f;};$pkg.Stable=AJ;AK=function(a,b){var{a,b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=20;d=0;e=c;f=d;g=e;case 1:if(!(g<=b)){$s=2;continue;}$r=M(a,f,g);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=g;g=g+(c)>>0;$s=1;continue;case 2:$r=M(a,f,b);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:if(!(c<b)){$s=6;continue;}h=0;i=$imul(2,c);f=h;g=i;case 7:if(!(g<=b)){$s=8;continue;}$r=AL(a,f,f+c>>0,g);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=g;g=g+(($imul(2,c)))>>0;$s=7;continue;case 8:j=f+c>>0;if(j<b){$s=10;continue;}$s=11;continue;case 10:$r=AL(a,f,j,b);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 11:c=$imul(c,(2));$s=5;continue;case 6:$s=-1;return;}return;}var $f={$blk:AK,$c:true,$r,a,b,c,d,e,f,g,h,i,j,$s};return $f;};AL=function(a,b,c,d){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,$s,$r,$c}=$restore(this,{a,b,c,d});$s=$s||0;s:while(true){switch($s){case 0:if((c-b>>0)===1){$s=1;continue;}$s=2;continue;case 1:e=c;f=d;case 3:if(!(e<f)){$s=4;continue;}g=((((((e+f>>0)>>>0))>>>1>>>0)>>0));h=a.Less(g,b);$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}if(h){$s=5;continue;}$s=6;continue;case 5:e=g+1>>0;$s=7;continue;case 6:f=g;case 7:$s=3;continue;case 4:i=b;case 9:if(!(i<(e-1>>0))){$s=10;continue;}$r=a.Swap(i,i+1>>0);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=i+(1)>>0;$s=9;continue;case 10:$s=-1;return;case 2:if((d-c>>0)===1){$s=12;continue;}$s=13;continue;case 12:j=b;k=c;case 14:if(!(j<k)){$s=15;continue;}l=((((((j+k>>0)>>>0))>>>1>>>0)>>0));m=a.Less(c,l);$s=19;case 19:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}if(!m){$s=16;continue;}$s=17;continue;case 16:j=l+1>>0;$s=18;continue;case 17:k=l;case 18:$s=14;continue;case 15:n=c;case 20:if(!(n>j)){$s=21;continue;}$r=a.Swap(n,n-1>>0);$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}n=n-(1)>>0;$s=20;continue;case 21:$s=-1;return;case 13:o=((((((b+d>>0)>>>0))>>>1>>>0)>>0));p=o+c>>0;q=0;r=0;s=q;t=r;if(c>o){s=p-d>>0;t=o;}else{s=b;t=c;}u=p-1>>0;case 23:if(!(s<t)){$s=24;continue;}v=((((((s+t>>0)>>>0))>>>1>>>0)>>0));w=a.Less(u-v>>0,v);$s=28;case 28:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}if(!w){$s=25;continue;}$s=26;continue;case 25:s=v+1>>0;$s=27;continue;case 26:t=v;case 27:$s=23;continue;case 24:x=p-s>>0;if(s<c&&c<x){$s=29;continue;}$s=30;continue;case 29:$r=AM(a,s,c,x);$s=31;case 31:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 30:if(b<s&&s<o){$s=32;continue;}$s=33;continue;case 32:$r=AL(a,b,s,o);$s=34;case 34:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 33:if(o<x&&x<d){$s=35;continue;}$s=36;continue;case 35:$r=AL(a,o,x,d);$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 36:$s=-1;return;}return;}var $f={$blk:AL,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,$s};return $f;};AM=function(a,b,c,d){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a,b,c,d});$s=$s||0;s:while(true){switch($s){case 0:e=c-b>>0;f=d-c>>0;case 1:if(!(!((e===f)))){$s=2;continue;}if(e>f){$s=3;continue;}$s=4;continue;case 3:$r=Q(a,c-e>>0,c,f);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=e-(f)>>0;$s=5;continue;case 4:$r=Q(a,c-e>>0,(c+f>>0)-e>>0,e);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=f-(e)>>0;case 5:$s=1;continue;case 2:$r=Q(a,c-e>>0,c,e);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:AM,$c:true,$r,a,b,c,d,e,f,$s};return $f;};AP=function(a,b){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=AN(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=$clone(c,A.Value);e=AO(a);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;g=$clone(d,A.Value).Len();$r=H(new V.ptr(b,f),0,g,U(g));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:AP,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};$pkg.Slice=AP;AS=function(a,b){var{a,b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=0;d=a;e=c;f=d;case 1:if(!(e<f)){$s=2;continue;}g=((((((e+f>>0)>>>0))>>>1>>>0)>>0));h=b(g);$s=6;case 6:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}if(!h){$s=3;continue;}$s=4;continue;case 3:e=g+1>>0;$s=5;continue;case 4:f=g;case 5:$s=1;continue;case 2:$s=-1;return e;}return;}var $f={$blk:AS,$c:true,$r,a,b,c,d,e,f,g,h,$s};return $f;};$pkg.Search=AS;AV=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:a=[a];b=[b];c=AS(a[0].$length,(function(a,b){return function(c){var c;return((c<0||c>=a[0].$length)?($throwRuntimeError("index out of range"),undefined):a[0].$array[a[0].$offset+c])>=b[0];};})(a,b));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;$s=2;case 2:return d;}return;}var $f={$blk:AV,$c:true,$r,a,b,c,d,$s};return $f;};$pkg.SearchStrings=AV;AC.prototype.Search=function(a){var{a,b,c,d,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;c=AV($convertSliceType(b,AY),a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;$s=2;case 2:return d;}return;}var $f={$blk:AC.prototype.Search,$c:true,$r,a,b,c,d,$s};return $f;};$ptrType(AC).prototype.Search=function(a){return this.$get().Search(a);};AC.methods=[{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Less",name:"Less",pkg:"",typ:$funcType([$Int,$Int],[$Bool],false)},{prop:"Swap",name:"Swap",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"Sort",name:"Sort",pkg:"",typ:$funcType([],[],false)},{prop:"Search",name:"Search",pkg:"",typ:$funcType([$String],[$Int],false)}];V.init("",[{prop:"Less",name:"Less",embedded:false,exported:true,typ:AZ,tag:""},{prop:"Swap",name:"Swap",embedded:false,exported:true,typ:BA,tag:""}]);AC.init($String);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}AN=A.ValueOf;AO=A.Swapper;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["internal/fmtsort"]=(function(){var $pkg={},$init,A,B,C,I,J,D,E,F,G,H;A=$packages["reflect"];B=$packages["sort"];C=$pkg.SortedMap=$newType(0,$kindStruct,"fmtsort.SortedMap",true,"internal/fmtsort",true,function(Key_,Value_){this.$val=this;if(arguments.length===0){this.Key=J.nil;this.Value=J.nil;return;}this.Key=Key_;this.Value=Value_;});I=$ptrType(C);J=$sliceType(A.Value);C.ptr.prototype.Len=function(){var a;a=this;return a.Key.$length;};C.prototype.Len=function(){return this.$val.Len();};C.ptr.prototype.Less=function(a,b){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;f=E($clone((d=c.Key,((a<0||a>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+a])),A.Value),$clone((e=c.Key,((b<0||b>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+b])),A.Value));$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f<0;$s=2;case 2:return g;}return;}var $f={$blk:C.ptr.prototype.Less,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};C.prototype.Less=function(a,b){return this.$val.Less(a,b);};C.ptr.prototype.Swap=function(a,b){var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;c=this;d=(e=c.Key,((b<0||b>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+b]));f=(g=c.Key,((a<0||a>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+a]));(h=c.Key,((a<0||a>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+a]=d));(i=c.Key,((b<0||b>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+b]=f));j=(k=c.Value,((b<0||b>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+b]));l=(m=c.Value,((a<0||a>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+a]));(n=c.Value,((a<0||a>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+a]=j));(o=c.Value,((b<0||b>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+b]=l));};C.prototype.Swap=function(a,b){return this.$val.Swap(a,b);};D=function(a){var{a,b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=$clone(a,A.Value).Type().Kind();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}if(!((b===21))){$s=1;continue;}$s=2;continue;case 1:$s=-1;return I.nil;case 2:c=$clone(a,A.Value).Len();d=$makeSlice(J,0,c);e=$makeSlice(J,0,c);f=$clone(a,A.Value).MapRange();case 4:g=f.Next();$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}if(!(g)){$s=5;continue;}h=f.Key();$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}d=$append(d,h);i=f.Value();$s=8;case 8:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}e=$append(e,i);$s=4;continue;case 5:j=new C.ptr(d,e);$r=B.Stable(j);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return j;}return;}var $f={$blk:D,$c:true,$r,a,b,c,d,e,f,g,h,i,j,$s};return $f;};$pkg.Sort=D;E=function(a,b){var{a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=$clone(a,A.Value).Type();d=$clone(b,A.Value).Type();e=c;f=d;if(!($interfaceIsEqual(e,f))){$s=-1;return-1;}g=$clone(a,A.Value).Kind();if((g===(2))||(g===(3))||(g===(4))||(g===(5))||(g===(6))){$s=2;continue;}if((g===(7))||(g===(8))||(g===(9))||(g===(10))||(g===(11))||(g===(12))){$s=3;continue;}if(g===(24)){$s=4;continue;}if((g===(13))||(g===(14))){$s=5;continue;}if((g===(15))||(g===(16))){$s=6;continue;}if(g===(1)){$s=7;continue;}if((g===(22))||(g===(26))){$s=8;continue;}if(g===(18)){$s=9;continue;}if(g===(25)){$s=10;continue;}if(g===(17)){$s=11;continue;}if(g===(20)){$s=12;continue;}$s=13;continue;case 2:h=$clone(a,A.Value).Int();i=$clone(b,A.Value).Int();j=h;k=i;if((j.$high<k.$high||(j.$high===k.$high&&j.$low<k.$low))){$s=-1;return-1;}else if((j.$high>k.$high||(j.$high===k.$high&&j.$low>k.$low))){$s=-1;return 1;}else{$s=-1;return 0;}$s=14;continue;case 3:l=$clone(a,A.Value).Uint();m=$clone(b,A.Value).Uint();n=l;o=m;if((n.$high<o.$high||(n.$high===o.$high&&n.$low<o.$low))){$s=-1;return-1;}else if((n.$high>o.$high||(n.$high===o.$high&&n.$low>o.$low))){$s=-1;return 1;}else{$s=-1;return 0;}$s=14;continue;case 4:q=$clone(a,A.Value).String();$s=15;case 15:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;s=$clone(b,A.Value).String();$s=16;case 16:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;t=p;u=r;if(t<u){$s=-1;return-1;}else if(t>u){$s=-1;return 1;}else{$s=-1;return 0;}$s=14;continue;case 5:$s=-1;return G($clone(a,A.Value).Float(),$clone(b,A.Value).Float());case 6:v=$clone(a,A.Value).Complex();w=$clone(b,A.Value).Complex();x=v;y=w;z=G(x.$real,y.$real);if(!((z===0))){$s=-1;return z;}$s=-1;return G(x.$imag,y.$imag);case 7:aa=$clone(a,A.Value).Bool();ab=$clone(b,A.Value).Bool();ac=aa;ad=ab;if(ac===ad){$s=-1;return 0;}else if(ac){$s=-1;return 1;}else{$s=-1;return-1;}$s=14;continue;case 8:ae=$clone(a,A.Value).Pointer();af=$clone(b,A.Value).Pointer();ag=ae;ah=af;if(ag<ah){$s=-1;return-1;}else if(ag>ah){$s=-1;return 1;}else{$s=-1;return 0;}$s=14;continue;case 9:ai=F($clone(a,A.Value),$clone(b,A.Value));aj=ai[0];ak=ai[1];if(ak){$s=-1;return aj;}al=$clone(a,A.Value).Pointer();am=$clone(b,A.Value).Pointer();an=al;ao=am;if(an<ao){$s=-1;return-1;}else if(an>ao){$s=-1;return 1;}else{$s=-1;return 0;}$s=14;continue;case 10:ap=0;case 17:if(!(ap<$clone(a,A.Value).NumField())){$s=18;continue;}aq=$clone(a,A.Value).Field(ap);$s=19;case 19:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=$clone(aq,A.Value);as=$clone(b,A.Value).Field(ap);$s=20;case 20:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}at=$clone(as,A.Value);au=E(ar,at);$s=21;case 21:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=au;if(!((av===0))){$s=-1;return av;}ap=ap+(1)>>0;$s=17;continue;case 18:$s=-1;return 0;case 11:aw=0;case 22:if(!(aw<$clone(a,A.Value).Len())){$s=23;continue;}ax=$clone(a,A.Value).Index(aw);$s=24;case 24:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}ay=$clone(ax,A.Value);az=$clone(b,A.Value).Index(aw);$s=25;case 25:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ba=$clone(az,A.Value);bb=E(ay,ba);$s=26;case 26:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=bb;if(!((bc===0))){$s=-1;return bc;}aw=aw+(1)>>0;$s=22;continue;case 23:$s=-1;return 0;case 12:bd=F($clone(a,A.Value),$clone(b,A.Value));be=bd[0];bf=bd[1];if(bf){$s=-1;return be;}bg=$clone(a,A.Value).Elem();$s=27;case 27:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}bh=$clone(bg,A.Value).Type();$s=28;case 28:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}bi=A.ValueOf(bh);$s=29;case 29:if($c){$c=false;bi=bi.$blk();}if(bi&&bi.$blk!==undefined){break s;}bj=$clone(bi,A.Value);bk=$clone(b,A.Value).Elem();$s=30;case 30:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bl=$clone(bk,A.Value).Type();$s=31;case 31:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}bm=A.ValueOf(bl);$s=32;case 32:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}bn=$clone(bm,A.Value);bo=E(bj,bn);$s=33;case 33:if($c){$c=false;bo=bo.$blk();}if(bo&&bo.$blk!==undefined){break s;}bp=bo;if(!((bp===0))){$s=-1;return bp;}bq=$clone(a,A.Value).Elem();$s=34;case 34:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}br=$clone(bq,A.Value);bs=$clone(b,A.Value).Elem();$s=35;case 35:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}bt=$clone(bs,A.Value);bu=E(br,bt);$s=36;case 36:if($c){$c=false;bu=bu.$blk();}if(bu&&bu.$blk!==undefined){break s;}bv=bu;$s=37;case 37:return bv;case 13:bw=e.String();$s=38;case 38:if($c){$c=false;bw=bw.$blk();}if(bw&&bw.$blk!==undefined){break s;}$panic(new $String("bad type in compare: "+bw));case 14:case 1:$s=-1;return 0;}return;}var $f={$blk:E,$c:true,$r,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};F=function(a,b){var a,b;if($clone(a,A.Value).IsNil()){if($clone(b,A.Value).IsNil()){return[0,true];}return[-1,true];}if($clone(b,A.Value).IsNil()){return[1,true];}return[0,false];};G=function(a,b){var a,b;if(H(a)){return-1;}else if(H(b)){return 1;}else if(a<b){return-1;}else if(a>b){return 1;}return 0;};H=function(a){var a;return!((a===a));};I.methods=[{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Less",name:"Less",pkg:"",typ:$funcType([$Int,$Int],[$Bool],false)},{prop:"Swap",name:"Swap",pkg:"",typ:$funcType([$Int,$Int],[],false)}];C.init("",[{prop:"Key",name:"Key",embedded:false,exported:true,typ:J,tag:""},{prop:"Value",name:"Value",embedded:false,exported:true,typ:J,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["internal/oserror"]=(function(){var $pkg={},$init,A;A=$packages["errors"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.ErrInvalid=A.New("invalid argument");$pkg.ErrPermission=A.New("permission denied");$pkg.ErrExist=A.New("file already exists");$pkg.ErrNotExist=A.New("file does not exist");$pkg.ErrClosed=A.New("file already closed");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["syscall/js"]=(function(){var $pkg={},$init,A,B,G,I,J,T,W,X,Y,Z,AA,AB,AC,AD,AE,AF,C,L,M,N,D,E,F,H,K,O,P,Q,R,S,U,V;A=$packages["github.com/gopherjs/gopherjs/js"];B=$pkg.Type=$newType(4,$kindInt,"js.Type",true,"syscall/js",true,null);G=$pkg.Func=$newType(0,$kindStruct,"js.Func",true,"syscall/js",true,function(Value_){this.$val=this;if(arguments.length===0){this.Value=new J.ptr(null,false,Y.zero());return;}this.Value=Value_;});I=$pkg.Error=$newType(0,$kindStruct,"js.Error",true,"syscall/js",true,function(Value_){this.$val=this;if(arguments.length===0){this.Value=new J.ptr(null,false,Y.zero());return;}this.Value=Value_;});J=$pkg.Value=$newType(0,$kindStruct,"js.Value",true,"syscall/js",true,function(v_,inited_,_$2_){this.$val=this;if(arguments.length===0){this.v=null;this.inited=false;this._$2=Y.zero();return;}this.v=v_;this.inited=inited_;this._$2=_$2_;});T=$pkg.ValueError=$newType(0,$kindStruct,"js.ValueError",true,"syscall/js",true,function(Method_,Type_){this.$val=this;if(arguments.length===0){this.Method="";this.Type=0;return;}this.Method=Method_;this.Type=Type_;});W=$sliceType($String);X=$funcType([],[],false);Y=$arrayType(X,0);Z=$sliceType(J);AA=$mapType($String,$emptyInterface);AB=$sliceType($emptyInterface);AC=$ptrType(A.Error);AD=$sliceType($Uint8);AE=$ptrType(A.Object);AF=$ptrType(T);B.prototype.String=function(){var a;a=this.$val;if(((a>>0))<0||C.$length<=((a>>0))){$panic(new $String("bad type"));}return((a<0||a>=C.$length)?($throwRuntimeError("index out of range"),undefined):C.$array[C.$offset+a]);};$ptrType(B).prototype.String=function(){return new B(this.$get()).String();};B.prototype.isObject=function(){var a;a=this.$val;return(a===6)||(a===7);};$ptrType(B).prototype.isObject=function(){return new B(this.$get()).isObject();};D=function(){return K($global);};$pkg.Global=D;E=function(){return K(null);};$pkg.Null=E;F=function(){return K(undefined);};$pkg.Undefined=F;G.ptr.prototype.Release=function(){var a;a=this;$exportedFunctions=($parseInt($exportedFunctions)>>0)-1>>0;J.copy(a.Value,E());};G.prototype.Release=function(){return this.$val.Release();};H=function(a){var a;$exportedFunctions=($parseInt($exportedFunctions)>>0)+1>>0;return new G.ptr($clone(K(A.MakeFunc((function $b(b,c){var{b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:d=$makeSlice(Z,c.$length);e=c;f=0;while(true){if(!(f<e.$length)){break;}g=f;h=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);J.copy(((g<0||g>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+g]),K(h));f++;}i=a($clone(K(b),J),d);$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;$s=2;case 2:return j;}return;}var $f={$blk:$b,$c:true,$r,b,c,d,e,f,g,h,i,j,$s};return $f;}))),J));};$pkg.FuncOf=H;I.ptr.prototype.Error=function(){var a;a=this;return"JavaScript error: "+$clone($clone(a.Value,J).Get("message"),J).String();};I.prototype.Error=function(){return this.$val.Error();};K=function(a){var a;if(a===undefined){return new J.ptr(null,false,Y.zero());}return new J.ptr(a,true,Y.zero());};O=function(){if(!($global===null)){L=$id;M=$instanceOf;N=$typeOf;}};P=function(a){var a,b,c,d,e,f;if(a===null){return 1;}b=$internalize(N(a),$String);c=C;d=0;while(true){if(!(d<c.$length)){break;}e=d;f=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);if(b===f){return((e>>0));}d++;}return 6;};Q=function(a){var a,b,c,d,e,f,g;b=a;if($assertType(b,J,true)[1]){c=$clone(b.$val,J);return c;}else if($assertType(b,G,true)[1]){d=$clone(b.$val,G);return d.Value;}else if(b===$ifaceNil){e=b;return E();}else if($assertType(b,$Bool,true)[1]||$assertType(b,$Int,true)[1]||$assertType(b,$Int8,true)[1]||$assertType(b,$Int16,true)[1]||$assertType(b,$Int32,true)[1]||$assertType(b,$Int64,true)[1]||$assertType(b,$Uint,true)[1]||$assertType(b,$Uint8,true)[1]||$assertType(b,$Uint16,true)[1]||$assertType(b,$Uint32,true)[1]||$assertType(b,$Uint64,true)[1]||$assertType(b,$Float32,true)[1]||$assertType(b,$Float64,true)[1]||$assertType(b,$UnsafePointer,true)[1]||$assertType(b,$String,true)[1]||$assertType(b,AA,true)[1]||$assertType(b,AB,true)[1]){f=b;return K(L($externalize(f,$emptyInterface)));}else{g=b;$panic(new $String("ValueOf: invalid value"));}};$pkg.ValueOf=Q;J.ptr.prototype.internal=function(){var a;a=this;if(!a.inited){return undefined;}return a.v;};J.prototype.internal=function(){return this.$val.internal();};J.ptr.prototype.Bool=function(){var a,b;a=this;b=$clone(a,J).Type();if(!((b===2))){$panic(new T.ptr("Value.Bool",b));}return!!($clone(a,J).internal());};J.prototype.Bool=function(){return this.$val.Bool();};R=function(a){var a,b,c,d,e,f;b=new AB([]);c=a;d=0;while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);f=$clone(Q(e),J);b=$append(b,new $jsObjectPtr($clone(f,J).internal()));d++;}return b;};S=function(){var a,b,c,d,e;a=$recover();if($interfaceIsEqual(a,$ifaceNil)){return;}b=$assertType(a,AC,true);c=b[0];d=b[1];if(d){$panic((e=new I.ptr($clone(K(c.Object),J)),new e.constructor.elem(e)));}$panic(a);};J.ptr.prototype.Call=function(a,b){var{a,b,c,d,e,f,g,$s,$deferred,$r,$c}=$restore(this,{a,b});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);c=this;d=$clone(c,J).Type();if(!((d===6))&&!((d===7))){$panic(new T.ptr("Value.Call",d));}e=$clone($clone(c,J).Get(a),J).Type();if(!((e===7))){$panic(new $String("js: Value.Call: property "+a+" is not a function, got "+new B(e).String()));}$deferred.push([S,[]]);g=K((f=$clone(c,J).internal(),f[$externalize(a,$String)].apply(f,$externalize(R(b),AB))));$s=1;case 1:return g;}return;}}catch(err){$err=err;$s=-1;return new J.ptr(null,false,Y.zero());}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:J.ptr.prototype.Call,$c:true,$r,a,b,c,d,e,f,g,$s,$deferred};return $f;}}};J.prototype.Call=function(a,b){return this.$val.Call(a,b);};J.ptr.prototype.Float=function(){var a,b;a=this;b=$clone(a,J).Type();if(!((b===3))){$panic(new T.ptr("Value.Float",b));}return $parseFloat($clone(a,J).internal());};J.prototype.Float=function(){return this.$val.Float();};J.ptr.prototype.Get=function(a){var a,b,c;b=this;c=$clone(b,J).Type();if(!new B(c).isObject()){$panic(new T.ptr("Value.Get",c));}return K($clone(b,J).internal()[$externalize(a,$String)]);};J.prototype.Get=function(a){return this.$val.Get(a);};J.ptr.prototype.Index=function(a){var a,b,c;b=this;c=$clone(b,J).Type();if(!new B(c).isObject()){$panic(new T.ptr("Value.Index",c));}return K($clone(b,J).internal()[a]);};J.prototype.Index=function(a){return this.$val.Index(a);};J.ptr.prototype.Int=function(){var a,b;a=this;b=$clone(a,J).Type();if(!((b===3))){$panic(new T.ptr("Value.Int",b));}return $parseInt($clone(a,J).internal())>>0;};J.prototype.Int=function(){return this.$val.Int();};J.ptr.prototype.InstanceOf=function(a){var a,b;b=this;return!!(M($clone(b,J).internal(),$clone(a,J).internal()));};J.prototype.InstanceOf=function(a){return this.$val.InstanceOf(a);};J.ptr.prototype.Invoke=function(a){var a,b,c;b=this;c=$clone(b,J).Type();if(!((c===7))){$panic(new T.ptr("Value.Invoke",c));}return K($clone(b,J).internal().apply(undefined,$externalize(R(a),AB)));};J.prototype.Invoke=function(a){return this.$val.Invoke(a);};J.ptr.prototype.JSValue=function(){var a;a=this;return a;};J.prototype.JSValue=function(){return this.$val.JSValue();};J.ptr.prototype.Length=function(){var a;a=this;return $parseInt($clone(a,J).internal().length);};J.prototype.Length=function(){return this.$val.Length();};J.ptr.prototype.New=function(a){var{a,b,c,$s,$deferred,$r,$c}=$restore(this,{a});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);b=[b];b[0]=this;$deferred.push([(function(b){return function(){var c,d,e,f,g,h;c=$recover();if($interfaceIsEqual(c,$ifaceNil)){return;}d=$clone(b[0],J).Type();if(!((d===7))){$panic(new T.ptr("Value.New",d));}e=$assertType(c,AC,true);f=e[0];g=e[1];if(g){$panic((h=new I.ptr($clone(K(f.Object),J)),new h.constructor.elem(h)));}$panic(c);};})(b),[]]);c=K(new($global.Function.prototype.bind.apply($clone(b[0],J).internal(),[undefined].concat($externalize(R(a),AB)))));$s=1;case 1:return c;}return;}}catch(err){$err=err;$s=-1;return new J.ptr(null,false,Y.zero());}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:J.ptr.prototype.New,$c:true,$r,a,b,c,$s,$deferred};return $f;}}};J.prototype.New=function(a){return this.$val.New(a);};J.ptr.prototype.Set=function(a,b){var a,b,c,d,e;c=this;d=$clone(c,J).Type();if(!new B(d).isObject()){$panic(new T.ptr("Value.Set",d));}$clone(c,J).internal()[$externalize(a,$String)]=$externalize((e=R(new AB([b])),(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0])),$emptyInterface);};J.prototype.Set=function(a,b){return this.$val.Set(a,b);};J.ptr.prototype.SetIndex=function(a,b){var a,b,c,d,e;c=this;d=$clone(c,J).Type();if(!new B(d).isObject()){$panic(new T.ptr("Value.SetIndex",d));}$clone(c,J).internal()[a]=$externalize((e=R(new AB([b])),(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0])),$emptyInterface);};J.prototype.SetIndex=function(a,b){return this.$val.SetIndex(a,b);};J.ptr.prototype.String=function(){var a,b;a=this;b=$clone(a,J).Type();if(b===(4)){return $internalize($clone(a,J).internal(),$String);}else if(b===(0)){return"<undefined>";}else if(b===(1)){return"<null>";}else if(b===(2)){return"<boolean: "+$internalize($clone(a,J).internal(),$String)+">";}else if(b===(3)){return"<number: "+$internalize($clone(a,J).internal(),$String)+">";}else if(b===(5)){return"<symbol>";}else if(b===(6)){return"<object>";}else if(b===(7)){return"<function>";}else{$panic(new $String("bad type"));}};J.prototype.String=function(){return this.$val.String();};J.ptr.prototype.Truthy=function(){var a;a=this;return!!($clone(a,J).internal());};J.prototype.Truthy=function(){return this.$val.Truthy();};J.ptr.prototype.Type=function(){var a;a=this;return(P($clone(a,J).internal()));};J.prototype.Type=function(){return this.$val.Type();};J.ptr.prototype.IsNull=function(){var a;a=this;return $clone(a,J).Type()===1;};J.prototype.IsNull=function(){return this.$val.IsNull();};J.ptr.prototype.IsUndefined=function(){var a;a=this;return!a.inited;};J.prototype.IsUndefined=function(){return this.$val.IsUndefined();};J.ptr.prototype.IsNaN=function(){var a;a=this;return!!($global.isNaN($clone(a,J).internal()));};J.prototype.IsNaN=function(){return this.$val.IsNaN();};J.ptr.prototype.Delete=function(a){var a,b,c;b=this;c=$clone(b,J).Type();if(!new B(c).isObject()){$panic(new T.ptr("Value.Delete",c));}delete $clone(b,J).internal()[$externalize(a,$String)];};J.prototype.Delete=function(a){return this.$val.Delete(a);};J.ptr.prototype.Equal=function(a){var a,b;b=this;return $clone(b,J).internal()===$clone(a,J).internal();};J.prototype.Equal=function(a){return this.$val.Equal(a);};T.ptr.prototype.Error=function(){var a;a=this;return"syscall/js: call of "+a.Method+" on "+new B(a.Type).String();};T.prototype.Error=function(){return this.$val.Error();};U=function(a,b){var a,b,c,d;c=$parseInt(b.v.length);d=a.$length;if(d<c){c=d;}$copySlice(a,$assertType($internalize(b.v,$emptyInterface),AD));return c;};$pkg.CopyBytesToGo=U;V=function(a,b){var a,b,c,d,e;c=$assertType($internalize(a.v,$emptyInterface),AD,true);d=c[0];e=c[1];if(!e){$panic(new $String("syscall/js: CopyBytesToJS: expected dst to be an Uint8Array"));}return $copySlice(d,b);};$pkg.CopyBytesToJS=V;B.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"isObject",name:"isObject",pkg:"syscall/js",typ:$funcType([],[$Bool],false)}];G.methods=[{prop:"Release",name:"Release",pkg:"",typ:$funcType([],[],false)}];I.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];J.methods=[{prop:"internal",name:"internal",pkg:"syscall/js",typ:$funcType([],[AE],false)},{prop:"Bool",name:"Bool",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Call",name:"Call",pkg:"",typ:$funcType([$String,AB],[J],true)},{prop:"Float",name:"Float",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Get",name:"Get",pkg:"",typ:$funcType([$String],[J],false)},{prop:"Index",name:"Index",pkg:"",typ:$funcType([$Int],[J],false)},{prop:"Int",name:"Int",pkg:"",typ:$funcType([],[$Int],false)},{prop:"InstanceOf",name:"InstanceOf",pkg:"",typ:$funcType([J],[$Bool],false)},{prop:"Invoke",name:"Invoke",pkg:"",typ:$funcType([AB],[J],true)},{prop:"JSValue",name:"JSValue",pkg:"",typ:$funcType([],[J],false)},{prop:"Length",name:"Length",pkg:"",typ:$funcType([],[$Int],false)},{prop:"New",name:"New",pkg:"",typ:$funcType([AB],[J],true)},{prop:"Set",name:"Set",pkg:"",typ:$funcType([$String,$emptyInterface],[],false)},{prop:"SetIndex",name:"SetIndex",pkg:"",typ:$funcType([$Int,$emptyInterface],[],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Truthy",name:"Truthy",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Type",name:"Type",pkg:"",typ:$funcType([],[B],false)},{prop:"IsNull",name:"IsNull",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsUndefined",name:"IsUndefined",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsNaN",name:"IsNaN",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Delete",name:"Delete",pkg:"",typ:$funcType([$String],[],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([J],[$Bool],false)}];AF.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];G.init("",[{prop:"Value",name:"Value",embedded:true,exported:true,typ:J,tag:""}]);I.init("",[{prop:"Value",name:"Value",embedded:true,exported:true,typ:J,tag:""}]);J.init("syscall/js",[{prop:"v",name:"v",embedded:false,exported:false,typ:AE,tag:""},{prop:"inited",name:"inited",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"_$2",name:"_",embedded:false,exported:false,typ:Y,tag:""}]);T.init("",[{prop:"Method",name:"Method",embedded:false,exported:true,typ:$String,tag:""},{prop:"Type",name:"Type",embedded:false,exported:true,typ:B,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}L=null;M=null;N=null;C=new W(["undefined","null","boolean","number","string","symbol","object","function"]);O();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["syscall"]=(function(){var $pkg={},$init,E,B,C,A,D,F,V,Y,AW,BH,BI,BJ,CB,CQ,FK,FC,FF,FH,FJ,FL,FM,FR,FS,FT,FU,L,M,N,O,Q,CG,CH,CI,CJ,CK,CL,CM,CN,CO,CP,CR,CS,EI,g,K,P,BN,BP,BR,BS,BT,BU,BX,BY,BZ,CA,CT,CV,CW,CY,DA,DB,DF,DH,DM,DO,DP,DT,DU,DV,DW,DX,DY,DZ,EC,ED,EE,EV,EY,FA;E=$packages["errors"];B=$packages["internal/itoa"];C=$packages["internal/oserror"];A=$packages["runtime"];D=$packages["sync"];F=$packages["syscall/js"];V=$pkg.Errno=$newType(4,$kindUintptr,"syscall.Errno",true,"syscall",true,null);Y=$pkg.Stat_t=$newType(0,$kindStruct,"syscall.Stat_t",true,"syscall",true,function(Dev_,Ino_,Mode_,Nlink_,Uid_,Gid_,Rdev_,Size_,Blksize_,Blocks_,Atime_,AtimeNsec_,Mtime_,MtimeNsec_,Ctime_,CtimeNsec_){this.$val=this;if(arguments.length===0){this.Dev=new $Int64(0,0);this.Ino=new $Uint64(0,0);this.Mode=0;this.Nlink=0;this.Uid=0;this.Gid=0;this.Rdev=new $Int64(0,0);this.Size=new $Int64(0,0);this.Blksize=0;this.Blocks=0;this.Atime=new $Int64(0,0);this.AtimeNsec=new $Int64(0,0);this.Mtime=new $Int64(0,0);this.MtimeNsec=new $Int64(0,0);this.Ctime=new $Int64(0,0);this.CtimeNsec=new $Int64(0,0);return;}this.Dev=Dev_;this.Ino=Ino_;this.Mode=Mode_;this.Nlink=Nlink_;this.Uid=Uid_;this.Gid=Gid_;this.Rdev=Rdev_;this.Size=Size_;this.Blksize=Blksize_;this.Blocks=Blocks_;this.Atime=Atime_;this.AtimeNsec=AtimeNsec_;this.Mtime=Mtime_;this.MtimeNsec=MtimeNsec_;this.Ctime=Ctime_;this.CtimeNsec=CtimeNsec_;});AW=$pkg.Iovec=$newType(0,$kindStruct,"syscall.Iovec",true,"syscall",true,function(){this.$val=this;if(arguments.length===0){return;}});BH=$pkg.Sockaddr=$newType(8,$kindInterface,"syscall.Sockaddr",true,"syscall",true,null);BI=$pkg.SockaddrInet4=$newType(0,$kindStruct,"syscall.SockaddrInet4",true,"syscall",true,function(Port_,Addr_){this.$val=this;if(arguments.length===0){this.Port=0;this.Addr=FR.zero();return;}this.Port=Port_;this.Addr=Addr_;});BJ=$pkg.SockaddrInet6=$newType(0,$kindStruct,"syscall.SockaddrInet6",true,"syscall",true,function(Port_,ZoneId_,Addr_){this.$val=this;if(arguments.length===0){this.Port=0;this.ZoneId=0;this.Addr=FS.zero();return;}this.Port=Port_;this.ZoneId=ZoneId_;this.Addr=Addr_;});CB=$pkg.RawConn=$newType(8,$kindInterface,"syscall.RawConn",true,"syscall",true,null);CQ=$pkg.jsFile=$newType(0,$kindStruct,"syscall.jsFile",true,"syscall",false,function(path_,entries_,dirIdx_,pos_,seeked_){this.$val=this;if(arguments.length===0){this.path="";this.entries=FC.nil;this.dirIdx=0;this.pos=new $Int64(0,0);this.seeked=false;return;}this.path=path_;this.entries=entries_;this.dirIdx=dirIdx_;this.pos=pos_;this.seeked=seeked_;});FK=$newType(0,$kindStruct,"syscall.callResult",true,"syscall",false,function(val_,err_){this.$val=this;if(arguments.length===0){this.val=new F.Value.ptr(null,false,FM.zero());this.err=$ifaceNil;return;}this.val=val_;this.err=err_;});FC=$sliceType($String);FF=$sliceType($emptyInterface);FH=$ptrType($error);FJ=$ptrType(CQ);FL=$funcType([],[],false);FM=$arrayType(FL,0);FR=$arrayType($Uint8,4);FS=$arrayType($Uint8,16);FT=$funcType([$Uintptr],[],false);FU=$funcType([$Uintptr],[$Bool],false);K=function(h,i){var h,i;$panic(new $String("not implemented"));};P=function(h){var h,i;i=h;if(i===(0)){return $ifaceNil;}else if(i===(11)){return M;}else if(i===(22)){return N;}else if(i===(2)){return O;}return new V(h);};V.prototype.Error=function(){var h,i;h=this.$val;if(0<=((h>>0))&&((h>>0))<2054){i=((h<0||h>=L.length)?($throwRuntimeError("index out of range"),undefined):L[h]);if(!(i==="")){return i;}}return"errno "+B.Itoa(((h>>0)));};$ptrType(V).prototype.Error=function(){return new V(this.$get()).Error();};V.prototype.Is=function(h){var h,i,j;i=this.$val;j=h;if($interfaceIsEqual(j,(C.ErrPermission))){return(i===13)||(i===1);}else if($interfaceIsEqual(j,(C.ErrExist))){return(i===17)||(i===39);}else if($interfaceIsEqual(j,(C.ErrNotExist))){return i===2;}return false;};$ptrType(V).prototype.Is=function(h){return new V(this.$get()).Is(h);};V.prototype.Temporary=function(){var h;h=this.$val;return(h===4)||(h===24)||new V(h).Timeout();};$ptrType(V).prototype.Temporary=function(){return new V(this.$get()).Temporary();};V.prototype.Timeout=function(){var h;h=this.$val;return(h===11)||(h===11)||(h===110);};$ptrType(V).prototype.Timeout=function(){return new V(this.$get()).Timeout();};BN=function(h){var h;return new V(38);};$pkg.StopIO=BN;BP=function(h){var h,i,j,k,l,m,n;i=0;j=$ifaceNil;k=$ifaceNil;l=0;m=$ifaceNil;n=new V(38);i=l;j=m;k=n;return[i,j,k];};$pkg.Accept=BP;BR=function(h,i,j){var h,i,j,k,l,m,n,o,p;k=0;l=$ifaceNil;m=$ifaceNil;n=0;o=$ifaceNil;p=new V(38);k=n;l=o;m=p;return[k,l,m];};$pkg.Recvfrom=BR;BS=function(h,i,j,k){var h,i,j,k;return new V(38);};$pkg.Sendto=BS;BT=function(h,i,j,k){var h,i,j,k,l,m,n,o,p,q,r,s,t,u;l=0;m=0;n=0;o=$ifaceNil;p=$ifaceNil;q=0;r=0;s=0;t=$ifaceNil;u=new V(38);l=q;m=r;n=s;o=t;p=u;return[l,m,n,o,p];};$pkg.Recvmsg=BT;BU=function(h,i,j,k,l){var h,i,j,k,l,m,n,o,p;m=0;n=$ifaceNil;o=0;p=new V(38);m=o;n=p;return[m,n];};$pkg.SendmsgN=BU;BX=function(h,i){var h,i;return new V(38);};$pkg.SetReadDeadline=BX;BY=function(h,i){var h,i;return new V(38);};$pkg.SetWriteDeadline=BY;BZ=function(h,i){var h,i;return new V(38);};$pkg.Shutdown=BZ;CA=function(h,i){var h,i;return $ifaceNil;};$pkg.SetNonblock=CA;CT=function(h){var{h,i,j,k,l,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:$r=CR.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=(j=$mapIndex(CS,$Int.keyFor(h)),j!==undefined?[j.v,true]:[FJ.nil,false]);k=i[0];l=i[1];$r=CR.Unlock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!l){$s=-1;return[FJ.nil,new V(9)];}$s=-1;return[k,$ifaceNil];}return;}var $f={$blk:CT,$c:true,$r,h,i,j,k,l,$s};return $f;};CV=function(h){var{h,i,j,k,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:$r=CR.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$mapDelete(CS,$Int.keyFor(h));$r=CR.Unlock();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=FA("close",new FF([new $Int(h)]));$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[1];$s=-1;return k;}return;}var $f={$blk:CV,$c:true,$r,h,i,j,k,$s};return $f;};$pkg.Close=CV;CW=function(h){var h;};$pkg.CloseOnExec=CW;CY=function(h,i){var{h,i,j,k,l,m,n,o,p,q,r,$s,$r,$c}=$restore(this,{h,i});$s=$s||0;s:while(true){switch($s){case 0:k=CT(h);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];if(!($interfaceIsEqual(m,$ifaceNil))){$s=-1;return[0,m];}if(l.entries===FC.nil){$s=-1;return[0,new V(22)];}n=0;while(true){if(!(l.dirIdx<l.entries.$length)){break;}q=(o=l.entries,p=l.dirIdx,((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]));r=2+q.length>>0;if(r>i.$length){break;}(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0]=((r<<24>>>24)));(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1]=(((r>>8>>0)<<24>>>24)));$copyString($subslice(i,2),q);i=$subslice(i,r);n=n+(r)>>0;l.dirIdx=l.dirIdx+(1)>>0;}$s=-1;return[n,$ifaceNil];}return;}var $f={$blk:CY,$c:true,$r,h,i,j,k,l,m,n,o,p,q,r,$s};return $f;};$pkg.ReadDirent=CY;DA=function(h,i){var{h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{h,i});$s=$s||0;s:while(true){switch($s){case 0:j=EC(h);if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return j;}l=FA("lstat",new FF([new $String(h)]));$s=1;case 1:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;m=$clone(k[0],F.Value);n=k[1];if(!($interfaceIsEqual(n,$ifaceNil))){$s=-1;return n;}EY(i,$clone(m,F.Value));$s=-1;return $ifaceNil;}return;}var $f={$blk:DA,$c:true,$r,h,i,j,k,l,m,n,$s};return $f;};$pkg.Lstat=DA;DB=function(h,i){var{h,i,j,k,l,m,$s,$r,$c}=$restore(this,{h,i});$s=$s||0;s:while(true){switch($s){case 0:k=FA("fstat",new FF([new $Int(h)]));$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=$clone(j[0],F.Value);m=j[1];if(!($interfaceIsEqual(m,$ifaceNil))){$s=-1;return m;}EY(i,$clone(l,F.Value));$s=-1;return $ifaceNil;}return;}var $f={$blk:DB,$c:true,$r,h,i,j,k,l,m,$s};return $f;};$pkg.Fstat=DB;DF=function(h,i){var{h,i,j,k,l,$s,$r,$c}=$restore(this,{h,i});$s=$s||0;s:while(true){switch($s){case 0:k=FA("fchmod",new FF([new $Int(h),new $Uint32(i)]));$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[1];$s=-1;return l;}return;}var $f={$blk:DF,$c:true,$r,h,i,j,k,l,$s};return $f;};$pkg.Fchmod=DF;DH=function(h,i,j){var{h,i,j,k,l,m,$s,$r,$c}=$restore(this,{h,i,j});$s=$s||0;s:while(true){switch($s){case 0:l=FA("fchown",new FF([new $Int(h),new $Uint32(((i>>>0))),new $Uint32(((j>>>0)))]));$s=1;case 1:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;m=k[1];$s=-1;return m;}return;}var $f={$blk:DH,$c:true,$r,h,i,j,k,l,m,$s};return $f;};$pkg.Fchown=DH;DM=function(h,i){var{h,i,j,k,l,$s,$r,$c}=$restore(this,{h,i});$s=$s||0;s:while(true){switch($s){case 0:k=FA("ftruncate",new FF([new $Int(h),i]));$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[1];$s=-1;return l;}return;}var $f={$blk:DM,$c:true,$r,h,i,j,k,l,$s};return $f;};$pkg.Ftruncate=DM;DO=function(h){var{h,i,j,k,l,m,$s,$deferred,$r,$c}=$restore(this,{h});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);i=[i];i[0]=$ifaceNil;j=EC(h);if(!($interfaceIsEqual(j,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:i[0]=j;k=i[0];$s=3;case 3:return k;case 2:$deferred.push([ED,[(i.$ptr||(i.$ptr=new FH(function(){return this.$target[0];},function($v){this.$target[0]=$v;},i)))]]);l=$clone(CG,F.Value).Call("chdir",new FF([new $String(h)]));$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}l;m=i[0];$s=5;case 5:return m;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return i[0];}if($curGoroutine.asleep){var $f={$blk:DO,$c:true,$r,h,i,j,k,l,m,$s,$deferred};return $f;}}};$pkg.Chdir=DO;DP=function(h){var{h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:j=CT(h);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];if(!($interfaceIsEqual(l,$ifaceNil))){$s=-1;return l;}m=DO(k.path);$s=2;case 2:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;$s=3;case 3:return n;}return;}var $f={$blk:DP,$c:true,$r,h,i,j,k,l,m,n,$s};return $f;};$pkg.Fchdir=DP;DT=function(h){var{h,i,j,k,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:j=FA("fsync",new FF([new $Int(h)]));$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[1];$s=-1;return k;}return;}var $f={$blk:DT,$c:true,$r,h,i,j,k,$s};return $f;};$pkg.Fsync=DT;DU=function(h,i){var{aa,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{h,i});$s=$s||0;s:while(true){switch($s){case 0:k=CT(h);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];if(!($interfaceIsEqual(m,$ifaceNil))){$s=-1;return[0,m];}if(l.seeked){$s=2;continue;}$s=3;continue;case 2:o=DW(h,i,l.pos);$s=4;case 4:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];q=n[1];l.pos=(r=l.pos,s=(new $Int64(0,p)),new $Int64(r.$high+s.$high,r.$low+s.$low));$s=-1;return[p,q];case 3:t=$clone(CJ,F.Value).New(new FF([new $Int(i.$length)]));$s=5;case 5:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}u=$clone(t,F.Value);w=FA("read",new FF([new $Int(h),new u.constructor.elem(u),new $Int(0),new $Int(i.$length),$ifaceNil]));$s=6;case 6:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}v=w;x=$clone(v[0],F.Value);m=v[1];if(!($interfaceIsEqual(m,$ifaceNil))){$s=-1;return[0,m];}F.CopyBytesToGo(i,$clone(u,F.Value));y=$clone(x,F.Value).Int();l.pos=(z=l.pos,aa=(new $Int64(0,y)),new $Int64(z.$high+aa.$high,z.$low+aa.$low));$s=-1;return[y,m];}return;}var $f={$blk:DU,$c:true,$r,aa,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};$pkg.Read=DU;DV=function(h,i){var{aa,ab,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{h,i});$s=$s||0;s:while(true){switch($s){case 0:k=CT(h);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];if(!($interfaceIsEqual(m,$ifaceNil))){$s=-1;return[0,m];}if(l.seeked){$s=2;continue;}$s=3;continue;case 2:o=DX(h,i,l.pos);$s=4;case 4:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;p=n[0];q=n[1];l.pos=(r=l.pos,s=(new $Int64(0,p)),new $Int64(r.$high+s.$high,r.$low+s.$low));$s=-1;return[p,q];case 3:if(false&&((h===1)||(h===2))){t=K(h,i);if(t<0){$s=-1;return[0,P(((-t>>>0)))];}$s=-1;return[t,$ifaceNil];}u=$clone(CJ,F.Value).New(new FF([new $Int(i.$length)]));$s=5;case 5:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}v=$clone(u,F.Value);F.CopyBytesToJS($clone(v,F.Value),i);x=FA("write",new FF([new $Int(h),new v.constructor.elem(v),new $Int(0),new $Int(i.$length),$ifaceNil]));$s=6;case 6:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;y=$clone(w[0],F.Value);m=w[1];if(!($interfaceIsEqual(m,$ifaceNil))){$s=-1;return[0,m];}z=$clone(y,F.Value).Int();l.pos=(aa=l.pos,ab=(new $Int64(0,z)),new $Int64(aa.$high+ab.$high,aa.$low+ab.$low));$s=-1;return[z,m];}return;}var $f={$blk:DV,$c:true,$r,aa,ab,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};$pkg.Write=DV;DW=function(h,i,j){var{h,i,j,k,l,m,n,o,p,$s,$r,$c}=$restore(this,{h,i,j});$s=$s||0;s:while(true){switch($s){case 0:k=$clone(CJ,F.Value).New(new FF([new $Int(i.$length)]));$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=$clone(k,F.Value);n=FA("read",new FF([new $Int(h),new l.constructor.elem(l),new $Int(0),new $Int(i.$length),j]));$s=2;case 2:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=$clone(m[0],F.Value);p=m[1];if(!($interfaceIsEqual(p,$ifaceNil))){$s=-1;return[0,p];}F.CopyBytesToGo(i,$clone(l,F.Value));$s=-1;return[$clone(o,F.Value).Int(),$ifaceNil];}return;}var $f={$blk:DW,$c:true,$r,h,i,j,k,l,m,n,o,p,$s};return $f;};$pkg.Pread=DW;DX=function(h,i,j){var{h,i,j,k,l,m,n,o,p,$s,$r,$c}=$restore(this,{h,i,j});$s=$s||0;s:while(true){switch($s){case 0:k=$clone(CJ,F.Value).New(new FF([new $Int(i.$length)]));$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=$clone(k,F.Value);F.CopyBytesToJS($clone(l,F.Value),i);n=FA("write",new FF([new $Int(h),new l.constructor.elem(l),new $Int(0),new $Int(i.$length),j]));$s=2;case 2:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=$clone(m[0],F.Value);p=m[1];if(!($interfaceIsEqual(p,$ifaceNil))){$s=-1;return[0,p];}$s=-1;return[$clone(o,F.Value).Int(),$ifaceNil];}return;}var $f={$blk:DX,$c:true,$r,h,i,j,k,l,m,n,o,p,$s};return $f;};$pkg.Pwrite=DX;DY=function(h,i,j){var{h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s,$r,$c}=$restore(this,{h,i,j});$s=$s||0;s:while(true){switch($s){case 0:k=[k];m=CT(h);$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[0];o=l[1];if(!($interfaceIsEqual(o,$ifaceNil))){$s=-1;return[new $Int64(0,0),o];}p=new $Int64(0,0);q=j;if(q===(0)){$s=3;continue;}if(q===(1)){$s=4;continue;}if(q===(2)){$s=5;continue;}$s=6;continue;case 3:p=i;$s=7;continue;case 4:p=(r=n.pos,new $Int64(r.$high+i.$high,r.$low+i.$low));$s=7;continue;case 5:k[0]=new Y.ptr(new $Int64(0,0),new $Uint64(0,0),0,0,0,0,new $Int64(0,0),new $Int64(0,0),0,0,new $Int64(0,0),new $Int64(0,0),new $Int64(0,0),new $Int64(0,0),new $Int64(0,0),new $Int64(0,0));s=DB(h,k[0]);$s=8;case 8:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=s;if(!($interfaceIsEqual(t,$ifaceNil))){$s=-1;return[new $Int64(0,0),t];}p=(u=k[0].Size,new $Int64(u.$high+i.$high,u.$low+i.$low));$s=7;continue;case 6:$s=-1;return[new $Int64(0,0),P(22)];case 7:case 2:if((p.$high<0||(p.$high===0&&p.$low<0))){$s=-1;return[new $Int64(0,0),P(22)];}n.seeked=true;n.dirIdx=0;n.pos=p;$s=-1;return[p,$ifaceNil];}return;}var $f={$blk:DY,$c:true,$r,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s};return $f;};$pkg.Seek=DY;DZ=function(h){var h;return[0,new V(38)];};$pkg.Dup=DZ;EC=function(h){var h,i;if(h===""){return new V(22);}i=0;while(true){if(!(i<h.length)){break;}if(h.charCodeAt(i)===0){return new V(22);}i=i+(1)>>0;}return $ifaceNil;};ED=function(h){var h,i,j,k,l;i=$recover();if(!($interfaceIsEqual(i,$ifaceNil))){j=$assertType(i,F.Error,true);k=$clone(j[0],F.Error);l=j[1];if(!l){$panic(i);}h.$set(EE($clone(k.Value,F.Value)));}};EE=function(h){var h,i,j,k,l;i=(j=$mapIndex(Q,$String.keyFor($clone($clone(h,F.Value).Get("code"),F.Value).String())),j!==undefined?[j.v,true]:[0,false]);k=i[0];l=i[1];if(!l){$panic(new h.constructor.elem(h));}return P((k));};EV=function(){var{h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:h=$clone($clone(F.Global(),F.Value).Get("process"),F.Value);if($clone(h,F.Value).IsUndefined()){$s=-1;return FC.nil;}i=$clone($clone(h,F.Value).Get("env"),F.Value);j=$clone($clone(F.Global(),F.Value).Get("Object"),F.Value).Call("keys",new FF([new i.constructor.elem(i)]));$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=$clone(j,F.Value);l=$makeSlice(FC,$clone(k,F.Value).Length());m=0;while(true){if(!(m<$clone(k,F.Value).Length())){break;}n=$clone($clone(k,F.Value).Index(m),F.Value).String();((m<0||m>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+m]=n+"="+$clone($clone(i,F.Value).Get(n),F.Value).String());m=m+(1)>>0;}$s=-1;return l;}return;}var $f={$blk:EV,$c:true,$r,h,i,j,k,l,m,n,$s};return $f;};EY=function(h,i){var h,i,j,k,l;h.Dev=(new $Int64(0,$clone($clone(i,F.Value).Get("dev"),F.Value).Int()));h.Ino=(new $Uint64(0,$clone($clone(i,F.Value).Get("ino"),F.Value).Int()));h.Mode=(($clone($clone(i,F.Value).Get("mode"),F.Value).Int()>>>0));h.Nlink=(($clone($clone(i,F.Value).Get("nlink"),F.Value).Int()>>>0));h.Uid=(($clone($clone(i,F.Value).Get("uid"),F.Value).Int()>>>0));h.Gid=(($clone($clone(i,F.Value).Get("gid"),F.Value).Int()>>>0));h.Rdev=(new $Int64(0,$clone($clone(i,F.Value).Get("rdev"),F.Value).Int()));h.Size=(new $Int64(0,$clone($clone(i,F.Value).Get("size"),F.Value).Int()));h.Blksize=(($clone($clone(i,F.Value).Get("blksize"),F.Value).Int()>>0));h.Blocks=(($clone($clone(i,F.Value).Get("blocks"),F.Value).Int()>>0));j=(new $Int64(0,$clone($clone(i,F.Value).Get("atimeMs"),F.Value).Float()));h.Atime=$div64(j,new $Int64(0,1000),false);h.AtimeNsec=$mul64(($div64(j,new $Int64(0,1000),true)),new $Int64(0,1000000));k=(new $Int64(0,$clone($clone(i,F.Value).Get("mtimeMs"),F.Value).Float()));h.Mtime=$div64(k,new $Int64(0,1000),false);h.MtimeNsec=$mul64(($div64(k,new $Int64(0,1000),true)),new $Int64(0,1000000));l=(new $Int64(0,$clone($clone(i,F.Value).Get("ctimeMs"),F.Value).Float()));h.Ctime=$div64(l,new $Int64(0,1000),false);h.CtimeNsec=$mul64(($div64(l,new $Int64(0,1000),true)),new $Int64(0,1000000));};FA=function(h,i){var{h,i,j,k,l,m,n,o,p,$s,$deferred,$r,$c}=$restore(this,{h,i});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);j=[j];j[0]=new $Chan(FK,1);k=$clone(F.FuncOf((function(j){return function $b(k,l){var{k,l,m,n,$s,$r,$c}=$restore(this,{k,l});$s=$s||0;s:while(true){switch($s){case 0:m=new FK.ptr(new F.Value.ptr(null,false,FM.zero()),$ifaceNil);if(l.$length>=1){n=$clone((0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0]),F.Value);if(!$clone(n,F.Value).IsUndefined()&&!$clone(n,F.Value).IsNull()){m.err=EE($clone(n,F.Value));}}F.Value.copy(m.val,F.Undefined());if(l.$length>=2){F.Value.copy(m.val,(1>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+1]));}$r=$send(j[0],$clone($clone(m,FK),FK));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return $ifaceNil;}return;}var $f={$blk:$b,$c:true,$r,k,l,m,n,$s};return $f;};})(j)),F.Func);$deferred.push([$methodVal($clone(k,F.Func),"Release"),[]]);if($clone($clone(CH,F.Value).Get(h),F.Value).IsUndefined()){$s=1;continue;}$s=2;continue;case 1:l=[F.Undefined(),new V(38)];$s=3;case 3:return l;case 2:m=$clone(CH,F.Value).Call(h,$append(i,new k.constructor.elem(k)));$s=4;case 4:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;n=$recv(j[0]);$s=5;case 5:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=$clone(n[0],FK);p=[o.val,o.err];$s=6;case 6:return p;}return;}}catch(err){$err=err;$s=-1;return[new F.Value.ptr(null,false,FM.zero()),$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:FA,$c:true,$r,h,i,j,k,l,m,n,o,p,$s,$deferred};return $f;}}};V.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Is",name:"Is",pkg:"",typ:$funcType([$error],[$Bool],false)},{prop:"Temporary",name:"Temporary",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Timeout",name:"Timeout",pkg:"",typ:$funcType([],[$Bool],false)}];Y.init("",[{prop:"Dev",name:"Dev",embedded:false,exported:true,typ:$Int64,tag:""},{prop:"Ino",name:"Ino",embedded:false,exported:true,typ:$Uint64,tag:""},{prop:"Mode",name:"Mode",embedded:false,exported:true,typ:$Uint32,tag:""},{prop:"Nlink",name:"Nlink",embedded:false,exported:true,typ:$Uint32,tag:""},{prop:"Uid",name:"Uid",embedded:false,exported:true,typ:$Uint32,tag:""},{prop:"Gid",name:"Gid",embedded:false,exported:true,typ:$Uint32,tag:""},{prop:"Rdev",name:"Rdev",embedded:false,exported:true,typ:$Int64,tag:""},{prop:"Size",name:"Size",embedded:false,exported:true,typ:$Int64,tag:""},{prop:"Blksize",name:"Blksize",embedded:false,exported:true,typ:$Int32,tag:""},{prop:"Blocks",name:"Blocks",embedded:false,exported:true,typ:$Int32,tag:""},{prop:"Atime",name:"Atime",embedded:false,exported:true,typ:$Int64,tag:""},{prop:"AtimeNsec",name:"AtimeNsec",embedded:false,exported:true,typ:$Int64,tag:""},{prop:"Mtime",name:"Mtime",embedded:false,exported:true,typ:$Int64,tag:""},{prop:"MtimeNsec",name:"MtimeNsec",embedded:false,exported:true,typ:$Int64,tag:""},{prop:"Ctime",name:"Ctime",embedded:false,exported:true,typ:$Int64,tag:""},{prop:"CtimeNsec",name:"CtimeNsec",embedded:false,exported:true,typ:$Int64,tag:""}]);AW.init("",[]);BH.init([]);BI.init("",[{prop:"Port",name:"Port",embedded:false,exported:true,typ:$Int,tag:""},{prop:"Addr",name:"Addr",embedded:false,exported:true,typ:FR,tag:""}]);BJ.init("",[{prop:"Port",name:"Port",embedded:false,exported:true,typ:$Int,tag:""},{prop:"ZoneId",name:"ZoneId",embedded:false,exported:true,typ:$Uint32,tag:""},{prop:"Addr",name:"Addr",embedded:false,exported:true,typ:FS,tag:""}]);CB.init([{prop:"Control",name:"Control",pkg:"",typ:$funcType([FT],[$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([FU],[$error],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([FU],[$error],false)}]);CQ.init("syscall",[{prop:"path",name:"path",embedded:false,exported:false,typ:$String,tag:""},{prop:"entries",name:"entries",embedded:false,exported:false,typ:FC,tag:""},{prop:"dirIdx",name:"dirIdx",embedded:false,exported:false,typ:$Int,tag:""},{prop:"pos",name:"pos",embedded:false,exported:false,typ:$Int64,tag:""},{prop:"seeked",name:"seeked",embedded:false,exported:false,typ:$Bool,tag:""}]);FK.init("syscall",[{prop:"val",name:"val",embedded:false,exported:false,typ:F.Value,tag:""},{prop:"err",name:"err",embedded:false,exported:false,typ:$error,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=E.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.ForkLock=new D.RWMutex.ptr(new D.Mutex.ptr(0,0),0,0,0,0);CR=new D.Mutex.ptr(0,0);L=$toNativeArray($kindString,["","Operation not permitted","No such file or directory","No such process","Interrupted system call","I/O error","No such device or address","Argument list too long","Exec format error","Bad file number","No child processes","Try again","Out of memory","Permission denied","Bad address","","Device or resource busy","File exists","Cross-device link","No such device","Not a directory","Is a directory","Invalid argument","File table overflow","Too many open files","Not a typewriter","","File too large","No space left on device","Illegal seek","Read-only file system","Too many links","Broken pipe","Math arg out of domain of func","Math result not representable","Deadlock condition","File name too long","No record locks available","not implemented on js","Directory not empty","Too many symbolic links","","No message of desired type","Identifier removed","Channel number out of range","Level 2 not synchronized","Level 3 halted","Level 3 reset","Link number out of range","Protocol driver not attached","No CSI structure available","Level 2 halted","Invalid exchange","Invalid request descriptor","Exchange full","No anode","Invalid request code","Invalid slot","","Bad font file fmt","Device not a stream","No data (for no delay io)","Timer expired","Out of streams resources","Machine is not on the network","Package not installed","The object is remote","The link has been severed","Advertise error","Srmount error","Communication error on send","Protocol error","Multihop attempted","Cross mount point (not really error)","Trying to read unreadable message","Value too large for defined data type","Given log. name not unique","f.d. invalid for this operation","Remote address changed","Can't access a needed shared lib","Accessing a corrupted shared lib",".lib section in a.out corrupted","Attempting to link in too many libs","Attempting to exec a shared library","","","","","Socket operation on non-socket","Destination address required","Message too long","Protocol wrong type for socket","Protocol not available","Unknown protocol","Socket type not supported","Operation not supported on transport endpoint","Protocol family not supported","Address family not supported by protocol family","Address already in use","Address not available","Network interface is not configured","Network is unreachable","","Connection aborted","Connection reset by peer","No buffer space available","Socket is already connected","Socket is not connected","Can't send after socket shutdown","","Connection timed out","Connection refused","Host is down","Host is unreachable","Socket already connected","Connection already in progress","","","","","","","Quota exceeded","No medium (in tape drive)","","Operation canceled.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Inode is remote (not really error)","Inappropriate file type or format","No more files","","No such host or network path","Filename exists with different case"]);M=new V(11);N=new V(22);O=new V(2);Q=$makeMap($String.keyFor,[{k:"EPERM",v:1},{k:"ENOENT",v:2},{k:"ESRCH",v:3},{k:"EINTR",v:4},{k:"EIO",v:5},{k:"ENXIO",v:6},{k:"E2BIG",v:7},{k:"ENOEXEC",v:8},{k:"EBADF",v:9},{k:"ECHILD",v:10},{k:"EAGAIN",v:11},{k:"ENOMEM",v:12},{k:"EACCES",v:13},{k:"EFAULT",v:14},{k:"EBUSY",v:16},{k:"EEXIST",v:17},{k:"EXDEV",v:18},{k:"ENODEV",v:19},{k:"ENOTDIR",v:20},{k:"EISDIR",v:21},{k:"EINVAL",v:22},{k:"ENFILE",v:23},{k:"EMFILE",v:24},{k:"ENOTTY",v:25},{k:"EFBIG",v:27},{k:"ENOSPC",v:28},{k:"ESPIPE",v:29},{k:"EROFS",v:30},{k:"EMLINK",v:31},{k:"EPIPE",v:32},{k:"ENAMETOOLONG",v:36},{k:"ENOSYS",v:38},{k:"EDQUOT",v:122},{k:"EDOM",v:33},{k:"ERANGE",v:34},{k:"EDEADLK",v:35},{k:"ENOLCK",v:37},{k:"ENOTEMPTY",v:39},{k:"ELOOP",v:40},{k:"ENOMSG",v:42},{k:"EIDRM",v:43},{k:"ECHRNG",v:44},{k:"EL2NSYNC",v:45},{k:"EL3HLT",v:46},{k:"EL3RST",v:47},{k:"ELNRNG",v:48},{k:"EUNATCH",v:49},{k:"ENOCSI",v:50},{k:"EL2HLT",v:51},{k:"EBADE",v:52},{k:"EBADR",v:53},{k:"EXFULL",v:54},{k:"ENOANO",v:55},{k:"EBADRQC",v:56},{k:"EBADSLT",v:57},{k:"EDEADLOCK",v:35},{k:"EBFONT",v:59},{k:"ENOSTR",v:60},{k:"ENODATA",v:61},{k:"ETIME",v:62},{k:"ENOSR",v:63},{k:"ENONET",v:64},{k:"ENOPKG",v:65},{k:"EREMOTE",v:66},{k:"ENOLINK",v:67},{k:"EADV",v:68},{k:"ESRMNT",v:69},{k:"ECOMM",v:70},{k:"EPROTO",v:71},{k:"EMULTIHOP",v:72},{k:"EDOTDOT",v:73},{k:"EBADMSG",v:74},{k:"EOVERFLOW",v:75},{k:"ENOTUNIQ",v:76},{k:"EBADFD",v:77},{k:"EREMCHG",v:78},{k:"ELIBACC",v:79},{k:"ELIBBAD",v:80},{k:"ELIBSCN",v:81},{k:"ELIBMAX",v:82},{k:"ELIBEXEC",v:83},{k:"EILSEQ",v:84},{k:"EUSERS",v:87},{k:"ENOTSOCK",v:88},{k:"EDESTADDRREQ",v:89},{k:"EMSGSIZE",v:90},{k:"EPROTOTYPE",v:91},{k:"ENOPROTOOPT",v:92},{k:"EPROTONOSUPPORT",v:93},{k:"ESOCKTNOSUPPORT",v:94},{k:"EOPNOTSUPP",v:95},{k:"EPFNOSUPPORT",v:96},{k:"EAFNOSUPPORT",v:97},{k:"EADDRINUSE",v:98},{k:"EADDRNOTAVAIL",v:99},{k:"ENETDOWN",v:100},{k:"ENETUNREACH",v:101},{k:"ENETRESET",v:102},{k:"ECONNABORTED",v:103},{k:"ECONNRESET",v:104},{k:"ENOBUFS",v:105},{k:"EISCONN",v:106},{k:"ENOTCONN",v:107},{k:"ESHUTDOWN",v:108},{k:"ETOOMANYREFS",v:109},{k:"ETIMEDOUT",v:110},{k:"ECONNREFUSED",v:111},{k:"EHOSTDOWN",v:112},{k:"EHOSTUNREACH",v:113},{k:"EALREADY",v:114},{k:"EINPROGRESS",v:115},{k:"ESTALE",v:116},{k:"ENOTSUP",v:95},{k:"ENOMEDIUM",v:123},{k:"ECANCELED",v:125},{k:"ELBIN",v:2048},{k:"EFTYPE",v:2049},{k:"ENMFILE",v:2050},{k:"EPROCLIM",v:2051},{k:"ENOSHARE",v:2052},{k:"ECASECLASH",v:2053},{k:"EWOULDBLOCK",v:11}]);CG=$clone($clone(F.Global(),F.Value).Get("process"),F.Value);CH=$clone($clone(F.Global(),F.Value).Get("fs"),F.Value);CI=$clone($clone(CH,F.Value).Get("constants"),F.Value);CJ=$clone($clone(F.Global(),F.Value).Get("Uint8Array"),F.Value);CK=$clone($clone(CI,F.Value).Get("O_WRONLY"),F.Value).Int();CL=$clone($clone(CI,F.Value).Get("O_RDWR"),F.Value).Int();CM=$clone($clone(CI,F.Value).Get("O_CREAT"),F.Value).Int();CN=$clone($clone(CI,F.Value).Get("O_TRUNC"),F.Value).Int();CO=$clone($clone(CI,F.Value).Get("O_APPEND"),F.Value).Int();CP=$clone($clone(CI,F.Value).Get("O_EXCL"),F.Value).Int();CS=$makeMap($Int.keyFor,[{k:0,v:new CQ.ptr("",FC.nil,0,new $Int64(0,0),false)},{k:1,v:new CQ.ptr("",FC.nil,0,new $Int64(0,0),false)},{k:2,v:new CQ.ptr("",FC.nil,0,new $Int64(0,0),false)}]);g=EV();$s=7;case 7:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}EI=g;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["internal/syscall/unix"]=(function(){var $pkg={},$init,A,B,C,D,E,F,G,H,I,J;A=$packages["syscall"];B=function(a){var a,b,c,d,e;b=false;c=$ifaceNil;d=false;e=$ifaceNil;b=d;c=e;return[b,c];};$pkg.IsNonblock=B;C=function(a,b,c,d){var a,b,c,d;return[0,new A.Errno(38)];};$pkg.RecvfromInet4=C;D=function(a,b,c,d){var a,b,c,d,e,f,g,h;e=0;f=$ifaceNil;g=0;h=new A.Errno(38);e=g;f=h;return[e,f];};$pkg.RecvfromInet6=D;E=function(a,b,c,d){var a,b,c,d,e;e=$ifaceNil;e=new A.Errno(38);return e;};$pkg.SendtoInet4=E;F=function(a,b,c,d){var a,b,c,d,e;e=$ifaceNil;e=new A.Errno(38);return e;};$pkg.SendtoInet6=F;G=function(a,b,c,d,e){var a,b,c,d,e,f,g,h,i;f=0;g=$ifaceNil;h=0;i=new A.Errno(38);f=h;g=i;return[f,g];};$pkg.SendmsgNInet4=G;H=function(a,b,c,d,e){var a,b,c,d,e,f,g,h,i;f=0;g=$ifaceNil;h=0;i=new A.Errno(38);f=h;g=i;return[f,g];};$pkg.SendmsgNInet6=H;I=function(a,b,c,d,e){var a,b,c,d,e,f,g,h,i,j,k,l,m;f=0;g=0;h=0;i=$ifaceNil;j=0;k=0;l=0;m=new A.Errno(38);f=j;g=k;h=l;i=m;return[f,g,h,i];};$pkg.RecvmsgInet4=I;J=function(a,b,c,d,e){var a,b,c,d,e,f,g,h,i,j,k,l,m;f=0;g=0;h=0;i=$ifaceNil;j=0;k=0;l=0;m=new A.Errno(38);f=j;g=k;h=l;i=m;return[f,g,h,i];};$pkg.RecvmsgInet6=J;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["github.com/gopherjs/gopherjs/nosync"]=(function(){var $pkg={},$init,A,B,C,E,F,G,H,I,J,K,L,N,O,P,Q;A=$pkg.Pool=$newType(0,$kindStruct,"nosync.Pool",true,"github.com/gopherjs/gopherjs/nosync",true,function(store_,New_){this.$val=this;if(arguments.length===0){this.store=G.nil;this.New=$throwNilPointerError;return;}this.store=store_;this.New=New_;});B=$pkg.Once=$newType(0,$kindStruct,"nosync.Once",true,"github.com/gopherjs/gopherjs/nosync",true,function(doing_,done_){this.$val=this;if(arguments.length===0){this.doing=false;this.done=false;return;}this.doing=doing_;this.done=done_;});C=$pkg.Mutex=$newType(0,$kindStruct,"nosync.Mutex",true,"github.com/gopherjs/gopherjs/nosync",true,function(locked_){this.$val=this;if(arguments.length===0){this.locked=false;return;}this.locked=locked_;});E=$pkg.WaitGroup=$newType(0,$kindStruct,"nosync.WaitGroup",true,"github.com/gopherjs/gopherjs/nosync",true,function(counter_){this.$val=this;if(arguments.length===0){this.counter=0;return;}this.counter=counter_;});F=$pkg.Map=$newType(0,$kindStruct,"nosync.Map",true,"github.com/gopherjs/gopherjs/nosync",true,function(m_){this.$val=this;if(arguments.length===0){this.m=false;return;}this.m=m_;});G=$sliceType($emptyInterface);H=$ptrType(A);I=$funcType([],[$emptyInterface],false);J=$funcType([],[],false);K=$ptrType(B);L=$ptrType(C);N=$ptrType(E);O=$funcType([$emptyInterface,$emptyInterface],[$Bool],false);P=$ptrType(F);Q=$mapType($emptyInterface,$emptyInterface);A.ptr.prototype.Get=function(){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;if(a.store.$length===0){$s=1;continue;}$s=2;continue;case 1:if(!(a.New===$throwNilPointerError)){$s=3;continue;}$s=4;continue;case 3:b=a.New();$s=5;case 5:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;$s=6;case 6:return c;case 4:$s=-1;return $ifaceNil;case 2:f=(d=a.store,e=a.store.$length-1>>0,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]));a.store=$subslice(a.store,0,(a.store.$length-1>>0));$s=-1;return f;}return;}var $f={$blk:A.ptr.prototype.Get,$c:true,$r,a,b,c,d,e,f,$s};return $f;};A.prototype.Get=function(){return this.$val.Get();};A.ptr.prototype.Put=function(a){var a,b;b=this;if($interfaceIsEqual(a,$ifaceNil)){return;}b.store=$append(b.store,a);};A.prototype.Put=function(a){return this.$val.Put(a);};B.ptr.prototype.Do=function(a){var{a,b,$s,$deferred,$r,$c}=$restore(this,{a});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);b=[b];b[0]=this;if(b[0].done){$s=1;continue;}$s=2;continue;case 1:$s=3;case 3:return;case 2:if(b[0].doing){$panic(new $String("nosync: Do called within f"));}b[0].doing=true;$deferred.push([(function(b){return function(){b[0].doing=false;b[0].done=true;};})(b),[]]);$r=a();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:B.ptr.prototype.Do,$c:true,$r,a,b,$s,$deferred};return $f;}}};B.prototype.Do=function(a){return this.$val.Do(a);};C.ptr.prototype.Lock=function(){var a;a=this;if(a.locked){$panic(new $String("nosync: mutex is already locked"));}a.locked=true;};C.prototype.Lock=function(){return this.$val.Lock();};C.ptr.prototype.Unlock=function(){var a;a=this;if(!a.locked){$panic(new $String("nosync: unlock of unlocked mutex"));}a.locked=false;};C.prototype.Unlock=function(){return this.$val.Unlock();};E.ptr.prototype.Add=function(a){var a,b;b=this;b.counter=b.counter+(a)>>0;if(b.counter<0){$panic(new $String("sync: negative WaitGroup counter"));}};E.prototype.Add=function(a){return this.$val.Add(a);};E.ptr.prototype.Done=function(){var a;a=this;a.Add(-1);};E.prototype.Done=function(){return this.$val.Done();};E.ptr.prototype.Wait=function(){var a;a=this;if(!((a.counter===0))){$panic(new $String("sync: WaitGroup counter not zero"));}};E.prototype.Wait=function(){return this.$val.Wait();};F.ptr.prototype.Load=function(a){var a,b,c,d,e,f,g,h;b=$ifaceNil;c=false;d=this;e=(f=$mapIndex(d.m,$emptyInterface.keyFor(a)),f!==undefined?[f.v,true]:[$ifaceNil,false]);b=e[0];c=e[1];g=b;h=c;b=g;c=h;return[b,c];};F.prototype.Load=function(a){return this.$val.Load(a);};F.ptr.prototype.Store=function(a,b){var a,b,c,d;c=this;if(c.m===false){c.m=new $global.Map();}d=a;(c.m||$throwRuntimeError("assignment to entry in nil map")).set($emptyInterface.keyFor(d),{k:d,v:b});};F.prototype.Store=function(a,b){return this.$val.Store(a,b);};F.ptr.prototype.LoadOrStore=function(a,b){var a,b,c,d,e,f,g,h,i,j,k,l,m,n;c=$ifaceNil;d=false;e=this;f=(g=$mapIndex(e.m,$emptyInterface.keyFor(a)),g!==undefined?[g.v,true]:[$ifaceNil,false]);h=f[0];i=f[1];if(i){j=h;k=true;c=j;d=k;return[c,d];}if(e.m===false){e.m=new $global.Map();}l=a;(e.m||$throwRuntimeError("assignment to entry in nil map")).set($emptyInterface.keyFor(l),{k:l,v:b});m=b;n=false;c=m;d=n;return[c,d];};F.prototype.LoadOrStore=function(a,b){return this.$val.LoadOrStore(a,b);};F.ptr.prototype.Delete=function(a){var a,b;b=this;if(b.m===false){return;}$mapDelete(b.m,$emptyInterface.keyFor(a));};F.prototype.Delete=function(a){return this.$val.Delete(a);};F.ptr.prototype.Range=function(a){var{a,b,c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;c=b.m;d=0;e=c?c.keys():undefined;f=c?c.size:0;case 1:if(!(d<f)){$s=2;continue;}g=e.next().value;h=c.get(g);if(h===undefined){d++;$s=1;continue;}i=h.k;j=h.v;k=a(i,j);$s=5;case 5:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(!k){$s=3;continue;}$s=4;continue;case 3:$s=2;continue;case 4:d++;$s=1;continue;case 2:$s=-1;return;}return;}var $f={$blk:F.ptr.prototype.Range,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,$s};return $f;};F.prototype.Range=function(a){return this.$val.Range(a);};H.methods=[{prop:"Get",name:"Get",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"Put",name:"Put",pkg:"",typ:$funcType([$emptyInterface],[],false)}];K.methods=[{prop:"Do",name:"Do",pkg:"",typ:$funcType([J],[],false)}];L.methods=[{prop:"Lock",name:"Lock",pkg:"",typ:$funcType([],[],false)},{prop:"Unlock",name:"Unlock",pkg:"",typ:$funcType([],[],false)}];N.methods=[{prop:"Add",name:"Add",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Done",name:"Done",pkg:"",typ:$funcType([],[],false)},{prop:"Wait",name:"Wait",pkg:"",typ:$funcType([],[],false)}];P.methods=[{prop:"Load",name:"Load",pkg:"",typ:$funcType([$emptyInterface],[$emptyInterface,$Bool],false)},{prop:"Store",name:"Store",pkg:"",typ:$funcType([$emptyInterface,$emptyInterface],[],false)},{prop:"LoadOrStore",name:"LoadOrStore",pkg:"",typ:$funcType([$emptyInterface,$emptyInterface],[$emptyInterface,$Bool],false)},{prop:"Delete",name:"Delete",pkg:"",typ:$funcType([$emptyInterface],[],false)},{prop:"Range",name:"Range",pkg:"",typ:$funcType([O],[],false)}];A.init("github.com/gopherjs/gopherjs/nosync",[{prop:"store",name:"store",embedded:false,exported:false,typ:G,tag:""},{prop:"New",name:"New",embedded:false,exported:true,typ:I,tag:""}]);B.init("github.com/gopherjs/gopherjs/nosync",[{prop:"doing",name:"doing",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"done",name:"done",embedded:false,exported:false,typ:$Bool,tag:""}]);C.init("github.com/gopherjs/gopherjs/nosync",[{prop:"locked",name:"locked",embedded:false,exported:false,typ:$Bool,tag:""}]);E.init("github.com/gopherjs/gopherjs/nosync",[{prop:"counter",name:"counter",embedded:false,exported:false,typ:$Int,tag:""}]);F.init("github.com/gopherjs/gopherjs/nosync",[{prop:"m",name:"m",embedded:false,exported:false,typ:Q,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["time"]=(function(){var $pkg={},$init,A,F,E,B,C,D,W,X,Y,AG,AH,AQ,AR,AS,AV,CW,EF,EG,EH,EJ,EK,EL,EO,ER,ES,ET,EW,FA,L,Z,ED,AA,EE,AB,AL,BC,BG,CF,CI,CJ,CK,CL,CP,CV,DL,EB,j,k,AC,AD,AE,AF,AI,AJ,AK,AT,AU,AW,AX,AY,BB,BD,BE,BF,BH,BI,BJ,BM,BN,BO,BP,CG,CH,CM,CN,CO,CQ,CR,CS,CT,CU,CX,CY,CZ,DA,DB,DC,DD,DF,DG,DH,DI,DJ,DK,DM,DQ,DR,DS,DU;A=$packages["errors"];F=$packages["github.com/gopherjs/gopherjs/js"];E=$packages["github.com/gopherjs/gopherjs/nosync"];B=$packages["runtime"];C=$packages["syscall"];D=$packages["syscall/js"];W=$pkg.Location=$newType(0,$kindStruct,"time.Location",true,"time",true,function(name_,zone_,tx_,extend_,cacheStart_,cacheEnd_,cacheZone_){this.$val=this;if(arguments.length===0){this.name="";this.zone=EF.nil;this.tx=EG.nil;this.extend="";this.cacheStart=new $Int64(0,0);this.cacheEnd=new $Int64(0,0);this.cacheZone=EH.nil;return;}this.name=name_;this.zone=zone_;this.tx=tx_;this.extend=extend_;this.cacheStart=cacheStart_;this.cacheEnd=cacheEnd_;this.cacheZone=cacheZone_;});X=$pkg.zone=$newType(0,$kindStruct,"time.zone",true,"time",false,function(name_,offset_,isDST_){this.$val=this;if(arguments.length===0){this.name="";this.offset=0;this.isDST=false;return;}this.name=name_;this.offset=offset_;this.isDST=isDST_;});Y=$pkg.zoneTrans=$newType(0,$kindStruct,"time.zoneTrans",true,"time",false,function(when_,index_,isstd_,isutc_){this.$val=this;if(arguments.length===0){this.when=new $Int64(0,0);this.index=0;this.isstd=false;this.isutc=false;return;}this.when=when_;this.index=index_;this.isstd=isstd_;this.isutc=isutc_;});AG=$pkg.ruleKind=$newType(4,$kindInt,"time.ruleKind",true,"time",false,null);AH=$pkg.rule=$newType(0,$kindStruct,"time.rule",true,"time",false,function(kind_,day_,week_,mon_,time_){this.$val=this;if(arguments.length===0){this.kind=0;this.day=0;this.week=0;this.mon=0;this.time=0;return;}this.kind=kind_;this.day=day_;this.week=week_;this.mon=mon_;this.time=time_;});AQ=$pkg.Time=$newType(0,$kindStruct,"time.Time",true,"time",true,function(wall_,ext_,loc_){this.$val=this;if(arguments.length===0){this.wall=new $Uint64(0,0);this.ext=new $Int64(0,0);this.loc=EL.nil;return;}this.wall=wall_;this.ext=ext_;this.loc=loc_;});AR=$pkg.Month=$newType(4,$kindInt,"time.Month",true,"time",true,null);AS=$pkg.Weekday=$newType(4,$kindInt,"time.Weekday",true,"time",true,null);AV=$pkg.Duration=$newType(8,$kindInt64,"time.Duration",true,"time",true,null);CW=$pkg.ParseError=$newType(0,$kindStruct,"time.ParseError",true,"time",true,function(Layout_,Value_,LayoutElem_,ValueElem_,Message_){this.$val=this;if(arguments.length===0){this.Layout="";this.Value="";this.LayoutElem="";this.ValueElem="";this.Message="";return;}this.Layout=Layout_;this.Value=Value_;this.LayoutElem=LayoutElem_;this.ValueElem=ValueElem_;this.Message=Message_;});EF=$sliceType(X);EG=$sliceType(Y);EH=$ptrType(X);EJ=$sliceType($String);EK=$sliceType($Uint8);EL=$ptrType(W);EO=$arrayType($Uint8,32);ER=$arrayType($Uint8,20);ES=$arrayType($Uint8,9);ET=$arrayType($Uint8,64);EW=$ptrType(AQ);FA=$ptrType(CW);W.ptr.prototype.get=function(){var{l,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:l=this;if(l===EL.nil){$s=-1;return Z;}if(l===AA){$s=1;continue;}$s=2;continue;case 1:$r=AB.Do(DQ);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return l;}return;}var $f={$blk:W.ptr.prototype.get,$c:true,$r,l,$s};return $f;};W.prototype.get=function(){return this.$val.get();};W.ptr.prototype.String=function(){var{l,m,n,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:l=this;m=l.get();$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m.name;$s=2;case 2:return n;}return;}var $f={$blk:W.ptr.prototype.String,$c:true,$r,l,m,n,$s};return $f;};W.prototype.String=function(){return this.$val.String();};AC=function(l,m){var l,m,n,o;n=new W.ptr(l,new EF([new X.ptr(l,m,false)]),new EG([new Y.ptr(new $Int64(-2147483648,0),0,false,false)]),"",new $Int64(-2147483648,0),new $Int64(2147483647,4294967295),EH.nil);n.cacheZone=(o=n.zone,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]));return n;};$pkg.FixedZone=AC;W.ptr.prototype.lookup=function(l){var{aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{l});$s=$s||0;s:while(true){switch($s){case 0:m="";n=0;o=new $Int64(0,0);p=new $Int64(0,0);q=false;r=this;s=r.get();$s=1;case 1:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;if(r.zone.$length===0){m="UTC";n=0;o=new $Int64(-2147483648,0);p=new $Int64(2147483647,4294967295);q=false;$s=-1;return[m,n,o,p,q];}t=r.cacheZone;if(!(t===EH.nil)&&(u=r.cacheStart,(u.$high<l.$high||(u.$high===l.$high&&u.$low<=l.$low)))&&(v=r.cacheEnd,(l.$high<v.$high||(l.$high===v.$high&&l.$low<v.$low)))){m=t.name;n=t.offset;o=r.cacheStart;p=r.cacheEnd;q=t.isDST;$s=-1;return[m,n,o,p,q];}if((r.tx.$length===0)||(w=(x=r.tx,(0>=x.$length?($throwRuntimeError("index out of range"),undefined):x.$array[x.$offset+0])).when,(l.$high<w.$high||(l.$high===w.$high&&l.$low<w.$low)))){aa=(y=r.zone,z=r.lookupFirstZone(),((z<0||z>=y.$length)?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+z]));m=aa.name;n=aa.offset;o=new $Int64(-2147483648,0);if(r.tx.$length>0){p=(ab=r.tx,(0>=ab.$length?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+0])).when;}else{p=new $Int64(2147483647,4294967295);}q=aa.isDST;$s=-1;return[m,n,o,p,q];}ac=r.tx;p=new $Int64(2147483647,4294967295);ad=0;ae=ac.$length;while(true){if(!((ae-ad>>0)>1)){break;}ag=ad+(af=((ae-ad>>0))/2,(af===af&&af!==1/0&&af!==-1/0)?af>>0:$throwRuntimeError("integer divide by zero"))>>0;ah=((ag<0||ag>=ac.$length)?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+ag]).when;if((l.$high<ah.$high||(l.$high===ah.$high&&l.$low<ah.$low))){p=ah;ae=ag;}else{ad=ag;}}ak=(ai=r.zone,aj=((ad<0||ad>=ac.$length)?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+ad]).index,((aj<0||aj>=ai.$length)?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+aj]));m=ak.name;n=ak.offset;o=((ad<0||ad>=ac.$length)?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+ad]).when;q=ak.isDST;if((ad===(ac.$length-1>>0))&&!(r.extend==="")){al=AD(r.extend,p,l);am=al[0];an=al[1];ao=al[2];ap=al[3];aq=al[4];ar=al[5];if(ar){as=am;at=an;au=ao;av=ap;aw=aq;m=as;n=at;o=au;p=av;q=aw;$s=-1;return[m,n,o,p,q];}}$s=-1;return[m,n,o,p,q];}return;}var $f={$blk:W.ptr.prototype.lookup,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};W.prototype.lookup=function(l){return this.$val.lookup(l);};W.ptr.prototype.lookupFirstZone=function(){var l,m,n,o,p,q,r,s,t,u,v;l=this;if(!l.firstZoneUsed()){return 0;}if(l.tx.$length>0&&(m=l.zone,n=(o=l.tx,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0])).index,((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n])).isDST){q=(((p=l.tx,(0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])).index>>0))-1>>0;while(true){if(!(q>=0)){break;}if(!(r=l.zone,((q<0||q>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+q])).isDST){return q;}q=q-(1)>>0;}}s=l.zone;t=0;while(true){if(!(t<s.$length)){break;}u=t;if(!(v=l.zone,((u<0||u>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+u])).isDST){return u;}t++;}return 0;};W.prototype.lookupFirstZone=function(){return this.$val.lookupFirstZone();};W.ptr.prototype.firstZoneUsed=function(){var l,m,n,o;l=this;m=l.tx;n=0;while(true){if(!(n<m.$length)){break;}o=$clone(((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]),Y);if(o.index===0){return true;}n++;}return false;};W.prototype.firstZoneUsed=function(){return this.$val.firstZoneUsed();};AD=function(l,m,n){var aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;o="";p=0;q=new $Int64(0,0);r=new $Int64(0,0);s=false;t=false;u="";v="";w=u;x=v;y=0;z=0;aa=y;ab=z;ac=AE(l);w=ac[0];l=ac[1];t=ac[2];if(t){ad=AF(l);aa=ad[0];l=ad[1];t=ad[2];}if(!t){ae="";af=0;ag=new $Int64(0,0);ah=new $Int64(0,0);ai=false;aj=false;o=ae;p=af;q=ag;r=ah;s=ai;t=aj;return[o,p,q,r,s,t];}aa=-aa;if((l.length===0)||(l.charCodeAt(0)===44)){ak=w;al=aa;am=m;an=new $Int64(2147483647,4294967295);ao=false;ap=true;o=ak;p=al;q=am;r=an;s=ao;t=ap;return[o,p,q,r,s,t];}aq=AE(l);x=aq[0];l=aq[1];t=aq[2];if(t){if((l.length===0)||(l.charCodeAt(0)===44)){ab=aa+3600>>0;}else{ar=AF(l);ab=ar[0];l=ar[1];t=ar[2];ab=-ab;}}if(!t){as="";at=0;au=new $Int64(0,0);av=new $Int64(0,0);aw=false;ax=false;o=as;p=at;q=au;r=av;s=aw;t=ax;return[o,p,q,r,s,t];}if(l.length===0){l=",M3.2.0,M11.1.0";}if(!((l.charCodeAt(0)===44))&&!((l.charCodeAt(0)===59))){ay="";az=0;ba=new $Int64(0,0);bb=new $Int64(0,0);bc=false;bd=false;o=ay;p=az;q=ba;r=bb;s=bc;t=bd;return[o,p,q,r,s,t];}l=$substring(l,1);be=new AH.ptr(0,0,0,0,0);bf=new AH.ptr(0,0,0,0,0);bg=$clone(be,AH);bh=$clone(bf,AH);bi=AI(l);AH.copy(bg,bi[0]);l=bi[1];t=bi[2];if(!t||(l.length===0)||!((l.charCodeAt(0)===44))){bj="";bk=0;bl=new $Int64(0,0);bm=new $Int64(0,0);bn=false;bo=false;o=bj;p=bk;q=bl;r=bm;s=bn;t=bo;return[o,p,q,r,s,t];}l=$substring(l,1);bp=AI(l);AH.copy(bh,bp[0]);l=bp[1];t=bp[2];if(!t||l.length>0){bq="";br=0;bs=new $Int64(0,0);bt=new $Int64(0,0);bu=false;bv=false;o=bq;p=br;q=bs;r=bt;s=bu;t=bv;return[o,p,q,r,s,t];}bw=BB(((bx=(by=new $Int64(n.$high+14,n.$low+2006054656),new $Int64(by.$high+2147483631,by.$low+2739393024)),new $Uint64(bx.$high,bx.$low))),false);bz=bw[0];ca=bw[3];cd=(cb=(new $Int64(0,($imul(ca,86400)))),cc=$div64(n,new $Int64(0,86400),true),new $Int64(cb.$high+cc.$high,cb.$low+cc.$low));ce=BE(bz);cg=((cf=$mul64(ce,new $Uint64(0,86400)),new $Int64(cf.$high,cf.$low)));cg=(ch=new $Int64(-2147483647,3844486912),new $Int64(cg.$high+ch.$high,cg.$low+ch.$low));ci=(new $Int64(0,AK(bz,$clone(bg,AH),aa)));cj=(new $Int64(0,AK(bz,$clone(bh,AH),ab)));ck=true;cl=false;cm=ck;cn=cl;if((cj.$high<ci.$high||(cj.$high===ci.$high&&cj.$low<ci.$low))){co=cj;cp=ci;ci=co;cj=cp;cq=x;cr=w;w=cq;x=cr;cs=ab;ct=aa;aa=cs;ab=ct;cu=cm;cv=cn;cn=cu;cm=cv;}if((cd.$high<ci.$high||(cd.$high===ci.$high&&cd.$low<ci.$low))){cw=w;cx=aa;cy=cg;cz=new $Int64(ci.$high+cg.$high,ci.$low+cg.$low);da=cn;db=true;o=cw;p=cx;q=cy;r=cz;s=da;t=db;return[o,p,q,r,s,t];}else if((cd.$high>cj.$high||(cd.$high===cj.$high&&cd.$low>=cj.$low))){dc=w;dd=aa;de=new $Int64(cj.$high+cg.$high,cj.$low+cg.$low);df=new $Int64(cg.$high+0,cg.$low+31536000);dg=cn;dh=true;o=dc;p=dd;q=de;r=df;s=dg;t=dh;return[o,p,q,r,s,t];}else{di=x;dj=ab;dk=new $Int64(ci.$high+cg.$high,ci.$low+cg.$low);dl=new $Int64(cj.$high+cg.$high,cj.$low+cg.$low);dm=cm;dn=true;o=di;p=dj;q=dk;r=dl;s=dm;t=dn;return[o,p,q,r,s,t];}};AE=function(l){var l,m,n,o,p,q,r,s,t,u,v,w;if(l.length===0){return["","",false];}if(!((l.charCodeAt(0)===60))){m=l;n=0;while(true){if(!(n<m.length)){break;}o=$decodeRune(m,n);p=n;q=o[0];r=q;if((r===(48))||(r===(49))||(r===(50))||(r===(51))||(r===(52))||(r===(53))||(r===(54))||(r===(55))||(r===(56))||(r===(57))||(r===(44))||(r===(45))||(r===(43))){if(p<3){return["","",false];}return[$substring(l,0,p),$substring(l,p),true];}n+=o[1];}if(l.length<3){return["","",false];}return[l,"",true];}else{s=l;t=0;while(true){if(!(t<s.length)){break;}u=$decodeRune(s,t);v=t;w=u[0];if(w===62){return[$substring(l,1,v),$substring(l,(v+1>>0)),true];}t+=u[1];}return["","",false];}};AF=function(l){var aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;m=0;n="";o=false;if(l.length===0){p=0;q="";r=false;m=p;n=q;o=r;return[m,n,o];}s=false;if(l.charCodeAt(0)===43){l=$substring(l,1);}else if(l.charCodeAt(0)===45){l=$substring(l,1);s=true;}t=0;u=AJ(l,0,168);t=u[0];l=u[1];o=u[2];if(!o){v=0;w="";x=false;m=v;n=w;o=x;return[m,n,o];}y=$imul(t,3600);if((l.length===0)||!((l.charCodeAt(0)===58))){if(s){y=-y;}z=y;aa=l;ab=true;m=z;n=aa;o=ab;return[m,n,o];}ac=0;ad=AJ($substring(l,1),0,59);ac=ad[0];l=ad[1];o=ad[2];if(!o){ae=0;af="";ag=false;m=ae;n=af;o=ag;return[m,n,o];}y=y+(($imul(ac,60)))>>0;if((l.length===0)||!((l.charCodeAt(0)===58))){if(s){y=-y;}ah=y;ai=l;aj=true;m=ah;n=ai;o=aj;return[m,n,o];}ak=0;al=AJ($substring(l,1),0,59);ak=al[0];l=al[1];o=al[2];if(!o){am=0;an="";ao=false;m=am;n=an;o=ao;return[m,n,o];}y=y+(ak)>>0;if(s){y=-y;}ap=y;aq=l;ar=true;m=ap;n=aq;o=ar;return[m,n,o];};AI=function(l){var l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;m=new AH.ptr(0,0,0,0,0);if(l.length===0){return[new AH.ptr(0,0,0,0,0),"",false];}n=false;if(l.charCodeAt(0)===74){o=0;p=AJ($substring(l,1),1,365);o=p[0];l=p[1];n=p[2];if(!n){return[new AH.ptr(0,0,0,0,0),"",false];}m.kind=0;m.day=o;}else if(l.charCodeAt(0)===77){q=0;r=AJ($substring(l,1),1,12);q=r[0];l=r[1];n=r[2];if(!n||(l.length===0)||!((l.charCodeAt(0)===46))){return[new AH.ptr(0,0,0,0,0),"",false];}s=0;t=AJ($substring(l,1),1,5);s=t[0];l=t[1];n=t[2];if(!n||(l.length===0)||!((l.charCodeAt(0)===46))){return[new AH.ptr(0,0,0,0,0),"",false];}u=0;v=AJ($substring(l,1),0,6);u=v[0];l=v[1];n=v[2];if(!n){return[new AH.ptr(0,0,0,0,0),"",false];}m.kind=2;m.day=u;m.week=s;m.mon=q;}else{w=0;x=AJ(l,0,365);w=x[0];l=x[1];n=x[2];if(!n){return[new AH.ptr(0,0,0,0,0),"",false];}m.kind=1;m.day=w;}if((l.length===0)||!((l.charCodeAt(0)===47))){m.time=7200;return[m,l,true];}y=AF($substring(l,1));z=y[0];l=y[1];n=y[2];if(!n){return[new AH.ptr(0,0,0,0,0),"",false];}m.time=z;return[m,l,true];};AJ=function(l,m,n){var aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;o=0;p="";q=false;if(l.length===0){r=0;s="";t=false;o=r;p=s;q=t;return[o,p,q];}o=0;u=l;v=0;while(true){if(!(v<u.length)){break;}w=$decodeRune(u,v);x=v;y=w[0];if(y<48||y>57){if((x===0)||o<m){z=0;aa="";ab=false;o=z;p=aa;q=ab;return[o,p,q];}ac=o;ad=$substring(l,x);ae=true;o=ac;p=ad;q=ae;return[o,p,q];}o=$imul(o,(10));o=o+((((y>>0))-48>>0))>>0;if(o>n){af=0;ag="";ah=false;o=af;p=ag;q=ah;return[o,p,q];}v+=w[1];}if(o<m){ai=0;aj="";ak=false;o=ai;p=aj;q=ak;return[o,p,q];}al=o;am="";an=true;o=al;p=am;q=an;return[o,p,q];};AK=function(l,m,n){var aa,ab,ac,ad,ae,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;o=0;p=m.kind;if(p===(0)){o=$imul(((m.day-1>>0)),86400);if(BM(l)&&m.day>=60){o=o+(86400)>>0;}}else if(p===(1)){o=$imul(m.day,86400);}else if(p===(2)){r=(q=((m.mon+9>>0))%12,q===q?q:$throwRuntimeError("integer divide by zero"))+1>>0;s=l;if(m.mon<=2){s=s-(1)>>0;}u=(t=s/100,(t===t&&t!==1/0&&t!==-1/0)?t>>0:$throwRuntimeError("integer divide by zero"));w=(v=s%100,v===v?v:$throwRuntimeError("integer divide by zero"));ab=(x=(((((((y=((($imul(26,r))-2>>0))/10,(y===y&&y!==1/0&&y!==-1/0)?y>>0:$throwRuntimeError("integer divide by zero"))+1>>0)+w>>0)+(z=w/4,(z===z&&z!==1/0&&z!==-1/0)?z>>0:$throwRuntimeError("integer divide by zero"))>>0)+(aa=u/4,(aa===aa&&aa!==1/0&&aa!==-1/0)?aa>>0:$throwRuntimeError("integer divide by zero"))>>0)-($imul(2,u))>>0))%7,x===x?x:$throwRuntimeError("integer divide by zero"));if(ab<0){ab=ab+(7)>>0;}ac=m.day-ab>>0;if(ac<0){ac=ac+(7)>>0;}ad=1;while(true){if(!(ad<m.week)){break;}if((ac+7>>0)>=BD(((m.mon>>0)),l)){break;}ac=ac+(7)>>0;ad=ad+(1)>>0;}ac=ac+((((ae=m.mon-1>>0,((ae<0||ae>=BC.length)?($throwRuntimeError("index out of range"),undefined):BC[ae]))>>0)))>>0;if(BM(l)&&m.mon>2){ac=ac+(1)>>0;}o=$imul(ac,86400);}return(o+m.time>>0)-n>>0;};W.ptr.prototype.lookupName=function(l,m){var{aa,ab,ac,ad,ae,af,ag,ah,ai,aj,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{l,m});$s=$s||0;s:while(true){switch($s){case 0:n=0;o=false;p=this;q=p.get();$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;r=p.zone;s=0;case 2:if(!(s<r.$length)){$s=3;continue;}t=s;v=(u=p.zone,((t<0||t>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+t]));if(v.name===l){$s=4;continue;}$s=5;continue;case 4:y=p.lookup((x=(new $Int64(0,v.offset)),new $Int64(m.$high-x.$high,m.$low-x.$low)));$s=6;case 6:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}w=y;z=w[0];aa=w[1];if(z===v.name){ab=aa;ac=true;n=ab;o=ac;$s=-1;return[n,o];}case 5:s++;$s=2;continue;case 3:ad=p.zone;ae=0;while(true){if(!(ae<ad.$length)){break;}af=ae;ah=(ag=p.zone,((af<0||af>=ag.$length)?($throwRuntimeError("index out of range"),undefined):ag.$array[ag.$offset+af]));if(ah.name===l){ai=ah.offset;aj=true;n=ai;o=aj;$s=-1;return[n,o];}ae++;}$s=-1;return[n,o];}return;}var $f={$blk:W.ptr.prototype.lookupName,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};W.prototype.lookupName=function(l,m){return this.$val.lookupName(l,m);};AQ.ptr.prototype.nsec=function(){var l,m;l=this;return(((m=l.wall,new $Uint64(m.$high&0,(m.$low&1073741823)>>>0)).$low>>0));};AQ.prototype.nsec=function(){return this.$val.nsec();};AQ.ptr.prototype.sec=function(){var l,m,n,o,p;l=this;if(!((m=(n=l.wall,new $Uint64(n.$high&2147483648,(n.$low&0)>>>0)),(m.$high===0&&m.$low===0)))){return(o=((p=$shiftRightUint64($shiftLeft64(l.wall,1),31),new $Int64(p.$high,p.$low))),new $Int64(13+o.$high,3618733952+o.$low));}return l.ext;};AQ.prototype.sec=function(){return this.$val.sec();};AQ.ptr.prototype.unixSec=function(){var l,m;l=this;return(m=l.sec(),new $Int64(m.$high+-15,m.$low+2288912640));};AQ.prototype.unixSec=function(){return this.$val.unixSec();};AQ.ptr.prototype.addSec=function(l){var l,m,n,o,p,q,r,s,t,u,v,w,x,y;m=this;if(!((n=(o=m.wall,new $Uint64(o.$high&2147483648,(o.$low&0)>>>0)),(n.$high===0&&n.$low===0)))){q=((p=$shiftRightUint64($shiftLeft64(m.wall,1),31),new $Int64(p.$high,p.$low)));r=new $Int64(q.$high+l.$high,q.$low+l.$low);if((0<r.$high||(0===r.$high&&0<=r.$low))&&(r.$high<1||(r.$high===1&&r.$low<=4294967295))){m.wall=(s=(t=(u=m.wall,new $Uint64(u.$high&0,(u.$low&1073741823)>>>0)),v=$shiftLeft64((new $Uint64(r.$high,r.$low)),30),new $Uint64(t.$high|v.$high,(t.$low|v.$low)>>>0)),new $Uint64(s.$high|2147483648,(s.$low|0)>>>0));return;}m.stripMono();}x=(w=m.ext,new $Int64(w.$high+l.$high,w.$low+l.$low));if(((y=m.ext,(x.$high>y.$high||(x.$high===y.$high&&x.$low>y.$low))))===((l.$high>0||(l.$high===0&&l.$low>0)))){m.ext=x;}else if((l.$high>0||(l.$high===0&&l.$low>0))){m.ext=new $Int64(2147483647,4294967295);}else{m.ext=new $Int64(-2147483648,1);}};AQ.prototype.addSec=function(l){return this.$val.addSec(l);};AQ.ptr.prototype.setLoc=function(l){var l,m;m=this;if(l===Z){l=EL.nil;}m.stripMono();m.loc=l;};AQ.prototype.setLoc=function(l){return this.$val.setLoc(l);};AQ.ptr.prototype.stripMono=function(){var l,m,n,o,p;l=this;if(!((m=(n=l.wall,new $Uint64(n.$high&2147483648,(n.$low&0)>>>0)),(m.$high===0&&m.$low===0)))){l.ext=l.sec();l.wall=(o=l.wall,p=new $Uint64(0,1073741823),new $Uint64(o.$high&p.$high,(o.$low&p.$low)>>>0));}};AQ.prototype.stripMono=function(){return this.$val.stripMono();};AQ.ptr.prototype.After=function(l){var l,m,n,o,p,q,r,s,t,u;m=this;if(!((n=(o=(p=m.wall,q=l.wall,new $Uint64(p.$high&q.$high,(p.$low&q.$low)>>>0)),new $Uint64(o.$high&2147483648,(o.$low&0)>>>0)),(n.$high===0&&n.$low===0)))){return(r=m.ext,s=l.ext,(r.$high>s.$high||(r.$high===s.$high&&r.$low>s.$low)));}t=m.sec();u=l.sec();return(t.$high>u.$high||(t.$high===u.$high&&t.$low>u.$low))||(t.$high===u.$high&&t.$low===u.$low)&&m.nsec()>l.nsec();};AQ.prototype.After=function(l){return this.$val.After(l);};AQ.ptr.prototype.Before=function(l){var l,m,n,o,p,q,r,s,t,u;m=this;if(!((n=(o=(p=m.wall,q=l.wall,new $Uint64(p.$high&q.$high,(p.$low&q.$low)>>>0)),new $Uint64(o.$high&2147483648,(o.$low&0)>>>0)),(n.$high===0&&n.$low===0)))){return(r=m.ext,s=l.ext,(r.$high<s.$high||(r.$high===s.$high&&r.$low<s.$low)));}t=m.sec();u=l.sec();return(t.$high<u.$high||(t.$high===u.$high&&t.$low<u.$low))||(t.$high===u.$high&&t.$low===u.$low)&&m.nsec()<l.nsec();};AQ.prototype.Before=function(l){return this.$val.Before(l);};AQ.ptr.prototype.Equal=function(l){var l,m,n,o,p,q,r,s,t,u;m=this;if(!((n=(o=(p=m.wall,q=l.wall,new $Uint64(p.$high&q.$high,(p.$low&q.$low)>>>0)),new $Uint64(o.$high&2147483648,(o.$low&0)>>>0)),(n.$high===0&&n.$low===0)))){return(r=m.ext,s=l.ext,(r.$high===s.$high&&r.$low===s.$low));}return(t=m.sec(),u=l.sec(),(t.$high===u.$high&&t.$low===u.$low))&&(m.nsec()===l.nsec());};AQ.prototype.Equal=function(l){return this.$val.Equal(l);};AR.prototype.String=function(){var l,m,n,o;l=this.$val;if(1<=l&&l<=12){return(m=l-1>>0,((m<0||m>=CL.$length)?($throwRuntimeError("index out of range"),undefined):CL.$array[CL.$offset+m]));}n=$makeSlice(EK,20);o=AX(n,(new $Uint64(0,l)));return"%!Month("+($bytesToString($subslice(n,o)))+")";};$ptrType(AR).prototype.String=function(){return new AR(this.$get()).String();};AS.prototype.String=function(){var l,m,n;l=this.$val;if(0<=l&&l<=6){return((l<0||l>=CI.$length)?($throwRuntimeError("index out of range"),undefined):CI.$array[CI.$offset+l]);}m=$makeSlice(EK,20);n=AX(m,(new $Uint64(0,l)));return"%!Weekday("+($bytesToString($subslice(m,n)))+")";};$ptrType(AS).prototype.String=function(){return new AS(this.$get()).String();};AQ.ptr.prototype.IsZero=function(){var l,m;l=this;return(m=l.sec(),(m.$high===0&&m.$low===0))&&(l.nsec()===0);};AQ.prototype.IsZero=function(){return this.$val.IsZero();};AQ.ptr.prototype.abs=function(){var{l,m,n,o,p,q,r,s,t,u,v,w,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:l=this;m=l.loc;if(m===EL.nil||m===AA){$s=1;continue;}$s=2;continue;case 1:n=m.get();$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;case 2:o=l.unixSec();if(!(m===Z)){$s=4;continue;}$s=5;continue;case 4:if(!(m.cacheZone===EH.nil)&&(p=m.cacheStart,(p.$high<o.$high||(p.$high===o.$high&&p.$low<=o.$low)))&&(q=m.cacheEnd,(o.$high<q.$high||(o.$high===q.$high&&o.$low<q.$low)))){$s=6;continue;}$s=7;continue;case 6:o=(r=(new $Int64(0,m.cacheZone.offset)),new $Int64(o.$high+r.$high,o.$low+r.$low));$s=8;continue;case 7:t=m.lookup(o);$s=9;case 9:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}s=t;u=s[1];o=(v=(new $Int64(0,u)),new $Int64(o.$high+v.$high,o.$low+v.$low));case 8:case 5:$s=-1;return((w=new $Int64(o.$high+2147483646,o.$low+450480384),new $Uint64(w.$high,w.$low)));}return;}var $f={$blk:AQ.ptr.prototype.abs,$c:true,$r,l,m,n,o,p,q,r,s,t,u,v,w,$s};return $f;};AQ.prototype.abs=function(){return this.$val.abs();};AQ.ptr.prototype.locabs=function(){var{l,m,n,o,p,q,r,s,t,u,v,w,x,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:l="";m=0;n=new $Uint64(0,0);o=this;p=o.loc;if(p===EL.nil||p===AA){$s=1;continue;}$s=2;continue;case 1:q=p.get();$s=3;case 3:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;case 2:r=o.unixSec();if(!(p===Z)){$s=4;continue;}$s=5;continue;case 4:if(!(p.cacheZone===EH.nil)&&(s=p.cacheStart,(s.$high<r.$high||(s.$high===r.$high&&s.$low<=r.$low)))&&(t=p.cacheEnd,(r.$high<t.$high||(r.$high===t.$high&&r.$low<t.$low)))){$s=7;continue;}$s=8;continue;case 7:l=p.cacheZone.name;m=p.cacheZone.offset;$s=9;continue;case 8:v=p.lookup(r);$s=10;case 10:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;l=u[0];m=u[1];case 9:r=(w=(new $Int64(0,m)),new $Int64(r.$high+w.$high,r.$low+w.$low));$s=6;continue;case 5:l="UTC";case 6:n=((x=new $Int64(r.$high+2147483646,r.$low+450480384),new $Uint64(x.$high,x.$low)));$s=-1;return[l,m,n];}return;}var $f={$blk:AQ.ptr.prototype.locabs,$c:true,$r,l,m,n,o,p,q,r,s,t,u,v,w,x,$s};return $f;};AQ.prototype.locabs=function(){return this.$val.locabs();};AQ.ptr.prototype.Date=function(){var{l,m,n,o,p,q,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:l=0;m=0;n=0;o=this;q=$clone(o,AQ).date(true);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;l=p[0];m=p[1];n=p[2];$s=-1;return[l,m,n];}return;}var $f={$blk:AQ.ptr.prototype.Date,$c:true,$r,l,m,n,o,p,q,$s};return $f;};AQ.prototype.Date=function(){return this.$val.Date();};AQ.ptr.prototype.Year=function(){var{l,m,n,o,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:l=this;n=$clone(l,AQ).date(false);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];$s=-1;return o;}return;}var $f={$blk:AQ.ptr.prototype.Year,$c:true,$r,l,m,n,o,$s};return $f;};AQ.prototype.Year=function(){return this.$val.Year();};AQ.ptr.prototype.Month=function(){var{l,m,n,o,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:l=this;n=$clone(l,AQ).date(true);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[1];$s=-1;return o;}return;}var $f={$blk:AQ.ptr.prototype.Month,$c:true,$r,l,m,n,o,$s};return $f;};AQ.prototype.Month=function(){return this.$val.Month();};AQ.ptr.prototype.Day=function(){var{l,m,n,o,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:l=this;n=$clone(l,AQ).date(true);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[2];$s=-1;return o;}return;}var $f={$blk:AQ.ptr.prototype.Day,$c:true,$r,l,m,n,o,$s};return $f;};AQ.prototype.Day=function(){return this.$val.Day();};AQ.ptr.prototype.Weekday=function(){var{l,m,n,o,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:l=this;m=$clone(l,AQ).abs();$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=AT(m);$s=2;case 2:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;$s=3;case 3:return o;}return;}var $f={$blk:AQ.ptr.prototype.Weekday,$c:true,$r,l,m,n,o,$s};return $f;};AQ.prototype.Weekday=function(){return this.$val.Weekday();};AT=function(l){var l,m,n;m=$div64((new $Uint64(l.$high+0,l.$low+86400)),new $Uint64(0,604800),true);return(((n=((m.$low>>0))/86400,(n===n&&n!==1/0&&n!==-1/0)?n>>0:$throwRuntimeError("integer divide by zero"))>>0));};AQ.ptr.prototype.ISOWeek=function(){var{l,m,n,o,p,q,r,s,t,u,v,w,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:l=0;m=0;n=this;o=$clone(n,AQ).abs();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;q=4-AT(p)>>0;if(q===4){q=-3;}p=(r=$mul64((new $Uint64(0,q)),new $Uint64(0,86400)),new $Uint64(p.$high+r.$high,p.$low+r.$low));s=BB(p,false);l=s[0];t=s[3];u=l;v=(w=t/7,(w===w&&w!==1/0&&w!==-1/0)?w>>0:$throwRuntimeError("integer divide by zero"))+1>>0;l=u;m=v;$s=-1;return[l,m];}return;}var $f={$blk:AQ.ptr.prototype.ISOWeek,$c:true,$r,l,m,n,o,p,q,r,s,t,u,v,w,$s};return $f;};AQ.prototype.ISOWeek=function(){return this.$val.ISOWeek();};AQ.ptr.prototype.Clock=function(){var{l,m,n,o,p,q,r,s,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:l=0;m=0;n=0;o=this;q=$clone(o,AQ).abs();$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=AU(q);$s=2;case 2:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}p=r;l=p[0];m=p[1];n=p[2];s=[l,m,n];$s=3;case 3:return s;}return;}var $f={$blk:AQ.ptr.prototype.Clock,$c:true,$r,l,m,n,o,p,q,r,s,$s};return $f;};AQ.prototype.Clock=function(){return this.$val.Clock();};AU=function(l){var l,m,n,o,p,q;m=0;n=0;o=0;o=(($div64(l,new $Uint64(0,86400),true).$low>>0));m=(p=o/3600,(p===p&&p!==1/0&&p!==-1/0)?p>>0:$throwRuntimeError("integer divide by zero"));o=o-(($imul(m,3600)))>>0;n=(q=o/60,(q===q&&q!==1/0&&q!==-1/0)?q>>0:$throwRuntimeError("integer divide by zero"));o=o-(($imul(n,60)))>>0;return[m,n,o];};AQ.ptr.prototype.Hour=function(){var{l,m,n,o,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:l=this;n=$clone(l,AQ).abs();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=(m=(($div64(n,new $Uint64(0,86400),true).$low>>0))/3600,(m===m&&m!==1/0&&m!==-1/0)?m>>0:$throwRuntimeError("integer divide by zero"));$s=2;case 2:return o;}return;}var $f={$blk:AQ.ptr.prototype.Hour,$c:true,$r,l,m,n,o,$s};return $f;};AQ.prototype.Hour=function(){return this.$val.Hour();};AQ.ptr.prototype.Minute=function(){var{l,m,n,o,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:l=this;n=$clone(l,AQ).abs();$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=(m=(($div64(n,new $Uint64(0,3600),true).$low>>0))/60,(m===m&&m!==1/0&&m!==-1/0)?m>>0:$throwRuntimeError("integer divide by zero"));$s=2;case 2:return o;}return;}var $f={$blk:AQ.ptr.prototype.Minute,$c:true,$r,l,m,n,o,$s};return $f;};AQ.prototype.Minute=function(){return this.$val.Minute();};AQ.ptr.prototype.Second=function(){var{l,m,n,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:l=this;m=$clone(l,AQ).abs();$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=(($div64(m,new $Uint64(0,60),true).$low>>0));$s=2;case 2:return n;}return;}var $f={$blk:AQ.ptr.prototype.Second,$c:true,$r,l,m,n,$s};return $f;};AQ.prototype.Second=function(){return this.$val.Second();};AQ.ptr.prototype.Nanosecond=function(){var l;l=this;return((l.nsec()>>0));};AQ.prototype.Nanosecond=function(){return this.$val.Nanosecond();};AQ.ptr.prototype.YearDay=function(){var{l,m,n,o,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:l=this;n=$clone(l,AQ).date(false);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[3];$s=-1;return o+1>>0;}return;}var $f={$blk:AQ.ptr.prototype.YearDay,$c:true,$r,l,m,n,o,$s};return $f;};AQ.prototype.YearDay=function(){return this.$val.YearDay();};AV.prototype.String=function(){var l,m,n,o,p,q,r,s;l=this;m=EO.zero();n=32;o=(new $Uint64(l.$high,l.$low));p=(l.$high<0||(l.$high===0&&l.$low<0));if(p){o=new $Uint64(-o.$high,-o.$low);}if((o.$high<0||(o.$high===0&&o.$low<1000000000))){q=0;n=n-(1)>>0;((n<0||n>=m.length)?($throwRuntimeError("index out of range"),undefined):m[n]=115);n=n-(1)>>0;if((o.$high===0&&o.$low===0)){return"0s";}else if((o.$high<0||(o.$high===0&&o.$low<1000))){q=0;((n<0||n>=m.length)?($throwRuntimeError("index out of range"),undefined):m[n]=110);}else if((o.$high<0||(o.$high===0&&o.$low<1000000))){q=3;n=n-(1)>>0;$copyString($subslice(new EK(m),n),"\xC2\xB5");}else{q=6;((n<0||n>=m.length)?($throwRuntimeError("index out of range"),undefined):m[n]=109);}r=AW($subslice(new EK(m),0,n),o,q);n=r[0];o=r[1];n=AX($subslice(new EK(m),0,n),o);}else{n=n-(1)>>0;((n<0||n>=m.length)?($throwRuntimeError("index out of range"),undefined):m[n]=115);s=AW($subslice(new EK(m),0,n),o,9);n=s[0];o=s[1];n=AX($subslice(new EK(m),0,n),$div64(o,new $Uint64(0,60),true));o=$div64(o,(new $Uint64(0,60)),false);if((o.$high>0||(o.$high===0&&o.$low>0))){n=n-(1)>>0;((n<0||n>=m.length)?($throwRuntimeError("index out of range"),undefined):m[n]=109);n=AX($subslice(new EK(m),0,n),$div64(o,new $Uint64(0,60),true));o=$div64(o,(new $Uint64(0,60)),false);if((o.$high>0||(o.$high===0&&o.$low>0))){n=n-(1)>>0;((n<0||n>=m.length)?($throwRuntimeError("index out of range"),undefined):m[n]=104);n=AX($subslice(new EK(m),0,n),o);}}}if(p){n=n-(1)>>0;((n<0||n>=m.length)?($throwRuntimeError("index out of range"),undefined):m[n]=45);}return($bytesToString($subslice(new EK(m),n)));};$ptrType(AV).prototype.String=function(){return this.$get().String();};AW=function(l,m,n){var l,m,n,o,p,q,r,s,t,u,v;o=0;p=new $Uint64(0,0);q=l.$length;r=false;s=0;while(true){if(!(s<n)){break;}t=$div64(m,new $Uint64(0,10),true);r=r||!((t.$high===0&&t.$low===0));if(r){q=q-(1)>>0;((q<0||q>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+q]=(((t.$low<<24>>>24))+48<<24>>>24));}m=$div64(m,(new $Uint64(0,10)),false);s=s+(1)>>0;}if(r){q=q-(1)>>0;((q<0||q>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+q]=46);}u=q;v=m;o=u;p=v;return[o,p];};AX=function(l,m){var l,m,n;n=l.$length;if((m.$high===0&&m.$low===0)){n=n-(1)>>0;((n<0||n>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+n]=48);}else{while(true){if(!((m.$high>0||(m.$high===0&&m.$low>0)))){break;}n=n-(1)>>0;((n<0||n>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+n]=((($div64(m,new $Uint64(0,10),true).$low<<24>>>24))+48<<24>>>24));m=$div64(m,(new $Uint64(0,10)),false);}}return n;};AV.prototype.Nanoseconds=function(){var l;l=this;return(new $Int64(l.$high,l.$low));};$ptrType(AV).prototype.Nanoseconds=function(){return this.$get().Nanoseconds();};AV.prototype.Microseconds=function(){var l;l=this;return $div64((new $Int64(l.$high,l.$low)),new $Int64(0,1000),false);};$ptrType(AV).prototype.Microseconds=function(){return this.$get().Microseconds();};AV.prototype.Milliseconds=function(){var l;l=this;return $div64((new $Int64(l.$high,l.$low)),new $Int64(0,1000000),false);};$ptrType(AV).prototype.Milliseconds=function(){return this.$get().Milliseconds();};AV.prototype.Seconds=function(){var l,m,n;l=this;m=$div64(l,new AV(0,1000000000),false);n=$div64(l,new AV(0,1000000000),true);return($flatten64(m))+($flatten64(n))/1e+09;};$ptrType(AV).prototype.Seconds=function(){return this.$get().Seconds();};AV.prototype.Minutes=function(){var l,m,n;l=this;m=$div64(l,new AV(13,4165425152),false);n=$div64(l,new AV(13,4165425152),true);return($flatten64(m))+($flatten64(n))/6e+10;};$ptrType(AV).prototype.Minutes=function(){return this.$get().Minutes();};AV.prototype.Hours=function(){var l,m,n;l=this;m=$div64(l,new AV(838,817405952),false);n=$div64(l,new AV(838,817405952),true);return($flatten64(m))+($flatten64(n))/3.6e+12;};$ptrType(AV).prototype.Hours=function(){return this.$get().Hours();};AV.prototype.Truncate=function(l){var l,m,n;m=this;if((l.$high<0||(l.$high===0&&l.$low<=0))){return m;}return(n=$div64(m,l,true),new AV(m.$high-n.$high,m.$low-n.$low));};$ptrType(AV).prototype.Truncate=function(l){return this.$get().Truncate(l);};AY=function(l,m){var l,m,n,o,p,q;return(n=(o=(new $Uint64(l.$high,l.$low)),p=(new $Uint64(l.$high,l.$low)),new $Uint64(o.$high+p.$high,o.$low+p.$low)),q=(new $Uint64(m.$high,m.$low)),(n.$high<q.$high||(n.$high===q.$high&&n.$low<q.$low)));};AV.prototype.Round=function(l){var l,m,n,o,p,q,r;m=this;if((l.$high<0||(l.$high===0&&l.$low<=0))){return m;}n=$div64(m,l,true);if((m.$high<0||(m.$high===0&&m.$low<0))){n=new AV(-n.$high,-n.$low);if(AY(n,l)){return new AV(m.$high+n.$high,m.$low+n.$low);}p=(o=new AV(m.$high-l.$high,m.$low-l.$low),new AV(o.$high+n.$high,o.$low+n.$low));if((p.$high<m.$high||(p.$high===m.$high&&p.$low<m.$low))){return p;}return new AV(-2147483648,0);}if(AY(n,l)){return new AV(m.$high-n.$high,m.$low-n.$low);}r=(q=new AV(m.$high+l.$high,m.$low+l.$low),new AV(q.$high-n.$high,q.$low-n.$low));if((r.$high>m.$high||(r.$high===m.$high&&r.$low>m.$low))){return r;}return new AV(2147483647,4294967295);};$ptrType(AV).prototype.Round=function(l){return this.$get().Round(l);};AQ.ptr.prototype.Add=function(l){var aa,ab,ac,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;m=this;o=((n=$div64(l,new AV(0,1000000000),false),new $Int64(n.$high,n.$low)));q=m.nsec()+(((p=$div64(l,new AV(0,1000000000),true),p.$low+((p.$high>>31)*4294967296))>>0))>>0;if(q>=1000000000){o=(r=new $Int64(0,1),new $Int64(o.$high+r.$high,o.$low+r.$low));q=q-(1000000000)>>0;}else if(q<0){o=(s=new $Int64(0,1),new $Int64(o.$high-s.$high,o.$low-s.$low));q=q+(1000000000)>>0;}m.wall=(t=(u=m.wall,new $Uint64(u.$high&~0,(u.$low&~1073741823)>>>0)),v=(new $Uint64(0,q)),new $Uint64(t.$high|v.$high,(t.$low|v.$low)>>>0));m.addSec(o);if(!((w=(x=m.wall,new $Uint64(x.$high&2147483648,(x.$low&0)>>>0)),(w.$high===0&&w.$low===0)))){aa=(y=m.ext,z=(new $Int64(l.$high,l.$low)),new $Int64(y.$high+z.$high,y.$low+z.$low));if((l.$high<0||(l.$high===0&&l.$low<0))&&(ab=m.ext,(aa.$high>ab.$high||(aa.$high===ab.$high&&aa.$low>ab.$low)))||(l.$high>0||(l.$high===0&&l.$low>0))&&(ac=m.ext,(aa.$high<ac.$high||(aa.$high===ac.$high&&aa.$low<ac.$low)))){m.stripMono();}else{m.ext=aa;}}return m;};AQ.prototype.Add=function(l){return this.$val.Add(l);};AQ.ptr.prototype.Sub=function(l){var aa,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;m=this;if(!((n=(o=(p=m.wall,q=l.wall,new $Uint64(p.$high&q.$high,(p.$low&q.$low)>>>0)),new $Uint64(o.$high&2147483648,(o.$low&0)>>>0)),(n.$high===0&&n.$low===0)))){r=m.ext;s=l.ext;u=((t=new $Int64(r.$high-s.$high,r.$low-s.$low),new AV(t.$high,t.$low)));if((u.$high<0||(u.$high===0&&u.$low<0))&&(r.$high>s.$high||(r.$high===s.$high&&r.$low>s.$low))){return new AV(2147483647,4294967295);}if((u.$high>0||(u.$high===0&&u.$low>0))&&(r.$high<s.$high||(r.$high===s.$high&&r.$low<s.$low))){return new AV(-2147483648,0);}return u;}aa=(v=$mul64(((w=(x=m.sec(),y=l.sec(),new $Int64(x.$high-y.$high,x.$low-y.$low)),new AV(w.$high,w.$low))),new AV(0,1000000000)),z=(new AV(0,(m.nsec()-l.nsec()>>0))),new AV(v.$high+z.$high,v.$low+z.$low));if($clone($clone(l,AQ).Add(aa),AQ).Equal($clone(m,AQ))){return aa;}else if($clone(m,AQ).Before($clone(l,AQ))){return new AV(-2147483648,0);}else{return new AV(2147483647,4294967295);}};AQ.prototype.Sub=function(l){return this.$val.Sub(l);};AQ.ptr.prototype.AddDate=function(l,m,n){var{aa,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{l,m,n});$s=$s||0;s:while(true){switch($s){case 0:o=this;q=$clone(o,AQ).Date();$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;r=p[0];s=p[1];t=p[2];v=$clone(o,AQ).Clock();$s=2;case 2:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[0];x=u[1];y=u[2];z=BO(r+l>>0,s+((m>>0))>>0,t+n>>0,w,x,y,((o.nsec()>>0)),$clone(o,AQ).Location());$s=3;case 3:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}aa=z;$s=4;case 4:return aa;}return;}var $f={$blk:AQ.ptr.prototype.AddDate,$c:true,$r,aa,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};AQ.prototype.AddDate=function(l,m,n){return this.$val.AddDate(l,m,n);};AQ.ptr.prototype.date=function(l){var{l,m,n,o,p,q,r,s,t,u,$s,$r,$c}=$restore(this,{l});$s=$s||0;s:while(true){switch($s){case 0:m=0;n=0;o=0;p=0;q=this;s=$clone(q,AQ).abs();$s=1;case 1:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=BB(s,l);$s=2;case 2:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}r=t;m=r[0];n=r[1];o=r[2];p=r[3];u=[m,n,o,p];$s=3;case 3:return u;}return;}var $f={$blk:AQ.ptr.prototype.date,$c:true,$r,l,m,n,o,p,q,r,s,t,u,$s};return $f;};AQ.prototype.date=function(l){return this.$val.date(l);};BB=function(l,m){var aa,ab,ac,ad,ae,af,ag,ah,ai,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;n=0;o=0;p=0;q=0;r=$div64(l,new $Uint64(0,86400),false);s=$div64(r,new $Uint64(0,146097),false);t=$mul64(new $Uint64(0,400),s);r=(u=$mul64(new $Uint64(0,146097),s),new $Uint64(r.$high-u.$high,r.$low-u.$low));s=$div64(r,new $Uint64(0,36524),false);s=(v=$shiftRightUint64(s,2),new $Uint64(s.$high-v.$high,s.$low-v.$low));t=(w=$mul64(new $Uint64(0,100),s),new $Uint64(t.$high+w.$high,t.$low+w.$low));r=(x=$mul64(new $Uint64(0,36524),s),new $Uint64(r.$high-x.$high,r.$low-x.$low));s=$div64(r,new $Uint64(0,1461),false);t=(y=$mul64(new $Uint64(0,4),s),new $Uint64(t.$high+y.$high,t.$low+y.$low));r=(z=$mul64(new $Uint64(0,1461),s),new $Uint64(r.$high-z.$high,r.$low-z.$low));s=$div64(r,new $Uint64(0,365),false);s=(aa=$shiftRightUint64(s,2),new $Uint64(s.$high-aa.$high,s.$low-aa.$low));t=(ab=s,new $Uint64(t.$high+ab.$high,t.$low+ab.$low));r=(ac=$mul64(new $Uint64(0,365),s),new $Uint64(r.$high-ac.$high,r.$low-ac.$low));n=(((ad=(ae=(new $Int64(t.$high,t.$low)),new $Int64(ae.$high+-69,ae.$low+4075721025)),ad.$low+((ad.$high>>31)*4294967296))>>0));q=((r.$low>>0));if(!m){return[n,o,p,q];}p=q;if(BM(n)){if(p>59){p=p-(1)>>0;}else if((p===59)){o=2;p=29;return[n,o,p,q];}}o=(((af=p/31,(af===af&&af!==1/0&&af!==-1/0)?af>>0:$throwRuntimeError("integer divide by zero"))>>0));ah=(((ag=o+1>>0,((ag<0||ag>=BC.length)?($throwRuntimeError("index out of range"),undefined):BC[ag]))>>0));ai=0;if(p>=ah){o=o+(1)>>0;ai=ah;}else{ai=((((o<0||o>=BC.length)?($throwRuntimeError("index out of range"),undefined):BC[o])>>0));}o=o+(1)>>0;p=(p-ai>>0)+1>>0;return[n,o,p,q];};BD=function(l,m){var l,m,n;if((l===2)&&BM(m)){return 29;}return(((((l<0||l>=BC.length)?($throwRuntimeError("index out of range"),undefined):BC[l])-(n=l-1>>0,((n<0||n>=BC.length)?($throwRuntimeError("index out of range"),undefined):BC[n]))>>0)>>0));};BE=function(l){var l,m,n,o,p,q,r,s,t,u,v,w;o=((m=(n=(new $Int64(0,l)),new $Int64(n.$high- -69,n.$low-4075721025)),new $Uint64(m.$high,m.$low)));p=$div64(o,new $Uint64(0,400),false);o=(q=$mul64(new $Uint64(0,400),p),new $Uint64(o.$high-q.$high,o.$low-q.$low));r=$mul64(new $Uint64(0,146097),p);p=$div64(o,new $Uint64(0,100),false);o=(s=$mul64(new $Uint64(0,100),p),new $Uint64(o.$high-s.$high,o.$low-s.$low));r=(t=$mul64(new $Uint64(0,36524),p),new $Uint64(r.$high+t.$high,r.$low+t.$low));p=$div64(o,new $Uint64(0,4),false);o=(u=$mul64(new $Uint64(0,4),p),new $Uint64(o.$high-u.$high,o.$low-u.$low));r=(v=$mul64(new $Uint64(0,1461),p),new $Uint64(r.$high+v.$high,r.$low+v.$low));p=o;r=(w=$mul64(new $Uint64(0,365),p),new $Uint64(r.$high+w.$high,r.$low+w.$low));return r;};BF=function(){$throwRuntimeError("native function not implemented: time.runtimeNano");};BH=function(){var{l,m,n,o,p,q,r,s,t,u,v,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:m=DU();$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[0];o=l[1];p=l[2];p=(q=BG,new $Int64(p.$high-q.$high,p.$low-q.$low));n=(r=new $Int64(0,2682288000),new $Int64(n.$high+r.$high,n.$low+r.$low));if(!((s=$shiftRightUint64((new $Uint64(n.$high,n.$low)),33),(s.$high===0&&s.$low===0)))){$s=-1;return new AQ.ptr((new $Uint64(0,o)),new $Int64(n.$high+13,n.$low+3618733952),$pkg.Local);}$s=-1;return new AQ.ptr((t=(u=$shiftLeft64((new $Uint64(n.$high,n.$low)),30),new $Uint64(2147483648|u.$high,(0|u.$low)>>>0)),v=(new $Uint64(0,o)),new $Uint64(t.$high|v.$high,(t.$low|v.$low)>>>0)),p,$pkg.Local);}return;}var $f={$blk:BH,$c:true,$r,l,m,n,o,p,q,r,s,t,u,v,$s};return $f;};$pkg.Now=BH;BI=function(l,m){var l,m;return new AQ.ptr((new $Uint64(0,m)),new $Int64(l.$high+14,l.$low+2006054656),$pkg.Local);};AQ.ptr.prototype.UTC=function(){var l;l=this;l.setLoc(Z);return l;};AQ.prototype.UTC=function(){return this.$val.UTC();};AQ.ptr.prototype.Local=function(){var l;l=this;l.setLoc($pkg.Local);return l;};AQ.prototype.Local=function(){return this.$val.Local();};AQ.ptr.prototype.In=function(l){var l,m;m=this;if(l===EL.nil){$panic(new $String("time: missing Location in call to Time.In"));}m.setLoc(l);return m;};AQ.prototype.In=function(l){return this.$val.In(l);};AQ.ptr.prototype.Location=function(){var l,m;l=this;m=l.loc;if(m===EL.nil){m=$pkg.UTC;}return m;};AQ.prototype.Location=function(){return this.$val.Location();};AQ.ptr.prototype.Zone=function(){var{l,m,n,o,p,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:l="";m=0;n=this;p=n.loc.lookup(n.unixSec());$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;l=o[0];m=o[1];$s=-1;return[l,m];}return;}var $f={$blk:AQ.ptr.prototype.Zone,$c:true,$r,l,m,n,o,p,$s};return $f;};AQ.prototype.Zone=function(){return this.$val.Zone();};AQ.ptr.prototype.Unix=function(){var l;l=this;return l.unixSec();};AQ.prototype.Unix=function(){return this.$val.Unix();};AQ.ptr.prototype.UnixMilli=function(){var l,m,n;l=this;return(m=$mul64(l.unixSec(),new $Int64(0,1000)),n=$div64((new $Int64(0,l.nsec())),new $Int64(0,1000000),false),new $Int64(m.$high+n.$high,m.$low+n.$low));};AQ.prototype.UnixMilli=function(){return this.$val.UnixMilli();};AQ.ptr.prototype.UnixMicro=function(){var l,m,n;l=this;return(m=$mul64(l.unixSec(),new $Int64(0,1000000)),n=$div64((new $Int64(0,l.nsec())),new $Int64(0,1000),false),new $Int64(m.$high+n.$high,m.$low+n.$low));};AQ.prototype.UnixMicro=function(){return this.$val.UnixMicro();};AQ.ptr.prototype.UnixNano=function(){var l,m,n;l=this;return(m=$mul64((l.unixSec()),new $Int64(0,1000000000)),n=(new $Int64(0,l.nsec())),new $Int64(m.$high+n.$high,m.$low+n.$low));};AQ.prototype.UnixNano=function(){return this.$val.UnixNano();};AQ.ptr.prototype.MarshalBinary=function(){var{l,m,n,o,p,q,r,s,t,u,v,w,x,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:l=this;m=0;n=0;o=1;if($clone(l,AQ).Location()===$pkg.UTC){$s=1;continue;}$s=2;continue;case 1:m=-1;$s=3;continue;case 2:q=$clone(l,AQ).Zone();$s=4;case 4:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;r=p[1];if(!(((s=r%60,s===s?s:$throwRuntimeError("integer divide by zero"))===0))){o=2;n=(((t=r%60,t===t?t:$throwRuntimeError("integer divide by zero"))<<24>>24));}r=(u=r/(60),(u===u&&u!==1/0&&u!==-1/0)?u>>0:$throwRuntimeError("integer divide by zero"));if(r<-32768||(r===-1)||r>32767){$s=-1;return[EK.nil,A.New("Time.MarshalBinary: unexpected zone offset")];}m=((r<<16>>16));case 3:v=l.sec();w=l.nsec();x=new EK([o,(($shiftRightInt64(v,56).$low<<24>>>24)),(($shiftRightInt64(v,48).$low<<24>>>24)),(($shiftRightInt64(v,40).$low<<24>>>24)),(($shiftRightInt64(v,32).$low<<24>>>24)),(($shiftRightInt64(v,24).$low<<24>>>24)),(($shiftRightInt64(v,16).$low<<24>>>24)),(($shiftRightInt64(v,8).$low<<24>>>24)),((v.$low<<24>>>24)),(((w>>24>>0)<<24>>>24)),(((w>>16>>0)<<24>>>24)),(((w>>8>>0)<<24>>>24)),((w<<24>>>24)),(((m>>8<<16>>16)<<24>>>24)),((m<<24>>>24))]);if(o===2){x=$append(x,((n<<24>>>24)));}$s=-1;return[x,$ifaceNil];}return;}var $f={$blk:AQ.ptr.prototype.MarshalBinary,$c:true,$r,l,m,n,o,p,q,r,s,t,u,v,w,x,$s};return $f;};AQ.prototype.MarshalBinary=function(){return this.$val.MarshalBinary();};AQ.ptr.prototype.UnmarshalBinary=function(l){var{aa,ab,ac,ad,ae,af,ag,ah,ai,aj,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{l});$s=$s||0;s:while(true){switch($s){case 0:m=this;n=l;if(n.$length===0){$s=-1;return A.New("Time.UnmarshalBinary: no data");}o=(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]);if(!((o===1))&&!((o===2))){$s=-1;return A.New("Time.UnmarshalBinary: unsupported version");}p=15;if(o===2){p=p+(1)>>0;}if(!((n.$length===p))){$s=-1;return A.New("Time.UnmarshalBinary: invalid length");}n=$subslice(n,1);ae=(q=(r=(s=(t=(u=(v=(w=(new $Int64(0,(7>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+7]))),x=$shiftLeft64((new $Int64(0,(6>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+6]))),8),new $Int64(w.$high|x.$high,(w.$low|x.$low)>>>0)),y=$shiftLeft64((new $Int64(0,(5>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+5]))),16),new $Int64(v.$high|y.$high,(v.$low|y.$low)>>>0)),z=$shiftLeft64((new $Int64(0,(4>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+4]))),24),new $Int64(u.$high|z.$high,(u.$low|z.$low)>>>0)),aa=$shiftLeft64((new $Int64(0,(3>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+3]))),32),new $Int64(t.$high|aa.$high,(t.$low|aa.$low)>>>0)),ab=$shiftLeft64((new $Int64(0,(2>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+2]))),40),new $Int64(s.$high|ab.$high,(s.$low|ab.$low)>>>0)),ac=$shiftLeft64((new $Int64(0,(1>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+1]))),48),new $Int64(r.$high|ac.$high,(r.$low|ac.$low)>>>0)),ad=$shiftLeft64((new $Int64(0,(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]))),56),new $Int64(q.$high|ad.$high,(q.$low|ad.$low)>>>0));n=$subslice(n,8);af=(((((3>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+3])>>0))|((((2>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+2])>>0))<<8>>0))|((((1>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+1])>>0))<<16>>0))|((((0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0])>>0))<<24>>0);n=$subslice(n,4);ag=$imul(((((((1>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+1])<<16>>16))|((((0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0])<<16>>16))<<8<<16>>16))>>0)),60);if(o===2){ag=ag+((((2>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+2])>>0)))>>0;}AQ.copy(m,new AQ.ptr(new $Uint64(0,0),new $Int64(0,0),EL.nil));m.wall=(new $Uint64(0,af));m.ext=ae;if(ag===-60){$s=1;continue;}$s=2;continue;case 1:m.setLoc(Z);$s=3;continue;case 2:ai=$pkg.Local.lookup(m.unixSec());$s=4;case 4:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ah=ai;aj=ah[1];if(ag===aj){m.setLoc($pkg.Local);}else{m.setLoc(AC("",ag));}case 3:$s=-1;return $ifaceNil;}return;}var $f={$blk:AQ.ptr.prototype.UnmarshalBinary,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};AQ.prototype.UnmarshalBinary=function(l){return this.$val.UnmarshalBinary(l);};AQ.ptr.prototype.GobEncode=function(){var{l,m,n,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:l=this;m=$clone(l,AQ).MarshalBinary();$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;$s=2;case 2:return n;}return;}var $f={$blk:AQ.ptr.prototype.GobEncode,$c:true,$r,l,m,n,$s};return $f;};AQ.prototype.GobEncode=function(){return this.$val.GobEncode();};AQ.ptr.prototype.GobDecode=function(l){var{l,m,n,o,$s,$r,$c}=$restore(this,{l});$s=$s||0;s:while(true){switch($s){case 0:m=this;n=m.UnmarshalBinary(l);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;$s=2;case 2:return o;}return;}var $f={$blk:AQ.ptr.prototype.GobDecode,$c:true,$r,l,m,n,o,$s};return $f;};AQ.prototype.GobDecode=function(l){return this.$val.GobDecode(l);};AQ.ptr.prototype.MarshalJSON=function(){var{l,m,n,o,p,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:l=this;m=$clone(l,AQ).Year();$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;if(n<0||n>=10000){$s=-1;return[EK.nil,A.New("Time.MarshalJSON: year outside of range [0,9999]")];}o=$makeSlice(EK,0,37);o=$append(o,34);p=$clone(l,AQ).AppendFormat(o,"2006-01-02T15:04:05.999999999Z07:00");$s=2;case 2:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;o=$append(o,34);$s=-1;return[o,$ifaceNil];}return;}var $f={$blk:AQ.ptr.prototype.MarshalJSON,$c:true,$r,l,m,n,o,p,$s};return $f;};AQ.prototype.MarshalJSON=function(){return this.$val.MarshalJSON();};AQ.ptr.prototype.UnmarshalJSON=function(l){var{l,m,n,o,p,$s,$r,$c}=$restore(this,{l});$s=$s||0;s:while(true){switch($s){case 0:m=this;if(($bytesToString(l))==="null"){$s=-1;return $ifaceNil;}n=$ifaceNil;p=DD("\"2006-01-02T15:04:05Z07:00\"",($bytesToString(l)));$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;AQ.copy(m,o[0]);n=o[1];$s=-1;return n;}return;}var $f={$blk:AQ.ptr.prototype.UnmarshalJSON,$c:true,$r,l,m,n,o,p,$s};return $f;};AQ.prototype.UnmarshalJSON=function(l){return this.$val.UnmarshalJSON(l);};AQ.ptr.prototype.MarshalText=function(){var{l,m,n,o,p,q,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:l=this;m=$clone(l,AQ).Year();$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;if(n<0||n>=10000){$s=-1;return[EK.nil,A.New("Time.MarshalText: year outside of range [0,9999]")];}o=$makeSlice(EK,0,35);p=$clone(l,AQ).AppendFormat(o,"2006-01-02T15:04:05.999999999Z07:00");$s=2;case 2:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=[p,$ifaceNil];$s=3;case 3:return q;}return;}var $f={$blk:AQ.ptr.prototype.MarshalText,$c:true,$r,l,m,n,o,p,q,$s};return $f;};AQ.prototype.MarshalText=function(){return this.$val.MarshalText();};AQ.ptr.prototype.UnmarshalText=function(l){var{l,m,n,o,p,$s,$r,$c}=$restore(this,{l});$s=$s||0;s:while(true){switch($s){case 0:m=this;n=$ifaceNil;p=DD("2006-01-02T15:04:05Z07:00",($bytesToString(l)));$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;AQ.copy(m,o[0]);n=o[1];$s=-1;return n;}return;}var $f={$blk:AQ.ptr.prototype.UnmarshalText,$c:true,$r,l,m,n,o,p,$s};return $f;};AQ.prototype.UnmarshalText=function(l){return this.$val.UnmarshalText(l);};BJ=function(l,m){var l,m,n,o,p,q,r;if((m.$high<0||(m.$high===0&&m.$low<0))||(m.$high>0||(m.$high===0&&m.$low>=1000000000))){n=$div64(m,new $Int64(0,1000000000),false);l=(o=n,new $Int64(l.$high+o.$high,l.$low+o.$low));m=(p=$mul64(n,new $Int64(0,1000000000)),new $Int64(m.$high-p.$high,m.$low-p.$low));if((m.$high<0||(m.$high===0&&m.$low<0))){m=(q=new $Int64(0,1000000000),new $Int64(m.$high+q.$high,m.$low+q.$low));l=(r=new $Int64(0,1),new $Int64(l.$high-r.$high,l.$low-r.$low));}}return BI(l,(((m.$low+((m.$high>>31)*4294967296))>>0)));};$pkg.Unix=BJ;AQ.ptr.prototype.IsDST=function(){var{l,m,n,o,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:l=this;n=l.loc.lookup($clone(l,AQ).Unix());$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[4];$s=-1;return o;}return;}var $f={$blk:AQ.ptr.prototype.IsDST,$c:true,$r,l,m,n,o,$s};return $f;};AQ.prototype.IsDST=function(){return this.$val.IsDST();};BM=function(l){var l,m,n,o;return((m=l%4,m===m?m:$throwRuntimeError("integer divide by zero"))===0)&&(!(((n=l%100,n===n?n:$throwRuntimeError("integer divide by zero"))===0))||((o=l%400,o===o?o:$throwRuntimeError("integer divide by zero"))===0));};BN=function(l,m,n){var l,m,n,o,p,q,r,s,t,u,v;o=0;p=0;if(m<0){r=(q=((-m-1>>0))/n,(q===q&&q!==1/0&&q!==-1/0)?q>>0:$throwRuntimeError("integer divide by zero"))+1>>0;l=l-(r)>>0;m=m+(($imul(r,n)))>>0;}if(m>=n){t=(s=m/n,(s===s&&s!==1/0&&s!==-1/0)?s>>0:$throwRuntimeError("integer divide by zero"));l=l+(t)>>0;m=m-(($imul(t,n)))>>0;}u=l;v=m;o=u;p=v;return[o,p];};BO=function(l,m,n,o,p,q,r,s){var{aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{l,m,n,o,p,q,r,s});$s=$s||0;s:while(true){switch($s){case 0:if(s===EL.nil){$panic(new $String("time: missing Location in call to Date"));}t=((m>>0))-1>>0;u=BN(l,t,12);l=u[0];t=u[1];m=((t>>0))+1>>0;v=BN(q,r,1000000000);q=v[0];r=v[1];w=BN(p,q,60);p=w[0];q=w[1];x=BN(o,p,60);o=x[0];p=x[1];y=BN(n,o,24);n=y[0];o=y[1];z=BE(l);z=(aa=(new $Uint64(0,(ab=m-1>>0,((ab<0||ab>=BC.length)?($throwRuntimeError("index out of range"),undefined):BC[ab])))),new $Uint64(z.$high+aa.$high,z.$low+aa.$low));if(BM(l)&&m>=3){z=(ac=new $Uint64(0,1),new $Uint64(z.$high+ac.$high,z.$low+ac.$low));}z=(ad=(new $Uint64(0,(n-1>>0))),new $Uint64(z.$high+ad.$high,z.$low+ad.$low));ae=$mul64(z,new $Uint64(0,86400));ae=(af=(new $Uint64(0,((($imul(o,3600))+($imul(p,60))>>0)+q>>0))),new $Uint64(ae.$high+af.$high,ae.$low+af.$low));ah=(ag=(new $Int64(ae.$high,ae.$low)),new $Int64(ag.$high+-2147483647,ag.$low+3844486912));aj=s.lookup(ah);$s=1;case 1:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ai=aj;ak=ai[1];al=ai[2];am=ai[3];if(!((ak===0))){$s=2;continue;}$s=3;continue;case 2:ao=(an=(new $Int64(0,ak)),new $Int64(ah.$high-an.$high,ah.$low-an.$low));if((ao.$high<al.$high||(ao.$high===al.$high&&ao.$low<al.$low))||(ao.$high>am.$high||(ao.$high===am.$high&&ao.$low>=am.$low))){$s=4;continue;}$s=5;continue;case 4:aq=s.lookup(ao);$s=6;case 6:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;ak=ap[1];case 5:ah=(ar=(new $Int64(0,ak)),new $Int64(ah.$high-ar.$high,ah.$low-ar.$low));case 3:as=$clone(BI(ah,((r>>0))),AQ);as.setLoc(s);$s=-1;return as;}return;}var $f={$blk:BO,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};$pkg.Date=BO;AQ.ptr.prototype.Truncate=function(l){var l,m,n,o;m=this;m.stripMono();if((l.$high<0||(l.$high===0&&l.$low<=0))){return m;}n=BP($clone(m,AQ),l);o=n[1];return $clone(m,AQ).Add(new AV(-o.$high,-o.$low));};AQ.prototype.Truncate=function(l){return this.$val.Truncate(l);};AQ.ptr.prototype.Round=function(l){var l,m,n,o;m=this;m.stripMono();if((l.$high<0||(l.$high===0&&l.$low<=0))){return m;}n=BP($clone(m,AQ),l);o=n[1];if(AY(o,l)){return $clone(m,AQ).Add(new AV(-o.$high,-o.$low));}return $clone(m,AQ).Add(new AV(l.$high-o.$high,l.$low-o.$low));};AQ.prototype.Round=function(l){return this.$val.Round(l);};BP=function(l,m){var aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;n=0;o=new AV(0,0);p=false;q=l.nsec();r=l.sec();if((r.$high<0||(r.$high===0&&r.$low<0))){p=true;r=new $Int64(-r.$high,-r.$low);q=-q;if(q<0){q=q+(1000000000)>>0;r=(s=new $Int64(0,1),new $Int64(r.$high-s.$high,r.$low-s.$low));}}if((m.$high<0||(m.$high===0&&m.$low<1000000000))&&(t=$div64(new AV(0,1000000000),(new AV(m.$high+m.$high,m.$low+m.$low)),true),(t.$high===0&&t.$low===0))){n=(((v=q/(((m.$low+((m.$high>>31)*4294967296))>>0)),(v===v&&v!==1/0&&v!==-1/0)?v>>0:$throwRuntimeError("integer divide by zero"))>>0))&1;o=(new AV(0,(w=q%(((m.$low+((m.$high>>31)*4294967296))>>0)),w===w?w:$throwRuntimeError("integer divide by zero"))));}else if((u=$div64(m,new AV(0,1000000000),true),(u.$high===0&&u.$low===0))){y=((x=$div64(m,new AV(0,1000000000),false),new $Int64(x.$high,x.$low)));n=(((z=$div64(r,y,false),z.$low+((z.$high>>31)*4294967296))>>0))&1;o=(aa=$mul64(((ab=$div64(r,y,true),new AV(ab.$high,ab.$low))),new AV(0,1000000000)),ac=(new AV(0,q)),new AV(aa.$high+ac.$high,aa.$low+ac.$low));}else{ad=(new $Uint64(r.$high,r.$low));ae=$mul64(($shiftRightUint64(ad,32)),new $Uint64(0,1000000000));af=$shiftRightUint64(ae,32);ag=$shiftLeft64(ae,32);ae=$mul64((new $Uint64(ad.$high&0,(ad.$low&4294967295)>>>0)),new $Uint64(0,1000000000));ah=ag;ai=new $Uint64(ag.$high+ae.$high,ag.$low+ae.$low);aj=ah;ag=ai;if((ag.$high<aj.$high||(ag.$high===aj.$high&&ag.$low<aj.$low))){af=(ak=new $Uint64(0,1),new $Uint64(af.$high+ak.$high,af.$low+ak.$low));}al=ag;am=(an=(new $Uint64(0,q)),new $Uint64(ag.$high+an.$high,ag.$low+an.$low));aj=al;ag=am;if((ag.$high<aj.$high||(ag.$high===aj.$high&&ag.$low<aj.$low))){af=(ao=new $Uint64(0,1),new $Uint64(af.$high+ao.$high,af.$low+ao.$low));}ap=(new $Uint64(m.$high,m.$low));while(true){if(!(!((aq=$shiftRightUint64(ap,63),(aq.$high===0&&aq.$low===1))))){break;}ap=$shiftLeft64(ap,(1));}ar=new $Uint64(0,0);while(true){n=0;if((af.$high>ap.$high||(af.$high===ap.$high&&af.$low>ap.$low))||(af.$high===ap.$high&&af.$low===ap.$low)&&(ag.$high>ar.$high||(ag.$high===ar.$high&&ag.$low>=ar.$low))){n=1;as=ag;at=new $Uint64(ag.$high-ar.$high,ag.$low-ar.$low);aj=as;ag=at;if((ag.$high>aj.$high||(ag.$high===aj.$high&&ag.$low>aj.$low))){af=(au=new $Uint64(0,1),new $Uint64(af.$high-au.$high,af.$low-au.$low));}af=(av=ap,new $Uint64(af.$high-av.$high,af.$low-av.$low));}if((ap.$high===0&&ap.$low===0)&&(aw=(new $Uint64(m.$high,m.$low)),(ar.$high===aw.$high&&ar.$low===aw.$low))){break;}ar=$shiftRightUint64(ar,(1));ar=(ax=$shiftLeft64((new $Uint64(ap.$high&0,(ap.$low&1)>>>0)),63),new $Uint64(ar.$high|ax.$high,(ar.$low|ax.$low)>>>0));ap=$shiftRightUint64(ap,(1));}o=(new AV(ag.$high,ag.$low));}if(p&&!((o.$high===0&&o.$low===0))){n=(n^(1))>>0;o=new AV(m.$high-o.$high,m.$low-o.$low);}return[n,o];};CG=function(l){var l,m;if(l.length===0){return false;}m=l.charCodeAt(0);return 97<=m&&m<=122;};CH=function(l){var aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;m="";n=0;o="";p=0;while(true){if(!(p<l.length)){break;}q=((l.charCodeAt(p)>>0));r=q;if(r===(74)){if(l.length>=(p+3>>0)&&$substring(l,p,(p+3>>0))==="Jan"){if(l.length>=(p+7>>0)&&$substring(l,p,(p+7>>0))==="January"){s=$substring(l,0,p);t=257;u=$substring(l,(p+7>>0));m=s;n=t;o=u;return[m,n,o];}if(!CG($substring(l,(p+3>>0)))){v=$substring(l,0,p);w=258;x=$substring(l,(p+3>>0));m=v;n=w;o=x;return[m,n,o];}}}else if(r===(77)){if(l.length>=(p+3>>0)){if($substring(l,p,(p+3>>0))==="Mon"){if(l.length>=(p+6>>0)&&$substring(l,p,(p+6>>0))==="Monday"){y=$substring(l,0,p);z=261;aa=$substring(l,(p+6>>0));m=y;n=z;o=aa;return[m,n,o];}if(!CG($substring(l,(p+3>>0)))){ab=$substring(l,0,p);ac=262;ad=$substring(l,(p+3>>0));m=ab;n=ac;o=ad;return[m,n,o];}}if($substring(l,p,(p+3>>0))==="MST"){ae=$substring(l,0,p);af=23;ag=$substring(l,(p+3>>0));m=ae;n=af;o=ag;return[m,n,o];}}}else if(r===(48)){if(l.length>=(p+2>>0)&&49<=l.charCodeAt((p+1>>0))&&l.charCodeAt((p+1>>0))<=54){ah=$substring(l,0,p);ai=(aj=l.charCodeAt((p+1>>0))-49<<24>>>24,((aj<0||aj>=CF.length)?($throwRuntimeError("index out of range"),undefined):CF[aj]));ak=$substring(l,(p+2>>0));m=ah;n=ai;o=ak;return[m,n,o];}if(l.length>=(p+3>>0)&&(l.charCodeAt((p+1>>0))===48)&&(l.charCodeAt((p+2>>0))===50)){al=$substring(l,0,p);am=267;an=$substring(l,(p+3>>0));m=al;n=am;o=an;return[m,n,o];}}else if(r===(49)){if(l.length>=(p+2>>0)&&(l.charCodeAt((p+1>>0))===53)){ao=$substring(l,0,p);ap=524;aq=$substring(l,(p+2>>0));m=ao;n=ap;o=aq;return[m,n,o];}ar=$substring(l,0,p);as=259;at=$substring(l,(p+1>>0));m=ar;n=as;o=at;return[m,n,o];}else if(r===(50)){if(l.length>=(p+4>>0)&&$substring(l,p,(p+4>>0))==="2006"){au=$substring(l,0,p);av=275;aw=$substring(l,(p+4>>0));m=au;n=av;o=aw;return[m,n,o];}ax=$substring(l,0,p);ay=263;az=$substring(l,(p+1>>0));m=ax;n=ay;o=az;return[m,n,o];}else if(r===(95)){if(l.length>=(p+2>>0)&&(l.charCodeAt((p+1>>0))===50)){if(l.length>=(p+5>>0)&&$substring(l,(p+1>>0),(p+5>>0))==="2006"){ba=$substring(l,0,(p+1>>0));bb=275;bc=$substring(l,(p+5>>0));m=ba;n=bb;o=bc;return[m,n,o];}bd=$substring(l,0,p);be=264;bf=$substring(l,(p+2>>0));m=bd;n=be;o=bf;return[m,n,o];}if(l.length>=(p+3>>0)&&(l.charCodeAt((p+1>>0))===95)&&(l.charCodeAt((p+2>>0))===50)){bg=$substring(l,0,p);bh=266;bi=$substring(l,(p+3>>0));m=bg;n=bh;o=bi;return[m,n,o];}}else if(r===(51)){bj=$substring(l,0,p);bk=525;bl=$substring(l,(p+1>>0));m=bj;n=bk;o=bl;return[m,n,o];}else if(r===(52)){bm=$substring(l,0,p);bn=527;bo=$substring(l,(p+1>>0));m=bm;n=bn;o=bo;return[m,n,o];}else if(r===(53)){bp=$substring(l,0,p);bq=529;br=$substring(l,(p+1>>0));m=bp;n=bq;o=br;return[m,n,o];}else if(r===(80)){if(l.length>=(p+2>>0)&&(l.charCodeAt((p+1>>0))===77)){bs=$substring(l,0,p);bt=533;bu=$substring(l,(p+2>>0));m=bs;n=bt;o=bu;return[m,n,o];}}else if(r===(112)){if(l.length>=(p+2>>0)&&(l.charCodeAt((p+1>>0))===109)){bv=$substring(l,0,p);bw=534;bx=$substring(l,(p+2>>0));m=bv;n=bw;o=bx;return[m,n,o];}}else if(r===(45)){if(l.length>=(p+7>>0)&&$substring(l,p,(p+7>>0))==="-070000"){by=$substring(l,0,p);bz=30;ca=$substring(l,(p+7>>0));m=by;n=bz;o=ca;return[m,n,o];}if(l.length>=(p+9>>0)&&$substring(l,p,(p+9>>0))==="-07:00:00"){cb=$substring(l,0,p);cc=33;cd=$substring(l,(p+9>>0));m=cb;n=cc;o=cd;return[m,n,o];}if(l.length>=(p+5>>0)&&$substring(l,p,(p+5>>0))==="-0700"){ce=$substring(l,0,p);cf=29;cg=$substring(l,(p+5>>0));m=ce;n=cf;o=cg;return[m,n,o];}if(l.length>=(p+6>>0)&&$substring(l,p,(p+6>>0))==="-07:00"){ch=$substring(l,0,p);ci=32;cj=$substring(l,(p+6>>0));m=ch;n=ci;o=cj;return[m,n,o];}if(l.length>=(p+3>>0)&&$substring(l,p,(p+3>>0))==="-07"){ck=$substring(l,0,p);cl=31;cm=$substring(l,(p+3>>0));m=ck;n=cl;o=cm;return[m,n,o];}}else if(r===(90)){if(l.length>=(p+7>>0)&&$substring(l,p,(p+7>>0))==="Z070000"){cn=$substring(l,0,p);co=25;cp=$substring(l,(p+7>>0));m=cn;n=co;o=cp;return[m,n,o];}if(l.length>=(p+9>>0)&&$substring(l,p,(p+9>>0))==="Z07:00:00"){cq=$substring(l,0,p);cr=28;cs=$substring(l,(p+9>>0));m=cq;n=cr;o=cs;return[m,n,o];}if(l.length>=(p+5>>0)&&$substring(l,p,(p+5>>0))==="Z0700"){ct=$substring(l,0,p);cu=24;cv=$substring(l,(p+5>>0));m=ct;n=cu;o=cv;return[m,n,o];}if(l.length>=(p+6>>0)&&$substring(l,p,(p+6>>0))==="Z07:00"){cw=$substring(l,0,p);cx=27;cy=$substring(l,(p+6>>0));m=cw;n=cx;o=cy;return[m,n,o];}if(l.length>=(p+3>>0)&&$substring(l,p,(p+3>>0))==="Z07"){cz=$substring(l,0,p);da=26;db=$substring(l,(p+3>>0));m=cz;n=da;o=db;return[m,n,o];}}else if((r===(46))||(r===(44))){if((p+1>>0)<l.length&&((l.charCodeAt((p+1>>0))===48)||(l.charCodeAt((p+1>>0))===57))){dc=l.charCodeAt((p+1>>0));dd=p+1>>0;while(true){if(!(dd<l.length&&(l.charCodeAt(dd)===dc))){break;}dd=dd+(1)>>0;}if(!CY(l,dd)){de=34;if(l.charCodeAt((p+1>>0))===57){de=35;}df=CR(de,dd-((p+1>>0))>>0,q);dg=$substring(l,0,p);dh=df;di=$substring(l,dd);m=dg;n=dh;o=di;return[m,n,o];}}}p=p+(1)>>0;}dj=l;dk=0;dl="";m=dj;n=dk;o=dl;return[m,n,o];};CM=function(l,m){var l,m,n,o,p;n=0;while(true){if(!(n<l.length)){break;}o=l.charCodeAt(n);p=m.charCodeAt(n);if(!((o===p))){o=(o|(32))>>>0;p=(p|(32))>>>0;if(!((o===p))||o<97||o>122){return false;}}n=n+(1)>>0;}return true;};CN=function(l,m){var l,m,n,o,p,q;n=l;o=0;while(true){if(!(o<n.$length)){break;}p=o;q=((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o]);if(m.length>=q.length&&CM($substring(m,0,q.length),q)){return[p,$substring(m,q.length),$ifaceNil];}o++;}return[-1,m,CV];};CO=function(l,m,n){var l,m,n,o,p,q,r,s,t;o=((m>>>0));if(m<0){l=$append(l,45);o=((-m>>>0));}p=ER.zero();q=20;while(true){if(!(o>=10)){break;}q=q-(1)>>0;s=(r=o/10,(r===r&&r!==1/0&&r!==-1/0)?r>>>0:$throwRuntimeError("integer divide by zero"));((q<0||q>=p.length)?($throwRuntimeError("index out of range"),undefined):p[q]=((((48+o>>>0)-(s*10>>>0)>>>0)<<24>>>24)));o=s;}q=q-(1)>>0;((q<0||q>=p.length)?($throwRuntimeError("index out of range"),undefined):p[q]=(((48+o>>>0)<<24>>>24)));t=20-q>>0;while(true){if(!(t<n)){break;}l=$append(l,48);t=t+(1)>>0;}return $appendSlice(l,$subslice(new EK(p),q));};CQ=function(l){var l,m,n,o,p,q,r,s,t,u,v;m=0;n=$ifaceNil;o=false;if(!(l==="")&&((l.charCodeAt(0)===45)||(l.charCodeAt(0)===43))){o=l.charCodeAt(0)===45;l=$substring(l,1);}p=DM(l);q=p[0];r=p[1];n=p[2];m=((q.$low>>0));if(!($interfaceIsEqual(n,$ifaceNil))||!(r==="")){s=0;t=CP;m=s;n=t;return[m,n];}if(o){m=-m;}u=m;v=$ifaceNil;m=u;n=v;return[m,n];};CR=function(l,m,n){var l,m,n;if(n===46){return l|((((m&4095))<<16>>0));}return(l|((((m&4095))<<16>>0)))|268435456;};CS=function(l){var l;return((l>>16>>0))&4095;};CT=function(l){var l;if(((l>>28>>0))===0){return 46;}return 44;};CU=function(l,m,n){var l,m,n,o,p,q,r,s,t,u,v,w;o=CS(n);p=CT(n);q=(n&65535)===35;r=m;s=ES.zero();t=9;while(true){if(!(t>0)){break;}t=t-(1)>>0;((t<0||t>=s.length)?($throwRuntimeError("index out of range"),undefined):s[t]=((((u=r%10,u===u?u:$throwRuntimeError("integer divide by zero"))+48>>>0)<<24>>>24)));r=(v=r/(10),(v===v&&v!==1/0&&v!==-1/0)?v>>>0:$throwRuntimeError("integer divide by zero"));}if(o>9){o=9;}if(q){while(true){if(!(o>0&&((w=o-1>>0,((w<0||w>=s.length)?($throwRuntimeError("index out of range"),undefined):s[w]))===48))){break;}o=o-(1)>>0;}if(o===0){return l;}}l=$append(l,p);return $appendSlice(l,$subslice(new EK(s),0,o));};AQ.ptr.prototype.String=function(){var{aa,ab,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:l=this;m=$clone(l,AQ).Format("2006-01-02 15:04:05.999999999 -0700 MST");$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;if(!((o=(p=l.wall,new $Uint64(p.$high&2147483648,(p.$low&0)>>>0)),(o.$high===0&&o.$low===0)))){r=((q=l.ext,new $Uint64(q.$high,q.$low)));s=43;if((t=l.ext,(t.$high<0||(t.$high===0&&t.$low<0)))){s=45;r=new $Uint64(-r.$high,-r.$low);}u=$div64(r,new $Uint64(0,1000000000),false);v=$div64(r,new $Uint64(0,1000000000),true);w=u;r=v;x=$div64(w,new $Uint64(0,1000000000),false);y=$div64(w,new $Uint64(0,1000000000),true);z=x;w=y;aa=$makeSlice(EK,0,24);aa=$appendSlice(aa," m=");aa=$append(aa,s);ab=0;if(!((z.$high===0&&z.$low===0))){aa=CO(aa,((z.$low>>0)),0);ab=9;}aa=CO(aa,((w.$low>>0)),ab);aa=$append(aa,46);aa=CO(aa,((r.$low>>0)),9);n=n+(($bytesToString(aa)));}$s=-1;return n;}return;}var $f={$blk:AQ.ptr.prototype.String,$c:true,$r,aa,ab,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};AQ.prototype.String=function(){return this.$val.String();};AQ.ptr.prototype.GoString=function(){var{aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:l=this;m=$makeSlice(EK,0,70);m=$appendSlice(m,"time.Date(");n=m;o=$clone(l,AQ).Year();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;q=CO(n,p,0);$s=2;case 2:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}m=q;r=$clone(l,AQ).Month();$s=3;case 3:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=r;if(1<=s&&s<=12){$s=4;continue;}$s=5;continue;case 4:m=$appendSlice(m,", time.");t=m;u=$clone(l,AQ).Month();$s=7;case 7:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}v=new AR(u).String();$s=8;case 8:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}w=v;m=$appendSlice(t,w);$s=6;continue;case 5:m=CO(m,((s>>0)),0);case 6:m=$appendSlice(m,", ");x=m;y=$clone(l,AQ).Day();$s=9;case 9:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=y;aa=CO(x,z,0);$s=10;case 10:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}m=aa;m=$appendSlice(m,", ");ab=m;ac=$clone(l,AQ).Hour();$s=11;case 11:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ad=ac;ae=CO(ab,ad,0);$s=12;case 12:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}m=ae;m=$appendSlice(m,", ");af=m;ag=$clone(l,AQ).Minute();$s=13;case 13:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ah=ag;ai=CO(af,ah,0);$s=14;case 14:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}m=ai;m=$appendSlice(m,", ");aj=m;ak=$clone(l,AQ).Second();$s=15;case 15:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;am=CO(aj,al,0);$s=16;case 16:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}m=am;m=$appendSlice(m,", ");m=CO(m,$clone(l,AQ).Nanosecond(),0);m=$appendSlice(m,", ");an=$clone(l,AQ).Location();ao=an;if(ao===($pkg.UTC)||ao===EL.nil){m=$appendSlice(m,"time.UTC");}else if(ao===($pkg.Local)){m=$appendSlice(m,"time.Local");}else{m=$appendSlice(m,"time.Location(");m=$appendSlice(m,(new EK($stringToBytes(CX(an.name)))));m=$appendSlice(m,")");}m=$append(m,41);$s=-1;return($bytesToString(m));}return;}var $f={$blk:AQ.ptr.prototype.GoString,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};AQ.prototype.GoString=function(){return this.$val.GoString();};AQ.ptr.prototype.Format=function(l){var{l,m,n,o,p,q,$s,$r,$c}=$restore(this,{l});$s=$s||0;s:while(true){switch($s){case 0:m=this;n=EK.nil;o=l.length+10>>0;if(o<64){p=ET.zero();n=$subslice(new EK(p),0,0);}else{n=$makeSlice(EK,0,o);}q=$clone(m,AQ).AppendFormat(n,l);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}n=q;$s=-1;return($bytesToString(n));}return;}var $f={$blk:AQ.ptr.prototype.Format,$c:true,$r,l,m,n,o,p,q,$s};return $f;};AQ.prototype.Format=function(l){return this.$val.Format(l);};AQ.ptr.prototype.AppendFormat=function(l,m){var{aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{l,m});$s=$s||0;s:while(true){switch($s){case 0:n=this;p=$clone(n,AQ).locabs();$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;q=o[0];r=o[1];s=o[2];t=-1;u=0;v=0;w=0;x=-1;y=0;z=0;while(true){if(!(!(m===""))){break;}aa=CH(m);ab=aa[0];ac=aa[1];ad=aa[2];if(!(ab==="")){l=$appendSlice(l,ab);}if(ac===0){break;}m=ad;if(t<0&&!(((ac&256)===0))){ae=BB(s,true);t=ae[0];u=ae[1];v=ae[2];w=ae[3];w=w+(1)>>0;}if(x<0&&!(((ac&512)===0))){af=AU(s);x=af[0];y=af[1];z=af[2];}switch(0){default:ag=ac&65535;if(ag===(276)){ah=t;if(ah<0){ah=-ah;}l=CO(l,(ai=ah%100,ai===ai?ai:$throwRuntimeError("integer divide by zero")),2);}else if(ag===(275)){l=CO(l,t,4);}else if(ag===(258)){l=$appendSlice(l,$substring(new AR(u).String(),0,3));}else if(ag===(257)){aj=new AR(u).String();l=$appendSlice(l,aj);}else if(ag===(259)){l=CO(l,((u>>0)),0);}else if(ag===(260)){l=CO(l,((u>>0)),2);}else if(ag===(262)){l=$appendSlice(l,$substring(new AS(AT(s)).String(),0,3));}else if(ag===(261)){ak=new AS(AT(s)).String();l=$appendSlice(l,ak);}else if(ag===(263)){l=CO(l,v,0);}else if(ag===(264)){if(v<10){l=$append(l,32);}l=CO(l,v,0);}else if(ag===(265)){l=CO(l,v,2);}else if(ag===(266)){if(w<100){l=$append(l,32);if(w<10){l=$append(l,32);}}l=CO(l,w,0);}else if(ag===(267)){l=CO(l,w,3);}else if(ag===(524)){l=CO(l,x,2);}else if(ag===(525)){am=(al=x%12,al===al?al:$throwRuntimeError("integer divide by zero"));if(am===0){am=12;}l=CO(l,am,0);}else if(ag===(526)){ao=(an=x%12,an===an?an:$throwRuntimeError("integer divide by zero"));if(ao===0){ao=12;}l=CO(l,ao,2);}else if(ag===(527)){l=CO(l,y,0);}else if(ag===(528)){l=CO(l,y,2);}else if(ag===(529)){l=CO(l,z,0);}else if(ag===(530)){l=CO(l,z,2);}else if(ag===(533)){if(x>=12){l=$appendSlice(l,"PM");}else{l=$appendSlice(l,"AM");}}else if(ag===(534)){if(x>=12){l=$appendSlice(l,"pm");}else{l=$appendSlice(l,"am");}}else if((ag===(24))||(ag===(27))||(ag===(25))||(ag===(26))||(ag===(28))||(ag===(29))||(ag===(32))||(ag===(30))||(ag===(31))||(ag===(33))){if((r===0)&&((ac===24)||(ac===27)||(ac===25)||(ac===26)||(ac===28))){l=$append(l,90);break;}aq=(ap=r/60,(ap===ap&&ap!==1/0&&ap!==-1/0)?ap>>0:$throwRuntimeError("integer divide by zero"));ar=r;if(aq<0){l=$append(l,45);aq=-aq;ar=-ar;}else{l=$append(l,43);}l=CO(l,(as=aq/60,(as===as&&as!==1/0&&as!==-1/0)?as>>0:$throwRuntimeError("integer divide by zero")),2);if((ac===27)||(ac===32)||(ac===28)||(ac===33)){l=$append(l,58);}if(!((ac===31))&&!((ac===26))){l=CO(l,(at=aq%60,at===at?at:$throwRuntimeError("integer divide by zero")),2);}if((ac===25)||(ac===30)||(ac===33)||(ac===28)){if((ac===33)||(ac===28)){l=$append(l,58);}l=CO(l,(au=ar%60,au===au?au:$throwRuntimeError("integer divide by zero")),2);}}else if(ag===(23)){if(!(q==="")){l=$appendSlice(l,q);break;}aw=(av=r/60,(av===av&&av!==1/0&&av!==-1/0)?av>>0:$throwRuntimeError("integer divide by zero"));if(aw<0){l=$append(l,45);aw=-aw;}else{l=$append(l,43);}l=CO(l,(ax=aw/60,(ax===ax&&ax!==1/0&&ax!==-1/0)?ax>>0:$throwRuntimeError("integer divide by zero")),2);l=CO(l,(ay=aw%60,ay===ay?ay:$throwRuntimeError("integer divide by zero")),2);}else if((ag===(34))||(ag===(35))){l=CU(l,(($clone(n,AQ).Nanosecond()>>>0)),ac);}}}$s=-1;return l;}return;}var $f={$blk:AQ.ptr.prototype.AppendFormat,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};AQ.prototype.AppendFormat=function(l,m){return this.$val.AppendFormat(l,m);};CX=function(l){var l,m,n,o,p,q,r,s,t;m=$makeSlice(EK,1,(l.length+2>>0));(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]=34);n=l;o=0;while(true){if(!(o<n.length)){break;}p=$decodeRune(n,o);q=o;r=p[0];if(r>=128||r<32){s=0;if(r===65533){s=1;if((q+2>>0)<l.length&&$substring(l,q,(q+3>>0))==="\xEF\xBF\xBD"){s=3;}}else{s=($encodeRune(r)).length;}t=0;while(true){if(!(t<s)){break;}m=$appendSlice(m,"\\x");m=$append(m,"0123456789abcdef".charCodeAt((l.charCodeAt((q+t>>0))>>>4<<24>>>24)));m=$append(m,"0123456789abcdef".charCodeAt(((l.charCodeAt((q+t>>0))&15)>>>0)));t=t+(1)>>0;}}else{if((r===34)||(r===92)){m=$append(m,92);}m=$appendSlice(m,($encodeRune(r)));}o+=p[1];}m=$append(m,34);return($bytesToString(m));};CW.ptr.prototype.Error=function(){var l;l=this;if(l.Message===""){return"parsing time "+CX(l.Value)+" as "+CX(l.Layout)+": cannot parse "+CX(l.ValueElem)+" as "+CX(l.LayoutElem);}return"parsing time "+CX(l.Value)+l.Message;};CW.prototype.Error=function(){return this.$val.Error();};CY=function(l,m){var l,m,n;if(l.length<=m){return false;}n=l.charCodeAt(m);return 48<=n&&n<=57;};CZ=function(l,m){var l,m;if(!CY(l,0)){return[0,l,CV];}if(!CY(l,1)){if(m){return[0,l,CV];}return[(((l.charCodeAt(0)-48<<24>>>24)>>0)),$substring(l,1),$ifaceNil];}return[($imul((((l.charCodeAt(0)-48<<24>>>24)>>0)),10))+(((l.charCodeAt(1)-48<<24>>>24)>>0))>>0,$substring(l,2),$ifaceNil];};DA=function(l,m){var l,m,n,o,p,q;n=0;o=0;p=n;q=o;q=0;while(true){if(!(q<3&&CY(l,q))){break;}p=($imul(p,10))+(((l.charCodeAt(q)-48<<24>>>24)>>0))>>0;q=q+(1)>>0;}if((q===0)||m&&!((q===3))){return[0,l,CV];}return[p,$substring(l,q),$ifaceNil];};DB=function(l){var l;while(true){if(!(l.length>0&&(l.charCodeAt(0)===32))){break;}l=$substring(l,1);}return l;};DC=function(l,m){var l,m;while(true){if(!(m.length>0)){break;}if(m.charCodeAt(0)===32){if(l.length>0&&!((l.charCodeAt(0)===32))){return[l,CV];}m=DB(m);l=DB(l);continue;}if((l.length===0)||!((l.charCodeAt(0)===m.charCodeAt(0)))){return[l,CV];}m=$substring(m,1);l=$substring(l,1);}return[l,$ifaceNil];};DD=function(l,m){var{l,m,n,o,$s,$r,$c}=$restore(this,{l,m});$s=$s||0;s:while(true){switch($s){case 0:n=DF(l,m,$pkg.UTC,$pkg.Local);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;$s=2;case 2:return o;}return;}var $f={$blk:DD,$c:true,$r,l,m,n,o,$s};return $f;};$pkg.Parse=DD;DF=function(l,m,n,o){var{aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,ea,eb,ec,ed,ee,ef,eg,eh,ei,ej,ek,el,em,en,eo,ep,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{l,m,n,o});$s=$s||0;s:while(true){switch($s){case 0:p=l;q=m;r=p;s=q;t="";u=false;v=false;w=0;x=-1;y=-1;z=-1;aa=0;ab=0;ac=0;ad=0;ae=EL.nil;af=-1;ag="";while(true){ah=$ifaceNil;ai=CH(l);aj=ai[0];ak=ai[1];al=ai[2];am=$substring(l,aj.length,(l.length-al.length>>0));an=DC(m,aj);m=an[0];ah=an[1];if(!($interfaceIsEqual(ah,$ifaceNil))){$s=-1;return[new AQ.ptr(new $Uint64(0,0),new $Int64(0,0),EL.nil),new CW.ptr(r,s,aj,m,"")];}if(ak===0){if(!((m.length===0))){$s=-1;return[new AQ.ptr(new $Uint64(0,0),new $Int64(0,0),EL.nil),new CW.ptr(r,s,"",m,": extra text: "+CX(m))];}break;}l=al;ao="";switch(0){default:ap=ak&65535;if(ap===(276)){if(m.length<2){ah=CV;break;}aq=m;ar=$substring(m,0,2);as=$substring(m,2);ao=ar;m=as;at=CQ(ao);w=at[0];ah=at[1];if(!($interfaceIsEqual(ah,$ifaceNil))){m=aq;}else if(w>=69){w=w+(1900)>>0;}else{w=w+(2000)>>0;}}else if(ap===(275)){if(m.length<4||!CY(m,0)){ah=CV;break;}au=$substring(m,0,4);av=$substring(m,4);ao=au;m=av;aw=CQ(ao);w=aw[0];ah=aw[1];}else if(ap===(258)){ax=CN(CK,m);x=ax[0];m=ax[1];ah=ax[2];x=x+(1)>>0;}else if(ap===(257)){ay=CN(CL,m);x=ay[0];m=ay[1];ah=ay[2];x=x+(1)>>0;}else if((ap===(259))||(ap===(260))){az=CZ(m,ak===260);x=az[0];m=az[1];ah=az[2];if($interfaceIsEqual(ah,$ifaceNil)&&(x<=0||12<x)){t="month";}}else if(ap===(262)){ba=CN(CJ,m);m=ba[1];ah=ba[2];}else if(ap===(261)){bb=CN(CI,m);m=bb[1];ah=bb[2];}else if((ap===(263))||(ap===(264))||(ap===(265))){if((ak===264)&&m.length>0&&(m.charCodeAt(0)===32)){m=$substring(m,1);}bc=CZ(m,ak===265);y=bc[0];m=bc[1];ah=bc[2];}else if((ap===(266))||(ap===(267))){bd=0;while(true){if(!(bd<2)){break;}if((ak===266)&&m.length>0&&(m.charCodeAt(0)===32)){m=$substring(m,1);}bd=bd+(1)>>0;}be=DA(m,ak===267);z=be[0];m=be[1];ah=be[2];}else if(ap===(524)){bf=CZ(m,false);aa=bf[0];m=bf[1];ah=bf[2];if(aa<0||24<=aa){t="hour";}}else if((ap===(525))||(ap===(526))){bg=CZ(m,ak===526);aa=bg[0];m=bg[1];ah=bg[2];if(aa<0||12<aa){t="hour";}}else if((ap===(527))||(ap===(528))){bh=CZ(m,ak===528);ab=bh[0];m=bh[1];ah=bh[2];if(ab<0||60<=ab){t="minute";}}else if((ap===(529))||(ap===(530))){bi=CZ(m,ak===530);ac=bi[0];m=bi[1];ah=bi[2];if(ac<0||60<=ac){t="second";break;}if(m.length>=2&&DJ(m.charCodeAt(0))&&CY(m,1)){bj=CH(l);ak=bj[1];ak=ak&(65535);if((ak===34)||(ak===35)){break;}bk=2;while(true){if(!(bk<m.length&&CY(m,bk))){break;}bk=bk+(1)>>0;}bl=DK(m,bk);ad=bl[0];t=bl[1];ah=bl[2];m=$substring(m,bk);}}else if(ap===(533)){if(m.length<2){ah=CV;break;}bm=$substring(m,0,2);bn=$substring(m,2);ao=bm;m=bn;bo=ao;if(bo===("PM")){v=true;}else if(bo===("AM")){u=true;}else{ah=CV;}}else if(ap===(534)){if(m.length<2){ah=CV;break;}bp=$substring(m,0,2);bq=$substring(m,2);ao=bp;m=bq;br=ao;if(br===("pm")){v=true;}else if(br===("am")){u=true;}else{ah=CV;}}else if((ap===(24))||(ap===(27))||(ap===(25))||(ap===(26))||(ap===(28))||(ap===(29))||(ap===(31))||(ap===(32))||(ap===(30))||(ap===(33))){if(((ak===24)||(ak===26)||(ak===27))&&m.length>=1&&(m.charCodeAt(0)===90)){m=$substring(m,1);ae=$pkg.UTC;break;}bs="";bt="";bu="";bv="";bw=bs;bx=bt;by=bu;bz=bv;if((ak===27)||(ak===32)){if(m.length<6){ah=CV;break;}if(!((m.charCodeAt(3)===58))){ah=CV;break;}ca=$substring(m,0,1);cb=$substring(m,1,3);cc=$substring(m,4,6);cd="00";ce=$substring(m,6);bw=ca;bx=cb;by=cc;bz=cd;m=ce;}else if((ak===31)||(ak===26)){if(m.length<3){ah=CV;break;}cf=$substring(m,0,1);cg=$substring(m,1,3);ch="00";ci="00";cj=$substring(m,3);bw=cf;bx=cg;by=ch;bz=ci;m=cj;}else if((ak===28)||(ak===33)){if(m.length<9){ah=CV;break;}if(!((m.charCodeAt(3)===58))||!((m.charCodeAt(6)===58))){ah=CV;break;}ck=$substring(m,0,1);cl=$substring(m,1,3);cm=$substring(m,4,6);cn=$substring(m,7,9);co=$substring(m,9);bw=ck;bx=cl;by=cm;bz=cn;m=co;}else if((ak===25)||(ak===30)){if(m.length<7){ah=CV;break;}cp=$substring(m,0,1);cq=$substring(m,1,3);cr=$substring(m,3,5);cs=$substring(m,5,7);ct=$substring(m,7);bw=cp;bx=cq;by=cr;bz=cs;m=ct;}else{if(m.length<5){ah=CV;break;}cu=$substring(m,0,1);cv=$substring(m,1,3);cw=$substring(m,3,5);cx="00";cy=$substring(m,5);bw=cu;bx=cv;by=cw;bz=cx;m=cy;}cz=0;da=0;db=0;dc=cz;dd=da;de=db;df=CQ(bx);dc=df[0];ah=df[1];if($interfaceIsEqual(ah,$ifaceNil)){dg=CQ(by);dd=dg[0];ah=dg[1];}if($interfaceIsEqual(ah,$ifaceNil)){dh=CQ(bz);de=dh[0];ah=dh[1];}af=($imul(((($imul(dc,60))+dd>>0)),60))+de>>0;di=bw.charCodeAt(0);if(di===(43)){}else if(di===(45)){af=-af;}else{ah=CV;}}else if(ap===(23)){if(m.length>=3&&$substring(m,0,3)==="UTC"){ae=$pkg.UTC;m=$substring(m,3);break;}dj=DG(m);dk=dj[0];dl=dj[1];if(!dl){ah=CV;break;}dm=$substring(m,0,dk);dn=$substring(m,dk);ag=dm;m=dn;}else if(ap===(34)){dp=1+CS(ak)>>0;if(m.length<dp){ah=CV;break;}dq=DK(m,dp);ad=dq[0];t=dq[1];ah=dq[2];m=$substring(m,dp);}else if(ap===(35)){if(m.length<2||!DJ(m.charCodeAt(0))||m.charCodeAt(1)<48||57<m.charCodeAt(1)){break;}dr=0;while(true){if(!(dr<9&&(dr+1>>0)<m.length&&48<=m.charCodeAt((dr+1>>0))&&m.charCodeAt((dr+1>>0))<=57)){break;}dr=dr+(1)>>0;}ds=DK(m,1+dr>>0);ad=ds[0];t=ds[1];ah=ds[2];m=$substring(m,(1+dr>>0));}}if(!(t==="")){$s=-1;return[new AQ.ptr(new $Uint64(0,0),new $Int64(0,0),EL.nil),new CW.ptr(r,s,am,m,": "+t+" out of range")];}if(!($interfaceIsEqual(ah,$ifaceNil))){$s=-1;return[new AQ.ptr(new $Uint64(0,0),new $Int64(0,0),EL.nil),new CW.ptr(r,s,am,m,"")];}}if(v&&aa<12){aa=aa+(12)>>0;}else if(u&&(aa===12)){aa=0;}if(z>=0){dt=0;du=0;if(BM(w)){if(z===60){du=2;dt=29;}else if(z>60){z=z-(1)>>0;}}if(z<1||z>365){$s=-1;return[new AQ.ptr(new $Uint64(0,0),new $Int64(0,0),EL.nil),new CW.ptr(r,s,"",m,": day-of-year out of range")];}if(du===0){du=(dv=((z-1>>0))/31,(dv===dv&&dv!==1/0&&dv!==-1/0)?dv>>0:$throwRuntimeError("integer divide by zero"))+1>>0;if(((((du<0||du>=BC.length)?($throwRuntimeError("index out of range"),undefined):BC[du])>>0))<z){du=du+(1)>>0;}dt=z-(((dw=du-1>>0,((dw<0||dw>=BC.length)?($throwRuntimeError("index out of range"),undefined):BC[dw]))>>0))>>0;}if(x>=0&&!((x===du))){$s=-1;return[new AQ.ptr(new $Uint64(0,0),new $Int64(0,0),EL.nil),new CW.ptr(r,s,"",m,": day-of-year does not match month")];}x=du;if(y>=0&&!((y===dt))){$s=-1;return[new AQ.ptr(new $Uint64(0,0),new $Int64(0,0),EL.nil),new CW.ptr(r,s,"",m,": day-of-year does not match day")];}y=dt;}else{if(x<0){x=1;}if(y<0){y=1;}}if(y<1||y>BD(((x>>0)),w)){$s=-1;return[new AQ.ptr(new $Uint64(0,0),new $Int64(0,0),EL.nil),new CW.ptr(r,s,"",m,": day out of range")];}if(!(ae===EL.nil)){$s=1;continue;}$s=2;continue;case 1:dx=BO(w,((x>>0)),y,aa,ab,ac,ad,ae);$s=3;case 3:if($c){$c=false;dx=dx.$blk();}if(dx&&dx.$blk!==undefined){break s;}dy=[dx,$ifaceNil];$s=4;case 4:return dy;case 2:if(!((af===-1))){$s=5;continue;}$s=6;continue;case 5:dz=BO(w,((x>>0)),y,aa,ab,ac,ad,$pkg.UTC);$s=7;case 7:if($c){$c=false;dz=dz.$blk();}if(dz&&dz.$blk!==undefined){break s;}ea=$clone(dz,AQ);ea.addSec((eb=(new $Int64(0,af)),new $Int64(-eb.$high,-eb.$low)));ed=o.lookup(ea.unixSec());$s=8;case 8:if($c){$c=false;ed=ed.$blk();}if(ed&&ed.$blk!==undefined){break s;}ec=ed;ee=ec[0];ef=ec[1];if((ef===af)&&(ag===""||ee===ag)){ea.setLoc(o);$s=-1;return[ea,$ifaceNil];}ea.setLoc(AC(ag,af));$s=-1;return[ea,$ifaceNil];case 6:if(!(ag==="")){$s=9;continue;}$s=10;continue;case 9:eg=BO(w,((x>>0)),y,aa,ab,ac,ad,$pkg.UTC);$s=11;case 11:if($c){$c=false;eg=eg.$blk();}if(eg&&eg.$blk!==undefined){break s;}eh=$clone(eg,AQ);ej=o.lookupName(ag,eh.unixSec());$s=12;case 12:if($c){$c=false;ej=ej.$blk();}if(ej&&ej.$blk!==undefined){break s;}ei=ej;ek=ei[0];el=ei[1];if(el){eh.addSec((em=(new $Int64(0,ek)),new $Int64(-em.$high,-em.$low)));eh.setLoc(o);$s=-1;return[eh,$ifaceNil];}if(ag.length>3&&$substring(ag,0,3)==="GMT"){en=CQ($substring(ag,3));ek=en[0];ek=$imul(ek,(3600));}eh.setLoc(AC(ag,ek));$s=-1;return[eh,$ifaceNil];case 10:eo=BO(w,((x>>0)),y,aa,ab,ac,ad,n);$s=13;case 13:if($c){$c=false;eo=eo.$blk();}if(eo&&eo.$blk!==undefined){break s;}ep=[eo,$ifaceNil];$s=14;case 14:return ep;}return;}var $f={$blk:DF,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,ea,eb,ec,ed,ee,ef,eg,eh,ei,ej,ek,el,em,en,eo,ep,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};DG=function(l){var aa,ab,ac,ad,ae,af,ag,ah,ai,aj,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;m=0;n=false;if(l.length<3){o=0;p=false;m=o;n=p;return[m,n];}if(l.length>=4&&($substring(l,0,4)==="ChST"||$substring(l,0,4)==="MeST")){q=4;r=true;m=q;n=r;return[m,n];}if($substring(l,0,3)==="GMT"){m=DH(l);s=m;t=true;m=s;n=t;return[m,n];}if((l.charCodeAt(0)===43)||(l.charCodeAt(0)===45)){m=DI(l);u=m>0;v=m;w=u;m=v;n=w;return[m,n];}x=0;x=0;while(true){if(!(x<6)){break;}if(x>=l.length){break;}y=l.charCodeAt(x);if(y<65||90<y){break;}x=x+(1)>>0;}z=x;if((z===(0))||(z===(1))||(z===(2))||(z===(6))){aa=0;ab=false;m=aa;n=ab;return[m,n];}else if(z===(5)){if(l.charCodeAt(4)===84){ac=5;ad=true;m=ac;n=ad;return[m,n];}}else if(z===(4)){if((l.charCodeAt(3)===84)||$substring(l,0,4)==="WITA"){ae=4;af=true;m=ae;n=af;return[m,n];}}else if(z===(3)){ag=3;ah=true;m=ag;n=ah;return[m,n];}ai=0;aj=false;m=ai;n=aj;return[m,n];};DH=function(l){var l;l=$substring(l,3);if(l.length===0){return 3;}return 3+DI(l)>>0;};DI=function(l){var l,m,n,o,p,q;m=l.charCodeAt(0);if(!((m===45))&&!((m===43))){return 0;}n=DM($substring(l,1));o=n[0];p=n[1];q=n[2];if(!($interfaceIsEqual(q,$ifaceNil))||$substring(l,1)===p){return 0;}if((o.$high>0||(o.$high===0&&o.$low>23))){return 0;}return l.length-p.length>>0;};DJ=function(l){var l;return(l===46)||(l===44);};DK=function(l,m){var l,m,n,o,p,q,r,s;n=0;o="";p=$ifaceNil;if(!DJ(l.charCodeAt(0))){p=CV;return[n,o,p];}if(m>10){l=$substring(l,0,10);m=10;}q=CQ($substring(l,1,m));n=q[0];p=q[1];if(!($interfaceIsEqual(p,$ifaceNil))){return[n,o,p];}if(n<0){o="fractional second";return[n,o,p];}r=10-m>>0;s=0;while(true){if(!(s<r)){break;}n=$imul(n,(10));s=s+(1)>>0;}return[n,o,p];};DM=function(l){var aa,ab,ac,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;m=new $Uint64(0,0);n="";o=$ifaceNil;p=0;while(true){if(!(p<l.length)){break;}q=l.charCodeAt(p);if(q<48||q>57){break;}if((m.$high>214748364||(m.$high===214748364&&m.$low>3435973836))){r=new $Uint64(0,0);s="";t=DL;m=r;n=s;o=t;return[m,n,o];}m=(u=(v=$mul64(m,new $Uint64(0,10)),w=(new $Uint64(0,q)),new $Uint64(v.$high+w.$high,v.$low+w.$low)),new $Uint64(u.$high-0,u.$low-48));if((m.$high>2147483648||(m.$high===2147483648&&m.$low>0))){x=new $Uint64(0,0);y="";z=DL;m=x;n=y;o=z;return[m,n,o];}p=p+(1)>>0;}aa=m;ab=$substring(l,p);ac=$ifaceNil;m=aa;n=ab;o=ac;return[m,n,o];};DQ=function(){var l,m,n,o,p,q;AA.name="Local";l=new X.ptr("",0,false);m=new($global.Date)();n=$imul(($parseInt(m.getTimezoneOffset())>>0),-1);l.offset=$imul(n,60);l.name="UTC";if(n<0){l.name=l.name+("-");n=$imul(n,(-1));}else{l.name=l.name+("+");}l.name=l.name+(DR((o=n/60,(o===o&&o!==1/0&&o!==-1/0)?o>>0:$throwRuntimeError("integer divide by zero"))));q=(p=n%60,p===p?p:$throwRuntimeError("integer divide by zero"));if(!((q===0))){l.name=l.name+(":"+DR(q));}AA.zone=new EF([$clone(l,X)]);};DR=function(l){var l;if(l<10){return $substring("0123456789",l,(l+1>>0));}return $substring("00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899",($imul(l,2)),(($imul(l,2))+2>>0));};DS=function(){$unused(BJ(new $Int64(0,0),new $Int64(0,0)));};DU=function(){var{l,m,n,o,p,q,r,s,t,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:l=new $Int64(0,0);m=0;n=new $Int64(0,0);o=BF();$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;q=$div64(p,new $Int64(0,1000000000),false);r=(((s=$div64(p,new $Int64(0,1000000000),true),s.$low+((s.$high>>31)*4294967296))>>0));t=p;l=q;m=r;n=t;$s=-1;return[l,m,n];}return;}var $f={$blk:DU,$c:true,$r,l,m,n,o,p,q,r,s,t,$s};return $f;};EL.methods=[{prop:"get",name:"get",pkg:"time",typ:$funcType([],[EL],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"lookup",name:"lookup",pkg:"time",typ:$funcType([$Int64],[$String,$Int,$Int64,$Int64,$Bool],false)},{prop:"lookupFirstZone",name:"lookupFirstZone",pkg:"time",typ:$funcType([],[$Int],false)},{prop:"firstZoneUsed",name:"firstZoneUsed",pkg:"time",typ:$funcType([],[$Bool],false)},{prop:"lookupName",name:"lookupName",pkg:"time",typ:$funcType([$String,$Int64],[$Int,$Bool],false)}];AQ.methods=[{prop:"After",name:"After",pkg:"",typ:$funcType([AQ],[$Bool],false)},{prop:"Before",name:"Before",pkg:"",typ:$funcType([AQ],[$Bool],false)},{prop:"Equal",name:"Equal",pkg:"",typ:$funcType([AQ],[$Bool],false)},{prop:"IsZero",name:"IsZero",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"abs",name:"abs",pkg:"time",typ:$funcType([],[$Uint64],false)},{prop:"locabs",name:"locabs",pkg:"time",typ:$funcType([],[$String,$Int,$Uint64],false)},{prop:"Date",name:"Date",pkg:"",typ:$funcType([],[$Int,AR,$Int],false)},{prop:"Year",name:"Year",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Month",name:"Month",pkg:"",typ:$funcType([],[AR],false)},{prop:"Day",name:"Day",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Weekday",name:"Weekday",pkg:"",typ:$funcType([],[AS],false)},{prop:"ISOWeek",name:"ISOWeek",pkg:"",typ:$funcType([],[$Int,$Int],false)},{prop:"Clock",name:"Clock",pkg:"",typ:$funcType([],[$Int,$Int,$Int],false)},{prop:"Hour",name:"Hour",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Minute",name:"Minute",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Second",name:"Second",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Nanosecond",name:"Nanosecond",pkg:"",typ:$funcType([],[$Int],false)},{prop:"YearDay",name:"YearDay",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Add",name:"Add",pkg:"",typ:$funcType([AV],[AQ],false)},{prop:"Sub",name:"Sub",pkg:"",typ:$funcType([AQ],[AV],false)},{prop:"AddDate",name:"AddDate",pkg:"",typ:$funcType([$Int,$Int,$Int],[AQ],false)},{prop:"date",name:"date",pkg:"time",typ:$funcType([$Bool],[$Int,AR,$Int,$Int],false)},{prop:"UTC",name:"UTC",pkg:"",typ:$funcType([],[AQ],false)},{prop:"Local",name:"Local",pkg:"",typ:$funcType([],[AQ],false)},{prop:"In",name:"In",pkg:"",typ:$funcType([EL],[AQ],false)},{prop:"Location",name:"Location",pkg:"",typ:$funcType([],[EL],false)},{prop:"Zone",name:"Zone",pkg:"",typ:$funcType([],[$String,$Int],false)},{prop:"Unix",name:"Unix",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"UnixMilli",name:"UnixMilli",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"UnixMicro",name:"UnixMicro",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"UnixNano",name:"UnixNano",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"MarshalBinary",name:"MarshalBinary",pkg:"",typ:$funcType([],[EK,$error],false)},{prop:"GobEncode",name:"GobEncode",pkg:"",typ:$funcType([],[EK,$error],false)},{prop:"MarshalJSON",name:"MarshalJSON",pkg:"",typ:$funcType([],[EK,$error],false)},{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[EK,$error],false)},{prop:"IsDST",name:"IsDST",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([AV],[AQ],false)},{prop:"Round",name:"Round",pkg:"",typ:$funcType([AV],[AQ],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"GoString",name:"GoString",pkg:"",typ:$funcType([],[$String],false)},{prop:"Format",name:"Format",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"AppendFormat",name:"AppendFormat",pkg:"",typ:$funcType([EK,$String],[EK],false)}];EW.methods=[{prop:"nsec",name:"nsec",pkg:"time",typ:$funcType([],[$Int32],false)},{prop:"sec",name:"sec",pkg:"time",typ:$funcType([],[$Int64],false)},{prop:"unixSec",name:"unixSec",pkg:"time",typ:$funcType([],[$Int64],false)},{prop:"addSec",name:"addSec",pkg:"time",typ:$funcType([$Int64],[],false)},{prop:"setLoc",name:"setLoc",pkg:"time",typ:$funcType([EL],[],false)},{prop:"stripMono",name:"stripMono",pkg:"time",typ:$funcType([],[],false)},{prop:"setMono",name:"setMono",pkg:"time",typ:$funcType([$Int64],[],false)},{prop:"mono",name:"mono",pkg:"time",typ:$funcType([],[$Int64],false)},{prop:"UnmarshalBinary",name:"UnmarshalBinary",pkg:"",typ:$funcType([EK],[$error],false)},{prop:"GobDecode",name:"GobDecode",pkg:"",typ:$funcType([EK],[$error],false)},{prop:"UnmarshalJSON",name:"UnmarshalJSON",pkg:"",typ:$funcType([EK],[$error],false)},{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([EK],[$error],false)}];AR.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];AS.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];AV.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Nanoseconds",name:"Nanoseconds",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Microseconds",name:"Microseconds",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Milliseconds",name:"Milliseconds",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Seconds",name:"Seconds",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Minutes",name:"Minutes",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Hours",name:"Hours",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([AV],[AV],false)},{prop:"Round",name:"Round",pkg:"",typ:$funcType([AV],[AV],false)}];FA.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];W.init("time",[{prop:"name",name:"name",embedded:false,exported:false,typ:$String,tag:""},{prop:"zone",name:"zone",embedded:false,exported:false,typ:EF,tag:""},{prop:"tx",name:"tx",embedded:false,exported:false,typ:EG,tag:""},{prop:"extend",name:"extend",embedded:false,exported:false,typ:$String,tag:""},{prop:"cacheStart",name:"cacheStart",embedded:false,exported:false,typ:$Int64,tag:""},{prop:"cacheEnd",name:"cacheEnd",embedded:false,exported:false,typ:$Int64,tag:""},{prop:"cacheZone",name:"cacheZone",embedded:false,exported:false,typ:EH,tag:""}]);X.init("time",[{prop:"name",name:"name",embedded:false,exported:false,typ:$String,tag:""},{prop:"offset",name:"offset",embedded:false,exported:false,typ:$Int,tag:""},{prop:"isDST",name:"isDST",embedded:false,exported:false,typ:$Bool,tag:""}]);Y.init("time",[{prop:"when",name:"when",embedded:false,exported:false,typ:$Int64,tag:""},{prop:"index",name:"index",embedded:false,exported:false,typ:$Uint8,tag:""},{prop:"isstd",name:"isstd",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"isutc",name:"isutc",embedded:false,exported:false,typ:$Bool,tag:""}]);AH.init("time",[{prop:"kind",name:"kind",embedded:false,exported:false,typ:AG,tag:""},{prop:"day",name:"day",embedded:false,exported:false,typ:$Int,tag:""},{prop:"week",name:"week",embedded:false,exported:false,typ:$Int,tag:""},{prop:"mon",name:"mon",embedded:false,exported:false,typ:$Int,tag:""},{prop:"time",name:"time",embedded:false,exported:false,typ:$Int,tag:""}]);AQ.init("time",[{prop:"wall",name:"wall",embedded:false,exported:false,typ:$Uint64,tag:""},{prop:"ext",name:"ext",embedded:false,exported:false,typ:$Int64,tag:""},{prop:"loc",name:"loc",embedded:false,exported:false,typ:EL,tag:""}]);CW.init("",[{prop:"Layout",name:"Layout",embedded:false,exported:true,typ:$String,tag:""},{prop:"Value",name:"Value",embedded:false,exported:true,typ:$String,tag:""},{prop:"LayoutElem",name:"LayoutElem",embedded:false,exported:true,typ:$String,tag:""},{prop:"ValueElem",name:"ValueElem",embedded:false,exported:true,typ:$String,tag:""},{prop:"Message",name:"Message",embedded:false,exported:true,typ:$String,tag:""}]);$pkg.$initLinknames=function(){BF=$linknames["runtime.nanotime"];};$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}AA=new W.ptr("",EF.nil,EG.nil,"",new $Int64(0,0),new $Int64(0,0),EH.nil);AB=new E.Once.ptr(false,false);L=A.New("malformed time zone information");$unused(new EJ(["/usr/share/zoneinfo/","/usr/share/lib/zoneinfo/","/usr/lib/locale/TZ/",B.GOROOT()+"/lib/time/zoneinfo.zip"]));Z=new W.ptr("UTC",EF.nil,EG.nil,"",new $Int64(0,0),new $Int64(0,0),EH.nil);$pkg.UTC=Z;$pkg.Local=AA;AL=A.New("time: invalid location name");BC=$toNativeArray($kindInt32,[0,31,59,90,120,151,181,212,243,273,304,334,365]);k=BF();$s=7;case 7:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}BG=(j=k,new $Int64(j.$high-0,j.$low-1));CF=$toNativeArray($kindInt,[260,265,526,528,530,276]);CI=new EJ(["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]);CJ=new EJ(["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]);CK=new EJ(["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]);CL=new EJ(["January","February","March","April","May","June","July","August","September","October","November","December"]);CP=A.New("time: invalid number");CV=A.New("bad value for field");DL=A.New("time: bad [0-9]*");EB=new EJ([B.GOROOT()+"/lib/time/zoneinfo.zip"]);DS();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["internal/poll"]=(function(){var $pkg={},$init,F,B,C,D,A,E,H,N,Q,R,T,Z,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK,AL,AM,AN,I,Y,G,J,K,L,M,O,S,V,W,X;F=$packages["errors"];B=$packages["internal/syscall/unix"];C=$packages["io"];D=$packages["sync/atomic"];A=$packages["syscall"];E=$packages["time"];H=$pkg.FD=$newType(0,$kindStruct,"poll.FD",true,"internal/poll",true,function(fdmu_,Sysfd_,pd_,iovecs_,csema_,isBlocking_,IsStream_,ZeroReadIsEOF_,isFile_){this.$val=this;if(arguments.length===0){this.fdmu=new Q.ptr(new $Uint64(0,0),0,0);this.Sysfd=0;this.pd=new N.ptr(AB.nil,false);this.iovecs=AE.nil;this.csema=0;this.isBlocking=0;this.IsStream=false;this.ZeroReadIsEOF=false;this.isFile=false;return;}this.fdmu=fdmu_;this.Sysfd=Sysfd_;this.pd=pd_;this.iovecs=iovecs_;this.csema=csema_;this.isBlocking=isBlocking_;this.IsStream=IsStream_;this.ZeroReadIsEOF=ZeroReadIsEOF_;this.isFile=isFile_;});N=$pkg.pollDesc=$newType(0,$kindStruct,"poll.pollDesc",true,"internal/poll",false,function(fd_,closing_){this.$val=this;if(arguments.length===0){this.fd=AB.nil;this.closing=false;return;}this.fd=fd_;this.closing=closing_;});Q=$pkg.fdMutex=$newType(0,$kindStruct,"poll.fdMutex",true,"internal/poll",false,function(state_,rsema_,wsema_){this.$val=this;if(arguments.length===0){this.state=new $Uint64(0,0);this.rsema=0;this.wsema=0;return;}this.state=state_;this.rsema=rsema_;this.wsema=wsema_;});R=$pkg.errNetClosing=$newType(0,$kindStruct,"poll.errNetClosing",true,"internal/poll",false,function(){this.$val=this;if(arguments.length===0){return;}});T=$pkg.DeadlineExceededError=$newType(0,$kindStruct,"poll.DeadlineExceededError",true,"internal/poll",true,function(){this.$val=this;if(arguments.length===0){return;}});Z=$ptrType($Uint32);AA=$ptrType($Int32);AB=$ptrType(H);AC=$ptrType($Uint64);AD=$sliceType(A.Iovec);AE=$ptrType(AD);AF=$sliceType($Uint8);AG=$ptrType(A.SockaddrInet4);AH=$ptrType(A.SockaddrInet6);AI=$ptrType(A.Stat_t);AJ=$funcType([$Uintptr],[$Bool],false);AK=$funcType([$Uintptr],[],false);AL=$ptrType(N);AM=$ptrType(Q);AN=$ptrType(T);G=function(c){var{c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:e=$pkg.AcceptFunc(c);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[0];g=d[1];h=d[2];if($interfaceIsEqual(h,$ifaceNil)){A.CloseOnExec(f);}if(!($interfaceIsEqual(h,$ifaceNil))){$s=-1;return[-1,$ifaceNil,"accept",h];}h=A.SetNonblock(f,true);if(!($interfaceIsEqual(h,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:i=$pkg.CloseFunc(f);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;$s=-1;return[-1,$ifaceNil,"setnonblock",h];case 3:$s=-1;return[f,g,"",$ifaceNil];}return;}var $f={$blk:G,$c:true,$r,c,d,e,f,g,h,i,$s};return $f;};H.ptr.prototype.Init=function(c,d){var c,d,e,f;e=this;if(c==="file"){e.isFile=true;}if(!d){e.isBlocking=1;return $ifaceNil;}f=e.pd.init(e);if(!($interfaceIsEqual(f,$ifaceNil))){e.isBlocking=1;}return f;};H.prototype.Init=function(c,d){return this.$val.Init(c,d);};H.ptr.prototype.destroy=function(){var{c,d,e,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:c=this;c.pd.close();d=$pkg.CloseFunc(c.Sysfd);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;c.Sysfd=-1;$r=X((c.$ptr_csema||(c.$ptr_csema=new Z(function(){return this.$target.csema;},function($v){this.$target.csema=$v;},c))));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return e;}return;}var $f={$blk:H.ptr.prototype.destroy,$c:true,$r,c,d,e,$s};return $f;};H.prototype.destroy=function(){return this.$val.destroy();};H.ptr.prototype.Close=function(){var{c,d,e,f,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=c.fdmu.increfAndClose();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}if(!d){$s=1;continue;}$s=2;continue;case 1:$s=-1;return S(c.isFile);case 2:c.pd.evict();e=c.decref();$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(c.isBlocking===0){$s=5;continue;}$s=6;continue;case 5:$r=W((c.$ptr_csema||(c.$ptr_csema=new Z(function(){return this.$target.csema;},function($v){this.$target.csema=$v;},c))));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:$s=-1;return f;}return;}var $f={$blk:H.ptr.prototype.Close,$c:true,$r,c,d,e,f,$s};return $f;};H.prototype.Close=function(){return this.$val.Close();};H.ptr.prototype.SetBlocking=function(){var{c,d,e,f,$s,$deferred,$r,$c}=$restore(this,{});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);c=this;d=c.incref();if(!($interfaceIsEqual(d,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:e=d;$s=3;case 3:return e;case 2:$deferred.push([$methodVal(c,"decref"),[]]);D.StoreUint32((c.$ptr_isBlocking||(c.$ptr_isBlocking=new Z(function(){return this.$target.isBlocking;},function($v){this.$target.isBlocking=$v;},c))),1);f=A.SetNonblock(c.Sysfd,false);$s=4;case 4:return f;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.SetBlocking,$c:true,$r,c,d,e,f,$s,$deferred};return $f;}}};H.prototype.SetBlocking=function(){return this.$val.SetBlocking();};H.ptr.prototype.Read=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,o,$s,$deferred,$r,$c}=$restore(this,{c});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);d=this;e=d.readLock();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:g=[0,f];$s=4;case 4:return g;case 3:$deferred.push([$methodVal(d,"readUnlock"),[]]);if(c.$length===0){$s=5;continue;}$s=6;continue;case 5:h=[0,$ifaceNil];$s=7;case 7:return h;case 6:i=d.pd.prepareRead(d.isFile);if(!($interfaceIsEqual(i,$ifaceNil))){$s=8;continue;}$s=9;continue;case 8:j=[0,i];$s=10;case 10:return j;case 9:if(d.IsStream&&c.$length>1073741824){c=$subslice(c,0,1073741824);}case 11:l=L(A.Read,d.Sysfd,c);$s=13;case 13:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;m=k[0];n=k[1];if(!($interfaceIsEqual(n,$ifaceNil))){m=0;if($interfaceIsEqual(n,new A.Errno(11))&&d.pd.pollable()){n=d.pd.waitRead(d.isFile);if($interfaceIsEqual(n,$ifaceNil)){$s=11;continue;}}}n=d.eofError(m,n);o=[m,n];$s=14;case 14:return o;case 12:$s=-1;return[0,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[0,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.Read,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,$s,$deferred};return $f;}}};H.prototype.Read=function(c){return this.$val.Read(c);};H.ptr.prototype.Pread=function(c,d){var{c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{c,d});$s=$s||0;s:while(true){switch($s){case 0:e=this;f=e.incref();if(!($interfaceIsEqual(f,$ifaceNil))){$s=-1;return[0,f];}if(e.IsStream&&c.$length>1073741824){c=$subslice(c,0,1073741824);}g=0;h=$ifaceNil;case 1:j=A.Pread(e.Sysfd,c,d);$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;g=i[0];h=i[1];if(!($interfaceIsEqual(h,new A.Errno(4)))){$s=2;continue;}$s=1;continue;case 2:if(!($interfaceIsEqual(h,$ifaceNil))){g=0;}k=e.decref();$s=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;h=e.eofError(g,h);$s=-1;return[g,h];}return;}var $f={$blk:H.ptr.prototype.Pread,$c:true,$r,c,d,e,f,g,h,i,j,k,$s};return $f;};H.prototype.Pread=function(c,d){return this.$val.Pread(c,d);};H.ptr.prototype.ReadFrom=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,$s,$deferred,$r,$c}=$restore(this,{c});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);d=this;e=d.readLock();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:g=[0,$ifaceNil,f];$s=4;case 4:return g;case 3:$deferred.push([$methodVal(d,"readUnlock"),[]]);h=d.pd.prepareRead(d.isFile);if(!($interfaceIsEqual(h,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:i=[0,$ifaceNil,h];$s=7;case 7:return i;case 6:case 8:j=A.Recvfrom(d.Sysfd,c,0);k=j[0];l=j[1];m=j[2];if(!($interfaceIsEqual(m,$ifaceNil))){if($interfaceIsEqual(m,new A.Errno(4))){$s=8;continue;}k=0;if($interfaceIsEqual(m,new A.Errno(11))&&d.pd.pollable()){m=d.pd.waitRead(d.isFile);if($interfaceIsEqual(m,$ifaceNil)){$s=8;continue;}}}m=d.eofError(k,m);n=[k,l,m];$s=10;case 10:return n;case 9:$s=-1;return[0,$ifaceNil,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[0,$ifaceNil,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.ReadFrom,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,$s,$deferred};return $f;}}};H.prototype.ReadFrom=function(c){return this.$val.ReadFrom(c);};H.ptr.prototype.ReadFromInet4=function(c,d){var{c,d,e,f,g,h,i,j,k,l,m,n,$s,$deferred,$r,$c}=$restore(this,{c,d});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);e=this;f=e.readLock();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!($interfaceIsEqual(g,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:h=[0,g];$s=4;case 4:return h;case 3:$deferred.push([$methodVal(e,"readUnlock"),[]]);i=e.pd.prepareRead(e.isFile);if(!($interfaceIsEqual(i,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:j=[0,i];$s=7;case 7:return j;case 6:case 8:k=B.RecvfromInet4(e.Sysfd,c,0,d);l=k[0];m=k[1];if(!($interfaceIsEqual(m,$ifaceNil))){if($interfaceIsEqual(m,new A.Errno(4))){$s=8;continue;}l=0;if($interfaceIsEqual(m,new A.Errno(11))&&e.pd.pollable()){m=e.pd.waitRead(e.isFile);if($interfaceIsEqual(m,$ifaceNil)){$s=8;continue;}}}m=e.eofError(l,m);n=[l,m];$s=10;case 10:return n;case 9:$s=-1;return[0,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[0,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.ReadFromInet4,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,$s,$deferred};return $f;}}};H.prototype.ReadFromInet4=function(c,d){return this.$val.ReadFromInet4(c,d);};H.ptr.prototype.ReadFromInet6=function(c,d){var{c,d,e,f,g,h,i,j,k,l,m,n,$s,$deferred,$r,$c}=$restore(this,{c,d});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);e=this;f=e.readLock();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!($interfaceIsEqual(g,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:h=[0,g];$s=4;case 4:return h;case 3:$deferred.push([$methodVal(e,"readUnlock"),[]]);i=e.pd.prepareRead(e.isFile);if(!($interfaceIsEqual(i,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:j=[0,i];$s=7;case 7:return j;case 6:case 8:k=B.RecvfromInet6(e.Sysfd,c,0,d);l=k[0];m=k[1];if(!($interfaceIsEqual(m,$ifaceNil))){if($interfaceIsEqual(m,new A.Errno(4))){$s=8;continue;}l=0;if($interfaceIsEqual(m,new A.Errno(11))&&e.pd.pollable()){m=e.pd.waitRead(e.isFile);if($interfaceIsEqual(m,$ifaceNil)){$s=8;continue;}}}m=e.eofError(l,m);n=[l,m];$s=10;case 10:return n;case 9:$s=-1;return[0,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[0,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.ReadFromInet6,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,$s,$deferred};return $f;}}};H.prototype.ReadFromInet6=function(c,d){return this.$val.ReadFromInet6(c,d);};H.ptr.prototype.ReadMsg=function(c,d,e){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s,$deferred,$r,$c}=$restore(this,{c,d,e});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);f=this;g=f.readLock();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:i=[0,0,0,$ifaceNil,h];$s=4;case 4:return i;case 3:$deferred.push([$methodVal(f,"readUnlock"),[]]);j=f.pd.prepareRead(f.isFile);if(!($interfaceIsEqual(j,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:k=[0,0,0,$ifaceNil,j];$s=7;case 7:return k;case 6:case 8:l=A.Recvmsg(f.Sysfd,c,d,e);m=l[0];n=l[1];o=l[2];p=l[3];q=l[4];if(!($interfaceIsEqual(q,$ifaceNil))){if($interfaceIsEqual(q,new A.Errno(4))){$s=8;continue;}if($interfaceIsEqual(q,new A.Errno(11))&&f.pd.pollable()){q=f.pd.waitRead(f.isFile);if($interfaceIsEqual(q,$ifaceNil)){$s=8;continue;}}}q=f.eofError(m,q);r=[m,n,o,p,q];$s=10;case 10:return r;case 9:$s=-1;return[0,0,0,$ifaceNil,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[0,0,0,$ifaceNil,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.ReadMsg,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s,$deferred};return $f;}}};H.prototype.ReadMsg=function(c,d,e){return this.$val.ReadMsg(c,d,e);};H.ptr.prototype.ReadMsgInet4=function(c,d,e,f){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s,$deferred,$r,$c}=$restore(this,{c,d,e,f});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);g=this;h=g.readLock();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;if(!($interfaceIsEqual(i,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:j=[0,0,0,i];$s=4;case 4:return j;case 3:$deferred.push([$methodVal(g,"readUnlock"),[]]);k=g.pd.prepareRead(g.isFile);if(!($interfaceIsEqual(k,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:l=[0,0,0,k];$s=7;case 7:return l;case 6:case 8:m=B.RecvmsgInet4(g.Sysfd,c,d,e,f);n=m[0];o=m[1];p=m[2];q=m[3];if(!($interfaceIsEqual(q,$ifaceNil))){if($interfaceIsEqual(q,new A.Errno(4))){$s=8;continue;}if($interfaceIsEqual(q,new A.Errno(11))&&g.pd.pollable()){q=g.pd.waitRead(g.isFile);if($interfaceIsEqual(q,$ifaceNil)){$s=8;continue;}}}q=g.eofError(n,q);r=[n,o,p,q];$s=10;case 10:return r;case 9:$s=-1;return[0,0,0,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[0,0,0,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.ReadMsgInet4,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s,$deferred};return $f;}}};H.prototype.ReadMsgInet4=function(c,d,e,f){return this.$val.ReadMsgInet4(c,d,e,f);};H.ptr.prototype.ReadMsgInet6=function(c,d,e,f){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s,$deferred,$r,$c}=$restore(this,{c,d,e,f});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);g=this;h=g.readLock();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;if(!($interfaceIsEqual(i,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:j=[0,0,0,i];$s=4;case 4:return j;case 3:$deferred.push([$methodVal(g,"readUnlock"),[]]);k=g.pd.prepareRead(g.isFile);if(!($interfaceIsEqual(k,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:l=[0,0,0,k];$s=7;case 7:return l;case 6:case 8:m=B.RecvmsgInet6(g.Sysfd,c,d,e,f);n=m[0];o=m[1];p=m[2];q=m[3];if(!($interfaceIsEqual(q,$ifaceNil))){if($interfaceIsEqual(q,new A.Errno(4))){$s=8;continue;}if($interfaceIsEqual(q,new A.Errno(11))&&g.pd.pollable()){q=g.pd.waitRead(g.isFile);if($interfaceIsEqual(q,$ifaceNil)){$s=8;continue;}}}q=g.eofError(n,q);r=[n,o,p,q];$s=10;case 10:return r;case 9:$s=-1;return[0,0,0,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[0,0,0,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.ReadMsgInet6,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s,$deferred};return $f;}}};H.prototype.ReadMsgInet6=function(c,d,e,f){return this.$val.ReadMsgInet6(c,d,e,f);};H.ptr.prototype.Write=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s,$deferred,$r,$c}=$restore(this,{c});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);d=this;e=d.writeLock();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:g=[0,f];$s=4;case 4:return g;case 3:$deferred.push([$methodVal(d,"writeUnlock"),[]]);h=d.pd.prepareWrite(d.isFile);if(!($interfaceIsEqual(h,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:i=[0,h];$s=7;case 7:return i;case 6:j=0;case 8:k=c.$length;if(d.IsStream&&(k-j>>0)>1073741824){k=j+1073741824>>0;}m=L(A.Write,d.Sysfd,$subslice(c,j,k));$s=10;case 10:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[0];o=l[1];if(n>0){j=j+(n)>>0;}if(j===c.$length){$s=11;continue;}$s=12;continue;case 11:p=[j,o];$s=13;case 13:return p;case 12:if($interfaceIsEqual(o,new A.Errno(11))&&d.pd.pollable()){o=d.pd.waitWrite(d.isFile);if($interfaceIsEqual(o,$ifaceNil)){$s=8;continue;}}if(!($interfaceIsEqual(o,$ifaceNil))){$s=14;continue;}$s=15;continue;case 14:q=[j,o];$s=16;case 16:return q;case 15:if(n===0){$s=17;continue;}$s=18;continue;case 17:r=[j,C.ErrUnexpectedEOF];$s=19;case 19:return r;case 18:$s=8;continue;case 9:$s=-1;return[0,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[0,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.Write,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s,$deferred};return $f;}}};H.prototype.Write=function(c){return this.$val.Write(c);};H.ptr.prototype.Pwrite=function(c,d){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,$s,$deferred,$r,$c}=$restore(this,{c,d});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);e=this;f=e.incref();if(!($interfaceIsEqual(f,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:g=[0,f];$s=3;case 3:return g;case 2:$deferred.push([$methodVal(e,"decref"),[]]);h=0;case 4:i=c.$length;if(e.IsStream&&(i-h>>0)>1073741824){i=h+1073741824>>0;}l=A.Pwrite(e.Sysfd,$subslice(c,h,i),(k=(new $Int64(0,h)),new $Int64(d.$high+k.$high,d.$low+k.$low)));$s=6;case 6:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}j=l;m=j[0];n=j[1];if($interfaceIsEqual(n,new A.Errno(4))){$s=4;continue;}if(m>0){h=h+(m)>>0;}if(h===c.$length){$s=7;continue;}$s=8;continue;case 7:o=[h,n];$s=9;case 9:return o;case 8:if(!($interfaceIsEqual(n,$ifaceNil))){$s=10;continue;}$s=11;continue;case 10:p=[h,n];$s=12;case 12:return p;case 11:if(m===0){$s=13;continue;}$s=14;continue;case 13:q=[h,C.ErrUnexpectedEOF];$s=15;case 15:return q;case 14:$s=4;continue;case 5:$s=-1;return[0,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[0,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.Pwrite,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,$s,$deferred};return $f;}}};H.prototype.Pwrite=function(c,d){return this.$val.Pwrite(c,d);};H.ptr.prototype.WriteToInet4=function(c,d){var{c,d,e,f,g,h,i,j,k,l,m,$s,$deferred,$r,$c}=$restore(this,{c,d});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);e=this;f=e.writeLock();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!($interfaceIsEqual(g,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:h=[0,g];$s=4;case 4:return h;case 3:$deferred.push([$methodVal(e,"writeUnlock"),[]]);i=e.pd.prepareWrite(e.isFile);if(!($interfaceIsEqual(i,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:j=[0,i];$s=7;case 7:return j;case 6:case 8:k=B.SendtoInet4(e.Sysfd,c,0,d);if($interfaceIsEqual(k,new A.Errno(4))){$s=8;continue;}if($interfaceIsEqual(k,new A.Errno(11))&&e.pd.pollable()){k=e.pd.waitWrite(e.isFile);if($interfaceIsEqual(k,$ifaceNil)){$s=8;continue;}}if(!($interfaceIsEqual(k,$ifaceNil))){$s=10;continue;}$s=11;continue;case 10:l=[0,k];$s=12;case 12:return l;case 11:m=[c.$length,$ifaceNil];$s=13;case 13:return m;case 9:$s=-1;return[0,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[0,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.WriteToInet4,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,$s,$deferred};return $f;}}};H.prototype.WriteToInet4=function(c,d){return this.$val.WriteToInet4(c,d);};H.ptr.prototype.WriteToInet6=function(c,d){var{c,d,e,f,g,h,i,j,k,l,m,$s,$deferred,$r,$c}=$restore(this,{c,d});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);e=this;f=e.writeLock();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!($interfaceIsEqual(g,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:h=[0,g];$s=4;case 4:return h;case 3:$deferred.push([$methodVal(e,"writeUnlock"),[]]);i=e.pd.prepareWrite(e.isFile);if(!($interfaceIsEqual(i,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:j=[0,i];$s=7;case 7:return j;case 6:case 8:k=B.SendtoInet6(e.Sysfd,c,0,d);if($interfaceIsEqual(k,new A.Errno(4))){$s=8;continue;}if($interfaceIsEqual(k,new A.Errno(11))&&e.pd.pollable()){k=e.pd.waitWrite(e.isFile);if($interfaceIsEqual(k,$ifaceNil)){$s=8;continue;}}if(!($interfaceIsEqual(k,$ifaceNil))){$s=10;continue;}$s=11;continue;case 10:l=[0,k];$s=12;case 12:return l;case 11:m=[c.$length,$ifaceNil];$s=13;case 13:return m;case 9:$s=-1;return[0,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[0,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.WriteToInet6,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,$s,$deferred};return $f;}}};H.prototype.WriteToInet6=function(c,d){return this.$val.WriteToInet6(c,d);};H.ptr.prototype.WriteTo=function(c,d){var{c,d,e,f,g,h,i,j,k,l,m,$s,$deferred,$r,$c}=$restore(this,{c,d});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);e=this;f=e.writeLock();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!($interfaceIsEqual(g,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:h=[0,g];$s=4;case 4:return h;case 3:$deferred.push([$methodVal(e,"writeUnlock"),[]]);i=e.pd.prepareWrite(e.isFile);if(!($interfaceIsEqual(i,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:j=[0,i];$s=7;case 7:return j;case 6:case 8:k=A.Sendto(e.Sysfd,c,0,d);if($interfaceIsEqual(k,new A.Errno(4))){$s=8;continue;}if($interfaceIsEqual(k,new A.Errno(11))&&e.pd.pollable()){k=e.pd.waitWrite(e.isFile);if($interfaceIsEqual(k,$ifaceNil)){$s=8;continue;}}if(!($interfaceIsEqual(k,$ifaceNil))){$s=10;continue;}$s=11;continue;case 10:l=[0,k];$s=12;case 12:return l;case 11:m=[c.$length,$ifaceNil];$s=13;case 13:return m;case 9:$s=-1;return[0,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[0,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.WriteTo,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,$s,$deferred};return $f;}}};H.prototype.WriteTo=function(c,d){return this.$val.WriteTo(c,d);};H.ptr.prototype.WriteMsg=function(c,d,e){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$deferred,$r,$c}=$restore(this,{c,d,e});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);f=this;g=f.writeLock();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:i=[0,0,h];$s=4;case 4:return i;case 3:$deferred.push([$methodVal(f,"writeUnlock"),[]]);j=f.pd.prepareWrite(f.isFile);if(!($interfaceIsEqual(j,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:k=[0,0,j];$s=7;case 7:return k;case 6:case 8:l=A.SendmsgN(f.Sysfd,c,d,e,0);m=l[0];n=l[1];if($interfaceIsEqual(n,new A.Errno(4))){$s=8;continue;}if($interfaceIsEqual(n,new A.Errno(11))&&f.pd.pollable()){n=f.pd.waitWrite(f.isFile);if($interfaceIsEqual(n,$ifaceNil)){$s=8;continue;}}if(!($interfaceIsEqual(n,$ifaceNil))){$s=10;continue;}$s=11;continue;case 10:o=[m,0,n];$s=12;case 12:return o;case 11:p=[m,d.$length,n];$s=13;case 13:return p;case 9:$s=-1;return[0,0,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[0,0,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.WriteMsg,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$deferred};return $f;}}};H.prototype.WriteMsg=function(c,d,e){return this.$val.WriteMsg(c,d,e);};H.ptr.prototype.WriteMsgInet4=function(c,d,e){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$deferred,$r,$c}=$restore(this,{c,d,e});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);f=this;g=f.writeLock();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:i=[0,0,h];$s=4;case 4:return i;case 3:$deferred.push([$methodVal(f,"writeUnlock"),[]]);j=f.pd.prepareWrite(f.isFile);if(!($interfaceIsEqual(j,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:k=[0,0,j];$s=7;case 7:return k;case 6:case 8:l=B.SendmsgNInet4(f.Sysfd,c,d,e,0);m=l[0];n=l[1];if($interfaceIsEqual(n,new A.Errno(4))){$s=8;continue;}if($interfaceIsEqual(n,new A.Errno(11))&&f.pd.pollable()){n=f.pd.waitWrite(f.isFile);if($interfaceIsEqual(n,$ifaceNil)){$s=8;continue;}}if(!($interfaceIsEqual(n,$ifaceNil))){$s=10;continue;}$s=11;continue;case 10:o=[m,0,n];$s=12;case 12:return o;case 11:p=[m,d.$length,n];$s=13;case 13:return p;case 9:$s=-1;return[0,0,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[0,0,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.WriteMsgInet4,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$deferred};return $f;}}};H.prototype.WriteMsgInet4=function(c,d,e){return this.$val.WriteMsgInet4(c,d,e);};H.ptr.prototype.WriteMsgInet6=function(c,d,e){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$deferred,$r,$c}=$restore(this,{c,d,e});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);f=this;g=f.writeLock();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:i=[0,0,h];$s=4;case 4:return i;case 3:$deferred.push([$methodVal(f,"writeUnlock"),[]]);j=f.pd.prepareWrite(f.isFile);if(!($interfaceIsEqual(j,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:k=[0,0,j];$s=7;case 7:return k;case 6:case 8:l=B.SendmsgNInet6(f.Sysfd,c,d,e,0);m=l[0];n=l[1];if($interfaceIsEqual(n,new A.Errno(4))){$s=8;continue;}if($interfaceIsEqual(n,new A.Errno(11))&&f.pd.pollable()){n=f.pd.waitWrite(f.isFile);if($interfaceIsEqual(n,$ifaceNil)){$s=8;continue;}}if(!($interfaceIsEqual(n,$ifaceNil))){$s=10;continue;}$s=11;continue;case 10:o=[m,0,n];$s=12;case 12:return o;case 11:p=[m,d.$length,n];$s=13;case 13:return p;case 9:$s=-1;return[0,0,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[0,0,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.WriteMsgInet6,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$deferred};return $f;}}};H.prototype.WriteMsgInet6=function(c,d,e){return this.$val.WriteMsgInet6(c,d,e);};H.ptr.prototype.Accept=function(){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,$s,$deferred,$r,$c}=$restore(this,{});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);c=this;d=c.readLock();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:f=[-1,$ifaceNil,"",e];$s=4;case 4:return f;case 3:$deferred.push([$methodVal(c,"readUnlock"),[]]);g=c.pd.prepareRead(c.isFile);if(!($interfaceIsEqual(g,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:h=[-1,$ifaceNil,"",g];$s=7;case 7:return h;case 6:case 8:j=G(c.Sysfd);$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];l=i[1];m=i[2];n=i[3];if($interfaceIsEqual(n,$ifaceNil)){$s=11;continue;}$s=12;continue;case 11:o=[k,l,"",n];$s=13;case 13:return o;case 12:p=n;if($interfaceIsEqual(p,new A.Errno((4)))){$s=8;continue;}else if($interfaceIsEqual(p,new A.Errno((11)))){if(c.pd.pollable()){n=c.pd.waitRead(c.isFile);if($interfaceIsEqual(n,$ifaceNil)){$s=8;continue;}}}else if($interfaceIsEqual(p,new A.Errno((103)))){$s=8;continue;}q=[-1,$ifaceNil,m,n];$s=14;case 14:return q;case 9:$s=-1;return[0,$ifaceNil,"",$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[0,$ifaceNil,"",$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.Accept,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,$s,$deferred};return $f;}}};H.prototype.Accept=function(){return this.$val.Accept();};H.ptr.prototype.Seek=function(c,d){var{c,d,e,f,g,h,i,$s,$deferred,$r,$c}=$restore(this,{c,d});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);e=this;f=e.incref();if(!($interfaceIsEqual(f,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:g=[new $Int64(0,0),f];$s=3;case 3:return g;case 2:$deferred.push([$methodVal(e,"decref"),[]]);h=A.Seek(e.Sysfd,c,d);$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;$s=5;case 5:return i;}return;}}catch(err){$err=err;$s=-1;return[new $Int64(0,0),$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.Seek,$c:true,$r,c,d,e,f,g,h,i,$s,$deferred};return $f;}}};H.prototype.Seek=function(c,d){return this.$val.Seek(c,d);};H.ptr.prototype.ReadDirent=function(c){var{c,d,e,f,g,h,i,j,k,$s,$deferred,$r,$c}=$restore(this,{c});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);d=this;e=d.incref();if(!($interfaceIsEqual(e,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:f=[0,e];$s=3;case 3:return f;case 2:$deferred.push([$methodVal(d,"decref"),[]]);case 4:h=L(A.ReadDirent,d.Sysfd,c);$s=6;case 6:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[0];j=g[1];if(!($interfaceIsEqual(j,$ifaceNil))){i=0;if($interfaceIsEqual(j,new A.Errno(11))&&d.pd.pollable()){j=d.pd.waitRead(d.isFile);if($interfaceIsEqual(j,$ifaceNil)){$s=4;continue;}}}k=[i,j];$s=7;case 7:return k;case 5:$s=-1;return[0,$ifaceNil];}return;}}catch(err){$err=err;$s=-1;return[0,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.ReadDirent,$c:true,$r,c,d,e,f,g,h,i,j,k,$s,$deferred};return $f;}}};H.prototype.ReadDirent=function(c){return this.$val.ReadDirent(c);};H.ptr.prototype.Fchmod=function(c){var{c,d,e,f,g,h,$s,$deferred,$r,$c}=$restore(this,{c});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);c=[c];d=[d];d[0]=this;e=d[0].incref();if(!($interfaceIsEqual(e,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:f=e;$s=3;case 3:return f;case 2:$deferred.push([$methodVal(d[0],"decref"),[]]);g=M((function(c,d){return function $b(){var{g,h,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:g=A.Fchmod(d[0].Sysfd,c[0]);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$s=2;case 2:return h;}return;}var $f={$blk:$b,$c:true,$r,g,h,$s};return $f;};})(c,d));$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$s=5;case 5:return h;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.Fchmod,$c:true,$r,c,d,e,f,g,h,$s,$deferred};return $f;}}};H.prototype.Fchmod=function(c){return this.$val.Fchmod(c);};H.ptr.prototype.Fchdir=function(){var{c,d,e,f,g,$s,$deferred,$r,$c}=$restore(this,{});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);c=this;d=c.incref();if(!($interfaceIsEqual(d,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:e=d;$s=3;case 3:return e;case 2:$deferred.push([$methodVal(c,"decref"),[]]);f=A.Fchdir(c.Sysfd);$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;$s=5;case 5:return g;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.Fchdir,$c:true,$r,c,d,e,f,g,$s,$deferred};return $f;}}};H.prototype.Fchdir=function(){return this.$val.Fchdir();};H.ptr.prototype.Fstat=function(c){var{c,d,e,f,g,h,$s,$deferred,$r,$c}=$restore(this,{c});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);c=[c];d=[d];d[0]=this;e=d[0].incref();if(!($interfaceIsEqual(e,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:f=e;$s=3;case 3:return f;case 2:$deferred.push([$methodVal(d[0],"decref"),[]]);g=M((function(c,d){return function $b(){var{g,h,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:g=A.Fstat(d[0].Sysfd,c[0]);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$s=2;case 2:return h;}return;}var $f={$blk:$b,$c:true,$r,g,h,$s};return $f;};})(c,d));$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$s=5;case 5:return h;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.Fstat,$c:true,$r,c,d,e,f,g,h,$s,$deferred};return $f;}}};H.prototype.Fstat=function(c){return this.$val.Fstat(c);};J=function(c){var{c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:if(true&&(D.LoadInt32((Y||(Y=new AA(function(){return I;},function($v){I=$v;}))))===1)){d=V(c,1,0);e=d[0];f=d[1];if($interfaceIsEqual(f,$ifaceNil)){$s=-1;return[e,"",$ifaceNil];}g=$assertType(f,A.Errno);if((g===(22))||(g===(38))){D.StoreInt32((Y||(Y=new AA(function(){return I;},function($v){I=$v;}))),0);}else{$s=-1;return[-1,"fcntl",f];}}h=K(c);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;$s=2;case 2:return i;}return;}var $f={$blk:J,$c:true,$r,c,d,e,f,g,h,i,$s};return $f;};$pkg.DupCloseOnExec=J;K=function(c){var{c,d,e,f,g,h,$s,$deferred,$r,$c}=$restore(this,{c});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);$r=A.ForkLock.RLock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(A.ForkLock,"RUnlock"),[]]);d=A.Dup(c);e=d[0];f=d[1];if(!($interfaceIsEqual(f,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:g=[-1,"dup",f];$s=4;case 4:return g;case 3:A.CloseOnExec(e);h=[e,"",$ifaceNil];$s=5;case 5:return h;}return;}}catch(err){$err=err;$s=-1;return[0,"",$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:K,$c:true,$r,c,d,e,f,g,h,$s,$deferred};return $f;}}};H.ptr.prototype.Dup=function(){var{c,d,e,f,g,$s,$deferred,$r,$c}=$restore(this,{});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);c=this;d=c.incref();if(!($interfaceIsEqual(d,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:e=[-1,"",d];$s=3;case 3:return e;case 2:$deferred.push([$methodVal(c,"decref"),[]]);f=J(c.Sysfd);$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;$s=5;case 5:return g;}return;}}catch(err){$err=err;$s=-1;return[0,"",$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.Dup,$c:true,$r,c,d,e,f,g,$s,$deferred};return $f;}}};H.prototype.Dup=function(){return this.$val.Dup();};H.ptr.prototype.WaitWrite=function(){var c;c=this;return c.pd.waitWrite(c.isFile);};H.prototype.WaitWrite=function(){return this.$val.WaitWrite();};H.ptr.prototype.WriteOnce=function(c){var{c,d,e,f,g,h,i,$s,$deferred,$r,$c}=$restore(this,{c});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);d=this;e=d.writeLock();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:g=[0,f];$s=4;case 4:return g;case 3:$deferred.push([$methodVal(d,"writeUnlock"),[]]);h=L(A.Write,d.Sysfd,c);$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;$s=6;case 6:return i;}return;}}catch(err){$err=err;$s=-1;return[0,$ifaceNil];}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.WriteOnce,$c:true,$r,c,d,e,f,g,h,i,$s,$deferred};return $f;}}};H.prototype.WriteOnce=function(c){return this.$val.WriteOnce(c);};H.ptr.prototype.RawRead=function(c){var{c,d,e,f,g,h,i,j,k,l,m,$s,$deferred,$r,$c}=$restore(this,{c});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);d=this;e=d.readLock();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:g=f;$s=4;case 4:return g;case 3:$deferred.push([$methodVal(d,"readUnlock"),[]]);h=d.pd.prepareRead(d.isFile);if(!($interfaceIsEqual(h,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:i=h;$s=7;case 7:return i;case 6:case 8:j=c(((d.Sysfd>>>0)));$s=12;case 12:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}if(j){$s=10;continue;}$s=11;continue;case 10:k=$ifaceNil;$s=13;case 13:return k;case 11:l=d.pd.waitRead(d.isFile);if(!($interfaceIsEqual(l,$ifaceNil))){$s=14;continue;}$s=15;continue;case 14:m=l;$s=16;case 16:return m;case 15:$s=8;continue;case 9:$s=-1;return $ifaceNil;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.RawRead,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,$s,$deferred};return $f;}}};H.prototype.RawRead=function(c){return this.$val.RawRead(c);};H.ptr.prototype.RawWrite=function(c){var{c,d,e,f,g,h,i,j,k,l,m,$s,$deferred,$r,$c}=$restore(this,{c});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);d=this;e=d.writeLock();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(f,$ifaceNil))){$s=2;continue;}$s=3;continue;case 2:g=f;$s=4;case 4:return g;case 3:$deferred.push([$methodVal(d,"writeUnlock"),[]]);h=d.pd.prepareWrite(d.isFile);if(!($interfaceIsEqual(h,$ifaceNil))){$s=5;continue;}$s=6;continue;case 5:i=h;$s=7;case 7:return i;case 6:case 8:j=c(((d.Sysfd>>>0)));$s=12;case 12:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}if(j){$s=10;continue;}$s=11;continue;case 10:k=$ifaceNil;$s=13;case 13:return k;case 11:l=d.pd.waitWrite(d.isFile);if(!($interfaceIsEqual(l,$ifaceNil))){$s=14;continue;}$s=15;continue;case 14:m=l;$s=16;case 16:return m;case 15:$s=8;continue;case 9:$s=-1;return $ifaceNil;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.RawWrite,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,$s,$deferred};return $f;}}};H.prototype.RawWrite=function(c){return this.$val.RawWrite(c);};L=function(c,d,e){var{c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{c,d,e});$s=$s||0;s:while(true){switch($s){case 0:case 1:g=c(d,e);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[0];i=f[1];if(!($interfaceIsEqual(i,new A.Errno(4)))){$s=-1;return[h,i];}$s=1;continue;case 2:$s=-1;return[0,$ifaceNil];}return;}var $f={$blk:L,$c:true,$r,c,d,e,f,g,h,i,$s};return $f;};H.ptr.prototype.eofError=function(c,d){var c,d,e;e=this;if((c===0)&&$interfaceIsEqual(d,$ifaceNil)&&e.ZeroReadIsEOF){return C.EOF;}return d;};H.prototype.eofError=function(c,d){return this.$val.eofError(c,d);};H.ptr.prototype.Shutdown=function(c){var{c,d,e,f,g,$s,$deferred,$r,$c}=$restore(this,{c});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);d=this;e=d.incref();if(!($interfaceIsEqual(e,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:f=e;$s=3;case 3:return f;case 2:$deferred.push([$methodVal(d,"decref"),[]]);g=A.Shutdown(d.Sysfd,c);$s=4;case 4:return g;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.Shutdown,$c:true,$r,c,d,e,f,g,$s,$deferred};return $f;}}};H.prototype.Shutdown=function(c){return this.$val.Shutdown(c);};H.ptr.prototype.Fchown=function(c,d){var{c,d,e,f,g,h,i,$s,$deferred,$r,$c}=$restore(this,{c,d});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);c=[c];d=[d];e=[e];e[0]=this;f=e[0].incref();if(!($interfaceIsEqual(f,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:g=f;$s=3;case 3:return g;case 2:$deferred.push([$methodVal(e[0],"decref"),[]]);h=M((function(c,d,e){return function $b(){var{h,i,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:h=A.Fchown(e[0].Sysfd,c[0],d[0]);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;$s=2;case 2:return i;}return;}var $f={$blk:$b,$c:true,$r,h,i,$s};return $f;};})(c,d,e));$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;$s=5;case 5:return i;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.Fchown,$c:true,$r,c,d,e,f,g,h,i,$s,$deferred};return $f;}}};H.prototype.Fchown=function(c,d){return this.$val.Fchown(c,d);};H.ptr.prototype.Ftruncate=function(c){var{c,d,e,f,g,h,$s,$deferred,$r,$c}=$restore(this,{c});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);c=[c];d=[d];d[0]=this;e=d[0].incref();if(!($interfaceIsEqual(e,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:f=e;$s=3;case 3:return f;case 2:$deferred.push([$methodVal(d[0],"decref"),[]]);g=M((function(c,d){return function $b(){var{g,h,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:g=A.Ftruncate(d[0].Sysfd,c[0]);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$s=2;case 2:return h;}return;}var $f={$blk:$b,$c:true,$r,g,h,$s};return $f;};})(c,d));$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$s=5;case 5:return h;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.Ftruncate,$c:true,$r,c,d,e,f,g,h,$s,$deferred};return $f;}}};H.prototype.Ftruncate=function(c){return this.$val.Ftruncate(c);};H.ptr.prototype.RawControl=function(c){var{c,d,e,f,g,$s,$deferred,$r,$c}=$restore(this,{c});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);d=this;e=d.incref();if(!($interfaceIsEqual(e,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:f=e;$s=3;case 3:return f;case 2:$deferred.push([$methodVal(d,"decref"),[]]);$r=c(((d.Sysfd>>>0)));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=$ifaceNil;$s=5;case 5:return g;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.RawControl,$c:true,$r,c,d,e,f,g,$s,$deferred};return $f;}}};H.prototype.RawControl=function(c){return this.$val.RawControl(c);};M=function(c){var{c,d,e,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:case 1:d=c();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,new A.Errno(4)))){$s=-1;return e;}$s=1;continue;case 2:$s=-1;return $ifaceNil;}return;}var $f={$blk:M,$c:true,$r,c,d,e,$s};return $f;};N.ptr.prototype.init=function(c){var c,d;d=this;d.fd=c;return $ifaceNil;};N.prototype.init=function(c){return this.$val.init(c);};N.ptr.prototype.close=function(){var c;c=this;};N.prototype.close=function(){return this.$val.close();};N.ptr.prototype.evict=function(){var c;c=this;c.closing=true;if(!(c.fd===AB.nil)){A.StopIO(c.fd.Sysfd);}};N.prototype.evict=function(){return this.$val.evict();};N.ptr.prototype.prepare=function(c,d){var c,d,e;e=this;if(e.closing){return S(d);}return $ifaceNil;};N.prototype.prepare=function(c,d){return this.$val.prepare(c,d);};N.ptr.prototype.prepareRead=function(c){var c,d;d=this;return d.prepare(114,c);};N.prototype.prepareRead=function(c){return this.$val.prepareRead(c);};N.ptr.prototype.prepareWrite=function(c){var c,d;d=this;return d.prepare(119,c);};N.prototype.prepareWrite=function(c){return this.$val.prepareWrite(c);};N.ptr.prototype.wait=function(c,d){var c,d,e;e=this;if(e.closing){return S(d);}if(d){return $ifaceNil;}return $pkg.ErrDeadlineExceeded;};N.prototype.wait=function(c,d){return this.$val.wait(c,d);};N.ptr.prototype.waitRead=function(c){var c,d;d=this;return d.wait(114,c);};N.prototype.waitRead=function(c){return this.$val.waitRead(c);};N.ptr.prototype.waitWrite=function(c){var c,d;d=this;return d.wait(119,c);};N.prototype.waitWrite=function(c){return this.$val.waitWrite(c);};N.ptr.prototype.pollable=function(){var c;c=this;return true;};N.prototype.pollable=function(){return this.$val.pollable();};H.ptr.prototype.SetDeadline=function(c){var{c,d,e,f,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d=this;e=O(d,$clone(c,E.Time),233);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$s=2;case 2:return f;}return;}var $f={$blk:H.ptr.prototype.SetDeadline,$c:true,$r,c,d,e,f,$s};return $f;};H.prototype.SetDeadline=function(c){return this.$val.SetDeadline(c);};H.ptr.prototype.SetReadDeadline=function(c){var{c,d,e,f,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d=this;e=O(d,$clone(c,E.Time),114);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$s=2;case 2:return f;}return;}var $f={$blk:H.ptr.prototype.SetReadDeadline,$c:true,$r,c,d,e,f,$s};return $f;};H.prototype.SetReadDeadline=function(c){return this.$val.SetReadDeadline(c);};H.ptr.prototype.SetWriteDeadline=function(c){var{c,d,e,f,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d=this;e=O(d,$clone(c,E.Time),119);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$s=2;case 2:return f;}return;}var $f={$blk:H.ptr.prototype.SetWriteDeadline,$c:true,$r,c,d,e,f,$s};return $f;};H.prototype.SetWriteDeadline=function(c){return this.$val.SetWriteDeadline(c);};O=function(c,d,e){var{c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{c,d,e});$s=$s||0;s:while(true){switch($s){case 0:f=$clone(d,E.Time).UnixNano();if($clone(d,E.Time).IsZero()){f=new $Int64(0,0);}g=c.incref();if(!($interfaceIsEqual(g,$ifaceNil))){$s=-1;return g;}h=e;if(h===(114)){A.SetReadDeadline(c.Sysfd,f);}else if(h===(119)){A.SetWriteDeadline(c.Sysfd,f);}else if(h===(233)){A.SetReadDeadline(c.Sysfd,f);A.SetWriteDeadline(c.Sysfd,f);}i=c.decref();$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;$s=-1;return $ifaceNil;}return;}var $f={$blk:O,$c:true,$r,c,d,e,f,g,h,i,$s};return $f;};Q.ptr.prototype.incref=function(){var c,d,e,f,g;c=this;while(true){d=D.LoadUint64((c.$ptr_state||(c.$ptr_state=new AC(function(){return this.$target.state;},function($v){this.$target.state=$v;},c))));if(!((e=new $Uint64(d.$high&0,(d.$low&1)>>>0),(e.$high===0&&e.$low===0)))){return false;}f=new $Uint64(d.$high+0,d.$low+8);if((g=new $Uint64(f.$high&0,(f.$low&8388600)>>>0),(g.$high===0&&g.$low===0))){$panic(new $String("too many concurrent operations on a single file or socket (max 1048575)"));}if(D.CompareAndSwapUint64((c.$ptr_state||(c.$ptr_state=new AC(function(){return this.$target.state;},function($v){this.$target.state=$v;},c))),d,f)){return true;}}};Q.prototype.incref=function(){return this.$val.incref();};Q.ptr.prototype.increfAndClose=function(){var{c,d,e,f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:c=this;case 1:d=D.LoadUint64((c.$ptr_state||(c.$ptr_state=new AC(function(){return this.$target.state;},function($v){this.$target.state=$v;},c))));if(!((e=new $Uint64(d.$high&0,(d.$low&1)>>>0),(e.$high===0&&e.$low===0)))){$s=-1;return false;}g=(f=new $Uint64(d.$high|0,(d.$low|1)>>>0),new $Uint64(f.$high+0,f.$low+8));if((h=new $Uint64(g.$high&0,(g.$low&8388600)>>>0),(h.$high===0&&h.$low===0))){$panic(new $String("too many concurrent operations on a single file or socket (max 1048575)"));}g=(i=new $Uint64(2147483647,4286578688),new $Uint64(g.$high&~i.$high,(g.$low&~i.$low)>>>0));if(D.CompareAndSwapUint64((c.$ptr_state||(c.$ptr_state=new AC(function(){return this.$target.state;},function($v){this.$target.state=$v;},c))),d,g)){$s=3;continue;}$s=4;continue;case 3:case 5:if(!(!((j=new $Uint64(d.$high&2047,(d.$low&4286578688)>>>0),(j.$high===0&&j.$low===0))))){$s=6;continue;}d=(k=new $Uint64(0,8388608),new $Uint64(d.$high-k.$high,d.$low-k.$low));$r=X((c.$ptr_rsema||(c.$ptr_rsema=new Z(function(){return this.$target.rsema;},function($v){this.$target.rsema=$v;},c))));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=5;continue;case 6:case 8:if(!(!((l=new $Uint64(d.$high&2147481600,(d.$low&0)>>>0),(l.$high===0&&l.$low===0))))){$s=9;continue;}d=(m=new $Uint64(2048,0),new $Uint64(d.$high-m.$high,d.$low-m.$low));$r=X((c.$ptr_wsema||(c.$ptr_wsema=new Z(function(){return this.$target.wsema;},function($v){this.$target.wsema=$v;},c))));$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=8;continue;case 9:$s=-1;return true;case 4:$s=1;continue;case 2:$s=-1;return false;}return;}var $f={$blk:Q.ptr.prototype.increfAndClose,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,$s};return $f;};Q.prototype.increfAndClose=function(){return this.$val.increfAndClose();};Q.ptr.prototype.decref=function(){var c,d,e,f,g;c=this;while(true){d=D.LoadUint64((c.$ptr_state||(c.$ptr_state=new AC(function(){return this.$target.state;},function($v){this.$target.state=$v;},c))));if((e=new $Uint64(d.$high&0,(d.$low&8388600)>>>0),(e.$high===0&&e.$low===0))){$panic(new $String("inconsistent poll.fdMutex"));}f=new $Uint64(d.$high-0,d.$low-8);if(D.CompareAndSwapUint64((c.$ptr_state||(c.$ptr_state=new AC(function(){return this.$target.state;},function($v){this.$target.state=$v;},c))),d,f)){return(g=new $Uint64(f.$high&0,(f.$low&8388601)>>>0),(g.$high===0&&g.$low===1));}}};Q.prototype.decref=function(){return this.$val.decref();};Q.ptr.prototype.rwlock=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d=this;e=new $Uint64(0,0);f=new $Uint64(0,0);g=new $Uint64(0,0);h=e;i=f;j=g;k=Z.nil;if(c){h=new $Uint64(0,2);i=new $Uint64(0,8388608);j=new $Uint64(2047,4286578688);k=(d.$ptr_rsema||(d.$ptr_rsema=new Z(function(){return this.$target.rsema;},function($v){this.$target.rsema=$v;},d)));}else{h=new $Uint64(0,4);i=new $Uint64(2048,0);j=new $Uint64(2147481600,0);k=(d.$ptr_wsema||(d.$ptr_wsema=new Z(function(){return this.$target.wsema;},function($v){this.$target.wsema=$v;},d)));}case 1:l=D.LoadUint64((d.$ptr_state||(d.$ptr_state=new AC(function(){return this.$target.state;},function($v){this.$target.state=$v;},d))));if(!((m=new $Uint64(l.$high&0,(l.$low&1)>>>0),(m.$high===0&&m.$low===0)))){$s=-1;return false;}n=new $Uint64(0,0);if((o=new $Uint64(l.$high&h.$high,(l.$low&h.$low)>>>0),(o.$high===0&&o.$low===0))){n=(p=new $Uint64(l.$high|h.$high,(l.$low|h.$low)>>>0),new $Uint64(p.$high+0,p.$low+8));if((q=new $Uint64(n.$high&0,(n.$low&8388600)>>>0),(q.$high===0&&q.$low===0))){$panic(new $String("too many concurrent operations on a single file or socket (max 1048575)"));}}else{n=new $Uint64(l.$high+i.$high,l.$low+i.$low);if((r=new $Uint64(n.$high&j.$high,(n.$low&j.$low)>>>0),(r.$high===0&&r.$low===0))){$panic(new $String("too many concurrent operations on a single file or socket (max 1048575)"));}}if(D.CompareAndSwapUint64((d.$ptr_state||(d.$ptr_state=new AC(function(){return this.$target.state;},function($v){this.$target.state=$v;},d))),l,n)){$s=3;continue;}$s=4;continue;case 3:if((s=new $Uint64(l.$high&h.$high,(l.$low&h.$low)>>>0),(s.$high===0&&s.$low===0))){$s=-1;return true;}$r=W(k);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:$s=1;continue;case 2:$s=-1;return false;}return;}var $f={$blk:Q.ptr.prototype.rwlock,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s};return $f;};Q.prototype.rwlock=function(c){return this.$val.rwlock(c);};Q.ptr.prototype.rwunlock=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d=this;e=new $Uint64(0,0);f=new $Uint64(0,0);g=new $Uint64(0,0);h=e;i=f;j=g;k=Z.nil;if(c){h=new $Uint64(0,2);i=new $Uint64(0,8388608);j=new $Uint64(2047,4286578688);k=(d.$ptr_rsema||(d.$ptr_rsema=new Z(function(){return this.$target.rsema;},function($v){this.$target.rsema=$v;},d)));}else{h=new $Uint64(0,4);i=new $Uint64(2048,0);j=new $Uint64(2147481600,0);k=(d.$ptr_wsema||(d.$ptr_wsema=new Z(function(){return this.$target.wsema;},function($v){this.$target.wsema=$v;},d)));}case 1:l=D.LoadUint64((d.$ptr_state||(d.$ptr_state=new AC(function(){return this.$target.state;},function($v){this.$target.state=$v;},d))));if((m=new $Uint64(l.$high&h.$high,(l.$low&h.$low)>>>0),(m.$high===0&&m.$low===0))||(n=new $Uint64(l.$high&0,(l.$low&8388600)>>>0),(n.$high===0&&n.$low===0))){$panic(new $String("inconsistent poll.fdMutex"));}p=(o=new $Uint64(l.$high&~h.$high,(l.$low&~h.$low)>>>0),new $Uint64(o.$high-0,o.$low-8));if(!((q=new $Uint64(l.$high&j.$high,(l.$low&j.$low)>>>0),(q.$high===0&&q.$low===0)))){p=(r=i,new $Uint64(p.$high-r.$high,p.$low-r.$low));}if(D.CompareAndSwapUint64((d.$ptr_state||(d.$ptr_state=new AC(function(){return this.$target.state;},function($v){this.$target.state=$v;},d))),l,p)){$s=3;continue;}$s=4;continue;case 3:if(!((s=new $Uint64(l.$high&j.$high,(l.$low&j.$low)>>>0),(s.$high===0&&s.$low===0)))){$s=5;continue;}$s=6;continue;case 5:$r=X(k);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:$s=-1;return(t=new $Uint64(p.$high&0,(p.$low&8388601)>>>0),(t.$high===0&&t.$low===1));case 4:$s=1;continue;case 2:$s=-1;return false;}return;}var $f={$blk:Q.ptr.prototype.rwunlock,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s};return $f;};Q.prototype.rwunlock=function(c){return this.$val.rwunlock(c);};H.ptr.prototype.incref=function(){var c;c=this;if(!c.fdmu.incref()){return S(c.isFile);}return $ifaceNil;};H.prototype.incref=function(){return this.$val.incref();};H.ptr.prototype.decref=function(){var{c,d,e,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(c.fdmu.decref()){$s=1;continue;}$s=2;continue;case 1:d=c.destroy();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$s=4;case 4:return e;case 2:$s=-1;return $ifaceNil;}return;}var $f={$blk:H.ptr.prototype.decref,$c:true,$r,c,d,e,$s};return $f;};H.prototype.decref=function(){return this.$val.decref();};H.ptr.prototype.readLock=function(){var{c,d,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=c.fdmu.rwlock(true);$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}if(!d){$s=1;continue;}$s=2;continue;case 1:$s=-1;return S(c.isFile);case 2:$s=-1;return $ifaceNil;}return;}var $f={$blk:H.ptr.prototype.readLock,$c:true,$r,c,d,$s};return $f;};H.prototype.readLock=function(){return this.$val.readLock();};H.ptr.prototype.readUnlock=function(){var{c,d,e,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=c.fdmu.rwunlock(true);$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}if(d){$s=1;continue;}$s=2;continue;case 1:e=c.destroy();$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;case 2:$s=-1;return;}return;}var $f={$blk:H.ptr.prototype.readUnlock,$c:true,$r,c,d,e,$s};return $f;};H.prototype.readUnlock=function(){return this.$val.readUnlock();};H.ptr.prototype.writeLock=function(){var{c,d,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=c.fdmu.rwlock(false);$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}if(!d){$s=1;continue;}$s=2;continue;case 1:$s=-1;return S(c.isFile);case 2:$s=-1;return $ifaceNil;}return;}var $f={$blk:H.ptr.prototype.writeLock,$c:true,$r,c,d,$s};return $f;};H.prototype.writeLock=function(){return this.$val.writeLock();};H.ptr.prototype.writeUnlock=function(){var{c,d,e,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=c.fdmu.rwunlock(false);$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}if(d){$s=1;continue;}$s=2;continue;case 1:e=c.destroy();$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;case 2:$s=-1;return;}return;}var $f={$blk:H.ptr.prototype.writeUnlock,$c:true,$r,c,d,e,$s};return $f;};H.prototype.writeUnlock=function(){return this.$val.writeUnlock();};H.ptr.prototype.Fsync=function(){var{c,d,e,f,g,$s,$deferred,$r,$c}=$restore(this,{});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);c=[c];c[0]=this;d=c[0].incref();if(!($interfaceIsEqual(d,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:e=d;$s=3;case 3:return e;case 2:$deferred.push([$methodVal(c[0],"decref"),[]]);f=M((function(c){return function $b(){var{f,g,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:f=A.Fsync(c[0].Sysfd);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;$s=2;case 2:return g;}return;}var $f={$blk:$b,$c:true,$r,f,g,$s};return $f;};})(c));$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;$s=5;case 5:return g;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:H.ptr.prototype.Fsync,$c:true,$r,c,d,e,f,g,$s,$deferred};return $f;}}};H.prototype.Fsync=function(){return this.$val.Fsync();};R.ptr.prototype.Error=function(){var c;c=this;return"use of closed network connection";};R.prototype.Error=function(){return this.$val.Error();};R.ptr.prototype.Timeout=function(){var c;c=this;return false;};R.prototype.Timeout=function(){return this.$val.Timeout();};R.ptr.prototype.Temporary=function(){var c;c=this;return false;};R.prototype.Temporary=function(){return this.$val.Temporary();};S=function(c){var c;if(c){return $pkg.ErrFileClosing;}return new $pkg.ErrNetClosing.constructor.elem($pkg.ErrNetClosing);};T.ptr.prototype.Error=function(){var c;c=this;return"i/o timeout";};T.prototype.Error=function(){return this.$val.Error();};T.ptr.prototype.Timeout=function(){var c;c=this;return true;};T.prototype.Timeout=function(){return this.$val.Timeout();};T.ptr.prototype.Temporary=function(){var c;c=this;return true;};T.prototype.Temporary=function(){return this.$val.Temporary();};V=function(c,d,e){var c,d,e;return[0,new A.Errno(38)];};W=function(){$throwRuntimeError("native function not implemented: internal/poll.runtime_Semacquire");};X=function(){$throwRuntimeError("native function not implemented: internal/poll.runtime_Semrelease");};AB.methods=[{prop:"Init",name:"Init",pkg:"",typ:$funcType([$String,$Bool],[$error],false)},{prop:"destroy",name:"destroy",pkg:"internal/poll",typ:$funcType([],[$error],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"SetBlocking",name:"SetBlocking",pkg:"",typ:$funcType([],[$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AF],[$Int,$error],false)},{prop:"Pread",name:"Pread",pkg:"",typ:$funcType([AF,$Int64],[$Int,$error],false)},{prop:"ReadFrom",name:"ReadFrom",pkg:"",typ:$funcType([AF],[$Int,A.Sockaddr,$error],false)},{prop:"ReadFromInet4",name:"ReadFromInet4",pkg:"",typ:$funcType([AF,AG],[$Int,$error],false)},{prop:"ReadFromInet6",name:"ReadFromInet6",pkg:"",typ:$funcType([AF,AH],[$Int,$error],false)},{prop:"ReadMsg",name:"ReadMsg",pkg:"",typ:$funcType([AF,AF,$Int],[$Int,$Int,$Int,A.Sockaddr,$error],false)},{prop:"ReadMsgInet4",name:"ReadMsgInet4",pkg:"",typ:$funcType([AF,AF,$Int,AG],[$Int,$Int,$Int,$error],false)},{prop:"ReadMsgInet6",name:"ReadMsgInet6",pkg:"",typ:$funcType([AF,AF,$Int,AH],[$Int,$Int,$Int,$error],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([AF],[$Int,$error],false)},{prop:"Pwrite",name:"Pwrite",pkg:"",typ:$funcType([AF,$Int64],[$Int,$error],false)},{prop:"WriteToInet4",name:"WriteToInet4",pkg:"",typ:$funcType([AF,AG],[$Int,$error],false)},{prop:"WriteToInet6",name:"WriteToInet6",pkg:"",typ:$funcType([AF,AH],[$Int,$error],false)},{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([AF,A.Sockaddr],[$Int,$error],false)},{prop:"WriteMsg",name:"WriteMsg",pkg:"",typ:$funcType([AF,AF,A.Sockaddr],[$Int,$Int,$error],false)},{prop:"WriteMsgInet4",name:"WriteMsgInet4",pkg:"",typ:$funcType([AF,AF,AG],[$Int,$Int,$error],false)},{prop:"WriteMsgInet6",name:"WriteMsgInet6",pkg:"",typ:$funcType([AF,AF,AH],[$Int,$Int,$error],false)},{prop:"Accept",name:"Accept",pkg:"",typ:$funcType([],[$Int,A.Sockaddr,$String,$error],false)},{prop:"Seek",name:"Seek",pkg:"",typ:$funcType([$Int64,$Int],[$Int64,$error],false)},{prop:"ReadDirent",name:"ReadDirent",pkg:"",typ:$funcType([AF],[$Int,$error],false)},{prop:"Fchmod",name:"Fchmod",pkg:"",typ:$funcType([$Uint32],[$error],false)},{prop:"Fchdir",name:"Fchdir",pkg:"",typ:$funcType([],[$error],false)},{prop:"Fstat",name:"Fstat",pkg:"",typ:$funcType([AI],[$error],false)},{prop:"Dup",name:"Dup",pkg:"",typ:$funcType([],[$Int,$String,$error],false)},{prop:"WaitWrite",name:"WaitWrite",pkg:"",typ:$funcType([],[$error],false)},{prop:"WriteOnce",name:"WriteOnce",pkg:"",typ:$funcType([AF],[$Int,$error],false)},{prop:"RawRead",name:"RawRead",pkg:"",typ:$funcType([AJ],[$error],false)},{prop:"RawWrite",name:"RawWrite",pkg:"",typ:$funcType([AJ],[$error],false)},{prop:"eofError",name:"eofError",pkg:"internal/poll",typ:$funcType([$Int,$error],[$error],false)},{prop:"Shutdown",name:"Shutdown",pkg:"",typ:$funcType([$Int],[$error],false)},{prop:"Fchown",name:"Fchown",pkg:"",typ:$funcType([$Int,$Int],[$error],false)},{prop:"Ftruncate",name:"Ftruncate",pkg:"",typ:$funcType([$Int64],[$error],false)},{prop:"RawControl",name:"RawControl",pkg:"",typ:$funcType([AK],[$error],false)},{prop:"SetDeadline",name:"SetDeadline",pkg:"",typ:$funcType([E.Time],[$error],false)},{prop:"SetReadDeadline",name:"SetReadDeadline",pkg:"",typ:$funcType([E.Time],[$error],false)},{prop:"SetWriteDeadline",name:"SetWriteDeadline",pkg:"",typ:$funcType([E.Time],[$error],false)},{prop:"incref",name:"incref",pkg:"internal/poll",typ:$funcType([],[$error],false)},{prop:"decref",name:"decref",pkg:"internal/poll",typ:$funcType([],[$error],false)},{prop:"readLock",name:"readLock",pkg:"internal/poll",typ:$funcType([],[$error],false)},{prop:"readUnlock",name:"readUnlock",pkg:"internal/poll",typ:$funcType([],[],false)},{prop:"writeLock",name:"writeLock",pkg:"internal/poll",typ:$funcType([],[$error],false)},{prop:"writeUnlock",name:"writeUnlock",pkg:"internal/poll",typ:$funcType([],[],false)},{prop:"Fsync",name:"Fsync",pkg:"",typ:$funcType([],[$error],false)}];AL.methods=[{prop:"init",name:"init",pkg:"internal/poll",typ:$funcType([AB],[$error],false)},{prop:"close",name:"close",pkg:"internal/poll",typ:$funcType([],[],false)},{prop:"evict",name:"evict",pkg:"internal/poll",typ:$funcType([],[],false)},{prop:"prepare",name:"prepare",pkg:"internal/poll",typ:$funcType([$Int,$Bool],[$error],false)},{prop:"prepareRead",name:"prepareRead",pkg:"internal/poll",typ:$funcType([$Bool],[$error],false)},{prop:"prepareWrite",name:"prepareWrite",pkg:"internal/poll",typ:$funcType([$Bool],[$error],false)},{prop:"wait",name:"wait",pkg:"internal/poll",typ:$funcType([$Int,$Bool],[$error],false)},{prop:"waitRead",name:"waitRead",pkg:"internal/poll",typ:$funcType([$Bool],[$error],false)},{prop:"waitWrite",name:"waitWrite",pkg:"internal/poll",typ:$funcType([$Bool],[$error],false)},{prop:"waitCanceled",name:"waitCanceled",pkg:"internal/poll",typ:$funcType([$Int],[],false)},{prop:"pollable",name:"pollable",pkg:"internal/poll",typ:$funcType([],[$Bool],false)}];AM.methods=[{prop:"incref",name:"incref",pkg:"internal/poll",typ:$funcType([],[$Bool],false)},{prop:"increfAndClose",name:"increfAndClose",pkg:"internal/poll",typ:$funcType([],[$Bool],false)},{prop:"decref",name:"decref",pkg:"internal/poll",typ:$funcType([],[$Bool],false)},{prop:"rwlock",name:"rwlock",pkg:"internal/poll",typ:$funcType([$Bool],[$Bool],false)},{prop:"rwunlock",name:"rwunlock",pkg:"internal/poll",typ:$funcType([$Bool],[$Bool],false)}];R.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Timeout",name:"Timeout",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Temporary",name:"Temporary",pkg:"",typ:$funcType([],[$Bool],false)}];AN.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Timeout",name:"Timeout",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Temporary",name:"Temporary",pkg:"",typ:$funcType([],[$Bool],false)}];H.init("internal/poll",[{prop:"fdmu",name:"fdmu",embedded:false,exported:false,typ:Q,tag:""},{prop:"Sysfd",name:"Sysfd",embedded:false,exported:true,typ:$Int,tag:""},{prop:"pd",name:"pd",embedded:false,exported:false,typ:N,tag:""},{prop:"iovecs",name:"iovecs",embedded:false,exported:false,typ:AE,tag:""},{prop:"csema",name:"csema",embedded:false,exported:false,typ:$Uint32,tag:""},{prop:"isBlocking",name:"isBlocking",embedded:false,exported:false,typ:$Uint32,tag:""},{prop:"IsStream",name:"IsStream",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"ZeroReadIsEOF",name:"ZeroReadIsEOF",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"isFile",name:"isFile",embedded:false,exported:false,typ:$Bool,tag:""}]);N.init("internal/poll",[{prop:"fd",name:"fd",embedded:false,exported:false,typ:AB,tag:""},{prop:"closing",name:"closing",embedded:false,exported:false,typ:$Bool,tag:""}]);Q.init("internal/poll",[{prop:"state",name:"state",embedded:false,exported:false,typ:$Uint64,tag:""},{prop:"rsema",name:"rsema",embedded:false,exported:false,typ:$Uint32,tag:""},{prop:"wsema",name:"wsema",embedded:false,exported:false,typ:$Uint32,tag:""}]);R.init("",[]);T.init("",[]);$pkg.$initLinknames=function(){W=$linknames["sync.runtime_Semacquire"];X=$linknames["sync.runtime_Semrelease"];};$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=F.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.CloseFunc=A.Close;$pkg.AcceptFunc=A.Accept;I=1;$pkg.ErrNetClosing=new R.ptr();$pkg.ErrFileClosing=F.New("use of closed file");$pkg.ErrNoDeadline=F.New("file type does not support deadline");$pkg.ErrDeadlineExceeded=new T.ptr();$pkg.ErrNotPollable=F.New("not pollable");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["internal/safefilepath"]=(function(){var $pkg={},$init,B,A,D;B=$packages["errors"];A=$packages["runtime"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=B.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}D=B.New("invalid path");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["internal/syscall/execenv"]=(function(){var $pkg={},$init,A;A=$packages["syscall"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["internal/testlog"]=(function(){var $pkg={},$init,B,A,C,N,D,F,I;B=$packages["sync"];A=$packages["sync/atomic"];C=$pkg.Interface=$newType(8,$kindInterface,"testlog.Interface",true,"internal/testlog",true,null);N=$ptrType(C);F=function(){var a;a=D.Load();if($interfaceIsEqual(a,$ifaceNil)){return $ifaceNil;}return $assertType(a,N).$get();};$pkg.Logger=F;I=function(a){var{a,b,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=F();if(!($interfaceIsEqual(b,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:$r=b.Stat(a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return;}return;}var $f={$blk:I,$c:true,$r,a,b,$s};return $f;};$pkg.Stat=I;C.init([{prop:"Chdir",name:"Chdir",pkg:"",typ:$funcType([$String],[],false)},{prop:"Getenv",name:"Getenv",pkg:"",typ:$funcType([$String],[],false)},{prop:"Open",name:"Open",pkg:"",typ:$funcType([$String],[],false)},{prop:"Stat",name:"Stat",pkg:"",typ:$funcType([$String],[],false)}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=B.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}D=new A.Value.ptr($ifaceNil);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["path"]=(function(){var $pkg={},$init,A,B,C;A=$packages["errors"];B=$packages["internal/bytealg"];C=$packages["unicode/utf8"];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.ErrBadPattern=A.New("syntax error in pattern");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["io/fs"]=(function(){var $pkg={},$init,A,E,C,B,D,F,G,AF,AM,AN,AO,AQ,AS,AT,AU,AH,AI,AJ,AK,AL;A=$packages["errors"];E=$packages["internal/oserror"];C=$packages["io"];B=$packages["path"];D=$packages["sort"];F=$packages["time"];G=$packages["unicode/utf8"];AF=$pkg.DirEntry=$newType(8,$kindInterface,"fs.DirEntry",true,"io/fs",true,null);AM=$pkg.FileInfo=$newType(8,$kindInterface,"fs.FileInfo",true,"io/fs",true,null);AN=$pkg.FileMode=$newType(4,$kindUint32,"fs.FileMode",true,"io/fs",true,null);AO=$pkg.PathError=$newType(0,$kindStruct,"fs.PathError",true,"io/fs",true,function(Op_,Path_,Err_){this.$val=this;if(arguments.length===0){this.Op="";this.Path="";this.Err=$ifaceNil;return;}this.Op=Op_;this.Path=Path_;this.Err=Err_;});AQ=$ptrType(AO);AS=$sliceType($Uint8);AT=$arrayType($Uint8,32);AU=$interfaceType([{prop:"Timeout",name:"Timeout",pkg:"",typ:$funcType([],[$Bool],false)}]);AH=function(){return E.ErrInvalid;};AI=function(){return E.ErrPermission;};AJ=function(){return E.ErrExist;};AK=function(){return E.ErrNotExist;};AL=function(){return E.ErrClosed;};AN.prototype.String=function(){var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;a=this.$val;b=AT.zero();c=0;d="dalTLDpSugct?";e=0;while(true){if(!(e<d.length)){break;}f=$decodeRune(d,e);g=e;h=f[0];if(!((((a&(((i=(((31-g>>0)>>>0)),i<32?(1<<i):0)>>>0)))>>>0)===0))){((c<0||c>=b.length)?($throwRuntimeError("index out of range"),undefined):b[c]=((h<<24>>>24)));c=c+(1)>>0;}e+=f[1];}if(c===0){((c<0||c>=b.length)?($throwRuntimeError("index out of range"),undefined):b[c]=45);c=c+(1)>>0;}j="rwxrwxrwx";k=0;while(true){if(!(k<j.length)){break;}l=$decodeRune(j,k);m=k;n=l[0];if(!((((a&(((o=(((8-m>>0)>>>0)),o<32?(1<<o):0)>>>0)))>>>0)===0))){((c<0||c>=b.length)?($throwRuntimeError("index out of range"),undefined):b[c]=((n<<24>>>24)));}else{((c<0||c>=b.length)?($throwRuntimeError("index out of range"),undefined):b[c]=45);}c=c+(1)>>0;k+=l[1];}return($bytesToString($subslice(new AS(b),0,c)));};$ptrType(AN).prototype.String=function(){return new AN(this.$get()).String();};AN.prototype.IsDir=function(){var a;a=this.$val;return!((((a&2147483648)>>>0)===0));};$ptrType(AN).prototype.IsDir=function(){return new AN(this.$get()).IsDir();};AN.prototype.IsRegular=function(){var a;a=this.$val;return((a&2401763328)>>>0)===0;};$ptrType(AN).prototype.IsRegular=function(){return new AN(this.$get()).IsRegular();};AN.prototype.Perm=function(){var a;a=this.$val;return(a&511)>>>0;};$ptrType(AN).prototype.Perm=function(){return new AN(this.$get()).Perm();};AN.prototype.Type=function(){var a;a=this.$val;return(a&2401763328)>>>0;};$ptrType(AN).prototype.Type=function(){return new AN(this.$get()).Type();};AO.ptr.prototype.Error=function(){var{a,b,c,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;b=a.Err.Error();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=a.Op+" "+a.Path+": "+b;$s=2;case 2:return c;}return;}var $f={$blk:AO.ptr.prototype.Error,$c:true,$r,a,b,c,$s};return $f;};AO.prototype.Error=function(){return this.$val.Error();};AO.ptr.prototype.Unwrap=function(){var a;a=this;return a.Err;};AO.prototype.Unwrap=function(){return this.$val.Unwrap();};AO.ptr.prototype.Timeout=function(){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;b=$assertType(a.Err,AU,true);c=b[0];d=b[1];if(!(d)){e=false;$s=1;continue s;}f=c.Timeout();$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;case 1:g=e;$s=3;case 3:return g;}return;}var $f={$blk:AO.ptr.prototype.Timeout,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};AO.prototype.Timeout=function(){return this.$val.Timeout();};AN.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsRegular",name:"IsRegular",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Perm",name:"Perm",pkg:"",typ:$funcType([],[AN],false)},{prop:"Type",name:"Type",pkg:"",typ:$funcType([],[AN],false)}];AQ.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Unwrap",name:"Unwrap",pkg:"",typ:$funcType([],[$error],false)},{prop:"Timeout",name:"Timeout",pkg:"",typ:$funcType([],[$Bool],false)}];AF.init([{prop:"Info",name:"Info",pkg:"",typ:$funcType([],[AM,$error],false)},{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"Type",name:"Type",pkg:"",typ:$funcType([],[AN],false)}]);AM.init([{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"ModTime",name:"ModTime",pkg:"",typ:$funcType([],[F.Time],false)},{prop:"Mode",name:"Mode",pkg:"",typ:$funcType([],[AN],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Sys",name:"Sys",pkg:"",typ:$funcType([],[$emptyInterface],false)}]);AO.init("",[{prop:"Op",name:"Op",embedded:false,exported:true,typ:$String,tag:""},{prop:"Path",name:"Path",embedded:false,exported:true,typ:$String,tag:""},{prop:"Err",name:"Err",embedded:false,exported:true,typ:$error,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.SkipDir=A.New("skip this directory");$pkg.ErrInvalid=AH();$pkg.ErrPermission=AI();$pkg.ErrExist=AJ();$pkg.ErrNotExist=AK();$pkg.ErrClosed=AL();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["os"]=(function(){var $pkg={},$init,D,R,E,P,J,L,N,K,F,M,G,C,H,Q,I,O,A,B,S,V,AS,BN,BZ,CI,CK,DY,EA,EX,FC,FL,FN,FO,FP,FQ,FR,FT,FV,FY,FZ,GA,GB,GC,GD,GP,GQ,GR,GS,GT,GU,GV,GW,AB,CL,CS,EY,FE,e,f,g,AL,AM,AN,AQ,AT,AU,BD,BO,BQ,BR,CA,CB,CC,CH,CJ,DW,DX,ED,EG,EH,ET,EU,EV,EW,EZ,FA,FB,FG,FH;D=$packages["errors"];R=$packages["github.com/gopherjs/gopherjs/js"];E=$packages["internal/itoa"];P=$packages["internal/oserror"];J=$packages["internal/poll"];L=$packages["internal/safefilepath"];N=$packages["internal/syscall/execenv"];K=$packages["internal/syscall/unix"];F=$packages["internal/testlog"];M=$packages["internal/unsafeheader"];G=$packages["io"];C=$packages["io/fs"];H=$packages["runtime"];Q=$packages["sort"];I=$packages["sync"];O=$packages["sync/atomic"];A=$packages["syscall"];B=$packages["time"];S=$pkg.fileStat=$newType(0,$kindStruct,"os.fileStat",true,"os",false,function(name_,size_,mode_,modTime_,sys_){this.$val=this;if(arguments.length===0){this.name="";this.size=new $Int64(0,0);this.mode=0;this.modTime=new B.Time.ptr(new $Uint64(0,0),new $Int64(0,0),FT.nil);this.sys=new A.Stat_t.ptr(new $Int64(0,0),new $Uint64(0,0),0,0,0,0,new $Int64(0,0),new $Int64(0,0),0,0,new $Int64(0,0),new $Int64(0,0),new $Int64(0,0),new $Int64(0,0),new $Int64(0,0),new $Int64(0,0));return;}this.name=name_;this.size=size_;this.mode=mode_;this.modTime=modTime_;this.sys=sys_;});V=$pkg.File=$newType(0,$kindStruct,"os.File",true,"os",true,function(file_){this.$val=this;if(arguments.length===0){this.file=GC.nil;return;}this.file=file_;});AS=$pkg.rawConn=$newType(0,$kindStruct,"os.rawConn",true,"os",false,function(file_){this.$val=this;if(arguments.length===0){this.file=FR.nil;return;}this.file=file_;});BN=$pkg.file=$newType(0,$kindStruct,"os.file",true,"os",false,function(pfd_,name_,dirinfo_,nonblock_,stdoutOrErr_,appendMode_){this.$val=this;if(arguments.length===0){this.pfd=new J.FD.ptr(new J.fdMutex.ptr(new $Uint64(0,0),0,0),0,new J.pollDesc.ptr(FY.nil,false),GA.nil,0,0,false,false,false);this.name="";this.dirinfo=GB.nil;this.nonblock=false;this.stdoutOrErr=false;this.appendMode=false;return;}this.pfd=pfd_;this.name=name_;this.dirinfo=dirinfo_;this.nonblock=nonblock_;this.stdoutOrErr=stdoutOrErr_;this.appendMode=appendMode_;});BZ=$pkg.unixDirent=$newType(0,$kindStruct,"os.unixDirent",true,"os",false,function(parent_,name_,typ_,info_){this.$val=this;if(arguments.length===0){this.parent="";this.name="";this.typ=0;this.info=$ifaceNil;return;}this.parent=parent_;this.name=name_;this.typ=typ_;this.info=info_;});CI=$pkg.LinkError=$newType(0,$kindStruct,"os.LinkError",true,"os",true,function(Op_,Old_,New_,Err_){this.$val=this;if(arguments.length===0){this.Op="";this.Old="";this.New="";this.Err=$ifaceNil;return;}this.Op=Op_;this.Old=Old_;this.New=New_;this.Err=Err_;});CK=$pkg.onlyWriter=$newType(0,$kindStruct,"os.onlyWriter",true,"os",false,function(Writer_){this.$val=this;if(arguments.length===0){this.Writer=$ifaceNil;return;}this.Writer=Writer_;});DY=$pkg.timeout=$newType(8,$kindInterface,"os.timeout",true,"os",false,null);EA=$pkg.SyscallError=$newType(0,$kindStruct,"os.SyscallError",true,"os",true,function(Syscall_,Err_){this.$val=this;if(arguments.length===0){this.Syscall="";this.Err=$ifaceNil;return;}this.Syscall=Syscall_;this.Err=Err_;});EX=$pkg.dirInfo=$newType(0,$kindStruct,"os.dirInfo",true,"os",false,function(buf_,nbuf_,bufp_){this.$val=this;if(arguments.length===0){this.buf=FP.nil;this.nbuf=0;this.bufp=0;return;}this.buf=buf_;this.nbuf=nbuf_;this.bufp=bufp_;});FC=$pkg.readdirMode=$newType(4,$kindInt,"os.readdirMode",true,"os",false,null);FL=$sliceType($String);FN=$sliceType($emptyInterface);FO=$sliceType($Uint8);FP=$ptrType(FO);FQ=$ptrType(S);FR=$ptrType(V);FT=$ptrType(B.Location);FV=$ptrType(C.PathError);FY=$ptrType(J.FD);FZ=$sliceType(A.Iovec);GA=$ptrType(FZ);GB=$ptrType(EX);GC=$ptrType(BN);GD=$funcType([GC],[$error],false);GP=$ptrType(CI);GQ=$ptrType(EA);GR=$sliceType(C.DirEntry);GS=$sliceType(C.FileInfo);GT=$funcType([$Uintptr],[],false);GU=$funcType([$Uintptr],[$Bool],false);GV=$ptrType(AS);GW=$ptrType(BZ);S.ptr.prototype.Size=function(){var h;h=this;return h.size;};S.prototype.Size=function(){return this.$val.Size();};S.ptr.prototype.Mode=function(){var h;h=this;return h.mode;};S.prototype.Mode=function(){return this.$val.Mode();};S.ptr.prototype.ModTime=function(){var h;h=this;return h.modTime;};S.prototype.ModTime=function(){return this.$val.ModTime();};S.ptr.prototype.Sys=function(){var h;h=this;return h.sys;};S.prototype.Sys=function(){return this.$val.Sys();};S.ptr.prototype.Name=function(){var h;h=this;return h.name;};S.prototype.Name=function(){return this.$val.Name();};S.ptr.prototype.IsDir=function(){var h;h=this;return new C.FileMode(h.Mode()).IsDir();};S.prototype.IsDir=function(){return this.$val.IsDir();};V.ptr.prototype.Stat=function(){var{h,i,j,k,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:h=[h];i=this;if(i===FR.nil){$s=-1;return[$ifaceNil,$pkg.ErrInvalid];}h[0]=new S.ptr("",new $Int64(0,0),0,new B.Time.ptr(new $Uint64(0,0),new $Int64(0,0),FT.nil),new A.Stat_t.ptr(new $Int64(0,0),new $Uint64(0,0),0,0,0,0,new $Int64(0,0),new $Int64(0,0),0,0,new $Int64(0,0),new $Int64(0,0),new $Int64(0,0),new $Int64(0,0),new $Int64(0,0),new $Int64(0,0)));j=i.file.pfd.Fstat(h[0].sys);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(!($interfaceIsEqual(k,$ifaceNil))){$s=-1;return[$ifaceNil,new C.PathError.ptr("stat",i.file.name,k)];}AM(h[0],i.file.name);$s=-1;return[h[0],$ifaceNil];}return;}var $f={$blk:V.ptr.prototype.Stat,$c:true,$r,h,i,j,k,$s};return $f;};V.prototype.Stat=function(){return this.$val.Stat();};AL=function(h){var{h,i,j,k,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:h=[h];i=[i];i[0]=new S.ptr("",new $Int64(0,0),0,new B.Time.ptr(new $Uint64(0,0),new $Int64(0,0),FT.nil),new A.Stat_t.ptr(new $Int64(0,0),new $Uint64(0,0),0,0,0,0,new $Int64(0,0),new $Int64(0,0),0,0,new $Int64(0,0),new $Int64(0,0),new $Int64(0,0),new $Int64(0,0),new $Int64(0,0),new $Int64(0,0)));j=CH((function(h,i){return function $b(){var{j,k,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:j=A.Lstat(h[0],i[0].sys);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;$s=2;case 2:return k;}return;}var $f={$blk:$b,$c:true,$r,j,k,$s};return $f;};})(h,i));$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(!($interfaceIsEqual(k,$ifaceNil))){$s=-1;return[$ifaceNil,new C.PathError.ptr("lstat",h[0],k)];}AM(i[0],h[0]);$s=-1;return[i[0],$ifaceNil];}return;}var $f={$blk:AL,$c:true,$r,h,i,j,k,$s};return $f;};AM=function(h,i){var h,i,j;h.name=BD(i);h.size=h.sys.Size;B.Time.copy(h.modTime,AN(h.sys.Mtime,h.sys.MtimeNsec));h.mode=((((h.sys.Mode&511)>>>0)>>>0));j=(h.sys.Mode&126976)>>>0;if(j===(24576)){h.mode=(h.mode|(67108864))>>>0;}else if(j===(8192)){h.mode=(h.mode|(69206016))>>>0;}else if(j===(16384)){h.mode=(h.mode|(2147483648))>>>0;}else if(j===(4096)){h.mode=(h.mode|(33554432))>>>0;}else if(j===(40960)){h.mode=(h.mode|(134217728))>>>0;}else if(j===(32768)){}else if(j===(49152)){h.mode=(h.mode|(16777216))>>>0;}if(!((((h.sys.Mode&1024)>>>0)===0))){h.mode=(h.mode|(4194304))>>>0;}if(!((((h.sys.Mode&2048)>>>0)===0))){h.mode=(h.mode|(8388608))>>>0;}if(!((((h.sys.Mode&512)>>>0)===0))){h.mode=(h.mode|(1048576))>>>0;}};AN=function(h,i){var h,i;return B.Unix(h,i);};AQ=function(h){var{h,i,j,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:$r=F.Stat(h);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=AL(h);$s=2;case 2:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;$s=3;case 3:return j;}return;}var $f={$blk:AQ,$c:true,$r,h,i,j,$s};return $f;};$pkg.Lstat=AQ;V.ptr.prototype.readFrom=function(h){var h,i,j,k,l,m,n,o;i=new $Int64(0,0);j=false;k=$ifaceNil;l=this;m=new $Int64(0,0);n=false;o=$ifaceNil;i=m;j=n;k=o;return[i,j,k];};V.prototype.readFrom=function(h){return this.$val.readFrom(h);};AS.ptr.prototype.Control=function(h){var{h,i,j,k,l,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:i=this;j=i.file.checkValid("SyscallConn.Control");if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return j;}k=i.file.file.pfd.RawControl(h);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;H.KeepAlive(i.file);$s=-1;return l;}return;}var $f={$blk:AS.ptr.prototype.Control,$c:true,$r,h,i,j,k,l,$s};return $f;};AS.prototype.Control=function(h){return this.$val.Control(h);};AS.ptr.prototype.Read=function(h){var{h,i,j,k,l,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:i=this;j=i.file.checkValid("SyscallConn.Read");if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return j;}k=i.file.file.pfd.RawRead(h);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;H.KeepAlive(i.file);$s=-1;return l;}return;}var $f={$blk:AS.ptr.prototype.Read,$c:true,$r,h,i,j,k,l,$s};return $f;};AS.prototype.Read=function(h){return this.$val.Read(h);};AS.ptr.prototype.Write=function(h){var{h,i,j,k,l,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:i=this;j=i.file.checkValid("SyscallConn.Write");if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return j;}k=i.file.file.pfd.RawWrite(h);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;H.KeepAlive(i.file);$s=-1;return l;}return;}var $f={$blk:AS.ptr.prototype.Write,$c:true,$r,h,i,j,k,l,$s};return $f;};AS.prototype.Write=function(h){return this.$val.Write(h);};AT=function(h){var h;return[new AS.ptr(h),$ifaceNil];};AU=function(){if(false){return;}$pkg.Args=FG();};BD=function(h){var h,i;i=h.length-1>>0;while(true){if(!(i>0&&(h.charCodeAt(i)===47))){break;}h=$substring(h,0,i);i=i-(1)>>0;}i=i-(1)>>0;while(true){if(!(i>=0)){break;}if(h.charCodeAt(i)===47){h=$substring(h,(i+1>>0));break;}i=i-(1)>>0;}return h;};V.ptr.prototype.Fd=function(){var{h,i,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:h=this;if(h===FR.nil){$s=-1;return 4294967295;}if(h.file.nonblock){$s=1;continue;}$s=2;continue;case 1:i=h.file.pfd.SetBlocking();$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;case 2:$s=-1;return((h.file.pfd.Sysfd>>>0));}return;}var $f={$blk:V.ptr.prototype.Fd,$c:true,$r,h,i,$s};return $f;};V.prototype.Fd=function(){return this.$val.Fd();};BO=function(h,i){var{h,i,j,k,l,m,n,o,$s,$r,$c}=$restore(this,{h,i});$s=$s||0;s:while(true){switch($s){case 0:j=0;k=K.IsNonblock(((h>>0)));l=k[0];m=k[1];if($interfaceIsEqual(m,$ifaceNil)&&l){j=3;}n=BQ(h,i,j);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;$s=2;case 2:return o;}return;}var $f={$blk:BO,$c:true,$r,h,i,j,k,l,m,n,o,$s};return $f;};$pkg.NewFile=BO;BQ=function(h,i,j){var{h,i,j,k,l,m,n,o,p,q,r,s,t,$s,$r,$c}=$restore(this,{h,i,j});$s=$s||0;s:while(true){switch($s){case 0:k=[k];l=[l];k[0]=((h>>0));if(k[0]<0){$s=-1;return FR.nil;}m=new V.ptr(new BN.ptr(new J.FD.ptr(new J.fdMutex.ptr(new $Uint64(0,0),0,0),k[0],new J.pollDesc.ptr(FY.nil,false),GA.nil,0,0,true,true,false),i,GB.nil,false,(k[0]===1)||(k[0]===2),false));n=(j===1)||(j===2)||(j===3);if(j===1){$s=1;continue;}$s=2;continue;case 1:o="js";if(o===("darwin")||o===("ios")||o===("dragonfly")||o===("freebsd")||o===("netbsd")||o===("openbsd")){$s=4;continue;}$s=5;continue;case 4:l[0]=new A.Stat_t.ptr(new $Int64(0,0),new $Uint64(0,0),0,0,0,0,new $Int64(0,0),new $Int64(0,0),0,0,new $Int64(0,0),new $Int64(0,0),new $Int64(0,0),new $Int64(0,0),new $Int64(0,0),new $Int64(0,0));p=CH((function(k,l){return function $b(){var{p,q,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:p=A.Fstat(k[0],l[0]);$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=p;$s=2;case 2:return q;}return;}var $f={$blk:$b,$c:true,$r,p,q,$s};return $f;};})(k,l));$s=6;case 6:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=p;r=(l[0].Mode&126976)>>>0;if($interfaceIsEqual(q,$ifaceNil)&&((r===32768)||(r===16384))){n=false;}if(false&&(r===4096)){n=false;}case 5:case 3:case 2:s=m.file.pfd.Init("file",n);if(!($interfaceIsEqual(s,$ifaceNil))){}else if(n){t=A.SetNonblock(k[0],true);if($interfaceIsEqual(t,$ifaceNil)){m.file.nonblock=true;}}H.SetFinalizer(m.file,new GD($methodExpr(GC,"close")));$s=-1;return m;}return;}var $f={$blk:BQ,$c:true,$r,h,i,j,k,l,m,n,o,p,q,r,s,t,$s};return $f;};BR=function(h,i){var{h,i,$s,$r,$c}=$restore(this,{h,i});$s=$s||0;s:while(true){switch($s){case 0:if($interfaceIsEqual(i,new A.Errno(32))&&h.file.stdoutOrErr){$s=1;continue;}$s=2;continue;case 1:$r=CB();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return;}return;}var $f={$blk:BR,$c:true,$r,h,i,$s};return $f;};BN.ptr.prototype.close=function(){var{h,i,j,k,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:h=this;if(h===GC.nil){$s=-1;return new A.Errno(22);}if(!(h.dirinfo===GB.nil)){h.dirinfo.close();h.dirinfo=GB.nil;}i=$ifaceNil;j=h.pfd.Close();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(!($interfaceIsEqual(k,$ifaceNil))){if($interfaceIsEqual(k,J.ErrFileClosing)){k=$pkg.ErrClosed;}i=new C.PathError.ptr("close",h.name,k);}H.SetFinalizer(h,$ifaceNil);$s=-1;return i;}return;}var $f={$blk:BN.ptr.prototype.close,$c:true,$r,h,i,j,k,$s};return $f;};BN.prototype.close=function(){return this.$val.close();};V.ptr.prototype.seek=function(h,i){var{h,i,j,k,l,m,n,o,p,$s,$r,$c}=$restore(this,{h,i});$s=$s||0;s:while(true){switch($s){case 0:j=new $Int64(0,0);k=$ifaceNil;l=this;if(!(l.file.dirinfo===GB.nil)){l.file.dirinfo.close();l.file.dirinfo=GB.nil;}n=l.file.pfd.Seek(h,i);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;j=m[0];k=m[1];H.KeepAlive(l);o=j;p=k;j=o;k=p;$s=-1;return[j,k];}return;}var $f={$blk:V.ptr.prototype.seek,$c:true,$r,h,i,j,k,l,m,n,o,p,$s};return $f;};V.prototype.seek=function(h,i){return this.$val.seek(h,i);};BZ.ptr.prototype.Name=function(){var h;h=this;return h.name;};BZ.prototype.Name=function(){return this.$val.Name();};BZ.ptr.prototype.IsDir=function(){var h;h=this;return new C.FileMode(h.typ).IsDir();};BZ.prototype.IsDir=function(){return this.$val.IsDir();};BZ.ptr.prototype.Type=function(){var h;h=this;return h.typ;};BZ.prototype.Type=function(){return this.$val.Type();};BZ.ptr.prototype.Info=function(){var{h,i,j,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:h=this;if(!($interfaceIsEqual(h.info,$ifaceNil))){$s=-1;return[h.info,$ifaceNil];}i=CS(h.parent+"/"+h.name);$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;$s=2;case 2:return j;}return;}var $f={$blk:BZ.ptr.prototype.Info,$c:true,$r,h,i,j,$s};return $f;};BZ.prototype.Info=function(){return this.$val.Info();};CA=function(h,i,j){var{h,i,j,k,l,m,n,o,p,q,$s,$r,$c}=$restore(this,{h,i,j});$s=$s||0;s:while(true){switch($s){case 0:k=new BZ.ptr(h,i,j,$ifaceNil);if(!((j===4294967295))&&!FE){$s=-1;return[k,$ifaceNil];}m=CS(h+"/"+i);$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[0];o=l[1];if(!($interfaceIsEqual(o,$ifaceNil))){$s=-1;return[$ifaceNil,o];}p=n.Mode();$s=2;case 2:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=new C.FileMode(p).Type();$s=3;case 3:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}k.typ=q;k.info=n;$s=-1;return[k,$ifaceNil];}return;}var $f={$blk:CA,$c:true,$r,h,i,j,k,l,m,n,o,p,q,$s};return $f;};CB=function(){$throwRuntimeError("native function not implemented: os.sigpipe");};V.ptr.prototype.Close=function(){var{h,i,j,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:h=this;if(h===FR.nil){$s=-1;return $pkg.ErrInvalid;}i=h.file.close();$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;$s=2;case 2:return j;}return;}var $f={$blk:V.ptr.prototype.Close,$c:true,$r,h,i,j,$s};return $f;};V.prototype.Close=function(){return this.$val.Close();};V.ptr.prototype.read=function(h){var{h,i,j,k,l,m,n,o,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:i=0;j=$ifaceNil;k=this;m=k.file.pfd.Read(h);$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;i=l[0];j=l[1];H.KeepAlive(k);n=i;o=j;i=n;j=o;$s=-1;return[i,j];}return;}var $f={$blk:V.ptr.prototype.read,$c:true,$r,h,i,j,k,l,m,n,o,$s};return $f;};V.prototype.read=function(h){return this.$val.read(h);};V.ptr.prototype.pread=function(h,i){var{h,i,j,k,l,m,n,o,p,$s,$r,$c}=$restore(this,{h,i});$s=$s||0;s:while(true){switch($s){case 0:j=0;k=$ifaceNil;l=this;n=l.file.pfd.Pread(h,i);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;j=m[0];k=m[1];H.KeepAlive(l);o=j;p=k;j=o;k=p;$s=-1;return[j,k];}return;}var $f={$blk:V.ptr.prototype.pread,$c:true,$r,h,i,j,k,l,m,n,o,p,$s};return $f;};V.prototype.pread=function(h,i){return this.$val.pread(h,i);};V.ptr.prototype.write=function(h){var{h,i,j,k,l,m,n,o,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:i=0;j=$ifaceNil;k=this;m=k.file.pfd.Write(h);$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;i=l[0];j=l[1];H.KeepAlive(k);n=i;o=j;i=n;j=o;$s=-1;return[i,j];}return;}var $f={$blk:V.ptr.prototype.write,$c:true,$r,h,i,j,k,l,m,n,o,$s};return $f;};V.prototype.write=function(h){return this.$val.write(h);};V.ptr.prototype.pwrite=function(h,i){var{h,i,j,k,l,m,n,o,p,$s,$r,$c}=$restore(this,{h,i});$s=$s||0;s:while(true){switch($s){case 0:j=0;k=$ifaceNil;l=this;n=l.file.pfd.Pwrite(h,i);$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;j=m[0];k=m[1];H.KeepAlive(l);o=j;p=k;j=o;k=p;$s=-1;return[j,k];}return;}var $f={$blk:V.ptr.prototype.pwrite,$c:true,$r,h,i,j,k,l,m,n,o,p,$s};return $f;};V.prototype.pwrite=function(h,i){return this.$val.pwrite(h,i);};CC=function(h){var h,i;i=0;i=(i|(((new C.FileMode(h).Perm()>>>0))))>>>0;if(!((((h&8388608)>>>0)===0))){i=(i|(2048))>>>0;}if(!((((h&4194304)>>>0)===0))){i=(i|(1024))>>>0;}if(!((((h&1048576)>>>0)===0))){i=(i|(512))>>>0;}return i;};V.ptr.prototype.chmod=function(h){var{h,i,j,k,l,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:i=this;j=i.checkValid("chmod");if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return j;}k=i.file.pfd.Fchmod(CC(h));$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;if(!($interfaceIsEqual(l,$ifaceNil))){$s=-1;return i.wrapErr("chmod",l);}$s=-1;return $ifaceNil;}return;}var $f={$blk:V.ptr.prototype.chmod,$c:true,$r,h,i,j,k,l,$s};return $f;};V.prototype.chmod=function(h){return this.$val.chmod(h);};V.ptr.prototype.Chown=function(h,i){var{h,i,j,k,l,m,$s,$r,$c}=$restore(this,{h,i});$s=$s||0;s:while(true){switch($s){case 0:j=this;k=j.checkValid("chown");if(!($interfaceIsEqual(k,$ifaceNil))){$s=-1;return k;}l=j.file.pfd.Fchown(h,i);$s=1;case 1:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;if(!($interfaceIsEqual(m,$ifaceNil))){$s=-1;return j.wrapErr("chown",m);}$s=-1;return $ifaceNil;}return;}var $f={$blk:V.ptr.prototype.Chown,$c:true,$r,h,i,j,k,l,m,$s};return $f;};V.prototype.Chown=function(h,i){return this.$val.Chown(h,i);};V.ptr.prototype.Truncate=function(h){var{h,i,j,k,l,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:i=this;j=i.checkValid("truncate");if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return j;}k=i.file.pfd.Ftruncate(h);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;if(!($interfaceIsEqual(l,$ifaceNil))){$s=-1;return i.wrapErr("truncate",l);}$s=-1;return $ifaceNil;}return;}var $f={$blk:V.ptr.prototype.Truncate,$c:true,$r,h,i,j,k,l,$s};return $f;};V.prototype.Truncate=function(h){return this.$val.Truncate(h);};V.ptr.prototype.Sync=function(){var{h,i,j,k,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:h=this;i=h.checkValid("sync");if(!($interfaceIsEqual(i,$ifaceNil))){$s=-1;return i;}j=h.file.pfd.Fsync();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(!($interfaceIsEqual(k,$ifaceNil))){$s=-1;return h.wrapErr("sync",k);}$s=-1;return $ifaceNil;}return;}var $f={$blk:V.ptr.prototype.Sync,$c:true,$r,h,i,j,k,$s};return $f;};V.prototype.Sync=function(){return this.$val.Sync();};V.ptr.prototype.Chdir=function(){var{h,i,j,k,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:h=this;i=h.checkValid("chdir");if(!($interfaceIsEqual(i,$ifaceNil))){$s=-1;return i;}j=h.file.pfd.Fchdir();$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(!($interfaceIsEqual(k,$ifaceNil))){$s=-1;return h.wrapErr("chdir",k);}$s=-1;return $ifaceNil;}return;}var $f={$blk:V.ptr.prototype.Chdir,$c:true,$r,h,i,j,k,$s};return $f;};V.prototype.Chdir=function(){return this.$val.Chdir();};V.ptr.prototype.setDeadline=function(h){var{h,i,j,k,l,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:i=this;j=i.checkValid("SetDeadline");if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return j;}k=i.file.pfd.SetDeadline($clone(h,B.Time));$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;$s=2;case 2:return l;}return;}var $f={$blk:V.ptr.prototype.setDeadline,$c:true,$r,h,i,j,k,l,$s};return $f;};V.prototype.setDeadline=function(h){return this.$val.setDeadline(h);};V.ptr.prototype.setReadDeadline=function(h){var{h,i,j,k,l,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:i=this;j=i.checkValid("SetReadDeadline");if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return j;}k=i.file.pfd.SetReadDeadline($clone(h,B.Time));$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;$s=2;case 2:return l;}return;}var $f={$blk:V.ptr.prototype.setReadDeadline,$c:true,$r,h,i,j,k,l,$s};return $f;};V.prototype.setReadDeadline=function(h){return this.$val.setReadDeadline(h);};V.ptr.prototype.setWriteDeadline=function(h){var{h,i,j,k,l,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:i=this;j=i.checkValid("SetWriteDeadline");if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return j;}k=i.file.pfd.SetWriteDeadline($clone(h,B.Time));$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;$s=2;case 2:return l;}return;}var $f={$blk:V.ptr.prototype.setWriteDeadline,$c:true,$r,h,i,j,k,l,$s};return $f;};V.prototype.setWriteDeadline=function(h){return this.$val.setWriteDeadline(h);};V.ptr.prototype.checkValid=function(h){var h,i;i=this;if(i===FR.nil){return $pkg.ErrInvalid;}return $ifaceNil;};V.prototype.checkValid=function(h){return this.$val.checkValid(h);};CH=function(h){var{h,i,j,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:case 1:i=h();$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;if(!($interfaceIsEqual(j,new A.Errno(4)))){$s=-1;return j;}$s=1;continue;case 2:$s=-1;return $ifaceNil;}return;}var $f={$blk:CH,$c:true,$r,h,i,j,$s};return $f;};V.ptr.prototype.Name=function(){var h;h=this;return h.file.name;};V.prototype.Name=function(){return this.$val.Name();};CI.ptr.prototype.Error=function(){var{h,i,j,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:h=this;i=h.Err.Error();$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=h.Op+" "+h.Old+" "+h.New+": "+i;$s=2;case 2:return j;}return;}var $f={$blk:CI.ptr.prototype.Error,$c:true,$r,h,i,j,$s};return $f;};CI.prototype.Error=function(){return this.$val.Error();};CI.ptr.prototype.Unwrap=function(){var h;h=this;return h.Err;};CI.prototype.Unwrap=function(){return this.$val.Unwrap();};V.ptr.prototype.Read=function(h){var{h,i,j,k,l,m,n,o,p,q,r,s,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:i=0;j=$ifaceNil;k=this;l=k.checkValid("read");if(!($interfaceIsEqual(l,$ifaceNil))){m=0;n=l;i=m;j=n;$s=-1;return[i,j];}p=k.read(h);$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;i=o[0];q=o[1];r=i;s=k.wrapErr("read",q);i=r;j=s;$s=-1;return[i,j];}return;}var $f={$blk:V.ptr.prototype.Read,$c:true,$r,h,i,j,k,l,m,n,o,p,q,r,s,$s};return $f;};V.prototype.Read=function(h){return this.$val.Read(h);};V.ptr.prototype.ReadAt=function(h,i){var{h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,$s,$r,$c}=$restore(this,{h,i});$s=$s||0;s:while(true){switch($s){case 0:j=0;k=$ifaceNil;l=this;m=l.checkValid("read");if(!($interfaceIsEqual(m,$ifaceNil))){n=0;o=m;j=n;k=o;$s=-1;return[j,k];}if((i.$high<0||(i.$high===0&&i.$low<0))){p=0;q=new C.PathError.ptr("readat",l.file.name,D.New("negative offset"));j=p;k=q;$s=-1;return[j,k];}case 1:if(!(h.$length>0)){$s=2;continue;}s=l.pread(h,i);$s=3;case 3:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;t=r[0];u=r[1];if(!($interfaceIsEqual(u,$ifaceNil))){k=l.wrapErr("read",u);$s=2;continue;}j=j+(t)>>0;h=$subslice(h,t);i=(v=(new $Int64(0,t)),new $Int64(i.$high+v.$high,i.$low+v.$low));$s=1;continue;case 2:$s=-1;return[j,k];}return;}var $f={$blk:V.ptr.prototype.ReadAt,$c:true,$r,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,$s};return $f;};V.prototype.ReadAt=function(h,i){return this.$val.ReadAt(h,i);};V.ptr.prototype.ReadFrom=function(h){var{h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:i=new $Int64(0,0);j=$ifaceNil;k=this;l=k.checkValid("write");if(!($interfaceIsEqual(l,$ifaceNil))){m=new $Int64(0,0);n=l;i=m;j=n;$s=-1;return[i,j];}o=k.readFrom(h);i=o[0];p=o[1];q=o[2];if(!p){$s=1;continue;}$s=2;continue;case 1:s=CJ(k,h);$s=3;case 3:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;i=r[0];j=r[1];t=[i,j];$s=4;case 4:return t;case 2:u=i;v=k.wrapErr("write",q);i=u;j=v;$s=-1;return[i,j];}return;}var $f={$blk:V.ptr.prototype.ReadFrom,$c:true,$r,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,$s};return $f;};V.prototype.ReadFrom=function(h){return this.$val.ReadFrom(h);};CJ=function(h,i){var{h,i,j,k,l,$s,$r,$c}=$restore(this,{h,i});$s=$s||0;s:while(true){switch($s){case 0:k=G.Copy((j=new CK.ptr(h),new j.constructor.elem(j)),i);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;$s=2;case 2:return l;}return;}var $f={$blk:CJ,$c:true,$r,h,i,j,k,l,$s};return $f;};V.ptr.prototype.Write=function(h){var{h,i,j,k,l,m,n,o,p,q,r,s,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:i=0;j=$ifaceNil;k=this;l=k.checkValid("write");if(!($interfaceIsEqual(l,$ifaceNil))){m=0;n=l;i=m;j=n;$s=-1;return[i,j];}p=k.write(h);$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;i=o[0];q=o[1];if(i<0){i=0;}if(!((i===h.$length))){j=G.ErrShortWrite;}$r=BR(k,q);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(q,$ifaceNil))){j=k.wrapErr("write",q);}r=i;s=j;i=r;j=s;$s=-1;return[i,j];}return;}var $f={$blk:V.ptr.prototype.Write,$c:true,$r,h,i,j,k,l,m,n,o,p,q,r,s,$s};return $f;};V.prototype.Write=function(h){return this.$val.Write(h);};V.ptr.prototype.WriteAt=function(h,i){var{h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,$s,$r,$c}=$restore(this,{h,i});$s=$s||0;s:while(true){switch($s){case 0:j=0;k=$ifaceNil;l=this;m=l.checkValid("write");if(!($interfaceIsEqual(m,$ifaceNil))){n=0;o=m;j=n;k=o;$s=-1;return[j,k];}if(l.file.appendMode){p=0;q=CL;j=p;k=q;$s=-1;return[j,k];}if((i.$high<0||(i.$high===0&&i.$low<0))){r=0;s=new C.PathError.ptr("writeat",l.file.name,D.New("negative offset"));j=r;k=s;$s=-1;return[j,k];}case 1:if(!(h.$length>0)){$s=2;continue;}u=l.pwrite(h,i);$s=3;case 3:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;v=t[0];w=t[1];if(!($interfaceIsEqual(w,$ifaceNil))){k=l.wrapErr("write",w);$s=2;continue;}j=j+(v)>>0;h=$subslice(h,v);i=(x=(new $Int64(0,v)),new $Int64(i.$high+x.$high,i.$low+x.$low));$s=1;continue;case 2:$s=-1;return[j,k];}return;}var $f={$blk:V.ptr.prototype.WriteAt,$c:true,$r,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,$s};return $f;};V.prototype.WriteAt=function(h,i){return this.$val.WriteAt(h,i);};V.ptr.prototype.Seek=function(h,i){var{h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$s,$r,$c}=$restore(this,{h,i});$s=$s||0;s:while(true){switch($s){case 0:j=new $Int64(0,0);k=$ifaceNil;l=this;m=l.checkValid("seek");if(!($interfaceIsEqual(m,$ifaceNil))){n=new $Int64(0,0);o=m;j=n;k=o;$s=-1;return[j,k];}q=l.seek(h,i);$s=1;case 1:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;r=p[0];s=p[1];if($interfaceIsEqual(s,$ifaceNil)&&!(l.file.dirinfo===GB.nil)&&!((r.$high===0&&r.$low===0))){s=new A.Errno(21);}if(!($interfaceIsEqual(s,$ifaceNil))){t=new $Int64(0,0);u=l.wrapErr("seek",s);j=t;k=u;$s=-1;return[j,k];}v=r;w=$ifaceNil;j=v;k=w;$s=-1;return[j,k];}return;}var $f={$blk:V.ptr.prototype.Seek,$c:true,$r,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$s};return $f;};V.prototype.Seek=function(h,i){return this.$val.Seek(h,i);};V.ptr.prototype.wrapErr=function(h,i){var h,i,j;j=this;if($interfaceIsEqual(i,$ifaceNil)||$interfaceIsEqual(i,G.EOF)){return i;}if($interfaceIsEqual(i,J.ErrFileClosing)){i=$pkg.ErrClosed;}return new C.PathError.ptr(h,j.file.name,i);};V.prototype.wrapErr=function(h,i){return this.$val.wrapErr(h,i);};V.ptr.prototype.Chmod=function(h){var{h,i,j,k,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:i=this;j=i.chmod(h);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;$s=2;case 2:return k;}return;}var $f={$blk:V.ptr.prototype.Chmod,$c:true,$r,h,i,j,k,$s};return $f;};V.prototype.Chmod=function(h){return this.$val.Chmod(h);};V.ptr.prototype.SetDeadline=function(h){var{h,i,j,k,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:i=this;j=i.setDeadline($clone(h,B.Time));$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;$s=2;case 2:return k;}return;}var $f={$blk:V.ptr.prototype.SetDeadline,$c:true,$r,h,i,j,k,$s};return $f;};V.prototype.SetDeadline=function(h){return this.$val.SetDeadline(h);};V.ptr.prototype.SetReadDeadline=function(h){var{h,i,j,k,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:i=this;j=i.setReadDeadline($clone(h,B.Time));$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;$s=2;case 2:return k;}return;}var $f={$blk:V.ptr.prototype.SetReadDeadline,$c:true,$r,h,i,j,k,$s};return $f;};V.prototype.SetReadDeadline=function(h){return this.$val.SetReadDeadline(h);};V.ptr.prototype.SetWriteDeadline=function(h){var{h,i,j,k,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:i=this;j=i.setWriteDeadline($clone(h,B.Time));$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;$s=2;case 2:return k;}return;}var $f={$blk:V.ptr.prototype.SetWriteDeadline,$c:true,$r,h,i,j,k,$s};return $f;};V.prototype.SetWriteDeadline=function(h){return this.$val.SetWriteDeadline(h);};V.ptr.prototype.SyscallConn=function(){var h,i,j;h=this;i=h.checkValid("SyscallConn");if(!($interfaceIsEqual(i,$ifaceNil))){return[$ifaceNil,i];}j=AT(h);return[j[0],j[1]];};V.prototype.SyscallConn=function(){return this.$val.SyscallConn();};DW=function(){return J.ErrNoDeadline;};DX=function(){return J.ErrDeadlineExceeded;};EA.ptr.prototype.Error=function(){var{h,i,j,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:h=this;i=h.Err.Error();$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=h.Syscall+": "+i;$s=2;case 2:return j;}return;}var $f={$blk:EA.ptr.prototype.Error,$c:true,$r,h,i,j,$s};return $f;};EA.prototype.Error=function(){return this.$val.Error();};EA.ptr.prototype.Unwrap=function(){var h;h=this;return h.Err;};EA.prototype.Unwrap=function(){return this.$val.Unwrap();};EA.ptr.prototype.Timeout=function(){var{h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:h=this;i=$assertType(h.Err,DY,true);j=i[0];k=i[1];if(!(k)){l=false;$s=1;continue s;}m=j.Timeout();$s=2;case 2:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;case 1:n=l;$s=3;case 3:return n;}return;}var $f={$blk:EA.ptr.prototype.Timeout,$c:true,$r,h,i,j,k,l,m,n,$s};return $f;};EA.prototype.Timeout=function(){return this.$val.Timeout();};ED=function(h){var h;return EG(h,$pkg.ErrNotExist);};$pkg.IsNotExist=ED;EG=function(h,i){var h,i,j,k,l;h=EH(h);if($interfaceIsEqual(h,i)){return true;}j=$assertType(h,A.Errno,true);k=j[0];l=j[1];return l&&new A.Errno(k).Is(i);};EH=function(h){var h,i,j,k,l;i=h;if($assertType(i,FV,true)[1]){j=i.$val;return j.Err;}else if($assertType(i,GP,true)[1]){k=i.$val;return k.Err;}else if($assertType(i,GQ,true)[1]){l=i.$val;return l.Err;}return h;};ET=function(h){var h;return[new $Uint64(0,1),true];};EU=function(h){var h;return EZ(h,0,2);};EV=function(h){var h,i,j,k;i=EU(h);j=i[0];k=i[1];if(!k){return[new $Uint64(0,0),false];}return[new $Uint64(j.$high-0,j.$low-2),true];};EW=function(h){var h;return 4294967295;};EX.ptr.prototype.close=function(){var h;h=this;if(!(h.buf===FP.nil)){EY.Put(h.buf);h.buf=FP.nil;}};EX.prototype.close=function(){return this.$val.close();};V.ptr.prototype.readdir=function(h,i){var{aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{h,i});$s=$s||0;s:while(true){switch($s){case 0:j=FL.nil;k=GR.nil;l=GS.nil;m=$ifaceNil;n=this;if(n.file.dirinfo===GB.nil){$s=1;continue;}$s=2;continue;case 1:n.file.dirinfo=new EX.ptr(FP.nil,0,0);o=EY.Get();$s=3;case 3:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n.file.dirinfo.buf=$assertType(o,FP);case 2:p=n.file.dirinfo;if(h===0){h=-1;}case 4:if(!(!((h===0)))){$s=5;continue;}if(p.bufp>=p.nbuf){$s=6;continue;}$s=7;continue;case 6:p.bufp=0;q=$ifaceNil;s=n.file.pfd.ReadDirent(p.buf.$get());$s=8;case 8:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;p.nbuf=r[0];q=r[1];H.KeepAlive(n);if(!($interfaceIsEqual(q,$ifaceNil))){t=j;u=k;v=l;w=new C.PathError.ptr("readdirent",n.file.name,q);j=t;k=u;l=v;m=w;$s=-1;return[j,k,l,m];}if(p.nbuf<=0){$s=5;continue;}case 7:x=$subslice((p.buf.$get()),p.bufp,p.nbuf);y=EU(x);z=y[0];aa=y[1];if(!aa||(ab=(new $Uint64(0,x.$length)),(z.$high>ab.$high||(z.$high===ab.$high&&z.$low>ab.$low)))){$s=5;continue;}ac=$subslice(x,0,$flatten64(z));p.bufp=p.bufp+(((z.$low>>0)))>>0;ad=ET(ac);ae=ad[0];aa=ad[1];if(!aa){$s=5;continue;}if((ae.$high===0&&ae.$low===0)){$s=4;continue;}af=EV(ac);ag=af[0];aa=af[1];if(!aa||(ah=new $Uint64(0+ag.$high,2+ag.$low),ai=(new $Uint64(0,ac.$length)),(ah.$high>ai.$high||(ah.$high===ai.$high&&ah.$low>ai.$low)))){$s=5;continue;}aj=$subslice(ac,2,$flatten64(new $Uint64(0+ag.$high,2+ag.$low)));ak=aj;al=0;while(true){if(!(al<ak.$length)){break;}am=al;an=((al<0||al>=ak.$length)?($throwRuntimeError("index out of range"),undefined):ak.$array[ak.$offset+al]);if(an===0){aj=$subslice(aj,0,am);break;}al++;}if(($bytesToString(aj))==="."||($bytesToString(aj))===".."){$s=4;continue;}if(h>0){h=h-(1)>>0;}if(i===0){$s=9;continue;}if(i===1){$s=10;continue;}$s=11;continue;case 9:j=$append(j,($bytesToString(aj)));$s=12;continue;case 10:ap=CA(n.file.name,($bytesToString(aj)),EW(ac));$s=13;case 13:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=ap;aq=ao[0];ar=ao[1];if(ED(ar)){$s=4;continue;}if(!($interfaceIsEqual(ar,$ifaceNil))){as=FL.nil;at=k;au=GS.nil;av=ar;j=as;k=at;l=au;m=av;$s=-1;return[j,k,l,m];}k=$append(k,aq);$s=12;continue;case 11:ax=CS(n.file.name+"/"+($bytesToString(aj)));$s=14;case 14:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=ax;ay=aw[0];az=aw[1];if(ED(az)){$s=4;continue;}if(!($interfaceIsEqual(az,$ifaceNil))){ba=FL.nil;bb=GR.nil;bc=l;bd=az;j=ba;k=bb;l=bc;m=bd;$s=-1;return[j,k,l,m];}l=$append(l,ay);case 12:$s=4;continue;case 5:if(h>0&&(((j.$length+k.$length>>0)+l.$length>>0)===0)){be=FL.nil;bf=GR.nil;bg=GS.nil;bh=G.EOF;j=be;k=bf;l=bg;m=bh;$s=-1;return[j,k,l,m];}bi=j;bj=k;bk=l;bl=$ifaceNil;j=bi;k=bj;l=bk;m=bl;$s=-1;return[j,k,l,m];}return;}var $f={$blk:V.ptr.prototype.readdir,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};V.prototype.readdir=function(h,i){return this.$val.readdir(h,i);};EZ=function(h,i,j){var h,i,j,k,l,m,n,o,p,q,r;k=new $Uint64(0,0);l=false;if(h.$length<(((i+j>>>0)>>0))){m=new $Uint64(0,0);n=false;k=m;l=n;return[k,l];}if(false){o=FA($subslice(h,i),j);p=true;k=o;l=p;return[k,l];}q=FB($subslice(h,i),j);r=true;k=q;l=r;return[k,l];};FA=function(h,i){var aa,ab,ac,ad,ae,af,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j=i;if(j===(1)){return(new $Uint64(0,(0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0])));}else if(j===(2)){$unused((1>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+1]));return(k=(new $Uint64(0,(1>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+1]))),l=$shiftLeft64((new $Uint64(0,(0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0]))),8),new $Uint64(k.$high|l.$high,(k.$low|l.$low)>>>0));}else if(j===(4)){$unused((3>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+3]));return(m=(n=(o=(new $Uint64(0,(3>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+3]))),p=$shiftLeft64((new $Uint64(0,(2>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+2]))),8),new $Uint64(o.$high|p.$high,(o.$low|p.$low)>>>0)),q=$shiftLeft64((new $Uint64(0,(1>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+1]))),16),new $Uint64(n.$high|q.$high,(n.$low|q.$low)>>>0)),r=$shiftLeft64((new $Uint64(0,(0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0]))),24),new $Uint64(m.$high|r.$high,(m.$low|r.$low)>>>0));}else if(j===(8)){$unused((7>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+7]));return(s=(t=(u=(v=(w=(x=(y=(new $Uint64(0,(7>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+7]))),z=$shiftLeft64((new $Uint64(0,(6>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+6]))),8),new $Uint64(y.$high|z.$high,(y.$low|z.$low)>>>0)),aa=$shiftLeft64((new $Uint64(0,(5>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+5]))),16),new $Uint64(x.$high|aa.$high,(x.$low|aa.$low)>>>0)),ab=$shiftLeft64((new $Uint64(0,(4>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+4]))),24),new $Uint64(w.$high|ab.$high,(w.$low|ab.$low)>>>0)),ac=$shiftLeft64((new $Uint64(0,(3>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+3]))),32),new $Uint64(v.$high|ac.$high,(v.$low|ac.$low)>>>0)),ad=$shiftLeft64((new $Uint64(0,(2>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+2]))),40),new $Uint64(u.$high|ad.$high,(u.$low|ad.$low)>>>0)),ae=$shiftLeft64((new $Uint64(0,(1>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+1]))),48),new $Uint64(t.$high|ae.$high,(t.$low|ae.$low)>>>0)),af=$shiftLeft64((new $Uint64(0,(0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0]))),56),new $Uint64(s.$high|af.$high,(s.$low|af.$low)>>>0));}else{$panic(new $String("syscall: readInt with unsupported size"));}};FB=function(h,i){var aa,ab,ac,ad,ae,af,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j=i;if(j===(1)){return(new $Uint64(0,(0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0])));}else if(j===(2)){$unused((1>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+1]));return(k=(new $Uint64(0,(0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0]))),l=$shiftLeft64((new $Uint64(0,(1>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+1]))),8),new $Uint64(k.$high|l.$high,(k.$low|l.$low)>>>0));}else if(j===(4)){$unused((3>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+3]));return(m=(n=(o=(new $Uint64(0,(0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0]))),p=$shiftLeft64((new $Uint64(0,(1>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+1]))),8),new $Uint64(o.$high|p.$high,(o.$low|p.$low)>>>0)),q=$shiftLeft64((new $Uint64(0,(2>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+2]))),16),new $Uint64(n.$high|q.$high,(n.$low|q.$low)>>>0)),r=$shiftLeft64((new $Uint64(0,(3>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+3]))),24),new $Uint64(m.$high|r.$high,(m.$low|r.$low)>>>0));}else if(j===(8)){$unused((7>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+7]));return(s=(t=(u=(v=(w=(x=(y=(new $Uint64(0,(0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0]))),z=$shiftLeft64((new $Uint64(0,(1>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+1]))),8),new $Uint64(y.$high|z.$high,(y.$low|z.$low)>>>0)),aa=$shiftLeft64((new $Uint64(0,(2>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+2]))),16),new $Uint64(x.$high|aa.$high,(x.$low|aa.$low)>>>0)),ab=$shiftLeft64((new $Uint64(0,(3>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+3]))),24),new $Uint64(w.$high|ab.$high,(w.$low|ab.$low)>>>0)),ac=$shiftLeft64((new $Uint64(0,(4>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+4]))),32),new $Uint64(v.$high|ac.$high,(v.$low|ac.$low)>>>0)),ad=$shiftLeft64((new $Uint64(0,(5>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+5]))),40),new $Uint64(u.$high|ad.$high,(u.$low|ad.$low)>>>0)),ae=$shiftLeft64((new $Uint64(0,(6>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+6]))),48),new $Uint64(t.$high|ae.$high,(t.$low|ae.$low)>>>0)),af=$shiftLeft64((new $Uint64(0,(7>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+7]))),56),new $Uint64(s.$high|af.$high,(s.$low|af.$low)>>>0));}else{$panic(new $String("syscall: readInt with unsupported size"));}};V.ptr.prototype.Readdir=function(h){var{h,i,j,k,l,m,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:i=this;if(i===FR.nil){$s=-1;return[GS.nil,$pkg.ErrInvalid];}k=i.readdir(h,2);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[2];m=j[3];if(l===GS.nil){l=new GS([]);}$s=-1;return[l,m];}return;}var $f={$blk:V.ptr.prototype.Readdir,$c:true,$r,h,i,j,k,l,m,$s};return $f;};V.prototype.Readdir=function(h){return this.$val.Readdir(h);};V.ptr.prototype.Readdirnames=function(h){var{h,i,j,k,l,m,n,o,p,q,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:i=FL.nil;j=$ifaceNil;k=this;if(k===FR.nil){l=FL.nil;m=$pkg.ErrInvalid;i=l;j=m;$s=-1;return[i,j];}o=k.readdir(h,0);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;i=n[0];j=n[3];if(i===FL.nil){i=new FL([]);}p=i;q=j;i=p;j=q;$s=-1;return[i,j];}return;}var $f={$blk:V.ptr.prototype.Readdirnames,$c:true,$r,h,i,j,k,l,m,n,o,p,q,$s};return $f;};V.prototype.Readdirnames=function(h){return this.$val.Readdirnames(h);};V.ptr.prototype.ReadDir=function(h){var{h,i,j,k,l,m,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:i=this;if(i===FR.nil){$s=-1;return[GR.nil,$pkg.ErrInvalid];}k=i.readdir(h,1);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[1];m=j[3];if(l===GR.nil){l=new GR([]);}$s=-1;return[l,m];}return;}var $f={$blk:V.ptr.prototype.ReadDir,$c:true,$r,h,i,j,k,l,m,$s};return $f;};V.prototype.ReadDir=function(h){return this.$val.ReadDir(h);};FG=function(){return $pkg.Args;};FH=function(){var h,i,j;h=$global.process;if(!(h===undefined)){i=h.argv;if(!(i===undefined)&&$parseInt(i.length)>=1){$pkg.Args=$makeSlice(FL,($parseInt(i.length)-1>>0));j=0;while(true){if(!(j<($parseInt(i.length)-1>>0))){break;}((j<0||j>=$pkg.Args.$length)?($throwRuntimeError("index out of range"),undefined):$pkg.Args.$array[$pkg.Args.$offset+j]=$internalize(i[(j+1>>0)],$String));j=j+(1)>>0;}}}if($pkg.Args.$length===0){$pkg.Args=new FL(["?"]);}};V.ptr.prototype.WriteString=function(h){var{h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{h});$s=$s||0;s:while(true){switch($s){case 0:i=0;j=$ifaceNil;k=this;m=k.Write((new FO($stringToBytes(h))));$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;i=l[0];j=l[1];n=[i,j];$s=2;case 2:return n;}return;}var $f={$blk:V.ptr.prototype.WriteString,$c:true,$r,h,i,j,k,l,m,n,$s};return $f;};V.prototype.WriteString=function(h){return this.$val.WriteString(h);};FQ.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Mode",name:"Mode",pkg:"",typ:$funcType([],[C.FileMode],false)},{prop:"ModTime",name:"ModTime",pkg:"",typ:$funcType([],[B.Time],false)},{prop:"Sys",name:"Sys",pkg:"",typ:$funcType([],[$emptyInterface],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)}];FR.methods=[{prop:"Stat",name:"Stat",pkg:"",typ:$funcType([],[C.FileInfo,$error],false)},{prop:"readFrom",name:"readFrom",pkg:"os",typ:$funcType([G.Reader],[$Int64,$Bool,$error],false)},{prop:"Fd",name:"Fd",pkg:"",typ:$funcType([],[$Uintptr],false)},{prop:"seek",name:"seek",pkg:"os",typ:$funcType([$Int64,$Int],[$Int64,$error],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)},{prop:"read",name:"read",pkg:"os",typ:$funcType([FO],[$Int,$error],false)},{prop:"pread",name:"pread",pkg:"os",typ:$funcType([FO,$Int64],[$Int,$error],false)},{prop:"write",name:"write",pkg:"os",typ:$funcType([FO],[$Int,$error],false)},{prop:"pwrite",name:"pwrite",pkg:"os",typ:$funcType([FO,$Int64],[$Int,$error],false)},{prop:"chmod",name:"chmod",pkg:"os",typ:$funcType([C.FileMode],[$error],false)},{prop:"Chown",name:"Chown",pkg:"",typ:$funcType([$Int,$Int],[$error],false)},{prop:"Truncate",name:"Truncate",pkg:"",typ:$funcType([$Int64],[$error],false)},{prop:"Sync",name:"Sync",pkg:"",typ:$funcType([],[$error],false)},{prop:"Chdir",name:"Chdir",pkg:"",typ:$funcType([],[$error],false)},{prop:"setDeadline",name:"setDeadline",pkg:"os",typ:$funcType([B.Time],[$error],false)},{prop:"setReadDeadline",name:"setReadDeadline",pkg:"os",typ:$funcType([B.Time],[$error],false)},{prop:"setWriteDeadline",name:"setWriteDeadline",pkg:"os",typ:$funcType([B.Time],[$error],false)},{prop:"checkValid",name:"checkValid",pkg:"os",typ:$funcType([$String],[$error],false)},{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([FO],[$Int,$error],false)},{prop:"ReadAt",name:"ReadAt",pkg:"",typ:$funcType([FO,$Int64],[$Int,$error],false)},{prop:"ReadFrom",name:"ReadFrom",pkg:"",typ:$funcType([G.Reader],[$Int64,$error],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([FO],[$Int,$error],false)},{prop:"WriteAt",name:"WriteAt",pkg:"",typ:$funcType([FO,$Int64],[$Int,$error],false)},{prop:"Seek",name:"Seek",pkg:"",typ:$funcType([$Int64,$Int],[$Int64,$error],false)},{prop:"wrapErr",name:"wrapErr",pkg:"os",typ:$funcType([$String,$error],[$error],false)},{prop:"Chmod",name:"Chmod",pkg:"",typ:$funcType([C.FileMode],[$error],false)},{prop:"SetDeadline",name:"SetDeadline",pkg:"",typ:$funcType([B.Time],[$error],false)},{prop:"SetReadDeadline",name:"SetReadDeadline",pkg:"",typ:$funcType([B.Time],[$error],false)},{prop:"SetWriteDeadline",name:"SetWriteDeadline",pkg:"",typ:$funcType([B.Time],[$error],false)},{prop:"SyscallConn",name:"SyscallConn",pkg:"",typ:$funcType([],[A.RawConn,$error],false)},{prop:"readdir",name:"readdir",pkg:"os",typ:$funcType([$Int,FC],[FL,GR,GS,$error],false)},{prop:"Readdir",name:"Readdir",pkg:"",typ:$funcType([$Int],[GS,$error],false)},{prop:"Readdirnames",name:"Readdirnames",pkg:"",typ:$funcType([$Int],[FL,$error],false)},{prop:"ReadDir",name:"ReadDir",pkg:"",typ:$funcType([$Int],[GR,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)}];GV.methods=[{prop:"Control",name:"Control",pkg:"",typ:$funcType([GT],[$error],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([GU],[$error],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([GU],[$error],false)}];GC.methods=[{prop:"close",name:"close",pkg:"os",typ:$funcType([],[$error],false)}];GW.methods=[{prop:"Name",name:"Name",pkg:"",typ:$funcType([],[$String],false)},{prop:"IsDir",name:"IsDir",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"Type",name:"Type",pkg:"",typ:$funcType([],[C.FileMode],false)},{prop:"Info",name:"Info",pkg:"",typ:$funcType([],[C.FileInfo,$error],false)}];GP.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Unwrap",name:"Unwrap",pkg:"",typ:$funcType([],[$error],false)}];GQ.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Unwrap",name:"Unwrap",pkg:"",typ:$funcType([],[$error],false)},{prop:"Timeout",name:"Timeout",pkg:"",typ:$funcType([],[$Bool],false)}];GB.methods=[{prop:"close",name:"close",pkg:"os",typ:$funcType([],[],false)}];S.init("os",[{prop:"name",name:"name",embedded:false,exported:false,typ:$String,tag:""},{prop:"size",name:"size",embedded:false,exported:false,typ:$Int64,tag:""},{prop:"mode",name:"mode",embedded:false,exported:false,typ:C.FileMode,tag:""},{prop:"modTime",name:"modTime",embedded:false,exported:false,typ:B.Time,tag:""},{prop:"sys",name:"sys",embedded:false,exported:false,typ:A.Stat_t,tag:""}]);V.init("os",[{prop:"file",name:"file",embedded:true,exported:false,typ:GC,tag:""}]);AS.init("os",[{prop:"file",name:"file",embedded:false,exported:false,typ:FR,tag:""}]);BN.init("os",[{prop:"pfd",name:"pfd",embedded:false,exported:false,typ:J.FD,tag:""},{prop:"name",name:"name",embedded:false,exported:false,typ:$String,tag:""},{prop:"dirinfo",name:"dirinfo",embedded:false,exported:false,typ:GB,tag:""},{prop:"nonblock",name:"nonblock",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"stdoutOrErr",name:"stdoutOrErr",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"appendMode",name:"appendMode",embedded:false,exported:false,typ:$Bool,tag:""}]);BZ.init("os",[{prop:"parent",name:"parent",embedded:false,exported:false,typ:$String,tag:""},{prop:"name",name:"name",embedded:false,exported:false,typ:$String,tag:""},{prop:"typ",name:"typ",embedded:false,exported:false,typ:C.FileMode,tag:""},{prop:"info",name:"info",embedded:false,exported:false,typ:C.FileInfo,tag:""}]);CI.init("",[{prop:"Op",name:"Op",embedded:false,exported:true,typ:$String,tag:""},{prop:"Old",name:"Old",embedded:false,exported:true,typ:$String,tag:""},{prop:"New",name:"New",embedded:false,exported:true,typ:$String,tag:""},{prop:"Err",name:"Err",embedded:false,exported:true,typ:$error,tag:""}]);CK.init("",[{prop:"Writer",name:"Writer",embedded:true,exported:true,typ:G.Writer,tag:""}]);DY.init([{prop:"Timeout",name:"Timeout",pkg:"",typ:$funcType([],[$Bool],false)}]);EA.init("",[{prop:"Syscall",name:"Syscall",embedded:false,exported:true,typ:$String,tag:""},{prop:"Err",name:"Err",embedded:false,exported:true,typ:$error,tag:""}]);EX.init("os",[{prop:"buf",name:"buf",embedded:false,exported:false,typ:FP,tag:""},{prop:"nbuf",name:"nbuf",embedded:false,exported:false,typ:$Int,tag:""},{prop:"bufp",name:"bufp",embedded:false,exported:false,typ:$Int,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=D.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=R.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=P.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=Q.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$init();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.Args=FL.nil;FE=false;AB=D.New("pattern contains path separator");CL=D.New("os: invalid use of WriteAt on file opened with O_APPEND");CS=AQ;$pkg.ErrProcessDone=D.New("os: process already finished");$pkg.ErrInvalid=C.ErrInvalid;$pkg.ErrNotExist=C.ErrNotExist;$pkg.ErrClosed=C.ErrClosed;$pkg.ErrNoDeadline=DW();$pkg.ErrDeadlineExceeded=DX();EY=new I.Pool.ptr(FN.nil,(function(){var e,f;e=$makeSlice(FO,8192);return(f||(f=new FP(function(){return e;},function($v){e=$convertSliceType($v,FO);})));}));e=BO(0,"/dev/stdin");$s=19;case 19:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}$pkg.Stdin=e;f=BO(1,"/dev/stdout");$s=20;case 20:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$pkg.Stdout=f;g=BO(2,"/dev/stderr");$s=21;case 21:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$pkg.Stderr=g;AU();FH();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["fmt"]=(function(){var $pkg={},$init,A,I,B,C,D,E,F,G,H,V,W,X,AK,AL,AM,AN,AO,AP,BG,BH,BJ,BK,BL,BM,BN,BO,BP,BS,BT,CO,CP,CQ,CS,CT,Y,AC,AE,AF,AQ,Z,AA,AG,AR,AU,BB,BC,BD,BE,BF,BI;A=$packages["errors"];I=$packages["internal/fmtsort"];B=$packages["io"];C=$packages["math"];D=$packages["os"];E=$packages["reflect"];F=$packages["strconv"];G=$packages["sync"];H=$packages["unicode/utf8"];V=$pkg.scanError=$newType(0,$kindStruct,"fmt.scanError",true,"fmt",false,function(err_){this.$val=this;if(arguments.length===0){this.err=$ifaceNil;return;}this.err=err_;});W=$pkg.ss=$newType(0,$kindStruct,"fmt.ss",true,"fmt",false,function(rs_,buf_,count_,atEOF_,ssave_){this.$val=this;if(arguments.length===0){this.rs=$ifaceNil;this.buf=AO.nil;this.count=0;this.atEOF=false;this.ssave=new X.ptr(false,false,false,0,0,0);return;}this.rs=rs_;this.buf=buf_;this.count=count_;this.atEOF=atEOF_;this.ssave=ssave_;});X=$pkg.ssave=$newType(0,$kindStruct,"fmt.ssave",true,"fmt",false,function(validSave_,nlIsEnd_,nlIsSpace_,argLimit_,limit_,maxWid_){this.$val=this;if(arguments.length===0){this.validSave=false;this.nlIsEnd=false;this.nlIsSpace=false;this.argLimit=0;this.limit=0;this.maxWid=0;return;}this.validSave=validSave_;this.nlIsEnd=nlIsEnd_;this.nlIsSpace=nlIsSpace_;this.argLimit=argLimit_;this.limit=limit_;this.maxWid=maxWid_;});AK=$pkg.State=$newType(8,$kindInterface,"fmt.State",true,"fmt",true,null);AL=$pkg.Formatter=$newType(8,$kindInterface,"fmt.Formatter",true,"fmt",true,null);AM=$pkg.Stringer=$newType(8,$kindInterface,"fmt.Stringer",true,"fmt",true,null);AN=$pkg.GoStringer=$newType(8,$kindInterface,"fmt.GoStringer",true,"fmt",true,null);AO=$pkg.buffer=$newType(12,$kindSlice,"fmt.buffer",true,"fmt",false,null);AP=$pkg.pp=$newType(0,$kindStruct,"fmt.pp",true,"fmt",false,function(buf_,arg_,value_,fmt_,reordered_,goodArgNum_,panicking_,erroring_,wrapErrs_,wrappedErr_){this.$val=this;if(arguments.length===0){this.buf=AO.nil;this.arg=$ifaceNil;this.value=new E.Value.ptr(BN.nil,0,0);this.fmt=new BH.ptr(BO.nil,new BG.ptr(false,false,false,false,false,false,false,false,false),0,0,BP.zero());this.reordered=false;this.goodArgNum=false;this.panicking=false;this.erroring=false;this.wrapErrs=false;this.wrappedErr=$ifaceNil;return;}this.buf=buf_;this.arg=arg_;this.value=value_;this.fmt=fmt_;this.reordered=reordered_;this.goodArgNum=goodArgNum_;this.panicking=panicking_;this.erroring=erroring_;this.wrapErrs=wrapErrs_;this.wrappedErr=wrappedErr_;});BG=$pkg.fmtFlags=$newType(0,$kindStruct,"fmt.fmtFlags",true,"fmt",false,function(widPresent_,precPresent_,minus_,plus_,sharp_,space_,zero_,plusV_,sharpV_){this.$val=this;if(arguments.length===0){this.widPresent=false;this.precPresent=false;this.minus=false;this.plus=false;this.sharp=false;this.space=false;this.zero=false;this.plusV=false;this.sharpV=false;return;}this.widPresent=widPresent_;this.precPresent=precPresent_;this.minus=minus_;this.plus=plus_;this.sharp=sharp_;this.space=space_;this.zero=zero_;this.plusV=plusV_;this.sharpV=sharpV_;});BH=$pkg.fmt=$newType(0,$kindStruct,"fmt.fmt",true,"fmt",false,function(buf_,fmtFlags_,wid_,prec_,intbuf_){this.$val=this;if(arguments.length===0){this.buf=BO.nil;this.fmtFlags=new BG.ptr(false,false,false,false,false,false,false,false,false);this.wid=0;this.prec=0;this.intbuf=BP.zero();return;}this.buf=buf_;this.fmtFlags=fmtFlags_;this.wid=wid_;this.prec=prec_;this.intbuf=intbuf_;});BJ=$pkg.wrapError=$newType(0,$kindStruct,"fmt.wrapError",true,"fmt",false,function(msg_,err_){this.$val=this;if(arguments.length===0){this.msg="";this.err=$ifaceNil;return;}this.msg=msg_;this.err=err_;});BK=$arrayType($Uint16,2);BL=$sliceType(BK);BM=$sliceType($emptyInterface);BN=$ptrType(E.rtype);BO=$ptrType(AO);BP=$arrayType($Uint8,68);BS=$sliceType($Uint8);BT=$ptrType(W);CO=$ptrType(AP);CP=$arrayType($Uint8,6);CQ=$funcType([$Int32],[$Bool],false);CS=$ptrType(BH);CT=$ptrType(BJ);W.ptr.prototype.Read=function(a){var a,b,c,d,e,f;b=0;c=$ifaceNil;d=this;e=0;f=A.New("ScanState's Read should not be called. Use ReadRune");b=e;c=f;return[b,c];};W.prototype.Read=function(a){return this.$val.Read(a);};W.ptr.prototype.ReadRune=function(){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=0;b=0;c=$ifaceNil;d=this;if(d.atEOF||d.count>=d.ssave.argLimit){c=B.EOF;$s=-1;return[a,b,c];}f=d.rs.ReadRune();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;a=e[0];b=e[1];c=e[2];if($interfaceIsEqual(c,$ifaceNil)){d.count=d.count+(1)>>0;if(d.ssave.nlIsEnd&&(a===10)){d.atEOF=true;}}else if($interfaceIsEqual(c,B.EOF)){d.atEOF=true;}$s=-1;return[a,b,c];}return;}var $f={$blk:W.ptr.prototype.ReadRune,$c:true,$r,a,b,c,d,e,f,$s};return $f;};W.prototype.ReadRune=function(){return this.$val.ReadRune();};W.ptr.prototype.Width=function(){var a,b,c,d,e,f,g;a=0;b=false;c=this;if(c.ssave.maxWid===1073741824){d=0;e=false;a=d;b=e;return[a,b];}f=c.ssave.maxWid;g=true;a=f;b=g;return[a,b];};W.prototype.Width=function(){return this.$val.Width();};W.ptr.prototype.getRune=function(){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=0;b=this;d=b.ReadRune();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;a=c[0];e=c[2];if(!($interfaceIsEqual(e,$ifaceNil))){if($interfaceIsEqual(e,B.EOF)){a=-1;$s=-1;return a;}b.error(e);}$s=-1;return a;}return;}var $f={$blk:W.ptr.prototype.getRune,$c:true,$r,a,b,c,d,e,$s};return $f;};W.prototype.getRune=function(){return this.$val.getRune();};W.ptr.prototype.UnreadRune=function(){var{a,b,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;b=a.rs.UnreadRune();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}b;a.atEOF=false;a.count=a.count-(1)>>0;$s=-1;return $ifaceNil;}return;}var $f={$blk:W.ptr.prototype.UnreadRune,$c:true,$r,a,b,$s};return $f;};W.prototype.UnreadRune=function(){return this.$val.UnreadRune();};W.ptr.prototype.error=function(a){var a,b,c;b=this;$panic((c=new V.ptr(a),new c.constructor.elem(c)));};W.prototype.error=function(a){return this.$val.error(a);};W.ptr.prototype.errorString=function(a){var a,b,c;b=this;$panic((c=new V.ptr(A.New(a)),new c.constructor.elem(c)));};W.prototype.errorString=function(a){return this.$val.errorString(a);};W.ptr.prototype.Token=function(a,b){var{a,b,c,d,e,f,g,$s,$deferred,$r,$c}=$restore(this,{a,b});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);c=[c];d=BS.nil;c[0]=$ifaceNil;e=this;$deferred.push([(function(c){return function(){var f,g,h,i;f=$recover();if(!($interfaceIsEqual(f,$ifaceNil))){g=$assertType(f,V,true);h=$clone(g[0],V);i=g[1];if(i){c[0]=h.err;}else{$panic(f);}}};})(c),[]]);if(b===$throwNilPointerError){b=AA;}e.buf=$subslice(e.buf,0,0);f=e.token(a,b);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}d=f;g=[d,c[0]];$s=2;case 2:return g;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return[d,c[0]];}if($curGoroutine.asleep){var $f={$blk:W.ptr.prototype.Token,$c:true,$r,a,b,c,d,e,f,g,$s,$deferred};return $f;}}};W.prototype.Token=function(a,b){return this.$val.Token(a,b);};Z=function(a){var a,b,c,d,e;if(a>=65536){return false;}b=((a<<16>>>16));c=Y;d=0;while(true){if(!(d<c.$length)){break;}e=$clone(((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]),BK);if(b<e[0]){return false;}if(b<=e[1]){return true;}d++;}return false;};AA=function(a){var a;return!Z(a);};W.ptr.prototype.free=function(a){var a,b;b=this;if(a.validSave){X.copy(b.ssave,a);return;}if(b.buf.$capacity>1024){return;}b.buf=$subslice(b.buf,0,0);b.rs=$ifaceNil;AC.Put(b);};W.prototype.free=function(a){return this.$val.free(a);};W.ptr.prototype.SkipSpace=function(){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;case 1:b=a.getRune();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(c===-1){$s=-1;return;}if(!(c===13)){d=false;$s=6;continue s;}e=a.peek("\n");$s=7;case 7:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;case 6:if(d){$s=4;continue;}$s=5;continue;case 4:$s=1;continue;case 5:if(c===10){if(a.ssave.nlIsSpace){$s=1;continue;}a.errorString("unexpected newline");$s=-1;return;}if(!Z(c)){$s=8;continue;}$s=9;continue;case 8:f=a.UnreadRune();$s=10;case 10:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;$s=2;continue;case 9:$s=1;continue;case 2:$s=-1;return;}return;}var $f={$blk:W.ptr.prototype.SkipSpace,$c:true,$r,a,b,c,d,e,f,$s};return $f;};W.prototype.SkipSpace=function(){return this.$val.SkipSpace();};W.ptr.prototype.token=function(a,b){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(a){$s=1;continue;}$s=2;continue;case 1:$r=c.SkipSpace();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:case 4:d=c.getRune();$s=6;case 6:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(e===-1){$s=5;continue;}f=b(e);$s=9;case 9:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(!f){$s=7;continue;}$s=8;continue;case 7:g=c.UnreadRune();$s=10;case 10:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=5;continue;case 8:(c.$ptr_buf||(c.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).writeRune(e);$s=4;continue;case 5:$s=-1;return $convertSliceType(c.buf,BS);}return;}var $f={$blk:W.ptr.prototype.token,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};W.prototype.token=function(a,b){return this.$val.token(a,b);};AG=function(a,b){var a,b,c,d,e,f,g;c=a;d=0;while(true){if(!(d<c.length)){break;}e=$decodeRune(c,d);f=d;g=e[0];if(g===b){return f;}d+=e[1];}return-1;};W.ptr.prototype.peek=function(a){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;c=b.getRune();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!((d===-1))){$s=2;continue;}$s=3;continue;case 2:e=b.UnreadRune();$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;case 3:$s=-1;return AG(a,d)>=0;}return;}var $f={$blk:W.ptr.prototype.peek,$c:true,$r,a,b,c,d,e,$s};return $f;};W.prototype.peek=function(a){return this.$val.peek(a);};$ptrType(AO).prototype.write=function(a){var a,b;b=this;b.$set($appendSlice(b.$get(),a));};$ptrType(AO).prototype.writeString=function(a){var a,b;b=this;b.$set($appendSlice(b.$get(),a));};$ptrType(AO).prototype.writeByte=function(a){var a,b;b=this;b.$set($append(b.$get(),a));};$ptrType(AO).prototype.writeRune=function(a){var a,b,c,d,e;b=this;if(a<128){b.$set($append(b.$get(),((a<<24>>>24))));return;}c=b.$get();d=c.$length;while(true){if(!((d+4>>0)>c.$capacity)){break;}c=$append(c,0);}e=H.EncodeRune($convertSliceType($subslice(c,d,(d+4>>0)),BS),a);b.$set($subslice(c,0,(d+e>>0)));};AR=function(){var{a,b,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=AQ.Get();$s=1;case 1:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}b=$assertType(a,CO);b.panicking=false;b.erroring=false;b.wrapErrs=false;b.fmt.init((b.$ptr_buf||(b.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))));$s=-1;return b;}return;}var $f={$blk:AR,$c:true,$r,a,b,$s};return $f;};AP.ptr.prototype.free=function(){var a;a=this;if(a.buf.$capacity>65536){return;}a.buf=$subslice(a.buf,0,0);a.arg=$ifaceNil;a.value=new E.Value.ptr(BN.nil,0,0);a.wrappedErr=$ifaceNil;AQ.Put(a);};AP.prototype.free=function(){return this.$val.free();};AP.ptr.prototype.Width=function(){var a,b,c,d,e;a=0;b=false;c=this;d=c.fmt.wid;e=c.fmt.fmtFlags.widPresent;a=d;b=e;return[a,b];};AP.prototype.Width=function(){return this.$val.Width();};AP.ptr.prototype.Precision=function(){var a,b,c,d,e;a=0;b=false;c=this;d=c.fmt.prec;e=c.fmt.fmtFlags.precPresent;a=d;b=e;return[a,b];};AP.prototype.Precision=function(){return this.$val.Precision();};AP.ptr.prototype.Flag=function(a){var a,b,c;b=this;c=a;if(c===(45)){return b.fmt.fmtFlags.minus;}else if(c===(43)){return b.fmt.fmtFlags.plus||b.fmt.fmtFlags.plusV;}else if(c===(35)){return b.fmt.fmtFlags.sharp||b.fmt.fmtFlags.sharpV;}else if(c===(32)){return b.fmt.fmtFlags.space;}else if(c===(48)){return b.fmt.fmtFlags.zero;}return false;};AP.prototype.Flag=function(a){return this.$val.Flag(a);};AP.ptr.prototype.Write=function(a){var a,b,c,d,e,f;b=0;c=$ifaceNil;d=this;(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).write(a);e=a.$length;f=$ifaceNil;b=e;c=f;return[b,c];};AP.prototype.Write=function(a){return this.$val.Write(a);};AP.ptr.prototype.WriteString=function(a){var a,b,c,d,e,f;b=0;c=$ifaceNil;d=this;(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeString(a);e=a.length;f=$ifaceNil;b=e;c=f;return[b,c];};AP.prototype.WriteString=function(a){return this.$val.WriteString(a);};AU=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=AR();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;$r=d.doPrintf(a,b);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=($bytesToString(d.buf));d.free();$s=-1;return e;}return;}var $f={$blk:AU,$c:true,$r,a,b,c,d,e,$s};return $f;};$pkg.Sprintf=AU;BB=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=$clone(a,E.Value).Field(b);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(($clone(d,E.Value).Kind()===20)&&!$clone(d,E.Value).IsNil()){$s=2;continue;}$s=3;continue;case 2:e=$clone(d,E.Value).Elem();$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;case 3:$s=-1;return d;}return;}var $f={$blk:BB,$c:true,$r,a,b,c,d,e,$s};return $f;};BC=function(a){var a;return a>1000000||a<-1000000;};BD=function(a,b,c){var a,b,c,d,e,f,g,h,i,j,k,l;d=0;e=false;f=0;if(b>=c){g=0;h=false;i=c;d=g;e=h;f=i;return[d,e,f];}f=b;while(true){if(!(f<c&&48<=a.charCodeAt(f)&&a.charCodeAt(f)<=57)){break;}if(BC(d)){j=0;k=false;l=c;d=j;e=k;f=l;return[d,e,f];}d=($imul(d,10))+(((a.charCodeAt(f)-48<<24>>>24)>>0))>>0;e=true;f=f+(1)>>0;}return[d,e,f];};AP.ptr.prototype.unknownType=function(a){var{a,b,c,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;if(!$clone(a,E.Value).IsValid()){(b.$ptr_buf||(b.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).writeString("<nil>");$s=-1;return;}(b.$ptr_buf||(b.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).writeByte(63);c=$clone(a,E.Value).Type().String();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$r=(b.$ptr_buf||(b.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).writeString(c);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(b.$ptr_buf||(b.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).writeByte(63);$s=-1;return;}return;}var $f={$blk:AP.ptr.prototype.unknownType,$c:true,$r,a,b,c,$s};return $f;};AP.prototype.unknownType=function(a){return this.$val.unknownType(a);};AP.ptr.prototype.badVerb=function(a){var{a,b,c,d,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;b.erroring=true;(b.$ptr_buf||(b.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).writeString("%!");(b.$ptr_buf||(b.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).writeRune(a);(b.$ptr_buf||(b.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).writeByte(40);if(!($interfaceIsEqual(b.arg,$ifaceNil))){$s=2;continue;}if($clone(b.value,E.Value).IsValid()){$s=3;continue;}$s=4;continue;case 2:c=E.TypeOf(b.arg).String();$s=6;case 6:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}$r=(b.$ptr_buf||(b.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).writeString(c);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(b.$ptr_buf||(b.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).writeByte(61);$r=b.printArg(b.arg,118);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=5;continue;case 3:d=$clone(b.value,E.Value).Type().String();$s=9;case 9:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$r=(b.$ptr_buf||(b.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).writeString(d);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(b.$ptr_buf||(b.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).writeByte(61);$r=b.printValue($clone(b.value,E.Value),118,0);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=5;continue;case 4:(b.$ptr_buf||(b.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).writeString("<nil>");case 5:case 1:(b.$ptr_buf||(b.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).writeByte(41);b.erroring=false;$s=-1;return;}return;}var $f={$blk:AP.ptr.prototype.badVerb,$c:true,$r,a,b,c,d,$s};return $f;};AP.prototype.badVerb=function(a){return this.$val.badVerb(a);};AP.ptr.prototype.fmtBool=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=b;if((d===(116))||(d===(118))){$s=2;continue;}$s=3;continue;case 2:c.fmt.fmtBoolean(a);$s=4;continue;case 3:$r=c.badVerb(b);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:case 1:$s=-1;return;}return;}var $f={$blk:AP.ptr.prototype.fmtBool,$c:true,$r,a,b,c,d,$s};return $f;};AP.prototype.fmtBool=function(a,b){return this.$val.fmtBool(a,b);};AP.ptr.prototype.fmt0x64=function(a,b){var a,b,c,d;c=this;d=c.fmt.fmtFlags.sharp;c.fmt.fmtFlags.sharp=b;c.fmt.fmtInteger(a,16,false,118,"0123456789abcdefx");c.fmt.fmtFlags.sharp=d;};AP.prototype.fmt0x64=function(a,b){return this.$val.fmt0x64(a,b);};AP.ptr.prototype.fmtInteger=function(a,b,c){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b,c});$s=$s||0;s:while(true){switch($s){case 0:d=this;e=c;if(e===(118)){$s=2;continue;}if(e===(100)){$s=3;continue;}if(e===(98)){$s=4;continue;}if((e===(111))||(e===(79))){$s=5;continue;}if(e===(120)){$s=6;continue;}if(e===(88)){$s=7;continue;}if(e===(99)){$s=8;continue;}if(e===(113)){$s=9;continue;}if(e===(85)){$s=10;continue;}$s=11;continue;case 2:if(d.fmt.fmtFlags.sharpV&&!b){d.fmt0x64(a,true);}else{d.fmt.fmtInteger(a,10,b,c,"0123456789abcdefx");}$s=12;continue;case 3:d.fmt.fmtInteger(a,10,b,c,"0123456789abcdefx");$s=12;continue;case 4:d.fmt.fmtInteger(a,2,b,c,"0123456789abcdefx");$s=12;continue;case 5:d.fmt.fmtInteger(a,8,b,c,"0123456789abcdefx");$s=12;continue;case 6:d.fmt.fmtInteger(a,16,b,c,"0123456789abcdefx");$s=12;continue;case 7:d.fmt.fmtInteger(a,16,b,c,"0123456789ABCDEFX");$s=12;continue;case 8:d.fmt.fmtC(a);$s=12;continue;case 9:d.fmt.fmtQc(a);$s=12;continue;case 10:d.fmt.fmtUnicode(a);$s=12;continue;case 11:$r=d.badVerb(c);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 12:case 1:$s=-1;return;}return;}var $f={$blk:AP.ptr.prototype.fmtInteger,$c:true,$r,a,b,c,d,e,$s};return $f;};AP.prototype.fmtInteger=function(a,b,c){return this.$val.fmtInteger(a,b,c);};AP.ptr.prototype.fmtFloat=function(a,b,c){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b,c});$s=$s||0;s:while(true){switch($s){case 0:d=this;e=c;if(e===(118)){$s=2;continue;}if((e===(98))||(e===(103))||(e===(71))||(e===(120))||(e===(88))){$s=3;continue;}if((e===(102))||(e===(101))||(e===(69))){$s=4;continue;}if(e===(70)){$s=5;continue;}$s=6;continue;case 2:d.fmt.fmtFloat(a,b,103,-1);$s=7;continue;case 3:d.fmt.fmtFloat(a,b,c,-1);$s=7;continue;case 4:d.fmt.fmtFloat(a,b,c,6);$s=7;continue;case 5:d.fmt.fmtFloat(a,b,102,6);$s=7;continue;case 6:$r=d.badVerb(c);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:case 1:$s=-1;return;}return;}var $f={$blk:AP.ptr.prototype.fmtFloat,$c:true,$r,a,b,c,d,e,$s};return $f;};AP.prototype.fmtFloat=function(a,b,c){return this.$val.fmtFloat(a,b,c);};AP.ptr.prototype.fmtComplex=function(a,b,c){var{a,b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{a,b,c});$s=$s||0;s:while(true){switch($s){case 0:d=this;e=c;if((e===(118))||(e===(98))||(e===(103))||(e===(71))||(e===(120))||(e===(88))||(e===(102))||(e===(70))||(e===(101))||(e===(69))){$s=2;continue;}$s=3;continue;case 2:f=d.fmt.fmtFlags.plus;(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeByte(40);$r=d.fmtFloat(a.$real,(g=b/2,(g===g&&g!==1/0&&g!==-1/0)?g>>0:$throwRuntimeError("integer divide by zero")),c);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.fmt.fmtFlags.plus=true;$r=d.fmtFloat(a.$imag,(h=b/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero")),c);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeString("i)");d.fmt.fmtFlags.plus=f;$s=4;continue;case 3:$r=d.badVerb(c);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:case 1:$s=-1;return;}return;}var $f={$blk:AP.ptr.prototype.fmtComplex,$c:true,$r,a,b,c,d,e,f,g,h,$s};return $f;};AP.prototype.fmtComplex=function(a,b,c){return this.$val.fmtComplex(a,b,c);};AP.ptr.prototype.fmtString=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=b;if(d===(118)){$s=2;continue;}if(d===(115)){$s=3;continue;}if(d===(120)){$s=4;continue;}if(d===(88)){$s=5;continue;}if(d===(113)){$s=6;continue;}$s=7;continue;case 2:if(c.fmt.fmtFlags.sharpV){c.fmt.fmtQ(a);}else{c.fmt.fmtS(a);}$s=8;continue;case 3:c.fmt.fmtS(a);$s=8;continue;case 4:c.fmt.fmtSx(a,"0123456789abcdefx");$s=8;continue;case 5:c.fmt.fmtSx(a,"0123456789ABCDEFX");$s=8;continue;case 6:c.fmt.fmtQ(a);$s=8;continue;case 7:$r=c.badVerb(b);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 8:case 1:$s=-1;return;}return;}var $f={$blk:AP.ptr.prototype.fmtString,$c:true,$r,a,b,c,d,$s};return $f;};AP.prototype.fmtString=function(a,b){return this.$val.fmtString(a,b);};AP.ptr.prototype.fmtBytes=function(a,b,c){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{a,b,c});$s=$s||0;s:while(true){switch($s){case 0:d=this;e=b;if((e===(118))||(e===(100))){$s=2;continue;}if(e===(115)){$s=3;continue;}if(e===(120)){$s=4;continue;}if(e===(88)){$s=5;continue;}if(e===(113)){$s=6;continue;}$s=7;continue;case 2:if(d.fmt.fmtFlags.sharpV){(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeString(c);if(a===BS.nil){(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeString("(nil)");$s=-1;return;}(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeByte(123);f=a;g=0;while(true){if(!(g<f.$length)){break;}h=g;i=((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]);if(h>0){(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeString(", ");}d.fmt0x64((new $Uint64(0,i)),true);g++;}(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeByte(125);}else{(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeByte(91);j=a;k=0;while(true){if(!(k<j.$length)){break;}l=k;m=((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]);if(l>0){(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeByte(32);}d.fmt.fmtInteger((new $Uint64(0,m)),10,false,b,"0123456789abcdefx");k++;}(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeByte(93);}$s=8;continue;case 3:d.fmt.fmtBs(a);$s=8;continue;case 4:d.fmt.fmtBx(a,"0123456789abcdefx");$s=8;continue;case 5:d.fmt.fmtBx(a,"0123456789ABCDEFX");$s=8;continue;case 6:d.fmt.fmtQ(($bytesToString(a)));$s=8;continue;case 7:n=E.ValueOf(a);$s=9;case 9:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$r=d.printValue($clone(n,E.Value),b,0);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 8:case 1:$s=-1;return;}return;}var $f={$blk:AP.ptr.prototype.fmtBytes,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,$s};return $f;};AP.prototype.fmtBytes=function(a,b,c){return this.$val.fmtBytes(a,b,c);};AP.ptr.prototype.fmtPointer=function(a,b){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=0;e=$clone(a,E.Value).Kind();if((e===(18))||(e===(19))||(e===(21))||(e===(22))||(e===(23))||(e===(26))){$s=2;continue;}$s=3;continue;case 2:d=$clone(a,E.Value).Pointer();$s=4;continue;case 3:$r=c.badVerb(b);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 4:case 1:f=b;if(f===(118)){$s=7;continue;}if(f===(112)){$s=8;continue;}if((f===(98))||(f===(111))||(f===(100))||(f===(120))||(f===(88))){$s=9;continue;}$s=10;continue;case 7:if(c.fmt.fmtFlags.sharpV){$s=12;continue;}$s=13;continue;case 12:(c.$ptr_buf||(c.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).writeByte(40);g=$clone(a,E.Value).Type().String();$s=15;case 15:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$r=(c.$ptr_buf||(c.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).writeString(g);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(c.$ptr_buf||(c.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).writeString(")(");if(d===0){(c.$ptr_buf||(c.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).writeString("nil");}else{c.fmt0x64((new $Uint64(0,d.constructor===Number?d:1)),true);}(c.$ptr_buf||(c.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).writeByte(41);$s=14;continue;case 13:if(d===0){c.fmt.padString("<nil>");}else{c.fmt0x64((new $Uint64(0,d.constructor===Number?d:1)),!c.fmt.fmtFlags.sharp);}case 14:$s=11;continue;case 8:c.fmt0x64((new $Uint64(0,d.constructor===Number?d:1)),!c.fmt.fmtFlags.sharp);$s=11;continue;case 9:$r=c.fmtInteger((new $Uint64(0,d.constructor===Number?d:1)),false,b);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=11;continue;case 10:$r=c.badVerb(b);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 11:case 6:$s=-1;return;}return;}var $f={$blk:AP.ptr.prototype.fmtPointer,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};AP.prototype.fmtPointer=function(a,b){return this.$val.fmtPointer(a,b);};AP.ptr.prototype.catchPanic=function(a,b,c){var{a,b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{a,b,c});$s=$s||0;s:while(true){switch($s){case 0:d=this;e=$recover();if(!($interfaceIsEqual(e,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:f=E.ValueOf(a);$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(($clone(g,E.Value).Kind()===22)&&$clone(g,E.Value).IsNil()){(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeString("<nil>");$s=-1;return;}if(d.panicking){$panic(e);}h=$clone(d.fmt.fmtFlags,BG);d.fmt.clearflags();(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeString("%!");(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeRune(b);(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeString("(PANIC=");(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeString(c);(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeString(" method: ");d.panicking=true;$r=d.printArg(e,118);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.panicking=false;(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeByte(41);BG.copy(d.fmt.fmtFlags,h);case 2:$s=-1;return;}return;}var $f={$blk:AP.ptr.prototype.catchPanic,$c:true,$r,a,b,c,d,e,f,g,h,$s};return $f;};AP.prototype.catchPanic=function(a,b,c){return this.$val.catchPanic(a,b,c);};AP.ptr.prototype.handleMethods=function(a){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r,$c}=$restore(this,{a});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);b=false;c=this;if(c.erroring){$s=1;continue;}$s=2;continue;case 1:d=b;$s=3;case 3:return d;case 2:if(a===119){$s=4;continue;}$s=5;continue;case 4:e=$assertType(c.arg,$error,true);f=e[0];g=e[1];if(!g||!c.wrapErrs||!($interfaceIsEqual(c.wrappedErr,$ifaceNil))){$s=6;continue;}$s=7;continue;case 6:c.wrappedErr=$ifaceNil;c.wrapErrs=false;$r=c.badVerb(a);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b=true;h=b;$s=9;case 9:return h;case 7:c.wrappedErr=f;a=118;case 5:i=$assertType(c.arg,AL,true);j=i[0];k=i[1];if(k){$s=10;continue;}$s=11;continue;case 10:b=true;$deferred.push([$methodVal(c,"catchPanic"),[c.arg,a,"Format"]]);$r=j.Format(c,a);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}l=b;$s=13;case 13:return l;case 11:if(c.fmt.fmtFlags.sharpV){$s=14;continue;}$s=15;continue;case 14:m=$assertType(c.arg,AN,true);n=m[0];o=m[1];if(o){$s=17;continue;}$s=18;continue;case 17:b=true;$deferred.push([$methodVal(c,"catchPanic"),[c.arg,a,"GoString"]]);p=n.GoString();$s=19;case 19:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$r=c.fmt.fmtS(p);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}q=b;$s=21;case 21:return q;case 18:$s=16;continue;case 15:r=a;if((r===(118))||(r===(115))||(r===(120))||(r===(88))||(r===(113))){$s=23;continue;}$s=24;continue;case 23:s=c.arg;if($assertType(s,$error,true)[1]){$s=25;continue;}if($assertType(s,AM,true)[1]){$s=26;continue;}$s=27;continue;case 25:t=s;b=true;$deferred.push([$methodVal(c,"catchPanic"),[c.arg,a,"Error"]]);v=t.Error();$s=28;case 28:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}$r=c.fmtString(v,a);$s=29;case 29:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}w=b;$s=30;case 30:return w;case 26:u=s;b=true;$deferred.push([$methodVal(c,"catchPanic"),[c.arg,a,"String"]]);x=u.String();$s=31;case 31:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$r=c.fmtString(x,a);$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}y=b;$s=33;case 33:return y;case 27:case 24:case 22:case 16:b=false;z=b;$s=34;case 34:return z;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return b;}if($curGoroutine.asleep){var $f={$blk:AP.ptr.prototype.handleMethods,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred};return $f;}}};AP.prototype.handleMethods=function(a){return this.$val.handleMethods(a);};AP.ptr.prototype.printArg=function(a,b){var{a,aa,ab,ac,ad,ae,af,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;c.arg=a;c.value=new E.Value.ptr(BN.nil,0,0);if($interfaceIsEqual(a,$ifaceNil)){$s=1;continue;}$s=2;continue;case 1:d=b;if((d===(84))||(d===(118))){$s=4;continue;}$s=5;continue;case 4:c.fmt.padString("<nil>");$s=6;continue;case 5:$r=c.badVerb(b);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:case 3:$s=-1;return;case 2:e=b;if(e===(84)){$s=9;continue;}if(e===(112)){$s=10;continue;}$s=11;continue;case 9:f=E.TypeOf(a).String();$s=12;case 12:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}$r=c.fmt.fmtS(f);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 10:g=E.ValueOf(a);$s=14;case 14:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$r=c.fmtPointer($clone(g,E.Value),112);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 11:case 8:h=a;if($assertType(h,$Bool,true)[1]){$s=16;continue;}if($assertType(h,$Float32,true)[1]){$s=17;continue;}if($assertType(h,$Float64,true)[1]){$s=18;continue;}if($assertType(h,$Complex64,true)[1]){$s=19;continue;}if($assertType(h,$Complex128,true)[1]){$s=20;continue;}if($assertType(h,$Int,true)[1]){$s=21;continue;}if($assertType(h,$Int8,true)[1]){$s=22;continue;}if($assertType(h,$Int16,true)[1]){$s=23;continue;}if($assertType(h,$Int32,true)[1]){$s=24;continue;}if($assertType(h,$Int64,true)[1]){$s=25;continue;}if($assertType(h,$Uint,true)[1]){$s=26;continue;}if($assertType(h,$Uint8,true)[1]){$s=27;continue;}if($assertType(h,$Uint16,true)[1]){$s=28;continue;}if($assertType(h,$Uint32,true)[1]){$s=29;continue;}if($assertType(h,$Uint64,true)[1]){$s=30;continue;}if($assertType(h,$Uintptr,true)[1]){$s=31;continue;}if($assertType(h,$String,true)[1]){$s=32;continue;}if($assertType(h,BS,true)[1]){$s=33;continue;}if($assertType(h,E.Value,true)[1]){$s=34;continue;}$s=35;continue;case 16:i=h.$val;$r=c.fmtBool(i,b);$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 17:j=h.$val;$r=c.fmtFloat((j),32,b);$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 18:k=h.$val;$r=c.fmtFloat(k,64,b);$s=39;case 39:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 19:l=h.$val;$r=c.fmtComplex((new $Complex128(l.$real,l.$imag)),64,b);$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 20:m=h.$val;$r=c.fmtComplex(m,128,b);$s=41;case 41:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 21:n=h.$val;$r=c.fmtInteger((new $Uint64(0,n)),true,b);$s=42;case 42:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 22:o=h.$val;$r=c.fmtInteger((new $Uint64(0,o)),true,b);$s=43;case 43:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 23:p=h.$val;$r=c.fmtInteger((new $Uint64(0,p)),true,b);$s=44;case 44:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 24:q=h.$val;$r=c.fmtInteger((new $Uint64(0,q)),true,b);$s=45;case 45:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 25:r=h.$val;$r=c.fmtInteger((new $Uint64(r.$high,r.$low)),true,b);$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 26:s=h.$val;$r=c.fmtInteger((new $Uint64(0,s)),false,b);$s=47;case 47:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 27:t=h.$val;$r=c.fmtInteger((new $Uint64(0,t)),false,b);$s=48;case 48:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 28:u=h.$val;$r=c.fmtInteger((new $Uint64(0,u)),false,b);$s=49;case 49:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 29:v=h.$val;$r=c.fmtInteger((new $Uint64(0,v)),false,b);$s=50;case 50:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 30:w=h.$val;$r=c.fmtInteger(w,false,b);$s=51;case 51:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 31:x=h.$val;$r=c.fmtInteger((new $Uint64(0,x.constructor===Number?x:1)),false,b);$s=52;case 52:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 32:y=h.$val;$r=c.fmtString(y,b);$s=53;case 53:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 33:z=h.$val;$r=c.fmtBytes(z,b,"[]byte");$s=54;case 54:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 34:aa=h.$val;if($clone(aa,E.Value).IsValid()&&$clone(aa,E.Value).CanInterface()){$s=55;continue;}$s=56;continue;case 55:ac=$clone(aa,E.Value).Interface();$s=57;case 57:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}c.arg=ac;ad=c.handleMethods(b);$s=60;case 60:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}if(ad){$s=58;continue;}$s=59;continue;case 58:$s=-1;return;case 59:case 56:$r=c.printValue($clone(aa,E.Value),b,0);$s=61;case 61:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=36;continue;case 35:ab=h;ae=c.handleMethods(b);$s=64;case 64:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}if(!ae){$s=62;continue;}$s=63;continue;case 62:af=E.ValueOf(ab);$s=65;case 65:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}$r=c.printValue($clone(af,E.Value),b,0);$s=66;case 66:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 63:case 36:$s=-1;return;}return;}var $f={$blk:AP.ptr.prototype.printArg,$c:true,$r,a,aa,ab,ac,ad,ae,af,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};AP.prototype.printArg=function(a,b){return this.$val.printArg(a,b);};AP.ptr.prototype.printValue=function(a,b,c){var{a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a,b,c});$s=$s||0;s:while(true){switch($s){case 0:d=this;if(c>0&&$clone(a,E.Value).IsValid()&&$clone(a,E.Value).CanInterface()){$s=1;continue;}$s=2;continue;case 1:e=$clone(a,E.Value).Interface();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d.arg=e;f=d.handleMethods(b);$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(f){$s=4;continue;}$s=5;continue;case 4:$s=-1;return;case 5:case 2:d.arg=$ifaceNil;d.value=a;g=a;h=$clone(a,E.Value).Kind();if(h===(0)){$s=8;continue;}if(h===(1)){$s=9;continue;}if((h===(2))||(h===(3))||(h===(4))||(h===(5))||(h===(6))){$s=10;continue;}if((h===(7))||(h===(8))||(h===(9))||(h===(10))||(h===(11))||(h===(12))){$s=11;continue;}if(h===(13)){$s=12;continue;}if(h===(14)){$s=13;continue;}if(h===(15)){$s=14;continue;}if(h===(16)){$s=15;continue;}if(h===(24)){$s=16;continue;}if(h===(21)){$s=17;continue;}if(h===(25)){$s=18;continue;}if(h===(20)){$s=19;continue;}if((h===(17))||(h===(23))){$s=20;continue;}if(h===(22)){$s=21;continue;}if((h===(18))||(h===(19))||(h===(26))){$s=22;continue;}$s=23;continue;case 8:if(c===0){$s=25;continue;}$s=26;continue;case 25:(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeString("<invalid reflect.Value>");$s=27;continue;case 26:i=b;if(i===(118)){$s=29;continue;}$s=30;continue;case 29:(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeString("<nil>");$s=31;continue;case 30:$r=d.badVerb(b);$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 31:case 28:case 27:$s=24;continue;case 9:$r=d.fmtBool($clone(g,E.Value).Bool(),b);$s=33;case 33:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 10:$r=d.fmtInteger(((j=$clone(g,E.Value).Int(),new $Uint64(j.$high,j.$low))),true,b);$s=34;case 34:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 11:$r=d.fmtInteger($clone(g,E.Value).Uint(),false,b);$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 12:$r=d.fmtFloat($clone(g,E.Value).Float(),32,b);$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 13:$r=d.fmtFloat($clone(g,E.Value).Float(),64,b);$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 14:$r=d.fmtComplex($clone(g,E.Value).Complex(),64,b);$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 15:$r=d.fmtComplex($clone(g,E.Value).Complex(),128,b);$s=39;case 39:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 16:k=$clone(g,E.Value).String();$s=40;case 40:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}$r=d.fmtString(k,b);$s=41;case 41:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 17:if(d.fmt.fmtFlags.sharpV){$s=42;continue;}$s=43;continue;case 42:l=$clone(g,E.Value).Type().String();$s=45;case 45:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$r=(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeString(l);$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if($clone(g,E.Value).IsNil()){(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeString("(nil)");$s=-1;return;}(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeByte(123);$s=44;continue;case 43:(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeString("map[");case 44:m=I.Sort($clone(g,E.Value));$s=47;case 47:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;o=n.Key;p=0;case 48:if(!(p<o.$length)){$s=49;continue;}q=p;r=((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]);if(q>0){if(d.fmt.fmtFlags.sharpV){(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeString(", ");}else{(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeByte(32);}}$r=d.printValue($clone(r,E.Value),b,c+1>>0);$s=50;case 50:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeByte(58);$r=d.printValue($clone((s=n.Value,((q<0||q>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+q])),E.Value),b,c+1>>0);$s=51;case 51:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p++;$s=48;continue;case 49:if(d.fmt.fmtFlags.sharpV){(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeByte(125);}else{(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeByte(93);}$s=24;continue;case 18:if(d.fmt.fmtFlags.sharpV){$s=52;continue;}$s=53;continue;case 52:t=$clone(g,E.Value).Type().String();$s=54;case 54:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}$r=(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeString(t);$s=55;case 55:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 53:(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeByte(123);u=0;case 56:if(!(u<$clone(g,E.Value).NumField())){$s=57;continue;}if(u>0){if(d.fmt.fmtFlags.sharpV){(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeString(", ");}else{(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeByte(32);}}if(d.fmt.fmtFlags.plusV||d.fmt.fmtFlags.sharpV){$s=58;continue;}$s=59;continue;case 58:v=$clone(g,E.Value).Type().Field(u);$s=60;case 60:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}w=v.Name;if(!(w==="")){(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeString(w);(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeByte(58);}case 59:x=BB($clone(g,E.Value),u);$s=61;case 61:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}$r=d.printValue($clone(x,E.Value),b,c+1>>0);$s=62;case 62:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}u=u+(1)>>0;$s=56;continue;case 57:(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeByte(125);$s=24;continue;case 19:y=$clone(g,E.Value).Elem();$s=63;case 63:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=y;if(!$clone(z,E.Value).IsValid()){$s=64;continue;}$s=65;continue;case 64:if(d.fmt.fmtFlags.sharpV){$s=67;continue;}$s=68;continue;case 67:aa=$clone(g,E.Value).Type().String();$s=70;case 70:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}$r=(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeString(aa);$s=71;case 71:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeString("(nil)");$s=69;continue;case 68:(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeString("<nil>");case 69:$s=66;continue;case 65:$r=d.printValue($clone(z,E.Value),b,c+1>>0);$s=72;case 72:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 66:$s=24;continue;case 20:ab=b;if((ab===(115))||(ab===(113))||(ab===(120))||(ab===(88))){$s=74;continue;}$s=75;continue;case 74:ac=$clone(g,E.Value).Type();ad=ac.Elem();$s=78;case 78:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ae=ad.Kind();$s=79;case 79:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}if(ae===8){$s=76;continue;}$s=77;continue;case 76:af=BS.nil;if($clone(g,E.Value).Kind()===23){$s=80;continue;}if($clone(g,E.Value).CanAddr()){$s=81;continue;}$s=82;continue;case 80:ag=$clone(g,E.Value).Bytes();$s=84;case 84:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}af=ag;$s=83;continue;case 81:ah=$clone(g,E.Value).Slice(0,$clone(g,E.Value).Len());$s=85;case 85:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=$clone(ah,E.Value).Bytes();$s=86;case 86:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}af=ai;$s=83;continue;case 82:af=$makeSlice(BS,$clone(g,E.Value).Len());aj=af;ak=0;case 87:if(!(ak<aj.$length)){$s=88;continue;}al=ak;am=$clone(g,E.Value).Index(al);$s=89;case 89:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}an=$clone(am,E.Value).Uint();$s=90;case 90:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}((al<0||al>=af.$length)?($throwRuntimeError("index out of range"),undefined):af.$array[af.$offset+al]=((an.$low<<24>>>24)));ak++;$s=87;continue;case 88:case 83:ao=af;ap=b;aq=ac.String();$s=91;case 91:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq;$r=d.fmtBytes(ao,ap,ar);$s=92;case 92:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 77:case 75:case 73:if(d.fmt.fmtFlags.sharpV){$s=93;continue;}$s=94;continue;case 93:as=$clone(g,E.Value).Type().String();$s=96;case 96:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}$r=(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeString(as);$s=97;case 97:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(($clone(g,E.Value).Kind()===23)&&$clone(g,E.Value).IsNil()){(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeString("(nil)");$s=-1;return;}(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeByte(123);at=0;case 98:if(!(at<$clone(g,E.Value).Len())){$s=99;continue;}if(at>0){(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeString(", ");}au=$clone(g,E.Value).Index(at);$s=100;case 100:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}$r=d.printValue($clone(au,E.Value),b,c+1>>0);$s=101;case 101:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}at=at+(1)>>0;$s=98;continue;case 99:(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeByte(125);$s=95;continue;case 94:(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeByte(91);av=0;case 102:if(!(av<$clone(g,E.Value).Len())){$s=103;continue;}if(av>0){(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeByte(32);}aw=$clone(g,E.Value).Index(av);$s=104;case 104:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}$r=d.printValue($clone(aw,E.Value),b,c+1>>0);$s=105;case 105:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}av=av+(1)>>0;$s=102;continue;case 103:(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeByte(93);case 95:$s=24;continue;case 21:if((c===0)&&!(($clone(g,E.Value).Pointer()===0))){$s=106;continue;}$s=107;continue;case 106:ax=$clone(g,E.Value).Elem();$s=109;case 109:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}ay=ax;az=$clone(ay,E.Value).Kind();if((az===(17))||(az===(23))||(az===(25))||(az===(21))){$s=110;continue;}$s=111;continue;case 110:(d.$ptr_buf||(d.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},d))).writeByte(38);$r=d.printValue($clone(ay,E.Value),b,c+1>>0);$s=112;case 112:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 111:case 108:case 107:$r=d.fmtPointer($clone(g,E.Value),b);$s=113;case 113:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 22:$r=d.fmtPointer($clone(g,E.Value),b);$s=114;case 114:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=24;continue;case 23:$r=d.unknownType($clone(g,E.Value));$s=115;case 115:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 24:case 7:$s=-1;return;}return;}var $f={$blk:AP.ptr.prototype.printValue,$c:true,$r,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};AP.prototype.printValue=function(a,b,c){return this.$val.printValue(a,b,c);};BE=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=0;d=false;e=0;e=b;if(b<a.$length){$s=1;continue;}$s=2;continue;case 1:f=$assertType(((b<0||b>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+b]),$Int,true);c=f[0];d=f[1];if(!d){$s=3;continue;}$s=4;continue;case 3:g=E.ValueOf(((b<0||b>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+b]));$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=$clone(h,E.Value).Kind();if((i===(2))||(i===(3))||(i===(4))||(i===(5))||(i===(6))){j=$clone(h,E.Value).Int();if((k=(new $Int64(0,(((j.$low+((j.$high>>31)*4294967296))>>0)))),(k.$high===j.$high&&k.$low===j.$low))){c=(((j.$low+((j.$high>>31)*4294967296))>>0));d=true;}}else if((i===(7))||(i===(8))||(i===(9))||(i===(10))||(i===(11))||(i===(12))){l=$clone(h,E.Value).Uint();if((m=(new $Int64(l.$high,l.$low)),(m.$high>0||(m.$high===0&&m.$low>=0)))&&(n=(new $Uint64(0,((l.$low>>0)))),(n.$high===l.$high&&n.$low===l.$low))){c=((l.$low>>0));d=true;}}case 5:case 4:e=b+1>>0;if(BC(c)){c=0;d=false;}case 2:$s=-1;return[c,d,e];}return;}var $f={$blk:BE,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,$s};return $f;};BF=function(a){var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;b=0;c=0;d=false;if(a.length<3){e=0;f=1;g=false;b=e;c=f;d=g;return[b,c,d];}h=1;while(true){if(!(h<a.length)){break;}if(a.charCodeAt(h)===93){i=BD(a,1,h);j=i[0];k=i[1];l=i[2];if(!k||!((l===h))){m=0;n=h+1>>0;o=false;b=m;c=n;d=o;return[b,c,d];}p=j-1>>0;q=h+1>>0;r=true;b=p;c=q;d=r;return[b,c,d];}h=h+(1)>>0;}s=0;t=1;u=false;b=s;c=t;d=u;return[b,c,d];};AP.ptr.prototype.argNumber=function(a,b,c,d){var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;e=0;f=0;g=false;h=this;if(b.length<=c||!((b.charCodeAt(c)===91))){i=a;j=c;k=false;e=i;f=j;g=k;return[e,f,g];}h.reordered=true;l=BF($substring(b,c));m=l[0];n=l[1];o=l[2];if(o&&0<=m&&m<d){p=m;q=c+n>>0;r=true;e=p;f=q;g=r;return[e,f,g];}h.goodArgNum=false;s=a;t=c+n>>0;u=o;e=s;f=t;g=u;return[e,f,g];};AP.prototype.argNumber=function(a,b,c,d){return this.$val.argNumber(a,b,c,d);};AP.ptr.prototype.badArgNum=function(a){var a,b;b=this;(b.$ptr_buf||(b.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).writeString("%!");(b.$ptr_buf||(b.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).writeRune(a);(b.$ptr_buf||(b.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).writeString("(BADINDEX)");};AP.prototype.badArgNum=function(a){return this.$val.badArgNum(a);};AP.ptr.prototype.missingArg=function(a){var a,b;b=this;(b.$ptr_buf||(b.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).writeString("%!");(b.$ptr_buf||(b.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).writeRune(a);(b.$ptr_buf||(b.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},b))).writeString("(MISSING)");};AP.prototype.missingArg=function(a){return this.$val.missingArg(a);};AP.ptr.prototype.doPrintf=function(a,b){var{a,aa,ab,ac,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=a.length;e=0;f=false;c.reordered=false;g=0;case 1:if(!(g<d)){$s=2;continue;}c.goodArgNum=true;h=g;while(true){if(!(g<d&&!((a.charCodeAt(g)===37)))){break;}g=g+(1)>>0;}if(g>h){(c.$ptr_buf||(c.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).writeString($substring(a,h,g));}if(g>=d){$s=2;continue;}g=g+(1)>>0;c.fmt.clearflags();case 3:if(!(g<d)){$s=4;continue;}i=a.charCodeAt(g);j=i;if(j===(35)){$s=6;continue;}if(j===(48)){$s=7;continue;}if(j===(43)){$s=8;continue;}if(j===(45)){$s=9;continue;}if(j===(32)){$s=10;continue;}$s=11;continue;case 6:c.fmt.fmtFlags.sharp=true;$s=12;continue;case 7:c.fmt.fmtFlags.zero=!c.fmt.fmtFlags.minus;$s=12;continue;case 8:c.fmt.fmtFlags.plus=true;$s=12;continue;case 9:c.fmt.fmtFlags.minus=true;c.fmt.fmtFlags.zero=false;$s=12;continue;case 10:c.fmt.fmtFlags.space=true;$s=12;continue;case 11:if(97<=i&&i<=122&&e<b.$length){$s=13;continue;}$s=14;continue;case 13:if(i===118){c.fmt.fmtFlags.sharpV=c.fmt.fmtFlags.sharp;c.fmt.fmtFlags.sharp=false;c.fmt.fmtFlags.plusV=c.fmt.fmtFlags.plus;c.fmt.fmtFlags.plus=false;}$r=c.printArg(((e<0||e>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+e]),((i>>0)));$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=e+(1)>>0;g=g+(1)>>0;$s=1;continue s;case 14:$s=4;continue s;case 12:case 5:g=g+(1)>>0;$s=3;continue;case 4:k=c.argNumber(e,a,g,b.$length);e=k[0];g=k[1];f=k[2];if(g<d&&(a.charCodeAt(g)===42)){$s=16;continue;}$s=17;continue;case 16:g=g+(1)>>0;m=BE(b,e);$s=19;case 19:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;c.fmt.wid=l[0];c.fmt.fmtFlags.widPresent=l[1];e=l[2];if(!c.fmt.fmtFlags.widPresent){(c.$ptr_buf||(c.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).writeString("%!(BADWIDTH)");}if(c.fmt.wid<0){c.fmt.wid=-c.fmt.wid;c.fmt.fmtFlags.minus=true;c.fmt.fmtFlags.zero=false;}f=false;$s=18;continue;case 17:n=BD(a,g,d);c.fmt.wid=n[0];c.fmt.fmtFlags.widPresent=n[1];g=n[2];if(f&&c.fmt.fmtFlags.widPresent){c.goodArgNum=false;}case 18:if((g+1>>0)<d&&(a.charCodeAt(g)===46)){$s=20;continue;}$s=21;continue;case 20:g=g+(1)>>0;if(f){c.goodArgNum=false;}o=c.argNumber(e,a,g,b.$length);e=o[0];g=o[1];f=o[2];if(g<d&&(a.charCodeAt(g)===42)){$s=22;continue;}$s=23;continue;case 22:g=g+(1)>>0;q=BE(b,e);$s=25;case 25:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;c.fmt.prec=p[0];c.fmt.fmtFlags.precPresent=p[1];e=p[2];if(c.fmt.prec<0){c.fmt.prec=0;c.fmt.fmtFlags.precPresent=false;}if(!c.fmt.fmtFlags.precPresent){(c.$ptr_buf||(c.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).writeString("%!(BADPREC)");}f=false;$s=24;continue;case 23:r=BD(a,g,d);c.fmt.prec=r[0];c.fmt.fmtFlags.precPresent=r[1];g=r[2];if(!c.fmt.fmtFlags.precPresent){c.fmt.prec=0;c.fmt.fmtFlags.precPresent=true;}case 24:case 21:if(!f){s=c.argNumber(e,a,g,b.$length);e=s[0];g=s[1];f=s[2];}if(g>=d){(c.$ptr_buf||(c.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).writeString("%!(NOVERB)");$s=2;continue;}t=((a.charCodeAt(g)>>0));u=1;v=t;w=u;if(v>=128){x=H.DecodeRuneInString($substring(a,g));v=x[0];w=x[1];}g=g+(w)>>0;if((v===37)){$s=27;continue;}if(!c.goodArgNum){$s=28;continue;}if(e>=b.$length){$s=29;continue;}if((v===118)){$s=30;continue;}$s=31;continue;case 27:(c.$ptr_buf||(c.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).writeByte(37);$s=32;continue;case 28:c.badArgNum(v);$s=32;continue;case 29:c.missingArg(v);$s=32;continue;case 30:c.fmt.fmtFlags.sharpV=c.fmt.fmtFlags.sharp;c.fmt.fmtFlags.sharp=false;c.fmt.fmtFlags.plusV=c.fmt.fmtFlags.plus;c.fmt.fmtFlags.plus=false;$r=c.printArg(((e<0||e>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+e]),v);$s=33;case 33:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=e+(1)>>0;$s=32;continue;case 31:$r=c.printArg(((e<0||e>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+e]),v);$s=34;case 34:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=e+(1)>>0;case 32:case 26:$s=1;continue;case 2:if(!c.reordered&&e<b.$length){$s=35;continue;}$s=36;continue;case 35:c.fmt.clearflags();(c.$ptr_buf||(c.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).writeString("%!(EXTRA ");y=$subslice(b,e);z=0;case 37:if(!(z<y.$length)){$s=38;continue;}aa=z;ab=((z<0||z>=y.$length)?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+z]);if(aa>0){(c.$ptr_buf||(c.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).writeString(", ");}if($interfaceIsEqual(ab,$ifaceNil)){$s=39;continue;}$s=40;continue;case 39:(c.$ptr_buf||(c.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).writeString("<nil>");$s=41;continue;case 40:ac=E.TypeOf(ab).String();$s=42;case 42:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}$r=(c.$ptr_buf||(c.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).writeString(ac);$s=43;case 43:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(c.$ptr_buf||(c.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).writeByte(61);$r=c.printArg(ab,118);$s=44;case 44:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 41:z++;$s=37;continue;case 38:(c.$ptr_buf||(c.$ptr_buf=new BO(function(){return this.$target.buf;},function($v){this.$target.buf=$v;},c))).writeByte(41);case 36:$s=-1;return;}return;}var $f={$blk:AP.ptr.prototype.doPrintf,$c:true,$r,a,aa,ab,ac,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};AP.prototype.doPrintf=function(a,b){return this.$val.doPrintf(a,b);};BH.ptr.prototype.clearflags=function(){var a;a=this;BG.copy(a.fmtFlags,new BG.ptr(false,false,false,false,false,false,false,false,false));};BH.prototype.clearflags=function(){return this.$val.clearflags();};BH.ptr.prototype.init=function(a){var a,b;b=this;b.buf=a;b.clearflags();};BH.prototype.init=function(a){return this.$val.init(a);};BH.ptr.prototype.writePadding=function(a){var a,b,c,d,e,f,g,h,i,j;b=this;if(a<=0){return;}c=b.buf.$get();d=c.$length;e=d+a>>0;if(e>c.$capacity){c=$makeSlice(AO,(($imul(c.$capacity,2))+a>>0));$copySlice(c,b.buf.$get());}f=32;if(b.fmtFlags.zero){f=48;}g=$subslice(c,d,e);h=g;i=0;while(true){if(!(i<h.$length)){break;}j=i;((j<0||j>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+j]=f);i++;}b.buf.$set($subslice(c,0,e));};BH.prototype.writePadding=function(a){return this.$val.writePadding(a);};BH.ptr.prototype.pad=function(a){var a,b,c;b=this;if(!b.fmtFlags.widPresent||(b.wid===0)){b.buf.write(a);return;}c=b.wid-H.RuneCount(a)>>0;if(!b.fmtFlags.minus){b.writePadding(c);b.buf.write(a);}else{b.buf.write(a);b.writePadding(c);}};BH.prototype.pad=function(a){return this.$val.pad(a);};BH.ptr.prototype.padString=function(a){var a,b,c;b=this;if(!b.fmtFlags.widPresent||(b.wid===0)){b.buf.writeString(a);return;}c=b.wid-H.RuneCountInString(a)>>0;if(!b.fmtFlags.minus){b.writePadding(c);b.buf.writeString(a);}else{b.buf.writeString(a);b.writePadding(c);}};BH.prototype.padString=function(a){return this.$val.padString(a);};BH.ptr.prototype.fmtBoolean=function(a){var a,b;b=this;if(a){b.padString("true");}else{b.padString("false");}};BH.prototype.fmtBoolean=function(a){return this.$val.fmtBoolean(a);};BH.ptr.prototype.fmtUnicode=function(a){var a,b,c,d,e,f,g;b=this;c=$subslice(new BS(b.intbuf),0);d=4;if(b.fmtFlags.precPresent&&b.prec>4){d=b.prec;e=(((2+d>>0)+2>>0)+4>>0)+1>>0;if(e>c.$length){c=$makeSlice(BS,e);}}f=c.$length;if(b.fmtFlags.sharp&&(a.$high<0||(a.$high===0&&a.$low<=1114111))&&F.IsPrint(((a.$low>>0)))){f=f-(1)>>0;((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]=39);f=f-(H.RuneLen(((a.$low>>0))))>>0;H.EncodeRune($subslice(c,f),((a.$low>>0)));f=f-(1)>>0;((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]=39);f=f-(1)>>0;((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]=32);}while(true){if(!((a.$high>0||(a.$high===0&&a.$low>=16)))){break;}f=f-(1)>>0;((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]="0123456789ABCDEFX".charCodeAt($flatten64(new $Uint64(a.$high&0,(a.$low&15)>>>0))));d=d-(1)>>0;a=$shiftRightUint64(a,(4));}f=f-(1)>>0;((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]="0123456789ABCDEFX".charCodeAt($flatten64(a)));d=d-(1)>>0;while(true){if(!(d>0)){break;}f=f-(1)>>0;((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]=48);d=d-(1)>>0;}f=f-(1)>>0;((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]=43);f=f-(1)>>0;((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]=85);g=b.fmtFlags.zero;b.fmtFlags.zero=false;b.pad($subslice(c,f));b.fmtFlags.zero=g;};BH.prototype.fmtUnicode=function(a){return this.$val.fmtUnicode(a);};BH.ptr.prototype.fmtInteger=function(a,b,c,d,e){var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;f=this;h=c&&(g=(new $Int64(a.$high,a.$low)),(g.$high<0||(g.$high===0&&g.$low<0)));if(h){a=new $Uint64(-a.$high,-a.$low);}i=$subslice(new BS(f.intbuf),0);if(f.fmtFlags.widPresent||f.fmtFlags.precPresent){j=(3+f.wid>>0)+f.prec>>0;if(j>i.$length){i=$makeSlice(BS,j);}}k=0;if(f.fmtFlags.precPresent){k=f.prec;if((k===0)&&(a.$high===0&&a.$low===0)){l=f.fmtFlags.zero;f.fmtFlags.zero=false;f.writePadding(f.wid);f.fmtFlags.zero=l;return;}}else if(f.fmtFlags.zero&&f.fmtFlags.widPresent){k=f.wid;if(h||f.fmtFlags.plus||f.fmtFlags.space){k=k-(1)>>0;}}m=i.$length;n=b;if(n===(10)){while(true){if(!((a.$high>0||(a.$high===0&&a.$low>=10)))){break;}m=m-(1)>>0;o=$div64(a,new $Uint64(0,10),false);((m<0||m>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+m]=(((p=new $Uint64(0+a.$high,48+a.$low),q=$mul64(o,new $Uint64(0,10)),new $Uint64(p.$high-q.$high,p.$low-q.$low)).$low<<24>>>24)));a=o;}}else if(n===(16)){while(true){if(!((a.$high>0||(a.$high===0&&a.$low>=16)))){break;}m=m-(1)>>0;((m<0||m>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+m]=e.charCodeAt($flatten64(new $Uint64(a.$high&0,(a.$low&15)>>>0))));a=$shiftRightUint64(a,(4));}}else if(n===(8)){while(true){if(!((a.$high>0||(a.$high===0&&a.$low>=8)))){break;}m=m-(1)>>0;((m<0||m>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+m]=(((r=new $Uint64(a.$high&0,(a.$low&7)>>>0),new $Uint64(0+r.$high,48+r.$low)).$low<<24>>>24)));a=$shiftRightUint64(a,(3));}}else if(n===(2)){while(true){if(!((a.$high>0||(a.$high===0&&a.$low>=2)))){break;}m=m-(1)>>0;((m<0||m>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+m]=(((s=new $Uint64(a.$high&0,(a.$low&1)>>>0),new $Uint64(0+s.$high,48+s.$low)).$low<<24>>>24)));a=$shiftRightUint64(a,(1));}}else{$panic(new $String("fmt: unknown base; can't happen"));}m=m-(1)>>0;((m<0||m>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+m]=e.charCodeAt($flatten64(a)));while(true){if(!(m>0&&k>(i.$length-m>>0))){break;}m=m-(1)>>0;((m<0||m>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+m]=48);}if(f.fmtFlags.sharp){t=b;if(t===(2)){m=m-(1)>>0;((m<0||m>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+m]=98);m=m-(1)>>0;((m<0||m>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+m]=48);}else if(t===(8)){if(!((((m<0||m>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+m])===48))){m=m-(1)>>0;((m<0||m>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+m]=48);}}else if(t===(16)){m=m-(1)>>0;((m<0||m>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+m]=e.charCodeAt(16));m=m-(1)>>0;((m<0||m>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+m]=48);}}if(d===79){m=m-(1)>>0;((m<0||m>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+m]=111);m=m-(1)>>0;((m<0||m>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+m]=48);}if(h){m=m-(1)>>0;((m<0||m>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+m]=45);}else if(f.fmtFlags.plus){m=m-(1)>>0;((m<0||m>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+m]=43);}else if(f.fmtFlags.space){m=m-(1)>>0;((m<0||m>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+m]=32);}u=f.fmtFlags.zero;f.fmtFlags.zero=false;f.pad($subslice(i,m));f.fmtFlags.zero=u;};BH.prototype.fmtInteger=function(a,b,c,d,e){return this.$val.fmtInteger(a,b,c,d,e);};BH.ptr.prototype.truncateString=function(a){var a,b,c,d,e,f,g;b=this;if(b.fmtFlags.precPresent){c=b.prec;d=a;e=0;while(true){if(!(e<d.length)){break;}f=$decodeRune(d,e);g=e;c=c-(1)>>0;if(c<0){return $substring(a,0,g);}e+=f[1];}}return a;};BH.prototype.truncateString=function(a){return this.$val.truncateString(a);};BH.ptr.prototype.truncate=function(a){var a,b,c,d,e,f;b=this;if(b.fmtFlags.precPresent){c=b.prec;d=0;while(true){if(!(d<a.$length)){break;}c=c-(1)>>0;if(c<0){return $subslice(a,0,d);}e=1;if(((d<0||d>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+d])>=128){f=H.DecodeRune($subslice(a,d));e=f[1];}d=d+(e)>>0;}}return a;};BH.prototype.truncate=function(a){return this.$val.truncate(a);};BH.ptr.prototype.fmtS=function(a){var a,b;b=this;a=b.truncateString(a);b.padString(a);};BH.prototype.fmtS=function(a){return this.$val.fmtS(a);};BH.ptr.prototype.fmtBs=function(a){var a,b;b=this;a=b.truncate(a);b.pad(a);};BH.prototype.fmtBs=function(a){return this.$val.fmtBs(a);};BH.ptr.prototype.fmtSbx=function(a,b,c){var a,b,c,d,e,f,g,h,i;d=this;e=b.$length;if(b===BS.nil){e=a.length;}if(d.fmtFlags.precPresent&&d.prec<e){e=d.prec;}f=$imul(2,e);if(f>0){if(d.fmtFlags.space){if(d.fmtFlags.sharp){f=$imul(f,(2));}f=f+((e-1>>0))>>0;}else if(d.fmtFlags.sharp){f=f+(2)>>0;}}else{if(d.fmtFlags.widPresent){d.writePadding(d.wid);}return;}if(d.fmtFlags.widPresent&&d.wid>f&&!d.fmtFlags.minus){d.writePadding(d.wid-f>>0);}g=d.buf.$get();if(d.fmtFlags.sharp){g=$append(g,48,c.charCodeAt(16));}h=0;i=0;while(true){if(!(i<e)){break;}if(d.fmtFlags.space&&i>0){g=$append(g,32);if(d.fmtFlags.sharp){g=$append(g,48,c.charCodeAt(16));}}if(!(b===BS.nil)){h=((i<0||i>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+i]);}else{h=a.charCodeAt(i);}g=$append(g,c.charCodeAt((h>>>4<<24>>>24)),c.charCodeAt(((h&15)>>>0)));i=i+(1)>>0;}d.buf.$set(g);if(d.fmtFlags.widPresent&&d.wid>f&&d.fmtFlags.minus){d.writePadding(d.wid-f>>0);}};BH.prototype.fmtSbx=function(a,b,c){return this.$val.fmtSbx(a,b,c);};BH.ptr.prototype.fmtSx=function(a,b){var a,b,c;c=this;c.fmtSbx(a,BS.nil,b);};BH.prototype.fmtSx=function(a,b){return this.$val.fmtSx(a,b);};BH.ptr.prototype.fmtBx=function(a,b){var a,b,c;c=this;c.fmtSbx("",a,b);};BH.prototype.fmtBx=function(a,b){return this.$val.fmtBx(a,b);};BH.ptr.prototype.fmtQ=function(a){var a,b,c;b=this;a=b.truncateString(a);if(b.fmtFlags.sharp&&F.CanBackquote(a)){b.padString("`"+a+"`");return;}c=$subslice(new BS(b.intbuf),0,0);if(b.fmtFlags.plus){b.pad(F.AppendQuoteToASCII(c,a));}else{b.pad(F.AppendQuote(c,a));}};BH.prototype.fmtQ=function(a){return this.$val.fmtQ(a);};BH.ptr.prototype.fmtC=function(a){var a,b,c,d,e;b=this;c=((a.$low>>0));if((a.$high>0||(a.$high===0&&a.$low>1114111))){c=65533;}d=$subslice(new BS(b.intbuf),0,0);e=H.EncodeRune($subslice(d,0,4),c);b.pad($subslice(d,0,e));};BH.prototype.fmtC=function(a){return this.$val.fmtC(a);};BH.ptr.prototype.fmtQc=function(a){var a,b,c,d;b=this;c=((a.$low>>0));if((a.$high>0||(a.$high===0&&a.$low>1114111))){c=65533;}d=$subslice(new BS(b.intbuf),0,0);if(b.fmtFlags.plus){b.pad(F.AppendQuoteRuneToASCII(d,c));}else{b.pad(F.AppendQuoteRune(d,c));}};BH.prototype.fmtQc=function(a){return this.$val.fmtQc(a);};BH.ptr.prototype.fmtFloat=function(a,b,c,d){var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;e=this;if(e.fmtFlags.precPresent){d=e.prec;}f=F.AppendFloat($subslice(new BS(e.intbuf),0,1),a,((c<<24>>>24)),d,b);if(((1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])===45)||((1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])===43)){f=$subslice(f,1);}else{(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]=43);}if(e.fmtFlags.space&&((0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0])===43)&&!e.fmtFlags.plus){(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]=32);}if(((1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])===73)||((1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])===78)){g=e.fmtFlags.zero;e.fmtFlags.zero=false;if(((1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])===78)&&!e.fmtFlags.space&&!e.fmtFlags.plus){f=$subslice(f,1);}e.pad(f);e.fmtFlags.zero=g;return;}if(e.fmtFlags.sharp&&!((c===98))){h=0;i=c;if((i===(118))||(i===(103))||(i===(71))||(i===(120))){h=d;if(h===-1){h=6;}}j=CP.zero();k=$subslice(new BS(j),0,0);l=false;m=false;n=1;while(true){if(!(n<f.$length)){break;}switch(0){default:o=((n<0||n>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+n]);if(o===(46)){l=true;}else if((o===(112))||(o===(80))){k=$appendSlice(k,$subslice(f,n));f=$subslice(f,0,n);}else if((o===(101))||(o===(69))){if(!((c===120))&&!((c===88))){k=$appendSlice(k,$subslice(f,n));f=$subslice(f,0,n);break;}if(!((((n<0||n>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+n])===48))){m=true;}if(m){h=h-(1)>>0;}}else{if(!((((n<0||n>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+n])===48))){m=true;}if(m){h=h-(1)>>0;}}}n=n+(1)>>0;}if(!l){if((f.$length===2)&&((1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])===48)){h=h-(1)>>0;}f=$append(f,46);}while(true){if(!(h>0)){break;}f=$append(f,48);h=h-(1)>>0;}f=$appendSlice(f,k);}if(e.fmtFlags.plus||!(((0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0])===43))){if(e.fmtFlags.zero&&e.fmtFlags.widPresent&&e.wid>f.$length){e.buf.writeByte((0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]));e.writePadding(e.wid-f.$length>>0);e.buf.write($subslice(f,1));return;}e.pad(f);return;}e.pad($subslice(f,1));};BH.prototype.fmtFloat=function(a,b,c,d){return this.$val.fmtFloat(a,b,c,d);};BI=function(a,b){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=AR();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;d.wrapErrs=true;$r=d.doPrintf(a,b);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=($bytesToString(d.buf));f=$ifaceNil;if($interfaceIsEqual(d.wrappedErr,$ifaceNil)){f=A.New(e);}else{f=new BJ.ptr(e,d.wrappedErr);}d.free();$s=-1;return f;}return;}var $f={$blk:BI,$c:true,$r,a,b,c,d,e,f,$s};return $f;};$pkg.Errorf=BI;BJ.ptr.prototype.Error=function(){var a;a=this;return a.msg;};BJ.prototype.Error=function(){return this.$val.Error();};BJ.ptr.prototype.Unwrap=function(){var a;a=this;return a.err;};BJ.prototype.Unwrap=function(){return this.$val.Unwrap();};BT.methods=[{prop:"Read",name:"Read",pkg:"",typ:$funcType([BS],[$Int,$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"getRune",name:"getRune",pkg:"fmt",typ:$funcType([],[$Int32],false)},{prop:"mustReadRune",name:"mustReadRune",pkg:"fmt",typ:$funcType([],[$Int32],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"error",name:"error",pkg:"fmt",typ:$funcType([$error],[],false)},{prop:"errorString",name:"errorString",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"Token",name:"Token",pkg:"",typ:$funcType([$Bool,CQ],[BS,$error],false)},{prop:"free",name:"free",pkg:"fmt",typ:$funcType([X],[],false)},{prop:"SkipSpace",name:"SkipSpace",pkg:"",typ:$funcType([],[],false)},{prop:"token",name:"token",pkg:"fmt",typ:$funcType([$Bool,CQ],[BS],false)},{prop:"consume",name:"consume",pkg:"fmt",typ:$funcType([$String,$Bool],[$Bool],false)},{prop:"peek",name:"peek",pkg:"fmt",typ:$funcType([$String],[$Bool],false)},{prop:"notEOF",name:"notEOF",pkg:"fmt",typ:$funcType([],[],false)},{prop:"accept",name:"accept",pkg:"fmt",typ:$funcType([$String],[$Bool],false)},{prop:"okVerb",name:"okVerb",pkg:"fmt",typ:$funcType([$Int32,$String,$String],[$Bool],false)},{prop:"scanBool",name:"scanBool",pkg:"fmt",typ:$funcType([$Int32],[$Bool],false)},{prop:"getBase",name:"getBase",pkg:"fmt",typ:$funcType([$Int32],[$Int,$String],false)},{prop:"scanNumber",name:"scanNumber",pkg:"fmt",typ:$funcType([$String,$Bool],[$String],false)},{prop:"scanRune",name:"scanRune",pkg:"fmt",typ:$funcType([$Int],[$Int64],false)},{prop:"scanBasePrefix",name:"scanBasePrefix",pkg:"fmt",typ:$funcType([],[$Int,$String,$Bool],false)},{prop:"scanInt",name:"scanInt",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Int64],false)},{prop:"scanUint",name:"scanUint",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Uint64],false)},{prop:"floatToken",name:"floatToken",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"complexTokens",name:"complexTokens",pkg:"fmt",typ:$funcType([],[$String,$String],false)},{prop:"convertFloat",name:"convertFloat",pkg:"fmt",typ:$funcType([$String,$Int],[$Float64],false)},{prop:"scanComplex",name:"scanComplex",pkg:"fmt",typ:$funcType([$Int32,$Int],[$Complex128],false)},{prop:"convertString",name:"convertString",pkg:"fmt",typ:$funcType([$Int32],[$String],false)},{prop:"quotedString",name:"quotedString",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"hexByte",name:"hexByte",pkg:"fmt",typ:$funcType([],[$Uint8,$Bool],false)},{prop:"hexString",name:"hexString",pkg:"fmt",typ:$funcType([],[$String],false)},{prop:"scanPercent",name:"scanPercent",pkg:"fmt",typ:$funcType([],[],false)},{prop:"scanOne",name:"scanOne",pkg:"fmt",typ:$funcType([$Int32,$emptyInterface],[],false)},{prop:"doScan",name:"doScan",pkg:"fmt",typ:$funcType([BM],[$Int,$error],false)},{prop:"advance",name:"advance",pkg:"fmt",typ:$funcType([$String],[$Int],false)},{prop:"doScanf",name:"doScanf",pkg:"fmt",typ:$funcType([$String,BM],[$Int,$error],false)}];BO.methods=[{prop:"write",name:"write",pkg:"fmt",typ:$funcType([BS],[],false)},{prop:"writeString",name:"writeString",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"writeByte",name:"writeByte",pkg:"fmt",typ:$funcType([$Uint8],[],false)},{prop:"writeRune",name:"writeRune",pkg:"fmt",typ:$funcType([$Int32],[],false)}];CO.methods=[{prop:"free",name:"free",pkg:"fmt",typ:$funcType([],[],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Precision",name:"Precision",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Flag",name:"Flag",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([BS],[$Int,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"unknownType",name:"unknownType",pkg:"fmt",typ:$funcType([E.Value],[],false)},{prop:"badVerb",name:"badVerb",pkg:"fmt",typ:$funcType([$Int32],[],false)},{prop:"fmtBool",name:"fmtBool",pkg:"fmt",typ:$funcType([$Bool,$Int32],[],false)},{prop:"fmt0x64",name:"fmt0x64",pkg:"fmt",typ:$funcType([$Uint64,$Bool],[],false)},{prop:"fmtInteger",name:"fmtInteger",pkg:"fmt",typ:$funcType([$Uint64,$Bool,$Int32],[],false)},{prop:"fmtFloat",name:"fmtFloat",pkg:"fmt",typ:$funcType([$Float64,$Int,$Int32],[],false)},{prop:"fmtComplex",name:"fmtComplex",pkg:"fmt",typ:$funcType([$Complex128,$Int,$Int32],[],false)},{prop:"fmtString",name:"fmtString",pkg:"fmt",typ:$funcType([$String,$Int32],[],false)},{prop:"fmtBytes",name:"fmtBytes",pkg:"fmt",typ:$funcType([BS,$Int32,$String],[],false)},{prop:"fmtPointer",name:"fmtPointer",pkg:"fmt",typ:$funcType([E.Value,$Int32],[],false)},{prop:"catchPanic",name:"catchPanic",pkg:"fmt",typ:$funcType([$emptyInterface,$Int32,$String],[],false)},{prop:"handleMethods",name:"handleMethods",pkg:"fmt",typ:$funcType([$Int32],[$Bool],false)},{prop:"printArg",name:"printArg",pkg:"fmt",typ:$funcType([$emptyInterface,$Int32],[],false)},{prop:"printValue",name:"printValue",pkg:"fmt",typ:$funcType([E.Value,$Int32,$Int],[],false)},{prop:"argNumber",name:"argNumber",pkg:"fmt",typ:$funcType([$Int,$String,$Int,$Int],[$Int,$Int,$Bool],false)},{prop:"badArgNum",name:"badArgNum",pkg:"fmt",typ:$funcType([$Int32],[],false)},{prop:"missingArg",name:"missingArg",pkg:"fmt",typ:$funcType([$Int32],[],false)},{prop:"doPrintf",name:"doPrintf",pkg:"fmt",typ:$funcType([$String,BM],[],false)},{prop:"doPrint",name:"doPrint",pkg:"fmt",typ:$funcType([BM],[],false)},{prop:"doPrintln",name:"doPrintln",pkg:"fmt",typ:$funcType([BM],[],false)}];CS.methods=[{prop:"clearflags",name:"clearflags",pkg:"fmt",typ:$funcType([],[],false)},{prop:"init",name:"init",pkg:"fmt",typ:$funcType([BO],[],false)},{prop:"writePadding",name:"writePadding",pkg:"fmt",typ:$funcType([$Int],[],false)},{prop:"pad",name:"pad",pkg:"fmt",typ:$funcType([BS],[],false)},{prop:"padString",name:"padString",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmtBoolean",name:"fmtBoolean",pkg:"fmt",typ:$funcType([$Bool],[],false)},{prop:"fmtUnicode",name:"fmtUnicode",pkg:"fmt",typ:$funcType([$Uint64],[],false)},{prop:"fmtInteger",name:"fmtInteger",pkg:"fmt",typ:$funcType([$Uint64,$Int,$Bool,$Int32,$String],[],false)},{prop:"truncateString",name:"truncateString",pkg:"fmt",typ:$funcType([$String],[$String],false)},{prop:"truncate",name:"truncate",pkg:"fmt",typ:$funcType([BS],[BS],false)},{prop:"fmtS",name:"fmtS",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmtBs",name:"fmtBs",pkg:"fmt",typ:$funcType([BS],[],false)},{prop:"fmtSbx",name:"fmtSbx",pkg:"fmt",typ:$funcType([$String,BS,$String],[],false)},{prop:"fmtSx",name:"fmtSx",pkg:"fmt",typ:$funcType([$String,$String],[],false)},{prop:"fmtBx",name:"fmtBx",pkg:"fmt",typ:$funcType([BS,$String],[],false)},{prop:"fmtQ",name:"fmtQ",pkg:"fmt",typ:$funcType([$String],[],false)},{prop:"fmtC",name:"fmtC",pkg:"fmt",typ:$funcType([$Uint64],[],false)},{prop:"fmtQc",name:"fmtQc",pkg:"fmt",typ:$funcType([$Uint64],[],false)},{prop:"fmtFloat",name:"fmtFloat",pkg:"fmt",typ:$funcType([$Float64,$Int,$Int32,$Int],[],false)}];CT.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Unwrap",name:"Unwrap",pkg:"",typ:$funcType([],[$error],false)}];V.init("fmt",[{prop:"err",name:"err",embedded:false,exported:false,typ:$error,tag:""}]);W.init("fmt",[{prop:"rs",name:"rs",embedded:false,exported:false,typ:B.RuneScanner,tag:""},{prop:"buf",name:"buf",embedded:false,exported:false,typ:AO,tag:""},{prop:"count",name:"count",embedded:false,exported:false,typ:$Int,tag:""},{prop:"atEOF",name:"atEOF",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"ssave",name:"ssave",embedded:true,exported:false,typ:X,tag:""}]);X.init("fmt",[{prop:"validSave",name:"validSave",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"nlIsEnd",name:"nlIsEnd",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"nlIsSpace",name:"nlIsSpace",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"argLimit",name:"argLimit",embedded:false,exported:false,typ:$Int,tag:""},{prop:"limit",name:"limit",embedded:false,exported:false,typ:$Int,tag:""},{prop:"maxWid",name:"maxWid",embedded:false,exported:false,typ:$Int,tag:""}]);AK.init([{prop:"Flag",name:"Flag",pkg:"",typ:$funcType([$Int],[$Bool],false)},{prop:"Precision",name:"Precision",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Width",name:"Width",pkg:"",typ:$funcType([],[$Int,$Bool],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([BS],[$Int,$error],false)}]);AL.init([{prop:"Format",name:"Format",pkg:"",typ:$funcType([AK,$Int32],[],false)}]);AM.init([{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}]);AN.init([{prop:"GoString",name:"GoString",pkg:"",typ:$funcType([],[$String],false)}]);AO.init($Uint8);AP.init("fmt",[{prop:"buf",name:"buf",embedded:false,exported:false,typ:AO,tag:""},{prop:"arg",name:"arg",embedded:false,exported:false,typ:$emptyInterface,tag:""},{prop:"value",name:"value",embedded:false,exported:false,typ:E.Value,tag:""},{prop:"fmt",name:"fmt",embedded:false,exported:false,typ:BH,tag:""},{prop:"reordered",name:"reordered",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"goodArgNum",name:"goodArgNum",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"panicking",name:"panicking",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"erroring",name:"erroring",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"wrapErrs",name:"wrapErrs",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"wrappedErr",name:"wrappedErr",embedded:false,exported:false,typ:$error,tag:""}]);BG.init("fmt",[{prop:"widPresent",name:"widPresent",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"precPresent",name:"precPresent",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"minus",name:"minus",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"plus",name:"plus",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"sharp",name:"sharp",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"space",name:"space",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"zero",name:"zero",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"plusV",name:"plusV",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"sharpV",name:"sharpV",embedded:false,exported:false,typ:$Bool,tag:""}]);BH.init("fmt",[{prop:"buf",name:"buf",embedded:false,exported:false,typ:BO,tag:""},{prop:"fmtFlags",name:"fmtFlags",embedded:true,exported:false,typ:BG,tag:""},{prop:"wid",name:"wid",embedded:false,exported:false,typ:$Int,tag:""},{prop:"prec",name:"prec",embedded:false,exported:false,typ:$Int,tag:""},{prop:"intbuf",name:"intbuf",embedded:false,exported:false,typ:BP,tag:""}]);BJ.init("fmt",[{prop:"msg",name:"msg",embedded:false,exported:false,typ:$String,tag:""},{prop:"err",name:"err",embedded:false,exported:false,typ:$error,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}Y=new BL([$toNativeArray($kindUint16,[9,13]),$toNativeArray($kindUint16,[32,32]),$toNativeArray($kindUint16,[133,133]),$toNativeArray($kindUint16,[160,160]),$toNativeArray($kindUint16,[5760,5760]),$toNativeArray($kindUint16,[8192,8202]),$toNativeArray($kindUint16,[8232,8233]),$toNativeArray($kindUint16,[8239,8239]),$toNativeArray($kindUint16,[8287,8287]),$toNativeArray($kindUint16,[12288,12288])]);AC=new G.Pool.ptr(BM.nil,(function(){return new W.ptr($ifaceNil,AO.nil,0,false,new X.ptr(false,false,false,0,0,0));}));AE=A.New("syntax error scanning complex number");AF=A.New("syntax error scanning boolean");AQ=new G.Pool.ptr(BM.nil,(function(){return new AP.ptr(AO.nil,$ifaceNil,new E.Value.ptr(BN.nil,0,0),new BH.ptr(BO.nil,new BG.ptr(false,false,false,false,false,false,false,false,false),0,0,BP.zero()),false,false,false,false,false,$ifaceNil);}));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["github.com/88250/lute/editor"]=(function(){var $pkg={},$init,A,B,a;A=$sliceType($Uint8);B=$sliceType($Int32);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$pkg.CaretTokens=(new A($stringToBytes("\xE2\x80\xB8")));$pkg.CaretRune=(a=(new B($stringToRunes("\xE2\x80\xB8"))),(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]));$pkg.CaretNewlineTokens=(new A($stringToBytes("\xE2\x80\xB8\n")));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["strings"]=(function(){var $pkg={},$init,F,G,A,D,E,B,C,AS,BK,BO,BP,BR,BS,BU,BV,BX,BZ,CA,CB,CE,CN,CL,CM,CO,CP,CQ,CR,CS,CT,CU,CV,CW,CX,CY,CZ,DA,DB,DC,DD,DE,DF,U,H,I,K,L,M,P,S,V,W,X,Y,Z,AA,AB,AD,AL,AM,AN,AQ,AR,AT,AU,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BF,BG,BH,BI,BJ,BL,BM,BN,BQ,BT,BW,BY,CC,CG,CH,CI,CJ;F=$packages["errors"];G=$packages["github.com/gopherjs/gopherjs/js"];A=$packages["internal/bytealg"];D=$packages["io"];E=$packages["sync"];B=$packages["unicode"];C=$packages["unicode/utf8"];AS=$pkg.asciiSet=$newType(32,$kindArray,"strings.asciiSet",true,"strings",false,null);BK=$pkg.stringFinder=$newType(0,$kindStruct,"strings.stringFinder",true,"strings",false,function(pattern_,badCharSkip_,goodSuffixSkip_){this.$val=this;if(arguments.length===0){this.pattern="";this.badCharSkip=CS.zero();this.goodSuffixSkip=CT.nil;return;}this.pattern=pattern_;this.badCharSkip=badCharSkip_;this.goodSuffixSkip=goodSuffixSkip_;});BO=$pkg.Replacer=$newType(0,$kindStruct,"strings.Replacer",true,"strings",true,function(once_,r_,oldnew_){this.$val=this;if(arguments.length===0){this.once=new E.Once.ptr(0,new E.Mutex.ptr(0,0));this.r=$ifaceNil;this.oldnew=CL.nil;return;}this.once=once_;this.r=r_;this.oldnew=oldnew_;});BP=$pkg.replacer=$newType(8,$kindInterface,"strings.replacer",true,"strings",false,null);BR=$pkg.trieNode=$newType(0,$kindStruct,"strings.trieNode",true,"strings",false,function(value_,priority_,prefix_,next_,table_){this.$val=this;if(arguments.length===0){this.value="";this.priority=0;this.prefix="";this.next=CX.nil;this.table=CY.nil;return;}this.value=value_;this.priority=priority_;this.prefix=prefix_;this.next=next_;this.table=table_;});BS=$pkg.genericReplacer=$newType(0,$kindStruct,"strings.genericReplacer",true,"strings",false,function(root_,tableSize_,mapping_){this.$val=this;if(arguments.length===0){this.root=new BR.ptr("",0,"",CX.nil,CY.nil);this.tableSize=0;this.mapping=CU.zero();return;}this.root=root_;this.tableSize=tableSize_;this.mapping=mapping_;});BU=$pkg.appendSliceWriter=$newType(12,$kindSlice,"strings.appendSliceWriter",true,"strings",false,null);BV=$pkg.stringWriter=$newType(0,$kindStruct,"strings.stringWriter",true,"strings",false,function(w_){this.$val=this;if(arguments.length===0){this.w=$ifaceNil;return;}this.w=w_;});BX=$pkg.singleStringReplacer=$newType(0,$kindStruct,"strings.singleStringReplacer",true,"strings",false,function(finder_,value_){this.$val=this;if(arguments.length===0){this.finder=DA.nil;this.value="";return;}this.finder=finder_;this.value=value_;});BZ=$pkg.byteReplacer=$newType(256,$kindArray,"strings.byteReplacer",true,"strings",false,null);CA=$pkg.byteStringReplacer=$newType(0,$kindStruct,"strings.byteStringReplacer",true,"strings",false,function(replacements_,toReplace_){this.$val=this;if(arguments.length===0){this.replacements=CW.zero();this.toReplace=CL.nil;return;}this.replacements=replacements_;this.toReplace=toReplace_;});CB=$pkg.Reader=$newType(0,$kindStruct,"strings.Reader",true,"strings",true,function(s_,i_,prevRune_){this.$val=this;if(arguments.length===0){this.s="";this.i=new $Int64(0,0);this.prevRune=0;return;}this.s=s_;this.i=i_;this.prevRune=prevRune_;});CE=$pkg.Builder=$newType(0,$kindStruct,"strings.Builder",true,"strings",true,function(addr_,buf_){this.$val=this;if(arguments.length===0){this.addr=CP.nil;this.buf=CQ.nil;return;}this.addr=addr_;this.buf=buf_;});CN=$newType(0,$kindStruct,"strings.span",true,"strings",false,function(start_,end_){this.$val=this;if(arguments.length===0){this.start=0;this.end=0;return;}this.start=start_;this.end=end_;});CL=$sliceType($String);CM=$ptrType(AS);CO=$sliceType(CN);CP=$ptrType(CE);CQ=$sliceType($Uint8);CR=$arrayType($Uint32,8);CS=$arrayType($Int,256);CT=$sliceType($Int);CU=$arrayType($Uint8,256);CV=$ptrType(BZ);CW=$arrayType(CQ,256);CX=$ptrType(BR);CY=$sliceType(CX);CZ=$ptrType(BU);DA=$ptrType(BK);DB=$ptrType(BO);DC=$ptrType(BS);DD=$ptrType(BX);DE=$ptrType(CA);DF=$ptrType(CB);H=function(f,g){var f,g,h,i,j,k,l,m,n;h=C.RuneCountInString(f);if(g<0||g>h){g=h;}i=$makeSlice(CL,g);j=0;while(true){if(!(j<(g-1>>0))){break;}k=C.DecodeRuneInString(f);l=k[0];m=k[1];((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]=$substring(f,0,m));f=$substring(f,m);if(l===65533){((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]="\xEF\xBF\xBD");}j=j+(1)>>0;}if(g>0){(n=g-1>>0,((n<0||n>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+n]=f));}return i;};I=function(f,g){var f,g;return CH(f,g)>=0;};$pkg.Contains=I;K=function(f,g){var f,g;return L(f,g)>=0;};$pkg.ContainsRune=K;L=function(f,g){var f,g,h,i,j,k,l;if(0<=g&&g<128){return CG(f,((g<<24>>>24)));}else if((g===65533)){h=f;i=0;while(true){if(!(i<h.length)){break;}j=$decodeRune(h,i);k=i;l=j[0];if(l===65533){return k;}i+=j[1];}return-1;}else if(!C.ValidRune(g)){return-1;}else{return CH(f,($encodeRune(g)));}};$pkg.IndexRune=L;M=function(f,g){var f,g,h,i,j,k,l,m,n,o,p,q;if(g===""){return-1;}if(g.length===1){h=((g.charCodeAt(0)>>0));if(h>=128){h=65533;}return L(f,h);}if(f.length>8){i=AT(g);j=$clone(i[0],AS);k=i[1];if(k){l=0;while(true){if(!(l<f.length)){break;}if(new CM(j).contains(f.charCodeAt(l))){return l;}l=l+(1)>>0;}return-1;}}m=f;n=0;while(true){if(!(n<m.length)){break;}o=$decodeRune(m,n);p=n;q=o[0];if(L(g,q)>=0){return p;}n+=o[1];}return-1;};$pkg.IndexAny=M;P=function(f,g,h,i){var f,g,h,i,j,k,l;if(i===0){return CL.nil;}if(g===""){return H(f,i);}if(i<0){i=CJ(f,g)+1>>0;}j=$makeSlice(CL,i);i=i-(1)>>0;k=0;while(true){if(!(k<i)){break;}l=CH(f,g);if(l<0){break;}((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]=$substring(f,0,(l+h>>0)));f=$substring(f,(l+g.length>>0));k=k+(1)>>0;}((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]=f);return $subslice(j,0,(k+1>>0));};S=function(f,g){var f,g;return P(f,g,0,-1);};$pkg.Split=S;V=function(f){var{f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s,$r,$c}=$restore(this,{f});$s=$s||0;s:while(true){switch($s){case 0:g=0;h=1;i=0;j=0;while(true){if(!(j<f.length)){break;}k=f.charCodeAt(j);i=(i|(k))>>>0;l=((((k<0||k>=U.length)?($throwRuntimeError("index out of range"),undefined):U[k])>>0));g=g+((h&(~l>>0)))>>0;h=l;j=j+(1)>>0;}if(i>=128){$s=1;continue;}$s=2;continue;case 1:m=W(f,B.IsSpace);$s=3;case 3:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;$s=4;case 4:return n;case 2:o=$makeSlice(CL,g);p=0;q=0;r=0;while(true){if(!(r<f.length&&!(((s=f.charCodeAt(r),((s<0||s>=U.length)?($throwRuntimeError("index out of range"),undefined):U[s]))===0)))){break;}r=r+(1)>>0;}q=r;while(true){if(!(r<f.length)){break;}if((t=f.charCodeAt(r),((t<0||t>=U.length)?($throwRuntimeError("index out of range"),undefined):U[t]))===0){r=r+(1)>>0;continue;}((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]=$substring(f,q,r));p=p+(1)>>0;r=r+(1)>>0;while(true){if(!(r<f.length&&!(((u=f.charCodeAt(r),((u<0||u>=U.length)?($throwRuntimeError("index out of range"),undefined):U[u]))===0)))){break;}r=r+(1)>>0;}q=r;}if(q<f.length){((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]=$substring(f,q));}$s=-1;return o;}return;}var $f={$blk:V,$c:true,$r,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s};return $f;};$pkg.Fields=V;W=function(f,g){var{f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s,$r,$c}=$restore(this,{f,g});$s=$s||0;s:while(true){switch($s){case 0:h=$makeSlice(CO,0,32);i=-1;j=f;k=0;case 1:if(!(k<j.length)){$s=2;continue;}l=$decodeRune(j,k);m=k;n=l[0];o=g(n);$s=6;case 6:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}if(o){$s=3;continue;}$s=4;continue;case 3:if(i>=0){h=$append(h,new CN.ptr(i,m));i=~i>>0;}$s=5;continue;case 4:if(i<0){i=m;}case 5:k+=l[1];$s=1;continue;case 2:if(i>=0){h=$append(h,new CN.ptr(i,f.length));}p=$makeSlice(CL,h.$length);q=h;r=0;while(true){if(!(r<q.$length)){break;}s=r;t=$clone(((r<0||r>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+r]),CN);((s<0||s>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+s]=$substring(f,t.start,t.end));r++;}$s=-1;return p;}return;}var $f={$blk:W,$c:true,$r,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s};return $f;};$pkg.FieldsFunc=W;X=function(f,g){var f,g,h,i,j,k,l,m,n;h=f.$length;if(h===(0)){return"";}else if(h===(1)){return(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]);}i=$imul(g.length,((f.$length-1>>0)));j=0;while(true){if(!(j<f.$length)){break;}i=i+(((j<0||j>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+j]).length)>>0;j=j+(1)>>0;}k=new CE.ptr(CP.nil,CQ.nil);k.Grow(i);k.WriteString((0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]));l=$subslice(f,1);m=0;while(true){if(!(m<l.$length)){break;}n=((m<0||m>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+m]);k.WriteString(g);k.WriteString(n);m++;}return k.String();};$pkg.Join=X;Y=function(f,g){var f,g;return f.length>=g.length&&$substring(f,0,g.length)===g;};$pkg.HasPrefix=Y;Z=function(f,g){var f,g;return f.length>=g.length&&$substring(f,(f.length-g.length>>0))===g;};$pkg.HasSuffix=Z;AA=function(f,g){var{f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$s,$r,$c}=$restore(this,{f,g});$s=$s||0;s:while(true){switch($s){case 0:h=new CE.ptr(CP.nil,CQ.nil);i=g;j=0;case 1:if(!(j<i.length)){$s=2;continue;}k=$decodeRune(i,j);l=j;m=k[0];n=f(m);$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;if((o===m)&&!((m===65533))){j+=k[1];$s=1;continue;}p=0;if(m===65533){q=C.DecodeRuneInString($substring(g,l));m=q[0];p=q[1];if(!((p===1))&&(o===m)){j+=k[1];$s=1;continue;}}else{p=C.RuneLen(m);}h.Grow(g.length+4>>0);h.WriteString($substring(g,0,l));if(o>=0){h.WriteRune(o);}g=$substring(g,(l+p>>0));$s=2;continue;case 2:if(h.Cap()===0){$s=-1;return g;}r=g;s=0;case 4:if(!(s<r.length)){$s=5;continue;}t=$decodeRune(r,s);u=t[0];v=f(u);$s=6;case 6:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}w=v;if(w>=0){if(w<128){h.WriteByte(((w<<24>>>24)));}else{h.WriteRune(w);}}s+=t[1];$s=4;continue;case 5:$s=-1;return h.String();}return;}var $f={$blk:AA,$c:true,$r,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$s};return $f;};$pkg.Map=AA;AB=function(f,g){var f,g,h,i,j,k;if(g===0){return"";}if(g<0){$panic(new $String("strings: negative Repeat count"));}else if(!(((h=($imul(f.length,g))/g,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"))===f.length))){$panic(new $String("strings: Repeat count causes overflow"));}i=$imul(f.length,g);j=new CE.ptr(CP.nil,CQ.nil);j.Grow(i);j.WriteString(f);while(true){if(!(j.Len()<i)){break;}if(j.Len()<=(k=i/2,(k===k&&k!==1/0&&k!==-1/0)?k>>0:$throwRuntimeError("integer divide by zero"))){j.WriteString(j.String());}else{j.WriteString($substring(j.String(),0,(i-j.Len()>>0)));break;}}return j.String();};$pkg.Repeat=AB;AD=function(f){var{f,g,h,i,j,k,l,m,n,o,p,q,$s,$r,$c}=$restore(this,{f});$s=$s||0;s:while(true){switch($s){case 0:g=true;h=false;i=g;j=h;k=0;while(true){if(!(k<f.length)){break;}l=f.charCodeAt(k);if(l>=128){i=false;break;}j=j||(65<=l&&l<=90);k=k+(1)>>0;}if(i){if(!j){$s=-1;return f;}m=new CE.ptr(CP.nil,CQ.nil);m.Grow(f.length);n=0;while(true){if(!(n<f.length)){break;}o=f.charCodeAt(n);if(65<=o&&o<=90){o=o+(32)<<24>>>24;}m.WriteByte(o);n=n+(1)>>0;}$s=-1;return m.String();}p=AA(B.ToLower,f);$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=p;$s=2;case 2:return q;}return;}var $f={$blk:AD,$c:true,$r,f,g,h,i,j,k,l,m,n,o,p,q,$s};return $f;};$pkg.ToLower=AD;AL=function(f,g){var{f,g,h,i,$s,$r,$c}=$restore(this,{f,g});$s=$s||0;s:while(true){switch($s){case 0:h=AQ(f,g,false);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;if(i===-1){$s=-1;return"";}$s=-1;return $substring(f,i);}return;}var $f={$blk:AL,$c:true,$r,f,g,h,i,$s};return $f;};$pkg.TrimLeftFunc=AL;AM=function(f,g){var{f,g,h,i,j,k,$s,$r,$c}=$restore(this,{f,g});$s=$s||0;s:while(true){switch($s){case 0:h=AR(f,g,false);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;if(i>=0&&f.charCodeAt(i)>=128){j=C.DecodeRuneInString($substring(f,i));k=j[1];i=i+(k)>>0;}else{i=i+(1)>>0;}$s=-1;return $substring(f,0,i);}return;}var $f={$blk:AM,$c:true,$r,f,g,h,i,j,k,$s};return $f;};$pkg.TrimRightFunc=AM;AN=function(f,g){var{f,g,h,i,j,$s,$r,$c}=$restore(this,{f,g});$s=$s||0;s:while(true){switch($s){case 0:h=AL(f,g);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=AM(h,g);$s=2;case 2:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;$s=3;case 3:return j;}return;}var $f={$blk:AN,$c:true,$r,f,g,h,i,j,$s};return $f;};$pkg.TrimFunc=AN;AQ=function(f,g,h){var{f,g,h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{f,g,h});$s=$s||0;s:while(true){switch($s){case 0:i=f;j=0;case 1:if(!(j<i.length)){$s=2;continue;}k=$decodeRune(i,j);l=j;m=k[0];n=g(m);$s=5;case 5:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}if(n===h){$s=3;continue;}$s=4;continue;case 3:$s=-1;return l;case 4:j+=k[1];$s=1;continue;case 2:$s=-1;return-1;}return;}var $f={$blk:AQ,$c:true,$r,f,g,h,i,j,k,l,m,n,$s};return $f;};AR=function(f,g,h){var{f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{f,g,h});$s=$s||0;s:while(true){switch($s){case 0:i=f.length;case 1:if(!(i>0)){$s=2;continue;}j=C.DecodeLastRuneInString($substring(f,0,i));k=j[0];l=j[1];i=i-(l)>>0;m=g(k);$s=5;case 5:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}if(m===h){$s=3;continue;}$s=4;continue;case 3:$s=-1;return i;case 4:$s=1;continue;case 2:$s=-1;return-1;}return;}var $f={$blk:AR,$c:true,$r,f,g,h,i,j,k,l,m,$s};return $f;};AT=function(f){var f,g,h,i,j,k,l,m,n,o,p,q,r;g=CR.zero();h=false;i=0;while(true){if(!(i<f.length)){break;}j=f.charCodeAt(i);if(j>=128){k=$clone(g,AS);l=false;AS.copy(g,k);h=l;return[g,h];}n=(m=j/32,(m===m&&m!==1/0&&m!==-1/0)?m>>>0:$throwRuntimeError("integer divide by zero"));((n<0||n>=g.length)?($throwRuntimeError("index out of range"),undefined):g[n]=((((n<0||n>=g.length)?($throwRuntimeError("index out of range"),undefined):g[n])|(((o=((p=j%32,p===p?p:$throwRuntimeError("integer divide by zero"))),o<32?(1<<o):0)>>>0)))>>>0));i=i+(1)>>0;}q=$clone(g,AS);r=true;AS.copy(g,q);h=r;return[g,h];};AS.prototype.contains=function(f){var f,g,h,i,j,k,l;g=this.$val;return!((((((h=g,i=(j=f/32,(j===j&&j!==1/0&&j!==-1/0)?j>>>0:$throwRuntimeError("integer divide by zero")),((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]))&(((k=((l=f%32,l===l?l:$throwRuntimeError("integer divide by zero"))),k<32?(1<<k):0)>>>0)))>>>0))===0));};$ptrType(AS).prototype.contains=function(f){return(new AS(this.$get())).contains(f);};AU=function(f,g){var f,g,h,i,j;if(f===""||g===""){return f;}if((g.length===1)&&g.charCodeAt(0)<128){return AW(BA(f,g.charCodeAt(0)),g.charCodeAt(0));}h=AT(g);i=$clone(h[0],AS);j=h[1];if(j){return AX(BB(f,i),i);}return AY(BC(f,g),g);};$pkg.Trim=AU;AV=function(f,g){var f,g,h,i,j;if(f===""||g===""){return f;}if((g.length===1)&&g.charCodeAt(0)<128){return AW(f,g.charCodeAt(0));}h=AT(g);i=$clone(h[0],AS);j=h[1];if(j){return AX(f,i);}return AY(f,g);};$pkg.TrimLeft=AV;AW=function(f,g){var f,g;while(true){if(!(f.length>0&&(f.charCodeAt(0)===g))){break;}f=$substring(f,1);}return f;};AX=function(f,g){var f,g;while(true){if(!(f.length>0)){break;}if(!new CM(g).contains(f.charCodeAt(0))){break;}f=$substring(f,1);}return f;};AY=function(f,g){var f,g,h,i,j,k,l;while(true){if(!(f.length>0)){break;}h=((f.charCodeAt(0)>>0));i=1;j=h;k=i;if(j>=128){l=C.DecodeRuneInString(f);j=l[0];k=l[1];}if(!K(g,j)){break;}f=$substring(f,k);}return f;};AZ=function(f,g){var f,g,h,i,j;if(f===""||g===""){return f;}if((g.length===1)&&g.charCodeAt(0)<128){return BA(f,g.charCodeAt(0));}h=AT(g);i=$clone(h[0],AS);j=h[1];if(j){return BB(f,i);}return BC(f,g);};$pkg.TrimRight=AZ;BA=function(f,g){var f,g;while(true){if(!(f.length>0&&(f.charCodeAt((f.length-1>>0))===g))){break;}f=$substring(f,0,(f.length-1>>0));}return f;};BB=function(f,g){var f,g;while(true){if(!(f.length>0)){break;}if(!new CM(g).contains(f.charCodeAt((f.length-1>>0)))){break;}f=$substring(f,0,(f.length-1>>0));}return f;};BC=function(f,g){var f,g,h,i,j,k,l;while(true){if(!(f.length>0)){break;}h=((f.charCodeAt((f.length-1>>0))>>0));i=1;j=h;k=i;if(j>=128){l=C.DecodeLastRuneInString(f);j=l[0];k=l[1];}if(!K(g,j)){break;}f=$substring(f,0,(f.length-k>>0));}return f;};BD=function(f){var{f,g,h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{f});$s=$s||0;s:while(true){switch($s){case 0:g=0;case 1:if(!(g<f.length)){$s=2;continue;}h=f.charCodeAt(g);if(h>=128){$s=3;continue;}$s=4;continue;case 3:i=AN($substring(f,g),B.IsSpace);$s=5;case 5:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;$s=6;case 6:return j;case 4:if(((h<0||h>=U.length)?($throwRuntimeError("index out of range"),undefined):U[h])===0){$s=2;continue;}g=g+(1)>>0;$s=1;continue;case 2:k=f.length;case 7:if(!(k>g)){$s=8;continue;}l=f.charCodeAt((k-1>>0));if(l>=128){$s=9;continue;}$s=10;continue;case 9:m=AN($substring(f,g,k),B.IsSpace);$s=11;case 11:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;$s=12;case 12:return n;case 10:if(((l<0||l>=U.length)?($throwRuntimeError("index out of range"),undefined):U[l])===0){$s=8;continue;}k=k-(1)>>0;$s=7;continue;case 8:$s=-1;return $substring(f,g,k);}return;}var $f={$blk:BD,$c:true,$r,f,g,h,i,j,k,l,m,n,$s};return $f;};$pkg.TrimSpace=BD;BE=function(f,g){var f,g;if(Y(f,g)){return $substring(f,g.length);}return f;};$pkg.TrimPrefix=BE;BF=function(f,g){var f,g;if(Z(f,g)){return $substring(f,0,(f.length-g.length>>0));}return f;};$pkg.TrimSuffix=BF;BG=function(f,g,h,i){var f,g,h,i,j,k,l,m,n,o,p;if(g===h||(i===0)){return f;}j=CJ(f,g);if(j===0){return f;}else if(i<0||j<i){i=j;}k=new CE.ptr(CP.nil,CQ.nil);k.Grow(f.length+($imul(i,((h.length-g.length>>0))))>>0);l=0;m=0;while(true){if(!(m<i)){break;}n=l;if(g.length===0){if(m>0){o=C.DecodeRuneInString($substring(f,l));p=o[1];n=n+(p)>>0;}}else{n=n+(CH($substring(f,l),g))>>0;}k.WriteString($substring(f,l,n));k.WriteString(h);l=n+g.length>>0;m=m+(1)>>0;}k.WriteString($substring(f,l));return k.String();};$pkg.Replace=BG;BH=function(f,g,h){var f,g,h;return BG(f,g,h,-1);};$pkg.ReplaceAll=BH;BI=function(f,g){var aa,ab,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;while(true){if(!(!(f==="")&&!(g===""))){break;}h=0;i=0;j=h;k=i;if(f.charCodeAt(0)<128){l=((f.charCodeAt(0)>>0));m=$substring(f,1);j=l;f=m;}else{n=C.DecodeRuneInString(f);o=n[0];p=n[1];q=o;r=$substring(f,p);j=q;f=r;}if(g.charCodeAt(0)<128){s=((g.charCodeAt(0)>>0));t=$substring(g,1);k=s;g=t;}else{u=C.DecodeRuneInString(g);v=u[0];w=u[1];x=v;y=$substring(g,w);k=x;g=y;}if(k===j){continue;}if(k<j){z=j;aa=k;k=z;j=aa;}if(k<128){if(65<=j&&j<=90&&(k===((j+97>>0)-65>>0))){continue;}return false;}ab=B.SimpleFold(j);while(true){if(!(!((ab===j))&&ab<k)){break;}ab=B.SimpleFold(ab);}if(ab===k){continue;}return false;}return f===g;};$pkg.EqualFold=BI;BJ=function(f,g){var f,g,h,i,j,k,l,m,n,o,p,q;h="";i="";j=false;k=CH(f,g);if(k>=0){l=$substring(f,0,k);m=$substring(f,(k+g.length>>0));n=true;h=l;i=m;j=n;return[h,i,j];}o=f;p="";q=false;h=o;i=p;j=q;return[h,i,j];};$pkg.Cut=BJ;BL=function(f){var f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;g=new BK.ptr(f,CS.zero(),$makeSlice(CT,f.length));h=f.length-1>>0;i=g.badCharSkip;j=0;while(true){if(!(j<256)){break;}k=j;(l=g.badCharSkip,((k<0||k>=l.length)?($throwRuntimeError("index out of range"),undefined):l[k]=f.length));j++;}m=0;while(true){if(!(m<h)){break;}(n=g.badCharSkip,o=f.charCodeAt(m),((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]=(h-m>>0)));m=m+(1)>>0;}p=h;q=h;while(true){if(!(q>=0)){break;}if(Y(f,$substring(f,(q+1>>0)))){p=q+1>>0;}(r=g.goodSuffixSkip,((q<0||q>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+q]=((p+h>>0)-q>>0)));q=q-(1)>>0;}s=0;while(true){if(!(s<h)){break;}t=BM(f,$substring(f,1,(s+1>>0)));if(!((f.charCodeAt((s-t>>0))===f.charCodeAt((h-t>>0))))){(u=g.goodSuffixSkip,v=h-t>>0,((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]=((t+h>>0)-s>>0)));}s=s+(1)>>0;}return g;};BM=function(f,g){var f,g,h;h=0;while(true){if(!(h<f.length&&h<g.length)){break;}if(!((f.charCodeAt(((f.length-1>>0)-h>>0))===g.charCodeAt(((g.length-1>>0)-h>>0))))){break;}h=h+(1)>>0;}return h;};BK.ptr.prototype.next=function(f){var f,g,h,i,j,k,l;g=this;h=g.pattern.length-1>>0;while(true){if(!(h<f.length)){break;}i=g.pattern.length-1>>0;while(true){if(!(i>=0&&(f.charCodeAt(h)===g.pattern.charCodeAt(i)))){break;}h=h-(1)>>0;i=i-(1)>>0;}if(i<0){return h+1>>0;}h=h+(BN((j=g.badCharSkip,k=f.charCodeAt(h),((k<0||k>=j.length)?($throwRuntimeError("index out of range"),undefined):j[k])),(l=g.goodSuffixSkip,((i<0||i>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+i]))))>>0;}return-1;};BK.prototype.next=function(f){return this.$val.next(f);};BN=function(f,g){var f,g;if(f>g){return f;}return g;};BQ=function(f){var f,g;if((g=f.$length%2,g===g?g:$throwRuntimeError("integer divide by zero"))===1){$panic(new $String("strings.NewReplacer: odd argument count"));}return new BO.ptr(new E.Once.ptr(0,new E.Mutex.ptr(0,0)),$ifaceNil,$appendSlice((CL.nil),f));};$pkg.NewReplacer=BQ;BO.ptr.prototype.buildOnce=function(){var f;f=this;f.r=f.build();f.oldnew=CL.nil;};BO.prototype.buildOnce=function(){return this.$val.buildOnce();};BO.ptr.prototype.build=function(){var f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;f=this;g=f.oldnew;if((g.$length===2)&&(0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0]).length>1){return BY((0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0]),(1>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+1]));}h=true;i=0;while(true){if(!(i<g.$length)){break;}if(!((((i<0||i>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+i]).length===1))){return BT(g);}if(!(((j=i+1>>0,((j<0||j>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+j])).length===1))){h=false;}i=i+(2)>>0;}if(h){k=CU.zero();l=k;m=0;while(true){if(!(m<256)){break;}n=m;((n<0||n>=k.length)?($throwRuntimeError("index out of range"),undefined):k[n]=((n<<24>>>24)));m++;}o=g.$length-2>>0;while(true){if(!(o>=0)){break;}p=((o<0||o>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+o]).charCodeAt(0);r=(q=o+1>>0,((q<0||q>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+q])).charCodeAt(0);((p<0||p>=k.length)?($throwRuntimeError("index out of range"),undefined):k[p]=r);o=o-(2)>>0;}return new CV(k);}t=new CA.ptr(CW.zero(),$makeSlice(CL,0,(s=g.$length/2,(s===s&&s!==1/0&&s!==-1/0)?s>>0:$throwRuntimeError("integer divide by zero"))));u=g.$length-2>>0;while(true){if(!(u>=0)){break;}v=((u<0||u>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+u]).charCodeAt(0);x=(w=u+1>>0,((w<0||w>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+w]));if((y=t.replacements,((v<0||v>=y.length)?($throwRuntimeError("index out of range"),undefined):y[v]))===CQ.nil){t.toReplace=$append(t.toReplace,($bytesToString(new CQ([v]))));}(z=t.replacements,((v<0||v>=z.length)?($throwRuntimeError("index out of range"),undefined):z[v]=(new CQ($stringToBytes(x)))));u=u-(2)>>0;}return t;};BO.prototype.build=function(){return this.$val.build();};BO.ptr.prototype.Replace=function(f){var{f,g,h,i,$s,$r,$c}=$restore(this,{f});$s=$s||0;s:while(true){switch($s){case 0:g=this;$r=g.once.Do($methodVal(g,"buildOnce"));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=g.r.Replace(f);$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;$s=3;case 3:return i;}return;}var $f={$blk:BO.ptr.prototype.Replace,$c:true,$r,f,g,h,i,$s};return $f;};BO.prototype.Replace=function(f){return this.$val.Replace(f);};BO.ptr.prototype.WriteString=function(f,g){var{f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{f,g});$s=$s||0;s:while(true){switch($s){case 0:h=0;i=$ifaceNil;j=this;$r=j.once.Do($methodVal(j,"buildOnce"));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}l=j.r.WriteString(f,g);$s=2;case 2:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;h=k[0];i=k[1];m=[h,i];$s=3;case 3:return m;}return;}var $f={$blk:BO.ptr.prototype.WriteString,$c:true,$r,f,g,h,i,j,k,l,m,$s};return $f;};BO.prototype.WriteString=function(f,g){return this.$val.WriteString(f,g);};BR.ptr.prototype.add=function(f,g,h,i){var aa,ab,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;j=this;if(f===""){if(j.priority===0){j.value=g;j.priority=h;}return;}if(!(j.prefix==="")){k=0;while(true){if(!(k<j.prefix.length&&k<f.length)){break;}if(!((j.prefix.charCodeAt(k)===f.charCodeAt(k)))){break;}k=k+(1)>>0;}if(k===j.prefix.length){j.next.add($substring(f,k),g,h,i);}else if(k===0){l=CX.nil;if(j.prefix.length===1){l=j.next;}else{l=new BR.ptr("",0,$substring(j.prefix,1),j.next,CY.nil);}m=new BR.ptr("",0,"",CX.nil,CY.nil);j.table=$makeSlice(CY,i.tableSize);(n=j.table,o=(p=i.mapping,q=j.prefix.charCodeAt(0),((q<0||q>=p.length)?($throwRuntimeError("index out of range"),undefined):p[q])),((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o]=l));(r=j.table,s=(t=i.mapping,u=f.charCodeAt(0),((u<0||u>=t.length)?($throwRuntimeError("index out of range"),undefined):t[u])),((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]=m));j.prefix="";j.next=CX.nil;m.add($substring(f,1),g,h,i);}else{v=new BR.ptr("",0,$substring(j.prefix,k),j.next,CY.nil);j.prefix=$substring(j.prefix,0,k);j.next=v;v.add($substring(f,k),g,h,i);}}else if(!(j.table===CY.nil)){y=(w=i.mapping,x=f.charCodeAt(0),((x<0||x>=w.length)?($throwRuntimeError("index out of range"),undefined):w[x]));if((z=j.table,((y<0||y>=z.$length)?($throwRuntimeError("index out of range"),undefined):z.$array[z.$offset+y]))===CX.nil){(aa=j.table,((y<0||y>=aa.$length)?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+y]=new BR.ptr("",0,"",CX.nil,CY.nil)));}(ab=j.table,((y<0||y>=ab.$length)?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+y])).add($substring(f,1),g,h,i);}else{j.prefix=f;j.next=new BR.ptr("",0,"",CX.nil,CY.nil);j.next.add("",g,h,i);}};BR.prototype.add=function(f,g,h,i){return this.$val.add(f,g,h,i);};BS.ptr.prototype.lookup=function(f,g){var f,g,h,i,j,k,l,m,n,o,p,q,r;h="";i=0;j=false;k=this;l=0;m=k.root;n=0;while(true){if(!(!(m===CX.nil))){break;}if(m.priority>l&&!(g&&m===k.root)){l=m.priority;h=m.value;i=n;j=true;}if(f===""){break;}if(!(m.table===CY.nil)){q=(o=k.mapping,p=f.charCodeAt(0),((p<0||p>=o.length)?($throwRuntimeError("index out of range"),undefined):o[p]));if(((q>>0))===k.tableSize){break;}m=(r=m.table,((q<0||q>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+q]));f=$substring(f,1);n=n+(1)>>0;}else if(!(m.prefix==="")&&Y(f,m.prefix)){n=n+(m.prefix.length)>>0;f=$substring(f,m.prefix.length);m=m.next;}else{break;}}return[h,i,j];};BS.prototype.lookup=function(f,g){return this.$val.lookup(f,g);};BT=function(f){var f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;g=new BS.ptr(new BR.ptr("",0,"",CX.nil,CY.nil),0,CU.zero());h=0;while(true){if(!(h<f.$length)){break;}i=((h<0||h>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+h]);j=0;while(true){if(!(j<i.length)){break;}(k=g.mapping,l=i.charCodeAt(j),((l<0||l>=k.length)?($throwRuntimeError("index out of range"),undefined):k[l]=1));j=j+(1)>>0;}h=h+(2)>>0;}m=g.mapping;n=0;while(true){if(!(n<256)){break;}o=((n<0||n>=m.length)?($throwRuntimeError("index out of range"),undefined):m[n]);g.tableSize=g.tableSize+(((o>>0)))>>0;n++;}p=0;q=g.mapping;r=0;while(true){if(!(r<256)){break;}s=r;t=((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]);if(t===0){(u=g.mapping,((s<0||s>=u.length)?($throwRuntimeError("index out of range"),undefined):u[s]=((g.tableSize<<24>>>24))));}else{(v=g.mapping,((s<0||s>=v.length)?($throwRuntimeError("index out of range"),undefined):v[s]=p));p=p+(1)<<24>>>24;}r++;}g.root.table=$makeSlice(CY,g.tableSize);w=0;while(true){if(!(w<f.$length)){break;}g.root.add(((w<0||w>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+w]),(x=w+1>>0,((x<0||x>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+x])),f.$length-w>>0,g);w=w+(2)>>0;}return g;};$ptrType(BU).prototype.Write=function(f){var f,g;g=this;g.$set($appendSlice(g.$get(),f));return[f.$length,$ifaceNil];};$ptrType(BU).prototype.WriteString=function(f){var f,g;g=this;g.$set($appendSlice(g.$get(),f));return[f.length,$ifaceNil];};BV.ptr.prototype.WriteString=function(f){var{f,g,h,i,$s,$r,$c}=$restore(this,{f});$s=$s||0;s:while(true){switch($s){case 0:g=this;h=g.w.Write((new CQ($stringToBytes(f))));$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;$s=2;case 2:return i;}return;}var $f={$blk:BV.ptr.prototype.WriteString,$c:true,$r,f,g,h,i,$s};return $f;};BV.prototype.WriteString=function(f){return this.$val.WriteString(f);};BW=function(f){var f,g,h,i,j;g=$assertType(f,D.StringWriter,true);h=g[0];i=g[1];if(!i){h=(j=new BV.ptr(f),new j.constructor.elem(j));}return h;};BS.ptr.prototype.Replace=function(f){var{f,g,h,i,$s,$r,$c}=$restore(this,{f});$s=$s||0;s:while(true){switch($s){case 0:g=[g];h=this;g[0]=$makeSlice(BU,0,f.length);i=h.WriteString((g.$ptr||(g.$ptr=new CZ(function(){return this.$target[0];},function($v){this.$target[0]=$v;},g))),f);$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;$s=-1;return($bytesToString(g[0]));}return;}var $f={$blk:BS.ptr.prototype.Replace,$c:true,$r,f,g,h,i,$s};return $f;};BS.prototype.Replace=function(f){return this.$val.Replace(f);};BS.ptr.prototype.WriteString=function(f,g){var{aa,ab,ac,ad,ae,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{f,g});$s=$s||0;s:while(true){switch($s){case 0:h=0;i=$ifaceNil;j=this;k=BW(f);l=0;m=0;n=l;o=m;p=false;q=0;case 1:if(!(q<=g.length)){$s=2;continue;}if(!((q===g.length))&&(j.root.priority===0)){t=(((r=j.mapping,s=g.charCodeAt(q),((s<0||s>=r.length)?($throwRuntimeError("index out of range"),undefined):r[s]))>>0));if((t===j.tableSize)||(u=j.root.table,((t<0||t>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+t]))===CX.nil){q=q+(1)>>0;$s=1;continue;}}v=j.lookup($substring(g,q),p);w=v[0];x=v[1];y=v[2];p=y&&(x===0);if(y){$s=3;continue;}$s=4;continue;case 3:aa=k.WriteString($substring(g,n,q));$s=5;case 5:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}z=aa;o=z[0];i=z[1];h=h+(o)>>0;if(!($interfaceIsEqual(i,$ifaceNil))){$s=-1;return[h,i];}ac=k.WriteString(w);$s=6;case 6:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ab=ac;o=ab[0];i=ab[1];h=h+(o)>>0;if(!($interfaceIsEqual(i,$ifaceNil))){$s=-1;return[h,i];}q=q+(x)>>0;n=q;$s=1;continue;case 4:q=q+(1)>>0;$s=1;continue;case 2:if(!((n===g.length))){$s=7;continue;}$s=8;continue;case 7:ae=k.WriteString($substring(g,n));$s=9;case 9:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}ad=ae;o=ad[0];i=ad[1];h=h+(o)>>0;case 8:$s=-1;return[h,i];}return;}var $f={$blk:BS.ptr.prototype.WriteString,$c:true,$r,aa,ab,ac,ad,ae,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};BS.prototype.WriteString=function(f,g){return this.$val.WriteString(f,g);};BY=function(f,g){var f,g;return new BX.ptr(BL(f),g);};BX.ptr.prototype.Replace=function(f){var f,g,h,i,j,k,l,m;g=this;h=new CE.ptr(CP.nil,CQ.nil);i=0;j=false;k=i;l=j;while(true){m=g.finder.next($substring(f,k));if(m===-1){break;}l=true;h.Grow(m+g.value.length>>0);h.WriteString($substring(f,k,(k+m>>0)));h.WriteString(g.value);k=k+((m+g.finder.pattern.length>>0))>>0;}if(!l){return f;}h.WriteString($substring(f,k));return h.String();};BX.prototype.Replace=function(f){return this.$val.Replace(f);};BX.ptr.prototype.WriteString=function(f,g){var{f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,$s,$r,$c}=$restore(this,{f,g});$s=$s||0;s:while(true){switch($s){case 0:h=0;i=$ifaceNil;j=this;k=BW(f);l=0;m=0;n=l;o=m;case 1:p=j.finder.next($substring(g,n));if(p===-1){$s=2;continue;}r=k.WriteString($substring(g,n,(n+p>>0)));$s=3;case 3:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;o=q[0];i=q[1];h=h+(o)>>0;if(!($interfaceIsEqual(i,$ifaceNil))){$s=-1;return[h,i];}t=k.WriteString(j.value);$s=4;case 4:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}s=t;o=s[0];i=s[1];h=h+(o)>>0;if(!($interfaceIsEqual(i,$ifaceNil))){$s=-1;return[h,i];}n=n+((p+j.finder.pattern.length>>0))>>0;$s=1;continue;case 2:v=k.WriteString($substring(g,n));$s=5;case 5:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;o=u[0];i=u[1];h=h+(o)>>0;$s=-1;return[h,i];}return;}var $f={$blk:BX.ptr.prototype.WriteString,$c:true,$r,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,$s};return $f;};BX.prototype.WriteString=function(f,g){return this.$val.WriteString(f,g);};BZ.prototype.Replace=function(f){var f,g,h,i,j,k,l;g=this.$val;h=CQ.nil;i=0;while(true){if(!(i<f.length)){break;}j=f.charCodeAt(i);if(!(((k=g,((j<0||j>=k.length)?($throwRuntimeError("index out of range"),undefined):k[j]))===j))){if(h===CQ.nil){h=(new CQ($stringToBytes(f)));}((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]=(l=g,((j<0||j>=l.length)?($throwRuntimeError("index out of range"),undefined):l[j])));}i=i+(1)>>0;}if(h===CQ.nil){return f;}return($bytesToString(h));};$ptrType(BZ).prototype.Replace=function(f){return(new BZ(this.$get())).Replace(f);};BZ.prototype.WriteString=function(f,g){var{f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{f,g});$s=$s||0;s:while(true){switch($s){case 0:h=0;i=$ifaceNil;j=this.$val;k=32768;if(g.length<k){k=g.length;}l=$makeSlice(CQ,k);case 1:if(!(g.length>0)){$s=2;continue;}m=$copyString(l,g);g=$substring(g,m);n=$subslice(l,0,m);o=0;while(true){if(!(o<n.$length)){break;}p=o;q=((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o]);((p<0||p>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+p]=(r=j,((q<0||q>=r.length)?($throwRuntimeError("index out of range"),undefined):r[q])));o++;}t=f.Write($subslice(l,0,m));$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}s=t;u=s[0];v=s[1];h=h+(u)>>0;if(!($interfaceIsEqual(v,$ifaceNil))){w=h;x=v;h=w;i=x;$s=-1;return[h,i];}$s=1;continue;case 2:y=h;z=$ifaceNil;h=y;i=z;$s=-1;return[h,i];}return;}var $f={$blk:BZ.prototype.WriteString,$c:true,$r,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};$ptrType(BZ).prototype.WriteString=function(f,g){return(new BZ(this.$get())).WriteString(f,g);};CA.ptr.prototype.Replace=function(f){var f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;g=this;h=f.length;i=false;if(($imul(g.toReplace.$length,8))<=f.length){j=g.toReplace;k=0;while(true){if(!(k<j.$length)){break;}l=((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]);m=CJ(f,l);if(!((m===0))){h=h+(($imul(m,(((n=g.replacements,o=l.charCodeAt(0),((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o])).$length-1>>0)))))>>0;i=true;}k++;}}else{p=0;while(true){if(!(p<f.length)){break;}q=f.charCodeAt(p);if(!((r=g.replacements,((q<0||q>=r.length)?($throwRuntimeError("index out of range"),undefined):r[q]))===CQ.nil)){h=h+(((s=g.replacements,((q<0||q>=s.length)?($throwRuntimeError("index out of range"),undefined):s[q])).$length-1>>0))>>0;i=true;}p=p+(1)>>0;}}if(!i){return f;}t=$makeSlice(CQ,h);u=0;v=0;while(true){if(!(v<f.length)){break;}w=f.charCodeAt(v);if(!((x=g.replacements,((w<0||w>=x.length)?($throwRuntimeError("index out of range"),undefined):x[w]))===CQ.nil)){u=u+($copySlice($subslice(t,u),(y=g.replacements,((w<0||w>=y.length)?($throwRuntimeError("index out of range"),undefined):y[w]))))>>0;}else{((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u]=w);u=u+(1)>>0;}v=v+(1)>>0;}return($bytesToString(t));};CA.prototype.Replace=function(f){return this.$val.Replace(f);};CA.ptr.prototype.WriteString=function(f,g){var{aa,ab,ac,ad,ae,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{f,g});$s=$s||0;s:while(true){switch($s){case 0:h=0;i=$ifaceNil;j=this;k=BW(f);l=0;m=0;case 1:if(!(m<g.length)){$s=2;continue;}n=g.charCodeAt(m);if((o=j.replacements,((n<0||n>=o.length)?($throwRuntimeError("index out of range"),undefined):o[n]))===CQ.nil){m=m+(1)>>0;$s=1;continue;}if(!((l===m))){$s=3;continue;}$s=4;continue;case 3:q=k.WriteString($substring(g,l,m));$s=5;case 5:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;r=p[0];s=p[1];h=h+(r)>>0;if(!($interfaceIsEqual(s,$ifaceNil))){t=h;u=s;h=t;i=u;$s=-1;return[h,i];}case 4:l=m+1>>0;x=f.Write((w=j.replacements,((n<0||n>=w.length)?($throwRuntimeError("index out of range"),undefined):w[n])));$s=6;case 6:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}v=x;y=v[0];z=v[1];h=h+(y)>>0;if(!($interfaceIsEqual(z,$ifaceNil))){aa=h;ab=z;h=aa;i=ab;$s=-1;return[h,i];}m=m+(1)>>0;$s=1;continue;case 2:if(!((l===g.length))){$s=7;continue;}$s=8;continue;case 7:ac=0;ae=k.WriteString($substring(g,l));$s=9;case 9:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}ad=ae;ac=ad[0];i=ad[1];h=h+(ac)>>0;case 8:$s=-1;return[h,i];}return;}var $f={$blk:CA.ptr.prototype.WriteString,$c:true,$r,aa,ab,ac,ad,ae,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};CA.prototype.WriteString=function(f,g){return this.$val.WriteString(f,g);};CB.ptr.prototype.Len=function(){var f,g,h,i,j,k;f=this;if((g=f.i,h=(new $Int64(0,f.s.length)),(g.$high>h.$high||(g.$high===h.$high&&g.$low>=h.$low)))){return 0;}return(((i=(j=(new $Int64(0,f.s.length)),k=f.i,new $Int64(j.$high-k.$high,j.$low-k.$low)),i.$low+((i.$high>>31)*4294967296))>>0));};CB.prototype.Len=function(){return this.$val.Len();};CB.ptr.prototype.Size=function(){var f;f=this;return(new $Int64(0,f.s.length));};CB.prototype.Size=function(){return this.$val.Size();};CB.ptr.prototype.Read=function(f){var f,g,h,i,j,k,l,m,n,o;g=0;h=$ifaceNil;i=this;if((j=i.i,k=(new $Int64(0,i.s.length)),(j.$high>k.$high||(j.$high===k.$high&&j.$low>=k.$low)))){l=0;m=D.EOF;g=l;h=m;return[g,h];}i.prevRune=-1;g=$copyString(f,$substring(i.s,$flatten64(i.i)));i.i=(n=i.i,o=(new $Int64(0,g)),new $Int64(n.$high+o.$high,n.$low+o.$low));return[g,h];};CB.prototype.Read=function(f){return this.$val.Read(f);};CB.ptr.prototype.ReadAt=function(f,g){var f,g,h,i,j,k,l,m,n,o;h=0;i=$ifaceNil;j=this;if((g.$high<0||(g.$high===0&&g.$low<0))){k=0;l=F.New("strings.Reader.ReadAt: negative offset");h=k;i=l;return[h,i];}if((m=(new $Int64(0,j.s.length)),(g.$high>m.$high||(g.$high===m.$high&&g.$low>=m.$low)))){n=0;o=D.EOF;h=n;i=o;return[h,i];}h=$copyString(f,$substring(j.s,$flatten64(g)));if(h<f.$length){i=D.EOF;}return[h,i];};CB.prototype.ReadAt=function(f,g){return this.$val.ReadAt(f,g);};CB.ptr.prototype.ReadByte=function(){var f,g,h,i,j,k;f=this;f.prevRune=-1;if((g=f.i,h=(new $Int64(0,f.s.length)),(g.$high>h.$high||(g.$high===h.$high&&g.$low>=h.$low)))){return[0,D.EOF];}i=f.s.charCodeAt($flatten64(f.i));f.i=(j=f.i,k=new $Int64(0,1),new $Int64(j.$high+k.$high,j.$low+k.$low));return[i,$ifaceNil];};CB.prototype.ReadByte=function(){return this.$val.ReadByte();};CB.ptr.prototype.UnreadByte=function(){var f,g,h,i;f=this;if((g=f.i,(g.$high<0||(g.$high===0&&g.$low<=0)))){return F.New("strings.Reader.UnreadByte: at beginning of string");}f.prevRune=-1;f.i=(h=f.i,i=new $Int64(0,1),new $Int64(h.$high-i.$high,h.$low-i.$low));return $ifaceNil;};CB.prototype.UnreadByte=function(){return this.$val.UnreadByte();};CB.ptr.prototype.ReadRune=function(){var f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;f=0;g=0;h=$ifaceNil;i=this;if((j=i.i,k=(new $Int64(0,i.s.length)),(j.$high>k.$high||(j.$high===k.$high&&j.$low>=k.$low)))){i.prevRune=-1;l=0;m=0;n=D.EOF;f=l;g=m;h=n;return[f,g,h];}i.prevRune=(((o=i.i,o.$low+((o.$high>>31)*4294967296))>>0));p=i.s.charCodeAt($flatten64(i.i));if(p<128){i.i=(q=i.i,r=new $Int64(0,1),new $Int64(q.$high+r.$high,q.$low+r.$low));s=((p>>0));t=1;u=$ifaceNil;f=s;g=t;h=u;return[f,g,h];}v=C.DecodeRuneInString($substring(i.s,$flatten64(i.i)));f=v[0];g=v[1];i.i=(w=i.i,x=(new $Int64(0,g)),new $Int64(w.$high+x.$high,w.$low+x.$low));return[f,g,h];};CB.prototype.ReadRune=function(){return this.$val.ReadRune();};CB.ptr.prototype.UnreadRune=function(){var f,g;f=this;if((g=f.i,(g.$high<0||(g.$high===0&&g.$low<=0)))){return F.New("strings.Reader.UnreadRune: at beginning of string");}if(f.prevRune<0){return F.New("strings.Reader.UnreadRune: previous operation was not ReadRune");}f.i=(new $Int64(0,f.prevRune));f.prevRune=-1;return $ifaceNil;};CB.prototype.UnreadRune=function(){return this.$val.UnreadRune();};CB.ptr.prototype.Seek=function(f,g){var f,g,h,i,j,k,l;h=this;h.prevRune=-1;i=new $Int64(0,0);j=g;if(j===(0)){i=f;}else if(j===(1)){i=(k=h.i,new $Int64(k.$high+f.$high,k.$low+f.$low));}else if(j===(2)){i=(l=(new $Int64(0,h.s.length)),new $Int64(l.$high+f.$high,l.$low+f.$low));}else{return[new $Int64(0,0),F.New("strings.Reader.Seek: invalid whence")];}if((i.$high<0||(i.$high===0&&i.$low<0))){return[new $Int64(0,0),F.New("strings.Reader.Seek: negative position")];}h.i=i;return[i,$ifaceNil];};CB.prototype.Seek=function(f,g){return this.$val.Seek(f,g);};CB.ptr.prototype.WriteTo=function(f){var{f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$r,$c}=$restore(this,{f});$s=$s||0;s:while(true){switch($s){case 0:g=new $Int64(0,0);h=$ifaceNil;i=this;i.prevRune=-1;if((j=i.i,k=(new $Int64(0,i.s.length)),(j.$high>k.$high||(j.$high===k.$high&&j.$low>=k.$low)))){l=new $Int64(0,0);m=$ifaceNil;g=l;h=m;$s=-1;return[g,h];}n=$substring(i.s,$flatten64(i.i));p=D.WriteString(f,n);$s=1;case 1:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;q=o[0];h=o[1];if(q>n.length){$panic(new $String("strings.Reader.WriteTo: invalid WriteString count"));}i.i=(r=i.i,s=(new $Int64(0,q)),new $Int64(r.$high+s.$high,r.$low+s.$low));g=(new $Int64(0,q));if(!((q===n.length))&&$interfaceIsEqual(h,$ifaceNil)){h=D.ErrShortWrite;}$s=-1;return[g,h];}return;}var $f={$blk:CB.ptr.prototype.WriteTo,$c:true,$r,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s};return $f;};CB.prototype.WriteTo=function(f){return this.$val.WriteTo(f);};CB.ptr.prototype.Reset=function(f){var f,g;g=this;CB.copy(g,new CB.ptr(f,new $Int64(0,0),-1));};CB.prototype.Reset=function(f){return this.$val.Reset(f);};CC=function(f){var f;return new CB.ptr(f,new $Int64(0,0),-1);};$pkg.NewReader=CC;CE.ptr.prototype.Len=function(){var f;f=this;return f.buf.$length;};CE.prototype.Len=function(){return this.$val.Len();};CE.ptr.prototype.Cap=function(){var f;f=this;return f.buf.$capacity;};CE.prototype.Cap=function(){return this.$val.Cap();};CE.ptr.prototype.Reset=function(){var f;f=this;f.addr=CP.nil;f.buf=CQ.nil;};CE.prototype.Reset=function(){return this.$val.Reset();};CE.ptr.prototype.grow=function(f){var f,g,h;g=this;h=$makeSlice(CQ,g.buf.$length,(($imul(2,g.buf.$capacity))+f>>0));$copySlice(h,g.buf);g.buf=h;};CE.prototype.grow=function(f){return this.$val.grow(f);};CE.ptr.prototype.Grow=function(f){var f,g;g=this;g.copyCheck();if(f<0){$panic(new $String("strings.Builder.Grow: negative count"));}if((g.buf.$capacity-g.buf.$length>>0)<f){g.grow(f);}};CE.prototype.Grow=function(f){return this.$val.Grow(f);};CE.ptr.prototype.Write=function(f){var f,g;g=this;g.copyCheck();g.buf=$appendSlice(g.buf,f);return[f.$length,$ifaceNil];};CE.prototype.Write=function(f){return this.$val.Write(f);};CE.ptr.prototype.WriteByte=function(f){var f,g;g=this;g.copyCheck();g.buf=$append(g.buf,f);return $ifaceNil;};CE.prototype.WriteByte=function(f){return this.$val.WriteByte(f);};CE.ptr.prototype.WriteRune=function(f){var f,g,h,i;g=this;g.copyCheck();if(((f>>>0))<128){g.buf=$append(g.buf,((f<<24>>>24)));return[1,$ifaceNil];}h=g.buf.$length;if((g.buf.$capacity-h>>0)<4){g.grow(4);}i=C.EncodeRune($subslice(g.buf,h,(h+4>>0)),f);g.buf=$subslice(g.buf,0,(h+i>>0));return[i,$ifaceNil];};CE.prototype.WriteRune=function(f){return this.$val.WriteRune(f);};CE.ptr.prototype.WriteString=function(f){var f,g;g=this;g.copyCheck();g.buf=$appendSlice(g.buf,f);return[f.length,$ifaceNil];};CE.prototype.WriteString=function(f){return this.$val.WriteString(f);};CG=function(f,g){var f,g;return $parseInt(f.indexOf($global.String.fromCharCode(g)))>>0;};$pkg.IndexByte=CG;CH=function(f,g){var f,g;return $parseInt(f.indexOf(g))>>0;};$pkg.Index=CH;CI=function(f,g){var f,g;return $parseInt(f.lastIndexOf(g))>>0;};$pkg.LastIndex=CI;CJ=function(f,g){var f,g,h,i;h=0;if((g.length===0)){return C.RuneCountInString(f)+1>>0;}else if(g.length>f.length){return 0;}else if((g.length===f.length)){if(g===f){return 1;}return 0;}while(true){i=CH(f,g);if(i===-1){break;}h=h+(1)>>0;f=$substring(f,(i+g.length>>0));}return h;};$pkg.Count=CJ;CE.ptr.prototype.String=function(){var f;f=this;return($bytesToString(f.buf));};CE.prototype.String=function(){return this.$val.String();};CE.ptr.prototype.copyCheck=function(){var f;f=this;if(f.addr===CP.nil){f.addr=f;}else if(!(f.addr===f)){$panic(new $String("strings: illegal use of non-zero Builder copied by value"));}};CE.prototype.copyCheck=function(){return this.$val.copyCheck();};CM.methods=[{prop:"contains",name:"contains",pkg:"strings",typ:$funcType([$Uint8],[$Bool],false)}];DA.methods=[{prop:"next",name:"next",pkg:"strings",typ:$funcType([$String],[$Int],false)}];DB.methods=[{prop:"buildOnce",name:"buildOnce",pkg:"strings",typ:$funcType([],[],false)},{prop:"build",name:"build",pkg:"strings",typ:$funcType([],[BP],false)},{prop:"Replace",name:"Replace",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([D.Writer,$String],[$Int,$error],false)}];CX.methods=[{prop:"add",name:"add",pkg:"strings",typ:$funcType([$String,$String,$Int,DC],[],false)}];DC.methods=[{prop:"lookup",name:"lookup",pkg:"strings",typ:$funcType([$String,$Bool],[$String,$Int,$Bool],false)},{prop:"Replace",name:"Replace",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([D.Writer,$String],[$Int,$error],false)}];CZ.methods=[{prop:"Write",name:"Write",pkg:"",typ:$funcType([CQ],[$Int,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)}];BV.methods=[{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)}];DD.methods=[{prop:"Replace",name:"Replace",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([D.Writer,$String],[$Int,$error],false)}];CV.methods=[{prop:"Replace",name:"Replace",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([D.Writer,$String],[$Int,$error],false)}];DE.methods=[{prop:"Replace",name:"Replace",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([D.Writer,$String],[$Int,$error],false)}];DF.methods=[{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([CQ],[$Int,$error],false)},{prop:"ReadAt",name:"ReadAt",pkg:"",typ:$funcType([CQ,$Int64],[$Int,$error],false)},{prop:"ReadByte",name:"ReadByte",pkg:"",typ:$funcType([],[$Uint8,$error],false)},{prop:"UnreadByte",name:"UnreadByte",pkg:"",typ:$funcType([],[$error],false)},{prop:"ReadRune",name:"ReadRune",pkg:"",typ:$funcType([],[$Int32,$Int,$error],false)},{prop:"UnreadRune",name:"UnreadRune",pkg:"",typ:$funcType([],[$error],false)},{prop:"Seek",name:"Seek",pkg:"",typ:$funcType([$Int64,$Int],[$Int64,$error],false)},{prop:"WriteTo",name:"WriteTo",pkg:"",typ:$funcType([D.Writer],[$Int64,$error],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([$String],[],false)}];CP.methods=[{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Cap",name:"Cap",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([],[],false)},{prop:"grow",name:"grow",pkg:"strings",typ:$funcType([$Int],[],false)},{prop:"Grow",name:"Grow",pkg:"",typ:$funcType([$Int],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([CQ],[$Int,$error],false)},{prop:"WriteByte",name:"WriteByte",pkg:"",typ:$funcType([$Uint8],[$error],false)},{prop:"WriteRune",name:"WriteRune",pkg:"",typ:$funcType([$Int32],[$Int,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"copyCheck",name:"copyCheck",pkg:"strings",typ:$funcType([],[],false)}];AS.init($Uint32,8);BK.init("strings",[{prop:"pattern",name:"pattern",embedded:false,exported:false,typ:$String,tag:""},{prop:"badCharSkip",name:"badCharSkip",embedded:false,exported:false,typ:CS,tag:""},{prop:"goodSuffixSkip",name:"goodSuffixSkip",embedded:false,exported:false,typ:CT,tag:""}]);BO.init("strings",[{prop:"once",name:"once",embedded:false,exported:false,typ:E.Once,tag:""},{prop:"r",name:"r",embedded:false,exported:false,typ:BP,tag:""},{prop:"oldnew",name:"oldnew",embedded:false,exported:false,typ:CL,tag:""}]);BP.init([{prop:"Replace",name:"Replace",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([D.Writer,$String],[$Int,$error],false)}]);BR.init("strings",[{prop:"value",name:"value",embedded:false,exported:false,typ:$String,tag:""},{prop:"priority",name:"priority",embedded:false,exported:false,typ:$Int,tag:""},{prop:"prefix",name:"prefix",embedded:false,exported:false,typ:$String,tag:""},{prop:"next",name:"next",embedded:false,exported:false,typ:CX,tag:""},{prop:"table",name:"table",embedded:false,exported:false,typ:CY,tag:""}]);BS.init("strings",[{prop:"root",name:"root",embedded:false,exported:false,typ:BR,tag:""},{prop:"tableSize",name:"tableSize",embedded:false,exported:false,typ:$Int,tag:""},{prop:"mapping",name:"mapping",embedded:false,exported:false,typ:CU,tag:""}]);BU.init($Uint8);BV.init("strings",[{prop:"w",name:"w",embedded:false,exported:false,typ:D.Writer,tag:""}]);BX.init("strings",[{prop:"finder",name:"finder",embedded:false,exported:false,typ:DA,tag:""},{prop:"value",name:"value",embedded:false,exported:false,typ:$String,tag:""}]);BZ.init($Uint8,256);CA.init("strings",[{prop:"replacements",name:"replacements",embedded:false,exported:false,typ:CW,tag:""},{prop:"toReplace",name:"toReplace",embedded:false,exported:false,typ:CL,tag:""}]);CB.init("strings",[{prop:"s",name:"s",embedded:false,exported:false,typ:$String,tag:""},{prop:"i",name:"i",embedded:false,exported:false,typ:$Int64,tag:""},{prop:"prevRune",name:"prevRune",embedded:false,exported:false,typ:$Int,tag:""}]);CE.init("strings",[{prop:"addr",name:"addr",embedded:false,exported:false,typ:CP,tag:""},{prop:"buf",name:"buf",embedded:false,exported:false,typ:CQ,tag:""}]);CN.init("strings",[{prop:"start",name:"start",embedded:false,exported:false,typ:$Int,tag:""},{prop:"end",name:"end",embedded:false,exported:false,typ:$Int,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=F.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}U=$toNativeArray($kindUint8,[0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["bufio"]=(function(){var $pkg={},$init,A,B,C,E,D,U,Z,AD,S,T,V,W;A=$packages["bytes"];B=$packages["errors"];C=$packages["io"];E=$packages["strings"];D=$packages["unicode/utf8"];U=$pkg.Writer=$newType(0,$kindStruct,"bufio.Writer",true,"bufio",true,function(err_,buf_,n_,wr_){this.$val=this;if(arguments.length===0){this.err=$ifaceNil;this.buf=Z.nil;this.n=0;this.wr=$ifaceNil;return;}this.err=err_;this.buf=buf_;this.n=n_;this.wr=wr_;});Z=$sliceType($Uint8);AD=$ptrType(U);V=function(a,b){var a,b,c,d,e;c=$assertType(a,AD,true);d=c[0];e=c[1];if(e&&d.buf.$length>=b){return d;}if(b<=0){b=4096;}return new U.ptr($ifaceNil,$makeSlice(Z,b),0,a);};$pkg.NewWriterSize=V;W=function(a){var a;return V(a,4096);};$pkg.NewWriter=W;U.ptr.prototype.Size=function(){var a;a=this;return a.buf.$length;};U.prototype.Size=function(){return this.$val.Size();};U.ptr.prototype.Reset=function(a){var a,b;b=this;if(b.buf===Z.nil){b.buf=$makeSlice(Z,4096);}b.err=$ifaceNil;b.n=0;b.wr=a;};U.prototype.Reset=function(a){return this.$val.Reset(a);};U.ptr.prototype.Flush=function(){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=-1;return a.err;}if(a.n===0){$s=-1;return $ifaceNil;}c=a.wr.Write($subslice(a.buf,0,a.n));$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;d=b[0];e=b[1];if(d<a.n&&$interfaceIsEqual(e,$ifaceNil)){e=C.ErrShortWrite;}if(!($interfaceIsEqual(e,$ifaceNil))){if(d>0&&d<a.n){$copySlice($subslice(a.buf,0,(a.n-d>>0)),$subslice(a.buf,d,a.n));}a.n=a.n-(d)>>0;a.err=e;$s=-1;return e;}a.n=0;$s=-1;return $ifaceNil;}return;}var $f={$blk:U.ptr.prototype.Flush,$c:true,$r,a,b,c,d,e,$s};return $f;};U.prototype.Flush=function(){return this.$val.Flush();};U.ptr.prototype.Available=function(){var a;a=this;return a.buf.$length-a.n>>0;};U.prototype.Available=function(){return this.$val.Available();};U.ptr.prototype.AvailableBuffer=function(){var a;a=this;return $subslice($subslice(a.buf,a.n),0,0);};U.prototype.AvailableBuffer=function(){return this.$val.AvailableBuffer();};U.ptr.prototype.Buffered=function(){var a;a=this;return a.n;};U.prototype.Buffered=function(){return this.$val.Buffered();};U.ptr.prototype.Write=function(a){var{a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;case 1:if(!(a.$length>d.Available()&&$interfaceIsEqual(d.err,$ifaceNil))){$s=2;continue;}e=0;if(d.Buffered()===0){$s=3;continue;}$s=4;continue;case 3:g=d.wr.Write(a);$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;e=f[0];d.err=f[1];$s=5;continue;case 4:e=$copySlice($subslice(d.buf,d.n),a);d.n=d.n+(e)>>0;h=d.Flush();$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;case 5:b=b+(e)>>0;a=$subslice(a,e);$s=1;continue;case 2:if(!($interfaceIsEqual(d.err,$ifaceNil))){i=b;j=d.err;b=i;c=j;$s=-1;return[b,c];}k=$copySlice($subslice(d.buf,d.n),a);d.n=d.n+(k)>>0;b=b+(k)>>0;l=b;m=$ifaceNil;b=l;c=m;$s=-1;return[b,c];}return;}var $f={$blk:U.ptr.prototype.Write,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,$s};return $f;};U.prototype.Write=function(a){return this.$val.Write(a);};U.ptr.prototype.WriteByte=function(a){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;if(!($interfaceIsEqual(b.err,$ifaceNil))){$s=-1;return b.err;}if(!(b.Available()<=0)){c=false;$s=3;continue s;}d=b.Flush();$s=4;case 4:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=!($interfaceIsEqual(d,$ifaceNil));case 3:if(c){$s=1;continue;}$s=2;continue;case 1:$s=-1;return b.err;case 2:(e=b.buf,f=b.n,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]=a));b.n=b.n+(1)>>0;$s=-1;return $ifaceNil;}return;}var $f={$blk:U.ptr.prototype.WriteByte,$c:true,$r,a,b,c,d,e,f,$s};return $f;};U.prototype.WriteByte=function(a){return this.$val.WriteByte(a);};U.ptr.prototype.WriteRune=function(a){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;if(((a>>>0))<128){$s=1;continue;}$s=2;continue;case 1:e=d.WriteByte(((a<<24>>>24)));$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}c=e;if(!($interfaceIsEqual(c,$ifaceNil))){f=0;g=c;b=f;c=g;$s=-1;return[b,c];}h=1;i=$ifaceNil;b=h;c=i;$s=-1;return[b,c];case 2:if(!($interfaceIsEqual(d.err,$ifaceNil))){j=0;k=d.err;b=j;c=k;$s=-1;return[b,c];}l=d.Available();if(l<4){$s=4;continue;}$s=5;continue;case 4:m=d.Flush();$s=6;case 6:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;if(!($interfaceIsEqual(d.err,$ifaceNil))){n=0;o=d.err;b=n;c=o;$s=-1;return[b,c];}l=d.Available();if(l<4){$s=7;continue;}$s=8;continue;case 7:q=d.WriteString(($encodeRune(a)));$s=9;case 9:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;b=p[0];c=p[1];r=[b,c];$s=10;case 10:return r;case 8:case 5:b=D.EncodeRune($subslice(d.buf,d.n),a);d.n=d.n+(b)>>0;s=b;t=$ifaceNil;b=s;c=t;$s=-1;return[b,c];}return;}var $f={$blk:U.ptr.prototype.WriteRune,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s};return $f;};U.prototype.WriteRune=function(a){return this.$val.WriteRune(a);};U.ptr.prototype.WriteString=function(a){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;c=0;case 1:if(!(a.length>b.Available()&&$interfaceIsEqual(b.err,$ifaceNil))){$s=2;continue;}d=$copyString($subslice(b.buf,b.n),a);b.n=b.n+(d)>>0;c=c+(d)>>0;a=$substring(a,d);e=b.Flush();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=1;continue;case 2:if(!($interfaceIsEqual(b.err,$ifaceNil))){$s=-1;return[c,b.err];}f=$copyString($subslice(b.buf,b.n),a);b.n=b.n+(f)>>0;c=c+(f)>>0;$s=-1;return[c,$ifaceNil];}return;}var $f={$blk:U.ptr.prototype.WriteString,$c:true,$r,a,b,c,d,e,f,$s};return $f;};U.prototype.WriteString=function(a){return this.$val.WriteString(a);};U.ptr.prototype.ReadFrom=function(a){var{a,aa,ab,ac,ad,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=new $Int64(0,0);c=$ifaceNil;d=this;if(!($interfaceIsEqual(d.err,$ifaceNil))){e=new $Int64(0,0);f=d.err;b=e;c=f;$s=-1;return[b,c];}g=$assertType(d.wr,C.ReaderFrom,true);h=g[0];i=g[1];j=0;case 1:if(d.Available()===0){$s=3;continue;}$s=4;continue;case 3:k=d.Flush();$s=5;case 5:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;if(!($interfaceIsEqual(l,$ifaceNil))){m=b;n=l;b=m;c=n;$s=-1;return[b,c];}case 4:if(i&&(d.Buffered()===0)){$s=6;continue;}$s=7;continue;case 6:p=h.ReadFrom(a);$s=8;case 8:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;q=o[0];r=o[1];d.err=r;b=(s=q,new $Int64(b.$high+s.$high,b.$low+s.$low));t=b;u=r;b=t;c=u;$s=-1;return[b,c];case 7:v=0;case 9:if(!(v<100)){$s=10;continue;}x=a.Read($subslice(d.buf,d.n));$s=11;case 11:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}w=x;j=w[0];c=w[1];if(!((j===0))||!($interfaceIsEqual(c,$ifaceNil))){$s=10;continue;}v=v+(1)>>0;$s=9;continue;case 10:if(v===100){y=b;z=C.ErrNoProgress;b=y;c=z;$s=-1;return[b,c];}d.n=d.n+(j)>>0;b=(aa=(new $Int64(0,j)),new $Int64(b.$high+aa.$high,b.$low+aa.$low));if(!($interfaceIsEqual(c,$ifaceNil))){$s=2;continue;}$s=1;continue;case 2:if($interfaceIsEqual(c,C.EOF)){$s=12;continue;}$s=13;continue;case 12:if(d.Available()===0){$s=14;continue;}$s=15;continue;case 14:ab=d.Flush();$s=17;case 17:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}c=ab;$s=16;continue;case 15:c=$ifaceNil;case 16:case 13:ac=b;ad=c;b=ac;c=ad;$s=-1;return[b,c];}return;}var $f={$blk:U.ptr.prototype.ReadFrom,$c:true,$r,a,aa,ab,ac,ad,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};U.prototype.ReadFrom=function(a){return this.$val.ReadFrom(a);};AD.methods=[{prop:"Size",name:"Size",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Reset",name:"Reset",pkg:"",typ:$funcType([C.Writer],[],false)},{prop:"Flush",name:"Flush",pkg:"",typ:$funcType([],[$error],false)},{prop:"Available",name:"Available",pkg:"",typ:$funcType([],[$Int],false)},{prop:"AvailableBuffer",name:"AvailableBuffer",pkg:"",typ:$funcType([],[Z],false)},{prop:"Buffered",name:"Buffered",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([Z],[$Int,$error],false)},{prop:"WriteByte",name:"WriteByte",pkg:"",typ:$funcType([$Uint8],[$error],false)},{prop:"WriteRune",name:"WriteRune",pkg:"",typ:$funcType([$Int32],[$Int,$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)},{prop:"ReadFrom",name:"ReadFrom",pkg:"",typ:$funcType([C.Reader],[$Int64,$error],false)}];U.init("bufio",[{prop:"err",name:"err",embedded:false,exported:false,typ:$error,tag:""},{prop:"buf",name:"buf",embedded:false,exported:false,typ:Z,tag:""},{prop:"n",name:"n",embedded:false,exported:false,typ:$Int,tag:""},{prop:"wr",name:"wr",embedded:false,exported:false,typ:C.Writer,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.ErrTooLong=B.New("bufio.Scanner: token too long");$pkg.ErrNegativeAdvance=B.New("bufio.Scanner: SplitFunc returns negative advance count");$pkg.ErrAdvanceTooFar=B.New("bufio.Scanner: SplitFunc returns advance count beyond input");$pkg.ErrBadReadCount=B.New("bufio.Scanner: Read returned impossible count");$pkg.ErrFinalToken=B.New("final token");$pkg.ErrInvalidUnreadByte=B.New("bufio: invalid use of UnreadByte");$pkg.ErrInvalidUnreadRune=B.New("bufio: invalid use of UnreadRune");$pkg.ErrBufferFull=B.New("bufio: buffer full");$pkg.ErrNegativeCount=B.New("bufio: negative count");S=B.New("bufio: reader returned negative count from Read");T=B.New("bufio: writer returned negative count from Write");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["github.com/88250/lute/html/atom"]=(function(){var $pkg={},$init,B,A,C,D,E,F;B=$pkg.Atom=$newType(4,$kindUint32,"atom.Atom",true,"github.com/88250/lute/html/atom",true,null);B.prototype.String=function(){var a,b,c;a=this.$val;b=(((a>>>8>>>0)>>>0));c=((((a&255)>>>0)>>>0));if((b+c>>>0)>1834){return"";}return $substring("abbradiogrouparamainavalueaccept-charsetbodyaccesskeygenobrbasefontimeupdateviacacheightmlabelooptgroupatternoembedetailsampictureversedfnoframesetdirnameterowspanomoduleacronymalignmarkbdialogallowpaymentrequestrikeytypeallowusermediagroupingaltfooterubyasyncanvasidefaultitleaudioncancelautofocusandboxmplaceholderautoplaysinlinebdoncanplaythrough1bgsoundisabledivarbigblinkindraggablegendblockquotebuttonabortcitempropenoncecolgrouplaintextrackcolorcolspannotation-xmlcommandcontrolshapecoordslotranslatecrossoriginsmallowfullscreenoscriptfacenterfieldsetfigcaptionafterprintegrityfigurequiredforeignObjectforeignobjectformactionautocompleteerrorformenctypemustmatchallengeformmethodformnovalidatetimeformtargethgrouposterhiddenhigh2hreflanghttp-equivideonclickiframeimageimglyph3isindexismappletitemtypemarqueematheadersortedmaxlength4minlength5mtextareadonlymultiplemutedoncloseamlessourceoncontextmenuitemidoncopyoncuechangeoncutondblclickondragendondragenterondragexitemreferrerpolicyondragleaveondragoverondragstarticleondropzonemptiedondurationchangeonendedonerroronfocuspaceronhashchangeoninputmodeloninvalidonkeydownloadonkeypresspellcheckedonkeyupreloadonlanguagechangeonloadeddatalistingonloadedmetadatabindexonloadendonloadstartonmessageerroronmousedownonmouseenteronmouseleaveonmousemoveonmouseoutputonmouseoveronmouseupromptonmousewheelonofflineononlineonpagehidesclassectionbluronpageshowbronpastepublicontenteditableonpausemaponplayingonpopstateonprogressrcdocodeferonratechangeonrejectionhandledonresetonresizesrclangonscrollonsecuritypolicyviolationauxclickonseekedonseekingonselectedonshowidth6onsortableonstalledonstorageonsubmitemscopedonsuspendontoggleonunhandledrejectionbeforeprintonunloadonvolumechangeonwaitingonwheeloptimumanifestrongoptionbeforeunloaddressrcsetstylesummarysupsvgsystemplateworkertypewrap",b,(b+c>>>0));};$ptrType(B).prototype.String=function(){return new B(this.$get()).String();};B.prototype.string=function(){var a;a=this.$val;return $substring("abbradiogrouparamainavalueaccept-charsetbodyaccesskeygenobrbasefontimeupdateviacacheightmlabelooptgroupatternoembedetailsampictureversedfnoframesetdirnameterowspanomoduleacronymalignmarkbdialogallowpaymentrequestrikeytypeallowusermediagroupingaltfooterubyasyncanvasidefaultitleaudioncancelautofocusandboxmplaceholderautoplaysinlinebdoncanplaythrough1bgsoundisabledivarbigblinkindraggablegendblockquotebuttonabortcitempropenoncecolgrouplaintextrackcolorcolspannotation-xmlcommandcontrolshapecoordslotranslatecrossoriginsmallowfullscreenoscriptfacenterfieldsetfigcaptionafterprintegrityfigurequiredforeignObjectforeignobjectformactionautocompleteerrorformenctypemustmatchallengeformmethodformnovalidatetimeformtargethgrouposterhiddenhigh2hreflanghttp-equivideonclickiframeimageimglyph3isindexismappletitemtypemarqueematheadersortedmaxlength4minlength5mtextareadonlymultiplemutedoncloseamlessourceoncontextmenuitemidoncopyoncuechangeoncutondblclickondragendondragenterondragexitemreferrerpolicyondragleaveondragoverondragstarticleondropzonemptiedondurationchangeonendedonerroronfocuspaceronhashchangeoninputmodeloninvalidonkeydownloadonkeypresspellcheckedonkeyupreloadonlanguagechangeonloadeddatalistingonloadedmetadatabindexonloadendonloadstartonmessageerroronmousedownonmouseenteronmouseleaveonmousemoveonmouseoutputonmouseoveronmouseupromptonmousewheelonofflineononlineonpagehidesclassectionbluronpageshowbronpastepublicontenteditableonpausemaponplayingonpopstateonprogressrcdocodeferonratechangeonrejectionhandledonresetonresizesrclangonscrollonsecuritypolicyviolationauxclickonseekedonseekingonselectedonshowidth6onsortableonstalledonstorageonsubmitemscopedonsuspendontoggleonunhandledrejectionbeforeprintonunloadonvolumechangeonwaitingonwheeloptimumanifestrongoptionbeforeunloaddressrcsetstylesummarysupsvgsystemplateworkertypewrap",(a>>>8>>>0),((a>>>8>>>0)+((a&255)>>>0)>>>0));};$ptrType(B).prototype.string=function(){return new B(this.$get()).string();};C=function(a,b){var a,b,c,d,e;c=b;d=0;while(true){if(!(d<c.$length)){break;}e=d;a=(a^(((((e<0||e>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+e])>>>0))))>>>0;a=$imul(a,(16777619))>>>0;d++;}return a;};D=function(a,b){var a,b,c,d,e,f;c=b;d=0;while(true){if(!(d<c.$length)){break;}e=d;f=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);if(!((a.charCodeAt(e)===f))){return false;}d++;}return true;};E=function(a){var a,b,c,d,e,f;if((a.$length===0)||a.$length>25){return 0;}b=C(2177757454,a);d=(c=(b&511)>>>0,((c<0||c>=A.length)?($throwRuntimeError("index out of range"),undefined):A[c]));if((((((d&255)>>>0)>>0))===a.$length)&&D(new B(d).string(),a)){return d;}f=(e=(((b>>>16>>>0))&511)>>>0,((e<0||e>=A.length)?($throwRuntimeError("index out of range"),undefined):A[e]));if((((((f&255)>>>0)>>0))===a.$length)&&D(new B(f).string(),a)){return f;}return 0;};$pkg.Lookup=E;F=function(a){var a,b;b=E(a);if(!((b===0))){return new B(b).String();}return($bytesToString(a));};$pkg.String=F;B.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"string",name:"string",pkg:"github.com/88250/lute/html/atom",typ:$funcType([],[$String],false)}];$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:A=$toNativeArray($kindUint32,[0,58890,189444,0,11273,35592,0,408072,463110,0,411909,0,166155,79618,235275,0,84739,70917,96777,0,192773,176386,231172,184070,0,62982,174086,178184,103687,17934,65285,302342,0,71944,403720,197125,382994,0,95236,335110,209156,327436,360199,369673,115719,0,0,114437,390404,190474,0,1537,350474,429076,0,272903,0,0,15112,0,0,0,0,4867,96004,218888,198662,0,45570,0,185606,462339,361220,147209,361990,0,109315,100106,216834,0,375048,390405,214274,0,0,0,208901,54791,374538,281353,241929,0,0,238085,276230,109320,0,0,91394,0,0,15362,346121,210694,0,298256,0,0,277772,38404,62725,352516,212227,0,125446,199938,452366,39940,408582,38917,232198,343052,376838,0,0,113157,0,204552,0,0,41986,269064,209159,379916,395289,0,304392,321547,126724,307216,6662,157702,0,0,0,439054,8455,161299,49427,10244,68103,408584,138756,124165,0,427016,0,0,412418,46596,0,2817,0,0,437000,23812,91144,0,0,0,271111,45066,0,424713,217349,413446,105736,0,0,422153,94981,0,241926,42754,159236,76039,35589,5381,418313,0,0,43527,104962,0,514,140808,167949,41480,27655,433677,102662,193799,459783,0,0,64260,353285,259083,143623,0,0,0,56590,315147,0,0,0,92931,305412,208388,281349,0,0,256522,187906,0,111113,0,324364,0,0,293127,290819,0,220936,47619,212233,52993,401162,0,359427,0,15108,451334,0,267024,0,35080,0,263432,0,423173,32776,244235,260613,77571,391431,198403,0,0,257,152579,67333,280839,218628,173066,468484,0,146434,289546,26626,0,214786,222981,62211,378116,28162,247050,0,40708,0,448264,231176,363271,0,442633,0,312841,0,228877,0,355590,261127,37635,61188,150536,283913,45317,0,363012,412930,115716,142858,286217,420616,85257,461571,3073,0,264713,233734,105476,239370,0,330507,0,421123,296707,24328,0,0,0,39943,227334,136712,107268,132099,152589,371978,0,167175,161294,217608,0,161804,87810,122376,67842,0,144908,0,155917,206599,367111,386562,20998,214787,37639,127497,22020,214793,296455,463880,253707,14850,0,376835,449798,0,30724,455431,348424,0,78091,181254,132613,444935,117002,291850,29191,66310,73993,3077,0,287496,283139,224263,47363,203014,188420,389384,0,302348,0,52226,180234,69637,458501,53766,368134,195590,4100,0,31495,0,0,202245,0,304388,22789,0,250126,87554,0,341510,354311,0,446727,187140,89090,416009,93443,16900,0,422914,209158,317961,108037,159242,139270,14084,365829,305415,98566,0,170761,149510,58885,0,0,55556,16132,317966,225544,34563,378629,49923,104963,336651,176650,465930,0,249095,0,0,1,202755,16396,89607,12806,9989,0,0,410630,0,9473,26119,0,0,0,85264,0,186114,456966,94211,0,413960,294919,0,369670,0,309252,262918,0,393224,129803,357130,4,37378,363279,160262,81931,274695,188424,0,333322,387591,80904,405769,0,423174,0,778,0,229387,339465,0,182790,133135,310792,0,0,200455,6670,175630,0,0,117006,28165,137222,47878,120583]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["github.com/88250/lute/lex"]=(function(){var $pkg={},$init,A,B,C,AN,AP,AQ,AR,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK,AL,AM,AO;A=$packages["bytes"];B=$packages["unicode"];C=$packages["unicode/utf8"];AN=$pkg.Lexer=$newType(0,$kindStruct,"lex.Lexer",true,"github.com/88250/lute/lex",true,function(input_,length_,offset_,width_){this.$val=this;if(arguments.length===0){this.input=AP.nil;this.length=0;this.offset=0;this.width=0;return;}this.input=input_;this.length=length_;this.offset=offset_;this.width=width_;});AP=$sliceType($Uint8);AQ=$sliceType(AP);AR=$ptrType(AN);D=function(a){var a;return(32===a)||(10===a)||(9===a)||(11===a)||(12===a)||(13===a);};$pkg.IsWhitespace=D;E=function(a){var a;return B.IsSpace(a)||B.Is(B.Zs,a);};$pkg.IsUnicodeWhitespace=E;F=function(a){var a;return 48<=a&&57>=a;};$pkg.IsDigit=F;G=function(a){var a;return F(a)||a>=97&&a<=102||a>=65&&a<=70;};$pkg.IsHexDigit=G;H=function(a){var a;if(a>=97&&a<=122){return(a-97<<24>>>24)+65<<24>>>24;}return a;};$pkg.TokenToUpper=H;I=function(a){var a;return(33<=a&&47>=a)||(58<=a&&64>=a)||(91<=a&&96>=a)||(123<=a&&126>=a);};$pkg.IsASCIIPunct=I;J=function(a){var a;return(65<=a&&90>=a)||(97<=a&&122>=a);};$pkg.IsASCIILetter=J;K=function(a){var a;return(65<=a&&90>=a)||(97<=a&&122>=a)||(48<=a&&57>=a);};$pkg.IsASCIILetterNum=K;L=function(a){var a,b,c,d;b=a;c=0;while(true){if(!(c<b.$length)){break;}d=((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c]);if(!K(d)){return false;}c++;}return true;};$pkg.IsASCIILetterNums=L;M=function(a){var a;return(65<=a&&90>=a)||(97<=a&&122>=a)||(48<=a&&57>=a)||(45===a);};$pkg.IsASCIILetterNumHyphen=M;N=function(a){var a;return B.IsControl(((a>>0)));};$pkg.IsControl=N;O=function(a){var a,b,c,d;b=a;c=0;while(true){if(!(c<b.$length)){break;}d=((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c]);if(!((32===d))){return false;}c++;}return true;};$pkg.IsBlank=O;P=function(a,b){var a,b,c,d,e,f,g;c=AQ.nil;d=a.$length;e=0;f=0;g=AP.nil;while(true){if(!(e<d)){break;}f=((e<0||e>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+e]);if(!((b===f))){g=$append(g,f);e=e+(1)>>0;continue;}c=$append(c,g);g=new AP([]);e=e+(1)>>0;}if(0<g.$length){c=$append(c,g);}return c;};$pkg.Split=P;Q=function(a,b){var a,b,c,d,e,f,g;c=AQ.nil;d=a.$length;e=0;f=AP.nil;g=0;while(true){if(!(g<d)){break;}e=((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]);if(!((b===e))||AC(a,g)){f=$append(f,e);g=g+(1)>>0;continue;}c=$append(c,f);f=new AP([]);g=g+(1)>>0;}if(0<f.$length){c=$append(c,f);}return c;};$pkg.SplitWithoutBackslashEscape=Q;R=function(a,b,c){var a,b,c,d,e,f,g;d=a;e=0;while(true){if(!(e<d.$length)){break;}f=e;g=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);if(g===b){((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]=c);}e++;}return a;};$pkg.ReplaceAll=R;S=function(a){var a,b,c,d,e;b=a.$length;c=0;d=b-1>>0;while(true){if(!(0<=d)){break;}c=((d<0||d>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+d]);if(!((10===c))&&!((32===c))){break;}if((10===(e=d-1>>0,((e<0||e>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+e])))&&((32===c)||(10===c))){a=$subslice(a,0,d);}d=d-(1)>>0;}return a;};$pkg.ReplaceNewlineSpace=S;T=function(a){var a,b,c;b=AP.nil;c=U(a);b=c[2];return b;};$pkg.TrimWhitespace=T;U=function(a){var a,b,c,d,e,f,g,h,i,j,k,l;b=AP.nil;c=AP.nil;d=AP.nil;e=a.$length;if(0===e){f=AP.nil;g=AP.nil;h=a;b=f;c=g;d=h;return[b,c,d];}i=0;j=e-1>>0;k=i;l=j;while(true){if(!(k<e)){break;}if(!D(((k<0||k>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+k]))){break;}k=k+(1)>>0;}b=$subslice(a,0,k);if(k===e){k=k-(1)>>0;}while(true){if(!(0<=l)){break;}if(!D(((l<0||l>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+l]))){break;}l=l-(1)>>0;}if(l<k){l=k-1>>0;}if(0<l){c=$subslice(a,(l+1>>0),e);}d=$subslice(a,k,(l+1>>0));return[b,c,d];};$pkg.Trim=U;V=function(a){var a,b,c,d,e,f,g,h,i;b=AP.nil;c=AP.nil;d=a.$length;if(1>d){e=AP.nil;f=a;b=e;c=f;return[b,c];}g=d-1>>0;while(true){if(!(0<=g)){break;}if(!D(((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]))){break;}b=$append(b,((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]));g=g-(1)>>0;}h=b;i=$subslice(a,0,(g+1>>0));b=h;c=i;return[b,c];};$pkg.TrimRight=V;W=function(a){var a,b,c,d,e,f,g,h,i;b=AP.nil;c=AP.nil;d=a.$length;if(1>d){e=AP.nil;f=a;b=e;c=f;return[b,c];}g=0;while(true){if(!(g<d)){break;}if(!D(((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]))){break;}b=$append(b,((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]));g=g+(1)>>0;}h=b;i=$subslice(a,g);b=h;c=i;return[b,c];};$pkg.TrimLeft=W;X=function(a,b){var a,b,c,d;c=0;d=a.$length;while(true){if(!(c<d)){break;}if(!((b===((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c])))){break;}c=c+(1)>>0;}return c;};$pkg.Accept=X;Y=function(a,b){var a,b,c,d,e,f,g,h,i;c=0;d=a.$length;e=b.$length;f=0;while(true){if(!(f<d)){break;}g=$subslice(a,f);h=0;while(true){if(!(h<e)){break;}i=((h<0||h>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+h]);c=Z(g,i);if(0<=c){return c;}h=h+(1)>>0;}f=f+(1)>>0;}c=-1;return c;};$pkg.AcceptTokenss=Y;Z=function(a,b){var a,b,c,d;c=0;d=b.$length;while(true){if(!(c<d)){break;}if(!((((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c])===((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c])))){c=-1;return c;}c=c+(1)>>0;}return c;};$pkg.AcceptTokens=Z;AA=function(a){var a,b,c,d;b=a;c=0;while(true){if(!(c<b.$length)){break;}d=((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c]);if(!((32===d))&&!((9===d))&&!((10===d))){return false;}c++;}return true;};$pkg.IsBlankLine=AA;AB=function(a){var a,b,c,d,e,f,g;b=AQ.nil;c=0;b=$append(b,new AP([]));d=false;e=a;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);if(D(g)){if(!d){c=c+(1)>>0;b=$append(b,new AP([]));}d=true;}else{((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c]=$append(((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c]),g));d=false;}f++;}return b;};$pkg.SplitWhitespace=AB;AC=function(a,b){var a,b,c,d,e;if(!I(((b<0||b>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+b]))){return false;}c=0;d=b-1>>0;while(true){if(!(0<=d)){break;}if(!((92===((d<0||d>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+d])))){break;}c=c+(1)>>0;d=d-(1)>>0;}return!((0===(e=c%2,e===e?e:$throwRuntimeError("integer divide by zero"))));};$pkg.IsBackslashEscapePunct=AC;AD=function(a){var a,b,c,d,e,f,g;b=0;c=0;d=0;e=a;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);if(10===g){b=b+(1)>>0;}else if(32===g){c=c+(1)>>0;}else if(9===g){d=d+(1)>>0;}f++;}return[b,c,d];};$pkg.StatWhitespace=AD;AE=function(a){var a,b,c,d,e,f,g,h,i,j;b=false;c=AP.nil;d=AP.nil;e=W(a);c=e[0];d=e[1];f=AD(c);g=f[0];if(1<g){h=false;i=AP.nil;j=a;b=h;c=i;d=j;return[b,c,d];}b=true;return[b,c,d];};$pkg.Spnl=AE;AF=function(a,b){var a,b;if(b<a.$length){return((b<0||b>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+b]);}return 0;};$pkg.Peek=AF;AG=function(a){var a,b,c;b=0;c=0;while(true){if(!(c<a.$length)){break;}if(!(((((((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c])&192)>>>0))===128))){if(((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c])<127){b=b+(1)>>0;}else{b=b+(2)>>0;}}c=c+(1)>>0;}return b;};$pkg.BytesShowLength=AG;AH=function(a){var{a,b,c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=new A.Buffer.ptr(AP.nil,0,0);c=0;d=0;e=0;case 1:if(!(e<a.length)){$s=2;continue;}f=a.charCodeAt(e);if(124===f){$s=3;continue;}$s=4;continue;case 3:if(!((92===c))){$s=5;continue;}$s=6;continue;case 5:g=b.WriteByte(92);$s=7;case 7:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;case 6:if(1<=d){$s=8;continue;}$s=9;continue;case 8:h=b.WriteByte(92);$s=10;case 10:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;case 9:case 4:c=f;if(92===c){d=d+(1)>>0;}else{d=0;}i=b.WriteByte(f);$s=11;case 11:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;e=e+(1)>>0;$s=1;continue;case 2:$s=-1;return b.String();}return;}var $f={$blk:AH,$c:true,$r,a,b,c,d,e,f,g,h,i,$s};return $f;};$pkg.RepeatBackslashBeforePipe=AH;AI=function(a){var a,b,c;b=0;while(true){if(!(b<a.$length)){break;}if(AK(((b<0||b>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+b]))){c=$appendSlice(new AP([92]),$subslice(a,b));a=$subslice(a,0,b);a=$appendSlice(a,c);b=b+(1)>>0;}b=b+(1)>>0;}return a;};$pkg.EscapeMarkers=AI;AJ=function(a){var a,b,c;b=0;while(true){if(!(b<a.$length)){break;}if(AL(((b<0||b>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+b]))){c=$appendSlice(new AP([92]),$subslice(a,b));a=$subslice(a,0,b);a=$appendSlice(a,c);b=b+(1)>>0;}b=b+(1)>>0;}return a;};$pkg.EscapeProtyleMarkers=AJ;AK=function(a){var a,b;b=a;if((b===(42))||(b===(95))||(b===(92))||(b===(96))||(b===(126))||(b===(36))){return true;}else{return false;}};$pkg.IsCommonInlineMarker=AK;AL=function(a){var a,b;b=a;if((b===(42))||(b===(95))||(b===(92))||(b===(96))||(b===(126))||(b===(36))||(b===(61))||(b===(94))||(b===(60))||(b===(62))){return true;}else{return false;}};$pkg.IsProtyleInlineMarker=AL;AM=function(a){var a,b;b=a;if((b===(42))||(b===(95))||(b===(91))||(b===(33))||(b===(10))||(b===(92))||(b===(96))||(b===(60))||(b===(93))||(b===(38))||(b===(126))||(b===(36))||(b===(123))||(b===(40))||(b===(61))||(b===(35))){return true;}else{return false;}};$pkg.IsMarker=AM;AO=function(a){var a,b,c,d;b=AR.nil;b=new AN.ptr(a,a.$length,0,0);if(0<b.length&&!((10===(c=b.input,d=b.length-1>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]))))){b.input=$append(b.input,10);b.length=b.length+(1)>>0;}return b;};$pkg.NewLexer=AO;AN.ptr.prototype.NextLine=function(){var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;a=AP.nil;b=this;if(b.offset>=b.length){return a;}c=0;d=0;e=c;f=d;g=b.offset;while(true){if(!(g<b.length)){break;}e=(h=b.input,((g<0||g>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+g]));if(10===e){g=g+(1)>>0;break;}else if(13===e){if(g<(b.length-1>>0)){f=(i=b.input,j=g+1>>0,((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]));if(10===f){b.input=$appendSlice($subslice(b.input,0,g),$subslice(b.input,(g+1>>0)));b.length=b.length-(1)>>0;}else{(k=b.input,((g<0||g>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+g]=10));}}else{(l=b.input,((g<0||g>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+g]=10));}g=g+(1)>>0;break;}else if(0===e){b.input=$append(b.input,0,0);$copySlice($subslice(b.input,(g+2>>0)),$subslice(b.input,g));m=239;n=191;o=189;(p=b.input,((g<0||g>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+g]=m));(q=b.input,r=g+1>>0,((r<0||r>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+r]=n));(s=b.input,t=g+2>>0,((t<0||t>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+t]=o));b.length=b.length+(2)>>0;b.width=3;g=g+(b.width)>>0;continue;}if(128<=e){u=C.DecodeRune($subslice(b.input,g));b.width=u[1];}else{b.width=1;}g=g+(b.width)>>0;}a=$subslice(b.input,b.offset,g);b.offset=g;return a;};AN.prototype.NextLine=function(){return this.$val.NextLine();};AR.methods=[{prop:"NextLine",name:"NextLine",pkg:"",typ:$funcType([],[AP],false)}];AN.init("github.com/88250/lute/lex",[{prop:"input",name:"input",embedded:false,exported:false,typ:AP,tag:""},{prop:"length",name:"length",embedded:false,exported:false,typ:$Int,tag:""},{prop:"offset",name:"offset",embedded:false,exported:false,typ:$Int,tag:""},{prop:"width",name:"width",embedded:false,exported:false,typ:$Int,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["github.com/88250/lute/html"]=(function(){var $pkg={},$init,J,E,F,H,I,D,G,A,B,C,O,P,Q,R,S,Z,AG,AI,AJ,BK,BO,BQ,BS,BT,DC,DD,DE,DF,DG,DH,DI,DJ,DK,DL,DM,DN,DO,DP,DQ,DR,V,W,AB,AF,AH,BP,DB,BY,BZ,CA,CB,CC,CD,CE,CF,CQ,CY,CZ,K,L,M,N,T,U,X,Y,AA,AC,AD,AE,AK,AL,AM,AN,AO,AP,AQ,AR,AS,AT,AU,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BF,BG,BH,BI,BJ,BM,BN,BR,BU,BV,BW,BX,CG,CH,CI,CJ,CK,CL,CM,CR,CS,CT,CU,CV,CW,CX,DA;J=$packages["bufio"];E=$packages["bytes"];F=$packages["errors"];H=$packages["github.com/88250/lute/editor"];I=$packages["github.com/88250/lute/html/atom"];D=$packages["github.com/88250/lute/lex"];G=$packages["io"];A=$packages["strconv"];B=$packages["strings"];C=$packages["unicode/utf8"];O=$pkg.TokenType=$newType(4,$kindUint32,"html.TokenType",true,"github.com/88250/lute/html",true,null);P=$pkg.Attribute=$newType(0,$kindStruct,"html.Attribute",true,"github.com/88250/lute/html",true,function(Namespace_,Key_,Val_){this.$val=this;if(arguments.length===0){this.Namespace="";this.Key="";this.Val="";return;}this.Namespace=Namespace_;this.Key=Key_;this.Val=Val_;});Q=$pkg.Token=$newType(0,$kindStruct,"html.Token",true,"github.com/88250/lute/html",true,function(Type_,DataAtom_,Data_,Attr_){this.$val=this;if(arguments.length===0){this.Type=0;this.DataAtom=0;this.Data="";this.Attr=DG.nil;return;}this.Type=Type_;this.DataAtom=DataAtom_;this.Data=Data_;this.Attr=Attr_;});R=$pkg.span=$newType(0,$kindStruct,"html.span",true,"github.com/88250/lute/html",false,function(start_,end_){this.$val=this;if(arguments.length===0){this.start=0;this.end=0;return;}this.start=start_;this.end=end_;});S=$pkg.Tokenizer=$newType(0,$kindStruct,"html.Tokenizer",true,"github.com/88250/lute/html",true,function(r_,tt_,err_,readErr_,raw_,buf_,maxBuf_,data_,pendingAttr_,attr_,nAttrReturned_,rawTag_,textIsRaw_,convertNUL_,allowCDATA_){this.$val=this;if(arguments.length===0){this.r=$ifaceNil;this.tt=0;this.err=$ifaceNil;this.readErr=$ifaceNil;this.raw=new R.ptr(0,0);this.buf=DC.nil;this.maxBuf=0;this.data=new R.ptr(0,0);this.pendingAttr=DJ.zero();this.attr=DK.nil;this.nAttrReturned=0;this.rawTag="";this.textIsRaw=false;this.convertNUL=false;this.allowCDATA=false;return;}this.r=r_;this.tt=tt_;this.err=err_;this.readErr=readErr_;this.raw=raw_;this.buf=buf_;this.maxBuf=maxBuf_;this.data=data_;this.pendingAttr=pendingAttr_;this.attr=attr_;this.nAttrReturned=nAttrReturned_;this.rawTag=rawTag_;this.textIsRaw=textIsRaw_;this.convertNUL=convertNUL_;this.allowCDATA=allowCDATA_;});Z=$pkg.writer=$newType(8,$kindInterface,"html.writer",true,"github.com/88250/lute/html",false,null);AG=$pkg.parser=$newType(0,$kindStruct,"html.parser",true,"github.com/88250/lute/html",false,function(tokenizer_,tok_,hasSelfClosingToken_,doc_,oe_,afe_,head_,form_,scripting_,framesetOK_,templateStack_,im_,originalIM_,fosterParenting_,quirks_,fragment_,context_){this.$val=this;if(arguments.length===0){this.tokenizer=DO.nil;this.tok=new Q.ptr(0,0,"",DG.nil);this.hasSelfClosingToken=false;this.doc=DE.nil;this.oe=BS.nil;this.afe=BS.nil;this.head=DE.nil;this.form=DE.nil;this.scripting=false;this.framesetOK=false;this.templateStack=BT.nil;this.im=$throwNilPointerError;this.originalIM=$throwNilPointerError;this.fosterParenting=false;this.quirks=false;this.fragment=false;this.context=DE.nil;return;}this.tokenizer=tokenizer_;this.tok=tok_;this.hasSelfClosingToken=hasSelfClosingToken_;this.doc=doc_;this.oe=oe_;this.afe=afe_;this.head=head_;this.form=form_;this.scripting=scripting_;this.framesetOK=framesetOK_;this.templateStack=templateStack_;this.im=im_;this.originalIM=originalIM_;this.fosterParenting=fosterParenting_;this.quirks=quirks_;this.fragment=fragment_;this.context=context_;});AI=$pkg.scope=$newType(4,$kindInt,"html.scope",true,"github.com/88250/lute/html",false,null);AJ=$pkg.insertionMode=$newType(4,$kindFunc,"html.insertionMode",true,"github.com/88250/lute/html",false,null);BK=$pkg.ParseOption=$newType(4,$kindFunc,"html.ParseOption",true,"github.com/88250/lute/html",true,null);BO=$pkg.NodeType=$newType(4,$kindUint32,"html.NodeType",true,"github.com/88250/lute/html",true,null);BQ=$pkg.Node=$newType(0,$kindStruct,"html.Node",true,"github.com/88250/lute/html",true,function(Parent_,FirstChild_,LastChild_,PrevSibling_,NextSibling_,Type_,DataAtom_,Data_,Namespace_,Attr_){this.$val=this;if(arguments.length===0){this.Parent=DE.nil;this.FirstChild=DE.nil;this.LastChild=DE.nil;this.PrevSibling=DE.nil;this.NextSibling=DE.nil;this.Type=0;this.DataAtom=0;this.Data="";this.Namespace="";this.Attr=DG.nil;return;}this.Parent=Parent_;this.FirstChild=FirstChild_;this.LastChild=LastChild_;this.PrevSibling=PrevSibling_;this.NextSibling=NextSibling_;this.Type=Type_;this.DataAtom=DataAtom_;this.Data=Data_;this.Namespace=Namespace_;this.Attr=Attr_;});BS=$pkg.nodeStack=$newType(12,$kindSlice,"html.nodeStack",true,"github.com/88250/lute/html",false,null);BT=$pkg.insertionModeStack=$newType(12,$kindSlice,"html.insertionModeStack",true,"github.com/88250/lute/html",false,null);DC=$sliceType($Uint8);DD=$sliceType(I.Atom);DE=$ptrType(BQ);DF=$ptrType(P);DG=$sliceType(DF);DH=$sliceType($String);DI=$arrayType($Uint8,2);DJ=$arrayType(R,2);DK=$sliceType(DJ);DL=$ptrType(BS);DM=$ptrType(BT);DN=$sliceType(BK);DO=$ptrType(S);DP=$sliceType(DE);DQ=$sliceType($Int32);DR=$ptrType(AG);K=function(a){var a,b,c,d;b=DC.nil;if(DC.nil===a){return b;}a=(new DC($stringToBytes(L(($bytesToString(a))))));c=a.$length;b=$makeSlice(DC,0,c);d=0;while(true){if(!(d<c)){break;}if(D.IsBackslashEscapePunct(a,d)){b=$subslice(b,0,(b.$length-1>>0));}b=$append(b,((d<0||d>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+d]));d=d+(1)>>0;}return b;};$pkg.UnescapeBytes=K;L=function(a){var a,b,c,d,e,f,g,h,i,j,k;b=B.IndexByte(a,38);if(b<0){return a;}c=false;d="";e=0;while(true){if(!(b<a.length)){break;}if(a.charCodeAt(b)===38){f=M($substring(a,b));d=f[0];e=f[1];if(e>0){c=true;break;}}b=b+(1)>>0;}if(!c){return a;}g=$makeSlice(DC,((a.length-e>>0)+d.length>>0));$copyString($subslice(g,0,b),a);h=$copyString($subslice(g,b),d);i=b+h>>0;b=b+(e)>>0;while(true){if(!(b<a.length)){break;}j=a.charCodeAt(b);if(j===38){k=M($substring(a,b));d=k[0];e=k[1];if(e>0){h=$copyString($subslice(g,i),d);i=i+(h)>>0;b=b+(e)>>0;continue;}}((i<0||i>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+i]=j);i=i+(1)>>0;b=b+(1)>>0;}return($bytesToString($subslice(g,0,i)));};$pkg.HtmlUnescapeString=L;M=function(a){var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;b=0;c=0;d=1;while(true){if(!(d<a.length)){break;}e=a.charCodeAt(d);f=b;if(f===(0)){if((e===35)){b=1;}else if(D.IsASCIILetter(e)){c=1;b=2;}else{return["",0];}}else if(f===(1)){if((e===120)||(e===88)){b=3;}else if(D.IsDigit(e)){c=1;b=4;}else{return["",0];}}else if(f===(2)){if(D.IsASCIILetterNum(e)){c=c+(1)>>0;if(c>31){return["",0];}}else if((e===59)){g=(h=$mapIndex($pkg.Entities,$String.keyFor($substring(a,(d-c>>0),(d+1>>0)))),h!==undefined?[h.v,true]:["",false]);i=g[0];j=g[1];if(j){return[i,d+1>>0];}return["",0];}else{return["",0];}}else if(f===(3)){if(D.IsHexDigit(e)){c=1;b=5;}else{return["",0];}}else if(f===(4)){if(D.IsDigit(e)){c=c+(1)>>0;if(c>8){return["",0];}}else if((e===59)){k=A.ParseInt($substring(a,(d-c>>0),d),10,32);l=k[0];if(!N(l)){return["\xEF\xBF\xBD",d+1>>0];}return[($encodeRune((((l.$low+((l.$high>>31)*4294967296))>>0)))),d+1>>0];}else{return["",0];}}else if(f===(5)){if(D.IsHexDigit(e)){c=c+(1)>>0;if(c>8){return["",0];}}else if((e===59)){m=A.ParseInt($substring(a,(d-c>>0),d),16,32);n=m[0];o=m[1];if(!($interfaceIsEqual($ifaceNil,o))){return["\xEF\xBF\xBD",d+1>>0];}if(!N(n)){return["\xEF\xBF\xBD",d+1>>0];}return[($encodeRune((((n.$low+((n.$high>>31)*4294967296))>>0)))),d+1>>0];}else{return["",0];}}d=d+(1)>>0;}return["",0];};N=function(a){var a,b,c;if(!C.ValidRune((((a.$low+((a.$high>>31)*4294967296))>>0)))){return false;}else if((a.$high>0||(a.$high===0&&a.$low>=64976))&&(a.$high<0||(a.$high===0&&a.$low<=65007))){return false;}else if((b=new $Int64(a.$high&0,(a.$low&65535)>>>0),(b.$high===0&&b.$low===65535))||(c=new $Int64(a.$high&0,(a.$low&65535)>>>0),(c.$high===0&&c.$low===65534))){return false;}else if((a.$high>0||(a.$high===0&&a.$low>=0))&&(a.$high<0||(a.$high===0&&a.$low<=8))){return false;}else if((a.$high===0&&a.$low===11)){return false;}else if((a.$high>0||(a.$high===0&&a.$low>=14))&&(a.$high<0||(a.$high===0&&a.$low<=31))){return false;}else if((a.$high>0||(a.$high===0&&a.$low>=127))&&(a.$high<0||(a.$high===0&&a.$low<=159))){return false;}return true;};O.prototype.String=function(){var a,b;a=this.$val;b=a;if(b===(0)){return"Error";}else if(b===(1)){return"Text";}else if(b===(2)){return"StartTag";}else if(b===(3)){return"EndTag";}else if(b===(4)){return"SelfClosingTag";}else if(b===(5)){return"Comment";}else if(b===(6)){return"Doctype";}return"Invalid("+A.Itoa(((a>>0)))+")";};$ptrType(O).prototype.String=function(){return new O(this.$get()).String();};Q.ptr.prototype.tagString=function(){var{a,b,c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;if(a.Attr.$length===0){$s=-1;return a.Data;}b=E.NewBufferString(a.Data);c=a.Attr;d=0;case 1:if(!(d<c.$length)){$s=2;continue;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);if(e.Key==="caretreplacement"){$s=3;continue;}$s=4;continue;case 3:f=b.WriteString("caretreplacement");$s=5;case 5:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;d++;$s=1;continue;case 4:g=b.WriteByte(32);$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;h=b.WriteString(e.Key);$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;i=b.WriteString("=\"");$s=8;case 8:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;j=CU(b,e.Val);$s=9;case 9:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;k=b.WriteByte(34);$s=10;case 10:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;d++;$s=1;continue;case 2:$s=-1;return b.String();}return;}var $f={$blk:Q.ptr.prototype.tagString,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,$s};return $f;};Q.prototype.tagString=function(){return this.$val.tagString();};Q.ptr.prototype.String=function(){var{a,b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;b=a.Type;if(b===(0)){$s=2;continue;}if(b===(1)){$s=3;continue;}if(b===(2)){$s=4;continue;}if(b===(3)){$s=5;continue;}if(b===(4)){$s=6;continue;}if(b===(5)){$s=7;continue;}if(b===(6)){$s=8;continue;}$s=9;continue;case 2:$s=-1;return"";case 3:c=CV(a.Data);$s=10;case 10:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;$s=11;case 11:return d;case 4:e=$clone(a,Q).tagString();$s=12;case 12:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f="<"+e+">";$s=13;case 13:return f;case 5:g=$clone(a,Q).tagString();$s=14;case 14:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h="</"+g+">";$s=15;case 15:return h;case 6:i=$clone(a,Q).tagString();$s=16;case 16:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j="<"+i+"/>";$s=17;case 17:return j;case 7:$s=-1;return"<!--"+a.Data+"-->";case 8:$s=-1;return"<!DOCTYPE "+a.Data+">";case 9:case 1:$s=-1;return"Invalid("+A.Itoa(((a.Type>>0)))+")";}return;}var $f={$blk:Q.ptr.prototype.String,$c:true,$r,a,b,c,d,e,f,g,h,i,j,$s};return $f;};Q.prototype.String=function(){return this.$val.String();};S.ptr.prototype.AllowCDATA=function(a){var a,b;b=this;b.allowCDATA=a;};S.prototype.AllowCDATA=function(a){return this.$val.AllowCDATA(a);};S.ptr.prototype.NextIsNotRawText=function(){var a;a=this;a.rawTag="";};S.prototype.NextIsNotRawText=function(){return this.$val.NextIsNotRawText();};S.ptr.prototype.Err=function(){var a;a=this;if(!((a.tt===0))){return $ifaceNil;}return a.err;};S.prototype.Err=function(){return this.$val.Err();};S.ptr.prototype.readByte=function(){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;if(a.raw.end>=a.buf.$length){$s=1;continue;}$s=2;continue;case 1:if(!($interfaceIsEqual(a.readErr,$ifaceNil))){a.err=a.readErr;$s=-1;return 0;}b=a.buf.$capacity;c=a.raw.end-a.raw.start>>0;d=DC.nil;if(($imul(2,c))>b){d=$makeSlice(DC,c,($imul(2,b)));}else{d=$subslice(a.buf,0,c);}$copySlice(d,$subslice(a.buf,a.raw.start,a.raw.end));e=a.raw.start;if(!((e===0))){a.data.start=a.data.start-(e)>>0;a.data.end=a.data.end-(e)>>0;a.pendingAttr[0].start=a.pendingAttr[0].start-(e)>>0;a.pendingAttr[0].end=a.pendingAttr[0].end-(e)>>0;a.pendingAttr[1].start=a.pendingAttr[1].start-(e)>>0;a.pendingAttr[1].end=a.pendingAttr[1].end-(e)>>0;f=a.attr;g=0;while(true){if(!(g<f.$length)){break;}h=g;(j=a.attr,((h<0||h>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+h]))[0].start=(i=a.attr,((h<0||h>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+h]))[0].start-(e)>>0;(l=a.attr,((h<0||h>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+h]))[0].end=(k=a.attr,((h<0||h>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+h]))[0].end-(e)>>0;(n=a.attr,((h<0||h>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+h]))[1].start=(m=a.attr,((h<0||h>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+h]))[1].start-(e)>>0;(p=a.attr,((h<0||h>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+h]))[1].end=(o=a.attr,((h<0||h>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+h]))[1].end-(e)>>0;g++;}}q=0;r=c;s=$subslice(d,0,c);a.raw.start=q;a.raw.end=r;a.buf=s;t=0;v=T(a.r,$subslice(d,c,d.$capacity));$s=3;case 3:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;t=u[0];a.readErr=u[1];if(t===0){a.err=a.readErr;$s=-1;return 0;}a.buf=$subslice(d,0,(c+t>>0));case 2:y=(w=a.buf,x=a.raw.end,((x<0||x>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+x]));a.raw.end=a.raw.end+(1)>>0;if(a.maxBuf>0&&(a.raw.end-a.raw.start>>0)>=a.maxBuf){a.err=$pkg.ErrBufferExceeded;$s=-1;return 0;}$s=-1;return y;}return;}var $f={$blk:S.ptr.prototype.readByte,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,$s};return $f;};S.prototype.readByte=function(){return this.$val.readByte();};S.ptr.prototype.Buffered=function(){var a;a=this;return $subslice(a.buf,a.raw.end);};S.prototype.Buffered=function(){return this.$val.Buffered();};T=function(a,b){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=0;case 1:if(!(c<100)){$s=2;continue;}e=a.Read(b);$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[0];g=d[1];if(!((f===0))||!($interfaceIsEqual(g,$ifaceNil))){$s=-1;return[f,g];}c=c+(1)>>0;$s=1;continue;case 2:$s=-1;return[0,G.ErrNoProgress];}return;}var $f={$blk:T,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};S.ptr.prototype.skipWhiteSpace=function(){var{a,b,c,d,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=-1;return;}case 1:b=a.readByte();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=-1;return;}d=c;if((d===(32))||(d===(10))||(d===(13))||(d===(9))||(d===(12))){}else{a.raw.end=a.raw.end-(1)>>0;$s=-1;return;}$s=1;continue;case 2:$s=-1;return;}return;}var $f={$blk:S.ptr.prototype.skipWhiteSpace,$c:true,$r,a,b,c,d,$s};return $f;};S.prototype.skipWhiteSpace=function(){return this.$val.skipWhiteSpace();};S.ptr.prototype.readRawOrRCDATA=function(){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;if(a.rawTag==="script"){$s=1;continue;}$s=2;continue;case 1:$r=a.readScript();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a.textIsRaw=true;a.rawTag="";$s=-1;return;case 2:case 4:b=a.readByte();$s=6;case 6:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=5;continue s;}if(!((c===60))){$s=4;continue s;}d=a.readByte();$s=7;case 7:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=5;continue s;}if(!((c===47))){$s=4;continue s;}e=a.readRawEndTag();$s=10;case 10:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}if(e||!($interfaceIsEqual(a.err,$ifaceNil))){$s=8;continue;}$s=9;continue;case 8:$s=5;continue s;case 9:$s=4;continue;case 5:a.data.end=a.raw.end;a.textIsRaw=!(a.rawTag==="textarea")&&!(a.rawTag==="title");a.rawTag="";$s=-1;return;}return;}var $f={$blk:S.ptr.prototype.readRawOrRCDATA,$c:true,$r,a,b,c,d,e,$s};return $f;};S.prototype.readRawOrRCDATA=function(){return this.$val.readRawOrRCDATA();};S.ptr.prototype.readRawEndTag=function(){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;b=0;case 1:if(!(b<a.rawTag.length)){$s=2;continue;}c=a.readByte();$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=-1;return false;}if(!((d===a.rawTag.charCodeAt(b)))&&!((d===(a.rawTag.charCodeAt(b)-32<<24>>>24)))){a.raw.end=a.raw.end-(1)>>0;$s=-1;return false;}b=b+(1)>>0;$s=1;continue;case 2:e=a.readByte();$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=-1;return false;}g=f;if((g===(32))||(g===(10))||(g===(13))||(g===(9))||(g===(12))||(g===(47))||(g===(62))){a.raw.end=a.raw.end-((3+a.rawTag.length>>0))>>0;$s=-1;return true;}a.raw.end=a.raw.end-(1)>>0;$s=-1;return false;}return;}var $f={$blk:S.ptr.prototype.readRawEndTag,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};S.prototype.readRawEndTag=function(){return this.$val.readRawEndTag();};S.ptr.prototype.readScript=function(){var{a,aa,ab,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r,$c}=$restore(this,{});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);a=[a];a[0]=this;$deferred.push([(function(a){return function(){a[0].data.end=a[0].raw.end;};})(a),[]]);b=0;case 1:c=a[0].readByte();$s=2;case 2:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;if(!($interfaceIsEqual(a[0].err,$ifaceNil))){$s=3;continue;}$s=4;continue;case 3:$s=5;case 5:return;case 4:if(b===60){$s=6;continue;}$s=7;continue;case 6:$s=8;continue;case 7:$s=1;continue;case 8:d=a[0].readByte();$s=9;case 9:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}b=d;if(!($interfaceIsEqual(a[0].err,$ifaceNil))){$s=10;continue;}$s=11;continue;case 10:$s=12;case 12:return;case 11:e=b;if(e===(47)){$s=14;continue;}if(e===(33)){$s=15;continue;}$s=16;continue;case 14:$s=17;continue;$s=16;continue;case 15:$s=18;continue;case 16:case 13:a[0].raw.end=a[0].raw.end-(1)>>0;$s=1;continue;case 17:f=a[0].readRawEndTag();$s=21;case 21:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(f||!($interfaceIsEqual(a[0].err,$ifaceNil))){$s=19;continue;}$s=20;continue;case 19:$s=22;case 22:return;case 20:$s=1;continue;case 18:g=a[0].readByte();$s=23;case 23:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}b=g;if(!($interfaceIsEqual(a[0].err,$ifaceNil))){$s=24;continue;}$s=25;continue;case 24:$s=26;case 26:return;case 25:if(b===45){$s=27;continue;}$s=28;continue;case 27:$s=29;continue;case 28:a[0].raw.end=a[0].raw.end-(1)>>0;$s=1;continue;case 29:h=a[0].readByte();$s=30;case 30:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}b=h;if(!($interfaceIsEqual(a[0].err,$ifaceNil))){$s=31;continue;}$s=32;continue;case 31:$s=33;case 33:return;case 32:if(b===45){$s=34;continue;}$s=35;continue;case 34:$s=36;continue;case 35:a[0].raw.end=a[0].raw.end-(1)>>0;$s=1;continue;case 37:i=a[0].readByte();$s=38;case 38:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}b=i;if(!($interfaceIsEqual(a[0].err,$ifaceNil))){$s=39;continue;}$s=40;continue;case 39:$s=41;case 41:return;case 40:j=b;if(j===(45)){$s=43;continue;}if(j===(60)){$s=44;continue;}$s=45;continue;case 43:$s=46;continue;$s=45;continue;case 44:$s=47;continue;case 45:case 42:$s=37;continue;case 46:k=a[0].readByte();$s=48;case 48:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}b=k;if(!($interfaceIsEqual(a[0].err,$ifaceNil))){$s=49;continue;}$s=50;continue;case 49:$s=51;case 51:return;case 50:l=b;if(l===(45)){$s=53;continue;}if(l===(60)){$s=54;continue;}$s=55;continue;case 53:$s=36;continue;$s=55;continue;case 54:$s=47;continue;case 55:case 52:$s=37;continue;case 36:m=a[0].readByte();$s=56;case 56:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}b=m;if(!($interfaceIsEqual(a[0].err,$ifaceNil))){$s=57;continue;}$s=58;continue;case 57:$s=59;case 59:return;case 58:n=b;if(n===(45)){$s=61;continue;}if(n===(60)){$s=62;continue;}if(n===(62)){$s=63;continue;}$s=64;continue;case 61:$s=36;continue;$s=64;continue;case 62:$s=47;continue;$s=64;continue;case 63:$s=1;continue;case 64:case 60:$s=37;continue;case 47:o=a[0].readByte();$s=65;case 65:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}b=o;if(!($interfaceIsEqual(a[0].err,$ifaceNil))){$s=66;continue;}$s=67;continue;case 66:$s=68;case 68:return;case 67:if(b===47){$s=69;continue;}$s=70;continue;case 69:$s=71;continue;case 70:if(97<=b&&b<=122||65<=b&&b<=90){$s=72;continue;}$s=73;continue;case 72:$s=74;continue;case 73:a[0].raw.end=a[0].raw.end-(1)>>0;$s=1;continue;case 71:p=a[0].readRawEndTag();$s=77;case 77:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}if(p||!($interfaceIsEqual(a[0].err,$ifaceNil))){$s=75;continue;}$s=76;continue;case 75:$s=78;case 78:return;case 76:$s=37;continue;case 74:a[0].raw.end=a[0].raw.end-(1)>>0;q=0;case 79:if(!(q<6)){$s=80;continue;}r=a[0].readByte();$s=81;case 81:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}b=r;if(!($interfaceIsEqual(a[0].err,$ifaceNil))){$s=82;continue;}$s=83;continue;case 82:$s=84;case 84:return;case 83:if(!((b==="script".charCodeAt(q)))&&!((b==="SCRIPT".charCodeAt(q)))){$s=85;continue;}$s=86;continue;case 85:a[0].raw.end=a[0].raw.end-(1)>>0;$s=37;continue;case 86:q=q+(1)>>0;$s=79;continue;case 80:s=a[0].readByte();$s=87;case 87:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}b=s;if(!($interfaceIsEqual(a[0].err,$ifaceNil))){$s=88;continue;}$s=89;continue;case 88:$s=90;case 90:return;case 89:t=b;if((t===(32))||(t===(10))||(t===(13))||(t===(9))||(t===(12))||(t===(47))||(t===(62))){$s=92;continue;}$s=93;continue;case 92:$s=94;continue;case 93:case 91:a[0].raw.end=a[0].raw.end-(1)>>0;$s=37;continue;case 94:u=a[0].readByte();$s=95;case 95:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}b=u;if(!($interfaceIsEqual(a[0].err,$ifaceNil))){$s=96;continue;}$s=97;continue;case 96:$s=98;case 98:return;case 97:v=b;if(v===(45)){$s=100;continue;}if(v===(60)){$s=101;continue;}$s=102;continue;case 100:$s=103;continue;$s=102;continue;case 101:$s=104;continue;case 102:case 99:$s=94;continue;case 103:w=a[0].readByte();$s=105;case 105:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}b=w;if(!($interfaceIsEqual(a[0].err,$ifaceNil))){$s=106;continue;}$s=107;continue;case 106:$s=108;case 108:return;case 107:x=b;if(x===(45)){$s=110;continue;}if(x===(60)){$s=111;continue;}$s=112;continue;case 110:$s=113;continue;$s=112;continue;case 111:$s=104;continue;case 112:case 109:$s=94;continue;case 113:y=a[0].readByte();$s=114;case 114:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}b=y;if(!($interfaceIsEqual(a[0].err,$ifaceNil))){$s=115;continue;}$s=116;continue;case 115:$s=117;case 117:return;case 116:z=b;if(z===(45)){$s=119;continue;}if(z===(60)){$s=120;continue;}if(z===(62)){$s=121;continue;}$s=122;continue;case 119:$s=113;continue;$s=122;continue;case 120:$s=104;continue;$s=122;continue;case 121:$s=1;continue;case 122:case 118:$s=94;continue;case 104:aa=a[0].readByte();$s=123;case 123:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}b=aa;if(!($interfaceIsEqual(a[0].err,$ifaceNil))){$s=124;continue;}$s=125;continue;case 124:$s=126;case 126:return;case 125:if(b===47){$s=127;continue;}$s=128;continue;case 127:$s=129;continue;case 128:a[0].raw.end=a[0].raw.end-(1)>>0;$s=94;continue;case 129:ab=a[0].readRawEndTag();$s=132;case 132:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}if(ab){$s=130;continue;}$s=131;continue;case 130:a[0].raw.end=a[0].raw.end+(9)>>0;$s=37;continue;case 131:if(!($interfaceIsEqual(a[0].err,$ifaceNil))){$s=133;continue;}$s=134;continue;case 133:$s=135;case 135:return;case 134:$s=94;continue;$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:S.ptr.prototype.readScript,$c:true,$r,a,aa,ab,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred};return $f;}}};S.prototype.readScript=function(){return this.$val.readScript();};S.ptr.prototype.readComment=function(){var{a,b,c,d,e,f,$s,$deferred,$r,$c}=$restore(this,{});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);a=[a];a[0]=this;a[0].data.start=a[0].raw.end;$deferred.push([(function(a){return function(){if(a[0].data.end<a[0].data.start){a[0].data.end=a[0].data.start;}};})(a),[]]);b=2;case 1:c=a[0].readByte();$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(a[0].err,$ifaceNil))){$s=4;continue;}$s=5;continue;case 4:if(b>2){b=2;}a[0].data.end=a[0].raw.end-b>>0;$s=6;case 6:return;case 5:e=d;if(e===(45)){$s=8;continue;}if(e===(62)){$s=9;continue;}if(e===(33)){$s=10;continue;}$s=11;continue;case 8:b=b+(1)>>0;$s=1;continue;$s=11;continue;case 9:if(b>=2){$s=12;continue;}$s=13;continue;case 12:a[0].data.end=a[0].raw.end-3>>0;$s=14;case 14:return;case 13:$s=11;continue;case 10:if(b>=2){$s=15;continue;}$s=16;continue;case 15:f=a[0].readByte();$s=17;case 17:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}d=f;if(!($interfaceIsEqual(a[0].err,$ifaceNil))){$s=18;continue;}$s=19;continue;case 18:a[0].data.end=a[0].raw.end;$s=20;case 20:return;case 19:if(d===62){$s=21;continue;}$s=22;continue;case 21:a[0].data.end=a[0].raw.end-4>>0;$s=23;case 23:return;case 22:case 16:case 11:case 7:b=0;$s=1;continue;case 2:$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:S.ptr.prototype.readComment,$c:true,$r,a,b,c,d,e,f,$s,$deferred};return $f;}}};S.prototype.readComment=function(){return this.$val.readComment();};S.ptr.prototype.readUntilCloseAngle=function(){var{a,b,c,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;a.data.start=a.raw.end;case 1:b=a.readByte();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(a.err,$ifaceNil))){a.data.end=a.raw.end;$s=-1;return;}if(c===62){a.data.end=a.raw.end-1>>0;$s=-1;return;}$s=1;continue;case 2:$s=-1;return;}return;}var $f={$blk:S.ptr.prototype.readUntilCloseAngle,$c:true,$r,a,b,c,$s};return $f;};S.prototype.readUntilCloseAngle=function(){return this.$val.readUntilCloseAngle();};S.ptr.prototype.readMarkupDeclaration=function(){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;a.data.start=a.raw.end;b=DI.zero();c=0;case 1:if(!(c<2)){$s=2;continue;}d=a.readByte();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}((c<0||c>=b.length)?($throwRuntimeError("index out of range"),undefined):b[c]=d);if(!($interfaceIsEqual(a.err,$ifaceNil))){a.data.end=a.raw.end;$s=-1;return 5;}c=c+(1)>>0;$s=1;continue;case 2:if((b[0]===45)&&(b[1]===45)){$s=4;continue;}$s=5;continue;case 4:$r=a.readComment();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 5;case 5:a.raw.end=a.raw.end-(2)>>0;e=a.readDoctype();$s=9;case 9:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}if(e){$s=7;continue;}$s=8;continue;case 7:$s=-1;return 6;case 8:if(!(a.allowCDATA)){f=false;$s=12;continue s;}g=a.readCDATA();$s=13;case 13:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;case 12:if(f){$s=10;continue;}$s=11;continue;case 10:a.convertNUL=true;$s=-1;return 1;case 11:$r=a.readUntilCloseAngle();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 5;}return;}var $f={$blk:S.ptr.prototype.readMarkupDeclaration,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};S.prototype.readMarkupDeclaration=function(){return this.$val.readMarkupDeclaration();};S.ptr.prototype.readDoctype=function(){var{a,b,c,d,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;b=0;case 1:if(!(b<7)){$s=2;continue;}c=a.readByte();$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(a.err,$ifaceNil))){a.data.end=a.raw.end;$s=-1;return false;}if(!((d==="DOCTYPE".charCodeAt(b)))&&!((d===("DOCTYPE".charCodeAt(b)+32<<24>>>24)))){a.raw.end=a.data.start;$s=-1;return false;}b=b+(1)>>0;$s=1;continue;case 2:$r=a.skipWhiteSpace();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(a.err,$ifaceNil))){a.data.start=a.raw.end;a.data.end=a.raw.end;$s=-1;return true;}$r=a.readUntilCloseAngle();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return true;}return;}var $f={$blk:S.ptr.prototype.readDoctype,$c:true,$r,a,b,c,d,$s};return $f;};S.prototype.readDoctype=function(){return this.$val.readDoctype();};S.ptr.prototype.readCDATA=function(){var{a,b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;b=0;case 1:if(!(b<7)){$s=2;continue;}c=a.readByte();$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(a.err,$ifaceNil))){a.data.end=a.raw.end;$s=-1;return false;}if(!((d==="[CDATA[".charCodeAt(b)))){a.raw.end=a.data.start;$s=-1;return false;}b=b+(1)>>0;$s=1;continue;case 2:a.data.start=a.raw.end;e=0;case 4:f=a.readByte();$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!($interfaceIsEqual(a.err,$ifaceNil))){a.data.end=a.raw.end;$s=-1;return true;}h=g;if(h===(93)){e=e+(1)>>0;}else if(h===(62)){if(e>=2){a.data.end=a.raw.end-3>>0;$s=-1;return true;}e=0;}else{e=0;}$s=4;continue;case 5:$s=-1;return false;}return;}var $f={$blk:S.ptr.prototype.readCDATA,$c:true,$r,a,b,c,d,e,f,g,h,$s};return $f;};S.prototype.readCDATA=function(){return this.$val.readCDATA();};S.ptr.prototype.startTagIn=function(a){var a,b,c,d,e,f,g,h,i;b=this;c=a;d=0;loop:while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);if(!(((b.data.end-b.data.start>>0)===e.length))){d++;continue loop;}f=0;while(true){if(!(f<e.length)){break;}i=(g=b.buf,h=b.data.start+f>>0,((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]));if(65<=i&&i<=90){i=i+(32)<<24>>>24;}if(!((i===e.charCodeAt(f)))){d++;continue loop;}f=f+(1)>>0;}return true;}return false;};S.prototype.startTagIn=function(a){return this.$val.startTagIn(a);};S.ptr.prototype.readStartTag=function(){var{a,b,c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;$r=a.readTag(true);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=-1;return 0;}b=(c=a.buf,d=a.data.start,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]));e=false;f=b;g=e;if(65<=f&&f<=90){f=f+(32)<<24>>>24;}h=f;if(h===(105)){g=a.startTagIn(new DH(["iframe"]));}else if(h===(110)){g=a.startTagIn(new DH(["noembed","noframes","noscript"]));}else if(h===(112)){g=a.startTagIn(new DH(["plaintext"]));}else if(h===(115)){g=a.startTagIn(new DH(["script","style"]));}else if(h===(116)){g=a.startTagIn(new DH(["textarea","title"]));}else if(h===(120)){g=a.startTagIn(new DH(["xmp"]));}if(g){$s=2;continue;}$s=3;continue;case 2:i=B.ToLower(($bytesToString($subslice(a.buf,a.data.start,a.data.end))));$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}a.rawTag=i;case 3:if($interfaceIsEqual(a.err,$ifaceNil)&&((j=a.buf,k=a.raw.end-2>>0,((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]))===47)){$s=-1;return 4;}$s=-1;return 2;}return;}var $f={$blk:S.ptr.prototype.readStartTag,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,$s};return $f;};S.prototype.readStartTag=function(){return this.$val.readStartTag();};S.ptr.prototype.readTag=function(a){var{a,b,c,d,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;b.attr=$subslice(b.attr,0,0);b.nAttrReturned=0;$r=b.readTagName();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.skipWhiteSpace();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(b.err,$ifaceNil))){$s=-1;return;}case 3:c=b.readByte();$s=5;case 5:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(b.err,$ifaceNil))||(d===62)){$s=4;continue;}b.raw.end=b.raw.end-(1)>>0;$r=b.readTagAttrKey();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.readTagAttrVal();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(a&&!((b.pendingAttr[0].start===b.pendingAttr[0].end))){b.attr=$append(b.attr,b.pendingAttr);}$r=b.skipWhiteSpace();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(b.err,$ifaceNil))){$s=4;continue;}$s=3;continue;case 4:$s=-1;return;}return;}var $f={$blk:S.ptr.prototype.readTag,$c:true,$r,a,b,c,d,$s};return $f;};S.prototype.readTag=function(a){return this.$val.readTag(a);};S.ptr.prototype.readTagName=function(){var{a,b,c,d,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;a.data.start=a.raw.end-1>>0;case 1:b=a.readByte();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(a.err,$ifaceNil))){a.data.end=a.raw.end;$s=-1;return;}d=c;if((d===(32))||(d===(10))||(d===(13))||(d===(9))||(d===(12))){a.data.end=a.raw.end-1>>0;$s=-1;return;}else if((d===(47))||(d===(62))){a.raw.end=a.raw.end-(1)>>0;a.data.end=a.raw.end;$s=-1;return;}$s=1;continue;case 2:$s=-1;return;}return;}var $f={$blk:S.ptr.prototype.readTagName,$c:true,$r,a,b,c,d,$s};return $f;};S.prototype.readTagName=function(){return this.$val.readTagName();};S.ptr.prototype.readTagAttrKey=function(){var{a,b,c,d,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;a.pendingAttr[0].start=a.raw.end;case 1:b=a.readByte();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(a.err,$ifaceNil))){a.pendingAttr[0].end=a.raw.end;$s=-1;return;}d=c;if((d===(32))||(d===(10))||(d===(13))||(d===(9))||(d===(12))||(d===(47))){a.pendingAttr[0].end=a.raw.end-1>>0;$s=-1;return;}else if((d===(61))||(d===(62))){a.raw.end=a.raw.end-(1)>>0;a.pendingAttr[0].end=a.raw.end;$s=-1;return;}$s=1;continue;case 2:$s=-1;return;}return;}var $f={$blk:S.ptr.prototype.readTagAttrKey,$c:true,$r,a,b,c,d,$s};return $f;};S.prototype.readTagAttrKey=function(){return this.$val.readTagAttrKey();};S.ptr.prototype.readTagAttrVal=function(){var{a,b,c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;a.pendingAttr[1].start=a.raw.end;a.pendingAttr[1].end=a.raw.end;$r=a.skipWhiteSpace();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=-1;return;}b=a.readByte();$s=2;case 2:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=-1;return;}if(!((c===61))){a.raw.end=a.raw.end-(1)>>0;$s=-1;return;}$r=a.skipWhiteSpace();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=-1;return;}d=a.readByte();$s=4;case 4:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=-1;return;}f=e;if(f===(62)){$s=6;continue;}if((f===(39))||(f===(34))){$s=7;continue;}$s=8;continue;case 6:a.raw.end=a.raw.end-(1)>>0;$s=-1;return;case 7:a.pendingAttr[1].start=a.raw.end;case 10:g=a.readByte();$s=12;case 12:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(a.err,$ifaceNil))){a.pendingAttr[1].end=a.raw.end;$s=-1;return;}if(h===e){a.pendingAttr[1].end=a.raw.end-1>>0;$s=-1;return;}$s=10;continue;case 11:$s=9;continue;case 8:a.pendingAttr[1].start=a.raw.end-1>>0;case 13:i=a.readByte();$s=15;case 15:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;if(!($interfaceIsEqual(a.err,$ifaceNil))){a.pendingAttr[1].end=a.raw.end;$s=-1;return;}k=j;if((k===(32))||(k===(10))||(k===(13))||(k===(9))||(k===(12))){a.pendingAttr[1].end=a.raw.end-1>>0;$s=-1;return;}else if(k===(62)){a.raw.end=a.raw.end-(1)>>0;a.pendingAttr[1].end=a.raw.end;$s=-1;return;}$s=13;continue;case 14:case 9:case 5:$s=-1;return;}return;}var $f={$blk:S.ptr.prototype.readTagAttrVal,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,$s};return $f;};S.prototype.readTagAttrVal=function(){return this.$val.readTagAttrVal();};S.ptr.prototype.Next=function(){var{a,b,c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;a.raw.start=a.raw.end;a.data.start=a.raw.end;a.data.end=a.raw.end;if(!($interfaceIsEqual(a.err,$ifaceNil))){a.tt=0;$s=-1;return a.tt;}if(!(a.rawTag==="")){$s=1;continue;}$s=2;continue;case 1:if(a.rawTag==="plaintext"){$s=3;continue;}$s=4;continue;case 3:case 6:if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=7;continue;}b=a.readByte();$s=8;case 8:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}b;$s=6;continue;case 7:a.data.end=a.raw.end;a.textIsRaw=true;$s=5;continue;case 4:$r=a.readRawOrRCDATA();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:if(a.data.end>a.data.start){a.tt=1;a.convertNUL=true;$s=-1;return a.tt;}case 2:a.textIsRaw=false;a.convertNUL=false;case 10:c=a.readByte();$s=12;case 12:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=11;continue s;}if(!((d===60))){$s=10;continue s;}e=a.readByte();$s=13;case 13:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=11;continue s;}f=0;if(97<=d&&d<=122||65<=d&&d<=90){f=2;}else if((d===47)){f=3;}else if((d===33)||(d===63)){f=5;}else{a.raw.end=a.raw.end-(1)>>0;$s=10;continue;}g=a.raw.end-2>>0;if(a.raw.start<g){a.raw.end=g;a.data.end=g;a.tt=1;$s=-1;return a.tt;}h=f;if(h===(2)){$s=15;continue;}if(h===(3)){$s=16;continue;}if(h===(5)){$s=17;continue;}$s=18;continue;case 15:i=a.readStartTag();$s=19;case 19:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}a.tt=i;$s=-1;return a.tt;case 16:j=a.readByte();$s=20;case 20:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}d=j;if(!($interfaceIsEqual(a.err,$ifaceNil))){$s=11;continue s;}if(d===62){a.tt=5;$s=-1;return a.tt;}if(97<=d&&d<=122||65<=d&&d<=90){$s=21;continue;}$s=22;continue;case 21:$r=a.readTag(false);$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!($interfaceIsEqual(a.err,$ifaceNil))){a.tt=0;}else{a.tt=3;}$s=-1;return a.tt;case 22:a.raw.end=a.raw.end-(1)>>0;$r=a.readUntilCloseAngle();$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a.tt=5;$s=-1;return a.tt;case 17:if(d===33){$s=25;continue;}$s=26;continue;case 25:k=a.readMarkupDeclaration();$s=27;case 27:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}a.tt=k;$s=-1;return a.tt;case 26:a.raw.end=a.raw.end-(1)>>0;$r=a.readUntilCloseAngle();$s=28;case 28:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a.tt=5;$s=-1;return a.tt;case 18:case 14:$s=10;continue;case 11:if(a.raw.start<a.raw.end){a.data.end=a.raw.end;a.tt=1;$s=-1;return a.tt;}a.tt=0;$s=-1;return a.tt;}return;}var $f={$blk:S.ptr.prototype.Next,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,$s};return $f;};S.prototype.Next=function(){return this.$val.Next();};S.ptr.prototype.Raw=function(){var a;a=this;return $subslice(a.buf,a.raw.start,a.raw.end);};S.prototype.Raw=function(){return this.$val.Raw();};U=function(a){var a,b,c,d,e,f,g,h;b=a;c=0;while(true){if(!(c<b.$length)){break;}d=c;e=((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c]);if(!((e===13))){c++;continue;}f=d+1>>0;if(f>=a.$length||!((((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f])===10))){((d<0||d>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+d]=10);c++;continue;}g=d;while(true){if(!(f<a.$length)){break;}if(((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f])===13){if((f+1>>0)<a.$length&&((h=f+1>>0,((h<0||h>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+h]))===10)){f=f+(1)>>0;}((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]=10);}else{((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]=((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]));}f=f+(1)>>0;g=g+(1)>>0;}return $subslice(a,0,g);}return a;};S.ptr.prototype.Text=function(){var a,b,c;a=this;b=a.tt;if((b===(1))||(b===(5))||(b===(6))){c=$subslice(a.buf,a.data.start,a.data.end);a.data.start=a.raw.end;a.data.end=a.raw.end;c=U(c);if((a.convertNUL||(a.tt===5))&&E.Contains(c,V)){c=E.Replace(c,V,W,-1);}if(!a.textIsRaw){c=CS(c,false);}return c;}return DC.nil;};S.prototype.Text=function(){return this.$val.Text();};S.ptr.prototype.TagName=function(){var a,b,c,d,e,f,g,h,i;a=DC.nil;b=false;c=this;if(c.data.start<c.data.end){d=c.tt;if((d===(2))||(d===(3))||(d===(4))){e=$subslice(c.buf,c.data.start,c.data.end);c.data.start=c.raw.end;c.data.end=c.raw.end;f=CT(e);g=c.nAttrReturned<c.attr.$length;a=f;b=g;return[a,b];}}h=DC.nil;i=false;a=h;b=i;return[a,b];};S.prototype.TagName=function(){return this.$val.TagName();};S.ptr.prototype.TagAttr=function(){var a,b,c,d,e,f,g,h,i,j,k,l,m,n;a=DC.nil;b=DC.nil;c=false;d=this;if(d.nAttrReturned<d.attr.$length){e=d.tt;if((e===(2))||(e===(4))){h=$clone((f=d.attr,g=d.nAttrReturned,((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g])),DJ);d.nAttrReturned=d.nAttrReturned+(1)>>0;a=$subslice(d.buf,h[0].start,h[0].end);b=$subslice(d.buf,h[1].start,h[1].end);i=CT(a);j=CS(U(b),true);k=d.nAttrReturned<d.attr.$length;a=i;b=j;c=k;return[a,b,c];}}l=DC.nil;m=DC.nil;n=false;a=l;b=m;c=n;return[a,b,c];};S.prototype.TagAttr=function(){return this.$val.TagAttr();};S.ptr.prototype.Token=function(){var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;a=this;b=new Q.ptr(a.tt,0,"",DG.nil);c=a.tt;if((c===(1))||(c===(5))||(c===(6))){b.Data=($bytesToString(a.Text()));}else if((c===(2))||(c===(4))||(c===(3))){d=a.TagName();e=d[0];f=d[1];while(true){if(!(f)){break;}g=DC.nil;h=DC.nil;i=g;j=h;k=a.TagAttr();i=k[0];j=k[1];f=k[2];b.Attr=$append(b.Attr,new P.ptr("",I.String(i),($bytesToString(j))));}l=I.Lookup(e);if(!((l===0))){m=l;n=new I.Atom(l).String();b.DataAtom=m;b.Data=n;}else{o=0;p=($bytesToString(e));b.DataAtom=o;b.Data=p;}}return b;};S.prototype.Token=function(){return this.$val.Token();};S.ptr.prototype.SetMaxBuf=function(a){var a,b;b=this;b.maxBuf=a;};S.prototype.SetMaxBuf=function(a){return this.$val.SetMaxBuf(a);};X=function(a){var{a,b,c,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=Y(a,"");$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;$s=2;case 2:return c;}return;}var $f={$blk:X,$c:true,$r,a,b,c,$s};return $f;};$pkg.NewTokenizer=X;Y=function(a,b){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=new S.ptr(a,0,$ifaceNil,$ifaceNil,new R.ptr(0,0),$makeSlice(DC,0,4096),0,new R.ptr(0,0),DJ.zero(),DK.nil,0,"",false,false,false);if(!(b==="")){$s=1;continue;}$s=2;continue;case 1:d=B.ToLower(b);$s=4;case 4:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=e;if(f===("iframe")||f===("noembed")||f===("noframes")||f===("noscript")||f===("plaintext")||f===("script")||f===("style")||f===("title")||f===("textarea")||f===("xmp")){c.rawTag=e;}case 3:case 2:$s=-1;return c;}return;}var $f={$blk:Y,$c:true,$r,a,b,c,d,e,f,$s};return $f;};$pkg.NewTokenizerFragment=Y;AA=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=$assertType(a,Z,true);d=c[0];e=c[1];if(e){$s=1;continue;}$s=2;continue;case 1:f=AC(d,b);$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;$s=4;case 4:return g;case 2:h=J.NewWriter(a);i=AC(h,b);$s=5;case 5:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return j;}k=h.Flush();$s=6;case 6:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;$s=7;case 7:return l;}return;}var $f={$blk:AA,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,$s};return $f;};$pkg.Render=AA;AC=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=AD(a,b);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if($interfaceIsEqual(d,AB)){d=$ifaceNil;}$s=-1;return d;}return;}var $f={$blk:AC,$c:true,$r,a,b,c,d,$s};return $f;};AD=function(a,b){var{a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=b.Type;if(c===(0)){$s=2;continue;}if(c===(1)){$s=3;continue;}if(c===(2)){$s=4;continue;}if(c===(3)){$s=5;continue;}if(c===(4)){$s=6;continue;}if(c===(5)){$s=7;continue;}$s=8;continue;case 2:$s=-1;return F.New("html: cannot render an ErrorNode node");case 3:d=CU(a,b.Data);$s=10;case 10:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$s=11;case 11:return e;case 4:f=b.FirstChild;case 12:if(!(!(f===DE.nil))){$s=13;continue;}g=AD(a,f);$s=14;case 14:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){$s=-1;return h;}f=f.NextSibling;$s=12;continue;case 13:$s=-1;return $ifaceNil;case 5:$s=9;continue;case 6:j=a.WriteString("<!--");$s=15;case 15:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[1];if(!($interfaceIsEqual(k,$ifaceNil))){$s=-1;return k;}m=a.WriteString(b.Data);$s=16;case 16:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[1];if(!($interfaceIsEqual(n,$ifaceNil))){$s=-1;return n;}p=a.WriteString("-->");$s=17;case 17:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}o=p;q=o[1];if(!($interfaceIsEqual(q,$ifaceNil))){$s=-1;return q;}$s=-1;return $ifaceNil;case 7:s=a.WriteString("<!DOCTYPE ");$s=18;case 18:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s;t=r[1];if(!($interfaceIsEqual(t,$ifaceNil))){$s=-1;return t;}v=a.WriteString(b.Data);$s=19;case 19:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;w=u[1];if(!($interfaceIsEqual(w,$ifaceNil))){$s=-1;return w;}if(!(b.Attr===DG.nil)){$s=20;continue;}$s=21;continue;case 20:x="";y="";z=x;aa=y;ab=b.Attr;ac=0;while(true){if(!(ac<ab.$length)){break;}ad=((ac<0||ac>=ab.$length)?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+ac]);ae=ad.Key;if(ae===("public")){z=ad.Val;}else if(ae===("system")){aa=ad.Val;}ac++;}if(!(z==="")){$s=22;continue;}if(!(aa==="")){$s=23;continue;}$s=24;continue;case 22:ag=a.WriteString(" PUBLIC ");$s=25;case 25:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}af=ag;ah=af[1];if(!($interfaceIsEqual(ah,$ifaceNil))){$s=-1;return ah;}ai=AE(a,z);$s=26;case 26:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=ai;if(!($interfaceIsEqual(aj,$ifaceNil))){$s=-1;return aj;}if(!(aa==="")){$s=27;continue;}$s=28;continue;case 27:ak=a.WriteByte(32);$s=29;case 29:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}al=ak;if(!($interfaceIsEqual(al,$ifaceNil))){$s=-1;return al;}am=AE(a,aa);$s=30;case 30:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}an=am;if(!($interfaceIsEqual(an,$ifaceNil))){$s=-1;return an;}case 28:$s=24;continue;case 23:ap=a.WriteString(" SYSTEM ");$s=31;case 31:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}ao=ap;aq=ao[1];if(!($interfaceIsEqual(aq,$ifaceNil))){$s=-1;return aq;}ar=AE(a,aa);$s=32;case 32:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}as=ar;if(!($interfaceIsEqual(as,$ifaceNil))){$s=-1;return as;}case 24:case 21:at=a.WriteByte(62);$s=33;case 33:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}au=at;$s=34;case 34:return au;case 8:$s=-1;return F.New("html: unknown node type");case 9:case 1:av=a.WriteByte(60);$s=35;case 35:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}aw=av;if(!($interfaceIsEqual(aw,$ifaceNil))){$s=-1;return aw;}ay=a.WriteString(b.Data);$s=36;case 36:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}ax=ay;az=ax[1];if(!($interfaceIsEqual(az,$ifaceNil))){$s=-1;return az;}ba=b.Attr;bb=0;case 37:if(!(bb<ba.$length)){$s=38;continue;}bc=((bb<0||bb>=ba.$length)?($throwRuntimeError("index out of range"),undefined):ba.$array[ba.$offset+bb]);bd=a.WriteByte(32);$s=39;case 39:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}be=bd;if(!($interfaceIsEqual(be,$ifaceNil))){$s=-1;return be;}if(!(bc.Namespace==="")){$s=40;continue;}$s=41;continue;case 40:bg=a.WriteString(bc.Namespace);$s=42;case 42:if($c){$c=false;bg=bg.$blk();}if(bg&&bg.$blk!==undefined){break s;}bf=bg;bh=bf[1];if(!($interfaceIsEqual(bh,$ifaceNil))){$s=-1;return bh;}bi=a.WriteByte(58);$s=43;case 43:if($c){$c=false;bi=bi.$blk();}if(bi&&bi.$blk!==undefined){break s;}bj=bi;if(!($interfaceIsEqual(bj,$ifaceNil))){$s=-1;return bj;}case 41:bl=a.WriteString(bc.Key);$s=44;case 44:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}bk=bl;bm=bk[1];if(!($interfaceIsEqual(bm,$ifaceNil))){$s=-1;return bm;}bo=a.WriteString("=\"");$s=45;case 45:if($c){$c=false;bo=bo.$blk();}if(bo&&bo.$blk!==undefined){break s;}bn=bo;bp=bn[1];if(!($interfaceIsEqual(bp,$ifaceNil))){$s=-1;return bp;}bq=CU(a,bc.Val);$s=46;case 46:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}br=bq;if(!($interfaceIsEqual(br,$ifaceNil))){$s=-1;return br;}bs=a.WriteByte(34);$s=47;case 47:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}bt=bs;if(!($interfaceIsEqual(bt,$ifaceNil))){$s=-1;return bt;}bb++;$s=37;continue;case 38:if((bu=$mapIndex(AF,$String.keyFor(b.Data)),bu!==undefined?bu.v:false)){$s=48;continue;}$s=49;continue;case 48:if(!(b.FirstChild===DE.nil)){$s=-1;return F.New("html: void element <"+b.Data+" has child nodes");}bw=a.WriteString("/>");$s=50;case 50:if($c){$c=false;bw=bw.$blk();}if(bw&&bw.$blk!==undefined){break s;}bv=bw;bx=bv[1];$s=-1;return bx;case 49:by=a.WriteByte(62);$s=51;case 51:if($c){$c=false;by=by.$blk();}if(by&&by.$blk!==undefined){break s;}bz=by;if(!($interfaceIsEqual(bz,$ifaceNil))){$s=-1;return bz;}ca=b.FirstChild;if(!(ca===DE.nil)&&(ca.Type===1)&&B.HasPrefix(ca.Data,"\n")){$s=52;continue;}$s=53;continue;case 52:cb=b.Data;if(cb===("pre")||cb===("listing")||cb===("textarea")){$s=55;continue;}$s=56;continue;case 55:cc=a.WriteByte(10);$s=57;case 57:if($c){$c=false;cc=cc.$blk();}if(cc&&cc.$blk!==undefined){break s;}cd=cc;if(!($interfaceIsEqual(cd,$ifaceNil))){$s=-1;return cd;}case 56:case 54:case 53:ce=b.Data;if(ce===("iframe")||ce===("noembed")||ce===("noframes")||ce===("noscript")||ce===("plaintext")||ce===("script")||ce===("style")||ce===("xmp")){$s=59;continue;}$s=60;continue;case 59:cf=b.FirstChild;case 62:if(!(!(cf===DE.nil))){$s=63;continue;}if(cf.Type===1){$s=64;continue;}$s=65;continue;case 64:ch=a.WriteString(cf.Data);$s=67;case 67:if($c){$c=false;ch=ch.$blk();}if(ch&&ch.$blk!==undefined){break s;}cg=ch;ci=cg[1];if(!($interfaceIsEqual(ci,$ifaceNil))){$s=-1;return ci;}$s=66;continue;case 65:cj=AD(a,cf);$s=68;case 68:if($c){$c=false;cj=cj.$blk();}if(cj&&cj.$blk!==undefined){break s;}ck=cj;if(!($interfaceIsEqual(ck,$ifaceNil))){$s=-1;return ck;}case 66:cf=cf.NextSibling;$s=62;continue;case 63:if(b.Data==="plaintext"){$s=-1;return AB;}$s=61;continue;case 60:cl=b.FirstChild;case 69:if(!(!(cl===DE.nil))){$s=70;continue;}cm=AD(a,cl);$s=71;case 71:if($c){$c=false;cm=cm.$blk();}if(cm&&cm.$blk!==undefined){break s;}cn=cm;if(!($interfaceIsEqual(cn,$ifaceNil))){$s=-1;return cn;}cl=cl.NextSibling;$s=69;continue;case 70:case 61:case 58:cp=a.WriteString("</");$s=72;case 72:if($c){$c=false;cp=cp.$blk();}if(cp&&cp.$blk!==undefined){break s;}co=cp;cq=co[1];if(!($interfaceIsEqual(cq,$ifaceNil))){$s=-1;return cq;}cs=a.WriteString(b.Data);$s=73;case 73:if($c){$c=false;cs=cs.$blk();}if(cs&&cs.$blk!==undefined){break s;}cr=cs;ct=cr[1];if(!($interfaceIsEqual(ct,$ifaceNil))){$s=-1;return ct;}cu=a.WriteByte(62);$s=74;case 74:if($c){$c=false;cu=cu.$blk();}if(cu&&cu.$blk!==undefined){break s;}cv=cu;$s=75;case 75:return cv;}return;}var $f={$blk:AD,$c:true,$r,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};AE=function(a,b){var{a,b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=34;if(B.Contains(b,"\"")){c=39;}d=a.WriteByte(c);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){$s=-1;return e;}g=a.WriteString(b);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[1];if(!($interfaceIsEqual(h,$ifaceNil))){$s=-1;return h;}i=a.WriteByte(c);$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;if(!($interfaceIsEqual(j,$ifaceNil))){$s=-1;return j;}$s=-1;return $ifaceNil;}return;}var $f={$blk:AE,$c:true,$r,a,b,c,d,e,f,g,h,i,j,$s};return $f;};AG.ptr.prototype.top=function(){var a,b;a=this;b=(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).top();if(!(b===DE.nil)){return b;}return a.doc;};AG.prototype.top=function(){return this.$val.top();};AG.ptr.prototype.popUntil=function(a,b){var a,b,c,d;c=this;d=c.indexOfElementInScope(a,b);if(!((d===-1))){c.oe=$subslice(c.oe,0,d);return true;}return false;};AG.prototype.popUntil=function(a,b){return this.$val.popUntil(a,b);};AG.ptr.prototype.indexOfElementInScope=function(a,b){var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;c=this;d=c.oe.$length-1>>0;while(true){if(!(d>=0)){break;}f=(e=c.oe,((d<0||d>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+d])).DataAtom;if((g=c.oe,((d<0||d>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+d])).Namespace===""){h=b;i=0;while(true){if(!(i<h.$length)){break;}j=((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]);if(j===f){return d;}i++;}k=a;if(k===(0)){}else if(k===(1)){if((f===79618)||(f===42754)){return-1;}}else if(k===(2)){if(f===102662){return-1;}}else if(k===(3)){if((f===22020)||(f===365829)||(f===463880)){return-1;}}else if(k===(6)){if(!((f===24328))&&!((f===451334))){return-1;}}else{$panic(new $String("unreachable"));}}l=a;if((l===(0))||(l===(1))||(l===(2))){m=(o=$mapIndex(AH,$String.keyFor((n=c.oe,((d<0||d>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+d])).Namespace)),o!==undefined?o.v:DD.nil);p=0;while(true){if(!(p<m.$length)){break;}q=((p<0||p>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+p]);if(q===f){return-1;}p++;}}d=d-(1)>>0;}return-1;};AG.prototype.indexOfElementInScope=function(a,b){return this.$val.indexOfElementInScope(a,b);};AG.ptr.prototype.elementInScope=function(a,b){var a,b,c;c=this;return!((c.indexOfElementInScope(a,b)===-1));};AG.prototype.elementInScope=function(a,b){return this.$val.elementInScope(a,b);};AG.ptr.prototype.clearStackToContext=function(a){var a,b,c,d,e,f;b=this;c=b.oe.$length-1>>0;while(true){if(!(c>=0)){break;}e=(d=b.oe,((c<0||c>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+c])).DataAtom;f=a;if(f===(3)){if((e===22020)||(e===365829)||(e===463880)){b.oe=$subslice(b.oe,0,(c+1>>0));return;}}else if(f===(4)){if((e===22020)||(e===52226)||(e===463880)){b.oe=$subslice(b.oe,0,(c+1>>0));return;}}else if(f===(5)){if((e===22020)||(e===9989)||(e===62725)||(e===208901)||(e===463880)){b.oe=$subslice(b.oe,0,(c+1>>0));return;}}else{$panic(new $String("unreachable"));}c=c-(1)>>0;}};AG.prototype.clearStackToContext=function(a){return this.$val.clearStackToContext(a);};AG.ptr.prototype.generateImpliedEndTags=function(a){var a,b,c,d,e,f,g,h,i;b=this;c=0;c=b.oe.$length-1>>0;loop:while(true){if(!(c>=0)){break;}e=(d=b.oe,((c<0||c>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+c]));if(e.Type===3){f=e.DataAtom;if((f===(186114))||(f===(412418))||(f===(45570))||(f===(24328))||(f===(451334))||(f===(3073))||(f===(14850))||(f===(146434))||(f===(104962))||(f===(104963))){g=a;h=0;while(true){if(!(h<g.$length)){break;}i=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]);if(e.Data===i){break loop;}h++;}c=c-(1)>>0;continue;}}break;}b.oe=$subslice(b.oe,0,(c+1>>0));};AG.prototype.generateImpliedEndTags=function(a){return this.$val.generateImpliedEndTags(a);};AG.ptr.prototype.addChild=function(a){var a,b;b=this;if(b.shouldFosterParent()){b.fosterParent(a);}else{b.top().AppendChild(a);}if(a.Type===3){b.oe=$append(b.oe,a);}};AG.prototype.addChild=function(a){return this.$val.addChild(a);};AG.ptr.prototype.shouldFosterParent=function(){var a,b;a=this;if(a.fosterParenting){b=a.top().DataAtom;if((b===(365829))||(b===(9989))||(b===(62725))||(b===(208901))||(b===(52226))){return true;}}return false;};AG.prototype.shouldFosterParent=function(){return this.$val.shouldFosterParent();};AG.ptr.prototype.fosterParent=function(a){var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;b=this;c=DE.nil;d=DE.nil;e=DE.nil;f=DE.nil;g=c;h=d;i=e;j=f;k=0;k=b.oe.$length-1>>0;while(true){if(!(k>=0)){break;}if((l=b.oe,((k<0||k>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+k])).DataAtom===365829){g=(m=b.oe,((k<0||k>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+k]));break;}k=k-(1)>>0;}n=0;n=b.oe.$length-1>>0;while(true){if(!(n>=0)){break;}if((o=b.oe,((n<0||n>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+n])).DataAtom===463880){j=(p=b.oe,((n<0||n>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+n]));break;}n=n-(1)>>0;}if(!(j===DE.nil)&&(g===DE.nil||n>k)){j.AppendChild(a);return;}if(g===DE.nil){h=(q=b.oe,(0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0]));}else{h=g.Parent;}if(h===DE.nil){h=(r=b.oe,s=k-1>>0,((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]));}if(!(g===DE.nil)){i=g.PrevSibling;}else{i=h.LastChild;}if(!(i===DE.nil)&&(i.Type===1)&&(a.Type===1)){i.Data=i.Data+(a.Data);return;}h.InsertChildBefore(a,g);};AG.prototype.fosterParent=function(a){return this.$val.fosterParent(a);};AG.ptr.prototype.addText=function(a){var a,b,c,d;b=this;if(a===""){return;}if(b.shouldFosterParent()){b.fosterParent(new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,1,0,a,"",DG.nil));return;}c=b.top();d=c.LastChild;if(!(d===DE.nil)&&(d.Type===1)){d.Data=d.Data+(a);return;}b.addChild(new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,1,0,a,"",DG.nil));};AG.prototype.addText=function(a){return this.$val.addText(a);};AG.ptr.prototype.addElement=function(){var a;a=this;a.addChild(new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,3,a.tok.DataAtom,a.tok.Data,"",a.tok.Attr));};AG.prototype.addElement=function(){return this.$val.addElement();};AG.ptr.prototype.addFormattingElement=function(){var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;a=this;b=a.tok.DataAtom;c=a.tok.Attr;d=b;e=c;a.addElement();f=0;g=a.afe.$length-1>>0;findIdenticalElements:while(true){if(!(g>=0)){break;}i=(h=a.afe,((g<0||g>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+g]));if(i.Type===6){break;}if(!((i.Type===3))){g=g-(1)>>0;continue;}if(!(i.Namespace==="")){g=g-(1)>>0;continue;}if(!((i.DataAtom===d))){g=g-(1)>>0;continue;}if(!((i.Attr.$length===e.$length))){g=g-(1)>>0;continue;}j=i.Attr;k=0;compareAttributes:while(true){if(!(k<j.$length)){break;}l=((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]);m=e;n=0;while(true){if(!(n<m.$length)){break;}o=((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]);if(l.Key===o.Key&&l.Namespace===o.Namespace&&l.Val===o.Val){k++;continue compareAttributes;}n++;}g=g-(1)>>0;continue findIdenticalElements;}f=f+(1)>>0;if(f>=3){(a.$ptr_afe||(a.$ptr_afe=new DL(function(){return this.$target.afe;},function($v){this.$target.afe=$v;},a))).remove(i);}g=g-(1)>>0;}a.afe=$append(a.afe,a.top());};AG.prototype.addFormattingElement=function(){return this.$val.addFormattingElement();};AG.ptr.prototype.clearActiveFormattingElements=function(){var a,b;a=this;while(true){b=(a.$ptr_afe||(a.$ptr_afe=new DL(function(){return this.$target.afe;},function($v){this.$target.afe=$v;},a))).pop();if((a.afe.$length===0)||(b.Type===6)){return;}}};AG.prototype.clearActiveFormattingElements=function(){return this.$val.clearActiveFormattingElements();};AG.ptr.prototype.reconstructActiveFormattingElements=function(){var a,b,c,d,e,f,g;a=this;b=(a.$ptr_afe||(a.$ptr_afe=new DL(function(){return this.$target.afe;},function($v){this.$target.afe=$v;},a))).top();if(b===DE.nil){return;}if((b.Type===6)||!(((a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).index(b)===-1))){return;}c=a.afe.$length-1>>0;while(true){if(!(!((b.Type===6))&&((a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).index(b)===-1))){break;}if(c===0){c=-1;break;}c=c-(1)>>0;b=(d=a.afe,((c<0||c>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+c]));}while(true){c=c+(1)>>0;f=(e=a.afe,((c<0||c>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+c])).clone();a.addChild(f);(g=a.afe,((c<0||c>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+c]=f));if(c===(a.afe.$length-1>>0)){break;}}};AG.prototype.reconstructActiveFormattingElements=function(){return this.$val.reconstructActiveFormattingElements();};AG.ptr.prototype.acknowledgeSelfClosingTag=function(){var a;a=this;a.hasSelfClosingToken=false;};AG.prototype.acknowledgeSelfClosingTag=function(){return this.$val.acknowledgeSelfClosingTag();};AG.ptr.prototype.setOriginalIM=function(){var a;a=this;if(!(a.originalIM===$throwNilPointerError)){$panic(new $String("html: bad parser state: originalIM was set twice"));}a.originalIM=a.im;};AG.prototype.setOriginalIM=function(){return this.$val.setOriginalIM();};AG.ptr.prototype.resetInsertionMode=function(){var a,b,c,d,e,f,g,h,i,j,k,l,m,n;a=this;b=a.oe.$length-1>>0;while(true){if(!(b>=0)){break;}d=(c=a.oe,((b<0||b>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+b]));e=b===0;if(e&&!(a.context===DE.nil)){d=a.context;}f=d.DataAtom;if(f===(408582)){if(!e){g=d;h=(i=a.oe,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0]));j=g;k=h;while(true){if(!(!(j===k))){break;}j=(l=a.oe,m=(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).index(j)-1>>0,((m<0||m>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+m]));n=j.DataAtom;if(n===(463880)){a.im=AZ;return;}else if(n===(365829)){a.im=BA;return;}}}a.im=AZ;}else if((f===(37378))||(f===(87554))){a.im=AY;}else if(f===(52226)){a.im=AX;}else if((f===(9989))||(f===(208901))||(f===(62725))){a.im=AW;}else if(f===(143623)){a.im=AU;}else if(f===(109320)){a.im=AV;}else if(f===(365829)){a.im=AT;}else if(f===(463880)){if(!(d.Namespace==="")){b=b-(1)>>0;continue;}a.im=(a.$ptr_templateStack||(a.$ptr_templateStack=new DM(function(){return this.$target.templateStack;},function($v){this.$target.templateStack=$v;},a))).top();}else if(f===(209156)){a.im=AN;}else if(f===(10244)){a.im=AR;}else if(f===(35592)){a.im=BD;}else if(f===(22020)){if(a.head===DE.nil){a.im=AM;}else{a.im=AP;}}else{if(e){a.im=AR;return;}b=b-(1)>>0;continue;}return;}};AG.prototype.resetInsertionMode=function(){return this.$val.resetInsertionMode();};AK=function(a){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=a.tok.Type;if(b===(1)){$s=2;continue;}if(b===(5)){$s=3;continue;}if(b===(6)){$s=4;continue;}$s=5;continue;case 2:a.tok.Data=B.TrimLeft(a.tok.Data," \t\r\n\f");if(a.tok.Data.length===0){$s=-1;return true;}$s=5;continue;case 3:a.doc.AppendChild(new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,4,0,a.tok.Data,"",DG.nil));$s=-1;return true;case 4:d=CX(a.tok.Data);$s=6;case 6:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;e=c[0];f=c[1];a.doc.AppendChild(e);a.quirks=f;a.im=AL;$s=-1;return true;case 5:case 1:a.quirks=true;a.im=AL;$s=-1;return false;}return;}var $f={$blk:AK,$c:true,$r,a,b,c,d,e,f,$s};return $f;};AL=function(a){var{a,b,c,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=a.tok.Type;if(b===(6)){$s=2;continue;}if(b===(1)){$s=3;continue;}if(b===(2)){$s=4;continue;}if(b===(3)){$s=5;continue;}if(b===(5)){$s=6;continue;}$s=7;continue;case 2:$s=-1;return true;case 3:a.tok.Data=B.TrimLeft(a.tok.Data," \t\r\n\f");if(a.tok.Data.length===0){$s=-1;return true;}$s=7;continue;case 4:if(a.tok.DataAtom===22020){a.addElement();a.im=AM;$s=-1;return true;}$s=7;continue;case 5:c=a.tok.DataAtom;if((c===(209156))||(c===(10244))||(c===(22020))||(c===(514))){$s=9;continue;}$s=10;continue;case 9:$r=a.parseImpliedToken(2,22020,new I.Atom(22020).String());$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return false;case 10:$s=-1;return true;case 11:case 8:$s=7;continue;case 6:a.doc.AppendChild(new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,4,0,a.tok.Data,"",DG.nil));$s=-1;return true;case 7:case 1:$r=a.parseImpliedToken(2,22020,new I.Atom(22020).String());$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return false;}return;}var $f={$blk:AL,$c:true,$r,a,b,c,$s};return $f;};AM=function(a){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=a.tok.Type;if(b===(1)){$s=2;continue;}if(b===(2)){$s=3;continue;}if(b===(3)){$s=4;continue;}if(b===(5)){$s=5;continue;}if(b===(6)){$s=6;continue;}$s=7;continue;case 2:a.tok.Data=B.TrimLeft(a.tok.Data," \t\r\n\f");if(a.tok.Data.length===0){$s=-1;return true;}$s=7;continue;case 3:c=a.tok.DataAtom;if(c===(209156)){$s=9;continue;}if(c===(22020)){$s=10;continue;}$s=11;continue;case 9:a.addElement();a.head=a.top();a.im=AN;$s=-1;return true;case 10:d=AR(a);$s=12;case 12:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$s=13;case 13:return e;case 11:case 8:$s=7;continue;case 4:f=a.tok.DataAtom;if((f===(209156))||(f===(10244))||(f===(22020))||(f===(514))){$s=15;continue;}$s=16;continue;case 15:$r=a.parseImpliedToken(2,209156,new I.Atom(209156).String());$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return false;case 16:$s=-1;return true;case 17:case 14:$s=7;continue;case 5:a.addChild(new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,4,0,a.tok.Data,"",DG.nil));$s=-1;return true;case 6:$s=-1;return true;case 7:case 1:$r=a.parseImpliedToken(2,209156,new I.Atom(209156).String());$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return false;}return;}var $f={$blk:AM,$c:true,$r,a,b,c,d,e,f,$s};return $f;};AN=function(a){var{a,b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=a.tok.Type;if(b===(1)){$s=2;continue;}if(b===(2)){$s=3;continue;}if(b===(3)){$s=4;continue;}if(b===(5)){$s=5;continue;}if(b===(6)){$s=6;continue;}$s=7;continue;case 2:c=B.TrimLeft(a.tok.Data," \t\r\n\f");if(c.length<a.tok.Data.length){a.addText($substring(a.tok.Data,0,(a.tok.Data.length-c.length>>0)));if(c===""){$s=-1;return true;}a.tok.Data=c;}$s=7;continue;case 3:d=a.tok.DataAtom;if(d===(22020)){$s=9;continue;}if((d===(15108))||(d===(15112))||(d===(89607))||(d===(120583))||(d===(95236))||(d===(309252))){$s=10;continue;}if(d===(136712)){$s=11;continue;}if((d===(137222))||(d===(69637))||(d===(35080))||(d===(458501))){$s=12;continue;}if(d===(209156)){$s=13;continue;}if(d===(463880)){$s=14;continue;}$s=15;continue;case 9:e=AR(a);$s=16;case 16:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$s=17;case 17:return f;case 10:a.addElement();(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).pop();a.acknowledgeSelfClosingTag();$s=-1;return true;case 11:a.addElement();if(a.scripting){a.setOriginalIM();a.im=AS;}else{a.im=AO;}$s=-1;return true;case 12:a.addElement();a.setOriginalIM();a.im=AS;$s=-1;return true;case 13:$s=-1;return true;case 14:a.addElement();a.afe=$append(a.afe,BP);a.framesetOK=false;a.im=BB;a.templateStack=$append(a.templateStack,BB);$s=-1;return true;case 15:case 8:$s=7;continue;case 4:g=a.tok.DataAtom;if(g===(209156)){$s=19;continue;}if((g===(10244))||(g===(22020))||(g===(514))){$s=20;continue;}if(g===(463880)){$s=21;continue;}$s=22;continue;case 19:(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).pop();a.im=AP;$s=-1;return true;case 20:$r=a.parseImpliedToken(3,209156,new I.Atom(209156).String());$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return false;case 21:if(!(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).contains(463880)){$s=-1;return true;}a.generateImpliedEndTags(DH.nil);h=a.oe.$length-1>>0;while(true){if(!(h>=0)){break;}j=(i=a.oe,((h<0||h>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+h]));if(j.Namespace===""&&(j.DataAtom===463880)){a.oe=$subslice(a.oe,0,h);break;}h=h-(1)>>0;}a.clearActiveFormattingElements();(a.$ptr_templateStack||(a.$ptr_templateStack=new DM(function(){return this.$target.templateStack;},function($v){this.$target.templateStack=$v;},a))).pop();a.resetInsertionMode();$s=-1;return true;case 22:$s=-1;return true;case 23:case 18:$s=7;continue;case 5:a.addChild(new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,4,0,a.tok.Data,"",DG.nil));$s=-1;return true;case 6:$s=-1;return true;case 7:case 1:$r=a.parseImpliedToken(3,209156,new I.Atom(209156).String());$s=25;case 25:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return false;}return;}var $f={$blk:AN,$c:true,$r,a,b,c,d,e,f,g,h,i,j,$s};return $f;};AO=function(a){var{a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=a.tok.Type;if(b===(6)){$s=2;continue;}if(b===(2)){$s=3;continue;}if(b===(3)){$s=4;continue;}if(b===(1)){$s=5;continue;}if(b===(5)){$s=6;continue;}$s=7;continue;case 2:$s=-1;return true;case 3:c=a.tok.DataAtom;if(c===(22020)){$s=9;continue;}if((c===(15112))||(c===(89607))||(c===(95236))||(c===(309252))||(c===(35080))||(c===(458501))){$s=10;continue;}if((c===(209156))||(c===(136712))){$s=11;continue;}$s=12;continue;case 9:d=AR(a);$s=13;case 13:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$s=14;case 14:return e;case 10:f=AN(a);$s=15;case 15:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;$s=16;case 16:return g;case 11:$s=-1;return true;case 12:case 8:$s=7;continue;case 4:h=a.tok.DataAtom;if((h===(136712))||(h===(514))){}else{$s=-1;return true;}$s=7;continue;case 5:i=B.TrimLeft(a.tok.Data," \t\r\n\f");if(i.length===0){$s=17;continue;}$s=18;continue;case 17:j=AN(a);$s=19;case 19:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;$s=20;case 20:return k;case 18:$s=7;continue;case 6:l=AN(a);$s=21;case 21:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;$s=22;case 22:return m;case 7:case 1:(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).pop();if(!((a.top().DataAtom===209156))){$panic(new $String("html: the new current node will be a head element."));}a.im=AN;if(a.tok.DataAtom===136712){$s=-1;return true;}$s=-1;return false;}return;}var $f={$blk:AO,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,$s};return $f;};AP=function(a){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$deferred,$r,$c}=$restore(this,{a});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);b=a.tok.Type;if(b===(1)){$s=2;continue;}if(b===(2)){$s=3;continue;}if(b===(3)){$s=4;continue;}if(b===(5)){$s=5;continue;}if(b===(6)){$s=6;continue;}$s=7;continue;case 2:c=B.TrimLeft(a.tok.Data," \t\r\n\f");if(c.length<a.tok.Data.length){$s=8;continue;}$s=9;continue;case 8:a.addText($substring(a.tok.Data,0,(a.tok.Data.length-c.length>>0)));if(c===""){$s=10;continue;}$s=11;continue;case 10:d=true;$s=12;case 12:return d;case 11:a.tok.Data=c;case 9:$s=7;continue;case 3:e=a.tok.DataAtom;if(e===(22020)){$s=14;continue;}if(e===(10244)){$s=15;continue;}if(e===(35592)){$s=16;continue;}if((e===(15108))||(e===(15112))||(e===(89607))||(e===(95236))||(e===(309252))||(e===(35080))||(e===(137222))||(e===(458501))||(e===(463880))||(e===(69637))){$s=17;continue;}if(e===(209156)){$s=18;continue;}$s=19;continue;case 14:f=AR(a);$s=20;case 20:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;$s=21;case 21:return g;case 15:a.addElement();a.framesetOK=false;a.im=AR;h=true;$s=22;case 22:return h;case 16:a.addElement();a.im=BD;i=true;$s=23;case 23:return i;case 17:a.oe=$append(a.oe,a.head);$deferred.push([$methodVal((a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))),"remove"),[a.head]]);j=AN(a);$s=24;case 24:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;$s=25;case 25:return k;case 18:l=true;$s=26;case 26:return l;case 19:case 13:$s=7;continue;case 4:m=a.tok.DataAtom;if((m===(10244))||(m===(22020))||(m===(514))){$s=28;continue;}if(m===(463880)){$s=29;continue;}$s=30;continue;case 28:$s=31;continue;case 29:n=AN(a);$s=32;case 32:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;$s=33;case 33:return o;case 30:p=true;$s=34;case 34:return p;case 31:case 27:$s=7;continue;case 5:a.addChild(new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,4,0,a.tok.Data,"",DG.nil));q=true;$s=35;case 35:return q;case 6:r=true;$s=36;case 36:return r;case 7:case 1:$r=a.parseImpliedToken(2,10244,new I.Atom(10244).String());$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a.framesetOK=true;s=false;$s=38;case 38:return s;}return;}}catch(err){$err=err;$s=-1;return false;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:AP,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$deferred};return $f;}}};AQ=function(a,b){var a,b,c,d,e,f,g,h,i,j,k,l,m,n;if(b.Attr.$length===0){return;}c=$makeMap($String.keyFor,[]);d=a.Attr;e=0;while(true){if(!(e<d.$length)){break;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);g=f.Key;(c||$throwRuntimeError("assignment to entry in nil map")).set($String.keyFor(g),{k:g,v:f.Val});e++;}h=b.Attr;i=0;while(true){if(!(i<h.$length)){break;}j=((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]);k=(l=$mapIndex(c,$String.keyFor(j.Key)),l!==undefined?[l.v,true]:["",false]);m=k[1];if(!m){a.Attr=$append(a.Attr,j);n=j.Key;(c||$throwRuntimeError("assignment to entry in nil map")).set($String.keyFor(n),{k:n,v:j.Val});}i++;}};AR=function(a){var{a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=a.tok.Type;if(b===(1)){$s=2;continue;}if(b===(2)){$s=3;continue;}if(b===(3)){$s=4;continue;}if(b===(5)){$s=5;continue;}if(b===(0)){$s=6;continue;}$s=7;continue;case 2:c=a.tok.Data;d=(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).top();e=d.DataAtom;if((e===(290819))||(e===(305415))){if(d.FirstChild===DE.nil){if(!(c==="")&&(c.charCodeAt(0)===13)){c=$substring(c,1);}if(!(c==="")&&(c.charCodeAt(0)===10)){c=$substring(c,1);}}}c=B.Replace(c,"\x00","",-1);if(c===""){$s=-1;return true;}a.reconstructActiveFormattingElements();a.addText(c);if(a.framesetOK&&!(B.TrimLeft(c," \t\r\n\f")==="")){a.framesetOK=false;}$s=7;continue;case 3:f=a.tok.DataAtom;if(f===(22020)){$s=9;continue;}if((f===(15108))||(f===(15112))||(f===(89607))||(f===(120583))||(f===(95236))||(f===(309252))||(f===(35080))||(f===(137222))||(f===(458501))||(f===(463880))||(f===(69637))){$s=10;continue;}if(f===(10244)){$s=11;continue;}if(f===(35592)){$s=12;continue;}if((f===(455431))||(f===(261127))||(f===(67333))||(f===(100106))||(f===(139270))||(f===(29191))||(f===(37635))||(f===(92931))||(f===(386562))||(f===(140808))||(f===(142858))||(f===(149510))||(f===(62982))||(f===(209158))||(f===(182790))||(f===(231172))||(f===(4867))||(f===(79618))||(f===(3073))||(f===(354311))||(f===(459783))||(f===(42754))){$s=13;continue;}if((f===(89090))||(f===(187906))||(f===(199938))||(f===(214274))||(f===(216834))||(f===(412930))){$s=14;continue;}if((f===(290819))||(f===(305415))){$s=15;continue;}if(f===(159236)){$s=16;continue;}if(f===(45570)){$s=17;continue;}if((f===(186114))||(f===(412418))){$s=18;continue;}if(f===(111113)){$s=19;continue;}if(f===(102662)){$s=20;continue;}if(f===(1)){$s=21;continue;}if((f===(257))||(f===(94211))||(f===(378116))||(f===(28162))||(f===(16132))||(f===(1537))||(f===(9473))||(f===(132613))||(f===(53766))||(f===(449798))||(f===(26626))||(f===(2817))){$s=22;continue;}if(f===(14084)){$s=23;continue;}if((f===(203014))||(f===(206599))||(f===(157702))){$s=24;continue;}if(f===(365829)){$s=25;continue;}if((f===(218628))||(f===(514))||(f===(28165))||(f===(198403))||(f===(281349))||(f===(12806))||(f===(359427))){$s=26;continue;}if((f===(3077))||(f===(227334))||(f===(113157))){$s=27;continue;}if(f===(87810)){$s=28;continue;}if(f===(197125)){$s=29;continue;}if(f===(200455)){$s=30;continue;}if(f===(217608)){$s=31;continue;}if(f===(77571)){$s=32;continue;}if(f===(195590)){$s=33;continue;}if((f===(27655))||(f===(136712))){$s=34;continue;}if(f===(408582)){$s=35;continue;}if((f===(24328))||(f===(451334))){$s=36;continue;}if((f===(14850))||(f===(104963))){$s=37;continue;}if((f===(146434))||(f===(104962))){$s=38;continue;}if((f===(208388))||(f===(462339))){$s=39;continue;}if((f===(143623))||(f===(109315))||(f===(109320))||(f===(35589))||(f===(209156))||(f===(9989))||(f===(37378))||(f===(62725))||(f===(87554))||(f===(208901))||(f===(52226))){$s=40;continue;}$s=41;continue;case 9:if((a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).contains(463880)){$s=-1;return true;}AQ((g=a.oe,(0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0])),$clone(a.tok,Q));$s=42;continue;case 10:h=AN(a);$s=43;case 43:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;$s=44;case 44:return i;case 11:if((a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).contains(463880)){$s=-1;return true;}if(a.oe.$length>=2){k=(j=a.oe,(1>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+1]));if((k.Type===3)&&(k.DataAtom===10244)){a.framesetOK=false;AQ(k,$clone(a.tok,Q));}}$s=42;continue;case 12:if(!a.framesetOK||a.oe.$length<2||!(((l=a.oe,(1>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+1])).DataAtom===10244))){$s=-1;return true;}n=(m=a.oe,(1>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+1]));if(!(n.Parent===DE.nil)){n.Parent.RemoveChild(n);}a.oe=$subslice(a.oe,0,1);a.addElement();a.im=BD;$s=-1;return true;case 13:a.popUntil(2,new DD([3073]));a.addElement();$s=42;continue;case 14:a.popUntil(2,new DD([3073]));o=a.top();p=o.DataAtom;if((p===(89090))||(p===(187906))||(p===(199938))||(p===(214274))||(p===(216834))||(p===(412930))){(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).pop();}a.addElement();$s=42;continue;case 15:a.popUntil(2,new DD([3073]));a.addElement();a.framesetOK=false;$s=42;continue;case 16:if(!(a.form===DE.nil)&&!(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).contains(463880)){$s=-1;return true;}a.popUntil(2,new DD([3073]));a.addElement();if(!(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).contains(463880)){a.form=a.top();}$s=42;continue;case 17:a.framesetOK=false;q=a.oe.$length-1>>0;while(true){if(!(q>=0)){break;}s=(r=a.oe,((q<0||q>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+q]));t=s.DataAtom;if(t===(45570)){a.oe=$subslice(a.oe,0,q);}else if((t===(455431))||(t===(92931))||(t===(3073))){q=q-(1)>>0;continue;}else if(!DA(s)){q=q-(1)>>0;continue;}break;}a.popUntil(2,new DD([3073]));a.addElement();$s=42;continue;case 18:a.framesetOK=false;u=a.oe.$length-1>>0;while(true){if(!(u>=0)){break;}w=(v=a.oe,((u<0||u>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+u]));x=w.DataAtom;if((x===(186114))||(x===(412418))){a.oe=$subslice(a.oe,0,u);}else if((x===(455431))||(x===(92931))||(x===(3073))){u=u-(1)>>0;continue;}else if(!DA(w)){u=u-(1)>>0;continue;}break;}a.popUntil(2,new DD([3073]));a.addElement();$s=42;continue;case 19:a.popUntil(2,new DD([3073]));a.addElement();$s=42;continue;case 20:a.popUntil(0,new DD([102662]));a.reconstructActiveFormattingElements();a.addElement();a.framesetOK=false;$s=42;continue;case 21:y=a.afe.$length-1>>0;while(true){if(!(y>=0&&!(((z=a.afe,((y<0||y>=z.$length)?($throwRuntimeError("index out of range"),undefined):z.$array[z.$offset+y])).Type===6)))){break;}ab=(aa=a.afe,((y<0||y>=aa.$length)?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+y]));if((ab.Type===3)&&(ab.DataAtom===1)){a.inBodyEndTagFormatting(1,"a");(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).remove(ab);(a.$ptr_afe||(a.$ptr_afe=new DL(function(){return this.$target.afe;},function($v){this.$target.afe=$v;},a))).remove(ab);break;}y=y-(1)>>0;}a.reconstructActiveFormattingElements();a.addFormattingElement();$s=42;continue;case 22:a.reconstructActiveFormattingElements();a.addFormattingElement();$s=42;continue;case 23:a.reconstructActiveFormattingElements();if(a.elementInScope(0,new DD([14084]))){a.inBodyEndTagFormatting(14084,"nobr");a.reconstructActiveFormattingElements();}a.addFormattingElement();$s=42;continue;case 24:a.reconstructActiveFormattingElements();a.addElement();a.afe=$append(a.afe,BP);a.framesetOK=false;$s=42;continue;case 25:if(!a.quirks){a.popUntil(2,new DD([3073]));}a.addElement();a.framesetOK=false;a.im=AT;$s=-1;return true;case 26:a.reconstructActiveFormattingElements();a.addElement();(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).pop();a.acknowledgeSelfClosingTag();if(a.tok.DataAtom===281349){$s=45;continue;}$s=46;continue;case 45:ac=a.tok.Attr;ad=0;case 47:if(!(ad<ac.$length)){$s=48;continue;}ae=((ad<0||ad>=ac.$length)?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+ad]);if(ae.Key==="type"){$s=49;continue;}$s=50;continue;case 49:af=B.ToLower(ae.Val);$s=53;case 53:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}if(af==="hidden"){$s=51;continue;}$s=52;continue;case 51:$s=-1;return true;case 52:case 50:ad++;$s=47;continue;case 48:case 46:a.framesetOK=false;$s=42;continue;case 27:a.addElement();(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).pop();a.acknowledgeSelfClosingTag();$s=42;continue;case 28:a.popUntil(2,new DD([3073]));a.addElement();(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).pop();a.acknowledgeSelfClosingTag();a.framesetOK=false;$s=42;continue;case 29:a.tok.DataAtom=198403;a.tok.Data=new I.Atom(198403).String();$s=-1;return false;case 30:if(!(a.form===DE.nil)){$s=-1;return true;}ag="";ah="This is a searchable index. Enter search keywords: ";ai=new DG([new P.ptr("","name","isindex")]);aj=a.tok.Attr;ak=0;while(true){if(!(ak<aj.$length)){break;}al=((ak<0||ak>=aj.$length)?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+ak]);am=al.Key;if(am===("action")){ag=al.Val;}else if(am===("name")){}else if(am===("prompt")){ah=al.Val;}else{ai=$append(ai,al);}ak++;}a.acknowledgeSelfClosingTag();a.popUntil(2,new DD([3073]));$r=a.parseImpliedToken(2,159236,new I.Atom(159236).String());$s=54;case 54:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(a.form===DE.nil){$s=-1;return true;}if(!(ag==="")){a.form.Attr=new DG([new P.ptr("","action",ag)]);}$r=a.parseImpliedToken(2,87810,new I.Atom(87810).String());$s=55;case 55:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=a.parseImpliedToken(2,22789,new I.Atom(22789).String());$s=56;case 56:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a.addText(ah);a.addChild(new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,3,281349,new I.Atom(281349).String(),"",ai));(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).pop();$r=a.parseImpliedToken(3,22789,new I.Atom(22789).String());$s=57;case 57:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=a.parseImpliedToken(2,87810,new I.Atom(87810).String());$s=58;case 58:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=a.parseImpliedToken(3,159236,new I.Atom(159236).String());$s=59;case 59:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=42;continue;case 31:a.addElement();a.setOriginalIM();a.framesetOK=false;a.im=AS;$s=42;continue;case 32:a.popUntil(2,new DD([3073]));a.reconstructActiveFormattingElements();a.framesetOK=false;a.addElement();a.setOriginalIM();a.im=AS;$s=42;continue;case 33:a.framesetOK=false;a.addElement();a.setOriginalIM();a.im=AS;$s=42;continue;case 34:a.addElement();a.setOriginalIM();a.im=AS;$s=42;continue;case 35:a.reconstructActiveFormattingElements();a.addElement();a.framesetOK=false;a.im=AZ;$s=-1;return true;case 36:if(a.top().DataAtom===451334){(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).pop();}a.reconstructActiveFormattingElements();a.addElement();$s=42;continue;case 37:if(a.elementInScope(0,new DD([64260]))){a.generateImpliedEndTags(DH.nil);}a.addElement();$s=42;continue;case 38:if(a.elementInScope(0,new DD([64260]))){a.generateImpliedEndTags(new DH(["rtc"]));}a.addElement();$s=42;continue;case 39:a.reconstructActiveFormattingElements();if(a.tok.DataAtom===208388){BU(a.tok.Attr,CA);}else{BU(a.tok.Attr,CB);}BV(a.tok.Attr);a.addElement();a.top().Namespace=a.tok.Data;if(a.hasSelfClosingToken){(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).pop();a.acknowledgeSelfClosingTag();}$s=-1;return true;case 40:$s=42;continue;case 41:a.reconstructActiveFormattingElements();a.addElement();case 42:case 8:$s=7;continue;case 4:an=a.tok.DataAtom;if(an===(10244)){$s=61;continue;}if(an===(22020)){$s=62;continue;}if((an===(455431))||(an===(261127))||(an===(67333))||(an===(100106))||(an===(102662))||(an===(139270))||(an===(29191))||(an===(37635))||(an===(92931))||(an===(386562))||(an===(140808))||(an===(142858))||(an===(149510))||(an===(62982))||(an===(209158))||(an===(182790))||(an===(305415))||(an===(231172))||(an===(4867))||(an===(79618))||(an===(290819))||(an===(354311))||(an===(459783))||(an===(42754))){$s=63;continue;}if(an===(159236)){$s=64;continue;}if(an===(3073)){$s=65;continue;}if(an===(45570)){$s=66;continue;}if((an===(186114))||(an===(412418))){$s=67;continue;}if((an===(89090))||(an===(187906))||(an===(199938))||(an===(214274))||(an===(216834))||(an===(412930))){$s=68;continue;}if((an===(1))||(an===(257))||(an===(94211))||(an===(378116))||(an===(28162))||(an===(16132))||(an===(1537))||(an===(14084))||(an===(9473))||(an===(132613))||(an===(53766))||(an===(449798))||(an===(26626))||(an===(2817))){$s=69;continue;}if((an===(203014))||(an===(206599))||(an===(157702))){$s=70;continue;}if(an===(514)){$s=71;continue;}if(an===(463880)){$s=72;continue;}$s=73;continue;case 61:if(a.elementInScope(0,new DD([10244]))){a.im=BC;}$s=74;continue;case 62:if(a.elementInScope(0,new DD([10244]))){$s=75;continue;}$s=76;continue;case 75:$r=a.parseImpliedToken(3,10244,new I.Atom(10244).String());$s=77;case 77:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return false;case 76:$s=-1;return true;case 63:a.popUntil(0,new DD([a.tok.DataAtom]));$s=74;continue;case 64:if((a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).contains(463880)){ao=a.indexOfElementInScope(0,new DD([159236]));if(ao===-1){$s=-1;return true;}a.generateImpliedEndTags(DH.nil);if(!(((ap=a.oe,((ao<0||ao>=ap.$length)?($throwRuntimeError("index out of range"),undefined):ap.$array[ap.$offset+ao])).DataAtom===159236))){$s=-1;return true;}a.popUntil(0,new DD([159236]));}else{aq=a.form;a.form=DE.nil;ar=a.indexOfElementInScope(0,new DD([159236]));if(aq===DE.nil||(ar===-1)||!((as=a.oe,((ar<0||ar>=as.$length)?($throwRuntimeError("index out of range"),undefined):as.$array[as.$offset+ar]))===aq)){$s=-1;return true;}a.generateImpliedEndTags(DH.nil);(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).remove(aq);}$s=74;continue;case 65:if(!a.elementInScope(2,new DD([3073]))){$s=78;continue;}$s=79;continue;case 78:$r=a.parseImpliedToken(2,3073,new I.Atom(3073).String());$s=80;case 80:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 79:a.popUntil(2,new DD([3073]));$s=74;continue;case 66:a.popUntil(1,new DD([45570]));$s=74;continue;case 67:a.popUntil(0,new DD([a.tok.DataAtom]));$s=74;continue;case 68:a.popUntil(0,new DD([89090,187906,199938,214274,216834,412930]));$s=74;continue;case 69:a.inBodyEndTagFormatting(a.tok.DataAtom,a.tok.Data);$s=74;continue;case 70:if(a.popUntil(0,new DD([a.tok.DataAtom]))){a.clearActiveFormattingElements();}$s=74;continue;case 71:a.tok.Type=2;$s=-1;return false;case 72:at=AN(a);$s=81;case 81:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}au=at;$s=82;case 82:return au;case 73:a.inBodyEndTagOther(a.tok.DataAtom,a.tok.Data);case 74:case 60:$s=7;continue;case 5:a.addChild(new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,4,0,a.tok.Data,"",DG.nil));$s=7;continue;case 6:if(a.templateStack.$length>0){a.im=BB;$s=-1;return false;}else{av=a.oe;aw=0;while(true){if(!(aw<av.$length)){break;}ax=((aw<0||aw>=av.$length)?($throwRuntimeError("index out of range"),undefined):av.$array[av.$offset+aw]);ay=ax.DataAtom;if((ay===(186114))||(ay===(412418))||(ay===(45570))||(ay===(24328))||(ay===(451334))||(ay===(3073))||(ay===(14850))||(ay===(146434))||(ay===(104962))||(ay===(104963))||(ay===(9989))||(ay===(37378))||(ay===(62725))||(ay===(87554))||(ay===(208901))||(ay===(52226))||(ay===(10244))||(ay===(22020))){}else{$s=-1;return true;}aw++;}}case 7:case 1:$s=-1;return true;}return;}var $f={$blk:AR,$c:true,$r,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};AG.ptr.prototype.inBodyEndTagFormatting=function(a,b){var a,aa,ab,ac,ad,ae,af,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=this;d=0;while(true){if(!(d<8)){break;}e=DE.nil;f=c.afe.$length-1>>0;while(true){if(!(f>=0)){break;}if((g=c.afe,((f<0||f>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+f])).Type===6){break;}if((h=c.afe,((f<0||f>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+f])).DataAtom===a){e=(i=c.afe,((f<0||f>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+f]));break;}f=f-(1)>>0;}if(e===DE.nil){c.inBodyEndTagOther(a,b);return;}j=(c.$ptr_oe||(c.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},c))).index(e);if(j===-1){(c.$ptr_afe||(c.$ptr_afe=new DL(function(){return this.$target.afe;},function($v){this.$target.afe=$v;},c))).remove(e);return;}if(!c.elementInScope(0,new DD([a]))){return;}k=DE.nil;l=$subslice(c.oe,j);m=0;while(true){if(!(m<l.$length)){break;}n=((m<0||m>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+m]);if(DA(n)){k=n;break;}m++;}if(k===DE.nil){o=(c.$ptr_oe||(c.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},c))).pop();while(true){if(!(!(o===e))){break;}o=(c.$ptr_oe||(c.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},c))).pop();}(c.$ptr_afe||(c.$ptr_afe=new DL(function(){return this.$target.afe;},function($v){this.$target.afe=$v;},c))).remove(o);return;}r=(p=c.oe,q=j-1>>0,((q<0||q>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+q]));s=(c.$ptr_afe||(c.$ptr_afe=new DL(function(){return this.$target.afe;},function($v){this.$target.afe=$v;},c))).index(e);t=k;u=k;v=(c.$ptr_oe||(c.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},c))).index(u);w=0;while(true){if(!(w<3)){break;}v=v-(1)>>0;u=(x=c.oe,((v<0||v>=x.$length)?($throwRuntimeError("index out of range"),undefined):x.$array[x.$offset+v]));if((c.$ptr_afe||(c.$ptr_afe=new DL(function(){return this.$target.afe;},function($v){this.$target.afe=$v;},c))).index(u)===-1){(c.$ptr_oe||(c.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},c))).remove(u);w=w+(1)>>0;continue;}if(u===e){break;}y=u.clone();(z=c.afe,aa=(c.$ptr_afe||(c.$ptr_afe=new DL(function(){return this.$target.afe;},function($v){this.$target.afe=$v;},c))).index(u),((aa<0||aa>=z.$length)?($throwRuntimeError("index out of range"),undefined):z.$array[z.$offset+aa]=y));(ab=c.oe,ac=(c.$ptr_oe||(c.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},c))).index(u),((ac<0||ac>=ab.$length)?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+ac]=y));u=y;if(t===k){s=(c.$ptr_afe||(c.$ptr_afe=new DL(function(){return this.$target.afe;},function($v){this.$target.afe=$v;},c))).index(u)+1>>0;}if(!(t.Parent===DE.nil)){t.Parent.RemoveChild(t);}u.AppendChild(t);t=u;w=w+(1)>>0;}if(!(t.Parent===DE.nil)){t.Parent.RemoveChild(t);}ad=r.DataAtom;if((ad===(365829))||(ad===(9989))||(ad===(62725))||(ad===(208901))||(ad===(52226))){c.fosterParent(t);}else{r.AppendChild(t);}ae=e.clone();BR(ae,k);k.AppendChild(ae);af=(c.$ptr_afe||(c.$ptr_afe=new DL(function(){return this.$target.afe;},function($v){this.$target.afe=$v;},c))).index(e);if(!((af===-1))&&af<s){s=s-(1)>>0;}(c.$ptr_afe||(c.$ptr_afe=new DL(function(){return this.$target.afe;},function($v){this.$target.afe=$v;},c))).remove(e);(c.$ptr_afe||(c.$ptr_afe=new DL(function(){return this.$target.afe;},function($v){this.$target.afe=$v;},c))).insert(s,ae);(c.$ptr_oe||(c.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},c))).remove(e);(c.$ptr_oe||(c.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},c))).insert((c.$ptr_oe||(c.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},c))).index(k)+1>>0,ae);d=d+(1)>>0;}};AG.prototype.inBodyEndTagFormatting=function(a,b){return this.$val.inBodyEndTagFormatting(a,b);};AG.ptr.prototype.inBodyEndTagOther=function(a,b){var a,b,c,d,e,f,g;c=this;d=c.oe.$length-1>>0;while(true){if(!(d>=0)){break;}if((((e=c.oe,((d<0||d>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+d])).DataAtom===a))&&((!((a===0)))||((f=c.oe,((d<0||d>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+d])).Data===b))){c.oe=$subslice(c.oe,0,d);break;}if(DA((g=c.oe,((d<0||d>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+d])))){break;}d=d-(1)>>0;}};AG.prototype.inBodyEndTagOther=function(a,b){return this.$val.inBodyEndTagOther(a,b);};AS=function(a){var a,b,c,d;b=a.tok.Type;if(b===(0)){(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).pop();}else if(b===(1)){c=a.tok.Data;d=(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).top();if((d.DataAtom===217608)&&d.FirstChild===DE.nil){if(!(c==="")&&(c.charCodeAt(0)===13)){c=$substring(c,1);}if(!(c==="")&&(c.charCodeAt(0)===10)){c=$substring(c,1);}}if(c===""){return true;}a.addText(c);return true;}else if(b===(3)){(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).pop();}a.im=a.originalIM;a.originalIM=$throwNilPointerError;return a.tok.Type===3;};AT=function(a){var{a,aa,ab,ac,ad,ae,af,ag,ah,ai,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r,$c}=$restore(this,{a});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);a=[a];b=a[0].tok.Type;if(b===(1)){$s=2;continue;}if(b===(2)){$s=3;continue;}if(b===(3)){$s=4;continue;}if(b===(5)){$s=5;continue;}if(b===(6)){$s=6;continue;}if(b===(0)){$s=7;continue;}$s=8;continue;case 2:a[0].tok.Data=B.Replace(a[0].tok.Data,"\x00","",-1);c=(a[0].$ptr_oe||(a[0].$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a[0]))).top().DataAtom;if((c===(365829))||(c===(9989))||(c===(62725))||(c===(208901))||(c===(52226))){$s=10;continue;}$s=11;continue;case 10:if(B.Trim(a[0].tok.Data," \t\r\n\f")===""){$s=12;continue;}$s=13;continue;case 12:a[0].addText(a[0].tok.Data);d=true;$s=14;case 14:return d;case 13:case 11:case 9:$s=8;continue;case 3:e=a[0].tok.DataAtom;if(e===(143623)){$s=16;continue;}if(e===(109320)){$s=17;continue;}if(e===(109315)){$s=18;continue;}if((e===(9989))||(e===(62725))||(e===(208901))){$s=19;continue;}if((e===(37378))||(e===(87554))||(e===(52226))){$s=20;continue;}if(e===(365829)){$s=21;continue;}if((e===(458501))||(e===(137222))||(e===(463880))){$s=22;continue;}if(e===(281349)){$s=23;continue;}if(e===(159236)){$s=24;continue;}if(e===(408582)){$s=25;continue;}$s=26;continue;case 16:a[0].clearStackToContext(3);a[0].afe=$append(a[0].afe,BP);a[0].addElement();a[0].im=AU;f=true;$s=27;case 27:return f;case 17:a[0].clearStackToContext(3);a[0].addElement();a[0].im=AV;g=true;$s=28;case 28:return g;case 18:$r=a[0].parseImpliedToken(2,109320,new I.Atom(109320).String());$s=29;case 29:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=false;$s=30;case 30:return h;case 19:a[0].clearStackToContext(3);a[0].addElement();a[0].im=AW;i=true;$s=31;case 31:return i;case 20:$r=a[0].parseImpliedToken(2,9989,new I.Atom(9989).String());$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=false;$s=33;case 33:return j;case 21:if(a[0].popUntil(3,new DD([365829]))){$s=34;continue;}$s=35;continue;case 34:a[0].resetInsertionMode();k=false;$s=36;case 36:return k;case 35:l=true;$s=37;case 37:return l;case 22:m=AN(a[0]);$s=38;case 38:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;$s=39;case 39:return n;case 23:o=a[0].tok.Attr;p=0;case 40:if(!(p<o.$length)){$s=41;continue;}q=((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]);if(!(q.Key==="type")){r=false;$s=44;continue s;}s=B.ToLower(q.Val);$s=45;case 45:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}r=s==="hidden";case 44:if(r){$s=42;continue;}$s=43;continue;case 42:a[0].addElement();(a[0].$ptr_oe||(a[0].$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a[0]))).pop();t=true;$s=46;case 46:return t;case 43:p++;$s=40;continue;case 41:$s=26;continue;case 24:if((a[0].$ptr_oe||(a[0].$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a[0]))).contains(463880)||!(a[0].form===DE.nil)){$s=47;continue;}$s=48;continue;case 47:u=true;$s=49;case 49:return u;case 48:a[0].addElement();a[0].form=(a[0].$ptr_oe||(a[0].$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a[0]))).pop();$s=26;continue;case 25:a[0].reconstructActiveFormattingElements();v=a[0].top().DataAtom;if((v===(365829))||(v===(9989))||(v===(62725))||(v===(208901))||(v===(52226))){a[0].fosterParenting=true;}a[0].addElement();a[0].fosterParenting=false;a[0].framesetOK=false;a[0].im=BA;w=true;$s=50;case 50:return w;case 26:case 15:$s=8;continue;case 4:x=a[0].tok.DataAtom;if(x===(365829)){$s=52;continue;}if((x===(10244))||(x===(143623))||(x===(109315))||(x===(109320))||(x===(22020))||(x===(9989))||(x===(37378))||(x===(62725))||(x===(87554))||(x===(208901))||(x===(52226))){$s=53;continue;}if(x===(463880)){$s=54;continue;}$s=55;continue;case 52:if(a[0].popUntil(3,new DD([365829]))){$s=56;continue;}$s=57;continue;case 56:a[0].resetInsertionMode();y=true;$s=58;case 58:return y;case 57:z=true;$s=59;case 59:return z;case 53:aa=true;$s=60;case 60:return aa;case 54:ab=AN(a[0]);$s=61;case 61:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ac=ab;$s=62;case 62:return ac;case 55:case 51:$s=8;continue;case 5:a[0].addChild(new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,4,0,a[0].tok.Data,"",DG.nil));ad=true;$s=63;case 63:return ad;case 6:ae=true;$s=64;case 64:return ae;case 7:af=AR(a[0]);$s=65;case 65:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ag=af;$s=66;case 66:return ag;case 8:case 1:a[0].fosterParenting=true;$deferred.push([(function(a){return function(){a[0].fosterParenting=false;};})(a),[]]);ah=AR(a[0]);$s=67;case 67:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=ah;$s=68;case 68:return ai;}return;}}catch(err){$err=err;$s=-1;return false;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:AT,$c:true,$r,a,aa,ab,ac,ad,ae,af,ag,ah,ai,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred};return $f;}}};AU=function(a){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=a.tok.Type;if(b===(2)){c=a.tok.DataAtom;if((c===(143623))||(c===(109315))||(c===(109320))||(c===(9989))||(c===(37378))||(c===(62725))||(c===(208901))||(c===(52226))){if(a.popUntil(3,new DD([143623]))){a.clearActiveFormattingElements();a.im=AT;$s=-1;return false;}else{$s=-1;return true;}}else if(c===(408582)){a.reconstructActiveFormattingElements();a.addElement();a.framesetOK=false;a.im=BA;$s=-1;return true;}}else if(b===(3)){d=a.tok.DataAtom;if(d===(143623)){if(a.popUntil(3,new DD([143623]))){a.clearActiveFormattingElements();a.im=AT;}$s=-1;return true;}else if(d===(365829)){if(a.popUntil(3,new DD([143623]))){a.clearActiveFormattingElements();a.im=AT;$s=-1;return false;}else{$s=-1;return true;}}else if((d===(10244))||(d===(109315))||(d===(109320))||(d===(22020))||(d===(9989))||(d===(37378))||(d===(62725))||(d===(87554))||(d===(208901))||(d===(52226))){$s=-1;return true;}}e=AR(a);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$s=2;case 2:return f;}return;}var $f={$blk:AU,$c:true,$r,a,b,c,d,e,f,$s};return $f;};AV=function(a){var{a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=a.tok.Type;if(b===(1)){$s=2;continue;}if(b===(5)){$s=3;continue;}if(b===(6)){$s=4;continue;}if(b===(2)){$s=5;continue;}if(b===(3)){$s=6;continue;}if(b===(0)){$s=7;continue;}$s=8;continue;case 2:c=B.TrimLeft(a.tok.Data," \t\r\n\f");if(c.length<a.tok.Data.length){a.addText($substring(a.tok.Data,0,(a.tok.Data.length-c.length>>0)));if(c===""){$s=-1;return true;}a.tok.Data=c;}$s=8;continue;case 3:a.addChild(new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,4,0,a.tok.Data,"",DG.nil));$s=-1;return true;case 4:$s=-1;return true;case 5:d=a.tok.DataAtom;if(d===(22020)){$s=10;continue;}if(d===(109315)){$s=11;continue;}if(d===(463880)){$s=12;continue;}$s=13;continue;case 10:e=AR(a);$s=14;case 14:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$s=15;case 15:return f;case 11:a.addElement();(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).pop();a.acknowledgeSelfClosingTag();$s=-1;return true;case 12:g=AN(a);$s=16;case 16:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$s=17;case 17:return h;case 13:case 9:$s=8;continue;case 6:i=a.tok.DataAtom;if(i===(109320)){$s=19;continue;}if(i===(109315)){$s=20;continue;}if(i===(463880)){$s=21;continue;}$s=22;continue;case 19:if((a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).top().DataAtom===109320){(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).pop();a.im=AT;}$s=-1;return true;case 20:$s=-1;return true;case 21:j=AN(a);$s=23;case 23:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;$s=24;case 24:return k;case 22:case 18:$s=8;continue;case 7:l=AR(a);$s=25;case 25:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;$s=26;case 26:return m;case 8:case 1:if(!(((a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).top().DataAtom===109320))){$s=-1;return true;}(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).pop();a.im=AT;$s=-1;return false;}return;}var $f={$blk:AV,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,$s};return $f;};AW=function(a){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=a.tok.Type;if(b===(2)){$s=2;continue;}if(b===(3)){$s=3;continue;}if(b===(5)){$s=4;continue;}$s=5;continue;case 2:c=a.tok.DataAtom;if(c===(52226)){$s=7;continue;}if((c===(37378))||(c===(87554))){$s=8;continue;}if((c===(143623))||(c===(109315))||(c===(109320))||(c===(9989))||(c===(62725))||(c===(208901))){$s=9;continue;}$s=10;continue;case 7:a.clearStackToContext(5);a.addElement();a.im=AX;$s=-1;return true;case 8:$r=a.parseImpliedToken(2,52226,new I.Atom(52226).String());$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return false;case 9:if(a.popUntil(3,new DD([9989,208901,62725]))){a.im=AT;$s=-1;return false;}$s=-1;return true;case 10:case 6:$s=5;continue;case 3:d=a.tok.DataAtom;if((d===(9989))||(d===(62725))||(d===(208901))){if(a.elementInScope(3,new DD([a.tok.DataAtom]))){a.clearStackToContext(5);(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).pop();a.im=AT;}$s=-1;return true;}else if(d===(365829)){if(a.popUntil(3,new DD([9989,208901,62725]))){a.im=AT;$s=-1;return false;}$s=-1;return true;}else if((d===(10244))||(d===(143623))||(d===(109315))||(d===(109320))||(d===(22020))||(d===(37378))||(d===(87554))||(d===(52226))){$s=-1;return true;}$s=5;continue;case 4:a.addChild(new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,4,0,a.tok.Data,"",DG.nil));$s=-1;return true;case 5:case 1:e=AT(a);$s=12;case 12:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$s=13;case 13:return f;}return;}var $f={$blk:AW,$c:true,$r,a,b,c,d,e,f,$s};return $f;};AX=function(a){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=a.tok.Type;if(b===(2)){$s=2;continue;}if(b===(3)){$s=3;continue;}$s=4;continue;case 2:c=a.tok.DataAtom;if((c===(37378))||(c===(87554))){a.clearStackToContext(4);a.addElement();a.afe=$append(a.afe,BP);a.im=AY;$s=-1;return true;}else if((c===(143623))||(c===(109315))||(c===(109320))||(c===(9989))||(c===(62725))||(c===(208901))||(c===(52226))){if(a.popUntil(3,new DD([52226]))){a.im=AW;$s=-1;return false;}$s=-1;return true;}$s=4;continue;case 3:d=a.tok.DataAtom;if(d===(52226)){$s=6;continue;}if(d===(365829)){$s=7;continue;}if((d===(9989))||(d===(62725))||(d===(208901))){$s=8;continue;}if((d===(10244))||(d===(143623))||(d===(109315))||(d===(109320))||(d===(22020))||(d===(37378))||(d===(87554))){$s=9;continue;}$s=10;continue;case 6:if(a.popUntil(3,new DD([52226]))){a.im=AW;$s=-1;return true;}$s=-1;return true;case 7:if(a.popUntil(3,new DD([52226]))){a.im=AW;$s=-1;return false;}$s=-1;return true;case 8:if(a.elementInScope(3,new DD([a.tok.DataAtom]))){$s=11;continue;}$s=12;continue;case 11:$r=a.parseImpliedToken(3,52226,new I.Atom(52226).String());$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return false;case 12:$s=-1;return true;case 9:$s=-1;return true;case 10:case 5:case 4:case 1:e=AT(a);$s=14;case 14:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$s=15;case 15:return f;}return;}var $f={$blk:AX,$c:true,$r,a,b,c,d,e,f,$s};return $f;};AY=function(a){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=a.tok.Type;if(b===(2)){c=a.tok.DataAtom;if((c===(143623))||(c===(109315))||(c===(109320))||(c===(9989))||(c===(37378))||(c===(62725))||(c===(87554))||(c===(208901))||(c===(52226))){if(a.popUntil(3,new DD([37378,87554]))){a.clearActiveFormattingElements();a.im=AX;$s=-1;return false;}$s=-1;return true;}else if(c===(408582)){a.reconstructActiveFormattingElements();a.addElement();a.framesetOK=false;a.im=BA;$s=-1;return true;}}else if(b===(3)){d=a.tok.DataAtom;if((d===(37378))||(d===(87554))){if(!a.popUntil(3,new DD([a.tok.DataAtom]))){$s=-1;return true;}a.clearActiveFormattingElements();a.im=AX;$s=-1;return true;}else if((d===(10244))||(d===(143623))||(d===(109315))||(d===(109320))||(d===(22020))){$s=-1;return true;}else if((d===(365829))||(d===(9989))||(d===(62725))||(d===(208901))||(d===(52226))){if(!a.elementInScope(3,new DD([a.tok.DataAtom]))){$s=-1;return true;}if(a.popUntil(3,new DD([37378,87554]))){a.clearActiveFormattingElements();}a.im=AX;$s=-1;return false;}}e=AR(a);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$s=2;case 2:return f;}return;}var $f={$blk:AY,$c:true,$r,a,b,c,d,e,f,$s};return $f;};AZ=function(a){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=a.tok.Type;if(b===(1)){$s=2;continue;}if(b===(2)){$s=3;continue;}if(b===(3)){$s=4;continue;}if(b===(5)){$s=5;continue;}if(b===(6)){$s=6;continue;}if(b===(0)){$s=7;continue;}$s=8;continue;case 2:a.addText(B.Replace(a.tok.Data,"\x00","",-1));$s=8;continue;case 3:c=a.tok.DataAtom;if(c===(22020)){$s=10;continue;}if(c===(451334)){$s=11;continue;}if(c===(24328)){$s=12;continue;}if(c===(408582)){$s=13;continue;}if((c===(281349))||(c===(12806))||(c===(217608))){$s=14;continue;}if((c===(137222))||(c===(463880))){$s=15;continue;}$s=16;continue;case 10:d=AR(a);$s=17;case 17:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$s=18;case 18:return e;case 11:if(a.top().DataAtom===451334){(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).pop();}a.addElement();$s=16;continue;case 12:if(a.top().DataAtom===451334){(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).pop();}if(a.top().DataAtom===24328){(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).pop();}a.addElement();$s=16;continue;case 13:if(a.popUntil(6,new DD([408582]))){a.resetInsertionMode();}else{$s=-1;return true;}$s=16;continue;case 14:if(a.elementInScope(6,new DD([408582]))){$s=19;continue;}$s=20;continue;case 19:$r=a.parseImpliedToken(3,408582,new I.Atom(408582).String());$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return false;case 20:a.tokenizer.NextIsNotRawText();$s=-1;return true;case 15:f=AN(a);$s=22;case 22:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;$s=23;case 23:return g;case 16:case 9:$s=8;continue;case 4:h=a.tok.DataAtom;if(h===(451334)){$s=25;continue;}if(h===(24328)){$s=26;continue;}if(h===(408582)){$s=27;continue;}if(h===(463880)){$s=28;continue;}$s=29;continue;case 25:if(a.top().DataAtom===451334){(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).pop();}$s=29;continue;case 26:i=a.oe.$length-1>>0;if((j=a.oe,((i<0||i>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+i])).DataAtom===451334){i=i-(1)>>0;}if((k=a.oe,((i<0||i>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+i])).DataAtom===24328){a.oe=$subslice(a.oe,0,i);}$s=29;continue;case 27:if(a.popUntil(6,new DD([408582]))){a.resetInsertionMode();}else{$s=-1;return true;}$s=29;continue;case 28:l=AN(a);$s=30;case 30:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;$s=31;case 31:return m;case 29:case 24:$s=8;continue;case 5:a.addChild(new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,4,0,a.tok.Data,"",DG.nil));$s=8;continue;case 6:$s=-1;return true;case 7:n=AR(a);$s=32;case 32:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;$s=33;case 33:return o;case 8:case 1:$s=-1;return true;}return;}var $f={$blk:AZ,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,$s};return $f;};BA=function(a){var{a,b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=a.tok.Type;if((b===(2))||(b===(3))){c=a.tok.DataAtom;if((c===(143623))||(c===(365829))||(c===(9989))||(c===(62725))||(c===(208901))||(c===(52226))||(c===(37378))||(c===(87554))){if((a.tok.Type===3)&&!a.elementInScope(3,new DD([a.tok.DataAtom]))){$s=-1;return true;}d=a.oe.$length-1>>0;while(true){if(!(d>=0)){break;}f=(e=a.oe,((d<0||d>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+d]));if(f.DataAtom===408582){a.oe=$subslice(a.oe,0,d);break;}d=d-(1)>>0;}a.resetInsertionMode();$s=-1;return false;}}g=AZ(a);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$s=2;case 2:return h;}return;}var $f={$blk:BA,$c:true,$r,a,b,c,d,e,f,g,h,$s};return $f;};BB=function(a){var{a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=a.tok.Type;if((b===(1))||(b===(5))||(b===(6))){$s=2;continue;}if(b===(2)){$s=3;continue;}if(b===(3)){$s=4;continue;}if(b===(0)){$s=5;continue;}$s=6;continue;case 2:c=AR(a);$s=7;case 7:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;$s=8;case 8:return d;case 3:e=a.tok.DataAtom;if((e===(15108))||(e===(15112))||(e===(89607))||(e===(95236))||(e===(309252))||(e===(35080))||(e===(137222))||(e===(458501))||(e===(463880))||(e===(69637))){$s=10;continue;}if((e===(143623))||(e===(109320))||(e===(9989))||(e===(62725))||(e===(208901))){$s=11;continue;}if(e===(109315)){$s=12;continue;}if(e===(52226)){$s=13;continue;}if((e===(37378))||(e===(87554))){$s=14;continue;}$s=15;continue;case 10:f=AN(a);$s=17;case 17:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;$s=18;case 18:return g;case 11:(a.$ptr_templateStack||(a.$ptr_templateStack=new DM(function(){return this.$target.templateStack;},function($v){this.$target.templateStack=$v;},a))).pop();a.templateStack=$append(a.templateStack,AT);a.im=AT;$s=-1;return false;case 12:(a.$ptr_templateStack||(a.$ptr_templateStack=new DM(function(){return this.$target.templateStack;},function($v){this.$target.templateStack=$v;},a))).pop();a.templateStack=$append(a.templateStack,AV);a.im=AV;$s=-1;return false;case 13:(a.$ptr_templateStack||(a.$ptr_templateStack=new DM(function(){return this.$target.templateStack;},function($v){this.$target.templateStack=$v;},a))).pop();a.templateStack=$append(a.templateStack,AW);a.im=AW;$s=-1;return false;case 14:(a.$ptr_templateStack||(a.$ptr_templateStack=new DM(function(){return this.$target.templateStack;},function($v){this.$target.templateStack=$v;},a))).pop();a.templateStack=$append(a.templateStack,AX);a.im=AX;$s=-1;return false;case 15:(a.$ptr_templateStack||(a.$ptr_templateStack=new DM(function(){return this.$target.templateStack;},function($v){this.$target.templateStack=$v;},a))).pop();a.templateStack=$append(a.templateStack,AR);a.im=AR;$s=-1;return false;case 16:case 9:$s=6;continue;case 4:h=a.tok.DataAtom;if(h===(463880)){$s=20;continue;}$s=21;continue;case 20:i=AN(a);$s=23;case 23:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;$s=24;case 24:return j;case 21:$s=-1;return true;case 22:case 19:$s=6;continue;case 5:if(!(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).contains(463880)){$s=-1;return true;}a.generateImpliedEndTags(DH.nil);k=a.oe.$length-1>>0;while(true){if(!(k>=0)){break;}m=(l=a.oe,((k<0||k>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+k]));if(m.Namespace===""&&(m.DataAtom===463880)){a.oe=$subslice(a.oe,0,k);break;}k=k-(1)>>0;}a.clearActiveFormattingElements();(a.$ptr_templateStack||(a.$ptr_templateStack=new DM(function(){return this.$target.templateStack;},function($v){this.$target.templateStack=$v;},a))).pop();a.resetInsertionMode();$s=-1;return false;case 6:case 1:$s=-1;return false;}return;}var $f={$blk:BB,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,$s};return $f;};BC=function(a){var{a,b,c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=a.tok.Type;if(b===(0)){$s=2;continue;}if(b===(1)){$s=3;continue;}if(b===(2)){$s=4;continue;}if(b===(3)){$s=5;continue;}if(b===(5)){$s=6;continue;}$s=7;continue;case 2:$s=-1;return true;case 3:c=B.TrimLeft(a.tok.Data," \t\r\n\f");if(c.length===0){$s=8;continue;}$s=9;continue;case 8:d=AR(a);$s=10;case 10:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$s=11;case 11:return e;case 9:$s=7;continue;case 4:if(a.tok.DataAtom===22020){$s=12;continue;}$s=13;continue;case 12:f=AR(a);$s=14;case 14:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;$s=15;case 15:return g;case 13:$s=7;continue;case 5:if(a.tok.DataAtom===22020){if(!a.fragment){a.im=BF;}$s=-1;return true;}$s=7;continue;case 6:if(a.oe.$length<1||!(((h=a.oe,(0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0])).DataAtom===22020))){$panic(new $String("html: bad parser state: <html> element not found, in the after-body insertion mode"));}(i=a.oe,(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])).AppendChild(new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,4,0,a.tok.Data,"",DG.nil));$s=-1;return true;case 7:case 1:a.im=AR;$s=-1;return false;}return;}var $f={$blk:BC,$c:true,$r,a,b,c,d,e,f,g,h,i,$s};return $f;};BD=function(a){var{a,b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=a.tok.Type;if(b===(5)){$s=2;continue;}if(b===(1)){$s=3;continue;}if(b===(2)){$s=4;continue;}if(b===(3)){$s=5;continue;}$s=6;continue;case 2:a.addChild(new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,4,0,a.tok.Data,"",DG.nil));$s=6;continue;case 3:c=B.Map((function(c){var c,d;d=c;if((d===(32))||(d===(9))||(d===(10))||(d===(12))||(d===(13))){return c;}return-1;}),a.tok.Data);$s=7;case 7:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!(d==="")){a.addText(d);}$s=6;continue;case 4:e=a.tok.DataAtom;if(e===(22020)){$s=9;continue;}if(e===(35592)){$s=10;continue;}if(e===(35589)){$s=11;continue;}if(e===(35080)){$s=12;continue;}$s=13;continue;case 9:f=AR(a);$s=14;case 14:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;$s=15;case 15:return g;case 10:a.addElement();$s=13;continue;case 11:a.addElement();(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).pop();a.acknowledgeSelfClosingTag();$s=13;continue;case 12:h=AN(a);$s=16;case 16:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;$s=17;case 17:return i;case 13:case 8:$s=6;continue;case 5:j=a.tok.DataAtom;if(j===(35592)){if(!(((a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).top().DataAtom===22020))){(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).pop();if(!(((a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).top().DataAtom===35592))){a.im=BE;$s=-1;return true;}}}case 6:case 1:$s=-1;return true;}return;}var $f={$blk:BD,$c:true,$r,a,b,c,d,e,f,g,h,i,j,$s};return $f;};BE=function(a){var{a,b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=a.tok.Type;if(b===(5)){$s=2;continue;}if(b===(1)){$s=3;continue;}if(b===(2)){$s=4;continue;}if(b===(3)){$s=5;continue;}$s=6;continue;case 2:a.addChild(new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,4,0,a.tok.Data,"",DG.nil));$s=6;continue;case 3:c=B.Map((function(c){var c,d;d=c;if((d===(32))||(d===(9))||(d===(10))||(d===(12))||(d===(13))){return c;}return-1;}),a.tok.Data);$s=7;case 7:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!(d==="")){a.addText(d);}$s=6;continue;case 4:e=a.tok.DataAtom;if(e===(22020)){$s=9;continue;}if(e===(35080)){$s=10;continue;}$s=11;continue;case 9:f=AR(a);$s=12;case 12:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;$s=13;case 13:return g;case 10:h=AN(a);$s=14;case 14:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;$s=15;case 15:return i;case 11:case 8:$s=6;continue;case 5:j=a.tok.DataAtom;if(j===(22020)){a.im=BG;$s=-1;return true;}case 6:case 1:$s=-1;return true;}return;}var $f={$blk:BE,$c:true,$r,a,b,c,d,e,f,g,h,i,j,$s};return $f;};BF=function(a){var{a,b,c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=a.tok.Type;if(b===(0)){$s=2;continue;}if(b===(1)){$s=3;continue;}if(b===(2)){$s=4;continue;}if(b===(5)){$s=5;continue;}if(b===(6)){$s=6;continue;}$s=7;continue;case 2:$s=-1;return true;case 3:c=B.TrimLeft(a.tok.Data," \t\r\n\f");if(c.length===0){$s=8;continue;}$s=9;continue;case 8:d=AR(a);$s=10;case 10:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$s=11;case 11:return e;case 9:$s=7;continue;case 4:if(a.tok.DataAtom===22020){$s=12;continue;}$s=13;continue;case 12:f=AR(a);$s=14;case 14:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;$s=15;case 15:return g;case 13:$s=7;continue;case 5:a.doc.AppendChild(new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,4,0,a.tok.Data,"",DG.nil));$s=-1;return true;case 6:h=AR(a);$s=16;case 16:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;$s=17;case 17:return i;case 7:case 1:a.im=AR;$s=-1;return false;}return;}var $f={$blk:BF,$c:true,$r,a,b,c,d,e,f,g,h,i,$s};return $f;};BG=function(a){var{a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=a.tok.Type;if(b===(5)){$s=2;continue;}if(b===(1)){$s=3;continue;}if(b===(2)){$s=4;continue;}if(b===(6)){$s=5;continue;}$s=6;continue;case 2:a.doc.AppendChild(new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,4,0,a.tok.Data,"",DG.nil));$s=6;continue;case 3:c=B.Map((function(c){var c,d;d=c;if((d===(32))||(d===(9))||(d===(10))||(d===(12))||(d===(13))){return c;}return-1;}),a.tok.Data);$s=7;case 7:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(!(d==="")){$s=8;continue;}$s=9;continue;case 8:a.tok.Data=d;e=AR(a);$s=10;case 10:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$s=11;case 11:return f;case 9:$s=6;continue;case 4:g=a.tok.DataAtom;if(g===(22020)){$s=13;continue;}if(g===(35080)){$s=14;continue;}$s=15;continue;case 13:h=AR(a);$s=16;case 16:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;$s=17;case 17:return i;case 14:j=AN(a);$s=18;case 18:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;$s=19;case 19:return k;case 15:case 12:$s=6;continue;case 5:l=AR(a);$s=20;case 20:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;$s=21;case 21:return m;case 6:case 1:$s=-1;return true;}return;}var $f={$blk:BG,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,$s};return $f;};BH=function(a){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=a.tok.Type;if(b===(1)){$s=2;continue;}if(b===(5)){$s=3;continue;}if(b===(2)){$s=4;continue;}if(b===(3)){$s=5;continue;}$s=6;continue;case 2:if(a.framesetOK){a.framesetOK=B.TrimLeft(a.tok.Data," \t\r\n\f\x00")==="";}a.tok.Data=B.Replace(a.tok.Data,"\x00","\xEF\xBF\xBD",-1);a.addText(a.tok.Data);$s=6;continue;case 3:a.addChild(new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,4,0,a.tok.Data,"",DG.nil));$s=6;continue;case 4:d=(c=$mapIndex(BY,$String.keyFor(a.tok.Data)),c!==undefined?c.v:false);if(a.tok.DataAtom===16132){e=a.tok.Attr;f=0;loop:while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);h=g.Key;if(h===("color")||h===("face")||h===("size")){d=true;break loop;}f++;}}if(d){$s=7;continue;}$s=8;continue;case 7:i=a.oe.$length-1>>0;case 9:if(!(i>=0)){$s=10;continue;}k=(j=a.oe,((i<0||i>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+i]));if(k.Namespace===""){l=true;$s=13;continue s;}m=BW(k);$s=14;case 14:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;case 13:if(l||BX(k)){$s=11;continue;}$s=12;continue;case 11:a.oe=$subslice(a.oe,0,(i+1>>0));$s=10;continue;case 12:i=i-(1)>>0;$s=9;continue;case 10:$s=-1;return false;case 8:n=a.top().Namespace;if(n===("math")){BU(a.tok.Attr,CA);}else if(n===("svg")){p=(o=$mapIndex(BZ,$String.keyFor(a.tok.Data)),o!==undefined?o.v:"");if(!(p==="")){a.tok.DataAtom=I.Lookup((new DC($stringToBytes(p))));a.tok.Data=p;}BU(a.tok.Attr,CB);}else{$panic(new $String("html: bad parser state: unexpected namespace"));}BV(a.tok.Attr);q=a.top().Namespace;a.addElement();a.top().Namespace=q;if(!(q==="")){a.tokenizer.NextIsNotRawText();}if(a.hasSelfClosingToken){(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).pop();a.acknowledgeSelfClosingTag();}$s=6;continue;case 5:r=a.oe.$length-1>>0;case 15:if(!(r>=0)){$s=16;continue;}if((s=a.oe,((r<0||r>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+r])).Namespace===""){$s=17;continue;}$s=18;continue;case 17:t=a.im(a);$s=19;case 19:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}u=t;$s=20;case 20:return u;case 18:if(B.EqualFold((v=a.oe,((r<0||r>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+r])).Data,a.tok.Data)){a.oe=$subslice(a.oe,0,r);$s=16;continue;}r=r-(1)>>0;$s=15;continue;case 16:$s=-1;return true;case 6:case 1:$s=-1;return true;}return;}var $f={$blk:BH,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,$s};return $f;};AG.ptr.prototype.inForeignContent=function(){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;if(a.oe.$length===0){$s=-1;return false;}d=(b=a.oe,c=a.oe.$length-1>>0,((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c]));if(d.Namespace===""){$s=-1;return false;}if(BX(d)){if((a.tok.Type===2)&&!((a.tok.DataAtom===198662))&&!((a.tok.DataAtom===45066))){$s=-1;return false;}if(a.tok.Type===1){$s=-1;return false;}}if(d.Namespace==="math"&&(d.DataAtom===117006)&&(a.tok.Type===2)&&(a.tok.DataAtom===462339)){$s=-1;return false;}e=BW(d);$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}if(e&&((a.tok.Type===2)||(a.tok.Type===1))){$s=1;continue;}$s=2;continue;case 1:$s=-1;return false;case 2:if(a.tok.Type===0){$s=-1;return false;}$s=-1;return true;}return;}var $f={$blk:AG.ptr.prototype.inForeignContent,$c:true,$r,a,b,c,d,e,$s};return $f;};AG.prototype.inForeignContent=function(){return this.$val.inForeignContent();};AG.ptr.prototype.parseImpliedToken=function(a,b,c){var{a,b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{a,b,c});$s=$s||0;s:while(true){switch($s){case 0:d=this;e=$clone(d.tok,Q);f=d.hasSelfClosingToken;g=$clone(e,Q);h=f;Q.copy(d.tok,new Q.ptr(a,b,c,DG.nil));d.hasSelfClosingToken=false;$r=d.parseCurrentToken();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=$clone(g,Q);j=h;Q.copy(d.tok,i);d.hasSelfClosingToken=j;$s=-1;return;}return;}var $f={$blk:AG.ptr.prototype.parseImpliedToken,$c:true,$r,a,b,c,d,e,f,g,h,i,j,$s};return $f;};AG.prototype.parseImpliedToken=function(a,b,c){return this.$val.parseImpliedToken(a,b,c);};AG.ptr.prototype.parseCurrentToken=function(){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;if(a.tok.Type===4){a.hasSelfClosingToken=true;a.tok.Type=2;}b=false;case 1:if(!(!b)){$s=2;continue;}c=a.inForeignContent();$s=6;case 6:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}if(c){$s=3;continue;}$s=4;continue;case 3:d=BH(a);$s=7;case 7:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}b=d;$s=5;continue;case 4:e=a.im(a);$s=8;case 8:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}b=e;case 5:$s=1;continue;case 2:if(a.hasSelfClosingToken){a.hasSelfClosingToken=false;}$s=-1;return;}return;}var $f={$blk:AG.ptr.prototype.parseCurrentToken,$c:true,$r,a,b,c,d,e,$s};return $f;};AG.prototype.parseCurrentToken=function(){return this.$val.parseCurrentToken();};AG.ptr.prototype.parse=function(){var{a,b,c,d,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;b=$ifaceNil;case 1:if(!(!($interfaceIsEqual(b,G.EOF)))){$s=2;continue;}c=(a.$ptr_oe||(a.$ptr_oe=new DL(function(){return this.$target.oe;},function($v){this.$target.oe=$v;},a))).top();a.tokenizer.AllowCDATA(!(c===DE.nil)&&!(c.Namespace===""));d=a.tokenizer.Next();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;Q.copy(a.tok,a.tokenizer.Token());if(a.tok.Type===0){b=a.tokenizer.Err();if(!($interfaceIsEqual(b,$ifaceNil))&&!($interfaceIsEqual(b,G.EOF))){$s=-1;return b;}}$r=a.parseCurrentToken();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:$s=-1;return $ifaceNil;}return;}var $f={$blk:AG.ptr.prototype.parse,$c:true,$r,a,b,c,d,$s};return $f;};AG.prototype.parse=function(){return this.$val.parse();};BI=function(a){var{a,b,c,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=BM(a,DN.nil);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;$s=2;case 2:return c;}return;}var $f={$blk:BI,$c:true,$r,a,b,c,$s};return $f;};$pkg.Parse=BI;BJ=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=BN(a,b,DN.nil);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;$s=2;case 2:return d;}return;}var $f={$blk:BJ,$c:true,$r,a,b,c,d,$s};return $f;};$pkg.ParseFragment=BJ;BM=function(a,b){var{a,b,c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=X(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=new AG.ptr(c,new Q.ptr(0,0,"",DG.nil),false,new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,2,0,"","",DG.nil),BS.nil,BS.nil,DE.nil,DE.nil,true,true,BT.nil,AK,$throwNilPointerError,false,false,false,DE.nil);e=b;f=0;case 2:if(!(f<e.$length)){$s=3;continue;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);$r=g(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f++;$s=2;continue;case 3:h=d.parse();$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;if(!($interfaceIsEqual(i,$ifaceNil))){$s=-1;return[DE.nil,i];}$s=-1;return[d.doc,$ifaceNil];}return;}var $f={$blk:BM,$c:true,$r,a,b,c,d,e,f,g,h,i,$s};return $f;};$pkg.ParseWithOptions=BM;BN=function(a,b,c){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,$s,$r,$c}=$restore(this,{a,b,c});$s=$s||0;s:while(true){switch($s){case 0:d="";if(!(b===DE.nil)){if(!((b.Type===3))){$s=-1;return[DP.nil,F.New("html: ParseFragment of non-element Node")];}if(!((b.DataAtom===I.Lookup((new DC($stringToBytes(b.Data))))))){$s=-1;return[DP.nil,F.New("html: inconsistent Node: DataAtom="+A.Itoa(((b.DataAtom>>0)))+", Data="+b.Data)];}d=new I.Atom(b.DataAtom).String();}e=Y(a,d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=new AG.ptr(e,new Q.ptr(0,0,"",DG.nil),false,new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,2,0,"","",DG.nil),BS.nil,BS.nil,DE.nil,DE.nil,true,false,BT.nil,$throwNilPointerError,$throwNilPointerError,false,false,true,b);g=c;h=0;case 2:if(!(h<g.$length)){$s=3;continue;}i=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]);$r=i(f);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h++;$s=2;continue;case 3:j=new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,3,22020,new I.Atom(22020).String(),"",DG.nil);f.doc.AppendChild(j);f.oe=new BS([j]);if(!(b===DE.nil)&&(b.DataAtom===463880)){f.templateStack=$append(f.templateStack,BB);}f.resetInsertionMode();k=b;while(true){if(!(!(k===DE.nil))){break;}if((k.Type===3)&&(k.DataAtom===159236)){f.form=k;break;}k=k.Parent;}l=f.parse();$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;if(!($interfaceIsEqual(m,$ifaceNil))){$s=-1;return[DP.nil,m];}n=f.doc;if(!(b===DE.nil)){n=j;}o=DP.nil;p=n.FirstChild;while(true){if(!(!(p===DE.nil))){break;}q=p.NextSibling;n.RemoveChild(p);o=$append(o,p);p=q;}$s=-1;return[o,$ifaceNil];}return;}var $f={$blk:BN,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,$s};return $f;};$pkg.ParseFragmentWithOptions=BN;BQ.ptr.prototype.Unlink=function(){var a;a=this;if(!(DE.nil===a.PrevSibling)){a.PrevSibling.NextSibling=a.NextSibling;}else if(!(DE.nil===a.Parent)){a.Parent.FirstChild=a.NextSibling;}if(!(DE.nil===a.NextSibling)){a.NextSibling.PrevSibling=a.PrevSibling;}else if(!(DE.nil===a.Parent)){a.Parent.LastChild=a.PrevSibling;}a.Parent=DE.nil;a.NextSibling=DE.nil;a.PrevSibling=DE.nil;};BQ.prototype.Unlink=function(){return this.$val.Unlink();};BQ.ptr.prototype.InsertBefore=function(a){var a,b;b=this;a.Unlink();a.PrevSibling=b.PrevSibling;if(!(DE.nil===a.PrevSibling)){a.PrevSibling.NextSibling=a;}a.NextSibling=b;b.PrevSibling=a;a.Parent=b.Parent;if(!(DE.nil===a.Parent)&&DE.nil===a.PrevSibling){a.Parent.FirstChild=a;}};BQ.prototype.InsertBefore=function(a){return this.$val.InsertBefore(a);};BQ.ptr.prototype.InsertAfter=function(a){var a,b;b=this;a.Unlink();a.NextSibling=b.NextSibling;if(!(DE.nil===a.NextSibling)){a.NextSibling.PrevSibling=a;}a.PrevSibling=b;b.NextSibling=a;a.Parent=b.Parent;if(DE.nil===a.NextSibling&&!(DE.nil===a.Parent)){a.Parent.LastChild=a;}};BQ.prototype.InsertAfter=function(a){return this.$val.InsertAfter(a);};BQ.ptr.prototype.InsertChildBefore=function(a,b){var a,b,c,d,e,f,g,h,i;c=this;if(!(a.Parent===DE.nil)||!(a.PrevSibling===DE.nil)||!(a.NextSibling===DE.nil)){$panic(new $String("html: InsertChildBefore called for an attached child Node"));}d=DE.nil;e=DE.nil;f=d;g=e;if(!(b===DE.nil)){h=b.PrevSibling;i=b;f=h;g=i;}else{f=c.LastChild;}if(!(f===DE.nil)){f.NextSibling=a;}else{c.FirstChild=a;}if(!(g===DE.nil)){g.PrevSibling=a;}else{c.LastChild=a;}a.Parent=c;a.PrevSibling=f;a.NextSibling=g;};BQ.prototype.InsertChildBefore=function(a,b){return this.$val.InsertChildBefore(a,b);};BQ.ptr.prototype.AppendChild=function(a){var a,b,c;b=this;if(!(a.Parent===DE.nil)||!(a.PrevSibling===DE.nil)||!(a.NextSibling===DE.nil)){$panic(new $String("html: AppendChild called for an attached child Node"));}c=b.LastChild;if(!(c===DE.nil)){c.NextSibling=a;}else{b.FirstChild=a;}b.LastChild=a;a.Parent=b;a.PrevSibling=c;};BQ.prototype.AppendChild=function(a){return this.$val.AppendChild(a);};BQ.ptr.prototype.RemoveChild=function(a){var a,b;b=this;if(!(a.Parent===b)){$panic(new $String("html: RemoveChild called for a non-child Node"));}if(b.FirstChild===a){b.FirstChild=a.NextSibling;}if(!(a.NextSibling===DE.nil)){a.NextSibling.PrevSibling=a.PrevSibling;}if(b.LastChild===a){b.LastChild=a.PrevSibling;}if(!(a.PrevSibling===DE.nil)){a.PrevSibling.NextSibling=a.NextSibling;}a.Parent=DE.nil;a.PrevSibling=DE.nil;a.NextSibling=DE.nil;};BQ.prototype.RemoveChild=function(a){return this.$val.RemoveChild(a);};BR=function(a,b){var a,b,c;while(true){c=b.FirstChild;if(c===DE.nil){break;}b.RemoveChild(c);a.AppendChild(c);}};BQ.ptr.prototype.clone=function(){var a,b;a=this;b=new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,a.Type,a.DataAtom,a.Data,"",$makeSlice(DG,a.Attr.$length));$copySlice(b.Attr,a.Attr);return b;};BQ.prototype.clone=function(){return this.$val.clone();};$ptrType(BS).prototype.pop=function(){var a,b,c,d,e;a=this;b=a.$get().$length;e=(c=a.$get(),d=b-1>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]));a.$set($subslice((a.$get()),0,(b-1>>0)));return e;};$ptrType(BS).prototype.top=function(){var a,b,c,d;a=this;b=a.$get().$length;if(b>0){return(c=a.$get(),d=b-1>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]));}return DE.nil;};$ptrType(BS).prototype.index=function(a){var a,b,c,d;b=this;c=b.$get().$length-1>>0;while(true){if(!(c>=0)){break;}if((d=b.$get(),((c<0||c>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+c]))===a){return c;}c=c-(1)>>0;}return-1;};$ptrType(BS).prototype.contains=function(a){var a,b,c,d,e;b=this;c=b.$get();d=0;while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);if((e.DataAtom===a)&&e.Namespace===""){return true;}d++;}return false;};$ptrType(BS).prototype.insert=function(a,b){var a,b,c,d;c=this;c.$set($append(c.$get(),DE.nil));$copySlice($subslice((c.$get()),(a+1>>0)),$subslice((c.$get()),a));(d=c.$get(),((a<0||a>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+a]=b));};$ptrType(BS).prototype.remove=function(a){var a,b,c,d,e;b=this;c=b.index(a);if(c===-1){return;}$copySlice($subslice((b.$get()),c),$subslice((b.$get()),(c+1>>0)));d=b.$get().$length-1>>0;(e=b.$get(),((d<0||d>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+d]=DE.nil));b.$set($subslice((b.$get()),0,d));};$ptrType(BT).prototype.pop=function(){var a,b,c,d,e;a=$throwNilPointerError;b=this;c=b.$get().$length;a=(d=b.$get(),e=c-1>>0,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]));b.$set($subslice((b.$get()),0,(c-1>>0)));a=a;return a;};$ptrType(BT).prototype.top=function(){var a,b,c,d;a=this;b=a.$get().$length;if(b>0){return(c=a.$get(),d=b-1>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]));}return $throwNilPointerError;};BU=function(a,b){var a,b,c,d,e,f,g,h,i;c=a;d=0;while(true){if(!(d<c.$length)){break;}e=d;f=(g=$mapIndex(b,$String.keyFor(((e<0||e>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+e]).Key)),g!==undefined?[g.v,true]:["",false]);h=f[0];i=f[1];if(i){((e<0||e>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+e]).Key=h;}d++;}};BV=function(a){var a,b,c,d,e,f,g;b=a;c=0;while(true){if(!(c<b.$length)){break;}d=c;e=((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c]);if(e.Key===""||!((e.Key.charCodeAt(0)===120))){c++;continue;}f=e.Key;if(f===("xlink:actuate")||f===("xlink:arcrole")||f===("xlink:href")||f===("xlink:role")||f===("xlink:show")||f===("xlink:title")||f===("xlink:type")||f===("xml:base")||f===("xml:lang")||f===("xml:space")||f===("xmlns:xlink")){g=B.Index(e.Key,":");((d<0||d>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+d]).Namespace=$substring(e.Key,0,g);((d<0||d>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+d]).Key=$substring(e.Key,(g+1>>0));}c++;}};BW=function(a){var{a,b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:if(!((a.Type===3))){$s=-1;return false;}b=a.Namespace;if(b===("math")){$s=2;continue;}if(b===("svg")){$s=3;continue;}$s=4;continue;case 2:if(a.Data==="annotation-xml"){$s=5;continue;}$s=6;continue;case 5:c=a.Attr;d=0;case 7:if(!(d<c.$length)){$s=8;continue;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);if(e.Key==="encoding"){$s=9;continue;}$s=10;continue;case 9:f=B.ToLower(e.Val);$s=11;case 11:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(g==="text/html"||g==="application/xhtml+xml"){$s=-1;return true;}case 10:d++;$s=7;continue;case 8:case 6:$s=4;continue;case 3:h=a.Data;if(h===("desc")||h===("foreignObject")||h===("title")){$s=-1;return true;}case 4:case 1:$s=-1;return false;}return;}var $f={$blk:BW,$c:true,$r,a,b,c,d,e,f,g,h,$s};return $f;};BX=function(a){var a,b;if(!(a.Namespace==="math")){return false;}b=a.Data;if(b===("mi")||b===("mo")||b===("mn")||b===("ms")||b===("mtext")){return true;}return false;};CG=function(a){var a;a=B.ReplaceAll(a,"_esc_newline_","\n");a=B.ReplaceAll(a,"{","{");a=B.ReplaceAll(a,"}","}");return CW(a);};$pkg.UnescapeAttrVal=CG;CH=function(a){var a,b;b="";b=($bytesToString(CL((new DC($stringToBytes(a))))));b=B.ReplaceAll(b,"\n","_esc_newline_");b=B.ReplaceAll(b,"{","{");b=B.ReplaceAll(b,"}","}");return b;};$pkg.EscapeAttrVal=CH;CI=function(a){var a;return CW(a);};$pkg.UnescapeHTMLStr=CI;CJ=function(a){var a;return($bytesToString(CL((new DC($stringToBytes(a))))));};$pkg.EscapeHTMLStr=CJ;CK=function(a){var a,b;b=DC.nil;b=(new DC($stringToBytes(CW(($bytesToString(a))))));return b;};$pkg.UnescapeHTML=CK;CL=function(a){var a,b,c,d,e,f,g,h,i;b=DC.nil;c=a.$length;d=0;e=0;f=d;g=e;h=false;b=a;while(true){if(!(g<c)){break;}i=((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g]);if(i===(38)){if(!h){b=$makeSlice(DC,0,(c+128>>0));h=true;}b=$appendSlice(b,$subslice(a,f,g));b=$appendSlice(b,CC);f=g+1>>0;}else if(i===(60)){if(!h){b=$makeSlice(DC,0,(c+128>>0));h=true;}b=$appendSlice(b,$subslice(a,f,g));b=$appendSlice(b,CD);f=g+1>>0;}else if(i===(62)){if(!h){b=$makeSlice(DC,0,(c+128>>0));h=true;}b=$appendSlice(b,$subslice(a,f,g));b=$appendSlice(b,CE);f=g+1>>0;}else if(i===(34)){if(!h){b=$makeSlice(DC,0,(c+128>>0));h=true;}b=$appendSlice(b,$subslice(a,f,g));b=$appendSlice(b,CF);f=g+1>>0;}g=g+(1)>>0;}if(h){b=$appendSlice(b,$subslice(a,f));}return b;};$pkg.EscapeHTML=CL;CM=function(a){var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;b=DC.nil;b=$makeSlice(DC,0,256);c=0;d=0;while(true){if(!(c<a.$length)){break;}e=C.DecodeRune($subslice(a,c));f=e[0];g=e[1];if(128<=f){h=c;i=c+g>>0;j=h;k=i;while(true){if(!(j<k)){break;}l=((j<0||j>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+j]);d=((j<0||j>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+j]);b=$append(b,37);b=$append(b,"0123456789ABCDEF".charCodeAt(((((l>>>4<<24>>>24))&15)>>>0)));b=$append(b,"0123456789ABCDEF".charCodeAt(((l&15)>>>0)));j=j+(1)>>0;}}else if(f===37){d=((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c]);if((c+2>>0)<a.$length&&D.IsHexDigit((m=c+1>>0,((m<0||m>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+m])))&&D.IsHexDigit((n=c+2>>0,((n<0||n>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+n])))){b=$append(b,37);b=$append(b,D.TokenToUpper((o=c+1>>0,((o<0||o>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+o]))));b=$append(b,D.TokenToUpper((p=c+2>>0,((p<0||p>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+p]))));c=c+(2)>>0;}else{b=$append(b,37);b=$append(b,50);b=$append(b,53);}}else if(B.IndexByte("!#$&'()*+,-./0123456789:;=?@ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~",((f<<24>>>24)))===-1){d=((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c]);b=$append(b,37);b=$append(b,"0123456789ABCDEF".charCodeAt((((f>>4>>0))&15)));b=$append(b,"0123456789ABCDEF".charCodeAt((f&15)));}else{d=((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c]);b=$append(b,d);}c=c+(g)>>0;}return b;};$pkg.EncodeDestination=CM;CR=function(a,b,c,d){var a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;e=0;f=0;g=1;h=$subslice(a,c);i=g;j=h;if(j.$length<=1){((b<0||b>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+b]=((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c]));k=b+1>>0;l=c+1>>0;e=k;f=l;return[e,f];}if(((i<0||i>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+i])===35){if(j.$length<=3){((b<0||b>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+b]=((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c]));m=b+1>>0;n=c+1>>0;e=m;f=n;return[e,f];}i=i+(1)>>0;o=((i<0||i>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+i]);p=false;if((o===120)||(o===88)){p=true;i=i+(1)>>0;}q=0;while(true){if(!(i<j.$length)){break;}o=((i<0||i>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+i]);i=i+(1)>>0;if(p){if(48<=o&&o<=57){q=(($imul(16,q))+((o>>0))>>0)-48>>0;continue;}else if(97<=o&&o<=102){q=((($imul(16,q))+((o>>0))>>0)-97>>0)+10>>0;continue;}else if(65<=o&&o<=70){q=((($imul(16,q))+((o>>0))>>0)-65>>0)+10>>0;continue;}}else if(48<=o&&o<=57){q=(($imul(10,q))+((o>>0))>>0)-48>>0;continue;}if(!((o===59))){i=i-(1)>>0;}break;}if(i<=3){((b<0||b>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+b]=((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c]));r=b+1>>0;s=c+1>>0;e=r;f=s;return[e,f];}if(128<=q&&q<=159){q=(t=q-128>>0,((t<0||t>=CQ.length)?($throwRuntimeError("index out of range"),undefined):CQ[t]));}else if((q===0)||(55296<=q&&q<=57343)||q>1114111){q=65533;}u=b+C.EncodeRune($subslice(a,b),q)>>0;v=c+i>>0;e=u;f=v;return[e,f];}while(true){if(!(i<j.$length)){break;}w=((i<0||i>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+i]);i=i+(1)>>0;if(97<=w&&w<=122||65<=w&&w<=90||48<=w&&w<=57){continue;}if(!((w===59))){i=i-(1)>>0;}break;}x=i;if(x<1){x=1;}y=($bytesToString($subslice(j,1,x)));if(y===""){}else if(d&&!((y.charCodeAt((y.length-1>>0))===59))&&j.$length>i&&(((i<0||i>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+i])===61)){}else{aa=(z=$mapIndex($pkg.Entities,$String.keyFor(y)),z!==undefined?z.v:"");if(!(aa==="")){ab=b+C.EncodeRune($subslice(a,b),(ac=(new DQ($stringToRunes(aa))),(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0])))>>0;ad=c+i>>0;e=ab;f=ad;return[e,f];}else if(!d){ae=y.length-1>>0;if(ae>6){ae=6;}af=ae;while(true){if(!(af>1)){break;}ah=(ag=$mapIndex($pkg.Entities,$String.keyFor($substring(y,0,af))),ag!==undefined?ag.v:"");if(!(ah==="")){ai=b+C.EncodeRune($subslice(a,b),(aj=(new DQ($stringToRunes(ah))),(0>=aj.$length?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+0])))>>0;ak=(c+af>>0)+1>>0;e=ai;f=ak;return[e,f];}af=af-(1)>>0;}}}al=b+i>>0;am=c+i>>0;e=al;f=am;$copySlice($subslice(a,b,e),$subslice(a,c,f));an=e;ao=f;e=an;f=ao;return[e,f];};CS=function(a,b){var a,b,c,d,e,f,g,h,i,j,k,l,m;c=a;d=0;while(true){if(!(d<c.$length)){break;}e=d;f=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);if(f===38){g=CR(a,e,e,b);h=g[0];i=g[1];while(true){if(!(i<a.$length)){break;}j=((i<0||i>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+i]);if(j===38){k=CR(a,h,i,b);h=k[0];i=k[1];}else{((h<0||h>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+h]=j);l=h+1>>0;m=i+1>>0;h=l;i=m;}}return $subslice(a,0,h);}d++;}return a;};CT=function(a){var a,b,c,d,e;b=a;c=0;while(true){if(!(c<b.$length)){break;}d=c;e=((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c]);if(65<=e&&e<=90){((d<0||d>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+d]=((e+97<<24>>>24)-65<<24>>>24));}c++;}return a;};CU=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=B.IndexAny(b,"&'<>\"\r");case 1:if(!(!((c===-1)))){$s=2;continue;}e=a.WriteString($substring(b,0,c));$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[1];if(!($interfaceIsEqual(f,$ifaceNil))){$s=-1;return f;}g="";h=b.charCodeAt(c);if(h===(38)){g="&";}else if(h===(39)){g="'";}else if(h===(60)){g="<";}else if(h===(62)){g=">";}else if(h===(34)){g=""";}else if(h===(13)){g=" ";}else{$panic(new $String("unrecognized escape character"));}b=$substring(b,(c+1>>0));j=a.WriteString(g);$s=4;case 4:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[1];if(!($interfaceIsEqual(k,$ifaceNil))){$s=-1;return k;}c=B.IndexAny(b,"&'<>\"\r");$s=1;continue;case 2:m=a.WriteString(b);$s=5;case 5:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;n=l[1];$s=-1;return n;}return;}var $f={$blk:CU,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,$s};return $f;};CV=function(a){var{a,b,c,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=[b];if(B.IndexAny(a,"&'<>\"\r")===-1){$s=-1;return a;}b[0]=new E.Buffer.ptr(DC.nil,0,0);c=CU(b[0],a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}c;$s=-1;return b[0].String();}return;}var $f={$blk:CV,$c:true,$r,a,b,c,$s};return $f;};$pkg.EscapeString=CV;CW=function(a){var a,b,c,d,e;b=a;c=0;while(true){if(!(c<b.length)){break;}d=$decodeRune(b,c);e=d[0];if(e===38){return($bytesToString(CS((new DC($stringToBytes(a))),false)));}c+=d[1];}return a;};$pkg.UnescapeString=CW;CX=function(a){var{a,aa,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=DE.nil;c=false;b=new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,5,0,"","",DG.nil);d=B.IndexAny(a," \t\r\n\f");if(d===-1){d=a.length;}b.Data=$substring(a,0,d);if(!(b.Data==="html")){c=true;}e=B.ToLower(b.Data);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}b.Data=e;a=B.TrimLeft($substring(a,d)," \t\r\n\f");if(a.length<6){f=b;g=c||!(a==="");b=f;c=g;$s=-1;return[b,c];}h=B.ToLower($substring(a,0,6));$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;a=$substring(a,6);while(true){if(!(i==="public"||i==="system")){break;}a=B.TrimLeft(a," \t\r\n\f");if(a===""){break;}j=a.charCodeAt(0);if(!((j===34))&&!((j===39))){break;}a=$substring(a,1);k=B.IndexRune(a,((j>>0)));l="";if(k===-1){l=a;a="";}else{l=$substring(a,0,k);a=$substring(a,(k+1>>0));}b.Attr=$append(b.Attr,new P.ptr("",i,l));if(i==="public"){i="system";}else{i="";}}if(!(i==="")||!(a==="")){$s=3;continue;}if(b.Attr.$length>0){$s=4;continue;}$s=5;continue;case 3:c=true;$s=5;continue;case 4:if((m=b.Attr,(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0])).Key==="public"){$s=6;continue;}$s=7;continue;case 6:o=B.ToLower((n=b.Attr,(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0])).Val);$s=8;case 8:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;q=p;if(q===("-//w3o//dtd w3 html strict 3.0//en//")||q===("-/w3d/dtd html 4.0 transitional/en")||q===("html")){c=true;}else{r=CY;s=0;while(true){if(!(s<r.$length)){break;}t=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);if(B.HasPrefix(p,t)){c=true;break;}s++;}}if((b.Attr.$length===1)&&(B.HasPrefix(p,"-//w3c//dtd html 4.01 frameset//")||B.HasPrefix(p,"-//w3c//dtd html 4.01 transitional//"))){c=true;}case 7:w=(u=b.Attr,v=b.Attr.$length-1>>0,((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]));if(!(w.Key==="system")){x=false;$s=11;continue s;}y=B.ToLower(w.Val);$s=12;case 12:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}x=y==="http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd";case 11:if(x){$s=9;continue;}$s=10;continue;case 9:c=true;case 10:case 5:z=b;aa=c;b=z;c=aa;$s=-1;return[b,c];}return;}var $f={$blk:CX,$c:true,$r,a,aa,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};DA=function(a){var a,b,c,d,e;b=a.Namespace;if(b===("")||b===("html")){return(c=$mapIndex(CZ,$String.keyFor(a.Data)),c!==undefined?c.v:false);}else if(b===("math")){d=a.Data;if(d===("mi")||d===("mo")||d===("mn")||d===("ms")||d===("mtext")||d===("annotation-xml")){return true;}}else if(b===("svg")){e=a.Data;if(e===("foreignObject")||e===("desc")||e===("title")){return true;}}return false;};O.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];Q.methods=[{prop:"tagString",name:"tagString",pkg:"github.com/88250/lute/html",typ:$funcType([],[$String],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];DO.methods=[{prop:"AllowCDATA",name:"AllowCDATA",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"NextIsNotRawText",name:"NextIsNotRawText",pkg:"",typ:$funcType([],[],false)},{prop:"Err",name:"Err",pkg:"",typ:$funcType([],[$error],false)},{prop:"readByte",name:"readByte",pkg:"github.com/88250/lute/html",typ:$funcType([],[$Uint8],false)},{prop:"Buffered",name:"Buffered",pkg:"",typ:$funcType([],[DC],false)},{prop:"skipWhiteSpace",name:"skipWhiteSpace",pkg:"github.com/88250/lute/html",typ:$funcType([],[],false)},{prop:"readRawOrRCDATA",name:"readRawOrRCDATA",pkg:"github.com/88250/lute/html",typ:$funcType([],[],false)},{prop:"readRawEndTag",name:"readRawEndTag",pkg:"github.com/88250/lute/html",typ:$funcType([],[$Bool],false)},{prop:"readScript",name:"readScript",pkg:"github.com/88250/lute/html",typ:$funcType([],[],false)},{prop:"readComment",name:"readComment",pkg:"github.com/88250/lute/html",typ:$funcType([],[],false)},{prop:"readUntilCloseAngle",name:"readUntilCloseAngle",pkg:"github.com/88250/lute/html",typ:$funcType([],[],false)},{prop:"readMarkupDeclaration",name:"readMarkupDeclaration",pkg:"github.com/88250/lute/html",typ:$funcType([],[O],false)},{prop:"readDoctype",name:"readDoctype",pkg:"github.com/88250/lute/html",typ:$funcType([],[$Bool],false)},{prop:"readCDATA",name:"readCDATA",pkg:"github.com/88250/lute/html",typ:$funcType([],[$Bool],false)},{prop:"startTagIn",name:"startTagIn",pkg:"github.com/88250/lute/html",typ:$funcType([DH],[$Bool],true)},{prop:"readStartTag",name:"readStartTag",pkg:"github.com/88250/lute/html",typ:$funcType([],[O],false)},{prop:"readTag",name:"readTag",pkg:"github.com/88250/lute/html",typ:$funcType([$Bool],[],false)},{prop:"readTagName",name:"readTagName",pkg:"github.com/88250/lute/html",typ:$funcType([],[],false)},{prop:"readTagAttrKey",name:"readTagAttrKey",pkg:"github.com/88250/lute/html",typ:$funcType([],[],false)},{prop:"readTagAttrVal",name:"readTagAttrVal",pkg:"github.com/88250/lute/html",typ:$funcType([],[],false)},{prop:"Next",name:"Next",pkg:"",typ:$funcType([],[O],false)},{prop:"Raw",name:"Raw",pkg:"",typ:$funcType([],[DC],false)},{prop:"Text",name:"Text",pkg:"",typ:$funcType([],[DC],false)},{prop:"TagName",name:"TagName",pkg:"",typ:$funcType([],[DC,$Bool],false)},{prop:"TagAttr",name:"TagAttr",pkg:"",typ:$funcType([],[DC,DC,$Bool],false)},{prop:"Token",name:"Token",pkg:"",typ:$funcType([],[Q],false)},{prop:"SetMaxBuf",name:"SetMaxBuf",pkg:"",typ:$funcType([$Int],[],false)}];DR.methods=[{prop:"top",name:"top",pkg:"github.com/88250/lute/html",typ:$funcType([],[DE],false)},{prop:"popUntil",name:"popUntil",pkg:"github.com/88250/lute/html",typ:$funcType([AI,DD],[$Bool],true)},{prop:"indexOfElementInScope",name:"indexOfElementInScope",pkg:"github.com/88250/lute/html",typ:$funcType([AI,DD],[$Int],true)},{prop:"elementInScope",name:"elementInScope",pkg:"github.com/88250/lute/html",typ:$funcType([AI,DD],[$Bool],true)},{prop:"clearStackToContext",name:"clearStackToContext",pkg:"github.com/88250/lute/html",typ:$funcType([AI],[],false)},{prop:"generateImpliedEndTags",name:"generateImpliedEndTags",pkg:"github.com/88250/lute/html",typ:$funcType([DH],[],true)},{prop:"addChild",name:"addChild",pkg:"github.com/88250/lute/html",typ:$funcType([DE],[],false)},{prop:"shouldFosterParent",name:"shouldFosterParent",pkg:"github.com/88250/lute/html",typ:$funcType([],[$Bool],false)},{prop:"fosterParent",name:"fosterParent",pkg:"github.com/88250/lute/html",typ:$funcType([DE],[],false)},{prop:"addText",name:"addText",pkg:"github.com/88250/lute/html",typ:$funcType([$String],[],false)},{prop:"addElement",name:"addElement",pkg:"github.com/88250/lute/html",typ:$funcType([],[],false)},{prop:"addFormattingElement",name:"addFormattingElement",pkg:"github.com/88250/lute/html",typ:$funcType([],[],false)},{prop:"clearActiveFormattingElements",name:"clearActiveFormattingElements",pkg:"github.com/88250/lute/html",typ:$funcType([],[],false)},{prop:"reconstructActiveFormattingElements",name:"reconstructActiveFormattingElements",pkg:"github.com/88250/lute/html",typ:$funcType([],[],false)},{prop:"acknowledgeSelfClosingTag",name:"acknowledgeSelfClosingTag",pkg:"github.com/88250/lute/html",typ:$funcType([],[],false)},{prop:"setOriginalIM",name:"setOriginalIM",pkg:"github.com/88250/lute/html",typ:$funcType([],[],false)},{prop:"resetInsertionMode",name:"resetInsertionMode",pkg:"github.com/88250/lute/html",typ:$funcType([],[],false)},{prop:"inBodyEndTagFormatting",name:"inBodyEndTagFormatting",pkg:"github.com/88250/lute/html",typ:$funcType([I.Atom,$String],[],false)},{prop:"inBodyEndTagOther",name:"inBodyEndTagOther",pkg:"github.com/88250/lute/html",typ:$funcType([I.Atom,$String],[],false)},{prop:"inForeignContent",name:"inForeignContent",pkg:"github.com/88250/lute/html",typ:$funcType([],[$Bool],false)},{prop:"parseImpliedToken",name:"parseImpliedToken",pkg:"github.com/88250/lute/html",typ:$funcType([O,I.Atom,$String],[],false)},{prop:"parseCurrentToken",name:"parseCurrentToken",pkg:"github.com/88250/lute/html",typ:$funcType([],[],false)},{prop:"parse",name:"parse",pkg:"github.com/88250/lute/html",typ:$funcType([],[$error],false)}];DE.methods=[{prop:"Unlink",name:"Unlink",pkg:"",typ:$funcType([],[],false)},{prop:"InsertBefore",name:"InsertBefore",pkg:"",typ:$funcType([DE],[],false)},{prop:"InsertAfter",name:"InsertAfter",pkg:"",typ:$funcType([DE],[],false)},{prop:"InsertChildBefore",name:"InsertChildBefore",pkg:"",typ:$funcType([DE,DE],[],false)},{prop:"AppendChild",name:"AppendChild",pkg:"",typ:$funcType([DE],[],false)},{prop:"RemoveChild",name:"RemoveChild",pkg:"",typ:$funcType([DE],[],false)},{prop:"clone",name:"clone",pkg:"github.com/88250/lute/html",typ:$funcType([],[DE],false)}];DL.methods=[{prop:"pop",name:"pop",pkg:"github.com/88250/lute/html",typ:$funcType([],[DE],false)},{prop:"top",name:"top",pkg:"github.com/88250/lute/html",typ:$funcType([],[DE],false)},{prop:"index",name:"index",pkg:"github.com/88250/lute/html",typ:$funcType([DE],[$Int],false)},{prop:"contains",name:"contains",pkg:"github.com/88250/lute/html",typ:$funcType([I.Atom],[$Bool],false)},{prop:"insert",name:"insert",pkg:"github.com/88250/lute/html",typ:$funcType([$Int,DE],[],false)},{prop:"remove",name:"remove",pkg:"github.com/88250/lute/html",typ:$funcType([DE],[],false)}];DM.methods=[{prop:"pop",name:"pop",pkg:"github.com/88250/lute/html",typ:$funcType([],[AJ],false)},{prop:"top",name:"top",pkg:"github.com/88250/lute/html",typ:$funcType([],[AJ],false)}];P.init("",[{prop:"Namespace",name:"Namespace",embedded:false,exported:true,typ:$String,tag:""},{prop:"Key",name:"Key",embedded:false,exported:true,typ:$String,tag:""},{prop:"Val",name:"Val",embedded:false,exported:true,typ:$String,tag:""}]);Q.init("",[{prop:"Type",name:"Type",embedded:false,exported:true,typ:O,tag:""},{prop:"DataAtom",name:"DataAtom",embedded:false,exported:true,typ:I.Atom,tag:""},{prop:"Data",name:"Data",embedded:false,exported:true,typ:$String,tag:""},{prop:"Attr",name:"Attr",embedded:false,exported:true,typ:DG,tag:""}]);R.init("github.com/88250/lute/html",[{prop:"start",name:"start",embedded:false,exported:false,typ:$Int,tag:""},{prop:"end",name:"end",embedded:false,exported:false,typ:$Int,tag:""}]);S.init("github.com/88250/lute/html",[{prop:"r",name:"r",embedded:false,exported:false,typ:G.Reader,tag:""},{prop:"tt",name:"tt",embedded:false,exported:false,typ:O,tag:""},{prop:"err",name:"err",embedded:false,exported:false,typ:$error,tag:""},{prop:"readErr",name:"readErr",embedded:false,exported:false,typ:$error,tag:""},{prop:"raw",name:"raw",embedded:false,exported:false,typ:R,tag:""},{prop:"buf",name:"buf",embedded:false,exported:false,typ:DC,tag:""},{prop:"maxBuf",name:"maxBuf",embedded:false,exported:false,typ:$Int,tag:""},{prop:"data",name:"data",embedded:false,exported:false,typ:R,tag:""},{prop:"pendingAttr",name:"pendingAttr",embedded:false,exported:false,typ:DJ,tag:""},{prop:"attr",name:"attr",embedded:false,exported:false,typ:DK,tag:""},{prop:"nAttrReturned",name:"nAttrReturned",embedded:false,exported:false,typ:$Int,tag:""},{prop:"rawTag",name:"rawTag",embedded:false,exported:false,typ:$String,tag:""},{prop:"textIsRaw",name:"textIsRaw",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"convertNUL",name:"convertNUL",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"allowCDATA",name:"allowCDATA",embedded:false,exported:false,typ:$Bool,tag:""}]);Z.init([{prop:"Write",name:"Write",pkg:"",typ:$funcType([DC],[$Int,$error],false)},{prop:"WriteByte",name:"WriteByte",pkg:"",typ:$funcType([$Uint8],[$error],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[$Int,$error],false)}]);AG.init("github.com/88250/lute/html",[{prop:"tokenizer",name:"tokenizer",embedded:false,exported:false,typ:DO,tag:""},{prop:"tok",name:"tok",embedded:false,exported:false,typ:Q,tag:""},{prop:"hasSelfClosingToken",name:"hasSelfClosingToken",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"doc",name:"doc",embedded:false,exported:false,typ:DE,tag:""},{prop:"oe",name:"oe",embedded:false,exported:false,typ:BS,tag:""},{prop:"afe",name:"afe",embedded:false,exported:false,typ:BS,tag:""},{prop:"head",name:"head",embedded:false,exported:false,typ:DE,tag:""},{prop:"form",name:"form",embedded:false,exported:false,typ:DE,tag:""},{prop:"scripting",name:"scripting",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"framesetOK",name:"framesetOK",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"templateStack",name:"templateStack",embedded:false,exported:false,typ:BT,tag:""},{prop:"im",name:"im",embedded:false,exported:false,typ:AJ,tag:""},{prop:"originalIM",name:"originalIM",embedded:false,exported:false,typ:AJ,tag:""},{prop:"fosterParenting",name:"fosterParenting",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"quirks",name:"quirks",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"fragment",name:"fragment",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"context",name:"context",embedded:false,exported:false,typ:DE,tag:""}]);AJ.init([DR],[$Bool],false);BK.init([DR],[],false);BQ.init("",[{prop:"Parent",name:"Parent",embedded:false,exported:true,typ:DE,tag:""},{prop:"FirstChild",name:"FirstChild",embedded:false,exported:true,typ:DE,tag:""},{prop:"LastChild",name:"LastChild",embedded:false,exported:true,typ:DE,tag:""},{prop:"PrevSibling",name:"PrevSibling",embedded:false,exported:true,typ:DE,tag:""},{prop:"NextSibling",name:"NextSibling",embedded:false,exported:true,typ:DE,tag:""},{prop:"Type",name:"Type",embedded:false,exported:true,typ:BO,tag:""},{prop:"DataAtom",name:"DataAtom",embedded:false,exported:true,typ:I.Atom,tag:""},{prop:"Data",name:"Data",embedded:false,exported:true,typ:$String,tag:""},{prop:"Namespace",name:"Namespace",embedded:false,exported:true,typ:$String,tag:""},{prop:"Attr",name:"Attr",embedded:false,exported:true,typ:DG,tag:""}]);BS.init(DE);BT.init(AJ);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=J.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.ErrBufferExceeded=F.New("max buffer exceeded");V=(new DC($stringToBytes("\x00")));W=(new DC($stringToBytes("\xEF\xBF\xBD")));AB=F.New("html: internal error (plaintext abort)");AF=$makeMap($String.keyFor,[{k:"area",v:true},{k:"base",v:true},{k:"br",v:true},{k:"col",v:true},{k:"command",v:true},{k:"embed",v:true},{k:"hr",v:true},{k:"img",v:true},{k:"input",v:true},{k:"keygen",v:true},{k:"link",v:true},{k:"meta",v:true},{k:"param",v:true},{k:"source",v:true},{k:"track",v:true},{k:"wbr",v:true}]);AH=$makeMap($String.keyFor,[{k:"",v:new DD([203014,143623,22020,365829,37378,87554,206599,157702,463880])},{k:"math",v:new DD([117006,214786,176386,41986,422914,217349])},{k:"svg",v:new DD([352516,152589,69637])}]);BP=new BQ.ptr(DE.nil,DE.nil,DE.nil,DE.nil,DE.nil,6,0,"","",DG.nil);BY=$makeMap($String.keyFor,[{k:"b",v:true},{k:"big",v:true},{k:"blockquote",v:true},{k:"body",v:true},{k:"br",v:true},{k:"center",v:true},{k:"code",v:true},{k:"dd",v:true},{k:"div",v:true},{k:"dl",v:true},{k:"dt",v:true},{k:"em",v:true},{k:"embed",v:true},{k:"h1",v:true},{k:"h2",v:true},{k:"h3",v:true},{k:"h4",v:true},{k:"h5",v:true},{k:"h6",v:true},{k:"head",v:true},{k:"hr",v:true},{k:"i",v:true},{k:"img",v:true},{k:"li",v:true},{k:"listing",v:true},{k:"menu",v:true},{k:"meta",v:true},{k:"nobr",v:true},{k:"ol",v:true},{k:"p",v:true},{k:"pre",v:true},{k:"ruby",v:true},{k:"s",v:true},{k:"small",v:true},{k:"span",v:true},{k:"strong",v:true},{k:"strike",v:true},{k:"sub",v:true},{k:"sup",v:true},{k:"table",v:true},{k:"tt",v:true},{k:"u",v:true},{k:"ul",v:true},{k:"var",v:true}]);BZ=$makeMap($String.keyFor,[{k:"altglyph",v:"altGlyph"},{k:"altglyphdef",v:"altGlyphDef"},{k:"altglyphitem",v:"altGlyphItem"},{k:"animatecolor",v:"animateColor"},{k:"animatemotion",v:"animateMotion"},{k:"animatetransform",v:"animateTransform"},{k:"clippath",v:"clipPath"},{k:"feblend",v:"feBlend"},{k:"fecolormatrix",v:"feColorMatrix"},{k:"fecomponenttransfer",v:"feComponentTransfer"},{k:"fecomposite",v:"feComposite"},{k:"feconvolvematrix",v:"feConvolveMatrix"},{k:"fediffuselighting",v:"feDiffuseLighting"},{k:"fedisplacementmap",v:"feDisplacementMap"},{k:"fedistantlight",v:"feDistantLight"},{k:"feflood",v:"feFlood"},{k:"fefunca",v:"feFuncA"},{k:"fefuncb",v:"feFuncB"},{k:"fefuncg",v:"feFuncG"},{k:"fefuncr",v:"feFuncR"},{k:"fegaussianblur",v:"feGaussianBlur"},{k:"feimage",v:"feImage"},{k:"femerge",v:"feMerge"},{k:"femergenode",v:"feMergeNode"},{k:"femorphology",v:"feMorphology"},{k:"feoffset",v:"feOffset"},{k:"fepointlight",v:"fePointLight"},{k:"fespecularlighting",v:"feSpecularLighting"},{k:"fespotlight",v:"feSpotLight"},{k:"fetile",v:"feTile"},{k:"feturbulence",v:"feTurbulence"},{k:"foreignobject",v:"foreignObject"},{k:"glyphref",v:"glyphRef"},{k:"lineargradient",v:"linearGradient"},{k:"radialgradient",v:"radialGradient"},{k:"textpath",v:"textPath"}]);CA=$makeMap($String.keyFor,[{k:"definitionurl",v:"definitionURL"}]);CB=$makeMap($String.keyFor,[{k:"attributename",v:"attributeName"},{k:"attributetype",v:"attributeType"},{k:"basefrequency",v:"baseFrequency"},{k:"baseprofile",v:"baseProfile"},{k:"calcmode",v:"calcMode"},{k:"clippathunits",v:"clipPathUnits"},{k:"contentscripttype",v:"contentScriptType"},{k:"contentstyletype",v:"contentStyleType"},{k:"diffuseconstant",v:"diffuseConstant"},{k:"edgemode",v:"edgeMode"},{k:"externalresourcesrequired",v:"externalResourcesRequired"},{k:"filterres",v:"filterRes"},{k:"filterunits",v:"filterUnits"},{k:"glyphref",v:"glyphRef"},{k:"gradienttransform",v:"gradientTransform"},{k:"gradientunits",v:"gradientUnits"},{k:"kernelmatrix",v:"kernelMatrix"},{k:"kernelunitlength",v:"kernelUnitLength"},{k:"keypoints",v:"keyPoints"},{k:"keysplines",v:"keySplines"},{k:"keytimes",v:"keyTimes"},{k:"lengthadjust",v:"lengthAdjust"},{k:"limitingconeangle",v:"limitingConeAngle"},{k:"markerheight",v:"markerHeight"},{k:"markerunits",v:"markerUnits"},{k:"markerwidth",v:"markerWidth"},{k:"maskcontentunits",v:"maskContentUnits"},{k:"maskunits",v:"maskUnits"},{k:"numoctaves",v:"numOctaves"},{k:"pathlength",v:"pathLength"},{k:"patterncontentunits",v:"patternContentUnits"},{k:"patterntransform",v:"patternTransform"},{k:"patternunits",v:"patternUnits"},{k:"pointsatx",v:"pointsAtX"},{k:"pointsaty",v:"pointsAtY"},{k:"pointsatz",v:"pointsAtZ"},{k:"preservealpha",v:"preserveAlpha"},{k:"preserveaspectratio",v:"preserveAspectRatio"},{k:"primitiveunits",v:"primitiveUnits"},{k:"refx",v:"refX"},{k:"refy",v:"refY"},{k:"repeatcount",v:"repeatCount"},{k:"repeatdur",v:"repeatDur"},{k:"requiredextensions",v:"requiredExtensions"},{k:"requiredfeatures",v:"requiredFeatures"},{k:"specularconstant",v:"specularConstant"},{k:"specularexponent",v:"specularExponent"},{k:"spreadmethod",v:"spreadMethod"},{k:"startoffset",v:"startOffset"},{k:"stddeviation",v:"stdDeviation"},{k:"stitchtiles",v:"stitchTiles"},{k:"surfacescale",v:"surfaceScale"},{k:"systemlanguage",v:"systemLanguage"},{k:"tablevalues",v:"tableValues"},{k:"targetx",v:"targetX"},{k:"targety",v:"targetY"},{k:"textlength",v:"textLength"},{k:"viewbox",v:"viewBox"},{k:"viewtarget",v:"viewTarget"},{k:"xchannelselector",v:"xChannelSelector"},{k:"ychannelselector",v:"yChannelSelector"},{k:"zoomandpan",v:"zoomAndPan"}]);CC=(new DC($stringToBytes("&")));CD=(new DC($stringToBytes("<")));CE=(new DC($stringToBytes(">")));CF=(new DC($stringToBytes(""")));CQ=$toNativeArray($kindInt32,[8364,129,8218,402,8222,8230,8224,8225,710,8240,352,8249,338,141,381,143,144,8216,8217,8220,8221,8226,8211,8212,732,8482,353,8250,339,157,382,376]);$pkg.Entities=$makeMap($String.keyFor,[{k:"AElig;",v:"\xC3\x86"},{k:"AMP;",v:"&"},{k:"Aacute;",v:"\xC3\x81"},{k:"Abreve;",v:"\xC4\x82"},{k:"Acirc;",v:"\xC3\x82"},{k:"Acy;",v:"\xD0\x90"},{k:"Afr;",v:"\xF0\x9D\x94\x84"},{k:"Agrave;",v:"\xC3\x80"},{k:"Alpha;",v:"\xCE\x91"},{k:"Amacr;",v:"\xC4\x80"},{k:"And;",v:"\xE2\xA9\x93"},{k:"Aogon;",v:"\xC4\x84"},{k:"Aopf;",v:"\xF0\x9D\x94\xB8"},{k:"ApplyFunction;",v:"\xE2\x81\xA1"},{k:"Aring;",v:"\xC3\x85"},{k:"Ascr;",v:"\xF0\x9D\x92\x9C"},{k:"Assign;",v:"\xE2\x89\x94"},{k:"Atilde;",v:"\xC3\x83"},{k:"Auml;",v:"\xC3\x84"},{k:"Backslash;",v:"\xE2\x88\x96"},{k:"Barv;",v:"\xE2\xAB\xA7"},{k:"Barwed;",v:"\xE2\x8C\x86"},{k:"Bcy;",v:"\xD0\x91"},{k:"Because;",v:"\xE2\x88\xB5"},{k:"Bernoullis;",v:"\xE2\x84\xAC"},{k:"Beta;",v:"\xCE\x92"},{k:"Bfr;",v:"\xF0\x9D\x94\x85"},{k:"Bopf;",v:"\xF0\x9D\x94\xB9"},{k:"Breve;",v:"\xCB\x98"},{k:"Bscr;",v:"\xE2\x84\xAC"},{k:"Bumpeq;",v:"\xE2\x89\x8E"},{k:"CHcy;",v:"\xD0\xA7"},{k:"COPY;",v:"\xC2\xA9"},{k:"Cacute;",v:"\xC4\x86"},{k:"Cap;",v:"\xE2\x8B\x92"},{k:"CapitalDifferentialD;",v:"\xE2\x85\x85"},{k:"Cayleys;",v:"\xE2\x84\xAD"},{k:"Ccaron;",v:"\xC4\x8C"},{k:"Ccedil;",v:"\xC3\x87"},{k:"Ccirc;",v:"\xC4\x88"},{k:"Cconint;",v:"\xE2\x88\xB0"},{k:"Cdot;",v:"\xC4\x8A"},{k:"Cedilla;",v:"\xC2\xB8"},{k:"CenterDot;",v:"\xC2\xB7"},{k:"Cfr;",v:"\xE2\x84\xAD"},{k:"Chi;",v:"\xCE\xA7"},{k:"CircleDot;",v:"\xE2\x8A\x99"},{k:"CircleMinus;",v:"\xE2\x8A\x96"},{k:"CirclePlus;",v:"\xE2\x8A\x95"},{k:"CircleTimes;",v:"\xE2\x8A\x97"},{k:"ClockwiseContourIntegral;",v:"\xE2\x88\xB2"},{k:"CloseCurlyDoubleQuote;",v:"\xE2\x80\x9D"},{k:"CloseCurlyQuote;",v:"\xE2\x80\x99"},{k:"Colon;",v:"\xE2\x88\xB7"},{k:"Colone;",v:"\xE2\xA9\xB4"},{k:"Congruent;",v:"\xE2\x89\xA1"},{k:"Conint;",v:"\xE2\x88\xAF"},{k:"ContourIntegral;",v:"\xE2\x88\xAE"},{k:"Copf;",v:"\xE2\x84\x82"},{k:"Coproduct;",v:"\xE2\x88\x90"},{k:"CounterClockwiseContourIntegral;",v:"\xE2\x88\xB3"},{k:"Cross;",v:"\xE2\xA8\xAF"},{k:"Cscr;",v:"\xF0\x9D\x92\x9E"},{k:"Cup;",v:"\xE2\x8B\x93"},{k:"CupCap;",v:"\xE2\x89\x8D"},{k:"DD;",v:"\xE2\x85\x85"},{k:"DDotrahd;",v:"\xE2\xA4\x91"},{k:"DJcy;",v:"\xD0\x82"},{k:"DScy;",v:"\xD0\x85"},{k:"DZcy;",v:"\xD0\x8F"},{k:"Dagger;",v:"\xE2\x80\xA1"},{k:"Darr;",v:"\xE2\x86\xA1"},{k:"Dashv;",v:"\xE2\xAB\xA4"},{k:"Dcaron;",v:"\xC4\x8E"},{k:"Dcy;",v:"\xD0\x94"},{k:"Del;",v:"\xE2\x88\x87"},{k:"Delta;",v:"\xCE\x94"},{k:"Dfr;",v:"\xF0\x9D\x94\x87"},{k:"DiacriticalAcute;",v:"\xC2\xB4"},{k:"DiacriticalDot;",v:"\xCB\x99"},{k:"DiacriticalDoubleAcute;",v:"\xCB\x9D"},{k:"DiacriticalGrave;",v:"`"},{k:"DiacriticalTilde;",v:"\xCB\x9C"},{k:"Diamond;",v:"\xE2\x8B\x84"},{k:"DifferentialD;",v:"\xE2\x85\x86"},{k:"Dopf;",v:"\xF0\x9D\x94\xBB"},{k:"Dot;",v:"\xC2\xA8"},{k:"DotDot;",v:"\xE2\x83\x9C"},{k:"DotEqual;",v:"\xE2\x89\x90"},{k:"DoubleContourIntegral;",v:"\xE2\x88\xAF"},{k:"DoubleDot;",v:"\xC2\xA8"},{k:"DoubleDownArrow;",v:"\xE2\x87\x93"},{k:"DoubleLeftArrow;",v:"\xE2\x87\x90"},{k:"DoubleLeftRightArrow;",v:"\xE2\x87\x94"},{k:"DoubleLeftTee;",v:"\xE2\xAB\xA4"},{k:"DoubleLongLeftArrow;",v:"\xE2\x9F\xB8"},{k:"DoubleLongLeftRightArrow;",v:"\xE2\x9F\xBA"},{k:"DoubleLongRightArrow;",v:"\xE2\x9F\xB9"},{k:"DoubleRightArrow;",v:"\xE2\x87\x92"},{k:"DoubleRightTee;",v:"\xE2\x8A\xA8"},{k:"DoubleUpArrow;",v:"\xE2\x87\x91"},{k:"DoubleUpDownArrow;",v:"\xE2\x87\x95"},{k:"DoubleVerticalBar;",v:"\xE2\x88\xA5"},{k:"DownArrow;",v:"\xE2\x86\x93"},{k:"DownArrowBar;",v:"\xE2\xA4\x93"},{k:"DownArrowUpArrow;",v:"\xE2\x87\xB5"},{k:"DownBreve;",v:"\xCC\x91"},{k:"DownLeftRightVector;",v:"\xE2\xA5\x90"},{k:"DownLeftTeeVector;",v:"\xE2\xA5\x9E"},{k:"DownLeftVector;",v:"\xE2\x86\xBD"},{k:"DownLeftVectorBar;",v:"\xE2\xA5\x96"},{k:"DownRightTeeVector;",v:"\xE2\xA5\x9F"},{k:"DownRightVector;",v:"\xE2\x87\x81"},{k:"DownRightVectorBar;",v:"\xE2\xA5\x97"},{k:"DownTee;",v:"\xE2\x8A\xA4"},{k:"DownTeeArrow;",v:"\xE2\x86\xA7"},{k:"Downarrow;",v:"\xE2\x87\x93"},{k:"Dscr;",v:"\xF0\x9D\x92\x9F"},{k:"Dstrok;",v:"\xC4\x90"},{k:"ENG;",v:"\xC5\x8A"},{k:"ETH;",v:"\xC3\x90"},{k:"Eacute;",v:"\xC3\x89"},{k:"Ecaron;",v:"\xC4\x9A"},{k:"Ecirc;",v:"\xC3\x8A"},{k:"Ecy;",v:"\xD0\xAD"},{k:"Edot;",v:"\xC4\x96"},{k:"Efr;",v:"\xF0\x9D\x94\x88"},{k:"Egrave;",v:"\xC3\x88"},{k:"Element;",v:"\xE2\x88\x88"},{k:"Emacr;",v:"\xC4\x92"},{k:"EmptySmallSquare;",v:"\xE2\x97\xBB"},{k:"EmptyVerySmallSquare;",v:"\xE2\x96\xAB"},{k:"Eogon;",v:"\xC4\x98"},{k:"Eopf;",v:"\xF0\x9D\x94\xBC"},{k:"Epsilon;",v:"\xCE\x95"},{k:"Equal;",v:"\xE2\xA9\xB5"},{k:"EqualTilde;",v:"\xE2\x89\x82"},{k:"Equilibrium;",v:"\xE2\x87\x8C"},{k:"Escr;",v:"\xE2\x84\xB0"},{k:"Esim;",v:"\xE2\xA9\xB3"},{k:"Eta;",v:"\xCE\x97"},{k:"Euml;",v:"\xC3\x8B"},{k:"Exists;",v:"\xE2\x88\x83"},{k:"ExponentialE;",v:"\xE2\x85\x87"},{k:"Fcy;",v:"\xD0\xA4"},{k:"Ffr;",v:"\xF0\x9D\x94\x89"},{k:"FilledSmallSquare;",v:"\xE2\x97\xBC"},{k:"FilledVerySmallSquare;",v:"\xE2\x96\xAA"},{k:"Fopf;",v:"\xF0\x9D\x94\xBD"},{k:"ForAll;",v:"\xE2\x88\x80"},{k:"Fouriertrf;",v:"\xE2\x84\xB1"},{k:"Fscr;",v:"\xE2\x84\xB1"},{k:"GJcy;",v:"\xD0\x83"},{k:"GT;",v:">"},{k:"Gamma;",v:"\xCE\x93"},{k:"Gammad;",v:"\xCF\x9C"},{k:"Gbreve;",v:"\xC4\x9E"},{k:"Gcedil;",v:"\xC4\xA2"},{k:"Gcirc;",v:"\xC4\x9C"},{k:"Gcy;",v:"\xD0\x93"},{k:"Gdot;",v:"\xC4\xA0"},{k:"Gfr;",v:"\xF0\x9D\x94\x8A"},{k:"Gg;",v:"\xE2\x8B\x99"},{k:"Gopf;",v:"\xF0\x9D\x94\xBE"},{k:"GreaterEqual;",v:"\xE2\x89\xA5"},{k:"GreaterEqualLess;",v:"\xE2\x8B\x9B"},{k:"GreaterFullEqual;",v:"\xE2\x89\xA7"},{k:"GreaterGreater;",v:"\xE2\xAA\xA2"},{k:"GreaterLess;",v:"\xE2\x89\xB7"},{k:"GreaterSlantEqual;",v:"\xE2\xA9\xBE"},{k:"GreaterTilde;",v:"\xE2\x89\xB3"},{k:"Gscr;",v:"\xF0\x9D\x92\xA2"},{k:"Gt;",v:"\xE2\x89\xAB"},{k:"HARDcy;",v:"\xD0\xAA"},{k:"Hacek;",v:"\xCB\x87"},{k:"Hat;",v:"^"},{k:"Hcirc;",v:"\xC4\xA4"},{k:"Hfr;",v:"\xE2\x84\x8C"},{k:"HilbertSpace;",v:"\xE2\x84\x8B"},{k:"Hopf;",v:"\xE2\x84\x8D"},{k:"HorizontalLine;",v:"\xE2\x94\x80"},{k:"Hscr;",v:"\xE2\x84\x8B"},{k:"Hstrok;",v:"\xC4\xA6"},{k:"HumpDownHump;",v:"\xE2\x89\x8E"},{k:"HumpEqual;",v:"\xE2\x89\x8F"},{k:"IEcy;",v:"\xD0\x95"},{k:"IJlig;",v:"\xC4\xB2"},{k:"IOcy;",v:"\xD0\x81"},{k:"Iacute;",v:"\xC3\x8D"},{k:"Icirc;",v:"\xC3\x8E"},{k:"Icy;",v:"\xD0\x98"},{k:"Idot;",v:"\xC4\xB0"},{k:"Ifr;",v:"\xE2\x84\x91"},{k:"Igrave;",v:"\xC3\x8C"},{k:"Im;",v:"\xE2\x84\x91"},{k:"Imacr;",v:"\xC4\xAA"},{k:"ImaginaryI;",v:"\xE2\x85\x88"},{k:"Implies;",v:"\xE2\x87\x92"},{k:"Int;",v:"\xE2\x88\xAC"},{k:"Integral;",v:"\xE2\x88\xAB"},{k:"Intersection;",v:"\xE2\x8B\x82"},{k:"InvisibleComma;",v:"\xE2\x81\xA3"},{k:"InvisibleTimes;",v:"\xE2\x81\xA2"},{k:"Iogon;",v:"\xC4\xAE"},{k:"Iopf;",v:"\xF0\x9D\x95\x80"},{k:"Iota;",v:"\xCE\x99"},{k:"Iscr;",v:"\xE2\x84\x90"},{k:"Itilde;",v:"\xC4\xA8"},{k:"Iukcy;",v:"\xD0\x86"},{k:"Iuml;",v:"\xC3\x8F"},{k:"Jcirc;",v:"\xC4\xB4"},{k:"Jcy;",v:"\xD0\x99"},{k:"Jfr;",v:"\xF0\x9D\x94\x8D"},{k:"Jopf;",v:"\xF0\x9D\x95\x81"},{k:"Jscr;",v:"\xF0\x9D\x92\xA5"},{k:"Jsercy;",v:"\xD0\x88"},{k:"Jukcy;",v:"\xD0\x84"},{k:"KHcy;",v:"\xD0\xA5"},{k:"KJcy;",v:"\xD0\x8C"},{k:"Kappa;",v:"\xCE\x9A"},{k:"Kcedil;",v:"\xC4\xB6"},{k:"Kcy;",v:"\xD0\x9A"},{k:"Kfr;",v:"\xF0\x9D\x94\x8E"},{k:"Kopf;",v:"\xF0\x9D\x95\x82"},{k:"Kscr;",v:"\xF0\x9D\x92\xA6"},{k:"LJcy;",v:"\xD0\x89"},{k:"LT;",v:"<"},{k:"Lacute;",v:"\xC4\xB9"},{k:"Lambda;",v:"\xCE\x9B"},{k:"Lang;",v:"\xE2\x9F\xAA"},{k:"Laplacetrf;",v:"\xE2\x84\x92"},{k:"Larr;",v:"\xE2\x86\x9E"},{k:"Lcaron;",v:"\xC4\xBD"},{k:"Lcedil;",v:"\xC4\xBB"},{k:"Lcy;",v:"\xD0\x9B"},{k:"LeftAngleBracket;",v:"\xE2\x9F\xA8"},{k:"LeftArrow;",v:"\xE2\x86\x90"},{k:"LeftArrowBar;",v:"\xE2\x87\xA4"},{k:"LeftArrowRightArrow;",v:"\xE2\x87\x86"},{k:"LeftCeiling;",v:"\xE2\x8C\x88"},{k:"LeftDoubleBracket;",v:"\xE2\x9F\xA6"},{k:"LeftDownTeeVector;",v:"\xE2\xA5\xA1"},{k:"LeftDownVector;",v:"\xE2\x87\x83"},{k:"LeftDownVectorBar;",v:"\xE2\xA5\x99"},{k:"LeftFloor;",v:"\xE2\x8C\x8A"},{k:"LeftRightArrow;",v:"\xE2\x86\x94"},{k:"LeftRightVector;",v:"\xE2\xA5\x8E"},{k:"LeftTee;",v:"\xE2\x8A\xA3"},{k:"LeftTeeArrow;",v:"\xE2\x86\xA4"},{k:"LeftTeeVector;",v:"\xE2\xA5\x9A"},{k:"LeftTriangle;",v:"\xE2\x8A\xB2"},{k:"LeftTriangleBar;",v:"\xE2\xA7\x8F"},{k:"LeftTriangleEqual;",v:"\xE2\x8A\xB4"},{k:"LeftUpDownVector;",v:"\xE2\xA5\x91"},{k:"LeftUpTeeVector;",v:"\xE2\xA5\xA0"},{k:"LeftUpVector;",v:"\xE2\x86\xBF"},{k:"LeftUpVectorBar;",v:"\xE2\xA5\x98"},{k:"LeftVector;",v:"\xE2\x86\xBC"},{k:"LeftVectorBar;",v:"\xE2\xA5\x92"},{k:"Leftarrow;",v:"\xE2\x87\x90"},{k:"Leftrightarrow;",v:"\xE2\x87\x94"},{k:"LessEqualGreater;",v:"\xE2\x8B\x9A"},{k:"LessFullEqual;",v:"\xE2\x89\xA6"},{k:"LessGreater;",v:"\xE2\x89\xB6"},{k:"LessLess;",v:"\xE2\xAA\xA1"},{k:"LessSlantEqual;",v:"\xE2\xA9\xBD"},{k:"LessTilde;",v:"\xE2\x89\xB2"},{k:"Lfr;",v:"\xF0\x9D\x94\x8F"},{k:"Ll;",v:"\xE2\x8B\x98"},{k:"Lleftarrow;",v:"\xE2\x87\x9A"},{k:"Lmidot;",v:"\xC4\xBF"},{k:"LongLeftArrow;",v:"\xE2\x9F\xB5"},{k:"LongLeftRightArrow;",v:"\xE2\x9F\xB7"},{k:"LongRightArrow;",v:"\xE2\x9F\xB6"},{k:"Longleftarrow;",v:"\xE2\x9F\xB8"},{k:"Longleftrightarrow;",v:"\xE2\x9F\xBA"},{k:"Longrightarrow;",v:"\xE2\x9F\xB9"},{k:"Lopf;",v:"\xF0\x9D\x95\x83"},{k:"LowerLeftArrow;",v:"\xE2\x86\x99"},{k:"LowerRightArrow;",v:"\xE2\x86\x98"},{k:"Lscr;",v:"\xE2\x84\x92"},{k:"Lsh;",v:"\xE2\x86\xB0"},{k:"Lstrok;",v:"\xC5\x81"},{k:"Lt;",v:"\xE2\x89\xAA"},{k:"Map;",v:"\xE2\xA4\x85"},{k:"Mcy;",v:"\xD0\x9C"},{k:"MediumSpace;",v:"\xE2\x81\x9F"},{k:"Mellintrf;",v:"\xE2\x84\xB3"},{k:"Mfr;",v:"\xF0\x9D\x94\x90"},{k:"MinusPlus;",v:"\xE2\x88\x93"},{k:"Mopf;",v:"\xF0\x9D\x95\x84"},{k:"Mscr;",v:"\xE2\x84\xB3"},{k:"Mu;",v:"\xCE\x9C"},{k:"NJcy;",v:"\xD0\x8A"},{k:"Nacute;",v:"\xC5\x83"},{k:"Ncaron;",v:"\xC5\x87"},{k:"Ncedil;",v:"\xC5\x85"},{k:"Ncy;",v:"\xD0\x9D"},{k:"NegativeMediumSpace;",v:"\xE2\x80\x8B"},{k:"NegativeThickSpace;",v:"\xE2\x80\x8B"},{k:"NegativeThinSpace;",v:"\xE2\x80\x8B"},{k:"NegativeVeryThinSpace;",v:"\xE2\x80\x8B"},{k:"NestedGreaterGreater;",v:"\xE2\x89\xAB"},{k:"NestedLessLess;",v:"\xE2\x89\xAA"},{k:"NewLine;",v:"\n"},{k:"Nfr;",v:"\xF0\x9D\x94\x91"},{k:"NoBreak;",v:"\xE2\x81\xA0"},{k:"NonBreakingSpace;",v:"\xC2\xA0"},{k:"Nopf;",v:"\xE2\x84\x95"},{k:"Not;",v:"\xE2\xAB\xAC"},{k:"NotCongruent;",v:"\xE2\x89\xA2"},{k:"NotCupCap;",v:"\xE2\x89\xAD"},{k:"NotDoubleVerticalBar;",v:"\xE2\x88\xA6"},{k:"NotElement;",v:"\xE2\x88\x89"},{k:"NotEqual;",v:"\xE2\x89\xA0"},{k:"NotEqualTilde;",v:"\xE2\x89\x82\xCC\xB8"},{k:"NotExists;",v:"\xE2\x88\x84"},{k:"NotGreater;",v:"\xE2\x89\xAF"},{k:"NotGreaterEqual;",v:"\xE2\x89\xB1"},{k:"NotGreaterFullEqual;",v:"\xE2\x89\xA7\xCC\xB8"},{k:"NotGreaterGreater;",v:"\xE2\x89\xAB\xCC\xB8"},{k:"NotGreaterLess;",v:"\xE2\x89\xB9"},{k:"NotGreaterSlantEqual;",v:"\xE2\xA9\xBE\xCC\xB8"},{k:"NotGreaterTilde;",v:"\xE2\x89\xB5"},{k:"NotHumpDownHump;",v:"\xE2\x89\x8E\xCC\xB8"},{k:"NotHumpEqual;",v:"\xE2\x89\x8F\xCC\xB8"},{k:"NotLeftTriangle;",v:"\xE2\x8B\xAA"},{k:"NotLeftTriangleBar;",v:"\xE2\xA7\x8F\xCC\xB8"},{k:"NotLeftTriangleEqual;",v:"\xE2\x8B\xAC"},{k:"NotLess;",v:"\xE2\x89\xAE"},{k:"NotLessEqual;",v:"\xE2\x89\xB0"},{k:"NotLessGreater;",v:"\xE2\x89\xB8"},{k:"NotLessLess;",v:"\xE2\x89\xAA\xCC\xB8"},{k:"NotLessSlantEqual;",v:"\xE2\xA9\xBD\xCC\xB8"},{k:"NotLessTilde;",v:"\xE2\x89\xB4"},{k:"NotNestedGreaterGreater;",v:"\xE2\xAA\xA2\xCC\xB8"},{k:"NotNestedLessLess;",v:"\xE2\xAA\xA1\xCC\xB8"},{k:"NotPrecedes;",v:"\xE2\x8A\x80"},{k:"NotPrecedesEqual;",v:"\xE2\xAA\xAF\xCC\xB8"},{k:"NotPrecedesSlantEqual;",v:"\xE2\x8B\xA0"},{k:"NotReverseElement;",v:"\xE2\x88\x8C"},{k:"NotRightTriangle;",v:"\xE2\x8B\xAB"},{k:"NotRightTriangleBar;",v:"\xE2\xA7\x90\xCC\xB8"},{k:"NotRightTriangleEqual;",v:"\xE2\x8B\xAD"},{k:"NotSquareSubset;",v:"\xE2\x8A\x8F\xCC\xB8"},{k:"NotSquareSubsetEqual;",v:"\xE2\x8B\xA2"},{k:"NotSquareSuperset;",v:"\xE2\x8A\x90\xCC\xB8"},{k:"NotSquareSupersetEqual;",v:"\xE2\x8B\xA3"},{k:"NotSubset;",v:"\xE2\x8A\x82\xE2\x83\x92"},{k:"NotSubsetEqual;",v:"\xE2\x8A\x88"},{k:"NotSucceeds;",v:"\xE2\x8A\x81"},{k:"NotSucceedsEqual;",v:"\xE2\xAA\xB0\xCC\xB8"},{k:"NotSucceedsSlantEqual;",v:"\xE2\x8B\xA1"},{k:"NotSucceedsTilde;",v:"\xE2\x89\xBF\xCC\xB8"},{k:"NotSuperset;",v:"\xE2\x8A\x83\xE2\x83\x92"},{k:"NotSupersetEqual;",v:"\xE2\x8A\x89"},{k:"NotTilde;",v:"\xE2\x89\x81"},{k:"NotTildeEqual;",v:"\xE2\x89\x84"},{k:"NotTildeFullEqual;",v:"\xE2\x89\x87"},{k:"NotTildeTilde;",v:"\xE2\x89\x89"},{k:"NotVerticalBar;",v:"\xE2\x88\xA4"},{k:"Nscr;",v:"\xF0\x9D\x92\xA9"},{k:"Ntilde;",v:"\xC3\x91"},{k:"Nu;",v:"\xCE\x9D"},{k:"OElig;",v:"\xC5\x92"},{k:"Oacute;",v:"\xC3\x93"},{k:"Ocirc;",v:"\xC3\x94"},{k:"Ocy;",v:"\xD0\x9E"},{k:"Odblac;",v:"\xC5\x90"},{k:"Ofr;",v:"\xF0\x9D\x94\x92"},{k:"Ograve;",v:"\xC3\x92"},{k:"Omacr;",v:"\xC5\x8C"},{k:"Omega;",v:"\xCE\xA9"},{k:"Omicron;",v:"\xCE\x9F"},{k:"Oopf;",v:"\xF0\x9D\x95\x86"},{k:"OpenCurlyDoubleQuote;",v:"\xE2\x80\x9C"},{k:"OpenCurlyQuote;",v:"\xE2\x80\x98"},{k:"Or;",v:"\xE2\xA9\x94"},{k:"Oscr;",v:"\xF0\x9D\x92\xAA"},{k:"Oslash;",v:"\xC3\x98"},{k:"Otilde;",v:"\xC3\x95"},{k:"Otimes;",v:"\xE2\xA8\xB7"},{k:"Ouml;",v:"\xC3\x96"},{k:"OverBar;",v:"\xE2\x80\xBE"},{k:"OverBrace;",v:"\xE2\x8F\x9E"},{k:"OverBracket;",v:"\xE2\x8E\xB4"},{k:"OverParenthesis;",v:"\xE2\x8F\x9C"},{k:"PartialD;",v:"\xE2\x88\x82"},{k:"Pcy;",v:"\xD0\x9F"},{k:"Pfr;",v:"\xF0\x9D\x94\x93"},{k:"Phi;",v:"\xCE\xA6"},{k:"Pi;",v:"\xCE\xA0"},{k:"PlusMinus;",v:"\xC2\xB1"},{k:"Poincareplane;",v:"\xE2\x84\x8C"},{k:"Popf;",v:"\xE2\x84\x99"},{k:"Pr;",v:"\xE2\xAA\xBB"},{k:"Precedes;",v:"\xE2\x89\xBA"},{k:"PrecedesEqual;",v:"\xE2\xAA\xAF"},{k:"PrecedesSlantEqual;",v:"\xE2\x89\xBC"},{k:"PrecedesTilde;",v:"\xE2\x89\xBE"},{k:"Prime;",v:"\xE2\x80\xB3"},{k:"Product;",v:"\xE2\x88\x8F"},{k:"Proportion;",v:"\xE2\x88\xB7"},{k:"Proportional;",v:"\xE2\x88\x9D"},{k:"Pscr;",v:"\xF0\x9D\x92\xAB"},{k:"Psi;",v:"\xCE\xA8"},{k:"QUOT;",v:"\""},{k:"Qfr;",v:"\xF0\x9D\x94\x94"},{k:"Qopf;",v:"\xE2\x84\x9A"},{k:"Qscr;",v:"\xF0\x9D\x92\xAC"},{k:"RBarr;",v:"\xE2\xA4\x90"},{k:"REG;",v:"\xC2\xAE"},{k:"Racute;",v:"\xC5\x94"},{k:"Rang;",v:"\xE2\x9F\xAB"},{k:"Rarr;",v:"\xE2\x86\xA0"},{k:"Rarrtl;",v:"\xE2\xA4\x96"},{k:"Rcaron;",v:"\xC5\x98"},{k:"Rcedil;",v:"\xC5\x96"},{k:"Rcy;",v:"\xD0\xA0"},{k:"Re;",v:"\xE2\x84\x9C"},{k:"ReverseElement;",v:"\xE2\x88\x8B"},{k:"ReverseEquilibrium;",v:"\xE2\x87\x8B"},{k:"ReverseUpEquilibrium;",v:"\xE2\xA5\xAF"},{k:"Rfr;",v:"\xE2\x84\x9C"},{k:"Rho;",v:"\xCE\xA1"},{k:"RightAngleBracket;",v:"\xE2\x9F\xA9"},{k:"RightArrow;",v:"\xE2\x86\x92"},{k:"RightArrowBar;",v:"\xE2\x87\xA5"},{k:"RightArrowLeftArrow;",v:"\xE2\x87\x84"},{k:"RightCeiling;",v:"\xE2\x8C\x89"},{k:"RightDoubleBracket;",v:"\xE2\x9F\xA7"},{k:"RightDownTeeVector;",v:"\xE2\xA5\x9D"},{k:"RightDownVector;",v:"\xE2\x87\x82"},{k:"RightDownVectorBar;",v:"\xE2\xA5\x95"},{k:"RightFloor;",v:"\xE2\x8C\x8B"},{k:"RightTee;",v:"\xE2\x8A\xA2"},{k:"RightTeeArrow;",v:"\xE2\x86\xA6"},{k:"RightTeeVector;",v:"\xE2\xA5\x9B"},{k:"RightTriangle;",v:"\xE2\x8A\xB3"},{k:"RightTriangleBar;",v:"\xE2\xA7\x90"},{k:"RightTriangleEqual;",v:"\xE2\x8A\xB5"},{k:"RightUpDownVector;",v:"\xE2\xA5\x8F"},{k:"RightUpTeeVector;",v:"\xE2\xA5\x9C"},{k:"RightUpVector;",v:"\xE2\x86\xBE"},{k:"RightUpVectorBar;",v:"\xE2\xA5\x94"},{k:"RightVector;",v:"\xE2\x87\x80"},{k:"RightVectorBar;",v:"\xE2\xA5\x93"},{k:"Rightarrow;",v:"\xE2\x87\x92"},{k:"Ropf;",v:"\xE2\x84\x9D"},{k:"RoundImplies;",v:"\xE2\xA5\xB0"},{k:"Rrightarrow;",v:"\xE2\x87\x9B"},{k:"Rscr;",v:"\xE2\x84\x9B"},{k:"Rsh;",v:"\xE2\x86\xB1"},{k:"RuleDelayed;",v:"\xE2\xA7\xB4"},{k:"SHCHcy;",v:"\xD0\xA9"},{k:"SHcy;",v:"\xD0\xA8"},{k:"SOFTcy;",v:"\xD0\xAC"},{k:"Sacute;",v:"\xC5\x9A"},{k:"Sc;",v:"\xE2\xAA\xBC"},{k:"Scaron;",v:"\xC5\xA0"},{k:"Scedil;",v:"\xC5\x9E"},{k:"Scirc;",v:"\xC5\x9C"},{k:"Scy;",v:"\xD0\xA1"},{k:"Sfr;",v:"\xF0\x9D\x94\x96"},{k:"ShortDownArrow;",v:"\xE2\x86\x93"},{k:"ShortLeftArrow;",v:"\xE2\x86\x90"},{k:"ShortRightArrow;",v:"\xE2\x86\x92"},{k:"ShortUpArrow;",v:"\xE2\x86\x91"},{k:"Sigma;",v:"\xCE\xA3"},{k:"SmallCircle;",v:"\xE2\x88\x98"},{k:"Sopf;",v:"\xF0\x9D\x95\x8A"},{k:"Sqrt;",v:"\xE2\x88\x9A"},{k:"Square;",v:"\xE2\x96\xA1"},{k:"SquareIntersection;",v:"\xE2\x8A\x93"},{k:"SquareSubset;",v:"\xE2\x8A\x8F"},{k:"SquareSubsetEqual;",v:"\xE2\x8A\x91"},{k:"SquareSuperset;",v:"\xE2\x8A\x90"},{k:"SquareSupersetEqual;",v:"\xE2\x8A\x92"},{k:"SquareUnion;",v:"\xE2\x8A\x94"},{k:"Sscr;",v:"\xF0\x9D\x92\xAE"},{k:"Star;",v:"\xE2\x8B\x86"},{k:"Sub;",v:"\xE2\x8B\x90"},{k:"Subset;",v:"\xE2\x8B\x90"},{k:"SubsetEqual;",v:"\xE2\x8A\x86"},{k:"Succeeds;",v:"\xE2\x89\xBB"},{k:"SucceedsEqual;",v:"\xE2\xAA\xB0"},{k:"SucceedsSlantEqual;",v:"\xE2\x89\xBD"},{k:"SucceedsTilde;",v:"\xE2\x89\xBF"},{k:"SuchThat;",v:"\xE2\x88\x8B"},{k:"Sum;",v:"\xE2\x88\x91"},{k:"Sup;",v:"\xE2\x8B\x91"},{k:"Superset;",v:"\xE2\x8A\x83"},{k:"SupersetEqual;",v:"\xE2\x8A\x87"},{k:"Supset;",v:"\xE2\x8B\x91"},{k:"THORN;",v:"\xC3\x9E"},{k:"TRADE;",v:"\xE2\x84\xA2"},{k:"TSHcy;",v:"\xD0\x8B"},{k:"TScy;",v:"\xD0\xA6"},{k:"Tab;",v:"\t"},{k:"Tau;",v:"\xCE\xA4"},{k:"Tcaron;",v:"\xC5\xA4"},{k:"Tcedil;",v:"\xC5\xA2"},{k:"Tcy;",v:"\xD0\xA2"},{k:"Tfr;",v:"\xF0\x9D\x94\x97"},{k:"Therefore;",v:"\xE2\x88\xB4"},{k:"Theta;",v:"\xCE\x98"},{k:"ThickSpace;",v:"\xE2\x81\x9F\xE2\x80\x8A"},{k:"ThinSpace;",v:"\xE2\x80\x89"},{k:"Tilde;",v:"\xE2\x88\xBC"},{k:"TildeEqual;",v:"\xE2\x89\x83"},{k:"TildeFullEqual;",v:"\xE2\x89\x85"},{k:"TildeTilde;",v:"\xE2\x89\x88"},{k:"Topf;",v:"\xF0\x9D\x95\x8B"},{k:"TripleDot;",v:"\xE2\x83\x9B"},{k:"Tscr;",v:"\xF0\x9D\x92\xAF"},{k:"Tstrok;",v:"\xC5\xA6"},{k:"Uacute;",v:"\xC3\x9A"},{k:"Uarr;",v:"\xE2\x86\x9F"},{k:"Uarrocir;",v:"\xE2\xA5\x89"},{k:"Ubrcy;",v:"\xD0\x8E"},{k:"Ubreve;",v:"\xC5\xAC"},{k:"Ucirc;",v:"\xC3\x9B"},{k:"Ucy;",v:"\xD0\xA3"},{k:"Udblac;",v:"\xC5\xB0"},{k:"Ufr;",v:"\xF0\x9D\x94\x98"},{k:"Ugrave;",v:"\xC3\x99"},{k:"Umacr;",v:"\xC5\xAA"},{k:"UnderBar;",v:"_"},{k:"UnderBrace;",v:"\xE2\x8F\x9F"},{k:"UnderBracket;",v:"\xE2\x8E\xB5"},{k:"UnderParenthesis;",v:"\xE2\x8F\x9D"},{k:"Union;",v:"\xE2\x8B\x83"},{k:"UnionPlus;",v:"\xE2\x8A\x8E"},{k:"Uogon;",v:"\xC5\xB2"},{k:"Uopf;",v:"\xF0\x9D\x95\x8C"},{k:"UpArrow;",v:"\xE2\x86\x91"},{k:"UpArrowBar;",v:"\xE2\xA4\x92"},{k:"UpArrowDownArrow;",v:"\xE2\x87\x85"},{k:"UpDownArrow;",v:"\xE2\x86\x95"},{k:"UpEquilibrium;",v:"\xE2\xA5\xAE"},{k:"UpTee;",v:"\xE2\x8A\xA5"},{k:"UpTeeArrow;",v:"\xE2\x86\xA5"},{k:"Uparrow;",v:"\xE2\x87\x91"},{k:"Updownarrow;",v:"\xE2\x87\x95"},{k:"UpperLeftArrow;",v:"\xE2\x86\x96"},{k:"UpperRightArrow;",v:"\xE2\x86\x97"},{k:"Upsi;",v:"\xCF\x92"},{k:"Upsilon;",v:"\xCE\xA5"},{k:"Uring;",v:"\xC5\xAE"},{k:"Uscr;",v:"\xF0\x9D\x92\xB0"},{k:"Utilde;",v:"\xC5\xA8"},{k:"Uuml;",v:"\xC3\x9C"},{k:"VDash;",v:"\xE2\x8A\xAB"},{k:"Vbar;",v:"\xE2\xAB\xAB"},{k:"Vcy;",v:"\xD0\x92"},{k:"Vdash;",v:"\xE2\x8A\xA9"},{k:"Vdashl;",v:"\xE2\xAB\xA6"},{k:"Vee;",v:"\xE2\x8B\x81"},{k:"Verbar;",v:"\xE2\x80\x96"},{k:"Vert;",v:"\xE2\x80\x96"},{k:"VerticalBar;",v:"\xE2\x88\xA3"},{k:"VerticalLine;",v:"|"},{k:"VerticalSeparator;",v:"\xE2\x9D\x98"},{k:"VerticalTilde;",v:"\xE2\x89\x80"},{k:"VeryThinSpace;",v:"\xE2\x80\x8A"},{k:"Vfr;",v:"\xF0\x9D\x94\x99"},{k:"Vopf;",v:"\xF0\x9D\x95\x8D"},{k:"Vscr;",v:"\xF0\x9D\x92\xB1"},{k:"Vvdash;",v:"\xE2\x8A\xAA"},{k:"Wcirc;",v:"\xC5\xB4"},{k:"Wedge;",v:"\xE2\x8B\x80"},{k:"Wfr;",v:"\xF0\x9D\x94\x9A"},{k:"Wopf;",v:"\xF0\x9D\x95\x8E"},{k:"Wscr;",v:"\xF0\x9D\x92\xB2"},{k:"Xfr;",v:"\xF0\x9D\x94\x9B"},{k:"Xi;",v:"\xCE\x9E"},{k:"Xopf;",v:"\xF0\x9D\x95\x8F"},{k:"Xscr;",v:"\xF0\x9D\x92\xB3"},{k:"YAcy;",v:"\xD0\xAF"},{k:"YIcy;",v:"\xD0\x87"},{k:"YUcy;",v:"\xD0\xAE"},{k:"Yacute;",v:"\xC3\x9D"},{k:"Ycirc;",v:"\xC5\xB6"},{k:"Ycy;",v:"\xD0\xAB"},{k:"Yfr;",v:"\xF0\x9D\x94\x9C"},{k:"Yopf;",v:"\xF0\x9D\x95\x90"},{k:"Yscr;",v:"\xF0\x9D\x92\xB4"},{k:"Yuml;",v:"\xC5\xB8"},{k:"ZHcy;",v:"\xD0\x96"},{k:"Zacute;",v:"\xC5\xB9"},{k:"Zcaron;",v:"\xC5\xBD"},{k:"Zcy;",v:"\xD0\x97"},{k:"Zdot;",v:"\xC5\xBB"},{k:"ZeroWidthSpace;",v:"\xE2\x80\x8B"},{k:"Zeta;",v:"\xCE\x96"},{k:"Zfr;",v:"\xE2\x84\xA8"},{k:"Zopf;",v:"\xE2\x84\xA4"},{k:"Zscr;",v:"\xF0\x9D\x92\xB5"},{k:"aacute;",v:"\xC3\xA1"},{k:"abreve;",v:"\xC4\x83"},{k:"ac;",v:"\xE2\x88\xBE"},{k:"acE;",v:"\xE2\x88\xBE\xCC\xB3"},{k:"acd;",v:"\xE2\x88\xBF"},{k:"acirc;",v:"\xC3\xA2"},{k:"acute;",v:"\xC2\xB4"},{k:"acy;",v:"\xD0\xB0"},{k:"aelig;",v:"\xC3\xA6"},{k:"af;",v:"\xE2\x81\xA1"},{k:"afr;",v:"\xF0\x9D\x94\x9E"},{k:"agrave;",v:"\xC3\xA0"},{k:"alefsym;",v:"\xE2\x84\xB5"},{k:"aleph;",v:"\xE2\x84\xB5"},{k:"alpha;",v:"\xCE\xB1"},{k:"amacr;",v:"\xC4\x81"},{k:"amalg;",v:"\xE2\xA8\xBF"},{k:"amp;",v:"&"},{k:"and;",v:"\xE2\x88\xA7"},{k:"andand;",v:"\xE2\xA9\x95"},{k:"andd;",v:"\xE2\xA9\x9C"},{k:"andslope;",v:"\xE2\xA9\x98"},{k:"andv;",v:"\xE2\xA9\x9A"},{k:"ang;",v:"\xE2\x88\xA0"},{k:"ange;",v:"\xE2\xA6\xA4"},{k:"angle;",v:"\xE2\x88\xA0"},{k:"angmsd;",v:"\xE2\x88\xA1"},{k:"angmsdaa;",v:"\xE2\xA6\xA8"},{k:"angmsdab;",v:"\xE2\xA6\xA9"},{k:"angmsdac;",v:"\xE2\xA6\xAA"},{k:"angmsdad;",v:"\xE2\xA6\xAB"},{k:"angmsdae;",v:"\xE2\xA6\xAC"},{k:"angmsdaf;",v:"\xE2\xA6\xAD"},{k:"angmsdag;",v:"\xE2\xA6\xAE"},{k:"angmsdah;",v:"\xE2\xA6\xAF"},{k:"angrt;",v:"\xE2\x88\x9F"},{k:"angrtvb;",v:"\xE2\x8A\xBE"},{k:"angrtvbd;",v:"\xE2\xA6\x9D"},{k:"angsph;",v:"\xE2\x88\xA2"},{k:"angst;",v:"\xC3\x85"},{k:"angzarr;",v:"\xE2\x8D\xBC"},{k:"aogon;",v:"\xC4\x85"},{k:"aopf;",v:"\xF0\x9D\x95\x92"},{k:"ap;",v:"\xE2\x89\x88"},{k:"apE;",v:"\xE2\xA9\xB0"},{k:"apacir;",v:"\xE2\xA9\xAF"},{k:"ape;",v:"\xE2\x89\x8A"},{k:"apid;",v:"\xE2\x89\x8B"},{k:"apos;",v:"'"},{k:"approx;",v:"\xE2\x89\x88"},{k:"approxeq;",v:"\xE2\x89\x8A"},{k:"aring;",v:"\xC3\xA5"},{k:"ascr;",v:"\xF0\x9D\x92\xB6"},{k:"ast;",v:"*"},{k:"asymp;",v:"\xE2\x89\x88"},{k:"asympeq;",v:"\xE2\x89\x8D"},{k:"atilde;",v:"\xC3\xA3"},{k:"auml;",v:"\xC3\xA4"},{k:"awconint;",v:"\xE2\x88\xB3"},{k:"awint;",v:"\xE2\xA8\x91"},{k:"bNot;",v:"\xE2\xAB\xAD"},{k:"backcong;",v:"\xE2\x89\x8C"},{k:"backepsilon;",v:"\xCF\xB6"},{k:"backprime;",v:"\xE2\x80\xB5"},{k:"backsim;",v:"\xE2\x88\xBD"},{k:"backsimeq;",v:"\xE2\x8B\x8D"},{k:"barvee;",v:"\xE2\x8A\xBD"},{k:"barwed;",v:"\xE2\x8C\x85"},{k:"barwedge;",v:"\xE2\x8C\x85"},{k:"bbrk;",v:"\xE2\x8E\xB5"},{k:"bbrktbrk;",v:"\xE2\x8E\xB6"},{k:"bcong;",v:"\xE2\x89\x8C"},{k:"bcy;",v:"\xD0\xB1"},{k:"bdquo;",v:"\xE2\x80\x9E"},{k:"becaus;",v:"\xE2\x88\xB5"},{k:"because;",v:"\xE2\x88\xB5"},{k:"bemptyv;",v:"\xE2\xA6\xB0"},{k:"bepsi;",v:"\xCF\xB6"},{k:"bernou;",v:"\xE2\x84\xAC"},{k:"beta;",v:"\xCE\xB2"},{k:"beth;",v:"\xE2\x84\xB6"},{k:"between;",v:"\xE2\x89\xAC"},{k:"bfr;",v:"\xF0\x9D\x94\x9F"},{k:"bigcap;",v:"\xE2\x8B\x82"},{k:"bigcirc;",v:"\xE2\x97\xAF"},{k:"bigcup;",v:"\xE2\x8B\x83"},{k:"bigodot;",v:"\xE2\xA8\x80"},{k:"bigoplus;",v:"\xE2\xA8\x81"},{k:"bigotimes;",v:"\xE2\xA8\x82"},{k:"bigsqcup;",v:"\xE2\xA8\x86"},{k:"bigstar;",v:"\xE2\x98\x85"},{k:"bigtriangledown;",v:"\xE2\x96\xBD"},{k:"bigtriangleup;",v:"\xE2\x96\xB3"},{k:"biguplus;",v:"\xE2\xA8\x84"},{k:"bigvee;",v:"\xE2\x8B\x81"},{k:"bigwedge;",v:"\xE2\x8B\x80"},{k:"bkarow;",v:"\xE2\xA4\x8D"},{k:"blacklozenge;",v:"\xE2\xA7\xAB"},{k:"blacksquare;",v:"\xE2\x96\xAA"},{k:"blacktriangle;",v:"\xE2\x96\xB4"},{k:"blacktriangledown;",v:"\xE2\x96\xBE"},{k:"blacktriangleleft;",v:"\xE2\x97\x82"},{k:"blacktriangleright;",v:"\xE2\x96\xB8"},{k:"blank;",v:"\xE2\x90\xA3"},{k:"blk12;",v:"\xE2\x96\x92"},{k:"blk14;",v:"\xE2\x96\x91"},{k:"blk34;",v:"\xE2\x96\x93"},{k:"block;",v:"\xE2\x96\x88"},{k:"bne;",v:"=\xE2\x83\xA5"},{k:"bnequiv;",v:"\xE2\x89\xA1\xE2\x83\xA5"},{k:"bnot;",v:"\xE2\x8C\x90"},{k:"bopf;",v:"\xF0\x9D\x95\x93"},{k:"bot;",v:"\xE2\x8A\xA5"},{k:"bottom;",v:"\xE2\x8A\xA5"},{k:"bowtie;",v:"\xE2\x8B\x88"},{k:"boxDL;",v:"\xE2\x95\x97"},{k:"boxDR;",v:"\xE2\x95\x94"},{k:"boxDl;",v:"\xE2\x95\x96"},{k:"boxDr;",v:"\xE2\x95\x93"},{k:"boxH;",v:"\xE2\x95\x90"},{k:"boxHD;",v:"\xE2\x95\xA6"},{k:"boxHU;",v:"\xE2\x95\xA9"},{k:"boxHd;",v:"\xE2\x95\xA4"},{k:"boxHu;",v:"\xE2\x95\xA7"},{k:"boxUL;",v:"\xE2\x95\x9D"},{k:"boxUR;",v:"\xE2\x95\x9A"},{k:"boxUl;",v:"\xE2\x95\x9C"},{k:"boxUr;",v:"\xE2\x95\x99"},{k:"boxV;",v:"\xE2\x95\x91"},{k:"boxVH;",v:"\xE2\x95\xAC"},{k:"boxVL;",v:"\xE2\x95\xA3"},{k:"boxVR;",v:"\xE2\x95\xA0"},{k:"boxVh;",v:"\xE2\x95\xAB"},{k:"boxVl;",v:"\xE2\x95\xA2"},{k:"boxVr;",v:"\xE2\x95\x9F"},{k:"boxbox;",v:"\xE2\xA7\x89"},{k:"boxdL;",v:"\xE2\x95\x95"},{k:"boxdR;",v:"\xE2\x95\x92"},{k:"boxdl;",v:"\xE2\x94\x90"},{k:"boxdr;",v:"\xE2\x94\x8C"},{k:"boxh;",v:"\xE2\x94\x80"},{k:"boxhD;",v:"\xE2\x95\xA5"},{k:"boxhU;",v:"\xE2\x95\xA8"},{k:"boxhd;",v:"\xE2\x94\xAC"},{k:"boxhu;",v:"\xE2\x94\xB4"},{k:"boxminus;",v:"\xE2\x8A\x9F"},{k:"boxplus;",v:"\xE2\x8A\x9E"},{k:"boxtimes;",v:"\xE2\x8A\xA0"},{k:"boxuL;",v:"\xE2\x95\x9B"},{k:"boxuR;",v:"\xE2\x95\x98"},{k:"boxul;",v:"\xE2\x94\x98"},{k:"boxur;",v:"\xE2\x94\x94"},{k:"boxv;",v:"\xE2\x94\x82"},{k:"boxvH;",v:"\xE2\x95\xAA"},{k:"boxvL;",v:"\xE2\x95\xA1"},{k:"boxvR;",v:"\xE2\x95\x9E"},{k:"boxvh;",v:"\xE2\x94\xBC"},{k:"boxvl;",v:"\xE2\x94\xA4"},{k:"boxvr;",v:"\xE2\x94\x9C"},{k:"bprime;",v:"\xE2\x80\xB5"},{k:"breve;",v:"\xCB\x98"},{k:"brvbar;",v:"\xC2\xA6"},{k:"bscr;",v:"\xF0\x9D\x92\xB7"},{k:"bsemi;",v:"\xE2\x81\x8F"},{k:"bsim;",v:"\xE2\x88\xBD"},{k:"bsime;",v:"\xE2\x8B\x8D"},{k:"bsol;",v:"\\"},{k:"bsolb;",v:"\xE2\xA7\x85"},{k:"bsolhsub;",v:"\xE2\x9F\x88"},{k:"bull;",v:"\xE2\x80\xA2"},{k:"bullet;",v:"\xE2\x80\xA2"},{k:"bump;",v:"\xE2\x89\x8E"},{k:"bumpE;",v:"\xE2\xAA\xAE"},{k:"bumpe;",v:"\xE2\x89\x8F"},{k:"bumpeq;",v:"\xE2\x89\x8F"},{k:"cacute;",v:"\xC4\x87"},{k:"cap;",v:"\xE2\x88\xA9"},{k:"capand;",v:"\xE2\xA9\x84"},{k:"capbrcup;",v:"\xE2\xA9\x89"},{k:"capcap;",v:"\xE2\xA9\x8B"},{k:"capcup;",v:"\xE2\xA9\x87"},{k:"capdot;",v:"\xE2\xA9\x80"},{k:"caps;",v:"\xE2\x88\xA9\xEF\xB8\x80"},{k:"caret;",v:"\xE2\x81\x81"},{k:"caron;",v:"\xCB\x87"},{k:"ccaps;",v:"\xE2\xA9\x8D"},{k:"ccaron;",v:"\xC4\x8D"},{k:"ccedil;",v:"\xC3\xA7"},{k:"ccirc;",v:"\xC4\x89"},{k:"ccups;",v:"\xE2\xA9\x8C"},{k:"ccupssm;",v:"\xE2\xA9\x90"},{k:"cdot;",v:"\xC4\x8B"},{k:"cedil;",v:"\xC2\xB8"},{k:"cemptyv;",v:"\xE2\xA6\xB2"},{k:"cent;",v:"\xC2\xA2"},{k:"centerdot;",v:"\xC2\xB7"},{k:"cfr;",v:"\xF0\x9D\x94\xA0"},{k:"chcy;",v:"\xD1\x87"},{k:"check;",v:"\xE2\x9C\x93"},{k:"checkmark;",v:"\xE2\x9C\x93"},{k:"chi;",v:"\xCF\x87"},{k:"cir;",v:"\xE2\x97\x8B"},{k:"cirE;",v:"\xE2\xA7\x83"},{k:"circ;",v:"\xCB\x86"},{k:"circeq;",v:"\xE2\x89\x97"},{k:"circlearrowleft;",v:"\xE2\x86\xBA"},{k:"circlearrowright;",v:"\xE2\x86\xBB"},{k:"circledR;",v:"\xC2\xAE"},{k:"circledS;",v:"\xE2\x93\x88"},{k:"circledast;",v:"\xE2\x8A\x9B"},{k:"circledcirc;",v:"\xE2\x8A\x9A"},{k:"circleddash;",v:"\xE2\x8A\x9D"},{k:"cire;",v:"\xE2\x89\x97"},{k:"cirfnint;",v:"\xE2\xA8\x90"},{k:"cirmid;",v:"\xE2\xAB\xAF"},{k:"cirscir;",v:"\xE2\xA7\x82"},{k:"clubs;",v:"\xE2\x99\xA3"},{k:"clubsuit;",v:"\xE2\x99\xA3"},{k:"colon;",v:":"},{k:"colone;",v:"\xE2\x89\x94"},{k:"coloneq;",v:"\xE2\x89\x94"},{k:"comma;",v:","},{k:"commat;",v:"@"},{k:"comp;",v:"\xE2\x88\x81"},{k:"compfn;",v:"\xE2\x88\x98"},{k:"complement;",v:"\xE2\x88\x81"},{k:"complexes;",v:"\xE2\x84\x82"},{k:"cong;",v:"\xE2\x89\x85"},{k:"congdot;",v:"\xE2\xA9\xAD"},{k:"conint;",v:"\xE2\x88\xAE"},{k:"copf;",v:"\xF0\x9D\x95\x94"},{k:"coprod;",v:"\xE2\x88\x90"},{k:"copy;",v:"\xC2\xA9"},{k:"copysr;",v:"\xE2\x84\x97"},{k:"crarr;",v:"\xE2\x86\xB5"},{k:"cross;",v:"\xE2\x9C\x97"},{k:"cscr;",v:"\xF0\x9D\x92\xB8"},{k:"csub;",v:"\xE2\xAB\x8F"},{k:"csube;",v:"\xE2\xAB\x91"},{k:"csup;",v:"\xE2\xAB\x90"},{k:"csupe;",v:"\xE2\xAB\x92"},{k:"ctdot;",v:"\xE2\x8B\xAF"},{k:"cudarrl;",v:"\xE2\xA4\xB8"},{k:"cudarrr;",v:"\xE2\xA4\xB5"},{k:"cuepr;",v:"\xE2\x8B\x9E"},{k:"cuesc;",v:"\xE2\x8B\x9F"},{k:"cularr;",v:"\xE2\x86\xB6"},{k:"cularrp;",v:"\xE2\xA4\xBD"},{k:"cup;",v:"\xE2\x88\xAA"},{k:"cupbrcap;",v:"\xE2\xA9\x88"},{k:"cupcap;",v:"\xE2\xA9\x86"},{k:"cupcup;",v:"\xE2\xA9\x8A"},{k:"cupdot;",v:"\xE2\x8A\x8D"},{k:"cupor;",v:"\xE2\xA9\x85"},{k:"cups;",v:"\xE2\x88\xAA\xEF\xB8\x80"},{k:"curarr;",v:"\xE2\x86\xB7"},{k:"curarrm;",v:"\xE2\xA4\xBC"},{k:"curlyeqprec;",v:"\xE2\x8B\x9E"},{k:"curlyeqsucc;",v:"\xE2\x8B\x9F"},{k:"curlyvee;",v:"\xE2\x8B\x8E"},{k:"curlywedge;",v:"\xE2\x8B\x8F"},{k:"curren;",v:"\xC2\xA4"},{k:"curvearrowleft;",v:"\xE2\x86\xB6"},{k:"curvearrowright;",v:"\xE2\x86\xB7"},{k:"cuvee;",v:"\xE2\x8B\x8E"},{k:"cuwed;",v:"\xE2\x8B\x8F"},{k:"cwconint;",v:"\xE2\x88\xB2"},{k:"cwint;",v:"\xE2\x88\xB1"},{k:"cylcty;",v:"\xE2\x8C\xAD"},{k:"dArr;",v:"\xE2\x87\x93"},{k:"dHar;",v:"\xE2\xA5\xA5"},{k:"dagger;",v:"\xE2\x80\xA0"},{k:"daleth;",v:"\xE2\x84\xB8"},{k:"darr;",v:"\xE2\x86\x93"},{k:"dash;",v:"\xE2\x80\x90"},{k:"dashv;",v:"\xE2\x8A\xA3"},{k:"dbkarow;",v:"\xE2\xA4\x8F"},{k:"dblac;",v:"\xCB\x9D"},{k:"dcaron;",v:"\xC4\x8F"},{k:"dcy;",v:"\xD0\xB4"},{k:"dd;",v:"\xE2\x85\x86"},{k:"ddagger;",v:"\xE2\x80\xA1"},{k:"ddarr;",v:"\xE2\x87\x8A"},{k:"ddotseq;",v:"\xE2\xA9\xB7"},{k:"deg;",v:"\xC2\xB0"},{k:"delta;",v:"\xCE\xB4"},{k:"demptyv;",v:"\xE2\xA6\xB1"},{k:"dfisht;",v:"\xE2\xA5\xBF"},{k:"dfr;",v:"\xF0\x9D\x94\xA1"},{k:"dharl;",v:"\xE2\x87\x83"},{k:"dharr;",v:"\xE2\x87\x82"},{k:"diam;",v:"\xE2\x8B\x84"},{k:"diamond;",v:"\xE2\x8B\x84"},{k:"diamondsuit;",v:"\xE2\x99\xA6"},{k:"diams;",v:"\xE2\x99\xA6"},{k:"die;",v:"\xC2\xA8"},{k:"digamma;",v:"\xCF\x9D"},{k:"disin;",v:"\xE2\x8B\xB2"},{k:"div;",v:"\xC3\xB7"},{k:"divide;",v:"\xC3\xB7"},{k:"divideontimes;",v:"\xE2\x8B\x87"},{k:"divonx;",v:"\xE2\x8B\x87"},{k:"djcy;",v:"\xD1\x92"},{k:"dlcorn;",v:"\xE2\x8C\x9E"},{k:"dlcrop;",v:"\xE2\x8C\x8D"},{k:"dollar;",v:"$"},{k:"dopf;",v:"\xF0\x9D\x95\x95"},{k:"dot;",v:"\xCB\x99"},{k:"doteq;",v:"\xE2\x89\x90"},{k:"doteqdot;",v:"\xE2\x89\x91"},{k:"dotminus;",v:"\xE2\x88\xB8"},{k:"dotplus;",v:"\xE2\x88\x94"},{k:"dotsquare;",v:"\xE2\x8A\xA1"},{k:"doublebarwedge;",v:"\xE2\x8C\x86"},{k:"downarrow;",v:"\xE2\x86\x93"},{k:"downdownarrows;",v:"\xE2\x87\x8A"},{k:"downharpoonleft;",v:"\xE2\x87\x83"},{k:"downharpoonright;",v:"\xE2\x87\x82"},{k:"drbkarow;",v:"\xE2\xA4\x90"},{k:"drcorn;",v:"\xE2\x8C\x9F"},{k:"drcrop;",v:"\xE2\x8C\x8C"},{k:"dscr;",v:"\xF0\x9D\x92\xB9"},{k:"dscy;",v:"\xD1\x95"},{k:"dsol;",v:"\xE2\xA7\xB6"},{k:"dstrok;",v:"\xC4\x91"},{k:"dtdot;",v:"\xE2\x8B\xB1"},{k:"dtri;",v:"\xE2\x96\xBF"},{k:"dtrif;",v:"\xE2\x96\xBE"},{k:"duarr;",v:"\xE2\x87\xB5"},{k:"duhar;",v:"\xE2\xA5\xAF"},{k:"dwangle;",v:"\xE2\xA6\xA6"},{k:"dzcy;",v:"\xD1\x9F"},{k:"dzigrarr;",v:"\xE2\x9F\xBF"},{k:"eDDot;",v:"\xE2\xA9\xB7"},{k:"eDot;",v:"\xE2\x89\x91"},{k:"eacute;",v:"\xC3\xA9"},{k:"easter;",v:"\xE2\xA9\xAE"},{k:"ecaron;",v:"\xC4\x9B"},{k:"ecir;",v:"\xE2\x89\x96"},{k:"ecirc;",v:"\xC3\xAA"},{k:"ecolon;",v:"\xE2\x89\x95"},{k:"ecy;",v:"\xD1\x8D"},{k:"edot;",v:"\xC4\x97"},{k:"ee;",v:"\xE2\x85\x87"},{k:"efDot;",v:"\xE2\x89\x92"},{k:"efr;",v:"\xF0\x9D\x94\xA2"},{k:"eg;",v:"\xE2\xAA\x9A"},{k:"egrave;",v:"\xC3\xA8"},{k:"egs;",v:"\xE2\xAA\x96"},{k:"egsdot;",v:"\xE2\xAA\x98"},{k:"el;",v:"\xE2\xAA\x99"},{k:"elinters;",v:"\xE2\x8F\xA7"},{k:"ell;",v:"\xE2\x84\x93"},{k:"els;",v:"\xE2\xAA\x95"},{k:"elsdot;",v:"\xE2\xAA\x97"},{k:"emacr;",v:"\xC4\x93"},{k:"empty;",v:"\xE2\x88\x85"},{k:"emptyset;",v:"\xE2\x88\x85"},{k:"emptyv;",v:"\xE2\x88\x85"},{k:"emsp;",v:"\xE2\x80\x83"},{k:"emsp13;",v:"\xE2\x80\x84"},{k:"emsp14;",v:"\xE2\x80\x85"},{k:"eng;",v:"\xC5\x8B"},{k:"ensp;",v:"\xE2\x80\x82"},{k:"eogon;",v:"\xC4\x99"},{k:"eopf;",v:"\xF0\x9D\x95\x96"},{k:"epar;",v:"\xE2\x8B\x95"},{k:"eparsl;",v:"\xE2\xA7\xA3"},{k:"eplus;",v:"\xE2\xA9\xB1"},{k:"epsi;",v:"\xCE\xB5"},{k:"epsilon;",v:"\xCE\xB5"},{k:"epsiv;",v:"\xCF\xB5"},{k:"eqcirc;",v:"\xE2\x89\x96"},{k:"eqcolon;",v:"\xE2\x89\x95"},{k:"eqsim;",v:"\xE2\x89\x82"},{k:"eqslantgtr;",v:"\xE2\xAA\x96"},{k:"eqslantless;",v:"\xE2\xAA\x95"},{k:"equals;",v:"="},{k:"equest;",v:"\xE2\x89\x9F"},{k:"equiv;",v:"\xE2\x89\xA1"},{k:"equivDD;",v:"\xE2\xA9\xB8"},{k:"eqvparsl;",v:"\xE2\xA7\xA5"},{k:"erDot;",v:"\xE2\x89\x93"},{k:"erarr;",v:"\xE2\xA5\xB1"},{k:"escr;",v:"\xE2\x84\xAF"},{k:"esdot;",v:"\xE2\x89\x90"},{k:"esim;",v:"\xE2\x89\x82"},{k:"eta;",v:"\xCE\xB7"},{k:"eth;",v:"\xC3\xB0"},{k:"euml;",v:"\xC3\xAB"},{k:"euro;",v:"\xE2\x82\xAC"},{k:"excl;",v:"!"},{k:"exist;",v:"\xE2\x88\x83"},{k:"expectation;",v:"\xE2\x84\xB0"},{k:"exponentiale;",v:"\xE2\x85\x87"},{k:"fallingdotseq;",v:"\xE2\x89\x92"},{k:"fcy;",v:"\xD1\x84"},{k:"female;",v:"\xE2\x99\x80"},{k:"ffilig;",v:"\xEF\xAC\x83"},{k:"fflig;",v:"\xEF\xAC\x80"},{k:"ffllig;",v:"\xEF\xAC\x84"},{k:"ffr;",v:"\xF0\x9D\x94\xA3"},{k:"filig;",v:"\xEF\xAC\x81"},{k:"fjlig;",v:"fj fj"},{k:"flat;",v:"\xE2\x99\xAD"},{k:"fllig;",v:"\xEF\xAC\x82"},{k:"fltns;",v:"\xE2\x96\xB1"},{k:"fnof;",v:"\xC6\x92"},{k:"fopf;",v:"\xF0\x9D\x95\x97"},{k:"forall;",v:"\xE2\x88\x80"},{k:"fork;",v:"\xE2\x8B\x94"},{k:"forkv;",v:"\xE2\xAB\x99"},{k:"fpartint;",v:"\xE2\xA8\x8D"},{k:"frac12;",v:"\xC2\xBD"},{k:"frac13;",v:"\xE2\x85\x93"},{k:"frac14;",v:"\xC2\xBC"},{k:"frac15;",v:"\xE2\x85\x95"},{k:"frac16;",v:"\xE2\x85\x99"},{k:"frac18;",v:"\xE2\x85\x9B"},{k:"frac23;",v:"\xE2\x85\x94"},{k:"frac25;",v:"\xE2\x85\x96"},{k:"frac34;",v:"\xC2\xBE"},{k:"frac35;",v:"\xE2\x85\x97"},{k:"frac38;",v:"\xE2\x85\x9C"},{k:"frac45;",v:"\xE2\x85\x98"},{k:"frac56;",v:"\xE2\x85\x9A"},{k:"frac58;",v:"\xE2\x85\x9D"},{k:"frac78;",v:"\xE2\x85\x9E"},{k:"frasl;",v:"\xE2\x81\x84"},{k:"frown;",v:"\xE2\x8C\xA2"},{k:"fscr;",v:"\xF0\x9D\x92\xBB"},{k:"gE;",v:"\xE2\x89\xA7"},{k:"gEl;",v:"\xE2\xAA\x8C"},{k:"gacute;",v:"\xC7\xB5"},{k:"gamma;",v:"\xCE\xB3"},{k:"gammad;",v:"\xCF\x9D"},{k:"gap;",v:"\xE2\xAA\x86"},{k:"gbreve;",v:"\xC4\x9F"},{k:"gcirc;",v:"\xC4\x9D"},{k:"gcy;",v:"\xD0\xB3"},{k:"gdot;",v:"\xC4\xA1"},{k:"ge;",v:"\xE2\x89\xA5"},{k:"gel;",v:"\xE2\x8B\x9B"},{k:"geq;",v:"\xE2\x89\xA5"},{k:"geqq;",v:"\xE2\x89\xA7"},{k:"geqslant;",v:"\xE2\xA9\xBE"},{k:"ges;",v:"\xE2\xA9\xBE"},{k:"gescc;",v:"\xE2\xAA\xA9"},{k:"gesdot;",v:"\xE2\xAA\x80"},{k:"gesdoto;",v:"\xE2\xAA\x82"},{k:"gesdotol;",v:"\xE2\xAA\x84"},{k:"gesl;",v:"\xE2\x8B\x9B\xEF\xB8\x80"},{k:"gesles;",v:"\xE2\xAA\x94"},{k:"gfr;",v:"\xF0\x9D\x94\xA4"},{k:"gg;",v:"\xE2\x89\xAB"},{k:"ggg;",v:"\xE2\x8B\x99"},{k:"gimel;",v:"\xE2\x84\xB7"},{k:"gjcy;",v:"\xD1\x93"},{k:"gl;",v:"\xE2\x89\xB7"},{k:"glE;",v:"\xE2\xAA\x92"},{k:"gla;",v:"\xE2\xAA\xA5"},{k:"glj;",v:"\xE2\xAA\xA4"},{k:"gnE;",v:"\xE2\x89\xA9"},{k:"gnap;",v:"\xE2\xAA\x8A"},{k:"gnapprox;",v:"\xE2\xAA\x8A"},{k:"gne;",v:"\xE2\xAA\x88"},{k:"gneq;",v:"\xE2\xAA\x88"},{k:"gneqq;",v:"\xE2\x89\xA9"},{k:"gnsim;",v:"\xE2\x8B\xA7"},{k:"gopf;",v:"\xF0\x9D\x95\x98"},{k:"grave;",v:"`"},{k:"gscr;",v:"\xE2\x84\x8A"},{k:"gsim;",v:"\xE2\x89\xB3"},{k:"gsime;",v:"\xE2\xAA\x8E"},{k:"gsiml;",v:"\xE2\xAA\x90"},{k:"gt;",v:">"},{k:"gtcc;",v:"\xE2\xAA\xA7"},{k:"gtcir;",v:"\xE2\xA9\xBA"},{k:"gtdot;",v:"\xE2\x8B\x97"},{k:"gtlPar;",v:"\xE2\xA6\x95"},{k:"gtquest;",v:"\xE2\xA9\xBC"},{k:"gtrapprox;",v:"\xE2\xAA\x86"},{k:"gtrarr;",v:"\xE2\xA5\xB8"},{k:"gtrdot;",v:"\xE2\x8B\x97"},{k:"gtreqless;",v:"\xE2\x8B\x9B"},{k:"gtreqqless;",v:"\xE2\xAA\x8C"},{k:"gtrless;",v:"\xE2\x89\xB7"},{k:"gtrsim;",v:"\xE2\x89\xB3"},{k:"gvertneqq;",v:"\xE2\x89\xA9\xEF\xB8\x80"},{k:"gvnE;",v:"\xE2\x89\xA9\xEF\xB8\x80"},{k:"hArr;",v:"\xE2\x87\x94"},{k:"hairsp;",v:"\xE2\x80\x8A"},{k:"half;",v:"\xC2\xBD"},{k:"hamilt;",v:"\xE2\x84\x8B"},{k:"hardcy;",v:"\xD1\x8A"},{k:"harr;",v:"\xE2\x86\x94"},{k:"harrcir;",v:"\xE2\xA5\x88"},{k:"harrw;",v:"\xE2\x86\xAD"},{k:"hbar;",v:"\xE2\x84\x8F"},{k:"hcirc;",v:"\xC4\xA5"},{k:"hearts;",v:"\xE2\x99\xA5"},{k:"heartsuit;",v:"\xE2\x99\xA5"},{k:"hellip;",v:"\xE2\x80\xA6"},{k:"hercon;",v:"\xE2\x8A\xB9"},{k:"hfr;",v:"\xF0\x9D\x94\xA5"},{k:"hksearow;",v:"\xE2\xA4\xA5"},{k:"hkswarow;",v:"\xE2\xA4\xA6"},{k:"hoarr;",v:"\xE2\x87\xBF"},{k:"homtht;",v:"\xE2\x88\xBB"},{k:"hookleftarrow;",v:"\xE2\x86\xA9"},{k:"hookrightarrow;",v:"\xE2\x86\xAA"},{k:"hopf;",v:"\xF0\x9D\x95\x99"},{k:"horbar;",v:"\xE2\x80\x95"},{k:"hscr;",v:"\xF0\x9D\x92\xBD"},{k:"hslash;",v:"\xE2\x84\x8F"},{k:"hstrok;",v:"\xC4\xA7"},{k:"hybull;",v:"\xE2\x81\x83"},{k:"hyphen;",v:"\xE2\x80\x90"},{k:"iacute;",v:"\xC3\xAD"},{k:"ic;",v:"\xE2\x81\xA3"},{k:"icirc;",v:"\xC3\xAE"},{k:"icy;",v:"\xD0\xB8"},{k:"iecy;",v:"\xD0\xB5"},{k:"iexcl;",v:"\xC2\xA1"},{k:"iff;",v:"\xE2\x87\x94"},{k:"ifr;",v:"\xF0\x9D\x94\xA6"},{k:"igrave;",v:"\xC3\xAC"},{k:"ii;",v:"\xE2\x85\x88"},{k:"iiiint;",v:"\xE2\xA8\x8C"},{k:"iiint;",v:"\xE2\x88\xAD"},{k:"iinfin;",v:"\xE2\xA7\x9C"},{k:"iiota;",v:"\xE2\x84\xA9"},{k:"ijlig;",v:"\xC4\xB3"},{k:"imacr;",v:"\xC4\xAB"},{k:"image;",v:"\xE2\x84\x91"},{k:"imagline;",v:"\xE2\x84\x90"},{k:"imagpart;",v:"\xE2\x84\x91"},{k:"imath;",v:"\xC4\xB1"},{k:"imof;",v:"\xE2\x8A\xB7"},{k:"imped;",v:"\xC6\xB5"},{k:"in;",v:"\xE2\x88\x88"},{k:"incare;",v:"\xE2\x84\x85"},{k:"infin;",v:"\xE2\x88\x9E"},{k:"infintie;",v:"\xE2\xA7\x9D"},{k:"inodot;",v:"\xC4\xB1"},{k:"int;",v:"\xE2\x88\xAB"},{k:"intcal;",v:"\xE2\x8A\xBA"},{k:"integers;",v:"\xE2\x84\xA4"},{k:"intercal;",v:"\xE2\x8A\xBA"},{k:"intlarhk;",v:"\xE2\xA8\x97"},{k:"intprod;",v:"\xE2\xA8\xBC"},{k:"iocy;",v:"\xD1\x91"},{k:"iogon;",v:"\xC4\xAF"},{k:"iopf;",v:"\xF0\x9D\x95\x9A"},{k:"iota;",v:"\xCE\xB9"},{k:"iprod;",v:"\xE2\xA8\xBC"},{k:"iquest;",v:"\xC2\xBF"},{k:"iscr;",v:"\xF0\x9D\x92\xBE"},{k:"isin;",v:"\xE2\x88\x88"},{k:"isinE;",v:"\xE2\x8B\xB9"},{k:"isindot;",v:"\xE2\x8B\xB5"},{k:"isins;",v:"\xE2\x8B\xB4"},{k:"isinsv;",v:"\xE2\x8B\xB3"},{k:"isinv;",v:"\xE2\x88\x88"},{k:"it;",v:"\xE2\x81\xA2"},{k:"itilde;",v:"\xC4\xA9"},{k:"iukcy;",v:"\xD1\x96"},{k:"iuml;",v:"\xC3\xAF"},{k:"jcirc;",v:"\xC4\xB5"},{k:"jcy;",v:"\xD0\xB9"},{k:"jfr;",v:"\xF0\x9D\x94\xA7"},{k:"jmath;",v:"\xC8\xB7"},{k:"jopf;",v:"\xF0\x9D\x95\x9B"},{k:"jscr;",v:"\xF0\x9D\x92\xBF"},{k:"jsercy;",v:"\xD1\x98"},{k:"jukcy;",v:"\xD1\x94"},{k:"kappa;",v:"\xCE\xBA"},{k:"kappav;",v:"\xCF\xB0"},{k:"kcedil;",v:"\xC4\xB7"},{k:"kcy;",v:"\xD0\xBA"},{k:"kfr;",v:"\xF0\x9D\x94\xA8"},{k:"kgreen;",v:"\xC4\xB8"},{k:"khcy;",v:"\xD1\x85"},{k:"kjcy;",v:"\xD1\x9C"},{k:"kopf;",v:"\xF0\x9D\x95\x9C"},{k:"kscr;",v:"\xF0\x9D\x93\x80"},{k:"lAarr;",v:"\xE2\x87\x9A"},{k:"lArr;",v:"\xE2\x87\x90"},{k:"lAtail;",v:"\xE2\xA4\x9B"},{k:"lBarr;",v:"\xE2\xA4\x8E"},{k:"lE;",v:"\xE2\x89\xA6"},{k:"lEg;",v:"\xE2\xAA\x8B"},{k:"lHar;",v:"\xE2\xA5\xA2"},{k:"lacute;",v:"\xC4\xBA"},{k:"laemptyv;",v:"\xE2\xA6\xB4"},{k:"lagran;",v:"\xE2\x84\x92"},{k:"lambda;",v:"\xCE\xBB"},{k:"lang;",v:"\xE2\x9F\xA8"},{k:"langd;",v:"\xE2\xA6\x91"},{k:"langle;",v:"\xE2\x9F\xA8"},{k:"lap;",v:"\xE2\xAA\x85"},{k:"laquo;",v:"\xC2\xAB"},{k:"larr;",v:"\xE2\x86\x90"},{k:"larrb;",v:"\xE2\x87\xA4"},{k:"larrbfs;",v:"\xE2\xA4\x9F"},{k:"larrfs;",v:"\xE2\xA4\x9D"},{k:"larrhk;",v:"\xE2\x86\xA9"},{k:"larrlp;",v:"\xE2\x86\xAB"},{k:"larrpl;",v:"\xE2\xA4\xB9"},{k:"larrsim;",v:"\xE2\xA5\xB3"},{k:"larrtl;",v:"\xE2\x86\xA2"},{k:"lat;",v:"\xE2\xAA\xAB"},{k:"latail;",v:"\xE2\xA4\x99"},{k:"late;",v:"\xE2\xAA\xAD"},{k:"lates;",v:"\xE2\xAA\xAD\xEF\xB8\x80"},{k:"lbarr;",v:"\xE2\xA4\x8C"},{k:"lbbrk;",v:"\xE2\x9D\xB2"},{k:"lbrace;",v:"{"},{k:"lbrack;",v:"["},{k:"lbrke;",v:"\xE2\xA6\x8B"},{k:"lbrksld;",v:"\xE2\xA6\x8F"},{k:"lbrkslu;",v:"\xE2\xA6\x8D"},{k:"lcaron;",v:"\xC4\xBE"},{k:"lcedil;",v:"\xC4\xBC"},{k:"lceil;",v:"\xE2\x8C\x88"},{k:"lcub;",v:"{"},{k:"lcy;",v:"\xD0\xBB"},{k:"ldca;",v:"\xE2\xA4\xB6"},{k:"ldquo;",v:"\xE2\x80\x9C"},{k:"ldquor;",v:"\xE2\x80\x9E"},{k:"ldrdhar;",v:"\xE2\xA5\xA7"},{k:"ldrushar;",v:"\xE2\xA5\x8B"},{k:"ldsh;",v:"\xE2\x86\xB2"},{k:"le;",v:"\xE2\x89\xA4"},{k:"leftarrow;",v:"\xE2\x86\x90"},{k:"leftarrowtail;",v:"\xE2\x86\xA2"},{k:"leftharpoondown;",v:"\xE2\x86\xBD"},{k:"leftharpoonup;",v:"\xE2\x86\xBC"},{k:"leftleftarrows;",v:"\xE2\x87\x87"},{k:"leftrightarrow;",v:"\xE2\x86\x94"},{k:"leftrightarrows;",v:"\xE2\x87\x86"},{k:"leftrightharpoons;",v:"\xE2\x87\x8B"},{k:"leftrightsquigarrow;",v:"\xE2\x86\xAD"},{k:"leftthreetimes;",v:"\xE2\x8B\x8B"},{k:"leg;",v:"\xE2\x8B\x9A"},{k:"leq;",v:"\xE2\x89\xA4"},{k:"leqq;",v:"\xE2\x89\xA6"},{k:"leqslant;",v:"\xE2\xA9\xBD"},{k:"les;",v:"\xE2\xA9\xBD"},{k:"lescc;",v:"\xE2\xAA\xA8"},{k:"lesdot;",v:"\xE2\xA9\xBF"},{k:"lesdoto;",v:"\xE2\xAA\x81"},{k:"lesdotor;",v:"\xE2\xAA\x83"},{k:"lesg;",v:"\xE2\x8B\x9A\xEF\xB8\x80"},{k:"lesges;",v:"\xE2\xAA\x93"},{k:"lessapprox;",v:"\xE2\xAA\x85"},{k:"lessdot;",v:"\xE2\x8B\x96"},{k:"lesseqgtr;",v:"\xE2\x8B\x9A"},{k:"lesseqqgtr;",v:"\xE2\xAA\x8B"},{k:"lessgtr;",v:"\xE2\x89\xB6"},{k:"lesssim;",v:"\xE2\x89\xB2"},{k:"lfisht;",v:"\xE2\xA5\xBC"},{k:"lfloor;",v:"\xE2\x8C\x8A"},{k:"lfr;",v:"\xF0\x9D\x94\xA9"},{k:"lg;",v:"\xE2\x89\xB6"},{k:"lgE;",v:"\xE2\xAA\x91"},{k:"lhard;",v:"\xE2\x86\xBD"},{k:"lharu;",v:"\xE2\x86\xBC"},{k:"lharul;",v:"\xE2\xA5\xAA"},{k:"lhblk;",v:"\xE2\x96\x84"},{k:"ljcy;",v:"\xD1\x99"},{k:"ll;",v:"\xE2\x89\xAA"},{k:"llarr;",v:"\xE2\x87\x87"},{k:"llcorner;",v:"\xE2\x8C\x9E"},{k:"llhard;",v:"\xE2\xA5\xAB"},{k:"lltri;",v:"\xE2\x97\xBA"},{k:"lmidot;",v:"\xC5\x80"},{k:"lmoust;",v:"\xE2\x8E\xB0"},{k:"lmoustache;",v:"\xE2\x8E\xB0"},{k:"lnE;",v:"\xE2\x89\xA8"},{k:"lnap;",v:"\xE2\xAA\x89"},{k:"lnapprox;",v:"\xE2\xAA\x89"},{k:"lne;",v:"\xE2\xAA\x87"},{k:"lneq;",v:"\xE2\xAA\x87"},{k:"lneqq;",v:"\xE2\x89\xA8"},{k:"lnsim;",v:"\xE2\x8B\xA6"},{k:"loang;",v:"\xE2\x9F\xAC"},{k:"loarr;",v:"\xE2\x87\xBD"},{k:"lobrk;",v:"\xE2\x9F\xA6"},{k:"longleftarrow;",v:"\xE2\x9F\xB5"},{k:"longleftrightarrow;",v:"\xE2\x9F\xB7"},{k:"longmapsto;",v:"\xE2\x9F\xBC"},{k:"longrightarrow;",v:"\xE2\x9F\xB6"},{k:"looparrowleft;",v:"\xE2\x86\xAB"},{k:"looparrowright;",v:"\xE2\x86\xAC"},{k:"lopar;",v:"\xE2\xA6\x85"},{k:"lopf;",v:"\xF0\x9D\x95\x9D"},{k:"loplus;",v:"\xE2\xA8\xAD"},{k:"lotimes;",v:"\xE2\xA8\xB4"},{k:"lowast;",v:"\xE2\x88\x97"},{k:"lowbar;",v:"_"},{k:"loz;",v:"\xE2\x97\x8A"},{k:"lozenge;",v:"\xE2\x97\x8A"},{k:"lozf;",v:"\xE2\xA7\xAB"},{k:"lpar;",v:"("},{k:"lparlt;",v:"\xE2\xA6\x93"},{k:"lrarr;",v:"\xE2\x87\x86"},{k:"lrcorner;",v:"\xE2\x8C\x9F"},{k:"lrhar;",v:"\xE2\x87\x8B"},{k:"lrhard;",v:"\xE2\xA5\xAD"},{k:"lrm;",v:"\xE2\x80\x8E"},{k:"lrtri;",v:"\xE2\x8A\xBF"},{k:"lsaquo;",v:"\xE2\x80\xB9"},{k:"lscr;",v:"\xF0\x9D\x93\x81"},{k:"lsh;",v:"\xE2\x86\xB0"},{k:"lsim;",v:"\xE2\x89\xB2"},{k:"lsime;",v:"\xE2\xAA\x8D"},{k:"lsimg;",v:"\xE2\xAA\x8F"},{k:"lsqb;",v:"["},{k:"lsquo;",v:"\xE2\x80\x98"},{k:"lsquor;",v:"\xE2\x80\x9A"},{k:"lstrok;",v:"\xC5\x82"},{k:"lt;",v:"<"},{k:"ltcc;",v:"\xE2\xAA\xA6"},{k:"ltcir;",v:"\xE2\xA9\xB9"},{k:"ltdot;",v:"\xE2\x8B\x96"},{k:"lthree;",v:"\xE2\x8B\x8B"},{k:"ltimes;",v:"\xE2\x8B\x89"},{k:"ltlarr;",v:"\xE2\xA5\xB6"},{k:"ltquest;",v:"\xE2\xA9\xBB"},{k:"ltrPar;",v:"\xE2\xA6\x96"},{k:"ltri;",v:"\xE2\x97\x83"},{k:"ltrie;",v:"\xE2\x8A\xB4"},{k:"ltrif;",v:"\xE2\x97\x82"},{k:"lurdshar;",v:"\xE2\xA5\x8A"},{k:"luruhar;",v:"\xE2\xA5\xA6"},{k:"lvertneqq;",v:"\xE2\x89\xA8\xEF\xB8\x80"},{k:"lvnE;",v:"\xE2\x89\xA8\xEF\xB8\x80"},{k:"mDDot;",v:"\xE2\x88\xBA"},{k:"macr;",v:"\xC2\xAF"},{k:"male;",v:"\xE2\x99\x82"},{k:"malt;",v:"\xE2\x9C\xA0"},{k:"maltese;",v:"\xE2\x9C\xA0"},{k:"map;",v:"\xE2\x86\xA6"},{k:"mapsto;",v:"\xE2\x86\xA6"},{k:"mapstodown;",v:"\xE2\x86\xA7"},{k:"mapstoleft;",v:"\xE2\x86\xA4"},{k:"mapstoup;",v:"\xE2\x86\xA5"},{k:"marker;",v:"\xE2\x96\xAE"},{k:"mcomma;",v:"\xE2\xA8\xA9"},{k:"mcy;",v:"\xD0\xBC"},{k:"mdash;",v:"\xE2\x80\x94"},{k:"measuredangle;",v:"\xE2\x88\xA1"},{k:"mfr;",v:"\xF0\x9D\x94\xAA"},{k:"mho;",v:"\xE2\x84\xA7"},{k:"micro;",v:"\xC2\xB5"},{k:"mid;",v:"\xE2\x88\xA3"},{k:"midast;",v:"*"},{k:"midcir;",v:"\xE2\xAB\xB0"},{k:"middot;",v:"\xC2\xB7"},{k:"minus;",v:"\xE2\x88\x92"},{k:"minusb;",v:"\xE2\x8A\x9F"},{k:"minusd;",v:"\xE2\x88\xB8"},{k:"minusdu;",v:"\xE2\xA8\xAA"},{k:"mlcp;",v:"\xE2\xAB\x9B"},{k:"mldr;",v:"\xE2\x80\xA6"},{k:"mnplus;",v:"\xE2\x88\x93"},{k:"models;",v:"\xE2\x8A\xA7"},{k:"mopf;",v:"\xF0\x9D\x95\x9E"},{k:"mp;",v:"\xE2\x88\x93"},{k:"mscr;",v:"\xF0\x9D\x93\x82"},{k:"mstpos;",v:"\xE2\x88\xBE"},{k:"mu;",v:"\xCE\xBC"},{k:"multimap;",v:"\xE2\x8A\xB8"},{k:"mumap;",v:"\xE2\x8A\xB8"},{k:"nGg;",v:"\xE2\x8B\x99\xCC\xB8"},{k:"nGt;",v:"\xE2\x89\xAB\xE2\x83\x92"},{k:"nGtv;",v:"\xE2\x89\xAB\xCC\xB8"},{k:"nLeftarrow;",v:"\xE2\x87\x8D"},{k:"nLeftrightarrow;",v:"\xE2\x87\x8E"},{k:"nLl;",v:"\xE2\x8B\x98\xCC\xB8"},{k:"nLt;",v:"\xE2\x89\xAA\xE2\x83\x92"},{k:"nLtv;",v:"\xE2\x89\xAA\xCC\xB8"},{k:"nRightarrow;",v:"\xE2\x87\x8F"},{k:"nVDash;",v:"\xE2\x8A\xAF"},{k:"nVdash;",v:"\xE2\x8A\xAE"},{k:"nabla;",v:"\xE2\x88\x87"},{k:"nacute;",v:"\xC5\x84"},{k:"nang;",v:"\xE2\x88\xA0\xE2\x83\x92"},{k:"nap;",v:"\xE2\x89\x89"},{k:"napE;",v:"\xE2\xA9\xB0\xCC\xB8"},{k:"napid;",v:"\xE2\x89\x8B\xCC\xB8"},{k:"napos;",v:"\xC5\x89"},{k:"napprox;",v:"\xE2\x89\x89"},{k:"natur;",v:"\xE2\x99\xAE"},{k:"natural;",v:"\xE2\x99\xAE"},{k:"naturals;",v:"\xE2\x84\x95"},{k:"nbsp;",v:"\xC2\xA0"},{k:"nbump;",v:"\xE2\x89\x8E\xCC\xB8"},{k:"nbumpe;",v:"\xE2\x89\x8F\xCC\xB8"},{k:"ncap;",v:"\xE2\xA9\x83"},{k:"ncaron;",v:"\xC5\x88"},{k:"ncedil;",v:"\xC5\x86"},{k:"ncong;",v:"\xE2\x89\x87"},{k:"ncongdot;",v:"\xE2\xA9\xAD\xCC\xB8"},{k:"ncup;",v:"\xE2\xA9\x82"},{k:"ncy;",v:"\xD0\xBD"},{k:"ndash;",v:"\xE2\x80\x93"},{k:"ne;",v:"\xE2\x89\xA0"},{k:"neArr;",v:"\xE2\x87\x97"},{k:"nearhk;",v:"\xE2\xA4\xA4"},{k:"nearr;",v:"\xE2\x86\x97"},{k:"nearrow;",v:"\xE2\x86\x97"},{k:"nedot;",v:"\xE2\x89\x90\xCC\xB8"},{k:"nequiv;",v:"\xE2\x89\xA2"},{k:"nesear;",v:"\xE2\xA4\xA8"},{k:"nesim;",v:"\xE2\x89\x82\xCC\xB8"},{k:"nexist;",v:"\xE2\x88\x84"},{k:"nexists;",v:"\xE2\x88\x84"},{k:"nfr;",v:"\xF0\x9D\x94\xAB"},{k:"ngE;",v:"\xE2\x89\xA7\xCC\xB8"},{k:"nge;",v:"\xE2\x89\xB1"},{k:"ngeq;",v:"\xE2\x89\xB1"},{k:"ngeqq;",v:"\xE2\x89\xA7\xCC\xB8"},{k:"ngeqslant;",v:"\xE2\xA9\xBE\xCC\xB8"},{k:"nges;",v:"\xE2\xA9\xBE\xCC\xB8"},{k:"ngsim;",v:"\xE2\x89\xB5"},{k:"ngt;",v:"\xE2\x89\xAF"},{k:"ngtr;",v:"\xE2\x89\xAF"},{k:"nhArr;",v:"\xE2\x87\x8E"},{k:"nharr;",v:"\xE2\x86\xAE"},{k:"nhpar;",v:"\xE2\xAB\xB2"},{k:"ni;",v:"\xE2\x88\x8B"},{k:"nis;",v:"\xE2\x8B\xBC"},{k:"nisd;",v:"\xE2\x8B\xBA"},{k:"niv;",v:"\xE2\x88\x8B"},{k:"njcy;",v:"\xD1\x9A"},{k:"nlArr;",v:"\xE2\x87\x8D"},{k:"nlE;",v:"\xE2\x89\xA6\xCC\xB8"},{k:"nlarr;",v:"\xE2\x86\x9A"},{k:"nldr;",v:"\xE2\x80\xA5"},{k:"nle;",v:"\xE2\x89\xB0"},{k:"nleftarrow;",v:"\xE2\x86\x9A"},{k:"nleftrightarrow;",v:"\xE2\x86\xAE"},{k:"nleq;",v:"\xE2\x89\xB0"},{k:"nleqq;",v:"\xE2\x89\xA6\xCC\xB8"},{k:"nleqslant;",v:"\xE2\xA9\xBD\xCC\xB8"},{k:"nles;",v:"\xE2\xA9\xBD\xCC\xB8"},{k:"nless;",v:"\xE2\x89\xAE"},{k:"nlsim;",v:"\xE2\x89\xB4"},{k:"nlt;",v:"\xE2\x89\xAE"},{k:"nltri;",v:"\xE2\x8B\xAA"},{k:"nltrie;",v:"\xE2\x8B\xAC"},{k:"nmid;",v:"\xE2\x88\xA4"},{k:"nopf;",v:"\xF0\x9D\x95\x9F"},{k:"not;",v:"\xC2\xAC"},{k:"notin;",v:"\xE2\x88\x89"},{k:"notinE;",v:"\xE2\x8B\xB9\xCC\xB8"},{k:"notindot;",v:"\xE2\x8B\xB5\xCC\xB8"},{k:"notinva;",v:"\xE2\x88\x89"},{k:"notinvb;",v:"\xE2\x8B\xB7"},{k:"notinvc;",v:"\xE2\x8B\xB6"},{k:"notni;",v:"\xE2\x88\x8C"},{k:"notniva;",v:"\xE2\x88\x8C"},{k:"notnivb;",v:"\xE2\x8B\xBE"},{k:"notnivc;",v:"\xE2\x8B\xBD"},{k:"npar;",v:"\xE2\x88\xA6"},{k:"nparallel;",v:"\xE2\x88\xA6"},{k:"nparsl;",v:"\xE2\xAB\xBD\xE2\x83\xA5"},{k:"npart;",v:"\xE2\x88\x82\xCC\xB8"},{k:"npolint;",v:"\xE2\xA8\x94"},{k:"npr;",v:"\xE2\x8A\x80"},{k:"nprcue;",v:"\xE2\x8B\xA0"},{k:"npre;",v:"\xE2\xAA\xAF\xCC\xB8"},{k:"nprec;",v:"\xE2\x8A\x80"},{k:"npreceq;",v:"\xE2\xAA\xAF\xCC\xB8"},{k:"nrArr;",v:"\xE2\x87\x8F"},{k:"nrarr;",v:"\xE2\x86\x9B"},{k:"nrarrc;",v:"\xE2\xA4\xB3\xCC\xB8"},{k:"nrarrw;",v:"\xE2\x86\x9D\xCC\xB8"},{k:"nrightarrow;",v:"\xE2\x86\x9B"},{k:"nrtri;",v:"\xE2\x8B\xAB"},{k:"nrtrie;",v:"\xE2\x8B\xAD"},{k:"nsc;",v:"\xE2\x8A\x81"},{k:"nsccue;",v:"\xE2\x8B\xA1"},{k:"nsce;",v:"\xE2\xAA\xB0\xCC\xB8"},{k:"nscr;",v:"\xF0\x9D\x93\x83"},{k:"nshortmid;",v:"\xE2\x88\xA4"},{k:"nshortparallel;",v:"\xE2\x88\xA6"},{k:"nsim;",v:"\xE2\x89\x81"},{k:"nsime;",v:"\xE2\x89\x84"},{k:"nsimeq;",v:"\xE2\x89\x84"},{k:"nsmid;",v:"\xE2\x88\xA4"},{k:"nspar;",v:"\xE2\x88\xA6"},{k:"nsqsube;",v:"\xE2\x8B\xA2"},{k:"nsqsupe;",v:"\xE2\x8B\xA3"},{k:"nsub;",v:"\xE2\x8A\x84"},{k:"nsubE;",v:"\xE2\xAB\x85\xCC\xB8"},{k:"nsube;",v:"\xE2\x8A\x88"},{k:"nsubset;",v:"\xE2\x8A\x82\xE2\x83\x92"},{k:"nsubseteq;",v:"\xE2\x8A\x88"},{k:"nsubseteqq;",v:"\xE2\xAB\x85\xCC\xB8"},{k:"nsucc;",v:"\xE2\x8A\x81"},{k:"nsucceq;",v:"\xE2\xAA\xB0\xCC\xB8"},{k:"nsup;",v:"\xE2\x8A\x85"},{k:"nsupE;",v:"\xE2\xAB\x86\xCC\xB8"},{k:"nsupe;",v:"\xE2\x8A\x89"},{k:"nsupset;",v:"\xE2\x8A\x83\xE2\x83\x92"},{k:"nsupseteq;",v:"\xE2\x8A\x89"},{k:"nsupseteqq;",v:"\xE2\xAB\x86\xCC\xB8"},{k:"ntgl;",v:"\xE2\x89\xB9"},{k:"ntilde;",v:"\xC3\xB1"},{k:"ntlg;",v:"\xE2\x89\xB8"},{k:"ntriangleleft;",v:"\xE2\x8B\xAA"},{k:"ntrianglelefteq;",v:"\xE2\x8B\xAC"},{k:"ntriangleright;",v:"\xE2\x8B\xAB"},{k:"ntrianglerighteq;",v:"\xE2\x8B\xAD"},{k:"nu;",v:"\xCE\xBD"},{k:"num;",v:"#"},{k:"numero;",v:"\xE2\x84\x96"},{k:"numsp;",v:"\xE2\x80\x87"},{k:"nvDash;",v:"\xE2\x8A\xAD"},{k:"nvHarr;",v:"\xE2\xA4\x84"},{k:"nvap;",v:"\xE2\x89\x8D\xE2\x83\x92"},{k:"nvdash;",v:"\xE2\x8A\xAC"},{k:"nvge;",v:"\xE2\x89\xA5\xE2\x83\x92"},{k:"nvgt;",v:">\xE2\x83\x92"},{k:"nvinfin;",v:"\xE2\xA7\x9E"},{k:"nvlArr;",v:"\xE2\xA4\x82"},{k:"nvle;",v:"\xE2\x89\xA4\xE2\x83\x92"},{k:"nvlt;",v:"<\xE2\x83\x92"},{k:"nvltrie;",v:"\xE2\x8A\xB4\xE2\x83\x92"},{k:"nvrArr;",v:"\xE2\xA4\x83"},{k:"nvrtrie;",v:"\xE2\x8A\xB5\xE2\x83\x92"},{k:"nvsim;",v:"\xE2\x88\xBC\xE2\x83\x92"},{k:"nwArr;",v:"\xE2\x87\x96"},{k:"nwarhk;",v:"\xE2\xA4\xA3"},{k:"nwarr;",v:"\xE2\x86\x96"},{k:"nwarrow;",v:"\xE2\x86\x96"},{k:"nwnear;",v:"\xE2\xA4\xA7"},{k:"oS;",v:"\xE2\x93\x88"},{k:"oacute;",v:"\xC3\xB3"},{k:"oast;",v:"\xE2\x8A\x9B"},{k:"ocir;",v:"\xE2\x8A\x9A"},{k:"ocirc;",v:"\xC3\xB4"},{k:"ocy;",v:"\xD0\xBE"},{k:"odash;",v:"\xE2\x8A\x9D"},{k:"odblac;",v:"\xC5\x91"},{k:"odiv;",v:"\xE2\xA8\xB8"},{k:"odot;",v:"\xE2\x8A\x99"},{k:"odsold;",v:"\xE2\xA6\xBC"},{k:"oelig;",v:"\xC5\x93"},{k:"ofcir;",v:"\xE2\xA6\xBF"},{k:"ofr;",v:"\xF0\x9D\x94\xAC"},{k:"ogon;",v:"\xCB\x9B"},{k:"ograve;",v:"\xC3\xB2"},{k:"ogt;",v:"\xE2\xA7\x81"},{k:"ohbar;",v:"\xE2\xA6\xB5"},{k:"ohm;",v:"\xCE\xA9"},{k:"oint;",v:"\xE2\x88\xAE"},{k:"olarr;",v:"\xE2\x86\xBA"},{k:"olcir;",v:"\xE2\xA6\xBE"},{k:"olcross;",v:"\xE2\xA6\xBB"},{k:"oline;",v:"\xE2\x80\xBE"},{k:"olt;",v:"\xE2\xA7\x80"},{k:"omacr;",v:"\xC5\x8D"},{k:"omega;",v:"\xCF\x89"},{k:"omicron;",v:"\xCE\xBF"},{k:"omid;",v:"\xE2\xA6\xB6"},{k:"ominus;",v:"\xE2\x8A\x96"},{k:"oopf;",v:"\xF0\x9D\x95\xA0"},{k:"opar;",v:"\xE2\xA6\xB7"},{k:"operp;",v:"\xE2\xA6\xB9"},{k:"oplus;",v:"\xE2\x8A\x95"},{k:"or;",v:"\xE2\x88\xA8"},{k:"orarr;",v:"\xE2\x86\xBB"},{k:"ord;",v:"\xE2\xA9\x9D"},{k:"order;",v:"\xE2\x84\xB4"},{k:"orderof;",v:"\xE2\x84\xB4"},{k:"ordf;",v:"\xC2\xAA"},{k:"ordm;",v:"\xC2\xBA"},{k:"origof;",v:"\xE2\x8A\xB6"},{k:"oror;",v:"\xE2\xA9\x96"},{k:"orslope;",v:"\xE2\xA9\x97"},{k:"orv;",v:"\xE2\xA9\x9B"},{k:"oscr;",v:"\xE2\x84\xB4"},{k:"oslash;",v:"\xC3\xB8"},{k:"osol;",v:"\xE2\x8A\x98"},{k:"otilde;",v:"\xC3\xB5"},{k:"otimes;",v:"\xE2\x8A\x97"},{k:"otimesas;",v:"\xE2\xA8\xB6"},{k:"ouml;",v:"\xC3\xB6"},{k:"ovbar;",v:"\xE2\x8C\xBD"},{k:"par;",v:"\xE2\x88\xA5"},{k:"para;",v:"\xC2\xB6"},{k:"parallel;",v:"\xE2\x88\xA5"},{k:"parsim;",v:"\xE2\xAB\xB3"},{k:"parsl;",v:"\xE2\xAB\xBD"},{k:"part;",v:"\xE2\x88\x82"},{k:"pcy;",v:"\xD0\xBF"},{k:"percnt;",v:"%"},{k:"period;",v:"."},{k:"permil;",v:"\xE2\x80\xB0"},{k:"perp;",v:"\xE2\x8A\xA5"},{k:"pertenk;",v:"\xE2\x80\xB1"},{k:"pfr;",v:"\xF0\x9D\x94\xAD"},{k:"phi;",v:"\xCF\x86"},{k:"phiv;",v:"\xCF\x95"},{k:"phmmat;",v:"\xE2\x84\xB3"},{k:"phone;",v:"\xE2\x98\x8E"},{k:"pi;",v:"\xCF\x80"},{k:"pitchfork;",v:"\xE2\x8B\x94"},{k:"piv;",v:"\xCF\x96"},{k:"planck;",v:"\xE2\x84\x8F"},{k:"planckh;",v:"\xE2\x84\x8E"},{k:"plankv;",v:"\xE2\x84\x8F"},{k:"plus;",v:"+"},{k:"plusacir;",v:"\xE2\xA8\xA3"},{k:"plusb;",v:"\xE2\x8A\x9E"},{k:"pluscir;",v:"\xE2\xA8\xA2"},{k:"plusdo;",v:"\xE2\x88\x94"},{k:"plusdu;",v:"\xE2\xA8\xA5"},{k:"pluse;",v:"\xE2\xA9\xB2"},{k:"plusmn;",v:"\xC2\xB1"},{k:"plussim;",v:"\xE2\xA8\xA6"},{k:"plustwo;",v:"\xE2\xA8\xA7"},{k:"pm;",v:"\xC2\xB1"},{k:"pointint;",v:"\xE2\xA8\x95"},{k:"popf;",v:"\xF0\x9D\x95\xA1"},{k:"pound;",v:"\xC2\xA3"},{k:"pr;",v:"\xE2\x89\xBA"},{k:"prE;",v:"\xE2\xAA\xB3"},{k:"prap;",v:"\xE2\xAA\xB7"},{k:"prcue;",v:"\xE2\x89\xBC"},{k:"pre;",v:"\xE2\xAA\xAF"},{k:"prec;",v:"\xE2\x89\xBA"},{k:"precapprox;",v:"\xE2\xAA\xB7"},{k:"preccurlyeq;",v:"\xE2\x89\xBC"},{k:"preceq;",v:"\xE2\xAA\xAF"},{k:"precnapprox;",v:"\xE2\xAA\xB9"},{k:"precneqq;",v:"\xE2\xAA\xB5"},{k:"precnsim;",v:"\xE2\x8B\xA8"},{k:"precsim;",v:"\xE2\x89\xBE"},{k:"prime;",v:"\xE2\x80\xB2"},{k:"primes;",v:"\xE2\x84\x99"},{k:"prnE;",v:"\xE2\xAA\xB5"},{k:"prnap;",v:"\xE2\xAA\xB9"},{k:"prnsim;",v:"\xE2\x8B\xA8"},{k:"prod;",v:"\xE2\x88\x8F"},{k:"profalar;",v:"\xE2\x8C\xAE"},{k:"profline;",v:"\xE2\x8C\x92"},{k:"profsurf;",v:"\xE2\x8C\x93"},{k:"prop;",v:"\xE2\x88\x9D"},{k:"propto;",v:"\xE2\x88\x9D"},{k:"prsim;",v:"\xE2\x89\xBE"},{k:"prurel;",v:"\xE2\x8A\xB0"},{k:"pscr;",v:"\xF0\x9D\x93\x85"},{k:"psi;",v:"\xCF\x88"},{k:"puncsp;",v:"\xE2\x80\x88"},{k:"qfr;",v:"\xF0\x9D\x94\xAE"},{k:"qint;",v:"\xE2\xA8\x8C"},{k:"qopf;",v:"\xF0\x9D\x95\xA2"},{k:"qprime;",v:"\xE2\x81\x97"},{k:"qscr;",v:"\xF0\x9D\x93\x86"},{k:"quaternions;",v:"\xE2\x84\x8D"},{k:"quatint;",v:"\xE2\xA8\x96"},{k:"quest;",v:"?"},{k:"questeq;",v:"\xE2\x89\x9F"},{k:"quot;",v:"\""},{k:"rAarr;",v:"\xE2\x87\x9B"},{k:"rArr;",v:"\xE2\x87\x92"},{k:"rAtail;",v:"\xE2\xA4\x9C"},{k:"rBarr;",v:"\xE2\xA4\x8F"},{k:"rHar;",v:"\xE2\xA5\xA4"},{k:"race;",v:"\xE2\x88\xBD\xCC\xB1"},{k:"racute;",v:"\xC5\x95"},{k:"radic;",v:"\xE2\x88\x9A"},{k:"raemptyv;",v:"\xE2\xA6\xB3"},{k:"rang;",v:"\xE2\x9F\xA9"},{k:"rangd;",v:"\xE2\xA6\x92"},{k:"range;",v:"\xE2\xA6\xA5"},{k:"rangle;",v:"\xE2\x9F\xA9"},{k:"raquo;",v:"\xC2\xBB"},{k:"rarr;",v:"\xE2\x86\x92"},{k:"rarrap;",v:"\xE2\xA5\xB5"},{k:"rarrb;",v:"\xE2\x87\xA5"},{k:"rarrbfs;",v:"\xE2\xA4\xA0"},{k:"rarrc;",v:"\xE2\xA4\xB3"},{k:"rarrfs;",v:"\xE2\xA4\x9E"},{k:"rarrhk;",v:"\xE2\x86\xAA"},{k:"rarrlp;",v:"\xE2\x86\xAC"},{k:"rarrpl;",v:"\xE2\xA5\x85"},{k:"rarrsim;",v:"\xE2\xA5\xB4"},{k:"rarrtl;",v:"\xE2\x86\xA3"},{k:"rarrw;",v:"\xE2\x86\x9D"},{k:"ratail;",v:"\xE2\xA4\x9A"},{k:"ratio;",v:"\xE2\x88\xB6"},{k:"rationals;",v:"\xE2\x84\x9A"},{k:"rbarr;",v:"\xE2\xA4\x8D"},{k:"rbbrk;",v:"\xE2\x9D\xB3"},{k:"rbrace;",v:"}"},{k:"rbrack;",v:"]"},{k:"rbrke;",v:"\xE2\xA6\x8C"},{k:"rbrksld;",v:"\xE2\xA6\x8E"},{k:"rbrkslu;",v:"\xE2\xA6\x90"},{k:"rcaron;",v:"\xC5\x99"},{k:"rcedil;",v:"\xC5\x97"},{k:"rceil;",v:"\xE2\x8C\x89"},{k:"rcub;",v:"}"},{k:"rcy;",v:"\xD1\x80"},{k:"rdca;",v:"\xE2\xA4\xB7"},{k:"rdldhar;",v:"\xE2\xA5\xA9"},{k:"rdquo;",v:"\xE2\x80\x9D"},{k:"rdquor;",v:"\xE2\x80\x9D"},{k:"rdsh;",v:"\xE2\x86\xB3"},{k:"real;",v:"\xE2\x84\x9C"},{k:"realine;",v:"\xE2\x84\x9B"},{k:"realpart;",v:"\xE2\x84\x9C"},{k:"reals;",v:"\xE2\x84\x9D"},{k:"rect;",v:"\xE2\x96\xAD"},{k:"reg;",v:"\xC2\xAE"},{k:"rfisht;",v:"\xE2\xA5\xBD"},{k:"rfloor;",v:"\xE2\x8C\x8B"},{k:"rfr;",v:"\xF0\x9D\x94\xAF"},{k:"rhard;",v:"\xE2\x87\x81"},{k:"rharu;",v:"\xE2\x87\x80"},{k:"rharul;",v:"\xE2\xA5\xAC"},{k:"rho;",v:"\xCF\x81"},{k:"rhov;",v:"\xCF\xB1"},{k:"rightarrow;",v:"\xE2\x86\x92"},{k:"rightarrowtail;",v:"\xE2\x86\xA3"},{k:"rightharpoondown;",v:"\xE2\x87\x81"},{k:"rightharpoonup;",v:"\xE2\x87\x80"},{k:"rightleftarrows;",v:"\xE2\x87\x84"},{k:"rightleftharpoons;",v:"\xE2\x87\x8C"},{k:"rightrightarrows;",v:"\xE2\x87\x89"},{k:"rightsquigarrow;",v:"\xE2\x86\x9D"},{k:"rightthreetimes;",v:"\xE2\x8B\x8C"},{k:"ring;",v:"\xCB\x9A"},{k:"risingdotseq;",v:"\xE2\x89\x93"},{k:"rlarr;",v:"\xE2\x87\x84"},{k:"rlhar;",v:"\xE2\x87\x8C"},{k:"rlm;",v:"\xE2\x80\x8F"},{k:"rmoust;",v:"\xE2\x8E\xB1"},{k:"rmoustache;",v:"\xE2\x8E\xB1"},{k:"rnmid;",v:"\xE2\xAB\xAE"},{k:"roang;",v:"\xE2\x9F\xAD"},{k:"roarr;",v:"\xE2\x87\xBE"},{k:"robrk;",v:"\xE2\x9F\xA7"},{k:"ropar;",v:"\xE2\xA6\x86"},{k:"ropf;",v:"\xF0\x9D\x95\xA3"},{k:"roplus;",v:"\xE2\xA8\xAE"},{k:"rotimes;",v:"\xE2\xA8\xB5"},{k:"rpar;",v:")"},{k:"rpargt;",v:"\xE2\xA6\x94"},{k:"rppolint;",v:"\xE2\xA8\x92"},{k:"rrarr;",v:"\xE2\x87\x89"},{k:"rsaquo;",v:"\xE2\x80\xBA"},{k:"rscr;",v:"\xF0\x9D\x93\x87"},{k:"rsh;",v:"\xE2\x86\xB1"},{k:"rsqb;",v:"]"},{k:"rsquo;",v:"\xE2\x80\x99"},{k:"rsquor;",v:"\xE2\x80\x99"},{k:"rthree;",v:"\xE2\x8B\x8C"},{k:"rtimes;",v:"\xE2\x8B\x8A"},{k:"rtri;",v:"\xE2\x96\xB9"},{k:"rtrie;",v:"\xE2\x8A\xB5"},{k:"rtrif;",v:"\xE2\x96\xB8"},{k:"rtriltri;",v:"\xE2\xA7\x8E"},{k:"ruluhar;",v:"\xE2\xA5\xA8"},{k:"rx;",v:"\xE2\x84\x9E"},{k:"sacute;",v:"\xC5\x9B"},{k:"sbquo;",v:"\xE2\x80\x9A"},{k:"sc;",v:"\xE2\x89\xBB"},{k:"scE;",v:"\xE2\xAA\xB4"},{k:"scap;",v:"\xE2\xAA\xB8"},{k:"scaron;",v:"\xC5\xA1"},{k:"sccue;",v:"\xE2\x89\xBD"},{k:"sce;",v:"\xE2\xAA\xB0"},{k:"scedil;",v:"\xC5\x9F"},{k:"scirc;",v:"\xC5\x9D"},{k:"scnE;",v:"\xE2\xAA\xB6"},{k:"scnap;",v:"\xE2\xAA\xBA"},{k:"scnsim;",v:"\xE2\x8B\xA9"},{k:"scpolint;",v:"\xE2\xA8\x93"},{k:"scsim;",v:"\xE2\x89\xBF"},{k:"scy;",v:"\xD1\x81"},{k:"sdot;",v:"\xE2\x8B\x85"},{k:"sdotb;",v:"\xE2\x8A\xA1"},{k:"sdote;",v:"\xE2\xA9\xA6"},{k:"seArr;",v:"\xE2\x87\x98"},{k:"searhk;",v:"\xE2\xA4\xA5"},{k:"searr;",v:"\xE2\x86\x98"},{k:"searrow;",v:"\xE2\x86\x98"},{k:"sect;",v:"\xC2\xA7"},{k:"semi;",v:";"},{k:"seswar;",v:"\xE2\xA4\xA9"},{k:"setminus;",v:"\xE2\x88\x96"},{k:"setmn;",v:"\xE2\x88\x96"},{k:"sext;",v:"\xE2\x9C\xB6"},{k:"sfr;",v:"\xF0\x9D\x94\xB0"},{k:"sfrown;",v:"\xE2\x8C\xA2"},{k:"sharp;",v:"\xE2\x99\xAF"},{k:"shchcy;",v:"\xD1\x89"},{k:"shcy;",v:"\xD1\x88"},{k:"shortmid;",v:"\xE2\x88\xA3"},{k:"shortparallel;",v:"\xE2\x88\xA5"},{k:"shy;",v:"\xC2\xAD"},{k:"sigma;",v:"\xCF\x83"},{k:"sigmaf;",v:"\xCF\x82"},{k:"sigmav;",v:"\xCF\x82"},{k:"sim;",v:"\xE2\x88\xBC"},{k:"simdot;",v:"\xE2\xA9\xAA"},{k:"sime;",v:"\xE2\x89\x83"},{k:"simeq;",v:"\xE2\x89\x83"},{k:"simg;",v:"\xE2\xAA\x9E"},{k:"simgE;",v:"\xE2\xAA\xA0"},{k:"siml;",v:"\xE2\xAA\x9D"},{k:"simlE;",v:"\xE2\xAA\x9F"},{k:"simne;",v:"\xE2\x89\x86"},{k:"simplus;",v:"\xE2\xA8\xA4"},{k:"simrarr;",v:"\xE2\xA5\xB2"},{k:"slarr;",v:"\xE2\x86\x90"},{k:"smallsetminus;",v:"\xE2\x88\x96"},{k:"smashp;",v:"\xE2\xA8\xB3"},{k:"smeparsl;",v:"\xE2\xA7\xA4"},{k:"smid;",v:"\xE2\x88\xA3"},{k:"smile;",v:"\xE2\x8C\xA3"},{k:"smt;",v:"\xE2\xAA\xAA"},{k:"smte;",v:"\xE2\xAA\xAC"},{k:"smtes;",v:"\xE2\xAA\xAC\xEF\xB8\x80"},{k:"softcy;",v:"\xD1\x8C"},{k:"sol;",v:"/"},{k:"solb;",v:"\xE2\xA7\x84"},{k:"solbar;",v:"\xE2\x8C\xBF"},{k:"sopf;",v:"\xF0\x9D\x95\xA4"},{k:"spades;",v:"\xE2\x99\xA0"},{k:"spadesuit;",v:"\xE2\x99\xA0"},{k:"spar;",v:"\xE2\x88\xA5"},{k:"sqcap;",v:"\xE2\x8A\x93"},{k:"sqcaps;",v:"\xE2\x8A\x93\xEF\xB8\x80"},{k:"sqcup;",v:"\xE2\x8A\x94"},{k:"sqcups;",v:"\xE2\x8A\x94\xEF\xB8\x80"},{k:"sqsub;",v:"\xE2\x8A\x8F"},{k:"sqsube;",v:"\xE2\x8A\x91"},{k:"sqsubset;",v:"\xE2\x8A\x8F"},{k:"sqsubseteq;",v:"\xE2\x8A\x91"},{k:"sqsup;",v:"\xE2\x8A\x90"},{k:"sqsupe;",v:"\xE2\x8A\x92"},{k:"sqsupset;",v:"\xE2\x8A\x90"},{k:"sqsupseteq;",v:"\xE2\x8A\x92"},{k:"squ;",v:"\xE2\x96\xA1"},{k:"square;",v:"\xE2\x96\xA1"},{k:"squarf;",v:"\xE2\x96\xAA"},{k:"squf;",v:"\xE2\x96\xAA"},{k:"srarr;",v:"\xE2\x86\x92"},{k:"sscr;",v:"\xF0\x9D\x93\x88"},{k:"ssetmn;",v:"\xE2\x88\x96"},{k:"ssmile;",v:"\xE2\x8C\xA3"},{k:"sstarf;",v:"\xE2\x8B\x86"},{k:"star;",v:"\xE2\x98\x86"},{k:"starf;",v:"\xE2\x98\x85"},{k:"straightepsilon;",v:"\xCF\xB5"},{k:"straightphi;",v:"\xCF\x95"},{k:"strns;",v:"\xC2\xAF"},{k:"sub;",v:"\xE2\x8A\x82"},{k:"subE;",v:"\xE2\xAB\x85"},{k:"subdot;",v:"\xE2\xAA\xBD"},{k:"sube;",v:"\xE2\x8A\x86"},{k:"subedot;",v:"\xE2\xAB\x83"},{k:"submult;",v:"\xE2\xAB\x81"},{k:"subnE;",v:"\xE2\xAB\x8B"},{k:"subne;",v:"\xE2\x8A\x8A"},{k:"subplus;",v:"\xE2\xAA\xBF"},{k:"subrarr;",v:"\xE2\xA5\xB9"},{k:"subset;",v:"\xE2\x8A\x82"},{k:"subseteq;",v:"\xE2\x8A\x86"},{k:"subseteqq;",v:"\xE2\xAB\x85"},{k:"subsetneq;",v:"\xE2\x8A\x8A"},{k:"subsetneqq;",v:"\xE2\xAB\x8B"},{k:"subsim;",v:"\xE2\xAB\x87"},{k:"subsub;",v:"\xE2\xAB\x95"},{k:"subsup;",v:"\xE2\xAB\x93"},{k:"succ;",v:"\xE2\x89\xBB"},{k:"succapprox;",v:"\xE2\xAA\xB8"},{k:"succcurlyeq;",v:"\xE2\x89\xBD"},{k:"succeq;",v:"\xE2\xAA\xB0"},{k:"succnapprox;",v:"\xE2\xAA\xBA"},{k:"succneqq;",v:"\xE2\xAA\xB6"},{k:"succnsim;",v:"\xE2\x8B\xA9"},{k:"succsim;",v:"\xE2\x89\xBF"},{k:"sum;",v:"\xE2\x88\x91"},{k:"sung;",v:"\xE2\x99\xAA"},{k:"sup;",v:"\xE2\x8A\x83"},{k:"sup1;",v:"\xC2\xB9"},{k:"sup2;",v:"\xC2\xB2"},{k:"sup3;",v:"\xC2\xB3"},{k:"supE;",v:"\xE2\xAB\x86"},{k:"supdot;",v:"\xE2\xAA\xBE"},{k:"supdsub;",v:"\xE2\xAB\x98"},{k:"supe;",v:"\xE2\x8A\x87"},{k:"supedot;",v:"\xE2\xAB\x84"},{k:"suphsol;",v:"\xE2\x9F\x89"},{k:"suphsub;",v:"\xE2\xAB\x97"},{k:"suplarr;",v:"\xE2\xA5\xBB"},{k:"supmult;",v:"\xE2\xAB\x82"},{k:"supnE;",v:"\xE2\xAB\x8C"},{k:"supne;",v:"\xE2\x8A\x8B"},{k:"supplus;",v:"\xE2\xAB\x80"},{k:"supset;",v:"\xE2\x8A\x83"},{k:"supseteq;",v:"\xE2\x8A\x87"},{k:"supseteqq;",v:"\xE2\xAB\x86"},{k:"supsetneq;",v:"\xE2\x8A\x8B"},{k:"supsetneqq;",v:"\xE2\xAB\x8C"},{k:"supsim;",v:"\xE2\xAB\x88"},{k:"supsub;",v:"\xE2\xAB\x94"},{k:"supsup;",v:"\xE2\xAB\x96"},{k:"swArr;",v:"\xE2\x87\x99"},{k:"swarhk;",v:"\xE2\xA4\xA6"},{k:"swarr;",v:"\xE2\x86\x99"},{k:"swarrow;",v:"\xE2\x86\x99"},{k:"swnwar;",v:"\xE2\xA4\xAA"},{k:"szlig;",v:"\xC3\x9F"},{k:"target;",v:"\xE2\x8C\x96"},{k:"tau;",v:"\xCF\x84"},{k:"tbrk;",v:"\xE2\x8E\xB4"},{k:"tcaron;",v:"\xC5\xA5"},{k:"tcedil;",v:"\xC5\xA3"},{k:"tcy;",v:"\xD1\x82"},{k:"tdot;",v:"\xE2\x83\x9B"},{k:"telrec;",v:"\xE2\x8C\x95"},{k:"tfr;",v:"\xF0\x9D\x94\xB1"},{k:"there4;",v:"\xE2\x88\xB4"},{k:"therefore;",v:"\xE2\x88\xB4"},{k:"theta;",v:"\xCE\xB8"},{k:"thetasym;",v:"\xCF\x91"},{k:"thetav;",v:"\xCF\x91"},{k:"thickapprox;",v:"\xE2\x89\x88"},{k:"thicksim;",v:"\xE2\x88\xBC"},{k:"thinsp;",v:"\xE2\x80\x89"},{k:"thkap;",v:"\xE2\x89\x88"},{k:"thksim;",v:"\xE2\x88\xBC"},{k:"thorn;",v:"\xC3\xBE"},{k:"tilde;",v:"\xCB\x9C"},{k:"times;",v:"\xC3\x97"},{k:"timesb;",v:"\xE2\x8A\xA0"},{k:"timesbar;",v:"\xE2\xA8\xB1"},{k:"timesd;",v:"\xE2\xA8\xB0"},{k:"tint;",v:"\xE2\x88\xAD"},{k:"toea;",v:"\xE2\xA4\xA8"},{k:"top;",v:"\xE2\x8A\xA4"},{k:"topbot;",v:"\xE2\x8C\xB6"},{k:"topcir;",v:"\xE2\xAB\xB1"},{k:"topf;",v:"\xF0\x9D\x95\xA5"},{k:"topfork;",v:"\xE2\xAB\x9A"},{k:"tosa;",v:"\xE2\xA4\xA9"},{k:"tprime;",v:"\xE2\x80\xB4"},{k:"trade;",v:"\xE2\x84\xA2"},{k:"triangle;",v:"\xE2\x96\xB5"},{k:"triangledown;",v:"\xE2\x96\xBF"},{k:"triangleleft;",v:"\xE2\x97\x83"},{k:"trianglelefteq;",v:"\xE2\x8A\xB4"},{k:"triangleq;",v:"\xE2\x89\x9C"},{k:"triangleright;",v:"\xE2\x96\xB9"},{k:"trianglerighteq;",v:"\xE2\x8A\xB5"},{k:"tridot;",v:"\xE2\x97\xAC"},{k:"trie;",v:"\xE2\x89\x9C"},{k:"triminus;",v:"\xE2\xA8\xBA"},{k:"triplus;",v:"\xE2\xA8\xB9"},{k:"trisb;",v:"\xE2\xA7\x8D"},{k:"tritime;",v:"\xE2\xA8\xBB"},{k:"trpezium;",v:"\xE2\x8F\xA2"},{k:"tscr;",v:"\xF0\x9D\x93\x89"},{k:"tscy;",v:"\xD1\x86"},{k:"tshcy;",v:"\xD1\x9B"},{k:"tstrok;",v:"\xC5\xA7"},{k:"twixt;",v:"\xE2\x89\xAC"},{k:"twoheadleftarrow;",v:"\xE2\x86\x9E"},{k:"twoheadrightarrow;",v:"\xE2\x86\xA0"},{k:"uArr;",v:"\xE2\x87\x91"},{k:"uHar;",v:"\xE2\xA5\xA3"},{k:"uacute;",v:"\xC3\xBA"},{k:"uarr;",v:"\xE2\x86\x91"},{k:"ubrcy;",v:"\xD1\x9E"},{k:"ubreve;",v:"\xC5\xAD"},{k:"ucirc;",v:"\xC3\xBB"},{k:"ucy;",v:"\xD1\x83"},{k:"udarr;",v:"\xE2\x87\x85"},{k:"udblac;",v:"\xC5\xB1"},{k:"udhar;",v:"\xE2\xA5\xAE"},{k:"ufisht;",v:"\xE2\xA5\xBE"},{k:"ufr;",v:"\xF0\x9D\x94\xB2"},{k:"ugrave;",v:"\xC3\xB9"},{k:"uharl;",v:"\xE2\x86\xBF"},{k:"uharr;",v:"\xE2\x86\xBE"},{k:"uhblk;",v:"\xE2\x96\x80"},{k:"ulcorn;",v:"\xE2\x8C\x9C"},{k:"ulcorner;",v:"\xE2\x8C\x9C"},{k:"ulcrop;",v:"\xE2\x8C\x8F"},{k:"ultri;",v:"\xE2\x97\xB8"},{k:"umacr;",v:"\xC5\xAB"},{k:"uml;",v:"\xC2\xA8"},{k:"uogon;",v:"\xC5\xB3"},{k:"uopf;",v:"\xF0\x9D\x95\xA6"},{k:"uparrow;",v:"\xE2\x86\x91"},{k:"updownarrow;",v:"\xE2\x86\x95"},{k:"upharpoonleft;",v:"\xE2\x86\xBF"},{k:"upharpoonright;",v:"\xE2\x86\xBE"},{k:"uplus;",v:"\xE2\x8A\x8E"},{k:"upsi;",v:"\xCF\x85"},{k:"upsih;",v:"\xCF\x92"},{k:"upsilon;",v:"\xCF\x85"},{k:"upuparrows;",v:"\xE2\x87\x88"},{k:"urcorn;",v:"\xE2\x8C\x9D"},{k:"urcorner;",v:"\xE2\x8C\x9D"},{k:"urcrop;",v:"\xE2\x8C\x8E"},{k:"uring;",v:"\xC5\xAF"},{k:"urtri;",v:"\xE2\x97\xB9"},{k:"uscr;",v:"\xF0\x9D\x93\x8A"},{k:"utdot;",v:"\xE2\x8B\xB0"},{k:"utilde;",v:"\xC5\xA9"},{k:"utri;",v:"\xE2\x96\xB5"},{k:"utrif;",v:"\xE2\x96\xB4"},{k:"uuarr;",v:"\xE2\x87\x88"},{k:"uuml;",v:"\xC3\xBC"},{k:"uwangle;",v:"\xE2\xA6\xA7"},{k:"vArr;",v:"\xE2\x87\x95"},{k:"vBar;",v:"\xE2\xAB\xA8"},{k:"vBarv;",v:"\xE2\xAB\xA9"},{k:"vDash;",v:"\xE2\x8A\xA8"},{k:"vangrt;",v:"\xE2\xA6\x9C"},{k:"varepsilon;",v:"\xCF\xB5"},{k:"varkappa;",v:"\xCF\xB0"},{k:"varnothing;",v:"\xE2\x88\x85"},{k:"varphi;",v:"\xCF\x95"},{k:"varpi;",v:"\xCF\x96"},{k:"varpropto;",v:"\xE2\x88\x9D"},{k:"varr;",v:"\xE2\x86\x95"},{k:"varrho;",v:"\xCF\xB1"},{k:"varsigma;",v:"\xCF\x82"},{k:"varsubsetneq;",v:"\xE2\x8A\x8A\xEF\xB8\x80"},{k:"varsubsetneqq;",v:"\xE2\xAB\x8B\xEF\xB8\x80"},{k:"varsupsetneq;",v:"\xE2\x8A\x8B\xEF\xB8\x80"},{k:"varsupsetneqq;",v:"\xE2\xAB\x8C\xEF\xB8\x80"},{k:"vartheta;",v:"\xCF\x91"},{k:"vartriangleleft;",v:"\xE2\x8A\xB2"},{k:"vartriangleright;",v:"\xE2\x8A\xB3"},{k:"vcy;",v:"\xD0\xB2"},{k:"vdash;",v:"\xE2\x8A\xA2"},{k:"vee;",v:"\xE2\x88\xA8"},{k:"veebar;",v:"\xE2\x8A\xBB"},{k:"veeeq;",v:"\xE2\x89\x9A"},{k:"vellip;",v:"\xE2\x8B\xAE"},{k:"verbar;",v:"|"},{k:"vert;",v:"|"},{k:"vfr;",v:"\xF0\x9D\x94\xB3"},{k:"vltri;",v:"\xE2\x8A\xB2"},{k:"vnsub;",v:"\xE2\x8A\x82\xE2\x83\x92"},{k:"vnsup;",v:"\xE2\x8A\x83\xE2\x83\x92"},{k:"vopf;",v:"\xF0\x9D\x95\xA7"},{k:"vprop;",v:"\xE2\x88\x9D"},{k:"vrtri;",v:"\xE2\x8A\xB3"},{k:"vscr;",v:"\xF0\x9D\x93\x8B"},{k:"vsubnE;",v:"\xE2\xAB\x8B\xEF\xB8\x80"},{k:"vsubne;",v:"\xE2\x8A\x8A\xEF\xB8\x80"},{k:"vsupnE;",v:"\xE2\xAB\x8C\xEF\xB8\x80"},{k:"vsupne;",v:"\xE2\x8A\x8B\xEF\xB8\x80"},{k:"vzigzag;",v:"\xE2\xA6\x9A"},{k:"wcirc;",v:"\xC5\xB5"},{k:"wedbar;",v:"\xE2\xA9\x9F"},{k:"wedge;",v:"\xE2\x88\xA7"},{k:"wedgeq;",v:"\xE2\x89\x99"},{k:"weierp;",v:"\xE2\x84\x98"},{k:"wfr;",v:"\xF0\x9D\x94\xB4"},{k:"wopf;",v:"\xF0\x9D\x95\xA8"},{k:"wp;",v:"\xE2\x84\x98"},{k:"wr;",v:"\xE2\x89\x80"},{k:"wreath;",v:"\xE2\x89\x80"},{k:"wscr;",v:"\xF0\x9D\x93\x8C"},{k:"xcap;",v:"\xE2\x8B\x82"},{k:"xcirc;",v:"\xE2\x97\xAF"},{k:"xcup;",v:"\xE2\x8B\x83"},{k:"xdtri;",v:"\xE2\x96\xBD"},{k:"xfr;",v:"\xF0\x9D\x94\xB5"},{k:"xhArr;",v:"\xE2\x9F\xBA"},{k:"xharr;",v:"\xE2\x9F\xB7"},{k:"xi;",v:"\xCE\xBE"},{k:"xlArr;",v:"\xE2\x9F\xB8"},{k:"xlarr;",v:"\xE2\x9F\xB5"},{k:"xmap;",v:"\xE2\x9F\xBC"},{k:"xnis;",v:"\xE2\x8B\xBB"},{k:"xodot;",v:"\xE2\xA8\x80"},{k:"xopf;",v:"\xF0\x9D\x95\xA9"},{k:"xoplus;",v:"\xE2\xA8\x81"},{k:"xotime;",v:"\xE2\xA8\x82"},{k:"xrArr;",v:"\xE2\x9F\xB9"},{k:"xrarr;",v:"\xE2\x9F\xB6"},{k:"xscr;",v:"\xF0\x9D\x93\x8D"},{k:"xsqcup;",v:"\xE2\xA8\x86"},{k:"xuplus;",v:"\xE2\xA8\x84"},{k:"xutri;",v:"\xE2\x96\xB3"},{k:"xvee;",v:"\xE2\x8B\x81"},{k:"xwedge;",v:"\xE2\x8B\x80"},{k:"yacute;",v:"\xC3\xBD"},{k:"yacy;",v:"\xD1\x8F"},{k:"ycirc;",v:"\xC5\xB7"},{k:"ycy;",v:"\xD1\x8B"},{k:"yen;",v:"\xC2\xA5"},{k:"yfr;",v:"\xF0\x9D\x94\xB6"},{k:"yicy;",v:"\xD1\x97"},{k:"yopf;",v:"\xF0\x9D\x95\xAA"},{k:"yscr;",v:"\xF0\x9D\x93\x8E"},{k:"yucy;",v:"\xD1\x8E"},{k:"yuml;",v:"\xC3\xBF"},{k:"zacute;",v:"\xC5\xBA"},{k:"zcaron;",v:"\xC5\xBE"},{k:"zcy;",v:"\xD0\xB7"},{k:"zdot;",v:"\xC5\xBC"},{k:"zeetrf;",v:"\xE2\x84\xA8"},{k:"zeta;",v:"\xCE\xB6"},{k:"zfr;",v:"\xF0\x9D\x94\xB7"},{k:"zhcy;",v:"\xD0\xB6"},{k:"zigrarr;",v:"\xE2\x87\x9D"},{k:"zopf;",v:"\xF0\x9D\x95\xAB"},{k:"zscr;",v:"\xF0\x9D\x93\x8F"},{k:"zwj;",v:"\xE2\x80\x8D"},{k:"zwnj;",v:"\xE2\x80\x8C"}]);CY=new DH(["+//silmaril//dtd html pro v0r11 19970101//","-//advasoft ltd//dtd html 3.0 aswedit + extensions//","-//as//dtd html 3.0 aswedit + extensions//","-//ietf//dtd html 2.0 level 1//","-//ietf//dtd html 2.0 level 2//","-//ietf//dtd html 2.0 strict level 1//","-//ietf//dtd html 2.0 strict level 2//","-//ietf//dtd html 2.0 strict//","-//ietf//dtd html 2.0//","-//ietf//dtd html 2.1e//","-//ietf//dtd html 3.0//","-//ietf//dtd html 3.2 final//","-//ietf//dtd html 3.2//","-//ietf//dtd html 3//","-//ietf//dtd html level 0//","-//ietf//dtd html level 1//","-//ietf//dtd html level 2//","-//ietf//dtd html level 3//","-//ietf//dtd html strict level 0//","-//ietf//dtd html strict level 1//","-//ietf//dtd html strict level 2//","-//ietf//dtd html strict level 3//","-//ietf//dtd html strict//","-//ietf//dtd html//","-//metrius//dtd metrius presentational//","-//microsoft//dtd internet explorer 2.0 html strict//","-//microsoft//dtd internet explorer 2.0 html//","-//microsoft//dtd internet explorer 2.0 tables//","-//microsoft//dtd internet explorer 3.0 html strict//","-//microsoft//dtd internet explorer 3.0 html//","-//microsoft//dtd internet explorer 3.0 tables//","-//netscape comm. corp.//dtd html//","-//netscape comm. corp.//dtd strict html//","-//o'reilly and associates//dtd html 2.0//","-//o'reilly and associates//dtd html extended 1.0//","-//o'reilly and associates//dtd html extended relaxed 1.0//","-//softquad software//dtd hotmetal pro 6.0::19990601::extensions to html 4.0//","-//softquad//dtd hotmetal pro 4.0::19971010::extensions to html 4.0//","-//spyglass//dtd html 2.0 extended//","-//sq//dtd html 2.0 hotmetal + extensions//","-//sun microsystems corp.//dtd hotjava html//","-//sun microsystems corp.//dtd hotjava strict html//","-//w3c//dtd html 3 1995-03-24//","-//w3c//dtd html 3.2 draft//","-//w3c//dtd html 3.2 final//","-//w3c//dtd html 3.2//","-//w3c//dtd html 3.2s draft//","-//w3c//dtd html 4.0 frameset//","-//w3c//dtd html 4.0 transitional//","-//w3c//dtd html experimental 19960712//","-//w3c//dtd html experimental 970421//","-//w3c//dtd w3 html//","-//w3o//dtd w3 html 3.0//","-//webtechs//dtd mozilla html 2.0//","-//webtechs//dtd mozilla html//"]);CZ=$makeMap($String.keyFor,[{k:"address",v:true},{k:"applet",v:true},{k:"area",v:true},{k:"article",v:true},{k:"aside",v:true},{k:"base",v:true},{k:"basefont",v:true},{k:"bgsound",v:true},{k:"blockquote",v:true},{k:"body",v:true},{k:"br",v:true},{k:"button",v:true},{k:"caption",v:true},{k:"center",v:true},{k:"col",v:true},{k:"colgroup",v:true},{k:"dd",v:true},{k:"details",v:true},{k:"dir",v:true},{k:"div",v:true},{k:"dl",v:true},{k:"dt",v:true},{k:"embed",v:true},{k:"fieldset",v:true},{k:"figcaption",v:true},{k:"figure",v:true},{k:"footer",v:true},{k:"form",v:true},{k:"frame",v:true},{k:"frameset",v:true},{k:"h1",v:true},{k:"h2",v:true},{k:"h3",v:true},{k:"h4",v:true},{k:"h5",v:true},{k:"h6",v:true},{k:"head",v:true},{k:"header",v:true},{k:"hgroup",v:true},{k:"hr",v:true},{k:"html",v:true},{k:"iframe",v:true},{k:"img",v:true},{k:"input",v:true},{k:"isindex",v:true},{k:"keygen",v:true},{k:"li",v:true},{k:"link",v:true},{k:"listing",v:true},{k:"main",v:true},{k:"marquee",v:true},{k:"menu",v:true},{k:"meta",v:true},{k:"nav",v:true},{k:"noembed",v:true},{k:"noframes",v:true},{k:"noscript",v:true},{k:"object",v:true},{k:"ol",v:true},{k:"p",v:true},{k:"param",v:true},{k:"plaintext",v:true},{k:"pre",v:true},{k:"script",v:true},{k:"section",v:true},{k:"select",v:true},{k:"source",v:true},{k:"style",v:true},{k:"summary",v:true},{k:"table",v:true},{k:"tbody",v:true},{k:"td",v:true},{k:"template",v:true},{k:"textarea",v:true},{k:"tfoot",v:true},{k:"th",v:true},{k:"thead",v:true},{k:"title",v:true},{k:"tr",v:true},{k:"track",v:true},{k:"ul",v:true},{k:"wbr",v:true},{k:"xmp",v:true}]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["github.com/88250/lute/util"]=(function(){var $pkg={},$init,D,E,F,G,A,B,C,AM,AO,AP,R,S,U,V,W,X,Y,Z,AA,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK,AL;D=$packages["bytes"];E=$packages["github.com/88250/lute/editor"];F=$packages["github.com/88250/lute/html"];G=$packages["github.com/88250/lute/html/atom"];A=$packages["strconv"];B=$packages["strings"];C=$packages["unicode/utf8"];AM=$sliceType($Uint8);AO=$sliceType($Int32);AP=$ptrType(F.Node);R=function(a){var{a,b,c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=0;c=0;d=B.Fields(a);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=e;g=0;while(true){if(!(g<f.$length)){break;}h=((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]);i=S(h);j=i[0];k=i[1];b=b+(j)>>0;c=c+(k)>>0;g++;}$s=-1;return[b,c];}return;}var $f={$blk:R,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,$s};return $f;};$pkg.WordCount=R;S=function(a){var a,b,c,d,e,f,g,h,i,j;b=0;c=0;d=(new AO($stringToRunes(a)));e=d.$length;if(1>e){return[b,c];}f=1;g=1;b=f;c=g;h=(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])<128;i=1;while(true){if(!(i<e)){break;}j=((i<0||i>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+i]);b=b+(1)>>0;if(j>=128){c=c+(1)>>0;h=false;i=i+(1)>>0;continue;}if(j<128===h){i=i+(1)>>0;continue;}c=c+(1)>>0;h=!h;i=i+(1)>>0;}return[b,c];};U=function(a){var a;return D.Contains(a,(new AM($stringToBytes("type=\"doc\""))));};$pkg.IsDocIAL=U;V=function(a){var a,b,c,d;b=a;c=0;while(true){if(!(c<b.$length)){break;}d=((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c]);if("type"===(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])&&"doc"===(1>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+1])){return true;}c++;}return false;};$pkg.IsDocIAL2=V;W=function(a){var{a,b,c,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b="";c=AF(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;b=B.ReplaceAll(b,"\xE2\x80\x8B","");b=B.TrimPrefix(b,"\n");b=B.TrimSuffix(b,"\n");b=F.EscapeHTMLStr(b);$s=-1;return b;}return;}var $f={$blk:W,$c:true,$r,a,b,c,$s};return $f;};$pkg.GetTextMarkTextDataWithoutEscapeSingleQuote=W;X=function(a){var{a,b,c,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b="";c=W(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;b=B.ReplaceAll(b,"'","'");$s=-1;return b;}return;}var $f={$blk:X,$c:true,$r,a,b,c,$s};return $f;};$pkg.GetTextMarkTextData=X;Y=function(a){var a,b;b="";b=AI(a,"data-inline-memo-content");b=B.ReplaceAll(b,"\xE2\x80\x8B","");b=B.ReplaceAll(b,"\n","_esc_newline_");b=F.UnescapeHTMLStr(b);return b;};$pkg.GetTextMarkInlineMemoData=Y;Z=function(a){var a,b,c;b="";c="";b=AI(a,"data-href");b=F.EscapeHTMLStr(b);c=AI(a,"data-title");c=F.EscapeHTMLStr(c);return[b,c];};$pkg.GetTextMarkAData=Z;AA=function(a){var a,b;b="";b=AI(a,"data-content");b=B.ReplaceAll(b,"\n","_esc_newline_");b=F.UnescapeHTMLStr(b);b=B.ReplaceAll(b,"\xE2\x80\x8B","");return b;};$pkg.GetTextMarkInlineMathData=AA;AB=function(a){var a,b,c;b="";c="";b=AI(a,"data-id");c=AI(a,"data-subtype");if(""===c){c="s";}return[b,c];};$pkg.GetTextMarkBlockRefData=AB;AC=function(a){var a,b;b="";b=AI(a,"data-id");return b;};$pkg.GetTextMarkFileAnnotationRefData=AC;AD=function(a,b){var a,b,c;c=a.FirstChild;while(true){if(!(!(AP.nil===c))){break;}if(c.DataAtom===b){return c;}c=c.NextSibling;}return AP.nil;};$pkg.DomChildByType=AD;AE=function(a){var{a,b,c,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:if(AP.nil===a){$s=-1;return AM.nil;}b=new D.Buffer.ptr(AM.nil,0,0);c=F.Render(b,a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}c;$s=-1;return D.ReplaceAll(b.Bytes(),(new AM($stringToBytes("\xE2\x80\x8B"))),AM.nil);}return;}var $f={$blk:AE,$c:true,$r,a,b,c,$s};return $f;};$pkg.DomHTML=AE;AF=function(a){var{a,b,c,d,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=new D.Buffer.ptr(AM.nil,0,0);if(1===a.Type){$s=1;continue;}$s=2;continue;case 1:c=b.WriteString(a.Data);$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}c;$s=-1;return b.String();case 2:d=a.FirstChild;case 4:if(!(!(AP.nil===d))){$s=5;continue;}$r=AG(d,b);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=d.NextSibling;$s=4;continue;case 5:$s=-1;return b.String();}return;}var $f={$blk:AF,$c:true,$r,a,b,c,d,$s};return $f;};$pkg.DomText=AF;AG=function(a,b){var{a,b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:if(AP.nil===a){$s=-1;return;}c=AI(a,"data-render");if("1"===c||"2"===c){$s=-1;return;}if("svg"===a.Namespace){$s=-1;return;}d=false;if((0===a.DataAtom)&&(3===a.Type)){e=a.Parent;if(AP.nil===e){$s=-1;return;}if(!((40708===e.DataAtom))){$s=-1;return;}if(!AH(e)){$s=-1;return;}d=true;}f=a.DataAtom;if(f===(0)){$s=2;continue;}if(f===(514)){$s=3;continue;}$s=4;continue;case 2:if(d){$s=5;continue;}$s=6;continue;case 5:g=b.WriteString("<"+a.Data+">");$s=8;case 8:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=7;continue;case 6:h=b.WriteString(a.Data);$s=9;case 9:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;case 7:$s=4;continue;case 3:i=b.WriteString("\n");$s=10;case 10:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;case 4:case 1:j=a.FirstChild;case 11:if(!(!(AP.nil===j))){$s=12;continue;}$r=AG(j,b);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=j.NextSibling;$s=11;continue;case 12:$s=-1;return;}return;}var $f={$blk:AG,$c:true,$r,a,b,c,d,e,f,g,h,i,j,$s};return $f;};AH=function(a){var a,b;b=AI(a,"data-type");return"search-mark"===b||"virtual-block-ref"===b;};$pkg.IsTempMarkSpan=AH;AI=function(a,b){var a,b,c,d,e;if(AP.nil===a){return"";}c=a.Attr;d=0;while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);if(e.Key===b){return e.Val;}d++;}return"";};$pkg.DomAttrValue=AI;AJ=function(a){var a,b,c,d,e,f;b=false;b=$makeMap($String.keyFor,[]);c=a.Attr;d=0;while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);if(B.HasPrefix(e.Key,"custom-")){f=e.Key;(b||$throwRuntimeError("assignment to entry in nil map")).set($String.keyFor(f),{k:f,v:e.Val});}d++;}if(1>(b?b.size:0)){b=false;return b;}return b;};$pkg.DomCustomAttrs=AJ;AK=function(a){var a,b;b=AM.nil;b=(new AM($stringToBytes(a)));return b;};$pkg.StrToBytes=AK;AL=function(a){var a;return($bytesToString(a));};$pkg.BytesToStr=AL;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=D.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["math/rand"]=(function(){var $pkg={},$init,B,A,F,H,I,K,AE,AM,AN,AO,AQ,AR,AS,AT,AU,AV,E,N,AG,AH,AI,AJ,AK,AL,G,J,L,M,O,W,AF;B=$packages["github.com/gopherjs/gopherjs/nosync"];A=$packages["math"];F=$pkg.rngSource=$newType(0,$kindStruct,"rand.rngSource",true,"math/rand",false,function(tap_,feed_,vec_){this.$val=this;if(arguments.length===0){this.tap=0;this.feed=0;this.vec=AQ.zero();return;}this.tap=tap_;this.feed=feed_;this.vec=vec_;});H=$pkg.Source=$newType(8,$kindInterface,"rand.Source",true,"math/rand",true,null);I=$pkg.Source64=$newType(8,$kindInterface,"rand.Source64",true,"math/rand",true,null);K=$pkg.Rand=$newType(0,$kindStruct,"rand.Rand",true,"math/rand",true,function(src_,s64_,readVal_,readPos_){this.$val=this;if(arguments.length===0){this.src=$ifaceNil;this.s64=$ifaceNil;this.readVal=new $Int64(0,0);this.readPos=0;return;}this.src=src_;this.s64=s64_;this.readVal=readVal_;this.readPos=readPos_;});AE=$pkg.lockedSource=$newType(0,$kindStruct,"rand.lockedSource",true,"math/rand",false,function(lk_,src_){this.$val=this;if(arguments.length===0){this.lk=new B.Mutex.ptr(false);this.src=AM.nil;return;}this.lk=lk_;this.src=src_;});AM=$ptrType(F);AN=$ptrType(AE);AO=$ptrType(K);AQ=$arrayType($Int64,607);AR=$ptrType($Int8);AS=$sliceType($Int);AT=$ptrType($Int64);AU=$funcType([$Int,$Int],[],false);AV=$sliceType($Uint8);G=function(a){var a,b,c,d,e;c=(b=a/44488,(b===b&&b!==1/0&&b!==-1/0)?b>>0:$throwRuntimeError("integer divide by zero"));e=(d=a%44488,d===d?d:$throwRuntimeError("integer divide by zero"));a=($imul(48271,e))-($imul(3399,c))>>0;if(a<0){a=a+(2147483647)>>0;}return a;};F.ptr.prototype.Seed=function(a){var a,b,c,d,e,f,g,h,i,j;b=this;b.tap=0;b.feed=334;a=$div64(a,new $Int64(0,2147483647),true);if((a.$high<0||(a.$high===0&&a.$low<0))){a=(c=new $Int64(0,2147483647),new $Int64(a.$high+c.$high,a.$low+c.$low));}if((a.$high===0&&a.$low===0)){a=new $Int64(0,89482311);}d=(((a.$low+((a.$high>>31)*4294967296))>>0));e=-20;while(true){if(!(e<607)){break;}d=G(d);if(e>=0){f=new $Int64(0,0);f=$shiftLeft64((new $Int64(0,d)),40);d=G(d);f=(g=$shiftLeft64((new $Int64(0,d)),20),new $Int64(f.$high^g.$high,(f.$low^g.$low)>>>0));d=G(d);f=(h=(new $Int64(0,d)),new $Int64(f.$high^h.$high,(f.$low^h.$low)>>>0));f=(i=((e<0||e>=E.length)?($throwRuntimeError("index out of range"),undefined):E[e]),new $Int64(f.$high^i.$high,(f.$low^i.$low)>>>0));(j=b.vec,((e<0||e>=j.length)?($throwRuntimeError("index out of range"),undefined):j[e]=f));}e=e+(1)>>0;}};F.prototype.Seed=function(a){return this.$val.Seed(a);};F.ptr.prototype.Int63=function(){var a,b,c;a=this;return((b=(c=a.Uint64(),new $Uint64(c.$high&2147483647,(c.$low&4294967295)>>>0)),new $Int64(b.$high,b.$low)));};F.prototype.Int63=function(){return this.$val.Int63();};F.ptr.prototype.Uint64=function(){var a,b,c,d,e,f,g,h,i,j;a=this;a.tap=a.tap-(1)>>0;if(a.tap<0){a.tap=a.tap+(607)>>0;}a.feed=a.feed-(1)>>0;if(a.feed<0){a.feed=a.feed+(607)>>0;}h=(b=(c=a.vec,d=a.feed,((d<0||d>=c.length)?($throwRuntimeError("index out of range"),undefined):c[d])),e=(f=a.vec,g=a.tap,((g<0||g>=f.length)?($throwRuntimeError("index out of range"),undefined):f[g])),new $Int64(b.$high+e.$high,b.$low+e.$low));(i=a.vec,j=a.feed,((j<0||j>=i.length)?($throwRuntimeError("index out of range"),undefined):i[j]=h));return(new $Uint64(h.$high,h.$low));};F.prototype.Uint64=function(){return this.$val.Uint64();};J=function(a){var a,b;b=new F.ptr(0,0,AQ.zero());b.Seed(a);return b;};$pkg.NewSource=J;L=function(a){var a,b,c;b=$assertType(a,I,true);c=b[0];return new K.ptr(a,c,new $Int64(0,0),0);};$pkg.New=L;K.ptr.prototype.Seed=function(a){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;c=$assertType(b.src,AN,true);d=c[0];e=c[1];if(e){d.seedPos(a,(b.$ptr_readPos||(b.$ptr_readPos=new AR(function(){return this.$target.readPos;},function($v){this.$target.readPos=$v;},b))));$s=-1;return;}$r=b.src.Seed(a);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.readPos=0;$s=-1;return;}return;}var $f={$blk:K.ptr.prototype.Seed,$c:true,$r,a,b,c,d,e,$s};return $f;};K.prototype.Seed=function(a){return this.$val.Seed(a);};K.ptr.prototype.Int63=function(){var{a,b,c,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;b=a.src.Int63();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;$s=2;case 2:return c;}return;}var $f={$blk:K.ptr.prototype.Int63,$c:true,$r,a,b,c,$s};return $f;};K.prototype.Int63=function(){return this.$val.Int63();};K.ptr.prototype.Uint32=function(){var{a,b,c,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;b=a.Int63();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=(($shiftRightInt64(b,31).$low>>>0));$s=2;case 2:return c;}return;}var $f={$blk:K.ptr.prototype.Uint32,$c:true,$r,a,b,c,$s};return $f;};K.prototype.Uint32=function(){return this.$val.Uint32();};K.ptr.prototype.Uint64=function(){var{a,b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;if(!($interfaceIsEqual(a.s64,$ifaceNil))){$s=1;continue;}$s=2;continue;case 1:b=a.s64.Uint64();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;$s=4;case 4:return c;case 2:f=a.Int63();$s=5;case 5:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}i=a.Int63();$s=6;case 6:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=(d=$shiftRightUint64(((e=f,new $Uint64(e.$high,e.$low))),31),g=$shiftLeft64(((h=i,new $Uint64(h.$high,h.$low))),32),new $Uint64(d.$high|g.$high,(d.$low|g.$low)>>>0));$s=7;case 7:return j;}return;}var $f={$blk:K.ptr.prototype.Uint64,$c:true,$r,a,b,c,d,e,f,g,h,i,j,$s};return $f;};K.prototype.Uint64=function(){return this.$val.Uint64();};K.ptr.prototype.Int31=function(){var{a,b,c,d,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;c=a.Int63();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=(((b=$shiftRightInt64(c,32),b.$low+((b.$high>>31)*4294967296))>>0));$s=2;case 2:return d;}return;}var $f={$blk:K.ptr.prototype.Int31,$c:true,$r,a,b,c,d,$s};return $f;};K.prototype.Int31=function(){return this.$val.Int31();};K.ptr.prototype.Int=function(){var{a,b,c,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;b=a.Int63();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=((b.$low>>>0));$s=-1;return((((c<<1>>>0)>>>1>>>0)>>0));}return;}var $f={$blk:K.ptr.prototype.Int,$c:true,$r,a,b,c,$s};return $f;};K.prototype.Int=function(){return this.$val.Int();};K.ptr.prototype.Int63n=function(a){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;if((a.$high<0||(a.$high===0&&a.$low<=0))){$panic(new $String("invalid argument to Int63n"));}if((c=(d=new $Int64(a.$high-0,a.$low-1),new $Int64(a.$high&d.$high,(a.$low&d.$low)>>>0)),(c.$high===0&&c.$low===0))){$s=1;continue;}$s=2;continue;case 1:f=b.Int63();$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}h=(e=f,g=new $Int64(a.$high-0,a.$low-1),new $Int64(e.$high&g.$high,(e.$low&g.$low)>>>0));$s=4;case 4:return h;case 2:k=((i=(j=$div64(new $Uint64(2147483648,0),(new $Uint64(a.$high,a.$low)),true),new $Uint64(2147483647-j.$high,4294967295-j.$low)),new $Int64(i.$high,i.$low)));l=b.Int63();$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;case 6:if(!((m.$high>k.$high||(m.$high===k.$high&&m.$low>k.$low)))){$s=7;continue;}n=b.Int63();$s=8;case 8:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;$s=6;continue;case 7:$s=-1;return $div64(m,a,true);}return;}var $f={$blk:K.ptr.prototype.Int63n,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,$s};return $f;};K.prototype.Int63n=function(a){return this.$val.Int63n(a);};K.ptr.prototype.Int31n=function(a){var{a,b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;if(a<=0){$panic(new $String("invalid argument to Int31n"));}if((a&((a-1>>0)))===0){$s=1;continue;}$s=2;continue;case 1:c=b.Int31();$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c&((a-1>>0));$s=4;case 4:return d;case 2:f=(((2147483647-(e=2147483648%((a>>>0)),e===e?e:$throwRuntimeError("integer divide by zero"))>>>0)>>0));g=b.Int31();$s=5;case 5:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;case 6:if(!(h>f)){$s=7;continue;}i=b.Int31();$s=8;case 8:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;$s=6;continue;case 7:$s=-1;return(j=h%a,j===j?j:$throwRuntimeError("integer divide by zero"));}return;}var $f={$blk:K.ptr.prototype.Int31n,$c:true,$r,a,b,c,d,e,f,g,h,i,j,$s};return $f;};K.prototype.Int31n=function(a){return this.$val.Int31n(a);};K.ptr.prototype.int31n=function(a){var{a,b,c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;c=b.Uint32();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=$mul64((new $Uint64(0,d)),(new $Uint64(0,a)));f=((e.$low>>>0));if(f<((a>>>0))){$s=2;continue;}$s=3;continue;case 2:h=(g=((-a>>>0))%((a>>>0)),g===g?g:$throwRuntimeError("integer divide by zero"));case 4:if(!(f<h)){$s=5;continue;}i=b.Uint32();$s=6;case 6:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}d=i;e=$mul64((new $Uint64(0,d)),(new $Uint64(0,a)));f=((e.$low>>>0));$s=4;continue;case 5:case 3:$s=-1;return(($shiftRightUint64(e,32).$low>>0));}return;}var $f={$blk:K.ptr.prototype.int31n,$c:true,$r,a,b,c,d,e,f,g,h,i,$s};return $f;};K.prototype.int31n=function(a){return this.$val.int31n(a);};K.ptr.prototype.Intn=function(a){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;if(a<=0){$panic(new $String("invalid argument to Intn"));}if(a<=2147483647){$s=1;continue;}$s=2;continue;case 1:c=b.Int31n(((a>>0)));$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=((c>>0));$s=4;case 4:return d;case 2:f=b.Int63n((new $Int64(0,a)));$s=5;case 5:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=(((e=f,e.$low+((e.$high>>31)*4294967296))>>0));$s=6;case 6:return g;}return;}var $f={$blk:K.ptr.prototype.Intn,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};K.prototype.Intn=function(a){return this.$val.Intn(a);};K.ptr.prototype.Float64=function(){var{a,b,c,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;case 1:b=a.Int63();$s=2;case 2:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=($flatten64(b))/9.223372036854776e+18;if(c===1){$s=3;continue;}$s=4;continue;case 3:$s=1;continue;case 4:$s=-1;return c;}return;}var $f={$blk:K.ptr.prototype.Float64,$c:true,$r,a,b,c,$s};return $f;};K.prototype.Float64=function(){return this.$val.Float64();};K.ptr.prototype.Float32=function(){var{a,b,c,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;case 1:b=a.Float64();$s=2;case 2:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=($fround(b));if(c===1){$s=3;continue;}$s=4;continue;case 3:$s=1;continue;case 4:$s=-1;return c;}return;}var $f={$blk:K.ptr.prototype.Float32,$c:true,$r,a,b,c,$s};return $f;};K.prototype.Float32=function(){return this.$val.Float32();};K.ptr.prototype.Perm=function(a){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;c=$makeSlice(AS,a);d=0;case 1:if(!(d<a)){$s=2;continue;}e=b.Intn(d+1>>0);$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]=((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]));((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]=d);d=d+(1)>>0;$s=1;continue;case 2:$s=-1;return c;}return;}var $f={$blk:K.ptr.prototype.Perm,$c:true,$r,a,b,c,d,e,f,$s};return $f;};K.prototype.Perm=function(a){return this.$val.Perm(a);};K.ptr.prototype.Shuffle=function(a,b){var{a,b,c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(a<0){$panic(new $String("invalid argument to Shuffle"));}d=a-1>>0;case 1:if(!(d>2147483646)){$s=2;continue;}f=c.Int63n((new $Int64(0,(d+1>>0))));$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=(((e=f,e.$low+((e.$high>>31)*4294967296))>>0));$r=b(d,g);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=d-(1)>>0;$s=1;continue;case 2:case 5:if(!(d>0)){$s=6;continue;}h=c.int31n((((d+1>>0)>>0)));$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=((h>>0));$r=b(d,i);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=d-(1)>>0;$s=5;continue;case 6:$s=-1;return;}return;}var $f={$blk:K.ptr.prototype.Shuffle,$c:true,$r,a,b,c,d,e,f,g,h,i,$s};return $f;};K.prototype.Shuffle=function(a,b){return this.$val.Shuffle(a,b);};K.ptr.prototype.Read=function(a){var{a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;e=$assertType(d.src,AN,true);f=e[0];g=e[1];if(g){$s=1;continue;}$s=2;continue;case 1:i=f.read(a,(d.$ptr_readVal||(d.$ptr_readVal=new AT(function(){return this.$target.readVal;},function($v){this.$target.readVal=$v;},d))),(d.$ptr_readPos||(d.$ptr_readPos=new AR(function(){return this.$target.readPos;},function($v){this.$target.readPos=$v;},d))));$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;b=h[0];c=h[1];j=[b,c];$s=4;case 4:return j;case 2:l=M(a,d.src,(d.$ptr_readVal||(d.$ptr_readVal=new AT(function(){return this.$target.readVal;},function($v){this.$target.readVal=$v;},d))),(d.$ptr_readPos||(d.$ptr_readPos=new AR(function(){return this.$target.readPos;},function($v){this.$target.readPos=$v;},d))));$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;b=k[0];c=k[1];m=[b,c];$s=6;case 6:return m;}return;}var $f={$blk:K.ptr.prototype.Read,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,$s};return $f;};K.prototype.Read=function(a){return this.$val.Read(a);};M=function(a,b,c,d){var{a,b,c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{a,b,c,d});$s=$s||0;s:while(true){switch($s){case 0:e=0;f=$ifaceNil;g=d.$get();h=c.$get();i=$assertType(b,AM,true);j=i[0];e=0;case 1:if(!(e<a.$length)){$s=2;continue;}if(g===0){$s=3;continue;}$s=4;continue;case 3:if(!(j===AM.nil)){$s=5;continue;}$s=6;continue;case 5:h=j.Int63();$s=7;continue;case 6:k=b.Int63();$s=8;case 8:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}h=k;case 7:g=7;case 4:((e<0||e>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+e]=((h.$low<<24>>>24)));h=$shiftRightInt64(h,(8));g=g-(1)<<24>>24;e=e+(1)>>0;$s=1;continue;case 2:d.$set(g);c.$set(h);$s=-1;return[e,f];}return;}var $f={$blk:M,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,$s};return $f;};O=function(a){var{a,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:$r=N.Seed(a);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:O,$c:true,$r,a,$s};return $f;};$pkg.Seed=O;W=function(a){var{a,b,c,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=N.Intn(a);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;$s=2;case 2:return c;}return;}var $f={$blk:W,$c:true,$r,a,b,c,$s};return $f;};$pkg.Intn=W;AE.ptr.prototype.Int63=function(){var a,b;a=new $Int64(0,0);b=this;b.lk.Lock();a=b.src.Int63();b.lk.Unlock();return a;};AE.prototype.Int63=function(){return this.$val.Int63();};AE.ptr.prototype.Uint64=function(){var a,b;a=new $Uint64(0,0);b=this;b.lk.Lock();a=b.src.Uint64();b.lk.Unlock();return a;};AE.prototype.Uint64=function(){return this.$val.Uint64();};AE.ptr.prototype.Seed=function(a){var a,b;b=this;b.lk.Lock();b.src.Seed(a);b.lk.Unlock();};AE.prototype.Seed=function(a){return this.$val.Seed(a);};AE.ptr.prototype.seedPos=function(a,b){var a,b,c;c=this;c.lk.Lock();c.src.Seed(a);b.$set(0);c.lk.Unlock();};AE.prototype.seedPos=function(a,b){return this.$val.seedPos(a,b);};AE.ptr.prototype.read=function(a,b,c){var{a,b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{a,b,c});$s=$s||0;s:while(true){switch($s){case 0:d=0;e=$ifaceNil;f=this;f.lk.Lock();h=M(a,f.src,b,c);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;d=g[0];e=g[1];f.lk.Unlock();$s=-1;return[d,e];}return;}var $f={$blk:AE.ptr.prototype.read,$c:true,$r,a,b,c,d,e,f,g,h,$s};return $f;};AE.prototype.read=function(a,b,c){return this.$val.read(a,b,c);};AF=function(a){var a;if(a<0){return((-a>>>0));}return((a>>>0));};K.ptr.prototype.NormFloat64=function(){var{a,b,c,d,e,f,g,h,i,j,k,l,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;case 1:b=a.Uint32();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=((b>>0));d=c&127;e=(c)*(((d<0||d>=AH.length)?($throwRuntimeError("index out of range"),undefined):AH[d]));if(AF(c)<((d<0||d>=AG.length)?($throwRuntimeError("index out of range"),undefined):AG[d])){$s=-1;return e;}if(d===0){$s=4;continue;}$s=5;continue;case 4:case 6:f=a.Float64();$s=8;case 8:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=A.Log(f);$s=9;case 9:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}e=-g*0.29047645161474317;h=a.Float64();$s=10;case 10:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=A.Log(h);$s=11;case 11:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=-i;if(j+j>=e*e){$s=7;continue;}$s=6;continue;case 7:if(c>0){$s=-1;return 3.442619855899+e;}$s=-1;return-3.442619855899-e;case 5:k=a.Float64();$s=14;case 14:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if($fround(((d<0||d>=AI.length)?($throwRuntimeError("index out of range"),undefined):AI[d])+$fround(($fround(k))*($fround((l=d-1>>0,((l<0||l>=AI.length)?($throwRuntimeError("index out of range"),undefined):AI[l]))-((d<0||d>=AI.length)?($throwRuntimeError("index out of range"),undefined):AI[d])))))<($fround(A.Exp(-0.5*e*e)))){$s=12;continue;}$s=13;continue;case 12:$s=-1;return e;case 13:$s=1;continue;case 2:$s=-1;return 0;}return;}var $f={$blk:K.ptr.prototype.NormFloat64,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,$s};return $f;};K.prototype.NormFloat64=function(){return this.$val.NormFloat64();};K.ptr.prototype.ExpFloat64=function(){var{a,b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;case 1:b=a.Uint32();$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;d=(c&255)>>>0;e=(c)*(((d<0||d>=AK.length)?($throwRuntimeError("index out of range"),undefined):AK[d]));if(c<((d<0||d>=AJ.length)?($throwRuntimeError("index out of range"),undefined):AJ[d])){$s=-1;return e;}if(d===0){$s=4;continue;}$s=5;continue;case 4:f=a.Float64();$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=A.Log(f);$s=7;case 7:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=7.69711747013105-g;$s=8;case 8:return h;case 5:i=a.Float64();$s=11;case 11:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}if($fround(((d<0||d>=AL.length)?($throwRuntimeError("index out of range"),undefined):AL[d])+$fround(($fround(i))*($fround((j=d-1>>>0,((j<0||j>=AL.length)?($throwRuntimeError("index out of range"),undefined):AL[j]))-((d<0||d>=AL.length)?($throwRuntimeError("index out of range"),undefined):AL[d])))))<($fround(A.Exp(-e)))){$s=9;continue;}$s=10;continue;case 9:$s=-1;return e;case 10:$s=1;continue;case 2:$s=-1;return 0;}return;}var $f={$blk:K.ptr.prototype.ExpFloat64,$c:true,$r,a,b,c,d,e,f,g,h,i,j,$s};return $f;};K.prototype.ExpFloat64=function(){return this.$val.ExpFloat64();};AM.methods=[{prop:"Seed",name:"Seed",pkg:"",typ:$funcType([$Int64],[],false)},{prop:"Int63",name:"Int63",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],false)}];AO.methods=[{prop:"Seed",name:"Seed",pkg:"",typ:$funcType([$Int64],[],false)},{prop:"Int63",name:"Int63",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Uint32",name:"Uint32",pkg:"",typ:$funcType([],[$Uint32],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"Int31",name:"Int31",pkg:"",typ:$funcType([],[$Int32],false)},{prop:"Int",name:"Int",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Int63n",name:"Int63n",pkg:"",typ:$funcType([$Int64],[$Int64],false)},{prop:"Int31n",name:"Int31n",pkg:"",typ:$funcType([$Int32],[$Int32],false)},{prop:"int31n",name:"int31n",pkg:"math/rand",typ:$funcType([$Int32],[$Int32],false)},{prop:"Intn",name:"Intn",pkg:"",typ:$funcType([$Int],[$Int],false)},{prop:"Float64",name:"Float64",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"Float32",name:"Float32",pkg:"",typ:$funcType([],[$Float32],false)},{prop:"Perm",name:"Perm",pkg:"",typ:$funcType([$Int],[AS],false)},{prop:"Shuffle",name:"Shuffle",pkg:"",typ:$funcType([$Int,AU],[],false)},{prop:"Read",name:"Read",pkg:"",typ:$funcType([AV],[$Int,$error],false)},{prop:"NormFloat64",name:"NormFloat64",pkg:"",typ:$funcType([],[$Float64],false)},{prop:"ExpFloat64",name:"ExpFloat64",pkg:"",typ:$funcType([],[$Float64],false)}];AN.methods=[{prop:"Int63",name:"Int63",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],false)},{prop:"Seed",name:"Seed",pkg:"",typ:$funcType([$Int64],[],false)},{prop:"seedPos",name:"seedPos",pkg:"math/rand",typ:$funcType([$Int64,AR],[],false)},{prop:"read",name:"read",pkg:"math/rand",typ:$funcType([AV,AT,AR],[$Int,$error],false)}];F.init("math/rand",[{prop:"tap",name:"tap",embedded:false,exported:false,typ:$Int,tag:""},{prop:"feed",name:"feed",embedded:false,exported:false,typ:$Int,tag:""},{prop:"vec",name:"vec",embedded:false,exported:false,typ:AQ,tag:""}]);H.init([{prop:"Int63",name:"Int63",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Seed",name:"Seed",pkg:"",typ:$funcType([$Int64],[],false)}]);I.init([{prop:"Int63",name:"Int63",pkg:"",typ:$funcType([],[$Int64],false)},{prop:"Seed",name:"Seed",pkg:"",typ:$funcType([$Int64],[],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([],[$Uint64],false)}]);K.init("math/rand",[{prop:"src",name:"src",embedded:false,exported:false,typ:H,tag:""},{prop:"s64",name:"s64",embedded:false,exported:false,typ:I,tag:""},{prop:"readVal",name:"readVal",embedded:false,exported:false,typ:$Int64,tag:""},{prop:"readPos",name:"readPos",embedded:false,exported:false,typ:$Int8,tag:""}]);AE.init("math/rand",[{prop:"lk",name:"lk",embedded:false,exported:false,typ:B.Mutex,tag:""},{prop:"src",name:"src",embedded:false,exported:false,typ:AM,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=B.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}E=$toNativeArray($kindInt64,[new $Int64(-973649357,3952672746),new $Int64(-1065661887,3130416987),new $Int64(324977939,3414273807),new $Int64(1241840476,2806224363),new $Int64(-1477934308,1997590414),new $Int64(2103305448,2402795971),new $Int64(1663160183,1140819369),new $Int64(1120601685,1788868961),new $Int64(1848035537,1089001426),new $Int64(1235702047,873593504),new $Int64(1911387977,581324885),new $Int64(-1654874170,1609182556),new $Int64(1069394745,1241596776),new $Int64(1895445337,1771189259),new $Int64(-1374618802,3467012610),new $Int64(-140526423,2344407434),new $Int64(-1745367887,782467244),new $Int64(26335124,3404933915),new $Int64(1063924276,618867887),new $Int64(-968700782,520164395),new $Int64(-1591572833,1341358184),new $Int64(-1515085039,665794848),new $Int64(1527227641,3183648150),new $Int64(1781176124,696329606),new $Int64(1789146075,4151988961),new $Int64(-2087444114,998951326),new $Int64(-612324923,1364957564),new $Int64(63173359,4090230633),new $Int64(-1498029007,4009697548),new $Int64(248009524,2569622517),new $Int64(778703922,3742421481),new $Int64(-1109106023,1506914633),new $Int64(1738099768,1983412561),new $Int64(236311649,1436266083),new $Int64(-1111517500,3922894967),new $Int64(-1336974714,1792680179),new $Int64(563141142,1188796351),new $Int64(1349617468,405968250),new $Int64(1044074554,433754187),new $Int64(870549669,4073162024),new $Int64(-1094251604,433121399),new $Int64(2451824,4162580594),new $Int64(-137262572,4132415622),new $Int64(-1536231048,3033822028),new $Int64(2016407895,824682382),new $Int64(2366218,3583765414),new $Int64(-624604839,535386927),new $Int64(1637219058,2286693689),new $Int64(1453075389,2968466525),new $Int64(193683513,1351410206),new $Int64(-283806096,1412813499),new $Int64(492736522,4126267639),new $Int64(512765208,2105529399),new $Int64(2132966268,2413882233),new $Int64(947457634,32226200),new $Int64(1149341356,2032329073),new $Int64(106485445,1356518208),new $Int64(-2067810156,3430061722),new $Int64(-1484435135,3820169661),new $Int64(-1665985194,2981816134),new $Int64(1017155588,4184371017),new $Int64(206574701,2119206761),new $Int64(-852109057,2472200560),new $Int64(-560457548,2853524696),new $Int64(1307803389,1681119904),new $Int64(-174986835,95608918),new $Int64(392686347,3690479145),new $Int64(-1205570926,1397922290),new $Int64(-1159314025,1516129515),new $Int64(-320178155,1547420459),new $Int64(1311333971,1470949486),new $Int64(-1953469798,1336785672),new $Int64(-45086614,4131677129),new $Int64(-1392278100,4246329084),new $Int64(-1142500187,3788585631),new $Int64(-66478285,3080389532),new $Int64(-646438364,2215402037),new $Int64(391002300,1171593935),new $Int64(1408774047,1423855166),new $Int64(-519177718,2276716302),new $Int64(-368453140,2068027241),new $Int64(1369359303,3427553297),new $Int64(189241615,3289637845),new $Int64(1057480830,3486407650),new $Int64(-1512910664,3071877822),new $Int64(1159653919,3363620705),new $Int64(-934256930,4159821533),new $Int64(-76621938,1894661),new $Int64(-674493898,1156868282),new $Int64(348271067,776219088),new $Int64(-501428838,2425634259),new $Int64(1716021749,680510161),new $Int64(-574263456,1310101429),new $Int64(1095885995,2964454134),new $Int64(-325695512,3467098407),new $Int64(1990672920,2109628894),new $Int64(-2139648704,1232604732),new $Int64(-1838070714,3261916179),new $Int64(1699175360,434597899),new $Int64(235436061,1624796439),new $Int64(-1626402839,3589632480),new $Int64(1198416575,864579159),new $Int64(-1938748161,1380889830),new $Int64(619206309,2654509477),new $Int64(1419738251,1468209306),new $Int64(-1744284772,100794388),new $Int64(-1191421458,2991674471),new $Int64(-208666741,2224662036),new $Int64(-173659161,977097250),new $Int64(1351320195,726419512),new $Int64(-183459897,1747974366),new $Int64(-753095183,1556430604),new $Int64(-1049492215,1080776742),new $Int64(-385846958,280794874),new $Int64(117767733,919835643),new $Int64(-967009426,3434019658),new $Int64(-1951414480,2461941785),new $Int64(133215641,3615001066),new $Int64(417204809,3103414427),new $Int64(790056561,3380809712),new $Int64(-1267681408,2724693469),new $Int64(547796833,598827710),new $Int64(-1846559452,3452273442),new $Int64(-75778224,649274915),new $Int64(-801301329,2585724112),new $Int64(-1510934263,3165579553),new $Int64(1185578221,2635894283),new $Int64(-52910178,2053289721),new $Int64(985976581,3169337108),new $Int64(1170569632,144717764),new $Int64(1079216270,1383666384),new $Int64(-124804942,681540375),new $Int64(1375448925,537050586),new $Int64(-1964768344,315246468),new $Int64(226402871,849323088),new $Int64(-885062465,45543944),new $Int64(-946445250,2319052083),new $Int64(-40708194,3613090841),new $Int64(560472520,2992171180),new $Int64(-381863169,2068244785),new $Int64(917538188,4239862634),new $Int64(-1369555809,3892253031),new $Int64(720683925,958186149),new $Int64(-423297785,1877702262),new $Int64(1357886971,837674867),new $Int64(1837048883,1507589294),new $Int64(1905518400,873336795),new $Int64(-1879761037,2764496274),new $Int64(-1806480530,4196182374),new $Int64(-1066765755,550964545),new $Int64(818747069,420611474),new $Int64(-1924830376,204265180),new $Int64(1549974541,1787046383),new $Int64(1215581865,3102292318),new $Int64(418321538,1552199393),new $Int64(1243493047,980542004),new $Int64(267284263,3293718720),new $Int64(1179528763,3771917473),new $Int64(599484404,2195808264),new $Int64(252818753,3894702887),new $Int64(-1367475956,2099949527),new $Int64(1424094358,338442522),new $Int64(490737398,637158004),new $Int64(-1727621530,281976339),new $Int64(574970164,3619802330),new $Int64(-431930823,3084554784),new $Int64(-1264611183,4129772886),new $Int64(-2104399043,1680378557),new $Int64(-1621962591,3339087776),new $Int64(1680500332,4220317857),new $Int64(-1935828963,2959322499),new $Int64(1675600481,1488354890),new $Int64(-834863562,3958162143),new $Int64(-1226511573,2773705983),new $Int64(1876039582,225908689),new $Int64(-1183735113,908216283),new $Int64(-605696219,3574646075),new $Int64(-1827723091,1936937569),new $Int64(1519770881,75492235),new $Int64(816689472,1935193178),new $Int64(2142521206,2018250883),new $Int64(455141620,3943126022),new $Int64(-601399488,3066544345),new $Int64(1932392669,2793082663),new $Int64(-1239009361,3297036421),new $Int64(1640597065,2206987825),new $Int64(-553246738,807894872),new $Int64(-1781325307,766252117),new $Int64(2060649606,3833114345),new $Int64(845619743,1255067973),new $Int64(1201145605,741697208),new $Int64(-1476242608,2810093753),new $Int64(1109032642,4229340371),new $Int64(1462188720,1361684224),new $Int64(-1159399429,1906263026),new $Int64(475781207,3904421704),new $Int64(-623537128,1769075545),new $Int64(1062308525,2621599764),new $Int64(1279509432,3431891480),new $Int64(-1742751146,1871896503),new $Int64(128756421,1412808876),new $Int64(1605404688,952876175),new $Int64(-230443691,1824438899),new $Int64(1662295856,1005035476),new $Int64(-156574141,527508597),new $Int64(1288873303,3066806859),new $Int64(565995893,3244940914),new $Int64(-889746188,209092916),new $Int64(-247669406,1242699167),new $Int64(-713830396,456723774),new $Int64(1776978905,1001252870),new $Int64(1468772157,2026725874),new $Int64(857254202,2137562569),new $Int64(765939740,3183366709),new $Int64(1533887628,2612072960),new $Int64(56977098,1727148468),new $Int64(-1197583895,3803658212),new $Int64(1883670356,479946959),new $Int64(685713571,1562982345),new $Int64(-1946242443,1766109365),new $Int64(700596547,3257093788),new $Int64(-184714929,2365720207),new $Int64(93384808,3742754173),new $Int64(-458385235,2878193673),new $Int64(1096135042,2174002182),new $Int64(-834260953,3573511231),new $Int64(-754572527,1760299077),new $Int64(-1375627191,2260779833),new $Int64(-866019274,1452805722),new $Int64(-1229671918,2940011802),new $Int64(1890251082,1886183802),new $Int64(893897673,2514369088),new $Int64(1644345561,3924317791),new $Int64(-1974867432,500935732),new $Int64(1403501753,676580929),new $Int64(-1565912283,1184984890),new $Int64(-691968413,1271474274),new $Int64(-1828754738,3163791473),new $Int64(2051027584,2842487377),new $Int64(1511537551,2170968612),new $Int64(573262976,3535856740),new $Int64(-2053227187,1488599718),new $Int64(-1180531831,3408913763),new $Int64(-2086531912,2501050084),new $Int64(-875130448,1639124157),new $Int64(-2009482504,4088176393),new $Int64(1574896563,3989947576),new $Int64(-165243708,3414355209),new $Int64(-792329287,2275136352),new $Int64(-2057774345,2151835223),new $Int64(-931144933,1654534827),new $Int64(-679921451,377892833),new $Int64(-482716010,660204544),new $Int64(85706799,390828249),new $Int64(-1422172693,3402783878),new $Int64(-1468634160,3717936603),new $Int64(1113532086,2211058823),new $Int64(1564224320,2692150867),new $Int64(1952770442,1928910388),new $Int64(788716862,3931011137),new $Int64(1083670504,1112701047),new $Int64(-68150572,2452299106),new $Int64(-896164822,2337204777),new $Int64(1774877857,273889282),new $Int64(1798719843,1462008793),new $Int64(2138834788,1554494002),new $Int64(-1194967131,182675323),new $Int64(-1598554764,1882802136),new $Int64(589279648,3700220025),new $Int64(381039426,3083431543),new $Int64(-851859191,3622207527),new $Int64(338126939,432729309),new $Int64(-1667470126,2391914317),new $Int64(-1849558151,235747924),new $Int64(2120733629,3088823825),new $Int64(-745079795,2314658321),new $Int64(1165929723,2957634338),new $Int64(501323675,4117056981),new $Int64(1564699815,1482500298),new $Int64(-740826490,840489337),new $Int64(799522364,3483178565),new $Int64(532129761,2074004656),new $Int64(724246478,3643392642),new $Int64(-665153481,1583624461),new $Int64(-885822954,287473085),new $Int64(1667835381,3136843981),new $Int64(1138806821,1266970974),new $Int64(135185781,1998688839),new $Int64(392094735,1492900209),new $Int64(1031326774,1538112737),new $Int64(-2070568842,2207265429),new $Int64(-1886797613,963263315),new $Int64(1671145500,2295892134),new $Int64(1068469660,2002560897),new $Int64(-356250305,1369254035),new $Int64(33436120,3353312708),new $Int64(57507843,947771099),new $Int64(-1945755145,1747061399),new $Int64(1507240140,2047354631),new $Int64(720000810,4165367136),new $Int64(479265078,3388864963),new $Int64(-952181250,286492130),new $Int64(2045622690,2795735007),new $Int64(-715730566,3703961339),new $Int64(-148436487,1797825479),new $Int64(1429039600,1116589674),new $Int64(-1665420098,2593309206),new $Int64(1329049334,3404995677),new $Int64(-750579440,3453462936),new $Int64(1014767077,3016498634),new $Int64(75698599,1650371545),new $Int64(1592007860,212344364),new $Int64(1127766888,3843932156),new $Int64(-748019856,3573129983),new $Int64(-890581831,665897820),new $Int64(1071492673,1675628772),new $Int64(243225682,2831752928),new $Int64(2120298836,1486294219),new $Int64(-1954407413,268782709),new $Int64(-1002123503,4186179080),new $Int64(624342951,1613720397),new $Int64(857179861,2703686015),new $Int64(-911618704,2205342611),new $Int64(-672703993,1411666394),new $Int64(-1528454899,677744900),new $Int64(-1876628533,4172867247),new $Int64(135494707,2163418403),new $Int64(849547544,2841526879),new $Int64(-1117516959,1082141470),new $Int64(-1770111792,4046134367),new $Int64(51415528,2142943655),new $Int64(-249824333,3124627521),new $Int64(998228909,219992939),new $Int64(-1078790951,1756846531),new $Int64(1283749206,1225118210),new $Int64(-525858006,1647770243),new $Int64(-2035959705,444807907),new $Int64(2036369448,3952076173),new $Int64(53201823,1461839639),new $Int64(315761893,3699250910),new $Int64(702974850,1373688981),new $Int64(734022261,147523747),new $Int64(-2047330906,1211276581),new $Int64(1294440951,2548832680),new $Int64(1144696256,1995631888),new $Int64(-1992983070,2011457303),new $Int64(-1351022674,3057425772),new $Int64(667839456,81484597),new $Int64(-1681980888,3646681560),new $Int64(-1372462725,635548515),new $Int64(602489502,2508044581),new $Int64(-1794220117,1014917157),new $Int64(719992433,3214891315),new $Int64(-1294799037,959582252),new $Int64(226415134,3347040449),new $Int64(-362868096,4102971975),new $Int64(397887437,4078022210),new $Int64(-536803826,2851767182),new $Int64(-1398321012,1540160644),new $Int64(-1549098876,1057290595),new $Int64(-112592988,3907769253),new $Int64(579300318,4248952684),new $Int64(-1054576049,132554364),new $Int64(-1085862414,1029351092),new $Int64(697840928,2583007416),new $Int64(298619124,1486185789),new $Int64(55905697,2871589073),new $Int64(2017643612,723203291),new $Int64(146250550,2494333952),new $Int64(-1082993397,2230939180),new $Int64(-1804568072,3943232912),new $Int64(1768732449,2181367922),new $Int64(-729261111,2889274791),new $Int64(1824032949,2046728161),new $Int64(1653899792,1376052477),new $Int64(1022327048,381236993),new $Int64(-1113097690,3188942166),new $Int64(-74480109,350070824),new $Int64(144881592,61758415),new $Int64(-741824226,3492950336),new $Int64(-2030042720,3093818430),new $Int64(-453590535,2962480613),new $Int64(-1912050708,3154871160),new $Int64(-1636478569,3228564679),new $Int64(610731502,888276216),new $Int64(-946702974,3574998604),new $Int64(-1277068380,1967526716),new $Int64(-1556147941,1554691298),new $Int64(-1573024234,339944798),new $Int64(1223764147,1154515356),new $Int64(1825645307,967516237),new $Int64(1546195135,596588202),new $Int64(-1867600880,3764362170),new $Int64(-1655392592,266611402),new $Int64(-393255880,2047856075),new $Int64(-1000726433,21444105),new $Int64(-949424754,3065563181),new $Int64(-232418803,1140663212),new $Int64(633187674,2323741028),new $Int64(2126290159,3103873707),new $Int64(1008658319,2766828349),new $Int64(-485587503,1970872996),new $Int64(1628585413,3766615585),new $Int64(-595148528,2036813414),new $Int64(-1994877121,3105536507),new $Int64(13954645,3396176938),new $Int64(-721402003,1377154485),new $Int64(-61839181,3807014186),new $Int64(543009040,3710110597),new $Int64(-1751425519,916420443),new $Int64(734556788,2103831255),new $Int64(-1766161494,717331943),new $Int64(-1574598896,3550505941),new $Int64(45939673,378749927),new $Int64(-1997615719,611017331),new $Int64(592130075,758907650),new $Int64(1012992349,154266815),new $Int64(-1040454942,1407468696),new $Int64(-1678191250,970098704),new $Int64(-285057486,1971660656),new $Int64(998365243,3332747885),new $Int64(1947089649,1935189867),new $Int64(1510248801,203520055),new $Int64(-1305165746,3916463034),new $Int64(-388598655,3474113316),new $Int64(1036101639,316544223),new $Int64(-1773744891,1650844677),new $Int64(-907191419,4267565603),new $Int64(-1070275024,2501167616),new $Int64(-1520651863,3929401789),new $Int64(-2091360852,337170252),new $Int64(-960502090,2061966842),new $Int64(-304190848,2508461464),new $Int64(-1941471116,2791377107),new $Int64(1240791848,1227227588),new $Int64(1813978778,1709681848),new $Int64(1153692192,3768820575),new $Int64(-1002297449,2887126398),new $Int64(-1447111334,296561685),new $Int64(700300844,3729960077),new $Int64(-1572311344,372833036),new $Int64(2078875613,2409779288),new $Int64(1829161290,555274064),new $Int64(-1105595719,4239804901),new $Int64(1839403216,3723486978),new $Int64(-1649093095,2145871984),new $Int64(-1582765715,3565480803),new $Int64(-1568653827,2197313814),new $Int64(974785092,3613674566),new $Int64(438638731,3042093666),new $Int64(-96556264,3324034321),new $Int64(869420878,3708873369),new $Int64(946682149,1698090092),new $Int64(1618900382,4213940712),new $Int64(-1843479747,2087477361),new $Int64(-1766167800,2407950639),new $Int64(-1296225558,3942568569),new $Int64(-1223900450,4088074412),new $Int64(723260036,2964773675),new $Int64(-673921829,1539178386),new $Int64(1062961552,2694849566),new $Int64(460977733,2120273838),new $Int64(-1604570740,2484608657),new $Int64(880846449,2956190677),new $Int64(1970902366,4223313749),new $Int64(662161910,3502682327),new $Int64(705634754,4133891139),new $Int64(-1031359300,1166449596),new $Int64(1038247601,3362705993),new $Int64(93734798,3892921029),new $Int64(1876124043,786869787),new $Int64(1057490746,1046342263),new $Int64(242763728,493777327),new $Int64(-853573201,3304827646),new $Int64(616460742,125356352),new $Int64(499300063,74094113),new $Int64(-795586925,2500816079),new $Int64(-490248444,514015239),new $Int64(1377565129,543520454),new $Int64(-2039776725,3614531153),new $Int64(2056746300,2356753985),new $Int64(1390062617,2018141668),new $Int64(131272971,2087974891),new $Int64(-1502927041,3166972343),new $Int64(372256200,1517638666),new $Int64(-935275664,173466846),new $Int64(-695774461,4241513471),new $Int64(-1413550842,2783126920),new $Int64(1972004134,4167264826),new $Int64(29260506,3907395640),new $Int64(-910901561,1539634186),new $Int64(-595957298,178241987),new $Int64(-113277636,182168164),new $Int64(-1102530459,2386154934),new $Int64(1379126408,4077374341),new $Int64(-2114679722,1732699140),new $Int64(-421057745,1041306002),new $Int64(1860414813,2068001749),new $Int64(1005320202,3208962910),new $Int64(844054010,697710380),new $Int64(-1509359403,2228431183),new $Int64(-810313977,3554678728),new $Int64(-750989047,173470263),new $Int64(-85886265,3848297795),new $Int64(-926936977,246236185),new $Int64(-1984190461,2066374846),new $Int64(1771673660,312890749),new $Int64(703378057,3573310289),new $Int64(-598851901,143166754),new $Int64(613554316,2081511079),new $Int64(1197802104,486038032),new $Int64(-1906483789,2982218564),new $Int64(364901986,1000939191),new $Int64(1902782651,2750454885),new $Int64(-671844857,3375313137),new $Int64(-1643868040,881302957),new $Int64(-1508784745,2514186393),new $Int64(-1703622845,360024739),new $Int64(1399671872,292500025),new $Int64(1381210821,2276300752),new $Int64(521803381,4069087683),new $Int64(-1938982667,1637778212),new $Int64(720490469,1676670893),new $Int64(1067262482,3855174429),new $Int64(2114075974,2067248671),new $Int64(-89426259,2884561259),new $Int64(-805741095,2456511185),new $Int64(983726246,561175414),new $Int64(-1719489563,432588903),new $Int64(885133709,4059399550),new $Int64(-93096266,1075014784),new $Int64(-1733832628,2728058415),new $Int64(1839142064,1299703678),new $Int64(1262333188,2347583393),new $Int64(1285481956,2468164145),new $Int64(-1158354011,1140014346),new $Int64(2033889184,1936972070),new $Int64(-1737578993,3870530098),new $Int64(-484494257,1717789158),new $Int64(-232997156,1153452491),new $Int64(-990424416,3948827651),new $Int64(-1357145630,2101413152),new $Int64(1495744672,3854091229),new $Int64(83644069,4215565463),new $Int64(-1385277313,1202710438),new $Int64(-564909037,2072216740),new $Int64(705690639,2066751068),new $Int64(-2113583312,173902580),new $Int64(-741983806,142459001),new $Int64(172391592,1889151926),new $Int64(-498943125,3034199774),new $Int64(1618587731,516490102),new $Int64(93114264,3692577783),new $Int64(-2078821353,2953948865),new $Int64(-320938673,4041040923),new $Int64(-1942517976,592046130),new $Int64(-705643640,384297211),new $Int64(-2051649464,265863924),new $Int64(2101717619,1333136237),new $Int64(1499611781,1406273556),new $Int64(1074670496,426305476),new $Int64(125704633,2750898176),new $Int64(488068495,1633944332),new $Int64(2037723464,3236349343),new $Int64(-1703423246,4013676611),new $Int64(1718532237,2265047407),new $Int64(1433593806,875071080),new $Int64(-343047503,1418843655),new $Int64(2009228711,451657300),new $Int64(1229446621,1866374663),new $Int64(1653472867,1551455622),new $Int64(577191481,3560962459),new $Int64(1669204077,3347903778),new $Int64(-298327194,2675874918),new $Int64(-1831355577,2762991672),new $Int64(530492383,3689068477),new $Int64(844089962,4071997905),new $Int64(1508155730,1381702441),new $Int64(2089931018,2373284878),new $Int64(-864267462,2143983064),new $Int64(308739063,1938207195),new $Int64(1754949306,1188152253),new $Int64(1272345009,615870490),new $Int64(742653194,2662252621),new $Int64(1477718295,3839976789),new $Int64(-2091334213,306752547),new $Int64(-1426688067,2162363077),new $Int64(-57052633,2767224719),new $Int64(-1471624099,2628837712),new $Int64(1678405918,2967771969),new $Int64(1694285728,499792248),new $Int64(-1744131281,4285253508),new $Int64(962357072,2856511070),new $Int64(679471692,2526409716),new $Int64(-1793706473,1240875658),new $Int64(-914893422,2577342868),new $Int64(-1001298215,4136853496),new $Int64(-1477114974,2403540137),new $Int64(1372824515,1371410668),new $Int64(-176562048,371758825),new $Int64(-441063112,1528834084),new $Int64(-71688630,1504757260),new $Int64(-1461820072,699052551),new $Int64(-505543539,3347789870),new $Int64(1951619734,3430604759),new $Int64(2119672219,1935601723),new $Int64(966789690,834676166)]);N=L(new AE.ptr(new B.Mutex.ptr(false),$assertType(J(new $Int64(0,1)),AM)));AG=$toNativeArray($kindUint32,[1991057938,0,1611602771,1826899878,1918584482,1969227037,2001281515,2023368125,2039498179,2051788381,2061460127,2069267110,2075699398,2081089314,2085670119,2089610331,2093034710,2096037586,2098691595,2101053571,2103168620,2105072996,2106796166,2108362327,2109791536,2111100552,2112303493,2113412330,2114437283,2115387130,2116269447,2117090813,2117856962,2118572919,2119243101,2119871411,2120461303,2121015852,2121537798,2122029592,2122493434,2122931299,2123344971,2123736059,2124106020,2124456175,2124787725,2125101763,2125399283,2125681194,2125948325,2126201433,2126441213,2126668298,2126883268,2127086657,2127278949,2127460589,2127631985,2127793506,2127945490,2128088244,2128222044,2128347141,2128463758,2128572095,2128672327,2128764606,2128849065,2128925811,2128994934,2129056501,2129110560,2129157136,2129196237,2129227847,2129251929,2129268426,2129277255,2129278312,2129271467,2129256561,2129233410,2129201800,2129161480,2129112170,2129053545,2128985244,2128906855,2128817916,2128717911,2128606255,2128482298,2128345305,2128194452,2128028813,2127847342,2127648860,2127432031,2127195339,2126937058,2126655214,2126347546,2126011445,2125643893,2125241376,2124799783,2124314271,2123779094,2123187386,2122530867,2121799464,2120980787,2120059418,2119015917,2117825402,2116455471,2114863093,2112989789,2110753906,2108037662,2104664315,2100355223,2094642347,2086670106,2074676188,2054300022,2010539237]);AH=$toNativeArray($kindFloat32,[1.7290404663583558e-09,1.2680928529462676e-10,1.689751810696194e-10,1.9862687883343e-10,2.223243117382978e-10,2.4244936613904144e-10,2.601613091623989e-10,2.761198769629658e-10,2.9073962681813725e-10,3.042996965518796e-10,3.169979556627567e-10,3.289802041894774e-10,3.4035738116777736e-10,3.5121602848242617e-10,3.61625090983253e-10,3.7164057942185025e-10,3.813085680537398e-10,3.906675816178762e-10,3.997501218933053e-10,4.0858399996679395e-10,4.1719308563337165e-10,4.255982233303257e-10,4.3381759295968436e-10,4.4186720948857783e-10,4.497613115272969e-10,4.57512583373898e-10,4.6513240481438345e-10,4.726310454117311e-10,4.800177477726209e-10,4.873009773476156e-10,4.944885056978876e-10,5.015873272284921e-10,5.086040477664255e-10,5.155446070048697e-10,5.224146670812502e-10,5.292193350214802e-10,5.359634958068682e-10,5.426517013518151e-10,5.492881705038144e-10,5.558769555769061e-10,5.624218868405251e-10,5.689264614971989e-10,5.75394121238304e-10,5.818281967329142e-10,5.882316855831959e-10,5.946076964136182e-10,6.009590047817426e-10,6.072883862451306e-10,6.135985053390414e-10,6.19892026598734e-10,6.261713370037114e-10,6.324390455780815e-10,6.386973727678935e-10,6.449488165749528e-10,6.511955974453087e-10,6.574400468473129e-10,6.636843297158634e-10,6.699307220081607e-10,6.761814441702541e-10,6.824387166481927e-10,6.887046488657234e-10,6.949815167800466e-10,7.012714853260604e-10,7.075767749498141e-10,7.13899661608508e-10,7.202424212593428e-10,7.266072743483676e-10,7.329966078550854e-10,7.394128087589991e-10,7.458582640396116e-10,7.523354716987285e-10,7.588469852493063e-10,7.653954137154528e-10,7.719834771435785e-10,7.786139510912449e-10,7.852897221383159e-10,7.920137878869582e-10,7.987892014504894e-10,8.056192379868321e-10,8.125072836762115e-10,8.194568912323064e-10,8.264716688799467e-10,8.3355555791087e-10,8.407127216614185e-10,8.479473234679347e-10,8.552640262671218e-10,8.626675485068347e-10,8.701631637464402e-10,8.777562010564566e-10,8.854524335966119e-10,8.932581896381464e-10,9.011799639857543e-10,9.092249730890956e-10,9.174008219758889e-10,9.25715837318819e-10,9.341788453909317e-10,9.42799727177146e-10,9.515889187738935e-10,9.605578554783278e-10,9.697193048552322e-10,9.790869226478094e-10,9.886760299337993e-10,9.985036131254788e-10,1.008588212947359e-09,1.0189509236369076e-09,1.0296150598776421e-09,1.040606933955246e-09,1.0519566329136865e-09,1.0636980185552147e-09,1.0758701707302976e-09,1.0885182755160372e-09,1.101694735439196e-09,1.115461056855338e-09,1.1298901814171813e-09,1.1450695946990663e-09,1.1611052119775422e-09,1.178127595480305e-09,1.1962995039027646e-09,1.2158286599728285e-09,1.2369856250415978e-09,1.2601323318151003e-09,1.2857697129220469e-09,1.3146201904845611e-09,1.3477839955200466e-09,1.3870635751089821e-09,1.43574030442295e-09,1.5008658760251592e-09,1.6030947680434338e-09]);AI=$toNativeArray($kindFloat32,[1,0.963599681854248,0.9362826943397522,0.9130436182022095,0.8922816514968872,0.8732430338859558,0.8555005788803101,0.8387836217880249,0.8229072093963623,0.8077383041381836,0.7931770086288452,0.7791460752487183,0.7655841708183289,0.7524415850639343,0.7396772503852844,0.7272568941116333,0.7151514887809753,0.7033361196517944,0.6917891502380371,0.6804918646812439,0.6694276928901672,0.6585819721221924,0.6479418277740479,0.6374954581260681,0.6272324919700623,0.6171433925628662,0.6072195172309875,0.5974531769752502,0.5878370404243469,0.5783646702766418,0.5690299868583679,0.5598273873329163,0.550751805305481,0.5417983531951904,0.5329626798629761,0.5242405533790588,0.5156282186508179,0.5071220397949219,0.49871864914894104,0.4904148280620575,0.48220765590667725,0.47409430146217346,0.466072142124176,0.45813870429992676,0.45029163360595703,0.44252872467041016,0.4348478317260742,0.42724698781967163,0.41972434520721436,0.41227802634239197,0.40490642189979553,0.39760786294937134,0.3903807997703552,0.3832238018512726,0.3761354684829712,0.3691144585609436,0.36215949058532715,0.3552693724632263,0.3484429717063904,0.3416791558265686,0.33497685194015503,0.32833510637283325,0.3217529058456421,0.3152293860912323,0.30876362323760986,0.3023548424243927,0.2960021495819092,0.2897048592567444,0.28346219658851624,0.2772735059261322,0.271138072013855,0.2650552988052368,0.25902456045150757,0.25304529070854187,0.24711695313453674,0.24123899638652802,0.23541094362735748,0.22963231801986694,0.22390270233154297,0.21822164952754974,0.21258877217769623,0.20700371265411377,0.20146611332893372,0.1959756463766098,0.19053204357624054,0.18513499200344086,0.17978426814079285,0.1744796335697174,0.16922089457511902,0.16400785744190216,0.1588403731584549,0.15371830761432648,0.14864157140254974,0.14361007511615753,0.13862377405166626,0.13368265330791473,0.12878671288490295,0.12393598258495331,0.11913054436445236,0.11437050998210907,0.10965602099895477,0.1049872562289238,0.10036443918943405,0.09578784555196762,0.09125780314207077,0.08677466958761215,0.08233889937400818,0.07795098423957825,0.07361150532960892,0.06932111829519272,0.06508058309555054,0.06089077144861221,0.05675266310572624,0.05266740173101425,0.048636294901371,0.044660862535238266,0.040742866694927216,0.03688438981771469,0.03308788686990738,0.029356317594647408,0.025693291798233986,0.02210330404341221,0.018592102453112602,0.015167297795414925,0.011839478276669979,0.0086244847625494,0.005548994988203049,0.0026696291752159595]);AJ=$toNativeArray($kindUint32,[3801129273,0,2615860924,3279400049,3571300752,3733536696,3836274812,3906990442,3958562475,3997804264,4028649213,4053523342,4074002619,4091154507,4105727352,4118261130,4129155133,4138710916,4147160435,4154685009,4161428406,4167506077,4173011791,4178022498,4182601930,4186803325,4190671498,4194244443,4197554582,4200629752,4203493986,4206168142,4208670408,4211016720,4213221098,4215295924,4217252177,4219099625,4220846988,4222502074,4224071896,4225562770,4226980400,4228329951,4229616109,4230843138,4232014925,4233135020,4234206673,4235232866,4236216336,4237159604,4238064994,4238934652,4239770563,4240574564,4241348362,4242093539,4242811568,4243503822,4244171579,4244816032,4245438297,4246039419,4246620374,4247182079,4247725394,4248251127,4248760037,4249252839,4249730206,4250192773,4250641138,4251075867,4251497493,4251906522,4252303431,4252688672,4253062674,4253425844,4253778565,4254121205,4254454110,4254777611,4255092022,4255397640,4255694750,4255983622,4256264513,4256537670,4256803325,4257061702,4257313014,4257557464,4257795244,4258026541,4258251531,4258470383,4258683258,4258890309,4259091685,4259287526,4259477966,4259663135,4259843154,4260018142,4260188212,4260353470,4260514019,4260669958,4260821380,4260968374,4261111028,4261249421,4261383632,4261513736,4261639802,4261761900,4261880092,4261994441,4262105003,4262211835,4262314988,4262414513,4262510454,4262602857,4262691764,4262777212,4262859239,4262937878,4263013162,4263085118,4263153776,4263219158,4263281289,4263340187,4263395872,4263448358,4263497660,4263543789,4263586755,4263626565,4263663224,4263696735,4263727099,4263754314,4263778377,4263799282,4263817020,4263831582,4263842955,4263851124,4263856071,4263857776,4263856218,4263851370,4263843206,4263831695,4263816804,4263798497,4263776735,4263751476,4263722676,4263690284,4263654251,4263614520,4263571032,4263523724,4263472530,4263417377,4263358192,4263294892,4263227394,4263155608,4263079437,4262998781,4262913534,4262823581,4262728804,4262629075,4262524261,4262414220,4262298801,4262177846,4262051187,4261918645,4261780032,4261635148,4261483780,4261325704,4261160681,4260988457,4260808763,4260621313,4260425802,4260221905,4260009277,4259787550,4259556329,4259315195,4259063697,4258801357,4258527656,4258242044,4257943926,4257632664,4257307571,4256967906,4256612870,4256241598,4255853155,4255446525,4255020608,4254574202,4254106002,4253614578,4253098370,4252555662,4251984571,4251383021,4250748722,4250079132,4249371435,4248622490,4247828790,4246986404,4246090910,4245137315,4244119963,4243032411,4241867296,4240616155,4239269214,4237815118,4236240596,4234530035,4232664930,4230623176,4228378137,4225897409,4223141146,4220059768,4216590757,4212654085,4208145538,4202926710,4196809522,4189531420,4180713890,4169789475,4155865042,4137444620,4111806704,4073393724,4008685917,3873074895]);AK=$toNativeArray($kindFloat32,[2.0249555365836613e-09,1.4866739783681027e-11,2.4409616689036184e-11,3.1968806074589295e-11,3.844677007314168e-11,4.42282044321729e-11,4.951644302919611e-11,5.443358958023836e-11,5.905943789574764e-11,6.34494193296753e-11,6.764381416113352e-11,7.167294535648239e-11,7.556032188826833e-11,7.932458162551725e-11,8.298078890689453e-11,8.654132271912474e-11,9.001651507523079e-11,9.341507428706208e-11,9.674443190998971e-11,1.0001099254308699e-10,1.0322031424037093e-10,1.0637725422757427e-10,1.0948611461891744e-10,1.1255067711157807e-10,1.1557434870246297e-10,1.1856014781042035e-10,1.2151082917633005e-10,1.2442885610752796e-10,1.2731647680563896e-10,1.3017574518325858e-10,1.330085347417409e-10,1.3581656632677408e-10,1.386014220061682e-10,1.413645728254309e-10,1.4410737880776736e-10,1.4683107507629245e-10,1.4953686899854546e-10,1.522258291641876e-10,1.5489899640730442e-10,1.575573282952547e-10,1.6020171300645814e-10,1.628330109637588e-10,1.6545202707884954e-10,1.68059510752272e-10,1.7065616975120435e-10,1.73242697965037e-10,1.758197337720091e-10,1.783878739169964e-10,1.8094774290045024e-10,1.834998542005195e-10,1.8604476292871652e-10,1.8858298256319017e-10,1.9111498494872592e-10,1.9364125580789704e-10,1.9616222535212557e-10,1.9867835154840918e-10,2.011900368525943e-10,2.0369768372052732e-10,2.062016807302669e-10,2.0870240258208383e-10,2.1120022397624894e-10,2.136955057352452e-10,2.1618855317040442e-10,2.1867974098199738e-10,2.2116936060356807e-10,2.2365774510202385e-10,2.2614519978869652e-10,2.2863201609713002e-10,2.3111849933865614e-10,2.3360494094681883e-10,2.3609159072179864e-10,2.3857874009713953e-10,2.4106666662859766e-10,2.4355562011635357e-10,2.460458781161634e-10,2.485376904282077e-10,2.5103127909709144e-10,2.5352694943414633e-10,2.560248957284017e-10,2.585253955356137e-10,2.610286709003873e-10,2.6353494386732734e-10,2.6604446423661443e-10,2.6855745405285347e-10,2.71074163116225e-10,2.7359478571575835e-10,2.7611959940720965e-10,2.786487707240326e-10,2.8118254946640775e-10,2.8372118543451563e-10,2.8626484516180994e-10,2.8881380620404684e-10,2.9136826285025563e-10,2.9392840938946563e-10,2.96494523377433e-10,2.990667713476114e-10,3.016454031001814e-10,3.042306406797479e-10,3.068226783753403e-10,3.09421765987139e-10,3.12028125559749e-10,3.1464195138219964e-10,3.17263521010247e-10,3.1989300097734485e-10,3.225306410836737e-10,3.2517669112941405e-10,3.2783134540359526e-10,3.3049485370639786e-10,3.3316743808242677e-10,3.3584937608743815e-10,3.385408342548857e-10,3.4124211789610115e-10,3.4395342130011386e-10,3.4667499426710435e-10,3.494071143528288e-10,3.521500313574677e-10,3.54903967325626e-10,3.576691720574843e-10,3.6044595086437425e-10,3.632345535464765e-10,3.660352021483959e-10,3.688482297370399e-10,3.716738583570134e-10,3.7451239331964814e-10,3.773641121807003e-10,3.802292924959261e-10,3.831082673322328e-10,3.8600128648980103e-10,3.8890865527996255e-10,3.9183070676962473e-10,3.9476774627011935e-10,3.977200790927782e-10,4.006880383045086e-10,4.0367195697221803e-10,4.066721681628138e-10,4.0968900494320337e-10,4.127228558914453e-10,4.15774054074447e-10,4.188429603146915e-10,4.2192993543466173e-10,4.25035395767992e-10,4.2815970213716525e-10,4.313032986313914e-10,4.3446651831757777e-10,4.376498607960855e-10,4.408536868893975e-10,4.4407846844229937e-10,4.4732464954400086e-10,4.5059267428371186e-10,4.538830145062178e-10,4.5719619756745544e-10,4.605326675566346e-10,4.638929240741163e-10,4.672775499869886e-10,4.706869893844612e-10,4.74121908400349e-10,4.775827511238617e-10,4.810701836888143e-10,4.845848167178701e-10,4.881271498113904e-10,4.916979601254923e-10,4.952977472605369e-10,4.989272883726414e-10,5.025872495956207e-10,5.062783525744408e-10,5.100013189540675e-10,5.13756870379467e-10,5.175458395179078e-10,5.21369003525507e-10,5.252272505806843e-10,5.29121357839557e-10,5.330522134805449e-10,5.3702081670437e-10,5.41028055689452e-10,5.450749851476644e-10,5.491624932574268e-10,5.532918012640664e-10,5.574638528571541e-10,5.616799247931681e-10,5.659410717839819e-10,5.702485705860738e-10,5.746036979559221e-10,5.790077306500052e-10,5.83462111958255e-10,5.879682296594524e-10,5.925275825546805e-10,5.971417249561739e-10,6.01812211176167e-10,6.065408175714992e-10,6.113292094767075e-10,6.16179329782085e-10,6.21092954844471e-10,6.260721940876124e-10,6.311191569352559e-10,6.362359528111483e-10,6.414249686947926e-10,6.466885360545405e-10,6.520292639144998e-10,6.574497612987784e-10,6.629528592760892e-10,6.685415554485985e-10,6.742187919073217e-10,6.799880103436351e-10,6.858525969377638e-10,6.918161599145378e-10,6.978825850545434e-10,7.040559801829716e-10,7.103406751696184e-10,7.167412219288849e-10,7.232625609532306e-10,7.2990985477972e-10,7.366885990123251e-10,7.436047333442275e-10,7.506645305355164e-10,7.57874762946642e-10,7.652426470272644e-10,7.727759543385559e-10,7.804830115532013e-10,7.883728114777e-10,7.964550685635174e-10,8.047402189070851e-10,8.132396422944055e-10,8.219657177122031e-10,8.309318788590758e-10,8.401527806789488e-10,8.496445214056791e-10,8.594246980742071e-10,8.695127395874636e-10,8.799300732498239e-10,8.90700457834015e-10,9.01850316648023e-10,9.134091816243028e-10,9.254100818978372e-10,9.37890431984556e-10,9.508922538259412e-10,9.64463842123564e-10,9.78660263939446e-10,9.935448019859905e-10,1.0091912860943353e-09,1.0256859805934937e-09,1.0431305819125214e-09,1.0616465484503124e-09,1.0813799855569073e-09,1.1025096391392708e-09,1.1252564435793033e-09,1.149898620766976e-09,1.176793218427008e-09,1.2064089727203964e-09,1.2393785997488749e-09,1.2765849488616254e-09,1.319313880365769e-09,1.36954347862428e-09,1.4305497897382224e-09,1.5083649884672923e-09,1.6160853766322703e-09,1.7921247819074893e-09]);AL=$toNativeArray($kindFloat32,[1,0.9381436705589294,0.900469958782196,0.8717043399810791,0.847785472869873,0.8269932866096497,0.8084216713905334,0.7915276288986206,0.7759568691253662,0.7614634037017822,0.7478685975074768,0.7350381016731262,0.7228676676750183,0.7112747430801392,0.7001926302909851,0.6895664930343628,0.6793505549430847,0.669506311416626,0.6600008606910706,0.6508058309555054,0.6418967247009277,0.633251965045929,0.62485271692276,0.6166821718215942,0.608725368976593,0.6009689569473267,0.5934008955955505,0.5860103368759155,0.5787873864173889,0.5717230439186096,0.5648092031478882,0.5580382943153381,0.5514034032821655,0.5448982119560242,0.5385168790817261,0.5322538614273071,0.526104211807251,0.5200631618499756,0.5141264200210571,0.5082897543907166,0.5025495290756226,0.4969019889831543,0.4913438558578491,0.4858720004558563,0.48048335313796997,0.4751752018928528,0.4699448347091675,0.4647897481918335,0.4597076177597046,0.4546961486339569,0.4497532546520233,0.44487687945365906,0.4400651156902313,0.4353161156177521,0.4306281507015228,0.42599955201148987,0.42142874002456665,0.4169141948223114,0.4124544560909271,0.40804818272590637,0.4036940038204193,0.39939069747924805,0.3951369822025299,0.39093172550201416,0.38677382469177246,0.38266217708587646,0.378595769405365,0.37457355856895447,0.37059465050697327,0.366658091545105,0.362762987613678,0.358908474445343,0.35509374737739563,0.35131800174713135,0.3475804924964905,0.34388044476509094,0.34021714329719543,0.33658990263938904,0.3329980671405792,0.3294409513473511,0.32591795921325684,0.32242849469184875,0.3189719021320343,0.3155476748943329,0.31215524673461914,0.3087940812110901,0.30546361207962036,0.30216339230537415,0.29889291524887085,0.29565170407295227,0.2924392819404602,0.2892552316188812,0.28609907627105713,0.2829704284667969,0.27986884117126465,0.2767939269542694,0.2737452983856201,0.2707225978374481,0.26772540807724,0.26475343108177185,0.2618062496185303,0.258883535861969,0.2559850215911865,0.25311028957366943,0.25025907158851624,0.24743106961250305,0.2446259707212448,0.24184346199035645,0.23908329010009766,0.23634515702724457,0.2336287796497345,0.23093391954898834,0.22826029360294342,0.22560766339302063,0.22297576069831848,0.22036437690258026,0.21777324378490448,0.21520215272903442,0.212650865316391,0.21011915802955627,0.20760682225227356,0.20511364936828613,0.20263944566249847,0.20018397271633148,0.19774706661701202,0.1953285187482834,0.19292815029621124,0.19054576754570007,0.18818120658397675,0.18583425879478455,0.18350479006767273,0.18119260668754578,0.17889754474163055,0.17661945521831512,0.17435817420482635,0.1721135377883911,0.16988539695739746,0.16767361760139465,0.16547803580760956,0.16329853236675262,0.16113494336605072,0.1589871346950531,0.15685498714447021,0.15473836660385132,0.15263713896274567,0.1505511850118637,0.1484803706407547,0.14642459154129028,0.1443837285041809,0.14235764741897583,0.1403462439775467,0.13834942877292633,0.136367067694664,0.13439907133579254,0.1324453204870224,0.1305057406425476,0.12858019769191742,0.12666863203048706,0.12477091699838638,0.12288697808980942,0.1210167184472084,0.11916005611419678,0.11731690168380737,0.11548716574907303,0.11367076635360718,0.11186762899160385,0.11007767915725708,0.1083008274435997,0.10653700679540634,0.10478614270687103,0.1030481606721878,0.10132300108671188,0.0996105819940567,0.09791085124015808,0.09622374176979065,0.09454918652772903,0.09288713335990906,0.09123751521110535,0.08960027992725372,0.08797537535429001,0.08636274188756943,0.0847623273730278,0.08317409455776215,0.08159798383712769,0.08003395050764084,0.07848194986581802,0.07694194465875626,0.07541389018297195,0.07389774918556213,0.07239348441362381,0.070901058614254,0.06942043453454971,0.06795158982276917,0.06649449467658997,0.06504911929368973,0.06361543387174606,0.06219341605901718,0.06078304722905159,0.0593843050301075,0.05799717456102371,0.05662164092063904,0.05525768920779228,0.05390531197190285,0.05256449431180954,0.05123523622751236,0.04991753399372101,0.04861138388514519,0.047316793352365494,0.04603376239538193,0.044762298464775085,0.04350241273641586,0.04225412383675575,0.04101744294166565,0.039792392402887344,0.03857899457216263,0.03737728297710419,0.03618728369474411,0.03500903770327568,0.03384258225560188,0.0326879620552063,0.031545232981443405,0.030414443463087082,0.0292956605553627,0.028188949450850487,0.027094384655356407,0.02601204626262188,0.024942025542259216,0.023884421214461327,0.022839335724711418,0.021806888282299042,0.020787203684449196,0.019780423492193222,0.018786700442433357,0.017806200310587883,0.016839107498526573,0.015885621309280396,0.014945968054234982,0.01402039173990488,0.013109165243804455,0.012212592177093029,0.011331013403832912,0.010464809834957123,0.009614413604140282,0.008780314587056637,0.007963077165186405,0.007163353264331818,0.0063819061033427715,0.005619642324745655,0.004877655766904354,0.004157294984906912,0.003460264764726162,0.0027887988835573196,0.0021459676790982485,0.001536299823783338,0.0009672692976891994,0.0004541343660093844]);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["github.com/88250/lute/ast"]=(function(){var $pkg={},$init,B,I,J,K,L,C,D,A,E,F,G,H,M,R,S,X,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK,Q,Y,Z,O,P,T,U,V,W,AA;B=$packages["bytes"];I=$packages["github.com/88250/lute/editor"];J=$packages["github.com/88250/lute/html"];K=$packages["github.com/88250/lute/lex"];L=$packages["github.com/88250/lute/util"];C=$packages["math/rand"];D=$packages["sort"];A=$packages["strconv"];E=$packages["strings"];F=$packages["sync"];G=$packages["time"];H=$packages["unicode/utf8"];M=$pkg.WalkStatus=$newType(4,$kindInt,"ast.WalkStatus",true,"github.com/88250/lute/ast",true,null);R=$pkg.Node=$newType(0,$kindStruct,"ast.Node",true,"github.com/88250/lute/ast",true,function(ID_,Box_,Path_,Spec_,Type_,Parent_,Previous_,Next_,FirstChild_,LastChild_,Children_,Tokens_,TypeStr_,Data_,Close_,LastLineBlank_,LastLineChecked_,CodeMarkerLen_,IsFencedCodeBlock_,CodeBlockFenceChar_,CodeBlockFenceLen_,CodeBlockFenceOffset_,CodeBlockOpenFence_,CodeBlockInfo_,CodeBlockCloseFence_,HtmlBlockType_,ListData_,TaskListItemChecked_,TableAligns_,TableCellAlign_,TableCellContentWidth_,TableCellContentMaxWidth_,LinkType_,LinkRefLabel_,HeadingLevel_,HeadingSetext_,HeadingNormalizedID_,MathBlockDollarOffset_,FootnotesRefLabel_,FootnotesRefId_,FootnotesRefs_,HtmlEntityTokens_,KramdownIAL_,Properties_,TextMarkType_,TextMarkAHref_,TextMarkATitle_,TextMarkInlineMathContent_,TextMarkInlineMemoContent_,TextMarkBlockRefID_,TextMarkBlockRefSubtype_,TextMarkFileAnnotationRefID_,TextMarkTextContent_,AttributeViewID_,AttributeViewType_,CustomBlockFenceOffset_,CustomBlockInfo_){this.$val=this;if(arguments.length===0){this.ID="";this.Box="";this.Path="";this.Spec="";this.Type=0;this.Parent=AB.nil;this.Previous=AB.nil;this.Next=AB.nil;this.FirstChild=AB.nil;this.LastChild=AB.nil;this.Children=AE.nil;this.Tokens=AF.nil;this.TypeStr="";this.Data="";this.Close=false;this.LastLineBlank=false;this.LastLineChecked=false;this.CodeMarkerLen=0;this.IsFencedCodeBlock=false;this.CodeBlockFenceChar=0;this.CodeBlockFenceLen=0;this.CodeBlockFenceOffset=0;this.CodeBlockOpenFence=AF.nil;this.CodeBlockInfo=AF.nil;this.CodeBlockCloseFence=AF.nil;this.HtmlBlockType=0;this.ListData=AG.nil;this.TaskListItemChecked=false;this.TableAligns=AH.nil;this.TableCellAlign=0;this.TableCellContentWidth=0;this.TableCellContentMaxWidth=0;this.LinkType=0;this.LinkRefLabel=AF.nil;this.HeadingLevel=0;this.HeadingSetext=false;this.HeadingNormalizedID="";this.MathBlockDollarOffset=0;this.FootnotesRefLabel=AF.nil;this.FootnotesRefId="";this.FootnotesRefs=AE.nil;this.HtmlEntityTokens=AF.nil;this.KramdownIAL=AI.nil;this.Properties=false;this.TextMarkType="";this.TextMarkAHref="";this.TextMarkATitle="";this.TextMarkInlineMathContent="";this.TextMarkInlineMemoContent="";this.TextMarkBlockRefID="";this.TextMarkBlockRefSubtype="";this.TextMarkFileAnnotationRefID="";this.TextMarkTextContent="";this.AttributeViewID="";this.AttributeViewType="";this.CustomBlockFenceOffset=0;this.CustomBlockInfo="";return;}this.ID=ID_;this.Box=Box_;this.Path=Path_;this.Spec=Spec_;this.Type=Type_;this.Parent=Parent_;this.Previous=Previous_;this.Next=Next_;this.FirstChild=FirstChild_;this.LastChild=LastChild_;this.Children=Children_;this.Tokens=Tokens_;this.TypeStr=TypeStr_;this.Data=Data_;this.Close=Close_;this.LastLineBlank=LastLineBlank_;this.LastLineChecked=LastLineChecked_;this.CodeMarkerLen=CodeMarkerLen_;this.IsFencedCodeBlock=IsFencedCodeBlock_;this.CodeBlockFenceChar=CodeBlockFenceChar_;this.CodeBlockFenceLen=CodeBlockFenceLen_;this.CodeBlockFenceOffset=CodeBlockFenceOffset_;this.CodeBlockOpenFence=CodeBlockOpenFence_;this.CodeBlockInfo=CodeBlockInfo_;this.CodeBlockCloseFence=CodeBlockCloseFence_;this.HtmlBlockType=HtmlBlockType_;this.ListData=ListData_;this.TaskListItemChecked=TaskListItemChecked_;this.TableAligns=TableAligns_;this.TableCellAlign=TableCellAlign_;this.TableCellContentWidth=TableCellContentWidth_;this.TableCellContentMaxWidth=TableCellContentMaxWidth_;this.LinkType=LinkType_;this.LinkRefLabel=LinkRefLabel_;this.HeadingLevel=HeadingLevel_;this.HeadingSetext=HeadingSetext_;this.HeadingNormalizedID=HeadingNormalizedID_;this.MathBlockDollarOffset=MathBlockDollarOffset_;this.FootnotesRefLabel=FootnotesRefLabel_;this.FootnotesRefId=FootnotesRefId_;this.FootnotesRefs=FootnotesRefs_;this.HtmlEntityTokens=HtmlEntityTokens_;this.KramdownIAL=KramdownIAL_;this.Properties=Properties_;this.TextMarkType=TextMarkType_;this.TextMarkAHref=TextMarkAHref_;this.TextMarkATitle=TextMarkATitle_;this.TextMarkInlineMathContent=TextMarkInlineMathContent_;this.TextMarkInlineMemoContent=TextMarkInlineMemoContent_;this.TextMarkBlockRefID=TextMarkBlockRefID_;this.TextMarkBlockRefSubtype=TextMarkBlockRefSubtype_;this.TextMarkFileAnnotationRefID=TextMarkFileAnnotationRefID_;this.TextMarkTextContent=TextMarkTextContent_;this.AttributeViewID=AttributeViewID_;this.AttributeViewType=AttributeViewType_;this.CustomBlockFenceOffset=CustomBlockFenceOffset_;this.CustomBlockInfo=CustomBlockInfo_;});S=$pkg.ListData=$newType(0,$kindStruct,"ast.ListData",true,"github.com/88250/lute/ast",true,function(Typ_,Tight_,BulletChar_,Start_,Delimiter_,Padding_,MarkerOffset_,Checked_,Marker_,Num_){this.$val=this;if(arguments.length===0){this.Typ=0;this.Tight=false;this.BulletChar=0;this.Start=0;this.Delimiter=0;this.Padding=0;this.MarkerOffset=0;this.Checked=false;this.Marker=AF.nil;this.Num=0;return;}this.Typ=Typ_;this.Tight=Tight_;this.BulletChar=BulletChar_;this.Start=Start_;this.Delimiter=Delimiter_;this.Padding=Padding_;this.MarkerOffset=MarkerOffset_;this.Checked=Checked_;this.Marker=Marker_;this.Num=Num_;});X=$pkg.NodeType=$newType(4,$kindInt,"ast.NodeType",true,"github.com/88250/lute/ast",true,null);AB=$ptrType(R);AC=$sliceType($Int32);AD=$sliceType($String);AE=$sliceType(AB);AF=$sliceType($Uint8);AG=$ptrType(S);AH=$sliceType($Int);AI=$sliceType(AD);AJ=$sliceType(X);AK=$mapType($String,$String);O=function(b,c){var{b,c,d,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:d=P(b,c);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;$s=-1;return;}return;}var $f={$blk:O,$c:true,$r,b,c,d,$s};return $f;};$pkg.Walk=O;P=function(b,c){var{b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:d=0;e=c(b,true);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;if(d===0){$s=-1;return d;}if(!((d===1))){$s=2;continue;}$s=3;continue;case 2:f=b.FirstChild;case 4:if(!(!(AB.nil===f))){$s=5;continue;}g=P(f,c);$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}d=g;if(0===d){d=0;$s=-1;return d;}f=f.Next;$s=4;continue;case 5:case 3:h=c(b,false);$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}d=h;$s=-1;return d;}return;}var $f={$blk:P,$c:true,$r,b,c,d,e,f,g,h,$s};return $f;};X.prototype.String=function(){var b,c,d,e,f;b=this.$val;c=(d=$mapIndex(Q,X.keyFor(b)),d!==undefined?[d.v,true]:["",false]);e=c[0];f=c[1];if(f){return e;}return"NodeType("+A.FormatInt((new $Int64(0,b)),10)+")";};$ptrType(X).prototype.String=function(){return new X(this.$get()).String();};T=function(){var{b,c,d,e,f,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:if($pkg.Testing){$s=-1;return"20060102150405-1a2b3c4";}b=G.Now();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=$clone(b,G.Time);d=$clone(c,G.Time).Format("20060102150405");$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=W(7);$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=d+"-"+e;$s=4;case 4:return f;}return;}var $f={$blk:T,$c:true,$r,b,c,d,e,f,$s};return $f;};$pkg.NewNodeID=T;U=function(b){var b,c,d,e,f,g,h,i,j,k,l,m;if(!((22===b.length))){return false;}if(!((1===E.Count(b,"-")))){return false;}c=E.Split(b,"-");d=(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]);if(!((14===d.length))){return false;}e=d;f=0;while(true){if(!(f<e.length)){break;}g=$decodeRune(e,f);h=g[0];if(!(48<=h&&57>=h)){return false;}f+=g[1];}i=(1>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+1]);if(!((7===i.length))){return false;}j=i;k=0;while(true){if(!(k<j.length)){break;}l=$decodeRune(j,k);m=l[0];if(!(97<=m&&122>=m)&&!(48<=m&&57>=m)){return false;}k+=l[1];}return true;};$pkg.IsNodeIDPattern=U;V=function(){var{b,c,d,e,f,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:b=G.Now();$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=$clone(b,G.Time).UTC();$s=2;case 2:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=$clone(c,G.Time).UnixNano();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$r=C.Seed(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=0;while(true){if(!(e<1024)){break;}f=new X(e).String();(Y||$throwRuntimeError("assignment to entry in nil map")).set($String.keyFor(f),{k:f,v:e});e=e+(1)>>0;}$s=-1;return;}return;}var $f={$blk:V,$c:true,$r,b,c,d,e,f,$s};return $f;};W=function(b){var{b,c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{b});$s=$s||0;s:while(true){switch($s){case 0:c=(new AC($stringToRunes("abcdefghijklmnopqrstuvwxyz0123456789")));d=$makeSlice(AC,b);e=d;f=0;case 1:if(!(f<e.$length)){$s=2;continue;}g=f;i=C.Intn(c.$length);$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}((g<0||g>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+g]=(h=i,((h<0||h>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+h])));f++;$s=1;continue;case 2:$s=-1;return($runesToString(d));}return;}var $f={$blk:W,$c:true,$r,b,c,d,e,f,g,h,i,$s};return $f;};R.ptr.prototype.Marker=function(b){var b,c,d,e;c="";d=this;e=d.Type;if((e===(461))||(e===(462))){if(b){c="#";return c;}}else if((e===(18))||(e===(19))){if(b){c="*";return c;}}else if((e===(20))||(e===(21))){if(b){c="_";return c;}}else if((e===(23))||(e===(24))){if(b){c="**";return c;}}else if((e===(25))||(e===(26))){if(b){c="__";return c;}}else if((e===(104))||(e===(105))){if(b){c="~~";return c;}}else if((e===(486))||(e===(487))){if(b){c="^";return c;}}else if((e===(491))||(e===(492))){if(b){c="~";return c;}}else if(e===(516)){if(b){c="<kbd>";return c;}}else if(e===(517)){if(b){c="</kbd>";return c;}}else if(e===(521)){if(b){c="<u>";return c;}}else if(e===(522)){if(b){c="</u>";return c;}}else if((e===(453))||(e===(454))){if(b){c="==";return c;}}else if(e===(35)){if(b){c="!";return c;}}else if(e===(36)){if(b){c="[";return c;}}else if(e===(37)){if(b){c="]";return c;}}else if(e===(38)){if(b){c="(";return c;}}else if(e===(39)){if(b){c=")";return c;}}c="";return c;};R.prototype.Marker=function(b){return this.$val.Marker(b);};R.ptr.prototype.ContainTextMarkTypes=function(b){var b,c,d,e,f,g,h,i,j;c=this;d=E.Split(c.TextMarkType," ");e=b;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);h=d;i=0;while(true){if(!(i<h.$length)){break;}j=((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]);if(g===j){return true;}i++;}f++;}return false;};R.prototype.ContainTextMarkTypes=function(b){return this.$val.ContainTextMarkTypes(b);};R.ptr.prototype.IsTextMarkType=function(b){var b,c,d,e,f,g;c=this;d=E.Split(c.TextMarkType," ");e=d;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);if(b===g){return true;}f++;}return false;};R.prototype.IsTextMarkType=function(b){return this.$val.IsTextMarkType(b);};R.ptr.prototype.IsSameTextMarkType=function(b){var{b,c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(""===c.TextMarkType||""===b.TextMarkType){$s=-1;return false;}d=E.Split(c.TextMarkType," ");e=E.Split(b.TextMarkType," ");if(!((d.$length===e.$length))){$s=-1;return false;}$r=D.Strings(d);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.Strings(e);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=d;g=0;while(true){if(!(g<f.$length)){break;}h=g;if(!(((h<0||h>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+h])===((h<0||h>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+h]))){$s=-1;return false;}i=((h<0||h>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+h]);if(i===("block-ref")){if(!(c.TextMarkBlockRefID===b.TextMarkBlockRefID)){$s=-1;return false;}}else if(i===("a")){if(!(c.TextMarkAHref===b.TextMarkAHref)||!(b.TextMarkATitle===b.TextMarkATitle)){$s=-1;return false;}}g++;}$s=-1;return true;}return;}var $f={$blk:R.ptr.prototype.IsSameTextMarkType,$c:true,$r,b,c,d,e,f,g,h,i,$s};return $f;};R.prototype.IsSameTextMarkType=function(b){return this.$val.IsSameTextMarkType(b);};R.ptr.prototype.SortTextMarkDataTypes=function(){var{b,c,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:b=this;if(""===b.TextMarkTextContent){$s=-1;return;}c=E.Split(b.TextMarkType," ");$r=D.Strings(c);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.TextMarkType=E.Join(c," ");$s=-1;return;}return;}var $f={$blk:R.ptr.prototype.SortTextMarkDataTypes,$c:true,$r,b,c,$s};return $f;};R.prototype.SortTextMarkDataTypes=function(){return this.$val.SortTextMarkDataTypes();};R.ptr.prototype.ClearIALAttrs=function(){var b,c,d,e,f;b=this;c=$subslice(b.KramdownIAL,0,0);d=b.KramdownIAL;e=0;while(true){if(!(e<d.$length)){break;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);if(!("name"===(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]))&&!("alias"===(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]))&&!("memo"===(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]))&&!("bookmark"===(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]))&&!E.HasPrefix((0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]),"custom-")){c=$append(c,f);}e++;}b.KramdownIAL=c;};R.prototype.ClearIALAttrs=function(){return this.$val.ClearIALAttrs();};R.ptr.prototype.RemoveIALAttr=function(b){var b,c,d,e,f,g;c=this;d=$subslice(c.KramdownIAL,0,0);e=c.KramdownIAL;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);if(!(b===(0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0]))){d=$append(d,g);}f++;}c.KramdownIAL=d;};R.prototype.RemoveIALAttr=function(b){return this.$val.RemoveIALAttr(b);};R.ptr.prototype.SetIALAttr=function(b,c){var b,c,d,e,f,g,h;d=this;c=J.EscapeAttrVal(c);e=d.KramdownIAL;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);if(b===(0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0])){(1>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+1]=c);return;}f++;}h=d.IALAttr("type");if("doc"===h){d.RemoveIALAttr("type");d.KramdownIAL=$append(d.KramdownIAL,new AD([b,c]));d.KramdownIAL=$append(d.KramdownIAL,new AD(["type","doc"]));return;}d.KramdownIAL=$append(d.KramdownIAL,new AD([b,c]));};R.prototype.SetIALAttr=function(b,c){return this.$val.SetIALAttr(b,c);};R.ptr.prototype.IALAttr=function(b){var b,c,d,e,f;c=this;d=c.KramdownIAL;e=0;while(true){if(!(e<d.$length)){break;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);if(b===(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0])){return J.UnescapeAttrVal((1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1]));}e++;}return"";};R.prototype.IALAttr=function(b){return this.$val.IALAttr(b);};R.ptr.prototype.IsEmptyBlockIAL=function(){var b;b=this;if(!((455===b.Type))){return false;}if(L.IsDocIAL(b.Tokens)){return false;}if(!(AB.nil===b.Previous)){if(455===b.Previous.Type){return true;}return false;}return true;};R.prototype.IsEmptyBlockIAL=function(){return this.$val.IsEmptyBlockIAL();};R.ptr.prototype.TokensStr=function(){var b;b=this;return L.BytesToStr(b.Tokens);};R.prototype.TokensStr=function(){return this.$val.TokensStr();};R.ptr.prototype.LastDeepestChild=function(){var b,c;b=AB.nil;c=this;if(AB.nil===c.LastChild){b=c;return b;}b=c.LastChild.LastDeepestChild();return b;};R.prototype.LastDeepestChild=function(){return this.$val.LastDeepestChild();};R.ptr.prototype.FirstDeepestChild=function(){var b,c;b=AB.nil;c=this;if(AB.nil===c.FirstChild){b=c;return b;}b=c.FirstChild.FirstDeepestChild();return b;};R.prototype.FirstDeepestChild=function(){return this.$val.FirstDeepestChild();};R.ptr.prototype.ChildByType=function(b){var b,c,d;c=this;d=c.FirstChild;while(true){if(!(!(AB.nil===d))){break;}if(d.Type===b){return d;}d=d.Next;}return AB.nil;};R.prototype.ChildByType=function(b){return this.$val.ChildByType(b);};R.ptr.prototype.ChildrenByType=function(b){var{b,c,d,$s,$r,$c}=$restore(this,{b});$s=$s||0;s:while(true){switch($s){case 0:b=[b];c=[c];c[0]=AE.nil;d=this;c[0]=new AE([]);$r=O(d,(function(b,c){return function(e,f){var e,f;if(((b[0]===e.Type))&&f){c[0]=$append(c[0],e);}return 2;};})(b,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return c[0];}return;}var $f={$blk:R.ptr.prototype.ChildrenByType,$c:true,$r,b,c,d,$s};return $f;};R.prototype.ChildrenByType=function(b){return this.$val.ChildrenByType(b);};R.ptr.prototype.Text=function(){var{b,c,d,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:b=[b];c="";d=this;b[0]=new B.Buffer.ptr(AF.nil,0,0);$r=O(d,(function(b){return function $b(e,f){var{e,f,g,h,i,$s,$r,$c}=$restore(this,{e,f});$s=$s||0;s:while(true){switch($s){case 0:if(!f){$s=-1;return 2;}g=e.Type;if((g===(16))||(g===(40))||(g===(433))||(g===(434))||(g===(543))||(g===(412))){$s=2;continue;}if(g===(530)){$s=3;continue;}$s=4;continue;case 2:h=b[0].Write(e.Tokens);$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;$s=4;continue;case 3:i=b[0].WriteString(e.TextMarkTextContent);$s=6;case 6:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;case 4:case 1:$s=-1;return 2;}return;}var $f={$blk:$b,$c:true,$r,e,f,g,h,i,$s};return $f;};})(b));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c=b[0].String();$s=-1;return c;}return;}var $f={$blk:R.ptr.prototype.Text,$c:true,$r,b,c,d,$s};return $f;};R.prototype.Text=function(){return this.$val.Text();};R.ptr.prototype.TextLen=function(){var{b,c,d,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:b=[b];c=0;d=this;b[0]=$makeSlice(AF,0,4096);$r=O(d,(function(b){return function(e,f){var e,f,g;if(!f){return 2;}g=e.Type;if((g===(16))||(g===(40))||(g===(433))||(g===(434))||(g===(543))||(g===(412))){b[0]=$appendSlice(b[0],e.Tokens);}else if(g===(530)){b[0]=$appendSlice(b[0],e.TextMarkTextContent);}return 2;};})(b));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c=H.RuneCount(b[0]);$s=-1;return c;}return;}var $f={$blk:R.ptr.prototype.TextLen,$c:true,$r,b,c,d,$s};return $f;};R.prototype.TextLen=function(){return this.$val.TextLen();};R.ptr.prototype.Content=function(){var{b,c,d,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:b=[b];c="";d=this;b[0]=new B.Buffer.ptr(AF.nil,0,0);$r=O(d,(function(b){return function $b(e,f){var{e,f,g,h,i,j,k,l,m,n,o,p,q,$s,$r,$c}=$restore(this,{e,f});$s=$s||0;s:while(true){switch($s){case 0:if(!f){$s=1;continue;}$s=2;continue;case 1:if(!(AB.nil===e.Next)&&!(AB.nil===e.Next.Next)&&1<b[0].Len()&&e.IsBlock()&&!(((g=b[0].Bytes(),h=b[0].Len()-1>>0,((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]))===10))){$s=3;continue;}$s=4;continue;case 3:i=b[0].WriteByte(10);$s=5;case 5:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;case 4:$s=-1;return 2;case 2:j=e.Type;if((j===(16))||(j===(40))||(j===(433))||(j===(434))||(j===(543))||(j===(412))||(j===(29))||(j===(15))||(j===(306))||(j===(302))||(j===(44))||(j===(203))||(j===(201))||(j===(401))||(j===(427))||(j===(497))){$s=7;continue;}if(j===(530)){$s=8;continue;}$s=9;continue;case 7:k=b[0].Write(e.Tokens);$s=10;case 10:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;$s=9;continue;case 8:if(!(""===e.TextMarkTextContent)){$s=11;continue;}if(!(""===e.TextMarkInlineMathContent)){$s=12;continue;}$s=13;continue;case 11:if(e.IsTextMarkType("code")){$s=14;continue;}$s=15;continue;case 14:l=b[0].WriteString(J.UnescapeString(e.TextMarkTextContent));$s=17;case 17:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}l;$s=16;continue;case 15:m=b[0].WriteString(e.TextMarkTextContent);$s=18;case 18:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;case 16:$s=13;continue;case 12:n=e.TextMarkInlineMathContent;n=E.ReplaceAll(n,"_esc_newline_"," ");o=b[0].WriteString(n);$s=19;case 19:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}o;case 13:if(!(""===e.TextMarkInlineMemoContent)){$s=20;continue;}$s=21;continue;case 20:p=e.TextMarkInlineMemoContent;p=E.ReplaceAll(p,"_esc_newline_"," ");q=b[0].WriteString(p);$s=22;case 22:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;case 21:case 9:case 6:$s=-1;return 2;}return;}var $f={$blk:$b,$c:true,$r,e,f,g,h,i,j,k,l,m,n,o,p,q,$s};return $f;};})(b));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c=b[0].String();$s=-1;return c;}return;}var $f={$blk:R.ptr.prototype.Content,$c:true,$r,b,c,d,$s};return $f;};R.prototype.Content=function(){return this.$val.Content();};R.ptr.prototype.EscapeMarkerContent=function(){var{b,c,d,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:b="";c=this;d=c.Content();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}b=d;b=($bytesToString(K.EscapeProtyleMarkers((new AF($stringToBytes(b))))));$s=-1;return b;}return;}var $f={$blk:R.ptr.prototype.EscapeMarkerContent,$c:true,$r,b,c,d,$s};return $f;};R.prototype.EscapeMarkerContent=function(){return this.$val.EscapeMarkerContent();};R.ptr.prototype.Stat=function(){var{b,c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:b=[b];c=[c];d=[d];e=[e];f=0;g=0;d[0]=0;c[0]=0;e[0]=0;h=this;b[0]=$makeSlice(AF,0,8192);$r=O(h,(function(b,c,d,e){return function(i,j){var i,j,k,l,m;if(!j){return 2;}k=i.Type;if((k===(16))||(k===(40))||(k===(433))||(k===(434))||(k===(543))||(k===(412))||(k===(29))||(k===(15))||(k===(306))||(k===(302))||(k===(44))||(k===(203))||(k===(201))||(k===(401))||(k===(427))||(k===(497))){b[0]=$appendSlice(b[0],i.Tokens);}else if(k===(530)){if(0<i.TextMarkTextContent.length){b[0]=$appendSlice(b[0],i.TextMarkTextContent);}else if(0<i.TextMarkInlineMathContent.length){l=i.TextMarkInlineMathContent;l=E.ReplaceAll(l,"_esc_newline_"," ");b[0]=$appendSlice(b[0],l);}else if(!(""===i.TextMarkInlineMemoContent)){m=i.TextMarkInlineMemoContent;m=E.ReplaceAll(m,"_esc_newline_"," ");b[0]=$appendSlice(b[0],m);}if(i.IsTextMarkType("a")){d[0]=d[0]+(1)>>0;}if(i.IsTextMarkType("block-ref")||i.IsTextMarkType("file-annotation-ref")){e[0]=e[0]+(1)>>0;}}else if(k===(33)){d[0]=d[0]+(1)>>0;}else if(k===(34)){c[0]=c[0]+(1)>>0;}else if(k===(430)){e[0]=e[0]+(1)>>0;}if(i.IsBlock()){b[0]=$append(b[0],32);}return 2;};})(b,c,d,e));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=B.TrimSpace(b[0]);$s=2;case 2:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}b[0]=i;k=L.WordCount(L.BytesToStr(b[0]));$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;f=j[0];g=j[1];$s=-1;return[f,g,d[0],c[0],e[0]];}return;}var $f={$blk:R.ptr.prototype.Stat,$c:true,$r,b,c,d,e,f,g,h,i,j,k,$s};return $f;};R.prototype.Stat=function(){return this.$val.Stat();};R.ptr.prototype.TokenLen=function(){var{b,c,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:b=[b];b[0]=0;c=this;$r=O(c,(function(b){return function(d,e){var d,e;if(!e){return 2;}b[0]=b[0]+(K.BytesShowLength(d.Tokens))>>0;return 2;};})(b));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return b[0];}return;}var $f={$blk:R.ptr.prototype.TokenLen,$c:true,$r,b,c,$s};return $f;};R.prototype.TokenLen=function(){return this.$val.TokenLen();};R.ptr.prototype.DocChild=function(){var b,c,d;b=AB.nil;c=this;b=c;d=c;while(true){if(!(!(AB.nil===d))){break;}if(0===d.Type){return b;}b=d;d=d.Parent;}return b;};R.prototype.DocChild=function(){return this.$val.DocChild();};R.ptr.prototype.IsChildBlockOf=function(b,c){var b,c,d,e,f,g;d=this;if(""===d.ID||!d.IsBlock()){return false;}if(c===0){e=d.Parent;while(true){if(!(!(AB.nil===e))){break;}if(e===b){return true;}e=e.Parent;}return false;}f=d.Parent;g=1;while(true){if(!(g<c)){break;}if(AB.nil===f){break;}f=f.Parent;g=g+(1)>>0;}if(!(b===f)){return false;}return true;};R.prototype.IsChildBlockOf=function(b,c){return this.$val.IsChildBlockOf(b,c);};R.ptr.prototype.NextNodeText=function(){var{b,c,d,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:b=this;if(AB.nil===b.Next){$s=-1;return"";}c=b.Next.Text();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;$s=2;case 2:return d;}return;}var $f={$blk:R.ptr.prototype.NextNodeText,$c:true,$r,b,c,d,$s};return $f;};R.prototype.NextNodeText=function(){return this.$val.NextNodeText();};R.ptr.prototype.PreviousNodeText=function(){var{b,c,d,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:b=this;if(AB.nil===b.Previous){$s=-1;return"";}c=b.Previous.Text();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;$s=2;case 2:return d;}return;}var $f={$blk:R.ptr.prototype.PreviousNodeText,$c:true,$r,b,c,d,$s};return $f;};R.prototype.PreviousNodeText=function(){return this.$val.PreviousNodeText();};R.ptr.prototype.Unlink=function(){var b;b=this;if(!(AB.nil===b.Previous)){b.Previous.Next=b.Next;}else if(!(AB.nil===b.Parent)){b.Parent.FirstChild=b.Next;}if(!(AB.nil===b.Next)){b.Next.Previous=b.Previous;}else if(!(AB.nil===b.Parent)){b.Parent.LastChild=b.Previous;}b.Parent=AB.nil;b.Next=AB.nil;b.Previous=AB.nil;};R.prototype.Unlink=function(){return this.$val.Unlink();};R.ptr.prototype.AppendTokens=function(b){var b,c;c=this;c.Tokens=$appendSlice(c.Tokens,($bytesToString(b)));};R.prototype.AppendTokens=function(b){return this.$val.AppendTokens(b);};R.ptr.prototype.PrependTokens=function(b){var b,c;c=this;c.Tokens=$appendSlice(b,c.Tokens);};R.prototype.PrependTokens=function(b){return this.$val.PrependTokens(b);};R.ptr.prototype.InsertAfter=function(b){var b,c;c=this;b.Unlink();b.Next=c.Next;if(!(AB.nil===b.Next)){b.Next.Previous=b;}b.Previous=c;c.Next=b;b.Parent=c.Parent;if(!(AB.nil===b.Parent)&&AB.nil===b.Next&&!(AB.nil===b.Parent.LastChild)){b.Parent.LastChild=b;}};R.prototype.InsertAfter=function(b){return this.$val.InsertAfter(b);};R.ptr.prototype.InsertBefore=function(b){var b,c;c=this;b.Unlink();b.Previous=c.Previous;if(!(AB.nil===b.Previous)){b.Previous.Next=b;}b.Next=c;c.Previous=b;b.Parent=c.Parent;if(!(AB.nil===b.Parent)&&AB.nil===b.Previous){b.Parent.FirstChild=b;}};R.prototype.InsertBefore=function(b){return this.$val.InsertBefore(b);};R.ptr.prototype.AppendChild=function(b){var b,c;c=this;b.Unlink();b.Parent=c;if(!(AB.nil===c.LastChild)){c.LastChild.Next=b;b.Previous=c.LastChild;c.LastChild=b;}else{c.FirstChild=b;c.LastChild=b;}};R.prototype.AppendChild=function(b){return this.$val.AppendChild(b);};R.ptr.prototype.PrependChild=function(b){var b,c;c=this;b.Unlink();b.Parent=c;if(!(AB.nil===c.FirstChild)){c.FirstChild.Previous=b;b.Next=c.FirstChild;c.FirstChild=b;}else{c.FirstChild=b;c.LastChild=b;}};R.prototype.PrependChild=function(b){return this.$val.PrependChild(b);};R.ptr.prototype.List=function(){var{b,c,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:b=[b];b[0]=AE.nil;c=this;b[0]=$makeSlice(AE,0,512);$r=O(c,(function(b){return function(d,e){var d,e;if(e){b[0]=$append(b[0],d);}return 2;};})(b));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return b[0];}return;}var $f={$blk:R.ptr.prototype.List,$c:true,$r,b,c,$s};return $f;};R.prototype.List=function(){return this.$val.List();};R.ptr.prototype.ParentIs=function(b,c){var b,c,d,e,f,g,h,i;d=this;e=$append(c,b);f=d.Parent;while(true){if(!(!(AB.nil===f))){break;}g=e;h=0;while(true){if(!(h<g.$length)){break;}i=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]);if(i===f.Type){return true;}h++;}f=f.Parent;}return false;};R.prototype.ParentIs=function(b,c){return this.$val.ParentIs(b,c);};R.ptr.prototype.IsBlock=function(){var b,c;b=this;c=b.Type;if((c===(0))||(c===(1))||(c===(2))||(c===(4))||(c===(5))||(c===(7))||(c===(8))||(c===(9))||(c===(11))||(c===(106))||(c===(300))||(c===(410))||(c===(411))||(c===(415))||(c===(425))||(c===(465))||(c===(455))||(c===(475))||(c===(495))||(c===(505))||(c===(510))||(c===(500))||(c===(535))||(c===(550))||(c===(560))){return true;}return false;};R.prototype.IsBlock=function(){return this.$val.IsBlock();};R.ptr.prototype.IsContainerBlock=function(){var b,c;b=this;c=b.Type;if((c===(0))||(c===(5))||(c===(7))||(c===(8))||(c===(410))||(c===(411))||(c===(475))){return true;}return false;};R.prototype.IsContainerBlock=function(){return this.$val.IsContainerBlock();};R.ptr.prototype.IsMarker=function(){var b,c;b=this;c=b.Type;if((c===(3))||(c===(6))||(c===(12))||(c===(13))||(c===(14))||(c===(18))||(c===(19))||(c===(20))||(c===(21))||(c===(23))||(c===(24))||(c===(25))||(c===(26))||(c===(28))||(c===(30))||(c===(100))||(c===(102))||(c===(103))||(c===(104))||(c===(105))||(c===(301))||(c===(303))||(c===(305))||(c===(307))||(c===(426))||(c===(428))||(c===(451))||(c===(452))||(c===(453))||(c===(454))||(c===(461))||(c===(462))||(c===(476))||(c===(477))||(c===(478))||(c===(486))||(c===(487))||(c===(491))||(c===(492))){return true;}return false;};R.prototype.IsMarker=function(){return this.$val.IsMarker();};R.ptr.prototype.AcceptLines=function(){var b,c;b=this;c=b.Type;if((c===(1))||(c===(11))||(c===(9))||(c===(300))||(c===(425))||(c===(465))||(c===(495))||(c===(500))||(c===(535))||(c===(510))||(c===(505))||(c===(550))||(c===(560))){return true;}return false;};R.prototype.AcceptLines=function(){return this.$val.AcceptLines();};R.ptr.prototype.CanContain=function(b){var b,c,d;c=this;d=c.Type;if((d===(11))||(d===(9))||(d===(1))||(d===(4))||(d===(106))||(d===(300))||(d===(425))||(d===(495))||(d===(500))||(d===(535))||(d===(510))||(d===(505))||(d===(550))||(d===(560))){return false;}else if(d===(7)){return 8===b;}else if(d===(410)){return 411===b;}else if(d===(411)){return!((411===b));}else if(d===(475)){if(!(AB.nil===c.LastChild)&&(478===c.LastChild.Type)){return false;}return true;}return!((8===b));};R.prototype.CanContain=function(b){return this.$val.CanContain(b);};AA=function(b){var{b,c,d,e,f,g,h,$s,$deferred,$r,$c}=$restore(this,{b});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);$r=Z.RLock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(Z,"RUnlock"),[]]);c=(d=$mapIndex(Y,$String.keyFor(b)),d!==undefined?[d.v,true]:[0,false]);e=c[0];f=c[1];if(!f){$s=2;continue;}$s=3;continue;case 2:g=-1;$s=5;case 5:return g;case 3:h=e;$s=6;case 6:return h;case 4:$s=-1;return 0;}return;}}catch(err){$err=err;$s=-1;return 0;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:AA,$c:true,$r,b,c,d,e,f,g,h,$s,$deferred};return $f;}}};$pkg.Str2NodeType=AA;AB.methods=[{prop:"Marker",name:"Marker",pkg:"",typ:$funcType([$Bool],[$String],false)},{prop:"ContainTextMarkTypes",name:"ContainTextMarkTypes",pkg:"",typ:$funcType([AD],[$Bool],true)},{prop:"IsTextMarkType",name:"IsTextMarkType",pkg:"",typ:$funcType([$String],[$Bool],false)},{prop:"IsSameTextMarkType",name:"IsSameTextMarkType",pkg:"",typ:$funcType([AB],[$Bool],false)},{prop:"SortTextMarkDataTypes",name:"SortTextMarkDataTypes",pkg:"",typ:$funcType([],[],false)},{prop:"ClearIALAttrs",name:"ClearIALAttrs",pkg:"",typ:$funcType([],[],false)},{prop:"RemoveIALAttr",name:"RemoveIALAttr",pkg:"",typ:$funcType([$String],[],false)},{prop:"SetIALAttr",name:"SetIALAttr",pkg:"",typ:$funcType([$String,$String],[],false)},{prop:"IALAttr",name:"IALAttr",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"IsEmptyBlockIAL",name:"IsEmptyBlockIAL",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"TokensStr",name:"TokensStr",pkg:"",typ:$funcType([],[$String],false)},{prop:"LastDeepestChild",name:"LastDeepestChild",pkg:"",typ:$funcType([],[AB],false)},{prop:"FirstDeepestChild",name:"FirstDeepestChild",pkg:"",typ:$funcType([],[AB],false)},{prop:"ChildByType",name:"ChildByType",pkg:"",typ:$funcType([X],[AB],false)},{prop:"ChildrenByType",name:"ChildrenByType",pkg:"",typ:$funcType([X],[AE],false)},{prop:"Text",name:"Text",pkg:"",typ:$funcType([],[$String],false)},{prop:"TextLen",name:"TextLen",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Content",name:"Content",pkg:"",typ:$funcType([],[$String],false)},{prop:"EscapeMarkerContent",name:"EscapeMarkerContent",pkg:"",typ:$funcType([],[$String],false)},{prop:"Stat",name:"Stat",pkg:"",typ:$funcType([],[$Int,$Int,$Int,$Int,$Int],false)},{prop:"TokenLen",name:"TokenLen",pkg:"",typ:$funcType([],[$Int],false)},{prop:"DocChild",name:"DocChild",pkg:"",typ:$funcType([],[AB],false)},{prop:"IsChildBlockOf",name:"IsChildBlockOf",pkg:"",typ:$funcType([AB,$Int],[$Bool],false)},{prop:"NextNodeText",name:"NextNodeText",pkg:"",typ:$funcType([],[$String],false)},{prop:"PreviousNodeText",name:"PreviousNodeText",pkg:"",typ:$funcType([],[$String],false)},{prop:"Unlink",name:"Unlink",pkg:"",typ:$funcType([],[],false)},{prop:"AppendTokens",name:"AppendTokens",pkg:"",typ:$funcType([AF],[],false)},{prop:"PrependTokens",name:"PrependTokens",pkg:"",typ:$funcType([AF],[],false)},{prop:"InsertAfter",name:"InsertAfter",pkg:"",typ:$funcType([AB],[],false)},{prop:"InsertBefore",name:"InsertBefore",pkg:"",typ:$funcType([AB],[],false)},{prop:"AppendChild",name:"AppendChild",pkg:"",typ:$funcType([AB],[],false)},{prop:"PrependChild",name:"PrependChild",pkg:"",typ:$funcType([AB],[],false)},{prop:"List",name:"List",pkg:"",typ:$funcType([],[AE],false)},{prop:"ParentIs",name:"ParentIs",pkg:"",typ:$funcType([X,AJ],[$Bool],true)},{prop:"IsBlock",name:"IsBlock",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsContainerBlock",name:"IsContainerBlock",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"IsMarker",name:"IsMarker",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"AcceptLines",name:"AcceptLines",pkg:"",typ:$funcType([],[$Bool],false)},{prop:"CanContain",name:"CanContain",pkg:"",typ:$funcType([X],[$Bool],false)}];X.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)}];R.init("",[{prop:"ID",name:"ID",embedded:false,exported:true,typ:$String,tag:"json:\",omitempty\""},{prop:"Box",name:"Box",embedded:false,exported:true,typ:$String,tag:"json:\"-\""},{prop:"Path",name:"Path",embedded:false,exported:true,typ:$String,tag:"json:\"-\""},{prop:"Spec",name:"Spec",embedded:false,exported:true,typ:$String,tag:"json:\",omitempty\""},{prop:"Type",name:"Type",embedded:false,exported:true,typ:X,tag:"json:\"-\""},{prop:"Parent",name:"Parent",embedded:false,exported:true,typ:AB,tag:"json:\"-\""},{prop:"Previous",name:"Previous",embedded:false,exported:true,typ:AB,tag:"json:\"-\""},{prop:"Next",name:"Next",embedded:false,exported:true,typ:AB,tag:"json:\"-\""},{prop:"FirstChild",name:"FirstChild",embedded:false,exported:true,typ:AB,tag:"json:\"-\""},{prop:"LastChild",name:"LastChild",embedded:false,exported:true,typ:AB,tag:"json:\"-\""},{prop:"Children",name:"Children",embedded:false,exported:true,typ:AE,tag:"json:\",omitempty\""},{prop:"Tokens",name:"Tokens",embedded:false,exported:true,typ:AF,tag:"json:\"-\""},{prop:"TypeStr",name:"TypeStr",embedded:false,exported:true,typ:$String,tag:"json:\"Type\""},{prop:"Data",name:"Data",embedded:false,exported:true,typ:$String,tag:"json:\"Data,omitempty\""},{prop:"Close",name:"Close",embedded:false,exported:true,typ:$Bool,tag:"json:\"-\""},{prop:"LastLineBlank",name:"LastLineBlank",embedded:false,exported:true,typ:$Bool,tag:"json:\"-\""},{prop:"LastLineChecked",name:"LastLineChecked",embedded:false,exported:true,typ:$Bool,tag:"json:\"-\""},{prop:"CodeMarkerLen",name:"CodeMarkerLen",embedded:false,exported:true,typ:$Int,tag:"json:\",omitempty\""},{prop:"IsFencedCodeBlock",name:"IsFencedCodeBlock",embedded:false,exported:true,typ:$Bool,tag:"json:\",omitempty\""},{prop:"CodeBlockFenceChar",name:"CodeBlockFenceChar",embedded:false,exported:true,typ:$Uint8,tag:"json:\",omitempty\""},{prop:"CodeBlockFenceLen",name:"CodeBlockFenceLen",embedded:false,exported:true,typ:$Int,tag:"json:\",omitempty\""},{prop:"CodeBlockFenceOffset",name:"CodeBlockFenceOffset",embedded:false,exported:true,typ:$Int,tag:"json:\",omitempty\""},{prop:"CodeBlockOpenFence",name:"CodeBlockOpenFence",embedded:false,exported:true,typ:AF,tag:"json:\",omitempty\""},{prop:"CodeBlockInfo",name:"CodeBlockInfo",embedded:false,exported:true,typ:AF,tag:"json:\",omitempty\""},{prop:"CodeBlockCloseFence",name:"CodeBlockCloseFence",embedded:false,exported:true,typ:AF,tag:"json:\",omitempty\""},{prop:"HtmlBlockType",name:"HtmlBlockType",embedded:false,exported:true,typ:$Int,tag:"json:\",omitempty\""},{prop:"ListData",name:"ListData",embedded:false,exported:true,typ:AG,tag:"json:\",omitempty\""},{prop:"TaskListItemChecked",name:"TaskListItemChecked",embedded:false,exported:true,typ:$Bool,tag:"json:\",omitempty\""},{prop:"TableAligns",name:"TableAligns",embedded:false,exported:true,typ:AH,tag:"json:\",omitempty\""},{prop:"TableCellAlign",name:"TableCellAlign",embedded:false,exported:true,typ:$Int,tag:"json:\",omitempty\""},{prop:"TableCellContentWidth",name:"TableCellContentWidth",embedded:false,exported:true,typ:$Int,tag:"json:\",omitempty\""},{prop:"TableCellContentMaxWidth",name:"TableCellContentMaxWidth",embedded:false,exported:true,typ:$Int,tag:"json:\",omitempty\""},{prop:"LinkType",name:"LinkType",embedded:false,exported:true,typ:$Int,tag:"json:\",omitempty\""},{prop:"LinkRefLabel",name:"LinkRefLabel",embedded:false,exported:true,typ:AF,tag:"json:\",omitempty\""},{prop:"HeadingLevel",name:"HeadingLevel",embedded:false,exported:true,typ:$Int,tag:"json:\",omitempty\""},{prop:"HeadingSetext",name:"HeadingSetext",embedded:false,exported:true,typ:$Bool,tag:"json:\",omitempty\""},{prop:"HeadingNormalizedID",name:"HeadingNormalizedID",embedded:false,exported:true,typ:$String,tag:"json:\",omitempty\""},{prop:"MathBlockDollarOffset",name:"MathBlockDollarOffset",embedded:false,exported:true,typ:$Int,tag:"json:\",omitempty\""},{prop:"FootnotesRefLabel",name:"FootnotesRefLabel",embedded:false,exported:true,typ:AF,tag:"json:\",omitempty\""},{prop:"FootnotesRefId",name:"FootnotesRefId",embedded:false,exported:true,typ:$String,tag:"json:\",omitempty\""},{prop:"FootnotesRefs",name:"FootnotesRefs",embedded:false,exported:true,typ:AE,tag:"json:\",omitempty\""},{prop:"HtmlEntityTokens",name:"HtmlEntityTokens",embedded:false,exported:true,typ:AF,tag:"json:\",omitempty\""},{prop:"KramdownIAL",name:"KramdownIAL",embedded:false,exported:true,typ:AI,tag:"json:\"-\""},{prop:"Properties",name:"Properties",embedded:false,exported:true,typ:AK,tag:"json:\",omitempty\""},{prop:"TextMarkType",name:"TextMarkType",embedded:false,exported:true,typ:$String,tag:"json:\",omitempty\""},{prop:"TextMarkAHref",name:"TextMarkAHref",embedded:false,exported:true,typ:$String,tag:"json:\",omitempty\""},{prop:"TextMarkATitle",name:"TextMarkATitle",embedded:false,exported:true,typ:$String,tag:"json:\",omitempty\""},{prop:"TextMarkInlineMathContent",name:"TextMarkInlineMathContent",embedded:false,exported:true,typ:$String,tag:"json:\",omitempty\""},{prop:"TextMarkInlineMemoContent",name:"TextMarkInlineMemoContent",embedded:false,exported:true,typ:$String,tag:"json:\",omitempty\""},{prop:"TextMarkBlockRefID",name:"TextMarkBlockRefID",embedded:false,exported:true,typ:$String,tag:"json:\",omitempty\""},{prop:"TextMarkBlockRefSubtype",name:"TextMarkBlockRefSubtype",embedded:false,exported:true,typ:$String,tag:"json:\",omitempty\""},{prop:"TextMarkFileAnnotationRefID",name:"TextMarkFileAnnotationRefID",embedded:false,exported:true,typ:$String,tag:"json:\",omitempty\""},{prop:"TextMarkTextContent",name:"TextMarkTextContent",embedded:false,exported:true,typ:$String,tag:"json:\",omitempty\""},{prop:"AttributeViewID",name:"AttributeViewID",embedded:false,exported:true,typ:$String,tag:"json:\",omitempty\""},{prop:"AttributeViewType",name:"AttributeViewType",embedded:false,exported:true,typ:$String,tag:"json:\",omitempty\""},{prop:"CustomBlockFenceOffset",name:"CustomBlockFenceOffset",embedded:false,exported:true,typ:$Int,tag:"json:\",omitempty\""},{prop:"CustomBlockInfo",name:"CustomBlockInfo",embedded:false,exported:true,typ:$String,tag:"json:\",omitempty\""}]);S.init("",[{prop:"Typ",name:"Typ",embedded:false,exported:true,typ:$Int,tag:"json:\",omitempty\""},{prop:"Tight",name:"Tight",embedded:false,exported:true,typ:$Bool,tag:"json:\",omitempty\""},{prop:"BulletChar",name:"BulletChar",embedded:false,exported:true,typ:$Uint8,tag:"json:\",omitempty\""},{prop:"Start",name:"Start",embedded:false,exported:true,typ:$Int,tag:"json:\",omitempty\""},{prop:"Delimiter",name:"Delimiter",embedded:false,exported:true,typ:$Uint8,tag:"json:\",omitempty\""},{prop:"Padding",name:"Padding",embedded:false,exported:true,typ:$Int,tag:"json:\",omitempty\""},{prop:"MarkerOffset",name:"MarkerOffset",embedded:false,exported:true,typ:$Int,tag:"json:\",omitempty\""},{prop:"Checked",name:"Checked",embedded:false,exported:true,typ:$Bool,tag:"json:\",omitempty\""},{prop:"Marker",name:"Marker",embedded:false,exported:true,typ:AF,tag:"json:\",omitempty\""},{prop:"Num",name:"Num",embedded:false,exported:true,typ:$Int,tag:"json:\",omitempty\""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=B.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.Testing=false;Q=$makeMap(X.keyFor,[{k:0,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",0,12)},{k:1,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",12,25)},{k:2,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",25,36)},{k:3,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",36,56)},{k:4,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",56,73)},{k:5,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",73,87)},{k:6,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",87,107)},{k:7,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",107,115)},{k:8,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",115,127)},{k:9,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",127,140)},{k:10,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",140,154)},{k:11,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",154,167)},{k:12,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",167,195)},{k:13,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",195,224)},{k:14,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",224,252)},{k:15,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",252,269)},{k:16,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",269,277)},{k:17,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",277,289)},{k:18,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",289,308)},{k:19,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",308,328)},{k:20,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",328,347)},{k:21,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",347,367)},{k:22,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",367,377)},{k:23,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",377,400)},{k:24,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",400,424)},{k:25,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",424,447)},{k:26,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",447,471)},{k:27,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",471,483)},{k:28,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",483,505)},{k:29,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",505,524)},{k:30,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",524,547)},{k:31,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",547,560)},{k:32,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",560,573)},{k:33,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",573,581)},{k:34,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",581,590)},{k:35,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",590,598)},{k:36,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",598,613)},{k:37,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",613,629)},{k:38,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",629,642)},{k:39,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",642,656)},{k:40,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",656,668)},{k:41,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",668,680)},{k:42,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",680,693)},{k:43,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",693,706)},{k:44,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",706,720)},{k:45,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",720,739)},{k:46,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",739,753)},{k:47,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",753,761)},{k:48,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",761,772)},{k:100,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",772,794)},{k:101,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",794,811)},{k:102,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",811,839)},{k:103,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",839,868)},{k:104,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",868,896)},{k:105,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",896,925)},{k:106,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",925,934)},{k:107,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",934,947)},{k:108,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",947,959)},{k:109,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",959,972)},{k:200,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",972,981)},{k:201,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",981,997)},{k:202,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",997,1009)},{k:203,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1009,1023)},{k:300,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1023,1036)},{k:301,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1036,1059)},{k:302,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1059,1079)},{k:303,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1079,1103)},{k:304,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1103,1117)},{k:305,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1117,1141)},{k:306,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1141,1162)},{k:307,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1162,1187)},{k:400,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1187,1200)},{k:401,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1200,1220)},{k:405,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1220,1235)},{k:410,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1235,1256)},{k:411,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1256,1272)},{k:412,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1272,1288)},{k:415,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1288,1295)},{k:420,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1295,1308)},{k:425,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1308,1327)},{k:426,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1327,1356)},{k:427,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1356,1382)},{k:428,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1382,1412)},{k:430,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1412,1424)},{k:431,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1424,1438)},{k:432,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1438,1455)},{k:433,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1455,1471)},{k:434,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1471,1494)},{k:450,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1494,1502)},{k:451,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1502,1521)},{k:452,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1521,1541)},{k:453,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1541,1560)},{k:454,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1560,1580)},{k:455,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1580,1600)},{k:456,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1600,1619)},{k:460,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1619,1626)},{k:461,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1626,1643)},{k:462,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1643,1661)},{k:465,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1661,1680)},{k:466,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1680,1693)},{k:467,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1693,1707)},{k:468,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1707,1732)},{k:475,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1732,1746)},{k:476,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1746,1770)},{k:477,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1770,1796)},{k:478,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1796,1821)},{k:485,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1821,1828)},{k:486,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1828,1845)},{k:487,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1845,1863)},{k:490,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1863,1870)},{k:491,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1870,1887)},{k:492,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1887,1905)},{k:495,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1905,1920)},{k:496,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1920,1945)},{k:497,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1945,1967)},{k:498,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1967,1993)},{k:500,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",1993,2003)},{k:505,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",2003,2012)},{k:510,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",2012,2021)},{k:515,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",2021,2028)},{k:516,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",2028,2045)},{k:517,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",2045,2063)},{k:520,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",2063,2076)},{k:521,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",2076,2099)},{k:522,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",2099,2123)},{k:525,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",2123,2129)},{k:530,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",2129,2141)},{k:535,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",2141,2151)},{k:540,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",2151,2172)},{k:541,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",2172,2195)},{k:542,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",2195,2221)},{k:543,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",2221,2246)},{k:550,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",2246,2263)},{k:560,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",2263,2278)},{k:1024,v:$substring("NodeDocumentNodeParagraphNodeHeadingNodeHeadingC8hMarkerNodeThematicBreakNodeBlockquoteNodeBlockquoteMarkerNodeListNodeListItemNodeHTMLBlockNodeInlineHTMLNodeCodeBlockNodeCodeBlockFenceOpenMarkerNodeCodeBlockFenceCloseMarkerNodeCodeBlockFenceInfoMarkerNodeCodeBlockCodeNodeTextNodeEmphasisNodeEmA6kOpenMarkerNodeEmA6kCloseMarkerNodeEmU8eOpenMarkerNodeEmU8eCloseMarkerNodeStrongNodeStrongA6kOpenMarkerNodeStrongA6kCloseMarkerNodeStrongU8eOpenMarkerNodeStrongU8eCloseMarkerNodeCodeSpanNodeCodeSpanOpenMarkerNodeCodeSpanContentNodeCodeSpanCloseMarkerNodeHardBreakNodeSoftBreakNodeLinkNodeImageNodeBangNodeOpenBracketNodeCloseBracketNodeOpenParenNodeCloseParenNodeLinkTextNodeLinkDestNodeLinkTitleNodeLinkSpaceNodeHTMLEntityNodeLinkRefDefBlockNodeLinkRefDefNodeLessNodeGreaterNodeTaskListItemMarkerNodeStrikethroughNodeStrikethrough1OpenMarkerNodeStrikethrough1CloseMarkerNodeStrikethrough2OpenMarkerNodeStrikethrough2CloseMarkerNodeTableNodeTableHeadNodeTableRowNodeTableCellNodeEmojiNodeEmojiUnicodeNodeEmojiImgNodeEmojiAliasNodeMathBlockNodeMathBlockOpenMarkerNodeMathBlockContentNodeMathBlockCloseMarkerNodeInlineMathNodeInlineMathOpenMarkerNodeInlineMathContentNodeInlineMathCloseMarkerNodeBackslashNodeBackslashContentNodeVditorCaretNodeFootnotesDefBlockNodeFootnotesDefNodeFootnotesRefNodeToCNodeHeadingIDNodeYamlFrontMatterNodeYamlFrontMatterOpenMarkerNodeYamlFrontMatterContentNodeYamlFrontMatterCloseMarkerNodeBlockRefNodeBlockRefIDNodeBlockRefSpaceNodeBlockRefTextNodeBlockRefDynamicTextNodeMarkNodeMark1OpenMarkerNodeMark1CloseMarkerNodeMark2OpenMarkerNodeMark2CloseMarkerNodeKramdownBlockIALNodeKramdownSpanIALNodeTagNodeTagOpenMarkerNodeTagCloseMarkerNodeBlockQueryEmbedNodeOpenBraceNodeCloseBraceNodeBlockQueryEmbedScriptNodeSuperBlockNodeSuperBlockOpenMarkerNodeSuperBlockLayoutMarkerNodeSuperBlockCloseMarkerNodeSupNodeSupOpenMarkerNodeSupCloseMarkerNodeSubNodeSubOpenMarkerNodeSubCloseMarkerNodeGitConflictNodeGitConflictOpenMarkerNodeGitConflictContentNodeGitConflictCloseMarkerNodeIFrameNodeAudioNodeVideoNodeKbdNodeKbdOpenMarkerNodeKbdCloseMarkerNodeUnderlineNodeUnderlineOpenMarkerNodeUnderlineCloseMarkerNodeBrNodeTextMarkNodeWidgetNodeFileAnnotationRefNodeFileAnnotationRefIDNodeFileAnnotationRefSpaceNodeFileAnnotationRefTextNodeAttributeViewNodeCustomBlockNodeTypeMaxVal",2278,2292)}]);Y=$makeMap($String.keyFor,[]);Z=new F.RWMutex.ptr(new F.Mutex.ptr(0,0),0,0,0,0);$r=V();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["github.com/88250/lute/parse"]=(function(){var $pkg={},$init,A,B,C,G,K,D,E,I,F,H,L,J,AA,AB,AC,AD,CA,CL,CW,CX,CY,CZ,DA,DB,DC,DD,DE,DF,DG,DH,DI,DJ,DK,DL,DM,DN,DO,DP,DQ,DR,T,AL,AN,AY,AZ,BK,BL,BM,BN,BO,BP,BQ,BR,BZ,CG,CN,CP,CQ,CR,CS,CT,CV,a,M,N,O,P,R,S,U,V,W,X,Z,AE,AF,AG,AH,AI,AJ,AK,AM,AO,AP,AQ,AR,AS,AT,AU,AV,AW,AX,BA,BD,BE,BG,BH,BI,BJ,BS,BT,BU,BV,BW,BX,BY,CC,CD,CE,CF,CH,CI,CJ,CK,CM,CU;A=$packages["bytes"];B=$packages["github.com/88250/lute/ast"];C=$packages["github.com/88250/lute/editor"];G=$packages["github.com/88250/lute/html"];K=$packages["github.com/88250/lute/html/atom"];D=$packages["github.com/88250/lute/lex"];E=$packages["github.com/88250/lute/util"];I=$packages["strconv"];F=$packages["strings"];H=$packages["sync"];L=$packages["unicode"];J=$packages["unicode/utf8"];AA=$pkg.Context=$newType(0,$kindStruct,"parse.Context",true,"github.com/88250/lute/parse",true,function(Tree_,ParseOption_,Tip_,oldtip_,currentLine_,currentLineLen_,offset_,column_,nextNonspace_,nextNonspaceColumn_,indent_,indented_,blank_,partiallyConsumedTab_,allClosed_,lastMatchedContainer_,rootIAL_){this.$val=this;if(arguments.length===0){this.Tree=DH.nil;this.ParseOption=DL.nil;this.Tip=CY.nil;this.oldtip=CY.nil;this.currentLine=CW.nil;this.currentLineLen=0;this.offset=0;this.column=0;this.nextNonspace=0;this.nextNonspaceColumn=0;this.indent=0;this.indented=false;this.blank=false;this.partiallyConsumedTab=false;this.allClosed=false;this.lastMatchedContainer=CY.nil;this.rootIAL=CY.nil;return;}this.Tree=Tree_;this.ParseOption=ParseOption_;this.Tip=Tip_;this.oldtip=oldtip_;this.currentLine=currentLine_;this.currentLineLen=currentLineLen_;this.offset=offset_;this.column=column_;this.nextNonspace=nextNonspace_;this.nextNonspaceColumn=nextNonspaceColumn_;this.indent=indent_;this.indented=indented_;this.blank=blank_;this.partiallyConsumedTab=partiallyConsumedTab_;this.allClosed=allClosed_;this.lastMatchedContainer=lastMatchedContainer_;this.rootIAL=rootIAL_;});AB=$pkg.InlineContext=$newType(0,$kindStruct,"parse.InlineContext",true,"github.com/88250/lute/parse",true,function(tokens_,tokensLen_,pos_,delimiters_,brackets_){this.$val=this;if(arguments.length===0){this.tokens=CW.nil;this.tokensLen=0;this.pos=0;this.delimiters=DM.nil;this.brackets=DM.nil;return;}this.tokens=tokens_;this.tokensLen=tokensLen_;this.pos=pos_;this.delimiters=delimiters_;this.brackets=brackets_;});AC=$pkg.Tree=$newType(0,$kindStruct,"parse.Tree",true,"github.com/88250/lute/parse",true,function(Root_,Context_,lexer_,inlineContext_,Name_,ID_,Box_,Path_,HPath_,Marks_,Created_,Updated_,Hash_){this.$val=this;if(arguments.length===0){this.Root=CY.nil;this.Context=DI.nil;this.lexer=DJ.nil;this.inlineContext=DK.nil;this.Name="";this.ID="";this.Box="";this.Path="";this.HPath="";this.Marks=DC.nil;this.Created=new $Int64(0,0);this.Updated=new $Int64(0,0);this.Hash="";return;}this.Root=Root_;this.Context=Context_;this.lexer=lexer_;this.inlineContext=inlineContext_;this.Name=Name_;this.ID=ID_;this.Box=Box_;this.Path=Path_;this.HPath=HPath_;this.Marks=Marks_;this.Created=Created_;this.Updated=Updated_;this.Hash=Hash_;});AD=$pkg.Options=$newType(0,$kindStruct,"parse.Options",true,"github.com/88250/lute/parse",true,function(GFMTable_,GFMTaskListItem_,GFMStrikethrough_,GFMAutoLink_,Footnotes_,HeadingID_,ToC_,Emoji_,AliasEmoji_,EmojiAlias_,EmojiSite_,VditorWYSIWYG_,VditorIR_,VditorSV_,ProtyleWYSIWYG_,InlineMathAllowDigitAfterOpenMarker_,Setext_,YamlFrontMatter_,BlockRef_,FileAnnotationRef_,Mark_,KramdownBlockIAL_,KramdownSpanIAL_,Tag_,ImgPathAllowSpace_,SuperBlock_,Sup_,Sub_,GitConflict_,LinkRef_,IndentCodeBlock_,ParagraphBeginningSpace_,DataImage_,TextMark_,HTMLTag2TextMark_,Spin_){this.$val=this;if(arguments.length===0){this.GFMTable=false;this.GFMTaskListItem=false;this.GFMStrikethrough=false;this.GFMAutoLink=false;this.Footnotes=false;this.HeadingID=false;this.ToC=false;this.Emoji=false;this.AliasEmoji=false;this.EmojiAlias=false;this.EmojiSite="";this.VditorWYSIWYG=false;this.VditorIR=false;this.VditorSV=false;this.ProtyleWYSIWYG=false;this.InlineMathAllowDigitAfterOpenMarker=false;this.Setext=false;this.YamlFrontMatter=false;this.BlockRef=false;this.FileAnnotationRef=false;this.Mark=false;this.KramdownBlockIAL=false;this.KramdownSpanIAL=false;this.Tag=false;this.ImgPathAllowSpace=false;this.SuperBlock=false;this.Sup=false;this.Sub=false;this.GitConflict=false;this.LinkRef=false;this.IndentCodeBlock=false;this.ParagraphBeginningSpace=false;this.DataImage=false;this.TextMark=false;this.HTMLTag2TextMark=false;this.Spin=false;return;}this.GFMTable=GFMTable_;this.GFMTaskListItem=GFMTaskListItem_;this.GFMStrikethrough=GFMStrikethrough_;this.GFMAutoLink=GFMAutoLink_;this.Footnotes=Footnotes_;this.HeadingID=HeadingID_;this.ToC=ToC_;this.Emoji=Emoji_;this.AliasEmoji=AliasEmoji_;this.EmojiAlias=EmojiAlias_;this.EmojiSite=EmojiSite_;this.VditorWYSIWYG=VditorWYSIWYG_;this.VditorIR=VditorIR_;this.VditorSV=VditorSV_;this.ProtyleWYSIWYG=ProtyleWYSIWYG_;this.InlineMathAllowDigitAfterOpenMarker=InlineMathAllowDigitAfterOpenMarker_;this.Setext=Setext_;this.YamlFrontMatter=YamlFrontMatter_;this.BlockRef=BlockRef_;this.FileAnnotationRef=FileAnnotationRef_;this.Mark=Mark_;this.KramdownBlockIAL=KramdownBlockIAL_;this.KramdownSpanIAL=KramdownSpanIAL_;this.Tag=Tag_;this.ImgPathAllowSpace=ImgPathAllowSpace_;this.SuperBlock=SuperBlock_;this.Sup=Sup_;this.Sub=Sub_;this.GitConflict=GitConflict_;this.LinkRef=LinkRef_;this.IndentCodeBlock=IndentCodeBlock_;this.ParagraphBeginningSpace=ParagraphBeginningSpace_;this.DataImage=DataImage_;this.TextMark=TextMark_;this.HTMLTag2TextMark=HTMLTag2TextMark_;this.Spin=Spin_;});CA=$pkg.delimiter=$newType(0,$kindStruct,"parse.delimiter",true,"github.com/88250/lute/parse",false,function(node_,typ_,num_,originalNum_,canOpen_,canClose_,previous_,next_,active_,image_,bracketAfter_,index_,previousDelimiter_){this.$val=this;if(arguments.length===0){this.node=CY.nil;this.typ=0;this.num=0;this.originalNum=0;this.canOpen=false;this.canClose=false;this.previous=DM.nil;this.next=DM.nil;this.active=false;this.image=false;this.bracketAfter=false;this.index=0;this.previousDelimiter=DM.nil;return;}this.node=node_;this.typ=typ_;this.num=num_;this.originalNum=originalNum_;this.canOpen=canOpen_;this.canClose=canClose_;this.previous=previous_;this.next=next_;this.active=active_;this.image=image_;this.bracketAfter=bracketAfter_;this.index=index_;this.previousDelimiter=previousDelimiter_;});CL=$pkg.blockStartFunc=$newType(4,$kindFunc,"parse.blockStartFunc",true,"github.com/88250/lute/parse",false,null);CW=$sliceType($Uint8);CX=$sliceType(CW);CY=$ptrType(B.Node);CZ=$sliceType(CY);DA=$ptrType(B.ListData);DB=$sliceType($Int);DC=$sliceType($String);DD=$sliceType(DC);DE=$ptrType(DC);DF=$ptrType(CZ);DG=$sliceType(B.NodeType);DH=$ptrType(AC);DI=$ptrType(AA);DJ=$ptrType(D.Lexer);DK=$ptrType(AB);DL=$ptrType(AD);DM=$ptrType(CA);DN=$ptrType(G.Node);DO=$ptrType(G.Attribute);DP=$sliceType(DO);DQ=$sliceType(CL);DR=$mapType($String,$String);M=function(b,c){var b,c,d;if(!b.Context.ParseOption.YamlFrontMatter||b.Context.indented||!(CY.nil===b.Root.FirstChild)){return 0;}if(b.parseYamlFrontMatter()){d=new B.Node.ptr("","","","",425,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");b.Root.AppendChild(d);b.Context.Tip=d;return 2;}return 0;};$pkg.YamlFrontMatterStart=M;N=function(b,c){var{b,c,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:if(O(c)){$s=1;continue;}$s=2;continue;case 1:$r=c.finalize(b);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;case 2:$s=-1;return 0;}return;}var $f={$blk:N,$c:true,$r,b,c,$s};return $f;};$pkg.YamlFrontMatterContinue=N;AA.ptr.prototype.yamlFrontMatterFinalize=function(b){var b,c,d;c=this;d=$subslice(b.Tokens,3);d=D.TrimWhitespace(d);if(c.ParseOption.VditorWYSIWYG||c.ParseOption.VditorIR||c.ParseOption.VditorSV){if(A.HasSuffix(d,$pkg.YamlFrontMatterMarkerCaret)){d=A.TrimSuffix(d,$pkg.YamlFrontMatterMarkerCaret);d=$appendSlice(d,C.CaretTokens);}}if(A.HasSuffix(d,$pkg.YamlFrontMatterMarker)){d=$subslice(d,0,(d.$length-3>>0));}b.Tokens=d;b.AppendChild(new B.Node.ptr("","","","",426,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));b.AppendChild(new B.Node.ptr("","","","",427,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,d,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));b.AppendChild(new B.Node.ptr("","","","",428,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));};AA.prototype.yamlFrontMatterFinalize=function(b){return this.$val.yamlFrontMatterFinalize(b);};AC.ptr.prototype.parseYamlFrontMatter=function(){var b,c,d,e,f;b=this;if(!((45===(c=b.Context.currentLine,(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]))))){return false;}d=0;e=0;while(true){if(!(e<b.Context.currentLineLen&&(45===(f=b.Context.currentLine,((e<0||e>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+e]))))){break;}d=d+(1)>>0;e=e+(1)>>0;}return 3===d;};AC.prototype.parseYamlFrontMatter=function(){return this.$val.parseYamlFrontMatter();};O=function(b){var b,c,d,e,f,g,h;if(b.ParseOption.KramdownBlockIAL&&BG(b.currentLine)){c=b.parseKramdownBlockIAL(b.currentLine);if(0<c.$length){b.Tip.ID=(d=$mapIndex(BD(c),$String.keyFor("id")),d!==undefined?d.v:"");b.Tip.KramdownIAL=c;b.Tip.InsertAfter(new B.Node.ptr("","","","",455,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,b.currentLine,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));return true;}}if(!((45===(e=b.currentLine,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]))))){return false;}f=0;g=0;while(true){if(!(g<b.currentLineLen&&(45===(h=b.currentLine,((g<0||g>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+g]))))){break;}f=f+(1)>>0;g=g+(1)>>0;}return 3===f;};P=function(b,c){var{b,c,d,e,f,g,h,i,j,k,l,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=[d];e=[e];f=[f];f[0]=CZ.nil;$r=B.Walk(b.Root,(function(c,d,e,f){return function $b(g,h){var{g,h,i,j,k,l,m,n,o,$s,$r,$c}=$restore(this,{g,h});$s=$s||0;s:while(true){switch($s){case 0:i=[i];if(!h){$s=-1;return 2;}if(33===g.Type){$s=1;continue;}$s=2;continue;case 1:i[0]=CZ.nil;$r=B.Walk(g,(function(c,d,e,f,i){return function(j,k){var j,k,l,m;if(!k){return 2;}if(400===j.Type){l=j.ChildByType(401);if(!(CY.nil===l)){m=new B.Node.ptr("","","","",40,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,l.Tokens,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");j.InsertBefore(m);}i[0]=$append(i[0],j);}return 2;};})(c,d,e,f,i));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=i[0];k=0;while(true){if(!(k<j.$length)){break;}l=((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]);l.Unlink();k++;}m=g.ChildByType(34);if(CY.nil===m){$s=-1;return 2;}g.InsertBefore(m);if(CY.nil===g.ChildByType(40)){n=g.ChildByType(36);if(!(CY.nil===n)){o=g.ChildByType(41);if(!(CY.nil===o)){n.InsertAfter(new B.Node.ptr("","","","",40,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,o.Tokens,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));}}}case 2:$s=-1;return 2;}return;}var $f={$blk:$b,$c:true,$r,g,h,i,j,k,l,m,n,o,$s};return $f;};})(c,d,e,f));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=f[0];h=0;while(true){if(!(h<g.$length)){break;}i=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]);i.Unlink();h++;}f[0]=CZ.nil;e[0]=DC.nil;d[0]=CY.nil;$r=B.Walk(b.Root,(function(c,d,e,f){return function(j,k){var j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;l=j.Type;if(l===(27)){R(j,"code",(e.$ptr||(e.$ptr=new DE(function(){return this.$target[0];},function($v){this.$target[0]=$v;},e))),(f.$ptr||(f.$ptr=new DF(function(){return this.$target[0];},function($v){this.$target[0]=$v;},f))),k);}else if(l===(460)){R(j,"tag",(e.$ptr||(e.$ptr=new DE(function(){return this.$target[0];},function($v){this.$target[0]=$v;},e))),(f.$ptr||(f.$ptr=new DF(function(){return this.$target[0];},function($v){this.$target[0]=$v;},f))),k);}else if(l===(304)){R(j,"inline-math",(e.$ptr||(e.$ptr=new DE(function(){return this.$target[0];},function($v){this.$target[0]=$v;},e))),(f.$ptr||(f.$ptr=new DF(function(){return this.$target[0];},function($v){this.$target[0]=$v;},f))),k);}else if(l===(17)){R(j,"em",(e.$ptr||(e.$ptr=new DE(function(){return this.$target[0];},function($v){this.$target[0]=$v;},e))),(f.$ptr||(f.$ptr=new DF(function(){return this.$target[0];},function($v){this.$target[0]=$v;},f))),k);}else if(l===(22)){R(j,"strong",(e.$ptr||(e.$ptr=new DE(function(){return this.$target[0];},function($v){this.$target[0]=$v;},e))),(f.$ptr||(f.$ptr=new DF(function(){return this.$target[0];},function($v){this.$target[0]=$v;},f))),k);}else if(l===(101)){R(j,"s",(e.$ptr||(e.$ptr=new DE(function(){return this.$target[0];},function($v){this.$target[0]=$v;},e))),(f.$ptr||(f.$ptr=new DF(function(){return this.$target[0];},function($v){this.$target[0]=$v;},f))),k);}else if(l===(450)){R(j,"mark",(e.$ptr||(e.$ptr=new DE(function(){return this.$target[0];},function($v){this.$target[0]=$v;},e))),(f.$ptr||(f.$ptr=new DF(function(){return this.$target[0];},function($v){this.$target[0]=$v;},f))),k);}else if(l===(520)){R(j,"u",(e.$ptr||(e.$ptr=new DE(function(){return this.$target[0];},function($v){this.$target[0]=$v;},e))),(f.$ptr||(f.$ptr=new DF(function(){return this.$target[0];},function($v){this.$target[0]=$v;},f))),k);}else if(l===(490)){R(j,"sub",(e.$ptr||(e.$ptr=new DE(function(){return this.$target[0];},function($v){this.$target[0]=$v;},e))),(f.$ptr||(f.$ptr=new DF(function(){return this.$target[0];},function($v){this.$target[0]=$v;},f))),k);}else if(l===(485)){R(j,"sup",(e.$ptr||(e.$ptr=new DE(function(){return this.$target[0];},function($v){this.$target[0]=$v;},e))),(f.$ptr||(f.$ptr=new DF(function(){return this.$target[0];},function($v){this.$target[0]=$v;},f))),k);}else if(l===(515)){R(j,"kbd",(e.$ptr||(e.$ptr=new DE(function(){return this.$target[0];},function($v){this.$target[0]=$v;},e))),(f.$ptr||(f.$ptr=new DF(function(){return this.$target[0];},function($v){this.$target[0]=$v;},f))),k);}else if(l===(33)){R(j,"a",(e.$ptr||(e.$ptr=new DE(function(){return this.$target[0];},function($v){this.$target[0]=$v;},e))),(f.$ptr||(f.$ptr=new DF(function(){return this.$target[0];},function($v){this.$target[0]=$v;},f))),k);}else if(l===(430)){R(j,"block-ref",(e.$ptr||(e.$ptr=new DE(function(){return this.$target[0];},function($v){this.$target[0]=$v;},e))),(f.$ptr||(f.$ptr=new DF(function(){return this.$target[0];},function($v){this.$target[0]=$v;},f))),k);}else if((l===(16))||(l===(29))||(l===(306))||(l===(40))||(l===(431))||(l===(44))||(l===(400))){if(1>e[0].$length){return 2;}if(k){d[0]=new B.Node.ptr("","","","",530,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,F.Join(e[0]," "),"","","","","","","",($bytesToString(G.EscapeHTML(j.Tokens))),"","",0,"");if(306===j.Type){d[0].TextMarkTextContent="";d[0].TextMarkInlineMathContent=($bytesToString(G.EscapeHTML(j.Tokens)));if(j.ParentIs(109,DG.nil)&&!c[0]){d[0].TextMarkInlineMathContent=F.ReplaceAll(d[0].TextMarkInlineMathContent,"\\|","|");}}else if(400===j.Type){m=j.ChildByType(401);if(!(CY.nil===m)){d[0].TextMarkTextContent=($bytesToString(G.EscapeHTML(m.Tokens)));}}else if(431===j.Type){d[0].TextMarkBlockRefSubtype="s";d[0].TextMarkTextContent=j.TokensStr();n=j.Parent.ChildByType(433);if(CY.nil===n){n=j.Parent.ChildByType(434);d[0].TextMarkBlockRefSubtype="d";}if(!(CY.nil===n)){d[0].TextMarkTextContent=n.TokensStr();}d[0].TextMarkBlockRefID=j.Parent.ChildByType(431).TokensStr();}else if(j.ParentIs(33,DG.nil)&&!j.ParentIs(34,DG.nil)){o=j.Next;if(!(CY.nil===o)&&(40===o.Type)){j.Next.PrependTokens(j.Tokens);return 2;}p=CY.nil;q=j.Parent;while(true){if(!(!(CY.nil===q))){break;}if(33===q.Type){p=q;break;}q=q.Parent;}if(!(CY.nil===p)){r=p.ChildByType(41);if(!(CY.nil===r)){d[0].TextMarkAHref=($bytesToString(r.Tokens));}s=p.ChildByType(42);if(!(CY.nil===s)){d[0].TextMarkATitle=($bytesToString(s.Tokens));}}}}else{t=j.Next;if(!(CY.nil===t)&&(40===t.Type)){return 2;}d[0].KramdownIAL=j.Parent.KramdownIAL;if(j.IsMarker()){j.Parent.InsertBefore(d[0]);}else{j.InsertBefore(d[0]);}}}else if(l===(530)){if(1>e[0].$length){return 2;}if(k){u=false;v=e[0];w=0;while(true){if(!(w<v.$length)){break;}x=((w<0||w>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+w]);if(j.IsTextMarkType(x)){u=true;break;}w++;}if(!u){e[0]=$append(e[0],j.TextMarkType);j.TextMarkType=F.Join(e[0]," ");}}return 2;}return 2;};})(c,d,e,f));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=f[0];k=0;while(true){if(!(k<j.$length)){break;}l=((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]);l.Unlink();k++;}$s=-1;return;}return;}var $f={$blk:P,$c:true,$r,b,c,d,e,f,g,h,i,j,k,l,$s};return $f;};$pkg.NestedInlines2FlattedSpansHybrid=P;R=function(b,c,d,e,f){var b,c,d,e,f,g,h;if(f){d.$set($append(d.$get(),c));}else{d.$set($subslice((d.$get()),0,(d.$get().$length-1>>0)));e.$set($append(e.$get(),b));g=b.FirstChild;while(true){if(!(!(CY.nil===g))){break;}h=g.Next;if(530===g.Type){b.InsertBefore(g);}g=h;}}};AA.ptr.prototype.parseToC=function(b){var{b,c,d,e,f,$s,$r,$c}=$restore(this,{b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=D.Split(b.Tokens,10);if(!((1===d.$length))){$s=-1;return CY.nil;}e=A.TrimSpace((0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]));$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(c.ParseOption.VditorWYSIWYG||c.ParseOption.VditorIR||c.ParseOption.VditorSV){f=A.ReplaceAll(f,C.CaretTokens,CW.nil);}if(!A.EqualFold(f,(new CW($stringToBytes("[toc]"))))){$s=-1;return CY.nil;}$s=-1;return new B.Node.ptr("","","","",415,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");}return;}var $f={$blk:AA.ptr.prototype.parseToC,$c:true,$r,b,c,d,e,f,$s};return $f;};AA.prototype.parseToC=function(b){return this.$val.parseToC(b);};S=function(b,c){var{b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:if(b.Context.indented){$s=-1;return 0;}d=b.parseThematicBreak();e=d[0];f=d[1];if(e){$s=1;continue;}$s=2;continue;case 1:$r=b.Context.closeUnmatchedBlocks();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=b.Context.addChild(4);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;h.Tokens=f;b.Context.advanceOffset(b.Context.currentLineLen-b.Context.offset>>0,false);$s=-1;return 2;case 2:$s=-1;return 0;}return;}var $f={$blk:S,$c:true,$r,b,c,d,e,f,g,h,$s};return $f;};$pkg.ThematicBreakStart=S;AC.ptr.prototype.parseThematicBreak=function(){var b,c,d,e,f,g,h,i,j,k,l,m;b=false;c=CW.nil;d=this;e=0;f=0;g=d.Context.currentLine;h=false;i=g.$length;j=d.Context.nextNonspace;while(true){if(!(j<(i-1>>0))){break;}k=((j<0||j>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+j]);if((32===k)||(9===k)){j=j+(1)>>0;continue;}if(!((45===k))&&!((95===k))&&!((42===k))){return[b,c];}if(!((0===f))){if(!((f===k))){return[b,c];}}else{f=k;}e=e+(1)>>0;j=j+(1)>>0;}if((d.Context.ParseOption.VditorWYSIWYG||d.Context.ParseOption.VditorIR||d.Context.ParseOption.VditorSV||d.Context.ParseOption.ProtyleWYSIWYG)&&h){c=C.CaretTokens;}l=3<=e;m=c;b=l;c=m;return[b,c];};AC.prototype.parseThematicBreak=function(){return this.$val.parseThematicBreak();};AC.ptr.prototype.parseText=function(b){var b,c,d,e,f;c=this;d=b.pos;while(true){if(!(b.pos<b.tokensLen)){break;}if(c.isMarker((e=b.tokens,f=b.pos,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f])))){break;}b.pos=b.pos+(1)>>0;}return new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,$subslice(b.tokens,d,b.pos),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");};AC.prototype.parseText=function(b){return this.$val.parseText(b);};AC.ptr.prototype.isMarker=function(b){var b,c;c=this;if(D.IsMarker(b)){return true;}if(c.Context.ParseOption.Sup&&(94===b)){return true;}return false;};AC.prototype.isMarker=function(b){return this.$val.isMarker(b);};AC.ptr.prototype.parseBackslash=function(b,c){var b,c,d,e,f,g,h,i,j,k,l,m,n,o;d=this;if(c.pos===(c.tokensLen-1>>0)){c.pos=c.pos+(1)>>0;return new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,T,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");}c.pos=c.pos+(1)>>0;g=(e=c.tokens,f=c.pos,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));if(10===g){c.pos=c.pos+(1)>>0;return new B.Node.ptr("","","","",31,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,new CW([g]),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");}if(D.IsASCIIPunct(g)){if((60===g)&&!(CY.nil===d.Context.oldtip)&&(106===d.Context.oldtip.Type)){h=$subslice(c.tokens,c.pos);if(A.HasPrefix(h,(new CW($stringToBytes("<br />"))))){return new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,T,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");}}c.pos=c.pos+(1)>>0;i=new B.Node.ptr("","","","",400,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");b.AppendChild(i);i.AppendChild(new B.Node.ptr("","","","",401,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,new CW([g]),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));return CY.nil;}if(d.Context.ParseOption.VditorWYSIWYG||d.Context.ParseOption.VditorIR||d.Context.ParseOption.ProtyleWYSIWYG){j=$subslice(c.tokens,c.pos);k=C.CaretTokens;if(k.$length<j.$length&&A.HasPrefix(j,k)){g=(l=c.tokens,m=c.pos+k.$length>>0,((m<0||m>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+m]));if(D.IsASCIIPunct(g)){if((60===g)&&!(CY.nil===d.Context.oldtip)&&(106===d.Context.oldtip.Type)){n=$subslice(c.tokens,(c.pos+k.$length>>0));if(A.HasPrefix(n,(new CW($stringToBytes("<br />"))))){return new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,T,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");}}c.pos=c.pos+(k.$length)>>0;c.pos=c.pos+(1)>>0;o=new B.Node.ptr("","","","",400,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");b.AppendChild(o);o.AppendChild(new B.Node.ptr("","","","",401,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,new CW([g]),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));if(d.Context.ParseOption.ProtyleWYSIWYG){o.InsertBefore(new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,k,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));}else{b.AppendChild(new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,k,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));}return CY.nil;}}}return new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,T,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");};AC.prototype.parseBackslash=function(b,c){return this.$val.parseBackslash(b,c);};AC.ptr.prototype.parseNewline=function(b,c){var b,c,d,e,f,g,h,i,j,k,l,m,n;d=CY.nil;e=this;f=c.pos;c.pos=c.pos+(1)>>0;g=false;h=b.LastChild;if(!(CY.nil===h)&&(16===h.Type)){i=h.Tokens;j=i.$length;if(32===(k=j-1>>0,((k<0||k>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+k]))){l=D.TrimRight(i);h.Tokens=l[1];if(1<j){g=32===(m=i.$length-2>>0,((m<0||m>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+m]));}}}d=new B.Node.ptr("","","","",32,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,new CW([(n=c.tokens,((f<0||f>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+f]))]),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");if(g){d.Type=31;}return d;};AC.prototype.parseNewline=function(b,c){return this.$val.parseNewline(b,c);};AC.ptr.prototype.MergeText=function(){var b;b=this;b.mergeText(b.Root);};AC.prototype.MergeText=function(){return this.$val.MergeText();};AC.ptr.prototype.mergeText=function(b){var b,c,d,e;c=this;d=b.FirstChild;while(true){if(!(!(CY.nil===d))){break;}e=d.Next;if(16===d.Type){while(true){if(!(!(CY.nil===e)&&(16===e.Type))){break;}d.AppendTokens(e.Tokens);e.Unlink();e=d.Next;}}else if(40===d.Type){while(true){if(!(!(CY.nil===e)&&(40===e.Type))){break;}d.AppendTokens(e.Tokens);e.Unlink();e=d.Next;}}else{c.mergeText(d);}d=e;}};AC.prototype.mergeText=function(b){return this.$val.mergeText(b);};AA.ptr.prototype.parseTable=function(b){var aa,ab,ac,ad,ae,af,ag,ah,ai,aj,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=CY.nil;d=CY.nil;e=this;f=CW.nil;g=b.Tokens.$length;h=0;i=0;while(true){if(!(i<g)){break;}if(e.ParseOption.ProtyleWYSIWYG){j=D.Split(b.Tokens,10);k=e.findTableDelimRow(j);if(-1===k){return[c,d];}l=e.parseTableDelimRow(D.TrimWhitespace(((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k])));if(DB.nil===l){return[c,d];}if((2===g)&&(1===l.$length)&&(0===(0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0]))&&!A.Contains(f,(new CW($stringToBytes("|"))))){return[c,d];}m=CZ.nil;n=0;while(true){if(!(n<k)){break;}o=e.parseTableRow(D.TrimWhitespace(((n<0||n>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+n])),l,true);if(CY.nil===o){return[c,d];}m=$append(m,o);p=o.FirstChild;while(true){if(!(!(CY.nil===p))){break;}q=A.Index(p.Tokens,(new CW($stringToBytes("{:"))));if(!((0===q))){p=p.Next;continue;}r=$subslice(p.Tokens,q);s=e.parseKramdownSpanIAL(r);t=s[0];u=s[1];if(0<u.$length){v=$subslice(r,0,(t+1>>0));if(A.Contains(v,(new CW($stringToBytes("span"))))||A.Contains(v,(new CW($stringToBytes("fn__none"))))||A.Contains(v,(new CW($stringToBytes("width:"))))){p.KramdownIAL=u;p.Tokens=$subslice(p.Tokens,v.$length);w=new B.Node.ptr("","","","",456,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,v,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");p.PrependChild(w);}}p=p.Next;}n=n+(1)>>0;}d=new B.Node.ptr("","","","",106,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,l,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");d.TableAligns=l;d.AppendChild(e.newTableHead(m));x=k+1>>0;while(true){if(!(x<j.$length)){break;}y=D.TrimWhitespace(((x<0||x>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+x]));z=e.parseTableRow(y,l,false);if(CY.nil===z){return[c,d];}if(e.ParseOption.KramdownSpanIAL){aa=z.FirstChild;while(true){if(!(!(CY.nil===aa))){break;}ab=A.Index(aa.Tokens,(new CW($stringToBytes("{:"))));if(!((0===ab))){aa=aa.Next;continue;}ac=$subslice(aa.Tokens,ab);ad=e.parseKramdownSpanIAL(ac);ae=ad[0];af=ad[1];if(0<af.$length){ag=$subslice(ac,0,(ae+1>>0));if(A.Contains(ag,(new CW($stringToBytes("span"))))||A.Contains(ag,(new CW($stringToBytes("fn__none"))))||A.Contains(ag,(new CW($stringToBytes("width:"))))){aa.KramdownIAL=af;aa.Tokens=$subslice(aa.Tokens,ag.$length);ah=new B.Node.ptr("","","","",456,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,ag,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");aa.PrependChild(ah);}}aa=aa.Next;}}d.AppendChild(z);x=x+(1)>>0;}return[c,d];}else{if((10===(ai=b.Tokens,((i<0||i>=ai.$length)?($throwRuntimeError("index out of range"),undefined):ai.$array[ai.$offset+i])))||(0===i)){if(0===i){f=$subslice(b.Tokens,i);}else{f=$subslice(b.Tokens,(i+1>>0));}aj=e.parseTable0(f);if(!(CY.nil===aj)){if(0<h){c=new B.Node.ptr("","","","",1,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,$subslice(b.Tokens,0,i),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");}d=aj;d.Tokens=f;break;}}}h=h+(1)>>0;i=i+(1)>>0;}return[c,d];};AA.prototype.parseTable=function(b){return this.$val.parseTable(b);};AA.ptr.prototype.parseTable0=function(b){var aa,ab,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=CY.nil;d=this;e=D.Split(b,10);f=e.$length;if(2>f){return c;}g=D.TrimWhitespace((1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1]));if(2>g.$length){return c;}h=d.parseTableDelimRow(g);if(DB.nil===h){return c;}if((2===f)&&(1===h.$length)&&(0===(0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0]))&&!A.Contains(b,(new CW($stringToBytes("|"))))){return c;}i=d.parseTableRow(D.TrimWhitespace((0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0])),h,true);if(CY.nil===i){return c;}if(d.ParseOption.KramdownSpanIAL){j=i.FirstChild;while(true){if(!(!(CY.nil===j))){break;}k=A.LastIndex(j.Tokens,(new CW($stringToBytes("{:"))));if(0>k){j=j.Next;continue;}l=$subslice(j.Tokens,k);m=d.parseKramdownSpanIAL(l);n=m[0];o=m[1];if(0<o.$length){j.KramdownIAL=o;p=$subslice(l,0,(n+1>>0));j.Tokens=$subslice(j.Tokens,0,(j.Tokens.$length-p.$length>>0));q=new B.Node.ptr("","","","",456,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,p,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");j.InsertAfter(q);j=j.Next;}j=j.Next;}}c=new B.Node.ptr("","","","",106,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,h,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");c.TableAligns=h;c.AppendChild(d.newTableHead(new CZ([i])));r=2;while(true){if(!(r<f)){break;}s=D.TrimWhitespace(((r<0||r>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+r]));t=d.parseTableRow(s,h,false);if(CY.nil===t){return c;}if(d.ParseOption.KramdownSpanIAL){u=t.FirstChild;while(true){if(!(!(CY.nil===u))){break;}v=A.LastIndex(u.Tokens,(new CW($stringToBytes("{:"))));if(0>v){u=u.Next;continue;}w=$subslice(u.Tokens,v);x=d.parseKramdownSpanIAL(w);y=x[0];z=x[1];if(0<z.$length){u.KramdownIAL=z;aa=$subslice(w,0,(y+1>>0));u.Tokens=$subslice(u.Tokens,0,(u.Tokens.$length-aa.$length>>0));ab=new B.Node.ptr("","","","",456,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,aa,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");u.InsertAfter(ab);u=u.Next;}u=u.Next;}}c.AppendChild(t);r=r+(1)>>0;}return c;};AA.prototype.parseTable0=function(b){return this.$val.parseTable0(b);};AA.ptr.prototype.newTableHead=function(b){var b,c,d,e,f,g,h,i,j;c=this;d=new B.Node.ptr("","","","",107,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");e=b;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);h=new B.Node.ptr("","","","",108,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");d.AppendChild(h);i=g.FirstChild;while(true){if(!(!(CY.nil===i))){break;}j=i.Next;h.AppendChild(i);i=j;}f++;}return d;};AA.prototype.newTableHead=function(b){return this.$val.newTableHead(b);};U=function(b,c,d){var b,c,d,e,f,g,h;if((c+1>>0)>=b.$length||c<1){return false;}e=A.IndexByte($subslice(b,0,c),d);g=0===(f=A.Count($subslice(b,0,c),new CW([d]))%2,f===f?f:$throwRuntimeError("integer divide by zero"));if(g){return false;}h=A.IndexByte($subslice(b,(c+1>>0)),d);return-1<e&&-1<h;};AA.ptr.prototype.parseTableRow=function(b,c,d){var b,c,d,e,f,g,h,i,j,k,l,m,n,o;e=CY.nil;f=this;e=new B.Node.ptr("","","","",108,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,c,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");g=A.Index(b,(new CW($stringToBytes("\\|"))));if(0<g){if(U(b,g,36)||U(b,g,96)){b=A.ReplaceAll(b,(new CW($stringToBytes("\\|"))),(new CW($stringToBytes("\\|"))));}}h=D.SplitWithoutBackslashEscape(b,124);if(1>h.$length){e=CY.nil;return e;}if(D.IsBlank((0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0]))){h=$subslice(h,1);}if(h.$length>0&&D.IsBlank((i=h.$length-1>>0,((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i])))){h=$subslice(h,0,(h.$length-1>>0));}j=h.$length;k=c.$length;if(d&&j>k){e=CY.nil;return e;}l=0;m=CW.nil;while(true){if(!(l<j&&l<k)){break;}m=D.TrimWhitespace(((l<0||l>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+l]));m=A.ReplaceAll(m,(new CW($stringToBytes("|"))),(new CW($stringToBytes("|"))));n=new B.Node.ptr("","","","",109,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,((l<0||l>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+l]),0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");n.Tokens=m;e.AppendChild(n);l=l+(1)>>0;}while(true){if(!(l<k)){break;}o=new B.Node.ptr("","","","",109,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,((l<0||l>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+l]),0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");e.AppendChild(o);l=l+(1)>>0;}return e;};AA.prototype.parseTableRow=function(b,c,d){return this.$val.parseTableRow(b,c,d);};AA.ptr.prototype.findTableDelimRow=function(b){var b,c,d,e,f,g,h,i;c=0;d=this;e=b.$length;if(2>e){c=-1;return c;}f=b;g=0;while(true){if(!(g<f.$length)){break;}h=g;i=((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]);if(!(DB.nil===d.parseTableDelimRow(i))){c=h;return c;}g++;}c=-1;return c;};AA.prototype.findTableDelimRow=function(b){return this.$val.findTableDelimRow(b);};AA.ptr.prototype.parseTableDelimRow=function(b){var b,c,d,e,f,g,h,i,j,k,l,m,n,o;c=DB.nil;d=this;e=b.$length;if(1>e){c=DB.nil;return c;}f=0;g=0;while(true){if(!(g<e)){break;}f=((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g]);if(!((124===f))&&!((45===f))&&!((58===f))&&!((32===f))){c=DB.nil;return c;}g=g+(1)>>0;}h=A.Index(b,(new CW($stringToBytes("\\|"))));if(0<h){if(U(b,h,36)||U(b,h,96)){b=A.ReplaceAll(b,(new CW($stringToBytes("\\|"))),(new CW($stringToBytes("\\|"))));}}i=D.SplitWithoutBackslashEscape(b,124);if(D.IsBlank((0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0]))){i=$subslice(i,1);}if(i.$length>0&&D.IsBlank((j=i.$length-1>>0,((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j])))){i=$subslice(i,0,(i.$length-1>>0));}k=DB.nil;l=i;m=0;while(true){if(!(m<l.$length)){break;}n=((m<0||m>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+m]);n=D.TrimWhitespace(n);n=A.ReplaceAll(n,(new CW($stringToBytes("|"))),(new CW($stringToBytes("|"))));if(1>e||CW.nil===n){c=DB.nil;return c;}o=d.tableDelimAlign(n);if(-1===o){c=DB.nil;return c;}k=$append(k,o);m++;}c=k;return c;};AA.prototype.parseTableDelimRow=function(b){return this.$val.parseTableDelimRow(b);};AA.ptr.prototype.tableDelimAlign=function(b){var b,c,d,e,f,g,h,i,j,k,l,m;c=this;d=b.$length;if(1>d){return-1;}e=false;f=false;g=e;h=f;i=(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0]);g=58===i;k=(j=d-1>>0,((j<0||j>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+j]));h=58===k;l=1;m=0;while(true){if(!(l<(d-1>>0))){break;}m=((l<0||l>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+l]);if(!((45===m))){return-1;}l=l+(1)>>0;}if(g&&h){return 2;}if(g){return 1;}if(h){return 3;}return 0;};AA.prototype.tableDelimAlign=function(b){return this.$val.tableDelimAlign(b);};V=function(b,c){var{b,c,d,e,f,g,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:if(!b.Context.ParseOption.SuperBlock||b.Context.indented){$s=-1;return 0;}d=b.parseSuperBlock();e=d[0];f=d[1];if(e){$s=1;continue;}$s=2;continue;case 1:$r=b.Context.closeUnmatchedBlocks();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=b.Context.addChild(475);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;b.Context.addChildMarker(476,CW.nil);b.Context.addChildMarker(477,f);b.Context.offset=b.Context.currentLineLen-1>>0;$s=-1;return 1;case 2:$s=-1;return 0;}return;}var $f={$blk:V,$c:true,$r,b,c,d,e,f,g,$s};return $f;};$pkg.SuperBlockStart=V;W=function(b,c){var{b,c,d,e,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:if(!(CY.nil===c.Tip.LastChild)&&(478===c.Tip.LastChild.Type)&&c.Tip.LastChild.Close){$s=-1;return 1;}d=c.isSuperBlockClose($subslice(c.currentLine,c.nextNonspace));$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}if(d){$s=1;continue;}$s=2;continue;case 1:e=c.Tip;while(true){if(!(!(CY.nil===e))){break;}if(475===e.Type){$s=-1;return 3;}e=e.Parent;}case 2:$s=-1;return 0;}return;}var $f={$blk:W,$c:true,$r,b,c,d,e,$s};return $f;};$pkg.SuperBlockContinue=W;AA.ptr.prototype.superBlockFinalize=function(b){var{b,c,d,$s,$r,$c}=$restore(this,{b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=b.FirstChild;case 1:if(!(!(CY.nil===d))){$s=2;continue;}if(d.Close){d=d.Next;$s=1;continue;}$r=c.finalize(d);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=d.Next;$s=1;continue;case 2:$s=-1;return;}return;}var $f={$blk:AA.ptr.prototype.superBlockFinalize,$c:true,$r,b,c,d,$s};return $f;};AA.prototype.superBlockFinalize=function(b){return this.$val.superBlockFinalize(b);};AC.ptr.prototype.parseSuperBlock=function(){var b,c,d,e,f,g,h,i,j,k,l,m;b=false;c=CW.nil;d=this;g=(e=d.Context.currentLine,f=d.Context.nextNonspace,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));if(!((123===g))){return[b,c];}h=g;i=0;j=d.Context.nextNonspace;while(true){if(!(j<d.Context.currentLineLen&&(h===(k=d.Context.currentLine,((j<0||j>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+j]))))){break;}i=i+(1)>>0;j=j+(1)>>0;}if(!((3===i))){return[b,c];}c=$subslice(d.Context.currentLine,(d.Context.nextNonspace+i>>0));c=D.TrimWhitespace(c);if(!A.EqualFold(c,CW.nil)&&!A.EqualFold(c,(new CW($stringToBytes("row"))))&&!A.EqualFold(c,(new CW($stringToBytes("col"))))){return[b,c];}l=true;m=c;b=l;c=m;return[b,c];};AC.prototype.parseSuperBlock=function(){return this.$val.parseSuperBlock();};AA.ptr.prototype.isSuperBlockClose=function(b){var{b,c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{b});$s=$s||0;s:while(true){switch($s){case 0:c=false;d=this;b=D.TrimWhitespace(b);if(A.Equal(b,(new CW($stringToBytes("\xE2\x80\xB8}}}"))))){e=new B.Node.ptr("","","","",1,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,C.CaretTokens,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");d.TipAppendChild(e);}f=A.HasSuffix(b,C.CaretTokens);b=A.ReplaceAll(b,C.CaretTokens,CW.nil);if(!A.Equal((new CW($stringToBytes("}}}"))),b)){$s=-1;return c;}if(f){$s=1;continue;}$s=2;continue;case 1:g=d.Tip.ChildrenByType(1);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=h.$length;if(0<i){k=(j=i-1>>0,((j<0||j>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+j]));k.Tokens=$appendSlice(k.Tokens,C.CaretTokens);}case 2:c=true;$s=-1;return c;}return;}var $f={$blk:AA.ptr.prototype.isSuperBlockClose,$c:true,$r,b,c,d,e,f,g,h,i,j,k,$s};return $f;};AA.prototype.isSuperBlockClose=function(b){return this.$val.isSuperBlockClose(b);};X=function(b,c,d){var{b,c,d,e,$s,$r,$c}=$restore(this,{b,c,d});$s=$s||0;s:while(true){switch($s){case 0:e=DH.nil;e=new AC.ptr(CY.nil,new AA.ptr(DH.nil,d,CY.nil,CY.nil,CW.nil,0,0,0,0,0,0,false,false,false,false,CY.nil,CY.nil),DJ.nil,DK.nil,b,"","","","",DC.nil,new $Int64(0,0),new $Int64(0,0),"");e.Context.Tree=e;e.lexer=D.NewLexer(c);e.Root=new B.Node.ptr("","","","",0,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");$r=e.parseBlocks();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=e.parseInlines();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=e.finalParseBlockIAL();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e.lexer=DJ.nil;$s=-1;return e;}return;}var $f={$blk:X,$c:true,$r,b,c,d,e,$s};return $f;};$pkg.Parse=X;AC.ptr.prototype.finalParseBlockIAL=function(){var{b,c,d,e,f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:b=[b];c=[c];c[0]=this;if(!c[0].Context.ParseOption.KramdownBlockIAL){$s=-1;return;}b[0]=CZ.nil;$r=B.Walk(c[0].Root,(function(b,c){return function $b(d,e){var{d,e,f,g,h,i,j,k,l,$s,$r,$c}=$restore(this,{d,e});$s=$s||0;s:while(true){switch($s){case 0:if(!e||!d.IsBlock()||(455===d.Type)){$s=-1;return 2;}if((5===d.Type)&&!(CY.nil===d.FirstChild)&&CY.nil===d.FirstChild.Next){b[0]=$append(b[0],d);}if(""===d.ID){$s=1;continue;}$s=2;continue;case 1:f=d.IALAttr("id");if(""===f){$s=3;continue;}$s=4;continue;case 3:g=B.NewNodeID();$s=5;case 5:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;case 4:d.ID=f;if(c[0].Context.ParseOption.ProtyleWYSIWYG&&c[0].Context.ParseOption.Spin&&!((0===d.Type))&&!(CY.nil===d.Next)&&!((455===d.Next.Type))&&!(""===d.Next.ID)){$s=6;continue;}$s=7;continue;case 6:d.ID=d.Next.ID;d.KramdownIAL=d.Next.KramdownIAL;if(""===d.IALAttr("updated")){d.SetIALAttr("updated",$substring(d.ID,0,14));}h=B.NewNodeID();$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}d.Next.ID=h;d.Next.KramdownIAL=DD.nil;d.Next.SetIALAttr("id",d.Next.ID);d.Next.SetIALAttr("updated",$substring(d.Next.ID,0,14));if(!(CY.nil===d.Next.Next)&&(455===d.Next.Next.Type)){$s=9;continue;}$s=10;continue;case 9:i=BA(d.Next.KramdownIAL);$s=11;case 11:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}d.Next.Next.Tokens=i;case 10:j=BA(d.KramdownIAL);$s=12;case 12:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}$r=d.InsertAfter(new B.Node.ptr("","","","",455,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,j,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;case 7:case 2:k=d.Next;if(CY.nil===k||!((455===k.Type))){if(c[0].Context.ParseOption.ProtyleWYSIWYG){d.SetIALAttr("id",d.ID);d.SetIALAttr("updated",$substring(d.ID,0,14));}$s=-1;return 2;}d.KramdownIAL=BH(k.Tokens);if(""===d.IALAttr("updated")&&c[0].Context.ParseOption.ProtyleWYSIWYG){$s=14;continue;}$s=15;continue;case 14:d.SetIALAttr("updated",$substring(d.ID,0,14));l=BA(d.KramdownIAL);$s=16;case 16:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k.Tokens=l;case 15:$s=-1;return 2;}return;}var $f={$blk:$b,$c:true,$r,d,e,f,g,h,i,j,k,l,$s};return $f;};})(b,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=b[0];e=0;case 2:if(!(e<d.$length)){$s=3;continue;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);g=B.NewNodeID();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=(new CW($stringToBytes("{: id=\""+h+"\"}")));j=new B.Node.ptr(h,"","","",1,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");j.KramdownIAL=new DD([new DC(["id",h]),new DC(["updated",$substring(h,0,14)])]);j.ID=h;j.InsertAfter(new B.Node.ptr("","","","",455,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,i,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));f.AppendChild(j);e++;$s=2;continue;case 3:k=CY.nil;l="";if(!(CY.nil===c[0].Context.rootIAL)){$s=5;continue;}$s=6;continue;case 5:k=c[0].Context.rootIAL;$s=7;continue;case 6:m=B.NewNodeID();$s=8;case 8:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;k=new B.Node.ptr("","","","",455,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,(new CW($stringToBytes("{: id=\""+l+"\" updated=\""+$substring(l,0,14)+"\" type=\"doc\"}"))),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");c[0].Root.ID=l;c[0].ID=l;case 7:c[0].Root.AppendChild(k);$s=-1;return;}return;}var $f={$blk:AC.ptr.prototype.finalParseBlockIAL,$c:true,$r,b,c,d,e,f,g,h,i,j,k,l,m,$s};return $f;};AC.prototype.finalParseBlockIAL=function(){return this.$val.finalParseBlockIAL();};Z=function(b,c,d){var{b,c,d,e,$s,$r,$c}=$restore(this,{b,c,d});$s=$s||0;s:while(true){switch($s){case 0:e=DH.nil;e=new AC.ptr(CY.nil,new AA.ptr(DH.nil,d,CY.nil,CY.nil,CW.nil,0,0,0,0,0,0,false,false,false,false,CY.nil,CY.nil),DJ.nil,DK.nil,b,"","","","",DC.nil,new $Int64(0,0),new $Int64(0,0),"");e.Context.Tree=e;e.Root=new B.Node.ptr("","","","",0,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");e.Root.AppendChild(new B.Node.ptr("","","","",1,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,c,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));$r=e.parseInlines();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e.lexer=DJ.nil;$s=-1;return e;}return;}var $f={$blk:Z,$c:true,$r,b,c,d,e,$s};return $f;};$pkg.Inline=Z;AA.ptr.prototype.advanceOffset=function(b,c){var b,c,d,e,f,g,h,i,j,k,l;d=this;e=d.currentLine;f=0;g=0;h=f;i=g;j=0;while(true){if(!(0<b)){break;}j=(k=d.offset,((k<0||k>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+k]));if(9===j){h=4-((l=d.column%4,l===l?l:$throwRuntimeError("integer divide by zero")))>>0;if(c){d.partiallyConsumedTab=h>b;if(d.partiallyConsumedTab){i=b;}else{i=h;d.offset=d.offset+(1)>>0;}d.column=d.column+(i)>>0;b=b-(i)>>0;}else{d.partiallyConsumedTab=false;d.column=d.column+(h)>>0;d.offset=d.offset+(1)>>0;b=b-(1)>>0;}}else{d.partiallyConsumedTab=false;d.offset=d.offset+(1)>>0;d.column=d.column+(1)>>0;b=b-(1)>>0;}}};AA.prototype.advanceOffset=function(b,c){return this.$val.advanceOffset(b,c);};AA.ptr.prototype.advanceNextNonspace=function(){var b;b=this;b.offset=b.nextNonspace;b.column=b.nextNonspaceColumn;b.partiallyConsumedTab=false;};AA.prototype.advanceNextNonspace=function(){return this.$val.advanceNextNonspace();};AA.ptr.prototype.findNextNonspace=function(){var b,c,d,e,f,g;b=this;c=b.offset;d=b.column;e=0;while(true){e=(f=b.currentLine,((c<0||c>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+c]));if(32===e){c=c+(1)>>0;d=d+(1)>>0;}else if(9===e){c=c+(1)>>0;d=d+((4-((g=d%4,g===g?g:$throwRuntimeError("integer divide by zero")))>>0))>>0;}else{break;}}b.blank=10===e;b.nextNonspace=c;b.nextNonspaceColumn=d;b.indent=b.nextNonspaceColumn-b.column>>0;b.indented=4<=b.indent;};AA.prototype.findNextNonspace=function(){return this.$val.findNextNonspace();};AA.ptr.prototype.closeUnmatchedBlocks=function(){var{b,c,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:b=this;if(!b.allClosed){$s=1;continue;}$s=2;continue;case 1:case 3:if(!(!(b.oldtip===b.lastMatchedContainer))){$s=4;continue;}c=b.oldtip.Parent;$r=b.finalize(b.oldtip);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.oldtip=c;$s=3;continue;case 4:b.allClosed=true;case 2:$s=-1;return;}return;}var $f={$blk:AA.ptr.prototype.closeUnmatchedBlocks,$c:true,$r,b,c,$s};return $f;};AA.prototype.closeUnmatchedBlocks=function(){return this.$val.closeUnmatchedBlocks();};AA.ptr.prototype.closeSuperBlockChildren=function(){var{b,c,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:b=this;c=b.Tip;case 1:if(!(!(CY.nil===c)&&!((475===c.Type)))){$s=2;continue;}$r=b.finalize(c);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c=c.Parent;$s=1;continue;case 2:$s=-1;return;}return;}var $f={$blk:AA.ptr.prototype.closeSuperBlockChildren,$c:true,$r,b,c,$s};return $f;};AA.prototype.closeSuperBlockChildren=function(){return this.$val.closeSuperBlockChildren();};AA.ptr.prototype.finalize=function(b){var{b,c,d,e,f,g,$s,$r,$c}=$restore(this,{b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=b.Parent;b.Close=true;e=b.Type;if(e===(11)){$s=2;continue;}if((e===(9))||(e===(500))||(e===(510))||(e===(505))||(e===(535))){$s=3;continue;}if(e===(1)){$s=4;continue;}if(e===(300)){$s=5;continue;}if(e===(425)){$s=6;continue;}if(e===(7)){$s=7;continue;}if(e===(475)){$s=8;continue;}if(e===(495)){$s=9;continue;}if(e===(560)){$s=10;continue;}$s=11;continue;case 2:c.codeBlockFinalize(b);$s=11;continue;case 3:c.htmlBlockFinalize(b);$s=11;continue;case 4:f=AG(b,c);$s=12;case 12:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(g){$s=-1;return;}$s=11;continue;case 5:c.mathBlockFinalize(b);$s=11;continue;case 6:c.yamlFrontMatterFinalize(b);$s=11;continue;case 7:$r=c.listFinalize(b);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=11;continue;case 8:$r=c.superBlockFinalize(b);$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=11;continue;case 9:$r=c.gitConflictFinalize(b);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=11;continue;case 10:c.customBlockFinalize(b);case 11:case 1:c.Tip=d;$s=-1;return;}return;}var $f={$blk:AA.ptr.prototype.finalize,$c:true,$r,b,c,d,e,f,g,$s};return $f;};AA.prototype.finalize=function(b){return this.$val.finalize(b);};AA.ptr.prototype.addChildMarker=function(b,c){var b,c,d,e;d=CY.nil;e=this;d=new B.Node.ptr("","","","",b,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,c,"","",true,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");e.Tip.AppendChild(d);return d;};AA.prototype.addChildMarker=function(b,c){return this.$val.addChildMarker(b,c);};AA.ptr.prototype.addChild=function(b){var{b,c,d,$s,$r,$c}=$restore(this,{b});$s=$s||0;s:while(true){switch($s){case 0:c=CY.nil;d=this;case 1:if(!(!d.Tip.CanContain(b))){$s=2;continue;}$r=d.finalize(d.Tip);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=1;continue;case 2:c=new B.Node.ptr("","","","",b,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");d.Tip.AppendChild(c);d.Tip=c;$s=-1;return c;}return;}var $f={$blk:AA.ptr.prototype.addChild,$c:true,$r,b,c,d,$s};return $f;};AA.prototype.addChild=function(b){return this.$val.addChild(b);};AA.ptr.prototype.listsMatch=function(b,c){var b,c,d;d=this;return(b.Typ===c.Typ)&&(((0===b.Delimiter)&&(0===c.Delimiter))||(b.Delimiter===c.Delimiter))&&(b.BulletChar===c.BulletChar);};AA.prototype.listsMatch=function(b,c){return this.$val.listsMatch(b,c);};AE=function(){return new AD.ptr(true,true,true,true,true,true,false,true,$pkg.EmojiAliasUnicode,$pkg.EmojiUnicodeAlias,"https://cdn.jsdelivr.net/npm/vditor/dist/images/emoji",false,false,false,false,false,true,true,false,false,false,false,false,false,false,false,false,false,false,true,true,false,true,false,false,false);};$pkg.NewOptions=AE;AA.ptr.prototype.ParentTip=function(){var b,c;b=this;c=b.Tip.Parent;if(!(CY.nil===c)){b.Tip=b.Tip.Parent;}};AA.prototype.ParentTip=function(){return this.$val.ParentTip();};AA.ptr.prototype.TipAppendChild=function(b){var b,c;c=this;c.Tip.AppendChild(b);};AA.prototype.TipAppendChild=function(b){return this.$val.TipAppendChild(b);};AF=function(b,c){var b,c;if(c.blank){return 1;}return 0;};$pkg.ParagraphContinue=AF;AG=function(b,c){var{aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:d=false;if(c.ParseOption.ParagraphBeginningSpace){e=D.TrimRight(b.Tokens);b.Tokens=e[1];}else{b.Tokens=D.TrimWhitespace(b.Tokens);}f=false;g=b.Tokens;while(true){if(!(0<g.$length&&(91===(0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0])))){break;}g=c.parseLinkRefDef(g);if(!(CW.nil===g)){b.Tokens=g;f=true;g=b.Tokens;continue;}break;}if(f&&D.IsBlankLine(b.Tokens)){b.Unlink();}if(c.ParseOption.KramdownBlockIAL&&!(CY.nil===c.Tip.Parent)&&(8===c.Tip.Parent.Type)&&b===c.Tip.Parent.FirstChild){$s=1;continue;}$s=2;continue;case 1:h=BH(b.Tokens);if(!(DD.nil===h)){$s=3;continue;}$s=4;continue;case 3:i=new B.Node.ptr("","","","",1,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,h,false,"","","","","","","","","","","",0,"");j=BD(h);i.ID=(k=$mapIndex(j,$String.keyFor("id")),k!==undefined?k.v:"");c.Tip.Parent.AppendChild(i);l=BA(h);$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$r=i.InsertAfter(new B.Node.ptr("","","","",455,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,l,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.Unlink();$s=-1;return d;case 4:case 2:if(c.ParseOption.GFMTaskListItem){$s=7;continue;}$s=8;continue;case 7:m=b.Parent;if(!(CY.nil===m)&&(8===m.Type)&&m.FirstChild===b){$s=9;continue;}$s=10;continue;case 9:if(3===m.ListData.Typ){$s=11;continue;}$s=12;continue;case 11:n=c.ParseOption.VditorWYSIWYG||c.ParseOption.VditorIR||c.ParseOption.VditorSV||c.ParseOption.ProtyleWYSIWYG;o=3<b.Tokens.$length;if(c.ParseOption.ProtyleWYSIWYG){o=3<=b.Tokens.$length;}if(o){$s=13;continue;}$s=14;continue;case 13:p=b.Tokens;if(c.ParseOption.KramdownBlockIAL){q=c.parseKramdownIALInListItem(p);if(0<q.$length){p=$subslice(p,(A.Index(p,(new CW($stringToBytes("}"))))+1>>0));b.KramdownIAL=q;}}if(((3===p.$length)&&(A.EqualFold(p,(new CW($stringToBytes("[x]"))))||A.Equal(p,(new CW($stringToBytes("[ ]"))))))||(3<p.$length&&(D.IsWhitespace((3>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+3]))||((r=C.CaretTokens,(0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0]))===(3>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+3]))||((s=C.CaretTokens,(0>=s.$length?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+0]))===(2>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+2]))))){$s=15;continue;}$s=16;continue;case 15:t=false;u=false;v=false;w=t;x=u;y=v;if(c.ParseOption.VditorWYSIWYG||c.ParseOption.VditorIR||c.ParseOption.VditorSV||c.ParseOption.ProtyleWYSIWYG){z=A.IndexByte(p,93);if(A.HasPrefix(p,C.CaretTokens)){p=A.ReplaceAll(p,C.CaretTokens,CW.nil);w=true;}else if(A.HasPrefix($subslice(p,(z+1>>0)),C.CaretTokens)){p=A.ReplaceAll(p,C.CaretTokens,CW.nil);x=true;}else if(A.Contains($subslice(p,1,z),C.CaretTokens)){p=A.ReplaceAll(p,C.CaretTokens,CW.nil);y=true;}}aa=new B.Node.ptr("","","","",100,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,$subslice(p,0,3),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,m.ListData.Checked,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");if(c.ParseOption.ProtyleWYSIWYG){b.InsertBefore(aa);}else{b.PrependChild(aa);}b.Tokens=$subslice(p,3);if(n){$s=17;continue;}$s=18;continue;case 17:ab=A.TrimSpace(b.Tokens);$s=19;case 19:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}b.Tokens=ab;if(w||x||y){b.Tokens=$appendSlice((new CW($stringToBytes(" \xE2\x80\xB8"))),b.Tokens);}else{if(!c.ParseOption.ProtyleWYSIWYG){b.Tokens=$appendSlice((new CW($stringToBytes(" "))),b.Tokens);}}case 18:if(0<b.Tokens.$length){$s=20;continue;}$s=21;continue;case 20:ac=X("",b.Tokens,c.ParseOption);$s=22;case 22:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ad=ac;ae=ad.Root.FirstChild;if(!((1===ae.Type))){if(!c.ParseOption.ProtyleWYSIWYG){m.PrependChild(new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,(new CW($stringToBytes(" "))),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));}if(!(CY.nil===b.FirstChild)){m.PrependChild(b.FirstChild);}ae.ID=b.ID;ae.KramdownIAL=b.KramdownIAL;af=CY.nil;ag=CZ.nil;ah=ae;while(true){if(!(!(CY.nil===ah)&&!((0===ah.Type)))){break;}if(455===ah.Type){if(E.IsDocIAL(ah.Tokens)){break;}}af=ah;ah=ah.Next;}ai=af;while(true){if(!(!(CY.nil===ai))){break;}ag=$append(ag,ai);ai=ai.Previous;}aj=ag;ak=0;while(true){if(!(ak<aj.$length)){break;}al=((ak<0||ak>=aj.$length)?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+ak]);b.InsertAfter(al);ak++;}b.Unlink();}case 21:case 16:case 14:case 12:case 10:case 8:if(c.ParseOption.GFMTable){am=c.parseTable(b);an=am[0];ao=am[1];if(!(CY.nil===ao)){if(!(CY.nil===an)){b.Tokens=an.Tokens;b.InsertAfter(ao);ao.Close=true;c.Tip=ao;d=true;$s=-1;return d;}else{b.Type=106;b.TableAligns=ao.TableAligns;ap=ao.FirstChild;while(true){if(!(!(CY.nil===ap))){break;}aq=ap.Next;b.AppendChild(ap);ap=aq;}}$s=-1;return d;}}if(c.ParseOption.ToC){$s=23;continue;}$s=24;continue;case 23:ar=c.parseToC(b);$s=25;case 25:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}as=ar;if(!(CY.nil===as)){b.Type=415;$s=-1;return d;}case 24:$s=-1;return d;}return;}var $f={$blk:AG,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};AH=function(b,c){var{b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:if(b.Context.indented){$s=-1;return 0;}d=b.parseMathBlock();e=d[0];f=d[1];if(e){$s=1;continue;}$s=2;continue;case 1:$r=b.Context.closeUnmatchedBlocks();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=b.Context.addChild(300);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;h.MathBlockDollarOffset=f;b.Context.advanceNextNonspace();b.Context.advanceOffset(f,false);$s=-1;return 2;case 2:$s=-1;return 0;}return;}var $f={$blk:AH,$c:true,$r,b,c,d,e,f,g,h,$s};return $f;};$pkg.MathBlockStart=AH;AI=function(b,c){var{b,c,d,e,f,g,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:d=c.currentLine;e=c.indent;if(3>=e&&c.isMathBlockClose($subslice(d,c.nextNonspace))){$s=1;continue;}$s=2;continue;case 1:$r=c.finalize(b);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;case 2:f=b.MathBlockDollarOffset;g=0;while(true){if(!(f>0)){break;}g=D.Peek(d,c.offset);if(!((32===g))&&!((9===g))){break;}c.advanceOffset(1,true);f=f-(1)>>0;}case 3:$s=-1;return 0;}return;}var $f={$blk:AI,$c:true,$r,b,c,d,e,f,g,$s};return $f;};$pkg.MathBlockContinue=AI;AA.ptr.prototype.mathBlockFinalize=function(b){var b,c,d;c=this;if(2>b.Tokens.$length){b.AppendChild(new B.Node.ptr("","","","",301,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));b.AppendChild(new B.Node.ptr("","","","",302,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));b.AppendChild(new B.Node.ptr("","","","",303,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));return;}d=$subslice(b.Tokens,2);d=D.TrimWhitespace(d);if(c.ParseOption.VditorWYSIWYG||c.ParseOption.VditorIR||c.ParseOption.VditorSV||c.ParseOption.ProtyleWYSIWYG){if(A.HasSuffix(d,$pkg.MathBlockMarkerCaret)){d=A.TrimSuffix(d,$pkg.MathBlockMarkerCaret);d=$appendSlice(d,C.CaretTokens);}}if(A.HasSuffix(d,$pkg.MathBlockMarker)){d=$subslice(d,0,(d.$length-2>>0));}b.Tokens=CW.nil;b.AppendChild(new B.Node.ptr("","","","",301,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));b.AppendChild(new B.Node.ptr("","","","",302,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,d,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));b.AppendChild(new B.Node.ptr("","","","",303,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));};AA.prototype.mathBlockFinalize=function(b){return this.$val.mathBlockFinalize(b);};AC.ptr.prototype.parseMathBlock=function(){var b,c,d,e,f,g,h,i,j,k,l,m;b=false;c=0;d=this;g=(e=d.Context.currentLine,f=d.Context.nextNonspace,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));if(!((36===g))){return[b,c];}h=g;i=0;j=d.Context.nextNonspace;while(true){if(!(j<d.Context.currentLineLen&&(h===(k=d.Context.currentLine,((j<0||j>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+j]))))){break;}i=i+(1)>>0;j=j+(1)>>0;}if(2>i){return[b,c];}l=true;m=d.Context.indent;b=l;c=m;return[b,c];};AC.prototype.parseMathBlock=function(){return this.$val.parseMathBlock();};AA.ptr.prototype.isMathBlockClose=function(b){var b,c,d,e,f,g,h,i;c=this;if(c.ParseOption.KramdownBlockIAL&&BG(b)){d=c.parseKramdownBlockIAL(b);if(0<d.$length){c.Tip.ID=(e=$mapIndex(BD(d),$String.keyFor("id")),e!==undefined?e.v:"");c.Tip.KramdownIAL=d;c.Tip.InsertAfter(new B.Node.ptr("","","","",455,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,b,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));return true;}}f=(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0]);if(!((f===36))){return false;}if(2>D.Accept(b,f)){return false;}b=D.TrimWhitespace(b);g=b;h=0;while(true){if(!(h<g.$length)){break;}i=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]);if(!((i===36))){return false;}h++;}return true;};AA.prototype.isMathBlockClose=function(b){return this.$val.isMathBlockClose(b);};AJ=function(b,c){var{b,c,d,e,f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:if(!((7===c.Type))&&b.Context.indented){$s=-1;return 0;}d=b.parseListMarker(c);e=d[0];f=d[1];if(DA.nil===e){$s=-1;return 0;}$r=b.Context.closeUnmatchedBlocks();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=(c.Type===7)&&b.Context.listsMatch(c.ListData,e);if(!((b.Context.Tip.Type===7))||!g){$s=2;continue;}$s=3;continue;case 2:h=b.Context.addChild(7);$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;i.ListData=e;case 3:j=b.Context.addChild(8);$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;k.ListData=e;if(b.Context.ParseOption.KramdownBlockIAL&&!(DD.nil===f)){$s=6;continue;}$s=7;continue;case 6:k.KramdownIAL=f;k.ID=k.IALAttr("id");l=BA(f);$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}b.Context.offset=b.Context.offset+(l.$length)>>0;case 7:k.Tokens=e.Marker;if((1===k.ListData.Typ)||((3===k.ListData.Typ)&&(0===k.ListData.BulletChar))){m=k.Previous;if(!(CY.nil===m)){k.ListData.Num=m.ListData.Num+1>>0;}else{k.ListData.Num=e.Start;}}$s=-1;return 1;}return;}var $f={$blk:AJ,$c:true,$r,b,c,d,e,f,g,h,i,j,k,l,m,$s};return $f;};$pkg.ListStart=AJ;AK=function(b,c){var b,c;if(c.blank){if(CY.nil===b.FirstChild){return 1;}c.advanceNextNonspace();}else if(c.indent>=(b.ListData.MarkerOffset+b.ListData.Padding>>0)){c.advanceOffset(b.ListData.MarkerOffset+b.ListData.Padding>>0,true);}else{return 1;}return 0;};$pkg.ListItemContinue=AK;AA.ptr.prototype.listFinalize=function(b){var{b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s,$r,$c}=$restore(this,{b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=b.FirstChild;while(true){if(!(!(CY.nil===d))){break;}if(AM(d)&&!(CY.nil===d.Next)){b.ListData.Tight=false;break;}e=d.FirstChild;while(true){if(!(!(CY.nil===e))){break;}if(AM(e)&&(!(CY.nil===d.Next)||!(CY.nil===e.Next))){b.ListData.Tight=false;break;}e=e.Next;}d=d.Next;}if(c.ParseOption.KramdownBlockIAL){$s=1;continue;}$s=2;continue;case 1:f=b.FirstChild;case 3:if(!(!(CY.nil===f))){$s=4;continue;}if(CY.nil===f.FirstChild){$s=5;continue;}$s=6;continue;case 5:if(!((455===f.Type))){$s=7;continue;}$s=8;continue;case 7:g=B.NewNodeID();$s=9;case 9:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=(new CW($stringToBytes("{: id=\""+h+"\"}")));f.KramdownIAL=new DD([new DC(["id",h])]);f.ID=h;f.InsertAfter(new B.Node.ptr("","","","",455,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,i,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));j=B.NewNodeID();$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}h=j;i=(new CW($stringToBytes("{: id=\""+h+"\"}")));k=new B.Node.ptr(h,"","","",1,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");k.KramdownIAL=new DD([new DC(["id",h])]);k.ID=h;k.InsertAfter(new B.Node.ptr("","","","",455,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,i,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));f.AppendChild(k);f=f.Next;case 8:f=f.Next;$s=3;continue;case 6:if(7<f.FirstChild.Tokens.$length&&(123===(l=f.FirstChild.Tokens,(0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0])))){$s=11;continue;}$s=12;continue;case 11:m=c.parseKramdownIALInListItem(f.FirstChild.Tokens);if(0<m.$length){$s=14;continue;}$s=15;continue;case 14:f.KramdownIAL=m;f.ID=(n=(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0]),(1>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+1]));o=BA(m);$s=16;case 16:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;f.InsertAfter(new B.Node.ptr("","","","",455,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,p,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));q=$subslice(f.FirstChild.Tokens,(A.Index(f.FirstChild.Tokens,(new CW($stringToBytes("}"))))+1>>0));q=D.TrimWhitespace(q);f.FirstChild.Tokens=q;f=f.Next;case 15:$s=13;continue;case 12:r=CW.nil;if(DD.nil===f.KramdownIAL){$s=17;continue;}$s=18;continue;case 17:s=B.NewNodeID();$s=20;case 20:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=s;r=(new CW($stringToBytes("{: id=\""+t+"\"}")));f.KramdownIAL=new DD([new DC(["id",t])]);f.ID=t;$s=19;continue;case 18:u=BA(f.KramdownIAL);$s=21;case 21:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}r=u;case 19:f.InsertAfter(new B.Node.ptr("","","","",455,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,r,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));case 13:f=f.Next;$s=3;continue;case 4:case 2:$s=-1;return;}return;}var $f={$blk:AA.ptr.prototype.listFinalize,$c:true,$r,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s};return $f;};AA.prototype.listFinalize=function(b){return this.$val.listFinalize(b);};AC.ptr.prototype.parseListMarker=function(b){var aa,ab,ac,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=DA.nil;d=DD.nil;e=this;if(4<=e.Context.indent){f=DA.nil;g=DD.nil;c=f;d=g;return[c,d];}h=e.Context.currentLine;i=$subslice(h,e.Context.nextNonspace);c=new B.ListData.ptr(0,true,0,0,0,0,e.Context.indent,false,CW.nil,-1);j=1;k=new CW([(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])]);l=0;if((43===(0>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+0]))||(45===(0>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+0]))||(42===(0>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+0]))){c.BulletChar=(0>=k.$length?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+0]);}else{m=e.parseOrderedListMarker(i);k=m[0];l=m[1];if(!(CW.nil===k)){if(!((b.Type===1))||A.Equal(AL,k)){c.Typ=1;n=I.Atoi(E.BytesToStr(k));c.Start=n[0];j=k.$length+1>>0;c.Delimiter=l;}else{o=DA.nil;p=DD.nil;c=o;d=p;return[c,d];}}else{q=DA.nil;r=DD.nil;c=q;d=r;return[c,d];}}c.Marker=k;t=(s=e.Context.nextNonspace+j>>0,((s<0||s>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+s]));if(!D.IsWhitespace(t)){u=DA.nil;v=DD.nil;c=u;d=v;return[c,d];}if((b.Type===1)&&(10===t)){w=DA.nil;x=DD.nil;c=w;d=x;return[c,d];}e.Context.advanceNextNonspace();e.Context.advanceOffset(j,true);y=e.Context.column;z=e.Context.offset;while(true){e.Context.advanceOffset(1,true);t=D.Peek(h,e.Context.offset);if((e.Context.column-y>>0)>=5||(0===(t))||(!((32===t))&&!((9===t)))){break;}}t=D.Peek(h,e.Context.offset);aa=(0===t)||(10===t);ab=e.Context.column-y>>0;if(ab>=5||ab<1||aa){c.Padding=j+1>>0;e.Context.column=y;e.Context.offset=z;t=D.Peek(h,e.Context.offset);if((32===t)||(9===t)){e.Context.advanceOffset(1,true);}}else{c.Padding=j+ab>>0;}if(!aa){ac=$subslice(h,e.Context.offset);if(e.Context.ParseOption.KramdownBlockIAL){d=e.Context.parseKramdownIALInListItem(ac);if(0<d.$length){ac=$subslice(ac,(A.Index(ac,(new CW($stringToBytes("}"))))+1>>0));}}if(e.Context.ParseOption.VditorWYSIWYG||e.Context.ParseOption.VditorIR||e.Context.ParseOption.VditorSV){ac=A.ReplaceAll(ac,C.CaretTokens,CW.nil);}if(3<=ac.$length){if((91===(0>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+0]))&&((120===(1>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+1]))||(88===(1>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+1]))||(32===(1>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+1])))&&(93===(2>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+2]))){c.Typ=3;c.Checked=(120===(1>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+1]))||(88===(1>=ac.$length?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+1]));}}}return[c,d];};AC.prototype.parseListMarker=function(b){return this.$val.parseListMarker(b);};AC.ptr.prototype.parseOrderedListMarker=function(b){var b,c,d,e,f,g,h,i,j;c=CW.nil;d=0;e=this;f=b.$length;g=0;h=0;while(true){if(!(g<f)){break;}h=((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g]);if(!D.IsDigit(h)||8<g){d=h;break;}c=$append(c,h);g=g+(1)>>0;}if(1>c.$length||(!((46===d))&&!((41===d)))){i=CW.nil;j=0;c=i;d=j;return[c,d];}return[c,d];};AC.prototype.parseOrderedListMarker=function(b){return this.$val.parseOrderedListMarker(b);};AM=function(b){var b,c;while(true){if(!(!(CY.nil===b))){break;}if(b.LastLineBlank){return true;}c=b.Type;if(!b.LastLineChecked&&((c===7)||(c===8))){b.LastLineChecked=true;b=b.LastChild;}else{b.LastLineChecked=true;break;}}return false;};AC.ptr.prototype.FindLinkRefDefLink=function(b){var{b,c,d,$s,$r,$c}=$restore(this,{b});$s=$s||0;s:while(true){switch($s){case 0:b=[b];c=[c];c[0]=CY.nil;d=this;if(!d.Context.ParseOption.LinkRef){$s=-1;return c[0];}if(d.Context.ParseOption.VditorIR||d.Context.ParseOption.VditorSV||d.Context.ParseOption.VditorWYSIWYG||d.Context.ParseOption.ProtyleWYSIWYG){b[0]=A.ReplaceAll(b[0],C.CaretTokens,CW.nil);}$r=B.Walk(d.Root,(function(b,c){return function(e,f){var e,f;if(!f||!((46===e.Type))){return 2;}if(A.EqualFold(e.Tokens,b[0])){c[0]=e.FirstChild;return 0;}return 2;};})(b,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return c[0];}return;}var $f={$blk:AC.ptr.prototype.FindLinkRefDefLink,$c:true,$r,b,c,d,$s};return $f;};AC.prototype.FindLinkRefDefLink=function(b){return this.$val.FindLinkRefDefLink(b);};AA.ptr.prototype.parseLinkRefDef=function(b){var aa,ab,ac,ad,ae,af,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=this;if(!c.ParseOption.LinkRef){return CW.nil;}d=D.TrimLeft(b);b=d[1];if(1>b.$length){return CW.nil;}e=c.parseLinkLabel(b);f=e[0];g=e[1];h=e[2];if(2>f||1>h.$length){return CW.nil;}i=g.$length;if(1>i){return CW.nil;}if(!((58===(0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0])))){return CW.nil;}g=$subslice(g,1);j=D.TrimLeft(g);k=j[0];g=j[1];l=D.StatWhitespace(k);m=l[0];if(1<m){return CW.nil;}b=g;n=c.parseLinkDest(b);o=n[0];g=n[1];p=n[2];if(CW.nil===o){return CW.nil;}q=D.TrimLeft(g);k=q[0];g=q[1];if(CW.nil===k&&0<g.$length){return CW.nil;}r=D.StatWhitespace(k);m=r[0];s=r[1];t=r[2];if(1<m){return CW.nil;}u=D.TrimLeft(g);b=u[1];v=c.parseLinkTitle(b);w=v[0];g=v[2];x=v[3];if(!w&&1>m){return CW.nil;}if(0<(s+t>>0)&&!D.IsBlankLine(g)&&!((10===(0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0])))){return CW.nil;}y=b;z=D.TrimLeft(g);k=z[0];b=z[1];aa=D.StatWhitespace(k);ab=aa[1];ac=aa[2];if(!D.IsBlankLine(b)&&0<(ab+ac>>0)){g=y;}else{g=b;}ad=c.Tree.newLink(33,h,p,x,1);ae=new B.Node.ptr("","","","",46,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,h,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");ae.AppendChild(ad);af=c.Tip;if(!((45===af.Type))){af=new B.Node.ptr("","","","",45,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");}af.AppendChild(ae);c.Tip.Parent.AppendChild(af);return g;};AA.prototype.parseLinkRefDef=function(b){return this.$val.parseLinkRefDef(b);};AA.ptr.prototype.parseLinkTitle=function(b){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;c=false;d=CW.nil;e=CW.nil;f=CW.nil;g=this;if(1>b.$length){h=true;i=CW.nil;j=b;k=CW.nil;c=h;d=i;e=j;f=k;return[c,d,e,f];}if(91===(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0])){l=true;m=CW.nil;n=b;o=CW.nil;c=l;d=m;e=n;f=o;return[c,d,e,f];}p=g.parseLinkTitleMatch(34,34,b);c=p[0];d=p[1];e=p[2];f=p[3];if(!c){q=g.parseLinkTitleMatch(39,39,b);c=q[0];d=q[1];e=q[2];f=q[3];if(!c){r=g.parseLinkTitleMatch(40,41,b);c=r[0];d=r[1];e=r[2];f=r[3];}}if(!(CW.nil===f)){if(!g.ParseOption.VditorWYSIWYG&&!g.ParseOption.VditorIR&&!g.ParseOption.VditorSV&&!g.ParseOption.ProtyleWYSIWYG){f=G.UnescapeBytes(f);}}return[c,d,e,f];};AA.prototype.parseLinkTitle=function(b){return this.$val.parseLinkTitle(b);};AA.ptr.prototype.parseBlockRefText=function(b){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;c=false;d=CW.nil;e=CW.nil;f=CW.nil;g="";h=this;if(1>b.$length){i=true;j=CW.nil;k=b;l=CW.nil;m="";c=i;d=j;e=k;f=l;g=m;return[c,d,e,f,g];}if(91===(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0])){n=true;o=CW.nil;p=b;q=CW.nil;r="";c=n;d=o;e=p;f=q;g=r;return[c,d,e,f,g];}s=h.parseLinkTitleMatch(34,34,b);c=s[0];d=s[1];e=s[2];f=s[3];g="s";if(!c){t=h.parseLinkTitleMatch(39,39,b);c=t[0];d=t[1];e=t[2];f=t[3];g="d";}if(!(CW.nil===f)){if(!h.ParseOption.VditorWYSIWYG&&!h.ParseOption.VditorIR&&!h.ParseOption.VditorSV&&!h.ParseOption.ProtyleWYSIWYG){f=G.UnescapeBytes(f);}}return[c,d,e,f,g];};AA.prototype.parseBlockRefText=function(b){return this.$val.parseBlockRefText(b);};AA.ptr.prototype.parseLinkTitleMatch=function(b,c,d){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;e=false;f=CW.nil;g=CW.nil;h=CW.nil;i=this;g=d;j=d.$length;if(2>j){return[e,f,g,h];}if(!((b===(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])))){return[e,f,g,h];}k=d;j=k.$length;l=false;m=1;n=0;o=0;while(true){if(!(m<j)){break;}p=((m<0||m>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+m]);f=$append(f,p);q=J.DecodeRune($subslice(k,m));o=q[0];n=q[1];r=1;while(true){if(!(r<n)){break;}f=$append(f,(s=m+r>>0,((s<0||s>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+s])));r=r+(1)>>0;}h=$appendSlice(h,E.StrToBytes(($encodeRune(o))));if((c===p)&&!D.IsBackslashEscapePunct(d,m)){l=true;h=$subslice(h,0,(h.$length-1>>0));break;}m=m+(n)>>0;}if(!l){f=CW.nil;return[e,f,g,h];}e=true;g=$subslice(d,(m+1>>0));return[e,f,g,h];};AA.prototype.parseLinkTitleMatch=function(b,c,d){return this.$val.parseLinkTitleMatch(b,c,d);};AA.ptr.prototype.parseLinkDest=function(b){var b,c,d,e,f,g,h;c=CW.nil;d=CW.nil;e=CW.nil;f=this;g=f.parseLinkDest1(b);c=g[0];d=g[1];e=g[2];if(CW.nil===c){h=f.parseLinkDest2(b);c=h[0];d=h[1];e=h[2];}if(!(CW.nil===c)){if(!f.ParseOption.VditorWYSIWYG&&!f.ParseOption.VditorIR&&!f.ParseOption.VditorSV&&!f.ParseOption.ProtyleWYSIWYG){e=G.EncodeDestination(G.UnescapeBytes(e));}}return[c,d,e];};AA.prototype.parseLinkDest=function(b){return this.$val.parseLinkDest(b);};AA.ptr.prototype.parseLinkDest2=function(b){var b,c,d,e,f,g,h,i,j,k,l,m,n,o;c=CW.nil;d=CW.nil;e=CW.nil;f=this;d=b;g=b.$length;if(1>g){return[c,d,e];}c=$makeSlice(CW,0,256);e=$makeSlice(CW,0,256);h=0;i=0;j=0;k=0;while(true){if(!(i<g)){break;}l=((i<0||i>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+i]);c=$append(c,l);m=J.DecodeRune($subslice(b,i));k=m[0];j=m[1];n=1;while(true){if(!(n<j)){break;}c=$append(c,(o=i+n>>0,((o<0||o>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+o])));n=n+(1)>>0;}e=$appendSlice(e,E.StrToBytes(($encodeRune(k))));if(D.IsWhitespace(l)||D.IsControl(l)){e=$subslice(e,0,(e.$length-1>>0));c=$subslice(c,0,(c.$length-1>>0));break;}if((40===l)&&!D.IsBackslashEscapePunct(b,i)){h=h+(1)>>0;}if((41===l)&&!D.IsBackslashEscapePunct(b,i)){h=h-(1)>>0;if(1>h){i=i+(1)>>0;break;}}i=i+(j)>>0;}d=$subslice(b,i);if(g>i&&!D.IsWhitespace(((i<0||i>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+i]))){c=CW.nil;return[c,d,e];}return[c,d,e];};AA.prototype.parseLinkDest2=function(b){return this.$val.parseLinkDest2(b);};AA.ptr.prototype.parseLinkDest1=function(b){var b,c,d,e,f,g,h,i,j,k,l,m,n,o;c=CW.nil;d=CW.nil;e=CW.nil;f=this;d=b;g=b.$length;if(2>g){return[c,d,e];}if(!((60===(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0])))){return[c,d,e];}c=$makeSlice(CW,0,256);e=$makeSlice(CW,0,256);h=false;i=0;j=0;k=0;while(true){if(!(i<g)){break;}l=((i<0||i>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+i]);c=$append(c,l);j=1;if(0<i){m=J.DecodeRune($subslice(b,i));k=m[0];j=m[1];n=1;while(true){if(!(n<j)){break;}c=$append(c,(o=i+n>>0,((o<0||o>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+o])));n=n+(1)>>0;}e=$appendSlice(e,E.StrToBytes(($encodeRune(k))));if((60===l)&&!D.IsBackslashEscapePunct(b,i)){c=CW.nil;return[c,d,e];}}if((62===l)&&!D.IsBackslashEscapePunct(b,i)){h=true;e=$subslice(e,0,(e.$length-1>>0));break;}i=i+(j)>>0;}if(!h){c=CW.nil;return[c,d,e];}d=$subslice(b,(i+1>>0));return[c,d,e];};AA.prototype.parseLinkDest1=function(b){return this.$val.parseLinkDest1(b);};AA.ptr.prototype.parseLinkLabel=function(b){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;c=0;d=CW.nil;e=CW.nil;f=this;g=b.$length;if(2>g){return[c,d,e];}if(!((91===(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0])))){return[c,d,e];}h=$makeSlice(CW,0,b.$length);h=$append(h,(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0]));i=false;j=1;while(true){if(!(j<g)){break;}k=((j<0||j>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+j]);h=$append(h,k);l=J.DecodeRune($subslice(b,j));m=l[0];n=l[1];o=1;while(true){if(!(o<n)){break;}h=$append(h,(p=j+o>>0,((p<0||p>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+p])));o=o+(1)>>0;}e=$appendSlice(e,E.StrToBytes(($encodeRune(m))));if((93===k)&&!D.IsBackslashEscapePunct(b,j)){i=true;e=$subslice(e,0,(e.$length-1>>0));d=$subslice(b,(j+1>>0));break;}if((91===k)&&!D.IsBackslashEscapePunct(b,j)){h=CW.nil;return[c,d,e];}j=j+(n)>>0;}if(!i||CW.nil===D.TrimWhitespace(e)||999<e.$length){h=CW.nil;return[c,d,e];}e=D.TrimWhitespace(e);if(!f.ParseOption.VditorWYSIWYG&&!f.ParseOption.VditorIR&&!f.ParseOption.VditorSV&&!f.ParseOption.ProtyleWYSIWYG){e=D.ReplaceAll(e,10,32);q=e.$length;r=0;s=0;while(true){if(!(s<q)){break;}r=((s<0||s>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+s]);if((r===32)&&s<(q-1>>0)&&((t=s+1>>0,((t<0||t>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+t]))===32)){e=$appendSlice($subslice(e,0,s),$subslice(e,(s+1>>0)));q=q-(1)>>0;}s=s+(1)>>0;}}c=h.$length;return[c,d,e];};AA.prototype.parseLinkLabel=function(b){return this.$val.parseLinkLabel(b);};AC.ptr.prototype.parseInlines=function(){var{b,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:b=this;$r=b.walkParseInline(b.Root);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(b.Context.ParseOption.KramdownSpanIAL){$s=2;continue;}$s=3;continue;case 2:$r=b.parseKramdownSpanIAL();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return;}return;}var $f={$blk:AC.ptr.prototype.parseInlines,$c:true,$r,b,$s};return $f;};AC.prototype.parseInlines=function(){return this.$val.parseInlines();};AC.ptr.prototype.walkParseInline=function(b){var{b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r,$c}=$restore(this,{b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(CY.nil===b){$s=-1;return;}d=b.Type;if(475===d){if(!(CY.nil===b.LastChild)&&(477===b.LastChild.Type)){b.Type=1;b.Tokens=$appendSlice((new CW($stringToBytes("{{{"))),b.LastChild.Tokens);b.FirstChild.Unlink();b.LastChild.Unlink();d=1;}}if((1===d)||(2===d)||(109===d)){$s=1;continue;}if(11===d){$s=2;continue;}$s=3;continue;case 1:e=b.Tokens;if(1===d){if(CW.nil===e){if(!((8===b.Parent.Type))||c.Context.ParseOption.VditorWYSIWYG||c.Context.ParseOption.VditorIR||c.Context.ParseOption.VditorSV){f=b.Next;b.Unlink();b.Next=f;}$s=-1;return;}else{g=c.Context.parseKramdownIALInListItem(e);if(0<g.$length){if(!(CY.nil===b.Previous)){b.Previous.SetIALAttr("id",(h=(0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0]),(1>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+1])));b.Unlink();$s=-1;return;}}}}i=e.$length;if(1>i){$s=-1;return;}j=new AB.ptr(e,i,0,DM.nil,DM.nil);$r=c.parseInline(b,j);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c.processEmphasis(DM.nil,j);c.mergeText(b);if(c.Context.ParseOption.GFMAutoLink&&!c.Context.ParseOption.VditorWYSIWYG&&!c.Context.ParseOption.VditorIR&&!c.Context.ParseOption.VditorSV&&!c.Context.ParseOption.ProtyleWYSIWYG){c.parseGFMAutoEmailLink(b);c.parseGFMAutoLink(b);}if(c.Context.ParseOption.Emoji){$s=5;continue;}$s=6;continue;case 5:$r=c.emoji(b);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:$s=-1;return;case 2:if(b.IsFencedCodeBlock){k=new B.Node.ptr("","","","",12,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,b.CodeBlockOpenFence,"","",false,false,false,0,false,0,b.CodeBlockFenceLen,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");b.PrependChild(k);l=new B.Node.ptr("","","","",14,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,b.CodeBlockInfo,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");b.AppendChild(l);m=new B.Node.ptr("","","","",15,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,b.Tokens,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");b.AppendChild(m);if(CW.nil===b.CodeBlockCloseFence){b.CodeBlockCloseFence=b.CodeBlockOpenFence;}n=new B.Node.ptr("","","","",13,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,b.CodeBlockCloseFence,"","",false,false,false,0,false,0,b.CodeBlockFenceLen,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");b.AppendChild(n);}else{o=new B.Node.ptr("","","","",15,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,b.Tokens,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");b.AppendChild(o);}b.Tokens=CW.nil;case 3:p=b.FirstChild;case 8:if(!(!(CY.nil===p))){$s=9;continue;}$r=c.walkParseInline(p);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=p.Next;$s=8;continue;case 9:$s=-1;return;}return;}var $f={$blk:AC.ptr.prototype.walkParseInline,$c:true,$r,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s};return $f;};AC.prototype.walkParseInline=function(b){return this.$val.walkParseInline(b);};AC.ptr.prototype.parseInlineMath=function(b){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;c=CY.nil;d=this;if(3>b.tokensLen){b.pos=b.pos+(1)>>0;c=new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,AN,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");return c;}e=b.pos;f=e;g=0;while(true){if(!(f<b.tokensLen&&(36===(h=b.tokens,((f<0||f>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+f]))))){break;}g=g+(1)>>0;f=f+(1)>>0;}if(2<=g){if(d.Context.ParseOption.ProtyleWYSIWYG){b.pos=b.pos+(1)>>0;c=new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,AN,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");return c;}i=false;j=f+g>>0;k=0;while(true){if(!(j<b.tokensLen)){break;}k=(l=b.tokens,((j<0||j>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+j]));if((36===k)&&j<(b.tokensLen-1>>0)&&(36===(m=b.tokens,n=j+1>>0,((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n])))){i=true;break;}j=j+(1)>>0;}if(i){c=new B.Node.ptr("","","","",300,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");c.AppendChild(new B.Node.ptr("","","","",301,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));c.AppendChild(new B.Node.ptr("","","","",302,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,$subslice(b.tokens,f,j),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));c.AppendChild(new B.Node.ptr("","","","",303,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));b.pos=j+2>>0;return c;}}if(!d.Context.ParseOption.InlineMathAllowDigitAfterOpenMarker&&b.tokensLen>(e+1>>0)&&D.IsDigit((o=b.tokens,p=e+1>>0,((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p])))){b.pos=b.pos+(3)>>0;c=new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,$subslice(b.tokens,e,(e+3>>0)),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");return c;}q=d.matchInlineMathEnd($subslice(b.tokens,(e+1>>0)));if(1>q){b.pos=b.pos+(1)>>0;c=new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,AN,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");return c;}if(d.Context.ParseOption.TextMark){if(A.Contains($subslice(b.tokens,(e+1>>0),((e+q>>0)+1>>0)),(new CW($stringToBytes("<span"))))){b.pos=b.pos+(1)>>0;c=new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,AN,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");return c;}}q=(e+q>>0)+2>>0;r=$subslice(b.tokens,(e+1>>0),(q-1>>0));if(1>D.TrimWhitespace(r).$length){b.pos=b.pos+(1)>>0;c=new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,AN,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");return c;}c=new B.Node.ptr("","","","",304,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");c.AppendChild(new B.Node.ptr("","","","",305,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));c.AppendChild(new B.Node.ptr("","","","",306,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,r,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));c.AppendChild(new B.Node.ptr("","","","",307,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));b.pos=q;return c;};AC.prototype.parseInlineMath=function(b){return this.$val.parseInlineMath(b);};AC.ptr.prototype.matchInlineMathEnd=function(b){var b,c,d,e,f,g;c=0;d=this;e=b.$length;while(true){if(!(c<e)){break;}if((36===((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c]))&&0<c&&!((92===(f=c-1>>0,((f<0||f>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+f]))))){if(c<(e-1>>0)){if(!D.IsDigit((g=c+1>>0,((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g])))||d.Context.ParseOption.InlineMathAllowDigitAfterOpenMarker){c=c;return c;}}else{c=c;return c;}}else if(10===((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c])){c=-1;return c;}c=c+(1)>>0;}c=-1;return c;};AC.prototype.matchInlineMathEnd=function(b){return this.$val.matchInlineMathEnd(b);};AA.ptr.prototype.parseInlineLinkDest=function(b){var{aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{b});$s=$s||0;s:while(true){switch($s){case 0:c=CW.nil;d=CW.nil;e=CW.nil;f=this;d=b;g=b.$length;if(2>g){$s=-1;return[c,d,e];}c=$makeSlice(CW,0,256);e=$makeSlice(CW,0,256);h=60===(1>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+1]);if(h){i=false;c=$append(c,(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0]),(1>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+1]));j=2;k=1;l=0;m=CW.nil;n=CW.nil;o=m;p=n;while(true){if(!(j<g)){break;}k=1;q=((j<0||j>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+j]);if(10===q){c=CW.nil;$s=-1;return[c,d,e];}if(q<128){c=$append(c,q);o=new CW([q]);}else{o=new CW([]);r=J.DecodeRune($subslice(b,j));l=r[0];k=r[1];p=E.StrToBytes(($encodeRune(l)));c=$appendSlice(c,p);o=$appendSlice(o,p);}e=$appendSlice(e,o);if((62===q)&&!D.IsBackslashEscapePunct(b,j)){e=$subslice(e,0,(e.$length-1>>0));i=true;break;}j=j+(k)>>0;}if(!i||g<=(j+1>>0)){c=CW.nil;$s=-1;return[c,d,e];}if((62===(s=j+1>>0,((s<0||s>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+s])))||(41===(t=j+1>>0,((t<0||t>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+t])))){c=$append(c,(u=j+1>>0,((u<0||u>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+u])));d=$subslice(b,(j+2>>0));}else{d=$subslice(b,(j+1>>0));}}else{v=0;w=0;x=1;y=0;z=CW.nil;aa=CW.nil;ab=z;ac=aa;ad=false;while(true){if(!(w<g)){break;}x=1;ae=((w<0||w>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+w]);if(ae<128){c=$append(c,ae);ab=new CW([ae]);}else{ab=new CW([]);af=J.DecodeRune($subslice(b,w));y=af[0];x=af[1];ac=E.StrToBytes(($encodeRune(y)));c=$appendSlice(c,ac);ab=$appendSlice(ab,ac);}e=$appendSlice(e,ab);if(!ad&&!D.IsWhitespace(ae)&&0<w){ad=true;e=$subslice(e,1);e=D.TrimWhitespace(e);}if(!f.ParseOption.ImgPathAllowSpace){if(ad&&(D.IsWhitespace(ae)||D.IsControl(ae))){e=$subslice(e,0,(e.$length-x>>0));c=$subslice(c,0,(c.$length-1>>0));v=v-(1)>>0;break;}}else{if(ad&&D.IsWhitespace(ae)&&(w+1>>0)<g){ah=(ag=w+1>>0,((ag<0||ag>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+ag]));if((34===ah)||(39===ah)){e=$subslice(e,0,(e.$length-x>>0));c=$subslice(c,0,(c.$length-1>>0));v=v-(1)>>0;break;}}}if((40===ae)&&!D.IsBackslashEscapePunct(b,w)){v=v+(1)>>0;}if((41===ae)&&!D.IsBackslashEscapePunct(b,w)){v=v-(1)>>0;if(1>v){if(40===(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0])){e=$subslice(e,1);}e=$subslice(e,0,(e.$length-1>>0));break;}}w=w+(x)>>0;}d=$subslice(b,w);if(g>w&&(!((41===((w<0||w>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+w])))&&!((32===((w<0||w>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+w])))&&!((10===((w<0||w>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+w]))))){c=CW.nil;$s=-1;return[c,d,e];}if(!((0===v))){c=CW.nil;$s=-1;return[c,d,e];}}if(!(f.ParseOption.ProtyleWYSIWYG||!f.ParseOption.DataImage)){ai=false;$s=3;continue s;}aj=A.ToLower(e);$s=4;case 4:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=A.HasPrefix(aj,(new CW($stringToBytes("data:image"))));$s=5;case 5:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ai=ak;case 3:if(ai){$s=1;continue;}$s=2;continue;case 1:al=CW.nil;am=CW.nil;an=CW.nil;c=al;d=am;e=an;$s=-1;return[c,d,e];case 2:if(!(CW.nil===c)){if((!f.ParseOption.VditorWYSIWYG&&!f.ParseOption.VditorIR&&!f.ParseOption.VditorSV&&!f.ParseOption.ProtyleWYSIWYG)&&!f.ParseOption.ImgPathAllowSpace){e=G.EncodeDestination(G.UnescapeBytes(e));}}$s=-1;return[c,d,e];}return;}var $f={$blk:AA.ptr.prototype.parseInlineLinkDest,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};AA.prototype.parseInlineLinkDest=function(b){return this.$val.parseInlineLinkDest(b);};AC.ptr.prototype.parseInlineHTML=function(b){var{aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{b});$s=$s||0;s:while(true){switch($s){case 0:c=CY.nil;d=this;e=b.tokens;f=false;g=false;if(d.Context.ParseOption.VditorWYSIWYG||d.Context.ParseOption.VditorIR||d.Context.ParseOption.VditorSV||d.Context.ParseOption.ProtyleWYSIWYG){h=A.Index(e,C.CaretTokens);f=h>b.pos;if(f){g=A.Contains(e,(new CW($stringToBytes(" \xE2\x80\xB8"))));e=A.ReplaceAll(e,C.CaretTokens,(new CW($stringToBytes("caretreplacement"))));e=A.ReplaceAll(e,(new CW($stringToBytes("\"caretreplacement"))),(new CW($stringToBytes("\" caretreplacement"))));}}i=b.pos;c=new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,new CW([(j=b.pos,((j<0||j>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+j]))]),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");if(3>b.tokensLen||b.tokensLen<=(i+1>>0)){b.pos=b.pos+(1)>>0;$s=-1;return c;}k=CW.nil;k=$append(k,((i<0||i>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+i]));if((47===(l=i+1>>0,((l<0||l>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+l])))&&1<(b.tokensLen-((i+1>>0))>>0)){k=$append(k,(m=i+1>>0,((m<0||m>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+m])));n=d.parseTagName($subslice(e,(b.pos+2>>0)));o=n[0];p=n[1];if(1>p.$length){b.pos=b.pos+(1)>>0;$s=-1;return c;}k=$appendSlice(k,p);e=o;}else{q=d.parseTagName($subslice(e,(b.pos+1>>0)));r=q[0];s=q[1];if(0<s.$length){k=$appendSlice(k,s);e=r;while(true){t=AO(e);u=t[0];v=t[1];w=t[2];if(!u){b.pos=b.pos+(1)>>0;$s=-1;return c;}e=v;k=$appendSlice(k,w);if(1>w.$length){break;}}}else{x=d.parseHTMLComment($subslice(e,(b.pos+1>>0)));y=x[0];z=x[1];aa=x[2];if(y){k=$appendSlice(k,aa);e=z;b.pos=b.pos+(k.$length)>>0;c=new B.Node.ptr("","","","",10,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,k,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");$s=-1;return c;}else{ab=d.parseProcessingInstruction($subslice(e,(b.pos+1>>0)));ac=ab[0];ad=ab[1];ae=ab[2];if(ac){k=$appendSlice(k,ae);e=ad;b.pos=b.pos+(k.$length)>>0;c=new B.Node.ptr("","","","",10,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,k,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");$s=-1;return c;}else{af=d.parseDeclaration($subslice(e,(b.pos+1>>0)));ag=af[0];ah=af[1];ai=af[2];if(ag){k=$appendSlice(k,ai);e=ah;b.pos=b.pos+(k.$length)>>0;c=new B.Node.ptr("","","","",10,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,k,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");$s=-1;return c;}else{aj=d.parseCDATA($subslice(e,(b.pos+1>>0)));ak=aj[0];al=aj[1];am=aj[2];if(ak){k=$appendSlice(k,am);e=al;b.pos=b.pos+(k.$length)>>0;c=new B.Node.ptr("","","","",10,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,k,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");$s=-1;return c;}else{b.pos=b.pos+(1)>>0;$s=-1;return c;}}}}}}an=D.TrimLeft(e);ao=an[0];e=an[1];ap=e.$length;if(1>ap){b.pos=i+1>>0;$s=-1;return c;}if(((62===(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0])))||(1<ap&&(47===(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]))&&(62===(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1])))){$s=1;continue;}$s=2;continue;case 1:k=$appendSlice(k,ao);k=$append(k,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]));if(47===(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0])){k=$append(k,(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1]));}if((d.Context.ParseOption.VditorWYSIWYG||d.Context.ParseOption.VditorIR||d.Context.ParseOption.VditorSV)&&f||d.Context.ParseOption.ProtyleWYSIWYG){if(!A.Contains(k,(new CW($stringToBytes("caretreplacement "))))&&!g){k=A.ReplaceAll(k,(new CW($stringToBytes("\" caretreplacement"))),(new CW($stringToBytes("\"caretreplacement"))));}k=A.ReplaceAll(k,(new CW($stringToBytes("caretreplacement"))),C.CaretTokens);}b.pos=b.pos+(k.$length)>>0;if(d.Context.ParseOption.ProtyleWYSIWYG){$s=3;continue;}$s=4;continue;case 3:if(A.Equal(k,(new CW($stringToBytes("<br />"))))||A.Equal(k,(new CW($stringToBytes("<br/>"))))){$s=5;continue;}if(A.HasPrefix(k,(new CW($stringToBytes("<span data-type="))))){$s=6;continue;}if(A.Equal(k,(new CW($stringToBytes("<kbd>"))))){$s=7;continue;}if(A.Equal(k,(new CW($stringToBytes("<u>"))))){$s=8;continue;}$s=9;continue;case 5:c=new B.Node.ptr("","","","",525,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");$s=-1;return c;case 6:aq=d.processSpanTag(k,"<span data-type=","</span>",b);$s=10;case 10:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}c=aq;$s=-1;return c;case 7:ar=d.processSpanTag(k,"<kbd>","</kbd>",b);$s=11;case 11:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}c=ar;$s=-1;return c;case 8:as=d.processSpanTag(k,"<u>","</u>",b);$s=12;case 12:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}c=as;$s=-1;return c;case 9:case 4:c=new B.Node.ptr("","","","",10,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,k,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");$s=-1;return c;case 2:b.pos=i+1>>0;$s=-1;return c;}return;}var $f={$blk:AC.ptr.prototype.parseInlineHTML,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};AC.prototype.parseInlineHTML=function(b){return this.$val.parseInlineHTML(b);};AC.ptr.prototype.processSpanTag=function(b,c,d,e){var{b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s,$r,$c}=$restore(this,{b,c,d,e});$s=$s||0;s:while(true){switch($s){case 0:f=CY.nil;g=this;h=$subslice(e.tokens,e.pos);if(1>h.$length){$s=-1;return f;}i=A.Index(h,(new CW($stringToBytes(d))));j=d.length;k=i+j>>0;if(h.$length<k){k=h.$length;}l=$appendSlice(b,$subslice(h,0,k));n=G.ParseFragment(A.NewReader(l),new G.Node.ptr(DN.nil,DN.nil,DN.nil,DN.nil,DN.nil,3,0,"","",DP.nil));$s=1;case 1:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];if(!((1===o.$length))){$s=-1;return f;}p=(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]);q="";r=c.length;if("<kbd>"===c||"<u>"===c){if(!g.Context.ParseOption.HTMLTag2TextMark){f=new B.Node.ptr("","","","",10,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,b,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");$s=-1;return f;}q=p.Data;}else{q=($bytesToString($subslice(b,(r+1>>0))));q=$substring(q,0,F.Index(q,"\""));}f=new B.Node.ptr("","","","",530,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,q,"","","","","","","","","","",0,"");$r=AT(f,p,g.Context.ParseOption);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e.pos=e.pos+((i+j>>0))>>0;$s=-1;return f;}return;}var $f={$blk:AC.ptr.prototype.processSpanTag,$c:true,$r,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s};return $f;};AC.prototype.processSpanTag=function(b,c,d,e){return this.$val.processSpanTag(b,c,d,e);};AC.ptr.prototype.parseCDATA=function(b){var b,c,d,e,f,g,h,i,j,k;c=false;d=CW.nil;e=CW.nil;f=this;d=b;if(8>b.$length){return[c,d,e];}if(!((33===(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0])))){return[c,d,e];}if(!((91===(1>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+1])))){return[c,d,e];}if(!((67===(2>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+2])))||!((68===(3>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+3])))||!((65===(4>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+4])))||!((84===(5>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+5])))||!((65===(6>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+6])))){return[c,d,e];}if(!((91===(7>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+7])))){return[c,d,e];}e=$appendSlice(e,$subslice(b,0,7));b=$subslice(b,7);g=0;h=0;i=b.$length;while(true){if(!(h<i)){break;}g=((h<0||h>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+h]);e=$append(e,g);if(h<=(i-3>>0)&&(93===g)&&(93===(j=h+1>>0,((j<0||j>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+j])))&&(62===(k=h+2>>0,((k<0||k>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+k])))){break;}h=h+(1)>>0;}b=$subslice(b,h);if(3>b.$length){return[c,d,e];}if(!((93===(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0])))||!((93===(1>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+1])))||!((62===(2>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+2])))){return[c,d,e];}e=$append(e,(1>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+1]),(2>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+2]));c=true;d=$subslice(b,3);return[c,d,e];};AC.prototype.parseCDATA=function(b){return this.$val.parseCDATA(b);};AC.ptr.prototype.parseDeclaration=function(b){var b,c,d,e,f,g,h,i,j,k;c=false;d=CW.nil;e=CW.nil;f=this;d=b;if(2>b.$length){return[c,d,e];}if(!((33===(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0])))){return[c,d,e];}g=0;h=0;i=$subslice(b,1);j=0;while(true){if(!(j<i.$length)){break;}g=((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]);if(D.IsWhitespace(g)){break;}if(!(65<=g&&90>=g)){return[c,d,e];}j++;}e=$append(e,(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0]),(1>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+1]));b=$subslice(b,2);k=b.$length;while(true){if(!(h<k)){break;}g=((h<0||h>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+h]);e=$append(e,g);if(62===g){break;}h=h+(1)>>0;}b=$subslice(b,h);if(1>b.$length||!((62===(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0])))){return[c,d,e];}c=true;d=$subslice(b,1);return[c,d,e];};AC.prototype.parseDeclaration=function(b){return this.$val.parseDeclaration(b);};AC.ptr.prototype.parseProcessingInstruction=function(b){var b,c,d,e,f,g,h,i,j;c=false;d=CW.nil;e=CW.nil;f=this;d=b;if(!((63===(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0])))){return[c,d,e];}e=$append(e,(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0]));b=$subslice(b,1);g=0;h=0;i=b.$length;while(true){if(!(h<i)){break;}g=((h<0||h>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+h]);e=$append(e,g);if(h<=(i-2>>0)&&(63===g)&&(62===(j=h+1>>0,((j<0||j>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+j])))){break;}h=h+(1)>>0;}b=$subslice(b,h);if(1>b.$length){return[c,d,e];}if(!((63===(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0])))||!((62===(1>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+1])))){return[c,d,e];}e=$append(e,(1>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+1]));c=true;d=$subslice(b,2);return[c,d,e];};AC.prototype.parseProcessingInstruction=function(b){return this.$val.parseProcessingInstruction(b);};AC.ptr.prototype.parseHTMLComment=function(b){var b,c,d,e,f,g,h,i,j;c=false;d=CW.nil;e=CW.nil;f=this;d=b;if(3>b.$length){return[c,d,e];}if(!((33===(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0])))||!((45===(1>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+1])))||!((45===(2>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+2])))){return[c,d,e];}g=b.$length;h=0;while(true){if(!(h<g)){break;}e=$append(e,((h<0||h>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+h]));if(h<=(g-3>>0)&&(45===((h<0||h>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+h]))&&(45===(i=h+1>>0,((i<0||i>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+i])))&&(62===(j=h+2>>0,((j<0||j>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+j])))){break;}h=h+(1)>>0;}b=$subslice(b,h);if(3>b.$length||!((45===(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0])))||!((45===(1>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+1])))||!((62===(2>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+2])))){return[c,d,e];}e=$append(e,(1>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+1]),(2>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+2]));c=true;d=$subslice(b,3);return[c,d,e];};AC.prototype.parseHTMLComment=function(b){return this.$val.parseHTMLComment(b);};AO=function(b){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;c=false;d=CW.nil;e=CW.nil;f=CW.nil;g=CW.nil;c=true;d=b;h=CW.nil;i=0;j=0;k=b;l=0;while(true){if(!(l<k.$length)){break;}i=l;j=((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]);if(!D.IsWhitespace(j)){break;}h=$append(h,j);l++;}if(1>h.$length){return[c,d,e,f,g];}b=$subslice(b,i);m=CW.nil;n=AQ(b);b=n[0];m=n[1];if(1>m.$length){return[c,d,e,f,g];}o=CW.nil;p=AP(b);c=p[0];b=p[1];o=p[2];if(!c){return[c,d,e,f,g];}d=b;e=$appendSlice(e,h);e=$appendSlice(e,m);e=$appendSlice(e,o);if(!(CW.nil===o)){f=m;g=$subslice(o,2,(o.$length-1>>0));}return[c,d,e,f,g];};$pkg.TagAttr=AO;AP=function(b){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;c=false;d=CW.nil;e=CW.nil;c=true;d=b;f=0;g=0;h=b;i=0;while(true){if(!(i<h.$length)){break;}f=i;g=((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]);if(!D.IsWhitespace(g)){break;}e=$append(e,g);i++;}if(!((61===g))){e=CW.nil;return[c,d,e];}e=$append(e,g);b=$subslice(b,(f+1>>0));if(1>b.$length){c=false;return[c,d,e];}j=b;k=0;while(true){if(!(k<j.$length)){break;}f=k;g=((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]);if(!D.IsWhitespace(g)){break;}e=$append(e,g);k++;}g=((f<0||f>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+f]);e=$append(e,g);b=$subslice(b,(f+1>>0));l=false;if(34===g){m=b;n=0;while(true){if(!(n<m.$length)){break;}f=n;g=((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]);e=$append(e,g);if(34===g){l=true;break;}n++;}}else if(39===g){o=b;p=0;while(true){if(!(p<o.$length)){break;}f=p;g=((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]);e=$append(e,g);if(39===g){l=true;break;}p++;}}else{q=b;r=0;while(true){if(!(r<q.$length)){break;}f=r;g=((r<0||r>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+r]);if(62===g){f=f-(1)>>0;break;}e=$append(e,g);if(D.IsWhitespace(g)){break;}if((34===g)||(39===g)||(61===g)||(60===g)||(62===g)||(96===g)){l=false;break;}l=true;r++;}}if(!l){c=false;e=CW.nil;return[c,d,e];}d=$subslice(b,(f+1>>0));return[c,d,e];};AQ=function(b){var b,c,d,e,f,g,h;c=CW.nil;d=CW.nil;c=b;if(!D.IsASCIILetter((0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0]))&&!((95===(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0])))&&!((58===(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0])))){return[c,d];}d=$append(d,(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0]));b=$subslice(b,1);e=0;f=0;g=b;h=0;while(true){if(!(h<g.$length)){break;}e=h;f=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]);if(!D.IsASCIILetterNumHyphen(f)&&!((95===f))&&!((46===f))&&!((58===f))){break;}d=$append(d,f);h++;}if(1>d.$length){return[c,d];}c=$subslice(b,e);return[c,d];};AC.ptr.prototype.parseTagName=function(b){var b,c,d,e,f,g,h,i;c=CW.nil;d=CW.nil;e=this;if(1>b.$length){return[c,d];}f=0;g=((f<0||f>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+f]);if(!D.IsASCIILetter(g)){h=b;i=CW.nil;c=h;d=i;return[c,d];}d=$append(d,g);f=1;while(true){if(!(f<b.$length)){break;}g=((f<0||f>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+f]);if(!D.IsASCIILetterNumHyphen(g)){break;}d=$append(d,g);f=f+(1)>>0;}c=$subslice(b,f);return[c,d];};AC.prototype.parseTagName=function(b){return this.$val.parseTagName(b);};AR=function(b,c){var{aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:if(CY.nil===b||DN.nil===c){$s=-1;return;}d=false;e=E.DomAttrValue(c,"style");if(!(""===e)){$s=1;continue;}$s=2;continue;case 1:f=AU(e);$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;b.SetIALAttr("style",e);g=BA(b.KramdownIAL);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=new B.Node.ptr("","","","",456,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,h,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");if(109===b.Type){b.PrependChild(i);}else{b.InsertAfter(i);}d=true;case 2:j=E.DomCustomAttrs(c);if(!(false===j)){$s=5;continue;}$s=6;continue;case 5:if(!d){$s=7;continue;}$s=8;continue;case 7:k=j;l=0;m=k?k.keys():undefined;n=k?k.size:0;while(true){if(!(l<n)){break;}o=m.next().value;p=k.get(o);if(p===undefined){l++;continue;}q=p.k;r=p.v;r=G.UnescapeHTMLStr(r);b.SetIALAttr(q,r);l++;}s=BA(b.KramdownIAL);$s=10;case 10:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=s;u=new B.Node.ptr("","","","",456,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,t,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");if(109===b.Type){b.PrependChild(u);}else{b.InsertAfter(u);}d=true;$s=9;continue;case 8:v=j;w=0;x=v?v.keys():undefined;y=v?v.size:0;while(true){if(!(w<y)){break;}z=x.next().value;aa=v.get(z);if(aa===undefined){w++;continue;}ab=aa.k;ac=aa.v;ac=G.UnescapeHTMLStr(ac);b.SetIALAttr(ab,ac);w++;}ad=BA(b.KramdownIAL);$s=11;case 11:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ae=ad;af=b.Next;if(109===b.Type){af=b.FirstChild;}af.Tokens=ae;case 9:case 6:if((87554===c.DataAtom)||(37378===c.DataAtom)){$s=12;continue;}$s=13;continue;case 12:ag=E.DomAttrValue(c,"colspan");if(!(""===ag)){b.SetIALAttr("colspan",ag);}ah=E.DomAttrValue(c,"rowspan");if(!(""===ah)){b.SetIALAttr("rowspan",ah);}ai=E.DomAttrValue(c,"class");if(!(""===ai)){b.SetIALAttr("class",ai);}if(!(""===ag)||!(""===ah)||!(""===ai)){$s=14;continue;}$s=15;continue;case 14:aj=BA(b.KramdownIAL);$s=16;case 16:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}ak=aj;if(!d){$s=17;continue;}$s=18;continue;case 17:al=new B.Node.ptr("","","","",456,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,ak,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");b.PrependChild(al);d=true;$s=19;continue;case 18:am=BA(b.KramdownIAL);$s=20;case 20:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}b.FirstChild.Tokens=am;case 19:case 15:case 13:if(!(DN.nil===c.Parent)&&!(DN.nil===c.Parent.Parent)){$s=21;continue;}$s=22;continue;case 21:an=E.DomAttrValue(c.Parent.Parent,"style");if(!(""===an)){$s=23;continue;}$s=24;continue;case 23:if(d){$s=25;continue;}$s=26;continue;case 25:ao=BH(b.Next.Tokens);ao=$append(ao,new DC(["parent-style",an]));ap=BA(ao);$s=28;case 28:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}b.Next.Tokens=ap;b.SetIALAttr("parent-style",an);b.KramdownIAL=ao;$s=27;continue;case 26:b.SetIALAttr("parent-style",an);aq=BA(b.KramdownIAL);$s=29;case 29:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ar=aq;as=new B.Node.ptr("","","","",456,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,ar,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");b.InsertAfter(as);case 27:case 24:case 22:$s=-1;return;}return;}var $f={$blk:AR,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};$pkg.SetSpanIAL=AR;AS=function(b,c){var b,c,d,e,f,g,h,i,j;d=F.Split(b.TextMarkType," ");e=d;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);h=c;i=0;while(true){if(!(i<h.$length)){break;}j=((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]);if(g===j){return true;}i++;}f++;}return false;};$pkg.ContainTextMark=AS;AT=function(b,c,d){var{aa,ab,ac,ad,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{b,c,d});$s=$s||0;s:while(true){switch($s){case 0:b.Type=530;e=E.DomAttrValue(c,"data-type");if(""===e){if(c.DataAtom===40708){e="text";}else{e=new K.Atom(c.DataAtom).String();}}b.TextMarkType=e;b.Tokens=CW.nil;f=F.Split(e," ");g=DC.nil;h=f;i=0;while(true){if(!(i<h.$length)){break;}j=i;k=((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]);if("a"===k||"inline-memo"===k||"block-ref"===k||"file-annotation-ref"===k||"inline-math"===k){g=$append(g,k);f=$appendSlice($subslice(f,0,j),$subslice(f,(j+1>>0)));break;}i++;}f=$appendSlice(g,f);l=false;m=f;n=0;case 1:if(!(n<m.$length)){$s=2;continue;}o=((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]);p=o;if(p===("a")){$s=4;continue;}if(p===("inline-math")){$s=5;continue;}if(p===("block-ref")){$s=6;continue;}if(p===("file-annotation-ref")){$s=7;continue;}if(p===("inline-memo")){$s=8;continue;}if(!l){$s=9;continue;}$s=10;continue;case 4:q=E.GetTextMarkAData(c);b.TextMarkAHref=q[0];b.TextMarkATitle=q[1];r=E.GetTextMarkTextData(c);$s=11;case 11:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}b.TextMarkTextContent=r;$s=10;continue;case 5:b.TextMarkInlineMathContent=E.GetTextMarkInlineMathData(c);l=true;$s=10;continue;case 6:s=E.GetTextMarkBlockRefData(c);b.TextMarkBlockRefID=s[0];b.TextMarkBlockRefSubtype=s[1];t=E.GetTextMarkTextData(c);$s=12;case 12:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}b.TextMarkTextContent=t;$s=10;continue;case 7:b.TextMarkFileAnnotationRefID=E.GetTextMarkFileAnnotationRefData(c);u=E.GetTextMarkTextData(c);$s=13;case 13:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}b.TextMarkTextContent=u;$s=10;continue;case 8:v=E.GetTextMarkTextData(c);$s=14;case 14:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}b.TextMarkTextContent=v;b.TextMarkInlineMemoContent=E.GetTextMarkInlineMemoData(c);w=Z("",(new CW($stringToBytes(b.TextMarkInlineMemoContent))),d);$s=15;case 15:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}x=w;if(!(DH.nil===x)){$s=16;continue;}$s=17;continue;case 16:y=x.Root.Content();$s=18;case 18:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=F.ReplaceAll(y,"\n","_esc_newline_");$s=19;case 19:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}b.TextMarkInlineMemoContent=z;b.TextMarkInlineMemoContent=F.ReplaceAll(b.TextMarkInlineMemoContent,"\"",""");case 17:$s=10;continue;case 9:aa=E.GetTextMarkTextDataWithoutEscapeSingleQuote(c);$s=20;case 20:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}b.TextMarkTextContent=aa;if(b.ContainTextMarkTypes(new DC(["strong","em","s","mark","sup","sub"]))){$s=21;continue;}$s=22;continue;case 21:ab=AV(b.TextMarkTextContent);if(0<ab){b.InsertBefore(new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,A.Repeat((new CW($stringToBytes(" "))),ab),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));}ac=AW(b.TextMarkTextContent);if(0<ac){b.InsertAfter(new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,A.Repeat((new CW($stringToBytes(" "))),ac),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));}ad=F.TrimSpace(b.TextMarkTextContent);$s=23;case 23:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}b.TextMarkTextContent=ad;case 22:if(b.ParentIs(109,DG.nil)&&b.IsTextMarkType("code")){b.TextMarkTextContent=F.ReplaceAll(b.TextMarkTextContent,"|","|");}case 10:case 3:n++;$s=1;continue;case 2:$r=AR(b,c);$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:AT,$c:true,$r,aa,ab,ac,ad,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};$pkg.SetTextMarkNode=AT;AU=function(b){var{b,c,d,e,f,$s,$r,$c}=$restore(this,{b});$s=$s||0;s:while(true){switch($s){case 0:c="";d=F.TrimSpace(b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}c=d;c=F.ReplaceAll(c,"\n","");e=F.Fields(c);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=F.Join(e," ");$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}c=f;$s=-1;return c;}return;}var $f={$blk:AU,$c:true,$r,b,c,d,e,f,$s};return $f;};$pkg.StyleValue=AU;AV=function(b){var b,c,d,e,f,g;c=0;d=b;e=0;while(true){if(!(e<d.length)){break;}f=$decodeRune(d,e);g=f[0];if(!((32===g))){break;}c=c+(1)>>0;e+=f[1];}return c;};AW=function(b){var b,c,d;c=0;d=b.length-1>>0;while(true){if(!(d>=0)){break;}if(!((32===b.charCodeAt(d)))){break;}c=c+(1)>>0;d=d-(1)>>0;}return c;};AX=function(b,c){var{b,c,d,e,f,g,h,i,j,k,l,m,n,o,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:if(!b.Context.ParseOption.KramdownBlockIAL||b.Context.indented){$s=-1;return 0;}if((8===b.Context.Tip.Type)&&CY.nil===b.Context.Tip.FirstChild){$s=-1;return 0;}d=b.parseKramdownBlockIAL();if(!(DD.nil===d)){$s=1;continue;}$s=2;continue;case 1:$r=b.Context.closeUnmatchedBlocks();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.Context.offset=b.Context.currentLineLen;if(E.IsDocIAL2(d)){b.Context.rootIAL=new B.Node.ptr("","","","",455,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,$subslice(b.Context.currentLine,b.Context.nextNonspace),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");b.Root.KramdownIAL=d;b.Root.ID=(e=(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]),(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1]));b.ID=b.Root.ID;$s=-1;return 2;}f=b.Context.lastMatchedContainer;if(b.Context.allClosed){$s=4;continue;}$s=5;continue;case 4:if((0===f.Type)||(8===f.Type)||(5===f.Type)||(475===f.Type)){$s=6;continue;}$s=7;continue;case 6:f=b.Context.Tip.LastChild;if(CY.nil===f){f=b.Context.lastMatchedContainer;}if(((477===f.Type)||(455===f.Type))&&!(CY.nil===f.Parent)){$s=8;continue;}if(6===f.Type){$s=9;continue;}if(0===f.Type){$s=10;continue;}$s=11;continue;case 8:g=BA(d);$s=12;case 12:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!A.HasPrefix(f.Tokens,h)){i=new B.Node.ptr("","","","",1,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,(new CW($stringToBytes(" "))),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");f.InsertAfter(i);b.Context.Tip=i;f=i;}$s=11;continue;case 9:j=new B.Node.ptr("","","","",1,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,(new CW($stringToBytes(" "))),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");f.InsertAfter(j);b.Context.Tip=j;f=j;$s=11;continue;case 10:k=new B.Node.ptr("","","","",1,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,(new CW($stringToBytes(" "))),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");f.AppendChild(k);b.Context.Tip=k;f=k;case 11:case 7:case 5:f.KramdownIAL=d;l=BE(d);f.ID=(m=$mapIndex(l,$String.keyFor("id")),m!==undefined?m.v:"");n=b.Context.addChild(455);$s=13;case 13:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;o.Tokens=$subslice(b.Context.currentLine,b.Context.nextNonspace);$s=-1;return 2;case 2:$s=-1;return 0;}return;}var $f={$blk:AX,$c:true,$r,b,c,d,e,f,g,h,i,j,k,l,m,n,o,$s};return $f;};$pkg.IALStart=AX;BA=function(b){var{b,c,d,e,f,g,h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{b});$s=$s||0;s:while(true){switch($s){case 0:c=new A.Buffer.ptr(CW.nil,0,0);d=c.WriteString("{: ");$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;e=b;f=0;case 2:if(!(f<e.$length)){$s=3;continue;}g=f;h=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);i=c.WriteString((0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0]));$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;j=c.WriteString("=\"");$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;k=c.WriteString((1>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+1]));$s=6;case 6:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;l=c.WriteByte(34);$s=7;case 7:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}l;if(g<(b.$length-1>>0)){$s=8;continue;}$s=9;continue;case 8:m=c.WriteByte(32);$s=10;case 10:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;case 9:f++;$s=2;continue;case 3:n=c.WriteByte(125);$s=11;case 11:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;$s=-1;return c.Bytes();}return;}var $f={$blk:BA,$c:true,$r,b,c,d,e,f,g,h,i,j,k,l,m,n,$s};return $f;};$pkg.IAL2Tokens=BA;BD=function(b){var b,c,d,e,f,g;c=false;c=$makeMap($String.keyFor,[]);d=b;e=0;while(true){if(!(e<d.$length)){break;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);g=(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]);(c||$throwRuntimeError("assignment to entry in nil map")).set($String.keyFor(g),{k:g,v:G.UnescapeAttrVal((1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1]))});e++;}return c;};$pkg.IAL2Map=BD;BE=function(b){var b,c,d,e,f,g;c=false;c=$makeMap($String.keyFor,[]);d=b;e=0;while(true){if(!(e<d.$length)){break;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);g=(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]);(c||$throwRuntimeError("assignment to entry in nil map")).set($String.keyFor(g),{k:g,v:(1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])});e++;}return c;};$pkg.IAL2MapUnEsc=BE;BG=function(b){var b;if(7>=b.$length){return false;}return A.Contains(b,(new CW($stringToBytes("id=\""))));};BH=function(b){var b,c,d,e,f,g,h,i;c=DD.nil;b=A.TrimRight(b," \n");b=A.TrimPrefix(b,(new CW($stringToBytes("{:"))));b=A.TrimSuffix(b,(new CW($stringToBytes("}"))));b=A.ReplaceAll(b,(new CW($stringToBytes("\n"))),(new CW($stringToBytes("_esc_newline_"))));while(true){d=AO(b);e=d[0];f=d[1];g=d[2];h=d[3];i=d[4];if(!e){break;}b=f;if(1>g.$length){break;}i=A.ReplaceAll(i,(new CW($stringToBytes("_esc_newline_"))),(new CW($stringToBytes("\n"))));c=$append(c,new DC([E.BytesToStr(h),E.BytesToStr(i)]));}return c;};$pkg.Tokens2IAL=BH;AC.ptr.prototype.parseKramdownBlockIAL=function(){var b,c,d;b=DD.nil;c=this;d=$subslice(c.Context.currentLine,c.Context.nextNonspace);b=c.Context.parseKramdownBlockIAL(d);return b;};AC.prototype.parseKramdownBlockIAL=function(){return this.$val.parseKramdownBlockIAL();};AC.ptr.prototype.parseKramdownSpanIAL=function(){var{b,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:b=[b];b[0]=this;$r=B.Walk(b[0].Root,(function(b){return function(c,d){var c,d,e,f,g,h,i,j;if(!d){return 2;}switch(0){default:e=c.Type;if((e===(17))||(e===(22))||(e===(27))||(e===(101))||(e===(460))||(e===(450))||(e===(34))||(e===(530))){break;}else{return 2;}}if(CY.nil===c.Next||!((16===c.Next.Type))){return 2;}f=c.Next.Tokens;g=b[0].Context.parseKramdownSpanIAL(f);h=g[0];i=g[1];if(0<i.$length){c.KramdownIAL=i;c.Next.Tokens=$subslice(f,(h+1>>0));if(1>c.Next.Tokens.$length){c.Next.Unlink();}j=new B.Node.ptr("","","","",456,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,$subslice(f,0,(h+1>>0)),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");c.InsertAfter(j);}return 2;};})(b));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:AC.ptr.prototype.parseKramdownSpanIAL,$c:true,$r,b,$s};return $f;};AC.prototype.parseKramdownSpanIAL=function(){return this.$val.parseKramdownSpanIAL();};AA.ptr.prototype.parseKramdownBlockIAL=function(b){var b,c,d,e,f;c=DD.nil;d=this;e=A.Index(b,(new CW($stringToBytes("{:"))));if(0===e){b=$subslice(b,(e+2>>0));f=A.LastIndex(b,BR);if(3>f){return c;}if(!A.Equal($subslice(b,f),(new CW($stringToBytes("}\n"))))){return c;}c=BH(b);}return c;};AA.prototype.parseKramdownBlockIAL=function(b){return this.$val.parseKramdownBlockIAL(b);};AA.ptr.prototype.parseKramdownSpanIAL=function(b){var b,c,d,e,f,g,h,i,j,k,l,m,n,o;c=0;d=DD.nil;e=this;c=A.Index(b,BR);f=A.Index(b,(new CW($stringToBytes("{:"))));if((0===f)&&(f+2>>0)<c){b=$subslice(b,(f+2>>0));g=A.Index(b,BR);if(3>g){return[c,d];}b=$subslice(b,0,g);while(true){h=AO(b);i=h[0];j=h[1];k=h[2];l=h[3];m=h[4];if(!i){break;}b=j;if(1>k.$length){break;}n=F.ReplaceAll(E.BytesToStr(l),"\xE2\x80\xB8","");o=F.ReplaceAll(E.BytesToStr(m),"\xE2\x80\xB8","");d=$append(d,new DC([n,o]));}}return[c,d];};AA.prototype.parseKramdownSpanIAL=function(b){return this.$val.parseKramdownSpanIAL(b);};AA.ptr.prototype.parseKramdownIALInListItem=function(b){var b,c,d,e,f,g,h,i,j,k,l;c=DD.nil;d=this;e=A.Index(b,(new CW($stringToBytes("{:"))));if(0===e){b=$subslice(b,(e+2>>0));f=A.Index(b,BR);if(3>f){return c;}b=$subslice(b,0,A.Index(b,(new CW($stringToBytes("}")))));while(true){g=AO(b);h=g[0];i=g[1];j=g[2];k=g[3];l=g[4];if(!h){break;}b=i;if(1>j.$length){break;}c=$append(c,new DC([E.BytesToStr(k),E.BytesToStr(l)]));}}return c;};AA.prototype.parseKramdownIALInListItem=function(b){return this.$val.parseKramdownIALInListItem(b);};AC.ptr.prototype.parseInline=function(b,c){var{b,c,d,e,f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:d=this;case 1:if(!(c.pos<c.tokensLen)){$s=2;continue;}g=(e=c.tokens,f=c.pos,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));h=CY.nil;i=g;if(i===(92)){$s=4;continue;}if(i===(96)){$s=5;continue;}if((i===(42))||(i===(95))||(i===(126))||(i===(61))||(i===(35))){$s=6;continue;}if(i===(94)){$s=7;continue;}if(i===(10)){$s=8;continue;}if(i===(60)){$s=9;continue;}if(i===(91)){$s=10;continue;}if(i===(93)){$s=11;continue;}if(i===(38)){$s=12;continue;}if(i===(33)){$s=13;continue;}if(i===(36)){$s=14;continue;}if(i===(123)){$s=15;continue;}if(i===(40)){$s=16;continue;}$s=17;continue;case 4:h=d.parseBackslash(b,c);$s=18;continue;case 5:j=d.parseCodeSpan(b,c);$s=19;case 19:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}h=j;$s=18;continue;case 6:d.handleDelim(b,c);$s=18;continue;case 7:if(d.Context.ParseOption.Sup){d.handleDelim(b,c);}else{h=d.parseText(c);}$s=18;continue;case 8:h=d.parseNewline(b,c);$s=18;continue;case 9:h=d.parseAutolink(c);if(CY.nil===h){$s=20;continue;}$s=21;continue;case 20:h=d.parseAutoEmailLink(c);if(CY.nil===h){$s=22;continue;}$s=23;continue;case 22:k=d.parseFileAnnotationRef(c);$s=24;case 24:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}h=k;if(CY.nil===h){$s=25;continue;}$s=26;continue;case 25:l=d.parseInlineHTML(c);$s=27;case 27:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}h=l;if(d.Context.ParseOption.ProtyleWYSIWYG&&!(CY.nil===h)&&(10===h.Type)){h.Type=16;}case 26:case 23:case 21:$s=18;continue;case 10:h=d.parseOpenBracket(c);$s=18;continue;case 11:m=d.parseCloseBracket(c);$s=28;case 28:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}h=m;$s=18;continue;case 12:h=d.parseEntity(c);$s=18;continue;case 13:h=d.parseBang(c);$s=18;continue;case 14:h=d.parseInlineMath(c);$s=18;continue;case 15:h=d.parseHeadingID(b,c);$s=18;continue;case 16:h=d.parseBlockRef(c);$s=18;continue;case 17:h=d.parseText(c);case 18:case 3:if(!(CY.nil===h)){b.AppendChild(h);}$s=1;continue;case 2:b.Tokens=CW.nil;$s=-1;return;}return;}var $f={$blk:AC.ptr.prototype.parseInline,$c:true,$r,b,c,d,e,f,g,h,i,j,k,l,m,$s};return $f;};AC.prototype.parseInline=function(b,c){return this.$val.parseInline(b,c);};AC.ptr.prototype.parseEntity=function(b){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;c=CY.nil;d=this;g=new CW([(e=b.tokens,f=b.pos,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]))]);if(2>b.tokensLen||b.tokensLen<=(b.pos+1>>0)){b.pos=b.pos+(1)>>0;c=new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,g,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");return c;}h=b.pos;i=false;if(3<b.tokensLen){i=35===(j=b.tokens,k=h+1>>0,((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]));}l=b.pos;m=0;n=false;while(true){if(!(l<b.tokensLen)){break;}m=(o=b.tokens,((l<0||l>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+l]));if(D.IsWhitespace(m)){break;}if(59===m){l=l+(1)>>0;n=true;break;}l=l+(1)>>0;}if(!n){b.pos=b.pos+(1)>>0;c=new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,g,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");return c;}p=E.BytesToStr($subslice(b.tokens,h,l));if(i){q=p.length;if(10<q||4>q){b.pos=b.pos+(1)>>0;c=new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,g,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");return c;}if(((120===p.charCodeAt(2))||(88===p.charCodeAt(2)))&&5>q){b.pos=b.pos+(1)>>0;c=new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,g,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");return c;}}r=G.HtmlUnescapeString(p);if(r===p){b.pos=b.pos+(1)>>0;c=new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,g,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");return c;}b.pos=b.pos+((l-h>>0))>>0;c=new B.Node.ptr("","","","",44,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,E.StrToBytes(r),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,E.StrToBytes(p),DD.nil,false,"","","","","","","","","","","",0,"");return c;};AC.prototype.parseEntity=function(b){return this.$val.parseEntity(b);};AC.ptr.prototype.parseCloseBracket=function(b){var{aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{b});$s=$s||0;s:while(true){switch($s){case 0:c=this;f=new CW([(d=b.tokens,e=b.pos,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]))]);b.pos=b.pos+(1)>>0;g=b.pos;h=b.brackets;if(DM.nil===h){$s=-1;return new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,f,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");}if(!h.active){c.removeBracket(b);$s=-1;return new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,f,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");}i=h.image;j=CW.nil;k=CW.nil;l=CW.nil;m=CW.nil;n=CW.nil;o=j;p=k;q=l;r=m;s=n;t=b.pos;u=false;if((b.pos+1>>0)<b.tokensLen&&(40===(v=b.tokens,w=b.pos,((w<0||w>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+w])))){$s=1;continue;}$s=2;continue;case 1:b.pos=b.pos+(1)>>0;x=false;y=CW.nil;z=CW.nil;aa=y;ab=z;case 3:ac=D.Spnl($subslice(b.tokens,(b.pos-1>>0)));x=ac[0];aa=ac[1];ab=ac[2];if(!x){$s=4;continue;}b.pos=b.pos+(aa.$length)>>0;ae=c.Context.parseInlineLinkDest(ab);$s=5;case 5:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}ad=ae;aa=ad[0];ab=ad[1];p=ad[2];if(CW.nil===aa){$s=4;continue;}if(c.Context.ParseOption.VditorWYSIWYG||c.Context.ParseOption.VditorIR||c.Context.ParseOption.VditorSV||c.Context.ParseOption.ProtyleWYSIWYG){if(!i&&CY.nil===h.node.Next){$s=4;continue;}}b.pos=b.pos+(aa.$length)>>0;o=$subslice(aa,0,1);s=$subslice(aa,(aa.$length-1>>0));u=41===(af=aa.$length-1>>0,((af<0||af>=aa.$length)?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+af]));if(u){b.pos=b.pos-(1)>>0;$s=4;continue;}if(1>ab.$length||!D.IsWhitespace((0>=ab.$length?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+0]))){$s=4;continue;}ag=D.Spnl(ab);x=ag[0];aa=ag[1];ab=ag[2];if(!x){$s=4;continue;}q=aa;b.pos=b.pos+(aa.$length)>>0;u=41===(0>=ab.$length?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+0]);s=$subslice(ab,0,1);if(u){$s=4;continue;}b.pos=b.pos+(1)>>0;ah=false;ai=c.Context.parseLinkTitle(ab);ah=ai[0];aa=ai[1];ab=ai[2];r=ai[3];if(!ah){$s=4;continue;}b.pos=b.pos+(aa.$length)>>0;aj=D.Spnl(ab);x=aj[0];aa=aj[1];ab=aj[2];b.pos=b.pos+(aa.$length)>>0;u=x&&0<ab.$length;if(u){if(c.Context.ParseOption.VditorWYSIWYG||c.Context.ParseOption.VditorIR||c.Context.ParseOption.VditorSV||c.Context.ParseOption.ProtyleWYSIWYG){if(A.HasPrefix(ab,(new CW($stringToBytes("\xE2\x80\xB8)"))))){if(0<r.$length){ab=$subslice(ab,(new CW($stringToBytes("\xE2\x80\xB8)"))).$length);ab=$appendSlice((new CW($stringToBytes(")\xE2\x80\xB8"))),ab);$copySlice($subslice(b.tokens,(b.pos-1>>0)),ab);}else{r=C.CaretTokens;ab=$subslice(ab,C.CaretTokens.$length);b.pos=b.pos+(3)>>0;}}else if(A.HasPrefix(ab,(new CW($stringToBytes(")\xE2\x80\xB8"))))){if(0===r.$length){r=C.CaretTokens;ab=A.ReplaceAll(ab,C.CaretTokens,CW.nil);b.pos=b.pos+(3)>>0;}}}u=41===(0>=ab.$length?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+0]);}s=$subslice(ab,0);$s=4;continue;case 4:if(!u){b.pos=t;}case 2:ak=CW.nil;al=0;if(!u){$s=6;continue;}$s=7;continue;case 6:am=b.pos;an=c.Context.parseLinkLabel($subslice(b.tokens,am));ao=an[0];ap=an[2];if(2<ao){ak=ap;b.pos=b.pos+(ao)>>0;}else if(!h.bracketAfter){aq=h.index;if(91===(ar=b.tokens,((aq<0||aq>=ar.$length)?($throwRuntimeError("index out of range"),undefined):ar.$array[ar.$offset+aq]))){aq=aq+(1)>>0;}ak=$subslice(b.tokens,aq,(g-1>>0));b.pos=b.pos+(2)>>0;}if(0===ao){b.pos=g;}if(!(CW.nil===ak)){$s=8;continue;}$s=9;continue;case 8:if(c.Context.ParseOption.Footnotes){$s=10;continue;}$s=11;continue;case 10:at=c.FindFootnotesDef(ak);$s=12;case 12:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}as=at;au=as[0];av=as[1];if(!(CY.nil===av)){c.removeBracket(b);if(c.Context.ParseOption.Sup&&!(CY.nil===h.node.Next.Next)){h.node.Next.Next.Unlink();h.node.Next.Unlink();}else{h.node.Next.Unlink();}h.node.Unlink();aw=I.Itoa(au);ax=av.FootnotesRefs.$length;if(0<ax){aw=aw+(":"+I.Itoa(ax+1>>0));}ay=new B.Node.ptr("","","","",412,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,ak,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,A.ReplaceAll(ak,C.CaretTokens,CW.nil),aw,CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");av.FootnotesRefs=$append(av.FootnotesRefs,ay);$s=-1;return ay;}case 11:az=c.FindLinkRefDefLink(ak);$s=13;case 13:if($c){$c=false;az=az.$blk();}if(az&&az.$blk!==undefined){break s;}ba=az;if(!(CY.nil===ba)){p=ba.ChildByType(41).Tokens;bb=ba.ChildByType(42);if(!(CY.nil===bb)){r=bb.Tokens;}u=true;al=3;}case 9:case 7:if(u){bc=new B.Node.ptr("","","","",33,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,al,ak,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");if(i){bc.Type=34;bc.AppendChild(new B.Node.ptr("","","","",35,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,$subslice(h.node.Tokens,0,1),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));h.node.Tokens=$subslice(h.node.Tokens,1);}bc.AppendChild(new B.Node.ptr("","","","",36,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,h.node.Tokens,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));bd=CY.nil;be=CY.nil;bf=bd;bg=be;bf=h.node.Next;while(true){if(!(!(CY.nil===bf))){break;}bg=bf.Next;bf.Unlink();if(16===bf.Type){bf.Type=40;}bc.AppendChild(bf);bf=bg;}bc.AppendChild(new B.Node.ptr("","","","",37,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,f,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));bc.AppendChild(new B.Node.ptr("","","","",38,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,o,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));bc.AppendChild(new B.Node.ptr("","","","",41,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,p,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));if(!(CW.nil===q)){bc.AppendChild(new B.Node.ptr("","","","",43,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,q,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));}if(0<r.$length){bc.AppendChild(new B.Node.ptr("","","","",42,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,r,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));}bc.AppendChild(new B.Node.ptr("","","","",39,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,s,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));c.processEmphasis(h.previousDelimiter,b);c.removeBracket(b);h.node.Unlink();if(!i){h=b.brackets;while(true){if(!(!(DM.nil===h))){break;}if(!h.image){h.active=false;}h=h.previous;}}$s=-1;return bc;}else{c.removeBracket(b);b.pos=g;$s=-1;return new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,f,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");}$s=-1;return CY.nil;}return;}var $f={$blk:AC.ptr.prototype.parseCloseBracket,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};AC.prototype.parseCloseBracket=function(b){return this.$val.parseCloseBracket(b);};AC.ptr.prototype.parseOpenBracket=function(b){var b,c,d,e;c=CY.nil;d=this;e=b.pos;b.pos=b.pos+(1)>>0;c=new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,$subslice(b.tokens,e,b.pos),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");d.addBracket(c,b.pos-1>>0,false,b);return c;};AC.prototype.parseOpenBracket=function(b){return this.$val.parseOpenBracket(b);};AC.ptr.prototype.addBracket=function(b,c,d,e){var b,c,d,e,f;f=this;if(!(DM.nil===e.brackets)){e.brackets.bracketAfter=true;}e.brackets=new CA.ptr(b,0,0,0,false,false,e.brackets,DM.nil,true,d,false,c,e.delimiters);};AC.prototype.addBracket=function(b,c,d,e){return this.$val.addBracket(b,c,d,e);};AC.ptr.prototype.removeBracket=function(b){var b,c;c=this;b.brackets=b.brackets.previous;};AC.prototype.removeBracket=function(b){return this.$val.removeBracket(b);};AC.ptr.prototype.parseBang=function(b){var b,c,d,e,f,g;c=CY.nil;d=this;e=b.pos;b.pos=b.pos+(1)>>0;if(b.pos<b.tokensLen&&(91===(f=b.tokens,g=b.pos,((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g])))){b.pos=b.pos+(1)>>0;c=new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,$subslice(b.tokens,e,b.pos),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");d.addBracket(c,e+2>>0,true,b);return c;}c=new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,$subslice(b.tokens,e,b.pos),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");return c;};AC.prototype.parseBang=function(b){return this.$val.parseBang(b);};BI=function(b,c){var{b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:if(b.Context.indented){$s=-1;return 0;}if(!((60===D.Peek(b.Context.currentLine,b.Context.nextNonspace)))){$s=-1;return 0;}if(b.Context.ParseOption.VditorWYSIWYG){if(A.Contains(b.Context.currentLine,(new CW($stringToBytes("vditor-comment"))))){$s=-1;return 0;}}if(b.Context.ParseOption.ProtyleWYSIWYG){if(A.Contains(b.Context.currentLine,(new CW($stringToBytes("<span "))))){$s=-1;return 0;}}d=$subslice(b.Context.currentLine,b.Context.nextNonspace);e=b.parseHTML(d);if(!((0===e))){$s=1;continue;}$s=2;continue;case 1:$r=b.Context.closeUnmatchedBlocks();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(b.Context.ParseOption.ProtyleWYSIWYG){$s=4;continue;}$s=5;continue;case 4:f=A.TrimSpace(d);$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}d=f;if(A.HasPrefix(d,(new CW($stringToBytes("<iframe"))))&&A.HasSuffix(d,(new CW($stringToBytes(">"))))){$s=7;continue;}if(A.HasPrefix(d,(new CW($stringToBytes("<video"))))&&A.HasSuffix(d,(new CW($stringToBytes(">"))))){$s=8;continue;}if(A.HasPrefix(d,(new CW($stringToBytes("<audio"))))&&A.HasSuffix(d,(new CW($stringToBytes(">"))))){$s=9;continue;}if(A.HasPrefix(d,(new CW($stringToBytes("<div"))))&&A.Contains(d,(new CW($stringToBytes("data-type=\"NodeAttributeView\""))))&&A.Contains(d,(new CW($stringToBytes("data-av-type=\""))))&&A.HasSuffix(d,(new CW($stringToBytes("</div>"))))){$s=10;continue;}$s=11;continue;case 7:if(A.Contains(d,(new CW($stringToBytes("data-subtype=\"widget\""))))){$s=12;continue;}$s=13;continue;case 12:g=b.Context.addChild(535);$s=15;case 15:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=14;continue;case 13:h=b.Context.addChild(500);$s=16;case 16:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;case 14:$s=-1;return 2;case 8:i=b.Context.addChild(510);$s=17;case 17:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;$s=-1;return 2;case 9:j=b.Context.addChild(505);$s=18;case 18:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;$s=-1;return 2;case 10:k=b.Context.addChild(550);$s=19;case 19:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;m=A.Index(d,(new CW($stringToBytes("data-av-type=\""))))+14>>0;n=m+A.Index($subslice(d,m),(new CW($stringToBytes("\""))))>>0;l.AttributeViewType=($bytesToString($subslice(d,m,n)));o=A.Index(d,(new CW($stringToBytes("data-av-id=\""))));if(0<o){$s=20;continue;}$s=21;continue;case 20:o=o+12>>0;p=o+A.Index($subslice(d,o),(new CW($stringToBytes("\""))))>>0;l.AttributeViewID=($bytesToString($subslice(d,o,p)));$s=22;continue;case 21:q=B.NewNodeID();$s=23;case 23:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}l.AttributeViewID=q;case 22:$s=-1;return 2;case 11:case 5:if(b.Context.ParseOption.ProtyleWYSIWYG){if(!A.HasPrefix(b.Context.currentLine,(new CW($stringToBytes("<div"))))){$s=-1;return 0;}}r=b.Context.addChild(9);$s=24;case 24:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=r;s.HtmlBlockType=e;$s=-1;return 2;case 2:$s=-1;return 0;}return;}var $f={$blk:BI,$c:true,$r,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s};return $f;};$pkg.HtmlBlockStart=BI;BJ=function(b,c){var b,c,d,e,f;d=c.currentLine;if(c.ParseOption.KramdownBlockIAL&&BG(d)){e=c.parseKramdownBlockIAL(d);if(0<e.$length){c.Tip.ID=(f=$mapIndex(BD(e),$String.keyFor("id")),f!==undefined?f.v:"");c.Tip.KramdownIAL=e;return 1;}}if(c.blank&&((b.HtmlBlockType===6)||(b.HtmlBlockType===7))){return 1;}return 0;};$pkg.HtmlBlockContinue=BJ;AA.ptr.prototype.htmlBlockFinalize=function(b){var b,c,d;c=this;d=D.TrimRight(D.ReplaceNewlineSpace(b.Tokens));b.Tokens=d[1];};AA.prototype.htmlBlockFinalize=function(b){return this.$val.htmlBlockFinalize(b);};AC.ptr.prototype.isHTMLBlockClose=function(b,c){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;d=this;if(d.Context.ParseOption.KramdownBlockIAL&&BG(b)){e=d.Context.parseKramdownBlockIAL(b);if(0<e.$length){d.Context.Tip.ID=(f=$mapIndex(BD(e),$String.keyFor("id")),f!==undefined?f.v:"");d.Context.Tip.KramdownIAL=e;d.Context.Tip.InsertAfter(new B.Node.ptr("","","","",455,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,b,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));return true;}}g=b.$length;h=c;if(h===(1)){i=D.AcceptTokenss(b,BL);if(0<=i){return true;}return false;}else if(h===(2)){j=0;while(true){if(!(j<(g-3>>0))){break;}if((45===((j<0||j>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+j]))&&(45===(k=j+1>>0,((k<0||k>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+k])))&&(62===(l=j+2>>0,((l<0||l>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+l])))){return true;}j=j+(1)>>0;}}else if(h===(3)){m=0;while(true){if(!(m<(g-2>>0))){break;}if((63===((m<0||m>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+m]))&&(62===(n=m+1>>0,((n<0||n>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+n])))){return true;}m=m+(1)>>0;}}else if(h===(4)){return A.Contains(b,BP);}else if(h===(5)){o=0;while(true){if(!(o<(g-2>>0))){break;}if((93===((o<0||o>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+o]))&&(93===(p=o+1>>0,((p<0||p>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+p])))){return true;}o=o+(1)>>0;}}return false;};AC.prototype.isHTMLBlockClose=function(b,c){return this.$val.isHTMLBlockClose(b,c);};AC.ptr.prototype.parseHTML=function(b){var b,c,d,e,f,g,h,i,j,k,l,m;c=0;d=this;e=D.TrimLeft(b);b=e[1];f=b.$length;if(3>f){return c;}if(!((60===(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0])))){return c;}c=1;g=D.AcceptTokenss(b,BK);if(0<=g){if(D.IsWhitespace(((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g]))||(62===((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g]))){return c;}}h=D.AcceptTokenss(b,BM);if(0<=h){if(D.IsWhitespace(((h<0||h>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+h]))||(62===((h<0||h>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+h]))){c=6;return c;}if((47===((h<0||h>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+h]))&&(62===(i=h+1>>0,((i<0||i>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+i])))){c=6;return c;}}j=D.TrimWhitespace(b);k=d.isOpenTag(j);if(k&&!((d.Context.Tip.Type===1))){c=7;return c;}l=d.isCloseTag(j);if(l&&!((d.Context.Tip.Type===1))){c=7;return c;}if(0===A.Index(b,E.StrToBytes("<!--"))){c=2;return c;}if(0===A.Index(b,E.StrToBytes("<?"))){c=3;return c;}if(2<b.$length&&(0===A.Index(b,E.StrToBytes("<!")))){m=$subslice(b,2);if(65<=(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0])&&90>=(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0])){c=4;return c;}if(0===A.Index(m,E.StrToBytes("[CDATA["))){c=5;return c;}}c=0;return c;};AC.prototype.parseHTML=function(b){return this.$val.parseHTML(b);};AC.ptr.prototype.isOpenTag=function(b){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;c=false;d=this;e=b.$length;if(3>e){return c;}if(!((60===(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0])))){return c;}if(!((62===(f=e-1>>0,((f<0||f>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+f]))))){return c;}if(47===(g=e-2>>0,((g<0||g>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+g]))){b=$subslice(b,1,(e-2>>0));}else{b=$subslice(b,1,(e-1>>0));}e=b.$length;if(0===e){return c;}if(D.IsWhitespace((0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0]))){return c;}h=D.SplitWhitespace(b);i=(0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0]);if(!D.IsASCIILetter((0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0]))){return c;}if(1<i.$length){i=$subslice(i,1);j=i;k=0;while(true){if(!(k<j.$length)){break;}l=((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]);if(!D.IsASCIILetterNumHyphen(l)){return c;}k++;}}m=$subslice(h,1);n=m;o=0;while(true){if(!(o<n.$length)){break;}p=((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o]);if(1>=p.$length){o++;continue;}q=A.SplitN(p,(new CW($stringToBytes("="))),2);r=(0>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+0]);if(1>r.$length){o++;continue;}if(!D.IsASCIILetter((0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0]))&&!((95===(0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0])))&&!((58===(0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0])))){return c;}if(1<r.$length){r=$subslice(r,1);s=r;t=0;while(true){if(!(t<s.$length)){break;}u=((t<0||t>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+t]);if(!D.IsASCIILetter(u)&&!D.IsDigit(u)&&!((95===u))&&!((46===u))&&!((58===u))&&!((45===u))){return c;}t++;}}if(1<q.$length){v=(1>=q.$length?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+1]);if(A.HasPrefix(v,BN)&&A.HasSuffix(v,BN)){v=$subslice(v,1);if(1>v.$length){return c;}v=$subslice(v,0,(v.$length-1>>0));c=!A.Contains(v,BN);return c;}if(A.HasPrefix(v,BO)&&A.HasSuffix(v,BO)){v=$subslice(v,1);if(1>v.$length){return c;}v=$subslice(v,0,(v.$length-1>>0));c=!A.Contains(v,BO);return c;}c=!A.ContainsAny(v," \t\n")&&!A.ContainsAny(v,"\"'=<>`");return c;}o++;}c=true;return c;};AC.prototype.isOpenTag=function(b){return this.$val.isOpenTag(b);};AC.ptr.prototype.isCloseTag=function(b){var b,c,d,e,f,g,h,i;c=this;b=D.TrimWhitespace(b);d=b.$length;if(4>d){return false;}if(!((60===(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0])))||!((47===(1>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+1])))){return false;}if(!((62===(e=d-1>>0,((e<0||e>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+e]))))){return false;}b=$subslice(b,2,(d-1>>0));d=b.$length;if(0===d){return false;}f=$subslice(b,0);if(!D.IsASCIILetter((0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]))){return false;}if(1<f.$length){f=$subslice(f,1);g=f;h=0;while(true){if(!(h<g.$length)){break;}i=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]);if(!D.IsASCIILetterNumHyphen(i)){return false;}h++;}}return true;};AC.prototype.isCloseTag=function(b){return this.$val.isCloseTag(b);};AC.ptr.prototype.parseHeadingID=function(b,c){var b,c,d,e,f,g,h,i,j,k;d=CY.nil;e=this;if(!e.Context.ParseOption.HeadingID||!((2===b.Type))||3>c.tokensLen){c.pos=c.pos+(1)>>0;d=new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,BQ,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");return d;}f=c.pos;g=$subslice(c.tokens,f);h=A.Index(g,BR);if(2>h){c.pos=c.pos+(1)>>0;d=new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,BQ,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");return d;}i=A.Index(g,(new CW($stringToBytes("{"))));if(0>i){d=CY.nil;return d;}j=g.$length;if(!(((j-1>>0)===h))){if(!A.HasSuffix(g,(new CW($stringToBytes("}\xE2\x80\xB8"))))&&A.HasSuffix(g,C.CaretTokens)){c.pos=c.pos+(1)>>0;d=new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,BQ,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");return d;}}if(e.Context.ParseOption.VditorWYSIWYG){g=A.ReplaceAll(g,C.CaretTokens,CW.nil);}k=$subslice(g,(i+1>>0),h);c.pos=c.pos+((h+1>>0))>>0;if(!(CY.nil===b.LastChild)){b.LastChild.Tokens=A.TrimRight(b.LastChild.Tokens," ");}d=new B.Node.ptr("","","","",420,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,k,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");return d;};AC.prototype.parseHeadingID=function(b,c){return this.$val.parseHeadingID(b,c);};BS=function(b,c){var{b,c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:if(b.Context.indented){$s=-1;return 0;}d=b.parseATXHeading();e=d[0];f=d[1];g=d[2];h=d[3];if(e){$s=1;continue;}$s=2;continue;case 1:b.Context.advanceNextNonspace();b.Context.advanceOffset(g.$length,false);$r=b.Context.closeUnmatchedBlocks();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=b.Context.addChild(2);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;j.HeadingLevel=h;j.Tokens=g;k=new B.Node.ptr("","","","",3,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,f,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");j.AppendChild(k);b.Context.advanceOffset(b.Context.currentLineLen-b.Context.offset>>0,false);$s=-1;return 2;case 2:$s=-1;return 0;}return;}var $f={$blk:BS,$c:true,$r,b,c,d,e,f,g,h,i,j,k,$s};return $f;};$pkg.ATXHeadingStart=BS;BT=function(b,c){var{b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:if(b.Context.indented||!((1===c.Type))||!b.Context.ParseOption.Setext){$s=-1;return 0;}d=b.parseSetextHeading();if(0===d){$s=-1;return 0;}if(b.Context.ParseOption.GFMTable){e=b.Context.parseTable0(c.Tokens);if(!(CY.nil===e)){c.Type=106;c.TableAligns=e.TableAligns;f=e.FirstChild;while(true){if(!(!(CY.nil===f))){break;}g=f.Next;c.AppendChild(f);f=g;}c.Tokens=CW.nil;$s=-1;return 0;}}$r=b.Context.closeUnmatchedBlocks();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=c.Tokens;while(true){if(!(0<h.$length&&(91===(0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0])))){break;}i=b.Context.parseLinkRefDef(h);if(!(CW.nil===i)){c.Tokens=i;}else{break;}h=c.Tokens;}if(0<c.Tokens.$length){j=new B.Node.ptr("","","","",2,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,d,true,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");j.Tokens=D.TrimWhitespace(c.Tokens);c.InsertAfter(j);c.Unlink();b.Context.Tip=j;b.Context.advanceOffset(b.Context.currentLineLen-b.Context.offset>>0,false);$s=-1;return 2;}$s=-1;return 0;}return;}var $f={$blk:BT,$c:true,$r,b,c,d,e,f,g,h,i,j,$s};return $f;};$pkg.SetextHeadingStart=BT;AC.ptr.prototype.parseATXHeading=function(){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;b=false;c=CW.nil;d=CW.nil;e=0;f=this;g=$subslice(f.Context.currentLine,f.Context.nextNonspace);h=false;if((f.Context.ParseOption.VditorWYSIWYG||f.Context.ParseOption.VditorIR||f.Context.ParseOption.VditorSV||f.Context.ParseOption.ProtyleWYSIWYG)&&A.HasPrefix(g,C.CaretTokens)){g=A.ReplaceAll(g,C.CaretTokens,CW.nil);h=true;}i=(0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0]);if(!((35===i))){return[b,c,d,e];}j=false;if((f.Context.ParseOption.VditorWYSIWYG||f.Context.ParseOption.VditorIR||f.Context.ParseOption.VditorSV)&&A.Contains(g,(new CW($stringToBytes("#\xE2\x80\xB8#"))))){g=A.ReplaceAll(g,C.CaretTokens,CW.nil);j=true;}e=D.Accept(g,35);if(6<e){return[b,c,d,e];}k=false;if((f.Context.ParseOption.VditorWYSIWYG||f.Context.ParseOption.VditorIR||f.Context.ParseOption.VditorSV)&&A.HasPrefix($subslice(g,e),(new CW($stringToBytes(" \xE2\x80\xB8"))))){g=A.ReplaceAll(g,C.CaretTokens,CW.nil);k=true;}if(e<g.$length&&!D.IsWhitespace(((e<0||e>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+e]))){return[b,c,d,e];}c=$subslice(f.Context.currentLine,f.Context.nextNonspace,((f.Context.nextNonspace+e>>0)+1>>0));d=$makeSlice(CW,0,256);l=D.TrimLeft(g);g=l[1];m=D.TrimLeft($subslice(g,e));g=m[1];n=g;o=0;while(true){if(!(o<n.$length)){break;}p=((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o]);if(10===p){break;}d=$append(d,p);o++;}q=D.TrimRight(d);d=q[1];r=d.$length-1>>0;while(true){if(!(0<=r)){break;}if(35===((r<0||r>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+r])){r=r-(1)>>0;continue;}if(32===((r<0||r>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+r])){break;}else{r=d.$length;break;}r=r-(1)>>0;}if(0>=r){d=$makeSlice(CW,0,0);}else if(0<r){d=$subslice(d,0,r);s=D.TrimRight(d);d=s[1];}if(f.Context.ParseOption.VditorWYSIWYG||f.Context.ParseOption.VditorIR||f.Context.ParseOption.VditorSV||f.Context.ParseOption.ProtyleWYSIWYG){if(h||j||k){d=$appendSlice(C.CaretTokens,d);}}t=D.TrimRight(d);d=t[1];b=true;return[b,c,d,e];};AC.prototype.parseATXHeading=function(){return this.$val.parseATXHeading();};AC.ptr.prototype.parseSetextHeading=function(){var b,c,d,e,f,g,h,i;b=0;c=this;d=D.TrimWhitespace(c.Context.currentLine);e=false;if(c.Context.ParseOption.VditorWYSIWYG||c.Context.ParseOption.VditorIR||c.Context.ParseOption.VditorSV||c.Context.ParseOption.ProtyleWYSIWYG){if(A.Contains(d,C.CaretTokens)){e=true;d=A.ReplaceAll(d,C.CaretTokens,CW.nil);if(1>d.$length){return b;}}}f=0;g=((f<0||f>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+f]);if(!((61===g))&&!((45===g))){return b;}h=d.$length;while(true){if(!(f<h)){break;}i=((f<0||f>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+f]);if(!((61===i))&&!((45===i))){return b;}if(!((0===g))){if(!((g===i))){return b;}}else{g=i;}f=f+(1)>>0;}b=1;if(45===g){b=2;}if((c.Context.ParseOption.VditorWYSIWYG||c.Context.ParseOption.VditorIR||c.Context.ParseOption.VditorSV||c.Context.ParseOption.ProtyleWYSIWYG)&&e){c.Context.oldtip.Tokens=D.TrimWhitespace(c.Context.oldtip.Tokens);c.Context.oldtip.AppendTokens(C.CaretTokens);}return b;};AC.prototype.parseSetextHeading=function(){return this.$val.parseSetextHeading();};BU=function(b,c){var{b,c,d,e,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:if(!b.Context.ParseOption.GitConflict){$s=-1;return 0;}if(b.Context.indented){$s=-1;return 0;}d=b.parseGitConflict();if(d){$s=1;continue;}$s=2;continue;case 1:$r=b.Context.closeUnmatchedBlocks();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=b.Context.addChild(495);$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;$s=-1;return 2;case 2:$s=-1;return 0;}return;}var $f={$blk:BU,$c:true,$r,b,c,d,e,$s};return $f;};$pkg.GitConflictStart=BU;BV=function(b,c){var{b,c,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:if(c.isGitConflictClose()){$s=1;continue;}$s=2;continue;case 1:$r=c.finalize(b);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;case 2:$s=-1;return 0;}return;}var $f={$blk:BV,$c:true,$r,b,c,$s};return $f;};$pkg.GitConflictContinue=BV;AA.ptr.prototype.gitConflictFinalize=function(b){var{b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=b.Tokens;e=A.Split(d,(new CW($stringToBytes("\n"))));f=(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]);g=A.Join($subslice(e,1),(new CW($stringToBytes("\n"))));h=A.TrimSpace(g);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=A.TrimSpace(c.currentLine);$s=2;case 2:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;b.Tokens=CW.nil;b.AppendChild(new B.Node.ptr("","","","",496,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,f,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));b.AppendChild(new B.Node.ptr("","","","",497,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,g,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));b.AppendChild(new B.Node.ptr("","","","",498,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,j,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));$s=-1;return;}return;}var $f={$blk:AA.ptr.prototype.gitConflictFinalize,$c:true,$r,b,c,d,e,f,g,h,i,j,$s};return $f;};AA.prototype.gitConflictFinalize=function(b){return this.$val.gitConflictFinalize(b);};AC.ptr.prototype.parseGitConflict=function(){var b,c;b=false;c=this;b=A.HasPrefix(c.Context.currentLine,(new CW($stringToBytes("<<<<<<<"))));return b;};AC.prototype.parseGitConflict=function(){return this.$val.parseGitConflict();};AA.ptr.prototype.isGitConflictClose=function(){var b;b=this;return A.HasPrefix(b.currentLine,(new CW($stringToBytes(">>>>>>>"))));};AA.prototype.isGitConflictClose=function(){return this.$val.isGitConflictClose();};BW=function(b,c){var{b,c,d,e,f,g,h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:if(!b.Context.ParseOption.Footnotes||b.Context.indented){$s=-1;return 0;}d=D.Peek(b.Context.currentLine,b.Context.nextNonspace);if(!((91===d))){$s=-1;return 0;}e=D.Peek(b.Context.currentLine,b.Context.nextNonspace+1>>0);if(!((94===e))){$s=-1;return 0;}f=new CW([94]);g=0;h=0;h=b.Context.nextNonspace+2>>0;while(true){if(!(h<b.Context.currentLineLen)){break;}g=(i=b.Context.currentLine,((h<0||h>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+h]));if((32===g)||(10===g)||(9===g)){$s=-1;return 0;}if(93===g){break;}f=$append(f,g);h=h+(1)>>0;}if(h>=b.Context.currentLineLen){$s=-1;return 0;}if(!((58===(j=b.Context.currentLine,k=h+1>>0,((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]))))){$s=-1;return 0;}b.Context.advanceOffset(1,false);$r=b.Context.closeUnmatchedBlocks();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b.Context.advanceOffset(f.$length+2>>0,true);if(!((410===b.Context.Tip.Type))){$s=2;continue;}$s=3;continue;case 2:l=b.Context.addChild(410);$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}l;case 3:m=b.Context.addChild(411);$s=5;case 5:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;n.Tokens=f;$s=-1;return 1;}return;}var $f={$blk:BW,$c:true,$r,b,c,d,e,f,g,h,i,j,k,l,m,n,$s};return $f;};$pkg.FootnotesStart=BW;BX=function(b,c){var b,c;if(c.blank){return 0;}if(4>c.indent){return 1;}c.advanceOffset(4,true);return 0;};$pkg.FootnotesContinue=BX;AC.ptr.prototype.FindFootnotesDef=function(b){var{b,c,d,e,$s,$r,$c}=$restore(this,{b});$s=$s||0;s:while(true){switch($s){case 0:b=[b];c=[c];d=[d];d[0]=0;c[0]=CY.nil;e=this;d[0]=0;if(e.Context.ParseOption.VditorIR||e.Context.ParseOption.VditorSV||e.Context.ParseOption.VditorWYSIWYG||e.Context.ParseOption.ProtyleWYSIWYG){b[0]=A.ReplaceAll(b[0],C.CaretTokens,CW.nil);}$r=B.Walk(e.Root,(function(b,c,d){return function(f,g){var f,g;if(!g||!((411===f.Type))){return 2;}d[0]=d[0]+(1)>>0;if(A.EqualFold(f.Tokens,b[0])){c[0]=f;return 0;}return 2;};})(b,c,d));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return[d[0],c[0]];}return;}var $f={$blk:AC.ptr.prototype.FindFootnotesDef,$c:true,$r,b,c,d,e,$s};return $f;};AC.prototype.FindFootnotesDef=function(b){return this.$val.FindFootnotesDef(b);};AC.ptr.prototype.parseFileAnnotationRef=function(b){var{aa,ab,ac,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!c.Context.ParseOption.FileAnnotationRef){$s=-1;return CY.nil;}d=$subslice(b.tokens,b.pos);if(48>d.$length||!((60===(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])))||!((60===(1>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+1])))){$s=-1;return CY.nil;}e=$subslice(d,2,48);if(A.ContainsAny(e,"<>")){$s=-1;return CY.nil;}f=CW.nil;g=CW.nil;h=f;i=g;j=b.pos;b.pos=b.pos+(2)>>0;k=false;l=false;m=k;n=l;o=CW.nil;p=CW.nil;q=o;r=p;case 1:s=D.Spnl($subslice(b.tokens,b.pos));m=s[0];q=s[1];r=s[2];if(!m){$s=2;continue;}b.pos=b.pos+(q.$length)>>0;u=c.Context.parseFileAnnotationRefID(r);$s=3;case 3:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;q=t[0];r=t[1];h=t[2];if(1>q.$length){b.pos=j;$s=2;continue;}b.pos=b.pos+(q.$length)>>0;n=(62===(v=q.$length-1>>0,((v<0||v>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+v])))&&(62===(w=q.$length-2>>0,((w<0||w>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+w])));if(n){$s=2;continue;}if(1>r.$length||!D.IsWhitespace((0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0]))){$s=2;continue;}x=D.Spnl(r);m=x[0];q=x[1];r=x[2];if(!m){$s=2;continue;}b.pos=b.pos+((q.$length+1>>0))>>0;n=2<=r.$length&&(62===(0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0]))&&(62===(1>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+1]));if(n){b.pos=b.pos+(1)>>0;$s=2;continue;}y=false;z=c.Context.parseLinkTitle(r);y=z[0];q=z[1];r=z[2];i=z[3];if(!y){$s=2;continue;}b.pos=b.pos+(q.$length)>>0;aa=D.Spnl(r);m=aa[0];q=aa[1];r=aa[2];b.pos=b.pos+(q.$length)>>0;n=m&&1<r.$length;if(n){n=(62===(0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0]))&&(62===(1>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+1]));b.pos=b.pos+(2)>>0;}$s=2;continue;case 2:if(!n){$s=-1;return CY.nil;}ab=new B.Node.ptr("","","","",540,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");ab.AppendChild(new B.Node.ptr("","","","",47,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));ab.AppendChild(new B.Node.ptr("","","","",47,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));ab.AppendChild(new B.Node.ptr("","","","",541,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,h,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));if(0<i.$length){ab.AppendChild(new B.Node.ptr("","","","",542,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));ac=new B.Node.ptr("","","","",543,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,i,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");ab.AppendChild(ac);}ab.AppendChild(new B.Node.ptr("","","","",48,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));ab.AppendChild(new B.Node.ptr("","","","",48,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));$s=-1;return ab;}return;}var $f={$blk:AC.ptr.prototype.parseFileAnnotationRef,$c:true,$r,aa,ab,ac,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};AC.prototype.parseFileAnnotationRef=function(b){return this.$val.parseFileAnnotationRef(b);};AA.ptr.prototype.parseFileAnnotationRefID=function(b){var{b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,$s,$r,$c}=$restore(this,{b});$s=$s||0;s:while(true){switch($s){case 0:c=CW.nil;d=CW.nil;e=CW.nil;f=this;d=b;g=b.$length;if(1>g){$s=-1;return[c,d,e];}h=0;i=0;while(true){if(!(h<g)){break;}i=((h<0||h>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+h]);if(A.Contains(C.CaretTokens,new CW([i]))){h=h+(1)>>0;continue;}if(A.HasPrefix($subslice(b,h),(new CW($stringToBytes(" \""))))){break;}if(62===i){break;}h=h+(1)>>0;}d=$subslice(b,h);j=$subslice(b,0,h);if(!A.HasPrefix(j,(new CW($stringToBytes("assets/"))))){k=CW.nil;l=CW.nil;m=CW.nil;c=k;d=l;e=m;$s=-1;return[c,d,e];}j=A.TrimPrefix(j,(new CW($stringToBytes("assets/"))));if(!A.Contains(j,(new CW($stringToBytes("/"))))){$s=-1;return[c,d,e];}n=A.Split(j,(new CW($stringToBytes("/"))));if(!((2===n.$length))){$s=-1;return[c,d,e];}o=(0>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+0]);if(!A.Contains(o,(new CW($stringToBytes("-"))))){p=true;$s=3;continue s;}q=A.ToLower(o);$s=4;case 4:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=A.HasSuffix(q,(new CW($stringToBytes(".pdf"))));$s=5;case 5:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}p=!r;case 3:if(p){$s=1;continue;}$s=2;continue;case 1:$s=-1;return[c,d,e];case 2:s=$subslice(o,0,(o.$length-4>>0));if(23>s.$length){$s=-1;return[c,d,e];}t=$subslice(s,(s.$length-22>>0));if(!B.IsNodeIDPattern(($bytesToString(t)))){$s=-1;return[c,d,e];}u=(1>=n.$length?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+1]);if(!B.IsNodeIDPattern(($bytesToString(u)))){$s=-1;return[c,d,e];}e=$subslice(b,0,h);if(6>d.$length){$s=-1;return[c,d,e];}c=$makeSlice(CW,0,1024);c=$appendSlice(c,e);if(A.HasPrefix(d,C.CaretTokens)){c=$appendSlice(c,C.CaretTokens);d=$subslice(d,C.CaretTokens.$length);}v=(62===(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]))&&(62===(1>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+1]));if(v){c=$appendSlice(c,(new CW($stringToBytes(">>"))));$s=-1;return[c,d,e];}if(!D.IsWhitespace((0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]))){c=CW.nil;$s=-1;return[c,d,e];}$s=-1;return[c,d,e];}return;}var $f={$blk:AA.ptr.prototype.parseFileAnnotationRefID,$c:true,$r,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,$s};return $f;};AA.prototype.parseFileAnnotationRefID=function(b){return this.$val.parseFileAnnotationRefID(b);};BY=function(){var b,c,d,e,f,g,h,i,j,k;$pkg.EmojiUnicodeAlias=(b=($pkg.EmojiAliasUnicode?$pkg.EmojiAliasUnicode.size:0),((b<0||b>2147483647)?$throwRuntimeError("makemap: size out of range"):new $global.Map()));c=$pkg.EmojiAliasUnicode;d=0;e=c?c.keys():undefined;f=c?c.size:0;while(true){if(!(d<f)){break;}g=e.next().value;h=c.get(g);if(h===undefined){d++;continue;}i=h.k;j=h.v;k=j;($pkg.EmojiUnicodeAlias||$throwRuntimeError("assignment to entry in nil map")).set($String.keyFor(k),{k:k,v:i});d++;}};AC.ptr.prototype.emoji=function(b){var{b,c,d,e,$s,$r,$c}=$restore(this,{b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=b.FirstChild;case 1:if(!(!(CY.nil===d))){$s=2;continue;}e=d.Next;if((16===d.Type)||(40===d.Type)){$s=3;continue;}$s=4;continue;case 3:$r=c.emoji0(d);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=5;continue;case 4:$r=c.emoji(d);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:d=e;$s=1;continue;case 2:$s=-1;return;}return;}var $f={$blk:AC.ptr.prototype.emoji,$c:true,$r,b,c,d,e,$s};return $f;};AC.prototype.emoji=function(b){return this.$val.emoji(b);};AC.ptr.prototype.emoji0=function(b){var{b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$s,$r,$c}=$restore(this,{b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=b;e=b.Tokens;b.Tokens=new CW([]);f=e.$length;g=0;h=CW.nil;i=0;j=0;case 1:if(!(j<f)){$s=2;continue;}g=((j<0||j>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+j]);if(j===(f-1>>0)){b.Tokens=$appendSlice(b.Tokens,$subslice(e,i));$s=2;continue;}if(!((58===g))){j=j+(1)>>0;$s=1;continue;}b.Tokens=$appendSlice(b.Tokens,$subslice(e,i,j));k=false;i=j+1>>0;while(true){if(!(i<f)){break;}g=((i<0||i>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+i]);if(D.IsWhitespace(g)){break;}if(58===g){k=true;break;}i=i+(1)>>0;}if(!k){b.Tokens=$appendSlice(b.Tokens,$subslice(e,j,i));j=j+(1)>>0;$s=1;continue;}h=$subslice(e,(j+1>>0),i);if(1>h.$length){b.Tokens=$append(b.Tokens,((i<0||i>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+i]));j=j+(1)>>0;$s=1;continue;}$r=$pkg.EmojiLock.Lock();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}l=(m=$mapIndex(c.Context.ParseOption.AliasEmoji,$String.keyFor(E.BytesToStr(h))),m!==undefined?[m.v,true]:["",false]);n=l[0];o=l[1];$r=$pkg.EmojiLock.Unlock();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(o){p=new B.Node.ptr("","","","",200,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");q=new B.Node.ptr("","","","",201,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");p.AppendChild(q);r=E.StrToBytes(n);if(A.Contains(r,$pkg.EmojiSitePlaceholder)){s=E.BytesToStr(h);t=".png";if("huaji"===s){t=".gif";}else if("siyuan"===s){t=".svg";}u=c.Context.ParseOption.EmojiSite+"/"+s+t;q.Type=202;q.Tokens=c.EmojiImgTokens(s,u);}else if(A.Contains(r,BZ)){v=E.BytesToStr(h);q.Type=202;q.Tokens=c.EmojiImgTokens(v,n);}else{q.Tokens=r;}q.AppendChild(new B.Node.ptr("","","","",203,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,$subslice(e,j,(i+1>>0)),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));b.InsertAfter(p);if((i+1>>0)<f){w=new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,new CW([]),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");p.InsertAfter(w);b=w;}}else{b.Tokens=$appendSlice(b.Tokens,$subslice(e,j,(i+1>>0)));}i=i+(1)>>0;j=i;$s=1;continue;case 2:if(1>d.Tokens.$length){d.Unlink();}if(1>b.Tokens.$length){b.Unlink();}$s=-1;return;}return;}var $f={$blk:AC.ptr.prototype.emoji0,$c:true,$r,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$s};return $f;};AC.prototype.emoji0=function(b){return this.$val.emoji0(b);};AC.ptr.prototype.EmojiImgTokens=function(b,c){var b,c,d;d=this;return E.StrToBytes("<img alt=\""+b+"\" class=\"emoji\" src=\""+c+"\" title=\""+b+"\" />");};AC.prototype.EmojiImgTokens=function(b,c){return this.$val.EmojiImgTokens(b,c);};AC.ptr.prototype.handleDelim=function(b,c){var b,c,d,e,f,g,h;d=this;e=c.pos;f=d.scanDelims(c);g=$subslice(c.tokens,e,c.pos);h=new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,g,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");b.AppendChild(h);if(f.canOpen||f.canClose){c.delimiters=new CA.ptr(h,f.typ,f.num,f.num,f.canOpen,f.canClose,c.delimiters,DM.nil,false,false,false,0,DM.nil);if(!(DM.nil===c.delimiters.previous)){c.delimiters.previous.next=c.delimiters;}}};AC.prototype.handleDelim=function(b,c){return this.$val.handleDelim(b,c);};AC.ptr.prototype.processEmphasis=function(b,c){var aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;d=this;if(DM.nil===c.delimiters){return;}e=DM.nil;f=DM.nil;g=DM.nil;h=e;i=f;j=g;k=CY.nil;l=CY.nil;m=k;n=l;o=DM.nil;p=0;q=false;r=$makeMap($Uint8.keyFor,[]);s=false;t=95;(r||$throwRuntimeError("assignment to entry in nil map")).set($Uint8.keyFor(t),{k:t,v:b});u=42;(r||$throwRuntimeError("assignment to entry in nil map")).set($Uint8.keyFor(u),{k:u,v:b});v=126;(r||$throwRuntimeError("assignment to entry in nil map")).set($Uint8.keyFor(v),{k:v,v:b});w=61;(r||$throwRuntimeError("assignment to entry in nil map")).set($Uint8.keyFor(w),{k:w,v:b});x=35;(r||$throwRuntimeError("assignment to entry in nil map")).set($Uint8.keyFor(x),{k:x,v:b});y=94;(r||$throwRuntimeError("assignment to entry in nil map")).set($Uint8.keyFor(y),{k:y,v:b});i=c.delimiters;while(true){if(!(!(DM.nil===i)&&!(i.previous===b))){break;}i=i.previous;}while(true){if(!(!(DM.nil===i))){break;}z=i.typ;if(!i.canClose){i=i.next;continue;}h=i.previous;q=false;while(true){if(!(!(DM.nil===h)&&!(h===b)&&!(h===(aa=$mapIndex(r,$Uint8.keyFor(z)),aa!==undefined?aa.v:DM.nil)))){break;}s=(i.canOpen||h.canClose)&&!(((ab=i.originalNum%3,ab===ab?ab:$throwRuntimeError("integer divide by zero"))===0))&&((ac=((h.originalNum+i.originalNum>>0))%3,ac===ac?ac:$throwRuntimeError("integer divide by zero"))===0);if((h.typ===i.typ)&&h.canOpen&&!s){q=true;break;}h=h.previous;}j=i;if(!q){i=i.next;}else{if(i.num>=2&&h.num>=2){p=2;}else{p=1;}m=h.node;n=i.node;if(d.Context.ParseOption.GFMStrikethrough||d.Context.ParseOption.Sub){if((126===z)&&!((h.num===i.num))){break;}}else{if(126===z){break;}}if(d.Context.ParseOption.Sup){if((94===z)&&!((h.num===i.num))){break;}}else{if(94===z){break;}}if(d.Context.ParseOption.Mark){if((61===z)&&!((h.num===i.num))){break;}}else{if(61===z){break;}}if(d.Context.ParseOption.Tag){if((35===z)&&!((h.num===i.num))){break;}}else{if(35===z){break;}}h.num=h.num-(p)>>0;i.num=i.num-(p)>>0;ad=$subslice(m.Tokens,(m.Tokens.$length-p>>0));ae=$subslice(m.Tokens,0,(m.Tokens.$length-p>>0));m.Tokens=ae;af=$subslice(n.Tokens,(n.Tokens.$length-p>>0));ae=$subslice(n.Tokens,0,(n.Tokens.$length-p>>0));n.Tokens=ae;ag=new B.Node.ptr("","","","",0,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,ad,"","",true,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");ah=new B.Node.ptr("","","","",0,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",true,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");ai=new B.Node.ptr("","","","",0,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,af,"","",true,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");if(1===p){if(42===z){ah.Type=17;ag.Type=18;ai.Type=19;}else if(95===z){ah.Type=17;ag.Type=20;ai.Type=21;}else if(126===z){if(d.Context.ParseOption.Sub){ah.Type=490;ag.Type=491;ai.Type=492;}else if(d.Context.ParseOption.GFMStrikethrough){ah.Type=101;ag.Type=102;ai.Type=103;}}else if(61===z){if(d.Context.ParseOption.Mark){ah.Type=450;ag.Type=451;ai.Type=452;}}else if(35===z){if(d.Context.ParseOption.Tag){ah.Type=460;ag.Type=461;ai.Type=462;}}else if(94===z){if(d.Context.ParseOption.Sup){ah.Type=485;ag.Type=486;ai.Type=487;}}}else{if(42===z){ah.Type=22;ag.Type=23;ai.Type=24;}else if(95===z){ah.Type=22;ag.Type=25;ai.Type=26;}else if(126===z){if(d.Context.ParseOption.GFMStrikethrough){ah.Type=101;ag.Type=104;ai.Type=105;}}else if(61===z){if(d.Context.ParseOption.Mark){ah.Type=450;ag.Type=453;ai.Type=454;}}}aj=m.Next;while(true){if(!(!(CY.nil===aj)&&!(aj===n))){break;}ak=aj.Next;aj.Unlink();ah.AppendChild(aj);aj=ak;}ah.PrependChild(ag);ah.AppendChild(ai);m.InsertAfter(ah);if(!(h.next===i)){h.next=i;i.previous=h;}if(h.num===0){m.Unlink();d.removeDelimiter(h,c);}if(i.num===0){n.Unlink();o=i.next;d.removeDelimiter(i,c);i=o;}}if(!q&&!s){al=z;(r||$throwRuntimeError("assignment to entry in nil map")).set($Uint8.keyFor(al),{k:al,v:j.previous});if(!j.canOpen){d.removeDelimiter(j,c);}}}while(true){if(!(!(DM.nil===c.delimiters)&&!(c.delimiters===b))){break;}d.removeDelimiter(c.delimiters,c);}};AC.prototype.processEmphasis=function(b,c){return this.$val.processEmphasis(b,c);};AC.ptr.prototype.scanDelims=function(b){var aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=this;d=b.pos;f=(e=b.tokens,((d<0||d>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+d]));g=0;h=b.pos;while(true){if(!(h<b.tokensLen&&(f===(i=b.tokens,((h<0||h>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+h]))))){break;}g=g+(1)>>0;b.pos=b.pos+(1)>>0;h=h+(1)>>0;}j=10;k=10;l=j;m=k;if(0<d){p=(n=b.tokens,o=d-1>>0,((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o]));if(p>=128){q=J.DecodeLastRune($subslice(b.tokens,0,d));l=q[0];}else{l=((p>>0));}if((c.Context.ParseOption.VditorWYSIWYG||c.Context.ParseOption.VditorIR||c.Context.ParseOption.VditorSV||c.Context.ParseOption.ProtyleWYSIWYG)&&"\xE2\x80\xB8"===($encodeRune(l))){r=3;if(0<(d-r>>0)){p=(s=b.tokens,t=(d-r>>0)-1>>0,((t<0||t>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+t]));if(p>=128){u=J.DecodeLastRune($subslice(b.tokens,0,(d-r>>0)));l=u[0];}else{l=((p>>0));}}}}if(b.tokensLen>b.pos){x=(v=b.tokens,w=b.pos,((w<0||w>=v.$length)?($throwRuntimeError("index out of range"),undefined):v.$array[v.$offset+w]));if(x>=128){y=J.DecodeRune($subslice(b.tokens,b.pos));m=y[0];}else{m=((x>>0));}}z=D.IsUnicodeWhitespace(m);aa=L.IsPunct(m)||L.IsSymbol(m);if(((42===f)&&(126===m))||((126===f)&&(42===m))||((94===f)&&((43===m)||(45===m)))||((126===f)&&((43===m)||(45===m)))){aa=false;}ab=D.IsUnicodeWhitespace(l);ac=L.IsPunct(l)||L.IsSymbol(l);if(((42===f)&&(126===l))||((126===f)&&(42===l))||((94===f)&&((43===l)||(45===l)))||((126===f)&&((43===l)||(45===l)))){ac=false;}if(c.Context.ParseOption.ProtyleWYSIWYG){ad=false;ae=false;aa=ad;ac=ae;}af=!z&&(!aa||ab||ac);ag=!ab&&(!ac||z||aa);ah=false;ai=false;aj=ah;ak=ai;if(95===f){aj=af&&(!ag||ac);ak=ag&&(!af||aa);}else{if(c.Context.ParseOption.Mark&&(61===f)&&!((2===g))){aj=false;ak=false;}else if(c.Context.ParseOption.Tag&&(35===f)&&!((1===g))){aj=false;ak=false;}else if(c.Context.ParseOption.Sup&&(94===f)&&!((1===g))){aj=false;ak=false;}else if(c.Context.ParseOption.Sub&&(126===f)){if(c.Context.ParseOption.GFMStrikethrough&&(3===g)){aj=af;ak=ag;}else if(!((1===g))){aj=false;ak=false;if(c.Context.ParseOption.GFMStrikethrough&&(2===g)){aj=af;ak=ag;}}else{aj=af;ak=ag;}}else{aj=af;ak=ag;}}return new CA.ptr(CY.nil,f,g,0,aj,ak,DM.nil,DM.nil,true,false,false,0,DM.nil);};AC.prototype.scanDelims=function(b){return this.$val.scanDelims(b);};AC.ptr.prototype.removeDelimiter=function(b,c){var b,c,d,e;d=DM.nil;e=this;if(!(DM.nil===b.previous)){b.previous.next=b.next;}if(DM.nil===b.next){c.delimiters=b.previous;}else{b.next.previous=b.previous;}return d;};AC.prototype.removeDelimiter=function(b,c){return this.$val.removeDelimiter(b,c);};CC=function(b,c){var{b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:d=c.currentLine;e=c.indent;f=c.isCustomBlockClose($subslice(d,c.nextNonspace));if(e<=3&&f){$s=1;continue;}$s=2;continue;case 1:$r=c.finalize(b);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;case 2:g=b.CustomBlockFenceOffset;h=0;while(true){if(!(g>0)){break;}h=D.Peek(d,c.offset);if(!((32===h))&&!((9===h))){break;}c.advanceOffset(1,true);g=g-(1)>>0;}case 3:$s=-1;return 0;}return;}var $f={$blk:CC,$c:true,$r,b,c,d,e,f,g,h,$s};return $f;};$pkg.CustomBlockContinue=CC;AA.ptr.prototype.customBlockFinalize=function(b){var b,c,d,e,f;c=this;d=b.Tokens;e=d.$length;if(1>e){return;}f=0;while(true){if(!(f<e)){break;}if(10===((f<0||f>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+f])){break;}f=f+(1)>>0;}b.Tokens=$subslice(d,(f+1>>0));};AA.prototype.customBlockFinalize=function(b){return this.$val.customBlockFinalize(b);};AA.ptr.prototype.isCustomBlockClose=function(b){var b,c,d,e,f,g,h,i;c=false;d=this;e=(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0]);if(!((e===59))){c=false;return c;}if(3>D.Accept(b,e)){c=false;return c;}b=D.TrimWhitespace(b);f=A.HasSuffix(b,C.CaretTokens);if(d.ParseOption.VditorWYSIWYG||d.ParseOption.VditorIR||d.ParseOption.VditorSV||d.ParseOption.ProtyleWYSIWYG){b=A.ReplaceAll(b,C.CaretTokens,CW.nil);if(f){d.Tip.Tokens=A.TrimSuffix(d.Tip.Tokens,(new CW($stringToBytes("\n"))));d.Tip.Tokens=$appendSlice(d.Tip.Tokens,C.CaretTokens);}}g=b;h=0;while(true){if(!(h<g.$length)){break;}i=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]);if(!((i===59))){c=false;return c;}h++;}c=true;return c;};AA.prototype.isCustomBlockClose=function(b){return this.$val.isCustomBlockClose(b);};AC.ptr.prototype.parseCodeSpan=function(b,c){var{b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:d=[d];e=CY.nil;f=this;g=c.pos;h=0;while(true){if(!((g+h>>0)<c.tokensLen)){break;}if(!((96===(i=c.tokens,j=g+h>>0,((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]))))){break;}h=h+(1)>>0;}k=$subslice(c.tokens,g,(g+h>>0));if(c.tokensLen<=(g+h>>0)){c.pos=c.pos+(h)>>0;e=new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,k,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");$s=-1;return e;}l=new B.Node.ptr("","","","",28,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,k,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");m=f.matchCodeSpanEnd($subslice(c.tokens,(g+h>>0)),h);if(1>m){c.pos=c.pos+(h)>>0;e=new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,k,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");$s=-1;return e;}m=(g+m>>0)+h>>0;n=new B.Node.ptr("","","","",30,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,$subslice(c.tokens,m,(m+h>>0)),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");o=$subslice(c.tokens,(g+h>>0),m);o=D.ReplaceAll(o,10,32);if(2<o.$length&&(32===(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]))&&(32===(p=o.$length-1>>0,((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p])))&&!D.IsBlankLine(o)){l.Tokens=$append(l.Tokens,(0>=o.$length?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+0]));n.Tokens=$subslice(c.tokens,(m-1>>0),(m+h>>0));o=$subslice(o,1,(o.$length-1>>0));}if(f.Context.ParseOption.GFMTable){if(109===b.Type){o=A.ReplaceAll(o,(new CW($stringToBytes("\\|"))),(new CW($stringToBytes("|"))));}}e=new B.Node.ptr("","","","",27,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,h,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");e.AppendChild(l);if(f.Context.ParseOption.ProtyleWYSIWYG){$s=1;continue;}$s=2;continue;case 1:q=Z("",o,f.Context.ParseOption);$s=3;case 3:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;if(!(DH.nil===r)){$s=4;continue;}$s=5;continue;case 4:d[0]=new A.Buffer.ptr(CW.nil,0,0);$r=B.Walk(r.Root,(function(d){return function $b(s,t){var{aa,ab,ac,ad,ae,af,ag,ah,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{s,t});$s=$s||0;s:while(true){switch($s){case 0:if(!t){$s=1;continue;}$s=2;continue;case 1:u=d[0].WriteString(s.Marker(t));$s=3;case 3:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}u;if(42===s.Type){$s=4;continue;}if(530===s.Type){$s=5;continue;}$s=6;continue;case 4:v=d[0].WriteByte(34);$s=7;case 7:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;$s=6;continue;case 5:if("kbd"===s.TextMarkType){$s=8;continue;}if("u"===s.TextMarkType){$s=9;continue;}$s=10;continue;case 8:w=d[0].WriteString("</kbd>");$s=11;case 11:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;$s=10;continue;case 9:x=d[0].WriteString("</u>");$s=12;case 12:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}x;case 10:case 6:$s=-1;return 2;case 2:y=d[0].WriteString(s.Marker(t));$s=13;case 13:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}y;if(530===s.Type){$s=14;continue;}if((16===s.Type)||(40===s.Type)||(42===s.Type)||(41===s.Type)){$s=15;continue;}if(43===s.Type){$s=16;continue;}if(401===s.Type){$s=17;continue;}if(44===s.Type){$s=18;continue;}$s=19;continue;case 14:if("kbd"===s.TextMarkType){$s=20;continue;}if("u"===s.TextMarkType){$s=21;continue;}$s=22;continue;case 20:z=d[0].WriteString("<kbd>");$s=23;case 23:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}z;$s=22;continue;case 21:aa=d[0].WriteString("<u>");$s=24;case 24:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;case 22:ab=d[0].WriteString(s.TextMarkTextContent);$s=25;case 25:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ab;$s=19;continue;case 15:if(t){$s=26;continue;}$s=27;continue;case 26:if(42===s.Type){$s=28;continue;}$s=29;continue;case 28:ac=d[0].WriteByte(34);$s=30;case 30:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ac;case 29:case 27:ad=d[0].Write(s.Tokens);$s=31;case 31:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ad;$s=19;continue;case 16:ae=d[0].WriteByte(32);$s=32;case 32:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}ae;$s=19;continue;case 17:af=d[0].WriteString("\\");$s=33;case 33:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}af;ag=d[0].Write(s.Tokens);$s=34;case 34:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ag;$s=19;continue;case 18:ah=d[0].Write(s.Tokens);$s=35;case 35:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ah;case 19:$s=-1;return 2;}return;}var $f={$blk:$b,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,s,t,u,v,w,x,y,z,$s};return $f;};})(d));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}o=G.UnescapeHTML(d[0].Bytes());case 5:case 2:e.AppendChild(new B.Node.ptr("","","","",29,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,o,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));e.AppendChild(n);c.pos=m+h>>0;$s=-1;return e;}return;}var $f={$blk:AC.ptr.prototype.parseCodeSpan,$c:true,$r,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s};return $f;};AC.prototype.parseCodeSpan=function(b,c){return this.$val.parseCodeSpan(b,c);};AC.ptr.prototype.matchCodeSpanEnd=function(b,c){var b,c,d,e,f,g,h;d=0;e=this;f=b.$length;while(true){if(!(d<f)){break;}g=D.Accept($subslice(b,d),96);if(c===g){h=d+g>>0;if((f-1>>0)>h&&(96===((h<0||h>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+h]))){continue;}d=d;return d;}if(0<g){d=d+(g)>>0;}else{d=d+(1)>>0;}}d=-1;return d;};AC.prototype.matchCodeSpanEnd=function(b,c){return this.$val.matchCodeSpanEnd(b,c);};CD=function(b,c){var{b,c,d,e,f,g,h,i,j,k,l,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:if(b.Context.indented){$s=-1;return 0;}d=b.parseFencedCode();e=d[0];f=d[1];g=d[2];h=d[3];i=d[4];j=d[5];if(e){$s=1;continue;}$s=2;continue;case 1:$r=b.Context.closeUnmatchedBlocks();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=b.Context.addChild(11);$s=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;l.IsFencedCodeBlock=true;l.CodeBlockFenceLen=g;l.CodeBlockFenceChar=f;l.CodeBlockFenceOffset=h;l.CodeBlockOpenFence=i;l.CodeBlockInfo=j;b.Context.advanceNextNonspace();b.Context.advanceOffset(g,false);$s=-1;return 2;case 2:$s=-1;return 0;}return;}var $f={$blk:CD,$c:true,$r,b,c,d,e,f,g,h,i,j,k,l,$s};return $f;};$pkg.FenceCodeBlockStart=CD;CE=function(b,c){var{b,c,d,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:if(!b.Context.ParseOption.IndentCodeBlock||!b.Context.indented){$s=-1;return 0;}if(!((b.Context.Tip.Type===1))&&!b.Context.blank){$s=1;continue;}$s=2;continue;case 1:b.Context.advanceOffset(4,true);$r=b.Context.closeUnmatchedBlocks();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=b.Context.addChild(11);$s=4;case 4:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;$s=-1;return 2;case 2:$s=-1;return 0;}return;}var $f={$blk:CE,$c:true,$r,b,c,d,$s};return $f;};$pkg.IndentCodeBlockStart=CE;CF=function(b,c){var{b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:d=c.currentLine;e=c.indent;if(b.IsFencedCodeBlock){$s=1;continue;}$s=2;continue;case 1:f=c.isFencedCodeClose($subslice(d,c.nextNonspace),b.CodeBlockFenceChar,b.CodeBlockFenceLen);g=f[0];h=f[1];if(e<=3&&g){$s=4;continue;}$s=5;continue;case 4:b.CodeBlockCloseFence=h;$r=c.finalize(b);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;case 5:i=b.CodeBlockFenceOffset;j=0;while(true){if(!(i>0)){break;}j=D.Peek(d,c.offset);if(!((32===j))&&!((9===j))){break;}c.advanceOffset(1,true);i=i-(1)>>0;}case 6:$s=3;continue;case 2:if(e>=4){c.advanceOffset(4,true);}else if(c.blank){c.advanceNextNonspace();}else{$s=-1;return 1;}case 3:$s=-1;return 0;}return;}var $f={$blk:CF,$c:true,$r,b,c,d,e,f,g,h,i,j,$s};return $f;};$pkg.CodeBlockContinue=CF;AA.ptr.prototype.codeBlockFinalize=function(b){var b,c,d,e,f;c=this;if(b.IsFencedCodeBlock){d=b.Tokens;e=d.$length;if(1>e){return;}f=0;while(true){if(!(f<e)){break;}if(10===((f<0||f>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+f])){break;}f=f+(1)>>0;}b.Tokens=$subslice(d,(f+1>>0));}else{b.Tokens=D.ReplaceNewlineSpace(b.Tokens);}};AA.prototype.codeBlockFinalize=function(b){return this.$val.codeBlockFinalize(b);};AC.ptr.prototype.parseFencedCode=function(){var aa,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;b=false;c=0;d=0;e=0;f=CW.nil;g=CW.nil;h=this;k=(i=h.Context.currentLine,j=h.Context.nextNonspace,((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]));if(!((96===k))&&!((126===k))){return[b,c,d,e,f,g];}c=k;l=h.Context.nextNonspace;while(true){if(!(l<h.Context.currentLineLen&&(c===(m=h.Context.currentLine,((l<0||l>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+l]))))){break;}d=d+(1)>>0;l=l+(1)>>0;}if(3>d){return[b,c,d,e,f,g];}f=$subslice(h.Context.currentLine,h.Context.nextNonspace,(h.Context.nextNonspace+d>>0));if(h.Context.ParseOption.ProtyleWYSIWYG){n=($bytesToString($subslice(h.Context.currentLine,(h.Context.nextNonspace+d>>0))));o=n;p=0;while(true){if(!(p<o.length)){break;}q=$decodeRune(o,p);r=q[0];if("~"===($encodeRune(r))){return[b,c,d,e,f,g];}p+=q[1];}}s=$subslice(h.Context.currentLine,(h.Context.nextNonspace+d>>0));if((96===k)&&A.Contains(s,CG)){return[b,c,d,e,f,g];}t=D.TrimWhitespace(s);t=G.UnescapeBytes(t);u=A.IndexByte(t,32);if(0<=u){t=$subslice(t,0,u);}v=true;w=c;x=d;y=h.Context.indent;z=f;aa=t;b=v;c=w;d=x;e=y;f=z;g=aa;return[b,c,d,e,f,g];};AC.prototype.parseFencedCode=function(){return this.$val.parseFencedCode();};AA.ptr.prototype.isFencedCodeClose=function(b,c,d){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t;e=false;f=CW.nil;g=this;h=(0>=b.$length?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+0]);if(!((h===c))){i=false;j=CW.nil;e=i;f=j;return[e,f];}if(d>D.Accept(b,h)){k=false;l=CW.nil;e=k;f=l;return[e,f];}b=D.TrimWhitespace(b);m=A.HasSuffix(b,C.CaretTokens);if(g.ParseOption.VditorWYSIWYG||g.ParseOption.VditorIR||g.ParseOption.VditorSV||g.ParseOption.ProtyleWYSIWYG){b=A.ReplaceAll(b,C.CaretTokens,CW.nil);if(m){g.Tip.Tokens=A.TrimSuffix(g.Tip.Tokens,(new CW($stringToBytes("\n"))));g.Tip.Tokens=$appendSlice(g.Tip.Tokens,C.CaretTokens);}}n=b;o=0;while(true){if(!(o<n.$length)){break;}p=((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o]);if(!((p===c))){q=false;r=CW.nil;e=q;f=r;return[e,f];}o++;}f=b;s=true;t=f;e=s;f=t;return[e,f];};AA.prototype.isFencedCodeClose=function(b,c,d){return this.$val.isFencedCodeClose(b,c,d);};AC.ptr.prototype.parseBlocks=function(){var{b,c,d,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:b=this;b.Context.Tip=b.Root;c=0;d=b.lexer.NextLine();case 1:if(!(!(CW.nil===d))){$s=2;continue;}if(b.Context.ParseOption.VditorWYSIWYG||b.Context.ParseOption.VditorIR||b.Context.ParseOption.VditorSV||b.Context.ParseOption.ProtyleWYSIWYG){if(!A.Equal(d,C.CaretNewlineTokens)&&b.Context.Tip.ParentIs(8,DG.nil)&&A.HasPrefix(d,C.CaretTokens)){if(8===b.Context.Tip.Type){b.Context.Tip.AppendChild(new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,d,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));$s=2;continue;}else{b.Context.Tip.Tokens=A.TrimSuffix(b.Context.Tip.Tokens,(new CW($stringToBytes("\n"))));b.Context.Tip.Tokens=$appendSlice(b.Context.Tip.Tokens,C.CaretNewlineTokens);}d=$subslice(d,C.CaretTokens.$length);}}$r=b.incorporateLine(d);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c=c+(1)>>0;d=b.lexer.NextLine();$s=1;continue;case 2:case 4:if(!(!(CY.nil===b.Context.Tip))){$s=5;continue;}$r=b.Context.finalize(b.Context.Tip);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=4;continue;case 5:$s=-1;return;}return;}var $f={$blk:AC.ptr.prototype.parseBlocks,$c:true,$r,b,c,d,$s};return $f;};AC.prototype.parseBlocks=function(){return this.$val.parseBlocks();};AC.ptr.prototype.BlockCount=function(){var{b,c,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:b=[b];b[0]=0;c=this;$r=B.Walk(c.Root,(function(b){return function(d,e){var d,e;if(!e){return 2;}if(""===d.ID||!d.IsBlock()){return 2;}b[0]=b[0]+(1)>>0;return 2;};})(b));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return b[0];}return;}var $f={$blk:AC.ptr.prototype.BlockCount,$c:true,$r,b,c,$s};return $f;};AC.prototype.BlockCount=function(){return this.$val.BlockCount();};AC.ptr.prototype.DocBlockCount=function(){var{b,c,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:b=[b];c=[c];b[0]=0;c[0]=this;$r=B.Walk(c[0].Root,(function(b,c){return function(d,e){var d,e;if(!e){return 2;}if(!d.IsChildBlockOf(c[0].Root,1)){return 2;}b[0]=b[0]+(1)>>0;return 2;};})(b,c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return b[0];}return;}var $f={$blk:AC.ptr.prototype.DocBlockCount,$c:true,$r,b,c,$s};return $f;};AC.prototype.DocBlockCount=function(){return this.$val.DocBlockCount();};AC.ptr.prototype.incorporateLine=function(b){var{b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{b});$s=$s||0;s:while(true){switch($s){case 0:c=this;c.Context.oldtip=c.Context.Tip;c.Context.offset=0;c.Context.column=0;c.Context.blank=false;c.Context.partiallyConsumedTab=false;c.Context.currentLine=b;c.Context.currentLineLen=c.Context.currentLine.$length;d=true;e=CY.nil;e=c.Root;f=e.LastChild;case 1:if(!(!(CY.nil===f)&&!f.Close)){$s=2;continue;}e=f;c.Context.findNextNonspace();g=CH(e,c.Context);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(h===(0)){$s=5;continue;}if(h===(1)){$s=6;continue;}if(h===(2)){$s=7;continue;}if(h===(3)){$s=8;continue;}$s=9;continue;case 5:$s=3;continue;$s=9;continue;case 6:d=false;$s=3;continue;$s=9;continue;case 7:$s=-1;return;case 8:$r=c.Context.closeSuperBlockChildren();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!((475===c.Context.Tip.Type))){i=c.Context.Tip.Parent;i.Close=true;i.AppendChild(new B.Node.ptr("","","","",478,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));c.Context.Tip=i.Parent;c.Context.lastMatchedContainer=i;}else{c.Context.Tip.AppendChild(new B.Node.ptr("","","","",478,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));c.Context.Tip.Close=true;c.Context.Tip=c.Context.Tip.Parent;c.Context.lastMatchedContainer=c.Context.Tip;}$s=-1;return;case 9:case 3:if(!d){e=e.Parent;$s=2;continue;}f=e.LastChild;$s=1;continue;case 2:c.Context.allClosed=e===c.Context.oldtip;c.Context.lastMatchedContainer=e;j=!((e.Type===1))&&e.AcceptLines();k=CK();l=k.$length;case 11:if(!(!j)){$s=12;continue;}c.Context.findNextNonspace();o=(m=c.Context.currentLine,n=c.Context.nextNonspace,((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]));if(!c.Context.indented&&!((45===o))&&!((42===o))&&!((43===o))&&!D.IsDigit(o)&&!((96===o))&&!((126===o))&&!((59===o))&&!((35===o))&&!((62===o))&&!((60===o))&&!((95===o))&&!((61===o))&&!((36===o))&&!((91===o))&&!((123===o))&&!((125===o))&&!((33===o))&&!(("\xEF\xBC\x81".charCodeAt(0)===o))&&!(("\xE2\x80\xB8".charCodeAt(0)===o))){c.Context.advanceNextNonspace();$s=12;continue;}p=0;case 13:if(!(p<l)){$s=14;continue;}q=((p<0||p>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+p])(c,e);$s=15;case 15:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;if(r===1){e=c.Context.Tip;$s=14;continue;}else if(r===2){e=c.Context.Tip;j=true;$s=14;continue;}else{p=p+(1)>>0;}$s=13;continue;case 14:if(p===l){c.Context.advanceNextNonspace();$s=12;continue;}$s=11;continue;case 12:if(!c.Context.allClosed&&!c.Context.blank&&(c.Context.Tip.Type===1)){$s=16;continue;}$s=17;continue;case 16:c.addLine();$s=18;continue;case 17:$r=c.Context.closeUnmatchedBlocks();$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c.Context.blank&&!(CY.nil===e.LastChild)){e.LastChild.LastLineBlank=true;}s=e.Type;t=(11===s)&&e.IsFencedCodeBlock;u=c.Context.blank&&!((s===411)||(s===5)||((s===11)&&t)||((s===560))||((s===300))||((s===495))||((s===8)&&CY.nil===e.FirstChild));v=e;while(true){if(!(!(CY.nil===v))){break;}v.LastLineBlank=u;v=v.Parent;}if(e.AcceptLines()){$s=20;continue;}if(c.Context.offset<c.Context.currentLineLen&&!c.Context.blank){$s=21;continue;}$s=22;continue;case 20:c.addLine();w=s;if(w===(9)){$s=24;continue;}if(w===(300)){$s=25;continue;}$s=26;continue;case 24:x=e;if(x.HtmlBlockType>=1&&x.HtmlBlockType<=5){$s=27;continue;}$s=28;continue;case 27:y=$subslice(c.Context.currentLine,c.Context.offset);if(c.isHTMLBlockClose(y,x.HtmlBlockType)){$s=29;continue;}$s=30;continue;case 29:$r=c.Context.finalize(e);$s=31;case 31:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 30:case 28:$s=26;continue;case 25:if(3<e.Tokens.$length&&(A.HasSuffix(e.Tokens,$pkg.MathBlockMarkerNewline)||A.HasSuffix(e.Tokens,$pkg.MathBlockMarker)||A.HasSuffix(e.Tokens,$pkg.MathBlockMarkerCaretNewline))){$s=32;continue;}$s=33;continue;case 32:$r=c.Context.finalize(e);$s=34;case 34:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 33:case 26:case 23:$s=22;continue;case 21:z=c.Context.addChild(1);$s=35;case 35:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}z;c.Context.advanceNextNonspace();c.addLine();case 22:case 18:$s=-1;return;}return;}var $f={$blk:AC.ptr.prototype.incorporateLine,$c:true,$r,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};AC.prototype.incorporateLine=function(b){return this.$val.incorporateLine(b);};AC.ptr.prototype.addLine=function(){var b,c,d,e,f,g,h;b=this;if(b.Context.partiallyConsumedTab){b.Context.offset=b.Context.offset+(1)>>0;d=4-((c=b.Context.column%4,c===c?c:$throwRuntimeError("integer divide by zero")))>>0;b.Context.Tip.AppendTokens(A.Repeat(E.StrToBytes(" "),d));}g=1<b.Context.currentLineLen&&((32===(e=b.Context.currentLine,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0])))||(9===(f=b.Context.currentLine,(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0]))));h=0===b.Context.Tip.Parent.Type;if(b.Context.ParseOption.ParagraphBeginningSpace&&g&&h){b.Context.Tip.AppendTokens(b.Context.currentLine);}else{b.Context.Tip.AppendTokens($subslice(b.Context.currentLine,b.Context.offset));}};AC.prototype.addLine=function(){return this.$val.addLine();};CH=function(b,c){var{b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:d=b.Type;if(d===(11)){$s=2;continue;}if(d===(9)){$s=3;continue;}if(d===(1)){$s=4;continue;}if(d===(8)){$s=5;continue;}if(d===(5)){$s=6;continue;}if(d===(300)){$s=7;continue;}if(d===(425)){$s=8;continue;}if(d===(411)){$s=9;continue;}if(d===(475)){$s=10;continue;}if(d===(495)){$s=11;continue;}if(d===(560)){$s=12;continue;}if((d===(2))||(d===(4))||(d===(455))||(d===(45))||(d===(465))||(d===(500))||(d===(510))||(d===(505))||(d===(535))||(d===(550))){$s=13;continue;}$s=14;continue;case 2:e=CF(b,c);$s=15;case 15:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$s=16;case 16:return f;case 3:$s=-1;return BJ(b,c);case 4:$s=-1;return AF(b,c);case 5:$s=-1;return AK(b,c);case 6:$s=-1;return CJ(b,c);case 7:g=AI(b,c);$s=17;case 17:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$s=18;case 18:return h;case 8:i=N(b,c);$s=19;case 19:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;$s=20;case 20:return j;case 9:$s=-1;return BX(b,c);case 10:k=W(b,c);$s=21;case 21:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;$s=22;case 22:return l;case 11:m=BV(b,c);$s=23;case 23:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;$s=24;case 24:return n;case 12:o=CC(b,c);$s=25;case 25:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;$s=26;case 26:return p;case 13:$s=-1;return 1;case 14:case 1:$s=-1;return 0;}return;}var $f={$blk:CH,$c:true,$r,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s};return $f;};CI=function(b,c){var{b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:if(b.Context.indented){$s=-1;return 0;}d=D.Peek(b.Context.currentLine,b.Context.nextNonspace);if(!((62===d))){$s=-1;return 0;}e=new CW([d]);b.Context.advanceNextNonspace();b.Context.advanceOffset(1,false);f=D.Peek(b.Context.currentLine,b.Context.offset);g=(32===f)||(9===f);if(g){b.Context.advanceOffset(1,true);e=$append(e,f);}$r=b.Context.closeUnmatchedBlocks();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=b.Context.addChild(5);$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;b.Context.addChildMarker(6,e);$s=-1;return 1;}return;}var $f={$blk:CI,$c:true,$r,b,c,d,e,f,g,h,$s};return $f;};$pkg.BlockquoteStart=CI;CJ=function(b,c){var b,c,d,e;d=c.currentLine;if(!c.indented&&(D.Peek(d,c.nextNonspace)===62)){c.advanceNextNonspace();c.advanceOffset(1,false);e=D.Peek(d,c.offset);if((32===e)||(9===e)){c.advanceOffset(1,true);}return 0;}return 1;};$pkg.BlockquoteContinue=CJ;CK=function(){return new DQ([BU,CI,BS,CD,BT,BI,M,S,AJ,AH,CE,BW,AX,CM,V]);};AC.ptr.prototype.parseBlockRef=function(b){var aa,ab,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=this;if(!c.Context.ParseOption.BlockRef){b.pos=b.pos+(1)>>0;return new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,(new CW($stringToBytes("("))),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");}d=$subslice(b.tokens,b.pos);if(5>d.$length||!((40===(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])))||!((40===(1>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+1])))){b.pos=b.pos+(1)>>0;return new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,(new CW($stringToBytes("("))),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");}e=CW.nil;f=CW.nil;g=e;h=f;i="";j=b.pos;b.pos=b.pos+(2)>>0;k=false;l=false;m=k;n=l;o=CW.nil;p=CW.nil;q=o;r=p;while(true){s=D.Spnl($subslice(b.tokens,b.pos));m=s[0];q=s[1];r=s[2];if(!m){break;}b.pos=b.pos+(q.$length)>>0;t=c.Context.parseBlockRefID(r);q=t[0];r=t[1];g=t[2];if(1>q.$length){break;}b.pos=b.pos+(q.$length)>>0;n=(41===(u=q.$length-1>>0,((u<0||u>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+u])))&&(41===(v=q.$length-2>>0,((v<0||v>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+v])));if(n){break;}if(1>r.$length||!D.IsWhitespace((0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0]))){break;}w=D.Spnl(r);m=w[0];q=w[1];r=w[2];if(!m){break;}b.pos=b.pos+((q.$length+1>>0))>>0;n=2<=r.$length&&(41===(0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0]))&&(41===(1>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+1]));if(n){b.pos=b.pos+(1)>>0;break;}x=false;y=c.Context.parseBlockRefText(r);x=y[0];q=y[1];r=y[2];h=y[3];i=y[4];if(!x){break;}b.pos=b.pos+(q.$length)>>0;z=D.Spnl(r);m=z[0];q=z[1];r=z[2];b.pos=b.pos+(q.$length)>>0;n=m&&1<r.$length;if(n){n=(41===(0>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+0]))&&(41===(1>=r.$length?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+1]));b.pos=b.pos+(2)>>0;}break;}if(!n){b.pos=j+1>>0;return new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,(new CW($stringToBytes("("))),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");}aa=new B.Node.ptr("","","","",430,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");aa.AppendChild(new B.Node.ptr("","","","",38,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));aa.AppendChild(new B.Node.ptr("","","","",38,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));aa.AppendChild(new B.Node.ptr("","","","",431,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,g,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));if(0<h.$length){aa.AppendChild(new B.Node.ptr("","","","",432,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));ab=new B.Node.ptr("","","","",433,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,h,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");if("d"===i){ab.Type=434;}aa.AppendChild(ab);}aa.AppendChild(new B.Node.ptr("","","","",39,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));aa.AppendChild(new B.Node.ptr("","","","",39,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));return aa;};AC.prototype.parseBlockRef=function(b){return this.$val.parseBlockRef(b);};AA.ptr.prototype.parseBlockRefID=function(b){var b,c,d,e,f,g,h,i,j;c=CW.nil;d=CW.nil;e=CW.nil;f=this;d=b;g=b.$length;if(1>g){return[c,d,e];}h=0;i=0;while(true){if(!(h<g)){break;}i=((h<0||h>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+h]);if(A.Contains(C.CaretTokens,new CW([i]))){h=h+(1)>>0;continue;}if(D.IsWhitespace(i)||(41===i)||!D.IsASCIILetterNumHyphen(((h<0||h>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+h]))){break;}h=h+(1)>>0;}d=$subslice(b,h);e=$subslice(b,0,h);if(2>d.$length||!B.IsNodeIDPattern(($bytesToString(e)))){return[c,d,e];}c=$makeSlice(CW,0,64);c=$appendSlice(c,e);if(A.HasPrefix(d,C.CaretTokens)){c=$appendSlice(c,C.CaretTokens);d=$subslice(d,C.CaretTokens.$length);}j=(41===(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]))&&(41===(1>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+1]));if(j){c=$appendSlice(c,(new CW($stringToBytes("))"))));return[c,d,e];}if(!D.IsWhitespace((0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]))){c=CW.nil;return[c,d,e];}return[c,d,e];};AA.prototype.parseBlockRefID=function(b){return this.$val.parseBlockRefID(b);};CM=function(b,c){var{b,c,d,e,$s,$r,$c}=$restore(this,{b,c});$s=$s||0;s:while(true){switch($s){case 0:if(!b.Context.ParseOption.BlockRef||b.Context.indented){$s=-1;return 0;}d=b.parseBlockQueryEmbed();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(CY.nil===e){$s=-1;return 0;}$r=b.Context.closeUnmatchedBlocks();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:if(!(!b.Context.Tip.CanContain(465))){$s=4;continue;}$r=b.Context.finalize(b.Context.Tip);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 4:b.Context.Tip.AppendChild(e);b.Context.Tip=e;$s=-1;return 2;}return;}var $f={$blk:CM,$c:true,$r,b,c,d,e,$s};return $f;};$pkg.BlockQueryEmbedStart=CM;AC.ptr.prototype.parseBlockQueryEmbed=function(){var{b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:b=CY.nil;c=this;d=$subslice(c.Context.currentLine,c.Context.nextNonspace);e=A.HasPrefix(d,(new CW($stringToBytes("\xE2\x80\xB8{{"))));if(!A.HasPrefix(d,(new CW($stringToBytes("{{"))))&&!e){$s=-1;return b;}if(e){d=A.Replace(d,(new CW($stringToBytes("\xE2\x80\xB8{{"))),(new CW($stringToBytes("{{"))),1);}d=$subslice(d,2);f=A.TrimSpace(d);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}d=f;if(c.Context.ParseOption.ProtyleWYSIWYG){d=A.ReplaceAll(d,C.CaretTokens,CW.nil);}if(!A.HasSuffix(d,(new CW($stringToBytes("}}"))))){$s=-1;return b;}d=$subslice(d,0,(d.$length-2>>0));g=A.TrimSpace(d);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;d=A.TrimSuffix(d,C.CaretTokens);b=new B.Node.ptr("","","","",465,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");b.AppendChild(new B.Node.ptr("","","","",466,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));b.AppendChild(new B.Node.ptr("","","","",466,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));b.AppendChild(new B.Node.ptr("","","","",468,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,h,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));b.AppendChild(new B.Node.ptr("","","","",467,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));b.AppendChild(new B.Node.ptr("","","","",467,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));$s=-1;return b;}return;}var $f={$blk:AC.ptr.prototype.parseBlockQueryEmbed,$c:true,$r,b,c,d,e,f,g,h,$s};return $f;};AC.prototype.parseBlockQueryEmbed=function(){return this.$val.parseBlockQueryEmbed();};AC.ptr.prototype.parseGFMAutoEmailLink=function(b){var b,c,d,e;c=this;d=b.FirstChild;while(true){if(!(!(CY.nil===d))){break;}e=d.Next;if((16===d.Type)&&!(CY.nil===d.Parent)&&!((33===d.Parent.Type))){c.parseGFMAutoEmailLink0(d);}else{c.parseGFMAutoEmailLink(d);}d=e;}};AC.prototype.parseGFMAutoEmailLink=function(b){return this.$val.parseGFMAutoEmailLink(b);};AC.ptr.prototype.parseGFMAutoLink=function(b){var b,c,d,e;c=this;d=b.FirstChild;while(true){if(!(!(CY.nil===d))){break;}e=d.Next;if(16===d.Type){c.parseGFMAutoLink0(d);}else{c.parseGFMAutoLink(d);}d=e;}};AC.prototype.parseGFMAutoLink=function(b){return this.$val.parseGFMAutoLink(b);};AC.ptr.prototype.parseGFMAutoEmailLink0=function(b){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;c=this;d=b.Tokens;if(0>=A.IndexByte(d,64)){return;}e=0;f=0;g=0;h=0;i=e;j=f;k=g;l=h;m=0;n=d.$length;loopPart:while(true){if(!(i<n)){break;}o=CW.nil;l=0;j=i;while(true){if(!(j<n)){break;}m=((j<0||j>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+j]);if(!D.IsWhitespace(m)){o=$append(o,((j<0||j>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+j]));if(64===m){l=j-i>>0;}j=j+(1)>>0;continue;}break;}if(i===j){c.addPreviousText(b,new CW([((j<0||j>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+j])]));i=i+(1)>>0;continue;}i=j;if(0>=l){c.addPreviousText(b,o);continue;}k=0;while(true){if(!(k<l)){break;}m=((k<0||k>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+k]);if(!c.isValidEmailSegment1(m)){c.addPreviousText(b,o);continue loopPart;}k=k+(1)>>0;}k=k+(1)>>0;p=0;while(true){if(!(k<o.$length)){break;}p=((k<0||k>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+k]);m=((k<0||k>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+k]);if(!c.isValidEmailSegment2(m)){c.addPreviousText(b,o);continue loopPart;}k=k+(1)>>0;}if(46===m){q=o.$length-1>>0;o=$subslice(o,0,q);r=c.newLink(33,o,$appendSlice(CN,o),CW.nil,2);b.InsertBefore(r);c.addPreviousText(b,new CW([p]));}else if((45===m)||(95===m)){c.addPreviousText(b,o);continue loopPart;}else{s=new B.Node.ptr("","","","",33,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,2,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");s.AppendChild(new B.Node.ptr("","","","",40,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,o,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));s.AppendChild(new B.Node.ptr("","","","",41,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,$appendSlice(CN,o),"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));b.InsertBefore(s);}}b.Unlink();return;};AC.prototype.parseGFMAutoEmailLink0=function(b){return this.$val.parseGFMAutoEmailLink0(b);};AC.ptr.prototype.isValidEmailSegment1=function(b){var b,c;c=this;return D.IsASCIILetterNumHyphen(b)||(46===b)||(43===b)||(95===b);};AC.prototype.isValidEmailSegment1=function(b){return this.$val.isValidEmailSegment1(b);};AC.ptr.prototype.isValidEmailSegment2=function(b){var b,c;c=this;return D.IsASCIILetterNumHyphen(b)||(46===b)||(95===b);};AC.prototype.isValidEmailSegment2=function(b){return this.$val.isValidEmailSegment2(b);};AC.ptr.prototype.parseGFMAutoLink0=function(b){var aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=this;d=b.Tokens;e=d.$length;f=5;if(f>e){return;}g=0;h=0;i=0;j=g;k=h;l=i;m=0;n=0;o=m;p=n;q=0;r=false;s=false;while(true){if(!(j<e)){break;}q=((j<0||j>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+j]);t=CW.nil;u=e-j>>0;if(10<=u&&(119===((j<0||j>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+j]))&&(119===(v=j+1>>0,((v<0||v>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+v])))&&(119===(w=j+2>>0,((w<0||w>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+w])))&&(46===(x=j+3>>0,((x<0||x>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+x])))){t=CQ;r=true;}else if(13<=u&&(104===((j<0||j>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+j]))&&(116===(y=j+1>>0,((y<0||y>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+y])))&&(116===(z=j+2>>0,((z<0||z>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+z])))&&(112===(aa=j+3>>0,((aa<0||aa>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+aa])))&&(58===(ab=j+4>>0,((ab<0||ab>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+ab])))&&(47===(ac=j+5>>0,((ac<0||ac>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+ac])))&&(47===(ad=j+6>>0,((ad<0||ad>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+ad])))){t=$subslice(d,j,(j+7>>0));j=j+(7)>>0;}else if(14<=u&&(104===((j<0||j>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+j]))&&(116===(ae=j+1>>0,((ae<0||ae>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+ae])))&&(116===(af=j+2>>0,((af<0||af>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+af])))&&(112===(ag=j+3>>0,((ag<0||ag>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+ag])))&&(115===(ah=j+4>>0,((ah<0||ah>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+ah])))&&(58===(ai=j+5>>0,((ai<0||ai>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+ai])))&&(47===(aj=j+6>>0,((aj<0||aj>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+aj])))&&(47===(ak=j+7>>0,((ak<0||ak>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+ak])))){t=$subslice(d,j,(j+8>>0));j=j+(8)>>0;}else if(12<=u&&(102===((j<0||j>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+j]))&&(116===(al=j+1>>0,((al<0||al>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+al])))&&(112===(am=j+2>>0,((am<0||am>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+am])))&&(58===(an=j+3>>0,((an<0||an>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+an])))&&(47===(ao=j+4>>0,((ao<0||ao>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+ao])))&&(47===(ap=j+5>>0,((ap<0||ap>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+ap])))){t=$subslice(d,j,(j+6>>0));j=j+(6)>>0;}else{aq=A.Split($subslice(d,j),(new CW($stringToBytes("://"))));if((2===aq.$length)&&0<(0>=aq.$length?($throwRuntimeError("index out of range"),undefined):aq.$array[aq.$offset+0]).$length&&0<(1>=aq.$length?($throwRuntimeError("index out of range"),undefined):aq.$array[aq.$offset+1]).$length&&!A.Contains($subslice(d,j),CQ)&&!A.Contains($subslice(d,j),CR)&&!A.Contains($subslice(d,j),CS)){if(!D.IsASCIILetterNums((0>=aq.$length?($throwRuntimeError("index out of range"),undefined):aq.$array[aq.$offset+0]))){p=p+(1)>>0;j=j+(1)>>0;continue;}t=$appendSlice((0>=aq.$length?($throwRuntimeError("index out of range"),undefined):aq.$array[aq.$offset+0]),(new CW($stringToBytes("://"))));j=j+(((0>=aq.$length?($throwRuntimeError("index out of range"),undefined):aq.$array[aq.$offset+0]).$length+3>>0))>>0;}else{p=p+(1)>>0;if((e-j>>0)<f){if(s){if(o<p){c.addPreviousText(b,$subslice(d,o));}else{c.addPreviousText(b,$subslice(d,p));}b.Unlink();}return;}j=j+(1)>>0;continue;}}if(o<p){c.addPreviousText(b,$subslice(d,o,p));s=true;o=p;}ar=CW.nil;k=j;while(true){if(!(k<e)){break;}q=((k<0||k>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+k]);if((D.IsWhitespace(q)||(60===q))||(!D.IsASCIIPunct(q)&&!D.IsASCIILetterNum(q))){break;}as=A.ReplaceAll(ar,(new CW($stringToBytes("://"))),CW.nil);if(A.Contains(as,(new CW($stringToBytes(":"))))){as=$subslice(as,(A.Index(as,(new CW($stringToBytes(":"))))+1>>0));if(!A.Contains(as,(new CW($stringToBytes("/"))))&&!D.IsDigit(q)&&!((47===q))){break;}}ar=$append(ar,q);k=k+(1)>>0;}if(j===k){if(128<=q){if(!r){ar=$appendSlice(ar,t);}while(true){if(!(j<e)){break;}q=((j<0||j>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+j]);if(128>q){break;}ar=$append(ar,q);j=j+(1)>>0;}}else{ar=$append(ar,q);j=j+(1)>>0;}if(!(CY.nil===b.Previous)){b.Previous.Tokens=$appendSlice(b.Previous.Tokens,ar);}o=j;p=j;continue;}j=k;l=0;while(true){if(!(l<ar.$length)){break;}q=((l<0||l>=ar.$length)?($throwRuntimeError("index out of range"),undefined):ar.$array[ar.$offset+l]);if(47===q){break;}l=l+(1)>>0;}at=$subslice(ar,0,l);au=CW.nil;av=A.Index(at,(new CW($stringToBytes(":"))));if(0<av){au=$subslice(at,av);at=$subslice(at,0,av);}if(!c.isValidDomain(t,at)){c.addPreviousText(b,$subslice(d,o,j));s=true;o=j;p=j;continue;}aw=0;ax=0;ay=aw;az=ax;ba=$subslice(ar,l);bb=ba.$length;if(0<bb){bc=0;bc=0;while(true){if(!(bc<bb)){break;}q=((bc<0||bc>=ba.$length)?($throwRuntimeError("index out of range"),undefined):ba.$array[ba.$offset+bc]);if(40===q){ay=ay+(1)>>0;}else if(41===q){az=az+(1)>>0;}bc=bc+(1)>>0;}bd=false;bf=(be=bb-1>>0,((be<0||be>=ba.$length)?($throwRuntimeError("index out of range"),undefined):ba.$array[ba.$offset+be]));if(41===bf){bg=az-ay>>0;if(0<bg){bc=bb-1>>0;while(true){if(!(0<bg)){break;}q=((bc<0||bc>=ba.$length)?($throwRuntimeError("index out of range"),undefined):ba.$array[ba.$offset+bc]);if(!((41===q))){break;}bg=bg-(1)>>0;j=j-(1)>>0;bc=bc-(1)>>0;}ba=$subslice(ba,0,(bc+1>>0));bd=true;}else{bd=true;}}else if(59===bf){bh=false;bc=bb-1>>0;while(true){if(!(0<=bc)){break;}q=((bc<0||bc>=ba.$length)?($throwRuntimeError("index out of range"),undefined):ba.$array[ba.$offset+bc]);if(38===q){bh=true;break;}bc=bc-(1)>>0;}if(bh){bi=$subslice(ba,bc,bb);if(3<=bi.$length){bj=true;k=1;while(true){if(!(k<(bi.$length-1>>0))){break;}if(!D.IsASCIILetterNum(((k<0||k>=bi.$length)?($throwRuntimeError("index out of range"),undefined):bi.$array[bi.$offset+k]))){bj=false;break;}k=k+(1)>>0;}if(bj){ba=$subslice(ba,0,bc);bd=true;j=j-((bb-bc>>0))>>0;}}}}if(!bd&&D.IsASCIIPunct(bf)&&!((47===bf))&&!((125===bf))&&!((123===bf))){ba=$subslice(ba,0,(bb-1>>0));j=j-(1)>>0;}}else{bb=at.$length;bl=(bk=bb-1>>0,((bk<0||bk>=at.$length)?($throwRuntimeError("index out of range"),undefined):at.$array[at.$offset+bk]));if(D.IsASCIIPunct(bl)){at=$subslice(at,0,(bb-1>>0));j=j-(1)>>0;}}bm=$appendSlice(t,at);bm=$appendSlice(bm,au);bm=$appendSlice(bm,ba);bn=CW.nil;if(!r){bn=$appendSlice(bn,t);}bn=$appendSlice(bn,at);bn=$appendSlice(bn,au);bn=$appendSlice(bn,ba);bo=bn;if(A.HasPrefix(bo,(new CW($stringToBytes("https://github.com/"))))&&A.Contains(bo,(new CW($stringToBytes("/issues/"))))){bp=$subslice(bo,19);bp=$subslice(bp,0,A.Index(bp,(new CW($stringToBytes("/issues/")))));br=(bq=A.Split(bo,(new CW($stringToBytes("/issues/")))),(1>=bq.$length?($throwRuntimeError("index out of range"),undefined):bq.$array[bq.$offset+1]));br=(bs=A.Split(br,(new CW($stringToBytes("?")))),(0>=bs.$length?($throwRuntimeError("index out of range"),undefined):bs.$array[bs.$offset+0]));if(0<br.$length){bt=true;bu=br;bv=0;while(true){if(!(bv<bu.$length)){break;}bw=((bv<0||bv>=bu.$length)?($throwRuntimeError("index out of range"),undefined):bu.$array[bu.$offset+bv]);if(!D.IsDigit(bw)){bt=false;break;}bv++;}if(bt){bo=(new CW($stringToBytes("Issue #"+($bytesToString(br))+" \xC2\xB7 "+($bytesToString(bp)))));}}}bx=c.newLink(33,bo,G.EncodeDestination(bm),CW.nil,2);b.InsertBefore(bx);s=true;o=j;p=j;}if(o<p){c.addPreviousText(b,$subslice(d,o,p));s=true;}if(s){b.Unlink();}return;};AC.prototype.parseGFMAutoLink0=function(b){return this.$val.parseGFMAutoLink0(b);};AC.ptr.prototype.isValidDomain=function(b,c){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;d=this;if(0<b.$length&&!A.Contains(b,CQ)&&!A.Contains(b,CR)&&!A.Contains(b,CS)){return true;}e=D.Split(c,46);f=e.$length;if(2>f){return false;}g=0;h=0;while(true){if(!(h<f)){break;}i=((h<0||h>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+h]);j=i.$length;if(1>j){h=h+(1)>>0;continue;}k=0;while(true){if(!(k<j)){break;}g=((k<0||k>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+k]);if(!D.IsASCIILetterNumHyphen(g)){return false;}if(2<h&&((h===(f-2>>0))||(h===(f-1>>0)))){if(95===g){return false;}}k=k+(1)>>0;}if(h===(f-1>>0)){l=false;m=true;n=i;o=0;while(true){if(!(o<n.$length)){break;}p=((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o]);if(!D.IsDigit(p)){m=false;break;}o++;}if(!m){l=(q=$mapIndex(CT,$String.keyFor(E.BytesToStr(i))),q!==undefined?q.v:false);}else{l=true;}if(!l){return false;}}h=h+(1)>>0;}return true;};AC.prototype.isValidDomain=function(b,c){return this.$val.isValidDomain(b,c);};AC.ptr.prototype.parseAutoEmailLink=function(b){var b,c,d,e,f,g,h,i,j,k,l,m;c=CY.nil;d=this;e=$subslice(b.tokens,1);f=CW.nil;g=0;h=e.$length;i=0;j=0;k=false;while(true){if(!(j<h)){break;}g=((j<0||j>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+j]);f=$append(f,((j<0||j>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+j]));i=i+(1)>>0;if(64===g){k=true;break;}if(!D.IsASCIILetterNumHyphen(g)&&!A.Contains(CP,new CW([g]))){c=CY.nil;return c;}j=j+(1)>>0;}if(1>j||!k){c=CY.nil;return c;}l=$subslice(e,(j+1>>0));h=l.$length;j=0;m=false;while(true){if(!(j<h)){break;}g=((j<0||j>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+j]);i=i+(1)>>0;if(62===g){m=true;break;}f=$append(f,((j<0||j>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+j]));if(!D.IsASCIILetterNumHyphen(g)&&!((46===g))){c=CY.nil;return c;}if(63<j){c=CY.nil;return c;}j=j+(1)>>0;}if(1>j||!m){c=CY.nil;return c;}b.pos=b.pos+((i+1>>0))>>0;c=d.newLink(33,f,$appendSlice(CN,f),CW.nil,2);return c;};AC.prototype.parseAutoEmailLink=function(b){return this.$val.parseAutoEmailLink(b);};AC.ptr.prototype.newLink=function(b,c,d,e,f){var b,c,d,e,f,g,h,i;g=CY.nil;h=this;i=h.Context.ParseOption.ProtyleWYSIWYG&&A.HasSuffix(c,C.CaretTokens)&&A.HasSuffix(d,(new CW($stringToBytes("%E2%80%B8"))));if(i){c=A.ReplaceAll(c,C.CaretTokens,CW.nil);d=A.ReplaceAll(d,(new CW($stringToBytes("%E2%80%B8"))),CW.nil);}g=new B.Node.ptr("","","","",b,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,f,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,"");if(34===b){g.AppendChild(new B.Node.ptr("","","","",35,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));}g.AppendChild(new B.Node.ptr("","","","",36,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));g.AppendChild(new B.Node.ptr("","","","",40,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,c,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));g.AppendChild(new B.Node.ptr("","","","",37,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));g.AppendChild(new B.Node.ptr("","","","",38,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));g.AppendChild(new B.Node.ptr("","","","",41,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,d,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));if(!(CW.nil===e)){g.AppendChild(new B.Node.ptr("","","","",42,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,e,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));}g.AppendChild(new B.Node.ptr("","","","",39,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,CW.nil,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));if(i){g.AppendChild(new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,C.CaretTokens,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));}if(1===f){g.LinkRefLabel=c;}return g;};AC.prototype.newLink=function(b,c,d,e,f){return this.$val.newLink(b,c,d,e,f);};AC.ptr.prototype.parseAutolink=function(b){var b,c,d,e,f,g,h,i,j,k,l,m;c=CY.nil;d=this;e=false;f="";g=CW.nil;h=0;i=b.pos+1>>0;while(true){if(!(i<b.tokensLen&&!((62===(j=b.tokens,((i<0||i>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+i])))))){break;}h=(k=b.tokens,((i<0||i>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+i]));if(32===h){c=CY.nil;return c;}g=$append(g,(l=b.tokens,((i<0||i>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+i])));if(!e){if(!((58===h))){f=f+(($encodeRune(h)));}else{e=true;}}i=i+(1)>>0;}if(!e||3>f.length||(i===b.tokensLen)){c=CY.nil;return c;}if(!((62===(m=b.tokens,((i<0||i>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+i]))))){c=CY.nil;return c;}b.pos=1+i>>0;c=d.newLink(33,g,G.EncodeDestination(g),CW.nil,2);return c;};AC.prototype.parseAutolink=function(b){return this.$val.parseAutolink(b);};AC.ptr.prototype.addPreviousText=function(b,c){var b,c,d;d=this;if(CY.nil===b.Previous||!((16===b.Previous.Type))){b.InsertBefore(new B.Node.ptr("","","","",16,CY.nil,CY.nil,CY.nil,CY.nil,CY.nil,CZ.nil,c,"","",false,false,false,0,false,0,0,0,CW.nil,CW.nil,CW.nil,0,DA.nil,false,DB.nil,0,0,0,0,CW.nil,0,false,"",0,CW.nil,"",CZ.nil,CW.nil,DD.nil,false,"","","","","","","","","","","",0,""));return;}b.Previous.AppendTokens(c);};AC.prototype.addPreviousText=function(b,c){return this.$val.addPreviousText(b,c);};CU=function(){var{b,c,d,e,f,g,h,i,j,k,l,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:b=false;b=$makeMap($String.keyFor,[]);c=F.Split(CV,"\n");d="";e="";f=d;g=e;h=c;i=0;case 1:if(!(i<h.$length)){$s=2;continue;}j=((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]);f=F.Trim(j," ");k=F.ToLower(f);$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}g=k;if(1>g.length||F.HasPrefix(g,"#")){i++;$s=1;continue;}l=g;(b||$throwRuntimeError("assignment to entry in nil map")).set($String.keyFor(l),{k:l,v:true});i++;$s=1;continue;case 2:$s=-1;return b;}return;}var $f={$blk:CU,$c:true,$r,b,c,d,e,f,g,h,i,j,k,l,$s};return $f;};DI.methods=[{prop:"yamlFrontMatterFinalize",name:"yamlFrontMatterFinalize",pkg:"github.com/88250/lute/parse",typ:$funcType([CY],[],false)},{prop:"parseToC",name:"parseToC",pkg:"github.com/88250/lute/parse",typ:$funcType([CY],[CY],false)},{prop:"parseTable",name:"parseTable",pkg:"github.com/88250/lute/parse",typ:$funcType([CY],[CY,CY],false)},{prop:"parseTable0",name:"parseTable0",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[CY],false)},{prop:"newTableHead",name:"newTableHead",pkg:"github.com/88250/lute/parse",typ:$funcType([CZ],[CY],false)},{prop:"parseTableRow",name:"parseTableRow",pkg:"github.com/88250/lute/parse",typ:$funcType([CW,DB,$Bool],[CY],false)},{prop:"findTableDelimRow",name:"findTableDelimRow",pkg:"github.com/88250/lute/parse",typ:$funcType([CX],[$Int],false)},{prop:"parseTableDelimRow",name:"parseTableDelimRow",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[DB],false)},{prop:"tableDelimAlign",name:"tableDelimAlign",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[$Int],false)},{prop:"superBlockFinalize",name:"superBlockFinalize",pkg:"github.com/88250/lute/parse",typ:$funcType([CY],[],false)},{prop:"isSuperBlockClose",name:"isSuperBlockClose",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[$Bool],false)},{prop:"advanceOffset",name:"advanceOffset",pkg:"github.com/88250/lute/parse",typ:$funcType([$Int,$Bool],[],false)},{prop:"advanceNextNonspace",name:"advanceNextNonspace",pkg:"github.com/88250/lute/parse",typ:$funcType([],[],false)},{prop:"findNextNonspace",name:"findNextNonspace",pkg:"github.com/88250/lute/parse",typ:$funcType([],[],false)},{prop:"closeUnmatchedBlocks",name:"closeUnmatchedBlocks",pkg:"github.com/88250/lute/parse",typ:$funcType([],[],false)},{prop:"closeSuperBlockChildren",name:"closeSuperBlockChildren",pkg:"github.com/88250/lute/parse",typ:$funcType([],[],false)},{prop:"finalize",name:"finalize",pkg:"github.com/88250/lute/parse",typ:$funcType([CY],[],false)},{prop:"addChildMarker",name:"addChildMarker",pkg:"github.com/88250/lute/parse",typ:$funcType([B.NodeType,CW],[CY],false)},{prop:"addChild",name:"addChild",pkg:"github.com/88250/lute/parse",typ:$funcType([B.NodeType],[CY],false)},{prop:"listsMatch",name:"listsMatch",pkg:"github.com/88250/lute/parse",typ:$funcType([DA,DA],[$Bool],false)},{prop:"ParentTip",name:"ParentTip",pkg:"",typ:$funcType([],[],false)},{prop:"TipAppendChild",name:"TipAppendChild",pkg:"",typ:$funcType([CY],[],false)},{prop:"mathBlockFinalize",name:"mathBlockFinalize",pkg:"github.com/88250/lute/parse",typ:$funcType([CY],[],false)},{prop:"isMathBlockClose",name:"isMathBlockClose",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[$Bool],false)},{prop:"listFinalize",name:"listFinalize",pkg:"github.com/88250/lute/parse",typ:$funcType([CY],[],false)},{prop:"parseLinkRefDef",name:"parseLinkRefDef",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[CW],false)},{prop:"parseLinkTitle",name:"parseLinkTitle",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[$Bool,CW,CW,CW],false)},{prop:"parseBlockRefText",name:"parseBlockRefText",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[$Bool,CW,CW,CW,$String],false)},{prop:"parseLinkTitleMatch",name:"parseLinkTitleMatch",pkg:"github.com/88250/lute/parse",typ:$funcType([$Uint8,$Uint8,CW],[$Bool,CW,CW,CW],false)},{prop:"parseLinkDest",name:"parseLinkDest",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[CW,CW,CW],false)},{prop:"parseLinkDest2",name:"parseLinkDest2",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[CW,CW,CW],false)},{prop:"parseLinkDest1",name:"parseLinkDest1",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[CW,CW,CW],false)},{prop:"parseLinkLabel",name:"parseLinkLabel",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[$Int,CW,CW],false)},{prop:"parseInlineLinkDest",name:"parseInlineLinkDest",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[CW,CW,CW],false)},{prop:"parseKramdownBlockIAL",name:"parseKramdownBlockIAL",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[DD],false)},{prop:"parseKramdownSpanIAL",name:"parseKramdownSpanIAL",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[$Int,DD],false)},{prop:"parseKramdownIALInListItem",name:"parseKramdownIALInListItem",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[DD],false)},{prop:"htmlBlockFinalize",name:"htmlBlockFinalize",pkg:"github.com/88250/lute/parse",typ:$funcType([CY],[],false)},{prop:"gitConflictFinalize",name:"gitConflictFinalize",pkg:"github.com/88250/lute/parse",typ:$funcType([CY],[],false)},{prop:"isGitConflictClose",name:"isGitConflictClose",pkg:"github.com/88250/lute/parse",typ:$funcType([],[$Bool],false)},{prop:"parseFileAnnotationRefID",name:"parseFileAnnotationRefID",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[CW,CW,CW],false)},{prop:"customBlockFinalize",name:"customBlockFinalize",pkg:"github.com/88250/lute/parse",typ:$funcType([CY],[],false)},{prop:"isCustomBlockClose",name:"isCustomBlockClose",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[$Bool],false)},{prop:"codeBlockFinalize",name:"codeBlockFinalize",pkg:"github.com/88250/lute/parse",typ:$funcType([CY],[],false)},{prop:"isFencedCodeClose",name:"isFencedCodeClose",pkg:"github.com/88250/lute/parse",typ:$funcType([CW,$Uint8,$Int],[$Bool,CW],false)},{prop:"parseBlockRefID",name:"parseBlockRefID",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[CW,CW,CW],false)}];DH.methods=[{prop:"parseYamlFrontMatter",name:"parseYamlFrontMatter",pkg:"github.com/88250/lute/parse",typ:$funcType([],[$Bool],false)},{prop:"parseThematicBreak",name:"parseThematicBreak",pkg:"github.com/88250/lute/parse",typ:$funcType([],[$Bool,CW],false)},{prop:"parseText",name:"parseText",pkg:"github.com/88250/lute/parse",typ:$funcType([DK],[CY],false)},{prop:"isMarker",name:"isMarker",pkg:"github.com/88250/lute/parse",typ:$funcType([$Uint8],[$Bool],false)},{prop:"parseBackslash",name:"parseBackslash",pkg:"github.com/88250/lute/parse",typ:$funcType([CY,DK],[CY],false)},{prop:"parseNewline",name:"parseNewline",pkg:"github.com/88250/lute/parse",typ:$funcType([CY,DK],[CY],false)},{prop:"MergeText",name:"MergeText",pkg:"",typ:$funcType([],[],false)},{prop:"mergeText",name:"mergeText",pkg:"github.com/88250/lute/parse",typ:$funcType([CY],[],false)},{prop:"parseSuperBlock",name:"parseSuperBlock",pkg:"github.com/88250/lute/parse",typ:$funcType([],[$Bool,CW],false)},{prop:"finalParseBlockIAL",name:"finalParseBlockIAL",pkg:"github.com/88250/lute/parse",typ:$funcType([],[],false)},{prop:"parseMathBlock",name:"parseMathBlock",pkg:"github.com/88250/lute/parse",typ:$funcType([],[$Bool,$Int],false)},{prop:"parseListMarker",name:"parseListMarker",pkg:"github.com/88250/lute/parse",typ:$funcType([CY],[DA,DD],false)},{prop:"parseOrderedListMarker",name:"parseOrderedListMarker",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[CW,$Uint8],false)},{prop:"FindLinkRefDefLink",name:"FindLinkRefDefLink",pkg:"",typ:$funcType([CW],[CY],false)},{prop:"parseInlines",name:"parseInlines",pkg:"github.com/88250/lute/parse",typ:$funcType([],[],false)},{prop:"walkParseInline",name:"walkParseInline",pkg:"github.com/88250/lute/parse",typ:$funcType([CY],[],false)},{prop:"parseInlineMath",name:"parseInlineMath",pkg:"github.com/88250/lute/parse",typ:$funcType([DK],[CY],false)},{prop:"matchInlineMathEnd",name:"matchInlineMathEnd",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[$Int],false)},{prop:"parseInlineHTML",name:"parseInlineHTML",pkg:"github.com/88250/lute/parse",typ:$funcType([DK],[CY],false)},{prop:"processSpanTag",name:"processSpanTag",pkg:"github.com/88250/lute/parse",typ:$funcType([CW,$String,$String,DK],[CY],false)},{prop:"parseCDATA",name:"parseCDATA",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[$Bool,CW,CW],false)},{prop:"parseDeclaration",name:"parseDeclaration",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[$Bool,CW,CW],false)},{prop:"parseProcessingInstruction",name:"parseProcessingInstruction",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[$Bool,CW,CW],false)},{prop:"parseHTMLComment",name:"parseHTMLComment",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[$Bool,CW,CW],false)},{prop:"parseTagName",name:"parseTagName",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[CW,CW],false)},{prop:"parseKramdownBlockIAL",name:"parseKramdownBlockIAL",pkg:"github.com/88250/lute/parse",typ:$funcType([],[DD],false)},{prop:"parseKramdownSpanIAL",name:"parseKramdownSpanIAL",pkg:"github.com/88250/lute/parse",typ:$funcType([],[],false)},{prop:"parseInline",name:"parseInline",pkg:"github.com/88250/lute/parse",typ:$funcType([CY,DK],[],false)},{prop:"parseEntity",name:"parseEntity",pkg:"github.com/88250/lute/parse",typ:$funcType([DK],[CY],false)},{prop:"parseCloseBracket",name:"parseCloseBracket",pkg:"github.com/88250/lute/parse",typ:$funcType([DK],[CY],false)},{prop:"parseOpenBracket",name:"parseOpenBracket",pkg:"github.com/88250/lute/parse",typ:$funcType([DK],[CY],false)},{prop:"addBracket",name:"addBracket",pkg:"github.com/88250/lute/parse",typ:$funcType([CY,$Int,$Bool,DK],[],false)},{prop:"removeBracket",name:"removeBracket",pkg:"github.com/88250/lute/parse",typ:$funcType([DK],[],false)},{prop:"parseBang",name:"parseBang",pkg:"github.com/88250/lute/parse",typ:$funcType([DK],[CY],false)},{prop:"isHTMLBlockClose",name:"isHTMLBlockClose",pkg:"github.com/88250/lute/parse",typ:$funcType([CW,$Int],[$Bool],false)},{prop:"parseHTML",name:"parseHTML",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[$Int],false)},{prop:"isOpenTag",name:"isOpenTag",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[$Bool],false)},{prop:"isCloseTag",name:"isCloseTag",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[$Bool],false)},{prop:"parseHeadingID",name:"parseHeadingID",pkg:"github.com/88250/lute/parse",typ:$funcType([CY,DK],[CY],false)},{prop:"parseATXHeading",name:"parseATXHeading",pkg:"github.com/88250/lute/parse",typ:$funcType([],[$Bool,CW,CW,$Int],false)},{prop:"parseSetextHeading",name:"parseSetextHeading",pkg:"github.com/88250/lute/parse",typ:$funcType([],[$Int],false)},{prop:"parseGitConflict",name:"parseGitConflict",pkg:"github.com/88250/lute/parse",typ:$funcType([],[$Bool],false)},{prop:"FindFootnotesDef",name:"FindFootnotesDef",pkg:"",typ:$funcType([CW],[$Int,CY],false)},{prop:"parseFileAnnotationRef",name:"parseFileAnnotationRef",pkg:"github.com/88250/lute/parse",typ:$funcType([DK],[CY],false)},{prop:"emoji",name:"emoji",pkg:"github.com/88250/lute/parse",typ:$funcType([CY],[],false)},{prop:"emoji0",name:"emoji0",pkg:"github.com/88250/lute/parse",typ:$funcType([CY],[],false)},{prop:"EmojiImgTokens",name:"EmojiImgTokens",pkg:"",typ:$funcType([$String,$String],[CW],false)},{prop:"handleDelim",name:"handleDelim",pkg:"github.com/88250/lute/parse",typ:$funcType([CY,DK],[],false)},{prop:"processEmphasis",name:"processEmphasis",pkg:"github.com/88250/lute/parse",typ:$funcType([DM,DK],[],false)},{prop:"scanDelims",name:"scanDelims",pkg:"github.com/88250/lute/parse",typ:$funcType([DK],[DM],false)},{prop:"removeDelimiter",name:"removeDelimiter",pkg:"github.com/88250/lute/parse",typ:$funcType([DM,DK],[DM],false)},{prop:"parseCustomBlock",name:"parseCustomBlock",pkg:"github.com/88250/lute/parse",typ:$funcType([],[$Bool,$Int,$String],false)},{prop:"parseCodeSpan",name:"parseCodeSpan",pkg:"github.com/88250/lute/parse",typ:$funcType([CY,DK],[CY],false)},{prop:"matchCodeSpanEnd",name:"matchCodeSpanEnd",pkg:"github.com/88250/lute/parse",typ:$funcType([CW,$Int],[$Int],false)},{prop:"parseFencedCode",name:"parseFencedCode",pkg:"github.com/88250/lute/parse",typ:$funcType([],[$Bool,$Uint8,$Int,$Int,CW,CW],false)},{prop:"parseBlocks",name:"parseBlocks",pkg:"github.com/88250/lute/parse",typ:$funcType([],[],false)},{prop:"BlockCount",name:"BlockCount",pkg:"",typ:$funcType([],[$Int],false)},{prop:"DocBlockCount",name:"DocBlockCount",pkg:"",typ:$funcType([],[$Int],false)},{prop:"incorporateLine",name:"incorporateLine",pkg:"github.com/88250/lute/parse",typ:$funcType([CW],[],false)},{prop:"addLine",name:"addLine",pkg:"github.com/88250/lute/parse",typ:$funcType([],[],false)},{prop:"parseBlockRef",name:"parseBlockRef",pkg:"github.com/88250/lute/parse",typ:$funcType([DK],[CY],false)},{prop:"parseBlockQueryEmbed",name:"parseBlockQueryEmbed",pkg:"github.com/88250/lute/parse",typ:$funcType([],[CY],false)},{prop:"parseGFMAutoEmailLink",name:"parseGFMAutoEmailLink",pkg:"github.com/88250/lute/parse",typ:$funcType([CY],[],false)},{prop:"parseGFMAutoLink",name:"parseGFMAutoLink",pkg:"github.com/88250/lute/parse",typ:$funcType([CY],[],false)},{prop:"parseGFMAutoEmailLink0",name:"parseGFMAutoEmailLink0",pkg:"github.com/88250/lute/parse",typ:$funcType([CY],[],false)},{prop:"isValidEmailSegment1",name:"isValidEmailSegment1",pkg:"github.com/88250/lute/parse",typ:$funcType([$Uint8],[$Bool],false)},{prop:"isValidEmailSegment2",name:"isValidEmailSegment2",pkg:"github.com/88250/lute/parse",typ:$funcType([$Uint8],[$Bool],false)},{prop:"parseGFMAutoLink0",name:"parseGFMAutoLink0",pkg:"github.com/88250/lute/parse",typ:$funcType([CY],[],false)},{prop:"isValidDomain",name:"isValidDomain",pkg:"github.com/88250/lute/parse",typ:$funcType([CW,CW],[$Bool],false)},{prop:"parseAutoEmailLink",name:"parseAutoEmailLink",pkg:"github.com/88250/lute/parse",typ:$funcType([DK],[CY],false)},{prop:"newLink",name:"newLink",pkg:"github.com/88250/lute/parse",typ:$funcType([B.NodeType,CW,CW,CW,$Int],[CY],false)},{prop:"parseAutolink",name:"parseAutolink",pkg:"github.com/88250/lute/parse",typ:$funcType([DK],[CY],false)},{prop:"addPreviousText",name:"addPreviousText",pkg:"github.com/88250/lute/parse",typ:$funcType([CY,CW],[],false)}];AA.init("github.com/88250/lute/parse",[{prop:"Tree",name:"Tree",embedded:false,exported:true,typ:DH,tag:""},{prop:"ParseOption",name:"ParseOption",embedded:false,exported:true,typ:DL,tag:""},{prop:"Tip",name:"Tip",embedded:false,exported:true,typ:CY,tag:""},{prop:"oldtip",name:"oldtip",embedded:false,exported:false,typ:CY,tag:""},{prop:"currentLine",name:"currentLine",embedded:false,exported:false,typ:CW,tag:""},{prop:"currentLineLen",name:"currentLineLen",embedded:false,exported:false,typ:$Int,tag:""},{prop:"offset",name:"offset",embedded:false,exported:false,typ:$Int,tag:""},{prop:"column",name:"column",embedded:false,exported:false,typ:$Int,tag:""},{prop:"nextNonspace",name:"nextNonspace",embedded:false,exported:false,typ:$Int,tag:""},{prop:"nextNonspaceColumn",name:"nextNonspaceColumn",embedded:false,exported:false,typ:$Int,tag:""},{prop:"indent",name:"indent",embedded:false,exported:false,typ:$Int,tag:""},{prop:"indented",name:"indented",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"blank",name:"blank",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"partiallyConsumedTab",name:"partiallyConsumedTab",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"allClosed",name:"allClosed",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"lastMatchedContainer",name:"lastMatchedContainer",embedded:false,exported:false,typ:CY,tag:""},{prop:"rootIAL",name:"rootIAL",embedded:false,exported:false,typ:CY,tag:""}]);AB.init("github.com/88250/lute/parse",[{prop:"tokens",name:"tokens",embedded:false,exported:false,typ:CW,tag:""},{prop:"tokensLen",name:"tokensLen",embedded:false,exported:false,typ:$Int,tag:""},{prop:"pos",name:"pos",embedded:false,exported:false,typ:$Int,tag:""},{prop:"delimiters",name:"delimiters",embedded:false,exported:false,typ:DM,tag:""},{prop:"brackets",name:"brackets",embedded:false,exported:false,typ:DM,tag:""}]);AC.init("github.com/88250/lute/parse",[{prop:"Root",name:"Root",embedded:false,exported:true,typ:CY,tag:""},{prop:"Context",name:"Context",embedded:false,exported:true,typ:DI,tag:""},{prop:"lexer",name:"lexer",embedded:false,exported:false,typ:DJ,tag:""},{prop:"inlineContext",name:"inlineContext",embedded:false,exported:false,typ:DK,tag:""},{prop:"Name",name:"Name",embedded:false,exported:true,typ:$String,tag:""},{prop:"ID",name:"ID",embedded:false,exported:true,typ:$String,tag:""},{prop:"Box",name:"Box",embedded:false,exported:true,typ:$String,tag:""},{prop:"Path",name:"Path",embedded:false,exported:true,typ:$String,tag:""},{prop:"HPath",name:"HPath",embedded:false,exported:true,typ:$String,tag:""},{prop:"Marks",name:"Marks",embedded:false,exported:true,typ:DC,tag:""},{prop:"Created",name:"Created",embedded:false,exported:true,typ:$Int64,tag:""},{prop:"Updated",name:"Updated",embedded:false,exported:true,typ:$Int64,tag:""},{prop:"Hash",name:"Hash",embedded:false,exported:true,typ:$String,tag:""}]);AD.init("",[{prop:"GFMTable",name:"GFMTable",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"GFMTaskListItem",name:"GFMTaskListItem",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"GFMStrikethrough",name:"GFMStrikethrough",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"GFMAutoLink",name:"GFMAutoLink",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"Footnotes",name:"Footnotes",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"HeadingID",name:"HeadingID",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"ToC",name:"ToC",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"Emoji",name:"Emoji",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"AliasEmoji",name:"AliasEmoji",embedded:false,exported:true,typ:DR,tag:""},{prop:"EmojiAlias",name:"EmojiAlias",embedded:false,exported:true,typ:DR,tag:""},{prop:"EmojiSite",name:"EmojiSite",embedded:false,exported:true,typ:$String,tag:""},{prop:"VditorWYSIWYG",name:"VditorWYSIWYG",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"VditorIR",name:"VditorIR",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"VditorSV",name:"VditorSV",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"ProtyleWYSIWYG",name:"ProtyleWYSIWYG",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"InlineMathAllowDigitAfterOpenMarker",name:"InlineMathAllowDigitAfterOpenMarker",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"Setext",name:"Setext",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"YamlFrontMatter",name:"YamlFrontMatter",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"BlockRef",name:"BlockRef",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"FileAnnotationRef",name:"FileAnnotationRef",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"Mark",name:"Mark",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"KramdownBlockIAL",name:"KramdownBlockIAL",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"KramdownSpanIAL",name:"KramdownSpanIAL",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"Tag",name:"Tag",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"ImgPathAllowSpace",name:"ImgPathAllowSpace",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"SuperBlock",name:"SuperBlock",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"Sup",name:"Sup",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"Sub",name:"Sub",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"GitConflict",name:"GitConflict",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"LinkRef",name:"LinkRef",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"IndentCodeBlock",name:"IndentCodeBlock",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"ParagraphBeginningSpace",name:"ParagraphBeginningSpace",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"DataImage",name:"DataImage",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"TextMark",name:"TextMark",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"HTMLTag2TextMark",name:"HTMLTag2TextMark",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"Spin",name:"Spin",embedded:false,exported:true,typ:$Bool,tag:""}]);CA.init("github.com/88250/lute/parse",[{prop:"node",name:"node",embedded:false,exported:false,typ:CY,tag:""},{prop:"typ",name:"typ",embedded:false,exported:false,typ:$Uint8,tag:""},{prop:"num",name:"num",embedded:false,exported:false,typ:$Int,tag:""},{prop:"originalNum",name:"originalNum",embedded:false,exported:false,typ:$Int,tag:""},{prop:"canOpen",name:"canOpen",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"canClose",name:"canClose",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"previous",name:"previous",embedded:false,exported:false,typ:DM,tag:""},{prop:"next",name:"next",embedded:false,exported:false,typ:DM,tag:""},{prop:"active",name:"active",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"image",name:"image",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"bracketAfter",name:"bracketAfter",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"index",name:"index",embedded:false,exported:false,typ:$Int,tag:""},{prop:"previousDelimiter",name:"previousDelimiter",embedded:false,exported:false,typ:DM,tag:""}]);CL.init([DH,CY],[$Int],false);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.EmojiUnicodeAlias=false;$pkg.YamlFrontMatterMarker=E.StrToBytes("---");$pkg.YamlFrontMatterMarkerNewline=E.StrToBytes("---\n");$pkg.YamlFrontMatterMarkerCaret=E.StrToBytes("---\xE2\x80\xB8");$pkg.YamlFrontMatterMarkerCaretNewline=E.StrToBytes("---\xE2\x80\xB8\n");T=E.StrToBytes("\\");$pkg.EmojiLock=new H.Mutex.ptr(0,0);$pkg.MathBlockMarker=E.StrToBytes("$$");$pkg.MathBlockMarkerNewline=E.StrToBytes("$$\n");$pkg.MathBlockMarkerCaret=E.StrToBytes("$$\xE2\x80\xB8");$pkg.MathBlockMarkerCaretNewline=E.StrToBytes("$$\xE2\x80\xB8\n");AL=E.StrToBytes("1");AN=E.StrToBytes("$");AY=E.StrToBytes("{: ");AZ=E.StrToBytes("{:}");BK=new CX([E.StrToBytes("<script"),E.StrToBytes("<pre"),E.StrToBytes("<style"),E.StrToBytes("<textarea")]);BL=new CX([E.StrToBytes("</script>"),E.StrToBytes("</pre>"),E.StrToBytes("</style>"),E.StrToBytes("</textarea>")]);BM=new CX([E.StrToBytes("<address"),E.StrToBytes("<article"),E.StrToBytes("<aside"),E.StrToBytes("<base"),E.StrToBytes("<basefont"),E.StrToBytes("<blockquote"),E.StrToBytes("<body"),E.StrToBytes("<caption"),E.StrToBytes("<center"),E.StrToBytes("<col"),E.StrToBytes("<colgroup"),E.StrToBytes("<dd"),E.StrToBytes("<details"),E.StrToBytes("<dialog"),E.StrToBytes("<dir"),E.StrToBytes("<div"),E.StrToBytes("<dl"),E.StrToBytes("<dt"),E.StrToBytes("<fieldset"),E.StrToBytes("<figcaption"),E.StrToBytes("<figure"),E.StrToBytes("<footer"),E.StrToBytes("<form"),E.StrToBytes("<frame"),E.StrToBytes("<frameset"),E.StrToBytes("<h1"),E.StrToBytes("<h2"),E.StrToBytes("<h3"),E.StrToBytes("<h4"),E.StrToBytes("<h5"),E.StrToBytes("<h6"),E.StrToBytes("<head"),E.StrToBytes("<header"),E.StrToBytes("<hr"),E.StrToBytes("<html"),E.StrToBytes("<iframe"),E.StrToBytes("<legend"),E.StrToBytes("<li"),E.StrToBytes("<link"),E.StrToBytes("<main"),E.StrToBytes("<menu"),E.StrToBytes("<menuitem"),E.StrToBytes("<nav"),E.StrToBytes("<noframes"),E.StrToBytes("<ol"),E.StrToBytes("<optgroup"),E.StrToBytes("<option"),E.StrToBytes("<p"),E.StrToBytes("<param"),E.StrToBytes("<section"),E.StrToBytes("<source"),E.StrToBytes("<summary"),E.StrToBytes("<table"),E.StrToBytes("<tbody"),E.StrToBytes("<td"),E.StrToBytes("<tfoot"),E.StrToBytes("<th"),E.StrToBytes("<thead"),E.StrToBytes("<title"),E.StrToBytes("<tr"),E.StrToBytes("<track"),E.StrToBytes("<ul"),E.StrToBytes("<video"),E.StrToBytes("<audio"),E.StrToBytes("</address"),E.StrToBytes("</article"),E.StrToBytes("</aside"),E.StrToBytes("</base"),E.StrToBytes("</basefont"),E.StrToBytes("</blockquote"),E.StrToBytes("</body"),E.StrToBytes("</caption"),E.StrToBytes("</center"),E.StrToBytes("</col"),E.StrToBytes("</colgroup"),E.StrToBytes("</dd"),E.StrToBytes("</details"),E.StrToBytes("</dialog"),E.StrToBytes("</dir"),E.StrToBytes("</div"),E.StrToBytes("</dl"),E.StrToBytes("</dt"),E.StrToBytes("</fieldset"),E.StrToBytes("</figcaption"),E.StrToBytes("</figure"),E.StrToBytes("</footer"),E.StrToBytes("</form"),E.StrToBytes("</frame"),E.StrToBytes("</frameset"),E.StrToBytes("</h1"),E.StrToBytes("</h2"),E.StrToBytes("</h3"),E.StrToBytes("</h4"),E.StrToBytes("</h5"),E.StrToBytes("</h6"),E.StrToBytes("</head"),E.StrToBytes("</header"),E.StrToBytes("</hr"),E.StrToBytes("</html"),E.StrToBytes("</iframe"),E.StrToBytes("</legend"),E.StrToBytes("</li"),E.StrToBytes("</link"),E.StrToBytes("</main"),E.StrToBytes("</menu"),E.StrToBytes("</menuitem"),E.StrToBytes("</nav"),E.StrToBytes("</noframes"),E.StrToBytes("</ol"),E.StrToBytes("</optgroup"),E.StrToBytes("</option"),E.StrToBytes("</p"),E.StrToBytes("</param"),E.StrToBytes("</section"),E.StrToBytes("</source"),E.StrToBytes("</summary"),E.StrToBytes("</table"),E.StrToBytes("</tbody"),E.StrToBytes("</td"),E.StrToBytes("</tfoot"),E.StrToBytes("</th"),E.StrToBytes("</thead"),E.StrToBytes("</title"),E.StrToBytes("</tr"),E.StrToBytes("</track"),E.StrToBytes("</ul"),E.StrToBytes("</video"),E.StrToBytes("</audio")]);BN=E.StrToBytes("'");BO=E.StrToBytes("\"");BP=E.StrToBytes(">");BQ=E.StrToBytes("{");BR=E.StrToBytes("}");$pkg.EmojiAliasUnicode=$makeMap($String.keyFor,[{k:"+1",v:"\xF0\x9F\x91\x8D"},{k:"-1",v:"\xF0\x9F\x91\x8E"},{k:"100",v:"\xF0\x9F\x92\xAF"},{k:"1234",v:"\xF0\x9F\x94\xA2"},{k:"1st_place_medal",v:"\xF0\x9F\xA5\x87"},{k:"2nd_place_medal",v:"\xF0\x9F\xA5\x88"},{k:"3rd_place_medal",v:"\xF0\x9F\xA5\x89"},{k:"8ball",v:"\xF0\x9F\x8E\xB1"},{k:"a",v:"\xF0\x9F\x85\xB0\xEF\xB8\x8F"},{k:"ab",v:"\xF0\x9F\x86\x8E"},{k:"abc",v:"\xF0\x9F\x94\xA4"},{k:"abcd",v:"\xF0\x9F\x94\xA1"},{k:"Accept",v:"\xF0\x9F\x89\x91"},{k:"aerial_tramway",v:"\xF0\x9F\x9A\xA1"},{k:"afghanistan",v:"\xF0\x9F\x87\xA6\xF0\x9F\x87\xAB"},{k:"airplane",v:"\xE2\x9C\x88\xEF\xB8\x8F"},{k:"aland_islands",v:"\xF0\x9F\x87\xA6\xF0\x9F\x87\xBD"},{k:"alarm_clock",v:"\xE2\x8F\xB0"},{k:"albania",v:"\xF0\x9F\x87\xA6\xF0\x9F\x87\xB1"},{k:"alembic",v:"\xE2\x9A\x97\xEF\xB8\x8F"},{k:"algeria",v:"\xF0\x9F\x87\xA9\xF0\x9F\x87\xBF"},{k:"alien",v:"\xF0\x9F\x91\xBD"},{k:"ambulance",v:"\xF0\x9F\x9A\x91"},{k:"american_samoa",v:"\xF0\x9F\x87\xA6\xF0\x9F\x87\xB8"},{k:"amphora",v:"\xF0\x9F\x8F\xBA"},{k:"anchor",v:"\xE2\x9A\x93\xEF\xB8\x8F"},{k:"andorra",v:"\xF0\x9F\x87\xA6\xF0\x9F\x87\xA9"},{k:"angel",v:"\xF0\x9F\x91\xBC"},{k:"anger",v:"\xF0\x9F\x92\xA2"},{k:"angola",v:"\xF0\x9F\x87\xA6\xF0\x9F\x87\xB4"},{k:"angry",v:"\xF0\x9F\x98\xA0"},{k:"anguilla",v:"\xF0\x9F\x87\xA6\xF0\x9F\x87\xAE"},{k:"anguished",v:"\xF0\x9F\x98\xA7"},{k:"ant",v:"\xF0\x9F\x90\x9C"},{k:"antarctica",v:"\xF0\x9F\x87\xA6\xF0\x9F\x87\xB6"},{k:"antigua_barbuda",v:"\xF0\x9F\x87\xA6\xF0\x9F\x87\xAC"},{k:"apple",v:"\xF0\x9F\x8D\x8E"},{k:"aquarius",v:"\xE2\x99\x92\xEF\xB8\x8F"},{k:"argentina",v:"\xF0\x9F\x87\xA6\xF0\x9F\x87\xB7"},{k:"aries",v:"\xE2\x99\x88\xEF\xB8\x8F"},{k:"armenia",v:"\xF0\x9F\x87\xA6\xF0\x9F\x87\xB2"},{k:"arrow_backward",v:"\xE2\x97\x80\xEF\xB8\x8F"},{k:"arrow_double_down",v:"\xE2\x8F\xAC"},{k:"arrow_double_up",v:"\xE2\x8F\xAB"},{k:"arrow_down",v:"\xE2\xAC\x87\xEF\xB8\x8F"},{k:"arrow_down_small",v:"\xF0\x9F\x94\xBD"},{k:"arrow_forward",v:"\xE2\x96\xB6\xEF\xB8\x8F"},{k:"arrow_heading_down",v:"\xE2\xA4\xB5\xEF\xB8\x8F"},{k:"arrow_heading_up",v:"\xE2\xA4\xB4\xEF\xB8\x8F"},{k:"arrow_left",v:"\xE2\xAC\x85\xEF\xB8\x8F"},{k:"arrow_lower_left",v:"\xE2\x86\x99\xEF\xB8\x8F"},{k:"arrow_lower_right",v:"\xE2\x86\x98\xEF\xB8\x8F"},{k:"arrow_right",v:"\xE2\x9E\xA1\xEF\xB8\x8F"},{k:"arrow_right_hook",v:"\xE2\x86\xAA\xEF\xB8\x8F"},{k:"arrow_up",v:"\xE2\xAC\x86\xEF\xB8\x8F"},{k:"arrow_up_down",v:"\xE2\x86\x95\xEF\xB8\x8F"},{k:"arrow_up_small",v:"\xF0\x9F\x94\xBC"},{k:"arrow_upper_left",v:"\xE2\x86\x96\xEF\xB8\x8F"},{k:"arrow_upper_right",v:"\xE2\x86\x97\xEF\xB8\x8F"},{k:"arrows_clockwise",v:"\xF0\x9F\x94\x83"},{k:"arrows_counterclockwise",v:"\xF0\x9F\x94\x84"},{k:"art",v:"\xF0\x9F\x8E\xA8"},{k:"articulated_lorry",v:"\xF0\x9F\x9A\x9B"},{k:"artificial_satellite",v:"\xF0\x9F\x9B\xB0"},{k:"aruba",v:"\xF0\x9F\x87\xA6\xF0\x9F\x87\xBC"},{k:"asterisk",v:"*\xEF\xB8\x8F\xE2\x83\xA3"},{k:"astonished",v:"\xF0\x9F\x98\xB2"},{k:"athletic_shoe",v:"\xF0\x9F\x91\x9F"},{k:"atm",v:"\xF0\x9F\x8F\xA7"},{k:"atom_symbol",v:"\xE2\x9A\x9B\xEF\xB8\x8F"},{k:"australia",v:"\xF0\x9F\x87\xA6\xF0\x9F\x87\xBA"},{k:"austria",v:"\xF0\x9F\x87\xA6\xF0\x9F\x87\xB9"},{k:"avocado",v:"\xF0\x9F\xA5\x91"},{k:"azerbaijan",v:"\xF0\x9F\x87\xA6\xF0\x9F\x87\xBF"},{k:"b",v:"\xF0\x9F\x85\xB1\xEF\xB8\x8F"},{k:"b3log",v:"${emojiSite}/b3log.png"},{k:"baby",v:"\xF0\x9F\x91\xB6"},{k:"baby_bottle",v:"\xF0\x9F\x8D\xBC"},{k:"baby_chick",v:"\xF0\x9F\x90\xA4"},{k:"baby_symbol",v:"\xF0\x9F\x9A\xBC"},{k:"back",v:"\xF0\x9F\x94\x99"},{k:"bacon",v:"\xF0\x9F\xA5\x93"},{k:"badminton",v:"\xF0\x9F\x8F\xB8"},{k:"baggage_claim",v:"\xF0\x9F\x9B\x84"},{k:"baguette_bread",v:"\xF0\x9F\xA5\x96"},{k:"bahamas",v:"\xF0\x9F\x87\xA7\xF0\x9F\x87\xB8"},{k:"bahrain",v:"\xF0\x9F\x87\xA7\xF0\x9F\x87\xAD"},{k:"balance_scale",v:"\xE2\x9A\x96\xEF\xB8\x8F"},{k:"balloon",v:"\xF0\x9F\x8E\x88"},{k:"ballot_box",v:"\xF0\x9F\x97\xB3"},{k:"ballot_box_with_check",v:"\xE2\x98\x91\xEF\xB8\x8F"},{k:"bamboo",v:"\xF0\x9F\x8E\x8D"},{k:"banana",v:"\xF0\x9F\x8D\x8C"},{k:"bangbang",v:"\xE2\x80\xBC\xEF\xB8\x8F"},{k:"bangladesh",v:"\xF0\x9F\x87\xA7\xF0\x9F\x87\xA9"},{k:"bank",v:"\xF0\x9F\x8F\xA6"},{k:"bar_chart",v:"\xF0\x9F\x93\x8A"},{k:"barbados",v:"\xF0\x9F\x87\xA7\xF0\x9F\x87\xA7"},{k:"barber",v:"\xF0\x9F\x92\x88"},{k:"baseball",v:"\xE2\x9A\xBE\xEF\xB8\x8F"},{k:"basketball",v:"\xF0\x9F\x8F\x80"},{k:"basketball_man",v:"\xE2\x9B\xB9"},{k:"basketball_woman",v:"\xE2\x9B\xB9\xEF\xB8\x8F\xE2\x80\x8D\xE2\x99\x80\xEF\xB8\x8F"},{k:"bat",v:"\xF0\x9F\xA6\x87"},{k:"bath",v:"\xF0\x9F\x9B\x80"},{k:"bathtub",v:"\xF0\x9F\x9B\x81"},{k:"battery",v:"\xF0\x9F\x94\x8B"},{k:"beach_umbrella",v:"\xF0\x9F\x8F\x96"},{k:"bear",v:"\xF0\x9F\x90\xBB"},{k:"bed",v:"\xF0\x9F\x9B\x8F"},{k:"bee",v:"\xF0\x9F\x90\x9D"},{k:"beer",v:"\xF0\x9F\x8D\xBA"},{k:"beers",v:"\xF0\x9F\x8D\xBB"},{k:"beetle",v:"\xF0\x9F\x90\x9E"},{k:"beginner",v:"\xF0\x9F\x94\xB0"},{k:"belarus",v:"\xF0\x9F\x87\xA7\xF0\x9F\x87\xBE"},{k:"belgium",v:"\xF0\x9F\x87\xA7\xF0\x9F\x87\xAA"},{k:"belize",v:"\xF0\x9F\x87\xA7\xF0\x9F\x87\xBF"},{k:"bell",v:"\xF0\x9F\x94\x94"},{k:"bellhop_bell",v:"\xF0\x9F\x9B\x8E"},{k:"benin",v:"\xF0\x9F\x87\xA7\xF0\x9F\x87\xAF"},{k:"bento",v:"\xF0\x9F\x8D\xB1"},{k:"bermuda",v:"\xF0\x9F\x87\xA7\xF0\x9F\x87\xB2"},{k:"bhutan",v:"\xF0\x9F\x87\xA7\xF0\x9F\x87\xB9"},{k:"bicyclist",v:"\xF0\x9F\x9A\xB4"},{k:"bike",v:"\xF0\x9F\x9A\xB2"},{k:"biking_man",v:"\xF0\x9F\x9A\xB4"},{k:"biking_woman",v:"\xF0\x9F\x9A\xB4\xE2\x80\x8D\xE2\x99\x80"},{k:"bikini",v:"\xF0\x9F\x91\x99"},{k:"biohazard",v:"\xE2\x98\xA3\xEF\xB8\x8F"},{k:"bird",v:"\xF0\x9F\x90\xA6"},{k:"birthday",v:"\xF0\x9F\x8E\x82"},{k:"black_circle",v:"\xE2\x9A\xAB\xEF\xB8\x8F"},{k:"black_flag",v:"\xF0\x9F\x8F\xB4"},{k:"black_heart",v:"\xF0\x9F\x96\xA4"},{k:"black_joker",v:"\xF0\x9F\x83\x8F"},{k:"black_large_square",v:"\xE2\xAC\x9B\xEF\xB8\x8F"},{k:"black_medium_small_square",v:"\xE2\x97\xBE\xEF\xB8\x8F"},{k:"black_medium_square",v:"\xE2\x97\xBC\xEF\xB8\x8F"},{k:"black_nib",v:"\xE2\x9C\x92\xEF\xB8\x8F"},{k:"black_small_square",v:"\xE2\x96\xAA\xEF\xB8\x8F"},{k:"black_square_button",v:"\xF0\x9F\x94\xB2"},{k:"blonde_man",v:"\xF0\x9F\x91\xB1"},{k:"blonde_woman",v:"\xF0\x9F\x91\xB1\xE2\x80\x8D\xE2\x99\x80"},{k:"blossom",v:"\xF0\x9F\x8C\xBC"},{k:"blowfish",v:"\xF0\x9F\x90\xA1"},{k:"blue_book",v:"\xF0\x9F\x93\x98"},{k:"blue_car",v:"\xF0\x9F\x9A\x99"},{k:"blue_heart",v:"\xF0\x9F\x92\x99"},{k:"blush",v:"\xF0\x9F\x98\x8A"},{k:"boar",v:"\xF0\x9F\x90\x97"},{k:"boat",v:"\xE2\x9B\xB5\xEF\xB8\x8F"},{k:"bolivia",v:"\xF0\x9F\x87\xA7\xF0\x9F\x87\xB4"},{k:"bomb",v:"\xF0\x9F\x92\xA3"},{k:"book",v:"\xF0\x9F\x93\x96"},{k:"bookmark",v:"\xF0\x9F\x94\x96"},{k:"bookmark_tabs",v:"\xF0\x9F\x93\x91"},{k:"books",v:"\xF0\x9F\x93\x9A"},{k:"boom",v:"\xF0\x9F\x92\xA5"},{k:"boot",v:"\xF0\x9F\x91\xA2"},{k:"bosnia_herzegovina",v:"\xF0\x9F\x87\xA7\xF0\x9F\x87\xA6"},{k:"botswana",v:"\xF0\x9F\x87\xA7\xF0\x9F\x87\xBC"},{k:"bouquet",v:"\xF0\x9F\x92\x90"},{k:"bow",v:"\xF0\x9F\x99\x87"},{k:"bow_and_arrow",v:"\xF0\x9F\x8F\xB9"},{k:"bowing_man",v:"\xF0\x9F\x99\x87"},{k:"bowing_woman",v:"\xF0\x9F\x99\x87\xE2\x80\x8D\xE2\x99\x80"},{k:"bowling",v:"\xF0\x9F\x8E\xB3"},{k:"boxing_glove",v:"\xF0\x9F\xA5\x8A"},{k:"boy",v:"\xF0\x9F\x91\xA6"},{k:"brazil",v:"\xF0\x9F\x87\xA7\xF0\x9F\x87\xB7"},{k:"bread",v:"\xF0\x9F\x8D\x9E"},{k:"bride_with_veil",v:"\xF0\x9F\x91\xB0"},{k:"bridge_at_night",v:"\xF0\x9F\x8C\x89"},{k:"briefcase",v:"\xF0\x9F\x92\xBC"},{k:"british_indian_ocean_territory",v:"\xF0\x9F\x87\xAE\xF0\x9F\x87\xB4"},{k:"british_virgin_islands",v:"\xF0\x9F\x87\xBB\xF0\x9F\x87\xAC"},{k:"broken_heart",v:"\xF0\x9F\x92\x94"},{k:"brunei",v:"\xF0\x9F\x87\xA7\xF0\x9F\x87\xB3"},{k:"bug",v:"\xF0\x9F\x90\x9B"},{k:"building_construction",v:"\xF0\x9F\x8F\x97"},{k:"bulb",v:"\xF0\x9F\x92\xA1"},{k:"bulgaria",v:"\xF0\x9F\x87\xA7\xF0\x9F\x87\xAC"},{k:"bullettrain_front",v:"\xF0\x9F\x9A\x85"},{k:"bullettrain_side",v:"\xF0\x9F\x9A\x84"},{k:"burkina_faso",v:"\xF0\x9F\x87\xA7\xF0\x9F\x87\xAB"},{k:"burrito",v:"\xF0\x9F\x8C\xAF"},{k:"burundi",v:"\xF0\x9F\x87\xA7\xF0\x9F\x87\xAE"},{k:"bus",v:"\xF0\x9F\x9A\x8C"},{k:"business_suit_levitating",v:"\xF0\x9F\x95\xB4"},{k:"busstop",v:"\xF0\x9F\x9A\x8F"},{k:"bust_in_silhouette",v:"\xF0\x9F\x91\xA4"},{k:"busts_in_silhouette",v:"\xF0\x9F\x91\xA5"},{k:"butterfly",v:"\xF0\x9F\xA6\x8B"},{k:"cactus",v:"\xF0\x9F\x8C\xB5"},{k:"cake",v:"\xF0\x9F\x8D\xB0"},{k:"calendar",v:"\xF0\x9F\x93\x86"},{k:"call_me_hand",v:"\xF0\x9F\xA4\x99"},{k:"calling",v:"\xF0\x9F\x93\xB2"},{k:"cambodia",v:"\xF0\x9F\x87\xB0\xF0\x9F\x87\xAD"},{k:"camel",v:"\xF0\x9F\x90\xAB"},{k:"camera",v:"\xF0\x9F\x93\xB7"},{k:"camera_flash",v:"\xF0\x9F\x93\xB8"},{k:"cameroon",v:"\xF0\x9F\x87\xA8\xF0\x9F\x87\xB2"},{k:"camping",v:"\xF0\x9F\x8F\x95"},{k:"canada",v:"\xF0\x9F\x87\xA8\xF0\x9F\x87\xA6"},{k:"canary_islands",v:"\xF0\x9F\x87\xAE\xF0\x9F\x87\xA8"},{k:"cancer",v:"\xE2\x99\x8B\xEF\xB8\x8F"},{k:"candle",v:"\xF0\x9F\x95\xAF"},{k:"candy",v:"\xF0\x9F\x8D\xAC"},{k:"canoe",v:"\xF0\x9F\x9B\xB6"},{k:"cape_verde",v:"\xF0\x9F\x87\xA8\xF0\x9F\x87\xBB"},{k:"capital_abcd",v:"\xF0\x9F\x94\xA0"},{k:"capricorn",v:"\xE2\x99\x91\xEF\xB8\x8F"},{k:"car",v:"\xF0\x9F\x9A\x97"},{k:"card_file_box",v:"\xF0\x9F\x97\x83"},{k:"card_index",v:"\xF0\x9F\x93\x87"},{k:"card_index_dividers",v:"\xF0\x9F\x97\x82"},{k:"caribbean_netherlands",v:"\xF0\x9F\x87\xA7\xF0\x9F\x87\xB6"},{k:"carousel_horse",v:"\xF0\x9F\x8E\xA0"},{k:"carrot",v:"\xF0\x9F\xA5\x95"},{k:"cat",v:"\xF0\x9F\x90\xB1"},{k:"cat2",v:"\xF0\x9F\x90\x88"},{k:"cayman_islands",v:"\xF0\x9F\x87\xB0\xF0\x9F\x87\xBE"},{k:"cd",v:"\xF0\x9F\x92\xBF"},{k:"central_african_republic",v:"\xF0\x9F\x87\xA8\xF0\x9F\x87\xAB"},{k:"chad",v:"\xF0\x9F\x87\xB9\xF0\x9F\x87\xA9"},{k:"chainbook",v:"${emojiSite}/chainbook.png"},{k:"chains",v:"\xE2\x9B\x93"},{k:"champagne",v:"\xF0\x9F\x8D\xBE"},{k:"chart",v:"\xF0\x9F\x92\xB9"},{k:"chart_with_downwards_trend",v:"\xF0\x9F\x93\x89"},{k:"chart_with_upwards_trend",v:"\xF0\x9F\x93\x88"},{k:"checkered_flag",v:"\xF0\x9F\x8F\x81"},{k:"cheese",v:"\xF0\x9F\xA7\x80"},{k:"cherries",v:"\xF0\x9F\x8D\x92"},{k:"cherry_blossom",v:"\xF0\x9F\x8C\xB8"},{k:"chestnut",v:"\xF0\x9F\x8C\xB0"},{k:"chicken",v:"\xF0\x9F\x90\x94"},{k:"children_crossing",v:"\xF0\x9F\x9A\xB8"},{k:"chile",v:"\xF0\x9F\x87\xA8\xF0\x9F\x87\xB1"},{k:"chipmunk",v:"\xF0\x9F\x90\xBF"},{k:"chocolate_bar",v:"\xF0\x9F\x8D\xAB"},{k:"christmas_island",v:"\xF0\x9F\x87\xA8\xF0\x9F\x87\xBD"},{k:"christmas_tree",v:"\xF0\x9F\x8E\x84"},{k:"church",v:"\xE2\x9B\xAA\xEF\xB8\x8F"},{k:"cinema",v:"\xF0\x9F\x8E\xA6"},{k:"circus_tent",v:"\xF0\x9F\x8E\xAA"},{k:"city_sunrise",v:"\xF0\x9F\x8C\x87"},{k:"city_sunset",v:"\xF0\x9F\x8C\x86"},{k:"cityscape",v:"\xF0\x9F\x8F\x99"},{k:"cl",v:"\xF0\x9F\x86\x91"},{k:"clamp",v:"\xF0\x9F\x97\x9C"},{k:"clap",v:"\xF0\x9F\x91\x8F"},{k:"clapper",v:"\xF0\x9F\x8E\xAC"},{k:"classical_building",v:"\xF0\x9F\x8F\x9B"},{k:"clinking_glasses",v:"\xF0\x9F\xA5\x82"},{k:"clipboard",v:"\xF0\x9F\x93\x8B"},{k:"clock1",v:"\xF0\x9F\x95\x90"},{k:"clock10",v:"\xF0\x9F\x95\x99"},{k:"clock1030",v:"\xF0\x9F\x95\xA5"},{k:"clock11",v:"\xF0\x9F\x95\x9A"},{k:"clock1130",v:"\xF0\x9F\x95\xA6"},{k:"clock12",v:"\xF0\x9F\x95\x9B"},{k:"clock1230",v:"\xF0\x9F\x95\xA7"},{k:"clock130",v:"\xF0\x9F\x95\x9C"},{k:"clock2",v:"\xF0\x9F\x95\x91"},{k:"clock230",v:"\xF0\x9F\x95\x9D"},{k:"clock3",v:"\xF0\x9F\x95\x92"},{k:"clock330",v:"\xF0\x9F\x95\x9E"},{k:"clock4",v:"\xF0\x9F\x95\x93"},{k:"clock430",v:"\xF0\x9F\x95\x9F"},{k:"clock5",v:"\xF0\x9F\x95\x94"},{k:"clock530",v:"\xF0\x9F\x95\xA0"},{k:"clock6",v:"\xF0\x9F\x95\x95"},{k:"clock630",v:"\xF0\x9F\x95\xA1"},{k:"clock7",v:"\xF0\x9F\x95\x96"},{k:"clock730",v:"\xF0\x9F\x95\xA2"},{k:"clock8",v:"\xF0\x9F\x95\x97"},{k:"clock830",v:"\xF0\x9F\x95\xA3"},{k:"clock9",v:"\xF0\x9F\x95\x98"},{k:"clock930",v:"\xF0\x9F\x95\xA4"},{k:"closed_book",v:"\xF0\x9F\x93\x95"},{k:"closed_lock_with_key",v:"\xF0\x9F\x94\x90"},{k:"closed_umbrella",v:"\xF0\x9F\x8C\x82"},{k:"cloud",v:"\xE2\x98\x81\xEF\xB8\x8F"},{k:"cloud_with_lightning",v:"\xF0\x9F\x8C\xA9"},{k:"cloud_with_lightning_and_rain",v:"\xE2\x9B\x88"},{k:"cloud_with_rain",v:"\xF0\x9F\x8C\xA7"},{k:"cloud_with_snow",v:"\xF0\x9F\x8C\xA8"},{k:"clown_face",v:"\xF0\x9F\xA4\xA1"},{k:"clubs",v:"\xE2\x99\xA3\xEF\xB8\x8F"},{k:"cn",v:"\xF0\x9F\x87\xA8\xF0\x9F\x87\xB3"},{k:"cocktail",v:"\xF0\x9F\x8D\xB8"},{k:"cocos_islands",v:"\xF0\x9F\x87\xA8\xF0\x9F\x87\xA8"},{k:"coffee",v:"\xE2\x98\x95\xEF\xB8\x8F"},{k:"coffin",v:"\xE2\x9A\xB0\xEF\xB8\x8F"},{k:"cold_sweat",v:"\xF0\x9F\x98\xB0"},{k:"collision",v:"\xF0\x9F\x92\xA5"},{k:"colombia",v:"\xF0\x9F\x87\xA8\xF0\x9F\x87\xB4"},{k:"comet",v:"\xE2\x98\x84"},{k:"comoros",v:"\xF0\x9F\x87\xB0\xF0\x9F\x87\xB2"},{k:"computer",v:"\xF0\x9F\x92\xBB"},{k:"computer_mouse",v:"\xF0\x9F\x96\xB1"},{k:"confetti_ball",v:"\xF0\x9F\x8E\x8A"},{k:"confounded",v:"\xF0\x9F\x98\x96"},{k:"confused",v:"\xF0\x9F\x98\x95"},{k:"congo_brazzaville",v:"\xF0\x9F\x87\xA8\xF0\x9F\x87\xAC"},{k:"congo_kinshasa",v:"\xF0\x9F\x87\xA8\xF0\x9F\x87\xA9"},{k:"congratulations",v:"\xE3\x8A\x97\xEF\xB8\x8F"},{k:"construction",v:"\xF0\x9F\x9A\xA7"},{k:"construction_worker",v:"\xF0\x9F\x91\xB7"},{k:"construction_worker_man",v:"\xF0\x9F\x91\xB7"},{k:"construction_worker_woman",v:"\xF0\x9F\x91\xB7\xE2\x80\x8D\xE2\x99\x80"},{k:"control_knobs",v:"\xF0\x9F\x8E\x9B"},{k:"convenience_store",v:"\xF0\x9F\x8F\xAA"},{k:"cook_islands",v:"\xF0\x9F\x87\xA8\xF0\x9F\x87\xB0"},{k:"cookie",v:"\xF0\x9F\x8D\xAA"},{k:"cool",v:"\xF0\x9F\x86\x92"},{k:"cop",v:"\xF0\x9F\x91\xAE"},{k:"copyright",v:"\xC2\xA9\xEF\xB8\x8F"},{k:"corn",v:"\xF0\x9F\x8C\xBD"},{k:"costa_rica",v:"\xF0\x9F\x87\xA8\xF0\x9F\x87\xB7"},{k:"cote_divoire",v:"\xF0\x9F\x87\xA8\xF0\x9F\x87\xAE"},{k:"couch_and_lamp",v:"\xF0\x9F\x9B\x8B"},{k:"couple",v:"\xF0\x9F\x91\xAB"},{k:"couple_with_heart",v:"\xF0\x9F\x92\x91"},{k:"couple_with_heart_man_man",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xE2\x9D\xA4\xEF\xB8\x8F\xE2\x80\x8D\xF0\x9F\x91\xA8"},{k:"couple_with_heart_woman_man",v:"\xF0\x9F\x92\x91"},{k:"couple_with_heart_woman_woman",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xE2\x9D\xA4\xEF\xB8\x8F\xE2\x80\x8D\xF0\x9F\x91\xA9"},{k:"couplekiss_man_man",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xE2\x9D\xA4\xEF\xB8\x8F\xE2\x80\x8D\xF0\x9F\x92\x8B\xE2\x80\x8D\xF0\x9F\x91\xA8"},{k:"couplekiss_man_woman",v:"\xF0\x9F\x92\x8F"},{k:"couplekiss_woman_woman",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xE2\x9D\xA4\xEF\xB8\x8F\xE2\x80\x8D\xF0\x9F\x92\x8B\xE2\x80\x8D\xF0\x9F\x91\xA9"},{k:"cow",v:"\xF0\x9F\x90\xAE"},{k:"cow2",v:"\xF0\x9F\x90\x84"},{k:"cowboy_hat_face",v:"\xF0\x9F\xA4\xA0"},{k:"crab",v:"\xF0\x9F\xA6\x80"},{k:"crayon",v:"\xF0\x9F\x96\x8D"},{k:"credit_card",v:"\xF0\x9F\x92\xB3"},{k:"crescent_moon",v:"\xF0\x9F\x8C\x99"},{k:"cricket",v:"\xF0\x9F\x8F\x8F"},{k:"croatia",v:"\xF0\x9F\x87\xAD\xF0\x9F\x87\xB7"},{k:"crocodile",v:"\xF0\x9F\x90\x8A"},{k:"croissant",v:"\xF0\x9F\xA5\x90"},{k:"crossed_fingers",v:"\xF0\x9F\xA4\x9E"},{k:"crossed_flags",v:"\xF0\x9F\x8E\x8C"},{k:"crossed_swords",v:"\xE2\x9A\x94\xEF\xB8\x8F"},{k:"crown",v:"\xF0\x9F\x91\x91"},{k:"cry",v:"\xF0\x9F\x98\xA2"},{k:"crying_cat_face",v:"\xF0\x9F\x98\xBF"},{k:"crystal_ball",v:"\xF0\x9F\x94\xAE"},{k:"cuba",v:"\xF0\x9F\x87\xA8\xF0\x9F\x87\xBA"},{k:"cucumber",v:"\xF0\x9F\xA5\x92"},{k:"cupid",v:"\xF0\x9F\x92\x98"},{k:"curacao",v:"\xF0\x9F\x87\xA8\xF0\x9F\x87\xBC"},{k:"curly_loop",v:"\xE2\x9E\xB0"},{k:"currency_exchange",v:"\xF0\x9F\x92\xB1"},{k:"curry",v:"\xF0\x9F\x8D\x9B"},{k:"custard",v:"\xF0\x9F\x8D\xAE"},{k:"customs",v:"\xF0\x9F\x9B\x83"},{k:"cyclone",v:"\xF0\x9F\x8C\x80"},{k:"cyprus",v:"\xF0\x9F\x87\xA8\xF0\x9F\x87\xBE"},{k:"czech_republic",v:"\xF0\x9F\x87\xA8\xF0\x9F\x87\xBF"},{k:"dagger",v:"\xF0\x9F\x97\xA1"},{k:"dancer",v:"\xF0\x9F\x92\x83"},{k:"dancers",v:"\xF0\x9F\x91\xAF"},{k:"dancing_men",v:"\xF0\x9F\x91\xAF\xE2\x80\x8D\xE2\x99\x82"},{k:"dancing_women",v:"\xF0\x9F\x91\xAF"},{k:"dango",v:"\xF0\x9F\x8D\xA1"},{k:"dark_sunglasses",v:"\xF0\x9F\x95\xB6"},{k:"dart",v:"\xF0\x9F\x8E\xAF"},{k:"dash",v:"\xF0\x9F\x92\xA8"},{k:"date",v:"\xF0\x9F\x93\x85"},{k:"de",v:"\xF0\x9F\x87\xA9\xF0\x9F\x87\xAA"},{k:"deciduous_tree",v:"\xF0\x9F\x8C\xB3"},{k:"deer",v:"\xF0\x9F\xA6\x8C"},{k:"denmark",v:"\xF0\x9F\x87\xA9\xF0\x9F\x87\xB0"},{k:"department_store",v:"\xF0\x9F\x8F\xAC"},{k:"derelict_house",v:"\xF0\x9F\x8F\x9A"},{k:"desert",v:"\xF0\x9F\x8F\x9C"},{k:"desert_island",v:"\xF0\x9F\x8F\x9D"},{k:"desktop_computer",v:"\xF0\x9F\x96\xA5"},{k:"detective",v:"\xF0\x9F\x95\xB5"},{k:"diamond_shape_with_a_dot_inside",v:"\xF0\x9F\x92\xA0"},{k:"diamonds",v:"\xE2\x99\xA6\xEF\xB8\x8F"},{k:"disappointed",v:"\xF0\x9F\x98\x9E"},{k:"disappointed_relieved",v:"\xF0\x9F\x98\xA5"},{k:"dizzy",v:"\xF0\x9F\x92\xAB"},{k:"dizzy_face",v:"\xF0\x9F\x98\xB5"},{k:"djibouti",v:"\xF0\x9F\x87\xA9\xF0\x9F\x87\xAF"},{k:"do_not_litter",v:"\xF0\x9F\x9A\xAF"},{k:"dog",v:"\xF0\x9F\x90\xB6"},{k:"dog2",v:"\xF0\x9F\x90\x95"},{k:"doge",v:"${emojiSite}/doge.png"},{k:"dollar",v:"\xF0\x9F\x92\xB5"},{k:"dolls",v:"\xF0\x9F\x8E\x8E"},{k:"dolphin",v:"\xF0\x9F\x90\xAC"},{k:"dominica",v:"\xF0\x9F\x87\xA9\xF0\x9F\x87\xB2"},{k:"dominican_republic",v:"\xF0\x9F\x87\xA9\xF0\x9F\x87\xB4"},{k:"door",v:"\xF0\x9F\x9A\xAA"},{k:"doughnut",v:"\xF0\x9F\x8D\xA9"},{k:"dove",v:"\xF0\x9F\x95\x8A"},{k:"dragon",v:"\xF0\x9F\x90\x89"},{k:"dragon_face",v:"\xF0\x9F\x90\xB2"},{k:"dress",v:"\xF0\x9F\x91\x97"},{k:"dromedary_camel",v:"\xF0\x9F\x90\xAA"},{k:"drooling_face",v:"\xF0\x9F\xA4\xA4"},{k:"droplet",v:"\xF0\x9F\x92\xA7"},{k:"drum",v:"\xF0\x9F\xA5\x81"},{k:"duck",v:"\xF0\x9F\xA6\x86"},{k:"dvd",v:"\xF0\x9F\x93\x80"},{k:"e-mail",v:"\xF0\x9F\x93\xA7"},{k:"eagle",v:"\xF0\x9F\xA6\x85"},{k:"ear",v:"\xF0\x9F\x91\x82"},{k:"ear_of_rice",v:"\xF0\x9F\x8C\xBE"},{k:"earth_africa",v:"\xF0\x9F\x8C\x8D"},{k:"earth_americas",v:"\xF0\x9F\x8C\x8E"},{k:"earth_asia",v:"\xF0\x9F\x8C\x8F"},{k:"ecuador",v:"\xF0\x9F\x87\xAA\xF0\x9F\x87\xA8"},{k:"egg",v:"\xF0\x9F\xA5\x9A"},{k:"eggplant",v:"\xF0\x9F\x8D\x86"},{k:"egypt",v:"\xF0\x9F\x87\xAA\xF0\x9F\x87\xAC"},{k:"eight",v:"8\xEF\xB8\x8F\xE2\x83\xA3"},{k:"eight_pointed_black_star",v:"\xE2\x9C\xB4\xEF\xB8\x8F"},{k:"eight_spoked_asterisk",v:"\xE2\x9C\xB3\xEF\xB8\x8F"},{k:"el_salvador",v:"\xF0\x9F\x87\xB8\xF0\x9F\x87\xBB"},{k:"electric_plug",v:"\xF0\x9F\x94\x8C"},{k:"elephant",v:"\xF0\x9F\x90\x98"},{k:"email",v:"\xE2\x9C\x89\xEF\xB8\x8F"},{k:"end",v:"\xF0\x9F\x94\x9A"},{k:"envelope",v:"\xE2\x9C\x89\xEF\xB8\x8F"},{k:"envelope_with_arrow",v:"\xF0\x9F\x93\xA9"},{k:"equatorial_guinea",v:"\xF0\x9F\x87\xAC\xF0\x9F\x87\xB6"},{k:"eritrea",v:"\xF0\x9F\x87\xAA\xF0\x9F\x87\xB7"},{k:"es",v:"\xF0\x9F\x87\xAA\xF0\x9F\x87\xB8"},{k:"estonia",v:"\xF0\x9F\x87\xAA\xF0\x9F\x87\xAA"},{k:"ethiopia",v:"\xF0\x9F\x87\xAA\xF0\x9F\x87\xB9"},{k:"eu",v:"\xF0\x9F\x87\xAA\xF0\x9F\x87\xBA"},{k:"euro",v:"\xF0\x9F\x92\xB6"},{k:"european_castle",v:"\xF0\x9F\x8F\xB0"},{k:"european_post_office",v:"\xF0\x9F\x8F\xA4"},{k:"european_union",v:"\xF0\x9F\x87\xAA\xF0\x9F\x87\xBA"},{k:"evergreen_tree",v:"\xF0\x9F\x8C\xB2"},{k:"exclamation",v:"\xE2\x9D\x97\xEF\xB8\x8F"},{k:"expressionless",v:"\xF0\x9F\x98\x91"},{k:"eye",v:"\xF0\x9F\x91\x81"},{k:"eye_speech_bubble",v:"\xF0\x9F\x91\x81\xE2\x80\x8D\xF0\x9F\x97\xA8"},{k:"eyeglasses",v:"\xF0\x9F\x91\x93"},{k:"eyes",v:"\xF0\x9F\x91\x80"},{k:"face_with_head_bandage",v:"\xF0\x9F\xA4\x95"},{k:"face_with_thermometer",v:"\xF0\x9F\xA4\x92"},{k:"facepunch",v:"\xF0\x9F\x91\x8A"},{k:"factory",v:"\xF0\x9F\x8F\xAD"},{k:"falkland_islands",v:"\xF0\x9F\x87\xAB\xF0\x9F\x87\xB0"},{k:"fallen_leaf",v:"\xF0\x9F\x8D\x82"},{k:"family",v:"\xF0\x9F\x91\xAA"},{k:"family_man_boy",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x91\xA6"},{k:"family_man_boy_boy",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x91\xA6\xE2\x80\x8D\xF0\x9F\x91\xA6"},{k:"family_man_girl",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x91\xA7"},{k:"family_man_girl_boy",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x91\xA7\xE2\x80\x8D\xF0\x9F\x91\xA6"},{k:"family_man_girl_girl",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x91\xA7\xE2\x80\x8D\xF0\x9F\x91\xA7"},{k:"family_man_man_boy",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x91\xA6"},{k:"family_man_man_boy_boy",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x91\xA6\xE2\x80\x8D\xF0\x9F\x91\xA6"},{k:"family_man_man_girl",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x91\xA7"},{k:"family_man_man_girl_boy",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x91\xA7\xE2\x80\x8D\xF0\x9F\x91\xA6"},{k:"family_man_man_girl_girl",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x91\xA7\xE2\x80\x8D\xF0\x9F\x91\xA7"},{k:"family_man_woman_boy",v:"\xF0\x9F\x91\xAA"},{k:"family_man_woman_boy_boy",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x91\xA6\xE2\x80\x8D\xF0\x9F\x91\xA6"},{k:"family_man_woman_girl",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x91\xA7"},{k:"family_man_woman_girl_boy",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x91\xA7\xE2\x80\x8D\xF0\x9F\x91\xA6"},{k:"family_man_woman_girl_girl",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x91\xA7\xE2\x80\x8D\xF0\x9F\x91\xA7"},{k:"family_woman_boy",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x91\xA6"},{k:"family_woman_boy_boy",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x91\xA6\xE2\x80\x8D\xF0\x9F\x91\xA6"},{k:"family_woman_girl",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x91\xA7"},{k:"family_woman_girl_boy",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x91\xA7\xE2\x80\x8D\xF0\x9F\x91\xA6"},{k:"family_woman_girl_girl",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x91\xA7\xE2\x80\x8D\xF0\x9F\x91\xA7"},{k:"family_woman_woman_boy",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x91\xA6"},{k:"family_woman_woman_boy_boy",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x91\xA6\xE2\x80\x8D\xF0\x9F\x91\xA6"},{k:"family_woman_woman_girl",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x91\xA7"},{k:"family_woman_woman_girl_boy",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x91\xA7\xE2\x80\x8D\xF0\x9F\x91\xA6"},{k:"family_woman_woman_girl_girl",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x91\xA7\xE2\x80\x8D\xF0\x9F\x91\xA7"},{k:"faroe_islands",v:"\xF0\x9F\x87\xAB\xF0\x9F\x87\xB4"},{k:"fast_forward",v:"\xE2\x8F\xA9"},{k:"fax",v:"\xF0\x9F\x93\xA0"},{k:"fearful",v:"\xF0\x9F\x98\xA8"},{k:"feet",v:"\xF0\x9F\x90\xBE"},{k:"female_detective",v:"\xF0\x9F\x95\xB5\xEF\xB8\x8F\xE2\x80\x8D\xE2\x99\x80\xEF\xB8\x8F"},{k:"ferris_wheel",v:"\xF0\x9F\x8E\xA1"},{k:"ferry",v:"\xE2\x9B\xB4"},{k:"field_hockey",v:"\xF0\x9F\x8F\x91"},{k:"fiji",v:"\xF0\x9F\x87\xAB\xF0\x9F\x87\xAF"},{k:"file_cabinet",v:"\xF0\x9F\x97\x84"},{k:"file_folder",v:"\xF0\x9F\x93\x81"},{k:"film_projector",v:"\xF0\x9F\x93\xBD"},{k:"film_strip",v:"\xF0\x9F\x8E\x9E"},{k:"finland",v:"\xF0\x9F\x87\xAB\xF0\x9F\x87\xAE"},{k:"fire",v:"\xF0\x9F\x94\xA5"},{k:"fire_engine",v:"\xF0\x9F\x9A\x92"},{k:"fireworks",v:"\xF0\x9F\x8E\x86"},{k:"first_quarter_moon",v:"\xF0\x9F\x8C\x93"},{k:"first_quarter_moon_with_face",v:"\xF0\x9F\x8C\x9B"},{k:"fish",v:"\xF0\x9F\x90\x9F"},{k:"fish_cake",v:"\xF0\x9F\x8D\xA5"},{k:"fishing_pole_and_fish",v:"\xF0\x9F\x8E\xA3"},{k:"fist",v:"\xE2\x9C\x8A"},{k:"fist_left",v:"\xF0\x9F\xA4\x9B"},{k:"fist_oncoming",v:"\xF0\x9F\x91\x8A"},{k:"fist_raised",v:"\xE2\x9C\x8A"},{k:"fist_right",v:"\xF0\x9F\xA4\x9C"},{k:"five",v:"5\xEF\xB8\x8F\xE2\x83\xA3"},{k:"flags",v:"\xF0\x9F\x8E\x8F"},{k:"flashlight",v:"\xF0\x9F\x94\xA6"},{k:"fleur_de_lis",v:"\xE2\x9A\x9C\xEF\xB8\x8F"},{k:"flight_arrival",v:"\xF0\x9F\x9B\xAC"},{k:"flight_departure",v:"\xF0\x9F\x9B\xAB"},{k:"flipper",v:"\xF0\x9F\x90\xAC"},{k:"floppy_disk",v:"\xF0\x9F\x92\xBE"},{k:"flower_playing_cards",v:"\xF0\x9F\x8E\xB4"},{k:"flushed",v:"\xF0\x9F\x98\xB3"},{k:"fog",v:"\xF0\x9F\x8C\xAB"},{k:"foggy",v:"\xF0\x9F\x8C\x81"},{k:"football",v:"\xF0\x9F\x8F\x88"},{k:"footprints",v:"\xF0\x9F\x91\xA3"},{k:"fork_and_knife",v:"\xF0\x9F\x8D\xB4"},{k:"fountain",v:"\xE2\x9B\xB2\xEF\xB8\x8F"},{k:"fountain_pen",v:"\xF0\x9F\x96\x8B"},{k:"four",v:"4\xEF\xB8\x8F\xE2\x83\xA3"},{k:"four_leaf_clover",v:"\xF0\x9F\x8D\x80"},{k:"fox_face",v:"\xF0\x9F\xA6\x8A"},{k:"fr",v:"\xF0\x9F\x87\xAB\xF0\x9F\x87\xB7"},{k:"framed_picture",v:"\xF0\x9F\x96\xBC"},{k:"free",v:"\xF0\x9F\x86\x93"},{k:"french_guiana",v:"\xF0\x9F\x87\xAC\xF0\x9F\x87\xAB"},{k:"french_polynesia",v:"\xF0\x9F\x87\xB5\xF0\x9F\x87\xAB"},{k:"french_southern_territories",v:"\xF0\x9F\x87\xB9\xF0\x9F\x87\xAB"},{k:"fried_egg",v:"\xF0\x9F\x8D\xB3"},{k:"fried_shrimp",v:"\xF0\x9F\x8D\xA4"},{k:"fries",v:"\xF0\x9F\x8D\x9F"},{k:"frog",v:"\xF0\x9F\x90\xB8"},{k:"frowning",v:"\xF0\x9F\x98\xA6"},{k:"frowning_face",v:"\xE2\x98\xB9\xEF\xB8\x8F"},{k:"frowning_man",v:"\xF0\x9F\x99\x8D\xE2\x80\x8D\xE2\x99\x82"},{k:"frowning_woman",v:"\xF0\x9F\x99\x8D"},{k:"fu",v:"\xF0\x9F\x96\x95"},{k:"fuelpump",v:"\xE2\x9B\xBD\xEF\xB8\x8F"},{k:"full_moon",v:"\xF0\x9F\x8C\x95"},{k:"full_moon_with_face",v:"\xF0\x9F\x8C\x9D"},{k:"funeral_urn",v:"\xE2\x9A\xB1\xEF\xB8\x8F"},{k:"gabon",v:"\xF0\x9F\x87\xAC\xF0\x9F\x87\xA6"},{k:"gambia",v:"\xF0\x9F\x87\xAC\xF0\x9F\x87\xB2"},{k:"game_die",v:"\xF0\x9F\x8E\xB2"},{k:"gb",v:"\xF0\x9F\x87\xAC\xF0\x9F\x87\xA7"},{k:"gear",v:"\xE2\x9A\x99\xEF\xB8\x8F"},{k:"gem",v:"\xF0\x9F\x92\x8E"},{k:"gemini",v:"\xE2\x99\x8A\xEF\xB8\x8F"},{k:"georgia",v:"\xF0\x9F\x87\xAC\xF0\x9F\x87\xAA"},{k:"ghana",v:"\xF0\x9F\x87\xAC\xF0\x9F\x87\xAD"},{k:"ghost",v:"\xF0\x9F\x91\xBB"},{k:"gibraltar",v:"\xF0\x9F\x87\xAC\xF0\x9F\x87\xAE"},{k:"gift",v:"\xF0\x9F\x8E\x81"},{k:"gift_heart",v:"\xF0\x9F\x92\x9D"},{k:"girl",v:"\xF0\x9F\x91\xA7"},{k:"globe_with_meridians",v:"\xF0\x9F\x8C\x90"},{k:"goal_net",v:"\xF0\x9F\xA5\x85"},{k:"goat",v:"\xF0\x9F\x90\x90"},{k:"golf",v:"\xE2\x9B\xB3\xEF\xB8\x8F"},{k:"golfing_man",v:"\xF0\x9F\x8F\x8C"},{k:"golfing_woman",v:"\xF0\x9F\x8F\x8C\xEF\xB8\x8F\xE2\x80\x8D\xE2\x99\x80\xEF\xB8\x8F"},{k:"gorilla",v:"\xF0\x9F\xA6\x8D"},{k:"grapes",v:"\xF0\x9F\x8D\x87"},{k:"greece",v:"\xF0\x9F\x87\xAC\xF0\x9F\x87\xB7"},{k:"green_apple",v:"\xF0\x9F\x8D\x8F"},{k:"green_book",v:"\xF0\x9F\x93\x97"},{k:"green_heart",v:"\xF0\x9F\x92\x9A"},{k:"green_salad",v:"\xF0\x9F\xA5\x97"},{k:"greenland",v:"\xF0\x9F\x87\xAC\xF0\x9F\x87\xB1"},{k:"grenada",v:"\xF0\x9F\x87\xAC\xF0\x9F\x87\xA9"},{k:"grey_exclamation",v:"\xE2\x9D\x95"},{k:"grey_question",v:"\xE2\x9D\x94"},{k:"grimacing",v:"\xF0\x9F\x98\xAC"},{k:"grin",v:"\xF0\x9F\x98\x81"},{k:"grinning",v:"\xF0\x9F\x98\x80"},{k:"guadeloupe",v:"\xF0\x9F\x87\xAC\xF0\x9F\x87\xB5"},{k:"guam",v:"\xF0\x9F\x87\xAC\xF0\x9F\x87\xBA"},{k:"guardsman",v:"\xF0\x9F\x92\x82"},{k:"guardswoman",v:"\xF0\x9F\x92\x82\xE2\x80\x8D\xE2\x99\x80"},{k:"guatemala",v:"\xF0\x9F\x87\xAC\xF0\x9F\x87\xB9"},{k:"guernsey",v:"\xF0\x9F\x87\xAC\xF0\x9F\x87\xAC"},{k:"guinea",v:"\xF0\x9F\x87\xAC\xF0\x9F\x87\xB3"},{k:"guinea_bissau",v:"\xF0\x9F\x87\xAC\xF0\x9F\x87\xBC"},{k:"guitar",v:"\xF0\x9F\x8E\xB8"},{k:"gun",v:"\xF0\x9F\x94\xAB"},{k:"guyana",v:"\xF0\x9F\x87\xAC\xF0\x9F\x87\xBE"},{k:"hacpai",v:"${emojiSite}/hacpai.png"},{k:"haircut",v:"\xF0\x9F\x92\x87"},{k:"haircut_man",v:"\xF0\x9F\x92\x87\xE2\x80\x8D\xE2\x99\x82"},{k:"haircut_woman",v:"\xF0\x9F\x92\x87"},{k:"haiti",v:"\xF0\x9F\x87\xAD\xF0\x9F\x87\xB9"},{k:"hamburger",v:"\xF0\x9F\x8D\x94"},{k:"hammer",v:"\xF0\x9F\x94\xA8"},{k:"hammer_and_pick",v:"\xE2\x9A\x92"},{k:"hammer_and_wrench",v:"\xF0\x9F\x9B\xA0"},{k:"hamster",v:"\xF0\x9F\x90\xB9"},{k:"hand",v:"\xE2\x9C\x8B"},{k:"handbag",v:"\xF0\x9F\x91\x9C"},{k:"handshake",v:"\xF0\x9F\xA4\x9D"},{k:"hankey",v:"\xF0\x9F\x92\xA9"},{k:"hash",v:"#\xEF\xB8\x8F\xE2\x83\xA3"},{k:"hatched_chick",v:"\xF0\x9F\x90\xA5"},{k:"hatching_chick",v:"\xF0\x9F\x90\xA3"},{k:"headphones",v:"\xF0\x9F\x8E\xA7"},{k:"hear_no_evil",v:"\xF0\x9F\x99\x89"},{k:"heart",v:"\xE2\x9D\xA4\xEF\xB8\x8F"},{k:"heart_decoration",v:"\xF0\x9F\x92\x9F"},{k:"heart_eyes",v:"\xF0\x9F\x98\x8D"},{k:"heart_eyes_cat",v:"\xF0\x9F\x98\xBB"},{k:"heartbeat",v:"\xF0\x9F\x92\x93"},{k:"heartpulse",v:"\xF0\x9F\x92\x97"},{k:"hearts",v:"\xE2\x99\xA5\xEF\xB8\x8F"},{k:"heavy_check_mark",v:"\xE2\x9C\x94\xEF\xB8\x8F"},{k:"heavy_division_sign",v:"\xE2\x9E\x97"},{k:"heavy_dollar_sign",v:"\xF0\x9F\x92\xB2"},{k:"heavy_exclamation_mark",v:"\xE2\x9D\x97\xEF\xB8\x8F"},{k:"heavy_heart_exclamation",v:"\xE2\x9D\xA3\xEF\xB8\x8F"},{k:"heavy_minus_sign",v:"\xE2\x9E\x96"},{k:"heavy_multiplication_x",v:"\xE2\x9C\x96\xEF\xB8\x8F"},{k:"heavy_plus_sign",v:"\xE2\x9E\x95"},{k:"helicopter",v:"\xF0\x9F\x9A\x81"},{k:"herb",v:"\xF0\x9F\x8C\xBF"},{k:"hibiscus",v:"\xF0\x9F\x8C\xBA"},{k:"high_brightness",v:"\xF0\x9F\x94\x86"},{k:"high_heel",v:"\xF0\x9F\x91\xA0"},{k:"hocho",v:"\xF0\x9F\x94\xAA"},{k:"hole",v:"\xF0\x9F\x95\xB3"},{k:"honduras",v:"\xF0\x9F\x87\xAD\xF0\x9F\x87\xB3"},{k:"honey_pot",v:"\xF0\x9F\x8D\xAF"},{k:"honeybee",v:"\xF0\x9F\x90\x9D"},{k:"hong_kong",v:"\xF0\x9F\x87\xAD\xF0\x9F\x87\xB0"},{k:"horse",v:"\xF0\x9F\x90\xB4"},{k:"horse_racing",v:"\xF0\x9F\x8F\x87"},{k:"hospital",v:"\xF0\x9F\x8F\xA5"},{k:"hot_pepper",v:"\xF0\x9F\x8C\xB6"},{k:"hotdog",v:"\xF0\x9F\x8C\xAD"},{k:"hotel",v:"\xF0\x9F\x8F\xA8"},{k:"hotsprings",v:"\xE2\x99\xA8\xEF\xB8\x8F"},{k:"hourglass",v:"\xE2\x8C\x9B\xEF\xB8\x8F"},{k:"hourglass_flowing_sand",v:"\xE2\x8F\xB3"},{k:"house",v:"\xF0\x9F\x8F\xA0"},{k:"house_with_garden",v:"\xF0\x9F\x8F\xA1"},{k:"houses",v:"\xF0\x9F\x8F\x98"},{k:"huaji",v:"${emojiSite}/huaji.gif"},{k:"hugs",v:"\xF0\x9F\xA4\x97"},{k:"hungary",v:"\xF0\x9F\x87\xAD\xF0\x9F\x87\xBA"},{k:"hushed",v:"\xF0\x9F\x98\xAF"},{k:"ice_cream",v:"\xF0\x9F\x8D\xA8"},{k:"ice_hockey",v:"\xF0\x9F\x8F\x92"},{k:"ice_skate",v:"\xE2\x9B\xB8"},{k:"icecream",v:"\xF0\x9F\x8D\xA6"},{k:"iceland",v:"\xF0\x9F\x87\xAE\xF0\x9F\x87\xB8"},{k:"id",v:"\xF0\x9F\x86\x94"},{k:"ideograph_advantage",v:"\xF0\x9F\x89\x90"},{k:"imp",v:"\xF0\x9F\x91\xBF"},{k:"inbox_tray",v:"\xF0\x9F\x93\xA5"},{k:"incoming_envelope",v:"\xF0\x9F\x93\xA8"},{k:"india",v:"\xF0\x9F\x87\xAE\xF0\x9F\x87\xB3"},{k:"indonesia",v:"\xF0\x9F\x87\xAE\xF0\x9F\x87\xA9"},{k:"information_desk_person",v:"\xF0\x9F\x92\x81"},{k:"information_source",v:"\xE2\x84\xB9\xEF\xB8\x8F"},{k:"innocent",v:"\xF0\x9F\x98\x87"},{k:"interrobang",v:"\xE2\x81\x89\xEF\xB8\x8F"},{k:"iphone",v:"\xF0\x9F\x93\xB1"},{k:"iran",v:"\xF0\x9F\x87\xAE\xF0\x9F\x87\xB7"},{k:"iraq",v:"\xF0\x9F\x87\xAE\xF0\x9F\x87\xB6"},{k:"ireland",v:"\xF0\x9F\x87\xAE\xF0\x9F\x87\xAA"},{k:"isle_of_man",v:"\xF0\x9F\x87\xAE\xF0\x9F\x87\xB2"},{k:"israel",v:"\xF0\x9F\x87\xAE\xF0\x9F\x87\xB1"},{k:"it",v:"\xF0\x9F\x87\xAE\xF0\x9F\x87\xB9"},{k:"izakaya_lantern",v:"\xF0\x9F\x8F\xAE"},{k:"jack_o_lantern",v:"\xF0\x9F\x8E\x83"},{k:"jamaica",v:"\xF0\x9F\x87\xAF\xF0\x9F\x87\xB2"},{k:"japan",v:"\xF0\x9F\x97\xBE"},{k:"japanese_castle",v:"\xF0\x9F\x8F\xAF"},{k:"japanese_goblin",v:"\xF0\x9F\x91\xBA"},{k:"japanese_ogre",v:"\xF0\x9F\x91\xB9"},{k:"jeans",v:"\xF0\x9F\x91\x96"},{k:"jersey",v:"\xF0\x9F\x87\xAF\xF0\x9F\x87\xAA"},{k:"jordan",v:"\xF0\x9F\x87\xAF\xF0\x9F\x87\xB4"},{k:"joy",v:"\xF0\x9F\x98\x82"},{k:"joy_cat",v:"\xF0\x9F\x98\xB9"},{k:"joystick",v:"\xF0\x9F\x95\xB9"},{k:"jp",v:"\xF0\x9F\x87\xAF\xF0\x9F\x87\xB5"},{k:"kaaba",v:"\xF0\x9F\x95\x8B"},{k:"kazakhstan",v:"\xF0\x9F\x87\xB0\xF0\x9F\x87\xBF"},{k:"kenya",v:"\xF0\x9F\x87\xB0\xF0\x9F\x87\xAA"},{k:"key",v:"\xF0\x9F\x94\x91"},{k:"keyboard",v:"\xE2\x8C\xA8\xEF\xB8\x8F"},{k:"keycap_ten",v:"\xF0\x9F\x94\x9F"},{k:"kick_scooter",v:"\xF0\x9F\x9B\xB4"},{k:"kimono",v:"\xF0\x9F\x91\x98"},{k:"kiribati",v:"\xF0\x9F\x87\xB0\xF0\x9F\x87\xAE"},{k:"kiss",v:"\xF0\x9F\x92\x8B"},{k:"kissing",v:"\xF0\x9F\x98\x97"},{k:"kissing_cat",v:"\xF0\x9F\x98\xBD"},{k:"kissing_closed_eyes",v:"\xF0\x9F\x98\x9A"},{k:"kissing_heart",v:"\xF0\x9F\x98\x98"},{k:"kissing_smiling_eyes",v:"\xF0\x9F\x98\x99"},{k:"kiwi_fruit",v:"\xF0\x9F\xA5\x9D"},{k:"knife",v:"\xF0\x9F\x94\xAA"},{k:"koala",v:"\xF0\x9F\x90\xA8"},{k:"koko",v:"\xF0\x9F\x88\x81"},{k:"kosovo",v:"\xF0\x9F\x87\xBD\xF0\x9F\x87\xB0"},{k:"kr",v:"\xF0\x9F\x87\xB0\xF0\x9F\x87\xB7"},{k:"kuwait",v:"\xF0\x9F\x87\xB0\xF0\x9F\x87\xBC"},{k:"kyrgyzstan",v:"\xF0\x9F\x87\xB0\xF0\x9F\x87\xAC"},{k:"label",v:"\xF0\x9F\x8F\xB7"},{k:"lantern",v:"\xF0\x9F\x8F\xAE"},{k:"laos",v:"\xF0\x9F\x87\xB1\xF0\x9F\x87\xA6"},{k:"large_blue_circle",v:"\xF0\x9F\x94\xB5"},{k:"large_blue_diamond",v:"\xF0\x9F\x94\xB7"},{k:"large_orange_diamond",v:"\xF0\x9F\x94\xB6"},{k:"last_quarter_moon",v:"\xF0\x9F\x8C\x97"},{k:"last_quarter_moon_with_face",v:"\xF0\x9F\x8C\x9C"},{k:"latin_cross",v:"\xE2\x9C\x9D\xEF\xB8\x8F"},{k:"latke",v:"${emojiSite}/latke.png"},{k:"latvia",v:"\xF0\x9F\x87\xB1\xF0\x9F\x87\xBB"},{k:"laughing",v:"\xF0\x9F\x98\x86"},{k:"leaves",v:"\xF0\x9F\x8D\x83"},{k:"lebanon",v:"\xF0\x9F\x87\xB1\xF0\x9F\x87\xA7"},{k:"ledger",v:"\xF0\x9F\x93\x92"},{k:"left_luggage",v:"\xF0\x9F\x9B\x85"},{k:"left_right_arrow",v:"\xE2\x86\x94\xEF\xB8\x8F"},{k:"leftwards_arrow_with_hook",v:"\xE2\x86\xA9\xEF\xB8\x8F"},{k:"lemon",v:"\xF0\x9F\x8D\x8B"},{k:"leo",v:"\xE2\x99\x8C\xEF\xB8\x8F"},{k:"leopard",v:"\xF0\x9F\x90\x86"},{k:"lesotho",v:"\xF0\x9F\x87\xB1\xF0\x9F\x87\xB8"},{k:"level_slider",v:"\xF0\x9F\x8E\x9A"},{k:"liandi",v:"${emojiSite}/liandi.png"},{k:"liberia",v:"\xF0\x9F\x87\xB1\xF0\x9F\x87\xB7"},{k:"libra",v:"\xE2\x99\x8E\xEF\xB8\x8F"},{k:"libya",v:"\xF0\x9F\x87\xB1\xF0\x9F\x87\xBE"},{k:"liechtenstein",v:"\xF0\x9F\x87\xB1\xF0\x9F\x87\xAE"},{k:"light_rail",v:"\xF0\x9F\x9A\x88"},{k:"link",v:"\xF0\x9F\x94\x97"},{k:"lion",v:"\xF0\x9F\xA6\x81"},{k:"lips",v:"\xF0\x9F\x91\x84"},{k:"lipstick",v:"\xF0\x9F\x92\x84"},{k:"lithuania",v:"\xF0\x9F\x87\xB1\xF0\x9F\x87\xB9"},{k:"lizard",v:"\xF0\x9F\xA6\x8E"},{k:"lock",v:"\xF0\x9F\x94\x92"},{k:"lock_with_ink_pen",v:"\xF0\x9F\x94\x8F"},{k:"lollipop",v:"\xF0\x9F\x8D\xAD"},{k:"loop",v:"\xE2\x9E\xBF"},{k:"loud_sound",v:"\xF0\x9F\x94\x8A"},{k:"loudspeaker",v:"\xF0\x9F\x93\xA2"},{k:"love_hotel",v:"\xF0\x9F\x8F\xA9"},{k:"love_letter",v:"\xF0\x9F\x92\x8C"},{k:"low_brightness",v:"\xF0\x9F\x94\x85"},{k:"lute",v:"${emojiSite}/lute.png"},{k:"luxembourg",v:"\xF0\x9F\x87\xB1\xF0\x9F\x87\xBA"},{k:"lying_face",v:"\xF0\x9F\xA4\xA5"},{k:"m",v:"\xE2\x93\x82\xEF\xB8\x8F"},{k:"macau",v:"\xF0\x9F\x87\xB2\xF0\x9F\x87\xB4"},{k:"macedonia",v:"\xF0\x9F\x87\xB2\xF0\x9F\x87\xB0"},{k:"madagascar",v:"\xF0\x9F\x87\xB2\xF0\x9F\x87\xAC"},{k:"mag",v:"\xF0\x9F\x94\x8D"},{k:"mag_right",v:"\xF0\x9F\x94\x8E"},{k:"mahjong",v:"\xF0\x9F\x80\x84\xEF\xB8\x8F"},{k:"mailbox",v:"\xF0\x9F\x93\xAB"},{k:"mailbox_closed",v:"\xF0\x9F\x93\xAA"},{k:"mailbox_with_mail",v:"\xF0\x9F\x93\xAC"},{k:"mailbox_with_no_mail",v:"\xF0\x9F\x93\xAD"},{k:"malawi",v:"\xF0\x9F\x87\xB2\xF0\x9F\x87\xBC"},{k:"malaysia",v:"\xF0\x9F\x87\xB2\xF0\x9F\x87\xBE"},{k:"maldives",v:"\xF0\x9F\x87\xB2\xF0\x9F\x87\xBB"},{k:"male_detective",v:"\xF0\x9F\x95\xB5"},{k:"mali",v:"\xF0\x9F\x87\xB2\xF0\x9F\x87\xB1"},{k:"malta",v:"\xF0\x9F\x87\xB2\xF0\x9F\x87\xB9"},{k:"man",v:"\xF0\x9F\x91\xA8"},{k:"man_artist",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x8E\xA8"},{k:"man_astronaut",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x9A\x80"},{k:"man_cartwheeling",v:"\xF0\x9F\xA4\xB8\xE2\x80\x8D\xE2\x99\x82"},{k:"man_cook",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x8D\xB3"},{k:"man_dancing",v:"\xF0\x9F\x95\xBA"},{k:"man_facepalming",v:"\xF0\x9F\xA4\xA6\xE2\x80\x8D\xE2\x99\x82"},{k:"man_factory_worker",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x8F\xAD"},{k:"man_farmer",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x8C\xBE"},{k:"man_firefighter",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x9A\x92"},{k:"man_health_worker",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xE2\x9A\x95"},{k:"man_in_tuxedo",v:"\xF0\x9F\xA4\xB5"},{k:"man_judge",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xE2\x9A\x96"},{k:"man_juggling",v:"\xF0\x9F\xA4\xB9\xE2\x80\x8D\xE2\x99\x82"},{k:"man_mechanic",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x94\xA7"},{k:"man_office_worker",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x92\xBC"},{k:"man_pilot",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xE2\x9C\x88"},{k:"man_playing_handball",v:"\xF0\x9F\xA4\xBE\xE2\x80\x8D\xE2\x99\x82"},{k:"man_playing_water_polo",v:"\xF0\x9F\xA4\xBD\xE2\x80\x8D\xE2\x99\x82"},{k:"man_scientist",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x94\xAC"},{k:"man_shrugging",v:"\xF0\x9F\xA4\xB7\xE2\x80\x8D\xE2\x99\x82"},{k:"man_singer",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x8E\xA4"},{k:"man_student",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x8E\x93"},{k:"man_teacher",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x8F\xAB"},{k:"man_technologist",v:"\xF0\x9F\x91\xA8\xE2\x80\x8D\xF0\x9F\x92\xBB"},{k:"man_with_gua_pi_mao",v:"\xF0\x9F\x91\xB2"},{k:"man_with_turban",v:"\xF0\x9F\x91\xB3"},{k:"mandarin",v:"\xF0\x9F\x8D\x8A"},{k:"mans_shoe",v:"\xF0\x9F\x91\x9E"},{k:"mantelpiece_clock",v:"\xF0\x9F\x95\xB0"},{k:"maple_leaf",v:"\xF0\x9F\x8D\x81"},{k:"marshall_islands",v:"\xF0\x9F\x87\xB2\xF0\x9F\x87\xAD"},{k:"martial_arts_uniform",v:"\xF0\x9F\xA5\x8B"},{k:"martinique",v:"\xF0\x9F\x87\xB2\xF0\x9F\x87\xB6"},{k:"mask",v:"\xF0\x9F\x98\xB7"},{k:"massage",v:"\xF0\x9F\x92\x86"},{k:"massage_man",v:"\xF0\x9F\x92\x86\xE2\x80\x8D\xE2\x99\x82"},{k:"massage_woman",v:"\xF0\x9F\x92\x86"},{k:"mauritania",v:"\xF0\x9F\x87\xB2\xF0\x9F\x87\xB7"},{k:"mauritius",v:"\xF0\x9F\x87\xB2\xF0\x9F\x87\xBA"},{k:"mayotte",v:"\xF0\x9F\x87\xBE\xF0\x9F\x87\xB9"},{k:"meat_on_bone",v:"\xF0\x9F\x8D\x96"},{k:"medal_military",v:"\xF0\x9F\x8E\x96"},{k:"medal_sports",v:"\xF0\x9F\x8F\x85"},{k:"mega",v:"\xF0\x9F\x93\xA3"},{k:"melon",v:"\xF0\x9F\x8D\x88"},{k:"memo",v:"\xF0\x9F\x93\x9D"},{k:"men_wrestling",v:"\xF0\x9F\xA4\xBC\xE2\x80\x8D\xE2\x99\x82"},{k:"menorah",v:"\xF0\x9F\x95\x8E"},{k:"mens",v:"\xF0\x9F\x9A\xB9"},{k:"metal",v:"\xF0\x9F\xA4\x98"},{k:"metro",v:"\xF0\x9F\x9A\x87"},{k:"mexico",v:"\xF0\x9F\x87\xB2\xF0\x9F\x87\xBD"},{k:"micronesia",v:"\xF0\x9F\x87\xAB\xF0\x9F\x87\xB2"},{k:"microphone",v:"\xF0\x9F\x8E\xA4"},{k:"microscope",v:"\xF0\x9F\x94\xAC"},{k:"middle_finger",v:"\xF0\x9F\x96\x95"},{k:"milk_glass",v:"\xF0\x9F\xA5\x9B"},{k:"milky_way",v:"\xF0\x9F\x8C\x8C"},{k:"minibus",v:"\xF0\x9F\x9A\x90"},{k:"minidisc",v:"\xF0\x9F\x92\xBD"},{k:"mobile_phone_off",v:"\xF0\x9F\x93\xB4"},{k:"moldova",v:"\xF0\x9F\x87\xB2\xF0\x9F\x87\xA9"},{k:"monaco",v:"\xF0\x9F\x87\xB2\xF0\x9F\x87\xA8"},{k:"money_mouth_face",v:"\xF0\x9F\xA4\x91"},{k:"money_with_wings",v:"\xF0\x9F\x92\xB8"},{k:"moneybag",v:"\xF0\x9F\x92\xB0"},{k:"mongolia",v:"\xF0\x9F\x87\xB2\xF0\x9F\x87\xB3"},{k:"monkey",v:"\xF0\x9F\x90\x92"},{k:"monkey_face",v:"\xF0\x9F\x90\xB5"},{k:"monorail",v:"\xF0\x9F\x9A\x9D"},{k:"montenegro",v:"\xF0\x9F\x87\xB2\xF0\x9F\x87\xAA"},{k:"montserrat",v:"\xF0\x9F\x87\xB2\xF0\x9F\x87\xB8"},{k:"moon",v:"\xF0\x9F\x8C\x94"},{k:"morocco",v:"\xF0\x9F\x87\xB2\xF0\x9F\x87\xA6"},{k:"mortar_board",v:"\xF0\x9F\x8E\x93"},{k:"mosque",v:"\xF0\x9F\x95\x8C"},{k:"motor_boat",v:"\xF0\x9F\x9B\xA5"},{k:"motor_scooter",v:"\xF0\x9F\x9B\xB5"},{k:"motorcycle",v:"\xF0\x9F\x8F\x8D"},{k:"motorway",v:"\xF0\x9F\x9B\xA3"},{k:"mount_fuji",v:"\xF0\x9F\x97\xBB"},{k:"mountain",v:"\xE2\x9B\xB0"},{k:"mountain_bicyclist",v:"\xF0\x9F\x9A\xB5"},{k:"mountain_biking_man",v:"\xF0\x9F\x9A\xB5"},{k:"mountain_biking_woman",v:"\xF0\x9F\x9A\xB5\xE2\x80\x8D\xE2\x99\x80"},{k:"mountain_cableway",v:"\xF0\x9F\x9A\xA0"},{k:"mountain_railway",v:"\xF0\x9F\x9A\x9E"},{k:"mountain_snow",v:"\xF0\x9F\x8F\x94"},{k:"mouse",v:"\xF0\x9F\x90\xAD"},{k:"mouse2",v:"\xF0\x9F\x90\x81"},{k:"movie_camera",v:"\xF0\x9F\x8E\xA5"},{k:"moyai",v:"\xF0\x9F\x97\xBF"},{k:"mozambique",v:"\xF0\x9F\x87\xB2\xF0\x9F\x87\xBF"},{k:"mrs_claus",v:"\xF0\x9F\xA4\xB6"},{k:"muscle",v:"\xF0\x9F\x92\xAA"},{k:"mushroom",v:"\xF0\x9F\x8D\x84"},{k:"musical_keyboard",v:"\xF0\x9F\x8E\xB9"},{k:"musical_note",v:"\xF0\x9F\x8E\xB5"},{k:"musical_score",v:"\xF0\x9F\x8E\xBC"},{k:"mute",v:"\xF0\x9F\x94\x87"},{k:"myanmar",v:"\xF0\x9F\x87\xB2\xF0\x9F\x87\xB2"},{k:"nail_care",v:"\xF0\x9F\x92\x85"},{k:"name_badge",v:"\xF0\x9F\x93\x9B"},{k:"namibia",v:"\xF0\x9F\x87\xB3\xF0\x9F\x87\xA6"},{k:"national_park",v:"\xF0\x9F\x8F\x9E"},{k:"nauru",v:"\xF0\x9F\x87\xB3\xF0\x9F\x87\xB7"},{k:"nauseated_face",v:"\xF0\x9F\xA4\xA2"},{k:"necktie",v:"\xF0\x9F\x91\x94"},{k:"negative_squared_cross_mark",v:"\xE2\x9D\x8E"},{k:"nepal",v:"\xF0\x9F\x87\xB3\xF0\x9F\x87\xB5"},{k:"nerd_face",v:"\xF0\x9F\xA4\x93"},{k:"netherlands",v:"\xF0\x9F\x87\xB3\xF0\x9F\x87\xB1"},{k:"neutral_face",v:"\xF0\x9F\x98\x90"},{k:"new",v:"\xF0\x9F\x86\x95"},{k:"new_caledonia",v:"\xF0\x9F\x87\xB3\xF0\x9F\x87\xA8"},{k:"new_moon",v:"\xF0\x9F\x8C\x91"},{k:"new_moon_with_face",v:"\xF0\x9F\x8C\x9A"},{k:"new_zealand",v:"\xF0\x9F\x87\xB3\xF0\x9F\x87\xBF"},{k:"newspaper",v:"\xF0\x9F\x93\xB0"},{k:"newspaper_roll",v:"\xF0\x9F\x97\x9E"},{k:"next_track_button",v:"\xE2\x8F\xAD"},{k:"ng",v:"\xF0\x9F\x86\x96"},{k:"ng_man",v:"\xF0\x9F\x99\x85\xE2\x80\x8D\xE2\x99\x82"},{k:"ng_woman",v:"\xF0\x9F\x99\x85"},{k:"nicaragua",v:"\xF0\x9F\x87\xB3\xF0\x9F\x87\xAE"},{k:"niger",v:"\xF0\x9F\x87\xB3\xF0\x9F\x87\xAA"},{k:"nigeria",v:"\xF0\x9F\x87\xB3\xF0\x9F\x87\xAC"},{k:"night_with_stars",v:"\xF0\x9F\x8C\x83"},{k:"nine",v:"9\xEF\xB8\x8F\xE2\x83\xA3"},{k:"niue",v:"\xF0\x9F\x87\xB3\xF0\x9F\x87\xBA"},{k:"no_bell",v:"\xF0\x9F\x94\x95"},{k:"no_bicycles",v:"\xF0\x9F\x9A\xB3"},{k:"no_entry",v:"\xE2\x9B\x94\xEF\xB8\x8F"},{k:"no_entry_sign",v:"\xF0\x9F\x9A\xAB"},{k:"no_good",v:"\xF0\x9F\x99\x85"},{k:"no_good_man",v:"\xF0\x9F\x99\x85\xE2\x80\x8D\xE2\x99\x82"},{k:"no_good_woman",v:"\xF0\x9F\x99\x85"},{k:"no_mobile_phones",v:"\xF0\x9F\x93\xB5"},{k:"no_mouth",v:"\xF0\x9F\x98\xB6"},{k:"no_pedestrians",v:"\xF0\x9F\x9A\xB7"},{k:"no_smoking",v:"\xF0\x9F\x9A\xAD"},{k:"non-potable_water",v:"\xF0\x9F\x9A\xB1"},{k:"norfolk_island",v:"\xF0\x9F\x87\xB3\xF0\x9F\x87\xAB"},{k:"north_korea",v:"\xF0\x9F\x87\xB0\xF0\x9F\x87\xB5"},{k:"northern_mariana_islands",v:"\xF0\x9F\x87\xB2\xF0\x9F\x87\xB5"},{k:"norway",v:"\xF0\x9F\x87\xB3\xF0\x9F\x87\xB4"},{k:"nose",v:"\xF0\x9F\x91\x83"},{k:"notebook",v:"\xF0\x9F\x93\x93"},{k:"notebook_with_decorative_cover",v:"\xF0\x9F\x93\x94"},{k:"notes",v:"\xF0\x9F\x8E\xB6"},{k:"nut_and_bolt",v:"\xF0\x9F\x94\xA9"},{k:"o",v:"\xE2\xAD\x95\xEF\xB8\x8F"},{k:"o2",v:"\xF0\x9F\x85\xBE\xEF\xB8\x8F"},{k:"ocean",v:"\xF0\x9F\x8C\x8A"},{k:"octocat",v:"${emojiSite}/octocat.png"},{k:"octopus",v:"\xF0\x9F\x90\x99"},{k:"oden",v:"\xF0\x9F\x8D\xA2"},{k:"office",v:"\xF0\x9F\x8F\xA2"},{k:"oil_drum",v:"\xF0\x9F\x9B\xA2"},{k:"ok",v:"\xF0\x9F\x86\x97"},{k:"ok_hand",v:"\xF0\x9F\x91\x8C"},{k:"ok_man",v:"\xF0\x9F\x99\x86\xE2\x80\x8D\xE2\x99\x82"},{k:"ok_woman",v:"\xF0\x9F\x99\x86"},{k:"old_key",v:"\xF0\x9F\x97\x9D"},{k:"older_man",v:"\xF0\x9F\x91\xB4"},{k:"older_woman",v:"\xF0\x9F\x91\xB5"},{k:"om",v:"\xF0\x9F\x95\x89"},{k:"oman",v:"\xF0\x9F\x87\xB4\xF0\x9F\x87\xB2"},{k:"on",v:"\xF0\x9F\x94\x9B"},{k:"oncoming_automobile",v:"\xF0\x9F\x9A\x98"},{k:"oncoming_bus",v:"\xF0\x9F\x9A\x8D"},{k:"oncoming_police_car",v:"\xF0\x9F\x9A\x94"},{k:"oncoming_taxi",v:"\xF0\x9F\x9A\x96"},{k:"one",v:"1\xEF\xB8\x8F\xE2\x83\xA3"},{k:"open_book",v:"\xF0\x9F\x93\x96"},{k:"open_file_folder",v:"\xF0\x9F\x93\x82"},{k:"open_hands",v:"\xF0\x9F\x91\x90"},{k:"open_mouth",v:"\xF0\x9F\x98\xAE"},{k:"open_umbrella",v:"\xE2\x98\x82\xEF\xB8\x8F"},{k:"ophiuchus",v:"\xE2\x9B\x8E"},{k:"orange",v:"\xF0\x9F\x8D\x8A"},{k:"orange_book",v:"\xF0\x9F\x93\x99"},{k:"orthodox_cross",v:"\xE2\x98\xA6\xEF\xB8\x8F"},{k:"outbox_tray",v:"\xF0\x9F\x93\xA4"},{k:"owl",v:"\xF0\x9F\xA6\x89"},{k:"ox",v:"\xF0\x9F\x90\x82"},{k:"package",v:"\xF0\x9F\x93\xA6"},{k:"page_facing_up",v:"\xF0\x9F\x93\x84"},{k:"page_with_curl",v:"\xF0\x9F\x93\x83"},{k:"pager",v:"\xF0\x9F\x93\x9F"},{k:"paintbrush",v:"\xF0\x9F\x96\x8C"},{k:"pakistan",v:"\xF0\x9F\x87\xB5\xF0\x9F\x87\xB0"},{k:"palau",v:"\xF0\x9F\x87\xB5\xF0\x9F\x87\xBC"},{k:"palestinian_territories",v:"\xF0\x9F\x87\xB5\xF0\x9F\x87\xB8"},{k:"palm_tree",v:"\xF0\x9F\x8C\xB4"},{k:"panama",v:"\xF0\x9F\x87\xB5\xF0\x9F\x87\xA6"},{k:"pancakes",v:"\xF0\x9F\xA5\x9E"},{k:"panda_face",v:"\xF0\x9F\x90\xBC"},{k:"paperclip",v:"\xF0\x9F\x93\x8E"},{k:"paperclips",v:"\xF0\x9F\x96\x87"},{k:"papua_new_guinea",v:"\xF0\x9F\x87\xB5\xF0\x9F\x87\xAC"},{k:"paraguay",v:"\xF0\x9F\x87\xB5\xF0\x9F\x87\xBE"},{k:"parasol_on_ground",v:"\xE2\x9B\xB1"},{k:"parking",v:"\xF0\x9F\x85\xBF\xEF\xB8\x8F"},{k:"part_alternation_mark",v:"\xE3\x80\xBD\xEF\xB8\x8F"},{k:"partly_sunny",v:"\xE2\x9B\x85\xEF\xB8\x8F"},{k:"passenger_ship",v:"\xF0\x9F\x9B\xB3"},{k:"passport_control",v:"\xF0\x9F\x9B\x82"},{k:"pause_button",v:"\xE2\x8F\xB8"},{k:"paw_prints",v:"\xF0\x9F\x90\xBE"},{k:"peace_symbol",v:"\xE2\x98\xAE\xEF\xB8\x8F"},{k:"peach",v:"\xF0\x9F\x8D\x91"},{k:"peanuts",v:"\xF0\x9F\xA5\x9C"},{k:"pear",v:"\xF0\x9F\x8D\x90"},{k:"pen",v:"\xF0\x9F\x96\x8A"},{k:"pencil",v:"\xF0\x9F\x93\x9D"},{k:"pencil2",v:"\xE2\x9C\x8F\xEF\xB8\x8F"},{k:"penguin",v:"\xF0\x9F\x90\xA7"},{k:"pensive",v:"\xF0\x9F\x98\x94"},{k:"performing_arts",v:"\xF0\x9F\x8E\xAD"},{k:"persevere",v:"\xF0\x9F\x98\xA3"},{k:"person_fencing",v:"\xF0\x9F\xA4\xBA"},{k:"person_frowning",v:"\xF0\x9F\x99\x8D"},{k:"person_with_blond_hair",v:"\xF0\x9F\x91\xB1"},{k:"person_with_pouting_face",v:"\xF0\x9F\x99\x8E"},{k:"peru",v:"\xF0\x9F\x87\xB5\xF0\x9F\x87\xAA"},{k:"philippines",v:"\xF0\x9F\x87\xB5\xF0\x9F\x87\xAD"},{k:"phone",v:"\xE2\x98\x8E\xEF\xB8\x8F"},{k:"pick",v:"\xE2\x9B\x8F"},{k:"pig",v:"\xF0\x9F\x90\xB7"},{k:"pig2",v:"\xF0\x9F\x90\x96"},{k:"pig_nose",v:"\xF0\x9F\x90\xBD"},{k:"pill",v:"\xF0\x9F\x92\x8A"},{k:"pineapple",v:"\xF0\x9F\x8D\x8D"},{k:"ping_pong",v:"\xF0\x9F\x8F\x93"},{k:"pipe",v:"${emojiSite}/pipe.png"},{k:"pisces",v:"\xE2\x99\x93\xEF\xB8\x8F"},{k:"pitcairn_islands",v:"\xF0\x9F\x87\xB5\xF0\x9F\x87\xB3"},{k:"pizza",v:"\xF0\x9F\x8D\x95"},{k:"place_of_worship",v:"\xF0\x9F\x9B\x90"},{k:"plate_with_cutlery",v:"\xF0\x9F\x8D\xBD"},{k:"play_or_pause_button",v:"\xE2\x8F\xAF"},{k:"point_down",v:"\xF0\x9F\x91\x87"},{k:"point_left",v:"\xF0\x9F\x91\x88"},{k:"point_right",v:"\xF0\x9F\x91\x89"},{k:"point_up",v:"\xE2\x98\x9D\xEF\xB8\x8F"},{k:"point_up_2",v:"\xF0\x9F\x91\x86"},{k:"poland",v:"\xF0\x9F\x87\xB5\xF0\x9F\x87\xB1"},{k:"police_car",v:"\xF0\x9F\x9A\x93"},{k:"policeman",v:"\xF0\x9F\x91\xAE"},{k:"policewoman",v:"\xF0\x9F\x91\xAE\xE2\x80\x8D\xE2\x99\x80"},{k:"poodle",v:"\xF0\x9F\x90\xA9"},{k:"poop",v:"\xF0\x9F\x92\xA9"},{k:"popcorn",v:"\xF0\x9F\x8D\xBF"},{k:"portugal",v:"\xF0\x9F\x87\xB5\xF0\x9F\x87\xB9"},{k:"post_office",v:"\xF0\x9F\x8F\xA3"},{k:"postal_horn",v:"\xF0\x9F\x93\xAF"},{k:"postbox",v:"\xF0\x9F\x93\xAE"},{k:"potable_water",v:"\xF0\x9F\x9A\xB0"},{k:"potato",v:"\xF0\x9F\xA5\x94"},{k:"pouch",v:"\xF0\x9F\x91\x9D"},{k:"poultry_leg",v:"\xF0\x9F\x8D\x97"},{k:"pound",v:"\xF0\x9F\x92\xB7"},{k:"pout",v:"\xF0\x9F\x98\xA1"},{k:"pouting_cat",v:"\xF0\x9F\x98\xBE"},{k:"pouting_man",v:"\xF0\x9F\x99\x8E\xE2\x80\x8D\xE2\x99\x82"},{k:"pouting_woman",v:"\xF0\x9F\x99\x8E"},{k:"pray",v:"\xF0\x9F\x99\x8F"},{k:"prayer_beads",v:"\xF0\x9F\x93\xBF"},{k:"pregnant_woman",v:"\xF0\x9F\xA4\xB0"},{k:"previous_track_button",v:"\xE2\x8F\xAE"},{k:"prince",v:"\xF0\x9F\xA4\xB4"},{k:"princess",v:"\xF0\x9F\x91\xB8"},{k:"printer",v:"\xF0\x9F\x96\xA8"},{k:"puerto_rico",v:"\xF0\x9F\x87\xB5\xF0\x9F\x87\xB7"},{k:"punch",v:"\xF0\x9F\x91\x8A"},{k:"purple_heart",v:"\xF0\x9F\x92\x9C"},{k:"purse",v:"\xF0\x9F\x91\x9B"},{k:"pushpin",v:"\xF0\x9F\x93\x8C"},{k:"put_litter_in_its_place",v:"\xF0\x9F\x9A\xAE"},{k:"qatar",v:"\xF0\x9F\x87\xB6\xF0\x9F\x87\xA6"},{k:"question",v:"\xE2\x9D\x93"},{k:"rabbit",v:"\xF0\x9F\x90\xB0"},{k:"rabbit2",v:"\xF0\x9F\x90\x87"},{k:"racehorse",v:"\xF0\x9F\x90\x8E"},{k:"racing_car",v:"\xF0\x9F\x8F\x8E"},{k:"radio",v:"\xF0\x9F\x93\xBB"},{k:"radio_button",v:"\xF0\x9F\x94\x98"},{k:"radioactive",v:"\xE2\x98\xA2\xEF\xB8\x8F"},{k:"rage",v:"\xF0\x9F\x98\xA1"},{k:"railway_car",v:"\xF0\x9F\x9A\x83"},{k:"railway_track",v:"\xF0\x9F\x9B\xA4"},{k:"rainbow",v:"\xF0\x9F\x8C\x88"},{k:"rainbow_flag",v:"\xF0\x9F\x8F\xB3\xEF\xB8\x8F\xE2\x80\x8D\xF0\x9F\x8C\x88"},{k:"raised_back_of_hand",v:"\xF0\x9F\xA4\x9A"},{k:"raised_hand",v:"\xE2\x9C\x8B"},{k:"raised_hand_with_fingers_splayed",v:"\xF0\x9F\x96\x90"},{k:"raised_hands",v:"\xF0\x9F\x99\x8C"},{k:"raising_hand",v:"\xF0\x9F\x99\x8B"},{k:"raising_hand_man",v:"\xF0\x9F\x99\x8B\xE2\x80\x8D\xE2\x99\x82"},{k:"raising_hand_woman",v:"\xF0\x9F\x99\x8B"},{k:"ram",v:"\xF0\x9F\x90\x8F"},{k:"ramen",v:"\xF0\x9F\x8D\x9C"},{k:"rat",v:"\xF0\x9F\x90\x80"},{k:"record_button",v:"\xE2\x8F\xBA"},{k:"recycle",v:"\xE2\x99\xBB\xEF\xB8\x8F"},{k:"red_car",v:"\xF0\x9F\x9A\x97"},{k:"red_circle",v:"\xF0\x9F\x94\xB4"},{k:"registered",v:"\xC2\xAE\xEF\xB8\x8F"},{k:"relaxed",v:"\xE2\x98\xBA\xEF\xB8\x8F"},{k:"relieved",v:"\xF0\x9F\x98\x8C"},{k:"reminder_ribbon",v:"\xF0\x9F\x8E\x97"},{k:"repeat",v:"\xF0\x9F\x94\x81"},{k:"repeat_one",v:"\xF0\x9F\x94\x82"},{k:"rescue_worker_helmet",v:"\xE2\x9B\x91"},{k:"restroom",v:"\xF0\x9F\x9A\xBB"},{k:"reunion",v:"\xF0\x9F\x87\xB7\xF0\x9F\x87\xAA"},{k:"revolving_hearts",v:"\xF0\x9F\x92\x9E"},{k:"rewind",v:"\xE2\x8F\xAA"},{k:"rhinoceros",v:"\xF0\x9F\xA6\x8F"},{k:"ribbon",v:"\xF0\x9F\x8E\x80"},{k:"rice",v:"\xF0\x9F\x8D\x9A"},{k:"rice_ball",v:"\xF0\x9F\x8D\x99"},{k:"rice_cracker",v:"\xF0\x9F\x8D\x98"},{k:"rice_scene",v:"\xF0\x9F\x8E\x91"},{k:"right_anger_bubble",v:"\xF0\x9F\x97\xAF"},{k:"ring",v:"\xF0\x9F\x92\x8D"},{k:"robot",v:"\xF0\x9F\xA4\x96"},{k:"rocket",v:"\xF0\x9F\x9A\x80"},{k:"rofl",v:"\xF0\x9F\xA4\xA3"},{k:"roll_eyes",v:"\xF0\x9F\x99\x84"},{k:"roller_coaster",v:"\xF0\x9F\x8E\xA2"},{k:"romania",v:"\xF0\x9F\x87\xB7\xF0\x9F\x87\xB4"},{k:"rooster",v:"\xF0\x9F\x90\x93"},{k:"rose",v:"\xF0\x9F\x8C\xB9"},{k:"rosette",v:"\xF0\x9F\x8F\xB5"},{k:"rotating_light",v:"\xF0\x9F\x9A\xA8"},{k:"round_pushpin",v:"\xF0\x9F\x93\x8D"},{k:"rowboat",v:"\xF0\x9F\x9A\xA3"},{k:"rowing_man",v:"\xF0\x9F\x9A\xA3"},{k:"rowing_woman",v:"\xF0\x9F\x9A\xA3\xE2\x80\x8D\xE2\x99\x80"},{k:"ru",v:"\xF0\x9F\x87\xB7\xF0\x9F\x87\xBA"},{k:"rugby_football",v:"\xF0\x9F\x8F\x89"},{k:"runner",v:"\xF0\x9F\x8F\x83"},{k:"running",v:"\xF0\x9F\x8F\x83"},{k:"running_man",v:"\xF0\x9F\x8F\x83"},{k:"running_shirt_with_sash",v:"\xF0\x9F\x8E\xBD"},{k:"running_woman",v:"\xF0\x9F\x8F\x83\xE2\x80\x8D\xE2\x99\x80"},{k:"rwanda",v:"\xF0\x9F\x87\xB7\xF0\x9F\x87\xBC"},{k:"sa",v:"\xF0\x9F\x88\x82\xEF\xB8\x8F"},{k:"sagittarius",v:"\xE2\x99\x90\xEF\xB8\x8F"},{k:"sailboat",v:"\xE2\x9B\xB5\xEF\xB8\x8F"},{k:"sake",v:"\xF0\x9F\x8D\xB6"},{k:"samoa",v:"\xF0\x9F\x87\xBC\xF0\x9F\x87\xB8"},{k:"san_marino",v:"\xF0\x9F\x87\xB8\xF0\x9F\x87\xB2"},{k:"sandal",v:"\xF0\x9F\x91\xA1"},{k:"santa",v:"\xF0\x9F\x8E\x85"},{k:"sao_tome_principe",v:"\xF0\x9F\x87\xB8\xF0\x9F\x87\xB9"},{k:"sassy_man",v:"\xF0\x9F\x92\x81\xE2\x80\x8D\xE2\x99\x82"},{k:"sassy_woman",v:"\xF0\x9F\x92\x81"},{k:"satellite",v:"\xF0\x9F\x93\xA1"},{k:"satisfied",v:"\xF0\x9F\x98\x86"},{k:"saudi_arabia",v:"\xF0\x9F\x87\xB8\xF0\x9F\x87\xA6"},{k:"saxophone",v:"\xF0\x9F\x8E\xB7"},{k:"school",v:"\xF0\x9F\x8F\xAB"},{k:"school_satchel",v:"\xF0\x9F\x8E\x92"},{k:"scissors",v:"\xE2\x9C\x82\xEF\xB8\x8F"},{k:"scorpion",v:"\xF0\x9F\xA6\x82"},{k:"scorpius",v:"\xE2\x99\x8F\xEF\xB8\x8F"},{k:"scream",v:"\xF0\x9F\x98\xB1"},{k:"scream_cat",v:"\xF0\x9F\x99\x80"},{k:"scroll",v:"\xF0\x9F\x93\x9C"},{k:"seat",v:"\xF0\x9F\x92\xBA"},{k:"secret",v:"\xE3\x8A\x99\xEF\xB8\x8F"},{k:"see_no_evil",v:"\xF0\x9F\x99\x88"},{k:"seedling",v:"\xF0\x9F\x8C\xB1"},{k:"selfie",v:"\xF0\x9F\xA4\xB3"},{k:"senegal",v:"\xF0\x9F\x87\xB8\xF0\x9F\x87\xB3"},{k:"serbia",v:"\xF0\x9F\x87\xB7\xF0\x9F\x87\xB8"},{k:"seven",v:"7\xEF\xB8\x8F\xE2\x83\xA3"},{k:"seychelles",v:"\xF0\x9F\x87\xB8\xF0\x9F\x87\xA8"},{k:"shallow_pan_of_food",v:"\xF0\x9F\xA5\x98"},{k:"shamrock",v:"\xE2\x98\x98\xEF\xB8\x8F"},{k:"shark",v:"\xF0\x9F\xA6\x88"},{k:"shaved_ice",v:"\xF0\x9F\x8D\xA7"},{k:"sheep",v:"\xF0\x9F\x90\x91"},{k:"shell",v:"\xF0\x9F\x90\x9A"},{k:"shield",v:"\xF0\x9F\x9B\xA1"},{k:"shinto_shrine",v:"\xE2\x9B\xA9"},{k:"ship",v:"\xF0\x9F\x9A\xA2"},{k:"shirt",v:"\xF0\x9F\x91\x95"},{k:"shit",v:"\xF0\x9F\x92\xA9"},{k:"shoe",v:"\xF0\x9F\x91\x9E"},{k:"shopping",v:"\xF0\x9F\x9B\x8D"},{k:"shopping_cart",v:"\xF0\x9F\x9B\x92"},{k:"shower",v:"\xF0\x9F\x9A\xBF"},{k:"shrimp",v:"\xF0\x9F\xA6\x90"},{k:"sierra_leone",v:"\xF0\x9F\x87\xB8\xF0\x9F\x87\xB1"},{k:"signal_strength",v:"\xF0\x9F\x93\xB6"},{k:"singapore",v:"\xF0\x9F\x87\xB8\xF0\x9F\x87\xAC"},{k:"sint_maarten",v:"\xF0\x9F\x87\xB8\xF0\x9F\x87\xBD"},{k:"siyuan",v:"${emojiSite}/siyuan.svg"},{k:"six",v:"6\xEF\xB8\x8F\xE2\x83\xA3"},{k:"six_pointed_star",v:"\xF0\x9F\x94\xAF"},{k:"ski",v:"\xF0\x9F\x8E\xBF"},{k:"skier",v:"\xE2\x9B\xB7"},{k:"skull",v:"\xF0\x9F\x92\x80"},{k:"skull_and_crossbones",v:"\xE2\x98\xA0\xEF\xB8\x8F"},{k:"sleeping",v:"\xF0\x9F\x98\xB4"},{k:"sleeping_bed",v:"\xF0\x9F\x9B\x8C"},{k:"sleepy",v:"\xF0\x9F\x98\xAA"},{k:"slightly_frowning_face",v:"\xF0\x9F\x99\x81"},{k:"slightly_smiling_face",v:"\xF0\x9F\x99\x82"},{k:"slot_machine",v:"\xF0\x9F\x8E\xB0"},{k:"slovakia",v:"\xF0\x9F\x87\xB8\xF0\x9F\x87\xB0"},{k:"slovenia",v:"\xF0\x9F\x87\xB8\xF0\x9F\x87\xAE"},{k:"small_airplane",v:"\xF0\x9F\x9B\xA9"},{k:"small_blue_diamond",v:"\xF0\x9F\x94\xB9"},{k:"small_orange_diamond",v:"\xF0\x9F\x94\xB8"},{k:"small_red_triangle",v:"\xF0\x9F\x94\xBA"},{k:"small_red_triangle_down",v:"\xF0\x9F\x94\xBB"},{k:"smile",v:"\xF0\x9F\x98\x84"},{k:"smile_cat",v:"\xF0\x9F\x98\xB8"},{k:"smiley",v:"\xF0\x9F\x98\x83"},{k:"smiley_cat",v:"\xF0\x9F\x98\xBA"},{k:"smiling_imp",v:"\xF0\x9F\x98\x88"},{k:"smirk",v:"\xF0\x9F\x98\x8F"},{k:"smirk_cat",v:"\xF0\x9F\x98\xBC"},{k:"smoking",v:"\xF0\x9F\x9A\xAC"},{k:"snail",v:"\xF0\x9F\x90\x8C"},{k:"snake",v:"\xF0\x9F\x90\x8D"},{k:"sneezing_face",v:"\xF0\x9F\xA4\xA7"},{k:"snowboarder",v:"\xF0\x9F\x8F\x82"},{k:"snowflake",v:"\xE2\x9D\x84\xEF\xB8\x8F"},{k:"snowman",v:"\xE2\x9B\x84\xEF\xB8\x8F"},{k:"snowman_with_snow",v:"\xE2\x98\x83\xEF\xB8\x8F"},{k:"sob",v:"\xF0\x9F\x98\xAD"},{k:"soccer",v:"\xE2\x9A\xBD\xEF\xB8\x8F"},{k:"solo",v:"${emojiSite}/solo.png"},{k:"solomon_islands",v:"\xF0\x9F\x87\xB8\xF0\x9F\x87\xA7"},{k:"somalia",v:"\xF0\x9F\x87\xB8\xF0\x9F\x87\xB4"},{k:"soon",v:"\xF0\x9F\x94\x9C"},{k:"sos",v:"\xF0\x9F\x86\x98"},{k:"sound",v:"\xF0\x9F\x94\x89"},{k:"south_africa",v:"\xF0\x9F\x87\xBF\xF0\x9F\x87\xA6"},{k:"south_georgia_south_sandwich_islands",v:"\xF0\x9F\x87\xAC\xF0\x9F\x87\xB8"},{k:"south_sudan",v:"\xF0\x9F\x87\xB8\xF0\x9F\x87\xB8"},{k:"space_invader",v:"\xF0\x9F\x91\xBE"},{k:"spades",v:"\xE2\x99\xA0\xEF\xB8\x8F"},{k:"spaghetti",v:"\xF0\x9F\x8D\x9D"},{k:"sparkle",v:"\xE2\x9D\x87\xEF\xB8\x8F"},{k:"sparkler",v:"\xF0\x9F\x8E\x87"},{k:"sparkles",v:"\xE2\x9C\xA8"},{k:"sparkling_heart",v:"\xF0\x9F\x92\x96"},{k:"speak_no_evil",v:"\xF0\x9F\x99\x8A"},{k:"speaker",v:"\xF0\x9F\x94\x88"},{k:"speaking_head",v:"\xF0\x9F\x97\xA3"},{k:"speech_balloon",v:"\xF0\x9F\x92\xAC"},{k:"speedboat",v:"\xF0\x9F\x9A\xA4"},{k:"spider",v:"\xF0\x9F\x95\xB7"},{k:"spider_web",v:"\xF0\x9F\x95\xB8"},{k:"spiral_calendar",v:"\xF0\x9F\x97\x93"},{k:"spiral_notepad",v:"\xF0\x9F\x97\x92"},{k:"spoon",v:"\xF0\x9F\xA5\x84"},{k:"squid",v:"\xF0\x9F\xA6\x91"},{k:"sri_lanka",v:"\xF0\x9F\x87\xB1\xF0\x9F\x87\xB0"},{k:"st_barthelemy",v:"\xF0\x9F\x87\xA7\xF0\x9F\x87\xB1"},{k:"st_helena",v:"\xF0\x9F\x87\xB8\xF0\x9F\x87\xAD"},{k:"st_kitts_nevis",v:"\xF0\x9F\x87\xB0\xF0\x9F\x87\xB3"},{k:"st_lucia",v:"\xF0\x9F\x87\xB1\xF0\x9F\x87\xA8"},{k:"st_pierre_miquelon",v:"\xF0\x9F\x87\xB5\xF0\x9F\x87\xB2"},{k:"st_vincent_grenadines",v:"\xF0\x9F\x87\xBB\xF0\x9F\x87\xA8"},{k:"stadium",v:"\xF0\x9F\x8F\x9F"},{k:"star",v:"\xE2\xAD\x90\xEF\xB8\x8F"},{k:"star2",v:"\xF0\x9F\x8C\x9F"},{k:"star_and_crescent",v:"\xE2\x98\xAA\xEF\xB8\x8F"},{k:"star_of_david",v:"\xE2\x9C\xA1\xEF\xB8\x8F"},{k:"stars",v:"\xF0\x9F\x8C\xA0"},{k:"station",v:"\xF0\x9F\x9A\x89"},{k:"statue_of_liberty",v:"\xF0\x9F\x97\xBD"},{k:"steam_locomotive",v:"\xF0\x9F\x9A\x82"},{k:"stew",v:"\xF0\x9F\x8D\xB2"},{k:"stop_button",v:"\xE2\x8F\xB9"},{k:"stop_sign",v:"\xF0\x9F\x9B\x91"},{k:"stopwatch",v:"\xE2\x8F\xB1"},{k:"straight_ruler",v:"\xF0\x9F\x93\x8F"},{k:"strawberry",v:"\xF0\x9F\x8D\x93"},{k:"stuck_out_tongue",v:"\xF0\x9F\x98\x9B"},{k:"stuck_out_tongue_closed_eyes",v:"\xF0\x9F\x98\x9D"},{k:"stuck_out_tongue_winking_eye",v:"\xF0\x9F\x98\x9C"},{k:"studio_microphone",v:"\xF0\x9F\x8E\x99"},{k:"stuffed_flatbread",v:"\xF0\x9F\xA5\x99"},{k:"sudan",v:"\xF0\x9F\x87\xB8\xF0\x9F\x87\xA9"},{k:"sun_behind_large_cloud",v:"\xF0\x9F\x8C\xA5"},{k:"sun_behind_rain_cloud",v:"\xF0\x9F\x8C\xA6"},{k:"sun_behind_small_cloud",v:"\xF0\x9F\x8C\xA4"},{k:"sun_with_face",v:"\xF0\x9F\x8C\x9E"},{k:"sunflower",v:"\xF0\x9F\x8C\xBB"},{k:"sunglasses",v:"\xF0\x9F\x98\x8E"},{k:"sunny",v:"\xE2\x98\x80\xEF\xB8\x8F"},{k:"sunrise",v:"\xF0\x9F\x8C\x85"},{k:"sunrise_over_mountains",v:"\xF0\x9F\x8C\x84"},{k:"surfer",v:"\xF0\x9F\x8F\x84"},{k:"surfing_man",v:"\xF0\x9F\x8F\x84"},{k:"surfing_woman",v:"\xF0\x9F\x8F\x84\xE2\x80\x8D\xE2\x99\x80"},{k:"suriname",v:"\xF0\x9F\x87\xB8\xF0\x9F\x87\xB7"},{k:"sushi",v:"\xF0\x9F\x8D\xA3"},{k:"suspension_railway",v:"\xF0\x9F\x9A\x9F"},{k:"swaziland",v:"\xF0\x9F\x87\xB8\xF0\x9F\x87\xBF"},{k:"sweat",v:"\xF0\x9F\x98\x93"},{k:"sweat_drops",v:"\xF0\x9F\x92\xA6"},{k:"sweat_smile",v:"\xF0\x9F\x98\x85"},{k:"sweden",v:"\xF0\x9F\x87\xB8\xF0\x9F\x87\xAA"},{k:"sweet_potato",v:"\xF0\x9F\x8D\xA0"},{k:"swimmer",v:"\xF0\x9F\x8F\x8A"},{k:"swimming_man",v:"\xF0\x9F\x8F\x8A"},{k:"swimming_woman",v:"\xF0\x9F\x8F\x8A\xE2\x80\x8D\xE2\x99\x80"},{k:"switzerland",v:"\xF0\x9F\x87\xA8\xF0\x9F\x87\xAD"},{k:"sym",v:"${emojiSite}/sym.png"},{k:"symbols",v:"\xF0\x9F\x94\xA3"},{k:"synagogue",v:"\xF0\x9F\x95\x8D"},{k:"syria",v:"\xF0\x9F\x87\xB8\xF0\x9F\x87\xBE"},{k:"syringe",v:"\xF0\x9F\x92\x89"},{k:"taco",v:"\xF0\x9F\x8C\xAE"},{k:"tada",v:"\xF0\x9F\x8E\x89"},{k:"taiwan",v:"\xF0\x9F\x87\xB9\xF0\x9F\x87\xBC"},{k:"tajikistan",v:"\xF0\x9F\x87\xB9\xF0\x9F\x87\xAF"},{k:"tanabata_tree",v:"\xF0\x9F\x8E\x8B"},{k:"tangerine",v:"\xF0\x9F\x8D\x8A"},{k:"tanzania",v:"\xF0\x9F\x87\xB9\xF0\x9F\x87\xBF"},{k:"taurus",v:"\xE2\x99\x89\xEF\xB8\x8F"},{k:"taxi",v:"\xF0\x9F\x9A\x95"},{k:"tea",v:"\xF0\x9F\x8D\xB5"},{k:"telephone",v:"\xE2\x98\x8E\xEF\xB8\x8F"},{k:"telephone_receiver",v:"\xF0\x9F\x93\x9E"},{k:"telescope",v:"\xF0\x9F\x94\xAD"},{k:"tennis",v:"\xF0\x9F\x8E\xBE"},{k:"tent",v:"\xE2\x9B\xBA\xEF\xB8\x8F"},{k:"thailand",v:"\xF0\x9F\x87\xB9\xF0\x9F\x87\xAD"},{k:"thermometer",v:"\xF0\x9F\x8C\xA1"},{k:"thinking",v:"\xF0\x9F\xA4\x94"},{k:"thought_balloon",v:"\xF0\x9F\x92\xAD"},{k:"three",v:"3\xEF\xB8\x8F\xE2\x83\xA3"},{k:"thumbsdown",v:"\xF0\x9F\x91\x8E"},{k:"thumbsup",v:"\xF0\x9F\x91\x8D"},{k:"ticket",v:"\xF0\x9F\x8E\xAB"},{k:"tickets",v:"\xF0\x9F\x8E\x9F"},{k:"tiger",v:"\xF0\x9F\x90\xAF"},{k:"tiger2",v:"\xF0\x9F\x90\x85"},{k:"timer_clock",v:"\xE2\x8F\xB2"},{k:"timor_leste",v:"\xF0\x9F\x87\xB9\xF0\x9F\x87\xB1"},{k:"tipping_hand_man",v:"\xF0\x9F\x92\x81\xE2\x80\x8D\xE2\x99\x82"},{k:"tipping_hand_woman",v:"\xF0\x9F\x92\x81"},{k:"tired_face",v:"\xF0\x9F\x98\xAB"},{k:"tm",v:"\xE2\x84\xA2\xEF\xB8\x8F"},{k:"togo",v:"\xF0\x9F\x87\xB9\xF0\x9F\x87\xAC"},{k:"toilet",v:"\xF0\x9F\x9A\xBD"},{k:"tokelau",v:"\xF0\x9F\x87\xB9\xF0\x9F\x87\xB0"},{k:"tokyo_tower",v:"\xF0\x9F\x97\xBC"},{k:"tomato",v:"\xF0\x9F\x8D\x85"},{k:"tonga",v:"\xF0\x9F\x87\xB9\xF0\x9F\x87\xB4"},{k:"tongue",v:"\xF0\x9F\x91\x85"},{k:"top",v:"\xF0\x9F\x94\x9D"},{k:"tophat",v:"\xF0\x9F\x8E\xA9"},{k:"tornado",v:"\xF0\x9F\x8C\xAA"},{k:"tr",v:"\xF0\x9F\x87\xB9\xF0\x9F\x87\xB7"},{k:"trackball",v:"\xF0\x9F\x96\xB2"},{k:"tractor",v:"\xF0\x9F\x9A\x9C"},{k:"traffic_light",v:"\xF0\x9F\x9A\xA5"},{k:"train",v:"\xF0\x9F\x9A\x8B"},{k:"train2",v:"\xF0\x9F\x9A\x86"},{k:"tram",v:"\xF0\x9F\x9A\x8A"},{k:"triangular_flag_on_post",v:"\xF0\x9F\x9A\xA9"},{k:"triangular_ruler",v:"\xF0\x9F\x93\x90"},{k:"trident",v:"\xF0\x9F\x94\xB1"},{k:"trinidad_tobago",v:"\xF0\x9F\x87\xB9\xF0\x9F\x87\xB9"},{k:"triumph",v:"\xF0\x9F\x98\xA4"},{k:"trolleybus",v:"\xF0\x9F\x9A\x8E"},{k:"trollface",v:"${emojiSite}/trollface.png"},{k:"trophy",v:"\xF0\x9F\x8F\x86"},{k:"tropical_drink",v:"\xF0\x9F\x8D\xB9"},{k:"tropical_fish",v:"\xF0\x9F\x90\xA0"},{k:"truck",v:"\xF0\x9F\x9A\x9A"},{k:"trumpet",v:"\xF0\x9F\x8E\xBA"},{k:"tshirt",v:"\xF0\x9F\x91\x95"},{k:"tulip",v:"\xF0\x9F\x8C\xB7"},{k:"tumbler_glass",v:"\xF0\x9F\xA5\x83"},{k:"tunisia",v:"\xF0\x9F\x87\xB9\xF0\x9F\x87\xB3"},{k:"turkey",v:"\xF0\x9F\xA6\x83"},{k:"turkmenistan",v:"\xF0\x9F\x87\xB9\xF0\x9F\x87\xB2"},{k:"turks_caicos_islands",v:"\xF0\x9F\x87\xB9\xF0\x9F\x87\xA8"},{k:"turtle",v:"\xF0\x9F\x90\xA2"},{k:"tuvalu",v:"\xF0\x9F\x87\xB9\xF0\x9F\x87\xBB"},{k:"tv",v:"\xF0\x9F\x93\xBA"},{k:"twisted_rightwards_arrows",v:"\xF0\x9F\x94\x80"},{k:"two",v:"2\xEF\xB8\x8F\xE2\x83\xA3"},{k:"two_hearts",v:"\xF0\x9F\x92\x95"},{k:"two_men_holding_hands",v:"\xF0\x9F\x91\xAC"},{k:"two_women_holding_hands",v:"\xF0\x9F\x91\xAD"},{k:"u5272",v:"\xF0\x9F\x88\xB9"},{k:"u5408",v:"\xF0\x9F\x88\xB4"},{k:"u55b6",v:"\xF0\x9F\x88\xBA"},{k:"u6307",v:"\xF0\x9F\x88\xAF\xEF\xB8\x8F"},{k:"u6708",v:"\xF0\x9F\x88\xB7\xEF\xB8\x8F"},{k:"u6709",v:"\xF0\x9F\x88\xB6"},{k:"u6e80",v:"\xF0\x9F\x88\xB5"},{k:"u7121",v:"\xF0\x9F\x88\x9A\xEF\xB8\x8F"},{k:"u7533",v:"\xF0\x9F\x88\xB8"},{k:"u7981",v:"\xF0\x9F\x88\xB2"},{k:"u7a7a",v:"\xF0\x9F\x88\xB3"},{k:"uganda",v:"\xF0\x9F\x87\xBA\xF0\x9F\x87\xAC"},{k:"uk",v:"\xF0\x9F\x87\xAC\xF0\x9F\x87\xA7"},{k:"ukraine",v:"\xF0\x9F\x87\xBA\xF0\x9F\x87\xA6"},{k:"umbrella",v:"\xE2\x98\x94\xEF\xB8\x8F"},{k:"unamused",v:"\xF0\x9F\x98\x92"},{k:"underage",v:"\xF0\x9F\x94\x9E"},{k:"unicorn",v:"\xF0\x9F\xA6\x84"},{k:"united_arab_emirates",v:"\xF0\x9F\x87\xA6\xF0\x9F\x87\xAA"},{k:"unlock",v:"\xF0\x9F\x94\x93"},{k:"up",v:"\xF0\x9F\x86\x99"},{k:"upside_down_face",v:"\xF0\x9F\x99\x83"},{k:"uruguay",v:"\xF0\x9F\x87\xBA\xF0\x9F\x87\xBE"},{k:"us",v:"\xF0\x9F\x87\xBA\xF0\x9F\x87\xB8"},{k:"us_virgin_islands",v:"\xF0\x9F\x87\xBB\xF0\x9F\x87\xAE"},{k:"uzbekistan",v:"\xF0\x9F\x87\xBA\xF0\x9F\x87\xBF"},{k:"v",v:"\xE2\x9C\x8C\xEF\xB8\x8F"},{k:"vanuatu",v:"\xF0\x9F\x87\xBB\xF0\x9F\x87\xBA"},{k:"vatican_city",v:"\xF0\x9F\x87\xBB\xF0\x9F\x87\xA6"},{k:"vditor",v:"${emojiSite}/vditor.png"},{k:"venezuela",v:"\xF0\x9F\x87\xBB\xF0\x9F\x87\xAA"},{k:"vertical_traffic_light",v:"\xF0\x9F\x9A\xA6"},{k:"vhs",v:"\xF0\x9F\x93\xBC"},{k:"vibration_mode",v:"\xF0\x9F\x93\xB3"},{k:"video_camera",v:"\xF0\x9F\x93\xB9"},{k:"video_game",v:"\xF0\x9F\x8E\xAE"},{k:"vietnam",v:"\xF0\x9F\x87\xBB\xF0\x9F\x87\xB3"},{k:"violin",v:"\xF0\x9F\x8E\xBB"},{k:"virgo",v:"\xE2\x99\x8D\xEF\xB8\x8F"},{k:"volcano",v:"\xF0\x9F\x8C\x8B"},{k:"volleyball",v:"\xF0\x9F\x8F\x90"},{k:"vs",v:"\xF0\x9F\x86\x9A"},{k:"vulcan_salute",v:"\xF0\x9F\x96\x96"},{k:"walking",v:"\xF0\x9F\x9A\xB6"},{k:"walking_man",v:"\xF0\x9F\x9A\xB6"},{k:"walking_woman",v:"\xF0\x9F\x9A\xB6\xE2\x80\x8D\xE2\x99\x80"},{k:"wallis_futuna",v:"\xF0\x9F\x87\xBC\xF0\x9F\x87\xAB"},{k:"waning_crescent_moon",v:"\xF0\x9F\x8C\x98"},{k:"waning_gibbous_moon",v:"\xF0\x9F\x8C\x96"},{k:"warning",v:"\xE2\x9A\xA0\xEF\xB8\x8F"},{k:"wastebasket",v:"\xF0\x9F\x97\x91"},{k:"watch",v:"\xE2\x8C\x9A\xEF\xB8\x8F"},{k:"water_buffalo",v:"\xF0\x9F\x90\x83"},{k:"watermelon",v:"\xF0\x9F\x8D\x89"},{k:"wave",v:"\xF0\x9F\x91\x8B"},{k:"wavy_dash",v:"\xE3\x80\xB0\xEF\xB8\x8F"},{k:"waxing_crescent_moon",v:"\xF0\x9F\x8C\x92"},{k:"waxing_gibbous_moon",v:"\xF0\x9F\x8C\x94"},{k:"wc",v:"\xF0\x9F\x9A\xBE"},{k:"weary",v:"\xF0\x9F\x98\xA9"},{k:"wedding",v:"\xF0\x9F\x92\x92"},{k:"weight_lifting_man",v:"\xF0\x9F\x8F\x8B"},{k:"weight_lifting_woman",v:"\xF0\x9F\x8F\x8B\xEF\xB8\x8F\xE2\x80\x8D\xE2\x99\x80\xEF\xB8\x8F"},{k:"western_sahara",v:"\xF0\x9F\x87\xAA\xF0\x9F\x87\xAD"},{k:"whale",v:"\xF0\x9F\x90\xB3"},{k:"whale2",v:"\xF0\x9F\x90\x8B"},{k:"wheel_of_dharma",v:"\xE2\x98\xB8\xEF\xB8\x8F"},{k:"wheelchair",v:"\xE2\x99\xBF\xEF\xB8\x8F"},{k:"white_check_mark",v:"\xE2\x9C\x85"},{k:"white_circle",v:"\xE2\x9A\xAA\xEF\xB8\x8F"},{k:"white_flag",v:"\xF0\x9F\x8F\xB3\xEF\xB8\x8F"},{k:"white_flower",v:"\xF0\x9F\x92\xAE"},{k:"white_large_square",v:"\xE2\xAC\x9C\xEF\xB8\x8F"},{k:"white_medium_small_square",v:"\xE2\x97\xBD\xEF\xB8\x8F"},{k:"white_medium_square",v:"\xE2\x97\xBB\xEF\xB8\x8F"},{k:"white_small_square",v:"\xE2\x96\xAB\xEF\xB8\x8F"},{k:"white_square_button",v:"\xF0\x9F\x94\xB3"},{k:"wide",v:"${emojiSite}/wide.png"},{k:"wilted_flower",v:"\xF0\x9F\xA5\x80"},{k:"wind_chime",v:"\xF0\x9F\x8E\x90"},{k:"wind_face",v:"\xF0\x9F\x8C\xAC"},{k:"wine_glass",v:"\xF0\x9F\x8D\xB7"},{k:"wink",v:"\xF0\x9F\x98\x89"},{k:"wolf",v:"\xF0\x9F\x90\xBA"},{k:"woman",v:"\xF0\x9F\x91\xA9"},{k:"woman_artist",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x8E\xA8"},{k:"woman_astronaut",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x9A\x80"},{k:"woman_cartwheeling",v:"\xF0\x9F\xA4\xB8\xE2\x80\x8D\xE2\x99\x80"},{k:"woman_cook",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x8D\xB3"},{k:"woman_facepalming",v:"\xF0\x9F\xA4\xA6\xE2\x80\x8D\xE2\x99\x80"},{k:"woman_factory_worker",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x8F\xAD"},{k:"woman_farmer",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x8C\xBE"},{k:"woman_firefighter",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x9A\x92"},{k:"woman_health_worker",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xE2\x9A\x95"},{k:"woman_judge",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xE2\x9A\x96"},{k:"woman_juggling",v:"\xF0\x9F\xA4\xB9\xE2\x80\x8D\xE2\x99\x80"},{k:"woman_mechanic",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x94\xA7"},{k:"woman_office_worker",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x92\xBC"},{k:"woman_pilot",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xE2\x9C\x88"},{k:"woman_playing_handball",v:"\xF0\x9F\xA4\xBE\xE2\x80\x8D\xE2\x99\x80"},{k:"woman_playing_water_polo",v:"\xF0\x9F\xA4\xBD\xE2\x80\x8D\xE2\x99\x80"},{k:"woman_scientist",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x94\xAC"},{k:"woman_shrugging",v:"\xF0\x9F\xA4\xB7\xE2\x80\x8D\xE2\x99\x80"},{k:"woman_singer",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x8E\xA4"},{k:"woman_student",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x8E\x93"},{k:"woman_teacher",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x8F\xAB"},{k:"woman_technologist",v:"\xF0\x9F\x91\xA9\xE2\x80\x8D\xF0\x9F\x92\xBB"},{k:"woman_with_turban",v:"\xF0\x9F\x91\xB3\xE2\x80\x8D\xE2\x99\x80"},{k:"womans_clothes",v:"\xF0\x9F\x91\x9A"},{k:"womans_hat",v:"\xF0\x9F\x91\x92"},{k:"women_wrestling",v:"\xF0\x9F\xA4\xBC\xE2\x80\x8D\xE2\x99\x80"},{k:"womens",v:"\xF0\x9F\x9A\xBA"},{k:"world_map",v:"\xF0\x9F\x97\xBA"},{k:"worried",v:"\xF0\x9F\x98\x9F"},{k:"wrench",v:"\xF0\x9F\x94\xA7"},{k:"writing_hand",v:"\xE2\x9C\x8D\xEF\xB8\x8F"},{k:"wulian",v:"${emojiSite}/wulian.png"},{k:"x",v:"\xE2\x9D\x8C"},{k:"yellow_heart",v:"\xF0\x9F\x92\x9B"},{k:"yemen",v:"\xF0\x9F\x87\xBE\xF0\x9F\x87\xAA"},{k:"yen",v:"\xF0\x9F\x92\xB4"},{k:"yin_yang",v:"\xE2\x98\xAF\xEF\xB8\x8F"},{k:"yum",v:"\xF0\x9F\x98\x8B"},{k:"zambia",v:"\xF0\x9F\x87\xBF\xF0\x9F\x87\xB2"},{k:"zap",v:"\xE2\x9A\xA1\xEF\xB8\x8F"},{k:"zero",v:"0\xEF\xB8\x8F\xE2\x83\xA3"},{k:"zimbabwe",v:"\xF0\x9F\x87\xBF\xF0\x9F\x87\xBC"},{k:"zipper_mouth_face",v:"\xF0\x9F\xA4\x90"},{k:"zzz",v:"\xF0\x9F\x92\xA4"}]);$pkg.EmojiSitePlaceholder=E.StrToBytes("${emojiSite}");BZ=E.StrToBytes(".");CG=E.StrToBytes("`");CN=E.StrToBytes("mailto:");CP=E.StrToBytes(".!#$%&'*+/=?^_`{|}~");CQ=E.StrToBytes("http://");CR=E.StrToBytes("https://");CS=E.StrToBytes("ftp://");CV="\n# Version 2023021700, Last Updated Fri Feb 17 07:07:01 2023 UTC\nAAA\nAARP\nABARTH\nABB\nABBOTT\nABBVIE\nABC\nABLE\nABOGADO\nABUDHABI\nAC\nACADEMY\nACCENTURE\nACCOUNTANT\nACCOUNTANTS\nACO\nACTOR\nAD\nADS\nADULT\nAE\nAEG\nAERO\nAETNA\nAF\nAFL\nAFRICA\nAG\nAGAKHAN\nAGENCY\nAI\nAIG\nAIRBUS\nAIRFORCE\nAIRTEL\nAKDN\nAL\nALFAROMEO\nALIBABA\nALIPAY\nALLFINANZ\nALLSTATE\nALLY\nALSACE\nALSTOM\nAM\nAMAZON\nAMERICANEXPRESS\nAMERICANFAMILY\nAMEX\nAMFAM\nAMICA\nAMSTERDAM\nANALYTICS\nANDROID\nANQUAN\nANZ\nAO\nAOL\nAPARTMENTS\nAPP\nAPPLE\nAQ\nAQUARELLE\nAR\nARAB\nARAMCO\nARCHI\nARMY\nARPA\nART\nARTE\nAS\nASDA\nASIA\nASSOCIATES\nAT\nATHLETA\nATTORNEY\nAU\nAUCTION\nAUDI\nAUDIBLE\nAUDIO\nAUSPOST\nAUTHOR\nAUTO\nAUTOS\nAVIANCA\nAW\nAWS\nAX\nAXA\nAZ\nAZURE\nBA\nBABY\nBAIDU\nBANAMEX\nBANANAREPUBLIC\nBAND\nBANK\nBAR\nBARCELONA\nBARCLAYCARD\nBARCLAYS\nBAREFOOT\nBARGAINS\nBASEBALL\nBASKETBALL\nBAUHAUS\nBAYERN\nBB\nBBC\nBBT\nBBVA\nBCG\nBCN\nBD\nBE\nBEATS\nBEAUTY\nBEER\nBENTLEY\nBERLIN\nBEST\nBESTBUY\nBET\nBF\nBG\nBH\nBHARTI\nBI\nBIBLE\nBID\nBIKE\nBING\nBINGO\nBIO\nBIZ\nBJ\nBLACK\nBLACKFRIDAY\nBLOCKBUSTER\nBLOG\nBLOOMBERG\nBLUE\nBM\nBMS\nBMW\nBN\nBNPPARIBAS\nBO\nBOATS\nBOEHRINGER\nBOFA\nBOM\nBOND\nBOO\nBOOK\nBOOKING\nBOSCH\nBOSTIK\nBOSTON\nBOT\nBOUTIQUE\nBOX\nBR\nBRADESCO\nBRIDGESTONE\nBROADWAY\nBROKER\nBROTHER\nBRUSSELS\nBS\nBT\nBUILD\nBUILDERS\nBUSINESS\nBUY\nBUZZ\nBV\nBW\nBY\nBZ\nBZH\nCA\nCAB\nCAFE\nCAL\nCALL\nCALVINKLEIN\nCAM\nCAMERA\nCAMP\nCANON\nCAPETOWN\nCAPITAL\nCAPITALONE\nCAR\nCARAVAN\nCARDS\nCARE\nCAREER\nCAREERS\nCARS\nCASA\nCASE\nCASH\nCASINO\nCAT\nCATERING\nCATHOLIC\nCBA\nCBN\nCBRE\nCBS\nCC\nCD\nCENTER\nCEO\nCERN\nCF\nCFA\nCFD\nCG\nCH\nCHANEL\nCHANNEL\nCHARITY\nCHASE\nCHAT\nCHEAP\nCHINTAI\nCHRISTMAS\nCHROME\nCHURCH\nCI\nCIPRIANI\nCIRCLE\nCISCO\nCITADEL\nCITI\nCITIC\nCITY\nCITYEATS\nCK\nCL\nCLAIMS\nCLEANING\nCLICK\nCLINIC\nCLINIQUE\nCLOTHING\nCLOUD\nCLUB\nCLUBMED\nCM\nCN\nCO\nCOACH\nCODES\nCOFFEE\nCOLLEGE\nCOLOGNE\nCOM\nCOMCAST\nCOMMBANK\nCOMMUNITY\nCOMPANY\nCOMPARE\nCOMPUTER\nCOMSEC\nCONDOS\nCONSTRUCTION\nCONSULTING\nCONTACT\nCONTRACTORS\nCOOKING\nCOOKINGCHANNEL\nCOOL\nCOOP\nCORSICA\nCOUNTRY\nCOUPON\nCOUPONS\nCOURSES\nCPA\nCR\nCREDIT\nCREDITCARD\nCREDITUNION\nCRICKET\nCROWN\nCRS\nCRUISE\nCRUISES\nCU\nCUISINELLA\nCV\nCW\nCX\nCY\nCYMRU\nCYOU\nCZ\nDABUR\nDAD\nDANCE\nDATA\nDATE\nDATING\nDATSUN\nDAY\nDCLK\nDDS\nDE\nDEAL\nDEALER\nDEALS\nDEGREE\nDELIVERY\nDELL\nDELOITTE\nDELTA\nDEMOCRAT\nDENTAL\nDENTIST\nDESI\nDESIGN\nDEV\nDHL\nDIAMONDS\nDIET\nDIGITAL\nDIRECT\nDIRECTORY\nDISCOUNT\nDISCOVER\nDISH\nDIY\nDJ\nDK\nDM\nDNP\nDO\nDOCS\nDOCTOR\nDOG\nDOMAINS\nDOT\nDOWNLOAD\nDRIVE\nDTV\nDUBAI\nDUNLOP\nDUPONT\nDURBAN\nDVAG\nDVR\nDZ\nEARTH\nEAT\nEC\nECO\nEDEKA\nEDU\nEDUCATION\nEE\nEG\nEMAIL\nEMERCK\nENERGY\nENGINEER\nENGINEERING\nENTERPRISES\nEPSON\nEQUIPMENT\nER\nERICSSON\nERNI\nES\nESQ\nESTATE\nET\nETISALAT\nEU\nEUROVISION\nEUS\nEVENTS\nEXCHANGE\nEXPERT\nEXPOSED\nEXPRESS\nEXTRASPACE\nFAGE\nFAIL\nFAIRWINDS\nFAITH\nFAMILY\nFAN\nFANS\nFARM\nFARMERS\nFASHION\nFAST\nFEDEX\nFEEDBACK\nFERRARI\nFERRERO\nFI\nFIAT\nFIDELITY\nFIDO\nFILM\nFINAL\nFINANCE\nFINANCIAL\nFIRE\nFIRESTONE\nFIRMDALE\nFISH\nFISHING\nFIT\nFITNESS\nFJ\nFK\nFLICKR\nFLIGHTS\nFLIR\nFLORIST\nFLOWERS\nFLY\nFM\nFO\nFOO\nFOOD\nFOODNETWORK\nFOOTBALL\nFORD\nFOREX\nFORSALE\nFORUM\nFOUNDATION\nFOX\nFR\nFREE\nFRESENIUS\nFRL\nFROGANS\nFRONTDOOR\nFRONTIER\nFTR\nFUJITSU\nFUN\nFUND\nFURNITURE\nFUTBOL\nFYI\nGA\nGAL\nGALLERY\nGALLO\nGALLUP\nGAME\nGAMES\nGAP\nGARDEN\nGAY\nGB\nGBIZ\nGD\nGDN\nGE\nGEA\nGENT\nGENTING\nGEORGE\nGF\nGG\nGGEE\nGH\nGI\nGIFT\nGIFTS\nGIVES\nGIVING\nGL\nGLASS\nGLE\nGLOBAL\nGLOBO\nGM\nGMAIL\nGMBH\nGMO\nGMX\nGN\nGODADDY\nGOLD\nGOLDPOINT\nGOLF\nGOO\nGOODYEAR\nGOOG\nGOOGLE\nGOP\nGOT\nGOV\nGP\nGQ\nGR\nGRAINGER\nGRAPHICS\nGRATIS\nGREEN\nGRIPE\nGROCERY\nGROUP\nGS\nGT\nGU\nGUARDIAN\nGUCCI\nGUGE\nGUIDE\nGUITARS\nGURU\nGW\nGY\nHAIR\nHAMBURG\nHANGOUT\nHAUS\nHBO\nHDFC\nHDFCBANK\nHEALTH\nHEALTHCARE\nHELP\nHELSINKI\nHERE\nHERMES\nHGTV\nHIPHOP\nHISAMITSU\nHITACHI\nHIV\nHK\nHKT\nHM\nHN\nHOCKEY\nHOLDINGS\nHOLIDAY\nHOMEDEPOT\nHOMEGOODS\nHOMES\nHOMESENSE\nHONDA\nHORSE\nHOSPITAL\nHOST\nHOSTING\nHOT\nHOTELES\nHOTELS\nHOTMAIL\nHOUSE\nHOW\nHR\nHSBC\nHT\nHU\nHUGHES\nHYATT\nHYUNDAI\nIBM\nICBC\nICE\nICU\nID\nIE\nIEEE\nIFM\nIKANO\nIL\nIM\nIMAMAT\nIMDB\nIMMO\nIMMOBILIEN\nIN\nINC\nINDUSTRIES\nINFINITI\nINFO\nING\nINK\nINSTITUTE\nINSURANCE\nINSURE\nINT\nINTERNATIONAL\nINTUIT\nINVESTMENTS\nIO\nIPIRANGA\nIQ\nIR\nIRISH\nIS\nISMAILI\nIST\nISTANBUL\nIT\nITAU\nITV\nJAGUAR\nJAVA\nJCB\nJE\nJEEP\nJETZT\nJEWELRY\nJIO\nJLL\nJM\nJMP\nJNJ\nJO\nJOBS\nJOBURG\nJOT\nJOY\nJP\nJPMORGAN\nJPRS\nJUEGOS\nJUNIPER\nKAUFEN\nKDDI\nKE\nKERRYHOTELS\nKERRYLOGISTICS\nKERRYPROPERTIES\nKFH\nKG\nKH\nKI\nKIA\nKIDS\nKIM\nKINDER\nKINDLE\nKITCHEN\nKIWI\nKM\nKN\nKOELN\nKOMATSU\nKOSHER\nKP\nKPMG\nKPN\nKR\nKRD\nKRED\nKUOKGROUP\nKW\nKY\nKYOTO\nKZ\nLA\nLACAIXA\nLAMBORGHINI\nLAMER\nLANCASTER\nLANCIA\nLAND\nLANDROVER\nLANXESS\nLASALLE\nLAT\nLATINO\nLATROBE\nLAW\nLAWYER\nLB\nLC\nLDS\nLEASE\nLECLERC\nLEFRAK\nLEGAL\nLEGO\nLEXUS\nLGBT\nLI\nLIDL\nLIFE\nLIFEINSURANCE\nLIFESTYLE\nLIGHTING\nLIKE\nLILLY\nLIMITED\nLIMO\nLINCOLN\nLINDE\nLINK\nLIPSY\nLIVE\nLIVING\nLK\nLLC\nLLP\nLOAN\nLOANS\nLOCKER\nLOCUS\nLOL\nLONDON\nLOTTE\nLOTTO\nLOVE\nLPL\nLPLFINANCIAL\nLR\nLS\nLT\nLTD\nLTDA\nLU\nLUNDBECK\nLUXE\nLUXURY\nLV\nLY\nMA\nMACYS\nMADRID\nMAIF\nMAISON\nMAKEUP\nMAN\nMANAGEMENT\nMANGO\nMAP\nMARKET\nMARKETING\nMARKETS\nMARRIOTT\nMARSHALLS\nMASERATI\nMATTEL\nMBA\nMC\nMCKINSEY\nMD\nME\nMED\nMEDIA\nMEET\nMELBOURNE\nMEME\nMEMORIAL\nMEN\nMENU\nMERCKMSD\nMG\nMH\nMIAMI\nMICROSOFT\nMIL\nMINI\nMINT\nMIT\nMITSUBISHI\nMK\nML\nMLB\nMLS\nMM\nMMA\nMN\nMO\nMOBI\nMOBILE\nMODA\nMOE\nMOI\nMOM\nMONASH\nMONEY\nMONSTER\nMORMON\nMORTGAGE\nMOSCOW\nMOTO\nMOTORCYCLES\nMOV\nMOVIE\nMP\nMQ\nMR\nMS\nMSD\nMT\nMTN\nMTR\nMU\nMUSEUM\nMUSIC\nMUTUAL\nMV\nMW\nMX\nMY\nMZ\nNA\nNAB\nNAGOYA\nNAME\nNATURA\nNAVY\nNBA\nNC\nNE\nNEC\nNET\nNETBANK\nNETFLIX\nNETWORK\nNEUSTAR\nNEW\nNEWS\nNEXT\nNEXTDIRECT\nNEXUS\nNF\nNFL\nNG\nNGO\nNHK\nNI\nNICO\nNIKE\nNIKON\nNINJA\nNISSAN\nNISSAY\nNL\nNO\nNOKIA\nNORTHWESTERNMUTUAL\nNORTON\nNOW\nNOWRUZ\nNOWTV\nNP\nNR\nNRA\nNRW\nNTT\nNU\nNYC\nNZ\nOBI\nOBSERVER\nOFFICE\nOKINAWA\nOLAYAN\nOLAYANGROUP\nOLDNAVY\nOLLO\nOM\nOMEGA\nONE\nONG\nONL\nONLINE\nOOO\nOPEN\nORACLE\nORANGE\nORG\nORGANIC\nORIGINS\nOSAKA\nOTSUKA\nOTT\nOVH\nPA\nPAGE\nPANASONIC\nPARIS\nPARS\nPARTNERS\nPARTS\nPARTY\nPASSAGENS\nPAY\nPCCW\nPE\nPET\nPF\nPFIZER\nPG\nPH\nPHARMACY\nPHD\nPHILIPS\nPHONE\nPHOTO\nPHOTOGRAPHY\nPHOTOS\nPHYSIO\nPICS\nPICTET\nPICTURES\nPID\nPIN\nPING\nPINK\nPIONEER\nPIZZA\nPK\nPL\nPLACE\nPLAY\nPLAYSTATION\nPLUMBING\nPLUS\nPM\nPN\nPNC\nPOHL\nPOKER\nPOLITIE\nPORN\nPOST\nPR\nPRAMERICA\nPRAXI\nPRESS\nPRIME\nPRO\nPROD\nPRODUCTIONS\nPROF\nPROGRESSIVE\nPROMO\nPROPERTIES\nPROPERTY\nPROTECTION\nPRU\nPRUDENTIAL\nPS\nPT\nPUB\nPW\nPWC\nPY\nQA\nQPON\nQUEBEC\nQUEST\nRACING\nRADIO\nRE\nREAD\nREALESTATE\nREALTOR\nREALTY\nRECIPES\nRED\nREDSTONE\nREDUMBRELLA\nREHAB\nREISE\nREISEN\nREIT\nRELIANCE\nREN\nRENT\nRENTALS\nREPAIR\nREPORT\nREPUBLICAN\nREST\nRESTAURANT\nREVIEW\nREVIEWS\nREXROTH\nRICH\nRICHARDLI\nRICOH\nRIL\nRIO\nRIP\nRO\nROCHER\nROCKS\nRODEO\nROGERS\nROOM\nRS\nRSVP\nRU\nRUGBY\nRUHR\nRUN\nRW\nRWE\nRYUKYU\nSA\nSAARLAND\nSAFE\nSAFETY\nSAKURA\nSALE\nSALON\nSAMSCLUB\nSAMSUNG\nSANDVIK\nSANDVIKCOROMANT\nSANOFI\nSAP\nSARL\nSAS\nSAVE\nSAXO\nSB\nSBI\nSBS\nSC\nSCA\nSCB\nSCHAEFFLER\nSCHMIDT\nSCHOLARSHIPS\nSCHOOL\nSCHULE\nSCHWARZ\nSCIENCE\nSCOT\nSD\nSE\nSEARCH\nSEAT\nSECURE\nSECURITY\nSEEK\nSELECT\nSENER\nSERVICES\nSEVEN\nSEW\nSEX\nSEXY\nSFR\nSG\nSH\nSHANGRILA\nSHARP\nSHAW\nSHELL\nSHIA\nSHIKSHA\nSHOES\nSHOP\nSHOPPING\nSHOUJI\nSHOW\nSHOWTIME\nSI\nSILK\nSINA\nSINGLES\nSITE\nSJ\nSK\nSKI\nSKIN\nSKY\nSKYPE\nSL\nSLING\nSM\nSMART\nSMILE\nSN\nSNCF\nSO\nSOCCER\nSOCIAL\nSOFTBANK\nSOFTWARE\nSOHU\nSOLAR\nSOLUTIONS\nSONG\nSONY\nSOY\nSPA\nSPACE\nSPORT\nSPOT\nSR\nSRL\nSS\nST\nSTADA\nSTAPLES\nSTAR\nSTATEBANK\nSTATEFARM\nSTC\nSTCGROUP\nSTOCKHOLM\nSTORAGE\nSTORE\nSTREAM\nSTUDIO\nSTUDY\nSTYLE\nSU\nSUCKS\nSUPPLIES\nSUPPLY\nSUPPORT\nSURF\nSURGERY\nSUZUKI\nSV\nSWATCH\nSWISS\nSX\nSY\nSYDNEY\nSYSTEMS\nSZ\nTAB\nTAIPEI\nTALK\nTAOBAO\nTARGET\nTATAMOTORS\nTATAR\nTATTOO\nTAX\nTAXI\nTC\nTCI\nTD\nTDK\nTEAM\nTECH\nTECHNOLOGY\nTEL\nTEMASEK\nTENNIS\nTEVA\nTF\nTG\nTH\nTHD\nTHEATER\nTHEATRE\nTIAA\nTICKETS\nTIENDA\nTIFFANY\nTIPS\nTIRES\nTIROL\nTJ\nTJMAXX\nTJX\nTK\nTKMAXX\nTL\nTM\nTMALL\nTN\nTO\nTODAY\nTOKYO\nTOOLS\nTOP\nTORAY\nTOSHIBA\nTOTAL\nTOURS\nTOWN\nTOYOTA\nTOYS\nTR\nTRADE\nTRADING\nTRAINING\nTRAVEL\nTRAVELCHANNEL\nTRAVELERS\nTRAVELERSINSURANCE\nTRUST\nTRV\nTT\nTUBE\nTUI\nTUNES\nTUSHU\nTV\nTVS\nTW\nTZ\nUA\nUBANK\nUBS\nUG\nUK\nUNICOM\nUNIVERSITY\nUNO\nUOL\nUPS\nUS\nUY\nUZ\nVA\nVACATIONS\nVANA\nVANGUARD\nVC\nVE\nVEGAS\nVENTURES\nVERISIGN\nVERSICHERUNG\nVET\nVG\nVI\nVIAJES\nVIDEO\nVIG\nVIKING\nVILLAS\nVIN\nVIP\nVIRGIN\nVISA\nVISION\nVIVA\nVIVO\nVLAANDEREN\nVN\nVODKA\nVOLKSWAGEN\nVOLVO\nVOTE\nVOTING\nVOTO\nVOYAGE\nVU\nVUELOS\nWALES\nWALMART\nWALTER\nWANG\nWANGGOU\nWATCH\nWATCHES\nWEATHER\nWEATHERCHANNEL\nWEBCAM\nWEBER\nWEBSITE\nWED\nWEDDING\nWEIBO\nWEIR\nWF\nWHOSWHO\nWIEN\nWIKI\nWILLIAMHILL\nWIN\nWINDOWS\nWINE\nWINNERS\nWME\nWOLTERSKLUWER\nWOODSIDE\nWORK\nWORKS\nWORLD\nWOW\nWS\nWTC\nWTF\nXBOX\nXEROX\nXFINITY\nXIHUAN\nXIN\nXN--11B4C3D\nXN--1CK2E1B\nXN--1QQW23A\nXN--2SCRJ9C\nXN--30RR7Y\nXN--3BST00M\nXN--3DS443G\nXN--3E0B707E\nXN--3HCRJ9C\nXN--3PXU8K\nXN--42C2D9A\nXN--45BR5CYL\nXN--45BRJ9C\nXN--45Q11C\nXN--4DBRK0CE\nXN--4GBRIM\nXN--54B7FTA0CC\nXN--55QW42G\nXN--55QX5D\nXN--5SU34J936BGSG\nXN--5TZM5G\nXN--6FRZ82G\nXN--6QQ986B3XL\nXN--80ADXHKS\nXN--80AO21A\nXN--80AQECDR1A\nXN--80ASEHDB\nXN--80ASWG\nXN--8Y0A063A\nXN--90A3AC\nXN--90AE\nXN--90AIS\nXN--9DBQ2A\nXN--9ET52U\nXN--9KRT00A\nXN--B4W605FERD\nXN--BCK1B9A5DRE4C\nXN--C1AVG\nXN--C2BR7G\nXN--CCK2B3B\nXN--CCKWCXETD\nXN--CG4BKI\nXN--CLCHC0EA0B2G2A9GCD\nXN--CZR694B\nXN--CZRS0T\nXN--CZRU2D\nXN--D1ACJ3B\nXN--D1ALF\nXN--E1A4C\nXN--ECKVDTC9D\nXN--EFVY88H\nXN--FCT429K\nXN--FHBEI\nXN--FIQ228C5HS\nXN--FIQ64B\nXN--FIQS8S\nXN--FIQZ9S\nXN--FJQ720A\nXN--FLW351E\nXN--FPCRJ9C3D\nXN--FZC2C9E2C\nXN--FZYS8D69UVGM\nXN--G2XX48C\nXN--GCKR3F0F\nXN--GECRJ9C\nXN--GK3AT1E\nXN--H2BREG3EVE\nXN--H2BRJ9C\nXN--H2BRJ9C8C\nXN--HXT814E\nXN--I1B6B1A6A2E\nXN--IMR513N\nXN--IO0A7I\nXN--J1AEF\nXN--J1AMH\nXN--J6W193G\nXN--JLQ480N2RG\nXN--JVR189M\nXN--KCRX77D1X4A\nXN--KPRW13D\nXN--KPRY57D\nXN--KPUT3I\nXN--L1ACC\nXN--LGBBAT1AD8J\nXN--MGB9AWBF\nXN--MGBA3A3EJT\nXN--MGBA3A4F16A\nXN--MGBA7C0BBN0A\nXN--MGBAAKC7DVF\nXN--MGBAAM7A8H\nXN--MGBAB2BD\nXN--MGBAH1A3HJKRD\nXN--MGBAI9AZGQP6J\nXN--MGBAYH7GPA\nXN--MGBBH1A\nXN--MGBBH1A71E\nXN--MGBC0A9AZCG\nXN--MGBCA7DZDO\nXN--MGBCPQ6GPA1A\nXN--MGBERP4A5D4AR\nXN--MGBGU82A\nXN--MGBI4ECEXP\nXN--MGBPL2FH\nXN--MGBT3DHD\nXN--MGBTX2B\nXN--MGBX4CD0AB\nXN--MIX891F\nXN--MK1BU44C\nXN--MXTQ1M\nXN--NGBC5AZD\nXN--NGBE9E0A\nXN--NGBRX\nXN--NODE\nXN--NQV7F\nXN--NQV7FS00EMA\nXN--NYQY26A\nXN--O3CW4H\nXN--OGBPF8FL\nXN--OTU796D\nXN--P1ACF\nXN--P1AI\nXN--PGBS0DH\nXN--PSSY2U\nXN--Q7CE6A\nXN--Q9JYB4C\nXN--QCKA1PMC\nXN--QXA6A\nXN--QXAM\nXN--RHQV96G\nXN--ROVU88B\nXN--RVC1E0AM3E\nXN--S9BRJ9C\nXN--SES554G\nXN--T60B56A\nXN--TCKWE\nXN--TIQ49XQYJ\nXN--UNUP4Y\nXN--VERMGENSBERATER-CTB\nXN--VERMGENSBERATUNG-PWB\nXN--VHQUV\nXN--VUQ861B\nXN--W4R85EL8FHU5DNRA\nXN--W4RS40L\nXN--WGBH1C\nXN--WGBL6A\nXN--XHQ521B\nXN--XKC2AL3HYE2A\nXN--XKC2DL3A5EE0H\nXN--Y9A3AQ\nXN--YFRO4I67O\nXN--YGBI2AMMX\nXN--ZFR164B\nXXX\nXYZ\nYACHTS\nYAHOO\nYAMAXUN\nYANDEX\nYE\nYODOBASHI\nYOGA\nYOKOHAMA\nYOU\nYOUTUBE\nYT\nYUN\nZA\nZAPPOS\nZARA\nZERO\nZIP\nZM\nZONE\nZUERICH\nZW\n";a=CU();$s=13;case 13:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}CT=a;BY();}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["encoding"]=(function(){var $pkg={},$init,C,D,E;C=$pkg.TextMarshaler=$newType(8,$kindInterface,"encoding.TextMarshaler",true,"encoding",true,null);D=$pkg.TextUnmarshaler=$newType(8,$kindInterface,"encoding.TextUnmarshaler",true,"encoding",true,null);E=$sliceType($Uint8);C.init([{prop:"MarshalText",name:"MarshalText",pkg:"",typ:$funcType([],[E,$error],false)}]);D.init([{prop:"UnmarshalText",name:"UnmarshalText",pkg:"",typ:$funcType([E],[$error],false)}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["encoding/binary"]=(function(){var $pkg={},$init,A,B,C,D,E,O,Z,J;A=$packages["errors"];B=$packages["io"];C=$packages["math"];D=$packages["reflect"];E=$packages["sync"];O=$pkg.bigEndian=$newType(0,$kindStruct,"binary.bigEndian",true,"encoding/binary",false,function(){this.$val=this;if(arguments.length===0){return;}});Z=$sliceType($Uint8);O.ptr.prototype.Uint16=function(a){var a;$unused((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]));return((((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])<<16>>>16))|((((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])<<16>>>16))<<8<<16>>>16))>>>0;};O.prototype.Uint16=function(a){return this.$val.Uint16(a);};O.ptr.prototype.PutUint16=function(a,b){var a,b;$unused((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=(((b>>>8<<16>>>16)<<24>>>24)));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=((b<<24>>>24)));};O.prototype.PutUint16=function(a,b){return this.$val.PutUint16(a,b);};O.ptr.prototype.Uint32=function(a){var a;$unused((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]));return((((((((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3])>>>0))|((((2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2])>>>0))<<8>>>0))>>>0)|((((1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1])>>>0))<<16>>>0))>>>0)|((((0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])>>>0))<<24>>>0))>>>0;};O.prototype.Uint32=function(a){return this.$val.Uint32(a);};O.ptr.prototype.PutUint32=function(a,b){var a,b;$unused((3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=(((b>>>24>>>0)<<24>>>24)));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=(((b>>>16>>>0)<<24>>>24)));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=(((b>>>8>>>0)<<24>>>24)));(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]=((b<<24>>>24)));};O.prototype.PutUint32=function(a,b){return this.$val.PutUint32(a,b);};O.ptr.prototype.Uint64=function(a){var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;$unused((7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]));return(b=(c=(d=(e=(f=(g=(h=(new $Uint64(0,(7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]))),i=$shiftLeft64((new $Uint64(0,(6>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+6]))),8),new $Uint64(h.$high|i.$high,(h.$low|i.$low)>>>0)),j=$shiftLeft64((new $Uint64(0,(5>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+5]))),16),new $Uint64(g.$high|j.$high,(g.$low|j.$low)>>>0)),k=$shiftLeft64((new $Uint64(0,(4>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+4]))),24),new $Uint64(f.$high|k.$high,(f.$low|k.$low)>>>0)),l=$shiftLeft64((new $Uint64(0,(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]))),32),new $Uint64(e.$high|l.$high,(e.$low|l.$low)>>>0)),m=$shiftLeft64((new $Uint64(0,(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]))),40),new $Uint64(d.$high|m.$high,(d.$low|m.$low)>>>0)),n=$shiftLeft64((new $Uint64(0,(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]))),48),new $Uint64(c.$high|n.$high,(c.$low|n.$low)>>>0)),o=$shiftLeft64((new $Uint64(0,(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]))),56),new $Uint64(b.$high|o.$high,(b.$low|o.$low)>>>0));};O.prototype.Uint64=function(a){return this.$val.Uint64(a);};O.ptr.prototype.PutUint64=function(a,b){var a,b;$unused((7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]));(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=(($shiftRightUint64(b,56).$low<<24>>>24)));(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=(($shiftRightUint64(b,48).$low<<24>>>24)));(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=(($shiftRightUint64(b,40).$low<<24>>>24)));(3>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+3]=(($shiftRightUint64(b,32).$low<<24>>>24)));(4>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+4]=(($shiftRightUint64(b,24).$low<<24>>>24)));(5>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+5]=(($shiftRightUint64(b,16).$low<<24>>>24)));(6>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+6]=(($shiftRightUint64(b,8).$low<<24>>>24)));(7>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+7]=((b.$low<<24>>>24)));};O.prototype.PutUint64=function(a,b){return this.$val.PutUint64(a,b);};O.ptr.prototype.String=function(){return"BigEndian";};O.prototype.String=function(){return this.$val.String();};O.ptr.prototype.GoString=function(){return"binary.BigEndian";};O.prototype.GoString=function(){return this.$val.GoString();};O.methods=[{prop:"Uint16",name:"Uint16",pkg:"",typ:$funcType([Z],[$Uint16],false)},{prop:"PutUint16",name:"PutUint16",pkg:"",typ:$funcType([Z,$Uint16],[],false)},{prop:"Uint32",name:"Uint32",pkg:"",typ:$funcType([Z],[$Uint32],false)},{prop:"PutUint32",name:"PutUint32",pkg:"",typ:$funcType([Z,$Uint32],[],false)},{prop:"Uint64",name:"Uint64",pkg:"",typ:$funcType([Z],[$Uint64],false)},{prop:"PutUint64",name:"PutUint64",pkg:"",typ:$funcType([Z,$Uint64],[],false)},{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"GoString",name:"GoString",pkg:"",typ:$funcType([],[$String],false)}];O.init("",[]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.BigEndian=new O.ptr();J=A.New("binary: varint overflows a 64-bit integer");}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["encoding/base64"]=(function(){var $pkg={},$init,A,B,C,D,F,H,N,O,P,Q,R,S,T,V,E,G,J,K;A=$packages["encoding/binary"];B=$packages["io"];C=$packages["strconv"];D=$pkg.Encoding=$newType(0,$kindStruct,"base64.Encoding",true,"encoding/base64",true,function(encode_,decodeMap_,padChar_,strict_){this.$val=this;if(arguments.length===0){this.encode=N.zero();this.decodeMap=O.zero();this.padChar=0;this.strict=false;return;}this.encode=encode_;this.decodeMap=decodeMap_;this.padChar=padChar_;this.strict=strict_;});F=$pkg.encoder=$newType(0,$kindStruct,"base64.encoder",true,"encoding/base64",false,function(err_,enc_,w_,buf_,nbuf_,out_){this.$val=this;if(arguments.length===0){this.err=$ifaceNil;this.enc=Q.nil;this.w=$ifaceNil;this.buf=R.zero();this.nbuf=0;this.out=S.zero();return;}this.err=err_;this.enc=enc_;this.w=w_;this.buf=buf_;this.nbuf=nbuf_;this.out=out_;});H=$pkg.CorruptInputError=$newType(8,$kindInt64,"base64.CorruptInputError",true,"encoding/base64",true,null);N=$arrayType($Uint8,64);O=$arrayType($Uint8,256);P=$sliceType($Uint8);Q=$ptrType(D);R=$arrayType($Uint8,3);S=$arrayType($Uint8,1024);T=$arrayType($Uint8,4);V=$ptrType(F);E=function(a){var a,b,c,d,e,f,g,h;if(!((a.length===64))){$panic(new $String("encoding alphabet is not 64-bytes long"));}b=0;while(true){if(!(b<a.length)){break;}if((a.charCodeAt(b)===10)||(a.charCodeAt(b)===13)){$panic(new $String("encoding alphabet contains newline character"));}b=b+(1)>>0;}c=new D.ptr(N.zero(),O.zero(),0,false);c.padChar=61;$copyString(new P(c.encode),a);d=0;while(true){if(!(d<256)){break;}(e=c.decodeMap,((d<0||d>=e.length)?($throwRuntimeError("index out of range"),undefined):e[d]=255));d=d+(1)>>0;}f=0;while(true){if(!(f<a.length)){break;}(g=c.decodeMap,h=a.charCodeAt(f),((h<0||h>=g.length)?($throwRuntimeError("index out of range"),undefined):g[h]=((f<<24>>>24))));f=f+(1)>>0;}return c;};$pkg.NewEncoding=E;D.ptr.prototype.WithPadding=function(a){var a,b,c,d;b=this;if((a===13)||(a===10)||a>255){$panic(new $String("invalid padding"));}c=0;while(true){if(!(c<64)){break;}if((((d=b.encode,((c<0||c>=d.length)?($throwRuntimeError("index out of range"),undefined):d[c]))>>0))===a){$panic(new $String("padding contained in alphabet"));}c=c+(1)>>0;}b.padChar=a;return b;};D.prototype.WithPadding=function(a){return this.$val.WithPadding(a);};D.ptr.prototype.Strict=function(){var a;a=this;a.strict=true;return a;};D.prototype.Strict=function(){return this.$val.Strict();};D.ptr.prototype.Encode=function(a,b){var a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=this;if(b.$length===0){return;}$unused(c.encode);d=0;e=0;f=d;g=e;i=$imul(((h=b.$length/3,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"))),3);while(true){if(!(g<i)){break;}m=(((((((j=g+0>>0,((j<0||j>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+j]))>>>0))<<16>>>0)|((((k=g+1>>0,((k<0||k>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+k]))>>>0))<<8>>>0))>>>0)|(((l=g+2>>0,((l<0||l>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+l]))>>>0)))>>>0;(p=f+0>>0,((p<0||p>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+p]=(n=c.encode,o=((m>>>18>>>0)&63)>>>0,((o<0||o>=n.length)?($throwRuntimeError("index out of range"),undefined):n[o]))));(s=f+1>>0,((s<0||s>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+s]=(q=c.encode,r=((m>>>12>>>0)&63)>>>0,((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r]))));(v=f+2>>0,((v<0||v>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+v]=(t=c.encode,u=((m>>>6>>>0)&63)>>>0,((u<0||u>=t.length)?($throwRuntimeError("index out of range"),undefined):t[u]))));(y=f+3>>0,((y<0||y>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+y]=(w=c.encode,x=(m&63)>>>0,((x<0||x>=w.length)?($throwRuntimeError("index out of range"),undefined):w[x]))));g=g+(3)>>0;f=f+(4)>>0;}z=b.$length-g>>0;if(z===0){return;}ab=(((aa=g+0>>0,((aa<0||aa>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+aa]))>>>0))<<16>>>0;if(z===2){ab=(ab|(((((ac=g+1>>0,((ac<0||ac>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+ac]))>>>0))<<8>>>0)))>>>0;}(af=f+0>>0,((af<0||af>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+af]=(ad=c.encode,ae=((ab>>>18>>>0)&63)>>>0,((ae<0||ae>=ad.length)?($throwRuntimeError("index out of range"),undefined):ad[ae]))));(ai=f+1>>0,((ai<0||ai>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ai]=(ag=c.encode,ah=((ab>>>12>>>0)&63)>>>0,((ah<0||ah>=ag.length)?($throwRuntimeError("index out of range"),undefined):ag[ah]))));aj=z;if(aj===(2)){(am=f+2>>0,((am<0||am>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+am]=(ak=c.encode,al=((ab>>>6>>>0)&63)>>>0,((al<0||al>=ak.length)?($throwRuntimeError("index out of range"),undefined):ak[al]))));if(!((c.padChar===-1))){(an=f+3>>0,((an<0||an>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+an]=((c.padChar<<24>>>24))));}}else if(aj===(1)){if(!((c.padChar===-1))){(ao=f+2>>0,((ao<0||ao>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ao]=((c.padChar<<24>>>24))));(ap=f+3>>0,((ap<0||ap>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+ap]=((c.padChar<<24>>>24))));}}};D.prototype.Encode=function(a,b){return this.$val.Encode(a,b);};D.ptr.prototype.EncodeToString=function(a){var a,b,c;b=this;c=$makeSlice(P,b.EncodedLen(a.$length));b.Encode(c,a);return($bytesToString(c));};D.prototype.EncodeToString=function(a){return this.$val.EncodeToString(a);};F.ptr.prototype.Write=function(a){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=0;c=$ifaceNil;d=this;if(!($interfaceIsEqual(d.err,$ifaceNil))){e=0;f=d.err;b=e;c=f;$s=-1;return[b,c];}if(d.nbuf>0){$s=1;continue;}$s=2;continue;case 1:g=0;g=0;while(true){if(!(g<a.$length&&d.nbuf<3)){break;}(h=d.buf,i=d.nbuf,((i<0||i>=h.length)?($throwRuntimeError("index out of range"),undefined):h[i]=((g<0||g>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+g])));d.nbuf=d.nbuf+(1)>>0;g=g+(1)>>0;}b=b+(g)>>0;a=$subslice(a,g);if(d.nbuf<3){$s=-1;return[b,c];}d.enc.Encode(new P(d.out),new P(d.buf));k=d.w.Write($subslice(new P(d.out),0,4));$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;d.err=j[1];if(!($interfaceIsEqual(d.err,$ifaceNil))){l=b;m=d.err;b=l;c=m;$s=-1;return[b,c];}d.nbuf=0;case 2:case 4:if(!(a.$length>=3)){$s=5;continue;}n=768;if(n>a.$length){n=a.$length;n=n-((o=n%3,o===o?o:$throwRuntimeError("integer divide by zero")))>>0;}d.enc.Encode(new P(d.out),$subslice(a,0,n));r=d.w.Write($subslice(new P(d.out),0,($imul((q=n/3,(q===q&&q!==1/0&&q!==-1/0)?q>>0:$throwRuntimeError("integer divide by zero")),4))));$s=6;case 6:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}p=r;d.err=p[1];if(!($interfaceIsEqual(d.err,$ifaceNil))){s=b;t=d.err;b=s;c=t;$s=-1;return[b,c];}b=b+(n)>>0;a=$subslice(a,n);$s=4;continue;case 5:$copySlice(new P(d.buf),a);d.nbuf=a.$length;b=b+(a.$length)>>0;$s=-1;return[b,c];}return;}var $f={$blk:F.ptr.prototype.Write,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s};return $f;};F.prototype.Write=function(a){return this.$val.Write(a);};F.ptr.prototype.Close=function(){var{a,b,c,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;if($interfaceIsEqual(a.err,$ifaceNil)&&a.nbuf>0){$s=1;continue;}$s=2;continue;case 1:a.enc.Encode(new P(a.out),$subslice(new P(a.buf),0,a.nbuf));c=a.w.Write($subslice(new P(a.out),0,a.enc.EncodedLen(a.nbuf)));$s=3;case 3:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}b=c;a.err=b[1];a.nbuf=0;case 2:$s=-1;return a.err;}return;}var $f={$blk:F.ptr.prototype.Close,$c:true,$r,a,b,c,$s};return $f;};F.prototype.Close=function(){return this.$val.Close();};G=function(a,b){var a,b;return new F.ptr($ifaceNil,a,b,R.zero(),0,S.zero());};$pkg.NewEncoder=G;D.ptr.prototype.EncodedLen=function(a){var a,b,c,d;b=this;if(b.padChar===-1){return(c=((($imul(a,8))+5>>0))/6,(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));}return $imul((d=((a+2>>0))/3,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero")),4);};D.prototype.EncodedLen=function(a){return this.$val.EncodedLen(a);};H.prototype.Error=function(){var a;a=this;return"illegal base64 data at input byte "+C.FormatInt((new $Int64(a.$high,a.$low)),10);};$ptrType(H).prototype.Error=function(){return this.$get().Error();};D.ptr.prototype.decodeQuantum=function(a,b,c){var a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;d=0;e=0;f=$ifaceNil;g=this;h=T.zero();i=4;$unused(g.decodeMap);j=0;while(true){if(!(j<4)){break;}if(b.$length===c){if((j===0)){k=c;l=0;m=$ifaceNil;d=k;e=l;f=m;return[d,e,f];}else if(((j===1))||(!((g.padChar===-1)))){n=c;o=0;p=(new H(0,(c-j>>0)));d=n;e=o;f=p;return[d,e,f];}i=j;break;}q=((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c]);c=c+(1)>>0;s=(r=g.decodeMap,((q<0||q>=r.length)?($throwRuntimeError("index out of range"),undefined):r[q]));if(!((s===255))){((j<0||j>=h.length)?($throwRuntimeError("index out of range"),undefined):h[j]=s);j=j+(1)>>0;continue;}if((q===10)||(q===13)){j=j-(1)>>0;j=j+(1)>>0;continue;}if(!((((q>>0))===g.padChar))){t=c;u=0;v=(new H(0,(c-1>>0)));d=t;e=u;f=v;return[d,e,f];}w=j;if((w===(0))||(w===(1))){x=c;y=0;z=(new H(0,(c-1>>0)));d=x;e=y;f=z;return[d,e,f];}else if(w===(2)){while(true){if(!(c<b.$length&&((((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c])===10)||(((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c])===13)))){break;}c=c+(1)>>0;}if(c===b.$length){aa=c;ab=0;ac=(new H(0,b.$length));d=aa;e=ab;f=ac;return[d,e,f];}if(!((((((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c])>>0))===g.padChar))){ad=c;ae=0;af=(new H(0,(c-1>>0)));d=ad;e=ae;f=af;return[d,e,f];}c=c+(1)>>0;}while(true){if(!(c<b.$length&&((((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c])===10)||(((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c])===13)))){break;}c=c+(1)>>0;}if(c<b.$length){f=(new H(0,c));}i=j;break;}ag=((((((((h[0]>>>0))<<18>>>0)|(((h[1]>>>0))<<12>>>0))>>>0)|(((h[2]>>>0))<<6>>>0))>>>0)|((h[3]>>>0)))>>>0;ah=(((ag>>>0>>>0)<<24>>>24));ai=(((ag>>>8>>>0)<<24>>>24));aj=(((ag>>>16>>>0)<<24>>>24));h[2]=ah;h[1]=ai;h[0]=aj;ak=i;if(ak===(4)){(2>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+2]=h[2]);h[2]=0;(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=h[1]);if(g.strict&&!((h[2]===0))){al=c;am=0;an=(new H(0,(c-1>>0)));d=al;e=am;f=an;return[d,e,f];}h[1]=0;(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=h[0]);if(g.strict&&(!((h[1]===0))||!((h[2]===0)))){ao=c;ap=0;aq=(new H(0,(c-2>>0)));d=ao;e=ap;f=aq;return[d,e,f];}}else if(ak===(3)){(1>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+1]=h[1]);if(g.strict&&!((h[2]===0))){ar=c;as=0;at=(new H(0,(c-1>>0)));d=ar;e=as;f=at;return[d,e,f];}h[1]=0;(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=h[0]);if(g.strict&&(!((h[1]===0))||!((h[2]===0)))){au=c;av=0;aw=(new H(0,(c-2>>0)));d=au;e=av;f=aw;return[d,e,f];}}else if(ak===(2)){(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0]=h[0]);if(g.strict&&(!((h[1]===0))||!((h[2]===0)))){ax=c;ay=0;az=(new H(0,(c-2>>0)));d=ax;e=ay;f=az;return[d,e,f];}}ba=c;bb=i-1>>0;bc=f;d=ba;e=bb;f=bc;return[d,e,f];};D.prototype.decodeQuantum=function(a,b,c){return this.$val.decodeQuantum(a,b,c);};D.ptr.prototype.DecodeString=function(a){var a,b,c,d,e,f;b=this;c=$makeSlice(P,b.DecodedLen(a.length));d=b.Decode(c,(new P($stringToBytes(a))));e=d[0];f=d[1];return[$subslice(c,0,e),f];};D.prototype.DecodeString=function(a){return this.$val.DecodeString(a);};D.ptr.prototype.Decode=function(a,b){var a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;c=0;d=$ifaceNil;e=this;if(b.$length===0){f=0;g=$ifaceNil;c=f;d=g;return[c,d];}$unused(e.decodeMap);h=0;while(true){if(!(false&&(b.$length-h>>0)>=8&&(a.$length-c>>0)>=8)){break;}i=$subslice(b,h,(h+8>>0));j=K((k=e.decodeMap,l=(0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0]),((l<0||l>=k.length)?($throwRuntimeError("index out of range"),undefined):k[l])),(m=e.decodeMap,n=(1>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+1]),((n<0||n>=m.length)?($throwRuntimeError("index out of range"),undefined):m[n])),(o=e.decodeMap,p=(2>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+2]),((p<0||p>=o.length)?($throwRuntimeError("index out of range"),undefined):o[p])),(q=e.decodeMap,r=(3>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+3]),((r<0||r>=q.length)?($throwRuntimeError("index out of range"),undefined):q[r])),(s=e.decodeMap,t=(4>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+4]),((t<0||t>=s.length)?($throwRuntimeError("index out of range"),undefined):s[t])),(u=e.decodeMap,v=(5>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+5]),((v<0||v>=u.length)?($throwRuntimeError("index out of range"),undefined):u[v])),(w=e.decodeMap,x=(6>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+6]),((x<0||x>=w.length)?($throwRuntimeError("index out of range"),undefined):w[x])),(y=e.decodeMap,z=(7>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+7]),((z<0||z>=y.length)?($throwRuntimeError("index out of range"),undefined):y[z])));aa=j[0];ab=j[1];if(ab){$clone(A.BigEndian,A.bigEndian).PutUint64($subslice(a,c),aa);c=c+(6)>>0;h=h+(8)>>0;}else{ac=0;ad=e.decodeQuantum($subslice(a,c),b,h);h=ad[0];ac=ad[1];d=ad[2];c=c+(ac)>>0;if(!($interfaceIsEqual(d,$ifaceNil))){ae=c;af=d;c=ae;d=af;return[c,d];}}}while(true){if(!((b.$length-h>>0)>=4&&(a.$length-c>>0)>=4)){break;}ag=$subslice(b,h,(h+4>>0));ah=J((ai=e.decodeMap,aj=(0>=ag.$length?($throwRuntimeError("index out of range"),undefined):ag.$array[ag.$offset+0]),((aj<0||aj>=ai.length)?($throwRuntimeError("index out of range"),undefined):ai[aj])),(ak=e.decodeMap,al=(1>=ag.$length?($throwRuntimeError("index out of range"),undefined):ag.$array[ag.$offset+1]),((al<0||al>=ak.length)?($throwRuntimeError("index out of range"),undefined):ak[al])),(am=e.decodeMap,an=(2>=ag.$length?($throwRuntimeError("index out of range"),undefined):ag.$array[ag.$offset+2]),((an<0||an>=am.length)?($throwRuntimeError("index out of range"),undefined):am[an])),(ao=e.decodeMap,ap=(3>=ag.$length?($throwRuntimeError("index out of range"),undefined):ag.$array[ag.$offset+3]),((ap<0||ap>=ao.length)?($throwRuntimeError("index out of range"),undefined):ao[ap])));aq=ah[0];ar=ah[1];if(ar){$clone(A.BigEndian,A.bigEndian).PutUint32($subslice(a,c),aq);c=c+(3)>>0;h=h+(4)>>0;}else{as=0;at=e.decodeQuantum($subslice(a,c),b,h);h=at[0];as=at[1];d=at[2];c=c+(as)>>0;if(!($interfaceIsEqual(d,$ifaceNil))){au=c;av=d;c=au;d=av;return[c,d];}}}while(true){if(!(h<b.$length)){break;}aw=0;ax=e.decodeQuantum($subslice(a,c),b,h);h=ax[0];aw=ax[1];d=ax[2];c=c+(aw)>>0;if(!($interfaceIsEqual(d,$ifaceNil))){ay=c;az=d;c=ay;d=az;return[c,d];}}ba=c;bb=d;c=ba;d=bb;return[c,d];};D.prototype.Decode=function(a,b){return this.$val.Decode(a,b);};J=function(a,b,c,d){var a,b,c,d,e,f,g,h,i,j;e=0;f=false;if(((((((a|b)>>>0)|c)>>>0)|d)>>>0)===255){g=0;h=false;e=g;f=h;return[e,f];}i=((((((((a>>>0))<<26>>>0)|(((b>>>0))<<20>>>0))>>>0)|(((c>>>0))<<14>>>0))>>>0)|(((d>>>0))<<8>>>0))>>>0;j=true;e=i;f=j;return[e,f];};K=function(a,b,c,d,e,f,g,h){var a,aa,ab,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;i=new $Uint64(0,0);j=false;if(((((((((((((((a|b)>>>0)|c)>>>0)|d)>>>0)|e)>>>0)|f)>>>0)|g)>>>0)|h)>>>0)===255){k=new $Uint64(0,0);l=false;i=k;j=l;return[i,j];}m=(n=(o=(p=(q=(r=(s=(t=$shiftLeft64((new $Uint64(0,a)),58),u=$shiftLeft64((new $Uint64(0,b)),52),new $Uint64(t.$high|u.$high,(t.$low|u.$low)>>>0)),v=$shiftLeft64((new $Uint64(0,c)),46),new $Uint64(s.$high|v.$high,(s.$low|v.$low)>>>0)),w=$shiftLeft64((new $Uint64(0,d)),40),new $Uint64(r.$high|w.$high,(r.$low|w.$low)>>>0)),x=$shiftLeft64((new $Uint64(0,e)),34),new $Uint64(q.$high|x.$high,(q.$low|x.$low)>>>0)),y=$shiftLeft64((new $Uint64(0,f)),28),new $Uint64(p.$high|y.$high,(p.$low|y.$low)>>>0)),z=$shiftLeft64((new $Uint64(0,g)),22),new $Uint64(o.$high|z.$high,(o.$low|z.$low)>>>0)),aa=$shiftLeft64((new $Uint64(0,h)),16),new $Uint64(n.$high|aa.$high,(n.$low|aa.$low)>>>0));ab=true;i=m;j=ab;return[i,j];};D.ptr.prototype.DecodedLen=function(a){var a,b,c,d;b=this;if(b.padChar===-1){return(c=($imul(a,6))/8,(c===c&&c!==1/0&&c!==-1/0)?c>>0:$throwRuntimeError("integer divide by zero"));}return $imul((d=a/4,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero")),3);};D.prototype.DecodedLen=function(a){return this.$val.DecodedLen(a);};D.methods=[{prop:"WithPadding",name:"WithPadding",pkg:"",typ:$funcType([$Int32],[Q],false)},{prop:"Strict",name:"Strict",pkg:"",typ:$funcType([],[Q],false)}];Q.methods=[{prop:"Encode",name:"Encode",pkg:"",typ:$funcType([P,P],[],false)},{prop:"EncodeToString",name:"EncodeToString",pkg:"",typ:$funcType([P],[$String],false)},{prop:"EncodedLen",name:"EncodedLen",pkg:"",typ:$funcType([$Int],[$Int],false)},{prop:"decodeQuantum",name:"decodeQuantum",pkg:"encoding/base64",typ:$funcType([P,P,$Int],[$Int,$Int,$error],false)},{prop:"DecodeString",name:"DecodeString",pkg:"",typ:$funcType([$String],[P,$error],false)},{prop:"Decode",name:"Decode",pkg:"",typ:$funcType([P,P],[$Int,$error],false)},{prop:"DecodedLen",name:"DecodedLen",pkg:"",typ:$funcType([$Int],[$Int],false)}];V.methods=[{prop:"Write",name:"Write",pkg:"",typ:$funcType([P],[$Int,$error],false)},{prop:"Close",name:"Close",pkg:"",typ:$funcType([],[$error],false)}];H.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];D.init("encoding/base64",[{prop:"encode",name:"encode",embedded:false,exported:false,typ:N,tag:""},{prop:"decodeMap",name:"decodeMap",embedded:false,exported:false,typ:O,tag:""},{prop:"padChar",name:"padChar",embedded:false,exported:false,typ:$Int32,tag:""},{prop:"strict",name:"strict",embedded:false,exported:false,typ:$Bool,tag:""}]);F.init("encoding/base64",[{prop:"err",name:"err",embedded:false,exported:false,typ:$error,tag:""},{prop:"enc",name:"enc",embedded:false,exported:false,typ:Q,tag:""},{prop:"w",name:"w",embedded:false,exported:false,typ:B.Writer,tag:""},{prop:"buf",name:"buf",embedded:false,exported:false,typ:R,tag:""},{prop:"nbuf",name:"nbuf",embedded:false,exported:false,typ:$Int,tag:""},{prop:"out",name:"out",embedded:false,exported:false,typ:S,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.StdEncoding=E("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/");$pkg.URLEncoding=E("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_");$pkg.RawStdEncoding=$clone($pkg.StdEncoding,D).WithPadding(-1);$pkg.RawURLEncoding=$clone($pkg.URLEncoding,D).WithPadding(-1);}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["unicode/utf16"]=(function(){var $pkg={},$init;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["encoding/json"]=(function(){var $pkg={},$init,C,H,I,D,J,G,E,K,L,M,F,A,N,O,B,P,AD,AE,CA,CB,CC,CE,CG,CJ,CL,CM,DB,DI,DJ,DL,DO,DQ,DS,DU,DY,DZ,EA,EK,EV,EX,EY,EZ,FA,FB,FG,FH,FI,FJ,FK,FL,FM,FO,FU,FV,FW,FX,FZ,GA,GB,GC,GD,R,S,AF,CF,CH,CN,CQ,CR,DC,DD,ED,EQ,ER,a,b,c,Q,AG,AH,AI,AJ,AK,AL,AM,AN,AO,AP,AQ,AR,AS,AT,AU,AV,AW,AX,AY,AZ,BA,BB,BC,BD,BE,BF,BG,BH,BI,BJ,BK,BL,BM,BN,BO,BQ,BT,BU,BV,BW,BX,BZ,CI,CK,CO,CP,CS,CT,CU,CV,CW,CX,CY,CZ,DA,DE,DF,DG,DH,DK,DM,DN,DP,DR,DT,DV,DW,DX,EB,EC,EE;C=$packages["bytes"];H=$packages["encoding"];I=$packages["encoding/base64"];D=$packages["errors"];J=$packages["fmt"];G=$packages["github.com/gopherjs/gopherjs/nosync"];E=$packages["io"];K=$packages["math"];L=$packages["reflect"];M=$packages["sort"];F=$packages["strconv"];A=$packages["strings"];N=$packages["unicode"];O=$packages["unicode/utf16"];B=$packages["unicode/utf8"];P=$pkg.tagOptions=$newType(8,$kindString,"json.tagOptions",true,"encoding/json",false,null);AD=$pkg.SyntaxError=$newType(0,$kindStruct,"json.SyntaxError",true,"encoding/json",true,function(msg_,Offset_){this.$val=this;if(arguments.length===0){this.msg="";this.Offset=new $Int64(0,0);return;}this.msg=msg_;this.Offset=Offset_;});AE=$pkg.scanner=$newType(0,$kindStruct,"json.scanner",true,"encoding/json",false,function(step_,endTop_,parseState_,err_,bytes_){this.$val=this;if(arguments.length===0){this.step=$throwNilPointerError;this.endTop=false;this.parseState=EX.nil;this.err=$ifaceNil;this.bytes=new $Int64(0,0);return;}this.step=step_;this.endTop=endTop_;this.parseState=parseState_;this.err=err_;this.bytes=bytes_;});CA=$pkg.Marshaler=$newType(8,$kindInterface,"json.Marshaler",true,"encoding/json",true,null);CB=$pkg.UnsupportedTypeError=$newType(0,$kindStruct,"json.UnsupportedTypeError",true,"encoding/json",true,function(Type_){this.$val=this;if(arguments.length===0){this.Type=$ifaceNil;return;}this.Type=Type_;});CC=$pkg.UnsupportedValueError=$newType(0,$kindStruct,"json.UnsupportedValueError",true,"encoding/json",true,function(Value_,Str_){this.$val=this;if(arguments.length===0){this.Value=new L.Value.ptr(FO.nil,0,0);this.Str="";return;}this.Value=Value_;this.Str=Str_;});CE=$pkg.MarshalerError=$newType(0,$kindStruct,"json.MarshalerError",true,"encoding/json",true,function(Type_,Err_,sourceFunc_){this.$val=this;if(arguments.length===0){this.Type=$ifaceNil;this.Err=$ifaceNil;this.sourceFunc="";return;}this.Type=Type_;this.Err=Err_;this.sourceFunc=sourceFunc_;});CG=$pkg.encodeState=$newType(0,$kindStruct,"json.encodeState",true,"encoding/json",false,function(Buffer_,scratch_,ptrLevel_,ptrSeen_){this.$val=this;if(arguments.length===0){this.Buffer=new C.Buffer.ptr(FA.nil,0,0);this.scratch=FI.zero();this.ptrLevel=0;this.ptrSeen=false;return;}this.Buffer=Buffer_;this.scratch=scratch_;this.ptrLevel=ptrLevel_;this.ptrSeen=ptrSeen_;});CJ=$pkg.jsonError=$newType(0,$kindStruct,"json.jsonError",true,"encoding/json",false,function(error_){this.$val=this;if(arguments.length===0){this.error=$ifaceNil;return;}this.error=error_;});CL=$pkg.encOpts=$newType(0,$kindStruct,"json.encOpts",true,"encoding/json",false,function(quoted_,escapeHTML_){this.$val=this;if(arguments.length===0){this.quoted=false;this.escapeHTML=false;return;}this.quoted=quoted_;this.escapeHTML=escapeHTML_;});CM=$pkg.encoderFunc=$newType(4,$kindFunc,"json.encoderFunc",true,"encoding/json",false,null);DB=$pkg.floatEncoder=$newType(4,$kindInt,"json.floatEncoder",true,"encoding/json",false,null);DI=$pkg.structEncoder=$newType(0,$kindStruct,"json.structEncoder",true,"encoding/json",false,function(fields_){this.$val=this;if(arguments.length===0){this.fields=new DJ.ptr(FJ.nil,false);return;}this.fields=fields_;});DJ=$pkg.structFields=$newType(0,$kindStruct,"json.structFields",true,"encoding/json",false,function(list_,nameIndex_){this.$val=this;if(arguments.length===0){this.list=FJ.nil;this.nameIndex=false;return;}this.list=list_;this.nameIndex=nameIndex_;});DL=$pkg.mapEncoder=$newType(0,$kindStruct,"json.mapEncoder",true,"encoding/json",false,function(elemEnc_){this.$val=this;if(arguments.length===0){this.elemEnc=$throwNilPointerError;return;}this.elemEnc=elemEnc_;});DO=$pkg.sliceEncoder=$newType(0,$kindStruct,"json.sliceEncoder",true,"encoding/json",false,function(arrayEnc_){this.$val=this;if(arguments.length===0){this.arrayEnc=$throwNilPointerError;return;}this.arrayEnc=arrayEnc_;});DQ=$pkg.arrayEncoder=$newType(0,$kindStruct,"json.arrayEncoder",true,"encoding/json",false,function(elemEnc_){this.$val=this;if(arguments.length===0){this.elemEnc=$throwNilPointerError;return;}this.elemEnc=elemEnc_;});DS=$pkg.ptrEncoder=$newType(0,$kindStruct,"json.ptrEncoder",true,"encoding/json",false,function(elemEnc_){this.$val=this;if(arguments.length===0){this.elemEnc=$throwNilPointerError;return;}this.elemEnc=elemEnc_;});DU=$pkg.condAddrEncoder=$newType(0,$kindStruct,"json.condAddrEncoder",true,"encoding/json",false,function(canAddrEnc_,elseEnc_){this.$val=this;if(arguments.length===0){this.canAddrEnc=$throwNilPointerError;this.elseEnc=$throwNilPointerError;return;}this.canAddrEnc=canAddrEnc_;this.elseEnc=elseEnc_;});DY=$pkg.reflectWithString=$newType(0,$kindStruct,"json.reflectWithString",true,"encoding/json",false,function(k_,v_,ks_){this.$val=this;if(arguments.length===0){this.k=new L.Value.ptr(FO.nil,0,0);this.v=new L.Value.ptr(FO.nil,0,0);this.ks="";return;}this.k=k_;this.v=v_;this.ks=ks_;});DZ=$pkg.field=$newType(0,$kindStruct,"json.field",true,"encoding/json",false,function(name_,nameBytes_,equalFold_,nameNonEsc_,nameEscHTML_,tag_,index_,typ_,omitEmpty_,quoted_,encoder_){this.$val=this;if(arguments.length===0){this.name="";this.nameBytes=FA.nil;this.equalFold=$throwNilPointerError;this.nameNonEsc="";this.nameEscHTML="";this.tag=false;this.index=EX.nil;this.typ=$ifaceNil;this.omitEmpty=false;this.quoted=false;this.encoder=$throwNilPointerError;return;}this.name=name_;this.nameBytes=nameBytes_;this.equalFold=equalFold_;this.nameNonEsc=nameNonEsc_;this.nameEscHTML=nameEscHTML_;this.tag=tag_;this.index=index_;this.typ=typ_;this.omitEmpty=omitEmpty_;this.quoted=quoted_;this.encoder=encoder_;});EA=$pkg.byIndex=$newType(12,$kindSlice,"json.byIndex",true,"encoding/json",false,null);EK=$pkg.Number=$newType(8,$kindString,"json.Number",true,"encoding/json",true,null);EV=$sliceType($emptyInterface);EX=$sliceType($Int);EY=$ptrType(CA);EZ=$ptrType(H.TextMarshaler);FA=$sliceType($Uint8);FB=$ptrType(H.TextUnmarshaler);FG=$ptrType(AE);FH=$ptrType(CG);FI=$arrayType($Uint8,64);FJ=$sliceType(DZ);FK=$structType("",[]);FL=$sliceType(DY);FM=$structType("encoding/json",[{prop:"ptr",name:"ptr",embedded:false,exported:false,typ:$Uintptr,tag:""},{prop:"len",name:"len",embedded:false,exported:false,typ:$Int,tag:""}]);FO=$ptrType(L.rtype);FU=$ptrType(AD);FV=$funcType([FG,$Uint8],[$Int],false);FW=$ptrType(CB);FX=$ptrType(CC);FZ=$ptrType(CE);GA=$mapType($emptyInterface,FK);GB=$mapType($String,$Int);GC=$ptrType(DY);GD=$funcType([FA,FA],[$Bool],false);Q=function(d){var d,e,f;e=A.Cut(d,",");d=e[0];f=e[1];return[d,(f)];};P.prototype.Contains=function(d){var d,e,f,g,h;e=this.$val;if(e.length===0){return false;}f=(e);while(true){if(!(!(f===""))){break;}g="";h=A.Cut(f,",");g=h[0];f=h[1];if(g===d){return true;}}return false;};$ptrType(P).prototype.Contains=function(d){return new P(this.$get()).Contains(d);};AD.ptr.prototype.Error=function(){var d;d=this;return d.msg;};AD.prototype.Error=function(){return this.$val.Error();};AG=function(){var{d,e,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:d=AF.Get();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=$assertType(d,FG);e.bytes=new $Int64(0,0);e.reset();$s=-1;return e;}return;}var $f={$blk:AG,$c:true,$r,d,e,$s};return $f;};AH=function(d){var d;if(d.parseState.$length>1024){d.parseState=EX.nil;}AF.Put(d);};AE.ptr.prototype.reset=function(){var d;d=this;d.step=AK;d.parseState=$subslice(d.parseState,0,0);d.err=$ifaceNil;d.endTop=false;};AE.prototype.reset=function(){return this.$val.reset();};AE.ptr.prototype.eof=function(){var{d,e,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:d=this;if(!($interfaceIsEqual(d.err,$ifaceNil))){$s=-1;return 11;}if(d.endTop){$s=-1;return 10;}e=d.step(d,32);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;if(d.endTop){$s=-1;return 10;}if($interfaceIsEqual(d.err,$ifaceNil)){d.err=new AD.ptr("unexpected end of JSON input",d.bytes);}$s=-1;return 11;}return;}var $f={$blk:AE.ptr.prototype.eof,$c:true,$r,d,e,$s};return $f;};AE.prototype.eof=function(){return this.$val.eof();};AE.ptr.prototype.pushParseState=function(d,e,f){var d,e,f,g;g=this;g.parseState=$append(g.parseState,e);if(g.parseState.$length<=10000){return f;}return g.error(d,"exceeded max depth");};AE.prototype.pushParseState=function(d,e,f){return this.$val.pushParseState(d,e,f);};AE.ptr.prototype.popParseState=function(){var d,e;d=this;e=d.parseState.$length-1>>0;d.parseState=$subslice(d.parseState,0,e);if(e===0){d.step=AO;d.endTop=true;}else{d.step=AN;}};AE.prototype.popParseState=function(){return this.$val.popParseState();};AI=function(d){var d;return d<=32&&((d===32)||(d===9)||(d===13)||(d===10));};AJ=function(d,e){var d,e;if(AI(e)){return 9;}if(e===93){return AN(d,e);}return AK(d,e);};AK=function(d,e){var d,e,f;if(AI(e)){return 9;}f=e;if(f===(123)){d.step=AL;return d.pushParseState(e,0,2);}else if(f===(91)){d.step=AJ;return d.pushParseState(e,2,6);}else if(f===(34)){d.step=AP;return 1;}else if(f===(45)){d.step=AV;return 1;}else if(f===(48)){d.step=AX;return 1;}else if(f===(116)){d.step=BD;return 1;}else if(f===(102)){d.step=BG;return 1;}else if(f===(110)){d.step=BK;return 1;}if(49<=e&&e<=57){d.step=AW;return 1;}return d.error(e,"looking for beginning of value");};AL=function(d,e){var d,e,f,g,h;if(AI(e)){return 9;}if(e===125){f=d.parseState.$length;(g=d.parseState,h=f-1>>0,((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]=1));return AN(d,e);}return AM(d,e);};AM=function(d,e){var d,e;if(AI(e)){return 9;}if(e===34){d.step=AP;return 1;}return d.error(e,"looking for beginning of object key string");};AN=function(d,e){var d,e,f,g,h,i,j,k,l,m,n;f=d.parseState.$length;if(f===0){d.step=AO;d.endTop=true;return AO(d,e);}if(AI(e)){d.step=AN;return 9;}i=(g=d.parseState,h=f-1>>0,((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]));j=i;if(j===(0)){if(e===58){(k=d.parseState,l=f-1>>0,((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]=1));d.step=AK;return 3;}return d.error(e,"after object key");}else if(j===(1)){if(e===44){(m=d.parseState,n=f-1>>0,((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]=0));d.step=AM;return 4;}if(e===125){d.popParseState();return 5;}return d.error(e,"after object key:value pair");}else if(j===(2)){if(e===44){d.step=AK;return 7;}if(e===93){d.popParseState();return 8;}return d.error(e,"after array element");}return d.error(e,"");};AO=function(d,e){var d,e;if(!AI(e)){d.error(e,"after top-level value");}return 10;};AP=function(d,e){var d,e;if(e===34){d.step=AN;return 0;}if(e===92){d.step=AQ;return 0;}if(e<32){return d.error(e,"in string literal");}return 0;};AQ=function(d,e){var d,e,f;f=e;if((f===(98))||(f===(102))||(f===(110))||(f===(114))||(f===(116))||(f===(92))||(f===(47))||(f===(34))){d.step=AP;return 0;}else if(f===(117)){d.step=AR;return 0;}return d.error(e,"in string escape code");};AR=function(d,e){var d,e;if(48<=e&&e<=57||97<=e&&e<=102||65<=e&&e<=70){d.step=AS;return 0;}return d.error(e,"in \\u hexadecimal character escape");};AS=function(d,e){var d,e;if(48<=e&&e<=57||97<=e&&e<=102||65<=e&&e<=70){d.step=AT;return 0;}return d.error(e,"in \\u hexadecimal character escape");};AT=function(d,e){var d,e;if(48<=e&&e<=57||97<=e&&e<=102||65<=e&&e<=70){d.step=AU;return 0;}return d.error(e,"in \\u hexadecimal character escape");};AU=function(d,e){var d,e;if(48<=e&&e<=57||97<=e&&e<=102||65<=e&&e<=70){d.step=AP;return 0;}return d.error(e,"in \\u hexadecimal character escape");};AV=function(d,e){var d,e;if(e===48){d.step=AX;return 0;}if(49<=e&&e<=57){d.step=AW;return 0;}return d.error(e,"in numeric literal");};AW=function(d,e){var d,e;if(48<=e&&e<=57){d.step=AW;return 0;}return AX(d,e);};AX=function(d,e){var d,e;if(e===46){d.step=AY;return 0;}if((e===101)||(e===69)){d.step=BA;return 0;}return AN(d,e);};AY=function(d,e){var d,e;if(48<=e&&e<=57){d.step=AZ;return 0;}return d.error(e,"after decimal point in numeric literal");};AZ=function(d,e){var d,e;if(48<=e&&e<=57){return 0;}if((e===101)||(e===69)){d.step=BA;return 0;}return AN(d,e);};BA=function(d,e){var d,e;if((e===43)||(e===45)){d.step=BB;return 0;}return BB(d,e);};BB=function(d,e){var d,e;if(48<=e&&e<=57){d.step=BC;return 0;}return d.error(e,"in exponent of numeric literal");};BC=function(d,e){var d,e;if(48<=e&&e<=57){return 0;}return AN(d,e);};BD=function(d,e){var d,e;if(e===114){d.step=BE;return 0;}return d.error(e,"in literal true (expecting 'r')");};BE=function(d,e){var d,e;if(e===117){d.step=BF;return 0;}return d.error(e,"in literal true (expecting 'u')");};BF=function(d,e){var d,e;if(e===101){d.step=AN;return 0;}return d.error(e,"in literal true (expecting 'e')");};BG=function(d,e){var d,e;if(e===97){d.step=BH;return 0;}return d.error(e,"in literal false (expecting 'a')");};BH=function(d,e){var d,e;if(e===108){d.step=BI;return 0;}return d.error(e,"in literal false (expecting 'l')");};BI=function(d,e){var d,e;if(e===115){d.step=BJ;return 0;}return d.error(e,"in literal false (expecting 's')");};BJ=function(d,e){var d,e;if(e===101){d.step=AN;return 0;}return d.error(e,"in literal false (expecting 'e')");};BK=function(d,e){var d,e;if(e===117){d.step=BL;return 0;}return d.error(e,"in literal null (expecting 'u')");};BL=function(d,e){var d,e;if(e===108){d.step=BM;return 0;}return d.error(e,"in literal null (expecting 'l')");};BM=function(d,e){var d,e;if(e===108){d.step=AN;return 0;}return d.error(e,"in literal null (expecting 'l')");};BN=function(d,e){var d,e;return 11;};AE.ptr.prototype.error=function(d,e){var d,e,f;f=this;f.step=BN;f.err=new AD.ptr("invalid character "+BO(d)+" "+e,f.bytes);return 11;};AE.prototype.error=function(d,e){return this.$val.error(d,e);};BO=function(d){var d,e;if(d===39){return"'\\''";}if(d===34){return"'\"'";}e=F.Quote(($encodeRune(d)));return"'"+$substring(e,1,(e.length-1>>0))+"'";};BQ=function(d,e,f){var{aa,ab,ac,ad,ae,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r,$c}=$restore(this,{d,e,f});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);g=d.Len();h=AG();$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;$deferred.push([AH,[i]]);j=0;k=e;l=0;case 2:if(!(l<k.$length)){$s=3;continue;}m=l;n=((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]);if(f&&((n===60)||(n===62)||(n===38))){$s=4;continue;}$s=5;continue;case 4:if(j<m){$s=6;continue;}$s=7;continue;case 6:o=d.Write($subslice(e,j,m));$s=8;case 8:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}o;case 7:p=d.WriteString("\\u00");$s=9;case 9:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;q=d.WriteByte(CF.charCodeAt((n>>>4<<24>>>24)));$s=10;case 10:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;r=d.WriteByte(CF.charCodeAt(((n&15)>>>0)));$s=11;case 11:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;j=m+1>>0;case 5:if(f&&(n===226)&&(m+2>>0)<e.$length&&((s=m+1>>0,((s<0||s>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+s]))===128)&&((((t=m+2>>0,((t<0||t>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+t]))&~1)<<24>>>24)===168)){$s=12;continue;}$s=13;continue;case 12:if(j<m){$s=14;continue;}$s=15;continue;case 14:u=d.Write($subslice(e,j,m));$s=16;case 16:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}u;case 15:v=d.WriteString("\\u202");$s=17;case 17:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;x=d.WriteByte(CF.charCodeAt((((w=m+2>>0,((w<0||w>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+w]))&15)>>>0)));$s=18;case 18:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}x;j=m+3>>0;case 13:y=i.step(i,n);$s=19;case 19:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=y;if(z>=9){$s=20;continue;}$s=21;continue;case 20:if(z===11){$s=3;continue;}if(j<m){$s=22;continue;}$s=23;continue;case 22:aa=d.Write($subslice(e,j,m));$s=24;case 24:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;case 23:j=m+1>>0;case 21:l++;$s=2;continue;case 3:ab=i.eof();$s=27;case 27:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}if(ab===11){$s=25;continue;}$s=26;continue;case 25:d.Truncate(g);ac=i.err;$s=28;case 28:return ac;case 26:if(j<e.$length){$s=29;continue;}$s=30;continue;case 29:ad=d.Write($subslice(e,j));$s=31;case 31:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ad;case 30:ae=$ifaceNil;$s=32;case 32:return ae;}return;}}catch(err){$err=err;$s=-1;return $ifaceNil;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:BQ,$c:true,$r,aa,ab,ac,ad,ae,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred};return $f;}}};BT=function(d){var d,e,f,g,h,i,j;e=false;f=false;g=d;h=0;while(true){if(!(h<g.$length)){break;}i=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]);if(i>=128){return C.EqualFold;}j=(i&223)>>>0;if(j<65||j>90){e=true;}else if((j===75)||(j===83)){f=true;}h++;}if(f){return BU;}if(e){return BV;}return BW;};BU=function(d,e){var d,e,f,g,h,i,j,k,l,m,n;f=d;g=0;while(true){if(!(g<f.$length)){break;}h=((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]);if(e.$length===0){return false;}i=(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]);if(i<128){if(!((h===i))){j=(h&223)>>>0;if(65<=j&&j<=90){if(!((j===((i&223)>>>0)))){return false;}}else{return false;}}e=$subslice(e,1);g++;continue;}k=B.DecodeRune(e);l=k[0];m=k[1];n=h;if((n===(115))||(n===(83))){if(!((l===383))){return false;}}else if((n===(107))||(n===(75))){if(!((l===8490))){return false;}}else{return false;}e=$subslice(e,m);g++;}if(e.$length>0){return false;}return true;};BV=function(d,e){var d,e,f,g,h,i,j;if(!((d.$length===e.$length))){return false;}f=d;g=0;while(true){if(!(g<f.$length)){break;}h=g;i=((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]);j=((h<0||h>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+h]);if(i===j){g++;continue;}if((97<=i&&i<=122)||(65<=i&&i<=90)){if(!((((i&223)>>>0)===((j&223)>>>0)))){return false;}}else{return false;}g++;}return true;};BW=function(d,e){var d,e,f,g,h,i;if(!((d.$length===e.$length))){return false;}f=d;g=0;while(true){if(!(g<f.$length)){break;}h=g;i=((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]);if(!((((i&223)>>>0)===((((h<0||h>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+h])&223)>>>0)))){return false;}g++;}return true;};BX=function(d){var{d,e,f,g,h,i,$s,$r,$c}=$restore(this,{d});$s=$s||0;s:while(true){switch($s){case 0:e=CI();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;g=f.marshal(d,new CL.ptr(false,true));$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(!($interfaceIsEqual(h,$ifaceNil))){$s=-1;return[FA.nil,h];}i=$appendSlice((FA.nil),f.Buffer.Bytes());CH.Put(f);$s=-1;return[i,$ifaceNil];}return;}var $f={$blk:BX,$c:true,$r,d,e,f,g,h,i,$s};return $f;};$pkg.Marshal=BX;BZ=function(d,e){var{d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s,$r,$c}=$restore(this,{d,e});$s=$s||0;s:while(true){switch($s){case 0:f=0;g=e;h=0;case 1:if(!(h<g.$length)){$s=2;continue;}i=h;j=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]);if((j===60)||(j===62)||(j===38)){$s=3;continue;}$s=4;continue;case 3:if(f<i){$s=5;continue;}$s=6;continue;case 5:k=d.Write($subslice(e,f,i));$s=7;case 7:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;case 6:l=d.WriteString("\\u00");$s=8;case 8:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}l;m=d.WriteByte(CF.charCodeAt((j>>>4<<24>>>24)));$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;n=d.WriteByte(CF.charCodeAt(((j&15)>>>0)));$s=10;case 10:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;f=i+1>>0;case 4:if((j===226)&&(i+2>>0)<e.$length&&((o=i+1>>0,((o<0||o>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+o]))===128)&&((((p=i+2>>0,((p<0||p>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+p]))&~1)<<24>>>24)===168)){$s=11;continue;}$s=12;continue;case 11:if(f<i){$s=13;continue;}$s=14;continue;case 13:q=d.Write($subslice(e,f,i));$s=15;case 15:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;case 14:r=d.WriteString("\\u202");$s=16;case 16:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;t=d.WriteByte(CF.charCodeAt((((s=i+2>>0,((s<0||s>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+s]))&15)>>>0)));$s=17;case 17:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}t;f=i+3>>0;case 12:h++;$s=1;continue;case 2:if(f<e.$length){$s=18;continue;}$s=19;continue;case 18:u=d.Write($subslice(e,f));$s=20;case 20:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}u;case 19:$s=-1;return;}return;}var $f={$blk:BZ,$c:true,$r,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s};return $f;};$pkg.HTMLEscape=BZ;CB.ptr.prototype.Error=function(){var{d,e,f,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:d=this;e=d.Type.String();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f="json: unsupported type: "+e;$s=2;case 2:return f;}return;}var $f={$blk:CB.ptr.prototype.Error,$c:true,$r,d,e,f,$s};return $f;};CB.prototype.Error=function(){return this.$val.Error();};CC.ptr.prototype.Error=function(){var d;d=this;return"json: unsupported value: "+d.Str;};CC.prototype.Error=function(){return this.$val.Error();};CE.ptr.prototype.Error=function(){var{d,e,f,g,h,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:d=this;e=d.sourceFunc;if(e===""){e="MarshalJSON";}f=d.Type.String();$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=d.Err.Error();$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h="json: error calling "+e+" for type "+f+": "+g;$s=3;case 3:return h;}return;}var $f={$blk:CE.ptr.prototype.Error,$c:true,$r,d,e,f,g,h,$s};return $f;};CE.prototype.Error=function(){return this.$val.Error();};CE.ptr.prototype.Unwrap=function(){var d;d=this;return d.Err;};CE.prototype.Unwrap=function(){return this.$val.Unwrap();};CI=function(){var{d,e,f,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:d=CH.Get();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!($interfaceIsEqual(e,$ifaceNil))){f=$assertType(e,FH);f.Buffer.Reset();if((f.ptrSeen?f.ptrSeen.size:0)>0){$panic(new $String("ptrEncoder.encode should have emptied ptrSeen via defers"));}f.ptrLevel=0;$s=-1;return f;}$s=-1;return new CG.ptr(new C.Buffer.ptr(FA.nil,0,0),FI.zero(),0,new $global.Map());}return;}var $f={$blk:CI,$c:true,$r,d,e,f,$s};return $f;};CG.ptr.prototype.marshal=function(d,e){var{d,e,f,g,h,i,$s,$deferred,$r,$c}=$restore(this,{d,e});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);f=[f];f[0]=$ifaceNil;g=this;$deferred.push([(function(f){return function(){var h,i,j,k;h=$recover();if(!($interfaceIsEqual(h,$ifaceNil))){i=$assertType(h,CJ,true);j=$clone(i[0],CJ);k=i[1];if(k){f[0]=j.error;}else{$panic(h);}}};})(f),[]]);h=L.ValueOf(d);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$r=g.reflectValue($clone(h,L.Value),$clone(e,CL));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f[0]=$ifaceNil;i=f[0];$s=3;case 3:return i;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return f[0];}if($curGoroutine.asleep){var $f={$blk:CG.ptr.prototype.marshal,$c:true,$r,d,e,f,g,h,i,$s,$deferred};return $f;}}};CG.prototype.marshal=function(d,e){return this.$val.marshal(d,e);};CG.ptr.prototype.error=function(d){var d,e,f;e=this;$panic((f=new CJ.ptr(d),new f.constructor.elem(f)));};CG.prototype.error=function(d){return this.$val.error(d);};CK=function(d){var d,e,f,g;e=$clone(d,L.Value).Kind();if((e===(17))||(e===(21))||(e===(23))||(e===(24))){return $clone(d,L.Value).Len()===0;}else if(e===(1)){return!$clone(d,L.Value).Bool();}else if((e===(2))||(e===(3))||(e===(4))||(e===(5))||(e===(6))){return(f=$clone(d,L.Value).Int(),(f.$high===0&&f.$low===0));}else if((e===(7))||(e===(8))||(e===(9))||(e===(10))||(e===(11))||(e===(12))){return(g=$clone(d,L.Value).Uint(),(g.$high===0&&g.$low===0));}else if((e===(13))||(e===(14))){return $clone(d,L.Value).Float()===0;}else if((e===(20))||(e===(22))){return $clone(d,L.Value).IsNil();}return false;};CG.ptr.prototype.reflectValue=function(d,e){var{d,e,f,g,$s,$r,$c}=$restore(this,{d,e});$s=$s||0;s:while(true){switch($s){case 0:f=this;g=CO($clone(d,L.Value));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}$r=g(f,$clone(d,L.Value),$clone(e,CL));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:CG.ptr.prototype.reflectValue,$c:true,$r,d,e,f,g,$s};return $f;};CG.prototype.reflectValue=function(d,e){return this.$val.reflectValue(d,e);};CO=function(d){var{d,e,f,$s,$r,$c}=$restore(this,{d});$s=$s||0;s:while(true){switch($s){case 0:if(!$clone(d,L.Value).IsValid()){$s=-1;return CT;}e=CP($clone(d,L.Value).Type());$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$s=2;case 2:return f;}return;}var $f={$blk:CO,$c:true,$r,d,e,f,$s};return $f;};CP=function(d){var{d,e,f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{d});$s=$s||0;s:while(true){switch($s){case 0:e=[e];f=[f];g=CN.Load(d);h=g[0];i=g[1];if(i){$s=-1;return $assertType(h,CM);}f[0]=new G.WaitGroup.ptr(0);e[0]=$throwNilPointerError;f[0].Add(1);j=CN.LoadOrStore(d,new CM(((function(e,f){return function $b(k,l,m){var{k,l,m,$s,$r,$c}=$restore(this,{k,l,m});$s=$s||0;s:while(true){switch($s){case 0:f[0].Wait();$r=e[0](k,$clone(l,L.Value),$clone(m,CL));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:$b,$c:true,$r,k,l,m,$s};return $f;};})(e,f))));k=j[0];l=j[1];if(l){$s=-1;return $assertType(k,CM);}m=CS(d,true);$s=1;case 1:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}e[0]=m;f[0].Done();CN.Store(d,new CM(e[0]));$s=-1;return e[0];}return;}var $f={$blk:CP,$c:true,$r,d,e,f,g,h,i,j,k,l,m,$s};return $f;};CS=function(d,e){var{aa,ab,ac,ad,ae,af,ag,ah,ai,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{d,e});$s=$s||0;s:while(true){switch($s){case 0:g=d.Kind();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}if(!(!((g===22))&&e)){f=false;$s=3;continue s;}h=L.PointerTo(d).Implements(CQ);$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}f=h;case 3:if(f){$s=1;continue;}$s=2;continue;case 1:i=CV;j=CS(d,false);$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;l=DV(i,k);$s=7;case 7:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;$s=8;case 8:return m;case 2:n=d.Implements(CQ);$s=11;case 11:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}if(n){$s=9;continue;}$s=10;continue;case 9:$s=-1;return CU;case 10:p=d.Kind();$s=15;case 15:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}if(!(!((p===22))&&e)){o=false;$s=14;continue s;}q=L.PointerTo(d).Implements(CR);$s=16;case 16:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}o=q;case 14:if(o){$s=12;continue;}$s=13;continue;case 12:r=CX;s=CS(d,false);$s=17;case 17:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=s;u=DV(r,t);$s=18;case 18:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}v=u;$s=19;case 19:return v;case 13:w=d.Implements(CR);$s=22;case 22:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}if(w){$s=20;continue;}$s=21;continue;case 20:$s=-1;return CW;case 21:x=d.Kind();$s=24;case 24:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}y=x;if(y===(1)){$s=25;continue;}if((y===(2))||(y===(3))||(y===(4))||(y===(5))||(y===(6))){$s=26;continue;}if((y===(7))||(y===(8))||(y===(9))||(y===(10))||(y===(11))||(y===(12))){$s=27;continue;}if(y===(13)){$s=28;continue;}if(y===(14)){$s=29;continue;}if(y===(24)){$s=30;continue;}if(y===(20)){$s=31;continue;}if(y===(25)){$s=32;continue;}if(y===(21)){$s=33;continue;}if(y===(23)){$s=34;continue;}if(y===(17)){$s=35;continue;}if(y===(22)){$s=36;continue;}$s=37;continue;case 25:$s=-1;return CY;case 26:$s=-1;return CZ;case 27:$s=-1;return DA;case 28:$s=-1;return DC;case 29:$s=-1;return DD;case 30:$s=-1;return DE;case 31:$s=-1;return DG;case 32:z=DK(d);$s=39;case 39:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}aa=z;$s=40;case 40:return aa;case 33:ab=DM(d);$s=41;case 41:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ac=ab;$s=42;case 42:return ac;case 34:ad=DP(d);$s=43;case 43:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ae=ad;$s=44;case 44:return ae;case 35:af=DR(d);$s=45;case 45:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ag=af;$s=46;case 46:return ag;case 36:ah=DT(d);$s=47;case 47:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ai=ah;$s=48;case 48:return ai;case 37:$s=-1;return DH;case 38:case 23:$s=-1;return $throwNilPointerError;}return;}var $f={$blk:CS,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,ai,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};CT=function(d,e,f){var{d,e,f,g,$s,$r,$c}=$restore(this,{d,e,f});$s=$s||0;s:while(true){switch($s){case 0:g=d.Buffer.WriteString("null");$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=-1;return;}return;}var $f={$blk:CT,$c:true,$r,d,e,f,g,$s};return $f;};CU=function(d,e,f){var{d,e,f,g,h,i,j,k,l,m,n,o,p,q,$s,$r,$c}=$restore(this,{d,e,f});$s=$s||0;s:while(true){switch($s){case 0:if(($clone(e,L.Value).Kind()===22)&&$clone(e,L.Value).IsNil()){$s=1;continue;}$s=2;continue;case 1:g=d.Buffer.WriteString("null");$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=-1;return;case 2:i=$clone(e,L.Value).Interface();$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=$assertType(i,CA,true);j=h[0];k=h[1];if(!k){$s=5;continue;}$s=6;continue;case 5:l=d.Buffer.WriteString("null");$s=7;case 7:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}l;$s=-1;return;case 6:n=j.MarshalJSON();$s=8;case 8:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];p=m[1];if($interfaceIsEqual(p,$ifaceNil)){$s=9;continue;}$s=10;continue;case 9:q=BQ(d.Buffer,o,f.escapeHTML);$s=11;case 11:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}p=q;case 10:if(!($interfaceIsEqual(p,$ifaceNil))){d.error(new CE.ptr($clone(e,L.Value).Type(),p,"MarshalJSON"));}$s=-1;return;}return;}var $f={$blk:CU,$c:true,$r,d,e,f,g,h,i,j,k,l,m,n,o,p,q,$s};return $f;};CV=function(d,e,f){var{d,e,f,g,h,i,j,k,l,m,n,o,$s,$r,$c}=$restore(this,{d,e,f});$s=$s||0;s:while(true){switch($s){case 0:g=$clone(e,L.Value).Addr();if($clone(g,L.Value).IsNil()){$s=1;continue;}$s=2;continue;case 1:h=d.Buffer.WriteString("null");$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;$s=-1;return;case 2:i=$clone(g,L.Value).Interface();$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=$assertType(i,CA);l=j.MarshalJSON();$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;m=k[0];n=k[1];if($interfaceIsEqual(n,$ifaceNil)){$s=6;continue;}$s=7;continue;case 6:o=BQ(d.Buffer,m,f.escapeHTML);$s=8;case 8:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;case 7:if(!($interfaceIsEqual(n,$ifaceNil))){d.error(new CE.ptr($clone(e,L.Value).Type(),n,"MarshalJSON"));}$s=-1;return;}return;}var $f={$blk:CV,$c:true,$r,d,e,f,g,h,i,j,k,l,m,n,o,$s};return $f;};CW=function(d,e,f){var{d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r,$c}=$restore(this,{d,e,f});$s=$s||0;s:while(true){switch($s){case 0:if(($clone(e,L.Value).Kind()===22)&&$clone(e,L.Value).IsNil()){$s=1;continue;}$s=2;continue;case 1:g=d.Buffer.WriteString("null");$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=-1;return;case 2:i=$clone(e,L.Value).Interface();$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=$assertType(i,H.TextMarshaler,true);j=h[0];k=h[1];if(!k){$s=5;continue;}$s=6;continue;case 5:l=d.Buffer.WriteString("null");$s=7;case 7:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}l;$s=-1;return;case 6:n=j.MarshalText();$s=8;case 8:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;o=m[0];p=m[1];if(!($interfaceIsEqual(p,$ifaceNil))){d.error(new CE.ptr($clone(e,L.Value).Type(),p,"MarshalText"));}$r=d.stringBytes(o,f.escapeHTML);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:CW,$c:true,$r,d,e,f,g,h,i,j,k,l,m,n,o,p,$s};return $f;};CX=function(d,e,f){var{d,e,f,g,h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{d,e,f});$s=$s||0;s:while(true){switch($s){case 0:g=$clone(e,L.Value).Addr();if($clone(g,L.Value).IsNil()){$s=1;continue;}$s=2;continue;case 1:h=d.Buffer.WriteString("null");$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;$s=-1;return;case 2:i=$clone(g,L.Value).Interface();$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=$assertType(i,H.TextMarshaler);l=j.MarshalText();$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;m=k[0];n=k[1];if(!($interfaceIsEqual(n,$ifaceNil))){d.error(new CE.ptr($clone(e,L.Value).Type(),n,"MarshalText"));}$r=d.stringBytes(m,f.escapeHTML);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:CX,$c:true,$r,d,e,f,g,h,i,j,k,l,m,n,$s};return $f;};CY=function(d,e,f){var{d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{d,e,f});$s=$s||0;s:while(true){switch($s){case 0:if(f.quoted){$s=1;continue;}$s=2;continue;case 1:g=d.Buffer.WriteByte(34);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;case 2:if($clone(e,L.Value).Bool()){$s=4;continue;}$s=5;continue;case 4:h=d.Buffer.WriteString("true");$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;$s=6;continue;case 5:i=d.Buffer.WriteString("false");$s=8;case 8:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;case 6:if(f.quoted){$s=9;continue;}$s=10;continue;case 9:j=d.Buffer.WriteByte(34);$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;case 10:$s=-1;return;}return;}var $f={$blk:CY,$c:true,$r,d,e,f,g,h,i,j,$s};return $f;};CZ=function(d,e,f){var{d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{d,e,f});$s=$s||0;s:while(true){switch($s){case 0:g=F.AppendInt($subslice(new FA(d.scratch),0,0),$clone(e,L.Value).Int(),10);if(f.quoted){$s=1;continue;}$s=2;continue;case 1:h=d.Buffer.WriteByte(34);$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;case 2:i=d.Buffer.Write(g);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;if(f.quoted){$s=5;continue;}$s=6;continue;case 5:j=d.Buffer.WriteByte(34);$s=7;case 7:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;case 6:$s=-1;return;}return;}var $f={$blk:CZ,$c:true,$r,d,e,f,g,h,i,j,$s};return $f;};DA=function(d,e,f){var{d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{d,e,f});$s=$s||0;s:while(true){switch($s){case 0:g=F.AppendUint($subslice(new FA(d.scratch),0,0),$clone(e,L.Value).Uint(),10);if(f.quoted){$s=1;continue;}$s=2;continue;case 1:h=d.Buffer.WriteByte(34);$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;case 2:i=d.Buffer.Write(g);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;if(f.quoted){$s=5;continue;}$s=6;continue;case 5:j=d.Buffer.WriteByte(34);$s=7;case 7:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;case 6:$s=-1;return;}return;}var $f={$blk:DA,$c:true,$r,d,e,f,g,h,i,j,$s};return $f;};DB.prototype.encode=function(d,e,f){var{d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s,$r,$c}=$restore(this,{d,e,f});$s=$s||0;s:while(true){switch($s){case 0:g=this.$val;h=$clone(e,L.Value).Float();if(K.IsInf(h,0)||K.IsNaN(h)){d.error(new CC.ptr($clone(e,L.Value),F.FormatFloat(h,103,-1,((g>>0)))));}i=$subslice(new FA(d.scratch),0,0);j=K.Abs(h);k=102;if(!((j===0))){if((g===64)&&(j<1e-06||j>=1e+21)||(g===32)&&(($fround(j))<9.999999974752427e-07||($fround(j))>=1.0000000200408773e+21)){k=101;}}i=F.AppendFloat(i,h,k,-1,((g>>0)));if(k===101){l=i.$length;if(l>=4&&((m=l-4>>0,((m<0||m>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+m]))===101)&&((n=l-3>>0,((n<0||n>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+n]))===45)&&((o=l-2>>0,((o<0||o>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+o]))===48)){(q=l-2>>0,((q<0||q>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+q]=(p=l-1>>0,((p<0||p>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+p]))));i=$subslice(i,0,(l-1>>0));}}if(f.quoted){$s=1;continue;}$s=2;continue;case 1:r=d.Buffer.WriteByte(34);$s=3;case 3:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;case 2:s=d.Buffer.Write(i);$s=4;case 4:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;if(f.quoted){$s=5;continue;}$s=6;continue;case 5:t=d.Buffer.WriteByte(34);$s=7;case 7:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}t;case 6:$s=-1;return;}return;}var $f={$blk:DB.prototype.encode,$c:true,$r,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s};return $f;};$ptrType(DB).prototype.encode=function(d,e,f){return new DB(this.$get()).encode(d,e,f);};DE=function(d,e,f){var{d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r,$c}=$restore(this,{d,e,f});$s=$s||0;s:while(true){switch($s){case 0:if($interfaceIsEqual($clone(e,L.Value).Type(),ER)){$s=1;continue;}$s=2;continue;case 1:g=$clone(e,L.Value).String();$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(h===""){h="0";}if(!DF(h)){$s=4;continue;}$s=5;continue;case 4:i=J.Errorf("json: invalid number literal %q",new EV([new $String(h)]));$s=6;case 6:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}$r=d.error(i);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:if(f.quoted){$s=8;continue;}$s=9;continue;case 8:j=d.Buffer.WriteByte(34);$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;case 9:k=d.Buffer.WriteString(h);$s=11;case 11:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;if(f.quoted){$s=12;continue;}$s=13;continue;case 12:l=d.Buffer.WriteByte(34);$s=14;case 14:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}l;case 13:$s=-1;return;case 2:if(f.quoted){$s=15;continue;}$s=16;continue;case 15:m=CI();$s=18;case 18:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;o=$clone(e,L.Value).String();$s=19;case 19:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}$r=n.string(o,f.escapeHTML);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.stringBytes(n.Buffer.Bytes(),false);$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}CH.Put(n);$s=17;continue;case 16:p=$clone(e,L.Value).String();$s=22;case 22:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}$r=d.string(p,f.escapeHTML);$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 17:$s=-1;return;}return;}var $f={$blk:DE,$c:true,$r,d,e,f,g,h,i,j,k,l,m,n,o,p,$s};return $f;};DF=function(d){var d;if(d===""){return false;}if(d.charCodeAt(0)===45){d=$substring(d,1);if(d===""){return false;}}if((d.charCodeAt(0)===48)){d=$substring(d,1);}else if(49<=d.charCodeAt(0)&&d.charCodeAt(0)<=57){d=$substring(d,1);while(true){if(!(d.length>0&&48<=d.charCodeAt(0)&&d.charCodeAt(0)<=57)){break;}d=$substring(d,1);}}else{return false;}if(d.length>=2&&(d.charCodeAt(0)===46)&&48<=d.charCodeAt(1)&&d.charCodeAt(1)<=57){d=$substring(d,2);while(true){if(!(d.length>0&&48<=d.charCodeAt(0)&&d.charCodeAt(0)<=57)){break;}d=$substring(d,1);}}if(d.length>=2&&((d.charCodeAt(0)===101)||(d.charCodeAt(0)===69))){d=$substring(d,1);if((d.charCodeAt(0)===43)||(d.charCodeAt(0)===45)){d=$substring(d,1);if(d===""){return false;}}while(true){if(!(d.length>0&&48<=d.charCodeAt(0)&&d.charCodeAt(0)<=57)){break;}d=$substring(d,1);}}return d==="";};DG=function(d,e,f){var{d,e,f,g,h,$s,$r,$c}=$restore(this,{d,e,f});$s=$s||0;s:while(true){switch($s){case 0:if($clone(e,L.Value).IsNil()){$s=1;continue;}$s=2;continue;case 1:g=d.Buffer.WriteString("null");$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=-1;return;case 2:h=$clone(e,L.Value).Elem();$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}$r=d.reflectValue($clone(h,L.Value),$clone(f,CL));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:DG,$c:true,$r,d,e,f,g,h,$s};return $f;};DH=function(d,e,f){var d,e,f;d.error(new CB.ptr($clone(e,L.Value).Type()));};DI.ptr.prototype.encode=function(d,e,f){var{d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,$s,$r,$c}=$restore(this,{d,e,f});$s=$s||0;s:while(true){switch($s){case 0:g=this;h=123;i=g.fields.list;j=0;case 1:if(!(j<i.$length)){$s=2;continue;}k=j;m=(l=g.fields.list,((k<0||k>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+k]));n=e;o=m.index;p=0;case 3:if(!(p<o.$length)){$s=4;continue;}q=((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]);if($clone(n,L.Value).Kind()===22){$s=5;continue;}$s=6;continue;case 5:if($clone(n,L.Value).IsNil()){j++;$s=1;continue s;}r=$clone(n,L.Value).Elem();$s=7;case 7:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}n=r;case 6:s=$clone(n,L.Value).Field(q);$s=8;case 8:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}n=s;p++;$s=3;continue;case 4:if(m.omitEmpty&&CK($clone(n,L.Value))){j++;$s=1;continue;}t=d.Buffer.WriteByte(h);$s=9;case 9:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}t;h=44;if(f.escapeHTML){$s=10;continue;}$s=11;continue;case 10:u=d.Buffer.WriteString(m.nameEscHTML);$s=13;case 13:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}u;$s=12;continue;case 11:v=d.Buffer.WriteString(m.nameNonEsc);$s=14;case 14:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;case 12:f.quoted=m.quoted;$r=m.encoder(d,$clone(n,L.Value),$clone(f,CL));$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j++;$s=1;continue;case 2:if(h===123){$s=16;continue;}$s=17;continue;case 16:w=d.Buffer.WriteString("{}");$s=19;case 19:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;$s=18;continue;case 17:x=d.Buffer.WriteByte(125);$s=20;case 20:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}x;case 18:$s=-1;return;}return;}var $f={$blk:DI.ptr.prototype.encode,$c:true,$r,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,$s};return $f;};DI.prototype.encode=function(d,e,f){return this.$val.encode(d,e,f);};DK=function(d){var{d,e,f,$s,$r,$c}=$restore(this,{d});$s=$s||0;s:while(true){switch($s){case 0:e=EE(d);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=new DI.ptr($clone(e,DJ));$s=-1;return $methodVal($clone(f,DI),"encode");}return;}var $f={$blk:DK,$c:true,$r,d,e,f,$s};return $f;};DL.ptr.prototype.encode=function(d,e,f){var{aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r,$c}=$restore(this,{d,e,f});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);g=[g];h=this;if($clone(e,L.Value).IsNil()){$s=1;continue;}$s=2;continue;case 1:i=d.Buffer.WriteString("null");$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;$s=4;case 4:return;case 2:d.ptrLevel=d.ptrLevel+(1)>>>0;if(d.ptrLevel>1000){$s=5;continue;}$s=6;continue;case 5:j=$clone(e,L.Value).Pointer();k=(l=$mapIndex(d.ptrSeen,$emptyInterface.keyFor(new $Uintptr(j))),l!==undefined?[l.v,true]:[new FK.ptr(),false]);m=k[1];if(m){$s=7;continue;}$s=8;continue;case 7:n=J.Sprintf("encountered a cycle via %s",new EV([$clone(e,L.Value).Type()]));$s=9;case 9:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$r=d.error(new CC.ptr($clone(e,L.Value),n));$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 8:o=new $Uintptr(j);(d.ptrSeen||$throwRuntimeError("assignment to entry in nil map")).set($emptyInterface.keyFor(o),{k:o,v:new FK.ptr()});$deferred.push([function(p,q){$mapDelete(p,$emptyInterface.keyFor(q));},[d.ptrSeen,new $Uintptr(j)]]);case 6:r=d.Buffer.WriteByte(123);$s=11;case 11:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;g[0]=$makeSlice(FL,$clone(e,L.Value).Len());s=$clone(e,L.Value).MapRange();t=0;case 12:u=s.Next();$s=14;case 14:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}if(!(u)){$s=13;continue;}v=s.Key();$s=15;case 15:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}((t<0||t>=g[0].$length)?($throwRuntimeError("index out of range"),undefined):g[0].$array[g[0].$offset+t]).k=v;w=s.Value();$s=16;case 16:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}((t<0||t>=g[0].$length)?($throwRuntimeError("index out of range"),undefined):g[0].$array[g[0].$offset+t]).v=w;x=((t<0||t>=g[0].$length)?($throwRuntimeError("index out of range"),undefined):g[0].$array[g[0].$offset+t]).resolve();$s=17;case 17:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}y=x;if(!($interfaceIsEqual(y,$ifaceNil))){$s=18;continue;}$s=19;continue;case 18:z=$clone(e,L.Value).Type().String();$s=20;case 20:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}aa=new $String(z);ab=y.Error();$s=21;case 21:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ac=new $String(ab);ad=J.Errorf("json: encoding error for type %q: %q",new EV([aa,ac]));$s=22;case 22:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}$r=d.error(ad);$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 19:t=t+(1)>>0;$s=12;continue;case 13:$r=M.Slice(g[0],(function(g){return function(ae,af){var ae,af;return((ae<0||ae>=g[0].$length)?($throwRuntimeError("index out of range"),undefined):g[0].$array[g[0].$offset+ae]).ks<((af<0||af>=g[0].$length)?($throwRuntimeError("index out of range"),undefined):g[0].$array[g[0].$offset+af]).ks;};})(g));$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ae=g[0];af=0;case 25:if(!(af<ae.$length)){$s=26;continue;}ag=af;ah=$clone(((af<0||af>=ae.$length)?($throwRuntimeError("index out of range"),undefined):ae.$array[ae.$offset+af]),DY);if(ag>0){$s=27;continue;}$s=28;continue;case 27:ai=d.Buffer.WriteByte(44);$s=29;case 29:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}ai;case 28:$r=d.string(ah.ks,f.escapeHTML);$s=30;case 30:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}aj=d.Buffer.WriteByte(58);$s=31;case 31:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}aj;$r=h.elemEnc(d,$clone(ah.v,L.Value),$clone(f,CL));$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}af++;$s=25;continue;case 26:ak=d.Buffer.WriteByte(125);$s=33;case 33:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ak;d.ptrLevel=d.ptrLevel-(1)>>>0;$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:DL.ptr.prototype.encode,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred};return $f;}}};DL.prototype.encode=function(d,e,f){return this.$val.encode(d,e,f);};DM=function(d){var{d,e,f,g,h,i,j,k,l,$s,$r,$c}=$restore(this,{d});$s=$s||0;s:while(true){switch($s){case 0:e=d.Key();$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e.Kind();$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if((g===(24))||(g===(2))||(g===(3))||(g===(4))||(g===(5))||(g===(6))||(g===(7))||(g===(8))||(g===(9))||(g===(10))||(g===(11))||(g===(12))){$s=4;continue;}h=d.Key();$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h.Implements(CR);$s=8;case 8:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}if(!i){$s=5;continue;}$s=6;continue;case 4:$s=6;continue;case 5:$s=-1;return DH;case 6:case 1:j=d.Elem();$s=9;case 9:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=CP(j);$s=10;case 10:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=new DL.ptr(k);$s=-1;return $methodVal($clone(l,DL),"encode");}return;}var $f={$blk:DM,$c:true,$r,d,e,f,g,h,i,j,k,l,$s};return $f;};DN=function(d,e,f){var{d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$r,$c}=$restore(this,{d,e,f});$s=$s||0;s:while(true){switch($s){case 0:if($clone(e,L.Value).IsNil()){$s=1;continue;}$s=2;continue;case 1:g=d.Buffer.WriteString("null");$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=-1;return;case 2:h=$clone(e,L.Value).Bytes();$s=4;case 4:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;j=d.Buffer.WriteByte(34);$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;k=I.StdEncoding.EncodedLen(i.$length);if(k<=64){$s=6;continue;}if(k<=1024){$s=7;continue;}$s=8;continue;case 6:l=$subslice(new FA(d.scratch),0,k);I.StdEncoding.Encode(l,i);m=d.Buffer.Write(l);$s=10;case 10:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;$s=9;continue;case 7:n=$makeSlice(FA,k);I.StdEncoding.Encode(n,i);o=d.Buffer.Write(n);$s=11;case 11:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}o;$s=9;continue;case 8:p=I.NewEncoder(I.StdEncoding,d);q=p.Write(i);$s=12;case 12:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;r=p.Close();$s=13;case 13:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;case 9:s=d.Buffer.WriteByte(34);$s=14;case 14:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;$s=-1;return;}return;}var $f={$blk:DN,$c:true,$r,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s};return $f;};DO.ptr.prototype.encode=function(d,e,f){var{d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$deferred,$r,$c}=$restore(this,{d,e,f});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);g=this;if($clone(e,L.Value).IsNil()){$s=1;continue;}$s=2;continue;case 1:h=d.Buffer.WriteString("null");$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;$s=4;case 4:return;case 2:d.ptrLevel=d.ptrLevel+(1)>>>0;if(d.ptrLevel>1000){$s=5;continue;}$s=6;continue;case 5:i=new FM.ptr($clone(e,L.Value).Pointer(),$clone(e,L.Value).Len());j=(k=$mapIndex(d.ptrSeen,$emptyInterface.keyFor(new i.constructor.elem(i))),k!==undefined?[k.v,true]:[new FK.ptr(),false]);l=j[1];if(l){$s=7;continue;}$s=8;continue;case 7:m=J.Sprintf("encountered a cycle via %s",new EV([$clone(e,L.Value).Type()]));$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}$r=d.error(new CC.ptr($clone(e,L.Value),m));$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 8:n=new i.constructor.elem(i);(d.ptrSeen||$throwRuntimeError("assignment to entry in nil map")).set($emptyInterface.keyFor(n),{k:n,v:new FK.ptr()});$deferred.push([function(o,p){$mapDelete(o,$emptyInterface.keyFor(p));},[d.ptrSeen,new i.constructor.elem(i)]]);case 6:$r=g.arrayEnc(d,$clone(e,L.Value),$clone(f,CL));$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.ptrLevel=d.ptrLevel-(1)>>>0;$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:DO.ptr.prototype.encode,$c:true,$r,d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$deferred};return $f;}}};DO.prototype.encode=function(d,e,f){return this.$val.encode(d,e,f);};DP=function(d){var{d,e,f,g,h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{d});$s=$s||0;s:while(true){switch($s){case 0:e=d.Elem();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e.Kind();$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if(f===8){$s=1;continue;}$s=2;continue;case 1:g=d.Elem();$s=5;case 5:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=L.PointerTo(g);$s=6;case 6:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;k=i.Implements(CQ);$s=10;case 10:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(!(!k)){j=false;$s=9;continue s;}l=i.Implements(CR);$s=11;case 11:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}j=!l;case 9:if(j){$s=7;continue;}$s=8;continue;case 7:$s=-1;return DN;case 8:case 2:m=DR(d);$s=12;case 12:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=new DO.ptr(m);$s=-1;return $methodVal($clone(n,DO),"encode");}return;}var $f={$blk:DP,$c:true,$r,d,e,f,g,h,i,j,k,l,m,n,$s};return $f;};DQ.ptr.prototype.encode=function(d,e,f){var{d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r,$c}=$restore(this,{d,e,f});$s=$s||0;s:while(true){switch($s){case 0:g=this;h=d.Buffer.WriteByte(91);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;i=$clone(e,L.Value).Len();j=0;case 2:if(!(j<i)){$s=3;continue;}if(j>0){$s=4;continue;}$s=5;continue;case 4:k=d.Buffer.WriteByte(44);$s=6;case 6:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;case 5:l=d;m=$clone(e,L.Value).Index(j);$s=7;case 7:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=$clone(m,L.Value);o=$clone(f,CL);$r=g.elemEnc(l,n,o);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=j+(1)>>0;$s=2;continue;case 3:p=d.Buffer.WriteByte(93);$s=9;case 9:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;$s=-1;return;}return;}var $f={$blk:DQ.ptr.prototype.encode,$c:true,$r,d,e,f,g,h,i,j,k,l,m,n,o,p,$s};return $f;};DQ.prototype.encode=function(d,e,f){return this.$val.encode(d,e,f);};DR=function(d){var{d,e,f,g,$s,$r,$c}=$restore(this,{d});$s=$s||0;s:while(true){switch($s){case 0:e=d.Elem();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=CP(e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=new DQ.ptr(f);$s=-1;return $methodVal($clone(g,DQ),"encode");}return;}var $f={$blk:DR,$c:true,$r,d,e,f,g,$s};return $f;};DS.ptr.prototype.encode=function(d,e,f){var{d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s,$deferred,$r,$c}=$restore(this,{d,e,f});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);g=this;if($clone(e,L.Value).IsNil()){$s=1;continue;}$s=2;continue;case 1:h=d.Buffer.WriteString("null");$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;$s=4;case 4:return;case 2:d.ptrLevel=d.ptrLevel+(1)>>>0;if(d.ptrLevel>1000){$s=5;continue;}$s=6;continue;case 5:i=$clone(e,L.Value).Interface();$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;k=(l=$mapIndex(d.ptrSeen,$emptyInterface.keyFor(j)),l!==undefined?[l.v,true]:[new FK.ptr(),false]);m=k[1];if(m){$s=8;continue;}$s=9;continue;case 8:n=J.Sprintf("encountered a cycle via %s",new EV([$clone(e,L.Value).Type()]));$s=10;case 10:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}$r=d.error(new CC.ptr($clone(e,L.Value),n));$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 9:o=j;(d.ptrSeen||$throwRuntimeError("assignment to entry in nil map")).set($emptyInterface.keyFor(o),{k:o,v:new FK.ptr()});$deferred.push([function(p,q){$mapDelete(p,$emptyInterface.keyFor(q));},[d.ptrSeen,j]]);case 6:r=d;s=$clone(e,L.Value).Elem();$s=12;case 12:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=$clone(s,L.Value);u=$clone(f,CL);$r=g.elemEnc(r,t,u);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.ptrLevel=d.ptrLevel-(1)>>>0;$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:DS.ptr.prototype.encode,$c:true,$r,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s,$deferred};return $f;}}};DS.prototype.encode=function(d,e,f){return this.$val.encode(d,e,f);};DT=function(d){var{d,e,f,g,$s,$r,$c}=$restore(this,{d});$s=$s||0;s:while(true){switch($s){case 0:e=d.Elem();$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=CP(e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=new DS.ptr(f);$s=-1;return $methodVal($clone(g,DS),"encode");}return;}var $f={$blk:DT,$c:true,$r,d,e,f,g,$s};return $f;};DU.ptr.prototype.encode=function(d,e,f){var{d,e,f,g,$s,$r,$c}=$restore(this,{d,e,f});$s=$s||0;s:while(true){switch($s){case 0:g=this;if($clone(e,L.Value).CanAddr()){$s=1;continue;}$s=2;continue;case 1:$r=g.canAddrEnc(d,$clone(e,L.Value),$clone(f,CL));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=g.elseEnc(d,$clone(e,L.Value),$clone(f,CL));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return;}return;}var $f={$blk:DU.ptr.prototype.encode,$c:true,$r,d,e,f,g,$s};return $f;};DU.prototype.encode=function(d,e,f){return this.$val.encode(d,e,f);};DV=function(d,e){var d,e,f;f=new DU.ptr(d,e);return $methodVal($clone(f,DU),"encode");};DW=function(d){var d,e,f,g,h;if(d===""){return false;}e=d;f=0;while(true){if(!(f<e.length)){break;}g=$decodeRune(e,f);h=g[0];if(A.ContainsRune("!#$%&()*+-./:;<=>?@[]^_{|}~ ",h)){}else if(!N.IsLetter(h)&&!N.IsDigit(h)){return false;}f+=g[1];}return true;};DX=function(d,e){var{d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{d,e});$s=$s||0;s:while(true){switch($s){case 0:f=e;g=0;case 1:if(!(g<f.$length)){$s=2;continue;}h=((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]);i=d.Kind();$s=5;case 5:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}if(i===22){$s=3;continue;}$s=4;continue;case 3:j=d.Elem();$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}d=j;case 4:k=d.Field(h);$s=7;case 7:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}d=k.Type;g++;$s=1;continue;case 2:$s=-1;return d;}return;}var $f={$blk:DX,$c:true,$r,d,e,f,g,h,i,j,k,$s};return $f;};DY.ptr.prototype.resolve=function(){var{d,e,f,g,h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:d=this;if($clone(d.k,L.Value).Kind()===24){$s=1;continue;}$s=2;continue;case 1:e=$clone(d.k,L.Value).String();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d.ks=e;$s=-1;return $ifaceNil;case 2:g=$clone(d.k,L.Value).Interface();$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=$assertType(g,H.TextMarshaler,true);h=f[0];i=f[1];if(i){$s=5;continue;}$s=6;continue;case 5:if(($clone(d.k,L.Value).Kind()===22)&&$clone(d.k,L.Value).IsNil()){$s=-1;return $ifaceNil;}k=h.MarshalText();$s=7;case 7:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;l=j[0];m=j[1];d.ks=($bytesToString(l));$s=-1;return m;case 6:n=$clone(d.k,L.Value).Kind();if((n===(2))||(n===(3))||(n===(4))||(n===(5))||(n===(6))){d.ks=F.FormatInt($clone(d.k,L.Value).Int(),10);$s=-1;return $ifaceNil;}else if((n===(7))||(n===(8))||(n===(9))||(n===(10))||(n===(11))||(n===(12))){d.ks=F.FormatUint($clone(d.k,L.Value).Uint(),10);$s=-1;return $ifaceNil;}$panic(new $String("unexpected map key type"));$s=-1;return $ifaceNil;}return;}var $f={$blk:DY.ptr.prototype.resolve,$c:true,$r,d,e,f,g,h,i,j,k,l,m,n,$s};return $f;};DY.prototype.resolve=function(){return this.$val.resolve();};CG.ptr.prototype.string=function(d,e){var{aa,ab,ac,ad,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{d,e});$s=$s||0;s:while(true){switch($s){case 0:f=this;g=f.Buffer.WriteByte(34);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;h=0;i=0;case 2:if(!(i<d.length)){$s=3;continue;}j=d.charCodeAt(i);if(j<128){$s=4;continue;}$s=5;continue;case 4:if(((j<0||j>=S.length)?($throwRuntimeError("index out of range"),undefined):S[j])||(!e&&((j<0||j>=R.length)?($throwRuntimeError("index out of range"),undefined):R[j]))){i=i+(1)>>0;$s=2;continue;}if(h<i){$s=6;continue;}$s=7;continue;case 6:k=f.Buffer.WriteString($substring(d,h,i));$s=8;case 8:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;case 7:l=f.Buffer.WriteByte(92);$s=9;case 9:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}l;m=j;if((m===(92))||(m===(34))){$s=11;continue;}if(m===(10)){$s=12;continue;}if(m===(13)){$s=13;continue;}if(m===(9)){$s=14;continue;}$s=15;continue;case 11:n=f.Buffer.WriteByte(j);$s=17;case 17:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;$s=16;continue;case 12:o=f.Buffer.WriteByte(110);$s=18;case 18:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}o;$s=16;continue;case 13:p=f.Buffer.WriteByte(114);$s=19;case 19:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;$s=16;continue;case 14:q=f.Buffer.WriteByte(116);$s=20;case 20:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;$s=16;continue;case 15:r=f.Buffer.WriteString("u00");$s=21;case 21:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;s=f.Buffer.WriteByte(CF.charCodeAt((j>>>4<<24>>>24)));$s=22;case 22:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;t=f.Buffer.WriteByte(CF.charCodeAt(((j&15)>>>0)));$s=23;case 23:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}t;case 16:case 10:i=i+(1)>>0;h=i;$s=2;continue;case 5:u=B.DecodeRuneInString($substring(d,i));v=u[0];w=u[1];if((v===65533)&&(w===1)){$s=24;continue;}$s=25;continue;case 24:if(h<i){$s=26;continue;}$s=27;continue;case 26:x=f.Buffer.WriteString($substring(d,h,i));$s=28;case 28:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}x;case 27:y=f.Buffer.WriteString("\\ufffd");$s=29;case 29:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}y;i=i+(w)>>0;h=i;$s=2;continue;case 25:if((v===8232)||(v===8233)){$s=30;continue;}$s=31;continue;case 30:if(h<i){$s=32;continue;}$s=33;continue;case 32:z=f.Buffer.WriteString($substring(d,h,i));$s=34;case 34:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}z;case 33:aa=f.Buffer.WriteString("\\u202");$s=35;case 35:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;ab=f.Buffer.WriteByte(CF.charCodeAt((v&15)));$s=36;case 36:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ab;i=i+(w)>>0;h=i;$s=2;continue;case 31:i=i+(w)>>0;$s=2;continue;case 3:if(h<d.length){$s=37;continue;}$s=38;continue;case 37:ac=f.Buffer.WriteString($substring(d,h));$s=39;case 39:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ac;case 38:ad=f.Buffer.WriteByte(34);$s=40;case 40:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ad;$s=-1;return;}return;}var $f={$blk:CG.ptr.prototype.string,$c:true,$r,aa,ab,ac,ad,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};CG.prototype.string=function(d,e){return this.$val.string(d,e);};CG.ptr.prototype.stringBytes=function(d,e){var{aa,ab,ac,ad,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{d,e});$s=$s||0;s:while(true){switch($s){case 0:f=this;g=f.Buffer.WriteByte(34);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;h=0;i=0;case 2:if(!(i<d.$length)){$s=3;continue;}j=((i<0||i>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+i]);if(j<128){$s=4;continue;}$s=5;continue;case 4:if(((j<0||j>=S.length)?($throwRuntimeError("index out of range"),undefined):S[j])||(!e&&((j<0||j>=R.length)?($throwRuntimeError("index out of range"),undefined):R[j]))){i=i+(1)>>0;$s=2;continue;}if(h<i){$s=6;continue;}$s=7;continue;case 6:k=f.Buffer.Write($subslice(d,h,i));$s=8;case 8:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;case 7:l=f.Buffer.WriteByte(92);$s=9;case 9:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}l;m=j;if((m===(92))||(m===(34))){$s=11;continue;}if(m===(10)){$s=12;continue;}if(m===(13)){$s=13;continue;}if(m===(9)){$s=14;continue;}$s=15;continue;case 11:n=f.Buffer.WriteByte(j);$s=17;case 17:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;$s=16;continue;case 12:o=f.Buffer.WriteByte(110);$s=18;case 18:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}o;$s=16;continue;case 13:p=f.Buffer.WriteByte(114);$s=19;case 19:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;$s=16;continue;case 14:q=f.Buffer.WriteByte(116);$s=20;case 20:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;$s=16;continue;case 15:r=f.Buffer.WriteString("u00");$s=21;case 21:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;s=f.Buffer.WriteByte(CF.charCodeAt((j>>>4<<24>>>24)));$s=22;case 22:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;t=f.Buffer.WriteByte(CF.charCodeAt(((j&15)>>>0)));$s=23;case 23:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}t;case 16:case 10:i=i+(1)>>0;h=i;$s=2;continue;case 5:u=B.DecodeRune($subslice(d,i));v=u[0];w=u[1];if((v===65533)&&(w===1)){$s=24;continue;}$s=25;continue;case 24:if(h<i){$s=26;continue;}$s=27;continue;case 26:x=f.Buffer.Write($subslice(d,h,i));$s=28;case 28:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}x;case 27:y=f.Buffer.WriteString("\\ufffd");$s=29;case 29:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}y;i=i+(w)>>0;h=i;$s=2;continue;case 25:if((v===8232)||(v===8233)){$s=30;continue;}$s=31;continue;case 30:if(h<i){$s=32;continue;}$s=33;continue;case 32:z=f.Buffer.Write($subslice(d,h,i));$s=34;case 34:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}z;case 33:aa=f.Buffer.WriteString("\\u202");$s=35;case 35:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;ab=f.Buffer.WriteByte(CF.charCodeAt((v&15)));$s=36;case 36:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}ab;i=i+(w)>>0;h=i;$s=2;continue;case 31:i=i+(w)>>0;$s=2;continue;case 3:if(h<d.$length){$s=37;continue;}$s=38;continue;case 37:ac=f.Buffer.Write($subslice(d,h));$s=39;case 39:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ac;case 38:ad=f.Buffer.WriteByte(34);$s=40;case 40:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ad;$s=-1;return;}return;}var $f={$blk:CG.ptr.prototype.stringBytes,$c:true,$r,aa,ab,ac,ad,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};CG.prototype.stringBytes=function(d,e){return this.$val.stringBytes(d,e);};EA.prototype.Len=function(){var d;d=this;return d.$length;};$ptrType(EA).prototype.Len=function(){return this.$get().Len();};EA.prototype.Swap=function(d,e){var d,e,f,g,h;f=this;g=$clone(((e<0||e>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+e]),DZ);h=$clone(((d<0||d>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+d]),DZ);DZ.copy(((d<0||d>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+d]),g);DZ.copy(((e<0||e>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+e]),h);};$ptrType(EA).prototype.Swap=function(d,e){return this.$get().Swap(d,e);};EA.prototype.Less=function(d,e){var d,e,f,g,h,i,j,k,l;f=this;g=((d<0||d>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+d]).index;h=0;while(true){if(!(h<g.$length)){break;}i=h;j=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]);if(i>=((e<0||e>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+e]).index.$length){return false;}if(!((j===(k=((e<0||e>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+e]).index,((i<0||i>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+i]))))){return j<(l=((e<0||e>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+e]).index,((i<0||i>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+i]));}h++;}return((d<0||d>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+d]).index.$length<((e<0||e>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+e]).index.$length;};$ptrType(EA).prototype.Less=function(d,e){return this.$get().Less(d,e);};EB=function(d){var{aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{d});$s=$s||0;s:while(true){switch($s){case 0:e=[e];f=[f];g=new FJ([]);h=new FJ([new DZ.ptr("",FA.nil,$throwNilPointerError,"","",false,EX.nil,d,false,false,$throwNilPointerError)]);i=false;j=false;k=i;l=j;m=$makeMap(L.Type.keyFor,[]);e[0]=FJ.nil;f[0]=new C.Buffer.ptr(FA.nil,0,0);case 1:if(!(h.$length>0)){$s=2;continue;}n=h;o=$subslice(g,0,0);g=n;h=o;p=l;q=$makeMap(L.Type.keyFor,[]);k=p;l=q;r=g;s=0;case 3:if(!(s<r.$length)){$s=4;continue;}t=$clone(((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]),DZ);if((u=$mapIndex(m,L.Type.keyFor(t.typ)),u!==undefined?u.v:false)){s++;$s=3;continue;}v=t.typ;(m||$throwRuntimeError("assignment to entry in nil map")).set(L.Type.keyFor(v),{k:v,v:true});w=0;case 5:x=t.typ.NumField();$s=7;case 7:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}if(!(w<x)){$s=6;continue;}y=t.typ.Field(w);$s=8;case 8:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=$clone(y,L.StructField);if(z.Anonymous){$s=9;continue;}if(!$clone(z,L.StructField).IsExported()){$s=10;continue;}$s=11;continue;case 9:aa=z.Type;ab=aa.Kind();$s=14;case 14:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}if(ab===22){$s=12;continue;}$s=13;continue;case 12:ac=aa.Elem();$s=15;case 15:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}aa=ac;case 13:if(!(!$clone(z,L.StructField).IsExported())){ad=false;$s=18;continue s;}ae=aa.Kind();$s=19;case 19:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}ad=!((ae===25));case 18:if(ad){$s=16;continue;}$s=17;continue;case 16:w=w+(1)>>0;$s=5;continue;case 17:$s=11;continue;case 10:w=w+(1)>>0;$s=5;continue;case 11:af=new L.StructTag(z.Tag).Get("json");if(af==="-"){w=w+(1)>>0;$s=5;continue;}ag=Q(af);ah=ag[0];ai=ag[1];if(!DW(ah)){ah="";}aj=$makeSlice(EX,(t.index.$length+1>>0));$copySlice(aj,t.index);(ak=t.index.$length,((ak<0||ak>=aj.$length)?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+ak]=w));al=z.Type;an=al.Name();$s=23;case 23:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}if(!(an==="")){am=false;$s=22;continue s;}ao=al.Kind();$s=24;case 24:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}am=ao===22;case 22:if(am){$s=20;continue;}$s=21;continue;case 20:ap=al.Elem();$s=25;case 25:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}al=ap;case 21:aq=false;if(new P(ai).Contains("string")){$s=26;continue;}$s=27;continue;case 26:ar=al.Kind();$s=29;case 29:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}as=ar;if((as===(1))||(as===(2))||(as===(3))||(as===(4))||(as===(5))||(as===(6))||(as===(7))||(as===(8))||(as===(9))||(as===(10))||(as===(11))||(as===(12))||(as===(13))||(as===(14))||(as===(24))){aq=true;}case 28:case 27:if(!(ah==="")||!z.Anonymous){at=true;$s=32;continue s;}au=al.Kind();$s=33;case 33:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}at=!((au===25));case 32:if(at){$s=30;continue;}$s=31;continue;case 30:av=!(ah==="");if(ah===""){ah=z.Name;}aw=new DZ.ptr(ah,FA.nil,$throwNilPointerError,"","",av,aj,al,new P(ai).Contains("omitempty"),aq,$throwNilPointerError);aw.nameBytes=(new FA($stringToBytes(aw.name)));aw.equalFold=BT(aw.nameBytes);f[0].Reset();ax=f[0].WriteString("\"");$s=34;case 34:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}ax;$r=BZ(f[0],aw.nameBytes);$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ay=f[0].WriteString("\":");$s=36;case 36:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}ay;aw.nameEscHTML=f[0].String();aw.nameNonEsc="\""+aw.name+"\":";e[0]=$append(e[0],aw);if((az=$mapIndex(k,L.Type.keyFor(t.typ)),az!==undefined?az.v:0)>1){e[0]=$append(e[0],(ba=e[0].$length-1>>0,((ba<0||ba>=e[0].$length)?($throwRuntimeError("index out of range"),undefined):e[0].$array[e[0].$offset+ba])));}w=w+(1)>>0;$s=5;continue;case 31:bb=al;(l||$throwRuntimeError("assignment to entry in nil map")).set(L.Type.keyFor(bb),{k:bb,v:(bc=$mapIndex(l,L.Type.keyFor(al)),bc!==undefined?bc.v:0)+(1)>>0});if((bd=$mapIndex(l,L.Type.keyFor(al)),bd!==undefined?bd.v:0)===1){$s=37;continue;}$s=38;continue;case 37:be=al.Name();$s=39;case 39:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}h=$append(h,new DZ.ptr(be,FA.nil,$throwNilPointerError,"","",false,aj,al,false,false,$throwNilPointerError));case 38:w=w+(1)>>0;$s=5;continue;case 6:s++;$s=3;continue;case 4:$s=1;continue;case 2:$r=M.Slice(e[0],(function(e,f){return function(bf,bg){var bf,bg,bh;bh=e[0];if(!(((bf<0||bf>=bh.$length)?($throwRuntimeError("index out of range"),undefined):bh.$array[bh.$offset+bf]).name===((bg<0||bg>=bh.$length)?($throwRuntimeError("index out of range"),undefined):bh.$array[bh.$offset+bg]).name)){return((bf<0||bf>=bh.$length)?($throwRuntimeError("index out of range"),undefined):bh.$array[bh.$offset+bf]).name<((bg<0||bg>=bh.$length)?($throwRuntimeError("index out of range"),undefined):bh.$array[bh.$offset+bg]).name;}if(!((((bf<0||bf>=bh.$length)?($throwRuntimeError("index out of range"),undefined):bh.$array[bh.$offset+bf]).index.$length===((bg<0||bg>=bh.$length)?($throwRuntimeError("index out of range"),undefined):bh.$array[bh.$offset+bg]).index.$length))){return((bf<0||bf>=bh.$length)?($throwRuntimeError("index out of range"),undefined):bh.$array[bh.$offset+bf]).index.$length<((bg<0||bg>=bh.$length)?($throwRuntimeError("index out of range"),undefined):bh.$array[bh.$offset+bg]).index.$length;}if(!(((bf<0||bf>=bh.$length)?($throwRuntimeError("index out of range"),undefined):bh.$array[bh.$offset+bf]).tag===((bg<0||bg>=bh.$length)?($throwRuntimeError("index out of range"),undefined):bh.$array[bh.$offset+bg]).tag)){return((bf<0||bf>=bh.$length)?($throwRuntimeError("index out of range"),undefined):bh.$array[bh.$offset+bf]).tag;}return($convertSliceType(bh,EA)).Less(bf,bg);};})(e,f));$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bf=$subslice(e[0],0,0);bg=0;bh=0;bi=bg;bj=bh;while(true){if(!(bj<e[0].$length)){break;}bk=$clone(((bj<0||bj>=e[0].$length)?($throwRuntimeError("index out of range"),undefined):e[0].$array[e[0].$offset+bj]),DZ);bl=bk.name;bi=1;while(true){if(!((bj+bi>>0)<e[0].$length)){break;}bn=$clone((bm=bj+bi>>0,((bm<0||bm>=e[0].$length)?($throwRuntimeError("index out of range"),undefined):e[0].$array[e[0].$offset+bm])),DZ);if(!(bn.name===bl)){break;}bi=bi+(1)>>0;}if(bi===1){bf=$append(bf,bk);bj=bj+(bi)>>0;continue;}bo=EC($subslice(e[0],bj,(bj+bi>>0)));bp=$clone(bo[0],DZ);bq=bo[1];if(bq){bf=$append(bf,bp);}bj=bj+(bi)>>0;}e[0]=bf;$r=M.Sort(($convertSliceType(e[0],EA)));$s=41;case 41:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}br=e[0];bs=0;case 42:if(!(bs<br.$length)){$s=43;continue;}bt=bs;bu=((bt<0||bt>=e[0].$length)?($throwRuntimeError("index out of range"),undefined):e[0].$array[e[0].$offset+bt]);bv=DX(d,bu.index);$s=44;case 44:if($c){$c=false;bv=bv.$blk();}if(bv&&bv.$blk!==undefined){break s;}bw=CP(bv);$s=45;case 45:if($c){$c=false;bw=bw.$blk();}if(bw&&bw.$blk!==undefined){break s;}bu.encoder=bw;bs++;$s=42;continue;case 43:by=(bx=e[0].$length,((bx<0||bx>2147483647)?$throwRuntimeError("makemap: size out of range"):new $global.Map()));bz=e[0];ca=0;while(true){if(!(ca<bz.$length)){break;}cb=ca;cc=$clone(((ca<0||ca>=bz.$length)?($throwRuntimeError("index out of range"),undefined):bz.$array[bz.$offset+ca]),DZ);cd=cc.name;(by||$throwRuntimeError("assignment to entry in nil map")).set($String.keyFor(cd),{k:cd,v:cb});ca++;}$s=-1;return new DJ.ptr(e[0],by);}return;}var $f={$blk:EB,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,ca,cb,cc,cd,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};EC=function(d){var d;if(d.$length>1&&((0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]).index.$length===(1>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+1]).index.$length)&&(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]).tag===(1>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+1]).tag){return[new DZ.ptr("",FA.nil,$throwNilPointerError,"","",false,EX.nil,$ifaceNil,false,false,$throwNilPointerError),false];}return[(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]),true];};EE=function(d){var{d,e,f,g,h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{d});$s=$s||0;s:while(true){switch($s){case 0:e=ED.Load(d);f=e[0];g=e[1];if(g){$s=-1;return $assertType(f,DJ);}i=d;k=EB(d);$s=1;case 1:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=(j=k,new j.constructor.elem(j));m=ED.LoadOrStore(i,l);$s=2;case 2:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}h=m;n=h[0];$s=-1;return $assertType(n,DJ);}return;}var $f={$blk:EE,$c:true,$r,d,e,f,g,h,i,j,k,l,m,n,$s};return $f;};EK.prototype.String=function(){var d;d=this.$val;return(d);};$ptrType(EK).prototype.String=function(){return new EK(this.$get()).String();};EK.prototype.Float64=function(){var d;d=this.$val;return F.ParseFloat((d),64);};$ptrType(EK).prototype.Float64=function(){return new EK(this.$get()).Float64();};EK.prototype.Int64=function(){var d;d=this.$val;return F.ParseInt((d),10,64);};$ptrType(EK).prototype.Int64=function(){return new EK(this.$get()).Int64();};P.methods=[{prop:"Contains",name:"Contains",pkg:"",typ:$funcType([$String],[$Bool],false)}];FU.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];FG.methods=[{prop:"reset",name:"reset",pkg:"encoding/json",typ:$funcType([],[],false)},{prop:"eof",name:"eof",pkg:"encoding/json",typ:$funcType([],[$Int],false)},{prop:"pushParseState",name:"pushParseState",pkg:"encoding/json",typ:$funcType([$Uint8,$Int,$Int],[$Int],false)},{prop:"popParseState",name:"popParseState",pkg:"encoding/json",typ:$funcType([],[],false)},{prop:"error",name:"error",pkg:"encoding/json",typ:$funcType([$Uint8,$String],[$Int],false)}];FW.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];FX.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)}];FZ.methods=[{prop:"Error",name:"Error",pkg:"",typ:$funcType([],[$String],false)},{prop:"Unwrap",name:"Unwrap",pkg:"",typ:$funcType([],[$error],false)}];FH.methods=[{prop:"marshal",name:"marshal",pkg:"encoding/json",typ:$funcType([$emptyInterface,CL],[$error],false)},{prop:"error",name:"error",pkg:"encoding/json",typ:$funcType([$error],[],false)},{prop:"reflectValue",name:"reflectValue",pkg:"encoding/json",typ:$funcType([L.Value,CL],[],false)},{prop:"string",name:"string",pkg:"encoding/json",typ:$funcType([$String,$Bool],[],false)},{prop:"stringBytes",name:"stringBytes",pkg:"encoding/json",typ:$funcType([FA,$Bool],[],false)}];DB.methods=[{prop:"encode",name:"encode",pkg:"encoding/json",typ:$funcType([FH,L.Value,CL],[],false)}];DI.methods=[{prop:"encode",name:"encode",pkg:"encoding/json",typ:$funcType([FH,L.Value,CL],[],false)}];DL.methods=[{prop:"encode",name:"encode",pkg:"encoding/json",typ:$funcType([FH,L.Value,CL],[],false)}];DO.methods=[{prop:"encode",name:"encode",pkg:"encoding/json",typ:$funcType([FH,L.Value,CL],[],false)}];DQ.methods=[{prop:"encode",name:"encode",pkg:"encoding/json",typ:$funcType([FH,L.Value,CL],[],false)}];DS.methods=[{prop:"encode",name:"encode",pkg:"encoding/json",typ:$funcType([FH,L.Value,CL],[],false)}];DU.methods=[{prop:"encode",name:"encode",pkg:"encoding/json",typ:$funcType([FH,L.Value,CL],[],false)}];GC.methods=[{prop:"resolve",name:"resolve",pkg:"encoding/json",typ:$funcType([],[$error],false)}];EA.methods=[{prop:"Len",name:"Len",pkg:"",typ:$funcType([],[$Int],false)},{prop:"Swap",name:"Swap",pkg:"",typ:$funcType([$Int,$Int],[],false)},{prop:"Less",name:"Less",pkg:"",typ:$funcType([$Int,$Int],[$Bool],false)}];EK.methods=[{prop:"String",name:"String",pkg:"",typ:$funcType([],[$String],false)},{prop:"Float64",name:"Float64",pkg:"",typ:$funcType([],[$Float64,$error],false)},{prop:"Int64",name:"Int64",pkg:"",typ:$funcType([],[$Int64,$error],false)}];AD.init("encoding/json",[{prop:"msg",name:"msg",embedded:false,exported:false,typ:$String,tag:""},{prop:"Offset",name:"Offset",embedded:false,exported:true,typ:$Int64,tag:""}]);AE.init("encoding/json",[{prop:"step",name:"step",embedded:false,exported:false,typ:FV,tag:""},{prop:"endTop",name:"endTop",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"parseState",name:"parseState",embedded:false,exported:false,typ:EX,tag:""},{prop:"err",name:"err",embedded:false,exported:false,typ:$error,tag:""},{prop:"bytes",name:"bytes",embedded:false,exported:false,typ:$Int64,tag:""}]);CA.init([{prop:"MarshalJSON",name:"MarshalJSON",pkg:"",typ:$funcType([],[FA,$error],false)}]);CB.init("",[{prop:"Type",name:"Type",embedded:false,exported:true,typ:L.Type,tag:""}]);CC.init("",[{prop:"Value",name:"Value",embedded:false,exported:true,typ:L.Value,tag:""},{prop:"Str",name:"Str",embedded:false,exported:true,typ:$String,tag:""}]);CE.init("encoding/json",[{prop:"Type",name:"Type",embedded:false,exported:true,typ:L.Type,tag:""},{prop:"Err",name:"Err",embedded:false,exported:true,typ:$error,tag:""},{prop:"sourceFunc",name:"sourceFunc",embedded:false,exported:false,typ:$String,tag:""}]);CG.init("encoding/json",[{prop:"Buffer",name:"Buffer",embedded:true,exported:true,typ:C.Buffer,tag:""},{prop:"scratch",name:"scratch",embedded:false,exported:false,typ:FI,tag:""},{prop:"ptrLevel",name:"ptrLevel",embedded:false,exported:false,typ:$Uint,tag:""},{prop:"ptrSeen",name:"ptrSeen",embedded:false,exported:false,typ:GA,tag:""}]);CJ.init("encoding/json",[{prop:"error",name:"error",embedded:true,exported:false,typ:$error,tag:""}]);CL.init("encoding/json",[{prop:"quoted",name:"quoted",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"escapeHTML",name:"escapeHTML",embedded:false,exported:false,typ:$Bool,tag:""}]);CM.init([FH,L.Value,CL],[],false);DI.init("encoding/json",[{prop:"fields",name:"fields",embedded:false,exported:false,typ:DJ,tag:""}]);DJ.init("encoding/json",[{prop:"list",name:"list",embedded:false,exported:false,typ:FJ,tag:""},{prop:"nameIndex",name:"nameIndex",embedded:false,exported:false,typ:GB,tag:""}]);DL.init("encoding/json",[{prop:"elemEnc",name:"elemEnc",embedded:false,exported:false,typ:CM,tag:""}]);DO.init("encoding/json",[{prop:"arrayEnc",name:"arrayEnc",embedded:false,exported:false,typ:CM,tag:""}]);DQ.init("encoding/json",[{prop:"elemEnc",name:"elemEnc",embedded:false,exported:false,typ:CM,tag:""}]);DS.init("encoding/json",[{prop:"elemEnc",name:"elemEnc",embedded:false,exported:false,typ:CM,tag:""}]);DU.init("encoding/json",[{prop:"canAddrEnc",name:"canAddrEnc",embedded:false,exported:false,typ:CM,tag:""},{prop:"elseEnc",name:"elseEnc",embedded:false,exported:false,typ:CM,tag:""}]);DY.init("encoding/json",[{prop:"k",name:"k",embedded:false,exported:false,typ:L.Value,tag:""},{prop:"v",name:"v",embedded:false,exported:false,typ:L.Value,tag:""},{prop:"ks",name:"ks",embedded:false,exported:false,typ:$String,tag:""}]);DZ.init("encoding/json",[{prop:"name",name:"name",embedded:false,exported:false,typ:$String,tag:""},{prop:"nameBytes",name:"nameBytes",embedded:false,exported:false,typ:FA,tag:""},{prop:"equalFold",name:"equalFold",embedded:false,exported:false,typ:GD,tag:""},{prop:"nameNonEsc",name:"nameNonEsc",embedded:false,exported:false,typ:$String,tag:""},{prop:"nameEscHTML",name:"nameEscHTML",embedded:false,exported:false,typ:$String,tag:""},{prop:"tag",name:"tag",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"index",name:"index",embedded:false,exported:false,typ:EX,tag:""},{prop:"typ",name:"typ",embedded:false,exported:false,typ:L.Type,tag:""},{prop:"omitEmpty",name:"omitEmpty",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"quoted",name:"quoted",embedded:false,exported:false,typ:$Bool,tag:""},{prop:"encoder",name:"encoder",embedded:false,exported:false,typ:CM,tag:""}]);EA.init(DZ);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=C.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=A.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}CH=new G.Pool.ptr(EV.nil,$throwNilPointerError);CN=new G.Map.ptr(false);ED=new G.Map.ptr(false);R=$toNativeArray($kindBool,[false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true]);S=$toNativeArray($kindBool,[false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,false,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true]);AF=new G.Pool.ptr(EV.nil,(function(){return new AE.ptr($throwNilPointerError,false,EX.nil,$ifaceNil,new $Int64(0,0));}));CF="0123456789abcdef";a=L.TypeOf((EY.nil)).Elem();$s=16;case 16:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}CQ=a;b=L.TypeOf((EZ.nil)).Elem();$s=17;case 17:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}CR=b;DC=$methodVal(new DB(32),"encode");DD=$methodVal(new DB(64),"encode");c=L.TypeOf((FB.nil)).Elem();$s=18;case 18:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}EQ=c;ER=L.TypeOf(new EK(""));}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["github.com/88250/lute/render"]=(function(){var $pkg={},$init,A,M,H,F,G,I,J,K,L,B,C,D,E,N,P,R,T,AL,AM,AO,AQ,AW,BC,BE,BI,BS,BV,BY,CA,CG,CI,CJ,CK,CL,CM,CN,CO,CP,CQ,CR,CS,CT,CU,CV,CW,CX,CY,CZ,DA,DB,DC,DD,DE,DF,DG,DH,DI,DJ,DK,DL,DM,DN,DO,DP,DR,DT,DU,DV,DW,X,AC,AK,AZ,CD,CF,O,Q,S,U,V,W,Y,Z,AA,AB,AD,AE,AF,AG,AH,AI,AJ,AP,AR,AS,AT,AU,AV,AX,AY,BA,BD,BF,BJ,BK,BN,BO,BP,BQ,BR,BT,BU,BW,BX,BZ,CB,CH;A=$packages["bytes"];M=$packages["encoding/json"];H=$packages["github.com/88250/lute/ast"];F=$packages["github.com/88250/lute/editor"];G=$packages["github.com/88250/lute/html"];I=$packages["github.com/88250/lute/lex"];J=$packages["github.com/88250/lute/parse"];K=$packages["github.com/88250/lute/util"];L=$packages["io"];B=$packages["strconv"];C=$packages["strings"];D=$packages["unicode"];E=$packages["unicode/utf8"];N=$pkg.VditorRenderer=$newType(0,$kindStruct,"render.VditorRenderer",true,"github.com/88250/lute/render",true,function(BaseRenderer_,commentStackDepth_){this.$val=this;if(arguments.length===0){this.BaseRenderer=CK.nil;this.commentStackDepth=0;return;}this.BaseRenderer=BaseRenderer_;this.commentStackDepth=commentStackDepth_;});P=$pkg.VditorSVRenderer=$newType(0,$kindStruct,"render.VditorSVRenderer",true,"github.com/88250/lute/render",true,function(BaseRenderer_,nodeWriterStack_,LastOut_){this.$val=this;if(arguments.length===0){this.BaseRenderer=CK.nil;this.nodeWriterStack=CT.nil;this.LastOut=CI.nil;return;}this.BaseRenderer=BaseRenderer_;this.nodeWriterStack=nodeWriterStack_;this.LastOut=LastOut_;});R=$pkg.VditorIRRenderer=$newType(0,$kindStruct,"render.VditorIRRenderer",true,"github.com/88250/lute/render",true,function(BaseRenderer_){this.$val=this;if(arguments.length===0){this.BaseRenderer=CK.nil;return;}this.BaseRenderer=BaseRenderer_;});T=$pkg.TextBundleRenderer=$newType(0,$kindStruct,"render.TextBundleRenderer",true,"github.com/88250/lute/render",true,function(FormatRenderer_,linkPrefixes_,originalLink_){this.$val=this;if(arguments.length===0){this.FormatRenderer=CX.nil;this.linkPrefixes=CJ.nil;this.originalLink=CJ.nil;return;}this.FormatRenderer=FormatRenderer_;this.linkPrefixes=linkPrefixes_;this.originalLink=originalLink_;});AL=$pkg.RendererFunc=$newType(4,$kindFunc,"render.RendererFunc",true,"github.com/88250/lute/render",true,null);AM=$pkg.ExtRendererFunc=$newType(4,$kindFunc,"render.ExtRendererFunc",true,"github.com/88250/lute/render",true,null);AO=$pkg.Options=$newType(0,$kindStruct,"render.Options",true,"github.com/88250/lute/render",true,function(SoftBreak2HardBreak_,AutoSpace_,RenderListStyle_,CodeSyntaxHighlight_,CodeSyntaxHighlightDetectLang_,CodeSyntaxHighlightInlineStyle_,CodeSyntaxHighlightLineNum_,CodeSyntaxHighlightStyleName_,VditorWYSIWYG_,VditorIR_,VditorSV_,ProtyleWYSIWYG_,KramdownBlockIAL_,KramdownSpanIAL_,SuperBlock_,ImageLazyLoading_,ChineseParagraphBeginningSpace_,Sanitize_,FixTermTypo_,Terms_,ToC_,HeadingID_,KramdownIALIDRenderName_,HeadingAnchor_,GFMTaskListItemClass_,VditorCodeBlockPreview_,VditorMathBlockPreview_,VditorHTMLBlockPreview_,LinkBase_,LinkPrefix_,NodeIndexStart_,ProtyleContenteditable_,KeepParagraphBeginningSpace_,ProtyleMarkNetImg_,Spellcheck_){this.$val=this;if(arguments.length===0){this.SoftBreak2HardBreak=false;this.AutoSpace=false;this.RenderListStyle=false;this.CodeSyntaxHighlight=false;this.CodeSyntaxHighlightDetectLang=false;this.CodeSyntaxHighlightInlineStyle=false;this.CodeSyntaxHighlightLineNum=false;this.CodeSyntaxHighlightStyleName="";this.VditorWYSIWYG=false;this.VditorIR=false;this.VditorSV=false;this.ProtyleWYSIWYG=false;this.KramdownBlockIAL=false;this.KramdownSpanIAL=false;this.SuperBlock=false;this.ImageLazyLoading="";this.ChineseParagraphBeginningSpace=false;this.Sanitize=false;this.FixTermTypo=false;this.Terms=false;this.ToC=false;this.HeadingID=false;this.KramdownIALIDRenderName="";this.HeadingAnchor=false;this.GFMTaskListItemClass="";this.VditorCodeBlockPreview=false;this.VditorMathBlockPreview=false;this.VditorHTMLBlockPreview=false;this.LinkBase="";this.LinkPrefix="";this.NodeIndexStart=0;this.ProtyleContenteditable=false;this.KeepParagraphBeginningSpace=false;this.ProtyleMarkNetImg=false;this.Spellcheck=false;return;}this.SoftBreak2HardBreak=SoftBreak2HardBreak_;this.AutoSpace=AutoSpace_;this.RenderListStyle=RenderListStyle_;this.CodeSyntaxHighlight=CodeSyntaxHighlight_;this.CodeSyntaxHighlightDetectLang=CodeSyntaxHighlightDetectLang_;this.CodeSyntaxHighlightInlineStyle=CodeSyntaxHighlightInlineStyle_;this.CodeSyntaxHighlightLineNum=CodeSyntaxHighlightLineNum_;this.CodeSyntaxHighlightStyleName=CodeSyntaxHighlightStyleName_;this.VditorWYSIWYG=VditorWYSIWYG_;this.VditorIR=VditorIR_;this.VditorSV=VditorSV_;this.ProtyleWYSIWYG=ProtyleWYSIWYG_;this.KramdownBlockIAL=KramdownBlockIAL_;this.KramdownSpanIAL=KramdownSpanIAL_;this.SuperBlock=SuperBlock_;this.ImageLazyLoading=ImageLazyLoading_;this.ChineseParagraphBeginningSpace=ChineseParagraphBeginningSpace_;this.Sanitize=Sanitize_;this.FixTermTypo=FixTermTypo_;this.Terms=Terms_;this.ToC=ToC_;this.HeadingID=HeadingID_;this.KramdownIALIDRenderName=KramdownIALIDRenderName_;this.HeadingAnchor=HeadingAnchor_;this.GFMTaskListItemClass=GFMTaskListItemClass_;this.VditorCodeBlockPreview=VditorCodeBlockPreview_;this.VditorMathBlockPreview=VditorMathBlockPreview_;this.VditorHTMLBlockPreview=VditorHTMLBlockPreview_;this.LinkBase=LinkBase_;this.LinkPrefix=LinkPrefix_;this.NodeIndexStart=NodeIndexStart_;this.ProtyleContenteditable=ProtyleContenteditable_;this.KeepParagraphBeginningSpace=KeepParagraphBeginningSpace_;this.ProtyleMarkNetImg=ProtyleMarkNetImg_;this.Spellcheck=Spellcheck_;});AQ=$pkg.BaseRenderer=$newType(0,$kindStruct,"render.BaseRenderer",true,"github.com/88250/lute/render",true,function(Options_,RendererFuncs_,DefaultRendererFunc_,ExtRendererFuncs_,Writer_,LastOut_,Tree_,DisableTags_,FootnotesDefs_,RenderingFootnotes_){this.$val=this;if(arguments.length===0){this.Options=CZ.nil;this.RendererFuncs=false;this.DefaultRendererFunc=$throwNilPointerError;this.ExtRendererFuncs=false;this.Writer=CS.nil;this.LastOut=0;this.Tree=DA.nil;this.DisableTags=0;this.FootnotesDefs=CO.nil;this.RenderingFootnotes=false;return;}this.Options=Options_;this.RendererFuncs=RendererFuncs_;this.DefaultRendererFunc=DefaultRendererFunc_;this.ExtRendererFuncs=ExtRendererFuncs_;this.Writer=Writer_;this.LastOut=LastOut_;this.Tree=Tree_;this.DisableTags=DisableTags_;this.FootnotesDefs=FootnotesDefs_;this.RenderingFootnotes=RenderingFootnotes_;});AW=$pkg.Heading=$newType(0,$kindStruct,"render.Heading",true,"github.com/88250/lute/render",true,function(ID_,Box_,Path_,HPath_,Content_,Level_,Children_,parent_){this.$val=this;if(arguments.length===0){this.ID="";this.Box="";this.Path="";this.HPath="";this.Content="";this.Level=0;this.Children=DC.nil;this.parent=DB.nil;return;}this.ID=ID_;this.Box=Box_;this.Path=Path_;this.HPath=HPath_;this.Content=Content_;this.Level=Level_;this.Children=Children_;this.parent=parent_;});BC=$pkg.ProtyleRenderer=$newType(0,$kindStruct,"render.ProtyleRenderer",true,"github.com/88250/lute/render",true,function(BaseRenderer_,NodeIndex_){this.$val=this;if(arguments.length===0){this.BaseRenderer=CK.nil;this.NodeIndex=0;return;}this.BaseRenderer=BaseRenderer_;this.NodeIndex=NodeIndex_;});BE=$pkg.ProtylePreviewRenderer=$newType(0,$kindStruct,"render.ProtylePreviewRenderer",true,"github.com/88250/lute/render",true,function(BaseRenderer_){this.$val=this;if(arguments.length===0){this.BaseRenderer=CK.nil;return;}this.BaseRenderer=BaseRenderer_;});BI=$pkg.ProtyleExportMdRenderer=$newType(0,$kindStruct,"render.ProtyleExportMdRenderer",true,"github.com/88250/lute/render",true,function(BaseRenderer_,NodeWriterStack_){this.$val=this;if(arguments.length===0){this.BaseRenderer=CK.nil;this.NodeWriterStack=CT.nil;return;}this.BaseRenderer=BaseRenderer_;this.NodeWriterStack=NodeWriterStack_;});BS=$pkg.KityMinderJSONRenderer=$newType(0,$kindStruct,"render.KityMinderJSONRenderer",true,"github.com/88250/lute/render",true,function(BaseRenderer_){this.$val=this;if(arguments.length===0){this.BaseRenderer=CK.nil;return;}this.BaseRenderer=BaseRenderer_;});BV=$pkg.JSONRenderer=$newType(0,$kindStruct,"render.JSONRenderer",true,"github.com/88250/lute/render",true,function(BaseRenderer_){this.$val=this;if(arguments.length===0){this.BaseRenderer=CK.nil;return;}this.BaseRenderer=BaseRenderer_;});BY=$pkg.HtmlRenderer=$newType(0,$kindStruct,"render.HtmlRenderer",true,"github.com/88250/lute/render",true,function(BaseRenderer_){this.$val=this;if(arguments.length===0){this.BaseRenderer=CK.nil;return;}this.BaseRenderer=BaseRenderer_;});CA=$pkg.FormatRenderer=$newType(0,$kindStruct,"render.FormatRenderer",true,"github.com/88250/lute/render",true,function(BaseRenderer_,NodeWriterStack_){this.$val=this;if(arguments.length===0){this.BaseRenderer=CK.nil;this.NodeWriterStack=CT.nil;return;}this.BaseRenderer=BaseRenderer_;this.NodeWriterStack=NodeWriterStack_;});CG=$pkg.EChartsJSONRenderer=$newType(0,$kindStruct,"render.EChartsJSONRenderer",true,"github.com/88250/lute/render",true,function(BaseRenderer_){this.$val=this;if(arguments.length===0){this.BaseRenderer=CK.nil;return;}this.BaseRenderer=BaseRenderer_;});CI=$sliceType($Uint8);CJ=$sliceType($String);CK=$ptrType(AQ);CL=$sliceType(CJ);CM=$ptrType(H.Node);CN=$sliceType(H.NodeType);CO=$sliceType(CM);CP=$ptrType(H.ListData);CQ=$sliceType($Int);CR=$ptrType(CL);CS=$ptrType(A.Buffer);CT=$sliceType(CS);CU=$ptrType(G.Node);CV=$ptrType(G.Attribute);CW=$sliceType(CV);CX=$ptrType(CA);CY=$sliceType($Int32);CZ=$ptrType(AO);DA=$ptrType(J.Tree);DB=$ptrType(AW);DC=$sliceType(DB);DD=$sliceType(CO);DE=$ptrType(J.Context);DF=$ptrType(I.Lexer);DG=$ptrType(J.InlineContext);DH=$ptrType(N);DI=$ptrType(P);DJ=$ptrType(R);DK=$ptrType(T);DL=$mapType($String,$String);DM=$mapType(H.NodeType,AL);DN=$mapType(H.NodeType,AM);DO=$ptrType(BC);DP=$ptrType(BE);DR=$ptrType(BI);DT=$ptrType(BS);DU=$ptrType(BV);DV=$ptrType(BY);DW=$ptrType(CG);O=function(a,b){var{a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=AR(a,b);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=new N.ptr(c,0);e=0;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(e),{k:e,v:$methodVal(d,"renderDocument")});f=1;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(f),{k:f,v:$methodVal(d,"renderParagraph")});g=16;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(g),{k:g,v:$methodVal(d,"renderText")});h=27;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(h),{k:h,v:$methodVal(d,"renderCodeSpan")});i=28;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(i),{k:i,v:$methodVal(d,"renderCodeSpanOpenMarker")});j=29;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(j),{k:j,v:$methodVal(d,"renderCodeSpanContent")});k=30;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(k),{k:k,v:$methodVal(d,"renderCodeSpanCloseMarker")});l=11;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(l),{k:l,v:$methodVal(d,"renderCodeBlock")});m=12;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(m),{k:m,v:$methodVal(d,"renderCodeBlockOpenMarker")});n=14;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(n),{k:n,v:$methodVal(d,"renderCodeBlockInfoMarker")});o=15;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(o),{k:o,v:$methodVal(d,"renderCodeBlockCode")});p=13;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(p),{k:p,v:$methodVal(d,"renderCodeBlockCloseMarker")});q=300;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(q),{k:q,v:$methodVal(d,"renderMathBlock")});r=301;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(r),{k:r,v:$methodVal(d,"renderMathBlockOpenMarker")});s=302;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(s),{k:s,v:$methodVal(d,"renderMathBlockContent")});t=303;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(t),{k:t,v:$methodVal(d,"renderMathBlockCloseMarker")});u=304;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(u),{k:u,v:$methodVal(d,"renderInlineMath")});v=305;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(v),{k:v,v:$methodVal(d,"renderInlineMathOpenMarker")});w=306;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(w),{k:w,v:$methodVal(d,"renderInlineMathContent")});x=307;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(x),{k:x,v:$methodVal(d,"renderInlineMathCloseMarker")});y=17;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(y),{k:y,v:$methodVal(d,"renderEmphasis")});z=18;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(z),{k:z,v:$methodVal(d,"renderEmAsteriskOpenMarker")});aa=19;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aa),{k:aa,v:$methodVal(d,"renderEmAsteriskCloseMarker")});ab=20;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ab),{k:ab,v:$methodVal(d,"renderEmUnderscoreOpenMarker")});ac=21;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ac),{k:ac,v:$methodVal(d,"renderEmUnderscoreCloseMarker")});ad=22;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ad),{k:ad,v:$methodVal(d,"renderStrong")});ae=23;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ae),{k:ae,v:$methodVal(d,"renderStrongA6kOpenMarker")});af=24;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(af),{k:af,v:$methodVal(d,"renderStrongA6kCloseMarker")});ag=25;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ag),{k:ag,v:$methodVal(d,"renderStrongU8eOpenMarker")});ah=26;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ah),{k:ah,v:$methodVal(d,"renderStrongU8eCloseMarker")});ai=5;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ai),{k:ai,v:$methodVal(d,"renderBlockquote")});aj=6;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aj),{k:aj,v:$methodVal(d,"renderBlockquoteMarker")});ak=2;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ak),{k:ak,v:$methodVal(d,"renderHeading")});al=3;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(al),{k:al,v:$methodVal(d,"renderHeadingC8hMarker")});am=420;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(am),{k:am,v:$methodVal(d,"renderHeadingID")});an=7;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(an),{k:an,v:$methodVal(d,"renderList")});ao=8;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ao),{k:ao,v:$methodVal(d,"renderListItem")});ap=4;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ap),{k:ap,v:$methodVal(d,"renderThematicBreak")});aq=31;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aq),{k:aq,v:$methodVal(d,"renderHardBreak")});ar=32;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ar),{k:ar,v:$methodVal(d,"renderSoftBreak")});as=9;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(as),{k:as,v:$methodVal(d,"renderHTML")});at=10;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(at),{k:at,v:$methodVal(d,"renderInlineHTML")});au=33;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(au),{k:au,v:$methodVal(d,"renderLink")});av=34;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(av),{k:av,v:$methodVal(d,"renderImage")});aw=35;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aw),{k:aw,v:$methodVal(d,"renderBang")});ax=36;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ax),{k:ax,v:$methodVal(d,"renderOpenBracket")});ay=37;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ay),{k:ay,v:$methodVal(d,"renderCloseBracket")});az=38;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(az),{k:az,v:$methodVal(d,"renderOpenParen")});ba=39;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ba),{k:ba,v:$methodVal(d,"renderCloseParen")});bb=466;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bb),{k:bb,v:$methodVal(d,"renderOpenBrace")});bc=467;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bc),{k:bc,v:$methodVal(d,"renderCloseBrace")});bd=40;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bd),{k:bd,v:$methodVal(d,"renderLinkText")});be=43;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(be),{k:be,v:$methodVal(d,"renderLinkSpace")});bf=41;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bf),{k:bf,v:$methodVal(d,"renderLinkDest")});bg=42;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bg),{k:bg,v:$methodVal(d,"renderLinkTitle")});bh=101;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bh),{k:bh,v:$methodVal(d,"renderStrikethrough")});bi=102;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bi),{k:bi,v:$methodVal(d,"renderStrikethrough1OpenMarker")});bj=103;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bj),{k:bj,v:$methodVal(d,"renderStrikethrough1CloseMarker")});bk=104;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bk),{k:bk,v:$methodVal(d,"renderStrikethrough2OpenMarker")});bl=105;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bl),{k:bl,v:$methodVal(d,"renderStrikethrough2CloseMarker")});bm=100;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bm),{k:bm,v:$methodVal(d,"renderTaskListItemMarker")});bn=106;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bn),{k:bn,v:$methodVal(d,"renderTable")});bo=107;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bo),{k:bo,v:$methodVal(d,"renderTableHead")});bp=108;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bp),{k:bp,v:$methodVal(d,"renderTableRow")});bq=109;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bq),{k:bq,v:$methodVal(d,"renderTableCell")});br=200;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(br),{k:br,v:$methodVal(d,"renderEmoji")});bs=201;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bs),{k:bs,v:$methodVal(d,"renderEmojiUnicode")});bt=202;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bt),{k:bt,v:$methodVal(d,"renderEmojiImg")});bu=203;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bu),{k:bu,v:$methodVal(d,"renderEmojiAlias")});bv=410;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bv),{k:bv,v:$methodVal(d,"renderFootnotesDefBlock")});bw=411;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bw),{k:bw,v:$methodVal(d,"renderFootnotesDef")});bx=412;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bx),{k:bx,v:$methodVal(d,"renderFootnotesRef")});by=415;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(by),{k:by,v:$methodVal(d,"renderToC")});bz=400;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bz),{k:bz,v:$methodVal(d,"renderBackslash")});ca=401;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ca),{k:ca,v:$methodVal(d,"renderBackslashContent")});cb=44;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cb),{k:cb,v:$methodVal(d,"renderHtmlEntity")});cc=425;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cc),{k:cc,v:$methodVal(d,"renderYamlFrontMatter")});cd=426;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cd),{k:cd,v:$methodVal(d,"renderYamlFrontMatterOpenMarker")});ce=427;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ce),{k:ce,v:$methodVal(d,"renderYamlFrontMatterContent")});cf=428;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cf),{k:cf,v:$methodVal(d,"renderYamlFrontMatterCloseMarker")});cg=450;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cg),{k:cg,v:$methodVal(d,"renderMark")});ch=451;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ch),{k:ch,v:$methodVal(d,"renderMark1OpenMarker")});ci=452;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ci),{k:ci,v:$methodVal(d,"renderMark1CloseMarker")});cj=453;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cj),{k:cj,v:$methodVal(d,"renderMark2OpenMarker")});ck=454;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ck),{k:ck,v:$methodVal(d,"renderMark2CloseMarker")});cl=485;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cl),{k:cl,v:$methodVal(d,"renderSup")});cm=486;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cm),{k:cm,v:$methodVal(d,"renderSupOpenMarker")});cn=487;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cn),{k:cn,v:$methodVal(d,"renderSupCloseMarker")});co=490;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(co),{k:co,v:$methodVal(d,"renderSub")});cp=491;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cp),{k:cp,v:$methodVal(d,"renderSubOpenMarker")});cq=492;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cq),{k:cq,v:$methodVal(d,"renderSubCloseMarker")});cr=455;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cr),{k:cr,v:$methodVal(d,"renderKramdownBlockIAL")});cs=45;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cs),{k:cs,v:$methodVal(d,"renderLinkRefDefBlock")});ct=46;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ct),{k:ct,v:$methodVal(d,"renderLinkRefDef")});$s=-1;return d;}return;}var $f={$blk:O,$c:true,$r,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};$pkg.NewVditorRenderer=O;N.ptr.prototype.renderLinkRefDefBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<div data-block=\"0\" data-type=\"link-ref-defs-block\">");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("</div>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderLinkRefDefBlock,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderLinkRefDefBlock=function(a,b){return this.$val.renderLinkRefDefBlock(a,b);};N.ptr.prototype.renderLinkRefDef=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=a.FirstChild.ChildByType(41).Tokens;e=K.BytesToStr(d);$r=c.BaseRenderer.WriteString("["+K.BytesToStr(a.Tokens)+"]:");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!("\xE2\x80\xB8"===e)){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.WriteString(" ");$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:$r=c.BaseRenderer.WriteString(e+"\n");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:N.ptr.prototype.renderLinkRefDef,$c:true,$r,a,b,c,d,e,$s};return $f;};N.prototype.renderLinkRefDef=function(a,b){return this.$val.renderLinkRefDef(a,b);};N.ptr.prototype.renderKramdownBlockIAL=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderKramdownBlockIAL=function(a,b){return this.$val.renderKramdownBlockIAL(a,b);};N.ptr.prototype.renderMark=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=a.PreviousNodeText();$s=4;case 4:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;e=C.ReplaceAll(e,"\xE2\x80\xB8","");if(""===e){$s=5;continue;}$s=6;continue;case 5:$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderMark,$c:true,$r,a,b,c,d,e,$s};return $f;};N.prototype.renderMark=function(a,b){return this.$val.renderMark(a,b);};N.ptr.prototype.renderMark1OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("mark",new CL([new CJ(["data-marker","="])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderMark1OpenMarker,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderMark1OpenMarker=function(a,b){return this.$val.renderMark1OpenMarker(a,b);};N.ptr.prototype.renderMark1CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/mark",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderMark1CloseMarker,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderMark1CloseMarker=function(a,b){return this.$val.renderMark1CloseMarker(a,b);};N.ptr.prototype.renderMark2OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("mark",new CL([new CJ(["data-marker","=="])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderMark2OpenMarker,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderMark2OpenMarker=function(a,b){return this.$val.renderMark2OpenMarker(a,b);};N.ptr.prototype.renderMark2CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/mark",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderMark2CloseMarker,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderMark2CloseMarker=function(a,b){return this.$val.renderMark2CloseMarker(a,b);};N.ptr.prototype.renderSup=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderSup=function(a,b){return this.$val.renderSup(a,b);};N.ptr.prototype.renderSupOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("sup",new CL([new CJ(["data-marker","^"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderSupOpenMarker,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderSupOpenMarker=function(a,b){return this.$val.renderSupOpenMarker(a,b);};N.ptr.prototype.renderSupCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/sup",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderSupCloseMarker,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderSupCloseMarker=function(a,b){return this.$val.renderSupCloseMarker(a,b);};N.ptr.prototype.renderSub=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderSub=function(a,b){return this.$val.renderSub(a,b);};N.ptr.prototype.renderSubOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("sub",new CL([new CJ(["data-marker","~"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderSubOpenMarker,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderSubOpenMarker=function(a,b){return this.$val.renderSubOpenMarker(a,b);};N.ptr.prototype.renderSubCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/sub",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderSubCloseMarker,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderSubCloseMarker=function(a,b){return this.$val.renderSubCloseMarker(a,b);};N.ptr.prototype.renderYamlFrontMatterCloseMarker=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderYamlFrontMatterCloseMarker=function(a,b){return this.$val.renderYamlFrontMatterCloseMarker(a,b);};N.ptr.prototype.renderYamlFrontMatterContent=function(a,b){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=A.TrimSpace(a.Tokens);$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=e.$length;g=1>f||((3===f)&&"\xE2\x80\xB8"===($bytesToString(a.Tokens)));$r=c.BaseRenderer.Tag("pre",CL.nil,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("code",new CL([new CJ(["data-type","yaml-front-matter"])]),false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(g){$s=6;continue;}$s=7;continue;case 6:$r=c.BaseRenderer.WriteString("<wbr>\n");$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=8;continue;case 7:$r=c.BaseRenderer.Write(G.EscapeHTML(e));$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 8:$r=c.BaseRenderer.WriteString("</code></pre>");$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderYamlFrontMatterContent,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};N.prototype.renderYamlFrontMatterContent=function(a,b){return this.$val.renderYamlFrontMatterContent(a,b);};N.ptr.prototype.renderYamlFrontMatterOpenMarker=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderYamlFrontMatterOpenMarker=function(a,b){return this.$val.renderYamlFrontMatterOpenMarker(a,b);};N.ptr.prototype.renderYamlFrontMatter=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<div class=\"vditor-wysiwyg__block\" data-type=\"yaml-front-matter\" data-block=\"0\">");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("</div>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderYamlFrontMatter,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderYamlFrontMatter=function(a,b){return this.$val.renderYamlFrontMatter(a,b);};N.ptr.prototype.renderHtmlEntity=function(a,b){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!b){$s=-1;return 2;}d=a.PreviousNodeText();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;e=C.ReplaceAll(e,"\xE2\x80\xB8","");if(""===e){$s=2;continue;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$r=c.BaseRenderer.WriteString("<span class=\"vditor-wysiwyg__block\" data-type=\"html-entity\">");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("code",new CL([new CJ(["data-type","html-entity"]),new CJ(["style","display: none"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=$appendSlice((new CI($stringToBytes("\xE2\x80\x8B"))),a.HtmlEntityTokens);$r=c.BaseRenderer.Write(G.EscapeHTML(f));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</code>");$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-wysiwyg__preview"]),new CJ(["data-render","2"])]),false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("code",CL.nil,false);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=A.ReplaceAll(a.HtmlEntityTokens,F.CaretTokens,CI.nil);$r=c.BaseRenderer.Write(g);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/code",CL.nil,false);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</span>\xE2\x80\x8B");$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderHtmlEntity,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};N.prototype.renderHtmlEntity=function(a,b){return this.$val.renderHtmlEntity(a,b);};N.ptr.prototype.renderBackslashContent=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderBackslashContent,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderBackslashContent=function(a,b){return this.$val.renderBackslashContent(a,b);};N.ptr.prototype.renderBackslash=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<span data-type=\"backslash\">");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("<span>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(92);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</span>");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("</span>");$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderBackslash,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderBackslash=function(a,b){return this.$val.renderBackslash(a,b);};N.ptr.prototype.renderToC=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=c.BaseRenderer.renderToC(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$s=2;case 2:return e;}return;}var $f={$blk:N.ptr.prototype.renderToC,$c:true,$r,a,b,c,d,e,$s};return $f;};N.prototype.renderToC=function(a,b){return this.$val.renderToC(a,b);};N.ptr.prototype.renderFootnotesDefBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<div data-block=\"0\" data-type=\"footnotes-block\">");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("<ol data-type=\"footnotes-defs-ol\">");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("</ol></div>");$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderFootnotesDefBlock,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderFootnotesDefBlock=function(a,b){return this.$val.renderFootnotesDefBlock(a,b);};N.ptr.prototype.renderFootnotesDef=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];c[0]=this;if(c[0].BaseRenderer.RenderingFootnotes){$s=-1;return 2;}if(b){$s=1;continue;}$s=2;continue;case 1:if(!(CM.nil===a.Previous)&&A.EqualFold(a.Previous.Tokens,a.Tokens)){$s=-1;return 2;}$r=c[0].BaseRenderer.WriteString("<li data-type=\"footnotes-li\" data-marker=\""+($bytesToString(a.Tokens))+"\">");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.FirstChild;case 4:if(!(!(CM.nil===d))){$s=5;continue;}$r=H.Walk(d,(function(c){return function $b(e,f){var{e,f,g,h,i,$s,$r,$c}=$restore(this,{e,f});$s=$s||0;s:while(true){switch($s){case 0:h=(g=$mapIndex(c[0].BaseRenderer.RendererFuncs,H.NodeType.keyFor(e.Type)),g!==undefined?g.v:$throwNilPointerError)(e,f);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;$s=2;case 2:return i;}return;}var $f={$blk:$b,$c:true,$r,e,f,g,h,i,$s};return $f;};})(c));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=d.Next;$s=4;continue;case 5:$r=c[0].BaseRenderer.WriteString("</li>");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 1;case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderFootnotesDef,$c:true,$r,a,b,c,d,$s};return $f;};N.prototype.renderFootnotesDef=function(a,b){return this.$val.renderFootnotesDef(a,b);};N.ptr.prototype.renderFootnotesRef=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=a.PreviousNodeText();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;e=C.ReplaceAll(e,"\xE2\x80\xB8","");if(""===e){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:g=c.BaseRenderer.Tree.FindFootnotesDef(a.Tokens);$s=7;case 7:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[0];i=f[1];j=B.Itoa(h);k=i.Text();$s=8;case 8:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;m=G.EscapeString(l);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=AS(m,24);$s=10;case 10:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=new CL([new CJ(["data-type","footnotes-ref"]),new CJ(["data-footnotes-label",($bytesToString(a.FootnotesRefLabel))]),new CJ(["class","vditor-tooltipped vditor-tooltipped__s"]),new CJ(["aria-label",n])]);$r=c.BaseRenderer.Tag("sup",o,false);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString(j);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</sup>\xE2\x80\x8B");$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderFootnotesRef,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,$s};return $f;};N.prototype.renderFootnotesRef=function(a,b){return this.$val.renderFootnotesRef(a,b);};N.ptr.prototype.renderCodeBlockCloseMarker=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderCodeBlockCloseMarker=function(a,b){return this.$val.renderCodeBlockCloseMarker(a,b);};N.ptr.prototype.renderCodeBlockInfoMarker=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderCodeBlockInfoMarker=function(a,b){return this.$val.renderCodeBlockInfoMarker(a,b);};N.ptr.prototype.renderCodeBlockOpenMarker=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderCodeBlockOpenMarker=function(a,b){return this.$val.renderCodeBlockOpenMarker(a,b);};N.ptr.prototype.renderEmojiAlias=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderEmojiAlias=function(a,b){return this.$val.renderEmojiAlias(a,b);};N.ptr.prototype.renderEmojiImg=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderEmojiImg,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderEmojiImg=function(a,b){return this.$val.renderEmojiImg(a,b);};N.ptr.prototype.renderEmojiUnicode=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderEmojiUnicode,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderEmojiUnicode=function(a,b){return this.$val.renderEmojiUnicode(a,b);};N.ptr.prototype.renderEmoji=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderEmoji=function(a,b){return this.$val.renderEmoji(a,b);};N.ptr.prototype.renderInlineMathCloseMarker=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderInlineMathCloseMarker=function(a,b){return this.$val.renderInlineMathCloseMarker(a,b);};N.ptr.prototype.renderInlineMathContent=function(a,b){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!b){$s=-1;return 2;}d=A.ReplaceAll(a.Tokens,(new CI($stringToBytes("\xE2\x80\x8B"))),CI.nil);e=d;f=new CL([new CJ(["data-type","math-inline"])]);if(!A.Contains(e,F.CaretTokens)){f=$append(f,new CJ(["style","display: none"]));}$r=c.BaseRenderer.WriteString("<span class=\"vditor-wysiwyg__block\" data-type=\"math-inline\">");$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("code",f,false);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=G.EscapeHTML(d);d=$appendSlice((new CI($stringToBytes("\xE2\x80\x8B"))),d);$r=c.BaseRenderer.Write(d);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</code>");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-wysiwyg__preview"]),new CJ(["data-render","2"])]),false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","language-math"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=A.ReplaceAll(e,F.CaretTokens,CI.nil);if(a.ParentIs(109,CN.nil)){e=A.ReplaceAll(e,(new CI($stringToBytes("\\|"))),(new CI($stringToBytes("|"))));}$r=c.BaseRenderer.Write(G.EscapeHTML(e));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</span>\xE2\x80\x8B");$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderInlineMathContent,$c:true,$r,a,b,c,d,e,f,$s};return $f;};N.prototype.renderInlineMathContent=function(a,b){return this.$val.renderInlineMathContent(a,b);};N.ptr.prototype.renderInlineMathOpenMarker=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderInlineMathOpenMarker=function(a,b){return this.$val.renderInlineMathOpenMarker(a,b);};N.ptr.prototype.renderInlineMath=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=a.PreviousNodeText();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;e=C.ReplaceAll(e,"\xE2\x80\xB8","");if(""===e){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderInlineMath,$c:true,$r,a,b,c,d,e,$s};return $f;};N.prototype.renderInlineMath=function(a,b){return this.$val.renderInlineMath(a,b);};N.ptr.prototype.renderMathBlockCloseMarker=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderMathBlockCloseMarker=function(a,b){return this.$val.renderMathBlockCloseMarker(a,b);};N.ptr.prototype.renderMathBlockContent=function(a,b){var{a,b,c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!b){$s=-1;return 2;}d=A.TrimSpace(a.Tokens);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=CL.nil;if(!A.Contains(e,F.CaretTokens)&&c.BaseRenderer.Options.VditorMathBlockPreview){f=$append(f,new CJ(["style","display: none"]));}g=e.$length;h=1>g||((3===g)&&"\xE2\x80\xB8"===($bytesToString(a.Tokens)));$r=c.BaseRenderer.Tag("pre",f,false);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("code",new CL([new CJ(["data-type","math-block"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(h){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.WriteString("<wbr>\n");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=6;continue;case 5:$r=c.BaseRenderer.Write(G.EscapeHTML(e));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:$r=c.BaseRenderer.WriteString("</code></pre>");$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c.BaseRenderer.Options.VditorMathBlockPreview){$s=10;continue;}$s=11;continue;case 10:$r=c.BaseRenderer.Tag("pre",new CL([new CJ(["class","vditor-wysiwyg__preview"]),new CJ(["data-render","2"])]),false);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("div",new CL([new CJ(["data-type","math-block"]),new CJ(["class","language-math"])]),false);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=a.Tokens;i=A.ReplaceAll(i,F.CaretTokens,CI.nil);$r=c.BaseRenderer.Write(G.EscapeHTML(i));$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</div></pre>");$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 11:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderMathBlockContent,$c:true,$r,a,b,c,d,e,f,g,h,i,$s};return $f;};N.prototype.renderMathBlockContent=function(a,b){return this.$val.renderMathBlockContent(a,b);};N.ptr.prototype.renderMathBlockOpenMarker=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderMathBlockOpenMarker=function(a,b){return this.$val.renderMathBlockOpenMarker(a,b);};N.ptr.prototype.renderMathBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<div class=\"vditor-wysiwyg__block\" data-type=\"math-block\" data-block=\"0\">");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("</div>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderMathBlock,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderMathBlock=function(a,b){return this.$val.renderMathBlock(a,b);};N.ptr.prototype.renderTableCell=function(a,b){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d="td";if(107===a.Parent.Parent.Type){d="th";}if(b){$s=1;continue;}$s=2;continue;case 1:e=CL.nil;f=a.TableCellAlign;if(f===(1)){e=$append(e,new CJ(["align","left"]));}else if(f===(2)){e=$append(e,new CJ(["align","center"]));}else if(f===(3)){e=$append(e,new CJ(["align","right"]));}$r=c.BaseRenderer.Tag(d,e,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(CM.nil===a.FirstChild){$s=5;continue;}if(A.Equal(a.FirstChild.Tokens,F.CaretTokens)){$s=6;continue;}$s=7;continue;case 5:a.AppendChild(new H.Node.ptr("","","","",16,CM.nil,CM.nil,CM.nil,CM.nil,CM.nil,CO.nil,(new CI($stringToBytes(" "))),"","",false,false,false,0,false,0,0,0,CI.nil,CI.nil,CI.nil,0,CP.nil,false,CQ.nil,0,0,0,0,CI.nil,0,false,"",0,CI.nil,"",CO.nil,CI.nil,CL.nil,false,"","","","","","","","","","","",0,""));$s=8;continue;case 6:a.FirstChild.Tokens=(new CI($stringToBytes("\xE2\x80\xB8 ")));$s=8;continue;case 7:g=A.TrimSpace(a.FirstChild.Tokens);$s=9;case 9:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}a.FirstChild.Tokens=g;case 8:$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/"+d,CL.nil,false);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderTableCell,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};N.prototype.renderTableCell=function(a,b){return this.$val.renderTableCell(a,b);};N.ptr.prototype.renderTableRow=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("tr",CL.nil,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/tr",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderTableRow,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderTableRow=function(a,b){return this.$val.renderTableRow(a,b);};N.ptr.prototype.renderTableHead=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("thead",CL.nil,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/thead",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!(CM.nil===a.Next)){$s=6;continue;}$s=7;continue;case 6:$r=c.BaseRenderer.Tag("tbody",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:case 3:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderTableHead,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderTableHead=function(a,b){return this.$val.renderTableHead(a,b);};N.ptr.prototype.renderTable=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("table",new CL([new CJ(["data-block","0"])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:if(!(CM.nil===a.FirstChild.Next)){$s=5;continue;}$s=6;continue;case 5:$r=c.BaseRenderer.Tag("/tbody",CL.nil,false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:$r=c.BaseRenderer.Tag("/table",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderTable,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderTable=function(a,b){return this.$val.renderTable(a,b);};N.ptr.prototype.renderStrikethrough=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderStrikethrough=function(a,b){return this.$val.renderStrikethrough(a,b);};N.ptr.prototype.renderStrikethrough1OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("s",new CL([new CJ(["data-marker","~"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderStrikethrough1OpenMarker,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderStrikethrough1OpenMarker=function(a,b){return this.$val.renderStrikethrough1OpenMarker(a,b);};N.ptr.prototype.renderStrikethrough1CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/s",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderStrikethrough1CloseMarker,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderStrikethrough1CloseMarker=function(a,b){return this.$val.renderStrikethrough1CloseMarker(a,b);};N.ptr.prototype.renderStrikethrough2OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("s",new CL([new CJ(["data-marker","~~"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderStrikethrough2OpenMarker,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderStrikethrough2OpenMarker=function(a,b){return this.$val.renderStrikethrough2OpenMarker(a,b);};N.ptr.prototype.renderStrikethrough2CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/s",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderStrikethrough2CloseMarker,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderStrikethrough2CloseMarker=function(a,b){return this.$val.renderStrikethrough2CloseMarker(a,b);};N.ptr.prototype.renderLinkTitle=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderLinkTitle=function(a,b){return this.$val.renderLinkTitle(a,b);};N.ptr.prototype.renderLinkDest=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderLinkDest=function(a,b){return this.$val.renderLinkDest(a,b);};N.ptr.prototype.renderLinkSpace=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderLinkSpace=function(a,b){return this.$val.renderLinkSpace(a,b);};N.ptr.prototype.renderLinkText=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderLinkText,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderLinkText=function(a,b){return this.$val.renderLinkText(a,b);};N.ptr.prototype.renderCloseParen=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderCloseParen=function(a,b){return this.$val.renderCloseParen(a,b);};N.ptr.prototype.renderOpenParen=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderOpenParen=function(a,b){return this.$val.renderOpenParen(a,b);};N.ptr.prototype.renderCloseBrace=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderCloseBrace=function(a,b){return this.$val.renderCloseBrace(a,b);};N.ptr.prototype.renderOpenBrace=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderOpenBrace=function(a,b){return this.$val.renderOpenBrace(a,b);};N.ptr.prototype.renderCloseBracket=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderCloseBracket=function(a,b){return this.$val.renderCloseBracket(a,b);};N.ptr.prototype.renderOpenBracket=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderOpenBracket=function(a,b){return this.$val.renderOpenBracket(a,b);};N.ptr.prototype.renderBang=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderBang=function(a,b){return this.$val.renderBang(a,b);};N.ptr.prototype.renderImage=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(3===a.LinkType){$s=3;continue;}$s=4;continue;case 3:d=a.PreviousNodeText();$s=5;case 5:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;e=C.ReplaceAll(e,"\xE2\x80\xB8","");if(""===e){$s=6;continue;}$s=7;continue;case 6:$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:$r=c.BaseRenderer.WriteString("<img src=\"");$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=c.BaseRenderer.Tree.FindLinkRefDefLink(a.LinkRefLabel);$s=10;case 10:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=g.ChildByType(41).Tokens;h=c.BaseRenderer.LinkPath(h);h=A.ReplaceAll(h,F.CaretTokens,CI.nil);$r=c.BaseRenderer.Write(h);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("\" alt=\"");$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=a.ChildByType(40);if(!(CM.nil===i)){$s=13;continue;}$s=14;continue;case 13:i.Tokens=A.ReplaceAll(i.Tokens,F.CaretTokens,CI.nil);$r=c.BaseRenderer.Write(i.Tokens);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 14:$r=c.BaseRenderer.WriteByte(34);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=g.ChildByType(42);if(!(CM.nil===j)&&!(CI.nil===j.Tokens)){$s=17;continue;}$s=18;continue;case 17:$r=c.BaseRenderer.WriteString(" title=\"");$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j.Tokens=A.ReplaceAll(j.Tokens,F.CaretTokens,CI.nil);$r=c.BaseRenderer.Write(j.Tokens);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(34);$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 18:$r=c.BaseRenderer.WriteString(" data-type=\"link-ref\" data-link-label=\""+($bytesToString(a.LinkRefLabel))+"\"");$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString(" />");$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=c.BaseRenderer.Writer.Bytes();l=A.LastIndex(k,(new CI($stringToBytes("<img src="))));m=$subslice(k,l);if(c.BaseRenderer.Options.Sanitize){$s=24;continue;}$s=25;continue;case 24:n=AE(m);$s=26;case 26:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;case 25:c.BaseRenderer.Writer.Truncate(l);o=c.BaseRenderer.Writer.Write(m);$s=27;case 27:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}o;$s=-1;return 1;case 4:if(0===c.BaseRenderer.DisableTags){$s=28;continue;}$s=29;continue;case 28:$r=c.BaseRenderer.WriteString("<img src=\"");$s=30;case 30:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}p=a.ChildByType(41).Tokens;p=c.BaseRenderer.LinkPath(p);p=A.ReplaceAll(p,F.CaretTokens,CI.nil);$r=c.BaseRenderer.Write(p);$s=31;case 31:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("\" alt=\"");$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}q=a.ChildByType(40);if(!(CM.nil===q)&&A.Contains(q.Tokens,F.CaretTokens)){q.Tokens=A.ReplaceAll(q.Tokens,F.CaretTokens,CI.nil);}case 29:c.BaseRenderer.DisableTags=c.BaseRenderer.DisableTags+(1)>>0;$s=-1;return 2;case 2:c.BaseRenderer.DisableTags=c.BaseRenderer.DisableTags-(1)>>0;if(0===c.BaseRenderer.DisableTags){$s=33;continue;}$s=34;continue;case 33:$r=c.BaseRenderer.WriteByte(34);$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}r=a.ChildByType(42);if(!(CM.nil===r)&&!(CI.nil===r.Tokens)){$s=36;continue;}$s=37;continue;case 36:$r=c.BaseRenderer.WriteString(" title=\"");$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}r.Tokens=A.ReplaceAll(r.Tokens,F.CaretTokens,CI.nil);$r=c.BaseRenderer.Write(r.Tokens);$s=39;case 39:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(34);$s=40;case 40:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 37:$r=c.BaseRenderer.WriteString(" />");$s=41;case 41:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}s=c.BaseRenderer.Writer.Bytes();t=A.LastIndex(s,(new CI($stringToBytes("<img src="))));u=$subslice(s,t);if(c.BaseRenderer.Options.Sanitize){$s=42;continue;}$s=43;continue;case 42:v=AE(u);$s=44;case 44:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}u=v;case 43:c.BaseRenderer.Writer.Truncate(t);w=c.BaseRenderer.Writer.Write(u);$s=45;case 45:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;case 34:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderImage,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$s};return $f;};N.prototype.renderImage=function(a,b){return this.$val.renderImage(a,b);};N.ptr.prototype.renderLink=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(3===a.LinkType){$s=1;continue;}$s=2;continue;case 1:if(b){$s=3;continue;}$s=4;continue;case 3:d=a.PreviousNodeText();$s=6;case 6:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;e=C.ReplaceAll(e,"\xE2\x80\xB8","");if(""===e){$s=7;continue;}$s=8;continue;case 7:$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 8:f=a.ChildrenByType(40);$s=10;case 10:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h="";if(0<g.$length){h=($bytesToString((0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0]).Tokens));}i=($bytesToString(a.LinkRefLabel));j=new CL([new CJ(["data-type","link-ref"]),new CJ(["data-link-label",i])]);$r=c.BaseRenderer.Tag("span",j,false);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString(h);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 1;case 4:$s=-1;return 2;case 5:case 2:if(b){$s=15;continue;}$s=16;continue;case 15:k=a.ChildByType(41);l=k.Tokens;if(c.BaseRenderer.Options.Sanitize){$s=18;continue;}$s=19;continue;case 18:m=A.TrimSpace(l);$s=20;case 20:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;o=A.ToLower(n);$s=21;case 21:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}n=o;if(A.HasPrefix(n,(new CI($stringToBytes("javascript:"))))){l=CI.nil;}case 19:l=c.BaseRenderer.LinkPath(l);p=A.Contains(l,F.CaretTokens);if(p){q=a.ChildByType(40);q.Tokens=$appendSlice(q.Tokens,F.CaretTokens);l=A.ReplaceAll(l,F.CaretTokens,CI.nil);}r=new CL([new CJ(["href",($bytesToString(l))])]);s=a.ChildByType(42);if(!(CM.nil===s)&&!(CI.nil===s.Tokens)){s.Tokens=A.ReplaceAll(s.Tokens,F.CaretTokens,CI.nil);r=$append(r,new CJ(["title",($bytesToString(s.Tokens))]));}$r=c.BaseRenderer.Tag("a",r,false);$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=17;continue;case 16:$r=c.BaseRenderer.Tag("/a",CL.nil,false);$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 17:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderLink,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s};return $f;};N.prototype.renderLink=function(a,b){return this.$val.renderLink(a,b);};N.ptr.prototype.renderHTML=function(a,b){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!b){$s=-1;return 2;}$r=c.BaseRenderer.WriteString("<div class=\"vditor-wysiwyg__block\" data-type=\"html-block\" data-block=\"0\">");$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=A.TrimSpace(a.Tokens);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$r=c.BaseRenderer.WriteString("<pre>");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("code",CL.nil,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(G.EscapeHTML(e));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</code></pre>");$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("pre",new CL([new CJ(["class","vditor-wysiwyg__preview"]),new CJ(["data-render","2"])]),false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=A.ReplaceAll(e,F.CaretTokens,CI.nil);if(c.BaseRenderer.Options.Sanitize){$s=8;continue;}$s=9;continue;case 8:f=AE(e);$s=10;case 10:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;case 9:$r=c.BaseRenderer.Write(e);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</pre></div>");$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderHTML,$c:true,$r,a,b,c,d,e,f,$s};return $f;};N.prototype.renderHTML=function(a,b){return this.$val.renderHTML(a,b);};N.ptr.prototype.renderInlineHTML=function(a,b){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!b){$s=-1;return 2;}if(A.Equal(a.Tokens,(new CI($stringToBytes("<br />"))))&&a.ParentIs(109,CN.nil)){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;case 2:if(A.Contains(a.Tokens,(new CI($stringToBytes("<span class=\"vditor-comment"))))){$s=4;continue;}$s=5;continue;case 4:c.commentStackDepth=c.commentStackDepth+(1)>>0;$r=c.BaseRenderer.Write(a.Tokens);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;case 5:if(A.Equal(a.Tokens,(new CI($stringToBytes("</span>"))))){$s=7;continue;}$s=8;continue;case 7:if(0<c.commentStackDepth){$s=9;continue;}$s=10;continue;case 9:c.commentStackDepth=c.commentStackDepth-(1)>>0;$r=c.BaseRenderer.Write(a.Tokens);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;case 10:case 8:if(b){$s=12;continue;}$s=13;continue;case 12:d=a.PreviousNodeText();$s=14;case 14:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;e=C.ReplaceAll(e,"\xE2\x80\xB8","");if("\xE2\x80\x8B"===e||""===e){$s=15;continue;}$s=16;continue;case 15:$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 16:case 13:f=A.ReplaceAll(a.Tokens,(new CI($stringToBytes("\xE2\x80\x8B"))),CI.nil);f=$appendSlice((new CI($stringToBytes("\xE2\x80\x8B"))),f);g=A.TrimSpace(a.Tokens);$s=18;case 18:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}a.Tokens=g;$r=c.BaseRenderer.Tag("code",new CL([new CJ(["data-type","html-inline"])]),false);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=G.EscapeHTML(f);$r=c.BaseRenderer.Write(f);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</code>");$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderInlineHTML,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};N.prototype.renderInlineHTML=function(a,b){return this.$val.renderInlineHTML(a,b);};N.ptr.prototype.renderDocument=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderDocument=function(a,b){return this.$val.renderDocument(a,b);};N.ptr.prototype.renderParagraph=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=a.Parent.Parent;if(!(CM.nil===d)&&(7===d.Type)&&d.ListData.Tight){$s=-1;return 2;}if(b){$s=1;continue;}$s=2;continue;case 1:e=new CL([new CJ(["data-block","0"])]);e=$appendSlice(e,a.KramdownIAL);$r=c.BaseRenderer.Tag("p",e,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/p",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderParagraph,$c:true,$r,a,b,c,d,e,$s};return $f;};N.prototype.renderParagraph=function(a,b){return this.$val.renderParagraph(a,b);};N.ptr.prototype.renderText=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=a.Tokens;if(c.BaseRenderer.Options.FixTermTypo){$s=3;continue;}$s=4;continue;case 3:e=c.BaseRenderer.FixTermTypo(d);$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;case 4:d=A.TrimRight(d,"\n");if(!A.EqualFold(d,(new CI($stringToBytes("\xE2\x80\xB8\xE2\x80\x8B"))))){d=A.ReplaceAll(d,(new CI($stringToBytes("\xE2\x80\x8B"))),CI.nil);}$r=c.BaseRenderer.Write(G.EscapeHTML(d));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderText,$c:true,$r,a,b,c,d,e,$s};return $f;};N.prototype.renderText=function(a,b){return this.$val.renderText(a,b);};N.ptr.prototype.renderCodeSpan=function(a,b){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=a.PreviousNodeText();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;e=C.ReplaceAll(e,"\xE2\x80\xB8","");if(""===e){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=6;continue;case 5:f=E.DecodeLastRuneInString(e);g=f[0];if(D.IsLetter(g)||D.IsDigit(g)){$s=8;continue;}$s=9;continue;case 8:$r=c.BaseRenderer.WriteByte(32);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 9:case 6:$r=c.BaseRenderer.Tag("code",new CL([new CJ(["data-marker",C.Repeat("`",a.CodeMarkerLen)])]),false);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderCodeSpan,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};N.prototype.renderCodeSpan=function(a,b){return this.$val.renderCodeSpan(a,b);};N.ptr.prototype.renderCodeSpanOpenMarker=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderCodeSpanOpenMarker=function(a,b){return this.$val.renderCodeSpanOpenMarker(a,b);};N.ptr.prototype.renderCodeSpanContent=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=A.ReplaceAll(a.Tokens,(new CI($stringToBytes("\xE2\x80\x8B"))),CI.nil);d=G.EscapeHTML(d);d=$appendSlice((new CI($stringToBytes("\xE2\x80\x8B"))),d);$r=c.BaseRenderer.Write(d);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderCodeSpanContent,$c:true,$r,a,b,c,d,$s};return $f;};N.prototype.renderCodeSpanContent=function(a,b){return this.$val.renderCodeSpanContent(a,b);};N.ptr.prototype.renderCodeSpanCloseMarker=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("</code>");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.Parent;e=d.Parent;if(!(CM.nil===e)&&(33===e.Type)){$s=-1;return 2;}$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderCodeSpanCloseMarker,$c:true,$r,a,b,c,d,e,$s};return $f;};N.prototype.renderCodeSpanCloseMarker=function(a,b){return this.$val.renderCodeSpanCloseMarker(a,b);};N.ptr.prototype.renderEmphasis=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderEmphasis=function(a,b){return this.$val.renderEmphasis(a,b);};N.ptr.prototype.renderEmAsteriskOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("em",new CL([new CJ(["data-marker","*"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderEmAsteriskOpenMarker,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderEmAsteriskOpenMarker=function(a,b){return this.$val.renderEmAsteriskOpenMarker(a,b);};N.ptr.prototype.renderEmAsteriskCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/em",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderEmAsteriskCloseMarker,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderEmAsteriskCloseMarker=function(a,b){return this.$val.renderEmAsteriskCloseMarker(a,b);};N.ptr.prototype.renderEmUnderscoreOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("em",new CL([new CJ(["data-marker","_"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderEmUnderscoreOpenMarker,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderEmUnderscoreOpenMarker=function(a,b){return this.$val.renderEmUnderscoreOpenMarker(a,b);};N.ptr.prototype.renderEmUnderscoreCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/em",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderEmUnderscoreCloseMarker,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderEmUnderscoreCloseMarker=function(a,b){return this.$val.renderEmUnderscoreCloseMarker(a,b);};N.ptr.prototype.renderStrong=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderStrong=function(a,b){return this.$val.renderStrong(a,b);};N.ptr.prototype.renderStrongA6kOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("strong",new CL([new CJ(["data-marker","**"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderStrongA6kOpenMarker,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderStrongA6kOpenMarker=function(a,b){return this.$val.renderStrongA6kOpenMarker(a,b);};N.ptr.prototype.renderStrongA6kCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/strong",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderStrongA6kCloseMarker,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderStrongA6kCloseMarker=function(a,b){return this.$val.renderStrongA6kCloseMarker(a,b);};N.ptr.prototype.renderStrongU8eOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("strong",new CL([new CJ(["data-marker","__"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderStrongU8eOpenMarker,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderStrongU8eOpenMarker=function(a,b){return this.$val.renderStrongU8eOpenMarker(a,b);};N.ptr.prototype.renderStrongU8eCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/strong",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderStrongU8eCloseMarker,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderStrongU8eCloseMarker=function(a,b){return this.$val.renderStrongU8eCloseMarker(a,b);};N.ptr.prototype.renderBlockquote=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<blockquote data-block=\"0\">");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("</blockquote>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderBlockquote,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderBlockquote=function(a,b){return this.$val.renderBlockquote(a,b);};N.ptr.prototype.renderBlockquoteMarker=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderBlockquoteMarker=function(a,b){return this.$val.renderBlockquoteMarker(a,b);};N.ptr.prototype.renderHeading=function(a,b){var{a,b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<h"+$substring(" 123456",a.HeadingLevel,(a.HeadingLevel+1>>0))+" data-block=\"0\"");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d="";e=a.ChildByType(420);if(!(CM.nil===e)){d=($bytesToString(e.Tokens));}if(c.BaseRenderer.Options.HeadingID&&!(""===d)){$s=5;continue;}$s=6;continue;case 5:$r=c.BaseRenderer.WriteString(" data-id=\""+d+"\"");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:if(""===d){$s=8;continue;}$s=9;continue;case 8:f=AT(a);$s=10;case 10:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}d=f;case 9:$r=c.BaseRenderer.WriteString(" id=\"wysiwyg-"+d+"\"");$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!a.HeadingSetext){$s=12;continue;}$s=13;continue;case 12:$r=c.BaseRenderer.WriteString(" data-marker=\"#\">");$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=14;continue;case 13:if(1===a.HeadingLevel){$s=16;continue;}$s=17;continue;case 16:$r=c.BaseRenderer.WriteString(" data-marker=\"=\">");$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=18;continue;case 17:$r=c.BaseRenderer.WriteString(" data-marker=\"-\">");$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 18:case 14:if(c.BaseRenderer.Options.HeadingAnchor){$s=21;continue;}$s=22;continue;case 21:g=AT(a);$s=23;case 23:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$r=c.BaseRenderer.Tag("a",new CL([new CJ(["id","vditorAnchor-"+h]),new CJ(["class","vditor-anchor"]),new CJ(["href","#"+h])]),false);$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("<svg viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg>");$s=25;case 25:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/a",CL.nil,false);$s=26;case 26:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 22:$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("</h"+$substring(" 123456",a.HeadingLevel,(a.HeadingLevel+1>>0))+">");$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderHeading,$c:true,$r,a,b,c,d,e,f,g,h,$s};return $f;};N.prototype.renderHeading=function(a,b){return this.$val.renderHeading(a,b);};N.ptr.prototype.renderHeadingC8hMarker=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderHeadingC8hMarker=function(a,b){return this.$val.renderHeadingC8hMarker(a,b);};N.ptr.prototype.renderHeadingID=function(a,b){var a,b,c;c=this;return 2;};N.prototype.renderHeadingID=function(a,b){return this.$val.renderHeadingID(a,b);};N.ptr.prototype.renderList=function(a,b){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;e="ul";if((1===a.ListData.Typ)||((3===a.ListData.Typ)&&(0===a.ListData.BulletChar))){e="ol";}if(b){$s=1;continue;}$s=2;continue;case 1:c[0]=CL.nil;if(a.ListData.Tight){c[0]=$append(c[0],new CJ(["data-tight","true"]));}if(0===a.ListData.BulletChar){if(!((1===a.ListData.Start))){c[0]=$append(c[0],new CJ(["start",B.Itoa(a.ListData.Start)]));}}f=a.ListData.Typ;if(f===(0)){c[0]=$append(c[0],new CJ(["data-marker",($bytesToString(a.ListData.Marker))]));}else if(f===(1)){c[0]=$append(c[0],new CJ(["data-marker",B.Itoa(a.ListData.Num)+($encodeRune(a.ListData.Delimiter))]));}else if(f===(3)){if(0===a.ListData.BulletChar){c[0]=$append(c[0],new CJ(["data-marker",B.Itoa(a.ListData.Num)+($encodeRune(a.ListData.Delimiter))]));}else{c[0]=$append(c[0],new CJ(["data-marker",($bytesToString(a.ListData.Marker))]));}}c[0]=$append(c[0],new CJ(["data-block","0"]));d.BaseRenderer.renderListStyle(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))));$r=d.BaseRenderer.Tag(e,c[0],false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=d.BaseRenderer.Tag("/"+e,CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderList,$c:true,$r,a,b,c,d,e,f,$s};return $f;};N.prototype.renderList=function(a,b){return this.$val.renderList(a,b);};N.ptr.prototype.renderListItem=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=CL.nil;e=a.ListData.Typ;if(e===(0)){d=$append(d,new CJ(["data-marker",($bytesToString(a.ListData.Marker))]));}else if(e===(1)){d=$append(d,new CJ(["data-marker",B.Itoa(a.ListData.Num)+($encodeRune(a.ListData.Delimiter))]));}else if(e===(3)){if(0===a.ListData.BulletChar){d=$append(d,new CJ(["data-marker",B.Itoa(a.ListData.Num)+($encodeRune(a.ListData.Delimiter))]));}else{d=$append(d,new CJ(["data-marker",($bytesToString(a.ListData.Marker))]));}if(!(CM.nil===a.FirstChild)&&!(CM.nil===a.FirstChild.FirstChild)&&(100===a.FirstChild.FirstChild.Type)){d=$append(d,new CJ(["class",c.BaseRenderer.Options.GFMTaskListItemClass]));}}$r=c.BaseRenderer.Tag("li",d,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(CM.nil===a.FirstChild){$s=5;continue;}$s=6;continue;case 5:$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/li",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderListItem,$c:true,$r,a,b,c,d,e,$s};return $f;};N.prototype.renderListItem=function(a,b){return this.$val.renderListItem(a,b);};N.ptr.prototype.renderTaskListItemMarker=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=CL.nil;if(a.TaskListItemChecked){d=$append(d,new CJ(["checked",""]));}d=$append(d,new CJ(["type","checkbox"]));$r=c.BaseRenderer.Tag("input",d,true);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderTaskListItemMarker,$c:true,$r,a,b,c,d,$s};return $f;};N.prototype.renderTaskListItemMarker=function(a,b){return this.$val.renderTaskListItemMarker(a,b);};N.ptr.prototype.renderThematicBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("hr",new CL([new CJ(["data-block","0"])]),true);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!(CI.nil===a.Tokens)){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.Tag("p",new CL([new CJ(["data-block","0"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(a.Tokens);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(10);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/p",CL.nil,false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderThematicBreak,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderThematicBreak=function(a,b){return this.$val.renderThematicBreak(a,b);};N.ptr.prototype.renderHardBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("br",CL.nil,true);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderHardBreak,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderHardBreak=function(a,b){return this.$val.renderHardBreak(a,b);};N.ptr.prototype.renderSoftBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(10);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderSoftBreak,$c:true,$r,a,b,c,$s};return $f;};N.prototype.renderSoftBreak=function(a,b){return this.$val.renderSoftBreak(a,b);};N.ptr.prototype.renderCodeBlock=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d="```";if(!(CM.nil===a.FirstChild)&&A.HasPrefix(a.FirstChild.Tokens,(new CI($stringToBytes(d))))){d=($bytesToString(a.FirstChild.Tokens));}$r=c.BaseRenderer.WriteString("<div class=\"vditor-wysiwyg__block\" data-type=\"code-block\" data-block=\"0\" data-marker=\""+d+"\">");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("</div>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderCodeBlock,$c:true,$r,a,b,c,d,$s};return $f;};N.prototype.renderCodeBlock=function(a,b){return this.$val.renderCodeBlock(a,b);};N.ptr.prototype.renderCodeBlockCode=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!b){$s=-1;return 2;}d=a.Tokens.$length;e=1>d||((3===d)&&"\xE2\x80\xB8"===($bytesToString(a.Tokens)));f=a.Parent.IsFencedCodeBlock;g="";h=false;i=CL.nil;if(f&&0<a.Previous.CodeBlockInfo.$length){$s=1;continue;}$s=2;continue;case 1:if(A.Contains(a.Previous.CodeBlockInfo,F.CaretTokens)){h=true;a.Previous.CodeBlockInfo=A.ReplaceAll(a.Previous.CodeBlockInfo,F.CaretTokens,CI.nil);}if(0<a.Previous.CodeBlockInfo.$length){$s=3;continue;}$s=4;continue;case 3:j=I.Split(a.Previous.CodeBlockInfo,32);g=($bytesToString((0>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+0])));i=$append(i,new CJ(["class","language-"+g]));if("mindmap"===g){$s=5;continue;}$s=6;continue;case 5:k=BO(a.Tokens);$s=7;case 7:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;i=$append(i,new CJ(["data-code",($bytesToString(l))]));case 6:case 4:case 2:m=new CL([new CJ(["class","vditor-wysiwyg__pre"])]);if(!A.Contains(a.Tokens,F.CaretTokens)&&!h&&c.BaseRenderer.Options.VditorCodeBlockPreview){m=$append(m,new CJ(["style","display: none"]));}$r=c.BaseRenderer.Tag("pre",m,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("code",i,false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(e){$s=10;continue;}$s=11;continue;case 10:$r=c.BaseRenderer.WriteString("<wbr>\n");$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=12;continue;case 11:if(h){$s=14;continue;}$s=15;continue;case 14:$r=c.BaseRenderer.WriteString("<wbr>");$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 15:$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 12:$r=c.BaseRenderer.WriteString("</code></pre>");$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c.BaseRenderer.Options.VditorCodeBlockPreview){$s=20;continue;}$s=21;continue;case 20:$r=c.BaseRenderer.Tag("pre",new CL([new CJ(["class","vditor-wysiwyg__preview"]),new CJ(["data-render","2"])]),false);$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}n=BA(g);if(n){$s=23;continue;}$s=24;continue;case 23:$r=c.BaseRenderer.Tag("div",i,false);$s=26;case 26:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=25;continue;case 24:$r=c.BaseRenderer.Tag("code",i,false);$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 25:o=a.Tokens;o=A.ReplaceAll(o,F.CaretTokens,CI.nil);$r=c.BaseRenderer.Write(G.EscapeHTML(o));$s=28;case 28:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(n){$s=29;continue;}$s=30;continue;case 29:$r=c.BaseRenderer.WriteString("</div></pre>");$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=31;continue;case 30:$r=c.BaseRenderer.WriteString("</code></pre>");$s=33;case 33:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 31:case 21:$s=-1;return 2;}return;}var $f={$blk:N.ptr.prototype.renderCodeBlockCode,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,$s};return $f;};N.prototype.renderCodeBlockCode=function(a,b){return this.$val.renderCodeBlockCode(a,b);};P.ptr.prototype.WriteByte=function(a){var{a,b,c,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;c=b.BaseRenderer.Writer.WriteByte(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}c;b.LastOut=$append(b.LastOut,a);if(1024<b.LastOut.$length){b.LastOut=$subslice(b.LastOut,512);}$s=-1;return;}return;}var $f={$blk:P.ptr.prototype.WriteByte,$c:true,$r,a,b,c,$s};return $f;};P.prototype.WriteByte=function(a){return this.$val.WriteByte(a);};P.ptr.prototype.Write=function(a){var{a,b,c,d,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;c=a.$length;if(0<c){$s=1;continue;}$s=2;continue;case 1:d=b.BaseRenderer.Writer.Write(a);$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;b.LastOut=$appendSlice(b.LastOut,a);if(1024<b.LastOut.$length){b.LastOut=$subslice(b.LastOut,512);}case 2:$s=-1;return;}return;}var $f={$blk:P.ptr.prototype.Write,$c:true,$r,a,b,c,d,$s};return $f;};P.prototype.Write=function(a){return this.$val.Write(a);};P.ptr.prototype.WriteString=function(a){var{a,b,c,d,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;c=a.length;if(0<c){$s=1;continue;}$s=2;continue;case 1:d=b.BaseRenderer.Writer.WriteString(a);$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;b.LastOut=$appendSlice(b.LastOut,a);if(1024<b.LastOut.$length){b.LastOut=$subslice(b.LastOut,512);}case 2:$s=-1;return;}return;}var $f={$blk:P.ptr.prototype.WriteString,$c:true,$r,a,b,c,d,$s};return $f;};P.prototype.WriteString=function(a){return this.$val.WriteString(a);};P.ptr.prototype.Newline=function(){var{a,b,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;if(!A.HasSuffix(a.LastOut,$pkg.NewlineSV)){$s=1;continue;}$s=2;continue;case 1:b=a.BaseRenderer.Writer.Write($pkg.NewlineSV);$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}b;a.LastOut=$pkg.NewlineSV;case 2:$s=-1;return;}return;}var $f={$blk:P.ptr.prototype.Newline,$c:true,$r,a,b,$s};return $f;};P.prototype.Newline=function(){return this.$val.Newline();};Q=function(a,b){var{a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=AR(a,b);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=new P.ptr(c,CT.nil,CI.nil);e=0;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(e),{k:e,v:$methodVal(d,"renderDocument")});f=1;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(f),{k:f,v:$methodVal(d,"renderParagraph")});g=16;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(g),{k:g,v:$methodVal(d,"renderText")});h=27;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(h),{k:h,v:$methodVal(d,"renderCodeSpan")});i=28;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(i),{k:i,v:$methodVal(d,"renderCodeSpanOpenMarker")});j=29;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(j),{k:j,v:$methodVal(d,"renderCodeSpanContent")});k=30;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(k),{k:k,v:$methodVal(d,"renderCodeSpanCloseMarker")});l=11;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(l),{k:l,v:$methodVal(d,"renderCodeBlock")});m=12;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(m),{k:m,v:$methodVal(d,"renderCodeBlockOpenMarker")});n=14;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(n),{k:n,v:$methodVal(d,"renderCodeBlockInfoMarker")});o=15;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(o),{k:o,v:$methodVal(d,"renderCodeBlockCode")});p=13;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(p),{k:p,v:$methodVal(d,"renderCodeBlockCloseMarker")});q=300;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(q),{k:q,v:$methodVal(d,"renderMathBlock")});r=301;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(r),{k:r,v:$methodVal(d,"renderMathBlockOpenMarker")});s=302;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(s),{k:s,v:$methodVal(d,"renderMathBlockContent")});t=303;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(t),{k:t,v:$methodVal(d,"renderMathBlockCloseMarker")});u=304;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(u),{k:u,v:$methodVal(d,"renderInlineMath")});v=305;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(v),{k:v,v:$methodVal(d,"renderInlineMathOpenMarker")});w=306;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(w),{k:w,v:$methodVal(d,"renderInlineMathContent")});x=307;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(x),{k:x,v:$methodVal(d,"renderInlineMathCloseMarker")});y=17;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(y),{k:y,v:$methodVal(d,"renderEmphasis")});z=18;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(z),{k:z,v:$methodVal(d,"renderEmAsteriskOpenMarker")});aa=19;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aa),{k:aa,v:$methodVal(d,"renderEmAsteriskCloseMarker")});ab=20;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ab),{k:ab,v:$methodVal(d,"renderEmUnderscoreOpenMarker")});ac=21;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ac),{k:ac,v:$methodVal(d,"renderEmUnderscoreCloseMarker")});ad=22;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ad),{k:ad,v:$methodVal(d,"renderStrong")});ae=23;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ae),{k:ae,v:$methodVal(d,"renderStrongA6kOpenMarker")});af=24;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(af),{k:af,v:$methodVal(d,"renderStrongA6kCloseMarker")});ag=25;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ag),{k:ag,v:$methodVal(d,"renderStrongU8eOpenMarker")});ah=26;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ah),{k:ah,v:$methodVal(d,"renderStrongU8eCloseMarker")});ai=5;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ai),{k:ai,v:$methodVal(d,"renderBlockquote")});aj=6;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aj),{k:aj,v:$methodVal(d,"renderBlockquoteMarker")});ak=2;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ak),{k:ak,v:$methodVal(d,"renderHeading")});al=3;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(al),{k:al,v:$methodVal(d,"renderHeadingC8hMarker")});am=420;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(am),{k:am,v:$methodVal(d,"renderHeadingID")});an=7;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(an),{k:an,v:$methodVal(d,"renderList")});ao=8;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ao),{k:ao,v:$methodVal(d,"renderListItem")});ap=4;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ap),{k:ap,v:$methodVal(d,"renderThematicBreak")});aq=31;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aq),{k:aq,v:$methodVal(d,"renderHardBreak")});ar=32;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ar),{k:ar,v:$methodVal(d,"renderSoftBreak")});as=9;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(as),{k:as,v:$methodVal(d,"renderHTML")});at=10;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(at),{k:at,v:$methodVal(d,"renderInlineHTML")});au=33;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(au),{k:au,v:$methodVal(d,"renderLink")});av=34;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(av),{k:av,v:$methodVal(d,"renderImage")});aw=35;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aw),{k:aw,v:$methodVal(d,"renderBang")});ax=36;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ax),{k:ax,v:$methodVal(d,"renderOpenBracket")});ay=37;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ay),{k:ay,v:$methodVal(d,"renderCloseBracket")});az=38;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(az),{k:az,v:$methodVal(d,"renderOpenParen")});ba=39;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ba),{k:ba,v:$methodVal(d,"renderCloseParen")});bb=466;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bb),{k:bb,v:$methodVal(d,"renderOpenBrace")});bc=467;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bc),{k:bc,v:$methodVal(d,"renderCloseBrace")});bd=40;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bd),{k:bd,v:$methodVal(d,"renderLinkText")});be=43;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(be),{k:be,v:$methodVal(d,"renderLinkSpace")});bf=41;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bf),{k:bf,v:$methodVal(d,"renderLinkDest")});bg=42;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bg),{k:bg,v:$methodVal(d,"renderLinkTitle")});bh=101;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bh),{k:bh,v:$methodVal(d,"renderStrikethrough")});bi=102;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bi),{k:bi,v:$methodVal(d,"renderStrikethrough1OpenMarker")});bj=103;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bj),{k:bj,v:$methodVal(d,"renderStrikethrough1CloseMarker")});bk=104;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bk),{k:bk,v:$methodVal(d,"renderStrikethrough2OpenMarker")});bl=105;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bl),{k:bl,v:$methodVal(d,"renderStrikethrough2CloseMarker")});bm=100;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bm),{k:bm,v:$methodVal(d,"renderTaskListItemMarker")});bn=106;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bn),{k:bn,v:$methodVal(d,"renderTable")});bo=107;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bo),{k:bo,v:$methodVal(d,"renderTableHead")});bp=108;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bp),{k:bp,v:$methodVal(d,"renderTableRow")});bq=109;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bq),{k:bq,v:$methodVal(d,"renderTableCell")});br=200;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(br),{k:br,v:$methodVal(d,"renderEmoji")});bs=201;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bs),{k:bs,v:$methodVal(d,"renderEmojiUnicode")});bt=202;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bt),{k:bt,v:$methodVal(d,"renderEmojiImg")});bu=203;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bu),{k:bu,v:$methodVal(d,"renderEmojiAlias")});bv=410;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bv),{k:bv,v:$methodVal(d,"renderFootnotesDefBlock")});bw=411;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bw),{k:bw,v:$methodVal(d,"renderFootnotesDef")});bx=412;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bx),{k:bx,v:$methodVal(d,"renderFootnotesRef")});by=415;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(by),{k:by,v:$methodVal(d,"renderToC")});bz=400;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bz),{k:bz,v:$methodVal(d,"renderBackslash")});ca=401;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ca),{k:ca,v:$methodVal(d,"renderBackslashContent")});cb=44;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cb),{k:cb,v:$methodVal(d,"renderHtmlEntity")});cc=425;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cc),{k:cc,v:$methodVal(d,"renderYamlFrontMatter")});cd=426;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cd),{k:cd,v:$methodVal(d,"renderYamlFrontMatterOpenMarker")});ce=427;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ce),{k:ce,v:$methodVal(d,"renderYamlFrontMatterContent")});cf=428;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cf),{k:cf,v:$methodVal(d,"renderYamlFrontMatterCloseMarker")});cg=450;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cg),{k:cg,v:$methodVal(d,"renderMark")});ch=451;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ch),{k:ch,v:$methodVal(d,"renderMark1OpenMarker")});ci=452;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ci),{k:ci,v:$methodVal(d,"renderMark1CloseMarker")});cj=453;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cj),{k:cj,v:$methodVal(d,"renderMark2OpenMarker")});ck=454;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ck),{k:ck,v:$methodVal(d,"renderMark2CloseMarker")});cl=485;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cl),{k:cl,v:$methodVal(d,"renderSup")});cm=486;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cm),{k:cm,v:$methodVal(d,"renderSupOpenMarker")});cn=487;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cn),{k:cn,v:$methodVal(d,"renderSupCloseMarker")});co=490;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(co),{k:co,v:$methodVal(d,"renderSub")});cp=491;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cp),{k:cp,v:$methodVal(d,"renderSubOpenMarker")});cq=492;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cq),{k:cq,v:$methodVal(d,"renderSubCloseMarker")});cr=455;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cr),{k:cr,v:$methodVal(d,"renderKramdownBlockIAL")});cs=45;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cs),{k:cs,v:$methodVal(d,"renderLinkRefDefBlock")});ct=46;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ct),{k:ct,v:$methodVal(d,"renderLinkRefDef")});$s=-1;return d;}return;}var $f={$blk:Q,$c:true,$r,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};$pkg.NewVditorSVRenderer=Q;P.ptr.prototype.renderLinkRefDefBlock=function(a,b){var a,b,c;c=this;return 2;};P.prototype.renderLinkRefDefBlock=function(a,b){return this.$val.renderLinkRefDefBlock(a,b);};P.ptr.prototype.renderLinkRefDef=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=a.FirstChild.ChildByType(41).Tokens;e=($bytesToString(d));$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--bracket"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteByte(91);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--link"]),new CJ(["data-type","link-ref-defs-block"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Write(a.Tokens);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--bracket"])]),false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteByte(93);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("<span>:");$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!("\xE2\x80\xB8"===e)){$s=13;continue;}$s=14;continue;case 13:$r=c.WriteString(" ");$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 14:$r=c.WriteString("</span>");$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString(e);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Newline();$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Write($pkg.NewlineSV);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:P.ptr.prototype.renderLinkRefDef,$c:true,$r,a,b,c,d,e,$s};return $f;};P.prototype.renderLinkRefDef=function(a,b){return this.$val.renderLinkRefDef(a,b);};P.ptr.prototype.renderKramdownBlockIAL=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","kramdown-ial"]),new CJ(["class","vditor-sv__marker"])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Write(a.Tokens);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Newline();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderKramdownBlockIAL,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderKramdownBlockIAL=function(a,b){return this.$val.renderKramdownBlockIAL(a,b);};P.ptr.prototype.renderMark=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:c.BaseRenderer.Writer=new A.Buffer.ptr(CI.nil,0,0);c.nodeWriterStack=$append(c.nodeWriterStack,c.BaseRenderer.Writer);$s=3;continue;case 2:$r=c.popWriteClass(a,"mark");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderMark,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderMark=function(a,b){return this.$val.renderMark(a,b);};P.ptr.prototype.renderMark1OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("=");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderMark1OpenMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderMark1OpenMarker=function(a,b){return this.$val.renderMark1OpenMarker(a,b);};P.ptr.prototype.renderMark1CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("=");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderMark1CloseMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderMark1CloseMarker=function(a,b){return this.$val.renderMark1CloseMarker(a,b);};P.ptr.prototype.renderMark2OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("==");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderMark2OpenMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderMark2OpenMarker=function(a,b){return this.$val.renderMark2OpenMarker(a,b);};P.ptr.prototype.renderMark2CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("==");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderMark2CloseMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderMark2CloseMarker=function(a,b){return this.$val.renderMark2CloseMarker(a,b);};P.ptr.prototype.renderSup=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:c.BaseRenderer.Writer=new A.Buffer.ptr(CI.nil,0,0);c.nodeWriterStack=$append(c.nodeWriterStack,c.BaseRenderer.Writer);$s=3;continue;case 2:$r=c.popWriteClass(a,"sup");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderSup,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderSup=function(a,b){return this.$val.renderSup(a,b);};P.ptr.prototype.renderSupOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("^");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderSupOpenMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderSupOpenMarker=function(a,b){return this.$val.renderSupOpenMarker(a,b);};P.ptr.prototype.renderSupCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("^");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderSupCloseMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderSupCloseMarker=function(a,b){return this.$val.renderSupCloseMarker(a,b);};P.ptr.prototype.renderSub=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:c.BaseRenderer.Writer=new A.Buffer.ptr(CI.nil,0,0);c.nodeWriterStack=$append(c.nodeWriterStack,c.BaseRenderer.Writer);$s=3;continue;case 2:$r=c.popWriteClass(a,"sub");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderSub,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderSub=function(a,b){return this.$val.renderSub(a,b);};P.ptr.prototype.renderSubOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("~");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderSubOpenMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderSubOpenMarker=function(a,b){return this.$val.renderSubOpenMarker(a,b);};P.ptr.prototype.renderSubCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("~");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderSubCloseMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderSubCloseMarker=function(a,b){return this.$val.renderSubCloseMarker(a,b);};P.ptr.prototype.renderYamlFrontMatterCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","yaml-front-matter-close-marker"]),new CJ(["class","vditor-sv__marker"])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Write(J.YamlFrontMatterMarker);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Newline();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Write($pkg.NewlineSV);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderYamlFrontMatterCloseMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderYamlFrontMatterCloseMarker=function(a,b){return this.$val.renderYamlFrontMatterCloseMarker(a,b);};P.ptr.prototype.renderYamlFrontMatterContent=function(a,b){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","text"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=A.TrimSpace(a.Tokens);$s=4;case 4:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=G.EscapeHTML(d);$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;g=$appendSlice((new CI($stringToBytes("<span data-type=\"padding\"></span>"))),$pkg.NewlineSV);f=A.ReplaceAll(f,(new CI($stringToBytes("\n"))),g);$r=c.Write(f);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("</span>");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderYamlFrontMatterContent,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};P.prototype.renderYamlFrontMatterContent=function(a,b){return this.$val.renderYamlFrontMatterContent(a,b);};P.ptr.prototype.renderYamlFrontMatterOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","yaml-front-matter-open-marker"]),new CJ(["class","vditor-sv__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Write(J.YamlFrontMatterMarker);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Newline();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderYamlFrontMatterOpenMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderYamlFrontMatterOpenMarker=function(a,b){return this.$val.renderYamlFrontMatterOpenMarker(a,b);};P.ptr.prototype.renderYamlFrontMatter=function(a,b){var a,b,c;c=this;return 2;};P.prototype.renderYamlFrontMatter=function(a,b){return this.$val.renderYamlFrontMatter(a,b);};P.ptr.prototype.renderHtmlEntity=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--pre"]),new CJ(["data-type","html-entity"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Write(G.EscapeHTML(a.HtmlEntityTokens));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderHtmlEntity,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderHtmlEntity=function(a,b){return this.$val.renderHtmlEntity(a,b);};P.ptr.prototype.renderBackslashContent=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.Write(G.EscapeHTML(a.Tokens));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderBackslashContent,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderBackslashContent=function(a,b){return this.$val.renderBackslashContent(a,b);};P.ptr.prototype.renderBackslash=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.WriteString("<span data-type=\"backslash\">");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("<span class=\"vditor-sv__marker\">");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteByte(92);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("</span>");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.WriteString("</span>");$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderBackslash,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderBackslash=function(a,b){return this.$val.renderBackslash(a,b);};P.ptr.prototype.renderToC=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.WriteString("<span class=\"vditor-toc\" data-type=\"toc-block\" contenteditable=\"false\">");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("[toc]");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("</span>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Newline();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Write($pkg.NewlineSV);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderToC,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderToC=function(a,b){return this.$val.renderToC(a,b);};P.ptr.prototype.renderFootnotesDefBlock=function(a,b){var a,b,c;c=this;return 2;};P.prototype.renderFootnotesDefBlock=function(a,b){return this.$val.renderFootnotesDefBlock(a,b);};P.ptr.prototype.renderFootnotesDef=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:a=[a];c=[c];c[0]=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(c[0].BaseRenderer.RenderingFootnotes){$s=-1;return 2;}$r=c[0].BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--bracket"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c[0].WriteByte(91);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c[0].BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c[0].BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--link"]),new CJ(["data-type","footnotes-link"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c[0].Write(a[0].Tokens);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c[0].BaseRenderer.Tag("/span",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c[0].BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--bracket"])]),false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c[0].WriteByte(93);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c[0].BaseRenderer.Tag("/span",CL.nil,false);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c[0].WriteString("<span>: </span>");$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a[0].FirstChild;case 13:if(!(!(CM.nil===d))){$s=14;continue;}$r=H.Walk(d,(function(a,c){return function $b(e,f){var{e,f,g,h,i,j,$s,$r,$c}=$restore(this,{e,f});$s=$s||0;s:while(true){switch($s){case 0:if(f&&!(e===a[0].FirstChild)&&(e.IsBlock()||(15===e.Type)||(13===e.Type))){$s=1;continue;}$s=2;continue;case 1:g="<span data-type=\"padding\"> </span>";if(13===e.Type){$s=3;continue;}$s=4;continue;case 3:e.Tokens=$appendSlice((new CI($stringToBytes(g))),e.Tokens);$s=5;continue;case 4:$r=c[0].WriteString(g);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:case 2:i=(h=$mapIndex(c[0].BaseRenderer.RendererFuncs,H.NodeType.keyFor(e.Type)),h!==undefined?h.v:$throwNilPointerError)(e,f);$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;$s=8;case 8:return j;}return;}var $f={$blk:$b,$c:true,$r,e,f,g,h,i,j,$s};return $f;};})(a,c));$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=d.Next;$s=13;continue;case 14:$s=-1;return 1;case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderFootnotesDef,$c:true,$r,a,b,c,d,$s};return $f;};P.prototype.renderFootnotesDef=function(a,b){return this.$val.renderFootnotesDef(a,b);};P.ptr.prototype.renderFootnotesRef=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!b){$s=-1;return 2;}d=a.PreviousNodeText();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;e=C.ReplaceAll(e,"\xE2\x80\xB8","");g=c.BaseRenderer.Tree.FindFootnotesDef(a.Tokens);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[1];i=h.Text();$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;k=new CL([new CJ(["data-type","footnotes-ref"])]);k=$append(k,new CJ(["class","b3-tooltips b3-tooltips__s"]));l=G.EscapeString(j);$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=AS(l,24);$s=5;case 5:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}k=$append(k,new CJ(["aria-label",m]));k=$append(k,new CJ(["data-footnotes-label",($bytesToString(a.FootnotesRefLabel))]));$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","sup"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--bracket"])]),false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteByte(91);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--link"])]),false);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Write(a.Tokens);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--bracket"])]),false);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteByte(93);$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderFootnotesRef,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,$s};return $f;};P.prototype.renderFootnotesRef=function(a,b){return this.$val.renderFootnotesRef(a,b);};P.ptr.prototype.renderCodeBlockCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","code-block-close-marker"]),new CJ(["class","vditor-sv__marker"])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Write(a.Tokens);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Newline();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderCodeBlockCloseMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderCodeBlockCloseMarker=function(a,b){return this.$val.renderCodeBlockCloseMarker(a,b);};P.ptr.prototype.renderCodeBlockInfoMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--info"]),new CJ(["data-type","code-block-info"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Write(a.CodeBlockInfo);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Newline();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderCodeBlockInfoMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderCodeBlockInfoMarker=function(a,b){return this.$val.renderCodeBlockInfoMarker(a,b);};P.ptr.prototype.renderCodeBlockOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","code-block-open-marker"]),new CJ(["class","vditor-sv__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Write(a.Tokens);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderCodeBlockOpenMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderCodeBlockOpenMarker=function(a,b){return this.$val.renderCodeBlockOpenMarker(a,b);};P.ptr.prototype.renderCodeBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(!a.IsFencedCodeBlock){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","code-block-open-marker"]),new CJ(["class","vditor-sv__marker"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("```");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Newline();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:$s=3;continue;case 2:if(!a.IsFencedCodeBlock){$s=10;continue;}$s=11;continue;case 10:$r=c.Newline();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--info"]),new CJ(["data-type","code-block-info"])]),false);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("```");$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 11:$r=c.Newline();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Write($pkg.NewlineSV);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderCodeBlock,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderCodeBlock=function(a,b){return this.$val.renderCodeBlock(a,b);};P.ptr.prototype.renderCodeBlockCode=function(a,b){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","text"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=A.TrimSpace(a.Tokens);$s=4;case 4:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=G.EscapeHTML(d);$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;g=$appendSlice((new CI($stringToBytes("<span data-type=\"padding\"></span>"))),$pkg.NewlineSV);f=A.ReplaceAll(f,(new CI($stringToBytes("\n"))),g);$r=c.Write(f);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("</span>");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderCodeBlockCode,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};P.prototype.renderCodeBlockCode=function(a,b){return this.$val.renderCodeBlockCode(a,b);};P.ptr.prototype.renderEmojiAlias=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderEmojiAlias,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderEmojiAlias=function(a,b){return this.$val.renderEmojiAlias(a,b);};P.ptr.prototype.renderEmojiImg=function(a,b){var a,b,c;c=this;return 2;};P.prototype.renderEmojiImg=function(a,b){return this.$val.renderEmojiImg(a,b);};P.ptr.prototype.renderEmojiUnicode=function(a,b){var a,b,c;c=this;return 2;};P.prototype.renderEmojiUnicode=function(a,b){return this.$val.renderEmojiUnicode(a,b);};P.ptr.prototype.renderEmoji=function(a,b){var a,b,c;c=this;return 2;};P.prototype.renderEmoji=function(a,b){return this.$val.renderEmoji(a,b);};P.ptr.prototype.renderInlineMathCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteByte(36);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderInlineMathCloseMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderInlineMathCloseMarker=function(a,b){return this.$val.renderInlineMathCloseMarker(a,b);};P.ptr.prototype.renderInlineMathContent=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=G.EscapeHTML(a.Tokens);$r=c.Write(d);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/code",CL.nil,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderInlineMathContent,$c:true,$r,a,b,c,d,$s};return $f;};P.prototype.renderInlineMathContent=function(a,b){return this.$val.renderInlineMathContent(a,b);};P.ptr.prototype.renderInlineMathOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteByte(36);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderInlineMathOpenMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderInlineMathOpenMarker=function(a,b){return this.$val.renderInlineMathOpenMarker(a,b);};P.ptr.prototype.renderInlineMath=function(a,b){var a,b,c;c=this;return 2;};P.prototype.renderInlineMath=function(a,b){return this.$val.renderInlineMath(a,b);};P.ptr.prototype.renderMathBlockCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","math-block-close-marker"]),new CJ(["class","vditor-sv__marker"])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("$$");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Newline();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Write($pkg.NewlineSV);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderMathBlockCloseMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderMathBlockCloseMarker=function(a,b){return this.$val.renderMathBlockCloseMarker(a,b);};P.ptr.prototype.renderMathBlockContent=function(a,b){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","text"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=A.TrimSpace(a.Tokens);$s=4;case 4:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=G.EscapeHTML(d);$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;g=$appendSlice((new CI($stringToBytes("<span data-type=\"padding\"></span>"))),$pkg.NewlineSV);f=A.ReplaceAll(f,(new CI($stringToBytes("\n"))),g);$r=c.Write(f);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("</span>");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderMathBlockContent,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};P.prototype.renderMathBlockContent=function(a,b){return this.$val.renderMathBlockContent(a,b);};P.ptr.prototype.renderMathBlockOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","math-block-open-marker"]),new CJ(["class","vditor-sv__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("$$");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Newline();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderMathBlockOpenMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderMathBlockOpenMarker=function(a,b){return this.$val.renderMathBlockOpenMarker(a,b);};P.ptr.prototype.renderMathBlock=function(a,b){var a,b,c;c=this;return 2;};P.prototype.renderMathBlock=function(a,b){return this.$val.renderMathBlock(a,b);};P.ptr.prototype.renderTableCell=function(a,b){var a,b,c;c=this;return 2;};P.prototype.renderTableCell=function(a,b){return this.$val.renderTableCell(a,b);};P.ptr.prototype.renderTableRow=function(a,b){var a,b,c;c=this;return 2;};P.prototype.renderTableRow=function(a,b){return this.$val.renderTableRow(a,b);};P.ptr.prototype.renderTableHead=function(a,b){var a,b,c;c=this;return 2;};P.prototype.renderTableHead=function(a,b){return this.$val.renderTableHead(a,b);};P.ptr.prototype.renderTable=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","table"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Write(a.Tokens);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Newline();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Write($pkg.NewlineSV);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:P.ptr.prototype.renderTable,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderTable=function(a,b){return this.$val.renderTable(a,b);};P.ptr.prototype.renderStrikethrough=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:c.BaseRenderer.Writer=new A.Buffer.ptr(CI.nil,0,0);c.nodeWriterStack=$append(c.nodeWriterStack,c.BaseRenderer.Writer);$s=3;continue;case 2:$r=c.popWriteClass(a,"s");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderStrikethrough,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderStrikethrough=function(a,b){return this.$val.renderStrikethrough(a,b);};P.ptr.prototype.renderStrikethrough1OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("~");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderStrikethrough1OpenMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderStrikethrough1OpenMarker=function(a,b){return this.$val.renderStrikethrough1OpenMarker(a,b);};P.ptr.prototype.renderStrikethrough1CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("~");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderStrikethrough1CloseMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderStrikethrough1CloseMarker=function(a,b){return this.$val.renderStrikethrough1CloseMarker(a,b);};P.ptr.prototype.renderStrikethrough2OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("~~");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderStrikethrough2OpenMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderStrikethrough2OpenMarker=function(a,b){return this.$val.renderStrikethrough2OpenMarker(a,b);};P.ptr.prototype.renderStrikethrough2CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("~~");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderStrikethrough2CloseMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderStrikethrough2CloseMarker=function(a,b){return this.$val.renderStrikethrough2CloseMarker(a,b);};P.ptr.prototype.renderLinkTitle=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if((33===a.Parent.Type)&&(3===a.Parent.LinkType)){$s=-1;return 2;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--title"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteByte(34);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Write(a.Tokens);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteByte(34);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderLinkTitle,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderLinkTitle=function(a,b){return this.$val.renderLinkTitle(a,b);};P.ptr.prototype.renderLinkDest=function(a,b){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if((33===a.Parent.Type)&&(3===a.Parent.LinkType)){$s=-1;return 2;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--link"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.Tokens;if(c.BaseRenderer.Options.Sanitize){$s=4;continue;}$s=5;continue;case 4:e=A.TrimSpace(d);$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;g=A.ToLower(f);$s=7;case 7:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;if(A.HasPrefix(f,(new CI($stringToBytes("javascript:"))))){d=CI.nil;}case 5:d=G.EscapeHTML(d);$r=c.Write(d);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderLinkDest,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};P.prototype.renderLinkDest=function(a,b){return this.$val.renderLinkDest(a,b);};P.ptr.prototype.renderLinkSpace=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if((33===a.Parent.Type)&&(3===a.Parent.LinkType)){$s=-1;return 2;}$r=c.WriteByte(32);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderLinkSpace,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderLinkSpace=function(a,b){return this.$val.renderLinkSpace(a,b);};P.ptr.prototype.renderLinkText=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(34===a.Parent.Type){$s=3;continue;}$s=4;continue;case 3:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--bracket"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=5;continue;case 4:if(3===a.Parent.LinkType){$s=7;continue;}$s=8;continue;case 7:$r=c.BaseRenderer.Tag("span",CL.nil,false);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=9;continue;case 8:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--bracket"]),new CJ(["data-type","link-text"])]),false);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 9:case 5:$r=c.Write(a.Tokens);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderLinkText,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderLinkText=function(a,b){return this.$val.renderLinkText(a,b);};P.ptr.prototype.renderCloseParen=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if((33===a.Parent.Type)&&(3===a.Parent.LinkType)){$s=-1;return 2;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--paren"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteByte(41);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderCloseParen,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderCloseParen=function(a,b){return this.$val.renderCloseParen(a,b);};P.ptr.prototype.renderOpenParen=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if((33===a.Parent.Type)&&(3===a.Parent.LinkType)){$s=-1;return 2;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--paren"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteByte(40);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderOpenParen,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderOpenParen=function(a,b){return this.$val.renderOpenParen(a,b);};P.ptr.prototype.renderCloseBrace=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if((33===a.Parent.Type)&&(3===a.Parent.LinkType)){$s=-1;return 2;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--brace"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteByte(125);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderCloseBrace,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderCloseBrace=function(a,b){return this.$val.renderCloseBrace(a,b);};P.ptr.prototype.renderOpenBrace=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if((33===a.Parent.Type)&&(3===a.Parent.LinkType)){$s=-1;return 2;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--brace"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteByte(123);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderOpenBrace,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderOpenBrace=function(a,b){return this.$val.renderOpenBrace(a,b);};P.ptr.prototype.renderCloseBracket=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--bracket"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteByte(93);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(3===a.Parent.LinkType){$s=6;continue;}$s=7;continue;case 6:d=a.Parent.ChildByType(40);if(CM.nil===d||!A.EqualFold(a.Parent.LinkRefLabel,d.Tokens)){$s=8;continue;}$s=9;continue;case 8:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--link"])]),false);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteByte(91);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Write(a.Parent.LinkRefLabel);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteByte(93);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 9:case 7:case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderCloseBracket,$c:true,$r,a,b,c,d,$s};return $f;};P.prototype.renderCloseBracket=function(a,b){return this.$val.renderCloseBracket(a,b);};P.ptr.prototype.renderOpenBracket=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--bracket"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteByte(91);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderOpenBracket,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderOpenBracket=function(a,b){return this.$val.renderOpenBracket(a,b);};P.ptr.prototype.renderBang=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteByte(33);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderBang,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderBang=function(a,b){return this.$val.renderBang(a,b);};P.ptr.prototype.renderImage=function(a,b){var a,b,c,d;c=this;if(b){if(3===a.LinkType){a.ChildByType(38).Unlink();a.ChildByType(41).Unlink();d=a.ChildByType(43);if(!(CM.nil===d)){d.Unlink();a.ChildByType(42).Unlink();}a.ChildByType(39).Unlink();}}return 2;};P.prototype.renderImage=function(a,b){return this.$val.renderImage(a,b);};P.ptr.prototype.renderLink=function(a,b){var a,b,c;c=this;return 2;};P.prototype.renderLink=function(a,b){return this.$val.renderLink(a,b);};P.ptr.prototype.renderHTML=function(a,b){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=A.TrimSpace(a.Tokens);$s=4;case 4:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=G.EscapeHTML(d);$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;g=$appendSlice((new CI($stringToBytes("<span data-type=\"padding\"></span>"))),$pkg.NewlineSV);f=A.ReplaceAll(f,(new CI($stringToBytes("\n"))),g);$r=c.Write(f);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("</span>");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Newline();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Write($pkg.NewlineSV);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderHTML,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};P.prototype.renderHTML=function(a,b){return this.$val.renderHTML(a,b);};P.ptr.prototype.renderInlineHTML=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Write(G.EscapeHTML(a.Tokens));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderInlineHTML,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderInlineHTML=function(a,b){return this.$val.renderInlineHTML(a,b);};P.ptr.prototype.renderDocument=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:c.BaseRenderer.Writer=new A.Buffer.ptr(CI.nil,0,0);c.nodeWriterStack=$append(c.nodeWriterStack,c.BaseRenderer.Writer);$s=3;continue;case 2:c.nodeWriterStack=$subslice(c.nodeWriterStack,0,(c.nodeWriterStack.$length-1>>0));d=A.Trim(c.BaseRenderer.Writer.Bytes()," \t\n");c.BaseRenderer.Writer.Reset();$r=c.Write(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderDocument,$c:true,$r,a,b,c,d,$s};return $f;};P.prototype.renderDocument=function(a,b){return this.$val.renderDocument(a,b);};P.ptr.prototype.renderParagraph=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:c.BaseRenderer.Writer=new A.Buffer.ptr(CI.nil,0,0);c.nodeWriterStack=$append(c.nodeWriterStack,c.BaseRenderer.Writer);$s=3;continue;case 2:$r=c.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.Parent.Parent;e=!(CM.nil===d)&&(7===d.Type)&&d.ListData.Tight;if(!e){$s=5;continue;}$s=6;continue;case 5:$r=c.Write($pkg.NewlineSV);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:$r=c.popWriter(a);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderParagraph,$c:true,$r,a,b,c,d,e,$s};return $f;};P.prototype.renderParagraph=function(a,b){return this.$val.renderParagraph(a,b);};P.ptr.prototype.renderText=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(a.ParentIs(109,CN.nil)){$s=-1;return 2;}if(b){$s=1;continue;}$s=2;continue;case 1:d=a.Tokens;if(c.BaseRenderer.Options.FixTermTypo){$s=3;continue;}$s=4;continue;case 3:e=c.BaseRenderer.FixTermTypo(d);$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;case 4:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","text"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=A.TrimRight(d,"\n");$r=c.Write(G.EscapeHTML(d));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderText,$c:true,$r,a,b,c,d,e,$s};return $f;};P.prototype.renderText=function(a,b){return this.$val.renderText(a,b);};P.ptr.prototype.renderCodeSpan=function(a,b){var a,b,c;c=this;return 2;};P.prototype.renderCodeSpan=function(a,b){return this.$val.renderCodeSpan(a,b);};P.ptr.prototype.renderCodeSpanOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString(C.Repeat("`",a.Parent.CodeMarkerLen));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(A.HasPrefix(a.Next.Tokens,(new CI($stringToBytes("`"))))){$s=5;continue;}$s=6;continue;case 5:$r=c.WriteByte(32);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",CL.nil,false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderCodeSpanOpenMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderCodeSpanOpenMarker=function(a,b){return this.$val.renderCodeSpanOpenMarker(a,b);};P.ptr.prototype.renderCodeSpanContent=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.Write(G.EscapeHTML(a.Tokens));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderCodeSpanContent,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderCodeSpanContent=function(a,b){return this.$val.renderCodeSpanContent(a,b);};P.ptr.prototype.renderCodeSpanCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker"])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(A.HasSuffix(a.Previous.Tokens,(new CI($stringToBytes("`"))))){$s=5;continue;}$s=6;continue;case 5:$r=c.WriteByte(32);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:$r=c.WriteString(C.Repeat("`",a.Parent.CodeMarkerLen));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderCodeSpanCloseMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderCodeSpanCloseMarker=function(a,b){return this.$val.renderCodeSpanCloseMarker(a,b);};P.ptr.prototype.renderEmphasis=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:c.BaseRenderer.Writer=new A.Buffer.ptr(CI.nil,0,0);c.nodeWriterStack=$append(c.nodeWriterStack,c.BaseRenderer.Writer);$s=3;continue;case 2:$r=c.popWriteClass(a,"em");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderEmphasis,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderEmphasis=function(a,b){return this.$val.renderEmphasis(a,b);};P.ptr.prototype.popWriteClass=function(a,b){var{a,b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;c.nodeWriterStack=$subslice(c.nodeWriterStack,0,(c.nodeWriterStack.$length-1>>0));$r=c.renderClass(a,b);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=(d=c.nodeWriterStack,e=c.nodeWriterStack.$length-1>>0,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e])).Write(c.BaseRenderer.Writer.Bytes());$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;c.BaseRenderer.Writer=(g=c.nodeWriterStack,h=c.nodeWriterStack.$length-1>>0,((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]));$s=-1;return;}return;}var $f={$blk:P.ptr.prototype.popWriteClass,$c:true,$r,a,b,c,d,e,f,g,h,$s};return $f;};P.prototype.popWriteClass=function(a,b){return this.$val.popWriteClass(a,b);};P.ptr.prototype.popWriter=function(a){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;b.nodeWriterStack=$subslice(b.nodeWriterStack,0,(b.nodeWriterStack.$length-1>>0));e=(c=b.nodeWriterStack,d=b.nodeWriterStack.$length-1>>0,((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d])).Write(b.BaseRenderer.Writer.Bytes());$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;b.BaseRenderer.Writer=(f=b.nodeWriterStack,g=b.nodeWriterStack.$length-1>>0,((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]));$s=-1;return;}return;}var $f={$blk:P.ptr.prototype.popWriter,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};P.prototype.popWriter=function(a){return this.$val.popWriter(a);};P.ptr.prototype.renderEmAsteriskOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--bi"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteByte(42);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderEmAsteriskOpenMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderEmAsteriskOpenMarker=function(a,b){return this.$val.renderEmAsteriskOpenMarker(a,b);};P.ptr.prototype.renderEmAsteriskCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--bi"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteByte(42);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderEmAsteriskCloseMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderEmAsteriskCloseMarker=function(a,b){return this.$val.renderEmAsteriskCloseMarker(a,b);};P.ptr.prototype.renderEmUnderscoreOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--bi"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteByte(95);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderEmUnderscoreOpenMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderEmUnderscoreOpenMarker=function(a,b){return this.$val.renderEmUnderscoreOpenMarker(a,b);};P.ptr.prototype.renderEmUnderscoreCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--bi"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteByte(95);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderEmUnderscoreCloseMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderEmUnderscoreCloseMarker=function(a,b){return this.$val.renderEmUnderscoreCloseMarker(a,b);};P.ptr.prototype.renderStrong=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:c.BaseRenderer.Writer=new A.Buffer.ptr(CI.nil,0,0);c.nodeWriterStack=$append(c.nodeWriterStack,c.BaseRenderer.Writer);$s=3;continue;case 2:$r=c.popWriteClass(a,"strong");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderStrong,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderStrong=function(a,b){return this.$val.renderStrong(a,b);};P.ptr.prototype.renderStrongA6kOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--bi"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("**");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderStrongA6kOpenMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderStrongA6kOpenMarker=function(a,b){return this.$val.renderStrongA6kOpenMarker(a,b);};P.ptr.prototype.renderStrongA6kCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--bi"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("**");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderStrongA6kCloseMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderStrongA6kCloseMarker=function(a,b){return this.$val.renderStrongA6kCloseMarker(a,b);};P.ptr.prototype.renderStrongU8eOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--bi"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("__");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderStrongU8eOpenMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderStrongU8eOpenMarker=function(a,b){return this.$val.renderStrongU8eOpenMarker(a,b);};P.ptr.prototype.renderStrongU8eCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--bi"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("__");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderStrongU8eCloseMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderStrongU8eCloseMarker=function(a,b){return this.$val.renderStrongU8eCloseMarker(a,b);};P.ptr.prototype.renderBlockquote=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:c.BaseRenderer.Writer=new A.Buffer.ptr(CI.nil,0,0);c.nodeWriterStack=$append(c.nodeWriterStack,c.BaseRenderer.Writer);$s=3;continue;case 2:f=(d=c.nodeWriterStack,e=c.nodeWriterStack.$length-1>>0,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]));c.nodeWriterStack=$subslice(c.nodeWriterStack,0,(c.nodeWriterStack.$length-1>>0));g=f.Bytes();h=(new CI($stringToBytes("<span data-type=\"blockquote-marker\" class=\"vditor-sv__marker\">> </span>")));g=$appendSlice(h,g);while(true){if(!(A.HasSuffix(g,$pkg.NewlineSV))){break;}g=A.TrimSuffix(g,$pkg.NewlineSV);}g=A.ReplaceAll(g,$pkg.NewlineSV,$appendSlice($pkg.NewlineSV,h));f.Reset();i=f.Write(g);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;l=(j=c.nodeWriterStack,k=c.nodeWriterStack.$length-1>>0,((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k])).Write(f.Bytes());$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}l;c.BaseRenderer.Writer=(m=c.nodeWriterStack,n=c.nodeWriterStack.$length-1>>0,((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]));g=c.BaseRenderer.Writer.Bytes();c.BaseRenderer.Writer.Reset();$r=c.Write(g);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Newline();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Write($pkg.NewlineSV);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderBlockquote,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,$s};return $f;};P.prototype.renderBlockquote=function(a,b){return this.$val.renderBlockquote(a,b);};P.ptr.prototype.renderBlockquoteMarker=function(a,b){var a,b,c;c=this;return 2;};P.prototype.renderBlockquoteMarker=function(a,b){return this.$val.renderBlockquoteMarker(a,b);};P.ptr.prototype.renderHeading=function(a,b){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:c.BaseRenderer.Writer=new A.Buffer.ptr(CI.nil,0,0);c.nodeWriterStack=$append(c.nodeWriterStack,c.BaseRenderer.Writer);if(!a.HeadingSetext){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--heading"]),new CJ(["data-type","heading-marker"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString(C.Repeat("#",a.HeadingLevel)+" ");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:$s=3;continue;case 2:if(a.HeadingSetext){$s=9;continue;}$s=10;continue;case 9:$r=c.Newline();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker--heading"]),new CJ(["data-type","heading-marker"])]),false);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=c.BaseRenderer.setextHeadingLen(a);$s=13;case 13:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(1===a.HeadingLevel){$s=14;continue;}$s=15;continue;case 14:$r=c.WriteString(C.Repeat("=",e));$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=16;continue;case 15:$r=c.WriteString(C.Repeat("-",e));$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 16:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:f="h"+$substring(" 123456",a.HeadingLevel,(a.HeadingLevel+1>>0));$r=c.renderClass(a,f);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Newline();$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Write($pkg.NewlineSV);$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.popWriter(a);$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderHeading,$c:true,$r,a,b,c,d,e,f,$s};return $f;};P.prototype.renderHeading=function(a,b){return this.$val.renderHeading(a,b);};P.ptr.prototype.renderClass=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=c.BaseRenderer.Writer.Bytes();e=A.NewReader(d);f=new G.Node.ptr(CU.nil,CU.nil,CU.nil,CU.nil,CU.nil,3,0,"","",CW.nil);h=G.ParseFragment(e,f);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[0];c.BaseRenderer.Writer.Reset();j=0;case 2:if(!(j<i.$length)){$s=3;continue;}k=((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]);l=c.domAttrValue(k,"class");if(""===l){l=b;}else{l=l+(" "+b);}c.domSetAttrValue(k,"class",l);m=G.Render(c.BaseRenderer.Writer,k);$s=4;case 4:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;j=j+(1)>>0;$s=2;continue;case 3:$s=-1;return;}return;}var $f={$blk:P.ptr.prototype.renderClass,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,$s};return $f;};P.prototype.renderClass=function(a,b){return this.$val.renderClass(a,b);};P.ptr.prototype.domAttrValue=function(a,b){var a,b,c,d,e,f;c=this;if(CU.nil===a){return"";}d=a.Attr;e=0;while(true){if(!(e<d.$length)){break;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);if(f.Key===b){return f.Val;}e++;}return"";};P.prototype.domAttrValue=function(a,b){return this.$val.domAttrValue(a,b);};P.ptr.prototype.domSetAttrValue=function(a,b,c){var a,b,c,d,e,f,g;d=this;if(CU.nil===a){return;}e=a.Attr;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);if(g.Key===b){g.Val=c;return;}f++;}a.Attr=$append(a.Attr,new G.Attribute.ptr("",b,c));};P.prototype.domSetAttrValue=function(a,b,c){return this.$val.domSetAttrValue(a,b,c);};P.ptr.prototype.renderHeadingC8hMarker=function(a,b){var a,b,c;c=this;return 2;};P.prototype.renderHeadingC8hMarker=function(a,b){return this.$val.renderHeadingC8hMarker(a,b);};P.ptr.prototype.renderHeadingID=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString(" {"+($bytesToString(a.Tokens))+"}");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderHeadingID,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderHeadingID=function(a,b){return this.$val.renderHeadingID(a,b);};P.ptr.prototype.renderList=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!b){$s=1;continue;}$s=2;continue;case 1:$r=c.Write($pkg.NewlineSV);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderList,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderList=function(a,b){return this.$val.renderList(a,b);};P.ptr.prototype.renderListItem=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:c.BaseRenderer.Writer=new A.Buffer.ptr(CI.nil,0,0);c.nodeWriterStack=$append(c.nodeWriterStack,c.BaseRenderer.Writer);$s=3;continue;case 2:f=(d=c.nodeWriterStack,e=c.nodeWriterStack.$length-1>>0,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]));c.nodeWriterStack=$subslice(c.nodeWriterStack,0,(c.nodeWriterStack.$length-1>>0));g=f.Bytes();h="";if((1===a.ListData.Typ)||((3===a.ListData.Typ)&&(0===a.ListData.BulletChar))){h=B.Itoa(a.ListData.Num)+($encodeRune(a.ListData.Delimiter));}else{h=($bytesToString(a.ListData.Marker));}i=(new CI($stringToBytes("<span data-type=\"li-marker\" class=\"vditor-sv__marker\">"+h+" </span>")));g=$appendSlice(i,g);while(true){if(!(A.HasSuffix(g,$pkg.NewlineSV))){break;}g=A.TrimSuffix(g,$pkg.NewlineSV);}j=(new CI($stringToBytes("<span data-type=\"padding\">"+C.Repeat(" ",a.ListData.Padding)+"</span>")));g=A.ReplaceAll(g,$pkg.NewlineSV,$appendSlice($pkg.NewlineSV,j));f.Reset();k=f.Write(g);$s=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;n=(l=c.nodeWriterStack,m=c.nodeWriterStack.$length-1>>0,((m<0||m>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+m])).Write(f.Bytes());$s=5;case 5:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;c.BaseRenderer.Writer=(o=c.nodeWriterStack,p=c.nodeWriterStack.$length-1>>0,((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]));g=c.BaseRenderer.Writer.Bytes();c.BaseRenderer.Writer.Reset();$r=c.Write(g);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Write($pkg.NewlineSV);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderListItem,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s};return $f;};P.prototype.renderListItem=function(a,b){return this.$val.renderListItem(a,b);};P.ptr.prototype.renderTaskListItemMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!b){$s=-1;return 2;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","task-marker"]),new CJ(["class","vditor-sv__marker--bi"])]),false);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteByte(91);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(a.TaskListItemChecked){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","task-marker"]),new CJ(["class","vditor-sv__marker--strong"])]),false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteByte(120);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=6;continue;case 5:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","task-marker"]),new CJ(["class","vditor-sv__marker--bi"])]),false);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteByte(32);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","task-marker"]),new CJ(["class","vditor-sv__marker--bi"])]),false);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("] ");$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a.Next.Tokens=A.TrimPrefix(a.Next.Tokens,(new CI($stringToBytes(" "))));$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderTaskListItemMarker,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderTaskListItemMarker=function(a,b){return this.$val.renderTaskListItemMarker(a,b);};P.ptr.prototype.renderThematicBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-sv__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.WriteString("---");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Newline();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.Write($pkg.NewlineSV);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderThematicBreak,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderThematicBreak=function(a,b){return this.$val.renderThematicBreak(a,b);};P.ptr.prototype.renderHardBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderHardBreak,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderHardBreak=function(a,b){return this.$val.renderHardBreak(a,b);};P.ptr.prototype.renderSoftBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:P.ptr.prototype.renderSoftBreak,$c:true,$r,a,b,c,$s};return $f;};P.prototype.renderSoftBreak=function(a,b){return this.$val.renderSoftBreak(a,b);};P.ptr.prototype.Text=function(a){var{a,b,c,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=[b];b[0]="";c=this;$r=H.Walk(a,(function(b){return function(d,e){var d,e,f;if(e){f=d.Type;if((f===(16))||(f===(40))||(f===(41))||(f===(42))||(f===(15))||(f===(29))||(f===(306))||(f===(302))||(f===(9))||(f===(10))){b[0]=b[0]+(($bytesToString(d.Tokens)));}else if(f===(14)){b[0]=b[0]+(($bytesToString(d.CodeBlockInfo)));}else if(f===(33)){if(3===d.LinkType){b[0]=b[0]+(($bytesToString(d.LinkRefLabel)));}}}return 2;};})(b));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return b[0];}return;}var $f={$blk:P.ptr.prototype.Text,$c:true,$r,a,b,c,$s};return $f;};P.prototype.Text=function(a){return this.$val.Text(a);};S=function(a,b){var{a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=AR(a,b);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=new R.ptr(c);e=0;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(e),{k:e,v:$methodVal(d,"renderDocument")});f=1;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(f),{k:f,v:$methodVal(d,"renderParagraph")});g=16;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(g),{k:g,v:$methodVal(d,"renderText")});h=27;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(h),{k:h,v:$methodVal(d,"renderCodeSpan")});i=28;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(i),{k:i,v:$methodVal(d,"renderCodeSpanOpenMarker")});j=29;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(j),{k:j,v:$methodVal(d,"renderCodeSpanContent")});k=30;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(k),{k:k,v:$methodVal(d,"renderCodeSpanCloseMarker")});l=11;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(l),{k:l,v:$methodVal(d,"renderCodeBlock")});m=12;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(m),{k:m,v:$methodVal(d,"renderCodeBlockOpenMarker")});n=14;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(n),{k:n,v:$methodVal(d,"renderCodeBlockInfoMarker")});o=15;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(o),{k:o,v:$methodVal(d,"renderCodeBlockCode")});p=13;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(p),{k:p,v:$methodVal(d,"renderCodeBlockCloseMarker")});q=300;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(q),{k:q,v:$methodVal(d,"renderMathBlock")});r=301;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(r),{k:r,v:$methodVal(d,"renderMathBlockOpenMarker")});s=302;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(s),{k:s,v:$methodVal(d,"renderMathBlockContent")});t=303;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(t),{k:t,v:$methodVal(d,"renderMathBlockCloseMarker")});u=304;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(u),{k:u,v:$methodVal(d,"renderInlineMath")});v=305;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(v),{k:v,v:$methodVal(d,"renderInlineMathOpenMarker")});w=306;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(w),{k:w,v:$methodVal(d,"renderInlineMathContent")});x=307;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(x),{k:x,v:$methodVal(d,"renderInlineMathCloseMarker")});y=17;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(y),{k:y,v:$methodVal(d,"renderEmphasis")});z=18;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(z),{k:z,v:$methodVal(d,"renderEmAsteriskOpenMarker")});aa=19;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aa),{k:aa,v:$methodVal(d,"renderEmAsteriskCloseMarker")});ab=20;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ab),{k:ab,v:$methodVal(d,"renderEmUnderscoreOpenMarker")});ac=21;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ac),{k:ac,v:$methodVal(d,"renderEmUnderscoreCloseMarker")});ad=22;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ad),{k:ad,v:$methodVal(d,"renderStrong")});ae=23;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ae),{k:ae,v:$methodVal(d,"renderStrongA6kOpenMarker")});af=24;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(af),{k:af,v:$methodVal(d,"renderStrongA6kCloseMarker")});ag=25;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ag),{k:ag,v:$methodVal(d,"renderStrongU8eOpenMarker")});ah=26;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ah),{k:ah,v:$methodVal(d,"renderStrongU8eCloseMarker")});ai=5;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ai),{k:ai,v:$methodVal(d,"renderBlockquote")});aj=6;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aj),{k:aj,v:$methodVal(d,"renderBlockquoteMarker")});ak=2;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ak),{k:ak,v:$methodVal(d,"renderHeading")});al=3;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(al),{k:al,v:$methodVal(d,"renderHeadingC8hMarker")});am=420;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(am),{k:am,v:$methodVal(d,"renderHeadingID")});an=7;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(an),{k:an,v:$methodVal(d,"renderList")});ao=8;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ao),{k:ao,v:$methodVal(d,"renderListItem")});ap=4;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ap),{k:ap,v:$methodVal(d,"renderThematicBreak")});aq=31;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aq),{k:aq,v:$methodVal(d,"renderHardBreak")});ar=32;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ar),{k:ar,v:$methodVal(d,"renderSoftBreak")});as=9;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(as),{k:as,v:$methodVal(d,"renderHTML")});at=10;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(at),{k:at,v:$methodVal(d,"renderInlineHTML")});au=33;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(au),{k:au,v:$methodVal(d,"renderLink")});av=34;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(av),{k:av,v:$methodVal(d,"renderImage")});aw=35;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aw),{k:aw,v:$methodVal(d,"renderBang")});ax=36;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ax),{k:ax,v:$methodVal(d,"renderOpenBracket")});ay=37;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ay),{k:ay,v:$methodVal(d,"renderCloseBracket")});az=38;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(az),{k:az,v:$methodVal(d,"renderOpenParen")});ba=39;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ba),{k:ba,v:$methodVal(d,"renderCloseParen")});bb=466;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bb),{k:bb,v:$methodVal(d,"renderOpenBrace")});bc=467;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bc),{k:bc,v:$methodVal(d,"renderCloseBrace")});bd=40;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bd),{k:bd,v:$methodVal(d,"renderLinkText")});be=43;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(be),{k:be,v:$methodVal(d,"renderLinkSpace")});bf=41;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bf),{k:bf,v:$methodVal(d,"renderLinkDest")});bg=42;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bg),{k:bg,v:$methodVal(d,"renderLinkTitle")});bh=101;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bh),{k:bh,v:$methodVal(d,"renderStrikethrough")});bi=102;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bi),{k:bi,v:$methodVal(d,"renderStrikethrough1OpenMarker")});bj=103;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bj),{k:bj,v:$methodVal(d,"renderStrikethrough1CloseMarker")});bk=104;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bk),{k:bk,v:$methodVal(d,"renderStrikethrough2OpenMarker")});bl=105;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bl),{k:bl,v:$methodVal(d,"renderStrikethrough2CloseMarker")});bm=100;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bm),{k:bm,v:$methodVal(d,"renderTaskListItemMarker")});bn=106;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bn),{k:bn,v:$methodVal(d,"renderTable")});bo=107;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bo),{k:bo,v:$methodVal(d,"renderTableHead")});bp=108;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bp),{k:bp,v:$methodVal(d,"renderTableRow")});bq=109;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bq),{k:bq,v:$methodVal(d,"renderTableCell")});br=200;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(br),{k:br,v:$methodVal(d,"renderEmoji")});bs=201;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bs),{k:bs,v:$methodVal(d,"renderEmojiUnicode")});bt=202;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bt),{k:bt,v:$methodVal(d,"renderEmojiImg")});bu=203;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bu),{k:bu,v:$methodVal(d,"renderEmojiAlias")});bv=410;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bv),{k:bv,v:$methodVal(d,"renderFootnotesDefBlock")});bw=411;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bw),{k:bw,v:$methodVal(d,"renderFootnotesDef")});bx=412;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bx),{k:bx,v:$methodVal(d,"renderFootnotesRef")});by=415;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(by),{k:by,v:$methodVal(d,"renderToC")});bz=400;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bz),{k:bz,v:$methodVal(d,"renderBackslash")});ca=401;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ca),{k:ca,v:$methodVal(d,"renderBackslashContent")});cb=44;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cb),{k:cb,v:$methodVal(d,"renderHtmlEntity")});cc=425;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cc),{k:cc,v:$methodVal(d,"renderYamlFrontMatter")});cd=426;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cd),{k:cd,v:$methodVal(d,"renderYamlFrontMatterOpenMarker")});ce=427;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ce),{k:ce,v:$methodVal(d,"renderYamlFrontMatterContent")});cf=428;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cf),{k:cf,v:$methodVal(d,"renderYamlFrontMatterCloseMarker")});cg=450;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cg),{k:cg,v:$methodVal(d,"renderMark")});ch=451;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ch),{k:ch,v:$methodVal(d,"renderMark1OpenMarker")});ci=452;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ci),{k:ci,v:$methodVal(d,"renderMark1CloseMarker")});cj=485;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cj),{k:cj,v:$methodVal(d,"renderSup")});ck=486;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ck),{k:ck,v:$methodVal(d,"renderSupOpenMarker")});cl=487;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cl),{k:cl,v:$methodVal(d,"renderSupCloseMarker")});cm=490;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cm),{k:cm,v:$methodVal(d,"renderSub")});cn=491;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cn),{k:cn,v:$methodVal(d,"renderSubOpenMarker")});co=492;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(co),{k:co,v:$methodVal(d,"renderSubCloseMarker")});cp=453;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cp),{k:cp,v:$methodVal(d,"renderMark2OpenMarker")});cq=454;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cq),{k:cq,v:$methodVal(d,"renderMark2CloseMarker")});cr=455;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cr),{k:cr,v:$methodVal(d,"renderKramdownBlockIAL")});cs=45;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cs),{k:cs,v:$methodVal(d,"renderLinkRefDefBlock")});ct=46;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ct),{k:ct,v:$methodVal(d,"renderLinkRefDef")});$s=-1;return d;}return;}var $f={$blk:S,$c:true,$r,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};$pkg.NewVditorIRRenderer=S;R.ptr.prototype.renderLinkRefDefBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<div data-block=\"0\" data-type=\"link-ref-defs-block\">");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("</div>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderLinkRefDefBlock,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderLinkRefDefBlock=function(a,b){return this.$val.renderLinkRefDefBlock(a,b);};R.ptr.prototype.renderLinkRefDef=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=a.FirstChild.ChildByType(41).Tokens;e=K.BytesToStr(d);$r=c.BaseRenderer.WriteString("["+K.BytesToStr(a.Tokens)+"]:");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!("\xE2\x80\xB8"===e)){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.WriteString(" ");$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:$r=c.BaseRenderer.WriteString(e+"\n");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:R.ptr.prototype.renderLinkRefDef,$c:true,$r,a,b,c,d,e,$s};return $f;};R.prototype.renderLinkRefDef=function(a,b){return this.$val.renderLinkRefDef(a,b);};R.ptr.prototype.renderKramdownBlockIAL=function(a,b){var a,b,c;c=this;return 2;};R.prototype.renderKramdownBlockIAL=function(a,b){return this.$val.renderKramdownBlockIAL(a,b);};R.ptr.prototype.renderMark=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.renderSpanNode(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderMark,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderMark=function(a,b){return this.$val.renderMark(a,b);};R.ptr.prototype.renderMark1OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("=");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("mark",new CL([new CJ(["data-newline","1"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderMark1OpenMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderMark1OpenMarker=function(a,b){return this.$val.renderMark1OpenMarker(a,b);};R.ptr.prototype.renderMark1CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/mark",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker"])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("=");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderMark1CloseMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderMark1CloseMarker=function(a,b){return this.$val.renderMark1CloseMarker(a,b);};R.ptr.prototype.renderMark2OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("==");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("mark",new CL([new CJ(["data-newline","1"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderMark2OpenMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderMark2OpenMarker=function(a,b){return this.$val.renderMark2OpenMarker(a,b);};R.ptr.prototype.renderMark2CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/mark",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker"])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("==");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderMark2CloseMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderMark2CloseMarker=function(a,b){return this.$val.renderMark2CloseMarker(a,b);};R.ptr.prototype.renderSup=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.renderSpanNode(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderSup,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderSup=function(a,b){return this.$val.renderSup(a,b);};R.ptr.prototype.renderSupOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("^");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("sup",new CL([new CJ(["data-newline","1"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderSupOpenMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderSupOpenMarker=function(a,b){return this.$val.renderSupOpenMarker(a,b);};R.ptr.prototype.renderSupCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/sup",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker"])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("^");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderSupCloseMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderSupCloseMarker=function(a,b){return this.$val.renderSupCloseMarker(a,b);};R.ptr.prototype.renderSub=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.renderSpanNode(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderSub,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderSub=function(a,b){return this.$val.renderSub(a,b);};R.ptr.prototype.renderSubOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("~");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("sub",new CL([new CJ(["data-newline","1"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderSubOpenMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderSubOpenMarker=function(a,b){return this.$val.renderSubOpenMarker(a,b);};R.ptr.prototype.renderSubCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/sub",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker"])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("~");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderSubCloseMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderSubCloseMarker=function(a,b){return this.$val.renderSubCloseMarker(a,b);};R.ptr.prototype.renderYamlFrontMatterCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","yaml-front-matter-close-marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(J.YamlFrontMatterMarker);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderYamlFrontMatterCloseMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderYamlFrontMatterCloseMarker=function(a,b){return this.$val.renderYamlFrontMatterCloseMarker(a,b);};R.ptr.prototype.renderYamlFrontMatterContent=function(a,b){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=A.TrimSpace(a.Tokens);$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}a.Tokens=d;e=a.Tokens.$length;f=1>e||((3===e)&&"\xE2\x80\xB8"===($bytesToString(a.Tokens)));$r=c.BaseRenderer.Tag("pre",new CL([new CJ(["class","vditor-ir__marker--pre"])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("code",new CL([new CJ(["data-type","yaml-front-matter"]),new CJ(["class","language-yaml"])]),false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(f){$s=6;continue;}$s=7;continue;case 6:$r=c.BaseRenderer.WriteString("<wbr>\n");$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=8;continue;case 7:$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 8:$r=c.BaseRenderer.WriteString("</code></pre>");$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderYamlFrontMatterContent,$c:true,$r,a,b,c,d,e,f,$s};return $f;};R.prototype.renderYamlFrontMatterContent=function(a,b){return this.$val.renderYamlFrontMatterContent(a,b);};R.ptr.prototype.renderYamlFrontMatterOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","yaml-front-matter-open-marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(J.YamlFrontMatterMarker);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderYamlFrontMatterOpenMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderYamlFrontMatterOpenMarker=function(a,b){return this.$val.renderYamlFrontMatterOpenMarker(a,b);};R.ptr.prototype.renderYamlFrontMatter=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.renderDivNode(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("</div>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderYamlFrontMatter,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderYamlFrontMatter=function(a,b){return this.$val.renderYamlFrontMatter(a,b);};R.ptr.prototype.renderHtmlEntity=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.renderSpanNode(a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("code",new CL([new CJ(["data-newline","1"]),new CJ(["class","vditor-ir__marker vditor-ir__marker--pre"]),new CJ(["data-type","html-entity"])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(G.EscapeHTML(a.HtmlEntityTokens));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/code",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__preview"]),new CJ(["data-render","2"])]),false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("code",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(a.HtmlEntityTokens);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/code",CL.nil,false);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderHtmlEntity,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderHtmlEntity=function(a,b){return this.$val.renderHtmlEntity(a,b);};R.ptr.prototype.renderBackslashContent=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderBackslashContent,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderBackslashContent=function(a,b){return this.$val.renderBackslashContent(a,b);};R.ptr.prototype.renderBackslash=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.renderSpanNode(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker vditor-ir__marker--bi"])]),false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(92);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</span>");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderBackslash,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderBackslash=function(a,b){return this.$val.renderBackslash(a,b);};R.ptr.prototype.renderToC=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=c.BaseRenderer.renderToC(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$s=2;case 2:return e;}return;}var $f={$blk:R.ptr.prototype.renderToC,$c:true,$r,a,b,c,d,e,$s};return $f;};R.prototype.renderToC=function(a,b){return this.$val.renderToC(a,b);};R.ptr.prototype.renderFootnotesDefBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<div data-block=\"0\" data-type=\"footnotes-block\">");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("</div>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderFootnotesDefBlock,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderFootnotesDefBlock=function(a,b){return this.$val.renderFootnotesDefBlock(a,b);};R.ptr.prototype.renderFootnotesDef=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];c[0]=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(c[0].BaseRenderer.RenderingFootnotes){$s=-1;return 2;}$r=c[0].BaseRenderer.WriteString("<div data-type=\"footnotes-def\">");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c[0].BaseRenderer.WriteString("["+($bytesToString(a.Tokens))+"]: ");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.FirstChild;case 5:if(!(!(CM.nil===d))){$s=6;continue;}$r=H.Walk(d,(function(c){return function $b(e,f){var{e,f,g,h,i,$s,$r,$c}=$restore(this,{e,f});$s=$s||0;s:while(true){switch($s){case 0:h=(g=$mapIndex(c[0].BaseRenderer.RendererFuncs,H.NodeType.keyFor(e.Type)),g!==undefined?g.v:$throwNilPointerError)(e,f);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;$s=2;case 2:return i;}return;}var $f={$blk:$b,$c:true,$r,e,f,g,h,i,$s};return $f;};})(c));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=d.Next;$s=5;continue;case 6:$r=c[0].BaseRenderer.WriteString("</div>");$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 1;case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderFootnotesDef,$c:true,$r,a,b,c,d,$s};return $f;};R.prototype.renderFootnotesDef=function(a,b){return this.$val.renderFootnotesDef(a,b);};R.ptr.prototype.renderFootnotesRef=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!b){$s=-1;return 2;}d=a.PreviousNodeText();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;e=C.ReplaceAll(e,"\xE2\x80\xB8","");if(""===e){$s=2;continue;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:g=c.BaseRenderer.Tree.FindFootnotesDef(a.Tokens);$s=5;case 5:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[0];i=f[1];j=B.Itoa(h);k=i.Text();$s=6;case 6:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;m=new CL([new CJ(["data-type","footnotes-ref"])]);n=a.Text();$s=7;case 7:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;p=C.Contains(o,"\xE2\x80\xB8");if(p){m=$append(m,new CJ(["class","vditor-ir__node vditor-ir__node--expand vditor-tooltipped vditor-tooltipped__s"]));}else{m=$append(m,new CJ(["class","vditor-ir__node vditor-tooltipped vditor-tooltipped__s"]));}q=G.EscapeString(l);$s=8;case 8:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=AS(q,24);$s=9;case 9:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}m=$append(m,new CJ(["aria-label",r]));m=$append(m,new CJ(["data-footnotes-label",($bytesToString(a.FootnotesRefLabel))]));$r=c.BaseRenderer.Tag("sup",m,false);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker vditor-ir__marker--bracket"])]),false);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(91);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker vditor-ir__marker--link"])]),false);$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(a.Tokens);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker--hide"]),new CJ(["data-render","1"])]),false);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString(j);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker vditor-ir__marker--bracket"])]),false);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(93);$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</sup>\xE2\x80\x8B");$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderFootnotesRef,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s};return $f;};R.prototype.renderFootnotesRef=function(a,b){return this.$val.renderFootnotesRef(a,b);};R.ptr.prototype.renderCodeBlockCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","code-block-close-marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(a.Tokens);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderCodeBlockCloseMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderCodeBlockCloseMarker=function(a,b){return this.$val.renderCodeBlockCloseMarker(a,b);};R.ptr.prototype.renderCodeBlockInfoMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker vditor-ir__marker--info"]),new CJ(["data-type","code-block-info"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(a.CodeBlockInfo);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderCodeBlockInfoMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderCodeBlockInfoMarker=function(a,b){return this.$val.renderCodeBlockInfoMarker(a,b);};R.ptr.prototype.renderCodeBlockOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","code-block-open-marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(a.Tokens);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderCodeBlockOpenMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderCodeBlockOpenMarker=function(a,b){return this.$val.renderCodeBlockOpenMarker(a,b);};R.ptr.prototype.renderCodeBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.renderDivNode(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("</div>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderCodeBlock,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderCodeBlock=function(a,b){return this.$val.renderCodeBlock(a,b);};R.ptr.prototype.renderCodeBlockCode=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!b){$s=-1;return 2;}d=a.Tokens.$length;e=1>d||((3===d)&&"\xE2\x80\xB8"===($bytesToString(a.Tokens)));f=a.Parent.IsFencedCodeBlock;g=false;h="";if(f){g=A.Contains(a.Previous.CodeBlockInfo,F.CaretTokens);a.Previous.CodeBlockInfo=A.ReplaceAll(a.Previous.CodeBlockInfo,F.CaretTokens,CI.nil);}i=CL.nil;if(f&&0<a.Previous.CodeBlockInfo.$length){$s=1;continue;}$s=2;continue;case 1:j=I.Split(a.Previous.CodeBlockInfo,32);h=($bytesToString((0>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+0])));i=$append(i,new CJ(["class","language-"+h]));if("mindmap"===h){$s=3;continue;}$s=4;continue;case 3:k=BO(a.Tokens);$s=5;case 5:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;i=$append(i,new CJ(["data-code",($bytesToString(l))]));case 4:case 2:m="vditor-ir__marker--pre";if(c.BaseRenderer.Options.VditorCodeBlockPreview){m=m+(" vditor-ir__marker");}$r=c.BaseRenderer.Tag("pre",new CL([new CJ(["class",m])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("code",i,false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(e){$s=8;continue;}$s=9;continue;case 8:if(!g){$s=11;continue;}$s=12;continue;case 11:$r=c.BaseRenderer.WriteString("<wbr>");$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 12:$r=c.BaseRenderer.WriteByte(10);$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 9:$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:$r=c.BaseRenderer.WriteString("</code></pre>");$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c.BaseRenderer.Options.VditorCodeBlockPreview){$s=18;continue;}$s=19;continue;case 18:$r=c.BaseRenderer.Tag("pre",new CL([new CJ(["class","vditor-ir__preview"]),new CJ(["data-render","2"])]),false);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}n=BA(h);if(n){$s=21;continue;}$s=22;continue;case 21:$r=c.BaseRenderer.Tag("div",i,false);$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=23;continue;case 22:$r=c.BaseRenderer.Tag("code",i,false);$s=25;case 25:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 23:o=a.Tokens;o=A.ReplaceAll(o,F.CaretTokens,CI.nil);$r=c.BaseRenderer.Write(G.EscapeHTML(o));$s=26;case 26:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(n){$s=27;continue;}$s=28;continue;case 27:$r=c.BaseRenderer.WriteString("</div></pre>");$s=30;case 30:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=29;continue;case 28:$r=c.BaseRenderer.WriteString("</code></pre>");$s=31;case 31:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 29:case 19:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderCodeBlockCode,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,$s};return $f;};R.prototype.renderCodeBlockCode=function(a,b){return this.$val.renderCodeBlockCode(a,b);};R.ptr.prototype.renderEmojiAlias=function(a,b){var a,b,c;c=this;return 2;};R.prototype.renderEmojiAlias=function(a,b){return this.$val.renderEmojiAlias(a,b);};R.ptr.prototype.renderEmojiImg=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<span data-render=\"2\">");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(a.Tokens);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</span>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(a.FirstChild.Tokens);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderEmojiImg,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderEmojiImg=function(a,b){return this.$val.renderEmojiImg(a,b);};R.ptr.prototype.renderEmojiUnicode=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<span data-render=\"2\">");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(a.Tokens);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</span>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(a.FirstChild.Tokens);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderEmojiUnicode,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderEmojiUnicode=function(a,b){return this.$val.renderEmojiUnicode(a,b);};R.ptr.prototype.renderEmoji=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=a.PreviousNodeText();$s=4;case 4:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;e=C.ReplaceAll(e,"\xE2\x80\xB8","");if(""===e){$s=5;continue;}$s=6;continue;case 5:$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:$r=c.renderSpanNode(a);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("</span>");$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderEmoji,$c:true,$r,a,b,c,d,e,$s};return $f;};R.prototype.renderEmoji=function(a,b){return this.$val.renderEmoji(a,b);};R.ptr.prototype.renderInlineMathCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(36);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderInlineMathCloseMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderInlineMathCloseMarker=function(a,b){return this.$val.renderInlineMathCloseMarker(a,b);};R.ptr.prototype.renderInlineMathContent=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=a.Tokens;d=G.EscapeHTML(d);$r=c.BaseRenderer.Write(d);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/code",CL.nil,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__preview"]),new CJ(["data-render","2"])]),false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","language-math"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=A.ReplaceAll(d,F.CaretTokens,CI.nil);if(a.ParentIs(109,CN.nil)){d=A.ReplaceAll(d,(new CI($stringToBytes("\\|"))),(new CI($stringToBytes("|"))));}$r=c.BaseRenderer.Write(d);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderInlineMathContent,$c:true,$r,a,b,c,d,$s};return $f;};R.prototype.renderInlineMathContent=function(a,b){return this.$val.renderInlineMathContent(a,b);};R.ptr.prototype.renderInlineMathOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(36);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("code",new CL([new CJ(["data-newline","1"]),new CJ(["class","vditor-ir__marker vditor-ir__marker--pre"]),new CJ(["data-type","math-inline"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderInlineMathOpenMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderInlineMathOpenMarker=function(a,b){return this.$val.renderInlineMathOpenMarker(a,b);};R.ptr.prototype.renderInlineMath=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.renderSpanNode(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderInlineMath,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderInlineMath=function(a,b){return this.$val.renderInlineMath(a,b);};R.ptr.prototype.renderMathBlockCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","math-block-close-marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(J.MathBlockMarker);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderMathBlockCloseMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderMathBlockCloseMarker=function(a,b){return this.$val.renderMathBlockCloseMarker(a,b);};R.ptr.prototype.renderMathBlockContent=function(a,b){var{a,b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!b){$s=-1;return 2;}d=A.TrimSpace(a.Tokens);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}a.Tokens=d;e=a.Tokens.$length;f=1>e||((3===e)&&"\xE2\x80\xB8"===($bytesToString(a.Tokens)));g="vditor-ir__marker--pre";if(c.BaseRenderer.Options.VditorMathBlockPreview){g=g+(" vditor-ir__marker");}$r=c.BaseRenderer.Tag("pre",new CL([new CJ(["class",g])]),false);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("code",new CL([new CJ(["data-type","math-block"]),new CJ(["class","language-math"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(f){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.WriteString("<wbr>\n");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=6;continue;case 5:$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:$r=c.BaseRenderer.WriteString("</code></pre>");$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c.BaseRenderer.Options.VditorMathBlockPreview){$s=10;continue;}$s=11;continue;case 10:$r=c.BaseRenderer.Tag("pre",new CL([new CJ(["class","vditor-ir__preview"]),new CJ(["data-render","2"])]),false);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("div",new CL([new CJ(["data-type","math-block"]),new CJ(["class","language-math"])]),false);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=a.Tokens;h=A.ReplaceAll(h,F.CaretTokens,CI.nil);$r=c.BaseRenderer.Write(G.EscapeHTML(h));$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</div></pre>");$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 11:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderMathBlockContent,$c:true,$r,a,b,c,d,e,f,g,h,$s};return $f;};R.prototype.renderMathBlockContent=function(a,b){return this.$val.renderMathBlockContent(a,b);};R.ptr.prototype.renderMathBlockOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","math-block-open-marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(J.MathBlockMarker);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderMathBlockOpenMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderMathBlockOpenMarker=function(a,b){return this.$val.renderMathBlockOpenMarker(a,b);};R.ptr.prototype.renderMathBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.renderDivNode(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("</div>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderMathBlock,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderMathBlock=function(a,b){return this.$val.renderMathBlock(a,b);};R.ptr.prototype.renderTableCell=function(a,b){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d="td";if(107===a.Parent.Parent.Type){d="th";}if(b){$s=1;continue;}$s=2;continue;case 1:e=CL.nil;f=a.TableCellAlign;if(f===(1)){e=$append(e,new CJ(["align","left"]));}else if(f===(2)){e=$append(e,new CJ(["align","center"]));}else if(f===(3)){e=$append(e,new CJ(["align","right"]));}$r=c.BaseRenderer.Tag(d,e,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(CM.nil===a.FirstChild){$s=5;continue;}if(A.Equal(a.FirstChild.Tokens,F.CaretTokens)){$s=6;continue;}$s=7;continue;case 5:a.AppendChild(new H.Node.ptr("","","","",16,CM.nil,CM.nil,CM.nil,CM.nil,CM.nil,CO.nil,(new CI($stringToBytes(" "))),"","",false,false,false,0,false,0,0,0,CI.nil,CI.nil,CI.nil,0,CP.nil,false,CQ.nil,0,0,0,0,CI.nil,0,false,"",0,CI.nil,"",CO.nil,CI.nil,CL.nil,false,"","","","","","","","","","","",0,""));$s=8;continue;case 6:a.FirstChild.Tokens=(new CI($stringToBytes("\xE2\x80\xB8 ")));$s=8;continue;case 7:g=A.TrimSpace(a.FirstChild.Tokens);$s=9;case 9:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}a.FirstChild.Tokens=g;case 8:$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/"+d,CL.nil,false);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderTableCell,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};R.prototype.renderTableCell=function(a,b){return this.$val.renderTableCell(a,b);};R.ptr.prototype.renderTableRow=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("tr",CL.nil,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/tr",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderTableRow,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderTableRow=function(a,b){return this.$val.renderTableRow(a,b);};R.ptr.prototype.renderTableHead=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("thead",CL.nil,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/thead",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!(CM.nil===a.Next)){$s=6;continue;}$s=7;continue;case 6:$r=c.BaseRenderer.Tag("tbody",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderTableHead,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderTableHead=function(a,b){return this.$val.renderTableHead(a,b);};R.ptr.prototype.renderTable=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("table",new CL([new CJ(["data-block","0"]),new CJ(["data-type","table"])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:if(!(CM.nil===a.FirstChild.Next)){$s=5;continue;}$s=6;continue;case 5:$r=c.BaseRenderer.Tag("/tbody",CL.nil,false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:$r=c.BaseRenderer.Tag("/table",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderTable,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderTable=function(a,b){return this.$val.renderTable(a,b);};R.ptr.prototype.renderStrikethrough=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.renderSpanNode(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderStrikethrough,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderStrikethrough=function(a,b){return this.$val.renderStrikethrough(a,b);};R.ptr.prototype.renderStrikethrough1OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("~");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("s",new CL([new CJ(["data-newline","1"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderStrikethrough1OpenMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderStrikethrough1OpenMarker=function(a,b){return this.$val.renderStrikethrough1OpenMarker(a,b);};R.ptr.prototype.renderStrikethrough1CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/s",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker"])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("~");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderStrikethrough1CloseMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderStrikethrough1CloseMarker=function(a,b){return this.$val.renderStrikethrough1CloseMarker(a,b);};R.ptr.prototype.renderStrikethrough2OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("~~");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("s",new CL([new CJ(["data-newline","1"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderStrikethrough2OpenMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderStrikethrough2OpenMarker=function(a,b){return this.$val.renderStrikethrough2OpenMarker(a,b);};R.ptr.prototype.renderStrikethrough2CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/s",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker"])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("~~");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderStrikethrough2CloseMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderStrikethrough2CloseMarker=function(a,b){return this.$val.renderStrikethrough2CloseMarker(a,b);};R.ptr.prototype.renderLinkTitle=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if((33===a.Parent.Type)&&(3===a.Parent.LinkType)){$s=-1;return 2;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker vditor-ir__marker--title"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(34);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(a.Tokens);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(34);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderLinkTitle,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderLinkTitle=function(a,b){return this.$val.renderLinkTitle(a,b);};R.ptr.prototype.renderLinkDest=function(a,b){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if((33===a.Parent.Type)&&(3===a.Parent.LinkType)){$s=-1;return 2;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker vditor-ir__marker--link"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.Tokens;if(c.BaseRenderer.Options.Sanitize){$s=4;continue;}$s=5;continue;case 4:e=A.TrimSpace(d);$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;g=A.ToLower(f);$s=7;case 7:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;if(A.HasPrefix(f,(new CI($stringToBytes("javascript:"))))){d=CI.nil;}case 5:d=G.EscapeHTML(d);$r=c.BaseRenderer.Write(d);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderLinkDest,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};R.prototype.renderLinkDest=function(a,b){return this.$val.renderLinkDest(a,b);};R.ptr.prototype.renderLinkSpace=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if((33===a.Parent.Type)&&(3===a.Parent.LinkType)){$s=-1;return 2;}$r=c.BaseRenderer.WriteByte(32);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderLinkSpace,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderLinkSpace=function(a,b){return this.$val.renderLinkSpace(a,b);};R.ptr.prototype.renderLinkText=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(34===a.Parent.Type){$s=3;continue;}$s=4;continue;case 3:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker vditor-ir__marker--bracket"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=5;continue;case 4:if(3===a.Parent.LinkType){$s=7;continue;}$s=8;continue;case 7:$r=c.BaseRenderer.Tag("span",CL.nil,false);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=9;continue;case 8:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__link"])]),false);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 9:case 5:$r=c.BaseRenderer.Write(a.Tokens);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderLinkText,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderLinkText=function(a,b){return this.$val.renderLinkText(a,b);};R.ptr.prototype.renderCloseParen=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if((33===a.Parent.Type)&&(3===a.Parent.LinkType)){$s=-1;return 2;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker vditor-ir__marker--paren"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(41);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderCloseParen,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderCloseParen=function(a,b){return this.$val.renderCloseParen(a,b);};R.ptr.prototype.renderOpenParen=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if((33===a.Parent.Type)&&(3===a.Parent.LinkType)){$s=-1;return 2;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker vditor-ir__marker--paren"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(40);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderOpenParen,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderOpenParen=function(a,b){return this.$val.renderOpenParen(a,b);};R.ptr.prototype.renderCloseBrace=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker vditor-ir__marker--brace"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(125);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderCloseBrace,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderCloseBrace=function(a,b){return this.$val.renderCloseBrace(a,b);};R.ptr.prototype.renderOpenBrace=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker vditor-ir__marker--brace"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(123);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderOpenBrace,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderOpenBrace=function(a,b){return this.$val.renderOpenBrace(a,b);};R.ptr.prototype.renderCloseBracket=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker vditor-ir__marker--bracket"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(93);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(3===a.Parent.LinkType){$s=6;continue;}$s=7;continue;case 6:d=a.Parent.ChildByType(40);if(CM.nil===d||!A.EqualFold(a.Parent.LinkRefLabel,d.Tokens)){$s=8;continue;}$s=9;continue;case 8:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker vditor-ir__marker--link"])]),false);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(91);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(a.Parent.LinkRefLabel);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(93);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 9:case 7:case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderCloseBracket,$c:true,$r,a,b,c,d,$s};return $f;};R.prototype.renderCloseBracket=function(a,b){return this.$val.renderCloseBracket(a,b);};R.ptr.prototype.renderOpenBracket=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker vditor-ir__marker--bracket"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(91);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderOpenBracket,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderOpenBracket=function(a,b){return this.$val.renderOpenBracket(a,b);};R.ptr.prototype.renderBang=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(33);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderBang,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderBang=function(a,b){return this.$val.renderBang(a,b);};R.ptr.prototype.renderImage=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=!(CM.nil===a.Next)&&(16===a.Next.Type)&&A.HasPrefix(a.Next.Tokens,F.CaretTokens);if(b){$s=1;continue;}$s=2;continue;case 1:if(3===a.LinkType){a.ChildByType(38).Unlink();a.ChildByType(41).Unlink();e=a.ChildByType(43);if(!(CM.nil===e)){e.Unlink();a.ChildByType(42).Unlink();}a.ChildByType(39).Unlink();}f=c.Text(a);$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h="vditor-ir__node";if(C.Contains(g,"\xE2\x80\xB8")||d){h=h+(" vditor-ir__node--expand");}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class",h]),new CJ(["data-type","img"])]),false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:if(d){$s=6;continue;}$s=7;continue;case 6:$r=c.BaseRenderer.WriteString("\xE2\x80\xB8");$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a.Next.Tokens=A.ReplaceAll(a.Next.Tokens,F.CaretTokens,CI.nil);case 7:i=a;if(3===a.LinkType){$s=9;continue;}$s=10;continue;case 9:j=c.BaseRenderer.Tree.FindLinkRefDefLink(a.LinkRefLabel);$s=11;case 11:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;case 10:k=i.ChildByType(41).Tokens;k=c.BaseRenderer.LinkPath(k);k=A.ReplaceAll(k,F.CaretTokens,CI.nil);l=new CL([new CJ(["src",($bytesToString(k))])]);m=a.ChildByType(40);if(!(CM.nil===m)&&0<m.Tokens.$length){n=A.ReplaceAll(m.Tokens,F.CaretTokens,CI.nil);l=$append(l,new CJ(["alt",($bytesToString(n))]));}$r=c.BaseRenderer.Tag("img",l,true);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}o=c.BaseRenderer.Writer.Bytes();p=A.LastIndex(o,(new CI($stringToBytes("<img src="))));q=$subslice(o,p);if(c.BaseRenderer.Options.Sanitize){$s=13;continue;}$s=14;continue;case 13:r=AE(q);$s=15;case 15:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}q=r;case 14:c.BaseRenderer.Writer.Truncate(p);s=c.BaseRenderer.Writer.Write(q);$s=16;case 16:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderImage,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s};return $f;};R.prototype.renderImage=function(a,b){return this.$val.renderImage(a,b);};R.ptr.prototype.renderLink=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.renderSpanNode(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderLink,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderLink=function(a,b){return this.$val.renderLink(a,b);};R.ptr.prototype.renderHTML=function(a,b){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.renderDivNode(a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=A.TrimSpace(a.Tokens);$s=4;case 4:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$r=c.BaseRenderer.WriteString("<pre class=\"vditor-ir__marker--pre vditor-ir__marker\">");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("code",new CL([new CJ(["data-type","html-block"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(G.EscapeHTML(e));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</code></pre>");$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("pre",new CL([new CJ(["class","vditor-ir__preview"]),new CJ(["data-render","2"])]),false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=A.ReplaceAll(e,F.CaretTokens,CI.nil);if(c.BaseRenderer.Options.Sanitize){$s=10;continue;}$s=11;continue;case 10:f=AE(e);$s=12;case 12:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;case 11:$r=c.BaseRenderer.Write(e);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</pre></div>");$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderHTML,$c:true,$r,a,b,c,d,e,f,$s};return $f;};R.prototype.renderHTML=function(a,b){return this.$val.renderHTML(a,b);};R.ptr.prototype.renderInlineHTML=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!b){$s=-1;return 2;}d=A.Equal(a.Tokens,(new CI($stringToBytes("<kbd>"))));e=A.Equal(a.Tokens,(new CI($stringToBytes("</kbd>"))));if(d||e){$s=1;continue;}$s=2;continue;case 1:if(d){$s=4;continue;}$s=5;continue;case 4:if(c.tagMatchClose("kbd",a)){$s=7;continue;}$s=8;continue;case 7:$r=c.renderSpanNode(a);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("code",new CL([new CJ(["class","vditor-ir__marker"])]),false);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/code",CL.nil,false);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("kbd",CL.nil,false);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=9;continue;case 8:$r=c.renderSpanNode(a);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("code",new CL([new CJ(["class","vditor-ir__marker"])]),false);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/code",CL.nil,false);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 9:$s=6;continue;case 5:if(c.tagMatchOpen("kbd",a)){$s=21;continue;}$s=22;continue;case 21:$r=c.BaseRenderer.Tag("/kbd",CL.nil,false);$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.renderSpanNode(a);$s=25;case 25:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("code",new CL([new CJ(["class","vditor-ir__marker"])]),false);$s=26;case 26:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/code",CL.nil,false);$s=28;case 28:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=29;case 29:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=23;continue;case 22:$r=c.renderSpanNode(a);$s=30;case 30:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("code",new CL([new CJ(["class","vditor-ir__marker"])]),false);$s=31;case 31:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/code",CL.nil,false);$s=33;case 33:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=34;case 34:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 23:case 6:$s=3;continue;case 2:$r=c.renderSpanNode(a);$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("code",new CL([new CJ(["class","vditor-ir__marker"])]),false);$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/code",CL.nil,false);$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=39;case 39:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderInlineHTML,$c:true,$r,a,b,c,d,e,$s};return $f;};R.prototype.renderInlineHTML=function(a,b){return this.$val.renderInlineHTML(a,b);};R.ptr.prototype.tagMatchClose=function(a,b){var a,b,c,d;c=this;d=b.Next;while(true){if(!(!(CM.nil===d))){break;}if((10===d.Type)&&"</"+a+">"===d.TokensStr()){return true;}d=d.Next;}return false;};R.prototype.tagMatchClose=function(a,b){return this.$val.tagMatchClose(a,b);};R.ptr.prototype.tagMatchOpen=function(a,b){var a,b,c,d;c=this;d=b.Previous;while(true){if(!(!(CM.nil===d))){break;}if((10===d.Type)&&"<"+a+">"===d.TokensStr()){return true;}d=d.Previous;}return false;};R.prototype.tagMatchOpen=function(a,b){return this.$val.tagMatchOpen(a,b);};R.ptr.prototype.renderDocument=function(a,b){var a,b,c;c=this;return 2;};R.prototype.renderDocument=function(a,b){return this.$val.renderDocument(a,b);};R.ptr.prototype.renderParagraph=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=a.Parent.Parent;if(!(CM.nil===d)&&(7===d.Type)&&d.ListData.Tight){$s=-1;return 2;}if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("p",new CL([new CJ(["data-block","0"])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/p",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderParagraph,$c:true,$r,a,b,c,d,$s};return $f;};R.prototype.renderParagraph=function(a,b){return this.$val.renderParagraph(a,b);};R.ptr.prototype.renderText=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=a.Tokens;if(c.BaseRenderer.Options.FixTermTypo){$s=3;continue;}$s=4;continue;case 3:e=c.BaseRenderer.FixTermTypo(d);$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;case 4:if(!A.EqualFold(d,(new CI($stringToBytes("\xE2\x80\xB8\xE2\x80\x8B"))))){d=A.ReplaceAll(d,(new CI($stringToBytes("\xE2\x80\x8B"))),CI.nil);}$r=c.BaseRenderer.Write(G.EscapeHTML(d));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderText,$c:true,$r,a,b,c,d,e,$s};return $f;};R.prototype.renderText=function(a,b){return this.$val.renderText(a,b);};R.ptr.prototype.renderCodeSpan=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.renderSpanNode(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderCodeSpan,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderCodeSpan=function(a,b){return this.$val.renderCodeSpan(a,b);};R.ptr.prototype.renderCodeSpanOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString(C.Repeat("`",a.Parent.CodeMarkerLen));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(A.HasPrefix(a.Next.Tokens,(new CI($stringToBytes("`"))))){$s=5;continue;}$s=6;continue;case 5:$r=c.BaseRenderer.WriteByte(32);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("code",new CL([new CJ(["data-newline","1"])]),false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderCodeSpanOpenMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderCodeSpanOpenMarker=function(a,b){return this.$val.renderCodeSpanOpenMarker(a,b);};R.ptr.prototype.renderCodeSpanContent=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderCodeSpanContent,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderCodeSpanContent=function(a,b){return this.$val.renderCodeSpanContent(a,b);};R.ptr.prototype.renderCodeSpanCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/code",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker"])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(A.HasSuffix(a.Previous.Tokens,(new CI($stringToBytes("`"))))){$s=5;continue;}$s=6;continue;case 5:$r=c.BaseRenderer.WriteByte(32);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:$r=c.BaseRenderer.WriteString(C.Repeat("`",a.Parent.CodeMarkerLen));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderCodeSpanCloseMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderCodeSpanCloseMarker=function(a,b){return this.$val.renderCodeSpanCloseMarker(a,b);};R.ptr.prototype.renderEmphasis=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.renderSpanNode(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderEmphasis,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderEmphasis=function(a,b){return this.$val.renderEmphasis(a,b);};R.ptr.prototype.renderEmAsteriskOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker vditor-ir__marker--bi"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(42);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("em",new CL([new CJ(["data-newline","1"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderEmAsteriskOpenMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderEmAsteriskOpenMarker=function(a,b){return this.$val.renderEmAsteriskOpenMarker(a,b);};R.ptr.prototype.renderEmAsteriskCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/em",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker vditor-ir__marker--bi"])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(42);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderEmAsteriskCloseMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderEmAsteriskCloseMarker=function(a,b){return this.$val.renderEmAsteriskCloseMarker(a,b);};R.ptr.prototype.renderEmUnderscoreOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker vditor-ir__marker--bi"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(95);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("em",new CL([new CJ(["data-newline","1"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderEmUnderscoreOpenMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderEmUnderscoreOpenMarker=function(a,b){return this.$val.renderEmUnderscoreOpenMarker(a,b);};R.ptr.prototype.renderEmUnderscoreCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/em",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker vditor-ir__marker--bi"])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(95);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderEmUnderscoreCloseMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderEmUnderscoreCloseMarker=function(a,b){return this.$val.renderEmUnderscoreCloseMarker(a,b);};R.ptr.prototype.renderStrong=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.renderSpanNode(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderStrong,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderStrong=function(a,b){return this.$val.renderStrong(a,b);};R.ptr.prototype.renderStrongA6kOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker vditor-ir__marker--bi"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("**");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("strong",new CL([new CJ(["data-newline","1"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderStrongA6kOpenMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderStrongA6kOpenMarker=function(a,b){return this.$val.renderStrongA6kOpenMarker(a,b);};R.ptr.prototype.renderStrongA6kCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/strong",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker vditor-ir__marker--bi"])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("**");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderStrongA6kCloseMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderStrongA6kCloseMarker=function(a,b){return this.$val.renderStrongA6kCloseMarker(a,b);};R.ptr.prototype.renderStrongU8eOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker vditor-ir__marker--bi"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("__");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("strong",new CL([new CJ(["data-newline","1"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderStrongU8eOpenMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderStrongU8eOpenMarker=function(a,b){return this.$val.renderStrongU8eOpenMarker(a,b);};R.ptr.prototype.renderStrongU8eCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/strong",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker vditor-ir__marker--bi"])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("__");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderStrongU8eCloseMarker,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderStrongU8eCloseMarker=function(a,b){return this.$val.renderStrongU8eCloseMarker(a,b);};R.ptr.prototype.renderBlockquote=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<blockquote data-block=\"0\">");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("</blockquote>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderBlockquote,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderBlockquote=function(a,b){return this.$val.renderBlockquote(a,b);};R.ptr.prototype.renderBlockquoteMarker=function(a,b){var a,b,c;c=this;return 2;};R.prototype.renderBlockquoteMarker=function(a,b){return this.$val.renderBlockquoteMarker(a,b);};R.ptr.prototype.renderHeading=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=c.Text(a);$s=4;case 4:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=a.ChildByType(420);if(C.Contains(e,"\xE2\x80\xB8")||(!(CM.nil===f)&&A.Contains(f.Tokens,F.CaretTokens))){$s=5;continue;}$s=6;continue;case 5:$r=c.BaseRenderer.WriteString("<h"+$substring(" 123456",a.HeadingLevel,(a.HeadingLevel+1>>0))+" data-block=\"0\" class=\"vditor-ir__node vditor-ir__node--expand\"");$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=7;continue;case 6:$r=c.BaseRenderer.WriteString("<h"+$substring(" 123456",a.HeadingLevel,(a.HeadingLevel+1>>0))+" data-block=\"0\" class=\"vditor-ir__node\"");$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:g="";if(!(CM.nil===f)){g=($bytesToString(f.Tokens));}if(""===g){$s=10;continue;}$s=11;continue;case 10:h=AT(a);$s=12;case 12:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;case 11:$r=c.BaseRenderer.WriteString(" id=\"ir-"+g+"\"");$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!a.HeadingSetext){$s=14;continue;}$s=15;continue;case 14:$r=c.BaseRenderer.WriteString(" data-marker=\"#\">");$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=16;continue;case 15:if(1===a.HeadingLevel){$s=18;continue;}$s=19;continue;case 18:$r=c.BaseRenderer.WriteString(" data-marker=\"=\">");$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=20;continue;case 19:$r=c.BaseRenderer.WriteString(" data-marker=\"-\">");$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 20:case 16:if(c.BaseRenderer.Options.HeadingAnchor){$s=23;continue;}$s=24;continue;case 23:i=AT(a);$s=25;case 25:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;$r=c.BaseRenderer.Tag("a",new CL([new CJ(["id","vditorAnchor-"+j]),new CJ(["class","vditor-anchor"]),new CJ(["href","#"+j])]),false);$s=26;case 26:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("<svg viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg>");$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/a",CL.nil,false);$s=28;case 28:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 24:if(!a.HeadingSetext){$s=29;continue;}$s=30;continue;case 29:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker vditor-ir__marker--heading"]),new CJ(["data-type","heading-marker"])]),false);$s=31;case 31:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString(C.Repeat("#",a.HeadingLevel)+" ");$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=33;case 33:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 30:$s=3;continue;case 2:if(a.HeadingSetext){$s=34;continue;}$s=35;continue;case 34:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","vditor-ir__marker vditor-ir__marker--heading"]),new CJ(["data-type","heading-marker"]),new CJ(["data-render","2"])]),false);$s=36;case 36:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=37;case 37:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=c.BaseRenderer.setextHeadingLen(a);$s=38;case 38:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;if(1===a.HeadingLevel){$s=39;continue;}$s=40;continue;case 39:$r=c.BaseRenderer.WriteString(C.Repeat("=",l));$s=42;case 42:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=41;continue;case 40:$r=c.BaseRenderer.WriteString(C.Repeat("-",l));$s=43;case 43:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 41:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=44;case 44:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 35:$r=c.BaseRenderer.WriteString("</h"+$substring(" 123456",a.HeadingLevel,(a.HeadingLevel+1>>0))+">");$s=45;case 45:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderHeading,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,$s};return $f;};R.prototype.renderHeading=function(a,b){return this.$val.renderHeading(a,b);};R.ptr.prototype.renderHeadingC8hMarker=function(a,b){var a,b,c;c=this;return 2;};R.prototype.renderHeadingC8hMarker=function(a,b){return this.$val.renderHeadingC8hMarker(a,b);};R.ptr.prototype.renderHeadingID=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","heading-id"]),new CJ(["class","vditor-ir__marker"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString(" {"+($bytesToString(a.Tokens))+"}");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderHeadingID,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderHeadingID=function(a,b){return this.$val.renderHeadingID(a,b);};R.ptr.prototype.renderList=function(a,b){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;e="ul";if((1===a.ListData.Typ)||((3===a.ListData.Typ)&&(0===a.ListData.BulletChar))){e="ol";}if(b){$s=1;continue;}$s=2;continue;case 1:c[0]=CL.nil;if(a.ListData.Tight){c[0]=$append(c[0],new CJ(["data-tight","true"]));}if(0===a.ListData.BulletChar){if(!((1===a.ListData.Start))){c[0]=$append(c[0],new CJ(["start",B.Itoa(a.ListData.Start)]));}}f=a.ListData.Typ;if(f===(0)){c[0]=$append(c[0],new CJ(["data-marker",($bytesToString(a.ListData.Marker))]));}else if(f===(1)){c[0]=$append(c[0],new CJ(["data-marker",B.Itoa(a.ListData.Num)+($encodeRune(a.ListData.Delimiter))]));}else if(f===(3)){if(0===a.ListData.BulletChar){c[0]=$append(c[0],new CJ(["data-marker",B.Itoa(a.ListData.Num)+($encodeRune(a.ListData.Delimiter))]));}else{c[0]=$append(c[0],new CJ(["data-marker",($bytesToString(a.ListData.Marker))]));}}c[0]=$append(c[0],new CJ(["data-block","0"]));d.BaseRenderer.renderListStyle(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))));$r=d.BaseRenderer.Tag(e,c[0],false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=d.BaseRenderer.Tag("/"+e,CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderList,$c:true,$r,a,b,c,d,e,f,$s};return $f;};R.prototype.renderList=function(a,b){return this.$val.renderList(a,b);};R.ptr.prototype.renderListItem=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=CL.nil;e=a.ListData.Typ;if(e===(0)){d=$append(d,new CJ(["data-marker",($bytesToString(a.ListData.Marker))]));}else if(e===(1)){d=$append(d,new CJ(["data-marker",B.Itoa(a.ListData.Num)+($encodeRune(a.ListData.Delimiter))]));}else if(e===(3)){if(0===a.ListData.BulletChar){d=$append(d,new CJ(["data-marker",B.Itoa(a.ListData.Num)+($encodeRune(a.ListData.Delimiter))]));}else{d=$append(d,new CJ(["data-marker",($bytesToString(a.ListData.Marker))]));}if(!(CM.nil===a.FirstChild)&&!(CM.nil===a.FirstChild.FirstChild)&&(100===a.FirstChild.FirstChild.Type)){d=$append(d,new CJ(["class",c.BaseRenderer.Options.GFMTaskListItemClass]));}}$r=c.BaseRenderer.Tag("li",d,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/li",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderListItem,$c:true,$r,a,b,c,d,e,$s};return $f;};R.prototype.renderListItem=function(a,b){return this.$val.renderListItem(a,b);};R.ptr.prototype.renderTaskListItemMarker=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=CL.nil;if(a.TaskListItemChecked){d=$append(d,new CJ(["checked",""]));}d=$append(d,new CJ(["type","checkbox"]));$r=c.BaseRenderer.Tag("input",d,true);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderTaskListItemMarker,$c:true,$r,a,b,c,d,$s};return $f;};R.prototype.renderTaskListItemMarker=function(a,b){return this.$val.renderTaskListItemMarker(a,b);};R.ptr.prototype.renderThematicBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("hr",new CL([new CJ(["data-block","0"])]),true);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderThematicBreak,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderThematicBreak=function(a,b){return this.$val.renderThematicBreak(a,b);};R.ptr.prototype.renderHardBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("br",CL.nil,true);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderHardBreak,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderHardBreak=function(a,b){return this.$val.renderHardBreak(a,b);};R.ptr.prototype.renderSoftBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(10);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:R.ptr.prototype.renderSoftBreak,$c:true,$r,a,b,c,$s};return $f;};R.prototype.renderSoftBreak=function(a,b){return this.$val.renderSoftBreak(a,b);};R.ptr.prototype.renderSpanNode=function(a){var{a,b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;c=b.Text(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=CL.nil;f=a.Type;if(f===(17)){e=$append(e,new CJ(["data-type","em"]));}else if(f===(22)){e=$append(e,new CJ(["data-type","strong"]));}else if(f===(101)){e=$append(e,new CJ(["data-type","s"]));}else if(f===(450)){e=$append(e,new CJ(["data-type","mark"]));}else if(f===(485)){e=$append(e,new CJ(["data-type","sup"]));}else if(f===(490)){e=$append(e,new CJ(["data-type","sub"]));}else if(f===(33)){if(!((3===a.LinkType))){e=$append(e,new CJ(["data-type","a"]));}else{e=$append(e,new CJ(["data-type","link-ref"]));}}else if(f===(34)){e=$append(e,new CJ(["data-type","img"]));}else if(f===(27)){e=$append(e,new CJ(["data-type","code"]));}else if(f===(200)){e=$append(e,new CJ(["data-type","emoji"]));}else if(f===(10)){e=$append(e,new CJ(["data-type","html-inline"]));}else if(f===(44)){e=$append(e,new CJ(["data-type","html-entity"]));}else if(f===(400)){e=$append(e,new CJ(["data-type","backslash"]));}else{e=$append(e,new CJ(["data-type","inline-node"]));}if(C.Contains(d,"\xE2\x80\xB8")){$s=2;continue;}$s=3;continue;case 2:e=$append(e,new CJ(["class","vditor-ir__node vditor-ir__node--expand"]));$r=b.BaseRenderer.Tag("span",e,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 3:g=a.PreviousNodeText();$s=5;case 5:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(C.HasSuffix(h,"\xE2\x80\xB8")){$s=6;continue;}$s=7;continue;case 6:e=$append(e,new CJ(["class","vditor-ir__node vditor-ir__node--expand"]));$r=b.BaseRenderer.Tag("span",e,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 7:i=a.NextNodeText();$s=9;case 9:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;if(C.HasPrefix(j,"\xE2\x80\xB8")){$s=10;continue;}$s=11;continue;case 10:e=$append(e,new CJ(["class","vditor-ir__node vditor-ir__node--expand"]));$r=b.BaseRenderer.Tag("span",e,false);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 11:e=$append(e,new CJ(["class","vditor-ir__node"]));$r=b.BaseRenderer.Tag("span",e,false);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:R.ptr.prototype.renderSpanNode,$c:true,$r,a,b,c,d,e,f,g,h,i,j,$s};return $f;};R.prototype.renderSpanNode=function(a){return this.$val.renderSpanNode(a);};R.ptr.prototype.renderDivNode=function(a){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;c=b.Text(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=new CL([new CJ(["data-block","0"])]);f=a.Type;if(f===(11)){e=$append(e,new CJ(["data-type","code-block"]));}else if(f===(9)){e=$append(e,new CJ(["data-type","html-block"]));}else if(f===(300)){e=$append(e,new CJ(["data-type","math-block"]));}else if(f===(425)){e=$append(e,new CJ(["data-type","yaml-front-matter"]));}if(C.Contains(d,"\xE2\x80\xB8")){$s=2;continue;}$s=3;continue;case 2:e=$append(e,new CJ(["class","vditor-ir__node vditor-ir__node--expand"]));$r=b.BaseRenderer.Tag("div",e,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;case 3:e=$append(e,new CJ(["class","vditor-ir__node"]));$r=b.BaseRenderer.Tag("div",e,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:R.ptr.prototype.renderDivNode,$c:true,$r,a,b,c,d,e,f,$s};return $f;};R.prototype.renderDivNode=function(a){return this.$val.renderDivNode(a);};R.ptr.prototype.Text=function(a){var{a,b,c,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=[b];b[0]="";c=this;$r=H.Walk(a,(function(b){return function(d,e){var d,e,f;if(e){f=d.Type;if((f===(16))||(f===(40))||(f===(41))||(f===(42))||(f===(15))||(f===(29))||(f===(306))||(f===(302))||(f===(427))||(f===(9))||(f===(10))||(f===(203))){b[0]=b[0]+(($bytesToString(d.Tokens)));}else if(f===(14)){b[0]=b[0]+(($bytesToString(d.CodeBlockInfo)));}else if(f===(33)){if(3===d.LinkType){b[0]=b[0]+(($bytesToString(d.LinkRefLabel)));}}}return 2;};})(b));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return b[0];}return;}var $f={$blk:R.ptr.prototype.Text,$c:true,$r,a,b,c,$s};return $f;};R.prototype.Text=function(a){return this.$val.Text(a);};U=function(a,b,c){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a,b,c});$s=$s||0;s:while(true){switch($s){case 0:d=CB(a,c);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=new T.ptr(d,b,CJ.nil);f=41;(e.FormatRenderer.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(f),{k:f,v:$methodVal(e,"renderLinkDest")});$s=-1;return e;}return;}var $f={$blk:U,$c:true,$r,a,b,c,d,e,f,$s};return $f;};$pkg.NewTextBundleRenderer=U;T.ptr.prototype.Render=function(){var{a,b,c,d,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=CI.nil;b=CJ.nil;c=this;d=c.FormatRenderer.BaseRenderer.Render();$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}a=d;b=c.originalLink;$s=-1;return[a,b];}return;}var $f={$blk:T.ptr.prototype.Render,$c:true,$r,a,b,c,d,$s};return $f;};T.prototype.Render=function(){return this.$val.Render();};T.ptr.prototype.renderLinkDest=function(a,b){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=K.BytesToStr(a.Tokens);e=c.linkPrefixes;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);if(!(""===g)&&C.HasPrefix(d,g)){c.originalLink=$append(c.originalLink,d);d="assets"+$substring(d,g.length);}f++;}$r=c.FormatRenderer.BaseRenderer.WriteString(d);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:T.ptr.prototype.renderLinkDest,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};T.prototype.renderLinkDest=function(a,b){return this.$val.renderLinkDest(a,b);};AQ.ptr.prototype.FixTermTypo=function(a){var{a,b,c,d,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;c=b.fixTermTypo0(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;$s=2;case 2:return d;}return;}var $f={$blk:AQ.ptr.prototype.FixTermTypo,$c:true,$r,a,b,c,d,$s};return $f;};AQ.prototype.FixTermTypo=function(a){return this.$val.FixTermTypo(a);};AQ.ptr.prototype.fixTermTypo0=function(a){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;c=a.$length;d=0;e=0;f=0;g=0;h=0;i=e;j=f;k=g;l=h;m=0;n=0;o=m;p=n;q=CI.nil;case 1:if(!(i<c)){$s=2;continue;}d=((i<0||i>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+i]);if(V(d)){i=i+(1)>>0;$s=1;continue;}if(1<=i){o=(r=i-1>>0,((r<0||r>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+r]));if(!V(o)){i=i+(1)>>0;$s=1;continue;}}if(I.IsASCIIPunct(o)){i=i+(1)>>0;$s=1;continue;}j=i;while(true){if(!(j<c)){break;}p=((j<0||j>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+j]);if(V(p)||(46===p)){break;}j=j+(1)>>0;}if(I.IsASCIIPunct(p)){i=i+(1)>>0;$s=1;continue;}s=A.ToLower($subslice(a,i,j));$s=3;case 3:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}q=s;t=(u=$mapIndex(b.Options.Terms,$String.keyFor(K.BytesToStr(q))),u!==undefined?[u.v,true]:["",false]);v=t[0];w=t[1];if(w){l=0;k=i;while(true){if(!(k<j)){break;}((k<0||k>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+k]=v.charCodeAt(l));l=l+(1)>>0;k=k+(1)>>0;}}i=i+(1)>>0;$s=1;continue;case 2:$s=-1;return a;}return;}var $f={$blk:AQ.ptr.prototype.fixTermTypo0,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$s};return $f;};AQ.prototype.fixTermTypo0=function(a){return this.$val.fixTermTypo0(a);};V=function(a){var a;return a>=128||I.IsWhitespace(a)||I.IsASCIIPunct(a);};W=function(){var a,b,c,d,e,f,g,h,i,j,k;a=false;a=(b=(X?X.size:0),((b<0||b>2147483647)?$throwRuntimeError("makemap: size out of range"):new $global.Map()));c=X;d=0;e=c?c.keys():undefined;f=c?c.size:0;while(true){if(!(d<f)){break;}g=e.next().value;h=c.get(g);if(h===undefined){d++;continue;}i=h.k;j=h.v;k=i;(a||$throwRuntimeError("assignment to entry in nil map")).set($String.keyFor(k),{k:k,v:j});d++;}return a;};$pkg.NewTerms=W;AQ.ptr.prototype.Space=function(a){var a,b,c;b=this;c=($bytesToString(a));c=Y(c);return(new CI($stringToBytes(c)));};AQ.prototype.Space=function(a){return this.$val.Space(a);};Y=function(a){var a,b,c,d,e,f,g,h,i;b="";c=(new CY($stringToRunes(a)));d=c.$length;e=0;f=0;while(true){if(!(f<d)){break;}e=((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]);if(f<(d-3>>0)&&(105===(g=f+1>>0,((g<0||g>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+g])))&&(110===(h=f+2>>0,((h<0||h>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+h])))&&(103===(i=f+3>>0,((i<0||i>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+i])))&&D.Is(D.Han,((f<0||f>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+f]))){b=b+(($encodeRune(e))+"ing");f=f+(4)>>0;continue;}b=Z(b,e);f=f+(1)>>0;}return b;};$pkg.Space0=Y;Z=function(a,b){var a,b,c,d;if(0===a.length){return($encodeRune(b));}if("1"<=a&&"9">=a&&(65039===b)){return a+($encodeRune(b));}c=E.DecodeLastRuneInString(a);d=c[0];if(AA(d,b)){return a+" "+($encodeRune(b));}return a+($encodeRune(b));};AA=function(a,b){var a,b,c,d,e,f;if(D.IsSpace(a)||D.IsSpace(b)||((F.CaretRune===a))||((F.CaretRune===b))||!D.IsPrint(a)||!D.IsPrint(b)){return false;}c=AB(a);d=!((37===b))&&!((64===b))&&(D.IsPunct(b)||(126===b)||(61===b)||(35===b));if(c&&d){return false;}e=!((37===a))&&!((64===a))&&(D.IsPunct(a)||(126===a)||(61===a)||(35===a));f=AB(b);if(f&&e){return false;}if((!c&&!f)||(c&&f)){return false;}return true;};AB=function(a){var a;return D.Is(D.Han,a)||D.Is(D.Lm,a)||D.Is(D.Hiragana,a)||D.Is(D.Katakana,a)||D.Is(D.Hangul,a);};AD=function(a){var{a,b,c,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=AE((new CI($stringToBytes(a))));$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=($bytesToString(b));$s=2;case 2:return c;}return;}var $f={$blk:AD,$c:true,$r,a,b,c,$s};return $f;};$pkg.Sanitize=AD;AE=function(a){var{a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=[b];b[0]=new A.Buffer.ptr(CI.nil,0,0);c=false;d=new $Int64(0,0);e="";f=A.Contains(a,(new CI($stringToBytes(" \xE2\x80\xB8"))));a=A.ReplaceAll(a,F.CaretTokens,(new CI($stringToBytes("caretreplacement"))));g=G.NewTokenizer(A.NewReader(a));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;case 2:i=[i];j=h.Next();$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}if(j===0){$s=4;continue;}$s=5;continue;case 4:k=h.Err();if($interfaceIsEqual(k,L.EOF)){l=b[0].Bytes();if(f){l=A.ReplaceAll(l,(new CI($stringToBytes("\"caretreplacement"))),(new CI($stringToBytes("\" caretreplacement"))));}else{l=A.ReplaceAll(l,(new CI($stringToBytes("\" caretreplacement"))),(new CI($stringToBytes("\"caretreplacement"))));}l=A.ReplaceAll(l,(new CI($stringToBytes("caretreplacement"))),F.CaretTokens);$s=-1;return l;}m=k.Error();$s=7;case 7:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=K.StrToBytes(m);$s=8;case 8:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=n;$s=9;case 9:return o;case 5:i[0]=$clone(h.Token(),G.Token);p=i[0].Type;if(p===(6)){$s=11;continue;}if(p===(5)){$s=12;continue;}if(p===(2)){$s=13;continue;}if(p===(3)){$s=14;continue;}if(p===(4)){$s=15;continue;}if(p===(1)){$s=16;continue;}$s=17;continue;case 11:$s=17;continue;case 12:$s=17;continue;case 13:e=i[0].Data;q=(r=$mapIndex(AC,$String.keyFor(i[0].Data)),r!==undefined?[r.v,true]:[$ifaceNil,false]);s=q[1];if(s){$s=18;continue;}$s=19;continue;case 18:c=true;d=(t=new $Int64(0,1),new $Int64(d.$high+t.$high,d.$low+t.$low));u=b[0].WriteString(" ");$s=20;case 20:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}u;$s=10;continue;case 19:if(!((i[0].Attr.$length===0))){$s=21;continue;}$s=22;continue;case 21:v=AH(i[0].Attr);$s=23;case 23:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}i[0].Attr=v;case 22:if(!c){$s=24;continue;}$s=25;continue;case 24:if(AF(i[0].Data)){$s=26;continue;}$s=27;continue;case 26:$r=AG(b[0],i[0]);$s=29;case 29:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=28;continue;case 27:w=$clone(i[0],G.Token).String();$s=30;case 30:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}x=b[0].WriteString(w);$s=31;case 31:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}x;case 28:case 25:$s=17;continue;case 14:if(e===i[0].Data){e="";}y=(z=$mapIndex(AC,$String.keyFor(i[0].Data)),z!==undefined?[z.v,true]:[$ifaceNil,false]);aa=y[1];if(aa){$s=32;continue;}$s=33;continue;case 32:d=(ab=new $Int64(0,1),new $Int64(d.$high-ab.$high,d.$low-ab.$low));if((d.$high===0&&d.$low===0)){c=false;}ac=b[0].WriteString(" ");$s=34;case 34:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ac;$s=10;continue;case 33:if(!c){$s=35;continue;}$s=36;continue;case 35:ad=$clone(i[0],G.Token).String();$s=37;case 37:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}ae=b[0].WriteString(ad);$s=38;case 38:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}ae;case 36:$s=17;continue;case 15:if(!((i[0].Attr.$length===0))){$s=39;continue;}$s=40;continue;case 39:af=AH(i[0].Attr);$s=41;case 41:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}i[0].Attr=af;case 40:if(!c){$s=42;continue;}$s=43;continue;case 42:if(AF(i[0].Data)){$s=44;continue;}$s=45;continue;case 44:$r=AG(b[0],i[0]);$s=47;case 47:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=46;continue;case 45:ag=$clone(i[0],G.Token).String();$s=48;case 48:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ah=b[0].WriteString(ag);$s=49;case 49:if($c){$c=false;ah=ah.$blk();}if(ah&&ah.$blk!==undefined){break s;}ah;case 46:case 43:$s=17;continue;case 16:if(!c){$s=50;continue;}$s=51;continue;case 50:ai=e;if(ai===("script")){$s=53;continue;}if(ai===("style")){$s=54;continue;}$s=55;continue;case 53:aj=b[0].WriteString(i[0].Data);$s=57;case 57:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}aj;$s=56;continue;case 54:ak=b[0].WriteString(i[0].Data);$s=58;case 58:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}ak;$s=56;continue;case 55:al=$clone(i[0],G.Token).String();$s=59;case 59:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=b[0].WriteString(al);$s=60;case 60:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}am;case 56:case 52:case 51:case 17:case 10:$s=2;continue;case 3:$s=-1;return CI.nil;}return;}var $f={$blk:AE,$c:true,$r,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};AF=function(a){var a,b;b=a;if(b===("a")||b===("area")||b===("blockquote")||b===("img")||b===("link")||b===("script")){return true;}else{return false;}};AG=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=A.NewBufferString("");d=c.WriteString("<");$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;e=c.WriteString(b.Data);$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;f=b.Attr;g=0;case 3:if(!(g<f.$length)){$s=4;continue;}h=((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]);if(h.Key==="caretreplacement"){$s=5;continue;}$s=6;continue;case 5:i=c.WriteString(" caretreplacement");$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;g++;$s=3;continue;case 6:j=c.WriteByte(32);$s=8;case 8:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;k=c.WriteString(h.Key);$s=9;case 9:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;l=c.WriteString("=\"");$s=10;case 10:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}l;m=h.Key;if(m===("href")||m===("src")){$s=12;continue;}$s=13;continue;case 12:n=G.EscapeString(h.Val);$s=15;case 15:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=c.WriteString(n);$s=16;case 16:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}o;$s=14;continue;case 13:p=G.EscapeString(h.Val);$s=17;case 17:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=c.WriteString(p);$s=18;case 18:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;case 14:case 11:r=c.WriteByte(34);$s=19;case 19:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;g++;$s=3;continue;case 4:if(b.Type===4){$s=20;continue;}$s=21;continue;case 20:s=c.WriteString(" /");$s=22;case 22:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;case 21:t=c.WriteString(">");$s=23;case 23:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}t;u=a.WriteString(c.String());$s=24;case 24:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}u;$s=-1;return;}return;}var $f={$blk:AG,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s};return $f;};AH=function(a){var{a,b,c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=CW.nil;c=a;d=0;case 1:if(!(d<c.$length)){$s=2;continue;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);if(!AJ(e.Key)){d++;$s=1;continue;}if("src"===e.Key||"srcdoc"===e.Key||"srcset"===e.Key||"href"===e.Key){$s=3;continue;}$s=4;continue;case 3:f=C.TrimSpace(e.Val);$s=5;case 5:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=C.ToLower(f);$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;h=AI(h);if(C.HasPrefix(h,"data:image/svg+xml")||C.HasPrefix(h,"data:text/html")||C.HasPrefix(h,"javascript")){d++;$s=1;continue;}i=AE((new CI($stringToBytes(h))));$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=G.UnescapeAttrVal(($bytesToString(i)));$s=8;case 8:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(!(h===k)){d++;$s=1;continue;}case 4:b=$append(b,e);d++;$s=1;continue;case 2:$s=-1;return b;}return;}var $f={$blk:AH,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,$s};return $f;};AI=function(a){var a,b,c,d,e,f;b=$makeSlice(CY,0,a.length);c=a;d=0;while(true){if(!(d<c.length)){break;}e=$decodeRune(c,d);f=e[0];if(!D.IsSpace(f)||(32===f)){b=$append(b,f);}d+=e[1];}return($runesToString(b));};AJ=function(a){var a,b,c,d,e,f,g,h;b=AK;c=0;d=b?b.keys():undefined;e=b?b.size:0;while(true){if(!(c<e)){break;}f=d.next().value;g=b.get(f);if(g===undefined){c++;continue;}h=g.k;if(a===h){return false;}c++;}return true;};AP=function(){return new AO.ptr(true,false,false,true,false,false,false,"github",false,false,false,false,false,false,false,"",false,false,false,W(),false,false,"id",false,"vditor-task",true,true,true,"","",1,true,false,true,false);};$pkg.NewOptions=AP;AR=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=new AQ.ptr(b,new $global.Map(),$throwNilPointerError,$makeMap(H.NodeType.keyFor,[]),CS.nil,0,a,0,CO.nil,false);c.Writer=new A.Buffer.ptr(CI.nil,0,0);$r=c.Writer.Grow(4096);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return c;}return;}var $f={$blk:AR,$c:true,$r,a,b,c,$s};return $f;};$pkg.NewBaseRenderer=AR;AQ.ptr.prototype.Render=function(){var{a,b,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=[a];b=CI.nil;a[0]=this;a[0].LastOut=10;a[0].Writer=new A.Buffer.ptr(CI.nil,0,0);$r=a[0].Writer.Grow(4096);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.Walk(a[0].Tree.Root,(function(a){return function $b(c,d){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s,$r,$c}=$restore(this,{c,d});$s=$s||0;s:while(true){switch($s){case 0:f=(e=$mapIndex(a[0].ExtRendererFuncs,H.NodeType.keyFor(c.Type)),e!==undefined?e.v:$throwNilPointerError);if(!($throwNilPointerError===f)){$s=1;continue;}$s=2;continue;case 1:h=f(c,d);$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;i=g[0];j=g[1];$r=a[0].WriteString(i);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return j;case 2:l=(k=$mapIndex(a[0].RendererFuncs,H.NodeType.keyFor(c.Type)),k!==undefined?k.v:$throwNilPointerError);if($throwNilPointerError===l){$s=5;continue;}$s=6;continue;case 5:if(!($throwNilPointerError===a[0].DefaultRendererFunc)){$s=7;continue;}$s=8;continue;case 7:m=a[0].DefaultRendererFunc(c,d);$s=9;case 9:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;$s=10;case 10:return n;case 8:o=a[0].renderDefault(c,d);$s=11;case 11:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;$s=12;case 12:return p;case 6:q=l(c,d);$s=13;case 13:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;$s=14;case 14:return r;}return;}var $f={$blk:$b,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s};return $f;};})(a));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}b=a[0].Writer.Bytes();$s=-1;return b;}return;}var $f={$blk:AQ.ptr.prototype.Render,$c:true,$r,a,b,$s};return $f;};AQ.prototype.Render=function(){return this.$val.Render();};AQ.ptr.prototype.renderDefault=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;$r=c.WriteString("not found render function for node [type="+new H.NodeType(a.Type).String()+", Tokens="+K.BytesToStr(a.Tokens)+"]");$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;}return;}var $f={$blk:AQ.ptr.prototype.renderDefault,$c:true,$r,a,b,c,$s};return $f;};AQ.prototype.renderDefault=function(a,b){return this.$val.renderDefault(a,b);};AQ.ptr.prototype.WriteByte=function(a){var{a,b,c,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;c=b.Writer.WriteByte(a);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}c;b.LastOut=a;$s=-1;return;}return;}var $f={$blk:AQ.ptr.prototype.WriteByte,$c:true,$r,a,b,c,$s};return $f;};AQ.prototype.WriteByte=function(a){return this.$val.WriteByte(a);};AQ.ptr.prototype.Write=function(a){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;c=a.$length;if(0<c){$s=1;continue;}$s=2;continue;case 1:d=b.Writer.Write(a);$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;b.LastOut=(e=c-1>>0,((e<0||e>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+e]));case 2:$s=-1;return;}return;}var $f={$blk:AQ.ptr.prototype.Write,$c:true,$r,a,b,c,d,e,$s};return $f;};AQ.prototype.Write=function(a){return this.$val.Write(a);};AQ.ptr.prototype.WriteString=function(a){var{a,b,c,d,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;c=a.length;if(0<c){$s=1;continue;}$s=2;continue;case 1:d=b.Writer.WriteString(a);$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;b.LastOut=a.charCodeAt((c-1>>0));case 2:$s=-1;return;}return;}var $f={$blk:AQ.ptr.prototype.WriteString,$c:true,$r,a,b,c,d,$s};return $f;};AQ.prototype.WriteString=function(a){return this.$val.WriteString(a);};AQ.ptr.prototype.Newline=function(){var{a,b,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;if(!((10===a.LastOut))){$s=1;continue;}$s=2;continue;case 1:b=a.Writer.WriteByte(10);$s=3;case 3:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}b;a.LastOut=10;case 2:$s=-1;return;}return;}var $f={$blk:AQ.ptr.prototype.Newline,$c:true,$r,a,b,$s};return $f;};AQ.prototype.Newline=function(){return this.$val.Newline();};AQ.ptr.prototype.TextAutoSpacePrevious=function(a){var{a,b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;if(!b.Options.AutoSpace){$s=-1;return;}c=a.ChildByType(16);d=CI.nil;if(!(CM.nil===c)){d=c.Tokens;}if(530===a.Type){d=(new CI($stringToBytes(a.TextMarkTextContent)));}if(1>d.$length){$s=-1;return;}e=a.Previous;if(!(CM.nil===e)&&(16===e.Type)){$s=1;continue;}$s=2;continue;case 1:f=E.DecodeLastRune(e.Tokens);g=f[0];h=E.DecodeRune(d);i=h[0];if(AA(g,i)){$s=3;continue;}$s=4;continue;case 3:j=b.Writer.WriteByte(32);$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;case 4:case 2:$s=-1;return;}return;}var $f={$blk:AQ.ptr.prototype.TextAutoSpacePrevious,$c:true,$r,a,b,c,d,e,f,g,h,i,j,$s};return $f;};AQ.prototype.TextAutoSpacePrevious=function(a){return this.$val.TextAutoSpacePrevious(a);};AQ.ptr.prototype.TextAutoSpaceNext=function(a){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;if(!b.Options.AutoSpace){$s=-1;return;}c=a.ChildByType(16);d=CI.nil;if(!(CM.nil===c)){d=c.Tokens;}if(530===a.Type){d=(new CI($stringToBytes(a.TextMarkTextContent)));}if(1>d.$length){$s=-1;return;}e=a.Next;if(!(CM.nil===e)){$s=1;continue;}$s=2;continue;case 1:if(16===e.Type){$s=3;continue;}if(456===e.Type){$s=4;continue;}$s=5;continue;case 3:f=E.DecodeRune(e.Tokens);g=f[0];h=E.DecodeLastRune(d);i=h[0];if(AA(i,g)){$s=6;continue;}$s=7;continue;case 6:j=b.Writer.WriteByte(32);$s=8;case 8:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;case 7:$s=5;continue;case 4:e=e.Next;if(!(CM.nil===e)&&(16===e.Type)){k=E.DecodeRune(e.Tokens);l=k[0];m=E.DecodeLastRune(d);n=m[0];if(AA(n,l)){e.Tokens=$appendSlice(new CI([32]),e.Tokens);}}case 5:case 2:$s=-1;return;}return;}var $f={$blk:AQ.ptr.prototype.TextAutoSpaceNext,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,$s};return $f;};AQ.prototype.TextAutoSpaceNext=function(a){return this.$val.TextAutoSpaceNext(a);};AQ.ptr.prototype.LinkTextAutoSpacePrevious=function(a){var{a,b,c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;if(!b.Options.AutoSpace){$s=-1;return;}c=a.ChildByType(40);if(!(CM.nil===c)&&!(CI.nil===c.Tokens)){$s=1;continue;}$s=2;continue;case 1:d=a.Previous;if(!(CM.nil===d)&&(16===d.Type)){$s=3;continue;}$s=4;continue;case 3:e=E.DecodeLastRune(d.Tokens);f=e[0];g=E.DecodeRune(c.Tokens);h=g[0];if(AA(f,h)){$s=5;continue;}$s=6;continue;case 5:i=b.Writer.WriteByte(32);$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;case 6:case 4:case 2:$s=-1;return;}return;}var $f={$blk:AQ.ptr.prototype.LinkTextAutoSpacePrevious,$c:true,$r,a,b,c,d,e,f,g,h,i,$s};return $f;};AQ.prototype.LinkTextAutoSpacePrevious=function(a){return this.$val.LinkTextAutoSpacePrevious(a);};AQ.ptr.prototype.LinkTextAutoSpaceNext=function(a){var{a,b,c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;if(!b.Options.AutoSpace){$s=-1;return;}c=a.ChildByType(40);if(!(CM.nil===c)&&!(CI.nil===c.Tokens)){$s=1;continue;}$s=2;continue;case 1:d=a.Next;if(!(CM.nil===d)&&(16===d.Type)){$s=3;continue;}$s=4;continue;case 3:e=E.DecodeRune(d.Tokens);f=e[0];g=E.DecodeLastRune(c.Tokens);h=g[0];if(AA(h,f)){$s=5;continue;}$s=6;continue;case 5:i=b.Writer.WriteByte(32);$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;case 6:case 4:case 2:$s=-1;return;}return;}var $f={$blk:AQ.ptr.prototype.LinkTextAutoSpaceNext,$c:true,$r,a,b,c,d,e,f,g,h,i,$s};return $f;};AQ.prototype.LinkTextAutoSpaceNext=function(a){return this.$val.LinkTextAutoSpaceNext(a);};AS=function(a,b){var a,b,c,d,e,f,g,h;c="";d=0;e=0;while(true){if(!(e<a.length)){break;}f=E.DecodeRuneInString($substring(a,e));g=f[0];h=f[1];e=e+(h)>>0;c=c+(($encodeRune(g)));d=d+(1)>>0;if(b<=d){break;}}return c;};$pkg.SubStr=AS;AT=function(a){var{a,b,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b="";if(0===K.StrToBytes(a.HeadingNormalizedID).$length){$s=1;continue;}$s=2;continue;case 1:$r=AU(a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:b=a.HeadingNormalizedID;$s=-1;return b;}return;}var $f={$blk:AT,$c:true,$r,a,b,$s};return $f;};$pkg.HeadingID=AT;AU=function(a){var{a,b,c,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=[b];c=CM.nil;c=a.Parent;while(true){if(!(!((0===c.Type)))){break;}c=c.Parent;}b[0]=$makeMap($String.keyFor,[]);$r=H.Walk(c,(function(b){return function $b(d,e){var{d,e,f,g,h,i,$s,$r,$c}=$restore(this,{d,e});$s=$s||0;s:while(true){switch($s){case 0:if(e){$s=1;continue;}$s=2;continue;case 1:if(2===d.Type){$s=3;continue;}$s=4;continue;case 3:f=AV(d);$s=5;case 5:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;while(true){if(!(0<(h=$mapIndex(b[0],$String.keyFor(g)),h!==undefined?h.v:0))){break;}g=g+("-");}d.HeadingNormalizedID=g;i=g;(b[0]||$throwRuntimeError("assignment to entry in nil map")).set($String.keyFor(i),{k:i,v:1});case 4:case 2:$s=-1;return 2;}return;}var $f={$blk:$b,$c:true,$r,d,e,f,g,h,i,$s};return $f;};})(b));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:AU,$c:true,$r,a,b,c,$s};return $f;};AV=function(a){var{a,b,c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b="";c=a.ChildByType(420);d="";if(!(CM.nil===c)){d=K.BytesToStr(c.Tokens);}if(""===d){$s=1;continue;}$s=2;continue;case 1:e=a.Text();$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;case 2:d=C.TrimLeft(d,"#");d=C.ReplaceAll(d,"\xE2\x80\xB8","");f=d;g=0;while(true){if(!(g<f.length)){break;}h=$decodeRune(f,g);i=h[0];if(D.IsLetter(i)||D.IsDigit(i)){b=b+(($encodeRune(i)));}else{b=b+("-");}g+=h[1];}$s=-1;return b;}return;}var $f={$blk:AV,$c:true,$r,a,b,c,d,e,f,g,h,i,$s};return $f;};AQ.ptr.prototype.renderToC=function(a,b){var{a,b,c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=c.headings();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=e.$length;$r=c.WriteString("<div class=\"vditor-toc\" data-block=\"0\" data-type=\"toc-block\" contenteditable=\"false\">");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(0<f){$s=5;continue;}$s=6;continue;case 5:$r=c.WriteString("<ul>");$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=e;h=0;case 9:if(!(h<g.$length)){$s=10;continue;}i=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]);$r=c.renderToC0(i);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h++;$s=9;continue;case 10:$r=c.WriteString("</ul>");$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=7;continue;case 6:$r=c.WriteString("[toc]<br>");$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:$r=c.WriteString("</div>");$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:AQ.ptr.prototype.renderToC,$c:true,$r,a,b,c,d,e,f,g,h,i,$s};return $f;};AQ.prototype.renderToC=function(a,b){return this.$val.renderToC(a,b);};AQ.ptr.prototype.renderToC0=function(a){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;$r=b.WriteString("<li>");$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.Tag("span",new CL([new CJ(["data-target-id",a.ID])]),false);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.WriteString(a.Content);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.Tag("/span",CL.nil,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(0<a.Children.$length){$s=5;continue;}$s=6;continue;case 5:$r=b.WriteString("<ul>");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c=a.Children;d=0;case 8:if(!(d<c.$length)){$s=9;continue;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);$r=b.renderToC0(e);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d++;$s=8;continue;case 9:$r=b.WriteString("</ul>");$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:$r=b.WriteString("</li>");$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:AQ.ptr.prototype.renderToC0,$c:true,$r,a,b,c,d,e,$s};return $f;};AQ.prototype.renderToC0=function(a){return this.$val.renderToC0(a);};AQ.ptr.prototype.Tag=function(a,b,c){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b,c});$s=$s||0;s:while(true){switch($s){case 0:d=this;if(d.DisableTags>0){$s=-1;return;}$r=d.WriteString("<");$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.WriteString(a);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(0<b.$length){$s=3;continue;}$s=4;continue;case 3:e=b;f=0;case 5:if(!(f<e.$length)){$s=6;continue;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);$r=d.WriteString(" "+(0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0])+"=\""+(1>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+1])+"\"");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f++;$s=5;continue;case 6:case 4:if(c){$s=8;continue;}$s=9;continue;case 8:$r=d.WriteString(" /");$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 9:$r=d.WriteString(">");$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:AQ.ptr.prototype.Tag,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};AQ.prototype.Tag=function(a,b,c){return this.$val.Tag(a,b,c);};AQ.ptr.prototype.headings=function(){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=DC.nil;b=this;c=b.Tree.Root.ChildrenByType(2);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;e=DB.nil;f=d;g=0;case 2:if(!(g<f.$length)){$s=3;continue;}h=((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]);if(!(b.Tree.Root===h.Parent)){g++;$s=2;continue;}i=AT(h);$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;if(b.Options.VditorWYSIWYG){j="wysiwyg-"+j;}else if(b.Options.VditorIR){j="ir-"+j;}if(b.Options.KramdownBlockIAL){k=h.KramdownIAL;l=0;while(true){if(!(l<k.$length)){break;}m=((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]);if("id"===(0>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+0])){j=(1>=m.$length?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+1]);break;}l++;}}n=AY(h);$s=5;case 5:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}o=new AW.ptr(j,b.Tree.Box,b.Tree.Path,b.Tree.HPath,n,h.HeadingLevel,DC.nil,DB.nil);if(DB.nil===e){a=$append(a,o);}else{if(e.Level<o.Level){e.Children=$append(e.Children,o);o.parent=e;}else{p=AX(o,e);if(DB.nil===p){a=$append(a,o);}else{p.Children=$append(p.Children,o);o.parent=e.parent;}}}e=o;g++;$s=2;continue;case 3:$s=-1;return a;}return;}var $f={$blk:AQ.ptr.prototype.headings,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s};return $f;};AQ.prototype.headings=function(){return this.$val.headings();};AX=function(a,b){var a,b,c;if(DB.nil===b.parent){return DB.nil;}c=b.parent;while(true){if(!(!(DB.nil===c))){break;}if(c.Level<a.Level){return c;}c=c.parent;}return DB.nil;};AY=function(a){var{a,b,c,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=[b];c="";b[0]=new A.Buffer.ptr(CI.nil,0,0);$r=H.Walk(a,(function(b){return function $b(d,e){var{d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$s,$r,$c}=$restore(this,{d,e});$s=$s||0;s:while(true){switch($s){case 0:if(!e){$s=-1;return 2;}f=d.Type;if((f===(40))||(f===(433))||(f===(434))||(f===(543))){$s=2;continue;}if(f===(306)){$s=3;continue;}if(f===(29)){$s=4;continue;}if(f===(16)){$s=5;continue;}$s=6;continue;case 2:g=b[0].Write(d.Tokens);$s=7;case 7:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;$s=6;continue;case 3:h=b[0].WriteString("<span class=\"language-math\">");$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}h;i=b[0].Write(G.EscapeHTML(d.Tokens));$s=9;case 9:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;j=b[0].WriteString("</span>");$s=10;case 10:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;$s=6;continue;case 4:k=b[0].WriteString("<code>");$s=11;case 11:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}k;l=b[0].Write(G.EscapeHTML(d.Tokens));$s=12;case 12:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}l;m=b[0].WriteString("</code>");$s=13;case 13:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;$s=6;continue;case 5:if(d.ParentIs(22,CN.nil)){$s=14;continue;}if(d.ParentIs(17,CN.nil)){$s=15;continue;}$s=16;continue;case 14:n=b[0].WriteString("<strong>");$s=18;case 18:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;o=b[0].Write(G.EscapeHTML(d.Tokens));$s=19;case 19:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}o;p=b[0].WriteString("</strong>");$s=20;case 20:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;$s=17;continue;case 15:q=b[0].WriteString("<em>");$s=21;case 21:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;r=b[0].Write(G.EscapeHTML(d.Tokens));$s=22;case 22:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;s=b[0].WriteString("</em>");$s=23;case 23:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;$s=17;continue;case 16:if(!(CM.nil===d.Previous)&&(10===d.Previous.Type)){$s=24;continue;}$s=25;continue;case 24:if(A.HasPrefix(d.Previous.Tokens,(new CI($stringToBytes("<font "))))){$s=27;continue;}$s=28;continue;case 27:t=b[0].Write(d.Previous.Tokens);$s=29;case 29:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}t;u=b[0].Write(d.Tokens);$s=30;case 30:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}u;case 28:if(!(CM.nil===d.Next)&&A.Equal(d.Next.Tokens,(new CI($stringToBytes("</font>"))))){$s=31;continue;}$s=32;continue;case 31:v=b[0].Write(d.Next.Tokens);$s=33;case 33:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;case 32:$s=26;continue;case 25:w=b[0].Write(G.EscapeHTML(d.Tokens));$s=34;case 34:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;case 26:case 17:case 6:case 1:$s=-1;return 2;}return;}var $f={$blk:$b,$c:true,$r,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$s};return $f;};})(b));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c=b[0].String();$s=-1;return c;}return;}var $f={$blk:AY,$c:true,$r,a,b,c,$s};return $f;};AQ.ptr.prototype.setextHeadingLen=function(a){var{a,b,c,d,e,f,g,h,i,j,k,l,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=[b];c=0;d=this;b[0]=new A.Buffer.ptr(CI.nil,0,0);$r=H.Walk(a,(function(b){return function $b(e,f){var{e,f,g,$s,$r,$c}=$restore(this,{e,f});$s=$s||0;s:while(true){switch($s){case 0:if(((16===e.Type)||(40===e.Type)||(32===e.Type))&&f){$s=1;continue;}$s=2;continue;case 1:g=b[0].Write(e.Tokens);$s=3;case 3:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}g;case 2:$s=-1;return 2;}return;}var $f={$blk:$b,$c:true,$r,e,f,g,$s};return $f;};})(b));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=b[0].String();e=C.ReplaceAll(e,"\xE2\x80\xB8","");f=C.Split(e,"\n");h=(g=f.$length-1>>0,((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]));i=h;j=0;while(true){if(!(j<i.length)){break;}k=$decodeRune(i,j);l=k[0];if(128<=l){c=c+(2)>>0;}else{c=c+(1)>>0;}j+=k[1];}if(0===c){c=3;}$s=-1;return c;}return;}var $f={$blk:AQ.ptr.prototype.setextHeadingLen,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,$s};return $f;};AQ.prototype.setextHeadingLen=function(a){return this.$val.setextHeadingLen(a);};AQ.ptr.prototype.renderListStyle=function(a,b){var a,b,c,d;c=this;if(c.Options.RenderListStyle){d=a.ListData.Typ;if(d===(0)){b.$set($append(b.$get(),new CJ(["data-style",($bytesToString(a.ListData.Marker))])));}else if(d===(1)){b.$set($append(b.$get(),new CJ(["data-style",B.Itoa(a.ListData.Num)+($encodeRune(a.ListData.Delimiter))])));}else if(d===(3)){if(0===a.ListData.BulletChar){b.$set($append(b.$get(),new CJ(["data-style",B.Itoa(a.ListData.Num)+($encodeRune(a.ListData.Delimiter))])));}else{b.$set($append(b.$get(),new CJ(["data-style",($bytesToString(a.ListData.Marker))])));}}}};AQ.prototype.renderListStyle=function(a,b){return this.$val.renderListStyle(a,b);};AQ.ptr.prototype.tagSrc=function(a){var a,b,c,d;b=this;c=A.Index(a,(new CI($stringToBytes("src=\""))));if(0>c){return CI.nil;}else{d=$subslice(a,(c+5>>0));d=$subslice(d,0,A.Index(d,(new CI($stringToBytes("\"")))));return d;}};AQ.prototype.tagSrc=function(a){return this.$val.tagSrc(a);};AQ.ptr.prototype.tagSrcPath=function(a){var a,b,c,d,e,f;b=this;c=A.Index(a,(new CI($stringToBytes("src=\""))));if(0<c){d=$subslice(a,(c+5>>0));if(1>A.ReplaceAll(d,F.CaretTokens,CI.nil).$length){return a;}e=b.LinkPath(d);f=($bytesToString(e));if(A.HasPrefix(e,(new CI($stringToBytes("//"))))){f="https:"+f;}a=A.ReplaceAll(a,d,(new CI($stringToBytes(f))));}return a;};AQ.prototype.tagSrcPath=function(a){return this.$val.tagSrcPath(a);};AQ.ptr.prototype.isLastNode=function(a,b){var a,b,c,d;c=this;if(a===b||CM.nil===b||CM.nil===b.Parent){return true;}if(!(CM.nil===b.Next)){return false;}if(0===b.Parent.Type){return a.LastChild===b;}d=CM.nil;d=b.Parent;while(true){if(CM.nil===d||CM.nil===d.Parent){return true;}if(0===d.Parent.Type){break;}d=d.Parent;}return a.LastChild===d;};AQ.prototype.isLastNode=function(a,b){return this.$val.isLastNode(a,b);};AQ.ptr.prototype.NodeID=function(a){var{a,b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b="";c=this;d=a.KramdownIAL;e=0;while(true){if(!(e<d.$length)){break;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);if("id"===(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0])){b=(1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1]);$s=-1;return b;}e++;}g=H.NewNodeID();$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}b=g;h=b;$s=2;case 2:return h;}return;}var $f={$blk:AQ.ptr.prototype.NodeID,$c:true,$r,a,b,c,d,e,f,g,h,$s};return $f;};AQ.prototype.NodeID=function(a){return this.$val.NodeID(a);};AQ.ptr.prototype.NodeAttrs=function(a){var a,b,c,d,e,f;b=CL.nil;c=this;d=a.KramdownIAL;e=0;while(true){if(!(e<d.$length)){break;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);if("id"===(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0])){e++;continue;}b=$append(b,f);e++;}return b;};AQ.prototype.NodeAttrs=function(a){return this.$val.NodeAttrs(a);};AQ.ptr.prototype.NodeAttrsStr=function(a){var a,b,c,d,e,f;b="";c=this;d=a.KramdownIAL;e=0;while(true){if(!(e<d.$length)){break;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);if("id"===(0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0])){e++;continue;}b=b+((0>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+0])+"=\""+(1>=f.$length?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+1])+"\" ");e++;}if(!(""===b)){b=$substring(b,0,(b.length-1>>0));}return b;};AQ.prototype.NodeAttrsStr=function(a){return this.$val.NodeAttrsStr(a);};BA=function(a){var a,b,c,d;if(""===a){return false;}b=AZ;c=0;while(true){if(!(c<b.$length)){break;}d=((c<0||c>=b.$length)?($throwRuntimeError("index out of range"),undefined):b.$array[b.$offset+c]);if(a===d){return true;}c++;}return false;};$pkg.NoHighlight=BA;AQ.ptr.prototype.Text=function(a){var{a,b,c,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=[b];b[0]="";c=this;$r=H.Walk(a,(function(b){return function(d,e){var d,e,f;if(e){f=d.Type;if((f===(16))||(f===(40))||(f===(41))||(f===(43))||(f===(42))||(f===(15))||(f===(29))||(f===(306))||(f===(302))||(f===(427))||(f===(9))||(f===(10))||(f===(203))||(f===(543))||(f===(542))||(f===(433))||(f===(434))||(f===(432))||(f===(456))){b[0]=b[0]+(($bytesToString(d.Tokens)));}else if(f===(14)){b[0]=b[0]+(($bytesToString(d.CodeBlockInfo)));}else if(f===(33)){if(3===d.LinkType){b[0]=b[0]+(($bytesToString(d.LinkRefLabel)));}}}return 2;};})(b));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return b[0];}return;}var $f={$blk:AQ.ptr.prototype.Text,$c:true,$r,a,b,c,$s};return $f;};AQ.prototype.Text=function(a){return this.$val.Text(a);};BD=function(a,b){var{a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,d,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,e,ea,eb,ec,ed,ee,ef,eg,eh,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=AR(a,b);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=new BC.ptr(c,b.NodeIndexStart);e=0;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(e),{k:e,v:$methodVal(d,"renderDocument")});f=1;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(f),{k:f,v:$methodVal(d,"renderParagraph")});g=16;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(g),{k:g,v:$methodVal(d,"renderText")});h=27;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(h),{k:h,v:$methodVal(d,"renderCodeSpan")});i=28;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(i),{k:i,v:$methodVal(d,"renderCodeSpanOpenMarker")});j=29;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(j),{k:j,v:$methodVal(d,"renderCodeSpanContent")});k=30;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(k),{k:k,v:$methodVal(d,"renderCodeSpanCloseMarker")});l=11;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(l),{k:l,v:$methodVal(d,"renderCodeBlock")});m=12;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(m),{k:m,v:$methodVal(d,"renderCodeBlockOpenMarker")});n=14;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(n),{k:n,v:$methodVal(d,"renderCodeBlockInfoMarker")});o=15;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(o),{k:o,v:$methodVal(d,"renderCodeBlockCode")});p=13;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(p),{k:p,v:$methodVal(d,"renderCodeBlockCloseMarker")});q=300;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(q),{k:q,v:$methodVal(d,"renderMathBlock")});r=301;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(r),{k:r,v:$methodVal(d,"renderMathBlockOpenMarker")});s=302;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(s),{k:s,v:$methodVal(d,"renderMathBlockContent")});t=303;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(t),{k:t,v:$methodVal(d,"renderMathBlockCloseMarker")});u=304;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(u),{k:u,v:$methodVal(d,"renderInlineMath")});v=305;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(v),{k:v,v:$methodVal(d,"renderInlineMathOpenMarker")});w=306;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(w),{k:w,v:$methodVal(d,"renderInlineMathContent")});x=307;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(x),{k:x,v:$methodVal(d,"renderInlineMathCloseMarker")});y=17;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(y),{k:y,v:$methodVal(d,"renderEmphasis")});z=18;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(z),{k:z,v:$methodVal(d,"renderEmAsteriskOpenMarker")});aa=19;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aa),{k:aa,v:$methodVal(d,"renderEmAsteriskCloseMarker")});ab=20;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ab),{k:ab,v:$methodVal(d,"renderEmUnderscoreOpenMarker")});ac=21;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ac),{k:ac,v:$methodVal(d,"renderEmUnderscoreCloseMarker")});ad=22;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ad),{k:ad,v:$methodVal(d,"renderStrong")});ae=23;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ae),{k:ae,v:$methodVal(d,"renderStrongA6kOpenMarker")});af=24;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(af),{k:af,v:$methodVal(d,"renderStrongA6kCloseMarker")});ag=25;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ag),{k:ag,v:$methodVal(d,"renderStrongU8eOpenMarker")});ah=26;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ah),{k:ah,v:$methodVal(d,"renderStrongU8eCloseMarker")});ai=5;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ai),{k:ai,v:$methodVal(d,"renderBlockquote")});aj=6;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aj),{k:aj,v:$methodVal(d,"renderBlockquoteMarker")});ak=2;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ak),{k:ak,v:$methodVal(d,"renderHeading")});al=3;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(al),{k:al,v:$methodVal(d,"renderHeadingC8hMarker")});am=420;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(am),{k:am,v:$methodVal(d,"renderHeadingID")});an=7;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(an),{k:an,v:$methodVal(d,"renderList")});ao=8;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ao),{k:ao,v:$methodVal(d,"renderListItem")});ap=4;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ap),{k:ap,v:$methodVal(d,"renderThematicBreak")});aq=31;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aq),{k:aq,v:$methodVal(d,"renderHardBreak")});ar=32;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ar),{k:ar,v:$methodVal(d,"renderSoftBreak")});as=9;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(as),{k:as,v:$methodVal(d,"renderHTML")});at=10;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(at),{k:at,v:$methodVal(d,"renderInlineHTML")});au=33;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(au),{k:au,v:$methodVal(d,"renderLink")});av=34;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(av),{k:av,v:$methodVal(d,"renderImage")});aw=35;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aw),{k:aw,v:$methodVal(d,"renderBang")});ax=36;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ax),{k:ax,v:$methodVal(d,"renderOpenBracket")});ay=37;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ay),{k:ay,v:$methodVal(d,"renderCloseBracket")});az=38;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(az),{k:az,v:$methodVal(d,"renderOpenParen")});ba=39;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ba),{k:ba,v:$methodVal(d,"renderCloseParen")});bb=47;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bb),{k:bb,v:$methodVal(d,"renderLess")});bc=48;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bc),{k:bc,v:$methodVal(d,"renderGreater")});bd=466;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bd),{k:bd,v:$methodVal(d,"renderOpenBrace")});be=467;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(be),{k:be,v:$methodVal(d,"renderCloseBrace")});bf=40;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bf),{k:bf,v:$methodVal(d,"renderLinkText")});bg=43;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bg),{k:bg,v:$methodVal(d,"renderLinkSpace")});bh=41;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bh),{k:bh,v:$methodVal(d,"renderLinkDest")});bi=42;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bi),{k:bi,v:$methodVal(d,"renderLinkTitle")});bj=101;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bj),{k:bj,v:$methodVal(d,"renderStrikethrough")});bk=102;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bk),{k:bk,v:$methodVal(d,"renderStrikethrough1OpenMarker")});bl=103;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bl),{k:bl,v:$methodVal(d,"renderStrikethrough1CloseMarker")});bm=104;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bm),{k:bm,v:$methodVal(d,"renderStrikethrough2OpenMarker")});bn=105;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bn),{k:bn,v:$methodVal(d,"renderStrikethrough2CloseMarker")});bo=100;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bo),{k:bo,v:$methodVal(d,"renderTaskListItemMarker")});bp=106;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bp),{k:bp,v:$methodVal(d,"renderTable")});bq=107;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bq),{k:bq,v:$methodVal(d,"renderTableHead")});br=108;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(br),{k:br,v:$methodVal(d,"renderTableRow")});bs=109;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bs),{k:bs,v:$methodVal(d,"renderTableCell")});bt=200;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bt),{k:bt,v:$methodVal(d,"renderEmoji")});bu=201;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bu),{k:bu,v:$methodVal(d,"renderEmojiUnicode")});bv=202;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bv),{k:bv,v:$methodVal(d,"renderEmojiImg")});bw=203;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bw),{k:bw,v:$methodVal(d,"renderEmojiAlias")});bx=410;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bx),{k:bx,v:$methodVal(d,"renderFootnotesDefBlock")});by=411;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(by),{k:by,v:$methodVal(d,"renderFootnotesDef")});bz=412;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bz),{k:bz,v:$methodVal(d,"renderFootnotesRef")});ca=415;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ca),{k:ca,v:$methodVal(d,"renderToC")});cb=400;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cb),{k:cb,v:$methodVal(d,"renderBackslash")});cc=401;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cc),{k:cc,v:$methodVal(d,"renderBackslashContent")});cd=44;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cd),{k:cd,v:$methodVal(d,"renderHtmlEntity")});ce=425;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ce),{k:ce,v:$methodVal(d,"renderYamlFrontMatter")});cf=426;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cf),{k:cf,v:$methodVal(d,"renderYamlFrontMatterOpenMarker")});cg=427;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cg),{k:cg,v:$methodVal(d,"renderYamlFrontMatterContent")});ch=428;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ch),{k:ch,v:$methodVal(d,"renderYamlFrontMatterCloseMarker")});ci=430;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ci),{k:ci,v:$methodVal(d,"renderBlockRef")});cj=431;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cj),{k:cj,v:$methodVal(d,"renderBlockRefID")});ck=432;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ck),{k:ck,v:$methodVal(d,"renderBlockRefSpace")});cl=433;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cl),{k:cl,v:$methodVal(d,"renderBlockRefText")});cm=434;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cm),{k:cm,v:$methodVal(d,"renderBlockRefDynamicText")});cn=540;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cn),{k:cn,v:$methodVal(d,"renderFileAnnotationRef")});co=541;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(co),{k:co,v:$methodVal(d,"renderFileAnnotationRefID")});cp=542;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cp),{k:cp,v:$methodVal(d,"renderFileAnnotationRefSpace")});cq=543;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cq),{k:cq,v:$methodVal(d,"renderFileAnnotationRefText")});cr=450;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cr),{k:cr,v:$methodVal(d,"renderMark")});cs=451;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cs),{k:cs,v:$methodVal(d,"renderMark1OpenMarker")});ct=452;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ct),{k:ct,v:$methodVal(d,"renderMark1CloseMarker")});cu=453;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cu),{k:cu,v:$methodVal(d,"renderMark2OpenMarker")});cv=454;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cv),{k:cv,v:$methodVal(d,"renderMark2CloseMarker")});cw=485;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cw),{k:cw,v:$methodVal(d,"renderSup")});cx=486;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cx),{k:cx,v:$methodVal(d,"renderSupOpenMarker")});cy=487;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cy),{k:cy,v:$methodVal(d,"renderSupCloseMarker")});cz=490;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cz),{k:cz,v:$methodVal(d,"renderSub")});da=491;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(da),{k:da,v:$methodVal(d,"renderSubOpenMarker")});db=492;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(db),{k:db,v:$methodVal(d,"renderSubCloseMarker")});dc=455;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dc),{k:dc,v:$methodVal(d,"renderKramdownBlockIAL")});dd=456;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dd),{k:dd,v:$methodVal(d,"renderKramdownSpanIAL")});de=465;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(de),{k:de,v:$methodVal(d,"renderBlockQueryEmbed")});df=468;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(df),{k:df,v:$methodVal(d,"renderBlockQueryEmbedScript")});dg=460;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dg),{k:dg,v:$methodVal(d,"renderTag")});dh=461;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dh),{k:dh,v:$methodVal(d,"renderTagOpenMarker")});di=462;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(di),{k:di,v:$methodVal(d,"renderTagCloseMarker")});dj=45;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dj),{k:dj,v:$methodVal(d,"renderLinkRefDefBlock")});dk=46;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dk),{k:dk,v:$methodVal(d,"renderLinkRefDef")});dl=475;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dl),{k:dl,v:$methodVal(d,"renderSuperBlock")});dm=476;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dm),{k:dm,v:$methodVal(d,"renderSuperBlockOpenMarker")});dn=477;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dn),{k:dn,v:$methodVal(d,"renderSuperBlockLayoutMarker")});dp=478;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dp),{k:dp,v:$methodVal(d,"renderSuperBlockCloseMarker")});dq=495;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dq),{k:dq,v:$methodVal(d,"renderGitConflict")});dr=496;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dr),{k:dr,v:$methodVal(d,"renderGitConflictOpenMarker")});ds=497;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ds),{k:ds,v:$methodVal(d,"renderGitConflictContent")});dt=498;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dt),{k:dt,v:$methodVal(d,"renderGitConflictCloseMarker")});du=500;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(du),{k:du,v:$methodVal(d,"renderIFrame")});dv=535;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dv),{k:dv,v:$methodVal(d,"renderWidget")});dw=510;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dw),{k:dw,v:$methodVal(d,"renderVideo")});dx=505;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dx),{k:dx,v:$methodVal(d,"renderAudio")});dy=515;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dy),{k:dy,v:$methodVal(d,"renderKbd")});dz=516;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dz),{k:dz,v:$methodVal(d,"renderKbdOpenMarker")});ea=517;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ea),{k:ea,v:$methodVal(d,"renderKbdCloseMarker")});eb=520;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(eb),{k:eb,v:$methodVal(d,"renderUnderline")});ec=521;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ec),{k:ec,v:$methodVal(d,"renderUnderlineOpenMarker")});ed=522;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ed),{k:ed,v:$methodVal(d,"renderUnderlineCloseMarker")});ee=525;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ee),{k:ee,v:$methodVal(d,"renderBr")});ef=530;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ef),{k:ef,v:$methodVal(d,"renderTextMark")});eg=550;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(eg),{k:eg,v:$methodVal(d,"renderAttributeView")});eh=560;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(eh),{k:eh,v:$methodVal(d,"renderCustomBlock")});$s=-1;return d;}return;}var $f={$blk:BD,$c:true,$r,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,d,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,e,ea,eb,ec,ed,ee,ef,eg,eh,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};$pkg.NewProtyleRenderer=BD;BC.ptr.prototype.renderCustomBlock=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;if(b){$s=1;continue;}$s=2;continue;case 1:c[0]=new CL([new CJ(["data-type","NodeCustomBlock"]),new CJ(["data-info",a.CustomBlockInfo]),new CJ(["data-content",($bytesToString(G.EscapeHTML(a.Tokens)))])]);$r=d.blockNodeAttrs(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))),"custom-block");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("div",c[0],false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.renderIAL(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.WriteString("</div>");$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderCustomBlock,$c:true,$r,a,b,c,d,$s};return $f;};BC.prototype.renderCustomBlock=function(a,b){return this.$val.renderCustomBlock(a,b);};BC.ptr.prototype.renderAttributeView=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;if(b){$s=1;continue;}$s=2;continue;case 1:c[0]=new CL([new CJ(["contenteditable","false"]),new CJ(["data-av-id",a.AttributeViewID]),new CJ(["data-av-type",a.AttributeViewType])]);$r=d.blockNodeAttrs(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))),"av");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("div",c[0],false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c[0]=new CL([]);d.spellcheck((c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))));$r=d.BaseRenderer.Tag("div",c[0],false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.WriteString("</div>");$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.renderIAL(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.WriteString("</div>");$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderAttributeView,$c:true,$r,a,b,c,d,$s};return $f;};BC.prototype.renderAttributeView=function(a,b){return this.$val.renderAttributeView(a,b);};BC.ptr.prototype.renderTextMark=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(J.ContainTextMark(a,new CJ(["code","inline-math","kbd"]))){$s=4;continue;}$s=5;continue;case 4:if(d.BaseRenderer.Options.AutoSpace){$s=7;continue;}$s=8;continue;case 7:e=a.PreviousNodeText();$s=9;case 9:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!(""===f)){$s=10;continue;}$s=11;continue;case 10:g=E.DecodeLastRuneInString(f);h=g[0];if(D.IsLetter(h)||D.IsDigit(h)){$s=12;continue;}$s=13;continue;case 12:$r=d.BaseRenderer.WriteByte(32);$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 13:case 11:case 8:$s=6;continue;case 5:$r=d.BaseRenderer.TextAutoSpacePrevious(a);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:c[0]=d.renderTextMarkAttrs(a);d.spanNodeAttrs(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))));if((CM.nil===a.Previous||(32===a.Previous.Type))&&J.ContainTextMark(a,new CJ(["code","kbd","tag"]))){$s=16;continue;}$s=17;continue;case 16:$r=d.BaseRenderer.WriteString("\xE2\x80\x8B");$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 17:if(a.IsTextMarkType("code")){if(d.BaseRenderer.Options.Spellcheck){c[0]=$append(c[0],new CJ(["spellcheck","false"]));}}$r=d.BaseRenderer.Tag("span",c[0],false);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(J.ContainTextMark(a,new CJ(["code","kbd","tag"]))){$s=20;continue;}$s=21;continue;case 20:$r=d.BaseRenderer.WriteString("\xE2\x80\x8B");$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 21:i=a.TextMarkTextContent;if(a.ParentIs(109,CN.nil)){if(a.IsTextMarkType("code")){i=C.ReplaceAll(i,"|","|");}else{i=C.ReplaceAll(i,"\\|","|");}i=C.ReplaceAll(i,"\n","<br />");}$r=d.BaseRenderer.WriteString(i);$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=d.BaseRenderer.WriteString("</span>");$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(J.ContainTextMark(a,new CJ(["code","kbd","tag"]))){$s=25;continue;}$s=26;continue;case 25:$r=d.BaseRenderer.WriteString("\xE2\x80\x8B");$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 26:if(J.ContainTextMark(a,new CJ(["code","inline-math","kbd"]))){$s=28;continue;}$s=29;continue;case 28:if(d.BaseRenderer.Options.AutoSpace){$s=31;continue;}$s=32;continue;case 31:j=a.NextNodeText();$s=33;case 33:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;if(!(""===k)){$s=34;continue;}$s=35;continue;case 34:l=E.DecodeRuneInString(k);m=l[0];if(D.IsLetter(m)||D.IsDigit(m)){$s=36;continue;}$s=37;continue;case 36:$r=d.BaseRenderer.WriteByte(32);$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 37:case 35:case 32:$s=30;continue;case 29:$r=d.BaseRenderer.TextAutoSpaceNext(a);$s=39;case 39:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 30:case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderTextMark,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,$s};return $f;};BC.prototype.renderTextMark=function(a,b){return this.$val.renderTextMark(a,b);};BC.ptr.prototype.renderBr=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<br />");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderBr,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderBr=function(a,b){return this.$val.renderBr(a,b);};BC.ptr.prototype.renderUnderline=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderUnderline=function(a,b){return this.$val.renderUnderline(a,b);};BC.ptr.prototype.renderUnderlineOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","u"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderUnderlineOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderUnderlineOpenMarker=function(a,b){return this.$val.renderUnderlineOpenMarker(a,b);};BC.ptr.prototype.renderUnderlineCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("</span>");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderUnderlineCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderUnderlineCloseMarker=function(a,b){return this.$val.renderUnderlineCloseMarker(a,b);};BC.ptr.prototype.renderKbd=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderKbd=function(a,b){return this.$val.renderKbd(a,b);};BC.ptr.prototype.renderKbdOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(CM.nil===a.Previous||(32===a.Previous.Type)){$s=3;continue;}$s=4;continue;case 3:$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","kbd"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderKbdOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderKbdOpenMarker=function(a,b){return this.$val.renderKbdOpenMarker(a,b);};BC.ptr.prototype.renderKbdCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("</span>");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderKbdCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderKbdCloseMarker=function(a,b){return this.$val.renderKbdCloseMarker(a,b);};BC.ptr.prototype.renderBlockQueryEmbed=function(a,b){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;if(b){$s=1;continue;}$s=2;continue;case 1:e=a.ChildByType(468);if(CM.nil===e){$s=-1;return 2;}c[0]=CL.nil;f=e.Tokens;f=G.EscapeHTML(A.ReplaceAll(f,F.CaretTokens,CI.nil));g=K.BytesToStr(f);g=C.ReplaceAll(g,"_esc_newline_","\n");c[0]=$append(c[0],new CJ(["data-content",g]));$r=d.blockNodeAttrs(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))),"render-node");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("div",c[0],false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.renderIAL(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderBlockQueryEmbed,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};BC.prototype.renderBlockQueryEmbed=function(a,b){return this.$val.renderBlockQueryEmbed(a,b);};BC.ptr.prototype.renderBlockQueryEmbedScript=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderBlockQueryEmbedScript=function(a,b){return this.$val.renderBlockQueryEmbedScript(a,b);};BC.ptr.prototype.renderVideo=function(a,b){var{a,b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;if(b){$s=1;continue;}$s=2;continue;case 1:c[0]=CL.nil;$r=d.blockNodeAttrs(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))),"iframe");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("div",c[0],false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("div",new CL([new CJ(["class","iframe-content"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.WriteString("\xE2\x80\x8B");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=A.ReplaceAll(a.Tokens,F.CaretTokens,CI.nil);if(d.BaseRenderer.Options.Sanitize){$s=8;continue;}$s=9;continue;case 8:f=AE(e);$s=10;case 10:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;case 9:g=d.BaseRenderer.tagSrc(e);h=d.BaseRenderer.LinkPath(g);e=d.replaceSrc(e,h,g);$r=d.BaseRenderer.Write(e);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=d.BaseRenderer.Tag("span",new CL([new CJ(["class","protyle-action__drag"]),new CJ(["contenteditable","false"])]),false);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/span",CL.nil,false);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.renderIAL(a);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderVideo,$c:true,$r,a,b,c,d,e,f,g,h,$s};return $f;};BC.prototype.renderVideo=function(a,b){return this.$val.renderVideo(a,b);};BC.ptr.prototype.renderAudio=function(a,b){var{a,b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;if(b){$s=1;continue;}$s=2;continue;case 1:c[0]=CL.nil;$r=d.blockNodeAttrs(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))),"iframe");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("div",c[0],false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("div",new CL([new CJ(["class","iframe-content"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=A.ReplaceAll(a.Tokens,F.CaretTokens,CI.nil);if(d.BaseRenderer.Options.Sanitize){$s=7;continue;}$s=8;continue;case 7:f=AE(e);$s=9;case 9:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;case 8:g=d.BaseRenderer.tagSrc(e);h=d.BaseRenderer.LinkPath(g);e=d.replaceSrc(e,h,g);$r=d.BaseRenderer.Write(e);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.WriteString("\xE2\x80\x8B");$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.renderIAL(a);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderAudio,$c:true,$r,a,b,c,d,e,f,g,h,$s};return $f;};BC.prototype.renderAudio=function(a,b){return this.$val.renderAudio(a,b);};BC.ptr.prototype.renderWidget=function(a,b){var{a,b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;if(b){$s=1;continue;}$s=2;continue;case 1:c[0]=CL.nil;$r=d.blockNodeAttrs(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))),"iframe");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c[0]=$append(c[0],new CJ(["data-subtype","widget"]));$r=d.BaseRenderer.Tag("div",c[0],false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("div",new CL([new CJ(["class","iframe-content"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=A.ReplaceAll(a.Tokens,F.CaretTokens,CI.nil);if(d.BaseRenderer.Options.Sanitize){$s=7;continue;}$s=8;continue;case 7:f=AE(e);$s=9;case 9:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;case 8:g=d.BaseRenderer.tagSrc(e);h=d.BaseRenderer.LinkPath(g);e=d.replaceSrc(e,h,g);$r=d.BaseRenderer.Write(e);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=d.BaseRenderer.Tag("span",new CL([new CJ(["class","protyle-action__drag"]),new CJ(["contenteditable","false"])]),false);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/span",CL.nil,false);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.renderIAL(a);$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderWidget,$c:true,$r,a,b,c,d,e,f,g,h,$s};return $f;};BC.prototype.renderWidget=function(a,b){return this.$val.renderWidget(a,b);};BC.ptr.prototype.renderIFrame=function(a,b){var{a,b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;if(b){$s=1;continue;}$s=2;continue;case 1:c[0]=CL.nil;$r=d.blockNodeAttrs(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))),"iframe");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("div",c[0],false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("div",new CL([new CJ(["class","iframe-content"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=A.ReplaceAll(a.Tokens,F.CaretTokens,CI.nil);if(d.BaseRenderer.Options.Sanitize){$s=7;continue;}$s=8;continue;case 7:f=AE(e);$s=9;case 9:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;case 8:g=d.BaseRenderer.tagSrc(e);h=d.BaseRenderer.LinkPath(g);e=d.replaceSrc(e,h,g);$r=d.BaseRenderer.Write(e);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=d.BaseRenderer.Tag("span",new CL([new CJ(["class","protyle-action__drag"]),new CJ(["contenteditable","false"])]),false);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/span",CL.nil,false);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.renderIAL(a);$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderIFrame,$c:true,$r,a,b,c,d,e,f,g,h,$s};return $f;};BC.prototype.renderIFrame=function(a,b){return this.$val.renderIFrame(a,b);};BC.ptr.prototype.replaceSrc=function(a,b,c){var a,b,c,d,e,f;d=this;e=$appendSlice((new CI($stringToBytes(" src=\""))),b);e=$appendSlice(e,(new CI($stringToBytes("\""))));f=$appendSlice((new CI($stringToBytes(" src=\""))),c);f=$appendSlice(f,(new CI($stringToBytes("\""))));if(A.Contains(a,(new CI($stringToBytes("data-src="))))){return A.ReplaceAll(a,f,e);}e=$appendSlice(e,(new CI($stringToBytes(" data-src=\""+K.BytesToStr(c)+"\""))));return A.ReplaceAll(a,f,e);};BC.prototype.replaceSrc=function(a,b,c){return this.$val.replaceSrc(a,b,c);};BC.ptr.prototype.renderBlockRef=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=a.ChildByType(431);e="";f="";g=e;h=f;i=a.ChildByType(433);h="s";if(CM.nil===i){i=a.ChildByType(434);h="d";}if(!(CM.nil===i)){$s=3;continue;}$s=4;continue;case 3:j=i.Text();$s=5;case 5:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}g=j;case 4:g=c.escapeRefText(g);k=new CL([new CJ(["data-type","block-ref"]),new CJ(["data-subtype",h]),new CJ(["data-id",d.TokensStr()])]);$r=c.BaseRenderer.Tag("span",k,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=C.ReplaceAll(g,"&#124;","|");$r=c.BaseRenderer.WriteString(g);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 1;case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderBlockRef,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,$s};return $f;};BC.prototype.renderBlockRef=function(a,b){return this.$val.renderBlockRef(a,b);};BC.ptr.prototype.escapeRefText=function(a){var a,b;b=this;a=C.ReplaceAll(a,">",">");a=C.ReplaceAll(a,"<","<");a=C.ReplaceAll(a,"\"",""");a=C.ReplaceAll(a,"'","'");return a;};BC.prototype.escapeRefText=function(a){return this.$val.escapeRefText(a);};BC.ptr.prototype.renderBlockRefID=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderBlockRefID=function(a,b){return this.$val.renderBlockRefID(a,b);};BC.ptr.prototype.renderBlockRefSpace=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderBlockRefSpace=function(a,b){return this.$val.renderBlockRefSpace(a,b);};BC.ptr.prototype.renderBlockRefText=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderBlockRefText=function(a,b){return this.$val.renderBlockRefText(a,b);};BC.ptr.prototype.renderBlockRefDynamicText=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderBlockRefDynamicText=function(a,b){return this.$val.renderBlockRefDynamicText(a,b);};BC.ptr.prototype.renderFileAnnotationRef=function(a,b){var{a,b,c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=a.ChildByType(541);e=d.TokensStr();f=e;g=a.ChildByType(543);if(!(CM.nil===g)){$s=3;continue;}$s=4;continue;case 3:h=g.Text();$s=5;case 5:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}f=h;case 4:f=c.escapeRefText(f);i=new CL([new CJ(["data-type","file-annotation-ref"]),new CJ(["data-subtype","s"]),new CJ(["data-id",e])]);$r=c.BaseRenderer.Tag("span",i,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString(f);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 1;case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderFileAnnotationRef,$c:true,$r,a,b,c,d,e,f,g,h,i,$s};return $f;};BC.prototype.renderFileAnnotationRef=function(a,b){return this.$val.renderFileAnnotationRef(a,b);};BC.ptr.prototype.renderFileAnnotationRefID=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderFileAnnotationRefID=function(a,b){return this.$val.renderFileAnnotationRefID(a,b);};BC.ptr.prototype.renderFileAnnotationRefSpace=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderFileAnnotationRefSpace=function(a,b){return this.$val.renderFileAnnotationRefSpace(a,b);};BC.ptr.prototype.renderFileAnnotationRefText=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderFileAnnotationRefText=function(a,b){return this.$val.renderFileAnnotationRefText(a,b);};BC.ptr.prototype.renderGitConflictCloseMarker=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderGitConflictCloseMarker=function(a,b){return this.$val.renderGitConflictCloseMarker(a,b);};BC.ptr.prototype.renderGitConflictContent=function(a,b){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;if(b){$s=1;continue;}$s=2;continue;case 1:c[0]=CL.nil;$r=d.blockNodeAttrs(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))),"git-conflict");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("div",c[0],false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c[0]=new CL([new CJ(["contenteditable","false"]),new CJ(["spellcheck","false"])]);$r=d.BaseRenderer.Tag("div",c[0],false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=A.TrimSpace(a.Tokens);$s=7;case 7:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;$r=d.BaseRenderer.Write(G.EscapeHTML(f));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.renderIAL(a);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderGitConflictContent,$c:true,$r,a,b,c,d,e,f,$s};return $f;};BC.prototype.renderGitConflictContent=function(a,b){return this.$val.renderGitConflictContent(a,b);};BC.ptr.prototype.renderGitConflictOpenMarker=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderGitConflictOpenMarker=function(a,b){return this.$val.renderGitConflictOpenMarker(a,b);};BC.ptr.prototype.renderGitConflict=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderGitConflict=function(a,b){return this.$val.renderGitConflict(a,b);};BC.ptr.prototype.renderTag=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(CM.nil===a.Previous||!((32===a.Previous.Type))){$s=5;continue;}$s=6;continue;case 5:$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderTag,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderTag=function(a,b){return this.$val.renderTag(a,b);};BC.ptr.prototype.renderTagOpenMarker=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=a.Parent.Text();$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;e=C.ReplaceAll(e,"\xE2\x80\xB8","");$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","tag"]),new CJ(["data-content",G.EscapeHTMLStr(e)])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderTagOpenMarker,$c:true,$r,a,b,c,d,e,$s};return $f;};BC.prototype.renderTagOpenMarker=function(a,b){return this.$val.renderTagOpenMarker(a,b);};BC.ptr.prototype.renderTagCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderTagCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderTagCloseMarker=function(a,b){return this.$val.renderTagCloseMarker(a,b);};BC.ptr.prototype.renderSuperBlock=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(CM.nil===a.FirstChild){$s=-1;return 2;}c[0]=CL.nil;$r=d.blockNodeAttrs(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))),"sb");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=a.FirstChild.Next.TokensStr();if(""===e){e="row";}c[0]=$append(c[0],new CJ(["data-sb-layout",e]));$r=d.BaseRenderer.Tag("div",c[0],false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=d.renderIAL(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderSuperBlock,$c:true,$r,a,b,c,d,e,$s};return $f;};BC.prototype.renderSuperBlock=function(a,b){return this.$val.renderSuperBlock(a,b);};BC.ptr.prototype.renderSuperBlockOpenMarker=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderSuperBlockOpenMarker=function(a,b){return this.$val.renderSuperBlockOpenMarker(a,b);};BC.ptr.prototype.renderSuperBlockLayoutMarker=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderSuperBlockLayoutMarker=function(a,b){return this.$val.renderSuperBlockLayoutMarker(a,b);};BC.ptr.prototype.renderSuperBlockCloseMarker=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderSuperBlockCloseMarker=function(a,b){return this.$val.renderSuperBlockCloseMarker(a,b);};BC.ptr.prototype.renderLinkRefDefBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<div data-block=\"0\" data-type=\"link-ref-defs-block\">");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("</div>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderLinkRefDefBlock,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderLinkRefDefBlock=function(a,b){return this.$val.renderLinkRefDefBlock(a,b);};BC.ptr.prototype.renderLinkRefDef=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(CM.nil===a.FirstChild){$s=-1;return 2;}d=a.FirstChild.ChildByType(41).Tokens;e=K.BytesToStr(d);$r=c.BaseRenderer.WriteString("["+K.BytesToStr(a.Tokens)+"]:");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!("\xE2\x80\xB8"===e)){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.WriteString(" ");$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:$r=c.BaseRenderer.WriteString(e+"\n");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:BC.ptr.prototype.renderLinkRefDef,$c:true,$r,a,b,c,d,e,$s};return $f;};BC.prototype.renderLinkRefDef=function(a,b){return this.$val.renderLinkRefDef(a,b);};BC.ptr.prototype.renderKramdownBlockIAL=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderKramdownBlockIAL=function(a,b){return this.$val.renderKramdownBlockIAL(a,b);};BC.ptr.prototype.renderKramdownSpanIAL=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderKramdownSpanIAL=function(a,b){return this.$val.renderKramdownSpanIAL(a,b);};BC.ptr.prototype.renderMark=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderMark,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderMark=function(a,b){return this.$val.renderMark(a,b);};BC.ptr.prototype.renderMark1OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","mark"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderMark1OpenMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderMark1OpenMarker=function(a,b){return this.$val.renderMark1OpenMarker(a,b);};BC.ptr.prototype.renderMark1CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderMark1CloseMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderMark1CloseMarker=function(a,b){return this.$val.renderMark1CloseMarker(a,b);};BC.ptr.prototype.renderMark2OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","mark"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderMark2OpenMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderMark2OpenMarker=function(a,b){return this.$val.renderMark2OpenMarker(a,b);};BC.ptr.prototype.renderMark2CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderMark2CloseMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderMark2CloseMarker=function(a,b){return this.$val.renderMark2CloseMarker(a,b);};BC.ptr.prototype.renderSup=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderSup=function(a,b){return this.$val.renderSup(a,b);};BC.ptr.prototype.renderSupOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","sup"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderSupOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderSupOpenMarker=function(a,b){return this.$val.renderSupOpenMarker(a,b);};BC.ptr.prototype.renderSupCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderSupCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderSupCloseMarker=function(a,b){return this.$val.renderSupCloseMarker(a,b);};BC.ptr.prototype.renderSub=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderSub=function(a,b){return this.$val.renderSub(a,b);};BC.ptr.prototype.renderSubOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","sub"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderSubOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderSubOpenMarker=function(a,b){return this.$val.renderSubOpenMarker(a,b);};BC.ptr.prototype.renderSubCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderSubCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderSubCloseMarker=function(a,b){return this.$val.renderSubCloseMarker(a,b);};BC.ptr.prototype.renderYamlFrontMatterCloseMarker=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderYamlFrontMatterCloseMarker=function(a,b){return this.$val.renderYamlFrontMatterCloseMarker(a,b);};BC.ptr.prototype.renderYamlFrontMatterContent=function(a,b){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=A.TrimSpace(a.Tokens);$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;f=e.$length;g=1>f||((3===f)&&"\xE2\x80\xB8"===($bytesToString(a.Tokens)));$r=c.BaseRenderer.Tag("pre",CL.nil,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("code",new CL([new CJ(["data-type","yaml-front-matter"])]),false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(g){$s=6;continue;}$s=7;continue;case 6:$r=c.BaseRenderer.WriteString("<wbr>\n");$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=8;continue;case 7:$r=c.BaseRenderer.Write(G.EscapeHTML(e));$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 8:$r=c.BaseRenderer.WriteString("</code></pre>");$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderYamlFrontMatterContent,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};BC.prototype.renderYamlFrontMatterContent=function(a,b){return this.$val.renderYamlFrontMatterContent(a,b);};BC.ptr.prototype.renderYamlFrontMatterOpenMarker=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderYamlFrontMatterOpenMarker=function(a,b){return this.$val.renderYamlFrontMatterOpenMarker(a,b);};BC.ptr.prototype.renderYamlFrontMatter=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<div class=\"protyle-wysiwyg__block\" data-type=\"yaml-front-matter\" data-block=\"0\">");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("</div>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderYamlFrontMatter,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderYamlFrontMatter=function(a,b){return this.$val.renderYamlFrontMatter(a,b);};BC.ptr.prototype.renderHtmlEntity=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!b){$s=-1;return 2;}$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderHtmlEntity,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderHtmlEntity=function(a,b){return this.$val.renderHtmlEntity(a,b);};BC.ptr.prototype.renderBackslashContent=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderBackslashContent,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderBackslashContent=function(a,b){return this.$val.renderBackslashContent(a,b);};BC.ptr.prototype.renderBackslash=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<span data-type=\"backslash\">");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("</span>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderBackslash,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderBackslash=function(a,b){return this.$val.renderBackslash(a,b);};BC.ptr.prototype.renderToC=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=c.BaseRenderer.renderToC(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$s=2;case 2:return e;}return;}var $f={$blk:BC.ptr.prototype.renderToC,$c:true,$r,a,b,c,d,e,$s};return $f;};BC.prototype.renderToC=function(a,b){return this.$val.renderToC(a,b);};BC.ptr.prototype.renderFootnotesDefBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<div class=\"footnotes-defs-div\">");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("<hr class=\"footnotes-defs-hr\" />\n");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("<ol class=\"footnotes-defs-ol\">");$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("</ol></div>");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderFootnotesDefBlock,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderFootnotesDefBlock=function(a,b){return this.$val.renderFootnotesDefBlock(a,b);};BC.ptr.prototype.renderFootnotesDef=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<li>");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(0<a.FootnotesRefs.$length){e=(d=a.FootnotesRefs,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])).FootnotesRefId;a.FirstChild.PrependChild(new H.Node.ptr("","","","",10,CM.nil,CM.nil,CM.nil,CM.nil,CM.nil,CO.nil,(new CI($stringToBytes("<span id=\"footnotes-def-"+e+"\"></span>"))),"","",false,false,false,0,false,0,0,0,CI.nil,CI.nil,CI.nil,0,CP.nil,false,CQ.nil,0,0,0,0,CI.nil,0,false,"",0,CI.nil,"",CO.nil,CI.nil,CL.nil,false,"","","","","","","","","","","",0,""));}$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("</li>\n");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderFootnotesDef,$c:true,$r,a,b,c,d,e,$s};return $f;};BC.prototype.renderFootnotesDef=function(a,b){return this.$val.renderFootnotesDef(a,b);};BC.ptr.prototype.renderFootnotesRef=function(a,b){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:e=c.BaseRenderer.Tree.FindFootnotesDef(a.Tokens);$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[0];g=B.Itoa(f);$r=c.BaseRenderer.Tag("sup",new CL([new CJ(["class","footnotes-ref"]),new CJ(["id","footnotes-ref-"+a.FootnotesRefId])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("a",new CL([new CJ(["href",c.BaseRenderer.Options.LinkBase+"#footnotes-def-"+g])]),false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString(g);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/a",CL.nil,false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/sup",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderFootnotesRef,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};BC.prototype.renderFootnotesRef=function(a,b){return this.$val.renderFootnotesRef(a,b);};BC.ptr.prototype.renderCodeBlock=function(a,b){var{a,b,c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=[d];e=this;f=false;g="";if(!(CM.nil===a.FirstChild)&&!(CM.nil===a.FirstChild.Next)&&0<a.FirstChild.Next.CodeBlockInfo.$length){g=K.BytesToStr(a.FirstChild.Next.CodeBlockInfo);g=C.ReplaceAll(g,"\xE2\x80\xB8","");f=BA(g);}if(b){$s=1;continue;}$s=2;continue;case 1:if(f){$s=4;continue;}$s=5;continue;case 4:if(CM.nil===a.FirstChild){$s=-1;return 2;}c[0]=CL.nil;$r=e.blockNodeAttrs(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))),"render-node");$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=G.EscapeHTML(a.FirstChild.Next.Next.Tokens);h=A.ReplaceAll(h,F.CaretTokens,CI.nil);i=A.TrimSpace(h);$s=7;case 7:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;c[0]=$append(c[0],new CJ(["data-content",K.BytesToStr(h)]));c[0]=$append(c[0],new CJ(["data-subtype",g]));$r=e.BaseRenderer.Tag("div",c[0],false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=e.BaseRenderer.Tag("div",new CL([new CJ(["spin","1"])]),false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=e.BaseRenderer.Tag("/div",CL.nil,false);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=e.renderIAL(a);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=e.BaseRenderer.Tag("/div",CL.nil,false);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 1;case 5:d[0]=CL.nil;$r=e.blockNodeAttrs(a,(d.$ptr||(d.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},d))),"code-block");$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=e.BaseRenderer.Tag("div",d[0],false);$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:if(f){$s=-1;return 1;}$r=e.renderIAL(a);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=e.BaseRenderer.Tag("/div",CL.nil,false);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderCodeBlock,$c:true,$r,a,b,c,d,e,f,g,h,i,$s};return $f;};BC.prototype.renderCodeBlock=function(a,b){return this.$val.renderCodeBlock(a,b);};BC.ptr.prototype.renderCodeBlockOpenMarker=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderCodeBlockOpenMarker=function(a,b){return this.$val.renderCodeBlockOpenMarker(a,b);};BC.ptr.prototype.renderCodeBlockInfoMarker=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderCodeBlockInfoMarker=function(a,b){return this.$val.renderCodeBlockInfoMarker(a,b);};BC.ptr.prototype.renderCodeBlockCode=function(a,b){var{a,b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;if(!b){$s=-1;return 2;}$r=d.BaseRenderer.Tag("div",new CL([new CJ(["class","protyle-action"])]),false);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=a.Tokens.$length;f=1>e||((3===e)&&"\xE2\x80\xB8"===($bytesToString(a.Tokens)));g="";h=false;if(!(CM.nil===a.Previous)){h=A.Contains(a.Previous.CodeBlockInfo,F.CaretTokens);a.Previous.CodeBlockInfo=A.ReplaceAll(a.Previous.CodeBlockInfo,F.CaretTokens,CI.nil);}c[0]=new CL([new CJ(["class","protyle-action--first protyle-action__language"]),new CJ(["contenteditable","false"])]);if(!(CM.nil===a.Previous)&&0<a.Previous.CodeBlockInfo.$length){i=I.Split(a.Previous.CodeBlockInfo,32);g=($bytesToString((0>=i.$length?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+0])));}$r=d.BaseRenderer.Tag("span",c[0],false);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.WriteString(g);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/span",CL.nil,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.WriteString("<span class=\"fn__flex-1\"></span>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("span",new CL([new CJ(["class","b3-tooltips__nw b3-tooltips protyle-icon protyle-icon--first protyle-action__copy"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.WriteString("<svg><use xlink:href=\"#iconCopy\"></use></svg>");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/span",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.WriteString("<span class=\"b3-tooltips__nw b3-tooltips protyle-icon protyle-icon--last protyle-action__menu\"><svg><use xlink:href=\"#iconMore\"></use></svg></span>");$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c[0]=new CL([new CJ(["class","hljs"])]);d.contenteditable(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))));c[0]=$append(c[0],new CJ(["spellcheck","false"]));$r=d.BaseRenderer.Tag("div",c[0],false);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(f){$s=12;continue;}$s=13;continue;case 12:if(h){$s=15;continue;}$s=16;continue;case 15:$r=d.BaseRenderer.WriteString("<wbr>");$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 16:$s=14;continue;case 13:j=G.EscapeHTML(a.Tokens);j=A.ReplaceAll(j,(new CI($stringToBytes("__@mark__"))),(new CI($stringToBytes("<span data-type=\"search-mark\">"))));j=A.ReplaceAll(j,(new CI($stringToBytes("__mark@__"))),(new CI($stringToBytes("</span>"))));$r=d.BaseRenderer.Write(j);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 14:$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderCodeBlockCode,$c:true,$r,a,b,c,d,e,f,g,h,i,j,$s};return $f;};BC.prototype.renderCodeBlockCode=function(a,b){return this.$val.renderCodeBlockCode(a,b);};BC.ptr.prototype.renderCodeBlockCloseMarker=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderCodeBlockCloseMarker=function(a,b){return this.$val.renderCodeBlockCloseMarker(a,b);};BC.ptr.prototype.renderEmojiAlias=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderEmojiAlias=function(a,b){return this.$val.renderEmojiAlias(a,b);};BC.ptr.prototype.renderEmojiImg=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderEmojiImg,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderEmojiImg=function(a,b){return this.$val.renderEmojiImg(a,b);};BC.ptr.prototype.renderEmojiUnicode=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderEmojiUnicode,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderEmojiUnicode=function(a,b){return this.$val.renderEmojiUnicode(a,b);};BC.ptr.prototype.renderEmoji=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderEmoji=function(a,b){return this.$val.renderEmoji(a,b);};BC.ptr.prototype.renderInlineMath=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(c.BaseRenderer.Options.AutoSpace){$s=4;continue;}$s=5;continue;case 4:d=a.PreviousNodeText();$s=6;case 6:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!(""===e)){$s=7;continue;}$s=8;continue;case 7:f=E.DecodeLastRuneInString(e);g=f[0];if(D.IsLetter(g)||D.IsDigit(g)){$s=9;continue;}$s=10;continue;case 9:$r=c.BaseRenderer.WriteByte(32);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:case 8:case 5:$s=3;continue;case 2:if(c.BaseRenderer.Options.AutoSpace){$s=12;continue;}$s=13;continue;case 12:h=a.NextNodeText();$s=14;case 14:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;if(!(""===i)){$s=15;continue;}$s=16;continue;case 15:j=E.DecodeRuneInString(i);k=j[0];if(D.IsLetter(k)||D.IsDigit(k)){$s=17;continue;}$s=18;continue;case 17:$r=c.BaseRenderer.WriteByte(32);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 18:case 16:case 13:case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderInlineMath,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,$s};return $f;};BC.prototype.renderInlineMath=function(a,b){return this.$val.renderInlineMath(a,b);};BC.ptr.prototype.renderInlineMathOpenMarker=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=G.EscapeHTML(a.Next.Tokens);d=A.ReplaceAll(d,F.CaretTokens,CI.nil);$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","inline-math"]),new CJ(["data-subtype","math"]),new CJ(["data-content",K.BytesToStr(d)]),new CJ(["contenteditable","false"]),new CJ(["class","render-node"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderInlineMathOpenMarker,$c:true,$r,a,b,c,d,$s};return $f;};BC.prototype.renderInlineMathOpenMarker=function(a,b){return this.$val.renderInlineMathOpenMarker(a,b);};BC.ptr.prototype.renderInlineMathContent=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderInlineMathContent=function(a,b){return this.$val.renderInlineMathContent(a,b);};BC.ptr.prototype.renderInlineMathCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(A.Contains(a.Previous.Tokens,F.CaretTokens)){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.WriteString("\xE2\x80\xB8");$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderInlineMathCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderInlineMathCloseMarker=function(a,b){return this.$val.renderInlineMathCloseMarker(a,b);};BC.ptr.prototype.renderMathBlock=function(a,b){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;if(!b){$s=-1;return 2;}if(CM.nil===a.FirstChild){$s=-1;return 2;}c[0]=CL.nil;$r=d.blockNodeAttrs(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))),"render-node");$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=G.EscapeHTML(a.FirstChild.Next.Tokens);e=A.ReplaceAll(e,F.CaretTokens,CI.nil);f=A.TrimSpace(e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;c[0]=$append(c[0],new CJ(["data-content",K.BytesToStr(e)]));c[0]=$append(c[0],new CJ(["data-subtype","math"]));$r=d.BaseRenderer.Tag("div",c[0],false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("div",new CL([new CJ(["spin","1"])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.renderIAL(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderMathBlock,$c:true,$r,a,b,c,d,e,f,$s};return $f;};BC.prototype.renderMathBlock=function(a,b){return this.$val.renderMathBlock(a,b);};BC.ptr.prototype.renderMathBlockOpenMarker=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderMathBlockOpenMarker=function(a,b){return this.$val.renderMathBlockOpenMarker(a,b);};BC.ptr.prototype.renderMathBlockContent=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderMathBlockContent=function(a,b){return this.$val.renderMathBlockContent(a,b);};BC.ptr.prototype.renderMathBlockCloseMarker=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderMathBlockCloseMarker=function(a,b){return this.$val.renderMathBlockCloseMarker(a,b);};BC.ptr.prototype.renderTableCell=function(a,b){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;e="td";if(107===a.Parent.Parent.Type){e="th";}if(b){$s=1;continue;}$s=2;continue;case 1:c[0]=CL.nil;f=a.TableCellAlign;if(f===(1)){c[0]=$append(c[0],new CJ(["align","left"]));}else if(f===(2)){c[0]=$append(c[0],new CJ(["align","center"]));}else if(f===(3)){c[0]=$append(c[0],new CJ(["align","right"]));}d.spanNodeAttrs(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))));$r=d.BaseRenderer.Tag(e,c[0],false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=d.BaseRenderer.Tag("/"+e,CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderTableCell,$c:true,$r,a,b,c,d,e,f,$s};return $f;};BC.prototype.renderTableCell=function(a,b){return this.$val.renderTableCell(a,b);};BC.ptr.prototype.renderTableRow=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("tr",CL.nil,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/tr",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderTableRow,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderTableRow=function(a,b){return this.$val.renderTableRow(a,b);};BC.ptr.prototype.renderTableHead=function(a,b){var{a,b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("colgroup",CL.nil,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.Parent.IALAttr("colgroup");if(""===d){$s=5;continue;}$s=6;continue;case 5:if(!(CM.nil===a.FirstChild)){$s=8;continue;}$s=9;continue;case 8:e=a.FirstChild.FirstChild;case 10:if(!(!(CM.nil===e))){$s=11;continue;}if(109===e.Type){$s=12;continue;}$s=13;continue;case 12:f=e.IALAttr("style");if(!(""===f)){$s=14;continue;}$s=15;continue;case 14:$r=c.BaseRenderer.Tag("col",new CL([new CJ(["style",f])]),true);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=16;continue;case 15:$r=c.BaseRenderer.Tag("col",CL.nil,true);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 16:case 13:e=e.Next;$s=10;continue;case 11:case 9:$s=7;continue;case 6:g=C.Split(d,"|");h=g;i=0;case 19:if(!(i<h.$length)){$s=20;continue;}j=((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]);if(!(""===j)){$s=21;continue;}$s=22;continue;case 21:$r=c.BaseRenderer.Tag("col",new CL([new CJ(["style",j])]),true);$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=23;continue;case 22:$r=c.BaseRenderer.Tag("col",CL.nil,true);$s=25;case 25:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 23:i++;$s=19;continue;case 20:case 7:$r=c.BaseRenderer.Tag("/colgroup",CL.nil,false);$s=26;case 26:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("thead",CL.nil,false);$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/thead",CL.nil,false);$s=28;case 28:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("tbody",CL.nil,false);$s=29;case 29:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderTableHead,$c:true,$r,a,b,c,d,e,f,g,h,i,j,$s};return $f;};BC.prototype.renderTableHead=function(a,b){return this.$val.renderTableHead(a,b);};BC.ptr.prototype.renderTable=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;if(CM.nil===a.FirstChild){$s=-1;return 1;}if(b){$s=1;continue;}$s=2;continue;case 1:c[0]=CL.nil;$r=d.blockNodeAttrs(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))),"table");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("div",c[0],false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c[0]=new CL([new CJ(["contenteditable","false"])]);$r=d.BaseRenderer.Tag("div",c[0],false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c[0]=new CL([]);d.contenteditable(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))));d.spellcheck((c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))));$r=d.BaseRenderer.Tag("table",c[0],false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=d.BaseRenderer.Tag("/tbody",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/table",CL.nil,false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.WriteString("<div class=\"protyle-action__table\"><div class=\"table__resize\"></div><div class=\"table__select\"></div></div>");$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.renderIAL(a);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderTable,$c:true,$r,a,b,c,d,$s};return $f;};BC.prototype.renderTable=function(a,b){return this.$val.renderTable(a,b);};BC.ptr.prototype.renderStrikethrough=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderStrikethrough,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderStrikethrough=function(a,b){return this.$val.renderStrikethrough(a,b);};BC.ptr.prototype.renderStrikethrough1OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","s"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderStrikethrough1OpenMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderStrikethrough1OpenMarker=function(a,b){return this.$val.renderStrikethrough1OpenMarker(a,b);};BC.ptr.prototype.renderStrikethrough1CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderStrikethrough1CloseMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderStrikethrough1CloseMarker=function(a,b){return this.$val.renderStrikethrough1CloseMarker(a,b);};BC.ptr.prototype.renderStrikethrough2OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","s"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderStrikethrough2OpenMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderStrikethrough2OpenMarker=function(a,b){return this.$val.renderStrikethrough2OpenMarker(a,b);};BC.ptr.prototype.renderStrikethrough2CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderStrikethrough2CloseMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderStrikethrough2CloseMarker=function(a,b){return this.$val.renderStrikethrough2CloseMarker(a,b);};BC.ptr.prototype.renderLinkTitle=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderLinkTitle=function(a,b){return this.$val.renderLinkTitle(a,b);};BC.ptr.prototype.renderLinkDest=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderLinkDest=function(a,b){return this.$val.renderLinkDest(a,b);};BC.ptr.prototype.renderLinkSpace=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderLinkSpace=function(a,b){return this.$val.renderLinkSpace(a,b);};BC.ptr.prototype.renderLinkText=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(!((34===a.Parent.Type))){$s=3;continue;}$s=4;continue;case 3:$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderLinkText,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderLinkText=function(a,b){return this.$val.renderLinkText(a,b);};BC.ptr.prototype.renderCloseParen=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderCloseParen=function(a,b){return this.$val.renderCloseParen(a,b);};BC.ptr.prototype.renderOpenParen=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderOpenParen=function(a,b){return this.$val.renderOpenParen(a,b);};BC.ptr.prototype.renderLess=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderLess=function(a,b){return this.$val.renderLess(a,b);};BC.ptr.prototype.renderGreater=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderGreater=function(a,b){return this.$val.renderGreater(a,b);};BC.ptr.prototype.renderCloseBrace=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderCloseBrace=function(a,b){return this.$val.renderCloseBrace(a,b);};BC.ptr.prototype.renderOpenBrace=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderOpenBrace=function(a,b){return this.$val.renderOpenBrace(a,b);};BC.ptr.prototype.renderCloseBracket=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderCloseBracket=function(a,b){return this.$val.renderCloseBracket(a,b);};BC.ptr.prototype.renderOpenBracket=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderOpenBracket=function(a,b){return this.$val.renderOpenBracket(a,b);};BC.ptr.prototype.renderBang=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderBang=function(a,b){return this.$val.renderBang(a,b);};BC.ptr.prototype.renderImage=function(a,b){var{a,aa,ab,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(CM.nil===a.Previous){d=true;$s=6;continue s;}e=a.Previous.Text();$s=7;case 7:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d="\xE2\x80\xB8"===e;case 6:if(d||(a.ParentIs(109,CN.nil)&&!(CM.nil===a.Previous)&&CM.nil===a.Previous.Previous)){$s=4;continue;}$s=5;continue;case 4:if(!(CM.nil===a.Next)){$s=8;continue;}$s=9;continue;case 8:if(456===a.Next.Type){$s=11;continue;}$s=12;continue;case 11:if(!A.Contains(a.Next.Tokens,(new CI($stringToBytes("display: block"))))){$s=14;continue;}$s=15;continue;case 14:$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 15:$s=13;continue;case 12:$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 13:$s=10;continue;case 9:$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:case 5:f=new CL([new CJ(["contenteditable","false"]),new CJ(["data-type","img"]),new CJ(["class","img"])]);g=a.IALAttr("parent-style");if(!(""===g)){f=$append(f,new CJ(["style",g]));}if(!C.Contains(g,"display")&&!C.Contains(g,"block")&&(c.BaseRenderer.LastOut===10)){$s=19;continue;}$s=20;continue;case 19:$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 20:$r=c.BaseRenderer.Tag("span",f,false);$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",CL.nil,false);$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString(" ");$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=25;case 25:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",CL.nil,false);$s=26;case 26:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","protyle-action protyle-icons"])]),false);$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("<span class=\"protyle-icon protyle-icon--only\"><svg class=\"svg\"><use xlink:href=\"#iconMore\"></use></svg></span>");$s=28;case 28:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=29;case 29:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:h=a.ChildByType(41).Tokens;if(c.BaseRenderer.Options.Sanitize){$s=30;continue;}$s=31;continue;case 30:i=AE(h);$s=32;case 32:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}h=i;case 31:h=A.ReplaceAll(h,F.CaretTokens,CI.nil);j=h;k=K.BytesToStr(j);l=K.BytesToStr(c.BaseRenderer.LinkPath(h));m=new CL([new CJ(["src",l]),new CJ(["data-src",k])]);n=a.ChildByType(40);if(!(CM.nil===n)&&0<n.Tokens.$length){m=$append(m,new CJ(["alt",K.BytesToStr(n.Tokens)]));}o=a.ChildByType(42);p=CI.nil;if(!(CM.nil===o)&&0<o.Tokens.$length){p=o.Tokens;m=$append(m,new CJ(["title",c.escapeRefText(($bytesToString(p)))]));}q=a.IALAttr("style");if(!(""===q)){m=$append(m,new CJ(["style",q]));}$r=c.BaseRenderer.Tag("img",m,true);$s=33;case 33:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}r=c.BaseRenderer.Writer.Bytes();s=A.LastIndex(r,(new CI($stringToBytes("<img src="))));t=$subslice(r,s);if(c.BaseRenderer.Options.Sanitize){$s=34;continue;}$s=35;continue;case 34:u=AE(t);$s=36;case 36:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}t=u;case 35:t=c.BaseRenderer.tagSrcPath(t);c.BaseRenderer.Writer.Truncate(s);v=c.BaseRenderer.Writer.Write(t);$s=37;case 37:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","protyle-action__drag"])]),false);$s=38;case 38:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=39;case 39:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c.BaseRenderer.Options.ProtyleMarkNetImg&&!A.HasPrefix(j,(new CI($stringToBytes("assets/"))))){$s=40;continue;}$s=41;continue;case 40:$r=c.BaseRenderer.WriteString("<span class=\"img__net\"><svg><use xlink:href=\"#iconLanguage\"></use></svg></span>");$s=42;case 42:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 41:m=new CL([new CJ(["class","protyle-action__title"])]);$r=c.BaseRenderer.Tag("span",m,false);$s=43;case 43:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}w=c.BaseRenderer.Writer.Write(G.EscapeHTML(p));$s=44;case 44:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=45;case 45:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=46;case 46:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("span",CL.nil,false);$s=47;case 47:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString(" ");$s=48;case 48:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=49;case 49:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=50;case 50:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(CM.nil===a.Next){x=true;$s=53;continue s;}y=a.Next.Text();$s=54;case 54:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}x="\xE2\x80\xB8"===y;case 53:if(x){$s=51;continue;}$s=52;continue;case 51:$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=55;case 55:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;case 52:if(!(456===a.Next.Type)){z=false;$s=58;continue s;}if(CM.nil===a.Next.Next){aa=true;$s=59;continue s;}ab=a.Next.Next.Text();$s=60;case 60:if($c){$c=false;ab=ab.$blk();}if(ab&&ab.$blk!==undefined){break s;}aa="\xE2\x80\xB8"===ab;case 59:z=aa;case 58:if(z){$s=56;continue;}$s=57;continue;case 56:if(A.Contains(a.Next.Tokens,(new CI($stringToBytes("display: block"))))){$s=-1;return 2;}$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=61;case 61:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;case 57:case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderImage,$c:true,$r,a,aa,ab,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};BC.prototype.renderImage=function(a,b){return this.$val.renderImage(a,b);};BC.ptr.prototype.renderLink=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=a.ChildByType(41);e=d.Tokens;if(c.BaseRenderer.Options.Sanitize){$s=4;continue;}$s=5;continue;case 4:f=A.TrimSpace(e);$s=6;case 6:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;g=AE(e);$s=7;case 7:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}e=g;h=A.ToLower(e);$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;if(A.HasPrefix(i,(new CI($stringToBytes("javascript:"))))){e=CI.nil;}case 5:e=c.BaseRenderer.LinkPath(e);j=A.Contains(e,F.CaretTokens);if(j){k=a.ChildByType(40);k.Tokens=$appendSlice(k.Tokens,F.CaretTokens);e=A.ReplaceAll(e,F.CaretTokens,CI.nil);}l=new CL([new CJ(["data-type","a"]),new CJ(["data-href",($bytesToString(e))])]);m=a.ChildByType(42);if(!(CM.nil===m)&&!(CI.nil===m.Tokens)){l=$append(l,new CJ(["data-title",c.escapeRefText(($bytesToString(m.Tokens)))]));}$r=c.BaseRenderer.Tag("span",l,false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderLink,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,$s};return $f;};BC.prototype.renderLink=function(a,b){return this.$val.renderLink(a,b);};BC.ptr.prototype.renderHTML=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;if(!b){$s=-1;return 2;}c[0]=CL.nil;$r=d.blockNodeAttrs(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))),"render-node");$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=a.Tokens;e=A.ReplaceAll(e,F.CaretTokens,CI.nil);c[0]=$append(c[0],new CJ(["data-subtype","block"]));$r=d.BaseRenderer.Tag("div",c[0],false);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.WriteString("<div class=\"protyle-icons\">");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.WriteString("<span class=\"b3-tooltips__nw b3-tooltips protyle-icon protyle-icon--first protyle-action__edit\"><svg><use xlink:href=\"#iconEdit\"></use></svg></span><span class=\"b3-tooltips__nw b3-tooltips protyle-icon protyle-action__menu protyle-icon--last\"><svg><use xlink:href=\"#iconMore\"></use></svg></span>");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.WriteString("</div><div>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c[0]=new CL([new CJ(["data-content",K.BytesToStr(G.EscapeHTML(e))])]);$r=d.BaseRenderer.Tag("protyle-html",c[0],false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/protyle-html",CL.nil,false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.WriteString("<span style=\"position: absolute\">\xE2\x80\x8B</span>");$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.WriteString("</div>");$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.renderIAL(a);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderHTML,$c:true,$r,a,b,c,d,e,$s};return $f;};BC.prototype.renderHTML=function(a,b){return this.$val.renderHTML(a,b);};BC.ptr.prototype.renderInlineHTML=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!b){$s=-1;return 2;}if(A.Equal(a.Tokens,(new CI($stringToBytes("<br />"))))&&a.ParentIs(109,CN.nil)){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;case 2:if(A.Equal(a.Tokens,(new CI($stringToBytes("<u>"))))||A.Equal(a.Tokens,(new CI($stringToBytes("</u>"))))){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.Write(a.Tokens);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;case 5:a.Type=9;d=c.renderHTML(a,b);$s=7;case 7:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$s=8;case 8:return e;}return;}var $f={$blk:BC.ptr.prototype.renderInlineHTML,$c:true,$r,a,b,c,d,e,$s};return $f;};BC.prototype.renderInlineHTML=function(a,b){return this.$val.renderInlineHTML(a,b);};BC.ptr.prototype.renderDocument=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderDocument=function(a,b){return this.$val.renderDocument(a,b);};BC.ptr.prototype.renderParagraph=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;if(b){$s=1;continue;}$s=2;continue;case 1:c[0]=CL.nil;$r=d.blockNodeAttrs(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))),"p");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("div",c[0],false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c[0]=new CL([]);d.contenteditable(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))));d.spellcheck((c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))));$r=d.BaseRenderer.Tag("div",c[0],false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.renderIAL(a);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderParagraph,$c:true,$r,a,b,c,d,$s};return $f;};BC.prototype.renderParagraph=function(a,b){return this.$val.renderParagraph(a,b);};BC.ptr.prototype.renderText=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=CI.nil;if(c.BaseRenderer.Options.AutoSpace&&!((515===a.Parent.Type))){d=c.BaseRenderer.Space(a.Tokens);}else{d=a.Tokens;}if(a.ParentIs(530,CN.nil)){$s=3;continue;}$s=4;continue;case 3:if("code"===a.Parent.TokensStr()){if(a.ParentIs(109,CN.nil)){d=A.ReplaceAll(d,(new CI($stringToBytes("\\|"))),(new CI($stringToBytes("|"))));}d=G.EscapeHTML(d);}$r=c.BaseRenderer.Write(d);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=5;continue;case 4:$r=c.BaseRenderer.Write(G.EscapeHTML(d));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderText,$c:true,$r,a,b,c,d,$s};return $f;};BC.prototype.renderText=function(a,b){return this.$val.renderText(a,b);};BC.ptr.prototype.renderCodeSpan=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(c.BaseRenderer.Options.AutoSpace){$s=4;continue;}$s=5;continue;case 4:d=a.PreviousNodeText();$s=6;case 6:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!(""===e)){$s=7;continue;}$s=8;continue;case 7:f=E.DecodeLastRuneInString(e);g=f[0];if(D.IsLetter(g)||D.IsDigit(g)){$s=9;continue;}$s=10;continue;case 9:$r=c.BaseRenderer.WriteByte(32);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:case 8:case 5:if(CM.nil===a.Previous||(32===a.Previous.Type)){$s=12;continue;}$s=13;continue;case 12:$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 13:$s=3;continue;case 2:if(c.BaseRenderer.Options.AutoSpace){$s=15;continue;}$s=16;continue;case 15:h=a.NextNodeText();$s=17;case 17:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;if(!(""===i)){$s=18;continue;}$s=19;continue;case 18:j=E.DecodeRuneInString(i);k=j[0];if(D.IsLetter(k)||D.IsDigit(k)){$s=20;continue;}$s=21;continue;case 20:$r=c.BaseRenderer.WriteByte(32);$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 21:case 19:case 16:case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderCodeSpan,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,$s};return $f;};BC.prototype.renderCodeSpan=function(a,b){return this.$val.renderCodeSpan(a,b);};BC.ptr.prototype.renderCodeSpanOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","code"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderCodeSpanOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderCodeSpanOpenMarker=function(a,b){return this.$val.renderCodeSpanOpenMarker(a,b);};BC.ptr.prototype.renderCodeSpanContent=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=G.EscapeHTML(a.Tokens);$r=c.BaseRenderer.Write(d);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderCodeSpanContent,$c:true,$r,a,b,c,d,$s};return $f;};BC.prototype.renderCodeSpanContent=function(a,b){return this.$val.renderCodeSpanContent(a,b);};BC.ptr.prototype.renderCodeSpanCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("</span>");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderCodeSpanCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderCodeSpanCloseMarker=function(a,b){return this.$val.renderCodeSpanCloseMarker(a,b);};BC.ptr.prototype.renderEmphasis=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderEmphasis,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderEmphasis=function(a,b){return this.$val.renderEmphasis(a,b);};BC.ptr.prototype.renderEmAsteriskOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","em"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderEmAsteriskOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderEmAsteriskOpenMarker=function(a,b){return this.$val.renderEmAsteriskOpenMarker(a,b);};BC.ptr.prototype.renderEmAsteriskCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderEmAsteriskCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderEmAsteriskCloseMarker=function(a,b){return this.$val.renderEmAsteriskCloseMarker(a,b);};BC.ptr.prototype.renderEmUnderscoreOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","em"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderEmUnderscoreOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderEmUnderscoreOpenMarker=function(a,b){return this.$val.renderEmUnderscoreOpenMarker(a,b);};BC.ptr.prototype.renderEmUnderscoreCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderEmUnderscoreCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderEmUnderscoreCloseMarker=function(a,b){return this.$val.renderEmUnderscoreCloseMarker(a,b);};BC.ptr.prototype.renderStrong=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderStrong,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderStrong=function(a,b){return this.$val.renderStrong(a,b);};BC.ptr.prototype.renderStrongA6kOpenMarker=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;if(b){$s=1;continue;}$s=2;continue;case 1:c[0]=new CL([new CJ(["data-type","strong"])]);d.spanNodeAttrs(a.Parent,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))));$r=d.BaseRenderer.Tag("span",c[0],false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderStrongA6kOpenMarker,$c:true,$r,a,b,c,d,$s};return $f;};BC.prototype.renderStrongA6kOpenMarker=function(a,b){return this.$val.renderStrongA6kOpenMarker(a,b);};BC.ptr.prototype.renderStrongA6kCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderStrongA6kCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderStrongA6kCloseMarker=function(a,b){return this.$val.renderStrongA6kCloseMarker(a,b);};BC.ptr.prototype.renderStrongU8eOpenMarker=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;if(b){$s=1;continue;}$s=2;continue;case 1:c[0]=new CL([new CJ(["data-type","strong"])]);d.spanNodeAttrs(a.Parent,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))));$r=d.BaseRenderer.Tag("span",c[0],false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderStrongU8eOpenMarker,$c:true,$r,a,b,c,d,$s};return $f;};BC.prototype.renderStrongU8eOpenMarker=function(a,b){return this.$val.renderStrongU8eOpenMarker(a,b);};BC.ptr.prototype.renderStrongU8eCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderStrongU8eCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderStrongU8eCloseMarker=function(a,b){return this.$val.renderStrongU8eCloseMarker(a,b);};BC.ptr.prototype.renderBlockquote=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;if(b){$s=1;continue;}$s=2;continue;case 1:c[0]=CL.nil;$r=d.blockNodeAttrs(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))),"bq");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("div",c[0],false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=d.renderIAL(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderBlockquote,$c:true,$r,a,b,c,d,$s};return $f;};BC.prototype.renderBlockquote=function(a,b){return this.$val.renderBlockquote(a,b);};BC.ptr.prototype.renderBlockquoteMarker=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderBlockquoteMarker=function(a,b){return this.$val.renderBlockquoteMarker(a,b);};BC.ptr.prototype.renderHeading=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;if(b){$s=1;continue;}$s=2;continue;case 1:c[0]=CL.nil;if(6<a.HeadingLevel){a.HeadingLevel=6;}e=$substring(" 123456",a.HeadingLevel,(a.HeadingLevel+1>>0));c[0]=$append(c[0],new CJ(["data-subtype","h"+e]));$r=d.blockNodeAttrs(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))),"h"+e);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("div",c[0],false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c[0]=new CL([]);d.contenteditable(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))));d.spellcheck((c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))));$r=d.BaseRenderer.Tag("div",c[0],false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.renderIAL(a);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderHeading,$c:true,$r,a,b,c,d,e,$s};return $f;};BC.prototype.renderHeading=function(a,b){return this.$val.renderHeading(a,b);};BC.ptr.prototype.renderHeadingC8hMarker=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderHeadingC8hMarker=function(a,b){return this.$val.renderHeadingC8hMarker(a,b);};BC.ptr.prototype.renderHeadingID=function(a,b){var a,b,c;c=this;return 2;};BC.prototype.renderHeadingID=function(a,b){return this.$val.renderHeadingID(a,b);};BC.ptr.prototype.renderList=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;if(b){$s=1;continue;}$s=2;continue;case 1:c[0]=CL.nil;e=a.ListData.Typ;if(e===(0)){c[0]=$append(c[0],new CJ(["data-subtype","u"]));}else if(e===(1)){c[0]=$append(c[0],new CJ(["data-subtype","o"]));}else if(e===(3)){c[0]=$append(c[0],new CJ(["data-subtype","t"]));}$r=d.blockNodeAttrs(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))),"list");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("div",c[0],false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=d.renderIAL(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderList,$c:true,$r,a,b,c,d,e,$s};return $f;};BC.prototype.renderList=function(a,b){return this.$val.renderList(a,b);};BC.ptr.prototype.renderListItem=function(a,b){var{a,b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;if(b){$s=1;continue;}$s=2;continue;case 1:e="li";c[0]=CL.nil;f=a.ListData.Typ;if(f===(0)){c[0]=$append(c[0],new CJ(["data-marker","*"]));c[0]=$append(c[0],new CJ(["data-subtype","u"]));}else if(f===(1)){c[0]=$append(c[0],new CJ(["data-marker",B.Itoa(a.ListData.Num)+"."]));c[0]=$append(c[0],new CJ(["data-subtype","o"]));}else if(f===(3)){c[0]=$append(c[0],new CJ(["data-marker","*"]));c[0]=$append(c[0],new CJ(["data-subtype","t"]));if(!(a.FirstChild===CM.nil)&&a.FirstChild.TaskListItemChecked){e=e+(" protyle-task--done");}}$r=d.blockNodeAttrs(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))),e);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("div",c[0],false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(0===a.ListData.Typ){$s=6;continue;}if(1===a.ListData.Typ){$s=7;continue;}$s=8;continue;case 6:g=new CL([new CJ(["class","protyle-action"]),new CJ(["draggable","true"])]);$r=d.BaseRenderer.Tag("div",g,false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.WriteString("<svg><use xlink:href=\"#iconDot\"></use></svg>");$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=8;continue;case 7:h=new CL([new CJ(["class","protyle-action protyle-action--order"]),new CJ(["contenteditable","false"]),new CJ(["draggable","true"])]);$r=d.BaseRenderer.Tag("div",h,false);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.WriteString(B.Itoa(a.ListData.Num)+".");$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 8:$s=3;continue;case 2:$r=d.renderIAL(a);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderListItem,$c:true,$r,a,b,c,d,e,f,g,h,$s};return $f;};BC.prototype.renderListItem=function(a,b){return this.$val.renderListItem(a,b);};BC.ptr.prototype.renderTaskListItemMarker=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(a.TaskListItemChecked){$s=3;continue;}$s=4;continue;case 3:$r=c.BaseRenderer.WriteString("<div class=\"protyle-action protyle-action--task\" draggable=\"true\"><svg><use xlink:href=\"#iconCheck\"></use></svg></div>");$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=5;continue;case 4:$r=c.BaseRenderer.WriteString("<div class=\"protyle-action protyle-action--task\" draggable=\"true\"><svg><use xlink:href=\"#iconUncheck\"></use></svg></div>");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:if(CM.nil===a.Next){$s=8;continue;}$s=9;continue;case 8:d=H.NewNodeID();$s=10;case 10:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}$r=a.InsertAfter(new H.Node.ptr(d,"","","",1,CM.nil,CM.nil,CM.nil,CM.nil,CM.nil,CO.nil,CI.nil,"","",false,false,false,0,false,0,0,0,CI.nil,CI.nil,CI.nil,0,CP.nil,false,CQ.nil,0,0,0,0,CI.nil,0,false,"",0,CI.nil,"",CO.nil,CI.nil,CL.nil,false,"","","","","","","","","","","",0,""));$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 9:case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderTaskListItemMarker,$c:true,$r,a,b,c,d,$s};return $f;};BC.prototype.renderTaskListItemMarker=function(a,b){return this.$val.renderTaskListItemMarker(a,b);};BC.ptr.prototype.renderThematicBreak=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;if(b){$s=1;continue;}$s=2;continue;case 1:c[0]=CL.nil;$r=d.blockNodeAttrs(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))),"hr");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("div",c[0],false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("div",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/div",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderThematicBreak,$c:true,$r,a,b,c,d,$s};return $f;};BC.prototype.renderThematicBreak=function(a,b){return this.$val.renderThematicBreak(a,b);};BC.ptr.prototype.renderHardBreak=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=c.renderBr(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$s=2;case 2:return e;}return;}var $f={$blk:BC.ptr.prototype.renderHardBreak,$c:true,$r,a,b,c,d,e,$s};return $f;};BC.prototype.renderHardBreak=function(a,b){return this.$val.renderHardBreak(a,b);};BC.ptr.prototype.renderSoftBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(10);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!(CM.nil===a.Previous)&&((22===a.Previous.Type)||(17===a.Previous.Type)||(460===a.Previous.Type)||(101===a.Previous.Type)||(520===a.Previous.Type)||(456===a.Previous.Type))&&!(CM.nil===a.Next)&&A.Equal(F.CaretTokens,a.Next.Tokens)){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.WriteByte(10);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:case 2:$s=-1;return 2;}return;}var $f={$blk:BC.ptr.prototype.renderSoftBreak,$c:true,$r,a,b,c,$s};return $f;};BC.prototype.renderSoftBreak=function(a,b){return this.$val.renderSoftBreak(a,b);};BC.ptr.prototype.spanNodeAttrs=function(a,b){var a,b,c;c=this;b.$set($appendSlice(b.$get(),a.KramdownIAL));};BC.prototype.spanNodeAttrs=function(a,b){return this.$val.spanNodeAttrs(a,b);};BC.ptr.prototype.blockNodeAttrs=function(a,b,c){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b,c});$s=$s||0;s:while(true){switch($s){case 0:d=this;$r=d.nodeID(a,b);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.nodeIndex(a,b);d.nodeDataType(a,b);d.nodeClass(a,b,c);e=a.KramdownIAL;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);if("id"===(0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0])){f++;continue;}b.$set($append(b.$get(),new CJ([(0>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+0]),C.ReplaceAll((1>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+1]),"_esc_newline_","\n")])));f++;}$s=-1;return;}return;}var $f={$blk:BC.ptr.prototype.blockNodeAttrs,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};BC.prototype.blockNodeAttrs=function(a,b,c){return this.$val.blockNodeAttrs(a,b,c);};BC.ptr.prototype.nodeClass=function(a,b,c){var a,b,c,d;d=this;b.$set($append(b.$get(),new CJ(["class",c])));};BC.prototype.nodeClass=function(a,b,c){return this.$val.nodeClass(a,b,c);};BC.ptr.prototype.nodeDataType=function(a,b){var a,b,c;c=this;b.$set($append(b.$get(),new CJ(["data-type",new H.NodeType(a.Type).String()])));};BC.prototype.nodeDataType=function(a,b){return this.$val.nodeDataType(a,b);};BC.ptr.prototype.nodeID=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=c.BaseRenderer.NodeID(a);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}b.$set($append(b.$get(),new CJ(["data-node-id",d])));$s=-1;return;}return;}var $f={$blk:BC.ptr.prototype.nodeID,$c:true,$r,a,b,c,d,$s};return $f;};BC.prototype.nodeID=function(a,b){return this.$val.nodeID(a,b);};BC.ptr.prototype.nodeIndex=function(a,b){var a,b,c;c=this;if(CM.nil===a.Parent||!((0===a.Parent.Type))){return;}b.$set($append(b.$get(),new CJ(["data-node-index",B.Itoa(c.NodeIndex)])));c.NodeIndex=c.NodeIndex+(1)>>0;return;};BC.prototype.nodeIndex=function(a,b){return this.$val.nodeIndex(a,b);};BC.ptr.prototype.spellcheck=function(a){var a,b;b=this;a.$set($append(a.$get(),new CJ(["spellcheck",B.FormatBool(b.BaseRenderer.Options.Spellcheck)])));return;};BC.prototype.spellcheck=function(a){return this.$val.spellcheck(a);};BC.ptr.prototype.contenteditable=function(a,b){var a,b,c,d;c=this;d=a.IALAttr("contenteditable");if(!(""===d)){b.$set($append(b.$get(),new CJ(["contenteditable",d])));}else{b.$set($append(b.$get(),new CJ(["contenteditable",B.FormatBool(c.BaseRenderer.Options.ProtyleContenteditable)])));}return;};BC.prototype.contenteditable=function(a,b){return this.$val.contenteditable(a,b);};BC.ptr.prototype.renderIAL=function(a){var{a,b,c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;c=new CL([new CJ(["class","protyle-attr"]),new CJ(["contenteditable","false"])]);$r=b.BaseRenderer.Tag("div",c,false);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.IALAttr("bookmark");if(!(""===d)){$s=2;continue;}$s=3;continue;case 2:d=C.ReplaceAll(d,"_esc_newline_","\n");d=G.EscapeHTMLStr(d);$r=b.BaseRenderer.Tag("div",new CL([new CJ(["class","protyle-attr--bookmark"])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.BaseRenderer.WriteString(d);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.BaseRenderer.Tag("/div",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:e=a.IALAttr("name");if(!(""===e)){$s=7;continue;}$s=8;continue;case 7:e=C.ReplaceAll(e,"_esc_newline_","\n");e=G.EscapeHTMLStr(e);$r=b.BaseRenderer.Tag("div",new CL([new CJ(["class","protyle-attr--name"])]),false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.BaseRenderer.WriteString("<svg><use xlink:href=\"#iconN\"></use></svg>");$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.BaseRenderer.WriteString(e);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.BaseRenderer.Tag("/div",CL.nil,false);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 8:f=a.IALAttr("alias");if(!(""===f)){$s=13;continue;}$s=14;continue;case 13:f=C.ReplaceAll(f,"_esc_newline_","\n");f=G.EscapeHTMLStr(f);$r=b.BaseRenderer.Tag("div",new CL([new CJ(["class","protyle-attr--alias"])]),false);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.BaseRenderer.WriteString("<svg><use xlink:href=\"#iconA\"></use></svg>");$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.BaseRenderer.WriteString(f);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.BaseRenderer.Tag("/div",CL.nil,false);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 14:g=a.IALAttr("memo");if(!(""===g)){$s=19;continue;}$s=20;continue;case 19:g=C.ReplaceAll(g,"_esc_newline_","\n");g=G.EscapeHTMLStr(g);$r=b.BaseRenderer.Tag("div",new CL([new CJ(["class","protyle-attr--memo b3-tooltips b3-tooltips__nw"]),new CJ(["aria-label",g])]),false);$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.BaseRenderer.WriteString("<svg><use xlink:href=\"#iconM\"></use></svg>");$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.BaseRenderer.Tag("/div",CL.nil,false);$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 20:h=a.IALAttr("custom-avs");if(!(""===h)){$s=24;continue;}$s=25;continue;case 24:h=C.ReplaceAll(h,"_esc_newline_","\n");h=G.EscapeHTMLStr(h);$r=b.BaseRenderer.Tag("div",new CL([new CJ(["class","protyle-attr--av"])]),false);$s=26;case 26:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.BaseRenderer.WriteString("<svg><use xlink:href=\"#iconDatabase\"></use></svg>");$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.BaseRenderer.Tag("/div",CL.nil,false);$s=28;case 28:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 25:i=a.IALAttr("refcount");if(!(""===i)){$s=29;continue;}$s=30;continue;case 29:i=C.ReplaceAll(i,"_esc_newline_","\n");i=G.EscapeHTMLStr(i);$r=b.BaseRenderer.Tag("div",new CL([new CJ(["class","protyle-attr--refcount popover__block"])]),false);$s=31;case 31:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.BaseRenderer.WriteString(i);$s=32;case 32:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.BaseRenderer.Tag("/div",CL.nil,false);$s=33;case 33:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 30:$r=b.BaseRenderer.WriteString("\xE2\x80\x8B");$s=34;case 34:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=b.BaseRenderer.Tag("/div",CL.nil,false);$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:BC.ptr.prototype.renderIAL,$c:true,$r,a,b,c,d,e,f,g,h,i,$s};return $f;};BC.prototype.renderIAL=function(a){return this.$val.renderIAL(a);};BC.ptr.prototype.renderTextMarkAttrs=function(a){var a,b,c,d,e,f,g,h,i,j,k;b=CL.nil;c=this;b=new CL([new CJ(["data-type",a.TextMarkType])]);d=C.Split(a.TextMarkType," ");e=d;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);if("block-ref"===g){b=$append(b,new CJ(["data-subtype",a.TextMarkBlockRefSubtype]));b=$append(b,new CJ(["data-id",a.TextMarkBlockRefID]));}else if("a"===g){h=a.TextMarkAHref;h=($bytesToString(c.BaseRenderer.LinkPath((new CI($stringToBytes(h))))));if(a.ParentIs(109,CN.nil)){h=C.ReplaceAll(h,"\\|","|");}b=$append(b,new CJ(["data-href",h]));if(!(""===a.TextMarkATitle)){i=C.ReplaceAll(a.TextMarkATitle,"\"","&quot;");if(a.ParentIs(109,CN.nil)){i=C.ReplaceAll(i,"\\|","|");}b=$append(b,new CJ(["data-title",i]));}}else if("inline-math"===g){b=$append(b,new CJ(["data-subtype","math"]));j=a.TextMarkInlineMathContent;if(a.ParentIs(109,CN.nil)){j=C.ReplaceAll(j,"|","|");j=C.ReplaceAll(j,"\n","<br/>");}j=C.ReplaceAll(j,"_esc_newline_","\n");j=C.ReplaceAll(j,"\"","&quot;");b=$append(b,new CJ(["data-content",j]));b=$append(b,new CJ(["contenteditable","false"]));b=$append(b,new CJ(["class","render-node"]));}else if("file-annotation-ref"===g){b=$append(b,new CJ(["data-id",a.TextMarkFileAnnotationRefID]));}else if("inline-memo"===g){k=a.TextMarkInlineMemoContent;k=C.ReplaceAll(k,"_esc_newline_","\n");b=$append(b,new CJ(["data-inline-memo-content",k]));}f++;}return b;};BC.prototype.renderTextMarkAttrs=function(a){return this.$val.renderTextMarkAttrs(a);};BF=function(a,b){var{a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,d,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,e,ea,eb,ec,ed,ee,ef,eg,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=AR(a,b);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=new BE.ptr(c);e=0;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(e),{k:e,v:$methodVal(d,"renderDocument")});f=1;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(f),{k:f,v:$methodVal(d,"renderParagraph")});g=16;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(g),{k:g,v:$methodVal(d,"renderText")});h=27;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(h),{k:h,v:$methodVal(d,"renderCodeSpan")});i=28;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(i),{k:i,v:$methodVal(d,"renderCodeSpanOpenMarker")});j=29;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(j),{k:j,v:$methodVal(d,"renderCodeSpanContent")});k=30;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(k),{k:k,v:$methodVal(d,"renderCodeSpanCloseMarker")});l=11;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(l),{k:l,v:$methodVal(d,"renderCodeBlock")});m=12;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(m),{k:m,v:$methodVal(d,"renderCodeBlockOpenMarker")});n=14;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(n),{k:n,v:$methodVal(d,"renderCodeBlockInfoMarker")});o=15;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(o),{k:o,v:$methodVal(d,"renderCodeBlockCode")});p=13;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(p),{k:p,v:$methodVal(d,"renderCodeBlockCloseMarker")});q=300;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(q),{k:q,v:$methodVal(d,"renderMathBlock")});r=301;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(r),{k:r,v:$methodVal(d,"renderMathBlockOpenMarker")});s=302;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(s),{k:s,v:$methodVal(d,"renderMathBlockContent")});t=303;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(t),{k:t,v:$methodVal(d,"renderMathBlockCloseMarker")});u=304;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(u),{k:u,v:$methodVal(d,"renderInlineMath")});v=305;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(v),{k:v,v:$methodVal(d,"renderInlineMathOpenMarker")});w=306;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(w),{k:w,v:$methodVal(d,"renderInlineMathContent")});x=307;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(x),{k:x,v:$methodVal(d,"renderInlineMathCloseMarker")});y=17;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(y),{k:y,v:$methodVal(d,"renderEmphasis")});z=18;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(z),{k:z,v:$methodVal(d,"renderEmAsteriskOpenMarker")});aa=19;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aa),{k:aa,v:$methodVal(d,"renderEmAsteriskCloseMarker")});ab=20;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ab),{k:ab,v:$methodVal(d,"renderEmUnderscoreOpenMarker")});ac=21;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ac),{k:ac,v:$methodVal(d,"renderEmUnderscoreCloseMarker")});ad=22;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ad),{k:ad,v:$methodVal(d,"renderStrong")});ae=23;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ae),{k:ae,v:$methodVal(d,"renderStrongA6kOpenMarker")});af=24;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(af),{k:af,v:$methodVal(d,"renderStrongA6kCloseMarker")});ag=25;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ag),{k:ag,v:$methodVal(d,"renderStrongU8eOpenMarker")});ah=26;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ah),{k:ah,v:$methodVal(d,"renderStrongU8eCloseMarker")});ai=5;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ai),{k:ai,v:$methodVal(d,"renderBlockquote")});aj=6;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aj),{k:aj,v:$methodVal(d,"renderBlockquoteMarker")});ak=2;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ak),{k:ak,v:$methodVal(d,"renderHeading")});al=3;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(al),{k:al,v:$methodVal(d,"renderHeadingC8hMarker")});am=420;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(am),{k:am,v:$methodVal(d,"renderHeadingID")});an=7;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(an),{k:an,v:$methodVal(d,"renderList")});ao=8;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ao),{k:ao,v:$methodVal(d,"renderListItem")});ap=4;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ap),{k:ap,v:$methodVal(d,"renderThematicBreak")});aq=31;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aq),{k:aq,v:$methodVal(d,"renderHardBreak")});ar=32;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ar),{k:ar,v:$methodVal(d,"renderSoftBreak")});as=9;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(as),{k:as,v:$methodVal(d,"renderHTML")});at=10;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(at),{k:at,v:$methodVal(d,"renderInlineHTML")});au=33;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(au),{k:au,v:$methodVal(d,"renderLink")});av=34;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(av),{k:av,v:$methodVal(d,"renderImage")});aw=35;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aw),{k:aw,v:$methodVal(d,"renderBang")});ax=36;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ax),{k:ax,v:$methodVal(d,"renderOpenBracket")});ay=37;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ay),{k:ay,v:$methodVal(d,"renderCloseBracket")});az=38;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(az),{k:az,v:$methodVal(d,"renderOpenParen")});ba=39;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ba),{k:ba,v:$methodVal(d,"renderCloseParen")});bb=47;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bb),{k:bb,v:$methodVal(d,"renderLess")});bc=48;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bc),{k:bc,v:$methodVal(d,"renderGreater")});bd=466;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bd),{k:bd,v:$methodVal(d,"renderOpenBrace")});be=467;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(be),{k:be,v:$methodVal(d,"renderCloseBrace")});bf=40;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bf),{k:bf,v:$methodVal(d,"renderLinkText")});bg=43;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bg),{k:bg,v:$methodVal(d,"renderLinkSpace")});bh=41;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bh),{k:bh,v:$methodVal(d,"renderLinkDest")});bi=42;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bi),{k:bi,v:$methodVal(d,"renderLinkTitle")});bj=101;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bj),{k:bj,v:$methodVal(d,"renderStrikethrough")});bk=102;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bk),{k:bk,v:$methodVal(d,"renderStrikethrough1OpenMarker")});bl=103;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bl),{k:bl,v:$methodVal(d,"renderStrikethrough1CloseMarker")});bm=104;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bm),{k:bm,v:$methodVal(d,"renderStrikethrough2OpenMarker")});bn=105;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bn),{k:bn,v:$methodVal(d,"renderStrikethrough2CloseMarker")});bo=100;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bo),{k:bo,v:$methodVal(d,"renderTaskListItemMarker")});bp=106;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bp),{k:bp,v:$methodVal(d,"renderTable")});bq=107;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bq),{k:bq,v:$methodVal(d,"renderTableHead")});br=108;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(br),{k:br,v:$methodVal(d,"renderTableRow")});bs=109;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bs),{k:bs,v:$methodVal(d,"renderTableCell")});bt=200;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bt),{k:bt,v:$methodVal(d,"renderEmoji")});bu=201;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bu),{k:bu,v:$methodVal(d,"renderEmojiUnicode")});bv=202;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bv),{k:bv,v:$methodVal(d,"renderEmojiImg")});bw=203;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bw),{k:bw,v:$methodVal(d,"renderEmojiAlias")});bx=410;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bx),{k:bx,v:$methodVal(d,"renderFootnotesDefBlock")});by=411;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(by),{k:by,v:$methodVal(d,"renderFootnotesDef")});bz=412;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bz),{k:bz,v:$methodVal(d,"renderFootnotesRef")});ca=415;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ca),{k:ca,v:$methodVal(d,"renderToC")});cb=400;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cb),{k:cb,v:$methodVal(d,"renderBackslash")});cc=401;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cc),{k:cc,v:$methodVal(d,"renderBackslashContent")});cd=44;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cd),{k:cd,v:$methodVal(d,"renderHtmlEntity")});ce=425;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ce),{k:ce,v:$methodVal(d,"renderYamlFrontMatter")});cf=426;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cf),{k:cf,v:$methodVal(d,"renderYamlFrontMatterOpenMarker")});cg=427;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cg),{k:cg,v:$methodVal(d,"renderYamlFrontMatterContent")});ch=428;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ch),{k:ch,v:$methodVal(d,"renderYamlFrontMatterCloseMarker")});ci=430;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ci),{k:ci,v:$methodVal(d,"renderBlockRef")});cj=431;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cj),{k:cj,v:$methodVal(d,"renderBlockRefID")});ck=432;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ck),{k:ck,v:$methodVal(d,"renderBlockRefSpace")});cl=433;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cl),{k:cl,v:$methodVal(d,"renderBlockRefText")});cm=434;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cm),{k:cm,v:$methodVal(d,"renderBlockRefDynamicText")});cn=540;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cn),{k:cn,v:$methodVal(d,"renderFileAnnotationRef")});co=541;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(co),{k:co,v:$methodVal(d,"renderFileAnnotationRefID")});cp=542;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cp),{k:cp,v:$methodVal(d,"renderFileAnnotationRefSpace")});cq=543;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cq),{k:cq,v:$methodVal(d,"renderFileAnnotationRefText")});cr=450;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cr),{k:cr,v:$methodVal(d,"renderMark")});cs=451;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cs),{k:cs,v:$methodVal(d,"renderMark1OpenMarker")});ct=452;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ct),{k:ct,v:$methodVal(d,"renderMark1CloseMarker")});cu=453;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cu),{k:cu,v:$methodVal(d,"renderMark2OpenMarker")});cv=454;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cv),{k:cv,v:$methodVal(d,"renderMark2CloseMarker")});cw=485;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cw),{k:cw,v:$methodVal(d,"renderSup")});cx=486;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cx),{k:cx,v:$methodVal(d,"renderSupOpenMarker")});cy=487;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cy),{k:cy,v:$methodVal(d,"renderSupCloseMarker")});cz=490;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cz),{k:cz,v:$methodVal(d,"renderSub")});da=491;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(da),{k:da,v:$methodVal(d,"renderSubOpenMarker")});db=492;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(db),{k:db,v:$methodVal(d,"renderSubCloseMarker")});dc=455;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dc),{k:dc,v:$methodVal(d,"renderKramdownBlockIAL")});dd=456;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dd),{k:dd,v:$methodVal(d,"renderKramdownSpanIAL")});de=465;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(de),{k:de,v:$methodVal(d,"renderBlockQueryEmbed")});df=468;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(df),{k:df,v:$methodVal(d,"renderBlockQueryEmbedScript")});dg=460;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dg),{k:dg,v:$methodVal(d,"renderTag")});dh=461;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dh),{k:dh,v:$methodVal(d,"renderTagOpenMarker")});di=462;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(di),{k:di,v:$methodVal(d,"renderTagCloseMarker")});dj=45;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dj),{k:dj,v:$methodVal(d,"renderLinkRefDefBlock")});dk=46;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dk),{k:dk,v:$methodVal(d,"renderLinkRefDef")});dl=475;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dl),{k:dl,v:$methodVal(d,"renderSuperBlock")});dm=476;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dm),{k:dm,v:$methodVal(d,"renderSuperBlockOpenMarker")});dn=477;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dn),{k:dn,v:$methodVal(d,"renderSuperBlockLayoutMarker")});dp=478;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dp),{k:dp,v:$methodVal(d,"renderSuperBlockCloseMarker")});dq=495;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dq),{k:dq,v:$methodVal(d,"renderGitConflict")});dr=496;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dr),{k:dr,v:$methodVal(d,"renderGitConflictOpenMarker")});ds=497;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ds),{k:ds,v:$methodVal(d,"renderGitConflictContent")});dt=498;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dt),{k:dt,v:$methodVal(d,"renderGitConflictCloseMarker")});du=500;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(du),{k:du,v:$methodVal(d,"renderIFrame")});dv=535;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dv),{k:dv,v:$methodVal(d,"renderWidget")});dw=510;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dw),{k:dw,v:$methodVal(d,"renderVideo")});dx=505;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dx),{k:dx,v:$methodVal(d,"renderAudio")});dy=515;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dy),{k:dy,v:$methodVal(d,"renderKbd")});dz=516;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dz),{k:dz,v:$methodVal(d,"renderKbdOpenMarker")});ea=517;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ea),{k:ea,v:$methodVal(d,"renderKbdCloseMarker")});eb=520;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(eb),{k:eb,v:$methodVal(d,"renderUnderline")});ec=521;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ec),{k:ec,v:$methodVal(d,"renderUnderlineOpenMarker")});ed=522;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ed),{k:ed,v:$methodVal(d,"renderUnderlineCloseMarker")});ee=525;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ee),{k:ee,v:$methodVal(d,"renderBr")});ef=530;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ef),{k:ef,v:$methodVal(d,"renderTextMark")});eg=550;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(eg),{k:eg,v:$methodVal(d,"renderCustomBlock")});$s=-1;return d;}return;}var $f={$blk:BF,$c:true,$r,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,d,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,e,ea,eb,ec,ed,ee,ef,eg,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};$pkg.NewProtylePreviewRenderer=BF;BE.ptr.prototype.renderCustomBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("div",new CL([new CJ(["data-type","NodeCustomBlock"]),new CJ(["data-info",a.CustomBlockInfo]),new CJ(["data-content",($bytesToString(G.EscapeHTML(a.Tokens)))])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</div>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderCustomBlock,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderCustomBlock=function(a,b){return this.$val.renderCustomBlock(a,b);};BE.ptr.prototype.renderAttributeView=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("div",new CL([new CJ(["data-type","NodeAttributeView"]),new CJ(["data-av-id",a.AttributeViewID]),new CJ(["data-av-type",a.AttributeViewType])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</div>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderAttributeView,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderAttributeView=function(a,b){return this.$val.renderAttributeView(a,b);};BE.ptr.prototype.renderTextMark=function(a,b){var{a,b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=[d];e=this;if(b){$s=1;continue;}$s=2;continue;case 1:f=a.TextMarkTextContent;if(a.ParentIs(109,CN.nil)){if(a.IsTextMarkType("code")){f=C.ReplaceAll(f,"|","|");}else{f=C.ReplaceAll(f,"\\|","|");}f=C.ReplaceAll(f,"\n","<br />");}if(a.IsTextMarkType("a")){$s=3;continue;}if(a.IsTextMarkType("inline-memo")){$s=4;continue;}$s=5;continue;case 3:c[0]=new CL([new CJ(["href",a.TextMarkAHref])]);if(!(""===a.TextMarkATitle)){c[0]=$append(c[0],new CJ(["title",a.TextMarkATitle]));}e.spanNodeAttrs(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))));$r=e.BaseRenderer.Tag("a",c[0],false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=e.BaseRenderer.WriteString(f);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=e.BaseRenderer.WriteString("</a>");$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=6;continue;case 4:$r=e.BaseRenderer.WriteString(f);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=E.DecodeLastRuneInString(a.TextMarkTextContent);h=g[0];if(AB(h)){$s=11;continue;}$s=12;continue;case 11:$r=e.BaseRenderer.WriteString("<sup>\xEF\xBC\x88");$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=a.TextMarkInlineMemoContent;i=C.ReplaceAll(i,"_esc_newline_"," ");$r=e.BaseRenderer.WriteString(i);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=e.BaseRenderer.WriteString("\xEF\xBC\x89</sup>");$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=13;continue;case 12:$r=e.BaseRenderer.WriteString("<sup>(");$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=a.TextMarkInlineMemoContent;j=C.ReplaceAll(j,"_esc_newline_"," ");$r=e.BaseRenderer.WriteString(j);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=e.BaseRenderer.WriteString(")</sup>");$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 13:$s=6;continue;case 5:d[0]=e.renderTextMarkAttrs(a);e.spanNodeAttrs(a,(d.$ptr||(d.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},d))));$r=e.BaseRenderer.Tag("span",d[0],false);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=e.BaseRenderer.WriteString(f);$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=e.BaseRenderer.WriteString("</span>");$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderTextMark,$c:true,$r,a,b,c,d,e,f,g,h,i,j,$s};return $f;};BE.prototype.renderTextMark=function(a,b){return this.$val.renderTextMark(a,b);};BE.ptr.prototype.renderBr=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<br />");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderBr,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderBr=function(a,b){return this.$val.renderBr(a,b);};BE.ptr.prototype.renderUnderline=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderUnderline=function(a,b){return this.$val.renderUnderline(a,b);};BE.ptr.prototype.renderUnderlineOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<u>");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderUnderlineOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderUnderlineOpenMarker=function(a,b){return this.$val.renderUnderlineOpenMarker(a,b);};BE.ptr.prototype.renderUnderlineCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("</u>");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderUnderlineCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderUnderlineCloseMarker=function(a,b){return this.$val.renderUnderlineCloseMarker(a,b);};BE.ptr.prototype.renderKbd=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderKbd=function(a,b){return this.$val.renderKbd(a,b);};BE.ptr.prototype.renderKbdOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<kbd>");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderKbdOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderKbdOpenMarker=function(a,b){return this.$val.renderKbdOpenMarker(a,b);};BE.ptr.prototype.renderKbdCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("</kbd>");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderKbdCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderKbdCloseMarker=function(a,b){return this.$val.renderKbdCloseMarker(a,b);};BE.ptr.prototype.renderVideo=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("div",new CL([new CJ(["class","iframe"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.Tokens;if(c.BaseRenderer.Options.Sanitize){$s=4;continue;}$s=5;continue;case 4:e=AE(d);$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;case 5:d=c.BaseRenderer.tagSrcPath(d);$r=c.BaseRenderer.Write(d);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/div",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderVideo,$c:true,$r,a,b,c,d,e,$s};return $f;};BE.prototype.renderVideo=function(a,b){return this.$val.renderVideo(a,b);};BE.ptr.prototype.renderAudio=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("div",new CL([new CJ(["class","iframe"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.Tokens;if(c.BaseRenderer.Options.Sanitize){$s=4;continue;}$s=5;continue;case 4:e=AE(d);$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;case 5:d=c.BaseRenderer.tagSrcPath(d);$r=c.BaseRenderer.Write(d);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/div",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderAudio,$c:true,$r,a,b,c,d,e,$s};return $f;};BE.prototype.renderAudio=function(a,b){return this.$val.renderAudio(a,b);};BE.ptr.prototype.renderIFrame=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("div",new CL([new CJ(["class","iframe"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.Tokens;if(c.BaseRenderer.Options.Sanitize){$s=4;continue;}$s=5;continue;case 4:e=AE(d);$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;case 5:d=c.BaseRenderer.tagSrcPath(d);$r=c.BaseRenderer.Write(d);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/div",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderIFrame,$c:true,$r,a,b,c,d,e,$s};return $f;};BE.prototype.renderIFrame=function(a,b){return this.$val.renderIFrame(a,b);};BE.ptr.prototype.renderWidget=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("div",new CL([new CJ(["class","iframe"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.Tokens;if(c.BaseRenderer.Options.Sanitize){$s=4;continue;}$s=5;continue;case 4:e=AE(d);$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;case 5:d=c.BaseRenderer.tagSrcPath(d);$r=c.BaseRenderer.Write(d);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/div",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderWidget,$c:true,$r,a,b,c,d,e,$s};return $f;};BE.prototype.renderWidget=function(a,b){return this.$val.renderWidget(a,b);};BE.ptr.prototype.renderGitConflictCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderGitConflictCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderGitConflictCloseMarker=function(a,b){return this.$val.renderGitConflictCloseMarker(a,b);};BE.ptr.prototype.renderGitConflictContent=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderGitConflictContent,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderGitConflictContent=function(a,b){return this.$val.renderGitConflictContent(a,b);};BE.ptr.prototype.renderGitConflictOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderGitConflictOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderGitConflictOpenMarker=function(a,b){return this.$val.renderGitConflictOpenMarker(a,b);};BE.ptr.prototype.renderGitConflict=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;$r=c.BaseRenderer.Newline();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(b){$s=2;continue;}$s=3;continue;case 2:d=new CL([new CJ(["class","language-git-conflict"])]);d=$appendSlice(d,a.KramdownIAL);$r=c.BaseRenderer.Tag("div",d,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=4;continue;case 3:$r=c.BaseRenderer.Tag("/div",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderGitConflict,$c:true,$r,a,b,c,d,$s};return $f;};BE.prototype.renderGitConflict=function(a,b){return this.$val.renderGitConflict(a,b);};BE.ptr.prototype.renderSuperBlock=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderSuperBlock=function(a,b){return this.$val.renderSuperBlock(a,b);};BE.ptr.prototype.renderSuperBlockOpenMarker=function(a,b){var a,b,c;c=this;return 1;};BE.prototype.renderSuperBlockOpenMarker=function(a,b){return this.$val.renderSuperBlockOpenMarker(a,b);};BE.ptr.prototype.renderSuperBlockLayoutMarker=function(a,b){var a,b,c;c=this;return 1;};BE.prototype.renderSuperBlockLayoutMarker=function(a,b){return this.$val.renderSuperBlockLayoutMarker(a,b);};BE.ptr.prototype.renderSuperBlockCloseMarker=function(a,b){var a,b,c;c=this;return 1;};BE.prototype.renderSuperBlockCloseMarker=function(a,b){return this.$val.renderSuperBlockCloseMarker(a,b);};BE.ptr.prototype.renderLinkRefDefBlock=function(a,b){var a,b,c;c=this;return 1;};BE.prototype.renderLinkRefDefBlock=function(a,b){return this.$val.renderLinkRefDefBlock(a,b);};BE.ptr.prototype.renderLinkRefDef=function(a,b){var a,b,c;c=this;return 1;};BE.prototype.renderLinkRefDef=function(a,b){return this.$val.renderLinkRefDef(a,b);};BE.ptr.prototype.renderTag=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderTag,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderTag=function(a,b){return this.$val.renderTag(a,b);};BE.ptr.prototype.renderTagOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("em",a.Parent.KramdownIAL,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(35);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderTagOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderTagOpenMarker=function(a,b){return this.$val.renderTagOpenMarker(a,b);};BE.ptr.prototype.renderTagCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(35);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/em",CL.nil,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderTagCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderTagCloseMarker=function(a,b){return this.$val.renderTagCloseMarker(a,b);};BE.ptr.prototype.renderKramdownBlockIAL=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderKramdownBlockIAL=function(a,b){return this.$val.renderKramdownBlockIAL(a,b);};BE.ptr.prototype.renderKramdownSpanIAL=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderKramdownSpanIAL=function(a,b){return this.$val.renderKramdownSpanIAL(a,b);};BE.ptr.prototype.renderMark=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderMark,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderMark=function(a,b){return this.$val.renderMark(a,b);};BE.ptr.prototype.renderMark1OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("mark",a.Parent.KramdownIAL,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderMark1OpenMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderMark1OpenMarker=function(a,b){return this.$val.renderMark1OpenMarker(a,b);};BE.ptr.prototype.renderMark1CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/mark",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderMark1CloseMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderMark1CloseMarker=function(a,b){return this.$val.renderMark1CloseMarker(a,b);};BE.ptr.prototype.renderMark2OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("mark",a.Parent.KramdownIAL,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderMark2OpenMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderMark2OpenMarker=function(a,b){return this.$val.renderMark2OpenMarker(a,b);};BE.ptr.prototype.renderMark2CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/mark",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderMark2CloseMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderMark2CloseMarker=function(a,b){return this.$val.renderMark2CloseMarker(a,b);};BE.ptr.prototype.renderSup=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderSup=function(a,b){return this.$val.renderSup(a,b);};BE.ptr.prototype.renderSupOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("sup",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderSupOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderSupOpenMarker=function(a,b){return this.$val.renderSupOpenMarker(a,b);};BE.ptr.prototype.renderSupCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/sup",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderSupCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderSupCloseMarker=function(a,b){return this.$val.renderSupCloseMarker(a,b);};BE.ptr.prototype.renderSub=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderSub=function(a,b){return this.$val.renderSub(a,b);};BE.ptr.prototype.renderSubOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("sub",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderSubOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderSubOpenMarker=function(a,b){return this.$val.renderSubOpenMarker(a,b);};BE.ptr.prototype.renderSubCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/sub",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderSubCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderSubCloseMarker=function(a,b){return this.$val.renderSubCloseMarker(a,b);};BE.ptr.prototype.renderBlockQueryEmbed=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("div",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/div",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderBlockQueryEmbed,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderBlockQueryEmbed=function(a,b){return this.$val.renderBlockQueryEmbed(a,b);};BE.ptr.prototype.renderBlockQueryEmbedScript=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(34);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(a.Tokens);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(34);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderBlockQueryEmbedScript,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderBlockQueryEmbedScript=function(a,b){return this.$val.renderBlockQueryEmbedScript(a,b);};BE.ptr.prototype.renderBlockRef=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderBlockRef=function(a,b){return this.$val.renderBlockRef(a,b);};BE.ptr.prototype.renderBlockRefID=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderBlockRefID=function(a,b){return this.$val.renderBlockRefID(a,b);};BE.ptr.prototype.renderBlockRefSpace=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderBlockRefSpace=function(a,b){return this.$val.renderBlockRefSpace(a,b);};BE.ptr.prototype.renderBlockRefText=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(34);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(a.Tokens);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteByte(34);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderBlockRefText,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderBlockRefText=function(a,b){return this.$val.renderBlockRefText(a,b);};BE.ptr.prototype.renderBlockRefDynamicText=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(39);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(a.Tokens);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteByte(39);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderBlockRefDynamicText,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderBlockRefDynamicText=function(a,b){return this.$val.renderBlockRefDynamicText(a,b);};BE.ptr.prototype.renderFileAnnotationRef=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderFileAnnotationRef=function(a,b){return this.$val.renderFileAnnotationRef(a,b);};BE.ptr.prototype.renderFileAnnotationRefID=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderFileAnnotationRefID=function(a,b){return this.$val.renderFileAnnotationRefID(a,b);};BE.ptr.prototype.renderFileAnnotationRefSpace=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderFileAnnotationRefSpace=function(a,b){return this.$val.renderFileAnnotationRefSpace(a,b);};BE.ptr.prototype.renderFileAnnotationRefText=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(34);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(a.Tokens);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteByte(34);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderFileAnnotationRefText,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderFileAnnotationRefText=function(a,b){return this.$val.renderFileAnnotationRefText(a,b);};BE.ptr.prototype.renderYamlFrontMatterCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("</code></pre>");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderYamlFrontMatterCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderYamlFrontMatterCloseMarker=function(a,b){return this.$val.renderYamlFrontMatterCloseMarker(a,b);};BE.ptr.prototype.renderYamlFrontMatterContent=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderYamlFrontMatterContent,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderYamlFrontMatterContent=function(a,b){return this.$val.renderYamlFrontMatterContent(a,b);};BE.ptr.prototype.renderYamlFrontMatterOpenMarker=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=new CL([new CJ(["class","vditor-yml-front-matter"])]);d=$appendSlice(d,a.Parent.KramdownIAL);$r=c.BaseRenderer.Tag("pre",d,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("<code class=\"language-yaml\">");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderYamlFrontMatterOpenMarker,$c:true,$r,a,b,c,d,$s};return $f;};BE.prototype.renderYamlFrontMatterOpenMarker=function(a,b){return this.$val.renderYamlFrontMatterOpenMarker(a,b);};BE.ptr.prototype.renderYamlFrontMatter=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;$r=c.BaseRenderer.Newline();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderYamlFrontMatter,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderYamlFrontMatter=function(a,b){return this.$val.renderYamlFrontMatter(a,b);};BE.ptr.prototype.renderHtmlEntity=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderHtmlEntity,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderHtmlEntity=function(a,b){return this.$val.renderHtmlEntity(a,b);};BE.ptr.prototype.renderBackslashContent=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderBackslashContent,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderBackslashContent=function(a,b){return this.$val.renderBackslashContent(a,b);};BE.ptr.prototype.renderBackslash=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderBackslash=function(a,b){return this.$val.renderBackslash(a,b);};BE.ptr.prototype.renderToC=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=c.BaseRenderer.renderToC(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$s=2;case 2:return e;}return;}var $f={$blk:BE.ptr.prototype.renderToC,$c:true,$r,a,b,c,d,e,$s};return $f;};BE.prototype.renderToC=function(a,b){return this.$val.renderToC(a,b);};BE.ptr.prototype.renderFootnotesRef=function(a,b){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:e=c.BaseRenderer.Tree.FindFootnotesDef(a.Tokens);$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[0];g=B.Itoa(f);$r=c.BaseRenderer.Tag("sup",new CL([new CJ(["class","footnotes-ref"]),new CJ(["id","footnotes-ref-"+a.FootnotesRefId])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("a",new CL([new CJ(["href",c.BaseRenderer.Options.LinkBase+"#footnotes-def-"+g])]),false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString(g);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/a",CL.nil,false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/sup",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderFootnotesRef,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};BE.prototype.renderFootnotesRef=function(a,b){return this.$val.renderFootnotesRef(a,b);};BE.ptr.prototype.renderFootnotesDefBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<div class=\"footnotes-defs-div\">");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("<hr class=\"footnotes-defs-hr\" />\n");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("<ol class=\"footnotes-defs-ol\">");$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("</ol></div>");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderFootnotesDefBlock,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderFootnotesDefBlock=function(a,b){return this.$val.renderFootnotesDefBlock(a,b);};BE.ptr.prototype.renderFootnotesDef=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<li>");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(0<a.FootnotesRefs.$length&&!(CM.nil===a.FirstChild)){e=(d=a.FootnotesRefs,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])).FootnotesRefId;a.FirstChild.PrependChild(new H.Node.ptr("","","","",10,CM.nil,CM.nil,CM.nil,CM.nil,CM.nil,CO.nil,(new CI($stringToBytes("<span id=\"footnotes-def-"+e+"\"></span>"))),"","",false,false,false,0,false,0,0,0,CI.nil,CI.nil,CI.nil,0,CP.nil,false,CQ.nil,0,0,0,0,CI.nil,0,false,"",0,CI.nil,"",CO.nil,CI.nil,CL.nil,false,"","","","","","","","","","","",0,""));}$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("</li>\n");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderFootnotesDef,$c:true,$r,a,b,c,d,e,$s};return $f;};BE.prototype.renderFootnotesDef=function(a,b){return this.$val.renderFootnotesDef(a,b);};BE.ptr.prototype.renderCodeBlock=function(a,b){var{a,b,c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;$r=c.BaseRenderer.Newline();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=false;e="";if(!(CM.nil===a.FirstChild.Next)&&0<a.FirstChild.Next.CodeBlockInfo.$length){e=K.BytesToStr(a.FirstChild.Next.CodeBlockInfo);d=BA(e);}if(b){$s=2;continue;}$s=3;continue;case 2:if(d){$s=5;continue;}$s=6;continue;case 5:f=CL.nil;g=G.EscapeHTML(a.FirstChild.Next.Next.Tokens);g=A.ReplaceAll(g,F.CaretTokens,CI.nil);h=A.TrimSpace(g);$s=7;case 7:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;f=$append(f,new CJ(["data-content",K.BytesToStr(g)]));f=$append(f,new CJ(["data-subtype",e]));$r=c.BaseRenderer.Tag("div",f,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("div",new CL([new CJ(["spin","1"])]),false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/div",CL.nil,false);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/div",CL.nil,false);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 1;case 6:i=new CL([new CJ(["class","code-block"]),new CJ(["data-language",e])]);$r=c.BaseRenderer.Tag("pre",i,false);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("<code class=\"hljs\">");$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=4;continue;case 3:if(d){$s=-1;return 1;}$r=c.BaseRenderer.Tag("/code",CL.nil,false);$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/pre",CL.nil,false);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderCodeBlock,$c:true,$r,a,b,c,d,e,f,g,h,i,$s};return $f;};BE.prototype.renderCodeBlock=function(a,b){return this.$val.renderCodeBlock(a,b);};BE.ptr.prototype.renderCodeBlockCode=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderCodeBlockCode,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderCodeBlockCode=function(a,b){return this.$val.renderCodeBlockCode(a,b);};BE.ptr.prototype.renderCodeBlockCloseMarker=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderCodeBlockCloseMarker=function(a,b){return this.$val.renderCodeBlockCloseMarker(a,b);};BE.ptr.prototype.renderCodeBlockInfoMarker=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderCodeBlockInfoMarker=function(a,b){return this.$val.renderCodeBlockInfoMarker(a,b);};BE.ptr.prototype.renderCodeBlockOpenMarker=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderCodeBlockOpenMarker=function(a,b){return this.$val.renderCodeBlockOpenMarker(a,b);};BE.ptr.prototype.renderEmojiAlias=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderEmojiAlias=function(a,b){return this.$val.renderEmojiAlias(a,b);};BE.ptr.prototype.renderEmojiImg=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderEmojiImg,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderEmojiImg=function(a,b){return this.$val.renderEmojiImg(a,b);};BE.ptr.prototype.renderEmojiUnicode=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderEmojiUnicode,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderEmojiUnicode=function(a,b){return this.$val.renderEmojiUnicode(a,b);};BE.ptr.prototype.renderEmoji=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderEmoji=function(a,b){return this.$val.renderEmoji(a,b);};BE.ptr.prototype.renderInlineMathCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderInlineMathCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderInlineMathCloseMarker=function(a,b){return this.$val.renderInlineMathCloseMarker(a,b);};BE.ptr.prototype.renderInlineMathContent=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderInlineMathContent=function(a,b){return this.$val.renderInlineMathContent(a,b);};BE.ptr.prototype.renderInlineMathOpenMarker=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=G.EscapeHTML(a.Next.Tokens);$r=c.BaseRenderer.Tag("span",new CL([new CJ(["data-type","inline-math"]),new CJ(["data-subtype","math"]),new CJ(["data-content",K.BytesToStr(d)])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderInlineMathOpenMarker,$c:true,$r,a,b,c,d,$s};return $f;};BE.prototype.renderInlineMathOpenMarker=function(a,b){return this.$val.renderInlineMathOpenMarker(a,b);};BE.ptr.prototype.renderInlineMath=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderInlineMath,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderInlineMath=function(a,b){return this.$val.renderInlineMath(a,b);};BE.ptr.prototype.renderMathBlockCloseMarker=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderMathBlockCloseMarker=function(a,b){return this.$val.renderMathBlockCloseMarker(a,b);};BE.ptr.prototype.renderMathBlockContent=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderMathBlockContent=function(a,b){return this.$val.renderMathBlockContent(a,b);};BE.ptr.prototype.renderMathBlockOpenMarker=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderMathBlockOpenMarker=function(a,b){return this.$val.renderMathBlockOpenMarker(a,b);};BE.ptr.prototype.renderMathBlock=function(a,b){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;$r=c.BaseRenderer.Newline();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(b){$s=2;continue;}$s=3;continue;case 2:d=CL.nil;e=G.EscapeHTML(a.FirstChild.Next.Tokens);e=A.ReplaceAll(e,F.CaretTokens,CI.nil);f=A.TrimSpace(e);$s=4;case 4:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;d=$append(d,new CJ(["data-content",K.BytesToStr(e)]));d=$append(d,new CJ(["data-subtype","math"]));$r=c.BaseRenderer.Tag("div",d,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("div",new CL([new CJ(["spin","1"])]),false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/div",CL.nil,false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/div",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 1;}return;}var $f={$blk:BE.ptr.prototype.renderMathBlock,$c:true,$r,a,b,c,d,e,f,$s};return $f;};BE.prototype.renderMathBlock=function(a,b){return this.$val.renderMathBlock(a,b);};BE.ptr.prototype.renderTableCell=function(a,b){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d="td";if(107===a.Parent.Parent.Type){d="th";}if(b){$s=1;continue;}$s=2;continue;case 1:e=CL.nil;f=a.TableCellAlign;if(f===(1)){e=$append(e,new CJ(["align","left"]));}else if(f===(2)){e=$append(e,new CJ(["align","center"]));}else if(f===(3)){e=$append(e,new CJ(["align","right"]));}$r=c.BaseRenderer.Tag(d,e,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/"+d,CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderTableCell,$c:true,$r,a,b,c,d,e,f,$s};return $f;};BE.prototype.renderTableCell=function(a,b){return this.$val.renderTableCell(a,b);};BE.ptr.prototype.renderTableRow=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("tr",CL.nil,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/tr",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderTableRow,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderTableRow=function(a,b){return this.$val.renderTableRow(a,b);};BE.ptr.prototype.renderTableHead=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("thead",CL.nil,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/thead",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!(CM.nil===a.Next)){$s=8;continue;}$s=9;continue;case 8:$r=c.BaseRenderer.Tag("tbody",CL.nil,false);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 9:$r=c.BaseRenderer.Newline();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderTableHead,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderTableHead=function(a,b){return this.$val.renderTableHead(a,b);};BE.ptr.prototype.renderTable=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("table",a.KramdownIAL,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:if(!(CM.nil===a.FirstChild.Next)){$s=6;continue;}$s=7;continue;case 6:$r=c.BaseRenderer.Tag("/tbody",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:$r=c.BaseRenderer.Newline();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/table",CL.nil,false);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderTable,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderTable=function(a,b){return this.$val.renderTable(a,b);};BE.ptr.prototype.renderStrikethrough=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderStrikethrough,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderStrikethrough=function(a,b){return this.$val.renderStrikethrough(a,b);};BE.ptr.prototype.renderStrikethrough1OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("del",a.Parent.KramdownIAL,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderStrikethrough1OpenMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderStrikethrough1OpenMarker=function(a,b){return this.$val.renderStrikethrough1OpenMarker(a,b);};BE.ptr.prototype.renderStrikethrough1CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/del",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderStrikethrough1CloseMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderStrikethrough1CloseMarker=function(a,b){return this.$val.renderStrikethrough1CloseMarker(a,b);};BE.ptr.prototype.renderStrikethrough2OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("del",a.Parent.KramdownIAL,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderStrikethrough2OpenMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderStrikethrough2OpenMarker=function(a,b){return this.$val.renderStrikethrough2OpenMarker(a,b);};BE.ptr.prototype.renderStrikethrough2CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/del",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderStrikethrough2CloseMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderStrikethrough2CloseMarker=function(a,b){return this.$val.renderStrikethrough2CloseMarker(a,b);};BE.ptr.prototype.renderLinkTitle=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderLinkTitle=function(a,b){return this.$val.renderLinkTitle(a,b);};BE.ptr.prototype.renderLinkDest=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderLinkDest=function(a,b){return this.$val.renderLinkDest(a,b);};BE.ptr.prototype.renderLinkSpace=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderLinkSpace=function(a,b){return this.$val.renderLinkSpace(a,b);};BE.ptr.prototype.renderLinkText=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=CI.nil;if(c.BaseRenderer.Options.AutoSpace){d=c.BaseRenderer.Space(a.Tokens);}else{d=a.Tokens;}$r=c.BaseRenderer.Write(G.EscapeHTML(d));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderLinkText,$c:true,$r,a,b,c,d,$s};return $f;};BE.prototype.renderLinkText=function(a,b){return this.$val.renderLinkText(a,b);};BE.ptr.prototype.renderCloseBrace=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderCloseBrace=function(a,b){return this.$val.renderCloseBrace(a,b);};BE.ptr.prototype.renderOpenBrace=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderOpenBrace=function(a,b){return this.$val.renderOpenBrace(a,b);};BE.ptr.prototype.renderCloseParen=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderCloseParen=function(a,b){return this.$val.renderCloseParen(a,b);};BE.ptr.prototype.renderOpenParen=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderOpenParen=function(a,b){return this.$val.renderOpenParen(a,b);};BE.ptr.prototype.renderLess=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderLess=function(a,b){return this.$val.renderLess(a,b);};BE.ptr.prototype.renderGreater=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderGreater=function(a,b){return this.$val.renderGreater(a,b);};BE.ptr.prototype.renderCloseBracket=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderCloseBracket=function(a,b){return this.$val.renderCloseBracket(a,b);};BE.ptr.prototype.renderOpenBracket=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderOpenBracket=function(a,b){return this.$val.renderOpenBracket(a,b);};BE.ptr.prototype.renderBang=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderBang=function(a,b){return this.$val.renderBang(a,b);};BE.ptr.prototype.renderImage=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(0===c.BaseRenderer.DisableTags){$s=3;continue;}$s=4;continue;case 3:d=new CL([new CJ(["class","img"])]);e=a.IALAttr("parent-style");if(!(""===e)){d=$append(d,new CJ(["style",e]));}$r=c.BaseRenderer.Tag("span",d,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("<img src=\"");$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=a.ChildByType(41).Tokens;f=c.BaseRenderer.LinkPath(f);if(!(""===c.BaseRenderer.Options.ImageLazyLoading)){$s=7;continue;}$s=8;continue;case 7:$r=c.BaseRenderer.Write(G.EscapeHTML(K.StrToBytes(c.BaseRenderer.Options.ImageLazyLoading)));$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("\" data-src=\"");$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 8:$r=c.BaseRenderer.Write(G.EscapeHTML(f));$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("\" alt=\"");$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:c.BaseRenderer.DisableTags=c.BaseRenderer.DisableTags+(1)>>0;$s=-1;return 2;case 2:c.BaseRenderer.DisableTags=c.BaseRenderer.DisableTags-(1)>>0;if(0===c.BaseRenderer.DisableTags){$s=13;continue;}$s=14;continue;case 13:$r=c.BaseRenderer.WriteByte(34);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=a.ChildByType(42);h=CI.nil;if(!(CM.nil===g)&&!(CI.nil===g.Tokens)){$s=16;continue;}$s=17;continue;case 16:h=G.EscapeHTML(g.Tokens);$r=c.BaseRenderer.WriteString(" title=\"");$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(h);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(34);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 17:i=c.BaseRenderer.NodeAttrsStr(a);if(!(""===i)){$s=21;continue;}$s=22;continue;case 21:$r=c.BaseRenderer.WriteString(" "+i);$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 22:$r=c.BaseRenderer.WriteString(" />");$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(0<h.$length){$s=25;continue;}$s=26;continue;case 25:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["class","protyle-action__title"])]),false);$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(h);$s=28;case 28:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=29;case 29:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 26:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=30;case 30:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=c.BaseRenderer.Writer.Bytes();k=A.LastIndex(j,(new CI($stringToBytes("<img src="))));l=$subslice(j,k);if(c.BaseRenderer.Options.Sanitize){$s=31;continue;}$s=32;continue;case 31:m=AE(l);$s=33;case 33:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=m;case 32:c.BaseRenderer.Writer.Truncate(k);n=c.BaseRenderer.Writer.Write(l);$s=34;case 34:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;case 14:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderImage,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,$s};return $f;};BE.prototype.renderImage=function(a,b){return this.$val.renderImage(a,b);};BE.ptr.prototype.renderLink=function(a,b){var{a,b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.LinkTextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.ChildByType(41);e=d.Tokens;if(c.BaseRenderer.Options.Sanitize){$s=5;continue;}$s=6;continue;case 5:f=A.TrimSpace(e);$s=7;case 7:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=A.ToLower(g);$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;if(A.HasPrefix(g,(new CI($stringToBytes("javascript:"))))){e=CI.nil;}case 6:e=c.BaseRenderer.LinkPath(e);i=new CL([new CJ(["href",K.BytesToStr(G.EscapeHTML(e))])]);j=a.ChildByType(42);if(!(CM.nil===j)&&!(CI.nil===j.Tokens)){i=$append(i,new CJ(["title",K.BytesToStr(G.EscapeHTML(j.Tokens))]));}$r=c.BaseRenderer.Tag("a",i,false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/a",CL.nil,false);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.LinkTextAutoSpaceNext(a);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderLink,$c:true,$r,a,b,c,d,e,f,g,h,i,j,$s};return $f;};BE.prototype.renderLink=function(a,b){return this.$val.renderLink(a,b);};BE.ptr.prototype.renderHTML=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.Tokens;if(c.BaseRenderer.Options.Sanitize){$s=4;continue;}$s=5;continue;case 4:e=AE(d);$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;case 5:d=c.BaseRenderer.tagSrcPath(d);$r=c.BaseRenderer.Write(d);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderHTML,$c:true,$r,a,b,c,d,e,$s};return $f;};BE.prototype.renderHTML=function(a,b){return this.$val.renderHTML(a,b);};BE.ptr.prototype.renderInlineHTML=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=a.Tokens;if(c.BaseRenderer.Options.Sanitize){$s=3;continue;}$s=4;continue;case 3:e=AE(d);$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;case 4:$r=c.BaseRenderer.Write(d);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderInlineHTML,$c:true,$r,a,b,c,d,e,$s};return $f;};BE.prototype.renderInlineHTML=function(a,b){return this.$val.renderInlineHTML(a,b);};BE.ptr.prototype.renderDocument=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderDocument=function(a,b){return this.$val.renderDocument(a,b);};BE.ptr.prototype.renderParagraph=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=CL.nil;d=$appendSlice(d,a.KramdownIAL);$r=c.BaseRenderer.Tag("p",d,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c.BaseRenderer.Options.ChineseParagraphBeginningSpace&&(0===a.Parent.Type)){$s=6;continue;}$s=7;continue;case 6:$r=c.BaseRenderer.WriteString("\xE3\x80\x80\xE3\x80\x80");$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/p",CL.nil,false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderParagraph,$c:true,$r,a,b,c,d,$s};return $f;};BE.prototype.renderParagraph=function(a,b){return this.$val.renderParagraph(a,b);};BE.ptr.prototype.renderText=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=CI.nil;if(c.BaseRenderer.Options.AutoSpace){d=c.BaseRenderer.Space(a.Tokens);}else{d=a.Tokens;}$r=c.BaseRenderer.Write(G.EscapeHTML(d));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderText,$c:true,$r,a,b,c,d,$s};return $f;};BE.prototype.renderText=function(a,b){return this.$val.renderText(a,b);};BE.ptr.prototype.renderCodeSpan=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(c.BaseRenderer.Options.AutoSpace){$s=4;continue;}$s=5;continue;case 4:d=a.PreviousNodeText();$s=6;case 6:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!(""===e)){$s=7;continue;}$s=8;continue;case 7:f=E.DecodeLastRuneInString(e);g=f[0];if(D.IsLetter(g)||D.IsDigit(g)){$s=9;continue;}$s=10;continue;case 9:$r=c.BaseRenderer.WriteByte(32);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:case 8:case 5:$s=3;continue;case 2:if(c.BaseRenderer.Options.AutoSpace){$s=12;continue;}$s=13;continue;case 12:h=a.NextNodeText();$s=14;case 14:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;if(!(""===i)){$s=15;continue;}$s=16;continue;case 15:j=E.DecodeRuneInString(i);k=j[0];if(D.IsLetter(k)||D.IsDigit(k)){$s=17;continue;}$s=18;continue;case 17:$r=c.BaseRenderer.WriteByte(32);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 18:case 16:case 13:case 3:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderCodeSpan,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,$s};return $f;};BE.prototype.renderCodeSpan=function(a,b){return this.$val.renderCodeSpan(a,b);};BE.ptr.prototype.renderCodeSpanOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("code",a.Parent.KramdownIAL,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderCodeSpanOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderCodeSpanOpenMarker=function(a,b){return this.$val.renderCodeSpanOpenMarker(a,b);};BE.ptr.prototype.renderCodeSpanContent=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderCodeSpanContent,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderCodeSpanContent=function(a,b){return this.$val.renderCodeSpanContent(a,b);};BE.ptr.prototype.renderCodeSpanCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/code",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderCodeSpanCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderCodeSpanCloseMarker=function(a,b){return this.$val.renderCodeSpanCloseMarker(a,b);};BE.ptr.prototype.renderEmphasis=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderEmphasis,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderEmphasis=function(a,b){return this.$val.renderEmphasis(a,b);};BE.ptr.prototype.renderEmAsteriskOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("em",a.Parent.KramdownIAL,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderEmAsteriskOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderEmAsteriskOpenMarker=function(a,b){return this.$val.renderEmAsteriskOpenMarker(a,b);};BE.ptr.prototype.renderEmAsteriskCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/em",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderEmAsteriskCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderEmAsteriskCloseMarker=function(a,b){return this.$val.renderEmAsteriskCloseMarker(a,b);};BE.ptr.prototype.renderEmUnderscoreOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("em",a.Parent.KramdownIAL,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderEmUnderscoreOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderEmUnderscoreOpenMarker=function(a,b){return this.$val.renderEmUnderscoreOpenMarker(a,b);};BE.ptr.prototype.renderEmUnderscoreCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/em",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderEmUnderscoreCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderEmUnderscoreCloseMarker=function(a,b){return this.$val.renderEmUnderscoreCloseMarker(a,b);};BE.ptr.prototype.renderStrong=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderStrong,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderStrong=function(a,b){return this.$val.renderStrong(a,b);};BE.ptr.prototype.renderStrongA6kOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("strong",a.Parent.KramdownIAL,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderStrongA6kOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderStrongA6kOpenMarker=function(a,b){return this.$val.renderStrongA6kOpenMarker(a,b);};BE.ptr.prototype.renderStrongA6kCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/strong",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderStrongA6kCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderStrongA6kCloseMarker=function(a,b){return this.$val.renderStrongA6kCloseMarker(a,b);};BE.ptr.prototype.renderStrongU8eOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("strong",a.Parent.KramdownIAL,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderStrongU8eOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderStrongU8eOpenMarker=function(a,b){return this.$val.renderStrongU8eOpenMarker(a,b);};BE.ptr.prototype.renderStrongU8eCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/strong",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderStrongU8eCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderStrongU8eCloseMarker=function(a,b){return this.$val.renderStrongU8eCloseMarker(a,b);};BE.ptr.prototype.renderBlockquote=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("blockquote",a.KramdownIAL,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Newline();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</blockquote>");$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderBlockquote,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderBlockquote=function(a,b){return this.$val.renderBlockquote(a,b);};BE.ptr.prototype.renderBlockquoteMarker=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderBlockquoteMarker=function(a,b){return this.$val.renderBlockquoteMarker(a,b);};BE.ptr.prototype.renderHeading=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=$substring(" 123456",a.HeadingLevel,(a.HeadingLevel+1>>0));$r=c.BaseRenderer.WriteString("<h"+d);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=a.ID;if(""===e){$s=6;continue;}$s=7;continue;case 6:f=AT(a);$s=8;case 8:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;case 7:if(c.BaseRenderer.Options.ToC||c.BaseRenderer.Options.HeadingID||c.BaseRenderer.Options.KramdownBlockIAL){$s=9;continue;}$s=10;continue;case 9:$r=c.BaseRenderer.WriteString(" id=\""+e+"\"");$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c.BaseRenderer.Options.KramdownBlockIAL){$s=12;continue;}$s=13;continue;case 12:if(!("id"===c.BaseRenderer.Options.KramdownIALIDRenderName)&&0<a.KramdownIAL.$length){$s=14;continue;}$s=15;continue;case 14:$r=c.BaseRenderer.WriteString(" "+c.BaseRenderer.Options.KramdownIALIDRenderName+"=\""+a.HeadingNormalizedID+"\"");$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 15:if(1<a.KramdownIAL.$length){$s=17;continue;}$s=18;continue;case 17:g=$subslice(a.KramdownIAL,1);h=g;i=0;case 19:if(!(i<h.$length)){$s=20;continue;}j=((i<0||i>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+i]);$r=c.BaseRenderer.WriteString(" "+(0>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+0])+"=\""+(1>=j.$length?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+1])+"\"");$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i++;$s=19;continue;case 20:case 18:case 13:case 10:$r=c.BaseRenderer.WriteString(">");$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:if(c.BaseRenderer.Options.HeadingAnchor){$s=23;continue;}$s=24;continue;case 23:k=AT(a);$s=25;case 25:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;$r=c.BaseRenderer.Tag("a",new CL([new CJ(["id","vditorAnchor-"+l]),new CJ(["class","vditor-anchor"]),new CJ(["href","#"+l])]),false);$s=26;case 26:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("<svg viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg>");$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/a",CL.nil,false);$s=28;case 28:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 24:$r=c.BaseRenderer.WriteString("</h"+$substring(" 123456",a.HeadingLevel,(a.HeadingLevel+1>>0))+">");$s=29;case 29:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=30;case 30:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderHeading,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,$s};return $f;};BE.prototype.renderHeading=function(a,b){return this.$val.renderHeading(a,b);};BE.ptr.prototype.renderHeadingC8hMarker=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderHeadingC8hMarker=function(a,b){return this.$val.renderHeadingC8hMarker(a,b);};BE.ptr.prototype.renderHeadingID=function(a,b){var a,b,c;c=this;return 2;};BE.prototype.renderHeadingID=function(a,b){return this.$val.renderHeadingID(a,b);};BE.ptr.prototype.renderList=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;e="ul";if((1===a.ListData.Typ)||((3===a.ListData.Typ)&&(0===a.ListData.BulletChar))){e="ol";}if(b){$s=1;continue;}$s=2;continue;case 1:$r=d.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c[0]=CL.nil;d.BaseRenderer.renderListStyle(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))));if((0===a.ListData.BulletChar)&&!((1===a.ListData.Start))){c[0]=$append(c[0],new CJ(["start",B.Itoa(a.ListData.Start)]));}c[0]=$appendSlice(c[0],a.KramdownIAL);$r=d.BaseRenderer.Tag(e,c[0],false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Newline();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=d.BaseRenderer.Newline();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/"+e,CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Newline();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderList,$c:true,$r,a,b,c,d,e,$s};return $f;};BE.prototype.renderList=function(a,b){return this.$val.renderList(a,b);};BE.ptr.prototype.renderListItem=function(a,b){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=CL.nil;d=$appendSlice(d,a.KramdownIAL);if((3===a.ListData.Typ)&&!(CM.nil===a.FirstChild)&&(((100===a.FirstChild.Type))||(!(CM.nil===a.FirstChild.FirstChild)&&(100===a.FirstChild.FirstChild.Type)))){e=a.FirstChild.FirstChild;if(CM.nil===e){e=a.FirstChild;}f="protyle-task";if(e.TaskListItemChecked){f=f+(" protyle-task--done");}d=$append(d,new CJ(["class",f]));}$r=c.BaseRenderer.Tag("li",d,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/li",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderListItem,$c:true,$r,a,b,c,d,e,f,$s};return $f;};BE.prototype.renderListItem=function(a,b){return this.$val.renderListItem(a,b);};BE.ptr.prototype.renderTaskListItemMarker=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=CL.nil;if(a.TaskListItemChecked){d=$append(d,new CJ(["checked",""]));}d=$append(d,new CJ(["disabled",""]),new CJ(["type","checkbox"]));$r=c.BaseRenderer.Tag("input",d,true);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderTaskListItemMarker,$c:true,$r,a,b,c,d,$s};return $f;};BE.prototype.renderTaskListItemMarker=function(a,b){return this.$val.renderTaskListItemMarker(a,b);};BE.ptr.prototype.renderThematicBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("hr",CL.nil,true);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderThematicBreak,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderThematicBreak=function(a,b){return this.$val.renderThematicBreak(a,b);};BE.ptr.prototype.renderHardBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("br",CL.nil,true);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderHardBreak,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderHardBreak=function(a,b){return this.$val.renderHardBreak(a,b);};BE.ptr.prototype.renderSoftBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(c.BaseRenderer.Options.SoftBreak2HardBreak){$s=3;continue;}$s=4;continue;case 3:$r=c.BaseRenderer.Tag("br",CL.nil,true);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=5;continue;case 4:$r=c.BaseRenderer.Newline();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:case 2:$s=-1;return 2;}return;}var $f={$blk:BE.ptr.prototype.renderSoftBreak,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.renderSoftBreak=function(a,b){return this.$val.renderSoftBreak(a,b);};BE.ptr.prototype.renderTextMarkAttrs=function(a){var a,b,c,d,e,f,g,h,i,j;b=CL.nil;c=this;b=new CL([new CJ(["data-type",a.TextMarkType])]);d=C.Split(a.TextMarkType," ");e=d;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);if("block-ref"===g){b=$append(b,new CJ(["data-subtype",a.TextMarkBlockRefSubtype]));b=$append(b,new CJ(["data-id",a.TextMarkBlockRefID]));}else if("a"===g){h=a.TextMarkAHref;h=($bytesToString(c.BaseRenderer.LinkPath((new CI($stringToBytes(h))))));b=$append(b,new CJ(["data-href",h]));if(!(""===a.TextMarkATitle)){b=$append(b,new CJ(["data-title",a.TextMarkATitle]));}}else if("inline-math"===g){b=$append(b,new CJ(["data-subtype","math"]));i=a.TextMarkInlineMathContent;if(a.ParentIs(109,CN.nil)){i=C.ReplaceAll(i,"|","|");i=C.ReplaceAll(i,"\n","<br/>");}i=C.ReplaceAll(i,"_esc_newline_","\n");b=$append(b,new CJ(["data-content",i]));b=$append(b,new CJ(["contenteditable","false"]));b=$append(b,new CJ(["class","render-node"]));}else if("file-annotation-ref"===g){b=$append(b,new CJ(["data-id",a.TextMarkFileAnnotationRefID]));}else if("inline-memo"===g){j=a.TextMarkInlineMemoContent;j=C.ReplaceAll(j,"_esc_newline_","\n");b=$append(b,new CJ(["data-inline-memo-content",j]));}f++;}return b;};BE.prototype.renderTextMarkAttrs=function(a){return this.$val.renderTextMarkAttrs(a);};BE.ptr.prototype.spanNodeAttrs=function(a,b){var a,b,c;c=this;b.$set($appendSlice(b.$get(),a.KramdownIAL));};BE.prototype.spanNodeAttrs=function(a,b){return this.$val.spanNodeAttrs(a,b);};BE.ptr.prototype.Render=function(){var{a,b,c,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=CI.nil;b=this;c=b.BaseRenderer.Render();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}a=c;$s=-1;return a;}return;}var $f={$blk:BE.ptr.prototype.Render,$c:true,$r,a,b,c,$s};return $f;};BE.prototype.Render=function(){return this.$val.Render();};BJ=function(a,b){var{a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,d,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,e,ea,eb,ec,ed,ee,ef,eg,eh,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=AR(a,b);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=new BI.ptr(c,CT.nil);e=0;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(e),{k:e,v:$methodVal(d,"renderDocument")});f=1;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(f),{k:f,v:$methodVal(d,"renderParagraph")});g=16;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(g),{k:g,v:$methodVal(d,"renderText")});h=27;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(h),{k:h,v:$methodVal(d,"renderCodeSpan")});i=28;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(i),{k:i,v:$methodVal(d,"renderCodeSpanOpenMarker")});j=29;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(j),{k:j,v:$methodVal(d,"renderCodeSpanContent")});k=30;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(k),{k:k,v:$methodVal(d,"renderCodeSpanCloseMarker")});l=11;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(l),{k:l,v:$methodVal(d,"renderCodeBlock")});m=12;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(m),{k:m,v:$methodVal(d,"renderCodeBlockOpenMarker")});n=14;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(n),{k:n,v:$methodVal(d,"renderCodeBlockInfoMarker")});o=15;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(o),{k:o,v:$methodVal(d,"renderCodeBlockCode")});p=13;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(p),{k:p,v:$methodVal(d,"renderCodeBlockCloseMarker")});q=300;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(q),{k:q,v:$methodVal(d,"renderMathBlock")});r=301;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(r),{k:r,v:$methodVal(d,"renderMathBlockOpenMarker")});s=302;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(s),{k:s,v:$methodVal(d,"renderMathBlockContent")});t=303;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(t),{k:t,v:$methodVal(d,"renderMathBlockCloseMarker")});u=304;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(u),{k:u,v:$methodVal(d,"renderInlineMath")});v=305;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(v),{k:v,v:$methodVal(d,"renderInlineMathOpenMarker")});w=306;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(w),{k:w,v:$methodVal(d,"renderInlineMathContent")});x=307;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(x),{k:x,v:$methodVal(d,"renderInlineMathCloseMarker")});y=17;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(y),{k:y,v:$methodVal(d,"renderEmphasis")});z=18;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(z),{k:z,v:$methodVal(d,"renderEmAsteriskOpenMarker")});aa=19;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aa),{k:aa,v:$methodVal(d,"renderEmAsteriskCloseMarker")});ab=20;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ab),{k:ab,v:$methodVal(d,"renderEmUnderscoreOpenMarker")});ac=21;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ac),{k:ac,v:$methodVal(d,"renderEmUnderscoreCloseMarker")});ad=22;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ad),{k:ad,v:$methodVal(d,"renderStrong")});ae=23;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ae),{k:ae,v:$methodVal(d,"renderStrongA6kOpenMarker")});af=24;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(af),{k:af,v:$methodVal(d,"renderStrongA6kCloseMarker")});ag=25;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ag),{k:ag,v:$methodVal(d,"renderStrongU8eOpenMarker")});ah=26;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ah),{k:ah,v:$methodVal(d,"renderStrongU8eCloseMarker")});ai=5;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ai),{k:ai,v:$methodVal(d,"renderBlockquote")});aj=6;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aj),{k:aj,v:$methodVal(d,"renderBlockquoteMarker")});ak=2;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ak),{k:ak,v:$methodVal(d,"renderHeading")});al=3;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(al),{k:al,v:$methodVal(d,"renderHeadingC8hMarker")});am=420;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(am),{k:am,v:$methodVal(d,"renderHeadingID")});an=7;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(an),{k:an,v:$methodVal(d,"renderList")});ao=8;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ao),{k:ao,v:$methodVal(d,"renderListItem")});ap=4;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ap),{k:ap,v:$methodVal(d,"renderThematicBreak")});aq=31;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aq),{k:aq,v:$methodVal(d,"renderHardBreak")});ar=32;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ar),{k:ar,v:$methodVal(d,"renderSoftBreak")});as=9;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(as),{k:as,v:$methodVal(d,"renderHTML")});at=10;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(at),{k:at,v:$methodVal(d,"renderInlineHTML")});au=33;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(au),{k:au,v:$methodVal(d,"renderLink")});av=34;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(av),{k:av,v:$methodVal(d,"renderImage")});aw=35;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aw),{k:aw,v:$methodVal(d,"renderBang")});ax=36;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ax),{k:ax,v:$methodVal(d,"renderOpenBracket")});ay=37;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ay),{k:ay,v:$methodVal(d,"renderCloseBracket")});az=38;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(az),{k:az,v:$methodVal(d,"renderOpenParen")});ba=39;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ba),{k:ba,v:$methodVal(d,"renderCloseParen")});bb=47;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bb),{k:bb,v:$methodVal(d,"renderLess")});bc=48;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bc),{k:bc,v:$methodVal(d,"renderGreater")});bd=466;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bd),{k:bd,v:$methodVal(d,"renderOpenBrace")});be=467;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(be),{k:be,v:$methodVal(d,"renderCloseBrace")});bf=40;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bf),{k:bf,v:$methodVal(d,"renderLinkText")});bg=43;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bg),{k:bg,v:$methodVal(d,"renderLinkSpace")});bh=41;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bh),{k:bh,v:$methodVal(d,"renderLinkDest")});bi=42;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bi),{k:bi,v:$methodVal(d,"renderLinkTitle")});bj=101;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bj),{k:bj,v:$methodVal(d,"renderStrikethrough")});bk=102;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bk),{k:bk,v:$methodVal(d,"renderStrikethrough1OpenMarker")});bl=103;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bl),{k:bl,v:$methodVal(d,"renderStrikethrough1CloseMarker")});bm=104;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bm),{k:bm,v:$methodVal(d,"renderStrikethrough2OpenMarker")});bn=105;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bn),{k:bn,v:$methodVal(d,"renderStrikethrough2CloseMarker")});bo=100;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bo),{k:bo,v:$methodVal(d,"renderTaskListItemMarker")});bp=106;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bp),{k:bp,v:$methodVal(d,"renderTable")});bq=107;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bq),{k:bq,v:$methodVal(d,"renderTableHead")});br=108;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(br),{k:br,v:$methodVal(d,"renderTableRow")});bs=109;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bs),{k:bs,v:$methodVal(d,"renderTableCell")});bt=200;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bt),{k:bt,v:$methodVal(d,"renderEmoji")});bu=201;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bu),{k:bu,v:$methodVal(d,"renderEmojiUnicode")});bv=202;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bv),{k:bv,v:$methodVal(d,"renderEmojiImg")});bw=203;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bw),{k:bw,v:$methodVal(d,"renderEmojiAlias")});bx=410;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bx),{k:bx,v:$methodVal(d,"renderFootnotesDefBlock")});by=411;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(by),{k:by,v:$methodVal(d,"renderFootnotesDef")});bz=412;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bz),{k:bz,v:$methodVal(d,"renderFootnotesRef")});ca=415;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ca),{k:ca,v:$methodVal(d,"renderToC")});cb=400;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cb),{k:cb,v:$methodVal(d,"renderBackslash")});cc=401;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cc),{k:cc,v:$methodVal(d,"renderBackslashContent")});cd=44;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cd),{k:cd,v:$methodVal(d,"renderHtmlEntity")});ce=425;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ce),{k:ce,v:$methodVal(d,"renderYamlFrontMatter")});cf=426;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cf),{k:cf,v:$methodVal(d,"renderYamlFrontMatterOpenMarker")});cg=427;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cg),{k:cg,v:$methodVal(d,"renderYamlFrontMatterContent")});ch=428;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ch),{k:ch,v:$methodVal(d,"renderYamlFrontMatterCloseMarker")});ci=430;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ci),{k:ci,v:$methodVal(d,"renderBlockRef")});cj=431;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cj),{k:cj,v:$methodVal(d,"renderBlockRefID")});ck=432;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ck),{k:ck,v:$methodVal(d,"renderBlockRefSpace")});cl=433;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cl),{k:cl,v:$methodVal(d,"renderBlockRefText")});cm=434;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cm),{k:cm,v:$methodVal(d,"renderBlockRefDynamicText")});cn=540;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cn),{k:cn,v:$methodVal(d,"renderFileAnnotationRef")});co=541;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(co),{k:co,v:$methodVal(d,"renderFileAnnotationRefID")});cp=542;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cp),{k:cp,v:$methodVal(d,"renderFileAnnotationRefSpace")});cq=543;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cq),{k:cq,v:$methodVal(d,"renderFileAnnotationRefText")});cr=450;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cr),{k:cr,v:$methodVal(d,"renderMark")});cs=451;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cs),{k:cs,v:$methodVal(d,"renderMark1OpenMarker")});ct=452;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ct),{k:ct,v:$methodVal(d,"renderMark1CloseMarker")});cu=453;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cu),{k:cu,v:$methodVal(d,"renderMark2OpenMarker")});cv=454;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cv),{k:cv,v:$methodVal(d,"renderMark2CloseMarker")});cw=485;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cw),{k:cw,v:$methodVal(d,"renderSup")});cx=486;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cx),{k:cx,v:$methodVal(d,"renderSupOpenMarker")});cy=487;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cy),{k:cy,v:$methodVal(d,"renderSupCloseMarker")});cz=490;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cz),{k:cz,v:$methodVal(d,"renderSub")});da=491;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(da),{k:da,v:$methodVal(d,"renderSubOpenMarker")});db=492;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(db),{k:db,v:$methodVal(d,"renderSubCloseMarker")});dc=455;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dc),{k:dc,v:$methodVal(d,"renderKramdownBlockIAL")});dd=456;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dd),{k:dd,v:$methodVal(d,"renderKramdownSpanIAL")});de=465;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(de),{k:de,v:$methodVal(d,"renderBlockQueryEmbed")});df=468;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(df),{k:df,v:$methodVal(d,"renderBlockQueryEmbedScript")});dg=460;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dg),{k:dg,v:$methodVal(d,"renderTag")});dh=461;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dh),{k:dh,v:$methodVal(d,"renderTagOpenMarker")});di=462;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(di),{k:di,v:$methodVal(d,"renderTagCloseMarker")});dj=45;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dj),{k:dj,v:$methodVal(d,"renderLinkRefDefBlock")});dk=46;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dk),{k:dk,v:$methodVal(d,"renderLinkRefDef")});dl=475;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dl),{k:dl,v:$methodVal(d,"renderSuperBlock")});dm=476;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dm),{k:dm,v:$methodVal(d,"renderSuperBlockOpenMarker")});dn=477;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dn),{k:dn,v:$methodVal(d,"renderSuperBlockLayoutMarker")});dp=478;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dp),{k:dp,v:$methodVal(d,"renderSuperBlockCloseMarker")});dq=495;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dq),{k:dq,v:$methodVal(d,"renderGitConflict")});dr=496;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dr),{k:dr,v:$methodVal(d,"renderGitConflictOpenMarker")});ds=497;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ds),{k:ds,v:$methodVal(d,"renderGitConflictContent")});dt=498;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dt),{k:dt,v:$methodVal(d,"renderGitConflictCloseMarker")});du=500;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(du),{k:du,v:$methodVal(d,"renderIFrame")});dv=535;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dv),{k:dv,v:$methodVal(d,"renderWidget")});dw=510;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dw),{k:dw,v:$methodVal(d,"renderVideo")});dx=505;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dx),{k:dx,v:$methodVal(d,"renderAudio")});dy=515;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dy),{k:dy,v:$methodVal(d,"renderKbd")});dz=516;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dz),{k:dz,v:$methodVal(d,"renderKbdOpenMarker")});ea=517;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ea),{k:ea,v:$methodVal(d,"renderKbdCloseMarker")});eb=520;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(eb),{k:eb,v:$methodVal(d,"renderUnderline")});ec=521;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ec),{k:ec,v:$methodVal(d,"renderUnderlineOpenMarker")});ed=522;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ed),{k:ed,v:$methodVal(d,"renderUnderlineCloseMarker")});ee=525;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ee),{k:ee,v:$methodVal(d,"renderBr")});ef=530;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ef),{k:ef,v:$methodVal(d,"renderTextMark")});eg=550;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(eg),{k:eg,v:$methodVal(d,"renderAttributeView")});eh=560;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(eh),{k:eh,v:$methodVal(d,"renderCustomBlock")});$s=-1;return d;}return;}var $f={$blk:BJ,$c:true,$r,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,d,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,e,ea,eb,ec,ed,ee,ef,eg,eh,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};$pkg.NewProtyleExportMdRenderer=BJ;BI.ptr.prototype.renderCustomBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString(";;;");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString(a.CustomBlockInfo);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(a.Tokens);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString(";;;");$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!c.BaseRenderer.isLastNode(c.BaseRenderer.Tree.Root,a)){$s=10;continue;}$s=11;continue;case 10:if(c.withoutKramdownBlockIAL(a)){$s=12;continue;}$s=13;continue;case 12:$r=c.BaseRenderer.WriteByte(10);$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 13:case 11:case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderCustomBlock,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderCustomBlock=function(a,b){return this.$val.renderCustomBlock(a,b);};BI.ptr.prototype.renderAttributeView=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("div",new CL([new CJ(["data-type","NodeAttributeView"]),new CJ(["data-av-id",a.AttributeViewID]),new CJ(["data-av-type",a.AttributeViewType])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</div>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!c.BaseRenderer.isLastNode(c.BaseRenderer.Tree.Root,a)){$s=7;continue;}$s=8;continue;case 7:if(c.withoutKramdownBlockIAL(a)){$s=9;continue;}$s=10;continue;case 9:$r=c.BaseRenderer.WriteByte(10);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:case 8:case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderAttributeView,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderAttributeView=function(a,b){return this.$val.renderAttributeView(a,b);};BI.ptr.prototype.renderTextMark=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=a.ContainTextMarkTypes(new CJ(["strong","em","s"]))&&!a.IsTextMarkType("inline-math");if(b){$s=1;continue;}$s=2;continue;case 1:e=c.renderMdMarker(a,b);$s=4;case 4:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(!a.IsTextMarkType("a")&&!a.IsTextMarkType("inline-memo")&&!a.IsTextMarkType("block-ref")&&!a.IsTextMarkType("file-annotation-ref")&&!a.IsTextMarkType("inline-math")){$s=5;continue;}$s=6;continue;case 5:g=a.TextMarkTextContent;if(a.IsTextMarkType("code")){$s=8;continue;}$s=9;continue;case 8:g=G.UnescapeString(g);if(a.ParentIs(109,CN.nil)){$s=10;continue;}$s=11;continue;case 10:h=I.RepeatBackslashBeforePipe(g);$s=12;case 12:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;case 11:case 9:if(d){$s=13;continue;}$s=14;continue;case 13:i=E.DecodeRuneInString(g);j=i[0];k=I.IsUnicodeWhitespace(j);l=D.IsPunct(j)||D.IsSymbol(j);if(k||l){$s=15;continue;}$s=16;continue;case 15:$r=c.BaseRenderer.WriteByte(32);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 16:case 14:$r=c.BaseRenderer.WriteString(f);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString(g);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=7;continue;case 6:$r=c.BaseRenderer.WriteString(f);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:$s=3;continue;case 2:m=c.renderMdMarker(a,b);$s=21;case 21:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;$r=c.BaseRenderer.WriteString(n);$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!(CM.nil===a.Next)){$s=23;continue;}$s=24;continue;case 23:if(530===a.Next.Type){$s=25;continue;}$s=26;continue;case 25:$r=c.BaseRenderer.WriteString("\xE2\x80\x8B");$s=28;case 28:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=27;continue;case 26:if(d){$s=29;continue;}$s=30;continue;case 29:o=a.TextMarkTextContent;p=E.DecodeLastRuneInString(o);q=p[0];r=I.IsUnicodeWhitespace(q);s=D.IsPunct(q)||D.IsSymbol(q);if(r||s){$s=31;continue;}$s=32;continue;case 31:$r=c.BaseRenderer.WriteByte(32);$s=33;case 33:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 32:case 30:case 27:case 24:case 3:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderTextMark,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s};return $f;};BI.prototype.renderTextMark=function(a,b){return this.$val.renderTextMark(a,b);};BI.ptr.prototype.renderMdMarker=function(a,b){var{a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c="";d=this;e=C.Split(a.TextMarkType," ");if(1===e.$length){$s=1;continue;}$s=2;continue;case 1:f=d.renderMdMarker0(a,(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]),b);$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}c=f;g=c;$s=4;case 4:return g;case 2:h=CJ.nil;i=e;j=0;while(true){if(!(j<i.$length)){break;}k=j;l=((j<0||j>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+j]);if("a"===l||"inline-memo"===l||"block-ref"===l||"file-annotation-ref"===l||"inline-math"===l){h=$append(h,l);e=$appendSlice($subslice(e,0,k),$subslice(e,(k+1>>0)));break;}j++;}e=$appendSlice(h,e);m=(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]);if("a"===m||"inline-memo"===m||"block-ref"===m||"file-annotation-ref"===m||"inline-math"===m){$s=5;continue;}$s=6;continue;case 5:n=$subslice(e,1);if(b){$s=8;continue;}$s=9;continue;case 8:o=n;p=0;while(true){if(!(p<o.$length)){break;}q=((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]);if(!("code"===q)){c=c+(d.renderMdMarker1(a,q,b));}p++;}r=m;if(r===("a")){$s=12;continue;}if(r===("block-ref")){$s=13;continue;}if(r===("file-annotation-ref")){$s=14;continue;}if(r===("inline-memo")){$s=15;continue;}if(r===("inline-math")){$s=16;continue;}$s=17;continue;case 12:s=a.TextMarkAHref;s=($bytesToString(d.BaseRenderer.LinkPath((new CI($stringToBytes(s))))));s=G.UnescapeHTMLStr(s);s=d.BaseRenderer.EncodeLinkSpace(s);c=c+("[");t=n;u=0;while(true){if(!(u<t.$length)){break;}v=((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u]);if("code"===v){c=c+(d.renderMdMarker1(a,v,b));}u++;}$s=-1;return c;case 13:a.TextMarkTextContent=C.ReplaceAll(a.TextMarkTextContent,"'","'");c=c+("(("+a.TextMarkBlockRefID);if("s"===a.TextMarkBlockRefSubtype){c=c+(" \""+a.TextMarkTextContent+"\"");}else{c=c+(" '"+a.TextMarkTextContent+"'");}c=c+("))");$s=17;continue;case 14:a.TextMarkTextContent=C.ReplaceAll(a.TextMarkTextContent,"'","'");c=c+("<<"+a.TextMarkFileAnnotationRefID);c=c+(" \""+a.TextMarkTextContent+"\"");c=c+(">>");$s=17;continue;case 15:w=E.DecodeLastRuneInString(a.TextMarkTextContent);x=w[0];c=c+(a.TextMarkTextContent);y=a.TextMarkInlineMemoContent;y=C.ReplaceAll(y,"_esc_newline_"," ");if(AB(x)){c=c+("^\xEF\xBC\x88"+y+"\xEF\xBC\x89^");}else{c=c+("^("+y+")^");}$s=17;continue;case 16:z=a.TextMarkInlineMathContent;if(a.ParentIs(109,CN.nil)){$s=18;continue;}$s=19;continue;case 18:aa=I.RepeatBackslashBeforePipe(z);$s=20;case 20:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}z=aa;z=C.ReplaceAll(z,"\n","<br/>");case 19:z=C.ReplaceAll(z,"_esc_newline_"," ");c=c+("$"+z+"$");case 17:case 11:$s=10;continue;case 9:ab=m;if(ab===("a")){ac=a.TextMarkAHref;ac=($bytesToString(d.BaseRenderer.LinkPath((new CI($stringToBytes(ac))))));ac=G.UnescapeHTMLStr(ac);ac=d.BaseRenderer.EncodeLinkSpace(ac);c=c+(($bytesToString(I.EscapeProtyleMarkers((new CI($stringToBytes(a.TextMarkTextContent)))))));ad=n;ae=0;while(true){if(!(ae<ad.$length)){break;}af=((ae<0||ae>=ad.$length)?($throwRuntimeError("index out of range"),undefined):ad.$array[ad.$offset+ae]);if("code"===af){c=c+(d.renderMdMarker1(a,af,b));}ae++;}c=c+("]("+ac);if(!(""===a.TextMarkATitle)){c=c+(" \""+G.UnescapeHTMLStr(a.TextMarkATitle)+"\"");}c=c+(")");}ag=n;ah=0;while(true){if(!(ah<ag.$length)){break;}ai=((ah<0||ah>=ag.$length)?($throwRuntimeError("index out of range"),undefined):ag.$array[ag.$offset+ah]);if(!("code"===ai)){c=c+(d.renderMdMarker1(a,ai,b));}ah++;}case 10:$s=7;continue;case 6:if(!b){BK(e);}aj=e;ak=0;while(true){if(!(ak<aj.$length)){break;}al=((ak<0||ak>=aj.$length)?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+ak]);c=c+(d.renderMdMarker1(a,al,b));ak++;}case 7:$s=-1;return c;}return;}var $f={$blk:BI.ptr.prototype.renderMdMarker,$c:true,$r,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};BI.prototype.renderMdMarker=function(a,b){return this.$val.renderMdMarker(a,b);};BK=function(a){var a,b,c,d,e,f,g,h;b=a.$length-1>>0;c=0;while(true){if(!(c<(d=a.$length/2,(d===d&&d!==1/0&&d!==-1/0)?d>>0:$throwRuntimeError("integer divide by zero")))){break;}e=(f=b-c>>0,((f<0||f>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+f]));g=((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c]);((c<0||c>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+c]=e);(h=b-c>>0,((h<0||h>=a.$length)?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+h]=g));c=c+(1)>>0;}};BI.ptr.prototype.renderMdMarker0=function(a,b,c){var{a,b,c,d,e,f,g,h,i,j,k,l,$s,$r,$c}=$restore(this,{a,b,c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=b;if(f===("a")){$s=2;continue;}if(f===("block-ref")){$s=3;continue;}if(f===("file-annotation-ref")){$s=4;continue;}if(f===("inline-memo")){$s=5;continue;}if(f===("inline-math")){$s=6;continue;}$s=7;continue;case 2:g=a.TextMarkAHref;g=($bytesToString(e.BaseRenderer.LinkPath((new CI($stringToBytes(g))))));g=G.UnescapeHTMLStr(g);g=e.BaseRenderer.EncodeLinkSpace(g);if(c){d=d+("["+a.TextMarkTextContent+"]("+g);if(!(""===a.TextMarkATitle)){d=d+(" \""+G.UnescapeHTMLStr(a.TextMarkATitle)+"\"");}d=d+(")");}$s=8;continue;case 3:if(c){a.TextMarkTextContent=C.ReplaceAll(a.TextMarkTextContent,"'","'");d=d+("(("+a.TextMarkBlockRefID);if("s"===a.TextMarkBlockRefSubtype){d=d+(" \""+a.TextMarkTextContent+"\"");}else{d=d+(" '"+a.TextMarkTextContent+"'");}d=d+("))");}$s=8;continue;case 4:if(c){a.TextMarkTextContent=C.ReplaceAll(a.TextMarkTextContent,"'","'");d=d+("<<"+a.TextMarkFileAnnotationRefID);d=d+(" \""+a.TextMarkTextContent+"\"");d=d+(">>");}$s=8;continue;case 5:if(c){h=E.DecodeLastRuneInString(a.TextMarkTextContent);i=h[0];d=d+(a.TextMarkTextContent);j=a.TextMarkInlineMemoContent;j=C.ReplaceAll(j,"_esc_newline_"," ");if(AB(i)){d=d+("^\xEF\xBC\x88"+j+"\xEF\xBC\x89^");}else{d=d+("^("+j+")^");}}$s=8;continue;case 6:if(c){$s=9;continue;}$s=10;continue;case 9:k=a.TextMarkInlineMathContent;if(a.ParentIs(109,CN.nil)){$s=12;continue;}$s=13;continue;case 12:l=I.RepeatBackslashBeforePipe(k);$s=14;case 14:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;k=C.ReplaceAll(k,"\n","<br/>");case 13:k=C.ReplaceAll(k,"_esc_newline_"," ");d=d+("$"+k);$s=11;continue;case 10:d=d+("$");case 11:$s=8;continue;case 7:d=d+(e.renderMdMarker1(a,b,c));case 8:case 1:$s=-1;return d;}return;}var $f={$blk:BI.ptr.prototype.renderMdMarker0,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,$s};return $f;};BI.prototype.renderMdMarker0=function(a,b,c){return this.$val.renderMdMarker0(a,b,c);};BI.ptr.prototype.renderMdMarker1=function(a,b,c){var a,b,c,d,e,f;d="";e=this;f=b;if(f===("strong")){d=d+("**");}else if(f===("em")){d=d+("*");}else if(f===("code")){d=d+("`");}else if(f===("tag")){d=d+("#");}else if(f===("s")){d=d+("~~");}else if(f===("mark")){d=d+("==");}else if(f===("u")){if(c){d=d+("<u>");}else{d=d+("</u>");}}else if(f===("sup")){if(c){d=d+("^");}else{d=d+("^");}}else if(f===("sub")){if(c){d=d+("~");}else{d=d+("~");}}else if(f===("kbd")){if(c){d=d+("<kbd>");}else{d=d+("</kbd>");}}return d;};BI.prototype.renderMdMarker1=function(a,b,c){return this.$val.renderMdMarker1(a,b,c);};BI.ptr.prototype.renderBr=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<br />");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderBr,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderBr=function(a,b){return this.$val.renderBr(a,b);};BI.ptr.prototype.renderUnderline=function(a,b){var a,b,c;c=this;return 2;};BI.prototype.renderUnderline=function(a,b){return this.$val.renderUnderline(a,b);};BI.ptr.prototype.renderUnderlineOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<u>");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderUnderlineOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderUnderlineOpenMarker=function(a,b){return this.$val.renderUnderlineOpenMarker(a,b);};BI.ptr.prototype.renderUnderlineCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("</u>");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderUnderlineCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderUnderlineCloseMarker=function(a,b){return this.$val.renderUnderlineCloseMarker(a,b);};BI.ptr.prototype.renderKbd=function(a,b){var a,b,c;c=this;return 2;};BI.prototype.renderKbd=function(a,b){return this.$val.renderKbd(a,b);};BI.ptr.prototype.renderKbdOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<kbd>");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderKbdOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderKbdOpenMarker=function(a,b){return this.$val.renderKbdOpenMarker(a,b);};BI.ptr.prototype.renderKbdCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("</kbd>");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderKbdCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderKbdCloseMarker=function(a,b){return this.$val.renderKbdCloseMarker(a,b);};BI.ptr.prototype.renderVideo=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.Tokens;d=c.BaseRenderer.tagSrcPath(d);$r=c.BaseRenderer.Write(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!c.BaseRenderer.isLastNode(c.BaseRenderer.Tree.Root,a)){$s=6;continue;}$s=7;continue;case 6:$r=c.BaseRenderer.WriteByte(10);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderVideo,$c:true,$r,a,b,c,d,$s};return $f;};BI.prototype.renderVideo=function(a,b){return this.$val.renderVideo(a,b);};BI.ptr.prototype.renderAudio=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.Tokens;d=c.BaseRenderer.tagSrcPath(d);$r=c.BaseRenderer.Write(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!c.BaseRenderer.isLastNode(c.BaseRenderer.Tree.Root,a)){$s=6;continue;}$s=7;continue;case 6:$r=c.BaseRenderer.WriteByte(10);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderAudio,$c:true,$r,a,b,c,d,$s};return $f;};BI.prototype.renderAudio=function(a,b){return this.$val.renderAudio(a,b);};BI.ptr.prototype.renderIFrame=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.Tokens;d=c.BaseRenderer.tagSrcPath(d);$r=c.BaseRenderer.Write(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!c.BaseRenderer.isLastNode(c.BaseRenderer.Tree.Root,a)){$s=6;continue;}$s=7;continue;case 6:$r=c.BaseRenderer.WriteByte(10);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderIFrame,$c:true,$r,a,b,c,d,$s};return $f;};BI.prototype.renderIFrame=function(a,b){return this.$val.renderIFrame(a,b);};BI.ptr.prototype.renderWidget=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.Tokens;d=c.BaseRenderer.tagSrcPath(d);$r=c.BaseRenderer.Write(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!c.BaseRenderer.isLastNode(c.BaseRenderer.Tree.Root,a)){$s=6;continue;}$s=7;continue;case 6:$r=c.BaseRenderer.WriteByte(10);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderWidget,$c:true,$r,a,b,c,d,$s};return $f;};BI.prototype.renderWidget=function(a,b){return this.$val.renderWidget(a,b);};BI.ptr.prototype.renderGitConflictCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderGitConflictCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderGitConflictCloseMarker=function(a,b){return this.$val.renderGitConflictCloseMarker(a,b);};BI.ptr.prototype.renderGitConflictContent=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderGitConflictContent,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderGitConflictContent=function(a,b){return this.$val.renderGitConflictContent(a,b);};BI.ptr.prototype.renderGitConflictOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderGitConflictOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderGitConflictOpenMarker=function(a,b){return this.$val.renderGitConflictOpenMarker(a,b);};BI.ptr.prototype.renderGitConflict=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderGitConflict,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderGitConflict=function(a,b){return this.$val.renderGitConflict(a,b);};BI.ptr.prototype.renderSuperBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderSuperBlock,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderSuperBlock=function(a,b){return this.$val.renderSuperBlock(a,b);};BI.ptr.prototype.renderSuperBlockOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b&&c.BaseRenderer.Options.SuperBlock){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write((new CI($stringToBytes("{{{"))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderSuperBlockOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderSuperBlockOpenMarker=function(a,b){return this.$val.renderSuperBlockOpenMarker(a,b);};BI.ptr.prototype.renderSuperBlockLayoutMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b&&c.BaseRenderer.Options.SuperBlock){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(10);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderSuperBlockLayoutMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderSuperBlockLayoutMarker=function(a,b){return this.$val.renderSuperBlockLayoutMarker(a,b);};BI.ptr.prototype.renderSuperBlockCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(c.BaseRenderer.Options.SuperBlock){$s=3;continue;}$s=4;continue;case 3:$r=c.BaseRenderer.Newline();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write((new CI($stringToBytes("}}}"))));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:if(!c.BaseRenderer.isLastNode(c.BaseRenderer.Tree.Root,a)){$s=8;continue;}$s=9;continue;case 8:if(c.withoutKramdownBlockIAL(a.Parent)){$s=10;continue;}$s=11;continue;case 10:$r=c.BaseRenderer.WriteByte(10);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 11:case 9:case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderSuperBlockCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderSuperBlockCloseMarker=function(a,b){return this.$val.renderSuperBlockCloseMarker(a,b);};BI.ptr.prototype.renderLinkRefDefBlock=function(a,b){var a,b,c;c=this;return 2;};BI.prototype.renderLinkRefDefBlock=function(a,b){return this.$val.renderLinkRefDefBlock(a,b);};BI.ptr.prototype.renderLinkRefDef=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(91);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(a.Tokens);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("]: ");$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteByte(10);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderLinkRefDef,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderLinkRefDef=function(a,b){return this.$val.renderLinkRefDef(a,b);};BI.ptr.prototype.renderTag=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderTag,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderTag=function(a,b){return this.$val.renderTag(a,b);};BI.ptr.prototype.renderTagOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(35);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderTagOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderTagOpenMarker=function(a,b){return this.$val.renderTagOpenMarker(a,b);};BI.ptr.prototype.renderTagCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(35);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderTagCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderTagCloseMarker=function(a,b){return this.$val.renderTagCloseMarker(a,b);};BI.ptr.prototype.renderKramdownBlockIAL=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!c.BaseRenderer.Options.KramdownBlockIAL){$s=-1;return 2;}if(!(CM.nil===a.Previous)&&(8===a.Previous.Type)){$s=-1;return 2;}if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c.BaseRenderer.Options.KramdownBlockIAL){$s=5;continue;}$s=6;continue;case 5:if(K.IsDocIAL(a.Tokens)){$s=7;continue;}$s=8;continue;case 7:$r=c.BaseRenderer.WriteByte(10);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 8:$r=c.BaseRenderer.Write(a.Tokens);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:$s=3;continue;case 2:if((8===a.Parent.Type)||(7===a.Parent.Type)){$s=11;continue;}$s=12;continue;case 11:if(!a.Parent.ListData.Tight){$s=14;continue;}$s=15;continue;case 14:$r=c.BaseRenderer.Newline();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 15:$s=13;continue;case 12:$r=c.BaseRenderer.Newline();$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 13:$r=c.BaseRenderer.WriteByte(10);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderKramdownBlockIAL,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderKramdownBlockIAL=function(a,b){return this.$val.renderKramdownBlockIAL(a,b);};BI.ptr.prototype.renderKramdownSpanIAL=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!c.BaseRenderer.Options.KramdownSpanIAL){$s=-1;return 2;}if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderKramdownSpanIAL,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderKramdownSpanIAL=function(a,b){return this.$val.renderKramdownSpanIAL(a,b);};BI.ptr.prototype.renderMark=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderMark,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderMark=function(a,b){return this.$val.renderMark(a,b);};BI.ptr.prototype.renderMark1OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("=");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderMark1OpenMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderMark1OpenMarker=function(a,b){return this.$val.renderMark1OpenMarker(a,b);};BI.ptr.prototype.renderMark1CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("=");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderMark1CloseMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderMark1CloseMarker=function(a,b){return this.$val.renderMark1CloseMarker(a,b);};BI.ptr.prototype.renderMark2OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("==");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderMark2OpenMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderMark2OpenMarker=function(a,b){return this.$val.renderMark2OpenMarker(a,b);};BI.ptr.prototype.renderMark2CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("==");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderMark2CloseMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderMark2CloseMarker=function(a,b){return this.$val.renderMark2CloseMarker(a,b);};BI.ptr.prototype.renderSup=function(a,b){var a,b,c;c=this;return 2;};BI.prototype.renderSup=function(a,b){return this.$val.renderSup(a,b);};BI.ptr.prototype.renderSupOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("^");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderSupOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderSupOpenMarker=function(a,b){return this.$val.renderSupOpenMarker(a,b);};BI.ptr.prototype.renderSupCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("^");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderSupCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderSupCloseMarker=function(a,b){return this.$val.renderSupCloseMarker(a,b);};BI.ptr.prototype.renderSub=function(a,b){var a,b,c;c=this;return 2;};BI.prototype.renderSub=function(a,b){return this.$val.renderSub(a,b);};BI.ptr.prototype.renderSubOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("~");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderSubOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderSubOpenMarker=function(a,b){return this.$val.renderSubOpenMarker(a,b);};BI.ptr.prototype.renderSubCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("~");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderSubCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderSubCloseMarker=function(a,b){return this.$val.renderSubCloseMarker(a,b);};BI.ptr.prototype.renderBlockQueryEmbedScript=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderBlockQueryEmbedScript,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderBlockQueryEmbedScript=function(a,b){return this.$val.renderBlockQueryEmbedScript(a,b);};BI.ptr.prototype.renderBlockQueryEmbed=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Newline();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderBlockQueryEmbed,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderBlockQueryEmbed=function(a,b){return this.$val.renderBlockQueryEmbed(a,b);};BI.ptr.prototype.renderBlockRef=function(a,b){var a,b,c;c=this;return 2;};BI.prototype.renderBlockRef=function(a,b){return this.$val.renderBlockRef(a,b);};BI.ptr.prototype.renderBlockRefID=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderBlockRefID,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderBlockRefID=function(a,b){return this.$val.renderBlockRefID(a,b);};BI.ptr.prototype.renderBlockRefSpace=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(32);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderBlockRefSpace,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderBlockRefSpace=function(a,b){return this.$val.renderBlockRefSpace(a,b);};BI.ptr.prototype.renderBlockRefText=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(34);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=G.EscapeHTML(a.Tokens);d=A.ReplaceAll(d,(new CI($stringToBytes("'"))),(new CI($stringToBytes("'"))));$r=c.BaseRenderer.Write(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(34);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderBlockRefText,$c:true,$r,a,b,c,d,$s};return $f;};BI.prototype.renderBlockRefText=function(a,b){return this.$val.renderBlockRefText(a,b);};BI.ptr.prototype.renderBlockRefDynamicText=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(39);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=G.EscapeHTML(a.Tokens);d=A.ReplaceAll(d,(new CI($stringToBytes("'"))),(new CI($stringToBytes("'"))));$r=c.BaseRenderer.Write(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(39);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderBlockRefDynamicText,$c:true,$r,a,b,c,d,$s};return $f;};BI.prototype.renderBlockRefDynamicText=function(a,b){return this.$val.renderBlockRefDynamicText(a,b);};BI.ptr.prototype.renderFileAnnotationRef=function(a,b){var a,b,c;c=this;return 2;};BI.prototype.renderFileAnnotationRef=function(a,b){return this.$val.renderFileAnnotationRef(a,b);};BI.ptr.prototype.renderFileAnnotationRefID=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderFileAnnotationRefID,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderFileAnnotationRefID=function(a,b){return this.$val.renderFileAnnotationRefID(a,b);};BI.ptr.prototype.renderFileAnnotationRefSpace=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(32);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderFileAnnotationRefSpace,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderFileAnnotationRefSpace=function(a,b){return this.$val.renderFileAnnotationRefSpace(a,b);};BI.ptr.prototype.renderFileAnnotationRefText=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(34);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=G.EscapeHTML(a.Tokens);d=A.ReplaceAll(d,(new CI($stringToBytes("'"))),(new CI($stringToBytes("'"))));$r=c.BaseRenderer.Write(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(34);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderFileAnnotationRefText,$c:true,$r,a,b,c,d,$s};return $f;};BI.prototype.renderFileAnnotationRefText=function(a,b){return this.$val.renderFileAnnotationRefText(a,b);};BI.ptr.prototype.renderYamlFrontMatterCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(J.YamlFrontMatterMarker);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(10);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderYamlFrontMatterCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderYamlFrontMatterCloseMarker=function(a,b){return this.$val.renderYamlFrontMatterCloseMarker(a,b);};BI.ptr.prototype.renderYamlFrontMatterContent=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(10);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderYamlFrontMatterContent,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderYamlFrontMatterContent=function(a,b){return this.$val.renderYamlFrontMatterContent(a,b);};BI.ptr.prototype.renderYamlFrontMatterOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(J.YamlFrontMatterMarker);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(10);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderYamlFrontMatterOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderYamlFrontMatterOpenMarker=function(a,b){return this.$val.renderYamlFrontMatterOpenMarker(a,b);};BI.ptr.prototype.renderYamlFrontMatter=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!b&&!c.BaseRenderer.isLastNode(c.BaseRenderer.Tree.Root,a)){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.WriteByte(10);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderYamlFrontMatter,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderYamlFrontMatter=function(a,b){return this.$val.renderYamlFrontMatter(a,b);};BI.ptr.prototype.renderHtmlEntity=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.HtmlEntityTokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderHtmlEntity,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderHtmlEntity=function(a,b){return this.$val.renderHtmlEntity(a,b);};BI.ptr.prototype.renderBackslashContent=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderBackslashContent,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderBackslashContent=function(a,b){return this.$val.renderBackslashContent(a,b);};BI.ptr.prototype.renderBackslash=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(92);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderBackslash,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderBackslash=function(a,b){return this.$val.renderBackslash(a,b);};BI.ptr.prototype.renderToC=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("[toc]\n\n");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderToC,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderToC=function(a,b){return this.$val.renderToC(a,b);};BI.ptr.prototype.renderFootnotesRef=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("["+K.BytesToStr(a.Tokens)+"]");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderFootnotesRef,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderFootnotesRef=function(a,b){return this.$val.renderFootnotesRef(a,b);};BI.ptr.prototype.renderFootnotesDefBlock=function(a,b){var a,b,c;c=this;return 2;};BI.prototype.renderFootnotesDefBlock=function(a,b){return this.$val.renderFootnotesDefBlock(a,b);};BI.ptr.prototype.renderFootnotesDef=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:c.BaseRenderer.Writer=new A.Buffer.ptr(CI.nil,0,0);c.NodeWriterStack=$append(c.NodeWriterStack,c.BaseRenderer.Writer);$r=c.BaseRenderer.WriteString("["+K.BytesToStr(a.Tokens)+"]: ");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:f=(d=c.NodeWriterStack,e=c.NodeWriterStack.$length-1>>0,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]));c.NodeWriterStack=$subslice(c.NodeWriterStack,0,(c.NodeWriterStack.$length-1>>0));g=f.String();h=C.Split(g,"\n");i=new A.Buffer.ptr(CI.nil,0,0);j=h;k=0;case 5:if(!(k<j.$length)){$s=6;continue;}l=k;m=((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]);if(0===l){$s=7;continue;}$s=8;continue;case 7:n=i.WriteString(m+"\n");$s=10;case 10:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;$s=9;continue;case 8:if(""===m){$s=11;continue;}$s=12;continue;case 11:o=i.WriteString("\n");$s=14;case 14:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}o;$s=13;continue;case 12:p=i.WriteString(" "+m+"\n");$s=15;case 15:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;case 13:case 9:k++;$s=5;continue;case 6:s=(q=c.NodeWriterStack,r=c.NodeWriterStack.$length-1>>0,((r<0||r>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+r])).Write(i.Bytes());$s=16;case 16:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;c.BaseRenderer.Writer=(t=c.NodeWriterStack,u=c.NodeWriterStack.$length-1>>0,((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u]));case 3:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderFootnotesDef,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s};return $f;};BI.prototype.renderFootnotesDef=function(a,b){return this.$val.renderFootnotesDef(a,b);};BI.ptr.prototype.renderEmojiAlias=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderEmojiAlias,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderEmojiAlias=function(a,b){return this.$val.renderEmojiAlias(a,b);};BI.ptr.prototype.renderEmojiImg=function(a,b){var a,b,c;c=this;return 2;};BI.prototype.renderEmojiImg=function(a,b){return this.$val.renderEmojiImg(a,b);};BI.ptr.prototype.renderEmojiUnicode=function(a,b){var a,b,c;c=this;return 2;};BI.prototype.renderEmojiUnicode=function(a,b){return this.$val.renderEmojiUnicode(a,b);};BI.ptr.prototype.renderEmoji=function(a,b){var a,b,c;c=this;return 2;};BI.prototype.renderEmoji=function(a,b){return this.$val.renderEmoji(a,b);};BI.ptr.prototype.renderTableCell=function(a,b){var{a,b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=a.TableCellContentMaxWidth-a.TableCellContentWidth>>0;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(124);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!c.BaseRenderer.Options.ProtyleWYSIWYG){$s=5;continue;}$s=6;continue;case 5:$r=c.BaseRenderer.WriteByte(32);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=a.TableCellAlign;if(e===(2)){$s=9;continue;}if(e===(3)){$s=10;continue;}$s=11;continue;case 9:$r=c.BaseRenderer.Write(A.Repeat(new CI([32]),(f=d/2,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero"))));$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=11;continue;case 10:$r=c.BaseRenderer.Write(A.Repeat(new CI([32]),d));$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 11:case 8:case 6:$s=3;continue;case 2:if(!c.BaseRenderer.Options.ProtyleWYSIWYG){$s=14;continue;}$s=15;continue;case 14:g=a.TableCellAlign;if(g===(2)){$s=17;continue;}if(g===(3)){$s=18;continue;}$s=19;continue;case 17:$r=c.BaseRenderer.Write(A.Repeat(new CI([32]),(h=d/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"))));$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=20;continue;case 18:$s=20;continue;case 19:$r=c.BaseRenderer.Write(A.Repeat(new CI([32]),d));$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 20:case 16:$r=c.BaseRenderer.WriteByte(32);$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 15:case 3:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderTableCell,$c:true,$r,a,b,c,d,e,f,g,h,$s};return $f;};BI.prototype.renderTableCell=function(a,b){return this.$val.renderTableCell(a,b);};BI.ptr.prototype.renderTableRow=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("|\n");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderTableRow,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderTableRow=function(a,b){return this.$val.renderTableRow(a,b);};BI.ptr.prototype.renderTableHead=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!b){$s=1;continue;}$s=2;continue;case 1:d=a.FirstChild;e=d.FirstChild;case 3:if(!(!(CM.nil===e))){$s=4;continue;}if(456===e.Type){e=e.Next;$s=3;continue;}f=e.TableCellAlign;g=f;if(g===(0)){$s=6;continue;}if(g===(1)){$s=7;continue;}if(g===(2)){$s=8;continue;}if(g===(3)){$s=9;continue;}$s=10;continue;case 6:$r=c.BaseRenderer.WriteString("| -");$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=e.TableCellContentMaxWidth-1>>0;if(0<h){$s=12;continue;}$s=13;continue;case 12:$r=c.BaseRenderer.Write(A.Repeat(new CI([45]),h));$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 13:if(!c.BaseRenderer.Options.ProtyleWYSIWYG){$s=15;continue;}$s=16;continue;case 15:$r=c.BaseRenderer.WriteByte(32);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 16:$s=10;continue;case 7:$r=c.BaseRenderer.WriteString("| :-");$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=e.TableCellContentMaxWidth-2>>0;if(0<i){$s=19;continue;}$s=20;continue;case 19:$r=c.BaseRenderer.Write(A.Repeat(new CI([45]),i));$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 20:if(!c.BaseRenderer.Options.ProtyleWYSIWYG){$s=22;continue;}$s=23;continue;case 22:$r=c.BaseRenderer.WriteByte(32);$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 23:$s=10;continue;case 8:$r=c.BaseRenderer.WriteString("| :-");$s=25;case 25:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=e.TableCellContentMaxWidth-3>>0;if(0<j){$s=26;continue;}$s=27;continue;case 26:$r=c.BaseRenderer.Write(A.Repeat(new CI([45]),j));$s=28;case 28:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 27:$r=c.BaseRenderer.WriteString(": ");$s=29;case 29:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 9:$r=c.BaseRenderer.WriteString("| -");$s=30;case 30:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=e.TableCellContentMaxWidth-2>>0;if(0<k){$s=31;continue;}$s=32;continue;case 31:$r=c.BaseRenderer.Write(A.Repeat(new CI([45]),k));$s=33;case 33:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 32:$r=c.BaseRenderer.WriteString(": ");$s=34;case 34:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:case 5:e=e.Next;$s=3;continue;case 4:$r=c.BaseRenderer.WriteString("|\n");$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderTableHead,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,$s};return $f;};BI.prototype.renderTableHead=function(a,b){return this.$val.renderTableHead(a,b);};BI.ptr.prototype.renderTable=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];c[0]=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=DD.nil;d=$append(d,new CO([]));e=a.ChildByType(107);if(CM.nil===e||CM.nil===e.FirstChild||CM.nil===a.FirstChild){$s=-1;return 1;}f=e.FirstChild.FirstChild;while(true){if(!(!(CM.nil===f))){break;}(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]=$append((0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]),f));f=f.Next;}g=1;h=a.FirstChild.Next;while(true){if(!(!(CM.nil===h))){break;}d=$append(d,new CO([]));i=h.FirstChild;while(true){if(!(!(CM.nil===i))){break;}((g<0||g>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+g]=$append(((g<0||g>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+g]),i));i=i.Next;}g=g+(1)>>0;h=h.Next;}j=0;k=0;case 4:if(!(k<(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]).$length)){$s=5;continue;}l=0;case 6:if(!(l<d.$length&&k<((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l]).$length)){$s=7;continue;}m=[m];o=(n=((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l]),((k<0||k>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+k])).TokenLen();$s=8;case 8:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}(p=((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l]),((k<0||k>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+k])).TableCellContentWidth=o;if(c[0].BaseRenderer.Options.AutoSpace){$s=9;continue;}$s=10;continue;case 9:m[0]=0;$r=H.Walk((q=((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l]),((k<0||k>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+k])),(function(c,m){return function(r,s){var r,s;if(!s){return 2;}m[0]=m[0]+((c[0].BaseRenderer.Space(r.Tokens).$length-r.Tokens.$length>>0))>>0;return 2;};})(c,m));$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(s=((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l]),((k<0||k>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+k])).TableCellContentWidth=(r=((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l]),((k<0||k>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+k])).TableCellContentWidth+(m[0])>>0;case 10:if(j<(t=((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l]),((k<0||k>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+k])).TableCellContentWidth){j=(u=((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l]),((k<0||k>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+k])).TableCellContentWidth;}l=l+(1)>>0;$s=6;continue;case 7:v=0;while(true){if(!(v<d.$length&&k<((v<0||v>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+v]).$length)){break;}(w=((v<0||v>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+v]),((k<0||k>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+k])).TableCellContentMaxWidth=j;v=v+(1)>>0;}j=0;k=k+(1)>>0;$s=4;continue;case 5:$s=3;continue;case 2:$r=c[0].BaseRenderer.Newline();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!c[0].BaseRenderer.isLastNode(c[0].BaseRenderer.Tree.Root,a)){$s=13;continue;}$s=14;continue;case 13:if(c[0].withoutKramdownBlockIAL(a)){$s=15;continue;}$s=16;continue;case 15:$r=c[0].BaseRenderer.WriteByte(10);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 16:case 14:case 3:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderTable,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$s};return $f;};BI.prototype.renderTable=function(a,b){return this.$val.renderTable(a,b);};BI.ptr.prototype.renderStrikethrough=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderStrikethrough,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderStrikethrough=function(a,b){return this.$val.renderStrikethrough(a,b);};BI.ptr.prototype.renderStrikethrough1OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(126);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderStrikethrough1OpenMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderStrikethrough1OpenMarker=function(a,b){return this.$val.renderStrikethrough1OpenMarker(a,b);};BI.ptr.prototype.renderStrikethrough1CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(126);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderStrikethrough1CloseMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderStrikethrough1CloseMarker=function(a,b){return this.$val.renderStrikethrough1CloseMarker(a,b);};BI.ptr.prototype.renderStrikethrough2OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("~~");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderStrikethrough2OpenMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderStrikethrough2OpenMarker=function(a,b){return this.$val.renderStrikethrough2OpenMarker(a,b);};BI.ptr.prototype.renderStrikethrough2CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("~~");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderStrikethrough2CloseMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderStrikethrough2CloseMarker=function(a,b){return this.$val.renderStrikethrough2CloseMarker(a,b);};BI.ptr.prototype.renderLinkTitle=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(34);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(34);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderLinkTitle,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderLinkTitle=function(a,b){return this.$val.renderLinkTitle(a,b);};BI.ptr.prototype.renderLinkDest=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=a.Tokens;d=c.BaseRenderer.LinkPath(d);d=(new CI($stringToBytes(c.BaseRenderer.EncodeLinkSpace(($bytesToString(d))))));$r=c.BaseRenderer.Write(d);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderLinkDest,$c:true,$r,a,b,c,d,$s};return $f;};BI.prototype.renderLinkDest=function(a,b){return this.$val.renderLinkDest(a,b);};BI.ptr.prototype.renderLinkSpace=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(32);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderLinkSpace,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderLinkSpace=function(a,b){return this.$val.renderLinkSpace(a,b);};BI.ptr.prototype.renderLinkText=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=CI.nil;if(c.BaseRenderer.Options.AutoSpace){d=c.BaseRenderer.Space(a.Tokens);}else{d=a.Tokens;}$r=c.BaseRenderer.Write(d);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderLinkText,$c:true,$r,a,b,c,d,$s};return $f;};BI.prototype.renderLinkText=function(a,b){return this.$val.renderLinkText(a,b);};BI.ptr.prototype.renderCloseParen=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(41);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderCloseParen,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderCloseParen=function(a,b){return this.$val.renderCloseParen(a,b);};BI.ptr.prototype.renderOpenParen=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(40);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderOpenParen,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderOpenParen=function(a,b){return this.$val.renderOpenParen(a,b);};BI.ptr.prototype.renderGreater=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(62);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderGreater,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderGreater=function(a,b){return this.$val.renderGreater(a,b);};BI.ptr.prototype.renderLess=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(60);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderLess,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderLess=function(a,b){return this.$val.renderLess(a,b);};BI.ptr.prototype.renderCloseBrace=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(125);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderCloseBrace,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderCloseBrace=function(a,b){return this.$val.renderCloseBrace(a,b);};BI.ptr.prototype.renderOpenBrace=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(123);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderOpenBrace,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderOpenBrace=function(a,b){return this.$val.renderOpenBrace(a,b);};BI.ptr.prototype.renderCloseBracket=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(93);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderCloseBracket,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderCloseBracket=function(a,b){return this.$val.renderCloseBracket(a,b);};BI.ptr.prototype.renderOpenBracket=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(91);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderOpenBracket,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderOpenBracket=function(a,b){return this.$val.renderOpenBracket(a,b);};BI.ptr.prototype.renderBang=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(33);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderBang,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderBang=function(a,b){return this.$val.renderBang(a,b);};BI.ptr.prototype.renderImage=function(a,b){var a,b,c;c=this;return 2;};BI.prototype.renderImage=function(a,b){return this.$val.renderImage(a,b);};BI.ptr.prototype.renderLink=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.LinkTextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(3===a.LinkType){$s=5;continue;}$s=6;continue;case 5:d=a.ChildByType(40).Tokens;if(A.Equal(d,a.LinkRefLabel)){$s=7;continue;}$s=8;continue;case 7:$r=c.BaseRenderer.WriteString("["+K.BytesToStr(d)+"]");$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=9;continue;case 8:$r=c.BaseRenderer.WriteString("["+K.BytesToStr(d)+"]["+K.BytesToStr(a.LinkRefLabel)+"]");$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 9:$s=-1;return 1;case 6:if(1===a.LinkType){$s=12;continue;}$s=13;continue;case 12:e=a.ChildByType(41).Tokens;$r=c.BaseRenderer.Write(e);$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 1;case 13:$s=3;continue;case 2:$r=c.BaseRenderer.LinkTextAutoSpaceNext(a);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderLink,$c:true,$r,a,b,c,d,e,$s};return $f;};BI.prototype.renderLink=function(a,b){return this.$val.renderLink(a,b);};BI.ptr.prototype.renderHTML=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.Tokens;d=c.BaseRenderer.tagSrcPath(d);$r=c.BaseRenderer.Write(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!c.BaseRenderer.isLastNode(c.BaseRenderer.Tree.Root,a)){$s=6;continue;}$s=7;continue;case 6:if(c.withoutKramdownBlockIAL(a)){$s=8;continue;}$s=9;continue;case 8:$r=c.BaseRenderer.WriteByte(10);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 9:case 7:case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderHTML,$c:true,$r,a,b,c,d,$s};return $f;};BI.prototype.renderHTML=function(a,b){return this.$val.renderHTML(a,b);};BI.ptr.prototype.renderInlineHTML=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderInlineHTML,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderInlineHTML=function(a,b){return this.$val.renderInlineHTML(a,b);};BI.ptr.prototype.renderDocument=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:c.BaseRenderer.Writer=new A.Buffer.ptr(CI.nil,0,0);c.NodeWriterStack=$append(c.NodeWriterStack,c.BaseRenderer.Writer);$s=3;continue;case 2:c.NodeWriterStack=$subslice(c.NodeWriterStack,0,(c.NodeWriterStack.$length-1>>0));d=CI.nil;if(c.BaseRenderer.Options.KeepParagraphBeginningSpace){d=A.TrimRight(c.BaseRenderer.Writer.Bytes()," \t\n");d=A.TrimLeft(d,"\n");}else{d=A.Trim(c.BaseRenderer.Writer.Bytes()," \t\n");}c.BaseRenderer.Writer.Reset();$r=c.BaseRenderer.Write(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(10);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderDocument,$c:true,$r,a,b,c,d,$s};return $f;};BI.prototype.renderDocument=function(a,b){return this.$val.renderDocument(a,b);};BI.ptr.prototype.renderParagraph=function(a,b){var{a,b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(c.BaseRenderer.Options.ChineseParagraphBeginningSpace&&(0===a.Parent.Type)){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.WriteString("\xE3\x80\x80\xE3\x80\x80");$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:$s=3;continue;case 2:if(!c.BaseRenderer.Options.KeepParagraphBeginningSpace&&!(CM.nil===a.FirstChild)){$s=7;continue;}$s=8;continue;case 7:d=A.TrimSpace(a.FirstChild.Tokens);$s=9;case 9:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}a.FirstChild.Tokens=d;case 8:if(a.ParentIs(109,CN.nil)){$s=10;continue;}$s=11;continue;case 10:if(!(CM.nil===a.Next)&&!((16===a.Next.Type))){$s=12;continue;}$s=13;continue;case 12:$r=c.BaseRenderer.WriteString("<br /><br />");$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 13:$s=-1;return 2;case 11:if(c.withoutKramdownBlockIAL(a)){$s=15;continue;}$s=16;continue;case 15:$r=c.BaseRenderer.Newline();$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 16:e=false;f=false;g=a.Parent;if(!(CM.nil===g)){if(8===g.Type){h=g;if(!(CM.nil===h.Parent)&&!(CP.nil===h.Parent.ListData)){e=h.Parent.ListData.Tight;i=h.Next;if(CM.nil===i){j=a.Next;f=CM.nil===j;}}else{e=true;}}}if(!e||(f)){$s=18;continue;}$s=19;continue;case 18:if(c.withoutKramdownBlockIAL(a)){$s=20;continue;}$s=21;continue;case 20:$r=c.BaseRenderer.WriteByte(10);$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 21:case 19:case 3:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderParagraph,$c:true,$r,a,b,c,d,e,f,g,h,i,j,$s};return $f;};BI.prototype.renderParagraph=function(a,b){return this.$val.renderParagraph(a,b);};BI.ptr.prototype.renderText=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=CI.nil;if(c.BaseRenderer.Options.AutoSpace){d=c.BaseRenderer.Space(a.Tokens);}else{d=a.Tokens;}if(c.BaseRenderer.Options.FixTermTypo){$s=3;continue;}$s=4;continue;case 3:e=c.BaseRenderer.FixTermTypo(d);$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;case 4:if((CM.nil===a.Previous||(100===a.Previous.Type))&&!(CM.nil===a.Parent.Parent)&&!(CP.nil===a.Parent.Parent.ListData)&&(3===a.Parent.Parent.ListData.Typ)){if(32===c.BaseRenderer.LastOut){d=A.TrimPrefix(d,(new CI($stringToBytes(" "))));if(A.HasPrefix(d,(new CI($stringToBytes("\xE2\x80\xB8 "))))){d=A.TrimPrefix(d,(new CI($stringToBytes("\xE2\x80\xB8 "))));d=$appendSlice(F.CaretTokens,d);}}}$r=c.BaseRenderer.Write(d);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderText,$c:true,$r,a,b,c,d,e,$s};return $f;};BI.prototype.renderText=function(a,b){return this.$val.renderText(a,b);};BI.ptr.prototype.renderCodeSpan=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(c.BaseRenderer.Options.AutoSpace){$s=4;continue;}$s=5;continue;case 4:d=a.PreviousNodeText();$s=6;case 6:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!(""===e)){$s=7;continue;}$s=8;continue;case 7:f=E.DecodeLastRuneInString(e);g=f[0];if(D.IsLetter(g)||D.IsDigit(g)){$s=9;continue;}$s=10;continue;case 9:$r=c.BaseRenderer.WriteByte(32);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:case 8:case 5:$s=3;continue;case 2:if(c.BaseRenderer.Options.AutoSpace){$s=12;continue;}$s=13;continue;case 12:h=a.NextNodeText();$s=14;case 14:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;if(!(""===i)){$s=15;continue;}$s=16;continue;case 15:j=E.DecodeRuneInString(i);k=j[0];if(D.IsLetter(k)||D.IsDigit(k)){$s=17;continue;}$s=18;continue;case 17:$r=c.BaseRenderer.WriteByte(32);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 18:case 16:case 13:case 3:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderCodeSpan,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,$s};return $f;};BI.prototype.renderCodeSpan=function(a,b){return this.$val.renderCodeSpan(a,b);};BI.ptr.prototype.renderCodeSpanOpenMarker=function(a,b){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(96);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(1<a.Parent.CodeMarkerLen){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.WriteByte(96);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=K.BytesToStr(a.Next.Tokens);e=E.DecodeRuneInString(d);f=e[0];if(96===f){$s=7;continue;}$s=8;continue;case 7:$r=c.BaseRenderer.WriteByte(32);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 8:case 5:case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderCodeSpanOpenMarker,$c:true,$r,a,b,c,d,e,f,$s};return $f;};BI.prototype.renderCodeSpanOpenMarker=function(a,b){return this.$val.renderCodeSpanOpenMarker(a,b);};BI.ptr.prototype.renderCodeSpanContent=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=a.Tokens;if(a.ParentIs(109,CN.nil)){d=A.ReplaceAll(d,(new CI($stringToBytes("\\|"))),(new CI($stringToBytes("|"))));d=A.ReplaceAll(d,(new CI($stringToBytes("|"))),(new CI($stringToBytes("\\|"))));d=A.ReplaceAll(d,(new CI($stringToBytes("<br/>"))),CI.nil);}$r=c.BaseRenderer.Write(d);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderCodeSpanContent,$c:true,$r,a,b,c,d,$s};return $f;};BI.prototype.renderCodeSpanContent=function(a,b){return this.$val.renderCodeSpanContent(a,b);};BI.ptr.prototype.renderCodeSpanCloseMarker=function(a,b){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(1<a.Parent.CodeMarkerLen){$s=3;continue;}$s=4;continue;case 3:d=K.BytesToStr(a.Previous.Tokens);e=E.DecodeLastRuneInString(d);f=e[0];if(96===f){$s=5;continue;}$s=6;continue;case 5:$r=c.BaseRenderer.WriteByte(32);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:$r=c.BaseRenderer.WriteByte(96);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:$r=c.BaseRenderer.WriteByte(96);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderCodeSpanCloseMarker,$c:true,$r,a,b,c,d,e,f,$s};return $f;};BI.prototype.renderCodeSpanCloseMarker=function(a,b){return this.$val.renderCodeSpanCloseMarker(a,b);};BI.ptr.prototype.renderInlineMath=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(c.BaseRenderer.Options.AutoSpace){$s=4;continue;}$s=5;continue;case 4:d=a.PreviousNodeText();$s=6;case 6:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!(""===e)){$s=7;continue;}$s=8;continue;case 7:f=E.DecodeLastRuneInString(e);g=f[0];if(D.IsLetter(g)||D.IsDigit(g)){$s=9;continue;}$s=10;continue;case 9:$r=c.BaseRenderer.WriteByte(32);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:case 8:case 5:$s=3;continue;case 2:if(c.BaseRenderer.Options.AutoSpace){$s=12;continue;}$s=13;continue;case 12:h=a.NextNodeText();$s=14;case 14:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;if(!(""===i)){$s=15;continue;}$s=16;continue;case 15:j=E.DecodeRuneInString(i);k=j[0];if(D.IsLetter(k)||D.IsDigit(k)){$s=17;continue;}$s=18;continue;case 17:$r=c.BaseRenderer.WriteByte(32);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 18:case 16:case 13:case 3:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderInlineMath,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,$s};return $f;};BI.prototype.renderInlineMath=function(a,b){return this.$val.renderInlineMath(a,b);};BI.ptr.prototype.renderInlineMathOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(36);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderInlineMathOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderInlineMathOpenMarker=function(a,b){return this.$val.renderInlineMathOpenMarker(a,b);};BI.ptr.prototype.renderInlineMathContent=function(a,b){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=G.UnescapeHTML(a.Tokens);e=($bytesToString(d));if(a.ParentIs(109,CN.nil)){$s=3;continue;}$s=4;continue;case 3:f=I.RepeatBackslashBeforePipe(e);$s=5;case 5:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}e=f;e=C.ReplaceAll(e,"\n","<br/>");case 4:e=C.ReplaceAll(e,"_esc_newline_"," ");$r=c.BaseRenderer.WriteString(e);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderInlineMathContent,$c:true,$r,a,b,c,d,e,f,$s};return $f;};BI.prototype.renderInlineMathContent=function(a,b){return this.$val.renderInlineMathContent(a,b);};BI.ptr.prototype.renderInlineMathCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(36);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderInlineMathCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderInlineMathCloseMarker=function(a,b){return this.$val.renderInlineMathCloseMarker(a,b);};BI.ptr.prototype.renderMathBlockCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(J.MathBlockMarker);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(10);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderMathBlockCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderMathBlockCloseMarker=function(a,b){return this.$val.renderMathBlockCloseMarker(a,b);};BI.ptr.prototype.renderMathBlockContent=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=G.UnescapeHTML(a.Tokens);$r=c.BaseRenderer.Write(d);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(10);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderMathBlockContent,$c:true,$r,a,b,c,d,$s};return $f;};BI.prototype.renderMathBlockContent=function(a,b){return this.$val.renderMathBlockContent(a,b);};BI.ptr.prototype.renderMathBlockOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(J.MathBlockMarker);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(10);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderMathBlockOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderMathBlockOpenMarker=function(a,b){return this.$val.renderMathBlockOpenMarker(a,b);};BI.ptr.prototype.renderMathBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;$r=c.BaseRenderer.Newline();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!b&&!c.BaseRenderer.isLastNode(c.BaseRenderer.Tree.Root,a)){$s=2;continue;}$s=3;continue;case 2:if(c.withoutKramdownBlockIAL(a)){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.WriteByte(10);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:case 3:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderMathBlock,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderMathBlock=function(a,b){return this.$val.renderMathBlock(a,b);};BI.ptr.prototype.renderCodeBlockCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(a.Tokens);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!c.BaseRenderer.isLastNode(c.BaseRenderer.Tree.Root,a)){$s=6;continue;}$s=7;continue;case 6:if(c.withoutKramdownBlockIAL(a.Parent)){$s=8;continue;}$s=9;continue;case 8:$r=c.BaseRenderer.WriteByte(10);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 9:case 7:case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderCodeBlockCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderCodeBlockCloseMarker=function(a,b){return this.$val.renderCodeBlockCloseMarker(a,b);};BI.ptr.prototype.renderCodeBlockCode=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=a.Tokens;e=a.Parent.ChildByType(14);if(!(CM.nil===e)&&BA(($bytesToString(e.CodeBlockInfo)))){d=G.UnescapeHTML(d);}$r=c.BaseRenderer.Write(d);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderCodeBlockCode,$c:true,$r,a,b,c,d,e,$s};return $f;};BI.prototype.renderCodeBlockCode=function(a,b){return this.$val.renderCodeBlockCode(a,b);};BI.ptr.prototype.renderCodeBlockInfoMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.CodeBlockInfo);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(10);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderCodeBlockInfoMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderCodeBlockInfoMarker=function(a,b){return this.$val.renderCodeBlockInfoMarker(a,b);};BI.ptr.prototype.renderCodeBlockOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderCodeBlockOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderCodeBlockOpenMarker=function(a,b){return this.$val.renderCodeBlockOpenMarker(a,b);};BI.ptr.prototype.renderCodeBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!a.IsFencedCodeBlock){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.Write(A.Repeat(new CI([96]),3));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(10);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(a.FirstChild.Tokens);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(A.Repeat(new CI([96]),3));$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!c.BaseRenderer.isLastNode(c.BaseRenderer.Tree.Root,a)){$s=11;continue;}$s=12;continue;case 11:if(c.withoutKramdownBlockIAL(a)){$s=13;continue;}$s=14;continue;case 13:$r=c.BaseRenderer.WriteByte(10);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 14:case 12:$s=-1;return 1;case 5:case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderCodeBlock,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderCodeBlock=function(a,b){return this.$val.renderCodeBlock(a,b);};BI.ptr.prototype.renderEmphasis=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderEmphasis,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderEmphasis=function(a,b){return this.$val.renderEmphasis(a,b);};BI.ptr.prototype.renderEmAsteriskOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(42);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderEmAsteriskOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderEmAsteriskOpenMarker=function(a,b){return this.$val.renderEmAsteriskOpenMarker(a,b);};BI.ptr.prototype.renderEmAsteriskCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(42);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderEmAsteriskCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderEmAsteriskCloseMarker=function(a,b){return this.$val.renderEmAsteriskCloseMarker(a,b);};BI.ptr.prototype.renderEmUnderscoreOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(95);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderEmUnderscoreOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderEmUnderscoreOpenMarker=function(a,b){return this.$val.renderEmUnderscoreOpenMarker(a,b);};BI.ptr.prototype.renderEmUnderscoreCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(95);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderEmUnderscoreCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderEmUnderscoreCloseMarker=function(a,b){return this.$val.renderEmUnderscoreCloseMarker(a,b);};BI.ptr.prototype.renderStrong=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderStrong,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderStrong=function(a,b){return this.$val.renderStrong(a,b);};BI.ptr.prototype.renderStrongA6kOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("**");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderStrongA6kOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderStrongA6kOpenMarker=function(a,b){return this.$val.renderStrongA6kOpenMarker(a,b);};BI.ptr.prototype.renderStrongA6kCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("**");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderStrongA6kCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderStrongA6kCloseMarker=function(a,b){return this.$val.renderStrongA6kCloseMarker(a,b);};BI.ptr.prototype.renderStrongU8eOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("__");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderStrongU8eOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderStrongU8eOpenMarker=function(a,b){return this.$val.renderStrongU8eOpenMarker(a,b);};BI.ptr.prototype.renderStrongU8eCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("__");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderStrongU8eCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderStrongU8eCloseMarker=function(a,b){return this.$val.renderStrongU8eCloseMarker(a,b);};BI.ptr.prototype.renderBlockquote=function(a,b){var{a,aa,ab,ac,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:c.BaseRenderer.Writer=new A.Buffer.ptr(CI.nil,0,0);c.NodeWriterStack=$append(c.NodeWriterStack,c.BaseRenderer.Writer);$s=3;continue;case 2:f=(d=c.NodeWriterStack,e=c.NodeWriterStack.$length-1>>0,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]));c.NodeWriterStack=$subslice(c.NodeWriterStack,0,(c.NodeWriterStack.$length-1>>0));g=new A.Buffer.ptr(CI.nil,0,0);h=f.Bytes();i=A.Split(h,new CI([10]));j=i.$length;if(2<j&&I.IsBlank((k=j-1>>0,((k<0||k>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+k])))&&I.IsBlank((l=j-2>>0,((l<0||l>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+l])))){i=$subslice(i,0,(j-1>>0));}if(1===c.NodeWriterStack.$length){j=i.$length;if(1<j&&I.IsBlank((m=j-1>>0,((m<0||m>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+m])))){i=$subslice(i,0,(j-1>>0));}}j=i.$length;n=i;o=0;case 4:if(!(o<n.$length)){$s=5;continue;}p=((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o]);if(0===p.$length){$s=6;continue;}$s=7;continue;case 6:q=g.WriteString(">\n");$s=8;case 8:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;o++;$s=4;continue;case 7:if(62===(0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])){$s=9;continue;}$s=10;continue;case 9:r=g.WriteString(">");$s=12;case 12:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;$s=11;continue;case 10:s=g.WriteString("> ");$s=13;case 13:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;case 11:t=g.Write(p);$s=14;case 14:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}t;u=g.WriteByte(10);$s=15;case 15:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}u;o++;$s=4;continue;case 5:v=A.TrimSpace(g.Bytes());$s=16;case 16:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}h=v;f.Reset();w=f.Write(h);$s=17;case 17:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;z=(x=c.NodeWriterStack,y=c.NodeWriterStack.$length-1>>0,((y<0||y>=x.$length)?($throwRuntimeError("index out of range"),undefined):x.$array[x.$offset+y])).Write(f.Bytes());$s=18;case 18:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}z;c.BaseRenderer.Writer=(aa=c.NodeWriterStack,ab=c.NodeWriterStack.$length-1>>0,((ab<0||ab>=aa.$length)?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+ab]));ac=A.TrimSpace(c.BaseRenderer.Writer.Bytes());$s=19;case 19:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}h=ac;c.BaseRenderer.Writer.Reset();$r=c.BaseRenderer.Write(h);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!a.ParentIs(109,CN.nil)){$s=21;continue;}$s=22;continue;case 21:if(c.withoutKramdownBlockIAL(a)){$s=23;continue;}$s=24;continue;case 23:$r=c.BaseRenderer.WriteString("\n\n");$s=25;case 25:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 24:case 22:case 3:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderBlockquote,$c:true,$r,a,aa,ab,ac,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};BI.prototype.renderBlockquote=function(a,b){return this.$val.renderBlockquote(a,b);};BI.ptr.prototype.renderBlockquoteMarker=function(a,b){var a,b,c;c=this;return 2;};BI.prototype.renderBlockquoteMarker=function(a,b){return this.$val.renderBlockquoteMarker(a,b);};BI.ptr.prototype.renderHeading=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(!a.HeadingSetext){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.Write(A.Repeat(new CI([35]),a.HeadingLevel));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(32);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:$s=3;continue;case 2:if(a.HeadingSetext){$s=8;continue;}$s=9;continue;case 8:$r=c.BaseRenderer.WriteByte(10);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=c.BaseRenderer.setextHeadingLen(a);$s=11;case 11:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(1===a.HeadingLevel){$s=12;continue;}if(2===a.HeadingLevel){$s=13;continue;}$s=14;continue;case 12:$r=c.BaseRenderer.WriteString(C.Repeat("=",e));$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=14;continue;case 13:$r=c.BaseRenderer.WriteString(C.Repeat("-",e));$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 14:case 9:if(!a.ParentIs(109,CN.nil)){$s=17;continue;}$s=18;continue;case 17:if(c.withoutKramdownBlockIAL(a)){$s=19;continue;}$s=20;continue;case 19:$r=c.BaseRenderer.Newline();$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(10);$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 20:case 18:case 3:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderHeading,$c:true,$r,a,b,c,d,e,$s};return $f;};BI.prototype.renderHeading=function(a,b){return this.$val.renderHeading(a,b);};BI.ptr.prototype.renderHeadingC8hMarker=function(a,b){var a,b,c;c=this;return 2;};BI.prototype.renderHeadingC8hMarker=function(a,b){return this.$val.renderHeadingC8hMarker(a,b);};BI.ptr.prototype.renderHeadingID=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString(" {"+K.BytesToStr(a.Tokens)+"}");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderHeadingID,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderHeadingID=function(a,b){return this.$val.renderHeadingID(a,b);};BI.ptr.prototype.renderList=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:c.BaseRenderer.Writer=new A.Buffer.ptr(CI.nil,0,0);c.NodeWriterStack=$append(c.NodeWriterStack,c.BaseRenderer.Writer);$s=3;continue;case 2:f=(d=c.NodeWriterStack,e=c.NodeWriterStack.$length-1>>0,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]));c.NodeWriterStack=$subslice(c.NodeWriterStack,0,(c.NodeWriterStack.$length-1>>0));i=(g=c.NodeWriterStack,h=c.NodeWriterStack.$length-1>>0,((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h])).Write(f.Bytes());$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;c.BaseRenderer.Writer=(j=c.NodeWriterStack,k=c.NodeWriterStack.$length-1>>0,((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]));l=A.TrimSpace(c.BaseRenderer.Writer.Bytes());$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;c.BaseRenderer.Writer.Reset();$r=c.BaseRenderer.Write(m);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!a.ParentIs(109,CN.nil)){$s=7;continue;}$s=8;continue;case 7:if(c.withoutKramdownBlockIAL(a)){$s=9;continue;}$s=10;continue;case 9:$r=c.BaseRenderer.WriteString("\n\n");$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:case 8:case 3:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderList,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,$s};return $f;};BI.prototype.renderList=function(a,b){return this.$val.renderList(a,b);};BI.ptr.prototype.renderListItem=function(a,b){var{a,aa,ab,ac,ad,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:c.BaseRenderer.Writer=new A.Buffer.ptr(CI.nil,0,0);c.NodeWriterStack=$append(c.NodeWriterStack,c.BaseRenderer.Writer);if(c.BaseRenderer.Options.KramdownBlockIAL&&!(CM.nil===a.Next)&&(455===a.Next.Type)){$s=4;continue;}$s=5;continue;case 4:d=a.Next;$r=c.BaseRenderer.Write(d.Tokens);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:if(!(CM.nil===a.FirstChild)&&(7===a.FirstChild.Type)){$s=7;continue;}$s=8;continue;case 7:$r=c.BaseRenderer.Newline();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 8:$s=3;continue;case 2:g=(e=c.NodeWriterStack,f=c.NodeWriterStack.$length-1>>0,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));c.NodeWriterStack=$subslice(c.NodeWriterStack,0,(c.NodeWriterStack.$length-1>>0));h=a.ListData.Marker.$length+1>>0;if((1===a.ListData.Typ)||((3===a.ListData.Typ)&&(0===a.ListData.BulletChar))){h=h+(1)>>0;}i=A.Repeat(new CI([32]),h);j=new A.Buffer.ptr(CI.nil,0,0);k=g.Bytes();if(A.HasPrefix(k,(new CI($stringToBytes("* "))))){k=$appendSlice((new CI($stringToBytes(" \n\n"))),k);}l=A.Split(k,new CI([10]));m=l;n=0;case 10:if(!(n<m.$length)){$s=11;continue;}o=((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]);if(0===o.$length){$s=12;continue;}$s=13;continue;case 12:p=j.WriteByte(10);$s=14;case 14:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;n++;$s=10;continue;case 13:q=j.Write(i);$s=15;case 15:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;r=j.Write(o);$s=16;case 16:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;s=j.WriteByte(10);$s=17;case 17:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;n++;$s=10;continue;case 11:k=j.Bytes();if(h<k.$length){k=$subslice(k,h);}t=new A.Buffer.ptr(CI.nil,0,0);if((1===a.ListData.Typ)||((3===a.ListData.Typ)&&(0===a.ListData.BulletChar))){$s=18;continue;}$s=19;continue;case 18:u=t.WriteString(B.Itoa(a.ListData.Num)+($encodeRune(a.ListData.Delimiter)));$s=21;case 21:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}u;$s=20;continue;case 19:v=t.Write(a.ListData.Marker);$s=22;case 22:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;case 20:w=t.WriteByte(32);$s=23;case 23:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;k=$appendSlice(t.Bytes(),k);if(a.ParentIs(109,CN.nil)){k=A.ReplaceAll(k,(new CI($stringToBytes("\n"))),CI.nil);}g.Reset();x=g.Write(k);$s=24;case 24:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}x;k=g.Bytes();if(a.ParentIs(109,CN.nil)){k=A.ReplaceAll(k,(new CI($stringToBytes("\n"))),CI.nil);}aa=(y=c.NodeWriterStack,z=c.NodeWriterStack.$length-1>>0,((z<0||z>=y.$length)?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+z])).Write(k);$s=25;case 25:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;c.BaseRenderer.Writer=(ab=c.NodeWriterStack,ac=c.NodeWriterStack.$length-1>>0,((ac<0||ac>=ab.$length)?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+ac]));ad=A.TrimSpace(c.BaseRenderer.Writer.Bytes());$s=26;case 26:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}k=ad;c.BaseRenderer.Writer.Reset();$r=c.BaseRenderer.Write(k);$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!a.ParentIs(109,CN.nil)){$s=28;continue;}$s=29;continue;case 28:$r=c.BaseRenderer.WriteString("\n");$s=30;case 30:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 29:case 3:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderListItem,$c:true,$r,a,aa,ab,ac,ad,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};BI.prototype.renderListItem=function(a,b){return this.$val.renderListItem(a,b);};BI.ptr.prototype.renderTaskListItemMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(91);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(a.TaskListItemChecked){$s=5;continue;}$s=6;continue;case 5:$r=c.BaseRenderer.WriteByte(88);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=7;continue;case 6:$r=c.BaseRenderer.WriteByte(32);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:$r=c.BaseRenderer.WriteByte(93);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteByte(32);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderTaskListItemMarker,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderTaskListItemMarker=function(a,b){return this.$val.renderTaskListItemMarker(a,b);};BI.ptr.prototype.renderThematicBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(a.ParentIs(109,CN.nil)){$s=3;continue;}$s=4;continue;case 3:$r=c.BaseRenderer.WriteString("<hr/>");$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=5;continue;case 4:$r=c.BaseRenderer.WriteString("---");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c.withoutKramdownBlockIAL(a)){$s=8;continue;}$s=9;continue;case 8:$r=c.BaseRenderer.WriteByte(10);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(10);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 9:case 5:case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderThematicBreak,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderThematicBreak=function(a,b){return this.$val.renderThematicBreak(a,b);};BI.ptr.prototype.renderHardBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(!c.BaseRenderer.Options.SoftBreak2HardBreak){$s=3;continue;}$s=4;continue;case 3:$r=c.BaseRenderer.WriteString("\\\n");$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=5;continue;case 4:if(a.ParentIs(109,CN.nil)){$s=7;continue;}$s=8;continue;case 7:$r=c.BaseRenderer.WriteString("<br/>");$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=9;continue;case 8:$r=c.BaseRenderer.WriteByte(10);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 9:case 5:case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderHardBreak,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderHardBreak=function(a,b){return this.$val.renderHardBreak(a,b);};BI.ptr.prototype.renderSoftBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BI.ptr.prototype.renderSoftBreak,$c:true,$r,a,b,c,$s};return $f;};BI.prototype.renderSoftBreak=function(a,b){return this.$val.renderSoftBreak(a,b);};BI.ptr.prototype.withoutKramdownBlockIAL=function(a){var a,b;b=this;return!b.BaseRenderer.Options.KramdownBlockIAL||(0===a.KramdownIAL.$length)||CM.nil===a.Next||!((455===a.Next.Type));};BI.prototype.withoutKramdownBlockIAL=function(a){return this.$val.withoutKramdownBlockIAL(a);};BN=function(a){var{a,b,c,d,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=BP(K.StrToBytes(a));$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=K.BytesToStr(b);$s=2;case 2:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;$s=3;case 3:return d;}return;}var $f={$blk:BN,$c:true,$r,a,b,c,d,$s};return $f;};$pkg.EChartsMindmapStr=BN;BO=function(a){var{a,b,c,d,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=BP(a);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=G.EncodeDestination(b);$s=2;case 2:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;$s=3;case 3:return d;}return;}var $f={$blk:BO,$c:true,$r,a,b,c,d,$s};return $f;};$pkg.EChartsMindmap=BO;BP=function(a){var{a,b,c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=[b];a=A.ReplaceAll(a,F.CaretTokens,CI.nil);c=J.Parse("",a,J.NewOptions());$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=c;if(CM.nil===d.Root.FirstChild||!((7===d.Root.FirstChild.Type))){$s=-1;return(new CI($stringToBytes("{}")));}e=CO.nil;f=d.Root.FirstChild;while(true){if(!(!(CM.nil===f))){break;}if(!((7===f.Type))){e=$append(e,f);}f=f.Next;}g=e;h=0;while(true){if(!(h<g.$length)){break;}i=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]);i.Unlink();h++;}b[0]=new A.Buffer.ptr(CI.nil,0,0);$r=H.Walk(d.Root,(function(b){return function $b(j,k){var{j,k,l,m,n,o,p,q,r,s,t,u,$s,$r,$c}=$restore(this,{j,k});$s=$s||0;s:while(true){switch($s){case 0:l=j.Type;if(l===(0)){$s=2;continue;}if(l===(7)){$s=3;continue;}if(l===(8)){$s=4;continue;}$s=5;continue;case 2:if(k){$s=7;continue;}$s=8;continue;case 7:if(BR(j)){$s=10;continue;}$s=11;continue;case 10:m=b[0].WriteString("{\"name\": \"Root\", \"children\": [");$s=12;case 12:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;case 11:$s=9;continue;case 8:if(BR(j)){$s=13;continue;}$s=14;continue;case 13:n=b[0].WriteString("]}");$s=15;case 15:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;case 14:case 9:$s=-1;return 2;case 3:$s=-1;return 2;case 4:o=!(CM.nil===j.ChildByType(7));if(k){$s=16;continue;}$s=17;continue;case 16:p=BQ(j.FirstChild);$s=19;case 19:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=b[0].WriteString("{\"name\": \""+p+"\"");$s=20;case 20:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;if(o){$s=21;continue;}$s=22;continue;case 21:r=b[0].WriteString(", \"children\": [");$s=23;case 23:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;case 22:$s=18;continue;case 17:if(o){$s=24;continue;}$s=25;continue;case 24:s=b[0].WriteString("]");$s=26;case 26:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;case 25:t=b[0].WriteString("}");$s=27;case 27:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}t;if(!(CM.nil===j.Next)||!(CM.nil===j.Parent.Next)){$s=28;continue;}$s=29;continue;case 28:u=b[0].WriteString(", ");$s=30;case 30:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}u;case 29:case 18:$s=6;continue;case 5:$s=-1;return 2;case 6:case 1:$s=-1;return 2;}return;}var $f={$blk:$b,$c:true,$r,j,k,l,m,n,o,p,q,r,s,t,u,$s};return $f;};})(b));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return b[0].Bytes();}return;}var $f={$blk:BP,$c:true,$r,a,b,c,d,e,f,g,h,i,$s};return $f;};BQ=function(a){var{a,b,c,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=[b];c="";if(CM.nil===a){c="";$s=-1;return c;}b[0]=new A.Buffer.ptr(CI.nil,0,0);$r=H.Walk(a,(function(b){return function $b(d,e){var{d,e,f,$s,$r,$c}=$restore(this,{d,e});$s=$s||0;s:while(true){switch($s){case 0:if((7===d.Type)||(8===d.Type)){$s=-1;return 2;}if(((16===d.Type)||(40===d.Type))&&e){$s=1;continue;}$s=2;continue;case 1:f=b[0].Write(d.Tokens);$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}f;case 2:$s=-1;return 2;}return;}var $f={$blk:$b,$c:true,$r,d,e,f,$s};return $f;};})(b));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c=b[0].String();c=C.ReplaceAll(c,"\\","\\\\");c=C.ReplaceAll(c,"\"","\\\"");c=C.ReplaceAll(c,"\xE2\x80\xB8","");$s=-1;return c;}return;}var $f={$blk:BQ,$c:true,$r,a,b,c,$s};return $f;};BR=function(a){var a,b,c,d;b=0;c=a.FirstChild;while(true){if(!(!(CM.nil===c))){break;}if(7===c.Type){b=b+(1)>>0;}c=c.Next;}if(1<b){return true;}if(0===b){return true;}b=0;d=a.FirstChild.FirstChild;while(true){if(!(!(CM.nil===d))){break;}if(8===d.Type){b=b+(1)>>0;}d=d.Next;}if(1<b){return true;}return false;};AQ.ptr.prototype.EncodeLinkSpace=function(a){var a,b;b=this;return C.ReplaceAll(a," ","%20");};AQ.prototype.EncodeLinkSpace=function(a){return this.$val.EncodeLinkSpace(a);};AQ.ptr.prototype.LinkPath=function(a){var a,b;b=this;a=b.RelativePath(a);a=b.PrefixPath(a);return a;};AQ.prototype.LinkPath=function(a){return this.$val.LinkPath(a);};AQ.ptr.prototype.PrefixPath=function(a){var a,b,c,d;b=this;if(""===b.Options.LinkPrefix){return a;}c=K.StrToBytes(b.Options.LinkPrefix);d=$appendSlice(c,a);return d;};AQ.prototype.PrefixPath=function(a){return this.$val.PrefixPath(a);};AQ.ptr.prototype.RelativePath=function(a){var a,b,c,d;b=this;if(""===b.Options.LinkBase){return a;}if(!b.isRelativePath(a)){return a;}a=A.ReplaceAll(a,(new CI($stringToBytes("%5C"))),(new CI($stringToBytes("\\"))));c=K.StrToBytes(b.Options.LinkBase);if(!A.HasSuffix(c,(new CI($stringToBytes("/"))))){c=$appendSlice(c,(new CI($stringToBytes("/"))));}d=$appendSlice(c,a);if(A.Equal(c,d)){return(new CI($stringToBytes("")));}return d;};AQ.prototype.RelativePath=function(a){return this.$val.RelativePath(a);};AQ.ptr.prototype.isRelativePath=function(a){var a,b;b=this;if(1>a.$length){return true;}if(47===(0>=a.$length?($throwRuntimeError("index out of range"),undefined):a.$array[a.$offset+0])){return false;}return!A.Contains(a,(new CI($stringToBytes(":/"))))&&!A.Contains(a,(new CI($stringToBytes(":\\"))))&&!A.Contains(a,(new CI($stringToBytes(":%5C"))));};AQ.prototype.isRelativePath=function(a){return this.$val.isRelativePath(a);};BT=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=AR(a,b);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=new BS.ptr(c);e=0;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(e),{k:e,v:$methodVal(d,"renderDocument")});f=1;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(f),{k:f,v:$methodVal(d,"renderParagraph")});g=11;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(g),{k:g,v:$methodVal(d,"renderCodeBlock")});h=300;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(h),{k:h,v:$methodVal(d,"renderMathBlock")});i=5;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(i),{k:i,v:$methodVal(d,"renderBlockquote")});j=475;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(j),{k:j,v:$methodVal(d,"renderSuperBlock")});k=2;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(k),{k:k,v:$methodVal(d,"renderHeading")});l=7;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(l),{k:l,v:$methodVal(d,"renderList")});m=8;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(m),{k:m,v:$methodVal(d,"renderListItem")});n=4;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(n),{k:n,v:$methodVal(d,"renderThematicBreak")});o=9;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(o),{k:o,v:$methodVal(d,"renderHTML")});p=106;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(p),{k:p,v:$methodVal(d,"renderTable")});q=415;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(q),{k:q,v:$methodVal(d,"renderToC")});r=425;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(r),{k:r,v:$methodVal(d,"renderYamlFrontMatter")});s=465;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(s),{k:s,v:$methodVal(d,"renderBlockQueryEmbed")});t=455;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(t),{k:t,v:$methodVal(d,"renderKramdownBlockIAL")});d.BaseRenderer.DefaultRendererFunc=$methodVal(d,"renderDefault");$s=-1;return d;}return;}var $f={$blk:BT,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s};return $f;};$pkg.NewKityMinderJSONRenderer=BT;BS.ptr.prototype.renderDefault=function(a,b){var a,b,c;c=this;return 2;};BS.prototype.renderDefault=function(a,b){return this.$val.renderDefault(a,b);};BS.ptr.prototype.renderBlockQueryEmbed=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.data(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.comma(a);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 1;}return;}var $f={$blk:BS.ptr.prototype.renderBlockQueryEmbed,$c:true,$r,a,b,c,$s};return $f;};BS.prototype.renderBlockQueryEmbed=function(a,b){return this.$val.renderBlockQueryEmbed(a,b);};BS.ptr.prototype.renderYamlFrontMatter=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.data(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.comma(a);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 1;}return;}var $f={$blk:BS.ptr.prototype.renderYamlFrontMatter,$c:true,$r,a,b,c,$s};return $f;};BS.prototype.renderYamlFrontMatter=function(a,b){return this.$val.renderYamlFrontMatter(a,b);};BS.ptr.prototype.renderToC=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.data(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.comma(a);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 1;}return;}var $f={$blk:BS.ptr.prototype.renderToC,$c:true,$r,a,b,c,$s};return $f;};BS.prototype.renderToC=function(a,b){return this.$val.renderToC(a,b);};BS.ptr.prototype.renderMathBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.data(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.comma(a);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 1;}return;}var $f={$blk:BS.ptr.prototype.renderMathBlock,$c:true,$r,a,b,c,$s};return $f;};BS.prototype.renderMathBlock=function(a,b){return this.$val.renderMathBlock(a,b);};BS.ptr.prototype.renderTable=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.data(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.comma(a);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BS.ptr.prototype.renderTable,$c:true,$r,a,b,c,$s};return $f;};BS.prototype.renderTable=function(a,b){return this.$val.renderTable(a,b);};BS.ptr.prototype.renderHTML=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.data(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.comma(a);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 1;}return;}var $f={$blk:BS.ptr.prototype.renderHTML,$c:true,$r,a,b,c,$s};return $f;};BS.prototype.renderHTML=function(a,b){return this.$val.renderHTML(a,b);};BS.ptr.prototype.renderParagraph=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=a.Parent.Parent;if(!(CM.nil===d)&&(7===d.Type)&&d.ListData.Tight){if(a.Parent.FirstChild===a&&a.Parent.LastChild===a){$s=-1;return 2;}}if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.data(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.comma(a);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 1;}return;}var $f={$blk:BS.ptr.prototype.renderParagraph,$c:true,$r,a,b,c,d,$s};return $f;};BS.prototype.renderParagraph=function(a,b){return this.$val.renderParagraph(a,b);};BS.ptr.prototype.renderBlockquote=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.data(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.comma(a);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BS.ptr.prototype.renderBlockquote,$c:true,$r,a,b,c,$s};return $f;};BS.prototype.renderBlockquote=function(a,b){return this.$val.renderBlockquote(a,b);};BS.ptr.prototype.renderSuperBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.data(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.comma(a);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BS.ptr.prototype.renderSuperBlock,$c:true,$r,a,b,c,$s};return $f;};BS.prototype.renderSuperBlock=function(a,b){return this.$val.renderSuperBlock(a,b);};BS.ptr.prototype.renderHeading=function(a,b){var{a,b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.data(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.FirstChild;while(true){if(!(!(CM.nil===d))){break;}d.Unlink();d=d.Next;}e=BU(a);f=e;g=0;while(true){if(!(g<f.$length)){break;}h=((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]);a.AppendChild(h);g++;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.comma(a);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BS.ptr.prototype.renderHeading,$c:true,$r,a,b,c,d,e,f,g,h,$s};return $f;};BS.prototype.renderHeading=function(a,b){return this.$val.renderHeading(a,b);};BS.ptr.prototype.renderList=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.data(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.comma(a);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BS.ptr.prototype.renderList,$c:true,$r,a,b,c,$s};return $f;};BS.prototype.renderList=function(a,b){return this.$val.renderList(a,b);};BS.ptr.prototype.renderListItem=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.data(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.comma(a);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BS.ptr.prototype.renderListItem,$c:true,$r,a,b,c,$s};return $f;};BS.prototype.renderListItem=function(a,b){return this.$val.renderListItem(a,b);};BS.ptr.prototype.renderThematicBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.data(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.comma(a);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 1;}return;}var $f={$blk:BS.ptr.prototype.renderThematicBreak,$c:true,$r,a,b,c,$s};return $f;};BS.prototype.renderThematicBreak=function(a,b){return this.$val.renderThematicBreak(a,b);};BS.ptr.prototype.renderCodeBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.data(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.comma(a);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 1;}return;}var $f={$blk:BS.ptr.prototype.renderCodeBlock,$c:true,$r,a,b,c,$s};return $f;};BS.prototype.renderCodeBlock=function(a,b){return this.$val.renderCodeBlock(a,b);};BS.ptr.prototype.renderKramdownBlockIAL=function(a,b){var a,b,c;c=this;return 1;};BS.prototype.renderKramdownBlockIAL=function(a,b){return this.$val.renderKramdownBlockIAL(a,b);};BS.ptr.prototype.renderDocument=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(123);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("\"root\":");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openObj();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.data(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(125);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BS.ptr.prototype.renderDocument,$c:true,$r,a,b,c,$s};return $f;};BS.prototype.renderDocument=function(a,b){return this.$val.renderDocument(a,b);};BS.ptr.prototype.data=function(a){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=[b];c=this;$r=c.BaseRenderer.WriteString("\"data\":");$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openObj();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d="";e=a.Type;if(e===(0)){$s=4;continue;}if(e===(7)){$s=5;continue;}if(e===(5)){$s=6;continue;}if(e===(475)){$s=7;continue;}$s=8;continue;case 4:d=c.BaseRenderer.Tree.Name;$s=9;continue;case 5:if(0===a.ListData.Typ){$s=10;continue;}if(1===a.ListData.Typ){$s=11;continue;}$s=12;continue;case 10:$r=c.BaseRenderer.WriteString("\"priority\": \"iconList\",");$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=13;continue;case 11:$r=c.BaseRenderer.WriteString("\"priority\": \"iconOrderedList\",");$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=13;continue;case 12:$r=c.BaseRenderer.WriteString("\"priority\": \"iconCheck\",");$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 13:$s=9;continue;case 6:$r=c.BaseRenderer.WriteString("\"priority\": \"iconQuote\",");$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=9;continue;case 7:$r=c.BaseRenderer.WriteString("\"priority\": \"iconSuper\",");$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=9;continue;case 8:b[0]=new A.Buffer.ptr(CI.nil,0,0);$r=H.Walk(a,(function(b){return function $b(f,g){var{f,g,h,i,j,$s,$r,$c}=$restore(this,{f,g});$s=$s||0;s:while(true){switch($s){case 0:if(!g){$s=-1;return 2;}if(460===f.Type){$s=1;continue;}$s=2;continue;case 1:h=f.Text();$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=b[0].WriteString("#"+h+"#");$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;$s=-1;return 1;case 2:if((16===f.Type)||(40===f.Type)||(433===f.Type)||(434===f.Type)||(29===f.Type)||(15===f.Type)||(42===f.Type)||(302===f.Type)||(306===f.Type)||(427===f.Type)){$s=5;continue;}$s=6;continue;case 5:j=b[0].Write(f.Tokens);$s=7;case 7:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;case 6:$s=-1;return 2;}return;}var $f={$blk:$b,$c:true,$r,f,g,h,i,j,$s};return $f;};})(b));$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=b[0].String();case 9:case 3:f=C.NewReplacer(new CJ(["\\","","\n","","\"","","\t","","'",""]));g=f.Replace(d);$s=20;case 20:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}d=g;d=C.ReplaceAll(d,"'","");if(16<E.RuneCountInString(d)){d=AS(d,16)+"...";}if(0===a.Type){$s=21;continue;}$s=22;continue;case 21:$r=c.BaseRenderer.WriteString("\"layout\":\"right\",");$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 22:$r=c.BaseRenderer.WriteString("\"text\":\""+d+"\",");$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("\"id\":\""+a.IALAttr("id")+"\",");$s=25;case 25:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("\"type\":\""+new H.NodeType(a.Type).String()+"\",");$s=26;case 26:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("\"isContainer\":"+B.FormatBool(a.IsContainerBlock()));$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj();$s=28;case 28:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:BS.ptr.prototype.data,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};BS.prototype.data=function(a){return this.$val.data(a);};BS.ptr.prototype.openObj=function(){var{a,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;$r=a.BaseRenderer.WriteByte(123);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:BS.ptr.prototype.openObj,$c:true,$r,a,$s};return $f;};BS.prototype.openObj=function(){return this.$val.openObj();};BS.ptr.prototype.closeObj=function(){var{a,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;$r=a.BaseRenderer.WriteByte(125);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:BS.ptr.prototype.closeObj,$c:true,$r,a,$s};return $f;};BS.prototype.closeObj=function(){return this.$val.closeObj();};BS.ptr.prototype.openChildren=function(a){var{a,b,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;if(!(CM.nil===a.FirstChild)){$s=1;continue;}$s=2;continue;case 1:$r=b.BaseRenderer.WriteString(",\"children\":[");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return;}return;}var $f={$blk:BS.ptr.prototype.openChildren,$c:true,$r,a,b,$s};return $f;};BS.prototype.openChildren=function(a){return this.$val.openChildren(a);};BS.ptr.prototype.closeChildren=function(a){var{a,b,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;if(!(CM.nil===a.FirstChild)){$s=1;continue;}$s=2;continue;case 1:$r=b.BaseRenderer.WriteByte(93);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return;}return;}var $f={$blk:BS.ptr.prototype.closeChildren,$c:true,$r,a,b,$s};return $f;};BS.prototype.closeChildren=function(a){return this.$val.closeChildren(a);};BS.ptr.prototype.comma=function(a){var{a,b,c,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;c=a.Next;if(!(CM.nil===c)){$s=1;continue;}$s=2;continue;case 1:while(true){if(!(!(CM.nil===c))){break;}if(!((455===c.Type))){break;}c=c.Next;}if(!(CM.nil===c)&&c.IsBlock()){$s=3;continue;}$s=4;continue;case 3:$r=b.BaseRenderer.WriteString(",");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:case 2:$s=-1;return;}return;}var $f={$blk:BS.ptr.prototype.comma,$c:true,$r,a,b,c,$s};return $f;};BS.prototype.comma=function(a){return this.$val.comma(a);};BU=function(a){var a,b,c,d,e;b=CO.nil;c=a;if(!(CM.nil===a.Next)&&(455===a.Next.Type)){c=a.Next.Next;}d=a.HeadingLevel;e=c;while(true){if(!(!(CM.nil===e))){break;}if(2===e.Type){if(d>=e.HeadingLevel){break;}}if(455===e.Type){if(!A.Contains(e.Tokens,(new CI($stringToBytes("type=\"doc\""))))){b=$append(b,e);}}else{b=$append(b,e);}e=e.Next;}return b;};BW=function(a,b){var{a,b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];c[0]=CO.nil;$r=H.Walk(a.Root,(function(c){return function(d,e){var d,e;if(!e||!((455===d.Type))){return 2;}c[0]=$append(c[0],d);return 2;};})(c));$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=c[0];e=0;while(true){if(!(e<d.$length)){break;}f=((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]);f.Unlink();e++;}g=AR(a,b);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=new BV.ptr(g);h.BaseRenderer.DefaultRendererFunc=$methodVal(h,"renderNode");$s=-1;return h;}return;}var $f={$blk:BW,$c:true,$r,a,b,c,d,e,f,g,h,$s};return $f;};$pkg.NewJSONRenderer=BW;BV.ptr.prototype.renderNode=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(!(CM.nil===a.Previous)){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.WriteString(",");$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:d=K.BytesToStr(a.Tokens);e=new H.NodeType(a.Type).String();a.Data=d;a.TypeStr=e;a.Properties=BX(a.KramdownIAL);$mapDelete(a.Properties,$String.keyFor("refcount"));g=M.Marshal(a);$s=7;case 7:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[0];i=f[1];j="";k="";a.Data=j;a.TypeStr=k;a.Properties=false;if(!($interfaceIsEqual($ifaceNil,i))){$s=8;continue;}$s=9;continue;case 8:l=i.Error();$s=10;case 10:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}$panic(new $String("marshal node to json failed: "+l));$s=-1;return 0;case 9:m=K.BytesToStr(h);m=$substring(m,0,(m.length-1>>0));$r=c.BaseRenderer.WriteString(m);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!(CM.nil===a.FirstChild)){$s=12;continue;}$s=13;continue;case 12:$r=c.BaseRenderer.WriteString(",\"Children\":[");$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=14;continue;case 13:$r=c.BaseRenderer.WriteString("}");$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 14:$s=3;continue;case 2:if(!(CM.nil===a.FirstChild)){$s=17;continue;}$s=18;continue;case 17:$r=c.BaseRenderer.WriteByte(93);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("}");$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 18:case 3:$s=-1;return 2;}return;}var $f={$blk:BV.ptr.prototype.renderNode,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,$s};return $f;};BV.prototype.renderNode=function(a,b){return this.$val.renderNode(a,b);};BX=function(a){var a,b,c,d,e,f;b=false;b=$makeMap($String.keyFor,[]);c=a;d=0;while(true){if(!(d<c.$length)){break;}e=((d<0||d>=c.$length)?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+d]);f=(0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0]);(b||$throwRuntimeError("assignment to entry in nil map")).set($String.keyFor(f),{k:f,v:(1>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+1])});d++;}return b;};BZ=function(a,b){var{a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,d,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,e,ea,eb,ec,ed,ee,ef,eg,eh,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=AR(a,b);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=new BY.ptr(c);e=0;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(e),{k:e,v:$methodVal(d,"renderDocument")});f=1;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(f),{k:f,v:$methodVal(d,"renderParagraph")});g=16;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(g),{k:g,v:$methodVal(d,"renderText")});h=27;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(h),{k:h,v:$methodVal(d,"renderCodeSpan")});i=28;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(i),{k:i,v:$methodVal(d,"renderCodeSpanOpenMarker")});j=29;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(j),{k:j,v:$methodVal(d,"renderCodeSpanContent")});k=30;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(k),{k:k,v:$methodVal(d,"renderCodeSpanCloseMarker")});l=11;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(l),{k:l,v:$methodVal(d,"renderCodeBlock")});m=12;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(m),{k:m,v:$methodVal(d,"renderCodeBlockOpenMarker")});n=14;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(n),{k:n,v:$methodVal(d,"renderCodeBlockInfoMarker")});o=15;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(o),{k:o,v:$methodVal(d,"renderCodeBlockCode")});p=13;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(p),{k:p,v:$methodVal(d,"renderCodeBlockCloseMarker")});q=300;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(q),{k:q,v:$methodVal(d,"renderMathBlock")});r=301;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(r),{k:r,v:$methodVal(d,"renderMathBlockOpenMarker")});s=302;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(s),{k:s,v:$methodVal(d,"renderMathBlockContent")});t=303;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(t),{k:t,v:$methodVal(d,"renderMathBlockCloseMarker")});u=304;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(u),{k:u,v:$methodVal(d,"renderInlineMath")});v=305;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(v),{k:v,v:$methodVal(d,"renderInlineMathOpenMarker")});w=306;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(w),{k:w,v:$methodVal(d,"renderInlineMathContent")});x=307;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(x),{k:x,v:$methodVal(d,"renderInlineMathCloseMarker")});y=17;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(y),{k:y,v:$methodVal(d,"renderEmphasis")});z=18;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(z),{k:z,v:$methodVal(d,"renderEmAsteriskOpenMarker")});aa=19;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aa),{k:aa,v:$methodVal(d,"renderEmAsteriskCloseMarker")});ab=20;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ab),{k:ab,v:$methodVal(d,"renderEmUnderscoreOpenMarker")});ac=21;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ac),{k:ac,v:$methodVal(d,"renderEmUnderscoreCloseMarker")});ad=22;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ad),{k:ad,v:$methodVal(d,"renderStrong")});ae=23;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ae),{k:ae,v:$methodVal(d,"renderStrongA6kOpenMarker")});af=24;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(af),{k:af,v:$methodVal(d,"renderStrongA6kCloseMarker")});ag=25;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ag),{k:ag,v:$methodVal(d,"renderStrongU8eOpenMarker")});ah=26;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ah),{k:ah,v:$methodVal(d,"renderStrongU8eCloseMarker")});ai=5;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ai),{k:ai,v:$methodVal(d,"renderBlockquote")});aj=6;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aj),{k:aj,v:$methodVal(d,"renderBlockquoteMarker")});ak=2;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ak),{k:ak,v:$methodVal(d,"renderHeading")});al=3;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(al),{k:al,v:$methodVal(d,"renderHeadingC8hMarker")});am=420;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(am),{k:am,v:$methodVal(d,"renderHeadingID")});an=7;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(an),{k:an,v:$methodVal(d,"renderList")});ao=8;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ao),{k:ao,v:$methodVal(d,"renderListItem")});ap=4;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ap),{k:ap,v:$methodVal(d,"renderThematicBreak")});aq=31;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aq),{k:aq,v:$methodVal(d,"renderHardBreak")});ar=32;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ar),{k:ar,v:$methodVal(d,"renderSoftBreak")});as=9;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(as),{k:as,v:$methodVal(d,"renderHTML")});at=10;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(at),{k:at,v:$methodVal(d,"renderInlineHTML")});au=33;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(au),{k:au,v:$methodVal(d,"renderLink")});av=34;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(av),{k:av,v:$methodVal(d,"renderImage")});aw=35;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aw),{k:aw,v:$methodVal(d,"renderBang")});ax=36;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ax),{k:ax,v:$methodVal(d,"renderOpenBracket")});ay=37;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ay),{k:ay,v:$methodVal(d,"renderCloseBracket")});az=38;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(az),{k:az,v:$methodVal(d,"renderOpenParen")});ba=39;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ba),{k:ba,v:$methodVal(d,"renderCloseParen")});bb=47;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bb),{k:bb,v:$methodVal(d,"renderLess")});bc=48;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bc),{k:bc,v:$methodVal(d,"renderGreater")});bd=466;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bd),{k:bd,v:$methodVal(d,"renderOpenBrace")});be=467;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(be),{k:be,v:$methodVal(d,"renderCloseBrace")});bf=40;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bf),{k:bf,v:$methodVal(d,"renderLinkText")});bg=43;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bg),{k:bg,v:$methodVal(d,"renderLinkSpace")});bh=41;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bh),{k:bh,v:$methodVal(d,"renderLinkDest")});bi=42;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bi),{k:bi,v:$methodVal(d,"renderLinkTitle")});bj=101;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bj),{k:bj,v:$methodVal(d,"renderStrikethrough")});bk=102;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bk),{k:bk,v:$methodVal(d,"renderStrikethrough1OpenMarker")});bl=103;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bl),{k:bl,v:$methodVal(d,"renderStrikethrough1CloseMarker")});bm=104;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bm),{k:bm,v:$methodVal(d,"renderStrikethrough2OpenMarker")});bn=105;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bn),{k:bn,v:$methodVal(d,"renderStrikethrough2CloseMarker")});bo=100;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bo),{k:bo,v:$methodVal(d,"renderTaskListItemMarker")});bp=106;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bp),{k:bp,v:$methodVal(d,"renderTable")});bq=107;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bq),{k:bq,v:$methodVal(d,"renderTableHead")});br=108;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(br),{k:br,v:$methodVal(d,"renderTableRow")});bs=109;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bs),{k:bs,v:$methodVal(d,"renderTableCell")});bt=200;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bt),{k:bt,v:$methodVal(d,"renderEmoji")});bu=201;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bu),{k:bu,v:$methodVal(d,"renderEmojiUnicode")});bv=202;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bv),{k:bv,v:$methodVal(d,"renderEmojiImg")});bw=203;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bw),{k:bw,v:$methodVal(d,"renderEmojiAlias")});bx=410;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bx),{k:bx,v:$methodVal(d,"renderFootnotesDefBlock")});by=411;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(by),{k:by,v:$methodVal(d,"renderFootnotesDef")});bz=412;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bz),{k:bz,v:$methodVal(d,"renderFootnotesRef")});ca=415;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ca),{k:ca,v:$methodVal(d,"renderToC")});cb=400;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cb),{k:cb,v:$methodVal(d,"renderBackslash")});cc=401;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cc),{k:cc,v:$methodVal(d,"renderBackslashContent")});cd=44;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cd),{k:cd,v:$methodVal(d,"renderHtmlEntity")});ce=425;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ce),{k:ce,v:$methodVal(d,"renderYamlFrontMatter")});cf=426;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cf),{k:cf,v:$methodVal(d,"renderYamlFrontMatterOpenMarker")});cg=427;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cg),{k:cg,v:$methodVal(d,"renderYamlFrontMatterContent")});ch=428;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ch),{k:ch,v:$methodVal(d,"renderYamlFrontMatterCloseMarker")});ci=430;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ci),{k:ci,v:$methodVal(d,"renderBlockRef")});cj=431;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cj),{k:cj,v:$methodVal(d,"renderBlockRefID")});ck=432;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ck),{k:ck,v:$methodVal(d,"renderBlockRefSpace")});cl=433;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cl),{k:cl,v:$methodVal(d,"renderBlockRefText")});cm=434;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cm),{k:cm,v:$methodVal(d,"renderBlockRefDynamicText")});cn=540;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cn),{k:cn,v:$methodVal(d,"renderFileAnnotationRef")});co=541;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(co),{k:co,v:$methodVal(d,"renderFileAnnotationRefID")});cp=542;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cp),{k:cp,v:$methodVal(d,"renderFileAnnotationRefSpace")});cq=543;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cq),{k:cq,v:$methodVal(d,"renderFileAnnotationRefText")});cr=450;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cr),{k:cr,v:$methodVal(d,"renderMark")});cs=451;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cs),{k:cs,v:$methodVal(d,"renderMark1OpenMarker")});ct=452;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ct),{k:ct,v:$methodVal(d,"renderMark1CloseMarker")});cu=453;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cu),{k:cu,v:$methodVal(d,"renderMark2OpenMarker")});cv=454;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cv),{k:cv,v:$methodVal(d,"renderMark2CloseMarker")});cw=485;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cw),{k:cw,v:$methodVal(d,"renderSup")});cx=486;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cx),{k:cx,v:$methodVal(d,"renderSupOpenMarker")});cy=487;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cy),{k:cy,v:$methodVal(d,"renderSupCloseMarker")});cz=490;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cz),{k:cz,v:$methodVal(d,"renderSub")});da=491;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(da),{k:da,v:$methodVal(d,"renderSubOpenMarker")});db=492;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(db),{k:db,v:$methodVal(d,"renderSubCloseMarker")});dc=455;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dc),{k:dc,v:$methodVal(d,"renderKramdownBlockIAL")});dd=456;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dd),{k:dd,v:$methodVal(d,"renderKramdownSpanIAL")});de=465;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(de),{k:de,v:$methodVal(d,"renderBlockQueryEmbed")});df=468;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(df),{k:df,v:$methodVal(d,"renderBlockQueryEmbedScript")});dg=460;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dg),{k:dg,v:$methodVal(d,"renderTag")});dh=461;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dh),{k:dh,v:$methodVal(d,"renderTagOpenMarker")});di=462;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(di),{k:di,v:$methodVal(d,"renderTagCloseMarker")});dj=45;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dj),{k:dj,v:$methodVal(d,"renderLinkRefDefBlock")});dk=46;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dk),{k:dk,v:$methodVal(d,"renderLinkRefDef")});dl=475;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dl),{k:dl,v:$methodVal(d,"renderSuperBlock")});dm=476;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dm),{k:dm,v:$methodVal(d,"renderSuperBlockOpenMarker")});dn=477;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dn),{k:dn,v:$methodVal(d,"renderSuperBlockLayoutMarker")});dp=478;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dp),{k:dp,v:$methodVal(d,"renderSuperBlockCloseMarker")});dq=495;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dq),{k:dq,v:$methodVal(d,"renderGitConflict")});dr=496;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dr),{k:dr,v:$methodVal(d,"renderGitConflictOpenMarker")});ds=497;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ds),{k:ds,v:$methodVal(d,"renderGitConflictContent")});dt=498;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dt),{k:dt,v:$methodVal(d,"renderGitConflictCloseMarker")});du=500;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(du),{k:du,v:$methodVal(d,"renderIFrame")});dv=535;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dv),{k:dv,v:$methodVal(d,"renderWidget")});dw=510;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dw),{k:dw,v:$methodVal(d,"renderVideo")});dx=505;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dx),{k:dx,v:$methodVal(d,"renderAudio")});dy=515;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dy),{k:dy,v:$methodVal(d,"renderKbd")});dz=516;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dz),{k:dz,v:$methodVal(d,"renderKbdOpenMarker")});ea=517;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ea),{k:ea,v:$methodVal(d,"renderKbdCloseMarker")});eb=520;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(eb),{k:eb,v:$methodVal(d,"renderUnderline")});ec=521;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ec),{k:ec,v:$methodVal(d,"renderUnderlineOpenMarker")});ed=522;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ed),{k:ed,v:$methodVal(d,"renderUnderlineCloseMarker")});ee=525;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ee),{k:ee,v:$methodVal(d,"renderBr")});ef=530;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ef),{k:ef,v:$methodVal(d,"renderTextMark")});eg=550;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(eg),{k:eg,v:$methodVal(d,"renderAttributeView")});eh=560;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(eh),{k:eh,v:$methodVal(d,"renderCustomBlock")});$s=-1;return d;}return;}var $f={$blk:BZ,$c:true,$r,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,d,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,e,ea,eb,ec,ed,ee,ef,eg,eh,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};$pkg.NewHtmlRenderer=BZ;BY.ptr.prototype.Render=function(){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=CI.nil;b=this;c=b.BaseRenderer.Render();$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}a=c;d=a;e=b.RenderFootnotes();$s=2;case 2:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;a=$appendSlice(d,f);$s=-1;return a;}return;}var $f={$blk:BY.ptr.prototype.Render,$c:true,$r,a,b,c,d,e,f,$s};return $f;};BY.prototype.Render=function(){return this.$val.Render();};BY.ptr.prototype.renderCustomBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("div",new CL([new CJ(["data-type","NodeCustomBlock"]),new CJ(["data-info",a.CustomBlockInfo]),new CJ(["data-content",($bytesToString(G.EscapeHTML(a.Tokens)))])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</div>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderCustomBlock,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderCustomBlock=function(a,b){return this.$val.renderCustomBlock(a,b);};BY.ptr.prototype.renderAttributeView=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("div",new CL([new CJ(["data-type","NodeAttributeView"]),new CJ(["data-av-id",a.AttributeViewID]),new CJ(["data-av-type",a.AttributeViewType])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</div>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderAttributeView,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderAttributeView=function(a,b){return this.$val.renderAttributeView(a,b);};BY.ptr.prototype.renderTextMark=function(a,b){var{a,b,c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=[d];e=this;if(b){$s=1;continue;}$s=2;continue;case 1:f=a.TextMarkTextContent;if(a.ParentIs(109,CN.nil)){if(a.IsTextMarkType("code")){f=C.ReplaceAll(f,"|","|");}else{f=C.ReplaceAll(f,"\\|","|");}f=C.ReplaceAll(f,"\n","<br />");}if(a.IsTextMarkType("a")){$s=3;continue;}if(a.IsTextMarkType("inline-memo")){$s=4;continue;}$s=5;continue;case 3:c[0]=new CL([new CJ(["href",a.TextMarkAHref])]);if(!(""===a.TextMarkATitle)){c[0]=$append(c[0],new CJ(["title",a.TextMarkATitle]));}e.spanNodeAttrs(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))));$r=e.BaseRenderer.Tag("a",c[0],false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=e.BaseRenderer.WriteString(f);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=e.BaseRenderer.WriteString("</a>");$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=6;continue;case 4:$r=e.BaseRenderer.WriteString(f);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=E.DecodeLastRuneInString(a.TextMarkTextContent);h=g[0];if(AB(h)){$s=11;continue;}$s=12;continue;case 11:$r=e.BaseRenderer.WriteString("<sup>\xEF\xBC\x88");$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=a.TextMarkInlineMemoContent;i=C.ReplaceAll(i,"_esc_newline_"," ");$r=e.BaseRenderer.WriteString(i);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=e.BaseRenderer.WriteString("\xEF\xBC\x89</sup>");$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=13;continue;case 12:$r=e.BaseRenderer.WriteString("<sup>(");$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=e.BaseRenderer.WriteString(a.TextMarkInlineMemoContent);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=e.BaseRenderer.WriteString(")</sup>");$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 13:$s=6;continue;case 5:d[0]=e.renderTextMarkAttrs(a);e.spanNodeAttrs(a,(d.$ptr||(d.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},d))));$r=e.BaseRenderer.Tag("span",d[0],false);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=e.BaseRenderer.WriteString(f);$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=e.BaseRenderer.WriteString("</span>");$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderTextMark,$c:true,$r,a,b,c,d,e,f,g,h,i,$s};return $f;};BY.prototype.renderTextMark=function(a,b){return this.$val.renderTextMark(a,b);};BY.ptr.prototype.renderBr=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<br />");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderBr,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderBr=function(a,b){return this.$val.renderBr(a,b);};BY.ptr.prototype.renderUnderline=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderUnderline=function(a,b){return this.$val.renderUnderline(a,b);};BY.ptr.prototype.renderUnderlineOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<u>");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderUnderlineOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderUnderlineOpenMarker=function(a,b){return this.$val.renderUnderlineOpenMarker(a,b);};BY.ptr.prototype.renderUnderlineCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("</u>");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderUnderlineCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderUnderlineCloseMarker=function(a,b){return this.$val.renderUnderlineCloseMarker(a,b);};BY.ptr.prototype.renderKbd=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderKbd=function(a,b){return this.$val.renderKbd(a,b);};BY.ptr.prototype.renderKbdOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<kbd>");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderKbdOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderKbdOpenMarker=function(a,b){return this.$val.renderKbdOpenMarker(a,b);};BY.ptr.prototype.renderKbdCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("</kbd>");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderKbdCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderKbdCloseMarker=function(a,b){return this.$val.renderKbdCloseMarker(a,b);};BY.ptr.prototype.renderVideo=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("div",new CL([new CJ(["class","iframe"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.Tokens;if(c.BaseRenderer.Options.Sanitize){$s=4;continue;}$s=5;continue;case 4:e=AE(d);$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;case 5:d=c.BaseRenderer.tagSrcPath(d);$r=c.BaseRenderer.Write(d);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/div",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderVideo,$c:true,$r,a,b,c,d,e,$s};return $f;};BY.prototype.renderVideo=function(a,b){return this.$val.renderVideo(a,b);};BY.ptr.prototype.renderAudio=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("div",new CL([new CJ(["class","iframe"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.Tokens;if(c.BaseRenderer.Options.Sanitize){$s=4;continue;}$s=5;continue;case 4:e=AE(d);$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;case 5:d=c.BaseRenderer.tagSrcPath(d);$r=c.BaseRenderer.Write(d);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/div",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderAudio,$c:true,$r,a,b,c,d,e,$s};return $f;};BY.prototype.renderAudio=function(a,b){return this.$val.renderAudio(a,b);};BY.ptr.prototype.renderIFrame=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("div",new CL([new CJ(["class","iframe"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.Tokens;if(c.BaseRenderer.Options.Sanitize){$s=4;continue;}$s=5;continue;case 4:e=AE(d);$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;case 5:d=c.BaseRenderer.tagSrcPath(d);$r=c.BaseRenderer.Write(d);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/div",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderIFrame,$c:true,$r,a,b,c,d,e,$s};return $f;};BY.prototype.renderIFrame=function(a,b){return this.$val.renderIFrame(a,b);};BY.ptr.prototype.renderWidget=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("div",new CL([new CJ(["class","iframe"])]),false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.Tokens;if(c.BaseRenderer.Options.Sanitize){$s=4;continue;}$s=5;continue;case 4:e=AE(d);$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;case 5:d=c.BaseRenderer.tagSrcPath(d);$r=c.BaseRenderer.Write(d);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/div",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderWidget,$c:true,$r,a,b,c,d,e,$s};return $f;};BY.prototype.renderWidget=function(a,b){return this.$val.renderWidget(a,b);};BY.ptr.prototype.renderGitConflictCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderGitConflictCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderGitConflictCloseMarker=function(a,b){return this.$val.renderGitConflictCloseMarker(a,b);};BY.ptr.prototype.renderGitConflictContent=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderGitConflictContent,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderGitConflictContent=function(a,b){return this.$val.renderGitConflictContent(a,b);};BY.ptr.prototype.renderGitConflictOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderGitConflictOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderGitConflictOpenMarker=function(a,b){return this.$val.renderGitConflictOpenMarker(a,b);};BY.ptr.prototype.renderGitConflict=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;$r=c.BaseRenderer.Newline();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(b){$s=2;continue;}$s=3;continue;case 2:d=new CL([new CJ(["class","language-git-conflict"])]);c.handleKramdownBlockIAL(a);d=$appendSlice(d,a.KramdownIAL);$r=c.BaseRenderer.Tag("div",d,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=4;continue;case 3:$r=c.BaseRenderer.Tag("/div",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderGitConflict,$c:true,$r,a,b,c,d,$s};return $f;};BY.prototype.renderGitConflict=function(a,b){return this.$val.renderGitConflict(a,b);};BY.ptr.prototype.renderSuperBlock=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderSuperBlock=function(a,b){return this.$val.renderSuperBlock(a,b);};BY.ptr.prototype.renderSuperBlockOpenMarker=function(a,b){var a,b,c;c=this;return 1;};BY.prototype.renderSuperBlockOpenMarker=function(a,b){return this.$val.renderSuperBlockOpenMarker(a,b);};BY.ptr.prototype.renderSuperBlockLayoutMarker=function(a,b){var a,b,c;c=this;return 1;};BY.prototype.renderSuperBlockLayoutMarker=function(a,b){return this.$val.renderSuperBlockLayoutMarker(a,b);};BY.ptr.prototype.renderSuperBlockCloseMarker=function(a,b){var a,b,c;c=this;return 1;};BY.prototype.renderSuperBlockCloseMarker=function(a,b){return this.$val.renderSuperBlockCloseMarker(a,b);};BY.ptr.prototype.renderLinkRefDefBlock=function(a,b){var a,b,c;c=this;return 1;};BY.prototype.renderLinkRefDefBlock=function(a,b){return this.$val.renderLinkRefDefBlock(a,b);};BY.ptr.prototype.renderLinkRefDef=function(a,b){var a,b,c;c=this;return 1;};BY.prototype.renderLinkRefDef=function(a,b){return this.$val.renderLinkRefDef(a,b);};BY.ptr.prototype.renderTag=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderTag,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderTag=function(a,b){return this.$val.renderTag(a,b);};BY.ptr.prototype.renderTagOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("em",a.Parent.KramdownIAL,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(35);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderTagOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderTagOpenMarker=function(a,b){return this.$val.renderTagOpenMarker(a,b);};BY.ptr.prototype.renderTagCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(35);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/em",CL.nil,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderTagCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderTagCloseMarker=function(a,b){return this.$val.renderTagCloseMarker(a,b);};BY.ptr.prototype.renderKramdownBlockIAL=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderKramdownBlockIAL=function(a,b){return this.$val.renderKramdownBlockIAL(a,b);};BY.ptr.prototype.renderKramdownSpanIAL=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderKramdownSpanIAL=function(a,b){return this.$val.renderKramdownSpanIAL(a,b);};BY.ptr.prototype.renderMark=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderMark,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderMark=function(a,b){return this.$val.renderMark(a,b);};BY.ptr.prototype.renderMark1OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("mark",a.Parent.KramdownIAL,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderMark1OpenMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderMark1OpenMarker=function(a,b){return this.$val.renderMark1OpenMarker(a,b);};BY.ptr.prototype.renderMark1CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/mark",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderMark1CloseMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderMark1CloseMarker=function(a,b){return this.$val.renderMark1CloseMarker(a,b);};BY.ptr.prototype.renderMark2OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("mark",a.Parent.KramdownIAL,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderMark2OpenMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderMark2OpenMarker=function(a,b){return this.$val.renderMark2OpenMarker(a,b);};BY.ptr.prototype.renderMark2CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/mark",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderMark2CloseMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderMark2CloseMarker=function(a,b){return this.$val.renderMark2CloseMarker(a,b);};BY.ptr.prototype.renderSup=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderSup=function(a,b){return this.$val.renderSup(a,b);};BY.ptr.prototype.renderSupOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("sup",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderSupOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderSupOpenMarker=function(a,b){return this.$val.renderSupOpenMarker(a,b);};BY.ptr.prototype.renderSupCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/sup",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderSupCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderSupCloseMarker=function(a,b){return this.$val.renderSupCloseMarker(a,b);};BY.ptr.prototype.renderSub=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderSub=function(a,b){return this.$val.renderSub(a,b);};BY.ptr.prototype.renderSubOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("sub",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderSubOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderSubOpenMarker=function(a,b){return this.$val.renderSubOpenMarker(a,b);};BY.ptr.prototype.renderSubCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/sub",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderSubCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderSubCloseMarker=function(a,b){return this.$val.renderSubCloseMarker(a,b);};BY.ptr.prototype.renderBlockQueryEmbed=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("div",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/div",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderBlockQueryEmbed,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderBlockQueryEmbed=function(a,b){return this.$val.renderBlockQueryEmbed(a,b);};BY.ptr.prototype.renderBlockQueryEmbedScript=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(34);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(a.Tokens);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(34);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderBlockQueryEmbedScript,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderBlockQueryEmbedScript=function(a,b){return this.$val.renderBlockQueryEmbedScript(a,b);};BY.ptr.prototype.renderBlockRef=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderBlockRef=function(a,b){return this.$val.renderBlockRef(a,b);};BY.ptr.prototype.renderBlockRefID=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderBlockRefID=function(a,b){return this.$val.renderBlockRefID(a,b);};BY.ptr.prototype.renderBlockRefSpace=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderBlockRefSpace=function(a,b){return this.$val.renderBlockRefSpace(a,b);};BY.ptr.prototype.renderBlockRefText=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(34);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteByte(34);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderBlockRefText,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderBlockRefText=function(a,b){return this.$val.renderBlockRefText(a,b);};BY.ptr.prototype.renderBlockRefDynamicText=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(39);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteByte(39);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderBlockRefDynamicText,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderBlockRefDynamicText=function(a,b){return this.$val.renderBlockRefDynamicText(a,b);};BY.ptr.prototype.renderFileAnnotationRef=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderFileAnnotationRef=function(a,b){return this.$val.renderFileAnnotationRef(a,b);};BY.ptr.prototype.renderFileAnnotationRefID=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderFileAnnotationRefID=function(a,b){return this.$val.renderFileAnnotationRefID(a,b);};BY.ptr.prototype.renderFileAnnotationRefSpace=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderFileAnnotationRefSpace=function(a,b){return this.$val.renderFileAnnotationRefSpace(a,b);};BY.ptr.prototype.renderFileAnnotationRefText=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(34);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteByte(34);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderFileAnnotationRefText,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderFileAnnotationRefText=function(a,b){return this.$val.renderFileAnnotationRefText(a,b);};BY.ptr.prototype.renderYamlFrontMatterCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("</code></pre>");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderYamlFrontMatterCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderYamlFrontMatterCloseMarker=function(a,b){return this.$val.renderYamlFrontMatterCloseMarker(a,b);};BY.ptr.prototype.renderYamlFrontMatterContent=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderYamlFrontMatterContent,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderYamlFrontMatterContent=function(a,b){return this.$val.renderYamlFrontMatterContent(a,b);};BY.ptr.prototype.renderYamlFrontMatterOpenMarker=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=new CL([new CJ(["class","vditor-yml-front-matter"])]);d=$appendSlice(d,a.Parent.KramdownIAL);$r=c.BaseRenderer.Tag("pre",d,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("<code class=\"language-yaml\">");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderYamlFrontMatterOpenMarker,$c:true,$r,a,b,c,d,$s};return $f;};BY.prototype.renderYamlFrontMatterOpenMarker=function(a,b){return this.$val.renderYamlFrontMatterOpenMarker(a,b);};BY.ptr.prototype.renderYamlFrontMatter=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;$r=c.BaseRenderer.Newline();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderYamlFrontMatter,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderYamlFrontMatter=function(a,b){return this.$val.renderYamlFrontMatter(a,b);};BY.ptr.prototype.renderHtmlEntity=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderHtmlEntity,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderHtmlEntity=function(a,b){return this.$val.renderHtmlEntity(a,b);};BY.ptr.prototype.renderBackslashContent=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderBackslashContent,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderBackslashContent=function(a,b){return this.$val.renderBackslashContent(a,b);};BY.ptr.prototype.renderBackslash=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderBackslash=function(a,b){return this.$val.renderBackslash(a,b);};BY.ptr.prototype.renderToC=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=c.BaseRenderer.renderToC(a,b);$s=1;case 1:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$s=2;case 2:return e;}return;}var $f={$blk:BY.ptr.prototype.renderToC,$c:true,$r,a,b,c,d,e,$s};return $f;};BY.prototype.renderToC=function(a,b){return this.$val.renderToC(a,b);};BY.ptr.prototype.renderFootnotesRef=function(a,b){var{a,b,c,d,e,f,g,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:e=c.BaseRenderer.Tree.FindFootnotesDef(a.Tokens);$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;f=d[0];g=B.Itoa(f);$r=c.BaseRenderer.Tag("sup",new CL([new CJ(["class","footnotes-ref"]),new CJ(["id","footnotes-ref-"+a.FootnotesRefId])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("a",new CL([new CJ(["href",c.BaseRenderer.Options.LinkBase+"#footnotes-def-"+g])]),false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString(g);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/a",CL.nil,false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/sup",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderFootnotesRef,$c:true,$r,a,b,c,d,e,f,g,$s};return $f;};BY.prototype.renderFootnotesRef=function(a,b){return this.$val.renderFootnotesRef(a,b);};BY.ptr.prototype.renderFootnotesDefBlock=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderFootnotesDefBlock=function(a,b){return this.$val.renderFootnotesDefBlock(a,b);};BY.ptr.prototype.RenderFootnotes=function(){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;if(1>a.BaseRenderer.FootnotesDefs.$length){$s=-1;return CI.nil;}b=new A.Buffer.ptr(CI.nil,0,0);c=b.WriteString("<div class=\"footnotes-defs-div\">");$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}c;d=b.WriteString("<hr class=\"footnotes-defs-hr\" />\n");$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}d;e=b.WriteString("<ol class=\"footnotes-defs-ol\">");$s=3;case 3:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}e;f=a.BaseRenderer.FootnotesDefs;g=0;case 4:if(!(g<f.$length)){$s=5;continue;}h=g;i=((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]);j=b.WriteString("<li id=\"footnotes-def-"+B.Itoa(h+1>>0)+"\">");$s=6;case 6:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}j;k=new J.Tree.ptr(CM.nil,a.BaseRenderer.Tree.Context,DF.nil,DG.nil,"","","","","",CJ.nil,new $Int64(0,0),new $Int64(0,0),"");k.Context.Tree=k;k.Root=new H.Node.ptr("","","","",0,CM.nil,CM.nil,CM.nil,CM.nil,CM.nil,CO.nil,CI.nil,"","",false,false,false,0,false,0,0,0,CI.nil,CI.nil,CI.nil,0,CP.nil,false,CQ.nil,0,0,0,0,CI.nil,0,false,"",0,CI.nil,"",CO.nil,CI.nil,CL.nil,false,"","","","","","","","","","","",0,"");k.Root.AppendChild(i);l=BZ(k,a.BaseRenderer.Options);$s=7;case 7:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;n=k.Root.LastDeepestChild();h=i.FootnotesRefs.$length-1>>0;while(true){if(!(0<=h)){break;}p=(o=i.FootnotesRefs,((h<0||h>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+h]));q=" <a href=\"#footnotes-ref-"+p.FootnotesRefId+"\" class=\"vditor-footnotes__goto-ref\">\xE2\x86\xA9</a>";r=new H.Node.ptr("","","","",10,CM.nil,CM.nil,CM.nil,CM.nil,CM.nil,CO.nil,K.StrToBytes(q),"","",false,false,false,0,false,0,0,0,CI.nil,CI.nil,CI.nil,0,CP.nil,false,CQ.nil,0,0,0,0,CI.nil,0,false,"",0,CI.nil,"",CO.nil,CI.nil,CL.nil,false,"","","","","","","","","","","",0,"");n.InsertAfter(r);h=h-(1)>>0;}m.BaseRenderer.RenderingFootnotes=true;s=m.Render();$s=8;case 8:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=s;u=b.Write(t);$s=9;case 9:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}u;v=b.WriteString("</li>\n");$s=10;case 10:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;g++;$s=4;continue;case 5:w=b.WriteString("</ol></div>");$s=11;case 11:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;$s=-1;return b.Bytes();}return;}var $f={$blk:BY.ptr.prototype.RenderFootnotes,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$s};return $f;};BY.prototype.RenderFootnotes=function(){return this.$val.RenderFootnotes();};BY.ptr.prototype.renderFootnotesDef=function(a,b){var a,b,c,d,e,f,g;c=this;if(b){if(!c.BaseRenderer.RenderingFootnotes){d=false;e=c.BaseRenderer.FootnotesDefs;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);if(A.EqualFold(a.Tokens,g.Tokens)){d=true;break;}f++;}if(!d){c.BaseRenderer.FootnotesDefs=$append(c.BaseRenderer.FootnotesDefs,a);}return 1;}}return 2;};BY.prototype.renderFootnotesDef=function(a,b){return this.$val.renderFootnotesDef(a,b);};BY.ptr.prototype.renderCodeBlockCloseMarker=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderCodeBlockCloseMarker=function(a,b){return this.$val.renderCodeBlockCloseMarker(a,b);};BY.ptr.prototype.renderCodeBlockInfoMarker=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderCodeBlockInfoMarker=function(a,b){return this.$val.renderCodeBlockInfoMarker(a,b);};BY.ptr.prototype.renderCodeBlockOpenMarker=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderCodeBlockOpenMarker=function(a,b){return this.$val.renderCodeBlockOpenMarker(a,b);};BY.ptr.prototype.renderEmojiAlias=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderEmojiAlias=function(a,b){return this.$val.renderEmojiAlias(a,b);};BY.ptr.prototype.renderEmojiImg=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderEmojiImg,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderEmojiImg=function(a,b){return this.$val.renderEmojiImg(a,b);};BY.ptr.prototype.renderEmojiUnicode=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderEmojiUnicode,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderEmojiUnicode=function(a,b){return this.$val.renderEmojiUnicode(a,b);};BY.ptr.prototype.renderEmoji=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderEmoji=function(a,b){return this.$val.renderEmoji(a,b);};BY.ptr.prototype.renderInlineMathCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderInlineMathCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderInlineMathCloseMarker=function(a,b){return this.$val.renderInlineMathCloseMarker(a,b);};BY.ptr.prototype.renderInlineMathContent=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=a.Tokens;if(a.ParentIs(109,CN.nil)){d=A.ReplaceAll(d,(new CI($stringToBytes("\\|"))),(new CI($stringToBytes("|"))));}$r=c.BaseRenderer.Write(G.EscapeHTML(d));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderInlineMathContent,$c:true,$r,a,b,c,d,$s};return $f;};BY.prototype.renderInlineMathContent=function(a,b){return this.$val.renderInlineMathContent(a,b);};BY.ptr.prototype.renderInlineMathOpenMarker=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=new CL([new CJ(["class","language-math"])]);$r=c.BaseRenderer.Tag("span",d,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderInlineMathOpenMarker,$c:true,$r,a,b,c,d,$s};return $f;};BY.prototype.renderInlineMathOpenMarker=function(a,b){return this.$val.renderInlineMathOpenMarker(a,b);};BY.ptr.prototype.renderInlineMath=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderInlineMath=function(a,b){return this.$val.renderInlineMath(a,b);};BY.ptr.prototype.renderMathBlockCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/div",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderMathBlockCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderMathBlockCloseMarker=function(a,b){return this.$val.renderMathBlockCloseMarker(a,b);};BY.ptr.prototype.renderMathBlockContent=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderMathBlockContent,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderMathBlockContent=function(a,b){return this.$val.renderMathBlockContent(a,b);};BY.ptr.prototype.renderMathBlockOpenMarker=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderMathBlockOpenMarker=function(a,b){return this.$val.renderMathBlockOpenMarker(a,b);};BY.ptr.prototype.renderMathBlock=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;$r=c.BaseRenderer.Newline();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(b){$s=2;continue;}$s=3;continue;case 2:d=new CL([new CJ(["class","language-math"])]);c.handleKramdownBlockIAL(a);d=$appendSlice(d,a.KramdownIAL);$r=c.BaseRenderer.Tag("div",d,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderMathBlock,$c:true,$r,a,b,c,d,$s};return $f;};BY.prototype.renderMathBlock=function(a,b){return this.$val.renderMathBlock(a,b);};BY.ptr.prototype.renderTableCell=function(a,b){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d="td";if(107===a.Parent.Parent.Type){d="th";}if(b){$s=1;continue;}$s=2;continue;case 1:e=CL.nil;f=a.TableCellAlign;if(f===(1)){e=$append(e,new CJ(["align","left"]));}else if(f===(2)){e=$append(e,new CJ(["align","center"]));}else if(f===(3)){e=$append(e,new CJ(["align","right"]));}$r=c.BaseRenderer.Tag(d,e,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/"+d,CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderTableCell,$c:true,$r,a,b,c,d,e,f,$s};return $f;};BY.prototype.renderTableCell=function(a,b){return this.$val.renderTableCell(a,b);};BY.ptr.prototype.renderTableRow=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("tr",CL.nil,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/tr",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderTableRow,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderTableRow=function(a,b){return this.$val.renderTableRow(a,b);};BY.ptr.prototype.renderTableHead=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("thead",CL.nil,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/thead",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!(CM.nil===a.Next)){$s=8;continue;}$s=9;continue;case 8:$r=c.BaseRenderer.Tag("tbody",CL.nil,false);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 9:$r=c.BaseRenderer.Newline();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderTableHead,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderTableHead=function(a,b){return this.$val.renderTableHead(a,b);};BY.ptr.prototype.renderTable=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:c.handleKramdownBlockIAL(a);$r=c.BaseRenderer.Tag("table",a.KramdownIAL,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:if(!(CM.nil===a.FirstChild.Next)){$s=6;continue;}$s=7;continue;case 6:$r=c.BaseRenderer.Tag("/tbody",CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:$r=c.BaseRenderer.Newline();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/table",CL.nil,false);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderTable,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderTable=function(a,b){return this.$val.renderTable(a,b);};BY.ptr.prototype.renderStrikethrough=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderStrikethrough,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderStrikethrough=function(a,b){return this.$val.renderStrikethrough(a,b);};BY.ptr.prototype.renderStrikethrough1OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("del",a.Parent.KramdownIAL,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderStrikethrough1OpenMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderStrikethrough1OpenMarker=function(a,b){return this.$val.renderStrikethrough1OpenMarker(a,b);};BY.ptr.prototype.renderStrikethrough1CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/del",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderStrikethrough1CloseMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderStrikethrough1CloseMarker=function(a,b){return this.$val.renderStrikethrough1CloseMarker(a,b);};BY.ptr.prototype.renderStrikethrough2OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("del",a.Parent.KramdownIAL,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderStrikethrough2OpenMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderStrikethrough2OpenMarker=function(a,b){return this.$val.renderStrikethrough2OpenMarker(a,b);};BY.ptr.prototype.renderStrikethrough2CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/del",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderStrikethrough2CloseMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderStrikethrough2CloseMarker=function(a,b){return this.$val.renderStrikethrough2CloseMarker(a,b);};BY.ptr.prototype.renderLinkTitle=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderLinkTitle=function(a,b){return this.$val.renderLinkTitle(a,b);};BY.ptr.prototype.renderLinkDest=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderLinkDest=function(a,b){return this.$val.renderLinkDest(a,b);};BY.ptr.prototype.renderLinkSpace=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderLinkSpace=function(a,b){return this.$val.renderLinkSpace(a,b);};BY.ptr.prototype.renderLinkText=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=CI.nil;if(c.BaseRenderer.Options.AutoSpace){d=c.BaseRenderer.Space(a.Tokens);}else{d=a.Tokens;}$r=c.BaseRenderer.Write(G.EscapeHTML(d));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderLinkText,$c:true,$r,a,b,c,d,$s};return $f;};BY.prototype.renderLinkText=function(a,b){return this.$val.renderLinkText(a,b);};BY.ptr.prototype.renderCloseBrace=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderCloseBrace=function(a,b){return this.$val.renderCloseBrace(a,b);};BY.ptr.prototype.renderOpenBrace=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderOpenBrace=function(a,b){return this.$val.renderOpenBrace(a,b);};BY.ptr.prototype.renderCloseParen=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderCloseParen=function(a,b){return this.$val.renderCloseParen(a,b);};BY.ptr.prototype.renderOpenParen=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderOpenParen=function(a,b){return this.$val.renderOpenParen(a,b);};BY.ptr.prototype.renderLess=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderLess=function(a,b){return this.$val.renderLess(a,b);};BY.ptr.prototype.renderGreater=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderGreater=function(a,b){return this.$val.renderGreater(a,b);};BY.ptr.prototype.renderCloseBracket=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderCloseBracket=function(a,b){return this.$val.renderCloseBracket(a,b);};BY.ptr.prototype.renderOpenBracket=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderOpenBracket=function(a,b){return this.$val.renderOpenBracket(a,b);};BY.ptr.prototype.renderBang=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderBang=function(a,b){return this.$val.renderBang(a,b);};BY.ptr.prototype.renderImage=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(0===c.BaseRenderer.DisableTags){$s=3;continue;}$s=4;continue;case 3:d=a.IALAttr("parent-style");if(!(""===d)){$s=5;continue;}$s=6;continue;case 5:$r=c.BaseRenderer.Tag("span",new CL([new CJ(["style",d])]),false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:$r=c.BaseRenderer.WriteString("<img src=\"");$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=a.ChildByType(41).Tokens;e=c.BaseRenderer.LinkPath(e);if(!(""===c.BaseRenderer.Options.ImageLazyLoading)){$s=9;continue;}$s=10;continue;case 9:$r=c.BaseRenderer.Write(G.EscapeHTML(K.StrToBytes(c.BaseRenderer.Options.ImageLazyLoading)));$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("\" data-src=\"");$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:$r=c.BaseRenderer.Write(G.EscapeHTML(e));$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("\" alt=\"");$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:c.BaseRenderer.DisableTags=c.BaseRenderer.DisableTags+(1)>>0;$s=-1;return 2;case 2:c.BaseRenderer.DisableTags=c.BaseRenderer.DisableTags-(1)>>0;if(0===c.BaseRenderer.DisableTags){$s=15;continue;}$s=16;continue;case 15:$r=c.BaseRenderer.WriteByte(34);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=a.ChildByType(42);if(!(CM.nil===f)&&!(CI.nil===f.Tokens)){$s=18;continue;}$s=19;continue;case 18:$r=c.BaseRenderer.WriteString(" title=\"");$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(G.EscapeHTML(f.Tokens));$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(34);$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 19:g=c.BaseRenderer.NodeAttrsStr(a);if(!(""===g)){$s=23;continue;}$s=24;continue;case 23:$r=c.BaseRenderer.WriteString(" "+g);$s=25;case 25:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 24:$r=c.BaseRenderer.WriteString(" />");$s=26;case 26:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=a.IALAttr("style");if(!(""===h)){$s=27;continue;}$s=28;continue;case 27:$r=c.BaseRenderer.Tag("/span",CL.nil,false);$s=29;case 29:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 28:if(c.BaseRenderer.Options.Sanitize){$s=30;continue;}$s=31;continue;case 30:i=c.BaseRenderer.Writer.Bytes();j=A.LastIndex(i,(new CI($stringToBytes("<img src="))));k=$subslice(i,j);if(c.BaseRenderer.Options.Sanitize){$s=32;continue;}$s=33;continue;case 32:l=AE(k);$s=34;case 34:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}k=l;case 33:c.BaseRenderer.Writer.Truncate(j);m=c.BaseRenderer.Writer.Write(k);$s=35;case 35:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}m;case 31:case 16:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderImage,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,$s};return $f;};BY.prototype.renderImage=function(a,b){return this.$val.renderImage(a,b);};BY.ptr.prototype.renderLink=function(a,b){var{a,b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.LinkTextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.ChildByType(41);e=d.Tokens;if(c.BaseRenderer.Options.Sanitize){$s=5;continue;}$s=6;continue;case 5:f=A.TrimSpace(e);$s=7;case 7:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=A.ToLower(g);$s=8;case 8:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;if(A.HasPrefix(g,(new CI($stringToBytes("javascript:"))))){e=CI.nil;}case 6:e=c.BaseRenderer.LinkPath(e);i=new CL([new CJ(["href",K.BytesToStr(G.EscapeHTML(e))])]);j=a.ChildByType(42);if(!(CM.nil===j)&&!(CI.nil===j.Tokens)){i=$append(i,new CJ(["title",K.BytesToStr(G.EscapeHTML(j.Tokens))]));}$r=c.BaseRenderer.Tag("a",i,false);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/a",CL.nil,false);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.LinkTextAutoSpaceNext(a);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderLink,$c:true,$r,a,b,c,d,e,f,g,h,i,j,$s};return $f;};BY.prototype.renderLink=function(a,b){return this.$val.renderLink(a,b);};BY.ptr.prototype.renderHTML=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.Tokens;if(c.BaseRenderer.Options.Sanitize){$s=4;continue;}$s=5;continue;case 4:e=AE(d);$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;case 5:d=c.BaseRenderer.tagSrcPath(d);$r=c.BaseRenderer.Write(d);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderHTML,$c:true,$r,a,b,c,d,e,$s};return $f;};BY.prototype.renderHTML=function(a,b){return this.$val.renderHTML(a,b);};BY.ptr.prototype.renderInlineHTML=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=a.Tokens;if(c.BaseRenderer.Options.Sanitize){$s=3;continue;}$s=4;continue;case 3:e=AE(d);$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;case 4:$r=c.BaseRenderer.Write(d);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderInlineHTML,$c:true,$r,a,b,c,d,e,$s};return $f;};BY.prototype.renderInlineHTML=function(a,b){return this.$val.renderInlineHTML(a,b);};BY.ptr.prototype.renderDocument=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderDocument=function(a,b){return this.$val.renderDocument(a,b);};BY.ptr.prototype.renderParagraph=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=a.Parent.Parent;if(!(CM.nil===d)&&(7===d.Type)&&d.ListData.Tight){$s=-1;return 2;}if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c.handleKramdownBlockIAL(a);e=CL.nil;e=$appendSlice(e,a.KramdownIAL);if(c.BaseRenderer.Options.ChineseParagraphBeginningSpace&&(0===a.Parent.Type)){e=$append(e,new CJ(["class","indent--2"]));}$r=c.BaseRenderer.Tag("p",e,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/p",CL.nil,false);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderParagraph,$c:true,$r,a,b,c,d,e,$s};return $f;};BY.prototype.renderParagraph=function(a,b){return this.$val.renderParagraph(a,b);};BY.ptr.prototype.renderText=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=CI.nil;if(c.BaseRenderer.Options.AutoSpace){d=c.BaseRenderer.Space(a.Tokens);}else{d=a.Tokens;}if(c.BaseRenderer.Options.FixTermTypo){$s=3;continue;}$s=4;continue;case 3:e=c.BaseRenderer.FixTermTypo(d);$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;case 4:$r=c.BaseRenderer.Write(G.EscapeHTML(d));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderText,$c:true,$r,a,b,c,d,e,$s};return $f;};BY.prototype.renderText=function(a,b){return this.$val.renderText(a,b);};BY.ptr.prototype.renderCodeSpan=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(c.BaseRenderer.Options.AutoSpace){$s=4;continue;}$s=5;continue;case 4:d=a.PreviousNodeText();$s=6;case 6:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!(""===e)){$s=7;continue;}$s=8;continue;case 7:f=E.DecodeLastRuneInString(e);g=f[0];if(D.IsLetter(g)||D.IsDigit(g)){$s=9;continue;}$s=10;continue;case 9:$r=c.BaseRenderer.WriteByte(32);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:case 8:case 5:$s=3;continue;case 2:if(c.BaseRenderer.Options.AutoSpace){$s=12;continue;}$s=13;continue;case 12:h=a.NextNodeText();$s=14;case 14:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;if(!(""===i)){$s=15;continue;}$s=16;continue;case 15:j=E.DecodeRuneInString(i);k=j[0];if(D.IsLetter(k)||D.IsDigit(k)){$s=17;continue;}$s=18;continue;case 17:$r=c.BaseRenderer.WriteByte(32);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 18:case 16:case 13:case 3:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderCodeSpan,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,$s};return $f;};BY.prototype.renderCodeSpan=function(a,b){return this.$val.renderCodeSpan(a,b);};BY.ptr.prototype.renderCodeSpanOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("code",a.Parent.KramdownIAL,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderCodeSpanOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderCodeSpanOpenMarker=function(a,b){return this.$val.renderCodeSpanOpenMarker(a,b);};BY.ptr.prototype.renderCodeSpanContent=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderCodeSpanContent,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderCodeSpanContent=function(a,b){return this.$val.renderCodeSpanContent(a,b);};BY.ptr.prototype.renderCodeSpanCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/code",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderCodeSpanCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderCodeSpanCloseMarker=function(a,b){return this.$val.renderCodeSpanCloseMarker(a,b);};BY.ptr.prototype.renderEmphasis=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderEmphasis,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderEmphasis=function(a,b){return this.$val.renderEmphasis(a,b);};BY.ptr.prototype.renderEmAsteriskOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("em",a.Parent.KramdownIAL,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderEmAsteriskOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderEmAsteriskOpenMarker=function(a,b){return this.$val.renderEmAsteriskOpenMarker(a,b);};BY.ptr.prototype.renderEmAsteriskCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/em",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderEmAsteriskCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderEmAsteriskCloseMarker=function(a,b){return this.$val.renderEmAsteriskCloseMarker(a,b);};BY.ptr.prototype.renderEmUnderscoreOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("em",a.Parent.KramdownIAL,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderEmUnderscoreOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderEmUnderscoreOpenMarker=function(a,b){return this.$val.renderEmUnderscoreOpenMarker(a,b);};BY.ptr.prototype.renderEmUnderscoreCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/em",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderEmUnderscoreCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderEmUnderscoreCloseMarker=function(a,b){return this.$val.renderEmUnderscoreCloseMarker(a,b);};BY.ptr.prototype.renderStrong=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderStrong,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderStrong=function(a,b){return this.$val.renderStrong(a,b);};BY.ptr.prototype.renderStrongA6kOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("strong",a.Parent.KramdownIAL,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderStrongA6kOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderStrongA6kOpenMarker=function(a,b){return this.$val.renderStrongA6kOpenMarker(a,b);};BY.ptr.prototype.renderStrongA6kCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/strong",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderStrongA6kCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderStrongA6kCloseMarker=function(a,b){return this.$val.renderStrongA6kCloseMarker(a,b);};BY.ptr.prototype.renderStrongU8eOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("strong",a.Parent.KramdownIAL,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderStrongU8eOpenMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderStrongU8eOpenMarker=function(a,b){return this.$val.renderStrongU8eOpenMarker(a,b);};BY.ptr.prototype.renderStrongU8eCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("/strong",CL.nil,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderStrongU8eCloseMarker,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderStrongU8eCloseMarker=function(a,b){return this.$val.renderStrongU8eCloseMarker(a,b);};BY.ptr.prototype.renderBlockquote=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c.handleKramdownBlockIAL(a);$r=c.BaseRenderer.Tag("blockquote",a.KramdownIAL,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Newline();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</blockquote>");$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderBlockquote,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderBlockquote=function(a,b){return this.$val.renderBlockquote(a,b);};BY.ptr.prototype.renderBlockquoteMarker=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderBlockquoteMarker=function(a,b){return this.$val.renderBlockquoteMarker(a,b);};BY.ptr.prototype.renderHeading=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=$substring(" 123456",a.HeadingLevel,(a.HeadingLevel+1>>0));$r=c.BaseRenderer.WriteString("<h"+d);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=AT(a);$s=6;case 6:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(c.BaseRenderer.Options.ToC||c.BaseRenderer.Options.HeadingID||c.BaseRenderer.Options.KramdownBlockIAL){$s=7;continue;}$s=8;continue;case 7:$r=c.BaseRenderer.WriteString(" id=\""+f+"\"");$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c.BaseRenderer.Options.KramdownBlockIAL){$s=10;continue;}$s=11;continue;case 10:if(!("id"===c.BaseRenderer.Options.KramdownIALIDRenderName)&&0<a.KramdownIAL.$length){$s=12;continue;}$s=13;continue;case 12:$r=c.BaseRenderer.WriteString(" "+c.BaseRenderer.Options.KramdownIALIDRenderName+"=\""+(g=(h=a.KramdownIAL,(0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0])),(1>=g.$length?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+1]))+"\"");$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 13:if(1<a.KramdownIAL.$length){$s=15;continue;}$s=16;continue;case 15:i=$subslice(a.KramdownIAL,1);j=i;k=0;case 17:if(!(k<j.$length)){$s=18;continue;}l=((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]);$r=c.BaseRenderer.WriteString(" "+(0>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+0])+"=\""+(1>=l.$length?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+1])+"\"");$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k++;$s=17;continue;case 18:case 16:case 11:case 8:$r=c.BaseRenderer.WriteString(">");$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:if(c.BaseRenderer.Options.HeadingAnchor){$s=21;continue;}$s=22;continue;case 21:m=AT(a);$s=23;case 23:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;$r=c.BaseRenderer.Tag("a",new CL([new CJ(["id","vditorAnchor-"+n]),new CJ(["class","vditor-anchor"]),new CJ(["href","#"+n])]),false);$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("<svg viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg>");$s=25;case 25:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("/a",CL.nil,false);$s=26;case 26:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 22:$r=c.BaseRenderer.WriteString("</h"+$substring(" 123456",a.HeadingLevel,(a.HeadingLevel+1>>0))+">");$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=28;case 28:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderHeading,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,$s};return $f;};BY.prototype.renderHeading=function(a,b){return this.$val.renderHeading(a,b);};BY.ptr.prototype.renderHeadingC8hMarker=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderHeadingC8hMarker=function(a,b){return this.$val.renderHeadingC8hMarker(a,b);};BY.ptr.prototype.renderHeadingID=function(a,b){var a,b,c;c=this;return 2;};BY.prototype.renderHeadingID=function(a,b){return this.$val.renderHeadingID(a,b);};BY.ptr.prototype.renderList=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];d=this;e="ul";if((1===a.ListData.Typ)||((3===a.ListData.Typ)&&(0===a.ListData.BulletChar))){e="ol";}if(b){$s=1;continue;}$s=2;continue;case 1:$r=d.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}c[0]=CL.nil;d.BaseRenderer.renderListStyle(a,(c.$ptr||(c.$ptr=new CR(function(){return this.$target[0];},function($v){this.$target[0]=$v;},c))));if((0===a.ListData.BulletChar)&&!((1===a.ListData.Start))){c[0]=$append(c[0],new CJ(["start",B.Itoa(a.ListData.Start)]));}d.handleKramdownBlockIAL(a);c[0]=$appendSlice(c[0],a.KramdownIAL);$r=d.BaseRenderer.Tag(e,c[0],false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Newline();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=d.BaseRenderer.Newline();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Tag("/"+e,CL.nil,false);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.BaseRenderer.Newline();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderList,$c:true,$r,a,b,c,d,e,$s};return $f;};BY.prototype.renderList=function(a,b){return this.$val.renderList(a,b);};BY.ptr.prototype.renderListItem=function(a,b){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=CL.nil;c.handleKramdownBlockIAL(a);d=$appendSlice(d,a.KramdownIAL);if((3===a.ListData.Typ)&&!(""===c.BaseRenderer.Options.GFMTaskListItemClass)&&!(CM.nil===a.FirstChild)&&(((100===a.FirstChild.Type))||(!(CM.nil===a.FirstChild.FirstChild)&&(100===a.FirstChild.FirstChild.Type)))){e=a.FirstChild.FirstChild;if(CM.nil===e){e=a.FirstChild;}f=c.BaseRenderer.Options.GFMTaskListItemClass;if(e.TaskListItemChecked){f=f+(" vditor-task--done");}d=$append(d,new CJ(["class",f]));}$r=c.BaseRenderer.Tag("li",d,false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Tag("/li",CL.nil,false);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderListItem,$c:true,$r,a,b,c,d,e,f,$s};return $f;};BY.prototype.renderListItem=function(a,b){return this.$val.renderListItem(a,b);};BY.ptr.prototype.renderTaskListItemMarker=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=CL.nil;if(a.TaskListItemChecked){d=$append(d,new CJ(["checked",""]));}d=$append(d,new CJ(["disabled",""]),new CJ(["type","checkbox"]));$r=c.BaseRenderer.Tag("input",d,true);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderTaskListItemMarker,$c:true,$r,a,b,c,d,$s};return $f;};BY.prototype.renderTaskListItemMarker=function(a,b){return this.$val.renderTaskListItemMarker(a,b);};BY.ptr.prototype.renderThematicBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("hr",CL.nil,true);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderThematicBreak,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderThematicBreak=function(a,b){return this.$val.renderThematicBreak(a,b);};BY.ptr.prototype.renderHardBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Tag("br",CL.nil,true);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderHardBreak,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderHardBreak=function(a,b){return this.$val.renderHardBreak(a,b);};BY.ptr.prototype.renderSoftBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(c.BaseRenderer.Options.SoftBreak2HardBreak){$s=3;continue;}$s=4;continue;case 3:$r=c.BaseRenderer.Tag("br",CL.nil,true);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=5;continue;case 4:$r=c.BaseRenderer.Newline();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:case 2:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderSoftBreak,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderSoftBreak=function(a,b){return this.$val.renderSoftBreak(a,b);};BY.ptr.prototype.handleKramdownBlockIAL=function(a){var a,b,c,d;b=this;if(b.BaseRenderer.Options.KramdownBlockIAL&&!("id"===b.BaseRenderer.Options.KramdownIALIDRenderName)&&0<a.KramdownIAL.$length){(c=(d=a.KramdownIAL,(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0])),(0>=c.$length?($throwRuntimeError("index out of range"),undefined):c.$array[c.$offset+0]=b.BaseRenderer.Options.KramdownIALIDRenderName));}};BY.prototype.handleKramdownBlockIAL=function(a){return this.$val.handleKramdownBlockIAL(a);};BY.ptr.prototype.renderTextMarkAttrs=function(a){var a,b,c,d,e,f,g,h,i,j;b=CL.nil;c=this;b=new CL([new CJ(["data-type",a.TextMarkType])]);d=C.Split(a.TextMarkType," ");e=d;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);if("block-ref"===g){b=$append(b,new CJ(["data-subtype",a.TextMarkBlockRefSubtype]));b=$append(b,new CJ(["data-id",a.TextMarkBlockRefID]));}else if("a"===g){h=a.TextMarkAHref;h=($bytesToString(c.BaseRenderer.LinkPath((new CI($stringToBytes(h))))));b=$append(b,new CJ(["data-href",h]));if(!(""===a.TextMarkATitle)){b=$append(b,new CJ(["data-title",a.TextMarkATitle]));}}else if("inline-math"===g){b=$append(b,new CJ(["data-subtype","math"]));i=a.TextMarkInlineMathContent;if(a.ParentIs(109,CN.nil)){i=C.ReplaceAll(i,"|","|");i=C.ReplaceAll(i,"\n","<br/>");}i=C.ReplaceAll(i,"_esc_newline_","\n");b=$append(b,new CJ(["data-content",i]));b=$append(b,new CJ(["contenteditable","false"]));b=$append(b,new CJ(["class","render-node"]));}else if("file-annotation-ref"===g){b=$append(b,new CJ(["data-id",a.TextMarkFileAnnotationRefID]));}else if("inline-memo"===g){j=a.TextMarkInlineMemoContent;j=C.ReplaceAll(j,"_esc_newline_","\n");b=$append(b,new CJ(["data-inline-memo-content",j]));}f++;}return b;};BY.prototype.renderTextMarkAttrs=function(a){return this.$val.renderTextMarkAttrs(a);};BY.ptr.prototype.spanNodeAttrs=function(a,b){var a,b,c;c=this;b.$set($appendSlice(b.$get(),a.KramdownIAL));};BY.prototype.spanNodeAttrs=function(a,b){return this.$val.spanNodeAttrs(a,b);};CB=function(a,b){var{a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,d,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,e,ea,eb,ec,ed,ee,ef,eg,eh,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=AR(a,b);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=new CA.ptr(c,CT.nil);e=0;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(e),{k:e,v:$methodVal(d,"renderDocument")});f=1;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(f),{k:f,v:$methodVal(d,"renderParagraph")});g=16;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(g),{k:g,v:$methodVal(d,"renderText")});h=27;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(h),{k:h,v:$methodVal(d,"renderCodeSpan")});i=28;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(i),{k:i,v:$methodVal(d,"renderCodeSpanOpenMarker")});j=29;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(j),{k:j,v:$methodVal(d,"renderCodeSpanContent")});k=30;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(k),{k:k,v:$methodVal(d,"renderCodeSpanCloseMarker")});l=11;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(l),{k:l,v:$methodVal(d,"renderCodeBlock")});m=12;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(m),{k:m,v:$methodVal(d,"renderCodeBlockOpenMarker")});n=14;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(n),{k:n,v:$methodVal(d,"renderCodeBlockInfoMarker")});o=15;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(o),{k:o,v:$methodVal(d,"renderCodeBlockCode")});p=13;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(p),{k:p,v:$methodVal(d,"renderCodeBlockCloseMarker")});q=300;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(q),{k:q,v:$methodVal(d,"renderMathBlock")});r=301;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(r),{k:r,v:$methodVal(d,"renderMathBlockOpenMarker")});s=302;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(s),{k:s,v:$methodVal(d,"renderMathBlockContent")});t=303;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(t),{k:t,v:$methodVal(d,"renderMathBlockCloseMarker")});u=304;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(u),{k:u,v:$methodVal(d,"renderInlineMath")});v=305;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(v),{k:v,v:$methodVal(d,"renderInlineMathOpenMarker")});w=306;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(w),{k:w,v:$methodVal(d,"renderInlineMathContent")});x=307;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(x),{k:x,v:$methodVal(d,"renderInlineMathCloseMarker")});y=17;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(y),{k:y,v:$methodVal(d,"renderEmphasis")});z=18;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(z),{k:z,v:$methodVal(d,"renderEmAsteriskOpenMarker")});aa=19;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aa),{k:aa,v:$methodVal(d,"renderEmAsteriskCloseMarker")});ab=20;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ab),{k:ab,v:$methodVal(d,"renderEmUnderscoreOpenMarker")});ac=21;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ac),{k:ac,v:$methodVal(d,"renderEmUnderscoreCloseMarker")});ad=22;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ad),{k:ad,v:$methodVal(d,"renderStrong")});ae=23;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ae),{k:ae,v:$methodVal(d,"renderStrongA6kOpenMarker")});af=24;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(af),{k:af,v:$methodVal(d,"renderStrongA6kCloseMarker")});ag=25;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ag),{k:ag,v:$methodVal(d,"renderStrongU8eOpenMarker")});ah=26;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ah),{k:ah,v:$methodVal(d,"renderStrongU8eCloseMarker")});ai=5;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ai),{k:ai,v:$methodVal(d,"renderBlockquote")});aj=6;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aj),{k:aj,v:$methodVal(d,"renderBlockquoteMarker")});ak=2;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ak),{k:ak,v:$methodVal(d,"renderHeading")});al=3;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(al),{k:al,v:$methodVal(d,"renderHeadingC8hMarker")});am=420;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(am),{k:am,v:$methodVal(d,"renderHeadingID")});an=7;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(an),{k:an,v:$methodVal(d,"renderList")});ao=8;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ao),{k:ao,v:$methodVal(d,"renderListItem")});ap=4;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ap),{k:ap,v:$methodVal(d,"renderThematicBreak")});aq=31;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aq),{k:aq,v:$methodVal(d,"renderHardBreak")});ar=32;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ar),{k:ar,v:$methodVal(d,"renderSoftBreak")});as=9;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(as),{k:as,v:$methodVal(d,"renderHTML")});at=10;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(at),{k:at,v:$methodVal(d,"renderInlineHTML")});au=33;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(au),{k:au,v:$methodVal(d,"renderLink")});av=34;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(av),{k:av,v:$methodVal(d,"renderImage")});aw=35;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aw),{k:aw,v:$methodVal(d,"renderBang")});ax=36;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ax),{k:ax,v:$methodVal(d,"renderOpenBracket")});ay=37;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ay),{k:ay,v:$methodVal(d,"renderCloseBracket")});az=38;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(az),{k:az,v:$methodVal(d,"renderOpenParen")});ba=39;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ba),{k:ba,v:$methodVal(d,"renderCloseParen")});bb=47;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bb),{k:bb,v:$methodVal(d,"renderLess")});bc=48;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bc),{k:bc,v:$methodVal(d,"renderGreater")});bd=466;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bd),{k:bd,v:$methodVal(d,"renderOpenBrace")});be=467;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(be),{k:be,v:$methodVal(d,"renderCloseBrace")});bf=40;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bf),{k:bf,v:$methodVal(d,"renderLinkText")});bg=43;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bg),{k:bg,v:$methodVal(d,"renderLinkSpace")});bh=41;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bh),{k:bh,v:$methodVal(d,"renderLinkDest")});bi=42;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bi),{k:bi,v:$methodVal(d,"renderLinkTitle")});bj=101;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bj),{k:bj,v:$methodVal(d,"renderStrikethrough")});bk=102;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bk),{k:bk,v:$methodVal(d,"renderStrikethrough1OpenMarker")});bl=103;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bl),{k:bl,v:$methodVal(d,"renderStrikethrough1CloseMarker")});bm=104;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bm),{k:bm,v:$methodVal(d,"renderStrikethrough2OpenMarker")});bn=105;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bn),{k:bn,v:$methodVal(d,"renderStrikethrough2CloseMarker")});bo=100;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bo),{k:bo,v:$methodVal(d,"renderTaskListItemMarker")});bp=106;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bp),{k:bp,v:$methodVal(d,"renderTable")});bq=107;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bq),{k:bq,v:$methodVal(d,"renderTableHead")});br=108;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(br),{k:br,v:$methodVal(d,"renderTableRow")});bs=109;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bs),{k:bs,v:$methodVal(d,"renderTableCell")});bt=200;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bt),{k:bt,v:$methodVal(d,"renderEmoji")});bu=201;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bu),{k:bu,v:$methodVal(d,"renderEmojiUnicode")});bv=202;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bv),{k:bv,v:$methodVal(d,"renderEmojiImg")});bw=203;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bw),{k:bw,v:$methodVal(d,"renderEmojiAlias")});bx=410;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bx),{k:bx,v:$methodVal(d,"renderFootnotesDefBlock")});by=411;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(by),{k:by,v:$methodVal(d,"renderFootnotesDef")});bz=412;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(bz),{k:bz,v:$methodVal(d,"renderFootnotesRef")});ca=415;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ca),{k:ca,v:$methodVal(d,"renderToC")});cb=400;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cb),{k:cb,v:$methodVal(d,"renderBackslash")});cc=401;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cc),{k:cc,v:$methodVal(d,"renderBackslashContent")});cd=44;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cd),{k:cd,v:$methodVal(d,"renderHtmlEntity")});ce=425;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ce),{k:ce,v:$methodVal(d,"renderYamlFrontMatter")});cf=426;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cf),{k:cf,v:$methodVal(d,"renderYamlFrontMatterOpenMarker")});cg=427;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cg),{k:cg,v:$methodVal(d,"renderYamlFrontMatterContent")});ch=428;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ch),{k:ch,v:$methodVal(d,"renderYamlFrontMatterCloseMarker")});ci=430;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ci),{k:ci,v:$methodVal(d,"renderBlockRef")});cj=431;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cj),{k:cj,v:$methodVal(d,"renderBlockRefID")});ck=432;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ck),{k:ck,v:$methodVal(d,"renderBlockRefSpace")});cl=433;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cl),{k:cl,v:$methodVal(d,"renderBlockRefText")});cm=434;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cm),{k:cm,v:$methodVal(d,"renderBlockRefDynamicText")});cn=540;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cn),{k:cn,v:$methodVal(d,"renderFileAnnotationRef")});co=541;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(co),{k:co,v:$methodVal(d,"renderFileAnnotationRefID")});cp=542;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cp),{k:cp,v:$methodVal(d,"renderFileAnnotationRefSpace")});cq=543;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cq),{k:cq,v:$methodVal(d,"renderFileAnnotationRefText")});cr=450;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cr),{k:cr,v:$methodVal(d,"renderMark")});cs=451;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cs),{k:cs,v:$methodVal(d,"renderMark1OpenMarker")});ct=452;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ct),{k:ct,v:$methodVal(d,"renderMark1CloseMarker")});cu=453;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cu),{k:cu,v:$methodVal(d,"renderMark2OpenMarker")});cv=454;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cv),{k:cv,v:$methodVal(d,"renderMark2CloseMarker")});cw=485;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cw),{k:cw,v:$methodVal(d,"renderSup")});cx=486;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cx),{k:cx,v:$methodVal(d,"renderSupOpenMarker")});cy=487;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cy),{k:cy,v:$methodVal(d,"renderSupCloseMarker")});cz=490;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(cz),{k:cz,v:$methodVal(d,"renderSub")});da=491;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(da),{k:da,v:$methodVal(d,"renderSubOpenMarker")});db=492;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(db),{k:db,v:$methodVal(d,"renderSubCloseMarker")});dc=455;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dc),{k:dc,v:$methodVal(d,"renderKramdownBlockIAL")});dd=456;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dd),{k:dd,v:$methodVal(d,"renderKramdownSpanIAL")});de=465;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(de),{k:de,v:$methodVal(d,"renderBlockQueryEmbed")});df=468;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(df),{k:df,v:$methodVal(d,"renderBlockQueryEmbedScript")});dg=460;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dg),{k:dg,v:$methodVal(d,"renderTag")});dh=461;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dh),{k:dh,v:$methodVal(d,"renderTagOpenMarker")});di=462;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(di),{k:di,v:$methodVal(d,"renderTagCloseMarker")});dj=45;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dj),{k:dj,v:$methodVal(d,"renderLinkRefDefBlock")});dk=46;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dk),{k:dk,v:$methodVal(d,"renderLinkRefDef")});dl=475;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dl),{k:dl,v:$methodVal(d,"renderSuperBlock")});dm=476;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dm),{k:dm,v:$methodVal(d,"renderSuperBlockOpenMarker")});dn=477;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dn),{k:dn,v:$methodVal(d,"renderSuperBlockLayoutMarker")});dp=478;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dp),{k:dp,v:$methodVal(d,"renderSuperBlockCloseMarker")});dq=495;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dq),{k:dq,v:$methodVal(d,"renderGitConflict")});dr=496;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dr),{k:dr,v:$methodVal(d,"renderGitConflictOpenMarker")});ds=497;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ds),{k:ds,v:$methodVal(d,"renderGitConflictContent")});dt=498;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dt),{k:dt,v:$methodVal(d,"renderGitConflictCloseMarker")});du=500;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(du),{k:du,v:$methodVal(d,"renderIFrame")});dv=535;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dv),{k:dv,v:$methodVal(d,"renderWidget")});dw=510;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dw),{k:dw,v:$methodVal(d,"renderVideo")});dx=505;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dx),{k:dx,v:$methodVal(d,"renderAudio")});dy=515;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dy),{k:dy,v:$methodVal(d,"renderKbd")});dz=516;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(dz),{k:dz,v:$methodVal(d,"renderKbdOpenMarker")});ea=517;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ea),{k:ea,v:$methodVal(d,"renderKbdCloseMarker")});eb=520;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(eb),{k:eb,v:$methodVal(d,"renderUnderline")});ec=521;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ec),{k:ec,v:$methodVal(d,"renderUnderlineOpenMarker")});ed=522;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ed),{k:ed,v:$methodVal(d,"renderUnderlineCloseMarker")});ee=525;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ee),{k:ee,v:$methodVal(d,"renderBr")});ef=530;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ef),{k:ef,v:$methodVal(d,"renderTextMark")});eg=550;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(eg),{k:eg,v:$methodVal(d,"renderAttributeView")});eh=560;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(eh),{k:eh,v:$methodVal(d,"renderCustomBlock")});$s=-1;return d;}return;}var $f={$blk:CB,$c:true,$r,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,b,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,d,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,dt,du,dv,dw,dx,dy,dz,e,ea,eb,ec,ed,ee,ef,eg,eh,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};$pkg.NewFormatRenderer=CB;CA.ptr.prototype.renderCustomBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString(";;;");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString(a.CustomBlockInfo);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(a.Tokens);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString(";;;");$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!c.BaseRenderer.isLastNode(c.BaseRenderer.Tree.Root,a)){$s=10;continue;}$s=11;continue;case 10:if(c.withoutKramdownBlockIAL(a)){$s=12;continue;}$s=13;continue;case 12:$r=c.BaseRenderer.WriteByte(10);$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 13:case 11:case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderCustomBlock,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderCustomBlock=function(a,b){return this.$val.renderCustomBlock(a,b);};CA.ptr.prototype.renderAttributeView=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Tag("div",new CL([new CJ(["data-type","NodeAttributeView"]),new CJ(["data-av-id",a.AttributeViewID]),new CJ(["data-av-type",a.AttributeViewType])]),false);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</div>");$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!c.BaseRenderer.isLastNode(c.BaseRenderer.Tree.Root,a)){$s=7;continue;}$s=8;continue;case 7:if(c.withoutKramdownBlockIAL(a)){$s=9;continue;}$s=10;continue;case 9:$r=c.BaseRenderer.WriteByte(10);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:case 8:case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderAttributeView,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderAttributeView=function(a,b){return this.$val.renderAttributeView(a,b);};CA.ptr.prototype.renderTextMark=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(J.ContainTextMark(a,new CJ(["code","inline-math","kbd"]))){$s=4;continue;}$s=5;continue;case 4:if(c.BaseRenderer.Options.AutoSpace){$s=7;continue;}$s=8;continue;case 7:d=a.PreviousNodeText();$s=9;case 9:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!(""===e)){$s=10;continue;}$s=11;continue;case 10:f=E.DecodeLastRuneInString(e);g=f[0];if("\xE2\x80\x8B"===($encodeRune(g))){e=C.TrimSuffix(e,"\xE2\x80\x8B");h=E.DecodeLastRuneInString(e);g=h[0];}if(D.IsLetter(g)||D.IsDigit(g)){$s=12;continue;}$s=13;continue;case 12:$r=c.BaseRenderer.WriteByte(32);$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 13:case 11:case 8:$s=6;continue;case 5:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:i=c.renderTextMarkAttrs(a);$r=c.BaseRenderer.Tag("span",i,false);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=a.TextMarkTextContent;if(a.ParentIs(109,CN.nil)){j=C.ReplaceAll(j,"\\|","|");j=C.ReplaceAll(j,"|","\\|");j=C.ReplaceAll(j,"\n","<br/>");if(C.Contains(a.TextMarkType,"code")){j=C.ReplaceAll(j,"<br/>","");}}if(c.BaseRenderer.Options.AutoSpace&&!J.ContainTextMark(a,new CJ(["block-ref","code","inline-math","kbd","tag"]))){j=($bytesToString(c.BaseRenderer.Space((new CI($stringToBytes(j))))));}$r=c.BaseRenderer.WriteString(j);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteString("</span>");$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(J.ContainTextMark(a,new CJ(["code","inline-math","kbd"]))){$s=19;continue;}$s=20;continue;case 19:if(c.BaseRenderer.Options.AutoSpace){$s=22;continue;}$s=23;continue;case 22:k=a.NextNodeText();$s=24;case 24:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;if(!(""===l)){$s=25;continue;}$s=26;continue;case 25:m=E.DecodeRuneInString(l);n=m[0];if("\xE2\x80\x8B"===($encodeRune(n))){l=C.TrimPrefix(l,"\xE2\x80\x8B");o=E.DecodeRuneInString(l);n=o[0];}if(D.IsLetter(n)||D.IsDigit(n)){$s=27;continue;}$s=28;continue;case 27:$r=c.BaseRenderer.WriteByte(32);$s=29;case 29:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 28:case 26:case 23:$s=21;continue;case 20:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=30;case 30:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 21:case 3:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderTextMark,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,$s};return $f;};CA.prototype.renderTextMark=function(a,b){return this.$val.renderTextMark(a,b);};CA.ptr.prototype.renderTextMarkAttrs=function(a){var a,b,c,d,e,f,g,h,i,j,k;b=CL.nil;c=this;b=new CL([new CJ(["data-type",a.TextMarkType])]);d=C.Split(a.TextMarkType," ");e=d;f=0;while(true){if(!(f<e.$length)){break;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);if("block-ref"===g){b=$append(b,new CJ(["data-subtype",a.TextMarkBlockRefSubtype]));b=$append(b,new CJ(["data-id",a.TextMarkBlockRefID]));}else if("a"===g){h=a.TextMarkAHref;h=($bytesToString(c.BaseRenderer.LinkPath((new CI($stringToBytes(h))))));if(a.ParentIs(109,CN.nil)){h=C.ReplaceAll(h,"\\|","|");h=C.ReplaceAll(h,"|","\\|");}b=$append(b,new CJ(["data-href",h]));if(!(""===a.TextMarkATitle)){i=a.TextMarkATitle;if(a.ParentIs(109,CN.nil)){i=C.ReplaceAll(i,"\\|","|");i=C.ReplaceAll(i,"|","\\|");}b=$append(b,new CJ(["data-title",i]));}}else if("inline-math"===g){b=$append(b,new CJ(["data-subtype","math"]));j=a.TextMarkInlineMathContent;if(a.ParentIs(109,CN.nil)){j=C.ReplaceAll(j,"|","|");j=C.ReplaceAll(j,"\n","<br/>");}j=G.EscapeHTMLStr(j);b=$append(b,new CJ(["data-content",j]));b=$append(b,new CJ(["contenteditable","false"]));b=$append(b,new CJ(["class","render-node"]));}else if("file-annotation-ref"===g){b=$append(b,new CJ(["data-id",a.TextMarkFileAnnotationRefID]));}else if("inline-memo"===g){k=a.TextMarkInlineMemoContent;b=$append(b,new CJ(["data-inline-memo-content",k]));}f++;}return b;};CA.prototype.renderTextMarkAttrs=function(a){return this.$val.renderTextMarkAttrs(a);};CA.ptr.prototype.renderBr=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<br />");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderBr,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderBr=function(a,b){return this.$val.renderBr(a,b);};CA.ptr.prototype.renderUnderline=function(a,b){var a,b,c;c=this;return 2;};CA.prototype.renderUnderline=function(a,b){return this.$val.renderUnderline(a,b);};CA.ptr.prototype.renderUnderlineOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<u>");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderUnderlineOpenMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderUnderlineOpenMarker=function(a,b){return this.$val.renderUnderlineOpenMarker(a,b);};CA.ptr.prototype.renderUnderlineCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("</u>");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderUnderlineCloseMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderUnderlineCloseMarker=function(a,b){return this.$val.renderUnderlineCloseMarker(a,b);};CA.ptr.prototype.renderKbd=function(a,b){var a,b,c;c=this;return 2;};CA.prototype.renderKbd=function(a,b){return this.$val.renderKbd(a,b);};CA.ptr.prototype.renderKbdOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("<kbd>");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderKbdOpenMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderKbdOpenMarker=function(a,b){return this.$val.renderKbdOpenMarker(a,b);};CA.ptr.prototype.renderKbdCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("</kbd>");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderKbdCloseMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderKbdCloseMarker=function(a,b){return this.$val.renderKbdCloseMarker(a,b);};CA.ptr.prototype.renderVideo=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.Tokens;d=c.BaseRenderer.tagSrcPath(d);$r=c.BaseRenderer.Write(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!c.BaseRenderer.isLastNode(c.BaseRenderer.Tree.Root,a)){$s=6;continue;}$s=7;continue;case 6:$r=c.BaseRenderer.WriteByte(10);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderVideo,$c:true,$r,a,b,c,d,$s};return $f;};CA.prototype.renderVideo=function(a,b){return this.$val.renderVideo(a,b);};CA.ptr.prototype.renderAudio=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.Tokens;d=c.BaseRenderer.tagSrcPath(d);$r=c.BaseRenderer.Write(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!c.BaseRenderer.isLastNode(c.BaseRenderer.Tree.Root,a)){$s=6;continue;}$s=7;continue;case 6:$r=c.BaseRenderer.WriteByte(10);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderAudio,$c:true,$r,a,b,c,d,$s};return $f;};CA.prototype.renderAudio=function(a,b){return this.$val.renderAudio(a,b);};CA.ptr.prototype.renderIFrame=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.Tokens;d=c.BaseRenderer.tagSrcPath(d);$r=c.BaseRenderer.Write(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!c.BaseRenderer.isLastNode(c.BaseRenderer.Tree.Root,a)){$s=6;continue;}$s=7;continue;case 6:$r=c.BaseRenderer.WriteByte(10);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderIFrame,$c:true,$r,a,b,c,d,$s};return $f;};CA.prototype.renderIFrame=function(a,b){return this.$val.renderIFrame(a,b);};CA.ptr.prototype.renderWidget=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.Tokens;d=c.BaseRenderer.tagSrcPath(d);$r=c.BaseRenderer.Write(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!c.BaseRenderer.isLastNode(c.BaseRenderer.Tree.Root,a)){$s=6;continue;}$s=7;continue;case 6:$r=c.BaseRenderer.WriteByte(10);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderWidget,$c:true,$r,a,b,c,d,$s};return $f;};CA.prototype.renderWidget=function(a,b){return this.$val.renderWidget(a,b);};CA.ptr.prototype.renderGitConflictCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderGitConflictCloseMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderGitConflictCloseMarker=function(a,b){return this.$val.renderGitConflictCloseMarker(a,b);};CA.ptr.prototype.renderGitConflictContent=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderGitConflictContent,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderGitConflictContent=function(a,b){return this.$val.renderGitConflictContent(a,b);};CA.ptr.prototype.renderGitConflictOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderGitConflictOpenMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderGitConflictOpenMarker=function(a,b){return this.$val.renderGitConflictOpenMarker(a,b);};CA.ptr.prototype.renderGitConflict=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderGitConflict,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderGitConflict=function(a,b){return this.$val.renderGitConflict(a,b);};CA.ptr.prototype.renderSuperBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderSuperBlock,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderSuperBlock=function(a,b){return this.$val.renderSuperBlock(a,b);};CA.ptr.prototype.renderSuperBlockOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b&&c.BaseRenderer.Options.SuperBlock){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write((new CI($stringToBytes("{{{"))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderSuperBlockOpenMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderSuperBlockOpenMarker=function(a,b){return this.$val.renderSuperBlockOpenMarker(a,b);};CA.ptr.prototype.renderSuperBlockLayoutMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b&&c.BaseRenderer.Options.SuperBlock){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(10);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderSuperBlockLayoutMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderSuperBlockLayoutMarker=function(a,b){return this.$val.renderSuperBlockLayoutMarker(a,b);};CA.ptr.prototype.renderSuperBlockCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(c.BaseRenderer.Options.SuperBlock){$s=3;continue;}$s=4;continue;case 3:$r=c.BaseRenderer.Newline();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write((new CI($stringToBytes("}}}"))));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:if(!c.BaseRenderer.isLastNode(c.BaseRenderer.Tree.Root,a)){$s=8;continue;}$s=9;continue;case 8:if(c.withoutKramdownBlockIAL(a.Parent)){$s=10;continue;}$s=11;continue;case 10:$r=c.BaseRenderer.WriteByte(10);$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 11:case 9:case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderSuperBlockCloseMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderSuperBlockCloseMarker=function(a,b){return this.$val.renderSuperBlockCloseMarker(a,b);};CA.ptr.prototype.renderLinkRefDefBlock=function(a,b){var a,b,c;c=this;return 2;};CA.prototype.renderLinkRefDefBlock=function(a,b){return this.$val.renderLinkRefDefBlock(a,b);};CA.ptr.prototype.renderLinkRefDef=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(91);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(a.Tokens);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("]: ");$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteByte(10);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderLinkRefDef,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderLinkRefDef=function(a,b){return this.$val.renderLinkRefDef(a,b);};CA.ptr.prototype.renderTag=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderTag,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderTag=function(a,b){return this.$val.renderTag(a,b);};CA.ptr.prototype.renderTagOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(35);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderTagOpenMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderTagOpenMarker=function(a,b){return this.$val.renderTagOpenMarker(a,b);};CA.ptr.prototype.renderTagCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(35);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderTagCloseMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderTagCloseMarker=function(a,b){return this.$val.renderTagCloseMarker(a,b);};CA.ptr.prototype.renderKramdownBlockIAL=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!c.BaseRenderer.Options.KramdownBlockIAL){$s=-1;return 2;}if(!(CM.nil===a.Previous)&&(8===a.Previous.Type)){$s=-1;return 2;}if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c.BaseRenderer.Options.KramdownBlockIAL){$s=5;continue;}$s=6;continue;case 5:if(K.IsDocIAL(a.Tokens)){$s=7;continue;}$s=8;continue;case 7:$r=c.BaseRenderer.WriteByte(10);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 8:$r=c.BaseRenderer.Write(a.Tokens);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:$s=3;continue;case 2:if((8===a.Parent.Type)||(7===a.Parent.Type)){$s=11;continue;}$s=12;continue;case 11:if(!a.Parent.ListData.Tight){$s=14;continue;}$s=15;continue;case 14:$r=c.BaseRenderer.Newline();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 15:$s=13;continue;case 12:$r=c.BaseRenderer.Newline();$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 13:$r=c.BaseRenderer.WriteByte(10);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderKramdownBlockIAL,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderKramdownBlockIAL=function(a,b){return this.$val.renderKramdownBlockIAL(a,b);};CA.ptr.prototype.renderKramdownSpanIAL=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!c.BaseRenderer.Options.KramdownSpanIAL){$s=-1;return 2;}if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderKramdownSpanIAL,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderKramdownSpanIAL=function(a,b){return this.$val.renderKramdownSpanIAL(a,b);};CA.ptr.prototype.renderMark=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderMark,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderMark=function(a,b){return this.$val.renderMark(a,b);};CA.ptr.prototype.renderMark1OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("=");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderMark1OpenMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderMark1OpenMarker=function(a,b){return this.$val.renderMark1OpenMarker(a,b);};CA.ptr.prototype.renderMark1CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("=");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderMark1CloseMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderMark1CloseMarker=function(a,b){return this.$val.renderMark1CloseMarker(a,b);};CA.ptr.prototype.renderMark2OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("==");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderMark2OpenMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderMark2OpenMarker=function(a,b){return this.$val.renderMark2OpenMarker(a,b);};CA.ptr.prototype.renderMark2CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("==");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderMark2CloseMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderMark2CloseMarker=function(a,b){return this.$val.renderMark2CloseMarker(a,b);};CA.ptr.prototype.renderSup=function(a,b){var a,b,c;c=this;return 2;};CA.prototype.renderSup=function(a,b){return this.$val.renderSup(a,b);};CA.ptr.prototype.renderSupOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("^");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderSupOpenMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderSupOpenMarker=function(a,b){return this.$val.renderSupOpenMarker(a,b);};CA.ptr.prototype.renderSupCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("^");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderSupCloseMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderSupCloseMarker=function(a,b){return this.$val.renderSupCloseMarker(a,b);};CA.ptr.prototype.renderSub=function(a,b){var a,b,c;c=this;return 2;};CA.prototype.renderSub=function(a,b){return this.$val.renderSub(a,b);};CA.ptr.prototype.renderSubOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("~");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderSubOpenMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderSubOpenMarker=function(a,b){return this.$val.renderSubOpenMarker(a,b);};CA.ptr.prototype.renderSubCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("~");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderSubCloseMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderSubCloseMarker=function(a,b){return this.$val.renderSubCloseMarker(a,b);};CA.ptr.prototype.renderBlockQueryEmbedScript=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderBlockQueryEmbedScript,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderBlockQueryEmbedScript=function(a,b){return this.$val.renderBlockQueryEmbedScript(a,b);};CA.ptr.prototype.renderBlockQueryEmbed=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.Newline();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderBlockQueryEmbed,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderBlockQueryEmbed=function(a,b){return this.$val.renderBlockQueryEmbed(a,b);};CA.ptr.prototype.renderBlockRef=function(a,b){var a,b,c;c=this;return 2;};CA.prototype.renderBlockRef=function(a,b){return this.$val.renderBlockRef(a,b);};CA.ptr.prototype.renderBlockRefID=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderBlockRefID,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderBlockRefID=function(a,b){return this.$val.renderBlockRefID(a,b);};CA.ptr.prototype.renderBlockRefSpace=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(32);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderBlockRefSpace,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderBlockRefSpace=function(a,b){return this.$val.renderBlockRefSpace(a,b);};CA.ptr.prototype.renderBlockRefText=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(34);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=G.EscapeHTML(a.Tokens);d=A.ReplaceAll(d,(new CI($stringToBytes("'"))),(new CI($stringToBytes("'"))));$r=c.BaseRenderer.Write(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(34);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderBlockRefText,$c:true,$r,a,b,c,d,$s};return $f;};CA.prototype.renderBlockRefText=function(a,b){return this.$val.renderBlockRefText(a,b);};CA.ptr.prototype.renderBlockRefDynamicText=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(39);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=G.EscapeHTML(a.Tokens);d=A.ReplaceAll(d,(new CI($stringToBytes("'"))),(new CI($stringToBytes("'"))));$r=c.BaseRenderer.Write(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(39);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderBlockRefDynamicText,$c:true,$r,a,b,c,d,$s};return $f;};CA.prototype.renderBlockRefDynamicText=function(a,b){return this.$val.renderBlockRefDynamicText(a,b);};CA.ptr.prototype.renderFileAnnotationRef=function(a,b){var a,b,c;c=this;return 2;};CA.prototype.renderFileAnnotationRef=function(a,b){return this.$val.renderFileAnnotationRef(a,b);};CA.ptr.prototype.renderFileAnnotationRefID=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderFileAnnotationRefID,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderFileAnnotationRefID=function(a,b){return this.$val.renderFileAnnotationRefID(a,b);};CA.ptr.prototype.renderFileAnnotationRefSpace=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(32);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderFileAnnotationRefSpace,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderFileAnnotationRefSpace=function(a,b){return this.$val.renderFileAnnotationRefSpace(a,b);};CA.ptr.prototype.renderFileAnnotationRefText=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(34);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=G.EscapeHTML(a.Tokens);d=A.ReplaceAll(d,(new CI($stringToBytes("'"))),(new CI($stringToBytes("'"))));$r=c.BaseRenderer.Write(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(34);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderFileAnnotationRefText,$c:true,$r,a,b,c,d,$s};return $f;};CA.prototype.renderFileAnnotationRefText=function(a,b){return this.$val.renderFileAnnotationRefText(a,b);};CA.ptr.prototype.renderYamlFrontMatterCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(J.YamlFrontMatterMarker);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(10);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderYamlFrontMatterCloseMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderYamlFrontMatterCloseMarker=function(a,b){return this.$val.renderYamlFrontMatterCloseMarker(a,b);};CA.ptr.prototype.renderYamlFrontMatterContent=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(10);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderYamlFrontMatterContent,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderYamlFrontMatterContent=function(a,b){return this.$val.renderYamlFrontMatterContent(a,b);};CA.ptr.prototype.renderYamlFrontMatterOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(J.YamlFrontMatterMarker);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(10);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderYamlFrontMatterOpenMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderYamlFrontMatterOpenMarker=function(a,b){return this.$val.renderYamlFrontMatterOpenMarker(a,b);};CA.ptr.prototype.renderYamlFrontMatter=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!b&&!c.BaseRenderer.isLastNode(c.BaseRenderer.Tree.Root,a)){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.WriteByte(10);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderYamlFrontMatter,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderYamlFrontMatter=function(a,b){return this.$val.renderYamlFrontMatter(a,b);};CA.ptr.prototype.renderHtmlEntity=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.HtmlEntityTokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderHtmlEntity,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderHtmlEntity=function(a,b){return this.$val.renderHtmlEntity(a,b);};CA.ptr.prototype.renderBackslashContent=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderBackslashContent,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderBackslashContent=function(a,b){return this.$val.renderBackslashContent(a,b);};CA.ptr.prototype.renderBackslash=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(92);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderBackslash,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderBackslash=function(a,b){return this.$val.renderBackslash(a,b);};CA.ptr.prototype.renderToC=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("[toc]\n\n");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderToC,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderToC=function(a,b){return this.$val.renderToC(a,b);};CA.ptr.prototype.renderFootnotesRef=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("["+K.BytesToStr(a.Tokens)+"]");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderFootnotesRef,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderFootnotesRef=function(a,b){return this.$val.renderFootnotesRef(a,b);};CA.ptr.prototype.renderFootnotesDefBlock=function(a,b){var a,b,c;c=this;return 2;};CA.prototype.renderFootnotesDefBlock=function(a,b){return this.$val.renderFootnotesDefBlock(a,b);};CA.ptr.prototype.renderFootnotesDef=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:c.BaseRenderer.Writer=new A.Buffer.ptr(CI.nil,0,0);c.NodeWriterStack=$append(c.NodeWriterStack,c.BaseRenderer.Writer);$r=c.BaseRenderer.WriteString("["+K.BytesToStr(a.Tokens)+"]: ");$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:f=(d=c.NodeWriterStack,e=c.NodeWriterStack.$length-1>>0,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]));c.NodeWriterStack=$subslice(c.NodeWriterStack,0,(c.NodeWriterStack.$length-1>>0));g=f.String();h=C.Split(g,"\n");i=new A.Buffer.ptr(CI.nil,0,0);j=h;k=0;case 5:if(!(k<j.$length)){$s=6;continue;}l=k;m=((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]);if(0===l){$s=7;continue;}$s=8;continue;case 7:n=i.WriteString(m+"\n");$s=10;case 10:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}n;$s=9;continue;case 8:if(""===m){$s=11;continue;}$s=12;continue;case 11:o=i.WriteString("\n");$s=14;case 14:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}o;$s=13;continue;case 12:p=i.WriteString(" "+m+"\n");$s=15;case 15:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;case 13:case 9:k++;$s=5;continue;case 6:s=(q=c.NodeWriterStack,r=c.NodeWriterStack.$length-1>>0,((r<0||r>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+r])).Write(i.Bytes());$s=16;case 16:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;c.BaseRenderer.Writer=(t=c.NodeWriterStack,u=c.NodeWriterStack.$length-1>>0,((u<0||u>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+u]));case 3:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderFootnotesDef,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s};return $f;};CA.prototype.renderFootnotesDef=function(a,b){return this.$val.renderFootnotesDef(a,b);};CA.ptr.prototype.renderEmojiAlias=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderEmojiAlias,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderEmojiAlias=function(a,b){return this.$val.renderEmojiAlias(a,b);};CA.ptr.prototype.renderEmojiImg=function(a,b){var a,b,c;c=this;return 2;};CA.prototype.renderEmojiImg=function(a,b){return this.$val.renderEmojiImg(a,b);};CA.ptr.prototype.renderEmojiUnicode=function(a,b){var a,b,c;c=this;return 2;};CA.prototype.renderEmojiUnicode=function(a,b){return this.$val.renderEmojiUnicode(a,b);};CA.ptr.prototype.renderEmoji=function(a,b){var a,b,c;c=this;return 2;};CA.prototype.renderEmoji=function(a,b){return this.$val.renderEmoji(a,b);};CA.ptr.prototype.renderTableCell=function(a,b){var{a,b,c,d,e,f,g,h,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d=a.TableCellContentMaxWidth-a.TableCellContentWidth>>0;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(124);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!c.BaseRenderer.Options.ProtyleWYSIWYG){$s=5;continue;}$s=6;continue;case 5:$r=c.BaseRenderer.WriteByte(32);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=a.TableCellAlign;if(e===(2)){$s=9;continue;}if(e===(3)){$s=10;continue;}$s=11;continue;case 9:$r=c.BaseRenderer.Write(A.Repeat(new CI([32]),(f=d/2,(f===f&&f!==1/0&&f!==-1/0)?f>>0:$throwRuntimeError("integer divide by zero"))));$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=11;continue;case 10:$r=c.BaseRenderer.Write(A.Repeat(new CI([32]),d));$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 11:case 8:case 6:$s=3;continue;case 2:if(!c.BaseRenderer.Options.ProtyleWYSIWYG){$s=14;continue;}$s=15;continue;case 14:g=a.TableCellAlign;if(g===(2)){$s=17;continue;}if(g===(3)){$s=18;continue;}$s=19;continue;case 17:$r=c.BaseRenderer.Write(A.Repeat(new CI([32]),(h=d/2,(h===h&&h!==1/0&&h!==-1/0)?h>>0:$throwRuntimeError("integer divide by zero"))));$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=20;continue;case 18:$s=20;continue;case 19:$r=c.BaseRenderer.Write(A.Repeat(new CI([32]),d));$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 20:case 16:$r=c.BaseRenderer.WriteByte(32);$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 15:case 3:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderTableCell,$c:true,$r,a,b,c,d,e,f,g,h,$s};return $f;};CA.prototype.renderTableCell=function(a,b){return this.$val.renderTableCell(a,b);};CA.ptr.prototype.renderTableRow=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("|\n");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderTableRow,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderTableRow=function(a,b){return this.$val.renderTableRow(a,b);};CA.ptr.prototype.renderTableHead=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!b){$s=1;continue;}$s=2;continue;case 1:d=a.FirstChild;e=d.FirstChild;case 3:if(!(!(CM.nil===e))){$s=4;continue;}if(456===e.Type){e=e.Next;$s=3;continue;}f=e.TableCellAlign;g=f;if(g===(0)){$s=6;continue;}if(g===(1)){$s=7;continue;}if(g===(2)){$s=8;continue;}if(g===(3)){$s=9;continue;}$s=10;continue;case 6:$r=c.BaseRenderer.WriteString("| -");$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=e.TableCellContentMaxWidth-1>>0;if(0<h){$s=12;continue;}$s=13;continue;case 12:$r=c.BaseRenderer.Write(A.Repeat(new CI([45]),h));$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 13:if(!c.BaseRenderer.Options.ProtyleWYSIWYG){$s=15;continue;}$s=16;continue;case 15:$r=c.BaseRenderer.WriteByte(32);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 16:$s=10;continue;case 7:$r=c.BaseRenderer.WriteString("| :-");$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=e.TableCellContentMaxWidth-2>>0;if(0<i){$s=19;continue;}$s=20;continue;case 19:$r=c.BaseRenderer.Write(A.Repeat(new CI([45]),i));$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 20:if(!c.BaseRenderer.Options.ProtyleWYSIWYG){$s=22;continue;}$s=23;continue;case 22:$r=c.BaseRenderer.WriteByte(32);$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 23:$s=10;continue;case 8:$r=c.BaseRenderer.WriteString("| :-");$s=25;case 25:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=e.TableCellContentMaxWidth-3>>0;if(0<j){$s=26;continue;}$s=27;continue;case 26:$r=c.BaseRenderer.Write(A.Repeat(new CI([45]),j));$s=28;case 28:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 27:$r=c.BaseRenderer.WriteString(": ");$s=29;case 29:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 9:$r=c.BaseRenderer.WriteString("| -");$s=30;case 30:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=e.TableCellContentMaxWidth-2>>0;if(0<k){$s=31;continue;}$s=32;continue;case 31:$r=c.BaseRenderer.Write(A.Repeat(new CI([45]),k));$s=33;case 33:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 32:$r=c.BaseRenderer.WriteString(": ");$s=34;case 34:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:case 5:e=e.Next;$s=3;continue;case 4:$r=c.BaseRenderer.WriteString("|\n");$s=35;case 35:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderTableHead,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,$s};return $f;};CA.prototype.renderTableHead=function(a,b){return this.$val.renderTableHead(a,b);};CA.ptr.prototype.renderTable=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=[c];c[0]=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=DD.nil;d=$append(d,new CO([]));e=a.ChildByType(107);if(CM.nil===e||CM.nil===e.FirstChild||CM.nil===a.FirstChild){$s=-1;return 1;}f=e.FirstChild.FirstChild;while(true){if(!(!(CM.nil===f))){break;}(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]=$append((0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]),f));f=f.Next;}g=1;h=a.FirstChild.Next;while(true){if(!(!(CM.nil===h))){break;}d=$append(d,new CO([]));i=h.FirstChild;while(true){if(!(!(CM.nil===i))){break;}((g<0||g>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+g]=$append(((g<0||g>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+g]),i));i=i.Next;}g=g+(1)>>0;h=h.Next;}j=0;k=0;case 4:if(!(k<(0>=d.$length?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+0]).$length)){$s=5;continue;}l=0;case 6:if(!(l<d.$length&&k<((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l]).$length)){$s=7;continue;}m=[m];o=(n=((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l]),((k<0||k>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+k])).TokenLen();$s=8;case 8:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}(p=((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l]),((k<0||k>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+k])).TableCellContentWidth=o;if(c[0].BaseRenderer.Options.AutoSpace){$s=9;continue;}$s=10;continue;case 9:m[0]=0;$r=H.Walk((q=((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l]),((k<0||k>=q.$length)?($throwRuntimeError("index out of range"),undefined):q.$array[q.$offset+k])),(function(c,m){return function(r,s){var r,s;if(!s){return 2;}m[0]=m[0]+((c[0].BaseRenderer.Space(r.Tokens).$length-r.Tokens.$length>>0))>>0;return 2;};})(c,m));$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}(s=((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l]),((k<0||k>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+k])).TableCellContentWidth=(r=((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l]),((k<0||k>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+k])).TableCellContentWidth+(m[0])>>0;case 10:if(j<(t=((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l]),((k<0||k>=t.$length)?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+k])).TableCellContentWidth){j=(u=((l<0||l>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+l]),((k<0||k>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+k])).TableCellContentWidth;}l=l+(1)>>0;$s=6;continue;case 7:v=0;while(true){if(!(v<d.$length&&k<((v<0||v>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+v]).$length)){break;}(w=((v<0||v>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+v]),((k<0||k>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+k])).TableCellContentMaxWidth=j;v=v+(1)>>0;}j=0;k=k+(1)>>0;$s=4;continue;case 5:$s=3;continue;case 2:$r=c[0].BaseRenderer.Newline();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!c[0].BaseRenderer.isLastNode(c[0].BaseRenderer.Tree.Root,a)){$s=13;continue;}$s=14;continue;case 13:if(c[0].withoutKramdownBlockIAL(a)){$s=15;continue;}$s=16;continue;case 15:$r=c[0].BaseRenderer.WriteByte(10);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 16:case 14:case 3:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderTable,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$s};return $f;};CA.prototype.renderTable=function(a,b){return this.$val.renderTable(a,b);};CA.ptr.prototype.renderStrikethrough=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderStrikethrough,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderStrikethrough=function(a,b){return this.$val.renderStrikethrough(a,b);};CA.ptr.prototype.renderStrikethrough1OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(126);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderStrikethrough1OpenMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderStrikethrough1OpenMarker=function(a,b){return this.$val.renderStrikethrough1OpenMarker(a,b);};CA.ptr.prototype.renderStrikethrough1CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(126);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderStrikethrough1CloseMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderStrikethrough1CloseMarker=function(a,b){return this.$val.renderStrikethrough1CloseMarker(a,b);};CA.ptr.prototype.renderStrikethrough2OpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("~~");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderStrikethrough2OpenMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderStrikethrough2OpenMarker=function(a,b){return this.$val.renderStrikethrough2OpenMarker(a,b);};CA.ptr.prototype.renderStrikethrough2CloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("~~");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderStrikethrough2CloseMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderStrikethrough2CloseMarker=function(a,b){return this.$val.renderStrikethrough2CloseMarker(a,b);};CA.ptr.prototype.renderLinkTitle=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(34);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(G.EscapeHTML(a.Tokens));$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(34);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderLinkTitle,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderLinkTitle=function(a,b){return this.$val.renderLinkTitle(a,b);};CA.ptr.prototype.renderLinkDest=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=a.Tokens;d=c.BaseRenderer.LinkPath(d);$r=c.BaseRenderer.Write(d);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderLinkDest,$c:true,$r,a,b,c,d,$s};return $f;};CA.prototype.renderLinkDest=function(a,b){return this.$val.renderLinkDest(a,b);};CA.ptr.prototype.renderLinkSpace=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(32);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderLinkSpace,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderLinkSpace=function(a,b){return this.$val.renderLinkSpace(a,b);};CA.ptr.prototype.renderLinkText=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=CI.nil;if(c.BaseRenderer.Options.AutoSpace){d=c.BaseRenderer.Space(a.Tokens);}else{d=a.Tokens;}$r=c.BaseRenderer.Write(d);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderLinkText,$c:true,$r,a,b,c,d,$s};return $f;};CA.prototype.renderLinkText=function(a,b){return this.$val.renderLinkText(a,b);};CA.ptr.prototype.renderCloseParen=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(41);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderCloseParen,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderCloseParen=function(a,b){return this.$val.renderCloseParen(a,b);};CA.ptr.prototype.renderOpenParen=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(40);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderOpenParen,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderOpenParen=function(a,b){return this.$val.renderOpenParen(a,b);};CA.ptr.prototype.renderGreater=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(62);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderGreater,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderGreater=function(a,b){return this.$val.renderGreater(a,b);};CA.ptr.prototype.renderLess=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(60);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderLess,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderLess=function(a,b){return this.$val.renderLess(a,b);};CA.ptr.prototype.renderCloseBrace=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(125);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderCloseBrace,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderCloseBrace=function(a,b){return this.$val.renderCloseBrace(a,b);};CA.ptr.prototype.renderOpenBrace=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(123);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderOpenBrace,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderOpenBrace=function(a,b){return this.$val.renderOpenBrace(a,b);};CA.ptr.prototype.renderCloseBracket=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(93);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderCloseBracket,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderCloseBracket=function(a,b){return this.$val.renderCloseBracket(a,b);};CA.ptr.prototype.renderOpenBracket=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(91);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderOpenBracket,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderOpenBracket=function(a,b){return this.$val.renderOpenBracket(a,b);};CA.ptr.prototype.renderBang=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(33);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderBang,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderBang=function(a,b){return this.$val.renderBang(a,b);};CA.ptr.prototype.renderImage=function(a,b){var a,b,c;c=this;return 2;};CA.prototype.renderImage=function(a,b){return this.$val.renderImage(a,b);};CA.ptr.prototype.renderLink=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.LinkTextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(3===a.LinkType){$s=5;continue;}$s=6;continue;case 5:d=a.ChildByType(40).Tokens;if(A.Equal(d,a.LinkRefLabel)){$s=7;continue;}$s=8;continue;case 7:$r=c.BaseRenderer.WriteString("["+K.BytesToStr(d)+"]");$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=9;continue;case 8:$r=c.BaseRenderer.WriteString("["+K.BytesToStr(d)+"]["+K.BytesToStr(a.LinkRefLabel)+"]");$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 9:$s=-1;return 1;case 6:if(1===a.LinkType){$s=12;continue;}$s=13;continue;case 12:e=a.ChildByType(41).Tokens;$r=c.BaseRenderer.Write(e);$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 1;case 13:$s=3;continue;case 2:$r=c.BaseRenderer.LinkTextAutoSpaceNext(a);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderLink,$c:true,$r,a,b,c,d,e,$s};return $f;};CA.prototype.renderLink=function(a,b){return this.$val.renderLink(a,b);};CA.ptr.prototype.renderHTML=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=a.Tokens;d=c.BaseRenderer.tagSrcPath(d);$r=c.BaseRenderer.Write(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!c.BaseRenderer.isLastNode(c.BaseRenderer.Tree.Root,a)){$s=6;continue;}$s=7;continue;case 6:if(c.withoutKramdownBlockIAL(a)){$s=8;continue;}$s=9;continue;case 8:$r=c.BaseRenderer.WriteByte(10);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 9:case 7:case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderHTML,$c:true,$r,a,b,c,d,$s};return $f;};CA.prototype.renderHTML=function(a,b){return this.$val.renderHTML(a,b);};CA.ptr.prototype.renderInlineHTML=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderInlineHTML,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderInlineHTML=function(a,b){return this.$val.renderInlineHTML(a,b);};CA.ptr.prototype.renderDocument=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:c.BaseRenderer.Writer=new A.Buffer.ptr(CI.nil,0,0);c.NodeWriterStack=$append(c.NodeWriterStack,c.BaseRenderer.Writer);$s=3;continue;case 2:c.NodeWriterStack=$subslice(c.NodeWriterStack,0,(c.NodeWriterStack.$length-1>>0));d=CI.nil;if(c.BaseRenderer.Options.KeepParagraphBeginningSpace){d=A.TrimRight(c.BaseRenderer.Writer.Bytes()," \t\n");d=A.TrimLeft(d,"\n");}else{d=A.Trim(c.BaseRenderer.Writer.Bytes()," \t\n");}c.BaseRenderer.Writer.Reset();$r=c.BaseRenderer.Write(d);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(10);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderDocument,$c:true,$r,a,b,c,d,$s};return $f;};CA.prototype.renderDocument=function(a,b){return this.$val.renderDocument(a,b);};CA.ptr.prototype.renderParagraph=function(a,b){var{a,b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(!b){$s=1;continue;}$s=2;continue;case 1:if(!c.BaseRenderer.Options.KeepParagraphBeginningSpace&&!(CM.nil===a.FirstChild)){$s=3;continue;}$s=4;continue;case 3:d=A.TrimSpace(a.FirstChild.Tokens);$s=5;case 5:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}a.FirstChild.Tokens=d;case 4:if(a.ParentIs(109,CN.nil)){$s=6;continue;}$s=7;continue;case 6:if(!(CM.nil===a.Next)&&!((16===a.Next.Type))){$s=8;continue;}$s=9;continue;case 8:$r=c.BaseRenderer.WriteString("<br /><br />");$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 9:$s=-1;return 2;case 7:if(c.withoutKramdownBlockIAL(a)){$s=11;continue;}$s=12;continue;case 11:$r=c.BaseRenderer.Newline();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 12:e=false;f=false;g=a.Parent;if(!(CM.nil===g)){if(8===g.Type){h=g;if(!(CM.nil===h.Parent)&&!(CP.nil===h.Parent.ListData)){e=h.Parent.ListData.Tight;i=h.Next;if(CM.nil===i){j=a.Next;f=CM.nil===j;}}else{e=true;}}}if(!e||(f)){$s=14;continue;}$s=15;continue;case 14:if(c.withoutKramdownBlockIAL(a)){$s=16;continue;}$s=17;continue;case 16:$r=c.BaseRenderer.WriteByte(10);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 17:case 15:case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderParagraph,$c:true,$r,a,b,c,d,e,f,g,h,i,j,$s};return $f;};CA.prototype.renderParagraph=function(a,b){return this.$val.renderParagraph(a,b);};CA.ptr.prototype.renderText=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=CI.nil;if(c.BaseRenderer.Options.AutoSpace){d=c.BaseRenderer.Space(a.Tokens);}else{d=a.Tokens;}if(c.BaseRenderer.Options.FixTermTypo){$s=3;continue;}$s=4;continue;case 3:e=c.BaseRenderer.FixTermTypo(d);$s=5;case 5:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}d=e;case 4:if((CM.nil===a.Previous||(100===a.Previous.Type))&&!(CM.nil===a.Parent.Parent)&&!(CP.nil===a.Parent.Parent.ListData)&&(3===a.Parent.Parent.ListData.Typ)){if(32===c.BaseRenderer.LastOut){d=A.TrimPrefix(d,(new CI($stringToBytes(" "))));if(A.HasPrefix(d,(new CI($stringToBytes("\xE2\x80\xB8 "))))){d=A.TrimPrefix(d,(new CI($stringToBytes("\xE2\x80\xB8 "))));d=$appendSlice(F.CaretTokens,d);}}}$r=c.BaseRenderer.Write(d);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderText,$c:true,$r,a,b,c,d,e,$s};return $f;};CA.prototype.renderText=function(a,b){return this.$val.renderText(a,b);};CA.ptr.prototype.renderCodeSpan=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(c.BaseRenderer.Options.AutoSpace){$s=4;continue;}$s=5;continue;case 4:d=a.PreviousNodeText();$s=6;case 6:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!(""===e)){$s=7;continue;}$s=8;continue;case 7:f=E.DecodeLastRuneInString(e);g=f[0];if(D.IsLetter(g)||D.IsDigit(g)){$s=9;continue;}$s=10;continue;case 9:$r=c.BaseRenderer.WriteByte(32);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:case 8:case 5:$s=3;continue;case 2:if(c.BaseRenderer.Options.AutoSpace){$s=12;continue;}$s=13;continue;case 12:h=a.NextNodeText();$s=14;case 14:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;if(!(""===i)){$s=15;continue;}$s=16;continue;case 15:j=E.DecodeRuneInString(i);k=j[0];if(D.IsLetter(k)||D.IsDigit(k)){$s=17;continue;}$s=18;continue;case 17:$r=c.BaseRenderer.WriteByte(32);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 18:case 16:case 13:case 3:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderCodeSpan,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,$s};return $f;};CA.prototype.renderCodeSpan=function(a,b){return this.$val.renderCodeSpan(a,b);};CA.ptr.prototype.renderCodeSpanOpenMarker=function(a,b){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(96);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(1<a.Parent.CodeMarkerLen){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.WriteByte(96);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=K.BytesToStr(a.Next.Tokens);e=E.DecodeRuneInString(d);f=e[0];if(96===f){$s=7;continue;}$s=8;continue;case 7:$r=c.BaseRenderer.WriteByte(32);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 8:case 5:case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderCodeSpanOpenMarker,$c:true,$r,a,b,c,d,e,f,$s};return $f;};CA.prototype.renderCodeSpanOpenMarker=function(a,b){return this.$val.renderCodeSpanOpenMarker(a,b);};CA.ptr.prototype.renderCodeSpanContent=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=a.Tokens;if(a.ParentIs(109,CN.nil)){d=A.ReplaceAll(d,(new CI($stringToBytes("\\|"))),(new CI($stringToBytes("|"))));d=A.ReplaceAll(d,(new CI($stringToBytes("|"))),(new CI($stringToBytes("\\|"))));d=A.ReplaceAll(d,(new CI($stringToBytes("<br/>"))),CI.nil);}$r=c.BaseRenderer.Write(d);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderCodeSpanContent,$c:true,$r,a,b,c,d,$s};return $f;};CA.prototype.renderCodeSpanContent=function(a,b){return this.$val.renderCodeSpanContent(a,b);};CA.ptr.prototype.renderCodeSpanCloseMarker=function(a,b){var{a,b,c,d,e,f,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(1<a.Parent.CodeMarkerLen){$s=3;continue;}$s=4;continue;case 3:d=K.BytesToStr(a.Previous.Tokens);e=E.DecodeLastRuneInString(d);f=e[0];if(96===f){$s=5;continue;}$s=6;continue;case 5:$r=c.BaseRenderer.WriteByte(32);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:$r=c.BaseRenderer.WriteByte(96);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:$r=c.BaseRenderer.WriteByte(96);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderCodeSpanCloseMarker,$c:true,$r,a,b,c,d,e,f,$s};return $f;};CA.prototype.renderCodeSpanCloseMarker=function(a,b){return this.$val.renderCodeSpanCloseMarker(a,b);};CA.ptr.prototype.renderInlineMath=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(c.BaseRenderer.Options.AutoSpace){$s=4;continue;}$s=5;continue;case 4:d=a.PreviousNodeText();$s=6;case 6:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(!(""===e)){$s=7;continue;}$s=8;continue;case 7:f=E.DecodeLastRuneInString(e);g=f[0];if(D.IsLetter(g)||D.IsDigit(g)){$s=9;continue;}$s=10;continue;case 9:$r=c.BaseRenderer.WriteByte(32);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:case 8:case 5:$s=3;continue;case 2:if(c.BaseRenderer.Options.AutoSpace){$s=12;continue;}$s=13;continue;case 12:h=a.NextNodeText();$s=14;case 14:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;if(!(""===i)){$s=15;continue;}$s=16;continue;case 15:j=E.DecodeRuneInString(i);k=j[0];if(D.IsLetter(k)||D.IsDigit(k)){$s=17;continue;}$s=18;continue;case 17:$r=c.BaseRenderer.WriteByte(32);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 18:case 16:case 13:case 3:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderInlineMath,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,$s};return $f;};CA.prototype.renderInlineMath=function(a,b){return this.$val.renderInlineMath(a,b);};CA.ptr.prototype.renderInlineMathOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(36);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderInlineMathOpenMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderInlineMathOpenMarker=function(a,b){return this.$val.renderInlineMathOpenMarker(a,b);};CA.ptr.prototype.renderInlineMathContent=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderInlineMathContent,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderInlineMathContent=function(a,b){return this.$val.renderInlineMathContent(a,b);};CA.ptr.prototype.renderInlineMathCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(36);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderInlineMathCloseMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderInlineMathCloseMarker=function(a,b){return this.$val.renderInlineMathCloseMarker(a,b);};CA.ptr.prototype.renderMathBlockCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(J.MathBlockMarker);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(10);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderMathBlockCloseMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderMathBlockCloseMarker=function(a,b){return this.$val.renderMathBlockCloseMarker(a,b);};CA.ptr.prototype.renderMathBlockContent=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(10);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderMathBlockContent,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderMathBlockContent=function(a,b){return this.$val.renderMathBlockContent(a,b);};CA.ptr.prototype.renderMathBlockOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(J.MathBlockMarker);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(10);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderMathBlockOpenMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderMathBlockOpenMarker=function(a,b){return this.$val.renderMathBlockOpenMarker(a,b);};CA.ptr.prototype.renderMathBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;$r=c.BaseRenderer.Newline();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!b&&!c.BaseRenderer.isLastNode(c.BaseRenderer.Tree.Root,a)){$s=2;continue;}$s=3;continue;case 2:if(c.withoutKramdownBlockIAL(a)){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.WriteByte(10);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:case 3:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderMathBlock,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderMathBlock=function(a,b){return this.$val.renderMathBlock(a,b);};CA.ptr.prototype.renderCodeBlockCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(a.Tokens);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!c.BaseRenderer.isLastNode(c.BaseRenderer.Tree.Root,a)){$s=6;continue;}$s=7;continue;case 6:if(c.withoutKramdownBlockIAL(a.Parent)){$s=8;continue;}$s=9;continue;case 8:$r=c.BaseRenderer.WriteByte(10);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 9:case 7:case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderCodeBlockCloseMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderCodeBlockCloseMarker=function(a,b){return this.$val.renderCodeBlockCloseMarker(a,b);};CA.ptr.prototype.renderCodeBlockCode=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderCodeBlockCode,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderCodeBlockCode=function(a,b){return this.$val.renderCodeBlockCode(a,b);};CA.ptr.prototype.renderCodeBlockInfoMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.CodeBlockInfo);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(10);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderCodeBlockInfoMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderCodeBlockInfoMarker=function(a,b){return this.$val.renderCodeBlockInfoMarker(a,b);};CA.ptr.prototype.renderCodeBlockOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Write(a.Tokens);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderCodeBlockOpenMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderCodeBlockOpenMarker=function(a,b){return this.$val.renderCodeBlockOpenMarker(a,b);};CA.ptr.prototype.renderCodeBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!a.IsFencedCodeBlock){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.Write(A.Repeat(new CI([96]),3));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(10);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(a.FirstChild.Tokens);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(A.Repeat(new CI([96]),3));$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!c.BaseRenderer.isLastNode(c.BaseRenderer.Tree.Root,a)){$s=11;continue;}$s=12;continue;case 11:if(c.withoutKramdownBlockIAL(a)){$s=13;continue;}$s=14;continue;case 13:$r=c.BaseRenderer.WriteByte(10);$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 14:case 12:$s=-1;return 1;case 5:case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderCodeBlock,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderCodeBlock=function(a,b){return this.$val.renderCodeBlock(a,b);};CA.ptr.prototype.renderEmphasis=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderEmphasis,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderEmphasis=function(a,b){return this.$val.renderEmphasis(a,b);};CA.ptr.prototype.renderEmAsteriskOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(42);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderEmAsteriskOpenMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderEmAsteriskOpenMarker=function(a,b){return this.$val.renderEmAsteriskOpenMarker(a,b);};CA.ptr.prototype.renderEmAsteriskCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(42);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderEmAsteriskCloseMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderEmAsteriskCloseMarker=function(a,b){return this.$val.renderEmAsteriskCloseMarker(a,b);};CA.ptr.prototype.renderEmUnderscoreOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(95);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderEmUnderscoreOpenMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderEmUnderscoreOpenMarker=function(a,b){return this.$val.renderEmUnderscoreOpenMarker(a,b);};CA.ptr.prototype.renderEmUnderscoreCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(95);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderEmUnderscoreCloseMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderEmUnderscoreCloseMarker=function(a,b){return this.$val.renderEmUnderscoreCloseMarker(a,b);};CA.ptr.prototype.renderStrong=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.TextAutoSpacePrevious(a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.TextAutoSpaceNext(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderStrong,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderStrong=function(a,b){return this.$val.renderStrong(a,b);};CA.ptr.prototype.renderStrongA6kOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("**");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderStrongA6kOpenMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderStrongA6kOpenMarker=function(a,b){return this.$val.renderStrongA6kOpenMarker(a,b);};CA.ptr.prototype.renderStrongA6kCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("**");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderStrongA6kCloseMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderStrongA6kCloseMarker=function(a,b){return this.$val.renderStrongA6kCloseMarker(a,b);};CA.ptr.prototype.renderStrongU8eOpenMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("__");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderStrongU8eOpenMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderStrongU8eOpenMarker=function(a,b){return this.$val.renderStrongU8eOpenMarker(a,b);};CA.ptr.prototype.renderStrongU8eCloseMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString("__");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderStrongU8eCloseMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderStrongU8eCloseMarker=function(a,b){return this.$val.renderStrongU8eCloseMarker(a,b);};CA.ptr.prototype.renderBlockquote=function(a,b){var{a,aa,ab,ac,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:c.BaseRenderer.Writer=new A.Buffer.ptr(CI.nil,0,0);c.NodeWriterStack=$append(c.NodeWriterStack,c.BaseRenderer.Writer);$s=3;continue;case 2:f=(d=c.NodeWriterStack,e=c.NodeWriterStack.$length-1>>0,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]));c.NodeWriterStack=$subslice(c.NodeWriterStack,0,(c.NodeWriterStack.$length-1>>0));g=new A.Buffer.ptr(CI.nil,0,0);h=f.Bytes();i=A.Split(h,new CI([10]));j=i.$length;if(2<j&&I.IsBlank((k=j-1>>0,((k<0||k>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+k])))&&I.IsBlank((l=j-2>>0,((l<0||l>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+l])))){i=$subslice(i,0,(j-1>>0));}if(1===c.NodeWriterStack.$length){j=i.$length;if(1<j&&I.IsBlank((m=j-1>>0,((m<0||m>=i.$length)?($throwRuntimeError("index out of range"),undefined):i.$array[i.$offset+m])))){i=$subslice(i,0,(j-1>>0));}}j=i.$length;n=i;o=0;case 4:if(!(o<n.$length)){$s=5;continue;}p=((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o]);if(0===p.$length){$s=6;continue;}$s=7;continue;case 6:q=g.WriteString(">\n");$s=8;case 8:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;o++;$s=4;continue;case 7:if(62===(0>=p.$length?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+0])){$s=9;continue;}$s=10;continue;case 9:r=g.WriteString(">");$s=12;case 12:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;$s=11;continue;case 10:s=g.WriteString("> ");$s=13;case 13:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;case 11:t=g.Write(p);$s=14;case 14:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}t;u=g.WriteByte(10);$s=15;case 15:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}u;o++;$s=4;continue;case 5:v=A.TrimSpace(g.Bytes());$s=16;case 16:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}h=v;f.Reset();w=f.Write(h);$s=17;case 17:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;z=(x=c.NodeWriterStack,y=c.NodeWriterStack.$length-1>>0,((y<0||y>=x.$length)?($throwRuntimeError("index out of range"),undefined):x.$array[x.$offset+y])).Write(f.Bytes());$s=18;case 18:if($c){$c=false;z=z.$blk();}if(z&&z.$blk!==undefined){break s;}z;c.BaseRenderer.Writer=(aa=c.NodeWriterStack,ab=c.NodeWriterStack.$length-1>>0,((ab<0||ab>=aa.$length)?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+ab]));ac=A.TrimSpace(c.BaseRenderer.Writer.Bytes());$s=19;case 19:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}h=ac;c.BaseRenderer.Writer.Reset();$r=c.BaseRenderer.Write(h);$s=20;case 20:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!a.ParentIs(109,CN.nil)){$s=21;continue;}$s=22;continue;case 21:if(c.withoutKramdownBlockIAL(a)){$s=23;continue;}$s=24;continue;case 23:$r=c.BaseRenderer.WriteString("\n\n");$s=25;case 25:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 24:case 22:case 3:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderBlockquote,$c:true,$r,a,aa,ab,ac,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};CA.prototype.renderBlockquote=function(a,b){return this.$val.renderBlockquote(a,b);};CA.ptr.prototype.renderBlockquoteMarker=function(a,b){var a,b,c;c=this;return 2;};CA.prototype.renderBlockquoteMarker=function(a,b){return this.$val.renderBlockquoteMarker(a,b);};CA.ptr.prototype.renderHeading=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(!a.HeadingSetext){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.Write(A.Repeat(new CI([35]),a.HeadingLevel));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(32);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:$s=3;continue;case 2:if(a.HeadingSetext){$s=8;continue;}$s=9;continue;case 8:$r=c.BaseRenderer.WriteByte(10);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=c.BaseRenderer.setextHeadingLen(a);$s=11;case 11:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(1===a.HeadingLevel){$s=12;continue;}if(2===a.HeadingLevel){$s=13;continue;}$s=14;continue;case 12:$r=c.BaseRenderer.WriteString(C.Repeat("=",e));$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=14;continue;case 13:$r=c.BaseRenderer.WriteString(C.Repeat("-",e));$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 14:case 9:if(!a.ParentIs(109,CN.nil)){$s=17;continue;}$s=18;continue;case 17:if(c.withoutKramdownBlockIAL(a)){$s=19;continue;}$s=20;continue;case 19:$r=c.BaseRenderer.Newline();$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(10);$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 20:case 18:case 3:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderHeading,$c:true,$r,a,b,c,d,e,$s};return $f;};CA.prototype.renderHeading=function(a,b){return this.$val.renderHeading(a,b);};CA.ptr.prototype.renderHeadingC8hMarker=function(a,b){var a,b,c;c=this;return 2;};CA.prototype.renderHeadingC8hMarker=function(a,b){return this.$val.renderHeadingC8hMarker(a,b);};CA.ptr.prototype.renderHeadingID=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteString(" {"+K.BytesToStr(a.Tokens)+"}");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderHeadingID,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderHeadingID=function(a,b){return this.$val.renderHeadingID(a,b);};CA.ptr.prototype.renderList=function(a,b){var{a,b,c,d,e,f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:c.BaseRenderer.Writer=new A.Buffer.ptr(CI.nil,0,0);c.NodeWriterStack=$append(c.NodeWriterStack,c.BaseRenderer.Writer);$s=3;continue;case 2:f=(d=c.NodeWriterStack,e=c.NodeWriterStack.$length-1>>0,((e<0||e>=d.$length)?($throwRuntimeError("index out of range"),undefined):d.$array[d.$offset+e]));c.NodeWriterStack=$subslice(c.NodeWriterStack,0,(c.NodeWriterStack.$length-1>>0));i=(g=c.NodeWriterStack,h=c.NodeWriterStack.$length-1>>0,((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h])).Write(f.Bytes());$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}i;c.BaseRenderer.Writer=(j=c.NodeWriterStack,k=c.NodeWriterStack.$length-1>>0,((k<0||k>=j.$length)?($throwRuntimeError("index out of range"),undefined):j.$array[j.$offset+k]));l=A.TrimSpace(c.BaseRenderer.Writer.Bytes());$s=5;case 5:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;c.BaseRenderer.Writer.Reset();$r=c.BaseRenderer.Write(m);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!a.ParentIs(109,CN.nil)){$s=7;continue;}$s=8;continue;case 7:if(c.withoutKramdownBlockIAL(a)){$s=9;continue;}$s=10;continue;case 9:$r=c.BaseRenderer.WriteString("\n\n");$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:case 8:case 3:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderList,$c:true,$r,a,b,c,d,e,f,g,h,i,j,k,l,m,$s};return $f;};CA.prototype.renderList=function(a,b){return this.$val.renderList(a,b);};CA.ptr.prototype.renderListItem=function(a,b){var{a,aa,ab,ac,ad,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:c.BaseRenderer.Writer=new A.Buffer.ptr(CI.nil,0,0);c.NodeWriterStack=$append(c.NodeWriterStack,c.BaseRenderer.Writer);if(c.BaseRenderer.Options.KramdownBlockIAL&&!(CM.nil===a.Next)&&(455===a.Next.Type)){$s=4;continue;}$s=5;continue;case 4:d=a.Next;$r=c.BaseRenderer.Write(d.Tokens);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:if(!(CM.nil===a.FirstChild)&&(7===a.FirstChild.Type)){$s=7;continue;}$s=8;continue;case 7:$r=c.BaseRenderer.Newline();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 8:$s=3;continue;case 2:g=(e=c.NodeWriterStack,f=c.NodeWriterStack.$length-1>>0,((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]));c.NodeWriterStack=$subslice(c.NodeWriterStack,0,(c.NodeWriterStack.$length-1>>0));h=a.ListData.Marker.$length+1>>0;if((1===a.ListData.Typ)||((3===a.ListData.Typ)&&(0===a.ListData.BulletChar))){h=h+(1)>>0;}i=A.Repeat(new CI([32]),h);j=new A.Buffer.ptr(CI.nil,0,0);k=g.Bytes();l=A.Split(k,new CI([10]));m=l;n=0;case 10:if(!(n<m.$length)){$s=11;continue;}o=((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]);if(0===o.$length){$s=12;continue;}$s=13;continue;case 12:p=j.WriteByte(10);$s=14;case 14:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}p;n++;$s=10;continue;case 13:q=j.Write(i);$s=15;case 15:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;r=j.Write(o);$s=16;case 16:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;s=j.WriteByte(10);$s=17;case 17:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}s;n++;$s=10;continue;case 11:k=j.Bytes();if(h<k.$length){k=$subslice(k,h);}t=new A.Buffer.ptr(CI.nil,0,0);if((1===a.ListData.Typ)||((3===a.ListData.Typ)&&(0===a.ListData.BulletChar))){$s=18;continue;}$s=19;continue;case 18:u=t.WriteString(B.Itoa(a.ListData.Num)+($encodeRune(a.ListData.Delimiter)));$s=21;case 21:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}u;$s=20;continue;case 19:v=t.Write(a.ListData.Marker);$s=22;case 22:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}v;case 20:w=t.WriteByte(32);$s=23;case 23:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}w;k=$appendSlice(t.Bytes(),k);if(a.ParentIs(109,CN.nil)){k=A.ReplaceAll(k,(new CI($stringToBytes("\n"))),CI.nil);}g.Reset();x=g.Write(k);$s=24;case 24:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}x;k=g.Bytes();if(a.ParentIs(109,CN.nil)){k=A.ReplaceAll(k,(new CI($stringToBytes("\n"))),CI.nil);}aa=(y=c.NodeWriterStack,z=c.NodeWriterStack.$length-1>>0,((z<0||z>=y.$length)?($throwRuntimeError("index out of range"),undefined):y.$array[y.$offset+z])).Write(k);$s=25;case 25:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}aa;c.BaseRenderer.Writer=(ab=c.NodeWriterStack,ac=c.NodeWriterStack.$length-1>>0,((ac<0||ac>=ab.$length)?($throwRuntimeError("index out of range"),undefined):ab.$array[ab.$offset+ac]));ad=A.TrimSpace(c.BaseRenderer.Writer.Bytes());$s=26;case 26:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}k=ad;c.BaseRenderer.Writer.Reset();$r=c.BaseRenderer.Write(k);$s=27;case 27:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!a.ParentIs(109,CN.nil)){$s=28;continue;}$s=29;continue;case 28:$r=c.BaseRenderer.WriteString("\n");$s=30;case 30:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 29:case 3:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderListItem,$c:true,$r,a,aa,ab,ac,ad,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};CA.prototype.renderListItem=function(a,b){return this.$val.renderListItem(a,b);};CA.ptr.prototype.renderTaskListItemMarker=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(91);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(a.TaskListItemChecked){$s=5;continue;}$s=6;continue;case 5:$r=c.BaseRenderer.WriteByte(88);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=7;continue;case 6:$r=c.BaseRenderer.WriteByte(32);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 7:$r=c.BaseRenderer.WriteByte(93);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.BaseRenderer.WriteByte(32);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderTaskListItemMarker,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderTaskListItemMarker=function(a,b){return this.$val.renderTaskListItemMarker(a,b);};CA.ptr.prototype.renderThematicBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(a.ParentIs(109,CN.nil)){$s=3;continue;}$s=4;continue;case 3:$r=c.BaseRenderer.WriteString("<hr/>");$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=5;continue;case 4:$r=c.BaseRenderer.WriteString("---");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(c.withoutKramdownBlockIAL(a)){$s=8;continue;}$s=9;continue;case 8:$r=c.BaseRenderer.WriteByte(10);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(10);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 9:case 5:case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderThematicBreak,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderThematicBreak=function(a,b){return this.$val.renderThematicBreak(a,b);};CA.ptr.prototype.renderHardBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(!c.BaseRenderer.Options.SoftBreak2HardBreak){$s=3;continue;}$s=4;continue;case 3:$r=c.BaseRenderer.WriteString("\\\n");$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=5;continue;case 4:if(a.ParentIs(109,CN.nil)){$s=7;continue;}$s=8;continue;case 7:$r=c.BaseRenderer.WriteString("<br/>");$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=9;continue;case 8:$r=c.BaseRenderer.WriteByte(10);$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 9:case 5:case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderHardBreak,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderHardBreak=function(a,b){return this.$val.renderHardBreak(a,b);};CA.ptr.prototype.renderSoftBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CA.ptr.prototype.renderSoftBreak,$c:true,$r,a,b,c,$s};return $f;};CA.prototype.renderSoftBreak=function(a,b){return this.$val.renderSoftBreak(a,b);};CA.ptr.prototype.withoutKramdownBlockIAL=function(a){var a,b;b=this;return!b.BaseRenderer.Options.KramdownBlockIAL||(0===a.KramdownIAL.$length)||CM.nil===a.Next||!((455===a.Next.Type));};CA.prototype.withoutKramdownBlockIAL=function(a){return this.$val.withoutKramdownBlockIAL(a);};CH=function(a,b){var{a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=AR(a,b);$s=1;case 1:if($c){$c=false;c=c.$blk();}if(c&&c.$blk!==undefined){break s;}d=new CG.ptr(c);e=0;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(e),{k:e,v:$methodVal(d,"renderDocument")});f=1;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(f),{k:f,v:$methodVal(d,"renderParagraph")});g=16;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(g),{k:g,v:$methodVal(d,"renderText")});h=27;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(h),{k:h,v:$methodVal(d,"renderCodeSpan")});i=11;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(i),{k:i,v:$methodVal(d,"renderCodeBlock")});j=300;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(j),{k:j,v:$methodVal(d,"renderMathBlock")});k=304;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(k),{k:k,v:$methodVal(d,"renderInlineMath")});l=17;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(l),{k:l,v:$methodVal(d,"renderEmphasis")});m=22;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(m),{k:m,v:$methodVal(d,"renderStrong")});n=5;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(n),{k:n,v:$methodVal(d,"renderBlockquote")});o=2;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(o),{k:o,v:$methodVal(d,"renderHeading")});p=7;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(p),{k:p,v:$methodVal(d,"renderList")});q=8;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(q),{k:q,v:$methodVal(d,"renderListItem")});r=4;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(r),{k:r,v:$methodVal(d,"renderThematicBreak")});s=31;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(s),{k:s,v:$methodVal(d,"renderHardBreak")});t=32;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(t),{k:t,v:$methodVal(d,"renderSoftBreak")});u=9;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(u),{k:u,v:$methodVal(d,"renderHTML")});v=10;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(v),{k:v,v:$methodVal(d,"renderInlineHTML")});w=33;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(w),{k:w,v:$methodVal(d,"renderLink")});x=34;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(x),{k:x,v:$methodVal(d,"renderImage")});y=101;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(y),{k:y,v:$methodVal(d,"renderStrikethrough")});z=100;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(z),{k:z,v:$methodVal(d,"renderTaskListItemMarker")});aa=106;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aa),{k:aa,v:$methodVal(d,"renderTable")});ab=107;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ab),{k:ab,v:$methodVal(d,"renderTableHead")});ac=108;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ac),{k:ac,v:$methodVal(d,"renderTableRow")});ad=109;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ad),{k:ad,v:$methodVal(d,"renderTableCell")});ae=200;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ae),{k:ae,v:$methodVal(d,"renderEmoji")});af=201;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(af),{k:af,v:$methodVal(d,"renderEmojiUnicode")});ag=202;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ag),{k:ag,v:$methodVal(d,"renderEmojiImg")});ah=203;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ah),{k:ah,v:$methodVal(d,"renderEmojiAlias")});ai=411;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ai),{k:ai,v:$methodVal(d,"renderFootnotesDef")});aj=412;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aj),{k:aj,v:$methodVal(d,"renderFootnotesRef")});ak=415;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ak),{k:ak,v:$methodVal(d,"renderToC")});al=400;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(al),{k:al,v:$methodVal(d,"renderBackslash")});am=401;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(am),{k:am,v:$methodVal(d,"renderBackslashContent")});an=44;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(an),{k:an,v:$methodVal(d,"renderHtmlEntity")});ao=425;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ao),{k:ao,v:$methodVal(d,"renderYamlFrontMatter")});ap=430;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ap),{k:ap,v:$methodVal(d,"renderBlockRef")});aq=540;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aq),{k:aq,v:$methodVal(d,"renderFileAnnotationRef")});ar=450;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(ar),{k:ar,v:$methodVal(d,"renderMark")});as=485;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(as),{k:as,v:$methodVal(d,"renderSup")});at=490;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(at),{k:at,v:$methodVal(d,"renderSub")});au=455;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(au),{k:au,v:$methodVal(d,"renderKramdownBlockIAL")});av=456;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(av),{k:av,v:$methodVal(d,"renderKramdownSpanIAL")});aw=465;(d.BaseRenderer.RendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(H.NodeType.keyFor(aw),{k:aw,v:$methodVal(d,"renderBlockQueryEmbed")});d.BaseRenderer.DefaultRendererFunc=$methodVal(d,"renderDefault");$s=-1;return d;}return;}var $f={$blk:CH,$c:true,$r,a,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};$pkg.NewEChartsJSONRenderer=CH;CG.ptr.prototype.renderKramdownBlockIAL=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(CM.nil===a.Previous){$s=-1;return 2;}d=c.BaseRenderer.NodeID(a.Previous);$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;if(K.IsDocIAL(a.Tokens)){e=c.BaseRenderer.Tree.ID;}$r=c.leaf("Block IAL\n{: "+e+"}",a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CG.ptr.prototype.renderKramdownBlockIAL,$c:true,$r,a,b,c,d,e,$s};return $f;};CG.prototype.renderKramdownBlockIAL=function(a,b){return this.$val.renderKramdownBlockIAL(a,b);};CG.ptr.prototype.renderKramdownSpanIAL=function(a,b){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:if(CM.nil===a.Previous){$s=-1;return 2;}d=c.BaseRenderer.NodeID(a.Previous);$s=3;case 3:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$r=c.leaf("Span IAL\n{: "+e+"}",a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CG.ptr.prototype.renderKramdownSpanIAL,$c:true,$r,a,b,c,d,e,$s};return $f;};CG.prototype.renderKramdownSpanIAL=function(a,b){return this.$val.renderKramdownSpanIAL(a,b);};CG.ptr.prototype.renderMark=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("Mark\nmark",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderMark,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderMark=function(a,b){return this.$val.renderMark(a,b);};CG.ptr.prototype.renderSup=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("Sup\nsup",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderSup,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderSup=function(a,b){return this.$val.renderSup(a,b);};CG.ptr.prototype.renderSub=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("Sub\nsub",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderSub,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderSub=function(a,b){return this.$val.renderSub(a,b);};CG.ptr.prototype.renderBlockQueryEmbed=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("BlockQueryEmbed\n{{script}}",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderBlockQueryEmbed,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderBlockQueryEmbed=function(a,b){return this.$val.renderBlockQueryEmbed(a,b);};CG.ptr.prototype.renderBlockRef=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("BlockRef\n((id))",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderBlockRef,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderBlockRef=function(a,b){return this.$val.renderBlockRef(a,b);};CG.ptr.prototype.renderFileAnnotationRef=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("FileAnnotationRef\n<<id>>",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderFileAnnotationRef,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderFileAnnotationRef=function(a,b){return this.$val.renderFileAnnotationRef(a,b);};CG.ptr.prototype.renderDefault=function(a,b){var a,b,c;c=this;return 2;};CG.prototype.renderDefault=function(a,b){return this.$val.renderDefault(a,b);};CG.ptr.prototype.renderYamlFrontMatter=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("Front Matter\nYAML",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderYamlFrontMatter,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderYamlFrontMatter=function(a,b){return this.$val.renderYamlFrontMatter(a,b);};CG.ptr.prototype.renderHtmlEntity=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("HTML Entity\nspan",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderHtmlEntity,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderHtmlEntity=function(a,b){return this.$val.renderHtmlEntity(a,b);};CG.ptr.prototype.renderBackslashContent=function(a,b){var a,b,c;c=this;return 1;};CG.prototype.renderBackslashContent=function(a,b){return this.$val.renderBackslashContent(a,b);};CG.ptr.prototype.renderBackslash=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("Blackslash\ndiv",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderBackslash,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderBackslash=function(a,b){return this.$val.renderBackslash(a,b);};CG.ptr.prototype.renderToC=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("ToC\ndiv",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderToC,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderToC=function(a,b){return this.$val.renderToC(a,b);};CG.ptr.prototype.renderFootnotesRef=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("Footnotes Ref\ndiv",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderFootnotesRef,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderFootnotesRef=function(a,b){return this.$val.renderFootnotesRef(a,b);};CG.ptr.prototype.renderFootnotesDef=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.val("Footnotes Def\np",a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj(a);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:CG.ptr.prototype.renderFootnotesDef,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderFootnotesDef=function(a,b){return this.$val.renderFootnotesDef(a,b);};CG.ptr.prototype.renderInlineMath=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("Inline Math\nspan",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderInlineMath,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderInlineMath=function(a,b){return this.$val.renderInlineMath(a,b);};CG.ptr.prototype.renderMathBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("Math Block\ndiv",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderMathBlock,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderMathBlock=function(a,b){return this.$val.renderMathBlock(a,b);};CG.ptr.prototype.renderEmojiImg=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("Emoji Img\n",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderEmojiImg,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderEmojiImg=function(a,b){return this.$val.renderEmojiImg(a,b);};CG.ptr.prototype.renderEmojiUnicode=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("Emoji Unicode\n",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderEmojiUnicode,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderEmojiUnicode=function(a,b){return this.$val.renderEmojiUnicode(a,b);};CG.ptr.prototype.renderEmojiAlias=function(a,b){var a,b,c;c=this;return 1;};CG.prototype.renderEmojiAlias=function(a,b){return this.$val.renderEmojiAlias(a,b);};CG.ptr.prototype.renderEmoji=function(a,b){var a,b,c;c=this;return 2;};CG.prototype.renderEmoji=function(a,b){return this.$val.renderEmoji(a,b);};CG.ptr.prototype.renderTableCell=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("Table Cell\ntd",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderTableCell,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderTableCell=function(a,b){return this.$val.renderTableCell(a,b);};CG.ptr.prototype.renderTableRow=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("Table Row\ntr",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderTableRow,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderTableRow=function(a,b){return this.$val.renderTableRow(a,b);};CG.ptr.prototype.renderTableHead=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("Table Head\nthead",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderTableHead,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderTableHead=function(a,b){return this.$val.renderTableHead(a,b);};CG.ptr.prototype.renderTable=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.val("Table\ntable",a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj(a);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:CG.ptr.prototype.renderTable,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderTable=function(a,b){return this.$val.renderTable(a,b);};CG.ptr.prototype.renderStrikethrough=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("Strikethrough\ndel",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderStrikethrough,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderStrikethrough=function(a,b){return this.$val.renderStrikethrough(a,b);};CG.ptr.prototype.renderImage=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.val("Image\nimg",a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj(a);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:CG.ptr.prototype.renderImage,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderImage=function(a,b){return this.$val.renderImage(a,b);};CG.ptr.prototype.renderLink=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.val("Link\na",a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj(a);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:CG.ptr.prototype.renderLink,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderLink=function(a,b){return this.$val.renderLink(a,b);};CG.ptr.prototype.renderHTML=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("HTML Block\n",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderHTML,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderHTML=function(a,b){return this.$val.renderHTML(a,b);};CG.ptr.prototype.renderInlineHTML=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("Inline HTML\n",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderInlineHTML,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderInlineHTML=function(a,b){return this.$val.renderInlineHTML(a,b);};CG.ptr.prototype.renderDocument=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.WriteByte(91);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openObj();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.val("Document",a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj(a);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteByte(93);$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:CG.ptr.prototype.renderDocument,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderDocument=function(a,b){return this.$val.renderDocument(a,b);};CG.ptr.prototype.renderParagraph=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.val("Paragraph\np",a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj(a);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:CG.ptr.prototype.renderParagraph,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderParagraph=function(a,b){return this.$val.renderParagraph(a,b);};CG.ptr.prototype.renderText=function(a,b){var{a,b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:d=K.BytesToStr(a.Tokens);e=0;f="";g=d;h=0;while(true){if(!(h<g.length)){break;}i=$decodeRune(g,h);j=i[0];e=e+(1)>>0;f=f+(($encodeRune(j)));if(4<e){f=f+("...");break;}h+=i[1];}$r=c.openObj();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.val("Text\n"+f,a);$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj(a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderText,$c:true,$r,a,b,c,d,e,f,g,h,i,j,$s};return $f;};CG.prototype.renderText=function(a,b){return this.$val.renderText(a,b);};CG.ptr.prototype.renderCodeSpan=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("Code Span\ncode",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 2;}return;}var $f={$blk:CG.ptr.prototype.renderCodeSpan,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderCodeSpan=function(a,b){return this.$val.renderCodeSpan(a,b);};CG.ptr.prototype.renderEmphasis=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.val("Emphasis\nem",a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj(a);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:CG.ptr.prototype.renderEmphasis,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderEmphasis=function(a,b){return this.$val.renderEmphasis(a,b);};CG.ptr.prototype.renderStrong=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.val("Strong\nstrong",a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj(a);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:CG.ptr.prototype.renderStrong,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderStrong=function(a,b){return this.$val.renderStrong(a,b);};CG.ptr.prototype.renderBlockquote=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.val("Blockquote\nblockquote",a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj(a);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:CG.ptr.prototype.renderBlockquote,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderBlockquote=function(a,b){return this.$val.renderBlockquote(a,b);};CG.ptr.prototype.renderHeading=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d="h"+$substring(" 123456",a.HeadingLevel,(a.HeadingLevel+1>>0));$r=c.val("Heading\n"+d,a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj(a);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:CG.ptr.prototype.renderHeading,$c:true,$r,a,b,c,d,$s};return $f;};CG.prototype.renderHeading=function(a,b){return this.$val.renderHeading(a,b);};CG.ptr.prototype.renderList=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d="ul";if((1===a.ListData.Typ)||((3===a.ListData.Typ)&&(0===a.ListData.BulletChar))){d="ol";}$r=c.val("List\n"+d,a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj(a);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:CG.ptr.prototype.renderList,$c:true,$r,a,b,c,d,$s};return $f;};CG.prototype.renderList=function(a,b){return this.$val.renderList(a,b);};CG.ptr.prototype.renderListItem=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.val("List Item\nli "+K.BytesToStr(a.ListData.Marker),a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj(a);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:CG.ptr.prototype.renderListItem,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderListItem=function(a,b){return this.$val.renderListItem(a,b);};CG.ptr.prototype.renderTaskListItemMarker=function(a,b){var{a,b,c,d,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.openObj();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=" ";if(a.TaskListItemChecked){d="X";}$r=c.val("Task List Item Marker\n["+d+"]",a);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.openChildren(a);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=3;continue;case 2:$r=c.closeChildren(a);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj(a);$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:CG.ptr.prototype.renderTaskListItemMarker,$c:true,$r,a,b,c,d,$s};return $f;};CG.prototype.renderTaskListItemMarker=function(a,b){return this.$val.renderTaskListItemMarker(a,b);};CG.ptr.prototype.renderThematicBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("Thematic Break\nhr",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderThematicBreak,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderThematicBreak=function(a,b){return this.$val.renderThematicBreak(a,b);};CG.ptr.prototype.renderHardBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("Hard Break\nbr",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderHardBreak,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderHardBreak=function(a,b){return this.$val.renderHardBreak(a,b);};CG.ptr.prototype.renderSoftBreak=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("Soft Break\n",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderSoftBreak,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderSoftBreak=function(a,b){return this.$val.renderSoftBreak(a,b);};CG.ptr.prototype.renderCodeBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.leaf("Code Block\npre.code",a);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return 1;}return;}var $f={$blk:CG.ptr.prototype.renderCodeBlock,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.renderCodeBlock=function(a,b){return this.$val.renderCodeBlock(a,b);};CG.ptr.prototype.leaf=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;$r=c.openObj();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.val(a,b);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.closeObj(b);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:CG.ptr.prototype.leaf,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.leaf=function(a,b){return this.$val.leaf(a,b);};CG.ptr.prototype.val=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;a=C.ReplaceAll(a,"\\","\\\\");a=C.ReplaceAll(a,"\n","\\n");a=C.ReplaceAll(a,"\"","");a=C.ReplaceAll(a,"'","");$r=c.BaseRenderer.WriteString("\"name\":\""+a+"\"");$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:CG.ptr.prototype.val,$c:true,$r,a,b,c,$s};return $f;};CG.prototype.val=function(a,b){return this.$val.val(a,b);};CG.ptr.prototype.openObj=function(){var{a,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;$r=a.BaseRenderer.WriteByte(123);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:CG.ptr.prototype.openObj,$c:true,$r,a,$s};return $f;};CG.prototype.openObj=function(){return this.$val.openObj();};CG.ptr.prototype.closeObj=function(a){var{a,b,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;$r=b.BaseRenderer.WriteByte(125);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!b.ignore(a.Next)){$s=2;continue;}$s=3;continue;case 2:$r=b.comma();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return;}return;}var $f={$blk:CG.ptr.prototype.closeObj,$c:true,$r,a,b,$s};return $f;};CG.prototype.closeObj=function(a){return this.$val.closeObj(a);};CG.ptr.prototype.openChildren=function(a){var{a,b,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;if(!(CM.nil===a.FirstChild)){$s=1;continue;}$s=2;continue;case 1:$r=b.BaseRenderer.WriteString(",\"children\":[");$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return;}return;}var $f={$blk:CG.ptr.prototype.openChildren,$c:true,$r,a,b,$s};return $f;};CG.prototype.openChildren=function(a){return this.$val.openChildren(a);};CG.ptr.prototype.closeChildren=function(a){var{a,b,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=this;if(!(CM.nil===a.FirstChild)){$s=1;continue;}$s=2;continue;case 1:$r=b.BaseRenderer.WriteByte(93);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 2:$s=-1;return;}return;}var $f={$blk:CG.ptr.prototype.closeChildren,$c:true,$r,a,b,$s};return $f;};CG.prototype.closeChildren=function(a){return this.$val.closeChildren(a);};CG.ptr.prototype.comma=function(){var{a,$s,$r,$c}=$restore(this,{});$s=$s||0;s:while(true){switch($s){case 0:a=this;$r=a.BaseRenderer.WriteString(",");$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:CG.ptr.prototype.comma,$c:true,$r,a,$s};return $f;};CG.prototype.comma=function(){return this.$val.comma();};CG.ptr.prototype.ignore=function(a){var a,b;b=this;return CM.nil===a||(6===a.Type)||(18===a.Type)||(19===a.Type)||(20===a.Type)||(21===a.Type)||(23===a.Type)||(24===a.Type)||(25===a.Type)||(26===a.Type)||(102===a.Type)||(103===a.Type)||(104===a.Type)||(105===a.Type)||(301===a.Type)||(302===a.Type)||(303===a.Type)||(305===a.Type)||(306===a.Type)||(307===a.Type)||(426===a.Type)||(428===a.Type)||(427===a.Type);};CG.prototype.ignore=function(a){return this.$val.ignore(a);};BY.ptr.prototype.renderCodeBlock=function(a,b){var{a,b,c,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;$r=c.BaseRenderer.Newline();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(!a.IsFencedCodeBlock){$s=2;continue;}$s=3;continue;case 2:if(b){$s=4;continue;}$s=5;continue;case 4:$r=c.BaseRenderer.WriteString("<pre><code>");$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(G.EscapeHTML(a.FirstChild.Tokens));$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("</code></pre>");$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Newline();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return 1;case 5:$s=-1;return 2;case 6:case 3:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderCodeBlock,$c:true,$r,a,b,c,$s};return $f;};BY.prototype.renderCodeBlock=function(a,b){return this.$val.renderCodeBlock(a,b);};BY.ptr.prototype.renderCodeBlockCode=function(a,b){var{a,b,c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{a,b});$s=$s||0;s:while(true){switch($s){case 0:c=this;d="";if(0<a.Previous.CodeBlockInfo.$length){e=I.Split(a.Previous.CodeBlockInfo,32);d=($bytesToString((0>=e.$length?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+0])));}f=BA(d);if(b){$s=1;continue;}$s=2;continue;case 1:$r=c.BaseRenderer.Newline();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}g=CL.nil;c.handleKramdownBlockIAL(a);g=$appendSlice(g,a.KramdownIAL);if(!f){$s=5;continue;}$s=6;continue;case 5:$r=c.BaseRenderer.Tag("pre",g,false);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 6:h=a.Tokens;if(0<a.Previous.CodeBlockInfo.$length){$s=8;continue;}$s=9;continue;case 8:if("mindmap"===d){$s=11;continue;}$s=12;continue;case 11:i=BO(h);$s=14;case 14:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;$r=c.BaseRenderer.WriteString("<div data-code=\"");$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.Write(j);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=c.BaseRenderer.WriteString("\" class=\"language-mindmap\">");$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=13;continue;case 12:if(f){$s=18;continue;}$s=19;continue;case 18:$r=c.BaseRenderer.WriteString("<div class=\"language-"+d+"\">");$s=21;case 21:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=20;continue;case 19:$r=c.BaseRenderer.WriteString("<code class=\"language-"+d+"\">");$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 20:case 13:h=G.EscapeHTML(h);$r=c.BaseRenderer.Write(h);$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=10;continue;case 9:$r=c.BaseRenderer.WriteString("<code>");$s=24;case 24:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=G.EscapeHTML(h);$r=c.BaseRenderer.Write(h);$s=25;case 25:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 10:$s=3;continue;case 2:if(f){$s=26;continue;}$s=27;continue;case 26:$r=c.BaseRenderer.WriteString("</div>");$s=29;case 29:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=28;continue;case 27:$r=c.BaseRenderer.WriteString("</code></pre>");$s=30;case 30:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 28:$r=c.BaseRenderer.Newline();$s=31;case 31:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 3:$s=-1;return 2;}return;}var $f={$blk:BY.ptr.prototype.renderCodeBlockCode,$c:true,$r,a,b,c,d,e,f,g,h,i,j,$s};return $f;};BY.prototype.renderCodeBlockCode=function(a,b){return this.$val.renderCodeBlockCode(a,b);};DH.methods=[{prop:"renderLinkRefDefBlock",name:"renderLinkRefDefBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkRefDef",name:"renderLinkRefDef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKramdownBlockIAL",name:"renderKramdownBlockIAL",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark",name:"renderMark",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark1OpenMarker",name:"renderMark1OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark1CloseMarker",name:"renderMark1CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark2OpenMarker",name:"renderMark2OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark2CloseMarker",name:"renderMark2CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSup",name:"renderSup",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSupOpenMarker",name:"renderSupOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSupCloseMarker",name:"renderSupCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSub",name:"renderSub",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSubOpenMarker",name:"renderSubOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSubCloseMarker",name:"renderSubCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatterCloseMarker",name:"renderYamlFrontMatterCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatterContent",name:"renderYamlFrontMatterContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatterOpenMarker",name:"renderYamlFrontMatterOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatter",name:"renderYamlFrontMatter",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHtmlEntity",name:"renderHtmlEntity",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBackslashContent",name:"renderBackslashContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBackslash",name:"renderBackslash",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderToC",name:"renderToC",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFootnotesDefBlock",name:"renderFootnotesDefBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFootnotesDef",name:"renderFootnotesDef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFootnotesRef",name:"renderFootnotesRef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockCloseMarker",name:"renderCodeBlockCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockInfoMarker",name:"renderCodeBlockInfoMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockOpenMarker",name:"renderCodeBlockOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiAlias",name:"renderEmojiAlias",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiImg",name:"renderEmojiImg",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiUnicode",name:"renderEmojiUnicode",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmoji",name:"renderEmoji",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMathCloseMarker",name:"renderInlineMathCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMathContent",name:"renderInlineMathContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMathOpenMarker",name:"renderInlineMathOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMath",name:"renderInlineMath",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlockCloseMarker",name:"renderMathBlockCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlockContent",name:"renderMathBlockContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlockOpenMarker",name:"renderMathBlockOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlock",name:"renderMathBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableCell",name:"renderTableCell",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableRow",name:"renderTableRow",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableHead",name:"renderTableHead",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTable",name:"renderTable",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough",name:"renderStrikethrough",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough1OpenMarker",name:"renderStrikethrough1OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough1CloseMarker",name:"renderStrikethrough1CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough2OpenMarker",name:"renderStrikethrough2OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough2CloseMarker",name:"renderStrikethrough2CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkTitle",name:"renderLinkTitle",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkDest",name:"renderLinkDest",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkSpace",name:"renderLinkSpace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkText",name:"renderLinkText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCloseParen",name:"renderCloseParen",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderOpenParen",name:"renderOpenParen",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCloseBrace",name:"renderCloseBrace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderOpenBrace",name:"renderOpenBrace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCloseBracket",name:"renderCloseBracket",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderOpenBracket",name:"renderOpenBracket",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBang",name:"renderBang",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderImage",name:"renderImage",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLink",name:"renderLink",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHTML",name:"renderHTML",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineHTML",name:"renderInlineHTML",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderDocument",name:"renderDocument",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderParagraph",name:"renderParagraph",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderText",name:"renderText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpan",name:"renderCodeSpan",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpanOpenMarker",name:"renderCodeSpanOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpanContent",name:"renderCodeSpanContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpanCloseMarker",name:"renderCodeSpanCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmphasis",name:"renderEmphasis",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmAsteriskOpenMarker",name:"renderEmAsteriskOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmAsteriskCloseMarker",name:"renderEmAsteriskCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmUnderscoreOpenMarker",name:"renderEmUnderscoreOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmUnderscoreCloseMarker",name:"renderEmUnderscoreCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrong",name:"renderStrong",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongA6kOpenMarker",name:"renderStrongA6kOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongA6kCloseMarker",name:"renderStrongA6kCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongU8eOpenMarker",name:"renderStrongU8eOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongU8eCloseMarker",name:"renderStrongU8eCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockquote",name:"renderBlockquote",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockquoteMarker",name:"renderBlockquoteMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHeading",name:"renderHeading",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHeadingC8hMarker",name:"renderHeadingC8hMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHeadingID",name:"renderHeadingID",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderList",name:"renderList",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderListItem",name:"renderListItem",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTaskListItemMarker",name:"renderTaskListItemMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderThematicBreak",name:"renderThematicBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHardBreak",name:"renderHardBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSoftBreak",name:"renderSoftBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlock",name:"renderCodeBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockCode",name:"renderCodeBlockCode",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)}];DI.methods=[{prop:"WriteByte",name:"WriteByte",pkg:"",typ:$funcType([$Uint8],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([CI],[],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[],false)},{prop:"Newline",name:"Newline",pkg:"",typ:$funcType([],[],false)},{prop:"renderLinkRefDefBlock",name:"renderLinkRefDefBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkRefDef",name:"renderLinkRefDef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKramdownBlockIAL",name:"renderKramdownBlockIAL",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark",name:"renderMark",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark1OpenMarker",name:"renderMark1OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark1CloseMarker",name:"renderMark1CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark2OpenMarker",name:"renderMark2OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark2CloseMarker",name:"renderMark2CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSup",name:"renderSup",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSupOpenMarker",name:"renderSupOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSupCloseMarker",name:"renderSupCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSub",name:"renderSub",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSubOpenMarker",name:"renderSubOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSubCloseMarker",name:"renderSubCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatterCloseMarker",name:"renderYamlFrontMatterCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatterContent",name:"renderYamlFrontMatterContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatterOpenMarker",name:"renderYamlFrontMatterOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatter",name:"renderYamlFrontMatter",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHtmlEntity",name:"renderHtmlEntity",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBackslashContent",name:"renderBackslashContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBackslash",name:"renderBackslash",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderToC",name:"renderToC",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFootnotesDefBlock",name:"renderFootnotesDefBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFootnotesDef",name:"renderFootnotesDef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFootnotesRef",name:"renderFootnotesRef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockCloseMarker",name:"renderCodeBlockCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockInfoMarker",name:"renderCodeBlockInfoMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockOpenMarker",name:"renderCodeBlockOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlock",name:"renderCodeBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockCode",name:"renderCodeBlockCode",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiAlias",name:"renderEmojiAlias",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiImg",name:"renderEmojiImg",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiUnicode",name:"renderEmojiUnicode",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmoji",name:"renderEmoji",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMathCloseMarker",name:"renderInlineMathCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMathContent",name:"renderInlineMathContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMathOpenMarker",name:"renderInlineMathOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMath",name:"renderInlineMath",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlockCloseMarker",name:"renderMathBlockCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlockContent",name:"renderMathBlockContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlockOpenMarker",name:"renderMathBlockOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlock",name:"renderMathBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableCell",name:"renderTableCell",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableRow",name:"renderTableRow",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableHead",name:"renderTableHead",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTable",name:"renderTable",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough",name:"renderStrikethrough",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough1OpenMarker",name:"renderStrikethrough1OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough1CloseMarker",name:"renderStrikethrough1CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough2OpenMarker",name:"renderStrikethrough2OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough2CloseMarker",name:"renderStrikethrough2CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkTitle",name:"renderLinkTitle",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkDest",name:"renderLinkDest",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkSpace",name:"renderLinkSpace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkText",name:"renderLinkText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCloseParen",name:"renderCloseParen",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderOpenParen",name:"renderOpenParen",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCloseBrace",name:"renderCloseBrace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderOpenBrace",name:"renderOpenBrace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCloseBracket",name:"renderCloseBracket",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderOpenBracket",name:"renderOpenBracket",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBang",name:"renderBang",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderImage",name:"renderImage",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLink",name:"renderLink",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHTML",name:"renderHTML",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineHTML",name:"renderInlineHTML",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderDocument",name:"renderDocument",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderParagraph",name:"renderParagraph",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"inListItem",name:"inListItem",pkg:"github.com/88250/lute/render",typ:$funcType([CM],[$Bool],false)},{prop:"renderText",name:"renderText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpan",name:"renderCodeSpan",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpanOpenMarker",name:"renderCodeSpanOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpanContent",name:"renderCodeSpanContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpanCloseMarker",name:"renderCodeSpanCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmphasis",name:"renderEmphasis",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"popWriteClass",name:"popWriteClass",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$String],[],false)},{prop:"popWriter",name:"popWriter",pkg:"github.com/88250/lute/render",typ:$funcType([CM],[],false)},{prop:"renderEmAsteriskOpenMarker",name:"renderEmAsteriskOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmAsteriskCloseMarker",name:"renderEmAsteriskCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmUnderscoreOpenMarker",name:"renderEmUnderscoreOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmUnderscoreCloseMarker",name:"renderEmUnderscoreCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrong",name:"renderStrong",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongA6kOpenMarker",name:"renderStrongA6kOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongA6kCloseMarker",name:"renderStrongA6kCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongU8eOpenMarker",name:"renderStrongU8eOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongU8eCloseMarker",name:"renderStrongU8eCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockquote",name:"renderBlockquote",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockquoteMarker",name:"renderBlockquoteMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHeading",name:"renderHeading",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderClass",name:"renderClass",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$String],[],false)},{prop:"domAttrValue",name:"domAttrValue",pkg:"github.com/88250/lute/render",typ:$funcType([CU,$String],[$String],false)},{prop:"domSetAttrValue",name:"domSetAttrValue",pkg:"github.com/88250/lute/render",typ:$funcType([CU,$String,$String],[],false)},{prop:"renderHeadingC8hMarker",name:"renderHeadingC8hMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHeadingID",name:"renderHeadingID",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderList",name:"renderList",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderListItem",name:"renderListItem",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTaskListItemMarker",name:"renderTaskListItemMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderThematicBreak",name:"renderThematicBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHardBreak",name:"renderHardBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSoftBreak",name:"renderSoftBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"Text",name:"Text",pkg:"",typ:$funcType([CM],[$String],false)}];DJ.methods=[{prop:"renderLinkRefDefBlock",name:"renderLinkRefDefBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkRefDef",name:"renderLinkRefDef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKramdownBlockIAL",name:"renderKramdownBlockIAL",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark",name:"renderMark",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark1OpenMarker",name:"renderMark1OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark1CloseMarker",name:"renderMark1CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark2OpenMarker",name:"renderMark2OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark2CloseMarker",name:"renderMark2CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSup",name:"renderSup",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSupOpenMarker",name:"renderSupOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSupCloseMarker",name:"renderSupCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSub",name:"renderSub",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSubOpenMarker",name:"renderSubOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSubCloseMarker",name:"renderSubCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatterCloseMarker",name:"renderYamlFrontMatterCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatterContent",name:"renderYamlFrontMatterContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatterOpenMarker",name:"renderYamlFrontMatterOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatter",name:"renderYamlFrontMatter",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHtmlEntity",name:"renderHtmlEntity",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBackslashContent",name:"renderBackslashContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBackslash",name:"renderBackslash",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderToC",name:"renderToC",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFootnotesDefBlock",name:"renderFootnotesDefBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFootnotesDef",name:"renderFootnotesDef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFootnotesRef",name:"renderFootnotesRef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockCloseMarker",name:"renderCodeBlockCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockInfoMarker",name:"renderCodeBlockInfoMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockOpenMarker",name:"renderCodeBlockOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlock",name:"renderCodeBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockCode",name:"renderCodeBlockCode",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiAlias",name:"renderEmojiAlias",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiImg",name:"renderEmojiImg",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiUnicode",name:"renderEmojiUnicode",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmoji",name:"renderEmoji",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMathCloseMarker",name:"renderInlineMathCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMathContent",name:"renderInlineMathContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMathOpenMarker",name:"renderInlineMathOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMath",name:"renderInlineMath",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlockCloseMarker",name:"renderMathBlockCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlockContent",name:"renderMathBlockContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlockOpenMarker",name:"renderMathBlockOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlock",name:"renderMathBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableCell",name:"renderTableCell",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableRow",name:"renderTableRow",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableHead",name:"renderTableHead",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTable",name:"renderTable",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough",name:"renderStrikethrough",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough1OpenMarker",name:"renderStrikethrough1OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough1CloseMarker",name:"renderStrikethrough1CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough2OpenMarker",name:"renderStrikethrough2OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough2CloseMarker",name:"renderStrikethrough2CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkTitle",name:"renderLinkTitle",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkDest",name:"renderLinkDest",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkSpace",name:"renderLinkSpace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkText",name:"renderLinkText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCloseParen",name:"renderCloseParen",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderOpenParen",name:"renderOpenParen",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCloseBrace",name:"renderCloseBrace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderOpenBrace",name:"renderOpenBrace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCloseBracket",name:"renderCloseBracket",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderOpenBracket",name:"renderOpenBracket",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBang",name:"renderBang",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderImage",name:"renderImage",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLink",name:"renderLink",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHTML",name:"renderHTML",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineHTML",name:"renderInlineHTML",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"tagMatchClose",name:"tagMatchClose",pkg:"github.com/88250/lute/render",typ:$funcType([$String,CM],[$Bool],false)},{prop:"tagMatchOpen",name:"tagMatchOpen",pkg:"github.com/88250/lute/render",typ:$funcType([$String,CM],[$Bool],false)},{prop:"renderDocument",name:"renderDocument",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderParagraph",name:"renderParagraph",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderText",name:"renderText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpan",name:"renderCodeSpan",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpanOpenMarker",name:"renderCodeSpanOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpanContent",name:"renderCodeSpanContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpanCloseMarker",name:"renderCodeSpanCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmphasis",name:"renderEmphasis",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmAsteriskOpenMarker",name:"renderEmAsteriskOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmAsteriskCloseMarker",name:"renderEmAsteriskCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmUnderscoreOpenMarker",name:"renderEmUnderscoreOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmUnderscoreCloseMarker",name:"renderEmUnderscoreCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrong",name:"renderStrong",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongA6kOpenMarker",name:"renderStrongA6kOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongA6kCloseMarker",name:"renderStrongA6kCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongU8eOpenMarker",name:"renderStrongU8eOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongU8eCloseMarker",name:"renderStrongU8eCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockquote",name:"renderBlockquote",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockquoteMarker",name:"renderBlockquoteMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHeading",name:"renderHeading",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHeadingC8hMarker",name:"renderHeadingC8hMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHeadingID",name:"renderHeadingID",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderList",name:"renderList",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderListItem",name:"renderListItem",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTaskListItemMarker",name:"renderTaskListItemMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderThematicBreak",name:"renderThematicBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHardBreak",name:"renderHardBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSoftBreak",name:"renderSoftBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSpanNode",name:"renderSpanNode",pkg:"github.com/88250/lute/render",typ:$funcType([CM],[],false)},{prop:"renderDivNode",name:"renderDivNode",pkg:"github.com/88250/lute/render",typ:$funcType([CM],[],false)},{prop:"Text",name:"Text",pkg:"",typ:$funcType([CM],[$String],false)}];DK.methods=[{prop:"Render",name:"Render",pkg:"",typ:$funcType([],[CI,CJ],false)},{prop:"renderLinkDest",name:"renderLinkDest",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)}];CK.methods=[{prop:"FixTermTypo",name:"FixTermTypo",pkg:"",typ:$funcType([CI],[CI],false)},{prop:"fixTermTypo0",name:"fixTermTypo0",pkg:"github.com/88250/lute/render",typ:$funcType([CI],[CI],false)},{prop:"Space",name:"Space",pkg:"",typ:$funcType([CI],[CI],false)},{prop:"Render",name:"Render",pkg:"",typ:$funcType([],[CI],false)},{prop:"renderDefault",name:"renderDefault",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"WriteByte",name:"WriteByte",pkg:"",typ:$funcType([$Uint8],[],false)},{prop:"Write",name:"Write",pkg:"",typ:$funcType([CI],[],false)},{prop:"WriteString",name:"WriteString",pkg:"",typ:$funcType([$String],[],false)},{prop:"Newline",name:"Newline",pkg:"",typ:$funcType([],[],false)},{prop:"TextAutoSpacePrevious",name:"TextAutoSpacePrevious",pkg:"",typ:$funcType([CM],[],false)},{prop:"TextAutoSpaceNext",name:"TextAutoSpaceNext",pkg:"",typ:$funcType([CM],[],false)},{prop:"LinkTextAutoSpacePrevious",name:"LinkTextAutoSpacePrevious",pkg:"",typ:$funcType([CM],[],false)},{prop:"LinkTextAutoSpaceNext",name:"LinkTextAutoSpaceNext",pkg:"",typ:$funcType([CM],[],false)},{prop:"renderToC",name:"renderToC",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderToC0",name:"renderToC0",pkg:"github.com/88250/lute/render",typ:$funcType([DB],[],false)},{prop:"Tag",name:"Tag",pkg:"",typ:$funcType([$String,CL,$Bool],[],false)},{prop:"headings",name:"headings",pkg:"github.com/88250/lute/render",typ:$funcType([],[DC],false)},{prop:"setextHeadingLen",name:"setextHeadingLen",pkg:"github.com/88250/lute/render",typ:$funcType([CM],[$Int],false)},{prop:"renderListStyle",name:"renderListStyle",pkg:"github.com/88250/lute/render",typ:$funcType([CM,CR],[],false)},{prop:"tagSrc",name:"tagSrc",pkg:"github.com/88250/lute/render",typ:$funcType([CI],[CI],false)},{prop:"tagSrcPath",name:"tagSrcPath",pkg:"github.com/88250/lute/render",typ:$funcType([CI],[CI],false)},{prop:"isLastNode",name:"isLastNode",pkg:"github.com/88250/lute/render",typ:$funcType([CM,CM],[$Bool],false)},{prop:"NodeID",name:"NodeID",pkg:"",typ:$funcType([CM],[$String],false)},{prop:"NodeAttrs",name:"NodeAttrs",pkg:"",typ:$funcType([CM],[CL],false)},{prop:"NodeAttrsStr",name:"NodeAttrsStr",pkg:"",typ:$funcType([CM],[$String],false)},{prop:"Text",name:"Text",pkg:"",typ:$funcType([CM],[$String],false)},{prop:"EncodeLinkSpace",name:"EncodeLinkSpace",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"LinkPath",name:"LinkPath",pkg:"",typ:$funcType([CI],[CI],false)},{prop:"PrefixPath",name:"PrefixPath",pkg:"",typ:$funcType([CI],[CI],false)},{prop:"RelativePath",name:"RelativePath",pkg:"",typ:$funcType([CI],[CI],false)},{prop:"isRelativePath",name:"isRelativePath",pkg:"github.com/88250/lute/render",typ:$funcType([CI],[$Bool],false)}];DO.methods=[{prop:"renderCustomBlock",name:"renderCustomBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderAttributeView",name:"renderAttributeView",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTextMark",name:"renderTextMark",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBr",name:"renderBr",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderUnderline",name:"renderUnderline",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderUnderlineOpenMarker",name:"renderUnderlineOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderUnderlineCloseMarker",name:"renderUnderlineCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKbd",name:"renderKbd",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKbdOpenMarker",name:"renderKbdOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKbdCloseMarker",name:"renderKbdCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockQueryEmbed",name:"renderBlockQueryEmbed",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockQueryEmbedScript",name:"renderBlockQueryEmbedScript",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderVideo",name:"renderVideo",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderAudio",name:"renderAudio",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderWidget",name:"renderWidget",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderIFrame",name:"renderIFrame",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"replaceSrc",name:"replaceSrc",pkg:"github.com/88250/lute/render",typ:$funcType([CI,CI,CI],[CI],false)},{prop:"renderBlockRef",name:"renderBlockRef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"escapeRefText",name:"escapeRefText",pkg:"github.com/88250/lute/render",typ:$funcType([$String],[$String],false)},{prop:"renderBlockRefID",name:"renderBlockRefID",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockRefSpace",name:"renderBlockRefSpace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockRefText",name:"renderBlockRefText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockRefDynamicText",name:"renderBlockRefDynamicText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFileAnnotationRef",name:"renderFileAnnotationRef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFileAnnotationRefID",name:"renderFileAnnotationRefID",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFileAnnotationRefSpace",name:"renderFileAnnotationRefSpace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFileAnnotationRefText",name:"renderFileAnnotationRefText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderGitConflictCloseMarker",name:"renderGitConflictCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderGitConflictContent",name:"renderGitConflictContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderGitConflictOpenMarker",name:"renderGitConflictOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderGitConflict",name:"renderGitConflict",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTag",name:"renderTag",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTagOpenMarker",name:"renderTagOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTagCloseMarker",name:"renderTagCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSuperBlock",name:"renderSuperBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSuperBlockOpenMarker",name:"renderSuperBlockOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSuperBlockLayoutMarker",name:"renderSuperBlockLayoutMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSuperBlockCloseMarker",name:"renderSuperBlockCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkRefDefBlock",name:"renderLinkRefDefBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkRefDef",name:"renderLinkRefDef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKramdownBlockIAL",name:"renderKramdownBlockIAL",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKramdownSpanIAL",name:"renderKramdownSpanIAL",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark",name:"renderMark",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark1OpenMarker",name:"renderMark1OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark1CloseMarker",name:"renderMark1CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark2OpenMarker",name:"renderMark2OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark2CloseMarker",name:"renderMark2CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSup",name:"renderSup",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSupOpenMarker",name:"renderSupOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSupCloseMarker",name:"renderSupCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSub",name:"renderSub",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSubOpenMarker",name:"renderSubOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSubCloseMarker",name:"renderSubCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatterCloseMarker",name:"renderYamlFrontMatterCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatterContent",name:"renderYamlFrontMatterContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatterOpenMarker",name:"renderYamlFrontMatterOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatter",name:"renderYamlFrontMatter",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHtmlEntity",name:"renderHtmlEntity",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBackslashContent",name:"renderBackslashContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBackslash",name:"renderBackslash",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderToC",name:"renderToC",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFootnotesDefBlock",name:"renderFootnotesDefBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFootnotesDef",name:"renderFootnotesDef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFootnotesRef",name:"renderFootnotesRef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlock",name:"renderCodeBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockOpenMarker",name:"renderCodeBlockOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockInfoMarker",name:"renderCodeBlockInfoMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockCode",name:"renderCodeBlockCode",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockCloseMarker",name:"renderCodeBlockCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiAlias",name:"renderEmojiAlias",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiImg",name:"renderEmojiImg",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiUnicode",name:"renderEmojiUnicode",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmoji",name:"renderEmoji",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMath",name:"renderInlineMath",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMathOpenMarker",name:"renderInlineMathOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMathContent",name:"renderInlineMathContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMathCloseMarker",name:"renderInlineMathCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlock",name:"renderMathBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlockOpenMarker",name:"renderMathBlockOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlockContent",name:"renderMathBlockContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlockCloseMarker",name:"renderMathBlockCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableCell",name:"renderTableCell",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableRow",name:"renderTableRow",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableHead",name:"renderTableHead",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTable",name:"renderTable",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough",name:"renderStrikethrough",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough1OpenMarker",name:"renderStrikethrough1OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough1CloseMarker",name:"renderStrikethrough1CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough2OpenMarker",name:"renderStrikethrough2OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough2CloseMarker",name:"renderStrikethrough2CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkTitle",name:"renderLinkTitle",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkDest",name:"renderLinkDest",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkSpace",name:"renderLinkSpace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkText",name:"renderLinkText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCloseParen",name:"renderCloseParen",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderOpenParen",name:"renderOpenParen",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLess",name:"renderLess",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderGreater",name:"renderGreater",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCloseBrace",name:"renderCloseBrace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderOpenBrace",name:"renderOpenBrace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCloseBracket",name:"renderCloseBracket",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderOpenBracket",name:"renderOpenBracket",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBang",name:"renderBang",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderImage",name:"renderImage",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLink",name:"renderLink",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHTML",name:"renderHTML",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineHTML",name:"renderInlineHTML",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderDocument",name:"renderDocument",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderParagraph",name:"renderParagraph",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderText",name:"renderText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpan",name:"renderCodeSpan",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpanOpenMarker",name:"renderCodeSpanOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpanContent",name:"renderCodeSpanContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpanCloseMarker",name:"renderCodeSpanCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmphasis",name:"renderEmphasis",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmAsteriskOpenMarker",name:"renderEmAsteriskOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmAsteriskCloseMarker",name:"renderEmAsteriskCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmUnderscoreOpenMarker",name:"renderEmUnderscoreOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmUnderscoreCloseMarker",name:"renderEmUnderscoreCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrong",name:"renderStrong",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongA6kOpenMarker",name:"renderStrongA6kOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongA6kCloseMarker",name:"renderStrongA6kCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongU8eOpenMarker",name:"renderStrongU8eOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongU8eCloseMarker",name:"renderStrongU8eCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockquote",name:"renderBlockquote",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockquoteMarker",name:"renderBlockquoteMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHeading",name:"renderHeading",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHeadingC8hMarker",name:"renderHeadingC8hMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHeadingID",name:"renderHeadingID",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderList",name:"renderList",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderListItem",name:"renderListItem",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTaskListItemMarker",name:"renderTaskListItemMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderThematicBreak",name:"renderThematicBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHardBreak",name:"renderHardBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSoftBreak",name:"renderSoftBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"spanNodeAttrs",name:"spanNodeAttrs",pkg:"github.com/88250/lute/render",typ:$funcType([CM,CR],[],false)},{prop:"blockNodeAttrs",name:"blockNodeAttrs",pkg:"github.com/88250/lute/render",typ:$funcType([CM,CR,$String],[],false)},{prop:"nodeClass",name:"nodeClass",pkg:"github.com/88250/lute/render",typ:$funcType([CM,CR,$String],[],false)},{prop:"nodeDataType",name:"nodeDataType",pkg:"github.com/88250/lute/render",typ:$funcType([CM,CR],[],false)},{prop:"nodeID",name:"nodeID",pkg:"github.com/88250/lute/render",typ:$funcType([CM,CR],[],false)},{prop:"nodeIndex",name:"nodeIndex",pkg:"github.com/88250/lute/render",typ:$funcType([CM,CR],[],false)},{prop:"spellcheck",name:"spellcheck",pkg:"github.com/88250/lute/render",typ:$funcType([CR],[],false)},{prop:"contenteditable",name:"contenteditable",pkg:"github.com/88250/lute/render",typ:$funcType([CM,CR],[],false)},{prop:"renderIAL",name:"renderIAL",pkg:"github.com/88250/lute/render",typ:$funcType([CM],[],false)},{prop:"renderTextMarkAttrs",name:"renderTextMarkAttrs",pkg:"github.com/88250/lute/render",typ:$funcType([CM],[CL],false)}];DP.methods=[{prop:"renderCustomBlock",name:"renderCustomBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderAttributeView",name:"renderAttributeView",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTextMark",name:"renderTextMark",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBr",name:"renderBr",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderUnderline",name:"renderUnderline",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderUnderlineOpenMarker",name:"renderUnderlineOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderUnderlineCloseMarker",name:"renderUnderlineCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKbd",name:"renderKbd",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKbdOpenMarker",name:"renderKbdOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKbdCloseMarker",name:"renderKbdCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderVideo",name:"renderVideo",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderAudio",name:"renderAudio",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderIFrame",name:"renderIFrame",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderWidget",name:"renderWidget",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderGitConflictCloseMarker",name:"renderGitConflictCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderGitConflictContent",name:"renderGitConflictContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderGitConflictOpenMarker",name:"renderGitConflictOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderGitConflict",name:"renderGitConflict",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSuperBlock",name:"renderSuperBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSuperBlockOpenMarker",name:"renderSuperBlockOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSuperBlockLayoutMarker",name:"renderSuperBlockLayoutMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSuperBlockCloseMarker",name:"renderSuperBlockCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkRefDefBlock",name:"renderLinkRefDefBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkRefDef",name:"renderLinkRefDef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTag",name:"renderTag",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTagOpenMarker",name:"renderTagOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTagCloseMarker",name:"renderTagCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKramdownBlockIAL",name:"renderKramdownBlockIAL",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKramdownSpanIAL",name:"renderKramdownSpanIAL",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark",name:"renderMark",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark1OpenMarker",name:"renderMark1OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark1CloseMarker",name:"renderMark1CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark2OpenMarker",name:"renderMark2OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark2CloseMarker",name:"renderMark2CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSup",name:"renderSup",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSupOpenMarker",name:"renderSupOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSupCloseMarker",name:"renderSupCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSub",name:"renderSub",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSubOpenMarker",name:"renderSubOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSubCloseMarker",name:"renderSubCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockQueryEmbed",name:"renderBlockQueryEmbed",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockQueryEmbedScript",name:"renderBlockQueryEmbedScript",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockRef",name:"renderBlockRef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockRefID",name:"renderBlockRefID",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockRefSpace",name:"renderBlockRefSpace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockRefText",name:"renderBlockRefText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockRefDynamicText",name:"renderBlockRefDynamicText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFileAnnotationRef",name:"renderFileAnnotationRef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFileAnnotationRefID",name:"renderFileAnnotationRefID",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFileAnnotationRefSpace",name:"renderFileAnnotationRefSpace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFileAnnotationRefText",name:"renderFileAnnotationRefText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatterCloseMarker",name:"renderYamlFrontMatterCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatterContent",name:"renderYamlFrontMatterContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatterOpenMarker",name:"renderYamlFrontMatterOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatter",name:"renderYamlFrontMatter",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHtmlEntity",name:"renderHtmlEntity",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBackslashContent",name:"renderBackslashContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBackslash",name:"renderBackslash",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderToC",name:"renderToC",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFootnotesRef",name:"renderFootnotesRef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFootnotesDefBlock",name:"renderFootnotesDefBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFootnotesDef",name:"renderFootnotesDef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlock",name:"renderCodeBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockCode",name:"renderCodeBlockCode",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockCloseMarker",name:"renderCodeBlockCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockInfoMarker",name:"renderCodeBlockInfoMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockOpenMarker",name:"renderCodeBlockOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiAlias",name:"renderEmojiAlias",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiImg",name:"renderEmojiImg",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiUnicode",name:"renderEmojiUnicode",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmoji",name:"renderEmoji",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMathCloseMarker",name:"renderInlineMathCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMathContent",name:"renderInlineMathContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMathOpenMarker",name:"renderInlineMathOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMath",name:"renderInlineMath",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlockCloseMarker",name:"renderMathBlockCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlockContent",name:"renderMathBlockContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlockOpenMarker",name:"renderMathBlockOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlock",name:"renderMathBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableCell",name:"renderTableCell",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableRow",name:"renderTableRow",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableHead",name:"renderTableHead",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTable",name:"renderTable",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough",name:"renderStrikethrough",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough1OpenMarker",name:"renderStrikethrough1OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough1CloseMarker",name:"renderStrikethrough1CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough2OpenMarker",name:"renderStrikethrough2OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough2CloseMarker",name:"renderStrikethrough2CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkTitle",name:"renderLinkTitle",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkDest",name:"renderLinkDest",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkSpace",name:"renderLinkSpace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkText",name:"renderLinkText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCloseBrace",name:"renderCloseBrace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderOpenBrace",name:"renderOpenBrace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCloseParen",name:"renderCloseParen",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderOpenParen",name:"renderOpenParen",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLess",name:"renderLess",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderGreater",name:"renderGreater",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCloseBracket",name:"renderCloseBracket",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderOpenBracket",name:"renderOpenBracket",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBang",name:"renderBang",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderImage",name:"renderImage",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLink",name:"renderLink",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHTML",name:"renderHTML",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineHTML",name:"renderInlineHTML",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderDocument",name:"renderDocument",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderParagraph",name:"renderParagraph",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderText",name:"renderText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpan",name:"renderCodeSpan",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpanOpenMarker",name:"renderCodeSpanOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpanContent",name:"renderCodeSpanContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpanCloseMarker",name:"renderCodeSpanCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmphasis",name:"renderEmphasis",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmAsteriskOpenMarker",name:"renderEmAsteriskOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmAsteriskCloseMarker",name:"renderEmAsteriskCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmUnderscoreOpenMarker",name:"renderEmUnderscoreOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmUnderscoreCloseMarker",name:"renderEmUnderscoreCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrong",name:"renderStrong",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongA6kOpenMarker",name:"renderStrongA6kOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongA6kCloseMarker",name:"renderStrongA6kCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongU8eOpenMarker",name:"renderStrongU8eOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongU8eCloseMarker",name:"renderStrongU8eCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockquote",name:"renderBlockquote",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockquoteMarker",name:"renderBlockquoteMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHeading",name:"renderHeading",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHeadingC8hMarker",name:"renderHeadingC8hMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHeadingID",name:"renderHeadingID",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderList",name:"renderList",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderListItem",name:"renderListItem",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTaskListItemMarker",name:"renderTaskListItemMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderThematicBreak",name:"renderThematicBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHardBreak",name:"renderHardBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSoftBreak",name:"renderSoftBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTextMarkAttrs",name:"renderTextMarkAttrs",pkg:"github.com/88250/lute/render",typ:$funcType([CM],[CL],false)},{prop:"spanNodeAttrs",name:"spanNodeAttrs",pkg:"github.com/88250/lute/render",typ:$funcType([CM,CR],[],false)},{prop:"Render",name:"Render",pkg:"",typ:$funcType([],[CI],false)}];DR.methods=[{prop:"renderCustomBlock",name:"renderCustomBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderAttributeView",name:"renderAttributeView",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTextMark",name:"renderTextMark",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMdMarker",name:"renderMdMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[$String],false)},{prop:"renderMdMarker0",name:"renderMdMarker0",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$String,$Bool],[$String],false)},{prop:"renderMdMarker1",name:"renderMdMarker1",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$String,$Bool],[$String],false)},{prop:"renderBr",name:"renderBr",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderUnderline",name:"renderUnderline",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderUnderlineOpenMarker",name:"renderUnderlineOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderUnderlineCloseMarker",name:"renderUnderlineCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKbd",name:"renderKbd",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKbdOpenMarker",name:"renderKbdOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKbdCloseMarker",name:"renderKbdCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderVideo",name:"renderVideo",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderAudio",name:"renderAudio",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderIFrame",name:"renderIFrame",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderWidget",name:"renderWidget",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderGitConflictCloseMarker",name:"renderGitConflictCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderGitConflictContent",name:"renderGitConflictContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderGitConflictOpenMarker",name:"renderGitConflictOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderGitConflict",name:"renderGitConflict",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSuperBlock",name:"renderSuperBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSuperBlockOpenMarker",name:"renderSuperBlockOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSuperBlockLayoutMarker",name:"renderSuperBlockLayoutMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSuperBlockCloseMarker",name:"renderSuperBlockCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkRefDefBlock",name:"renderLinkRefDefBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkRefDef",name:"renderLinkRefDef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTag",name:"renderTag",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTagOpenMarker",name:"renderTagOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTagCloseMarker",name:"renderTagCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKramdownBlockIAL",name:"renderKramdownBlockIAL",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKramdownSpanIAL",name:"renderKramdownSpanIAL",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark",name:"renderMark",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark1OpenMarker",name:"renderMark1OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark1CloseMarker",name:"renderMark1CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark2OpenMarker",name:"renderMark2OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark2CloseMarker",name:"renderMark2CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSup",name:"renderSup",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSupOpenMarker",name:"renderSupOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSupCloseMarker",name:"renderSupCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSub",name:"renderSub",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSubOpenMarker",name:"renderSubOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSubCloseMarker",name:"renderSubCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockQueryEmbedScript",name:"renderBlockQueryEmbedScript",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockQueryEmbed",name:"renderBlockQueryEmbed",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockRef",name:"renderBlockRef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockRefID",name:"renderBlockRefID",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockRefSpace",name:"renderBlockRefSpace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockRefText",name:"renderBlockRefText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockRefDynamicText",name:"renderBlockRefDynamicText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFileAnnotationRef",name:"renderFileAnnotationRef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFileAnnotationRefID",name:"renderFileAnnotationRefID",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFileAnnotationRefSpace",name:"renderFileAnnotationRefSpace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFileAnnotationRefText",name:"renderFileAnnotationRefText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatterCloseMarker",name:"renderYamlFrontMatterCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatterContent",name:"renderYamlFrontMatterContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatterOpenMarker",name:"renderYamlFrontMatterOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatter",name:"renderYamlFrontMatter",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHtmlEntity",name:"renderHtmlEntity",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBackslashContent",name:"renderBackslashContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBackslash",name:"renderBackslash",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderToC",name:"renderToC",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFootnotesRef",name:"renderFootnotesRef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFootnotesDefBlock",name:"renderFootnotesDefBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFootnotesDef",name:"renderFootnotesDef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiAlias",name:"renderEmojiAlias",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiImg",name:"renderEmojiImg",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiUnicode",name:"renderEmojiUnicode",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmoji",name:"renderEmoji",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableCell",name:"renderTableCell",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableRow",name:"renderTableRow",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableHead",name:"renderTableHead",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTable",name:"renderTable",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough",name:"renderStrikethrough",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough1OpenMarker",name:"renderStrikethrough1OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough1CloseMarker",name:"renderStrikethrough1CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough2OpenMarker",name:"renderStrikethrough2OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough2CloseMarker",name:"renderStrikethrough2CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkTitle",name:"renderLinkTitle",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkDest",name:"renderLinkDest",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkSpace",name:"renderLinkSpace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkText",name:"renderLinkText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCloseParen",name:"renderCloseParen",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderOpenParen",name:"renderOpenParen",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderGreater",name:"renderGreater",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLess",name:"renderLess",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCloseBrace",name:"renderCloseBrace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderOpenBrace",name:"renderOpenBrace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCloseBracket",name:"renderCloseBracket",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderOpenBracket",name:"renderOpenBracket",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBang",name:"renderBang",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderImage",name:"renderImage",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLink",name:"renderLink",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHTML",name:"renderHTML",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineHTML",name:"renderInlineHTML",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderDocument",name:"renderDocument",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderParagraph",name:"renderParagraph",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderText",name:"renderText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpan",name:"renderCodeSpan",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpanOpenMarker",name:"renderCodeSpanOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpanContent",name:"renderCodeSpanContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpanCloseMarker",name:"renderCodeSpanCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMath",name:"renderInlineMath",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMathOpenMarker",name:"renderInlineMathOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMathContent",name:"renderInlineMathContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMathCloseMarker",name:"renderInlineMathCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlockCloseMarker",name:"renderMathBlockCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlockContent",name:"renderMathBlockContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlockOpenMarker",name:"renderMathBlockOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlock",name:"renderMathBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockCloseMarker",name:"renderCodeBlockCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockCode",name:"renderCodeBlockCode",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockInfoMarker",name:"renderCodeBlockInfoMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockOpenMarker",name:"renderCodeBlockOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlock",name:"renderCodeBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmphasis",name:"renderEmphasis",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmAsteriskOpenMarker",name:"renderEmAsteriskOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmAsteriskCloseMarker",name:"renderEmAsteriskCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmUnderscoreOpenMarker",name:"renderEmUnderscoreOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmUnderscoreCloseMarker",name:"renderEmUnderscoreCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrong",name:"renderStrong",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongA6kOpenMarker",name:"renderStrongA6kOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongA6kCloseMarker",name:"renderStrongA6kCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongU8eOpenMarker",name:"renderStrongU8eOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongU8eCloseMarker",name:"renderStrongU8eCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockquote",name:"renderBlockquote",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockquoteMarker",name:"renderBlockquoteMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHeading",name:"renderHeading",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHeadingC8hMarker",name:"renderHeadingC8hMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHeadingID",name:"renderHeadingID",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderList",name:"renderList",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderListItem",name:"renderListItem",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTaskListItemMarker",name:"renderTaskListItemMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderThematicBreak",name:"renderThematicBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHardBreak",name:"renderHardBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSoftBreak",name:"renderSoftBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"withoutKramdownBlockIAL",name:"withoutKramdownBlockIAL",pkg:"github.com/88250/lute/render",typ:$funcType([CM],[$Bool],false)}];DT.methods=[{prop:"renderDefault",name:"renderDefault",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockQueryEmbed",name:"renderBlockQueryEmbed",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatter",name:"renderYamlFrontMatter",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderToC",name:"renderToC",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlock",name:"renderMathBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTable",name:"renderTable",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHTML",name:"renderHTML",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderParagraph",name:"renderParagraph",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockquote",name:"renderBlockquote",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSuperBlock",name:"renderSuperBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHeading",name:"renderHeading",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderList",name:"renderList",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderListItem",name:"renderListItem",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderThematicBreak",name:"renderThematicBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlock",name:"renderCodeBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKramdownBlockIAL",name:"renderKramdownBlockIAL",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderDocument",name:"renderDocument",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"data",name:"data",pkg:"github.com/88250/lute/render",typ:$funcType([CM],[],false)},{prop:"openObj",name:"openObj",pkg:"github.com/88250/lute/render",typ:$funcType([],[],false)},{prop:"closeObj",name:"closeObj",pkg:"github.com/88250/lute/render",typ:$funcType([],[],false)},{prop:"openChildren",name:"openChildren",pkg:"github.com/88250/lute/render",typ:$funcType([CM],[],false)},{prop:"closeChildren",name:"closeChildren",pkg:"github.com/88250/lute/render",typ:$funcType([CM],[],false)},{prop:"comma",name:"comma",pkg:"github.com/88250/lute/render",typ:$funcType([CM],[],false)}];DU.methods=[{prop:"renderNode",name:"renderNode",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)}];DV.methods=[{prop:"Render",name:"Render",pkg:"",typ:$funcType([],[CI],false)},{prop:"renderCustomBlock",name:"renderCustomBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderAttributeView",name:"renderAttributeView",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTextMark",name:"renderTextMark",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBr",name:"renderBr",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderUnderline",name:"renderUnderline",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderUnderlineOpenMarker",name:"renderUnderlineOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderUnderlineCloseMarker",name:"renderUnderlineCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKbd",name:"renderKbd",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKbdOpenMarker",name:"renderKbdOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKbdCloseMarker",name:"renderKbdCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderVideo",name:"renderVideo",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderAudio",name:"renderAudio",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderIFrame",name:"renderIFrame",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderWidget",name:"renderWidget",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderGitConflictCloseMarker",name:"renderGitConflictCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderGitConflictContent",name:"renderGitConflictContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderGitConflictOpenMarker",name:"renderGitConflictOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderGitConflict",name:"renderGitConflict",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSuperBlock",name:"renderSuperBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSuperBlockOpenMarker",name:"renderSuperBlockOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSuperBlockLayoutMarker",name:"renderSuperBlockLayoutMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSuperBlockCloseMarker",name:"renderSuperBlockCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkRefDefBlock",name:"renderLinkRefDefBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkRefDef",name:"renderLinkRefDef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTag",name:"renderTag",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTagOpenMarker",name:"renderTagOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTagCloseMarker",name:"renderTagCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKramdownBlockIAL",name:"renderKramdownBlockIAL",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKramdownSpanIAL",name:"renderKramdownSpanIAL",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark",name:"renderMark",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark1OpenMarker",name:"renderMark1OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark1CloseMarker",name:"renderMark1CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark2OpenMarker",name:"renderMark2OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark2CloseMarker",name:"renderMark2CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSup",name:"renderSup",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSupOpenMarker",name:"renderSupOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSupCloseMarker",name:"renderSupCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSub",name:"renderSub",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSubOpenMarker",name:"renderSubOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSubCloseMarker",name:"renderSubCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockQueryEmbed",name:"renderBlockQueryEmbed",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockQueryEmbedScript",name:"renderBlockQueryEmbedScript",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockRef",name:"renderBlockRef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockRefID",name:"renderBlockRefID",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockRefSpace",name:"renderBlockRefSpace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockRefText",name:"renderBlockRefText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockRefDynamicText",name:"renderBlockRefDynamicText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFileAnnotationRef",name:"renderFileAnnotationRef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFileAnnotationRefID",name:"renderFileAnnotationRefID",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFileAnnotationRefSpace",name:"renderFileAnnotationRefSpace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFileAnnotationRefText",name:"renderFileAnnotationRefText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatterCloseMarker",name:"renderYamlFrontMatterCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatterContent",name:"renderYamlFrontMatterContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatterOpenMarker",name:"renderYamlFrontMatterOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatter",name:"renderYamlFrontMatter",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHtmlEntity",name:"renderHtmlEntity",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBackslashContent",name:"renderBackslashContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBackslash",name:"renderBackslash",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderToC",name:"renderToC",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFootnotesRef",name:"renderFootnotesRef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFootnotesDefBlock",name:"renderFootnotesDefBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"RenderFootnotes",name:"RenderFootnotes",pkg:"",typ:$funcType([],[CI],false)},{prop:"renderFootnotesDef",name:"renderFootnotesDef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockCloseMarker",name:"renderCodeBlockCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockInfoMarker",name:"renderCodeBlockInfoMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockOpenMarker",name:"renderCodeBlockOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiAlias",name:"renderEmojiAlias",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiImg",name:"renderEmojiImg",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiUnicode",name:"renderEmojiUnicode",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmoji",name:"renderEmoji",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMathCloseMarker",name:"renderInlineMathCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMathContent",name:"renderInlineMathContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMathOpenMarker",name:"renderInlineMathOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMath",name:"renderInlineMath",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlockCloseMarker",name:"renderMathBlockCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlockContent",name:"renderMathBlockContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlockOpenMarker",name:"renderMathBlockOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlock",name:"renderMathBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableCell",name:"renderTableCell",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableRow",name:"renderTableRow",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableHead",name:"renderTableHead",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTable",name:"renderTable",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough",name:"renderStrikethrough",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough1OpenMarker",name:"renderStrikethrough1OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough1CloseMarker",name:"renderStrikethrough1CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough2OpenMarker",name:"renderStrikethrough2OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough2CloseMarker",name:"renderStrikethrough2CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkTitle",name:"renderLinkTitle",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkDest",name:"renderLinkDest",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkSpace",name:"renderLinkSpace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkText",name:"renderLinkText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCloseBrace",name:"renderCloseBrace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderOpenBrace",name:"renderOpenBrace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCloseParen",name:"renderCloseParen",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderOpenParen",name:"renderOpenParen",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLess",name:"renderLess",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderGreater",name:"renderGreater",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCloseBracket",name:"renderCloseBracket",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderOpenBracket",name:"renderOpenBracket",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBang",name:"renderBang",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderImage",name:"renderImage",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLink",name:"renderLink",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHTML",name:"renderHTML",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineHTML",name:"renderInlineHTML",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderDocument",name:"renderDocument",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderParagraph",name:"renderParagraph",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderText",name:"renderText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpan",name:"renderCodeSpan",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpanOpenMarker",name:"renderCodeSpanOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpanContent",name:"renderCodeSpanContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpanCloseMarker",name:"renderCodeSpanCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmphasis",name:"renderEmphasis",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmAsteriskOpenMarker",name:"renderEmAsteriskOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmAsteriskCloseMarker",name:"renderEmAsteriskCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmUnderscoreOpenMarker",name:"renderEmUnderscoreOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmUnderscoreCloseMarker",name:"renderEmUnderscoreCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrong",name:"renderStrong",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongA6kOpenMarker",name:"renderStrongA6kOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongA6kCloseMarker",name:"renderStrongA6kCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongU8eOpenMarker",name:"renderStrongU8eOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongU8eCloseMarker",name:"renderStrongU8eCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockquote",name:"renderBlockquote",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockquoteMarker",name:"renderBlockquoteMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHeading",name:"renderHeading",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHeadingC8hMarker",name:"renderHeadingC8hMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHeadingID",name:"renderHeadingID",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderList",name:"renderList",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderListItem",name:"renderListItem",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTaskListItemMarker",name:"renderTaskListItemMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderThematicBreak",name:"renderThematicBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHardBreak",name:"renderHardBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSoftBreak",name:"renderSoftBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"handleKramdownBlockIAL",name:"handleKramdownBlockIAL",pkg:"github.com/88250/lute/render",typ:$funcType([CM],[],false)},{prop:"renderTextMarkAttrs",name:"renderTextMarkAttrs",pkg:"github.com/88250/lute/render",typ:$funcType([CM],[CL],false)},{prop:"spanNodeAttrs",name:"spanNodeAttrs",pkg:"github.com/88250/lute/render",typ:$funcType([CM,CR],[],false)},{prop:"renderCodeBlock",name:"renderCodeBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockCode",name:"renderCodeBlockCode",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)}];CX.methods=[{prop:"renderCustomBlock",name:"renderCustomBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderAttributeView",name:"renderAttributeView",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTextMark",name:"renderTextMark",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTextMarkAttrs",name:"renderTextMarkAttrs",pkg:"github.com/88250/lute/render",typ:$funcType([CM],[CL],false)},{prop:"renderBr",name:"renderBr",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderUnderline",name:"renderUnderline",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderUnderlineOpenMarker",name:"renderUnderlineOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderUnderlineCloseMarker",name:"renderUnderlineCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKbd",name:"renderKbd",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKbdOpenMarker",name:"renderKbdOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKbdCloseMarker",name:"renderKbdCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderVideo",name:"renderVideo",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderAudio",name:"renderAudio",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderIFrame",name:"renderIFrame",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderWidget",name:"renderWidget",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderGitConflictCloseMarker",name:"renderGitConflictCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderGitConflictContent",name:"renderGitConflictContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderGitConflictOpenMarker",name:"renderGitConflictOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderGitConflict",name:"renderGitConflict",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSuperBlock",name:"renderSuperBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSuperBlockOpenMarker",name:"renderSuperBlockOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSuperBlockLayoutMarker",name:"renderSuperBlockLayoutMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSuperBlockCloseMarker",name:"renderSuperBlockCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkRefDefBlock",name:"renderLinkRefDefBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkRefDef",name:"renderLinkRefDef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTag",name:"renderTag",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTagOpenMarker",name:"renderTagOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTagCloseMarker",name:"renderTagCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKramdownBlockIAL",name:"renderKramdownBlockIAL",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKramdownSpanIAL",name:"renderKramdownSpanIAL",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark",name:"renderMark",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark1OpenMarker",name:"renderMark1OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark1CloseMarker",name:"renderMark1CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark2OpenMarker",name:"renderMark2OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark2CloseMarker",name:"renderMark2CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSup",name:"renderSup",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSupOpenMarker",name:"renderSupOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSupCloseMarker",name:"renderSupCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSub",name:"renderSub",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSubOpenMarker",name:"renderSubOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSubCloseMarker",name:"renderSubCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockQueryEmbedScript",name:"renderBlockQueryEmbedScript",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockQueryEmbed",name:"renderBlockQueryEmbed",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockRef",name:"renderBlockRef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockRefID",name:"renderBlockRefID",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockRefSpace",name:"renderBlockRefSpace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockRefText",name:"renderBlockRefText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockRefDynamicText",name:"renderBlockRefDynamicText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFileAnnotationRef",name:"renderFileAnnotationRef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFileAnnotationRefID",name:"renderFileAnnotationRefID",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFileAnnotationRefSpace",name:"renderFileAnnotationRefSpace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFileAnnotationRefText",name:"renderFileAnnotationRefText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatterCloseMarker",name:"renderYamlFrontMatterCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatterContent",name:"renderYamlFrontMatterContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatterOpenMarker",name:"renderYamlFrontMatterOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatter",name:"renderYamlFrontMatter",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHtmlEntity",name:"renderHtmlEntity",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBackslashContent",name:"renderBackslashContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBackslash",name:"renderBackslash",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderToC",name:"renderToC",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFootnotesRef",name:"renderFootnotesRef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFootnotesDefBlock",name:"renderFootnotesDefBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFootnotesDef",name:"renderFootnotesDef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiAlias",name:"renderEmojiAlias",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiImg",name:"renderEmojiImg",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiUnicode",name:"renderEmojiUnicode",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmoji",name:"renderEmoji",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableCell",name:"renderTableCell",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableRow",name:"renderTableRow",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableHead",name:"renderTableHead",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTable",name:"renderTable",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough",name:"renderStrikethrough",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough1OpenMarker",name:"renderStrikethrough1OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough1CloseMarker",name:"renderStrikethrough1CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough2OpenMarker",name:"renderStrikethrough2OpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough2CloseMarker",name:"renderStrikethrough2CloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkTitle",name:"renderLinkTitle",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkDest",name:"renderLinkDest",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkSpace",name:"renderLinkSpace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLinkText",name:"renderLinkText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCloseParen",name:"renderCloseParen",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderOpenParen",name:"renderOpenParen",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderGreater",name:"renderGreater",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLess",name:"renderLess",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCloseBrace",name:"renderCloseBrace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderOpenBrace",name:"renderOpenBrace",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCloseBracket",name:"renderCloseBracket",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderOpenBracket",name:"renderOpenBracket",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBang",name:"renderBang",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderImage",name:"renderImage",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLink",name:"renderLink",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHTML",name:"renderHTML",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineHTML",name:"renderInlineHTML",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderDocument",name:"renderDocument",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderParagraph",name:"renderParagraph",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderText",name:"renderText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpan",name:"renderCodeSpan",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpanOpenMarker",name:"renderCodeSpanOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpanContent",name:"renderCodeSpanContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpanCloseMarker",name:"renderCodeSpanCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMath",name:"renderInlineMath",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMathOpenMarker",name:"renderInlineMathOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMathContent",name:"renderInlineMathContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMathCloseMarker",name:"renderInlineMathCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlockCloseMarker",name:"renderMathBlockCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlockContent",name:"renderMathBlockContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlockOpenMarker",name:"renderMathBlockOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlock",name:"renderMathBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockCloseMarker",name:"renderCodeBlockCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockCode",name:"renderCodeBlockCode",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockInfoMarker",name:"renderCodeBlockInfoMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlockOpenMarker",name:"renderCodeBlockOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlock",name:"renderCodeBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmphasis",name:"renderEmphasis",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmAsteriskOpenMarker",name:"renderEmAsteriskOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmAsteriskCloseMarker",name:"renderEmAsteriskCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmUnderscoreOpenMarker",name:"renderEmUnderscoreOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmUnderscoreCloseMarker",name:"renderEmUnderscoreCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrong",name:"renderStrong",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongA6kOpenMarker",name:"renderStrongA6kOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongA6kCloseMarker",name:"renderStrongA6kCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongU8eOpenMarker",name:"renderStrongU8eOpenMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrongU8eCloseMarker",name:"renderStrongU8eCloseMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockquote",name:"renderBlockquote",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockquoteMarker",name:"renderBlockquoteMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHeading",name:"renderHeading",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHeadingC8hMarker",name:"renderHeadingC8hMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHeadingID",name:"renderHeadingID",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderList",name:"renderList",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderListItem",name:"renderListItem",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTaskListItemMarker",name:"renderTaskListItemMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderThematicBreak",name:"renderThematicBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHardBreak",name:"renderHardBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSoftBreak",name:"renderSoftBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"withoutKramdownBlockIAL",name:"withoutKramdownBlockIAL",pkg:"github.com/88250/lute/render",typ:$funcType([CM],[$Bool],false)}];DW.methods=[{prop:"renderKramdownBlockIAL",name:"renderKramdownBlockIAL",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderKramdownSpanIAL",name:"renderKramdownSpanIAL",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMark",name:"renderMark",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSup",name:"renderSup",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSub",name:"renderSub",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockQueryEmbed",name:"renderBlockQueryEmbed",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockRef",name:"renderBlockRef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFileAnnotationRef",name:"renderFileAnnotationRef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderDefault",name:"renderDefault",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderYamlFrontMatter",name:"renderYamlFrontMatter",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHtmlEntity",name:"renderHtmlEntity",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBackslashContent",name:"renderBackslashContent",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBackslash",name:"renderBackslash",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderToC",name:"renderToC",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFootnotesRef",name:"renderFootnotesRef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderFootnotesDef",name:"renderFootnotesDef",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineMath",name:"renderInlineMath",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderMathBlock",name:"renderMathBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiImg",name:"renderEmojiImg",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiUnicode",name:"renderEmojiUnicode",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmojiAlias",name:"renderEmojiAlias",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmoji",name:"renderEmoji",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableCell",name:"renderTableCell",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableRow",name:"renderTableRow",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTableHead",name:"renderTableHead",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTable",name:"renderTable",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrikethrough",name:"renderStrikethrough",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderImage",name:"renderImage",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderLink",name:"renderLink",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHTML",name:"renderHTML",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderInlineHTML",name:"renderInlineHTML",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderDocument",name:"renderDocument",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderParagraph",name:"renderParagraph",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderText",name:"renderText",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeSpan",name:"renderCodeSpan",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderEmphasis",name:"renderEmphasis",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderStrong",name:"renderStrong",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderBlockquote",name:"renderBlockquote",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHeading",name:"renderHeading",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderList",name:"renderList",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderListItem",name:"renderListItem",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderTaskListItemMarker",name:"renderTaskListItemMarker",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderThematicBreak",name:"renderThematicBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderHardBreak",name:"renderHardBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderSoftBreak",name:"renderSoftBreak",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"renderCodeBlock",name:"renderCodeBlock",pkg:"github.com/88250/lute/render",typ:$funcType([CM,$Bool],[H.WalkStatus],false)},{prop:"leaf",name:"leaf",pkg:"github.com/88250/lute/render",typ:$funcType([$String,CM],[],false)},{prop:"val",name:"val",pkg:"github.com/88250/lute/render",typ:$funcType([$String,CM],[],false)},{prop:"openObj",name:"openObj",pkg:"github.com/88250/lute/render",typ:$funcType([],[],false)},{prop:"closeObj",name:"closeObj",pkg:"github.com/88250/lute/render",typ:$funcType([CM],[],false)},{prop:"openChildren",name:"openChildren",pkg:"github.com/88250/lute/render",typ:$funcType([CM],[],false)},{prop:"closeChildren",name:"closeChildren",pkg:"github.com/88250/lute/render",typ:$funcType([CM],[],false)},{prop:"comma",name:"comma",pkg:"github.com/88250/lute/render",typ:$funcType([],[],false)},{prop:"ignore",name:"ignore",pkg:"github.com/88250/lute/render",typ:$funcType([CM],[$Bool],false)}];N.init("github.com/88250/lute/render",[{prop:"BaseRenderer",name:"BaseRenderer",embedded:true,exported:true,typ:CK,tag:""},{prop:"commentStackDepth",name:"commentStackDepth",embedded:false,exported:false,typ:$Int,tag:""}]);P.init("github.com/88250/lute/render",[{prop:"BaseRenderer",name:"BaseRenderer",embedded:true,exported:true,typ:CK,tag:""},{prop:"nodeWriterStack",name:"nodeWriterStack",embedded:false,exported:false,typ:CT,tag:""},{prop:"LastOut",name:"LastOut",embedded:false,exported:true,typ:CI,tag:""}]);R.init("",[{prop:"BaseRenderer",name:"BaseRenderer",embedded:true,exported:true,typ:CK,tag:""}]);T.init("github.com/88250/lute/render",[{prop:"FormatRenderer",name:"FormatRenderer",embedded:true,exported:true,typ:CX,tag:""},{prop:"linkPrefixes",name:"linkPrefixes",embedded:false,exported:false,typ:CJ,tag:""},{prop:"originalLink",name:"originalLink",embedded:false,exported:false,typ:CJ,tag:""}]);AL.init([CM,$Bool],[H.WalkStatus],false);AM.init([CM,$Bool],[$String,H.WalkStatus],false);AO.init("",[{prop:"SoftBreak2HardBreak",name:"SoftBreak2HardBreak",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"AutoSpace",name:"AutoSpace",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"RenderListStyle",name:"RenderListStyle",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"CodeSyntaxHighlight",name:"CodeSyntaxHighlight",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"CodeSyntaxHighlightDetectLang",name:"CodeSyntaxHighlightDetectLang",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"CodeSyntaxHighlightInlineStyle",name:"CodeSyntaxHighlightInlineStyle",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"CodeSyntaxHighlightLineNum",name:"CodeSyntaxHighlightLineNum",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"CodeSyntaxHighlightStyleName",name:"CodeSyntaxHighlightStyleName",embedded:false,exported:true,typ:$String,tag:""},{prop:"VditorWYSIWYG",name:"VditorWYSIWYG",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"VditorIR",name:"VditorIR",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"VditorSV",name:"VditorSV",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"ProtyleWYSIWYG",name:"ProtyleWYSIWYG",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"KramdownBlockIAL",name:"KramdownBlockIAL",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"KramdownSpanIAL",name:"KramdownSpanIAL",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"SuperBlock",name:"SuperBlock",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"ImageLazyLoading",name:"ImageLazyLoading",embedded:false,exported:true,typ:$String,tag:""},{prop:"ChineseParagraphBeginningSpace",name:"ChineseParagraphBeginningSpace",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"Sanitize",name:"Sanitize",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"FixTermTypo",name:"FixTermTypo",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"Terms",name:"Terms",embedded:false,exported:true,typ:DL,tag:""},{prop:"ToC",name:"ToC",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"HeadingID",name:"HeadingID",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"KramdownIALIDRenderName",name:"KramdownIALIDRenderName",embedded:false,exported:true,typ:$String,tag:""},{prop:"HeadingAnchor",name:"HeadingAnchor",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"GFMTaskListItemClass",name:"GFMTaskListItemClass",embedded:false,exported:true,typ:$String,tag:""},{prop:"VditorCodeBlockPreview",name:"VditorCodeBlockPreview",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"VditorMathBlockPreview",name:"VditorMathBlockPreview",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"VditorHTMLBlockPreview",name:"VditorHTMLBlockPreview",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"LinkBase",name:"LinkBase",embedded:false,exported:true,typ:$String,tag:""},{prop:"LinkPrefix",name:"LinkPrefix",embedded:false,exported:true,typ:$String,tag:""},{prop:"NodeIndexStart",name:"NodeIndexStart",embedded:false,exported:true,typ:$Int,tag:""},{prop:"ProtyleContenteditable",name:"ProtyleContenteditable",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"KeepParagraphBeginningSpace",name:"KeepParagraphBeginningSpace",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"ProtyleMarkNetImg",name:"ProtyleMarkNetImg",embedded:false,exported:true,typ:$Bool,tag:""},{prop:"Spellcheck",name:"Spellcheck",embedded:false,exported:true,typ:$Bool,tag:""}]);AQ.init("",[{prop:"Options",name:"Options",embedded:false,exported:true,typ:CZ,tag:""},{prop:"RendererFuncs",name:"RendererFuncs",embedded:false,exported:true,typ:DM,tag:""},{prop:"DefaultRendererFunc",name:"DefaultRendererFunc",embedded:false,exported:true,typ:AL,tag:""},{prop:"ExtRendererFuncs",name:"ExtRendererFuncs",embedded:false,exported:true,typ:DN,tag:""},{prop:"Writer",name:"Writer",embedded:false,exported:true,typ:CS,tag:""},{prop:"LastOut",name:"LastOut",embedded:false,exported:true,typ:$Uint8,tag:""},{prop:"Tree",name:"Tree",embedded:false,exported:true,typ:DA,tag:""},{prop:"DisableTags",name:"DisableTags",embedded:false,exported:true,typ:$Int,tag:""},{prop:"FootnotesDefs",name:"FootnotesDefs",embedded:false,exported:true,typ:CO,tag:""},{prop:"RenderingFootnotes",name:"RenderingFootnotes",embedded:false,exported:true,typ:$Bool,tag:""}]);AW.init("github.com/88250/lute/render",[{prop:"ID",name:"ID",embedded:false,exported:true,typ:$String,tag:"json:\"id\""},{prop:"Box",name:"Box",embedded:false,exported:true,typ:$String,tag:"json:\"box\""},{prop:"Path",name:"Path",embedded:false,exported:true,typ:$String,tag:"json:\"path\""},{prop:"HPath",name:"HPath",embedded:false,exported:true,typ:$String,tag:"json:\"hPath\""},{prop:"Content",name:"Content",embedded:false,exported:true,typ:$String,tag:"json:\"content\""},{prop:"Level",name:"Level",embedded:false,exported:true,typ:$Int,tag:"json:\"level\""},{prop:"Children",name:"Children",embedded:false,exported:true,typ:DC,tag:"json:\"children\""},{prop:"parent",name:"parent",embedded:false,exported:false,typ:DB,tag:""}]);BC.init("",[{prop:"BaseRenderer",name:"BaseRenderer",embedded:true,exported:true,typ:CK,tag:""},{prop:"NodeIndex",name:"NodeIndex",embedded:false,exported:true,typ:$Int,tag:""}]);BE.init("",[{prop:"BaseRenderer",name:"BaseRenderer",embedded:true,exported:true,typ:CK,tag:""}]);BI.init("",[{prop:"BaseRenderer",name:"BaseRenderer",embedded:true,exported:true,typ:CK,tag:""},{prop:"NodeWriterStack",name:"NodeWriterStack",embedded:false,exported:true,typ:CT,tag:""}]);BS.init("",[{prop:"BaseRenderer",name:"BaseRenderer",embedded:true,exported:true,typ:CK,tag:""}]);BV.init("",[{prop:"BaseRenderer",name:"BaseRenderer",embedded:true,exported:true,typ:CK,tag:""}]);BY.init("",[{prop:"BaseRenderer",name:"BaseRenderer",embedded:true,exported:true,typ:CK,tag:""}]);CA.init("",[{prop:"BaseRenderer",name:"BaseRenderer",embedded:true,exported:true,typ:CK,tag:""},{prop:"NodeWriterStack",name:"NodeWriterStack",embedded:false,exported:true,typ:CT,tag:""}]);CG.init("",[{prop:"BaseRenderer",name:"BaseRenderer",embedded:true,exported:true,typ:CK,tag:""}]);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$pkg.NewlineSV=(new CI($stringToBytes("<span data-type=\"newline\"><br /><span style=\"display: none\">\n</span></span>")));X=$makeMap($String.keyFor,[{k:"flutter",v:"Flutter"},{k:"netty",v:"Netty"},{k:"jetty",v:"Jetty"},{k:"tomcat",v:"Tomcat"},{k:"jdbc",v:"JDBC"},{k:"mariadb",v:"MariaDB"},{k:"ipfs",v:"IPFS"},{k:"saas",v:"SaaS"},{k:"paas",v:"PaaS"},{k:"iaas",v:"IaaS"},{k:"ioc",v:"IoC"},{k:"freemarker",v:"FreeMarker"},{k:"ruby",v:"Ruby"},{k:"rails",v:"Rails"},{k:"mina",v:"Mina"},{k:"puppet",v:"Puppet"},{k:"vagrant",v:"Vagrant"},{k:"chef",v:"Chef"},{k:"beego",v:"Beego"},{k:"gin",v:"Gin"},{k:"iris",v:"Iris"},{k:"php",v:"PHP"},{k:"ssh",v:"SSH"},{k:"web",v:"Web"},{k:"websocket",v:"WebSocket"},{k:"api",v:"API"},{k:"css",v:"CSS"},{k:"html",v:"HTML"},{k:"json",v:"JSON"},{k:"jsonp",v:"JSONP"},{k:"xml",v:"XML"},{k:"yaml",v:"YAML"},{k:"csv",v:"CSV"},{k:"soap",v:"SOAP"},{k:"ajax",v:"AJAX"},{k:"messagepack",v:"MessagePack"},{k:"javascript",v:"JavaScript"},{k:"java",v:"Java"},{k:"jsp",v:"JSP"},{k:"restful",v:"RESTFul"},{k:"graphql",v:"GraphQL"},{k:"gorm",v:"GORM"},{k:"orm",v:"ORM"},{k:"oauth",v:"OAuth"},{k:"facebook",v:"Facebook"},{k:"github",v:"GitHub"},{k:"gist",v:"Gist"},{k:"heroku",v:"Heroku"},{k:"twitter",v:"Twitter"},{k:"youtube",v:"YouTube"},{k:"dynamodb",v:"DynamoDB"},{k:"mysql",v:"MySQL"},{k:"postgresql",v:"PostgreSQL"},{k:"sqlite",v:"SQLite"},{k:"memcached",v:"Memcached"},{k:"mongodb",v:"MongoDB"},{k:"redis",v:"Redis"},{k:"elasticsearch",v:"Elasticsearch"},{k:"solr",v:"Solr"},{k:"b3log",v:"B3log"},{k:"hacpai",v:"HacPai"},{k:"sphinx",v:"Sphinx"},{k:"linux",v:"Linux"},{k:"ubuntu",v:"Ubuntu"},{k:"centos",v:"CentOS"},{k:"centos7",v:"CentOS7"},{k:"redhat",v:"RedHat"},{k:"gitlab",v:"GitLab"},{k:"jquery",v:"jQuery"},{k:"angularjs",v:"AngularJS"},{k:"ffmpeg",v:"FFmpeg"},{k:"git",v:"Git"},{k:"svn",v:"SVN"},{k:"vim",v:"VIM"},{k:"emacs",v:"Emacs"},{k:"sublime",v:"Sublime"},{k:"virtualbox",v:"VirtualBox"},{k:"safari",v:"Safari"},{k:"chrome",v:"Chrome"},{k:"ie",v:"IE"},{k:"firefox",v:"Firefox"},{k:"iterm",v:"iTerm"},{k:"iterm2",v:"iTerm2"},{k:"iwork",v:"iWork"},{k:"itunes",v:"iTunes"},{k:"iphoto",v:"iPhoto"},{k:"ibook",v:"iBook"},{k:"imessage",v:"iMessage"},{k:"photoshop",v:"Photoshop"},{k:"excel",v:"Excel"},{k:"powerpoint",v:"PowerPoint"},{k:"ios",v:"iOS"},{k:"iphone",v:"iPhone"},{k:"ipad",v:"iPad"},{k:"android",v:"Android"},{k:"imac",v:"iMac"},{k:"macbook",v:"MacBook"},{k:"vps",v:"VPS"},{k:"vpn",v:"VPN"},{k:"cpu",v:"CPU"},{k:"spring",v:"Spring"},{k:"springboot",v:"SpringBoot"},{k:"springcloud",v:"SpringCloud"},{k:"springmvc",v:"SpringMVC"},{k:"mybatis",v:"MyBatis"},{k:"qq",v:"QQ"},{k:"sql",v:"SQL"},{k:"markdown",v:"Markdown"},{k:"jdk",v:"JDK"},{k:"openjdk",v:"OpenJDK"},{k:"cors",v:"CORS"},{k:"protobuf",v:"Protobuf"},{k:"google",v:"Google"},{k:"ibm",v:"IBM"},{k:"oracle",v:"Oracle"},{k:"typora",v:"Typora"}]);AC=$makeMap($String.keyFor,[{k:"frame",v:$ifaceNil},{k:"frameset",v:$ifaceNil},{k:"noembed",v:$ifaceNil},{k:"noframes",v:$ifaceNil},{k:"noscript",v:$ifaceNil},{k:"nostyle",v:$ifaceNil},{k:"object",v:$ifaceNil},{k:"script",v:$ifaceNil},{k:"style",v:$ifaceNil},{k:"title",v:$ifaceNil}]);AK=$makeMap($String.keyFor,[{k:"onafterprint",v:$ifaceNil},{k:"onbeforeprint",v:$ifaceNil},{k:"onbeforeunload",v:$ifaceNil},{k:"onerror",v:$ifaceNil},{k:"onhashchange",v:$ifaceNil},{k:"onload",v:$ifaceNil},{k:"onmessage",v:$ifaceNil},{k:"onoffline",v:$ifaceNil},{k:"ononline",v:$ifaceNil},{k:"onpagehide",v:$ifaceNil},{k:"onpageshow",v:$ifaceNil},{k:"onpopstate",v:$ifaceNil},{k:"onresize",v:$ifaceNil},{k:"onstorage",v:$ifaceNil},{k:"onunload",v:$ifaceNil},{k:"onblur",v:$ifaceNil},{k:"onchange",v:$ifaceNil},{k:"oncontextmenu",v:$ifaceNil},{k:"onfocus",v:$ifaceNil},{k:"oninput",v:$ifaceNil},{k:"oninvalid",v:$ifaceNil},{k:"onreset",v:$ifaceNil},{k:"onsearch",v:$ifaceNil},{k:"onselect",v:$ifaceNil},{k:"onsubmit",v:$ifaceNil},{k:"onkeydown",v:$ifaceNil},{k:"onkeypress",v:$ifaceNil},{k:"onkeyup",v:$ifaceNil},{k:"onclick",v:$ifaceNil},{k:"ondblclick",v:$ifaceNil},{k:"onmousedown",v:$ifaceNil},{k:"onmousemove",v:$ifaceNil},{k:"onmouseout",v:$ifaceNil},{k:"onmouseover",v:$ifaceNil},{k:"onmouseleave",v:$ifaceNil},{k:"onmouseenter",v:$ifaceNil},{k:"onmouseup",v:$ifaceNil},{k:"onmousewheel",v:$ifaceNil},{k:"onwheel",v:$ifaceNil},{k:"ondrag",v:$ifaceNil},{k:"ondragend",v:$ifaceNil},{k:"ondragenter",v:$ifaceNil},{k:"ondragleave",v:$ifaceNil},{k:"ondragover",v:$ifaceNil},{k:"ondragstart",v:$ifaceNil},{k:"ondrop",v:$ifaceNil},{k:"onscroll",v:$ifaceNil},{k:"oncopy",v:$ifaceNil},{k:"oncut",v:$ifaceNil},{k:"onpaste",v:$ifaceNil},{k:"onabort",v:$ifaceNil},{k:"oncanplay",v:$ifaceNil},{k:"oncanplaythrough",v:$ifaceNil},{k:"oncuechange",v:$ifaceNil},{k:"ondurationchange",v:$ifaceNil},{k:"onemptied",v:$ifaceNil},{k:"onended",v:$ifaceNil},{k:"onloadeddata",v:$ifaceNil},{k:"onloadedmetadata",v:$ifaceNil},{k:"onloadstart",v:$ifaceNil},{k:"onpause",v:$ifaceNil},{k:"onplay",v:$ifaceNil},{k:"onplaying",v:$ifaceNil},{k:"onprogress",v:$ifaceNil},{k:"onratechange",v:$ifaceNil},{k:"onseeked",v:$ifaceNil},{k:"onseeking",v:$ifaceNil},{k:"onstalled",v:$ifaceNil},{k:"onsuspend",v:$ifaceNil},{k:"ontimeupdate",v:$ifaceNil},{k:"onvolumechange",v:$ifaceNil},{k:"onwaiting",v:$ifaceNil},{k:"ontoggle",v:$ifaceNil},{k:"onbegin",v:$ifaceNil},{k:"onend",v:$ifaceNil},{k:"onrepeat",v:$ifaceNil},{k:"http-equiv",v:$ifaceNil},{k:"formaction",v:$ifaceNil}]);AZ=new CJ(["mermaid","echarts","abc","graphviz","mindmap","flowchart","plantuml"]);CF=new CJ(["jpg","png","gif","webp","cr2","tif","bmp","heif","jxr","psd","ico","dwg","mp4","m4v","mkv","webm","mov","avi","wmv","mpg","flv","3gp","mid","mp3","m4a","ogg","flac","wav","amr","aac","epub","zip","tar","rar","gz","bz2","7z","xz","pdf","exe","swf","rtf","iso","eot","ps","sqli","nes","crx","cab","deb","ar","Z","lz","rpm","elf","dcm","doc","docx","xls","xlsx","ppt","pptx","md","txt","woff","woff2","ttf","otf","wasm","exe","html","js","css","go","java","textbundle"]);CD=CF.$length;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["github.com/88250/lute"]=(function(){var $pkg={},$init,A,M,K,D,E,F,G,L,H,I,J,O,B,C,N,P,R,Z,AB,AC,AD,AE,AF,AG,AH,AI,AJ,AK,AL,AM,AN,AO,AP,AQ,AR,AS,AT,AU,AV,AW,AY,BA,BB,BC,BD,BE,BF,BG,BH,T,W,a,b,Q,S,AA;A=$packages["bytes"];M=$packages["errors"];K=$packages["fmt"];D=$packages["github.com/88250/lute/ast"];E=$packages["github.com/88250/lute/editor"];F=$packages["github.com/88250/lute/html"];G=$packages["github.com/88250/lute/html/atom"];L=$packages["github.com/88250/lute/lex"];H=$packages["github.com/88250/lute/parse"];I=$packages["github.com/88250/lute/render"];J=$packages["github.com/88250/lute/util"];O=$packages["github.com/gopherjs/gopherjs/js"];B=$packages["strconv"];C=$packages["strings"];N=$packages["sync"];P=$packages["unicode"];R=$pkg.Lute=$newType(0,$kindStruct,"lute.Lute",true,"github.com/88250/lute",true,function(ParseOptions_,RenderOptions_,HTML2MdRendererFuncs_,HTML2VditorDOMRendererFuncs_,HTML2VditorIRDOMRendererFuncs_,HTML2BlockDOMRendererFuncs_,HTML2VditorSVDOMRendererFuncs_,Md2HTMLRendererFuncs_,Md2VditorDOMRendererFuncs_,Md2VditorIRDOMRendererFuncs_,Md2BlockDOMRendererFuncs_,Md2VditorSVDOMRendererFuncs_){this.$val=this;if(arguments.length===0){this.ParseOptions=AO.nil;this.RenderOptions=AC.nil;this.HTML2MdRendererFuncs=false;this.HTML2VditorDOMRendererFuncs=false;this.HTML2VditorIRDOMRendererFuncs=false;this.HTML2BlockDOMRendererFuncs=false;this.HTML2VditorSVDOMRendererFuncs=false;this.Md2HTMLRendererFuncs=false;this.Md2VditorDOMRendererFuncs=false;this.Md2VditorIRDOMRendererFuncs=false;this.Md2BlockDOMRendererFuncs=false;this.Md2VditorSVDOMRendererFuncs=false;return;}this.ParseOptions=ParseOptions_;this.RenderOptions=RenderOptions_;this.HTML2MdRendererFuncs=HTML2MdRendererFuncs_;this.HTML2VditorDOMRendererFuncs=HTML2VditorDOMRendererFuncs_;this.HTML2VditorIRDOMRendererFuncs=HTML2VditorIRDOMRendererFuncs_;this.HTML2BlockDOMRendererFuncs=HTML2BlockDOMRendererFuncs_;this.HTML2VditorSVDOMRendererFuncs=HTML2VditorSVDOMRendererFuncs_;this.Md2HTMLRendererFuncs=Md2HTMLRendererFuncs_;this.Md2VditorDOMRendererFuncs=Md2VditorDOMRendererFuncs_;this.Md2VditorIRDOMRendererFuncs=Md2VditorIRDOMRendererFuncs_;this.Md2BlockDOMRendererFuncs=Md2BlockDOMRendererFuncs_;this.Md2VditorSVDOMRendererFuncs=Md2VditorSVDOMRendererFuncs_;});Z=$pkg.ParseOption=$newType(4,$kindFunc,"lute.ParseOption",true,"github.com/88250/lute",true,null);AB=$ptrType(H.Tree);AC=$ptrType(I.Options);AD=$sliceType($Uint8);AE=$ptrType(F.Node);AF=$ptrType(D.Node);AG=$ptrType(H.Context);AH=$ptrType(L.Lexer);AI=$ptrType(H.InlineContext);AJ=$sliceType($String);AK=$sliceType(AF);AL=$ptrType(D.ListData);AM=$sliceType($Int);AN=$sliceType(AJ);AO=$ptrType(H.Options);AP=$sliceType(AE);AQ=$ptrType(AP);AR=$ptrType(F.Attribute);AS=$sliceType(AR);AT=$sliceType(G.Atom);AU=$sliceType($emptyInterface);AV=$ptrType(R);AW=$sliceType(Z);AY=$ptrType(A.Buffer);BA=$mapType($String,$emptyInterface);BB=$sliceType(D.NodeType);BC=$sliceType($Int32);BD=$mapType($String,$String);BE=$ptrType(O.Object);BF=$mapType($String,BE);BG=$mapType($String,BF);BH=$mapType(D.NodeType,I.ExtRendererFunc);R.ptr.prototype.Md2HTML=function(c){var{c,d,e,f,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=e.MarkdownStr("",c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}d=f;$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.Md2HTML,$c:true,$r,c,d,e,f,$s};return $f;};R.prototype.Md2HTML=function(c){return this.$val.Md2HTML(c);};R.ptr.prototype.SpinVditorDOM=function(c){var{c,d,e,f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;c=C.ReplaceAll(c,"<wbr>","\xE2\x80\xB8");f=e.vditorDOM2Md(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=H.Parse("",(new AD($stringToBytes(g))),e.ParseOptions);$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;j=I.NewVditorRenderer(i,e.RenderOptions);$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;l=k.BaseRenderer.Render();$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;d=C.ReplaceAll(($bytesToString(m)),"\xE2\x80\xB8","<wbr>");$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.SpinVditorDOM,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,$s};return $f;};R.prototype.SpinVditorDOM=function(c){return this.$val.SpinVditorDOM(c);};R.ptr.prototype.HTML2VditorDOM=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;g=e.HTML2Markdown(c);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[0];i=f[1];if(!($interfaceIsEqual($ifaceNil,i))){$s=2;continue;}$s=3;continue;case 2:j=i.Error();$s=4;case 4:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}d=j;$s=-1;return d;case 3:k=H.Parse("",(new AD($stringToBytes(h))),e.ParseOptions);$s=5;case 5:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;m=I.NewVditorRenderer(l,e.RenderOptions);$s=6;case 6:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;o=e.HTML2VditorDOMRendererFuncs;p=0;q=o?o.keys():undefined;r=o?o.size:0;while(true){if(!(p<r)){break;}s=q.next().value;t=o.get(s);if(t===undefined){p++;continue;}u=t.k;v=t.v;w=u;(n.BaseRenderer.ExtRendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(D.NodeType.keyFor(w),{k:w,v:v});p++;}x=n.BaseRenderer.Render();$s=7;case 7:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}y=x;d=($bytesToString(y));$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.HTML2VditorDOM,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,$s};return $f;};R.prototype.HTML2VditorDOM=function(c){return this.$val.HTML2VditorDOM(c);};R.ptr.prototype.VditorDOM2HTML=function(c){var{c,d,e,f,g,h,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=e.vditorDOM2Md(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=e.Md2HTML(g);$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}d=h;$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.VditorDOM2HTML,$c:true,$r,c,d,e,f,g,h,$s};return $f;};R.prototype.VditorDOM2HTML=function(c){return this.$val.VditorDOM2HTML(c);};R.ptr.prototype.Md2VditorDOM=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=H.Parse("",(new AD($stringToBytes(c))),e.ParseOptions);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=I.NewVditorRenderer(g,e.RenderOptions);$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;j=e.Md2VditorDOMRendererFuncs;k=0;l=j?j.keys():undefined;m=j?j.size:0;while(true){if(!(k<m)){break;}n=l.next().value;o=j.get(n);if(o===undefined){k++;continue;}p=o.k;q=o.v;r=p;(i.BaseRenderer.ExtRendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(D.NodeType.keyFor(r),{k:r,v:q});k++;}s=i.BaseRenderer.Render();$s=3;case 3:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=s;d=($bytesToString(t));$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.Md2VditorDOM,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s};return $f;};R.prototype.Md2VditorDOM=function(c){return this.$val.Md2VditorDOM(c);};R.ptr.prototype.VditorDOM2Md=function(c){var{c,d,e,f,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;c=C.ReplaceAll(c,"\xE2\x80\x8B","");f=e.vditorDOM2Md(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}d=f;d=C.ReplaceAll(d,"\xE2\x80\x8B","");$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.VditorDOM2Md,$c:true,$r,c,d,e,f,$s};return $f;};R.prototype.VditorDOM2Md=function(c){return this.$val.VditorDOM2Md(c);};R.ptr.prototype.RenderEChartsJSON=function(c){var{c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=H.Parse("",(new AD($stringToBytes(c))),e.ParseOptions);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=I.NewEChartsJSONRenderer(g,e.RenderOptions);$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;j=i.Render();$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;d=($bytesToString(k));$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.RenderEChartsJSON,$c:true,$r,c,d,e,f,g,h,i,j,k,$s};return $f;};R.prototype.RenderEChartsJSON=function(c){return this.$val.RenderEChartsJSON(c);};R.ptr.prototype.RenderKityMinderJSON=function(c){var{c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=H.Parse("",(new AD($stringToBytes(c))),e.ParseOptions);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=I.NewKityMinderJSONRenderer(g,e.RenderOptions);$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;j=i.Render();$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;d=($bytesToString(k));$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.RenderKityMinderJSON,$c:true,$r,c,d,e,f,g,h,i,j,k,$s};return $f;};R.prototype.RenderKityMinderJSON=function(c){return this.$val.RenderKityMinderJSON(c);};R.ptr.prototype.HTML2Md=function(c){var{c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;g=e.HTML2Markdown(c);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;d=f[0];h=f[1];if(!($interfaceIsEqual($ifaceNil,h))){$s=2;continue;}$s=3;continue;case 2:i=h.Error();$s=4;case 4:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}d=i;$s=-1;return d;case 3:$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.HTML2Md,$c:true,$r,c,d,e,f,g,h,i,$s};return $f;};R.prototype.HTML2Md=function(c){return this.$val.HTML2Md(c);};R.ptr.prototype.vditorDOM2Md=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;c=C.ReplaceAll(c,"<wbr>","");c=C.ReplaceAll(c,"\t\n","\n");c=C.ReplaceAll(c," \n"," \n");f=e.parseHTML(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(AE.nil===g){$s=-1;return d;}$r=e.adjustVditorDOM(g);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=new H.Tree.ptr(new D.Node.ptr("","","","",0,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""),new H.Context.ptr(AB.nil,e.ParseOptions,AF.nil,AF.nil,AD.nil,0,0,0,0,0,0,false,false,false,false,AF.nil,AF.nil),AH.nil,AI.nil,"","","","","",AJ.nil,new $Int64(0,0),new $Int64(0,0),"");h.Context.Tip=h.Root;i=g.FirstChild;case 3:if(!(!(AE.nil===i))){$s=4;continue;}$r=e.genASTByVditorDOM(i,h);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=i.NextSibling;$s=3;continue;case 4:$r=D.Walk(h.Root,(function(j,k){var j,k,l,m;if(k){l=j.Type;if((l===(10))||(l===(27))||(l===(304))||(l===(9))||(l===(15))||(l===(302))){j.Tokens=F.UnescapeHTML(j.Tokens);if(!(AF.nil===j.Next)&&(27===j.Next.Type)&&(j.CodeMarkerLen===j.Next.CodeMarkerLen)){j.FirstChild.Next.Tokens=$appendSlice(j.FirstChild.Next.Tokens,j.Next.FirstChild.Next.Tokens);j.Next.Unlink();}}else if(l===(7)){if(!(AF.nil===j.Parent)&&(7===j.Parent.Type)){m=j.Previous;if(!(AF.nil===m)){m.AppendChild(j);}}}}return 2;}));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=I.NewOptions();j.AutoSpace=false;j.FixTermTypo=false;k=I.NewFormatRenderer(h,j);$s=7;case 7:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;m=l.BaseRenderer.Render();$s=8;case 8:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;d=($bytesToString(n));$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.vditorDOM2Md,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,$s};return $f;};R.prototype.vditorDOM2Md=function(c){return this.$val.vditorDOM2Md(c);};R.ptr.prototype.parseHTML=function(c){var{c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d=this;e=C.NewReader(c);g=F.Parse(e);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[0];i=f[1];if(!($interfaceIsEqual($ifaceNil,i))){$s=-1;return AE.nil;}if(!("html"===h.FirstChild.Data)){$s=-1;return h;}$s=-1;return h.FirstChild.LastChild;}return;}var $f={$blk:R.ptr.prototype.parseHTML,$c:true,$r,c,d,e,f,g,h,i,$s};return $f;};R.prototype.parseHTML=function(c){return this.$val.parseHTML(c);};R.ptr.prototype.adjustVditorDOM=function(c){var{c,d,e,f,g,h,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d=this;$r=d.removeEmptyNodes(c);$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=d.removeHighlightJSSpans(c);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=c.FirstChild;while(true){if(!(!(AE.nil===e))){break;}d.mergeVditorDOMList0(e);e=e.NextSibling;}f=c.FirstChild;while(true){if(!(!(AE.nil===f))){break;}d.adjustVditorDOMListTight0(f);f=f.NextSibling;}g=c.FirstChild;while(true){if(!(!(AE.nil===g))){break;}d.adjustVditorDOMListList(g);g=g.NextSibling;}h=c.FirstChild;case 3:if(!(!(AE.nil===h))){$s=4;continue;}$r=d.adjustVditorDOMListItemInP(h);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=h.NextSibling;$s=3;continue;case 4:$s=-1;return;}return;}var $f={$blk:R.ptr.prototype.adjustVditorDOM,$c:true,$r,c,d,e,f,g,h,$s};return $f;};R.prototype.adjustVditorDOM=function(c){return this.$val.adjustVditorDOM(c);};R.ptr.prototype.adjustVditorDOMListList=function(c){var c,d,e,f,g,h,i;d=this;if(!((42754===c.DataAtom))&&!((79618===c.DataAtom))&&!((45570===c.DataAtom))){return;}if(45570===c.DataAtom){if(!(AE.nil===c.FirstChild)&&(514===c.FirstChild.DataAtom)){c.FirstChild.DataAtom=0;c.FirstChild.Data="\xE2\x80\x8B";e=c.NextSibling;if(!(AE.nil===c.NextSibling)&&(45570===c.NextSibling.DataAtom)){f=e.FirstChild;if(!(AE.nil===f)&&"\xE2\x80\xB8\xE2\x80\x8B"===f.Data){f.Data="\xE2\x80\xB8\n";}}}}else{if(!(AE.nil===c.Parent)&&((42754===c.Parent.DataAtom)||(79618===c.Parent.DataAtom))){g=c.PrevSibling;if(!(AE.nil===g)){c.Unlink();g.AppendChild(c);}}}h=c.FirstChild;while(true){if(!(!(h===AE.nil))){break;}i=h.NextSibling;d.adjustVditorDOMListList(h);h=i;}};R.prototype.adjustVditorDOMListList=function(c){return this.$val.adjustVditorDOMListList(c);};R.ptr.prototype.removeHighlightJSSpans=function(c){var{c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d=[d];e=this;d[0]=AP.nil;f=c;case 1:if(!(!(AE.nil===f))){$s=2;continue;}$r=e.hljsSpans(f,(d.$ptr||(d.$ptr=new AQ(function(){return this.$target[0];},function($v){this.$target[0]=$v;},d))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=f.NextSibling;$s=1;continue;case 2:g=d[0];h=0;while(true){if(!(h<g.$length)){break;}i=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]);i.Unlink();h++;}$s=-1;return;}return;}var $f={$blk:R.ptr.prototype.removeHighlightJSSpans,$c:true,$r,c,d,e,f,g,h,i,$s};return $f;};R.prototype.removeHighlightJSSpans=function(c){return this.$val.removeHighlightJSSpans(c);};R.ptr.prototype.hljsSpans=function(c,d){var{c,d,e,f,g,h,$s,$r,$c}=$restore(this,{c,d});$s=$s||0;s:while(true){switch($s){case 0:e=this;if((40708===c.DataAtom)&&C.HasPrefix(J.DomAttrValue(c,"class"),"hljs-")){$s=1;continue;}$s=2;continue;case 1:d.$set($append(d.$get(),c));f=J.DomText(c);$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;c.InsertBefore(new F.Node.ptr(AE.nil,AE.nil,AE.nil,AE.nil,AE.nil,1,0,g,"",AS.nil));case 2:h=c.FirstChild;case 4:if(!(!(h===AE.nil))){$s=5;continue;}$r=e.hljsSpans(h,d);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=h.NextSibling;$s=4;continue;case 5:$s=-1;return;}return;}var $f={$blk:R.ptr.prototype.hljsSpans,$c:true,$r,c,d,e,f,g,h,$s};return $f;};R.prototype.hljsSpans=function(c,d){return this.$val.hljsSpans(c,d);};R.ptr.prototype.removeEmptyNodes=function(c){var{c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d=[d];e=this;d[0]=AP.nil;f=c;case 1:if(!(!(AE.nil===f))){$s=2;continue;}$r=e.searchEmptyNodes(f,(d.$ptr||(d.$ptr=new AQ(function(){return this.$target[0];},function($v){this.$target[0]=$v;},d))));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f=f.NextSibling;$s=1;continue;case 2:g=d[0];h=0;while(true){if(!(h<g.$length)){break;}i=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]);i.Unlink();h++;}$s=-1;return;}return;}var $f={$blk:R.ptr.prototype.removeEmptyNodes,$c:true,$r,c,d,e,f,g,h,i,$s};return $f;};R.prototype.removeEmptyNodes=function(c){return this.$val.removeEmptyNodes(c);};R.ptr.prototype.searchEmptyNodes=function(c,d){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{c,d});$s=$s||0;s:while(true){switch($s){case 0:e=this;f=c.DataAtom;if(f===(0)){$s=2;continue;}if(f===(40708)){$s=3;continue;}if((f===(449798))||(f===(257))||(f===(28162))||(f===(1537))||(f===(283139))||(f===(9473))||(f===(53766))||(f===(46596))){$s=4;continue;}if("katex"===J.DomAttrValue(c,"class")){$s=5;continue;}$s=6;continue;case 2:if(e.isInline(c.PrevSibling)||e.isInline(c.NextSibling)||e.isInline(c.Parent)){$s=1;continue;}if(1===c.Type){g=C.TrimLeft(c.Data," ");g=C.TrimRight(g," ");while(true){if(!(C.Contains(g,"\n\n"))){break;}g=C.ReplaceAll(g,"\n\n","");}if(""===g){d.$set($append(d.$get(),c));$s=-1;return;}}h=c.Parent;if(!(AE.nil===h)&&((79618===h.DataAtom)||(42754===h.DataAtom)||(45570===h.DataAtom))){$s=7;continue;}$s=8;continue;case 7:if(AE.nil===c.NextSibling||((1===c.NextSibling.Type)||(42754===c.NextSibling.DataAtom))){i=true;$s=11;continue s;}j=C.TrimSpace(c.Data);$s=12;case 12:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=""===j;case 11:if(i){$s=9;continue;}$s=10;continue;case 9:c.Data=C.TrimRight(c.Data,"\n\t ");case 10:case 8:if(!(AE.nil===h)&&((365829===h.DataAtom)||(208901===h.DataAtom)||(9989===h.DataAtom)||(52226===h.DataAtom))){$s=13;continue;}$s=14;continue;case 13:k=C.TrimSpace(c.Data);$s=15;case 15:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}c.Data=k;case 14:if(""===c.Data){d.$set($append(d.$get(),c));}if(4===c.Type){d.$set($append(d.$get(),c));}$s=6;continue;case 3:l=c.LastChild;if(!(AE.nil===l)&&(514===l.DataAtom)){c.InsertAfter(l);}if(J.IsTempMarkSpan(c)){d.$set($append(d.$get(),c));m=AP.nil;n=c.FirstChild;while(true){if(!(!(n===AE.nil))){break;}m=$append(m,n);n=n.NextSibling;}o=m;p=0;while(true){if(!(p<o.$length)){break;}q=((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]);c.InsertBefore(q);p++;}$s=-1;return;}$s=6;continue;case 4:if(!(AE.nil===c.FirstChild)){if(514===c.FirstChild.DataAtom){d.$set($append(d.$get(),c.FirstChild));c.InsertBefore(new F.Node.ptr(AE.nil,AE.nil,AE.nil,AE.nil,AE.nil,3,514,"br","",AS.nil));}if(1===c.FirstChild.Type){r=c.FirstChild.Data;s=e.prefixSpaces(r);if(!(""===s)){c.FirstChild.Data="\xE2\x80\x8B"+c.FirstChild.Data;}}}if(!(AE.nil===c.LastChild)){if(514===c.LastChild.DataAtom){d.$set($append(d.$get(),c.LastChild));c.InsertAfter(new F.Node.ptr(AE.nil,AE.nil,AE.nil,AE.nil,AE.nil,3,514,"br","",AS.nil));}if(1===c.LastChild.Type){t=c.LastChild.Data;u=e.suffixSpaces(t);if(!(""===u)){c.FirstChild.Data=c.FirstChild.Data+"\xE2\x80\x8B";}}}$s=6;continue;case 5:d.$set($append(d.$get(),c));case 6:case 1:v=c.FirstChild;case 16:if(!(!(v===AE.nil))){$s=17;continue;}$r=e.searchEmptyNodes(v,d);$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}v=v.NextSibling;$s=16;continue;case 17:w=c.DataAtom;if((w===(79618))||(w===(42754))){$s=20;continue;}$s=21;continue;case 20:x=J.DomAttrValue(c,"data-type");if("footnotes-defs-ol"===x){$s=-1;return;}if(!(AE.nil===c.FirstChild)&&!(AE.nil===c.FirstChild.FirstChild)&&!((281349===c.FirstChild.FirstChild.DataAtom))){$s=-1;return;}y=J.DomText(c);$s=22;case 22:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}z=y;if(""===z){d.$set($append(d.$get(),c));}case 21:case 19:$s=-1;return;}return;}var $f={$blk:R.ptr.prototype.searchEmptyNodes,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};R.prototype.searchEmptyNodes=function(c,d){return this.$val.searchEmptyNodes(c,d);};R.ptr.prototype.mergeVditorDOMList0=function(c){var c,d,e,f,g,h;d=this;e=c.DataAtom;if((e===(42754))||(e===(79618))){if(!(AE.nil===c.NextSibling)&&(c.DataAtom===c.NextSibling.DataAtom)&&(1===c.NextSibling.Attr.$length)){f=c.NextSibling.FirstChild;while(true){if(!(!(AE.nil===f))){break;}g=f.NextSibling;f.Unlink();c.AppendChild(f);f=g;}c.NextSibling.Unlink();}}h=c.FirstChild;while(true){if(!(!(h===AE.nil))){break;}d.mergeVditorDOMList0(h);h=h.NextSibling;}};R.prototype.mergeVditorDOMList0=function(c){return this.$val.mergeVditorDOMList0(c);};R.ptr.prototype.adjustVditorDOMListTight0=function(c){var c,d,e,f;d=this;e=c.DataAtom;if(e===(42754)){if(!d.parentIs(c,new AT([290819]))){d.setDOMAttrValue(c,"data-tight",d.isTightList(c));}}else if(e===(79618)){if(!d.parentIs(c,new AT([290819]))){d.setDOMAttrValue(c,"data-tight",d.isTightList(c));}}f=c.FirstChild;while(true){if(!(!(f===AE.nil))){break;}d.adjustVditorDOMListTight0(f);f=f.NextSibling;}};R.prototype.adjustVditorDOMListTight0=function(c){return this.$val.adjustVditorDOMListTight0(c);};R.ptr.prototype.adjustVditorDOMListItemInP=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d=this;e=c.DataAtom;if(e===(45570)){$s=2;continue;}$s=3;continue;case 2:if(!(AE.nil===c.PrevSibling)&&J.DomAttrValue(c.PrevSibling,"data-node-id")===J.DomAttrValue(c,"data-node-id")){$s=4;continue;}$s=5;continue;case 4:f=c;g=D.NewNodeID();$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$r=d.setDOMAttrValue(f,"data-node-id",h);$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 5:if(!(AE.nil===c.PrevSibling)&&!(AE.nil===c.FirstChild)){$s=8;continue;}$s=9;continue;case 8:i=J.DomAttrValue(c.FirstChild,"data-node-id");if(!(""===i)&&!(AE.nil===c.PrevSibling.LastChild)&&J.DomAttrValue(c.PrevSibling.LastChild,"data-node-id")===i){$s=10;continue;}$s=11;continue;case 10:j=c.FirstChild;k=D.NewNodeID();$s=12;case 12:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;$r=d.setDOMAttrValue(j,"data-node-id",l);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 11:case 9:m=c.FirstChild;while(true){if(!(!(AE.nil===m))){break;}if(d.listItemEnter(c)){n=new F.Node.ptr(AE.nil,AE.nil,AE.nil,AE.nil,AE.nil,3,3073,"p","",AS.nil);n.AppendChild(new F.Node.ptr(AE.nil,AE.nil,AE.nil,AE.nil,AE.nil,1,0,"\xE2\x80\xB8","",AS.nil));n.AppendChild(new F.Node.ptr(AE.nil,AE.nil,AE.nil,AE.nil,AE.nil,3,514,"br","",AS.nil));c.FirstChild.Unlink();c.FirstChild.Unlink();c.AppendChild(n);m=n;m=m.NextSibling;continue;}if(!((3073===m.DataAtom))&&!((100106===m.DataAtom))&&!((42754===m.DataAtom))&&!((79618===m.DataAtom))&&!((92931===m.DataAtom))){o=d.forwardNextBlock(m);p=o[0];q=o[1];r=new F.Node.ptr(AE.nil,AE.nil,AE.nil,AE.nil,AE.nil,3,3073,"p","",AS.nil);m.InsertBefore(r);s=p;t=0;while(true){if(!(t<s.$length)){break;}u=((t<0||t>=s.$length)?($throwRuntimeError("index out of range"),undefined):s.$array[s.$offset+t]);u.Unlink();r.AppendChild(u);t++;}m=q;if(AE.nil===m){break;}}m=m.NextSibling;}case 3:case 1:v=c.FirstChild;case 14:if(!(!(v===AE.nil))){$s=15;continue;}$r=d.adjustVditorDOMListItemInP(v);$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}v=v.NextSibling;$s=14;continue;case 15:$s=-1;return;}return;}var $f={$blk:R.ptr.prototype.adjustVditorDOMListItemInP,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,$s};return $f;};R.prototype.adjustVditorDOMListItemInP=function(c){return this.$val.adjustVditorDOMListItemInP(c);};R.ptr.prototype.forwardNextBlock=function(c){var c,d,e,f,g,h;d=AP.nil;e=AE.nil;f=this;g=c;while(true){if(!(!(AE.nil===g))){break;}h=g.DataAtom;if((h===(79618))||(h===(42754))||(h===(92931))||(h===(100106))){return[d,e];}d=$append(d,g);g=g.NextSibling;}return[d,e];};R.prototype.forwardNextBlock=function(c){return this.$val.forwardNextBlock(c);};R.ptr.prototype.listItemEnter=function(c){var c,d;d=this;if(AE.nil===c.FirstChild){return false;}if("\xE2\x80\xB8"===c.FirstChild.Data&&"br"===c.LastChild.Data){return true;}return false;};R.prototype.listItemEnter=function(c){return this.$val.listItemEnter(c);};R.ptr.prototype.isTightList=function(c){var c,d,e,f,g,h,i,j,k,l,m,n,o;d=this;e=c.FirstChild;while(true){if(!(!(AE.nil===e))){break;}f=0;g=0;h=0;i=0;j=f;k=g;l=h;m=i;n=e.FirstChild;while(true){if(!(!(AE.nil===n))){break;}o=n.DataAtom;if((o===(42754))||(o===(79618))){j=j+(1)>>0;}else if(o===(92931)){k=k+(1)>>0;}else if(o===(100106)){l=l+(1)>>0;}else if(o===(3073)){m=m+(1)>>0;}n=n.NextSibling;}if(1<m||1<l||1<k||1<j){return"false";}if(1<(m+k>>0)||1<(m+l>>0)||1<(m+j>>0)){return"false";}e=e.NextSibling;}return"true";};R.prototype.isTightList=function(c){return this.$val.isTightList(c);};R.ptr.prototype.genASTByVditorDOM=function(c,d){var{aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,d,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r,$c}=$restore(this,{c,d});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);e=this;f=J.DomAttrValue(c,"data-render");if("1"===f||"2"===f){$s=1;continue;}$s=2;continue;case 1:$s=3;case 3:return;case 2:g=J.DomAttrValue(c,"data-type");if(92931===c.DataAtom){$s=4;continue;}$s=5;continue;case 4:if("code-block"===g||"html-block"===g||"math-block"===g||"yaml-front-matter"===g){$s=6;continue;}if("link-ref-defs-block"===g){$s=7;continue;}if("footnotes-block"===g){$s=8;continue;}if("toc-block"===g){$s=9;continue;}$s=10;continue;case 6:h=c.FirstChild;case 11:if(!(!(h===AE.nil))){$s=12;continue;}$r=e.genASTByVditorDOM(h,d);$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=h.NextSibling;$s=11;continue;case 12:$s=10;continue;case 7:i=J.DomText(c);$s=14;case 14:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;k=new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(j))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");d.Context.Tip.AppendChild(k);$s=10;continue;case 8:l=c.FirstChild;if(!((79618===l.DataAtom))){$s=15;continue;}$s=16;continue;case 15:$s=17;case 17:return;case 16:m=l.FirstChild;case 18:if(!(!(AE.nil===m))){$s=19;continue;}if("\n"===m.Data){m=m.NextSibling;$s=18;continue;}n=new A.Buffer.ptr(AD.nil,0,0);o=F.Render(n,m);$s=20;case 20:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}p=o;if($interfaceIsEqual($ifaceNil,p)){$s=21;continue;}$s=22;continue;case 21:q=e.vditorDOM2Md("<ol data-type=\"footnotes-defs-ol\">"+n.String()+"</ol>");$s=24;case 24:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;s=J.DomAttrValue(m,"data-marker");r=$substring(r,3);t=C.Split(r,"\n");r="";u=t;v=0;while(true){if(!(v<u.$length)){break;}w=v;x=((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]);if(0<w){r=r+(" "+x);}else{r=x;}r=r+("\n");v++;}r="["+s+"]: "+r;y=new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(r))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");d.Context.Tip.AppendChild(y);$s=23;continue;case 22:$panic(p);case 23:m=m.NextSibling;$s=18;continue;case 19:$s=10;continue;case 9:z=new D.Node.ptr("","","","",415,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");d.Context.Tip.AppendChild(z);case 10:$s=25;case 25:return;case 5:aa=J.DomAttrValue(c,"class");ab=C.ReplaceAll(c.Data,"\xE2\x80\x8B","");ac=new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(ab))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");ad=c.DataAtom;if(ad===(0)){$s=27;continue;}if((ad===(3073))||(ad===(92931))){$s=28;continue;}if((ad===(89090))||(ad===(187906))||(ad===(199938))||(ad===(214274))||(ad===(216834))||(ad===(412930))){$s=29;continue;}if(ad===(87810)){$s=30;continue;}if(ad===(100106)){$s=31;continue;}if((ad===(79618))||(ad===(42754))){$s=32;continue;}if(ad===(45570)){$s=33;continue;}if(ad===(290819)){$s=34;continue;}if((ad===(28162))||(ad===(1537))){$s=35;continue;}if((ad===(449798))||(ad===(257))){$s=36;continue;}if((ad===(283139))||(ad===(9473))||(ad===(53766))){$s=37;continue;}if(ad===(46596)){$s=38;continue;}if(ad===(378116)){$s=39;continue;}if(ad===(514)){$s=40;continue;}if(ad===(1)){$s=41;continue;}if(ad===(198403)){$s=42;continue;}if(ad===(281349)){$s=43;continue;}if(ad===(365829)){$s=44;continue;}if(ad===(208901)){$s=45;continue;}if(ad===(9989)){$s=46;continue;}if(ad===(52226)){$s=47;continue;}if((ad===(87554))||(ad===(37378))){$s=48;continue;}if(ad===(461571)){$s=49;continue;}if(ad===(40708)){$s=50;continue;}if(ad===(16132)){$s=51;continue;}if(ad===(29191)){$s=52;continue;}if(ad===(47363)){$s=53;continue;}if(ad===(459783)){$s=54;continue;}$s=55;continue;case 27:if(""===ab){$s=57;continue;}$s=58;continue;case 57:$s=59;case 59:return;case 58:ae=C.ReplaceAll(ab,"\xE2\x80\xB8","");ae=C.ReplaceAll(ae,"\t"," ");if((!e.isInline(c.PrevSibling))&&C.HasPrefix(ae," ")){$s=60;continue;}$s=61;continue;case 60:ac.Type=11;ac.IsFencedCodeBlock=true;ac.AppendChild(new D.Node.ptr("","","","",12,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("```"))),"","",false,false,false,0,false,0,3,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ac.AppendChild(new D.Node.ptr("","","","",14,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));af=C.HasPrefix(ab,"\xE2\x80\xB8");if(af){ab=C.ReplaceAll(ab,"\xE2\x80\xB8","");}ag=C.TrimSpace(ab);$s=62;case 62:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ab=ag;if(af){ab="\xE2\x80\xB8"+ab;}ah=new D.Node.ptr("","","","",15,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(ab))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");ac.AppendChild(ah);ac.AppendChild(new D.Node.ptr("","","","",13,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("```"))),"","",false,false,false,0,false,0,3,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(ac);$s=63;case 63:return;case 61:if(!(AE.nil===c.Parent)&&(1===c.Parent.DataAtom)){ac.Type=40;}d.Context.Tip.AppendChild(ac);$s=56;continue;case 28:ac.Type=1;d.Context.Tip.AppendChild(ac);d.Context.Tip=ac;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=56;continue;case 29:ai=J.DomText(c);$s=66;case 66:if($c){$c=false;ai=ai.$blk();}if(ai&&ai.$blk!==undefined){break s;}aj=C.TrimSpace(ai);$s=67;case 67:if($c){$c=false;aj=aj.$blk();}if(aj&&aj.$blk!==undefined){break s;}if(""===aj){$s=64;continue;}$s=65;continue;case 64:$s=68;case 68:return;case 65:ac.Type=2;ac.HeadingLevel=((((ak=ac.Tokens,(1>=ak.$length?($throwRuntimeError("index out of range"),undefined):ak.$array[ak.$offset+1]))-48<<24>>>24)>>0));al=J.DomAttrValue(c,"data-marker");am=J.DomAttrValue(c,"data-id");if(!(""===am)){c.LastChild.InsertAfter(new F.Node.ptr(AE.nil,AE.nil,AE.nil,AE.nil,AE.nil,1,0," {"+am+"}","",AS.nil));}ac.HeadingSetext="="===al||"-"===al;if(!ac.HeadingSetext){an=new D.Node.ptr("","","","",3,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");an.Tokens=(new AD($stringToBytes(C.Repeat("#",ac.HeadingLevel))));ac.AppendChild(an);}d.Context.Tip.AppendChild(ac);d.Context.Tip=ac;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=56;continue;case 30:ac.Type=4;d.Context.Tip.AppendChild(ac);$s=56;continue;case 31:ao=J.DomText(c);$s=69;case 69:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ap=C.TrimSpace(ao);$s=70;case 70:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap;if(""===aq||">"===aq||"\xE2\x80\xB8"===aq){$s=71;continue;}$s=72;continue;case 71:$s=73;case 73:return;case 72:ac.Type=5;ac.AppendChild(new D.Node.ptr("","","","",6,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(">"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(ac);d.Context.Tip=ac;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=56;continue;case 32:if(AE.nil===c.FirstChild){$s=74;continue;}$s=75;continue;case 74:$s=76;case 76:return;case 75:ac.Type=7;ac.ListData=new D.ListData.ptr(0,false,0,0,0,0,0,false,AD.nil,0);if(79618===c.DataAtom){ac.ListData.Typ=1;}ar=J.DomAttrValue(c,"data-tight");if("true"===ar||""===ar){ac.ListData.Tight=true;}d.Context.Tip.AppendChild(ac);d.Context.Tip=ac;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=56;continue;case 33:ac.Type=8;as=J.DomAttrValue(c,"data-marker");at=0;if(""===as){if(!(AE.nil===c.Parent)&&(79618===c.Parent.DataAtom)){au=J.DomAttrValue(c.Parent.FirstChild,"data-marker");av=J.DomAttrValue(c.Parent,"start");if(""===av){as="1";}else{as=av;}if(!(""===au)){as=as+($substring(au,(au.length-1>>0)));}else{as=as+(".");}}else{as=J.DomAttrValue(c.Parent,"data-marker");if(""===as){as="*";}at=as.charCodeAt(0);}}else{if(!(AE.nil===c.Parent)){if(79618===c.Parent.DataAtom){if("*"===as||"-"===as||"+"===as){as="1.";}if(!("1."===as)&&!("1)"===as)&&!(AE.nil===c.PrevSibling)&&!((45570===c.PrevSibling.DataAtom))&&!(AE.nil===c.Parent.Parent)&&((79618===c.Parent.Parent.DataAtom)||(42754===c.Parent.Parent.DataAtom))){as="1.";}if(!("1."===as)&&!("1)"===as)&&(79618===c.Parent.DataAtom)&&c.Parent.FirstChild===c&&""===J.DomAttrValue(c.Parent,"start")){as="1.";}}else{if(!("*"===as)&&!("-"===as)&&!("+"===as)){as="*";}at=as.charCodeAt(0);}}else{as=J.DomAttrValue(c,"data-marker");if(""===as){as="*";}at=as.charCodeAt(0);}}ac.ListData=new D.ListData.ptr(0,false,at,0,0,0,0,false,(new AD($stringToBytes(as))),0);if(0===at){aw=B.Atoi(($encodeRune(as.charCodeAt(0))));ac.ListData.Num=aw[0];ac.ListData.Delimiter=as.charCodeAt((as.length-1>>0));}d.Context.Tip.AppendChild(ac);d.Context.Tip=ac;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=56;continue;case 34:if(378116===c.FirstChild.DataAtom){ax=J.DomAttrValue(c.Parent,"data-marker");if(""===ax){ax="```";}ay=AD.nil;if(!(AE.nil===c.FirstChild.FirstChild)){ay=(new AD($stringToBytes(c.FirstChild.FirstChild.Data)));}az=J.DomAttrValue(c.Parent,"data-type");ba=az;if(ba===("math-block")){ac.Type=300;ac.AppendChild(new D.Node.ptr("","","","",301,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ac.AppendChild(new D.Node.ptr("","","","",302,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,ay,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ac.AppendChild(new D.Node.ptr("","","","",303,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(ac);}else if(ba===("yaml-front-matter")){ac.Type=425;ac.AppendChild(new D.Node.ptr("","","","",426,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ac.AppendChild(new D.Node.ptr("","","","",427,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,ay,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ac.AppendChild(new D.Node.ptr("","","","",428,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(ac);}else if(ba===("html-block")){ac.Type=9;ac.Tokens=ay;d.Context.Tip.AppendChild(ac);}else{ac.Type=11;ac.IsFencedCodeBlock=true;ac.AppendChild(new D.Node.ptr("","","","",12,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(ax))),"","",false,false,false,0,false,0,ax.length,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ac.AppendChild(new D.Node.ptr("","","","",14,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));bb=J.DomAttrValue(c.FirstChild,"class");if(C.Contains(bb,"language-")){bc=$substring(bb,9);ac.LastChild.CodeBlockInfo=(new AD($stringToBytes(bc)));}bd=new D.Node.ptr("","","","",15,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,ay,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");ac.AppendChild(bd);ac.AppendChild(new D.Node.ptr("","","","",13,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(ax))),"","",false,false,false,0,false,0,ax.length,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(ac);}}$s=77;case 77:return;case 35:if(AE.nil===c.FirstChild||(514===c.FirstChild.DataAtom)){$s=78;continue;}$s=79;continue;case 78:$s=80;case 80:return;case 79:if(e.startsWithNewline(c.FirstChild)){c.FirstChild.Data=C.TrimLeft(c.FirstChild.Data,"\xE2\x80\x8B\n");d.Context.Tip.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("\xE2\x80\x8B\n"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}be=J.DomText(c);$s=81;case 81:if($c){$c=false;be=be.$blk();}if(be&&be.$blk!==undefined){break s;}bf=C.TrimSpace(be);$s=82;case 82:if($c){$c=false;bf=bf.$blk();}if(bf&&bf.$blk!==undefined){break s;}bg=bf;bh=e.isEmptyText(c);$s=85;case 85:if($c){$c=false;bh=bh.$blk();}if(bh&&bh.$blk!==undefined){break s;}if(bh){$s=83;continue;}$s=84;continue;case 83:$s=86;case 86:return;case 84:if("\xE2\x80\xB8"===bg){$s=87;continue;}$s=88;continue;case 87:ac.Tokens=E.CaretTokens;d.Context.Tip.AppendChild(ac);$s=89;case 89:return;case 88:ac.Type=17;bi=J.DomAttrValue(c,"data-marker");if(""===bi){bi="*";}if("_"===bi){ac.AppendChild(new D.Node.ptr("","","","",20,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(bi))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else{ac.AppendChild(new D.Node.ptr("","","","",18,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(bi))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}d.Context.Tip.AppendChild(ac);if(!(AE.nil===c.FirstChild)&&"\xE2\x80\xB8"===c.FirstChild.Data&&!(AE.nil===c.LastChild)&&"br"===c.LastChild.Data){$s=90;continue;}$s=91;continue;case 90:ac.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,E.CaretTokens,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));if("_"===bi){ac.AppendChild(new D.Node.ptr("","","","",21,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(bi))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else{ac.AppendChild(new D.Node.ptr("","","","",19,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(bi))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}$s=92;case 92:return;case 91:c.FirstChild.Data=C.ReplaceAll(c.FirstChild.Data,"\xE2\x80\x8B","");if(C.HasPrefix(c.FirstChild.Data," ")&&AE.nil===c.FirstChild.PrevSibling){c.FirstChild.Data=C.TrimLeft(c.FirstChild.Data," ");ac.InsertBefore(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(" "))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}if(C.HasSuffix(c.FirstChild.Data," ")&&AE.nil===c.FirstChild.NextSibling){c.FirstChild.Data=C.TrimRight(c.FirstChild.Data," ");c.InsertAfter(new F.Node.ptr(AE.nil,AE.nil,AE.nil,AE.nil,AE.nil,1,0," ","",AS.nil));}if(C.HasSuffix(c.FirstChild.Data,"\n")&&AE.nil===c.FirstChild.NextSibling){c.FirstChild.Data=C.TrimRight(c.FirstChild.Data,"\n");c.InsertAfter(new F.Node.ptr(AE.nil,AE.nil,AE.nil,AE.nil,AE.nil,1,0,"\n","",AS.nil));}d.Context.Tip=ac;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=56;continue;case 36:if(AE.nil===c.FirstChild||(514===c.FirstChild.DataAtom)){$s=93;continue;}$s=94;continue;case 93:$s=95;case 95:return;case 94:if(e.startsWithNewline(c.FirstChild)){c.FirstChild.Data=C.TrimLeft(c.FirstChild.Data,"\xE2\x80\x8B\n");d.Context.Tip.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("\xE2\x80\x8B\n"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}bj=J.DomText(c);$s=96;case 96:if($c){$c=false;bj=bj.$blk();}if(bj&&bj.$blk!==undefined){break s;}bk=C.TrimSpace(bj);$s=97;case 97:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bl=bk;bm=e.isEmptyText(c);$s=100;case 100:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}if(bm){$s=98;continue;}$s=99;continue;case 98:$s=101;case 101:return;case 99:if("\xE2\x80\xB8"===bl){$s=102;continue;}$s=103;continue;case 102:ac.Tokens=E.CaretTokens;d.Context.Tip.AppendChild(ac);$s=104;case 104:return;case 103:ac.Type=22;bn=J.DomAttrValue(c,"data-marker");if(""===bn){bn="**";}if("__"===bn){ac.AppendChild(new D.Node.ptr("","","","",25,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(bn))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else{ac.AppendChild(new D.Node.ptr("","","","",23,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(bn))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}d.Context.Tip.AppendChild(ac);if(!(AE.nil===c.FirstChild)&&"\xE2\x80\xB8"===c.FirstChild.Data&&!(AE.nil===c.LastChild)&&"br"===c.LastChild.Data){$s=105;continue;}$s=106;continue;case 105:ac.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,E.CaretTokens,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));if("__"===bn){ac.AppendChild(new D.Node.ptr("","","","",26,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(bn))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else{ac.AppendChild(new D.Node.ptr("","","","",24,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(bn))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}$s=107;case 107:return;case 106:c.FirstChild.Data=C.ReplaceAll(c.FirstChild.Data,"\xE2\x80\x8B","");if(C.HasPrefix(c.FirstChild.Data," ")&&AE.nil===c.FirstChild.PrevSibling){c.FirstChild.Data=C.TrimLeft(c.FirstChild.Data," ");ac.InsertBefore(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(" "))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}if(C.HasSuffix(c.FirstChild.Data," ")&&AE.nil===c.FirstChild.NextSibling){c.FirstChild.Data=C.TrimRight(c.FirstChild.Data," ");c.InsertAfter(new F.Node.ptr(AE.nil,AE.nil,AE.nil,AE.nil,AE.nil,1,0," ","",AS.nil));}if(C.HasSuffix(c.FirstChild.Data,"\n")&&AE.nil===c.FirstChild.NextSibling){c.FirstChild.Data=C.TrimRight(c.FirstChild.Data,"\n");c.InsertAfter(new F.Node.ptr(AE.nil,AE.nil,AE.nil,AE.nil,AE.nil,1,0,"\n","",AS.nil));}d.Context.Tip=ac;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=56;continue;case 37:if(AE.nil===c.FirstChild||(514===c.FirstChild.DataAtom)){$s=108;continue;}$s=109;continue;case 108:$s=110;case 110:return;case 109:if(e.startsWithNewline(c.FirstChild)){c.FirstChild.Data=C.TrimLeft(c.FirstChild.Data,"\xE2\x80\x8B\n");d.Context.Tip.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("\xE2\x80\x8B\n"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}bo=J.DomText(c);$s=111;case 111:if($c){$c=false;bo=bo.$blk();}if(bo&&bo.$blk!==undefined){break s;}bp=C.TrimSpace(bo);$s=112;case 112:if($c){$c=false;bp=bp.$blk();}if(bp&&bp.$blk!==undefined){break s;}bq=bp;br=e.isEmptyText(c);$s=115;case 115:if($c){$c=false;br=br.$blk();}if(br&&br.$blk!==undefined){break s;}if(br){$s=113;continue;}$s=114;continue;case 113:$s=116;case 116:return;case 114:if("\xE2\x80\xB8"===bq){$s=117;continue;}$s=118;continue;case 117:ac.Tokens=E.CaretTokens;d.Context.Tip.AppendChild(ac);$s=119;case 119:return;case 118:ac.Type=101;bs=J.DomAttrValue(c,"data-marker");if("~"===bs){ac.AppendChild(new D.Node.ptr("","","","",102,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(bs))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else{ac.AppendChild(new D.Node.ptr("","","","",104,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(bs))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}d.Context.Tip.AppendChild(ac);if(!(AE.nil===c.FirstChild)&&"\xE2\x80\xB8"===c.FirstChild.Data&&!(AE.nil===c.LastChild)&&"br"===c.LastChild.Data){$s=120;continue;}$s=121;continue;case 120:ac.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,E.CaretTokens,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));if("~"===bs){ac.AppendChild(new D.Node.ptr("","","","",103,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(bs))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else{ac.AppendChild(new D.Node.ptr("","","","",105,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(bs))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}$s=122;case 122:return;case 121:c.FirstChild.Data=C.ReplaceAll(c.FirstChild.Data,"\xE2\x80\x8B","");if(C.HasPrefix(c.FirstChild.Data," ")&&AE.nil===c.FirstChild.PrevSibling){c.FirstChild.Data=C.TrimLeft(c.FirstChild.Data," ");ac.InsertBefore(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(" "))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}if(C.HasSuffix(c.FirstChild.Data," ")&&AE.nil===c.FirstChild.NextSibling){c.FirstChild.Data=C.TrimRight(c.FirstChild.Data," ");c.InsertAfter(new F.Node.ptr(AE.nil,AE.nil,AE.nil,AE.nil,AE.nil,1,0," ","",AS.nil));}if(C.HasSuffix(c.FirstChild.Data,"\n")&&AE.nil===c.FirstChild.NextSibling){c.FirstChild.Data=C.TrimRight(c.FirstChild.Data,"\n");c.InsertAfter(new F.Node.ptr(AE.nil,AE.nil,AE.nil,AE.nil,AE.nil,1,0,"\n","",AS.nil));}d.Context.Tip=ac;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=56;continue;case 38:if(AE.nil===c.FirstChild||(514===c.FirstChild.DataAtom)){$s=123;continue;}$s=124;continue;case 123:$s=125;case 125:return;case 124:if(e.startsWithNewline(c.FirstChild)){c.FirstChild.Data=C.TrimLeft(c.FirstChild.Data,"\xE2\x80\x8B\n");d.Context.Tip.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("\xE2\x80\x8B\n"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}bt=J.DomText(c);$s=126;case 126:if($c){$c=false;bt=bt.$blk();}if(bt&&bt.$blk!==undefined){break s;}bu=C.TrimSpace(bt);$s=127;case 127:if($c){$c=false;bu=bu.$blk();}if(bu&&bu.$blk!==undefined){break s;}bv=bu;bw=e.isEmptyText(c);$s=130;case 130:if($c){$c=false;bw=bw.$blk();}if(bw&&bw.$blk!==undefined){break s;}if(bw){$s=128;continue;}$s=129;continue;case 128:$s=131;case 131:return;case 129:if("\xE2\x80\xB8"===bv){$s=132;continue;}$s=133;continue;case 132:ac.Tokens=E.CaretTokens;d.Context.Tip.AppendChild(ac);$s=134;case 134:return;case 133:ac.Type=450;bx=J.DomAttrValue(c,"data-marker");if("="===bx){ac.AppendChild(new D.Node.ptr("","","","",451,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(bx))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else{ac.AppendChild(new D.Node.ptr("","","","",453,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(bx))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}d.Context.Tip.AppendChild(ac);if(!(AE.nil===c.FirstChild)&&"\xE2\x80\xB8"===c.FirstChild.Data&&!(AE.nil===c.LastChild)&&"br"===c.LastChild.Data){$s=135;continue;}$s=136;continue;case 135:ac.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,E.CaretTokens,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));if("="===bx){ac.AppendChild(new D.Node.ptr("","","","",452,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(bx))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else{ac.AppendChild(new D.Node.ptr("","","","",454,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(bx))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}$s=137;case 137:return;case 136:c.FirstChild.Data=C.ReplaceAll(c.FirstChild.Data,"\xE2\x80\x8B","");if(C.HasPrefix(c.FirstChild.Data," ")&&AE.nil===c.FirstChild.PrevSibling){c.FirstChild.Data=C.TrimLeft(c.FirstChild.Data," ");ac.InsertBefore(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(" "))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}if(C.HasSuffix(c.FirstChild.Data," ")&&AE.nil===c.FirstChild.NextSibling){c.FirstChild.Data=C.TrimRight(c.FirstChild.Data," ");c.InsertAfter(new F.Node.ptr(AE.nil,AE.nil,AE.nil,AE.nil,AE.nil,1,0," ","",AS.nil));}if(C.HasSuffix(c.FirstChild.Data,"\n")&&AE.nil===c.FirstChild.NextSibling){c.FirstChild.Data=C.TrimRight(c.FirstChild.Data,"\n");c.InsertAfter(new F.Node.ptr(AE.nil,AE.nil,AE.nil,AE.nil,AE.nil,1,0,"\n","",AS.nil));}d.Context.Tip=ac;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=56;continue;case 39:if(AE.nil===c.FirstChild){$s=138;continue;}$s=139;continue;case 138:$s=140;case 140:return;case 139:by=C.ReplaceAll(c.FirstChild.Data,"\xE2\x80\x8B","");if("\xE2\x80\xB8"===by){$s=141;continue;}$s=142;continue;case 141:ac.Tokens=E.CaretTokens;d.Context.Tip.AppendChild(ac);$s=143;case 143:return;case 142:if(""===by){$s=144;continue;}$s=145;continue;case 144:$s=146;case 146:return;case 145:bz=(new AD($stringToBytes(by)));if("html-inline"===g){$s=147;continue;}$s=148;continue;case 147:ac.Type=10;ac.Tokens=bz;d.Context.Tip.AppendChild(ac);$s=149;case 149:return;case 148:ca=J.DomAttrValue(c,"data-marker");if(""===ca){ca="`";}if(A.HasPrefix(bz,(new AD($stringToBytes("`"))))){bz=$appendSlice((new AD($stringToBytes(" "))),bz);bz=$append(bz,32);}ac.Type=27;ac.CodeMarkerLen=ca.length;ac.AppendChild(new D.Node.ptr("","","","",28,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ac.AppendChild(new D.Node.ptr("","","","",29,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,bz,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ac.AppendChild(new D.Node.ptr("","","","",30,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(ac);$s=150;case 150:return;case 40:if(!(AE.nil===c.Parent)){$s=151;continue;}$s=152;continue;case 151:if(e.parentIs(c,new AT([37378,87554]))){$s=153;continue;}$s=154;continue;case 153:if((AE.nil===c.PrevSibling||"\xE2\x80\xB8"===c.PrevSibling.Data)&&(AE.nil===c.NextSibling||"\xE2\x80\xB8"===c.NextSibling.Data)){$s=155;continue;}$s=156;continue;case 155:$s=157;case 157:return;case 156:if(AE.nil===c.NextSibling){$s=158;continue;}$s=159;continue;case 158:$s=160;case 160:return;case 159:ac.Type=10;ac.Tokens=(new AD($stringToBytes("<br />")));d.Context.Tip.AppendChild(ac);$s=161;case 161:return;case 154:if(3073===c.Parent.DataAtom){$s=162;continue;}$s=163;continue;case 162:if(!(AE.nil===c.Parent.NextSibling)&&((42754===c.Parent.NextSibling.DataAtom)||(79618===c.Parent.NextSibling.DataAtom)||(100106===c.Parent.NextSibling.DataAtom))){$s=164;continue;}$s=165;continue;case 164:d.Context.Tip.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("\xE2\x80\x8B"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));$s=166;case 166:return;case 165:if(!(AE.nil===c.Parent.Parent)&&!(AE.nil===c.Parent.Parent.NextSibling)&&(45570===c.Parent.Parent.NextSibling.DataAtom)){$s=167;continue;}$s=168;continue;case 167:d.Context.Tip.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("\xE2\x80\x8B"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));$s=169;case 169:return;case 168:case 163:case 152:ac.Type=31;d.Context.Tip.AppendChild(ac);d.Context.Tip=ac;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=56;continue;case 41:if(c.FirstChild===AE.nil||(c.FirstChild.Type===1)){$s=170;continue;}$s=171;continue;case 170:cb=J.DomText(c);$s=172;case 172:if($c){$c=false;cb=cb.$blk();}if(cb&&cb.$blk!==undefined){break s;}cc=cb;if(""===cc||"\xE2\x80\x8B"===cc){$s=173;continue;}$s=174;continue;case 173:$s=175;case 175:return;case 174:case 171:ac.Type=33;ac.AppendChild(new D.Node.ptr("","","","",36,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(ac);d.Context.Tip=ac;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=56;continue;case 42:cd=aa;ce=J.DomAttrValue(c,"alt");if("emoji"===cd){$s=176;continue;}$s=177;continue;case 176:ac.Type=200;cf=new D.Node.ptr("","","","",202,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,d.EmojiImgTokens(ce,J.DomAttrValue(c,"src")),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");cf.AppendChild(new D.Node.ptr("","","","",203,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(":"+ce+":"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ac.AppendChild(cf);$s=178;continue;case 177:if("link-ref"===g){$s=179;continue;}$s=180;continue;case 179:ac.Type=16;cg="!["+J.DomAttrValue(c,"alt")+"]["+J.DomAttrValue(c,"data-link-label")+"]";ac.Tokens=(new AD($stringToBytes(cg)));d.Context.Tip.AppendChild(ac);$s=181;case 181:return;case 180:ac.Type=34;ac.AppendChild(new D.Node.ptr("","","","",35,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ac.AppendChild(new D.Node.ptr("","","","",36,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));if(!(""===ce)){ac.AppendChild(new D.Node.ptr("","","","",40,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(ce))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}ac.AppendChild(new D.Node.ptr("","","","",37,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ac.AppendChild(new D.Node.ptr("","","","",38,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ch=J.DomAttrValue(c,"src");if(!(""===e.RenderOptions.LinkBase)){ch=C.ReplaceAll(ch,e.RenderOptions.LinkBase,"");}if(!(""===e.RenderOptions.LinkPrefix)){ch=C.ReplaceAll(ch,e.RenderOptions.LinkPrefix,"");}ac.AppendChild(new D.Node.ptr("","","","",41,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(ch))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ci=J.DomAttrValue(c,"title");if(!(""===ci)){ac.AppendChild(new D.Node.ptr("","","","",43,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ac.AppendChild(new D.Node.ptr("","","","",42,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(ci))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}ac.AppendChild(new D.Node.ptr("","","","",39,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));case 178:d.Context.Tip.AppendChild(ac);d.Context.Tip=ac;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=56;continue;case 43:if(AE.nil===c.Parent||AE.nil===c.Parent.Parent||(!((3073===c.Parent.DataAtom))&&!((45570===c.Parent.DataAtom)))){$s=182;continue;}$s=183;continue;case 182:$s=184;case 184:return;case 183:if(!(AE.nil===c.NextSibling)&&(40708===c.NextSibling.DataAtom)){$s=185;continue;}$s=186;continue;case 185:cj=C.TrimSpace(c.NextSibling.FirstChild.Data);$s=187;case 187:if($c){$c=false;cj=cj.$blk();}if(cj&&cj.$blk!==undefined){break s;}c.NextSibling.FirstChild.Data=cj;$s=26;continue;case 186:ac.Type=100;ac.TaskListItemChecked=e.hasAttr(c,"checked");d.Context.Tip.AppendChild(ac);if(!(AF.nil===ac.Parent.Parent)&&!(AL.nil===ac.Parent.Parent.ListData)){ac.Parent.Parent.ListData.Typ=3;}if(!(AF.nil===ac.Parent.Parent.Parent)&&!(AL.nil===ac.Parent.Parent.Parent.ListData)){ac.Parent.Parent.Parent.ListData.Typ=3;}$s=56;continue;case 44:ac.Type=106;ck=AM.nil;if(AE.nil===c.FirstChild||AE.nil===c.FirstChild.FirstChild||AE.nil===c.FirstChild.FirstChild.FirstChild){$s=188;continue;}$s=189;continue;case 188:$s=190;case 190:return;case 189:cl=c.FirstChild.FirstChild.FirstChild;while(true){if(!(!(AE.nil===cl))){break;}cm=J.DomAttrValue(cl,"align");cn=cm;if(cn===("left")){ck=$append(ck,1);}else if(cn===("center")){ck=$append(ck,2);}else if(cn===("right")){ck=$append(ck,3);}else{ck=$append(ck,0);}cl=cl.NextSibling;}ac.TableAligns=ck;d.Context.Tip.AppendChild(ac);d.Context.Tip=ac;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=56;continue;case 45:ac.Type=107;d.Context.Tip.AppendChild(ac);d.Context.Tip=ac;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=56;continue;case 46:$s=56;continue;case 47:ac.Type=108;d.Context.Tip.AppendChild(ac);d.Context.Tip=ac;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=56;continue;case 48:ac.Type=109;co=J.DomAttrValue(c,"align");cp=0;cq=co;if(cq===("left")){cp=1;}else if(cq===("center")){cp=2;}else if(cq===("right")){cp=3;}else{cp=0;}ac.TableCellAlign=cp;ac.Tokens=AD.nil;d.Context.Tip.AppendChild(ac);d.Context.Tip=ac;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=56;continue;case 49:if(AE.nil===c.FirstChild){$s=26;continue;}if("footnotes-ref"===g){ac.Type=16;ac.Tokens=(new AD($stringToBytes("["+J.DomAttrValue(c,"data-footnotes-label")+"]")));if(C.Contains(c.FirstChild.Data,"\xE2\x80\xB8")){ac.Tokens=$appendSlice(ac.Tokens,E.CaretTokens);}d.Context.Tip.AppendChild(ac);}$s=191;case 191:return;case 50:if(AE.nil===c.FirstChild){$s=26;continue;}if(C.Contains(aa,"vditor-comment")){$s=192;continue;}$s=193;continue;case 192:ac.Type=10;cr=new A.Buffer.ptr(AD.nil,0,0);cs=cr.WriteString("<span ");$s=194;case 194:if($c){$c=false;cs=cs.$blk();}if(cs&&cs.$blk!==undefined){break s;}cs;ct=c.Attr;cu=0;case 195:if(!(cu<ct.$length)){$s=196;continue;}cv=cu;cw=((cu<0||cu>=ct.$length)?($throwRuntimeError("index out of range"),undefined):ct.$array[ct.$offset+cu]);cx=cr.WriteString(cw.Key);$s=197;case 197:if($c){$c=false;cx=cx.$blk();}if(cx&&cx.$blk!==undefined){break s;}cx;if(!(""===cw.Val)){$s=198;continue;}$s=199;continue;case 198:cy=cr.WriteString("=\"");$s=200;case 200:if($c){$c=false;cy=cy.$blk();}if(cy&&cy.$blk!==undefined){break s;}cy;cz=cr.WriteString(cw.Val);$s=201;case 201:if($c){$c=false;cz=cz.$blk();}if(cz&&cz.$blk!==undefined){break s;}cz;da=cr.WriteString("\"");$s=202;case 202:if($c){$c=false;da=da.$blk();}if(da&&da.$blk!==undefined){break s;}da;case 199:if(cv<(c.Attr.$length-1>>0)){$s=203;continue;}$s=204;continue;case 203:db=cr.WriteString(" ");$s=205;case 205:if($c){$c=false;db=db.$blk();}if(db&&db.$blk!==undefined){break s;}db;case 204:cu++;$s=195;continue;case 196:dc=cr.WriteString(">");$s=206;case 206:if($c){$c=false;dc=dc.$blk();}if(dc&&dc.$blk!==undefined){break s;}dc;ac.Tokens=cr.Bytes();d.Context.Tip.AppendChild(ac);$s=26;continue;case 193:if("link-ref"===g){$s=207;continue;}$s=208;continue;case 207:ac.Type=16;dd="["+c.FirstChild.Data+"]["+J.DomAttrValue(c,"data-link-label")+"]";if(!(AE.nil===c.NextSibling)&&"2"===J.DomAttrValue(c.NextSibling,"data-render")){dd="!"+dd;}ac.Tokens=(new AD($stringToBytes(dd)));d.Context.Tip.AppendChild(ac);$s=209;case 209:return;case 208:de=AD.nil;if("\xE2\x80\x8B"===c.FirstChild.Data&&""===J.DomAttrValue(c,"style")&&!(AE.nil===c.FirstChild.NextSibling)){de=(new AD($stringToBytes(c.FirstChild.NextSibling.FirstChild.Data)));}else if(378116===c.FirstChild.DataAtom){de=(new AD($stringToBytes(c.FirstChild.FirstChild.Data)));if("\xE2\x80\x8B"===($bytesToString(de))){$s=26;continue;}}if("math-inline"===g){$s=210;continue;}if("html-inline"===g){$s=211;continue;}if("code-inline"===g){$s=212;continue;}if("html-entity"===g){$s=213;continue;}$s=214;continue;case 210:ac.Type=304;ac.AppendChild(new D.Node.ptr("","","","",305,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ac.AppendChild(new D.Node.ptr("","","","",306,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,de,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ac.AppendChild(new D.Node.ptr("","","","",307,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(ac);$s=215;case 215:return;case 211:ac.Type=10;ac.Tokens=de;d.Context.Tip.AppendChild(ac);$s=216;case 216:return;case 212:ac.Tokens=de;d.Context.Tip.AppendChild(ac);$s=217;case 217:return;case 213:ac.Type=16;ac.Tokens=de;d.Context.Tip.AppendChild(ac);$s=218;case 218:return;case 214:$s=26;continue;$s=56;continue;case 51:ac.Type=16;df=J.DomText(c);$s=219;case 219:if($c){$c=false;df=df.$blk();}if(df&&df.$blk!==undefined){break s;}ac.Tokens=(new AD($stringToBytes(df)));d.Context.Tip.AppendChild(ac);$s=220;case 220:return;case 52:ac.Type=9;dg=J.DomHTML(c);$s=221;case 221:if($c){$c=false;dg=dg.$blk();}if(dg&&dg.$blk!==undefined){break s;}ac.Tokens=dg;ac.Tokens=(dh=A.SplitAfter(ac.Tokens,(new AD($stringToBytes("</summary>")))),(0>=dh.$length?($throwRuntimeError("index out of range"),undefined):dh.$array[dh.$offset+0]));d.Context.Tip.AppendChild(ac);$s=56;continue;case 53:ac.Type=10;di=J.DomHTML(c);$s=222;case 222:if($c){$c=false;di=di.$blk();}if(di&&di.$blk!==undefined){break s;}ac.Tokens=di;d.Context.Tip.AppendChild(ac);$s=223;case 223:return;case 54:$s=224;case 224:return;case 55:ac.Type=9;dj=J.DomHTML(c);$s=225;case 225:if($c){$c=false;dj=dj.$blk();}if(dj&&dj.$blk!==undefined){break s;}ac.Tokens=dj;d.Context.Tip.AppendChild(ac);$s=226;case 226:return;case 56:case 26:dk=c.FirstChild;case 227:if(!(!(dk===AE.nil))){$s=228;continue;}$r=e.genASTByVditorDOM(dk,d);$s=229;case 229:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}dk=dk.NextSibling;$s=227;continue;case 228:dl=c.DataAtom;if(dl===(40708)){if(C.Contains(aa,"vditor-comment")){d.Context.Tip.AppendChild(new D.Node.ptr("","","","",10,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("</span>"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}}else if((dl===(28162))||(dl===(1537))){dm=J.DomAttrValue(c,"data-marker");if(""===dm){dm="*";}if("_"===dm){ac.AppendChild(new D.Node.ptr("","","","",21,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(dm))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else{ac.AppendChild(new D.Node.ptr("","","","",19,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(dm))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}}else if((dl===(449798))||(dl===(257))){dn=J.DomAttrValue(c,"data-marker");if(""===dn){dn="**";}if("__"===dn){ac.AppendChild(new D.Node.ptr("","","","",26,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(dn))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else{ac.AppendChild(new D.Node.ptr("","","","",24,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(dn))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}}else if(dl===(1)){ac.AppendChild(new D.Node.ptr("","","","",37,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ac.AppendChild(new D.Node.ptr("","","","",38,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));dp=J.DomAttrValue(c,"href");if(!(""===e.RenderOptions.LinkBase)){dp=C.ReplaceAll(dp,e.RenderOptions.LinkBase,"");}if(!(""===e.RenderOptions.LinkPrefix)){dp=C.ReplaceAll(dp,e.RenderOptions.LinkPrefix,"");}ac.AppendChild(new D.Node.ptr("","","","",41,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(dp))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));dq=J.DomAttrValue(c,"title");if(!(""===dq)){ac.AppendChild(new D.Node.ptr("","","","",43,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ac.AppendChild(new D.Node.ptr("","","","",42,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(dq))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}ac.AppendChild(new D.Node.ptr("","","","",39,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else if((dl===(283139))||(dl===(9473))||(dl===(53766))){dr=J.DomAttrValue(c,"data-marker");if("~"===dr){ac.AppendChild(new D.Node.ptr("","","","",103,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(dr))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else{ac.AppendChild(new D.Node.ptr("","","","",105,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(dr))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}}else if(dl===(46596)){ds=J.DomAttrValue(c,"data-marker");if("="===ds){ac.AppendChild(new D.Node.ptr("","","","",452,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(ds))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else{ac.AppendChild(new D.Node.ptr("","","","",454,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(ds))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}}else if(dl===(29191)){d.Context.Tip.AppendChild(new D.Node.ptr("","","","",9,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("</details>"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:R.ptr.prototype.genASTByVditorDOM,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,d,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,dp,dq,dr,ds,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred};return $f;}}};R.prototype.genASTByVditorDOM=function(c,d){return this.$val.genASTByVditorDOM(c,d);};R.ptr.prototype.hasAttr=function(c,d){var c,d,e,f,g,h;e=this;f=c.Attr;g=0;while(true){if(!(g<f.$length)){break;}h=((g<0||g>=f.$length)?($throwRuntimeError("index out of range"),undefined):f.$array[f.$offset+g]);if(h.Key===d){return true;}g++;}return false;};R.prototype.hasAttr=function(c,d){return this.$val.hasAttr(c,d);};R.ptr.prototype.domChild=function(c,d){var c,d,e,f,g;e=this;if(AE.nil===c){return AE.nil;}f=c.FirstChild;while(true){if(!(!(AE.nil===f))){break;}g=e.domChild0(f,d);if(!(AE.nil===g)){return g;}f=f.NextSibling;}return AE.nil;};R.prototype.domChild=function(c,d){return this.$val.domChild(c,d);};R.ptr.prototype.domChild0=function(c,d){var c,d,e,f,g;e=this;if(c.DataAtom===d){return c;}f=c.FirstChild;while(true){if(!(!(AE.nil===f))){break;}g=e.domChild0(f,d);if(!(AE.nil===g)){return g;}f=f.NextSibling;}return AE.nil;};R.prototype.domChild0=function(c,d){return this.$val.domChild0(c,d);};R.ptr.prototype.setDOMAttrValue=function(c,d,e){var c,d,e,f,g,h,i;f=this;if(AE.nil===c){return;}g=c.Attr;h=0;while(true){if(!(h<g.$length)){break;}i=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]);if(i.Key===d){i.Val=e;return;}h++;}c.Attr=$append(c.Attr,new F.Attribute.ptr("",d,e));};R.prototype.setDOMAttrValue=function(c,d,e){return this.$val.setDOMAttrValue(c,d,e);};R.ptr.prototype.parentIs=function(c,d){var c,d,e,f,g,h,i;e=this;f=c.Parent;while(true){if(!(!(AE.nil===f))){break;}g=d;h=0;while(true){if(!(h<g.$length)){break;}i=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]);if(i===f.DataAtom){return true;}h++;}f=f.Parent;}return false;};R.prototype.parentIs=function(c,d){return this.$val.parentIs(c,d);};R.ptr.prototype.isCaret=function(c){var{c,d,e,f,g,h,i,j,k,l,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d=false;e=false;f=this;g=J.DomText(c);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=C.TrimSpace(h);$s=2;case 2:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;if(1>j.length&&1<h.length&&C.Contains(h,"\xE2\x80\xB8")){k=true;l=false;d=k;e=l;$s=-1;return[d,e];}d="\xE2\x80\xB8"===h||"\xE2\x80\x8B\xE2\x80\xB8"===h||"\xE2\x80\xB8\xE2\x80\x8B"===h;e=""===h||"\xE2\x80\x8B"===h;if(!(""===J.DomAttrValue(c,"data-content"))){e=false;}$s=-1;return[d,e];}return;}var $f={$blk:R.ptr.prototype.isCaret,$c:true,$r,c,d,e,f,g,h,i,j,k,l,$s};return $f;};R.prototype.isCaret=function(c){return this.$val.isCaret(c);};R.ptr.prototype.isEmptyText=function(c){var{c,d,e,f,g,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d=this;if(!(AE.nil===c.FirstChild)&&"block-ref"===J.DomAttrValue(c.FirstChild,"data-type")){$s=-1;return false;}e=J.DomText(c);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=C.TrimSpace(e);$s=2;case 2:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(""===g||"\xE2\x80\x8B"===g){$s=-1;return true;}if("\xE2\x80\x8B\xE2\x80\xB8"===g||"\xE2\x80\xB8\xE2\x80\x8B"===g){$s=-1;return true;}$s=-1;return false;}return;}var $f={$blk:R.ptr.prototype.isEmptyText,$c:true,$r,c,d,e,f,g,$s};return $f;};R.prototype.isEmptyText=function(c){return this.$val.isEmptyText(c);};R.ptr.prototype.startsWithNewline=function(c){var c,d;d=this;return C.HasPrefix(c.Data,"\n")||C.HasPrefix(c.Data,"\xE2\x80\x8B\n");};R.prototype.startsWithNewline=function(c){return this.$val.startsWithNewline(c);};R.ptr.prototype.isInline=function(c){var c,d;d=this;if(AE.nil===c){return false;}return(0===c.DataAtom)||(378116===c.DataAtom)||(449798===c.DataAtom)||(257===c.DataAtom)||(28162===c.DataAtom)||(1537===c.DataAtom)||(46596===c.DataAtom)||(283139===c.DataAtom)||(9473===c.DataAtom)||(53766===c.DataAtom)||(1===c.DataAtom)||(198403===c.DataAtom)||(2817===c.DataAtom)||(47363===c.DataAtom)||(40708===c.DataAtom);};R.prototype.isInline=function(c){return this.$val.isInline(c);};R.ptr.prototype.prefixSpaces=function(c){var c,d,e,f,g,h,i;d="";e=this;f=c;g=0;while(true){if(!(g<f.length)){break;}h=$decodeRune(f,g);i=h[0];if((32===i)||(160===i)){d=d+(" ");}else{return d;}g+=h[1];}return d;};R.prototype.prefixSpaces=function(c){return this.$val.prefixSpaces(c);};R.ptr.prototype.suffixSpaces=function(c){var c,d,e,f;d="";e=this;f=c.length-1>>0;while(true){if(!(f>=0)){break;}if((32===c.charCodeAt(f))||(160===c.charCodeAt(f))){d=d+(" ");}else{return d;}f=f-(1)>>0;}return d;};R.prototype.suffixSpaces=function(c){return this.$val.suffixSpaces(c);};R.ptr.prototype.SpinVditorSVDOM=function(c){var{c,d,e,f,g,h,i,j,k,l,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=C.TrimSpace(c);$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}if("\xE2\x80\xB8"===f){$s=1;continue;}$s=2;continue;case 1:d="<span data-type=\"text\"><wbr></span>"+($bytesToString(I.NewlineSV));$s=-1;return d;case 2:g=H.Parse("",(new AD($stringToBytes(c))),e.ParseOptions);$s=4;case 4:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=I.NewVditorSVRenderer(h,e.RenderOptions);$s=5;case 5:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;k=j.BaseRenderer.Render();$s=6;case 6:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;d=C.ReplaceAll(($bytesToString(l)),"\xE2\x80\xB8","<wbr>");$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.SpinVditorSVDOM,$c:true,$r,c,d,e,f,g,h,i,j,k,l,$s};return $f;};R.prototype.SpinVditorSVDOM=function(c){return this.$val.SpinVditorSVDOM(c);};R.ptr.prototype.HTML2VditorSVDOM=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;g=e.HTML2Markdown(c);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[0];i=f[1];if(!($interfaceIsEqual($ifaceNil,i))){$s=2;continue;}$s=3;continue;case 2:j=i.Error();$s=4;case 4:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}d=j;$s=-1;return d;case 3:k=H.Parse("",(new AD($stringToBytes(h))),e.ParseOptions);$s=5;case 5:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;m=I.NewVditorSVRenderer(l,e.RenderOptions);$s=6;case 6:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;o=e.HTML2VditorSVDOMRendererFuncs;p=0;q=o?o.keys():undefined;r=o?o.size:0;while(true){if(!(p<r)){break;}s=q.next().value;t=o.get(s);if(t===undefined){p++;continue;}u=t.k;v=t.v;w=u;(n.BaseRenderer.ExtRendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(D.NodeType.keyFor(w),{k:w,v:v});p++;}x=n.BaseRenderer.Render();$s=7;case 7:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}y=x;d=($bytesToString(y));$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.HTML2VditorSVDOM,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,$s};return $f;};R.prototype.HTML2VditorSVDOM=function(c){return this.$val.HTML2VditorSVDOM(c);};R.ptr.prototype.Md2VditorSVDOM=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=H.Parse("",(new AD($stringToBytes(c))),e.ParseOptions);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=I.NewVditorSVRenderer(g,e.RenderOptions);$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;j=e.Md2VditorSVDOMRendererFuncs;k=0;l=j?j.keys():undefined;m=j?j.size:0;while(true){if(!(k<m)){break;}n=l.next().value;o=j.get(n);if(o===undefined){k++;continue;}p=o.k;q=o.v;r=p;(i.BaseRenderer.ExtRendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(D.NodeType.keyFor(r),{k:r,v:q});k++;}s=i.BaseRenderer.Render();$s=3;case 3:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=s;d=C.ReplaceAll(($bytesToString(t)),"\xE2\x80\xB8","<wbr>");$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.Md2VditorSVDOM,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s};return $f;};R.prototype.Md2VditorSVDOM=function(c){return this.$val.Md2VditorSVDOM(c);};R.ptr.prototype.SpinVditorIRDOM=function(c){var{c,d,e,f,g,h,i,j,k,l,m,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;c=C.ReplaceAll(c,"<wbr>","\xE2\x80\xB8");f=e.vditorIRDOM2Md(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=H.Parse("",(new AD($stringToBytes(g))),e.ParseOptions);$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;j=I.NewVditorIRRenderer(i,e.RenderOptions);$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;l=k.BaseRenderer.Render();$s=4;case 4:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;d=C.ReplaceAll(($bytesToString(m)),"\xE2\x80\xB8","<wbr>");$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.SpinVditorIRDOM,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,$s};return $f;};R.prototype.SpinVditorIRDOM=function(c){return this.$val.SpinVditorIRDOM(c);};R.ptr.prototype.HTML2VditorIRDOM=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;g=e.HTML2Markdown(c);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[0];i=f[1];if(!($interfaceIsEqual($ifaceNil,i))){$s=2;continue;}$s=3;continue;case 2:j=i.Error();$s=4;case 4:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}d=j;$s=-1;return d;case 3:k=H.Parse("",(new AD($stringToBytes(h))),e.ParseOptions);$s=5;case 5:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;m=I.NewVditorIRRenderer(l,e.RenderOptions);$s=6;case 6:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;o=e.HTML2VditorIRDOMRendererFuncs;p=0;q=o?o.keys():undefined;r=o?o.size:0;while(true){if(!(p<r)){break;}s=q.next().value;t=o.get(s);if(t===undefined){p++;continue;}u=t.k;v=t.v;w=u;(n.BaseRenderer.ExtRendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(D.NodeType.keyFor(w),{k:w,v:v});p++;}x=n.BaseRenderer.Render();$s=7;case 7:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}y=x;d=($bytesToString(y));$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.HTML2VditorIRDOM,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,$s};return $f;};R.prototype.HTML2VditorIRDOM=function(c){return this.$val.HTML2VditorIRDOM(c);};R.ptr.prototype.VditorIRDOM2HTML=function(c){var{c,d,e,f,g,h,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=e.vditorIRDOM2Md(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=e.Md2HTML(g);$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}d=h;$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.VditorIRDOM2HTML,$c:true,$r,c,d,e,f,g,h,$s};return $f;};R.prototype.VditorIRDOM2HTML=function(c){return this.$val.VditorIRDOM2HTML(c);};R.ptr.prototype.Md2VditorIRDOM=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=H.Parse("",(new AD($stringToBytes(c))),e.ParseOptions);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=I.NewVditorIRRenderer(g,e.RenderOptions);$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;j=e.Md2VditorIRDOMRendererFuncs;k=0;l=j?j.keys():undefined;m=j?j.size:0;while(true){if(!(k<m)){break;}n=l.next().value;o=j.get(n);if(o===undefined){k++;continue;}p=o.k;q=o.v;r=p;(i.BaseRenderer.ExtRendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(D.NodeType.keyFor(r),{k:r,v:q});k++;}s=i.BaseRenderer.Render();$s=3;case 3:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=s;d=($bytesToString(t));$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.Md2VditorIRDOM,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s};return $f;};R.prototype.Md2VditorIRDOM=function(c){return this.$val.Md2VditorIRDOM(c);};R.ptr.prototype.VditorIRDOM2Md=function(c){var{c,d,e,f,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;c=C.ReplaceAll(c,"\xE2\x80\x8B","");f=e.vditorIRDOM2Md(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}d=f;d=C.ReplaceAll(d,"\xE2\x80\x8B","");$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.VditorIRDOM2Md,$c:true,$r,c,d,e,f,$s};return $f;};R.prototype.VditorIRDOM2Md=function(c){return this.$val.VditorIRDOM2Md(c);};R.ptr.prototype.vditorIRDOM2Md=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;c=C.ReplaceAll(c,"<wbr>","");c=C.ReplaceAll(c,"\t\n","\n");c=C.ReplaceAll(c," \n"," \n");f=e.parseHTML(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(AE.nil===g){$s=-1;return d;}$r=e.adjustVditorDOM(g);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=new H.Tree.ptr(new D.Node.ptr("","","","",0,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""),new H.Context.ptr(AB.nil,e.ParseOptions,AF.nil,AF.nil,AD.nil,0,0,0,0,0,0,false,false,false,false,AF.nil,AF.nil),AH.nil,AI.nil,"","","","","",AJ.nil,new $Int64(0,0),new $Int64(0,0),"");h.Context.Tip=h.Root;i=g.FirstChild;case 3:if(!(!(AE.nil===i))){$s=4;continue;}$r=e.genASTByVditorIRDOM(i,h);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}i=i.NextSibling;$s=3;continue;case 4:$r=D.Walk(h.Root,(function(j,k){var j,k,l,m;if(k){l=j.Type;if((l===(10))||(l===(27))||(l===(304))||(l===(9))||(l===(15))||(l===(302))){j.Tokens=F.UnescapeHTML(j.Tokens);if(!(AF.nil===j.Next)&&(27===j.Next.Type)&&(j.CodeMarkerLen===j.Next.CodeMarkerLen)){j.FirstChild.Next.Tokens=$appendSlice(j.FirstChild.Next.Tokens,j.Next.FirstChild.Next.Tokens);j.Next.Unlink();}}else if(l===(7)){if(!(AF.nil===j.Parent)&&(7===j.Parent.Type)){m=j.Previous;if(!(AF.nil===m)){m.AppendChild(j);}}}}return 2;}));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}j=I.NewOptions();j.AutoSpace=false;j.FixTermTypo=false;k=I.NewFormatRenderer(h,j);$s=7;case 7:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;m=l.BaseRenderer.Render();$s=8;case 8:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;d=($bytesToString(n));$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.vditorIRDOM2Md,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,$s};return $f;};R.prototype.vditorIRDOM2Md=function(c){return this.$val.vditorIRDOM2Md(c);};R.ptr.prototype.genASTByVditorIRDOM=function(c,d){var{aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,d,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r,$c}=$restore(this,{c,d});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);e=this;f=J.DomAttrValue(c,"data-render");if("1"===f||"2"===f){$s=1;continue;}$s=2;continue;case 1:$s=3;case 3:return;case 2:g=J.DomAttrValue(c,"data-type");if(92931===c.DataAtom){$s=4;continue;}$s=5;continue;case 4:if("code-block"===g||"html-block"===g||"math-block"===g||"yaml-front-matter"===g){$s=6;continue;}if("link-ref-defs-block"===g){$s=7;continue;}if("footnotes-def"===g){$s=8;continue;}if("footnotes-block"===g){$s=9;continue;}if("toc-block"===g){$s=10;continue;}$s=11;continue;case 6:if(("code-block"===g||"math-block"===g)&&!C.Contains(J.DomAttrValue(c.FirstChild,"data-type"),"-block-open-marker")){$s=13;continue;}$s=14;continue;case 13:h=new D.Node.ptr("","","","",1,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");i=J.DomText(c.FirstChild);$s=15;case 15:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(i))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");h.AppendChild(j);d.Context.Tip.AppendChild(h);d.Context.Tip=h;$s=16;case 16:return;case 14:k=c.FirstChild;case 17:if(!(!(k===AE.nil))){$s=18;continue;}$r=e.genASTByVditorIRDOM(k,d);$s=19;case 19:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=k.NextSibling;$s=17;continue;case 18:$s=12;continue;case 7:l=J.DomText(c);$s=20;case 20:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;n=new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(m))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");d.Context.Tip.AppendChild(n);$s=12;continue;case 8:o=c.FirstChild;case 21:if(!(!(o===AE.nil))){$s=22;continue;}$r=e.genASTByVditorIRDOM(o,d);$s=23;case 23:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}o=o.NextSibling;$s=21;continue;case 22:$s=12;continue;case 9:p=c.FirstChild;case 24:if(!(!(AE.nil===p))){$s=25;continue;}q=new A.Buffer.ptr(AD.nil,0,0);r=F.Render(q,p);$s=26;case 26:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=r;if($interfaceIsEqual($ifaceNil,s)){$s=27;continue;}$s=28;continue;case 27:t=e.vditorIRDOM2Md(q.String());$s=29;case 29:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}u=t;v=C.Split(u,"\n");u="";w=v;x=0;while(true){if(!(x<w.$length)){break;}y=x;z=((x<0||x>=w.$length)?($throwRuntimeError("index out of range"),undefined):w.$array[w.$offset+x]);if(0<y){u=u+(" "+z);}else{u=z;}u=u+("\n");x++;}aa=new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(u))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");d.Context.Tip.AppendChild(aa);case 28:p=p.NextSibling;$s=24;continue;case 25:$s=12;continue;case 10:ab=new D.Node.ptr("","","","",415,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");d.Context.Tip.AppendChild(ab);$s=12;continue;case 11:ac=J.DomText(c);$s=30;case 30:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ad=ac;if("\xE2\x80\xB8\n"===ad){d.Context.Tip.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("\xE2\x80\xB8\n"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}case 12:$s=31;case 31:return;case 5:ae=J.DomAttrValue(c,"class");af=C.ReplaceAll(c.Data,"\xE2\x80\x8B","");ag=new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(af))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");ah=c.DataAtom;if(ah===(0)){$s=33;continue;}if((ah===(3073))||(ah===(92931))){$s=34;continue;}if((ah===(89090))||(ah===(187906))||(ah===(199938))||(ah===(214274))||(ah===(216834))||(ah===(412930))){$s=35;continue;}if(ah===(87810)){$s=36;continue;}if(ah===(100106)){$s=37;continue;}if((ah===(79618))||(ah===(42754))){$s=38;continue;}if(ah===(45570)){$s=39;continue;}if(ah===(290819)){$s=40;continue;}if((ah===(28162))||(ah===(1537))){$s=41;continue;}if((ah===(449798))||(ah===(257))){$s=42;continue;}if((ah===(283139))||(ah===(9473))||(ah===(53766))){$s=43;continue;}if(ah===(46596)){$s=44;continue;}if(ah===(378116)){$s=45;continue;}if(ah===(514)){$s=46;continue;}if(ah===(1)){$s=47;continue;}if(ah===(198403)){$s=48;continue;}if(ah===(281349)){$s=49;continue;}if(ah===(365829)){$s=50;continue;}if(ah===(208901)){$s=51;continue;}if(ah===(9989)){$s=52;continue;}if(ah===(52226)){$s=53;continue;}if((ah===(87554))||(ah===(37378))){$s=54;continue;}if(ah===(461571)){$s=55;continue;}if(ah===(40708)){$s=56;continue;}if(ah===(16132)){$s=57;continue;}if(ah===(29191)){$s=58;continue;}if(ah===(47363)){$s=59;continue;}if(ah===(459783)){$s=60;continue;}$s=61;continue;case 33:if(""===af){$s=63;continue;}$s=64;continue;case 63:$s=65;case 65:return;case 64:ai=C.ReplaceAll(af,"\xE2\x80\xB8","");ai=C.ReplaceAll(ai,"\t"," ");if((!e.isInline(c.PrevSibling))&&C.HasPrefix(ai," ")){$s=66;continue;}$s=67;continue;case 66:ag.Type=11;ag.IsFencedCodeBlock=true;ag.AppendChild(new D.Node.ptr("","","","",12,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("```"))),"","",false,false,false,0,false,0,3,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ag.AppendChild(new D.Node.ptr("","","","",14,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));aj=C.HasPrefix(af,"\xE2\x80\xB8");if(aj){af=C.ReplaceAll(af,"\xE2\x80\xB8","");}ak=C.TrimSpace(af);$s=68;case 68:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}af=ak;if(aj){af="\xE2\x80\xB8"+af;}al=new D.Node.ptr("","","","",15,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(af))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");ag.AppendChild(al);ag.AppendChild(new D.Node.ptr("","","","",13,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("```"))),"","",false,false,false,0,false,0,3,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(ag);$s=69;case 69:return;case 67:if(!(AE.nil===c.Parent)&&(1===c.Parent.DataAtom)){ag.Type=40;}d.Context.Tip.AppendChild(ag);$s=62;continue;case 34:ag.Type=1;am=J.DomText(c);$s=70;case 70:if($c){$c=false;am=am.$blk();}if(am&&am.$blk!==undefined){break s;}an=am;if("\n"===an&&(5===d.Context.Tip.Type)&&AF.nil===d.Context.Tip.FirstChild.Next){$s=71;continue;}$s=72;continue;case 71:$s=74;case 74:return;case 72:d.Context.Tip.AppendChild(ag);d.Context.Tip=ag;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);case 73:$s=62;continue;case 35:ao=J.DomText(c);$s=75;case 75:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}ap=ao;aq=C.TrimSpace(ap);$s=78;case 78:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}if(""===aq){$s=76;continue;}$s=77;continue;case 76:$s=79;case 79:return;case 77:ag.Type=2;ar=J.DomAttrValue(c,"data-marker");ag.HeadingSetext="="===ar||"-"===ar;if(!ag.HeadingSetext){$s=80;continue;}$s=81;continue;case 80:as=J.DomText(c.FirstChild);$s=83;case 83:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}at=as;ag.HeadingLevel=A.Count((new AD($stringToBytes(at))),(new AD($stringToBytes("#"))));$s=82;continue;case 81:au=J.DomText(c.LastChild);$s=86;case 86:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=C.ReplaceAll(au,"\xE2\x80\xB8","");$s=87;case 87:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}aw=C.TrimSpace(av);$s=88;case 88:if($c){$c=false;aw=aw.$blk();}if(aw&&aw.$blk!==undefined){break s;}if(""===aw){$s=84;continue;}$s=85;continue;case 84:ag.Type=16;ag.Tokens=(new AD($stringToBytes(ap)));d.Context.Tip.AppendChild(ag);d.Context.Tip=ag;$s=32;continue;case 85:if("="===ar){ag.HeadingLevel=1;}else{ag.HeadingLevel=2;}if(!(AE.nil===c.LastChild.PrevSibling)){c.LastChild.PrevSibling.Data=C.TrimSuffix(c.LastChild.PrevSibling.Data,"\n");}case 82:d.Context.Tip.AppendChild(ag);d.Context.Tip=ag;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=62;continue;case 36:ag.Type=4;d.Context.Tip.AppendChild(ag);$s=62;continue;case 37:ax=J.DomText(c);$s=89;case 89:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}ay=C.TrimSpace(ax);$s=90;case 90:if($c){$c=false;ay=ay.$blk();}if(ay&&ay.$blk!==undefined){break s;}az=ay;if(""===az||">"===az){$s=91;continue;}$s=92;continue;case 91:$s=93;case 93:return;case 92:if("\xE2\x80\xB8"===az){ag.Type=16;ag.Tokens=(new AD($stringToBytes(az)));d.Context.Tip.AppendChild(ag);}ag.Type=5;ag.AppendChild(new D.Node.ptr("","","","",6,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(">"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(ag);d.Context.Tip=ag;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=62;continue;case 38:if(AE.nil===c.FirstChild){$s=94;continue;}$s=95;continue;case 94:$s=96;case 96:return;case 95:ag.Type=7;ag.ListData=new D.ListData.ptr(0,false,0,0,0,0,0,false,AD.nil,0);if(79618===c.DataAtom){ag.ListData.Typ=1;}ba=J.DomAttrValue(c,"data-tight");if("true"===ba||""===ba){ag.ListData.Tight=true;}d.Context.Tip.AppendChild(ag);d.Context.Tip=ag;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=62;continue;case 39:bb=c.FirstChild;if(!(AE.nil===bb)&&(3073===bb.DataAtom)&&!(AE.nil===bb.NextSibling)&&(3073===bb.NextSibling.DataAtom)){d.Context.Tip.ListData.Tight=false;}ag.Type=8;bc=J.DomAttrValue(c,"data-marker");bd=0;if(""===bc){if(!(AE.nil===c.Parent)&&(79618===c.Parent.DataAtom)){be=J.DomAttrValue(c.Parent.FirstChild,"data-marker");bf=J.DomAttrValue(c.Parent,"start");if(""===bf){bc="1";}else{bc=bf;}if(!(""===be)){bc=bc+($substring(be,(be.length-1>>0)));}else{bc=bc+(".");}}else{bc=J.DomAttrValue(c.Parent,"data-marker");if(""===bc){bc="*";}bd=bc.charCodeAt(0);}}else{if(!(AE.nil===c.Parent)){if(79618===c.Parent.DataAtom){if("*"===bc||"-"===bc||"+"===bc){bc="1.";}if(!("1."===bc)&&!("1)"===bc)&&!(AE.nil===c.PrevSibling)&&!((45570===c.PrevSibling.DataAtom))&&!(AE.nil===c.Parent.Parent)&&((79618===c.Parent.Parent.DataAtom)||(42754===c.Parent.Parent.DataAtom))){bc="1.";}if(!("1."===bc)&&!("1)"===bc)&&(79618===c.Parent.DataAtom)&&c.Parent.FirstChild===c&&""===J.DomAttrValue(c.Parent,"start")){bc="1.";}}else{if(!("*"===bc)&&!("-"===bc)&&!("+"===bc)){bc="*";}bd=bc.charCodeAt(0);}}else{bc=J.DomAttrValue(c,"data-marker");if(""===bc){bc="*";}bd=bc.charCodeAt(0);}}ag.ListData=new D.ListData.ptr(0,false,bd,0,0,0,0,false,(new AD($stringToBytes(bc))),0);if(0===bd){bg=B.Atoi($substring(bc,0,(bc.length-1>>0)));ag.ListData.Num=bg[0];ag.ListData.Delimiter=bc.charCodeAt((bc.length-1>>0));}d.Context.Tip.AppendChild(ag);d.Context.Tip=ag;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=62;continue;case 40:if(378116===c.FirstChild.DataAtom){bh=AD.nil;if(!(AE.nil===c.FirstChild.FirstChild)){bh=(new AD($stringToBytes(c.FirstChild.FirstChild.Data)));}bi=J.DomAttrValue(c.Parent,"data-type");bj=bi;if(bj===("math-block")){ag.Type=302;ag.Tokens=bh;d.Context.Tip.AppendChild(ag);}else if(bj===("html-block")){ag.Type=9;ag.Tokens=bh;d.Context.Tip.AppendChild(ag);}else if(bj===("yaml-front-matter")){ag.Type=425;ag.AppendChild(new D.Node.ptr("","","","",427,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,bh,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(ag);}else{ag.Type=15;ag.Tokens=bh;d.Context.Tip.AppendChild(ag);}}$s=97;case 97:return;case 41:if(AE.nil===c.FirstChild||(514===c.FirstChild.DataAtom)){$s=98;continue;}$s=99;continue;case 98:$s=100;case 100:return;case 99:if(e.startsWithNewline(c.FirstChild)){c.FirstChild.Data=C.TrimLeft(c.FirstChild.Data,"\xE2\x80\x8B\n");d.Context.Tip.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("\xE2\x80\x8B\n"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}bk=J.DomText(c);$s=101;case 101:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}bl=C.TrimSpace(bk);$s=102;case 102:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}bm=bl;bn=e.isEmptyText(c);$s=105;case 105:if($c){$c=false;bn=bn.$blk();}if(bn&&bn.$blk!==undefined){break s;}if(bn){$s=103;continue;}$s=104;continue;case 103:$s=106;case 106:return;case 104:if("\xE2\x80\xB8"===bm){$s=107;continue;}$s=108;continue;case 107:ag.Tokens=E.CaretTokens;d.Context.Tip.AppendChild(ag);$s=109;case 109:return;case 108:ag.Type=17;d.Context.Tip.AppendChild(ag);d.Context.Tip=ag;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=62;continue;case 42:if(AE.nil===c.FirstChild||(514===c.FirstChild.DataAtom)){$s=110;continue;}$s=111;continue;case 110:$s=112;case 112:return;case 111:if(e.startsWithNewline(c.FirstChild)){c.FirstChild.Data=C.TrimLeft(c.FirstChild.Data,"\xE2\x80\x8B\n");d.Context.Tip.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("\xE2\x80\x8B\n"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}bo=J.DomText(c);$s=113;case 113:if($c){$c=false;bo=bo.$blk();}if(bo&&bo.$blk!==undefined){break s;}bp=C.TrimSpace(bo);$s=114;case 114:if($c){$c=false;bp=bp.$blk();}if(bp&&bp.$blk!==undefined){break s;}bq=bp;br=e.isEmptyText(c);$s=117;case 117:if($c){$c=false;br=br.$blk();}if(br&&br.$blk!==undefined){break s;}if(br){$s=115;continue;}$s=116;continue;case 115:$s=118;case 118:return;case 116:if("\xE2\x80\xB8"===bq){$s=119;continue;}$s=120;continue;case 119:ag.Tokens=E.CaretTokens;d.Context.Tip.AppendChild(ag);$s=121;case 121:return;case 120:ag.Type=22;d.Context.Tip.AppendChild(ag);d.Context.Tip=ag;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=62;continue;case 43:if(AE.nil===c.FirstChild||(514===c.FirstChild.DataAtom)){$s=122;continue;}$s=123;continue;case 122:$s=124;case 124:return;case 123:if(e.startsWithNewline(c.FirstChild)){c.FirstChild.Data=C.TrimLeft(c.FirstChild.Data,"\xE2\x80\x8B\n");d.Context.Tip.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("\xE2\x80\x8B\n"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}bs=J.DomText(c);$s=125;case 125:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}bt=C.TrimSpace(bs);$s=126;case 126:if($c){$c=false;bt=bt.$blk();}if(bt&&bt.$blk!==undefined){break s;}bu=bt;bv=e.isEmptyText(c);$s=129;case 129:if($c){$c=false;bv=bv.$blk();}if(bv&&bv.$blk!==undefined){break s;}if(bv){$s=127;continue;}$s=128;continue;case 127:$s=130;case 130:return;case 128:if("\xE2\x80\xB8"===bu){$s=131;continue;}$s=132;continue;case 131:ag.Tokens=E.CaretTokens;d.Context.Tip.AppendChild(ag);$s=133;case 133:return;case 132:ag.Type=101;d.Context.Tip.AppendChild(ag);d.Context.Tip=ag;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=62;continue;case 44:if(AE.nil===c.FirstChild||(514===c.FirstChild.DataAtom)){$s=134;continue;}$s=135;continue;case 134:$s=136;case 136:return;case 135:if(e.startsWithNewline(c.FirstChild)){c.FirstChild.Data=C.TrimLeft(c.FirstChild.Data,"\xE2\x80\x8B\n");d.Context.Tip.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("\xE2\x80\x8B\n"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}bw=J.DomText(c);$s=137;case 137:if($c){$c=false;bw=bw.$blk();}if(bw&&bw.$blk!==undefined){break s;}bx=C.TrimSpace(bw);$s=138;case 138:if($c){$c=false;bx=bx.$blk();}if(bx&&bx.$blk!==undefined){break s;}by=bx;bz=e.isEmptyText(c);$s=141;case 141:if($c){$c=false;bz=bz.$blk();}if(bz&&bz.$blk!==undefined){break s;}if(bz){$s=139;continue;}$s=140;continue;case 139:$s=142;case 142:return;case 140:if("\xE2\x80\xB8"===by){$s=143;continue;}$s=144;continue;case 143:ag.Tokens=E.CaretTokens;d.Context.Tip.AppendChild(ag);$s=145;case 145:return;case 144:ag.Type=450;d.Context.Tip.AppendChild(ag);d.Context.Tip=ag;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=62;continue;case 45:if(AE.nil===c.FirstChild){$s=146;continue;}$s=147;continue;case 146:$s=148;case 148:return;case 147:ca=C.ReplaceAll(c.FirstChild.Data,"\xE2\x80\x8B","");if("\xE2\x80\xB8"===ca){$s=149;continue;}$s=150;continue;case 149:ag.Tokens=E.CaretTokens;d.Context.Tip.AppendChild(ag);$s=151;case 151:return;case 150:if(""===ca){$s=152;continue;}$s=153;continue;case 152:$s=154;case 154:return;case 153:cb=(new AD($stringToBytes(ca)));cc=new D.Node.ptr("","","","",29,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,cb,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");ag.Type=27;ag.AppendChild(cc);d.Context.Tip.AppendChild(ag);$s=155;case 155:return;case 46:if(!(AE.nil===c.Parent)){$s=156;continue;}$s=157;continue;case 156:if(e.parentIs(c,new AT([37378,87554]))){$s=158;continue;}$s=159;continue;case 158:if((AE.nil===c.PrevSibling||"\xE2\x80\xB8"===c.PrevSibling.Data)&&(AE.nil===c.NextSibling||"\xE2\x80\xB8"===c.NextSibling.Data)){$s=160;continue;}$s=161;continue;case 160:$s=162;case 162:return;case 161:if(AE.nil===c.NextSibling){$s=163;continue;}$s=164;continue;case 163:$s=165;case 165:return;case 164:ag.Type=10;ag.Tokens=(new AD($stringToBytes("<br />")));d.Context.Tip.AppendChild(ag);$s=166;case 166:return;case 159:if(3073===c.Parent.DataAtom){$s=167;continue;}$s=168;continue;case 167:if(!(AE.nil===c.Parent.NextSibling)&&((42754===c.Parent.NextSibling.DataAtom)||(79618===c.Parent.NextSibling.DataAtom)||(100106===c.Parent.NextSibling.DataAtom))){$s=169;continue;}$s=170;continue;case 169:d.Context.Tip.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("\xE2\x80\x8B"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));$s=171;case 171:return;case 170:case 168:case 157:ag.Type=31;d.Context.Tip.AppendChild(ag);d.Context.Tip=ag;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=62;continue;case 47:ag.Type=33;ag.AppendChild(new D.Node.ptr("","","","",36,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(ag);d.Context.Tip=ag;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=62;continue;case 48:cd=ae;ce=J.DomAttrValue(c,"alt");if("emoji"===cd){$s=172;continue;}$s=173;continue;case 172:ag.Type=200;cf=new D.Node.ptr("","","","",202,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,d.EmojiImgTokens(ce,J.DomAttrValue(c,"src")),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");cf.AppendChild(new D.Node.ptr("","","","",203,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(":"+ce+":"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ag.AppendChild(cf);d.Context.Tip.AppendChild(ag);d.Context.Tip=ag;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=174;continue;case 173:$s=175;case 175:return;case 174:$s=62;continue;case 49:if(AE.nil===c.Parent||AE.nil===c.Parent.Parent||(!((3073===c.Parent.DataAtom))&&!((45570===c.Parent.DataAtom)))){$s=176;continue;}$s=177;continue;case 176:$s=178;case 178:return;case 177:if(!(AE.nil===c.NextSibling)&&(40708===c.NextSibling.DataAtom)){$s=179;continue;}$s=180;continue;case 179:cg=C.TrimSpace(c.NextSibling.FirstChild.Data);$s=181;case 181:if($c){$c=false;cg=cg.$blk();}if(cg&&cg.$blk!==undefined){break s;}c.NextSibling.FirstChild.Data=cg;$s=32;continue;case 180:ag.Type=100;ag.TaskListItemChecked=e.hasAttr(c,"checked");d.Context.Tip.AppendChild(ag);if(!(AF.nil===ag.Parent.Parent.Parent)&&!(AL.nil===ag.Parent.Parent.Parent.ListData)){ag.Parent.Parent.Parent.ListData.Typ=3;}$s=62;continue;case 50:ag.Type=106;ch=AM.nil;if(AE.nil===c.FirstChild||AE.nil===c.FirstChild.FirstChild||AE.nil===c.FirstChild.FirstChild.FirstChild){$s=182;continue;}$s=183;continue;case 182:$s=184;case 184:return;case 183:ci=c.FirstChild.FirstChild.FirstChild;while(true){if(!(!(AE.nil===ci))){break;}cj=J.DomAttrValue(ci,"align");ck=cj;if(ck===("left")){ch=$append(ch,1);}else if(ck===("center")){ch=$append(ch,2);}else if(ck===("right")){ch=$append(ch,3);}else{ch=$append(ch,0);}ci=ci.NextSibling;}ag.TableAligns=ch;ag.Tokens=AD.nil;d.Context.Tip.AppendChild(new D.Node.ptr("","","","",1,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(ag);d.Context.Tip=ag;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=62;continue;case 51:ag.Type=107;d.Context.Tip.AppendChild(ag);d.Context.Tip=ag;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=62;continue;case 52:$s=62;continue;case 53:ag.Type=108;d.Context.Tip.AppendChild(ag);d.Context.Tip=ag;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=62;continue;case 54:ag.Type=109;cl=J.DomAttrValue(c,"align");cm=0;cn=cl;if(cn===("left")){cm=1;}else if(cn===("center")){cm=2;}else if(cn===("right")){cm=3;}else{cm=0;}ag.TableCellAlign=cm;ag.Tokens=AD.nil;d.Context.Tip.AppendChild(ag);d.Context.Tip=ag;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=62;continue;case 55:if(AE.nil===c.FirstChild){$s=32;continue;}if("footnotes-ref"===g){$s=185;continue;}$s=186;continue;case 185:ag.Type=16;co=J.DomText(c);$s=187;case 187:if($c){$c=false;co=co.$blk();}if(co&&co.$blk!==undefined){break s;}ag.Tokens=(new AD($stringToBytes(co)));d.Context.Tip.AppendChild(ag);case 186:$s=188;case 188:return;case 56:cp=g;if(cp===("inline-node")||cp===("em")||cp===("strong")||cp===("s")||cp===("a")||cp===("link-ref")||cp===("img")||cp===("code")||cp===("heading-id")||cp===("html-inline")||cp===("inline-math")||cp===("html-entity")){$s=190;continue;}if(cp===("math-block-close-marker")){$s=191;continue;}if(cp===("math-block-open-marker")){$s=192;continue;}if(cp===("yaml-front-matter-close-marker")){$s=193;continue;}if(cp===("yaml-front-matter-open-marker")){$s=194;continue;}if(cp===("code-block-open-marker")){$s=195;continue;}if(cp===("code-block-info")){$s=196;continue;}if(cp===("code-block-close-marker")){$s=197;continue;}if(cp===("heading-marker")){$s=198;continue;}$s=199;continue;case 190:ag.Type=16;cq=J.DomText(c);$s=200;case 200:if($c){$c=false;cq=cq.$blk();}if(cq&&cq.$blk!==undefined){break s;}ag.Tokens=(new AD($stringToBytes(cq)));d.Context.Tip.AppendChild(ag);$s=201;case 201:return;case 191:d.Context.Tip.AppendChild(new D.Node.ptr("","","","",303,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,H.MathBlockMarker,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=202;case 202:return;case 192:ag.Type=300;ag.AppendChild(new D.Node.ptr("","","","",301,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,H.MathBlockMarker,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(ag);d.Context.Tip=ag;$s=203;case 203:return;case 193:d.Context.Tip.AppendChild(new D.Node.ptr("","","","",428,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,H.YamlFrontMatterMarker,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=204;case 204:return;case 194:ag.Type=425;ag.AppendChild(new D.Node.ptr("","","","",426,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,H.YamlFrontMatterMarker,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(ag);d.Context.Tip=ag;$s=205;case 205:return;case 195:if(290819===c.NextSibling.DataAtom){c.InsertAfter(new F.Node.ptr(AE.nil,AE.nil,AE.nil,AE.nil,AE.nil,0,40708,"","",new AS([new F.Attribute.ptr("","data-type","code-block-info")])));}cr=J.DomText(c);$s=206;case 206:if($c){$c=false;cr=cr.$blk();}if(cr&&cr.$blk!==undefined){break s;}cs=(new AD($stringToBytes(cr)));ct=A.LastIndex(cs,(new AD($stringToBytes("`"))))+1>>0;if(0<ct){c.NextSibling.AppendChild(new F.Node.ptr(AE.nil,AE.nil,AE.nil,AE.nil,AE.nil,0,0,($bytesToString($subslice(cs,ct))),"",AS.nil));cs=$subslice(cs,0,ct);}ag.Type=11;ag.IsFencedCodeBlock=true;ag.AppendChild(new D.Node.ptr("","","","",12,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,cs,"","",false,false,false,0,false,0,cs.$length,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(ag);d.Context.Tip=ag;$s=207;case 207:return;case 196:cu=J.DomText(c);$s=208;case 208:if($c){$c=false;cu=cu.$blk();}if(cu&&cu.$blk!==undefined){break s;}cv=(new AD($stringToBytes(cu)));cv=A.ReplaceAll(cv,(new AD($stringToBytes("\xE2\x80\x8B"))),AD.nil);d.Context.Tip.AppendChild(new D.Node.ptr("","","","",14,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,cv,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));$s=209;case 209:return;case 197:cw=J.DomText(c);$s=210;case 210:if($c){$c=false;cw=cw.$blk();}if(cw&&cw.$blk!==undefined){break s;}cx=(new AD($stringToBytes(cw)));cy=A.LastIndex(cx,(new AD($stringToBytes("`"))))+1>>0;if(0<cy){cx=$subslice(cx,0,cy);}if(0===cx.$length){cx=(new AD($stringToBytes("```")));}d.Context.Tip.AppendChild(new D.Node.ptr("","","","",13,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,cx,"","",false,false,false,0,false,0,cx.$length,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=211;case 211:return;case 198:cz=J.DomText(c);$s=212;case 212:if($c){$c=false;cz=cz.$blk();}if(cz&&cz.$blk!==undefined){break s;}da=cz;db=C.Contains(da,"\xE2\x80\xB8");if(db){$s=213;continue;}$s=214;continue;case 213:dc=new F.Node.ptr(AE.nil,AE.nil,AE.nil,AE.nil,AE.nil,1,0,"\xE2\x80\xB8","",AS.nil);c.InsertAfter(dc);da=C.ReplaceAll(da,"#","");da=C.ReplaceAll(da,"\xE2\x80\xB8","");dd=C.TrimSpace(da);$s=215;case 215:if($c){$c=false;dd=dd.$blk();}if(dd&&dd.$blk!==undefined){break s;}da=dd;if(0<da.length){dc.Data=da+dc.Data;}case 214:$s=216;case 216:return;case 199:case 189:if(AE.nil===c.FirstChild){$s=32;continue;}de=AD.nil;if("\xE2\x80\x8B"===c.FirstChild.Data&&""===J.DomAttrValue(c,"style")&&!(AE.nil===c.FirstChild.NextSibling)){de=(new AD($stringToBytes(c.FirstChild.NextSibling.FirstChild.Data)));}else if(378116===c.FirstChild.DataAtom){de=(new AD($stringToBytes(c.FirstChild.FirstChild.Data)));if("\xE2\x80\x8B"===($bytesToString(de))){$s=32;continue;}}else{$s=32;continue;}if("math-inline"===g){ag.Type=304;ag.AppendChild(new D.Node.ptr("","","","",305,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ag.AppendChild(new D.Node.ptr("","","","",306,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,de,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ag.AppendChild(new D.Node.ptr("","","","",307,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(ag);}else if("html-inline"===g){ag.Type=10;ag.Tokens=de;d.Context.Tip.AppendChild(ag);}else if("code-inline"===g){ag.Tokens=de;d.Context.Tip.AppendChild(ag);}else if("html-entity"===g){ag.Type=16;ag.Tokens=de;d.Context.Tip.AppendChild(ag);}$s=217;case 217:return;case 57:ag.Type=16;df=J.DomText(c);$s=218;case 218:if($c){$c=false;df=df.$blk();}if(df&&df.$blk!==undefined){break s;}ag.Tokens=(new AD($stringToBytes(df)));d.Context.Tip.AppendChild(ag);$s=219;case 219:return;case 58:ag.Type=9;dg=J.DomHTML(c);$s=220;case 220:if($c){$c=false;dg=dg.$blk();}if(dg&&dg.$blk!==undefined){break s;}ag.Tokens=dg;ag.Tokens=(dh=A.SplitAfter(ag.Tokens,(new AD($stringToBytes("</summary>")))),(0>=dh.$length?($throwRuntimeError("index out of range"),undefined):dh.$array[dh.$offset+0]));d.Context.Tip.AppendChild(ag);$s=62;continue;case 59:$s=62;continue;case 60:$s=221;case 221:return;case 61:ag.Type=9;di=J.DomHTML(c);$s=222;case 222:if($c){$c=false;di=di.$blk();}if(di&&di.$blk!==undefined){break s;}ag.Tokens=di;d.Context.Tip.AppendChild(ag);$s=223;case 223:return;case 62:case 32:dj=c.FirstChild;case 224:if(!(!(dj===AE.nil))){$s=225;continue;}$r=e.genASTByVditorIRDOM(dj,d);$s=226;case 226:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}dj=dj.NextSibling;$s=224;continue;case 225:dk=c.DataAtom;if(dk===(1)){ag.AppendChild(new D.Node.ptr("","","","",37,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ag.AppendChild(new D.Node.ptr("","","","",38,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));dl=J.DomAttrValue(c,"href");if(!(""===e.RenderOptions.LinkBase)){dl=C.ReplaceAll(dl,e.RenderOptions.LinkBase,"");}if(!(""===e.RenderOptions.LinkPrefix)){dl=C.ReplaceAll(dl,e.RenderOptions.LinkPrefix,"");}ag.AppendChild(new D.Node.ptr("","","","",41,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(dl))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));dm=J.DomAttrValue(c,"title");if(!(""===dm)){ag.AppendChild(new D.Node.ptr("","","","",43,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ag.AppendChild(new D.Node.ptr("","","","",42,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(dm))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}ag.AppendChild(new D.Node.ptr("","","","",39,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else if(dk===(29191)){d.Context.Tip.AppendChild(new D.Node.ptr("","","","",9,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("</details>"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:R.ptr.prototype.genASTByVditorIRDOM,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,d,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred};return $f;}}};R.prototype.genASTByVditorIRDOM=function(c,d){return this.$val.genASTByVditorIRDOM(c,d);};R.ptr.prototype.SpinBlockDOM=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=e.blockDOM2Md(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;g=C.ReplaceAll(g,"\xE2\x80\x8B","");h=H.Parse("",(new AD($stringToBytes(g))),e.ParseOptions);$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;j=i.Root.FirstChild;k=i.Root.LastChild.Previous;if((1===j.Type)&&""===j.ID&&!(AF.nil===k)&&!(j===k.Previous)&&(455===k.Type)){l=k.Previous.ID;m="";j.ID=l;k.Previous.ID=m;n=k.Previous.KramdownIAL;o=AN.nil;j.KramdownIAL=n;k.Previous.KramdownIAL=o;j.InsertAfter(k);}if((455===j.Type)&&!(AF.nil===j.Next)&&(455===j.Next.Type)&&J.IsDocIAL(j.Next.Tokens)){p=H.Tokens2IAL(j.Tokens);q=H.IAL2Map(p);s=new D.Node.ptr((r=$mapIndex(q,$String.keyFor("id")),r!==undefined?r.v:""),"","","",1,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,p,false,"","","","","","","","","","","",0,"");j.InsertBefore(s);}$r=H.NestedInlines2FlattedSpansHybrid(i,false);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}t=e.Tree2BlockDOM(i,e.RenderOptions);$s=4;case 4:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}d=t;$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.SpinBlockDOM,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s};return $f;};R.prototype.SpinBlockDOM=function(c){return this.$val.SpinBlockDOM(c);};R.ptr.prototype.HTML2BlockDOM=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;g=e.HTML2Markdown(c);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}f=g;h=f[0];i=f[1];if(!($interfaceIsEqual($ifaceNil,i))){$s=2;continue;}$s=3;continue;case 2:j=i.Error();$s=4;case 4:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}d=j;$s=-1;return d;case 3:k=H.Parse("",(new AD($stringToBytes(h))),e.ParseOptions);$s=5;case 5:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;m=I.NewProtyleRenderer(l,e.RenderOptions);$s=6;case 6:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}n=m;o=e.HTML2BlockDOMRendererFuncs;p=0;q=o?o.keys():undefined;r=o?o.size:0;while(true){if(!(p<r)){break;}s=q.next().value;t=o.get(s);if(t===undefined){p++;continue;}u=t.k;v=t.v;w=u;(n.BaseRenderer.ExtRendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(D.NodeType.keyFor(w),{k:w,v:v});p++;}x=n.BaseRenderer.Render();$s=7;case 7:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}y=x;d=J.BytesToStr(y);$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.HTML2BlockDOM,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,$s};return $f;};R.prototype.HTML2BlockDOM=function(c){return this.$val.HTML2BlockDOM(c);};R.ptr.prototype.BlockDOM2HTML=function(c){var{c,d,e,f,g,h,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=e.blockDOM2Md(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=e.Md2HTML(g);$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}d=h;$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.BlockDOM2HTML,$c:true,$r,c,d,e,f,g,h,$s};return $f;};R.prototype.BlockDOM2HTML=function(c){return this.$val.BlockDOM2HTML(c);};R.ptr.prototype.BlockDOM2InlineBlockDOM=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d=[d];e="";f=this;g=f.blockDOM2Md(c);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=H.Parse("",(new AD($stringToBytes(h))),f.ParseOptions);$s=2;case 2:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;d[0]=AK.nil;$r=D.Walk(j.Root,(function(d){return function(k,l){var k,l;if(!l){return 2;}if(109===k.Type){k.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(" "))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));return 2;}if(!k.IsBlock()&&!((15===k.Type))&&!((302===k.Type))&&!((100===k.Type))&&!((107===k.Type))&&!((108===k.Type))&&!((109===k.Type))){d[0]=$append(d[0],k);return 1;}else if(9===k.Type){d[0]=$append(d[0],new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,k.Tokens,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));return 1;}return 2;};})(d));$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}k=AK.nil;l=j.Root.FirstChild;while(true){if(!(!(AF.nil===l))){break;}k=$append(k,l);l=l.Next;}m=k;n=0;while(true){if(!(n<m.$length)){break;}o=((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]);o.Unlink();n++;}p=d[0];q=0;while(true){if(!(q<p.$length)){break;}r=((q<0||q>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+q]);j.Root.AppendChild(r);q++;}s=I.NewProtyleRenderer(j,f.RenderOptions);$s=4;case 4:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=s;u=t.BaseRenderer.Render();$s=5;case 5:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}v=u;e=J.BytesToStr(v);w=C.TrimSpace(e);$s=6;case 6:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}e=w;$s=-1;return e;}return;}var $f={$blk:R.ptr.prototype.BlockDOM2InlineBlockDOM,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,$s};return $f;};R.prototype.BlockDOM2InlineBlockDOM=function(c){return this.$val.BlockDOM2InlineBlockDOM(c);};R.ptr.prototype.Md2BlockDOM=function(c,d){var{c,d,e,f,g,h,$s,$r,$c}=$restore(this,{c,d});$s=$s||0;s:while(true){switch($s){case 0:e="";f=this;h=f.Md2BlockDOMTree(c,d);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}g=h;e=g[0];$s=-1;return e;}return;}var $f={$blk:R.ptr.prototype.Md2BlockDOM,$c:true,$r,c,d,e,f,g,h,$s};return $f;};R.prototype.Md2BlockDOM=function(c,d){return this.$val.Md2BlockDOM(c,d);};R.ptr.prototype.Md2BlockDOMTree=function(c,d){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s,$r,$c}=$restore(this,{c,d});$s=$s||0;s:while(true){switch($s){case 0:e="";f=AB.nil;g=this;h=H.Parse("",(new AD($stringToBytes(c))),g.ParseOptions);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}f=h;$r=H.NestedInlines2FlattedSpansHybrid(f,false);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if(d){$s=3;continue;}$s=4;continue;case 3:$r=D.Walk(f.Root,(function(i,j){var i,j,k;if(!j){return 2;}if(i.IsEmptyBlockIAL()){k=new D.Node.ptr("","","","",1,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");k.KramdownIAL=H.Tokens2IAL(i.Tokens);k.ID=k.IALAttr("id");i.InsertBefore(k);return 2;}return 2;}));$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}case 4:i=I.NewProtyleRenderer(f,g.RenderOptions);$s=6;case 6:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;k=g.Md2BlockDOMRendererFuncs;l=0;m=k?k.keys():undefined;n=k?k.size:0;while(true){if(!(l<n)){break;}o=m.next().value;p=k.get(o);if(p===undefined){l++;continue;}q=p.k;r=p.v;s=q;(j.BaseRenderer.ExtRendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(D.NodeType.keyFor(s),{k:s,v:r});l++;}t=j.BaseRenderer.Render();$s=7;case 7:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}u=t;e=J.BytesToStr(u);$s=-1;return[e,f];}return;}var $f={$blk:R.ptr.prototype.Md2BlockDOMTree,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s};return $f;};R.prototype.Md2BlockDOMTree=function(c,d){return this.$val.Md2BlockDOMTree(c,d);};R.ptr.prototype.InlineMd2BlockDOM=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=H.Inline("",(new AD($stringToBytes(c))),e.ParseOptions);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;$r=H.NestedInlines2FlattedSpansHybrid(g,false);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=I.NewProtyleRenderer(g,e.RenderOptions);$s=3;case 3:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;j=e.Md2BlockDOMRendererFuncs;k=0;l=j?j.keys():undefined;m=j?j.size:0;while(true){if(!(k<m)){break;}n=l.next().value;o=j.get(n);if(o===undefined){k++;continue;}p=o.k;q=o.v;r=p;(i.BaseRenderer.ExtRendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(D.NodeType.keyFor(r),{k:r,v:q});k++;}s=i.BaseRenderer.Render();$s=4;case 4:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=s;d=J.BytesToStr(t);$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.InlineMd2BlockDOM,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s};return $f;};R.prototype.InlineMd2BlockDOM=function(c){return this.$val.InlineMd2BlockDOM(c);};R.ptr.prototype.BlockDOM2Md=function(c){var{c,d,e,f,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=e.blockDOM2Md(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}d=f;d=C.ReplaceAll(d,"\xE2\x80\x8B","");$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.BlockDOM2Md,$c:true,$r,c,d,e,f,$s};return $f;};R.prototype.BlockDOM2Md=function(c){return this.$val.BlockDOM2Md(c);};R.ptr.prototype.BlockDOM2StdMd=function(c){var{c,d,e,f,g,h,i,j,k,l,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;c=C.ReplaceAll(c,"\xE2\x80\x8B","");f=e.BlockDOM2Tree(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;$r=D.Walk(g.Root,(function(h,i){var h,i;if(!i){return 2;}if((455===h.Type)||(456===h.Type)){h.Tokens=AD.nil;}return 2;}));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=I.NewOptions();h.AutoSpace=false;h.FixTermTypo=false;h.KramdownBlockIAL=true;h.KramdownSpanIAL=true;h.KeepParagraphBeginningSpace=true;i=I.NewProtyleExportMdRenderer(g,h);$s=3;case 3:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;k=j.BaseRenderer.Render();$s=4;case 4:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;d=J.BytesToStr(l);$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.BlockDOM2StdMd,$c:true,$r,c,d,e,f,g,h,i,j,k,l,$s};return $f;};R.prototype.BlockDOM2StdMd=function(c){return this.$val.BlockDOM2StdMd(c);};R.ptr.prototype.BlockDOM2Text=function(c){var{c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=e.BlockDOM2Tree(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=g.Root.Text();$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}d=h;i=d;$s=3;case 3:return i;}return;}var $f={$blk:R.ptr.prototype.BlockDOM2Text,$c:true,$r,c,d,e,f,g,h,i,$s};return $f;};R.prototype.BlockDOM2Text=function(c){return this.$val.BlockDOM2Text(c);};R.ptr.prototype.BlockDOM2TextLen=function(c){var{c,d,e,f,g,h,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d=this;e=d.BlockDOM2Tree(c);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;g=f.Root.TextLen();$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$s=3;case 3:return h;}return;}var $f={$blk:R.ptr.prototype.BlockDOM2TextLen,$c:true,$r,c,d,e,f,g,h,$s};return $f;};R.prototype.BlockDOM2TextLen=function(c){return this.$val.BlockDOM2TextLen(c);};R.ptr.prototype.BlockDOM2Content=function(c){var{c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=e.BlockDOM2Tree(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=g.Root.Content();$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}d=h;i=d;$s=3;case 3:return i;}return;}var $f={$blk:R.ptr.prototype.BlockDOM2Content,$c:true,$r,c,d,e,f,g,h,i,$s};return $f;};R.prototype.BlockDOM2Content=function(c){return this.$val.BlockDOM2Content(c);};R.ptr.prototype.BlockDOM2EscapeMarkerContent=function(c){var{c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=e.BlockDOM2Tree(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=g.Root.EscapeMarkerContent();$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}d=h;i=d;$s=3;case 3:return i;}return;}var $f={$blk:R.ptr.prototype.BlockDOM2EscapeMarkerContent,$c:true,$r,c,d,e,f,g,h,i,$s};return $f;};R.prototype.BlockDOM2EscapeMarkerContent=function(c){return this.$val.BlockDOM2EscapeMarkerContent(c);};R.ptr.prototype.Tree2BlockDOM=function(c,d){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s,$r,$c}=$restore(this,{c,d});$s=$s||0;s:while(true){switch($s){case 0:e="";f=this;g=I.NewProtyleRenderer(c,d);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=f.Md2BlockDOMRendererFuncs;j=0;k=i?i.keys():undefined;l=i?i.size:0;while(true){if(!(j<l)){break;}m=k.next().value;n=i.get(m);if(n===undefined){j++;continue;}o=n.k;p=n.v;q=o;(h.BaseRenderer.ExtRendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(D.NodeType.keyFor(q),{k:q,v:p});j++;}r=h.BaseRenderer.Render();$s=2;case 2:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=r;e=J.BytesToStr(s);e=C.ReplaceAll(e,"\xE2\x80\xB8","<wbr>");$s=-1;return e;}return;}var $f={$blk:R.ptr.prototype.Tree2BlockDOM,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,$s};return $f;};R.prototype.Tree2BlockDOM=function(c,d){return this.$val.Tree2BlockDOM(c,d);};R.ptr.prototype.RenderNodeBlockDOM=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d=[d];e=this;f=new D.Node.ptr("","","","",0,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");g=new H.Tree.ptr(f,new H.Context.ptr(AB.nil,e.ParseOptions,AF.nil,AF.nil,AD.nil,0,0,0,0,0,0,false,false,false,false,AF.nil,AF.nil),AH.nil,AI.nil,"","","","","",AJ.nil,new $Int64(0,0),new $Int64(0,0),"");h=I.NewProtyleRenderer(g,e.RenderOptions);$s=1;case 1:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}d[0]=h;i=e.Md2BlockDOMRendererFuncs;j=0;k=i?i.keys():undefined;l=i?i.size:0;while(true){if(!(j<l)){break;}m=k.next().value;n=i.get(m);if(n===undefined){j++;continue;}o=n.k;p=n.v;q=o;(d[0].BaseRenderer.ExtRendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(D.NodeType.keyFor(q),{k:q,v:p});j++;}d[0].BaseRenderer.Writer=new A.Buffer.ptr(AD.nil,0,0);$r=D.Walk(c,(function(d){return function $b(r,s){var{r,s,t,u,v,w,$s,$r,$c}=$restore(this,{r,s});$s=$s||0;s:while(true){switch($s){case 0:u=(t=$mapIndex(d[0].BaseRenderer.RendererFuncs,D.NodeType.keyFor(r.Type)),t!==undefined?t.v:$throwNilPointerError);v=u(r,s);$s=1;case 1:if($c){$c=false;v=v.$blk();}if(v&&v.$blk!==undefined){break s;}w=v;$s=2;case 2:return w;}return;}var $f={$blk:$b,$c:true,$r,r,s,t,u,v,w,$s};return $f;};})(d));$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return d[0].BaseRenderer.Writer.String();}return;}var $f={$blk:R.ptr.prototype.RenderNodeBlockDOM,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,$s};return $f;};R.prototype.RenderNodeBlockDOM=function(c){return this.$val.RenderNodeBlockDOM(c);};R.ptr.prototype.BlockDOM2Tree=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d=[d];e=AB.nil;d[0]=this;c=C.ReplaceAll(c,"\n<wbr>\n</strong>","</strong>\n<wbr>\n");c=C.ReplaceAll(c,"\n<wbr>\n</em>","</em>\n<wbr>\n");c=C.ReplaceAll(c,"\n<wbr>\n</s>","</s>\n<wbr>\n");c=C.ReplaceAll(c,"\n<wbr>\n</u>","</u>\n<wbr>\n");c=C.ReplaceAll(c,"\n<wbr>\n</span>","</span>\n<wbr>\n");c=C.ReplaceAll(c,"`<wbr></span>","</span>`<wbr>");c=C.ReplaceAll(c,"<wbr>","\xE2\x80\xB8");f=0;g=0;h=f;i=g;j=c;k=0;while(true){if(!(k<j.length)){break;}l=$decodeRune(j,k);m=l[0];if(32===m){h=h+(1)>>0;}else{break;}k+=l[1];}n=c.length-1>>0;while(true){if(!(n>=0)){break;}if(32===c.charCodeAt(n)){i=i+(1)>>0;}else{break;}n=n-(1)>>0;}o=C.TrimSpace(c);$s=1;case 1:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}c=o;c=C.Repeat(" ",h)+c+C.Repeat(" ",i);c=C.ReplaceAll(c,"\t\n","\n");c=C.ReplaceAll(c," \n"," \n");p=d[0].parseHTML(c);$s=2;case 2:if($c){$c=false;p=p.$blk();}if(p&&p.$blk!==undefined){break s;}q=p;if(AE.nil===q){$s=-1;return e;}$r=d[0].adjustVditorDOM(q);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}e=new H.Tree.ptr(new D.Node.ptr("","","","",0,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""),new H.Context.ptr(AB.nil,d[0].ParseOptions,AF.nil,AF.nil,AD.nil,0,0,0,0,0,0,false,false,false,false,AF.nil,AF.nil),AH.nil,AI.nil,"","","","","",AJ.nil,new $Int64(0,0),new $Int64(0,0),"");e.Context.Tip=e.Root;r=q.FirstChild;case 4:if(!(!(AE.nil===r))){$s=5;continue;}$r=d[0].genASTByBlockDOM(r,e);$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}r=r.NextSibling;$s=4;continue;case 5:$r=D.Walk(e.Root,(function(d){return function $b(s,t){var{s,t,u,$s,$r,$c}=$restore(this,{s,t});$s=$s||0;s:while(true){switch($s){case 0:if(t){$s=1;continue;}$s=2;continue;case 1:u=s.Type;if((u===(10))||(u===(9))||(u===(29))||(u===(15))||(u===(306))||(u===(302))||(u===(27))||(u===(304))){$s=4;continue;}if((u===(22))||(u===(17))||(u===(101))||(u===(520))){$s=5;continue;}if(u===(530)){$s=6;continue;}if(u===(16)){$s=7;continue;}$s=8;continue;case 4:if(!(AF.nil===s.Next)&&(27===s.Next.Type)&&(s.CodeMarkerLen===s.Next.CodeMarkerLen)&&!(AF.nil===s.FirstChild)&&!(AF.nil===s.FirstChild.Next)){s.FirstChild.Next.Tokens=$appendSlice(s.FirstChild.Next.Tokens,s.Next.FirstChild.Next.Tokens);s.Next.Unlink();}$s=8;continue;case 5:d[0].MergeSameSpan(s);$s=8;continue;case 6:$r=d[0].MergeSameTextMark(s);$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=8;continue;case 7:s.Tokens=A.ReplaceAll(s.Tokens,(new AD($stringToBytes("\xC2\xA0"))),(new AD($stringToBytes(" "))));case 8:case 3:case 2:$s=-1;return 2;}return;}var $f={$blk:$b,$c:true,$r,s,t,u,$s};return $f;};})(d));$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return e;}return;}var $f={$blk:R.ptr.prototype.BlockDOM2Tree,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,$s};return $f;};R.prototype.BlockDOM2Tree=function(c){return this.$val.BlockDOM2Tree(c);};R.ptr.prototype.MergeSameTextMark=function(c){var{aa,ab,ac,ad,ae,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d=this;if(AF.nil===c.Previous){$s=-1;return;}e=false;f=false;if(456===c.Previous.Type){$s=1;continue;}$s=2;continue;case 1:if(AF.nil===c.Next||!((456===c.Next.Type))||AF.nil===c.Previous.Previous){$s=-1;return;}if(!A.Equal(c.Previous.Tokens,c.Next.Tokens)){$s=-1;return;}g=c.IsSameTextMarkType(c.Previous.Previous);$s=6;case 6:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}if(!g){$s=4;continue;}$s=5;continue;case 4:$s=-1;return;case 5:e=true;$s=3;continue;case 2:if(!((16===c.Previous.Type)&&!C.Contains(c.Previous.TokensStr()," ")&&!C.Contains(c.Previous.TokensStr(),"\n"))){i=false;$s=11;continue s;}j=C.TrimSpace(C.ReplaceAll(c.Previous.TokensStr(),"\xE2\x80\x8B",""));$s=12;case 12:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=""===j;case 11:if(!(i&&!(AF.nil===c.Previous.Previous))){h=false;$s=10;continue s;}k=c.IsSameTextMarkType(c.Previous.Previous);$s=13;case 13:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}h=k;case 10:if(h){$s=7;continue;}$s=8;continue;case 7:f=true;$s=9;continue;case 8:if(!((c.Type===c.Previous.Type))){l=true;$s=16;continue s;}m=c.IsSameTextMarkType(c.Previous);$s=17;case 17:if($c){$c=false;m=m.$blk();}if(m&&m.$blk!==undefined){break s;}l=!m;case 16:if(l){$s=14;continue;}$s=15;continue;case 14:$s=-1;return;case 15:case 9:case 3:n=C.Split(c.TextMarkType," ");o=$makeMap($String.keyFor,[]);p=n;q=0;while(true){if(!(q<p.$length)){break;}r=((q<0||q>=p.$length)?($throwRuntimeError("index out of range"),undefined):p.$array[p.$offset+q]);s=r;(o||$throwRuntimeError("assignment to entry in nil map")).set($String.keyFor(s),{k:s,v:true});q++;}t=AJ.nil;u=o;v=0;w=u?u.keys():undefined;x=u?u.size:0;while(true){if(!(v<x)){break;}y=w.next().value;z=u.get(y);if(z===undefined){v++;continue;}aa=z.k;ab=aa;if(ab===("code")||ab===("em")||ab===("strong")||ab===("s")||ab===("mark")||ab===("u")||ab===("sub")||ab===("sup")||ab===("kbd")||ab===("text")||ab===("tag")||ab===("block-ref")||ab===("a")){t=$append(t,aa);}v++;}ac=t;ad=0;while(true){if(!(ad<ac.$length)){break;}ae=((ad<0||ad>=ac.$length)?($throwRuntimeError("index out of range"),undefined):ac.$array[ac.$offset+ad]);$mapDelete(o,$String.keyFor(ae));ad++;}if(0<(o?o.size:0)){$s=-1;return;}if(e||f){c.TextMarkTextContent=c.Previous.Previous.TextMarkTextContent+c.TextMarkTextContent;c.Previous.Previous.Unlink();}else{c.TextMarkTextContent=c.Previous.TextMarkTextContent+c.TextMarkTextContent;}c.Previous.Unlink();$r=c.SortTextMarkDataTypes();$s=18;case 18:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return;}return;}var $f={$blk:R.ptr.prototype.MergeSameTextMark,$c:true,$r,aa,ab,ac,ad,ae,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};R.prototype.MergeSameTextMark=function(c){return this.$val.MergeSameTextMark(c);};R.ptr.prototype.MergeSameSpan=function(c){var c,d,e,f,g,h,i;d=this;if(AF.nil===c.Next||!((c.Type===c.Next.Type))){return;}if(!(AF.nil===c.Next.Next)&&(456===c.Next.Next.Type)){return;}e=AK.nil;c.Next.FirstChild.Unlink();c.Next.LastChild.Unlink();f=c.Next.FirstChild;while(true){if(!(!(AF.nil===f))){break;}e=$append(e,f);f=f.Next;}g=e;h=0;while(true){if(!(h<g.$length)){break;}i=((h<0||h>=g.$length)?($throwRuntimeError("index out of range"),undefined):g.$array[g.$offset+h]);c.LastChild.InsertBefore(i);h++;}c.Next.Unlink();};R.prototype.MergeSameSpan=function(c){return this.$val.MergeSameSpan(c);};R.ptr.prototype.CancelSuperBlock=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=e.BlockDOM2Tree(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!((475===g.Root.FirstChild.Type))){d=c;$s=-1;return d;}h=g.Root.FirstChild;i=AK.nil;j=h.FirstChild;while(true){if(!(!(AF.nil===j))){break;}i=$append(i,j);j=j.Next;}k=i;l=0;while(true){if(!(l<k.$length)){break;}m=((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]);g.Root.AppendChild(m);l++;}h.Unlink();n=e.Tree2BlockDOM(g,e.RenderOptions);$s=2;case 2:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}d=n;$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.CancelSuperBlock,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,$s};return $f;};R.prototype.CancelSuperBlock=function(c){return this.$val.CancelSuperBlock(c);};R.ptr.prototype.CancelList=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=e.BlockDOM2Tree(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!((7===g.Root.FirstChild.Type))){d=c;$s=-1;return d;}h=g.Root.FirstChild;i=AK.nil;j=AK.nil;k=i;l=j;m=h.FirstChild;while(true){if(!(!(AF.nil===m))){break;}n=m.FirstChild;while(true){if(!(!(AF.nil===n))){break;}if(!((100===n.Type))){k=$append(k,n);}n=n.Next;}l=$append(l,m);m=m.Next;}o=k;p=0;while(true){if(!(p<o.$length)){break;}q=((p<0||p>=o.$length)?($throwRuntimeError("index out of range"),undefined):o.$array[o.$offset+p]);g.Root.AppendChild(q);p++;}r=l;s=0;while(true){if(!(s<r.$length)){break;}t=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);t.Unlink();s++;}h.Unlink();u=e.Tree2BlockDOM(g,e.RenderOptions);$s=2;case 2:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}d=u;$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.CancelList,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s};return $f;};R.prototype.CancelList=function(c){return this.$val.CancelList(c);};R.ptr.prototype.CancelBlockquote=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=e.BlockDOM2Tree(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!((5===g.Root.FirstChild.Type))){d=c;$s=-1;return d;}h=g.Root.FirstChild;i=AK.nil;j=AK.nil;k=i;l=j;m=h.FirstChild;while(true){if(!(!(AF.nil===m))){break;}if(!((6===m.Type))){k=$append(k,m);}l=$append(l,m);m=m.Next;}n=k;o=0;while(true){if(!(o<n.$length)){break;}p=((o<0||o>=n.$length)?($throwRuntimeError("index out of range"),undefined):n.$array[n.$offset+o]);g.Root.AppendChild(p);o++;}h.Unlink();q=e.Tree2BlockDOM(g,e.RenderOptions);$s=2;case 2:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}d=q;$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.CancelBlockquote,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,$s};return $f;};R.prototype.CancelBlockquote=function(c){return this.$val.CancelBlockquote(c);};R.ptr.prototype.Blocks2Ps=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=e.BlockDOM2Tree(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=g.Root.FirstChild;i=AK.nil;j=AK.nil;k=i;l=j;m=h;while(true){if(!(!(AF.nil===m))){break;}n=m.Type;if(n===(2)){m.Type=1;}else if(n===(5)){o=m.FirstChild;while(true){if(!(!(AF.nil===o))){break;}if(6===o.Type){l=$append(l,o);o=o.Next;continue;}k=$append(k,o);o=o.Next;}l=$append(l,m);}else if(n===(7)){p=m.FirstChild;while(true){if(!(!(AF.nil===p))){break;}q=p.FirstChild;while(true){if(!(!(AF.nil===q))){break;}if(!((100===q.Type))){k=$append(k,q);}q=q.Next;}l=$append(l,p);p=p.Next;}l=$append(l,m);}m=m.Next;}r=l;s=0;while(true){if(!(s<r.$length)){break;}t=((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]);t.Unlink();s++;}u=k;v=0;while(true){if(!(v<u.$length)){break;}w=((v<0||v>=u.$length)?($throwRuntimeError("index out of range"),undefined):u.$array[u.$offset+v]);g.Root.AppendChild(w);v++;}x=e.Tree2BlockDOM(g,e.RenderOptions);$s=2;case 2:if($c){$c=false;x=x.$blk();}if(x&&x.$blk!==undefined){break s;}d=x;$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.Blocks2Ps,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,$s};return $f;};R.prototype.Blocks2Ps=function(c){return this.$val.Blocks2Ps(c);};R.ptr.prototype.Blocks2Hs=function(c,d){var{c,d,e,f,g,h,i,j,k,l,$s,$r,$c}=$restore(this,{c,d});$s=$s||0;s:while(true){switch($s){case 0:e="";f=this;g=f.BlockDOM2Tree(c);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=h.Root.FirstChild;j=i;while(true){if(!(!(AF.nil===j))){break;}if((1===j.Type)||(2===j.Type)){j.Type=2;k=B.Atoi(d);j.HeadingLevel=k[0];}j=j.Next;}l=f.Tree2BlockDOM(h,f.RenderOptions);$s=2;case 2:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}e=l;$s=-1;return e;}return;}var $f={$blk:R.ptr.prototype.Blocks2Hs,$c:true,$r,c,d,e,f,g,h,i,j,k,l,$s};return $f;};R.prototype.Blocks2Hs=function(c,d){return this.$val.Blocks2Hs(c,d);};R.ptr.prototype.OL2TL=function(c){var{c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=e.BlockDOM2Tree(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;g.Root.FirstChild.ListData.Typ=3;h=g.Root.FirstChild.FirstChild;while(true){if(!(!(AF.nil===h))){break;}if(8===h.Type){h.ListData.Typ=3;h.PrependChild(new D.Node.ptr("","","","",100,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}h=h.Next;}i=e.Tree2BlockDOM(g,e.RenderOptions);$s=2;case 2:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}d=i;$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.OL2TL,$c:true,$r,c,d,e,f,g,h,i,$s};return $f;};R.prototype.OL2TL=function(c){return this.$val.OL2TL(c);};R.ptr.prototype.UL2TL=function(c){var{c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=e.BlockDOM2Tree(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;g.Root.FirstChild.ListData.Typ=3;h=g.Root.FirstChild.FirstChild;while(true){if(!(!(AF.nil===h))){break;}if(8===h.Type){h.ListData.Typ=3;h.PrependChild(new D.Node.ptr("","","","",100,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}h=h.Next;}i=e.Tree2BlockDOM(g,e.RenderOptions);$s=2;case 2:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}d=i;$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.UL2TL,$c:true,$r,c,d,e,f,g,h,i,$s};return $f;};R.prototype.UL2TL=function(c){return this.$val.UL2TL(c);};R.ptr.prototype.TL2OL=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,o,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=e.BlockDOM2Tree(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=g.Root.FirstChild;if(!((7===h.Type))||!((3===h.ListData.Typ))){d=c;$s=-1;return d;}i=1;h.ListData.Typ=1;j=AK.nil;k=h.FirstChild;while(true){if(!(!(AF.nil===k))){break;}if(455===k.Type){k=k.Next;continue;}j=$append(j,k.FirstChild);k.ListData.Typ=1;k.ListData.Num=i;i=i+(1)>>0;k=k.Next;}l=j;m=0;while(true){if(!(m<l.$length)){break;}n=((m<0||m>=l.$length)?($throwRuntimeError("index out of range"),undefined):l.$array[l.$offset+m]);n.Unlink();m++;}o=e.Tree2BlockDOM(g,e.RenderOptions);$s=2;case 2:if($c){$c=false;o=o.$blk();}if(o&&o.$blk!==undefined){break s;}d=o;$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.TL2OL,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,$s};return $f;};R.prototype.TL2OL=function(c){return this.$val.TL2OL(c);};R.ptr.prototype.TL2UL=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=e.BlockDOM2Tree(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=g.Root.FirstChild;if(!((7===h.Type))||!((3===h.ListData.Typ))){d=c;$s=-1;return d;}h.ListData.Typ=0;i=AK.nil;j=h.FirstChild;while(true){if(!(!(AF.nil===j))){break;}if(455===j.Type){j=j.Next;continue;}i=$append(i,j.FirstChild);j.ListData.Typ=0;j=j.Next;}k=i;l=0;while(true){if(!(l<k.$length)){break;}m=((l<0||l>=k.$length)?($throwRuntimeError("index out of range"),undefined):k.$array[k.$offset+l]);m.Unlink();l++;}n=e.Tree2BlockDOM(g,e.RenderOptions);$s=2;case 2:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}d=n;$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.TL2UL,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,$s};return $f;};R.prototype.TL2UL=function(c){return this.$val.TL2UL(c);};R.ptr.prototype.OL2UL=function(c){var{c,d,e,f,g,h,i,j,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=e.BlockDOM2Tree(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=g.Root.FirstChild;if(!((7===h.Type))){d=c;$s=-1;return d;}h.ListData.Typ=0;i=h.FirstChild;while(true){if(!(!(AF.nil===i))){break;}if(455===i.Type){i=i.Next;continue;}i.ListData.Typ=0;i=i.Next;}j=e.Tree2BlockDOM(g,e.RenderOptions);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}d=j;$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.OL2UL,$c:true,$r,c,d,e,f,g,h,i,j,$s};return $f;};R.prototype.OL2UL=function(c){return this.$val.OL2UL(c);};R.ptr.prototype.UL2OL=function(c){var{c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=e.BlockDOM2Tree(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=g.Root.FirstChild;if(!((7===h.Type))){d=c;$s=-1;return d;}i=1;h.ListData.Typ=1;j=h.FirstChild;while(true){if(!(!(AF.nil===j))){break;}if(455===j.Type){j=j.Next;continue;}j.ListData.Typ=1;j.ListData.Num=i;i=i+(1)>>0;j=j.Next;}k=e.Tree2BlockDOM(g,e.RenderOptions);$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}d=k;$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.UL2OL,$c:true,$r,c,d,e,f,g,h,i,j,k,$s};return $f;};R.prototype.UL2OL=function(c){return this.$val.UL2OL(c);};R.ptr.prototype.blockDOM2Md=function(c){var{c,d,e,f,g,h,i,j,k,l,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=e.BlockDOM2Tree(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=I.NewOptions();h.AutoSpace=false;h.FixTermTypo=false;h.KramdownBlockIAL=true;h.KramdownSpanIAL=true;h.KeepParagraphBeginningSpace=true;h.ProtyleWYSIWYG=true;h.SuperBlock=true;i=I.NewFormatRenderer(g,h);$s=2;case 2:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;k=j.BaseRenderer.Render();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;d=($bytesToString(l));$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.blockDOM2Md,$c:true,$r,c,d,e,f,g,h,i,j,k,l,$s};return $f;};R.prototype.blockDOM2Md=function(c){return this.$val.blockDOM2Md(c);};R.ptr.prototype.genASTByBlockDOM=function(c,d){var{aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r,$c}=$restore(this,{c,d});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);e=this;f=J.DomAttrValue(c,"class");if("protyle-attr"===f||C.Contains(f,"__copy")||C.Contains(f,"protyle-linenumber__rows")){$s=1;continue;}$s=2;continue;case 1:$s=3;case 3:return;case 2:if("1"===J.DomAttrValue(c,"spin")){$s=4;continue;}$s=5;continue;case 4:$s=6;case 6:return;case 5:if(C.Contains(f,"protyle-action")){$s=7;continue;}$s=8;continue;case 7:if(11===d.Context.Tip.Type){$s=9;continue;}if(8===d.Context.Tip.Type){$s=10;continue;}$s=11;continue;case 9:g=c.FirstChild;h="";if(!(AE.nil===g.FirstChild)){h=g.FirstChild.Data;}d.Context.Tip.AppendChild(new D.Node.ptr("","","","",14,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,J.StrToBytes(h),AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));i=J.DomText(c.NextSibling);$s=12;case 12:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;if(C.HasSuffix(j,"\n\n\xE2\x80\xB8")){j=C.TrimSuffix(j,"\n\n\xE2\x80\xB8");j=j+("\n\xE2\x80\xB8\n");}k=C.Split(j,"\n");l=new A.Buffer.ptr(AD.nil,0,0);m=k;n=0;case 13:if(!(n<m.$length)){$s=14;continue;}o=n;p=((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]);if(C.Contains(p,"```")){p=C.ReplaceAll(p,"```","\xE2\x80\x8D```");}else{p=C.ReplaceAll(p,"\xE2\x80\x8D","");}q=l.WriteString(p);$s=15;case 15:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}q;if(o<(k.$length-1>>0)){$s=16;continue;}$s=17;continue;case 16:r=l.WriteByte(10);$s=18;case 18:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;case 17:n++;$s=13;continue;case 14:d.Context.Tip.AppendChild(new D.Node.ptr("","","","",15,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,l.Bytes(),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));$s=11;continue;case 10:if(3===d.Context.Tip.ListData.Typ){d.Context.Tip.AppendChild(new D.Node.ptr("","","","",100,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,C.Contains(J.DomAttrValue(c.Parent,"class"),"protyle-task--done"),AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}case 11:$s=19;case 19:return;case 8:if("true"===J.DomAttrValue(c,"contenteditable")){$s=20;continue;}$s=21;continue;case 20:$r=e.genASTContenteditable(c,d);$s=22;case 22:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=23;case 23:return;case 21:s=D.Str2NodeType(J.DomAttrValue(c,"data-type"));$s=24;case 24:if($c){$c=false;s=s.$blk();}if(s&&s.$blk!==undefined){break s;}t=s;u=J.DomAttrValue(c,"data-node-id");v=new D.Node.ptr(u,"","","",0,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");if(!(""===v.ID)&&!e.parentIs(c,new AT([365829]))){$s=25;continue;}$s=26;continue;case 25:v.KramdownIAL=new AN([new AJ(["id",v.ID])]);w=e.setBlockIAL(c,v);$s=27;case 27:if($c){$c=false;w=w.$blk();}if(w&&w.$blk!==undefined){break s;}x=w;y=new D.Node.ptr("","","","",455,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,x,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");$deferred.push([$methodVal(d.Context,"TipAppendChild"),[y]]);case 26:z=t;if(z===(465)){$s=29;continue;}if(z===(106)){$s=30;continue;}if(z===(1)){$s=31;continue;}if(z===(2)){$s=32;continue;}if(z===(5)){$s=33;continue;}if(z===(7)){$s=34;continue;}if(z===(8)){$s=35;continue;}if(z===(495)){$s=36;continue;}if(z===(475)){$s=37;continue;}if(z===(300)){$s=38;continue;}if(z===(11)){$s=39;continue;}if(z===(9)){$s=40;continue;}if(z===(425)){$s=41;continue;}if(z===(4)){$s=42;continue;}if(z===(500)){$s=43;continue;}if(z===(535)){$s=44;continue;}if(z===(510)){$s=45;continue;}if(z===(505)){$s=46;continue;}if(z===(550)){$s=47;continue;}if(z===(560)){$s=48;continue;}$s=49;continue;case 29:v.Type=465;v.AppendChild(new D.Node.ptr("","","","",466,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));v.AppendChild(new D.Node.ptr("","","","",466,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));aa=J.DomAttrValue(c,"data-content");aa=C.ReplaceAll(aa,"\n","_esc_newline_");v.AppendChild(new D.Node.ptr("","","","",468,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(aa),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));v.AppendChild(new D.Node.ptr("","","","",467,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));v.AppendChild(new D.Node.ptr("","","","",467,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(v);$s=51;case 51:return;case 30:v.Type=106;ab=AM.nil;if(AE.nil===c.FirstChild){$s=52;continue;}$s=53;continue;case 52:v.Type=1;d.Context.Tip.AppendChild(v);d.Context.Tip=v;d.Context.ParentTip();$s=54;case 54:return;case 53:if(e.parentIs(c,new AT([365829]))){$s=55;continue;}$s=56;continue;case 55:ac=J.DomText(c);$s=57;case 57:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ad=ac;ae=C.TrimSpace(ad);$s=58;case 58:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}v.Tokens=(new AD($stringToBytes(ae)));d.Context.Tip.AppendChild(v);$s=59;case 59:return;case 56:af=c.FirstChild;ag=e.domChild(af,365829);if(AE.nil===ag){$s=60;continue;}$s=61;continue;case 60:v.Type=1;d.Context.Tip.AppendChild(v);d.Context.Tip=v;d.Context.ParentTip();$s=62;case 62:return;case 61:ah=e.domChild(ag,208901);if(AE.nil===ah||AE.nil===ah.FirstChild||AE.nil===ah.FirstChild.FirstChild){$s=63;continue;}$s=64;continue;case 63:v.Type=1;d.Context.Tip.AppendChild(v);d.Context.Tip=v;d.Context.ParentTip();$s=65;case 65:return;case 64:ai=ah.FirstChild.FirstChild;while(true){if(!(!(AE.nil===ai))){break;}aj=J.DomAttrValue(ai,"align");ak=aj;if(ak===("left")){ab=$append(ab,1);}else if(ak===("center")){ab=$append(ab,2);}else if(ak===("right")){ab=$append(ab,3);}else{ab=$append(ab,0);}ai=ai.NextSibling;}v.TableAligns=ab;v.Tokens=AD.nil;d.Context.Tip.AppendChild(v);d.Context.Tip=v;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$r=e.genASTContenteditable(ag,d);$s=66;case 66:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=67;case 67:return;case 31:v.Type=1;d.Context.Tip.AppendChild(v);d.Context.Tip=v;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=50;continue;case 32:al=J.DomText(c);$s=68;case 68:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}am=al;if(e.parentIs(c,new AT([365829]))){$s=69;continue;}$s=70;continue;case 69:an=C.TrimSpace(am);$s=71;case 71:if($c){$c=false;an=an.$blk();}if(an&&an.$blk!==undefined){break s;}v.Tokens=(new AD($stringToBytes(an)));while(true){if(!(A.HasPrefix(v.Tokens,(new AD($stringToBytes("#")))))){break;}v.Tokens=A.TrimPrefix(v.Tokens,(new AD($stringToBytes("#"))));}d.Context.Tip.AppendChild(v);$s=72;case 72:return;case 70:ao=$substring(J.DomAttrValue(c,"data-subtype"),1);ap=C.TrimPrefix(am," ");if(C.HasPrefix(ap,"#")){$s=73;continue;}$s=74;continue;case 73:aq=C.Index(ap," \xE2\x80\xB8");if(0<aq){$s=75;continue;}$s=76;continue;case 75:ap=$substring(ap,0,aq);if(!(AE.nil===c.FirstChild)&&!(AE.nil===c.FirstChild.FirstChild)){ar=C.TrimPrefix(C.TrimPrefix(c.FirstChild.FirstChild.Data,ap)," ");c.FirstChild.FirstChild.Data=ar;}as=K.Sprintf("%d",new AU([new $Int(C.Count(ap,"#"))]));$s=77;case 77:if($c){$c=false;as=as.$blk();}if(as&&as.$blk!==undefined){break s;}ao=as;case 76:case 74:v.Type=2;at=B.Atoi(ao);v.HeadingLevel=at[0];d.Context.Tip.AppendChild(v);d.Context.Tip=v;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=50;continue;case 33:au=J.DomText(c);$s=78;case 78:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}av=C.TrimSpace(au);$s=79;case 79:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}aw=av;if("\xE2\x80\xB8"===aw){v.Type=16;v.Tokens=(new AD($stringToBytes(aw)));d.Context.Tip.AppendChild(v);}v.Type=5;v.AppendChild(new D.Node.ptr("","","","",6,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(">"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(v);d.Context.Tip=v;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=50;continue;case 34:v.Type=7;ax=J.DomAttrValue(c,"data-marker");v.ListData=new D.ListData.ptr(0,false,0,0,0,0,0,false,AD.nil,0);ay=J.DomAttrValue(c,"data-subtype");if("u"===ay){v.ListData.Typ=0;}else if("o"===ay){v.ListData.Typ=1;}else if("t"===ay){v.ListData.Typ=3;}v.ListData.Marker=(new AD($stringToBytes(ax)));d.Context.Tip.AppendChild(v);d.Context.Tip=v;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=50;continue;case 35:az=J.DomAttrValue(c,"data-marker");if(!((7===d.Context.Tip.Type))){ba=new D.Node.ptr("","","","",0,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");ba.Type=7;ba.ListData=new D.ListData.ptr(0,false,0,0,0,0,0,false,AD.nil,0);bb=J.DomAttrValue(c,"data-subtype");if("u"===bb){ba.ListData.Typ=0;ba.ListData.BulletChar=42;}else if("o"===bb){ba.ListData.Typ=1;bc=B.Atoi($substring(az,0,(az.length-1>>0)));ba.ListData.Num=bc[0];ba.ListData.Delimiter=46;}else if("t"===bb){ba.ListData.Typ=3;ba.ListData.BulletChar=42;}d.Context.Tip.AppendChild(ba);d.Context.Tip=ba;}v.Type=8;v.ListData=new D.ListData.ptr(0,false,0,0,0,0,0,false,AD.nil,0);bd=J.DomAttrValue(c,"data-subtype");if("u"===bd){v.ListData.Typ=0;v.ListData.BulletChar=42;}else if("o"===bd){v.ListData.Typ=1;be=B.Atoi($substring(az,0,(az.length-1>>0)));v.ListData.Num=be[0];v.ListData.Delimiter=46;}else if("t"===bd){v.ListData.Typ=3;v.ListData.BulletChar=42;}v.ListData.Marker=(new AD($stringToBytes(az)));d.Context.Tip.AppendChild(v);d.Context.Tip=v;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=50;continue;case 36:v.Type=495;d.Context.Tip.AppendChild(v);d.Context.Tip=v;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=50;continue;case 37:v.Type=475;d.Context.Tip.AppendChild(v);v.AppendChild(new D.Node.ptr("","","","",476,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));bf=J.DomAttrValue(c,"data-sb-layout");v.AppendChild(new D.Node.ptr("","","","",477,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(bf))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip=v;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=50;continue;case 38:v.Type=300;v.AppendChild(new D.Node.ptr("","","","",301,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));bg=J.DomAttrValue(c,"data-content");bg=F.UnescapeHTMLStr(bg);v.AppendChild(new D.Node.ptr("","","","",302,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(bg),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));v.AppendChild(new D.Node.ptr("","","","",303,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(v);$s=80;case 80:return;case 39:v.Type=11;v.IsFencedCodeBlock=true;v.AppendChild(new D.Node.ptr("","","","",12,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes("```"),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));bh=J.DomAttrValue(c,"data-subtype");if(!(""===bh)){$s=81;continue;}$s=82;continue;case 81:v.AppendChild(new D.Node.ptr("","","","",14,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,J.StrToBytes(bh),AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));bi=J.DomAttrValue(c,"data-content");v.AppendChild(new D.Node.ptr("","","","",15,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(bi),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));v.AppendChild(new D.Node.ptr("","","","",13,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes("```"),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(v);$s=83;case 83:return;case 82:d.Context.Tip.AppendChild(v);d.Context.Tip=v;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=50;continue;case 40:v.Type=9;bj=J.DomAttrValue(c.FirstChild.NextSibling.FirstChild,"data-content");bj=F.UnescapeHTMLStr(bj);v.Tokens=J.StrToBytes(bj);d.Context.Tip.AppendChild(v);$s=84;case 84:return;case 41:v.Type=425;d.Context.Tip.AppendChild(v);d.Context.Tip=v;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=50;continue;case 42:v.Type=4;d.Context.Tip.AppendChild(v);$s=85;case 85:return;case 43:v.Type=500;c=e.domChild(c.FirstChild,195590);bk=J.DomHTML(c);$s=86;case 86:if($c){$c=false;bk=bk.$blk();}if(bk&&bk.$blk!==undefined){break s;}v.Tokens=bk;d.Context.Tip.AppendChild(v);$s=87;case 87:return;case 44:v.Type=535;c=e.domChild(c.FirstChild,195590);bl=J.DomHTML(c);$s=88;case 88:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}v.Tokens=bl;d.Context.Tip.AppendChild(v);$s=89;case 89:return;case 45:v.Type=510;c=e.domChild(c.FirstChild,192773);bm=J.DomHTML(c);$s=90;case 90:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}v.Tokens=bm;d.Context.Tip.AppendChild(v);$s=91;case 91:return;case 46:v.Type=505;c=e.domChild(c.FirstChild,70917);bn=J.DomHTML(c);$s=92;case 92:if($c){$c=false;bn=bn.$blk();}if(bn&&bn.$blk!==undefined){break s;}v.Tokens=bn;d.Context.Tip.AppendChild(v);$s=93;case 93:return;case 47:v.Type=550;v.AttributeViewID=J.DomAttrValue(c,"data-av-id");if(""===v.AttributeViewID){$s=94;continue;}$s=95;continue;case 94:bo=D.NewNodeID();$s=96;case 96:if($c){$c=false;bo=bo.$blk();}if(bo&&bo.$blk!==undefined){break s;}v.AttributeViewID=bo;case 95:v.AttributeViewType=J.DomAttrValue(c,"data-av-type");d.Context.Tip.AppendChild(v);$s=97;case 97:return;case 48:v.Type=560;v.CustomBlockInfo=J.DomAttrValue(c,"data-info");v.Tokens=(new AD($stringToBytes(F.UnescapeHTMLStr(J.DomAttrValue(c,"data-content")))));d.Context.Tip.AppendChild(v);$s=98;case 98:return;case 49:bp=c.DataAtom;if(bp===(0)){$s=100;continue;}if((bp===(2817))||(bp===(378116))||(bp===(449798))||(bp===(28162))||(bp===(47363))||(bp===(46596))||(bp===(9473))||(bp===(421123))||(bp===(461571))||(bp===(40708))){$s=101;continue;}$s=102;continue;case 100:v.Type=16;v.Tokens=J.StrToBytes(c.Data);if(0===d.Context.Tip.Type){bq=new D.Node.ptr("","","","",1,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");d.Context.Tip.AppendChild(bq);d.Context.Tip=bq;}$r=e.genASTContenteditable(c,d);$s=103;case 103:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=104;case 104:return;case 101:if(0===d.Context.Tip.Type){br=new D.Node.ptr("","","","",1,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");d.Context.Tip.AppendChild(br);d.Context.Tip=br;}$r=e.genASTContenteditable(c,d);$s=105;case 105:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=106;case 106:return;case 102:case 99:if((8===d.Context.Tip.Type)&&(281349===c.DataAtom)){$s=107;continue;}$s=108;continue;case 107:v.Type=100;v.TaskListItemChecked=e.hasAttr(c,"checked");d.Context.Tip.AppendChild(v);$s=109;case 109:return;case 108:v.Type=10;bs=J.DomHTML(c);$s=110;case 110:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}v.Tokens=bs;d.Context.Tip.AppendChild(v);$s=111;case 111:return;case 50:case 28:bt=c.FirstChild;case 112:if(!(!(bt===AE.nil))){$s=113;continue;}$r=e.genASTByBlockDOM(bt,d);$s=114;case 114:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}bt=bt.NextSibling;$s=112;continue;case 113:bu=t;if(bu===(475)){v.AppendChild(new D.Node.ptr("","","","",478,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else if(bu===(11)){v.AppendChild(new D.Node.ptr("","","","",13,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes("```"),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:R.ptr.prototype.genASTByBlockDOM,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred};return $f;}}};R.prototype.genASTByBlockDOM=function(c,d){return this.$val.genASTByBlockDOM(c,d);};R.ptr.prototype.genASTContenteditable=function(c,d){var{aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,d,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r,$c}=$restore(this,{c,d});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);e=this;if((11===d.Context.Tip.Type)||(560===d.Context.Tip.Type)){$s=1;continue;}$s=2;continue;case 1:$s=3;case 3:return;case 2:if(109320===c.DataAtom){$s=4;continue;}$s=5;continue;case 4:$s=6;case 6:return;case 5:f=J.DomAttrValue(c,"class");if("svg"===f){$s=7;continue;}$s=8;continue;case 7:$s=9;case 9:return;case 8:g=c.Data;h=new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(g),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");i=c.DataAtom;if(i===(0)){$s=11;continue;}if(i===(208901)){$s=12;continue;}if(i===(9989)){$s=13;continue;}if(i===(52226)){$s=14;continue;}if((i===(87554))||(i===(37378))){$s=15;continue;}if(i===(378116)){$s=16;continue;}if(i===(40708)){$s=17;continue;}if(i===(421123)){$s=18;continue;}if(i===(461571)){$s=19;continue;}if(i===(2817)){$s=20;continue;}if(i===(47363)){$s=21;continue;}if(i===(514)){$s=22;continue;}if((i===(28162))||(i===(1537))){$s=23;continue;}if((i===(449798))||(i===(257))){$s=24;continue;}if((i===(283139))||(i===(9473))||(i===(53766))){$s=25;continue;}if(i===(46596)){$s=26;continue;}if(i===(198403)){$s=27;continue;}$s=28;continue;case 11:if(""===g){$s=29;continue;}$s=30;continue;case 29:$s=31;case 31:return;case 30:if(3===c.Type){h.Tokens=J.StrToBytes("<"+g+">");}if(33===d.Context.Tip.Type){h.Type=40;}else if(2===d.Context.Tip.Type){g=C.ReplaceAll(g,"\n","");h.Tokens=J.StrToBytes(g);}else if(22===d.Context.Tip.Type){g=C.ReplaceAll(g,"**","");g=C.ReplaceAll(g,"*\xE2\x80\xB8","\xE2\x80\xB8");g=C.ReplaceAll(g,"\xE2\x80\xB8*","\xE2\x80\xB8");h.Tokens=J.StrToBytes(g);}if(e.parentIs(c,new AT([365829]))){$s=32;continue;}$s=33;continue;case 32:g=C.TrimSuffix(g,"\n");if((AE.nil===c.NextSibling&&!C.Contains(g,"\n"))||(!(AE.nil===c.NextSibling)&&(514===c.NextSibling.DataAtom)&&C.HasPrefix(g,"\n"))){g=C.ReplaceAll(g,"\n","");}if(C.Contains(g,"\\")){$s=34;continue;}$s=35;continue;case 34:j=C.ReplaceAll(g,"\\","");k=C.TrimSpace(j);$s=36;case 36:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}j=k;if(""===j){g=C.ReplaceAll(g,"\\","\\\\");}case 35:h.Tokens=J.StrToBytes(C.ReplaceAll(g,"\n","<br />"));l=L.SplitWithoutBackslashEscape(h.Tokens,124);h.Tokens=AD.nil;m=l;n=0;while(true){if(!(n<m.$length)){break;}o=n;p=((n<0||n>=m.$length)?($throwRuntimeError("index out of range"),undefined):m.$array[m.$offset+n]);h.Tokens=$appendSlice(h.Tokens,p);if(o<(l.$length-1>>0)){h.Tokens=$appendSlice(h.Tokens,(new AD($stringToBytes("\\|"))));}n++;}case 33:if((27===d.Context.Tip.Type)||(304===d.Context.Tip.Type)){$s=37;continue;}$s=38;continue;case 37:if(!(AF.nil===d.Context.Tip.Previous)&&(d.Context.Tip.Type===d.Context.Tip.Previous.Type)){d.Context.Tip.FirstChild.Next.Tokens=J.StrToBytes(g);}else{if(!(AF.nil===d.Context.Tip.FirstChild.Next.Next)&&(400===d.Context.Tip.FirstChild.Next.Next.Type)){g=J.BytesToStr(d.Context.Tip.FirstChild.Next.Next.FirstChild.Tokens)+g;d.Context.Tip.FirstChild.Next.Next.Unlink();}d.Context.Tip.FirstChild.Next.Tokens=$appendSlice(d.Context.Tip.FirstChild.Next.Tokens,J.StrToBytes(g));}$s=39;case 39:return;case 38:if(530===d.Context.Tip.Type){$s=40;continue;}$s=41;continue;case 40:if("code"===d.Context.Tip.TokensStr()){$s=42;continue;}$s=43;continue;case 42:if(!(AF.nil===d.Context.Tip.FirstChild)&&!(AF.nil===d.Context.Tip.FirstChild.Next)&&!(AF.nil===d.Context.Tip.FirstChild.Next.Next)&&(400===d.Context.Tip.FirstChild.Next.Next.Type)){$s=44;continue;}$s=45;continue;case 44:g=J.BytesToStr(d.Context.Tip.FirstChild.Next.Next.FirstChild.Tokens)+g;d.Context.Tip.FirstChild.Next.Next.Unlink();d.Context.Tip.FirstChild.Next.Tokens=$appendSlice(d.Context.Tip.FirstChild.Next.Tokens,J.StrToBytes(g));$s=46;case 46:return;case 45:case 43:case 41:if(515===d.Context.Tip.Type){h.Tokens=A.ReplaceAll(h.Tokens,(new AD($stringToBytes("\\\\"))),(new AD($stringToBytes("\\"))));h.Tokens=A.ReplaceAll(h.Tokens,(new AD($stringToBytes("\\"))),(new AD($stringToBytes("\\\\"))));if(A.Equal(h.Tokens,E.CaretTokens)){q=d.Context.Tip.Parent;d.Context.Tip.Unlink();d.Context.Tip=q;}}d.Context.Tip.AppendChild(h);$s=28;continue;case 12:if(e.parentIs(c.Parent.Parent,new AT([365829]))){$s=47;continue;}$s=48;continue;case 47:r=J.DomText(c.Parent.Parent);$s=49;case 49:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}s=r;s=C.ReplaceAll(s,"\xE2\x80\xB8","");t=C.TrimSpace(s);$s=50;case 50:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}h.Tokens=(new AD($stringToBytes(t)));d.Context.Tip.AppendChild(h);$s=51;case 51:return;case 48:h.Type=107;d.Context.Tip.AppendChild(h);d.Context.Tip=h;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=28;continue;case 13:$s=28;continue;case 14:h.Type=108;d.Context.Tip.AppendChild(h);d.Context.Tip=h;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=28;continue;case 15:h.Type=109;u=J.DomAttrValue(c,"align");v=0;w=u;if(w===("left")){v=1;}else if(w===("center")){v=2;}else if(w===("right")){v=3;}else{v=0;}h.TableCellAlign=v;d.Context.Tip.AppendChild(h);$r=H.SetSpanIAL(h,c);$s=52;case 52:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.Context.Tip=h;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=28;continue;case 16:y=e.isCaret(c);$s=53;case 53:if($c){$c=false;y=y.$blk();}if(y&&y.$blk!==undefined){break s;}x=y;z=x[0];aa=x[1];if(z){$s=54;continue;}$s=55;continue;case 54:h.Type=16;h.Tokens=E.CaretTokens;d.Context.Tip.AppendChild(h);$s=56;case 56:return;case 55:if(aa){$s=57;continue;}$s=58;continue;case 57:$s=59;case 59:return;case 58:if(e.ParseOptions.TextMark){$s=60;continue;}$s=61;continue;case 60:d.Context.Tip.AppendChild(h);$r=H.SetTextMarkNode(h,c,e.ParseOptions);$s=62;case 62:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=63;case 63:return;case 61:h.Type=27;h.AppendChild(new D.Node.ptr("","","","",28,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));h.AppendChild(new D.Node.ptr("","","","",29,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(h);d.Context.Tip=h;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=28;continue;case 17:ab=J.DomAttrValue(c,"data-type");if(""===ab){ab="text";}if(C.Contains(ab,"span")){$s=64;continue;}$s=65;continue;case 64:h.Type=16;ac=J.DomText(c);$s=66;case 66:if($c){$c=false;ac=ac.$blk();}if(ac&&ac.$blk!==undefined){break s;}ad=J.StrToBytes(ac);$s=67;case 67:if($c){$c=false;ad=ad.$blk();}if(ad&&ad.$blk!==undefined){break s;}h.Tokens=ad;d.Context.Tip.AppendChild(h);$s=68;case 68:return;case 65:if(C.Contains(ab,"img")){ab="img";}if(!(AF.nil===d.Context.Tip)&&!(AF.nil===d.Context.Tip.LastChild)){$s=69;continue;}$s=70;continue;case 69:ae=d.Context.Tip.LastChild.Text();$s=71;case 71:if($c){$c=false;ae=ae.$blk();}if(ae&&ae.$blk!==undefined){break s;}af=ae;ag=C.HasSuffix(af,"\\\xE2\x80\xB8");if(ag){af=C.TrimSuffix(af,"\xE2\x80\xB8");}if(C.HasSuffix(af,"\\")){ah=0;ai=af.length-1>>0;while(true){if(!(ai>=0)){break;}if(92===af.charCodeAt(ai)){ah=ah+(1)>>0;}else{break;}ai=ai-(1)>>0;}if(!((0===(aj=ah%2,aj===aj?aj:$throwRuntimeError("integer divide by zero"))))){if(ag){d.Context.Tip.LastChild.Tokens=A.TrimSuffix(d.Context.Tip.LastChild.Tokens,(new AD($stringToBytes("\xE2\x80\xB8"))));d.Context.Tip.LastChild.Tokens=$appendSlice(d.Context.Tip.LastChild.Tokens,(new AD($stringToBytes("\\"))));d.Context.Tip.LastChild.Tokens=$appendSlice(d.Context.Tip.LastChild.Tokens,(new AD($stringToBytes("\xE2\x80\xB8"))));}else{d.Context.Tip.LastChild.Tokens=$appendSlice(d.Context.Tip.LastChild.Tokens,(new AD($stringToBytes("\\"))));}}}case 70:if("tag"===ab){$s=72;continue;}if("inline-math"===ab){$s=73;continue;}if("inline-memo"===ab){$s=74;continue;}if("a"===ab){$s=75;continue;}if("block-ref"===ab){$s=76;continue;}if("file-annotation-ref"===ab){$s=77;continue;}if("img"===ab){$s=78;continue;}if("backslash"===ab){$s=79;continue;}$s=80;continue;case 72:al=e.isCaret(c);$s=82;case 82:if($c){$c=false;al=al.$blk();}if(al&&al.$blk!==undefined){break s;}ak=al;am=ak[0];an=ak[1];if(am){$s=83;continue;}$s=84;continue;case 83:h.Type=16;h.Tokens=E.CaretTokens;d.Context.Tip.AppendChild(h);$s=85;case 85:return;case 84:if(an){$s=86;continue;}$s=87;continue;case 86:$s=88;case 88:return;case 87:if(e.ParseOptions.TextMark){$s=89;continue;}$s=90;continue;case 89:d.Context.Tip.AppendChild(h);$r=H.SetTextMarkNode(h,c,e.ParseOptions);$s=91;case 91:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=92;case 92:return;case 90:c.FirstChild.Data=C.ReplaceAll(c.FirstChild.Data,"\xE2\x80\x8B","");h.Type=460;h.AppendChild(new D.Node.ptr("","","","",461,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));Q(c,h);d.Context.Tip.AppendChild(h);d.Context.Tip=h;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=81;continue;case 73:ao=J.GetTextMarkInlineMathData(c);if(""===ao){$s=93;continue;}$s=94;continue;case 93:$s=95;case 95:return;case 94:if(e.ParseOptions.TextMark){$s=96;continue;}$s=97;continue;case 96:d.Context.Tip.AppendChild(h);$r=H.SetTextMarkNode(h,c,e.ParseOptions);$s=98;case 98:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=99;case 99:return;case 97:h.Type=304;h.AppendChild(new D.Node.ptr("","","","",305,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));h.AppendChild(new D.Node.ptr("","","","",306,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(ao),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));h.AppendChild(new D.Node.ptr("","","","",307,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(h);$s=100;case 100:return;case 74:aq=e.isCaret(c);$s=101;case 101:if($c){$c=false;aq=aq.$blk();}if(aq&&aq.$blk!==undefined){break s;}ap=aq;ar=ap[0];as=ap[1];if(ar){$s=102;continue;}$s=103;continue;case 102:h.Type=16;h.Tokens=E.CaretTokens;d.Context.Tip.AppendChild(h);$s=104;case 104:return;case 103:if(as){$s=105;continue;}$s=106;continue;case 105:$s=107;case 107:return;case 106:if(e.ParseOptions.TextMark){$s=108;continue;}$s=109;continue;case 108:d.Context.Tip.AppendChild(h);$r=H.SetTextMarkNode(h,c,e.ParseOptions);$s=110;case 110:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=111;case 111:return;case 109:h.Type=16;at=J.DomText(c);$s=112;case 112:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}au=J.StrToBytes(at);$s=113;case 113:if($c){$c=false;au=au.$blk();}if(au&&au.$blk!==undefined){break s;}h.Tokens=au;d.Context.Tip.AppendChild(h);$s=114;case 114:return;case 75:if(AE.nil===c.FirstChild){$s=115;continue;}$s=116;continue;case 115:$s=117;case 117:return;case 116:if(33===d.Context.Tip.Type){$s=10;continue;}if(e.ParseOptions.TextMark){$s=118;continue;}$s=119;continue;case 118:d.Context.Tip.AppendChild(h);$r=H.SetTextMarkNode(h,c,e.ParseOptions);$s=120;case 120:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=121;case 121:return;case 119:h.Type=33;h.AppendChild(new D.Node.ptr("","","","",36,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(h);d.Context.Tip=h;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=81;continue;case 76:av=J.DomText(c);$s=122;case 122:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}aw=av;ax=C.TrimSpace(aw);$s=123;case 123:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}aw=ax;if(""===aw){$s=124;continue;}$s=125;continue;case 124:$s=126;case 126:return;case 125:if(aw==="\xE2\x80\xB8"){$s=127;continue;}$s=128;continue;case 127:d.Context.Tip.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,E.CaretTokens,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));$s=129;case 129:return;case 128:if(e.ParseOptions.TextMark){$s=130;continue;}$s=131;continue;case 130:d.Context.Tip.AppendChild(h);$r=H.SetTextMarkNode(h,c,e.ParseOptions);$s=132;case 132:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=133;case 133:return;case 131:h.Type=430;h.AppendChild(new D.Node.ptr("","","","",38,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));h.AppendChild(new D.Node.ptr("","","","",38,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ay=J.DomAttrValue(c,"data-id");h.AppendChild(new D.Node.ptr("","","","",431,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(ay),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));h.AppendChild(new D.Node.ptr("","","","",432,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));az=AF.nil;ba=J.DomAttrValue(c,"data-subtype");if("s"===ba||""===ba){az=new D.Node.ptr("","","","",433,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(aw),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");}else{az=new D.Node.ptr("","","","",434,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(aw),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");}if(e.parentIs(c,new AT([365829]))){az.Tokens=A.ReplaceAll(az.Tokens,(new AD($stringToBytes("|"))),(new AD($stringToBytes("|"))));}h.AppendChild(az);h.AppendChild(new D.Node.ptr("","","","",39,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));h.AppendChild(new D.Node.ptr("","","","",39,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(h);$s=134;case 134:return;case 77:bb=J.DomText(c);$s=135;case 135:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=bb;bd=C.TrimSpace(bc);$s=136;case 136:if($c){$c=false;bd=bd.$blk();}if(bd&&bd.$blk!==undefined){break s;}bc=bd;if(""===bc){$s=137;continue;}$s=138;continue;case 137:$s=139;case 139:return;case 138:if(bc==="\xE2\x80\xB8"){$s=140;continue;}$s=141;continue;case 140:d.Context.Tip.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,E.CaretTokens,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));$s=142;case 142:return;case 141:if(e.ParseOptions.TextMark){$s=143;continue;}$s=144;continue;case 143:d.Context.Tip.AppendChild(h);$r=H.SetTextMarkNode(h,c,e.ParseOptions);$s=145;case 145:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=146;case 146:return;case 144:h.Type=540;h.AppendChild(new D.Node.ptr("","","","",47,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));h.AppendChild(new D.Node.ptr("","","","",47,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));be=J.DomAttrValue(c,"data-id");h.AppendChild(new D.Node.ptr("","","","",541,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(be),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));h.AppendChild(new D.Node.ptr("","","","",542,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));bf=new D.Node.ptr("","","","",543,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(bc),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");h.AppendChild(bf);h.AppendChild(new D.Node.ptr("","","","",48,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));h.AppendChild(new D.Node.ptr("","","","",48,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(h);$s=147;case 147:return;case 78:bg=e.domChild(c,198403);if(AE.nil===bg){$s=148;continue;}$s=149;continue;case 148:$s=150;case 150:return;case 149:h.Type=34;h.AppendChild(new D.Node.ptr("","","","",35,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));h.AppendChild(new D.Node.ptr("","","","",36,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));bh=J.DomAttrValue(bg,"alt");h.AppendChild(new D.Node.ptr("","","","",40,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(bh),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));h.AppendChild(new D.Node.ptr("","","","",37,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));h.AppendChild(new D.Node.ptr("","","","",38,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));bi=J.DomAttrValue(bg,"data-src");h.AppendChild(new D.Node.ptr("","","","",41,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(bi),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));bj=J.DomAttrValue(bg,"title");if(!(""===bj)){h.AppendChild(new D.Node.ptr("","","","",43,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));h.AppendChild(new D.Node.ptr("","","","",42,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(bj),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}h.AppendChild(new D.Node.ptr("","","","",39,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(h);$r=H.SetSpanIAL(d.Context.Tip.LastChild,bg);$s=151;case 151:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=152;case 152:return;case 79:h.Type=400;if(AE.nil===c.FirstChild){$s=153;continue;}$s=154;continue;case 153:$s=155;case 155:return;case 154:if(c.FirstChild===c.LastChild&&!(AE.nil===c.FirstChild.FirstChild)){$s=156;continue;}$s=157;continue;case 156:$s=158;case 158:return;case 157:if(AE.nil===c.FirstChild.NextSibling&&(1===c.FirstChild.Type)){$s=159;continue;}$s=160;continue;case 159:h.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(c.FirstChild.Data),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(h);$s=161;case 161:return;case 160:if(!(AE.nil===c.FirstChild.NextSibling)){bk=c.FirstChild.NextSibling.Data;bk=C.ReplaceAll(bk,"\\\\","\\");h.AppendChild(new D.Node.ptr("","","","",401,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(bk),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}d.Context.Tip.AppendChild(h);$s=162;case 162:return;case 80:bm=e.isCaret(c);$s=163;case 163:if($c){$c=false;bm=bm.$blk();}if(bm&&bm.$blk!==undefined){break s;}bl=bm;bn=bl[0];bo=bl[1];if(bn){$s=164;continue;}$s=165;continue;case 164:h.Type=16;h.Tokens=E.CaretTokens;d.Context.Tip.AppendChild(h);$s=166;case 166:return;case 165:if(bo){$s=167;continue;}$s=168;continue;case 167:$s=169;case 169:return;case 168:bp=e.removeTempMark(ab);$s=170;case 170:if($c){$c=false;bp=bp.$blk();}if(bp&&bp.$blk!==undefined){break s;}ab=bp;bq=C.ReplaceAll(ab,"backslash","");br=C.TrimSpace(bq);$s=171;case 171:if($c){$c=false;br=br.$blk();}if(br&&br.$blk!==undefined){break s;}bq=br;d.Context.Tip.AppendChild(h);if(""===bq){$s=172;continue;}$s=173;continue;case 172:h.Type=16;bs=J.DomText(c);$s=174;case 174:if($c){$c=false;bs=bs.$blk();}if(bs&&bs.$blk!==undefined){break s;}h.Tokens=(new AD($stringToBytes(bs)));$s=175;case 175:return;case 173:e.setDOMAttrValue(c,"data-type",ab);$r=H.SetTextMarkNode(h,c,e.ParseOptions);$s=176;case 176:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=177;case 177:return;case 81:$s=28;continue;case 18:bu=e.isCaret(c);$s=178;case 178:if($c){$c=false;bu=bu.$blk();}if(bu&&bu.$blk!==undefined){break s;}bt=bu;bv=bt[0];bw=bt[1];if(bv){$s=179;continue;}$s=180;continue;case 179:h.Type=16;h.Tokens=E.CaretTokens;d.Context.Tip.AppendChild(h);$s=181;case 181:return;case 180:if(bw){$s=182;continue;}$s=183;continue;case 182:$s=184;case 184:return;case 183:if(e.ParseOptions.TextMark){$s=185;continue;}$s=186;continue;case 185:d.Context.Tip.AppendChild(h);$r=H.SetTextMarkNode(h,c,e.ParseOptions);$s=187;case 187:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=188;case 188:return;case 186:h.Type=490;h.AppendChild(new D.Node.ptr("","","","",491,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(h);d.Context.Tip=h;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=28;continue;case 19:by=e.isCaret(c);$s=189;case 189:if($c){$c=false;by=by.$blk();}if(by&&by.$blk!==undefined){break s;}bx=by;bz=bx[0];ca=bx[1];if(bz){$s=190;continue;}$s=191;continue;case 190:h.Type=16;h.Tokens=E.CaretTokens;d.Context.Tip.AppendChild(h);$s=192;case 192:return;case 191:if(ca){$s=193;continue;}$s=194;continue;case 193:$s=195;case 195:return;case 194:if(e.ParseOptions.TextMark){$s=196;continue;}$s=197;continue;case 196:d.Context.Tip.AppendChild(h);$r=H.SetTextMarkNode(h,c,e.ParseOptions);$s=198;case 198:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=199;case 199:return;case 197:h.Type=485;h.AppendChild(new D.Node.ptr("","","","",486,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(h);d.Context.Tip=h;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=28;continue;case 20:cc=e.isCaret(c);$s=200;case 200:if($c){$c=false;cc=cc.$blk();}if(cc&&cc.$blk!==undefined){break s;}cb=cc;cd=cb[0];ce=cb[1];if(cd){$s=201;continue;}$s=202;continue;case 201:h.Type=16;h.Tokens=E.CaretTokens;d.Context.Tip.AppendChild(h);$s=203;case 203:return;case 202:if(ce){$s=204;continue;}$s=205;continue;case 204:$s=206;case 206:return;case 205:if(e.ParseOptions.TextMark){$s=207;continue;}$s=208;continue;case 207:d.Context.Tip.AppendChild(h);$r=H.SetTextMarkNode(h,c,e.ParseOptions);$s=209;case 209:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=210;case 210:return;case 208:h.Type=520;h.AppendChild(new D.Node.ptr("","","","",521,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(h);d.Context.Tip=h;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=28;continue;case 21:cg=e.isCaret(c);$s=211;case 211:if($c){$c=false;cg=cg.$blk();}if(cg&&cg.$blk!==undefined){break s;}cf=cg;ch=cf[0];ci=cf[1];if(ch){$s=212;continue;}$s=213;continue;case 212:h.Type=16;h.Tokens=E.CaretTokens;d.Context.Tip.AppendChild(h);$s=214;case 214:return;case 213:if(ci){$s=215;continue;}$s=216;continue;case 215:$s=217;case 217:return;case 216:if(e.ParseOptions.TextMark){$s=218;continue;}$s=219;continue;case 218:d.Context.Tip.AppendChild(h);$r=H.SetTextMarkNode(h,c,e.ParseOptions);$s=220;case 220:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=221;case 221:return;case 219:h.Type=515;h.AppendChild(new D.Node.ptr("","","","",516,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(h);d.Context.Tip=h;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=28;continue;case 22:if(2===d.Context.Tip.Type){$s=222;continue;}$s=223;continue;case 222:$s=224;case 224:return;case 223:if(!(AE.nil===c.PrevSibling)&&"\n"===c.PrevSibling.Data&&e.parentIs(c,new AT([365829]))){$s=225;continue;}$s=226;continue;case 225:$s=227;case 227:return;case 226:h.Type=525;d.Context.Tip.AppendChild(h);$s=228;case 228:return;case 23:if(AE.nil===c.FirstChild||(514===c.FirstChild.DataAtom)){$s=229;continue;}$s=230;continue;case 229:$s=231;case 231:return;case 230:if(e.startsWithNewline(c.FirstChild)){c.FirstChild.Data=C.TrimLeft(c.FirstChild.Data,"\xE2\x80\x8B\n");d.Context.Tip.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("\xE2\x80\x8B\n"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}ck=e.isCaret(c);$s=232;case 232:if($c){$c=false;ck=ck.$blk();}if(ck&&ck.$blk!==undefined){break s;}cj=ck;cl=cj[0];cm=cj[1];if(cl){$s=233;continue;}$s=234;continue;case 233:h.Type=16;h.Tokens=E.CaretTokens;d.Context.Tip.AppendChild(h);$s=235;case 235:return;case 234:if(cm){$s=236;continue;}$s=237;continue;case 236:$s=238;case 238:return;case 237:if(e.ParseOptions.TextMark){$s=239;continue;}$s=240;continue;case 239:d.Context.Tip.AppendChild(h);$r=H.SetTextMarkNode(h,c,e.ParseOptions);$s=241;case 241:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=242;case 242:return;case 240:h.Type=17;cn=J.DomAttrValue(c,"data-marker");if(""===cn){cn="*";}if("_"===cn){h.AppendChild(new D.Node.ptr("","","","",20,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(cn))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else{h.AppendChild(new D.Node.ptr("","","","",18,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(cn))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}d.Context.Tip.AppendChild(h);if(!(AE.nil===c.FirstChild)&&"\xE2\x80\xB8"===c.FirstChild.Data&&!(AE.nil===c.LastChild)&&"br"===c.LastChild.Data){$s=243;continue;}$s=244;continue;case 243:h.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,E.CaretTokens,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));if("_"===cn){h.AppendChild(new D.Node.ptr("","","","",21,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(cn))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else{h.AppendChild(new D.Node.ptr("","","","",19,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(cn))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}$s=245;case 245:return;case 244:c.FirstChild.Data=C.ReplaceAll(c.FirstChild.Data,"\xE2\x80\x8B","");Q(c,h);e.removeInnerMarker(c,"__");d.Context.Tip=h;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=28;continue;case 24:if(AE.nil===c.FirstChild||(514===c.FirstChild.DataAtom)){$s=246;continue;}$s=247;continue;case 246:$s=248;case 248:return;case 247:if(!(AF.nil===d.Context.Tip.LastChild)){if(A.HasSuffix(d.Context.Tip.LastChild.Tokens,(new AD($stringToBytes("\\\xE2\x80\xB8"))))){d.Context.Tip.LastChild.Tokens=A.ReplaceAll(d.Context.Tip.LastChild.Tokens,(new AD($stringToBytes("\\\xE2\x80\xB8"))),(new AD($stringToBytes("\\\\\xE2\x80\xB8"))));}if(A.HasSuffix(d.Context.Tip.LastChild.Tokens,(new AD($stringToBytes("\\"))))){d.Context.Tip.LastChild.Tokens=A.ReplaceAll(d.Context.Tip.LastChild.Tokens,(new AD($stringToBytes("\\"))),(new AD($stringToBytes("\\\\"))));}}if(e.startsWithNewline(c.FirstChild)){c.FirstChild.Data=C.TrimLeft(c.FirstChild.Data,"\xE2\x80\x8B\n");d.Context.Tip.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("\xE2\x80\x8B\n"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}cp=e.isCaret(c);$s=249;case 249:if($c){$c=false;cp=cp.$blk();}if(cp&&cp.$blk!==undefined){break s;}co=cp;cq=co[0];cr=co[1];if(cq){$s=250;continue;}$s=251;continue;case 250:h.Type=16;h.Tokens=E.CaretTokens;d.Context.Tip.AppendChild(h);$s=252;case 252:return;case 251:if(cr){$s=253;continue;}$s=254;continue;case 253:$s=255;case 255:return;case 254:if(e.ParseOptions.TextMark){$s=256;continue;}$s=257;continue;case 256:d.Context.Tip.AppendChild(h);$r=H.SetTextMarkNode(h,c,e.ParseOptions);$s=258;case 258:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=259;case 259:return;case 257:h.Type=22;cs=J.DomAttrValue(c,"data-marker");if(""===cs){cs="**";}if("__"===cs){h.AppendChild(new D.Node.ptr("","","","",25,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(cs))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else{h.AppendChild(new D.Node.ptr("","","","",23,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(cs))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}d.Context.Tip.AppendChild(h);if(!(AE.nil===c.FirstChild)&&"\xE2\x80\xB8"===c.FirstChild.Data&&!(AE.nil===c.LastChild)&&"br"===c.LastChild.Data){$s=260;continue;}$s=261;continue;case 260:h.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,E.CaretTokens,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));if("__"===cs){h.AppendChild(new D.Node.ptr("","","","",26,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(cs))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else{h.AppendChild(new D.Node.ptr("","","","",24,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(cs))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}$s=262;case 262:return;case 261:Q(c,h);e.removeInnerMarker(c,"**");$r=H.SetSpanIAL(h,c);$s=263;case 263:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.Context.Tip=h;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=28;continue;case 25:if(AE.nil===c.FirstChild||(514===c.FirstChild.DataAtom)){$s=264;continue;}$s=265;continue;case 264:$s=266;case 266:return;case 265:if(e.startsWithNewline(c.FirstChild)){c.FirstChild.Data=C.TrimLeft(c.FirstChild.Data,"\xE2\x80\x8B\n");d.Context.Tip.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("\xE2\x80\x8B\n"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}cu=e.isCaret(c);$s=267;case 267:if($c){$c=false;cu=cu.$blk();}if(cu&&cu.$blk!==undefined){break s;}ct=cu;cv=ct[0];cw=ct[1];if(cv){$s=268;continue;}$s=269;continue;case 268:h.Type=16;h.Tokens=E.CaretTokens;d.Context.Tip.AppendChild(h);$s=270;case 270:return;case 269:if(cw){$s=271;continue;}$s=272;continue;case 271:$s=273;case 273:return;case 272:if(e.ParseOptions.TextMark){$s=274;continue;}$s=275;continue;case 274:d.Context.Tip.AppendChild(h);$r=H.SetTextMarkNode(h,c,e.ParseOptions);$s=276;case 276:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=277;case 277:return;case 275:h.Type=101;cx=J.DomAttrValue(c,"data-marker");if("~"===cx){h.AppendChild(new D.Node.ptr("","","","",102,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(cx))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else{h.AppendChild(new D.Node.ptr("","","","",104,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(cx))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}d.Context.Tip.AppendChild(h);if(!(AE.nil===c.FirstChild)&&"\xE2\x80\xB8"===c.FirstChild.Data&&!(AE.nil===c.LastChild)&&"br"===c.LastChild.Data){$s=278;continue;}$s=279;continue;case 278:h.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,E.CaretTokens,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));if("~"===cx){h.AppendChild(new D.Node.ptr("","","","",103,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(cx))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else{h.AppendChild(new D.Node.ptr("","","","",105,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(cx))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}$s=280;case 280:return;case 279:Q(c,h);e.removeInnerMarker(c,"~~");d.Context.Tip=h;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=28;continue;case 26:if(AE.nil===c.FirstChild||(514===c.FirstChild.DataAtom)){$s=281;continue;}$s=282;continue;case 281:$s=283;case 283:return;case 282:if(e.startsWithNewline(c.FirstChild)){c.FirstChild.Data=C.TrimLeft(c.FirstChild.Data,"\xE2\x80\x8B\n");d.Context.Tip.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("\xE2\x80\x8B\n"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}cz=e.isCaret(c);$s=284;case 284:if($c){$c=false;cz=cz.$blk();}if(cz&&cz.$blk!==undefined){break s;}cy=cz;da=cy[0];db=cy[1];if(da){$s=285;continue;}$s=286;continue;case 285:h.Type=16;h.Tokens=E.CaretTokens;d.Context.Tip.AppendChild(h);$s=287;case 287:return;case 286:if(db){$s=288;continue;}$s=289;continue;case 288:$s=290;case 290:return;case 289:if(e.ParseOptions.TextMark){$s=291;continue;}$s=292;continue;case 291:d.Context.Tip.AppendChild(h);$r=H.SetTextMarkNode(h,c,e.ParseOptions);$s=293;case 293:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=294;case 294:return;case 292:h.Type=450;dc=J.DomAttrValue(c,"data-marker");if("="===dc){h.AppendChild(new D.Node.ptr("","","","",451,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(dc))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else{h.AppendChild(new D.Node.ptr("","","","",453,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(dc))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}d.Context.Tip.AppendChild(h);if(!(AE.nil===c.FirstChild)&&"\xE2\x80\xB8"===c.FirstChild.Data&&!(AE.nil===c.LastChild)&&"br"===c.LastChild.Data){$s=295;continue;}$s=296;continue;case 295:h.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,E.CaretTokens,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));if("="===dc){h.AppendChild(new D.Node.ptr("","","","",452,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(dc))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else{h.AppendChild(new D.Node.ptr("","","","",454,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(dc))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}$s=297;case 297:return;case 296:Q(c,h);e.removeInnerMarker(c,"==");d.Context.Tip=h;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=28;continue;case 27:if("emoji"===f){$s=298;continue;}$s=299;continue;case 298:dd=J.DomAttrValue(c,"alt");h.Type=200;de=new D.Node.ptr("","","","",202,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,d.EmojiImgTokens(dd,J.DomAttrValue(c,"src")),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");de.AppendChild(new D.Node.ptr("","","","",203,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(":"+dd+":"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));h.AppendChild(de);d.Context.Tip.AppendChild(h);$s=300;case 300:return;case 299:case 28:case 10:df=c.FirstChild;case 301:if(!(!(df===AE.nil))){$s=302;continue;}$r=e.genASTContenteditable(df,d);$s=303;case 303:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}df=df.NextSibling;$s=301;continue;case 302:if(e.ParseOptions.TextMark){$s=304;continue;}$s=305;continue;case 304:$s=306;case 306:return;case 305:dg=c.DataAtom;if(dg===(378116)){h.AppendChild(new D.Node.ptr("","","","",30,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else if(dg===(40708)){dh=J.DomAttrValue(c,"data-type");if("tag"===dh){h.AppendChild(new D.Node.ptr("","","","",462,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else if("a"===dh){h.AppendChild(new D.Node.ptr("","","","",37,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));h.AppendChild(new D.Node.ptr("","","","",38,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));di=J.DomAttrValue(c,"data-href");if(!(""===e.RenderOptions.LinkBase)){di=C.ReplaceAll(di,e.RenderOptions.LinkBase,"");}if(!(""===e.RenderOptions.LinkPrefix)){di=C.ReplaceAll(di,e.RenderOptions.LinkPrefix,"");}h.AppendChild(new D.Node.ptr("","","","",41,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(di))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));dj=J.DomAttrValue(c,"data-title");if(!(""===dj)){h.AppendChild(new D.Node.ptr("","","","",43,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));h.AppendChild(new D.Node.ptr("","","","",42,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(dj))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}h.AppendChild(new D.Node.ptr("","","","",39,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}}else if(dg===(421123)){h.AppendChild(new D.Node.ptr("","","","",492,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else if(dg===(461571)){h.AppendChild(new D.Node.ptr("","","","",487,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else if(dg===(2817)){h.AppendChild(new D.Node.ptr("","","","",522,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else if(dg===(47363)){h.AppendChild(new D.Node.ptr("","","","",517,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else if((dg===(28162))||(dg===(1537))){dk=J.DomAttrValue(c,"data-marker");if(""===dk){dk="*";}if("_"===dk){h.AppendChild(new D.Node.ptr("","","","",21,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(dk))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else{h.AppendChild(new D.Node.ptr("","","","",19,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(dk))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}}else if((dg===(449798))||(dg===(257))){dl=J.DomAttrValue(c,"data-marker");if(""===dl){dl="**";}if("__"===dl){h.AppendChild(new D.Node.ptr("","","","",26,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(dl))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else{h.AppendChild(new D.Node.ptr("","","","",24,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(dl))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}}else if((dg===(283139))||(dg===(9473))||(dg===(53766))){dm=J.DomAttrValue(c,"data-marker");if("~"===dm){h.AppendChild(new D.Node.ptr("","","","",103,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(dm))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else{h.AppendChild(new D.Node.ptr("","","","",105,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(dm))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}}else if(dg===(46596)){dn=J.DomAttrValue(c,"data-marker");if("="===dn){h.AppendChild(new D.Node.ptr("","","","",452,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(dn))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else{h.AppendChild(new D.Node.ptr("","","","",454,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(dn))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}}$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:R.ptr.prototype.genASTContenteditable,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,cr,cs,ct,cu,cv,cw,cx,cy,cz,d,da,db,dc,dd,de,df,dg,dh,di,dj,dk,dl,dm,dn,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred};return $f;}}};R.prototype.genASTContenteditable=function(c,d){return this.$val.genASTContenteditable(c,d);};R.ptr.prototype.setBlockIAL=function(c,d){var{aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{c,d});$s=$s||0;s:while(true){switch($s){case 0:e=AD.nil;f=this;d.SetIALAttr("id",d.ID);g=J.DomAttrValue(c,"refcount");if(!(""===g)){d.SetIALAttr("refcount",g);e=$appendSlice(e,(new AD($stringToBytes(" refcount=\""+g+"\""))));}h=J.DomAttrValue(c,"bookmark");if(!(""===h)){h=F.UnescapeHTMLStr(h);d.SetIALAttr("bookmark",h);e=$appendSlice(e,(new AD($stringToBytes(" bookmark=\""+h+"\""))));}i=J.DomAttrValue(c,"style");if(!(""===i)){$s=1;continue;}$s=2;continue;case 1:i=F.UnescapeHTMLStr(i);j=H.StyleValue(i);$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;d.SetIALAttr("style",i);e=$appendSlice(e,(new AD($stringToBytes(" style=\""+i+"\""))));case 2:k=J.DomAttrValue(c,"name");if(!(""===k)){k=F.UnescapeHTMLStr(k);d.SetIALAttr("name",k);e=$appendSlice(e,(new AD($stringToBytes(" name=\""+k+"\""))));}l=J.DomAttrValue(c,"memo");if(!(""===l)){l=F.UnescapeHTMLStr(l);d.SetIALAttr("memo",l);e=$appendSlice(e,(new AD($stringToBytes(" memo=\""+l+"\""))));}m=J.DomAttrValue(c,"alias");if(!(""===m)){m=F.UnescapeHTMLStr(m);d.SetIALAttr("alias",m);e=$appendSlice(e,(new AD($stringToBytes(" alias=\""+m+"\""))));}n=J.DomAttrValue(c,"fold");if(!(""===n)){d.SetIALAttr("fold",n);e=$appendSlice(e,(new AD($stringToBytes(" fold=\""+n+"\""))));}o=J.DomAttrValue(c,"heading-fold");if(!(""===o)){d.SetIALAttr("heading-fold",o);e=$appendSlice(e,(new AD($stringToBytes(" heading-fold=\""+o+"\""))));}p=J.DomAttrValue(c,"parent-fold");if(!(""===p)){d.SetIALAttr("parent-fold",p);e=$appendSlice(e,(new AD($stringToBytes(" parent-fold=\""+p+"\""))));}q=J.DomAttrValue(c,"updated");if(!(""===q)){d.SetIALAttr("updated",q);e=$appendSlice(e,(new AD($stringToBytes(" updated=\""+q+"\""))));}r=J.DomAttrValue(c,"linewrap");if(!(""===r)){d.SetIALAttr("linewrap",r);e=$appendSlice(e,(new AD($stringToBytes(" linewrap=\""+r+"\""))));}s=J.DomAttrValue(c,"ligatures");if(!(""===s)){d.SetIALAttr("ligatures",s);e=$appendSlice(e,(new AD($stringToBytes(" ligatures=\""+s+"\""))));}t=J.DomAttrValue(c,"linenumber");if(!(""===t)){d.SetIALAttr("linenumber",t);e=$appendSlice(e,(new AD($stringToBytes(" linenumber=\""+t+"\""))));}u=J.DomAttrValue(c,"breadcrumb");if(!(""===u)){d.SetIALAttr("breadcrumb",u);e=$appendSlice(e,(new AD($stringToBytes(" breadcrumb=\""+u+"\""))));}v=J.DomAttrValue(c,"data-export-md");if(!(""===v)){v=F.UnescapeHTMLStr(v);d.SetIALAttr("data-export-md",v);e=$appendSlice(e,(new AD($stringToBytes(" data-export-md=\""+v+"\""))));}w=J.DomAttrValue(c,"data-export-html");if(!(""===w)){w=F.UnescapeHTMLStr(w);d.SetIALAttr("data-export-html",w);e=$appendSlice(e,(new AD($stringToBytes(" data-export-html=\""+w+"\""))));}x=J.DomCustomAttrs(c);if(!(false===x)){y=x;z=0;aa=y?y.keys():undefined;ab=y?y.size:0;while(true){if(!(z<ab)){break;}ac=aa.next().value;ad=y.get(ac);if(ad===undefined){z++;continue;}ae=ad.k;af=ad.v;af=F.UnescapeHTMLStr(af);d.SetIALAttr(ae,af);e=$appendSlice(e,(new AD($stringToBytes(" "+ae+"=\""+af+"\""))));z++;}}if("NodeTable"===J.DomAttrValue(c,"data-type")){ag=f.domChild(c,109320);ah="";if(!(AE.nil===ag)){ai=ag.FirstChild;while(true){if(!(!(AE.nil===ai))){break;}aj=J.DomAttrValue(ai,"style");ah=ah+(aj);if(!(AE.nil===ai.NextSibling)){ah=ah+("|");}ai=ai.NextSibling;}d.SetIALAttr("colgroup",ah);e=$appendSlice(e,(new AD($stringToBytes(" colgroup=\""+ah+"\""))));}}ak=H.IAL2Tokens(d.KramdownIAL);$s=4;case 4:if($c){$c=false;ak=ak.$blk();}if(ak&&ak.$blk!==undefined){break s;}e=ak;e=e;$s=-1;return e;}return;}var $f={$blk:R.ptr.prototype.setBlockIAL,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};R.prototype.setBlockIAL=function(c,d){return this.$val.setBlockIAL(c,d);};Q=function(c,d){var c,d;if(C.HasPrefix(c.FirstChild.Data," ")&&AE.nil===c.FirstChild.PrevSibling){c.FirstChild.Data=C.TrimLeft(c.FirstChild.Data," ");d.InsertBefore(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(" "))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}if(C.HasSuffix(c.FirstChild.Data," ")&&AE.nil===c.FirstChild.NextSibling){c.FirstChild.Data=C.TrimRight(c.FirstChild.Data," ");c.InsertAfter(new F.Node.ptr(AE.nil,AE.nil,AE.nil,AE.nil,AE.nil,1,0," ","",AS.nil));}if(C.HasSuffix(c.FirstChild.Data," \xE2\x80\xB8")&&AE.nil===c.FirstChild.NextSibling){c.FirstChild.Data=C.TrimRight(c.FirstChild.Data," \xE2\x80\xB8");c.InsertAfter(new F.Node.ptr(AE.nil,AE.nil,AE.nil,AE.nil,AE.nil,1,0," \xE2\x80\xB8","",AS.nil));}if(C.HasSuffix(c.FirstChild.Data,"\n")&&AE.nil===c.FirstChild.NextSibling){c.FirstChild.Data=C.TrimRight(c.FirstChild.Data,"\n");c.InsertAfter(new F.Node.ptr(AE.nil,AE.nil,AE.nil,AE.nil,AE.nil,1,0,"\n","",AS.nil));}};R.ptr.prototype.removeInnerMarker=function(c,d){var c,d,e,f;e=this;if(1===c.Type){c.Data=C.ReplaceAll(c.Data,d,"");}f=c.FirstChild;while(true){if(!(!(AE.nil===f))){break;}e.removeInnerMarker0(f,d);f=f.NextSibling;}};R.prototype.removeInnerMarker=function(c,d){return this.$val.removeInnerMarker(c,d);};R.ptr.prototype.removeInnerMarker0=function(c,d){var c,d,e,f,g,h;e=this;if(AE.nil===c){return;}f=J.DomAttrValue(c,"data-render");if("1"===f||"2"===f){return;}if("svg"===c.Namespace){return;}if((0===c.DataAtom)&&(3===c.Type)){return;}g=c.DataAtom;if(g===(0)){c.Data=C.ReplaceAll(c.Data,d,"");}h=c.FirstChild;while(true){if(!(!(AE.nil===h))){break;}e.removeInnerMarker0(h,d);h=h.NextSibling;}};R.prototype.removeInnerMarker0=function(c,d){return this.$val.removeInnerMarker0(c,d);};R.ptr.prototype.removeTempMark=function(c){var{c,d,e,f,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;d=C.ReplaceAll(c,"search-mark","");d=C.ReplaceAll(d,"virtual-block-ref","");f=C.TrimSpace(d);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}d=f;$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.removeTempMark,$c:true,$r,c,d,e,f,$s};return $f;};R.prototype.removeTempMark=function(c){return this.$val.removeTempMark(c);};S=function(c){var{c,d,e,f,g,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d=AV.nil;d=new R.ptr(H.NewOptions(),I.NewOptions(),false,false,false,false,false,false,false,false,false,false);e=c;f=0;case 1:if(!(f<e.$length)){$s=2;continue;}g=((f<0||f>=e.$length)?($throwRuntimeError("index out of range"),undefined):e.$array[e.$offset+f]);$r=g(d);$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}f++;$s=1;continue;case 2:d.HTML2MdRendererFuncs=$makeMap(D.NodeType.keyFor,[]);d.HTML2VditorDOMRendererFuncs=$makeMap(D.NodeType.keyFor,[]);d.HTML2VditorIRDOMRendererFuncs=$makeMap(D.NodeType.keyFor,[]);d.HTML2BlockDOMRendererFuncs=$makeMap(D.NodeType.keyFor,[]);d.HTML2VditorSVDOMRendererFuncs=$makeMap(D.NodeType.keyFor,[]);d.Md2HTMLRendererFuncs=$makeMap(D.NodeType.keyFor,[]);d.Md2VditorDOMRendererFuncs=$makeMap(D.NodeType.keyFor,[]);d.Md2VditorIRDOMRendererFuncs=$makeMap(D.NodeType.keyFor,[]);d.Md2BlockDOMRendererFuncs=$makeMap(D.NodeType.keyFor,[]);d.Md2VditorSVDOMRendererFuncs=$makeMap(D.NodeType.keyFor,[]);d=d;$s=-1;return d;}return;}var $f={$blk:S,$c:true,$r,c,d,e,f,g,$s};return $f;};$pkg.New=S;R.ptr.prototype.Markdown=function(c,d){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s,$r,$c}=$restore(this,{c,d});$s=$s||0;s:while(true){switch($s){case 0:e=AD.nil;f=this;g=H.Parse(c,d,f.ParseOptions);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=I.NewHtmlRenderer(h,f.RenderOptions);$s=2;case 2:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;k=f.Md2HTMLRendererFuncs;l=0;m=k?k.keys():undefined;n=k?k.size:0;while(true){if(!(l<n)){break;}o=m.next().value;p=k.get(o);if(p===undefined){l++;continue;}q=p.k;r=p.v;s=q;(j.BaseRenderer.ExtRendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(D.NodeType.keyFor(s),{k:s,v:r});l++;}t=j.Render();$s=3;case 3:if($c){$c=false;t=t.$blk();}if(t&&t.$blk!==undefined){break s;}e=t;$s=-1;return e;}return;}var $f={$blk:R.ptr.prototype.Markdown,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s};return $f;};R.prototype.Markdown=function(c,d){return this.$val.Markdown(c,d);};R.ptr.prototype.MarkdownStr=function(c,d){var{c,d,e,f,g,h,$s,$r,$c}=$restore(this,{c,d});$s=$s||0;s:while(true){switch($s){case 0:e="";f=this;g=f.Markdown(c,(new AD($stringToBytes(d))));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;e=J.BytesToStr(h);$s=-1;return e;}return;}var $f={$blk:R.ptr.prototype.MarkdownStr,$c:true,$r,c,d,e,f,g,h,$s};return $f;};R.prototype.MarkdownStr=function(c,d){return this.$val.MarkdownStr(c,d);};R.ptr.prototype.Format=function(c,d){var{c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{c,d});$s=$s||0;s:while(true){switch($s){case 0:e=AD.nil;f=this;g=H.Parse(c,d,f.ParseOptions);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=I.NewFormatRenderer(h,f.RenderOptions);$s=2;case 2:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;k=j.BaseRenderer.Render();$s=3;case 3:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}e=k;$s=-1;return e;}return;}var $f={$blk:R.ptr.prototype.Format,$c:true,$r,c,d,e,f,g,h,i,j,k,$s};return $f;};R.prototype.Format=function(c,d){return this.$val.Format(c,d);};R.ptr.prototype.FormatStr=function(c,d){var{c,d,e,f,g,h,$s,$r,$c}=$restore(this,{c,d});$s=$s||0;s:while(true){switch($s){case 0:e="";f=this;g=f.Format(c,(new AD($stringToBytes(d))));$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;e=J.BytesToStr(h);$s=-1;return e;}return;}var $f={$blk:R.ptr.prototype.FormatStr,$c:true,$r,c,d,e,f,g,h,$s};return $f;};R.prototype.FormatStr=function(c,d){return this.$val.FormatStr(c,d);};R.ptr.prototype.TextBundle=function(c,d,e){var{c,d,e,f,g,h,i,j,k,l,m,n,$s,$r,$c}=$restore(this,{c,d,e});$s=$s||0;s:while(true){switch($s){case 0:f=AD.nil;g=AJ.nil;h=this;i=H.Parse(c,d,h.ParseOptions);$s=1;case 1:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;k=I.NewTextBundleRenderer(j,e,h.RenderOptions);$s=2;case 2:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}l=k;n=l.Render();$s=3;case 3:if($c){$c=false;n=n.$blk();}if(n&&n.$blk!==undefined){break s;}m=n;f=m[0];g=m[1];$s=-1;return[f,g];}return;}var $f={$blk:R.ptr.prototype.TextBundle,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,$s};return $f;};R.prototype.TextBundle=function(c,d,e){return this.$val.TextBundle(c,d,e);};R.ptr.prototype.TextBundleStr=function(c,d,e){var{c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{c,d,e});$s=$s||0;s:while(true){switch($s){case 0:f="";g=AJ.nil;h=this;j=h.TextBundle(c,(new AD($stringToBytes(d))),e);$s=1;case 1:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}i=j;k=i[0];g=i[1];f=J.BytesToStr(k);$s=-1;return[f,g];}return;}var $f={$blk:R.ptr.prototype.TextBundleStr,$c:true,$r,c,d,e,f,g,h,i,j,k,$s};return $f;};R.prototype.TextBundleStr=function(c,d,e){return this.$val.TextBundleStr(c,d,e);};R.ptr.prototype.HTML2Text=function(c){var{c,d,e,f,g,h,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d=this;e=d.HTML2Tree(c);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;if(AB.nil===f){$s=-1;return"";}g=f.Root.Text();$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;$s=3;case 3:return h;}return;}var $f={$blk:R.ptr.prototype.HTML2Text,$c:true,$r,c,d,e,f,g,h,$s};return $f;};R.prototype.HTML2Text=function(c){return this.$val.HTML2Text(c);};R.ptr.prototype.RenderJSON=function(c){var{c,d,e,f,g,h,i,j,k,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=this;f=H.Parse("",(new AD($stringToBytes(c))),e.ParseOptions);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=I.NewJSONRenderer(g,e.RenderOptions);$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;j=i.Render();$s=3;case 3:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;d=J.BytesToStr(k);$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.RenderJSON,$c:true,$r,c,d,e,f,g,h,i,j,k,$s};return $f;};R.prototype.RenderJSON=function(c){return this.$val.RenderJSON(c);};R.ptr.prototype.Space=function(c){var c,d;d=this;return I.Space0(c);};R.prototype.Space=function(c){return this.$val.Space(c);};R.ptr.prototype.IsValidLinkDest=function(c){var{c,d,e,f,g,h,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d=this;e=S(AW.nil);$s=1;case 1:if($c){$c=false;e=e.$blk();}if(e&&e.$blk!==undefined){break s;}f=e;f.ParseOptions.GFMAutoLink=true;g=H.Parse("",(new AD($stringToBytes(c))),f.ParseOptions);$s=2;case 2:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;if(AF.nil===h.Root.FirstChild||AF.nil===h.Root.FirstChild.FirstChild){$s=-1;return false;}if(!(h.Root.LastChild===h.Root.FirstChild)){$s=-1;return false;}if(!((33===h.Root.FirstChild.FirstChild.Type))){$s=-1;return false;}$s=-1;return true;}return;}var $f={$blk:R.ptr.prototype.IsValidLinkDest,$c:true,$r,c,d,e,f,g,h,$s};return $f;};R.prototype.IsValidLinkDest=function(c){return this.$val.IsValidLinkDest(c);};R.ptr.prototype.GetEmojis=function(){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$deferred,$r,$c}=$restore(this,{});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);c=false;d=this;$r=H.EmojiLock.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(H.EmojiLock,"Unlock"),[]]);c=(e=(d.ParseOptions.AliasEmoji?d.ParseOptions.AliasEmoji.size:0),((e<0||e>2147483647)?$throwRuntimeError("makemap: size out of range"):new $global.Map()));f=J.BytesToStr(H.EmojiSitePlaceholder);g=d.ParseOptions.AliasEmoji;h=0;i=g?g.keys():undefined;j=g?g.size:0;while(true){if(!(h<j)){break;}k=i.next().value;l=g.get(k);if(l===undefined){h++;continue;}m=l.k;n=l.v;if(C.Contains(n,f)){n=C.ReplaceAll(n,f,d.ParseOptions.EmojiSite);}o=m;(c||$throwRuntimeError("assignment to entry in nil map")).set($String.keyFor(o),{k:o,v:n});h++;}p=c;$s=2;case 2:return p;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if(!$curGoroutine.asleep){return c;}if($curGoroutine.asleep){var $f={$blk:R.ptr.prototype.GetEmojis,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,$s,$deferred};return $f;}}};R.prototype.GetEmojis=function(){return this.$val.GetEmojis();};R.ptr.prototype.PutEmojis=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,$s,$deferred,$r,$c}=$restore(this,{c});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);d=this;$r=H.EmojiLock.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(H.EmojiLock,"Unlock"),[]]);e=c;f=0;g=e?e.keys():undefined;h=e?e.size:0;while(true){if(!(f<h)){break;}i=g.next().value;j=e.get(i);if(j===undefined){f++;continue;}k=j.k;l=j.v;m=k;(d.ParseOptions.AliasEmoji||$throwRuntimeError("assignment to entry in nil map")).set($String.keyFor(m),{k:m,v:l});n=l;(d.ParseOptions.EmojiAlias||$throwRuntimeError("assignment to entry in nil map")).set($String.keyFor(n),{k:n,v:k});f++;}$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:R.ptr.prototype.PutEmojis,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,$s,$deferred};return $f;}}};R.prototype.PutEmojis=function(c){return this.$val.PutEmojis(c);};R.ptr.prototype.RemoveEmoji=function(c){var{c,d,e,f,g,h,i,j,k,l,m,$s,$deferred,$r,$c}=$restore(this,{c});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);d=this;$r=H.EmojiLock.Lock();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$deferred.push([$methodVal(H.EmojiLock,"Unlock"),[]]);e=d.ParseOptions.EmojiAlias;f=0;g=e?e.keys():undefined;h=e?e.size:0;while(true){if(!(f<h)){break;}i=g.next().value;j=e.get(i);if(j===undefined){f++;continue;}k=j.k;c=C.ReplaceAll(c,k,"");f++;}l=C.TrimSpace(c);$s=2;case 2:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}m=l;$s=3;case 3:return m;}return;}}catch(err){$err=err;$s=-1;return"";}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:R.ptr.prototype.RemoveEmoji,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,$s,$deferred};return $f;}}};R.prototype.RemoveEmoji=function(c){return this.$val.RemoveEmoji(c);};R.ptr.prototype.GetTerms=function(){var c;c=this;return c.RenderOptions.Terms;};R.prototype.GetTerms=function(){return this.$val.GetTerms();};R.ptr.prototype.PutTerms=function(c){var c,d,e,f,g,h,i,j,k,l,m;d=this;e=c;f=0;g=e?e.keys():undefined;h=e?e.size:0;while(true){if(!(f<h)){break;}i=g.next().value;j=e.get(i);if(j===undefined){f++;continue;}k=j.k;l=j.v;m=k;(d.RenderOptions.Terms||$throwRuntimeError("assignment to entry in nil map")).set($String.keyFor(m),{k:m,v:l});f++;}};R.prototype.PutTerms=function(c){return this.$val.PutTerms(c);};R.ptr.prototype.ProtylePreview=function(c,d){var{c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{c,d});$s=$s||0;s:while(true){switch($s){case 0:e=this;f=I.NewProtylePreviewRenderer(c,d);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=g.Render();$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;$s=-1;return J.BytesToStr(i);}return;}var $f={$blk:R.ptr.prototype.ProtylePreview,$c:true,$r,c,d,e,f,g,h,i,$s};return $f;};R.prototype.ProtylePreview=function(c,d){return this.$val.ProtylePreview(c,d);};R.ptr.prototype.Tree2HTML=function(c,d){var{c,d,e,f,g,h,i,$s,$r,$c}=$restore(this,{c,d});$s=$s||0;s:while(true){switch($s){case 0:e=this;f=I.NewHtmlRenderer(c,d);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;h=g.Render();$s=2;case 2:if($c){$c=false;h=h.$blk();}if(h&&h.$blk!==undefined){break s;}i=h;$s=-1;return J.BytesToStr(i);}return;}var $f={$blk:R.ptr.prototype.Tree2HTML,$c:true,$r,c,d,e,f,g,h,i,$s};return $f;};R.prototype.Tree2HTML=function(c,d){return this.$val.Tree2HTML(c,d);};R.ptr.prototype.SetGFMTable=function(c){var c,d;d=this;d.ParseOptions.GFMTable=c;};R.prototype.SetGFMTable=function(c){return this.$val.SetGFMTable(c);};R.ptr.prototype.SetGFMTaskListItem=function(c){var c,d;d=this;d.ParseOptions.GFMTaskListItem=c;};R.prototype.SetGFMTaskListItem=function(c){return this.$val.SetGFMTaskListItem(c);};R.ptr.prototype.SetGFMTaskListItemClass=function(c){var c,d;d=this;d.RenderOptions.GFMTaskListItemClass=c;};R.prototype.SetGFMTaskListItemClass=function(c){return this.$val.SetGFMTaskListItemClass(c);};R.ptr.prototype.SetGFMStrikethrough=function(c){var c,d;d=this;d.ParseOptions.GFMStrikethrough=c;};R.prototype.SetGFMStrikethrough=function(c){return this.$val.SetGFMStrikethrough(c);};R.ptr.prototype.SetGFMAutoLink=function(c){var c,d;d=this;d.ParseOptions.GFMAutoLink=c;};R.prototype.SetGFMAutoLink=function(c){return this.$val.SetGFMAutoLink(c);};R.ptr.prototype.SetSoftBreak2HardBreak=function(c){var c,d;d=this;d.RenderOptions.SoftBreak2HardBreak=c;};R.prototype.SetSoftBreak2HardBreak=function(c){return this.$val.SetSoftBreak2HardBreak(c);};R.ptr.prototype.SetCodeSyntaxHighlight=function(c){var c,d;d=this;d.RenderOptions.CodeSyntaxHighlight=c;};R.prototype.SetCodeSyntaxHighlight=function(c){return this.$val.SetCodeSyntaxHighlight(c);};R.ptr.prototype.SetCodeSyntaxHighlightDetectLang=function(c){var c,d;d=this;d.RenderOptions.CodeSyntaxHighlightDetectLang=c;};R.prototype.SetCodeSyntaxHighlightDetectLang=function(c){return this.$val.SetCodeSyntaxHighlightDetectLang(c);};R.ptr.prototype.SetCodeSyntaxHighlightInlineStyle=function(c){var c,d;d=this;d.RenderOptions.CodeSyntaxHighlightInlineStyle=c;};R.prototype.SetCodeSyntaxHighlightInlineStyle=function(c){return this.$val.SetCodeSyntaxHighlightInlineStyle(c);};R.ptr.prototype.SetCodeSyntaxHighlightLineNum=function(c){var c,d;d=this;d.RenderOptions.CodeSyntaxHighlightLineNum=c;};R.prototype.SetCodeSyntaxHighlightLineNum=function(c){return this.$val.SetCodeSyntaxHighlightLineNum(c);};R.ptr.prototype.SetCodeSyntaxHighlightStyleName=function(c){var c,d;d=this;d.RenderOptions.CodeSyntaxHighlightStyleName=c;};R.prototype.SetCodeSyntaxHighlightStyleName=function(c){return this.$val.SetCodeSyntaxHighlightStyleName(c);};R.ptr.prototype.SetFootnotes=function(c){var c,d;d=this;d.ParseOptions.Footnotes=c;};R.prototype.SetFootnotes=function(c){return this.$val.SetFootnotes(c);};R.ptr.prototype.SetToC=function(c){var c,d;d=this;d.ParseOptions.ToC=c;d.RenderOptions.ToC=c;};R.prototype.SetToC=function(c){return this.$val.SetToC(c);};R.ptr.prototype.SetHeadingID=function(c){var c,d;d=this;d.ParseOptions.HeadingID=c;d.RenderOptions.HeadingID=c;};R.prototype.SetHeadingID=function(c){return this.$val.SetHeadingID(c);};R.ptr.prototype.SetAutoSpace=function(c){var c,d;d=this;d.RenderOptions.AutoSpace=c;};R.prototype.SetAutoSpace=function(c){return this.$val.SetAutoSpace(c);};R.ptr.prototype.SetFixTermTypo=function(c){var c,d;d=this;d.RenderOptions.FixTermTypo=c;};R.prototype.SetFixTermTypo=function(c){return this.$val.SetFixTermTypo(c);};R.ptr.prototype.SetEmoji=function(c){var c,d;d=this;d.ParseOptions.Emoji=c;};R.prototype.SetEmoji=function(c){return this.$val.SetEmoji(c);};R.ptr.prototype.SetEmojis=function(c){var c,d;d=this;d.ParseOptions.AliasEmoji=c;};R.prototype.SetEmojis=function(c){return this.$val.SetEmojis(c);};R.ptr.prototype.SetEmojiSite=function(c){var c,d;d=this;d.ParseOptions.EmojiSite=c;};R.prototype.SetEmojiSite=function(c){return this.$val.SetEmojiSite(c);};R.ptr.prototype.SetHeadingAnchor=function(c){var c,d;d=this;d.RenderOptions.HeadingAnchor=c;};R.prototype.SetHeadingAnchor=function(c){return this.$val.SetHeadingAnchor(c);};R.ptr.prototype.SetTerms=function(c){var c,d;d=this;d.RenderOptions.Terms=c;};R.prototype.SetTerms=function(c){return this.$val.SetTerms(c);};R.ptr.prototype.SetVditorWYSIWYG=function(c){var c,d;d=this;d.ParseOptions.VditorWYSIWYG=c;d.RenderOptions.VditorWYSIWYG=c;};R.prototype.SetVditorWYSIWYG=function(c){return this.$val.SetVditorWYSIWYG(c);};R.ptr.prototype.SetProtyleWYSIWYG=function(c){var c,d;d=this;d.ParseOptions.ProtyleWYSIWYG=c;d.RenderOptions.ProtyleWYSIWYG=c;};R.prototype.SetProtyleWYSIWYG=function(c){return this.$val.SetProtyleWYSIWYG(c);};R.ptr.prototype.SetVditorIR=function(c){var c,d;d=this;d.ParseOptions.VditorIR=c;d.RenderOptions.VditorIR=c;};R.prototype.SetVditorIR=function(c){return this.$val.SetVditorIR(c);};R.ptr.prototype.SetVditorSV=function(c){var c,d;d=this;d.ParseOptions.VditorSV=c;d.RenderOptions.VditorSV=c;};R.prototype.SetVditorSV=function(c){return this.$val.SetVditorSV(c);};R.ptr.prototype.SetInlineMathAllowDigitAfterOpenMarker=function(c){var c,d;d=this;d.ParseOptions.InlineMathAllowDigitAfterOpenMarker=c;};R.prototype.SetInlineMathAllowDigitAfterOpenMarker=function(c){return this.$val.SetInlineMathAllowDigitAfterOpenMarker(c);};R.ptr.prototype.SetLinkPrefix=function(c){var c,d;d=this;d.RenderOptions.LinkPrefix=c;};R.prototype.SetLinkPrefix=function(c){return this.$val.SetLinkPrefix(c);};R.ptr.prototype.SetLinkBase=function(c){var c,d;d=this;d.RenderOptions.LinkBase=c;};R.prototype.SetLinkBase=function(c){return this.$val.SetLinkBase(c);};R.ptr.prototype.GetLinkBase=function(){var c;c=this;return c.RenderOptions.LinkBase;};R.prototype.GetLinkBase=function(){return this.$val.GetLinkBase();};R.ptr.prototype.SetVditorCodeBlockPreview=function(c){var c,d;d=this;d.RenderOptions.VditorCodeBlockPreview=c;};R.prototype.SetVditorCodeBlockPreview=function(c){return this.$val.SetVditorCodeBlockPreview(c);};R.ptr.prototype.SetVditorMathBlockPreview=function(c){var c,d;d=this;d.RenderOptions.VditorMathBlockPreview=c;};R.prototype.SetVditorMathBlockPreview=function(c){return this.$val.SetVditorMathBlockPreview(c);};R.ptr.prototype.SetVditorHTMLBlockPreview=function(c){var c,d;d=this;d.RenderOptions.VditorHTMLBlockPreview=c;};R.prototype.SetVditorHTMLBlockPreview=function(c){return this.$val.SetVditorHTMLBlockPreview(c);};R.ptr.prototype.SetRenderListStyle=function(c){var c,d;d=this;d.RenderOptions.RenderListStyle=c;};R.prototype.SetRenderListStyle=function(c){return this.$val.SetRenderListStyle(c);};R.ptr.prototype.SetSanitize=function(c){var c,d;d=this;d.RenderOptions.Sanitize=c;};R.prototype.SetSanitize=function(c){return this.$val.SetSanitize(c);};R.ptr.prototype.SetImageLazyLoading=function(c){var c,d;d=this;d.RenderOptions.ImageLazyLoading=c;};R.prototype.SetImageLazyLoading=function(c){return this.$val.SetImageLazyLoading(c);};R.ptr.prototype.SetChineseParagraphBeginningSpace=function(c){var c,d;d=this;d.RenderOptions.ChineseParagraphBeginningSpace=c;};R.prototype.SetChineseParagraphBeginningSpace=function(c){return this.$val.SetChineseParagraphBeginningSpace(c);};R.ptr.prototype.SetYamlFrontMatter=function(c){var c,d;d=this;d.ParseOptions.YamlFrontMatter=c;};R.prototype.SetYamlFrontMatter=function(c){return this.$val.SetYamlFrontMatter(c);};R.ptr.prototype.SetSetext=function(c){var c,d;d=this;d.ParseOptions.Setext=c;};R.prototype.SetSetext=function(c){return this.$val.SetSetext(c);};R.ptr.prototype.SetBlockRef=function(c){var c,d;d=this;d.ParseOptions.BlockRef=c;};R.prototype.SetBlockRef=function(c){return this.$val.SetBlockRef(c);};R.ptr.prototype.SetFileAnnotationRef=function(c){var c,d;d=this;d.ParseOptions.FileAnnotationRef=c;};R.prototype.SetFileAnnotationRef=function(c){return this.$val.SetFileAnnotationRef(c);};R.ptr.prototype.SetMark=function(c){var c,d;d=this;d.ParseOptions.Mark=c;};R.prototype.SetMark=function(c){return this.$val.SetMark(c);};R.ptr.prototype.SetKramdownIAL=function(c){var c,d;d=this;d.ParseOptions.KramdownBlockIAL=c;d.ParseOptions.KramdownSpanIAL=c;d.RenderOptions.KramdownBlockIAL=c;d.RenderOptions.KramdownSpanIAL=c;};R.prototype.SetKramdownIAL=function(c){return this.$val.SetKramdownIAL(c);};R.ptr.prototype.SetKramdownBlockIAL=function(c){var c,d;d=this;d.ParseOptions.KramdownBlockIAL=c;d.RenderOptions.KramdownBlockIAL=c;};R.prototype.SetKramdownBlockIAL=function(c){return this.$val.SetKramdownBlockIAL(c);};R.ptr.prototype.SetKramdownSpanIAL=function(c){var c,d;d=this;d.ParseOptions.KramdownSpanIAL=c;d.RenderOptions.KramdownSpanIAL=c;};R.prototype.SetKramdownSpanIAL=function(c){return this.$val.SetKramdownSpanIAL(c);};R.ptr.prototype.SetKramdownIALIDRenderName=function(c){var c,d;d=this;d.RenderOptions.KramdownIALIDRenderName=c;};R.prototype.SetKramdownIALIDRenderName=function(c){return this.$val.SetKramdownIALIDRenderName(c);};R.ptr.prototype.SetTag=function(c){var c,d;d=this;d.ParseOptions.Tag=c;};R.prototype.SetTag=function(c){return this.$val.SetTag(c);};R.ptr.prototype.SetImgPathAllowSpace=function(c){var c,d;d=this;d.ParseOptions.ImgPathAllowSpace=c;};R.prototype.SetImgPathAllowSpace=function(c){return this.$val.SetImgPathAllowSpace(c);};R.ptr.prototype.SetSuperBlock=function(c){var c,d;d=this;d.ParseOptions.SuperBlock=c;d.RenderOptions.SuperBlock=c;};R.prototype.SetSuperBlock=function(c){return this.$val.SetSuperBlock(c);};R.ptr.prototype.SetSup=function(c){var c,d;d=this;d.ParseOptions.Sup=c;};R.prototype.SetSup=function(c){return this.$val.SetSup(c);};R.ptr.prototype.SetSub=function(c){var c,d;d=this;d.ParseOptions.Sub=c;};R.prototype.SetSub=function(c){return this.$val.SetSub(c);};R.ptr.prototype.SetGitConflict=function(c){var c,d;d=this;d.ParseOptions.GitConflict=c;};R.prototype.SetGitConflict=function(c){return this.$val.SetGitConflict(c);};R.ptr.prototype.SetLinkRef=function(c){var c,d;d=this;d.ParseOptions.LinkRef=c;};R.prototype.SetLinkRef=function(c){return this.$val.SetLinkRef(c);};R.ptr.prototype.SetIndentCodeBlock=function(c){var c,d;d=this;d.ParseOptions.IndentCodeBlock=c;};R.prototype.SetIndentCodeBlock=function(c){return this.$val.SetIndentCodeBlock(c);};R.ptr.prototype.SetDataImage=function(c){var c,d;d=this;d.ParseOptions.DataImage=c;};R.prototype.SetDataImage=function(c){return this.$val.SetDataImage(c);};R.ptr.prototype.SetTextMark=function(c){var c,d;d=this;d.ParseOptions.TextMark=c;};R.prototype.SetTextMark=function(c){return this.$val.SetTextMark(c);};R.ptr.prototype.SetSpin=function(c){var c,d;d=this;d.ParseOptions.Spin=c;};R.prototype.SetSpin=function(c){return this.$val.SetSpin(c);};R.ptr.prototype.SetHTMLTag2TextMark=function(c){var c,d;d=this;d.ParseOptions.HTMLTag2TextMark=c;};R.prototype.SetHTMLTag2TextMark=function(c){return this.$val.SetHTMLTag2TextMark(c);};R.ptr.prototype.SetParagraphBeginningSpace=function(c){var c,d;d=this;d.ParseOptions.ParagraphBeginningSpace=c;d.RenderOptions.KeepParagraphBeginningSpace=c;};R.prototype.SetParagraphBeginningSpace=function(c){return this.$val.SetParagraphBeginningSpace(c);};R.ptr.prototype.SetProtyleMarkNetImg=function(c){var c,d;d=this;d.RenderOptions.ProtyleMarkNetImg=c;};R.prototype.SetProtyleMarkNetImg=function(c){return this.$val.SetProtyleMarkNetImg(c);};R.ptr.prototype.SetSpellcheck=function(c){var c,d;d=this;d.RenderOptions.Spellcheck=c;};R.prototype.SetSpellcheck=function(c){return this.$val.SetSpellcheck(c);};R.ptr.prototype.SetJSRenderers=function(c){var{aa,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d=this;e=(f=$mapIndex(c,$String.keyFor("renderers")),f!==undefined?f.v:false);g=0;h=e?e.keys():undefined;i=e?e.size:0;case 1:if(!(g<i)){$s=2;continue;}j=[j];k=[k];l=h.next().value;m=e.get(l);if(m===undefined){g++;$s=1;continue;}n=m.k;o=m.v;p=$internalize(o,$emptyInterface);switch(0){default:if($assertType(p,BA,true)[1]){break;}else{$panic(new $String("invalid type ["+n+"]"));}}q=false;if("HTML2Md"===n){q=d.HTML2MdRendererFuncs;}else if("HTML2VditorDOM"===n){q=d.HTML2VditorDOMRendererFuncs;}else if("HTML2VditorIRDOM"===n){q=d.HTML2VditorIRDOMRendererFuncs;}else if("HTML2BlockDOM"===n){q=d.HTML2BlockDOMRendererFuncs;}else if("HTML2VditorSVDOM"===n){q=d.HTML2VditorSVDOMRendererFuncs;}else if("Md2HTML"===n){q=d.Md2HTMLRendererFuncs;}else if("Md2VditorDOM"===n){q=d.Md2VditorDOMRendererFuncs;}else if("Md2VditorIRDOM"===n){q=d.Md2VditorIRDOMRendererFuncs;}else if("Md2BlockDOM"===n){q=d.Md2BlockDOMRendererFuncs;}else if("Md2VditorSVDOM"===n){q=d.Md2VditorSVDOMRendererFuncs;}else{$panic(new $String("unknown ext renderer func ["+n+"]"));}j[0]=o;r=$assertType($internalize(j[0],$emptyInterface),BA);s=r;t=0;u=s?s.keys():undefined;v=s?s.size:0;case 3:if(!(t<v)){$s=4;continue;}w=u.next().value;x=s.get(w);if(x===undefined){t++;$s=3;continue;}k[0]=x.k;y="Node"+$substring(k[0],6);aa=D.Str2NodeType(y);$s=5;case 5:if($c){$c=false;aa=aa.$blk();}if(aa&&aa.$blk!==undefined){break s;}z=aa;(q||$throwRuntimeError("assignment to entry in nil map")).set(D.NodeType.keyFor(z),{k:z,v:(function(j,k){return function(ab,ac){var ab,ac,ad;k[0]="render"+$substring(new D.NodeType(ab.Type).String(),4);ad=$assertType($internalize(j[0][$externalize(k[0],$String)](O.MakeWrapper(ab),$externalize(ac,$Bool)),$emptyInterface),AU);return[$assertType((0>=ad.$length?($throwRuntimeError("index out of range"),undefined):ad.$array[ad.$offset+0]),$String),(($assertType((1>=ad.$length?($throwRuntimeError("index out of range"),undefined):ad.$array[ad.$offset+1]),$Float64)>>0))];};})(j,k)});t++;$s=3;continue;case 4:g++;$s=1;continue;case 2:$s=-1;return;}return;}var $f={$blk:R.ptr.prototype.SetJSRenderers,$c:true,$r,aa,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s};return $f;};R.prototype.SetJSRenderers=function(c){return this.$val.SetJSRenderers(c);};R.ptr.prototype.HTML2Markdown=function(c){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d="";e=$ifaceNil;f=this;g=f.HTML2Tree(c);$s=1;case 1:if($c){$c=false;g=g.$blk();}if(g&&g.$blk!==undefined){break s;}h=g;i=AD.nil;j=I.NewFormatRenderer(h,f.RenderOptions);$s=2;case 2:if($c){$c=false;j=j.$blk();}if(j&&j.$blk!==undefined){break s;}k=j;l=f.HTML2MdRendererFuncs;m=0;n=l?l.keys():undefined;o=l?l.size:0;while(true){if(!(m<o)){break;}p=n.next().value;q=l.get(p);if(q===undefined){m++;continue;}r=q.k;s=q.v;t=r;(k.BaseRenderer.ExtRendererFuncs||$throwRuntimeError("assignment to entry in nil map")).set(D.NodeType.keyFor(t),{k:t,v:s});m++;}u=k.BaseRenderer.Render();$s=3;case 3:if($c){$c=false;u=u.$blk();}if(u&&u.$blk!==undefined){break s;}i=u;d=J.BytesToStr(i);$s=-1;return[d,e];}return;}var $f={$blk:R.ptr.prototype.HTML2Markdown,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,$s};return $f;};R.prototype.HTML2Markdown=function(c){return this.$val.HTML2Markdown(c);};R.ptr.prototype.HTML2Tree=function(c){var{c,d,e,f,g,h,$s,$r,$c}=$restore(this,{c});$s=$s||0;s:while(true){switch($s){case 0:d=AB.nil;e=this;f=e.parseHTML(c);$s=1;case 1:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(AE.nil===g){$s=-1;return d;}$r=e.adjustVditorDOM(g);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d=new H.Tree.ptr(new D.Node.ptr("","","","",0,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""),new H.Context.ptr(AB.nil,e.ParseOptions,AF.nil,AF.nil,AD.nil,0,0,0,0,0,0,false,false,false,false,AF.nil,AF.nil),AH.nil,AI.nil,"","","","","",AJ.nil,new $Int64(0,0),new $Int64(0,0),"");d.Context.Tip=d.Root;h=g.FirstChild;case 3:if(!(!(AE.nil===h))){$s=4;continue;}$r=e.genASTByDOM(h,d);$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=h.NextSibling;$s=3;continue;case 4:$r=D.Walk(d.Root,(function(i,j){var i,j,k;if(j){if(7===i.Type){if(!(AF.nil===i.Parent)&&(7===i.Parent.Type)){k=i.Previous;if(!(AF.nil===k)){i.Unlink();k.AppendChild(i);}}}}return 2;}));$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return d;}return;}var $f={$blk:R.ptr.prototype.HTML2Tree,$c:true,$r,c,d,e,f,g,h,$s};return $f;};R.prototype.HTML2Tree=function(c){return this.$val.HTML2Tree(c);};R.ptr.prototype.genASTByDOM=function(c,d){var{aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred,$r,$c}=$restore(this,{c,d});$s=$s||0;var $err=null;try{s:while(true){switch($s){case 0:$deferred=[];$curGoroutine.deferStack.push($deferred);e=this;if((4===c.Type)||(309252===c.DataAtom)){$s=1;continue;}$s=2;continue;case 1:$s=3;case 3:return;case 2:if("svg"===c.Namespace){$s=4;continue;}$s=5;continue;case 4:$s=6;case 6:return;case 5:f=J.DomAttrValue(c,"data-render");if("1"===f){$s=7;continue;}$s=8;continue;case 7:$s=9;case 9:return;case 8:g=J.DomAttrValue(c,"class");if(C.HasPrefix(g,"line-number")&&!C.HasPrefix(g,"line-numbers")){$s=10;continue;}$s=11;continue;case 10:$s=12;case 12:return;case 11:if((0===c.DataAtom)&&(3===c.Type)){$s=13;continue;}$s=14;continue;case 13:h=c.FirstChild;case 15:if(!(!(h===AE.nil))){$s=16;continue;}$r=e.genASTByDOM(h,d);$s=17;case 17:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}h=h.NextSibling;$s=15;continue;case 16:$s=18;case 18:return;case 14:i=new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(c.Data),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");j=c.DataAtom;if(j===(0)){$s=20;continue;}if((j===(3073))||(j===(92931))||(j===(354311))){$s=21;continue;}if((j===(89090))||(j===(187906))||(j===(199938))||(j===(214274))||(j===(216834))||(j===(412930))){$s=22;continue;}if(j===(87810)){$s=23;continue;}if(j===(100106)){$s=24;continue;}if((j===(79618))||(j===(42754))){$s=25;continue;}if(j===(45570)){$s=26;continue;}if(j===(290819)){$s=27;continue;}if((j===(28162))||(j===(1537))){$s=28;continue;}if((j===(449798))||(j===(257))){$s=29;continue;}if(j===(378116)){$s=30;continue;}if(j===(514)){$s=31;continue;}if(j===(1)){$s=32;continue;}if(j===(198403)){$s=33;continue;}if(j===(281349)){$s=34;continue;}if((j===(283139))||(j===(9473))||(j===(53766))){$s=35;continue;}if(j===(46596)){$s=36;continue;}if(j===(461571)){$s=37;continue;}if(j===(421123)){$s=38;continue;}if(j===(365829)){$s=39;continue;}if(j===(208901)){$s=40;continue;}if(j===(9989)){$s=41;continue;}if(j===(52226)){$s=42;continue;}if((j===(87554))||(j===(37378))){$s=43;continue;}if((j===(109320))||(j===(109315))){$s=44;continue;}if(j===(40708)){$s=45;continue;}if(j===(16132)){$s=46;continue;}if(j===(29191)){$s=47;continue;}if(j===(459783)){$s=48;continue;}if((j===(195590))||(j===(70917))||(j===(192773))){$s=49;continue;}if(j===(136712)){$s=50;continue;}if(j===(142858)){$s=51;continue;}if(j===(149510)){$s=52;continue;}$s=53;continue;case 20:if(!(AE.nil===c.Parent)&&(1===c.Parent.DataAtom)){i.Type=40;}if(e.parentIs(c,new AT([365829]))){$s=54;continue;}$s=55;continue;case 54:k=C.TrimSpace(c.Data);$s=58;case 58:if($c){$c=false;k=k.$blk();}if(k&&k.$blk!==undefined){break s;}if(""===k){$s=56;continue;}$s=57;continue;case 56:i.Tokens=(new AD($stringToBytes(" ")));d.Context.Tip.AppendChild(i);$s=19;continue;case 57:l=A.TrimSpace(i.Tokens);$s=59;case 59:if($c){$c=false;l=l.$blk();}if(l&&l.$blk!==undefined){break s;}i.Tokens=l;i.Tokens=A.ReplaceAll(i.Tokens,(new AD($stringToBytes("\n"))),(new AD($stringToBytes(""))));case 55:i.Tokens=A.ReplaceAll(i.Tokens,new AD([194,160]),new AD([32]));i.Tokens=A.ReplaceAll(i.Tokens,(new AD($stringToBytes("\n"))),new AD([32]));if(e.ParseOptions.ProtyleWYSIWYG){i.Tokens=L.EscapeProtyleMarkers(i.Tokens);}else{i.Tokens=L.EscapeMarkers(i.Tokens);}if(!(AF.nil===d.Context.Tip)&&d.Context.Tip.IsBlock()&&!(AE.nil===c.Parent)&&!((40708===c.Parent.DataAtom))&&1>L.TrimWhitespace(i.Tokens).$length){$s=60;continue;}$s=61;continue;case 60:$s=62;case 62:return;case 61:if(!(AE.nil===c.Parent)&&(40708===c.Parent.DataAtom)&&(!(""===J.DomAttrValue(c.Parent,"class")))){m=d.Context.Tip.LastChild;if(AF.nil===m||((16===m.Type)&&!A.HasSuffix(m.Tokens,(new AD($stringToBytes("**")))))){i.Tokens=(new AD($stringToBytes("**"+J.BytesToStr(i.Tokens)+"**")));}}d.Context.Tip.AppendChild(i);$s=53;continue;case 21:if(e.parentIs(c,new AT([365829]))||(33===d.Context.Tip.Type)){$s=19;continue;}if(92931===c.DataAtom){$s=63;continue;}$s=64;continue;case 63:n=J.DomAttrValue(c,"class");o="";if(C.Contains(n,"-source-")){o=$substring(n,(C.LastIndex(n,"-source-")+8>>0));}else if(C.Contains(n,"-text-html-basic")){o="html";}if(!(""===o)){$s=65;continue;}$s=66;continue;case 65:i.Type=11;i.IsFencedCodeBlock=true;i.AppendChild(new D.Node.ptr("","","","",12,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes("```"),"","",false,false,false,0,false,0,3,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));i.AppendChild(new D.Node.ptr("","","","",14,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));p=new A.Buffer.ptr(AD.nil,0,0);i.LastChild.CodeBlockInfo=(new AD($stringToBytes(o)));q=J.DomText(c);$s=67;case 67:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=p.WriteString(q);$s=68;case 68:if($c){$c=false;r=r.$blk();}if(r&&r.$blk!==undefined){break s;}r;s=new D.Node.ptr("","","","",15,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,p.Bytes(),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");i.AppendChild(s);i.AppendChild(new D.Node.ptr("","","","",13,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes("```"),"","",false,false,false,0,false,0,3,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(i);$s=69;case 69:return;case 66:case 64:i.Type=1;d.Context.Tip.AppendChild(i);d.Context.Tip=i;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=53;continue;case 22:if(33===d.Context.Tip.Type){$s=19;continue;}i.Type=2;i.HeadingLevel=((((t=i.Tokens,(1>=t.$length?($throwRuntimeError("index out of range"),undefined):t.$array[t.$offset+1]))-48<<24>>>24)>>0));i.AppendChild(new D.Node.ptr("","","","",3,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(C.Repeat("#",i.HeadingLevel)),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(i);d.Context.Tip=i;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=53;continue;case 23:i.Type=4;d.Context.Tip.AppendChild(i);$s=53;continue;case 24:i.Type=5;i.AppendChild(new D.Node.ptr("","","","",6,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(">"),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(i);d.Context.Tip=i;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=53;continue;case 25:i.Type=7;i.ListData=new D.ListData.ptr(0,false,0,0,0,0,0,false,AD.nil,0);if(79618===c.DataAtom){i.ListData.Typ=1;}i.ListData.Tight=true;d.Context.Tip.AppendChild(i);d.Context.Tip=i;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=53;continue;case 26:i.Type=8;u=J.DomAttrValue(c,"data-marker");v=0;if(""===u){if(!(AE.nil===c.Parent)&&(79618===c.Parent.DataAtom)){w=J.DomAttrValue(c.Parent,"start");if(""===w){u="1.";}else{u=w+".";}}else{u="*";v=u.charCodeAt(0);}}else{if(!(AE.nil===c.Parent)&&!("1."===u)&&(79618===c.Parent.DataAtom)&&!(AE.nil===c.Parent.Parent)&&((79618===c.Parent.Parent.DataAtom)||(42754===c.Parent.Parent.DataAtom))){u="1.";}}i.ListData=new D.ListData.ptr(0,false,v,0,0,0,0,false,(new AD($stringToBytes(u))),0);d.Context.Tip.AppendChild(i);d.Context.Tip=i;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=53;continue;case 27:x=c.FirstChild;if(!(AE.nil===x)){$s=70;continue;}$s=71;continue;case 70:if((92931===x.DataAtom)&&!(AE.nil===x.NextSibling)&&(378116===x.NextSibling.DataAtom)){x=x.NextSibling;c.FirstChild.Unlink();}if((1===x.Type)||(40708===x.DataAtom)||(378116===x.DataAtom)||(354311===x.DataAtom)||(290819===x.DataAtom)){$s=72;continue;}$s=73;continue;case 72:i.Type=11;i.IsFencedCodeBlock=true;i.AppendChild(new D.Node.ptr("","","","",12,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes("```"),"","",false,false,false,0,false,0,3,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));i.AppendChild(new D.Node.ptr("","","","",14,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));if((378116===x.DataAtom)||(40708===x.DataAtom)){y=J.DomAttrValue(x,"class");if(!C.Contains(y,"language-")){y=J.DomAttrValue(c,"class");}if(C.Contains(y,"language-")){z=$substring(y,(C.Index(y,"language-")+9>>0));z=(aa=C.Split(z," "),(0>=aa.$length?($throwRuntimeError("index out of range"),undefined):aa.$array[aa.$offset+0]));i.LastChild.CodeBlockInfo=(new AD($stringToBytes(z)));}}if(378116===x.DataAtom){if(!(AE.nil===x.NextSibling)&&(378116===x.NextSibling.DataAtom)){ab=x.NextSibling;while(true){if(!(!(AE.nil===ab))){break;}ab.InsertBefore(new F.Node.ptr(AE.nil,AE.nil,AE.nil,AE.nil,AE.nil,0,514,"","",AS.nil));ab=ab.NextSibling;}}if(!(AE.nil===x.FirstChild)&&(79618===x.FirstChild.DataAtom)){ac=x.FirstChild.FirstChild;while(true){if(!(!(AE.nil===ac))){break;}if(!(ac===x.FirstChild.FirstChild)){ac.InsertBefore(new F.Node.ptr(AE.nil,AE.nil,AE.nil,AE.nil,AE.nil,0,514,"","",AS.nil));}ac=ac.NextSibling;}}if(!(AE.nil===c.LastChild)&&(42754===c.LastChild.DataAtom)){c.LastChild.Unlink();}}if((290819===x.DataAtom)&&!(AE.nil===x.FirstChild)){ad=x.FirstChild.NextSibling;while(true){if(!(!(AE.nil===ad))){break;}ad.InsertBefore(new F.Node.ptr(AE.nil,AE.nil,AE.nil,AE.nil,AE.nil,0,514,"","",AS.nil));ad=ad.NextSibling;}}ae=new A.Buffer.ptr(AD.nil,0,0);af=J.DomText(c);$s=75;case 75:if($c){$c=false;af=af.$blk();}if(af&&af.$blk!==undefined){break s;}ag=ae.WriteString(af);$s=76;case 76:if($c){$c=false;ag=ag.$blk();}if(ag&&ag.$blk!==undefined){break s;}ag;ah=new D.Node.ptr("","","","",15,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,ae.Bytes(),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");i.AppendChild(ah);i.AppendChild(new D.Node.ptr("","","","",13,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes("```"),"","",false,false,false,0,false,0,3,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));if(d.Context.Tip.ParentIs(106,BB.nil)){ai=A.Split(ah.Tokens,(new AD($stringToBytes("\n"))));aj=ai;ak=0;while(true){if(!(ak<aj.$length)){break;}al=ak;am=((ak<0||ak>=aj.$length)?($throwRuntimeError("index out of range"),undefined):aj.$array[aj.$offset+ak]);if(0<am.$length){an=new D.Node.ptr("","","","",27,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");an.AppendChild(new D.Node.ptr("","","","",28,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("`"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));an.AppendChild(new D.Node.ptr("","","","",29,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,am,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));an.AppendChild(new D.Node.ptr("","","","",30,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("`"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(an);if(al<(ai.$length-1>>0)){if(d.Context.ParseOption.ProtyleWYSIWYG){d.Context.Tip.AppendChild(new D.Node.ptr("","","","",525,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}else{d.Context.Tip.AppendChild(new D.Node.ptr("","","","",31,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("\n"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}}}ak++;}}else{d.Context.Tip.AppendChild(i);}$s=74;continue;case 73:i.Type=9;ao=J.DomHTML(c);$s=77;case 77:if($c){$c=false;ao=ao.$blk();}if(ao&&ao.$blk!==undefined){break s;}i.Tokens=ao;d.Context.Tip.AppendChild(i);case 74:case 71:$s=78;case 78:return;case 28:ap=J.DomText(c);$s=79;case 79:if($c){$c=false;ap=ap.$blk();}if(ap&&ap.$blk!==undefined){break s;}aq=ap;ar=C.TrimSpace(aq);$s=82;case 82:if($c){$c=false;ar=ar.$blk();}if(ar&&ar.$blk!==undefined){break s;}if(""===ar){$s=80;continue;}$s=81;continue;case 80:$s=19;continue;case 81:if(!(AF.nil===d.Context.Tip.LastChild)&&((22===d.Context.Tip.LastChild.Type)||(17===d.Context.Tip.LastChild.Type))){d.Context.Tip.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes("\xE2\x80\x8B"),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}i.Type=17;as="*";i.AppendChild(new D.Node.ptr("","","","",18,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(as),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(i);d.Context.Tip=i;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=53;continue;case 29:at=J.DomText(c);$s=83;case 83:if($c){$c=false;at=at.$blk();}if(at&&at.$blk!==undefined){break s;}au=at;av=C.TrimSpace(au);$s=86;case 86:if($c){$c=false;av=av.$blk();}if(av&&av.$blk!==undefined){break s;}if(""===av){$s=84;continue;}$s=85;continue;case 84:$s=19;continue;case 85:if(!(AF.nil===d.Context.Tip.LastChild)&&((22===d.Context.Tip.LastChild.Type)||(17===d.Context.Tip.LastChild.Type))){d.Context.Tip.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes("\xE2\x80\x8B"),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}i.Type=22;aw="**";i.AppendChild(new D.Node.ptr("","","","",23,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(aw),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(i);d.Context.Tip=i;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=53;continue;case 30:if(AE.nil===c.FirstChild){$s=87;continue;}$s=88;continue;case 87:$s=89;case 89:return;case 88:if(!(AF.nil===d.Context.Tip.LastChild)&&(27===d.Context.Tip.LastChild.Type)){d.Context.Tip.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes("\xE2\x80\x8B"),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}ax=J.DomHTML(c);$s=90;case 90:if($c){$c=false;ax=ax.$blk();}if(ax&&ax.$blk!==undefined){break s;}ay=ax;if(A.Contains(ay,(new AD($stringToBytes(">"))))){ay=$subslice(ay,(A.Index(ay,(new AD($stringToBytes(">"))))+1>>0));}ay=A.TrimSuffix(ay,(new AD($stringToBytes("</code>"))));az=F.UnescapeString(($bytesToString(ay)));ay=(new AD($stringToBytes(az)));ba=new D.Node.ptr("","","","",29,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,ay,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");i.Type=27;i.AppendChild(new D.Node.ptr("","","","",28,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("`"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));i.AppendChild(ba);i.AppendChild(new D.Node.ptr("","","","",30,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("`"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(i);d.Context.Tip=i;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=91;case 91:return;case 31:if(33===d.Context.Tip.Type){$s=19;continue;}if(d.Context.ParseOption.ProtyleWYSIWYG&&e.parentIs(c,new AT([365829]))){i.Type=525;}else{i.Type=31;i.Tokens=J.StrToBytes("\n");}d.Context.Tip.AppendChild(i);d.Context.Tip=i;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=53;continue;case 32:i.Type=33;bb=J.DomText(c);$s=92;case 92:if($c){$c=false;bb=bb.$blk();}if(bb&&bb.$blk!==undefined){break s;}bc=bb;if(""===bc&&!(AE.nil===c.Parent)&&((89090===c.Parent.DataAtom)||(187906===c.Parent.DataAtom)||(199938===c.Parent.DataAtom)||(214274===c.Parent.DataAtom)||(216834===c.Parent.DataAtom)||(412930===c.Parent.DataAtom))){$s=93;continue;}$s=94;continue;case 93:$s=95;case 95:return;case 94:if(""===bc&&AE.nil===c.FirstChild){$s=96;continue;}$s=97;continue;case 96:$s=98;case 98:return;case 97:i.AppendChild(new D.Node.ptr("","","","",36,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(i);d.Context.Tip=i;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=53;continue;case 33:bd=J.DomAttrValue(c,"class");be=J.DomAttrValue(c,"alt");if("emoji"===bd){$s=99;continue;}$s=100;continue;case 99:i.Type=200;bf=new D.Node.ptr("","","","",202,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,d.EmojiImgTokens(be,J.DomAttrValue(c,"src")),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");bf.AppendChild(new D.Node.ptr("","","","",203,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(":"+be+":"),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));i.AppendChild(bf);$s=101;continue;case 100:i.Type=34;i.AppendChild(new D.Node.ptr("","","","",35,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));i.AppendChild(new D.Node.ptr("","","","",36,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));if(!(""===be)){i.AppendChild(new D.Node.ptr("","","","",40,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(be),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}i.AppendChild(new D.Node.ptr("","","","",37,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));i.AppendChild(new D.Node.ptr("","","","",38,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));bg=J.DomAttrValue(c,"src");if(C.HasPrefix(bg,"data:image")){bh=J.DomAttrValue(c,"data-src");if(!(""===bh)){bg=bh;}}if(""===bg){$s=102;continue;}$s=103;continue;case 102:bi=J.DomAttrValue(c,"srcset");if(!(""===bi)){$s=104;continue;}$s=105;continue;case 104:if(C.Contains(bi,",")){$s=106;continue;}$s=107;continue;case 106:bg=(bj=C.Split(bi,","),bk=C.Split(bi,",").$length-1>>0,((bk<0||bk>=bj.$length)?($throwRuntimeError("index out of range"),undefined):bj.$array[bj.$offset+bk]));bl=C.TrimSpace(bg);$s=109;case 109:if($c){$c=false;bl=bl.$blk();}if(bl&&bl.$blk!==undefined){break s;}bg=bl;if(C.Contains(bg," ")){$s=110;continue;}$s=111;continue;case 110:bn=C.TrimSpace((bm=C.Split(bg," "),(0>=bm.$length?($throwRuntimeError("index out of range"),undefined):bm.$array[bm.$offset+0])));$s=112;case 112:if($c){$c=false;bn=bn.$blk();}if(bn&&bn.$blk!==undefined){break s;}bg=bn;case 111:$s=108;continue;case 107:bo=C.TrimSpace(bg);$s=113;case 113:if($c){$c=false;bo=bo.$blk();}if(bo&&bo.$blk!==undefined){break s;}bg=bo;if(C.Contains(bg," ")){$s=114;continue;}$s=115;continue;case 114:bq=C.TrimSpace((bp=C.Split(bi," "),(0>=bp.$length?($throwRuntimeError("index out of range"),undefined):bp.$array[bp.$offset+0])));$s=116;case 116:if($c){$c=false;bq=bq.$blk();}if(bq&&bq.$blk!==undefined){break s;}bg=bq;case 115:case 108:case 105:case 103:i.AppendChild(new D.Node.ptr("","","","",41,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(bg),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));br=J.DomAttrValue(c,"title");if(!(""===br)){i.AppendChild(new D.Node.ptr("","","","",43,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));i.AppendChild(new D.Node.ptr("","","","",42,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes(br))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}i.AppendChild(new D.Node.ptr("","","","",39,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));case 101:if(0===d.Context.Tip.Type){bs=new D.Node.ptr("","","","",1,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");d.Context.Tip.AppendChild(bs);d.Context.Tip=bs;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);}d.Context.Tip.AppendChild(i);d.Context.Tip=i;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=53;continue;case 34:i.Type=100;i.TaskListItemChecked=e.hasAttr(c,"checked");d.Context.Tip.AppendChild(i);if(!(AF.nil===i.Parent.Parent)){if(AL.nil===i.Parent.Parent.ListData){i.Parent.Parent.ListData=new D.ListData.ptr(3,false,0,0,0,0,0,false,AD.nil,0);}else{i.Parent.Parent.ListData.Typ=3;}}$s=53;continue;case 35:i.Type=101;bt="~~";i.AppendChild(new D.Node.ptr("","","","",104,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(bt),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(i);d.Context.Tip=i;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=53;continue;case 36:i.Type=450;bu="==";i.AppendChild(new D.Node.ptr("","","","",453,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(bu),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(i);d.Context.Tip=i;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=53;continue;case 37:i.Type=485;i.AppendChild(new D.Node.ptr("","","","",486,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(i);d.Context.Tip=i;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=53;continue;case 38:i.Type=490;i.AppendChild(new D.Node.ptr("","","","",491,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.AppendChild(i);d.Context.Tip=i;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=53;continue;case 39:i.Type=106;bv=AM.nil;if(!(AE.nil===c.FirstChild)&&!(AE.nil===c.FirstChild.FirstChild)&&!(AE.nil===c.FirstChild.FirstChild.FirstChild)){bw=c.FirstChild.FirstChild.FirstChild;while(true){if(!(!(AE.nil===bw))){break;}bx=J.DomAttrValue(bw,"align");by=bx;if(by===("left")){bv=$append(bv,1);}else if(by===("center")){bv=$append(bv,2);}else if(by===("right")){bv=$append(bv,3);}else{bv=$append(bv,0);}bw=bw.NextSibling;}}i.TableAligns=bv;d.Context.Tip.AppendChild(i);d.Context.Tip=i;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=53;continue;case 40:if(AE.nil===c.FirstChild){$s=19;continue;}i.Type=107;d.Context.Tip.AppendChild(i);d.Context.Tip=i;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=53;continue;case 41:$s=53;continue;case 42:if(AE.nil===c.FirstChild){$s=19;continue;}bz=c.Parent.Parent;i.Type=108;if(AF.nil===d.Context.Tip.ChildByType(107)&&AE.nil===J.DomChildByType(bz,208901)){ca=new D.Node.ptr("","","","",107,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,"");d.Context.Tip.AppendChild(ca);d.Context.Tip=ca;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);}d.Context.Tip.AppendChild(i);d.Context.Tip=i;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=53;continue;case 43:i.Type=109;cb=J.DomAttrValue(c,"align");cc=0;cd=cb;if(cd===("left")){cc=1;}else if(cd===("center")){cc=2;}else if(cd===("right")){cc=3;}else{cc=0;}i.TableCellAlign=cc;d.Context.Tip.AppendChild(i);d.Context.Tip=i;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);$s=53;continue;case 44:$s=117;case 117:return;case 45:if(AE.nil===c.FirstChild){$s=118;continue;}$s=119;continue;case 118:$s=120;case 120:return;case 119:$s=53;continue;case 46:i.Type=16;ce=J.DomText(c);$s=121;case 121:if($c){$c=false;ce=ce.$blk();}if(ce&&ce.$blk!==undefined){break s;}i.Tokens=(new AD($stringToBytes(ce)));i.Tokens=A.ReplaceAll(i.Tokens,(new AD($stringToBytes("\n"))),AD.nil);d.Context.Tip.AppendChild(i);$s=122;case 122:return;case 47:i.Type=9;cf=J.DomHTML(c);$s=123;case 123:if($c){$c=false;cf=cf.$blk();}if(cf&&cf.$blk!==undefined){break s;}i.Tokens=cf;i.Tokens=(cg=A.SplitAfter(i.Tokens,(new AD($stringToBytes("</summary>")))),(0>=cg.$length?($throwRuntimeError("index out of range"),undefined):cg.$array[cg.$offset+0]));d.Context.Tip.AppendChild(i);$s=53;continue;case 48:$s=124;case 124:return;case 49:i.Type=9;ch=J.DomHTML(c);$s=125;case 125:if($c){$c=false;ch=ch.$blk();}if(ch&&ch.$blk!==undefined){break s;}i.Tokens=ch;d.Context.Tip.AppendChild(i);$s=126;case 126:return;case 50:$s=127;case 127:return;case 51:i.Type=1;i.AppendChild(new D.Node.ptr("","","","",31,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));ci=J.DomText(c);$s=128;case 128:if($c){$c=false;ci=ci.$blk();}if(ci&&ci.$blk!==undefined){break s;}cj=J.StrToBytes(ci);$s=129;case 129:if($c){$c=false;cj=cj.$blk();}if(cj&&cj.$blk!==undefined){break s;}$r=i.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,cj,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));$s=130;case 130:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}d.Context.Tip.AppendChild(i);$s=131;case 131:return;case 52:i.Type=1;d.Context.Tip.AppendChild(i);d.Context.Tip=i;$deferred.push([$methodVal(d.Context,"ParentTip"),[]]);case 53:case 19:ck=c.FirstChild;case 132:if(!(!(ck===AE.nil))){$s=133;continue;}$r=e.genASTByDOM(ck,d);$s=134;case 134:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}ck=ck.NextSibling;$s=132;continue;case 133:cl=c.DataAtom;if((cl===(28162))||(cl===(1537))){$s=136;continue;}if((cl===(449798))||(cl===(257))){$s=137;continue;}if(cl===(1)){$s=138;continue;}if((cl===(283139))||(cl===(9473))||(cl===(53766))){$s=139;continue;}if(cl===(46596)){$s=140;continue;}if(cl===(461571)){$s=141;continue;}if(cl===(421123)){$s=142;continue;}if(cl===(29191)){$s=143;continue;}$s=144;continue;case 136:cm="*";i.AppendChild(new D.Node.ptr("","","","",19,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(cm),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));$r=AA(c,d,e);$s=145;case 145:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=144;continue;case 137:cn="**";i.AppendChild(new D.Node.ptr("","","","",24,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(cn),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));$r=AA(c,d,e);$s=146;case 146:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=144;continue;case 138:i.AppendChild(new D.Node.ptr("","","","",37,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));i.AppendChild(new D.Node.ptr("","","","",38,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));i.AppendChild(new D.Node.ptr("","","","",41,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(J.DomAttrValue(c,"href")),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));co=J.DomAttrValue(c,"title");if(!(""===co)){i.AppendChild(new D.Node.ptr("","","","",43,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));i.AppendChild(new D.Node.ptr("","","","",42,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(co),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}i.AppendChild(new D.Node.ptr("","","","",39,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));$s=144;continue;case 139:cp="~~";i.AppendChild(new D.Node.ptr("","","","",105,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(cp),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));$r=AA(c,d,e);$s=147;case 147:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=144;continue;case 140:cq="==";i.AppendChild(new D.Node.ptr("","","","",454,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(cq),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));$r=AA(c,d,e);$s=148;case 148:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=144;continue;case 141:i.AppendChild(new D.Node.ptr("","","","",487,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));$r=AA(c,d,e);$s=149;case 149:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=144;continue;case 142:i.AppendChild(new D.Node.ptr("","","","",492,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,AD.nil,"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));$r=AA(c,d,e);$s=150;case 150:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=144;continue;case 143:d.Context.Tip.AppendChild(new D.Node.ptr("","","","",9,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("</details>"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));case 144:case 135:$s=-1;return;}return;}}catch(err){$err=err;$s=-1;}finally{$callDeferred($deferred,$err);if($curGoroutine.asleep){var $f={$blk:R.ptr.prototype.genASTByDOM,$c:true,$r,aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az,ba,bb,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,bu,bv,bw,bx,by,bz,c,ca,cb,cc,cd,ce,cf,cg,ch,ci,cj,ck,cl,cm,cn,co,cp,cq,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$s,$deferred};return $f;}}};R.prototype.genASTByDOM=function(c,d){return this.$val.genASTByDOM(c,d);};AA=function(c,d,e){var{c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s,$r,$c}=$restore(this,{c,d,e});$s=$s||0;s:while(true){switch($s){case 0:if(!(AE.nil===c.NextSibling)){$s=1;continue;}$s=2;continue;case 1:f=J.DomText(c.NextSibling);$s=3;case 3:if($c){$c=false;f=f.$blk();}if(f&&f.$blk!==undefined){break s;}g=f;if(!(""===g)){$s=4;continue;}$s=5;continue;case 4:h=(new BC($stringToRunes(g)));if(!P.IsSpace((0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0]))){$s=6;continue;}$s=7;continue;case 6:if(P.IsPunct((0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0]))||P.IsSymbol((0>=h.$length?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+0]))){d.Context.Tip.InsertBefore(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("\xE2\x80\x8B"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));d.Context.Tip.InsertAfter(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,(new AD($stringToBytes("\xE2\x80\x8B"))),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));$s=-1;return;}i=J.DomText(c);$s=8;case 8:if($c){$c=false;i=i.$blk();}if(i&&i.$blk!==undefined){break s;}j=i;if(!(""===j)){$s=9;continue;}$s=10;continue;case 9:h=(new BC($stringToRunes(j)));l=(k=h.$length-1>>0,((k<0||k>=h.$length)?($throwRuntimeError("index out of range"),undefined):h.$array[h.$offset+k]));if(P.IsPunct(l)||P.IsSymbol(l)){m=d.Context.Tip.ChildByType(16);if(!(AF.nil===m)){m.Tokens=$appendSlice((new AD($stringToBytes("\xE2\x80\x8B"))),m.Tokens);m.Tokens=$appendSlice(m.Tokens,(new AD($stringToBytes("\xE2\x80\x8B"))));}$s=-1;return;}n=e.prefixSpaces(j);if(!(""===n)){o=d.Context.Tip.Previous;if(!(AF.nil===o)){if(16===o.Type){o.Tokens=$appendSlice(o.Tokens,J.StrToBytes(n));}else{o.InsertAfter(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(n),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}}else{d.Context.Tip.AppendChild(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(n),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}p=d.Context.Tip.ChildByType(16);p.Tokens=A.TrimLeft(p.Tokens," \xC5\xA0");}n=e.suffixSpaces(j);if(!(""===n)){$s=11;continue;}$s=12;continue;case 11:q=d.Context.Tip.ChildrenByType(16);$s=13;case 13:if($c){$c=false;q=q.$blk();}if(q&&q.$blk!==undefined){break s;}r=q;if(0<r.$length){t=(s=r.$length-1>>0,((s<0||s>=r.$length)?($throwRuntimeError("index out of range"),undefined):r.$array[r.$offset+s]));t.Tokens=A.TrimRight(t.Tokens," \xC5\xA0");if(1>t.Tokens.$length){t.Unlink();}}if(!(AE.nil===c.NextSibling)){if(1===c.NextSibling.Type){c.NextSibling.Data=n+c.NextSibling.Data;}else{d.Context.Tip.InsertAfter(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(n),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}}else{d.Context.Tip.InsertAfter(new D.Node.ptr("","","","",16,AF.nil,AF.nil,AF.nil,AF.nil,AF.nil,AK.nil,J.StrToBytes(n),"","",false,false,false,0,false,0,0,0,AD.nil,AD.nil,AD.nil,0,AL.nil,false,AM.nil,0,0,0,0,AD.nil,0,false,"",0,AD.nil,"",AK.nil,AD.nil,AN.nil,false,"","","","","","","","","","","",0,""));}case 12:case 10:case 7:case 5:case 2:$s=-1;return;}return;}var $f={$blk:AA,$c:true,$r,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,$s};return $f;};AV.methods=[{prop:"Md2HTML",name:"Md2HTML",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"SpinVditorDOM",name:"SpinVditorDOM",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"HTML2VditorDOM",name:"HTML2VditorDOM",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"VditorDOM2HTML",name:"VditorDOM2HTML",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"Md2VditorDOM",name:"Md2VditorDOM",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"VditorDOM2Md",name:"VditorDOM2Md",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"RenderEChartsJSON",name:"RenderEChartsJSON",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"RenderKityMinderJSON",name:"RenderKityMinderJSON",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"HTML2Md",name:"HTML2Md",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"vditorDOM2Md",name:"vditorDOM2Md",pkg:"github.com/88250/lute",typ:$funcType([$String],[$String],false)},{prop:"parseHTML",name:"parseHTML",pkg:"github.com/88250/lute",typ:$funcType([$String],[AE],false)},{prop:"adjustVditorDOM",name:"adjustVditorDOM",pkg:"github.com/88250/lute",typ:$funcType([AE],[],false)},{prop:"adjustVditorDOMListList",name:"adjustVditorDOMListList",pkg:"github.com/88250/lute",typ:$funcType([AE],[],false)},{prop:"removeHighlightJSSpans",name:"removeHighlightJSSpans",pkg:"github.com/88250/lute",typ:$funcType([AE],[],false)},{prop:"hljsSpans",name:"hljsSpans",pkg:"github.com/88250/lute",typ:$funcType([AE,AQ],[],false)},{prop:"removeEmptyNodes",name:"removeEmptyNodes",pkg:"github.com/88250/lute",typ:$funcType([AE],[],false)},{prop:"searchEmptyNodes",name:"searchEmptyNodes",pkg:"github.com/88250/lute",typ:$funcType([AE,AQ],[],false)},{prop:"mergeVditorDOMList0",name:"mergeVditorDOMList0",pkg:"github.com/88250/lute",typ:$funcType([AE],[],false)},{prop:"adjustVditorDOMListTight0",name:"adjustVditorDOMListTight0",pkg:"github.com/88250/lute",typ:$funcType([AE],[],false)},{prop:"adjustVditorDOMListItemInP",name:"adjustVditorDOMListItemInP",pkg:"github.com/88250/lute",typ:$funcType([AE],[],false)},{prop:"forwardNextBlock",name:"forwardNextBlock",pkg:"github.com/88250/lute",typ:$funcType([AE],[AP,AE],false)},{prop:"listItemEnter",name:"listItemEnter",pkg:"github.com/88250/lute",typ:$funcType([AE],[$Bool],false)},{prop:"isTightList",name:"isTightList",pkg:"github.com/88250/lute",typ:$funcType([AE],[$String],false)},{prop:"genASTByVditorDOM",name:"genASTByVditorDOM",pkg:"github.com/88250/lute",typ:$funcType([AE,AB],[],false)},{prop:"hasAttr",name:"hasAttr",pkg:"github.com/88250/lute",typ:$funcType([AE,$String],[$Bool],false)},{prop:"domChild",name:"domChild",pkg:"github.com/88250/lute",typ:$funcType([AE,G.Atom],[AE],false)},{prop:"domChild0",name:"domChild0",pkg:"github.com/88250/lute",typ:$funcType([AE,G.Atom],[AE],false)},{prop:"setDOMAttrValue",name:"setDOMAttrValue",pkg:"github.com/88250/lute",typ:$funcType([AE,$String,$String],[],false)},{prop:"removeDOMAttr",name:"removeDOMAttr",pkg:"github.com/88250/lute",typ:$funcType([AE,$String],[],false)},{prop:"domCode",name:"domCode",pkg:"github.com/88250/lute",typ:$funcType([AE],[$String],false)},{prop:"domCode0",name:"domCode0",pkg:"github.com/88250/lute",typ:$funcType([AE,AY],[],false)},{prop:"parentIs",name:"parentIs",pkg:"github.com/88250/lute",typ:$funcType([AE,AT],[$Bool],true)},{prop:"getParent",name:"getParent",pkg:"github.com/88250/lute",typ:$funcType([AE,G.Atom],[AE],false)},{prop:"isCaret",name:"isCaret",pkg:"github.com/88250/lute",typ:$funcType([AE],[$Bool,$Bool],false)},{prop:"isEmptyText",name:"isEmptyText",pkg:"github.com/88250/lute",typ:$funcType([AE],[$Bool],false)},{prop:"startsWithNewline",name:"startsWithNewline",pkg:"github.com/88250/lute",typ:$funcType([AE],[$Bool],false)},{prop:"isInline",name:"isInline",pkg:"github.com/88250/lute",typ:$funcType([AE],[$Bool],false)},{prop:"prefixSpaces",name:"prefixSpaces",pkg:"github.com/88250/lute",typ:$funcType([$String],[$String],false)},{prop:"suffixSpaces",name:"suffixSpaces",pkg:"github.com/88250/lute",typ:$funcType([$String],[$String],false)},{prop:"SpinVditorSVDOM",name:"SpinVditorSVDOM",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"HTML2VditorSVDOM",name:"HTML2VditorSVDOM",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"Md2VditorSVDOM",name:"Md2VditorSVDOM",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"SpinVditorIRDOM",name:"SpinVditorIRDOM",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"HTML2VditorIRDOM",name:"HTML2VditorIRDOM",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"VditorIRDOM2HTML",name:"VditorIRDOM2HTML",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"Md2VditorIRDOM",name:"Md2VditorIRDOM",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"VditorIRDOM2Md",name:"VditorIRDOM2Md",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"vditorIRDOM2Md",name:"vditorIRDOM2Md",pkg:"github.com/88250/lute",typ:$funcType([$String],[$String],false)},{prop:"genASTByVditorIRDOM",name:"genASTByVditorIRDOM",pkg:"github.com/88250/lute",typ:$funcType([AE,AB],[],false)},{prop:"SpinBlockDOM",name:"SpinBlockDOM",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"HTML2BlockDOM",name:"HTML2BlockDOM",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"BlockDOM2HTML",name:"BlockDOM2HTML",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"BlockDOM2InlineBlockDOM",name:"BlockDOM2InlineBlockDOM",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"Md2BlockDOM",name:"Md2BlockDOM",pkg:"",typ:$funcType([$String,$Bool],[$String],false)},{prop:"Md2BlockDOMTree",name:"Md2BlockDOMTree",pkg:"",typ:$funcType([$String,$Bool],[$String,AB],false)},{prop:"InlineMd2BlockDOM",name:"InlineMd2BlockDOM",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"BlockDOM2Md",name:"BlockDOM2Md",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"BlockDOM2StdMd",name:"BlockDOM2StdMd",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"BlockDOM2Text",name:"BlockDOM2Text",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"BlockDOM2TextLen",name:"BlockDOM2TextLen",pkg:"",typ:$funcType([$String],[$Int],false)},{prop:"BlockDOM2Content",name:"BlockDOM2Content",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"BlockDOM2EscapeMarkerContent",name:"BlockDOM2EscapeMarkerContent",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"Tree2BlockDOM",name:"Tree2BlockDOM",pkg:"",typ:$funcType([AB,AC],[$String],false)},{prop:"RenderNodeBlockDOM",name:"RenderNodeBlockDOM",pkg:"",typ:$funcType([AF],[$String],false)},{prop:"BlockDOM2Tree",name:"BlockDOM2Tree",pkg:"",typ:$funcType([$String],[AB],false)},{prop:"MergeSameTextMark",name:"MergeSameTextMark",pkg:"",typ:$funcType([AF],[],false)},{prop:"MergeSameSpan",name:"MergeSameSpan",pkg:"",typ:$funcType([AF],[],false)},{prop:"CancelSuperBlock",name:"CancelSuperBlock",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"CancelList",name:"CancelList",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"CancelBlockquote",name:"CancelBlockquote",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"Blocks2Ps",name:"Blocks2Ps",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"Blocks2Hs",name:"Blocks2Hs",pkg:"",typ:$funcType([$String,$String],[$String],false)},{prop:"OL2TL",name:"OL2TL",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"UL2TL",name:"UL2TL",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"TL2OL",name:"TL2OL",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"TL2UL",name:"TL2UL",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"OL2UL",name:"OL2UL",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"UL2OL",name:"UL2OL",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"blockDOM2Md",name:"blockDOM2Md",pkg:"github.com/88250/lute",typ:$funcType([$String],[$String],false)},{prop:"genASTByBlockDOM",name:"genASTByBlockDOM",pkg:"github.com/88250/lute",typ:$funcType([AE,AB],[],false)},{prop:"genASTContenteditable",name:"genASTContenteditable",pkg:"github.com/88250/lute",typ:$funcType([AE,AB],[],false)},{prop:"setBlockIAL",name:"setBlockIAL",pkg:"github.com/88250/lute",typ:$funcType([AE,AF],[AD],false)},{prop:"removeInnerMarker",name:"removeInnerMarker",pkg:"github.com/88250/lute",typ:$funcType([AE,$String],[],false)},{prop:"removeInnerMarker0",name:"removeInnerMarker0",pkg:"github.com/88250/lute",typ:$funcType([AE,$String],[],false)},{prop:"removeTempMark",name:"removeTempMark",pkg:"github.com/88250/lute",typ:$funcType([$String],[$String],false)},{prop:"Markdown",name:"Markdown",pkg:"",typ:$funcType([$String,AD],[AD],false)},{prop:"MarkdownStr",name:"MarkdownStr",pkg:"",typ:$funcType([$String,$String],[$String],false)},{prop:"Format",name:"Format",pkg:"",typ:$funcType([$String,AD],[AD],false)},{prop:"FormatStr",name:"FormatStr",pkg:"",typ:$funcType([$String,$String],[$String],false)},{prop:"TextBundle",name:"TextBundle",pkg:"",typ:$funcType([$String,AD,AJ],[AD,AJ],false)},{prop:"TextBundleStr",name:"TextBundleStr",pkg:"",typ:$funcType([$String,$String,AJ],[$String,AJ],false)},{prop:"HTML2Text",name:"HTML2Text",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"RenderJSON",name:"RenderJSON",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"Space",name:"Space",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"IsValidLinkDest",name:"IsValidLinkDest",pkg:"",typ:$funcType([$String],[$Bool],false)},{prop:"GetEmojis",name:"GetEmojis",pkg:"",typ:$funcType([],[BD],false)},{prop:"PutEmojis",name:"PutEmojis",pkg:"",typ:$funcType([BD],[],false)},{prop:"RemoveEmoji",name:"RemoveEmoji",pkg:"",typ:$funcType([$String],[$String],false)},{prop:"GetTerms",name:"GetTerms",pkg:"",typ:$funcType([],[BD],false)},{prop:"PutTerms",name:"PutTerms",pkg:"",typ:$funcType([BD],[],false)},{prop:"ProtylePreview",name:"ProtylePreview",pkg:"",typ:$funcType([AB,AC],[$String],false)},{prop:"Tree2HTML",name:"Tree2HTML",pkg:"",typ:$funcType([AB,AC],[$String],false)},{prop:"SetGFMTable",name:"SetGFMTable",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetGFMTaskListItem",name:"SetGFMTaskListItem",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetGFMTaskListItemClass",name:"SetGFMTaskListItemClass",pkg:"",typ:$funcType([$String],[],false)},{prop:"SetGFMStrikethrough",name:"SetGFMStrikethrough",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetGFMAutoLink",name:"SetGFMAutoLink",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetSoftBreak2HardBreak",name:"SetSoftBreak2HardBreak",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetCodeSyntaxHighlight",name:"SetCodeSyntaxHighlight",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetCodeSyntaxHighlightDetectLang",name:"SetCodeSyntaxHighlightDetectLang",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetCodeSyntaxHighlightInlineStyle",name:"SetCodeSyntaxHighlightInlineStyle",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetCodeSyntaxHighlightLineNum",name:"SetCodeSyntaxHighlightLineNum",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetCodeSyntaxHighlightStyleName",name:"SetCodeSyntaxHighlightStyleName",pkg:"",typ:$funcType([$String],[],false)},{prop:"SetFootnotes",name:"SetFootnotes",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetToC",name:"SetToC",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetHeadingID",name:"SetHeadingID",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetAutoSpace",name:"SetAutoSpace",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetFixTermTypo",name:"SetFixTermTypo",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetEmoji",name:"SetEmoji",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetEmojis",name:"SetEmojis",pkg:"",typ:$funcType([BD],[],false)},{prop:"SetEmojiSite",name:"SetEmojiSite",pkg:"",typ:$funcType([$String],[],false)},{prop:"SetHeadingAnchor",name:"SetHeadingAnchor",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetTerms",name:"SetTerms",pkg:"",typ:$funcType([BD],[],false)},{prop:"SetVditorWYSIWYG",name:"SetVditorWYSIWYG",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetProtyleWYSIWYG",name:"SetProtyleWYSIWYG",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetVditorIR",name:"SetVditorIR",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetVditorSV",name:"SetVditorSV",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetInlineMathAllowDigitAfterOpenMarker",name:"SetInlineMathAllowDigitAfterOpenMarker",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetLinkPrefix",name:"SetLinkPrefix",pkg:"",typ:$funcType([$String],[],false)},{prop:"SetLinkBase",name:"SetLinkBase",pkg:"",typ:$funcType([$String],[],false)},{prop:"GetLinkBase",name:"GetLinkBase",pkg:"",typ:$funcType([],[$String],false)},{prop:"SetVditorCodeBlockPreview",name:"SetVditorCodeBlockPreview",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetVditorMathBlockPreview",name:"SetVditorMathBlockPreview",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetVditorHTMLBlockPreview",name:"SetVditorHTMLBlockPreview",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetRenderListStyle",name:"SetRenderListStyle",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetSanitize",name:"SetSanitize",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetImageLazyLoading",name:"SetImageLazyLoading",pkg:"",typ:$funcType([$String],[],false)},{prop:"SetChineseParagraphBeginningSpace",name:"SetChineseParagraphBeginningSpace",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetYamlFrontMatter",name:"SetYamlFrontMatter",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetSetext",name:"SetSetext",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetBlockRef",name:"SetBlockRef",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetFileAnnotationRef",name:"SetFileAnnotationRef",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetMark",name:"SetMark",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetKramdownIAL",name:"SetKramdownIAL",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetKramdownBlockIAL",name:"SetKramdownBlockIAL",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetKramdownSpanIAL",name:"SetKramdownSpanIAL",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetKramdownIALIDRenderName",name:"SetKramdownIALIDRenderName",pkg:"",typ:$funcType([$String],[],false)},{prop:"SetTag",name:"SetTag",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetImgPathAllowSpace",name:"SetImgPathAllowSpace",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetSuperBlock",name:"SetSuperBlock",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetSup",name:"SetSup",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetSub",name:"SetSub",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetGitConflict",name:"SetGitConflict",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetLinkRef",name:"SetLinkRef",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetIndentCodeBlock",name:"SetIndentCodeBlock",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetDataImage",name:"SetDataImage",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetTextMark",name:"SetTextMark",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetSpin",name:"SetSpin",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetHTMLTag2TextMark",name:"SetHTMLTag2TextMark",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetParagraphBeginningSpace",name:"SetParagraphBeginningSpace",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetProtyleMarkNetImg",name:"SetProtyleMarkNetImg",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetSpellcheck",name:"SetSpellcheck",pkg:"",typ:$funcType([$Bool],[],false)},{prop:"SetJSRenderers",name:"SetJSRenderers",pkg:"",typ:$funcType([BG],[],false)},{prop:"HTML2Markdown",name:"HTML2Markdown",pkg:"",typ:$funcType([$String],[$String,$error],false)},{prop:"HTML2Tree",name:"HTML2Tree",pkg:"",typ:$funcType([$String],[AB],false)},{prop:"genASTByDOM",name:"genASTByDOM",pkg:"github.com/88250/lute",typ:$funcType([AE,AB],[],false)}];R.init("",[{prop:"ParseOptions",name:"ParseOptions",embedded:false,exported:true,typ:AO,tag:""},{prop:"RenderOptions",name:"RenderOptions",embedded:false,exported:true,typ:AC,tag:""},{prop:"HTML2MdRendererFuncs",name:"HTML2MdRendererFuncs",embedded:false,exported:true,typ:BH,tag:""},{prop:"HTML2VditorDOMRendererFuncs",name:"HTML2VditorDOMRendererFuncs",embedded:false,exported:true,typ:BH,tag:""},{prop:"HTML2VditorIRDOMRendererFuncs",name:"HTML2VditorIRDOMRendererFuncs",embedded:false,exported:true,typ:BH,tag:""},{prop:"HTML2BlockDOMRendererFuncs",name:"HTML2BlockDOMRendererFuncs",embedded:false,exported:true,typ:BH,tag:""},{prop:"HTML2VditorSVDOMRendererFuncs",name:"HTML2VditorSVDOMRendererFuncs",embedded:false,exported:true,typ:BH,tag:""},{prop:"Md2HTMLRendererFuncs",name:"Md2HTMLRendererFuncs",embedded:false,exported:true,typ:BH,tag:""},{prop:"Md2VditorDOMRendererFuncs",name:"Md2VditorDOMRendererFuncs",embedded:false,exported:true,typ:BH,tag:""},{prop:"Md2VditorIRDOMRendererFuncs",name:"Md2VditorIRDOMRendererFuncs",embedded:false,exported:true,typ:BH,tag:""},{prop:"Md2BlockDOMRendererFuncs",name:"Md2BlockDOMRendererFuncs",embedded:false,exported:true,typ:BH,tag:""},{prop:"Md2VditorSVDOMRendererFuncs",name:"Md2VditorSVDOMRendererFuncs",embedded:false,exported:true,typ:BH,tag:""}]);Z.init([AV],[],false);$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=M.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=K.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=G.$init();$s=7;case 7:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=L.$init();$s=8;case 8:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=H.$init();$s=9;case 9:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=I.$init();$s=10;case 10:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=J.$init();$s=11;case 11:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=O.$init();$s=12;case 12:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=13;case 13:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=14;case 14:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=N.$init();$s=15;case 15:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=P.$init();$s=16;case 16:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}a=I.NewFormatRenderer(AB.nil,AC.nil);$s=17;case 17:if($c){$c=false;a=a.$blk();}if(a&&a.$blk!==undefined){break s;}T=a;b=I.NewProtyleExportMdRenderer(AB.nil,AC.nil);$s=18;case 18:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}W=b;}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$packages["github.com/88250/lute/javascript"]=(function(){var $pkg={},$init,A,B,C,D,E,F,J,K,L,M,N,O,P,Q,R,S,G,H,I;A=$packages["github.com/88250/lute"];B=$packages["github.com/88250/lute/ast"];C=$packages["github.com/88250/lute/editor"];D=$packages["github.com/88250/lute/html"];E=$packages["github.com/88250/lute/render"];F=$packages["github.com/gopherjs/gopherjs/js"];J=$ptrType(F.Object);K=$mapType($String,J);L=$mapType($String,K);M=$funcType([L],[J],false);N=$ptrType(B.Node);O=$funcType([N],[$String],false);P=$funcType([],[$String],false);Q=$funcType([$String],[$String],false);R=$mapType($String,$emptyInterface);S=$sliceType(A.ParseOption);G=function(){$global.Lute=$externalize($makeMap($String.keyFor,[{k:"Version",v:new $String("1.7.6")},{k:"New",v:new M(H)},{k:"WalkStop",v:new $Int(0)},{k:"WalkSkipChildren",v:new $Int(1)},{k:"WalkContinue",v:new $Int(2)},{k:"GetHeadingID",v:new O(E.HeadingID)},{k:"Caret",v:new $String("\xE2\x80\xB8")},{k:"NewNodeID",v:new P(B.NewNodeID)},{k:"EscapeHTMLStr",v:new Q(D.EscapeHTMLStr)},{k:"UnEscapeHTMLStr",v:new Q(D.UnescapeHTMLStr)},{k:"EChartsMindmapStr",v:new Q(E.EChartsMindmapStr)},{k:"Sanitize",v:new Q(E.Sanitize)},{k:"BlockDOM2Content",v:new Q(I)}]),R);};H=function(a){var{a,b,c,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=A.New(S.nil);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;$r=c.SetJSRenderers(a);$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$s=-1;return F.MakeWrapper(c);}return;}var $f={$blk:H,$c:true,$r,a,b,c,$s};return $f;};$pkg.New=H;I=function(a){var{a,b,c,d,e,$s,$r,$c}=$restore(this,{a});$s=$s||0;s:while(true){switch($s){case 0:b=A.New(S.nil);$s=1;case 1:if($c){$c=false;b=b.$blk();}if(b&&b.$blk!==undefined){break s;}c=b;c.SetProtyleWYSIWYG(true);c.SetBlockRef(true);c.SetFileAnnotationRef(true);c.SetKramdownIAL(true);c.SetTag(true);c.SetSuperBlock(true);c.SetImgPathAllowSpace(true);c.SetGitConflict(true);c.SetMark(true);c.SetSup(true);c.SetSub(true);c.SetInlineMathAllowDigitAfterOpenMarker(true);c.SetFootnotes(false);c.SetToC(false);c.SetIndentCodeBlock(false);c.SetParagraphBeginningSpace(true);c.SetAutoSpace(false);c.SetHeadingID(false);c.SetSetext(false);c.SetYamlFrontMatter(false);c.SetLinkRef(false);c.SetCodeSyntaxHighlight(false);c.SetSanitize(true);d=c.BlockDOM2Content(a);$s=2;case 2:if($c){$c=false;d=d.$blk();}if(d&&d.$blk!==undefined){break s;}e=d;$s=3;case 3:return e;}return;}var $f={$blk:I,$c:true,$r,a,b,c,d,e,$s};return $f;};$pkg.BlockDOM2Content=I;$init=function(){$pkg.$init=function(){};var $f,$c=false,$s=0,$r;if(this!==undefined&&this.$blk!==undefined){$f=this;$c=true;$s=$f.$s;$r=$f.$r;}s:while(true){switch($s){case 0:$r=A.$init();$s=1;case 1:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=B.$init();$s=2;case 2:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=C.$init();$s=3;case 3:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=D.$init();$s=4;case 4:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=E.$init();$s=5;case 5:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}$r=F.$init();$s=6;case 6:if($c){$c=false;$r=$r.$blk();}if($r&&$r.$blk!==undefined){break s;}if($pkg===$mainPkg){G();$mainFinished=true;}}return;}if($f===undefined){$f={$blk:$init};}$f.$s=$s;$f.$r=$r;return $f;};$pkg.$init=$init;return $pkg;})(); +$synthesizeMethods(); +$initAllLinknames(); +var $mainPkg = $packages["github.com/88250/lute/javascript"]; +$packages["runtime"].$init(); +$go($mainPkg.$init, []); +$flushConsole(); + +}).call(this); + diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/markmap/katex.min.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/markmap/katex.min.css new file mode 100644 index 0000000..0d08a4d --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/markmap/katex.min.css @@ -0,0 +1 @@ +@font-face{font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(fonts/KaTeX_AMS-Regular.woff2) format("woff2"),url(fonts/KaTeX_AMS-Regular.woff) format("woff"),url(fonts/KaTeX_AMS-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Caligraphic-Bold.woff2) format("woff2"),url(fonts/KaTeX_Caligraphic-Bold.woff) format("woff"),url(fonts/KaTeX_Caligraphic-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Caligraphic-Regular.woff2) format("woff2"),url(fonts/KaTeX_Caligraphic-Regular.woff) format("woff"),url(fonts/KaTeX_Caligraphic-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Fraktur-Bold.woff2) format("woff2"),url(fonts/KaTeX_Fraktur-Bold.woff) format("woff"),url(fonts/KaTeX_Fraktur-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Fraktur-Regular.woff2) format("woff2"),url(fonts/KaTeX_Fraktur-Regular.woff) format("woff"),url(fonts/KaTeX_Fraktur-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Main-Bold.woff2) format("woff2"),url(fonts/KaTeX_Main-Bold.woff) format("woff"),url(fonts/KaTeX_Main-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(fonts/KaTeX_Main-BoldItalic.woff2) format("woff2"),url(fonts/KaTeX_Main-BoldItalic.woff) format("woff"),url(fonts/KaTeX_Main-BoldItalic.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(fonts/KaTeX_Main-Italic.woff2) format("woff2"),url(fonts/KaTeX_Main-Italic.woff) format("woff"),url(fonts/KaTeX_Main-Italic.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Main-Regular.woff2) format("woff2"),url(fonts/KaTeX_Main-Regular.woff) format("woff"),url(fonts/KaTeX_Main-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(fonts/KaTeX_Math-BoldItalic.woff2) format("woff2"),url(fonts/KaTeX_Math-BoldItalic.woff) format("woff"),url(fonts/KaTeX_Math-BoldItalic.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(fonts/KaTeX_Math-Italic.woff2) format("woff2"),url(fonts/KaTeX_Math-Italic.woff) format("woff"),url(fonts/KaTeX_Math-Italic.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:700;src:url(fonts/KaTeX_SansSerif-Bold.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Bold.woff) format("woff"),url(fonts/KaTeX_SansSerif-Bold.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:italic;font-weight:400;src:url(fonts/KaTeX_SansSerif-Italic.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Italic.woff) format("woff"),url(fonts/KaTeX_SansSerif-Italic.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:400;src:url(fonts/KaTeX_SansSerif-Regular.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Regular.woff) format("woff"),url(fonts/KaTeX_SansSerif-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Script-Regular.woff2) format("woff2"),url(fonts/KaTeX_Script-Regular.woff) format("woff"),url(fonts/KaTeX_Script-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size1-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size1-Regular.woff) format("woff"),url(fonts/KaTeX_Size1-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size2-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size2-Regular.woff) format("woff"),url(fonts/KaTeX_Size2-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size3-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size3-Regular.woff) format("woff"),url(fonts/KaTeX_Size3-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size4-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size4-Regular.woff) format("woff"),url(fonts/KaTeX_Size4-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Typewriter-Regular.woff2) format("woff2"),url(fonts/KaTeX_Typewriter-Regular.woff) format("woff"),url(fonts/KaTeX_Typewriter-Regular.ttf) format("truetype")}.katex{text-rendering:auto;font:normal 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.0"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.27777778em;margin-right:-.55555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.83333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.16666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.33333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.66666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.45666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.14666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.71428571em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.85714286em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.14285714em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.28571429em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.42857143em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.71428571em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.05714286em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.46857143em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.96285714em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.55428571em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.55555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.66666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.77777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.88888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.11111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.33333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.30444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.76444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.41666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.58333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.66666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.83333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.72833333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.07333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.34722222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.41666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.48611111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.55555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.69444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.83333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.44027778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.72777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.28935185em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.34722222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.40509259em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.46296296em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.52083333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.69444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.83333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.20023148em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.43981481em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.24108004em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.28929605em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.33751205em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.38572806em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.43394407em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.48216008em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.57859209em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.69431051em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.83317261em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.19961427em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.20096463em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.24115756em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.28135048em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.32154341em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.36173633em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.40192926em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.48231511em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.57877814em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.69453376em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.83360129em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/markmap/markmap.min.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/markmap/markmap.min.js new file mode 100644 index 0000000..4d99a85 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/markmap/markmap.min.js @@ -0,0 +1,8251 @@ +// https://d3js.org v6.7.0 Copyright 2021 Mike Bostock +!function(t,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((t="undefined"!=typeof globalThis?globalThis:t||self).d3=t.d3||{})}(this,(function(t){"use strict";function n(t,n){return t<n?-1:t>n?1:t>=n?0:NaN}function e(t){let e=t,r=t;function i(t,n,e,i){for(null==e&&(e=0),null==i&&(i=t.length);e<i;){const o=e+i>>>1;r(t[o],n)<0?e=o+1:i=o}return e}return 1===t.length&&(e=(n,e)=>t(n)-e,r=function(t){return(e,r)=>n(t(e),r)}(t)),{left:i,center:function(t,n,r,o){null==r&&(r=0),null==o&&(o=t.length);const a=i(t,n,r,o-1);return a>r&&e(t[a-1],n)>-e(t[a],n)?a-1:a},right:function(t,n,e,i){for(null==e&&(e=0),null==i&&(i=t.length);e<i;){const o=e+i>>>1;r(t[o],n)>0?i=o:e=o+1}return e}}}function r(t){return null===t?NaN:+t}const i=e(n),o=i.right,a=i.left,u=e(r).center;function c(t,n){let e=0;if(void 0===n)for(let n of t)null!=n&&(n=+n)>=n&&++e;else{let r=-1;for(let i of t)null!=(i=n(i,++r,t))&&(i=+i)>=i&&++e}return e}function f(t){return 0|t.length}function s(t){return!(t>0)}function l(t){return"object"!=typeof t||"length"in t?t:Array.from(t)}function h(t,n){let e,r=0,i=0,o=0;if(void 0===n)for(let n of t)null!=n&&(n=+n)>=n&&(e=n-i,i+=e/++r,o+=e*(n-i));else{let a=-1;for(let u of t)null!=(u=n(u,++a,t))&&(u=+u)>=u&&(e=u-i,i+=e/++r,o+=e*(u-i))}if(r>1)return o/(r-1)}function d(t,n){const e=h(t,n);return e?Math.sqrt(e):e}function p(t,n){let e,r;if(void 0===n)for(const n of t)null!=n&&(void 0===e?n>=n&&(e=r=n):(e>n&&(e=n),r<n&&(r=n)));else{let i=-1;for(let o of t)null!=(o=n(o,++i,t))&&(void 0===e?o>=o&&(e=r=o):(e>o&&(e=o),r<o&&(r=o)))}return[e,r]}class g{constructor(){this._partials=new Float64Array(32),this._n=0}add(t){const n=this._partials;let e=0;for(let r=0;r<this._n&&r<32;r++){const i=n[r],o=t+i,a=Math.abs(t)<Math.abs(i)?t-(o-i):i-(o-t);a&&(n[e++]=a),t=o}return n[e]=t,this._n=e+1,this}valueOf(){const t=this._partials;let n,e,r,i=this._n,o=0;if(i>0){for(o=t[--i];i>0&&(n=o,e=t[--i],o=n+e,r=e-(o-n),!r););i>0&&(r<0&&t[i-1]<0||r>0&&t[i-1]>0)&&(e=2*r,n=o+e,e==n-o&&(o=n))}return o}}class y extends Map{constructor(t,n=x){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:n}}),null!=t)for(const[n,e]of t)this.set(n,e)}get(t){return super.get(_(this,t))}has(t){return super.has(_(this,t))}set(t,n){return super.set(b(this,t),n)}delete(t){return super.delete(m(this,t))}}class v extends Set{constructor(t,n=x){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:n}}),null!=t)for(const n of t)this.add(n)}has(t){return super.has(_(this,t))}add(t){return super.add(b(this,t))}delete(t){return super.delete(m(this,t))}}function _({_intern:t,_key:n},e){const r=n(e);return t.has(r)?t.get(r):e}function b({_intern:t,_key:n},e){const r=n(e);return t.has(r)?t.get(r):(t.set(r,e),e)}function m({_intern:t,_key:n},e){const r=n(e);return t.has(r)&&(e=t.get(e),t.delete(r)),e}function x(t){return null!==t&&"object"==typeof t?t.valueOf():t}function w(t){return t}function M(t,...n){return S(t,w,w,n)}function A(t,n,...e){return S(t,w,n,e)}function T(t){if(1!==t.length)throw new Error("duplicate key");return t[0]}function S(t,n,e,r){return function t(i,o){if(o>=r.length)return e(i);const a=new y,u=r[o++];let c=-1;for(const t of i){const n=u(t,++c,i),e=a.get(n);e?e.push(t):a.set(n,[t])}for(const[n,e]of a)a.set(n,t(e,o));return n(a)}(t,0)}function E(t,n){return Array.from(n,(n=>t[n]))}function k(t,...e){if("function"!=typeof t[Symbol.iterator])throw new TypeError("values is not iterable");t=Array.from(t);let[r=n]=e;if(1===r.length||e.length>1){const i=Uint32Array.from(t,((t,n)=>n));return e.length>1?(e=e.map((n=>t.map(n))),i.sort(((t,r)=>{for(const i of e){const e=n(i[t],i[r]);if(e)return e}}))):(r=t.map(r),i.sort(((t,e)=>n(r[t],r[e])))),E(t,i)}return t.sort(r)}var N=Array.prototype.slice;function C(t){return function(){return t}}var P=Math.sqrt(50),z=Math.sqrt(10),D=Math.sqrt(2);function q(t,n,e){var r,i,o,a,u=-1;if(e=+e,(t=+t)===(n=+n)&&e>0)return[t];if((r=n<t)&&(i=t,t=n,n=i),0===(a=R(t,n,e))||!isFinite(a))return[];if(a>0){let e=Math.round(t/a),r=Math.round(n/a);for(e*a<t&&++e,r*a>n&&--r,o=new Array(i=r-e+1);++u<i;)o[u]=(e+u)*a}else{a=-a;let e=Math.round(t*a),r=Math.round(n*a);for(e/a<t&&++e,r/a>n&&--r,o=new Array(i=r-e+1);++u<i;)o[u]=(e+u)/a}return r&&o.reverse(),o}function R(t,n,e){var r=(n-t)/Math.max(0,e),i=Math.floor(Math.log(r)/Math.LN10),o=r/Math.pow(10,i);return i>=0?(o>=P?10:o>=z?5:o>=D?2:1)*Math.pow(10,i):-Math.pow(10,-i)/(o>=P?10:o>=z?5:o>=D?2:1)}function F(t,n,e){var r=Math.abs(n-t)/Math.max(0,e),i=Math.pow(10,Math.floor(Math.log(r)/Math.LN10)),o=r/i;return o>=P?i*=10:o>=z?i*=5:o>=D&&(i*=2),n<t?-i:i}function O(t,n,e){let r;for(;;){const i=R(t,n,e);if(i===r||0===i||!isFinite(i))return[t,n];i>0?(t=Math.floor(t/i)*i,n=Math.ceil(n/i)*i):i<0&&(t=Math.ceil(t*i)/i,n=Math.floor(n*i)/i),r=i}}function I(t){return Math.ceil(Math.log(c(t))/Math.LN2)+1}function U(){var t=w,n=p,e=I;function r(r){Array.isArray(r)||(r=Array.from(r));var i,a,u=r.length,c=new Array(u);for(i=0;i<u;++i)c[i]=t(r[i],i,r);var f=n(c),s=f[0],l=f[1],h=e(c,s,l);if(!Array.isArray(h)){const t=l,e=+h;if(n===p&&([s,l]=O(s,l,e)),(h=q(s,l,e))[h.length-1]>=l)if(t>=l&&n===p){const t=R(s,l,e);isFinite(t)&&(t>0?l=(Math.floor(l/t)+1)*t:t<0&&(l=(Math.ceil(l*-t)+1)/-t))}else h.pop()}for(var d=h.length;h[0]<=s;)h.shift(),--d;for(;h[d-1]>l;)h.pop(),--d;var g,y=new Array(d+1);for(i=0;i<=d;++i)(g=y[i]=[]).x0=i>0?h[i-1]:s,g.x1=i<d?h[i]:l;for(i=0;i<u;++i)s<=(a=c[i])&&a<=l&&y[o(h,a,0,d)].push(r[i]);return y}return r.value=function(n){return arguments.length?(t="function"==typeof n?n:C(n),r):t},r.domain=function(t){return arguments.length?(n="function"==typeof t?t:C([t[0],t[1]]),r):n},r.thresholds=function(t){return arguments.length?(e="function"==typeof t?t:Array.isArray(t)?C(N.call(t)):C(t),r):e},r}function B(t,n){let e;if(void 0===n)for(const n of t)null!=n&&(e<n||void 0===e&&n>=n)&&(e=n);else{let r=-1;for(let i of t)null!=(i=n(i,++r,t))&&(e<i||void 0===e&&i>=i)&&(e=i)}return e}function Y(t,n){let e;if(void 0===n)for(const n of t)null!=n&&(e>n||void 0===e&&n>=n)&&(e=n);else{let r=-1;for(let i of t)null!=(i=n(i,++r,t))&&(e>i||void 0===e&&i>=i)&&(e=i)}return e}function L(t,e,r=0,i=t.length-1,o=n){for(;i>r;){if(i-r>600){const n=i-r+1,a=e-r+1,u=Math.log(n),c=.5*Math.exp(2*u/3),f=.5*Math.sqrt(u*c*(n-c)/n)*(a-n/2<0?-1:1);L(t,e,Math.max(r,Math.floor(e-a*c/n+f)),Math.min(i,Math.floor(e+(n-a)*c/n+f)),o)}const n=t[e];let a=r,u=i;for(j(t,r,e),o(t[i],n)>0&&j(t,r,i);a<u;){for(j(t,a,u),++a,--u;o(t[a],n)<0;)++a;for(;o(t[u],n)>0;)--u}0===o(t[r],n)?j(t,r,u):(++u,j(t,u,i)),u<=e&&(r=u+1),e<=u&&(i=u-1)}return t}function j(t,n,e){const r=t[n];t[n]=t[e],t[e]=r}function H(t,n,e){if(r=(t=Float64Array.from(function*(t,n){if(void 0===n)for(let n of t)null!=n&&(n=+n)>=n&&(yield n);else{let e=-1;for(let r of t)null!=(r=n(r,++e,t))&&(r=+r)>=r&&(yield r)}}(t,e))).length){if((n=+n)<=0||r<2)return Y(t);if(n>=1)return B(t);var r,i=(r-1)*n,o=Math.floor(i),a=B(L(t,o).subarray(0,o+1));return a+(Y(t.subarray(o+1))-a)*(i-o)}}function X(t,n,e=r){if(i=t.length){if((n=+n)<=0||i<2)return+e(t[0],0,t);if(n>=1)return+e(t[i-1],i-1,t);var i,o=(i-1)*n,a=Math.floor(o),u=+e(t[a],a,t);return u+(+e(t[a+1],a+1,t)-u)*(o-a)}}function G(t,n){let e,r=-1,i=-1;if(void 0===n)for(const n of t)++i,null!=n&&(e<n||void 0===e&&n>=n)&&(e=n,r=i);else for(let o of t)null!=(o=n(o,++i,t))&&(e<o||void 0===e&&o>=o)&&(e=o,r=i);return r}function V(t){return Array.from(function*(t){for(const n of t)yield*n}(t))}function $(t,n){let e,r=-1,i=-1;if(void 0===n)for(const n of t)++i,null!=n&&(e>n||void 0===e&&n>=n)&&(e=n,r=i);else for(let o of t)null!=(o=n(o,++i,t))&&(e>o||void 0===e&&o>=o)&&(e=o,r=i);return r}function W(t,n){return[t,n]}function Z(t,n,e){t=+t,n=+n,e=(i=arguments.length)<2?(n=t,t=0,1):i<3?1:+e;for(var r=-1,i=0|Math.max(0,Math.ceil((n-t)/e)),o=new Array(i);++r<i;)o[r]=t+r*e;return o}function K(t,e=n){if(1===e.length)return $(t,e);let r,i=-1,o=-1;for(const n of t)++o,(i<0?0===e(n,n):e(n,r)<0)&&(r=n,i=o);return i}var Q=J(Math.random);function J(t){return function(n,e=0,r=n.length){let i=r-(e=+e);for(;i;){const r=t()*i--|0,o=n[i+e];n[i+e]=n[r+e],n[r+e]=o}return n}}function tt(t){if(!(i=t.length))return[];for(var n=-1,e=Y(t,nt),r=new Array(e);++n<e;)for(var i,o=-1,a=r[n]=new Array(i);++o<i;)a[o]=t[o][n];return r}function nt(t){return t.length}function et(t){return t instanceof Set?t:new Set(t)}function rt(t,n){const e=t[Symbol.iterator](),r=new Set;for(const t of n){if(r.has(t))continue;let n,i;for(;({value:n,done:i}=e.next());){if(i)return!1;if(r.add(n),Object.is(t,n))break}}return!0}var it=Array.prototype.slice;function ot(t){return t}var at=1e-6;function ut(t){return"translate("+t+",0)"}function ct(t){return"translate(0,"+t+")"}function ft(t){return n=>+t(n)}function st(t,n){return n=Math.max(0,t.bandwidth()-2*n)/2,t.round()&&(n=Math.round(n)),e=>+t(e)+n}function lt(){return!this.__axis}function ht(t,n){var e=[],r=null,i=null,o=6,a=6,u=3,c="undefined"!=typeof window&&window.devicePixelRatio>1?0:.5,f=1===t||4===t?-1:1,s=4===t||2===t?"x":"y",l=1===t||3===t?ut:ct;function h(h){var d=null==r?n.ticks?n.ticks.apply(n,e):n.domain():r,p=null==i?n.tickFormat?n.tickFormat.apply(n,e):ot:i,g=Math.max(o,0)+u,y=n.range(),v=+y[0]+c,_=+y[y.length-1]+c,b=(n.bandwidth?st:ft)(n.copy(),c),m=h.selection?h.selection():h,x=m.selectAll(".domain").data([null]),w=m.selectAll(".tick").data(d,n).order(),M=w.exit(),A=w.enter().append("g").attr("class","tick"),T=w.select("line"),S=w.select("text");x=x.merge(x.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),w=w.merge(A),T=T.merge(A.append("line").attr("stroke","currentColor").attr(s+"2",f*o)),S=S.merge(A.append("text").attr("fill","currentColor").attr(s,f*g).attr("dy",1===t?"0em":3===t?"0.71em":"0.32em")),h!==m&&(x=x.transition(h),w=w.transition(h),T=T.transition(h),S=S.transition(h),M=M.transition(h).attr("opacity",at).attr("transform",(function(t){return isFinite(t=b(t))?l(t+c):this.getAttribute("transform")})),A.attr("opacity",at).attr("transform",(function(t){var n=this.parentNode.__axis;return l((n&&isFinite(n=n(t))?n:b(t))+c)}))),M.remove(),x.attr("d",4===t||2===t?a?"M"+f*a+","+v+"H"+c+"V"+_+"H"+f*a:"M"+c+","+v+"V"+_:a?"M"+v+","+f*a+"V"+c+"H"+_+"V"+f*a:"M"+v+","+c+"H"+_),w.attr("opacity",1).attr("transform",(function(t){return l(b(t)+c)})),T.attr(s+"2",f*o),S.attr(s,f*g).text(p),m.filter(lt).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",2===t?"start":4===t?"end":"middle"),m.each((function(){this.__axis=b}))}return h.scale=function(t){return arguments.length?(n=t,h):n},h.ticks=function(){return e=it.call(arguments),h},h.tickArguments=function(t){return arguments.length?(e=null==t?[]:it.call(t),h):e.slice()},h.tickValues=function(t){return arguments.length?(r=null==t?null:it.call(t),h):r&&r.slice()},h.tickFormat=function(t){return arguments.length?(i=t,h):i},h.tickSize=function(t){return arguments.length?(o=a=+t,h):o},h.tickSizeInner=function(t){return arguments.length?(o=+t,h):o},h.tickSizeOuter=function(t){return arguments.length?(a=+t,h):a},h.tickPadding=function(t){return arguments.length?(u=+t,h):u},h.offset=function(t){return arguments.length?(c=+t,h):c},h}var dt={value:()=>{}};function pt(){for(var t,n=0,e=arguments.length,r={};n<e;++n){if(!(t=arguments[n]+"")||t in r||/[\s.]/.test(t))throw new Error("illegal type: "+t);r[t]=[]}return new gt(r)}function gt(t){this._=t}function yt(t,n){return t.trim().split(/^|\s+/).map((function(t){var e="",r=t.indexOf(".");if(r>=0&&(e=t.slice(r+1),t=t.slice(0,r)),t&&!n.hasOwnProperty(t))throw new Error("unknown type: "+t);return{type:t,name:e}}))}function vt(t,n){for(var e,r=0,i=t.length;r<i;++r)if((e=t[r]).name===n)return e.value}function _t(t,n,e){for(var r=0,i=t.length;r<i;++r)if(t[r].name===n){t[r]=dt,t=t.slice(0,r).concat(t.slice(r+1));break}return null!=e&&t.push({name:n,value:e}),t}gt.prototype=pt.prototype={constructor:gt,on:function(t,n){var e,r=this._,i=yt(t+"",r),o=-1,a=i.length;if(!(arguments.length<2)){if(null!=n&&"function"!=typeof n)throw new Error("invalid callback: "+n);for(;++o<a;)if(e=(t=i[o]).type)r[e]=_t(r[e],t.name,n);else if(null==n)for(e in r)r[e]=_t(r[e],t.name,null);return this}for(;++o<a;)if((e=(t=i[o]).type)&&(e=vt(r[e],t.name)))return e},copy:function(){var t={},n=this._;for(var e in n)t[e]=n[e].slice();return new gt(t)},call:function(t,n){if((e=arguments.length-2)>0)for(var e,r,i=new Array(e),o=0;o<e;++o)i[o]=arguments[o+2];if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(o=0,e=(r=this._[t]).length;o<e;++o)r[o].value.apply(n,i)},apply:function(t,n,e){if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(var r=this._[t],i=0,o=r.length;i<o;++i)r[i].value.apply(n,e)}};var bt="http://www.w3.org/1999/xhtml",mt={svg:"http://www.w3.org/2000/svg",xhtml:bt,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function xt(t){var n=t+="",e=n.indexOf(":");return e>=0&&"xmlns"!==(n=t.slice(0,e))&&(t=t.slice(e+1)),mt.hasOwnProperty(n)?{space:mt[n],local:t}:t}function wt(t){return function(){var n=this.ownerDocument,e=this.namespaceURI;return e===bt&&n.documentElement.namespaceURI===bt?n.createElement(t):n.createElementNS(e,t)}}function Mt(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function At(t){var n=xt(t);return(n.local?Mt:wt)(n)}function Tt(){}function St(t){return null==t?Tt:function(){return this.querySelector(t)}}function Et(t){return"object"==typeof t&&"length"in t?t:Array.from(t)}function kt(){return[]}function Nt(t){return null==t?kt:function(){return this.querySelectorAll(t)}}function Ct(t){return function(){return this.matches(t)}}function Pt(t){return function(n){return n.matches(t)}}var zt=Array.prototype.find;function Dt(){return this.firstElementChild}var qt=Array.prototype.filter;function Rt(){return this.children}function Ft(t){return new Array(t.length)}function Ot(t,n){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=n}function It(t){return function(){return t}}function Ut(t,n,e,r,i,o){for(var a,u=0,c=n.length,f=o.length;u<f;++u)(a=n[u])?(a.__data__=o[u],r[u]=a):e[u]=new Ot(t,o[u]);for(;u<c;++u)(a=n[u])&&(i[u]=a)}function Bt(t,n,e,r,i,o,a){var u,c,f,s=new Map,l=n.length,h=o.length,d=new Array(l);for(u=0;u<l;++u)(c=n[u])&&(d[u]=f=a.call(c,c.__data__,u,n)+"",s.has(f)?i[u]=c:s.set(f,c));for(u=0;u<h;++u)f=a.call(t,o[u],u,o)+"",(c=s.get(f))?(r[u]=c,c.__data__=o[u],s.delete(f)):e[u]=new Ot(t,o[u]);for(u=0;u<l;++u)(c=n[u])&&s.get(d[u])===c&&(i[u]=c)}function Yt(t){return t.__data__}function Lt(t,n){return t<n?-1:t>n?1:t>=n?0:NaN}function jt(t){return function(){this.removeAttribute(t)}}function Ht(t){return function(){this.removeAttributeNS(t.space,t.local)}}function Xt(t,n){return function(){this.setAttribute(t,n)}}function Gt(t,n){return function(){this.setAttributeNS(t.space,t.local,n)}}function Vt(t,n){return function(){var e=n.apply(this,arguments);null==e?this.removeAttribute(t):this.setAttribute(t,e)}}function $t(t,n){return function(){var e=n.apply(this,arguments);null==e?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,e)}}function Wt(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function Zt(t){return function(){this.style.removeProperty(t)}}function Kt(t,n,e){return function(){this.style.setProperty(t,n,e)}}function Qt(t,n,e){return function(){var r=n.apply(this,arguments);null==r?this.style.removeProperty(t):this.style.setProperty(t,r,e)}}function Jt(t,n){return t.style.getPropertyValue(n)||Wt(t).getComputedStyle(t,null).getPropertyValue(n)}function tn(t){return function(){delete this[t]}}function nn(t,n){return function(){this[t]=n}}function en(t,n){return function(){var e=n.apply(this,arguments);null==e?delete this[t]:this[t]=e}}function rn(t){return t.trim().split(/^|\s+/)}function on(t){return t.classList||new an(t)}function an(t){this._node=t,this._names=rn(t.getAttribute("class")||"")}function un(t,n){for(var e=on(t),r=-1,i=n.length;++r<i;)e.add(n[r])}function cn(t,n){for(var e=on(t),r=-1,i=n.length;++r<i;)e.remove(n[r])}function fn(t){return function(){un(this,t)}}function sn(t){return function(){cn(this,t)}}function ln(t,n){return function(){(n.apply(this,arguments)?un:cn)(this,t)}}function hn(){this.textContent=""}function dn(t){return function(){this.textContent=t}}function pn(t){return function(){var n=t.apply(this,arguments);this.textContent=null==n?"":n}}function gn(){this.innerHTML=""}function yn(t){return function(){this.innerHTML=t}}function vn(t){return function(){var n=t.apply(this,arguments);this.innerHTML=null==n?"":n}}function _n(){this.nextSibling&&this.parentNode.appendChild(this)}function bn(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function mn(){return null}function xn(){var t=this.parentNode;t&&t.removeChild(this)}function wn(){var t=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(t,this.nextSibling):t}function Mn(){var t=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(t,this.nextSibling):t}function An(t){return t.trim().split(/^|\s+/).map((function(t){var n="",e=t.indexOf(".");return e>=0&&(n=t.slice(e+1),t=t.slice(0,e)),{type:t,name:n}}))}function Tn(t){return function(){var n=this.__on;if(n){for(var e,r=0,i=-1,o=n.length;r<o;++r)e=n[r],t.type&&e.type!==t.type||e.name!==t.name?n[++i]=e:this.removeEventListener(e.type,e.listener,e.options);++i?n.length=i:delete this.__on}}}function Sn(t,n,e){return function(){var r,i=this.__on,o=function(t){return function(n){t.call(this,n,this.__data__)}}(n);if(i)for(var a=0,u=i.length;a<u;++a)if((r=i[a]).type===t.type&&r.name===t.name)return this.removeEventListener(r.type,r.listener,r.options),this.addEventListener(r.type,r.listener=o,r.options=e),void(r.value=n);this.addEventListener(t.type,o,e),r={type:t.type,name:t.name,value:n,listener:o,options:e},i?i.push(r):this.__on=[r]}}function En(t,n,e){var r=Wt(t),i=r.CustomEvent;"function"==typeof i?i=new i(n,e):(i=r.document.createEvent("Event"),e?(i.initEvent(n,e.bubbles,e.cancelable),i.detail=e.detail):i.initEvent(n,!1,!1)),t.dispatchEvent(i)}function kn(t,n){return function(){return En(this,t,n)}}function Nn(t,n){return function(){return En(this,t,n.apply(this,arguments))}}Ot.prototype={constructor:Ot,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,n){return this._parent.insertBefore(t,n)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}},an.prototype={add:function(t){this._names.indexOf(t)<0&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},remove:function(t){var n=this._names.indexOf(t);n>=0&&(this._names.splice(n,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};var Cn=[null];function Pn(t,n){this._groups=t,this._parents=n}function zn(){return new Pn([[document.documentElement]],Cn)}function Dn(t){return"string"==typeof t?new Pn([[document.querySelector(t)]],[document.documentElement]):new Pn([[t]],Cn)}Pn.prototype=zn.prototype={constructor:Pn,select:function(t){"function"!=typeof t&&(t=St(t));for(var n=this._groups,e=n.length,r=new Array(e),i=0;i<e;++i)for(var o,a,u=n[i],c=u.length,f=r[i]=new Array(c),s=0;s<c;++s)(o=u[s])&&(a=t.call(o,o.__data__,s,u))&&("__data__"in o&&(a.__data__=o.__data__),f[s]=a);return new Pn(r,this._parents)},selectAll:function(t){t="function"==typeof t?function(t){return function(){var n=t.apply(this,arguments);return null==n?[]:Et(n)}}(t):Nt(t);for(var n=this._groups,e=n.length,r=[],i=[],o=0;o<e;++o)for(var a,u=n[o],c=u.length,f=0;f<c;++f)(a=u[f])&&(r.push(t.call(a,a.__data__,f,u)),i.push(a));return new Pn(r,i)},selectChild:function(t){return this.select(null==t?Dt:function(t){return function(){return zt.call(this.children,t)}}("function"==typeof t?t:Pt(t)))},selectChildren:function(t){return this.selectAll(null==t?Rt:function(t){return function(){return qt.call(this.children,t)}}("function"==typeof t?t:Pt(t)))},filter:function(t){"function"!=typeof t&&(t=Ct(t));for(var n=this._groups,e=n.length,r=new Array(e),i=0;i<e;++i)for(var o,a=n[i],u=a.length,c=r[i]=[],f=0;f<u;++f)(o=a[f])&&t.call(o,o.__data__,f,a)&&c.push(o);return new Pn(r,this._parents)},data:function(t,n){if(!arguments.length)return Array.from(this,Yt);var e=n?Bt:Ut,r=this._parents,i=this._groups;"function"!=typeof t&&(t=It(t));for(var o=i.length,a=new Array(o),u=new Array(o),c=new Array(o),f=0;f<o;++f){var s=r[f],l=i[f],h=l.length,d=Et(t.call(s,s&&s.__data__,f,r)),p=d.length,g=u[f]=new Array(p),y=a[f]=new Array(p),v=c[f]=new Array(h);e(s,l,g,y,v,d,n);for(var _,b,m=0,x=0;m<p;++m)if(_=g[m]){for(m>=x&&(x=m+1);!(b=y[x])&&++x<p;);_._next=b||null}}return(a=new Pn(a,r))._enter=u,a._exit=c,a},enter:function(){return new Pn(this._enter||this._groups.map(Ft),this._parents)},exit:function(){return new Pn(this._exit||this._groups.map(Ft),this._parents)},join:function(t,n,e){var r=this.enter(),i=this,o=this.exit();return r="function"==typeof t?t(r):r.append(t+""),null!=n&&(i=n(i)),null==e?o.remove():e(o),r&&i?r.merge(i).order():i},merge:function(t){if(!(t instanceof Pn))throw new Error("invalid merge");for(var n=this._groups,e=t._groups,r=n.length,i=e.length,o=Math.min(r,i),a=new Array(r),u=0;u<o;++u)for(var c,f=n[u],s=e[u],l=f.length,h=a[u]=new Array(l),d=0;d<l;++d)(c=f[d]||s[d])&&(h[d]=c);for(;u<r;++u)a[u]=n[u];return new Pn(a,this._parents)},selection:function(){return this},order:function(){for(var t=this._groups,n=-1,e=t.length;++n<e;)for(var r,i=t[n],o=i.length-1,a=i[o];--o>=0;)(r=i[o])&&(a&&4^r.compareDocumentPosition(a)&&a.parentNode.insertBefore(r,a),a=r);return this},sort:function(t){function n(n,e){return n&&e?t(n.__data__,e.__data__):!n-!e}t||(t=Lt);for(var e=this._groups,r=e.length,i=new Array(r),o=0;o<r;++o){for(var a,u=e[o],c=u.length,f=i[o]=new Array(c),s=0;s<c;++s)(a=u[s])&&(f[s]=a);f.sort(n)}return new Pn(i,this._parents).order()},call:function(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this},nodes:function(){return Array.from(this)},node:function(){for(var t=this._groups,n=0,e=t.length;n<e;++n)for(var r=t[n],i=0,o=r.length;i<o;++i){var a=r[i];if(a)return a}return null},size:function(){let t=0;for(const n of this)++t;return t},empty:function(){return!this.node()},each:function(t){for(var n=this._groups,e=0,r=n.length;e<r;++e)for(var i,o=n[e],a=0,u=o.length;a<u;++a)(i=o[a])&&t.call(i,i.__data__,a,o);return this},attr:function(t,n){var e=xt(t);if(arguments.length<2){var r=this.node();return e.local?r.getAttributeNS(e.space,e.local):r.getAttribute(e)}return this.each((null==n?e.local?Ht:jt:"function"==typeof n?e.local?$t:Vt:e.local?Gt:Xt)(e,n))},style:function(t,n,e){return arguments.length>1?this.each((null==n?Zt:"function"==typeof n?Qt:Kt)(t,n,null==e?"":e)):Jt(this.node(),t)},property:function(t,n){return arguments.length>1?this.each((null==n?tn:"function"==typeof n?en:nn)(t,n)):this.node()[t]},classed:function(t,n){var e=rn(t+"");if(arguments.length<2){for(var r=on(this.node()),i=-1,o=e.length;++i<o;)if(!r.contains(e[i]))return!1;return!0}return this.each(("function"==typeof n?ln:n?fn:sn)(e,n))},text:function(t){return arguments.length?this.each(null==t?hn:("function"==typeof t?pn:dn)(t)):this.node().textContent},html:function(t){return arguments.length?this.each(null==t?gn:("function"==typeof t?vn:yn)(t)):this.node().innerHTML},raise:function(){return this.each(_n)},lower:function(){return this.each(bn)},append:function(t){var n="function"==typeof t?t:At(t);return this.select((function(){return this.appendChild(n.apply(this,arguments))}))},insert:function(t,n){var e="function"==typeof t?t:At(t),r=null==n?mn:"function"==typeof n?n:St(n);return this.select((function(){return this.insertBefore(e.apply(this,arguments),r.apply(this,arguments)||null)}))},remove:function(){return this.each(xn)},clone:function(t){return this.select(t?Mn:wn)},datum:function(t){return arguments.length?this.property("__data__",t):this.node().__data__},on:function(t,n,e){var r,i,o=An(t+""),a=o.length;if(!(arguments.length<2)){for(u=n?Sn:Tn,r=0;r<a;++r)this.each(u(o[r],n,e));return this}var u=this.node().__on;if(u)for(var c,f=0,s=u.length;f<s;++f)for(r=0,c=u[f];r<a;++r)if((i=o[r]).type===c.type&&i.name===c.name)return c.value},dispatch:function(t,n){return this.each(("function"==typeof n?Nn:kn)(t,n))},[Symbol.iterator]:function*(){for(var t=this._groups,n=0,e=t.length;n<e;++n)for(var r,i=t[n],o=0,a=i.length;o<a;++o)(r=i[o])&&(yield r)}};var qn=0;function Rn(){return new Fn}function Fn(){this._="@"+(++qn).toString(36)}function On(t){let n;for(;n=t.sourceEvent;)t=n;return t}function In(t,n){if(t=On(t),void 0===n&&(n=t.currentTarget),n){var e=n.ownerSVGElement||n;if(e.createSVGPoint){var r=e.createSVGPoint();return r.x=t.clientX,r.y=t.clientY,[(r=r.matrixTransform(n.getScreenCTM().inverse())).x,r.y]}if(n.getBoundingClientRect){var i=n.getBoundingClientRect();return[t.clientX-i.left-n.clientLeft,t.clientY-i.top-n.clientTop]}}return[t.pageX,t.pageY]}function Un(t){t.stopImmediatePropagation()}function Bn(t){t.preventDefault(),t.stopImmediatePropagation()}function Yn(t){var n=t.document.documentElement,e=Dn(t).on("dragstart.drag",Bn,!0);"onselectstart"in n?e.on("selectstart.drag",Bn,!0):(n.__noselect=n.style.MozUserSelect,n.style.MozUserSelect="none")}function Ln(t,n){var e=t.document.documentElement,r=Dn(t).on("dragstart.drag",null);n&&(r.on("click.drag",Bn,!0),setTimeout((function(){r.on("click.drag",null)}),0)),"onselectstart"in e?r.on("selectstart.drag",null):(e.style.MozUserSelect=e.__noselect,delete e.__noselect)}Fn.prototype=Rn.prototype={constructor:Fn,get:function(t){for(var n=this._;!(n in t);)if(!(t=t.parentNode))return;return t[n]},set:function(t,n){return t[this._]=n},remove:function(t){return this._ in t&&delete t[this._]},toString:function(){return this._}};var jn=t=>()=>t;function Hn(t,{sourceEvent:n,subject:e,target:r,identifier:i,active:o,x:a,y:u,dx:c,dy:f,dispatch:s}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},subject:{value:e,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:o,enumerable:!0,configurable:!0},x:{value:a,enumerable:!0,configurable:!0},y:{value:u,enumerable:!0,configurable:!0},dx:{value:c,enumerable:!0,configurable:!0},dy:{value:f,enumerable:!0,configurable:!0},_:{value:s}})}function Xn(t){return!t.ctrlKey&&!t.button}function Gn(){return this.parentNode}function Vn(t,n){return null==n?{x:t.x,y:t.y}:n}function $n(){return navigator.maxTouchPoints||"ontouchstart"in this}function Wn(t,n,e){t.prototype=n.prototype=e,e.constructor=t}function Zn(t,n){var e=Object.create(t.prototype);for(var r in n)e[r]=n[r];return e}function Kn(){}Hn.prototype.on=function(){var t=this._.on.apply(this._,arguments);return t===this._?this:t};var Qn=.7,Jn=1/Qn,te="\\s*([+-]?\\d+)\\s*",ne="\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)\\s*",ee="\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)%\\s*",re=/^#([0-9a-f]{3,8})$/,ie=new RegExp("^rgb\\("+[te,te,te]+"\\)$"),oe=new RegExp("^rgb\\("+[ee,ee,ee]+"\\)$"),ae=new RegExp("^rgba\\("+[te,te,te,ne]+"\\)$"),ue=new RegExp("^rgba\\("+[ee,ee,ee,ne]+"\\)$"),ce=new RegExp("^hsl\\("+[ne,ee,ee]+"\\)$"),fe=new RegExp("^hsla\\("+[ne,ee,ee,ne]+"\\)$"),se={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function le(){return this.rgb().formatHex()}function he(){return this.rgb().formatRgb()}function de(t){var n,e;return t=(t+"").trim().toLowerCase(),(n=re.exec(t))?(e=n[1].length,n=parseInt(n[1],16),6===e?pe(n):3===e?new _e(n>>8&15|n>>4&240,n>>4&15|240&n,(15&n)<<4|15&n,1):8===e?ge(n>>24&255,n>>16&255,n>>8&255,(255&n)/255):4===e?ge(n>>12&15|n>>8&240,n>>8&15|n>>4&240,n>>4&15|240&n,((15&n)<<4|15&n)/255):null):(n=ie.exec(t))?new _e(n[1],n[2],n[3],1):(n=oe.exec(t))?new _e(255*n[1]/100,255*n[2]/100,255*n[3]/100,1):(n=ae.exec(t))?ge(n[1],n[2],n[3],n[4]):(n=ue.exec(t))?ge(255*n[1]/100,255*n[2]/100,255*n[3]/100,n[4]):(n=ce.exec(t))?we(n[1],n[2]/100,n[3]/100,1):(n=fe.exec(t))?we(n[1],n[2]/100,n[3]/100,n[4]):se.hasOwnProperty(t)?pe(se[t]):"transparent"===t?new _e(NaN,NaN,NaN,0):null}function pe(t){return new _e(t>>16&255,t>>8&255,255&t,1)}function ge(t,n,e,r){return r<=0&&(t=n=e=NaN),new _e(t,n,e,r)}function ye(t){return t instanceof Kn||(t=de(t)),t?new _e((t=t.rgb()).r,t.g,t.b,t.opacity):new _e}function ve(t,n,e,r){return 1===arguments.length?ye(t):new _e(t,n,e,null==r?1:r)}function _e(t,n,e,r){this.r=+t,this.g=+n,this.b=+e,this.opacity=+r}function be(){return"#"+xe(this.r)+xe(this.g)+xe(this.b)}function me(){var t=this.opacity;return(1===(t=isNaN(t)?1:Math.max(0,Math.min(1,t)))?"rgb(":"rgba(")+Math.max(0,Math.min(255,Math.round(this.r)||0))+", "+Math.max(0,Math.min(255,Math.round(this.g)||0))+", "+Math.max(0,Math.min(255,Math.round(this.b)||0))+(1===t?")":", "+t+")")}function xe(t){return((t=Math.max(0,Math.min(255,Math.round(t)||0)))<16?"0":"")+t.toString(16)}function we(t,n,e,r){return r<=0?t=n=e=NaN:e<=0||e>=1?t=n=NaN:n<=0&&(t=NaN),new Te(t,n,e,r)}function Me(t){if(t instanceof Te)return new Te(t.h,t.s,t.l,t.opacity);if(t instanceof Kn||(t=de(t)),!t)return new Te;if(t instanceof Te)return t;var n=(t=t.rgb()).r/255,e=t.g/255,r=t.b/255,i=Math.min(n,e,r),o=Math.max(n,e,r),a=NaN,u=o-i,c=(o+i)/2;return u?(a=n===o?(e-r)/u+6*(e<r):e===o?(r-n)/u+2:(n-e)/u+4,u/=c<.5?o+i:2-o-i,a*=60):u=c>0&&c<1?0:a,new Te(a,u,c,t.opacity)}function Ae(t,n,e,r){return 1===arguments.length?Me(t):new Te(t,n,e,null==r?1:r)}function Te(t,n,e,r){this.h=+t,this.s=+n,this.l=+e,this.opacity=+r}function Se(t,n,e){return 255*(t<60?n+(e-n)*t/60:t<180?e:t<240?n+(e-n)*(240-t)/60:n)}Wn(Kn,de,{copy:function(t){return Object.assign(new this.constructor,this,t)},displayable:function(){return this.rgb().displayable()},hex:le,formatHex:le,formatHsl:function(){return Me(this).formatHsl()},formatRgb:he,toString:he}),Wn(_e,ve,Zn(Kn,{brighter:function(t){return t=null==t?Jn:Math.pow(Jn,t),new _e(this.r*t,this.g*t,this.b*t,this.opacity)},darker:function(t){return t=null==t?Qn:Math.pow(Qn,t),new _e(this.r*t,this.g*t,this.b*t,this.opacity)},rgb:function(){return this},displayable:function(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:be,formatHex:be,formatRgb:me,toString:me})),Wn(Te,Ae,Zn(Kn,{brighter:function(t){return t=null==t?Jn:Math.pow(Jn,t),new Te(this.h,this.s,this.l*t,this.opacity)},darker:function(t){return t=null==t?Qn:Math.pow(Qn,t),new Te(this.h,this.s,this.l*t,this.opacity)},rgb:function(){var t=this.h%360+360*(this.h<0),n=isNaN(t)||isNaN(this.s)?0:this.s,e=this.l,r=e+(e<.5?e:1-e)*n,i=2*e-r;return new _e(Se(t>=240?t-240:t+120,i,r),Se(t,i,r),Se(t<120?t+240:t-120,i,r),this.opacity)},displayable:function(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl:function(){var t=this.opacity;return(1===(t=isNaN(t)?1:Math.max(0,Math.min(1,t)))?"hsl(":"hsla(")+(this.h||0)+", "+100*(this.s||0)+"%, "+100*(this.l||0)+"%"+(1===t?")":", "+t+")")}}));const Ee=Math.PI/180,ke=180/Math.PI,Ne=.96422,Ce=.82521,Pe=4/29,ze=6/29,De=3*ze*ze;function qe(t){if(t instanceof Fe)return new Fe(t.l,t.a,t.b,t.opacity);if(t instanceof je)return He(t);t instanceof _e||(t=ye(t));var n,e,r=Be(t.r),i=Be(t.g),o=Be(t.b),a=Oe((.2225045*r+.7168786*i+.0606169*o)/1);return r===i&&i===o?n=e=a:(n=Oe((.4360747*r+.3850649*i+.1430804*o)/Ne),e=Oe((.0139322*r+.0971045*i+.7141733*o)/Ce)),new Fe(116*a-16,500*(n-a),200*(a-e),t.opacity)}function Re(t,n,e,r){return 1===arguments.length?qe(t):new Fe(t,n,e,null==r?1:r)}function Fe(t,n,e,r){this.l=+t,this.a=+n,this.b=+e,this.opacity=+r}function Oe(t){return t>.008856451679035631?Math.pow(t,1/3):t/De+Pe}function Ie(t){return t>ze?t*t*t:De*(t-Pe)}function Ue(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function Be(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Ye(t){if(t instanceof je)return new je(t.h,t.c,t.l,t.opacity);if(t instanceof Fe||(t=qe(t)),0===t.a&&0===t.b)return new je(NaN,0<t.l&&t.l<100?0:NaN,t.l,t.opacity);var n=Math.atan2(t.b,t.a)*ke;return new je(n<0?n+360:n,Math.sqrt(t.a*t.a+t.b*t.b),t.l,t.opacity)}function Le(t,n,e,r){return 1===arguments.length?Ye(t):new je(t,n,e,null==r?1:r)}function je(t,n,e,r){this.h=+t,this.c=+n,this.l=+e,this.opacity=+r}function He(t){if(isNaN(t.h))return new Fe(t.l,0,0,t.opacity);var n=t.h*Ee;return new Fe(t.l,Math.cos(n)*t.c,Math.sin(n)*t.c,t.opacity)}Wn(Fe,Re,Zn(Kn,{brighter:function(t){return new Fe(this.l+18*(null==t?1:t),this.a,this.b,this.opacity)},darker:function(t){return new Fe(this.l-18*(null==t?1:t),this.a,this.b,this.opacity)},rgb:function(){var t=(this.l+16)/116,n=isNaN(this.a)?t:t+this.a/500,e=isNaN(this.b)?t:t-this.b/200;return new _e(Ue(3.1338561*(n=Ne*Ie(n))-1.6168667*(t=1*Ie(t))-.4906146*(e=Ce*Ie(e))),Ue(-.9787684*n+1.9161415*t+.033454*e),Ue(.0719453*n-.2289914*t+1.4052427*e),this.opacity)}})),Wn(je,Le,Zn(Kn,{brighter:function(t){return new je(this.h,this.c,this.l+18*(null==t?1:t),this.opacity)},darker:function(t){return new je(this.h,this.c,this.l-18*(null==t?1:t),this.opacity)},rgb:function(){return He(this).rgb()}}));var Xe=-.14861,Ge=1.78277,Ve=-.29227,$e=-.90649,We=1.97294,Ze=We*$e,Ke=We*Ge,Qe=Ge*Ve-$e*Xe;function Je(t){if(t instanceof nr)return new nr(t.h,t.s,t.l,t.opacity);t instanceof _e||(t=ye(t));var n=t.r/255,e=t.g/255,r=t.b/255,i=(Qe*r+Ze*n-Ke*e)/(Qe+Ze-Ke),o=r-i,a=(We*(e-i)-Ve*o)/$e,u=Math.sqrt(a*a+o*o)/(We*i*(1-i)),c=u?Math.atan2(a,o)*ke-120:NaN;return new nr(c<0?c+360:c,u,i,t.opacity)}function tr(t,n,e,r){return 1===arguments.length?Je(t):new nr(t,n,e,null==r?1:r)}function nr(t,n,e,r){this.h=+t,this.s=+n,this.l=+e,this.opacity=+r}function er(t,n,e,r,i){var o=t*t,a=o*t;return((1-3*t+3*o-a)*n+(4-6*o+3*a)*e+(1+3*t+3*o-3*a)*r+a*i)/6}function rr(t){var n=t.length-1;return function(e){var r=e<=0?e=0:e>=1?(e=1,n-1):Math.floor(e*n),i=t[r],o=t[r+1],a=r>0?t[r-1]:2*i-o,u=r<n-1?t[r+2]:2*o-i;return er((e-r/n)*n,a,i,o,u)}}function ir(t){var n=t.length;return function(e){var r=Math.floor(((e%=1)<0?++e:e)*n),i=t[(r+n-1)%n],o=t[r%n],a=t[(r+1)%n],u=t[(r+2)%n];return er((e-r/n)*n,i,o,a,u)}}Wn(nr,tr,Zn(Kn,{brighter:function(t){return t=null==t?Jn:Math.pow(Jn,t),new nr(this.h,this.s,this.l*t,this.opacity)},darker:function(t){return t=null==t?Qn:Math.pow(Qn,t),new nr(this.h,this.s,this.l*t,this.opacity)},rgb:function(){var t=isNaN(this.h)?0:(this.h+120)*Ee,n=+this.l,e=isNaN(this.s)?0:this.s*n*(1-n),r=Math.cos(t),i=Math.sin(t);return new _e(255*(n+e*(Xe*r+Ge*i)),255*(n+e*(Ve*r+$e*i)),255*(n+e*(We*r)),this.opacity)}}));var or=t=>()=>t;function ar(t,n){return function(e){return t+e*n}}function ur(t,n){var e=n-t;return e?ar(t,e>180||e<-180?e-360*Math.round(e/360):e):or(isNaN(t)?n:t)}function cr(t){return 1==(t=+t)?fr:function(n,e){return e-n?function(t,n,e){return t=Math.pow(t,e),n=Math.pow(n,e)-t,e=1/e,function(r){return Math.pow(t+r*n,e)}}(n,e,t):or(isNaN(n)?e:n)}}function fr(t,n){var e=n-t;return e?ar(t,e):or(isNaN(t)?n:t)}var sr=function t(n){var e=cr(n);function r(t,n){var r=e((t=ve(t)).r,(n=ve(n)).r),i=e(t.g,n.g),o=e(t.b,n.b),a=fr(t.opacity,n.opacity);return function(n){return t.r=r(n),t.g=i(n),t.b=o(n),t.opacity=a(n),t+""}}return r.gamma=t,r}(1);function lr(t){return function(n){var e,r,i=n.length,o=new Array(i),a=new Array(i),u=new Array(i);for(e=0;e<i;++e)r=ve(n[e]),o[e]=r.r||0,a[e]=r.g||0,u[e]=r.b||0;return o=t(o),a=t(a),u=t(u),r.opacity=1,function(t){return r.r=o(t),r.g=a(t),r.b=u(t),r+""}}}var hr=lr(rr),dr=lr(ir);function pr(t,n){n||(n=[]);var e,r=t?Math.min(n.length,t.length):0,i=n.slice();return function(o){for(e=0;e<r;++e)i[e]=t[e]*(1-o)+n[e]*o;return i}}function gr(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)}function yr(t,n){var e,r=n?n.length:0,i=t?Math.min(r,t.length):0,o=new Array(i),a=new Array(r);for(e=0;e<i;++e)o[e]=Mr(t[e],n[e]);for(;e<r;++e)a[e]=n[e];return function(t){for(e=0;e<i;++e)a[e]=o[e](t);return a}}function vr(t,n){var e=new Date;return t=+t,n=+n,function(r){return e.setTime(t*(1-r)+n*r),e}}function _r(t,n){return t=+t,n=+n,function(e){return t*(1-e)+n*e}}function br(t,n){var e,r={},i={};for(e in null!==t&&"object"==typeof t||(t={}),null!==n&&"object"==typeof n||(n={}),n)e in t?r[e]=Mr(t[e],n[e]):i[e]=n[e];return function(t){for(e in r)i[e]=r[e](t);return i}}var mr=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,xr=new RegExp(mr.source,"g");function wr(t,n){var e,r,i,o=mr.lastIndex=xr.lastIndex=0,a=-1,u=[],c=[];for(t+="",n+="";(e=mr.exec(t))&&(r=xr.exec(n));)(i=r.index)>o&&(i=n.slice(o,i),u[a]?u[a]+=i:u[++a]=i),(e=e[0])===(r=r[0])?u[a]?u[a]+=r:u[++a]=r:(u[++a]=null,c.push({i:a,x:_r(e,r)})),o=xr.lastIndex;return o<n.length&&(i=n.slice(o),u[a]?u[a]+=i:u[++a]=i),u.length<2?c[0]?function(t){return function(n){return t(n)+""}}(c[0].x):function(t){return function(){return t}}(n):(n=c.length,function(t){for(var e,r=0;r<n;++r)u[(e=c[r]).i]=e.x(t);return u.join("")})}function Mr(t,n){var e,r=typeof n;return null==n||"boolean"===r?or(n):("number"===r?_r:"string"===r?(e=de(n))?(n=e,sr):wr:n instanceof de?sr:n instanceof Date?vr:gr(n)?pr:Array.isArray(n)?yr:"function"!=typeof n.valueOf&&"function"!=typeof n.toString||isNaN(n)?br:_r)(t,n)}function Ar(t,n){return t=+t,n=+n,function(e){return Math.round(t*(1-e)+n*e)}}var Tr,Sr=180/Math.PI,Er={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function kr(t,n,e,r,i,o){var a,u,c;return(a=Math.sqrt(t*t+n*n))&&(t/=a,n/=a),(c=t*e+n*r)&&(e-=t*c,r-=n*c),(u=Math.sqrt(e*e+r*r))&&(e/=u,r/=u,c/=u),t*r<n*e&&(t=-t,n=-n,c=-c,a=-a),{translateX:i,translateY:o,rotate:Math.atan2(n,t)*Sr,skewX:Math.atan(c)*Sr,scaleX:a,scaleY:u}}function Nr(t,n,e,r){function i(t){return t.length?t.pop()+" ":""}return function(o,a){var u=[],c=[];return o=t(o),a=t(a),function(t,r,i,o,a,u){if(t!==i||r!==o){var c=a.push("translate(",null,n,null,e);u.push({i:c-4,x:_r(t,i)},{i:c-2,x:_r(r,o)})}else(i||o)&&a.push("translate("+i+n+o+e)}(o.translateX,o.translateY,a.translateX,a.translateY,u,c),function(t,n,e,o){t!==n?(t-n>180?n+=360:n-t>180&&(t+=360),o.push({i:e.push(i(e)+"rotate(",null,r)-2,x:_r(t,n)})):n&&e.push(i(e)+"rotate("+n+r)}(o.rotate,a.rotate,u,c),function(t,n,e,o){t!==n?o.push({i:e.push(i(e)+"skewX(",null,r)-2,x:_r(t,n)}):n&&e.push(i(e)+"skewX("+n+r)}(o.skewX,a.skewX,u,c),function(t,n,e,r,o,a){if(t!==e||n!==r){var u=o.push(i(o)+"scale(",null,",",null,")");a.push({i:u-4,x:_r(t,e)},{i:u-2,x:_r(n,r)})}else 1===e&&1===r||o.push(i(o)+"scale("+e+","+r+")")}(o.scaleX,o.scaleY,a.scaleX,a.scaleY,u,c),o=a=null,function(t){for(var n,e=-1,r=c.length;++e<r;)u[(n=c[e]).i]=n.x(t);return u.join("")}}}var Cr=Nr((function(t){const n=new("function"==typeof DOMMatrix?DOMMatrix:WebKitCSSMatrix)(t+"");return n.isIdentity?Er:kr(n.a,n.b,n.c,n.d,n.e,n.f)}),"px, ","px)","deg)"),Pr=Nr((function(t){return null==t?Er:(Tr||(Tr=document.createElementNS("http://www.w3.org/2000/svg","g")),Tr.setAttribute("transform",t),(t=Tr.transform.baseVal.consolidate())?kr((t=t.matrix).a,t.b,t.c,t.d,t.e,t.f):Er)}),", ",")",")");function zr(t){return((t=Math.exp(t))+1/t)/2}var Dr=function t(n,e,r){function i(t,i){var o,a,u=t[0],c=t[1],f=t[2],s=i[0],l=i[1],h=i[2],d=s-u,p=l-c,g=d*d+p*p;if(g<1e-12)a=Math.log(h/f)/n,o=function(t){return[u+t*d,c+t*p,f*Math.exp(n*t*a)]};else{var y=Math.sqrt(g),v=(h*h-f*f+r*g)/(2*f*e*y),_=(h*h-f*f-r*g)/(2*h*e*y),b=Math.log(Math.sqrt(v*v+1)-v),m=Math.log(Math.sqrt(_*_+1)-_);a=(m-b)/n,o=function(t){var r=t*a,i=zr(b),o=f/(e*y)*(i*function(t){return((t=Math.exp(2*t))-1)/(t+1)}(n*r+b)-function(t){return((t=Math.exp(t))-1/t)/2}(b));return[u+o*d,c+o*p,f*i/zr(n*r+b)]}}return o.duration=1e3*a*n/Math.SQRT2,o}return i.rho=function(n){var e=Math.max(.001,+n),r=e*e;return t(e,r,r*r)},i}(Math.SQRT2,2,4);function qr(t){return function(n,e){var r=t((n=Ae(n)).h,(e=Ae(e)).h),i=fr(n.s,e.s),o=fr(n.l,e.l),a=fr(n.opacity,e.opacity);return function(t){return n.h=r(t),n.s=i(t),n.l=o(t),n.opacity=a(t),n+""}}}var Rr=qr(ur),Fr=qr(fr);function Or(t){return function(n,e){var r=t((n=Le(n)).h,(e=Le(e)).h),i=fr(n.c,e.c),o=fr(n.l,e.l),a=fr(n.opacity,e.opacity);return function(t){return n.h=r(t),n.c=i(t),n.l=o(t),n.opacity=a(t),n+""}}}var Ir=Or(ur),Ur=Or(fr);function Br(t){return function n(e){function r(n,r){var i=t((n=tr(n)).h,(r=tr(r)).h),o=fr(n.s,r.s),a=fr(n.l,r.l),u=fr(n.opacity,r.opacity);return function(t){return n.h=i(t),n.s=o(t),n.l=a(Math.pow(t,e)),n.opacity=u(t),n+""}}return e=+e,r.gamma=n,r}(1)}var Yr=Br(ur),Lr=Br(fr);function jr(t,n){void 0===n&&(n=t,t=Mr);for(var e=0,r=n.length-1,i=n[0],o=new Array(r<0?0:r);e<r;)o[e]=t(i,i=n[++e]);return function(t){var n=Math.max(0,Math.min(r-1,Math.floor(t*=r)));return o[n](t-n)}}var Hr,Xr,Gr=0,Vr=0,$r=0,Wr=0,Zr=0,Kr=0,Qr="object"==typeof performance&&performance.now?performance:Date,Jr="object"==typeof window&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function ti(){return Zr||(Jr(ni),Zr=Qr.now()+Kr)}function ni(){Zr=0}function ei(){this._call=this._time=this._next=null}function ri(t,n,e){var r=new ei;return r.restart(t,n,e),r}function ii(){ti(),++Gr;for(var t,n=Hr;n;)(t=Zr-n._time)>=0&&n._call.call(null,t),n=n._next;--Gr}function oi(){Zr=(Wr=Qr.now())+Kr,Gr=Vr=0;try{ii()}finally{Gr=0,function(){var t,n,e=Hr,r=1/0;for(;e;)e._call?(r>e._time&&(r=e._time),t=e,e=e._next):(n=e._next,e._next=null,e=t?t._next=n:Hr=n);Xr=t,ui(r)}(),Zr=0}}function ai(){var t=Qr.now(),n=t-Wr;n>1e3&&(Kr-=n,Wr=t)}function ui(t){Gr||(Vr&&(Vr=clearTimeout(Vr)),t-Zr>24?(t<1/0&&(Vr=setTimeout(oi,t-Qr.now()-Kr)),$r&&($r=clearInterval($r))):($r||(Wr=Qr.now(),$r=setInterval(ai,1e3)),Gr=1,Jr(oi)))}function ci(t,n,e){var r=new ei;return n=null==n?0:+n,r.restart((e=>{r.stop(),t(e+n)}),n,e),r}ei.prototype=ri.prototype={constructor:ei,restart:function(t,n,e){if("function"!=typeof t)throw new TypeError("callback is not a function");e=(null==e?ti():+e)+(null==n?0:+n),this._next||Xr===this||(Xr?Xr._next=this:Hr=this,Xr=this),this._call=t,this._time=e,ui()},stop:function(){this._call&&(this._call=null,this._time=1/0,ui())}};var fi=pt("start","end","cancel","interrupt"),si=[];function li(t,n,e,r,i,o){var a=t.__transition;if(a){if(e in a)return}else t.__transition={};!function(t,n,e){var r,i=t.__transition;function o(t){e.state=1,e.timer.restart(a,e.delay,e.time),e.delay<=t&&a(t-e.delay)}function a(o){var f,s,l,h;if(1!==e.state)return c();for(f in i)if((h=i[f]).name===e.name){if(3===h.state)return ci(a);4===h.state?(h.state=6,h.timer.stop(),h.on.call("interrupt",t,t.__data__,h.index,h.group),delete i[f]):+f<n&&(h.state=6,h.timer.stop(),h.on.call("cancel",t,t.__data__,h.index,h.group),delete i[f])}if(ci((function(){3===e.state&&(e.state=4,e.timer.restart(u,e.delay,e.time),u(o))})),e.state=2,e.on.call("start",t,t.__data__,e.index,e.group),2===e.state){for(e.state=3,r=new Array(l=e.tween.length),f=0,s=-1;f<l;++f)(h=e.tween[f].value.call(t,t.__data__,e.index,e.group))&&(r[++s]=h);r.length=s+1}}function u(n){for(var i=n<e.duration?e.ease.call(null,n/e.duration):(e.timer.restart(c),e.state=5,1),o=-1,a=r.length;++o<a;)r[o].call(t,i);5===e.state&&(e.on.call("end",t,t.__data__,e.index,e.group),c())}function c(){for(var r in e.state=6,e.timer.stop(),delete i[n],i)return;delete t.__transition}i[n]=e,e.timer=ri(o,0,e.time)}(t,e,{name:n,index:r,group:i,on:fi,tween:si,time:o.time,delay:o.delay,duration:o.duration,ease:o.ease,timer:null,state:0})}function hi(t,n){var e=pi(t,n);if(e.state>0)throw new Error("too late; already scheduled");return e}function di(t,n){var e=pi(t,n);if(e.state>3)throw new Error("too late; already running");return e}function pi(t,n){var e=t.__transition;if(!e||!(e=e[n]))throw new Error("transition not found");return e}function gi(t,n){var e,r,i,o=t.__transition,a=!0;if(o){for(i in n=null==n?null:n+"",o)(e=o[i]).name===n?(r=e.state>2&&e.state<5,e.state=6,e.timer.stop(),e.on.call(r?"interrupt":"cancel",t,t.__data__,e.index,e.group),delete o[i]):a=!1;a&&delete t.__transition}}function yi(t,n){var e,r;return function(){var i=di(this,t),o=i.tween;if(o!==e)for(var a=0,u=(r=e=o).length;a<u;++a)if(r[a].name===n){(r=r.slice()).splice(a,1);break}i.tween=r}}function vi(t,n,e){var r,i;if("function"!=typeof e)throw new Error;return function(){var o=di(this,t),a=o.tween;if(a!==r){i=(r=a).slice();for(var u={name:n,value:e},c=0,f=i.length;c<f;++c)if(i[c].name===n){i[c]=u;break}c===f&&i.push(u)}o.tween=i}}function _i(t,n,e){var r=t._id;return t.each((function(){var t=di(this,r);(t.value||(t.value={}))[n]=e.apply(this,arguments)})),function(t){return pi(t,r).value[n]}}function bi(t,n){var e;return("number"==typeof n?_r:n instanceof de?sr:(e=de(n))?(n=e,sr):wr)(t,n)}function mi(t){return function(){this.removeAttribute(t)}}function xi(t){return function(){this.removeAttributeNS(t.space,t.local)}}function wi(t,n,e){var r,i,o=e+"";return function(){var a=this.getAttribute(t);return a===o?null:a===r?i:i=n(r=a,e)}}function Mi(t,n,e){var r,i,o=e+"";return function(){var a=this.getAttributeNS(t.space,t.local);return a===o?null:a===r?i:i=n(r=a,e)}}function Ai(t,n,e){var r,i,o;return function(){var a,u,c=e(this);if(null!=c)return(a=this.getAttribute(t))===(u=c+"")?null:a===r&&u===i?o:(i=u,o=n(r=a,c));this.removeAttribute(t)}}function Ti(t,n,e){var r,i,o;return function(){var a,u,c=e(this);if(null!=c)return(a=this.getAttributeNS(t.space,t.local))===(u=c+"")?null:a===r&&u===i?o:(i=u,o=n(r=a,c));this.removeAttributeNS(t.space,t.local)}}function Si(t,n){return function(e){this.setAttribute(t,n.call(this,e))}}function Ei(t,n){return function(e){this.setAttributeNS(t.space,t.local,n.call(this,e))}}function ki(t,n){var e,r;function i(){var i=n.apply(this,arguments);return i!==r&&(e=(r=i)&&Ei(t,i)),e}return i._value=n,i}function Ni(t,n){var e,r;function i(){var i=n.apply(this,arguments);return i!==r&&(e=(r=i)&&Si(t,i)),e}return i._value=n,i}function Ci(t,n){return function(){hi(this,t).delay=+n.apply(this,arguments)}}function Pi(t,n){return n=+n,function(){hi(this,t).delay=n}}function zi(t,n){return function(){di(this,t).duration=+n.apply(this,arguments)}}function Di(t,n){return n=+n,function(){di(this,t).duration=n}}function qi(t,n){if("function"!=typeof n)throw new Error;return function(){di(this,t).ease=n}}function Ri(t,n,e){var r,i,o=function(t){return(t+"").trim().split(/^|\s+/).every((function(t){var n=t.indexOf(".");return n>=0&&(t=t.slice(0,n)),!t||"start"===t}))}(n)?hi:di;return function(){var a=o(this,t),u=a.on;u!==r&&(i=(r=u).copy()).on(n,e),a.on=i}}var Fi=zn.prototype.constructor;function Oi(t){return function(){this.style.removeProperty(t)}}function Ii(t,n,e){return function(r){this.style.setProperty(t,n.call(this,r),e)}}function Ui(t,n,e){var r,i;function o(){var o=n.apply(this,arguments);return o!==i&&(r=(i=o)&&Ii(t,o,e)),r}return o._value=n,o}function Bi(t){return function(n){this.textContent=t.call(this,n)}}function Yi(t){var n,e;function r(){var r=t.apply(this,arguments);return r!==e&&(n=(e=r)&&Bi(r)),n}return r._value=t,r}var Li=0;function ji(t,n,e,r){this._groups=t,this._parents=n,this._name=e,this._id=r}function Hi(t){return zn().transition(t)}function Xi(){return++Li}var Gi=zn.prototype;ji.prototype=Hi.prototype={constructor:ji,select:function(t){var n=this._name,e=this._id;"function"!=typeof t&&(t=St(t));for(var r=this._groups,i=r.length,o=new Array(i),a=0;a<i;++a)for(var u,c,f=r[a],s=f.length,l=o[a]=new Array(s),h=0;h<s;++h)(u=f[h])&&(c=t.call(u,u.__data__,h,f))&&("__data__"in u&&(c.__data__=u.__data__),l[h]=c,li(l[h],n,e,h,l,pi(u,e)));return new ji(o,this._parents,n,e)},selectAll:function(t){var n=this._name,e=this._id;"function"!=typeof t&&(t=Nt(t));for(var r=this._groups,i=r.length,o=[],a=[],u=0;u<i;++u)for(var c,f=r[u],s=f.length,l=0;l<s;++l)if(c=f[l]){for(var h,d=t.call(c,c.__data__,l,f),p=pi(c,e),g=0,y=d.length;g<y;++g)(h=d[g])&&li(h,n,e,g,d,p);o.push(d),a.push(c)}return new ji(o,a,n,e)},filter:function(t){"function"!=typeof t&&(t=Ct(t));for(var n=this._groups,e=n.length,r=new Array(e),i=0;i<e;++i)for(var o,a=n[i],u=a.length,c=r[i]=[],f=0;f<u;++f)(o=a[f])&&t.call(o,o.__data__,f,a)&&c.push(o);return new ji(r,this._parents,this._name,this._id)},merge:function(t){if(t._id!==this._id)throw new Error;for(var n=this._groups,e=t._groups,r=n.length,i=e.length,o=Math.min(r,i),a=new Array(r),u=0;u<o;++u)for(var c,f=n[u],s=e[u],l=f.length,h=a[u]=new Array(l),d=0;d<l;++d)(c=f[d]||s[d])&&(h[d]=c);for(;u<r;++u)a[u]=n[u];return new ji(a,this._parents,this._name,this._id)},selection:function(){return new Fi(this._groups,this._parents)},transition:function(){for(var t=this._name,n=this._id,e=Xi(),r=this._groups,i=r.length,o=0;o<i;++o)for(var a,u=r[o],c=u.length,f=0;f<c;++f)if(a=u[f]){var s=pi(a,n);li(a,t,e,f,u,{time:s.time+s.delay+s.duration,delay:0,duration:s.duration,ease:s.ease})}return new ji(r,this._parents,t,e)},call:Gi.call,nodes:Gi.nodes,node:Gi.node,size:Gi.size,empty:Gi.empty,each:Gi.each,on:function(t,n){var e=this._id;return arguments.length<2?pi(this.node(),e).on.on(t):this.each(Ri(e,t,n))},attr:function(t,n){var e=xt(t),r="transform"===e?Pr:bi;return this.attrTween(t,"function"==typeof n?(e.local?Ti:Ai)(e,r,_i(this,"attr."+t,n)):null==n?(e.local?xi:mi)(e):(e.local?Mi:wi)(e,r,n))},attrTween:function(t,n){var e="attr."+t;if(arguments.length<2)return(e=this.tween(e))&&e._value;if(null==n)return this.tween(e,null);if("function"!=typeof n)throw new Error;var r=xt(t);return this.tween(e,(r.local?ki:Ni)(r,n))},style:function(t,n,e){var r="transform"==(t+="")?Cr:bi;return null==n?this.styleTween(t,function(t,n){var e,r,i;return function(){var o=Jt(this,t),a=(this.style.removeProperty(t),Jt(this,t));return o===a?null:o===e&&a===r?i:i=n(e=o,r=a)}}(t,r)).on("end.style."+t,Oi(t)):"function"==typeof n?this.styleTween(t,function(t,n,e){var r,i,o;return function(){var a=Jt(this,t),u=e(this),c=u+"";return null==u&&(this.style.removeProperty(t),c=u=Jt(this,t)),a===c?null:a===r&&c===i?o:(i=c,o=n(r=a,u))}}(t,r,_i(this,"style."+t,n))).each(function(t,n){var e,r,i,o,a="style."+n,u="end."+a;return function(){var c=di(this,t),f=c.on,s=null==c.value[a]?o||(o=Oi(n)):void 0;f===e&&i===s||(r=(e=f).copy()).on(u,i=s),c.on=r}}(this._id,t)):this.styleTween(t,function(t,n,e){var r,i,o=e+"";return function(){var a=Jt(this,t);return a===o?null:a===r?i:i=n(r=a,e)}}(t,r,n),e).on("end.style."+t,null)},styleTween:function(t,n,e){var r="style."+(t+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(null==n)return this.tween(r,null);if("function"!=typeof n)throw new Error;return this.tween(r,Ui(t,n,null==e?"":e))},text:function(t){return this.tween("text","function"==typeof t?function(t){return function(){var n=t(this);this.textContent=null==n?"":n}}(_i(this,"text",t)):function(t){return function(){this.textContent=t}}(null==t?"":t+""))},textTween:function(t){var n="text";if(arguments.length<1)return(n=this.tween(n))&&n._value;if(null==t)return this.tween(n,null);if("function"!=typeof t)throw new Error;return this.tween(n,Yi(t))},remove:function(){return this.on("end.remove",function(t){return function(){var n=this.parentNode;for(var e in this.__transition)if(+e!==t)return;n&&n.removeChild(this)}}(this._id))},tween:function(t,n){var e=this._id;if(t+="",arguments.length<2){for(var r,i=pi(this.node(),e).tween,o=0,a=i.length;o<a;++o)if((r=i[o]).name===t)return r.value;return null}return this.each((null==n?yi:vi)(e,t,n))},delay:function(t){var n=this._id;return arguments.length?this.each(("function"==typeof t?Ci:Pi)(n,t)):pi(this.node(),n).delay},duration:function(t){var n=this._id;return arguments.length?this.each(("function"==typeof t?zi:Di)(n,t)):pi(this.node(),n).duration},ease:function(t){var n=this._id;return arguments.length?this.each(qi(n,t)):pi(this.node(),n).ease},easeVarying:function(t){if("function"!=typeof t)throw new Error;return this.each(function(t,n){return function(){var e=n.apply(this,arguments);if("function"!=typeof e)throw new Error;di(this,t).ease=e}}(this._id,t))},end:function(){var t,n,e=this,r=e._id,i=e.size();return new Promise((function(o,a){var u={value:a},c={value:function(){0==--i&&o()}};e.each((function(){var e=di(this,r),i=e.on;i!==t&&((n=(t=i).copy())._.cancel.push(u),n._.interrupt.push(u),n._.end.push(c)),e.on=n})),0===i&&o()}))},[Symbol.iterator]:Gi[Symbol.iterator]};function Vi(t){return((t*=2)<=1?t*t:--t*(2-t)+1)/2}function $i(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}var Wi=function t(n){function e(t){return Math.pow(t,n)}return n=+n,e.exponent=t,e}(3),Zi=function t(n){function e(t){return 1-Math.pow(1-t,n)}return n=+n,e.exponent=t,e}(3),Ki=function t(n){function e(t){return((t*=2)<=1?Math.pow(t,n):2-Math.pow(2-t,n))/2}return n=+n,e.exponent=t,e}(3),Qi=Math.PI,Ji=Qi/2;function to(t){return(1-Math.cos(Qi*t))/2}function no(t){return 1.0009775171065494*(Math.pow(2,-10*t)-.0009765625)}function eo(t){return((t*=2)<=1?no(1-t):2-no(t-1))/2}function ro(t){return((t*=2)<=1?1-Math.sqrt(1-t*t):Math.sqrt(1-(t-=2)*t)+1)/2}var io=4/11,oo=7.5625;function ao(t){return(t=+t)<io?oo*t*t:t<.7272727272727273?oo*(t-=.5454545454545454)*t+.75:t<.9090909090909091?oo*(t-=.8181818181818182)*t+.9375:oo*(t-=.9545454545454546)*t+.984375}var uo=1.70158,co=function t(n){function e(t){return(t=+t)*t*(n*(t-1)+t)}return n=+n,e.overshoot=t,e}(uo),fo=function t(n){function e(t){return--t*t*((t+1)*n+t)+1}return n=+n,e.overshoot=t,e}(uo),so=function t(n){function e(t){return((t*=2)<1?t*t*((n+1)*t-n):(t-=2)*t*((n+1)*t+n)+2)/2}return n=+n,e.overshoot=t,e}(uo),lo=2*Math.PI,ho=function t(n,e){var r=Math.asin(1/(n=Math.max(1,n)))*(e/=lo);function i(t){return n*no(- --t)*Math.sin((r-t)/e)}return i.amplitude=function(n){return t(n,e*lo)},i.period=function(e){return t(n,e)},i}(1,.3),po=function t(n,e){var r=Math.asin(1/(n=Math.max(1,n)))*(e/=lo);function i(t){return 1-n*no(t=+t)*Math.sin((t+r)/e)}return i.amplitude=function(n){return t(n,e*lo)},i.period=function(e){return t(n,e)},i}(1,.3),go=function t(n,e){var r=Math.asin(1/(n=Math.max(1,n)))*(e/=lo);function i(t){return((t=2*t-1)<0?n*no(-t)*Math.sin((r-t)/e):2-n*no(t)*Math.sin((r+t)/e))/2}return i.amplitude=function(n){return t(n,e*lo)},i.period=function(e){return t(n,e)},i}(1,.3),yo={time:null,delay:0,duration:250,ease:$i};function vo(t,n){for(var e;!(e=t.__transition)||!(e=e[n]);)if(!(t=t.parentNode))throw new Error(`transition ${n} not found`);return e}zn.prototype.interrupt=function(t){return this.each((function(){gi(this,t)}))},zn.prototype.transition=function(t){var n,e;t instanceof ji?(n=t._id,t=t._name):(n=Xi(),(e=yo).time=ti(),t=null==t?null:t+"");for(var r=this._groups,i=r.length,o=0;o<i;++o)for(var a,u=r[o],c=u.length,f=0;f<c;++f)(a=u[f])&&li(a,t,n,f,u,e||vo(a,n));return new ji(r,this._parents,t,n)};var _o=[null];var bo=t=>()=>t;function mo(t,{sourceEvent:n,target:e,selection:r,mode:i,dispatch:o}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},target:{value:e,enumerable:!0,configurable:!0},selection:{value:r,enumerable:!0,configurable:!0},mode:{value:i,enumerable:!0,configurable:!0},_:{value:o}})}function xo(t){t.stopImmediatePropagation()}function wo(t){t.preventDefault(),t.stopImmediatePropagation()}var Mo={name:"drag"},Ao={name:"space"},To={name:"handle"},So={name:"center"};const{abs:Eo,max:ko,min:No}=Math;function Co(t){return[+t[0],+t[1]]}function Po(t){return[Co(t[0]),Co(t[1])]}var zo={name:"x",handles:["w","e"].map(Bo),input:function(t,n){return null==t?null:[[+t[0],n[0][1]],[+t[1],n[1][1]]]},output:function(t){return t&&[t[0][0],t[1][0]]}},Do={name:"y",handles:["n","s"].map(Bo),input:function(t,n){return null==t?null:[[n[0][0],+t[0]],[n[1][0],+t[1]]]},output:function(t){return t&&[t[0][1],t[1][1]]}},qo={name:"xy",handles:["n","w","e","s","nw","ne","sw","se"].map(Bo),input:function(t){return null==t?null:Po(t)},output:function(t){return t}},Ro={overlay:"crosshair",selection:"move",n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},Fo={e:"w",w:"e",nw:"ne",ne:"nw",se:"sw",sw:"se"},Oo={n:"s",s:"n",nw:"sw",ne:"se",se:"ne",sw:"nw"},Io={overlay:1,selection:1,n:null,e:1,s:null,w:-1,nw:-1,ne:1,se:1,sw:-1},Uo={overlay:1,selection:1,n:-1,e:null,s:1,w:null,nw:-1,ne:-1,se:1,sw:1};function Bo(t){return{type:t}}function Yo(t){return!t.ctrlKey&&!t.button}function Lo(){var t=this.ownerSVGElement||this;return t.hasAttribute("viewBox")?[[(t=t.viewBox.baseVal).x,t.y],[t.x+t.width,t.y+t.height]]:[[0,0],[t.width.baseVal.value,t.height.baseVal.value]]}function jo(){return navigator.maxTouchPoints||"ontouchstart"in this}function Ho(t){for(;!t.__brush;)if(!(t=t.parentNode))return;return t.__brush}function Xo(t){return t[0][0]===t[1][0]||t[0][1]===t[1][1]}function Go(t){var n,e=Lo,r=Yo,i=jo,o=!0,a=pt("start","brush","end"),u=6;function c(n){var e=n.property("__brush",g).selectAll(".overlay").data([Bo("overlay")]);e.enter().append("rect").attr("class","overlay").attr("pointer-events","all").attr("cursor",Ro.overlay).merge(e).each((function(){var t=Ho(this).extent;Dn(this).attr("x",t[0][0]).attr("y",t[0][1]).attr("width",t[1][0]-t[0][0]).attr("height",t[1][1]-t[0][1])})),n.selectAll(".selection").data([Bo("selection")]).enter().append("rect").attr("class","selection").attr("cursor",Ro.selection).attr("fill","#777").attr("fill-opacity",.3).attr("stroke","#fff").attr("shape-rendering","crispEdges");var r=n.selectAll(".handle").data(t.handles,(function(t){return t.type}));r.exit().remove(),r.enter().append("rect").attr("class",(function(t){return"handle handle--"+t.type})).attr("cursor",(function(t){return Ro[t.type]})),n.each(f).attr("fill","none").attr("pointer-events","all").on("mousedown.brush",h).filter(i).on("touchstart.brush",h).on("touchmove.brush",d).on("touchend.brush touchcancel.brush",p).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function f(){var t=Dn(this),n=Ho(this).selection;n?(t.selectAll(".selection").style("display",null).attr("x",n[0][0]).attr("y",n[0][1]).attr("width",n[1][0]-n[0][0]).attr("height",n[1][1]-n[0][1]),t.selectAll(".handle").style("display",null).attr("x",(function(t){return"e"===t.type[t.type.length-1]?n[1][0]-u/2:n[0][0]-u/2})).attr("y",(function(t){return"s"===t.type[0]?n[1][1]-u/2:n[0][1]-u/2})).attr("width",(function(t){return"n"===t.type||"s"===t.type?n[1][0]-n[0][0]+u:u})).attr("height",(function(t){return"e"===t.type||"w"===t.type?n[1][1]-n[0][1]+u:u}))):t.selectAll(".selection,.handle").style("display","none").attr("x",null).attr("y",null).attr("width",null).attr("height",null)}function s(t,n,e){var r=t.__brush.emitter;return!r||e&&r.clean?new l(t,n,e):r}function l(t,n,e){this.that=t,this.args=n,this.state=t.__brush,this.active=0,this.clean=e}function h(e){if((!n||e.touches)&&r.apply(this,arguments)){var i,a,u,c,l,h,d,p,g,y,v,_=this,b=e.target.__data__.type,m="selection"===(o&&e.metaKey?b="overlay":b)?Mo:o&&e.altKey?So:To,x=t===Do?null:Io[b],w=t===zo?null:Uo[b],M=Ho(_),A=M.extent,T=M.selection,S=A[0][0],E=A[0][1],k=A[1][0],N=A[1][1],C=0,P=0,z=x&&w&&o&&e.shiftKey,D=Array.from(e.touches||[e],(t=>{const n=t.identifier;return(t=In(t,_)).point0=t.slice(),t.identifier=n,t}));if("overlay"===b){T&&(g=!0);const n=[D[0],D[1]||D[0]];M.selection=T=[[i=t===Do?S:No(n[0][0],n[1][0]),u=t===zo?E:No(n[0][1],n[1][1])],[l=t===Do?k:ko(n[0][0],n[1][0]),d=t===zo?N:ko(n[0][1],n[1][1])]],D.length>1&&U()}else i=T[0][0],u=T[0][1],l=T[1][0],d=T[1][1];a=i,c=u,h=l,p=d;var q=Dn(_).attr("pointer-events","none"),R=q.selectAll(".overlay").attr("cursor",Ro[b]);gi(_);var F=s(_,arguments,!0).beforestart();if(e.touches)F.moved=I,F.ended=B;else{var O=Dn(e.view).on("mousemove.brush",I,!0).on("mouseup.brush",B,!0);o&&O.on("keydown.brush",Y,!0).on("keyup.brush",L,!0),Yn(e.view)}f.call(_),F.start(e,m.name)}function I(t){for(const n of t.changedTouches||[t])for(const t of D)t.identifier===n.identifier&&(t.cur=In(n,_));if(z&&!y&&!v&&1===D.length){const t=D[0];Eo(t.cur[0]-t[0])>Eo(t.cur[1]-t[1])?v=!0:y=!0}for(const t of D)t.cur&&(t[0]=t.cur[0],t[1]=t.cur[1]);g=!0,wo(t),U(t)}function U(t){const n=D[0],e=n.point0;var r;switch(C=n[0]-e[0],P=n[1]-e[1],m){case Ao:case Mo:x&&(C=ko(S-i,No(k-l,C)),a=i+C,h=l+C),w&&(P=ko(E-u,No(N-d,P)),c=u+P,p=d+P);break;case To:D[1]?(x&&(a=ko(S,No(k,D[0][0])),h=ko(S,No(k,D[1][0])),x=1),w&&(c=ko(E,No(N,D[0][1])),p=ko(E,No(N,D[1][1])),w=1)):(x<0?(C=ko(S-i,No(k-i,C)),a=i+C,h=l):x>0&&(C=ko(S-l,No(k-l,C)),a=i,h=l+C),w<0?(P=ko(E-u,No(N-u,P)),c=u+P,p=d):w>0&&(P=ko(E-d,No(N-d,P)),c=u,p=d+P));break;case So:x&&(a=ko(S,No(k,i-C*x)),h=ko(S,No(k,l+C*x))),w&&(c=ko(E,No(N,u-P*w)),p=ko(E,No(N,d+P*w)))}h<a&&(x*=-1,r=i,i=l,l=r,r=a,a=h,h=r,b in Fo&&R.attr("cursor",Ro[b=Fo[b]])),p<c&&(w*=-1,r=u,u=d,d=r,r=c,c=p,p=r,b in Oo&&R.attr("cursor",Ro[b=Oo[b]])),M.selection&&(T=M.selection),y&&(a=T[0][0],h=T[1][0]),v&&(c=T[0][1],p=T[1][1]),T[0][0]===a&&T[0][1]===c&&T[1][0]===h&&T[1][1]===p||(M.selection=[[a,c],[h,p]],f.call(_),F.brush(t,m.name))}function B(t){if(xo(t),t.touches){if(t.touches.length)return;n&&clearTimeout(n),n=setTimeout((function(){n=null}),500)}else Ln(t.view,g),O.on("keydown.brush keyup.brush mousemove.brush mouseup.brush",null);q.attr("pointer-events","all"),R.attr("cursor",Ro.overlay),M.selection&&(T=M.selection),Xo(T)&&(M.selection=null,f.call(_)),F.end(t,m.name)}function Y(t){switch(t.keyCode){case 16:z=x&&w;break;case 18:m===To&&(x&&(l=h-C*x,i=a+C*x),w&&(d=p-P*w,u=c+P*w),m=So,U());break;case 32:m!==To&&m!==So||(x<0?l=h-C:x>0&&(i=a-C),w<0?d=p-P:w>0&&(u=c-P),m=Ao,R.attr("cursor",Ro.selection),U());break;default:return}wo(t)}function L(t){switch(t.keyCode){case 16:z&&(y=v=z=!1,U());break;case 18:m===So&&(x<0?l=h:x>0&&(i=a),w<0?d=p:w>0&&(u=c),m=To,U());break;case 32:m===Ao&&(t.altKey?(x&&(l=h-C*x,i=a+C*x),w&&(d=p-P*w,u=c+P*w),m=So):(x<0?l=h:x>0&&(i=a),w<0?d=p:w>0&&(u=c),m=To),R.attr("cursor",Ro[b]),U());break;default:return}wo(t)}}function d(t){s(this,arguments).moved(t)}function p(t){s(this,arguments).ended(t)}function g(){var n=this.__brush||{selection:null};return n.extent=Po(e.apply(this,arguments)),n.dim=t,n}return c.move=function(n,e){n.tween?n.on("start.brush",(function(t){s(this,arguments).beforestart().start(t)})).on("interrupt.brush end.brush",(function(t){s(this,arguments).end(t)})).tween("brush",(function(){var n=this,r=n.__brush,i=s(n,arguments),o=r.selection,a=t.input("function"==typeof e?e.apply(this,arguments):e,r.extent),u=Mr(o,a);function c(t){r.selection=1===t&&null===a?null:u(t),f.call(n),i.brush()}return null!==o&&null!==a?c:c(1)})):n.each((function(){var n=this,r=arguments,i=n.__brush,o=t.input("function"==typeof e?e.apply(n,r):e,i.extent),a=s(n,r).beforestart();gi(n),i.selection=null===o?null:o,f.call(n),a.start().brush().end()}))},c.clear=function(t){c.move(t,null)},l.prototype={beforestart:function(){return 1==++this.active&&(this.state.emitter=this,this.starting=!0),this},start:function(t,n){return this.starting?(this.starting=!1,this.emit("start",t,n)):this.emit("brush",t),this},brush:function(t,n){return this.emit("brush",t,n),this},end:function(t,n){return 0==--this.active&&(delete this.state.emitter,this.emit("end",t,n)),this},emit:function(n,e,r){var i=Dn(this.that).datum();a.call(n,this.that,new mo(n,{sourceEvent:e,target:c,selection:t.output(this.state.selection),mode:r,dispatch:a}),i)}},c.extent=function(t){return arguments.length?(e="function"==typeof t?t:bo(Po(t)),c):e},c.filter=function(t){return arguments.length?(r="function"==typeof t?t:bo(!!t),c):r},c.touchable=function(t){return arguments.length?(i="function"==typeof t?t:bo(!!t),c):i},c.handleSize=function(t){return arguments.length?(u=+t,c):u},c.keyModifiers=function(t){return arguments.length?(o=!!t,c):o},c.on=function(){var t=a.on.apply(a,arguments);return t===a?c:t},c}var Vo=Math.abs,$o=Math.cos,Wo=Math.sin,Zo=Math.PI,Ko=Zo/2,Qo=2*Zo,Jo=Math.max,ta=1e-12;function na(t,n){return Array.from({length:n-t},((n,e)=>t+e))}function ea(t){return function(n,e){return t(n.source.value+n.target.value,e.source.value+e.target.value)}}function ra(t,n){var e=0,r=null,i=null,o=null;function a(a){var u,c=a.length,f=new Array(c),s=na(0,c),l=new Array(c*c),h=new Array(c),d=0;a=Float64Array.from({length:c*c},n?(t,n)=>a[n%c][n/c|0]:(t,n)=>a[n/c|0][n%c]);for(let n=0;n<c;++n){let e=0;for(let r=0;r<c;++r)e+=a[n*c+r]+t*a[r*c+n];d+=f[n]=e}u=(d=Jo(0,Qo-e*c)/d)?e:Qo/c;{let n=0;r&&s.sort(((t,n)=>r(f[t],f[n])));for(const e of s){const r=n;if(t){const t=na(1+~c,c).filter((t=>t<0?a[~t*c+e]:a[e*c+t]));i&&t.sort(((t,n)=>i(t<0?-a[~t*c+e]:a[e*c+t],n<0?-a[~n*c+e]:a[e*c+n])));for(const r of t)if(r<0){(l[~r*c+e]||(l[~r*c+e]={source:null,target:null})).target={index:e,startAngle:n,endAngle:n+=a[~r*c+e]*d,value:a[~r*c+e]}}else{(l[e*c+r]||(l[e*c+r]={source:null,target:null})).source={index:e,startAngle:n,endAngle:n+=a[e*c+r]*d,value:a[e*c+r]}}h[e]={index:e,startAngle:r,endAngle:n,value:f[e]}}else{const t=na(0,c).filter((t=>a[e*c+t]||a[t*c+e]));i&&t.sort(((t,n)=>i(a[e*c+t],a[e*c+n])));for(const r of t){let t;if(e<r?(t=l[e*c+r]||(l[e*c+r]={source:null,target:null}),t.source={index:e,startAngle:n,endAngle:n+=a[e*c+r]*d,value:a[e*c+r]}):(t=l[r*c+e]||(l[r*c+e]={source:null,target:null}),t.target={index:e,startAngle:n,endAngle:n+=a[e*c+r]*d,value:a[e*c+r]},e===r&&(t.source=t.target)),t.source&&t.target&&t.source.value<t.target.value){const n=t.source;t.source=t.target,t.target=n}}h[e]={index:e,startAngle:r,endAngle:n,value:f[e]}}n+=u}}return(l=Object.values(l)).groups=h,o?l.sort(o):l}return a.padAngle=function(t){return arguments.length?(e=Jo(0,t),a):e},a.sortGroups=function(t){return arguments.length?(r=t,a):r},a.sortSubgroups=function(t){return arguments.length?(i=t,a):i},a.sortChords=function(t){return arguments.length?(null==t?o=null:(o=ea(t))._=t,a):o&&o._},a}const ia=Math.PI,oa=2*ia,aa=1e-6,ua=oa-aa;function ca(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function fa(){return new ca}ca.prototype=fa.prototype={constructor:ca,moveTo:function(t,n){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)},closePath:function(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(t,n){this._+="L"+(this._x1=+t)+","+(this._y1=+n)},quadraticCurveTo:function(t,n,e,r){this._+="Q"+ +t+","+ +n+","+(this._x1=+e)+","+(this._y1=+r)},bezierCurveTo:function(t,n,e,r,i,o){this._+="C"+ +t+","+ +n+","+ +e+","+ +r+","+(this._x1=+i)+","+(this._y1=+o)},arcTo:function(t,n,e,r,i){t=+t,n=+n,e=+e,r=+r,i=+i;var o=this._x1,a=this._y1,u=e-t,c=r-n,f=o-t,s=a-n,l=f*f+s*s;if(i<0)throw new Error("negative radius: "+i);if(null===this._x1)this._+="M"+(this._x1=t)+","+(this._y1=n);else if(l>aa)if(Math.abs(s*u-c*f)>aa&&i){var h=e-o,d=r-a,p=u*u+c*c,g=h*h+d*d,y=Math.sqrt(p),v=Math.sqrt(l),_=i*Math.tan((ia-Math.acos((p+l-g)/(2*y*v)))/2),b=_/v,m=_/y;Math.abs(b-1)>aa&&(this._+="L"+(t+b*f)+","+(n+b*s)),this._+="A"+i+","+i+",0,0,"+ +(s*h>f*d)+","+(this._x1=t+m*u)+","+(this._y1=n+m*c)}else this._+="L"+(this._x1=t)+","+(this._y1=n);else;},arc:function(t,n,e,r,i,o){t=+t,n=+n,o=!!o;var a=(e=+e)*Math.cos(r),u=e*Math.sin(r),c=t+a,f=n+u,s=1^o,l=o?r-i:i-r;if(e<0)throw new Error("negative radius: "+e);null===this._x1?this._+="M"+c+","+f:(Math.abs(this._x1-c)>aa||Math.abs(this._y1-f)>aa)&&(this._+="L"+c+","+f),e&&(l<0&&(l=l%oa+oa),l>ua?this._+="A"+e+","+e+",0,1,"+s+","+(t-a)+","+(n-u)+"A"+e+","+e+",0,1,"+s+","+(this._x1=c)+","+(this._y1=f):l>aa&&(this._+="A"+e+","+e+",0,"+ +(l>=ia)+","+s+","+(this._x1=t+e*Math.cos(i))+","+(this._y1=n+e*Math.sin(i))))},rect:function(t,n,e,r){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)+"h"+ +e+"v"+ +r+"h"+-e+"Z"},toString:function(){return this._}};var sa=Array.prototype.slice;function la(t){return function(){return t}}function ha(t){return t.source}function da(t){return t.target}function pa(t){return t.radius}function ga(t){return t.startAngle}function ya(t){return t.endAngle}function va(){return 0}function _a(){return 10}function ba(t){var n=ha,e=da,r=pa,i=pa,o=ga,a=ya,u=va,c=null;function f(){var f,s=n.apply(this,arguments),l=e.apply(this,arguments),h=u.apply(this,arguments)/2,d=sa.call(arguments),p=+r.apply(this,(d[0]=s,d)),g=o.apply(this,d)-Ko,y=a.apply(this,d)-Ko,v=+i.apply(this,(d[0]=l,d)),_=o.apply(this,d)-Ko,b=a.apply(this,d)-Ko;if(c||(c=f=fa()),h>ta&&(Vo(y-g)>2*h+ta?y>g?(g+=h,y-=h):(g-=h,y+=h):g=y=(g+y)/2,Vo(b-_)>2*h+ta?b>_?(_+=h,b-=h):(_-=h,b+=h):_=b=(_+b)/2),c.moveTo(p*$o(g),p*Wo(g)),c.arc(0,0,p,g,y),g!==_||y!==b)if(t){var m=+t.apply(this,arguments),x=v-m,w=(_+b)/2;c.quadraticCurveTo(0,0,x*$o(_),x*Wo(_)),c.lineTo(v*$o(w),v*Wo(w)),c.lineTo(x*$o(b),x*Wo(b))}else c.quadraticCurveTo(0,0,v*$o(_),v*Wo(_)),c.arc(0,0,v,_,b);if(c.quadraticCurveTo(0,0,p*$o(g),p*Wo(g)),c.closePath(),f)return c=null,f+""||null}return t&&(f.headRadius=function(n){return arguments.length?(t="function"==typeof n?n:la(+n),f):t}),f.radius=function(t){return arguments.length?(r=i="function"==typeof t?t:la(+t),f):r},f.sourceRadius=function(t){return arguments.length?(r="function"==typeof t?t:la(+t),f):r},f.targetRadius=function(t){return arguments.length?(i="function"==typeof t?t:la(+t),f):i},f.startAngle=function(t){return arguments.length?(o="function"==typeof t?t:la(+t),f):o},f.endAngle=function(t){return arguments.length?(a="function"==typeof t?t:la(+t),f):a},f.padAngle=function(t){return arguments.length?(u="function"==typeof t?t:la(+t),f):u},f.source=function(t){return arguments.length?(n=t,f):n},f.target=function(t){return arguments.length?(e=t,f):e},f.context=function(t){return arguments.length?(c=null==t?null:t,f):c},f}var ma=Array.prototype.slice;function xa(t,n){return t-n}var wa=t=>()=>t;function Ma(t,n){for(var e,r=-1,i=n.length;++r<i;)if(e=Aa(t,n[r]))return e;return 0}function Aa(t,n){for(var e=n[0],r=n[1],i=-1,o=0,a=t.length,u=a-1;o<a;u=o++){var c=t[o],f=c[0],s=c[1],l=t[u],h=l[0],d=l[1];if(Ta(c,l,n))return 0;s>r!=d>r&&e<(h-f)*(r-s)/(d-s)+f&&(i=-i)}return i}function Ta(t,n,e){var r,i,o,a;return function(t,n,e){return(n[0]-t[0])*(e[1]-t[1])==(e[0]-t[0])*(n[1]-t[1])}(t,n,e)&&(i=t[r=+(t[0]===n[0])],o=e[r],a=n[r],i<=o&&o<=a||a<=o&&o<=i)}function Sa(){}var Ea=[[],[[[1,1.5],[.5,1]]],[[[1.5,1],[1,1.5]]],[[[1.5,1],[.5,1]]],[[[1,.5],[1.5,1]]],[[[1,1.5],[.5,1]],[[1,.5],[1.5,1]]],[[[1,.5],[1,1.5]]],[[[1,.5],[.5,1]]],[[[.5,1],[1,.5]]],[[[1,1.5],[1,.5]]],[[[.5,1],[1,.5]],[[1.5,1],[1,1.5]]],[[[1.5,1],[1,.5]]],[[[.5,1],[1.5,1]]],[[[1,1.5],[1.5,1]]],[[[.5,1],[1,1.5]]],[]];function ka(){var t=1,n=1,e=I,r=u;function i(t){var n=e(t);if(Array.isArray(n))n=n.slice().sort(xa);else{var r=p(t),i=r[0],a=r[1];n=F(i,a,n),n=Z(Math.floor(i/n)*n,Math.floor(a/n)*n,n)}return n.map((function(n){return o(t,n)}))}function o(e,i){var o=[],u=[];return function(e,r,i){var o,u,c,f,s,l,h=new Array,d=new Array;o=u=-1,f=e[0]>=r,Ea[f<<1].forEach(p);for(;++o<t-1;)c=f,f=e[o+1]>=r,Ea[c|f<<1].forEach(p);Ea[f<<0].forEach(p);for(;++u<n-1;){for(o=-1,f=e[u*t+t]>=r,s=e[u*t]>=r,Ea[f<<1|s<<2].forEach(p);++o<t-1;)c=f,f=e[u*t+t+o+1]>=r,l=s,s=e[u*t+o+1]>=r,Ea[c|f<<1|s<<2|l<<3].forEach(p);Ea[f|s<<3].forEach(p)}o=-1,s=e[u*t]>=r,Ea[s<<2].forEach(p);for(;++o<t-1;)l=s,s=e[u*t+o+1]>=r,Ea[s<<2|l<<3].forEach(p);function p(t){var n,e,r=[t[0][0]+o,t[0][1]+u],c=[t[1][0]+o,t[1][1]+u],f=a(r),s=a(c);(n=d[f])?(e=h[s])?(delete d[n.end],delete h[e.start],n===e?(n.ring.push(c),i(n.ring)):h[n.start]=d[e.end]={start:n.start,end:e.end,ring:n.ring.concat(e.ring)}):(delete d[n.end],n.ring.push(c),d[n.end=s]=n):(n=h[s])?(e=d[f])?(delete h[n.start],delete d[e.end],n===e?(n.ring.push(c),i(n.ring)):h[e.start]=d[n.end]={start:e.start,end:n.end,ring:e.ring.concat(n.ring)}):(delete h[n.start],n.ring.unshift(r),h[n.start=f]=n):h[f]=d[s]={start:f,end:s,ring:[r,c]}}Ea[s<<3].forEach(p)}(e,i,(function(t){r(t,e,i),function(t){for(var n=0,e=t.length,r=t[e-1][1]*t[0][0]-t[e-1][0]*t[0][1];++n<e;)r+=t[n-1][1]*t[n][0]-t[n-1][0]*t[n][1];return r}(t)>0?o.push([t]):u.push(t)})),u.forEach((function(t){for(var n,e=0,r=o.length;e<r;++e)if(-1!==Ma((n=o[e])[0],t))return void n.push(t)})),{type:"MultiPolygon",value:i,coordinates:o}}function a(n){return 2*n[0]+n[1]*(t+1)*4}function u(e,r,i){e.forEach((function(e){var o,a=e[0],u=e[1],c=0|a,f=0|u,s=r[f*t+c];a>0&&a<t&&c===a&&(o=r[f*t+c-1],e[0]=a+(i-o)/(s-o)-.5),u>0&&u<n&&f===u&&(o=r[(f-1)*t+c],e[1]=u+(i-o)/(s-o)-.5)}))}return i.contour=o,i.size=function(e){if(!arguments.length)return[t,n];var r=Math.floor(e[0]),o=Math.floor(e[1]);if(!(r>=0&&o>=0))throw new Error("invalid size");return t=r,n=o,i},i.thresholds=function(t){return arguments.length?(e="function"==typeof t?t:Array.isArray(t)?wa(ma.call(t)):wa(t),i):e},i.smooth=function(t){return arguments.length?(r=t?u:Sa,i):r===u},i}function Na(t,n,e){for(var r=t.width,i=t.height,o=1+(e<<1),a=0;a<i;++a)for(var u=0,c=0;u<r+e;++u)u<r&&(c+=t.data[u+a*r]),u>=e&&(u>=o&&(c-=t.data[u-o+a*r]),n.data[u-e+a*r]=c/Math.min(u+1,r-1+o-u,o))}function Ca(t,n,e){for(var r=t.width,i=t.height,o=1+(e<<1),a=0;a<r;++a)for(var u=0,c=0;u<i+e;++u)u<i&&(c+=t.data[a+u*r]),u>=e&&(u>=o&&(c-=t.data[a+(u-o)*r]),n.data[a+(u-e)*r]=c/Math.min(u+1,i-1+o-u,o))}function Pa(t){return t[0]}function za(t){return t[1]}function Da(){return 1}const qa=Math.pow(2,-52),Ra=new Uint32Array(512);class Fa{static from(t,n=Ha,e=Xa){const r=t.length,i=new Float64Array(2*r);for(let o=0;o<r;o++){const r=t[o];i[2*o]=n(r),i[2*o+1]=e(r)}return new Fa(i)}constructor(t){const n=t.length>>1;if(n>0&&"number"!=typeof t[0])throw new Error("Expected coords to contain numbers.");this.coords=t;const e=Math.max(2*n-5,0);this._triangles=new Uint32Array(3*e),this._halfedges=new Int32Array(3*e),this._hashSize=Math.ceil(Math.sqrt(n)),this._hullPrev=new Uint32Array(n),this._hullNext=new Uint32Array(n),this._hullTri=new Uint32Array(n),this._hullHash=new Int32Array(this._hashSize).fill(-1),this._ids=new Uint32Array(n),this._dists=new Float64Array(n),this.update()}update(){const{coords:t,_hullPrev:n,_hullNext:e,_hullTri:r,_hullHash:i}=this,o=t.length>>1;let a=1/0,u=1/0,c=-1/0,f=-1/0;for(let n=0;n<o;n++){const e=t[2*n],r=t[2*n+1];e<a&&(a=e),r<u&&(u=r),e>c&&(c=e),r>f&&(f=r),this._ids[n]=n}const s=(a+c)/2,l=(u+f)/2;let h,d,p,g=1/0;for(let n=0;n<o;n++){const e=Oa(s,l,t[2*n],t[2*n+1]);e<g&&(h=n,g=e)}const y=t[2*h],v=t[2*h+1];g=1/0;for(let n=0;n<o;n++){if(n===h)continue;const e=Oa(y,v,t[2*n],t[2*n+1]);e<g&&e>0&&(d=n,g=e)}let _=t[2*d],b=t[2*d+1],m=1/0;for(let n=0;n<o;n++){if(n===h||n===d)continue;const e=Ya(y,v,_,b,t[2*n],t[2*n+1]);e<m&&(p=n,m=e)}let x=t[2*p],w=t[2*p+1];if(m===1/0){for(let n=0;n<o;n++)this._dists[n]=t[2*n]-t[0]||t[2*n+1]-t[1];La(this._ids,this._dists,0,o-1);const n=new Uint32Array(o);let e=0;for(let t=0,r=-1/0;t<o;t++){const i=this._ids[t];this._dists[i]>r&&(n[e++]=i,r=this._dists[i])}return this.hull=n.subarray(0,e),this.triangles=new Uint32Array(0),void(this.halfedges=new Uint32Array(0))}if(Ua(y,v,_,b,x,w)){const t=d,n=_,e=b;d=p,_=x,b=w,p=t,x=n,w=e}const M=function(t,n,e,r,i,o){const a=e-t,u=r-n,c=i-t,f=o-n,s=a*a+u*u,l=c*c+f*f,h=.5/(a*f-u*c);return{x:t+(f*s-u*l)*h,y:n+(a*l-c*s)*h}}(y,v,_,b,x,w);this._cx=M.x,this._cy=M.y;for(let n=0;n<o;n++)this._dists[n]=Oa(t[2*n],t[2*n+1],M.x,M.y);La(this._ids,this._dists,0,o-1),this._hullStart=h;let A=3;e[h]=n[p]=d,e[d]=n[h]=p,e[p]=n[d]=h,r[h]=0,r[d]=1,r[p]=2,i.fill(-1),i[this._hashKey(y,v)]=h,i[this._hashKey(_,b)]=d,i[this._hashKey(x,w)]=p,this.trianglesLen=0,this._addTriangle(h,d,p,-1,-1,-1);for(let o,a,u=0;u<this._ids.length;u++){const c=this._ids[u],f=t[2*c],s=t[2*c+1];if(u>0&&Math.abs(f-o)<=qa&&Math.abs(s-a)<=qa)continue;if(o=f,a=s,c===h||c===d||c===p)continue;let l=0;for(let t=0,n=this._hashKey(f,s);t<this._hashSize&&(l=i[(n+t)%this._hashSize],-1===l||l===e[l]);t++);l=n[l];let g,y=l;for(;g=e[y],!Ua(f,s,t[2*y],t[2*y+1],t[2*g],t[2*g+1]);)if(y=g,y===l){y=-1;break}if(-1===y)continue;let v=this._addTriangle(y,c,e[y],-1,-1,r[y]);r[c]=this._legalize(v+2),r[y]=v,A++;let _=e[y];for(;g=e[_],Ua(f,s,t[2*_],t[2*_+1],t[2*g],t[2*g+1]);)v=this._addTriangle(_,c,g,r[c],-1,r[_]),r[c]=this._legalize(v+2),e[_]=_,A--,_=g;if(y===l)for(;g=n[y],Ua(f,s,t[2*g],t[2*g+1],t[2*y],t[2*y+1]);)v=this._addTriangle(g,c,y,-1,r[y],r[g]),this._legalize(v+2),r[g]=v,e[y]=y,A--,y=g;this._hullStart=n[c]=y,e[y]=n[_]=c,e[c]=_,i[this._hashKey(f,s)]=c,i[this._hashKey(t[2*y],t[2*y+1])]=y}this.hull=new Uint32Array(A);for(let t=0,n=this._hullStart;t<A;t++)this.hull[t]=n,n=e[n];this.triangles=this._triangles.subarray(0,this.trianglesLen),this.halfedges=this._halfedges.subarray(0,this.trianglesLen)}_hashKey(t,n){return Math.floor(function(t,n){const e=t/(Math.abs(t)+Math.abs(n));return(n>0?3-e:1+e)/4}(t-this._cx,n-this._cy)*this._hashSize)%this._hashSize}_legalize(t){const{_triangles:n,_halfedges:e,coords:r}=this;let i=0,o=0;for(;;){const a=e[t],u=t-t%3;if(o=u+(t+2)%3,-1===a){if(0===i)break;t=Ra[--i];continue}const c=a-a%3,f=u+(t+1)%3,s=c+(a+2)%3,l=n[o],h=n[t],d=n[f],p=n[s];if(Ba(r[2*l],r[2*l+1],r[2*h],r[2*h+1],r[2*d],r[2*d+1],r[2*p],r[2*p+1])){n[t]=p,n[a]=l;const r=e[s];if(-1===r){let n=this._hullStart;do{if(this._hullTri[n]===s){this._hullTri[n]=t;break}n=this._hullPrev[n]}while(n!==this._hullStart)}this._link(t,r),this._link(a,e[o]),this._link(o,s);const u=c+(a+1)%3;i<Ra.length&&(Ra[i++]=u)}else{if(0===i)break;t=Ra[--i]}}return o}_link(t,n){this._halfedges[t]=n,-1!==n&&(this._halfedges[n]=t)}_addTriangle(t,n,e,r,i,o){const a=this.trianglesLen;return this._triangles[a]=t,this._triangles[a+1]=n,this._triangles[a+2]=e,this._link(a,r),this._link(a+1,i),this._link(a+2,o),this.trianglesLen+=3,a}}function Oa(t,n,e,r){const i=t-e,o=n-r;return i*i+o*o}function Ia(t,n,e,r,i,o){const a=(r-n)*(i-t),u=(e-t)*(o-n);return Math.abs(a-u)>=33306690738754716e-32*Math.abs(a+u)?a-u:0}function Ua(t,n,e,r,i,o){return(Ia(i,o,t,n,e,r)||Ia(t,n,e,r,i,o)||Ia(e,r,i,o,t,n))<0}function Ba(t,n,e,r,i,o,a,u){const c=t-a,f=n-u,s=e-a,l=r-u,h=i-a,d=o-u,p=s*s+l*l,g=h*h+d*d;return c*(l*g-p*d)-f*(s*g-p*h)+(c*c+f*f)*(s*d-l*h)<0}function Ya(t,n,e,r,i,o){const a=e-t,u=r-n,c=i-t,f=o-n,s=a*a+u*u,l=c*c+f*f,h=.5/(a*f-u*c),d=(f*s-u*l)*h,p=(a*l-c*s)*h;return d*d+p*p}function La(t,n,e,r){if(r-e<=20)for(let i=e+1;i<=r;i++){const r=t[i],o=n[r];let a=i-1;for(;a>=e&&n[t[a]]>o;)t[a+1]=t[a--];t[a+1]=r}else{let i=e+1,o=r;ja(t,e+r>>1,i),n[t[e]]>n[t[r]]&&ja(t,e,r),n[t[i]]>n[t[r]]&&ja(t,i,r),n[t[e]]>n[t[i]]&&ja(t,e,i);const a=t[i],u=n[a];for(;;){do{i++}while(n[t[i]]<u);do{o--}while(n[t[o]]>u);if(o<i)break;ja(t,i,o)}t[e+1]=t[o],t[o]=a,r-i+1>=o-e?(La(t,n,i,r),La(t,n,e,o-1)):(La(t,n,e,o-1),La(t,n,i,r))}}function ja(t,n,e){const r=t[n];t[n]=t[e],t[e]=r}function Ha(t){return t[0]}function Xa(t){return t[1]}const Ga=1e-6;class Va{constructor(){this._x0=this._y0=this._x1=this._y1=null,this._=""}moveTo(t,n){this._+=`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}`}closePath(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")}lineTo(t,n){this._+=`L${this._x1=+t},${this._y1=+n}`}arc(t,n,e){const r=(t=+t)+(e=+e),i=n=+n;if(e<0)throw new Error("negative radius");null===this._x1?this._+=`M${r},${i}`:(Math.abs(this._x1-r)>Ga||Math.abs(this._y1-i)>Ga)&&(this._+="L"+r+","+i),e&&(this._+=`A${e},${e},0,1,1,${t-e},${n}A${e},${e},0,1,1,${this._x1=r},${this._y1=i}`)}rect(t,n,e,r){this._+=`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}h${+e}v${+r}h${-e}Z`}value(){return this._||null}}class $a{constructor(){this._=[]}moveTo(t,n){this._.push([t,n])}closePath(){this._.push(this._[0].slice())}lineTo(t,n){this._.push([t,n])}value(){return this._.length?this._:null}}class Wa{constructor(t,[n,e,r,i]=[0,0,960,500]){if(!((r=+r)>=(n=+n)&&(i=+i)>=(e=+e)))throw new Error("invalid bounds");this.delaunay=t,this._circumcenters=new Float64Array(2*t.points.length),this.vectors=new Float64Array(2*t.points.length),this.xmax=r,this.xmin=n,this.ymax=i,this.ymin=e,this._init()}update(){return this.delaunay.update(),this._init(),this}_init(){const{delaunay:{points:t,hull:n,triangles:e},vectors:r}=this,i=this.circumcenters=this._circumcenters.subarray(0,e.length/3*2);for(let n,r,o=0,a=0,u=e.length;o<u;o+=3,a+=2){const u=2*e[o],c=2*e[o+1],f=2*e[o+2],s=t[u],l=t[u+1],h=t[c],d=t[c+1],p=t[f],g=t[f+1],y=h-s,v=d-l,_=p-s,b=g-l,m=y*y+v*v,x=_*_+b*b,w=2*(y*b-v*_);if(w)if(Math.abs(w)<1e-8)n=(s+p)/2,r=(l+g)/2;else{const t=1/w;n=s+(b*m-v*x)*t,r=l+(y*x-_*m)*t}else n=(s+p)/2-1e8*b,r=(l+g)/2+1e8*_;i[a]=n,i[a+1]=r}let o,a,u,c=n[n.length-1],f=4*c,s=t[2*c],l=t[2*c+1];r.fill(0);for(let e=0;e<n.length;++e)c=n[e],o=f,a=s,u=l,f=4*c,s=t[2*c],l=t[2*c+1],r[o+2]=r[f]=u-l,r[o+3]=r[f+1]=s-a}render(t){const n=null==t?t=new Va:void 0,{delaunay:{halfedges:e,inedges:r,hull:i},circumcenters:o,vectors:a}=this;if(i.length<=1)return null;for(let n=0,r=e.length;n<r;++n){const r=e[n];if(r<n)continue;const i=2*Math.floor(n/3),a=2*Math.floor(r/3),u=o[i],c=o[i+1],f=o[a],s=o[a+1];this._renderSegment(u,c,f,s,t)}let u,c=i[i.length-1];for(let n=0;n<i.length;++n){u=c,c=i[n];const e=2*Math.floor(r[c]/3),f=o[e],s=o[e+1],l=4*u,h=this._project(f,s,a[l+2],a[l+3]);h&&this._renderSegment(f,s,h[0],h[1],t)}return n&&n.value()}renderBounds(t){const n=null==t?t=new Va:void 0;return t.rect(this.xmin,this.ymin,this.xmax-this.xmin,this.ymax-this.ymin),n&&n.value()}renderCell(t,n){const e=null==n?n=new Va:void 0,r=this._clip(t);if(null===r||!r.length)return;n.moveTo(r[0],r[1]);let i=r.length;for(;r[0]===r[i-2]&&r[1]===r[i-1]&&i>1;)i-=2;for(let t=2;t<i;t+=2)r[t]===r[t-2]&&r[t+1]===r[t-1]||n.lineTo(r[t],r[t+1]);return n.closePath(),e&&e.value()}*cellPolygons(){const{delaunay:{points:t}}=this;for(let n=0,e=t.length/2;n<e;++n){const t=this.cellPolygon(n);t&&(t.index=n,yield t)}}cellPolygon(t){const n=new $a;return this.renderCell(t,n),n.value()}_renderSegment(t,n,e,r,i){let o;const a=this._regioncode(t,n),u=this._regioncode(e,r);0===a&&0===u?(i.moveTo(t,n),i.lineTo(e,r)):(o=this._clipSegment(t,n,e,r,a,u))&&(i.moveTo(o[0],o[1]),i.lineTo(o[2],o[3]))}contains(t,n,e){return(n=+n)==n&&(e=+e)==e&&this.delaunay._step(t,n,e)===t}*neighbors(t){const n=this._clip(t);if(n)for(const e of this.delaunay.neighbors(t)){const t=this._clip(e);if(t)t:for(let r=0,i=n.length;r<i;r+=2)for(let o=0,a=t.length;o<a;o+=2)if(n[r]==t[o]&&n[r+1]==t[o+1]&&n[(r+2)%i]==t[(o+a-2)%a]&&n[(r+3)%i]==t[(o+a-1)%a]){yield e;break t}}}_cell(t){const{circumcenters:n,delaunay:{inedges:e,halfedges:r,triangles:i}}=this,o=e[t];if(-1===o)return null;const a=[];let u=o;do{const e=Math.floor(u/3);if(a.push(n[2*e],n[2*e+1]),u=u%3==2?u-2:u+1,i[u]!==t)break;u=r[u]}while(u!==o&&-1!==u);return a}_clip(t){if(0===t&&1===this.delaunay.hull.length)return[this.xmax,this.ymin,this.xmax,this.ymax,this.xmin,this.ymax,this.xmin,this.ymin];const n=this._cell(t);if(null===n)return null;const{vectors:e}=this,r=4*t;return e[r]||e[r+1]?this._clipInfinite(t,n,e[r],e[r+1],e[r+2],e[r+3]):this._clipFinite(t,n)}_clipFinite(t,n){const e=n.length;let r,i,o,a,u,c=null,f=n[e-2],s=n[e-1],l=this._regioncode(f,s);for(let h=0;h<e;h+=2)if(r=f,i=s,f=n[h],s=n[h+1],o=l,l=this._regioncode(f,s),0===o&&0===l)a=u,u=0,c?c.push(f,s):c=[f,s];else{let n,e,h,d,p;if(0===o){if(null===(n=this._clipSegment(r,i,f,s,o,l)))continue;[e,h,d,p]=n}else{if(null===(n=this._clipSegment(f,s,r,i,l,o)))continue;[d,p,e,h]=n,a=u,u=this._edgecode(e,h),a&&u&&this._edge(t,a,u,c,c.length),c?c.push(e,h):c=[e,h]}a=u,u=this._edgecode(d,p),a&&u&&this._edge(t,a,u,c,c.length),c?c.push(d,p):c=[d,p]}if(c)a=u,u=this._edgecode(c[0],c[1]),a&&u&&this._edge(t,a,u,c,c.length);else if(this.contains(t,(this.xmin+this.xmax)/2,(this.ymin+this.ymax)/2))return[this.xmax,this.ymin,this.xmax,this.ymax,this.xmin,this.ymax,this.xmin,this.ymin];return c}_clipSegment(t,n,e,r,i,o){for(;;){if(0===i&&0===o)return[t,n,e,r];if(i&o)return null;let a,u,c=i||o;8&c?(a=t+(e-t)*(this.ymax-n)/(r-n),u=this.ymax):4&c?(a=t+(e-t)*(this.ymin-n)/(r-n),u=this.ymin):2&c?(u=n+(r-n)*(this.xmax-t)/(e-t),a=this.xmax):(u=n+(r-n)*(this.xmin-t)/(e-t),a=this.xmin),i?(t=a,n=u,i=this._regioncode(t,n)):(e=a,r=u,o=this._regioncode(e,r))}}_clipInfinite(t,n,e,r,i,o){let a,u=Array.from(n);if((a=this._project(u[0],u[1],e,r))&&u.unshift(a[0],a[1]),(a=this._project(u[u.length-2],u[u.length-1],i,o))&&u.push(a[0],a[1]),u=this._clipFinite(t,u))for(let n,e=0,r=u.length,i=this._edgecode(u[r-2],u[r-1]);e<r;e+=2)n=i,i=this._edgecode(u[e],u[e+1]),n&&i&&(e=this._edge(t,n,i,u,e),r=u.length);else this.contains(t,(this.xmin+this.xmax)/2,(this.ymin+this.ymax)/2)&&(u=[this.xmin,this.ymin,this.xmax,this.ymin,this.xmax,this.ymax,this.xmin,this.ymax]);return u}_edge(t,n,e,r,i){for(;n!==e;){let e,o;switch(n){case 5:n=4;continue;case 4:n=6,e=this.xmax,o=this.ymin;break;case 6:n=2;continue;case 2:n=10,e=this.xmax,o=this.ymax;break;case 10:n=8;continue;case 8:n=9,e=this.xmin,o=this.ymax;break;case 9:n=1;continue;case 1:n=5,e=this.xmin,o=this.ymin}r[i]===e&&r[i+1]===o||!this.contains(t,e,o)||(r.splice(i,0,e,o),i+=2)}if(r.length>4)for(let t=0;t<r.length;t+=2){const n=(t+2)%r.length,e=(t+4)%r.length;(r[t]===r[n]&&r[n]===r[e]||r[t+1]===r[n+1]&&r[n+1]===r[e+1])&&(r.splice(n,2),t-=2)}return i}_project(t,n,e,r){let i,o,a,u=1/0;if(r<0){if(n<=this.ymin)return null;(i=(this.ymin-n)/r)<u&&(a=this.ymin,o=t+(u=i)*e)}else if(r>0){if(n>=this.ymax)return null;(i=(this.ymax-n)/r)<u&&(a=this.ymax,o=t+(u=i)*e)}if(e>0){if(t>=this.xmax)return null;(i=(this.xmax-t)/e)<u&&(o=this.xmax,a=n+(u=i)*r)}else if(e<0){if(t<=this.xmin)return null;(i=(this.xmin-t)/e)<u&&(o=this.xmin,a=n+(u=i)*r)}return[o,a]}_edgecode(t,n){return(t===this.xmin?1:t===this.xmax?2:0)|(n===this.ymin?4:n===this.ymax?8:0)}_regioncode(t,n){return(t<this.xmin?1:t>this.xmax?2:0)|(n<this.ymin?4:n>this.ymax?8:0)}}const Za=2*Math.PI,Ka=Math.pow;function Qa(t){return t[0]}function Ja(t){return t[1]}function tu(t,n,e){return[t+Math.sin(t+n)*e,n+Math.cos(t-n)*e]}class nu{static from(t,n=Qa,e=Ja,r){return new nu("length"in t?function(t,n,e,r){const i=t.length,o=new Float64Array(2*i);for(let a=0;a<i;++a){const i=t[a];o[2*a]=n.call(r,i,a,t),o[2*a+1]=e.call(r,i,a,t)}return o}(t,n,e,r):Float64Array.from(function*(t,n,e,r){let i=0;for(const o of t)yield n.call(r,o,i,t),yield e.call(r,o,i,t),++i}(t,n,e,r)))}constructor(t){this._delaunator=new Fa(t),this.inedges=new Int32Array(t.length/2),this._hullIndex=new Int32Array(t.length/2),this.points=this._delaunator.coords,this._init()}update(){return this._delaunator.update(),this._init(),this}_init(){const t=this._delaunator,n=this.points;if(t.hull&&t.hull.length>2&&function(t){const{triangles:n,coords:e}=t;for(let t=0;t<n.length;t+=3){const r=2*n[t],i=2*n[t+1],o=2*n[t+2];if((e[o]-e[r])*(e[i+1]-e[r+1])-(e[i]-e[r])*(e[o+1]-e[r+1])>1e-10)return!1}return!0}(t)){this.collinear=Int32Array.from({length:n.length/2},((t,n)=>n)).sort(((t,e)=>n[2*t]-n[2*e]||n[2*t+1]-n[2*e+1]));const t=this.collinear[0],e=this.collinear[this.collinear.length-1],r=[n[2*t],n[2*t+1],n[2*e],n[2*e+1]],i=1e-8*Math.hypot(r[3]-r[1],r[2]-r[0]);for(let t=0,e=n.length/2;t<e;++t){const e=tu(n[2*t],n[2*t+1],i);n[2*t]=e[0],n[2*t+1]=e[1]}this._delaunator=new Fa(n)}else delete this.collinear;const e=this.halfedges=this._delaunator.halfedges,r=this.hull=this._delaunator.hull,i=this.triangles=this._delaunator.triangles,o=this.inedges.fill(-1),a=this._hullIndex.fill(-1);for(let t=0,n=e.length;t<n;++t){const n=i[t%3==2?t-2:t+1];-1!==e[t]&&-1!==o[n]||(o[n]=t)}for(let t=0,n=r.length;t<n;++t)a[r[t]]=t;r.length<=2&&r.length>0&&(this.triangles=new Int32Array(3).fill(-1),this.halfedges=new Int32Array(3).fill(-1),this.triangles[0]=r[0],this.triangles[1]=r[1],this.triangles[2]=r[1],o[r[0]]=1,2===r.length&&(o[r[1]]=0))}voronoi(t){return new Wa(this,t)}*neighbors(t){const{inedges:n,hull:e,_hullIndex:r,halfedges:i,triangles:o,collinear:a}=this;if(a){const n=a.indexOf(t);return n>0&&(yield a[n-1]),void(n<a.length-1&&(yield a[n+1]))}const u=n[t];if(-1===u)return;let c=u,f=-1;do{if(yield f=o[c],c=c%3==2?c-2:c+1,o[c]!==t)return;if(c=i[c],-1===c){const n=e[(r[t]+1)%e.length];return void(n!==f&&(yield n))}}while(c!==u)}find(t,n,e=0){if((t=+t)!=t||(n=+n)!=n)return-1;const r=e;let i;for(;(i=this._step(e,t,n))>=0&&i!==e&&i!==r;)e=i;return i}_step(t,n,e){const{inedges:r,hull:i,_hullIndex:o,halfedges:a,triangles:u,points:c}=this;if(-1===r[t]||!c.length)return(t+1)%(c.length>>1);let f=t,s=Ka(n-c[2*t],2)+Ka(e-c[2*t+1],2);const l=r[t];let h=l;do{let r=u[h];const l=Ka(n-c[2*r],2)+Ka(e-c[2*r+1],2);if(l<s&&(s=l,f=r),h=h%3==2?h-2:h+1,u[h]!==t)break;if(h=a[h],-1===h){if(h=i[(o[t]+1)%i.length],h!==r&&Ka(n-c[2*h],2)+Ka(e-c[2*h+1],2)<s)return h;break}}while(h!==l);return f}render(t){const n=null==t?t=new Va:void 0,{points:e,halfedges:r,triangles:i}=this;for(let n=0,o=r.length;n<o;++n){const o=r[n];if(o<n)continue;const a=2*i[n],u=2*i[o];t.moveTo(e[a],e[a+1]),t.lineTo(e[u],e[u+1])}return this.renderHull(t),n&&n.value()}renderPoints(t,n=2){const e=null==t?t=new Va:void 0,{points:r}=this;for(let e=0,i=r.length;e<i;e+=2){const i=r[e],o=r[e+1];t.moveTo(i+n,o),t.arc(i,o,n,0,Za)}return e&&e.value()}renderHull(t){const n=null==t?t=new Va:void 0,{hull:e,points:r}=this,i=2*e[0],o=e.length;t.moveTo(r[i],r[i+1]);for(let n=1;n<o;++n){const i=2*e[n];t.lineTo(r[i],r[i+1])}return t.closePath(),n&&n.value()}hullPolygon(){const t=new $a;return this.renderHull(t),t.value()}renderTriangle(t,n){const e=null==n?n=new Va:void 0,{points:r,triangles:i}=this,o=2*i[t*=3],a=2*i[t+1],u=2*i[t+2];return n.moveTo(r[o],r[o+1]),n.lineTo(r[a],r[a+1]),n.lineTo(r[u],r[u+1]),n.closePath(),e&&e.value()}*trianglePolygons(){const{triangles:t}=this;for(let n=0,e=t.length/3;n<e;++n)yield this.trianglePolygon(n)}trianglePolygon(t){const n=new $a;return this.renderTriangle(t,n),n.value()}}var eu={},ru={};function iu(t){return new Function("d","return {"+t.map((function(t,n){return JSON.stringify(t)+": d["+n+'] || ""'})).join(",")+"}")}function ou(t){var n=Object.create(null),e=[];return t.forEach((function(t){for(var r in t)r in n||e.push(n[r]=r)})),e}function au(t,n){var e=t+"",r=e.length;return r<n?new Array(n-r+1).join(0)+e:e}function uu(t){var n=t.getUTCHours(),e=t.getUTCMinutes(),r=t.getUTCSeconds(),i=t.getUTCMilliseconds();return isNaN(t)?"Invalid Date":function(t){return t<0?"-"+au(-t,6):t>9999?"+"+au(t,6):au(t,4)}(t.getUTCFullYear())+"-"+au(t.getUTCMonth()+1,2)+"-"+au(t.getUTCDate(),2)+(i?"T"+au(n,2)+":"+au(e,2)+":"+au(r,2)+"."+au(i,3)+"Z":r?"T"+au(n,2)+":"+au(e,2)+":"+au(r,2)+"Z":e||n?"T"+au(n,2)+":"+au(e,2)+"Z":"")}function cu(t){var n=new RegExp('["'+t+"\n\r]"),e=t.charCodeAt(0);function r(t,n){var r,i=[],o=t.length,a=0,u=0,c=o<=0,f=!1;function s(){if(c)return ru;if(f)return f=!1,eu;var n,r,i=a;if(34===t.charCodeAt(i)){for(;a++<o&&34!==t.charCodeAt(a)||34===t.charCodeAt(++a););return(n=a)>=o?c=!0:10===(r=t.charCodeAt(a++))?f=!0:13===r&&(f=!0,10===t.charCodeAt(a)&&++a),t.slice(i+1,n-1).replace(/""/g,'"')}for(;a<o;){if(10===(r=t.charCodeAt(n=a++)))f=!0;else if(13===r)f=!0,10===t.charCodeAt(a)&&++a;else if(r!==e)continue;return t.slice(i,n)}return c=!0,t.slice(i,o)}for(10===t.charCodeAt(o-1)&&--o,13===t.charCodeAt(o-1)&&--o;(r=s())!==ru;){for(var l=[];r!==eu&&r!==ru;)l.push(r),r=s();n&&null==(l=n(l,u++))||i.push(l)}return i}function i(n,e){return n.map((function(n){return e.map((function(t){return a(n[t])})).join(t)}))}function o(n){return n.map(a).join(t)}function a(t){return null==t?"":t instanceof Date?uu(t):n.test(t+="")?'"'+t.replace(/"/g,'""')+'"':t}return{parse:function(t,n){var e,i,o=r(t,(function(t,r){if(e)return e(t,r-1);i=t,e=n?function(t,n){var e=iu(t);return function(r,i){return n(e(r),i,t)}}(t,n):iu(t)}));return o.columns=i||[],o},parseRows:r,format:function(n,e){return null==e&&(e=ou(n)),[e.map(a).join(t)].concat(i(n,e)).join("\n")},formatBody:function(t,n){return null==n&&(n=ou(t)),i(t,n).join("\n")},formatRows:function(t){return t.map(o).join("\n")},formatRow:o,formatValue:a}}var fu=cu(","),su=fu.parse,lu=fu.parseRows,hu=fu.format,du=fu.formatBody,pu=fu.formatRows,gu=fu.formatRow,yu=fu.formatValue,vu=cu("\t"),_u=vu.parse,bu=vu.parseRows,mu=vu.format,xu=vu.formatBody,wu=vu.formatRows,Mu=vu.formatRow,Au=vu.formatValue;const Tu=new Date("2019-01-01T00:00").getHours()||new Date("2019-07-01T00:00").getHours();function Su(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);return t.blob()}function Eu(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);return t.arrayBuffer()}function ku(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);return t.text()}function Nu(t,n){return fetch(t,n).then(ku)}function Cu(t){return function(n,e,r){return 2===arguments.length&&"function"==typeof e&&(r=e,e=void 0),Nu(n,e).then((function(n){return t(n,r)}))}}var Pu=Cu(su),zu=Cu(_u);function Du(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);if(204!==t.status&&205!==t.status)return t.json()}function qu(t){return(n,e)=>Nu(n,e).then((n=>(new DOMParser).parseFromString(n,t)))}var Ru=qu("application/xml"),Fu=qu("text/html"),Ou=qu("image/svg+xml");function Iu(t,n,e,r){if(isNaN(n)||isNaN(e))return t;var i,o,a,u,c,f,s,l,h,d=t._root,p={data:r},g=t._x0,y=t._y0,v=t._x1,_=t._y1;if(!d)return t._root=p,t;for(;d.length;)if((f=n>=(o=(g+v)/2))?g=o:v=o,(s=e>=(a=(y+_)/2))?y=a:_=a,i=d,!(d=d[l=s<<1|f]))return i[l]=p,t;if(u=+t._x.call(null,d.data),c=+t._y.call(null,d.data),n===u&&e===c)return p.next=d,i?i[l]=p:t._root=p,t;do{i=i?i[l]=new Array(4):t._root=new Array(4),(f=n>=(o=(g+v)/2))?g=o:v=o,(s=e>=(a=(y+_)/2))?y=a:_=a}while((l=s<<1|f)==(h=(c>=a)<<1|u>=o));return i[h]=d,i[l]=p,t}function Uu(t,n,e,r,i){this.node=t,this.x0=n,this.y0=e,this.x1=r,this.y1=i}function Bu(t){return t[0]}function Yu(t){return t[1]}function Lu(t,n,e){var r=new ju(null==n?Bu:n,null==e?Yu:e,NaN,NaN,NaN,NaN);return null==t?r:r.addAll(t)}function ju(t,n,e,r,i,o){this._x=t,this._y=n,this._x0=e,this._y0=r,this._x1=i,this._y1=o,this._root=void 0}function Hu(t){for(var n={data:t.data},e=n;t=t.next;)e=e.next={data:t.data};return n}var Xu=Lu.prototype=ju.prototype;function Gu(t){return function(){return t}}function Vu(t){return 1e-6*(t()-.5)}function $u(t){return t.x+t.vx}function Wu(t){return t.y+t.vy}function Zu(t){return t.index}function Ku(t,n){var e=t.get(n);if(!e)throw new Error("node not found: "+n);return e}Xu.copy=function(){var t,n,e=new ju(this._x,this._y,this._x0,this._y0,this._x1,this._y1),r=this._root;if(!r)return e;if(!r.length)return e._root=Hu(r),e;for(t=[{source:r,target:e._root=new Array(4)}];r=t.pop();)for(var i=0;i<4;++i)(n=r.source[i])&&(n.length?t.push({source:n,target:r.target[i]=new Array(4)}):r.target[i]=Hu(n));return e},Xu.add=function(t){const n=+this._x.call(null,t),e=+this._y.call(null,t);return Iu(this.cover(n,e),n,e,t)},Xu.addAll=function(t){var n,e,r,i,o=t.length,a=new Array(o),u=new Array(o),c=1/0,f=1/0,s=-1/0,l=-1/0;for(e=0;e<o;++e)isNaN(r=+this._x.call(null,n=t[e]))||isNaN(i=+this._y.call(null,n))||(a[e]=r,u[e]=i,r<c&&(c=r),r>s&&(s=r),i<f&&(f=i),i>l&&(l=i));if(c>s||f>l)return this;for(this.cover(c,f).cover(s,l),e=0;e<o;++e)Iu(this,a[e],u[e],t[e]);return this},Xu.cover=function(t,n){if(isNaN(t=+t)||isNaN(n=+n))return this;var e=this._x0,r=this._y0,i=this._x1,o=this._y1;if(isNaN(e))i=(e=Math.floor(t))+1,o=(r=Math.floor(n))+1;else{for(var a,u,c=i-e||1,f=this._root;e>t||t>=i||r>n||n>=o;)switch(u=(n<r)<<1|t<e,(a=new Array(4))[u]=f,f=a,c*=2,u){case 0:i=e+c,o=r+c;break;case 1:e=i-c,o=r+c;break;case 2:i=e+c,r=o-c;break;case 3:e=i-c,r=o-c}this._root&&this._root.length&&(this._root=f)}return this._x0=e,this._y0=r,this._x1=i,this._y1=o,this},Xu.data=function(){var t=[];return this.visit((function(n){if(!n.length)do{t.push(n.data)}while(n=n.next)})),t},Xu.extent=function(t){return arguments.length?this.cover(+t[0][0],+t[0][1]).cover(+t[1][0],+t[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]},Xu.find=function(t,n,e){var r,i,o,a,u,c,f,s=this._x0,l=this._y0,h=this._x1,d=this._y1,p=[],g=this._root;for(g&&p.push(new Uu(g,s,l,h,d)),null==e?e=1/0:(s=t-e,l=n-e,h=t+e,d=n+e,e*=e);c=p.pop();)if(!(!(g=c.node)||(i=c.x0)>h||(o=c.y0)>d||(a=c.x1)<s||(u=c.y1)<l))if(g.length){var y=(i+a)/2,v=(o+u)/2;p.push(new Uu(g[3],y,v,a,u),new Uu(g[2],i,v,y,u),new Uu(g[1],y,o,a,v),new Uu(g[0],i,o,y,v)),(f=(n>=v)<<1|t>=y)&&(c=p[p.length-1],p[p.length-1]=p[p.length-1-f],p[p.length-1-f]=c)}else{var _=t-+this._x.call(null,g.data),b=n-+this._y.call(null,g.data),m=_*_+b*b;if(m<e){var x=Math.sqrt(e=m);s=t-x,l=n-x,h=t+x,d=n+x,r=g.data}}return r},Xu.remove=function(t){if(isNaN(o=+this._x.call(null,t))||isNaN(a=+this._y.call(null,t)))return this;var n,e,r,i,o,a,u,c,f,s,l,h,d=this._root,p=this._x0,g=this._y0,y=this._x1,v=this._y1;if(!d)return this;if(d.length)for(;;){if((f=o>=(u=(p+y)/2))?p=u:y=u,(s=a>=(c=(g+v)/2))?g=c:v=c,n=d,!(d=d[l=s<<1|f]))return this;if(!d.length)break;(n[l+1&3]||n[l+2&3]||n[l+3&3])&&(e=n,h=l)}for(;d.data!==t;)if(r=d,!(d=d.next))return this;return(i=d.next)&&delete d.next,r?(i?r.next=i:delete r.next,this):n?(i?n[l]=i:delete n[l],(d=n[0]||n[1]||n[2]||n[3])&&d===(n[3]||n[2]||n[1]||n[0])&&!d.length&&(e?e[h]=d:this._root=d),this):(this._root=i,this)},Xu.removeAll=function(t){for(var n=0,e=t.length;n<e;++n)this.remove(t[n]);return this},Xu.root=function(){return this._root},Xu.size=function(){var t=0;return this.visit((function(n){if(!n.length)do{++t}while(n=n.next)})),t},Xu.visit=function(t){var n,e,r,i,o,a,u=[],c=this._root;for(c&&u.push(new Uu(c,this._x0,this._y0,this._x1,this._y1));n=u.pop();)if(!t(c=n.node,r=n.x0,i=n.y0,o=n.x1,a=n.y1)&&c.length){var f=(r+o)/2,s=(i+a)/2;(e=c[3])&&u.push(new Uu(e,f,s,o,a)),(e=c[2])&&u.push(new Uu(e,r,s,f,a)),(e=c[1])&&u.push(new Uu(e,f,i,o,s)),(e=c[0])&&u.push(new Uu(e,r,i,f,s))}return this},Xu.visitAfter=function(t){var n,e=[],r=[];for(this._root&&e.push(new Uu(this._root,this._x0,this._y0,this._x1,this._y1));n=e.pop();){var i=n.node;if(i.length){var o,a=n.x0,u=n.y0,c=n.x1,f=n.y1,s=(a+c)/2,l=(u+f)/2;(o=i[0])&&e.push(new Uu(o,a,u,s,l)),(o=i[1])&&e.push(new Uu(o,s,u,c,l)),(o=i[2])&&e.push(new Uu(o,a,l,s,f)),(o=i[3])&&e.push(new Uu(o,s,l,c,f))}r.push(n)}for(;n=r.pop();)t(n.node,n.x0,n.y0,n.x1,n.y1);return this},Xu.x=function(t){return arguments.length?(this._x=t,this):this._x},Xu.y=function(t){return arguments.length?(this._y=t,this):this._y};const Qu=4294967296;function Ju(t){return t.x}function tc(t){return t.y}var nc=Math.PI*(3-Math.sqrt(5));function ec(t,n){if((e=(t=n?t.toExponential(n-1):t.toExponential()).indexOf("e"))<0)return null;var e,r=t.slice(0,e);return[r.length>1?r[0]+r.slice(2):r,+t.slice(e+1)]}function rc(t){return(t=ec(Math.abs(t)))?t[1]:NaN}var ic,oc=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function ac(t){if(!(n=oc.exec(t)))throw new Error("invalid format: "+t);var n;return new uc({fill:n[1],align:n[2],sign:n[3],symbol:n[4],zero:n[5],width:n[6],comma:n[7],precision:n[8]&&n[8].slice(1),trim:n[9],type:n[10]})}function uc(t){this.fill=void 0===t.fill?" ":t.fill+"",this.align=void 0===t.align?">":t.align+"",this.sign=void 0===t.sign?"-":t.sign+"",this.symbol=void 0===t.symbol?"":t.symbol+"",this.zero=!!t.zero,this.width=void 0===t.width?void 0:+t.width,this.comma=!!t.comma,this.precision=void 0===t.precision?void 0:+t.precision,this.trim=!!t.trim,this.type=void 0===t.type?"":t.type+""}function cc(t,n){var e=ec(t,n);if(!e)return t+"";var r=e[0],i=e[1];return i<0?"0."+new Array(-i).join("0")+r:r.length>i+1?r.slice(0,i+1)+"."+r.slice(i+1):r+new Array(i-r.length+2).join("0")}ac.prototype=uc.prototype,uc.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(void 0===this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(void 0===this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type};var fc={"%":(t,n)=>(100*t).toFixed(n),b:t=>Math.round(t).toString(2),c:t=>t+"",d:function(t){return Math.abs(t=Math.round(t))>=1e21?t.toLocaleString("en").replace(/,/g,""):t.toString(10)},e:(t,n)=>t.toExponential(n),f:(t,n)=>t.toFixed(n),g:(t,n)=>t.toPrecision(n),o:t=>Math.round(t).toString(8),p:(t,n)=>cc(100*t,n),r:cc,s:function(t,n){var e=ec(t,n);if(!e)return t+"";var r=e[0],i=e[1],o=i-(ic=3*Math.max(-8,Math.min(8,Math.floor(i/3))))+1,a=r.length;return o===a?r:o>a?r+new Array(o-a+1).join("0"):o>0?r.slice(0,o)+"."+r.slice(o):"0."+new Array(1-o).join("0")+ec(t,Math.max(0,n+o-1))[0]},X:t=>Math.round(t).toString(16).toUpperCase(),x:t=>Math.round(t).toString(16)};function sc(t){return t}var lc,hc=Array.prototype.map,dc=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function pc(t){var n,e,r=void 0===t.grouping||void 0===t.thousands?sc:(n=hc.call(t.grouping,Number),e=t.thousands+"",function(t,r){for(var i=t.length,o=[],a=0,u=n[0],c=0;i>0&&u>0&&(c+u+1>r&&(u=Math.max(1,r-c)),o.push(t.substring(i-=u,i+u)),!((c+=u+1)>r));)u=n[a=(a+1)%n.length];return o.reverse().join(e)}),i=void 0===t.currency?"":t.currency[0]+"",o=void 0===t.currency?"":t.currency[1]+"",a=void 0===t.decimal?".":t.decimal+"",u=void 0===t.numerals?sc:function(t){return function(n){return n.replace(/[0-9]/g,(function(n){return t[+n]}))}}(hc.call(t.numerals,String)),c=void 0===t.percent?"%":t.percent+"",f=void 0===t.minus?"−":t.minus+"",s=void 0===t.nan?"NaN":t.nan+"";function l(t){var n=(t=ac(t)).fill,e=t.align,l=t.sign,h=t.symbol,d=t.zero,p=t.width,g=t.comma,y=t.precision,v=t.trim,_=t.type;"n"===_?(g=!0,_="g"):fc[_]||(void 0===y&&(y=12),v=!0,_="g"),(d||"0"===n&&"="===e)&&(d=!0,n="0",e="=");var b="$"===h?i:"#"===h&&/[boxX]/.test(_)?"0"+_.toLowerCase():"",m="$"===h?o:/[%p]/.test(_)?c:"",x=fc[_],w=/[defgprs%]/.test(_);function M(t){var i,o,c,h=b,M=m;if("c"===_)M=x(t)+M,t="";else{var A=(t=+t)<0||1/t<0;if(t=isNaN(t)?s:x(Math.abs(t),y),v&&(t=function(t){t:for(var n,e=t.length,r=1,i=-1;r<e;++r)switch(t[r]){case".":i=n=r;break;case"0":0===i&&(i=r),n=r;break;default:if(!+t[r])break t;i>0&&(i=0)}return i>0?t.slice(0,i)+t.slice(n+1):t}(t)),A&&0==+t&&"+"!==l&&(A=!1),h=(A?"("===l?l:f:"-"===l||"("===l?"":l)+h,M=("s"===_?dc[8+ic/3]:"")+M+(A&&"("===l?")":""),w)for(i=-1,o=t.length;++i<o;)if(48>(c=t.charCodeAt(i))||c>57){M=(46===c?a+t.slice(i+1):t.slice(i))+M,t=t.slice(0,i);break}}g&&!d&&(t=r(t,1/0));var T=h.length+t.length+M.length,S=T<p?new Array(p-T+1).join(n):"";switch(g&&d&&(t=r(S+t,S.length?p-M.length:1/0),S=""),e){case"<":t=h+t+M+S;break;case"=":t=h+S+t+M;break;case"^":t=S.slice(0,T=S.length>>1)+h+t+M+S.slice(T);break;default:t=S+h+t+M}return u(t)}return y=void 0===y?6:/[gprs]/.test(_)?Math.max(1,Math.min(21,y)):Math.max(0,Math.min(20,y)),M.toString=function(){return t+""},M}return{format:l,formatPrefix:function(t,n){var e=l(((t=ac(t)).type="f",t)),r=3*Math.max(-8,Math.min(8,Math.floor(rc(n)/3))),i=Math.pow(10,-r),o=dc[8+r/3];return function(t){return e(i*t)+o}}}}function gc(n){return lc=pc(n),t.format=lc.format,t.formatPrefix=lc.formatPrefix,lc}function yc(t){return Math.max(0,-rc(Math.abs(t)))}function vc(t,n){return Math.max(0,3*Math.max(-8,Math.min(8,Math.floor(rc(n)/3)))-rc(Math.abs(t)))}function _c(t,n){return t=Math.abs(t),n=Math.abs(n)-t,Math.max(0,rc(n)-rc(t))+1}t.format=void 0,t.formatPrefix=void 0,gc({thousands:",",grouping:[3],currency:["$",""]});var bc=1e-6,mc=1e-12,xc=Math.PI,wc=xc/2,Mc=xc/4,Ac=2*xc,Tc=180/xc,Sc=xc/180,Ec=Math.abs,kc=Math.atan,Nc=Math.atan2,Cc=Math.cos,Pc=Math.ceil,zc=Math.exp,Dc=Math.hypot,qc=Math.log,Rc=Math.pow,Fc=Math.sin,Oc=Math.sign||function(t){return t>0?1:t<0?-1:0},Ic=Math.sqrt,Uc=Math.tan;function Bc(t){return t>1?0:t<-1?xc:Math.acos(t)}function Yc(t){return t>1?wc:t<-1?-wc:Math.asin(t)}function Lc(t){return(t=Fc(t/2))*t}function jc(){}function Hc(t,n){t&&Gc.hasOwnProperty(t.type)&&Gc[t.type](t,n)}var Xc={Feature:function(t,n){Hc(t.geometry,n)},FeatureCollection:function(t,n){for(var e=t.features,r=-1,i=e.length;++r<i;)Hc(e[r].geometry,n)}},Gc={Sphere:function(t,n){n.sphere()},Point:function(t,n){t=t.coordinates,n.point(t[0],t[1],t[2])},MultiPoint:function(t,n){for(var e=t.coordinates,r=-1,i=e.length;++r<i;)t=e[r],n.point(t[0],t[1],t[2])},LineString:function(t,n){Vc(t.coordinates,n,0)},MultiLineString:function(t,n){for(var e=t.coordinates,r=-1,i=e.length;++r<i;)Vc(e[r],n,0)},Polygon:function(t,n){$c(t.coordinates,n)},MultiPolygon:function(t,n){for(var e=t.coordinates,r=-1,i=e.length;++r<i;)$c(e[r],n)},GeometryCollection:function(t,n){for(var e=t.geometries,r=-1,i=e.length;++r<i;)Hc(e[r],n)}};function Vc(t,n,e){var r,i=-1,o=t.length-e;for(n.lineStart();++i<o;)r=t[i],n.point(r[0],r[1],r[2]);n.lineEnd()}function $c(t,n){var e=-1,r=t.length;for(n.polygonStart();++e<r;)Vc(t[e],n,1);n.polygonEnd()}function Wc(t,n){t&&Xc.hasOwnProperty(t.type)?Xc[t.type](t,n):Hc(t,n)}var Zc,Kc,Qc,Jc,tf,nf,ef,rf,of,af,uf,cf,ff,sf,lf,hf,df=new g,pf=new g,gf={point:jc,lineStart:jc,lineEnd:jc,polygonStart:function(){df=new g,gf.lineStart=yf,gf.lineEnd=vf},polygonEnd:function(){var t=+df;pf.add(t<0?Ac+t:t),this.lineStart=this.lineEnd=this.point=jc},sphere:function(){pf.add(Ac)}};function yf(){gf.point=_f}function vf(){bf(Zc,Kc)}function _f(t,n){gf.point=bf,Zc=t,Kc=n,Qc=t*=Sc,Jc=Cc(n=(n*=Sc)/2+Mc),tf=Fc(n)}function bf(t,n){var e=(t*=Sc)-Qc,r=e>=0?1:-1,i=r*e,o=Cc(n=(n*=Sc)/2+Mc),a=Fc(n),u=tf*a,c=Jc*o+u*Cc(i),f=u*r*Fc(i);df.add(Nc(f,c)),Qc=t,Jc=o,tf=a}function mf(t){return[Nc(t[1],t[0]),Yc(t[2])]}function xf(t){var n=t[0],e=t[1],r=Cc(e);return[r*Cc(n),r*Fc(n),Fc(e)]}function wf(t,n){return t[0]*n[0]+t[1]*n[1]+t[2]*n[2]}function Mf(t,n){return[t[1]*n[2]-t[2]*n[1],t[2]*n[0]-t[0]*n[2],t[0]*n[1]-t[1]*n[0]]}function Af(t,n){t[0]+=n[0],t[1]+=n[1],t[2]+=n[2]}function Tf(t,n){return[t[0]*n,t[1]*n,t[2]*n]}function Sf(t){var n=Ic(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);t[0]/=n,t[1]/=n,t[2]/=n}var Ef,kf,Nf,Cf,Pf,zf,Df,qf,Rf,Ff,Of,If,Uf,Bf,Yf,Lf,jf={point:Hf,lineStart:Gf,lineEnd:Vf,polygonStart:function(){jf.point=$f,jf.lineStart=Wf,jf.lineEnd=Zf,sf=new g,gf.polygonStart()},polygonEnd:function(){gf.polygonEnd(),jf.point=Hf,jf.lineStart=Gf,jf.lineEnd=Vf,df<0?(nf=-(rf=180),ef=-(of=90)):sf>bc?of=90:sf<-1e-6&&(ef=-90),hf[0]=nf,hf[1]=rf},sphere:function(){nf=-(rf=180),ef=-(of=90)}};function Hf(t,n){lf.push(hf=[nf=t,rf=t]),n<ef&&(ef=n),n>of&&(of=n)}function Xf(t,n){var e=xf([t*Sc,n*Sc]);if(ff){var r=Mf(ff,e),i=Mf([r[1],-r[0],0],r);Sf(i),i=mf(i);var o,a=t-af,u=a>0?1:-1,c=i[0]*Tc*u,f=Ec(a)>180;f^(u*af<c&&c<u*t)?(o=i[1]*Tc)>of&&(of=o):f^(u*af<(c=(c+360)%360-180)&&c<u*t)?(o=-i[1]*Tc)<ef&&(ef=o):(n<ef&&(ef=n),n>of&&(of=n)),f?t<af?Kf(nf,t)>Kf(nf,rf)&&(rf=t):Kf(t,rf)>Kf(nf,rf)&&(nf=t):rf>=nf?(t<nf&&(nf=t),t>rf&&(rf=t)):t>af?Kf(nf,t)>Kf(nf,rf)&&(rf=t):Kf(t,rf)>Kf(nf,rf)&&(nf=t)}else lf.push(hf=[nf=t,rf=t]);n<ef&&(ef=n),n>of&&(of=n),ff=e,af=t}function Gf(){jf.point=Xf}function Vf(){hf[0]=nf,hf[1]=rf,jf.point=Hf,ff=null}function $f(t,n){if(ff){var e=t-af;sf.add(Ec(e)>180?e+(e>0?360:-360):e)}else uf=t,cf=n;gf.point(t,n),Xf(t,n)}function Wf(){gf.lineStart()}function Zf(){$f(uf,cf),gf.lineEnd(),Ec(sf)>bc&&(nf=-(rf=180)),hf[0]=nf,hf[1]=rf,ff=null}function Kf(t,n){return(n-=t)<0?n+360:n}function Qf(t,n){return t[0]-n[0]}function Jf(t,n){return t[0]<=t[1]?t[0]<=n&&n<=t[1]:n<t[0]||t[1]<n}var ts={sphere:jc,point:ns,lineStart:rs,lineEnd:as,polygonStart:function(){ts.lineStart=us,ts.lineEnd=cs},polygonEnd:function(){ts.lineStart=rs,ts.lineEnd=as}};function ns(t,n){t*=Sc;var e=Cc(n*=Sc);es(e*Cc(t),e*Fc(t),Fc(n))}function es(t,n,e){++Ef,Nf+=(t-Nf)/Ef,Cf+=(n-Cf)/Ef,Pf+=(e-Pf)/Ef}function rs(){ts.point=is}function is(t,n){t*=Sc;var e=Cc(n*=Sc);Bf=e*Cc(t),Yf=e*Fc(t),Lf=Fc(n),ts.point=os,es(Bf,Yf,Lf)}function os(t,n){t*=Sc;var e=Cc(n*=Sc),r=e*Cc(t),i=e*Fc(t),o=Fc(n),a=Nc(Ic((a=Yf*o-Lf*i)*a+(a=Lf*r-Bf*o)*a+(a=Bf*i-Yf*r)*a),Bf*r+Yf*i+Lf*o);kf+=a,zf+=a*(Bf+(Bf=r)),Df+=a*(Yf+(Yf=i)),qf+=a*(Lf+(Lf=o)),es(Bf,Yf,Lf)}function as(){ts.point=ns}function us(){ts.point=fs}function cs(){ss(If,Uf),ts.point=ns}function fs(t,n){If=t,Uf=n,t*=Sc,n*=Sc,ts.point=ss;var e=Cc(n);Bf=e*Cc(t),Yf=e*Fc(t),Lf=Fc(n),es(Bf,Yf,Lf)}function ss(t,n){t*=Sc;var e=Cc(n*=Sc),r=e*Cc(t),i=e*Fc(t),o=Fc(n),a=Yf*o-Lf*i,u=Lf*r-Bf*o,c=Bf*i-Yf*r,f=Dc(a,u,c),s=Yc(f),l=f&&-s/f;Rf.add(l*a),Ff.add(l*u),Of.add(l*c),kf+=s,zf+=s*(Bf+(Bf=r)),Df+=s*(Yf+(Yf=i)),qf+=s*(Lf+(Lf=o)),es(Bf,Yf,Lf)}function ls(t){return function(){return t}}function hs(t,n){function e(e,r){return e=t(e,r),n(e[0],e[1])}return t.invert&&n.invert&&(e.invert=function(e,r){return(e=n.invert(e,r))&&t.invert(e[0],e[1])}),e}function ds(t,n){return[Ec(t)>xc?t+Math.round(-t/Ac)*Ac:t,n]}function ps(t,n,e){return(t%=Ac)?n||e?hs(ys(t),vs(n,e)):ys(t):n||e?vs(n,e):ds}function gs(t){return function(n,e){return[(n+=t)>xc?n-Ac:n<-xc?n+Ac:n,e]}}function ys(t){var n=gs(t);return n.invert=gs(-t),n}function vs(t,n){var e=Cc(t),r=Fc(t),i=Cc(n),o=Fc(n);function a(t,n){var a=Cc(n),u=Cc(t)*a,c=Fc(t)*a,f=Fc(n),s=f*e+u*r;return[Nc(c*i-s*o,u*e-f*r),Yc(s*i+c*o)]}return a.invert=function(t,n){var a=Cc(n),u=Cc(t)*a,c=Fc(t)*a,f=Fc(n),s=f*i-c*o;return[Nc(c*i+f*o,u*e+s*r),Yc(s*e-u*r)]},a}function _s(t){function n(n){return(n=t(n[0]*Sc,n[1]*Sc))[0]*=Tc,n[1]*=Tc,n}return t=ps(t[0]*Sc,t[1]*Sc,t.length>2?t[2]*Sc:0),n.invert=function(n){return(n=t.invert(n[0]*Sc,n[1]*Sc))[0]*=Tc,n[1]*=Tc,n},n}function bs(t,n,e,r,i,o){if(e){var a=Cc(n),u=Fc(n),c=r*e;null==i?(i=n+r*Ac,o=n-c/2):(i=ms(a,i),o=ms(a,o),(r>0?i<o:i>o)&&(i+=r*Ac));for(var f,s=i;r>0?s>o:s<o;s-=c)f=mf([a,-u*Cc(s),-u*Fc(s)]),t.point(f[0],f[1])}}function ms(t,n){(n=xf(n))[0]-=t,Sf(n);var e=Bc(-n[1]);return((-n[2]<0?-e:e)+Ac-bc)%Ac}function xs(){var t,n=[];return{point:function(n,e,r){t.push([n,e,r])},lineStart:function(){n.push(t=[])},lineEnd:jc,rejoin:function(){n.length>1&&n.push(n.pop().concat(n.shift()))},result:function(){var e=n;return n=[],t=null,e}}}function ws(t,n){return Ec(t[0]-n[0])<bc&&Ec(t[1]-n[1])<bc}function Ms(t,n,e,r){this.x=t,this.z=n,this.o=e,this.e=r,this.v=!1,this.n=this.p=null}function As(t,n,e,r,i){var o,a,u=[],c=[];if(t.forEach((function(t){if(!((n=t.length-1)<=0)){var n,e,r=t[0],a=t[n];if(ws(r,a)){if(!r[2]&&!a[2]){for(i.lineStart(),o=0;o<n;++o)i.point((r=t[o])[0],r[1]);return void i.lineEnd()}a[0]+=2e-6}u.push(e=new Ms(r,t,null,!0)),c.push(e.o=new Ms(r,null,e,!1)),u.push(e=new Ms(a,t,null,!1)),c.push(e.o=new Ms(a,null,e,!0))}})),u.length){for(c.sort(n),Ts(u),Ts(c),o=0,a=c.length;o<a;++o)c[o].e=e=!e;for(var f,s,l=u[0];;){for(var h=l,d=!0;h.v;)if((h=h.n)===l)return;f=h.z,i.lineStart();do{if(h.v=h.o.v=!0,h.e){if(d)for(o=0,a=f.length;o<a;++o)i.point((s=f[o])[0],s[1]);else r(h.x,h.n.x,1,i);h=h.n}else{if(d)for(f=h.p.z,o=f.length-1;o>=0;--o)i.point((s=f[o])[0],s[1]);else r(h.x,h.p.x,-1,i);h=h.p}f=(h=h.o).z,d=!d}while(!h.v);i.lineEnd()}}}function Ts(t){if(n=t.length){for(var n,e,r=0,i=t[0];++r<n;)i.n=e=t[r],e.p=i,i=e;i.n=e=t[0],e.p=i}}function Ss(t){return Ec(t[0])<=xc?t[0]:Oc(t[0])*((Ec(t[0])+xc)%Ac-xc)}function Es(t,n){var e=Ss(n),r=n[1],i=Fc(r),o=[Fc(e),-Cc(e),0],a=0,u=0,c=new g;1===i?r=wc+bc:-1===i&&(r=-wc-bc);for(var f=0,s=t.length;f<s;++f)if(h=(l=t[f]).length)for(var l,h,d=l[h-1],p=Ss(d),y=d[1]/2+Mc,v=Fc(y),_=Cc(y),b=0;b<h;++b,p=x,v=M,_=A,d=m){var m=l[b],x=Ss(m),w=m[1]/2+Mc,M=Fc(w),A=Cc(w),T=x-p,S=T>=0?1:-1,E=S*T,k=E>xc,N=v*M;if(c.add(Nc(N*S*Fc(E),_*A+N*Cc(E))),a+=k?T+S*Ac:T,k^p>=e^x>=e){var C=Mf(xf(d),xf(m));Sf(C);var P=Mf(o,C);Sf(P);var z=(k^T>=0?-1:1)*Yc(P[2]);(r>z||r===z&&(C[0]||C[1]))&&(u+=k^T>=0?1:-1)}}return(a<-1e-6||a<bc&&c<-1e-12)^1&u}function ks(t,n,e,r){return function(i){var o,a,u,c=n(i),f=xs(),s=n(f),l=!1,h={point:d,lineStart:g,lineEnd:y,polygonStart:function(){h.point=v,h.lineStart=_,h.lineEnd=b,a=[],o=[]},polygonEnd:function(){h.point=d,h.lineStart=g,h.lineEnd=y,a=V(a);var t=Es(o,r);a.length?(l||(i.polygonStart(),l=!0),As(a,Cs,t,e,i)):t&&(l||(i.polygonStart(),l=!0),i.lineStart(),e(null,null,1,i),i.lineEnd()),l&&(i.polygonEnd(),l=!1),a=o=null},sphere:function(){i.polygonStart(),i.lineStart(),e(null,null,1,i),i.lineEnd(),i.polygonEnd()}};function d(n,e){t(n,e)&&i.point(n,e)}function p(t,n){c.point(t,n)}function g(){h.point=p,c.lineStart()}function y(){h.point=d,c.lineEnd()}function v(t,n){u.push([t,n]),s.point(t,n)}function _(){s.lineStart(),u=[]}function b(){v(u[0][0],u[0][1]),s.lineEnd();var t,n,e,r,c=s.clean(),h=f.result(),d=h.length;if(u.pop(),o.push(u),u=null,d)if(1&c){if((n=(e=h[0]).length-1)>0){for(l||(i.polygonStart(),l=!0),i.lineStart(),t=0;t<n;++t)i.point((r=e[t])[0],r[1]);i.lineEnd()}}else d>1&&2&c&&h.push(h.pop().concat(h.shift())),a.push(h.filter(Ns))}return h}}function Ns(t){return t.length>1}function Cs(t,n){return((t=t.x)[0]<0?t[1]-wc-bc:wc-t[1])-((n=n.x)[0]<0?n[1]-wc-bc:wc-n[1])}ds.invert=ds;var Ps=ks((function(){return!0}),(function(t){var n,e=NaN,r=NaN,i=NaN;return{lineStart:function(){t.lineStart(),n=1},point:function(o,a){var u=o>0?xc:-xc,c=Ec(o-e);Ec(c-xc)<bc?(t.point(e,r=(r+a)/2>0?wc:-wc),t.point(i,r),t.lineEnd(),t.lineStart(),t.point(u,r),t.point(o,r),n=0):i!==u&&c>=xc&&(Ec(e-i)<bc&&(e-=i*bc),Ec(o-u)<bc&&(o-=u*bc),r=function(t,n,e,r){var i,o,a=Fc(t-e);return Ec(a)>bc?kc((Fc(n)*(o=Cc(r))*Fc(e)-Fc(r)*(i=Cc(n))*Fc(t))/(i*o*a)):(n+r)/2}(e,r,o,a),t.point(i,r),t.lineEnd(),t.lineStart(),t.point(u,r),n=0),t.point(e=o,r=a),i=u},lineEnd:function(){t.lineEnd(),e=r=NaN},clean:function(){return 2-n}}}),(function(t,n,e,r){var i;if(null==t)i=e*wc,r.point(-xc,i),r.point(0,i),r.point(xc,i),r.point(xc,0),r.point(xc,-i),r.point(0,-i),r.point(-xc,-i),r.point(-xc,0),r.point(-xc,i);else if(Ec(t[0]-n[0])>bc){var o=t[0]<n[0]?xc:-xc;i=e*o/2,r.point(-o,i),r.point(0,i),r.point(o,i)}else r.point(n[0],n[1])}),[-xc,-wc]);function zs(t){var n=Cc(t),e=6*Sc,r=n>0,i=Ec(n)>bc;function o(t,e){return Cc(t)*Cc(e)>n}function a(t,e,r){var i=[1,0,0],o=Mf(xf(t),xf(e)),a=wf(o,o),u=o[0],c=a-u*u;if(!c)return!r&&t;var f=n*a/c,s=-n*u/c,l=Mf(i,o),h=Tf(i,f);Af(h,Tf(o,s));var d=l,p=wf(h,d),g=wf(d,d),y=p*p-g*(wf(h,h)-1);if(!(y<0)){var v=Ic(y),_=Tf(d,(-p-v)/g);if(Af(_,h),_=mf(_),!r)return _;var b,m=t[0],x=e[0],w=t[1],M=e[1];x<m&&(b=m,m=x,x=b);var A=x-m,T=Ec(A-xc)<bc;if(!T&&M<w&&(b=w,w=M,M=b),T||A<bc?T?w+M>0^_[1]<(Ec(_[0]-m)<bc?w:M):w<=_[1]&&_[1]<=M:A>xc^(m<=_[0]&&_[0]<=x)){var S=Tf(d,(-p+v)/g);return Af(S,h),[_,mf(S)]}}}function u(n,e){var i=r?t:xc-t,o=0;return n<-i?o|=1:n>i&&(o|=2),e<-i?o|=4:e>i&&(o|=8),o}return ks(o,(function(t){var n,e,c,f,s;return{lineStart:function(){f=c=!1,s=1},point:function(l,h){var d,p=[l,h],g=o(l,h),y=r?g?0:u(l,h):g?u(l+(l<0?xc:-xc),h):0;if(!n&&(f=c=g)&&t.lineStart(),g!==c&&(!(d=a(n,p))||ws(n,d)||ws(p,d))&&(p[2]=1),g!==c)s=0,g?(t.lineStart(),d=a(p,n),t.point(d[0],d[1])):(d=a(n,p),t.point(d[0],d[1],2),t.lineEnd()),n=d;else if(i&&n&&r^g){var v;y&e||!(v=a(p,n,!0))||(s=0,r?(t.lineStart(),t.point(v[0][0],v[0][1]),t.point(v[1][0],v[1][1]),t.lineEnd()):(t.point(v[1][0],v[1][1]),t.lineEnd(),t.lineStart(),t.point(v[0][0],v[0][1],3)))}!g||n&&ws(n,p)||t.point(p[0],p[1]),n=p,c=g,e=y},lineEnd:function(){c&&t.lineEnd(),n=null},clean:function(){return s|(f&&c)<<1}}}),(function(n,r,i,o){bs(o,t,e,i,n,r)}),r?[0,-t]:[-xc,t-xc])}var Ds,qs,Rs,Fs,Os=1e9,Is=-Os;function Us(t,n,e,r){function i(i,o){return t<=i&&i<=e&&n<=o&&o<=r}function o(i,o,u,f){var s=0,l=0;if(null==i||(s=a(i,u))!==(l=a(o,u))||c(i,o)<0^u>0)do{f.point(0===s||3===s?t:e,s>1?r:n)}while((s=(s+u+4)%4)!==l);else f.point(o[0],o[1])}function a(r,i){return Ec(r[0]-t)<bc?i>0?0:3:Ec(r[0]-e)<bc?i>0?2:1:Ec(r[1]-n)<bc?i>0?1:0:i>0?3:2}function u(t,n){return c(t.x,n.x)}function c(t,n){var e=a(t,1),r=a(n,1);return e!==r?e-r:0===e?n[1]-t[1]:1===e?t[0]-n[0]:2===e?t[1]-n[1]:n[0]-t[0]}return function(a){var c,f,s,l,h,d,p,g,y,v,_,b=a,m=xs(),x={point:w,lineStart:function(){x.point=M,f&&f.push(s=[]);v=!0,y=!1,p=g=NaN},lineEnd:function(){c&&(M(l,h),d&&y&&m.rejoin(),c.push(m.result()));x.point=w,y&&b.lineEnd()},polygonStart:function(){b=m,c=[],f=[],_=!0},polygonEnd:function(){var n=function(){for(var n=0,e=0,i=f.length;e<i;++e)for(var o,a,u=f[e],c=1,s=u.length,l=u[0],h=l[0],d=l[1];c<s;++c)o=h,a=d,h=(l=u[c])[0],d=l[1],a<=r?d>r&&(h-o)*(r-a)>(d-a)*(t-o)&&++n:d<=r&&(h-o)*(r-a)<(d-a)*(t-o)&&--n;return n}(),e=_&&n,i=(c=V(c)).length;(e||i)&&(a.polygonStart(),e&&(a.lineStart(),o(null,null,1,a),a.lineEnd()),i&&As(c,u,n,o,a),a.polygonEnd());b=a,c=f=s=null}};function w(t,n){i(t,n)&&b.point(t,n)}function M(o,a){var u=i(o,a);if(f&&s.push([o,a]),v)l=o,h=a,d=u,v=!1,u&&(b.lineStart(),b.point(o,a));else if(u&&y)b.point(o,a);else{var c=[p=Math.max(Is,Math.min(Os,p)),g=Math.max(Is,Math.min(Os,g))],m=[o=Math.max(Is,Math.min(Os,o)),a=Math.max(Is,Math.min(Os,a))];!function(t,n,e,r,i,o){var a,u=t[0],c=t[1],f=0,s=1,l=n[0]-u,h=n[1]-c;if(a=e-u,l||!(a>0)){if(a/=l,l<0){if(a<f)return;a<s&&(s=a)}else if(l>0){if(a>s)return;a>f&&(f=a)}if(a=i-u,l||!(a<0)){if(a/=l,l<0){if(a>s)return;a>f&&(f=a)}else if(l>0){if(a<f)return;a<s&&(s=a)}if(a=r-c,h||!(a>0)){if(a/=h,h<0){if(a<f)return;a<s&&(s=a)}else if(h>0){if(a>s)return;a>f&&(f=a)}if(a=o-c,h||!(a<0)){if(a/=h,h<0){if(a>s)return;a>f&&(f=a)}else if(h>0){if(a<f)return;a<s&&(s=a)}return f>0&&(t[0]=u+f*l,t[1]=c+f*h),s<1&&(n[0]=u+s*l,n[1]=c+s*h),!0}}}}}(c,m,t,n,e,r)?u&&(b.lineStart(),b.point(o,a),_=!1):(y||(b.lineStart(),b.point(c[0],c[1])),b.point(m[0],m[1]),u||b.lineEnd(),_=!1)}p=o,g=a,y=u}return x}}var Bs={sphere:jc,point:jc,lineStart:function(){Bs.point=Ls,Bs.lineEnd=Ys},lineEnd:jc,polygonStart:jc,polygonEnd:jc};function Ys(){Bs.point=Bs.lineEnd=jc}function Ls(t,n){qs=t*=Sc,Rs=Fc(n*=Sc),Fs=Cc(n),Bs.point=js}function js(t,n){t*=Sc;var e=Fc(n*=Sc),r=Cc(n),i=Ec(t-qs),o=Cc(i),a=r*Fc(i),u=Fs*e-Rs*r*o,c=Rs*e+Fs*r*o;Ds.add(Nc(Ic(a*a+u*u),c)),qs=t,Rs=e,Fs=r}function Hs(t){return Ds=new g,Wc(t,Bs),+Ds}var Xs=[null,null],Gs={type:"LineString",coordinates:Xs};function Vs(t,n){return Xs[0]=t,Xs[1]=n,Hs(Gs)}var $s={Feature:function(t,n){return Zs(t.geometry,n)},FeatureCollection:function(t,n){for(var e=t.features,r=-1,i=e.length;++r<i;)if(Zs(e[r].geometry,n))return!0;return!1}},Ws={Sphere:function(){return!0},Point:function(t,n){return Ks(t.coordinates,n)},MultiPoint:function(t,n){for(var e=t.coordinates,r=-1,i=e.length;++r<i;)if(Ks(e[r],n))return!0;return!1},LineString:function(t,n){return Qs(t.coordinates,n)},MultiLineString:function(t,n){for(var e=t.coordinates,r=-1,i=e.length;++r<i;)if(Qs(e[r],n))return!0;return!1},Polygon:function(t,n){return Js(t.coordinates,n)},MultiPolygon:function(t,n){for(var e=t.coordinates,r=-1,i=e.length;++r<i;)if(Js(e[r],n))return!0;return!1},GeometryCollection:function(t,n){for(var e=t.geometries,r=-1,i=e.length;++r<i;)if(Zs(e[r],n))return!0;return!1}};function Zs(t,n){return!(!t||!Ws.hasOwnProperty(t.type))&&Ws[t.type](t,n)}function Ks(t,n){return 0===Vs(t,n)}function Qs(t,n){for(var e,r,i,o=0,a=t.length;o<a;o++){if(0===(r=Vs(t[o],n)))return!0;if(o>0&&(i=Vs(t[o],t[o-1]))>0&&e<=i&&r<=i&&(e+r-i)*(1-Math.pow((e-r)/i,2))<mc*i)return!0;e=r}return!1}function Js(t,n){return!!Es(t.map(tl),nl(n))}function tl(t){return(t=t.map(nl)).pop(),t}function nl(t){return[t[0]*Sc,t[1]*Sc]}function el(t,n,e){var r=Z(t,n-bc,e).concat(n);return function(t){return r.map((function(n){return[t,n]}))}}function rl(t,n,e){var r=Z(t,n-bc,e).concat(n);return function(t){return r.map((function(n){return[n,t]}))}}function il(){var t,n,e,r,i,o,a,u,c,f,s,l,h=10,d=h,p=90,g=360,y=2.5;function v(){return{type:"MultiLineString",coordinates:_()}}function _(){return Z(Pc(r/p)*p,e,p).map(s).concat(Z(Pc(u/g)*g,a,g).map(l)).concat(Z(Pc(n/h)*h,t,h).filter((function(t){return Ec(t%p)>bc})).map(c)).concat(Z(Pc(o/d)*d,i,d).filter((function(t){return Ec(t%g)>bc})).map(f))}return v.lines=function(){return _().map((function(t){return{type:"LineString",coordinates:t}}))},v.outline=function(){return{type:"Polygon",coordinates:[s(r).concat(l(a).slice(1),s(e).reverse().slice(1),l(u).reverse().slice(1))]}},v.extent=function(t){return arguments.length?v.extentMajor(t).extentMinor(t):v.extentMinor()},v.extentMajor=function(t){return arguments.length?(r=+t[0][0],e=+t[1][0],u=+t[0][1],a=+t[1][1],r>e&&(t=r,r=e,e=t),u>a&&(t=u,u=a,a=t),v.precision(y)):[[r,u],[e,a]]},v.extentMinor=function(e){return arguments.length?(n=+e[0][0],t=+e[1][0],o=+e[0][1],i=+e[1][1],n>t&&(e=n,n=t,t=e),o>i&&(e=o,o=i,i=e),v.precision(y)):[[n,o],[t,i]]},v.step=function(t){return arguments.length?v.stepMajor(t).stepMinor(t):v.stepMinor()},v.stepMajor=function(t){return arguments.length?(p=+t[0],g=+t[1],v):[p,g]},v.stepMinor=function(t){return arguments.length?(h=+t[0],d=+t[1],v):[h,d]},v.precision=function(h){return arguments.length?(y=+h,c=el(o,i,90),f=rl(n,t,y),s=el(u,a,90),l=rl(r,e,y),v):y},v.extentMajor([[-180,-89.999999],[180,89.999999]]).extentMinor([[-180,-80.000001],[180,80.000001]])}var ol,al,ul,cl,fl=t=>t,sl=new g,ll=new g,hl={point:jc,lineStart:jc,lineEnd:jc,polygonStart:function(){hl.lineStart=dl,hl.lineEnd=yl},polygonEnd:function(){hl.lineStart=hl.lineEnd=hl.point=jc,sl.add(Ec(ll)),ll=new g},result:function(){var t=sl/2;return sl=new g,t}};function dl(){hl.point=pl}function pl(t,n){hl.point=gl,ol=ul=t,al=cl=n}function gl(t,n){ll.add(cl*t-ul*n),ul=t,cl=n}function yl(){gl(ol,al)}var vl=1/0,_l=vl,bl=-vl,ml=bl,xl={point:function(t,n){t<vl&&(vl=t);t>bl&&(bl=t);n<_l&&(_l=n);n>ml&&(ml=n)},lineStart:jc,lineEnd:jc,polygonStart:jc,polygonEnd:jc,result:function(){var t=[[vl,_l],[bl,ml]];return bl=ml=-(_l=vl=1/0),t}};var wl,Ml,Al,Tl,Sl=0,El=0,kl=0,Nl=0,Cl=0,Pl=0,zl=0,Dl=0,ql=0,Rl={point:Fl,lineStart:Ol,lineEnd:Bl,polygonStart:function(){Rl.lineStart=Yl,Rl.lineEnd=Ll},polygonEnd:function(){Rl.point=Fl,Rl.lineStart=Ol,Rl.lineEnd=Bl},result:function(){var t=ql?[zl/ql,Dl/ql]:Pl?[Nl/Pl,Cl/Pl]:kl?[Sl/kl,El/kl]:[NaN,NaN];return Sl=El=kl=Nl=Cl=Pl=zl=Dl=ql=0,t}};function Fl(t,n){Sl+=t,El+=n,++kl}function Ol(){Rl.point=Il}function Il(t,n){Rl.point=Ul,Fl(Al=t,Tl=n)}function Ul(t,n){var e=t-Al,r=n-Tl,i=Ic(e*e+r*r);Nl+=i*(Al+t)/2,Cl+=i*(Tl+n)/2,Pl+=i,Fl(Al=t,Tl=n)}function Bl(){Rl.point=Fl}function Yl(){Rl.point=jl}function Ll(){Hl(wl,Ml)}function jl(t,n){Rl.point=Hl,Fl(wl=Al=t,Ml=Tl=n)}function Hl(t,n){var e=t-Al,r=n-Tl,i=Ic(e*e+r*r);Nl+=i*(Al+t)/2,Cl+=i*(Tl+n)/2,Pl+=i,zl+=(i=Tl*t-Al*n)*(Al+t),Dl+=i*(Tl+n),ql+=3*i,Fl(Al=t,Tl=n)}function Xl(t){this._context=t}Xl.prototype={_radius:4.5,pointRadius:function(t){return this._radius=t,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._context.closePath(),this._point=NaN},point:function(t,n){switch(this._point){case 0:this._context.moveTo(t,n),this._point=1;break;case 1:this._context.lineTo(t,n);break;default:this._context.moveTo(t+this._radius,n),this._context.arc(t,n,this._radius,0,Ac)}},result:jc};var Gl,Vl,$l,Wl,Zl,Kl=new g,Ql={point:jc,lineStart:function(){Ql.point=Jl},lineEnd:function(){Gl&&th(Vl,$l),Ql.point=jc},polygonStart:function(){Gl=!0},polygonEnd:function(){Gl=null},result:function(){var t=+Kl;return Kl=new g,t}};function Jl(t,n){Ql.point=th,Vl=Wl=t,$l=Zl=n}function th(t,n){Wl-=t,Zl-=n,Kl.add(Ic(Wl*Wl+Zl*Zl)),Wl=t,Zl=n}function nh(){this._string=[]}function eh(t){return"m0,"+t+"a"+t+","+t+" 0 1,1 0,"+-2*t+"a"+t+","+t+" 0 1,1 0,"+2*t+"z"}function rh(t){return function(n){var e=new ih;for(var r in t)e[r]=t[r];return e.stream=n,e}}function ih(){}function oh(t,n,e){var r=t.clipExtent&&t.clipExtent();return t.scale(150).translate([0,0]),null!=r&&t.clipExtent(null),Wc(e,t.stream(xl)),n(xl.result()),null!=r&&t.clipExtent(r),t}function ah(t,n,e){return oh(t,(function(e){var r=n[1][0]-n[0][0],i=n[1][1]-n[0][1],o=Math.min(r/(e[1][0]-e[0][0]),i/(e[1][1]-e[0][1])),a=+n[0][0]+(r-o*(e[1][0]+e[0][0]))/2,u=+n[0][1]+(i-o*(e[1][1]+e[0][1]))/2;t.scale(150*o).translate([a,u])}),e)}function uh(t,n,e){return ah(t,[[0,0],n],e)}function ch(t,n,e){return oh(t,(function(e){var r=+n,i=r/(e[1][0]-e[0][0]),o=(r-i*(e[1][0]+e[0][0]))/2,a=-i*e[0][1];t.scale(150*i).translate([o,a])}),e)}function fh(t,n,e){return oh(t,(function(e){var r=+n,i=r/(e[1][1]-e[0][1]),o=-i*e[0][0],a=(r-i*(e[1][1]+e[0][1]))/2;t.scale(150*i).translate([o,a])}),e)}nh.prototype={_radius:4.5,_circle:eh(4.5),pointRadius:function(t){return(t=+t)!==this._radius&&(this._radius=t,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._string.push("Z"),this._point=NaN},point:function(t,n){switch(this._point){case 0:this._string.push("M",t,",",n),this._point=1;break;case 1:this._string.push("L",t,",",n);break;default:null==this._circle&&(this._circle=eh(this._radius)),this._string.push("M",t,",",n,this._circle)}},result:function(){if(this._string.length){var t=this._string.join("");return this._string=[],t}return null}},ih.prototype={constructor:ih,point:function(t,n){this.stream.point(t,n)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};var sh=Cc(30*Sc);function lh(t,n){return+n?function(t,n){function e(r,i,o,a,u,c,f,s,l,h,d,p,g,y){var v=f-r,_=s-i,b=v*v+_*_;if(b>4*n&&g--){var m=a+h,x=u+d,w=c+p,M=Ic(m*m+x*x+w*w),A=Yc(w/=M),T=Ec(Ec(w)-1)<bc||Ec(o-l)<bc?(o+l)/2:Nc(x,m),S=t(T,A),E=S[0],k=S[1],N=E-r,C=k-i,P=_*N-v*C;(P*P/b>n||Ec((v*N+_*C)/b-.5)>.3||a*h+u*d+c*p<sh)&&(e(r,i,o,a,u,c,E,k,T,m/=M,x/=M,w,g,y),y.point(E,k),e(E,k,T,m,x,w,f,s,l,h,d,p,g,y))}}return function(n){var r,i,o,a,u,c,f,s,l,h,d,p,g={point:y,lineStart:v,lineEnd:b,polygonStart:function(){n.polygonStart(),g.lineStart=m},polygonEnd:function(){n.polygonEnd(),g.lineStart=v}};function y(e,r){e=t(e,r),n.point(e[0],e[1])}function v(){s=NaN,g.point=_,n.lineStart()}function _(r,i){var o=xf([r,i]),a=t(r,i);e(s,l,f,h,d,p,s=a[0],l=a[1],f=r,h=o[0],d=o[1],p=o[2],16,n),n.point(s,l)}function b(){g.point=y,n.lineEnd()}function m(){v(),g.point=x,g.lineEnd=w}function x(t,n){_(r=t,n),i=s,o=l,a=h,u=d,c=p,g.point=_}function w(){e(s,l,f,h,d,p,i,o,r,a,u,c,16,n),g.lineEnd=b,b()}return g}}(t,n):function(t){return rh({point:function(n,e){n=t(n,e),this.stream.point(n[0],n[1])}})}(t)}var hh=rh({point:function(t,n){this.stream.point(t*Sc,n*Sc)}});function dh(t,n,e,r,i,o){if(!o)return function(t,n,e,r,i){function o(o,a){return[n+t*(o*=r),e-t*(a*=i)]}return o.invert=function(o,a){return[(o-n)/t*r,(e-a)/t*i]},o}(t,n,e,r,i);var a=Cc(o),u=Fc(o),c=a*t,f=u*t,s=a/t,l=u/t,h=(u*e-a*n)/t,d=(u*n+a*e)/t;function p(t,o){return[c*(t*=r)-f*(o*=i)+n,e-f*t-c*o]}return p.invert=function(t,n){return[r*(s*t-l*n+h),i*(d-l*t-s*n)]},p}function ph(t){return gh((function(){return t}))()}function gh(t){var n,e,r,i,o,a,u,c,f,s,l=150,h=480,d=250,p=0,g=0,y=0,v=0,_=0,b=0,m=1,x=1,w=null,M=Ps,A=null,T=fl,S=.5;function E(t){return c(t[0]*Sc,t[1]*Sc)}function k(t){return(t=c.invert(t[0],t[1]))&&[t[0]*Tc,t[1]*Tc]}function N(){var t=dh(l,0,0,m,x,b).apply(null,n(p,g)),r=dh(l,h-t[0],d-t[1],m,x,b);return e=ps(y,v,_),u=hs(n,r),c=hs(e,u),a=lh(u,S),C()}function C(){return f=s=null,E}return E.stream=function(t){return f&&s===t?f:f=hh(function(t){return rh({point:function(n,e){var r=t(n,e);return this.stream.point(r[0],r[1])}})}(e)(M(a(T(s=t)))))},E.preclip=function(t){return arguments.length?(M=t,w=void 0,C()):M},E.postclip=function(t){return arguments.length?(T=t,A=r=i=o=null,C()):T},E.clipAngle=function(t){return arguments.length?(M=+t?zs(w=t*Sc):(w=null,Ps),C()):w*Tc},E.clipExtent=function(t){return arguments.length?(T=null==t?(A=r=i=o=null,fl):Us(A=+t[0][0],r=+t[0][1],i=+t[1][0],o=+t[1][1]),C()):null==A?null:[[A,r],[i,o]]},E.scale=function(t){return arguments.length?(l=+t,N()):l},E.translate=function(t){return arguments.length?(h=+t[0],d=+t[1],N()):[h,d]},E.center=function(t){return arguments.length?(p=t[0]%360*Sc,g=t[1]%360*Sc,N()):[p*Tc,g*Tc]},E.rotate=function(t){return arguments.length?(y=t[0]%360*Sc,v=t[1]%360*Sc,_=t.length>2?t[2]%360*Sc:0,N()):[y*Tc,v*Tc,_*Tc]},E.angle=function(t){return arguments.length?(b=t%360*Sc,N()):b*Tc},E.reflectX=function(t){return arguments.length?(m=t?-1:1,N()):m<0},E.reflectY=function(t){return arguments.length?(x=t?-1:1,N()):x<0},E.precision=function(t){return arguments.length?(a=lh(u,S=t*t),C()):Ic(S)},E.fitExtent=function(t,n){return ah(E,t,n)},E.fitSize=function(t,n){return uh(E,t,n)},E.fitWidth=function(t,n){return ch(E,t,n)},E.fitHeight=function(t,n){return fh(E,t,n)},function(){return n=t.apply(this,arguments),E.invert=n.invert&&k,N()}}function yh(t){var n=0,e=xc/3,r=gh(t),i=r(n,e);return i.parallels=function(t){return arguments.length?r(n=t[0]*Sc,e=t[1]*Sc):[n*Tc,e*Tc]},i}function vh(t,n){var e=Fc(t),r=(e+Fc(n))/2;if(Ec(r)<bc)return function(t){var n=Cc(t);function e(t,e){return[t*n,Fc(e)/n]}return e.invert=function(t,e){return[t/n,Yc(e*n)]},e}(t);var i=1+e*(2*r-e),o=Ic(i)/r;function a(t,n){var e=Ic(i-2*r*Fc(n))/r;return[e*Fc(t*=r),o-e*Cc(t)]}return a.invert=function(t,n){var e=o-n,a=Nc(t,Ec(e))*Oc(e);return e*r<0&&(a-=xc*Oc(t)*Oc(e)),[a/r,Yc((i-(t*t+e*e)*r*r)/(2*r))]},a}function _h(){return yh(vh).scale(155.424).center([0,33.6442])}function bh(){return _h().parallels([29.5,45.5]).scale(1070).translate([480,250]).rotate([96,0]).center([-.6,38.7])}function mh(t){return function(n,e){var r=Cc(n),i=Cc(e),o=t(r*i);return o===1/0?[2,0]:[o*i*Fc(n),o*Fc(e)]}}function xh(t){return function(n,e){var r=Ic(n*n+e*e),i=t(r),o=Fc(i),a=Cc(i);return[Nc(n*o,r*a),Yc(r&&e*o/r)]}}var wh=mh((function(t){return Ic(2/(1+t))}));wh.invert=xh((function(t){return 2*Yc(t/2)}));var Mh=mh((function(t){return(t=Bc(t))&&t/Fc(t)}));function Ah(t,n){return[t,qc(Uc((wc+n)/2))]}function Th(t){var n,e,r,i=ph(t),o=i.center,a=i.scale,u=i.translate,c=i.clipExtent,f=null;function s(){var o=xc*a(),u=i(_s(i.rotate()).invert([0,0]));return c(null==f?[[u[0]-o,u[1]-o],[u[0]+o,u[1]+o]]:t===Ah?[[Math.max(u[0]-o,f),n],[Math.min(u[0]+o,e),r]]:[[f,Math.max(u[1]-o,n)],[e,Math.min(u[1]+o,r)]])}return i.scale=function(t){return arguments.length?(a(t),s()):a()},i.translate=function(t){return arguments.length?(u(t),s()):u()},i.center=function(t){return arguments.length?(o(t),s()):o()},i.clipExtent=function(t){return arguments.length?(null==t?f=n=e=r=null:(f=+t[0][0],n=+t[0][1],e=+t[1][0],r=+t[1][1]),s()):null==f?null:[[f,n],[e,r]]},s()}function Sh(t){return Uc((wc+t)/2)}function Eh(t,n){var e=Cc(t),r=t===n?Fc(t):qc(e/Cc(n))/qc(Sh(n)/Sh(t)),i=e*Rc(Sh(t),r)/r;if(!r)return Ah;function o(t,n){i>0?n<-wc+bc&&(n=-wc+bc):n>wc-bc&&(n=wc-bc);var e=i/Rc(Sh(n),r);return[e*Fc(r*t),i-e*Cc(r*t)]}return o.invert=function(t,n){var e=i-n,o=Oc(r)*Ic(t*t+e*e),a=Nc(t,Ec(e))*Oc(e);return e*r<0&&(a-=xc*Oc(t)*Oc(e)),[a/r,2*kc(Rc(i/o,1/r))-wc]},o}function kh(t,n){return[t,n]}function Nh(t,n){var e=Cc(t),r=t===n?Fc(t):(e-Cc(n))/(n-t),i=e/r+t;if(Ec(r)<bc)return kh;function o(t,n){var e=i-n,o=r*t;return[e*Fc(o),i-e*Cc(o)]}return o.invert=function(t,n){var e=i-n,o=Nc(t,Ec(e))*Oc(e);return e*r<0&&(o-=xc*Oc(t)*Oc(e)),[o/r,i-Oc(r)*Ic(t*t+e*e)]},o}Mh.invert=xh((function(t){return t})),Ah.invert=function(t,n){return[t,2*kc(zc(n))-wc]},kh.invert=kh;var Ch=1.340264,Ph=-.081106,zh=893e-6,Dh=.003796,qh=Ic(3)/2;function Rh(t,n){var e=Yc(qh*Fc(n)),r=e*e,i=r*r*r;return[t*Cc(e)/(qh*(Ch+3*Ph*r+i*(7*zh+9*Dh*r))),e*(Ch+Ph*r+i*(zh+Dh*r))]}function Fh(t,n){var e=Cc(n),r=Cc(t)*e;return[e*Fc(t)/r,Fc(n)/r]}function Oh(t,n){var e=n*n,r=e*e;return[t*(.8707-.131979*e+r*(r*(.003971*e-.001529*r)-.013791)),n*(1.007226+e*(.015085+r*(.028874*e-.044475-.005916*r)))]}function Ih(t,n){return[Cc(n)*Fc(t),Fc(n)]}function Uh(t,n){var e=Cc(n),r=1+Cc(t)*e;return[e*Fc(t)/r,Fc(n)/r]}function Bh(t,n){return[qc(Uc((wc+n)/2)),-t]}function Yh(t,n){return t.parent===n.parent?1:2}function Lh(t,n){return t+n.x}function jh(t,n){return Math.max(t,n.y)}function Hh(t){var n=0,e=t.children,r=e&&e.length;if(r)for(;--r>=0;)n+=e[r].value;else n=1;t.value=n}function Xh(t,n){t instanceof Map?(t=[void 0,t],void 0===n&&(n=Vh)):void 0===n&&(n=Gh);for(var e,r,i,o,a,u=new Zh(t),c=[u];e=c.pop();)if((i=n(e.data))&&(a=(i=Array.from(i)).length))for(e.children=i,o=a-1;o>=0;--o)c.push(r=i[o]=new Zh(i[o])),r.parent=e,r.depth=e.depth+1;return u.eachBefore(Wh)}function Gh(t){return t.children}function Vh(t){return Array.isArray(t)?t[1]:null}function $h(t){void 0!==t.data.value&&(t.value=t.data.value),t.data=t.data.data}function Wh(t){var n=0;do{t.height=n}while((t=t.parent)&&t.height<++n)}function Zh(t){this.data=t,this.depth=this.height=0,this.parent=null}function Kh(t){for(var n,e,r=0,i=(t=function(t){for(var n,e,r=t.length;r;)e=Math.random()*r--|0,n=t[r],t[r]=t[e],t[e]=n;return t}(Array.from(t))).length,o=[];r<i;)n=t[r],e&&td(e,n)?++r:(e=ed(o=Qh(o,n)),r=0);return e}function Qh(t,n){var e,r;if(nd(n,t))return[n];for(e=0;e<t.length;++e)if(Jh(n,t[e])&&nd(rd(t[e],n),t))return[t[e],n];for(e=0;e<t.length-1;++e)for(r=e+1;r<t.length;++r)if(Jh(rd(t[e],t[r]),n)&&Jh(rd(t[e],n),t[r])&&Jh(rd(t[r],n),t[e])&&nd(id(t[e],t[r],n),t))return[t[e],t[r],n];throw new Error}function Jh(t,n){var e=t.r-n.r,r=n.x-t.x,i=n.y-t.y;return e<0||e*e<r*r+i*i}function td(t,n){var e=t.r-n.r+1e-9*Math.max(t.r,n.r,1),r=n.x-t.x,i=n.y-t.y;return e>0&&e*e>r*r+i*i}function nd(t,n){for(var e=0;e<n.length;++e)if(!td(t,n[e]))return!1;return!0}function ed(t){switch(t.length){case 1:return function(t){return{x:t.x,y:t.y,r:t.r}}(t[0]);case 2:return rd(t[0],t[1]);case 3:return id(t[0],t[1],t[2])}}function rd(t,n){var e=t.x,r=t.y,i=t.r,o=n.x,a=n.y,u=n.r,c=o-e,f=a-r,s=u-i,l=Math.sqrt(c*c+f*f);return{x:(e+o+c/l*s)/2,y:(r+a+f/l*s)/2,r:(l+i+u)/2}}function id(t,n,e){var r=t.x,i=t.y,o=t.r,a=n.x,u=n.y,c=n.r,f=e.x,s=e.y,l=e.r,h=r-a,d=r-f,p=i-u,g=i-s,y=c-o,v=l-o,_=r*r+i*i-o*o,b=_-a*a-u*u+c*c,m=_-f*f-s*s+l*l,x=d*p-h*g,w=(p*m-g*b)/(2*x)-r,M=(g*y-p*v)/x,A=(d*b-h*m)/(2*x)-i,T=(h*v-d*y)/x,S=M*M+T*T-1,E=2*(o+w*M+A*T),k=w*w+A*A-o*o,N=-(S?(E+Math.sqrt(E*E-4*S*k))/(2*S):k/E);return{x:r+w+M*N,y:i+A+T*N,r:N}}function od(t,n,e){var r,i,o,a,u=t.x-n.x,c=t.y-n.y,f=u*u+c*c;f?(i=n.r+e.r,i*=i,a=t.r+e.r,i>(a*=a)?(r=(f+a-i)/(2*f),o=Math.sqrt(Math.max(0,a/f-r*r)),e.x=t.x-r*u-o*c,e.y=t.y-r*c+o*u):(r=(f+i-a)/(2*f),o=Math.sqrt(Math.max(0,i/f-r*r)),e.x=n.x+r*u-o*c,e.y=n.y+r*c+o*u)):(e.x=n.x+e.r,e.y=n.y)}function ad(t,n){var e=t.r+n.r-1e-6,r=n.x-t.x,i=n.y-t.y;return e>0&&e*e>r*r+i*i}function ud(t){var n=t._,e=t.next._,r=n.r+e.r,i=(n.x*e.r+e.x*n.r)/r,o=(n.y*e.r+e.y*n.r)/r;return i*i+o*o}function cd(t){this._=t,this.next=null,this.previous=null}function fd(t){if(!(i=(t=function(t){return"object"==typeof t&&"length"in t?t:Array.from(t)}(t)).length))return 0;var n,e,r,i,o,a,u,c,f,s,l;if((n=t[0]).x=0,n.y=0,!(i>1))return n.r;if(e=t[1],n.x=-e.r,e.x=n.r,e.y=0,!(i>2))return n.r+e.r;od(e,n,r=t[2]),n=new cd(n),e=new cd(e),r=new cd(r),n.next=r.previous=e,e.next=n.previous=r,r.next=e.previous=n;t:for(u=3;u<i;++u){od(n._,e._,r=t[u]),r=new cd(r),c=e.next,f=n.previous,s=e._.r,l=n._.r;do{if(s<=l){if(ad(c._,r._)){e=c,n.next=e,e.previous=n,--u;continue t}s+=c._.r,c=c.next}else{if(ad(f._,r._)){(n=f).next=e,e.previous=n,--u;continue t}l+=f._.r,f=f.previous}}while(c!==f.next);for(r.previous=n,r.next=e,n.next=e.previous=e=r,o=ud(n);(r=r.next)!==e;)(a=ud(r))<o&&(n=r,o=a);e=n.next}for(n=[e._],r=e;(r=r.next)!==e;)n.push(r._);for(r=Kh(n),u=0;u<i;++u)(n=t[u]).x-=r.x,n.y-=r.y;return r.r}function sd(t){return null==t?null:ld(t)}function ld(t){if("function"!=typeof t)throw new Error;return t}function hd(){return 0}function dd(t){return function(){return t}}function pd(t){return Math.sqrt(t.value)}function gd(t){return function(n){n.children||(n.r=Math.max(0,+t(n)||0))}}function yd(t,n){return function(e){if(r=e.children){var r,i,o,a=r.length,u=t(e)*n||0;if(u)for(i=0;i<a;++i)r[i].r+=u;if(o=fd(r),u)for(i=0;i<a;++i)r[i].r-=u;e.r=o+u}}}function vd(t){return function(n){var e=n.parent;n.r*=t,e&&(n.x=e.x+t*n.x,n.y=e.y+t*n.y)}}function _d(t){t.x0=Math.round(t.x0),t.y0=Math.round(t.y0),t.x1=Math.round(t.x1),t.y1=Math.round(t.y1)}function bd(t,n,e,r,i){for(var o,a=t.children,u=-1,c=a.length,f=t.value&&(r-n)/t.value;++u<c;)(o=a[u]).y0=e,o.y1=i,o.x0=n,o.x1=n+=o.value*f}Rh.invert=function(t,n){for(var e,r=n,i=r*r,o=i*i*i,a=0;a<12&&(o=(i=(r-=e=(r*(Ch+Ph*i+o*(zh+Dh*i))-n)/(Ch+3*Ph*i+o*(7*zh+9*Dh*i)))*r)*i*i,!(Ec(e)<mc));++a);return[qh*t*(Ch+3*Ph*i+o*(7*zh+9*Dh*i))/Cc(r),Yc(Fc(r)/qh)]},Fh.invert=xh(kc),Oh.invert=function(t,n){var e,r=n,i=25;do{var o=r*r,a=o*o;r-=e=(r*(1.007226+o*(.015085+a*(.028874*o-.044475-.005916*a)))-n)/(1.007226+o*(.045255+a*(.259866*o-.311325-.005916*11*a)))}while(Ec(e)>bc&&--i>0);return[t/(.8707+(o=r*r)*(o*(o*o*o*(.003971-.001529*o)-.013791)-.131979)),r]},Ih.invert=xh(Yc),Uh.invert=xh((function(t){return 2*kc(t)})),Bh.invert=function(t,n){return[-n,2*kc(zc(t))-wc]},Zh.prototype=Xh.prototype={constructor:Zh,count:function(){return this.eachAfter(Hh)},each:function(t,n){let e=-1;for(const r of this)t.call(n,r,++e,this);return this},eachAfter:function(t,n){for(var e,r,i,o=this,a=[o],u=[],c=-1;o=a.pop();)if(u.push(o),e=o.children)for(r=0,i=e.length;r<i;++r)a.push(e[r]);for(;o=u.pop();)t.call(n,o,++c,this);return this},eachBefore:function(t,n){for(var e,r,i=this,o=[i],a=-1;i=o.pop();)if(t.call(n,i,++a,this),e=i.children)for(r=e.length-1;r>=0;--r)o.push(e[r]);return this},find:function(t,n){let e=-1;for(const r of this)if(t.call(n,r,++e,this))return r},sum:function(t){return this.eachAfter((function(n){for(var e=+t(n.data)||0,r=n.children,i=r&&r.length;--i>=0;)e+=r[i].value;n.value=e}))},sort:function(t){return this.eachBefore((function(n){n.children&&n.children.sort(t)}))},path:function(t){for(var n=this,e=function(t,n){if(t===n)return t;var e=t.ancestors(),r=n.ancestors(),i=null;t=e.pop(),n=r.pop();for(;t===n;)i=t,t=e.pop(),n=r.pop();return i}(n,t),r=[n];n!==e;)n=n.parent,r.push(n);for(var i=r.length;t!==e;)r.splice(i,0,t),t=t.parent;return r},ancestors:function(){for(var t=this,n=[t];t=t.parent;)n.push(t);return n},descendants:function(){return Array.from(this)},leaves:function(){var t=[];return this.eachBefore((function(n){n.children||t.push(n)})),t},links:function(){var t=this,n=[];return t.each((function(e){e!==t&&n.push({source:e.parent,target:e})})),n},copy:function(){return Xh(this).eachBefore($h)},[Symbol.iterator]:function*(){var t,n,e,r,i=this,o=[i];do{for(t=o.reverse(),o=[];i=t.pop();)if(yield i,n=i.children)for(e=0,r=n.length;e<r;++e)o.push(n[e])}while(o.length)}};var md={depth:-1},xd={};function wd(t){return t.id}function Md(t){return t.parentId}function Ad(t,n){return t.parent===n.parent?1:2}function Td(t){var n=t.children;return n?n[0]:t.t}function Sd(t){var n=t.children;return n?n[n.length-1]:t.t}function Ed(t,n,e){var r=e/(n.i-t.i);n.c-=r,n.s+=e,t.c+=r,n.z+=e,n.m+=e}function kd(t,n,e){return t.a.parent===n.parent?t.a:e}function Nd(t,n){this._=t,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=n}function Cd(t,n,e,r,i){for(var o,a=t.children,u=-1,c=a.length,f=t.value&&(i-e)/t.value;++u<c;)(o=a[u]).x0=n,o.x1=r,o.y0=e,o.y1=e+=o.value*f}Nd.prototype=Object.create(Zh.prototype);var Pd=(1+Math.sqrt(5))/2;function zd(t,n,e,r,i,o){for(var a,u,c,f,s,l,h,d,p,g,y,v=[],_=n.children,b=0,m=0,x=_.length,w=n.value;b<x;){c=i-e,f=o-r;do{s=_[m++].value}while(!s&&m<x);for(l=h=s,y=s*s*(g=Math.max(f/c,c/f)/(w*t)),p=Math.max(h/y,y/l);m<x;++m){if(s+=u=_[m].value,u<l&&(l=u),u>h&&(h=u),y=s*s*g,(d=Math.max(h/y,y/l))>p){s-=u;break}p=d}v.push(a={value:s,dice:c<f,children:_.slice(b,m)}),a.dice?bd(a,e,r,i,w?r+=f*s/w:o):Cd(a,e,r,w?e+=c*s/w:i,o),w-=s,b=m}return v}var Dd=function t(n){function e(t,e,r,i,o){zd(n,t,e,r,i,o)}return e.ratio=function(n){return t((n=+n)>1?n:1)},e}(Pd);var qd=function t(n){function e(t,e,r,i,o){if((a=t._squarify)&&a.ratio===n)for(var a,u,c,f,s,l=-1,h=a.length,d=t.value;++l<h;){for(c=(u=a[l]).children,f=u.value=0,s=c.length;f<s;++f)u.value+=c[f].value;u.dice?bd(u,e,r,i,d?r+=(o-r)*u.value/d:o):Cd(u,e,r,d?e+=(i-e)*u.value/d:i,o),d-=u.value}else t._squarify=a=zd(n,t,e,r,i,o),a.ratio=n}return e.ratio=function(n){return t((n=+n)>1?n:1)},e}(Pd);function Rd(t,n,e){return(n[0]-t[0])*(e[1]-t[1])-(n[1]-t[1])*(e[0]-t[0])}function Fd(t,n){return t[0]-n[0]||t[1]-n[1]}function Od(t){const n=t.length,e=[0,1];let r,i=2;for(r=2;r<n;++r){for(;i>1&&Rd(t[e[i-2]],t[e[i-1]],t[r])<=0;)--i;e[i++]=r}return e.slice(0,i)}var Id=Math.random,Ud=function t(n){function e(t,e){return t=null==t?0:+t,e=null==e?1:+e,1===arguments.length?(e=t,t=0):e-=t,function(){return n()*e+t}}return e.source=t,e}(Id),Bd=function t(n){function e(t,e){return arguments.length<2&&(e=t,t=0),t=Math.floor(t),e=Math.floor(e)-t,function(){return Math.floor(n()*e+t)}}return e.source=t,e}(Id),Yd=function t(n){function e(t,e){var r,i;return t=null==t?0:+t,e=null==e?1:+e,function(){var o;if(null!=r)o=r,r=null;else do{r=2*n()-1,o=2*n()-1,i=r*r+o*o}while(!i||i>1);return t+e*o*Math.sqrt(-2*Math.log(i)/i)}}return e.source=t,e}(Id),Ld=function t(n){var e=Yd.source(n);function r(){var t=e.apply(this,arguments);return function(){return Math.exp(t())}}return r.source=t,r}(Id),jd=function t(n){function e(t){return(t=+t)<=0?()=>0:function(){for(var e=0,r=t;r>1;--r)e+=n();return e+r*n()}}return e.source=t,e}(Id),Hd=function t(n){var e=jd.source(n);function r(t){if(0==(t=+t))return n;var r=e(t);return function(){return r()/t}}return r.source=t,r}(Id),Xd=function t(n){function e(t){return function(){return-Math.log1p(-n())/t}}return e.source=t,e}(Id),Gd=function t(n){function e(t){if((t=+t)<0)throw new RangeError("invalid alpha");return t=1/-t,function(){return Math.pow(1-n(),t)}}return e.source=t,e}(Id),Vd=function t(n){function e(t){if((t=+t)<0||t>1)throw new RangeError("invalid p");return function(){return Math.floor(n()+t)}}return e.source=t,e}(Id),$d=function t(n){function e(t){if((t=+t)<0||t>1)throw new RangeError("invalid p");return 0===t?()=>1/0:1===t?()=>1:(t=Math.log1p(-t),function(){return 1+Math.floor(Math.log1p(-n())/t)})}return e.source=t,e}(Id),Wd=function t(n){var e=Yd.source(n)();function r(t,r){if((t=+t)<0)throw new RangeError("invalid k");if(0===t)return()=>0;if(r=null==r?1:+r,1===t)return()=>-Math.log1p(-n())*r;var i=(t<1?t+1:t)-1/3,o=1/(3*Math.sqrt(i)),a=t<1?()=>Math.pow(n(),1/t):()=>1;return function(){do{do{var t=e(),u=1+o*t}while(u<=0);u*=u*u;var c=1-n()}while(c>=1-.0331*t*t*t*t&&Math.log(c)>=.5*t*t+i*(1-u+Math.log(u)));return i*u*a()*r}}return r.source=t,r}(Id),Zd=function t(n){var e=Wd.source(n);function r(t,n){var r=e(t),i=e(n);return function(){var t=r();return 0===t?0:t/(t+i())}}return r.source=t,r}(Id),Kd=function t(n){var e=$d.source(n),r=Zd.source(n);function i(t,n){return t=+t,(n=+n)>=1?()=>t:n<=0?()=>0:function(){for(var i=0,o=t,a=n;o*a>16&&o*(1-a)>16;){var u=Math.floor((o+1)*a),c=r(u,o-u+1)();c<=a?(i+=u,o-=u,a=(a-c)/(1-c)):(o=u-1,a/=c)}for(var f=a<.5,s=e(f?a:1-a),l=s(),h=0;l<=o;++h)l+=s();return i+(f?h:o-h)}}return i.source=t,i}(Id),Qd=function t(n){function e(t,e,r){var i;return 0==(t=+t)?i=t=>-Math.log(t):(t=1/t,i=n=>Math.pow(n,t)),e=null==e?0:+e,r=null==r?1:+r,function(){return e+r*i(-Math.log1p(-n()))}}return e.source=t,e}(Id),Jd=function t(n){function e(t,e){return t=null==t?0:+t,e=null==e?1:+e,function(){return t+e*Math.tan(Math.PI*n())}}return e.source=t,e}(Id),tp=function t(n){function e(t,e){return t=null==t?0:+t,e=null==e?1:+e,function(){var r=n();return t+e*Math.log(r/(1-r))}}return e.source=t,e}(Id),np=function t(n){var e=Wd.source(n),r=Kd.source(n);function i(t){return function(){for(var i=0,o=t;o>16;){var a=Math.floor(.875*o),u=e(a)();if(u>o)return i+r(a-1,o/u)();i+=a,o-=u}for(var c=-Math.log1p(-n()),f=0;c<=o;++f)c-=Math.log1p(-n());return i+f}}return i.source=t,i}(Id);const ep=1/4294967296;function rp(t,n){switch(arguments.length){case 0:break;case 1:this.range(t);break;default:this.range(n).domain(t)}return this}function ip(t,n){switch(arguments.length){case 0:break;case 1:"function"==typeof t?this.interpolator(t):this.range(t);break;default:this.domain(t),"function"==typeof n?this.interpolator(n):this.range(n)}return this}const op=Symbol("implicit");function ap(){var t=new Map,n=[],e=[],r=op;function i(i){var o=i+"",a=t.get(o);if(!a){if(r!==op)return r;t.set(o,a=n.push(i))}return e[(a-1)%e.length]}return i.domain=function(e){if(!arguments.length)return n.slice();n=[],t=new Map;for(const r of e){const e=r+"";t.has(e)||t.set(e,n.push(r))}return i},i.range=function(t){return arguments.length?(e=Array.from(t),i):e.slice()},i.unknown=function(t){return arguments.length?(r=t,i):r},i.copy=function(){return ap(n,e).unknown(r)},rp.apply(i,arguments),i}function up(){var t,n,e=ap().unknown(void 0),r=e.domain,i=e.range,o=0,a=1,u=!1,c=0,f=0,s=.5;function l(){var e=r().length,l=a<o,h=l?a:o,d=l?o:a;t=(d-h)/Math.max(1,e-c+2*f),u&&(t=Math.floor(t)),h+=(d-h-t*(e-c))*s,n=t*(1-c),u&&(h=Math.round(h),n=Math.round(n));var p=Z(e).map((function(n){return h+t*n}));return i(l?p.reverse():p)}return delete e.unknown,e.domain=function(t){return arguments.length?(r(t),l()):r()},e.range=function(t){return arguments.length?([o,a]=t,o=+o,a=+a,l()):[o,a]},e.rangeRound=function(t){return[o,a]=t,o=+o,a=+a,u=!0,l()},e.bandwidth=function(){return n},e.step=function(){return t},e.round=function(t){return arguments.length?(u=!!t,l()):u},e.padding=function(t){return arguments.length?(c=Math.min(1,f=+t),l()):c},e.paddingInner=function(t){return arguments.length?(c=Math.min(1,t),l()):c},e.paddingOuter=function(t){return arguments.length?(f=+t,l()):f},e.align=function(t){return arguments.length?(s=Math.max(0,Math.min(1,t)),l()):s},e.copy=function(){return up(r(),[o,a]).round(u).paddingInner(c).paddingOuter(f).align(s)},rp.apply(l(),arguments)}function cp(t){var n=t.copy;return t.padding=t.paddingOuter,delete t.paddingInner,delete t.paddingOuter,t.copy=function(){return cp(n())},t}function fp(t){return+t}var sp=[0,1];function lp(t){return t}function hp(t,n){return(n-=t=+t)?function(e){return(e-t)/n}:function(t){return function(){return t}}(isNaN(n)?NaN:.5)}function dp(t,n,e){var r=t[0],i=t[1],o=n[0],a=n[1];return i<r?(r=hp(i,r),o=e(a,o)):(r=hp(r,i),o=e(o,a)),function(t){return o(r(t))}}function pp(t,n,e){var r=Math.min(t.length,n.length)-1,i=new Array(r),a=new Array(r),u=-1;for(t[r]<t[0]&&(t=t.slice().reverse(),n=n.slice().reverse());++u<r;)i[u]=hp(t[u],t[u+1]),a[u]=e(n[u],n[u+1]);return function(n){var e=o(t,n,1,r)-1;return a[e](i[e](n))}}function gp(t,n){return n.domain(t.domain()).range(t.range()).interpolate(t.interpolate()).clamp(t.clamp()).unknown(t.unknown())}function yp(){var t,n,e,r,i,o,a=sp,u=sp,c=Mr,f=lp;function s(){var t=Math.min(a.length,u.length);return f!==lp&&(f=function(t,n){var e;return t>n&&(e=t,t=n,n=e),function(e){return Math.max(t,Math.min(n,e))}}(a[0],a[t-1])),r=t>2?pp:dp,i=o=null,l}function l(n){return null==n||isNaN(n=+n)?e:(i||(i=r(a.map(t),u,c)))(t(f(n)))}return l.invert=function(e){return f(n((o||(o=r(u,a.map(t),_r)))(e)))},l.domain=function(t){return arguments.length?(a=Array.from(t,fp),s()):a.slice()},l.range=function(t){return arguments.length?(u=Array.from(t),s()):u.slice()},l.rangeRound=function(t){return u=Array.from(t),c=Ar,s()},l.clamp=function(t){return arguments.length?(f=!!t||lp,s()):f!==lp},l.interpolate=function(t){return arguments.length?(c=t,s()):c},l.unknown=function(t){return arguments.length?(e=t,l):e},function(e,r){return t=e,n=r,s()}}function vp(){return yp()(lp,lp)}function _p(n,e,r,i){var o,a=F(n,e,r);switch((i=ac(null==i?",f":i)).type){case"s":var u=Math.max(Math.abs(n),Math.abs(e));return null!=i.precision||isNaN(o=vc(a,u))||(i.precision=o),t.formatPrefix(i,u);case"":case"e":case"g":case"p":case"r":null!=i.precision||isNaN(o=_c(a,Math.max(Math.abs(n),Math.abs(e))))||(i.precision=o-("e"===i.type));break;case"f":case"%":null!=i.precision||isNaN(o=yc(a))||(i.precision=o-2*("%"===i.type))}return t.format(i)}function bp(t){var n=t.domain;return t.ticks=function(t){var e=n();return q(e[0],e[e.length-1],null==t?10:t)},t.tickFormat=function(t,e){var r=n();return _p(r[0],r[r.length-1],null==t?10:t,e)},t.nice=function(e){null==e&&(e=10);var r,i,o=n(),a=0,u=o.length-1,c=o[a],f=o[u],s=10;for(f<c&&(i=c,c=f,f=i,i=a,a=u,u=i);s-- >0;){if((i=R(c,f,e))===r)return o[a]=c,o[u]=f,n(o);if(i>0)c=Math.floor(c/i)*i,f=Math.ceil(f/i)*i;else{if(!(i<0))break;c=Math.ceil(c*i)/i,f=Math.floor(f*i)/i}r=i}return t},t}function mp(t,n){var e,r=0,i=(t=t.slice()).length-1,o=t[r],a=t[i];return a<o&&(e=r,r=i,i=e,e=o,o=a,a=e),t[r]=n.floor(o),t[i]=n.ceil(a),t}function xp(t){return Math.log(t)}function wp(t){return Math.exp(t)}function Mp(t){return-Math.log(-t)}function Ap(t){return-Math.exp(-t)}function Tp(t){return isFinite(t)?+("1e"+t):t<0?0:t}function Sp(t){return function(n){return-t(-n)}}function Ep(n){var e,r,i=n(xp,wp),o=i.domain,a=10;function u(){return e=function(t){return t===Math.E?Math.log:10===t&&Math.log10||2===t&&Math.log2||(t=Math.log(t),function(n){return Math.log(n)/t})}(a),r=function(t){return 10===t?Tp:t===Math.E?Math.exp:function(n){return Math.pow(t,n)}}(a),o()[0]<0?(e=Sp(e),r=Sp(r),n(Mp,Ap)):n(xp,wp),i}return i.base=function(t){return arguments.length?(a=+t,u()):a},i.domain=function(t){return arguments.length?(o(t),u()):o()},i.ticks=function(t){var n,i=o(),u=i[0],c=i[i.length-1];(n=c<u)&&(h=u,u=c,c=h);var f,s,l,h=e(u),d=e(c),p=null==t?10:+t,g=[];if(!(a%1)&&d-h<p){if(h=Math.floor(h),d=Math.ceil(d),u>0){for(;h<=d;++h)for(s=1,f=r(h);s<a;++s)if(!((l=f*s)<u)){if(l>c)break;g.push(l)}}else for(;h<=d;++h)for(s=a-1,f=r(h);s>=1;--s)if(!((l=f*s)<u)){if(l>c)break;g.push(l)}2*g.length<p&&(g=q(u,c,p))}else g=q(h,d,Math.min(d-h,p)).map(r);return n?g.reverse():g},i.tickFormat=function(n,o){if(null==o&&(o=10===a?".0e":","),"function"!=typeof o&&(o=t.format(o)),n===1/0)return o;null==n&&(n=10);var u=Math.max(1,a*n/i.ticks().length);return function(t){var n=t/r(Math.round(e(t)));return n*a<a-.5&&(n*=a),n<=u?o(t):""}},i.nice=function(){return o(mp(o(),{floor:function(t){return r(Math.floor(e(t)))},ceil:function(t){return r(Math.ceil(e(t)))}}))},i}function kp(t){return function(n){return Math.sign(n)*Math.log1p(Math.abs(n/t))}}function Np(t){return function(n){return Math.sign(n)*Math.expm1(Math.abs(n))*t}}function Cp(t){var n=1,e=t(kp(n),Np(n));return e.constant=function(e){return arguments.length?t(kp(n=+e),Np(n)):n},bp(e)}function Pp(t){return function(n){return n<0?-Math.pow(-n,t):Math.pow(n,t)}}function zp(t){return t<0?-Math.sqrt(-t):Math.sqrt(t)}function Dp(t){return t<0?-t*t:t*t}function qp(t){var n=t(lp,lp),e=1;function r(){return 1===e?t(lp,lp):.5===e?t(zp,Dp):t(Pp(e),Pp(1/e))}return n.exponent=function(t){return arguments.length?(e=+t,r()):e},bp(n)}function Rp(){var t=qp(yp());return t.copy=function(){return gp(t,Rp()).exponent(t.exponent())},rp.apply(t,arguments),t}function Fp(t){return Math.sign(t)*t*t}function Op(t){return Math.sign(t)*Math.sqrt(Math.abs(t))}var Ip=new Date,Up=new Date;function Bp(t,n,e,r){function i(n){return t(n=0===arguments.length?new Date:new Date(+n)),n}return i.floor=function(n){return t(n=new Date(+n)),n},i.ceil=function(e){return t(e=new Date(e-1)),n(e,1),t(e),e},i.round=function(t){var n=i(t),e=i.ceil(t);return t-n<e-t?n:e},i.offset=function(t,e){return n(t=new Date(+t),null==e?1:Math.floor(e)),t},i.range=function(e,r,o){var a,u=[];if(e=i.ceil(e),o=null==o?1:Math.floor(o),!(e<r&&o>0))return u;do{u.push(a=new Date(+e)),n(e,o),t(e)}while(a<e&&e<r);return u},i.filter=function(e){return Bp((function(n){if(n>=n)for(;t(n),!e(n);)n.setTime(n-1)}),(function(t,r){if(t>=t)if(r<0)for(;++r<=0;)for(;n(t,-1),!e(t););else for(;--r>=0;)for(;n(t,1),!e(t););}))},e&&(i.count=function(n,r){return Ip.setTime(+n),Up.setTime(+r),t(Ip),t(Up),Math.floor(e(Ip,Up))},i.every=function(t){return t=Math.floor(t),isFinite(t)&&t>0?t>1?i.filter(r?function(n){return r(n)%t==0}:function(n){return i.count(0,n)%t==0}):i:null}),i}var Yp=Bp((function(){}),(function(t,n){t.setTime(+t+n)}),(function(t,n){return n-t}));Yp.every=function(t){return t=Math.floor(t),isFinite(t)&&t>0?t>1?Bp((function(n){n.setTime(Math.floor(n/t)*t)}),(function(n,e){n.setTime(+n+e*t)}),(function(n,e){return(e-n)/t})):Yp:null};var Lp=Yp.range;const jp=1e3,Hp=6e4,Xp=36e5,Gp=864e5,Vp=6048e5,$p=2592e6,Wp=31536e6;var Zp=Bp((function(t){t.setTime(t-t.getMilliseconds())}),(function(t,n){t.setTime(+t+n*jp)}),(function(t,n){return(n-t)/jp}),(function(t){return t.getUTCSeconds()})),Kp=Zp.range,Qp=Bp((function(t){t.setTime(t-t.getMilliseconds()-t.getSeconds()*jp)}),(function(t,n){t.setTime(+t+n*Hp)}),(function(t,n){return(n-t)/Hp}),(function(t){return t.getMinutes()})),Jp=Qp.range,tg=Bp((function(t){t.setTime(t-t.getMilliseconds()-t.getSeconds()*jp-t.getMinutes()*Hp)}),(function(t,n){t.setTime(+t+n*Xp)}),(function(t,n){return(n-t)/Xp}),(function(t){return t.getHours()})),ng=tg.range,eg=Bp((t=>t.setHours(0,0,0,0)),((t,n)=>t.setDate(t.getDate()+n)),((t,n)=>(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*Hp)/Gp),(t=>t.getDate()-1)),rg=eg.range;function ig(t){return Bp((function(n){n.setDate(n.getDate()-(n.getDay()+7-t)%7),n.setHours(0,0,0,0)}),(function(t,n){t.setDate(t.getDate()+7*n)}),(function(t,n){return(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*Hp)/Vp}))}var og=ig(0),ag=ig(1),ug=ig(2),cg=ig(3),fg=ig(4),sg=ig(5),lg=ig(6),hg=og.range,dg=ag.range,pg=ug.range,gg=cg.range,yg=fg.range,vg=sg.range,_g=lg.range,bg=Bp((function(t){t.setDate(1),t.setHours(0,0,0,0)}),(function(t,n){t.setMonth(t.getMonth()+n)}),(function(t,n){return n.getMonth()-t.getMonth()+12*(n.getFullYear()-t.getFullYear())}),(function(t){return t.getMonth()})),mg=bg.range,xg=Bp((function(t){t.setMonth(0,1),t.setHours(0,0,0,0)}),(function(t,n){t.setFullYear(t.getFullYear()+n)}),(function(t,n){return n.getFullYear()-t.getFullYear()}),(function(t){return t.getFullYear()}));xg.every=function(t){return isFinite(t=Math.floor(t))&&t>0?Bp((function(n){n.setFullYear(Math.floor(n.getFullYear()/t)*t),n.setMonth(0,1),n.setHours(0,0,0,0)}),(function(n,e){n.setFullYear(n.getFullYear()+e*t)})):null};var wg=xg.range,Mg=Bp((function(t){t.setUTCSeconds(0,0)}),(function(t,n){t.setTime(+t+n*Hp)}),(function(t,n){return(n-t)/Hp}),(function(t){return t.getUTCMinutes()})),Ag=Mg.range,Tg=Bp((function(t){t.setUTCMinutes(0,0,0)}),(function(t,n){t.setTime(+t+n*Xp)}),(function(t,n){return(n-t)/Xp}),(function(t){return t.getUTCHours()})),Sg=Tg.range,Eg=Bp((function(t){t.setUTCHours(0,0,0,0)}),(function(t,n){t.setUTCDate(t.getUTCDate()+n)}),(function(t,n){return(n-t)/Gp}),(function(t){return t.getUTCDate()-1})),kg=Eg.range;function Ng(t){return Bp((function(n){n.setUTCDate(n.getUTCDate()-(n.getUTCDay()+7-t)%7),n.setUTCHours(0,0,0,0)}),(function(t,n){t.setUTCDate(t.getUTCDate()+7*n)}),(function(t,n){return(n-t)/Vp}))}var Cg=Ng(0),Pg=Ng(1),zg=Ng(2),Dg=Ng(3),qg=Ng(4),Rg=Ng(5),Fg=Ng(6),Og=Cg.range,Ig=Pg.range,Ug=zg.range,Bg=Dg.range,Yg=qg.range,Lg=Rg.range,jg=Fg.range,Hg=Bp((function(t){t.setUTCDate(1),t.setUTCHours(0,0,0,0)}),(function(t,n){t.setUTCMonth(t.getUTCMonth()+n)}),(function(t,n){return n.getUTCMonth()-t.getUTCMonth()+12*(n.getUTCFullYear()-t.getUTCFullYear())}),(function(t){return t.getUTCMonth()})),Xg=Hg.range,Gg=Bp((function(t){t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)}),(function(t,n){t.setUTCFullYear(t.getUTCFullYear()+n)}),(function(t,n){return n.getUTCFullYear()-t.getUTCFullYear()}),(function(t){return t.getUTCFullYear()}));Gg.every=function(t){return isFinite(t=Math.floor(t))&&t>0?Bp((function(n){n.setUTCFullYear(Math.floor(n.getUTCFullYear()/t)*t),n.setUTCMonth(0,1),n.setUTCHours(0,0,0,0)}),(function(n,e){n.setUTCFullYear(n.getUTCFullYear()+e*t)})):null};var Vg=Gg.range;function $g(t,n,r,i,o,a){const u=[[Zp,1,jp],[Zp,5,5e3],[Zp,15,15e3],[Zp,30,3e4],[a,1,Hp],[a,5,3e5],[a,15,9e5],[a,30,18e5],[o,1,Xp],[o,3,108e5],[o,6,216e5],[o,12,432e5],[i,1,Gp],[i,2,1728e5],[r,1,Vp],[n,1,$p],[n,3,7776e6],[t,1,Wp]];function c(n,r,i){const o=Math.abs(r-n)/i,a=e((([,,t])=>t)).right(u,o);if(a===u.length)return t.every(F(n/Wp,r/Wp,i));if(0===a)return Yp.every(Math.max(F(n,r,i),1));const[c,f]=u[o/u[a-1][2]<u[a][2]/o?a-1:a];return c.every(f)}return[function(t,n,e){const r=n<t;r&&([t,n]=[n,t]);const i=e&&"function"==typeof e.range?e:c(t,n,e),o=i?i.range(t,+n+1):[];return r?o.reverse():o},c]}const[Wg,Zg]=$g(Gg,Hg,Cg,Eg,Tg,Mg),[Kg,Qg]=$g(xg,bg,og,eg,tg,Qp);function Jg(t){if(0<=t.y&&t.y<100){var n=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return n.setFullYear(t.y),n}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function ty(t){if(0<=t.y&&t.y<100){var n=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return n.setUTCFullYear(t.y),n}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function ny(t,n,e){return{y:t,m:n,d:e,H:0,M:0,S:0,L:0}}function ey(t){var n=t.dateTime,e=t.date,r=t.time,i=t.periods,o=t.days,a=t.shortDays,u=t.months,c=t.shortMonths,f=sy(i),s=ly(i),l=sy(o),h=ly(o),d=sy(a),p=ly(a),g=sy(u),y=ly(u),v=sy(c),_=ly(c),b={a:function(t){return a[t.getDay()]},A:function(t){return o[t.getDay()]},b:function(t){return c[t.getMonth()]},B:function(t){return u[t.getMonth()]},c:null,d:zy,e:zy,f:Oy,g:$y,G:Zy,H:Dy,I:qy,j:Ry,L:Fy,m:Iy,M:Uy,p:function(t){return i[+(t.getHours()>=12)]},q:function(t){return 1+~~(t.getMonth()/3)},Q:bv,s:mv,S:By,u:Yy,U:Ly,V:Hy,w:Xy,W:Gy,x:null,X:null,y:Vy,Y:Wy,Z:Ky,"%":_v},m={a:function(t){return a[t.getUTCDay()]},A:function(t){return o[t.getUTCDay()]},b:function(t){return c[t.getUTCMonth()]},B:function(t){return u[t.getUTCMonth()]},c:null,d:Qy,e:Qy,f:rv,g:pv,G:yv,H:Jy,I:tv,j:nv,L:ev,m:iv,M:ov,p:function(t){return i[+(t.getUTCHours()>=12)]},q:function(t){return 1+~~(t.getUTCMonth()/3)},Q:bv,s:mv,S:av,u:uv,U:cv,V:sv,w:lv,W:hv,x:null,X:null,y:dv,Y:gv,Z:vv,"%":_v},x={a:function(t,n,e){var r=d.exec(n.slice(e));return r?(t.w=p.get(r[0].toLowerCase()),e+r[0].length):-1},A:function(t,n,e){var r=l.exec(n.slice(e));return r?(t.w=h.get(r[0].toLowerCase()),e+r[0].length):-1},b:function(t,n,e){var r=v.exec(n.slice(e));return r?(t.m=_.get(r[0].toLowerCase()),e+r[0].length):-1},B:function(t,n,e){var r=g.exec(n.slice(e));return r?(t.m=y.get(r[0].toLowerCase()),e+r[0].length):-1},c:function(t,e,r){return A(t,n,e,r)},d:wy,e:wy,f:ky,g:_y,G:vy,H:Ay,I:Ay,j:My,L:Ey,m:xy,M:Ty,p:function(t,n,e){var r=f.exec(n.slice(e));return r?(t.p=s.get(r[0].toLowerCase()),e+r[0].length):-1},q:my,Q:Cy,s:Py,S:Sy,u:dy,U:py,V:gy,w:hy,W:yy,x:function(t,n,r){return A(t,e,n,r)},X:function(t,n,e){return A(t,r,n,e)},y:_y,Y:vy,Z:by,"%":Ny};function w(t,n){return function(e){var r,i,o,a=[],u=-1,c=0,f=t.length;for(e instanceof Date||(e=new Date(+e));++u<f;)37===t.charCodeAt(u)&&(a.push(t.slice(c,u)),null!=(i=iy[r=t.charAt(++u)])?r=t.charAt(++u):i="e"===r?" ":"0",(o=n[r])&&(r=o(e,i)),a.push(r),c=u+1);return a.push(t.slice(c,u)),a.join("")}}function M(t,n){return function(e){var r,i,o=ny(1900,void 0,1);if(A(o,t,e+="",0)!=e.length)return null;if("Q"in o)return new Date(o.Q);if("s"in o)return new Date(1e3*o.s+("L"in o?o.L:0));if(n&&!("Z"in o)&&(o.Z=0),"p"in o&&(o.H=o.H%12+12*o.p),void 0===o.m&&(o.m="q"in o?o.q:0),"V"in o){if(o.V<1||o.V>53)return null;"w"in o||(o.w=1),"Z"in o?(i=(r=ty(ny(o.y,0,1))).getUTCDay(),r=i>4||0===i?Pg.ceil(r):Pg(r),r=Eg.offset(r,7*(o.V-1)),o.y=r.getUTCFullYear(),o.m=r.getUTCMonth(),o.d=r.getUTCDate()+(o.w+6)%7):(i=(r=Jg(ny(o.y,0,1))).getDay(),r=i>4||0===i?ag.ceil(r):ag(r),r=eg.offset(r,7*(o.V-1)),o.y=r.getFullYear(),o.m=r.getMonth(),o.d=r.getDate()+(o.w+6)%7)}else("W"in o||"U"in o)&&("w"in o||(o.w="u"in o?o.u%7:"W"in o?1:0),i="Z"in o?ty(ny(o.y,0,1)).getUTCDay():Jg(ny(o.y,0,1)).getDay(),o.m=0,o.d="W"in o?(o.w+6)%7+7*o.W-(i+5)%7:o.w+7*o.U-(i+6)%7);return"Z"in o?(o.H+=o.Z/100|0,o.M+=o.Z%100,ty(o)):Jg(o)}}function A(t,n,e,r){for(var i,o,a=0,u=n.length,c=e.length;a<u;){if(r>=c)return-1;if(37===(i=n.charCodeAt(a++))){if(i=n.charAt(a++),!(o=x[i in iy?n.charAt(a++):i])||(r=o(t,e,r))<0)return-1}else if(i!=e.charCodeAt(r++))return-1}return r}return b.x=w(e,b),b.X=w(r,b),b.c=w(n,b),m.x=w(e,m),m.X=w(r,m),m.c=w(n,m),{format:function(t){var n=w(t+="",b);return n.toString=function(){return t},n},parse:function(t){var n=M(t+="",!1);return n.toString=function(){return t},n},utcFormat:function(t){var n=w(t+="",m);return n.toString=function(){return t},n},utcParse:function(t){var n=M(t+="",!0);return n.toString=function(){return t},n}}}var ry,iy={"-":"",_:" ",0:"0"},oy=/^\s*\d+/,ay=/^%/,uy=/[\\^$*+?|[\]().{}]/g;function cy(t,n,e){var r=t<0?"-":"",i=(r?-t:t)+"",o=i.length;return r+(o<e?new Array(e-o+1).join(n)+i:i)}function fy(t){return t.replace(uy,"\\$&")}function sy(t){return new RegExp("^(?:"+t.map(fy).join("|")+")","i")}function ly(t){return new Map(t.map(((t,n)=>[t.toLowerCase(),n])))}function hy(t,n,e){var r=oy.exec(n.slice(e,e+1));return r?(t.w=+r[0],e+r[0].length):-1}function dy(t,n,e){var r=oy.exec(n.slice(e,e+1));return r?(t.u=+r[0],e+r[0].length):-1}function py(t,n,e){var r=oy.exec(n.slice(e,e+2));return r?(t.U=+r[0],e+r[0].length):-1}function gy(t,n,e){var r=oy.exec(n.slice(e,e+2));return r?(t.V=+r[0],e+r[0].length):-1}function yy(t,n,e){var r=oy.exec(n.slice(e,e+2));return r?(t.W=+r[0],e+r[0].length):-1}function vy(t,n,e){var r=oy.exec(n.slice(e,e+4));return r?(t.y=+r[0],e+r[0].length):-1}function _y(t,n,e){var r=oy.exec(n.slice(e,e+2));return r?(t.y=+r[0]+(+r[0]>68?1900:2e3),e+r[0].length):-1}function by(t,n,e){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(n.slice(e,e+6));return r?(t.Z=r[1]?0:-(r[2]+(r[3]||"00")),e+r[0].length):-1}function my(t,n,e){var r=oy.exec(n.slice(e,e+1));return r?(t.q=3*r[0]-3,e+r[0].length):-1}function xy(t,n,e){var r=oy.exec(n.slice(e,e+2));return r?(t.m=r[0]-1,e+r[0].length):-1}function wy(t,n,e){var r=oy.exec(n.slice(e,e+2));return r?(t.d=+r[0],e+r[0].length):-1}function My(t,n,e){var r=oy.exec(n.slice(e,e+3));return r?(t.m=0,t.d=+r[0],e+r[0].length):-1}function Ay(t,n,e){var r=oy.exec(n.slice(e,e+2));return r?(t.H=+r[0],e+r[0].length):-1}function Ty(t,n,e){var r=oy.exec(n.slice(e,e+2));return r?(t.M=+r[0],e+r[0].length):-1}function Sy(t,n,e){var r=oy.exec(n.slice(e,e+2));return r?(t.S=+r[0],e+r[0].length):-1}function Ey(t,n,e){var r=oy.exec(n.slice(e,e+3));return r?(t.L=+r[0],e+r[0].length):-1}function ky(t,n,e){var r=oy.exec(n.slice(e,e+6));return r?(t.L=Math.floor(r[0]/1e3),e+r[0].length):-1}function Ny(t,n,e){var r=ay.exec(n.slice(e,e+1));return r?e+r[0].length:-1}function Cy(t,n,e){var r=oy.exec(n.slice(e));return r?(t.Q=+r[0],e+r[0].length):-1}function Py(t,n,e){var r=oy.exec(n.slice(e));return r?(t.s=+r[0],e+r[0].length):-1}function zy(t,n){return cy(t.getDate(),n,2)}function Dy(t,n){return cy(t.getHours(),n,2)}function qy(t,n){return cy(t.getHours()%12||12,n,2)}function Ry(t,n){return cy(1+eg.count(xg(t),t),n,3)}function Fy(t,n){return cy(t.getMilliseconds(),n,3)}function Oy(t,n){return Fy(t,n)+"000"}function Iy(t,n){return cy(t.getMonth()+1,n,2)}function Uy(t,n){return cy(t.getMinutes(),n,2)}function By(t,n){return cy(t.getSeconds(),n,2)}function Yy(t){var n=t.getDay();return 0===n?7:n}function Ly(t,n){return cy(og.count(xg(t)-1,t),n,2)}function jy(t){var n=t.getDay();return n>=4||0===n?fg(t):fg.ceil(t)}function Hy(t,n){return t=jy(t),cy(fg.count(xg(t),t)+(4===xg(t).getDay()),n,2)}function Xy(t){return t.getDay()}function Gy(t,n){return cy(ag.count(xg(t)-1,t),n,2)}function Vy(t,n){return cy(t.getFullYear()%100,n,2)}function $y(t,n){return cy((t=jy(t)).getFullYear()%100,n,2)}function Wy(t,n){return cy(t.getFullYear()%1e4,n,4)}function Zy(t,n){var e=t.getDay();return cy((t=e>=4||0===e?fg(t):fg.ceil(t)).getFullYear()%1e4,n,4)}function Ky(t){var n=t.getTimezoneOffset();return(n>0?"-":(n*=-1,"+"))+cy(n/60|0,"0",2)+cy(n%60,"0",2)}function Qy(t,n){return cy(t.getUTCDate(),n,2)}function Jy(t,n){return cy(t.getUTCHours(),n,2)}function tv(t,n){return cy(t.getUTCHours()%12||12,n,2)}function nv(t,n){return cy(1+Eg.count(Gg(t),t),n,3)}function ev(t,n){return cy(t.getUTCMilliseconds(),n,3)}function rv(t,n){return ev(t,n)+"000"}function iv(t,n){return cy(t.getUTCMonth()+1,n,2)}function ov(t,n){return cy(t.getUTCMinutes(),n,2)}function av(t,n){return cy(t.getUTCSeconds(),n,2)}function uv(t){var n=t.getUTCDay();return 0===n?7:n}function cv(t,n){return cy(Cg.count(Gg(t)-1,t),n,2)}function fv(t){var n=t.getUTCDay();return n>=4||0===n?qg(t):qg.ceil(t)}function sv(t,n){return t=fv(t),cy(qg.count(Gg(t),t)+(4===Gg(t).getUTCDay()),n,2)}function lv(t){return t.getUTCDay()}function hv(t,n){return cy(Pg.count(Gg(t)-1,t),n,2)}function dv(t,n){return cy(t.getUTCFullYear()%100,n,2)}function pv(t,n){return cy((t=fv(t)).getUTCFullYear()%100,n,2)}function gv(t,n){return cy(t.getUTCFullYear()%1e4,n,4)}function yv(t,n){var e=t.getUTCDay();return cy((t=e>=4||0===e?qg(t):qg.ceil(t)).getUTCFullYear()%1e4,n,4)}function vv(){return"+0000"}function _v(){return"%"}function bv(t){return+t}function mv(t){return Math.floor(+t/1e3)}function xv(n){return ry=ey(n),t.timeFormat=ry.format,t.timeParse=ry.parse,t.utcFormat=ry.utcFormat,t.utcParse=ry.utcParse,ry}t.timeFormat=void 0,t.timeParse=void 0,t.utcFormat=void 0,t.utcParse=void 0,xv({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});var wv="%Y-%m-%dT%H:%M:%S.%LZ";var Mv=Date.prototype.toISOString?function(t){return t.toISOString()}:t.utcFormat(wv);var Av=+new Date("2000-01-01T00:00:00.000Z")?function(t){var n=new Date(t);return isNaN(n)?null:n}:t.utcParse(wv);function Tv(t){return new Date(t)}function Sv(t){return t instanceof Date?+t:+new Date(+t)}function Ev(t,n,e,r,i,o,a,u,c,f){var s=vp(),l=s.invert,h=s.domain,d=f(".%L"),p=f(":%S"),g=f("%I:%M"),y=f("%I %p"),v=f("%a %d"),_=f("%b %d"),b=f("%B"),m=f("%Y");function x(t){return(c(t)<t?d:u(t)<t?p:a(t)<t?g:o(t)<t?y:r(t)<t?i(t)<t?v:_:e(t)<t?b:m)(t)}return s.invert=function(t){return new Date(l(t))},s.domain=function(t){return arguments.length?h(Array.from(t,Sv)):h().map(Tv)},s.ticks=function(n){var e=h();return t(e[0],e[e.length-1],null==n?10:n)},s.tickFormat=function(t,n){return null==n?x:f(n)},s.nice=function(t){var e=h();return t&&"function"==typeof t.range||(t=n(e[0],e[e.length-1],null==t?10:t)),t?h(mp(e,t)):s},s.copy=function(){return gp(s,Ev(t,n,e,r,i,o,a,u,c,f))},s}function kv(){var t,n,e,r,i,o=0,a=1,u=lp,c=!1;function f(n){return null==n||isNaN(n=+n)?i:u(0===e?.5:(n=(r(n)-t)*e,c?Math.max(0,Math.min(1,n)):n))}function s(t){return function(n){var e,r;return arguments.length?([e,r]=n,u=t(e,r),f):[u(0),u(1)]}}return f.domain=function(i){return arguments.length?([o,a]=i,t=r(o=+o),n=r(a=+a),e=t===n?0:1/(n-t),f):[o,a]},f.clamp=function(t){return arguments.length?(c=!!t,f):c},f.interpolator=function(t){return arguments.length?(u=t,f):u},f.range=s(Mr),f.rangeRound=s(Ar),f.unknown=function(t){return arguments.length?(i=t,f):i},function(i){return r=i,t=i(o),n=i(a),e=t===n?0:1/(n-t),f}}function Nv(t,n){return n.domain(t.domain()).interpolator(t.interpolator()).clamp(t.clamp()).unknown(t.unknown())}function Cv(){var t=qp(kv());return t.copy=function(){return Nv(t,Cv()).exponent(t.exponent())},ip.apply(t,arguments)}function Pv(){var t,n,e,r,i,o,a,u=0,c=.5,f=1,s=1,l=lp,h=!1;function d(t){return isNaN(t=+t)?a:(t=.5+((t=+o(t))-n)*(s*t<s*n?r:i),l(h?Math.max(0,Math.min(1,t)):t))}function p(t){return function(n){var e,r,i;return arguments.length?([e,r,i]=n,l=jr(t,[e,r,i]),d):[l(0),l(.5),l(1)]}}return d.domain=function(a){return arguments.length?([u,c,f]=a,t=o(u=+u),n=o(c=+c),e=o(f=+f),r=t===n?0:.5/(n-t),i=n===e?0:.5/(e-n),s=n<t?-1:1,d):[u,c,f]},d.clamp=function(t){return arguments.length?(h=!!t,d):h},d.interpolator=function(t){return arguments.length?(l=t,d):l},d.range=p(Mr),d.rangeRound=p(Ar),d.unknown=function(t){return arguments.length?(a=t,d):a},function(a){return o=a,t=a(u),n=a(c),e=a(f),r=t===n?0:.5/(n-t),i=n===e?0:.5/(e-n),s=n<t?-1:1,d}}function zv(){var t=qp(Pv());return t.copy=function(){return Nv(t,zv()).exponent(t.exponent())},ip.apply(t,arguments)}function Dv(t){for(var n=t.length/6|0,e=new Array(n),r=0;r<n;)e[r]="#"+t.slice(6*r,6*++r);return e}var qv=Dv("1f77b4ff7f0e2ca02cd627289467bd8c564be377c27f7f7fbcbd2217becf"),Rv=Dv("7fc97fbeaed4fdc086ffff99386cb0f0027fbf5b17666666"),Fv=Dv("1b9e77d95f027570b3e7298a66a61ee6ab02a6761d666666"),Ov=Dv("a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6fff7f00cab2d66a3d9affff99b15928"),Iv=Dv("fbb4aeb3cde3ccebc5decbe4fed9a6ffffcce5d8bdfddaecf2f2f2"),Uv=Dv("b3e2cdfdcdaccbd5e8f4cae4e6f5c9fff2aef1e2cccccccc"),Bv=Dv("e41a1c377eb84daf4a984ea3ff7f00ffff33a65628f781bf999999"),Yv=Dv("66c2a5fc8d628da0cbe78ac3a6d854ffd92fe5c494b3b3b3"),Lv=Dv("8dd3c7ffffb3bebadafb807280b1d3fdb462b3de69fccde5d9d9d9bc80bdccebc5ffed6f"),jv=Dv("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab"),Hv=t=>hr(t[t.length-1]),Xv=new Array(3).concat("d8b365f5f5f55ab4ac","a6611adfc27d80cdc1018571","a6611adfc27df5f5f580cdc1018571","8c510ad8b365f6e8c3c7eae55ab4ac01665e","8c510ad8b365f6e8c3f5f5f5c7eae55ab4ac01665e","8c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e","8c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e","5430058c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e003c30","5430058c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e003c30").map(Dv),Gv=Hv(Xv),Vv=new Array(3).concat("af8dc3f7f7f77fbf7b","7b3294c2a5cfa6dba0008837","7b3294c2a5cff7f7f7a6dba0008837","762a83af8dc3e7d4e8d9f0d37fbf7b1b7837","762a83af8dc3e7d4e8f7f7f7d9f0d37fbf7b1b7837","762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b7837","762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b7837","40004b762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b783700441b","40004b762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b783700441b").map(Dv),$v=Hv(Vv),Wv=new Array(3).concat("e9a3c9f7f7f7a1d76a","d01c8bf1b6dab8e1864dac26","d01c8bf1b6daf7f7f7b8e1864dac26","c51b7de9a3c9fde0efe6f5d0a1d76a4d9221","c51b7de9a3c9fde0eff7f7f7e6f5d0a1d76a4d9221","c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221","c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221","8e0152c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221276419","8e0152c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221276419").map(Dv),Zv=Hv(Wv),Kv=new Array(3).concat("998ec3f7f7f7f1a340","5e3c99b2abd2fdb863e66101","5e3c99b2abd2f7f7f7fdb863e66101","542788998ec3d8daebfee0b6f1a340b35806","542788998ec3d8daebf7f7f7fee0b6f1a340b35806","5427888073acb2abd2d8daebfee0b6fdb863e08214b35806","5427888073acb2abd2d8daebf7f7f7fee0b6fdb863e08214b35806","2d004b5427888073acb2abd2d8daebfee0b6fdb863e08214b358067f3b08","2d004b5427888073acb2abd2d8daebf7f7f7fee0b6fdb863e08214b358067f3b08").map(Dv),Qv=Hv(Kv),Jv=new Array(3).concat("ef8a62f7f7f767a9cf","ca0020f4a58292c5de0571b0","ca0020f4a582f7f7f792c5de0571b0","b2182bef8a62fddbc7d1e5f067a9cf2166ac","b2182bef8a62fddbc7f7f7f7d1e5f067a9cf2166ac","b2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac","b2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac","67001fb2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac053061","67001fb2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac053061").map(Dv),t_=Hv(Jv),n_=new Array(3).concat("ef8a62ffffff999999","ca0020f4a582bababa404040","ca0020f4a582ffffffbababa404040","b2182bef8a62fddbc7e0e0e09999994d4d4d","b2182bef8a62fddbc7ffffffe0e0e09999994d4d4d","b2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d","b2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d","67001fb2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d1a1a1a","67001fb2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d1a1a1a").map(Dv),e_=Hv(n_),r_=new Array(3).concat("fc8d59ffffbf91bfdb","d7191cfdae61abd9e92c7bb6","d7191cfdae61ffffbfabd9e92c7bb6","d73027fc8d59fee090e0f3f891bfdb4575b4","d73027fc8d59fee090ffffbfe0f3f891bfdb4575b4","d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4","d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4","a50026d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4313695","a50026d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4313695").map(Dv),i_=Hv(r_),o_=new Array(3).concat("fc8d59ffffbf91cf60","d7191cfdae61a6d96a1a9641","d7191cfdae61ffffbfa6d96a1a9641","d73027fc8d59fee08bd9ef8b91cf601a9850","d73027fc8d59fee08bffffbfd9ef8b91cf601a9850","d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850","d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850","a50026d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850006837","a50026d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850006837").map(Dv),a_=Hv(o_),u_=new Array(3).concat("fc8d59ffffbf99d594","d7191cfdae61abdda42b83ba","d7191cfdae61ffffbfabdda42b83ba","d53e4ffc8d59fee08be6f59899d5943288bd","d53e4ffc8d59fee08bffffbfe6f59899d5943288bd","d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd","d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd","9e0142d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd5e4fa2","9e0142d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd5e4fa2").map(Dv),c_=Hv(u_),f_=new Array(3).concat("e5f5f999d8c92ca25f","edf8fbb2e2e266c2a4238b45","edf8fbb2e2e266c2a42ca25f006d2c","edf8fbccece699d8c966c2a42ca25f006d2c","edf8fbccece699d8c966c2a441ae76238b45005824","f7fcfde5f5f9ccece699d8c966c2a441ae76238b45005824","f7fcfde5f5f9ccece699d8c966c2a441ae76238b45006d2c00441b").map(Dv),s_=Hv(f_),l_=new Array(3).concat("e0ecf49ebcda8856a7","edf8fbb3cde38c96c688419d","edf8fbb3cde38c96c68856a7810f7c","edf8fbbfd3e69ebcda8c96c68856a7810f7c","edf8fbbfd3e69ebcda8c96c68c6bb188419d6e016b","f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d6e016b","f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d810f7c4d004b").map(Dv),h_=Hv(l_),d_=new Array(3).concat("e0f3dba8ddb543a2ca","f0f9e8bae4bc7bccc42b8cbe","f0f9e8bae4bc7bccc443a2ca0868ac","f0f9e8ccebc5a8ddb57bccc443a2ca0868ac","f0f9e8ccebc5a8ddb57bccc44eb3d32b8cbe08589e","f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe08589e","f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe0868ac084081").map(Dv),p_=Hv(d_),g_=new Array(3).concat("fee8c8fdbb84e34a33","fef0d9fdcc8afc8d59d7301f","fef0d9fdcc8afc8d59e34a33b30000","fef0d9fdd49efdbb84fc8d59e34a33b30000","fef0d9fdd49efdbb84fc8d59ef6548d7301f990000","fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301f990000","fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301fb300007f0000").map(Dv),y_=Hv(g_),v_=new Array(3).concat("ece2f0a6bddb1c9099","f6eff7bdc9e167a9cf02818a","f6eff7bdc9e167a9cf1c9099016c59","f6eff7d0d1e6a6bddb67a9cf1c9099016c59","f6eff7d0d1e6a6bddb67a9cf3690c002818a016450","fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016450","fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016c59014636").map(Dv),__=Hv(v_),b_=new Array(3).concat("ece7f2a6bddb2b8cbe","f1eef6bdc9e174a9cf0570b0","f1eef6bdc9e174a9cf2b8cbe045a8d","f1eef6d0d1e6a6bddb74a9cf2b8cbe045a8d","f1eef6d0d1e6a6bddb74a9cf3690c00570b0034e7b","fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0034e7b","fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0045a8d023858").map(Dv),m_=Hv(b_),x_=new Array(3).concat("e7e1efc994c7dd1c77","f1eef6d7b5d8df65b0ce1256","f1eef6d7b5d8df65b0dd1c77980043","f1eef6d4b9dac994c7df65b0dd1c77980043","f1eef6d4b9dac994c7df65b0e7298ace125691003f","f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125691003f","f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125698004367001f").map(Dv),w_=Hv(x_),M_=new Array(3).concat("fde0ddfa9fb5c51b8a","feebe2fbb4b9f768a1ae017e","feebe2fbb4b9f768a1c51b8a7a0177","feebe2fcc5c0fa9fb5f768a1c51b8a7a0177","feebe2fcc5c0fa9fb5f768a1dd3497ae017e7a0177","fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a0177","fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a017749006a").map(Dv),A_=Hv(M_),T_=new Array(3).concat("edf8b17fcdbb2c7fb8","ffffcca1dab441b6c4225ea8","ffffcca1dab441b6c42c7fb8253494","ffffccc7e9b47fcdbb41b6c42c7fb8253494","ffffccc7e9b47fcdbb41b6c41d91c0225ea80c2c84","ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea80c2c84","ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea8253494081d58").map(Dv),S_=Hv(T_),E_=new Array(3).concat("f7fcb9addd8e31a354","ffffccc2e69978c679238443","ffffccc2e69978c67931a354006837","ffffccd9f0a3addd8e78c67931a354006837","ffffccd9f0a3addd8e78c67941ab5d238443005a32","ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443005a32","ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443006837004529").map(Dv),k_=Hv(E_),N_=new Array(3).concat("fff7bcfec44fd95f0e","ffffd4fed98efe9929cc4c02","ffffd4fed98efe9929d95f0e993404","ffffd4fee391fec44ffe9929d95f0e993404","ffffd4fee391fec44ffe9929ec7014cc4c028c2d04","ffffe5fff7bcfee391fec44ffe9929ec7014cc4c028c2d04","ffffe5fff7bcfee391fec44ffe9929ec7014cc4c02993404662506").map(Dv),C_=Hv(N_),P_=new Array(3).concat("ffeda0feb24cf03b20","ffffb2fecc5cfd8d3ce31a1c","ffffb2fecc5cfd8d3cf03b20bd0026","ffffb2fed976feb24cfd8d3cf03b20bd0026","ffffb2fed976feb24cfd8d3cfc4e2ae31a1cb10026","ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cb10026","ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cbd0026800026").map(Dv),z_=Hv(P_),D_=new Array(3).concat("deebf79ecae13182bd","eff3ffbdd7e76baed62171b5","eff3ffbdd7e76baed63182bd08519c","eff3ffc6dbef9ecae16baed63182bd08519c","eff3ffc6dbef9ecae16baed64292c62171b5084594","f7fbffdeebf7c6dbef9ecae16baed64292c62171b5084594","f7fbffdeebf7c6dbef9ecae16baed64292c62171b508519c08306b").map(Dv),q_=Hv(D_),R_=new Array(3).concat("e5f5e0a1d99b31a354","edf8e9bae4b374c476238b45","edf8e9bae4b374c47631a354006d2c","edf8e9c7e9c0a1d99b74c47631a354006d2c","edf8e9c7e9c0a1d99b74c47641ab5d238b45005a32","f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45005a32","f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45006d2c00441b").map(Dv),F_=Hv(R_),O_=new Array(3).concat("f0f0f0bdbdbd636363","f7f7f7cccccc969696525252","f7f7f7cccccc969696636363252525","f7f7f7d9d9d9bdbdbd969696636363252525","f7f7f7d9d9d9bdbdbd969696737373525252252525","fffffff0f0f0d9d9d9bdbdbd969696737373525252252525","fffffff0f0f0d9d9d9bdbdbd969696737373525252252525000000").map(Dv),I_=Hv(O_),U_=new Array(3).concat("efedf5bcbddc756bb1","f2f0f7cbc9e29e9ac86a51a3","f2f0f7cbc9e29e9ac8756bb154278f","f2f0f7dadaebbcbddc9e9ac8756bb154278f","f2f0f7dadaebbcbddc9e9ac8807dba6a51a34a1486","fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a34a1486","fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a354278f3f007d").map(Dv),B_=Hv(U_),Y_=new Array(3).concat("fee0d2fc9272de2d26","fee5d9fcae91fb6a4acb181d","fee5d9fcae91fb6a4ade2d26a50f15","fee5d9fcbba1fc9272fb6a4ade2d26a50f15","fee5d9fcbba1fc9272fb6a4aef3b2ccb181d99000d","fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181d99000d","fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181da50f1567000d").map(Dv),L_=Hv(Y_),j_=new Array(3).concat("fee6cefdae6be6550d","feeddefdbe85fd8d3cd94701","feeddefdbe85fd8d3ce6550da63603","feeddefdd0a2fdae6bfd8d3ce6550da63603","feeddefdd0a2fdae6bfd8d3cf16913d948018c2d04","fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d948018c2d04","fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d94801a636037f2704").map(Dv),H_=Hv(j_);var X_=Lr(tr(300,.5,0),tr(-240,.5,1)),G_=Lr(tr(-100,.75,.35),tr(80,1.5,.8)),V_=Lr(tr(260,.75,.35),tr(80,1.5,.8)),$_=tr();var W_=ve(),Z_=Math.PI/3,K_=2*Math.PI/3;function Q_(t){var n=t.length;return function(e){return t[Math.max(0,Math.min(n-1,Math.floor(e*n)))]}}var J_=Q_(Dv("44015444025645045745055946075a46085c460a5d460b5e470d60470e6147106347116447136548146748166848176948186a481a6c481b6d481c6e481d6f481f70482071482173482374482475482576482677482878482979472a7a472c7a472d7b472e7c472f7d46307e46327e46337f463480453581453781453882443983443a83443b84433d84433e85423f854240864241864142874144874045884046883f47883f48893e49893e4a893e4c8a3d4d8a3d4e8a3c4f8a3c508b3b518b3b528b3a538b3a548c39558c39568c38588c38598c375a8c375b8d365c8d365d8d355e8d355f8d34608d34618d33628d33638d32648e32658e31668e31678e31688e30698e306a8e2f6b8e2f6c8e2e6d8e2e6e8e2e6f8e2d708e2d718e2c718e2c728e2c738e2b748e2b758e2a768e2a778e2a788e29798e297a8e297b8e287c8e287d8e277e8e277f8e27808e26818e26828e26828e25838e25848e25858e24868e24878e23888e23898e238a8d228b8d228c8d228d8d218e8d218f8d21908d21918c20928c20928c20938c1f948c1f958b1f968b1f978b1f988b1f998a1f9a8a1e9b8a1e9c891e9d891f9e891f9f881fa0881fa1881fa1871fa28720a38620a48621a58521a68522a78522a88423a98324aa8325ab8225ac8226ad8127ad8128ae8029af7f2ab07f2cb17e2db27d2eb37c2fb47c31b57b32b67a34b67935b77937b87838b9773aba763bbb753dbc743fbc7340bd7242be7144bf7046c06f48c16e4ac16d4cc26c4ec36b50c46a52c56954c56856c66758c7655ac8645cc8635ec96260ca6063cb5f65cb5e67cc5c69cd5b6ccd5a6ece5870cf5773d05675d05477d1537ad1517cd2507fd34e81d34d84d44b86d54989d5488bd6468ed64590d74393d74195d84098d83e9bd93c9dd93ba0da39a2da37a5db36a8db34aadc32addc30b0dd2fb2dd2db5de2bb8de29bade28bddf26c0df25c2df23c5e021c8e020cae11fcde11dd0e11cd2e21bd5e21ad8e219dae319dde318dfe318e2e418e5e419e7e419eae51aece51befe51cf1e51df4e61ef6e620f8e621fbe723fde725")),tb=Q_(Dv("00000401000501010601010802010902020b02020d03030f03031204041405041606051806051a07061c08071e0907200a08220b09240c09260d0a290e0b2b100b2d110c2f120d31130d34140e36150e38160f3b180f3d19103f1a10421c10441d11471e114920114b21114e22115024125325125527125829115a2a115c2c115f2d11612f116331116533106734106936106b38106c390f6e3b0f703d0f713f0f72400f74420f75440f764510774710784910784a10794c117a4e117b4f127b51127c52137c54137d56147d57157e59157e5a167e5c167f5d177f5f187f601880621980641a80651a80671b80681c816a1c816b1d816d1d816e1e81701f81721f817320817521817621817822817922827b23827c23827e24828025828125818326818426818627818827818928818b29818c29818e2a81902a81912b81932b80942c80962c80982d80992d809b2e7f9c2e7f9e2f7fa02f7fa1307ea3307ea5317ea6317da8327daa337dab337cad347cae347bb0357bb2357bb3367ab5367ab73779b83779ba3878bc3978bd3977bf3a77c03a76c23b75c43c75c53c74c73d73c83e73ca3e72cc3f71cd4071cf4070d0416fd2426fd3436ed5446dd6456cd8456cd9466bdb476adc4869de4968df4a68e04c67e24d66e34e65e44f64e55064e75263e85362e95462ea5661eb5760ec5860ed5a5fee5b5eef5d5ef05f5ef1605df2625df2645cf3655cf4675cf4695cf56b5cf66c5cf66e5cf7705cf7725cf8745cf8765cf9785df9795df97b5dfa7d5efa7f5efa815ffb835ffb8560fb8761fc8961fc8a62fc8c63fc8e64fc9065fd9266fd9467fd9668fd9869fd9a6afd9b6bfe9d6cfe9f6dfea16efea36ffea571fea772fea973feaa74feac76feae77feb078feb27afeb47bfeb67cfeb77efeb97ffebb81febd82febf84fec185fec287fec488fec68afec88cfeca8dfecc8ffecd90fecf92fed194fed395fed597fed799fed89afdda9cfddc9efddea0fde0a1fde2a3fde3a5fde5a7fde7a9fde9aafdebacfcecaefceeb0fcf0b2fcf2b4fcf4b6fcf6b8fcf7b9fcf9bbfcfbbdfcfdbf")),nb=Q_(Dv("00000401000501010601010802010a02020c02020e03021004031204031405041706041907051b08051d09061f0a07220b07240c08260d08290e092b10092d110a30120a32140b34150b37160b39180c3c190c3e1b0c411c0c431e0c451f0c48210c4a230c4c240c4f260c51280b53290b552b0b572d0b592f0a5b310a5c320a5e340a5f3609613809623909633b09643d09653e0966400a67420a68440a68450a69470b6a490b6a4a0c6b4c0c6b4d0d6c4f0d6c510e6c520e6d540f6d550f6d57106e59106e5a116e5c126e5d126e5f136e61136e62146e64156e65156e67166e69166e6a176e6c186e6d186e6f196e71196e721a6e741a6e751b6e771c6d781c6d7a1d6d7c1d6d7d1e6d7f1e6c801f6c82206c84206b85216b87216b88226a8a226a8c23698d23698f24699025689225689326679526679727669827669a28659b29649d29649f2a63a02a63a22b62a32c61a52c60a62d60a82e5fa92e5eab2f5ead305dae305cb0315bb1325ab3325ab43359b63458b73557b93556ba3655bc3754bd3853bf3952c03a51c13a50c33b4fc43c4ec63d4dc73e4cc83f4bca404acb4149cc4248ce4347cf4446d04545d24644d34743d44842d54a41d74b3fd84c3ed94d3dda4e3cdb503bdd513ade5238df5337e05536e15635e25734e35933e45a31e55c30e65d2fe75e2ee8602de9612bea632aeb6429eb6628ec6726ed6925ee6a24ef6c23ef6e21f06f20f1711ff1731df2741cf3761bf37819f47918f57b17f57d15f67e14f68013f78212f78410f8850ff8870ef8890cf98b0bf98c0af98e09fa9008fa9207fa9407fb9606fb9706fb9906fb9b06fb9d07fc9f07fca108fca309fca50afca60cfca80dfcaa0ffcac11fcae12fcb014fcb216fcb418fbb61afbb81dfbba1ffbbc21fbbe23fac026fac228fac42afac62df9c72ff9c932f9cb35f8cd37f8cf3af7d13df7d340f6d543f6d746f5d949f5db4cf4dd4ff4df53f4e156f3e35af3e55df2e661f2e865f2ea69f1ec6df1ed71f1ef75f1f179f2f27df2f482f3f586f3f68af4f88ef5f992f6fa96f8fb9af9fc9dfafda1fcffa4")),eb=Q_(Dv("0d088710078813078916078a19068c1b068d1d068e20068f2206902406912605912805922a05932c05942e05952f059631059733059735049837049938049a3a049a3c049b3e049c3f049c41049d43039e44039e46039f48039f4903a04b03a14c02a14e02a25002a25102a35302a35502a45601a45801a45901a55b01a55c01a65e01a66001a66100a76300a76400a76600a76700a86900a86a00a86c00a86e00a86f00a87100a87201a87401a87501a87701a87801a87a02a87b02a87d03a87e03a88004a88104a78305a78405a78606a68707a68808a68a09a58b0aa58d0ba58e0ca48f0da4910ea3920fa39410a29511a19613a19814a099159f9a169f9c179e9d189d9e199da01a9ca11b9ba21d9aa31e9aa51f99a62098a72197a82296aa2395ab2494ac2694ad2793ae2892b02991b12a90b22b8fb32c8eb42e8db52f8cb6308bb7318ab83289ba3388bb3488bc3587bd3786be3885bf3984c03a83c13b82c23c81c33d80c43e7fc5407ec6417dc7427cc8437bc9447aca457acb4679cc4778cc4977cd4a76ce4b75cf4c74d04d73d14e72d24f71d35171d45270d5536fd5546ed6556dd7566cd8576bd9586ada5a6ada5b69db5c68dc5d67dd5e66de5f65de6164df6263e06363e16462e26561e26660e3685fe4695ee56a5de56b5de66c5ce76e5be76f5ae87059e97158e97257ea7457eb7556eb7655ec7754ed7953ed7a52ee7b51ef7c51ef7e50f07f4ff0804ef1814df1834cf2844bf3854bf3874af48849f48948f58b47f58c46f68d45f68f44f79044f79143f79342f89441f89540f9973ff9983ef99a3efa9b3dfa9c3cfa9e3bfb9f3afba139fba238fca338fca537fca636fca835fca934fdab33fdac33fdae32fdaf31fdb130fdb22ffdb42ffdb52efeb72dfeb82cfeba2cfebb2bfebd2afebe2afec029fdc229fdc328fdc527fdc627fdc827fdca26fdcb26fccd25fcce25fcd025fcd225fbd324fbd524fbd724fad824fada24f9dc24f9dd25f8df25f8e125f7e225f7e425f6e626f6e826f5e926f5eb27f4ed27f3ee27f3f027f2f227f1f426f1f525f0f724f0f921"));function rb(t){return function(){return t}}var ib=Math.abs,ob=Math.atan2,ab=Math.cos,ub=Math.max,cb=Math.min,fb=Math.sin,sb=Math.sqrt,lb=1e-12,hb=Math.PI,db=hb/2,pb=2*hb;function gb(t){return t>1?0:t<-1?hb:Math.acos(t)}function yb(t){return t>=1?db:t<=-1?-db:Math.asin(t)}function vb(t){return t.innerRadius}function _b(t){return t.outerRadius}function bb(t){return t.startAngle}function mb(t){return t.endAngle}function xb(t){return t&&t.padAngle}function wb(t,n,e,r,i,o,a,u){var c=e-t,f=r-n,s=a-i,l=u-o,h=l*c-s*f;if(!(h*h<lb))return[t+(h=(s*(n-o)-l*(t-i))/h)*c,n+h*f]}function Mb(t,n,e,r,i,o,a){var u=t-e,c=n-r,f=(a?o:-o)/sb(u*u+c*c),s=f*c,l=-f*u,h=t+s,d=n+l,p=e+s,g=r+l,y=(h+p)/2,v=(d+g)/2,_=p-h,b=g-d,m=_*_+b*b,x=i-o,w=h*g-p*d,M=(b<0?-1:1)*sb(ub(0,x*x*m-w*w)),A=(w*b-_*M)/m,T=(-w*_-b*M)/m,S=(w*b+_*M)/m,E=(-w*_+b*M)/m,k=A-y,N=T-v,C=S-y,P=E-v;return k*k+N*N>C*C+P*P&&(A=S,T=E),{cx:A,cy:T,x01:-s,y01:-l,x11:A*(i/x-1),y11:T*(i/x-1)}}var Ab=Array.prototype.slice;function Tb(t){return"object"==typeof t&&"length"in t?t:Array.from(t)}function Sb(t){this._context=t}function Eb(t){return new Sb(t)}function kb(t){return t[0]}function Nb(t){return t[1]}function Cb(t,n){var e=rb(!0),r=null,i=Eb,o=null;function a(a){var u,c,f,s=(a=Tb(a)).length,l=!1;for(null==r&&(o=i(f=fa())),u=0;u<=s;++u)!(u<s&&e(c=a[u],u,a))===l&&((l=!l)?o.lineStart():o.lineEnd()),l&&o.point(+t(c,u,a),+n(c,u,a));if(f)return o=null,f+""||null}return t="function"==typeof t?t:void 0===t?kb:rb(t),n="function"==typeof n?n:void 0===n?Nb:rb(n),a.x=function(n){return arguments.length?(t="function"==typeof n?n:rb(+n),a):t},a.y=function(t){return arguments.length?(n="function"==typeof t?t:rb(+t),a):n},a.defined=function(t){return arguments.length?(e="function"==typeof t?t:rb(!!t),a):e},a.curve=function(t){return arguments.length?(i=t,null!=r&&(o=i(r)),a):i},a.context=function(t){return arguments.length?(null==t?r=o=null:o=i(r=t),a):r},a}function Pb(t,n,e){var r=null,i=rb(!0),o=null,a=Eb,u=null;function c(c){var f,s,l,h,d,p=(c=Tb(c)).length,g=!1,y=new Array(p),v=new Array(p);for(null==o&&(u=a(d=fa())),f=0;f<=p;++f){if(!(f<p&&i(h=c[f],f,c))===g)if(g=!g)s=f,u.areaStart(),u.lineStart();else{for(u.lineEnd(),u.lineStart(),l=f-1;l>=s;--l)u.point(y[l],v[l]);u.lineEnd(),u.areaEnd()}g&&(y[f]=+t(h,f,c),v[f]=+n(h,f,c),u.point(r?+r(h,f,c):y[f],e?+e(h,f,c):v[f]))}if(d)return u=null,d+""||null}function f(){return Cb().defined(i).curve(a).context(o)}return t="function"==typeof t?t:void 0===t?kb:rb(+t),n="function"==typeof n?n:rb(void 0===n?0:+n),e="function"==typeof e?e:void 0===e?Nb:rb(+e),c.x=function(n){return arguments.length?(t="function"==typeof n?n:rb(+n),r=null,c):t},c.x0=function(n){return arguments.length?(t="function"==typeof n?n:rb(+n),c):t},c.x1=function(t){return arguments.length?(r=null==t?null:"function"==typeof t?t:rb(+t),c):r},c.y=function(t){return arguments.length?(n="function"==typeof t?t:rb(+t),e=null,c):n},c.y0=function(t){return arguments.length?(n="function"==typeof t?t:rb(+t),c):n},c.y1=function(t){return arguments.length?(e=null==t?null:"function"==typeof t?t:rb(+t),c):e},c.lineX0=c.lineY0=function(){return f().x(t).y(n)},c.lineY1=function(){return f().x(t).y(e)},c.lineX1=function(){return f().x(r).y(n)},c.defined=function(t){return arguments.length?(i="function"==typeof t?t:rb(!!t),c):i},c.curve=function(t){return arguments.length?(a=t,null!=o&&(u=a(o)),c):a},c.context=function(t){return arguments.length?(null==t?o=u=null:u=a(o=t),c):o},c}function zb(t,n){return n<t?-1:n>t?1:n>=t?0:NaN}function Db(t){return t}Sb.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2;default:this._context.lineTo(t,n)}}};var qb=Fb(Eb);function Rb(t){this._curve=t}function Fb(t){function n(n){return new Rb(t(n))}return n._curve=t,n}function Ob(t){var n=t.curve;return t.angle=t.x,delete t.x,t.radius=t.y,delete t.y,t.curve=function(t){return arguments.length?n(Fb(t)):n()._curve},t}function Ib(){return Ob(Cb().curve(qb))}function Ub(){var t=Pb().curve(qb),n=t.curve,e=t.lineX0,r=t.lineX1,i=t.lineY0,o=t.lineY1;return t.angle=t.x,delete t.x,t.startAngle=t.x0,delete t.x0,t.endAngle=t.x1,delete t.x1,t.radius=t.y,delete t.y,t.innerRadius=t.y0,delete t.y0,t.outerRadius=t.y1,delete t.y1,t.lineStartAngle=function(){return Ob(e())},delete t.lineX0,t.lineEndAngle=function(){return Ob(r())},delete t.lineX1,t.lineInnerRadius=function(){return Ob(i())},delete t.lineY0,t.lineOuterRadius=function(){return Ob(o())},delete t.lineY1,t.curve=function(t){return arguments.length?n(Fb(t)):n()._curve},t}function Bb(t,n){return[(n=+n)*Math.cos(t-=Math.PI/2),n*Math.sin(t)]}function Yb(t){return t.source}function Lb(t){return t.target}function jb(t){var n=Yb,e=Lb,r=kb,i=Nb,o=null;function a(){var a,u=Ab.call(arguments),c=n.apply(this,u),f=e.apply(this,u);if(o||(o=a=fa()),t(o,+r.apply(this,(u[0]=c,u)),+i.apply(this,u),+r.apply(this,(u[0]=f,u)),+i.apply(this,u)),a)return o=null,a+""||null}return a.source=function(t){return arguments.length?(n=t,a):n},a.target=function(t){return arguments.length?(e=t,a):e},a.x=function(t){return arguments.length?(r="function"==typeof t?t:rb(+t),a):r},a.y=function(t){return arguments.length?(i="function"==typeof t?t:rb(+t),a):i},a.context=function(t){return arguments.length?(o=null==t?null:t,a):o},a}function Hb(t,n,e,r,i){t.moveTo(n,e),t.bezierCurveTo(n=(n+r)/2,e,n,i,r,i)}function Xb(t,n,e,r,i){t.moveTo(n,e),t.bezierCurveTo(n,e=(e+i)/2,r,e,r,i)}function Gb(t,n,e,r,i){var o=Bb(n,e),a=Bb(n,e=(e+i)/2),u=Bb(r,e),c=Bb(r,i);t.moveTo(o[0],o[1]),t.bezierCurveTo(a[0],a[1],u[0],u[1],c[0],c[1])}Rb.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(t,n){this._curve.point(n*Math.sin(t),n*-Math.cos(t))}};var Vb={draw:function(t,n){var e=Math.sqrt(n/hb);t.moveTo(e,0),t.arc(0,0,e,0,pb)}},$b={draw:function(t,n){var e=Math.sqrt(n/5)/2;t.moveTo(-3*e,-e),t.lineTo(-e,-e),t.lineTo(-e,-3*e),t.lineTo(e,-3*e),t.lineTo(e,-e),t.lineTo(3*e,-e),t.lineTo(3*e,e),t.lineTo(e,e),t.lineTo(e,3*e),t.lineTo(-e,3*e),t.lineTo(-e,e),t.lineTo(-3*e,e),t.closePath()}},Wb=Math.sqrt(1/3),Zb=2*Wb,Kb={draw:function(t,n){var e=Math.sqrt(n/Zb),r=e*Wb;t.moveTo(0,-e),t.lineTo(r,0),t.lineTo(0,e),t.lineTo(-r,0),t.closePath()}},Qb=Math.sin(hb/10)/Math.sin(7*hb/10),Jb=Math.sin(pb/10)*Qb,tm=-Math.cos(pb/10)*Qb,nm={draw:function(t,n){var e=Math.sqrt(.8908130915292852*n),r=Jb*e,i=tm*e;t.moveTo(0,-e),t.lineTo(r,i);for(var o=1;o<5;++o){var a=pb*o/5,u=Math.cos(a),c=Math.sin(a);t.lineTo(c*e,-u*e),t.lineTo(u*r-c*i,c*r+u*i)}t.closePath()}},em={draw:function(t,n){var e=Math.sqrt(n),r=-e/2;t.rect(r,r,e,e)}},rm=Math.sqrt(3),im={draw:function(t,n){var e=-Math.sqrt(n/(3*rm));t.moveTo(0,2*e),t.lineTo(-rm*e,-e),t.lineTo(rm*e,-e),t.closePath()}},om=-.5,am=Math.sqrt(3)/2,um=1/Math.sqrt(12),cm=3*(um/2+1),fm={draw:function(t,n){var e=Math.sqrt(n/cm),r=e/2,i=e*um,o=r,a=e*um+e,u=-o,c=a;t.moveTo(r,i),t.lineTo(o,a),t.lineTo(u,c),t.lineTo(om*r-am*i,am*r+om*i),t.lineTo(om*o-am*a,am*o+om*a),t.lineTo(om*u-am*c,am*u+om*c),t.lineTo(om*r+am*i,om*i-am*r),t.lineTo(om*o+am*a,om*a-am*o),t.lineTo(om*u+am*c,om*c-am*u),t.closePath()}},sm=[Vb,$b,Kb,em,nm,im,fm];function lm(){}function hm(t,n,e){t._context.bezierCurveTo((2*t._x0+t._x1)/3,(2*t._y0+t._y1)/3,(t._x0+2*t._x1)/3,(t._y0+2*t._y1)/3,(t._x0+4*t._x1+n)/6,(t._y0+4*t._y1+e)/6)}function dm(t){this._context=t}function pm(t){this._context=t}function gm(t){this._context=t}dm.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:hm(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:hm(this,t,n)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=n}},pm.prototype={areaStart:lm,areaEnd:lm,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._x2=t,this._y2=n;break;case 1:this._point=2,this._x3=t,this._y3=n;break;case 2:this._point=3,this._x4=t,this._y4=n,this._context.moveTo((this._x0+4*this._x1+t)/6,(this._y0+4*this._y1+n)/6);break;default:hm(this,t,n)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=n}},gm.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var e=(this._x0+4*this._x1+t)/6,r=(this._y0+4*this._y1+n)/6;this._line?this._context.lineTo(e,r):this._context.moveTo(e,r);break;case 3:this._point=4;default:hm(this,t,n)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=n}};class ym{constructor(t,n){this._context=t,this._x=n}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line}point(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2;default:this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,n,t,n):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+n)/2,t,this._y0,t,n)}this._x0=t,this._y0=n}}function vm(t,n){this._basis=new dm(t),this._beta=n}vm.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var t=this._x,n=this._y,e=t.length-1;if(e>0)for(var r,i=t[0],o=n[0],a=t[e]-i,u=n[e]-o,c=-1;++c<=e;)r=c/e,this._basis.point(this._beta*t[c]+(1-this._beta)*(i+r*a),this._beta*n[c]+(1-this._beta)*(o+r*u));this._x=this._y=null,this._basis.lineEnd()},point:function(t,n){this._x.push(+t),this._y.push(+n)}};var _m=function t(n){function e(t){return 1===n?new dm(t):new vm(t,n)}return e.beta=function(n){return t(+n)},e}(.85);function bm(t,n,e){t._context.bezierCurveTo(t._x1+t._k*(t._x2-t._x0),t._y1+t._k*(t._y2-t._y0),t._x2+t._k*(t._x1-n),t._y2+t._k*(t._y1-e),t._x2,t._y2)}function mm(t,n){this._context=t,this._k=(1-n)/6}mm.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:bm(this,this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2,this._x1=t,this._y1=n;break;case 2:this._point=3;default:bm(this,t,n)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=n}};var xm=function t(n){function e(t){return new mm(t,n)}return e.tension=function(n){return t(+n)},e}(0);function wm(t,n){this._context=t,this._k=(1-n)/6}wm.prototype={areaStart:lm,areaEnd:lm,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._x3=t,this._y3=n;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=n);break;case 2:this._point=3,this._x5=t,this._y5=n;break;default:bm(this,t,n)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=n}};var Mm=function t(n){function e(t){return new wm(t,n)}return e.tension=function(n){return t(+n)},e}(0);function Am(t,n){this._context=t,this._k=(1-n)/6}Am.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:bm(this,t,n)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=n}};var Tm=function t(n){function e(t){return new Am(t,n)}return e.tension=function(n){return t(+n)},e}(0);function Sm(t,n,e){var r=t._x1,i=t._y1,o=t._x2,a=t._y2;if(t._l01_a>lb){var u=2*t._l01_2a+3*t._l01_a*t._l12_a+t._l12_2a,c=3*t._l01_a*(t._l01_a+t._l12_a);r=(r*u-t._x0*t._l12_2a+t._x2*t._l01_2a)/c,i=(i*u-t._y0*t._l12_2a+t._y2*t._l01_2a)/c}if(t._l23_a>lb){var f=2*t._l23_2a+3*t._l23_a*t._l12_a+t._l12_2a,s=3*t._l23_a*(t._l23_a+t._l12_a);o=(o*f+t._x1*t._l23_2a-n*t._l12_2a)/s,a=(a*f+t._y1*t._l23_2a-e*t._l12_2a)/s}t._context.bezierCurveTo(r,i,o,a,t._x2,t._y2)}function Em(t,n){this._context=t,this._alpha=n}Em.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){if(t=+t,n=+n,this._point){var e=this._x2-t,r=this._y2-n;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(e*e+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2;break;case 2:this._point=3;default:Sm(this,t,n)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=n}};var km=function t(n){function e(t){return n?new Em(t,n):new mm(t,0)}return e.alpha=function(n){return t(+n)},e}(.5);function Nm(t,n){this._context=t,this._alpha=n}Nm.prototype={areaStart:lm,areaEnd:lm,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,n){if(t=+t,n=+n,this._point){var e=this._x2-t,r=this._y2-n;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(e*e+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=t,this._y3=n;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=n);break;case 2:this._point=3,this._x5=t,this._y5=n;break;default:Sm(this,t,n)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=n}};var Cm=function t(n){function e(t){return n?new Nm(t,n):new wm(t,0)}return e.alpha=function(n){return t(+n)},e}(.5);function Pm(t,n){this._context=t,this._alpha=n}Pm.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){if(t=+t,n=+n,this._point){var e=this._x2-t,r=this._y2-n;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(e*e+r*r,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Sm(this,t,n)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=n}};var zm=function t(n){function e(t){return n?new Pm(t,n):new Am(t,0)}return e.alpha=function(n){return t(+n)},e}(.5);function Dm(t){this._context=t}function qm(t){return t<0?-1:1}function Rm(t,n,e){var r=t._x1-t._x0,i=n-t._x1,o=(t._y1-t._y0)/(r||i<0&&-0),a=(e-t._y1)/(i||r<0&&-0),u=(o*i+a*r)/(r+i);return(qm(o)+qm(a))*Math.min(Math.abs(o),Math.abs(a),.5*Math.abs(u))||0}function Fm(t,n){var e=t._x1-t._x0;return e?(3*(t._y1-t._y0)/e-n)/2:n}function Om(t,n,e){var r=t._x0,i=t._y0,o=t._x1,a=t._y1,u=(o-r)/3;t._context.bezierCurveTo(r+u,i+u*n,o-u,a-u*e,o,a)}function Im(t){this._context=t}function Um(t){this._context=new Bm(t)}function Bm(t){this._context=t}function Ym(t){this._context=t}function Lm(t){var n,e,r=t.length-1,i=new Array(r),o=new Array(r),a=new Array(r);for(i[0]=0,o[0]=2,a[0]=t[0]+2*t[1],n=1;n<r-1;++n)i[n]=1,o[n]=4,a[n]=4*t[n]+2*t[n+1];for(i[r-1]=2,o[r-1]=7,a[r-1]=8*t[r-1]+t[r],n=1;n<r;++n)e=i[n]/o[n-1],o[n]-=e,a[n]-=e*a[n-1];for(i[r-1]=a[r-1]/o[r-1],n=r-2;n>=0;--n)i[n]=(a[n]-i[n+1])/o[n];for(o[r-1]=(t[r]+i[r-1])/2,n=0;n<r-1;++n)o[n]=2*t[n+1]-i[n+1];return[i,o]}function jm(t,n){this._context=t,this._t=n}function Hm(t,n){if((i=t.length)>1)for(var e,r,i,o=1,a=t[n[0]],u=a.length;o<i;++o)for(r=a,a=t[n[o]],e=0;e<u;++e)a[e][1]+=a[e][0]=isNaN(r[e][1])?r[e][0]:r[e][1]}function Xm(t){for(var n=t.length,e=new Array(n);--n>=0;)e[n]=n;return e}function Gm(t,n){return t[n]}function Vm(t){const n=[];return n.key=t,n}function $m(t){var n=t.map(Wm);return Xm(t).sort((function(t,e){return n[t]-n[e]}))}function Wm(t){for(var n,e=-1,r=0,i=t.length,o=-1/0;++e<i;)(n=+t[e][1])>o&&(o=n,r=e);return r}function Zm(t){var n=t.map(Km);return Xm(t).sort((function(t,e){return n[t]-n[e]}))}function Km(t){for(var n,e=0,r=-1,i=t.length;++r<i;)(n=+t[r][1])&&(e+=n);return e}Dm.prototype={areaStart:lm,areaEnd:lm,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(t,n){t=+t,n=+n,this._point?this._context.lineTo(t,n):(this._point=1,this._context.moveTo(t,n))}},Im.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:Om(this,this._t0,Fm(this,this._t0))}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){var e=NaN;if(n=+n,(t=+t)!==this._x1||n!==this._y1){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2;break;case 2:this._point=3,Om(this,Fm(this,e=Rm(this,t,n)),e);break;default:Om(this,this._t0,e=Rm(this,t,n))}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=n,this._t0=e}}},(Um.prototype=Object.create(Im.prototype)).point=function(t,n){Im.prototype.point.call(this,n,t)},Bm.prototype={moveTo:function(t,n){this._context.moveTo(n,t)},closePath:function(){this._context.closePath()},lineTo:function(t,n){this._context.lineTo(n,t)},bezierCurveTo:function(t,n,e,r,i,o){this._context.bezierCurveTo(n,t,r,e,o,i)}},Ym.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var t=this._x,n=this._y,e=t.length;if(e)if(this._line?this._context.lineTo(t[0],n[0]):this._context.moveTo(t[0],n[0]),2===e)this._context.lineTo(t[1],n[1]);else for(var r=Lm(t),i=Lm(n),o=0,a=1;a<e;++o,++a)this._context.bezierCurveTo(r[0][o],i[0][o],r[1][o],i[1][o],t[a],n[a]);(this._line||0!==this._line&&1===e)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(t,n){this._x.push(+t),this._y.push(+n)}},jm.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&2===this._point&&this._context.lineTo(this._x,this._y),(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,n),this._context.lineTo(t,n);else{var e=this._x*(1-this._t)+t*this._t;this._context.lineTo(e,this._y),this._context.lineTo(e,n)}}this._x=t,this._y=n}};var Qm=t=>()=>t;function Jm(t,{sourceEvent:n,target:e,transform:r,dispatch:i}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},target:{value:e,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:i}})}function tx(t,n,e){this.k=t,this.x=n,this.y=e}tx.prototype={constructor:tx,scale:function(t){return 1===t?this:new tx(this.k*t,this.x,this.y)},translate:function(t,n){return 0===t&0===n?this:new tx(this.k,this.x+this.k*t,this.y+this.k*n)},apply:function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},applyX:function(t){return t*this.k+this.x},applyY:function(t){return t*this.k+this.y},invert:function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},invertX:function(t){return(t-this.x)/this.k},invertY:function(t){return(t-this.y)/this.k},rescaleX:function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},rescaleY:function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var nx=new tx(1,0,0);function ex(t){for(;!t.__zoom;)if(!(t=t.parentNode))return nx;return t.__zoom}function rx(t){t.stopImmediatePropagation()}function ix(t){t.preventDefault(),t.stopImmediatePropagation()}function ox(t){return!(t.ctrlKey&&"wheel"!==t.type||t.button)}function ax(){var t=this;return t instanceof SVGElement?(t=t.ownerSVGElement||t).hasAttribute("viewBox")?[[(t=t.viewBox.baseVal).x,t.y],[t.x+t.width,t.y+t.height]]:[[0,0],[t.width.baseVal.value,t.height.baseVal.value]]:[[0,0],[t.clientWidth,t.clientHeight]]}function ux(){return this.__zoom||nx}function cx(t){return-t.deltaY*(1===t.deltaMode?.05:t.deltaMode?1:.002)*(t.ctrlKey?10:1)}function fx(){return navigator.maxTouchPoints||"ontouchstart"in this}function sx(t,n,e){var r=t.invertX(n[0][0])-e[0][0],i=t.invertX(n[1][0])-e[1][0],o=t.invertY(n[0][1])-e[0][1],a=t.invertY(n[1][1])-e[1][1];return t.translate(i>r?(r+i)/2:Math.min(0,r)||Math.max(0,i),a>o?(o+a)/2:Math.min(0,o)||Math.max(0,a))}ex.prototype=tx.prototype,t.Adder=g,t.Delaunay=nu,t.FormatSpecifier=uc,t.InternMap=y,t.InternSet=v,t.Voronoi=Wa,t.active=function(t,n){var e,r,i=t.__transition;if(i)for(r in n=null==n?null:n+"",i)if((e=i[r]).state>1&&e.name===n)return new ji([[t]],_o,n,+r);return null},t.arc=function(){var t=vb,n=_b,e=rb(0),r=null,i=bb,o=mb,a=xb,u=null;function c(){var c,f,s=+t.apply(this,arguments),l=+n.apply(this,arguments),h=i.apply(this,arguments)-db,d=o.apply(this,arguments)-db,p=ib(d-h),g=d>h;if(u||(u=c=fa()),l<s&&(f=l,l=s,s=f),l>lb)if(p>pb-lb)u.moveTo(l*ab(h),l*fb(h)),u.arc(0,0,l,h,d,!g),s>lb&&(u.moveTo(s*ab(d),s*fb(d)),u.arc(0,0,s,d,h,g));else{var y,v,_=h,b=d,m=h,x=d,w=p,M=p,A=a.apply(this,arguments)/2,T=A>lb&&(r?+r.apply(this,arguments):sb(s*s+l*l)),S=cb(ib(l-s)/2,+e.apply(this,arguments)),E=S,k=S;if(T>lb){var N=yb(T/s*fb(A)),C=yb(T/l*fb(A));(w-=2*N)>lb?(m+=N*=g?1:-1,x-=N):(w=0,m=x=(h+d)/2),(M-=2*C)>lb?(_+=C*=g?1:-1,b-=C):(M=0,_=b=(h+d)/2)}var P=l*ab(_),z=l*fb(_),D=s*ab(x),q=s*fb(x);if(S>lb){var R,F=l*ab(b),O=l*fb(b),I=s*ab(m),U=s*fb(m);if(p<hb&&(R=wb(P,z,I,U,F,O,D,q))){var B=P-R[0],Y=z-R[1],L=F-R[0],j=O-R[1],H=1/fb(gb((B*L+Y*j)/(sb(B*B+Y*Y)*sb(L*L+j*j)))/2),X=sb(R[0]*R[0]+R[1]*R[1]);E=cb(S,(s-X)/(H-1)),k=cb(S,(l-X)/(H+1))}}M>lb?k>lb?(y=Mb(I,U,P,z,l,k,g),v=Mb(F,O,D,q,l,k,g),u.moveTo(y.cx+y.x01,y.cy+y.y01),k<S?u.arc(y.cx,y.cy,k,ob(y.y01,y.x01),ob(v.y01,v.x01),!g):(u.arc(y.cx,y.cy,k,ob(y.y01,y.x01),ob(y.y11,y.x11),!g),u.arc(0,0,l,ob(y.cy+y.y11,y.cx+y.x11),ob(v.cy+v.y11,v.cx+v.x11),!g),u.arc(v.cx,v.cy,k,ob(v.y11,v.x11),ob(v.y01,v.x01),!g))):(u.moveTo(P,z),u.arc(0,0,l,_,b,!g)):u.moveTo(P,z),s>lb&&w>lb?E>lb?(y=Mb(D,q,F,O,s,-E,g),v=Mb(P,z,I,U,s,-E,g),u.lineTo(y.cx+y.x01,y.cy+y.y01),E<S?u.arc(y.cx,y.cy,E,ob(y.y01,y.x01),ob(v.y01,v.x01),!g):(u.arc(y.cx,y.cy,E,ob(y.y01,y.x01),ob(y.y11,y.x11),!g),u.arc(0,0,s,ob(y.cy+y.y11,y.cx+y.x11),ob(v.cy+v.y11,v.cx+v.x11),g),u.arc(v.cx,v.cy,E,ob(v.y11,v.x11),ob(v.y01,v.x01),!g))):u.arc(0,0,s,x,m,g):u.lineTo(D,q)}else u.moveTo(0,0);if(u.closePath(),c)return u=null,c+""||null}return c.centroid=function(){var e=(+t.apply(this,arguments)+ +n.apply(this,arguments))/2,r=(+i.apply(this,arguments)+ +o.apply(this,arguments))/2-hb/2;return[ab(r)*e,fb(r)*e]},c.innerRadius=function(n){return arguments.length?(t="function"==typeof n?n:rb(+n),c):t},c.outerRadius=function(t){return arguments.length?(n="function"==typeof t?t:rb(+t),c):n},c.cornerRadius=function(t){return arguments.length?(e="function"==typeof t?t:rb(+t),c):e},c.padRadius=function(t){return arguments.length?(r=null==t?null:"function"==typeof t?t:rb(+t),c):r},c.startAngle=function(t){return arguments.length?(i="function"==typeof t?t:rb(+t),c):i},c.endAngle=function(t){return arguments.length?(o="function"==typeof t?t:rb(+t),c):o},c.padAngle=function(t){return arguments.length?(a="function"==typeof t?t:rb(+t),c):a},c.context=function(t){return arguments.length?(u=null==t?null:t,c):u},c},t.area=Pb,t.areaRadial=Ub,t.ascending=n,t.autoType=function(t){for(var n in t){var e,r,i=t[n].trim();if(i)if("true"===i)i=!0;else if("false"===i)i=!1;else if("NaN"===i)i=NaN;else if(isNaN(e=+i)){if(!(r=i.match(/^([-+]\d{2})?\d{4}(-\d{2}(-\d{2})?)?(T\d{2}:\d{2}(:\d{2}(\.\d{3})?)?(Z|[-+]\d{2}:\d{2})?)?$/)))continue;Tu&&r[4]&&!r[7]&&(i=i.replace(/-/g,"/").replace(/T/," ")),i=new Date(i)}else i=e;else i=null;t[n]=i}return t},t.axisBottom=function(t){return ht(3,t)},t.axisLeft=function(t){return ht(4,t)},t.axisRight=function(t){return ht(2,t)},t.axisTop=function(t){return ht(1,t)},t.bin=U,t.bisect=o,t.bisectCenter=u,t.bisectLeft=a,t.bisectRight=o,t.bisector=e,t.blob=function(t,n){return fetch(t,n).then(Su)},t.brush=function(){return Go(qo)},t.brushSelection=function(t){var n=t.__brush;return n?n.dim.output(n.selection):null},t.brushX=function(){return Go(zo)},t.brushY=function(){return Go(Do)},t.buffer=function(t,n){return fetch(t,n).then(Eu)},t.chord=function(){return ra(!1,!1)},t.chordDirected=function(){return ra(!0,!1)},t.chordTranspose=function(){return ra(!1,!0)},t.cluster=function(){var t=Yh,n=1,e=1,r=!1;function i(i){var o,a=0;i.eachAfter((function(n){var e=n.children;e?(n.x=function(t){return t.reduce(Lh,0)/t.length}(e),n.y=function(t){return 1+t.reduce(jh,0)}(e)):(n.x=o?a+=t(n,o):0,n.y=0,o=n)}));var u=function(t){for(var n;n=t.children;)t=n[0];return t}(i),c=function(t){for(var n;n=t.children;)t=n[n.length-1];return t}(i),f=u.x-t(u,c)/2,s=c.x+t(c,u)/2;return i.eachAfter(r?function(t){t.x=(t.x-i.x)*n,t.y=(i.y-t.y)*e}:function(t){t.x=(t.x-f)/(s-f)*n,t.y=(1-(i.y?t.y/i.y:1))*e})}return i.separation=function(n){return arguments.length?(t=n,i):t},i.size=function(t){return arguments.length?(r=!1,n=+t[0],e=+t[1],i):r?null:[n,e]},i.nodeSize=function(t){return arguments.length?(r=!0,n=+t[0],e=+t[1],i):r?[n,e]:null},i},t.color=de,t.contourDensity=function(){var t=Pa,n=za,e=Da,r=960,i=500,o=20,a=2,u=3*o,c=r+2*u>>a,f=i+2*u>>a,s=wa(20);function l(r){var i=new Float32Array(c*f),l=new Float32Array(c*f);r.forEach((function(r,o,s){var l=+t(r,o,s)+u>>a,h=+n(r,o,s)+u>>a,d=+e(r,o,s);l>=0&&l<c&&h>=0&&h<f&&(i[l+h*c]+=d)})),Na({width:c,height:f,data:i},{width:c,height:f,data:l},o>>a),Ca({width:c,height:f,data:l},{width:c,height:f,data:i},o>>a),Na({width:c,height:f,data:i},{width:c,height:f,data:l},o>>a),Ca({width:c,height:f,data:l},{width:c,height:f,data:i},o>>a),Na({width:c,height:f,data:i},{width:c,height:f,data:l},o>>a),Ca({width:c,height:f,data:l},{width:c,height:f,data:i},o>>a);var d=s(i);if(!Array.isArray(d)){var p=B(i);d=F(0,p,d),(d=Z(0,Math.floor(p/d)*d,d)).shift()}return ka().thresholds(d).size([c,f])(i).map(h)}function h(t){return t.value*=Math.pow(2,-2*a),t.coordinates.forEach(d),t}function d(t){t.forEach(p)}function p(t){t.forEach(g)}function g(t){t[0]=t[0]*Math.pow(2,a)-u,t[1]=t[1]*Math.pow(2,a)-u}function y(){return c=r+2*(u=3*o)>>a,f=i+2*u>>a,l}return l.x=function(n){return arguments.length?(t="function"==typeof n?n:wa(+n),l):t},l.y=function(t){return arguments.length?(n="function"==typeof t?t:wa(+t),l):n},l.weight=function(t){return arguments.length?(e="function"==typeof t?t:wa(+t),l):e},l.size=function(t){if(!arguments.length)return[r,i];var n=+t[0],e=+t[1];if(!(n>=0&&e>=0))throw new Error("invalid size");return r=n,i=e,y()},l.cellSize=function(t){if(!arguments.length)return 1<<a;if(!((t=+t)>=1))throw new Error("invalid cell size");return a=Math.floor(Math.log(t)/Math.LN2),y()},l.thresholds=function(t){return arguments.length?(s="function"==typeof t?t:Array.isArray(t)?wa(ma.call(t)):wa(t),l):s},l.bandwidth=function(t){if(!arguments.length)return Math.sqrt(o*(o+1));if(!((t=+t)>=0))throw new Error("invalid bandwidth");return o=Math.round((Math.sqrt(4*t*t+1)-1)/2),y()},l},t.contours=ka,t.count=c,t.create=function(t){return Dn(At(t).call(document.documentElement))},t.creator=At,t.cross=function(...t){const n="function"==typeof t[t.length-1]&&function(t){return n=>t(...n)}(t.pop()),e=(t=t.map(l)).map(f),r=t.length-1,i=new Array(r+1).fill(0),o=[];if(r<0||e.some(s))return o;for(;;){o.push(i.map(((n,e)=>t[e][n])));let a=r;for(;++i[a]===e[a];){if(0===a)return n?o.map(n):o;i[a--]=0}}},t.csv=Pu,t.csvFormat=hu,t.csvFormatBody=du,t.csvFormatRow=gu,t.csvFormatRows=pu,t.csvFormatValue=yu,t.csvParse=su,t.csvParseRows=lu,t.cubehelix=tr,t.cumsum=function(t,n){var e=0,r=0;return Float64Array.from(t,void 0===n?t=>e+=+t||0:i=>e+=+n(i,r++,t)||0)},t.curveBasis=function(t){return new dm(t)},t.curveBasisClosed=function(t){return new pm(t)},t.curveBasisOpen=function(t){return new gm(t)},t.curveBumpX=function(t){return new ym(t,!0)},t.curveBumpY=function(t){return new ym(t,!1)},t.curveBundle=_m,t.curveCardinal=xm,t.curveCardinalClosed=Mm,t.curveCardinalOpen=Tm,t.curveCatmullRom=km,t.curveCatmullRomClosed=Cm,t.curveCatmullRomOpen=zm,t.curveLinear=Eb,t.curveLinearClosed=function(t){return new Dm(t)},t.curveMonotoneX=function(t){return new Im(t)},t.curveMonotoneY=function(t){return new Um(t)},t.curveNatural=function(t){return new Ym(t)},t.curveStep=function(t){return new jm(t,.5)},t.curveStepAfter=function(t){return new jm(t,1)},t.curveStepBefore=function(t){return new jm(t,0)},t.descending=function(t,n){return n<t?-1:n>t?1:n>=t?0:NaN},t.deviation=d,t.difference=function(t,...n){t=new Set(t);for(const e of n)for(const n of e)t.delete(n);return t},t.disjoint=function(t,n){const e=n[Symbol.iterator](),r=new Set;for(const n of t){if(r.has(n))return!1;let t,i;for(;({value:t,done:i}=e.next())&&!i;){if(Object.is(n,t))return!1;r.add(t)}}return!0},t.dispatch=pt,t.drag=function(){var t,n,e,r,i=Xn,o=Gn,a=Vn,u=$n,c={},f=pt("start","drag","end"),s=0,l=0;function h(t){t.on("mousedown.drag",d).filter(u).on("touchstart.drag",y).on("touchmove.drag",v).on("touchend.drag touchcancel.drag",_).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function d(a,u){if(!r&&i.call(this,a,u)){var c=b(this,o.call(this,a,u),a,u,"mouse");c&&(Dn(a.view).on("mousemove.drag",p,!0).on("mouseup.drag",g,!0),Yn(a.view),Un(a),e=!1,t=a.clientX,n=a.clientY,c("start",a))}}function p(r){if(Bn(r),!e){var i=r.clientX-t,o=r.clientY-n;e=i*i+o*o>l}c.mouse("drag",r)}function g(t){Dn(t.view).on("mousemove.drag mouseup.drag",null),Ln(t.view,e),Bn(t),c.mouse("end",t)}function y(t,n){if(i.call(this,t,n)){var e,r,a=t.changedTouches,u=o.call(this,t,n),c=a.length;for(e=0;e<c;++e)(r=b(this,u,t,n,a[e].identifier,a[e]))&&(Un(t),r("start",t,a[e]))}}function v(t){var n,e,r=t.changedTouches,i=r.length;for(n=0;n<i;++n)(e=c[r[n].identifier])&&(Bn(t),e("drag",t,r[n]))}function _(t){var n,e,i=t.changedTouches,o=i.length;for(r&&clearTimeout(r),r=setTimeout((function(){r=null}),500),n=0;n<o;++n)(e=c[i[n].identifier])&&(Un(t),e("end",t,i[n]))}function b(t,n,e,r,i,o){var u,l,d,p=f.copy(),g=In(o||e,n);if(null!=(d=a.call(t,new Hn("beforestart",{sourceEvent:e,target:h,identifier:i,active:s,x:g[0],y:g[1],dx:0,dy:0,dispatch:p}),r)))return u=d.x-g[0]||0,l=d.y-g[1]||0,function e(o,a,f){var y,v=g;switch(o){case"start":c[i]=e,y=s++;break;case"end":delete c[i],--s;case"drag":g=In(f||a,n),y=s}p.call(o,t,new Hn(o,{sourceEvent:a,subject:d,target:h,identifier:i,active:y,x:g[0]+u,y:g[1]+l,dx:g[0]-v[0],dy:g[1]-v[1],dispatch:p}),r)}}return h.filter=function(t){return arguments.length?(i="function"==typeof t?t:jn(!!t),h):i},h.container=function(t){return arguments.length?(o="function"==typeof t?t:jn(t),h):o},h.subject=function(t){return arguments.length?(a="function"==typeof t?t:jn(t),h):a},h.touchable=function(t){return arguments.length?(u="function"==typeof t?t:jn(!!t),h):u},h.on=function(){var t=f.on.apply(f,arguments);return t===f?h:t},h.clickDistance=function(t){return arguments.length?(l=(t=+t)*t,h):Math.sqrt(l)},h},t.dragDisable=Yn,t.dragEnable=Ln,t.dsv=function(t,n,e,r){3===arguments.length&&"function"==typeof e&&(r=e,e=void 0);var i=cu(t);return Nu(n,e).then((function(t){return i.parse(t,r)}))},t.dsvFormat=cu,t.easeBack=so,t.easeBackIn=co,t.easeBackInOut=so,t.easeBackOut=fo,t.easeBounce=ao,t.easeBounceIn=function(t){return 1-ao(1-t)},t.easeBounceInOut=function(t){return((t*=2)<=1?1-ao(1-t):ao(t-1)+1)/2},t.easeBounceOut=ao,t.easeCircle=ro,t.easeCircleIn=function(t){return 1-Math.sqrt(1-t*t)},t.easeCircleInOut=ro,t.easeCircleOut=function(t){return Math.sqrt(1- --t*t)},t.easeCubic=$i,t.easeCubicIn=function(t){return t*t*t},t.easeCubicInOut=$i,t.easeCubicOut=function(t){return--t*t*t+1},t.easeElastic=po,t.easeElasticIn=ho,t.easeElasticInOut=go,t.easeElasticOut=po,t.easeExp=eo,t.easeExpIn=function(t){return no(1-+t)},t.easeExpInOut=eo,t.easeExpOut=function(t){return 1-no(t)},t.easeLinear=t=>+t,t.easePoly=Ki,t.easePolyIn=Wi,t.easePolyInOut=Ki,t.easePolyOut=Zi,t.easeQuad=Vi,t.easeQuadIn=function(t){return t*t},t.easeQuadInOut=Vi,t.easeQuadOut=function(t){return t*(2-t)},t.easeSin=to,t.easeSinIn=function(t){return 1==+t?1:1-Math.cos(t*Ji)},t.easeSinInOut=to,t.easeSinOut=function(t){return Math.sin(t*Ji)},t.every=function(t,n){if("function"!=typeof n)throw new TypeError("test is not a function");let e=-1;for(const r of t)if(!n(r,++e,t))return!1;return!0},t.extent=p,t.fcumsum=function(t,n){const e=new g;let r=-1;return Float64Array.from(t,void 0===n?t=>e.add(+t||0):i=>e.add(+n(i,++r,t)||0))},t.filter=function(t,n){if("function"!=typeof n)throw new TypeError("test is not a function");const e=[];let r=-1;for(const i of t)n(i,++r,t)&&e.push(i);return e},t.forceCenter=function(t,n){var e,r=1;function i(){var i,o,a=e.length,u=0,c=0;for(i=0;i<a;++i)u+=(o=e[i]).x,c+=o.y;for(u=(u/a-t)*r,c=(c/a-n)*r,i=0;i<a;++i)(o=e[i]).x-=u,o.y-=c}return null==t&&(t=0),null==n&&(n=0),i.initialize=function(t){e=t},i.x=function(n){return arguments.length?(t=+n,i):t},i.y=function(t){return arguments.length?(n=+t,i):n},i.strength=function(t){return arguments.length?(r=+t,i):r},i},t.forceCollide=function(t){var n,e,r,i=1,o=1;function a(){for(var t,a,c,f,s,l,h,d=n.length,p=0;p<o;++p)for(a=Lu(n,$u,Wu).visitAfter(u),t=0;t<d;++t)c=n[t],l=e[c.index],h=l*l,f=c.x+c.vx,s=c.y+c.vy,a.visit(g);function g(t,n,e,o,a){var u=t.data,d=t.r,p=l+d;if(!u)return n>f+p||o<f-p||e>s+p||a<s-p;if(u.index>c.index){var g=f-u.x-u.vx,y=s-u.y-u.vy,v=g*g+y*y;v<p*p&&(0===g&&(v+=(g=Vu(r))*g),0===y&&(v+=(y=Vu(r))*y),v=(p-(v=Math.sqrt(v)))/v*i,c.vx+=(g*=v)*(p=(d*=d)/(h+d)),c.vy+=(y*=v)*p,u.vx-=g*(p=1-p),u.vy-=y*p)}}}function u(t){if(t.data)return t.r=e[t.data.index];for(var n=t.r=0;n<4;++n)t[n]&&t[n].r>t.r&&(t.r=t[n].r)}function c(){if(n){var r,i,o=n.length;for(e=new Array(o),r=0;r<o;++r)i=n[r],e[i.index]=+t(i,r,n)}}return"function"!=typeof t&&(t=Gu(null==t?1:+t)),a.initialize=function(t,e){n=t,r=e,c()},a.iterations=function(t){return arguments.length?(o=+t,a):o},a.strength=function(t){return arguments.length?(i=+t,a):i},a.radius=function(n){return arguments.length?(t="function"==typeof n?n:Gu(+n),c(),a):t},a},t.forceLink=function(t){var n,e,r,i,o,a,u=Zu,c=function(t){return 1/Math.min(i[t.source.index],i[t.target.index])},f=Gu(30),s=1;function l(r){for(var i=0,u=t.length;i<s;++i)for(var c,f,l,h,d,p,g,y=0;y<u;++y)f=(c=t[y]).source,h=(l=c.target).x+l.vx-f.x-f.vx||Vu(a),d=l.y+l.vy-f.y-f.vy||Vu(a),h*=p=((p=Math.sqrt(h*h+d*d))-e[y])/p*r*n[y],d*=p,l.vx-=h*(g=o[y]),l.vy-=d*g,f.vx+=h*(g=1-g),f.vy+=d*g}function h(){if(r){var a,c,f=r.length,s=t.length,l=new Map(r.map(((t,n)=>[u(t,n,r),t])));for(a=0,i=new Array(f);a<s;++a)(c=t[a]).index=a,"object"!=typeof c.source&&(c.source=Ku(l,c.source)),"object"!=typeof c.target&&(c.target=Ku(l,c.target)),i[c.source.index]=(i[c.source.index]||0)+1,i[c.target.index]=(i[c.target.index]||0)+1;for(a=0,o=new Array(s);a<s;++a)c=t[a],o[a]=i[c.source.index]/(i[c.source.index]+i[c.target.index]);n=new Array(s),d(),e=new Array(s),p()}}function d(){if(r)for(var e=0,i=t.length;e<i;++e)n[e]=+c(t[e],e,t)}function p(){if(r)for(var n=0,i=t.length;n<i;++n)e[n]=+f(t[n],n,t)}return null==t&&(t=[]),l.initialize=function(t,n){r=t,a=n,h()},l.links=function(n){return arguments.length?(t=n,h(),l):t},l.id=function(t){return arguments.length?(u=t,l):u},l.iterations=function(t){return arguments.length?(s=+t,l):s},l.strength=function(t){return arguments.length?(c="function"==typeof t?t:Gu(+t),d(),l):c},l.distance=function(t){return arguments.length?(f="function"==typeof t?t:Gu(+t),p(),l):f},l},t.forceManyBody=function(){var t,n,e,r,i,o=Gu(-30),a=1,u=1/0,c=.81;function f(e){var i,o=t.length,a=Lu(t,Ju,tc).visitAfter(l);for(r=e,i=0;i<o;++i)n=t[i],a.visit(h)}function s(){if(t){var n,e,r=t.length;for(i=new Array(r),n=0;n<r;++n)e=t[n],i[e.index]=+o(e,n,t)}}function l(t){var n,e,r,o,a,u=0,c=0;if(t.length){for(r=o=a=0;a<4;++a)(n=t[a])&&(e=Math.abs(n.value))&&(u+=n.value,c+=e,r+=e*n.x,o+=e*n.y);t.x=r/c,t.y=o/c}else{(n=t).x=n.data.x,n.y=n.data.y;do{u+=i[n.data.index]}while(n=n.next)}t.value=u}function h(t,o,f,s){if(!t.value)return!0;var l=t.x-n.x,h=t.y-n.y,d=s-o,p=l*l+h*h;if(d*d/c<p)return p<u&&(0===l&&(p+=(l=Vu(e))*l),0===h&&(p+=(h=Vu(e))*h),p<a&&(p=Math.sqrt(a*p)),n.vx+=l*t.value*r/p,n.vy+=h*t.value*r/p),!0;if(!(t.length||p>=u)){(t.data!==n||t.next)&&(0===l&&(p+=(l=Vu(e))*l),0===h&&(p+=(h=Vu(e))*h),p<a&&(p=Math.sqrt(a*p)));do{t.data!==n&&(d=i[t.data.index]*r/p,n.vx+=l*d,n.vy+=h*d)}while(t=t.next)}}return f.initialize=function(n,r){t=n,e=r,s()},f.strength=function(t){return arguments.length?(o="function"==typeof t?t:Gu(+t),s(),f):o},f.distanceMin=function(t){return arguments.length?(a=t*t,f):Math.sqrt(a)},f.distanceMax=function(t){return arguments.length?(u=t*t,f):Math.sqrt(u)},f.theta=function(t){return arguments.length?(c=t*t,f):Math.sqrt(c)},f},t.forceRadial=function(t,n,e){var r,i,o,a=Gu(.1);function u(t){for(var a=0,u=r.length;a<u;++a){var c=r[a],f=c.x-n||1e-6,s=c.y-e||1e-6,l=Math.sqrt(f*f+s*s),h=(o[a]-l)*i[a]*t/l;c.vx+=f*h,c.vy+=s*h}}function c(){if(r){var n,e=r.length;for(i=new Array(e),o=new Array(e),n=0;n<e;++n)o[n]=+t(r[n],n,r),i[n]=isNaN(o[n])?0:+a(r[n],n,r)}}return"function"!=typeof t&&(t=Gu(+t)),null==n&&(n=0),null==e&&(e=0),u.initialize=function(t){r=t,c()},u.strength=function(t){return arguments.length?(a="function"==typeof t?t:Gu(+t),c(),u):a},u.radius=function(n){return arguments.length?(t="function"==typeof n?n:Gu(+n),c(),u):t},u.x=function(t){return arguments.length?(n=+t,u):n},u.y=function(t){return arguments.length?(e=+t,u):e},u},t.forceSimulation=function(t){var n,e=1,r=.001,i=1-Math.pow(r,1/300),o=0,a=.6,u=new Map,c=ri(l),f=pt("tick","end"),s=function(){let t=1;return()=>(t=(1664525*t+1013904223)%Qu)/Qu}();function l(){h(),f.call("tick",n),e<r&&(c.stop(),f.call("end",n))}function h(r){var c,f,s=t.length;void 0===r&&(r=1);for(var l=0;l<r;++l)for(e+=(o-e)*i,u.forEach((function(t){t(e)})),c=0;c<s;++c)null==(f=t[c]).fx?f.x+=f.vx*=a:(f.x=f.fx,f.vx=0),null==f.fy?f.y+=f.vy*=a:(f.y=f.fy,f.vy=0);return n}function d(){for(var n,e=0,r=t.length;e<r;++e){if((n=t[e]).index=e,null!=n.fx&&(n.x=n.fx),null!=n.fy&&(n.y=n.fy),isNaN(n.x)||isNaN(n.y)){var i=10*Math.sqrt(.5+e),o=e*nc;n.x=i*Math.cos(o),n.y=i*Math.sin(o)}(isNaN(n.vx)||isNaN(n.vy))&&(n.vx=n.vy=0)}}function p(n){return n.initialize&&n.initialize(t,s),n}return null==t&&(t=[]),d(),n={tick:h,restart:function(){return c.restart(l),n},stop:function(){return c.stop(),n},nodes:function(e){return arguments.length?(t=e,d(),u.forEach(p),n):t},alpha:function(t){return arguments.length?(e=+t,n):e},alphaMin:function(t){return arguments.length?(r=+t,n):r},alphaDecay:function(t){return arguments.length?(i=+t,n):+i},alphaTarget:function(t){return arguments.length?(o=+t,n):o},velocityDecay:function(t){return arguments.length?(a=1-t,n):1-a},randomSource:function(t){return arguments.length?(s=t,u.forEach(p),n):s},force:function(t,e){return arguments.length>1?(null==e?u.delete(t):u.set(t,p(e)),n):u.get(t)},find:function(n,e,r){var i,o,a,u,c,f=0,s=t.length;for(null==r?r=1/0:r*=r,f=0;f<s;++f)(a=(i=n-(u=t[f]).x)*i+(o=e-u.y)*o)<r&&(c=u,r=a);return c},on:function(t,e){return arguments.length>1?(f.on(t,e),n):f.on(t)}}},t.forceX=function(t){var n,e,r,i=Gu(.1);function o(t){for(var i,o=0,a=n.length;o<a;++o)(i=n[o]).vx+=(r[o]-i.x)*e[o]*t}function a(){if(n){var o,a=n.length;for(e=new Array(a),r=new Array(a),o=0;o<a;++o)e[o]=isNaN(r[o]=+t(n[o],o,n))?0:+i(n[o],o,n)}}return"function"!=typeof t&&(t=Gu(null==t?0:+t)),o.initialize=function(t){n=t,a()},o.strength=function(t){return arguments.length?(i="function"==typeof t?t:Gu(+t),a(),o):i},o.x=function(n){return arguments.length?(t="function"==typeof n?n:Gu(+n),a(),o):t},o},t.forceY=function(t){var n,e,r,i=Gu(.1);function o(t){for(var i,o=0,a=n.length;o<a;++o)(i=n[o]).vy+=(r[o]-i.y)*e[o]*t}function a(){if(n){var o,a=n.length;for(e=new Array(a),r=new Array(a),o=0;o<a;++o)e[o]=isNaN(r[o]=+t(n[o],o,n))?0:+i(n[o],o,n)}}return"function"!=typeof t&&(t=Gu(null==t?0:+t)),o.initialize=function(t){n=t,a()},o.strength=function(t){return arguments.length?(i="function"==typeof t?t:Gu(+t),a(),o):i},o.y=function(n){return arguments.length?(t="function"==typeof n?n:Gu(+n),a(),o):t},o},t.formatDefaultLocale=gc,t.formatLocale=pc,t.formatSpecifier=ac,t.fsum=function(t,n){const e=new g;if(void 0===n)for(let n of t)(n=+n)&&e.add(n);else{let r=-1;for(let i of t)(i=+n(i,++r,t))&&e.add(i)}return+e},t.geoAlbers=bh,t.geoAlbersUsa=function(){var t,n,e,r,i,o,a=bh(),u=_h().rotate([154,0]).center([-2,58.5]).parallels([55,65]),c=_h().rotate([157,0]).center([-3,19.9]).parallels([8,18]),f={point:function(t,n){o=[t,n]}};function s(t){var n=t[0],a=t[1];return o=null,e.point(n,a),o||(r.point(n,a),o)||(i.point(n,a),o)}function l(){return t=n=null,s}return s.invert=function(t){var n=a.scale(),e=a.translate(),r=(t[0]-e[0])/n,i=(t[1]-e[1])/n;return(i>=.12&&i<.234&&r>=-.425&&r<-.214?u:i>=.166&&i<.234&&r>=-.214&&r<-.115?c:a).invert(t)},s.stream=function(e){return t&&n===e?t:(r=[a.stream(n=e),u.stream(e),c.stream(e)],i=r.length,t={point:function(t,n){for(var e=-1;++e<i;)r[e].point(t,n)},sphere:function(){for(var t=-1;++t<i;)r[t].sphere()},lineStart:function(){for(var t=-1;++t<i;)r[t].lineStart()},lineEnd:function(){for(var t=-1;++t<i;)r[t].lineEnd()},polygonStart:function(){for(var t=-1;++t<i;)r[t].polygonStart()},polygonEnd:function(){for(var t=-1;++t<i;)r[t].polygonEnd()}});var r,i},s.precision=function(t){return arguments.length?(a.precision(t),u.precision(t),c.precision(t),l()):a.precision()},s.scale=function(t){return arguments.length?(a.scale(t),u.scale(.35*t),c.scale(t),s.translate(a.translate())):a.scale()},s.translate=function(t){if(!arguments.length)return a.translate();var n=a.scale(),o=+t[0],s=+t[1];return e=a.translate(t).clipExtent([[o-.455*n,s-.238*n],[o+.455*n,s+.238*n]]).stream(f),r=u.translate([o-.307*n,s+.201*n]).clipExtent([[o-.425*n+bc,s+.12*n+bc],[o-.214*n-bc,s+.234*n-bc]]).stream(f),i=c.translate([o-.205*n,s+.212*n]).clipExtent([[o-.214*n+bc,s+.166*n+bc],[o-.115*n-bc,s+.234*n-bc]]).stream(f),l()},s.fitExtent=function(t,n){return ah(s,t,n)},s.fitSize=function(t,n){return uh(s,t,n)},s.fitWidth=function(t,n){return ch(s,t,n)},s.fitHeight=function(t,n){return fh(s,t,n)},s.scale(1070)},t.geoArea=function(t){return pf=new g,Wc(t,gf),2*pf},t.geoAzimuthalEqualArea=function(){return ph(wh).scale(124.75).clipAngle(179.999)},t.geoAzimuthalEqualAreaRaw=wh,t.geoAzimuthalEquidistant=function(){return ph(Mh).scale(79.4188).clipAngle(179.999)},t.geoAzimuthalEquidistantRaw=Mh,t.geoBounds=function(t){var n,e,r,i,o,a,u;if(of=rf=-(nf=ef=1/0),lf=[],Wc(t,jf),e=lf.length){for(lf.sort(Qf),n=1,o=[r=lf[0]];n<e;++n)Jf(r,(i=lf[n])[0])||Jf(r,i[1])?(Kf(r[0],i[1])>Kf(r[0],r[1])&&(r[1]=i[1]),Kf(i[0],r[1])>Kf(r[0],r[1])&&(r[0]=i[0])):o.push(r=i);for(a=-1/0,n=0,r=o[e=o.length-1];n<=e;r=i,++n)i=o[n],(u=Kf(r[1],i[0]))>a&&(a=u,nf=i[0],rf=r[1])}return lf=hf=null,nf===1/0||ef===1/0?[[NaN,NaN],[NaN,NaN]]:[[nf,ef],[rf,of]]},t.geoCentroid=function(t){Ef=kf=Nf=Cf=Pf=zf=Df=qf=0,Rf=new g,Ff=new g,Of=new g,Wc(t,ts);var n=+Rf,e=+Ff,r=+Of,i=Dc(n,e,r);return i<mc&&(n=zf,e=Df,r=qf,kf<bc&&(n=Nf,e=Cf,r=Pf),(i=Dc(n,e,r))<mc)?[NaN,NaN]:[Nc(e,n)*Tc,Yc(r/i)*Tc]},t.geoCircle=function(){var t,n,e=ls([0,0]),r=ls(90),i=ls(6),o={point:function(e,r){t.push(e=n(e,r)),e[0]*=Tc,e[1]*=Tc}};function a(){var a=e.apply(this,arguments),u=r.apply(this,arguments)*Sc,c=i.apply(this,arguments)*Sc;return t=[],n=ps(-a[0]*Sc,-a[1]*Sc,0).invert,bs(o,u,c,1),a={type:"Polygon",coordinates:[t]},t=n=null,a}return a.center=function(t){return arguments.length?(e="function"==typeof t?t:ls([+t[0],+t[1]]),a):e},a.radius=function(t){return arguments.length?(r="function"==typeof t?t:ls(+t),a):r},a.precision=function(t){return arguments.length?(i="function"==typeof t?t:ls(+t),a):i},a},t.geoClipAntimeridian=Ps,t.geoClipCircle=zs,t.geoClipExtent=function(){var t,n,e,r=0,i=0,o=960,a=500;return e={stream:function(e){return t&&n===e?t:t=Us(r,i,o,a)(n=e)},extent:function(u){return arguments.length?(r=+u[0][0],i=+u[0][1],o=+u[1][0],a=+u[1][1],t=n=null,e):[[r,i],[o,a]]}}},t.geoClipRectangle=Us,t.geoConicConformal=function(){return yh(Eh).scale(109.5).parallels([30,30])},t.geoConicConformalRaw=Eh,t.geoConicEqualArea=_h,t.geoConicEqualAreaRaw=vh,t.geoConicEquidistant=function(){return yh(Nh).scale(131.154).center([0,13.9389])},t.geoConicEquidistantRaw=Nh,t.geoContains=function(t,n){return(t&&$s.hasOwnProperty(t.type)?$s[t.type]:Zs)(t,n)},t.geoDistance=Vs,t.geoEqualEarth=function(){return ph(Rh).scale(177.158)},t.geoEqualEarthRaw=Rh,t.geoEquirectangular=function(){return ph(kh).scale(152.63)},t.geoEquirectangularRaw=kh,t.geoGnomonic=function(){return ph(Fh).scale(144.049).clipAngle(60)},t.geoGnomonicRaw=Fh,t.geoGraticule=il,t.geoGraticule10=function(){return il()()},t.geoIdentity=function(){var t,n,e,r,i,o,a,u=1,c=0,f=0,s=1,l=1,h=0,d=null,p=1,g=1,y=rh({point:function(t,n){var e=b([t,n]);this.stream.point(e[0],e[1])}}),v=fl;function _(){return p=u*s,g=u*l,o=a=null,b}function b(e){var r=e[0]*p,i=e[1]*g;if(h){var o=i*t-r*n;r=r*t+i*n,i=o}return[r+c,i+f]}return b.invert=function(e){var r=e[0]-c,i=e[1]-f;if(h){var o=i*t+r*n;r=r*t-i*n,i=o}return[r/p,i/g]},b.stream=function(t){return o&&a===t?o:o=y(v(a=t))},b.postclip=function(t){return arguments.length?(v=t,d=e=r=i=null,_()):v},b.clipExtent=function(t){return arguments.length?(v=null==t?(d=e=r=i=null,fl):Us(d=+t[0][0],e=+t[0][1],r=+t[1][0],i=+t[1][1]),_()):null==d?null:[[d,e],[r,i]]},b.scale=function(t){return arguments.length?(u=+t,_()):u},b.translate=function(t){return arguments.length?(c=+t[0],f=+t[1],_()):[c,f]},b.angle=function(e){return arguments.length?(n=Fc(h=e%360*Sc),t=Cc(h),_()):h*Tc},b.reflectX=function(t){return arguments.length?(s=t?-1:1,_()):s<0},b.reflectY=function(t){return arguments.length?(l=t?-1:1,_()):l<0},b.fitExtent=function(t,n){return ah(b,t,n)},b.fitSize=function(t,n){return uh(b,t,n)},b.fitWidth=function(t,n){return ch(b,t,n)},b.fitHeight=function(t,n){return fh(b,t,n)},b},t.geoInterpolate=function(t,n){var e=t[0]*Sc,r=t[1]*Sc,i=n[0]*Sc,o=n[1]*Sc,a=Cc(r),u=Fc(r),c=Cc(o),f=Fc(o),s=a*Cc(e),l=a*Fc(e),h=c*Cc(i),d=c*Fc(i),p=2*Yc(Ic(Lc(o-r)+a*c*Lc(i-e))),g=Fc(p),y=p?function(t){var n=Fc(t*=p)/g,e=Fc(p-t)/g,r=e*s+n*h,i=e*l+n*d,o=e*u+n*f;return[Nc(i,r)*Tc,Nc(o,Ic(r*r+i*i))*Tc]}:function(){return[e*Tc,r*Tc]};return y.distance=p,y},t.geoLength=Hs,t.geoMercator=function(){return Th(Ah).scale(961/Ac)},t.geoMercatorRaw=Ah,t.geoNaturalEarth1=function(){return ph(Oh).scale(175.295)},t.geoNaturalEarth1Raw=Oh,t.geoOrthographic=function(){return ph(Ih).scale(249.5).clipAngle(90.000001)},t.geoOrthographicRaw=Ih,t.geoPath=function(t,n){var e,r,i=4.5;function o(t){return t&&("function"==typeof i&&r.pointRadius(+i.apply(this,arguments)),Wc(t,e(r))),r.result()}return o.area=function(t){return Wc(t,e(hl)),hl.result()},o.measure=function(t){return Wc(t,e(Ql)),Ql.result()},o.bounds=function(t){return Wc(t,e(xl)),xl.result()},o.centroid=function(t){return Wc(t,e(Rl)),Rl.result()},o.projection=function(n){return arguments.length?(e=null==n?(t=null,fl):(t=n).stream,o):t},o.context=function(t){return arguments.length?(r=null==t?(n=null,new nh):new Xl(n=t),"function"!=typeof i&&r.pointRadius(i),o):n},o.pointRadius=function(t){return arguments.length?(i="function"==typeof t?t:(r.pointRadius(+t),+t),o):i},o.projection(t).context(n)},t.geoProjection=ph,t.geoProjectionMutator=gh,t.geoRotation=_s,t.geoStereographic=function(){return ph(Uh).scale(250).clipAngle(142)},t.geoStereographicRaw=Uh,t.geoStream=Wc,t.geoTransform=function(t){return{stream:rh(t)}},t.geoTransverseMercator=function(){var t=Th(Bh),n=t.center,e=t.rotate;return t.center=function(t){return arguments.length?n([-t[1],t[0]]):[(t=n())[1],-t[0]]},t.rotate=function(t){return arguments.length?e([t[0],t[1],t.length>2?t[2]+90:90]):[(t=e())[0],t[1],t[2]-90]},e([0,0,90]).scale(159.155)},t.geoTransverseMercatorRaw=Bh,t.gray=function(t,n){return new Fe(t,0,0,null==n?1:n)},t.greatest=function(t,e=n){let r,i=!1;if(1===e.length){let o;for(const a of t){const t=e(a);(i?n(t,o)>0:0===n(t,t))&&(r=a,o=t,i=!0)}}else for(const n of t)(i?e(n,r)>0:0===e(n,n))&&(r=n,i=!0);return r},t.greatestIndex=function(t,e=n){if(1===e.length)return G(t,e);let r,i=-1,o=-1;for(const n of t)++o,(i<0?0===e(n,n):e(n,r)>0)&&(r=n,i=o);return i},t.group=M,t.groupSort=function(t,e,r){return(1===e.length?k(A(t,e,r),(([t,e],[r,i])=>n(e,i)||n(t,r))):k(M(t,r),(([t,r],[i,o])=>e(r,o)||n(t,i)))).map((([t])=>t))},t.groups=function(t,...n){return S(t,Array.from,w,n)},t.hcl=Le,t.hierarchy=Xh,t.histogram=U,t.hsl=Ae,t.html=Fu,t.image=function(t,n){return new Promise((function(e,r){var i=new Image;for(var o in n)i[o]=n[o];i.onerror=r,i.onload=function(){e(i)},i.src=t}))},t.index=function(t,...n){return S(t,w,T,n)},t.indexes=function(t,...n){return S(t,Array.from,T,n)},t.interpolate=Mr,t.interpolateArray=function(t,n){return(gr(n)?pr:yr)(t,n)},t.interpolateBasis=rr,t.interpolateBasisClosed=ir,t.interpolateBlues=q_,t.interpolateBrBG=Gv,t.interpolateBuGn=s_,t.interpolateBuPu=h_,t.interpolateCividis=function(t){return t=Math.max(0,Math.min(1,t)),"rgb("+Math.max(0,Math.min(255,Math.round(-4.54-t*(35.34-t*(2381.73-t*(6402.7-t*(7024.72-2710.57*t)))))))+", "+Math.max(0,Math.min(255,Math.round(32.49+t*(170.73+t*(52.82-t*(131.46-t*(176.58-67.37*t)))))))+", "+Math.max(0,Math.min(255,Math.round(81.24+t*(442.36-t*(2482.43-t*(6167.24-t*(6614.94-2475.67*t)))))))+")"},t.interpolateCool=V_,t.interpolateCubehelix=Yr,t.interpolateCubehelixDefault=X_,t.interpolateCubehelixLong=Lr,t.interpolateDate=vr,t.interpolateDiscrete=function(t){var n=t.length;return function(e){return t[Math.max(0,Math.min(n-1,Math.floor(e*n)))]}},t.interpolateGnBu=p_,t.interpolateGreens=F_,t.interpolateGreys=I_,t.interpolateHcl=Ir,t.interpolateHclLong=Ur,t.interpolateHsl=Rr,t.interpolateHslLong=Fr,t.interpolateHue=function(t,n){var e=ur(+t,+n);return function(t){var n=e(t);return n-360*Math.floor(n/360)}},t.interpolateInferno=nb,t.interpolateLab=function(t,n){var e=fr((t=Re(t)).l,(n=Re(n)).l),r=fr(t.a,n.a),i=fr(t.b,n.b),o=fr(t.opacity,n.opacity);return function(n){return t.l=e(n),t.a=r(n),t.b=i(n),t.opacity=o(n),t+""}},t.interpolateMagma=tb,t.interpolateNumber=_r,t.interpolateNumberArray=pr,t.interpolateObject=br,t.interpolateOrRd=y_,t.interpolateOranges=H_,t.interpolatePRGn=$v,t.interpolatePiYG=Zv,t.interpolatePlasma=eb,t.interpolatePuBu=m_,t.interpolatePuBuGn=__,t.interpolatePuOr=Qv,t.interpolatePuRd=w_,t.interpolatePurples=B_,t.interpolateRainbow=function(t){(t<0||t>1)&&(t-=Math.floor(t));var n=Math.abs(t-.5);return $_.h=360*t-100,$_.s=1.5-1.5*n,$_.l=.8-.9*n,$_+""},t.interpolateRdBu=t_,t.interpolateRdGy=e_,t.interpolateRdPu=A_,t.interpolateRdYlBu=i_,t.interpolateRdYlGn=a_,t.interpolateReds=L_,t.interpolateRgb=sr,t.interpolateRgbBasis=hr,t.interpolateRgbBasisClosed=dr,t.interpolateRound=Ar,t.interpolateSinebow=function(t){var n;return t=(.5-t)*Math.PI,W_.r=255*(n=Math.sin(t))*n,W_.g=255*(n=Math.sin(t+Z_))*n,W_.b=255*(n=Math.sin(t+K_))*n,W_+""},t.interpolateSpectral=c_,t.interpolateString=wr,t.interpolateTransformCss=Cr,t.interpolateTransformSvg=Pr,t.interpolateTurbo=function(t){return t=Math.max(0,Math.min(1,t)),"rgb("+Math.max(0,Math.min(255,Math.round(34.61+t*(1172.33-t*(10793.56-t*(33300.12-t*(38394.49-14825.05*t)))))))+", "+Math.max(0,Math.min(255,Math.round(23.31+t*(557.33+t*(1225.33-t*(3574.96-t*(1073.77+707.56*t)))))))+", "+Math.max(0,Math.min(255,Math.round(27.2+t*(3211.1-t*(15327.97-t*(27814-t*(22569.18-6838.66*t)))))))+")"},t.interpolateViridis=J_,t.interpolateWarm=G_,t.interpolateYlGn=k_,t.interpolateYlGnBu=S_,t.interpolateYlOrBr=C_,t.interpolateYlOrRd=z_,t.interpolateZoom=Dr,t.interrupt=gi,t.intersection=function(t,...n){t=new Set(t),n=n.map(et);t:for(const e of t)for(const r of n)if(!r.has(e)){t.delete(e);continue t}return t},t.interval=function(t,n,e){var r=new ei,i=n;return null==n?(r.restart(t,n,e),r):(r._restart=r.restart,r.restart=function(t,n,e){n=+n,e=null==e?ti():+e,r._restart((function o(a){a+=i,r._restart(o,i+=n,e),t(a)}),n,e)},r.restart(t,n,e),r)},t.isoFormat=Mv,t.isoParse=Av,t.json=function(t,n){return fetch(t,n).then(Du)},t.lab=Re,t.lch=function(t,n,e,r){return 1===arguments.length?Ye(t):new je(e,n,t,null==r?1:r)},t.least=function(t,e=n){let r,i=!1;if(1===e.length){let o;for(const a of t){const t=e(a);(i?n(t,o)<0:0===n(t,t))&&(r=a,o=t,i=!0)}}else for(const n of t)(i?e(n,r)<0:0===e(n,n))&&(r=n,i=!0);return r},t.leastIndex=K,t.line=Cb,t.lineRadial=Ib,t.linkHorizontal=function(){return jb(Hb)},t.linkRadial=function(){var t=jb(Gb);return t.angle=t.x,delete t.x,t.radius=t.y,delete t.y,t},t.linkVertical=function(){return jb(Xb)},t.local=Rn,t.map=function(t,n){if("function"!=typeof t[Symbol.iterator])throw new TypeError("values is not iterable");if("function"!=typeof n)throw new TypeError("mapper is not a function");return Array.from(t,((e,r)=>n(e,r,t)))},t.matcher=Ct,t.max=B,t.maxIndex=G,t.mean=function(t,n){let e=0,r=0;if(void 0===n)for(let n of t)null!=n&&(n=+n)>=n&&(++e,r+=n);else{let i=-1;for(let o of t)null!=(o=n(o,++i,t))&&(o=+o)>=o&&(++e,r+=o)}if(e)return r/e},t.median=function(t,n){return H(t,.5,n)},t.merge=V,t.min=Y,t.minIndex=$,t.namespace=xt,t.namespaces=mt,t.nice=O,t.now=ti,t.pack=function(){var t=null,n=1,e=1,r=hd;function i(i){return i.x=n/2,i.y=e/2,t?i.eachBefore(gd(t)).eachAfter(yd(r,.5)).eachBefore(vd(1)):i.eachBefore(gd(pd)).eachAfter(yd(hd,1)).eachAfter(yd(r,i.r/Math.min(n,e))).eachBefore(vd(Math.min(n,e)/(2*i.r))),i}return i.radius=function(n){return arguments.length?(t=sd(n),i):t},i.size=function(t){return arguments.length?(n=+t[0],e=+t[1],i):[n,e]},i.padding=function(t){return arguments.length?(r="function"==typeof t?t:dd(+t),i):r},i},t.packEnclose=Kh,t.packSiblings=function(t){return fd(t),t},t.pairs=function(t,n=W){const e=[];let r,i=!1;for(const o of t)i&&e.push(n(r,o)),r=o,i=!0;return e},t.partition=function(){var t=1,n=1,e=0,r=!1;function i(i){var o=i.height+1;return i.x0=i.y0=e,i.x1=t,i.y1=n/o,i.eachBefore(function(t,n){return function(r){r.children&&bd(r,r.x0,t*(r.depth+1)/n,r.x1,t*(r.depth+2)/n);var i=r.x0,o=r.y0,a=r.x1-e,u=r.y1-e;a<i&&(i=a=(i+a)/2),u<o&&(o=u=(o+u)/2),r.x0=i,r.y0=o,r.x1=a,r.y1=u}}(n,o)),r&&i.eachBefore(_d),i}return i.round=function(t){return arguments.length?(r=!!t,i):r},i.size=function(e){return arguments.length?(t=+e[0],n=+e[1],i):[t,n]},i.padding=function(t){return arguments.length?(e=+t,i):e},i},t.path=fa,t.permute=E,t.pie=function(){var t=Db,n=zb,e=null,r=rb(0),i=rb(pb),o=rb(0);function a(a){var u,c,f,s,l,h=(a=Tb(a)).length,d=0,p=new Array(h),g=new Array(h),y=+r.apply(this,arguments),v=Math.min(pb,Math.max(-pb,i.apply(this,arguments)-y)),_=Math.min(Math.abs(v)/h,o.apply(this,arguments)),b=_*(v<0?-1:1);for(u=0;u<h;++u)(l=g[p[u]=u]=+t(a[u],u,a))>0&&(d+=l);for(null!=n?p.sort((function(t,e){return n(g[t],g[e])})):null!=e&&p.sort((function(t,n){return e(a[t],a[n])})),u=0,f=d?(v-h*b)/d:0;u<h;++u,y=s)c=p[u],s=y+((l=g[c])>0?l*f:0)+b,g[c]={data:a[c],index:u,value:l,startAngle:y,endAngle:s,padAngle:_};return g}return a.value=function(n){return arguments.length?(t="function"==typeof n?n:rb(+n),a):t},a.sortValues=function(t){return arguments.length?(n=t,e=null,a):n},a.sort=function(t){return arguments.length?(e=t,n=null,a):e},a.startAngle=function(t){return arguments.length?(r="function"==typeof t?t:rb(+t),a):r},a.endAngle=function(t){return arguments.length?(i="function"==typeof t?t:rb(+t),a):i},a.padAngle=function(t){return arguments.length?(o="function"==typeof t?t:rb(+t),a):o},a},t.piecewise=jr,t.pointRadial=Bb,t.pointer=In,t.pointers=function(t,n){return t.target&&(t=On(t),void 0===n&&(n=t.currentTarget),t=t.touches||[t]),Array.from(t,(t=>In(t,n)))},t.polygonArea=function(t){for(var n,e=-1,r=t.length,i=t[r-1],o=0;++e<r;)n=i,i=t[e],o+=n[1]*i[0]-n[0]*i[1];return o/2},t.polygonCentroid=function(t){for(var n,e,r=-1,i=t.length,o=0,a=0,u=t[i-1],c=0;++r<i;)n=u,u=t[r],c+=e=n[0]*u[1]-u[0]*n[1],o+=(n[0]+u[0])*e,a+=(n[1]+u[1])*e;return[o/(c*=3),a/c]},t.polygonContains=function(t,n){for(var e,r,i=t.length,o=t[i-1],a=n[0],u=n[1],c=o[0],f=o[1],s=!1,l=0;l<i;++l)e=(o=t[l])[0],(r=o[1])>u!=f>u&&a<(c-e)*(u-r)/(f-r)+e&&(s=!s),c=e,f=r;return s},t.polygonHull=function(t){if((e=t.length)<3)return null;var n,e,r=new Array(e),i=new Array(e);for(n=0;n<e;++n)r[n]=[+t[n][0],+t[n][1],n];for(r.sort(Fd),n=0;n<e;++n)i[n]=[r[n][0],-r[n][1]];var o=Od(r),a=Od(i),u=a[0]===o[0],c=a[a.length-1]===o[o.length-1],f=[];for(n=o.length-1;n>=0;--n)f.push(t[r[o[n]][2]]);for(n=+u;n<a.length-c;++n)f.push(t[r[a[n]][2]]);return f},t.polygonLength=function(t){for(var n,e,r=-1,i=t.length,o=t[i-1],a=o[0],u=o[1],c=0;++r<i;)n=a,e=u,n-=a=(o=t[r])[0],e-=u=o[1],c+=Math.hypot(n,e);return c},t.precisionFixed=yc,t.precisionPrefix=vc,t.precisionRound=_c,t.quadtree=Lu,t.quantile=H,t.quantileSorted=X,t.quantize=function(t,n){for(var e=new Array(n),r=0;r<n;++r)e[r]=t(r/(n-1));return e},t.quickselect=L,t.radialArea=Ub,t.radialLine=Ib,t.randomBates=Hd,t.randomBernoulli=Vd,t.randomBeta=Zd,t.randomBinomial=Kd,t.randomCauchy=Jd,t.randomExponential=Xd,t.randomGamma=Wd,t.randomGeometric=$d,t.randomInt=Bd,t.randomIrwinHall=jd,t.randomLcg=function(t=Math.random()){let n=0|(0<=t&&t<1?t/ep:Math.abs(t));return()=>(n=1664525*n+1013904223|0,ep*(n>>>0))},t.randomLogNormal=Ld,t.randomLogistic=tp,t.randomNormal=Yd,t.randomPareto=Gd,t.randomPoisson=np,t.randomUniform=Ud,t.randomWeibull=Qd,t.range=Z,t.reduce=function(t,n,e){if("function"!=typeof n)throw new TypeError("reducer is not a function");const r=t[Symbol.iterator]();let i,o,a=-1;if(arguments.length<3){if(({done:i,value:e}=r.next()),i)return;++a}for(;({done:i,value:o}=r.next()),!i;)e=n(e,o,++a,t);return e},t.reverse=function(t){if("function"!=typeof t[Symbol.iterator])throw new TypeError("values is not iterable");return Array.from(t).reverse()},t.rgb=ve,t.ribbon=function(){return ba()},t.ribbonArrow=function(){return ba(_a)},t.rollup=A,t.rollups=function(t,n,...e){return S(t,Array.from,n,e)},t.scaleBand=up,t.scaleDiverging=function t(){var n=bp(Pv()(lp));return n.copy=function(){return Nv(n,t())},ip.apply(n,arguments)},t.scaleDivergingLog=function t(){var n=Ep(Pv()).domain([.1,1,10]);return n.copy=function(){return Nv(n,t()).base(n.base())},ip.apply(n,arguments)},t.scaleDivergingPow=zv,t.scaleDivergingSqrt=function(){return zv.apply(null,arguments).exponent(.5)},t.scaleDivergingSymlog=function t(){var n=Cp(Pv());return n.copy=function(){return Nv(n,t()).constant(n.constant())},ip.apply(n,arguments)},t.scaleIdentity=function t(n){var e;function r(t){return null==t||isNaN(t=+t)?e:t}return r.invert=r,r.domain=r.range=function(t){return arguments.length?(n=Array.from(t,fp),r):n.slice()},r.unknown=function(t){return arguments.length?(e=t,r):e},r.copy=function(){return t(n).unknown(e)},n=arguments.length?Array.from(n,fp):[0,1],bp(r)},t.scaleImplicit=op,t.scaleLinear=function t(){var n=vp();return n.copy=function(){return gp(n,t())},rp.apply(n,arguments),bp(n)},t.scaleLog=function t(){var n=Ep(yp()).domain([1,10]);return n.copy=function(){return gp(n,t()).base(n.base())},rp.apply(n,arguments),n},t.scaleOrdinal=ap,t.scalePoint=function(){return cp(up.apply(null,arguments).paddingInner(1))},t.scalePow=Rp,t.scaleQuantile=function t(){var e,r=[],i=[],a=[];function u(){var t=0,n=Math.max(1,i.length);for(a=new Array(n-1);++t<n;)a[t-1]=X(r,t/n);return c}function c(t){return null==t||isNaN(t=+t)?e:i[o(a,t)]}return c.invertExtent=function(t){var n=i.indexOf(t);return n<0?[NaN,NaN]:[n>0?a[n-1]:r[0],n<a.length?a[n]:r[r.length-1]]},c.domain=function(t){if(!arguments.length)return r.slice();r=[];for(let n of t)null==n||isNaN(n=+n)||r.push(n);return r.sort(n),u()},c.range=function(t){return arguments.length?(i=Array.from(t),u()):i.slice()},c.unknown=function(t){return arguments.length?(e=t,c):e},c.quantiles=function(){return a.slice()},c.copy=function(){return t().domain(r).range(i).unknown(e)},rp.apply(c,arguments)},t.scaleQuantize=function t(){var n,e=0,r=1,i=1,a=[.5],u=[0,1];function c(t){return null!=t&&t<=t?u[o(a,t,0,i)]:n}function f(){var t=-1;for(a=new Array(i);++t<i;)a[t]=((t+1)*r-(t-i)*e)/(i+1);return c}return c.domain=function(t){return arguments.length?([e,r]=t,e=+e,r=+r,f()):[e,r]},c.range=function(t){return arguments.length?(i=(u=Array.from(t)).length-1,f()):u.slice()},c.invertExtent=function(t){var n=u.indexOf(t);return n<0?[NaN,NaN]:n<1?[e,a[0]]:n>=i?[a[i-1],r]:[a[n-1],a[n]]},c.unknown=function(t){return arguments.length?(n=t,c):c},c.thresholds=function(){return a.slice()},c.copy=function(){return t().domain([e,r]).range(u).unknown(n)},rp.apply(bp(c),arguments)},t.scaleRadial=function t(){var n,e=vp(),r=[0,1],i=!1;function o(t){var r=Op(e(t));return isNaN(r)?n:i?Math.round(r):r}return o.invert=function(t){return e.invert(Fp(t))},o.domain=function(t){return arguments.length?(e.domain(t),o):e.domain()},o.range=function(t){return arguments.length?(e.range((r=Array.from(t,fp)).map(Fp)),o):r.slice()},o.rangeRound=function(t){return o.range(t).round(!0)},o.round=function(t){return arguments.length?(i=!!t,o):i},o.clamp=function(t){return arguments.length?(e.clamp(t),o):e.clamp()},o.unknown=function(t){return arguments.length?(n=t,o):n},o.copy=function(){return t(e.domain(),r).round(i).clamp(e.clamp()).unknown(n)},rp.apply(o,arguments),bp(o)},t.scaleSequential=function t(){var n=bp(kv()(lp));return n.copy=function(){return Nv(n,t())},ip.apply(n,arguments)},t.scaleSequentialLog=function t(){var n=Ep(kv()).domain([1,10]);return n.copy=function(){return Nv(n,t()).base(n.base())},ip.apply(n,arguments)},t.scaleSequentialPow=Cv,t.scaleSequentialQuantile=function t(){var e=[],r=lp;function i(t){if(null!=t&&!isNaN(t=+t))return r((o(e,t,1)-1)/(e.length-1))}return i.domain=function(t){if(!arguments.length)return e.slice();e=[];for(let n of t)null==n||isNaN(n=+n)||e.push(n);return e.sort(n),i},i.interpolator=function(t){return arguments.length?(r=t,i):r},i.range=function(){return e.map(((t,n)=>r(n/(e.length-1))))},i.quantiles=function(t){return Array.from({length:t+1},((n,r)=>H(e,r/t)))},i.copy=function(){return t(r).domain(e)},ip.apply(i,arguments)},t.scaleSequentialSqrt=function(){return Cv.apply(null,arguments).exponent(.5)},t.scaleSequentialSymlog=function t(){var n=Cp(kv());return n.copy=function(){return Nv(n,t()).constant(n.constant())},ip.apply(n,arguments)},t.scaleSqrt=function(){return Rp.apply(null,arguments).exponent(.5)},t.scaleSymlog=function t(){var n=Cp(yp());return n.copy=function(){return gp(n,t()).constant(n.constant())},rp.apply(n,arguments)},t.scaleThreshold=function t(){var n,e=[.5],r=[0,1],i=1;function a(t){return null!=t&&t<=t?r[o(e,t,0,i)]:n}return a.domain=function(t){return arguments.length?(e=Array.from(t),i=Math.min(e.length,r.length-1),a):e.slice()},a.range=function(t){return arguments.length?(r=Array.from(t),i=Math.min(e.length,r.length-1),a):r.slice()},a.invertExtent=function(t){var n=r.indexOf(t);return[e[n-1],e[n]]},a.unknown=function(t){return arguments.length?(n=t,a):n},a.copy=function(){return t().domain(e).range(r).unknown(n)},rp.apply(a,arguments)},t.scaleTime=function(){return rp.apply(Ev(Kg,Qg,xg,bg,og,eg,tg,Qp,Zp,t.timeFormat).domain([new Date(2e3,0,1),new Date(2e3,0,2)]),arguments)},t.scaleUtc=function(){return rp.apply(Ev(Wg,Zg,Gg,Hg,Cg,Eg,Tg,Mg,Zp,t.utcFormat).domain([Date.UTC(2e3,0,1),Date.UTC(2e3,0,2)]),arguments)},t.scan=function(t,n){const e=K(t,n);return e<0?void 0:e},t.schemeAccent=Rv,t.schemeBlues=D_,t.schemeBrBG=Xv,t.schemeBuGn=f_,t.schemeBuPu=l_,t.schemeCategory10=qv,t.schemeDark2=Fv,t.schemeGnBu=d_,t.schemeGreens=R_,t.schemeGreys=O_,t.schemeOrRd=g_,t.schemeOranges=j_,t.schemePRGn=Vv,t.schemePaired=Ov,t.schemePastel1=Iv,t.schemePastel2=Uv,t.schemePiYG=Wv,t.schemePuBu=b_,t.schemePuBuGn=v_,t.schemePuOr=Kv,t.schemePuRd=x_,t.schemePurples=U_,t.schemeRdBu=Jv,t.schemeRdGy=n_,t.schemeRdPu=M_,t.schemeRdYlBu=r_,t.schemeRdYlGn=o_,t.schemeReds=Y_,t.schemeSet1=Bv,t.schemeSet2=Yv,t.schemeSet3=Lv,t.schemeSpectral=u_,t.schemeTableau10=jv,t.schemeYlGn=E_,t.schemeYlGnBu=T_,t.schemeYlOrBr=N_,t.schemeYlOrRd=P_,t.select=Dn,t.selectAll=function(t){return"string"==typeof t?new Pn([document.querySelectorAll(t)],[document.documentElement]):new Pn([null==t?[]:Et(t)],Cn)},t.selection=zn,t.selector=St,t.selectorAll=Nt,t.shuffle=Q,t.shuffler=J,t.some=function(t,n){if("function"!=typeof n)throw new TypeError("test is not a function");let e=-1;for(const r of t)if(n(r,++e,t))return!0;return!1},t.sort=k,t.stack=function(){var t=rb([]),n=Xm,e=Hm,r=Gm;function i(i){var o,a,u=Array.from(t.apply(this,arguments),Vm),c=u.length,f=-1;for(const t of i)for(o=0,++f;o<c;++o)(u[o][f]=[0,+r(t,u[o].key,f,i)]).data=t;for(o=0,a=Tb(n(u));o<c;++o)u[a[o]].index=o;return e(u,a),u}return i.keys=function(n){return arguments.length?(t="function"==typeof n?n:rb(Array.from(n)),i):t},i.value=function(t){return arguments.length?(r="function"==typeof t?t:rb(+t),i):r},i.order=function(t){return arguments.length?(n=null==t?Xm:"function"==typeof t?t:rb(Array.from(t)),i):n},i.offset=function(t){return arguments.length?(e=null==t?Hm:t,i):e},i},t.stackOffsetDiverging=function(t,n){if((u=t.length)>0)for(var e,r,i,o,a,u,c=0,f=t[n[0]].length;c<f;++c)for(o=a=0,e=0;e<u;++e)(i=(r=t[n[e]][c])[1]-r[0])>0?(r[0]=o,r[1]=o+=i):i<0?(r[1]=a,r[0]=a+=i):(r[0]=0,r[1]=i)},t.stackOffsetExpand=function(t,n){if((r=t.length)>0){for(var e,r,i,o=0,a=t[0].length;o<a;++o){for(i=e=0;e<r;++e)i+=t[e][o][1]||0;if(i)for(e=0;e<r;++e)t[e][o][1]/=i}Hm(t,n)}},t.stackOffsetNone=Hm,t.stackOffsetSilhouette=function(t,n){if((e=t.length)>0){for(var e,r=0,i=t[n[0]],o=i.length;r<o;++r){for(var a=0,u=0;a<e;++a)u+=t[a][r][1]||0;i[r][1]+=i[r][0]=-u/2}Hm(t,n)}},t.stackOffsetWiggle=function(t,n){if((i=t.length)>0&&(r=(e=t[n[0]]).length)>0){for(var e,r,i,o=0,a=1;a<r;++a){for(var u=0,c=0,f=0;u<i;++u){for(var s=t[n[u]],l=s[a][1]||0,h=(l-(s[a-1][1]||0))/2,d=0;d<u;++d){var p=t[n[d]];h+=(p[a][1]||0)-(p[a-1][1]||0)}c+=l,f+=h*l}e[a-1][1]+=e[a-1][0]=o,c&&(o-=f/c)}e[a-1][1]+=e[a-1][0]=o,Hm(t,n)}},t.stackOrderAppearance=$m,t.stackOrderAscending=Zm,t.stackOrderDescending=function(t){return Zm(t).reverse()},t.stackOrderInsideOut=function(t){var n,e,r=t.length,i=t.map(Km),o=$m(t),a=0,u=0,c=[],f=[];for(n=0;n<r;++n)e=o[n],a<u?(a+=i[e],c.push(e)):(u+=i[e],f.push(e));return f.reverse().concat(c)},t.stackOrderNone=Xm,t.stackOrderReverse=function(t){return Xm(t).reverse()},t.stratify=function(){var t=wd,n=Md;function e(e){var r,i,o,a,u,c,f,s=Array.from(e),l=s.length,h=new Map;for(i=0;i<l;++i)r=s[i],u=s[i]=new Zh(r),null!=(c=t(r,i,e))&&(c+="")&&(f=u.id=c,h.set(f,h.has(f)?xd:u)),null!=(c=n(r,i,e))&&(c+="")&&(u.parent=c);for(i=0;i<l;++i)if(c=(u=s[i]).parent){if(!(a=h.get(c)))throw new Error("missing: "+c);if(a===xd)throw new Error("ambiguous: "+c);a.children?a.children.push(u):a.children=[u],u.parent=a}else{if(o)throw new Error("multiple roots");o=u}if(!o)throw new Error("no root");if(o.parent=md,o.eachBefore((function(t){t.depth=t.parent.depth+1,--l})).eachBefore(Wh),o.parent=null,l>0)throw new Error("cycle");return o}return e.id=function(n){return arguments.length?(t=ld(n),e):t},e.parentId=function(t){return arguments.length?(n=ld(t),e):n},e},t.style=Jt,t.subset=function(t,n){return rt(n,t)},t.sum=function(t,n){let e=0;if(void 0===n)for(let n of t)(n=+n)&&(e+=n);else{let r=-1;for(let i of t)(i=+n(i,++r,t))&&(e+=i)}return e},t.superset=rt,t.svg=Ou,t.symbol=function(t,n){var e=null;function r(){var r;if(e||(e=r=fa()),t.apply(this,arguments).draw(e,+n.apply(this,arguments)),r)return e=null,r+""||null}return t="function"==typeof t?t:rb(t||Vb),n="function"==typeof n?n:rb(void 0===n?64:+n),r.type=function(n){return arguments.length?(t="function"==typeof n?n:rb(n),r):t},r.size=function(t){return arguments.length?(n="function"==typeof t?t:rb(+t),r):n},r.context=function(t){return arguments.length?(e=null==t?null:t,r):e},r},t.symbolCircle=Vb,t.symbolCross=$b,t.symbolDiamond=Kb,t.symbolSquare=em,t.symbolStar=nm,t.symbolTriangle=im,t.symbolWye=fm,t.symbols=sm,t.text=Nu,t.thresholdFreedmanDiaconis=function(t,n,e){return Math.ceil((e-n)/(2*(H(t,.75)-H(t,.25))*Math.pow(c(t),-1/3)))},t.thresholdScott=function(t,n,e){return Math.ceil((e-n)/(3.5*d(t)*Math.pow(c(t),-1/3)))},t.thresholdSturges=I,t.tickFormat=_p,t.tickIncrement=R,t.tickStep=F,t.ticks=q,t.timeDay=eg,t.timeDays=rg,t.timeFormatDefaultLocale=xv,t.timeFormatLocale=ey,t.timeFriday=sg,t.timeFridays=vg,t.timeHour=tg,t.timeHours=ng,t.timeInterval=Bp,t.timeMillisecond=Yp,t.timeMilliseconds=Lp,t.timeMinute=Qp,t.timeMinutes=Jp,t.timeMonday=ag,t.timeMondays=dg,t.timeMonth=bg,t.timeMonths=mg,t.timeSaturday=lg,t.timeSaturdays=_g,t.timeSecond=Zp,t.timeSeconds=Kp,t.timeSunday=og,t.timeSundays=hg,t.timeThursday=fg,t.timeThursdays=yg,t.timeTickInterval=Qg,t.timeTicks=Kg,t.timeTuesday=ug,t.timeTuesdays=pg,t.timeWednesday=cg,t.timeWednesdays=gg,t.timeWeek=og,t.timeWeeks=hg,t.timeYear=xg,t.timeYears=wg,t.timeout=ci,t.timer=ri,t.timerFlush=ii,t.transition=Hi,t.transpose=tt,t.tree=function(){var t=Ad,n=1,e=1,r=null;function i(i){var c=function(t){for(var n,e,r,i,o,a=new Nd(t,0),u=[a];n=u.pop();)if(r=n._.children)for(n.children=new Array(o=r.length),i=o-1;i>=0;--i)u.push(e=n.children[i]=new Nd(r[i],i)),e.parent=n;return(a.parent=new Nd(null,0)).children=[a],a}(i);if(c.eachAfter(o),c.parent.m=-c.z,c.eachBefore(a),r)i.eachBefore(u);else{var f=i,s=i,l=i;i.eachBefore((function(t){t.x<f.x&&(f=t),t.x>s.x&&(s=t),t.depth>l.depth&&(l=t)}));var h=f===s?1:t(f,s)/2,d=h-f.x,p=n/(s.x+h+d),g=e/(l.depth||1);i.eachBefore((function(t){t.x=(t.x+d)*p,t.y=t.depth*g}))}return i}function o(n){var e=n.children,r=n.parent.children,i=n.i?r[n.i-1]:null;if(e){!function(t){for(var n,e=0,r=0,i=t.children,o=i.length;--o>=0;)(n=i[o]).z+=e,n.m+=e,e+=n.s+(r+=n.c)}(n);var o=(e[0].z+e[e.length-1].z)/2;i?(n.z=i.z+t(n._,i._),n.m=n.z-o):n.z=o}else i&&(n.z=i.z+t(n._,i._));n.parent.A=function(n,e,r){if(e){for(var i,o=n,a=n,u=e,c=o.parent.children[0],f=o.m,s=a.m,l=u.m,h=c.m;u=Sd(u),o=Td(o),u&&o;)c=Td(c),(a=Sd(a)).a=n,(i=u.z+l-o.z-f+t(u._,o._))>0&&(Ed(kd(u,n,r),n,i),f+=i,s+=i),l+=u.m,f+=o.m,h+=c.m,s+=a.m;u&&!Sd(a)&&(a.t=u,a.m+=l-s),o&&!Td(c)&&(c.t=o,c.m+=f-h,r=n)}return r}(n,i,n.parent.A||r[0])}function a(t){t._.x=t.z+t.parent.m,t.m+=t.parent.m}function u(t){t.x*=n,t.y=t.depth*e}return i.separation=function(n){return arguments.length?(t=n,i):t},i.size=function(t){return arguments.length?(r=!1,n=+t[0],e=+t[1],i):r?null:[n,e]},i.nodeSize=function(t){return arguments.length?(r=!0,n=+t[0],e=+t[1],i):r?[n,e]:null},i},t.treemap=function(){var t=Dd,n=!1,e=1,r=1,i=[0],o=hd,a=hd,u=hd,c=hd,f=hd;function s(t){return t.x0=t.y0=0,t.x1=e,t.y1=r,t.eachBefore(l),i=[0],n&&t.eachBefore(_d),t}function l(n){var e=i[n.depth],r=n.x0+e,s=n.y0+e,l=n.x1-e,h=n.y1-e;l<r&&(r=l=(r+l)/2),h<s&&(s=h=(s+h)/2),n.x0=r,n.y0=s,n.x1=l,n.y1=h,n.children&&(e=i[n.depth+1]=o(n)/2,r+=f(n)-e,s+=a(n)-e,(l-=u(n)-e)<r&&(r=l=(r+l)/2),(h-=c(n)-e)<s&&(s=h=(s+h)/2),t(n,r,s,l,h))}return s.round=function(t){return arguments.length?(n=!!t,s):n},s.size=function(t){return arguments.length?(e=+t[0],r=+t[1],s):[e,r]},s.tile=function(n){return arguments.length?(t=ld(n),s):t},s.padding=function(t){return arguments.length?s.paddingInner(t).paddingOuter(t):s.paddingInner()},s.paddingInner=function(t){return arguments.length?(o="function"==typeof t?t:dd(+t),s):o},s.paddingOuter=function(t){return arguments.length?s.paddingTop(t).paddingRight(t).paddingBottom(t).paddingLeft(t):s.paddingTop()},s.paddingTop=function(t){return arguments.length?(a="function"==typeof t?t:dd(+t),s):a},s.paddingRight=function(t){return arguments.length?(u="function"==typeof t?t:dd(+t),s):u},s.paddingBottom=function(t){return arguments.length?(c="function"==typeof t?t:dd(+t),s):c},s.paddingLeft=function(t){return arguments.length?(f="function"==typeof t?t:dd(+t),s):f},s},t.treemapBinary=function(t,n,e,r,i){var o,a,u=t.children,c=u.length,f=new Array(c+1);for(f[0]=a=o=0;o<c;++o)f[o+1]=a+=u[o].value;!function t(n,e,r,i,o,a,c){if(n>=e-1){var s=u[n];return s.x0=i,s.y0=o,s.x1=a,void(s.y1=c)}var l=f[n],h=r/2+l,d=n+1,p=e-1;for(;d<p;){var g=d+p>>>1;f[g]<h?d=g+1:p=g}h-f[d-1]<f[d]-h&&n+1<d&&--d;var y=f[d]-l,v=r-y;if(a-i>c-o){var _=r?(i*v+a*y)/r:a;t(n,d,y,i,o,_,c),t(d,e,v,_,o,a,c)}else{var b=r?(o*v+c*y)/r:c;t(n,d,y,i,o,a,b),t(d,e,v,i,b,a,c)}}(0,c,t.value,n,e,r,i)},t.treemapDice=bd,t.treemapResquarify=qd,t.treemapSlice=Cd,t.treemapSliceDice=function(t,n,e,r,i){(1&t.depth?Cd:bd)(t,n,e,r,i)},t.treemapSquarify=Dd,t.tsv=zu,t.tsvFormat=mu,t.tsvFormatBody=xu,t.tsvFormatRow=Mu,t.tsvFormatRows=wu,t.tsvFormatValue=Au,t.tsvParse=_u,t.tsvParseRows=bu,t.union=function(...t){const n=new Set;for(const e of t)for(const t of e)n.add(t);return n},t.utcDay=Eg,t.utcDays=kg,t.utcFriday=Rg,t.utcFridays=Lg,t.utcHour=Tg,t.utcHours=Sg,t.utcMillisecond=Yp,t.utcMilliseconds=Lp,t.utcMinute=Mg,t.utcMinutes=Ag,t.utcMonday=Pg,t.utcMondays=Ig,t.utcMonth=Hg,t.utcMonths=Xg,t.utcSaturday=Fg,t.utcSaturdays=jg,t.utcSecond=Zp,t.utcSeconds=Kp,t.utcSunday=Cg,t.utcSundays=Og,t.utcThursday=qg,t.utcThursdays=Yg,t.utcTickInterval=Zg,t.utcTicks=Wg,t.utcTuesday=zg,t.utcTuesdays=Ug,t.utcWednesday=Dg,t.utcWednesdays=Bg,t.utcWeek=Cg,t.utcWeeks=Og,t.utcYear=Gg,t.utcYears=Vg,t.variance=h,t.version="6.7.0",t.window=Wt,t.xml=Ru,t.zip=function(){return tt(arguments)},t.zoom=function(){var t,n,e,r=ox,i=ax,o=sx,a=cx,u=fx,c=[0,1/0],f=[[-1/0,-1/0],[1/0,1/0]],s=250,l=Dr,h=pt("start","zoom","end"),d=500,p=0,g=10;function y(t){t.property("__zoom",ux).on("wheel.zoom",M).on("mousedown.zoom",A).on("dblclick.zoom",T).filter(u).on("touchstart.zoom",S).on("touchmove.zoom",E).on("touchend.zoom touchcancel.zoom",k).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function v(t,n){return(n=Math.max(c[0],Math.min(c[1],n)))===t.k?t:new tx(n,t.x,t.y)}function _(t,n,e){var r=n[0]-e[0]*t.k,i=n[1]-e[1]*t.k;return r===t.x&&i===t.y?t:new tx(t.k,r,i)}function b(t){return[(+t[0][0]+ +t[1][0])/2,(+t[0][1]+ +t[1][1])/2]}function m(t,n,e,r){t.on("start.zoom",(function(){x(this,arguments).event(r).start()})).on("interrupt.zoom end.zoom",(function(){x(this,arguments).event(r).end()})).tween("zoom",(function(){var t=this,o=arguments,a=x(t,o).event(r),u=i.apply(t,o),c=null==e?b(u):"function"==typeof e?e.apply(t,o):e,f=Math.max(u[1][0]-u[0][0],u[1][1]-u[0][1]),s=t.__zoom,h="function"==typeof n?n.apply(t,o):n,d=l(s.invert(c).concat(f/s.k),h.invert(c).concat(f/h.k));return function(t){if(1===t)t=h;else{var n=d(t),e=f/n[2];t=new tx(e,c[0]-n[0]*e,c[1]-n[1]*e)}a.zoom(null,t)}}))}function x(t,n,e){return!e&&t.__zooming||new w(t,n)}function w(t,n){this.that=t,this.args=n,this.active=0,this.sourceEvent=null,this.extent=i.apply(t,n),this.taps=0}function M(t,...n){if(r.apply(this,arguments)){var e=x(this,n).event(t),i=this.__zoom,u=Math.max(c[0],Math.min(c[1],i.k*Math.pow(2,a.apply(this,arguments)))),s=In(t);if(e.wheel)e.mouse[0][0]===s[0]&&e.mouse[0][1]===s[1]||(e.mouse[1]=i.invert(e.mouse[0]=s)),clearTimeout(e.wheel);else{if(i.k===u)return;e.mouse=[s,i.invert(s)],gi(this),e.start()}ix(t),e.wheel=setTimeout(l,150),e.zoom("mouse",o(_(v(i,u),e.mouse[0],e.mouse[1]),e.extent,f))}function l(){e.wheel=null,e.end()}}function A(t,...n){if(!e&&r.apply(this,arguments)){var i=x(this,n,!0).event(t),a=Dn(t.view).on("mousemove.zoom",h,!0).on("mouseup.zoom",d,!0),u=In(t,c),c=t.currentTarget,s=t.clientX,l=t.clientY;Yn(t.view),rx(t),i.mouse=[u,this.__zoom.invert(u)],gi(this),i.start()}function h(t){if(ix(t),!i.moved){var n=t.clientX-s,e=t.clientY-l;i.moved=n*n+e*e>p}i.event(t).zoom("mouse",o(_(i.that.__zoom,i.mouse[0]=In(t,c),i.mouse[1]),i.extent,f))}function d(t){a.on("mousemove.zoom mouseup.zoom",null),Ln(t.view,i.moved),ix(t),i.event(t).end()}}function T(t,...n){if(r.apply(this,arguments)){var e=this.__zoom,a=In(t.changedTouches?t.changedTouches[0]:t,this),u=e.invert(a),c=e.k*(t.shiftKey?.5:2),l=o(_(v(e,c),a,u),i.apply(this,n),f);ix(t),s>0?Dn(this).transition().duration(s).call(m,l,a,t):Dn(this).call(y.transform,l,a,t)}}function S(e,...i){if(r.apply(this,arguments)){var o,a,u,c,f=e.touches,s=f.length,l=x(this,i,e.changedTouches.length===s).event(e);for(rx(e),a=0;a<s;++a)c=[c=In(u=f[a],this),this.__zoom.invert(c),u.identifier],l.touch0?l.touch1||l.touch0[2]===c[2]||(l.touch1=c,l.taps=0):(l.touch0=c,o=!0,l.taps=1+!!t);t&&(t=clearTimeout(t)),o&&(l.taps<2&&(n=c[0],t=setTimeout((function(){t=null}),d)),gi(this),l.start())}}function E(t,...n){if(this.__zooming){var e,r,i,a,u=x(this,n).event(t),c=t.changedTouches,s=c.length;for(ix(t),e=0;e<s;++e)i=In(r=c[e],this),u.touch0&&u.touch0[2]===r.identifier?u.touch0[0]=i:u.touch1&&u.touch1[2]===r.identifier&&(u.touch1[0]=i);if(r=u.that.__zoom,u.touch1){var l=u.touch0[0],h=u.touch0[1],d=u.touch1[0],p=u.touch1[1],g=(g=d[0]-l[0])*g+(g=d[1]-l[1])*g,y=(y=p[0]-h[0])*y+(y=p[1]-h[1])*y;r=v(r,Math.sqrt(g/y)),i=[(l[0]+d[0])/2,(l[1]+d[1])/2],a=[(h[0]+p[0])/2,(h[1]+p[1])/2]}else{if(!u.touch0)return;i=u.touch0[0],a=u.touch0[1]}u.zoom("touch",o(_(r,i,a),u.extent,f))}}function k(t,...r){if(this.__zooming){var i,o,a=x(this,r).event(t),u=t.changedTouches,c=u.length;for(rx(t),e&&clearTimeout(e),e=setTimeout((function(){e=null}),d),i=0;i<c;++i)o=u[i],a.touch0&&a.touch0[2]===o.identifier?delete a.touch0:a.touch1&&a.touch1[2]===o.identifier&&delete a.touch1;if(a.touch1&&!a.touch0&&(a.touch0=a.touch1,delete a.touch1),a.touch0)a.touch0[1]=this.__zoom.invert(a.touch0[0]);else if(a.end(),2===a.taps&&(o=In(o,this),Math.hypot(n[0]-o[0],n[1]-o[1])<g)){var f=Dn(this).on("dblclick.zoom");f&&f.apply(this,arguments)}}}return y.transform=function(t,n,e,r){var i=t.selection?t.selection():t;i.property("__zoom",ux),t!==i?m(t,n,e,r):i.interrupt().each((function(){x(this,arguments).event(r).start().zoom(null,"function"==typeof n?n.apply(this,arguments):n).end()}))},y.scaleBy=function(t,n,e,r){y.scaleTo(t,(function(){var t=this.__zoom.k,e="function"==typeof n?n.apply(this,arguments):n;return t*e}),e,r)},y.scaleTo=function(t,n,e,r){y.transform(t,(function(){var t=i.apply(this,arguments),r=this.__zoom,a=null==e?b(t):"function"==typeof e?e.apply(this,arguments):e,u=r.invert(a),c="function"==typeof n?n.apply(this,arguments):n;return o(_(v(r,c),a,u),t,f)}),e,r)},y.translateBy=function(t,n,e,r){y.transform(t,(function(){return o(this.__zoom.translate("function"==typeof n?n.apply(this,arguments):n,"function"==typeof e?e.apply(this,arguments):e),i.apply(this,arguments),f)}),null,r)},y.translateTo=function(t,n,e,r,a){y.transform(t,(function(){var t=i.apply(this,arguments),a=this.__zoom,u=null==r?b(t):"function"==typeof r?r.apply(this,arguments):r;return o(nx.translate(u[0],u[1]).scale(a.k).translate("function"==typeof n?-n.apply(this,arguments):-n,"function"==typeof e?-e.apply(this,arguments):-e),t,f)}),r,a)},w.prototype={event:function(t){return t&&(this.sourceEvent=t),this},start:function(){return 1==++this.active&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(t,n){return this.mouse&&"mouse"!==t&&(this.mouse[1]=n.invert(this.mouse[0])),this.touch0&&"touch"!==t&&(this.touch0[1]=n.invert(this.touch0[0])),this.touch1&&"touch"!==t&&(this.touch1[1]=n.invert(this.touch1[0])),this.that.__zoom=n,this.emit("zoom"),this},end:function(){return 0==--this.active&&(delete this.that.__zooming,this.emit("end")),this},emit:function(t){var n=Dn(this.that).datum();h.call(t,this.that,new Jm(t,{sourceEvent:this.sourceEvent,target:y,type:t,transform:this.that.__zoom,dispatch:h}),n)}},y.wheelDelta=function(t){return arguments.length?(a="function"==typeof t?t:Qm(+t),y):a},y.filter=function(t){return arguments.length?(r="function"==typeof t?t:Qm(!!t),y):r},y.touchable=function(t){return arguments.length?(u="function"==typeof t?t:Qm(!!t),y):u},y.extent=function(t){return arguments.length?(i="function"==typeof t?t:Qm([[+t[0][0],+t[0][1]],[+t[1][0],+t[1][1]]]),y):i},y.scaleExtent=function(t){return arguments.length?(c[0]=+t[0],c[1]=+t[1],y):[c[0],c[1]]},y.translateExtent=function(t){return arguments.length?(f[0][0]=+t[0][0],f[1][0]=+t[1][0],f[0][1]=+t[0][1],f[1][1]=+t[1][1],y):[[f[0][0],f[0][1]],[f[1][0],f[1][1]]]},y.constrain=function(t){return arguments.length?(o=t,y):o},y.duration=function(t){return arguments.length?(s=+t,y):s},y.interpolate=function(t){return arguments.length?(l=t,y):l},y.on=function(){var t=h.on.apply(h,arguments);return t===h?y:t},y.clickDistance=function(t){return arguments.length?(p=(t=+t)*t,y):Math.sqrt(p)},y.tapDistance=function(t){return arguments.length?(g=+t,y):g},y},t.zoomIdentity=nx,t.zoomTransform=ex,Object.defineProperty(t,"__esModule",{value:!0})})); + +/*! markmap-lib v0.14.3 | MIT License */ +!function(e, t) { + "object" == typeof exports && "undefined" != typeof module ? t(exports, require("katex")) : "function" == typeof define && define.amd ? define(["exports", "katex"], t) : t((e = "undefined" != typeof globalThis ? globalThis : e || self).markmap = e.markmap || {}, e.window.katex) +}(this, (function(e, t) { + "use strict"; + function r(e) { + return e && "object" == typeof e && "default"in e ? e.default : e + } + var n = r(t); + function i() { + return i = Object.assign ? Object.assign.bind() : function(e) { + for (var t = 1; t < arguments.length; t++) { + var r = arguments[t]; + for (var n in r) + Object.prototype.hasOwnProperty.call(r, n) && (e[n] = r[n]) + } + return e + } + , + i.apply(this, arguments) + } + /*! markmap-common v0.14.2 | MIT License */ + class o { + constructor() { + this.listeners = [] + } + tap(e) { + return this.listeners.push(e), + ()=>this.revoke(e) + } + revoke(e) { + const t = this.listeners.indexOf(e); + t >= 0 && this.listeners.splice(t, 1) + } + revokeAll() { + this.listeners.splice(0) + } + call(...e) { + for (const t of this.listeners) + t(...e) + } + } + function s() { + return s = Object.assign || function(e) { + for (var t = 1; t < arguments.length; t++) { + var r = arguments[t]; + for (var n in r) + Object.prototype.hasOwnProperty.call(r, n) && (e[n] = r[n]) + } + return e + } + , + s.apply(this, arguments) + } + const a = ["textContent"]; + function l(e) { + return e.replace(/[&<"]/g, (e=>({ + "&": "&", + "<": "<", + '"': """ + }[e]))) + } + function c(e, t) { + return `<${e}${t ? Object.entries(t).map((([e,t])=>{ + if (null != t && !1 !== t) + return e = ` ${l(e)}`, + !0 === t ? e : `${e}="${l(t)}"` + } + )).filter(Boolean).join("") : ""}>` + } + function p(e, t, r) { + return null == t ? c(e, r) : c(e, r) + (t || "") + function(e) { + return `</${e}>` + }(e) + } + function u(e, t) { + return e.map((e=>{ + if ("script" === e.type) { + const t = e.data + , {textContent: r} = t + , n = function(e, t) { + if (null == e) + return {}; + var r, n, i = {}, o = Object.keys(e); + for (n = 0; n < o.length; n++) + r = o[n], + t.indexOf(r) >= 0 || (i[r] = e[r]); + return i + }(t, a); + return p("script", r || "", n) + } + if ("iife" === e.type) { + const {fn: n, getParams: i} = e.data; + return p("script", (r = function(e, t) { + const r = t.map((e=>"function" == typeof e ? e.toString() : JSON.stringify(null != e ? e : null))).join(","); + return `(${e.toString()})(${r})` + }(n, (null == i ? void 0 : i(t)) || []), + r.replace(/<(\/script>)/g, "\\x3c$2"))) + } + var r; + return "" + } + )) + } + function f(e, {before: t, after: r}) { + return function(...n) { + const i = { + args: n, + thisObj: this + }; + try { + t && t(i) + } catch (e) {} + i.result = e.apply(i.thisObj, i.args); + try { + r && r(i) + } catch (e) {} + return i.result + } + } + function h(e, t, r) { + const n = document.createElement(e); + return t && Object.entries(t).forEach((([e,t])=>{ + n[e] = t + } + )), + r && Object.entries(r).forEach((([e,t])=>{ + n.setAttribute(e, t) + } + )), + n + } + Math.random().toString(36).slice(2, 8); + const d = function(e) { + const t = {}; + return function(...r) { + const n = `${r[0]}`; + let i = t[n]; + return i || (i = { + value: e(...r) + }, + t[n] = i), + i.value + } + }((e=>{ + document.head.append(h("link", { + rel: "preload", + as: "script", + href: e + })) + } + )); + async function g(e, t) { + if (!e.loaded && ("script" === e.type && (e.loaded = new Promise(((t,r)=>{ + var n; + document.head.append(h("script", s({}, e.data, { + onload: t, + onerror: r + }))), + null != (n = e.data) && n.src || t(void 0) + } + )).then((()=>{ + e.loaded = !0 + } + ))), + "iife" === e.type)) { + const {fn: r, getParams: n} = e.data; + r(...(null == n ? void 0 : n(t)) || []), + e.loaded = !0 + } + await e.loaded + } + async function m(e, t) { + const r = e.filter((e=>{ + var t; + return "script" === e.type && (null == (t = e.data) ? void 0 : t.src) + } + )); + r.length > 1 && r.forEach((e=>d(e.data.src))), + t = s({ + getMarkmap: ()=>window.markmap + }, t); + for (const r of e) + await g(r, t) + } + const b = ["https://cdn.jsdelivr.net/npm/d3@6.7.0", "https://cdn.jsdelivr.net/npm/markmap-view@0.14.3"].map((e=>({ + type: "script", + data: { + src: e + } + }))); + var v = { + Aacute: "Á", + aacute: "á", + Abreve: "Ă", + abreve: "ă", + ac: "∾", + acd: "∿", + acE: "∾̳", + Acirc: "Â", + acirc: "â", + acute: "´", + Acy: "А", + acy: "а", + AElig: "Æ", + aelig: "æ", + af: "⁡", + Afr: "𝔄", + afr: "𝔞", + Agrave: "À", + agrave: "à", + alefsym: "ℵ", + aleph: "ℵ", + Alpha: "Α", + alpha: "α", + Amacr: "Ā", + amacr: "ā", + amalg: "⨿", + AMP: "&", + amp: "&", + And: "⩓", + and: "∧", + andand: "⩕", + andd: "⩜", + andslope: "⩘", + andv: "⩚", + ang: "∠", + ange: "⦤", + angle: "∠", + angmsd: "∡", + angmsdaa: "⦨", + angmsdab: "⦩", + angmsdac: "⦪", + angmsdad: "⦫", + angmsdae: "⦬", + angmsdaf: "⦭", + angmsdag: "⦮", + angmsdah: "⦯", + angrt: "∟", + angrtvb: "⊾", + angrtvbd: "⦝", + angsph: "∢", + angst: "Å", + angzarr: "⍼", + Aogon: "Ą", + aogon: "ą", + Aopf: "𝔸", + aopf: "𝕒", + ap: "≈", + apacir: "⩯", + apE: "⩰", + ape: "≊", + apid: "≋", + apos: "'", + ApplyFunction: "⁡", + approx: "≈", + approxeq: "≊", + Aring: "Å", + aring: "å", + Ascr: "𝒜", + ascr: "𝒶", + Assign: "≔", + ast: "*", + asymp: "≈", + asympeq: "≍", + Atilde: "Ã", + atilde: "ã", + Auml: "Ä", + auml: "ä", + awconint: "∳", + awint: "⨑", + backcong: "≌", + backepsilon: "϶", + backprime: "‵", + backsim: "∽", + backsimeq: "⋍", + Backslash: "∖", + Barv: "⫧", + barvee: "⊽", + Barwed: "⌆", + barwed: "⌅", + barwedge: "⌅", + bbrk: "⎵", + bbrktbrk: "⎶", + bcong: "≌", + Bcy: "Б", + bcy: "б", + bdquo: "„", + becaus: "∵", + Because: "∵", + because: "∵", + bemptyv: "⦰", + bepsi: "϶", + bernou: "ℬ", + Bernoullis: "ℬ", + Beta: "Β", + beta: "β", + beth: "ℶ", + between: "≬", + Bfr: "𝔅", + bfr: "𝔟", + bigcap: "⋂", + bigcirc: "◯", + bigcup: "⋃", + bigodot: "⨀", + bigoplus: "⨁", + bigotimes: "⨂", + bigsqcup: "⨆", + bigstar: "★", + bigtriangledown: "▽", + bigtriangleup: "△", + biguplus: "⨄", + bigvee: "⋁", + bigwedge: "⋀", + bkarow: "⤍", + blacklozenge: "⧫", + blacksquare: "▪", + blacktriangle: "▴", + blacktriangledown: "▾", + blacktriangleleft: "◂", + blacktriangleright: "▸", + blank: "␣", + blk12: "▒", + blk14: "░", + blk34: "▓", + block: "█", + bne: "=⃥", + bnequiv: "≡⃥", + bNot: "⫭", + bnot: "⌐", + Bopf: "𝔹", + bopf: "𝕓", + bot: "⊥", + bottom: "⊥", + bowtie: "⋈", + boxbox: "⧉", + boxDL: "╗", + boxDl: "╖", + boxdL: "╕", + boxdl: "┐", + boxDR: "╔", + boxDr: "╓", + boxdR: "╒", + boxdr: "┌", + boxH: "═", + boxh: "─", + boxHD: "╦", + boxHd: "╤", + boxhD: "╥", + boxhd: "┬", + boxHU: "╩", + boxHu: "╧", + boxhU: "╨", + boxhu: "┴", + boxminus: "⊟", + boxplus: "⊞", + boxtimes: "⊠", + boxUL: "╝", + boxUl: "╜", + boxuL: "╛", + boxul: "┘", + boxUR: "╚", + boxUr: "╙", + boxuR: "╘", + boxur: "└", + boxV: "║", + boxv: "│", + boxVH: "╬", + boxVh: "╫", + boxvH: "╪", + boxvh: "┼", + boxVL: "╣", + boxVl: "╢", + boxvL: "╡", + boxvl: "┤", + boxVR: "╠", + boxVr: "╟", + boxvR: "╞", + boxvr: "├", + bprime: "‵", + Breve: "˘", + breve: "˘", + brvbar: "¦", + Bscr: "ℬ", + bscr: "𝒷", + bsemi: "⁏", + bsim: "∽", + bsime: "⋍", + bsol: "\\", + bsolb: "⧅", + bsolhsub: "⟈", + bull: "•", + bullet: "•", + bump: "≎", + bumpE: "⪮", + bumpe: "≏", + Bumpeq: "≎", + bumpeq: "≏", + Cacute: "Ć", + cacute: "ć", + Cap: "⋒", + cap: "∩", + capand: "⩄", + capbrcup: "⩉", + capcap: "⩋", + capcup: "⩇", + capdot: "⩀", + CapitalDifferentialD: "ⅅ", + caps: "∩︀", + caret: "⁁", + caron: "ˇ", + Cayleys: "ℭ", + ccaps: "⩍", + Ccaron: "Č", + ccaron: "č", + Ccedil: "Ç", + ccedil: "ç", + Ccirc: "Ĉ", + ccirc: "ĉ", + Cconint: "∰", + ccups: "⩌", + ccupssm: "⩐", + Cdot: "Ċ", + cdot: "ċ", + cedil: "¸", + Cedilla: "¸", + cemptyv: "⦲", + cent: "¢", + CenterDot: "·", + centerdot: "·", + Cfr: "ℭ", + cfr: "𝔠", + CHcy: "Ч", + chcy: "ч", + check: "✓", + checkmark: "✓", + Chi: "Χ", + chi: "χ", + cir: "○", + circ: "ˆ", + circeq: "≗", + circlearrowleft: "↺", + circlearrowright: "↻", + circledast: "⊛", + circledcirc: "⊚", + circleddash: "⊝", + CircleDot: "⊙", + circledR: "®", + circledS: "Ⓢ", + CircleMinus: "⊖", + CirclePlus: "⊕", + CircleTimes: "⊗", + cirE: "⧃", + cire: "≗", + cirfnint: "⨐", + cirmid: "⫯", + cirscir: "⧂", + ClockwiseContourIntegral: "∲", + CloseCurlyDoubleQuote: "”", + CloseCurlyQuote: "’", + clubs: "♣", + clubsuit: "♣", + Colon: "∷", + colon: ":", + Colone: "⩴", + colone: "≔", + coloneq: "≔", + comma: ",", + commat: "@", + comp: "∁", + compfn: "∘", + complement: "∁", + complexes: "ℂ", + cong: "≅", + congdot: "⩭", + Congruent: "≡", + Conint: "∯", + conint: "∮", + ContourIntegral: "∮", + Copf: "ℂ", + copf: "𝕔", + coprod: "∐", + Coproduct: "∐", + COPY: "©", + copy: "©", + copysr: "℗", + CounterClockwiseContourIntegral: "∳", + crarr: "↵", + Cross: "⨯", + cross: "✗", + Cscr: "𝒞", + cscr: "𝒸", + csub: "⫏", + csube: "⫑", + csup: "⫐", + csupe: "⫒", + ctdot: "⋯", + cudarrl: "⤸", + cudarrr: "⤵", + cuepr: "⋞", + cuesc: "⋟", + cularr: "↶", + cularrp: "⤽", + Cup: "⋓", + cup: "∪", + cupbrcap: "⩈", + CupCap: "≍", + cupcap: "⩆", + cupcup: "⩊", + cupdot: "⊍", + cupor: "⩅", + cups: "∪︀", + curarr: "↷", + curarrm: "⤼", + curlyeqprec: "⋞", + curlyeqsucc: "⋟", + curlyvee: "⋎", + curlywedge: "⋏", + curren: "¤", + curvearrowleft: "↶", + curvearrowright: "↷", + cuvee: "⋎", + cuwed: "⋏", + cwconint: "∲", + cwint: "∱", + cylcty: "⌭", + Dagger: "‡", + dagger: "†", + daleth: "ℸ", + Darr: "↡", + dArr: "⇓", + darr: "↓", + dash: "‐", + Dashv: "⫤", + dashv: "⊣", + dbkarow: "⤏", + dblac: "˝", + Dcaron: "Ď", + dcaron: "ď", + Dcy: "Д", + dcy: "д", + DD: "ⅅ", + dd: "ⅆ", + ddagger: "‡", + ddarr: "⇊", + DDotrahd: "⤑", + ddotseq: "⩷", + deg: "°", + Del: "∇", + Delta: "Δ", + delta: "δ", + demptyv: "⦱", + dfisht: "⥿", + Dfr: "𝔇", + dfr: "𝔡", + dHar: "⥥", + dharl: "⇃", + dharr: "⇂", + DiacriticalAcute: "´", + DiacriticalDot: "˙", + DiacriticalDoubleAcute: "˝", + DiacriticalGrave: "`", + DiacriticalTilde: "˜", + diam: "⋄", + Diamond: "⋄", + diamond: "⋄", + diamondsuit: "♦", + diams: "♦", + die: "¨", + DifferentialD: "ⅆ", + digamma: "ϝ", + disin: "⋲", + div: "÷", + divide: "÷", + divideontimes: "⋇", + divonx: "⋇", + DJcy: "Ђ", + djcy: "ђ", + dlcorn: "⌞", + dlcrop: "⌍", + dollar: "$", + Dopf: "𝔻", + dopf: "𝕕", + Dot: "¨", + dot: "˙", + DotDot: "⃜", + doteq: "≐", + doteqdot: "≑", + DotEqual: "≐", + dotminus: "∸", + dotplus: "∔", + dotsquare: "⊡", + doublebarwedge: "⌆", + DoubleContourIntegral: "∯", + DoubleDot: "¨", + DoubleDownArrow: "⇓", + DoubleLeftArrow: "⇐", + DoubleLeftRightArrow: "⇔", + DoubleLeftTee: "⫤", + DoubleLongLeftArrow: "⟸", + DoubleLongLeftRightArrow: "⟺", + DoubleLongRightArrow: "⟹", + DoubleRightArrow: "⇒", + DoubleRightTee: "⊨", + DoubleUpArrow: "⇑", + DoubleUpDownArrow: "⇕", + DoubleVerticalBar: "∥", + DownArrow: "↓", + Downarrow: "⇓", + downarrow: "↓", + DownArrowBar: "⤓", + DownArrowUpArrow: "⇵", + DownBreve: "̑", + downdownarrows: "⇊", + downharpoonleft: "⇃", + downharpoonright: "⇂", + DownLeftRightVector: "⥐", + DownLeftTeeVector: "⥞", + DownLeftVector: "↽", + DownLeftVectorBar: "⥖", + DownRightTeeVector: "⥟", + DownRightVector: "⇁", + DownRightVectorBar: "⥗", + DownTee: "⊤", + DownTeeArrow: "↧", + drbkarow: "⤐", + drcorn: "⌟", + drcrop: "⌌", + Dscr: "𝒟", + dscr: "𝒹", + DScy: "Ѕ", + dscy: "ѕ", + dsol: "⧶", + Dstrok: "Đ", + dstrok: "đ", + dtdot: "⋱", + dtri: "▿", + dtrif: "▾", + duarr: "⇵", + duhar: "⥯", + dwangle: "⦦", + DZcy: "Џ", + dzcy: "џ", + dzigrarr: "⟿", + Eacute: "É", + eacute: "é", + easter: "⩮", + Ecaron: "Ě", + ecaron: "ě", + ecir: "≖", + Ecirc: "Ê", + ecirc: "ê", + ecolon: "≕", + Ecy: "Э", + ecy: "э", + eDDot: "⩷", + Edot: "Ė", + eDot: "≑", + edot: "ė", + ee: "ⅇ", + efDot: "≒", + Efr: "𝔈", + efr: "𝔢", + eg: "⪚", + Egrave: "È", + egrave: "è", + egs: "⪖", + egsdot: "⪘", + el: "⪙", + Element: "∈", + elinters: "⏧", + ell: "ℓ", + els: "⪕", + elsdot: "⪗", + Emacr: "Ē", + emacr: "ē", + empty: "∅", + emptyset: "∅", + EmptySmallSquare: "◻", + emptyv: "∅", + EmptyVerySmallSquare: "▫", + emsp: " ", + emsp13: " ", + emsp14: " ", + ENG: "Ŋ", + eng: "ŋ", + ensp: " ", + Eogon: "Ę", + eogon: "ę", + Eopf: "𝔼", + eopf: "𝕖", + epar: "⋕", + eparsl: "⧣", + eplus: "⩱", + epsi: "ε", + Epsilon: "Ε", + epsilon: "ε", + epsiv: "ϵ", + eqcirc: "≖", + eqcolon: "≕", + eqsim: "≂", + eqslantgtr: "⪖", + eqslantless: "⪕", + Equal: "⩵", + equals: "=", + EqualTilde: "≂", + equest: "≟", + Equilibrium: "⇌", + equiv: "≡", + equivDD: "⩸", + eqvparsl: "⧥", + erarr: "⥱", + erDot: "≓", + Escr: "ℰ", + escr: "ℯ", + esdot: "≐", + Esim: "⩳", + esim: "≂", + Eta: "Η", + eta: "η", + ETH: "Ð", + eth: "ð", + Euml: "Ë", + euml: "ë", + euro: "€", + excl: "!", + exist: "∃", + Exists: "∃", + expectation: "ℰ", + ExponentialE: "ⅇ", + exponentiale: "ⅇ", + fallingdotseq: "≒", + Fcy: "Ф", + fcy: "ф", + female: "♀", + ffilig: "ffi", + fflig: "ff", + ffllig: "ffl", + Ffr: "𝔉", + ffr: "𝔣", + filig: "fi", + FilledSmallSquare: "◼", + FilledVerySmallSquare: "▪", + fjlig: "fj", + flat: "♭", + fllig: "fl", + fltns: "▱", + fnof: "ƒ", + Fopf: "𝔽", + fopf: "𝕗", + ForAll: "∀", + forall: "∀", + fork: "⋔", + forkv: "⫙", + Fouriertrf: "ℱ", + fpartint: "⨍", + frac12: "½", + frac13: "⅓", + frac14: "¼", + frac15: "⅕", + frac16: "⅙", + frac18: "⅛", + frac23: "⅔", + frac25: "⅖", + frac34: "¾", + frac35: "⅗", + frac38: "⅜", + frac45: "⅘", + frac56: "⅚", + frac58: "⅝", + frac78: "⅞", + frasl: "⁄", + frown: "⌢", + Fscr: "ℱ", + fscr: "𝒻", + gacute: "ǵ", + Gamma: "Γ", + gamma: "γ", + Gammad: "Ϝ", + gammad: "ϝ", + gap: "⪆", + Gbreve: "Ğ", + gbreve: "ğ", + Gcedil: "Ģ", + Gcirc: "Ĝ", + gcirc: "ĝ", + Gcy: "Г", + gcy: "г", + Gdot: "Ġ", + gdot: "ġ", + gE: "≧", + ge: "≥", + gEl: "⪌", + gel: "⋛", + geq: "≥", + geqq: "≧", + geqslant: "⩾", + ges: "⩾", + gescc: "⪩", + gesdot: "⪀", + gesdoto: "⪂", + gesdotol: "⪄", + gesl: "⋛︀", + gesles: "⪔", + Gfr: "𝔊", + gfr: "𝔤", + Gg: "⋙", + gg: "≫", + ggg: "⋙", + gimel: "ℷ", + GJcy: "Ѓ", + gjcy: "ѓ", + gl: "≷", + gla: "⪥", + glE: "⪒", + glj: "⪤", + gnap: "⪊", + gnapprox: "⪊", + gnE: "≩", + gne: "⪈", + gneq: "⪈", + gneqq: "≩", + gnsim: "⋧", + Gopf: "𝔾", + gopf: "𝕘", + grave: "`", + GreaterEqual: "≥", + GreaterEqualLess: "⋛", + GreaterFullEqual: "≧", + GreaterGreater: "⪢", + GreaterLess: "≷", + GreaterSlantEqual: "⩾", + GreaterTilde: "≳", + Gscr: "𝒢", + gscr: "ℊ", + gsim: "≳", + gsime: "⪎", + gsiml: "⪐", + GT: ">", + Gt: "≫", + gt: ">", + gtcc: "⪧", + gtcir: "⩺", + gtdot: "⋗", + gtlPar: "⦕", + gtquest: "⩼", + gtrapprox: "⪆", + gtrarr: "⥸", + gtrdot: "⋗", + gtreqless: "⋛", + gtreqqless: "⪌", + gtrless: "≷", + gtrsim: "≳", + gvertneqq: "≩︀", + gvnE: "≩︀", + Hacek: "ˇ", + hairsp: " ", + half: "½", + hamilt: "ℋ", + HARDcy: "Ъ", + hardcy: "ъ", + hArr: "⇔", + harr: "↔", + harrcir: "⥈", + harrw: "↭", + Hat: "^", + hbar: "ℏ", + Hcirc: "Ĥ", + hcirc: "ĥ", + hearts: "♥", + heartsuit: "♥", + hellip: "…", + hercon: "⊹", + Hfr: "ℌ", + hfr: "𝔥", + HilbertSpace: "ℋ", + hksearow: "⤥", + hkswarow: "⤦", + hoarr: "⇿", + homtht: "∻", + hookleftarrow: "↩", + hookrightarrow: "↪", + Hopf: "ℍ", + hopf: "𝕙", + horbar: "―", + HorizontalLine: "─", + Hscr: "ℋ", + hscr: "𝒽", + hslash: "ℏ", + Hstrok: "Ħ", + hstrok: "ħ", + HumpDownHump: "≎", + HumpEqual: "≏", + hybull: "⁃", + hyphen: "‐", + Iacute: "Í", + iacute: "í", + ic: "⁣", + Icirc: "Î", + icirc: "î", + Icy: "И", + icy: "и", + Idot: "İ", + IEcy: "Е", + iecy: "е", + iexcl: "¡", + iff: "⇔", + Ifr: "ℑ", + ifr: "𝔦", + Igrave: "Ì", + igrave: "ì", + ii: "ⅈ", + iiiint: "⨌", + iiint: "∭", + iinfin: "⧜", + iiota: "℩", + IJlig: "IJ", + ijlig: "ij", + Im: "ℑ", + Imacr: "Ī", + imacr: "ī", + image: "ℑ", + ImaginaryI: "ⅈ", + imagline: "ℐ", + imagpart: "ℑ", + imath: "ı", + imof: "⊷", + imped: "Ƶ", + Implies: "⇒", + in: "∈", + incare: "℅", + infin: "∞", + infintie: "⧝", + inodot: "ı", + Int: "∬", + int: "∫", + intcal: "⊺", + integers: "ℤ", + Integral: "∫", + intercal: "⊺", + Intersection: "⋂", + intlarhk: "⨗", + intprod: "⨼", + InvisibleComma: "⁣", + InvisibleTimes: "⁢", + IOcy: "Ё", + iocy: "ё", + Iogon: "Į", + iogon: "į", + Iopf: "𝕀", + iopf: "𝕚", + Iota: "Ι", + iota: "ι", + iprod: "⨼", + iquest: "¿", + Iscr: "ℐ", + iscr: "𝒾", + isin: "∈", + isindot: "⋵", + isinE: "⋹", + isins: "⋴", + isinsv: "⋳", + isinv: "∈", + it: "⁢", + Itilde: "Ĩ", + itilde: "ĩ", + Iukcy: "І", + iukcy: "і", + Iuml: "Ï", + iuml: "ï", + Jcirc: "Ĵ", + jcirc: "ĵ", + Jcy: "Й", + jcy: "й", + Jfr: "𝔍", + jfr: "𝔧", + jmath: "ȷ", + Jopf: "𝕁", + jopf: "𝕛", + Jscr: "𝒥", + jscr: "𝒿", + Jsercy: "Ј", + jsercy: "ј", + Jukcy: "Є", + jukcy: "є", + Kappa: "Κ", + kappa: "κ", + kappav: "ϰ", + Kcedil: "Ķ", + kcedil: "ķ", + Kcy: "К", + kcy: "к", + Kfr: "𝔎", + kfr: "𝔨", + kgreen: "ĸ", + KHcy: "Х", + khcy: "х", + KJcy: "Ќ", + kjcy: "ќ", + Kopf: "𝕂", + kopf: "𝕜", + Kscr: "𝒦", + kscr: "𝓀", + lAarr: "⇚", + Lacute: "Ĺ", + lacute: "ĺ", + laemptyv: "⦴", + lagran: "ℒ", + Lambda: "Λ", + lambda: "λ", + Lang: "⟪", + lang: "⟨", + langd: "⦑", + langle: "⟨", + lap: "⪅", + Laplacetrf: "ℒ", + laquo: "«", + Larr: "↞", + lArr: "⇐", + larr: "←", + larrb: "⇤", + larrbfs: "⤟", + larrfs: "⤝", + larrhk: "↩", + larrlp: "↫", + larrpl: "⤹", + larrsim: "⥳", + larrtl: "↢", + lat: "⪫", + lAtail: "⤛", + latail: "⤙", + late: "⪭", + lates: "⪭︀", + lBarr: "⤎", + lbarr: "⤌", + lbbrk: "❲", + lbrace: "{", + lbrack: "[", + lbrke: "⦋", + lbrksld: "⦏", + lbrkslu: "⦍", + Lcaron: "Ľ", + lcaron: "ľ", + Lcedil: "Ļ", + lcedil: "ļ", + lceil: "⌈", + lcub: "{", + Lcy: "Л", + lcy: "л", + ldca: "⤶", + ldquo: "“", + ldquor: "„", + ldrdhar: "⥧", + ldrushar: "⥋", + ldsh: "↲", + lE: "≦", + le: "≤", + LeftAngleBracket: "⟨", + LeftArrow: "←", + Leftarrow: "⇐", + leftarrow: "←", + LeftArrowBar: "⇤", + LeftArrowRightArrow: "⇆", + leftarrowtail: "↢", + LeftCeiling: "⌈", + LeftDoubleBracket: "⟦", + LeftDownTeeVector: "⥡", + LeftDownVector: "⇃", + LeftDownVectorBar: "⥙", + LeftFloor: "⌊", + leftharpoondown: "↽", + leftharpoonup: "↼", + leftleftarrows: "⇇", + LeftRightArrow: "↔", + Leftrightarrow: "⇔", + leftrightarrow: "↔", + leftrightarrows: "⇆", + leftrightharpoons: "⇋", + leftrightsquigarrow: "↭", + LeftRightVector: "⥎", + LeftTee: "⊣", + LeftTeeArrow: "↤", + LeftTeeVector: "⥚", + leftthreetimes: "⋋", + LeftTriangle: "⊲", + LeftTriangleBar: "⧏", + LeftTriangleEqual: "⊴", + LeftUpDownVector: "⥑", + LeftUpTeeVector: "⥠", + LeftUpVector: "↿", + LeftUpVectorBar: "⥘", + LeftVector: "↼", + LeftVectorBar: "⥒", + lEg: "⪋", + leg: "⋚", + leq: "≤", + leqq: "≦", + leqslant: "⩽", + les: "⩽", + lescc: "⪨", + lesdot: "⩿", + lesdoto: "⪁", + lesdotor: "⪃", + lesg: "⋚︀", + lesges: "⪓", + lessapprox: "⪅", + lessdot: "⋖", + lesseqgtr: "⋚", + lesseqqgtr: "⪋", + LessEqualGreater: "⋚", + LessFullEqual: "≦", + LessGreater: "≶", + lessgtr: "≶", + LessLess: "⪡", + lesssim: "≲", + LessSlantEqual: "⩽", + LessTilde: "≲", + lfisht: "⥼", + lfloor: "⌊", + Lfr: "𝔏", + lfr: "𝔩", + lg: "≶", + lgE: "⪑", + lHar: "⥢", + lhard: "↽", + lharu: "↼", + lharul: "⥪", + lhblk: "▄", + LJcy: "Љ", + ljcy: "љ", + Ll: "⋘", + ll: "≪", + llarr: "⇇", + llcorner: "⌞", + Lleftarrow: "⇚", + llhard: "⥫", + lltri: "◺", + Lmidot: "Ŀ", + lmidot: "ŀ", + lmoust: "⎰", + lmoustache: "⎰", + lnap: "⪉", + lnapprox: "⪉", + lnE: "≨", + lne: "⪇", + lneq: "⪇", + lneqq: "≨", + lnsim: "⋦", + loang: "⟬", + loarr: "⇽", + lobrk: "⟦", + LongLeftArrow: "⟵", + Longleftarrow: "⟸", + longleftarrow: "⟵", + LongLeftRightArrow: "⟷", + Longleftrightarrow: "⟺", + longleftrightarrow: "⟷", + longmapsto: "⟼", + LongRightArrow: "⟶", + Longrightarrow: "⟹", + longrightarrow: "⟶", + looparrowleft: "↫", + looparrowright: "↬", + lopar: "⦅", + Lopf: "𝕃", + lopf: "𝕝", + loplus: "⨭", + lotimes: "⨴", + lowast: "∗", + lowbar: "_", + LowerLeftArrow: "↙", + LowerRightArrow: "↘", + loz: "◊", + lozenge: "◊", + lozf: "⧫", + lpar: "(", + lparlt: "⦓", + lrarr: "⇆", + lrcorner: "⌟", + lrhar: "⇋", + lrhard: "⥭", + lrm: "‎", + lrtri: "⊿", + lsaquo: "‹", + Lscr: "ℒ", + lscr: "𝓁", + Lsh: "↰", + lsh: "↰", + lsim: "≲", + lsime: "⪍", + lsimg: "⪏", + lsqb: "[", + lsquo: "‘", + lsquor: "‚", + Lstrok: "Ł", + lstrok: "ł", + LT: "<", + Lt: "≪", + lt: "<", + ltcc: "⪦", + ltcir: "⩹", + ltdot: "⋖", + lthree: "⋋", + ltimes: "⋉", + ltlarr: "⥶", + ltquest: "⩻", + ltri: "◃", + ltrie: "⊴", + ltrif: "◂", + ltrPar: "⦖", + lurdshar: "⥊", + luruhar: "⥦", + lvertneqq: "≨︀", + lvnE: "≨︀", + macr: "¯", + male: "♂", + malt: "✠", + maltese: "✠", + Map: "⤅", + map: "↦", + mapsto: "↦", + mapstodown: "↧", + mapstoleft: "↤", + mapstoup: "↥", + marker: "▮", + mcomma: "⨩", + Mcy: "М", + mcy: "м", + mdash: "—", + mDDot: "∺", + measuredangle: "∡", + MediumSpace: " ", + Mellintrf: "ℳ", + Mfr: "𝔐", + mfr: "𝔪", + mho: "℧", + micro: "µ", + mid: "∣", + midast: "*", + midcir: "⫰", + middot: "·", + minus: "−", + minusb: "⊟", + minusd: "∸", + minusdu: "⨪", + MinusPlus: "∓", + mlcp: "⫛", + mldr: "…", + mnplus: "∓", + models: "⊧", + Mopf: "𝕄", + mopf: "𝕞", + mp: "∓", + Mscr: "ℳ", + mscr: "𝓂", + mstpos: "∾", + Mu: "Μ", + mu: "μ", + multimap: "⊸", + mumap: "⊸", + nabla: "∇", + Nacute: "Ń", + nacute: "ń", + nang: "∠⃒", + nap: "≉", + napE: "⩰̸", + napid: "≋̸", + napos: "ʼn", + napprox: "≉", + natur: "♮", + natural: "♮", + naturals: "ℕ", + nbsp: " ", + nbump: "≎̸", + nbumpe: "≏̸", + ncap: "⩃", + Ncaron: "Ň", + ncaron: "ň", + Ncedil: "Ņ", + ncedil: "ņ", + ncong: "≇", + ncongdot: "⩭̸", + ncup: "⩂", + Ncy: "Н", + ncy: "н", + ndash: "–", + ne: "≠", + nearhk: "⤤", + neArr: "⇗", + nearr: "↗", + nearrow: "↗", + nedot: "≐̸", + NegativeMediumSpace: "​", + NegativeThickSpace: "​", + NegativeThinSpace: "​", + NegativeVeryThinSpace: "​", + nequiv: "≢", + nesear: "⤨", + nesim: "≂̸", + NestedGreaterGreater: "≫", + NestedLessLess: "≪", + NewLine: "\n", + nexist: "∄", + nexists: "∄", + Nfr: "𝔑", + nfr: "𝔫", + ngE: "≧̸", + nge: "≱", + ngeq: "≱", + ngeqq: "≧̸", + ngeqslant: "⩾̸", + nges: "⩾̸", + nGg: "⋙̸", + ngsim: "≵", + nGt: "≫⃒", + ngt: "≯", + ngtr: "≯", + nGtv: "≫̸", + nhArr: "⇎", + nharr: "↮", + nhpar: "⫲", + ni: "∋", + nis: "⋼", + nisd: "⋺", + niv: "∋", + NJcy: "Њ", + njcy: "њ", + nlArr: "⇍", + nlarr: "↚", + nldr: "‥", + nlE: "≦̸", + nle: "≰", + nLeftarrow: "⇍", + nleftarrow: "↚", + nLeftrightarrow: "⇎", + nleftrightarrow: "↮", + nleq: "≰", + nleqq: "≦̸", + nleqslant: "⩽̸", + nles: "⩽̸", + nless: "≮", + nLl: "⋘̸", + nlsim: "≴", + nLt: "≪⃒", + nlt: "≮", + nltri: "⋪", + nltrie: "⋬", + nLtv: "≪̸", + nmid: "∤", + NoBreak: "⁠", + NonBreakingSpace: " ", + Nopf: "ℕ", + nopf: "𝕟", + Not: "⫬", + not: "¬", + NotCongruent: "≢", + NotCupCap: "≭", + NotDoubleVerticalBar: "∦", + NotElement: "∉", + NotEqual: "≠", + NotEqualTilde: "≂̸", + NotExists: "∄", + NotGreater: "≯", + NotGreaterEqual: "≱", + NotGreaterFullEqual: "≧̸", + NotGreaterGreater: "≫̸", + NotGreaterLess: "≹", + NotGreaterSlantEqual: "⩾̸", + NotGreaterTilde: "≵", + NotHumpDownHump: "≎̸", + NotHumpEqual: "≏̸", + notin: "∉", + notindot: "⋵̸", + notinE: "⋹̸", + notinva: "∉", + notinvb: "⋷", + notinvc: "⋶", + NotLeftTriangle: "⋪", + NotLeftTriangleBar: "⧏̸", + NotLeftTriangleEqual: "⋬", + NotLess: "≮", + NotLessEqual: "≰", + NotLessGreater: "≸", + NotLessLess: "≪̸", + NotLessSlantEqual: "⩽̸", + NotLessTilde: "≴", + NotNestedGreaterGreater: "⪢̸", + NotNestedLessLess: "⪡̸", + notni: "∌", + notniva: "∌", + notnivb: "⋾", + notnivc: "⋽", + NotPrecedes: "⊀", + NotPrecedesEqual: "⪯̸", + NotPrecedesSlantEqual: "⋠", + NotReverseElement: "∌", + NotRightTriangle: "⋫", + NotRightTriangleBar: "⧐̸", + NotRightTriangleEqual: "⋭", + NotSquareSubset: "⊏̸", + NotSquareSubsetEqual: "⋢", + NotSquareSuperset: "⊐̸", + NotSquareSupersetEqual: "⋣", + NotSubset: "⊂⃒", + NotSubsetEqual: "⊈", + NotSucceeds: "⊁", + NotSucceedsEqual: "⪰̸", + NotSucceedsSlantEqual: "⋡", + NotSucceedsTilde: "≿̸", + NotSuperset: "⊃⃒", + NotSupersetEqual: "⊉", + NotTilde: "≁", + NotTildeEqual: "≄", + NotTildeFullEqual: "≇", + NotTildeTilde: "≉", + NotVerticalBar: "∤", + npar: "∦", + nparallel: "∦", + nparsl: "⫽⃥", + npart: "∂̸", + npolint: "⨔", + npr: "⊀", + nprcue: "⋠", + npre: "⪯̸", + nprec: "⊀", + npreceq: "⪯̸", + nrArr: "⇏", + nrarr: "↛", + nrarrc: "⤳̸", + nrarrw: "↝̸", + nRightarrow: "⇏", + nrightarrow: "↛", + nrtri: "⋫", + nrtrie: "⋭", + nsc: "⊁", + nsccue: "⋡", + nsce: "⪰̸", + Nscr: "𝒩", + nscr: "𝓃", + nshortmid: "∤", + nshortparallel: "∦", + nsim: "≁", + nsime: "≄", + nsimeq: "≄", + nsmid: "∤", + nspar: "∦", + nsqsube: "⋢", + nsqsupe: "⋣", + nsub: "⊄", + nsubE: "⫅̸", + nsube: "⊈", + nsubset: "⊂⃒", + nsubseteq: "⊈", + nsubseteqq: "⫅̸", + nsucc: "⊁", + nsucceq: "⪰̸", + nsup: "⊅", + nsupE: "⫆̸", + nsupe: "⊉", + nsupset: "⊃⃒", + nsupseteq: "⊉", + nsupseteqq: "⫆̸", + ntgl: "≹", + Ntilde: "Ñ", + ntilde: "ñ", + ntlg: "≸", + ntriangleleft: "⋪", + ntrianglelefteq: "⋬", + ntriangleright: "⋫", + ntrianglerighteq: "⋭", + Nu: "Ν", + nu: "ν", + num: "#", + numero: "№", + numsp: " ", + nvap: "≍⃒", + nVDash: "⊯", + nVdash: "⊮", + nvDash: "⊭", + nvdash: "⊬", + nvge: "≥⃒", + nvgt: ">⃒", + nvHarr: "⤄", + nvinfin: "⧞", + nvlArr: "⤂", + nvle: "≤⃒", + nvlt: "<⃒", + nvltrie: "⊴⃒", + nvrArr: "⤃", + nvrtrie: "⊵⃒", + nvsim: "∼⃒", + nwarhk: "⤣", + nwArr: "⇖", + nwarr: "↖", + nwarrow: "↖", + nwnear: "⤧", + Oacute: "Ó", + oacute: "ó", + oast: "⊛", + ocir: "⊚", + Ocirc: "Ô", + ocirc: "ô", + Ocy: "О", + ocy: "о", + odash: "⊝", + Odblac: "Ő", + odblac: "ő", + odiv: "⨸", + odot: "⊙", + odsold: "⦼", + OElig: "Œ", + oelig: "œ", + ofcir: "⦿", + Ofr: "𝔒", + ofr: "𝔬", + ogon: "˛", + Ograve: "Ò", + ograve: "ò", + ogt: "⧁", + ohbar: "⦵", + ohm: "Ω", + oint: "∮", + olarr: "↺", + olcir: "⦾", + olcross: "⦻", + oline: "‾", + olt: "⧀", + Omacr: "Ō", + omacr: "ō", + Omega: "Ω", + omega: "ω", + Omicron: "Ο", + omicron: "ο", + omid: "⦶", + ominus: "⊖", + Oopf: "𝕆", + oopf: "𝕠", + opar: "⦷", + OpenCurlyDoubleQuote: "“", + OpenCurlyQuote: "‘", + operp: "⦹", + oplus: "⊕", + Or: "⩔", + or: "∨", + orarr: "↻", + ord: "⩝", + order: "ℴ", + orderof: "ℴ", + ordf: "ª", + ordm: "º", + origof: "⊶", + oror: "⩖", + orslope: "⩗", + orv: "⩛", + oS: "Ⓢ", + Oscr: "𝒪", + oscr: "ℴ", + Oslash: "Ø", + oslash: "ø", + osol: "⊘", + Otilde: "Õ", + otilde: "õ", + Otimes: "⨷", + otimes: "⊗", + otimesas: "⨶", + Ouml: "Ö", + ouml: "ö", + ovbar: "⌽", + OverBar: "‾", + OverBrace: "⏞", + OverBracket: "⎴", + OverParenthesis: "⏜", + par: "∥", + para: "¶", + parallel: "∥", + parsim: "⫳", + parsl: "⫽", + part: "∂", + PartialD: "∂", + Pcy: "П", + pcy: "п", + percnt: "%", + period: ".", + permil: "‰", + perp: "⊥", + pertenk: "‱", + Pfr: "𝔓", + pfr: "𝔭", + Phi: "Φ", + phi: "φ", + phiv: "ϕ", + phmmat: "ℳ", + phone: "☎", + Pi: "Π", + pi: "π", + pitchfork: "⋔", + piv: "ϖ", + planck: "ℏ", + planckh: "ℎ", + plankv: "ℏ", + plus: "+", + plusacir: "⨣", + plusb: "⊞", + pluscir: "⨢", + plusdo: "∔", + plusdu: "⨥", + pluse: "⩲", + PlusMinus: "±", + plusmn: "±", + plussim: "⨦", + plustwo: "⨧", + pm: "±", + Poincareplane: "ℌ", + pointint: "⨕", + Popf: "ℙ", + popf: "𝕡", + pound: "£", + Pr: "⪻", + pr: "≺", + prap: "⪷", + prcue: "≼", + prE: "⪳", + pre: "⪯", + prec: "≺", + precapprox: "⪷", + preccurlyeq: "≼", + Precedes: "≺", + PrecedesEqual: "⪯", + PrecedesSlantEqual: "≼", + PrecedesTilde: "≾", + preceq: "⪯", + precnapprox: "⪹", + precneqq: "⪵", + precnsim: "⋨", + precsim: "≾", + Prime: "″", + prime: "′", + primes: "ℙ", + prnap: "⪹", + prnE: "⪵", + prnsim: "⋨", + prod: "∏", + Product: "∏", + profalar: "⌮", + profline: "⌒", + profsurf: "⌓", + prop: "∝", + Proportion: "∷", + Proportional: "∝", + propto: "∝", + prsim: "≾", + prurel: "⊰", + Pscr: "𝒫", + pscr: "𝓅", + Psi: "Ψ", + psi: "ψ", + puncsp: " ", + Qfr: "𝔔", + qfr: "𝔮", + qint: "⨌", + Qopf: "ℚ", + qopf: "𝕢", + qprime: "⁗", + Qscr: "𝒬", + qscr: "𝓆", + quaternions: "ℍ", + quatint: "⨖", + quest: "?", + questeq: "≟", + QUOT: '"', + quot: '"', + rAarr: "⇛", + race: "∽̱", + Racute: "Ŕ", + racute: "ŕ", + radic: "√", + raemptyv: "⦳", + Rang: "⟫", + rang: "⟩", + rangd: "⦒", + range: "⦥", + rangle: "⟩", + raquo: "»", + Rarr: "↠", + rArr: "⇒", + rarr: "→", + rarrap: "⥵", + rarrb: "⇥", + rarrbfs: "⤠", + rarrc: "⤳", + rarrfs: "⤞", + rarrhk: "↪", + rarrlp: "↬", + rarrpl: "⥅", + rarrsim: "⥴", + Rarrtl: "⤖", + rarrtl: "↣", + rarrw: "↝", + rAtail: "⤜", + ratail: "⤚", + ratio: "∶", + rationals: "ℚ", + RBarr: "⤐", + rBarr: "⤏", + rbarr: "⤍", + rbbrk: "❳", + rbrace: "}", + rbrack: "]", + rbrke: "⦌", + rbrksld: "⦎", + rbrkslu: "⦐", + Rcaron: "Ř", + rcaron: "ř", + Rcedil: "Ŗ", + rcedil: "ŗ", + rceil: "⌉", + rcub: "}", + Rcy: "Р", + rcy: "р", + rdca: "⤷", + rdldhar: "⥩", + rdquo: "”", + rdquor: "”", + rdsh: "↳", + Re: "ℜ", + real: "ℜ", + realine: "ℛ", + realpart: "ℜ", + reals: "ℝ", + rect: "▭", + REG: "®", + reg: "®", + ReverseElement: "∋", + ReverseEquilibrium: "⇋", + ReverseUpEquilibrium: "⥯", + rfisht: "⥽", + rfloor: "⌋", + Rfr: "ℜ", + rfr: "𝔯", + rHar: "⥤", + rhard: "⇁", + rharu: "⇀", + rharul: "⥬", + Rho: "Ρ", + rho: "ρ", + rhov: "ϱ", + RightAngleBracket: "⟩", + RightArrow: "→", + Rightarrow: "⇒", + rightarrow: "→", + RightArrowBar: "⇥", + RightArrowLeftArrow: "⇄", + rightarrowtail: "↣", + RightCeiling: "⌉", + RightDoubleBracket: "⟧", + RightDownTeeVector: "⥝", + RightDownVector: "⇂", + RightDownVectorBar: "⥕", + RightFloor: "⌋", + rightharpoondown: "⇁", + rightharpoonup: "⇀", + rightleftarrows: "⇄", + rightleftharpoons: "⇌", + rightrightarrows: "⇉", + rightsquigarrow: "↝", + RightTee: "⊢", + RightTeeArrow: "↦", + RightTeeVector: "⥛", + rightthreetimes: "⋌", + RightTriangle: "⊳", + RightTriangleBar: "⧐", + RightTriangleEqual: "⊵", + RightUpDownVector: "⥏", + RightUpTeeVector: "⥜", + RightUpVector: "↾", + RightUpVectorBar: "⥔", + RightVector: "⇀", + RightVectorBar: "⥓", + ring: "˚", + risingdotseq: "≓", + rlarr: "⇄", + rlhar: "⇌", + rlm: "‏", + rmoust: "⎱", + rmoustache: "⎱", + rnmid: "⫮", + roang: "⟭", + roarr: "⇾", + robrk: "⟧", + ropar: "⦆", + Ropf: "ℝ", + ropf: "𝕣", + roplus: "⨮", + rotimes: "⨵", + RoundImplies: "⥰", + rpar: ")", + rpargt: "⦔", + rppolint: "⨒", + rrarr: "⇉", + Rrightarrow: "⇛", + rsaquo: "›", + Rscr: "ℛ", + rscr: "𝓇", + Rsh: "↱", + rsh: "↱", + rsqb: "]", + rsquo: "’", + rsquor: "’", + rthree: "⋌", + rtimes: "⋊", + rtri: "▹", + rtrie: "⊵", + rtrif: "▸", + rtriltri: "⧎", + RuleDelayed: "⧴", + ruluhar: "⥨", + rx: "℞", + Sacute: "Ś", + sacute: "ś", + sbquo: "‚", + Sc: "⪼", + sc: "≻", + scap: "⪸", + Scaron: "Š", + scaron: "š", + sccue: "≽", + scE: "⪴", + sce: "⪰", + Scedil: "Ş", + scedil: "ş", + Scirc: "Ŝ", + scirc: "ŝ", + scnap: "⪺", + scnE: "⪶", + scnsim: "⋩", + scpolint: "⨓", + scsim: "≿", + Scy: "С", + scy: "с", + sdot: "⋅", + sdotb: "⊡", + sdote: "⩦", + searhk: "⤥", + seArr: "⇘", + searr: "↘", + searrow: "↘", + sect: "§", + semi: ";", + seswar: "⤩", + setminus: "∖", + setmn: "∖", + sext: "✶", + Sfr: "𝔖", + sfr: "𝔰", + sfrown: "⌢", + sharp: "♯", + SHCHcy: "Щ", + shchcy: "щ", + SHcy: "Ш", + shcy: "ш", + ShortDownArrow: "↓", + ShortLeftArrow: "←", + shortmid: "∣", + shortparallel: "∥", + ShortRightArrow: "→", + ShortUpArrow: "↑", + shy: "­", + Sigma: "Σ", + sigma: "σ", + sigmaf: "ς", + sigmav: "ς", + sim: "∼", + simdot: "⩪", + sime: "≃", + simeq: "≃", + simg: "⪞", + simgE: "⪠", + siml: "⪝", + simlE: "⪟", + simne: "≆", + simplus: "⨤", + simrarr: "⥲", + slarr: "←", + SmallCircle: "∘", + smallsetminus: "∖", + smashp: "⨳", + smeparsl: "⧤", + smid: "∣", + smile: "⌣", + smt: "⪪", + smte: "⪬", + smtes: "⪬︀", + SOFTcy: "Ь", + softcy: "ь", + sol: "/", + solb: "⧄", + solbar: "⌿", + Sopf: "𝕊", + sopf: "𝕤", + spades: "♠", + spadesuit: "♠", + spar: "∥", + sqcap: "⊓", + sqcaps: "⊓︀", + sqcup: "⊔", + sqcups: "⊔︀", + Sqrt: "√", + sqsub: "⊏", + sqsube: "⊑", + sqsubset: "⊏", + sqsubseteq: "⊑", + sqsup: "⊐", + sqsupe: "⊒", + sqsupset: "⊐", + sqsupseteq: "⊒", + squ: "□", + Square: "□", + square: "□", + SquareIntersection: "⊓", + SquareSubset: "⊏", + SquareSubsetEqual: "⊑", + SquareSuperset: "⊐", + SquareSupersetEqual: "⊒", + SquareUnion: "⊔", + squarf: "▪", + squf: "▪", + srarr: "→", + Sscr: "𝒮", + sscr: "𝓈", + ssetmn: "∖", + ssmile: "⌣", + sstarf: "⋆", + Star: "⋆", + star: "☆", + starf: "★", + straightepsilon: "ϵ", + straightphi: "ϕ", + strns: "¯", + Sub: "⋐", + sub: "⊂", + subdot: "⪽", + subE: "⫅", + sube: "⊆", + subedot: "⫃", + submult: "⫁", + subnE: "⫋", + subne: "⊊", + subplus: "⪿", + subrarr: "⥹", + Subset: "⋐", + subset: "⊂", + subseteq: "⊆", + subseteqq: "⫅", + SubsetEqual: "⊆", + subsetneq: "⊊", + subsetneqq: "⫋", + subsim: "⫇", + subsub: "⫕", + subsup: "⫓", + succ: "≻", + succapprox: "⪸", + succcurlyeq: "≽", + Succeeds: "≻", + SucceedsEqual: "⪰", + SucceedsSlantEqual: "≽", + SucceedsTilde: "≿", + succeq: "⪰", + succnapprox: "⪺", + succneqq: "⪶", + succnsim: "⋩", + succsim: "≿", + SuchThat: "∋", + Sum: "∑", + sum: "∑", + sung: "♪", + Sup: "⋑", + sup: "⊃", + sup1: "¹", + sup2: "²", + sup3: "³", + supdot: "⪾", + supdsub: "⫘", + supE: "⫆", + supe: "⊇", + supedot: "⫄", + Superset: "⊃", + SupersetEqual: "⊇", + suphsol: "⟉", + suphsub: "⫗", + suplarr: "⥻", + supmult: "⫂", + supnE: "⫌", + supne: "⊋", + supplus: "⫀", + Supset: "⋑", + supset: "⊃", + supseteq: "⊇", + supseteqq: "⫆", + supsetneq: "⊋", + supsetneqq: "⫌", + supsim: "⫈", + supsub: "⫔", + supsup: "⫖", + swarhk: "⤦", + swArr: "⇙", + swarr: "↙", + swarrow: "↙", + swnwar: "⤪", + szlig: "ß", + Tab: "\t", + target: "⌖", + Tau: "Τ", + tau: "τ", + tbrk: "⎴", + Tcaron: "Ť", + tcaron: "ť", + Tcedil: "Ţ", + tcedil: "ţ", + Tcy: "Т", + tcy: "т", + tdot: "⃛", + telrec: "⌕", + Tfr: "𝔗", + tfr: "𝔱", + there4: "∴", + Therefore: "∴", + therefore: "∴", + Theta: "Θ", + theta: "θ", + thetasym: "ϑ", + thetav: "ϑ", + thickapprox: "≈", + thicksim: "∼", + ThickSpace: "  ", + thinsp: " ", + ThinSpace: " ", + thkap: "≈", + thksim: "∼", + THORN: "Þ", + thorn: "þ", + Tilde: "∼", + tilde: "˜", + TildeEqual: "≃", + TildeFullEqual: "≅", + TildeTilde: "≈", + times: "×", + timesb: "⊠", + timesbar: "⨱", + timesd: "⨰", + tint: "∭", + toea: "⤨", + top: "⊤", + topbot: "⌶", + topcir: "⫱", + Topf: "𝕋", + topf: "𝕥", + topfork: "⫚", + tosa: "⤩", + tprime: "‴", + TRADE: "™", + trade: "™", + triangle: "▵", + triangledown: "▿", + triangleleft: "◃", + trianglelefteq: "⊴", + triangleq: "≜", + triangleright: "▹", + trianglerighteq: "⊵", + tridot: "◬", + trie: "≜", + triminus: "⨺", + TripleDot: "⃛", + triplus: "⨹", + trisb: "⧍", + tritime: "⨻", + trpezium: "⏢", + Tscr: "𝒯", + tscr: "𝓉", + TScy: "Ц", + tscy: "ц", + TSHcy: "Ћ", + tshcy: "ћ", + Tstrok: "Ŧ", + tstrok: "ŧ", + twixt: "≬", + twoheadleftarrow: "↞", + twoheadrightarrow: "↠", + Uacute: "Ú", + uacute: "ú", + Uarr: "↟", + uArr: "⇑", + uarr: "↑", + Uarrocir: "⥉", + Ubrcy: "Ў", + ubrcy: "ў", + Ubreve: "Ŭ", + ubreve: "ŭ", + Ucirc: "Û", + ucirc: "û", + Ucy: "У", + ucy: "у", + udarr: "⇅", + Udblac: "Ű", + udblac: "ű", + udhar: "⥮", + ufisht: "⥾", + Ufr: "𝔘", + ufr: "𝔲", + Ugrave: "Ù", + ugrave: "ù", + uHar: "⥣", + uharl: "↿", + uharr: "↾", + uhblk: "▀", + ulcorn: "⌜", + ulcorner: "⌜", + ulcrop: "⌏", + ultri: "◸", + Umacr: "Ū", + umacr: "ū", + uml: "¨", + UnderBar: "_", + UnderBrace: "⏟", + UnderBracket: "⎵", + UnderParenthesis: "⏝", + Union: "⋃", + UnionPlus: "⊎", + Uogon: "Ų", + uogon: "ų", + Uopf: "𝕌", + uopf: "𝕦", + UpArrow: "↑", + Uparrow: "⇑", + uparrow: "↑", + UpArrowBar: "⤒", + UpArrowDownArrow: "⇅", + UpDownArrow: "↕", + Updownarrow: "⇕", + updownarrow: "↕", + UpEquilibrium: "⥮", + upharpoonleft: "↿", + upharpoonright: "↾", + uplus: "⊎", + UpperLeftArrow: "↖", + UpperRightArrow: "↗", + Upsi: "ϒ", + upsi: "υ", + upsih: "ϒ", + Upsilon: "Υ", + upsilon: "υ", + UpTee: "⊥", + UpTeeArrow: "↥", + upuparrows: "⇈", + urcorn: "⌝", + urcorner: "⌝", + urcrop: "⌎", + Uring: "Ů", + uring: "ů", + urtri: "◹", + Uscr: "𝒰", + uscr: "𝓊", + utdot: "⋰", + Utilde: "Ũ", + utilde: "ũ", + utri: "▵", + utrif: "▴", + uuarr: "⇈", + Uuml: "Ü", + uuml: "ü", + uwangle: "⦧", + vangrt: "⦜", + varepsilon: "ϵ", + varkappa: "ϰ", + varnothing: "∅", + varphi: "ϕ", + varpi: "ϖ", + varpropto: "∝", + vArr: "⇕", + varr: "↕", + varrho: "ϱ", + varsigma: "ς", + varsubsetneq: "⊊︀", + varsubsetneqq: "⫋︀", + varsupsetneq: "⊋︀", + varsupsetneqq: "⫌︀", + vartheta: "ϑ", + vartriangleleft: "⊲", + vartriangleright: "⊳", + Vbar: "⫫", + vBar: "⫨", + vBarv: "⫩", + Vcy: "В", + vcy: "в", + VDash: "⊫", + Vdash: "⊩", + vDash: "⊨", + vdash: "⊢", + Vdashl: "⫦", + Vee: "⋁", + vee: "∨", + veebar: "⊻", + veeeq: "≚", + vellip: "⋮", + Verbar: "‖", + verbar: "|", + Vert: "‖", + vert: "|", + VerticalBar: "∣", + VerticalLine: "|", + VerticalSeparator: "❘", + VerticalTilde: "≀", + VeryThinSpace: " ", + Vfr: "𝔙", + vfr: "𝔳", + vltri: "⊲", + vnsub: "⊂⃒", + vnsup: "⊃⃒", + Vopf: "𝕍", + vopf: "𝕧", + vprop: "∝", + vrtri: "⊳", + Vscr: "𝒱", + vscr: "𝓋", + vsubnE: "⫋︀", + vsubne: "⊊︀", + vsupnE: "⫌︀", + vsupne: "⊋︀", + Vvdash: "⊪", + vzigzag: "⦚", + Wcirc: "Ŵ", + wcirc: "ŵ", + wedbar: "⩟", + Wedge: "⋀", + wedge: "∧", + wedgeq: "≙", + weierp: "℘", + Wfr: "𝔚", + wfr: "𝔴", + Wopf: "𝕎", + wopf: "𝕨", + wp: "℘", + wr: "≀", + wreath: "≀", + Wscr: "𝒲", + wscr: "𝓌", + xcap: "⋂", + xcirc: "◯", + xcup: "⋃", + xdtri: "▽", + Xfr: "𝔛", + xfr: "𝔵", + xhArr: "⟺", + xharr: "⟷", + Xi: "Ξ", + xi: "ξ", + xlArr: "⟸", + xlarr: "⟵", + xmap: "⟼", + xnis: "⋻", + xodot: "⨀", + Xopf: "𝕏", + xopf: "𝕩", + xoplus: "⨁", + xotime: "⨂", + xrArr: "⟹", + xrarr: "⟶", + Xscr: "𝒳", + xscr: "𝓍", + xsqcup: "⨆", + xuplus: "⨄", + xutri: "△", + xvee: "⋁", + xwedge: "⋀", + Yacute: "Ý", + yacute: "ý", + YAcy: "Я", + yacy: "я", + Ycirc: "Ŷ", + ycirc: "ŷ", + Ycy: "Ы", + ycy: "ы", + yen: "¥", + Yfr: "𝔜", + yfr: "𝔶", + YIcy: "Ї", + yicy: "ї", + Yopf: "𝕐", + yopf: "𝕪", + Yscr: "𝒴", + yscr: "𝓎", + YUcy: "Ю", + yucy: "ю", + Yuml: "Ÿ", + yuml: "ÿ", + Zacute: "Ź", + zacute: "ź", + Zcaron: "Ž", + zcaron: "ž", + Zcy: "З", + zcy: "з", + Zdot: "Ż", + zdot: "ż", + zeetrf: "ℨ", + ZeroWidthSpace: "​", + Zeta: "Ζ", + zeta: "ζ", + Zfr: "ℨ", + zfr: "𝔷", + ZHcy: "Ж", + zhcy: "ж", + zigrarr: "⇝", + Zopf: "ℤ", + zopf: "𝕫", + Zscr: "𝒵", + zscr: "𝓏", + zwj: "‍", + zwnj: "‌" + } + , k = Object.prototype.hasOwnProperty; + function y(e) { + return r = e, + (t = v) && k.call(t, r) ? v[e] : e; + var t, r + } + var A = Object.prototype.hasOwnProperty; + function w(e) { + var t = [].slice.call(arguments, 1); + return t.forEach((function(t) { + if (t) { + if ("object" != typeof t) + throw new TypeError(t + "must be object"); + Object.keys(t).forEach((function(r) { + e[r] = t[r] + } + )) + } + } + )), + e + } + var x = /\\([\\!"#$%&'()*+,.\/:;<=>?@[\]^_`{|}~-])/g; + function _(e) { + return e.indexOf("\\") < 0 ? e : e.replace(x, "$1") + } + function C(e) { + return !(e >= 55296 && e <= 57343) && (!(e >= 64976 && e <= 65007) && (65535 != (65535 & e) && 65534 != (65535 & e) && (!(e >= 0 && e <= 8) && (11 !== e && (!(e >= 14 && e <= 31) && (!(e >= 127 && e <= 159) && !(e > 1114111))))))) + } + function q(e) { + if (e > 65535) { + var t = 55296 + ((e -= 65536) >> 10) + , r = 56320 + (1023 & e); + return String.fromCharCode(t, r) + } + return String.fromCharCode(e) + } + var S = /&([a-z#][a-z0-9]{1,31});/gi + , E = /^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))/i; + function M(e, t) { + var r = 0 + , n = y(t); + return t !== n ? n : 35 === t.charCodeAt(0) && E.test(t) && C(r = "x" === t[1].toLowerCase() ? parseInt(t.slice(2), 16) : parseInt(t.slice(1), 10)) ? q(r) : e + } + function L(e) { + return e.indexOf("&") < 0 ? e : e.replace(S, M) + } + var T = /[&<>"]/ + , I = /[&<>"]/g + , O = { + "&": "&", + "<": "<", + ">": ">", + '"': """ + }; + function N(e) { + return O[e] + } + function j(e) { + return T.test(e) ? e.replace(I, N) : e + } + var D = {}; + function R(e, t) { + return ++t >= e.length - 2 ? t : "paragraph_open" === e[t].type && e[t].tight && "inline" === e[t + 1].type && 0 === e[t + 1].content.length && "paragraph_close" === e[t + 2].type && e[t + 2].tight ? R(e, t + 2) : t + } + D.blockquote_open = function() { + return "<blockquote>\n" + } + , + D.blockquote_close = function(e, t) { + return "</blockquote>" + U(e, t) + } + , + D.code = function(e, t) { + return e[t].block ? "<pre><code>" + j(e[t].content) + "</code></pre>" + U(e, t) : "<code>" + j(e[t].content) + "</code>" + } + , + D.fence = function(e, t, r, n, i) { + var o, s, a, l, c = e[t], p = "", u = r.langPrefix; + if (c.params) { + if (s = (o = c.params.split(/\s+/g)).join(" "), + a = i.rules.fence_custom, + l = o[0], + a && A.call(a, l)) + return i.rules.fence_custom[o[0]](e, t, r, n, i); + p = ' class="' + u + j(L(_(s))) + '"' + } + return "<pre><code" + p + ">" + (r.highlight && r.highlight.apply(r.highlight, [c.content].concat(o)) || j(c.content)) + "</code></pre>" + U(e, t) + } + , + D.fence_custom = {}, + D.heading_open = function(e, t) { + return "<h" + e[t].hLevel + ">" + } + , + D.heading_close = function(e, t) { + return "</h" + e[t].hLevel + ">\n" + } + , + D.hr = function(e, t, r) { + return (r.xhtmlOut ? "<hr />" : "<hr>") + U(e, t) + } + , + D.bullet_list_open = function() { + return "<ul>\n" + } + , + D.bullet_list_close = function(e, t) { + return "</ul>" + U(e, t) + } + , + D.list_item_open = function() { + return "<li>" + } + , + D.list_item_close = function() { + return "</li>\n" + } + , + D.ordered_list_open = function(e, t) { + var r = e[t]; + return "<ol" + (r.order > 1 ? ' start="' + r.order + '"' : "") + ">\n" + } + , + D.ordered_list_close = function(e, t) { + return "</ol>" + U(e, t) + } + , + D.paragraph_open = function(e, t) { + return e[t].tight ? "" : "<p>" + } + , + D.paragraph_close = function(e, t) { + var r = !(e[t].tight && t && "inline" === e[t - 1].type && !e[t - 1].content); + return (e[t].tight ? "" : "</p>") + (r ? U(e, t) : "") + } + , + D.link_open = function(e, t, r) { + var n = e[t].title ? ' title="' + j(L(e[t].title)) + '"' : "" + , i = r.linkTarget ? ' target="' + r.linkTarget + '"' : ""; + return '<a href="' + j(e[t].href) + '"' + n + i + ">" + } + , + D.link_close = function() { + return "</a>" + } + , + D.image = function(e, t, r) { + var n = ' src="' + j(e[t].src) + '"' + , i = e[t].title ? ' title="' + j(L(e[t].title)) + '"' : ""; + return "<img" + n + (' alt="' + (e[t].alt ? j(L(_(e[t].alt))) : "") + '"') + i + (r.xhtmlOut ? " /" : "") + ">" + } + , + D.table_open = function() { + return "<table>\n" + } + , + D.table_close = function() { + return "</table>\n" + } + , + D.thead_open = function() { + return "<thead>\n" + } + , + D.thead_close = function() { + return "</thead>\n" + } + , + D.tbody_open = function() { + return "<tbody>\n" + } + , + D.tbody_close = function() { + return "</tbody>\n" + } + , + D.tr_open = function() { + return "<tr>" + } + , + D.tr_close = function() { + return "</tr>\n" + } + , + D.th_open = function(e, t) { + var r = e[t]; + return "<th" + (r.align ? ' style="text-align:' + r.align + '"' : "") + ">" + } + , + D.th_close = function() { + return "</th>" + } + , + D.td_open = function(e, t) { + var r = e[t]; + return "<td" + (r.align ? ' style="text-align:' + r.align + '"' : "") + ">" + } + , + D.td_close = function() { + return "</td>" + } + , + D.strong_open = function() { + return "<strong>" + } + , + D.strong_close = function() { + return "</strong>" + } + , + D.em_open = function() { + return "<em>" + } + , + D.em_close = function() { + return "</em>" + } + , + D.del_open = function() { + return "<del>" + } + , + D.del_close = function() { + return "</del>" + } + , + D.ins_open = function() { + return "<ins>" + } + , + D.ins_close = function() { + return "</ins>" + } + , + D.mark_open = function() { + return "<mark>" + } + , + D.mark_close = function() { + return "</mark>" + } + , + D.sub = function(e, t) { + return "<sub>" + j(e[t].content) + "</sub>" + } + , + D.sup = function(e, t) { + return "<sup>" + j(e[t].content) + "</sup>" + } + , + D.hardbreak = function(e, t, r) { + return r.xhtmlOut ? "<br />\n" : "<br>\n" + } + , + D.softbreak = function(e, t, r) { + return r.breaks ? r.xhtmlOut ? "<br />\n" : "<br>\n" : "\n" + } + , + D.text = function(e, t) { + return j(e[t].content) + } + , + D.htmlblock = function(e, t) { + return e[t].content + } + , + D.htmltag = function(e, t) { + return e[t].content + } + , + D.abbr_open = function(e, t) { + return '<abbr title="' + j(L(e[t].title)) + '">' + } + , + D.abbr_close = function() { + return "</abbr>" + } + , + D.footnote_ref = function(e, t) { + var r = Number(e[t].id + 1).toString() + , n = "fnref" + r; + return e[t].subId > 0 && (n += ":" + e[t].subId), + '<sup class="footnote-ref"><a href="#fn' + r + '" id="' + n + '">[' + r + "]</a></sup>" + } + , + D.footnote_block_open = function(e, t, r) { + return (r.xhtmlOut ? '<hr class="footnotes-sep" />\n' : '<hr class="footnotes-sep">\n') + '<section class="footnotes">\n<ol class="footnotes-list">\n' + } + , + D.footnote_block_close = function() { + return "</ol>\n</section>\n" + } + , + D.footnote_open = function(e, t) { + return '<li id="fn' + Number(e[t].id + 1).toString() + '" class="footnote-item">' + } + , + D.footnote_close = function() { + return "</li>\n" + } + , + D.footnote_anchor = function(e, t) { + var r = "fnref" + Number(e[t].id + 1).toString(); + return e[t].subId > 0 && (r += ":" + e[t].subId), + ' <a href="#' + r + '" class="footnote-backref">↩</a>' + } + , + D.dl_open = function() { + return "<dl>\n" + } + , + D.dt_open = function() { + return "<dt>" + } + , + D.dd_open = function() { + return "<dd>" + } + , + D.dl_close = function() { + return "</dl>\n" + } + , + D.dt_close = function() { + return "</dt>\n" + } + , + D.dd_close = function() { + return "</dd>\n" + } + ; + var U = D.getBreak = function(e, t) { + return (t = R(e, t)) < e.length && "list_item_close" === e[t].type ? "" : "\n" + } + ; + function F() { + this.rules = w({}, D), + this.getBreak = D.getBreak + } + function z() { + this.__rules__ = [], + this.__cache__ = null + } + function P(e, t, r, n, i) { + this.src = e, + this.env = n, + this.options = r, + this.parser = t, + this.tokens = i, + this.pos = 0, + this.posMax = this.src.length, + this.level = 0, + this.pending = "", + this.pendingLevel = 0, + this.cache = [], + this.isInLabel = !1, + this.linkLevel = 0, + this.linkContent = "", + this.labelUnmatchedScopes = 0 + } + function B(e, t) { + var r, n, i, o = -1, s = e.posMax, a = e.pos, l = e.isInLabel; + if (e.isInLabel) + return -1; + if (e.labelUnmatchedScopes) + return e.labelUnmatchedScopes--, + -1; + for (e.pos = t + 1, + e.isInLabel = !0, + r = 1; e.pos < s; ) { + if (91 === (i = e.src.charCodeAt(e.pos))) + r++; + else if (93 === i && 0 === --r) { + n = !0; + break + } + e.parser.skipToken(e) + } + return n ? (o = e.pos, + e.labelUnmatchedScopes = 0) : e.labelUnmatchedScopes = r - 1, + e.pos = a, + e.isInLabel = l, + o + } + function V(e, t, r, n) { + var i, o, s, a, l, c; + if (42 !== e.charCodeAt(0)) + return -1; + if (91 !== e.charCodeAt(1)) + return -1; + if (-1 === e.indexOf("]:")) + return -1; + if ((o = B(i = new P(e,t,r,n,[]), 1)) < 0 || 58 !== e.charCodeAt(o + 1)) + return -1; + for (a = i.posMax, + s = o + 2; s < a && 10 !== i.src.charCodeAt(s); s++) + ; + return l = e.slice(2, o), + 0 === (c = e.slice(o + 2, s).trim()).length ? -1 : (n.abbreviations || (n.abbreviations = {}), + void 0 === n.abbreviations[":" + l] && (n.abbreviations[":" + l] = c), + s) + } + function $(e) { + var t = L(e); + try { + t = decodeURI(t) + } catch (e) {} + return encodeURI(t) + } + function G(e, t) { + var r, n, i, o = t, s = e.posMax; + if (60 === e.src.charCodeAt(t)) { + for (t++; t < s; ) { + if (10 === (r = e.src.charCodeAt(t))) + return !1; + if (62 === r) + return i = $(_(e.src.slice(o + 1, t))), + !!e.parser.validateLink(i) && (e.pos = t + 1, + e.linkContent = i, + !0); + 92 === r && t + 1 < s ? t += 2 : t++ + } + return !1 + } + for (n = 0; t < s && 32 !== (r = e.src.charCodeAt(t)) && !(r < 32 || 127 === r); ) + if (92 === r && t + 1 < s) + t += 2; + else { + if (40 === r && ++n > 1) + break; + if (41 === r && --n < 0) + break; + t++ + } + return o !== t && (i = _(e.src.slice(o, t)), + !!e.parser.validateLink(i) && (e.linkContent = i, + e.pos = t, + !0)) + } + function H(e, t) { + var r, n = t, i = e.posMax, o = e.src.charCodeAt(t); + if (34 !== o && 39 !== o && 40 !== o) + return !1; + for (t++, + 40 === o && (o = 41); t < i; ) { + if ((r = e.src.charCodeAt(t)) === o) + return e.pos = t + 1, + e.linkContent = _(e.src.slice(n + 1, t)), + !0; + 92 === r && t + 1 < i ? t += 2 : t++ + } + return !1 + } + function Z(e) { + return e.trim().replace(/\s+/g, " ").toUpperCase() + } + function Y(e, t, r, n) { + var i, o, s, a, l, c, p, u, f; + if (91 !== e.charCodeAt(0)) + return -1; + if (-1 === e.indexOf("]:")) + return -1; + if ((o = B(i = new P(e,t,r,n,[]), 0)) < 0 || 58 !== e.charCodeAt(o + 1)) + return -1; + for (a = i.posMax, + s = o + 2; s < a && (32 === (l = i.src.charCodeAt(s)) || 10 === l); s++) + ; + if (!G(i, s)) + return -1; + for (p = i.linkContent, + c = s = i.pos, + s += 1; s < a && (32 === (l = i.src.charCodeAt(s)) || 10 === l); s++) + ; + for (s < a && c !== s && H(i, s) ? (u = i.linkContent, + s = i.pos) : (u = "", + s = c); s < a && 32 === i.src.charCodeAt(s); ) + s++; + return s < a && 10 !== i.src.charCodeAt(s) ? -1 : (f = Z(e.slice(1, o)), + void 0 === n.references[f] && (n.references[f] = { + title: u, + href: p + }), + s) + } + F.prototype.renderInline = function(e, t, r) { + for (var n = this.rules, i = e.length, o = 0, s = ""; i--; ) + s += n[e[o].type](e, o++, t, r, this); + return s + } + , + F.prototype.render = function(e, t, r) { + for (var n = this.rules, i = e.length, o = -1, s = ""; ++o < i; ) + "inline" === e[o].type ? s += this.renderInline(e[o].children, t, r) : s += n[e[o].type](e, o, t, r, this); + return s + } + , + z.prototype.__find__ = function(e) { + for (var t = this.__rules__.length, r = -1; t--; ) + if (this.__rules__[++r].name === e) + return r; + return -1 + } + , + z.prototype.__compile__ = function() { + var e = this + , t = [""]; + e.__rules__.forEach((function(e) { + e.enabled && e.alt.forEach((function(e) { + t.indexOf(e) < 0 && t.push(e) + } + )) + } + )), + e.__cache__ = {}, + t.forEach((function(t) { + e.__cache__[t] = [], + e.__rules__.forEach((function(r) { + r.enabled && (t && r.alt.indexOf(t) < 0 || e.__cache__[t].push(r.fn)) + } + )) + } + )) + } + , + z.prototype.at = function(e, t, r) { + var n = this.__find__(e) + , i = r || {}; + if (-1 === n) + throw new Error("Parser rule not found: " + e); + this.__rules__[n].fn = t, + this.__rules__[n].alt = i.alt || [], + this.__cache__ = null + } + , + z.prototype.before = function(e, t, r, n) { + var i = this.__find__(e) + , o = n || {}; + if (-1 === i) + throw new Error("Parser rule not found: " + e); + this.__rules__.splice(i, 0, { + name: t, + enabled: !0, + fn: r, + alt: o.alt || [] + }), + this.__cache__ = null + } + , + z.prototype.after = function(e, t, r, n) { + var i = this.__find__(e) + , o = n || {}; + if (-1 === i) + throw new Error("Parser rule not found: " + e); + this.__rules__.splice(i + 1, 0, { + name: t, + enabled: !0, + fn: r, + alt: o.alt || [] + }), + this.__cache__ = null + } + , + z.prototype.push = function(e, t, r) { + var n = r || {}; + this.__rules__.push({ + name: e, + enabled: !0, + fn: t, + alt: n.alt || [] + }), + this.__cache__ = null + } + , + z.prototype.enable = function(e, t) { + e = Array.isArray(e) ? e : [e], + t && this.__rules__.forEach((function(e) { + e.enabled = !1 + } + )), + e.forEach((function(e) { + var t = this.__find__(e); + if (t < 0) + throw new Error("Rules manager: invalid rule name " + e); + this.__rules__[t].enabled = !0 + } + ), this), + this.__cache__ = null + } + , + z.prototype.disable = function(e) { + (e = Array.isArray(e) ? e : [e]).forEach((function(e) { + var t = this.__find__(e); + if (t < 0) + throw new Error("Rules manager: invalid rule name " + e); + this.__rules__[t].enabled = !1 + } + ), this), + this.__cache__ = null + } + , + z.prototype.getRules = function(e) { + return null === this.__cache__ && this.__compile__(), + this.__cache__[e] || [] + } + , + P.prototype.pushPending = function() { + this.tokens.push({ + type: "text", + content: this.pending, + level: this.pendingLevel + }), + this.pending = "" + } + , + P.prototype.push = function(e) { + this.pending && this.pushPending(), + this.tokens.push(e), + this.pendingLevel = this.level + } + , + P.prototype.cacheSet = function(e, t) { + for (var r = this.cache.length; r <= e; r++) + this.cache.push(0); + this.cache[e] = t + } + , + P.prototype.cacheGet = function(e) { + return e < this.cache.length ? this.cache[e] : 0 + } + ; + var K = " \n()[]'\".,!?-"; + function J(e) { + return e.replace(/([-()\[\]{}+?*.$\^|,:#<!\\])/g, "\\$1") + } + var W = /\+-|\.\.|\?\?\?\?|!!!!|,,|--/ + , X = /\((c|tm|r|p)\)/gi + , Q = { + c: "©", + r: "®", + p: "§", + tm: "™" + }; + function ee(e) { + return e.indexOf("(") < 0 ? e : e.replace(X, (function(e, t) { + return Q[t.toLowerCase()] + } + )) + } + var te = /['"]/ + , re = /['"]/g + , ne = /[-\s()\[\]]/; + function ie(e, t) { + return !(t < 0 || t >= e.length) && !ne.test(e[t]) + } + function oe(e, t, r) { + return e.substr(0, t) + r + e.substr(t + 1) + } + var se = [["block", function(e) { + e.inlineMode ? e.tokens.push({ + type: "inline", + content: e.src.replace(/\n/g, " ").trim(), + level: 0, + lines: [0, 1], + children: [] + }) : e.block.parse(e.src, e.options, e.env, e.tokens) + } + ], ["abbr", function(e) { + var t, r, n, i, o = e.tokens; + if (!e.inlineMode) + for (t = 1, + r = o.length - 1; t < r; t++) + if ("paragraph_open" === o[t - 1].type && "inline" === o[t].type && "paragraph_close" === o[t + 1].type) { + for (n = o[t].content; n.length && !((i = V(n, e.inline, e.options, e.env)) < 0); ) + n = n.slice(i).trim(); + o[t].content = n, + n.length || (o[t - 1].tight = !0, + o[t + 1].tight = !0) + } + } + ], ["references", function(e) { + var t, r, n, i, o = e.tokens; + if (e.env.references = e.env.references || {}, + !e.inlineMode) + for (t = 1, + r = o.length - 1; t < r; t++) + if ("inline" === o[t].type && "paragraph_open" === o[t - 1].type && "paragraph_close" === o[t + 1].type) { + for (n = o[t].content; n.length && !((i = Y(n, e.inline, e.options, e.env)) < 0); ) + n = n.slice(i).trim(); + o[t].content = n, + n.length || (o[t - 1].tight = !0, + o[t + 1].tight = !0) + } + } + ], ["inline", function(e) { + var t, r, n, i = e.tokens; + for (r = 0, + n = i.length; r < n; r++) + "inline" === (t = i[r]).type && e.inline.parse(t.content, e.options, e.env, t.children) + } + ], ["footnote_tail", function(e) { + var t, r, n, i, o, s, a, l, c, p = 0, u = !1, f = {}; + if (e.env.footnotes && (e.tokens = e.tokens.filter((function(e) { + return "footnote_reference_open" === e.type ? (u = !0, + l = [], + c = e.label, + !1) : "footnote_reference_close" === e.type ? (u = !1, + f[":" + c] = l, + !1) : (u && l.push(e), + !u) + } + )), + e.env.footnotes.list)) { + for (s = e.env.footnotes.list, + e.tokens.push({ + type: "footnote_block_open", + level: p++ + }), + t = 0, + r = s.length; t < r; t++) { + for (e.tokens.push({ + type: "footnote_open", + id: t, + level: p++ + }), + s[t].tokens ? ((a = []).push({ + type: "paragraph_open", + tight: !1, + level: p++ + }), + a.push({ + type: "inline", + content: "", + level: p, + children: s[t].tokens + }), + a.push({ + type: "paragraph_close", + tight: !1, + level: --p + })) : s[t].label && (a = f[":" + s[t].label]), + e.tokens = e.tokens.concat(a), + o = "paragraph_close" === e.tokens[e.tokens.length - 1].type ? e.tokens.pop() : null, + i = s[t].count > 0 ? s[t].count : 1, + n = 0; n < i; n++) + e.tokens.push({ + type: "footnote_anchor", + id: t, + subId: n, + level: p + }); + o && e.tokens.push(o), + e.tokens.push({ + type: "footnote_close", + level: --p + }) + } + e.tokens.push({ + type: "footnote_block_close", + level: --p + }) + } + } + ], ["abbr2", function(e) { + var t, r, n, i, o, s, a, l, c, p, u, f, h = e.tokens; + if (e.env.abbreviations) + for (e.env.abbrRegExp || (f = "(^|[" + K.split("").map(J).join("") + "])(" + Object.keys(e.env.abbreviations).map((function(e) { + return e.substr(1) + } + )).sort((function(e, t) { + return t.length - e.length + } + )).map(J).join("|") + ")($|[" + K.split("").map(J).join("") + "])", + e.env.abbrRegExp = new RegExp(f,"g")), + p = e.env.abbrRegExp, + r = 0, + n = h.length; r < n; r++) + if ("inline" === h[r].type) + for (t = (i = h[r].children).length - 1; t >= 0; t--) + if ("text" === (o = i[t]).type) { + for (l = 0, + s = o.content, + p.lastIndex = 0, + c = o.level, + a = []; u = p.exec(s); ) + p.lastIndex > l && a.push({ + type: "text", + content: s.slice(l, u.index + u[1].length), + level: c + }), + a.push({ + type: "abbr_open", + title: e.env.abbreviations[":" + u[2]], + level: c++ + }), + a.push({ + type: "text", + content: u[2], + level: c + }), + a.push({ + type: "abbr_close", + level: --c + }), + l = p.lastIndex - u[3].length; + a.length && (l < s.length && a.push({ + type: "text", + content: s.slice(l), + level: c + }), + h[r].children = i = [].concat(i.slice(0, t), a, i.slice(t + 1))) + } + } + ], ["replacements", function(e) { + var t, r, n, i, o; + if (e.options.typographer) + for (o = e.tokens.length - 1; o >= 0; o--) + if ("inline" === e.tokens[o].type) + for (t = (i = e.tokens[o].children).length - 1; t >= 0; t--) + "text" === (r = i[t]).type && (n = ee(n = r.content), + W.test(n) && (n = n.replace(/\+-/g, "±").replace(/\.{2,}/g, "…").replace(/([?!])…/g, "$1..").replace(/([?!]){4,}/g, "$1$1$1").replace(/,{2,}/g, ",").replace(/(^|[^-])---([^-]|$)/gm, "$1—$2").replace(/(^|\s)--(\s|$)/gm, "$1–$2").replace(/(^|[^-\s])--([^-\s]|$)/gm, "$1–$2")), + r.content = n) + } + ], ["smartquotes", function(e) { + var t, r, n, i, o, s, a, l, c, p, u, f, h, d, g, m, b; + if (e.options.typographer) + for (b = [], + g = e.tokens.length - 1; g >= 0; g--) + if ("inline" === e.tokens[g].type) + for (m = e.tokens[g].children, + b.length = 0, + t = 0; t < m.length; t++) + if ("text" === (r = m[t]).type && !te.test(r.text)) { + for (a = m[t].level, + h = b.length - 1; h >= 0 && !(b[h].level <= a); h--) + ; + b.length = h + 1, + o = 0, + s = (n = r.content).length; + e: for (; o < s && (re.lastIndex = o, + i = re.exec(n)); ) + if (l = !ie(n, i.index - 1), + o = i.index + 1, + d = "'" === i[0], + (c = !ie(n, o)) || l) { + if (u = !c, + f = !l) + for (h = b.length - 1; h >= 0 && (p = b[h], + !(b[h].level < a)); h--) + if (p.single === d && b[h].level === a) { + p = b[h], + d ? (m[p.token].content = oe(m[p.token].content, p.pos, e.options.quotes[2]), + r.content = oe(r.content, i.index, e.options.quotes[3])) : (m[p.token].content = oe(m[p.token].content, p.pos, e.options.quotes[0]), + r.content = oe(r.content, i.index, e.options.quotes[1])), + b.length = h; + continue e + } + u ? b.push({ + token: t, + pos: i.index, + single: d, + level: a + }) : f && d && (r.content = oe(r.content, i.index, "’")) + } else + d && (r.content = oe(r.content, i.index, "’")) + } + } + ]]; + function ae() { + this.options = {}, + this.ruler = new z; + for (var e = 0; e < se.length; e++) + this.ruler.push(se[e][0], se[e][1]) + } + function le(e, t, r, n, i) { + var o, s, a, l, c, p, u; + for (this.src = e, + this.parser = t, + this.options = r, + this.env = n, + this.tokens = i, + this.bMarks = [], + this.eMarks = [], + this.tShift = [], + this.blkIndent = 0, + this.line = 0, + this.lineMax = 0, + this.tight = !1, + this.parentType = "root", + this.ddIndent = -1, + this.level = 0, + this.result = "", + p = 0, + u = !1, + a = l = p = 0, + c = (s = this.src).length; l < c; l++) { + if (o = s.charCodeAt(l), + !u) { + if (32 === o) { + p++; + continue + } + u = !0 + } + 10 !== o && l !== c - 1 || (10 !== o && l++, + this.bMarks.push(a), + this.eMarks.push(l), + this.tShift.push(p), + u = !1, + p = 0, + a = l + 1) + } + this.bMarks.push(s.length), + this.eMarks.push(s.length), + this.tShift.push(0), + this.lineMax = this.bMarks.length - 1 + } + function ce(e, t) { + var r, n, i; + return (n = e.bMarks[t] + e.tShift[t]) >= (i = e.eMarks[t]) || 42 !== (r = e.src.charCodeAt(n++)) && 45 !== r && 43 !== r || n < i && 32 !== e.src.charCodeAt(n) ? -1 : n + } + function pe(e, t) { + var r, n = e.bMarks[t] + e.tShift[t], i = e.eMarks[t]; + if (n + 1 >= i) + return -1; + if ((r = e.src.charCodeAt(n++)) < 48 || r > 57) + return -1; + for (; ; ) { + if (n >= i) + return -1; + if (!((r = e.src.charCodeAt(n++)) >= 48 && r <= 57)) { + if (41 === r || 46 === r) + break; + return -1 + } + } + return n < i && 32 !== e.src.charCodeAt(n) ? -1 : n + } + ae.prototype.process = function(e) { + var t, r, n; + for (t = 0, + r = (n = this.ruler.getRules("")).length; t < r; t++) + n[t](e) + } + , + le.prototype.isEmpty = function(e) { + return this.bMarks[e] + this.tShift[e] >= this.eMarks[e] + } + , + le.prototype.skipEmptyLines = function(e) { + for (var t = this.lineMax; e < t && !(this.bMarks[e] + this.tShift[e] < this.eMarks[e]); e++) + ; + return e + } + , + le.prototype.skipSpaces = function(e) { + for (var t = this.src.length; e < t && 32 === this.src.charCodeAt(e); e++) + ; + return e + } + , + le.prototype.skipChars = function(e, t) { + for (var r = this.src.length; e < r && this.src.charCodeAt(e) === t; e++) + ; + return e + } + , + le.prototype.skipCharsBack = function(e, t, r) { + if (e <= r) + return e; + for (; e > r; ) + if (t !== this.src.charCodeAt(--e)) + return e + 1; + return e + } + , + le.prototype.getLines = function(e, t, r, n) { + var i, o, s, a, l, c = e; + if (e >= t) + return ""; + if (c + 1 === t) + return o = this.bMarks[c] + Math.min(this.tShift[c], r), + s = n ? this.eMarks[c] + 1 : this.eMarks[c], + this.src.slice(o, s); + for (a = new Array(t - e), + i = 0; c < t; c++, + i++) + (l = this.tShift[c]) > r && (l = r), + l < 0 && (l = 0), + o = this.bMarks[c] + l, + s = c + 1 < t || n ? this.eMarks[c] + 1 : this.eMarks[c], + a[i] = this.src.slice(o, s); + return a.join("") + } + ; + var ue = {}; + ["article", "aside", "button", "blockquote", "body", "canvas", "caption", "col", "colgroup", "dd", "div", "dl", "dt", "embed", "fieldset", "figcaption", "figure", "footer", "form", "h1", "h2", "h3", "h4", "h5", "h6", "header", "hgroup", "hr", "iframe", "li", "map", "object", "ol", "output", "p", "pre", "progress", "script", "section", "style", "table", "tbody", "td", "textarea", "tfoot", "th", "tr", "thead", "ul", "video"].forEach((function(e) { + ue[e] = !0 + } + )); + var fe = /^<([a-zA-Z]{1,15})[\s\/>]/ + , he = /^<\/([a-zA-Z]{1,15})[\s>]/; + function de(e, t) { + var r = e.bMarks[t] + e.blkIndent + , n = e.eMarks[t]; + return e.src.substr(r, n - r) + } + function ge(e, t) { + var r, n, i = e.bMarks[t] + e.tShift[t], o = e.eMarks[t]; + return i >= o || 126 !== (n = e.src.charCodeAt(i++)) && 58 !== n || i === (r = e.skipSpaces(i)) || r >= o ? -1 : r + } + var me = [["code", function(e, t, r) { + var n, i; + if (e.tShift[t] - e.blkIndent < 4) + return !1; + for (i = n = t + 1; n < r; ) + if (e.isEmpty(n)) + n++; + else { + if (!(e.tShift[n] - e.blkIndent >= 4)) + break; + i = ++n + } + return e.line = n, + e.tokens.push({ + type: "code", + content: e.getLines(t, i, 4 + e.blkIndent, !0), + block: !0, + lines: [t, e.line], + level: e.level + }), + !0 + } + ], ["fences", function(e, t, r, n) { + var i, o, s, a, l, c = !1, p = e.bMarks[t] + e.tShift[t], u = e.eMarks[t]; + if (p + 3 > u) + return !1; + if (126 !== (i = e.src.charCodeAt(p)) && 96 !== i) + return !1; + if (l = p, + (o = (p = e.skipChars(p, i)) - l) < 3) + return !1; + if ((s = e.src.slice(p, u).trim()).indexOf("`") >= 0) + return !1; + if (n) + return !0; + for (a = t; !(++a >= r) && !((p = l = e.bMarks[a] + e.tShift[a]) < (u = e.eMarks[a]) && e.tShift[a] < e.blkIndent); ) + if (e.src.charCodeAt(p) === i && !(e.tShift[a] - e.blkIndent >= 4 || (p = e.skipChars(p, i)) - l < o || (p = e.skipSpaces(p)) < u)) { + c = !0; + break + } + return o = e.tShift[t], + e.line = a + (c ? 1 : 0), + e.tokens.push({ + type: "fence", + params: s, + content: e.getLines(t + 1, a, o, !0), + lines: [t, e.line], + level: e.level + }), + !0 + } + , ["paragraph", "blockquote", "list"]], ["blockquote", function(e, t, r, n) { + var i, o, s, a, l, c, p, u, f, h, d, g = e.bMarks[t] + e.tShift[t], m = e.eMarks[t]; + if (g > m) + return !1; + if (62 !== e.src.charCodeAt(g++)) + return !1; + if (e.level >= e.options.maxNesting) + return !1; + if (n) + return !0; + for (32 === e.src.charCodeAt(g) && g++, + l = e.blkIndent, + e.blkIndent = 0, + a = [e.bMarks[t]], + e.bMarks[t] = g, + o = (g = g < m ? e.skipSpaces(g) : g) >= m, + s = [e.tShift[t]], + e.tShift[t] = g - e.bMarks[t], + u = e.parser.ruler.getRules("blockquote"), + i = t + 1; i < r && !((g = e.bMarks[i] + e.tShift[i]) >= (m = e.eMarks[i])); i++) + if (62 !== e.src.charCodeAt(g++)) { + if (o) + break; + for (d = !1, + f = 0, + h = u.length; f < h; f++) + if (u[f](e, i, r, !0)) { + d = !0; + break + } + if (d) + break; + a.push(e.bMarks[i]), + s.push(e.tShift[i]), + e.tShift[i] = -1337 + } else + 32 === e.src.charCodeAt(g) && g++, + a.push(e.bMarks[i]), + e.bMarks[i] = g, + o = (g = g < m ? e.skipSpaces(g) : g) >= m, + s.push(e.tShift[i]), + e.tShift[i] = g - e.bMarks[i]; + for (c = e.parentType, + e.parentType = "blockquote", + e.tokens.push({ + type: "blockquote_open", + lines: p = [t, 0], + level: e.level++ + }), + e.parser.tokenize(e, t, i), + e.tokens.push({ + type: "blockquote_close", + level: --e.level + }), + e.parentType = c, + p[1] = e.line, + f = 0; f < s.length; f++) + e.bMarks[f + t] = a[f], + e.tShift[f + t] = s[f]; + return e.blkIndent = l, + !0 + } + , ["paragraph", "blockquote", "list"]], ["hr", function(e, t, r, n) { + var i, o, s, a = e.bMarks[t], l = e.eMarks[t]; + if ((a += e.tShift[t]) > l) + return !1; + if (42 !== (i = e.src.charCodeAt(a++)) && 45 !== i && 95 !== i) + return !1; + for (o = 1; a < l; ) { + if ((s = e.src.charCodeAt(a++)) !== i && 32 !== s) + return !1; + s === i && o++ + } + return !(o < 3) && (n || (e.line = t + 1, + e.tokens.push({ + type: "hr", + lines: [t, e.line], + level: e.level + })), + !0) + } + , ["paragraph", "blockquote", "list"]], ["list", function(e, t, r, n) { + var i, o, s, a, l, c, p, u, f, h, d, g, m, b, v, k, y, A, w, x, _, C = !0; + if ((u = pe(e, t)) >= 0) + g = !0; + else { + if (!((u = ce(e, t)) >= 0)) + return !1; + g = !1 + } + if (e.level >= e.options.maxNesting) + return !1; + if (d = e.src.charCodeAt(u - 1), + n) + return !0; + for (b = e.tokens.length, + g ? (p = e.bMarks[t] + e.tShift[t], + h = Number(e.src.substr(p, u - p - 1)), + e.tokens.push({ + type: "ordered_list_open", + order: h, + lines: k = [t, 0], + level: e.level++ + })) : e.tokens.push({ + type: "bullet_list_open", + lines: k = [t, 0], + level: e.level++ + }), + i = t, + v = !1, + A = e.parser.ruler.getRules("list"); !(!(i < r) || ((f = (m = e.skipSpaces(u)) >= e.eMarks[i] ? 1 : m - u) > 4 && (f = 1), + f < 1 && (f = 1), + o = u - e.bMarks[i] + f, + e.tokens.push({ + type: "list_item_open", + lines: y = [t, 0], + level: e.level++ + }), + a = e.blkIndent, + l = e.tight, + s = e.tShift[t], + c = e.parentType, + e.tShift[t] = m - e.bMarks[t], + e.blkIndent = o, + e.tight = !0, + e.parentType = "list", + e.parser.tokenize(e, t, r, !0), + e.tight && !v || (C = !1), + v = e.line - t > 1 && e.isEmpty(e.line - 1), + e.blkIndent = a, + e.tShift[t] = s, + e.tight = l, + e.parentType = c, + e.tokens.push({ + type: "list_item_close", + level: --e.level + }), + i = t = e.line, + y[1] = i, + m = e.bMarks[t], + i >= r) || e.isEmpty(i) || e.tShift[i] < e.blkIndent); ) { + for (_ = !1, + w = 0, + x = A.length; w < x; w++) + if (A[w](e, i, r, !0)) { + _ = !0; + break + } + if (_) + break; + if (g) { + if ((u = pe(e, i)) < 0) + break + } else if ((u = ce(e, i)) < 0) + break; + if (d !== e.src.charCodeAt(u - 1)) + break + } + return e.tokens.push({ + type: g ? "ordered_list_close" : "bullet_list_close", + level: --e.level + }), + k[1] = i, + e.line = i, + C && function(e, t) { + var r, n, i = e.level + 2; + for (r = t + 2, + n = e.tokens.length - 2; r < n; r++) + e.tokens[r].level === i && "paragraph_open" === e.tokens[r].type && (e.tokens[r + 2].tight = !0, + e.tokens[r].tight = !0, + r += 2) + }(e, b), + !0 + } + , ["paragraph", "blockquote"]], ["footnote", function(e, t, r, n) { + var i, o, s, a, l, c = e.bMarks[t] + e.tShift[t], p = e.eMarks[t]; + if (c + 4 > p) + return !1; + if (91 !== e.src.charCodeAt(c)) + return !1; + if (94 !== e.src.charCodeAt(c + 1)) + return !1; + if (e.level >= e.options.maxNesting) + return !1; + for (a = c + 2; a < p; a++) { + if (32 === e.src.charCodeAt(a)) + return !1; + if (93 === e.src.charCodeAt(a)) + break + } + return a !== c + 2 && (!(a + 1 >= p || 58 !== e.src.charCodeAt(++a)) && (n || (a++, + e.env.footnotes || (e.env.footnotes = {}), + e.env.footnotes.refs || (e.env.footnotes.refs = {}), + l = e.src.slice(c + 2, a - 2), + e.env.footnotes.refs[":" + l] = -1, + e.tokens.push({ + type: "footnote_reference_open", + label: l, + level: e.level++ + }), + i = e.bMarks[t], + o = e.tShift[t], + s = e.parentType, + e.tShift[t] = e.skipSpaces(a) - a, + e.bMarks[t] = a, + e.blkIndent += 4, + e.parentType = "footnote", + e.tShift[t] < e.blkIndent && (e.tShift[t] += e.blkIndent, + e.bMarks[t] -= e.blkIndent), + e.parser.tokenize(e, t, r, !0), + e.parentType = s, + e.blkIndent -= 4, + e.tShift[t] = o, + e.bMarks[t] = i, + e.tokens.push({ + type: "footnote_reference_close", + level: --e.level + })), + !0)) + } + , ["paragraph"]], ["heading", function(e, t, r, n) { + var i, o, s, a = e.bMarks[t] + e.tShift[t], l = e.eMarks[t]; + if (a >= l) + return !1; + if (35 !== (i = e.src.charCodeAt(a)) || a >= l) + return !1; + for (o = 1, + i = e.src.charCodeAt(++a); 35 === i && a < l && o <= 6; ) + o++, + i = e.src.charCodeAt(++a); + return !(o > 6 || a < l && 32 !== i) && (n || (l = e.skipCharsBack(l, 32, a), + (s = e.skipCharsBack(l, 35, a)) > a && 32 === e.src.charCodeAt(s - 1) && (l = s), + e.line = t + 1, + e.tokens.push({ + type: "heading_open", + hLevel: o, + lines: [t, e.line], + level: e.level + }), + a < l && e.tokens.push({ + type: "inline", + content: e.src.slice(a, l).trim(), + level: e.level + 1, + lines: [t, e.line], + children: [] + }), + e.tokens.push({ + type: "heading_close", + hLevel: o, + level: e.level + })), + !0) + } + , ["paragraph", "blockquote"]], ["lheading", function(e, t, r) { + var n, i, o, s = t + 1; + return !(s >= r) && (!(e.tShift[s] < e.blkIndent) && (!(e.tShift[s] - e.blkIndent > 3) && (!((i = e.bMarks[s] + e.tShift[s]) >= (o = e.eMarks[s])) && ((45 === (n = e.src.charCodeAt(i)) || 61 === n) && (i = e.skipChars(i, n), + !((i = e.skipSpaces(i)) < o) && (i = e.bMarks[t] + e.tShift[t], + e.line = s + 1, + e.tokens.push({ + type: "heading_open", + hLevel: 61 === n ? 1 : 2, + lines: [t, e.line], + level: e.level + }), + e.tokens.push({ + type: "inline", + content: e.src.slice(i, e.eMarks[t]).trim(), + level: e.level + 1, + lines: [t, e.line - 1], + children: [] + }), + e.tokens.push({ + type: "heading_close", + hLevel: 61 === n ? 1 : 2, + level: e.level + }), + !0)))))) + } + ], ["htmlblock", function(e, t, r, n) { + var i, o, s, a = e.bMarks[t], l = e.eMarks[t], c = e.tShift[t]; + if (a += c, + !e.options.html) + return !1; + if (c > 3 || a + 2 >= l) + return !1; + if (60 !== e.src.charCodeAt(a)) + return !1; + if (33 === (i = e.src.charCodeAt(a + 1)) || 63 === i) { + if (n) + return !0 + } else { + if (47 !== i && !function(e) { + var t = 32 | e; + return t >= 97 && t <= 122 + }(i)) + return !1; + if (47 === i) { + if (!(o = e.src.slice(a, l).match(he))) + return !1 + } else if (!(o = e.src.slice(a, l).match(fe))) + return !1; + if (!0 !== ue[o[1].toLowerCase()]) + return !1; + if (n) + return !0 + } + for (s = t + 1; s < e.lineMax && !e.isEmpty(s); ) + s++; + return e.line = s, + e.tokens.push({ + type: "htmlblock", + level: e.level, + lines: [t, e.line], + content: e.getLines(t, s, 0, !0) + }), + !0 + } + , ["paragraph", "blockquote"]], ["table", function(e, t, r, n) { + var i, o, s, a, l, c, p, u, f, h, d; + if (t + 2 > r) + return !1; + if (l = t + 1, + e.tShift[l] < e.blkIndent) + return !1; + if ((s = e.bMarks[l] + e.tShift[l]) >= e.eMarks[l]) + return !1; + if (124 !== (i = e.src.charCodeAt(s)) && 45 !== i && 58 !== i) + return !1; + if (o = de(e, t + 1), + !/^[-:| ]+$/.test(o)) + return !1; + if ((c = o.split("|")) <= 2) + return !1; + for (u = [], + a = 0; a < c.length; a++) { + if (!(f = c[a].trim())) { + if (0 === a || a === c.length - 1) + continue; + return !1 + } + if (!/^:?-+:?$/.test(f)) + return !1; + 58 === f.charCodeAt(f.length - 1) ? u.push(58 === f.charCodeAt(0) ? "center" : "right") : 58 === f.charCodeAt(0) ? u.push("left") : u.push("") + } + if (-1 === (o = de(e, t).trim()).indexOf("|")) + return !1; + if (c = o.replace(/^\||\|$/g, "").split("|"), + u.length !== c.length) + return !1; + if (n) + return !0; + for (e.tokens.push({ + type: "table_open", + lines: h = [t, 0], + level: e.level++ + }), + e.tokens.push({ + type: "thead_open", + lines: [t, t + 1], + level: e.level++ + }), + e.tokens.push({ + type: "tr_open", + lines: [t, t + 1], + level: e.level++ + }), + a = 0; a < c.length; a++) + e.tokens.push({ + type: "th_open", + align: u[a], + lines: [t, t + 1], + level: e.level++ + }), + e.tokens.push({ + type: "inline", + content: c[a].trim(), + lines: [t, t + 1], + level: e.level, + children: [] + }), + e.tokens.push({ + type: "th_close", + level: --e.level + }); + for (e.tokens.push({ + type: "tr_close", + level: --e.level + }), + e.tokens.push({ + type: "thead_close", + level: --e.level + }), + e.tokens.push({ + type: "tbody_open", + lines: d = [t + 2, 0], + level: e.level++ + }), + l = t + 2; l < r && !(e.tShift[l] < e.blkIndent) && -1 !== (o = de(e, l).trim()).indexOf("|"); l++) { + for (c = o.replace(/^\||\|$/g, "").split("|"), + e.tokens.push({ + type: "tr_open", + level: e.level++ + }), + a = 0; a < c.length; a++) + e.tokens.push({ + type: "td_open", + align: u[a], + level: e.level++ + }), + p = c[a].substring(124 === c[a].charCodeAt(0) ? 1 : 0, 124 === c[a].charCodeAt(c[a].length - 1) ? c[a].length - 1 : c[a].length).trim(), + e.tokens.push({ + type: "inline", + content: p, + level: e.level, + children: [] + }), + e.tokens.push({ + type: "td_close", + level: --e.level + }); + e.tokens.push({ + type: "tr_close", + level: --e.level + }) + } + return e.tokens.push({ + type: "tbody_close", + level: --e.level + }), + e.tokens.push({ + type: "table_close", + level: --e.level + }), + h[1] = d[1] = l, + e.line = l, + !0 + } + , ["paragraph"]], ["deflist", function(e, t, r, n) { + var i, o, s, a, l, c, p, u, f, h, d, g, m, b; + if (n) + return !(e.ddIndent < 0) && ge(e, t) >= 0; + if (p = t + 1, + e.isEmpty(p) && ++p > r) + return !1; + if (e.tShift[p] < e.blkIndent) + return !1; + if ((i = ge(e, p)) < 0) + return !1; + if (e.level >= e.options.maxNesting) + return !1; + c = e.tokens.length, + e.tokens.push({ + type: "dl_open", + lines: l = [t, 0], + level: e.level++ + }), + s = t, + o = p; + e: for (; ; ) { + for (b = !0, + m = !1, + e.tokens.push({ + type: "dt_open", + lines: [s, s], + level: e.level++ + }), + e.tokens.push({ + type: "inline", + content: e.getLines(s, s + 1, e.blkIndent, !1).trim(), + level: e.level + 1, + lines: [s, s], + children: [] + }), + e.tokens.push({ + type: "dt_close", + level: --e.level + }); ; ) { + if (e.tokens.push({ + type: "dd_open", + lines: a = [p, 0], + level: e.level++ + }), + g = e.tight, + f = e.ddIndent, + u = e.blkIndent, + d = e.tShift[o], + h = e.parentType, + e.blkIndent = e.ddIndent = e.tShift[o] + 2, + e.tShift[o] = i - e.bMarks[o], + e.tight = !0, + e.parentType = "deflist", + e.parser.tokenize(e, o, r, !0), + e.tight && !m || (b = !1), + m = e.line - o > 1 && e.isEmpty(e.line - 1), + e.tShift[o] = d, + e.tight = g, + e.parentType = h, + e.blkIndent = u, + e.ddIndent = f, + e.tokens.push({ + type: "dd_close", + level: --e.level + }), + a[1] = p = e.line, + p >= r) + break e; + if (e.tShift[p] < e.blkIndent) + break e; + if ((i = ge(e, p)) < 0) + break; + o = p + } + if (p >= r) + break; + if (s = p, + e.isEmpty(s)) + break; + if (e.tShift[s] < e.blkIndent) + break; + if ((o = s + 1) >= r) + break; + if (e.isEmpty(o) && o++, + o >= r) + break; + if (e.tShift[o] < e.blkIndent) + break; + if ((i = ge(e, o)) < 0) + break + } + return e.tokens.push({ + type: "dl_close", + level: --e.level + }), + l[1] = p, + e.line = p, + b && function(e, t) { + var r, n, i = e.level + 2; + for (r = t + 2, + n = e.tokens.length - 2; r < n; r++) + e.tokens[r].level === i && "paragraph_open" === e.tokens[r].type && (e.tokens[r + 2].tight = !0, + e.tokens[r].tight = !0, + r += 2) + }(e, c), + !0 + } + , ["paragraph"]], ["paragraph", function(e, t) { + var r, n, i, o, s, a, l = t + 1; + if (l < (r = e.lineMax) && !e.isEmpty(l)) + for (a = e.parser.ruler.getRules("paragraph"); l < r && !e.isEmpty(l); l++) + if (!(e.tShift[l] - e.blkIndent > 3)) { + for (i = !1, + o = 0, + s = a.length; o < s; o++) + if (a[o](e, l, r, !0)) { + i = !0; + break + } + if (i) + break + } + return n = e.getLines(t, l, e.blkIndent, !1).trim(), + e.line = l, + n.length && (e.tokens.push({ + type: "paragraph_open", + tight: !1, + lines: [t, e.line], + level: e.level + }), + e.tokens.push({ + type: "inline", + content: n, + level: e.level + 1, + lines: [t, e.line], + children: [] + }), + e.tokens.push({ + type: "paragraph_close", + tight: !1, + level: e.level + })), + !0 + } + ]]; + function be() { + this.ruler = new z; + for (var e = 0; e < me.length; e++) + this.ruler.push(me[e][0], me[e][1], { + alt: (me[e][2] || []).slice() + }) + } + be.prototype.tokenize = function(e, t, r) { + for (var n, i = this.ruler.getRules(""), o = i.length, s = t, a = !1; s < r && (e.line = s = e.skipEmptyLines(s), + !(s >= r)) && !(e.tShift[s] < e.blkIndent); ) { + for (n = 0; n < o && !i[n](e, s, r, !1); n++) + ; + if (e.tight = !a, + e.isEmpty(e.line - 1) && (a = !0), + (s = e.line) < r && e.isEmpty(s)) { + if (a = !0, + ++s < r && "list" === e.parentType && e.isEmpty(s)) + break; + e.line = s + } + } + } + ; + var ve = /[\n\t]/g + , ke = /\r[\n\u0085]|[\u2424\u2028\u0085]/g + , ye = /\u00a0/g; + function Ae(e) { + switch (e) { + case 10: + case 92: + case 96: + case 42: + case 95: + case 94: + case 91: + case 93: + case 33: + case 38: + case 60: + case 62: + case 123: + case 125: + case 36: + case 37: + case 64: + case 126: + case 43: + case 61: + case 58: + return !0; + default: + return !1 + } + } + be.prototype.parse = function(e, t, r, n) { + var i, o = 0, s = 0; + if (!e) + return []; + (e = (e = e.replace(ye, " ")).replace(ke, "\n")).indexOf("\t") >= 0 && (e = e.replace(ve, (function(t, r) { + var n; + return 10 === e.charCodeAt(r) ? (o = r + 1, + s = 0, + t) : (n = " ".slice((r - o - s) % 4), + s = r - o + 1, + n) + } + ))), + i = new le(e,this,t,r,n), + this.tokenize(i, i.line, i.lineMax) + } + ; + for (var we = [], xe = 0; xe < 256; xe++) + we.push(0); + function _e(e) { + return e >= 48 && e <= 57 || e >= 65 && e <= 90 || e >= 97 && e <= 122 + } + function Ce(e, t) { + var r, n, i, o = t, s = !0, a = !0, l = e.posMax, c = e.src.charCodeAt(t); + for (r = t > 0 ? e.src.charCodeAt(t - 1) : -1; o < l && e.src.charCodeAt(o) === c; ) + o++; + return o >= l && (s = !1), + (i = o - t) >= 4 ? s = a = !1 : (32 !== (n = o < l ? e.src.charCodeAt(o) : -1) && 10 !== n || (s = !1), + 32 !== r && 10 !== r || (a = !1), + 95 === c && (_e(r) && (s = !1), + _e(n) && (a = !1))), + { + can_open: s, + can_close: a, + delims: i + } + } + "\\!\"#$%&'()*+,./:;<=>?@[]^_`{|}~-".split("").forEach((function(e) { + we[e.charCodeAt(0)] = 1 + } + )); + var qe = /\\([ \\!"#$%&'()*+,.\/:;<=>?@[\]^_`{|}~-])/g; + var Se = /\\([ \\!"#$%&'()*+,.\/:;<=>?@[\]^_`{|}~-])/g; + var Ee = ["coap", "doi", "javascript", "aaa", "aaas", "about", "acap", "cap", "cid", "crid", "data", "dav", "dict", "dns", "file", "ftp", "geo", "go", "gopher", "h323", "http", "https", "iax", "icap", "im", "imap", "info", "ipp", "iris", "iris.beep", "iris.xpc", "iris.xpcs", "iris.lwz", "ldap", "mailto", "mid", "msrp", "msrps", "mtqp", "mupdate", "news", "nfs", "ni", "nih", "nntp", "opaquelocktoken", "pop", "pres", "rtsp", "service", "session", "shttp", "sieve", "sip", "sips", "sms", "snmp", "soap.beep", "soap.beeps", "tag", "tel", "telnet", "tftp", "thismessage", "tn3270", "tip", "tv", "urn", "vemmi", "ws", "wss", "xcon", "xcon-userid", "xmlrpc.beep", "xmlrpc.beeps", "xmpp", "z39.50r", "z39.50s", "adiumxtra", "afp", "afs", "aim", "apt", "attachment", "aw", "beshare", "bitcoin", "bolo", "callto", "chrome", "chrome-extension", "com-eventbrite-attendee", "content", "cvs", "dlna-playsingle", "dlna-playcontainer", "dtn", "dvb", "ed2k", "facetime", "feed", "finger", "fish", "gg", "git", "gizmoproject", "gtalk", "hcp", "icon", "ipn", "irc", "irc6", "ircs", "itms", "jar", "jms", "keyparc", "lastfm", "ldaps", "magnet", "maps", "market", "message", "mms", "ms-help", "msnim", "mumble", "mvn", "notes", "oid", "palm", "paparazzi", "platform", "proxy", "psyc", "query", "res", "resource", "rmi", "rsync", "rtmp", "secondlife", "sftp", "sgn", "skype", "smb", "soldat", "spotify", "ssh", "steam", "svn", "teamspeak", "things", "udp", "unreal", "ut2004", "ventrilo", "view-source", "webcal", "wtai", "wyciwyg", "xfire", "xri", "ymsgr"] + , Me = /^<([a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*)>/ + , Le = /^<([a-zA-Z.\-]{1,25}):([^<>\x00-\x20]*)>/; + function Te(e, t) { + return e = e.source, + t = t || "", + function r(n, i) { + return n ? (i = i.source || i, + e = e.replace(n, i), + r) : new RegExp(e,t) + } + } + var Ie = Te(/(?:unquoted|single_quoted|double_quoted)/)("unquoted", /[^"'=<>`\x00-\x20]+/)("single_quoted", /'[^']*'/)("double_quoted", /"[^"]*"/)() + , Oe = Te(/(?:\s+attr_name(?:\s*=\s*attr_value)?)/)("attr_name", /[a-zA-Z_:][a-zA-Z0-9:._-]*/)("attr_value", Ie)() + , Ne = Te(/<[A-Za-z][A-Za-z0-9]*attribute*\s*\/?>/)("attribute", Oe)() + , je = Te(/^(?:open_tag|close_tag|comment|processing|declaration|cdata)/)("open_tag", Ne)("close_tag", /<\/[A-Za-z][A-Za-z0-9]*\s*>/)("comment", /<!---->|<!--(?:-?[^>-])(?:-?[^-])*-->/)("processing", /<[?].*?[?]>/)("declaration", /<![A-Z]+\s+[^>]*>/)("cdata", /<!\[CDATA\[[\s\S]*?\]\]>/)(); + var De = /^&#((?:x[a-f0-9]{1,8}|[0-9]{1,8}));/i + , Re = /^&([a-z][a-z0-9]{1,31});/i; + var Ue = [["text", function(e, t) { + for (var r = e.pos; r < e.posMax && !Ae(e.src.charCodeAt(r)); ) + r++; + return r !== e.pos && (t || (e.pending += e.src.slice(e.pos, r)), + e.pos = r, + !0) + } + ], ["newline", function(e, t) { + var r, n, i = e.pos; + if (10 !== e.src.charCodeAt(i)) + return !1; + if (r = e.pending.length - 1, + n = e.posMax, + !t) + if (r >= 0 && 32 === e.pending.charCodeAt(r)) + if (r >= 1 && 32 === e.pending.charCodeAt(r - 1)) { + for (var o = r - 2; o >= 0; o--) + if (32 !== e.pending.charCodeAt(o)) { + e.pending = e.pending.substring(0, o + 1); + break + } + e.push({ + type: "hardbreak", + level: e.level + }) + } else + e.pending = e.pending.slice(0, -1), + e.push({ + type: "softbreak", + level: e.level + }); + else + e.push({ + type: "softbreak", + level: e.level + }); + for (i++; i < n && 32 === e.src.charCodeAt(i); ) + i++; + return e.pos = i, + !0 + } + ], ["escape", function(e, t) { + var r, n = e.pos, i = e.posMax; + if (92 !== e.src.charCodeAt(n)) + return !1; + if (++n < i) { + if ((r = e.src.charCodeAt(n)) < 256 && 0 !== we[r]) + return t || (e.pending += e.src[n]), + e.pos += 2, + !0; + if (10 === r) { + for (t || e.push({ + type: "hardbreak", + level: e.level + }), + n++; n < i && 32 === e.src.charCodeAt(n); ) + n++; + return e.pos = n, + !0 + } + } + return t || (e.pending += "\\"), + e.pos++, + !0 + } + ], ["backticks", function(e, t) { + var r, n, i, o, s, a = e.pos; + if (96 !== e.src.charCodeAt(a)) + return !1; + for (r = a, + a++, + n = e.posMax; a < n && 96 === e.src.charCodeAt(a); ) + a++; + for (i = e.src.slice(r, a), + o = s = a; -1 !== (o = e.src.indexOf("`", s)); ) { + for (s = o + 1; s < n && 96 === e.src.charCodeAt(s); ) + s++; + if (s - o === i.length) + return t || e.push({ + type: "code", + content: e.src.slice(a, o).replace(/[ \n]+/g, " ").trim(), + block: !1, + level: e.level + }), + e.pos = s, + !0 + } + return t || (e.pending += i), + e.pos += i.length, + !0 + } + ], ["del", function(e, t) { + var r, n, i, o, s, a = e.posMax, l = e.pos; + if (126 !== e.src.charCodeAt(l)) + return !1; + if (t) + return !1; + if (l + 4 >= a) + return !1; + if (126 !== e.src.charCodeAt(l + 1)) + return !1; + if (e.level >= e.options.maxNesting) + return !1; + if (o = l > 0 ? e.src.charCodeAt(l - 1) : -1, + s = e.src.charCodeAt(l + 2), + 126 === o) + return !1; + if (126 === s) + return !1; + if (32 === s || 10 === s) + return !1; + for (n = l + 2; n < a && 126 === e.src.charCodeAt(n); ) + n++; + if (n > l + 3) + return e.pos += n - l, + t || (e.pending += e.src.slice(l, n)), + !0; + for (e.pos = l + 2, + i = 1; e.pos + 1 < a; ) { + if (126 === e.src.charCodeAt(e.pos) && 126 === e.src.charCodeAt(e.pos + 1) && (o = e.src.charCodeAt(e.pos - 1), + 126 !== (s = e.pos + 2 < a ? e.src.charCodeAt(e.pos + 2) : -1) && 126 !== o && (32 !== o && 10 !== o ? i-- : 32 !== s && 10 !== s && i++, + i <= 0))) { + r = !0; + break + } + e.parser.skipToken(e) + } + return r ? (e.posMax = e.pos, + e.pos = l + 2, + t || (e.push({ + type: "del_open", + level: e.level++ + }), + e.parser.tokenize(e), + e.push({ + type: "del_close", + level: --e.level + })), + e.pos = e.posMax + 2, + e.posMax = a, + !0) : (e.pos = l, + !1) + } + ], ["ins", function(e, t) { + var r, n, i, o, s, a = e.posMax, l = e.pos; + if (43 !== e.src.charCodeAt(l)) + return !1; + if (t) + return !1; + if (l + 4 >= a) + return !1; + if (43 !== e.src.charCodeAt(l + 1)) + return !1; + if (e.level >= e.options.maxNesting) + return !1; + if (o = l > 0 ? e.src.charCodeAt(l - 1) : -1, + s = e.src.charCodeAt(l + 2), + 43 === o) + return !1; + if (43 === s) + return !1; + if (32 === s || 10 === s) + return !1; + for (n = l + 2; n < a && 43 === e.src.charCodeAt(n); ) + n++; + if (n !== l + 2) + return e.pos += n - l, + t || (e.pending += e.src.slice(l, n)), + !0; + for (e.pos = l + 2, + i = 1; e.pos + 1 < a; ) { + if (43 === e.src.charCodeAt(e.pos) && 43 === e.src.charCodeAt(e.pos + 1) && (o = e.src.charCodeAt(e.pos - 1), + 43 !== (s = e.pos + 2 < a ? e.src.charCodeAt(e.pos + 2) : -1) && 43 !== o && (32 !== o && 10 !== o ? i-- : 32 !== s && 10 !== s && i++, + i <= 0))) { + r = !0; + break + } + e.parser.skipToken(e) + } + return r ? (e.posMax = e.pos, + e.pos = l + 2, + t || (e.push({ + type: "ins_open", + level: e.level++ + }), + e.parser.tokenize(e), + e.push({ + type: "ins_close", + level: --e.level + })), + e.pos = e.posMax + 2, + e.posMax = a, + !0) : (e.pos = l, + !1) + } + ], ["mark", function(e, t) { + var r, n, i, o, s, a = e.posMax, l = e.pos; + if (61 !== e.src.charCodeAt(l)) + return !1; + if (t) + return !1; + if (l + 4 >= a) + return !1; + if (61 !== e.src.charCodeAt(l + 1)) + return !1; + if (e.level >= e.options.maxNesting) + return !1; + if (o = l > 0 ? e.src.charCodeAt(l - 1) : -1, + s = e.src.charCodeAt(l + 2), + 61 === o) + return !1; + if (61 === s) + return !1; + if (32 === s || 10 === s) + return !1; + for (n = l + 2; n < a && 61 === e.src.charCodeAt(n); ) + n++; + if (n !== l + 2) + return e.pos += n - l, + t || (e.pending += e.src.slice(l, n)), + !0; + for (e.pos = l + 2, + i = 1; e.pos + 1 < a; ) { + if (61 === e.src.charCodeAt(e.pos) && 61 === e.src.charCodeAt(e.pos + 1) && (o = e.src.charCodeAt(e.pos - 1), + 61 !== (s = e.pos + 2 < a ? e.src.charCodeAt(e.pos + 2) : -1) && 61 !== o && (32 !== o && 10 !== o ? i-- : 32 !== s && 10 !== s && i++, + i <= 0))) { + r = !0; + break + } + e.parser.skipToken(e) + } + return r ? (e.posMax = e.pos, + e.pos = l + 2, + t || (e.push({ + type: "mark_open", + level: e.level++ + }), + e.parser.tokenize(e), + e.push({ + type: "mark_close", + level: --e.level + })), + e.pos = e.posMax + 2, + e.posMax = a, + !0) : (e.pos = l, + !1) + } + ], ["emphasis", function(e, t) { + var r, n, i, o, s, a, l, c = e.posMax, p = e.pos, u = e.src.charCodeAt(p); + if (95 !== u && 42 !== u) + return !1; + if (t) + return !1; + if (r = (l = Ce(e, p)).delims, + !l.can_open) + return e.pos += r, + t || (e.pending += e.src.slice(p, e.pos)), + !0; + if (e.level >= e.options.maxNesting) + return !1; + for (e.pos = p + r, + a = [r]; e.pos < c; ) + if (e.src.charCodeAt(e.pos) !== u) + e.parser.skipToken(e); + else { + if (n = (l = Ce(e, e.pos)).delims, + l.can_close) { + for (o = a.pop(), + s = n; o !== s; ) { + if (s < o) { + a.push(o - s); + break + } + if (s -= o, + 0 === a.length) + break; + e.pos += o, + o = a.pop() + } + if (0 === a.length) { + r = o, + i = !0; + break + } + e.pos += n; + continue + } + l.can_open && a.push(n), + e.pos += n + } + return i ? (e.posMax = e.pos, + e.pos = p + r, + t || (2 !== r && 3 !== r || e.push({ + type: "strong_open", + level: e.level++ + }), + 1 !== r && 3 !== r || e.push({ + type: "em_open", + level: e.level++ + }), + e.parser.tokenize(e), + 1 !== r && 3 !== r || e.push({ + type: "em_close", + level: --e.level + }), + 2 !== r && 3 !== r || e.push({ + type: "strong_close", + level: --e.level + })), + e.pos = e.posMax + r, + e.posMax = c, + !0) : (e.pos = p, + !1) + } + ], ["sub", function(e, t) { + var r, n, i = e.posMax, o = e.pos; + if (126 !== e.src.charCodeAt(o)) + return !1; + if (t) + return !1; + if (o + 2 >= i) + return !1; + if (e.level >= e.options.maxNesting) + return !1; + for (e.pos = o + 1; e.pos < i; ) { + if (126 === e.src.charCodeAt(e.pos)) { + r = !0; + break + } + e.parser.skipToken(e) + } + return r && o + 1 !== e.pos ? (n = e.src.slice(o + 1, e.pos)).match(/(^|[^\\])(\\\\)*\s/) ? (e.pos = o, + !1) : (e.posMax = e.pos, + e.pos = o + 1, + t || e.push({ + type: "sub", + level: e.level, + content: n.replace(qe, "$1") + }), + e.pos = e.posMax + 1, + e.posMax = i, + !0) : (e.pos = o, + !1) + } + ], ["sup", function(e, t) { + var r, n, i = e.posMax, o = e.pos; + if (94 !== e.src.charCodeAt(o)) + return !1; + if (t) + return !1; + if (o + 2 >= i) + return !1; + if (e.level >= e.options.maxNesting) + return !1; + for (e.pos = o + 1; e.pos < i; ) { + if (94 === e.src.charCodeAt(e.pos)) { + r = !0; + break + } + e.parser.skipToken(e) + } + return r && o + 1 !== e.pos ? (n = e.src.slice(o + 1, e.pos)).match(/(^|[^\\])(\\\\)*\s/) ? (e.pos = o, + !1) : (e.posMax = e.pos, + e.pos = o + 1, + t || e.push({ + type: "sup", + level: e.level, + content: n.replace(Se, "$1") + }), + e.pos = e.posMax + 1, + e.posMax = i, + !0) : (e.pos = o, + !1) + } + ], ["links", function(e, t) { + var r, n, i, o, s, a, l, c, p = !1, u = e.pos, f = e.posMax, h = e.pos, d = e.src.charCodeAt(h); + if (33 === d && (p = !0, + d = e.src.charCodeAt(++h)), + 91 !== d) + return !1; + if (e.level >= e.options.maxNesting) + return !1; + if (r = h + 1, + (n = B(e, h)) < 0) + return !1; + if ((a = n + 1) < f && 40 === e.src.charCodeAt(a)) { + for (a++; a < f && (32 === (c = e.src.charCodeAt(a)) || 10 === c); a++) + ; + if (a >= f) + return !1; + for (h = a, + G(e, a) ? (o = e.linkContent, + a = e.pos) : o = "", + h = a; a < f && (32 === (c = e.src.charCodeAt(a)) || 10 === c); a++) + ; + if (a < f && h !== a && H(e, a)) + for (s = e.linkContent, + a = e.pos; a < f && (32 === (c = e.src.charCodeAt(a)) || 10 === c); a++) + ; + else + s = ""; + if (a >= f || 41 !== e.src.charCodeAt(a)) + return e.pos = u, + !1; + a++ + } else { + if (e.linkLevel > 0) + return !1; + for (; a < f && (32 === (c = e.src.charCodeAt(a)) || 10 === c); a++) + ; + if (a < f && 91 === e.src.charCodeAt(a) && (h = a + 1, + (a = B(e, a)) >= 0 ? i = e.src.slice(h, a++) : a = h - 1), + i || (void 0 === i && (a = n + 1), + i = e.src.slice(r, n)), + !(l = e.env.references[Z(i)])) + return e.pos = u, + !1; + o = l.href, + s = l.title + } + return t || (e.pos = r, + e.posMax = n, + p ? e.push({ + type: "image", + src: o, + title: s, + alt: e.src.substr(r, n - r), + level: e.level + }) : (e.push({ + type: "link_open", + href: o, + title: s, + level: e.level++ + }), + e.linkLevel++, + e.parser.tokenize(e), + e.linkLevel--, + e.push({ + type: "link_close", + level: --e.level + }))), + e.pos = a, + e.posMax = f, + !0 + } + ], ["footnote_inline", function(e, t) { + var r, n, i, o, s = e.posMax, a = e.pos; + return !(a + 2 >= s) && (94 === e.src.charCodeAt(a) && (91 === e.src.charCodeAt(a + 1) && (!(e.level >= e.options.maxNesting) && (r = a + 2, + !((n = B(e, a + 1)) < 0) && (t || (e.env.footnotes || (e.env.footnotes = {}), + e.env.footnotes.list || (e.env.footnotes.list = []), + i = e.env.footnotes.list.length, + e.pos = r, + e.posMax = n, + e.push({ + type: "footnote_ref", + id: i, + level: e.level + }), + e.linkLevel++, + o = e.tokens.length, + e.parser.tokenize(e), + e.env.footnotes.list[i] = { + tokens: e.tokens.splice(o) + }, + e.linkLevel--), + e.pos = n + 1, + e.posMax = s, + !0))))) + } + ], ["footnote_ref", function(e, t) { + var r, n, i, o, s = e.posMax, a = e.pos; + if (a + 3 > s) + return !1; + if (!e.env.footnotes || !e.env.footnotes.refs) + return !1; + if (91 !== e.src.charCodeAt(a)) + return !1; + if (94 !== e.src.charCodeAt(a + 1)) + return !1; + if (e.level >= e.options.maxNesting) + return !1; + for (n = a + 2; n < s; n++) { + if (32 === e.src.charCodeAt(n)) + return !1; + if (10 === e.src.charCodeAt(n)) + return !1; + if (93 === e.src.charCodeAt(n)) + break + } + return n !== a + 2 && (!(n >= s) && (n++, + r = e.src.slice(a + 2, n - 1), + void 0 !== e.env.footnotes.refs[":" + r] && (t || (e.env.footnotes.list || (e.env.footnotes.list = []), + e.env.footnotes.refs[":" + r] < 0 ? (i = e.env.footnotes.list.length, + e.env.footnotes.list[i] = { + label: r, + count: 0 + }, + e.env.footnotes.refs[":" + r] = i) : i = e.env.footnotes.refs[":" + r], + o = e.env.footnotes.list[i].count, + e.env.footnotes.list[i].count++, + e.push({ + type: "footnote_ref", + id: i, + subId: o, + level: e.level + })), + e.pos = n, + e.posMax = s, + !0))) + } + ], ["autolink", function(e, t) { + var r, n, i, o, s, a = e.pos; + return 60 === e.src.charCodeAt(a) && (!((r = e.src.slice(a)).indexOf(">") < 0) && ((n = r.match(Le)) ? !(Ee.indexOf(n[1].toLowerCase()) < 0) && (s = $(o = n[0].slice(1, -1)), + !!e.parser.validateLink(o) && (t || (e.push({ + type: "link_open", + href: s, + level: e.level + }), + e.push({ + type: "text", + content: o, + level: e.level + 1 + }), + e.push({ + type: "link_close", + level: e.level + })), + e.pos += n[0].length, + !0)) : !!(i = r.match(Me)) && (s = $("mailto:" + (o = i[0].slice(1, -1))), + !!e.parser.validateLink(s) && (t || (e.push({ + type: "link_open", + href: s, + level: e.level + }), + e.push({ + type: "text", + content: o, + level: e.level + 1 + }), + e.push({ + type: "link_close", + level: e.level + })), + e.pos += i[0].length, + !0)))) + } + ], ["htmltag", function(e, t) { + var r, n, i, o = e.pos; + return !!e.options.html && (i = e.posMax, + !(60 !== e.src.charCodeAt(o) || o + 2 >= i) && (!(33 !== (r = e.src.charCodeAt(o + 1)) && 63 !== r && 47 !== r && !function(e) { + var t = 32 | e; + return t >= 97 && t <= 122 + }(r)) && (!!(n = e.src.slice(o).match(je)) && (t || e.push({ + type: "htmltag", + content: e.src.slice(o, o + n[0].length), + level: e.level + }), + e.pos += n[0].length, + !0)))) + } + ], ["entity", function(e, t) { + var r, n, i = e.pos, o = e.posMax; + if (38 !== e.src.charCodeAt(i)) + return !1; + if (i + 1 < o) + if (35 === e.src.charCodeAt(i + 1)) { + if (n = e.src.slice(i).match(De)) + return t || (r = "x" === n[1][0].toLowerCase() ? parseInt(n[1].slice(1), 16) : parseInt(n[1], 10), + e.pending += C(r) ? q(r) : q(65533)), + e.pos += n[0].length, + !0 + } else if (n = e.src.slice(i).match(Re)) { + var s = y(n[1]); + if (n[1] !== s) + return t || (e.pending += s), + e.pos += n[0].length, + !0 + } + return t || (e.pending += "&"), + e.pos++, + !0 + } + ]]; + function Fe() { + this.ruler = new z; + for (var e = 0; e < Ue.length; e++) + this.ruler.push(Ue[e][0], Ue[e][1]); + this.validateLink = ze + } + function ze(e) { + var t = e.trim().toLowerCase(); + return -1 === (t = L(t)).indexOf(":") || -1 === ["vbscript", "javascript", "file", "data"].indexOf(t.split(":")[0]) + } + Fe.prototype.skipToken = function(e) { + var t, r, n = this.ruler.getRules(""), i = n.length, o = e.pos; + if ((r = e.cacheGet(o)) > 0) + e.pos = r; + else { + for (t = 0; t < i; t++) + if (n[t](e, !0)) + return void e.cacheSet(o, e.pos); + e.pos++, + e.cacheSet(o, e.pos) + } + } + , + Fe.prototype.tokenize = function(e) { + for (var t, r, n = this.ruler.getRules(""), i = n.length, o = e.posMax; e.pos < o; ) { + for (r = 0; r < i && !(t = n[r](e, !1)); r++) + ; + if (t) { + if (e.pos >= o) + break + } else + e.pending += e.src[e.pos++] + } + e.pending && e.pushPending() + } + , + Fe.prototype.parse = function(e, t, r, n) { + var i = new P(e,this,t,r,n); + this.tokenize(i) + } + ; + var Pe = { + default: { + options: { + html: !1, + xhtmlOut: !1, + breaks: !1, + langPrefix: "language-", + linkTarget: "", + typographer: !1, + quotes: "“”‘’", + highlight: null, + maxNesting: 20 + }, + components: { + core: { + rules: ["block", "inline", "references", "replacements", "smartquotes", "references", "abbr2", "footnote_tail"] + }, + block: { + rules: ["blockquote", "code", "fences", "footnote", "heading", "hr", "htmlblock", "lheading", "list", "paragraph", "table"] + }, + inline: { + rules: ["autolink", "backticks", "del", "emphasis", "entity", "escape", "footnote_ref", "htmltag", "links", "newline", "text"] + } + } + }, + full: { + options: { + html: !1, + xhtmlOut: !1, + breaks: !1, + langPrefix: "language-", + linkTarget: "", + typographer: !1, + quotes: "“”‘’", + highlight: null, + maxNesting: 20 + }, + components: { + core: {}, + block: {}, + inline: {} + } + }, + commonmark: { + options: { + html: !0, + xhtmlOut: !0, + breaks: !1, + langPrefix: "language-", + linkTarget: "", + typographer: !1, + quotes: "“”‘’", + highlight: null, + maxNesting: 20 + }, + components: { + core: { + rules: ["block", "inline", "references", "abbr2"] + }, + block: { + rules: ["blockquote", "code", "fences", "heading", "hr", "htmlblock", "lheading", "list", "paragraph"] + }, + inline: { + rules: ["autolink", "backticks", "emphasis", "entity", "escape", "htmltag", "links", "newline", "text"] + } + } + } + }; + function Be(e, t, r) { + this.src = t, + this.env = r, + this.options = e.options, + this.tokens = [], + this.inlineMode = !1, + this.inline = e.inline, + this.block = e.block, + this.renderer = e.renderer, + this.typographer = e.typographer + } + function Ve(e, t) { + "string" != typeof e && (t = e, + e = "default"), + t && null != t.linkify && console.warn("linkify option is removed. Use linkify plugin instead:\n\nimport Remarkable from 'remarkable';\nimport linkify from 'remarkable/linkify';\nnew Remarkable().use(linkify)\n"), + this.inline = new Fe, + this.block = new be, + this.core = new ae, + this.renderer = new F, + this.ruler = new z, + this.options = {}, + this.configure(Pe[e]), + this.set(t || {}) + } + Ve.prototype.set = function(e) { + w(this.options, e) + } + , + Ve.prototype.configure = function(e) { + var t = this; + if (!e) + throw new Error("Wrong `remarkable` preset, check name/content"); + e.options && t.set(e.options), + e.components && Object.keys(e.components).forEach((function(r) { + e.components[r].rules && t[r].ruler.enable(e.components[r].rules, !0) + } + )) + } + , + Ve.prototype.use = function(e, t) { + return e(this, t), + this + } + , + Ve.prototype.parse = function(e, t) { + var r = new Be(this,e,t); + return this.core.process(r), + r.tokens + } + , + Ve.prototype.render = function(e, t) { + return t = t || {}, + this.renderer.render(this.parse(e, t), this.options, t) + } + , + Ve.prototype.parseInline = function(e, t) { + var r = new Be(this,e,t); + return r.inlineMode = !0, + this.core.process(r), + r.tokens + } + , + Ve.prototype.renderInline = function(e, t) { + return t = t || {}, + this.renderer.render(this.parseInline(e, t), this.options, t) + } + ; + var $e = (e,t)=>{ + const r = (t || {}).delimiter || "$"; + if (1 !== r.length) + throw new Error("invalid delimiter"); + const i = n; + e.inline.ruler.push("katex", ((e,t)=>{ + const n = e.pos + , i = e.posMax; + let o = n; + if (e.src.charAt(o) !== r) + return !1; + for (++o; o < i && e.src.charAt(o) === r; ) + ++o; + const s = e.src.slice(n, o); + if (s.length > 2) + return !1; + const a = o; + let l = 0; + for (; o < i; ) { + const n = e.src.charAt(o); + if ("{" !== n || 0 != o && "\\" == e.src.charAt(o - 1)) { + if ("}" !== n || 0 != o && "\\" == e.src.charAt(o - 1)) { + if (n === r && 0 === l) { + const n = o; + let l = o + 1; + for (; l < i && e.src.charAt(l) === r; ) + ++l; + if (l - n === s.length) { + if (!t) { + const t = e.src.slice(a, n).replace(/[ \n]+/g, " ").trim(); + e.push({ + type: "katex", + content: t, + block: s.length > 1, + level: e.level + }) + } + return e.pos = l, + !0 + } + } + } else if (l -= 1, + l < 0) + return !1 + } else + l += 1; + o += 1 + } + return t || (e.pending += s), + e.pos += s.length, + !0 + } + ), t), + e.block.ruler.push("katex", ((e,t,n)=>{ + let i = !1 + , o = e.bMarks[t] + e.tShift[t] + , s = e.eMarks[t]; + if (o + 1 > s) + return !1; + const a = e.src.charAt(o); + if (a !== r) + return !1; + let l = o; + o = e.skipChars(o, a); + let c = o - l; + if (2 !== c) + return !1; + let p = t; + for (; (++p, + !(p >= n)) && (o = l = e.bMarks[p] + e.tShift[p], + s = e.eMarks[p], + !(o < s && e.tShift[p] < e.blkIndent)); ) + if (e.src.charAt(o) === r && !(e.tShift[p] - e.blkIndent >= 4 || (o = e.skipChars(o, a), + o - l < c || (o = e.skipSpaces(o), + o < s)))) { + i = !0; + break + } + c = e.tShift[t], + e.line = p + (i ? 1 : 0); + const u = e.getLines(t + 1, p, c, !0).replace(/[ \n]+/g, " ").trim(); + return e.tokens.push({ + type: "katex", + params: null, + content: u, + lines: [t, e.line], + level: e.level, + block: !0 + }), + !0 + } + ), t), + e.renderer.rules.katex = (e,t)=>{ + return r = e[t].content, + n = e[t].block, + i.renderToString(r, { + displayMode: n, + throwOnError: !1 + }); + var r, n + } + , + e.renderer.rules.katex.delimiter = r + } + , Ge = { + versions: { + katex: "0.16.0", + webfontloader: "1.6.28" + }, + preloadScripts: [{ + type: "script", + data: { + src: "katex.min.js" + } + }], + scripts: [{ + type: "iife", + data: { + fn: e=>{ + window.WebFontConfig = { + custom: { + families: ["KaTeX_AMS", "KaTeX_Caligraphic:n4,n7", "KaTeX_Fraktur:n4,n7", "KaTeX_Main:n4,n7,i4,i7", "KaTeX_Math:i4,i7", "KaTeX_Script", "KaTeX_SansSerif:n4,n7,i4", "KaTeX_Size1", "KaTeX_Size2", "KaTeX_Size3", "KaTeX_Size4", "KaTeX_Typewriter"] + }, + active: ()=>{ + e().refreshHook.call() + } + } + } + , + getParams: ({getMarkmap: e})=>[e] + } + }, { + type: "script", + data: { + src: "https://cdn.jsdelivr.net/npm/webfontloader@1.6.28/webfontloader.js", + defer: !0 + } + }], + styles: [{ + type: "stylesheet", + data: { + href: "src/js/markmap/katex.min.css" + } + }] + }; + const He = "https://cdn.jsdelivr.net/npm/"; + let Ze; + const Ye = "katex"; + var Ke = { + name: Ye, + config: Ge, + transform(e) { + const t = (t,r)=>{ + const {katex: n} = window; + return n ? n.renderToString(t, { + displayMode: r, + throwOnError: !1 + }) : ((Ze || (Ze = m(Ge.preloadScripts)), + Ze).then((()=>{ + e.retransform.call() + } + )), + t) + } + ; + let r = ()=>{} + ; + return e.parser.tap((e=>{ + e.use($e), + e.renderer.rules.katex = (e,n)=>{ + r(); + return t(e[n].content, e[n].block) + } + } + )), + e.beforeParse.tap(((e,t)=>{ + r = ()=>{ + t.features.katex = !0 + } + } + )), + e.afterParse.tap(((e,t)=>{ + const {frontmatter: r} = t; + null != r && r.markmap && ["extraJs", "extraCss"].forEach((e=>{ + r.markmap[e] && (r.markmap[e] = function(e, t, r) { + return e.map((e=>("string" == typeof e && (e.startsWith(`${t}/`) ? e = `${He}${t}@${r}${e.slice(t.length)}` : e.startsWith(`${t}@`) && (e = `${He}${e}`)), + e))) + }(r.markmap[e], Ye, Ge.versions.katex)) + } + )) + } + )), + { + styles: Ge.styles, + scripts: Ge.scripts + } + } + } + , Je = { + versions: { + prismjs: "1.28.0" + }, + preloadScripts: [{ + type: "script", + data: { + src: "prism-core.min.js" + } + }, { + type: "script", + data: { + src: "prism-autoloader.min.js" + } + }], + styles: [{ + type: "stylesheet", + data: { + href: "src/js/markmap/prism.css" + } + }] + }; + let We; + function Xe(e, t) { + (We || (We = m(Je.preloadScripts)), + We).then((()=>{ + window.Prism.plugins.autoloader.loadLanguages([e], (()=>{ + t.retransform.call() + } + )) + } + )) + } + const Qe = "prism"; + var et = { + name: Qe, + config: Je, + transform(e) { + let t = ()=>{} + ; + return e.parser.tap((r=>{ + r.set({ + highlight: (r,n)=>{ + var i; + t(); + const {Prism: o} = window + , s = null == o || null == (i = o.languages) ? void 0 : i[n]; + return s ? o.highlight(r, s, n) : (Xe(n, e), + "") + } + }) + } + )), + e.beforeParse.tap(((e,r)=>{ + t = ()=>{ + r.features.prism = !0 + } + } + )), + { + styles: Je.styles + } + } + }; + /*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */ + function tt(e) { + return null == e + } + var rt = { + isNothing: tt, + isObject: function(e) { + return "object" == typeof e && null !== e + }, + toArray: function(e) { + return Array.isArray(e) ? e : tt(e) ? [] : [e] + }, + repeat: function(e, t) { + var r, n = ""; + for (r = 0; r < t; r += 1) + n += e; + return n + }, + isNegativeZero: function(e) { + return 0 === e && Number.NEGATIVE_INFINITY === 1 / e + }, + extend: function(e, t) { + var r, n, i, o; + if (t) + for (r = 0, + n = (o = Object.keys(t)).length; r < n; r += 1) + e[i = o[r]] = t[i]; + return e + } + }; + function nt(e, t) { + var r = "" + , n = e.reason || "(unknown reason)"; + return e.mark ? (e.mark.name && (r += 'in "' + e.mark.name + '" '), + r += "(" + (e.mark.line + 1) + ":" + (e.mark.column + 1) + ")", + !t && e.mark.snippet && (r += "\n\n" + e.mark.snippet), + n + " " + r) : n + } + function it(e, t) { + Error.call(this), + this.name = "YAMLException", + this.reason = e, + this.mark = t, + this.message = nt(this, !1), + Error.captureStackTrace ? Error.captureStackTrace(this, this.constructor) : this.stack = (new Error).stack || "" + } + it.prototype = Object.create(Error.prototype), + it.prototype.constructor = it, + it.prototype.toString = function(e) { + return this.name + ": " + nt(this, e) + } + ; + var ot = it; + function st(e, t, r, n, i) { + var o = "" + , s = "" + , a = Math.floor(i / 2) - 1; + return n - t > a && (t = n - a + (o = " ... ").length), + r - n > a && (r = n + a - (s = " ...").length), + { + str: o + e.slice(t, r).replace(/\t/g, "→") + s, + pos: n - t + o.length + } + } + function at(e, t) { + return rt.repeat(" ", t - e.length) + e + } + var lt = function(e, t) { + if (t = Object.create(t || null), + !e.buffer) + return null; + t.maxLength || (t.maxLength = 79), + "number" != typeof t.indent && (t.indent = 1), + "number" != typeof t.linesBefore && (t.linesBefore = 3), + "number" != typeof t.linesAfter && (t.linesAfter = 2); + for (var r, n = /\r?\n|\r|\0/g, i = [0], o = [], s = -1; r = n.exec(e.buffer); ) + o.push(r.index), + i.push(r.index + r[0].length), + e.position <= r.index && s < 0 && (s = i.length - 2); + s < 0 && (s = i.length - 1); + var a, l, c = "", p = Math.min(e.line + t.linesAfter, o.length).toString().length, u = t.maxLength - (t.indent + p + 3); + for (a = 1; a <= t.linesBefore && !(s - a < 0); a++) + l = st(e.buffer, i[s - a], o[s - a], e.position - (i[s] - i[s - a]), u), + c = rt.repeat(" ", t.indent) + at((e.line - a + 1).toString(), p) + " | " + l.str + "\n" + c; + for (l = st(e.buffer, i[s], o[s], e.position, u), + c += rt.repeat(" ", t.indent) + at((e.line + 1).toString(), p) + " | " + l.str + "\n", + c += rt.repeat("-", t.indent + p + 3 + l.pos) + "^\n", + a = 1; a <= t.linesAfter && !(s + a >= o.length); a++) + l = st(e.buffer, i[s + a], o[s + a], e.position - (i[s] - i[s + a]), u), + c += rt.repeat(" ", t.indent) + at((e.line + a + 1).toString(), p) + " | " + l.str + "\n"; + return c.replace(/\n$/, "") + } + , ct = ["kind", "multi", "resolve", "construct", "instanceOf", "predicate", "represent", "representName", "defaultStyle", "styleAliases"] + , pt = ["scalar", "sequence", "mapping"]; + var ut = function(e, t) { + if (t = t || {}, + Object.keys(t).forEach((function(t) { + if (-1 === ct.indexOf(t)) + throw new ot('Unknown option "' + t + '" is met in definition of "' + e + '" YAML type.') + } + )), + this.options = t, + this.tag = e, + this.kind = t.kind || null, + this.resolve = t.resolve || function() { + return !0 + } + , + this.construct = t.construct || function(e) { + return e + } + , + this.instanceOf = t.instanceOf || null, + this.predicate = t.predicate || null, + this.represent = t.represent || null, + this.representName = t.representName || null, + this.defaultStyle = t.defaultStyle || null, + this.multi = t.multi || !1, + this.styleAliases = function(e) { + var t = {}; + return null !== e && Object.keys(e).forEach((function(r) { + e[r].forEach((function(e) { + t[String(e)] = r + } + )) + } + )), + t + }(t.styleAliases || null), + -1 === pt.indexOf(this.kind)) + throw new ot('Unknown kind "' + this.kind + '" is specified for "' + e + '" YAML type.') + }; + function ft(e, t) { + var r = []; + return e[t].forEach((function(e) { + var t = r.length; + r.forEach((function(r, n) { + r.tag === e.tag && r.kind === e.kind && r.multi === e.multi && (t = n) + } + )), + r[t] = e + } + )), + r + } + function ht(e) { + return this.extend(e) + } + ht.prototype.extend = function(e) { + var t = [] + , r = []; + if (e instanceof ut) + r.push(e); + else if (Array.isArray(e)) + r = r.concat(e); + else { + if (!e || !Array.isArray(e.implicit) && !Array.isArray(e.explicit)) + throw new ot("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })"); + e.implicit && (t = t.concat(e.implicit)), + e.explicit && (r = r.concat(e.explicit)) + } + t.forEach((function(e) { + if (!(e instanceof ut)) + throw new ot("Specified list of YAML types (or a single Type object) contains a non-Type object."); + if (e.loadKind && "scalar" !== e.loadKind) + throw new ot("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported."); + if (e.multi) + throw new ot("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.") + } + )), + r.forEach((function(e) { + if (!(e instanceof ut)) + throw new ot("Specified list of YAML types (or a single Type object) contains a non-Type object.") + } + )); + var n = Object.create(ht.prototype); + return n.implicit = (this.implicit || []).concat(t), + n.explicit = (this.explicit || []).concat(r), + n.compiledImplicit = ft(n, "implicit"), + n.compiledExplicit = ft(n, "explicit"), + n.compiledTypeMap = function() { + var e, t, r = { + scalar: {}, + sequence: {}, + mapping: {}, + fallback: {}, + multi: { + scalar: [], + sequence: [], + mapping: [], + fallback: [] + } + }; + function n(e) { + e.multi ? (r.multi[e.kind].push(e), + r.multi.fallback.push(e)) : r[e.kind][e.tag] = r.fallback[e.tag] = e + } + for (e = 0, + t = arguments.length; e < t; e += 1) + arguments[e].forEach(n); + return r + }(n.compiledImplicit, n.compiledExplicit), + n + } + ; + var dt = ht + , gt = new ut("tag:yaml.org,2002:str",{ + kind: "scalar", + construct: function(e) { + return null !== e ? e : "" + } + }) + , mt = new ut("tag:yaml.org,2002:seq",{ + kind: "sequence", + construct: function(e) { + return null !== e ? e : [] + } + }) + , bt = new ut("tag:yaml.org,2002:map",{ + kind: "mapping", + construct: function(e) { + return null !== e ? e : {} + } + }) + , vt = new dt({ + explicit: [gt, mt, bt] + }); + var kt = new ut("tag:yaml.org,2002:null",{ + kind: "scalar", + resolve: function(e) { + if (null === e) + return !0; + var t = e.length; + return 1 === t && "~" === e || 4 === t && ("null" === e || "Null" === e || "NULL" === e) + }, + construct: function() { + return null + }, + predicate: function(e) { + return null === e + }, + represent: { + canonical: function() { + return "~" + }, + lowercase: function() { + return "null" + }, + uppercase: function() { + return "NULL" + }, + camelcase: function() { + return "Null" + }, + empty: function() { + return "" + } + }, + defaultStyle: "lowercase" + }); + var yt = new ut("tag:yaml.org,2002:bool",{ + kind: "scalar", + resolve: function(e) { + if (null === e) + return !1; + var t = e.length; + return 4 === t && ("true" === e || "True" === e || "TRUE" === e) || 5 === t && ("false" === e || "False" === e || "FALSE" === e) + }, + construct: function(e) { + return "true" === e || "True" === e || "TRUE" === e + }, + predicate: function(e) { + return "[object Boolean]" === Object.prototype.toString.call(e) + }, + represent: { + lowercase: function(e) { + return e ? "true" : "false" + }, + uppercase: function(e) { + return e ? "TRUE" : "FALSE" + }, + camelcase: function(e) { + return e ? "True" : "False" + } + }, + defaultStyle: "lowercase" + }); + function At(e) { + return 48 <= e && e <= 55 + } + function wt(e) { + return 48 <= e && e <= 57 + } + var xt = new ut("tag:yaml.org,2002:int",{ + kind: "scalar", + resolve: function(e) { + if (null === e) + return !1; + var t, r, n = e.length, i = 0, o = !1; + if (!n) + return !1; + if ("-" !== (t = e[i]) && "+" !== t || (t = e[++i]), + "0" === t) { + if (i + 1 === n) + return !0; + if ("b" === (t = e[++i])) { + for (i++; i < n; i++) + if ("_" !== (t = e[i])) { + if ("0" !== t && "1" !== t) + return !1; + o = !0 + } + return o && "_" !== t + } + if ("x" === t) { + for (i++; i < n; i++) + if ("_" !== (t = e[i])) { + if (!(48 <= (r = e.charCodeAt(i)) && r <= 57 || 65 <= r && r <= 70 || 97 <= r && r <= 102)) + return !1; + o = !0 + } + return o && "_" !== t + } + if ("o" === t) { + for (i++; i < n; i++) + if ("_" !== (t = e[i])) { + if (!At(e.charCodeAt(i))) + return !1; + o = !0 + } + return o && "_" !== t + } + } + if ("_" === t) + return !1; + for (; i < n; i++) + if ("_" !== (t = e[i])) { + if (!wt(e.charCodeAt(i))) + return !1; + o = !0 + } + return !(!o || "_" === t) + }, + construct: function(e) { + var t, r = e, n = 1; + if (-1 !== r.indexOf("_") && (r = r.replace(/_/g, "")), + "-" !== (t = r[0]) && "+" !== t || ("-" === t && (n = -1), + t = (r = r.slice(1))[0]), + "0" === r) + return 0; + if ("0" === t) { + if ("b" === r[1]) + return n * parseInt(r.slice(2), 2); + if ("x" === r[1]) + return n * parseInt(r.slice(2), 16); + if ("o" === r[1]) + return n * parseInt(r.slice(2), 8) + } + return n * parseInt(r, 10) + }, + predicate: function(e) { + return "[object Number]" === Object.prototype.toString.call(e) && e % 1 == 0 && !rt.isNegativeZero(e) + }, + represent: { + binary: function(e) { + return e >= 0 ? "0b" + e.toString(2) : "-0b" + e.toString(2).slice(1) + }, + octal: function(e) { + return e >= 0 ? "0o" + e.toString(8) : "-0o" + e.toString(8).slice(1) + }, + decimal: function(e) { + return e.toString(10) + }, + hexadecimal: function(e) { + return e >= 0 ? "0x" + e.toString(16).toUpperCase() : "-0x" + e.toString(16).toUpperCase().slice(1) + } + }, + defaultStyle: "decimal", + styleAliases: { + binary: [2, "bin"], + octal: [8, "oct"], + decimal: [10, "dec"], + hexadecimal: [16, "hex"] + } + }) + , _t = new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"); + var Ct = /^[-+]?[0-9]+e/; + var qt = new ut("tag:yaml.org,2002:float",{ + kind: "scalar", + resolve: function(e) { + return null !== e && !(!_t.test(e) || "_" === e[e.length - 1]) + }, + construct: function(e) { + var t, r; + return r = "-" === (t = e.replace(/_/g, "").toLowerCase())[0] ? -1 : 1, + "+-".indexOf(t[0]) >= 0 && (t = t.slice(1)), + ".inf" === t ? 1 === r ? Number.POSITIVE_INFINITY : Number.NEGATIVE_INFINITY : ".nan" === t ? NaN : r * parseFloat(t, 10) + }, + predicate: function(e) { + return "[object Number]" === Object.prototype.toString.call(e) && (e % 1 != 0 || rt.isNegativeZero(e)) + }, + represent: function(e, t) { + var r; + if (isNaN(e)) + switch (t) { + case "lowercase": + return ".nan"; + case "uppercase": + return ".NAN"; + case "camelcase": + return ".NaN" + } + else if (Number.POSITIVE_INFINITY === e) + switch (t) { + case "lowercase": + return ".inf"; + case "uppercase": + return ".INF"; + case "camelcase": + return ".Inf" + } + else if (Number.NEGATIVE_INFINITY === e) + switch (t) { + case "lowercase": + return "-.inf"; + case "uppercase": + return "-.INF"; + case "camelcase": + return "-.Inf" + } + else if (rt.isNegativeZero(e)) + return "-0.0"; + return r = e.toString(10), + Ct.test(r) ? r.replace("e", ".e") : r + }, + defaultStyle: "lowercase" + }) + , St = vt.extend({ + implicit: [kt, yt, xt, qt] + }) + , Et = St + , Mt = new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$") + , Lt = new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$"); + var Tt = new ut("tag:yaml.org,2002:timestamp",{ + kind: "scalar", + resolve: function(e) { + return null !== e && (null !== Mt.exec(e) || null !== Lt.exec(e)) + }, + construct: function(e) { + var t, r, n, i, o, s, a, l, c = 0, p = null; + if (null === (t = Mt.exec(e)) && (t = Lt.exec(e)), + null === t) + throw new Error("Date resolve error"); + if (r = +t[1], + n = +t[2] - 1, + i = +t[3], + !t[4]) + return new Date(Date.UTC(r, n, i)); + if (o = +t[4], + s = +t[5], + a = +t[6], + t[7]) { + for (c = t[7].slice(0, 3); c.length < 3; ) + c += "0"; + c = +c + } + return t[9] && (p = 6e4 * (60 * +t[10] + +(t[11] || 0)), + "-" === t[9] && (p = -p)), + l = new Date(Date.UTC(r, n, i, o, s, a, c)), + p && l.setTime(l.getTime() - p), + l + }, + instanceOf: Date, + represent: function(e) { + return e.toISOString() + } + }); + var It = new ut("tag:yaml.org,2002:merge",{ + kind: "scalar", + resolve: function(e) { + return "<<" === e || null === e + } + }) + , Ot = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r"; + var Nt = new ut("tag:yaml.org,2002:binary",{ + kind: "scalar", + resolve: function(e) { + if (null === e) + return !1; + var t, r, n = 0, i = e.length, o = Ot; + for (r = 0; r < i; r++) + if (!((t = o.indexOf(e.charAt(r))) > 64)) { + if (t < 0) + return !1; + n += 6 + } + return n % 8 == 0 + }, + construct: function(e) { + var t, r, n = e.replace(/[\r\n=]/g, ""), i = n.length, o = Ot, s = 0, a = []; + for (t = 0; t < i; t++) + t % 4 == 0 && t && (a.push(s >> 16 & 255), + a.push(s >> 8 & 255), + a.push(255 & s)), + s = s << 6 | o.indexOf(n.charAt(t)); + return 0 === (r = i % 4 * 6) ? (a.push(s >> 16 & 255), + a.push(s >> 8 & 255), + a.push(255 & s)) : 18 === r ? (a.push(s >> 10 & 255), + a.push(s >> 2 & 255)) : 12 === r && a.push(s >> 4 & 255), + new Uint8Array(a) + }, + predicate: function(e) { + return "[object Uint8Array]" === Object.prototype.toString.call(e) + }, + represent: function(e) { + var t, r, n = "", i = 0, o = e.length, s = Ot; + for (t = 0; t < o; t++) + t % 3 == 0 && t && (n += s[i >> 18 & 63], + n += s[i >> 12 & 63], + n += s[i >> 6 & 63], + n += s[63 & i]), + i = (i << 8) + e[t]; + return 0 === (r = o % 3) ? (n += s[i >> 18 & 63], + n += s[i >> 12 & 63], + n += s[i >> 6 & 63], + n += s[63 & i]) : 2 === r ? (n += s[i >> 10 & 63], + n += s[i >> 4 & 63], + n += s[i << 2 & 63], + n += s[64]) : 1 === r && (n += s[i >> 2 & 63], + n += s[i << 4 & 63], + n += s[64], + n += s[64]), + n + } + }) + , jt = Object.prototype.hasOwnProperty + , Dt = Object.prototype.toString; + var Rt = new ut("tag:yaml.org,2002:omap",{ + kind: "sequence", + resolve: function(e) { + if (null === e) + return !0; + var t, r, n, i, o, s = [], a = e; + for (t = 0, + r = a.length; t < r; t += 1) { + if (n = a[t], + o = !1, + "[object Object]" !== Dt.call(n)) + return !1; + for (i in n) + if (jt.call(n, i)) { + if (o) + return !1; + o = !0 + } + if (!o) + return !1; + if (-1 !== s.indexOf(i)) + return !1; + s.push(i) + } + return !0 + }, + construct: function(e) { + return null !== e ? e : [] + } + }) + , Ut = Object.prototype.toString; + var Ft = new ut("tag:yaml.org,2002:pairs",{ + kind: "sequence", + resolve: function(e) { + if (null === e) + return !0; + var t, r, n, i, o, s = e; + for (o = new Array(s.length), + t = 0, + r = s.length; t < r; t += 1) { + if (n = s[t], + "[object Object]" !== Ut.call(n)) + return !1; + if (1 !== (i = Object.keys(n)).length) + return !1; + o[t] = [i[0], n[i[0]]] + } + return !0 + }, + construct: function(e) { + if (null === e) + return []; + var t, r, n, i, o, s = e; + for (o = new Array(s.length), + t = 0, + r = s.length; t < r; t += 1) + n = s[t], + i = Object.keys(n), + o[t] = [i[0], n[i[0]]]; + return o + } + }) + , zt = Object.prototype.hasOwnProperty; + var Pt = new ut("tag:yaml.org,2002:set",{ + kind: "mapping", + resolve: function(e) { + if (null === e) + return !0; + var t, r = e; + for (t in r) + if (zt.call(r, t) && null !== r[t]) + return !1; + return !0 + }, + construct: function(e) { + return null !== e ? e : {} + } + }) + , Bt = Et.extend({ + implicit: [Tt, It], + explicit: [Nt, Rt, Ft, Pt] + }) + , Vt = Object.prototype.hasOwnProperty + , $t = /[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/ + , Gt = /[\x85\u2028\u2029]/ + , Ht = /[,\[\]\{\}]/ + , Zt = /^(?:!|!!|![a-z\-]+!)$/i + , Yt = /^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i; + function Kt(e) { + return Object.prototype.toString.call(e) + } + function Jt(e) { + return 10 === e || 13 === e + } + function Wt(e) { + return 9 === e || 32 === e + } + function Xt(e) { + return 9 === e || 32 === e || 10 === e || 13 === e + } + function Qt(e) { + return 44 === e || 91 === e || 93 === e || 123 === e || 125 === e + } + function er(e) { + var t; + return 48 <= e && e <= 57 ? e - 48 : 97 <= (t = 32 | e) && t <= 102 ? t - 97 + 10 : -1 + } + function tr(e) { + return 48 === e ? "\0" : 97 === e ? "" : 98 === e ? "\b" : 116 === e || 9 === e ? "\t" : 110 === e ? "\n" : 118 === e ? "\v" : 102 === e ? "\f" : 114 === e ? "\r" : 101 === e ? "" : 32 === e ? " " : 34 === e ? '"' : 47 === e ? "/" : 92 === e ? "\\" : 78 === e ? "…" : 95 === e ? " " : 76 === e ? "\u2028" : 80 === e ? "\u2029" : "" + } + function rr(e) { + return e <= 65535 ? String.fromCharCode(e) : String.fromCharCode(55296 + (e - 65536 >> 10), 56320 + (e - 65536 & 1023)) + } + for (var nr = new Array(256), ir = new Array(256), or = 0; or < 256; or++) + nr[or] = tr(or) ? 1 : 0, + ir[or] = tr(or); + function sr(e, t) { + this.input = e, + this.filename = t.filename || null, + this.schema = t.schema || Bt, + this.onWarning = t.onWarning || null, + this.legacy = t.legacy || !1, + this.json = t.json || !1, + this.listener = t.listener || null, + this.implicitTypes = this.schema.compiledImplicit, + this.typeMap = this.schema.compiledTypeMap, + this.length = e.length, + this.position = 0, + this.line = 0, + this.lineStart = 0, + this.lineIndent = 0, + this.firstTabInLine = -1, + this.documents = [] + } + function ar(e, t) { + var r = { + name: e.filename, + buffer: e.input.slice(0, -1), + position: e.position, + line: e.line, + column: e.position - e.lineStart + }; + return r.snippet = lt(r), + new ot(t,r) + } + function lr(e, t) { + throw ar(e, t) + } + function cr(e, t) { + e.onWarning && e.onWarning.call(null, ar(e, t)) + } + var pr = { + YAML: function(e, t, r) { + var n, i, o; + null !== e.version && lr(e, "duplication of %YAML directive"), + 1 !== r.length && lr(e, "YAML directive accepts exactly one argument"), + null === (n = /^([0-9]+)\.([0-9]+)$/.exec(r[0])) && lr(e, "ill-formed argument of the YAML directive"), + i = parseInt(n[1], 10), + o = parseInt(n[2], 10), + 1 !== i && lr(e, "unacceptable YAML version of the document"), + e.version = r[0], + e.checkLineBreaks = o < 2, + 1 !== o && 2 !== o && cr(e, "unsupported YAML version of the document") + }, + TAG: function(e, t, r) { + var n, i; + 2 !== r.length && lr(e, "TAG directive accepts exactly two arguments"), + n = r[0], + i = r[1], + Zt.test(n) || lr(e, "ill-formed tag handle (first argument) of the TAG directive"), + Vt.call(e.tagMap, n) && lr(e, 'there is a previously declared suffix for "' + n + '" tag handle'), + Yt.test(i) || lr(e, "ill-formed tag prefix (second argument) of the TAG directive"); + try { + i = decodeURIComponent(i) + } catch (t) { + lr(e, "tag prefix is malformed: " + i) + } + e.tagMap[n] = i + } + }; + function ur(e, t, r, n) { + var i, o, s, a; + if (t < r) { + if (a = e.input.slice(t, r), + n) + for (i = 0, + o = a.length; i < o; i += 1) + 9 === (s = a.charCodeAt(i)) || 32 <= s && s <= 1114111 || lr(e, "expected valid JSON character"); + else + $t.test(a) && lr(e, "the stream contains non-printable characters"); + e.result += a + } + } + function fr(e, t, r, n) { + var i, o, s, a; + for (rt.isObject(r) || lr(e, "cannot merge mappings; the provided source object is unacceptable"), + s = 0, + a = (i = Object.keys(r)).length; s < a; s += 1) + o = i[s], + Vt.call(t, o) || (t[o] = r[o], + n[o] = !0) + } + function hr(e, t, r, n, i, o, s, a, l) { + var c, p; + if (Array.isArray(i)) + for (c = 0, + p = (i = Array.prototype.slice.call(i)).length; c < p; c += 1) + Array.isArray(i[c]) && lr(e, "nested arrays are not supported inside keys"), + "object" == typeof i && "[object Object]" === Kt(i[c]) && (i[c] = "[object Object]"); + if ("object" == typeof i && "[object Object]" === Kt(i) && (i = "[object Object]"), + i = String(i), + null === t && (t = {}), + "tag:yaml.org,2002:merge" === n) + if (Array.isArray(o)) + for (c = 0, + p = o.length; c < p; c += 1) + fr(e, t, o[c], r); + else + fr(e, t, o, r); + else + e.json || Vt.call(r, i) || !Vt.call(t, i) || (e.line = s || e.line, + e.lineStart = a || e.lineStart, + e.position = l || e.position, + lr(e, "duplicated mapping key")), + "__proto__" === i ? Object.defineProperty(t, i, { + configurable: !0, + enumerable: !0, + writable: !0, + value: o + }) : t[i] = o, + delete r[i]; + return t + } + function dr(e) { + var t; + 10 === (t = e.input.charCodeAt(e.position)) ? e.position++ : 13 === t ? (e.position++, + 10 === e.input.charCodeAt(e.position) && e.position++) : lr(e, "a line break is expected"), + e.line += 1, + e.lineStart = e.position, + e.firstTabInLine = -1 + } + function gr(e, t, r) { + for (var n = 0, i = e.input.charCodeAt(e.position); 0 !== i; ) { + for (; Wt(i); ) + 9 === i && -1 === e.firstTabInLine && (e.firstTabInLine = e.position), + i = e.input.charCodeAt(++e.position); + if (t && 35 === i) + do { + i = e.input.charCodeAt(++e.position) + } while (10 !== i && 13 !== i && 0 !== i); + if (!Jt(i)) + break; + for (dr(e), + i = e.input.charCodeAt(e.position), + n++, + e.lineIndent = 0; 32 === i; ) + e.lineIndent++, + i = e.input.charCodeAt(++e.position) + } + return -1 !== r && 0 !== n && e.lineIndent < r && cr(e, "deficient indentation"), + n + } + function mr(e) { + var t, r = e.position; + return !(45 !== (t = e.input.charCodeAt(r)) && 46 !== t || t !== e.input.charCodeAt(r + 1) || t !== e.input.charCodeAt(r + 2) || (r += 3, + 0 !== (t = e.input.charCodeAt(r)) && !Xt(t))) + } + function br(e, t) { + 1 === t ? e.result += " " : t > 1 && (e.result += rt.repeat("\n", t - 1)) + } + function vr(e, t) { + var r, n, i = e.tag, o = e.anchor, s = [], a = !1; + if (-1 !== e.firstTabInLine) + return !1; + for (null !== e.anchor && (e.anchorMap[e.anchor] = s), + n = e.input.charCodeAt(e.position); 0 !== n && (-1 !== e.firstTabInLine && (e.position = e.firstTabInLine, + lr(e, "tab characters must not be used in indentation")), + 45 === n) && Xt(e.input.charCodeAt(e.position + 1)); ) + if (a = !0, + e.position++, + gr(e, !0, -1) && e.lineIndent <= t) + s.push(null), + n = e.input.charCodeAt(e.position); + else if (r = e.line, + Ar(e, t, 3, !1, !0), + s.push(e.result), + gr(e, !0, -1), + n = e.input.charCodeAt(e.position), + (e.line === r || e.lineIndent > t) && 0 !== n) + lr(e, "bad indentation of a sequence entry"); + else if (e.lineIndent < t) + break; + return !!a && (e.tag = i, + e.anchor = o, + e.kind = "sequence", + e.result = s, + !0) + } + function kr(e) { + var t, r, n, i, o = !1, s = !1; + if (33 !== (i = e.input.charCodeAt(e.position))) + return !1; + if (null !== e.tag && lr(e, "duplication of a tag property"), + 60 === (i = e.input.charCodeAt(++e.position)) ? (o = !0, + i = e.input.charCodeAt(++e.position)) : 33 === i ? (s = !0, + r = "!!", + i = e.input.charCodeAt(++e.position)) : r = "!", + t = e.position, + o) { + do { + i = e.input.charCodeAt(++e.position) + } while (0 !== i && 62 !== i); + e.position < e.length ? (n = e.input.slice(t, e.position), + i = e.input.charCodeAt(++e.position)) : lr(e, "unexpected end of the stream within a verbatim tag") + } else { + for (; 0 !== i && !Xt(i); ) + 33 === i && (s ? lr(e, "tag suffix cannot contain exclamation marks") : (r = e.input.slice(t - 1, e.position + 1), + Zt.test(r) || lr(e, "named tag handle cannot contain such characters"), + s = !0, + t = e.position + 1)), + i = e.input.charCodeAt(++e.position); + n = e.input.slice(t, e.position), + Ht.test(n) && lr(e, "tag suffix cannot contain flow indicator characters") + } + n && !Yt.test(n) && lr(e, "tag name cannot contain such characters: " + n); + try { + n = decodeURIComponent(n) + } catch (t) { + lr(e, "tag name is malformed: " + n) + } + return o ? e.tag = n : Vt.call(e.tagMap, r) ? e.tag = e.tagMap[r] + n : "!" === r ? e.tag = "!" + n : "!!" === r ? e.tag = "tag:yaml.org,2002:" + n : lr(e, 'undeclared tag handle "' + r + '"'), + !0 + } + function yr(e) { + var t, r; + if (38 !== (r = e.input.charCodeAt(e.position))) + return !1; + for (null !== e.anchor && lr(e, "duplication of an anchor property"), + r = e.input.charCodeAt(++e.position), + t = e.position; 0 !== r && !Xt(r) && !Qt(r); ) + r = e.input.charCodeAt(++e.position); + return e.position === t && lr(e, "name of an anchor node must contain at least one character"), + e.anchor = e.input.slice(t, e.position), + !0 + } + function Ar(e, t, r, n, i) { + var o, s, a, l, c, p, u, f, h, d = 1, g = !1, m = !1; + if (null !== e.listener && e.listener("open", e), + e.tag = null, + e.anchor = null, + e.kind = null, + e.result = null, + o = s = a = 4 === r || 3 === r, + n && gr(e, !0, -1) && (g = !0, + e.lineIndent > t ? d = 1 : e.lineIndent === t ? d = 0 : e.lineIndent < t && (d = -1)), + 1 === d) + for (; kr(e) || yr(e); ) + gr(e, !0, -1) ? (g = !0, + a = o, + e.lineIndent > t ? d = 1 : e.lineIndent === t ? d = 0 : e.lineIndent < t && (d = -1)) : a = !1; + if (a && (a = g || i), + 1 !== d && 4 !== r || (f = 1 === r || 2 === r ? t : t + 1, + h = e.position - e.lineStart, + 1 === d ? a && (vr(e, h) || function(e, t, r) { + var n, i, o, s, a, l, c, p = e.tag, u = e.anchor, f = {}, h = Object.create(null), d = null, g = null, m = null, b = !1, v = !1; + if (-1 !== e.firstTabInLine) + return !1; + for (null !== e.anchor && (e.anchorMap[e.anchor] = f), + c = e.input.charCodeAt(e.position); 0 !== c; ) { + if (b || -1 === e.firstTabInLine || (e.position = e.firstTabInLine, + lr(e, "tab characters must not be used in indentation")), + n = e.input.charCodeAt(e.position + 1), + o = e.line, + 63 !== c && 58 !== c || !Xt(n)) { + if (s = e.line, + a = e.lineStart, + l = e.position, + !Ar(e, r, 2, !1, !0)) + break; + if (e.line === o) { + for (c = e.input.charCodeAt(e.position); Wt(c); ) + c = e.input.charCodeAt(++e.position); + if (58 === c) + Xt(c = e.input.charCodeAt(++e.position)) || lr(e, "a whitespace character is expected after the key-value separator within a block mapping"), + b && (hr(e, f, h, d, g, null, s, a, l), + d = g = m = null), + v = !0, + b = !1, + i = !1, + d = e.tag, + g = e.result; + else { + if (!v) + return e.tag = p, + e.anchor = u, + !0; + lr(e, "can not read an implicit mapping pair; a colon is missed") + } + } else { + if (!v) + return e.tag = p, + e.anchor = u, + !0; + lr(e, "can not read a block mapping entry; a multiline key may not be an implicit key") + } + } else + 63 === c ? (b && (hr(e, f, h, d, g, null, s, a, l), + d = g = m = null), + v = !0, + b = !0, + i = !0) : b ? (b = !1, + i = !0) : lr(e, "incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"), + e.position += 1, + c = n; + if ((e.line === o || e.lineIndent > t) && (b && (s = e.line, + a = e.lineStart, + l = e.position), + Ar(e, t, 4, !0, i) && (b ? g = e.result : m = e.result), + b || (hr(e, f, h, d, g, m, s, a, l), + d = g = m = null), + gr(e, !0, -1), + c = e.input.charCodeAt(e.position)), + (e.line === o || e.lineIndent > t) && 0 !== c) + lr(e, "bad indentation of a mapping entry"); + else if (e.lineIndent < t) + break + } + return b && hr(e, f, h, d, g, null, s, a, l), + v && (e.tag = p, + e.anchor = u, + e.kind = "mapping", + e.result = f), + v + }(e, h, f)) || function(e, t) { + var r, n, i, o, s, a, l, c, p, u, f, h, d = !0, g = e.tag, m = e.anchor, b = Object.create(null); + if (91 === (h = e.input.charCodeAt(e.position))) + s = 93, + c = !1, + o = []; + else { + if (123 !== h) + return !1; + s = 125, + c = !0, + o = {} + } + for (null !== e.anchor && (e.anchorMap[e.anchor] = o), + h = e.input.charCodeAt(++e.position); 0 !== h; ) { + if (gr(e, !0, t), + (h = e.input.charCodeAt(e.position)) === s) + return e.position++, + e.tag = g, + e.anchor = m, + e.kind = c ? "mapping" : "sequence", + e.result = o, + !0; + d ? 44 === h && lr(e, "expected the node content, but found ','") : lr(e, "missed comma between flow collection entries"), + f = null, + a = l = !1, + 63 === h && Xt(e.input.charCodeAt(e.position + 1)) && (a = l = !0, + e.position++, + gr(e, !0, t)), + r = e.line, + n = e.lineStart, + i = e.position, + Ar(e, t, 1, !1, !0), + u = e.tag, + p = e.result, + gr(e, !0, t), + h = e.input.charCodeAt(e.position), + !l && e.line !== r || 58 !== h || (a = !0, + h = e.input.charCodeAt(++e.position), + gr(e, !0, t), + Ar(e, t, 1, !1, !0), + f = e.result), + c ? hr(e, o, b, u, p, f, r, n, i) : a ? o.push(hr(e, null, b, u, p, f, r, n, i)) : o.push(p), + gr(e, !0, t), + 44 === (h = e.input.charCodeAt(e.position)) ? (d = !0, + h = e.input.charCodeAt(++e.position)) : d = !1 + } + lr(e, "unexpected end of the stream within a flow collection") + }(e, f) ? m = !0 : (s && function(e, t) { + var r, n, i, o, s, a = 1, l = !1, c = !1, p = t, u = 0, f = !1; + if (124 === (o = e.input.charCodeAt(e.position))) + n = !1; + else { + if (62 !== o) + return !1; + n = !0 + } + for (e.kind = "scalar", + e.result = ""; 0 !== o; ) + if (43 === (o = e.input.charCodeAt(++e.position)) || 45 === o) + 1 === a ? a = 43 === o ? 3 : 2 : lr(e, "repeat of a chomping mode identifier"); + else { + if (!((i = 48 <= (s = o) && s <= 57 ? s - 48 : -1) >= 0)) + break; + 0 === i ? lr(e, "bad explicit indentation width of a block scalar; it cannot be less than one") : c ? lr(e, "repeat of an indentation width identifier") : (p = t + i - 1, + c = !0) + } + if (Wt(o)) { + do { + o = e.input.charCodeAt(++e.position) + } while (Wt(o)); + if (35 === o) + do { + o = e.input.charCodeAt(++e.position) + } while (!Jt(o) && 0 !== o) + } + for (; 0 !== o; ) { + for (dr(e), + e.lineIndent = 0, + o = e.input.charCodeAt(e.position); (!c || e.lineIndent < p) && 32 === o; ) + e.lineIndent++, + o = e.input.charCodeAt(++e.position); + if (!c && e.lineIndent > p && (p = e.lineIndent), + Jt(o)) + u++; + else { + if (e.lineIndent < p) { + 3 === a ? e.result += rt.repeat("\n", l ? 1 + u : u) : 1 === a && l && (e.result += "\n"); + break + } + for (n ? Wt(o) ? (f = !0, + e.result += rt.repeat("\n", l ? 1 + u : u)) : f ? (f = !1, + e.result += rt.repeat("\n", u + 1)) : 0 === u ? l && (e.result += " ") : e.result += rt.repeat("\n", u) : e.result += rt.repeat("\n", l ? 1 + u : u), + l = !0, + c = !0, + u = 0, + r = e.position; !Jt(o) && 0 !== o; ) + o = e.input.charCodeAt(++e.position); + ur(e, r, e.position, !1) + } + } + return !0 + }(e, f) || function(e, t) { + var r, n, i; + if (39 !== (r = e.input.charCodeAt(e.position))) + return !1; + for (e.kind = "scalar", + e.result = "", + e.position++, + n = i = e.position; 0 !== (r = e.input.charCodeAt(e.position)); ) + if (39 === r) { + if (ur(e, n, e.position, !0), + 39 !== (r = e.input.charCodeAt(++e.position))) + return !0; + n = e.position, + e.position++, + i = e.position + } else + Jt(r) ? (ur(e, n, i, !0), + br(e, gr(e, !1, t)), + n = i = e.position) : e.position === e.lineStart && mr(e) ? lr(e, "unexpected end of the document within a single quoted scalar") : (e.position++, + i = e.position); + lr(e, "unexpected end of the stream within a single quoted scalar") + }(e, f) || function(e, t) { + var r, n, i, o, s, a, l; + if (34 !== (a = e.input.charCodeAt(e.position))) + return !1; + for (e.kind = "scalar", + e.result = "", + e.position++, + r = n = e.position; 0 !== (a = e.input.charCodeAt(e.position)); ) { + if (34 === a) + return ur(e, r, e.position, !0), + e.position++, + !0; + if (92 === a) { + if (ur(e, r, e.position, !0), + Jt(a = e.input.charCodeAt(++e.position))) + gr(e, !1, t); + else if (a < 256 && nr[a]) + e.result += ir[a], + e.position++; + else if ((s = 120 === (l = a) ? 2 : 117 === l ? 4 : 85 === l ? 8 : 0) > 0) { + for (i = s, + o = 0; i > 0; i--) + (s = er(a = e.input.charCodeAt(++e.position))) >= 0 ? o = (o << 4) + s : lr(e, "expected hexadecimal character"); + e.result += rr(o), + e.position++ + } else + lr(e, "unknown escape sequence"); + r = n = e.position + } else + Jt(a) ? (ur(e, r, n, !0), + br(e, gr(e, !1, t)), + r = n = e.position) : e.position === e.lineStart && mr(e) ? lr(e, "unexpected end of the document within a double quoted scalar") : (e.position++, + n = e.position) + } + lr(e, "unexpected end of the stream within a double quoted scalar") + }(e, f) ? m = !0 : !function(e) { + var t, r, n; + if (42 !== (n = e.input.charCodeAt(e.position))) + return !1; + for (n = e.input.charCodeAt(++e.position), + t = e.position; 0 !== n && !Xt(n) && !Qt(n); ) + n = e.input.charCodeAt(++e.position); + return e.position === t && lr(e, "name of an alias node must contain at least one character"), + r = e.input.slice(t, e.position), + Vt.call(e.anchorMap, r) || lr(e, 'unidentified alias "' + r + '"'), + e.result = e.anchorMap[r], + gr(e, !0, -1), + !0 + }(e) ? function(e, t, r) { + var n, i, o, s, a, l, c, p, u = e.kind, f = e.result; + if (Xt(p = e.input.charCodeAt(e.position)) || Qt(p) || 35 === p || 38 === p || 42 === p || 33 === p || 124 === p || 62 === p || 39 === p || 34 === p || 37 === p || 64 === p || 96 === p) + return !1; + if ((63 === p || 45 === p) && (Xt(n = e.input.charCodeAt(e.position + 1)) || r && Qt(n))) + return !1; + for (e.kind = "scalar", + e.result = "", + i = o = e.position, + s = !1; 0 !== p; ) { + if (58 === p) { + if (Xt(n = e.input.charCodeAt(e.position + 1)) || r && Qt(n)) + break + } else if (35 === p) { + if (Xt(e.input.charCodeAt(e.position - 1))) + break + } else { + if (e.position === e.lineStart && mr(e) || r && Qt(p)) + break; + if (Jt(p)) { + if (a = e.line, + l = e.lineStart, + c = e.lineIndent, + gr(e, !1, -1), + e.lineIndent >= t) { + s = !0, + p = e.input.charCodeAt(e.position); + continue + } + e.position = o, + e.line = a, + e.lineStart = l, + e.lineIndent = c; + break + } + } + s && (ur(e, i, o, !1), + br(e, e.line - a), + i = o = e.position, + s = !1), + Wt(p) || (o = e.position + 1), + p = e.input.charCodeAt(++e.position) + } + return ur(e, i, o, !1), + !!e.result || (e.kind = u, + e.result = f, + !1) + }(e, f, 1 === r) && (m = !0, + null === e.tag && (e.tag = "?")) : (m = !0, + null === e.tag && null === e.anchor || lr(e, "alias node should not have any properties")), + null !== e.anchor && (e.anchorMap[e.anchor] = e.result)) : 0 === d && (m = a && vr(e, h))), + null === e.tag) + null !== e.anchor && (e.anchorMap[e.anchor] = e.result); + else if ("?" === e.tag) { + for (null !== e.result && "scalar" !== e.kind && lr(e, 'unacceptable node kind for !<?> tag; it should be "scalar", not "' + e.kind + '"'), + l = 0, + c = e.implicitTypes.length; l < c; l += 1) + if ((u = e.implicitTypes[l]).resolve(e.result)) { + e.result = u.construct(e.result), + e.tag = u.tag, + null !== e.anchor && (e.anchorMap[e.anchor] = e.result); + break + } + } else if ("!" !== e.tag) { + if (Vt.call(e.typeMap[e.kind || "fallback"], e.tag)) + u = e.typeMap[e.kind || "fallback"][e.tag]; + else + for (u = null, + l = 0, + c = (p = e.typeMap.multi[e.kind || "fallback"]).length; l < c; l += 1) + if (e.tag.slice(0, p[l].tag.length) === p[l].tag) { + u = p[l]; + break + } + u || lr(e, "unknown tag !<" + e.tag + ">"), + null !== e.result && u.kind !== e.kind && lr(e, "unacceptable node kind for !<" + e.tag + '> tag; it should be "' + u.kind + '", not "' + e.kind + '"'), + u.resolve(e.result, e.tag) ? (e.result = u.construct(e.result, e.tag), + null !== e.anchor && (e.anchorMap[e.anchor] = e.result)) : lr(e, "cannot resolve a node with !<" + e.tag + "> explicit tag") + } + return null !== e.listener && e.listener("close", e), + null !== e.tag || null !== e.anchor || m + } + function wr(e) { + var t, r, n, i, o = e.position, s = !1; + for (e.version = null, + e.checkLineBreaks = e.legacy, + e.tagMap = Object.create(null), + e.anchorMap = Object.create(null); 0 !== (i = e.input.charCodeAt(e.position)) && (gr(e, !0, -1), + i = e.input.charCodeAt(e.position), + !(e.lineIndent > 0 || 37 !== i)); ) { + for (s = !0, + i = e.input.charCodeAt(++e.position), + t = e.position; 0 !== i && !Xt(i); ) + i = e.input.charCodeAt(++e.position); + for (n = [], + (r = e.input.slice(t, e.position)).length < 1 && lr(e, "directive name must not be less than one character in length"); 0 !== i; ) { + for (; Wt(i); ) + i = e.input.charCodeAt(++e.position); + if (35 === i) { + do { + i = e.input.charCodeAt(++e.position) + } while (0 !== i && !Jt(i)); + break + } + if (Jt(i)) + break; + for (t = e.position; 0 !== i && !Xt(i); ) + i = e.input.charCodeAt(++e.position); + n.push(e.input.slice(t, e.position)) + } + 0 !== i && dr(e), + Vt.call(pr, r) ? pr[r](e, r, n) : cr(e, 'unknown document directive "' + r + '"') + } + gr(e, !0, -1), + 0 === e.lineIndent && 45 === e.input.charCodeAt(e.position) && 45 === e.input.charCodeAt(e.position + 1) && 45 === e.input.charCodeAt(e.position + 2) ? (e.position += 3, + gr(e, !0, -1)) : s && lr(e, "directives end mark is expected"), + Ar(e, e.lineIndent - 1, 4, !1, !0), + gr(e, !0, -1), + e.checkLineBreaks && Gt.test(e.input.slice(o, e.position)) && cr(e, "non-ASCII line breaks are interpreted as content"), + e.documents.push(e.result), + e.position === e.lineStart && mr(e) ? 46 === e.input.charCodeAt(e.position) && (e.position += 3, + gr(e, !0, -1)) : e.position < e.length - 1 && lr(e, "end of the stream or a document separator is expected") + } + function xr(e, t) { + t = t || {}, + 0 !== (e = String(e)).length && (10 !== e.charCodeAt(e.length - 1) && 13 !== e.charCodeAt(e.length - 1) && (e += "\n"), + 65279 === e.charCodeAt(0) && (e = e.slice(1))); + var r = new sr(e,t) + , n = e.indexOf("\0"); + for (-1 !== n && (r.position = n, + lr(r, "null byte is not allowed in input")), + r.input += "\0"; 32 === r.input.charCodeAt(r.position); ) + r.lineIndent += 1, + r.position += 1; + for (; r.position < r.length - 1; ) + wr(r); + return r.documents + } + var _r = { + loadAll: function(e, t, r) { + null !== t && "object" == typeof t && void 0 === r && (r = t, + t = null); + var n = xr(e, r); + if ("function" != typeof t) + return n; + for (var i = 0, o = n.length; i < o; i += 1) + t(n[i]) + }, + load: function(e, t) { + var r = xr(e, t); + if (0 !== r.length) { + if (1 === r.length) + return r[0]; + throw new ot("expected a single document in the stream, but found more") + } + } + } + , Cr = Object.prototype.toString + , qr = Object.prototype.hasOwnProperty + , Sr = 65279 + , Er = { + 0: "\\0", + 7: "\\a", + 8: "\\b", + 9: "\\t", + 10: "\\n", + 11: "\\v", + 12: "\\f", + 13: "\\r", + 27: "\\e", + 34: '\\"', + 92: "\\\\", + 133: "\\N", + 160: "\\_", + 8232: "\\L", + 8233: "\\P" + } + , Mr = ["y", "Y", "yes", "Yes", "YES", "on", "On", "ON", "n", "N", "no", "No", "NO", "off", "Off", "OFF"] + , Lr = /^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/; + function Tr(e) { + var t, r, n; + if (t = e.toString(16).toUpperCase(), + e <= 255) + r = "x", + n = 2; + else if (e <= 65535) + r = "u", + n = 4; + else { + if (!(e <= 4294967295)) + throw new ot("code point within a string may not be greater than 0xFFFFFFFF"); + r = "U", + n = 8 + } + return "\\" + r + rt.repeat("0", n - t.length) + t + } + function Ir(e) { + this.schema = e.schema || Bt, + this.indent = Math.max(1, e.indent || 2), + this.noArrayIndent = e.noArrayIndent || !1, + this.skipInvalid = e.skipInvalid || !1, + this.flowLevel = rt.isNothing(e.flowLevel) ? -1 : e.flowLevel, + this.styleMap = function(e, t) { + var r, n, i, o, s, a, l; + if (null === t) + return {}; + for (r = {}, + i = 0, + o = (n = Object.keys(t)).length; i < o; i += 1) + s = n[i], + a = String(t[s]), + "!!" === s.slice(0, 2) && (s = "tag:yaml.org,2002:" + s.slice(2)), + (l = e.compiledTypeMap.fallback[s]) && qr.call(l.styleAliases, a) && (a = l.styleAliases[a]), + r[s] = a; + return r + }(this.schema, e.styles || null), + this.sortKeys = e.sortKeys || !1, + this.lineWidth = e.lineWidth || 80, + this.noRefs = e.noRefs || !1, + this.noCompatMode = e.noCompatMode || !1, + this.condenseFlow = e.condenseFlow || !1, + this.quotingType = '"' === e.quotingType ? 2 : 1, + this.forceQuotes = e.forceQuotes || !1, + this.replacer = "function" == typeof e.replacer ? e.replacer : null, + this.implicitTypes = this.schema.compiledImplicit, + this.explicitTypes = this.schema.compiledExplicit, + this.tag = null, + this.result = "", + this.duplicates = [], + this.usedDuplicates = null + } + function Or(e, t) { + for (var r, n = rt.repeat(" ", t), i = 0, o = -1, s = "", a = e.length; i < a; ) + -1 === (o = e.indexOf("\n", i)) ? (r = e.slice(i), + i = a) : (r = e.slice(i, o + 1), + i = o + 1), + r.length && "\n" !== r && (s += n), + s += r; + return s + } + function Nr(e, t) { + return "\n" + rt.repeat(" ", e.indent * t) + } + function jr(e) { + return 32 === e || 9 === e + } + function Dr(e) { + return 32 <= e && e <= 126 || 161 <= e && e <= 55295 && 8232 !== e && 8233 !== e || 57344 <= e && e <= 65533 && e !== Sr || 65536 <= e && e <= 1114111 + } + function Rr(e) { + return Dr(e) && e !== Sr && 13 !== e && 10 !== e + } + function Ur(e, t, r) { + var n = Rr(e) + , i = n && !jr(e); + return (r ? n : n && 44 !== e && 91 !== e && 93 !== e && 123 !== e && 125 !== e) && 35 !== e && !(58 === t && !i) || Rr(t) && !jr(t) && 35 === e || 58 === t && i + } + function Fr(e, t) { + var r, n = e.charCodeAt(t); + return n >= 55296 && n <= 56319 && t + 1 < e.length && (r = e.charCodeAt(t + 1)) >= 56320 && r <= 57343 ? 1024 * (n - 55296) + r - 56320 + 65536 : n + } + function zr(e) { + return /^\n* /.test(e) + } + function Pr(e, t, r, n, i, o, s, a) { + var l, c, p = 0, u = null, f = !1, h = !1, d = -1 !== n, g = -1, m = Dr(c = Fr(e, 0)) && c !== Sr && !jr(c) && 45 !== c && 63 !== c && 58 !== c && 44 !== c && 91 !== c && 93 !== c && 123 !== c && 125 !== c && 35 !== c && 38 !== c && 42 !== c && 33 !== c && 124 !== c && 61 !== c && 62 !== c && 39 !== c && 34 !== c && 37 !== c && 64 !== c && 96 !== c && function(e) { + return !jr(e) && 58 !== e + }(Fr(e, e.length - 1)); + if (t || s) + for (l = 0; l < e.length; p >= 65536 ? l += 2 : l++) { + if (!Dr(p = Fr(e, l))) + return 5; + m = m && Ur(p, u, a), + u = p + } + else { + for (l = 0; l < e.length; p >= 65536 ? l += 2 : l++) { + if (10 === (p = Fr(e, l))) + f = !0, + d && (h = h || l - g - 1 > n && " " !== e[g + 1], + g = l); + else if (!Dr(p)) + return 5; + m = m && Ur(p, u, a), + u = p + } + h = h || d && l - g - 1 > n && " " !== e[g + 1] + } + return f || h ? r > 9 && zr(e) ? 5 : s ? 2 === o ? 5 : 2 : h ? 4 : 3 : !m || s || i(e) ? 2 === o ? 5 : 2 : 1 + } + function Br(e, t, r, n, i) { + e.dump = function() { + if (0 === t.length) + return 2 === e.quotingType ? '""' : "''"; + if (!e.noCompatMode && (-1 !== Mr.indexOf(t) || Lr.test(t))) + return 2 === e.quotingType ? '"' + t + '"' : "'" + t + "'"; + var o = e.indent * Math.max(1, r) + , s = -1 === e.lineWidth ? -1 : Math.max(Math.min(e.lineWidth, 40), e.lineWidth - o) + , a = n || e.flowLevel > -1 && r >= e.flowLevel; + switch (Pr(t, a, e.indent, s, (function(t) { + return function(e, t) { + var r, n; + for (r = 0, + n = e.implicitTypes.length; r < n; r += 1) + if (e.implicitTypes[r].resolve(t)) + return !0; + return !1 + }(e, t) + } + ), e.quotingType, e.forceQuotes && !n, i)) { + case 1: + return t; + case 2: + return "'" + t.replace(/'/g, "''") + "'"; + case 3: + return "|" + Vr(t, e.indent) + $r(Or(t, o)); + case 4: + return ">" + Vr(t, e.indent) + $r(Or(function(e, t) { + var r, n, i = /(\n+)([^\n]*)/g, o = (a = e.indexOf("\n"), + a = -1 !== a ? a : e.length, + i.lastIndex = a, + Gr(e.slice(0, a), t)), s = "\n" === e[0] || " " === e[0]; + var a; + for (; n = i.exec(e); ) { + var l = n[1] + , c = n[2]; + r = " " === c[0], + o += l + (s || r || "" === c ? "" : "\n") + Gr(c, t), + s = r + } + return o + }(t, s), o)); + case 5: + return '"' + function(e) { + for (var t, r = "", n = 0, i = 0; i < e.length; n >= 65536 ? i += 2 : i++) + n = Fr(e, i), + !(t = Er[n]) && Dr(n) ? (r += e[i], + n >= 65536 && (r += e[i + 1])) : r += t || Tr(n); + return r + }(t) + '"'; + default: + throw new ot("impossible error: invalid scalar style") + } + }() + } + function Vr(e, t) { + var r = zr(e) ? String(t) : "" + , n = "\n" === e[e.length - 1]; + return r + (n && ("\n" === e[e.length - 2] || "\n" === e) ? "+" : n ? "" : "-") + "\n" + } + function $r(e) { + return "\n" === e[e.length - 1] ? e.slice(0, -1) : e + } + function Gr(e, t) { + if ("" === e || " " === e[0]) + return e; + for (var r, n, i = / [^ ]/g, o = 0, s = 0, a = 0, l = ""; r = i.exec(e); ) + (a = r.index) - o > t && (n = s > o ? s : a, + l += "\n" + e.slice(o, n), + o = n + 1), + s = a; + return l += "\n", + e.length - o > t && s > o ? l += e.slice(o, s) + "\n" + e.slice(s + 1) : l += e.slice(o), + l.slice(1) + } + function Hr(e, t, r, n) { + var i, o, s, a = "", l = e.tag; + for (i = 0, + o = r.length; i < o; i += 1) + s = r[i], + e.replacer && (s = e.replacer.call(r, String(i), s)), + (Yr(e, t + 1, s, !0, !0, !1, !0) || void 0 === s && Yr(e, t + 1, null, !0, !0, !1, !0)) && (n && "" === a || (a += Nr(e, t)), + e.dump && 10 === e.dump.charCodeAt(0) ? a += "-" : a += "- ", + a += e.dump); + e.tag = l, + e.dump = a || "[]" + } + function Zr(e, t, r) { + var n, i, o, s, a, l; + for (o = 0, + s = (i = r ? e.explicitTypes : e.implicitTypes).length; o < s; o += 1) + if (((a = i[o]).instanceOf || a.predicate) && (!a.instanceOf || "object" == typeof t && t instanceof a.instanceOf) && (!a.predicate || a.predicate(t))) { + if (r ? a.multi && a.representName ? e.tag = a.representName(t) : e.tag = a.tag : e.tag = "?", + a.represent) { + if (l = e.styleMap[a.tag] || a.defaultStyle, + "[object Function]" === Cr.call(a.represent)) + n = a.represent(t, l); + else { + if (!qr.call(a.represent, l)) + throw new ot("!<" + a.tag + '> tag resolver accepts not "' + l + '" style'); + n = a.represent[l](t, l) + } + e.dump = n + } + return !0 + } + return !1 + } + function Yr(e, t, r, n, i, o, s) { + e.tag = null, + e.dump = r, + Zr(e, r, !1) || Zr(e, r, !0); + var a, l = Cr.call(e.dump), c = n; + n && (n = e.flowLevel < 0 || e.flowLevel > t); + var p, u, f = "[object Object]" === l || "[object Array]" === l; + if (f && (u = -1 !== (p = e.duplicates.indexOf(r))), + (null !== e.tag && "?" !== e.tag || u || 2 !== e.indent && t > 0) && (i = !1), + u && e.usedDuplicates[p]) + e.dump = "*ref_" + p; + else { + if (f && u && !e.usedDuplicates[p] && (e.usedDuplicates[p] = !0), + "[object Object]" === l) + n && 0 !== Object.keys(e.dump).length ? (!function(e, t, r, n) { + var i, o, s, a, l, c, p = "", u = e.tag, f = Object.keys(r); + if (!0 === e.sortKeys) + f.sort(); + else if ("function" == typeof e.sortKeys) + f.sort(e.sortKeys); + else if (e.sortKeys) + throw new ot("sortKeys must be a boolean or a function"); + for (i = 0, + o = f.length; i < o; i += 1) + c = "", + n && "" === p || (c += Nr(e, t)), + a = r[s = f[i]], + e.replacer && (a = e.replacer.call(r, s, a)), + Yr(e, t + 1, s, !0, !0, !0) && ((l = null !== e.tag && "?" !== e.tag || e.dump && e.dump.length > 1024) && (e.dump && 10 === e.dump.charCodeAt(0) ? c += "?" : c += "? "), + c += e.dump, + l && (c += Nr(e, t)), + Yr(e, t + 1, a, !0, l) && (e.dump && 10 === e.dump.charCodeAt(0) ? c += ":" : c += ": ", + p += c += e.dump)); + e.tag = u, + e.dump = p || "{}" + }(e, t, e.dump, i), + u && (e.dump = "&ref_" + p + e.dump)) : (!function(e, t, r) { + var n, i, o, s, a, l = "", c = e.tag, p = Object.keys(r); + for (n = 0, + i = p.length; n < i; n += 1) + a = "", + "" !== l && (a += ", "), + e.condenseFlow && (a += '"'), + s = r[o = p[n]], + e.replacer && (s = e.replacer.call(r, o, s)), + Yr(e, t, o, !1, !1) && (e.dump.length > 1024 && (a += "? "), + a += e.dump + (e.condenseFlow ? '"' : "") + ":" + (e.condenseFlow ? "" : " "), + Yr(e, t, s, !1, !1) && (l += a += e.dump)); + e.tag = c, + e.dump = "{" + l + "}" + }(e, t, e.dump), + u && (e.dump = "&ref_" + p + " " + e.dump)); + else if ("[object Array]" === l) + n && 0 !== e.dump.length ? (e.noArrayIndent && !s && t > 0 ? Hr(e, t - 1, e.dump, i) : Hr(e, t, e.dump, i), + u && (e.dump = "&ref_" + p + e.dump)) : (!function(e, t, r) { + var n, i, o, s = "", a = e.tag; + for (n = 0, + i = r.length; n < i; n += 1) + o = r[n], + e.replacer && (o = e.replacer.call(r, String(n), o)), + (Yr(e, t, o, !1, !1) || void 0 === o && Yr(e, t, null, !1, !1)) && ("" !== s && (s += "," + (e.condenseFlow ? "" : " ")), + s += e.dump); + e.tag = a, + e.dump = "[" + s + "]" + }(e, t, e.dump), + u && (e.dump = "&ref_" + p + " " + e.dump)); + else { + if ("[object String]" !== l) { + if ("[object Undefined]" === l) + return !1; + if (e.skipInvalid) + return !1; + throw new ot("unacceptable kind of an object to dump " + l) + } + "?" !== e.tag && Br(e, e.dump, t, o, c) + } + null !== e.tag && "?" !== e.tag && (a = encodeURI("!" === e.tag[0] ? e.tag.slice(1) : e.tag).replace(/!/g, "%21"), + a = "!" === e.tag[0] ? "!" + a : "tag:yaml.org,2002:" === a.slice(0, 18) ? "!!" + a.slice(18) : "!<" + a + ">", + e.dump = a + " " + e.dump) + } + return !0 + } + function Kr(e, t) { + var r, n, i = [], o = []; + for (Jr(e, i, o), + r = 0, + n = o.length; r < n; r += 1) + t.duplicates.push(i[o[r]]); + t.usedDuplicates = new Array(n) + } + function Jr(e, t, r) { + var n, i, o; + if (null !== e && "object" == typeof e) + if (-1 !== (i = t.indexOf(e))) + -1 === r.indexOf(i) && r.push(i); + else if (t.push(e), + Array.isArray(e)) + for (i = 0, + o = e.length; i < o; i += 1) + Jr(e[i], t, r); + else + for (i = 0, + o = (n = Object.keys(e)).length; i < o; i += 1) + Jr(e[n[i]], t, r) + } + function Wr(e, t) { + return function() { + throw new Error("Function yaml." + e + " is removed in js-yaml 4. Use yaml." + t + " instead, which is now safe by default.") + } + } + var Xr = { + Type: ut, + Schema: dt, + FAILSAFE_SCHEMA: vt, + JSON_SCHEMA: St, + CORE_SCHEMA: Et, + DEFAULT_SCHEMA: Bt, + load: _r.load, + loadAll: _r.loadAll, + dump: { + dump: function(e, t) { + var r = new Ir(t = t || {}); + r.noRefs || Kr(e, r); + var n = e; + return r.replacer && (n = r.replacer.call({ + "": n + }, "", n)), + Yr(r, 0, n, !0, !0) ? r.dump + "\n" : "" + } + }.dump, + YAMLException: ot, + types: { + binary: Nt, + float: qt, + map: bt, + null: kt, + pairs: Ft, + set: Pt, + timestamp: Tt, + bool: yt, + int: xt, + merge: It, + omap: Rt, + seq: mt, + str: gt + }, + safeLoad: Wr("safeLoad", "load"), + safeLoadAll: Wr("safeLoadAll", "loadAll"), + safeDump: Wr("safeDump", "dump") + }; + const Qr = [{ + name: "frontmatter", + transform: e=>(e.beforeParse.tap(((e,t)=>{ + const r = e.parse; + e.parse = f(r, { + before(e) { + const [r] = e.args; + if (!r.startsWith("---\n")) + return; + const n = r.indexOf("\n---\n"); + if (n < 0) + return; + const i = r.slice(4, n); + let o; + try { + var s; + o = Xr.load(i), + null != (s = o) && s.markmap && (o.markmap = function(e) { + if (!e) + return; + return ["color", "extraJs", "extraCss"].forEach((t=>{ + null != e[t] && (e[t] = function(e) { + var t; + let r; + "string" == typeof e ? r = [e] : Array.isArray(e) && (r = e.filter((e=>e && "string" == typeof e))); + return null != (t = r) && t.length ? r : void 0 + }(e[t])) + } + )), + ["duration", "maxWidth", "initialExpandLevel"].forEach((t=>{ + null != e[t] && (e[t] = function(e) { + if (isNaN(+e)) + return; + return +e + }(e[t])) + } + )), + e + }(o.markmap)) + } catch (e) { + return + } + t.frontmatter = o; + const a = n + 5; + e.args[0] = r.slice(a) + }, + after() { + e.parse = r + } + }) + } + )), + {}) + }, Ke, et]; + function en(e) { + if ("heading" === e.type) + e.children = e.children.filter((e=>"paragraph" !== e.type)); + else if ("list_item" === e.type) { + var t; + e.children = e.children.filter((t=>!["paragraph", "fence"].includes(t.type) || (e.content || (e.content = t.content, + e.payload = i({}, e.payload, t.payload)), + !1))), + null != (null == (t = e.payload) ? void 0 : t.index) && (e.content = `${e.payload.index}. ${e.content}`) + } else if ("ordered_list" === e.type) { + var r, n; + let t = null != (r = null == (n = e.payload) ? void 0 : n.startIndex) ? r : 1; + e.children.forEach((e=>{ + "list_item" === e.type && (e.payload = i({}, e.payload, { + index: t + }), + t += 1) + } + )) + } + 0 === e.children.length ? delete e.children : (e.children.forEach((e=>en(e))), + 1 !== e.children.length || e.children[0].content || (e.children = e.children[0].children)) + } + function tn(e, t=0) { + var r; + e.depth = t, + null == (r = e.children) || r.forEach((e=>{ + tn(e, t + 1) + } + )) + } + e.Transformer = class { + constructor(e=Qr) { + this.assetsMap = {}, + this.plugins = e, + this.hooks = { + parser: new o, + beforeParse: new o, + afterParse: new o, + htmltag: new o, + retransform: new o + }; + const t = {}; + for (const {name: r, transform: n} of e) + t[r] = n(this.hooks); + this.assetsMap = t; + const r = new Ve("full",{ + html: !0, + breaks: !0, + maxNesting: 1 / 0 + }); + r.renderer.rules.htmltag = f(r.renderer.rules.htmltag, { + after: e=>{ + this.hooks.htmltag.call(e) + } + }), + this.md = r, + this.hooks.parser.call(r) + } + buildTree(e) { + const {md: t} = this + , r = { + type: "root", + depth: 0, + content: "", + children: [], + payload: {} + } + , n = [r]; + let i = 0; + for (const r of e) { + let e = n[n.length - 1]; + if (r.type.endsWith("_open")) { + const t = r.type.slice(0, -5) + , a = {}; + var o; + if (r.lines && (a.lines = r.lines), + "heading" === t) + for (i = r.hLevel; (null == (s = e) ? void 0 : s.depth) >= i; ) { + var s; + n.pop(), + e = n[n.length - 1] + } + else + i = Math.max(i, (null == (o = e) ? void 0 : o.depth) || 0) + 1, + "ordered_list" === t && (a.startIndex = r.order); + const l = { + type: t, + depth: i, + payload: a, + content: "", + children: [] + }; + e.children.push(l), + n.push(l) + } else { + if (!e) + continue; + if (r.type === `${e.type}_close`) + "heading" === e.type ? i = e.depth : (n.pop(), + i = 0); + else if ("inline" === r.type) { + const n = this.hooks.htmltag.tap((t=>{ + const r = t.result.match(/^<!--([\s\S]*?)-->$/) + , n = null == r ? void 0 : r[1].trim().split(" "); + "fold" === n[0] && (e.payload.fold = ["all", "recursively"].includes(n[1]) ? 2 : 1, + t.result = "") + } + )) + , i = t.renderer.render([r], t.options, {}); + n(), + e.content = `${e.content || ""}${i}` + } else if ("fence" === r.type) { + let n = t.renderer.render([r], t.options, {}); + const o = n.match(/<code( class="[^"]*")>/); + o && (n = n.replace("<pre>", `<pre${o[1]}>`)), + e.children.push({ + type: r.type, + depth: i + 1, + content: n, + children: [] + }) + } + } + } + return r + } + transform(e) { + var t; + const r = { + features: {} + }; + this.hooks.beforeParse.call(this.md, r); + const n = this.md.parse(e, {}); + this.hooks.afterParse.call(this.md, r); + let o = this.buildTree(n); + return en(o), + 1 === (null == (t = o.children) ? void 0 : t.length) && (o = o.children[0]), + tn(o), + i({}, r, { + root: o + }) + } + getAssets(e) { + const t = [] + , r = []; + null != e || (e = this.plugins.map((e=>e.name))); + for (const n of e.map((e=>this.assetsMap[e]))) + n && (n.styles && t.push(...n.styles), + n.scripts && r.push(...n.scripts)); + return { + styles: t, + scripts: r + } + } + getUsedAssets(e) { + const t = this.plugins.map((e=>e.name)).filter((t=>e[t])); + return this.getAssets(t) + } + } + , + e.builtInPlugins = Qr, + e.fillTemplate = function(e, t, r) { + r = i({ + baseJs: b + }, r); + const {scripts: n, styles: o} = t + , a = [...o ? (l = o, + l.map((e=>"stylesheet" === e.type ? p("link", null, s({ + rel: "stylesheet" + }, e.data)) : p("style", e.data)))) : []]; + var l; + const c = { + getMarkmap: ()=>window.markmap, + getOptions: r.getOptions, + jsonOptions: r.jsonOptions, + root: e + } + , f = [...u([...r.baseJs, ...n || [], { + type: "iife", + data: { + fn: (e,t,r,n)=>{ + const i = e(); + window.mm = i.Markmap.create("svg#mindmap", (t || i.deriveOptions)(n), r) + } + , + getParams: ({getMarkmap: e, getOptions: t, root: r, jsonOptions: n})=>[e, t, r, n] + } + }], c)]; + return '<!DOCTYPE html>\n<html>\n<head>\n<meta charset="UTF-8">\n<meta name="viewport" content="width=device-width, initial-scale=1.0">\n<meta http-equiv="X-UA-Compatible" content="ie=edge">\n<title>Markmap\n\n\x3c!--CSS--\x3e\n\n\n\n\x3c!--JS--\x3e\n\n\n'.replace("\x3c!--CSS--\x3e", (()=>a.join(""))).replace("\x3c!--JS--\x3e", (()=>f.join(""))) + } + , + e.transformerVersions = { + "markmap-lib": "0.14.3", + d3: "6.7.0" + } +} +)); + + +/*! markmap-view v0.14.3 | MIT License */ +!function(t, e) { + "use strict"; + function n(t) { + if (t && t.__esModule) + return t; + var e = Object.create(null); + if (t) + for (var n in t) + e[n] = t[n]; + return e.default = t, + Object.freeze(e) + } + var r = n(e); + /*! markmap-common v0.14.2 | MIT License */ + class i { + constructor() { + this.listeners = [] + } + tap(t) { + return this.listeners.push(t), + ()=>this.revoke(t) + } + revoke(t) { + const e = this.listeners.indexOf(t); + e >= 0 && this.listeners.splice(e, 1) + } + revokeAll() { + this.listeners.splice(0) + } + call(...t) { + for (const e of this.listeners) + e(...t) + } + } + function a() { + return a = Object.assign || function(t) { + for (var e = 1; e < arguments.length; e++) { + var n = arguments[e]; + for (var r in n) + Object.prototype.hasOwnProperty.call(n, r) && (t[r] = n[r]) + } + return t + } + , + a.apply(this, arguments) + } + const o = Math.random().toString(36).slice(2, 8); + let s = 0; + function l() {} + function c(t, e, n="children") { + const r = (t,i)=>e(t, (()=>{ + var e; + null == (e = t[n]) || e.forEach((e=>{ + r(e, t) + } + )) + } + ), i); + r(t) + } + function h(t) { + if (Array.from) + return Array.from(t); + const e = []; + for (let n = 0; n < t.length; n += 1) + e.push(t[n]); + return e + } + function d(t) { + if ("string" == typeof t) { + const e = t; + t = t=>t.tagName === e + } + const e = t; + return function() { + let t = h(this.childNodes); + return e && (t = t.filter((t=>e(t)))), + t + } + } + function u(t, e, n) { + const r = document.createElement(t); + return e && Object.entries(e).forEach((([t,e])=>{ + r[t] = e + } + )), + n && Object.entries(n).forEach((([t,e])=>{ + r.setAttribute(t, e) + } + )), + r + } + const p = function(t) { + const e = {}; + return function(...n) { + const r = `${n[0]}`; + let i = e[r]; + return i || (i = { + value: t(...n) + }, + e[r] = i), + i.value + } + }((t=>{ + document.head.append(u("link", { + rel: "preload", + as: "script", + href: t + })) + } + )); + async function f(t, e) { + if (!t.loaded && ("script" === t.type && (t.loaded = new Promise(((e,n)=>{ + var r; + document.head.append(u("script", a({}, t.data, { + onload: e, + onerror: n + }))), + null != (r = t.data) && r.src || e(void 0) + } + )).then((()=>{ + t.loaded = !0 + } + ))), + "iife" === t.type)) { + const {fn: n, getParams: r} = t.data; + n(...(null == r ? void 0 : r(e)) || []), + t.loaded = !0 + } + await t.loaded + } + function m(t) { + t.loaded || (t.loaded = !0, + "style" === t.type ? document.head.append(u("style", { + textContent: t.data + })) : "stylesheet" === t.type && document.head.append(u("link", a({ + rel: "stylesheet" + }, t.data)))) + } + function g() { + return g = Object.assign || function(t) { + for (var e = 1; e < arguments.length; e++) { + var n = arguments[e]; + for (var r in n) + Object.prototype.hasOwnProperty.call(n, r) && (t[r] = n[r]) + } + return t + } + , + g.apply(this, arguments) + } + function y(t) { + var e = 0 + , n = t.children + , r = n && n.length; + if (r) + for (; --r >= 0; ) + e += n[r].value; + else + e = 1; + t.value = e + } + function v(t, e) { + var n, r, i, a, o, s = new b(t), l = +t.value && (s.value = t.value), c = [s]; + for (null == e && (e = x); n = c.pop(); ) + if (l && (n.value = +n.data.value), + (i = e(n.data)) && (o = i.length)) + for (n.children = new Array(o), + a = o - 1; a >= 0; --a) + c.push(r = n.children[a] = new b(i[a])), + r.parent = n, + r.depth = n.depth + 1; + return s.eachBefore(z) + } + function x(t) { + return t.children + } + function k(t) { + t.data = t.data.data + } + function z(t) { + var e = 0; + do { + t.height = e + } while ((t = t.parent) && t.height < ++e) + } + function b(t) { + this.data = t, + this.depth = this.height = 0, + this.parent = null + } + b.prototype = v.prototype = { + constructor: b, + count: function() { + return this.eachAfter(y) + }, + each: function(t) { + var e, n, r, i, a = this, o = [a]; + do { + for (e = o.reverse(), + o = []; a = e.pop(); ) + if (t(a), + n = a.children) + for (r = 0, + i = n.length; r < i; ++r) + o.push(n[r]) + } while (o.length); + return this + }, + eachAfter: function(t) { + for (var e, n, r, i = this, a = [i], o = []; i = a.pop(); ) + if (o.push(i), + e = i.children) + for (n = 0, + r = e.length; n < r; ++n) + a.push(e[n]); + for (; i = o.pop(); ) + t(i); + return this + }, + eachBefore: function(t) { + for (var e, n, r = this, i = [r]; r = i.pop(); ) + if (t(r), + e = r.children) + for (n = e.length - 1; n >= 0; --n) + i.push(e[n]); + return this + }, + sum: function(t) { + return this.eachAfter((function(e) { + for (var n = +t(e.data) || 0, r = e.children, i = r && r.length; --i >= 0; ) + n += r[i].value; + e.value = n + } + )) + }, + sort: function(t) { + return this.eachBefore((function(e) { + e.children && e.children.sort(t) + } + )) + }, + path: function(t) { + for (var e = this, n = function(t, e) { + if (t === e) + return t; + var n = t.ancestors() + , r = e.ancestors() + , i = null; + t = n.pop(), + e = r.pop(); + for (; t === e; ) + i = t, + t = n.pop(), + e = r.pop(); + return i + }(e, t), r = [e]; e !== n; ) + e = e.parent, + r.push(e); + for (var i = r.length; t !== n; ) + r.splice(i, 0, t), + t = t.parent; + return r + }, + ancestors: function() { + for (var t = this, e = [t]; t = t.parent; ) + e.push(t); + return e + }, + descendants: function() { + var t = []; + return this.each((function(e) { + t.push(e) + } + )), + t + }, + leaves: function() { + var t = []; + return this.eachBefore((function(e) { + e.children || t.push(e) + } + )), + t + }, + links: function() { + var t = this + , e = []; + return t.each((function(n) { + n !== t && e.push({ + source: n.parent, + target: n + }) + } + )), + e + }, + copy: function() { + return v(this).eachBefore(k) + } + }; + var S = { + name: "d3-flextree", + version: "2.1.2", + main: "build/d3-flextree.js", + module: "index", + "jsnext:main": "index", + author: { + name: "Chris Maloney", + url: "http://chrismaloney.org" + }, + description: "Flexible tree layout algorithm that allows for variable node sizes.", + keywords: ["d3", "d3-module", "layout", "tree", "hierarchy", "d3-hierarchy", "plugin", "d3-plugin", "infovis", "visualization", "2d"], + homepage: "https://github.com/klortho/d3-flextree", + license: "WTFPL", + repository: { + type: "git", + url: "https://github.com/klortho/d3-flextree.git" + }, + scripts: { + clean: "rm -rf build demo test", + "build:demo": "rollup -c --environment BUILD:demo", + "build:dev": "rollup -c --environment BUILD:dev", + "build:prod": "rollup -c --environment BUILD:prod", + "build:test": "rollup -c --environment BUILD:test", + build: "rollup -c", + lint: "eslint index.js src", + "test:main": "node test/bundle.js", + "test:browser": "node test/browser-tests.js", + test: "npm-run-all test:*", + prepare: "npm-run-all clean build lint test" + }, + dependencies: { + "d3-hierarchy": "^1.1.5" + }, + devDependencies: { + "babel-plugin-external-helpers": "^6.22.0", + "babel-preset-es2015-rollup": "^3.0.0", + d3: "^4.13.0", + "d3-selection-multi": "^1.0.1", + eslint: "^4.19.1", + jsdom: "^11.6.2", + "npm-run-all": "^4.1.2", + rollup: "^0.55.3", + "rollup-plugin-babel": "^2.7.1", + "rollup-plugin-commonjs": "^8.0.2", + "rollup-plugin-copy": "^0.2.3", + "rollup-plugin-json": "^2.3.0", + "rollup-plugin-node-resolve": "^3.0.2", + "rollup-plugin-uglify": "^3.0.0", + "uglify-es": "^3.3.9" + } + }; + const {version: w} = S + , E = Object.freeze({ + children: t=>t.children, + nodeSize: t=>t.data.size, + spacing: 0 + }); + function j(t) { + const e = Object.assign({}, E, t); + function n(t) { + const n = e[t]; + return "function" == typeof n ? n : ()=>n + } + function r(t) { + const e = a(function() { + const t = i() + , e = n("nodeSize") + , r = n("spacing"); + return class extends t { + constructor(t) { + super(t), + Object.assign(this, { + x: 0, + y: 0, + relX: 0, + prelim: 0, + shift: 0, + change: 0, + lExt: this, + lExtRelX: 0, + lThr: null, + rExt: this, + rExtRelX: 0, + rThr: null + }) + } + get size() { + return e(this.data) + } + spacing(t) { + return r(this.data, t.data) + } + get x() { + return this.data.x + } + set x(t) { + this.data.x = t + } + get y() { + return this.data.y + } + set y(t) { + this.data.y = t + } + update() { + return C(this), + X(this), + this + } + } + }(), t, (t=>t.children)); + return e.update(), + e.data + } + function i() { + const t = n("nodeSize") + , e = n("spacing"); + return class n extends v.prototype.constructor { + constructor(t) { + super(t) + } + copy() { + const t = a(this.constructor, this, (t=>t.children)); + return t.each((t=>t.data = t.data.data)), + t + } + get size() { + return t(this) + } + spacing(t) { + return e(this, t) + } + get nodes() { + return this.descendants() + } + get xSize() { + return this.size[0] + } + get ySize() { + return this.size[1] + } + get top() { + return this.y + } + get bottom() { + return this.y + this.ySize + } + get left() { + return this.x - this.xSize / 2 + } + get right() { + return this.x + this.xSize / 2 + } + get root() { + const t = this.ancestors(); + return t[t.length - 1] + } + get numChildren() { + return this.hasChildren ? this.children.length : 0 + } + get hasChildren() { + return !this.noChildren + } + get noChildren() { + return null === this.children + } + get firstChild() { + return this.hasChildren ? this.children[0] : null + } + get lastChild() { + return this.hasChildren ? this.children[this.numChildren - 1] : null + } + get extents() { + return (this.children || []).reduce(((t,e)=>n.maxExtents(t, e.extents)), this.nodeExtents) + } + get nodeExtents() { + return { + top: this.top, + bottom: this.bottom, + left: this.left, + right: this.right + } + } + static maxExtents(t, e) { + return { + top: Math.min(t.top, e.top), + bottom: Math.max(t.bottom, e.bottom), + left: Math.min(t.left, e.left), + right: Math.max(t.right, e.right) + } + } + } + } + function a(t, e, n) { + const r = (e,i)=>{ + const a = new t(e); + Object.assign(a, { + parent: i, + depth: null === i ? 0 : i.depth + 1, + height: 0, + length: 1 + }); + const o = n(e) || []; + return a.children = 0 === o.length ? null : o.map((t=>r(t, a))), + a.children && Object.assign(a, a.children.reduce(((t,e)=>({ + height: Math.max(t.height, e.height + 1), + length: t.length + e.length + })), a)), + a + } + ; + return r(e, null) + } + return Object.assign(r, { + nodeSize(t) { + return arguments.length ? (e.nodeSize = t, + r) : e.nodeSize + }, + spacing(t) { + return arguments.length ? (e.spacing = t, + r) : e.spacing + }, + children(t) { + return arguments.length ? (e.children = t, + r) : e.children + }, + hierarchy(t, n) { + const r = void 0 === n ? e.children : n; + return a(i(), t, r) + }, + dump(t) { + const e = n("nodeSize") + , r = t=>n=>{ + const i = t + " " + , a = t + " " + , {x: o, y: s} = n + , l = e(n) + , c = n.children || [] + , h = 0 === c.length ? " " : `,${i}children: [${a}${c.map(r(a)).join(a)}${i}],${t}`; + return `{ size: [${l.join(", ")}],${i}x: ${o}, y: ${s}${h}},` + } + ; + return r("\n")(t) + } + }), + r + } + j.version = w; + const C = (t,e=0)=>(t.y = e, + (t.children || []).reduce(((e,n)=>{ + const [r,i] = e; + C(n, t.y + t.ySize); + const a = (0 === r ? n.lExt : n.rExt).bottom; + 0 !== r && I(t, r, i); + return [r + 1, D(a, r, i)] + } + ), [0, null]), + O(t), + T(t), + t) + , X = (t,e,n)=>{ + void 0 === e && (e = -t.relX - t.prelim, + n = 0); + const r = e + t.relX; + return t.relX = r + t.prelim - n, + t.prelim = 0, + t.x = n + t.relX, + (t.children || []).forEach((e=>X(e, r, t.x))), + t + } + , O = t=>{ + (t.children || []).reduce(((t,e)=>{ + const [n,r] = t + , i = n + e.shift + , a = r + i + e.change; + return e.relX += a, + [i, a] + } + ), [0, 0]) + } + , I = (t,e,n)=>{ + const r = t.children[e - 1] + , i = t.children[e]; + let a = r + , o = r.relX + , s = i + , l = i.relX + , c = !0; + for (; a && s; ) { + a.bottom > n.lowY && (n = n.next); + const r = o + a.prelim - (l + s.prelim) + a.xSize / 2 + s.xSize / 2 + a.spacing(s); + (r > 0 || r < 0 && c) && (l += r, + M(i, r), + A(t, e, n.index, r)), + c = !1; + const h = a.bottom + , d = s.bottom; + h <= d && (a = R(a), + a && (o += a.relX)), + h >= d && (s = $(s), + s && (l += s.relX)) + } + !a && s ? B(t, e, s, l) : a && !s && N(t, e, a, o) + } + , M = (t,e)=>{ + t.relX += e, + t.lExtRelX += e, + t.rExtRelX += e + } + , A = (t,e,n,r)=>{ + const i = t.children[e] + , a = e - n; + if (a > 1) { + const e = r / a; + t.children[n + 1].shift += e, + i.shift -= e, + i.change -= r - e + } + } + , $ = t=>t.hasChildren ? t.firstChild : t.lThr + , R = t=>t.hasChildren ? t.lastChild : t.rThr + , B = (t,e,n,r)=>{ + const i = t.firstChild + , a = i.lExt + , o = t.children[e]; + a.lThr = n; + const s = r - n.relX - i.lExtRelX; + a.relX += s, + a.prelim -= s, + i.lExt = o.lExt, + i.lExtRelX = o.lExtRelX + } + , N = (t,e,n,r)=>{ + const i = t.children[e] + , a = i.rExt + , o = t.children[e - 1]; + a.rThr = n; + const s = r - n.relX - i.rExtRelX; + a.relX += s, + a.prelim -= s, + i.rExt = o.rExt, + i.rExtRelX = o.rExtRelX + } + , T = t=>{ + if (t.hasChildren) { + const e = t.firstChild + , n = t.lastChild + , r = (e.prelim + e.relX - e.xSize / 2 + n.relX + n.prelim + n.xSize / 2) / 2; + Object.assign(t, { + prelim: r, + lExt: e.lExt, + lExtRelX: e.lExtRelX, + rExt: n.rExt, + rExtRelX: n.rExtRelX + }) + } + } + , D = (t,e,n)=>{ + for (; null !== n && t >= n.lowY; ) + n = n.next; + return { + lowY: t, + index: e, + next: n + } + } + ; + /*! @gera2ld/jsx-dom v2.1.1 | ISC License */ + var H = "http://www.w3.org/1999/xlink" + , L = { + show: H, + actuate: H, + href: H + }; + function P(t, e) { + var n; + if ("string" == typeof t) + n = 1; + else { + if ("function" != typeof t) + throw new Error("Invalid VNode type"); + n = 2 + } + return { + vtype: n, + type: t, + props: e + } + } + function F(t) { + return t.children + } + var Y = { + isSvg: !1 + }; + function W(t, e) { + if (1 === e.type) + null != e.node && t.append(e.node); + else { + if (4 !== e.type) + throw new Error("Unkown ref type " + JSON.stringify(e)); + e.children.forEach((function(e) { + W(t, e) + } + )) + } + } + var _ = { + className: "class", + labelFor: "for" + }; + function U(t, e, n, r) { + if (e = _[e] || e, + !0 === n) + t.setAttribute(e, ""); + else if (!1 === n) + t.removeAttribute(e); + else { + var i = r ? L[e] : void 0; + void 0 !== i ? t.setAttributeNS(i, e, n) : t.setAttribute(e, n) + } + } + function V(t, e) { + if (void 0 === e && (e = Y), + null == t || "boolean" == typeof t) + return { + type: 1, + node: null + }; + if (t instanceof Node) + return { + type: 1, + node: t + }; + if (2 === (null == (o = t) ? void 0 : o.vtype)) { + var n = t + , r = n.type + , i = n.props; + if (r === F) { + var a = document.createDocumentFragment(); + if (i.children) + W(a, V(i.children, e)); + return { + type: 1, + node: a + } + } + return V(r(i), e) + } + var o; + if (function(t) { + return "string" == typeof t || "number" == typeof t + }(t)) + return { + type: 1, + node: document.createTextNode("" + t) + }; + if (function(t) { + return 1 === (null == t ? void 0 : t.vtype) + }(t)) { + var s, l, c = t, h = c.type, d = c.props; + if (e.isSvg || "svg" !== h || (e = Object.assign({}, e, { + isSvg: !0 + })), + function(t, e, n) { + for (var r in e) + "key" !== r && "children" !== r && "ref" !== r && ("dangerouslySetInnerHTML" === r ? t.innerHTML = e[r].__html : "innerHTML" === r || "textContent" === r || "innerText" === r ? t[r] = e[r] : r.startsWith("on") ? t[r.toLowerCase()] = e[r] : U(t, r, e[r], n.isSvg)) + }(s = e.isSvg ? document.createElementNS("http://www.w3.org/2000/svg", h) : document.createElement(h), d, e), + d.children) { + var u = e; + e.isSvg && "foreignObject" === h && (u = Object.assign({}, u, { + isSvg: !1 + })), + l = V(d.children, u) + } + null != l && W(s, l); + var p = d.ref; + return "function" == typeof p && p(s), + { + type: 1, + node: s + } + } + if (Array.isArray(t)) + return { + type: 4, + children: t.map((function(t) { + return V(t, e) + } + )) + }; + throw new Error("mount: Invalid Vnode!") + } + function Z(t) { + for (var e = [], n = 0; n < t.length; n += 1) { + var r = t[n]; + Array.isArray(r) ? e = e.concat(Z(r)) : null != r && e.push(r) + } + return e + } + function G(t) { + return 1 === t.type ? t.node : t.children.map(G) + } + function J(t) { + return Array.isArray(t) ? Z(t.map(J)) : G(V(t)) + } + var K = ".markmap{font:300 16px/20px sans-serif}.markmap-link{fill:none}.markmap-node>circle{cursor:pointer}.markmap-foreign{display:inline-block}.markmap-foreign a{color:#0097e6}.markmap-foreign a:hover{color:#00a8ff}.markmap-foreign code{background-color:#f0f0f0;border-radius:2px;color:#555;font-size:calc(1em - 2px)}.markmap-foreign :not(pre)>code{padding:.2em .4em}.markmap-foreign del{text-decoration:line-through}.markmap-foreign em{font-style:italic}.markmap-foreign strong{font-weight:bolder}.markmap-foreign mark{background:#ffeaa7}.markmap-foreign pre,.markmap-foreign pre[class*=language-]{margin:0;padding:.2em .4em}" + , q = ".markmap-container{height:0;left:-100px;overflow:hidden;position:absolute;top:-100px;width:0}.markmap-container>.markmap-foreign{display:inline-block}.markmap-container>.markmap-foreign>div:last-child{white-space:nowrap}"; + function Q(t) { + const e = t.data; + return Math.max(4 - 2 * e.depth, 1.5) + } + function tt(t, e) { + return t[r.minIndex(t, e)] + } + function et(t) { + t.stopPropagation() + } + const nt = new i + , rt = r.scaleOrdinal(r.schemeCategory10) + , it = "undefined" != typeof navigator && navigator.userAgent.includes("Macintosh"); + class at { + constructor(t, e) { + this.revokers = [], + ["handleZoom", "handleClick", "handlePan"].forEach((t=>{ + this[t] = this[t].bind(this) + } + )), + this.viewHooks = { + transformHtml: new i + }, + this.svg = t.datum ? t : r.select(t), + this.styleNode = this.svg.append("style"), + this.zoom = r.zoom().filter((t=>this.options.scrollForPan && "wheel" === t.type ? t.ctrlKey && !t.button : !(t.ctrlKey && "wheel" !== t.type || t.button))).on("zoom", this.handleZoom), + this.setOptions(e), + this.state = { + id: this.options.id || this.svg.attr("id") || (s += 1, + `mm-${o}-${s}`) + }, + this.g = this.svg.append("g"), + this.updateStyle(), + this.revokers.push(nt.tap((()=>{ + this.setData() + } + ))) + } + getStyleContent() { + const {style: t} = this.options + , {id: e} = this.state + , n = "function" == typeof t ? t(e) : ""; + return [this.options.embedGlobalCSS && K, n].filter(Boolean).join("\n") + } + updateStyle() { + this.svg.attr("class", function(t, ...e) { + const n = (t || "").split(" ").filter(Boolean); + return e.forEach((t=>{ + t && n.indexOf(t) < 0 && n.push(t) + } + )), + n.join(" ") + }(this.svg.attr("class"), "markmap", this.state.id)); + const t = this.getStyleContent(); + this.styleNode.text(t) + } + handleZoom(t) { + const {transform: e} = t; + this.g.attr("transform", e) + } + handlePan(t) { + t.preventDefault(); + const e = r.zoomTransform(this.svg.node()) + , n = e.translate(-t.deltaX / e.k, -t.deltaY / e.k); + this.svg.call(this.zoom.transform, n) + } + handleClick(t, e) { + var n; + const {data: r} = e; + r.payload = g({}, r.payload, { + fold: null != (n = r.payload) && n.fold ? 0 : 1 + }), + this.renderData(e.data) + } + initializeData(t) { + let e = 0; + const {color: n, nodeMinHeight: r, maxWidth: i, initialExpandLevel: a} = this.options + , {id: o} = this.state + , s = J(P("div", { + className: `markmap-container markmap ${o}-g` + })) + , l = J(P("style", { + children: [this.getStyleContent(), q].join("\n") + })); + document.body.append(s, l); + const d = i ? `max-width: ${i}px` : ""; + let u = 0; + c(t, ((t,r,i)=>{ + var o, l, c; + t.children = null == (o = t.children) ? void 0 : o.map((t=>g({}, t))), + e += 1; + const h = J(P("div", { + className: "markmap-foreign", + style: d, + children: P("div", { + dangerouslySetInnerHTML: { + __html: t.content + } + }) + })); + s.append(h), + t.state = g({}, t.state, { + id: e, + el: h.firstChild + }), + t.state.path = [null == i || null == (l = i.state) ? void 0 : l.path, t.state.id].filter(Boolean).join("."), + n(t); + const p = 2 === (null == (c = t.payload) ? void 0 : c.fold); + p ? u += 1 : (u || a >= 0 && t.depth >= a) && (t.payload = g({}, t.payload, { + fold: 1 + })), + r(), + p && (u -= 1) + } + )); + const p = h(s.childNodes).map((t=>t.firstChild)); + this.viewHooks.transformHtml.call(this, p), + p.forEach((t=>{ + t.parentNode.append(t.cloneNode(!0)) + } + )), + c(t, ((t,e,n)=>{ + var i; + const a = t.state.el.getBoundingClientRect(); + t.content = t.state.el.innerHTML, + t.state.size = [Math.ceil(a.width) + 1, Math.max(Math.ceil(a.height), r)], + t.state.key = [null == n || null == (i = n.state) ? void 0 : i.id, t.state.id].filter(Boolean).join(".") + t.content, + e() + } + )), + s.remove(), + l.remove() + } + setOptions(t) { + this.options = g({}, at.defaultOptions, t), + this.options.zoom ? this.svg.call(this.zoom) : this.svg.on(".zoom", null), + this.svg.on("wheel", this.options.pan ? this.handlePan : null) + } + setData(t, e) { + t && (this.state.data = t), + e && this.setOptions(e), + this.initializeData(this.state.data), + this.renderData() + } + renderData(t) { + var e, n; + if (!this.state.data) + return; + const {spacingHorizontal: i, paddingX: a, spacingVertical: o, autoFit: s, color: l} = this.options + , h = j().children((t=>{ + var e; + return !(null != (e = t.payload) && e.fold) && t.children + } + )).nodeSize((t=>{ + const [e,n] = t.data.state.size; + return [n, e + (e ? 2 * a : 0) + i] + } + )).spacing(((t,e)=>t.parent === e.parent ? o : 2 * o)) + , u = h.hierarchy(this.state.data); + h(u), + function(t, e) { + c(t, ((t,n)=>{ + t.ySizeInner = t.ySize - e, + t.y += e, + n() + } + ), "children") + }(u, i); + const p = u.descendants().reverse() + , f = u.links() + , m = r.linkHorizontal() + , g = r.min(p, (t=>t.x - t.xSize / 2)) + , y = r.max(p, (t=>t.x + t.xSize / 2)) + , v = r.min(p, (t=>t.y)) + , x = r.max(p, (t=>t.y + t.ySizeInner)); + Object.assign(this.state, { + minX: g, + maxX: y, + minY: v, + maxY: x + }), + s && this.fit(); + const k = t && p.find((e=>e.data === t)) || u + , z = null != (e = k.data.state.x0) ? e : k.x + , b = null != (n = k.data.state.y0) ? n : k.y + , S = this.g.selectAll(d("g")).data(p, (t=>t.data.state.key)) + , w = S.enter().append("g").attr("data-depth", (t=>t.data.depth)).attr("data-path", (t=>t.data.state.path)).attr("transform", (t=>`translate(${b + k.ySizeInner - t.ySizeInner},${z + k.xSize / 2 - t.xSize})`)) + , E = this.transition(S.exit()); + E.select("line").attr("x1", (t=>t.ySizeInner)).attr("x2", (t=>t.ySizeInner)), + E.select("foreignObject").style("opacity", 0), + E.attr("transform", (t=>`translate(${k.y + k.ySizeInner - t.ySizeInner},${k.x + k.xSize / 2 - t.xSize})`)).remove(); + const C = S.merge(w).attr("class", (t=>{ + var e; + return ["markmap-node", (null == (e = t.data.payload) ? void 0 : e.fold) && "markmap-fold"].filter(Boolean).join(" ") + } + )); + this.transition(C).attr("transform", (t=>`translate(${t.y},${t.x - t.xSize / 2})`)); + const X = C.selectAll(d("line")).data((t=>[t]), (t=>t.data.state.key)).join((t=>t.append("line").attr("x1", (t=>t.ySizeInner)).attr("x2", (t=>t.ySizeInner))), (t=>t), (t=>t.remove())); + this.transition(X).attr("x1", -1).attr("x2", (t=>t.ySizeInner + 2)).attr("y1", (t=>t.xSize)).attr("y2", (t=>t.xSize)).attr("stroke", (t=>l(t.data))).attr("stroke-width", Q); + const O = C.selectAll(d("circle")).data((t=>t.data.children ? [t] : []), (t=>t.data.state.key)).join((t=>t.append("circle").attr("stroke-width", "1.5").attr("cx", (t=>t.ySizeInner)).attr("cy", (t=>t.xSize)).attr("r", 0).on("click", ((t,e)=>this.handleClick(t, e)))), (t=>t), (t=>t.remove())); + this.transition(O).attr("r", 6).attr("cx", (t=>t.ySizeInner)).attr("cy", (t=>t.xSize)).attr("stroke", (t=>l(t.data))).attr("fill", (t=>{ + var e; + return null != (e = t.data.payload) && e.fold && t.data.children ? l(t.data) : "#fff" + } + )); + const I = C.selectAll(d("foreignObject")).data((t=>[t]), (t=>t.data.state.key)).join((t=>{ + const e = t.append("foreignObject").attr("class", "markmap-foreign").attr("x", a).attr("y", 0).style("opacity", 0).on("mousedown", et).on("dblclick", et); + return e.append("xhtml:div").select((function(t) { + const e = t.data.state.el.cloneNode(!0); + return this.replaceWith(e), + e + } + )).attr("xmlns", "http://www.w3.org/1999/xhtml"), + e + } + ), (t=>t), (t=>t.remove())).attr("width", (t=>Math.max(0, t.ySizeInner - 2 * a))).attr("height", (t=>t.xSize)); + this.transition(I).style("opacity", 1); + const M = this.g.selectAll(d("path")).data(f, (t=>t.target.data.state.key)).join((t=>{ + const e = [b + k.ySizeInner, z + k.xSize / 2]; + return t.insert("path", "g").attr("class", "markmap-link").attr("data-depth", (t=>t.target.data.depth)).attr("data-path", (t=>t.target.data.state.path)).attr("d", m({ + source: e, + target: e + })) + } + ), (t=>t), (t=>{ + const e = [k.y + k.ySizeInner, k.x + k.xSize / 2]; + return this.transition(t).attr("d", m({ + source: e, + target: e + })).remove() + } + )); + this.transition(M).attr("stroke", (t=>l(t.target.data))).attr("stroke-width", (t=>Q(t.target))).attr("d", (t=>{ + const e = [t.source.y + t.source.ySizeInner, t.source.x + t.source.xSize / 2] + , n = [t.target.y, t.target.x + t.target.xSize / 2]; + return m({ + source: e, + target: n + }) + } + )), + p.forEach((t=>{ + t.data.state.x0 = t.x, + t.data.state.y0 = t.y + } + )) + } + transition(t) { + const {duration: e} = this.options; + return t.transition().duration(e) + } + async fit() { + const t = this.svg.node() + , {width: e, height: n} = t.getBoundingClientRect() + , {fitRatio: i} = this.options + , {minX: a, maxX: o, minY: s, maxY: c} = this.state + , h = c - s + , d = o - a + , u = Math.min(e / h * i, n / d * i, 2) + , p = r.zoomIdentity.translate((e - h * u) / 2 - s * u, (n - d * u) / 2 - a * u).scale(u); + return this.transition(this.svg).call(this.zoom.transform, p).end().catch(l) + } + async ensureView(t, e) { + let n, i; + if (this.g.selectAll(d("g")).each((function(e) { + e.data === t && (n = this, + i = e) + } + )), + !n || !i) + return; + const a = this.svg.node() + , o = a.getBoundingClientRect() + , s = r.zoomTransform(a) + , [c,h] = [i.y, i.y + i.ySizeInner + 2].map((t=>t * s.k + s.x)) + , [u,p] = [i.x - i.xSize / 2, i.x + i.xSize / 2].map((t=>t * s.k + s.y)) + , f = g({ + left: 0, + right: 0, + top: 0, + bottom: 0 + }, e) + , m = [f.left - c, o.width - f.right - h] + , y = [f.top - u, o.height - f.bottom - p] + , v = m[0] * m[1] > 0 ? tt(m, Math.abs) / s.k : 0 + , x = y[0] * y[1] > 0 ? tt(y, Math.abs) / s.k : 0; + if (v || x) { + const t = s.translate(v, x); + return this.transition(this.svg).call(this.zoom.transform, t).end().catch(l) + } + } + async rescale(t) { + const e = this.svg.node() + , {width: n, height: i} = e.getBoundingClientRect() + , a = n / 2 + , o = i / 2 + , s = r.zoomTransform(e) + , c = s.translate((a - s.x) * (1 - t) / s.k, (o - s.y) * (1 - t) / s.k).scale(t); + return this.transition(this.svg).call(this.zoom.transform, c).end().catch(l) + } + destroy() { + this.svg.on(".zoom", null), + this.svg.html(null), + this.revokers.forEach((t=>{ + t() + } + )) + } + static create(t, e, n) { + const r = new at(t,e); + return n && (r.setData(n), + r.fit()), + r + } + } + at.defaultOptions = { + autoFit: !1, + color: t=>rt(`${t.state.path}`), + duration: 500, + embedGlobalCSS: !0, + fitRatio: .95, + maxWidth: 0, + nodeMinHeight: 16, + paddingX: 8, + scrollForPan: it, + spacingHorizontal: 80, + spacingVertical: 5, + initialExpandLevel: -1, + zoom: !0, + pan: !0 + }, + t.Markmap = at, + t.defaultColorFn = rt, + t.deriveOptions = function(t) { + const e = {}; + t || (t = {}); + const {color: n, colorFreezeLevel: i} = t; + if (1 === (null == n ? void 0 : n.length)) { + const t = n[0]; + e.color = ()=>t + } else if (null != n && n.length) { + const t = r.scaleOrdinal(n); + e.color = e=>t(`${e.state.path}`) + } + if (i) { + const t = e.color || at.defaultOptions.color; + e.color = e=>(e = g({}, e, { + state: g({}, e.state, { + path: e.state.path.split(".").slice(0, i).join(".") + }) + }), + t(e)) + } + return ["duration", "maxWidth", "initialExpandLevel"].forEach((n=>{ + const r = t[n]; + "number" == typeof r && (e[n] = r) + } + )), + ["zoom", "pan"].forEach((n=>{ + const r = t[n]; + null != r && (e[n] = !!r) + } + )), + e + } + , + t.globalCSS = ".markmap{font:300 16px/20px sans-serif}.markmap-link{fill:none}.markmap-node>circle{cursor:pointer}.markmap-foreign{display:inline-block}.markmap-foreign a{color:#0097e6}.markmap-foreign a:hover{color:#00a8ff}.markmap-foreign code{background-color:#f0f0f0;border-radius:2px;color:#555;font-size:calc(1em - 2px)}.markmap-foreign :not(pre)>code{padding:.2em .4em}.markmap-foreign del{text-decoration:line-through}.markmap-foreign em{font-style:italic}.markmap-foreign strong{font-weight:bolder}.markmap-foreign mark{background:#ffeaa7}.markmap-foreign pre,.markmap-foreign pre[class*=language-]{margin:0;padding:.2em .4em}", + t.loadCSS = function(t) { + for (const e of t) + m(e) + } + , + t.loadJS = async function(t, e) { + const n = t.filter((t=>{ + var e; + return "script" === t.type && (null == (e = t.data) ? void 0 : e.src) + } + )); + n.length > 1 && n.forEach((t=>p(t.data.src))), + e = a({ + getMarkmap: ()=>window.markmap + }, e); + for (const n of t) + await f(n, e) + } + , + t.refreshHook = nt +}(this.markmap = this.markmap || {}, d3); + + +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.katex=t():e.katex=t()}("undefined"!=typeof self?self:this,(function(){return function(){"use strict";var e={d:function(t,r){for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}},t={};e.d(t,{default:function(){return Qn}});var r=function e(t,r){this.position=void 0;var n,a="KaTeX parse error: "+t,i=r&&r.loc;if(i&&i.start<=i.end){var o=i.lexer.input;n=i.start;var s=i.end;n===o.length?a+=" at end of input: ":a+=" at position "+(n+1)+": ";var l=o.slice(n,s).replace(/[^]/g,"$&\u0332");a+=(n>15?"\u2026"+o.slice(n-15,n):o.slice(0,n))+l+(s+15":">","<":"<",'"':""","'":"'"},o=/[&><"']/g;var s=function e(t){return"ordgroup"===t.type||"color"===t.type?1===t.body.length?e(t.body[0]):t:"font"===t.type?e(t.body):t},l={contains:function(e,t){return-1!==e.indexOf(t)},deflt:function(e,t){return void 0===e?t:e},escape:function(e){return String(e).replace(o,(function(e){return i[e]}))},hyphenate:function(e){return e.replace(a,"-$1").toLowerCase()},getBaseElem:s,isCharacterBox:function(e){var t=s(e);return"mathord"===t.type||"textord"===t.type||"atom"===t.type},protocolFromUrl:function(e){var t=/^\s*([^\\/#]*?)(?::|�*58|�*3a)/i.exec(e);return null!=t?t[1]:"_relative"}},h={displayMode:{type:"boolean",description:"Render math in display mode, which puts the math in display style (so \\int and \\sum are large, for example), and centers the math on the page on its own line.",cli:"-d, --display-mode"},output:{type:{enum:["htmlAndMathml","html","mathml"]},description:"Determines the markup language of the output.",cli:"-F, --format "},leqno:{type:"boolean",description:"Render display math in leqno style (left-justified tags)."},fleqn:{type:"boolean",description:"Render display math flush left."},throwOnError:{type:"boolean",default:!0,cli:"-t, --no-throw-on-error",cliDescription:"Render errors (in the color given by --error-color) instead of throwing a ParseError exception when encountering an error."},errorColor:{type:"string",default:"#cc0000",cli:"-c, --error-color ",cliDescription:"A color string given in the format 'rgb' or 'rrggbb' (no #). This option determines the color of errors rendered by the -t option.",cliProcessor:function(e){return"#"+e}},macros:{type:"object",cli:"-m, --macro ",cliDescription:"Define custom macro of the form '\\foo:expansion' (use multiple -m arguments for multiple macros).",cliDefault:[],cliProcessor:function(e,t){return t.push(e),t}},minRuleThickness:{type:"number",description:"Specifies a minimum thickness, in ems, for fraction lines, `\\sqrt` top lines, `{array}` vertical lines, `\\hline`, `\\hdashline`, `\\underline`, `\\overline`, and the borders of `\\fbox`, `\\boxed`, and `\\fcolorbox`.",processor:function(e){return Math.max(0,e)},cli:"--min-rule-thickness ",cliProcessor:parseFloat},colorIsTextColor:{type:"boolean",description:"Makes \\color behave like LaTeX's 2-argument \\textcolor, instead of LaTeX's one-argument \\color mode change.",cli:"-b, --color-is-text-color"},strict:{type:[{enum:["warn","ignore","error"]},"boolean","function"],description:"Turn on strict / LaTeX faithfulness mode, which throws an error if the input uses features that are not supported by LaTeX.",cli:"-S, --strict",cliDefault:!1},trust:{type:["boolean","function"],description:"Trust the input, enabling all HTML features such as \\url.",cli:"-T, --trust"},maxSize:{type:"number",default:1/0,description:"If non-zero, all user-specified sizes, e.g. in \\rule{500em}{500em}, will be capped to maxSize ems. Otherwise, elements and spaces can be arbitrarily large",processor:function(e){return Math.max(0,e)},cli:"-s, --max-size ",cliProcessor:parseInt},maxExpand:{type:"number",default:1e3,description:"Limit the number of macro expansions to the specified number, to prevent e.g. infinite macro loops. If set to Infinity, the macro expander will try to fully expand as in LaTeX.",processor:function(e){return Math.max(0,e)},cli:"-e, --max-expand ",cliProcessor:function(e){return"Infinity"===e?1/0:parseInt(e)}},globalGroup:{type:"boolean",cli:!1}};function m(e){if(e.default)return e.default;var t=e.type,r=Array.isArray(t)?t[0]:t;if("string"!=typeof r)return r.enum[0];switch(r){case"boolean":return!1;case"string":return"";case"number":return 0;case"object":return{}}}var c=function(){function e(e){for(var t in this.displayMode=void 0,this.output=void 0,this.leqno=void 0,this.fleqn=void 0,this.throwOnError=void 0,this.errorColor=void 0,this.macros=void 0,this.minRuleThickness=void 0,this.colorIsTextColor=void 0,this.strict=void 0,this.trust=void 0,this.maxSize=void 0,this.maxExpand=void 0,this.globalGroup=void 0,e=e||{},h)if(h.hasOwnProperty(t)){var r=h[t];this[t]=void 0!==e[t]?r.processor?r.processor(e[t]):e[t]:m(r)}}var t=e.prototype;return t.reportNonstrict=function(e,t,r){var a=this.strict;if("function"==typeof a&&(a=a(e,t,r)),a&&"ignore"!==a){if(!0===a||"error"===a)throw new n("LaTeX-incompatible input and strict mode is set to 'error': "+t+" ["+e+"]",r);"warn"===a?"undefined"!=typeof console&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+t+" ["+e+"]"):"undefined"!=typeof console&&console.warn("LaTeX-incompatible input and strict mode is set to unrecognized '"+a+"': "+t+" ["+e+"]")}},t.useStrictBehavior=function(e,t,r){var n=this.strict;if("function"==typeof n)try{n=n(e,t,r)}catch(e){n="error"}return!(!n||"ignore"===n)&&(!0===n||"error"===n||("warn"===n?("undefined"!=typeof console&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+t+" ["+e+"]"),!1):("undefined"!=typeof console&&console.warn("LaTeX-incompatible input and strict mode is set to unrecognized '"+n+"': "+t+" ["+e+"]"),!1)))},t.isTrusted=function(e){e.url&&!e.protocol&&(e.protocol=l.protocolFromUrl(e.url));var t="function"==typeof this.trust?this.trust(e):this.trust;return Boolean(t)},e}(),u=function(){function e(e,t,r){this.id=void 0,this.size=void 0,this.cramped=void 0,this.id=e,this.size=t,this.cramped=r}var t=e.prototype;return t.sup=function(){return p[d[this.id]]},t.sub=function(){return p[f[this.id]]},t.fracNum=function(){return p[g[this.id]]},t.fracDen=function(){return p[v[this.id]]},t.cramp=function(){return p[b[this.id]]},t.text=function(){return p[y[this.id]]},t.isTight=function(){return this.size>=2},e}(),p=[new u(0,0,!1),new u(1,0,!0),new u(2,1,!1),new u(3,1,!0),new u(4,2,!1),new u(5,2,!0),new u(6,3,!1),new u(7,3,!0)],d=[4,5,4,5,6,7,6,7],f=[5,5,5,5,7,7,7,7],g=[2,3,4,5,6,7,6,7],v=[3,3,5,5,7,7,7,7],b=[1,1,3,3,5,5,7,7],y=[0,1,2,3,2,3,2,3],x={DISPLAY:p[0],TEXT:p[2],SCRIPT:p[4],SCRIPTSCRIPT:p[6]},w=[{name:"latin",blocks:[[256,591],[768,879]]},{name:"cyrillic",blocks:[[1024,1279]]},{name:"armenian",blocks:[[1328,1423]]},{name:"brahmic",blocks:[[2304,4255]]},{name:"georgian",blocks:[[4256,4351]]},{name:"cjk",blocks:[[12288,12543],[19968,40879],[65280,65376]]},{name:"hangul",blocks:[[44032,55215]]}];var k=[];function S(e){for(var t=0;t=k[t]&&e<=k[t+1])return!0;return!1}w.forEach((function(e){return e.blocks.forEach((function(e){return k.push.apply(k,e)}))}));var M=80,z={doubleleftarrow:"M262 157\nl10-10c34-36 62.7-77 86-123 3.3-8 5-13.3 5-16 0-5.3-6.7-8-20-8-7.3\n 0-12.2.5-14.5 1.5-2.3 1-4.8 4.5-7.5 10.5-49.3 97.3-121.7 169.3-217 216-28\n 14-57.3 25-88 33-6.7 2-11 3.8-13 5.5-2 1.7-3 4.2-3 7.5s1 5.8 3 7.5\nc2 1.7 6.3 3.5 13 5.5 68 17.3 128.2 47.8 180.5 91.5 52.3 43.7 93.8 96.2 124.5\n 157.5 9.3 8 15.3 12.3 18 13h6c12-.7 18-4 18-10 0-2-1.7-7-5-15-23.3-46-52-87\n-86-123l-10-10h399738v-40H218c328 0 0 0 0 0l-10-8c-26.7-20-65.7-43-117-69 2.7\n-2 6-3.7 10-5 36.7-16 72.3-37.3 107-64l10-8h399782v-40z\nm8 0v40h399730v-40zm0 194v40h399730v-40z",doublerightarrow:"M399738 392l\n-10 10c-34 36-62.7 77-86 123-3.3 8-5 13.3-5 16 0 5.3 6.7 8 20 8 7.3 0 12.2-.5\n 14.5-1.5 2.3-1 4.8-4.5 7.5-10.5 49.3-97.3 121.7-169.3 217-216 28-14 57.3-25 88\n-33 6.7-2 11-3.8 13-5.5 2-1.7 3-4.2 3-7.5s-1-5.8-3-7.5c-2-1.7-6.3-3.5-13-5.5-68\n-17.3-128.2-47.8-180.5-91.5-52.3-43.7-93.8-96.2-124.5-157.5-9.3-8-15.3-12.3-18\n-13h-6c-12 .7-18 4-18 10 0 2 1.7 7 5 15 23.3 46 52 87 86 123l10 10H0v40h399782\nc-328 0 0 0 0 0l10 8c26.7 20 65.7 43 117 69-2.7 2-6 3.7-10 5-36.7 16-72.3 37.3\n-107 64l-10 8H0v40zM0 157v40h399730v-40zm0 194v40h399730v-40z",leftarrow:"M400000 241H110l3-3c68.7-52.7 113.7-120\n 135-202 4-14.7 6-23 6-25 0-7.3-7-11-21-11-8 0-13.2.8-15.5 2.5-2.3 1.7-4.2 5.8\n-5.5 12.5-1.3 4.7-2.7 10.3-4 17-12 48.7-34.8 92-68.5 130S65.3 228.3 18 247\nc-10 4-16 7.7-18 11 0 8.7 6 14.3 18 17 47.3 18.7 87.8 47 121.5 85S196 441.3 208\n 490c.7 2 1.3 5 2 9s1.2 6.7 1.5 8c.3 1.3 1 3.3 2 6s2.2 4.5 3.5 5.5c1.3 1 3.3\n 1.8 6 2.5s6 1 10 1c14 0 21-3.7 21-11 0-2-2-10.3-6-25-20-79.3-65-146.7-135-202\n l-3-3h399890zM100 241v40h399900v-40z",leftbrace:"M6 548l-6-6v-35l6-11c56-104 135.3-181.3 238-232 57.3-28.7 117\n-45 179-50h399577v120H403c-43.3 7-81 15-113 26-100.7 33-179.7 91-237 174-2.7\n 5-6 9-10 13-.7 1-7.3 1-20 1H6z",leftbraceunder:"M0 6l6-6h17c12.688 0 19.313.3 20 1 4 4 7.313 8.3 10 13\n 35.313 51.3 80.813 93.8 136.5 127.5 55.688 33.7 117.188 55.8 184.5 66.5.688\n 0 2 .3 4 1 18.688 2.7 76 4.3 172 5h399450v120H429l-6-1c-124.688-8-235-61.7\n-331-161C60.687 138.7 32.312 99.3 7 54L0 41V6z",leftgroup:"M400000 80\nH435C64 80 168.3 229.4 21 260c-5.9 1.2-18 0-18 0-2 0-3-1-3-3v-38C76 61 257 0\n 435 0h399565z",leftgroupunder:"M400000 262\nH435C64 262 168.3 112.6 21 82c-5.9-1.2-18 0-18 0-2 0-3 1-3 3v38c76 158 257 219\n 435 219h399565z",leftharpoon:"M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3\n-3.3 10.2-9.5 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5\n-18.3 3-21-1.3-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7\n-196 228-6.7 4.7-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40z",leftharpoonplus:"M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3-3.3 10.2-9.5\n 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5-18.3 3-21-1.3\n-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7-196 228-6.7 4.7\n-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40zM0 435v40h400000v-40z\nm0 0v40h400000v-40z",leftharpoondown:"M7 241c-4 4-6.333 8.667-7 14 0 5.333.667 9 2 11s5.333\n 5.333 12 10c90.667 54 156 130 196 228 3.333 10.667 6.333 16.333 9 17 2 .667 5\n 1 9 1h5c10.667 0 16.667-2 18-6 2-2.667 1-9.667-3-21-32-87.333-82.667-157.667\n-152-211l-3-3h399907v-40zM93 281 H400000 v-40L7 241z",leftharpoondownplus:"M7 435c-4 4-6.3 8.7-7 14 0 5.3.7 9 2 11s5.3 5.3 12\n 10c90.7 54 156 130 196 228 3.3 10.7 6.3 16.3 9 17 2 .7 5 1 9 1h5c10.7 0 16.7\n-2 18-6 2-2.7 1-9.7-3-21-32-87.3-82.7-157.7-152-211l-3-3h399907v-40H7zm93 0\nv40h399900v-40zM0 241v40h399900v-40zm0 0v40h399900v-40z",lefthook:"M400000 281 H103s-33-11.2-61-33.5S0 197.3 0 164s14.2-61.2 42.5\n-83.5C70.8 58.2 104 47 142 47 c16.7 0 25 6.7 25 20 0 12-8.7 18.7-26 20-40 3.3\n-68.7 15.7-86 37-10 12-15 25.3-15 40 0 22.7 9.8 40.7 29.5 54 19.7 13.3 43.5 21\n 71.5 23h399859zM103 281v-40h399897v40z",leftlinesegment:"M40 281 V428 H0 V94 H40 V241 H400000 v40z\nM40 281 V428 H0 V94 H40 V241 H400000 v40z",leftmapsto:"M40 281 V448H0V74H40V241H400000v40z\nM40 281 V448H0V74H40V241H400000v40z",leftToFrom:"M0 147h400000v40H0zm0 214c68 40 115.7 95.7 143 167h22c15.3 0 23\n-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69-70-101l-7-8h399905v-40H95l7-8\nc28.7-32 52-65.7 70-101 10.7-23.3 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 265.3\n 68 321 0 361zm0-174v-40h399900v40zm100 154v40h399900v-40z",longequal:"M0 50 h400000 v40H0z m0 194h40000v40H0z\nM0 50 h400000 v40H0z m0 194h40000v40H0z",midbrace:"M200428 334\nc-100.7-8.3-195.3-44-280-108-55.3-42-101.7-93-139-153l-9-14c-2.7 4-5.7 8.7-9 14\n-53.3 86.7-123.7 153-211 199-66.7 36-137.3 56.3-212 62H0V214h199568c178.3-11.7\n 311.7-78.3 403-201 6-8 9.7-12 11-12 .7-.7 6.7-1 18-1s17.3.3 18 1c1.3 0 5 4 11\n 12 44.7 59.3 101.3 106.3 170 141s145.3 54.3 229 60h199572v120z",midbraceunder:"M199572 214\nc100.7 8.3 195.3 44 280 108 55.3 42 101.7 93 139 153l9 14c2.7-4 5.7-8.7 9-14\n 53.3-86.7 123.7-153 211-199 66.7-36 137.3-56.3 212-62h199568v120H200432c-178.3\n 11.7-311.7 78.3-403 201-6 8-9.7 12-11 12-.7.7-6.7 1-18 1s-17.3-.3-18-1c-1.3 0\n-5-4-11-12-44.7-59.3-101.3-106.3-170-141s-145.3-54.3-229-60H0V214z",oiintSize1:"M512.6 71.6c272.6 0 320.3 106.8 320.3 178.2 0 70.8-47.7 177.6\n-320.3 177.6S193.1 320.6 193.1 249.8c0-71.4 46.9-178.2 319.5-178.2z\nm368.1 178.2c0-86.4-60.9-215.4-368.1-215.4-306.4 0-367.3 129-367.3 215.4 0 85.8\n60.9 214.8 367.3 214.8 307.2 0 368.1-129 368.1-214.8z",oiintSize2:"M757.8 100.1c384.7 0 451.1 137.6 451.1 230 0 91.3-66.4 228.8\n-451.1 228.8-386.3 0-452.7-137.5-452.7-228.8 0-92.4 66.4-230 452.7-230z\nm502.4 230c0-111.2-82.4-277.2-502.4-277.2s-504 166-504 277.2\nc0 110 84 276 504 276s502.4-166 502.4-276z",oiiintSize1:"M681.4 71.6c408.9 0 480.5 106.8 480.5 178.2 0 70.8-71.6 177.6\n-480.5 177.6S202.1 320.6 202.1 249.8c0-71.4 70.5-178.2 479.3-178.2z\nm525.8 178.2c0-86.4-86.8-215.4-525.7-215.4-437.9 0-524.7 129-524.7 215.4 0\n85.8 86.8 214.8 524.7 214.8 438.9 0 525.7-129 525.7-214.8z",oiiintSize2:"M1021.2 53c603.6 0 707.8 165.8 707.8 277.2 0 110-104.2 275.8\n-707.8 275.8-606 0-710.2-165.8-710.2-275.8C311 218.8 415.2 53 1021.2 53z\nm770.4 277.1c0-131.2-126.4-327.6-770.5-327.6S248.4 198.9 248.4 330.1\nc0 130 128.8 326.4 772.7 326.4s770.5-196.4 770.5-326.4z",rightarrow:"M0 241v40h399891c-47.3 35.3-84 78-110 128\n-16.7 32-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20\n 11 8 0 13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7\n 39-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85\n-40.5-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5\n-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67\n 151.7 139 205zm0 0v40h399900v-40z",rightbrace:"M400000 542l\n-6 6h-17c-12.7 0-19.3-.3-20-1-4-4-7.3-8.3-10-13-35.3-51.3-80.8-93.8-136.5-127.5\ns-117.2-55.8-184.5-66.5c-.7 0-2-.3-4-1-18.7-2.7-76-4.3-172-5H0V214h399571l6 1\nc124.7 8 235 61.7 331 161 31.3 33.3 59.7 72.7 85 118l7 13v35z",rightbraceunder:"M399994 0l6 6v35l-6 11c-56 104-135.3 181.3-238 232-57.3\n 28.7-117 45-179 50H-300V214h399897c43.3-7 81-15 113-26 100.7-33 179.7-91 237\n-174 2.7-5 6-9 10-13 .7-1 7.3-1 20-1h17z",rightgroup:"M0 80h399565c371 0 266.7 149.4 414 180 5.9 1.2 18 0 18 0 2 0\n 3-1 3-3v-38c-76-158-257-219-435-219H0z",rightgroupunder:"M0 262h399565c371 0 266.7-149.4 414-180 5.9-1.2 18 0 18\n 0 2 0 3 1 3 3v38c-76 158-257 219-435 219H0z",rightharpoon:"M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3\n-3.7-15.3-11-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2\n-10.7 0-16.7 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58\n 69.2 92 94.5zm0 0v40h399900v-40z",rightharpoonplus:"M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3-3.7-15.3-11\n-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2-10.7 0-16.7\n 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58 69.2 92 94.5z\nm0 0v40h399900v-40z m100 194v40h399900v-40zm0 0v40h399900v-40z",rightharpoondown:"M399747 511c0 7.3 6.7 11 20 11 8 0 13-.8 15-2.5s4.7-6.8\n 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3 8.5-5.8 9.5\n-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3-64.7 57-92 95\n-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 241v40h399900v-40z",rightharpoondownplus:"M399747 705c0 7.3 6.7 11 20 11 8 0 13-.8\n 15-2.5s4.7-6.8 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3\n 8.5-5.8 9.5-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3\n-64.7 57-92 95-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 435v40h399900v-40z\nm0-194v40h400000v-40zm0 0v40h400000v-40z",righthook:"M399859 241c-764 0 0 0 0 0 40-3.3 68.7-15.7 86-37 10-12 15-25.3\n 15-40 0-22.7-9.8-40.7-29.5-54-19.7-13.3-43.5-21-71.5-23-17.3-1.3-26-8-26-20 0\n-13.3 8.7-20 26-20 38 0 71 11.2 99 33.5 0 0 7 5.6 21 16.7 14 11.2 21 33.5 21\n 66.8s-14 61.2-42 83.5c-28 22.3-61 33.5-99 33.5L0 241z M0 281v-40h399859v40z",rightlinesegment:"M399960 241 V94 h40 V428 h-40 V281 H0 v-40z\nM399960 241 V94 h40 V428 h-40 V281 H0 v-40z",rightToFrom:"M400000 167c-70.7-42-118-97.7-142-167h-23c-15.3 0-23 .3-23\n 1 0 1.3 5.3 13.7 16 37 18 35.3 41.3 69 70 101l7 8H0v40h399905l-7 8c-28.7 32\n-52 65.7-70 101-10.7 23.3-16 35.7-16 37 0 .7 7.7 1 23 1h23c24-69.3 71.3-125 142\n-167z M100 147v40h399900v-40zM0 341v40h399900v-40z",twoheadleftarrow:"M0 167c68 40\n 115.7 95.7 143 167h22c15.3 0 23-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69\n-70-101l-7-8h125l9 7c50.7 39.3 85 86 103 140h46c0-4.7-6.3-18.7-19-42-18-35.3\n-40-67.3-66-96l-9-9h399716v-40H284l9-9c26-28.7 48-60.7 66-96 12.7-23.333 19\n-37.333 19-42h-46c-18 54-52.3 100.7-103 140l-9 7H95l7-8c28.7-32 52-65.7 70-101\n 10.7-23.333 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 71.3 68 127 0 167z",twoheadrightarrow:"M400000 167\nc-68-40-115.7-95.7-143-167h-22c-15.3 0-23 .3-23 1 0 1.3 5.3 13.7 16 37 18 35.3\n 41.3 69 70 101l7 8h-125l-9-7c-50.7-39.3-85-86-103-140h-46c0 4.7 6.3 18.7 19 42\n 18 35.3 40 67.3 66 96l9 9H0v40h399716l-9 9c-26 28.7-48 60.7-66 96-12.7 23.333\n-19 37.333-19 42h46c18-54 52.3-100.7 103-140l9-7h125l-7 8c-28.7 32-52 65.7-70\n 101-10.7 23.333-16 35.7-16 37 0 .7 7.7 1 23 1h22c27.3-71.3 75-127 143-167z",tilde1:"M200 55.538c-77 0-168 73.953-177 73.953-3 0-7\n-2.175-9-5.437L2 97c-1-2-2-4-2-6 0-4 2-7 5-9l20-12C116 12 171 0 207 0c86 0\n 114 68 191 68 78 0 168-68 177-68 4 0 7 2 9 5l12 19c1 2.175 2 4.35 2 6.525 0\n 4.35-2 7.613-5 9.788l-19 13.05c-92 63.077-116.937 75.308-183 76.128\n-68.267.847-113-73.952-191-73.952z",tilde2:"M344 55.266c-142 0-300.638 81.316-311.5 86.418\n-8.01 3.762-22.5 10.91-23.5 5.562L1 120c-1-2-1-3-1-4 0-5 3-9 8-10l18.4-9C160.9\n 31.9 283 0 358 0c148 0 188 122 331 122s314-97 326-97c4 0 8 2 10 7l7 21.114\nc1 2.14 1 3.21 1 4.28 0 5.347-3 9.626-7 10.696l-22.3 12.622C852.6 158.372 751\n 181.476 676 181.476c-149 0-189-126.21-332-126.21z",tilde3:"M786 59C457 59 32 175.242 13 175.242c-6 0-10-3.457\n-11-10.37L.15 138c-1-7 3-12 10-13l19.2-6.4C378.4 40.7 634.3 0 804.3 0c337 0\n 411.8 157 746.8 157 328 0 754-112 773-112 5 0 10 3 11 9l1 14.075c1 8.066-.697\n 16.595-6.697 17.492l-21.052 7.31c-367.9 98.146-609.15 122.696-778.15 122.696\n -338 0-409-156.573-744-156.573z",tilde4:"M786 58C457 58 32 177.487 13 177.487c-6 0-10-3.345\n-11-10.035L.15 143c-1-7 3-12 10-13l22-6.7C381.2 35 637.15 0 807.15 0c337 0 409\n 177 744 177 328 0 754-127 773-127 5 0 10 3 11 9l1 14.794c1 7.805-3 13.38-9\n 14.495l-20.7 5.574c-366.85 99.79-607.3 139.372-776.3 139.372-338 0-409\n -175.236-744-175.236z",vec:"M377 20c0-5.333 1.833-10 5.5-14S391 0 397 0c4.667 0 8.667 1.667 12 5\n3.333 2.667 6.667 9 10 19 6.667 24.667 20.333 43.667 41 57 7.333 4.667 11\n10.667 11 18 0 6-1 10-3 12s-6.667 5-14 9c-28.667 14.667-53.667 35.667-75 63\n-1.333 1.333-3.167 3.5-5.5 6.5s-4 4.833-5 5.5c-1 .667-2.5 1.333-4.5 2s-4.333 1\n-7 1c-4.667 0-9.167-1.833-13.5-5.5S337 184 337 178c0-12.667 15.667-32.333 47-59\nH213l-171-1c-8.667-6-13-12.333-13-19 0-4.667 4.333-11.333 13-20h359\nc-16-25.333-24-45-24-59z",widehat1:"M529 0h5l519 115c5 1 9 5 9 10 0 1-1 2-1 3l-4 22\nc-1 5-5 9-11 9h-2L532 67 19 159h-2c-5 0-9-4-11-9l-5-22c-1-6 2-12 8-13z",widehat2:"M1181 0h2l1171 176c6 0 10 5 10 11l-2 23c-1 6-5 10\n-11 10h-1L1182 67 15 220h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z",widehat3:"M1181 0h2l1171 236c6 0 10 5 10 11l-2 23c-1 6-5 10\n-11 10h-1L1182 67 15 280h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z",widehat4:"M1181 0h2l1171 296c6 0 10 5 10 11l-2 23c-1 6-5 10\n-11 10h-1L1182 67 15 340h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z",widecheck1:"M529,159h5l519,-115c5,-1,9,-5,9,-10c0,-1,-1,-2,-1,-3l-4,-22c-1,\n-5,-5,-9,-11,-9h-2l-512,92l-513,-92h-2c-5,0,-9,4,-11,9l-5,22c-1,6,2,12,8,13z",widecheck2:"M1181,220h2l1171,-176c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,\n-11,-10h-1l-1168,153l-1167,-153h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z",widecheck3:"M1181,280h2l1171,-236c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,\n-11,-10h-1l-1168,213l-1167,-213h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z",widecheck4:"M1181,340h2l1171,-296c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,\n-11,-10h-1l-1168,273l-1167,-273h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z",baraboveleftarrow:"M400000 620h-399890l3 -3c68.7 -52.7 113.7 -120 135 -202\nc4 -14.7 6 -23 6 -25c0 -7.3 -7 -11 -21 -11c-8 0 -13.2 0.8 -15.5 2.5\nc-2.3 1.7 -4.2 5.8 -5.5 12.5c-1.3 4.7 -2.7 10.3 -4 17c-12 48.7 -34.8 92 -68.5 130\ns-74.2 66.3 -121.5 85c-10 4 -16 7.7 -18 11c0 8.7 6 14.3 18 17c47.3 18.7 87.8 47\n121.5 85s56.5 81.3 68.5 130c0.7 2 1.3 5 2 9s1.2 6.7 1.5 8c0.3 1.3 1 3.3 2 6\ns2.2 4.5 3.5 5.5c1.3 1 3.3 1.8 6 2.5s6 1 10 1c14 0 21 -3.7 21 -11\nc0 -2 -2 -10.3 -6 -25c-20 -79.3 -65 -146.7 -135 -202l-3 -3h399890z\nM100 620v40h399900v-40z M0 241v40h399900v-40zM0 241v40h399900v-40z",rightarrowabovebar:"M0 241v40h399891c-47.3 35.3-84 78-110 128-16.7 32\n-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20 11 8 0\n13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7 39\n-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85-40.5\n-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5\n-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67\n151.7 139 205zm96 379h399894v40H0zm0 0h399904v40H0z",baraboveshortleftharpoon:"M507,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11\nc1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17\nc2,0.7,5,1,9,1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21\nc-32,-87.3,-82.7,-157.7,-152,-211c0,0,-3,-3,-3,-3l399351,0l0,-40\nc-398570,0,-399437,0,-399437,0z M593 435 v40 H399500 v-40z\nM0 281 v-40 H399908 v40z M0 281 v-40 H399908 v40z",rightharpoonaboveshortbar:"M0,241 l0,40c399126,0,399993,0,399993,0\nc4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,\n-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6\nc-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z\nM0 241 v40 H399908 v-40z M0 475 v-40 H399500 v40z M0 475 v-40 H399500 v40z",shortbaraboveleftharpoon:"M7,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11\nc1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17c2,0.7,5,1,9,\n1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21c-32,-87.3,-82.7,-157.7,\n-152,-211c0,0,-3,-3,-3,-3l399907,0l0,-40c-399126,0,-399993,0,-399993,0z\nM93 435 v40 H400000 v-40z M500 241 v40 H400000 v-40z M500 241 v40 H400000 v-40z",shortrightharpoonabovebar:"M53,241l0,40c398570,0,399437,0,399437,0\nc4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,\n-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6\nc-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z\nM500 241 v40 H399408 v-40z M500 435 v40 H400000 v-40z"},A=function(){function e(e){this.children=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,this.children=e,this.classes=[],this.height=0,this.depth=0,this.maxFontSize=0,this.style={}}var t=e.prototype;return t.hasClass=function(e){return l.contains(this.classes,e)},t.toNode=function(){for(var e=document.createDocumentFragment(),t=0;t=5?0:e>=3?1:2]){var r=N[t]={cssEmPerMu:B.quad[t]/18};for(var n in B)B.hasOwnProperty(n)&&(r[n]=B[n][t])}return N[t]}(this.size)),this._fontMetrics},t.getColor=function(){return this.phantom?"transparent":this.color},e}();H.BASESIZE=6;var E=H,L={pt:1,mm:7227/2540,cm:7227/254,in:72.27,bp:1.00375,pc:12,dd:1238/1157,cc:14856/1157,nd:685/642,nc:1370/107,sp:1/65536,px:1.00375},D={ex:!0,em:!0,mu:!0},P=function(e){return"string"!=typeof e&&(e=e.unit),e in L||e in D||"ex"===e},F=function(e,t){var r;if(e.unit in L)r=L[e.unit]/t.fontMetrics().ptPerEm/t.sizeMultiplier;else if("mu"===e.unit)r=t.fontMetrics().cssEmPerMu;else{var a;if(a=t.style.isTight()?t.havingStyle(t.style.text()):t,"ex"===e.unit)r=a.fontMetrics().xHeight;else{if("em"!==e.unit)throw new n("Invalid unit: '"+e.unit+"'");r=a.fontMetrics().quad}a!==t&&(r*=a.sizeMultiplier/t.sizeMultiplier)}return Math.min(e.number*r,t.maxSize)},V=function(e){return+e.toFixed(4)+"em"},G=function(e){return e.filter((function(e){return e})).join(" ")},U=function(e,t,r){if(this.classes=e||[],this.attributes={},this.height=0,this.depth=0,this.maxFontSize=0,this.style=r||{},t){t.style.isTight()&&this.classes.push("mtight");var n=t.getColor();n&&(this.style.color=n)}},Y=function(e){var t=document.createElement(e);for(var r in t.className=G(this.classes),this.style)this.style.hasOwnProperty(r)&&(t.style[r]=this.style[r]);for(var n in this.attributes)this.attributes.hasOwnProperty(n)&&t.setAttribute(n,this.attributes[n]);for(var a=0;a"},W=function(){function e(e,t,r,n){this.children=void 0,this.attributes=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.width=void 0,this.maxFontSize=void 0,this.style=void 0,U.call(this,e,r,n),this.children=t||[]}var t=e.prototype;return t.setAttribute=function(e,t){this.attributes[e]=t},t.hasClass=function(e){return l.contains(this.classes,e)},t.toNode=function(){return Y.call(this,"span")},t.toMarkup=function(){return X.call(this,"span")},e}(),_=function(){function e(e,t,r,n){this.children=void 0,this.attributes=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,U.call(this,t,n),this.children=r||[],this.setAttribute("href",e)}var t=e.prototype;return t.setAttribute=function(e,t){this.attributes[e]=t},t.hasClass=function(e){return l.contains(this.classes,e)},t.toNode=function(){return Y.call(this,"a")},t.toMarkup=function(){return X.call(this,"a")},e}(),j=function(){function e(e,t,r){this.src=void 0,this.alt=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,this.alt=t,this.src=e,this.classes=["mord"],this.style=r}var t=e.prototype;return t.hasClass=function(e){return l.contains(this.classes,e)},t.toNode=function(){var e=document.createElement("img");for(var t in e.src=this.src,e.alt=this.alt,e.className="mord",this.style)this.style.hasOwnProperty(t)&&(e.style[t]=this.style[t]);return e},t.toMarkup=function(){var e=""+this.alt+"=a[0]&&e<=a[1])return r.name}return null}(this.text.charCodeAt(0));l&&this.classes.push(l+"_fallback"),/[\xee\xef\xed\xec]/.test(this.text)&&(this.text=$[this.text])}var t=e.prototype;return t.hasClass=function(e){return l.contains(this.classes,e)},t.toNode=function(){var e=document.createTextNode(this.text),t=null;for(var r in this.italic>0&&((t=document.createElement("span")).style.marginRight=V(this.italic)),this.classes.length>0&&((t=t||document.createElement("span")).className=G(this.classes)),this.style)this.style.hasOwnProperty(r)&&((t=t||document.createElement("span")).style[r]=this.style[r]);return t?(t.appendChild(e),t):e},t.toMarkup=function(){var e=!1,t="0&&(r+="margin-right:"+this.italic+"em;"),this.style)this.style.hasOwnProperty(n)&&(r+=l.hyphenate(n)+":"+this.style[n]+";");r&&(e=!0,t+=' style="'+l.escape(r)+'"');var a=l.escape(this.text);return e?(t+=">",t+=a,t+=""):a},e}(),K=function(){function e(e,t){this.children=void 0,this.attributes=void 0,this.children=e||[],this.attributes=t||{}}var t=e.prototype;return t.toNode=function(){var e=document.createElementNS("http://www.w3.org/2000/svg","svg");for(var t in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,t)&&e.setAttribute(t,this.attributes[t]);for(var r=0;r":""},e}(),Q=function(){function e(e){this.attributes=void 0,this.attributes=e||{}}var t=e.prototype;return t.toNode=function(){var e=document.createElementNS("http://www.w3.org/2000/svg","line");for(var t in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,t)&&e.setAttribute(t,this.attributes[t]);return e},t.toMarkup=function(){var e="","\\gt",!0),ie(oe,le,be,"\u2208","\\in",!0),ie(oe,le,be,"\ue020","\\@not"),ie(oe,le,be,"\u2282","\\subset",!0),ie(oe,le,be,"\u2283","\\supset",!0),ie(oe,le,be,"\u2286","\\subseteq",!0),ie(oe,le,be,"\u2287","\\supseteq",!0),ie(oe,he,be,"\u2288","\\nsubseteq",!0),ie(oe,he,be,"\u2289","\\nsupseteq",!0),ie(oe,le,be,"\u22a8","\\models"),ie(oe,le,be,"\u2190","\\leftarrow",!0),ie(oe,le,be,"\u2264","\\le"),ie(oe,le,be,"\u2264","\\leq",!0),ie(oe,le,be,"<","\\lt",!0),ie(oe,le,be,"\u2192","\\rightarrow",!0),ie(oe,le,be,"\u2192","\\to"),ie(oe,he,be,"\u2271","\\ngeq",!0),ie(oe,he,be,"\u2270","\\nleq",!0),ie(oe,le,ye,"\xa0","\\ "),ie(oe,le,ye,"\xa0","\\space"),ie(oe,le,ye,"\xa0","\\nobreakspace"),ie(se,le,ye,"\xa0","\\ "),ie(se,le,ye,"\xa0"," "),ie(se,le,ye,"\xa0","\\space"),ie(se,le,ye,"\xa0","\\nobreakspace"),ie(oe,le,ye,null,"\\nobreak"),ie(oe,le,ye,null,"\\allowbreak"),ie(oe,le,ve,",",","),ie(oe,le,ve,";",";"),ie(oe,he,ce,"\u22bc","\\barwedge",!0),ie(oe,he,ce,"\u22bb","\\veebar",!0),ie(oe,le,ce,"\u2299","\\odot",!0),ie(oe,le,ce,"\u2295","\\oplus",!0),ie(oe,le,ce,"\u2297","\\otimes",!0),ie(oe,le,xe,"\u2202","\\partial",!0),ie(oe,le,ce,"\u2298","\\oslash",!0),ie(oe,he,ce,"\u229a","\\circledcirc",!0),ie(oe,he,ce,"\u22a1","\\boxdot",!0),ie(oe,le,ce,"\u25b3","\\bigtriangleup"),ie(oe,le,ce,"\u25bd","\\bigtriangledown"),ie(oe,le,ce,"\u2020","\\dagger"),ie(oe,le,ce,"\u22c4","\\diamond"),ie(oe,le,ce,"\u22c6","\\star"),ie(oe,le,ce,"\u25c3","\\triangleleft"),ie(oe,le,ce,"\u25b9","\\triangleright"),ie(oe,le,ge,"{","\\{"),ie(se,le,xe,"{","\\{"),ie(se,le,xe,"{","\\textbraceleft"),ie(oe,le,ue,"}","\\}"),ie(se,le,xe,"}","\\}"),ie(se,le,xe,"}","\\textbraceright"),ie(oe,le,ge,"{","\\lbrace"),ie(oe,le,ue,"}","\\rbrace"),ie(oe,le,ge,"[","\\lbrack",!0),ie(se,le,xe,"[","\\lbrack",!0),ie(oe,le,ue,"]","\\rbrack",!0),ie(se,le,xe,"]","\\rbrack",!0),ie(oe,le,ge,"(","\\lparen",!0),ie(oe,le,ue,")","\\rparen",!0),ie(se,le,xe,"<","\\textless",!0),ie(se,le,xe,">","\\textgreater",!0),ie(oe,le,ge,"\u230a","\\lfloor",!0),ie(oe,le,ue,"\u230b","\\rfloor",!0),ie(oe,le,ge,"\u2308","\\lceil",!0),ie(oe,le,ue,"\u2309","\\rceil",!0),ie(oe,le,xe,"\\","\\backslash"),ie(oe,le,xe,"\u2223","|"),ie(oe,le,xe,"\u2223","\\vert"),ie(se,le,xe,"|","\\textbar",!0),ie(oe,le,xe,"\u2225","\\|"),ie(oe,le,xe,"\u2225","\\Vert"),ie(se,le,xe,"\u2225","\\textbardbl"),ie(se,le,xe,"~","\\textasciitilde"),ie(se,le,xe,"\\","\\textbackslash"),ie(se,le,xe,"^","\\textasciicircum"),ie(oe,le,be,"\u2191","\\uparrow",!0),ie(oe,le,be,"\u21d1","\\Uparrow",!0),ie(oe,le,be,"\u2193","\\downarrow",!0),ie(oe,le,be,"\u21d3","\\Downarrow",!0),ie(oe,le,be,"\u2195","\\updownarrow",!0),ie(oe,le,be,"\u21d5","\\Updownarrow",!0),ie(oe,le,fe,"\u2210","\\coprod"),ie(oe,le,fe,"\u22c1","\\bigvee"),ie(oe,le,fe,"\u22c0","\\bigwedge"),ie(oe,le,fe,"\u2a04","\\biguplus"),ie(oe,le,fe,"\u22c2","\\bigcap"),ie(oe,le,fe,"\u22c3","\\bigcup"),ie(oe,le,fe,"\u222b","\\int"),ie(oe,le,fe,"\u222b","\\intop"),ie(oe,le,fe,"\u222c","\\iint"),ie(oe,le,fe,"\u222d","\\iiint"),ie(oe,le,fe,"\u220f","\\prod"),ie(oe,le,fe,"\u2211","\\sum"),ie(oe,le,fe,"\u2a02","\\bigotimes"),ie(oe,le,fe,"\u2a01","\\bigoplus"),ie(oe,le,fe,"\u2a00","\\bigodot"),ie(oe,le,fe,"\u222e","\\oint"),ie(oe,le,fe,"\u222f","\\oiint"),ie(oe,le,fe,"\u2230","\\oiiint"),ie(oe,le,fe,"\u2a06","\\bigsqcup"),ie(oe,le,fe,"\u222b","\\smallint"),ie(se,le,pe,"\u2026","\\textellipsis"),ie(oe,le,pe,"\u2026","\\mathellipsis"),ie(se,le,pe,"\u2026","\\ldots",!0),ie(oe,le,pe,"\u2026","\\ldots",!0),ie(oe,le,pe,"\u22ef","\\@cdots",!0),ie(oe,le,pe,"\u22f1","\\ddots",!0),ie(oe,le,xe,"\u22ee","\\varvdots"),ie(oe,le,me,"\u02ca","\\acute"),ie(oe,le,me,"\u02cb","\\grave"),ie(oe,le,me,"\xa8","\\ddot"),ie(oe,le,me,"~","\\tilde"),ie(oe,le,me,"\u02c9","\\bar"),ie(oe,le,me,"\u02d8","\\breve"),ie(oe,le,me,"\u02c7","\\check"),ie(oe,le,me,"^","\\hat"),ie(oe,le,me,"\u20d7","\\vec"),ie(oe,le,me,"\u02d9","\\dot"),ie(oe,le,me,"\u02da","\\mathring"),ie(oe,le,de,"\ue131","\\@imath"),ie(oe,le,de,"\ue237","\\@jmath"),ie(oe,le,xe,"\u0131","\u0131"),ie(oe,le,xe,"\u0237","\u0237"),ie(se,le,xe,"\u0131","\\i",!0),ie(se,le,xe,"\u0237","\\j",!0),ie(se,le,xe,"\xdf","\\ss",!0),ie(se,le,xe,"\xe6","\\ae",!0),ie(se,le,xe,"\u0153","\\oe",!0),ie(se,le,xe,"\xf8","\\o",!0),ie(se,le,xe,"\xc6","\\AE",!0),ie(se,le,xe,"\u0152","\\OE",!0),ie(se,le,xe,"\xd8","\\O",!0),ie(se,le,me,"\u02ca","\\'"),ie(se,le,me,"\u02cb","\\`"),ie(se,le,me,"\u02c6","\\^"),ie(se,le,me,"\u02dc","\\~"),ie(se,le,me,"\u02c9","\\="),ie(se,le,me,"\u02d8","\\u"),ie(se,le,me,"\u02d9","\\."),ie(se,le,me,"\xb8","\\c"),ie(se,le,me,"\u02da","\\r"),ie(se,le,me,"\u02c7","\\v"),ie(se,le,me,"\xa8",'\\"'),ie(se,le,me,"\u02dd","\\H"),ie(se,le,me,"\u25ef","\\textcircled");var we={"--":!0,"---":!0,"``":!0,"''":!0};ie(se,le,xe,"\u2013","--",!0),ie(se,le,xe,"\u2013","\\textendash"),ie(se,le,xe,"\u2014","---",!0),ie(se,le,xe,"\u2014","\\textemdash"),ie(se,le,xe,"\u2018","`",!0),ie(se,le,xe,"\u2018","\\textquoteleft"),ie(se,le,xe,"\u2019","'",!0),ie(se,le,xe,"\u2019","\\textquoteright"),ie(se,le,xe,"\u201c","``",!0),ie(se,le,xe,"\u201c","\\textquotedblleft"),ie(se,le,xe,"\u201d","''",!0),ie(se,le,xe,"\u201d","\\textquotedblright"),ie(oe,le,xe,"\xb0","\\degree",!0),ie(se,le,xe,"\xb0","\\degree"),ie(se,le,xe,"\xb0","\\textdegree",!0),ie(oe,le,xe,"\xa3","\\pounds"),ie(oe,le,xe,"\xa3","\\mathsterling",!0),ie(se,le,xe,"\xa3","\\pounds"),ie(se,le,xe,"\xa3","\\textsterling",!0),ie(oe,he,xe,"\u2720","\\maltese"),ie(se,he,xe,"\u2720","\\maltese");for(var ke='0123456789/@."',Se=0;Set&&(t=i.height),i.depth>r&&(r=i.depth),i.maxFontSize>n&&(n=i.maxFontSize)}e.height=t,e.depth=r,e.maxFontSize=n},Xe=function(e,t,r,n){var a=new W(e,t,r,n);return Ye(a),a},We=function(e,t,r,n){return new W(e,t,r,n)},_e=function(e){var t=new A(e);return Ye(t),t},je=function(e,t,r){var n="";switch(e){case"amsrm":n="AMS";break;case"textrm":n="Main";break;case"textsf":n="SansSerif";break;case"texttt":n="Typewriter";break;default:n=e}return n+"-"+("textbf"===t&&"textit"===r?"BoldItalic":"textbf"===t?"Bold":"textit"===t?"Italic":"Regular")},$e={mathbf:{variant:"bold",fontName:"Main-Bold"},mathrm:{variant:"normal",fontName:"Main-Regular"},textit:{variant:"italic",fontName:"Main-Italic"},mathit:{variant:"italic",fontName:"Main-Italic"},mathnormal:{variant:"italic",fontName:"Math-Italic"},mathbb:{variant:"double-struck",fontName:"AMS-Regular"},mathcal:{variant:"script",fontName:"Caligraphic-Regular"},mathfrak:{variant:"fraktur",fontName:"Fraktur-Regular"},mathscr:{variant:"script",fontName:"Script-Regular"},mathsf:{variant:"sans-serif",fontName:"SansSerif-Regular"},mathtt:{variant:"monospace",fontName:"Typewriter-Regular"}},Ze={vec:["vec",.471,.714],oiintSize1:["oiintSize1",.957,.499],oiintSize2:["oiintSize2",1.472,.659],oiiintSize1:["oiiintSize1",1.304,.499],oiiintSize2:["oiiintSize2",1.98,.659]},Ke={fontMap:$e,makeSymbol:Ge,mathsym:function(e,t,r,n){return void 0===n&&(n=[]),"boldsymbol"===r.font&&Ve(e,"Main-Bold",t).metrics?Ge(e,"Main-Bold",t,r,n.concat(["mathbf"])):"\\"===e||"main"===ae[t][e].font?Ge(e,"Main-Regular",t,r,n):Ge(e,"AMS-Regular",t,r,n.concat(["amsrm"]))},makeSpan:Xe,makeSvgSpan:We,makeLineSpan:function(e,t,r){var n=Xe([e],[],t);return n.height=Math.max(r||t.fontMetrics().defaultRuleThickness,t.minRuleThickness),n.style.borderBottomWidth=V(n.height),n.maxFontSize=1,n},makeAnchor:function(e,t,r,n){var a=new _(e,t,r,n);return Ye(a),a},makeFragment:_e,wrapFragment:function(e,t){return e instanceof A?Xe([],[e],t):e},makeVList:function(e,t){for(var r=function(e){if("individualShift"===e.positionType){for(var t=e.children,r=[t[0]],n=-t[0].shift-t[0].elem.depth,a=n,i=1;i0&&(o.push(kt(s,t)),s=[]),o.push(a[l]));s.length>0&&o.push(kt(s,t)),r?((i=kt(ft(r,t,!0))).classes=["tag"],o.push(i)):n&&o.push(n);var m=mt(["katex-html"],o);if(m.setAttribute("aria-hidden","true"),i){var c=i.children[0];c.style.height=V(m.height+m.depth),m.depth&&(c.style.verticalAlign=V(-m.depth))}return m}function Mt(e){return new A(e)}var zt=function(){function e(e,t,r){this.type=void 0,this.attributes=void 0,this.children=void 0,this.classes=void 0,this.type=e,this.attributes={},this.children=t||[],this.classes=r||[]}var t=e.prototype;return t.setAttribute=function(e,t){this.attributes[e]=t},t.getAttribute=function(e){return this.attributes[e]},t.toNode=function(){var e=document.createElementNS("http://www.w3.org/1998/Math/MathML",this.type);for(var t in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,t)&&e.setAttribute(t,this.attributes[t]);this.classes.length>0&&(e.className=G(this.classes));for(var r=0;r0&&(e+=' class ="'+l.escape(G(this.classes))+'"'),e+=">";for(var r=0;r"},t.toText=function(){return this.children.map((function(e){return e.toText()})).join("")},e}(),At=function(){function e(e){this.text=void 0,this.text=e}var t=e.prototype;return t.toNode=function(){return document.createTextNode(this.text)},t.toMarkup=function(){return l.escape(this.toText())},t.toText=function(){return this.text},e}(),Tt={MathNode:zt,TextNode:At,SpaceNode:function(){function e(e){this.width=void 0,this.character=void 0,this.width=e,this.character=e>=.05555&&e<=.05556?"\u200a":e>=.1666&&e<=.1667?"\u2009":e>=.2222&&e<=.2223?"\u2005":e>=.2777&&e<=.2778?"\u2005\u200a":e>=-.05556&&e<=-.05555?"\u200a\u2063":e>=-.1667&&e<=-.1666?"\u2009\u2063":e>=-.2223&&e<=-.2222?"\u205f\u2063":e>=-.2778&&e<=-.2777?"\u2005\u2063":null}var t=e.prototype;return t.toNode=function(){if(this.character)return document.createTextNode(this.character);var e=document.createElementNS("http://www.w3.org/1998/Math/MathML","mspace");return e.setAttribute("width",V(this.width)),e},t.toMarkup=function(){return this.character?""+this.character+"":''},t.toText=function(){return this.character?this.character:" "},e}(),newDocumentFragment:Mt},Bt=function(e,t,r){return!ae[t][e]||!ae[t][e].replace||55349===e.charCodeAt(0)||we.hasOwnProperty(e)&&r&&(r.fontFamily&&"tt"===r.fontFamily.substr(4,2)||r.font&&"tt"===r.font.substr(4,2))||(e=ae[t][e].replace),new Tt.TextNode(e)},Ct=function(e){return 1===e.length?e[0]:new Tt.MathNode("mrow",e)},qt=function(e,t){if("texttt"===t.fontFamily)return"monospace";if("textsf"===t.fontFamily)return"textit"===t.fontShape&&"textbf"===t.fontWeight?"sans-serif-bold-italic":"textit"===t.fontShape?"sans-serif-italic":"textbf"===t.fontWeight?"bold-sans-serif":"sans-serif";if("textit"===t.fontShape&&"textbf"===t.fontWeight)return"bold-italic";if("textit"===t.fontShape)return"italic";if("textbf"===t.fontWeight)return"bold";var r=t.font;if(!r||"mathnormal"===r)return null;var n=e.mode;if("mathit"===r)return"italic";if("boldsymbol"===r)return"textord"===e.type?"bold":"bold-italic";if("mathbf"===r)return"bold";if("mathbb"===r)return"double-struck";if("mathfrak"===r)return"fraktur";if("mathscr"===r||"mathcal"===r)return"script";if("mathsf"===r)return"sans-serif";if("mathtt"===r)return"monospace";var a=e.text;return l.contains(["\\imath","\\jmath"],a)?null:(ae[n][a]&&ae[n][a].replace&&(a=ae[n][a].replace),q(a,Ke.fontMap[r].fontName,n)?Ke.fontMap[r].variant:null)},Nt=function(e,t,r){if(1===e.length){var n=Rt(e[0],t);return r&&n instanceof zt&&"mo"===n.type&&(n.setAttribute("lspace","0em"),n.setAttribute("rspace","0em")),[n]}for(var a,i=[],o=0;o0&&(p.text=p.text.slice(0,1)+"\u0338"+p.text.slice(1),i.pop())}}}i.push(s),a=s}return i},It=function(e,t,r){return Ct(Nt(e,t,r))},Rt=function(e,t){if(!e)return new Tt.MathNode("mrow");if(it[e.type])return it[e.type](e,t);throw new n("Got group of unknown type: '"+e.type+"'")};function Ot(e,t,r,n,a){var i,o=Nt(e,r);i=1===o.length&&o[0]instanceof zt&&l.contains(["mrow","mtable"],o[0].type)?o[0]:new Tt.MathNode("mrow",o);var s=new Tt.MathNode("annotation",[new Tt.TextNode(t)]);s.setAttribute("encoding","application/x-tex");var h=new Tt.MathNode("semantics",[i,s]),m=new Tt.MathNode("math",[h]);m.setAttribute("xmlns","http://www.w3.org/1998/Math/MathML"),n&&m.setAttribute("display","block");var c=a?"katex":"katex-mathml";return Ke.makeSpan([c],[m])}var Ht=function(e){return new E({style:e.displayMode?x.DISPLAY:x.TEXT,maxSize:e.maxSize,minRuleThickness:e.minRuleThickness})},Et=function(e,t){if(t.displayMode){var r=["katex-display"];t.leqno&&r.push("leqno"),t.fleqn&&r.push("fleqn"),e=Ke.makeSpan(r,[e])}return e},Lt=function(e,t,r){var n,a=Ht(r);if("mathml"===r.output)return Ot(e,t,a,r.displayMode,!0);if("html"===r.output){var i=St(e,a);n=Ke.makeSpan(["katex"],[i])}else{var o=Ot(e,t,a,r.displayMode,!1),s=St(e,a);n=Ke.makeSpan(["katex"],[o,s])}return Et(n,r)},Dt={widehat:"^",widecheck:"\u02c7",widetilde:"~",utilde:"~",overleftarrow:"\u2190",underleftarrow:"\u2190",xleftarrow:"\u2190",overrightarrow:"\u2192",underrightarrow:"\u2192",xrightarrow:"\u2192",underbrace:"\u23df",overbrace:"\u23de",overgroup:"\u23e0",undergroup:"\u23e1",overleftrightarrow:"\u2194",underleftrightarrow:"\u2194",xleftrightarrow:"\u2194",Overrightarrow:"\u21d2",xRightarrow:"\u21d2",overleftharpoon:"\u21bc",xleftharpoonup:"\u21bc",overrightharpoon:"\u21c0",xrightharpoonup:"\u21c0",xLeftarrow:"\u21d0",xLeftrightarrow:"\u21d4",xhookleftarrow:"\u21a9",xhookrightarrow:"\u21aa",xmapsto:"\u21a6",xrightharpoondown:"\u21c1",xleftharpoondown:"\u21bd",xrightleftharpoons:"\u21cc",xleftrightharpoons:"\u21cb",xtwoheadleftarrow:"\u219e",xtwoheadrightarrow:"\u21a0",xlongequal:"=",xtofrom:"\u21c4",xrightleftarrows:"\u21c4",xrightequilibrium:"\u21cc",xleftequilibrium:"\u21cb","\\cdrightarrow":"\u2192","\\cdleftarrow":"\u2190","\\cdlongequal":"="},Pt={overrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],overleftarrow:[["leftarrow"],.888,522,"xMinYMin"],underrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],underleftarrow:[["leftarrow"],.888,522,"xMinYMin"],xrightarrow:[["rightarrow"],1.469,522,"xMaxYMin"],"\\cdrightarrow":[["rightarrow"],3,522,"xMaxYMin"],xleftarrow:[["leftarrow"],1.469,522,"xMinYMin"],"\\cdleftarrow":[["leftarrow"],3,522,"xMinYMin"],Overrightarrow:[["doublerightarrow"],.888,560,"xMaxYMin"],xRightarrow:[["doublerightarrow"],1.526,560,"xMaxYMin"],xLeftarrow:[["doubleleftarrow"],1.526,560,"xMinYMin"],overleftharpoon:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoonup:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoondown:[["leftharpoondown"],.888,522,"xMinYMin"],overrightharpoon:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoonup:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoondown:[["rightharpoondown"],.888,522,"xMaxYMin"],xlongequal:[["longequal"],.888,334,"xMinYMin"],"\\cdlongequal":[["longequal"],3,334,"xMinYMin"],xtwoheadleftarrow:[["twoheadleftarrow"],.888,334,"xMinYMin"],xtwoheadrightarrow:[["twoheadrightarrow"],.888,334,"xMaxYMin"],overleftrightarrow:[["leftarrow","rightarrow"],.888,522],overbrace:[["leftbrace","midbrace","rightbrace"],1.6,548],underbrace:[["leftbraceunder","midbraceunder","rightbraceunder"],1.6,548],underleftrightarrow:[["leftarrow","rightarrow"],.888,522],xleftrightarrow:[["leftarrow","rightarrow"],1.75,522],xLeftrightarrow:[["doubleleftarrow","doublerightarrow"],1.75,560],xrightleftharpoons:[["leftharpoondownplus","rightharpoonplus"],1.75,716],xleftrightharpoons:[["leftharpoonplus","rightharpoondownplus"],1.75,716],xhookleftarrow:[["leftarrow","righthook"],1.08,522],xhookrightarrow:[["lefthook","rightarrow"],1.08,522],overlinesegment:[["leftlinesegment","rightlinesegment"],.888,522],underlinesegment:[["leftlinesegment","rightlinesegment"],.888,522],overgroup:[["leftgroup","rightgroup"],.888,342],undergroup:[["leftgroupunder","rightgroupunder"],.888,342],xmapsto:[["leftmapsto","rightarrow"],1.5,522],xtofrom:[["leftToFrom","rightToFrom"],1.75,528],xrightleftarrows:[["baraboveleftarrow","rightarrowabovebar"],1.75,901],xrightequilibrium:[["baraboveshortleftharpoon","rightharpoonaboveshortbar"],1.75,716],xleftequilibrium:[["shortbaraboveleftharpoon","shortrightharpoonabovebar"],1.75,716]},Ft=function(e,t,r,n,a){var i,o=e.height+e.depth+r+n;if(/fbox|color|angl/.test(t)){if(i=Ke.makeSpan(["stretchy",t],[],a),"fbox"===t){var s=a.color&&a.getColor();s&&(i.style.borderColor=s)}}else{var l=[];/^[bx]cancel$/.test(t)&&l.push(new Q({x1:"0",y1:"0",x2:"100%",y2:"100%","stroke-width":"0.046em"})),/^x?cancel$/.test(t)&&l.push(new Q({x1:"0",y1:"100%",x2:"100%",y2:"0","stroke-width":"0.046em"}));var h=new K(l,{width:"100%",height:V(o)});i=Ke.makeSvgSpan([],[h],a)}return i.height=o,i.style.height=V(o),i},Vt=function(e){var t=new Tt.MathNode("mo",[new Tt.TextNode(Dt[e.replace(/^\\/,"")])]);return t.setAttribute("stretchy","true"),t},Gt=function(e,t){var r=function(){var r=4e5,n=e.label.substr(1);if(l.contains(["widehat","widecheck","widetilde","utilde"],n)){var a,i,o,s="ordgroup"===(d=e.base).type?d.body.length:1;if(s>5)"widehat"===n||"widecheck"===n?(a=420,r=2364,o=.42,i=n+"4"):(a=312,r=2340,o=.34,i="tilde4");else{var h=[1,1,2,2,3,3][s];"widehat"===n||"widecheck"===n?(r=[0,1062,2364,2364,2364][h],a=[0,239,300,360,420][h],o=[0,.24,.3,.3,.36,.42][h],i=n+h):(r=[0,600,1033,2339,2340][h],a=[0,260,286,306,312][h],o=[0,.26,.286,.3,.306,.34][h],i="tilde"+h)}var m=new J(i),c=new K([m],{width:"100%",height:V(o),viewBox:"0 0 "+r+" "+a,preserveAspectRatio:"none"});return{span:Ke.makeSvgSpan([],[c],t),minWidth:0,height:o}}var u,p,d,f=[],g=Pt[n],v=g[0],b=g[1],y=g[2],x=y/1e3,w=v.length;if(1===w)u=["hide-tail"],p=[g[3]];else if(2===w)u=["halfarrow-left","halfarrow-right"],p=["xMinYMin","xMaxYMin"];else{if(3!==w)throw new Error("Correct katexImagesData or update code here to support\n "+w+" children.");u=["brace-left","brace-center","brace-right"],p=["xMinYMin","xMidYMin","xMaxYMin"]}for(var k=0;k0&&(n.style.minWidth=V(a)),n};function Ut(e,t){if(!e||e.type!==t)throw new Error("Expected node of type "+t+", but got "+(e?"node of type "+e.type:String(e)));return e}function Yt(e){var t=Xt(e);if(!t)throw new Error("Expected node of symbol group type, but got "+(e?"node of type "+e.type:String(e)));return t}function Xt(e){return e&&("atom"===e.type||re.hasOwnProperty(e.type))?e:null}var Wt=function(e,t){var r,n,a;e&&"supsub"===e.type?(r=(n=Ut(e.base,"accent")).base,e.base=r,a=function(e){if(e instanceof W)return e;throw new Error("Expected span but got "+String(e)+".")}(wt(e,t)),e.base=n):r=(n=Ut(e,"accent")).base;var i=wt(r,t.havingCrampedStyle()),o=0;if(n.isShifty&&l.isCharacterBox(r)){var s=l.getBaseElem(r);o=ee(wt(s,t.havingCrampedStyle())).skew}var h,m="\\c"===n.label,c=m?i.height+i.depth:Math.min(i.height,t.fontMetrics().xHeight);if(n.isStretchy)h=Gt(n,t),h=Ke.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:i},{type:"elem",elem:h,wrapperClasses:["svg-align"],wrapperStyle:o>0?{width:"calc(100% - "+V(2*o)+")",marginLeft:V(2*o)}:void 0}]},t);else{var u,p;"\\vec"===n.label?(u=Ke.staticSvg("vec",t),p=Ke.svgData.vec[1]):((u=ee(u=Ke.makeOrd({mode:n.mode,text:n.label},t,"textord"))).italic=0,p=u.width,m&&(c+=u.depth)),h=Ke.makeSpan(["accent-body"],[u]);var d="\\textcircled"===n.label;d&&(h.classes.push("accent-full"),c=i.height);var f=o;d||(f-=p/2),h.style.left=V(f),"\\textcircled"===n.label&&(h.style.top=".2em"),h=Ke.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:i},{type:"kern",size:-c},{type:"elem",elem:h}]},t)}var g=Ke.makeSpan(["mord","accent"],[h],t);return a?(a.children[0]=g,a.height=Math.max(g.height,a.height),a.classes[0]="mord",a):g},_t=function(e,t){var r=e.isStretchy?Vt(e.label):new Tt.MathNode("mo",[Bt(e.label,e.mode)]),n=new Tt.MathNode("mover",[Rt(e.base,t),r]);return n.setAttribute("accent","true"),n},jt=new RegExp(["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring"].map((function(e){return"\\"+e})).join("|"));ot({type:"accent",names:["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring","\\widecheck","\\widehat","\\widetilde","\\overrightarrow","\\overleftarrow","\\Overrightarrow","\\overleftrightarrow","\\overgroup","\\overlinesegment","\\overleftharpoon","\\overrightharpoon"],props:{numArgs:1},handler:function(e,t){var r=lt(t[0]),n=!jt.test(e.funcName),a=!n||"\\widehat"===e.funcName||"\\widetilde"===e.funcName||"\\widecheck"===e.funcName;return{type:"accent",mode:e.parser.mode,label:e.funcName,isStretchy:n,isShifty:a,base:r}},htmlBuilder:Wt,mathmlBuilder:_t}),ot({type:"accent",names:["\\'","\\`","\\^","\\~","\\=","\\u","\\.",'\\"',"\\c","\\r","\\H","\\v","\\textcircled"],props:{numArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["primitive"]},handler:function(e,t){var r=t[0],n=e.parser.mode;return"math"===n&&(e.parser.settings.reportNonstrict("mathVsTextAccents","LaTeX's accent "+e.funcName+" works only in text mode"),n="text"),{type:"accent",mode:n,label:e.funcName,isStretchy:!1,isShifty:!0,base:r}},htmlBuilder:Wt,mathmlBuilder:_t}),ot({type:"accentUnder",names:["\\underleftarrow","\\underrightarrow","\\underleftrightarrow","\\undergroup","\\underlinesegment","\\utilde"],props:{numArgs:1},handler:function(e,t){var r=e.parser,n=e.funcName,a=t[0];return{type:"accentUnder",mode:r.mode,label:n,base:a}},htmlBuilder:function(e,t){var r=wt(e.base,t),n=Gt(e,t),a="\\utilde"===e.label?.12:0,i=Ke.makeVList({positionType:"top",positionData:r.height,children:[{type:"elem",elem:n,wrapperClasses:["svg-align"]},{type:"kern",size:a},{type:"elem",elem:r}]},t);return Ke.makeSpan(["mord","accentunder"],[i],t)},mathmlBuilder:function(e,t){var r=Vt(e.label),n=new Tt.MathNode("munder",[Rt(e.base,t),r]);return n.setAttribute("accentunder","true"),n}});var $t=function(e){var t=new Tt.MathNode("mpadded",e?[e]:[]);return t.setAttribute("width","+0.6em"),t.setAttribute("lspace","0.3em"),t};ot({type:"xArrow",names:["\\xleftarrow","\\xrightarrow","\\xLeftarrow","\\xRightarrow","\\xleftrightarrow","\\xLeftrightarrow","\\xhookleftarrow","\\xhookrightarrow","\\xmapsto","\\xrightharpoondown","\\xrightharpoonup","\\xleftharpoondown","\\xleftharpoonup","\\xrightleftharpoons","\\xleftrightharpoons","\\xlongequal","\\xtwoheadrightarrow","\\xtwoheadleftarrow","\\xtofrom","\\xrightleftarrows","\\xrightequilibrium","\\xleftequilibrium","\\\\cdrightarrow","\\\\cdleftarrow","\\\\cdlongequal"],props:{numArgs:1,numOptionalArgs:1},handler:function(e,t,r){var n=e.parser,a=e.funcName;return{type:"xArrow",mode:n.mode,label:a,body:t[0],below:r[0]}},htmlBuilder:function(e,t){var r,n=t.style,a=t.havingStyle(n.sup()),i=Ke.wrapFragment(wt(e.body,a,t),t),o="\\x"===e.label.slice(0,2)?"x":"cd";i.classes.push(o+"-arrow-pad"),e.below&&(a=t.havingStyle(n.sub()),(r=Ke.wrapFragment(wt(e.below,a,t),t)).classes.push(o+"-arrow-pad"));var s,l=Gt(e,t),h=-t.fontMetrics().axisHeight+.5*l.height,m=-t.fontMetrics().axisHeight-.5*l.height-.111;if((i.depth>.25||"\\xleftequilibrium"===e.label)&&(m-=i.depth),r){var c=-t.fontMetrics().axisHeight+r.height+.5*l.height+.111;s=Ke.makeVList({positionType:"individualShift",children:[{type:"elem",elem:i,shift:m},{type:"elem",elem:l,shift:h},{type:"elem",elem:r,shift:c}]},t)}else s=Ke.makeVList({positionType:"individualShift",children:[{type:"elem",elem:i,shift:m},{type:"elem",elem:l,shift:h}]},t);return s.children[0].children[0].children[1].classes.push("svg-align"),Ke.makeSpan(["mrel","x-arrow"],[s],t)},mathmlBuilder:function(e,t){var r,n=Vt(e.label);if(n.setAttribute("minsize","x"===e.label.charAt(0)?"1.75em":"3.0em"),e.body){var a=$t(Rt(e.body,t));if(e.below){var i=$t(Rt(e.below,t));r=new Tt.MathNode("munderover",[n,i,a])}else r=new Tt.MathNode("mover",[n,a])}else if(e.below){var o=$t(Rt(e.below,t));r=new Tt.MathNode("munder",[n,o])}else r=$t(),r=new Tt.MathNode("mover",[n,r]);return r}});var Zt={">":"\\\\cdrightarrow","<":"\\\\cdleftarrow","=":"\\\\cdlongequal",A:"\\uparrow",V:"\\downarrow","|":"\\Vert",".":"no arrow"},Kt=function(e){return"textord"===e.type&&"@"===e.text};function Jt(e,t,r){var n=Zt[e];switch(n){case"\\\\cdrightarrow":case"\\\\cdleftarrow":return r.callFunction(n,[t[0]],[t[1]]);case"\\uparrow":case"\\downarrow":var a={type:"atom",text:n,mode:"math",family:"rel"},i={type:"ordgroup",mode:"math",body:[r.callFunction("\\\\cdleft",[t[0]],[]),r.callFunction("\\Big",[a],[]),r.callFunction("\\\\cdright",[t[1]],[])]};return r.callFunction("\\\\cdparent",[i],[]);case"\\\\cdlongequal":return r.callFunction("\\\\cdlongequal",[],[]);case"\\Vert":return r.callFunction("\\Big",[{type:"textord",text:"\\Vert",mode:"math"}],[]);default:return{type:"textord",text:" ",mode:"math"}}}ot({type:"cdlabel",names:["\\\\cdleft","\\\\cdright"],props:{numArgs:1},handler:function(e,t){var r=e.parser,n=e.funcName;return{type:"cdlabel",mode:r.mode,side:n.slice(4),label:t[0]}},htmlBuilder:function(e,t){var r=t.havingStyle(t.style.sup()),n=Ke.wrapFragment(wt(e.label,r,t),t);return n.classes.push("cd-label-"+e.side),n.style.bottom=V(.8-n.depth),n.height=0,n.depth=0,n},mathmlBuilder:function(e,t){var r=new Tt.MathNode("mrow",[Rt(e.label,t)]);return(r=new Tt.MathNode("mpadded",[r])).setAttribute("width","0"),"left"===e.side&&r.setAttribute("lspace","-1width"),r.setAttribute("voffset","0.7em"),(r=new Tt.MathNode("mstyle",[r])).setAttribute("displaystyle","false"),r.setAttribute("scriptlevel","1"),r}}),ot({type:"cdlabelparent",names:["\\\\cdparent"],props:{numArgs:1},handler:function(e,t){return{type:"cdlabelparent",mode:e.parser.mode,fragment:t[0]}},htmlBuilder:function(e,t){var r=Ke.wrapFragment(wt(e.fragment,t),t);return r.classes.push("cd-vert-arrow"),r},mathmlBuilder:function(e,t){return new Tt.MathNode("mrow",[Rt(e.fragment,t)])}}),ot({type:"textord",names:["\\@char"],props:{numArgs:1,allowedInText:!0},handler:function(e,t){for(var r=e.parser,a=Ut(t[0],"ordgroup").body,i="",o=0;o=1114111)throw new n("\\@char with invalid code point "+i);return l<=65535?s=String.fromCharCode(l):(l-=65536,s=String.fromCharCode(55296+(l>>10),56320+(1023&l))),{type:"textord",mode:r.mode,text:s}}});var Qt=function(e,t){var r=ft(e.body,t.withColor(e.color),!1);return Ke.makeFragment(r)},er=function(e,t){var r=Nt(e.body,t.withColor(e.color)),n=new Tt.MathNode("mstyle",r);return n.setAttribute("mathcolor",e.color),n};ot({type:"color",names:["\\textcolor"],props:{numArgs:2,allowedInText:!0,argTypes:["color","original"]},handler:function(e,t){var r=e.parser,n=Ut(t[0],"color-token").color,a=t[1];return{type:"color",mode:r.mode,color:n,body:ht(a)}},htmlBuilder:Qt,mathmlBuilder:er}),ot({type:"color",names:["\\color"],props:{numArgs:1,allowedInText:!0,argTypes:["color"]},handler:function(e,t){var r=e.parser,n=e.breakOnTokenText,a=Ut(t[0],"color-token").color;r.gullet.macros.set("\\current@color",a);var i=r.parseExpression(!0,n);return{type:"color",mode:r.mode,color:a,body:i}},htmlBuilder:Qt,mathmlBuilder:er}),ot({type:"cr",names:["\\\\"],props:{numArgs:0,numOptionalArgs:1,argTypes:["size"],allowedInText:!0},handler:function(e,t,r){var n=e.parser,a=r[0],i=!n.settings.displayMode||!n.settings.useStrictBehavior("newLineInDisplayMode","In LaTeX, \\\\ or \\newline does nothing in display mode");return{type:"cr",mode:n.mode,newLine:i,size:a&&Ut(a,"size").value}},htmlBuilder:function(e,t){var r=Ke.makeSpan(["mspace"],[],t);return e.newLine&&(r.classes.push("newline"),e.size&&(r.style.marginTop=V(F(e.size,t)))),r},mathmlBuilder:function(e,t){var r=new Tt.MathNode("mspace");return e.newLine&&(r.setAttribute("linebreak","newline"),e.size&&r.setAttribute("height",V(F(e.size,t)))),r}});var tr={"\\global":"\\global","\\long":"\\\\globallong","\\\\globallong":"\\\\globallong","\\def":"\\gdef","\\gdef":"\\gdef","\\edef":"\\xdef","\\xdef":"\\xdef","\\let":"\\\\globallet","\\futurelet":"\\\\globalfuture"},rr=function(e){var t=e.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(t))throw new n("Expected a control sequence",e);return t},nr=function(e,t,r,n){var a=e.gullet.macros.get(r.text);null==a&&(r.noexpand=!0,a={tokens:[r],numArgs:0,unexpandable:!e.gullet.isExpandable(r.text)}),e.gullet.macros.set(t,a,n)};ot({type:"internal",names:["\\global","\\long","\\\\globallong"],props:{numArgs:0,allowedInText:!0},handler:function(e){var t=e.parser,r=e.funcName;t.consumeSpaces();var a=t.fetch();if(tr[a.text])return"\\global"!==r&&"\\\\globallong"!==r||(a.text=tr[a.text]),Ut(t.parseFunction(),"internal");throw new n("Invalid token after macro prefix",a)}}),ot({type:"internal",names:["\\def","\\gdef","\\edef","\\xdef"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler:function(e){var t=e.parser,r=e.funcName,a=t.gullet.popToken(),i=a.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(i))throw new n("Expected a control sequence",a);for(var o,s=0,l=[[]];"{"!==t.gullet.future().text;)if("#"===(a=t.gullet.popToken()).text){if("{"===t.gullet.future().text){o=t.gullet.future(),l[s].push("{");break}if(a=t.gullet.popToken(),!/^[1-9]$/.test(a.text))throw new n('Invalid argument number "'+a.text+'"');if(parseInt(a.text)!==s+1)throw new n('Argument number "'+a.text+'" out of order');s++,l.push([])}else{if("EOF"===a.text)throw new n("Expected a macro definition");l[s].push(a.text)}var h=t.gullet.consumeArg().tokens;return o&&h.unshift(o),"\\edef"!==r&&"\\xdef"!==r||(h=t.gullet.expandTokens(h)).reverse(),t.gullet.macros.set(i,{tokens:h,numArgs:s,delimiters:l},r===tr[r]),{type:"internal",mode:t.mode}}}),ot({type:"internal",names:["\\let","\\\\globallet"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler:function(e){var t=e.parser,r=e.funcName,n=rr(t.gullet.popToken());t.gullet.consumeSpaces();var a=function(e){var t=e.gullet.popToken();return"="===t.text&&" "===(t=e.gullet.popToken()).text&&(t=e.gullet.popToken()),t}(t);return nr(t,n,a,"\\\\globallet"===r),{type:"internal",mode:t.mode}}}),ot({type:"internal",names:["\\futurelet","\\\\globalfuture"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler:function(e){var t=e.parser,r=e.funcName,n=rr(t.gullet.popToken()),a=t.gullet.popToken(),i=t.gullet.popToken();return nr(t,n,i,"\\\\globalfuture"===r),t.gullet.pushToken(i),t.gullet.pushToken(a),{type:"internal",mode:t.mode}}});var ar=function(e,t,r){var n=q(ae.math[e]&&ae.math[e].replace||e,t,r);if(!n)throw new Error("Unsupported symbol "+e+" and font size "+t+".");return n},ir=function(e,t,r,n){var a=r.havingBaseStyle(t),i=Ke.makeSpan(n.concat(a.sizingClasses(r)),[e],r),o=a.sizeMultiplier/r.sizeMultiplier;return i.height*=o,i.depth*=o,i.maxFontSize=a.sizeMultiplier,i},or=function(e,t,r){var n=t.havingBaseStyle(r),a=(1-t.sizeMultiplier/n.sizeMultiplier)*t.fontMetrics().axisHeight;e.classes.push("delimcenter"),e.style.top=V(a),e.height-=a,e.depth+=a},sr=function(e,t,r,n,a,i){var o=function(e,t,r,n){return Ke.makeSymbol(e,"Size"+t+"-Regular",r,n)}(e,t,a,n),s=ir(Ke.makeSpan(["delimsizing","size"+t],[o],n),x.TEXT,n,i);return r&&or(s,n,x.TEXT),s},lr=function(e,t,r){var n;return n="Size1-Regular"===t?"delim-size1":"delim-size4",{type:"elem",elem:Ke.makeSpan(["delimsizinginner",n],[Ke.makeSpan([],[Ke.makeSymbol(e,t,r)])])}},hr=function(e,t,r){var n=T["Size4-Regular"][e.charCodeAt(0)]?T["Size4-Regular"][e.charCodeAt(0)][4]:T["Size1-Regular"][e.charCodeAt(0)][4],a=new J("inner",function(e,t){switch(e){case"\u239c":return"M291 0 H417 V"+t+" H291z M291 0 H417 V"+t+" H291z";case"\u2223":return"M145 0 H188 V"+t+" H145z M145 0 H188 V"+t+" H145z";case"\u2225":return"M145 0 H188 V"+t+" H145z M145 0 H188 V"+t+" H145zM367 0 H410 V"+t+" H367z M367 0 H410 V"+t+" H367z";case"\u239f":return"M457 0 H583 V"+t+" H457z M457 0 H583 V"+t+" H457z";case"\u23a2":return"M319 0 H403 V"+t+" H319z M319 0 H403 V"+t+" H319z";case"\u23a5":return"M263 0 H347 V"+t+" H263z M263 0 H347 V"+t+" H263z";case"\u23aa":return"M384 0 H504 V"+t+" H384z M384 0 H504 V"+t+" H384z";case"\u23d0":return"M312 0 H355 V"+t+" H312z M312 0 H355 V"+t+" H312z";case"\u2016":return"M257 0 H300 V"+t+" H257z M257 0 H300 V"+t+" H257zM478 0 H521 V"+t+" H478z M478 0 H521 V"+t+" H478z";default:return""}}(e,Math.round(1e3*t))),i=new K([a],{width:V(n),height:V(t),style:"width:"+V(n),viewBox:"0 0 "+1e3*n+" "+Math.round(1e3*t),preserveAspectRatio:"xMinYMin"}),o=Ke.makeSvgSpan([],[i],r);return o.height=t,o.style.height=V(t),o.style.width=V(n),{type:"elem",elem:o}},mr={type:"kern",size:-.008},cr=["|","\\lvert","\\rvert","\\vert"],ur=["\\|","\\lVert","\\rVert","\\Vert"],pr=function(e,t,r,n,a,i){var o,s,h,m;o=h=m=e,s=null;var c="Size1-Regular";"\\uparrow"===e?h=m="\u23d0":"\\Uparrow"===e?h=m="\u2016":"\\downarrow"===e?o=h="\u23d0":"\\Downarrow"===e?o=h="\u2016":"\\updownarrow"===e?(o="\\uparrow",h="\u23d0",m="\\downarrow"):"\\Updownarrow"===e?(o="\\Uparrow",h="\u2016",m="\\Downarrow"):l.contains(cr,e)?h="\u2223":l.contains(ur,e)?h="\u2225":"["===e||"\\lbrack"===e?(o="\u23a1",h="\u23a2",m="\u23a3",c="Size4-Regular"):"]"===e||"\\rbrack"===e?(o="\u23a4",h="\u23a5",m="\u23a6",c="Size4-Regular"):"\\lfloor"===e||"\u230a"===e?(h=o="\u23a2",m="\u23a3",c="Size4-Regular"):"\\lceil"===e||"\u2308"===e?(o="\u23a1",h=m="\u23a2",c="Size4-Regular"):"\\rfloor"===e||"\u230b"===e?(h=o="\u23a5",m="\u23a6",c="Size4-Regular"):"\\rceil"===e||"\u2309"===e?(o="\u23a4",h=m="\u23a5",c="Size4-Regular"):"("===e||"\\lparen"===e?(o="\u239b",h="\u239c",m="\u239d",c="Size4-Regular"):")"===e||"\\rparen"===e?(o="\u239e",h="\u239f",m="\u23a0",c="Size4-Regular"):"\\{"===e||"\\lbrace"===e?(o="\u23a7",s="\u23a8",m="\u23a9",h="\u23aa",c="Size4-Regular"):"\\}"===e||"\\rbrace"===e?(o="\u23ab",s="\u23ac",m="\u23ad",h="\u23aa",c="Size4-Regular"):"\\lgroup"===e||"\u27ee"===e?(o="\u23a7",m="\u23a9",h="\u23aa",c="Size4-Regular"):"\\rgroup"===e||"\u27ef"===e?(o="\u23ab",m="\u23ad",h="\u23aa",c="Size4-Regular"):"\\lmoustache"===e||"\u23b0"===e?(o="\u23a7",m="\u23ad",h="\u23aa",c="Size4-Regular"):"\\rmoustache"!==e&&"\u23b1"!==e||(o="\u23ab",m="\u23a9",h="\u23aa",c="Size4-Regular");var u=ar(o,c,a),p=u.height+u.depth,d=ar(h,c,a),f=d.height+d.depth,g=ar(m,c,a),v=g.height+g.depth,b=0,y=1;if(null!==s){var w=ar(s,c,a);b=w.height+w.depth,y=2}var k=p+v+b,S=k+Math.max(0,Math.ceil((t-k)/(y*f)))*y*f,M=n.fontMetrics().axisHeight;r&&(M*=n.sizeMultiplier);var z=S/2-M,A=[];if(A.push(lr(m,c,a)),A.push(mr),null===s){var T=S-p-v+.016;A.push(hr(h,T,n))}else{var B=(S-p-v-b)/2+.016;A.push(hr(h,B,n)),A.push(mr),A.push(lr(s,c,a)),A.push(mr),A.push(hr(h,B,n))}A.push(mr),A.push(lr(o,c,a));var C=n.havingBaseStyle(x.TEXT),q=Ke.makeVList({positionType:"bottom",positionData:z,children:A},C);return ir(Ke.makeSpan(["delimsizing","mult"],[q],C),x.TEXT,n,i)},dr=.08,fr=function(e,t,r,n,a){var i=function(e,t,r){t*=1e3;var n="";switch(e){case"sqrtMain":n=function(e,t){return"M95,"+(622+e+t)+"\nc-2.7,0,-7.17,-2.7,-13.5,-8c-5.8,-5.3,-9.5,-10,-9.5,-14\nc0,-2,0.3,-3.3,1,-4c1.3,-2.7,23.83,-20.7,67.5,-54\nc44.2,-33.3,65.8,-50.3,66.5,-51c1.3,-1.3,3,-2,5,-2c4.7,0,8.7,3.3,12,10\ns173,378,173,378c0.7,0,35.3,-71,104,-213c68.7,-142,137.5,-285,206.5,-429\nc69,-144,104.5,-217.7,106.5,-221\nl"+e/2.075+" -"+e+"\nc5.3,-9.3,12,-14,20,-14\nH400000v"+(40+e)+"H845.2724\ns-225.272,467,-225.272,467s-235,486,-235,486c-2.7,4.7,-9,7,-19,7\nc-6,0,-10,-1,-12,-3s-194,-422,-194,-422s-65,47,-65,47z\nM"+(834+e)+" "+t+"h400000v"+(40+e)+"h-400000z"}(t,M);break;case"sqrtSize1":n=function(e,t){return"M263,"+(601+e+t)+"c0.7,0,18,39.7,52,119\nc34,79.3,68.167,158.7,102.5,238c34.3,79.3,51.8,119.3,52.5,120\nc340,-704.7,510.7,-1060.3,512,-1067\nl"+e/2.084+" -"+e+"\nc4.7,-7.3,11,-11,19,-11\nH40000v"+(40+e)+"H1012.3\ns-271.3,567,-271.3,567c-38.7,80.7,-84,175,-136,283c-52,108,-89.167,185.3,-111.5,232\nc-22.3,46.7,-33.8,70.3,-34.5,71c-4.7,4.7,-12.3,7,-23,7s-12,-1,-12,-1\ns-109,-253,-109,-253c-72.7,-168,-109.3,-252,-110,-252c-10.7,8,-22,16.7,-34,26\nc-22,17.3,-33.3,26,-34,26s-26,-26,-26,-26s76,-59,76,-59s76,-60,76,-60z\nM"+(1001+e)+" "+t+"h400000v"+(40+e)+"h-400000z"}(t,M);break;case"sqrtSize2":n=function(e,t){return"M983 "+(10+e+t)+"\nl"+e/3.13+" -"+e+"\nc4,-6.7,10,-10,18,-10 H400000v"+(40+e)+"\nH1013.1s-83.4,268,-264.1,840c-180.7,572,-277,876.3,-289,913c-4.7,4.7,-12.7,7,-24,7\ns-12,0,-12,0c-1.3,-3.3,-3.7,-11.7,-7,-25c-35.3,-125.3,-106.7,-373.3,-214,-744\nc-10,12,-21,25,-33,39s-32,39,-32,39c-6,-5.3,-15,-14,-27,-26s25,-30,25,-30\nc26.7,-32.7,52,-63,76,-91s52,-60,52,-60s208,722,208,722\nc56,-175.3,126.3,-397.3,211,-666c84.7,-268.7,153.8,-488.2,207.5,-658.5\nc53.7,-170.3,84.5,-266.8,92.5,-289.5z\nM"+(1001+e)+" "+t+"h400000v"+(40+e)+"h-400000z"}(t,M);break;case"sqrtSize3":n=function(e,t){return"M424,"+(2398+e+t)+"\nc-1.3,-0.7,-38.5,-172,-111.5,-514c-73,-342,-109.8,-513.3,-110.5,-514\nc0,-2,-10.7,14.3,-32,49c-4.7,7.3,-9.8,15.7,-15.5,25c-5.7,9.3,-9.8,16,-12.5,20\ns-5,7,-5,7c-4,-3.3,-8.3,-7.7,-13,-13s-13,-13,-13,-13s76,-122,76,-122s77,-121,77,-121\ns209,968,209,968c0,-2,84.7,-361.7,254,-1079c169.3,-717.3,254.7,-1077.7,256,-1081\nl"+e/4.223+" -"+e+"c4,-6.7,10,-10,18,-10 H400000\nv"+(40+e)+"H1014.6\ns-87.3,378.7,-272.6,1166c-185.3,787.3,-279.3,1182.3,-282,1185\nc-2,6,-10,9,-24,9\nc-8,0,-12,-0.7,-12,-2z M"+(1001+e)+" "+t+"\nh400000v"+(40+e)+"h-400000z"}(t,M);break;case"sqrtSize4":n=function(e,t){return"M473,"+(2713+e+t)+"\nc339.3,-1799.3,509.3,-2700,510,-2702 l"+e/5.298+" -"+e+"\nc3.3,-7.3,9.3,-11,18,-11 H400000v"+(40+e)+"H1017.7\ns-90.5,478,-276.2,1466c-185.7,988,-279.5,1483,-281.5,1485c-2,6,-10,9,-24,9\nc-8,0,-12,-0.7,-12,-2c0,-1.3,-5.3,-32,-16,-92c-50.7,-293.3,-119.7,-693.3,-207,-1200\nc0,-1.3,-5.3,8.7,-16,30c-10.7,21.3,-21.3,42.7,-32,64s-16,33,-16,33s-26,-26,-26,-26\ns76,-153,76,-153s77,-151,77,-151c0.7,0.7,35.7,202,105,604c67.3,400.7,102,602.7,104,\n606zM"+(1001+e)+" "+t+"h400000v"+(40+e)+"H1017.7z"}(t,M);break;case"sqrtTall":n=function(e,t,r){return"M702 "+(e+t)+"H400000"+(40+e)+"\nH742v"+(r-54-t-e)+"l-4 4-4 4c-.667.7 -2 1.5-4 2.5s-4.167 1.833-6.5 2.5-5.5 1-9.5 1\nh-12l-28-84c-16.667-52-96.667 -294.333-240-727l-212 -643 -85 170\nc-4-3.333-8.333-7.667-13 -13l-13-13l77-155 77-156c66 199.333 139 419.667\n219 661 l218 661zM702 "+t+"H400000v"+(40+e)+"H742z"}(t,M,r)}return n}(e,n,r),o=new J(e,i),s=new K([o],{width:"400em",height:V(t),viewBox:"0 0 400000 "+r,preserveAspectRatio:"xMinYMin slice"});return Ke.makeSvgSpan(["hide-tail"],[s],a)},gr=["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","\u230a","\u230b","\\lceil","\\rceil","\u2308","\u2309","\\surd"],vr=["\\uparrow","\\downarrow","\\updownarrow","\\Uparrow","\\Downarrow","\\Updownarrow","|","\\|","\\vert","\\Vert","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","\u27ee","\u27ef","\\lmoustache","\\rmoustache","\u23b0","\u23b1"],br=["<",">","\\langle","\\rangle","/","\\backslash","\\lt","\\gt"],yr=[0,1.2,1.8,2.4,3],xr=[{type:"small",style:x.SCRIPTSCRIPT},{type:"small",style:x.SCRIPT},{type:"small",style:x.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4}],wr=[{type:"small",style:x.SCRIPTSCRIPT},{type:"small",style:x.SCRIPT},{type:"small",style:x.TEXT},{type:"stack"}],kr=[{type:"small",style:x.SCRIPTSCRIPT},{type:"small",style:x.SCRIPT},{type:"small",style:x.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4},{type:"stack"}],Sr=function(e){if("small"===e.type)return"Main-Regular";if("large"===e.type)return"Size"+e.size+"-Regular";if("stack"===e.type)return"Size4-Regular";throw new Error("Add support for delim type '"+e.type+"' here.")},Mr=function(e,t,r,n){for(var a=Math.min(2,3-n.style.size);at)return r[a]}return r[r.length-1]},zr=function(e,t,r,n,a,i){var o;"<"===e||"\\lt"===e||"\u27e8"===e?e="\\langle":">"!==e&&"\\gt"!==e&&"\u27e9"!==e||(e="\\rangle"),o=l.contains(br,e)?xr:l.contains(gr,e)?kr:wr;var s=Mr(e,t,o,n);return"small"===s.type?function(e,t,r,n,a,i){var o=Ke.makeSymbol(e,"Main-Regular",a,n),s=ir(o,t,n,i);return r&&or(s,n,t),s}(e,s.style,r,n,a,i):"large"===s.type?sr(e,s.size,r,n,a,i):pr(e,t,r,n,a,i)},Ar={sqrtImage:function(e,t){var r,n,a=t.havingBaseSizing(),i=Mr("\\surd",e*a.sizeMultiplier,kr,a),o=a.sizeMultiplier,s=Math.max(0,t.minRuleThickness-t.fontMetrics().sqrtRuleThickness),l=0,h=0,m=0;return"small"===i.type?(e<1?o=1:e<1.4&&(o=.7),h=(1+s)/o,(r=fr("sqrtMain",l=(1+s+dr)/o,m=1e3+1e3*s+80,s,t)).style.minWidth="0.853em",n=.833/o):"large"===i.type?(m=1080*yr[i.size],h=(yr[i.size]+s)/o,l=(yr[i.size]+s+dr)/o,(r=fr("sqrtSize"+i.size,l,m,s,t)).style.minWidth="1.02em",n=1/o):(l=e+s+dr,h=e+s,m=Math.floor(1e3*e+s)+80,(r=fr("sqrtTall",l,m,s,t)).style.minWidth="0.742em",n=1.056),r.height=h,r.style.height=V(l),{span:r,advanceWidth:n,ruleWidth:(t.fontMetrics().sqrtRuleThickness+s)*o}},sizedDelim:function(e,t,r,a,i){if("<"===e||"\\lt"===e||"\u27e8"===e?e="\\langle":">"!==e&&"\\gt"!==e&&"\u27e9"!==e||(e="\\rangle"),l.contains(gr,e)||l.contains(br,e))return sr(e,t,!1,r,a,i);if(l.contains(vr,e))return pr(e,yr[t],!1,r,a,i);throw new n("Illegal delimiter: '"+e+"'")},sizeToMaxHeight:yr,customSizedDelim:zr,leftRightDelim:function(e,t,r,n,a,i){var o=n.fontMetrics().axisHeight*n.sizeMultiplier,s=5/n.fontMetrics().ptPerEm,l=Math.max(t-o,r+o),h=Math.max(l/500*901,2*l-s);return zr(e,h,!0,n,a,i)}},Tr={"\\bigl":{mclass:"mopen",size:1},"\\Bigl":{mclass:"mopen",size:2},"\\biggl":{mclass:"mopen",size:3},"\\Biggl":{mclass:"mopen",size:4},"\\bigr":{mclass:"mclose",size:1},"\\Bigr":{mclass:"mclose",size:2},"\\biggr":{mclass:"mclose",size:3},"\\Biggr":{mclass:"mclose",size:4},"\\bigm":{mclass:"mrel",size:1},"\\Bigm":{mclass:"mrel",size:2},"\\biggm":{mclass:"mrel",size:3},"\\Biggm":{mclass:"mrel",size:4},"\\big":{mclass:"mord",size:1},"\\Big":{mclass:"mord",size:2},"\\bigg":{mclass:"mord",size:3},"\\Bigg":{mclass:"mord",size:4}},Br=["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","\u230a","\u230b","\\lceil","\\rceil","\u2308","\u2309","<",">","\\langle","\u27e8","\\rangle","\u27e9","\\lt","\\gt","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","\u27ee","\u27ef","\\lmoustache","\\rmoustache","\u23b0","\u23b1","/","\\backslash","|","\\vert","\\|","\\Vert","\\uparrow","\\Uparrow","\\downarrow","\\Downarrow","\\updownarrow","\\Updownarrow","."];function Cr(e,t){var r=Xt(e);if(r&&l.contains(Br,r.text))return r;throw new n(r?"Invalid delimiter '"+r.text+"' after '"+t.funcName+"'":"Invalid delimiter type '"+e.type+"'",e)}function qr(e){if(!e.body)throw new Error("Bug: The leftright ParseNode wasn't fully parsed.")}ot({type:"delimsizing",names:["\\bigl","\\Bigl","\\biggl","\\Biggl","\\bigr","\\Bigr","\\biggr","\\Biggr","\\bigm","\\Bigm","\\biggm","\\Biggm","\\big","\\Big","\\bigg","\\Bigg"],props:{numArgs:1,argTypes:["primitive"]},handler:function(e,t){var r=Cr(t[0],e);return{type:"delimsizing",mode:e.parser.mode,size:Tr[e.funcName].size,mclass:Tr[e.funcName].mclass,delim:r.text}},htmlBuilder:function(e,t){return"."===e.delim?Ke.makeSpan([e.mclass]):Ar.sizedDelim(e.delim,e.size,t,e.mode,[e.mclass])},mathmlBuilder:function(e){var t=[];"."!==e.delim&&t.push(Bt(e.delim,e.mode));var r=new Tt.MathNode("mo",t);"mopen"===e.mclass||"mclose"===e.mclass?r.setAttribute("fence","true"):r.setAttribute("fence","false"),r.setAttribute("stretchy","true");var n=V(Ar.sizeToMaxHeight[e.size]);return r.setAttribute("minsize",n),r.setAttribute("maxsize",n),r}}),ot({type:"leftright-right",names:["\\right"],props:{numArgs:1,primitive:!0},handler:function(e,t){var r=e.parser.gullet.macros.get("\\current@color");if(r&&"string"!=typeof r)throw new n("\\current@color set to non-string in \\right");return{type:"leftright-right",mode:e.parser.mode,delim:Cr(t[0],e).text,color:r}}}),ot({type:"leftright",names:["\\left"],props:{numArgs:1,primitive:!0},handler:function(e,t){var r=Cr(t[0],e),n=e.parser;++n.leftrightDepth;var a=n.parseExpression(!1);--n.leftrightDepth,n.expect("\\right",!1);var i=Ut(n.parseFunction(),"leftright-right");return{type:"leftright",mode:n.mode,body:a,left:r.text,right:i.delim,rightColor:i.color}},htmlBuilder:function(e,t){qr(e);for(var r,n,a=ft(e.body,t,!0,["mopen","mclose"]),i=0,o=0,s=!1,l=0;l-1?"mpadded":"menclose",[Rt(e.body,t)]);switch(e.label){case"\\cancel":n.setAttribute("notation","updiagonalstrike");break;case"\\bcancel":n.setAttribute("notation","downdiagonalstrike");break;case"\\phase":n.setAttribute("notation","phasorangle");break;case"\\sout":n.setAttribute("notation","horizontalstrike");break;case"\\fbox":n.setAttribute("notation","box");break;case"\\angl":n.setAttribute("notation","actuarial");break;case"\\fcolorbox":case"\\colorbox":if(r=t.fontMetrics().fboxsep*t.fontMetrics().ptPerEm,n.setAttribute("width","+"+2*r+"pt"),n.setAttribute("height","+"+2*r+"pt"),n.setAttribute("lspace",r+"pt"),n.setAttribute("voffset",r+"pt"),"\\fcolorbox"===e.label){var a=Math.max(t.fontMetrics().fboxrule,t.minRuleThickness);n.setAttribute("style","border: "+a+"em solid "+String(e.borderColor))}break;case"\\xcancel":n.setAttribute("notation","updiagonalstrike downdiagonalstrike")}return e.backgroundColor&&n.setAttribute("mathbackground",e.backgroundColor),n};ot({type:"enclose",names:["\\colorbox"],props:{numArgs:2,allowedInText:!0,argTypes:["color","text"]},handler:function(e,t,r){var n=e.parser,a=e.funcName,i=Ut(t[0],"color-token").color,o=t[1];return{type:"enclose",mode:n.mode,label:a,backgroundColor:i,body:o}},htmlBuilder:Nr,mathmlBuilder:Ir}),ot({type:"enclose",names:["\\fcolorbox"],props:{numArgs:3,allowedInText:!0,argTypes:["color","color","text"]},handler:function(e,t,r){var n=e.parser,a=e.funcName,i=Ut(t[0],"color-token").color,o=Ut(t[1],"color-token").color,s=t[2];return{type:"enclose",mode:n.mode,label:a,backgroundColor:o,borderColor:i,body:s}},htmlBuilder:Nr,mathmlBuilder:Ir}),ot({type:"enclose",names:["\\fbox"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!0},handler:function(e,t){return{type:"enclose",mode:e.parser.mode,label:"\\fbox",body:t[0]}}}),ot({type:"enclose",names:["\\cancel","\\bcancel","\\xcancel","\\sout","\\phase"],props:{numArgs:1},handler:function(e,t){var r=e.parser,n=e.funcName,a=t[0];return{type:"enclose",mode:r.mode,label:n,body:a}},htmlBuilder:Nr,mathmlBuilder:Ir}),ot({type:"enclose",names:["\\angl"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!1},handler:function(e,t){return{type:"enclose",mode:e.parser.mode,label:"\\angl",body:t[0]}}});var Rr={};function Or(e){for(var t=e.type,r=e.names,n=e.props,a=e.handler,i=e.htmlBuilder,o=e.mathmlBuilder,s={type:t,numArgs:n.numArgs||0,allowedInText:!1,numOptionalArgs:0,handler:a},l=0;l1||!c)&&g.pop(),b.length0&&(y+=.25),m.push({pos:y,isDashed:e[t]})}for(w(o[0]),r=0;r0&&(M<(B+=b)&&(M=B),B=0),e.addJot&&(M+=f),z.height=S,z.depth=M,y+=S,z.pos=y,y+=M+B,h[r]=z,w(o[r+1])}var C,q,N=y/2+t.fontMetrics().axisHeight,I=e.cols||[],R=[],O=[];if(e.tags&&e.tags.some((function(e){return e})))for(r=0;r=s)){var W=void 0;(a>0||e.hskipBeforeAndAfter)&&0!==(W=l.deflt(P.pregap,p))&&((C=Ke.makeSpan(["arraycolsep"],[])).style.width=V(W),R.push(C));var _=[];for(r=0;r0){for(var K=Ke.makeLineSpan("hline",t,c),J=Ke.makeLineSpan("hdashline",t,c),Q=[{type:"elem",elem:h,shift:0}];m.length>0;){var ee=m.pop(),te=ee.pos-N;ee.isDashed?Q.push({type:"elem",elem:J,shift:te}):Q.push({type:"elem",elem:K,shift:te})}h=Ke.makeVList({positionType:"individualShift",children:Q},t)}if(0===O.length)return Ke.makeSpan(["mord"],[h],t);var re=Ke.makeVList({positionType:"individualShift",children:O},t);return re=Ke.makeSpan(["tag"],[re],t),Ke.makeFragment([h,re])},Xr={c:"center ",l:"left ",r:"right "},Wr=function(e,t){for(var r=[],n=new Tt.MathNode("mtd",[],["mtr-glue"]),a=new Tt.MathNode("mtd",[],["mml-eqn-num"]),i=0;i0){var p=e.cols,d="",f=!1,g=0,v=p.length;"separator"===p[0].type&&(c+="top ",g=1),"separator"===p[p.length-1].type&&(c+="bottom ",v-=1);for(var b=g;b0?"left ":"",c+=S[S.length-1].length>0?"right ":"";for(var M=1;M-1?"alignat":"align",o="split"===e.envName,s=Gr(e.parser,{cols:a,addJot:!0,autoTag:o?void 0:Vr(e.envName),emptySingleRow:!0,colSeparationType:i,maxNumCols:o?2:void 0,leqno:e.parser.settings.leqno},"display"),l=0,h={type:"ordgroup",mode:e.mode,body:[]};if(t[0]&&"ordgroup"===t[0].type){for(var m="",c=0;c0&&u&&(f=1),a[p]={type:"align",align:d,pregap:f,postgap:0}}return s.colSeparationType=u?"align":"alignat",s};Or({type:"array",names:["array","darray"],props:{numArgs:1},handler:function(e,t){var r=(Xt(t[0])?[t[0]]:Ut(t[0],"ordgroup").body).map((function(e){var t=Yt(e).text;if(-1!=="lcr".indexOf(t))return{type:"align",align:t};if("|"===t)return{type:"separator",separator:"|"};if(":"===t)return{type:"separator",separator:":"};throw new n("Unknown column alignment: "+t,e)})),a={cols:r,hskipBeforeAndAfter:!0,maxNumCols:r.length};return Gr(e.parser,a,Ur(e.envName))},htmlBuilder:Yr,mathmlBuilder:Wr}),Or({type:"array",names:["matrix","pmatrix","bmatrix","Bmatrix","vmatrix","Vmatrix","matrix*","pmatrix*","bmatrix*","Bmatrix*","vmatrix*","Vmatrix*"],props:{numArgs:0},handler:function(e){var t={matrix:null,pmatrix:["(",")"],bmatrix:["[","]"],Bmatrix:["\\{","\\}"],vmatrix:["|","|"],Vmatrix:["\\Vert","\\Vert"]}[e.envName.replace("*","")],r="c",a={hskipBeforeAndAfter:!1,cols:[{type:"align",align:r}]};if("*"===e.envName.charAt(e.envName.length-1)){var i=e.parser;if(i.consumeSpaces(),"["===i.fetch().text){if(i.consume(),i.consumeSpaces(),r=i.fetch().text,-1==="lcr".indexOf(r))throw new n("Expected l or c or r",i.nextToken);i.consume(),i.consumeSpaces(),i.expect("]"),i.consume(),a.cols=[{type:"align",align:r}]}}var o=Gr(e.parser,a,Ur(e.envName)),s=Math.max.apply(Math,[0].concat(o.body.map((function(e){return e.length}))));return o.cols=new Array(s).fill({type:"align",align:r}),t?{type:"leftright",mode:e.mode,body:[o],left:t[0],right:t[1],rightColor:void 0}:o},htmlBuilder:Yr,mathmlBuilder:Wr}),Or({type:"array",names:["smallmatrix"],props:{numArgs:0},handler:function(e){var t=Gr(e.parser,{arraystretch:.5},"script");return t.colSeparationType="small",t},htmlBuilder:Yr,mathmlBuilder:Wr}),Or({type:"array",names:["subarray"],props:{numArgs:1},handler:function(e,t){var r=(Xt(t[0])?[t[0]]:Ut(t[0],"ordgroup").body).map((function(e){var t=Yt(e).text;if(-1!=="lc".indexOf(t))return{type:"align",align:t};throw new n("Unknown column alignment: "+t,e)}));if(r.length>1)throw new n("{subarray} can contain only one column");var a={cols:r,hskipBeforeAndAfter:!1,arraystretch:.5};if((a=Gr(e.parser,a,"script")).body.length>0&&a.body[0].length>1)throw new n("{subarray} can contain only one column");return a},htmlBuilder:Yr,mathmlBuilder:Wr}),Or({type:"array",names:["cases","dcases","rcases","drcases"],props:{numArgs:0},handler:function(e){var t=Gr(e.parser,{arraystretch:1.2,cols:[{type:"align",align:"l",pregap:0,postgap:1},{type:"align",align:"l",pregap:0,postgap:0}]},Ur(e.envName));return{type:"leftright",mode:e.mode,body:[t],left:e.envName.indexOf("r")>-1?".":"\\{",right:e.envName.indexOf("r")>-1?"\\}":".",rightColor:void 0}},htmlBuilder:Yr,mathmlBuilder:Wr}),Or({type:"array",names:["align","align*","aligned","split"],props:{numArgs:0},handler:_r,htmlBuilder:Yr,mathmlBuilder:Wr}),Or({type:"array",names:["gathered","gather","gather*"],props:{numArgs:0},handler:function(e){l.contains(["gather","gather*"],e.envName)&&Fr(e);var t={cols:[{type:"align",align:"c"}],addJot:!0,colSeparationType:"gather",autoTag:Vr(e.envName),emptySingleRow:!0,leqno:e.parser.settings.leqno};return Gr(e.parser,t,"display")},htmlBuilder:Yr,mathmlBuilder:Wr}),Or({type:"array",names:["alignat","alignat*","alignedat"],props:{numArgs:1},handler:_r,htmlBuilder:Yr,mathmlBuilder:Wr}),Or({type:"array",names:["equation","equation*"],props:{numArgs:0},handler:function(e){Fr(e);var t={autoTag:Vr(e.envName),emptySingleRow:!0,singleRow:!0,maxNumCols:1,leqno:e.parser.settings.leqno};return Gr(e.parser,t,"display")},htmlBuilder:Yr,mathmlBuilder:Wr}),Or({type:"array",names:["CD"],props:{numArgs:0},handler:function(e){return Fr(e),function(e){var t=[];for(e.gullet.beginGroup(),e.gullet.macros.set("\\cr","\\\\\\relax"),e.gullet.beginGroup();;){t.push(e.parseExpression(!1,"\\\\")),e.gullet.endGroup(),e.gullet.beginGroup();var r=e.fetch().text;if("&"!==r&&"\\\\"!==r){if("\\end"===r){0===t[t.length-1].length&&t.pop();break}throw new n("Expected \\\\ or \\cr or \\end",e.nextToken)}e.consume()}for(var a,i,o=[],s=[o],l=0;l-1);else{if(!("<>AV".indexOf(u)>-1))throw new n('Expected one of "<>AV=|." after @',h[c]);for(var d=0;d<2;d++){for(var f=!0,g=c+1;g=x.SCRIPT.id?r.text():x.DISPLAY:"text"===e&&r.size===x.DISPLAY.size?r=x.TEXT:"script"===e?r=x.SCRIPT:"scriptscript"===e&&(r=x.SCRIPTSCRIPT),r},nn=function(e,t){var r,n=rn(e.size,t.style),a=n.fracNum(),i=n.fracDen();r=t.havingStyle(a);var o=wt(e.numer,r,t);if(e.continued){var s=8.5/t.fontMetrics().ptPerEm,l=3.5/t.fontMetrics().ptPerEm;o.height=o.height0?3*c:7*c,d=t.fontMetrics().denom1):(m>0?(u=t.fontMetrics().num2,p=c):(u=t.fontMetrics().num3,p=3*c),d=t.fontMetrics().denom2),h){var w=t.fontMetrics().axisHeight;u-o.depth-(w+.5*m)0&&(t="."===(t=e)?null:t),t};ot({type:"genfrac",names:["\\genfrac"],props:{numArgs:6,allowedInArgument:!0,argTypes:["math","math","size","text","math","math"]},handler:function(e,t){var r,n=e.parser,a=t[4],i=t[5],o=lt(t[0]),s="atom"===o.type&&"open"===o.family?sn(o.text):null,l=lt(t[1]),h="atom"===l.type&&"close"===l.family?sn(l.text):null,m=Ut(t[2],"size"),c=null;r=!!m.isBlank||(c=m.value).number>0;var u="auto",p=t[3];if("ordgroup"===p.type){if(p.body.length>0){var d=Ut(p.body[0],"textord");u=on[Number(d.text)]}}else p=Ut(p,"textord"),u=on[Number(p.text)];return{type:"genfrac",mode:n.mode,numer:a,denom:i,continued:!1,hasBarLine:r,barSize:c,leftDelim:s,rightDelim:h,size:u}},htmlBuilder:nn,mathmlBuilder:an}),ot({type:"infix",names:["\\above"],props:{numArgs:1,argTypes:["size"],infix:!0},handler:function(e,t){var r=e.parser,n=(e.funcName,e.token);return{type:"infix",mode:r.mode,replaceWith:"\\\\abovefrac",size:Ut(t[0],"size").value,token:n}}}),ot({type:"genfrac",names:["\\\\abovefrac"],props:{numArgs:3,argTypes:["math","size","math"]},handler:function(e,t){var r=e.parser,n=(e.funcName,t[0]),a=function(e){if(!e)throw new Error("Expected non-null, but got "+String(e));return e}(Ut(t[1],"infix").size),i=t[2],o=a.number>0;return{type:"genfrac",mode:r.mode,numer:n,denom:i,continued:!1,hasBarLine:o,barSize:a,leftDelim:null,rightDelim:null,size:"auto"}},htmlBuilder:nn,mathmlBuilder:an});var ln=function(e,t){var r,n,a=t.style;"supsub"===e.type?(r=e.sup?wt(e.sup,t.havingStyle(a.sup()),t):wt(e.sub,t.havingStyle(a.sub()),t),n=Ut(e.base,"horizBrace")):n=Ut(e,"horizBrace");var i,o=wt(n.base,t.havingBaseStyle(x.DISPLAY)),s=Gt(n,t);if(n.isOver?(i=Ke.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:o},{type:"kern",size:.1},{type:"elem",elem:s}]},t)).children[0].children[0].children[1].classes.push("svg-align"):(i=Ke.makeVList({positionType:"bottom",positionData:o.depth+.1+s.height,children:[{type:"elem",elem:s},{type:"kern",size:.1},{type:"elem",elem:o}]},t)).children[0].children[0].children[0].classes.push("svg-align"),r){var l=Ke.makeSpan(["mord",n.isOver?"mover":"munder"],[i],t);i=n.isOver?Ke.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:l},{type:"kern",size:.2},{type:"elem",elem:r}]},t):Ke.makeVList({positionType:"bottom",positionData:l.depth+.2+r.height+r.depth,children:[{type:"elem",elem:r},{type:"kern",size:.2},{type:"elem",elem:l}]},t)}return Ke.makeSpan(["mord",n.isOver?"mover":"munder"],[i],t)};ot({type:"horizBrace",names:["\\overbrace","\\underbrace"],props:{numArgs:1},handler:function(e,t){var r=e.parser,n=e.funcName;return{type:"horizBrace",mode:r.mode,label:n,isOver:/^\\over/.test(n),base:t[0]}},htmlBuilder:ln,mathmlBuilder:function(e,t){var r=Vt(e.label);return new Tt.MathNode(e.isOver?"mover":"munder",[Rt(e.base,t),r])}}),ot({type:"href",names:["\\href"],props:{numArgs:2,argTypes:["url","original"],allowedInText:!0},handler:function(e,t){var r=e.parser,n=t[1],a=Ut(t[0],"url").url;return r.settings.isTrusted({command:"\\href",url:a})?{type:"href",mode:r.mode,href:a,body:ht(n)}:r.formatUnsupportedCmd("\\href")},htmlBuilder:function(e,t){var r=ft(e.body,t,!1);return Ke.makeAnchor(e.href,[],r,t)},mathmlBuilder:function(e,t){var r=It(e.body,t);return r instanceof zt||(r=new zt("mrow",[r])),r.setAttribute("href",e.href),r}}),ot({type:"href",names:["\\url"],props:{numArgs:1,argTypes:["url"],allowedInText:!0},handler:function(e,t){var r=e.parser,n=Ut(t[0],"url").url;if(!r.settings.isTrusted({command:"\\url",url:n}))return r.formatUnsupportedCmd("\\url");for(var a=[],i=0;i0&&(n=F(e.totalheight,t)-r);var a=0;e.width.number>0&&(a=F(e.width,t));var i={height:V(r+n)};a>0&&(i.width=V(a)),n>0&&(i.verticalAlign=V(-n));var o=new j(e.src,e.alt,i);return o.height=r,o.depth=n,o},mathmlBuilder:function(e,t){var r=new Tt.MathNode("mglyph",[]);r.setAttribute("alt",e.alt);var n=F(e.height,t),a=0;if(e.totalheight.number>0&&(a=F(e.totalheight,t)-n,r.setAttribute("valign",V(-a))),r.setAttribute("height",V(n+a)),e.width.number>0){var i=F(e.width,t);r.setAttribute("width",V(i))}return r.setAttribute("src",e.src),r}}),ot({type:"kern",names:["\\kern","\\mkern","\\hskip","\\mskip"],props:{numArgs:1,argTypes:["size"],primitive:!0,allowedInText:!0},handler:function(e,t){var r=e.parser,n=e.funcName,a=Ut(t[0],"size");if(r.settings.strict){var i="m"===n[1],o="mu"===a.value.unit;i?(o||r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" supports only mu units, not "+a.value.unit+" units"),"math"!==r.mode&&r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" works only in math mode")):o&&r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" doesn't support mu units")}return{type:"kern",mode:r.mode,dimension:a.value}},htmlBuilder:function(e,t){return Ke.makeGlue(e.dimension,t)},mathmlBuilder:function(e,t){var r=F(e.dimension,t);return new Tt.SpaceNode(r)}}),ot({type:"lap",names:["\\mathllap","\\mathrlap","\\mathclap"],props:{numArgs:1,allowedInText:!0},handler:function(e,t){var r=e.parser,n=e.funcName,a=t[0];return{type:"lap",mode:r.mode,alignment:n.slice(5),body:a}},htmlBuilder:function(e,t){var r;"clap"===e.alignment?(r=Ke.makeSpan([],[wt(e.body,t)]),r=Ke.makeSpan(["inner"],[r],t)):r=Ke.makeSpan(["inner"],[wt(e.body,t)]);var n=Ke.makeSpan(["fix"],[]),a=Ke.makeSpan([e.alignment],[r,n],t),i=Ke.makeSpan(["strut"]);return i.style.height=V(a.height+a.depth),a.depth&&(i.style.verticalAlign=V(-a.depth)),a.children.unshift(i),a=Ke.makeSpan(["thinbox"],[a],t),Ke.makeSpan(["mord","vbox"],[a],t)},mathmlBuilder:function(e,t){var r=new Tt.MathNode("mpadded",[Rt(e.body,t)]);if("rlap"!==e.alignment){var n="llap"===e.alignment?"-1":"-0.5";r.setAttribute("lspace",n+"width")}return r.setAttribute("width","0px"),r}}),ot({type:"styling",names:["\\(","$"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler:function(e,t){var r=e.funcName,n=e.parser,a=n.mode;n.switchMode("math");var i="\\("===r?"\\)":"$",o=n.parseExpression(!1,i);return n.expect(i),n.switchMode(a),{type:"styling",mode:n.mode,style:"text",body:o}}}),ot({type:"text",names:["\\)","\\]"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler:function(e,t){throw new n("Mismatched "+e.funcName)}});var mn=function(e,t){switch(t.style.size){case x.DISPLAY.size:return e.display;case x.TEXT.size:return e.text;case x.SCRIPT.size:return e.script;case x.SCRIPTSCRIPT.size:return e.scriptscript;default:return e.text}};ot({type:"mathchoice",names:["\\mathchoice"],props:{numArgs:4,primitive:!0},handler:function(e,t){return{type:"mathchoice",mode:e.parser.mode,display:ht(t[0]),text:ht(t[1]),script:ht(t[2]),scriptscript:ht(t[3])}},htmlBuilder:function(e,t){var r=mn(e,t),n=ft(r,t,!1);return Ke.makeFragment(n)},mathmlBuilder:function(e,t){var r=mn(e,t);return It(r,t)}});var cn=function(e,t,r,n,a,i,o){e=Ke.makeSpan([],[e]);var s,h,m,c=r&&l.isCharacterBox(r);if(t){var u=wt(t,n.havingStyle(a.sup()),n);h={elem:u,kern:Math.max(n.fontMetrics().bigOpSpacing1,n.fontMetrics().bigOpSpacing3-u.depth)}}if(r){var p=wt(r,n.havingStyle(a.sub()),n);s={elem:p,kern:Math.max(n.fontMetrics().bigOpSpacing2,n.fontMetrics().bigOpSpacing4-p.height)}}if(h&&s){var d=n.fontMetrics().bigOpSpacing5+s.elem.height+s.elem.depth+s.kern+e.depth+o;m=Ke.makeVList({positionType:"bottom",positionData:d,children:[{type:"kern",size:n.fontMetrics().bigOpSpacing5},{type:"elem",elem:s.elem,marginLeft:V(-i)},{type:"kern",size:s.kern},{type:"elem",elem:e},{type:"kern",size:h.kern},{type:"elem",elem:h.elem,marginLeft:V(i)},{type:"kern",size:n.fontMetrics().bigOpSpacing5}]},n)}else if(s){var f=e.height-o;m=Ke.makeVList({positionType:"top",positionData:f,children:[{type:"kern",size:n.fontMetrics().bigOpSpacing5},{type:"elem",elem:s.elem,marginLeft:V(-i)},{type:"kern",size:s.kern},{type:"elem",elem:e}]},n)}else{if(!h)return e;var g=e.depth+o;m=Ke.makeVList({positionType:"bottom",positionData:g,children:[{type:"elem",elem:e},{type:"kern",size:h.kern},{type:"elem",elem:h.elem,marginLeft:V(i)},{type:"kern",size:n.fontMetrics().bigOpSpacing5}]},n)}var v=[m];if(s&&0!==i&&!c){var b=Ke.makeSpan(["mspace"],[],n);b.style.marginRight=V(i),v.unshift(b)}return Ke.makeSpan(["mop","op-limits"],v,n)},un=["\\smallint"],pn=function(e,t){var r,n,a,i=!1;"supsub"===e.type?(r=e.sup,n=e.sub,a=Ut(e.base,"op"),i=!0):a=Ut(e,"op");var o,s=t.style,h=!1;if(s.size===x.DISPLAY.size&&a.symbol&&!l.contains(un,a.name)&&(h=!0),a.symbol){var m=h?"Size2-Regular":"Size1-Regular",c="";if("\\oiint"!==a.name&&"\\oiiint"!==a.name||(c=a.name.substr(1),a.name="oiint"===c?"\\iint":"\\iiint"),o=Ke.makeSymbol(a.name,m,"math",t,["mop","op-symbol",h?"large-op":"small-op"]),c.length>0){var u=o.italic,p=Ke.staticSvg(c+"Size"+(h?"2":"1"),t);o=Ke.makeVList({positionType:"individualShift",children:[{type:"elem",elem:o,shift:0},{type:"elem",elem:p,shift:h?.08:0}]},t),a.name="\\"+c,o.classes.unshift("mop"),o.italic=u}}else if(a.body){var d=ft(a.body,t,!0);1===d.length&&d[0]instanceof Z?(o=d[0]).classes[0]="mop":o=Ke.makeSpan(["mop"],d,t)}else{for(var f=[],g=1;g0){for(var s=a.body.map((function(e){var t=e.text;return"string"==typeof t?{type:"textord",mode:e.mode,text:t}:e})),l=ft(s,t.withFont("mathrm"),!0),h=0;h=0?s.setAttribute("height",V(a)):(s.setAttribute("height",V(a)),s.setAttribute("depth",V(-a))),s.setAttribute("voffset",V(a)),s}});var yn=["\\tiny","\\sixptsize","\\scriptsize","\\footnotesize","\\small","\\normalsize","\\large","\\Large","\\LARGE","\\huge","\\Huge"];ot({type:"sizing",names:yn,props:{numArgs:0,allowedInText:!0},handler:function(e,t){var r=e.breakOnTokenText,n=e.funcName,a=e.parser,i=a.parseExpression(!1,r);return{type:"sizing",mode:a.mode,size:yn.indexOf(n)+1,body:i}},htmlBuilder:function(e,t){var r=t.havingSize(e.size);return bn(e.body,r,t)},mathmlBuilder:function(e,t){var r=t.havingSize(e.size),n=Nt(e.body,r),a=new Tt.MathNode("mstyle",n);return a.setAttribute("mathsize",V(r.sizeMultiplier)),a}}),ot({type:"smash",names:["\\smash"],props:{numArgs:1,numOptionalArgs:1,allowedInText:!0},handler:function(e,t,r){var n=e.parser,a=!1,i=!1,o=r[0]&&Ut(r[0],"ordgroup");if(o)for(var s="",l=0;lr.height+r.depth+i&&(i=(i+c-r.height-r.depth)/2);var u=l.height-r.height-i-h;r.style.paddingLeft=V(m);var p=Ke.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:r,wrapperClasses:["svg-align"]},{type:"kern",size:-(r.height+u)},{type:"elem",elem:l},{type:"kern",size:h}]},t);if(e.index){var d=t.havingStyle(x.SCRIPTSCRIPT),f=wt(e.index,d,t),g=.6*(p.height-p.depth),v=Ke.makeVList({positionType:"shift",positionData:-g,children:[{type:"elem",elem:f}]},t),b=Ke.makeSpan(["root"],[v]);return Ke.makeSpan(["mord","sqrt"],[b,p],t)}return Ke.makeSpan(["mord","sqrt"],[p],t)},mathmlBuilder:function(e,t){var r=e.body,n=e.index;return n?new Tt.MathNode("mroot",[Rt(r,t),Rt(n,t)]):new Tt.MathNode("msqrt",[Rt(r,t)])}});var xn={display:x.DISPLAY,text:x.TEXT,script:x.SCRIPT,scriptscript:x.SCRIPTSCRIPT};ot({type:"styling",names:["\\displaystyle","\\textstyle","\\scriptstyle","\\scriptscriptstyle"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler:function(e,t){var r=e.breakOnTokenText,n=e.funcName,a=e.parser,i=a.parseExpression(!0,r),o=n.slice(1,n.length-5);return{type:"styling",mode:a.mode,style:o,body:i}},htmlBuilder:function(e,t){var r=xn[e.style],n=t.havingStyle(r).withFont("");return bn(e.body,n,t)},mathmlBuilder:function(e,t){var r=xn[e.style],n=t.havingStyle(r),a=Nt(e.body,n),i=new Tt.MathNode("mstyle",a),o={display:["0","true"],text:["0","false"],script:["1","false"],scriptscript:["2","false"]}[e.style];return i.setAttribute("scriptlevel",o[0]),i.setAttribute("displaystyle",o[1]),i}});var wn=function(e,t){var r=e.base;return r?"op"===r.type?r.limits&&(t.style.size===x.DISPLAY.size||r.alwaysHandleSupSub)?pn:null:"operatorname"===r.type?r.alwaysHandleSupSub&&(t.style.size===x.DISPLAY.size||r.limits)?vn:null:"accent"===r.type?l.isCharacterBox(r.base)?Wt:null:"horizBrace"===r.type&&!e.sub===r.isOver?ln:null:null};st({type:"supsub",htmlBuilder:function(e,t){var r=wn(e,t);if(r)return r(e,t);var n,a,i,o=e.base,s=e.sup,h=e.sub,m=wt(o,t),c=t.fontMetrics(),u=0,p=0,d=o&&l.isCharacterBox(o);if(s){var f=t.havingStyle(t.style.sup());n=wt(s,f,t),d||(u=m.height-f.fontMetrics().supDrop*f.sizeMultiplier/t.sizeMultiplier)}if(h){var g=t.havingStyle(t.style.sub());a=wt(h,g,t),d||(p=m.depth+g.fontMetrics().subDrop*g.sizeMultiplier/t.sizeMultiplier)}i=t.style===x.DISPLAY?c.sup1:t.style.cramped?c.sup3:c.sup2;var v,b=t.sizeMultiplier,y=V(.5/c.ptPerEm/b),w=null;if(a){var k=e.base&&"op"===e.base.type&&e.base.name&&("\\oiint"===e.base.name||"\\oiiint"===e.base.name);(m instanceof Z||k)&&(w=V(-m.italic))}if(n&&a){u=Math.max(u,i,n.depth+.25*c.xHeight),p=Math.max(p,c.sub2);var S=4*c.defaultRuleThickness;if(u-n.depth-(a.height-p)0&&(u+=M,p-=M)}var z=[{type:"elem",elem:a,shift:p,marginRight:y,marginLeft:w},{type:"elem",elem:n,shift:-u,marginRight:y}];v=Ke.makeVList({positionType:"individualShift",children:z},t)}else if(a){p=Math.max(p,c.sub1,a.height-.8*c.xHeight);var A=[{type:"elem",elem:a,marginLeft:w,marginRight:y}];v=Ke.makeVList({positionType:"shift",positionData:p,children:A},t)}else{if(!n)throw new Error("supsub must have either sup or sub.");u=Math.max(u,i,n.depth+.25*c.xHeight),v=Ke.makeVList({positionType:"shift",positionData:-u,children:[{type:"elem",elem:n,marginRight:y}]},t)}var T=yt(m,"right")||"mord";return Ke.makeSpan([T],[m,Ke.makeSpan(["msupsub"],[v])],t)},mathmlBuilder:function(e,t){var r,n=!1;e.base&&"horizBrace"===e.base.type&&!!e.sup===e.base.isOver&&(n=!0,r=e.base.isOver),!e.base||"op"!==e.base.type&&"operatorname"!==e.base.type||(e.base.parentIsSupSub=!0);var a,i=[Rt(e.base,t)];if(e.sub&&i.push(Rt(e.sub,t)),e.sup&&i.push(Rt(e.sup,t)),n)a=r?"mover":"munder";else if(e.sub)if(e.sup){var o=e.base;a=o&&"op"===o.type&&o.limits&&t.style===x.DISPLAY||o&&"operatorname"===o.type&&o.alwaysHandleSupSub&&(t.style===x.DISPLAY||o.limits)?"munderover":"msubsup"}else{var s=e.base;a=s&&"op"===s.type&&s.limits&&(t.style===x.DISPLAY||s.alwaysHandleSupSub)||s&&"operatorname"===s.type&&s.alwaysHandleSupSub&&(s.limits||t.style===x.DISPLAY)?"munder":"msub"}else{var l=e.base;a=l&&"op"===l.type&&l.limits&&(t.style===x.DISPLAY||l.alwaysHandleSupSub)||l&&"operatorname"===l.type&&l.alwaysHandleSupSub&&(l.limits||t.style===x.DISPLAY)?"mover":"msup"}return new Tt.MathNode(a,i)}}),st({type:"atom",htmlBuilder:function(e,t){return Ke.mathsym(e.text,e.mode,t,["m"+e.family])},mathmlBuilder:function(e,t){var r=new Tt.MathNode("mo",[Bt(e.text,e.mode)]);if("bin"===e.family){var n=qt(e,t);"bold-italic"===n&&r.setAttribute("mathvariant",n)}else"punct"===e.family?r.setAttribute("separator","true"):"open"!==e.family&&"close"!==e.family||r.setAttribute("stretchy","false");return r}});var kn={mi:"italic",mn:"normal",mtext:"normal"};st({type:"mathord",htmlBuilder:function(e,t){return Ke.makeOrd(e,t,"mathord")},mathmlBuilder:function(e,t){var r=new Tt.MathNode("mi",[Bt(e.text,e.mode,t)]),n=qt(e,t)||"italic";return n!==kn[r.type]&&r.setAttribute("mathvariant",n),r}}),st({type:"textord",htmlBuilder:function(e,t){return Ke.makeOrd(e,t,"textord")},mathmlBuilder:function(e,t){var r,n=Bt(e.text,e.mode,t),a=qt(e,t)||"normal";return r="text"===e.mode?new Tt.MathNode("mtext",[n]):/[0-9]/.test(e.text)?new Tt.MathNode("mn",[n]):"\\prime"===e.text?new Tt.MathNode("mo",[n]):new Tt.MathNode("mi",[n]),a!==kn[r.type]&&r.setAttribute("mathvariant",a),r}});var Sn={"\\nobreak":"nobreak","\\allowbreak":"allowbreak"},Mn={" ":{},"\\ ":{},"~":{className:"nobreak"},"\\space":{},"\\nobreakspace":{className:"nobreak"}};st({type:"spacing",htmlBuilder:function(e,t){if(Mn.hasOwnProperty(e.text)){var r=Mn[e.text].className||"";if("text"===e.mode){var a=Ke.makeOrd(e,t,"textord");return a.classes.push(r),a}return Ke.makeSpan(["mspace",r],[Ke.mathsym(e.text,e.mode,t)],t)}if(Sn.hasOwnProperty(e.text))return Ke.makeSpan(["mspace",Sn[e.text]],[],t);throw new n('Unknown type of space "'+e.text+'"')},mathmlBuilder:function(e,t){if(!Mn.hasOwnProperty(e.text)){if(Sn.hasOwnProperty(e.text))return new Tt.MathNode("mspace");throw new n('Unknown type of space "'+e.text+'"')}return new Tt.MathNode("mtext",[new Tt.TextNode("\xa0")])}});var zn=function(){var e=new Tt.MathNode("mtd",[]);return e.setAttribute("width","50%"),e};st({type:"tag",mathmlBuilder:function(e,t){var r=new Tt.MathNode("mtable",[new Tt.MathNode("mtr",[zn(),new Tt.MathNode("mtd",[It(e.body,t)]),zn(),new Tt.MathNode("mtd",[It(e.tag,t)])])]);return r.setAttribute("width","100%"),r}});var An={"\\text":void 0,"\\textrm":"textrm","\\textsf":"textsf","\\texttt":"texttt","\\textnormal":"textrm"},Tn={"\\textbf":"textbf","\\textmd":"textmd"},Bn={"\\textit":"textit","\\textup":"textup"},Cn=function(e,t){var r=e.font;return r?An[r]?t.withTextFontFamily(An[r]):Tn[r]?t.withTextFontWeight(Tn[r]):t.withTextFontShape(Bn[r]):t};ot({type:"text",names:["\\text","\\textrm","\\textsf","\\texttt","\\textnormal","\\textbf","\\textmd","\\textit","\\textup"],props:{numArgs:1,argTypes:["text"],allowedInArgument:!0,allowedInText:!0},handler:function(e,t){var r=e.parser,n=e.funcName,a=t[0];return{type:"text",mode:r.mode,body:ht(a),font:n}},htmlBuilder:function(e,t){var r=Cn(e,t),n=ft(e.body,r,!0);return Ke.makeSpan(["mord","text"],n,r)},mathmlBuilder:function(e,t){var r=Cn(e,t);return It(e.body,r)}}),ot({type:"underline",names:["\\underline"],props:{numArgs:1,allowedInText:!0},handler:function(e,t){return{type:"underline",mode:e.parser.mode,body:t[0]}},htmlBuilder:function(e,t){var r=wt(e.body,t),n=Ke.makeLineSpan("underline-line",t),a=t.fontMetrics().defaultRuleThickness,i=Ke.makeVList({positionType:"top",positionData:r.height,children:[{type:"kern",size:a},{type:"elem",elem:n},{type:"kern",size:3*a},{type:"elem",elem:r}]},t);return Ke.makeSpan(["mord","underline"],[i],t)},mathmlBuilder:function(e,t){var r=new Tt.MathNode("mo",[new Tt.TextNode("\u203e")]);r.setAttribute("stretchy","true");var n=new Tt.MathNode("munder",[Rt(e.body,t),r]);return n.setAttribute("accentunder","true"),n}}),ot({type:"vcenter",names:["\\vcenter"],props:{numArgs:1,argTypes:["original"],allowedInText:!1},handler:function(e,t){return{type:"vcenter",mode:e.parser.mode,body:t[0]}},htmlBuilder:function(e,t){var r=wt(e.body,t),n=t.fontMetrics().axisHeight,a=.5*(r.height-n-(r.depth+n));return Ke.makeVList({positionType:"shift",positionData:a,children:[{type:"elem",elem:r}]},t)},mathmlBuilder:function(e,t){return new Tt.MathNode("mpadded",[Rt(e.body,t)],["vcenter"])}}),ot({type:"verb",names:["\\verb"],props:{numArgs:0,allowedInText:!0},handler:function(e,t,r){throw new n("\\verb ended by end of line instead of matching delimiter")},htmlBuilder:function(e,t){for(var r=qn(e),n=[],a=t.havingStyle(t.style.text()),i=0;i0;)this.endGroup()},t.has=function(e){return this.current.hasOwnProperty(e)||this.builtins.hasOwnProperty(e)},t.get=function(e){return this.current.hasOwnProperty(e)?this.current[e]:this.builtins[e]},t.set=function(e,t,r){if(void 0===r&&(r=!1),r){for(var n=0;n0&&(this.undefStack[this.undefStack.length-1][e]=t)}else{var a=this.undefStack[this.undefStack.length-1];a&&!a.hasOwnProperty(e)&&(a[e]=this.current[e])}null==t?delete this.current[e]:this.current[e]=t},e}(),Hn=Hr;Er("\\noexpand",(function(e){var t=e.popToken();return e.isExpandable(t.text)&&(t.noexpand=!0,t.treatAsRelax=!0),{tokens:[t],numArgs:0}})),Er("\\expandafter",(function(e){var t=e.popToken();return e.expandOnce(!0),{tokens:[t],numArgs:0}})),Er("\\@firstoftwo",(function(e){return{tokens:e.consumeArgs(2)[0],numArgs:0}})),Er("\\@secondoftwo",(function(e){return{tokens:e.consumeArgs(2)[1],numArgs:0}})),Er("\\@ifnextchar",(function(e){var t=e.consumeArgs(3);e.consumeSpaces();var r=e.future();return 1===t[0].length&&t[0][0].text===r.text?{tokens:t[1],numArgs:0}:{tokens:t[2],numArgs:0}})),Er("\\@ifstar","\\@ifnextchar *{\\@firstoftwo{#1}}"),Er("\\TextOrMath",(function(e){var t=e.consumeArgs(2);return"text"===e.mode?{tokens:t[0],numArgs:0}:{tokens:t[1],numArgs:0}}));var En={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};Er("\\char",(function(e){var t,r=e.popToken(),a="";if("'"===r.text)t=8,r=e.popToken();else if('"'===r.text)t=16,r=e.popToken();else if("`"===r.text)if("\\"===(r=e.popToken()).text[0])a=r.text.charCodeAt(1);else{if("EOF"===r.text)throw new n("\\char` missing argument");a=r.text.charCodeAt(0)}else t=10;if(t){if(null==(a=En[r.text])||a>=t)throw new n("Invalid base-"+t+" digit "+r.text);for(var i;null!=(i=En[e.future().text])&&i":"\\dotsb","-":"\\dotsb","*":"\\dotsb",":":"\\dotsb","\\DOTSB":"\\dotsb","\\coprod":"\\dotsb","\\bigvee":"\\dotsb","\\bigwedge":"\\dotsb","\\biguplus":"\\dotsb","\\bigcap":"\\dotsb","\\bigcup":"\\dotsb","\\prod":"\\dotsb","\\sum":"\\dotsb","\\bigotimes":"\\dotsb","\\bigoplus":"\\dotsb","\\bigodot":"\\dotsb","\\bigsqcup":"\\dotsb","\\And":"\\dotsb","\\longrightarrow":"\\dotsb","\\Longrightarrow":"\\dotsb","\\longleftarrow":"\\dotsb","\\Longleftarrow":"\\dotsb","\\longleftrightarrow":"\\dotsb","\\Longleftrightarrow":"\\dotsb","\\mapsto":"\\dotsb","\\longmapsto":"\\dotsb","\\hookrightarrow":"\\dotsb","\\doteq":"\\dotsb","\\mathbin":"\\dotsb","\\mathrel":"\\dotsb","\\relbar":"\\dotsb","\\Relbar":"\\dotsb","\\xrightarrow":"\\dotsb","\\xleftarrow":"\\dotsb","\\DOTSI":"\\dotsi","\\int":"\\dotsi","\\oint":"\\dotsi","\\iint":"\\dotsi","\\iiint":"\\dotsi","\\iiiint":"\\dotsi","\\idotsint":"\\dotsi","\\DOTSX":"\\dotsx"};Er("\\dots",(function(e){var t="\\dotso",r=e.expandAfterFuture().text;return r in Dn?t=Dn[r]:("\\not"===r.substr(0,4)||r in ae.math&&l.contains(["bin","rel"],ae.math[r].group))&&(t="\\dotsb"),t}));var Pn={")":!0,"]":!0,"\\rbrack":!0,"\\}":!0,"\\rbrace":!0,"\\rangle":!0,"\\rceil":!0,"\\rfloor":!0,"\\rgroup":!0,"\\rmoustache":!0,"\\right":!0,"\\bigr":!0,"\\biggr":!0,"\\Bigr":!0,"\\Biggr":!0,$:!0,";":!0,".":!0,",":!0};Er("\\dotso",(function(e){return e.future().text in Pn?"\\ldots\\,":"\\ldots"})),Er("\\dotsc",(function(e){var t=e.future().text;return t in Pn&&","!==t?"\\ldots\\,":"\\ldots"})),Er("\\cdots",(function(e){return e.future().text in Pn?"\\@cdots\\,":"\\@cdots"})),Er("\\dotsb","\\cdots"),Er("\\dotsm","\\cdots"),Er("\\dotsi","\\!\\cdots"),Er("\\dotsx","\\ldots\\,"),Er("\\DOTSI","\\relax"),Er("\\DOTSB","\\relax"),Er("\\DOTSX","\\relax"),Er("\\tmspace","\\TextOrMath{\\kern#1#3}{\\mskip#1#2}\\relax"),Er("\\,","\\tmspace+{3mu}{.1667em}"),Er("\\thinspace","\\,"),Er("\\>","\\mskip{4mu}"),Er("\\:","\\tmspace+{4mu}{.2222em}"),Er("\\medspace","\\:"),Er("\\;","\\tmspace+{5mu}{.2777em}"),Er("\\thickspace","\\;"),Er("\\!","\\tmspace-{3mu}{.1667em}"),Er("\\negthinspace","\\!"),Er("\\negmedspace","\\tmspace-{4mu}{.2222em}"),Er("\\negthickspace","\\tmspace-{5mu}{.277em}"),Er("\\enspace","\\kern.5em "),Er("\\enskip","\\hskip.5em\\relax"),Er("\\quad","\\hskip1em\\relax"),Er("\\qquad","\\hskip2em\\relax"),Er("\\tag","\\@ifstar\\tag@literal\\tag@paren"),Er("\\tag@paren","\\tag@literal{({#1})}"),Er("\\tag@literal",(function(e){if(e.macros.get("\\df@tag"))throw new n("Multiple \\tag");return"\\gdef\\df@tag{\\text{#1}}"})),Er("\\bmod","\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}\\mathbin{\\rm mod}\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}"),Er("\\pod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern8mu}{\\mkern8mu}{\\mkern8mu}(#1)"),Er("\\pmod","\\pod{{\\rm mod}\\mkern6mu#1}"),Er("\\mod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern12mu}{\\mkern12mu}{\\mkern12mu}{\\rm mod}\\,\\,#1"),Er("\\pmb","\\html@mathml{\\@binrel{#1}{\\mathrlap{#1}\\kern0.5px#1}}{\\mathbf{#1}}"),Er("\\newline","\\\\\\relax"),Er("\\TeX","\\textrm{\\html@mathml{T\\kern-.1667em\\raisebox{-.5ex}{E}\\kern-.125emX}{TeX}}");var Fn=V(T["Main-Regular"]["T".charCodeAt(0)][1]-.7*T["Main-Regular"]["A".charCodeAt(0)][1]);Er("\\LaTeX","\\textrm{\\html@mathml{L\\kern-.36em\\raisebox{"+Fn+"}{\\scriptstyle A}\\kern-.15em\\TeX}{LaTeX}}"),Er("\\KaTeX","\\textrm{\\html@mathml{K\\kern-.17em\\raisebox{"+Fn+"}{\\scriptstyle A}\\kern-.15em\\TeX}{KaTeX}}"),Er("\\hspace","\\@ifstar\\@hspacer\\@hspace"),Er("\\@hspace","\\hskip #1\\relax"),Er("\\@hspacer","\\rule{0pt}{0pt}\\hskip #1\\relax"),Er("\\ordinarycolon",":"),Er("\\vcentcolon","\\mathrel{\\mathop\\ordinarycolon}"),Er("\\dblcolon",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-.9mu}\\vcentcolon}}{\\mathop{\\char"2237}}'),Er("\\coloneqq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2254}}'),Er("\\Coloneqq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2237\\char"3d}}'),Er("\\coloneq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"3a\\char"2212}}'),Er("\\Coloneq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"2237\\char"2212}}'),Er("\\eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2255}}'),Er("\\Eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"3d\\char"2237}}'),Er("\\eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2239}}'),Er("\\Eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"2212\\char"2237}}'),Er("\\colonapprox",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"3a\\char"2248}}'),Er("\\Colonapprox",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"2237\\char"2248}}'),Er("\\colonsim",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"3a\\char"223c}}'),Er("\\Colonsim",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"2237\\char"223c}}'),Er("\u2237","\\dblcolon"),Er("\u2239","\\eqcolon"),Er("\u2254","\\coloneqq"),Er("\u2255","\\eqqcolon"),Er("\u2a74","\\Coloneqq"),Er("\\ratio","\\vcentcolon"),Er("\\coloncolon","\\dblcolon"),Er("\\colonequals","\\coloneqq"),Er("\\coloncolonequals","\\Coloneqq"),Er("\\equalscolon","\\eqqcolon"),Er("\\equalscoloncolon","\\Eqqcolon"),Er("\\colonminus","\\coloneq"),Er("\\coloncolonminus","\\Coloneq"),Er("\\minuscolon","\\eqcolon"),Er("\\minuscoloncolon","\\Eqcolon"),Er("\\coloncolonapprox","\\Colonapprox"),Er("\\coloncolonsim","\\Colonsim"),Er("\\simcolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\vcentcolon}"),Er("\\simcoloncolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\dblcolon}"),Er("\\approxcolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\vcentcolon}"),Er("\\approxcoloncolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\dblcolon}"),Er("\\notni","\\html@mathml{\\not\\ni}{\\mathrel{\\char`\u220c}}"),Er("\\limsup","\\DOTSB\\operatorname*{lim\\,sup}"),Er("\\liminf","\\DOTSB\\operatorname*{lim\\,inf}"),Er("\\injlim","\\DOTSB\\operatorname*{inj\\,lim}"),Er("\\projlim","\\DOTSB\\operatorname*{proj\\,lim}"),Er("\\varlimsup","\\DOTSB\\operatorname*{\\overline{lim}}"),Er("\\varliminf","\\DOTSB\\operatorname*{\\underline{lim}}"),Er("\\varinjlim","\\DOTSB\\operatorname*{\\underrightarrow{lim}}"),Er("\\varprojlim","\\DOTSB\\operatorname*{\\underleftarrow{lim}}"),Er("\\gvertneqq","\\html@mathml{\\@gvertneqq}{\u2269}"),Er("\\lvertneqq","\\html@mathml{\\@lvertneqq}{\u2268}"),Er("\\ngeqq","\\html@mathml{\\@ngeqq}{\u2271}"),Er("\\ngeqslant","\\html@mathml{\\@ngeqslant}{\u2271}"),Er("\\nleqq","\\html@mathml{\\@nleqq}{\u2270}"),Er("\\nleqslant","\\html@mathml{\\@nleqslant}{\u2270}"),Er("\\nshortmid","\\html@mathml{\\@nshortmid}{\u2224}"),Er("\\nshortparallel","\\html@mathml{\\@nshortparallel}{\u2226}"),Er("\\nsubseteqq","\\html@mathml{\\@nsubseteqq}{\u2288}"),Er("\\nsupseteqq","\\html@mathml{\\@nsupseteqq}{\u2289}"),Er("\\varsubsetneq","\\html@mathml{\\@varsubsetneq}{\u228a}"),Er("\\varsubsetneqq","\\html@mathml{\\@varsubsetneqq}{\u2acb}"),Er("\\varsupsetneq","\\html@mathml{\\@varsupsetneq}{\u228b}"),Er("\\varsupsetneqq","\\html@mathml{\\@varsupsetneqq}{\u2acc}"),Er("\\imath","\\html@mathml{\\@imath}{\u0131}"),Er("\\jmath","\\html@mathml{\\@jmath}{\u0237}"),Er("\\llbracket","\\html@mathml{\\mathopen{[\\mkern-3.2mu[}}{\\mathopen{\\char`\u27e6}}"),Er("\\rrbracket","\\html@mathml{\\mathclose{]\\mkern-3.2mu]}}{\\mathclose{\\char`\u27e7}}"),Er("\u27e6","\\llbracket"),Er("\u27e7","\\rrbracket"),Er("\\lBrace","\\html@mathml{\\mathopen{\\{\\mkern-3.2mu[}}{\\mathopen{\\char`\u2983}}"),Er("\\rBrace","\\html@mathml{\\mathclose{]\\mkern-3.2mu\\}}}{\\mathclose{\\char`\u2984}}"),Er("\u2983","\\lBrace"),Er("\u2984","\\rBrace"),Er("\\minuso","\\mathbin{\\html@mathml{{\\mathrlap{\\mathchoice{\\kern{0.145em}}{\\kern{0.145em}}{\\kern{0.1015em}}{\\kern{0.0725em}}\\circ}{-}}}{\\char`\u29b5}}"),Er("\u29b5","\\minuso"),Er("\\darr","\\downarrow"),Er("\\dArr","\\Downarrow"),Er("\\Darr","\\Downarrow"),Er("\\lang","\\langle"),Er("\\rang","\\rangle"),Er("\\uarr","\\uparrow"),Er("\\uArr","\\Uparrow"),Er("\\Uarr","\\Uparrow"),Er("\\N","\\mathbb{N}"),Er("\\R","\\mathbb{R}"),Er("\\Z","\\mathbb{Z}"),Er("\\alef","\\aleph"),Er("\\alefsym","\\aleph"),Er("\\Alpha","\\mathrm{A}"),Er("\\Beta","\\mathrm{B}"),Er("\\bull","\\bullet"),Er("\\Chi","\\mathrm{X}"),Er("\\clubs","\\clubsuit"),Er("\\cnums","\\mathbb{C}"),Er("\\Complex","\\mathbb{C}"),Er("\\Dagger","\\ddagger"),Er("\\diamonds","\\diamondsuit"),Er("\\empty","\\emptyset"),Er("\\Epsilon","\\mathrm{E}"),Er("\\Eta","\\mathrm{H}"),Er("\\exist","\\exists"),Er("\\harr","\\leftrightarrow"),Er("\\hArr","\\Leftrightarrow"),Er("\\Harr","\\Leftrightarrow"),Er("\\hearts","\\heartsuit"),Er("\\image","\\Im"),Er("\\infin","\\infty"),Er("\\Iota","\\mathrm{I}"),Er("\\isin","\\in"),Er("\\Kappa","\\mathrm{K}"),Er("\\larr","\\leftarrow"),Er("\\lArr","\\Leftarrow"),Er("\\Larr","\\Leftarrow"),Er("\\lrarr","\\leftrightarrow"),Er("\\lrArr","\\Leftrightarrow"),Er("\\Lrarr","\\Leftrightarrow"),Er("\\Mu","\\mathrm{M}"),Er("\\natnums","\\mathbb{N}"),Er("\\Nu","\\mathrm{N}"),Er("\\Omicron","\\mathrm{O}"),Er("\\plusmn","\\pm"),Er("\\rarr","\\rightarrow"),Er("\\rArr","\\Rightarrow"),Er("\\Rarr","\\Rightarrow"),Er("\\real","\\Re"),Er("\\reals","\\mathbb{R}"),Er("\\Reals","\\mathbb{R}"),Er("\\Rho","\\mathrm{P}"),Er("\\sdot","\\cdot"),Er("\\sect","\\S"),Er("\\spades","\\spadesuit"),Er("\\sub","\\subset"),Er("\\sube","\\subseteq"),Er("\\supe","\\supseteq"),Er("\\Tau","\\mathrm{T}"),Er("\\thetasym","\\vartheta"),Er("\\weierp","\\wp"),Er("\\Zeta","\\mathrm{Z}"),Er("\\argmin","\\DOTSB\\operatorname*{arg\\,min}"),Er("\\argmax","\\DOTSB\\operatorname*{arg\\,max}"),Er("\\plim","\\DOTSB\\mathop{\\operatorname{plim}}\\limits"),Er("\\bra","\\mathinner{\\langle{#1}|}"),Er("\\ket","\\mathinner{|{#1}\\rangle}"),Er("\\braket","\\mathinner{\\langle{#1}\\rangle}"),Er("\\Bra","\\left\\langle#1\\right|"),Er("\\Ket","\\left|#1\\right\\rangle");var Vn=function(e){return function(t){var r=t.consumeArg().tokens,n=t.consumeArg().tokens,a=t.consumeArg().tokens,i=t.consumeArg().tokens,o=t.macros.get("|"),s=t.macros.get("\\|");t.macros.beginGroup();var l=function(t){return function(r){e&&(r.macros.set("|",o),a.length&&r.macros.set("\\|",s));var i=t;!t&&a.length&&("|"===r.future().text&&(r.popToken(),i=!0));return{tokens:i?a:n,numArgs:0}}};t.macros.set("|",l(!1)),a.length&&t.macros.set("\\|",l(!0));var h=t.consumeArg().tokens,m=t.expandTokens([].concat(i,h,r));return t.macros.endGroup(),{tokens:m.reverse(),numArgs:0}}};Er("\\bra@ket",Vn(!1)),Er("\\bra@set",Vn(!0)),Er("\\Braket","\\bra@ket{\\left\\langle}{\\,\\middle\\vert\\,}{\\,\\middle\\vert\\,}{\\right\\rangle}"),Er("\\Set","\\bra@set{\\left\\{\\:}{\\;\\middle\\vert\\;}{\\;\\middle\\Vert\\;}{\\:\\right\\}}"),Er("\\set","\\bra@set{\\{\\,}{\\mid}{}{\\,\\}}"),Er("\\angln","{\\angl n}"),Er("\\blue","\\textcolor{##6495ed}{#1}"),Er("\\orange","\\textcolor{##ffa500}{#1}"),Er("\\pink","\\textcolor{##ff00af}{#1}"),Er("\\red","\\textcolor{##df0030}{#1}"),Er("\\green","\\textcolor{##28ae7b}{#1}"),Er("\\gray","\\textcolor{gray}{#1}"),Er("\\purple","\\textcolor{##9d38bd}{#1}"),Er("\\blueA","\\textcolor{##ccfaff}{#1}"),Er("\\blueB","\\textcolor{##80f6ff}{#1}"),Er("\\blueC","\\textcolor{##63d9ea}{#1}"),Er("\\blueD","\\textcolor{##11accd}{#1}"),Er("\\blueE","\\textcolor{##0c7f99}{#1}"),Er("\\tealA","\\textcolor{##94fff5}{#1}"),Er("\\tealB","\\textcolor{##26edd5}{#1}"),Er("\\tealC","\\textcolor{##01d1c1}{#1}"),Er("\\tealD","\\textcolor{##01a995}{#1}"),Er("\\tealE","\\textcolor{##208170}{#1}"),Er("\\greenA","\\textcolor{##b6ffb0}{#1}"),Er("\\greenB","\\textcolor{##8af281}{#1}"),Er("\\greenC","\\textcolor{##74cf70}{#1}"),Er("\\greenD","\\textcolor{##1fab54}{#1}"),Er("\\greenE","\\textcolor{##0d923f}{#1}"),Er("\\goldA","\\textcolor{##ffd0a9}{#1}"),Er("\\goldB","\\textcolor{##ffbb71}{#1}"),Er("\\goldC","\\textcolor{##ff9c39}{#1}"),Er("\\goldD","\\textcolor{##e07d10}{#1}"),Er("\\goldE","\\textcolor{##a75a05}{#1}"),Er("\\redA","\\textcolor{##fca9a9}{#1}"),Er("\\redB","\\textcolor{##ff8482}{#1}"),Er("\\redC","\\textcolor{##f9685d}{#1}"),Er("\\redD","\\textcolor{##e84d39}{#1}"),Er("\\redE","\\textcolor{##bc2612}{#1}"),Er("\\maroonA","\\textcolor{##ffbde0}{#1}"),Er("\\maroonB","\\textcolor{##ff92c6}{#1}"),Er("\\maroonC","\\textcolor{##ed5fa6}{#1}"),Er("\\maroonD","\\textcolor{##ca337c}{#1}"),Er("\\maroonE","\\textcolor{##9e034e}{#1}"),Er("\\purpleA","\\textcolor{##ddd7ff}{#1}"),Er("\\purpleB","\\textcolor{##c6b9fc}{#1}"),Er("\\purpleC","\\textcolor{##aa87ff}{#1}"),Er("\\purpleD","\\textcolor{##7854ab}{#1}"),Er("\\purpleE","\\textcolor{##543b78}{#1}"),Er("\\mintA","\\textcolor{##f5f9e8}{#1}"),Er("\\mintB","\\textcolor{##edf2df}{#1}"),Er("\\mintC","\\textcolor{##e0e5cc}{#1}"),Er("\\grayA","\\textcolor{##f6f7f7}{#1}"),Er("\\grayB","\\textcolor{##f0f1f2}{#1}"),Er("\\grayC","\\textcolor{##e3e5e6}{#1}"),Er("\\grayD","\\textcolor{##d6d8da}{#1}"),Er("\\grayE","\\textcolor{##babec2}{#1}"),Er("\\grayF","\\textcolor{##888d93}{#1}"),Er("\\grayG","\\textcolor{##626569}{#1}"),Er("\\grayH","\\textcolor{##3b3e40}{#1}"),Er("\\grayI","\\textcolor{##21242c}{#1}"),Er("\\kaBlue","\\textcolor{##314453}{#1}"),Er("\\kaGreen","\\textcolor{##71B307}{#1}");var Gn={"^":!0,_:!0,"\\limits":!0,"\\nolimits":!0},Un=function(){function e(e,t,r){this.settings=void 0,this.expansionCount=void 0,this.lexer=void 0,this.macros=void 0,this.stack=void 0,this.mode=void 0,this.settings=t,this.expansionCount=0,this.feed(e),this.macros=new On(Hn,t.macros),this.mode=r,this.stack=[]}var t=e.prototype;return t.feed=function(e){this.lexer=new Rn(e,this.settings)},t.switchMode=function(e){this.mode=e},t.beginGroup=function(){this.macros.beginGroup()},t.endGroup=function(){this.macros.endGroup()},t.endGroups=function(){this.macros.endGroups()},t.future=function(){return 0===this.stack.length&&this.pushToken(this.lexer.lex()),this.stack[this.stack.length-1]},t.popToken=function(){return this.future(),this.stack.pop()},t.pushToken=function(e){this.stack.push(e)},t.pushTokens=function(e){var t;(t=this.stack).push.apply(t,e)},t.scanArgument=function(e){var t,r,n;if(e){if(this.consumeSpaces(),"["!==this.future().text)return null;t=this.popToken();var a=this.consumeArg(["]"]);n=a.tokens,r=a.end}else{var i=this.consumeArg();n=i.tokens,t=i.start,r=i.end}return this.pushToken(new Dr("EOF",r.loc)),this.pushTokens(n),t.range(r,"")},t.consumeSpaces=function(){for(;;){if(" "!==this.future().text)break;this.stack.pop()}},t.consumeArg=function(e){var t=[],r=e&&e.length>0;r||this.consumeSpaces();var a,i=this.future(),o=0,s=0;do{if(a=this.popToken(),t.push(a),"{"===a.text)++o;else if("}"===a.text){if(-1===--o)throw new n("Extra }",a)}else if("EOF"===a.text)throw new n("Unexpected end of input in a macro argument, expected '"+(e&&r?e[s]:"}")+"'",a);if(e&&r)if((0===o||1===o&&"{"===e[s])&&a.text===e[s]){if(++s===e.length){t.splice(-s,s);break}}else s=0}while(0!==o||r);return"{"===i.text&&"}"===t[t.length-1].text&&(t.pop(),t.shift()),t.reverse(),{tokens:t,start:i,end:a}},t.consumeArgs=function(e,t){if(t){if(t.length!==e+1)throw new n("The length of delimiters doesn't match the number of args!");for(var r=t[0],a=0;athis.settings.maxExpand)throw new n("Too many expansions: infinite loop or need to increase maxExpand setting");var i=a.tokens,o=this.consumeArgs(a.numArgs,a.delimiters);if(a.numArgs)for(var s=(i=i.slice()).length-1;s>=0;--s){var l=i[s];if("#"===l.text){if(0===s)throw new n("Incomplete placeholder at end of macro body",l);if("#"===(l=i[--s]).text)i.splice(s+1,1);else{if(!/^[1-9]$/.test(l.text))throw new n("Not a valid argument number",l);var h;(h=i).splice.apply(h,[s,2].concat(o[+l.text-1]))}}}return this.pushTokens(i),i},t.expandAfterFuture=function(){return this.expandOnce(),this.future()},t.expandNextToken=function(){for(;;){var e=this.expandOnce();if(e instanceof Dr)return e.treatAsRelax&&(e.text="\\relax"),this.stack.pop()}throw new Error},t.expandMacro=function(e){return this.macros.has(e)?this.expandTokens([new Dr(e)]):void 0},t.expandTokens=function(e){var t=[],r=this.stack.length;for(this.pushTokens(e);this.stack.length>r;){var n=this.expandOnce(!0);n instanceof Dr&&(n.treatAsRelax&&(n.noexpand=!1,n.treatAsRelax=!1),t.push(this.stack.pop()))}return t},t.expandMacroAsText=function(e){var t=this.expandMacro(e);return t?t.map((function(e){return e.text})).join(""):t},t._getExpansion=function(e){var t=this.macros.get(e);if(null==t)return t;if(1===e.length){var r=this.lexer.catcodes[e];if(null!=r&&13!==r)return}var n="function"==typeof t?t(this):t;if("string"==typeof n){var a=0;if(-1!==n.indexOf("#"))for(var i=n.replace(/##/g,"");-1!==i.indexOf("#"+(a+1));)++a;for(var o=new Rn(n,this.settings),s=[],l=o.lex();"EOF"!==l.text;)s.push(l),l=o.lex();return s.reverse(),{tokens:s,numArgs:a}}return n},t.isDefined=function(e){return this.macros.has(e)||Nn.hasOwnProperty(e)||ae.math.hasOwnProperty(e)||ae.text.hasOwnProperty(e)||Gn.hasOwnProperty(e)},t.isExpandable=function(e){var t=this.macros.get(e);return null!=t?"string"==typeof t||"function"==typeof t||!t.unexpandable:Nn.hasOwnProperty(e)&&!Nn[e].primitive},e}(),Yn=/^[\u208a\u208b\u208c\u208d\u208e\u2080\u2081\u2082\u2083\u2084\u2085\u2086\u2087\u2088\u2089\u2090\u2091\u2095\u1d62\u2c7c\u2096\u2097\u2098\u2099\u2092\u209a\u1d63\u209b\u209c\u1d64\u1d65\u2093\u1d66\u1d67\u1d68\u1d69\u1d6a]/,Xn=Object.freeze({"\u208a":"+","\u208b":"-","\u208c":"=","\u208d":"(","\u208e":")","\u2080":"0","\u2081":"1","\u2082":"2","\u2083":"3","\u2084":"4","\u2085":"5","\u2086":"6","\u2087":"7","\u2088":"8","\u2089":"9","\u2090":"a","\u2091":"e","\u2095":"h","\u1d62":"i","\u2c7c":"j","\u2096":"k","\u2097":"l","\u2098":"m","\u2099":"n","\u2092":"o","\u209a":"p","\u1d63":"r","\u209b":"s","\u209c":"t","\u1d64":"u","\u1d65":"v","\u2093":"x","\u1d66":"\u03b2","\u1d67":"\u03b3","\u1d68":"\u03c1","\u1d69":"\u03d5","\u1d6a":"\u03c7","\u207a":"+","\u207b":"-","\u207c":"=","\u207d":"(","\u207e":")","\u2070":"0","\xb9":"1","\xb2":"2","\xb3":"3","\u2074":"4","\u2075":"5","\u2076":"6","\u2077":"7","\u2078":"8","\u2079":"9","\u1d2c":"A","\u1d2e":"B","\u1d30":"D","\u1d31":"E","\u1d33":"G","\u1d34":"H","\u1d35":"I","\u1d36":"J","\u1d37":"K","\u1d38":"L","\u1d39":"M","\u1d3a":"N","\u1d3c":"O","\u1d3e":"P","\u1d3f":"R","\u1d40":"T","\u1d41":"U","\u2c7d":"V","\u1d42":"W","\u1d43":"a","\u1d47":"b","\u1d9c":"c","\u1d48":"d","\u1d49":"e","\u1da0":"f","\u1d4d":"g","\u02b0":"h","\u2071":"i","\u02b2":"j","\u1d4f":"k","\u02e1":"l","\u1d50":"m","\u207f":"n","\u1d52":"o","\u1d56":"p","\u02b3":"r","\u02e2":"s","\u1d57":"t","\u1d58":"u","\u1d5b":"v","\u02b7":"w","\u02e3":"x","\u02b8":"y","\u1dbb":"z","\u1d5d":"\u03b2","\u1d5e":"\u03b3","\u1d5f":"\u03b4","\u1d60":"\u03d5","\u1d61":"\u03c7","\u1dbf":"\u03b8"}),Wn={"\u0301":{text:"\\'",math:"\\acute"},"\u0300":{text:"\\`",math:"\\grave"},"\u0308":{text:'\\"',math:"\\ddot"},"\u0303":{text:"\\~",math:"\\tilde"},"\u0304":{text:"\\=",math:"\\bar"},"\u0306":{text:"\\u",math:"\\breve"},"\u030c":{text:"\\v",math:"\\check"},"\u0302":{text:"\\^",math:"\\hat"},"\u0307":{text:"\\.",math:"\\dot"},"\u030a":{text:"\\r",math:"\\mathring"},"\u030b":{text:"\\H"},"\u0327":{text:"\\c"}},_n={"\xe1":"a\u0301","\xe0":"a\u0300","\xe4":"a\u0308","\u01df":"a\u0308\u0304","\xe3":"a\u0303","\u0101":"a\u0304","\u0103":"a\u0306","\u1eaf":"a\u0306\u0301","\u1eb1":"a\u0306\u0300","\u1eb5":"a\u0306\u0303","\u01ce":"a\u030c","\xe2":"a\u0302","\u1ea5":"a\u0302\u0301","\u1ea7":"a\u0302\u0300","\u1eab":"a\u0302\u0303","\u0227":"a\u0307","\u01e1":"a\u0307\u0304","\xe5":"a\u030a","\u01fb":"a\u030a\u0301","\u1e03":"b\u0307","\u0107":"c\u0301","\u1e09":"c\u0327\u0301","\u010d":"c\u030c","\u0109":"c\u0302","\u010b":"c\u0307","\xe7":"c\u0327","\u010f":"d\u030c","\u1e0b":"d\u0307","\u1e11":"d\u0327","\xe9":"e\u0301","\xe8":"e\u0300","\xeb":"e\u0308","\u1ebd":"e\u0303","\u0113":"e\u0304","\u1e17":"e\u0304\u0301","\u1e15":"e\u0304\u0300","\u0115":"e\u0306","\u1e1d":"e\u0327\u0306","\u011b":"e\u030c","\xea":"e\u0302","\u1ebf":"e\u0302\u0301","\u1ec1":"e\u0302\u0300","\u1ec5":"e\u0302\u0303","\u0117":"e\u0307","\u0229":"e\u0327","\u1e1f":"f\u0307","\u01f5":"g\u0301","\u1e21":"g\u0304","\u011f":"g\u0306","\u01e7":"g\u030c","\u011d":"g\u0302","\u0121":"g\u0307","\u0123":"g\u0327","\u1e27":"h\u0308","\u021f":"h\u030c","\u0125":"h\u0302","\u1e23":"h\u0307","\u1e29":"h\u0327","\xed":"i\u0301","\xec":"i\u0300","\xef":"i\u0308","\u1e2f":"i\u0308\u0301","\u0129":"i\u0303","\u012b":"i\u0304","\u012d":"i\u0306","\u01d0":"i\u030c","\xee":"i\u0302","\u01f0":"j\u030c","\u0135":"j\u0302","\u1e31":"k\u0301","\u01e9":"k\u030c","\u0137":"k\u0327","\u013a":"l\u0301","\u013e":"l\u030c","\u013c":"l\u0327","\u1e3f":"m\u0301","\u1e41":"m\u0307","\u0144":"n\u0301","\u01f9":"n\u0300","\xf1":"n\u0303","\u0148":"n\u030c","\u1e45":"n\u0307","\u0146":"n\u0327","\xf3":"o\u0301","\xf2":"o\u0300","\xf6":"o\u0308","\u022b":"o\u0308\u0304","\xf5":"o\u0303","\u1e4d":"o\u0303\u0301","\u1e4f":"o\u0303\u0308","\u022d":"o\u0303\u0304","\u014d":"o\u0304","\u1e53":"o\u0304\u0301","\u1e51":"o\u0304\u0300","\u014f":"o\u0306","\u01d2":"o\u030c","\xf4":"o\u0302","\u1ed1":"o\u0302\u0301","\u1ed3":"o\u0302\u0300","\u1ed7":"o\u0302\u0303","\u022f":"o\u0307","\u0231":"o\u0307\u0304","\u0151":"o\u030b","\u1e55":"p\u0301","\u1e57":"p\u0307","\u0155":"r\u0301","\u0159":"r\u030c","\u1e59":"r\u0307","\u0157":"r\u0327","\u015b":"s\u0301","\u1e65":"s\u0301\u0307","\u0161":"s\u030c","\u1e67":"s\u030c\u0307","\u015d":"s\u0302","\u1e61":"s\u0307","\u015f":"s\u0327","\u1e97":"t\u0308","\u0165":"t\u030c","\u1e6b":"t\u0307","\u0163":"t\u0327","\xfa":"u\u0301","\xf9":"u\u0300","\xfc":"u\u0308","\u01d8":"u\u0308\u0301","\u01dc":"u\u0308\u0300","\u01d6":"u\u0308\u0304","\u01da":"u\u0308\u030c","\u0169":"u\u0303","\u1e79":"u\u0303\u0301","\u016b":"u\u0304","\u1e7b":"u\u0304\u0308","\u016d":"u\u0306","\u01d4":"u\u030c","\xfb":"u\u0302","\u016f":"u\u030a","\u0171":"u\u030b","\u1e7d":"v\u0303","\u1e83":"w\u0301","\u1e81":"w\u0300","\u1e85":"w\u0308","\u0175":"w\u0302","\u1e87":"w\u0307","\u1e98":"w\u030a","\u1e8d":"x\u0308","\u1e8b":"x\u0307","\xfd":"y\u0301","\u1ef3":"y\u0300","\xff":"y\u0308","\u1ef9":"y\u0303","\u0233":"y\u0304","\u0177":"y\u0302","\u1e8f":"y\u0307","\u1e99":"y\u030a","\u017a":"z\u0301","\u017e":"z\u030c","\u1e91":"z\u0302","\u017c":"z\u0307","\xc1":"A\u0301","\xc0":"A\u0300","\xc4":"A\u0308","\u01de":"A\u0308\u0304","\xc3":"A\u0303","\u0100":"A\u0304","\u0102":"A\u0306","\u1eae":"A\u0306\u0301","\u1eb0":"A\u0306\u0300","\u1eb4":"A\u0306\u0303","\u01cd":"A\u030c","\xc2":"A\u0302","\u1ea4":"A\u0302\u0301","\u1ea6":"A\u0302\u0300","\u1eaa":"A\u0302\u0303","\u0226":"A\u0307","\u01e0":"A\u0307\u0304","\xc5":"A\u030a","\u01fa":"A\u030a\u0301","\u1e02":"B\u0307","\u0106":"C\u0301","\u1e08":"C\u0327\u0301","\u010c":"C\u030c","\u0108":"C\u0302","\u010a":"C\u0307","\xc7":"C\u0327","\u010e":"D\u030c","\u1e0a":"D\u0307","\u1e10":"D\u0327","\xc9":"E\u0301","\xc8":"E\u0300","\xcb":"E\u0308","\u1ebc":"E\u0303","\u0112":"E\u0304","\u1e16":"E\u0304\u0301","\u1e14":"E\u0304\u0300","\u0114":"E\u0306","\u1e1c":"E\u0327\u0306","\u011a":"E\u030c","\xca":"E\u0302","\u1ebe":"E\u0302\u0301","\u1ec0":"E\u0302\u0300","\u1ec4":"E\u0302\u0303","\u0116":"E\u0307","\u0228":"E\u0327","\u1e1e":"F\u0307","\u01f4":"G\u0301","\u1e20":"G\u0304","\u011e":"G\u0306","\u01e6":"G\u030c","\u011c":"G\u0302","\u0120":"G\u0307","\u0122":"G\u0327","\u1e26":"H\u0308","\u021e":"H\u030c","\u0124":"H\u0302","\u1e22":"H\u0307","\u1e28":"H\u0327","\xcd":"I\u0301","\xcc":"I\u0300","\xcf":"I\u0308","\u1e2e":"I\u0308\u0301","\u0128":"I\u0303","\u012a":"I\u0304","\u012c":"I\u0306","\u01cf":"I\u030c","\xce":"I\u0302","\u0130":"I\u0307","\u0134":"J\u0302","\u1e30":"K\u0301","\u01e8":"K\u030c","\u0136":"K\u0327","\u0139":"L\u0301","\u013d":"L\u030c","\u013b":"L\u0327","\u1e3e":"M\u0301","\u1e40":"M\u0307","\u0143":"N\u0301","\u01f8":"N\u0300","\xd1":"N\u0303","\u0147":"N\u030c","\u1e44":"N\u0307","\u0145":"N\u0327","\xd3":"O\u0301","\xd2":"O\u0300","\xd6":"O\u0308","\u022a":"O\u0308\u0304","\xd5":"O\u0303","\u1e4c":"O\u0303\u0301","\u1e4e":"O\u0303\u0308","\u022c":"O\u0303\u0304","\u014c":"O\u0304","\u1e52":"O\u0304\u0301","\u1e50":"O\u0304\u0300","\u014e":"O\u0306","\u01d1":"O\u030c","\xd4":"O\u0302","\u1ed0":"O\u0302\u0301","\u1ed2":"O\u0302\u0300","\u1ed6":"O\u0302\u0303","\u022e":"O\u0307","\u0230":"O\u0307\u0304","\u0150":"O\u030b","\u1e54":"P\u0301","\u1e56":"P\u0307","\u0154":"R\u0301","\u0158":"R\u030c","\u1e58":"R\u0307","\u0156":"R\u0327","\u015a":"S\u0301","\u1e64":"S\u0301\u0307","\u0160":"S\u030c","\u1e66":"S\u030c\u0307","\u015c":"S\u0302","\u1e60":"S\u0307","\u015e":"S\u0327","\u0164":"T\u030c","\u1e6a":"T\u0307","\u0162":"T\u0327","\xda":"U\u0301","\xd9":"U\u0300","\xdc":"U\u0308","\u01d7":"U\u0308\u0301","\u01db":"U\u0308\u0300","\u01d5":"U\u0308\u0304","\u01d9":"U\u0308\u030c","\u0168":"U\u0303","\u1e78":"U\u0303\u0301","\u016a":"U\u0304","\u1e7a":"U\u0304\u0308","\u016c":"U\u0306","\u01d3":"U\u030c","\xdb":"U\u0302","\u016e":"U\u030a","\u0170":"U\u030b","\u1e7c":"V\u0303","\u1e82":"W\u0301","\u1e80":"W\u0300","\u1e84":"W\u0308","\u0174":"W\u0302","\u1e86":"W\u0307","\u1e8c":"X\u0308","\u1e8a":"X\u0307","\xdd":"Y\u0301","\u1ef2":"Y\u0300","\u0178":"Y\u0308","\u1ef8":"Y\u0303","\u0232":"Y\u0304","\u0176":"Y\u0302","\u1e8e":"Y\u0307","\u0179":"Z\u0301","\u017d":"Z\u030c","\u1e90":"Z\u0302","\u017b":"Z\u0307","\u03ac":"\u03b1\u0301","\u1f70":"\u03b1\u0300","\u1fb1":"\u03b1\u0304","\u1fb0":"\u03b1\u0306","\u03ad":"\u03b5\u0301","\u1f72":"\u03b5\u0300","\u03ae":"\u03b7\u0301","\u1f74":"\u03b7\u0300","\u03af":"\u03b9\u0301","\u1f76":"\u03b9\u0300","\u03ca":"\u03b9\u0308","\u0390":"\u03b9\u0308\u0301","\u1fd2":"\u03b9\u0308\u0300","\u1fd1":"\u03b9\u0304","\u1fd0":"\u03b9\u0306","\u03cc":"\u03bf\u0301","\u1f78":"\u03bf\u0300","\u03cd":"\u03c5\u0301","\u1f7a":"\u03c5\u0300","\u03cb":"\u03c5\u0308","\u03b0":"\u03c5\u0308\u0301","\u1fe2":"\u03c5\u0308\u0300","\u1fe1":"\u03c5\u0304","\u1fe0":"\u03c5\u0306","\u03ce":"\u03c9\u0301","\u1f7c":"\u03c9\u0300","\u038e":"\u03a5\u0301","\u1fea":"\u03a5\u0300","\u03ab":"\u03a5\u0308","\u1fe9":"\u03a5\u0304","\u1fe8":"\u03a5\u0306","\u038f":"\u03a9\u0301","\u1ffa":"\u03a9\u0300"},jn=function(){function e(e,t){this.mode=void 0,this.gullet=void 0,this.settings=void 0,this.leftrightDepth=void 0,this.nextToken=void 0,this.mode="math",this.gullet=new Un(e,t,this.mode),this.settings=t,this.leftrightDepth=0}var t=e.prototype;return t.expect=function(e,t){if(void 0===t&&(t=!0),this.fetch().text!==e)throw new n("Expected '"+e+"', got '"+this.fetch().text+"'",this.fetch());t&&this.consume()},t.consume=function(){this.nextToken=null},t.fetch=function(){return null==this.nextToken&&(this.nextToken=this.gullet.expandNextToken()),this.nextToken},t.switchMode=function(e){this.mode=e,this.gullet.switchMode(e)},t.parse=function(){this.settings.globalGroup||this.gullet.beginGroup(),this.settings.colorIsTextColor&&this.gullet.macros.set("\\color","\\textcolor");try{var e=this.parseExpression(!1);return this.expect("EOF"),this.settings.globalGroup||this.gullet.endGroup(),e}finally{this.gullet.endGroups()}},t.subparse=function(e){var t=this.nextToken;this.consume(),this.gullet.pushToken(new Dr("}")),this.gullet.pushTokens(e);var r=this.parseExpression(!1);return this.expect("}"),this.nextToken=t,r},t.parseExpression=function(t,r){for(var n=[];;){"math"===this.mode&&this.consumeSpaces();var a=this.fetch();if(-1!==e.endOfExpression.indexOf(a.text))break;if(r&&a.text===r)break;if(t&&Nn[a.text]&&Nn[a.text].infix)break;var i=this.parseAtom(r);if(!i)break;"internal"!==i.type&&n.push(i)}return"text"===this.mode&&this.formLigatures(n),this.handleInfixNodes(n)},t.handleInfixNodes=function(e){for(var t,r=-1,a=0;a=0&&this.settings.reportNonstrict("unicodeTextInMathMode",'Latin-1/Unicode text character "'+t[0]+'" used in math mode',e);var s,l=ae[this.mode][t].group,h=Lr.range(e);if(te.hasOwnProperty(l)){var m=l;s={type:"atom",mode:this.mode,family:m,loc:h,text:t}}else s={type:l,mode:this.mode,loc:h,text:t};i=s}else{if(!(t.charCodeAt(0)>=128))return null;this.settings.strict&&(S(t.charCodeAt(0))?"math"===this.mode&&this.settings.reportNonstrict("unicodeTextInMathMode",'Unicode text character "'+t[0]+'" used in math mode',e):this.settings.reportNonstrict("unknownSymbol",'Unrecognized Unicode character "'+t[0]+'" ('+t.charCodeAt(0)+")",e)),i={type:"textord",mode:"text",loc:Lr.range(e),text:t}}if(this.consume(),o)for(var c=0;c=0)return!1;if((e=a[e]||e)in Prism.languages)return!0;var s=r[e];return s&&!s.error&&!1===s.loading}function m(s,t,i){"string"==typeof s&&(s=[s]);var l=s.length,c=0,n=!1;function k(){n||++c===l&&t&&t(s)}0!==l?s.forEach((function(s){!function(s,t,i){var l=s.indexOf("!")>=0;function c(){var e=r[s];e||(e=r[s]={callbacks:[]}),e.callbacks.push({success:t,error:i}),!l&&o(s)?u(s,"success"):!l&&e.error?u(s,"error"):!l&&e.loading||(e.loading=!0,e.error=!1,function(e,a,r){var s=document.createElement("script");s.src=e,s.async=!0,s.onload=function(){document.body.removeChild(s),a&&a()},s.onerror=function(){document.body.removeChild(s),r&&r()},document.body.appendChild(s)}(function(e){return p.languages_path+"prism-"+e+(p.use_minified?".min":"")+".js"}(s),(function(){e.loading=!1,u(s,"success")}),(function(){e.loading=!1,e.error=!0,u(s,"error")})))}s=s.replace("!","");var n=e[s=a[s]||s];n&&n.length?m(n,c,i):c()}(s,k,(function(){n||(n=!0,i&&i(s))}))})):t&&setTimeout(t,0)}function u(e,a){if(r[e]){for(var s=r[e].callbacks,t=0,i=s.length;t=g.reach);A+=w.value.length,w=w.next){var E=w.value;if(n.length>e.length)return;if(!(E instanceof i)){var P,L=1;if(y){if(!(P=l(b,A,e,m))||P.index>=e.length)break;var S=P.index,O=P.index+P[0].length,j=A;for(j+=w.value.length;S>=j;)j+=(w=w.next).value.length;if(A=j-=w.value.length,w.value instanceof i)continue;for(var C=w;C!==n.tail&&(jg.reach&&(g.reach=W);var z=w.prev;if(_&&(z=u(n,z,_),A+=_.length),c(n,z,L),w=u(n,z,new i(f,p?a.tokenize(N,p):N,k,N)),M&&u(n,w,M),L>1){var I={cause:f+","+d,reach:W};o(e,n,t,w.prev,A,I),g&&I.reach>g.reach&&(g.reach=I.reach)}}}}}}function s(){var e={value:null,prev:null,next:null},n={value:null,prev:e,next:null};e.next=n,this.head=e,this.tail=n,this.length=0}function u(e,n,t){var r=n.next,a={value:t,prev:n,next:r};return n.next=a,r.prev=a,e.length++,a}function c(e,n,t){for(var r=n.next,a=0;a"+i.content+""},!e.document)return e.addEventListener?(a.disableWorkerMessageHandler||e.addEventListener("message",(function(n){var t=JSON.parse(n.data),r=t.language,i=t.code,l=t.immediateClose;e.postMessage(a.highlight(i,a.languages[r],r)),l&&e.close()}),!1),a):a;var g=a.util.currentScript();function f(){a.manual||a.highlightAll()}if(g&&(a.filename=g.src,g.hasAttribute("data-manual")&&(a.manual=!0)),!a.manual){var h=document.readyState;"loading"===h||"interactive"===h&&g&&g.defer?document.addEventListener("DOMContentLoaded",f):window.requestAnimationFrame?window.requestAnimationFrame(f):window.setTimeout(f,16)}return a}(_self);"undefined"!=typeof module&&module.exports&&(module.exports=Prism),"undefined"!=typeof global&&(global.Prism=Prism); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/markmap/prism.css b/src/main/resources/static/articles/vditor@3.11.1/dist/js/markmap/prism.css new file mode 100644 index 0000000..5b8ed2d --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/markmap/prism.css @@ -0,0 +1,140 @@ +/** + * prism.js default theme for JavaScript, CSS and HTML + * Based on dabblet (http://dabblet.com) + * @author Lea Verou + */ + +code[class*="language-"], +pre[class*="language-"] { + color: black; + background: none; + text-shadow: 0 1px white; + font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace; + font-size: 1em; + text-align: left; + white-space: pre; + word-spacing: normal; + word-break: normal; + word-wrap: normal; + line-height: 1.5; + + -moz-tab-size: 4; + -o-tab-size: 4; + tab-size: 4; + + -webkit-hyphens: none; + -moz-hyphens: none; + -ms-hyphens: none; + hyphens: none; +} + +pre[class*="language-"]::-moz-selection, pre[class*="language-"] ::-moz-selection, +code[class*="language-"]::-moz-selection, code[class*="language-"] ::-moz-selection { + text-shadow: none; + background: #b3d4fc; +} + +pre[class*="language-"]::selection, pre[class*="language-"] ::selection, +code[class*="language-"]::selection, code[class*="language-"] ::selection { + text-shadow: none; + background: #b3d4fc; +} + +@media print { + code[class*="language-"], + pre[class*="language-"] { + text-shadow: none; + } +} + +/* Code blocks */ +pre[class*="language-"] { + padding: 1em; + margin: .5em 0; + overflow: auto; +} + +:not(pre) > code[class*="language-"], +pre[class*="language-"] { + background: #f5f2f0; +} + +/* Inline code */ +:not(pre) > code[class*="language-"] { + padding: .1em; + border-radius: .3em; + white-space: normal; +} + +.token.comment, +.token.prolog, +.token.doctype, +.token.cdata { + color: slategray; +} + +.token.punctuation { + color: #999; +} + +.token.namespace { + opacity: .7; +} + +.token.property, +.token.tag, +.token.boolean, +.token.number, +.token.constant, +.token.symbol, +.token.deleted { + color: #905; +} + +.token.selector, +.token.attr-name, +.token.string, +.token.char, +.token.builtin, +.token.inserted { + color: #690; +} + +.token.operator, +.token.entity, +.token.url, +.language-css .token.string, +.style .token.string { + color: #9a6e3a; + /* This background color was intended by the author of this theme. */ + background: hsla(0, 0%, 100%, .5); +} + +.token.atrule, +.token.attr-value, +.token.keyword { + color: #07a; +} + +.token.function, +.token.class-name { + color: #DD4A68; +} + +.token.regex, +.token.important, +.token.variable { + color: #e90; +} + +.token.important, +.token.bold { + font-weight: bold; +} +.token.italic { + font-style: italic; +} + +.token.entity { + cursor: help; +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/LICENSE b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/LICENSE new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/a11y/assistive-mml.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/a11y/assistive-mml.js new file mode 100644 index 0000000..a4810a5 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/a11y/assistive-mml.js @@ -0,0 +1 @@ +!function(t){var e={};function i(n){if(e[n])return e[n].exports;var o=e[n]={i:n,l:!1,exports:{}};return t[n].call(o.exports,o,o.exports,i),o.l=!0,o.exports}i.m=t,i.c=e,i.d=function(t,e,n){i.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},i.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},i.t=function(t,e){if(1&e&&(t=i(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(i.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)i.d(n,o,function(e){return t[e]}.bind(null,o));return n},i.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return i.d(e,"a",e),e},i.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},i.p="",i(i.s=5)}([function(t,e,i){"use strict";var n,o=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}),r=this&&this.__assign||function(){return(r=Object.assign||function(t){for(var e,i=1,n=arguments.length;i0)&&!(n=r.next()).done;)s.push(n.value)}catch(t){o={error:t}}finally{try{n&&!n.done&&(i=r.return)&&i.call(r)}finally{if(o)throw o.error}}return s},a=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.AssistiveMmlHandler=e.AssistiveMmlMathDocumentMixin=e.AssistiveMmlMathItemMixin=e.LimitedMmlVisitor=void 0;var u=i(2),c=i(3),p=i(4),h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.getAttributes=function(e){return t.prototype.getAttributes.call(this,e).replace(/ ?id=".*?"/,"")},e}(c.SerializedMmlVisitor);function m(t){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.prototype.assistiveMml=function(t,e){if(void 0===e&&(e=!1),!(this.state()>=u.STATE.ASSISTIVEMML)){if(!this.isEscaped&&(t.options.enableAssistiveMml||e)){var i=t.adaptor,n=t.toMML(this.root).replace(/\n */g,"").replace(//g,""),o=i.firstChild(i.body(i.parse(n,"text/html"))),r=i.node("mjx-assistive-mml",{role:"presentation",unselectable:"on",display:this.display?"block":"inline"},[o]);i.setAttribute(this.typesetRoot,"role","presentation"),i.setAttribute(i.firstChild(this.typesetRoot),"aria-hidden","true"),i.setStyle(this.typesetRoot,"position","relative"),i.append(this.typesetRoot,r)}this.state(u.STATE.ASSISTIVEMML)}},e}(t)}function f(t){var e;return(e=function(t){function e(){for(var e=[],i=0;i0)&&!(o=n.next()).done;)s.push(o.value)}catch(t){r={error:t}}finally{try{o&&!o.done&&(i=n.return)&&i.call(n)}finally{if(r)throw r.error}}return s},l=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[o++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.ComplexityHandler=e.ComplexityMathDocumentMixin=e.ComplexityMathItemMixin=void 0;var c=i(7),p=i(2),u=i(3),h=i(5);function y(t,e){return function(t){function i(){return null!==t&&t.apply(this,arguments)||this}return r(i,t),i.prototype.complexity=function(t,i){void 0===i&&(i=!1),this.state()>=c.STATE.COMPLEXITY||(this.isEscaped||!t.options.enableComplexity&&!i||(this.enrich(t,!0),e(this.root)),this.state(c.STATE.COMPLEXITY))},i}(t)}function d(t){var e;return(e=function(t){function e(){for(var e=[],i=0;i=t.length&&(t=void 0),{value:t&&t[o++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.ComplexityVisitor=void 0;var s=i(8),l=i(4),a=i(5),c=function(t){function e(e,i){var o=t.call(this,e)||this;o.complexity={text:.5,token:.5,child:1,script:.8,sqrt:2,subsup:2,underover:2,fraction:2,enclose:2,action:2,phantom:0,xml:2,glyph:2};var r=o.constructor;return o.options=a.userOptions(a.defaultOptions({},r.OPTIONS),i),o.collapse=new o.options.Collapse(o),o.factory=e,o}return r(e,t),e.prototype.visitTree=function(e){t.prototype.visitTree.call(this,e,!0),this.options.makeCollapsible&&this.collapse.makeCollapse(e)},e.prototype.visitNode=function(e,i){if(!e.attributes.get("data-semantic-complexity"))return t.prototype.visitNode.call(this,e,i)},e.prototype.visitDefault=function(t,e){var i;if(t.isToken){var o=t.getText();i=this.complexity.text*o.length+this.complexity.token}else i=this.childrenComplexity(t);return this.setComplexity(t,i,e)},e.prototype.visitMfracNode=function(t,e){var i=this.childrenComplexity(t)*this.complexity.script+this.complexity.fraction;return this.setComplexity(t,i,e)},e.prototype.visitMsqrtNode=function(t,e){var i=this.childrenComplexity(t)+this.complexity.sqrt;return this.setComplexity(t,i,e)},e.prototype.visitMrootNode=function(t,e){var i=this.childrenComplexity(t)+this.complexity.sqrt-(1-this.complexity.script)*this.getComplexity(t.childNodes[1]);return this.setComplexity(t,i,e)},e.prototype.visitMphantomNode=function(t,e){return this.setComplexity(t,this.complexity.phantom,e)},e.prototype.visitMsNode=function(t,e){var i=(t.attributes.get("lquote")+t.getText()+t.attributes.get("rquote")).length*this.complexity.text;return this.setComplexity(t,i,e)},e.prototype.visitMsubsupNode=function(e,i){t.prototype.visitDefault.call(this,e,!0);var o=e.childNodes[e.sub],r=e.childNodes[e.sup],n=e.childNodes[e.base],s=Math.max(o?this.getComplexity(o):0,r?this.getComplexity(r):0)*this.complexity.script;return s+=this.complexity.child*((o?1:0)+(r?1:0)),s+=n?this.getComplexity(n)+this.complexity.child:0,s+=this.complexity.subsup,this.setComplexity(e,s,i)},e.prototype.visitMsubNode=function(t,e){return this.visitMsubsupNode(t,e)},e.prototype.visitMsupNode=function(t,e){return this.visitMsubsupNode(t,e)},e.prototype.visitMunderoverNode=function(e,i){t.prototype.visitDefault.call(this,e,!0);var o=e.childNodes[e.under],r=e.childNodes[e.over],n=e.childNodes[e.base],s=Math.max(o?this.getComplexity(o):0,r?this.getComplexity(r):0)*this.complexity.script;return n&&(s=Math.max(this.getComplexity(n),s)),s+=this.complexity.child*((o?1:0)+(r?1:0)+(n?1:0)),s+=this.complexity.underover,this.setComplexity(e,s,i)},e.prototype.visitMunderNode=function(t,e){return this.visitMunderoverNode(t,e)},e.prototype.visitMoverNode=function(t,e){return this.visitMunderoverNode(t,e)},e.prototype.visitMencloseNode=function(t,e){var i=this.childrenComplexity(t)+this.complexity.enclose;return this.setComplexity(t,i,e)},e.prototype.visitMactionNode=function(t,e){this.childrenComplexity(t);var i=this.getComplexity(t.selected);return this.setComplexity(t,i,e)},e.prototype.visitMsemanticsNode=function(t,e){var i=t.childNodes[0],o=0;return i&&(this.visitNode(i,!0),o=this.getComplexity(i)),this.setComplexity(t,o,e)},e.prototype.visitAnnotationNode=function(t,e){return this.setComplexity(t,this.complexity.xml,e)},e.prototype.visitAnnotation_xmlNode=function(t,e){return this.setComplexity(t,this.complexity.xml,e)},e.prototype.visitMglyphNode=function(t,e){return this.setComplexity(t,this.complexity.glyph,e)},e.prototype.getComplexity=function(t){var e=t.getProperty("collapsedComplexity");return null!=e?e:t.attributes.get("data-semantic-complexity")},e.prototype.setComplexity=function(t,e,i){return i&&(this.options.identifyCollapsible&&(e=this.collapse.check(t,e)),t.attributes.set("data-semantic-complexity",e)),e},e.prototype.childrenComplexity=function(e){var i,o;t.prototype.visitDefault.call(this,e,!0);var r=0;try{for(var s=n(e.childNodes),l=s.next();!l.done;l=s.next()){var a=l.value;r+=this.getComplexity(a)}}catch(t){i={error:t}}finally{try{l&&!l.done&&(o=s.return)&&o.call(s)}finally{if(i)throw i.error}}return e.childNodes.length>1&&(r+=e.childNodes.length*this.complexity.child),r},e.OPTIONS={identifyCollapsible:!0,makeCollapsible:!0,Collapse:l.Collapse},e}(s.MmlVisitor);e.ComplexityVisitor=c},function(t,e,i){"use strict";var o=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,i=e&&t[e],o=0;if(i)return i.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&o>=t.length&&(t=void 0),{value:t&&t[o++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.Collapse=void 0;var r=function(){function t(e){var i=this;this.cutoff={identifier:3,number:3,text:10,infixop:15,relseq:15,multirel:15,fenced:18,bigop:20,integral:20,fraction:12,sqrt:9,root:12,vector:15,matrix:15,cases:15,superscript:9,subscript:9,subsup:9,punctuated:{endpunct:t.NOCOLLAPSE,startpunct:t.NOCOLLAPSE,value:12}},this.marker={identifier:"x",number:"#",text:"...",appl:{"limit function":"lim",value:"f()"},fraction:"/",sqrt:"\u221a",root:"\u221a",superscript:"\u25fd\u02d9",subscript:"\u25fd.",subsup:"\u25fd:",vector:{binomial:"(:)",determinant:"|:|",value:"\u27e8:\u27e9"},matrix:{squarematrix:"[::]",rowvector:"\u27e8\u22ef\u27e9",columnvector:"\u27e8\u22ee\u27e9",determinant:"|::|",value:"(::)"},cases:"{:",infixop:{addition:"+",subtraction:"\u2212",multiplication:"\u22c5",implicit:"\u22c5",value:"+"},punctuated:{text:"...",value:","}},this.collapse=new Map([["fenced",function(t,e){return(e=i.uncollapseChild(e,t,1))>i.cutoff.fenced&&"leftright"===t.attributes.get("data-semantic-role")&&(e=i.recordCollapse(t,e,i.getText(t.childNodes[0])+i.getText(t.childNodes[t.childNodes.length-1]))),e}],["appl",function(t,e){if(i.canUncollapse(t,2,2)){e=i.complexity.visitNode(t,!1);var o=i.marker.appl,r=o[t.attributes.get("data-semantic-role")]||o.value;e=i.recordCollapse(t,e,r)}return e}],["sqrt",function(t,e){return(e=i.uncollapseChild(e,t,0))>i.cutoff.sqrt&&(e=i.recordCollapse(t,e,i.marker.sqrt)),e}],["root",function(t,e){return(e=i.uncollapseChild(e,t,0,2))>i.cutoff.sqrt&&(e=i.recordCollapse(t,e,i.marker.sqrt)),e}],["enclose",function(t,e){if(1===i.splitAttribute(t,"children").length){var o=i.canUncollapse(t,1);if(o){var r=o.getProperty("collapse-marker");i.unrecordCollapse(o),e=i.recordCollapse(t,i.complexity.visitNode(t,!1),r)}}return e}],["bigop",function(t,e){if(e>i.cutoff.bigop||!t.isKind("mo")){var o=i.splitAttribute(t,"content").pop(),r=i.findChildText(t,o);e=i.recordCollapse(t,e,r)}return e}],["integral",function(t,e){if(e>i.cutoff.integral||!t.isKind("mo")){var o=i.splitAttribute(t,"content").pop(),r=i.findChildText(t,o);e=i.recordCollapse(t,e,r)}return e}],["relseq",function(t,e){if(e>i.cutoff.relseq){var o=i.splitAttribute(t,"content")[0],r=i.findChildText(t,o);e=i.recordCollapse(t,e,r)}return e}],["multirel",function(t,e){if(e>i.cutoff.relseq){var o=i.splitAttribute(t,"content")[0],r=i.findChildText(t,o)+"\u22ef";e=i.recordCollapse(t,e,r)}return e}],["superscript",function(t,e){return(e=i.uncollapseChild(e,t,0,2))>i.cutoff.superscript&&(e=i.recordCollapse(t,e,i.marker.superscript)),e}],["subscript",function(t,e){return(e=i.uncollapseChild(e,t,0,2))>i.cutoff.subscript&&(e=i.recordCollapse(t,e,i.marker.subscript)),e}],["subsup",function(t,e){return(e=i.uncollapseChild(e,t,0,3))>i.cutoff.subsup&&(e=i.recordCollapse(t,e,i.marker.subsup)),e}]]),this.idCount=0,this.complexity=e}return t.prototype.check=function(t,e){var i=t.attributes.get("data-semantic-type");return this.collapse.has(i)?this.collapse.get(i).call(this,t,e):this.cutoff.hasOwnProperty(i)?this.defaultCheck(t,e,i):e},t.prototype.defaultCheck=function(t,e,i){var o=t.attributes.get("data-semantic-role"),r=this.cutoff[i];if(e>("number"==typeof r?r:r[o]||r.value)){var n=this.marker[i]||"??",s="string"==typeof n?n:n[o]||n.value;e=this.recordCollapse(t,e,s)}return e},t.prototype.recordCollapse=function(t,e,i){return i="\u25c2"+i+"\u25b8",t.setProperty("collapse-marker",i),t.setProperty("collapse-complexity",e),i.length*this.complexity.complexity.text},t.prototype.unrecordCollapse=function(t){var e=t.getProperty("collapse-complexity");null!=e&&(t.attributes.set("data-semantic-complexity",e),t.removeProperty("collapse-complexity"),t.removeProperty("collapse-marker"))},t.prototype.canUncollapse=function(t,e,i){if(void 0===i&&(i=1),this.splitAttribute(t,"children").length===i){var o=1===t.childNodes.length&&t.childNodes[0].isInferred?t.childNodes[0]:t;if(o&&o.childNodes[e]){var r=o.childNodes[e];if(r.getProperty("collapse-marker"))return r}}return null},t.prototype.uncollapseChild=function(t,e,i,o){void 0===o&&(o=1);var r=this.canUncollapse(e,i,o);return r&&(this.unrecordCollapse(r),r.parent!==e&&r.parent.attributes.set("data-semantic-complexity",void 0),t=this.complexity.visitNode(e,!1)),t},t.prototype.splitAttribute=function(t,e){return(t.attributes.get("data-semantic-"+e)||"").split(/,/)},t.prototype.getText=function(t){var e=this;return t.isToken?t.getText():t.childNodes.map((function(t){return e.getText(t)})).join("")},t.prototype.findChildText=function(t,e){var i=this.findChild(t,e);return this.getText(i.coreMO()||i)},t.prototype.findChild=function(t,e){var i,r;if(!t||t.attributes.get("data-semantic-id")===e)return t;if(!t.isToken)try{for(var n=o(t.childNodes),s=n.next();!s.done;s=n.next()){var l=s.value,a=this.findChild(l,e);if(a)return a}}catch(t){i={error:t}}finally{try{s&&!s.done&&(r=n.return)&&r.call(n)}finally{if(i)throw i.error}}return null},t.prototype.makeCollapse=function(t){var e=[];t.walkTree((function(t){t.getProperty("collapse-marker")&&e.push(t)})),this.makeActions(e)},t.prototype.makeActions=function(t){var e,i;try{for(var r=o(t),n=r.next();!n.done;n=r.next()){var s=n.value;this.makeAction(s)}}catch(t){e={error:t}}finally{try{n&&!n.done&&(i=r.return)&&i.call(r)}finally{if(e)throw e.error}}},t.prototype.makeId=function(){return"mjx-collapse-"+this.idCount++},t.prototype.makeAction=function(t){t.isKind("math")&&(t=this.addMrow(t));var e=this.complexity.factory,i=t.getProperty("collapse-marker"),o=t.parent,r=e.create("maction",{actiontype:"toggle",selection:2,"data-collapsible":!0,id:this.makeId(),"data-semantic-complexity":t.attributes.get("data-semantic-complexity")},[e.create("mtext",{mathcolor:"blue"},[e.create("text").setText(i)])]);r.inheritAttributesFrom(t),t.attributes.set("data-semantic-complexity",t.getProperty("collapse-complexity")),t.removeProperty("collapse-marker"),t.removeProperty("collapse-complexity"),o.replaceChild(r,t),r.appendChild(t)},t.prototype.addMrow=function(t){var e,i,r=this.complexity.factory.create("mrow",null,t.childNodes[0].childNodes);t.childNodes[0].setChildren([r]);var n=t.attributes.getAllAttributes();try{for(var s=o(Object.keys(n)),l=s.next();!l.done;l=s.next()){var a=l.value;"data-semantic-"===a.substr(0,14)&&(r.attributes.set(a,n[a]),delete n[a])}}catch(t){e={error:t}}finally{try{l&&!l.done&&(i=s.return)&&i.call(s)}finally{if(e)throw e.error}}return r.setProperty("collapse-marker",t.getProperty("collapse-marker")),r.setProperty("collapse-complexity",t.getProperty("collapse-complexity")),t.removeProperty("collapse-marker"),t.removeProperty("collapse-complexity"),r},t.NOCOLLAPSE=1e7,t}();e.Collapse=r},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.APPEND=MathJax._.util.Options.APPEND,e.REMOVE=MathJax._.util.Options.REMOVE,e.Expandable=MathJax._.util.Options.Expandable,e.expandable=MathJax._.util.Options.expandable,e.makeArray=MathJax._.util.Options.makeArray,e.keys=MathJax._.util.Options.keys,e.copy=MathJax._.util.Options.copy,e.insert=MathJax._.util.Options.insert,e.defaultOptions=MathJax._.util.Options.defaultOptions,e.userOptions=MathJax._.util.Options.userOptions,e.selectOptions=MathJax._.util.Options.selectOptions,e.selectOptionsFromKeys=MathJax._.util.Options.selectOptionsFromKeys,e.separateOptions=MathJax._.util.Options.separateOptions},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.sreReady=MathJax._.a11y.sre.sreReady},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.protoItem=MathJax._.core.MathItem.protoItem,e.AbstractMathItem=MathJax._.core.MathItem.AbstractMathItem,e.STATE=MathJax._.core.MathItem.STATE,e.newState=MathJax._.core.MathItem.newState},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.MmlVisitor=MathJax._.core.MmlTree.MmlVisitor.MmlVisitor},function(t,e,i){"use strict";i.r(e);var o=i(0),r=i(1),n=i(4),s=i(3),l=i(2),a=i(6);Object(o.combineWithMathJax)({_:{a11y:{complexity_ts:r,complexity:{collapse:n,visitor:s},"semantic-enrich":l,sre:a}}}),MathJax.startup&&(MathJax.startup.extendHandler((function(t){return Object(r.ComplexityHandler)(t)})),Object(o.combineDefaults)(MathJax.config,"options",MathJax.config["a11y/complexity"]||{}))}]); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/a11y/explorer.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/a11y/explorer.js new file mode 100644 index 0000000..9d4f21c --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/a11y/explorer.js @@ -0,0 +1 @@ +!function(t){var e={};function o(r){if(e[r])return e[r].exports;var n=e[r]={i:r,l:!1,exports:{}};return t[r].call(n.exports,n,n.exports,o),n.l=!0,n.exports}o.m=t,o.c=e,o.d=function(t,e,r){o.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:r})},o.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},o.t=function(t,e){if(1&e&&(t=o(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(o.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var n in t)o.d(r,n,function(e){return t[e]}.bind(null,n));return r},o.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return o.d(e,"a",e),e},o.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},o.p="",o(o.s=14)}([function(t,e,o){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.sreReady=MathJax._.a11y.sre.sreReady},function(t,e,o){"use strict";var r=this&&this.__read||function(t,e){var o="function"==typeof Symbol&&t[Symbol.iterator];if(!o)return t;var r,n,i=o.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(r=i.next()).done;)a.push(r.value)}catch(t){n={error:t}}finally{try{r&&!r.done&&(o=i.return)&&o.call(i)}finally{if(n)throw n.error}}return a},n=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractExplorer=void 0,o(0);var a=function(){function t(t,e,o){for(var r=[],n=3;n=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},s=this&&this.__read||function(t,e){var o="function"==typeof Symbol&&t[Symbol.iterator];if(!o)return t;var r,n,i=o.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(r=i.next()).done;)a.push(r.value)}catch(t){n={error:t}}finally{try{r&&!r.done&&(o=i.return)&&o.call(i)}finally{if(n)throw n.error}}return a},l=this&&this.__spread||function(){for(var t=[],e=0;e=c.STATE.EXPLORER)){if(!this.isEscaped&&(t.options.enableExplorer||o)){var r=this.typesetRoot,n=e(this.root);this.savedId&&(this.typesetRoot.setAttribute("sre-explorer-id",this.savedId),this.savedId=null),this.explorers=function(t,e,o){var r,n,i={};try{for(var s=a(Object.keys(_)),l=s.next();!l.done;l=s.next()){var c=l.value;i[c]=_[c](t,e,o)}}catch(t){r={error:t}}finally{try{l&&!l.done&&(n=s.return)&&n.call(s)}finally{if(r)throw r.error}}return i}(t,r,n),this.attachExplorers(t)}this.state(c.STATE.EXPLORER)}},o.prototype.attachExplorers=function(t){var e,o;this.attached=[];try{for(var r=a(Object.keys(this.explorers)),n=r.next();!n.done;n=r.next()){var i=n.value,s=this.explorers[i];t.options.a11y[i]?(s.Attach(),this.attached.push(s)):s.Detach()}}catch(t){e={error:t}}finally{try{n&&!n.done&&(o=r.return)&&o.call(r)}finally{if(e)throw e.error}}this.addExplorers(this.attached)},o.prototype.rerender=function(e,o){var r,n;void 0===o&&(o=c.STATE.RERENDER),this.savedId=this.typesetRoot.getAttribute("sre-explorer-id"),this.refocus=window.document.activeElement===this.typesetRoot;try{for(var i=a(this.attached),s=i.next();!s.done;s=i.next()){var l=s.value;l.active&&(this.restart=!0,l.Stop())}}catch(t){r={error:t}}finally{try{s&&!s.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}t.prototype.rerender.call(this,e,o)},o.prototype.updateDocument=function(e){t.prototype.updateDocument.call(this,e),this.refocus&&this.typesetRoot.focus(),this.restart&&this.attached.forEach((function(t){return t.Start()})),this.refocus=this.restart=!1},o.prototype.addExplorers=function(t){var e,o;if(!(t.length<=1)){var r=null;try{for(var n=a(this.attached),i=n.next();!i.done;i=n.next()){var s=i.value;s instanceof f.AbstractKeyExplorer&&(s.stoppable=!1,r=s)}}catch(t){e={error:t}}finally{try{i&&!i.done&&(o=n.return)&&o.call(n)}finally{if(e)throw e.error}}r&&(r.stoppable=!0)}},o}(t)}function b(t){var e;return(e=function(t){function e(){for(var e=[],o=0;o0)&&!(r=i.next()).done;)a.push(r.value)}catch(t){n={error:t}}finally{try{r&&!r.done&&(o=i.return)&&o.call(i)}finally{if(n)throw n.error}}return a};Object.defineProperty(e,"__esModule",{value:!0}),e.Magnifier=e.SpeechExplorer=e.AbstractKeyExplorer=void 0;var a=o(1),s=o(0),l=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.events=t.prototype.Events.call(e).concat([["keydown",e.KeyDown.bind(e)],["focusin",e.FocusIn.bind(e)],["focusout",e.FocusOut.bind(e)]]),e.oldIndex=null,e}return n(e,t),e.prototype.FocusIn=function(t){},e.prototype.FocusOut=function(t){this.Stop()},e.prototype.Update=function(t){void 0===t&&(t=!1),(this.active||t)&&(this.highlighter.unhighlight(),this.highlighter.highlight(this.walker.getFocus(!0).getNodes()))},e.prototype.Attach=function(){t.prototype.Attach.call(this),this.oldIndex=this.node.tabIndex,this.node.tabIndex=1,this.node.setAttribute("role","application")},e.prototype.Detach=function(){this.node.tabIndex=this.oldIndex,this.oldIndex=null,this.node.removeAttribute("role"),t.prototype.Detach.call(this)},e.prototype.Stop=function(){this.active&&(this.highlighter.unhighlight(),this.walker.deactivate()),t.prototype.Stop.call(this)},e}(a.AbstractExplorer);e.AbstractKeyExplorer=l;var c=function(t){function e(e,o,r,n){var i=t.call(this,e,o,r)||this;return i.document=e,i.region=o,i.node=r,i.mml=n,i.showRegion="subtitles",i.init=!1,i.restarted=!1,i.initWalker(),i}return n(e,t),e.prototype.Start=function(){var e=this,o=this.getOptions();if(!this.init)return this.init=!0,void s.sreReady().then((function(){SRE.engineSetup().locale!==o.locale&&SRE.setupEngine({locale:o.locale}),s.sreReady().then((function(){e.Speech(e.walker),e.Start()}))})).catch((function(t){return console.log(t.message)}));t.prototype.Start.call(this),this.speechGenerator=sre.SpeechGeneratorFactory.generator("Direct"),this.speechGenerator.setOptions(o),this.walker=sre.WalkerFactory.walker("table",this.node,this.speechGenerator,this.highlighter,this.mml),this.walker.activate(),this.Update(),this.document.options.a11y[this.showRegion]&&this.region.Show(this.node,this.highlighter),this.restarted=!0},e.prototype.Update=function(e){void 0===e&&(e=!1),t.prototype.Update.call(this,e),this.region.Update(this.walker.speech());var o=this.speechGenerator.getOptions();"speech"===o.modality&&(this.document.options.a11y.speechRules=o.domain+"-"+o.style)},e.prototype.Speech=function(t){t.speech(),this.node.setAttribute("hasspeech","true"),this.Update(),this.restarted&&this.document.options.a11y[this.showRegion]&&this.region.Show(this.node,this.highlighter)},e.prototype.KeyDown=function(t){var e=t.keyCode;return 27===e?(this.Stop(),void this.stopEvent(t)):this.active?(this.Move(e),void this.stopEvent(t)):void((32===e&&t.shiftKey||13===e)&&(this.Start(),this.stopEvent(t)))},e.prototype.Move=function(t){this.walker.move(t),this.Update()},e.prototype.initWalker=function(){this.speechGenerator=sre.SpeechGeneratorFactory.generator("Tree");var t=sre.WalkerFactory.walker("dummy",this.node,this.speechGenerator,this.highlighter,this.mml);this.walker=t},e.prototype.getOptions=function(){var t=this.speechGenerator.getOptions(),e=i(this.document.options.a11y.speechRules.split("-"),2),o=e[0],r=e[1];return"speech"!==t.modality||t.locale===this.document.options.a11y.locale&&t.domain===o&&t.style===r||(t.domain=o,t.style=r,t.locale=this.document.options.a11y.locale,this.walker.update(t)),t},e}(l);e.SpeechExplorer=c;var h=function(t){function e(e,o,r,n){var i=t.call(this,e,o,r)||this;return i.document=e,i.region=o,i.node=r,i.mml=n,i.walker=sre.WalkerFactory.walker("table",i.node,sre.SpeechGeneratorFactory.generator("Dummy"),i.highlighter,i.mml),i}return n(e,t),e.prototype.Update=function(e){void 0===e&&(e=!1),t.prototype.Update.call(this,e),this.showFocus()},e.prototype.Start=function(){t.prototype.Start.call(this),this.region.Show(this.node,this.highlighter),this.walker.activate(),this.Update()},e.prototype.showFocus=function(){var t=this.walker.getFocus().getNodes()[0];this.region.Show(t,this.highlighter)},e.prototype.Move=function(t){this.walker.move(t)&&this.Update()},e.prototype.KeyDown=function(t){var e=t.keyCode;return 27===e?(this.Stop(),void this.stopEvent(t)):this.active&&13!==e?(this.Move(e),void this.stopEvent(t)):void((32===e&&t.shiftKey||13===e)&&(this.Start(),this.stopEvent(t)))},e}(l);e.Magnifier=h},function(t,e,o){"use strict";var r,n=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var o in e)e.hasOwnProperty(o)&&(t[o]=e[o])})(t,e)},function(t,e){function o(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(o.prototype=e.prototype,new o)}),i=this&&this.__read||function(t,e){var o="function"==typeof Symbol&&t[Symbol.iterator];if(!o)return t;var r,n,i=o.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(r=i.next()).done;)a.push(r.value)}catch(t){n={error:t}}finally{try{r&&!r.done&&(o=i.return)&&o.call(i)}finally{if(n)throw n.error}}return a};Object.defineProperty(e,"__esModule",{value:!0}),e.FlameHoverer=e.ContentHoverer=e.ValueHoverer=e.Hoverer=e.AbstractMouseExplorer=void 0;var a=o(2),s=o(1);o(0);var l=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.events=t.prototype.Events.call(e).concat([["mouseover",e.MouseOver.bind(e)],["mouseout",e.MouseOut.bind(e)]]),e}return n(e,t),e.prototype.MouseOver=function(t){this.Start()},e.prototype.MouseOut=function(t){this.Stop()},e}(s.AbstractExplorer);e.AbstractMouseExplorer=l;var c=function(t){function e(e,o,r,n,i){var a=t.call(this,e,o,r)||this;return a.document=e,a.region=o,a.node=r,a.nodeQuery=n,a.nodeAccess=i,a}return n(e,t),e.prototype.MouseOut=function(e){e.clientX===this.coord[0]&&e.clientY===this.coord[1]||(this.highlighter.unhighlight(),this.region.Hide(),t.prototype.MouseOut.call(this,e))},e.prototype.MouseOver=function(e){t.prototype.MouseOver.call(this,e);var o=e.target;this.coord=[e.clientX,e.clientY];var r=i(this.getNode(o),2),n=r[0],a=r[1];n&&(this.highlighter.unhighlight(),this.highlighter.highlight([n]),this.region.Update(a),this.region.Show(n,this.highlighter))},e.prototype.getNode=function(t){for(var e=t;t&&t!==this.node;){if(this.nodeQuery(t))return[t,this.nodeAccess(t)];t=t.parentNode}for(t=e;t;){if(this.nodeQuery(t))return[t,this.nodeAccess(t)];var o=t.childNodes[0];t=o&&"defs"===o.tagName?t.childNodes[1]:o}return[null,null]},e}(l);e.Hoverer=c;var h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e}(c);e.ValueHoverer=h;var u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e}(c);e.ContentHoverer=u;var p=function(t){function e(e,o,r){var n=t.call(this,e,new a.DummyRegion(e),r,(function(t){return n.highlighter.isMactionNode(t)}),(function(){}))||this;return n.document=e,n.node=r,n}return n(e,t),e}(c);e.FlameHoverer=p},function(t,e,o){"use strict";var r,n=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var o in e)e.hasOwnProperty(o)&&(t[o]=e[o])})(t,e)},function(t,e){function o(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(o.prototype=e.prototype,new o)});Object.defineProperty(e,"__esModule",{value:!0}),e.TreeColorer=e.FlameColorer=e.AbstractTreeExplorer=void 0;var i=o(1);o(0);var a=function(t){function e(e,o,r,n){var i=t.call(this,e,null,r)||this;return i.document=e,i.region=o,i.node=r,i.mml=n,i.stoppable=!1,i}return n(e,t),e.prototype.Attach=function(){t.prototype.Attach.call(this),this.Start()},e.prototype.Detach=function(){this.Stop(),t.prototype.Detach.call(this)},e}(i.AbstractExplorer);e.AbstractTreeExplorer=a;var s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.Start=function(){this.active||(this.active=!0,this.highlighter.highlightAll(this.node))},e.prototype.Stop=function(){this.active&&this.highlighter.unhighlightAll(this.node),this.active=!1},e}(a);e.FlameColorer=s;var l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.Start=function(){if(!this.active){this.active=!0;var t=sre.SpeechGeneratorFactory.generator("Color");this.node.hasAttribute("hasforegroundcolor")||(t.generateSpeech(this.node,this.mml),this.node.setAttribute("hasforegroundcolor","true")),this.highlighter.colorizeAll(this.node)}},e.prototype.Stop=function(){this.active&&this.highlighter.uncolorizeAll(this.node),this.active=!1},e}(a);e.TreeColorer=l},function(t,e,o){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.protoItem=MathJax._.core.MathItem.protoItem,e.AbstractMathItem=MathJax._.core.MathItem.AbstractMathItem,e.STATE=MathJax._.core.MathItem.STATE,e.newState=MathJax._.core.MathItem.newState},function(t,e,o){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.EnrichedMathItemMixin=MathJax._.a11y["semantic-enrich"].EnrichedMathItemMixin,e.EnrichedMathDocumentMixin=MathJax._.a11y["semantic-enrich"].EnrichedMathDocumentMixin,e.EnrichHandler=MathJax._.a11y["semantic-enrich"].EnrichHandler},function(t,e,o){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.APPEND=MathJax._.util.Options.APPEND,e.REMOVE=MathJax._.util.Options.REMOVE,e.Expandable=MathJax._.util.Options.Expandable,e.expandable=MathJax._.util.Options.expandable,e.makeArray=MathJax._.util.Options.makeArray,e.keys=MathJax._.util.Options.keys,e.copy=MathJax._.util.Options.copy,e.insert=MathJax._.util.Options.insert,e.defaultOptions=MathJax._.util.Options.defaultOptions,e.userOptions=MathJax._.util.Options.userOptions,e.selectOptions=MathJax._.util.Options.selectOptions,e.selectOptionsFromKeys=MathJax._.util.Options.selectOptionsFromKeys,e.separateOptions=MathJax._.util.Options.separateOptions},function(t,e,o){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.DATAMJX=MathJax._.core.MmlTree.SerializedMmlVisitor.DATAMJX,e.toEntity=MathJax._.core.MmlTree.SerializedMmlVisitor.toEntity,e.SerializedMmlVisitor=MathJax._.core.MmlTree.SerializedMmlVisitor.SerializedMmlVisitor},function(t,e,o){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.MJContextMenu=MathJax._.ui.menu.MJContextMenu.MJContextMenu},function(t,e,o){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.CssStyles=MathJax._.util.StyleList.CssStyles},function(t,e,o){"use strict";o.r(e);var r=o(4),n=o(3),i=o(1),a=o(5),s=o(6),l=o(2),c=o(7),h=o(0);Object(r.combineWithMathJax)({_:{a11y:{explorer_ts:n,explorer:{Explorer:i,KeyExplorer:a,MouseExplorer:s,Region:l,TreeExplorer:c},sre:h}}}),MathJax.startup&&MathJax.startup.extendHandler((function(t){return Object(n.ExplorerHandler)(t)}))}]); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/a11y/semantic-enrich.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/a11y/semantic-enrich.js new file mode 100644 index 0000000..3e10f45 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/a11y/semantic-enrich.js @@ -0,0 +1 @@ +!function(t){var e={};function n(r){if(e[r])return e[r].exports;var i=e[r]={i:r,l:!1,exports:{}};return t[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}n.m=t,n.c=e,n.d=function(t,e,r){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:r})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var i in t)n.d(r,i,function(e){return t[e]}.bind(null,i));return r},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=9)}([function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.sreReady=void 0;var r=n(8),i="undefined"==typeof window?"./a11y/sre-node.js":"../../../speech-rule-engine/lib/sre_browser.js",a="undefined"==typeof sre?r.asyncLoad(i):Promise.resolve();e.sreReady=function(){return new Promise((function(t,e){a.then((function(){var n=(new Date).getTime(),r=function(){sre.Engine.isReady()?t():(new Date).getTime()-n<2e4?setTimeout(r,100):e("Timed out waiting for Speech-Rule-Engine")};r()})).catch((function(t){return e(t.message||t)}))}))}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.isObject=MathJax._.components.global.isObject,e.combineConfig=MathJax._.components.global.combineConfig,e.combineDefaults=MathJax._.components.global.combineDefaults,e.combineWithMathJax=MathJax._.components.global.combineWithMathJax,e.MathJax=MathJax._.components.global.MathJax},function(t,e,n){"use strict";var r,i=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}),a=this&&this.__assign||function(){return(a=Object.assign||function(t){for(var e,n=1,r=arguments.length;n=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},s=this&&this.__read||function(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var r,i,a=n.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=a.next()).done;)o.push(r.value)}catch(t){i={error:t}}finally{try{r&&!r.done&&(n=a.return)&&n.call(a)}finally{if(i)throw i.error}}return o},c=this&&this.__spread||function(){for(var t=[],e=0;e=u.STATE.ENRICHED)){if(!this.isEscaped&&(t.options.enableEnrichment||r)){"undefined"!=typeof sre&&sre.Engine.isReady()||l.mathjax.retryAfter(f.sreReady()),t.options.enrichSpeech!==d&&(SRE.setupEngine({speech:t.options.enrichSpeech}),d=t.options.enrichSpeech);var i=new t.options.MathItem("",e);i.math=this.serializeMml(SRE.toEnriched(n(this.root))),i.display=this.display,i.compile(t),this.root=i.root,this.inputData.originalMml=i.math}this.state(u.STATE.ENRICHED)}},r.prototype.attachSpeech=function(t){var e,n;if(!(this.state()>=u.STATE.ATTACHSPEECH)){var r=this.root.attributes.get("aria-label")||this.getSpeech(this.root);if(r){var i=t.adaptor,a=this.typesetRoot;i.setAttribute(a,"aria-label",r);try{for(var s=o(i.childNodes(a)),c=s.next();!c.done;c=s.next()){var l=c.value;i.setAttribute(l,"aria-hidden","true")}}catch(t){e={error:t}}finally{try{c&&!c.done&&(n=s.return)&&n.call(s)}finally{if(e)throw e.error}}}this.state(u.STATE.ATTACHSPEECH)}},r.prototype.getSpeech=function(t){var e,n,r=t.attributes;if(!r)return"";var i=r.getExplicit("data-semantic-speech");if(!r.getExplicit("data-semantic-parent")&&i)return i;try{for(var a=o(t.childNodes),s=a.next();!s.done;s=a.next()){var c=s.value,l=this.getSpeech(c);if(null!=l)return l}}catch(t){e={error:t}}finally{try{s&&!s.done&&(n=a.return)&&n.call(a)}finally{if(e)throw e.error}}return""},r}(t)}function M(t,e){var n;return(n=function(t){function n(){for(var n=[],r=0;r0)&&!(n=s.next()).done;)r.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(i=s.return)&&i.call(s)}finally{if(a)throw a.error}}return r};Object.defineProperty(e,"__esModule",{value:!0}),e.AsciiMath=void 0;var o=i(3),l=i(4),u=i(12),h=i(1),p=function(t){function e(i){var n=this,a=r(u.separateOptions(i,h.FindAsciiMath.OPTIONS,e.OPTIONS),3),s=a[1],o=a[2];return(n=t.call(this,o)||this).findAsciiMath=n.options.FindAsciiMath||new h.FindAsciiMath(s),n}return a(e,t),e.prototype.compile=function(t,e){return l.LegacyAsciiMath.Compile(t.math,t.display)},e.prototype.findMath=function(t){return this.findAsciiMath.findMath(t)},e.NAME="AsciiMath",e.OPTIONS=s(s({},o.AbstractInputJax.OPTIONS),{FindAsciiMath:null}),e}(o.AbstractInputJax);e.AsciiMath=p},function(t,e,i){"use strict";var n,a=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}),s=this&&this.__read||function(t,e){var i="function"==typeof Symbol&&t[Symbol.iterator];if(!i)return t;var n,a,s=i.call(t),r=[];try{for(;(void 0===e||e-- >0)&&!(n=s.next()).done;)r.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(i=s.return)&&i.call(s)}finally{if(a)throw a.error}}return r};Object.defineProperty(e,"__esModule",{value:!0}),e.FindAsciiMath=void 0;var r=i(13),o=i(14),l=i(15),u=function(t){function e(e){var i=t.call(this,e)||this;return i.getPatterns(),i}return a(e,t),e.prototype.getPatterns=function(){var t=this,e=this.options,i=[];this.end={},e.delimiters.forEach((function(e){return t.addPattern(i,e,!1)})),this.start=new RegExp(i.join("|"),"g"),this.hasPatterns=i.length>0},e.prototype.addPattern=function(t,e,i){var n=s(e,2),a=n[0],r=n[1];t.push(o.quotePattern(a)),this.end[a]=[r,i,new RegExp(o.quotePattern(r),"g")]},e.prototype.findEnd=function(t,e,i,n){var a=s(n,3),r=a[1],o=a[2],u=o.lastIndex=i.index+i[0].length,h=o.exec(t);return h?l.protoItem(i[0],t.substr(u,h.index-u),h[0],e,i.index,h.index+h[0].length,r):null},e.prototype.findMathInString=function(t,e,i){var n,a;for(this.start.lastIndex=0;n=this.start.exec(i);)(a=this.findEnd(i,e,n,this.end[n[0]]))&&(t.push(a),this.start.lastIndex=a.end.n)},e.prototype.findMath=function(t){var e=[];if(this.hasPatterns)for(var i=0,n=t.length;i1&&(t=2===arguments.length&&"function"!=typeof arguments[0]&&arguments[0]instanceof Object&&"number"==typeof arguments[1]?[].slice.call(t,e):[].slice.call(arguments,0)),t instanceof Array&&1===t.length&&(t=t[0]),"function"==typeof t)return t.execute===i.prototype.execute?t:i({hook:t});if(t instanceof Array){if("string"==typeof t[0]&&t[1]instanceof Object&&"function"==typeof t[1][t[0]])return i({hook:t[1][t[0]],object:t[1],data:t.slice(2)});if("function"==typeof t[0])return i({hook:t[0],data:t.slice(1)});if("function"==typeof t[1])return i({hook:t[1],object:t[0],data:t.slice(2)})}else{if("string"==typeof t)return s&&s(),i({hook:a,data:[t]});if(t instanceof Object)return i(t);if(void 0===t)return i({})}throw Error("Can't make callback from given data")},o=function(t,e){(t=r(t)).called||(c(t,e),e.pending++)},h=function(){var t=this.signal;delete this.signal,this.execute=this.oldExecute,delete this.oldExecute;var e=this.execute.apply(this,arguments);if(n(e)&&!e.called)c(e,t);else for(var i=0,a=t.length;i0&&e=0;t--)this.hooks.splice(t,1);this.remove=[]}}),f=e.Object.Subclass({Init:function(){this.pending=this.running=0,this.queue=[],this.Push.apply(this,arguments)},Push:function(){for(var t,e=0,i=arguments.length;e=this.timeout?(t(this.STATUS.ERROR),1):0},file:function(t,i){i<0?e.Ajax.loadTimeout(t):e.Ajax.loadComplete(t)},execute:function(){this.hook.call(this.object,this,this.data[0],this.data[1])},checkSafari2:function(t,e,i){t.time(i)||(p.styleSheets.length>e&&p.styleSheets[e].cssRules&&p.styleSheets[e].cssRules.length?i(t.STATUS.OK):setTimeout(t,t.delay))},checkLength:function(t,i,n){if(!t.time(n)){var a=0,s=i.sheet||i.styleSheet;try{(s.cssRules||s.rules||[]).length>0&&(a=1)}catch(t){(t.message.match(/protected variable|restricted URI/)||t.message.match(/Security error/))&&(a=1)}a?setTimeout(e.Callback([n,t.STATUS.OK]),0):setTimeout(t,t.delay)}}},loadComplete:function(t){t=this.fileURL(t);var i=this.loading[t];return i&&!i.preloaded?(e.Message.Clear(i.message),i.timeout&&clearTimeout(i.timeout),i.script&&(0===a.length&&setTimeout(s,0),a.push(i.script)),this.loaded[t]=i.status,delete this.loading[t],this.addHook(t,i.callback)):(i&&delete this.loading[t],this.loaded[t]=this.STATUS.OK,i={status:this.STATUS.OK}),this.loadHooks[t]?this.loadHooks[t].Execute(i.status):null},loadTimeout:function(t){this.loading[t].timeout&&clearTimeout(this.loading[t].timeout),this.loading[t].status=this.STATUS.ERROR,this.loadError(t),this.loadComplete(t)},loadError:function(t){e.Message.Set(["LoadFailed","File failed to load: %1",t],null,2e3),e.Hub.signal.Post(["file load error",t])},Styles:function(t,i){var n=this.StyleString(t);if(""===n)(i=e.Callback(i))();else{var a=p.createElement("style");a.type="text/css",this.head=(this.head,null),this.head.appendChild(a),a.styleSheet&&void 0!==a.styleSheet.cssText?a.styleSheet.cssText=n:a.appendChild(p.createTextNode(n)),i=this.timer.create.call(this,i,a)}return i},StyleString:function(t){if("string"==typeof t)return t;var e,i,n="";for(e in t)if(t.hasOwnProperty(e))if("string"==typeof t[e])n+=e+" {"+t[e]+"}\n";else if(t[e]instanceof Array)for(var a=0;a="0"&&r<="9")s[n]=e[s[n]-1],"number"==typeof s[n]&&(s[n]=this.number(s[n]));else if("{"===r)if((r=s[n].substr(1))>="0"&&r<="9")s[n]=e[s[n].substr(1,s[n].length-2)-1],"number"==typeof s[n]&&(s[n]=this.number(s[n]));else{var o=s[n].match(/^\{([a-z]+):%(\d+)\|(.*)\}$/);if(o)if("plural"===o[1]){var l=e[o[2]-1];if(void 0===l)s[n]="???";else{l=this.plural(l)-1;var u=o[3].replace(/(^|[^%])(%%)*%\|/g,"$1$2%\uefef").split(/\|/);l>=0&&l=3?i.push([s[0],s[1],this.processSnippet(t,s[2])]):i.push(e[n])}else i.push(e[n]);return i},markdownPattern:/(%.)|(\*{1,3})((?:%.|.)+?)\2|(`+)((?:%.|.)+?)\4|\[((?:%.|.)+?)\]\(([^\s\)]+)\)/,processMarkdown:function(t,e,i){for(var n,a=[],s=t.split(this.markdownPattern),r=s[0],o=1,l=s.length;o0||this.Get("scriptlevel")>0)&&n>=0?"":this.TEXSPACELENGTH[Math.abs(n)]},TEXSPACELENGTH:["",t.LENGTH.THINMATHSPACE,t.LENGTH.MEDIUMMATHSPACE,t.LENGTH.THICKMATHSPACE],TEXSPACE:[[0,-1,2,3,0,0,0,1],[-1,-1,0,3,0,0,0,1],[2,2,0,0,2,0,0,2],[3,3,0,0,3,0,0,3],[0,0,0,0,0,0,0,0],[0,-1,2,3,0,0,0,1],[1,1,0,1,1,1,1,1],[1,-1,2,3,1,0,1,1]],autoDefault:function(t){return""},isSpacelike:function(){return!1},isEmbellished:function(){return!1},Core:function(){return this},CoreMO:function(){return this},childIndex:function(t){if(null!=t)for(var e=0,i=this.data.length;e=55296&&i.charCodeAt(0)<56320?t.VARIANT.ITALIC:t.VARIANT.NORMAL}return""},setTeXclass:function(e){this.getPrevClass(e);var i=this.data.join("");return i.length>1&&i.match(/^[a-z][a-z0-9]*$/i)&&this.texClass===t.TEXCLASS.ORD&&(this.texClass=t.TEXCLASS.OP,this.autoOP=!0),this}}),t.mn=t.mbase.Subclass({type:"mn",isToken:!0,texClass:t.TEXCLASS.ORD,defaults:{mathvariant:t.INHERIT,mathsize:t.INHERIT,mathbackground:t.INHERIT,mathcolor:t.INHERIT,dir:t.INHERIT}}),t.mo=t.mbase.Subclass({type:"mo",isToken:!0,defaults:{mathvariant:t.INHERIT,mathsize:t.INHERIT,mathbackground:t.INHERIT,mathcolor:t.INHERIT,dir:t.INHERIT,form:t.AUTO,fence:t.AUTO,separator:t.AUTO,lspace:t.AUTO,rspace:t.AUTO,stretchy:t.AUTO,symmetric:t.AUTO,maxsize:t.AUTO,minsize:t.AUTO,largeop:t.AUTO,movablelimits:t.AUTO,accent:t.AUTO,linebreak:t.LINEBREAK.AUTO,lineleading:t.INHERIT,linebreakstyle:t.AUTO,linebreakmultchar:t.INHERIT,indentalign:t.INHERIT,indentshift:t.INHERIT,indenttarget:t.INHERIT,indentalignfirst:t.INHERIT,indentshiftfirst:t.INHERIT,indentalignlast:t.INHERIT,indentshiftlast:t.INHERIT,texClass:t.AUTO},defaultDef:{form:t.FORM.INFIX,fence:!1,separator:!1,lspace:t.LENGTH.THICKMATHSPACE,rspace:t.LENGTH.THICKMATHSPACE,stretchy:!1,symmetric:!1,maxsize:t.SIZE.INFINITY,minsize:"0em",largeop:!1,movablelimits:!1,accent:!1,linebreak:t.LINEBREAK.AUTO,lineleading:"1ex",linebreakstyle:"before",indentalign:t.INDENTALIGN.AUTO,indentshift:"0",indenttarget:"",indentalignfirst:t.INDENTALIGN.INDENTALIGN,indentshiftfirst:t.INDENTSHIFT.INDENTSHIFT,indentalignlast:t.INDENTALIGN.INDENTALIGN,indentshiftlast:t.INDENTSHIFT.INDENTSHIFT,texClass:t.TEXCLASS.REL},SPACE_ATTR:{lspace:1,rspace:2,form:4},useMMLspacing:7,autoDefault:function(e,i){var n=this.def;if(!n){if("form"===e)return this.useMMLspacing&=~this.SPACE_ATTR.form,this.getForm();for(var a=this.data.join(""),s=[this.Get("form"),t.FORM.INFIX,t.FORM.POSTFIX,t.FORM.PREFIX],r=0,o=s.length;r=55296&&i<56320&&(i=(i-55296<<10)+(e.charCodeAt(1)-56320)+65536);for(var n=0,a=this.RANGES.length;n=0;t--)if(this.data[0]&&!this.data[t].isSpacelike())return this.data[t];return null},Core:function(){return this.isEmbellished()&&void 0!==this.core?this.data[this.core]:this},CoreMO:function(){return this.isEmbellished()&&void 0!==this.core?this.data[this.core].CoreMO():this},toString:function(){return this.inferred?"["+this.data.join(",")+"]":this.SUPER(arguments).toString.call(this)},setTeXclass:function(e){var i,n=this.data.length;if(!this.open&&!this.close||e&&e.fnOP){for(i=0;i0)&&e++,e},adjustChild_texprimestyle:function(t){return t==this.den||this.Get("texprimestyle")},setTeXclass:t.mbase.setSeparateTeXclasses}),t.msqrt=t.mbase.Subclass({type:"msqrt",inferRow:!0,linebreakContainer:!0,texClass:t.TEXCLASS.ORD,setTeXclass:t.mbase.setSeparateTeXclasses,adjustChild_texprimestyle:function(t){return!0}}),t.mroot=t.mbase.Subclass({type:"mroot",linebreakContainer:!0,texClass:t.TEXCLASS.ORD,adjustChild_displaystyle:function(t){return 1!==t&&this.Get("displaystyle")},adjustChild_scriptlevel:function(t){var e=this.Get("scriptlevel");return 1===t&&(e+=2),e},adjustChild_texprimestyle:function(t){return 0===t||this.Get("texprimestyle")},setTeXclass:t.mbase.setSeparateTeXclasses}),t.mstyle=t.mbase.Subclass({type:"mstyle",isSpacelike:t.mbase.childrenSpacelike,isEmbellished:t.mbase.childEmbellished,Core:t.mbase.childCore,CoreMO:t.mbase.childCoreMO,inferRow:!0,defaults:{scriptlevel:t.INHERIT,displaystyle:t.INHERIT,scriptsizemultiplier:Math.sqrt(.5),scriptminsize:"8pt",mathbackground:t.INHERIT,mathcolor:t.INHERIT,dir:t.INHERIT,infixlinebreakstyle:t.LINEBREAKSTYLE.BEFORE,decimalseparator:"."},adjustChild_scriptlevel:function(t){var e=this.scriptlevel;if(null==e)e=this.Get("scriptlevel");else if(String(e).match(/^ *[-+]/)){e=this.Get("scriptlevel",null,!0)+parseInt(e)}return e},inheritFromMe:!0,noInherit:{mpadded:{width:!0,height:!0,depth:!0,lspace:!0,voffset:!0},mtable:{width:!0,height:!0,depth:!0,align:!0}},getRemoved:{fontfamily:"fontFamily",fontweight:"fontWeight",fontstyle:"fontStyle",fontsize:"fontSize"},setTeXclass:t.mbase.setChildTeXclass}),t.merror=t.mbase.Subclass({type:"merror",inferRow:!0,linebreakContainer:!0,texClass:t.TEXCLASS.ORD}),t.mpadded=t.mbase.Subclass({type:"mpadded",inferRow:!0,isSpacelike:t.mbase.childrenSpacelike,isEmbellished:t.mbase.childEmbellished,Core:t.mbase.childCore,CoreMO:t.mbase.childCoreMO,defaults:{mathbackground:t.INHERIT,mathcolor:t.INHERIT,width:"",height:"",depth:"",lspace:0,voffset:0},setTeXclass:t.mbase.setChildTeXclass}),t.mphantom=t.mbase.Subclass({type:"mphantom",texClass:t.TEXCLASS.ORD,inferRow:!0,isSpacelike:t.mbase.childrenSpacelike,isEmbellished:t.mbase.childEmbellished,Core:t.mbase.childCore,CoreMO:t.mbase.childCoreMO,setTeXclass:t.mbase.setChildTeXclass}),t.mfenced=t.mbase.Subclass({type:"mfenced",defaults:{mathbackground:t.INHERIT,mathcolor:t.INHERIT,open:"(",close:")",separators:","},addFakeNodes:function(){var e=this.getValues("open","close","separators");if(e.open=e.open.replace(/[ \t\n\r]/g,""),e.close=e.close.replace(/[ \t\n\r]/g,""),e.separators=e.separators.replace(/[ \t\n\r]/g,""),""!==e.open&&(this.SetData("open",t.mo(e.open).With({fence:!0,form:t.FORM.PREFIX,texClass:t.TEXCLASS.OPEN})),this.data.open.useMMLspacing=0),""!==e.separators){for(;e.separators.length0)&&this.Get("displaystyle")},adjustChild_scriptlevel:function(t){var e=this.Get("scriptlevel");return t>0&&e++,e},adjustChild_texprimestyle:function(t){return t===this.sub||this.Get("texprimestyle")},setTeXclass:t.mbase.setBaseTeXclasses}),t.msub=t.msubsup.Subclass({type:"msub"}),t.msup=t.msubsup.Subclass({type:"msup",sub:2,sup:1}),t.mmultiscripts=t.msubsup.Subclass({type:"mmultiscripts",adjustChild_texprimestyle:function(t){return t%2==1||this.Get("texprimestyle")}}),t.mprescripts=t.mbase.Subclass({type:"mprescripts"}),t.none=t.mbase.Subclass({type:"none"}),t.munderover=t.mbase.Subclass({type:"munderover",base:0,under:1,over:2,sub:1,sup:2,ACCENTS:["","accentunder","accent"],linebreakContainer:!0,isEmbellished:t.mbase.childEmbellished,Core:t.mbase.childCore,CoreMO:t.mbase.childCoreMO,defaults:{mathbackground:t.INHERIT,mathcolor:t.INHERIT,accent:t.AUTO,accentunder:t.AUTO,align:t.ALIGN.CENTER,texClass:t.AUTO,subscriptshift:"",superscriptshift:""},autoDefault:function(e){return"texClass"===e?this.isEmbellished()?this.CoreMO().Get(e):t.TEXCLASS.ORD:"accent"===e&&this.data[this.over]?this.data[this.over].CoreMO().Get("accent"):!("accentunder"!==e||!this.data[this.under])&&this.data[this.under].CoreMO().Get("accent")},adjustChild_displaystyle:function(t){return!(t>0)&&this.Get("displaystyle")},adjustChild_scriptlevel:function(t){var e=this.Get("scriptlevel"),i=this.data[this.base]&&!this.Get("displaystyle")&&this.data[this.base].CoreMO().Get("movablelimits");return t!=this.under||!i&&this.Get("accentunder")||e++,t!=this.over||!i&&this.Get("accent")||e++,e},adjustChild_texprimestyle:function(t){return!(t!==this.base||!this.data[this.over])||this.Get("texprimestyle")},setTeXclass:t.mbase.setBaseTeXclasses}),t.munder=t.munderover.Subclass({type:"munder"}),t.mover=t.munderover.Subclass({type:"mover",over:1,under:2,sup:1,sub:2,ACCENTS:["","accent","accentunder"]}),t.mtable=t.mbase.Subclass({type:"mtable",defaults:{mathbackground:t.INHERIT,mathcolor:t.INHERIT,align:t.ALIGN.AXIS,rowalign:t.ALIGN.BASELINE,columnalign:t.ALIGN.CENTER,groupalign:"{left}",alignmentscope:!0,columnwidth:t.WIDTH.AUTO,width:t.WIDTH.AUTO,rowspacing:"1ex",columnspacing:".8em",rowlines:t.LINES.NONE,columnlines:t.LINES.NONE,frame:t.LINES.NONE,framespacing:"0.4em 0.5ex",equalrows:!1,equalcolumns:!1,displaystyle:!1,side:t.SIDE.RIGHT,minlabelspacing:"0.8em",texClass:t.TEXCLASS.ORD,useHeight:1},adjustChild_displaystyle:function(){return null!=this.displaystyle?this.displaystyle:this.defaults.displaystyle},inheritFromMe:!0,noInherit:{mover:{align:!0},munder:{align:!0},munderover:{align:!0},mtable:{align:!0,rowalign:!0,columnalign:!0,groupalign:!0,alignmentscope:!0,columnwidth:!0,width:!0,rowspacing:!0,columnspacing:!0,rowlines:!0,columnlines:!0,frame:!0,framespacing:!0,equalrows:!0,equalcolumns:!0,displaystyle:!0,side:!0,minlabelspacing:!0,texClass:!0,useHeight:1}},linebreakContainer:!0,Append:function(){for(var e=0,i=arguments.length;e>10),56320+(1023&t)))}}),t.xml=t.mbase.Subclass({type:"xml",Init:function(){return this.div=document.createElement("div"),this.SUPER(arguments).Init.apply(this,arguments)},Append:function(){for(var t=0,e=arguments.length;t":i.REL,"?":[1,1,e.CLOSE],"\\":i.ORD,"^":i.ORD11,_:i.ORD11,"|":[2,2,e.ORD,{fence:!0,stretchy:!0,symmetric:!0}],"#":i.ORD,$:i.ORD,".":[0,3,e.PUNCT,{separator:!0}],"\u02b9":i.ORD,"\u0300":i.ACCENT,"\u0301":i.ACCENT,"\u0303":i.WIDEACCENT,"\u0304":i.ACCENT,"\u0306":i.ACCENT,"\u0307":i.ACCENT,"\u0308":i.ACCENT,"\u030c":i.ACCENT,"\u0332":i.WIDEACCENT,"\u0338":i.REL4,"\u2015":[0,0,e.ORD,{stretchy:!0}],"\u2017":[0,0,e.ORD,{stretchy:!0}],"\u2020":i.BIN3,"\u2021":i.BIN3,"\u20d7":i.ACCENT,"\u2111":i.ORD,"\u2113":i.ORD,"\u2118":i.ORD,"\u211c":i.ORD,"\u2205":i.ORD,"\u221e":i.ORD,"\u2305":i.BIN3,"\u2306":i.BIN3,"\u2322":i.REL4,"\u2323":i.REL4,"\u2329":i.OPEN,"\u232a":i.CLOSE,"\u23aa":i.ORD,"\u23af":[0,0,e.ORD,{stretchy:!0}],"\u23b0":i.OPEN,"\u23b1":i.CLOSE,"\u2500":i.ORD,"\u25ef":i.BIN3,"\u2660":i.ORD,"\u2661":i.ORD,"\u2662":i.ORD,"\u2663":i.ORD,"\u3008":i.OPEN,"\u3009":i.CLOSE,"\ufe37":i.WIDEACCENT,"\ufe38":i.WIDEACCENT}}},{OPTYPES:i});var n=t.mo.prototype.OPTABLE;n.infix["^"]=i.WIDEREL,n.infix._=i.WIDEREL,n.prefix["\u2223"]=i.OPEN,n.prefix["\u2225"]=i.OPEN,n.postfix["\u2223"]=i.CLOSE,n.postfix["\u2225"]=i.CLOSE}(MathJax.ElementJax.mml),MathJax.ElementJax.mml.loadComplete("jax.js")},function(t,e){MathJax.InputJax.AsciiMath=MathJax.InputJax({id:"AsciiMath",version:"2.7.2",directory:MathJax.InputJax.directory+"/AsciiMath",extensionDir:MathJax.InputJax.extensionDir+"/AsciiMath",config:{fixphi:!0,useMathMLspacing:!0,displaystyle:!0,decimalsign:"."}}),MathJax.InputJax.AsciiMath.Register("math/asciimath"),MathJax.InputJax.AsciiMath.loadComplete("config.js")},function(t,e){var i,n;!function(t){var e,i=MathJax.Object.Subclass({firstChild:null,lastChild:null,Init:function(){this.childNodes=[]},appendChild:function(t){return t.parent&&t.parent.removeChild(t),this.lastChild&&(this.lastChild.nextSibling=t),this.firstChild||(this.firstChild=t),this.childNodes.push(t),t.parent=this,this.lastChild=t,t},removeChild:function(t){for(var e=0,i=this.childNodes.length;e=n-1&&(this.lastChild=t),this.childNodes[i]=t,t.nextSibling=e.nextSibling,e.nextSibling=e.parent=null,e},hasChildNodes:function(t){return this.childNodes.length>0},toString:function(){return"{"+this.childNodes.join("")+"}"}}),n={getElementById:!0,createElementNS:function(i,n){var a=e[n]();return"mo"===n&&t.config.useMathMLspacing&&(a.useMMLspacing=128),a},createTextNode:function(t){return e.chars(t).With({nodeValue:t})},createDocumentFragment:function(){return i()}},a={appName:"MathJax"},s="blue",r="serif",o=!0,l=!0,u=".",h="Microsoft"==a.appName.slice(0,9);function p(t){return h?n.createElement(t):n.createElementNS("http://www.w3.org/1999/xhtml",t)}var c="http://www.w3.org/1998/Math/MathML";function d(t){return h?n.createElement("m:"+t):n.createElementNS(c,t)}function m(t,e){var i;return i=h?n.createElement("m:"+t):n.createElementNS(c,t),e&&i.appendChild(e),i}var f=["\ud835\udc9c","\u212c","\ud835\udc9e","\ud835\udc9f","\u2130","\u2131","\ud835\udca2","\u210b","\u2110","\ud835\udca5","\ud835\udca6","\u2112","\u2133","\ud835\udca9","\ud835\udcaa","\ud835\udcab","\ud835\udcac","\u211b","\ud835\udcae","\ud835\udcaf","\ud835\udcb0","\ud835\udcb1","\ud835\udcb2","\ud835\udcb3","\ud835\udcb4","\ud835\udcb5","\ud835\udcb6","\ud835\udcb7","\ud835\udcb8","\ud835\udcb9","\u212f","\ud835\udcbb","\u210a","\ud835\udcbd","\ud835\udcbe","\ud835\udcbf","\ud835\udcc0","\ud835\udcc1","\ud835\udcc2","\ud835\udcc3","\u2134","\ud835\udcc5","\ud835\udcc6","\ud835\udcc7","\ud835\udcc8","\ud835\udcc9","\ud835\udcca","\ud835\udccb","\ud835\udccc","\ud835\udccd","\ud835\udcce","\ud835\udccf"],g=["\ud835\udd04","\ud835\udd05","\u212d","\ud835\udd07","\ud835\udd08","\ud835\udd09","\ud835\udd0a","\u210c","\u2111","\ud835\udd0d","\ud835\udd0e","\ud835\udd0f","\ud835\udd10","\ud835\udd11","\ud835\udd12","\ud835\udd13","\ud835\udd14","\u211c","\ud835\udd16","\ud835\udd17","\ud835\udd18","\ud835\udd19","\ud835\udd1a","\ud835\udd1b","\ud835\udd1c","\u2128","\ud835\udd1e","\ud835\udd1f","\ud835\udd20","\ud835\udd21","\ud835\udd22","\ud835\udd23","\ud835\udd24","\ud835\udd25","\ud835\udd26","\ud835\udd27","\ud835\udd28","\ud835\udd29","\ud835\udd2a","\ud835\udd2b","\ud835\udd2c","\ud835\udd2d","\ud835\udd2e","\ud835\udd2f","\ud835\udd30","\ud835\udd31","\ud835\udd32","\ud835\udd33","\ud835\udd34","\ud835\udd35","\ud835\udd36","\ud835\udd37"],E=["\ud835\udd38","\ud835\udd39","\u2102","\ud835\udd3b","\ud835\udd3c","\ud835\udd3d","\ud835\udd3e","\u210d","\ud835\udd40","\ud835\udd41","\ud835\udd42","\ud835\udd43","\ud835\udd44","\u2115","\ud835\udd46","\u2119","\u211a","\u211d","\ud835\udd4a","\ud835\udd4b","\ud835\udd4c","\ud835\udd4d","\ud835\udd4e","\ud835\udd4f","\ud835\udd50","\u2124","\ud835\udd52","\ud835\udd53","\ud835\udd54","\ud835\udd55","\ud835\udd56","\ud835\udd57","\ud835\udd58","\ud835\udd59","\ud835\udd5a","\ud835\udd5b","\ud835\udd5c","\ud835\udd5d","\ud835\udd5e","\ud835\udd5f","\ud835\udd60","\ud835\udd61","\ud835\udd62","\ud835\udd63","\ud835\udd64","\ud835\udd65","\ud835\udd66","\ud835\udd67","\ud835\udd68","\ud835\udd69","\ud835\udd6a","\ud835\udd6b"],y=8,x={input:'"',tag:"mtext",output:"mbox",tex:null,ttype:10},T=[{input:"alpha",tag:"mi",output:"\u03b1",tex:null,ttype:0},{input:"beta",tag:"mi",output:"\u03b2",tex:null,ttype:0},{input:"chi",tag:"mi",output:"\u03c7",tex:null,ttype:0},{input:"delta",tag:"mi",output:"\u03b4",tex:null,ttype:0},{input:"Delta",tag:"mo",output:"\u0394",tex:null,ttype:0},{input:"epsi",tag:"mi",output:"\u03b5",tex:"epsilon",ttype:0},{input:"varepsilon",tag:"mi",output:"\u025b",tex:null,ttype:0},{input:"eta",tag:"mi",output:"\u03b7",tex:null,ttype:0},{input:"gamma",tag:"mi",output:"\u03b3",tex:null,ttype:0},{input:"Gamma",tag:"mo",output:"\u0393",tex:null,ttype:0},{input:"iota",tag:"mi",output:"\u03b9",tex:null,ttype:0},{input:"kappa",tag:"mi",output:"\u03ba",tex:null,ttype:0},{input:"lambda",tag:"mi",output:"\u03bb",tex:null,ttype:0},{input:"Lambda",tag:"mo",output:"\u039b",tex:null,ttype:0},{input:"lamda",tag:"mi",output:"\u03bb",tex:null,ttype:0},{input:"Lamda",tag:"mo",output:"\u039b",tex:null,ttype:0},{input:"mu",tag:"mi",output:"\u03bc",tex:null,ttype:0},{input:"nu",tag:"mi",output:"\u03bd",tex:null,ttype:0},{input:"omega",tag:"mi",output:"\u03c9",tex:null,ttype:0},{input:"Omega",tag:"mo",output:"\u03a9",tex:null,ttype:0},{input:"phi",tag:"mi",output:"\u03d5",tex:null,ttype:0},{input:"varphi",tag:"mi",output:"\u03c6",tex:null,ttype:0},{input:"Phi",tag:"mo",output:"\u03a6",tex:null,ttype:0},{input:"pi",tag:"mi",output:"\u03c0",tex:null,ttype:0},{input:"Pi",tag:"mo",output:"\u03a0",tex:null,ttype:0},{input:"psi",tag:"mi",output:"\u03c8",tex:null,ttype:0},{input:"Psi",tag:"mi",output:"\u03a8",tex:null,ttype:0},{input:"rho",tag:"mi",output:"\u03c1",tex:null,ttype:0},{input:"sigma",tag:"mi",output:"\u03c3",tex:null,ttype:0},{input:"Sigma",tag:"mo",output:"\u03a3",tex:null,ttype:0},{input:"tau",tag:"mi",output:"\u03c4",tex:null,ttype:0},{input:"theta",tag:"mi",output:"\u03b8",tex:null,ttype:0},{input:"vartheta",tag:"mi",output:"\u03d1",tex:null,ttype:0},{input:"Theta",tag:"mo",output:"\u0398",tex:null,ttype:0},{input:"upsilon",tag:"mi",output:"\u03c5",tex:null,ttype:0},{input:"xi",tag:"mi",output:"\u03be",tex:null,ttype:0},{input:"Xi",tag:"mo",output:"\u039e",tex:null,ttype:0},{input:"zeta",tag:"mi",output:"\u03b6",tex:null,ttype:0},{input:"*",tag:"mo",output:"\u22c5",tex:"cdot",ttype:0},{input:"**",tag:"mo",output:"\u2217",tex:"ast",ttype:0},{input:"***",tag:"mo",output:"\u22c6",tex:"star",ttype:0},{input:"//",tag:"mo",output:"/",tex:null,ttype:0},{input:"\\\\",tag:"mo",output:"\\",tex:"backslash",ttype:0},{input:"setminus",tag:"mo",output:"\\",tex:null,ttype:0},{input:"xx",tag:"mo",output:"\xd7",tex:"times",ttype:0},{input:"|><",tag:"mo",output:"\u22c9",tex:"ltimes",ttype:0},{input:"><|",tag:"mo",output:"\u22ca",tex:"rtimes",ttype:0},{input:"|><|",tag:"mo",output:"\u22c8",tex:"bowtie",ttype:0},{input:"-:",tag:"mo",output:"\xf7",tex:"div",ttype:0},{input:"divide",tag:"mo",output:"-:",tex:null,ttype:y},{input:"@",tag:"mo",output:"\u2218",tex:"circ",ttype:0},{input:"o+",tag:"mo",output:"\u2295",tex:"oplus",ttype:0},{input:"ox",tag:"mo",output:"\u2297",tex:"otimes",ttype:0},{input:"o.",tag:"mo",output:"\u2299",tex:"odot",ttype:0},{input:"sum",tag:"mo",output:"\u2211",tex:null,ttype:7},{input:"prod",tag:"mo",output:"\u220f",tex:null,ttype:7},{input:"^^",tag:"mo",output:"\u2227",tex:"wedge",ttype:0},{input:"^^^",tag:"mo",output:"\u22c0",tex:"bigwedge",ttype:7},{input:"vv",tag:"mo",output:"\u2228",tex:"vee",ttype:0},{input:"vvv",tag:"mo",output:"\u22c1",tex:"bigvee",ttype:7},{input:"nn",tag:"mo",output:"\u2229",tex:"cap",ttype:0},{input:"nnn",tag:"mo",output:"\u22c2",tex:"bigcap",ttype:7},{input:"uu",tag:"mo",output:"\u222a",tex:"cup",ttype:0},{input:"uuu",tag:"mo",output:"\u22c3",tex:"bigcup",ttype:7},{input:"!=",tag:"mo",output:"\u2260",tex:"ne",ttype:0},{input:":=",tag:"mo",output:":=",tex:null,ttype:0},{input:"lt",tag:"mo",output:"<",tex:null,ttype:0},{input:"<=",tag:"mo",output:"\u2264",tex:"le",ttype:0},{input:"lt=",tag:"mo",output:"\u2264",tex:"leq",ttype:0},{input:"gt",tag:"mo",output:">",tex:null,ttype:0},{input:">=",tag:"mo",output:"\u2265",tex:"ge",ttype:0},{input:"gt=",tag:"mo",output:"\u2265",tex:"geq",ttype:0},{input:"-<",tag:"mo",output:"\u227a",tex:"prec",ttype:0},{input:"-lt",tag:"mo",output:"\u227a",tex:null,ttype:0},{input:">-",tag:"mo",output:"\u227b",tex:"succ",ttype:0},{input:"-<=",tag:"mo",output:"\u2aaf",tex:"preceq",ttype:0},{input:">-=",tag:"mo",output:"\u2ab0",tex:"succeq",ttype:0},{input:"in",tag:"mo",output:"\u2208",tex:null,ttype:0},{input:"!in",tag:"mo",output:"\u2209",tex:"notin",ttype:0},{input:"sub",tag:"mo",output:"\u2282",tex:"subset",ttype:0},{input:"sup",tag:"mo",output:"\u2283",tex:"supset",ttype:0},{input:"sube",tag:"mo",output:"\u2286",tex:"subseteq",ttype:0},{input:"supe",tag:"mo",output:"\u2287",tex:"supseteq",ttype:0},{input:"-=",tag:"mo",output:"\u2261",tex:"equiv",ttype:0},{input:"~=",tag:"mo",output:"\u2245",tex:"cong",ttype:0},{input:"~~",tag:"mo",output:"\u2248",tex:"approx",ttype:0},{input:"prop",tag:"mo",output:"\u221d",tex:"propto",ttype:0},{input:"and",tag:"mtext",output:"and",tex:null,ttype:6},{input:"or",tag:"mtext",output:"or",tex:null,ttype:6},{input:"not",tag:"mo",output:"\xac",tex:"neg",ttype:0},{input:"=>",tag:"mo",output:"\u21d2",tex:"implies",ttype:0},{input:"if",tag:"mo",output:"if",tex:null,ttype:6},{input:"<=>",tag:"mo",output:"\u21d4",tex:"iff",ttype:0},{input:"AA",tag:"mo",output:"\u2200",tex:"forall",ttype:0},{input:"EE",tag:"mo",output:"\u2203",tex:"exists",ttype:0},{input:"_|_",tag:"mo",output:"\u22a5",tex:"bot",ttype:0},{input:"TT",tag:"mo",output:"\u22a4",tex:"top",ttype:0},{input:"|--",tag:"mo",output:"\u22a2",tex:"vdash",ttype:0},{input:"|==",tag:"mo",output:"\u22a8",tex:"models",ttype:0},{input:"(",tag:"mo",output:"(",tex:null,ttype:4},{input:")",tag:"mo",output:")",tex:null,ttype:5},{input:"[",tag:"mo",output:"[",tex:null,ttype:4},{input:"]",tag:"mo",output:"]",tex:null,ttype:5},{input:"{",tag:"mo",output:"{",tex:null,ttype:4},{input:"}",tag:"mo",output:"}",tex:null,ttype:5},{input:"|",tag:"mo",output:"|",tex:null,ttype:9},{input:"(:",tag:"mo",output:"\u2329",tex:"langle",ttype:4},{input:":)",tag:"mo",output:"\u232a",tex:"rangle",ttype:5},{input:"<<",tag:"mo",output:"\u2329",tex:null,ttype:4},{input:">>",tag:"mo",output:"\u232a",tex:null,ttype:5},{input:"{:",tag:"mo",output:"{:",tex:null,ttype:4,invisible:!0},{input:":}",tag:"mo",output:":}",tex:null,ttype:5,invisible:!0},{input:"int",tag:"mo",output:"\u222b",tex:null,ttype:0},{input:"dx",tag:"mi",output:"{:d x:}",tex:null,ttype:y},{input:"dy",tag:"mi",output:"{:d y:}",tex:null,ttype:y},{input:"dz",tag:"mi",output:"{:d z:}",tex:null,ttype:y},{input:"dt",tag:"mi",output:"{:d t:}",tex:null,ttype:y},{input:"oint",tag:"mo",output:"\u222e",tex:null,ttype:0},{input:"del",tag:"mo",output:"\u2202",tex:"partial",ttype:0},{input:"grad",tag:"mo",output:"\u2207",tex:"nabla",ttype:0},{input:"+-",tag:"mo",output:"\xb1",tex:"pm",ttype:0},{input:"O/",tag:"mo",output:"\u2205",tex:"emptyset",ttype:0},{input:"oo",tag:"mo",output:"\u221e",tex:"infty",ttype:0},{input:"aleph",tag:"mo",output:"\u2135",tex:null,ttype:0},{input:"...",tag:"mo",output:"...",tex:"ldots",ttype:0},{input:":.",tag:"mo",output:"\u2234",tex:"therefore",ttype:0},{input:":'",tag:"mo",output:"\u2235",tex:"because",ttype:0},{input:"/_",tag:"mo",output:"\u2220",tex:"angle",ttype:0},{input:"/_\\",tag:"mo",output:"\u25b3",tex:"triangle",ttype:0},{input:"'",tag:"mo",output:"\u2032",tex:"prime",ttype:0},{input:"tilde",tag:"mover",output:"~",tex:null,ttype:1,acc:!0},{input:"\\ ",tag:"mo",output:"\xa0",tex:null,ttype:0},{input:"frown",tag:"mo",output:"\u2322",tex:null,ttype:0},{input:"quad",tag:"mo",output:"\xa0\xa0",tex:null,ttype:0},{input:"qquad",tag:"mo",output:"\xa0\xa0\xa0\xa0",tex:null,ttype:0},{input:"cdots",tag:"mo",output:"\u22ef",tex:null,ttype:0},{input:"vdots",tag:"mo",output:"\u22ee",tex:null,ttype:0},{input:"ddots",tag:"mo",output:"\u22f1",tex:null,ttype:0},{input:"diamond",tag:"mo",output:"\u22c4",tex:null,ttype:0},{input:"square",tag:"mo",output:"\u25a1",tex:null,ttype:0},{input:"|__",tag:"mo",output:"\u230a",tex:"lfloor",ttype:0},{input:"__|",tag:"mo",output:"\u230b",tex:"rfloor",ttype:0},{input:"|~",tag:"mo",output:"\u2308",tex:"lceiling",ttype:0},{input:"~|",tag:"mo",output:"\u2309",tex:"rceiling",ttype:0},{input:"CC",tag:"mo",output:"\u2102",tex:null,ttype:0},{input:"NN",tag:"mo",output:"\u2115",tex:null,ttype:0},{input:"QQ",tag:"mo",output:"\u211a",tex:null,ttype:0},{input:"RR",tag:"mo",output:"\u211d",tex:null,ttype:0},{input:"ZZ",tag:"mo",output:"\u2124",tex:null,ttype:0},{input:"f",tag:"mi",output:"f",tex:null,ttype:1,func:!0},{input:"g",tag:"mi",output:"g",tex:null,ttype:1,func:!0},{input:"lim",tag:"mo",output:"lim",tex:null,ttype:7},{input:"Lim",tag:"mo",output:"Lim",tex:null,ttype:7},{input:"sin",tag:"mo",output:"sin",tex:null,ttype:1,func:!0},{input:"cos",tag:"mo",output:"cos",tex:null,ttype:1,func:!0},{input:"tan",tag:"mo",output:"tan",tex:null,ttype:1,func:!0},{input:"sinh",tag:"mo",output:"sinh",tex:null,ttype:1,func:!0},{input:"cosh",tag:"mo",output:"cosh",tex:null,ttype:1,func:!0},{input:"tanh",tag:"mo",output:"tanh",tex:null,ttype:1,func:!0},{input:"cot",tag:"mo",output:"cot",tex:null,ttype:1,func:!0},{input:"sec",tag:"mo",output:"sec",tex:null,ttype:1,func:!0},{input:"csc",tag:"mo",output:"csc",tex:null,ttype:1,func:!0},{input:"arcsin",tag:"mo",output:"arcsin",tex:null,ttype:1,func:!0},{input:"arccos",tag:"mo",output:"arccos",tex:null,ttype:1,func:!0},{input:"arctan",tag:"mo",output:"arctan",tex:null,ttype:1,func:!0},{input:"coth",tag:"mo",output:"coth",tex:null,ttype:1,func:!0},{input:"sech",tag:"mo",output:"sech",tex:null,ttype:1,func:!0},{input:"csch",tag:"mo",output:"csch",tex:null,ttype:1,func:!0},{input:"exp",tag:"mo",output:"exp",tex:null,ttype:1,func:!0},{input:"abs",tag:"mo",output:"abs",tex:null,ttype:1,rewriteleftright:["|","|"]},{input:"norm",tag:"mo",output:"norm",tex:null,ttype:1,rewriteleftright:["\u2225","\u2225"]},{input:"floor",tag:"mo",output:"floor",tex:null,ttype:1,rewriteleftright:["\u230a","\u230b"]},{input:"ceil",tag:"mo",output:"ceil",tex:null,ttype:1,rewriteleftright:["\u2308","\u2309"]},{input:"log",tag:"mo",output:"log",tex:null,ttype:1,func:!0},{input:"ln",tag:"mo",output:"ln",tex:null,ttype:1,func:!0},{input:"det",tag:"mo",output:"det",tex:null,ttype:1,func:!0},{input:"dim",tag:"mo",output:"dim",tex:null,ttype:0},{input:"mod",tag:"mo",output:"mod",tex:null,ttype:0},{input:"gcd",tag:"mo",output:"gcd",tex:null,ttype:1,func:!0},{input:"lcm",tag:"mo",output:"lcm",tex:null,ttype:1,func:!0},{input:"lub",tag:"mo",output:"lub",tex:null,ttype:0},{input:"glb",tag:"mo",output:"glb",tex:null,ttype:0},{input:"min",tag:"mo",output:"min",tex:null,ttype:7},{input:"max",tag:"mo",output:"max",tex:null,ttype:7},{input:"uarr",tag:"mo",output:"\u2191",tex:"uparrow",ttype:0},{input:"darr",tag:"mo",output:"\u2193",tex:"downarrow",ttype:0},{input:"rarr",tag:"mo",output:"\u2192",tex:"rightarrow",ttype:0},{input:"->",tag:"mo",output:"\u2192",tex:"to",ttype:0},{input:">->",tag:"mo",output:"\u21a3",tex:"rightarrowtail",ttype:0},{input:"->>",tag:"mo",output:"\u21a0",tex:"twoheadrightarrow",ttype:0},{input:">->>",tag:"mo",output:"\u2916",tex:"twoheadrightarrowtail",ttype:0},{input:"|->",tag:"mo",output:"\u21a6",tex:"mapsto",ttype:0},{input:"larr",tag:"mo",output:"\u2190",tex:"leftarrow",ttype:0},{input:"harr",tag:"mo",output:"\u2194",tex:"leftrightarrow",ttype:0},{input:"rArr",tag:"mo",output:"\u21d2",tex:"Rightarrow",ttype:0},{input:"lArr",tag:"mo",output:"\u21d0",tex:"Leftarrow",ttype:0},{input:"hArr",tag:"mo",output:"\u21d4",tex:"Leftrightarrow",ttype:0},{input:"sqrt",tag:"msqrt",output:"sqrt",tex:null,ttype:1},{input:"root",tag:"mroot",output:"root",tex:null,ttype:2},{input:"frac",tag:"mfrac",output:"/",tex:null,ttype:2},{input:"/",tag:"mfrac",output:"/",tex:null,ttype:3},{input:"stackrel",tag:"mover",output:"stackrel",tex:null,ttype:2},{input:"overset",tag:"mover",output:"stackrel",tex:null,ttype:2},{input:"underset",tag:"munder",output:"stackrel",tex:null,ttype:2},{input:"_",tag:"msub",output:"_",tex:null,ttype:3},{input:"^",tag:"msup",output:"^",tex:null,ttype:3},{input:"hat",tag:"mover",output:"^",tex:null,ttype:1,acc:!0},{input:"bar",tag:"mover",output:"\xaf",tex:"overline",ttype:1,acc:!0},{input:"vec",tag:"mover",output:"\u2192",tex:null,ttype:1,acc:!0},{input:"dot",tag:"mover",output:".",tex:null,ttype:1,acc:!0},{input:"ddot",tag:"mover",output:"..",tex:null,ttype:1,acc:!0},{input:"ul",tag:"munder",output:"\u0332",tex:"underline",ttype:1,acc:!0},{input:"ubrace",tag:"munder",output:"\u23df",tex:"underbrace",ttype:15,acc:!0},{input:"obrace",tag:"mover",output:"\u23de",tex:"overbrace",ttype:15,acc:!0},{input:"text",tag:"mtext",output:"text",tex:null,ttype:10},{input:"mbox",tag:"mtext",output:"mbox",tex:null,ttype:10},{input:"color",tag:"mstyle",ttype:2},{input:"cancel",tag:"menclose",output:"cancel",tex:null,ttype:1},x,{input:"bb",tag:"mstyle",atname:"mathvariant",atval:"bold",output:"bb",tex:null,ttype:1},{input:"mathbf",tag:"mstyle",atname:"mathvariant",atval:"bold",output:"mathbf",tex:null,ttype:1},{input:"sf",tag:"mstyle",atname:"mathvariant",atval:"sans-serif",output:"sf",tex:null,ttype:1},{input:"mathsf",tag:"mstyle",atname:"mathvariant",atval:"sans-serif",output:"mathsf",tex:null,ttype:1},{input:"bbb",tag:"mstyle",atname:"mathvariant",atval:"double-struck",output:"bbb",tex:null,ttype:1,codes:E},{input:"mathbb",tag:"mstyle",atname:"mathvariant",atval:"double-struck",output:"mathbb",tex:null,ttype:1,codes:E},{input:"cc",tag:"mstyle",atname:"mathvariant",atval:"script",output:"cc",tex:null,ttype:1,codes:f},{input:"mathcal",tag:"mstyle",atname:"mathvariant",atval:"script",output:"mathcal",tex:null,ttype:1,codes:f},{input:"tt",tag:"mstyle",atname:"mathvariant",atval:"monospace",output:"tt",tex:null,ttype:1},{input:"mathtt",tag:"mstyle",atname:"mathvariant",atval:"monospace",output:"mathtt",tex:null,ttype:1},{input:"fr",tag:"mstyle",atname:"mathvariant",atval:"fraktur",output:"fr",tex:null,ttype:1,codes:g},{input:"mathfrak",tag:"mstyle",atname:"mathvariant",atval:"fraktur",output:"mathfrak",tex:null,ttype:1,codes:g}];function C(t,e){return t.input>e.input?1:-1}var b,S,I,N=[];function A(){var t,e=T.length;for(t=0;t>1]=N[a];if(S=I,""!=s)return I=T[e].ttype,T[e];I=0,a=1,i=t.slice(0,1);for(var l=!0;"0"<=i&&i<="9"&&a<=t.length;)i=t.slice(a,a+1),a++;if(i==u&&"0"<=(i=t.slice(a,a+1))&&i<="9")for(l=!1,a++;"0"<=i&&i<="9"&&a<=t.length;)i=t.slice(a,a+1),a++;return l&&a>1||a>2?(i=t.slice(0,a-1),n="mn"):(a=2,n=("A">(i=t.slice(0,1))||i>"Z")&&("a">i||i>"z")?"mo":"mi"),"-"==i&&3==S?(I=3,{input:i,tag:n,output:i,ttype:1,func:!0}):{input:i,tag:n,output:i,ttype:0}}function M(t){var e;t.hasChildNodes()&&(!t.firstChild.hasChildNodes()||"mrow"!=t.nodeName&&"M:MROW"!=t.nodeName||"("!=(e=t.firstChild.firstChild.nodeValue)&&"["!=e&&"{"!=e||t.removeChild(t.firstChild),!t.lastChild.hasChildNodes()||"mrow"!=t.nodeName&&"M:MROW"!=t.nodeName||")"!=(e=t.lastChild.firstChild.nodeValue)&&"]"!=e&&"}"!=e||t.removeChild(t.lastChild))}function D(t){var e,i,a,s,r,o=n.createDocumentFragment();if(null==(e=L(t=R(t,0)))||5==e.ttype&&b>0)return[null,t];switch(e.ttype==y&&(e=L(t=e.output+R(t,e.input.length))),e.ttype){case 7:case 0:return t=R(t,e.input.length),[m(e.tag,n.createTextNode(e.output)),t];case 4:return b++,a=k(t=R(t,e.input.length),!0),b--,"boolean"==typeof e.invisible&&e.invisible?i=m("mrow",a[0]):(i=m("mo",n.createTextNode(e.output)),(i=m("mrow",i)).appendChild(a[0])),[i,a[1]];case 10:return e!=x&&(t=R(t,e.input.length)),-1==(s="{"==t.charAt(0)?t.indexOf("}"):"("==t.charAt(0)?t.indexOf(")"):"["==t.charAt(0)?t.indexOf("]"):e==x?t.slice(1).indexOf('"')+1:0)&&(s=t.length)," "==(r=t.slice(1,s)).charAt(0)&&((i=m("mspace")).setAttribute("width","1ex"),o.appendChild(i)),o.appendChild(m(e.tag,n.createTextNode(r)))," "==r.charAt(r.length-1)&&((i=m("mspace")).setAttribute("width","1ex"),o.appendChild(i)),t=R(t,s+1),[m("mrow",o),t];case 15:case 1:if(null==(a=D(t=R(t,e.input.length)))[0])return[m(e.tag,n.createTextNode(e.output)),t];if("boolean"==typeof e.func&&e.func)return"^"==(r=t.charAt(0))||"_"==r||"/"==r||"|"==r||","==r||1==e.input.length&&e.input.match(/\w/)&&"("!=r?[m(e.tag,n.createTextNode(e.output)),t]:((i=m("mrow",m(e.tag,n.createTextNode(e.output)))).appendChild(a[0]),[i,a[1]]);if(M(a[0]),"sqrt"==e.input)return[m(e.tag,a[0]),a[1]];if(void 0!==e.rewriteleftright)return(i=m("mrow",m("mo",n.createTextNode(e.rewriteleftright[0])))).appendChild(a[0]),i.appendChild(m("mo",n.createTextNode(e.rewriteleftright[1]))),[i,a[1]];if("cancel"==e.input)return(i=m(e.tag,a[0])).setAttribute("notation","updiagonalstrike"),[i,a[1]];if("boolean"==typeof e.acc&&e.acc)return(i=m(e.tag,a[0])).appendChild(m("mo",n.createTextNode(e.output))),[i,a[1]];if(!h&&void 0!==e.codes)for(s=0;s64&&r.charCodeAt(u)<91?l+=e.codes[r.charCodeAt(u)-65]:r.charCodeAt(u)>96&&r.charCodeAt(u)<123?l+=e.codes[r.charCodeAt(u)-71]:l+=r.charAt(u);"mi"==a[0].nodeName?a[0]=m("mo").appendChild(n.createTextNode(l)):a[0].replaceChild(m("mo").appendChild(n.createTextNode(l)),a[0].childNodes[s])}return(i=m(e.tag,a[0])).setAttribute(e.atname,e.atval),[i,a[1]];case 2:if(null==(a=D(t=R(t,e.input.length)))[0])return[m("mo",n.createTextNode(e.input)),t];M(a[0]);var p=D(a[1]);return null==p[0]?[m("mo",n.createTextNode(e.input)),t]:(M(p[0]),"color"==e.input?("{"==t.charAt(0)?s=t.indexOf("}"):"("==t.charAt(0)?s=t.indexOf(")"):"["==t.charAt(0)&&(s=t.indexOf("]")),r=t.slice(1,s),(i=m(e.tag,p[0])).setAttribute("mathcolor",r),[i,p[1]]):("root"!=e.input&&"stackrel"!=e.output||o.appendChild(p[0]),o.appendChild(a[0]),"frac"==e.input&&o.appendChild(p[0]),[m(e.tag,o),p[1]]));case 3:return t=R(t,e.input.length),[m("mo",n.createTextNode(e.output)),t];case 6:return t=R(t,e.input.length),(i=m("mspace")).setAttribute("width","1ex"),o.appendChild(i),o.appendChild(m(e.tag,n.createTextNode(e.output))),(i=m("mspace")).setAttribute("width","1ex"),o.appendChild(i),[m("mrow",o),t];case 9:return b++,a=k(t=R(t,e.input.length),!1),b--,r="",null!=a[0].lastChild&&(r=a[0].lastChild.firstChild.nodeValue),"|"==r?(i=m("mo",n.createTextNode(e.output)),(i=m("mrow",i)).appendChild(a[0]),[i,a[1]]):(i=m("mo",n.createTextNode("\u2223")),[i=m("mrow",i),t]);default:return t=R(t,e.input.length),[m(e.tag,n.createTextNode(e.output)),t]}}function P(t){var e,i,a,s,r,o;if(i=L(t=R(t,0)),s=(r=D(t))[0],3==(e=L(t=r[1])).ttype&&"/"!=e.input){if(null==(r=D(t=R(t,e.input.length)))[0]?r[0]=m("mo",n.createTextNode("\u25a1")):M(r[0]),t=r[1],o=7==i.ttype||15==i.ttype,"_"==e.input)if("^"==(a=L(t)).input){var l=D(t=R(t,a.input.length));M(l[0]),t=l[1],(s=m(o?"munderover":"msubsup",s)).appendChild(r[0]),s.appendChild(l[0]),s=m("mrow",s)}else(s=m(o?"munder":"msub",s)).appendChild(r[0]);else"^"==e.input&&o?(s=m("mover",s)).appendChild(r[0]):(s=m(e.tag,s)).appendChild(r[0]);void 0!==i.func&&i.func&&3!=(a=L(t)).ttype&&5!=a.ttype&&(r=P(t),(s=m("mrow",s)).appendChild(r[0]),t=r[1])}return[s,t]}function k(t,e){var i,a,s,r,o=n.createDocumentFragment();do{a=(s=P(t=R(t,0)))[0],3==(i=L(t=s[1])).ttype&&"/"==i.input?(null==(s=P(t=R(t,i.input.length)))[0]?s[0]=m("mo",n.createTextNode("\u25a1")):M(s[0]),t=s[1],M(a),(a=m(i.tag,a)).appendChild(s[0]),o.appendChild(a),i=L(t)):null!=a&&o.appendChild(a)}while((5!=i.ttype&&(9!=i.ttype||e)||0==b)&&null!=i&&""!=i.output);if(5==i.ttype||9==i.ttype){var l=o.childNodes.length;if(l>0&&"mrow"==o.childNodes[l-1].nodeName&&o.childNodes[l-1].lastChild&&o.childNodes[l-1].lastChild.firstChild){var u=o.childNodes[l-1].lastChild.firstChild.nodeValue;if(")"==u||"]"==u){var h=o.childNodes[l-1].firstChild.firstChild.nodeValue;if("("==h&&")"==u&&"}"!=i.output||"["==h&&"]"==u){var p=[],c=!0,d=o.childNodes.length;for(r=0;c&&r1&&(c=p[r].length==p[r-2].length)}if(c=c&&(p.length>1||p[0].length>0)){var g,E,y,x,T=n.createDocumentFragment();for(r=0;r2&&(o.removeChild(o.firstChild),o.removeChild(o.firstChild)),T.appendChild(m("mtr",g))}a=m("mtable",T),"boolean"==typeof i.invisible&&i.invisible&&a.setAttribute("columnalign","left"),o.replaceChild(a,o.firstChild)}}}}t=R(t,i.input.length),"boolean"==typeof i.invisible&&i.invisible||(a=m("mo",n.createTextNode(i.output)),o.appendChild(a))}return[o,t]}function H(t,e){var i;return b=0,i=m("mstyle",k((t=(t=(t=(t=t.replace(/ /g,"")).replace(/>/g,">")).replace(/</g,"<")).replace(/(Sin|Cos|Tan|Arcsin|Arccos|Arctan|Sinh|Cosh|Tanh|Cot|Sec|Csc|Log|Ln|Abs)/g,(function(t){return t.toLowerCase()}))).replace(/^\s+/g,""),!1)[0]),""!=s&&i.setAttribute("mathcolor",s),""!=r&&i.setAttribute("fontfamily",r),o&&i.setAttribute("displaystyle","true"),i=m("math",i),l&&i.setAttribute("title",t.replace(/\s+/g," ")),i}l=!1,r="",s="",function(){for(var t=0,e=T.length;t=n-1&&(this.lastChild=t),this.SetData(i,t),t.nextSibling=e.nextSibling,e.nextSibling=e.parent=null,e},hasChildNodes:function(t){return this.childNodes.length>0},setAttribute:function(t,e){this[t]=e}}),A()},Augment:function(t){for(var e in t)if(t.hasOwnProperty(e)){switch(e){case"displaystyle":o=t[e];break;case"decimal":decimal=t[e];break;case"parseMath":H=t[e];break;case"parseExpr":k=t[e];break;case"parseIexpr":P=t[e];break;case"parseSexpr":D=t[e];break;case"removeBrackets":M=t[e];break;case"getSymbol":L=t[e];break;case"position":O=t[e];break;case"removeCharsAndBlanks":R=t[e];break;case"createMmlNode":m=t[e];break;case"createElementMathML":d=t[e];break;case"createElementXHTML":p=t[e];break;case"initSymbols":A=t[e];break;case"refreshSymbols":v=t[e];break;case"compareNames":C=t[e]}this[e]=t[e]}},parseMath:H,parseExpr:k,parseIexpr:P,parseSexr:D,removeBrackets:M,getSymbol:L,position:O,removeCharsAndBlanks:R,createMmlNode:m,createElementMathML:d,createElementXHTML:p,initSymbols:A,refreshSymbols:v,compareNames:C,createDocumentFragment:i,document:n,define:function(t,e){T.push({input:t,tag:"mo",output:e,tex:null,ttype:y}),v()},newcommand:function(t,e){T.push({input:t,tag:"mo",output:e,tex:null,ttype:y}),v()},newsymbol:function(t){T.push(t),v()},symbols:T,names:N,TOKEN:{CONST:0,UNARY:1,BINARY:2,INFIX:3,LEFTBRACKET:4,RIGHTBRACKET:5,SPACE:6,UNDEROVER:7,DEFINITION:y,LEFTRIGHT:9,TEXT:10,UNARYUNDEROVER:15}}})}(MathJax.InputJax.AsciiMath),(i=MathJax.InputJax.AsciiMath).Augment({sourceMenuTitle:["AsciiMathInput","AsciiMath Input"],annotationEncoding:"text/x-asciimath",prefilterHooks:MathJax.Callback.Hooks(!0),postfilterHooks:MathJax.Callback.Hooks(!0),Translate:function(t){var e,i=MathJax.HTML.getScript(t),a={math:i,script:t},s=this.prefilterHooks.Execute(a);if(s)return s;i=a.math;try{e=this.AM.parseMath(i)}catch(t){if(!t.asciimathError)throw t;e=this.formatError(t,i)}return a.math=n(e),this.postfilterHooks.Execute(a),this.postfilterHooks.Execute(a)||a.math},formatError:function(t,e,i){var a=t.message.replace(/\n.*/,"");return MathJax.Hub.signal.Post(["AsciiMath Jax - parse error",a,e,i]),n.Error(a)},Error:function(t){throw MathJax.Hub.Insert(Error(t),{asciimathError:!0})},Startup:function(){n=MathJax.ElementJax.mml,this.AM.Init()}}),i.loadComplete("jax.js")},function(t,e){var i,n,a;i=MathJax.ElementJax.mml,n=["texWithDelims","movesupsub","subsupOK","primes","movablelimits","scriptlevel","open","close","isError","multiline","variantForm","autoOP","fnOP"],a={texWithDelims:"withDelims"},i.mbase.Augment({toMmlNode:function(t){var e=this.type;"texatom"===e&&(e="TeXAtom");var i=this.nodeMake(t,e);return"texClass"in this&&(i.texClass=this.texClass),i},nodeMake:function(t,e){for(var i=t.MML["TeXmathchoice"===e?"mathchoice":e](),n=this.data[0]&&this.data[0].inferred&&this.inferRow?this.data[0].data:this.data,a=0,s=n.length;a0)&&!(o=i.next()).done;)n.push(o.value)}catch(t){a={error:t}}finally{try{o&&!o.done&&(r=i.return)&&r.call(i)}finally{if(a)throw a.error}}return n};Object.defineProperty(e,"__esModule",{value:!0}),e.MathML=void 0;var n=r(5),s=r(3),l=r(6),c=r(1),u=r(2),h=function(t){function e(e){void 0===e&&(e={});var r=this,o=i(s.separateOptions(e,c.FindMathML.OPTIONS,u.MathMLCompile.OPTIONS),3),a=o[0],n=o[1],h=o[2];return(r=t.call(this,a)||this).findMathML=r.options.FindMathML||new c.FindMathML(n),r.mathml=r.options.MathMLCompile||new u.MathMLCompile(h),r.mmlFilters=new l.FunctionList,r}return a(e,t),e.prototype.setAdaptor=function(e){t.prototype.setAdaptor.call(this,e),this.findMathML.adaptor=e,this.mathml.adaptor=e},e.prototype.setMmlFactory=function(e){t.prototype.setMmlFactory.call(this,e),this.mathml.setMmlFactory(e)},Object.defineProperty(e.prototype,"processStrings",{get:function(){return!1},enumerable:!1,configurable:!0}),e.prototype.compile=function(t,e){var r=t.start.node;if(!r||!t.end.node||this.options.forceReparse||"#text"===this.adaptor.kind(r)){var o=this.executeFilters(this.preFilters,t,e,t.math||""),a=this.checkForErrors(this.adaptor.parse(o,"text/"+this.options.parseAs)),i=this.adaptor.body(a);1!==this.adaptor.childNodes(i).length&&this.error("MathML must consist of a single element"),r=this.adaptor.remove(this.adaptor.firstChild(i)),"math"!==this.adaptor.kind(r).replace(/^[a-z]+:/,"")&&this.error("MathML must be formed by a element, not <"+this.adaptor.kind(r)+">")}return r=this.executeFilters(this.mmlFilters,t,e,r),this.executeFilters(this.postFilters,t,e,this.mathml.compile(r))},e.prototype.checkForErrors=function(t){var e=this.adaptor.tags(this.adaptor.body(t),"parsererror")[0];return e&&(""===this.adaptor.textContent(e)&&this.error("Error processing MathML"),this.options.parseError.call(this,e)),t},e.prototype.error=function(t){throw new Error(t)},e.prototype.findMath=function(t){return this.findMathML.findMath(t)},e.NAME="MathML",e.OPTIONS=s.defaultOptions({parseAs:"html",forceReparse:!1,FindMathML:null,MathMLCompile:null,parseError:function(t){this.error(this.adaptor.textContent(t).replace(/\n.*/g,""))}},n.AbstractInputJax.OPTIONS),e}(n.AbstractInputJax);e.MathML=h},function(t,e,r){"use strict";var o,a=this&&this.__extends||(o=function(t,e){return(o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}o(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),i=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],o=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&o>=t.length&&(t=void 0),{value:t&&t[o++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.FindMathML=void 0;var n=r(7),s="http://www.w3.org/1998/Math/MathML",l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a(e,t),e.prototype.findMath=function(t){var e=new Set;this.findMathNodes(t,e),this.findMathPrefixed(t,e);var r=this.adaptor.root(this.adaptor.document);return"html"===this.adaptor.kind(r)&&0===e.size&&this.findMathNS(t,e),this.processMath(e)},e.prototype.findMathNodes=function(t,e){var r,o;try{for(var a=i(this.adaptor.tags(t,"math")),n=a.next();!n.done;n=a.next()){var s=n.value;e.add(s)}}catch(t){r={error:t}}finally{try{n&&!n.done&&(o=a.return)&&o.call(a)}finally{if(r)throw r.error}}},e.prototype.findMathPrefixed=function(t,e){var r,o,a,n,l=this.adaptor.root(this.adaptor.document);try{for(var c=i(this.adaptor.allAttributes(l)),u=c.next();!u.done;u=c.next()){var h=u.value;if("xmlns:"===h.name.substr(0,6)&&h.value===s){var p=h.name.substr(6);try{for(var d=(a=void 0,i(this.adaptor.tags(t,p+":math"))),f=d.next();!f.done;f=d.next()){var M=f.value;e.add(M)}}catch(t){a={error:t}}finally{try{f&&!f.done&&(n=d.return)&&n.call(d)}finally{if(a)throw a.error}}}}}catch(t){r={error:t}}finally{try{u&&!u.done&&(o=c.return)&&o.call(c)}finally{if(r)throw r.error}}},e.prototype.findMathNS=function(t,e){var r,o;try{for(var a=i(this.adaptor.tags(t,"math",s)),n=a.next();!n.done;n=a.next()){var l=n.value;e.add(l)}}catch(t){r={error:t}}finally{try{n&&!n.done&&(o=a.return)&&o.call(a)}finally{if(r)throw r.error}}},e.prototype.processMath=function(t){var e,r,o=[];try{for(var a=i(Array.from(t)),n=a.next();!n.done;n=a.next()){var s=n.value,l="block"===this.adaptor.getAttribute(s,"display")||"display"===this.adaptor.getAttribute(s,"mode"),c={node:s,n:0,delim:""},u={node:s,n:0,delim:""};o.push({math:this.adaptor.outerHTML(s),start:c,end:u,display:l})}}catch(t){e={error:t}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(e)throw e.error}}return o},e.OPTIONS={},e}(n.AbstractFindMath);e.FindMathML=l},function(t,e,r){"use strict";var o=this&&this.__assign||function(){return(o=Object.assign||function(t){for(var e,r=1,o=arguments.length;r=t.length&&(t=void 0),{value:t&&t[o++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.MathMLCompile=void 0;var i=r(8),n=r(3),s=r(9),l=function(){function t(t){void 0===t&&(t={});var e=this.constructor;this.options=n.userOptions(n.defaultOptions({},e.OPTIONS),t)}return t.prototype.setMmlFactory=function(t){this.factory=t},t.prototype.compile=function(t){var e=this.makeNode(t);return e.verifyTree(this.options.verify),e.setInheritedAttributes({},!1,0,!1),e.walkTree(this.markMrows),e},t.prototype.makeNode=function(t){var e,r,o=this.adaptor,n=!1,s=o.kind(t).replace(/^.*:/,""),l=o.getAttribute(t,"data-mjx-texclass")||"";l&&(l=this.filterAttribute("data-mjx-texclass",l)||"");var c=l&&"mrow"===s?"TeXAtom":s;try{for(var u=a(this.filterClassList(o.allClasses(t))),h=u.next();!h.done;h=u.next()){var p=h.value;p.match(/^MJX-TeXAtom-/)?(l=p.substr(12),c="TeXAtom"):"MJX-fixedlimits"===p&&(n=!0)}}catch(t){e={error:t}}finally{try{h&&!h.done&&(r=u.return)&&r.call(u)}finally{if(e)throw e.error}}this.factory.getNodeClass(c)||this.error('Unknown node type "'+c+'"');var d=this.factory.create(c);return"TeXAtom"===c?this.texAtom(d,l,n):l&&(d.texClass=i.TEXCLASS[l],d.setProperty("texClass",d.texClass)),this.addAttributes(d,t),this.checkClass(d,t),this.addChildren(d,t),d},t.prototype.addAttributes=function(t,e){var r,o,i=!1;try{for(var n=a(this.adaptor.allAttributes(e)),s=n.next();!s.done;s=n.next()){var l=s.value,c=l.name,u=this.filterAttribute(c,l.value);if(null===u)return;if("data-mjx-"===c.substr(0,9))"data-mjx-alternate"===c?t.setProperty("variantForm",!0):"data-mjx-variant"===c&&(t.attributes.set("mathvariant",u),i=!0);else if("class"!==c){var h=u.toLowerCase();"true"===h||"false"===h?t.attributes.set(c,"true"===h):i&&"mathvariant"===c||t.attributes.set(c,u)}}}catch(t){r={error:t}}finally{try{s&&!s.done&&(o=n.return)&&o.call(n)}finally{if(r)throw r.error}}},t.prototype.filterAttribute=function(t,e){return e},t.prototype.filterClassList=function(t){return t},t.prototype.addChildren=function(t,e){var r,o;if(0!==t.arity){var i=this.adaptor;try{for(var n=a(i.childNodes(e)),s=n.next();!s.done;s=n.next()){var l=s.value,c=i.kind(l);if("#comment"!==c)if("#text"===c)this.addText(t,l);else if(t.isKind("annotation-xml"))t.appendChild(this.factory.create("XML").setXML(l,i));else{var u=t.appendChild(this.makeNode(l));0===u.arity&&i.childNodes(l).length&&(this.options.fixMisplacedChildren?this.addChildren(t,l):u.mError("There should not be children for "+u.kind+" nodes",this.options.verify,!0))}}}catch(t){r={error:t}}finally{try{s&&!s.done&&(o=n.return)&&o.call(n)}finally{if(r)throw r.error}}}},t.prototype.addText=function(t,e){var r=this.adaptor.value(e);(t.isToken||t.getProperty("isChars"))&&t.arity?(t.isToken&&(r=s.translate(r),r=this.trimSpace(r)),t.appendChild(this.factory.create("text").setText(r))):r.match(/\S/)&&this.error('Unexpected text node "'+r+'"')},t.prototype.checkClass=function(t,e){var r,o,i=[];try{for(var n=a(this.filterClassList(this.adaptor.allClasses(e))),s=n.next();!s.done;s=n.next()){var l=s.value;"MJX-"===l.substr(0,4)?"MJX-variant"===l?t.setProperty("variantForm",!0):"MJX-TeXAtom"!==l.substr(0,11)&&t.attributes.set("mathvariant",this.fixCalligraphic(l.substr(3))):i.push(l)}}catch(t){r={error:t}}finally{try{s&&!s.done&&(o=n.return)&&o.call(n)}finally{if(r)throw r.error}}i.length&&t.attributes.set("class",i.join(" "))},t.prototype.fixCalligraphic=function(t){return t.replace(/caligraphic/,"calligraphic")},t.prototype.texAtom=function(t,e,r){t.texClass=i.TEXCLASS[e],t.setProperty("texClass",t.texClass),"OP"!==e||r||(t.setProperty("movesupsub",!0),t.attributes.setInherited("movablelimits",!0))},t.prototype.markMrows=function(t){if(t.isKind("mrow")&&!t.isInferred&&t.childNodes.length>=2){var e=t.childNodes[0],r=t.childNodes[t.childNodes.length-1];e.isKind("mo")&&e.attributes.get("fence")&&r.isKind("mo")&&r.attributes.get("fence")&&(e.childNodes.length&&t.setProperty("open",e.getText()),r.childNodes.length&&t.setProperty("close",r.getText()))}},t.prototype.trimSpace=function(t){return t.replace(/[\t\n\r]/g," ").replace(/^ +/,"").replace(/ +$/,"").replace(/ +/g," ")},t.prototype.error=function(t){throw new Error(t)},t.OPTIONS={MmlFactory:null,fixMisplacedChildren:!0,verify:o({},i.AbstractMmlNode.verifyDefaults),translateEntities:!0},t}();e.MathMLCompile=l},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.APPEND=MathJax._.util.Options.APPEND,e.REMOVE=MathJax._.util.Options.REMOVE,e.Expandable=MathJax._.util.Options.Expandable,e.expandable=MathJax._.util.Options.expandable,e.makeArray=MathJax._.util.Options.makeArray,e.keys=MathJax._.util.Options.keys,e.copy=MathJax._.util.Options.copy,e.insert=MathJax._.util.Options.insert,e.defaultOptions=MathJax._.util.Options.defaultOptions,e.userOptions=MathJax._.util.Options.userOptions,e.selectOptions=MathJax._.util.Options.selectOptions,e.selectOptionsFromKeys=MathJax._.util.Options.selectOptionsFromKeys,e.separateOptions=MathJax._.util.Options.separateOptions},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.isObject=MathJax._.components.global.isObject,e.combineConfig=MathJax._.components.global.combineConfig,e.combineDefaults=MathJax._.components.global.combineDefaults,e.combineWithMathJax=MathJax._.components.global.combineWithMathJax,e.MathJax=MathJax._.components.global.MathJax},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractInputJax=MathJax._.core.InputJax.AbstractInputJax},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.FunctionList=MathJax._.util.FunctionList.FunctionList},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractFindMath=MathJax._.core.FindMath.AbstractFindMath},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TEXCLASS=MathJax._.core.MmlTree.MmlNode.TEXCLASS,e.TEXCLASSNAMES=MathJax._.core.MmlTree.MmlNode.TEXCLASSNAMES,e.indentAttributes=MathJax._.core.MmlTree.MmlNode.indentAttributes,e.AbstractMmlNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlNode,e.AbstractMmlTokenNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlTokenNode,e.AbstractMmlLayoutNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlLayoutNode,e.AbstractMmlBaseNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlBaseNode,e.AbstractMmlEmptyNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlEmptyNode,e.TextNode=MathJax._.core.MmlTree.MmlNode.TextNode,e.XMLNode=MathJax._.core.MmlTree.MmlNode.XMLNode},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.options=MathJax._.util.Entities.options,e.entities=MathJax._.util.Entities.entities,e.add=MathJax._.util.Entities.add,e.remove=MathJax._.util.Entities.remove,e.translate=MathJax._.util.Entities.translate,e.numeric=MathJax._.util.Entities.numeric},function(t,e,r){"use strict";r.r(e);var o=r(4),a=r(0),i=r(1),n=r(2);Object(o.combineWithMathJax)({_:{input:{mathml_ts:a,mathml:{FindMathML:i,MathMLCompile:n}}}}),MathJax.startup&&(MathJax.startup.registerConstructor("mml",a.MathML),MathJax.startup.useInput("mml"))}]); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/mml/entities.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/mml/entities.js new file mode 100644 index 0000000..a0b0c3d --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/mml/entities.js @@ -0,0 +1 @@ +!function(r){var e={};function t(o){if(e[o])return e[o].exports;var a=e[o]={i:o,l:!1,exports:{}};return r[o].call(a.exports,a,a.exports,t),a.l=!0,a.exports}t.m=r,t.c=e,t.d=function(r,e,o){t.o(r,e)||Object.defineProperty(r,e,{enumerable:!0,get:o})},t.r=function(r){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(r,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(r,"__esModule",{value:!0})},t.t=function(r,e){if(1&e&&(r=t(r)),8&e)return r;if(4&e&&"object"==typeof r&&r&&r.__esModule)return r;var o=Object.create(null);if(t.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:r}),2&e&&"string"!=typeof r)for(var a in r)t.d(o,a,function(e){return r[e]}.bind(null,a));return o},t.n=function(r){var e=r&&r.__esModule?function(){return r.default}:function(){return r};return t.d(e,"a",e),e},t.o=function(r,e){return Object.prototype.hasOwnProperty.call(r,e)},t.p="",t(t.s=1)}([function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.options=MathJax._.util.Entities.options,e.entities=MathJax._.util.Entities.entities,e.add=MathJax._.util.Entities.add,e.remove=MathJax._.util.Entities.remove,e.translate=MathJax._.util.Entities.translate,e.numeric=MathJax._.util.Entities.numeric},function(r,e,t){"use strict";t.r(e);t(2)},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(3),t(4),t(5),t(6),t(7),t(8),t(9),t(10),t(11),t(12),t(13),t(14),t(15),t(16),t(17),t(18),t(19),t(20),t(21),t(22),t(23),t(24),t(25),t(26),t(27),t(28),t(29),t(30),t(31)},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({AElig:"\xc6",AMP:"&",Aacute:"\xc1",Abreve:"\u0102",Acirc:"\xc2",Acy:"\u0410",Agrave:"\xc0",Alpha:"\u0391",Amacr:"\u0100",And:"\u2a53",Aogon:"\u0104",Aring:"\xc5",Assign:"\u2254",Atilde:"\xc3",Auml:"\xc4",aacute:"\xe1",abreve:"\u0103",ac:"\u223e",acE:"\u223e\u0333",acd:"\u223f",acirc:"\xe2",acy:"\u0430",aelig:"\xe6",af:"\u2061",agrave:"\xe0",alefsym:"\u2135",amacr:"\u0101",andand:"\u2a55",andd:"\u2a5c",andslope:"\u2a58",andv:"\u2a5a",ange:"\u29a4",angle:"\u2220",angmsdaa:"\u29a8",angmsdab:"\u29a9",angmsdac:"\u29aa",angmsdad:"\u29ab",angmsdae:"\u29ac",angmsdaf:"\u29ad",angmsdag:"\u29ae",angmsdah:"\u29af",angrt:"\u221f",angrtvb:"\u22be",angrtvbd:"\u299d",angst:"\xc5",angzarr:"\u237c",aogon:"\u0105",ap:"\u2248",apE:"\u2a70",apacir:"\u2a6f",apid:"\u224b",apos:"'",approx:"\u2248",approxeq:"\u224a",aring:"\xe5",ast:"*",asymp:"\u2248",asympeq:"\u224d",atilde:"\xe3",auml:"\xe4",awconint:"\u2233",awint:"\u2a11"},"a")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({Barv:"\u2ae7",Barwed:"\u2306",Bcy:"\u0411",Bernoullis:"\u212c",Beta:"\u0392",Bumpeq:"\u224e",bNot:"\u2aed",backcong:"\u224c",backepsilon:"\u03f6",barvee:"\u22bd",barwed:"\u2305",barwedge:"\u2305",bbrk:"\u23b5",bbrktbrk:"\u23b6",bcong:"\u224c",bcy:"\u0431",bdquo:"\u201e",becaus:"\u2235",because:"\u2235",bemptyv:"\u29b0",bepsi:"\u03f6",bernou:"\u212c",bigcap:"\u22c2",bigcup:"\u22c3",bigvee:"\u22c1",bigwedge:"\u22c0",bkarow:"\u290d",blacksquare:"\u25aa",blacktriangleright:"\u25b8",blank:"\u2423",blk12:"\u2592",blk14:"\u2591",blk34:"\u2593",block:"\u2588",bne:"=\u20e5",bnequiv:"\u2261\u20e5",bnot:"\u2310",bot:"\u22a5",bottom:"\u22a5",boxDL:"\u2557",boxDR:"\u2554",boxDl:"\u2556",boxDr:"\u2553",boxH:"\u2550",boxHD:"\u2566",boxHU:"\u2569",boxHd:"\u2564",boxHu:"\u2567",boxUL:"\u255d",boxUR:"\u255a",boxUl:"\u255c",boxUr:"\u2559",boxV:"\u2551",boxVH:"\u256c",boxVL:"\u2563",boxVR:"\u2560",boxVh:"\u256b",boxVl:"\u2562",boxVr:"\u255f",boxbox:"\u29c9",boxdL:"\u2555",boxdR:"\u2552",boxh:"\u2500",boxhD:"\u2565",boxhU:"\u2568",boxhd:"\u252c",boxhu:"\u2534",boxuL:"\u255b",boxuR:"\u2558",boxv:"\u2502",boxvH:"\u256a",boxvL:"\u2561",boxvR:"\u255e",boxvh:"\u253c",boxvl:"\u2524",boxvr:"\u251c",bprime:"\u2035",breve:"\u02d8",brvbar:"\xa6",bsemi:"\u204f",bsim:"\u223d",bsime:"\u22cd",bsolb:"\u29c5",bsolhsub:"\u27c8",bullet:"\u2022",bump:"\u224e",bumpE:"\u2aae",bumpe:"\u224f",bumpeq:"\u224f"},"b")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({CHcy:"\u0427",COPY:"\xa9",Cacute:"\u0106",CapitalDifferentialD:"\u2145",Cayleys:"\u212d",Ccaron:"\u010c",Ccedil:"\xc7",Ccirc:"\u0108",Cconint:"\u2230",Cdot:"\u010a",Cedilla:"\xb8",Chi:"\u03a7",ClockwiseContourIntegral:"\u2232",CloseCurlyDoubleQuote:"\u201d",CloseCurlyQuote:"\u2019",Colon:"\u2237",Colone:"\u2a74",Conint:"\u222f",CounterClockwiseContourIntegral:"\u2233",cacute:"\u0107",capand:"\u2a44",capbrcup:"\u2a49",capcap:"\u2a4b",capcup:"\u2a47",capdot:"\u2a40",caps:"\u2229\ufe00",caret:"\u2041",caron:"\u02c7",ccaps:"\u2a4d",ccaron:"\u010d",ccedil:"\xe7",ccirc:"\u0109",ccups:"\u2a4c",ccupssm:"\u2a50",cdot:"\u010b",cedil:"\xb8",cemptyv:"\u29b2",cent:"\xa2",centerdot:"\xb7",chcy:"\u0447",checkmark:"\u2713",cir:"\u25cb",cirE:"\u29c3",cire:"\u2257",cirfnint:"\u2a10",cirmid:"\u2aef",cirscir:"\u29c2",clubsuit:"\u2663",colone:"\u2254",coloneq:"\u2254",comma:",",commat:"@",compfn:"\u2218",complement:"\u2201",complexes:"\u2102",cong:"\u2245",congdot:"\u2a6d",conint:"\u222e",coprod:"\u2210",copy:"\xa9",copysr:"\u2117",crarr:"\u21b5",cross:"\u2717",csub:"\u2acf",csube:"\u2ad1",csup:"\u2ad0",csupe:"\u2ad2",cudarrl:"\u2938",cudarrr:"\u2935",cularrp:"\u293d",cupbrcap:"\u2a48",cupcap:"\u2a46",cupcup:"\u2a4a",cupdot:"\u228d",cupor:"\u2a45",cups:"\u222a\ufe00",curarrm:"\u293c",curlyeqprec:"\u22de",curlyeqsucc:"\u22df",curren:"\xa4",curvearrowleft:"\u21b6",curvearrowright:"\u21b7",cuvee:"\u22ce",cuwed:"\u22cf",cwconint:"\u2232",cwint:"\u2231",cylcty:"\u232d"},"c")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({DD:"\u2145",DDotrahd:"\u2911",DJcy:"\u0402",DScy:"\u0405",DZcy:"\u040f",Darr:"\u21a1",Dashv:"\u2ae4",Dcaron:"\u010e",Dcy:"\u0414",DiacriticalAcute:"\xb4",DiacriticalDot:"\u02d9",DiacriticalDoubleAcute:"\u02dd",DiacriticalGrave:"`",DiacriticalTilde:"\u02dc",Dot:"\xa8",DotDot:"\u20dc",DoubleContourIntegral:"\u222f",DoubleDownArrow:"\u21d3",DoubleLeftArrow:"\u21d0",DoubleLeftRightArrow:"\u21d4",DoubleLeftTee:"\u2ae4",DoubleLongLeftArrow:"\u27f8",DoubleLongLeftRightArrow:"\u27fa",DoubleLongRightArrow:"\u27f9",DoubleRightArrow:"\u21d2",DoubleUpArrow:"\u21d1",DoubleUpDownArrow:"\u21d5",DownArrowBar:"\u2913",DownArrowUpArrow:"\u21f5",DownBreve:"\u0311",DownLeftRightVector:"\u2950",DownLeftTeeVector:"\u295e",DownLeftVectorBar:"\u2956",DownRightTeeVector:"\u295f",DownRightVectorBar:"\u2957",DownTeeArrow:"\u21a7",Dstrok:"\u0110",dArr:"\u21d3",dHar:"\u2965",darr:"\u2193",dash:"\u2010",dashv:"\u22a3",dbkarow:"\u290f",dblac:"\u02dd",dcaron:"\u010f",dcy:"\u0434",dd:"\u2146",ddagger:"\u2021",ddotseq:"\u2a77",demptyv:"\u29b1",dfisht:"\u297f",dharl:"\u21c3",dharr:"\u21c2",diam:"\u22c4",diamond:"\u22c4",diamondsuit:"\u2666",diams:"\u2666",die:"\xa8",disin:"\u22f2",divide:"\xf7",divonx:"\u22c7",djcy:"\u0452",dlcorn:"\u231e",dlcrop:"\u230d",dollar:"$",doteq:"\u2250",dotminus:"\u2238",doublebarwedge:"\u2306",downarrow:"\u2193",downdownarrows:"\u21ca",downharpoonleft:"\u21c3",downharpoonright:"\u21c2",drbkarow:"\u2910",drcorn:"\u231f",drcrop:"\u230c",dscy:"\u0455",dsol:"\u29f6",dstrok:"\u0111",dtri:"\u25bf",dtrif:"\u25be",duarr:"\u21f5",duhar:"\u296f",dwangle:"\u29a6",dzcy:"\u045f",dzigrarr:"\u27ff"},"d")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({ENG:"\u014a",ETH:"\xd0",Eacute:"\xc9",Ecaron:"\u011a",Ecirc:"\xca",Ecy:"\u042d",Edot:"\u0116",Egrave:"\xc8",Emacr:"\u0112",EmptySmallSquare:"\u25fb",EmptyVerySmallSquare:"\u25ab",Eogon:"\u0118",Epsilon:"\u0395",Equal:"\u2a75",Esim:"\u2a73",Eta:"\u0397",Euml:"\xcb",eDDot:"\u2a77",eDot:"\u2251",eacute:"\xe9",easter:"\u2a6e",ecaron:"\u011b",ecirc:"\xea",ecolon:"\u2255",ecy:"\u044d",edot:"\u0117",ee:"\u2147",eg:"\u2a9a",egrave:"\xe8",egsdot:"\u2a98",el:"\u2a99",elinters:"\u23e7",elsdot:"\u2a97",emacr:"\u0113",emptyset:"\u2205",emptyv:"\u2205",emsp:"\u2003",emsp13:"\u2004",emsp14:"\u2005",eng:"\u014b",ensp:"\u2002",eogon:"\u0119",epar:"\u22d5",eparsl:"\u29e3",eplus:"\u2a71",epsilon:"\u03b5",eqcirc:"\u2256",eqcolon:"\u2255",eqsim:"\u2242",eqslantgtr:"\u2a96",eqslantless:"\u2a95",equals:"=",equest:"\u225f",equiv:"\u2261",equivDD:"\u2a78",eqvparsl:"\u29e5",erarr:"\u2971",esdot:"\u2250",esim:"\u2242",euml:"\xeb",euro:"\u20ac",excl:"!",exist:"\u2203",expectation:"\u2130",exponentiale:"\u2147"},"e")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({Fcy:"\u0424",FilledSmallSquare:"\u25fc",Fouriertrf:"\u2131",fallingdotseq:"\u2252",fcy:"\u0444",female:"\u2640",ffilig:"\ufb03",fflig:"\ufb00",ffllig:"\ufb04",filig:"\ufb01",fjlig:"fj",fllig:"\ufb02",fltns:"\u25b1",fnof:"\u0192",forall:"\u2200",forkv:"\u2ad9",fpartint:"\u2a0d",frac12:"\xbd",frac13:"\u2153",frac14:"\xbc",frac15:"\u2155",frac16:"\u2159",frac18:"\u215b",frac23:"\u2154",frac25:"\u2156",frac34:"\xbe",frac35:"\u2157",frac38:"\u215c",frac45:"\u2158",frac56:"\u215a",frac58:"\u215d",frac78:"\u215e",frasl:"\u2044"},"f")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({GJcy:"\u0403",GT:">",Gammad:"\u03dc",Gbreve:"\u011e",Gcedil:"\u0122",Gcirc:"\u011c",Gcy:"\u0413",Gdot:"\u0120",GreaterGreater:"\u2aa2",Gt:"\u226b",gE:"\u2267",gacute:"\u01f5",gammad:"\u03dd",gbreve:"\u011f",gcirc:"\u011d",gcy:"\u0433",gdot:"\u0121",ge:"\u2265",gel:"\u22db",geq:"\u2265",geqq:"\u2267",geqslant:"\u2a7e",ges:"\u2a7e",gescc:"\u2aa9",gesdot:"\u2a80",gesdoto:"\u2a82",gesdotol:"\u2a84",gesl:"\u22db\ufe00",gesles:"\u2a94",gg:"\u226b",ggg:"\u22d9",gjcy:"\u0453",gl:"\u2277",glE:"\u2a92",gla:"\u2aa5",glj:"\u2aa4",gnapprox:"\u2a8a",gneq:"\u2a88",gneqq:"\u2269",grave:"`",gsim:"\u2273",gsime:"\u2a8e",gsiml:"\u2a90",gtcc:"\u2aa7",gtcir:"\u2a7a",gtlPar:"\u2995",gtquest:"\u2a7c",gtrapprox:"\u2a86",gtrarr:"\u2978",gtrdot:"\u22d7",gtreqless:"\u22db",gtreqqless:"\u2a8c",gtrless:"\u2277",gtrsim:"\u2273",gvertneqq:"\u2269\ufe00",gvnE:"\u2269\ufe00"},"g")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({HARDcy:"\u042a",Hcirc:"\u0124",HilbertSpace:"\u210b",HorizontalLine:"\u2500",Hstrok:"\u0126",hArr:"\u21d4",hairsp:"\u200a",half:"\xbd",hamilt:"\u210b",hardcy:"\u044a",harr:"\u2194",harrcir:"\u2948",hcirc:"\u0125",hearts:"\u2665",heartsuit:"\u2665",hercon:"\u22b9",hksearow:"\u2925",hkswarow:"\u2926",hoarr:"\u21ff",homtht:"\u223b",horbar:"\u2015",hslash:"\u210f",hstrok:"\u0127",hybull:"\u2043",hyphen:"\u2010"},"h")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({IEcy:"\u0415",IJlig:"\u0132",IOcy:"\u0401",Iacute:"\xcd",Icirc:"\xce",Icy:"\u0418",Idot:"\u0130",Igrave:"\xcc",Imacr:"\u012a",Implies:"\u21d2",Int:"\u222c",Iogon:"\u012e",Iota:"\u0399",Itilde:"\u0128",Iukcy:"\u0406",Iuml:"\xcf",iacute:"\xed",ic:"\u2063",icirc:"\xee",icy:"\u0438",iecy:"\u0435",iexcl:"\xa1",iff:"\u21d4",igrave:"\xec",ii:"\u2148",iiiint:"\u2a0c",iiint:"\u222d",iinfin:"\u29dc",iiota:"\u2129",ijlig:"\u0133",imacr:"\u012b",image:"\u2111",imagline:"\u2110",imagpart:"\u2111",imof:"\u22b7",imped:"\u01b5",in:"\u2208",incare:"\u2105",infintie:"\u29dd",inodot:"\u0131",int:"\u222b",integers:"\u2124",intercal:"\u22ba",intlarhk:"\u2a17",intprod:"\u2a3c",iocy:"\u0451",iogon:"\u012f",iprod:"\u2a3c",iquest:"\xbf",isin:"\u2208",isinE:"\u22f9",isindot:"\u22f5",isins:"\u22f4",isinsv:"\u22f3",isinv:"\u2208",it:"\u2062",itilde:"\u0129",iukcy:"\u0456",iuml:"\xef"},"i")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({Jcirc:"\u0134",Jcy:"\u0419",Jsercy:"\u0408",Jukcy:"\u0404",jcirc:"\u0135",jcy:"\u0439",jsercy:"\u0458",jukcy:"\u0454"},"j")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({KHcy:"\u0425",KJcy:"\u040c",Kappa:"\u039a",Kcedil:"\u0136",Kcy:"\u041a",kcedil:"\u0137",kcy:"\u043a",kgreen:"\u0138",khcy:"\u0445",kjcy:"\u045c"},"k")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({LJcy:"\u0409",LT:"<",Lacute:"\u0139",Lang:"\u27ea",Laplacetrf:"\u2112",Lcaron:"\u013d",Lcedil:"\u013b",Lcy:"\u041b",LeftArrowBar:"\u21e4",LeftDoubleBracket:"\u27e6",LeftDownTeeVector:"\u2961",LeftDownVectorBar:"\u2959",LeftRightVector:"\u294e",LeftTeeArrow:"\u21a4",LeftTeeVector:"\u295a",LeftTriangleBar:"\u29cf",LeftUpDownVector:"\u2951",LeftUpTeeVector:"\u2960",LeftUpVectorBar:"\u2958",LeftVectorBar:"\u2952",LessLess:"\u2aa1",Lmidot:"\u013f",LowerLeftArrow:"\u2199",LowerRightArrow:"\u2198",Lstrok:"\u0141",Lt:"\u226a",lAarr:"\u21da",lArr:"\u21d0",lAtail:"\u291b",lBarr:"\u290e",lE:"\u2266",lHar:"\u2962",lacute:"\u013a",laemptyv:"\u29b4",lagran:"\u2112",lang:"\u27e8",langd:"\u2991",langle:"\u27e8",laquo:"\xab",larr:"\u2190",larrb:"\u21e4",larrbfs:"\u291f",larrfs:"\u291d",larrhk:"\u21a9",larrpl:"\u2939",larrsim:"\u2973",lat:"\u2aab",latail:"\u2919",late:"\u2aad",lates:"\u2aad\ufe00",lbarr:"\u290c",lbbrk:"\u2772",lbrke:"\u298b",lbrksld:"\u298f",lbrkslu:"\u298d",lcaron:"\u013e",lcedil:"\u013c",lceil:"\u2308",lcub:"{",lcy:"\u043b",ldca:"\u2936",ldquo:"\u201c",ldquor:"\u201e",ldrdhar:"\u2967",ldrushar:"\u294b",ldsh:"\u21b2",leftarrow:"\u2190",leftarrowtail:"\u21a2",leftharpoondown:"\u21bd",leftharpoonup:"\u21bc",leftrightarrow:"\u2194",leftrightarrows:"\u21c6",leftrightharpoons:"\u21cb",leftrightsquigarrow:"\u21ad",leg:"\u22da",leq:"\u2264",leqq:"\u2266",leqslant:"\u2a7d",les:"\u2a7d",lescc:"\u2aa8",lesdot:"\u2a7f",lesdoto:"\u2a81",lesdotor:"\u2a83",lesg:"\u22da\ufe00",lesges:"\u2a93",lessapprox:"\u2a85",lesseqgtr:"\u22da",lesseqqgtr:"\u2a8b",lessgtr:"\u2276",lesssim:"\u2272",lfisht:"\u297c",lfloor:"\u230a",lg:"\u2276",lgE:"\u2a91",lhard:"\u21bd",lharu:"\u21bc",lharul:"\u296a",lhblk:"\u2584",ljcy:"\u0459",ll:"\u226a",llarr:"\u21c7",llcorner:"\u231e",llhard:"\u296b",lltri:"\u25fa",lmidot:"\u0140",lmoustache:"\u23b0",lnapprox:"\u2a89",lneq:"\u2a87",lneqq:"\u2268",loang:"\u27ec",loarr:"\u21fd",lobrk:"\u27e6",longleftarrow:"\u27f5",longleftrightarrow:"\u27f7",longrightarrow:"\u27f6",looparrowleft:"\u21ab",lopar:"\u2985",loplus:"\u2a2d",lotimes:"\u2a34",lowbar:"_",lozenge:"\u25ca",lozf:"\u29eb",lpar:"(",lparlt:"\u2993",lrarr:"\u21c6",lrcorner:"\u231f",lrhar:"\u21cb",lrhard:"\u296d",lrm:"\u200e",lrtri:"\u22bf",lsaquo:"\u2039",lsh:"\u21b0",lsim:"\u2272",lsime:"\u2a8d",lsimg:"\u2a8f",lsqb:"[",lsquo:"\u2018",lsquor:"\u201a",lstrok:"\u0142",ltcc:"\u2aa6",ltcir:"\u2a79",ltdot:"\u22d6",lthree:"\u22cb",ltlarr:"\u2976",ltquest:"\u2a7b",ltrPar:"\u2996",ltrie:"\u22b4",ltrif:"\u25c2",lurdshar:"\u294a",luruhar:"\u2966",lvertneqq:"\u2268\ufe00",lvnE:"\u2268\ufe00"},"l")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({Map:"\u2905",Mcy:"\u041c",MediumSpace:"\u205f",Mellintrf:"\u2133",Mu:"\u039c",mDDot:"\u223a",male:"\u2642",maltese:"\u2720",map:"\u21a6",mapsto:"\u21a6",mapstodown:"\u21a7",mapstoleft:"\u21a4",mapstoup:"\u21a5",marker:"\u25ae",mcomma:"\u2a29",mcy:"\u043c",mdash:"\u2014",measuredangle:"\u2221",micro:"\xb5",mid:"\u2223",midast:"*",midcir:"\u2af0",middot:"\xb7",minus:"\u2212",minusb:"\u229f",minusd:"\u2238",minusdu:"\u2a2a",mlcp:"\u2adb",mldr:"\u2026",mnplus:"\u2213",models:"\u22a7",mp:"\u2213",mstpos:"\u223e",mumap:"\u22b8"},"m")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({NJcy:"\u040a",Nacute:"\u0143",Ncaron:"\u0147",Ncedil:"\u0145",Ncy:"\u041d",NegativeMediumSpace:"\u200b",NegativeThickSpace:"\u200b",NegativeThinSpace:"\u200b",NegativeVeryThinSpace:"\u200b",NewLine:"\n",NoBreak:"\u2060",NonBreakingSpace:"\xa0",Not:"\u2aec",NotCongruent:"\u2262",NotCupCap:"\u226d",NotEqualTilde:"\u2242\u0338",NotGreaterFullEqual:"\u2267\u0338",NotGreaterGreater:"\u226b\u0338",NotGreaterLess:"\u2279",NotGreaterSlantEqual:"\u2a7e\u0338",NotGreaterTilde:"\u2275",NotHumpDownHump:"\u224e\u0338",NotHumpEqual:"\u224f\u0338",NotLeftTriangleBar:"\u29cf\u0338",NotLessGreater:"\u2278",NotLessLess:"\u226a\u0338",NotLessSlantEqual:"\u2a7d\u0338",NotLessTilde:"\u2274",NotNestedGreaterGreater:"\u2aa2\u0338",NotNestedLessLess:"\u2aa1\u0338",NotPrecedesEqual:"\u2aaf\u0338",NotReverseElement:"\u220c",NotRightTriangleBar:"\u29d0\u0338",NotSquareSubset:"\u228f\u0338",NotSquareSubsetEqual:"\u22e2",NotSquareSuperset:"\u2290\u0338",NotSquareSupersetEqual:"\u22e3",NotSubset:"\u2282\u20d2",NotSucceedsEqual:"\u2ab0\u0338",NotSucceedsTilde:"\u227f\u0338",NotSuperset:"\u2283\u20d2",NotTildeEqual:"\u2244",NotTildeFullEqual:"\u2247",NotTildeTilde:"\u2249",Ntilde:"\xd1",Nu:"\u039d",nGg:"\u22d9\u0338",nGt:"\u226b\u20d2",nGtv:"\u226b\u0338",nLl:"\u22d8\u0338",nLt:"\u226a\u20d2",nLtv:"\u226a\u0338",nabla:"\u2207",nacute:"\u0144",nang:"\u2220\u20d2",nap:"\u2249",napE:"\u2a70\u0338",napid:"\u224b\u0338",napos:"\u0149",napprox:"\u2249",natural:"\u266e",naturals:"\u2115",nbsp:"\xa0",nbump:"\u224e\u0338",nbumpe:"\u224f\u0338",ncap:"\u2a43",ncaron:"\u0148",ncedil:"\u0146",ncong:"\u2247",ncongdot:"\u2a6d\u0338",ncup:"\u2a42",ncy:"\u043d",ndash:"\u2013",ne:"\u2260",neArr:"\u21d7",nearhk:"\u2924",nearrow:"\u2197",nedot:"\u2250\u0338",nequiv:"\u2262",nesear:"\u2928",nesim:"\u2242\u0338",nexist:"\u2204",nexists:"\u2204",ngE:"\u2267\u0338",nge:"\u2271",ngeq:"\u2271",ngeqq:"\u2267\u0338",ngeqslant:"\u2a7e\u0338",nges:"\u2a7e\u0338",ngsim:"\u2275",ngt:"\u226f",ngtr:"\u226f",nhArr:"\u21ce",nhpar:"\u2af2",ni:"\u220b",nis:"\u22fc",nisd:"\u22fa",niv:"\u220b",njcy:"\u045a",nlArr:"\u21cd",nlE:"\u2266\u0338",nldr:"\u2025",nle:"\u2270",nleftarrow:"\u219a",nleftrightarrow:"\u21ae",nleq:"\u2270",nleqq:"\u2266\u0338",nleqslant:"\u2a7d\u0338",nles:"\u2a7d\u0338",nless:"\u226e",nlsim:"\u2274",nlt:"\u226e",nltri:"\u22ea",nltrie:"\u22ec",nmid:"\u2224",notin:"\u2209",notinE:"\u22f9\u0338",notindot:"\u22f5\u0338",notinva:"\u2209",notinvb:"\u22f7",notinvc:"\u22f6",notni:"\u220c",notniva:"\u220c",notnivb:"\u22fe",notnivc:"\u22fd",npar:"\u2226",nparallel:"\u2226",nparsl:"\u2afd\u20e5",npart:"\u2202\u0338",npolint:"\u2a14",npr:"\u2280",nprcue:"\u22e0",npre:"\u2aaf\u0338",nprec:"\u2280",npreceq:"\u2aaf\u0338",nrArr:"\u21cf",nrarrc:"\u2933\u0338",nrarrw:"\u219d\u0338",nrightarrow:"\u219b",nrtri:"\u22eb",nrtrie:"\u22ed",nsc:"\u2281",nsccue:"\u22e1",nsce:"\u2ab0\u0338",nshortmid:"\u2224",nshortparallel:"\u2226",nsim:"\u2241",nsime:"\u2244",nsimeq:"\u2244",nsmid:"\u2224",nspar:"\u2226",nsqsube:"\u22e2",nsqsupe:"\u22e3",nsub:"\u2284",nsubE:"\u2ac5\u0338",nsube:"\u2288",nsubset:"\u2282\u20d2",nsubseteq:"\u2288",nsubseteqq:"\u2ac5\u0338",nsucc:"\u2281",nsucceq:"\u2ab0\u0338",nsup:"\u2285",nsupE:"\u2ac6\u0338",nsupe:"\u2289",nsupset:"\u2283\u20d2",nsupseteq:"\u2289",nsupseteqq:"\u2ac6\u0338",ntgl:"\u2279",ntilde:"\xf1",ntlg:"\u2278",ntriangleleft:"\u22ea",ntrianglelefteq:"\u22ec",ntriangleright:"\u22eb",ntrianglerighteq:"\u22ed",num:"#",numero:"\u2116",numsp:"\u2007",nvHarr:"\u2904",nvap:"\u224d\u20d2",nvge:"\u2265\u20d2",nvgt:">\u20d2",nvinfin:"\u29de",nvlArr:"\u2902",nvle:"\u2264\u20d2",nvlt:"<\u20d2",nvltrie:"\u22b4\u20d2",nvrArr:"\u2903",nvrtrie:"\u22b5\u20d2",nvsim:"\u223c\u20d2",nwArr:"\u21d6",nwarhk:"\u2923",nwarrow:"\u2196",nwnear:"\u2927"},"n")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({OElig:"\u0152",Oacute:"\xd3",Ocirc:"\xd4",Ocy:"\u041e",Odblac:"\u0150",Ograve:"\xd2",Omacr:"\u014c",Omicron:"\u039f",OpenCurlyDoubleQuote:"\u201c",OpenCurlyQuote:"\u2018",Or:"\u2a54",Oslash:"\xd8",Otilde:"\xd5",Otimes:"\u2a37",Ouml:"\xd6",OverBracket:"\u23b4",OverParenthesis:"\u23dc",oS:"\u24c8",oacute:"\xf3",oast:"\u229b",ocir:"\u229a",ocirc:"\xf4",ocy:"\u043e",odash:"\u229d",odblac:"\u0151",odiv:"\u2a38",odot:"\u2299",odsold:"\u29bc",oelig:"\u0153",ofcir:"\u29bf",ogon:"\u02db",ograve:"\xf2",ogt:"\u29c1",ohbar:"\u29b5",ohm:"\u03a9",oint:"\u222e",olarr:"\u21ba",olcir:"\u29be",olcross:"\u29bb",oline:"\u203e",olt:"\u29c0",omacr:"\u014d",omid:"\u29b6",ominus:"\u2296",opar:"\u29b7",operp:"\u29b9",oplus:"\u2295",orarr:"\u21bb",ord:"\u2a5d",order:"\u2134",orderof:"\u2134",ordf:"\xaa",ordm:"\xba",origof:"\u22b6",oror:"\u2a56",orslope:"\u2a57",orv:"\u2a5b",oslash:"\xf8",otilde:"\xf5",otimes:"\u2297",otimesas:"\u2a36",ouml:"\xf6",ovbar:"\u233d"},"o")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({Pcy:"\u041f",Poincareplane:"\u210c",Pr:"\u2abb",Prime:"\u2033",Proportion:"\u2237",par:"\u2225",para:"\xb6",parallel:"\u2225",parsim:"\u2af3",parsl:"\u2afd",part:"\u2202",pcy:"\u043f",percnt:"%",permil:"\u2030",perp:"\u22a5",pertenk:"\u2031",phmmat:"\u2133",phone:"\u260e",pitchfork:"\u22d4",planck:"\u210f",planckh:"\u210e",plankv:"\u210f",plus:"+",plusacir:"\u2a23",plusb:"\u229e",pluscir:"\u2a22",plusdo:"\u2214",plusdu:"\u2a25",pluse:"\u2a72",plusmn:"\xb1",plussim:"\u2a26",plustwo:"\u2a27",pm:"\xb1",pointint:"\u2a15",pound:"\xa3",pr:"\u227a",prE:"\u2ab3",prcue:"\u227c",pre:"\u2aaf",prec:"\u227a",precapprox:"\u2ab7",preccurlyeq:"\u227c",preceq:"\u2aaf",precsim:"\u227e",primes:"\u2119",prnE:"\u2ab5",prnap:"\u2ab9",prnsim:"\u22e8",prod:"\u220f",profalar:"\u232e",profline:"\u2312",profsurf:"\u2313",prop:"\u221d",propto:"\u221d",prsim:"\u227e",prurel:"\u22b0",puncsp:"\u2008"},"p")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({QUOT:'"',qint:"\u2a0c",qprime:"\u2057",quaternions:"\u210d",quatint:"\u2a16",quest:"?",questeq:"\u225f"},"q")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({RBarr:"\u2910",REG:"\xae",Racute:"\u0154",Rang:"\u27eb",Rarrtl:"\u2916",Rcaron:"\u0158",Rcedil:"\u0156",Rcy:"\u0420",ReverseElement:"\u220b",ReverseUpEquilibrium:"\u296f",Rho:"\u03a1",RightArrowBar:"\u21e5",RightDoubleBracket:"\u27e7",RightDownTeeVector:"\u295d",RightDownVectorBar:"\u2955",RightTeeVector:"\u295b",RightTriangleBar:"\u29d0",RightUpDownVector:"\u294f",RightUpTeeVector:"\u295c",RightUpVectorBar:"\u2954",RightVectorBar:"\u2953",RoundImplies:"\u2970",RuleDelayed:"\u29f4",rAarr:"\u21db",rArr:"\u21d2",rAtail:"\u291c",rBarr:"\u290f",rHar:"\u2964",race:"\u223d\u0331",racute:"\u0155",radic:"\u221a",raemptyv:"\u29b3",rang:"\u27e9",rangd:"\u2992",range:"\u29a5",rangle:"\u27e9",raquo:"\xbb",rarr:"\u2192",rarrap:"\u2975",rarrb:"\u21e5",rarrbfs:"\u2920",rarrc:"\u2933",rarrfs:"\u291e",rarrhk:"\u21aa",rarrlp:"\u21ac",rarrpl:"\u2945",rarrsim:"\u2974",rarrw:"\u219d",ratail:"\u291a",ratio:"\u2236",rationals:"\u211a",rbarr:"\u290d",rbbrk:"\u2773",rbrke:"\u298c",rbrksld:"\u298e",rbrkslu:"\u2990",rcaron:"\u0159",rcedil:"\u0157",rceil:"\u2309",rcub:"}",rcy:"\u0440",rdca:"\u2937",rdldhar:"\u2969",rdquo:"\u201d",rdquor:"\u201d",rdsh:"\u21b3",real:"\u211c",realine:"\u211b",realpart:"\u211c",reals:"\u211d",rect:"\u25ad",reg:"\xae",rfisht:"\u297d",rfloor:"\u230b",rhard:"\u21c1",rharu:"\u21c0",rharul:"\u296c",rightarrow:"\u2192",rightarrowtail:"\u21a3",rightharpoondown:"\u21c1",rightharpoonup:"\u21c0",rightleftarrows:"\u21c4",rightleftharpoons:"\u21cc",rightsquigarrow:"\u219d",risingdotseq:"\u2253",rlarr:"\u21c4",rlhar:"\u21cc",rlm:"\u200f",rmoustache:"\u23b1",rnmid:"\u2aee",roang:"\u27ed",roarr:"\u21fe",robrk:"\u27e7",ropar:"\u2986",roplus:"\u2a2e",rotimes:"\u2a35",rpar:")",rpargt:"\u2994",rppolint:"\u2a12",rrarr:"\u21c9",rsaquo:"\u203a",rsh:"\u21b1",rsqb:"]",rsquo:"\u2019",rsquor:"\u2019",rthree:"\u22cc",rtrie:"\u22b5",rtrif:"\u25b8",rtriltri:"\u29ce",ruluhar:"\u2968",rx:"\u211e"},"r")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({SHCHcy:"\u0429",SHcy:"\u0428",SOFTcy:"\u042c",Sacute:"\u015a",Sc:"\u2abc",Scaron:"\u0160",Scedil:"\u015e",Scirc:"\u015c",Scy:"\u0421",ShortDownArrow:"\u2193",ShortLeftArrow:"\u2190",ShortRightArrow:"\u2192",ShortUpArrow:"\u2191",Sub:"\u22d0",Sup:"\u22d1",sacute:"\u015b",sbquo:"\u201a",sc:"\u227b",scE:"\u2ab4",scaron:"\u0161",sccue:"\u227d",sce:"\u2ab0",scedil:"\u015f",scirc:"\u015d",scpolint:"\u2a13",scsim:"\u227f",scy:"\u0441",sdotb:"\u22a1",sdote:"\u2a66",seArr:"\u21d8",searhk:"\u2925",searrow:"\u2198",semi:";",seswar:"\u2929",setminus:"\u2216",setmn:"\u2216",sext:"\u2736",sfrown:"\u2322",shchcy:"\u0449",shcy:"\u0448",shortmid:"\u2223",shortparallel:"\u2225",shy:"\xad",sigmaf:"\u03c2",sim:"\u223c",simdot:"\u2a6a",sime:"\u2243",simeq:"\u2243",simg:"\u2a9e",simgE:"\u2aa0",siml:"\u2a9d",simlE:"\u2a9f",simplus:"\u2a24",simrarr:"\u2972",slarr:"\u2190",smallsetminus:"\u2216",smashp:"\u2a33",smeparsl:"\u29e4",smid:"\u2223",smt:"\u2aaa",smte:"\u2aac",smtes:"\u2aac\ufe00",softcy:"\u044c",sol:"/",solb:"\u29c4",solbar:"\u233f",spadesuit:"\u2660",spar:"\u2225",sqcap:"\u2293",sqcaps:"\u2293\ufe00",sqcup:"\u2294",sqcups:"\u2294\ufe00",sqsub:"\u228f",sqsube:"\u2291",sqsubset:"\u228f",sqsubseteq:"\u2291",sqsup:"\u2290",sqsupe:"\u2292",sqsupset:"\u2290",sqsupseteq:"\u2292",squ:"\u25a1",square:"\u25a1",squarf:"\u25aa",squf:"\u25aa",srarr:"\u2192",ssetmn:"\u2216",ssmile:"\u2323",sstarf:"\u22c6",star:"\u2606",starf:"\u2605",straightepsilon:"\u03f5",straightphi:"\u03d5",strns:"\xaf",subdot:"\u2abd",sube:"\u2286",subedot:"\u2ac3",submult:"\u2ac1",subplus:"\u2abf",subrarr:"\u2979",subset:"\u2282",subseteq:"\u2286",subseteqq:"\u2ac5",subsetneq:"\u228a",subsetneqq:"\u2acb",subsim:"\u2ac7",subsub:"\u2ad5",subsup:"\u2ad3",succ:"\u227b",succapprox:"\u2ab8",succcurlyeq:"\u227d",succeq:"\u2ab0",succnapprox:"\u2aba",succneqq:"\u2ab6",succnsim:"\u22e9",succsim:"\u227f",sum:"\u2211",sung:"\u266a",sup:"\u2283",sup1:"\xb9",sup2:"\xb2",sup3:"\xb3",supdot:"\u2abe",supdsub:"\u2ad8",supe:"\u2287",supedot:"\u2ac4",suphsol:"\u27c9",suphsub:"\u2ad7",suplarr:"\u297b",supmult:"\u2ac2",supplus:"\u2ac0",supset:"\u2283",supseteq:"\u2287",supseteqq:"\u2ac6",supsetneq:"\u228b",supsetneqq:"\u2acc",supsim:"\u2ac8",supsub:"\u2ad4",supsup:"\u2ad6",swArr:"\u21d9",swarhk:"\u2926",swarrow:"\u2199",swnwar:"\u292a",szlig:"\xdf"},"s")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({THORN:"\xde",TRADE:"\u2122",TSHcy:"\u040b",TScy:"\u0426",Tab:"\t",Tau:"\u03a4",Tcaron:"\u0164",Tcedil:"\u0162",Tcy:"\u0422",ThickSpace:"\u205f\u200a",ThinSpace:"\u2009",TripleDot:"\u20db",Tstrok:"\u0166",target:"\u2316",tbrk:"\u23b4",tcaron:"\u0165",tcedil:"\u0163",tcy:"\u0442",tdot:"\u20db",telrec:"\u2315",there4:"\u2234",therefore:"\u2234",thetasym:"\u03d1",thickapprox:"\u2248",thicksim:"\u223c",thinsp:"\u2009",thkap:"\u2248",thksim:"\u223c",thorn:"\xfe",timesb:"\u22a0",timesbar:"\u2a31",timesd:"\u2a30",tint:"\u222d",toea:"\u2928",top:"\u22a4",topbot:"\u2336",topcir:"\u2af1",topfork:"\u2ada",tosa:"\u2929",tprime:"\u2034",trade:"\u2122",triangledown:"\u25bf",triangleleft:"\u25c3",trianglelefteq:"\u22b4",triangleright:"\u25b9",trianglerighteq:"\u22b5",tridot:"\u25ec",trie:"\u225c",triminus:"\u2a3a",triplus:"\u2a39",trisb:"\u29cd",tritime:"\u2a3b",trpezium:"\u23e2",tscy:"\u0446",tshcy:"\u045b",tstrok:"\u0167",twixt:"\u226c",twoheadleftarrow:"\u219e",twoheadrightarrow:"\u21a0"},"t")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({Uacute:"\xda",Uarr:"\u219f",Uarrocir:"\u2949",Ubrcy:"\u040e",Ubreve:"\u016c",Ucirc:"\xdb",Ucy:"\u0423",Udblac:"\u0170",Ugrave:"\xd9",Umacr:"\u016a",UnderBracket:"\u23b5",UnderParenthesis:"\u23dd",Uogon:"\u0172",UpArrowBar:"\u2912",UpArrowDownArrow:"\u21c5",UpEquilibrium:"\u296e",UpTeeArrow:"\u21a5",UpperLeftArrow:"\u2196",UpperRightArrow:"\u2197",Upsi:"\u03d2",Uring:"\u016e",Utilde:"\u0168",Uuml:"\xdc",uArr:"\u21d1",uHar:"\u2963",uacute:"\xfa",uarr:"\u2191",ubrcy:"\u045e",ubreve:"\u016d",ucirc:"\xfb",ucy:"\u0443",udarr:"\u21c5",udblac:"\u0171",udhar:"\u296e",ufisht:"\u297e",ugrave:"\xf9",uharl:"\u21bf",uharr:"\u21be",uhblk:"\u2580",ulcorn:"\u231c",ulcorner:"\u231c",ulcrop:"\u230f",ultri:"\u25f8",umacr:"\u016b",uml:"\xa8",uogon:"\u0173",uparrow:"\u2191",updownarrow:"\u2195",upharpoonleft:"\u21bf",upharpoonright:"\u21be",uplus:"\u228e",upsih:"\u03d2",upsilon:"\u03c5",urcorn:"\u231d",urcorner:"\u231d",urcrop:"\u230e",uring:"\u016f",urtri:"\u25f9",utdot:"\u22f0",utilde:"\u0169",utri:"\u25b5",utrif:"\u25b4",uuarr:"\u21c8",uuml:"\xfc",uwangle:"\u29a7"},"u")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({VDash:"\u22ab",Vbar:"\u2aeb",Vcy:"\u0412",Vdashl:"\u2ae6",Verbar:"\u2016",Vert:"\u2016",VerticalLine:"|",VerticalSeparator:"\u2758",VeryThinSpace:"\u200a",vArr:"\u21d5",vBar:"\u2ae8",vBarv:"\u2ae9",vDash:"\u22a8",vangrt:"\u299c",varepsilon:"\u03f5",varkappa:"\u03f0",varnothing:"\u2205",varphi:"\u03d5",varpi:"\u03d6",varpropto:"\u221d",varr:"\u2195",varrho:"\u03f1",varsigma:"\u03c2",varsubsetneq:"\u228a\ufe00",varsubsetneqq:"\u2acb\ufe00",varsupsetneq:"\u228b\ufe00",varsupsetneqq:"\u2acc\ufe00",vartheta:"\u03d1",vartriangleleft:"\u22b2",vartriangleright:"\u22b3",vcy:"\u0432",vdash:"\u22a2",vee:"\u2228",veeeq:"\u225a",verbar:"|",vert:"|",vltri:"\u22b2",vnsub:"\u2282\u20d2",vnsup:"\u2283\u20d2",vprop:"\u221d",vrtri:"\u22b3",vsubnE:"\u2acb\ufe00",vsubne:"\u228a\ufe00",vsupnE:"\u2acc\ufe00",vsupne:"\u228b\ufe00",vzigzag:"\u299a"},"v")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({Wcirc:"\u0174",wcirc:"\u0175",wedbar:"\u2a5f",wedge:"\u2227",wedgeq:"\u2259",wp:"\u2118",wr:"\u2240",wreath:"\u2240"},"w")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({xcap:"\u22c2",xcirc:"\u25ef",xcup:"\u22c3",xdtri:"\u25bd",xhArr:"\u27fa",xharr:"\u27f7",xlArr:"\u27f8",xlarr:"\u27f5",xmap:"\u27fc",xnis:"\u22fb",xodot:"\u2a00",xoplus:"\u2a01",xotime:"\u2a02",xrArr:"\u27f9",xrarr:"\u27f6",xsqcup:"\u2a06",xuplus:"\u2a04",xutri:"\u25b3",xvee:"\u22c1",xwedge:"\u22c0"},"x")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({YAcy:"\u042f",YIcy:"\u0407",YUcy:"\u042e",Yacute:"\xdd",Ycirc:"\u0176",Ycy:"\u042b",Yuml:"\u0178",yacute:"\xfd",yacy:"\u044f",ycirc:"\u0177",ycy:"\u044b",yicy:"\u0457",yucy:"\u044e",yuml:"\xff"},"y")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({ZHcy:"\u0416",Zacute:"\u0179",Zcaron:"\u017d",Zcy:"\u0417",Zdot:"\u017b",ZeroWidthSpace:"\u200b",Zeta:"\u0396",zacute:"\u017a",zcaron:"\u017e",zcy:"\u0437",zdot:"\u017c",zeetrf:"\u2128",zhcy:"\u0436",zwj:"\u200d",zwnj:"\u200c"},"z")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({Afr:"\ud835\udd04",Bfr:"\ud835\udd05",Cfr:"\u212d",Dfr:"\ud835\udd07",Efr:"\ud835\udd08",Ffr:"\ud835\udd09",Gfr:"\ud835\udd0a",Hfr:"\u210c",Ifr:"\u2111",Jfr:"\ud835\udd0d",Kfr:"\ud835\udd0e",Lfr:"\ud835\udd0f",Mfr:"\ud835\udd10",Nfr:"\ud835\udd11",Ofr:"\ud835\udd12",Pfr:"\ud835\udd13",Qfr:"\ud835\udd14",Rfr:"\u211c",Sfr:"\ud835\udd16",Tfr:"\ud835\udd17",Ufr:"\ud835\udd18",Vfr:"\ud835\udd19",Wfr:"\ud835\udd1a",Xfr:"\ud835\udd1b",Yfr:"\ud835\udd1c",Zfr:"\u2128",afr:"\ud835\udd1e",bfr:"\ud835\udd1f",cfr:"\ud835\udd20",dfr:"\ud835\udd21",efr:"\ud835\udd22",ffr:"\ud835\udd23",gfr:"\ud835\udd24",hfr:"\ud835\udd25",ifr:"\ud835\udd26",jfr:"\ud835\udd27",kfr:"\ud835\udd28",lfr:"\ud835\udd29",mfr:"\ud835\udd2a",nfr:"\ud835\udd2b",ofr:"\ud835\udd2c",pfr:"\ud835\udd2d",qfr:"\ud835\udd2e",rfr:"\ud835\udd2f",sfr:"\ud835\udd30",tfr:"\ud835\udd31",ufr:"\ud835\udd32",vfr:"\ud835\udd33",wfr:"\ud835\udd34",xfr:"\ud835\udd35",yfr:"\ud835\udd36",zfr:"\ud835\udd37"},"fr")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({Aopf:"\ud835\udd38",Bopf:"\ud835\udd39",Copf:"\u2102",Dopf:"\ud835\udd3b",Eopf:"\ud835\udd3c",Fopf:"\ud835\udd3d",Gopf:"\ud835\udd3e",Hopf:"\u210d",Iopf:"\ud835\udd40",Jopf:"\ud835\udd41",Kopf:"\ud835\udd42",Lopf:"\ud835\udd43",Mopf:"\ud835\udd44",Nopf:"\u2115",Oopf:"\ud835\udd46",Popf:"\u2119",Qopf:"\u211a",Ropf:"\u211d",Sopf:"\ud835\udd4a",Topf:"\ud835\udd4b",Uopf:"\ud835\udd4c",Vopf:"\ud835\udd4d",Wopf:"\ud835\udd4e",Xopf:"\ud835\udd4f",Yopf:"\ud835\udd50",Zopf:"\u2124",aopf:"\ud835\udd52",bopf:"\ud835\udd53",copf:"\ud835\udd54",dopf:"\ud835\udd55",eopf:"\ud835\udd56",fopf:"\ud835\udd57",gopf:"\ud835\udd58",hopf:"\ud835\udd59",iopf:"\ud835\udd5a",jopf:"\ud835\udd5b",kopf:"\ud835\udd5c",lopf:"\ud835\udd5d",mopf:"\ud835\udd5e",nopf:"\ud835\udd5f",oopf:"\ud835\udd60",popf:"\ud835\udd61",qopf:"\ud835\udd62",ropf:"\ud835\udd63",sopf:"\ud835\udd64",topf:"\ud835\udd65",uopf:"\ud835\udd66",vopf:"\ud835\udd67",wopf:"\ud835\udd68",xopf:"\ud835\udd69",yopf:"\ud835\udd6a",zopf:"\ud835\udd6b"},"opf")},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(0).add({Ascr:"\ud835\udc9c",Bscr:"\u212c",Cscr:"\ud835\udc9e",Dscr:"\ud835\udc9f",Escr:"\u2130",Fscr:"\u2131",Gscr:"\ud835\udca2",Hscr:"\u210b",Iscr:"\u2110",Jscr:"\ud835\udca5",Kscr:"\ud835\udca6",Lscr:"\u2112",Mscr:"\u2133",Nscr:"\ud835\udca9",Oscr:"\ud835\udcaa",Pscr:"\ud835\udcab",Qscr:"\ud835\udcac",Rscr:"\u211b",Sscr:"\ud835\udcae",Tscr:"\ud835\udcaf",Uscr:"\ud835\udcb0",Vscr:"\ud835\udcb1",Wscr:"\ud835\udcb2",Xscr:"\ud835\udcb3",Yscr:"\ud835\udcb4",Zscr:"\ud835\udcb5",ascr:"\ud835\udcb6",bscr:"\ud835\udcb7",cscr:"\ud835\udcb8",dscr:"\ud835\udcb9",escr:"\u212f",fscr:"\ud835\udcbb",gscr:"\u210a",hscr:"\ud835\udcbd",iscr:"\ud835\udcbe",jscr:"\ud835\udcbf",kscr:"\ud835\udcc0",lscr:"\ud835\udcc1",mscr:"\ud835\udcc2",nscr:"\ud835\udcc3",oscr:"\u2134",pscr:"\ud835\udcc5",qscr:"\ud835\udcc6",rscr:"\ud835\udcc7",sscr:"\ud835\udcc8",tscr:"\ud835\udcc9",uscr:"\ud835\udcca",vscr:"\ud835\udccb",wscr:"\ud835\udccc",xscr:"\ud835\udccd",yscr:"\ud835\udcce",zscr:"\ud835\udccf"},"scr")}]); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex-base.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex-base.js new file mode 100644 index 0000000..42dd940 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex-base.js @@ -0,0 +1 @@ +!function(t){var e={};function r(n){if(e[n])return e[n].exports;var i=e[n]={i:n,l:!1,exports:{}};return t[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}r.m=t,r.c=e,r.d=function(t,e,n){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(t,e){if(1&e&&(t=r(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var i in t)r.d(n,i,function(e){return t[e]}.bind(null,i));return n},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,"a",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p="",r(r.s=38)}([function(t,e,r){"use strict";var n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},i=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,i,o=r.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)a.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return a},o=this&&this.__spread||function(){for(var t=[],e=0;e="0"&&a<="9")n[i]=r[parseInt(n[i],10)-1],"number"==typeof n[i]&&(n[i]=n[i].toString());else if("{"===a){if((a=n[i].substr(1))>="0"&&a<="9")n[i]=r[parseInt(n[i].substr(1,n[i].length-2),10)-1],"number"==typeof n[i]&&(n[i]=n[i].toString());else n[i].match(/^\{([a-z]+):%(\d+)\|(.*)\}$/)&&(n[i]="%"+n[i])}null==n[i]&&(n[i]="???")}return n.join("")},t.pattern=/%(\d+|\{\d+\}|\{[a-z]+:\%\d+(?:\|(?:%\{\d+\}|%.|[^\}])*)+\}|.)/g,t}();e.default=n},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TEXCLASS=MathJax._.core.MmlTree.MmlNode.TEXCLASS,e.TEXCLASSNAMES=MathJax._.core.MmlTree.MmlNode.TEXCLASSNAMES,e.indentAttributes=MathJax._.core.MmlTree.MmlNode.indentAttributes,e.AbstractMmlNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlNode,e.AbstractMmlTokenNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlTokenNode,e.AbstractMmlLayoutNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlLayoutNode,e.AbstractMmlBaseNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlBaseNode,e.AbstractMmlEmptyNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlEmptyNode,e.TextNode=MathJax._.core.MmlTree.MmlNode.TextNode,e.XMLNode=MathJax._.core.MmlTree.MmlNode.XMLNode},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.options=MathJax._.util.Entities.options,e.entities=MathJax._.util.Entities.entities,e.add=MathJax._.util.Entities.add,e.remove=MathJax._.util.Entities.remove,e.translate=MathJax._.util.Entities.translate,e.numeric=MathJax._.util.Entities.numeric},function(t,e,r){"use strict";var n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},i=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,i,o=r.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)a.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return a},o=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(n=o.next()).done;)a.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return a},i=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0});var o,a=r(2),s=r(0),l=r(4),u=r(1),c=r(3);r(25),function(t){var e={em:function(t){return t},ex:function(t){return.43*t},pt:function(t){return t/10},pc:function(t){return 1.2*t},px:function(t){return 7.2*t/72},in:function(t){return 7.2*t},cm:function(t){return 7.2*t/2.54},mm:function(t){return 7.2*t/25.4},mu:function(t){return t/18}},r="([-+]?([.,]\\d+|\\d+([.,]\\d*)?))",o="(pt|em|ex|mu|px|mm|cm|in|pc)",p=RegExp("^\\s*"+r+"\\s*"+o+"\\s*$"),f=RegExp("^\\s*"+r+"\\s*"+o+" ?");function h(t,r){void 0===r&&(r=!1);var i=t.match(r?f:p);return i?function(t){var r=n(t,3),i=r[0],o=r[1],a=r[2];if("mu"!==o)return[i,o,a];return[d(e[o](parseFloat(i||"1"))).slice(0,-2),"em",a]}([i[1].replace(/,/,"."),i[4],i[0].length]):[null,null,0]}function d(t){return Math.abs(t)<6e-4?"0em":t.toFixed(3).replace(/\.?0+$/,"")+"em"}function m(t,e,r){"{"!==e&&"}"!==e||(e="\\"+e);var n="{\\bigg"+r+" "+e+"}",i="{\\big"+r+" "+e+"}";return new l.default("\\mathchoice"+n+i+i+i,{},t).mml()}function g(t,e,r){e=e.replace(/^\s+/,c.entities.nbsp).replace(/\s+$/,c.entities.nbsp);var n=t.create("text",e);return t.create("node","mtext",[],r,n)}function y(t,e,r){if(r.match(/^[a-z]/i)&&e.match(/(^|[^\\])(\\\\)*\\[a-z]+$/i)&&(e+=" "),e.length+r.length>t.configuration.options.maxBuffer)throw new u.default("MaxBufferSize","MathJax internal buffer size exceeded; is there a recursive macro call?");return e+r}function v(t,e){for(;e>0;)t=t.trim().slice(1,-1),e--;return t.trim()}function b(t,e){for(var r=t.length,n=0,i="",o=0,a=0,s=!0,l=!1;on&&(a=n)),n++;break;case"}":n&&n--,(s||l)&&(a--,l=!0),s=!1;break;default:if(!n&&-1!==e.indexOf(c))return[l?"true":v(i,a),c,t.slice(o)];s=!1,l=!1}i+=c}if(n)throw new u.default("ExtraOpenMissingClose","Extra open brace or missing close brace");return[l?"true":v(i,a),"",t.slice(o)]}t.matchDimen=h,t.dimen2em=function(t){var r=n(h(t),2),i=r[0],o=r[1],a=parseFloat(i||"1"),s=e[o];return s?s(a):0},t.Em=d,t.fenced=function(t,e,r,n,i){void 0===i&&(i="");var o,u=t.nodeFactory,c=u.create("node","mrow",[],{open:e,close:n,texClass:a.TEXCLASS.INNER});if(i)o=new l.default("\\"+i+"l"+e,t.parser.stack.env,t).mml();else{var p=u.create("text",e);o=u.create("node","mo",[],{fence:!0,stretchy:!0,symmetric:!0,texClass:a.TEXCLASS.OPEN},p)}if(s.default.appendChildren(c,[o]),s.default.isType(r,"mrow")&&s.default.isInferred(r)?s.default.appendChildren(c,s.default.getChildren(r)):s.default.appendChildren(c,[r]),i)o=new l.default("\\"+i+"r"+n,t.parser.stack.env,t).mml();else{var f=u.create("text",n);o=u.create("node","mo",[],{fence:!0,stretchy:!0,symmetric:!0,texClass:a.TEXCLASS.CLOSE},f)}return s.default.appendChildren(c,[o]),c},t.fixedFence=function(t,e,r,n){var i=t.nodeFactory.create("node","mrow",[],{open:e,close:n,texClass:a.TEXCLASS.ORD});return e&&s.default.appendChildren(i,[m(t,e,"l")]),s.default.isType(r,"mrow")?s.default.appendChildren(i,s.default.getChildren(r)):s.default.appendChildren(i,[r]),n&&s.default.appendChildren(i,[m(t,n,"r")]),i},t.mathPalette=m,t.fixInitialMO=function(t,e){for(var r=0,n=e.length;r1&&(c=[t.create("node","mrow",c)]),c},t.internalText=g,t.trimSpaces=function(t){if("string"!=typeof t)return t;var e=t.trim();return e.match(/\\$/)&&t.match(/ $/)&&(e+=" "),e},t.setArrayAlign=function(e,r){return"t"===(r=t.trimSpaces(r||""))?e.arraydef.align="baseline 1":"b"===r?e.arraydef.align="baseline -1":"c"===r?e.arraydef.align="center":r&&(e.arraydef.align=r),e},t.substituteArgs=function(t,e,r){for(var n="",i="",o=0;oe.length)throw new u.default("IllegalMacroParam","Illegal macro parameter reference");i=y(t,y(t,i,n),e[parseInt(a,10)-1]),n=""}else n+=a}return y(t,i,n)},t.addArgs=y,t.checkEqnEnv=function(t){if(t.stack.global.eqnenv)throw new u.default("ErroneousNestingEq","Erroneous nesting of equation structures");t.stack.global.eqnenv=!0},t.MmlFilterAttribute=function(t,e,r){return r},t.getFontDef=function(t){var e=t.stack.env.font;return e?{mathvariant:e}:{}},t.keyvalOptions=function(t,e,r){var o,a;void 0===e&&(e=null),void 0===r&&(r=!1);var s=function(t){var e,r,i,o,a,s={},l=t;for(;l;)o=(e=n(b(l,["=",","]),3))[0],i=e[1],l=e[2],"="===i?(a=(r=n(b(l,[","]),3))[0],i=r[1],l=r[2],a="false"===a||"true"===a?JSON.parse(a):a,s[o]=a):o&&(s[o]=!0);return s}(t);if(e)try{for(var l=i(Object.keys(s)),c=l.next();!c.done;c=l.next()){var p=c.value;if(!e.hasOwnProperty(p)){if(r)throw new u.default("InvalidOption","Invalid optional argument: %1",p);delete s[p]}}}catch(t){o={error:t}}finally{try{c&&!c.done&&(a=l.return)&&a.call(l)}finally{if(o)throw o.error}}return s}}(o||(o={})),e.default=o},function(t,e,r){"use strict";var n,i=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),o=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.TagsFactory=e.AllTags=e.NoTags=e.AbstractTags=e.TagInfo=e.Label=void 0;var a=r(4),s=function(t,e){void 0===t&&(t="???"),void 0===e&&(e=""),this.tag=t,this.id=e};e.Label=s;var l=function(t,e,r,n,i,o,a,s){void 0===t&&(t=""),void 0===e&&(e=!1),void 0===r&&(r=!1),void 0===n&&(n=null),void 0===i&&(i=""),void 0===o&&(o=""),void 0===a&&(a=!1),void 0===s&&(s=""),this.env=t,this.taggable=e,this.defaultTags=r,this.tag=n,this.tagId=i,this.tagFormat=o,this.noTag=a,this.labelId=s};e.TagInfo=l;var u=function(){function t(){this.counter=0,this.allCounter=0,this.configuration=null,this.ids={},this.allIds={},this.labels={},this.allLabels={},this.redo=!1,this.refUpdate=!1,this.currentTag=new l,this.history=[],this.stack=[],this.enTag=function(t,e){var r=this.configuration.nodeFactory,n=r.create("node","mtd",[t]),i=r.create("node","mlabeledtr",[e,n]);return r.create("node","mtable",[i],{side:this.configuration.options.tagSide,minlabelspacing:this.configuration.options.tagIndent,displaystyle:!0})}}return t.prototype.start=function(t,e,r){this.currentTag&&this.stack.push(this.currentTag),this.currentTag=new l(t,e,r)},Object.defineProperty(t.prototype,"env",{get:function(){return this.currentTag.env},enumerable:!1,configurable:!0}),t.prototype.end=function(){this.history.push(this.currentTag),this.currentTag=this.stack.pop()},t.prototype.tag=function(t,e){this.currentTag.tag=t,this.currentTag.tagFormat=e?t:this.formatTag(t),this.currentTag.noTag=!1},t.prototype.notag=function(){this.tag("",!0),this.currentTag.noTag=!0},Object.defineProperty(t.prototype,"noTag",{get:function(){return this.currentTag.noTag},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"label",{get:function(){return this.currentTag.labelId},set:function(t){this.currentTag.labelId=t},enumerable:!1,configurable:!0}),t.prototype.formatUrl=function(t,e){return e+"#"+encodeURIComponent(t)},t.prototype.formatTag=function(t){return"("+t+")"},t.prototype.formatId=function(t){return"mjx-eqn-"+t.replace(/\s/g,"_")},t.prototype.formatNumber=function(t){return t.toString()},t.prototype.autoTag=function(){null==this.currentTag.tag&&(this.counter++,this.tag(this.formatNumber(this.counter),!1))},t.prototype.clearTag=function(){this.label="",this.tag(null,!0),this.currentTag.tagId=""},t.prototype.getTag=function(t){if(void 0===t&&(t=!1),t)return this.autoTag(),this.makeTag();var e=this.currentTag;return e.taggable&&!e.noTag&&(e.defaultTags&&this.autoTag(),e.tag)?this.makeTag():null},t.prototype.resetTag=function(){this.history=[],this.redo=!1,this.refUpdate=!1,this.clearTag()},t.prototype.reset=function(t){void 0===t&&(t=0),this.resetTag(),this.counter=this.allCounter=t,this.allLabels={},this.allIds={}},t.prototype.startEquation=function(t){this.labels={},this.ids={},this.counter=this.allCounter,this.redo=!1;var e=t.inputData.recompile;e&&(this.refUpdate=!0,this.counter=e.counter)},t.prototype.finishEquation=function(t){this.redo&&(t.inputData.recompile={state:t.state(),counter:this.allCounter}),this.refUpdate||(this.allCounter=this.counter),Object.assign(this.allIds,this.ids),Object.assign(this.allLabels,this.labels)},t.prototype.finalize=function(t,e){if(!e.display||this.currentTag.env||null==this.currentTag.tag)return t;var r=this.makeTag();return this.enTag(t,r)},t.prototype.makeId=function(){this.currentTag.tagId=this.formatId(this.configuration.options.useLabelIds&&this.label||this.currentTag.tag)},t.prototype.makeTag=function(){this.makeId(),this.label&&(this.labels[this.label]=new s(this.currentTag.tag,this.currentTag.tagId));var t=new a.default("\\text{"+this.currentTag.tagFormat+"}",{},this.configuration).mml();return this.configuration.nodeFactory.create("node","mtd",[t],{id:this.currentTag.tagId})},t}();e.AbstractTags=u;var c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.autoTag=function(){},e.prototype.getTag=function(){return this.currentTag.tag?t.prototype.getTag.call(this):null},e}(u);e.NoTags=c;var p=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.finalize=function(t,e){if(!e.display||this.history.find((function(t){return t.taggable})))return t;var r=this.getTag(!0);return this.enTag(t,r)},e}(u);e.AllTags=p,function(t){var e=new Map([["none",c],["all",p]]),r="none";t.OPTIONS={tags:r,tagSide:"right",tagIndent:"0.8em",multlineWidth:"85%",useLabelIds:!0,ignoreDuplicateLabels:!1},t.add=function(t,r){e.set(t,r)},t.addTags=function(e){var r,n;try{for(var i=o(Object.keys(e)),a=i.next();!a.done;a=i.next()){var s=a.value;t.add(s,e[s])}}catch(t){r={error:t}}finally{try{a&&!a.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}},t.create=function(t){var n=e.get(t)||e.get(r);if(!n)throw Error("Unknown tags class");return new n},t.setDefault=function(t){r=t},t.getDefault=function(){return t.create(r)}}(e.TagsFactory||(e.TagsFactory={}))},function(t,e,r){"use strict";var n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},i=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,i,o=r.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)a.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return a};Object.defineProperty(e,"__esModule",{value:!0}),e.SubHandlers=e.SubHandler=e.MapHandler=void 0;var o,a=r(26),s=r(27);!function(t){var e=new Map;t.register=function(t){e.set(t.name,t)},t.getMap=function(t){return e.get(t)}}(o=e.MapHandler||(e.MapHandler={}));var l=function(){function t(){this._configuration=new a.PrioritizedList,this._fallback=new s.FunctionList}return t.prototype.add=function(t,e,r){var i,s;void 0===r&&(r=a.PrioritizedList.DEFAULTPRIORITY);try{for(var l=n(t.slice().reverse()),u=l.next();!u.done;u=l.next()){var c=u.value,p=o.getMap(c);if(!p)return void this.warn("Configuration "+c+" not found! Omitted.");this._configuration.add(p,r)}}catch(t){i={error:t}}finally{try{u&&!u.done&&(s=l.return)&&s.call(l)}finally{if(i)throw i.error}}e&&this._fallback.add(e,r)},t.prototype.parse=function(t){var e,r;try{for(var o=n(this._configuration),a=o.next();!a.done;a=o.next()){var s=a.value.item.parse(t);if(s)return s}}catch(t){e={error:t}}finally{try{a&&!a.done&&(r=o.return)&&r.call(o)}finally{if(e)throw e.error}}var l=i(t,2),u=l[0],c=l[1];this._fallback.toArray()[0].item(u,c)},t.prototype.lookup=function(t){var e=this.applicable(t);return e?e.lookup(t):null},t.prototype.contains=function(t){return!!this.applicable(t)},t.prototype.toString=function(){var t,e,r=[];try{for(var i=n(this._configuration),o=i.next();!o.done;o=i.next()){var a=o.value.item;r.push(a.name)}}catch(e){t={error:e}}finally{try{o&&!o.done&&(e=i.return)&&e.call(i)}finally{if(t)throw t.error}}return r.join(", ")},t.prototype.applicable=function(t){var e,r;try{for(var i=n(this._configuration),o=i.next();!o.done;o=i.next()){var a=o.value.item;if(a.contains(t))return a}}catch(t){e={error:t}}finally{try{o&&!o.done&&(r=i.return)&&r.call(i)}finally{if(e)throw e.error}}return null},t.prototype.retrieve=function(t){var e,r;try{for(var i=n(this._configuration),o=i.next();!o.done;o=i.next()){var a=o.value.item;if(a.name===t)return a}}catch(t){e={error:t}}finally{try{o&&!o.done&&(r=i.return)&&r.call(i)}finally{if(e)throw e.error}}return null},t.prototype.warn=function(t){console.log("TexParser Warning: "+t)},t}();e.SubHandler=l;var u=function(){function t(){this.map=new Map}return t.prototype.add=function(t,e,r){var i,o;void 0===r&&(r=a.PrioritizedList.DEFAULTPRIORITY);try{for(var s=n(Object.keys(t)),u=s.next();!u.done;u=s.next()){var c=u.value,p=this.get(c);p||(p=new l,this.set(c,p)),p.add(t[c],e[c],r)}}catch(t){i={error:t}}finally{try{u&&!u.done&&(o=s.return)&&o.call(s)}finally{if(i)throw i.error}}},t.prototype.set=function(t,e){this.map.set(t,e)},t.prototype.get=function(t){return this.map.get(t)},t.prototype.retrieve=function(t){var e,r;try{for(var i=n(this.map.values()),o=i.next();!o.done;o=i.next()){var a=o.value.retrieve(t);if(a)return a}}catch(t){e={error:t}}finally{try{o&&!o.done&&(r=i.return)&&r.call(i)}finally{if(e)throw e.error}}return null},t.prototype.keys=function(){return this.map.keys()},t}();e.SubHandlers=u},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.APPEND=MathJax._.util.Options.APPEND,e.REMOVE=MathJax._.util.Options.REMOVE,e.Expandable=MathJax._.util.Options.Expandable,e.expandable=MathJax._.util.Options.expandable,e.makeArray=MathJax._.util.Options.makeArray,e.keys=MathJax._.util.Options.keys,e.copy=MathJax._.util.Options.copy,e.insert=MathJax._.util.Options.insert,e.defaultOptions=MathJax._.util.Options.defaultOptions,e.userOptions=MathJax._.util.Options.userOptions,e.selectOptions=MathJax._.util.Options.selectOptions,e.selectOptionsFromKeys=MathJax._.util.Options.selectOptionsFromKeys,e.separateOptions=MathJax._.util.Options.separateOptions},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TexConstant=void 0,function(t){t.Variant={NORMAL:"normal",BOLD:"bold",ITALIC:"italic",BOLDITALIC:"bold-italic",DOUBLESTRUCK:"double-struck",FRAKTUR:"fraktur",BOLDFRAKTUR:"bold-fraktur",SCRIPT:"script",BOLDSCRIPT:"bold-script",SANSSERIF:"sans-serif",BOLDSANSSERIF:"bold-sans-serif",SANSSERIFITALIC:"sans-serif-italic",SANSSERIFBOLDITALIC:"sans-serif-bold-italic",MONOSPACE:"monospace",INITIAL:"inital",TAILED:"tailed",LOOPED:"looped",STRETCHED:"stretched",CALLIGRAPHIC:"-tex-calligraphic",OLDSTYLE:"-tex-oldstyle"},t.Form={PREFIX:"prefix",INFIX:"infix",POSTFIX:"postfix"},t.LineBreak={AUTO:"auto",NEWLINE:"newline",NOBREAK:"nobreak",GOODBREAK:"goodbreak",BADBREAK:"badbreak"},t.LineBreakStyle={BEFORE:"before",AFTER:"after",DUPLICATE:"duplicate",INFIXLINBREAKSTYLE:"infixlinebreakstyle"},t.IndentAlign={LEFT:"left",CENTER:"center",RIGHT:"right",AUTO:"auto",ID:"id",INDENTALIGN:"indentalign"},t.IndentShift={INDENTSHIFT:"indentshift"},t.LineThickness={THIN:"thin",MEDIUM:"medium",THICK:"thick"},t.Notation={LONGDIV:"longdiv",ACTUARIAL:"actuarial",PHASORANGLE:"phasorangle",RADICAL:"radical",BOX:"box",ROUNDEDBOX:"roundedbox",CIRCLE:"circle",LEFT:"left",RIGHT:"right",TOP:"top",BOTTOM:"bottom",UPDIAGONALSTRIKE:"updiagonalstrike",DOWNDIAGONALSTRIKE:"downdiagonalstrike",VERTICALSTRIKE:"verticalstrike",HORIZONTALSTRIKE:"horizontalstrike",NORTHEASTARROW:"northeastarrow",MADRUWB:"madruwb",UPDIAGONALARROW:"updiagonalarrow"},t.Align={TOP:"top",BOTTOM:"bottom",CENTER:"center",BASELINE:"baseline",AXIS:"axis",LEFT:"left",RIGHT:"right"},t.Lines={NONE:"none",SOLID:"solid",DASHED:"dashed"},t.Side={LEFT:"left",RIGHT:"right",LEFTOVERLAP:"leftoverlap",RIGHTOVERLAP:"rightoverlap"},t.Width={AUTO:"auto",FIT:"fit"},t.Actiontype={TOGGLE:"toggle",STATUSLINE:"statusline",TOOLTIP:"tooltip",INPUT:"input"},t.Length={VERYVERYTHINMATHSPACE:"veryverythinmathspace",VERYTHINMATHSPACE:"verythinmathspace",THINMATHSPACE:"thinmathspace",MEDIUMMATHSPACE:"mediummathspace",THICKMATHSPACE:"thickmathspace",VERYTHICKMATHSPACE:"verythickmathspace",VERYVERYTHICKMATHSPACE:"veryverythickmathspace",NEGATIVEVERYVERYTHINMATHSPACE:"negativeveryverythinmathspace",NEGATIVEVERYTHINMATHSPACE:"negativeverythinmathspace",NEGATIVETHINMATHSPACE:"negativethinmathspace",NEGATIVEMEDIUMMATHSPACE:"negativemediummathspace",NEGATIVETHICKMATHSPACE:"negativethickmathspace",NEGATIVEVERYTHICKMATHSPACE:"negativeverythickmathspace",NEGATIVEVERYVERYTHICKMATHSPACE:"negativeveryverythickmathspace"},t.Overflow={LINBREAK:"linebreak",SCROLL:"scroll",ELIDE:"elide",TRUNCATE:"truncate",SCALE:"scale"},t.Unit={EM:"em",EX:"ex",PX:"px",IN:"in",CM:"cm",MM:"mm",PT:"pt",PC:"pc"}}(e.TexConstant||(e.TexConstant={}))},function(t,e,r){"use strict";var n,i=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),o=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,i,o=r.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)a.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return a},a=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.BaseItem=e.MmlStack=void 0;var l=r(1),u=function(){function t(t){this._nodes=t}return Object.defineProperty(t.prototype,"nodes",{get:function(){return this._nodes},enumerable:!1,configurable:!0}),t.prototype.Push=function(){for(var t,e=[],r=0;r=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},i=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,i,o=r.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)a.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return a};Object.defineProperty(e,"__esModule",{value:!0}),e.ParserConfiguration=e.ConfigurationHandler=e.Configuration=void 0;var o,a=r(8),s=r(7),l=r(27),u=r(26),c=r(6),p=function(){function t(t,e,r,n,i,o,a,s,l,u,c,p){void 0===e&&(e={}),void 0===r&&(r={}),void 0===n&&(n={}),void 0===i&&(i={}),void 0===o&&(o={}),void 0===a&&(a={}),void 0===s&&(s=[]),void 0===l&&(l=[]),void 0===u&&(u=null),void 0===c&&(c=null),this.name=t,this.handler=e,this.fallback=r,this.items=n,this.tags=i,this.options=o,this.nodes=a,this.preprocessors=s,this.postprocessors=l,this.initMethod=u,this.configMethod=c,this.priority=p,this.handler=Object.assign({character:[],delimiter:[],macro:[],environment:[]},e)}return t.makeProcessor=function(t,e){return Array.isArray(t)?t:[t,e]},t._create=function(e,r){var n=this;void 0===r&&(r={});var i=r.priority||u.PrioritizedList.DEFAULTPRIORITY,o=r.init?this.makeProcessor(r.init,i):null,a=r.config?this.makeProcessor(r.config,i):null,s=(r.preprocessors||[]).map((function(t){return n.makeProcessor(t,i)})),l=(r.postprocessors||[]).map((function(t){return n.makeProcessor(t,i)}));return new t(e,r.handler||{},r.fallback||{},r.items||{},r.tags||{},r.options||{},r.nodes||{},s,l,o,a,i)},t.create=function(e,r){void 0===r&&(r={});var n=t._create(e,r);return o.set(e,n),n},t.local=function(e){return void 0===e&&(e={}),t._create("",e)},Object.defineProperty(t.prototype,"init",{get:function(){return this.initMethod?this.initMethod[0]:null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"config",{get:function(){return this.configMethod?this.configMethod[0]:null},enumerable:!1,configurable:!0}),t}();e.Configuration=p,function(t){var e=new Map;t.set=function(t,r){e.set(t,r)},t.get=function(t){return e.get(t)},t.keys=function(){return e.keys()}}(o=e.ConfigurationHandler||(e.ConfigurationHandler={}));var f=function(){function t(t){var e,r,i,o;this.initMethod=new l.FunctionList,this.configMethod=new l.FunctionList,this.configurations=new u.PrioritizedList,this.handlers=new s.SubHandlers,this.items={},this.tags={},this.options={},this.nodes={};try{for(var a=n(t.slice().reverse()),c=a.next();!c.done;c=a.next()){var p=c.value;this.addPackage(p)}}catch(t){e={error:t}}finally{try{c&&!c.done&&(r=a.return)&&r.call(a)}finally{if(e)throw e.error}}try{for(var f=n(this.configurations),h=f.next();!h.done;h=f.next()){var d=h.value,m=d.item,g=d.priority;this.append(m,g)}}catch(t){i={error:t}}finally{try{h&&!h.done&&(o=f.return)&&o.call(f)}finally{if(i)throw i.error}}}return t.prototype.init=function(){this.initMethod.execute(this)},t.prototype.config=function(t){var e,r;this.configMethod.execute(this,t);try{for(var i=n(this.configurations),o=i.next();!o.done;o=i.next()){var a=o.value;this.addFilters(t,a.item)}}catch(t){e={error:t}}finally{try{o&&!o.done&&(r=i.return)&&r.call(i)}finally{if(e)throw e.error}}},t.prototype.addPackage=function(t){var e="string"==typeof t?t:t[0],r=o.get(e);r&&this.configurations.add(r,"string"==typeof t?r.priority:t[1])},t.prototype.add=function(t,e,r){var i,o;void 0===r&&(r={}),this.append(t),this.configurations.add(t,t.priority),this.init();var s=e.parseOptions;s.nodeFactory.setCreators(t.nodes);try{for(var l=n(Object.keys(t.items)),u=l.next();!u.done;u=l.next()){var p=u.value;s.itemFactory.setNodeClass(p,t.items[p])}}catch(t){i={error:t}}finally{try{u&&!u.done&&(o=l.return)&&o.call(l)}finally{if(i)throw i.error}}c.TagsFactory.addTags(t.tags),a.defaultOptions(s.options,t.options),a.userOptions(s.options,r),this.addFilters(e,t),t.config&&t.config(this,e)},t.prototype.append=function(t,e){e=e||t.priority,t.initMethod&&this.initMethod.add(t.initMethod[0],t.initMethod[1]),t.configMethod&&this.configMethod.add(t.configMethod[0],t.configMethod[1]),this.handlers.add(t.handler,t.fallback,e),Object.assign(this.items,t.items),Object.assign(this.tags,t.tags),a.defaultOptions(this.options,t.options),Object.assign(this.nodes,t.nodes)},t.prototype.addFilters=function(t,e){var r,o,a,s;try{for(var l=n(e.preprocessors),u=l.next();!u.done;u=l.next()){var c=i(u.value,2),p=c[0],f=c[1];t.preFilters.add(p,f)}}catch(t){r={error:t}}finally{try{u&&!u.done&&(o=l.return)&&o.call(l)}finally{if(r)throw r.error}}try{for(var h=n(e.postprocessors),d=h.next();!d.done;d=h.next()){var m=i(d.value,2),g=m[0];f=m[1];t.postFilters.add(g,f)}}catch(t){a={error:t}}finally{try{d&&!d.done&&(s=h.return)&&s.call(h)}finally{if(a)throw a.error}}},t}();e.ParserConfiguration=f},function(t,e,r){"use strict";var n,i=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),o=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,i,o=r.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)a.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return a},a=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},s=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(n=o.next()).done;)a.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return a},a=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(n=o.next()).done;)a.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return a};Object.defineProperty(e,"__esModule",{value:!0}),e.TeX=void 0;var s=r(29),l=r(8),u=r(15),c=r(16),p=r(0),f=r(4),h=r(1),d=r(18),m=r(6),g=r(11);r(21);var y=function(t){function e(r){void 0===r&&(r={});var n=this,i=a(l.separateOptions(r,e.OPTIONS,u.FindTeX.OPTIONS),3),o=i[0],s=i[1],p=i[2];(n=t.call(this,s)||this).findTeX=n.options.FindTeX||new u.FindTeX(p);var f=n.options.packages,h=n.configuration=e.configure(f),g=n._parseOptions=new d.default(h,[n.options,m.TagsFactory.OPTIONS]);return l.userOptions(g.options,o),h.config(n),e.tags(g,h),n.postFilters.add(c.default.cleanSubSup,-6),n.postFilters.add(c.default.setInherited,-5),n.postFilters.add(c.default.moveLimits,-4),n.postFilters.add(c.default.cleanStretchy,-3),n.postFilters.add(c.default.cleanAttributes,-2),n.postFilters.add(c.default.combineRelations,-1),n}return i(e,t),e.configure=function(t){var e=new g.ParserConfiguration(t);return e.init(),e},e.tags=function(t,e){m.TagsFactory.addTags(e.tags),m.TagsFactory.setDefault(t.options.tags),t.tags=m.TagsFactory.getDefault(),t.tags.configuration=t},e.prototype.setMmlFactory=function(e){t.prototype.setMmlFactory.call(this,e),this._parseOptions.nodeFactory.setMmlFactory(e)},Object.defineProperty(e.prototype,"parseOptions",{get:function(){return this._parseOptions},enumerable:!1,configurable:!0}),e.prototype.compile=function(t,e){this.parseOptions.clear(),this.executeFilters(this.preFilters,t,e,this.parseOptions);var r,n=t.display;this.latex=t.math,this.parseOptions.tags.startEquation(t);try{r=new f.default(this.latex,{display:n,isInner:!1},this.parseOptions).mml()}catch(t){if(!(t instanceof h.default))throw t;this.parseOptions.error=!0,r=this.options.formatError(this,t)}return r=this.parseOptions.nodeFactory.create("node","math",[r]),n&&p.default.setAttribute(r,"display","block"),this.parseOptions.tags.finishEquation(t),this.parseOptions.root=r,this.executeFilters(this.postFilters,t,e,this.parseOptions),this.mathNode=this.parseOptions.root,this.mathNode},e.prototype.findMath=function(t){return this.findTeX.findMath(t)},e.prototype.formatError=function(t){var e=t.message.replace(/\n.*/,"");return this.parseOptions.nodeFactory.create("error",e,t.id,this.latex)},e.NAME="TeX",e.OPTIONS=o(o({},s.AbstractInputJax.OPTIONS),{FindTeX:null,packages:["base"],digits:/^(?:[0-9]+(?:\{,\}[0-9]{3})*(?:\.[0-9]*)?|\.[0-9]+)/,maxBuffer:5120,formatError:function(t,e){return t.formatError(e)}}),e}(s.AbstractInputJax);e.TeX=y},function(t,e,r){"use strict";var n,i=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),o=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,i,o=r.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)a.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return a};Object.defineProperty(e,"__esModule",{value:!0}),e.FindTeX=void 0;var a=r(30),s=r(31),l=r(32),u=function(t){function e(e){var r=t.call(this,e)||this;return r.getPatterns(),r}return i(e,t),e.prototype.getPatterns=function(){var t=this,e=this.options,r=[],n=[],i=[];this.end={},this.env=this.sub=0;var o=1;e.inlineMath.forEach((function(e){return t.addPattern(r,e,!1)})),e.displayMath.forEach((function(e){return t.addPattern(r,e,!0)})),r.length&&n.push(r.sort(s.sortLength).join("|")),e.processEnvironments&&(n.push("\\\\begin\\s*\\{([^}]*)\\}"),this.env=o,o++),e.processEscapes&&i.push("\\\\([\\\\$])"),e.processRefs&&i.push("(\\\\(?:eq)?ref\\s*\\{[^}]*\\})"),i.length&&(n.push("("+i.join("|")+")"),this.sub=o),this.start=new RegExp(n.join("|"),"g"),this.hasPatterns=n.length>0},e.prototype.addPattern=function(t,e,r){var n=o(e,2),i=n[0],a=n[1];t.push(s.quotePattern(i)),this.end[i]=[a,r,this.endPattern(a)]},e.prototype.endPattern=function(t,e){return new RegExp((e||s.quotePattern(t))+"|\\\\(?:[a-zA-Z]|.)|[{}]","g")},e.prototype.findEnd=function(t,e,r,n){for(var i,a=o(n,3),s=a[0],u=a[1],c=a[2],p=c.lastIndex=r.index+r[0].length,f=0;i=c.exec(t);){if((i[1]||i[0])===s&&0===f)return l.protoItem(r[0],t.substr(p,i.index-p),i[0],e,r.index,i.index+i[0].length,u);"{"===i[0]?f++:"}"===i[0]&&f&&f--}return null},e.prototype.findMathInString=function(t,e,r){var n,i;for(this.start.lastIndex=0;n=this.start.exec(r);){if(void 0!==n[this.env]&&this.env){var o="\\\\end\\s*(\\{"+s.quotePattern(n[this.env])+"\\})";(i=this.findEnd(r,e,n,["{"+n[this.env]+"}",!0,this.endPattern(null,o)]))&&(i.math=i.open+i.math+i.close,i.open=i.close="")}else if(void 0!==n[this.sub]&&this.sub){var a=n[this.sub];o=n.index+n[this.sub].length;i=2===a.length?l.protoItem("",a.substr(1),"",e,n.index,o):l.protoItem("",a,"",e,n.index,o,!1)}else i=this.findEnd(r,e,n,this.end[n[0]]);i&&(t.push(i),this.start.lastIndex=i.end.n)}},e.prototype.findMath=function(t){var e=[];if(this.hasPatterns)for(var r=0,n=t.length;r=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0});var i,o=r(2),a=r(0);!function(t){t.cleanStretchy=function(t){var e,r,i=t.data;try{for(var o=n(i.getList("fixStretchy")),s=o.next();!s.done;s=o.next()){var l=s.value;if(a.default.getProperty(l,"fixStretchy")){var u=a.default.getForm(l);u&&u[3]&&u[3].stretchy&&a.default.setAttribute(l,"stretchy",!1);var c=l.parent;if(!(a.default.getTexClass(l)||u&&u[2])){var p=i.nodeFactory.create("node","TeXAtom",[l]);c.replaceChild(p,l),p.inheritAttributesFrom(l)}a.default.removeProperties(l,"fixStretchy")}}}catch(t){e={error:t}}finally{try{s&&!s.done&&(r=o.return)&&r.call(o)}finally{if(e)throw e.error}}},t.cleanAttributes=function(t){t.data.root.walkTree((function(t,e){var r,i,o=t.attributes;if(o)try{for(var a=n(o.getExplicitNames()),s=a.next();!s.done;s=a.next()){var l=s.value;o.attributes[l]===t.attributes.getInherited(l)&&delete o.attributes[l]}}catch(t){r={error:t}}finally{try{s&&!s.done&&(i=a.return)&&i.call(a)}finally{if(r)throw r.error}}}),{})},t.combineRelations=function(t){var i,s;try{for(var l=n(t.data.getList("mo")),u=l.next();!u.done;u=l.next()){var c=u.value;if(!c.getProperty("relationsCombined")&&c.parent&&(!c.parent||a.default.isType(c.parent,"mrow"))&&a.default.getTexClass(c)===o.TEXCLASS.REL){for(var p=c.parent,f=void 0,h=p.childNodes,d=h.indexOf(c)+1,m=a.default.getProperty(c,"variantForm");d=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},i=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,i,o=r.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)a.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return a},o=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(n=o.next()).done;)a.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return a},i=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0});var a=r(19),s=r(20),l=r(8),u=function(){function t(t,e){void 0===e&&(e=[]),this.options={},this.packageData=new Map,this.parsers=[],this.root=null,this.nodeLists={},this.error=!1,this.handlers=t.handlers,this.nodeFactory=new s.NodeFactory,this.nodeFactory.configuration=this,this.nodeFactory.setCreators(t.nodes),this.itemFactory=new a.default(t.items),this.itemFactory.configuration=this,l.defaultOptions.apply(void 0,i([this.options],e)),l.defaultOptions(this.options,t.options)}return t.prototype.pushParser=function(t){this.parsers.unshift(t)},t.prototype.popParser=function(){this.parsers.shift()},Object.defineProperty(t.prototype,"parser",{get:function(){return this.parsers[0]},enumerable:!1,configurable:!0}),t.prototype.clear=function(){this.parsers=[],this.root=null,this.nodeLists={},this.error=!1,this.tags.resetTag()},t.prototype.addNode=function(t,e){var r=this.nodeLists[t];r||(r=this.nodeLists[t]=[]),r.push(e)},t.prototype.getList=function(t){var e,r,n=this.nodeLists[t]||[],i=[];try{for(var a=o(n),s=a.next();!s.done;s=a.next()){var l=s.value;this.inTree(l)&&i.push(l)}}catch(t){e={error:t}}finally{try{s&&!s.done&&(r=a.return)&&r.call(a)}finally{if(e)throw e.error}}return this.nodeLists[t]=i,i},t.prototype.inTree=function(t){for(;t&&t!==this.root;)t=t.parent;return!!t},t}();e.default=u},function(t,e,r){"use strict";var n,i,o=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)});Object.defineProperty(e,"__esModule",{value:!0});var a=r(10),s=r(34),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e}(a.BaseItem),u=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.defaultKind="dummy",e.configuration=null,e}return o(e,t),e.DefaultStackItems=((i={})[l.prototype.kind]=l,i),e}(s.AbstractFactory);e.default=u},function(t,e,r){"use strict";var n=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,i,o=r.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)a.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return a},i=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(n=o.next()).done;)a.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return a};Object.defineProperty(e,"__esModule",{value:!0});var i=r(13),o=r(0),a=r(1),s=r(4),l=r(9),u=r(5),c=r(2),p=r(6),f=r(3);r(25),r(36),r(37);var h={},d={fontfamily:1,fontsize:1,fontweight:1,fontstyle:1,color:1,background:1,id:1,class:1,href:1,style:1};function m(t,e){var r=t.stack.env,n=r.inRoot;r.inRoot=!0;var i=new s.default(e,r,t.configuration),o=i.mml(),a=i.stack.global;if(a.leftRoot||a.upRoot){var l={};a.leftRoot&&(l.width=a.leftRoot),a.upRoot&&(l.voffset=a.upRoot,l.height=a.upRoot),o=t.create("node","mpadded",[o],l)}return r.inRoot=n,o}h.Open=function(t,e){t.Push(t.itemFactory.create("open"))},h.Close=function(t,e){t.Push(t.itemFactory.create("close"))},h.Tilde=function(t,e){t.Push(t.create("token","mtext",{},f.entities.nbsp))},h.Space=function(t,e){},h.Superscript=function(t,e){var r,i,s;t.GetNext().match(/\d/)&&(t.string=t.string.substr(0,t.i+1)+" "+t.string.substr(t.i+1));var l=t.stack.Top();l.isKind("prime")?(s=(r=n(l.Peek(2),2))[0],i=r[1],t.stack.Pop()):(s=t.stack.Prev())||(s=t.create("token","mi",{},""));var u=o.default.getProperty(s,"movesupsub"),c=o.default.isType(s,"msubsup")?s.sup:s.over;if(o.default.isType(s,"msubsup")&&!o.default.isType(s,"msup")&&o.default.getChildAt(s,s.sup)||o.default.isType(s,"munderover")&&!o.default.isType(s,"mover")&&o.default.getChildAt(s,s.over)&&!o.default.getProperty(s,"subsupOK"))throw new a.default("DoubleExponent","Double exponent: use braces to clarify");o.default.isType(s,"msubsup")&&!o.default.isType(s,"msup")||(u?((!o.default.isType(s,"munderover")||o.default.isType(s,"mover")||o.default.getChildAt(s,s.over))&&(s=t.create("node","munderover",[s],{movesupsub:!0})),c=s.over):c=(s=t.create("node","msubsup",[s])).sup),t.Push(t.itemFactory.create("subsup",s).setProperties({position:c,primes:i,movesupsub:u}))},h.Subscript=function(t,e){var r,i,s;t.GetNext().match(/\d/)&&(t.string=t.string.substr(0,t.i+1)+" "+t.string.substr(t.i+1));var l=t.stack.Top();l.isKind("prime")?(s=(r=n(l.Peek(2),2))[0],i=r[1],t.stack.Pop()):(s=t.stack.Prev())||(s=t.create("token","mi",{},""));var u=o.default.getProperty(s,"movesupsub"),c=o.default.isType(s,"msubsup")?s.sub:s.under;if(o.default.isType(s,"msubsup")&&!o.default.isType(s,"msup")&&o.default.getChildAt(s,s.sub)||o.default.isType(s,"munderover")&&!o.default.isType(s,"mover")&&o.default.getChildAt(s,s.under)&&!o.default.getProperty(s,"subsupOK"))throw new a.default("DoubleSubscripts","Double subscripts: use braces to clarify");o.default.isType(s,"msubsup")&&!o.default.isType(s,"msup")||(u?((!o.default.isType(s,"munderover")||o.default.isType(s,"mover")||o.default.getChildAt(s,s.under))&&(s=t.create("node","munderover",[s],{movesupsub:!0})),c=s.under):c=(s=t.create("node","msubsup",[s])).sub),t.Push(t.itemFactory.create("subsup",s).setProperties({position:c,primes:i,movesupsub:u}))},h.Prime=function(t,e){var r=t.stack.Prev();if(r||(r=t.create("node","mi")),o.default.isType(r,"msubsup")&&!o.default.isType(r,"msup")&&o.default.getChildAt(r,r.sup))throw new a.default("DoubleExponentPrime","Prime causes double exponent: use braces to clarify");var n="";t.i--;do{n+=f.entities.prime,t.i++,e=t.GetNext()}while("'"===e||e===f.entities.rquote);n=["","\u2032","\u2033","\u2034","\u2057"][n.length]||n;var i=t.create("token","mo",{},n);t.Push(t.itemFactory.create("prime",r,i))},h.Comment=function(t,e){for(;t.it.configuration.options.maxMacros)throw new a.default("MaxMacroSub2","MathJax maximum substitution count exceeded; is there a recursive latex environment?");t.parse("environment",[t,r])},h.Array=function(t,e,r,n,i,o,a,s,l){i||(i=t.GetArgument("\\begin{"+e.getName()+"}"));var u=("c"+i).replace(/[^clr|:]/g,"").replace(/[^|:]([|:])+/g,"$1");i=(i=i.replace(/[^clr]/g,"").split("").join(" ")).replace(/l/g,"left").replace(/r/g,"right").replace(/c/g,"center");var c=t.itemFactory.create("array");return c.arraydef={columnalign:i,columnspacing:o||"1em",rowspacing:a||"4pt"},u.match(/[|:]/)&&(u.charAt(0).match(/[|:]/)&&(c.frame.push("left"),c.dashed=":"===u.charAt(0)),u.charAt(u.length-1).match(/[|:]/)&&c.frame.push("right"),u=u.substr(1,u.length-2),c.arraydef.columnlines=u.split("").join(" ").replace(/[^|: ]/g,"none").replace(/\|/g,"solid").replace(/:/g,"dashed")),r&&c.setProperty("open",t.convertDelimiter(r)),n&&c.setProperty("close",t.convertDelimiter(n)),"D"===s?c.arraydef.displaystyle=!0:s&&(c.arraydef.displaystyle=!1),"S"===s&&(c.arraydef.scriptlevel=1),l&&(c.arraydef.useHeight=!1),t.Push(e),c},h.AlignedArray=function(t,e){var r=t.GetBrackets("\\begin{"+e.getName()+"}"),n=h.Array(t,e);return u.default.setArrayAlign(n,r)},h.Equation=function(t,e,r){return t.Push(e),u.default.checkEqnEnv(t),t.itemFactory.create("equation",r).setProperty("name",e.getName())},h.EqnArray=function(t,e,r,n,i,o){t.Push(e),n&&u.default.checkEqnEnv(t),i=(i=i.replace(/[^clr]/g,"").split("").join(" ")).replace(/l/g,"left").replace(/r/g,"right").replace(/c/g,"center");var a=t.itemFactory.create("eqnarray",e.getName(),r,n,t.stack.global);return a.arraydef={displaystyle:!0,columnalign:i,columnspacing:o||"1em",rowspacing:"3pt",side:t.options.tagSide,minlabelspacing:t.options.tagIndent},a},h.HandleNoTag=function(t,e){t.tags.notag()},h.HandleLabel=function(t,e){var r=t.GetArgument(e);if(""!==r&&!t.tags.refUpdate){if(t.tags.label)throw new a.default("MultipleCommand","Multiple %1",t.currentCS);if(t.tags.label=r,(t.tags.allLabels[r]||t.tags.labels[r])&&!t.options.ignoreDuplicateLabels)throw new a.default("MultipleLabel","Label '%1' multiply defined",r);t.tags.labels[r]=new p.Label}},h.HandleRef=function(t,e,r){var n=t.GetArgument(e),i=t.tags.allLabels[n]||t.tags.labels[n];i||(t.tags.refUpdate||(t.tags.redo=!0),i=new p.Label);var o=i.tag;r&&(o=t.tags.formatTag(o));var a=t.create("node","mrow",u.default.internalMath(t,o),{href:t.tags.formatUrl(i.id,t.options.baseURL),class:"MathJax_ref"});t.Push(a)},h.Macro=function(t,e,r,n,i){if(n){var o=[];if(null!=i){var s=t.GetBrackets(e);o.push(null==s?i:s)}for(var l=o.length;lt.configuration.options.maxMacros)throw new a.default("MaxMacroSub1","MathJax maximum macro substitution count exceeded; is there a recursive macro call?")},h.MathChoice=function(t,e){var r=t.ParseArg(e),n=t.ParseArg(e),i=t.ParseArg(e),o=t.ParseArg(e);t.Push(t.create("node","MathChoice",[r,n,i,o]))},e.default=h},function(t,e,r){"use strict";var n=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,i,o=r.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)a.push(n.value)}catch(t){i={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return a},i=this&&this.__spread||function(){for(var t=[],e=0;e\u20d2",nvinfin:"\u29de",nvlArr:"\u2902",nvle:"\u2264\u20d2",nvlt:"<\u20d2",nvltrie:"\u22b4\u20d2",nvrArr:"\u2903",nvrtrie:"\u22b5\u20d2",nvsim:"\u223c\u20d2",nwArr:"\u21d6",nwarhk:"\u2923",nwarrow:"\u2196",nwnear:"\u2927"},"n")},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.PrioritizedList=MathJax._.util.PrioritizedList.PrioritizedList},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.FunctionList=MathJax._.util.FunctionList.FunctionList},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.isObject=MathJax._.components.global.isObject,e.combineConfig=MathJax._.components.global.combineConfig,e.combineDefaults=MathJax._.components.global.combineDefaults,e.combineWithMathJax=MathJax._.components.global.combineWithMathJax,e.MathJax=MathJax._.components.global.MathJax},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractInputJax=MathJax._.core.InputJax.AbstractInputJax},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractFindMath=MathJax._.core.FindMath.AbstractFindMath},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.sortLength=MathJax._.util.string.sortLength,e.quotePattern=MathJax._.util.string.quotePattern,e.unicodeChars=MathJax._.util.string.unicodeChars,e.isPercent=MathJax._.util.string.isPercent,e.split=MathJax._.util.string.split},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.protoItem=MathJax._.core.MathItem.protoItem,e.AbstractMathItem=MathJax._.core.MathItem.AbstractMathItem,e.STATE=MathJax._.core.MathItem.STATE,e.newState=MathJax._.core.MathItem.newState},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.MmlMo=MathJax._.core.MmlTree.MmlNodes.mo.MmlMo},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractFactory=MathJax._.core.Tree.Factory.AbstractFactory},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=r(12),i=r(9),o=r(23),a=r(24),s=r(2);new n.RegExpMap("letter",a.default.variable,/[a-z]/i),new n.RegExpMap("digit",a.default.digit,/[0-9.,]/),new n.RegExpMap("command",a.default.controlSequence,/^\\/),new n.MacroMap("special",{"{":"Open","}":"Close","~":"Tilde","^":"Superscript",_:"Subscript"," ":"Space","\t":"Space","\r":"Space","\n":"Space","'":"Prime","%":"Comment","&":"Entry","#":"Hash","\xa0":"Space","\u2019":"Prime"},o.default),new n.CharacterMap("mathchar0mi",a.default.mathchar0mi,{alpha:"\u03b1",beta:"\u03b2",gamma:"\u03b3",delta:"\u03b4",epsilon:"\u03f5",zeta:"\u03b6",eta:"\u03b7",theta:"\u03b8",iota:"\u03b9",kappa:"\u03ba",lambda:"\u03bb",mu:"\u03bc",nu:"\u03bd",xi:"\u03be",omicron:"\u03bf",pi:"\u03c0",rho:"\u03c1",sigma:"\u03c3",tau:"\u03c4",upsilon:"\u03c5",phi:"\u03d5",chi:"\u03c7",psi:"\u03c8",omega:"\u03c9",varepsilon:"\u03b5",vartheta:"\u03d1",varpi:"\u03d6",varrho:"\u03f1",varsigma:"\u03c2",varphi:"\u03c6",S:["\xa7",{mathvariant:i.TexConstant.Variant.NORMAL}],aleph:["\u2135",{mathvariant:i.TexConstant.Variant.NORMAL}],hbar:["\u210f",{variantForm:!0}],imath:"\u0131",jmath:"\u0237",ell:"\u2113",wp:["\u2118",{mathvariant:i.TexConstant.Variant.NORMAL}],Re:["\u211c",{mathvariant:i.TexConstant.Variant.NORMAL}],Im:["\u2111",{mathvariant:i.TexConstant.Variant.NORMAL}],partial:["\u2202",{mathvariant:i.TexConstant.Variant.ITALIC}],infty:["\u221e",{mathvariant:i.TexConstant.Variant.NORMAL}],prime:["\u2032",{mathvariant:i.TexConstant.Variant.NORMAL,variantForm:!0}],emptyset:["\u2205",{mathvariant:i.TexConstant.Variant.NORMAL}],nabla:["\u2207",{mathvariant:i.TexConstant.Variant.NORMAL}],top:["\u22a4",{mathvariant:i.TexConstant.Variant.NORMAL}],bot:["\u22a5",{mathvariant:i.TexConstant.Variant.NORMAL}],angle:["\u2220",{mathvariant:i.TexConstant.Variant.NORMAL}],triangle:["\u25b3",{mathvariant:i.TexConstant.Variant.NORMAL}],backslash:["\u2216",{mathvariant:i.TexConstant.Variant.NORMAL,variantForm:!0}],forall:["\u2200",{mathvariant:i.TexConstant.Variant.NORMAL}],exists:["\u2203",{mathvariant:i.TexConstant.Variant.NORMAL}],neg:["\xac",{mathvariant:i.TexConstant.Variant.NORMAL}],lnot:["\xac",{mathvariant:i.TexConstant.Variant.NORMAL}],flat:["\u266d",{mathvariant:i.TexConstant.Variant.NORMAL}],natural:["\u266e",{mathvariant:i.TexConstant.Variant.NORMAL}],sharp:["\u266f",{mathvariant:i.TexConstant.Variant.NORMAL}],clubsuit:["\u2663",{mathvariant:i.TexConstant.Variant.NORMAL}],diamondsuit:["\u2662",{mathvariant:i.TexConstant.Variant.NORMAL}],heartsuit:["\u2661",{mathvariant:i.TexConstant.Variant.NORMAL}],spadesuit:["\u2660",{mathvariant:i.TexConstant.Variant.NORMAL}]}),new n.CharacterMap("mathchar0mo",a.default.mathchar0mo,{surd:"\u221a",coprod:["\u2210",{texClass:s.TEXCLASS.OP,movesupsub:!0}],bigvee:["\u22c1",{texClass:s.TEXCLASS.OP,movesupsub:!0}],bigwedge:["\u22c0",{texClass:s.TEXCLASS.OP,movesupsub:!0}],biguplus:["\u2a04",{texClass:s.TEXCLASS.OP,movesupsub:!0}],bigcap:["\u22c2",{texClass:s.TEXCLASS.OP,movesupsub:!0}],bigcup:["\u22c3",{texClass:s.TEXCLASS.OP,movesupsub:!0}],int:["\u222b",{texClass:s.TEXCLASS.OP}],intop:["\u222b",{texClass:s.TEXCLASS.OP,movesupsub:!0,movablelimits:!0}],iint:["\u222c",{texClass:s.TEXCLASS.OP}],iiint:["\u222d",{texClass:s.TEXCLASS.OP}],prod:["\u220f",{texClass:s.TEXCLASS.OP,movesupsub:!0}],sum:["\u2211",{texClass:s.TEXCLASS.OP,movesupsub:!0}],bigotimes:["\u2a02",{texClass:s.TEXCLASS.OP,movesupsub:!0}],bigoplus:["\u2a01",{texClass:s.TEXCLASS.OP,movesupsub:!0}],bigodot:["\u2a00",{texClass:s.TEXCLASS.OP,movesupsub:!0}],oint:["\u222e",{texClass:s.TEXCLASS.OP}],bigsqcup:["\u2a06",{texClass:s.TEXCLASS.OP,movesupsub:!0}],smallint:["\u222b",{largeop:!1}],triangleleft:"\u25c3",triangleright:"\u25b9",bigtriangleup:"\u25b3",bigtriangledown:"\u25bd",wedge:"\u2227",land:"\u2227",vee:"\u2228",lor:"\u2228",cap:"\u2229",cup:"\u222a",ddagger:"\u2021",dagger:"\u2020",sqcap:"\u2293",sqcup:"\u2294",uplus:"\u228e",amalg:"\u2a3f",diamond:"\u22c4",bullet:"\u2219",wr:"\u2240",div:"\xf7",odot:["\u2299",{largeop:!1}],oslash:["\u2298",{largeop:!1}],otimes:["\u2297",{largeop:!1}],ominus:["\u2296",{largeop:!1}],oplus:["\u2295",{largeop:!1}],mp:"\u2213",pm:"\xb1",circ:"\u2218",bigcirc:"\u25ef",setminus:"\u2216",cdot:"\u22c5",ast:"\u2217",times:"\xd7",star:"\u22c6",propto:"\u221d",sqsubseteq:"\u2291",sqsupseteq:"\u2292",parallel:"\u2225",mid:"\u2223",dashv:"\u22a3",vdash:"\u22a2",leq:"\u2264",le:"\u2264",geq:"\u2265",ge:"\u2265",lt:"<",gt:">",succ:"\u227b",prec:"\u227a",approx:"\u2248",succeq:"\u2ab0",preceq:"\u2aaf",supset:"\u2283",subset:"\u2282",supseteq:"\u2287",subseteq:"\u2286",in:"\u2208",ni:"\u220b",notin:"\u2209",owns:"\u220b",gg:"\u226b",ll:"\u226a",sim:"\u223c",simeq:"\u2243",perp:"\u22a5",equiv:"\u2261",asymp:"\u224d",smile:"\u2323",frown:"\u2322",ne:"\u2260",neq:"\u2260",cong:"\u2245",doteq:"\u2250",bowtie:"\u22c8",models:"\u22a8",notChar:"\u29f8",Leftrightarrow:"\u21d4",Leftarrow:"\u21d0",Rightarrow:"\u21d2",leftrightarrow:"\u2194",leftarrow:"\u2190",gets:"\u2190",rightarrow:"\u2192",to:["\u2192",{accent:!1}],mapsto:"\u21a6",leftharpoonup:"\u21bc",leftharpoondown:"\u21bd",rightharpoonup:"\u21c0",rightharpoondown:"\u21c1",nearrow:"\u2197",searrow:"\u2198",nwarrow:"\u2196",swarrow:"\u2199",rightleftharpoons:"\u21cc",hookrightarrow:"\u21aa",hookleftarrow:"\u21a9",longleftarrow:"\u27f5",Longleftarrow:"\u27f8",longrightarrow:"\u27f6",Longrightarrow:"\u27f9",Longleftrightarrow:"\u27fa",longleftrightarrow:"\u27f7",longmapsto:"\u27fc",ldots:"\u2026",cdots:"\u22ef",vdots:"\u22ee",ddots:"\u22f1",dotsc:"\u2026",dotsb:"\u22ef",dotsm:"\u22ef",dotsi:"\u22ef",dotso:"\u2026",ldotp:[".",{texClass:s.TEXCLASS.PUNCT}],cdotp:["\u22c5",{texClass:s.TEXCLASS.PUNCT}],colon:[":",{texClass:s.TEXCLASS.PUNCT}]}),new n.CharacterMap("mathchar7",a.default.mathchar7,{Gamma:"\u0393",Delta:"\u0394",Theta:"\u0398",Lambda:"\u039b",Xi:"\u039e",Pi:"\u03a0",Sigma:"\u03a3",Upsilon:"\u03a5",Phi:"\u03a6",Psi:"\u03a8",Omega:"\u03a9",_:"_","#":"#",$:"$","%":"%","&":"&",And:"&"}),new n.DelimiterMap("delimiter",a.default.delimiter,{"(":"(",")":")","[":"[","]":"]","<":"\u27e8",">":"\u27e9","\\lt":"\u27e8","\\gt":"\u27e9","/":"/","|":["|",{texClass:s.TEXCLASS.ORD}],".":"","\\\\":"\\","\\lmoustache":"\u23b0","\\rmoustache":"\u23b1","\\lgroup":"\u27ee","\\rgroup":"\u27ef","\\arrowvert":"\u23d0","\\Arrowvert":"\u2016","\\bracevert":"\u23aa","\\Vert":["\u2225",{texClass:s.TEXCLASS.ORD}],"\\|":["\u2225",{texClass:s.TEXCLASS.ORD}],"\\vert":["|",{texClass:s.TEXCLASS.ORD}],"\\uparrow":"\u2191","\\downarrow":"\u2193","\\updownarrow":"\u2195","\\Uparrow":"\u21d1","\\Downarrow":"\u21d3","\\Updownarrow":"\u21d5","\\backslash":"\\","\\rangle":"\u27e9","\\langle":"\u27e8","\\rbrace":"}","\\lbrace":"{","\\}":"}","\\{":"{","\\rceil":"\u2309","\\lceil":"\u2308","\\rfloor":"\u230b","\\lfloor":"\u230a","\\lbrack":"[","\\rbrack":"]"}),new n.CommandMap("macros",{displaystyle:["SetStyle","D",!0,0],textstyle:["SetStyle","T",!1,0],scriptstyle:["SetStyle","S",!1,1],scriptscriptstyle:["SetStyle","SS",!1,2],rm:["SetFont",i.TexConstant.Variant.NORMAL],mit:["SetFont",i.TexConstant.Variant.ITALIC],oldstyle:["SetFont",i.TexConstant.Variant.OLDSTYLE],cal:["SetFont",i.TexConstant.Variant.CALLIGRAPHIC],it:["SetFont","-tex-mathit"],bf:["SetFont",i.TexConstant.Variant.BOLD],bbFont:["SetFont",i.TexConstant.Variant.DOUBLESTRUCK],scr:["SetFont",i.TexConstant.Variant.SCRIPT],frak:["SetFont",i.TexConstant.Variant.FRAKTUR],sf:["SetFont",i.TexConstant.Variant.SANSSERIF],tt:["SetFont",i.TexConstant.Variant.MONOSPACE],tiny:["SetSize",.5],Tiny:["SetSize",.6],scriptsize:["SetSize",.7],small:["SetSize",.85],normalsize:["SetSize",1],large:["SetSize",1.2],Large:["SetSize",1.44],LARGE:["SetSize",1.73],huge:["SetSize",2.07],Huge:["SetSize",2.49],arcsin:["NamedFn"],arccos:["NamedFn"],arctan:["NamedFn"],arg:["NamedFn"],cos:["NamedFn"],cosh:["NamedFn"],cot:["NamedFn"],coth:["NamedFn"],csc:["NamedFn"],deg:["NamedFn"],det:"NamedOp",dim:["NamedFn"],exp:["NamedFn"],gcd:"NamedOp",hom:["NamedFn"],inf:"NamedOp",ker:["NamedFn"],lg:["NamedFn"],lim:"NamedOp",liminf:["NamedOp","lim inf"],limsup:["NamedOp","lim sup"],ln:["NamedFn"],log:["NamedFn"],max:"NamedOp",min:"NamedOp",Pr:"NamedOp",sec:["NamedFn"],sin:["NamedFn"],sinh:["NamedFn"],sup:"NamedOp",tan:["NamedFn"],tanh:["NamedFn"],limits:["Limits",1],nolimits:["Limits",0],overline:["UnderOver","00AF",null,1],underline:["UnderOver","005F"],overbrace:["UnderOver","23DE",1],underbrace:["UnderOver","23DF",1],overparen:["UnderOver","23DC"],underparen:["UnderOver","23DD"],overrightarrow:["UnderOver","2192"],underrightarrow:["UnderOver","2192"],overleftarrow:["UnderOver","2190"],underleftarrow:["UnderOver","2190"],overleftrightarrow:["UnderOver","2194"],underleftrightarrow:["UnderOver","2194"],overset:"Overset",underset:"Underset",stackrel:["Macro","\\mathrel{\\mathop{#2}\\limits^{#1}}",2],over:"Over",overwithdelims:"Over",atop:"Over",atopwithdelims:"Over",above:"Over",abovewithdelims:"Over",brace:["Over","{","}"],brack:["Over","[","]"],choose:["Over","(",")"],frac:"Frac",sqrt:"Sqrt",root:"Root",uproot:["MoveRoot","upRoot"],leftroot:["MoveRoot","leftRoot"],left:"LeftRight",right:"LeftRight",middle:"Middle",llap:"Lap",rlap:"Lap",raise:"RaiseLower",lower:"RaiseLower",moveleft:"MoveLeftRight",moveright:"MoveLeftRight",",":["Spacer",i.TexConstant.Length.THINMATHSPACE],":":["Spacer",i.TexConstant.Length.MEDIUMMATHSPACE],">":["Spacer",i.TexConstant.Length.MEDIUMMATHSPACE],";":["Spacer",i.TexConstant.Length.THICKMATHSPACE],"!":["Spacer",i.TexConstant.Length.NEGATIVETHINMATHSPACE],enspace:["Spacer",".5em"],quad:["Spacer","1em"],qquad:["Spacer","2em"],thinspace:["Spacer",i.TexConstant.Length.THINMATHSPACE],negthinspace:["Spacer",i.TexConstant.Length.NEGATIVETHINMATHSPACE],hskip:"Hskip",hspace:"Hskip",kern:"Hskip",mskip:"Hskip",mspace:"Hskip",mkern:"Hskip",rule:"rule",Rule:["Rule"],Space:["Rule","blank"],big:["MakeBig",s.TEXCLASS.ORD,.85],Big:["MakeBig",s.TEXCLASS.ORD,1.15],bigg:["MakeBig",s.TEXCLASS.ORD,1.45],Bigg:["MakeBig",s.TEXCLASS.ORD,1.75],bigl:["MakeBig",s.TEXCLASS.OPEN,.85],Bigl:["MakeBig",s.TEXCLASS.OPEN,1.15],biggl:["MakeBig",s.TEXCLASS.OPEN,1.45],Biggl:["MakeBig",s.TEXCLASS.OPEN,1.75],bigr:["MakeBig",s.TEXCLASS.CLOSE,.85],Bigr:["MakeBig",s.TEXCLASS.CLOSE,1.15],biggr:["MakeBig",s.TEXCLASS.CLOSE,1.45],Biggr:["MakeBig",s.TEXCLASS.CLOSE,1.75],bigm:["MakeBig",s.TEXCLASS.REL,.85],Bigm:["MakeBig",s.TEXCLASS.REL,1.15],biggm:["MakeBig",s.TEXCLASS.REL,1.45],Biggm:["MakeBig",s.TEXCLASS.REL,1.75],mathord:["TeXAtom",s.TEXCLASS.ORD],mathop:["TeXAtom",s.TEXCLASS.OP],mathopen:["TeXAtom",s.TEXCLASS.OPEN],mathclose:["TeXAtom",s.TEXCLASS.CLOSE],mathbin:["TeXAtom",s.TEXCLASS.BIN],mathrel:["TeXAtom",s.TEXCLASS.REL],mathpunct:["TeXAtom",s.TEXCLASS.PUNCT],mathinner:["TeXAtom",s.TEXCLASS.INNER],vcenter:["TeXAtom",s.TEXCLASS.VCENTER],buildrel:"BuildRel",hbox:["HBox",0],text:"HBox",mbox:["HBox",0],fbox:"FBox",strut:"Strut",mathstrut:["Macro","\\vphantom{(}"],phantom:"Phantom",vphantom:["Phantom",1,0],hphantom:["Phantom",0,1],smash:"Smash",acute:["Accent","00B4"],grave:["Accent","0060"],ddot:["Accent","00A8"],tilde:["Accent","007E"],bar:["Accent","00AF"],breve:["Accent","02D8"],check:["Accent","02C7"],hat:["Accent","005E"],vec:["Accent","2192"],dot:["Accent","02D9"],widetilde:["Accent","007E",1],widehat:["Accent","005E",1],matrix:"Matrix",array:"Matrix",pmatrix:["Matrix","(",")"],cases:["Matrix","{","","left left",null,".1em",null,!0],eqalign:["Matrix",null,null,"right left",i.TexConstant.Length.THICKMATHSPACE,".5em","D"],displaylines:["Matrix",null,null,"center",null,".5em","D"],cr:"Cr","\\":"CrLaTeX",newline:["CrLaTeX",!0],hline:["HLine","solid"],hdashline:["HLine","dashed"],eqalignno:["Matrix",null,null,"right left",i.TexConstant.Length.THICKMATHSPACE,".5em","D",null,"right"],leqalignno:["Matrix",null,null,"right left",i.TexConstant.Length.THICKMATHSPACE,".5em","D",null,"left"],hfill:"HFill",hfil:"HFill",hfilll:"HFill",bmod:["Macro",'\\mmlToken{mo}[lspace="thickmathspace" rspace="thickmathspace"]{mod}'],pmod:["Macro","\\pod{\\mmlToken{mi}{mod}\\kern 6mu #1}",1],mod:["Macro","\\mathchoice{\\kern18mu}{\\kern12mu}{\\kern12mu}{\\kern12mu}\\mmlToken{mi}{mod}\\,\\,#1",1],pod:["Macro","\\mathchoice{\\kern18mu}{\\kern8mu}{\\kern8mu}{\\kern8mu}(#1)",1],iff:["Macro","\\;\\Longleftrightarrow\\;"],skew:["Macro","{{#2{#3\\mkern#1mu}\\mkern-#1mu}{}}",3],mathcal:["Macro","{\\cal #1}",1],mathscr:["Macro","{\\scr #1}",1],mathrm:["Macro","{\\rm #1}",1],mathbf:["Macro","{\\bf #1}",1],mathbb:["Macro","{\\bbFont #1}",1],Bbb:["Macro","{\\bbFont #1}",1],mathit:["Macro","{\\it #1}",1],mathfrak:["Macro","{\\frak #1}",1],mathsf:["Macro","{\\sf #1}",1],mathtt:["Macro","{\\tt #1}",1],textrm:["HBox",null,i.TexConstant.Variant.NORMAL],textit:["HBox",null,i.TexConstant.Variant.ITALIC],textbf:["HBox",null,i.TexConstant.Variant.BOLD],textsf:["HBox",null,i.TexConstant.Variant.SANSSERIF],texttt:["HBox",null,i.TexConstant.Variant.MONOSPACE],pmb:["Macro","\\rlap{#1}\\kern1px{#1}",1],TeX:["Macro","T\\kern-.14em\\lower.5ex{E}\\kern-.115em X"],LaTeX:["Macro","L\\kern-.325em\\raise.21em{\\scriptstyle{A}}\\kern-.17em\\TeX"]," ":["Macro","\\text{ }"],not:"Not",dots:"Dots",space:"Tilde","\xa0":"Tilde",begin:"BeginEnd",end:"BeginEnd",label:"HandleLabel",ref:"HandleRef",nonumber:"HandleNoTag",mathchoice:"MathChoice",mmlToken:"MmlToken"},o.default),new n.EnvironmentMap("environment",a.default.environment,{array:["AlignedArray"],equation:["Equation",null,!0],"equation*":["Equation",null,!1],eqnarray:["EqnArray",null,!0,!0,"rcl","0 "+i.TexConstant.Length.THICKMATHSPACE,".5em"]},o.default),new n.CharacterMap("not_remap",null,{"\u2190":"\u219a","\u2192":"\u219b","\u2194":"\u21ae","\u21d0":"\u21cd","\u21d2":"\u21cf","\u21d4":"\u21ce","\u2208":"\u2209","\u220b":"\u220c","\u2223":"\u2224","\u2225":"\u2226","\u223c":"\u2241","~":"\u2241","\u2243":"\u2244","\u2245":"\u2247","\u2248":"\u2249","\u224d":"\u226d","=":"\u2260","\u2261":"\u2262","<":"\u226e",">":"\u226f","\u2264":"\u2270","\u2265":"\u2271","\u2272":"\u2274","\u2273":"\u2275","\u2276":"\u2278","\u2277":"\u2279","\u227a":"\u2280","\u227b":"\u2281","\u2282":"\u2284","\u2283":"\u2285","\u2286":"\u2288","\u2287":"\u2289","\u22a2":"\u22ac","\u22a8":"\u22ad","\u22a9":"\u22ae","\u22ab":"\u22af","\u227c":"\u22e0","\u227d":"\u22e1","\u2291":"\u22e2","\u2292":"\u22e3","\u22b2":"\u22ea","\u22b3":"\u22eb","\u22b4":"\u22ec","\u22b5":"\u22ed","\u2203":"\u2204"})},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),r(3).add({Pcy:"\u041f",Poincareplane:"\u210c",Pr:"\u2abb",Prime:"\u2033",Proportion:"\u2237",par:"\u2225",para:"\xb6",parallel:"\u2225",parsim:"\u2af3",parsl:"\u2afd",part:"\u2202",pcy:"\u043f",percnt:"%",permil:"\u2030",perp:"\u22a5",pertenk:"\u2031",phmmat:"\u2133",phone:"\u260e",pitchfork:"\u22d4",planck:"\u210f",planckh:"\u210e",plankv:"\u210f",plus:"+",plusacir:"\u2a23",plusb:"\u229e",pluscir:"\u2a22",plusdo:"\u2214",plusdu:"\u2a25",pluse:"\u2a72",plusmn:"\xb1",plussim:"\u2a26",plustwo:"\u2a27",pm:"\xb1",pointint:"\u2a15",pound:"\xa3",pr:"\u227a",prE:"\u2ab3",prcue:"\u227c",pre:"\u2aaf",prec:"\u227a",precapprox:"\u2ab7",preccurlyeq:"\u227c",preceq:"\u2aaf",precsim:"\u227e",primes:"\u2119",prnE:"\u2ab5",prnap:"\u2ab9",prnsim:"\u22e8",prod:"\u220f",profalar:"\u232e",profline:"\u2312",profsurf:"\u2313",prop:"\u221d",propto:"\u221d",prsim:"\u227e",prurel:"\u22b0",puncsp:"\u2008"},"p")},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),r(3).add({RBarr:"\u2910",REG:"\xae",Racute:"\u0154",Rang:"\u27eb",Rarrtl:"\u2916",Rcaron:"\u0158",Rcedil:"\u0156",Rcy:"\u0420",ReverseElement:"\u220b",ReverseUpEquilibrium:"\u296f",Rho:"\u03a1",RightArrowBar:"\u21e5",RightDoubleBracket:"\u27e7",RightDownTeeVector:"\u295d",RightDownVectorBar:"\u2955",RightTeeVector:"\u295b",RightTriangleBar:"\u29d0",RightUpDownVector:"\u294f",RightUpTeeVector:"\u295c",RightUpVectorBar:"\u2954",RightVectorBar:"\u2953",RoundImplies:"\u2970",RuleDelayed:"\u29f4",rAarr:"\u21db",rArr:"\u21d2",rAtail:"\u291c",rBarr:"\u290f",rHar:"\u2964",race:"\u223d\u0331",racute:"\u0155",radic:"\u221a",raemptyv:"\u29b3",rang:"\u27e9",rangd:"\u2992",range:"\u29a5",rangle:"\u27e9",raquo:"\xbb",rarr:"\u2192",rarrap:"\u2975",rarrb:"\u21e5",rarrbfs:"\u2920",rarrc:"\u2933",rarrfs:"\u291e",rarrhk:"\u21aa",rarrlp:"\u21ac",rarrpl:"\u2945",rarrsim:"\u2974",rarrw:"\u219d",ratail:"\u291a",ratio:"\u2236",rationals:"\u211a",rbarr:"\u290d",rbbrk:"\u2773",rbrke:"\u298c",rbrksld:"\u298e",rbrkslu:"\u2990",rcaron:"\u0159",rcedil:"\u0157",rceil:"\u2309",rcub:"}",rcy:"\u0440",rdca:"\u2937",rdldhar:"\u2969",rdquo:"\u201d",rdquor:"\u201d",rdsh:"\u21b3",real:"\u211c",realine:"\u211b",realpart:"\u211c",reals:"\u211d",rect:"\u25ad",reg:"\xae",rfisht:"\u297d",rfloor:"\u230b",rhard:"\u21c1",rharu:"\u21c0",rharul:"\u296c",rightarrow:"\u2192",rightarrowtail:"\u21a3",rightharpoondown:"\u21c1",rightharpoonup:"\u21c0",rightleftarrows:"\u21c4",rightleftharpoons:"\u21cc",rightsquigarrow:"\u219d",risingdotseq:"\u2253",rlarr:"\u21c4",rlhar:"\u21cc",rlm:"\u200f",rmoustache:"\u23b1",rnmid:"\u2aee",roang:"\u27ed",roarr:"\u21fe",robrk:"\u27e7",ropar:"\u2986",roplus:"\u2a2e",rotimes:"\u2a35",rpar:")",rpargt:"\u2994",rppolint:"\u2a12",rrarr:"\u21c9",rsaquo:"\u203a",rsh:"\u21b1",rsqb:"]",rsquo:"\u2019",rsquor:"\u2019",rthree:"\u22cc",rtrie:"\u22b5",rtrif:"\u25b8",rtriltri:"\u29ce",ruluhar:"\u2968",rx:"\u211e"},"r")},function(t,e,r){"use strict";r.r(e);var n=r(28),i=r(14),o=r(11),a=r(16),s=r(15),l=r(7),u=r(20),c=r(0),p=r(24),f=r(18),h=r(5),d=r(17),m=r(10),g=r(19),y=r(22),v=r(12),b=r(6),T=r(9),P=r(1),S=r(4),x=r(21),A=r(13),M=r(23);Object(n.combineWithMathJax)({_:{input:{tex_ts:i,tex:{Configuration:o,FilterUtil:a,FindTeX:s,MapHandler:l,NodeFactory:u,NodeUtil:c,ParseMethods:p,ParseOptions:f,ParseUtil:h,Stack:d,StackItem:m,StackItemFactory:g,Symbol:y,SymbolMap:v,Tags:b,TexConstants:T,TexError:P,TexParser:S,base:{BaseConfiguration:x,BaseItems:A,BaseMethods:M}}}}});var O=r(8);!function(t){if(MathJax.startup){MathJax.startup.registerConstructor("tex",i.TeX),MathJax.startup.useInput("tex"),MathJax.config.tex||(MathJax.config.tex={});var e=MathJax.config.tex.packages;MathJax.config.tex.packages=t,e&&Object(O.insert)(MathJax.config.tex,{packages:e})}}(["base"])}]); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex-full.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex-full.js new file mode 100644 index 0000000..9c79503 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex-full.js @@ -0,0 +1 @@ +!function(t){var e={};function r(n){if(e[n])return e[n].exports;var a=e[n]={i:n,l:!1,exports:{}};return t[n].call(a.exports,a,a.exports,r),a.l=!0,a.exports}r.m=t,r.c=e,r.d=function(t,e,n){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(t,e){if(1&e&&(t=r(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var a in t)r.d(n,a,function(e){return t[e]}.bind(null,a));return n},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,"a",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p="",r(r.s=95)}([function(t,e,r){"use strict";var n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,a,o=r.call(t),i=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)i.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(a)throw a.error}}return i};Object.defineProperty(e,"__esModule",{value:!0}),e.ParserConfiguration=e.ConfigurationHandler=e.Configuration=void 0;var o,i=r(10),s=r(16),l=r(73),c=r(72),u=r(9),p=function(){function t(t,e,r,n,a,o,i,s,l,c,u,p){void 0===e&&(e={}),void 0===r&&(r={}),void 0===n&&(n={}),void 0===a&&(a={}),void 0===o&&(o={}),void 0===i&&(i={}),void 0===s&&(s=[]),void 0===l&&(l=[]),void 0===c&&(c=null),void 0===u&&(u=null),this.name=t,this.handler=e,this.fallback=r,this.items=n,this.tags=a,this.options=o,this.nodes=i,this.preprocessors=s,this.postprocessors=l,this.initMethod=c,this.configMethod=u,this.priority=p,this.handler=Object.assign({character:[],delimiter:[],macro:[],environment:[]},e)}return t.makeProcessor=function(t,e){return Array.isArray(t)?t:[t,e]},t._create=function(e,r){var n=this;void 0===r&&(r={});var a=r.priority||c.PrioritizedList.DEFAULTPRIORITY,o=r.init?this.makeProcessor(r.init,a):null,i=r.config?this.makeProcessor(r.config,a):null,s=(r.preprocessors||[]).map((function(t){return n.makeProcessor(t,a)})),l=(r.postprocessors||[]).map((function(t){return n.makeProcessor(t,a)}));return new t(e,r.handler||{},r.fallback||{},r.items||{},r.tags||{},r.options||{},r.nodes||{},s,l,o,i,a)},t.create=function(e,r){void 0===r&&(r={});var n=t._create(e,r);return o.set(e,n),n},t.local=function(e){return void 0===e&&(e={}),t._create("",e)},Object.defineProperty(t.prototype,"init",{get:function(){return this.initMethod?this.initMethod[0]:null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"config",{get:function(){return this.configMethod?this.configMethod[0]:null},enumerable:!1,configurable:!0}),t}();e.Configuration=p,function(t){var e=new Map;t.set=function(t,r){e.set(t,r)},t.get=function(t){return e.get(t)},t.keys=function(){return e.keys()}}(o=e.ConfigurationHandler||(e.ConfigurationHandler={}));var f=function(){function t(t){var e,r,a,o;this.initMethod=new l.FunctionList,this.configMethod=new l.FunctionList,this.configurations=new c.PrioritizedList,this.handlers=new s.SubHandlers,this.items={},this.tags={},this.options={},this.nodes={};try{for(var i=n(t.slice().reverse()),u=i.next();!u.done;u=i.next()){var p=u.value;this.addPackage(p)}}catch(t){e={error:t}}finally{try{u&&!u.done&&(r=i.return)&&r.call(i)}finally{if(e)throw e.error}}try{for(var f=n(this.configurations),d=f.next();!d.done;d=f.next()){var h=d.value,m=h.item,g=h.priority;this.append(m,g)}}catch(t){a={error:t}}finally{try{d&&!d.done&&(o=f.return)&&o.call(f)}finally{if(a)throw a.error}}}return t.prototype.init=function(){this.initMethod.execute(this)},t.prototype.config=function(t){var e,r;this.configMethod.execute(this,t);try{for(var a=n(this.configurations),o=a.next();!o.done;o=a.next()){var i=o.value;this.addFilters(t,i.item)}}catch(t){e={error:t}}finally{try{o&&!o.done&&(r=a.return)&&r.call(a)}finally{if(e)throw e.error}}},t.prototype.addPackage=function(t){var e="string"==typeof t?t:t[0],r=o.get(e);r&&this.configurations.add(r,"string"==typeof t?r.priority:t[1])},t.prototype.add=function(t,e,r){var a,o;void 0===r&&(r={}),this.append(t),this.configurations.add(t,t.priority),this.init();var s=e.parseOptions;s.nodeFactory.setCreators(t.nodes);try{for(var l=n(Object.keys(t.items)),c=l.next();!c.done;c=l.next()){var p=c.value;s.itemFactory.setNodeClass(p,t.items[p])}}catch(t){a={error:t}}finally{try{c&&!c.done&&(o=l.return)&&o.call(l)}finally{if(a)throw a.error}}u.TagsFactory.addTags(t.tags),i.defaultOptions(s.options,t.options),i.userOptions(s.options,r),this.addFilters(e,t),t.config&&t.config(this,e)},t.prototype.append=function(t,e){e=e||t.priority,t.initMethod&&this.initMethod.add(t.initMethod[0],t.initMethod[1]),t.configMethod&&this.configMethod.add(t.configMethod[0],t.configMethod[1]),this.handlers.add(t.handler,t.fallback,e),Object.assign(this.items,t.items),Object.assign(this.tags,t.tags),i.defaultOptions(this.options,t.options),Object.assign(this.nodes,t.nodes)},t.prototype.addFilters=function(t,e){var r,o,i,s;try{for(var l=n(e.preprocessors),c=l.next();!c.done;c=l.next()){var u=a(c.value,2),p=u[0],f=u[1];t.preFilters.add(p,f)}}catch(t){r={error:t}}finally{try{c&&!c.done&&(o=l.return)&&o.call(l)}finally{if(r)throw r.error}}try{for(var d=n(e.postprocessors),h=d.next();!h.done;h=d.next()){var m=a(h.value,2),g=m[0];f=m[1];t.postFilters.add(g,f)}}catch(t){i={error:t}}finally{try{h&&!h.done&&(s=d.return)&&s.call(d)}finally{if(i)throw i.error}}},t}();e.ParserConfiguration=f},function(t,e,r){"use strict";var n,a=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),o=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,a,o=r.call(t),i=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)i.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(a)throw a.error}}return i},i=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},s=this&&this.__spread||function(){for(var t=[],e=0;e="0"&&i<="9")n[a]=r[parseInt(n[a],10)-1],"number"==typeof n[a]&&(n[a]=n[a].toString());else if("{"===i){if((i=n[a].substr(1))>="0"&&i<="9")n[a]=r[parseInt(n[a].substr(1,n[a].length-2),10)-1],"number"==typeof n[a]&&(n[a]=n[a].toString());else n[a].match(/^\{([a-z]+):%(\d+)\|(.*)\}$/)&&(n[a]="%"+n[a])}null==n[a]&&(n[a]="???")}return n.join("")},t.pattern=/%(\d+|\{\d+\}|\{[a-z]+:\%\d+(?:\|(?:%\{\d+\}|%.|[^\}])*)+\}|.)/g,t}();e.default=n},function(t,e,r){"use strict";var n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,a,o=r.call(t),i=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)i.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(a)throw a.error}}return i},o=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(n=o.next()).done;)i.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(a)throw a.error}}return i},a=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0});var o,i=r(5),s=r(3),l=r(6),c=r(2),u=r(13);r(71),function(t){var e={em:function(t){return t},ex:function(t){return.43*t},pt:function(t){return t/10},pc:function(t){return 1.2*t},px:function(t){return 7.2*t/72},in:function(t){return 7.2*t},cm:function(t){return 7.2*t/2.54},mm:function(t){return 7.2*t/25.4},mu:function(t){return t/18}},r="([-+]?([.,]\\d+|\\d+([.,]\\d*)?))",o="(pt|em|ex|mu|px|mm|cm|in|pc)",p=RegExp("^\\s*"+r+"\\s*"+o+"\\s*$"),f=RegExp("^\\s*"+r+"\\s*"+o+" ?");function d(t,r){void 0===r&&(r=!1);var a=t.match(r?f:p);return a?function(t){var r=n(t,3),a=r[0],o=r[1],i=r[2];if("mu"!==o)return[a,o,i];return[h(e[o](parseFloat(a||"1"))).slice(0,-2),"em",i]}([a[1].replace(/,/,"."),a[4],a[0].length]):[null,null,0]}function h(t){return Math.abs(t)<6e-4?"0em":t.toFixed(3).replace(/\.?0+$/,"")+"em"}function m(t,e,r){"{"!==e&&"}"!==e||(e="\\"+e);var n="{\\bigg"+r+" "+e+"}",a="{\\big"+r+" "+e+"}";return new l.default("\\mathchoice"+n+a+a+a,{},t).mml()}function g(t,e,r){e=e.replace(/^\s+/,u.entities.nbsp).replace(/\s+$/,u.entities.nbsp);var n=t.create("text",e);return t.create("node","mtext",[],r,n)}function v(t,e,r){if(r.match(/^[a-z]/i)&&e.match(/(^|[^\\])(\\\\)*\\[a-z]+$/i)&&(e+=" "),e.length+r.length>t.configuration.options.maxBuffer)throw new c.default("MaxBufferSize","MathJax internal buffer size exceeded; is there a recursive macro call?");return e+r}function y(t,e){for(;e>0;)t=t.trim().slice(1,-1),e--;return t.trim()}function b(t,e){for(var r=t.length,n=0,a="",o=0,i=0,s=!0,l=!1;on&&(i=n)),n++;break;case"}":n&&n--,(s||l)&&(i--,l=!0),s=!1;break;default:if(!n&&-1!==e.indexOf(u))return[l?"true":y(a,i),u,t.slice(o)];s=!1,l=!1}a+=u}if(n)throw new c.default("ExtraOpenMissingClose","Extra open brace or missing close brace");return[l?"true":y(a,i),"",t.slice(o)]}t.matchDimen=d,t.dimen2em=function(t){var r=n(d(t),2),a=r[0],o=r[1],i=parseFloat(a||"1"),s=e[o];return s?s(i):0},t.Em=h,t.fenced=function(t,e,r,n,a){void 0===a&&(a="");var o,c=t.nodeFactory,u=c.create("node","mrow",[],{open:e,close:n,texClass:i.TEXCLASS.INNER});if(a)o=new l.default("\\"+a+"l"+e,t.parser.stack.env,t).mml();else{var p=c.create("text",e);o=c.create("node","mo",[],{fence:!0,stretchy:!0,symmetric:!0,texClass:i.TEXCLASS.OPEN},p)}if(s.default.appendChildren(u,[o]),s.default.isType(r,"mrow")&&s.default.isInferred(r)?s.default.appendChildren(u,s.default.getChildren(r)):s.default.appendChildren(u,[r]),a)o=new l.default("\\"+a+"r"+n,t.parser.stack.env,t).mml();else{var f=c.create("text",n);o=c.create("node","mo",[],{fence:!0,stretchy:!0,symmetric:!0,texClass:i.TEXCLASS.CLOSE},f)}return s.default.appendChildren(u,[o]),u},t.fixedFence=function(t,e,r,n){var a=t.nodeFactory.create("node","mrow",[],{open:e,close:n,texClass:i.TEXCLASS.ORD});return e&&s.default.appendChildren(a,[m(t,e,"l")]),s.default.isType(r,"mrow")?s.default.appendChildren(a,s.default.getChildren(r)):s.default.appendChildren(a,[r]),n&&s.default.appendChildren(a,[m(t,n,"r")]),a},t.mathPalette=m,t.fixInitialMO=function(t,e){for(var r=0,n=e.length;r1&&(u=[t.create("node","mrow",u)]),u},t.internalText=g,t.trimSpaces=function(t){if("string"!=typeof t)return t;var e=t.trim();return e.match(/\\$/)&&t.match(/ $/)&&(e+=" "),e},t.setArrayAlign=function(e,r){return"t"===(r=t.trimSpaces(r||""))?e.arraydef.align="baseline 1":"b"===r?e.arraydef.align="baseline -1":"c"===r?e.arraydef.align="center":r&&(e.arraydef.align=r),e},t.substituteArgs=function(t,e,r){for(var n="",a="",o=0;oe.length)throw new c.default("IllegalMacroParam","Illegal macro parameter reference");a=v(t,v(t,a,n),e[parseInt(i,10)-1]),n=""}else n+=i}return v(t,a,n)},t.addArgs=v,t.checkEqnEnv=function(t){if(t.stack.global.eqnenv)throw new c.default("ErroneousNestingEq","Erroneous nesting of equation structures");t.stack.global.eqnenv=!0},t.MmlFilterAttribute=function(t,e,r){return r},t.getFontDef=function(t){var e=t.stack.env.font;return e?{mathvariant:e}:{}},t.keyvalOptions=function(t,e,r){var o,i;void 0===e&&(e=null),void 0===r&&(r=!1);var s=function(t){var e,r,a,o,i,s={},l=t;for(;l;)o=(e=n(b(l,["=",","]),3))[0],a=e[1],l=e[2],"="===a?(i=(r=n(b(l,[","]),3))[0],a=r[1],l=r[2],i="false"===i||"true"===i?JSON.parse(i):i,s[o]=i):o&&(s[o]=!0);return s}(t);if(e)try{for(var l=a(Object.keys(s)),u=l.next();!u.done;u=l.next()){var p=u.value;if(!e.hasOwnProperty(p)){if(r)throw new c.default("InvalidOption","Invalid optional argument: %1",p);delete s[p]}}}catch(t){o={error:t}}finally{try{u&&!u.done&&(i=l.return)&&i.call(l)}finally{if(o)throw o.error}}return s}}(o||(o={})),e.default=o},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TEXCLASS=MathJax._.core.MmlTree.MmlNode.TEXCLASS,e.TEXCLASSNAMES=MathJax._.core.MmlTree.MmlNode.TEXCLASSNAMES,e.indentAttributes=MathJax._.core.MmlTree.MmlNode.indentAttributes,e.AbstractMmlNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlNode,e.AbstractMmlTokenNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlTokenNode,e.AbstractMmlLayoutNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlLayoutNode,e.AbstractMmlBaseNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlBaseNode,e.AbstractMmlEmptyNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlEmptyNode,e.TextNode=MathJax._.core.MmlTree.MmlNode.TextNode,e.XMLNode=MathJax._.core.MmlTree.MmlNode.XMLNode},function(t,e,r){"use strict";var n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,a,o=r.call(t),i=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)i.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(a)throw a.error}}return i},o=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(n=o.next()).done;)i.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(a)throw a.error}}return i};Object.defineProperty(e,"__esModule",{value:!0});var a=r(15),o=r(3),i=r(2),s=r(6),l=r(7),c=r(4),u=r(5),p=r(9),f=r(13);r(71),r(83),r(84);var d={},h={fontfamily:1,fontsize:1,fontweight:1,fontstyle:1,color:1,background:1,id:1,class:1,href:1,style:1};function m(t,e){var r=t.stack.env,n=r.inRoot;r.inRoot=!0;var a=new s.default(e,r,t.configuration),o=a.mml(),i=a.stack.global;if(i.leftRoot||i.upRoot){var l={};i.leftRoot&&(l.width=i.leftRoot),i.upRoot&&(l.voffset=i.upRoot,l.height=i.upRoot),o=t.create("node","mpadded",[o],l)}return r.inRoot=n,o}d.Open=function(t,e){t.Push(t.itemFactory.create("open"))},d.Close=function(t,e){t.Push(t.itemFactory.create("close"))},d.Tilde=function(t,e){t.Push(t.create("token","mtext",{},f.entities.nbsp))},d.Space=function(t,e){},d.Superscript=function(t,e){var r,a,s;t.GetNext().match(/\d/)&&(t.string=t.string.substr(0,t.i+1)+" "+t.string.substr(t.i+1));var l=t.stack.Top();l.isKind("prime")?(s=(r=n(l.Peek(2),2))[0],a=r[1],t.stack.Pop()):(s=t.stack.Prev())||(s=t.create("token","mi",{},""));var c=o.default.getProperty(s,"movesupsub"),u=o.default.isType(s,"msubsup")?s.sup:s.over;if(o.default.isType(s,"msubsup")&&!o.default.isType(s,"msup")&&o.default.getChildAt(s,s.sup)||o.default.isType(s,"munderover")&&!o.default.isType(s,"mover")&&o.default.getChildAt(s,s.over)&&!o.default.getProperty(s,"subsupOK"))throw new i.default("DoubleExponent","Double exponent: use braces to clarify");o.default.isType(s,"msubsup")&&!o.default.isType(s,"msup")||(c?((!o.default.isType(s,"munderover")||o.default.isType(s,"mover")||o.default.getChildAt(s,s.over))&&(s=t.create("node","munderover",[s],{movesupsub:!0})),u=s.over):u=(s=t.create("node","msubsup",[s])).sup),t.Push(t.itemFactory.create("subsup",s).setProperties({position:u,primes:a,movesupsub:c}))},d.Subscript=function(t,e){var r,a,s;t.GetNext().match(/\d/)&&(t.string=t.string.substr(0,t.i+1)+" "+t.string.substr(t.i+1));var l=t.stack.Top();l.isKind("prime")?(s=(r=n(l.Peek(2),2))[0],a=r[1],t.stack.Pop()):(s=t.stack.Prev())||(s=t.create("token","mi",{},""));var c=o.default.getProperty(s,"movesupsub"),u=o.default.isType(s,"msubsup")?s.sub:s.under;if(o.default.isType(s,"msubsup")&&!o.default.isType(s,"msup")&&o.default.getChildAt(s,s.sub)||o.default.isType(s,"munderover")&&!o.default.isType(s,"mover")&&o.default.getChildAt(s,s.under)&&!o.default.getProperty(s,"subsupOK"))throw new i.default("DoubleSubscripts","Double subscripts: use braces to clarify");o.default.isType(s,"msubsup")&&!o.default.isType(s,"msup")||(c?((!o.default.isType(s,"munderover")||o.default.isType(s,"mover")||o.default.getChildAt(s,s.under))&&(s=t.create("node","munderover",[s],{movesupsub:!0})),u=s.under):u=(s=t.create("node","msubsup",[s])).sub),t.Push(t.itemFactory.create("subsup",s).setProperties({position:u,primes:a,movesupsub:c}))},d.Prime=function(t,e){var r=t.stack.Prev();if(r||(r=t.create("node","mi")),o.default.isType(r,"msubsup")&&!o.default.isType(r,"msup")&&o.default.getChildAt(r,r.sup))throw new i.default("DoubleExponentPrime","Prime causes double exponent: use braces to clarify");var n="";t.i--;do{n+=f.entities.prime,t.i++,e=t.GetNext()}while("'"===e||e===f.entities.rquote);n=["","\u2032","\u2033","\u2034","\u2057"][n.length]||n;var a=t.create("token","mo",{},n);t.Push(t.itemFactory.create("prime",r,a))},d.Comment=function(t,e){for(;t.it.configuration.options.maxMacros)throw new i.default("MaxMacroSub2","MathJax maximum substitution count exceeded; is there a recursive latex environment?");t.parse("environment",[t,r])},d.Array=function(t,e,r,n,a,o,i,s,l){a||(a=t.GetArgument("\\begin{"+e.getName()+"}"));var c=("c"+a).replace(/[^clr|:]/g,"").replace(/[^|:]([|:])+/g,"$1");a=(a=a.replace(/[^clr]/g,"").split("").join(" ")).replace(/l/g,"left").replace(/r/g,"right").replace(/c/g,"center");var u=t.itemFactory.create("array");return u.arraydef={columnalign:a,columnspacing:o||"1em",rowspacing:i||"4pt"},c.match(/[|:]/)&&(c.charAt(0).match(/[|:]/)&&(u.frame.push("left"),u.dashed=":"===c.charAt(0)),c.charAt(c.length-1).match(/[|:]/)&&u.frame.push("right"),c=c.substr(1,c.length-2),u.arraydef.columnlines=c.split("").join(" ").replace(/[^|: ]/g,"none").replace(/\|/g,"solid").replace(/:/g,"dashed")),r&&u.setProperty("open",t.convertDelimiter(r)),n&&u.setProperty("close",t.convertDelimiter(n)),"D"===s?u.arraydef.displaystyle=!0:s&&(u.arraydef.displaystyle=!1),"S"===s&&(u.arraydef.scriptlevel=1),l&&(u.arraydef.useHeight=!1),t.Push(e),u},d.AlignedArray=function(t,e){var r=t.GetBrackets("\\begin{"+e.getName()+"}"),n=d.Array(t,e);return c.default.setArrayAlign(n,r)},d.Equation=function(t,e,r){return t.Push(e),c.default.checkEqnEnv(t),t.itemFactory.create("equation",r).setProperty("name",e.getName())},d.EqnArray=function(t,e,r,n,a,o){t.Push(e),n&&c.default.checkEqnEnv(t),a=(a=a.replace(/[^clr]/g,"").split("").join(" ")).replace(/l/g,"left").replace(/r/g,"right").replace(/c/g,"center");var i=t.itemFactory.create("eqnarray",e.getName(),r,n,t.stack.global);return i.arraydef={displaystyle:!0,columnalign:a,columnspacing:o||"1em",rowspacing:"3pt",side:t.options.tagSide,minlabelspacing:t.options.tagIndent},i},d.HandleNoTag=function(t,e){t.tags.notag()},d.HandleLabel=function(t,e){var r=t.GetArgument(e);if(""!==r&&!t.tags.refUpdate){if(t.tags.label)throw new i.default("MultipleCommand","Multiple %1",t.currentCS);if(t.tags.label=r,(t.tags.allLabels[r]||t.tags.labels[r])&&!t.options.ignoreDuplicateLabels)throw new i.default("MultipleLabel","Label '%1' multiply defined",r);t.tags.labels[r]=new p.Label}},d.HandleRef=function(t,e,r){var n=t.GetArgument(e),a=t.tags.allLabels[n]||t.tags.labels[n];a||(t.tags.refUpdate||(t.tags.redo=!0),a=new p.Label);var o=a.tag;r&&(o=t.tags.formatTag(o));var i=t.create("node","mrow",c.default.internalMath(t,o),{href:t.tags.formatUrl(a.id,t.options.baseURL),class:"MathJax_ref"});t.Push(i)},d.Macro=function(t,e,r,n,a){if(n){var o=[];if(null!=a){var s=t.GetBrackets(e);o.push(null==s?a:s)}for(var l=o.length;lt.configuration.options.maxMacros)throw new i.default("MaxMacroSub1","MathJax maximum macro substitution count exceeded; is there a recursive macro call?")},d.MathChoice=function(t,e){var r=t.ParseArg(e),n=t.ParseArg(e),a=t.ParseArg(e),o=t.ParseArg(e);t.Push(t.create("node","MathChoice",[r,n,a,o]))},e.default=d},function(t,e,r){"use strict";var n,a=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),o=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.TagsFactory=e.AllTags=e.NoTags=e.AbstractTags=e.TagInfo=e.Label=void 0;var i=r(6),s=function(t,e){void 0===t&&(t="???"),void 0===e&&(e=""),this.tag=t,this.id=e};e.Label=s;var l=function(t,e,r,n,a,o,i,s){void 0===t&&(t=""),void 0===e&&(e=!1),void 0===r&&(r=!1),void 0===n&&(n=null),void 0===a&&(a=""),void 0===o&&(o=""),void 0===i&&(i=!1),void 0===s&&(s=""),this.env=t,this.taggable=e,this.defaultTags=r,this.tag=n,this.tagId=a,this.tagFormat=o,this.noTag=i,this.labelId=s};e.TagInfo=l;var c=function(){function t(){this.counter=0,this.allCounter=0,this.configuration=null,this.ids={},this.allIds={},this.labels={},this.allLabels={},this.redo=!1,this.refUpdate=!1,this.currentTag=new l,this.history=[],this.stack=[],this.enTag=function(t,e){var r=this.configuration.nodeFactory,n=r.create("node","mtd",[t]),a=r.create("node","mlabeledtr",[e,n]);return r.create("node","mtable",[a],{side:this.configuration.options.tagSide,minlabelspacing:this.configuration.options.tagIndent,displaystyle:!0})}}return t.prototype.start=function(t,e,r){this.currentTag&&this.stack.push(this.currentTag),this.currentTag=new l(t,e,r)},Object.defineProperty(t.prototype,"env",{get:function(){return this.currentTag.env},enumerable:!1,configurable:!0}),t.prototype.end=function(){this.history.push(this.currentTag),this.currentTag=this.stack.pop()},t.prototype.tag=function(t,e){this.currentTag.tag=t,this.currentTag.tagFormat=e?t:this.formatTag(t),this.currentTag.noTag=!1},t.prototype.notag=function(){this.tag("",!0),this.currentTag.noTag=!0},Object.defineProperty(t.prototype,"noTag",{get:function(){return this.currentTag.noTag},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"label",{get:function(){return this.currentTag.labelId},set:function(t){this.currentTag.labelId=t},enumerable:!1,configurable:!0}),t.prototype.formatUrl=function(t,e){return e+"#"+encodeURIComponent(t)},t.prototype.formatTag=function(t){return"("+t+")"},t.prototype.formatId=function(t){return"mjx-eqn-"+t.replace(/\s/g,"_")},t.prototype.formatNumber=function(t){return t.toString()},t.prototype.autoTag=function(){null==this.currentTag.tag&&(this.counter++,this.tag(this.formatNumber(this.counter),!1))},t.prototype.clearTag=function(){this.label="",this.tag(null,!0),this.currentTag.tagId=""},t.prototype.getTag=function(t){if(void 0===t&&(t=!1),t)return this.autoTag(),this.makeTag();var e=this.currentTag;return e.taggable&&!e.noTag&&(e.defaultTags&&this.autoTag(),e.tag)?this.makeTag():null},t.prototype.resetTag=function(){this.history=[],this.redo=!1,this.refUpdate=!1,this.clearTag()},t.prototype.reset=function(t){void 0===t&&(t=0),this.resetTag(),this.counter=this.allCounter=t,this.allLabels={},this.allIds={}},t.prototype.startEquation=function(t){this.labels={},this.ids={},this.counter=this.allCounter,this.redo=!1;var e=t.inputData.recompile;e&&(this.refUpdate=!0,this.counter=e.counter)},t.prototype.finishEquation=function(t){this.redo&&(t.inputData.recompile={state:t.state(),counter:this.allCounter}),this.refUpdate||(this.allCounter=this.counter),Object.assign(this.allIds,this.ids),Object.assign(this.allLabels,this.labels)},t.prototype.finalize=function(t,e){if(!e.display||this.currentTag.env||null==this.currentTag.tag)return t;var r=this.makeTag();return this.enTag(t,r)},t.prototype.makeId=function(){this.currentTag.tagId=this.formatId(this.configuration.options.useLabelIds&&this.label||this.currentTag.tag)},t.prototype.makeTag=function(){this.makeId(),this.label&&(this.labels[this.label]=new s(this.currentTag.tag,this.currentTag.tagId));var t=new i.default("\\text{"+this.currentTag.tagFormat+"}",{},this.configuration).mml();return this.configuration.nodeFactory.create("node","mtd",[t],{id:this.currentTag.tagId})},t}();e.AbstractTags=c;var u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a(e,t),e.prototype.autoTag=function(){},e.prototype.getTag=function(){return this.currentTag.tag?t.prototype.getTag.call(this):null},e}(c);e.NoTags=u;var p=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a(e,t),e.prototype.finalize=function(t,e){if(!e.display||this.history.find((function(t){return t.taggable})))return t;var r=this.getTag(!0);return this.enTag(t,r)},e}(c);e.AllTags=p,function(t){var e=new Map([["none",u],["all",p]]),r="none";t.OPTIONS={tags:r,tagSide:"right",tagIndent:"0.8em",multlineWidth:"85%",useLabelIds:!0,ignoreDuplicateLabels:!1},t.add=function(t,r){e.set(t,r)},t.addTags=function(e){var r,n;try{for(var a=o(Object.keys(e)),i=a.next();!i.done;i=a.next()){var s=i.value;t.add(s,e[s])}}catch(t){r={error:t}}finally{try{i&&!i.done&&(n=a.return)&&n.call(a)}finally{if(r)throw r.error}}},t.create=function(t){var n=e.get(t)||e.get(r);if(!n)throw Error("Unknown tags class");return new n},t.setDefault=function(t){r=t},t.getDefault=function(){return t.create(r)}}(e.TagsFactory||(e.TagsFactory={}))},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.APPEND=MathJax._.util.Options.APPEND,e.REMOVE=MathJax._.util.Options.REMOVE,e.Expandable=MathJax._.util.Options.Expandable,e.expandable=MathJax._.util.Options.expandable,e.makeArray=MathJax._.util.Options.makeArray,e.keys=MathJax._.util.Options.keys,e.copy=MathJax._.util.Options.copy,e.insert=MathJax._.util.Options.insert,e.defaultOptions=MathJax._.util.Options.defaultOptions,e.userOptions=MathJax._.util.Options.userOptions,e.selectOptions=MathJax._.util.Options.selectOptions,e.selectOptionsFromKeys=MathJax._.util.Options.selectOptionsFromKeys,e.separateOptions=MathJax._.util.Options.separateOptions},function(t,e,r){"use strict";var n,a=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),o=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,a,o=r.call(t),i=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)i.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(a)throw a.error}}return i},i=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.BaseItem=e.MmlStack=void 0;var l=r(2),c=function(){function t(t){this._nodes=t}return Object.defineProperty(t.prototype,"nodes",{get:function(){return this._nodes},enumerable:!1,configurable:!0}),t.prototype.Push=function(){for(var t,e=[],r=0;r0)&&!(n=o.next()).done;)i.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(a)throw a.error}}return i},a=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(n=o.next()).done;)i.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(a)throw a.error}}return i},i=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,a,o=r.call(t),i=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)i.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(a)throw a.error}}return i};Object.defineProperty(e,"__esModule",{value:!0}),e.SubHandlers=e.SubHandler=e.MapHandler=void 0;var o,i=r(72),s=r(73);!function(t){var e=new Map;t.register=function(t){e.set(t.name,t)},t.getMap=function(t){return e.get(t)}}(o=e.MapHandler||(e.MapHandler={}));var l=function(){function t(){this._configuration=new i.PrioritizedList,this._fallback=new s.FunctionList}return t.prototype.add=function(t,e,r){var a,s;void 0===r&&(r=i.PrioritizedList.DEFAULTPRIORITY);try{for(var l=n(t.slice().reverse()),c=l.next();!c.done;c=l.next()){var u=c.value,p=o.getMap(u);if(!p)return void this.warn("Configuration "+u+" not found! Omitted.");this._configuration.add(p,r)}}catch(t){a={error:t}}finally{try{c&&!c.done&&(s=l.return)&&s.call(l)}finally{if(a)throw a.error}}e&&this._fallback.add(e,r)},t.prototype.parse=function(t){var e,r;try{for(var o=n(this._configuration),i=o.next();!i.done;i=o.next()){var s=i.value.item.parse(t);if(s)return s}}catch(t){e={error:t}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(e)throw e.error}}var l=a(t,2),c=l[0],u=l[1];this._fallback.toArray()[0].item(c,u)},t.prototype.lookup=function(t){var e=this.applicable(t);return e?e.lookup(t):null},t.prototype.contains=function(t){return!!this.applicable(t)},t.prototype.toString=function(){var t,e,r=[];try{for(var a=n(this._configuration),o=a.next();!o.done;o=a.next()){var i=o.value.item;r.push(i.name)}}catch(e){t={error:e}}finally{try{o&&!o.done&&(e=a.return)&&e.call(a)}finally{if(t)throw t.error}}return r.join(", ")},t.prototype.applicable=function(t){var e,r;try{for(var a=n(this._configuration),o=a.next();!o.done;o=a.next()){var i=o.value.item;if(i.contains(t))return i}}catch(t){e={error:t}}finally{try{o&&!o.done&&(r=a.return)&&r.call(a)}finally{if(e)throw e.error}}return null},t.prototype.retrieve=function(t){var e,r;try{for(var a=n(this._configuration),o=a.next();!o.done;o=a.next()){var i=o.value.item;if(i.name===t)return i}}catch(t){e={error:t}}finally{try{o&&!o.done&&(r=a.return)&&r.call(a)}finally{if(e)throw e.error}}return null},t.prototype.warn=function(t){console.log("TexParser Warning: "+t)},t}();e.SubHandler=l;var c=function(){function t(){this.map=new Map}return t.prototype.add=function(t,e,r){var a,o;void 0===r&&(r=i.PrioritizedList.DEFAULTPRIORITY);try{for(var s=n(Object.keys(t)),c=s.next();!c.done;c=s.next()){var u=c.value,p=this.get(u);p||(p=new l,this.set(u,p)),p.add(t[u],e[u],r)}}catch(t){a={error:t}}finally{try{c&&!c.done&&(o=s.return)&&o.call(s)}finally{if(a)throw a.error}}},t.prototype.set=function(t,e){this.map.set(t,e)},t.prototype.get=function(t){return this.map.get(t)},t.prototype.retrieve=function(t){var e,r;try{for(var a=n(this.map.values()),o=a.next();!o.done;o=a.next()){var i=o.value.retrieve(t);if(i)return i}}catch(t){e={error:t}}finally{try{o&&!o.done&&(r=a.return)&&r.call(a)}finally{if(e)throw e.error}}return null},t.prototype.keys=function(){return this.map.keys()},t}();e.SubHandlers=c},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.NEW_OPS=e.AmsMethods=void 0;var n=r(4),a=r(3),o=r(7),i=r(6),s=r(2),l=r(14),c=r(8),u=r(5);e.AmsMethods={},e.AmsMethods.AmsEqnArray=function(t,e,r,a,o,i,s){var l=t.GetBrackets("\\begin{"+e.getName()+"}"),u=c.default.EqnArray(t,e,r,a,o,i,s);return n.default.setArrayAlign(u,l)},e.AmsMethods.AlignAt=function(t,r,a,o){var i,l,c=r.getName(),u="",p=[];if(o||(l=t.GetBrackets("\\begin{"+c+"}")),(i=t.GetArgument("\\begin{"+c+"}")).match(/[^0-9]/))throw new s.default("PositiveIntegerArg","Argument to %1 must me a positive integer","\\begin{"+c+"}");for(var f=parseInt(i,10);f>0;)u+="rl",p.push("0em 0em"),f--;var d=p.join(" ");if(o)return e.AmsMethods.EqnArray(t,r,a,o,u,d);var h=e.AmsMethods.EqnArray(t,r,a,o,u,d);return n.default.setArrayAlign(h,l)},e.AmsMethods.Multline=function(t,e,r){t.Push(e),n.default.checkEqnEnv(t);var a=t.itemFactory.create("multline",r,t.stack);return a.arraydef={displaystyle:!0,rowspacing:".5em",columnwidth:"100%",width:t.options.multlineWidth,side:t.options.tagSide,minlabelspacing:t.options.tagIndent},a},e.NEW_OPS="ams-declare-ops",e.AmsMethods.HandleDeclareOp=function(t,r){var a=t.GetStar()?"":"\\nolimits\\SkipLimits",o=n.default.trimSpaces(t.GetArgument(r));"\\"===o.charAt(0)&&(o=o.substr(1));var i=t.GetArgument(r);i.match(/\\text/)||(i=i.replace(/\*/g,"\\text{*}").replace(/-/g,"\\text{-}")),t.configuration.handlers.retrieve(e.NEW_OPS).add(o,new l.Macro(o,e.AmsMethods.Macro,["\\mathop{\\rm "+i+"}"+a]))},e.AmsMethods.HandleOperatorName=function(t,e){var r=t.GetStar()?"":"\\nolimits\\SkipLimits",a=n.default.trimSpaces(t.GetArgument(e));a.match(/\\text/)||(a=a.replace(/\*/g,"\\text{*}").replace(/-/g,"\\text{-}")),t.string="\\mathop{\\rm "+a+"}"+r+" "+t.string.slice(t.i),t.i=0},e.AmsMethods.SkipLimits=function(t,e){var r=t.GetNext(),n=t.i;"\\"===r&&++t.i&&"limits"!==t.GetCS()&&(t.i=n)},e.AmsMethods.MultiIntegral=function(t,e,r){var n=t.GetNext();if("\\"===n){var a=t.i;n=t.GetArgument(e),t.i=a,"\\limits"===n&&(r="\\idotsint"===e?"\\!\\!\\mathop{\\,\\,"+r+"}":"\\!\\!\\!\\mathop{\\,\\,\\,"+r+"}")}t.string=r+" "+t.string.slice(t.i),t.i=0},e.AmsMethods.xArrow=function(t,e,r,o,s){var l={width:"+"+n.default.Em((o+s)/18),lspace:n.default.Em(o/18)},c=t.GetBrackets(e),p=t.ParseArg(e),f=t.create("token","mo",{stretchy:!0,texClass:u.TEXCLASS.REL},String.fromCodePoint(r)),d=t.create("node","munderover",[f]),h=t.create("node","mpadded",[p],l);if(a.default.setAttribute(h,"voffset",".15em"),a.default.setChild(d,d.over,h),c){var m=new i.default(c,t.stack.env,t.configuration).mml();h=t.create("node","mpadded",[m],l),a.default.setAttribute(h,"voffset","-.24em"),a.default.setChild(d,d.under,h)}a.default.setProperty(d,"subsupOK",!0),t.Push(d)},e.AmsMethods.HandleShove=function(t,e,r){var n=t.stack.Top();if("multline"!==n.kind)throw new s.default("CommandOnlyAllowedInEnv","%1 only allowed in %2 environment",t.currentCS,"multline");if(n.Size())throw new s.default("CommandAtTheBeginingOfLine","%1 must come at the beginning of the line",t.currentCS);n.setProperty("shove",r)},e.AmsMethods.CFrac=function(t,e){var r=n.default.trimSpaces(t.GetBrackets(e,"")),l=t.GetArgument(e),c=t.GetArgument(e),u={l:o.TexConstant.Align.LEFT,r:o.TexConstant.Align.RIGHT,"":""},p=new i.default("\\strut\\textstyle{"+l+"}",t.stack.env,t.configuration).mml(),f=new i.default("\\strut\\textstyle{"+c+"}",t.stack.env,t.configuration).mml(),d=t.create("node","mfrac",[p,f]);if(null==(r=u[r]))throw new s.default("IllegalAlign","Illegal alignment specified in %1",t.currentCS);r&&a.default.setProperties(d,{numalign:r,denomalign:r}),t.Push(d)},e.AmsMethods.Genfrac=function(t,e,r,o,i,l){null==r&&(r=t.GetDelimiterArg(e)),null==o&&(o=t.GetDelimiterArg(e)),null==i&&(i=t.GetArgument(e)),null==l&&(l=n.default.trimSpaces(t.GetArgument(e)));var c=t.ParseArg(e),u=t.ParseArg(e),p=t.create("node","mfrac",[c,u]);if(""!==i&&a.default.setAttribute(p,"linethickness",i),(r||o)&&(a.default.setProperty(p,"withDelims",!0),p=n.default.fixedFence(t.configuration,r,p,o)),""!==l){var f=parseInt(l,10),d=["D","T","S","SS"][f];if(null==d)throw new s.default("BadMathStyleFor","Bad math style for %1",t.currentCS);p=t.create("node","mstyle",[p]),"D"===d?a.default.setProperties(p,{displaystyle:!0,scriptlevel:0}):a.default.setProperties(p,{displaystyle:!1,scriptlevel:f-1})}t.Push(p)},e.AmsMethods.HandleTag=function(t,e){if(!t.tags.currentTag.taggable&&t.tags.env)throw new s.default("CommandNotAllowedInEnv","%1 not allowed in %2 environment",t.currentCS,t.tags.env);if(t.tags.currentTag.tag)throw new s.default("MultipleCommand","Multiple %1",t.currentCS);var r=t.GetStar(),a=n.default.trimSpaces(t.GetArgument(e));t.tags.tag(a,r)},e.AmsMethods.HandleNoTag=c.default.HandleNoTag,e.AmsMethods.HandleRef=c.default.HandleRef,e.AmsMethods.Macro=c.default.Macro,e.AmsMethods.Accent=c.default.Accent,e.AmsMethods.Tilde=c.default.Tilde,e.AmsMethods.Array=c.default.Array,e.AmsMethods.Spacer=c.default.Spacer,e.AmsMethods.NamedOp=c.default.NamedOp,e.AmsMethods.EqnArray=c.default.EqnArray},function(t,e,r){"use strict";var n=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,a,o=r.call(t),i=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)i.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(a)throw a.error}}return i},a=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(n=o.next()).done;)i.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(a)throw a.error}}return i},o=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.clearDocument=e.saveDocument=e.makeBsprAttributes=e.removeProperty=e.getProperty=e.setProperty=e.balanceRules=void 0;var i=r(3),s=r(4),l=null,c=null,u=function(t){return c.root=t,l.outputJax.getBBox(c,l).w},p=function(t){for(var e=0;t&&!i.default.isType(t,"mtable");){if(i.default.isType(t,"text"))return null;i.default.isType(t,"mrow")?(t=t.childNodes[0],e=0):(t=t.parent.childNodes[e],e++)}return t},f=function(t,e){return t.childNodes["up"===e?1:0].childNodes[0].childNodes[0].childNodes[0].childNodes[0]},d=function(t,e){return t.childNodes[e].childNodes[0].childNodes[0]},h=function(t){return d(t,0)},m=function(t){return d(t,t.childNodes.length-1)},g=function(t,e){return t.childNodes["up"===e?0:1].childNodes[0].childNodes[0].childNodes[0]},v=function(t){for(;t&&!i.default.isType(t,"mtd");)t=t.parent;return t},y=function(t){return t.parent.childNodes[t.parent.childNodes.indexOf(t)+1]},b=function(t){for(;t&&null==e.getProperty(t,"inference");)t=t.parent;return t},x=function(t,e,r){void 0===r&&(r=!1);var n=0;if(t===e)return n;if(t!==e.parent){var a=t.childNodes,o=r?a.length-1:0;i.default.isType(a[o],"mspace")&&(n+=u(a[o])),t=e.parent}if(t===e)return n;var s=t.childNodes,l=r?s.length-1:0;return s[l]!==e&&(n+=u(s[l])),n},A=function(t,r){void 0===r&&(r=!1);var n=p(t),a=g(n,e.getProperty(n,"inferenceRule"));return x(t,n,r)+(u(n)-u(a))/2},M=function(t,r,n,a){if(void 0===a&&(a=!1),e.getProperty(r,"inferenceRule")||e.getProperty(r,"labelledRule")){var o=t.nodeFactory.create("node","mrow");r.parent.replaceChild(o,r),o.setChildren([r]),_(r,o),r=o}var l=a?r.childNodes.length-1:0,c=r.childNodes[l];i.default.isType(c,"mspace")?i.default.setAttribute(c,"width",s.default.Em(s.default.dimen2em(i.default.getAttribute(c,"width"))+n)):(c=t.nodeFactory.create("node","mspace",[],{width:s.default.Em(n)}),a?r.appendChild(c):(c.parent=r,r.childNodes.unshift(c)))},_=function(t,r){["inference","proof","maxAdjust","labelledRule"].forEach((function(n){var a=e.getProperty(t,n);null!=a&&(e.setProperty(r,n,a),e.removeProperty(t,n))}))},C=function(t,r,n,a,o){var i=t.nodeFactory.create("node","mspace",[],{width:s.default.Em(o)});if("left"===a){var l=r.childNodes[n].childNodes[0];i.parent=l,l.childNodes.unshift(i)}else r.childNodes[n].appendChild(i);e.setProperty(r.parent,"sequentAdjust_"+a,o)},P=function(t,r){for(var n=r.pop();r.length;){var o=r.pop(),i=a(w(n,o),2),s=i[0],l=i[1];e.getProperty(n.parent,"axiom")&&(C(t,s<0?n:o,0,"left",Math.abs(s)),C(t,l<0?n:o,2,"right",Math.abs(l))),n=o}},w=function(t,e){var r=u(t.childNodes[2]),n=u(e.childNodes[2]);return[u(t.childNodes[0])-u(e.childNodes[0]),r-n]};e.balanceRules=function(t){var r,n;c=new t.document.options.MathItem("",null,t.math.display);var a=t.data;!function(t){var r=t.nodeLists.sequent;if(r)for(var n=r.length-1,a=void 0;a=r[n];n--)if(e.getProperty(a,"sequentProcessed"))e.removeProperty(a,"sequentProcessed");else{var o=[],i=b(a);if(1===e.getProperty(i,"inference")){for(o.push(a);1===e.getProperty(i,"inference");){i=p(i);var s=h(f(i,e.getProperty(i,"inferenceRule"))),l=e.getProperty(s,"inferenceRule")?g(s,e.getProperty(s,"inferenceRule")):s;e.getProperty(l,"sequent")&&(a=l.childNodes[0],o.push(a),e.setProperty(a,"sequentProcessed",!0)),i=s}P(t,o)}}}(a);var i=a.nodeLists.inference||[];try{for(var s=o(i),l=s.next();!l.done;l=s.next()){var u=l.value,d=e.getProperty(u,"proof"),_=p(u),C=f(_,e.getProperty(_,"inferenceRule")),w=h(C);if(e.getProperty(w,"inference")){var S=A(w);if(S){M(a,w,-S);var T=x(u,_,!1);M(a,u,S-T)}}var k=m(C);if(null!=e.getProperty(k,"inference")){var O=A(k,!0);M(a,k,-O,!0);var E=x(u,_,!0),I=e.getProperty(u,"maxAdjust");null!=I&&(O=Math.max(O,I));var N=void 0;if(!d&&(N=v(u))){var q=y(N);if(q){var L=a.nodeFactory.create("node","mspace",[],{width:O-E+"em"});q.appendChild(L),u.removeProperty("maxAdjust")}else{var F=b(N);F&&(O=e.getProperty(F,"maxAdjust")?Math.max(e.getProperty(F,"maxAdjust"),O):O,e.setProperty(F,"maxAdjust",O))}}else M(a,e.getProperty(u,"proof")?u:u.parent,O-E,!0)}}}catch(t){r={error:t}}finally{try{l&&!l.done&&(n=s.return)&&n.call(s)}finally{if(r)throw r.error}}};var S=((n={}).bspr_maxAdjust=!0,n);e.setProperty=function(t,e,r){i.default.setProperty(t,"bspr_"+e,r)},e.getProperty=function(t,e){return i.default.getProperty(t,"bspr_"+e)},e.removeProperty=function(t,e){t.removeProperty("bspr_"+e)},e.makeBsprAttributes=function(t){t.data.root.walkTree((function(t,e){var r=[];t.getPropertyNames().forEach((function(e){!S[e]&&e.match(RegExp("^bspr_"))&&r.push(e+":"+t.getProperty(e))})),r.length&&i.default.setAttribute(t,"semantics",r.join(";"))}))},e.saveDocument=function(t){if(!("getBBox"in(l=t.document).outputJax))throw Error("The bussproofs extension requires an output jax with a getBBox() method")},e.clearDocument=function(t){l=null}},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n,a=r(4),o=r(2),i=r(14);!function(t){function e(t,e){return t.string.substr(t.i,e.length)!==e||e.match(/\\[a-z]+$/i)&&t.string.charAt(t.i+e.length).match(/[a-z]/i)?0:(t.i+=e.length,1)}t.disassembleSymbol=function(t,e){var r=[t,e.char];if(e.attributes)for(var n in e.attributes)r.push(n),r.push(e.attributes[n]);return r},t.assembleSymbol=function(t){for(var e=t[0],r=t[1],n={},a=2;a0?[i.toString()].concat(a):i;t.i++}throw new o.default("MissingReplacementString","Missing replacement string for definition of %1",e)},t.GetParameter=function(t,r,n){if(null==n)return t.GetArgument(r);for(var a=t.i,i=0,s=0;t.i=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,a,o=r.call(t),i=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)i.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(a)throw a.error}}return i},o=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(n=o.next()).done;)i.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(a)throw a.error}}return i},a=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0});var i=r(34),s=r(18),l=r(10),c=function(){function t(t,e){void 0===e&&(e=[]),this.options={},this.packageData=new Map,this.parsers=[],this.root=null,this.nodeLists={},this.error=!1,this.handlers=t.handlers,this.nodeFactory=new s.NodeFactory,this.nodeFactory.configuration=this,this.nodeFactory.setCreators(t.nodes),this.itemFactory=new i.default(t.items),this.itemFactory.configuration=this,l.defaultOptions.apply(void 0,a([this.options],e)),l.defaultOptions(this.options,t.options)}return t.prototype.pushParser=function(t){this.parsers.unshift(t)},t.prototype.popParser=function(){this.parsers.shift()},Object.defineProperty(t.prototype,"parser",{get:function(){return this.parsers[0]},enumerable:!1,configurable:!0}),t.prototype.clear=function(){this.parsers=[],this.root=null,this.nodeLists={},this.error=!1,this.tags.resetTag()},t.prototype.addNode=function(t,e){var r=this.nodeLists[t];r||(r=this.nodeLists[t]=[]),r.push(e)},t.prototype.getList=function(t){var e,r,n=this.nodeLists[t]||[],a=[];try{for(var i=o(n),s=i.next();!s.done;s=i.next()){var l=s.value;this.inTree(l)&&a.push(l)}}catch(t){e={error:t}}finally{try{s&&!s.done&&(r=i.return)&&r.call(i)}finally{if(e)throw e.error}}return this.nodeLists[t]=a,a},t.prototype.inTree=function(t){for(;t&&t!==this.root;)t=t.parent;return!!t},t}();e.default=c},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.EncloseConfiguration=e.EncloseMethods=e.ENCLOSE_OPTIONS=void 0;var n=r(0),a=r(1),o=r(4);e.ENCLOSE_OPTIONS={"data-arrowhead":1,color:1,mathcolor:1,background:1,mathbackground:1,"data-padding":1,"data-thickness":1},e.EncloseMethods={},e.EncloseMethods.Enclose=function(t,r){var n=t.GetArgument(r).replace(/,/g," "),a=t.GetBrackets(r,""),i=t.ParseArg(r),s=o.default.keyvalOptions(a,e.ENCLOSE_OPTIONS);s.notation=n,t.Push(t.create("node","menclose",[i],s))},new a.CommandMap("enclose",{enclose:"Enclose"},e.EncloseMethods),e.EncloseConfiguration=n.Configuration.create("enclose",{handler:{macro:["enclose"]}})},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=r(2),a=r(1),o=r(8),i=r(4),s=r(21),l={NewCommand:function(t,e){var r=i.default.trimSpaces(t.GetArgument(e)),a=t.GetBrackets(e),o=t.GetBrackets(e),c=t.GetArgument(e);if("\\"===r.charAt(0)&&(r=r.substr(1)),!r.match(/^(.|[a-z]+)$/i))throw new n.default("IllegalControlSequenceName","Illegal control sequence name for %1",e);if(a&&!(a=i.default.trimSpaces(a)).match(/^[0-9]+$/))throw new n.default("IllegalParamNumber","Illegal number of parameters specified in %1",e);s.default.addMacro(t,r,l.Macro,[c,a,o])},NewEnvironment:function(t,e){var r=i.default.trimSpaces(t.GetArgument(e)),a=t.GetBrackets(e),o=t.GetBrackets(e),c=t.GetArgument(e),u=t.GetArgument(e);if(a&&!(a=i.default.trimSpaces(a)).match(/^[0-9]+$/))throw new n.default("IllegalParamNumber","Illegal number of parameters specified in %1",e);s.default.addEnvironment(t,r,l.BeginEnv,[!0,c,u,a,o])},MacroDef:function(t,e){var r=s.default.GetCSname(t,e),n=s.default.GetTemplate(t,e,"\\"+r),a=t.GetArgument(e);n instanceof Array?s.default.addMacro(t,r,l.MacroWithTemplate,[a].concat(n)):s.default.addMacro(t,r,l.Macro,[a,n])},Let:function(t,e){var r=s.default.GetCSname(t,e),n=t.GetNext();"="===n&&(t.i++,n=t.GetNext());var o=t.configuration.handlers;if("\\"!==n){t.i++;var i=o.get("delimiter").lookup(n);i?s.default.addDelimiter(t,"\\"+r,i.char,i.attributes):s.default.addMacro(t,r,l.Macro,[n])}else{e=s.default.GetCSname(t,e);var c=o.get("delimiter").lookup("\\"+e);if(c)return void s.default.addDelimiter(t,"\\"+r,c.char,c.attributes);var u=o.get("macro").applicable(e);if(!u)return;if(u instanceof a.MacroMap){var p=u.lookup(e);return void s.default.addMacro(t,r,p.func,p.args,p.symbol)}c=u.lookup(e);var f=s.default.disassembleSymbol(r,c);s.default.addMacro(t,r,(function(t,e){for(var r=[],n=2;nt.configuration.options.maxMacros)throw new n.default("MaxMacroSub1","MathJax maximum macro substitution count exceeded; is here a recursive macro call?")},BeginEnv:function(t,e,r,n,a,o){if(e.getProperty("end")&&t.stack.env.closing===e.getName()){delete t.stack.env.closing;var s=t.string.slice(t.i);return t.string=n,t.i=0,t.Parse(),t.string=s,t.i=0,t.itemFactory.create("end").setProperty("name",e.getName())}if(a){var l=[];if(null!=o){var c=t.GetBrackets("\\begin{"+e.getName()+"}");l.push(null==c?o:c)}for(var u=l.length;u=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,a,o=r.call(t),i=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)i.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(a)throw a.error}}return i},o=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(n=o.next()).done;)i.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(a)throw a.error}}return i};Object.defineProperty(e,"__esModule",{value:!0}),e.TeX=void 0;var s=r(76),l=r(10),c=r(32),u=r(33),p=r(3),f=r(6),d=r(2),h=r(24),m=r(9),g=r(0);r(19);var v=function(t){function e(r){void 0===r&&(r={});var n=this,a=i(l.separateOptions(r,e.OPTIONS,c.FindTeX.OPTIONS),3),o=a[0],s=a[1],p=a[2];(n=t.call(this,s)||this).findTeX=n.options.FindTeX||new c.FindTeX(p);var f=n.options.packages,d=n.configuration=e.configure(f),g=n._parseOptions=new h.default(d,[n.options,m.TagsFactory.OPTIONS]);return l.userOptions(g.options,o),d.config(n),e.tags(g,d),n.postFilters.add(u.default.cleanSubSup,-6),n.postFilters.add(u.default.setInherited,-5),n.postFilters.add(u.default.moveLimits,-4),n.postFilters.add(u.default.cleanStretchy,-3),n.postFilters.add(u.default.cleanAttributes,-2),n.postFilters.add(u.default.combineRelations,-1),n}return a(e,t),e.configure=function(t){var e=new g.ParserConfiguration(t);return e.init(),e},e.tags=function(t,e){m.TagsFactory.addTags(e.tags),m.TagsFactory.setDefault(t.options.tags),t.tags=m.TagsFactory.getDefault(),t.tags.configuration=t},e.prototype.setMmlFactory=function(e){t.prototype.setMmlFactory.call(this,e),this._parseOptions.nodeFactory.setMmlFactory(e)},Object.defineProperty(e.prototype,"parseOptions",{get:function(){return this._parseOptions},enumerable:!1,configurable:!0}),e.prototype.compile=function(t,e){this.parseOptions.clear(),this.executeFilters(this.preFilters,t,e,this.parseOptions);var r,n=t.display;this.latex=t.math,this.parseOptions.tags.startEquation(t);try{r=new f.default(this.latex,{display:n,isInner:!1},this.parseOptions).mml()}catch(t){if(!(t instanceof d.default))throw t;this.parseOptions.error=!0,r=this.options.formatError(this,t)}return r=this.parseOptions.nodeFactory.create("node","math",[r]),n&&p.default.setAttribute(r,"display","block"),this.parseOptions.tags.finishEquation(t),this.parseOptions.root=r,this.executeFilters(this.postFilters,t,e,this.parseOptions),this.mathNode=this.parseOptions.root,this.mathNode},e.prototype.findMath=function(t){return this.findTeX.findMath(t)},e.prototype.formatError=function(t){var e=t.message.replace(/\n.*/,"");return this.parseOptions.nodeFactory.create("error",e,t.id,this.latex)},e.NAME="TeX",e.OPTIONS=o(o({},s.AbstractInputJax.OPTIONS),{FindTeX:null,packages:["base"],digits:/^(?:[0-9]+(?:\{,\}[0-9]{3})*(?:\.[0-9]*)?|\.[0-9]+)/,maxBuffer:5120,formatError:function(t,e){return t.formatError(e)}}),e}(s.AbstractInputJax);e.TeX=v},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AllPackages=void 0,r(19),r(35),r(36),r(38),r(40),r(41),r(42),r(45),r(48),r(49),r(53),r(54),r(25),r(55),r(57),r(59),r(27),r(60),r(61),r(62),r(65),r(66),r(68),r(69),"undefined"!=typeof MathJax&&MathJax.loader&&MathJax.loader.preLoad("[tex]/action","[tex]/ams","[tex]/amscd","[tex]/bbox","[tex]/boldsymbol","[tex]/braket","[tex]/bussproofs","[tex]/cancel","[tex]/color","[tex]/colorv2","[tex]/enclose","[tex]/extpfeil","[tex]/html","[tex]/mhchem","[tex]/newcommand","[tex]/noerrors","[tex]/noundefined","[tex]/physics","[tex]/unicode","[tex]/verb","[tex]/configmacros","[tex]/tagformat","[tex]/textmacros"),e.AllPackages=["base","action","ams","amscd","bbox","boldsymbol","braket","bussproofs","cancel","color","enclose","extpfeil","html","mhchem","newcommand","noerrors","noundefined","unicode","verb","configmacros","tagformat","textmacros"]},function(t,e,r){"use strict";var n,a=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),o=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,a,o=r.call(t),i=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)i.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(a)throw a.error}}return i};Object.defineProperty(e,"__esModule",{value:!0}),e.FindTeX=void 0;var i=r(77),s=r(78),l=r(79),c=function(t){function e(e){var r=t.call(this,e)||this;return r.getPatterns(),r}return a(e,t),e.prototype.getPatterns=function(){var t=this,e=this.options,r=[],n=[],a=[];this.end={},this.env=this.sub=0;var o=1;e.inlineMath.forEach((function(e){return t.addPattern(r,e,!1)})),e.displayMath.forEach((function(e){return t.addPattern(r,e,!0)})),r.length&&n.push(r.sort(s.sortLength).join("|")),e.processEnvironments&&(n.push("\\\\begin\\s*\\{([^}]*)\\}"),this.env=o,o++),e.processEscapes&&a.push("\\\\([\\\\$])"),e.processRefs&&a.push("(\\\\(?:eq)?ref\\s*\\{[^}]*\\})"),a.length&&(n.push("("+a.join("|")+")"),this.sub=o),this.start=new RegExp(n.join("|"),"g"),this.hasPatterns=n.length>0},e.prototype.addPattern=function(t,e,r){var n=o(e,2),a=n[0],i=n[1];t.push(s.quotePattern(a)),this.end[a]=[i,r,this.endPattern(i)]},e.prototype.endPattern=function(t,e){return new RegExp((e||s.quotePattern(t))+"|\\\\(?:[a-zA-Z]|.)|[{}]","g")},e.prototype.findEnd=function(t,e,r,n){for(var a,i=o(n,3),s=i[0],c=i[1],u=i[2],p=u.lastIndex=r.index+r[0].length,f=0;a=u.exec(t);){if((a[1]||a[0])===s&&0===f)return l.protoItem(r[0],t.substr(p,a.index-p),a[0],e,r.index,a.index+a[0].length,c);"{"===a[0]?f++:"}"===a[0]&&f&&f--}return null},e.prototype.findMathInString=function(t,e,r){var n,a;for(this.start.lastIndex=0;n=this.start.exec(r);){if(void 0!==n[this.env]&&this.env){var o="\\\\end\\s*(\\{"+s.quotePattern(n[this.env])+"\\})";(a=this.findEnd(r,e,n,["{"+n[this.env]+"}",!0,this.endPattern(null,o)]))&&(a.math=a.open+a.math+a.close,a.open=a.close="")}else if(void 0!==n[this.sub]&&this.sub){var i=n[this.sub];o=n.index+n[this.sub].length;a=2===i.length?l.protoItem("",i.substr(1),"",e,n.index,o):l.protoItem("",i,"",e,n.index,o,!1)}else a=this.findEnd(r,e,n,this.end[n[0]]);a&&(t.push(a),this.start.lastIndex=a.end.n)}},e.prototype.findMath=function(t){var e=[];if(this.hasPatterns)for(var r=0,n=t.length;r=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0});var a,o=r(5),i=r(3);!function(t){t.cleanStretchy=function(t){var e,r,a=t.data;try{for(var o=n(a.getList("fixStretchy")),s=o.next();!s.done;s=o.next()){var l=s.value;if(i.default.getProperty(l,"fixStretchy")){var c=i.default.getForm(l);c&&c[3]&&c[3].stretchy&&i.default.setAttribute(l,"stretchy",!1);var u=l.parent;if(!(i.default.getTexClass(l)||c&&c[2])){var p=a.nodeFactory.create("node","TeXAtom",[l]);u.replaceChild(p,l),p.inheritAttributesFrom(l)}i.default.removeProperties(l,"fixStretchy")}}}catch(t){e={error:t}}finally{try{s&&!s.done&&(r=o.return)&&r.call(o)}finally{if(e)throw e.error}}},t.cleanAttributes=function(t){t.data.root.walkTree((function(t,e){var r,a,o=t.attributes;if(o)try{for(var i=n(o.getExplicitNames()),s=i.next();!s.done;s=i.next()){var l=s.value;o.attributes[l]===t.attributes.getInherited(l)&&delete o.attributes[l]}}catch(t){r={error:t}}finally{try{s&&!s.done&&(a=i.return)&&a.call(i)}finally{if(r)throw r.error}}}),{})},t.combineRelations=function(t){var a,s;try{for(var l=n(t.data.getList("mo")),c=l.next();!c.done;c=l.next()){var u=c.value;if(!u.getProperty("relationsCombined")&&u.parent&&(!u.parent||i.default.isType(u.parent,"mrow"))&&i.default.getTexClass(u)===o.TEXCLASS.REL){for(var p=u.parent,f=void 0,d=p.childNodes,h=d.indexOf(u)+1,m=i.default.getProperty(u,"variantForm");h":"\u2192","<":"\u2190",V:"\u2193",A:"\u2191"}[r],g=t.GetUpTo(e+r,r),v=t.GetUpTo(e+r,r);if(">"===r||"<"===r){if(c=t.create("token","mo",d,m),g||(g="\\kern "+u.getProperty("minw")),g||v){var y={width:".67em",lspace:".33em"};if(c=t.create("node","munderover",[c]),g){var b=new n.default(g,t.stack.env,t.configuration).mml(),x=t.create("node","mpadded",[b],y);i.default.setAttribute(x,"voffset",".1em"),i.default.setChild(c,c.over,x)}if(v){var A=new n.default(v,t.stack.env,t.configuration).mml();i.default.setChild(c,c.under,t.create("node","mpadded",[A],y))}t.configuration.options.amscd.hideHorizontalLabels&&(c=t.create("node","mpadded",c,{depth:0,height:".67em"}))}}else{var M=t.create("token","mo",h,m);c=M,(g||v)&&(c=t.create("node","mrow"),g&&i.default.appendChildren(c,[new n.default("\\scriptstyle\\llap{"+g+"}",t.stack.env,t.configuration).mml()]),M.texClass=o.TEXCLASS.ORD,i.default.appendChildren(c,[M]),v&&i.default.appendChildren(c,[new n.default("\\scriptstyle\\rlap{"+v+"}",t.stack.env,t.configuration).mml()]))}}c&&t.Push(c),s.cell(t,e)},cell:function(t,e){var r=t.stack.Top();(r.table||[]).length%2==0&&0===(r.row||[]).length&&t.Push(t.create("node","mpadded",[],{height:"8.5pt",depth:"2pt"})),t.Push(t.itemFactory.create("cell").setProperties({isEntry:!0,name:e}))},minCDarrowwidth:function(t,e){t.stack.env.CD_minw=t.GetDimen(e)},minCDarrowheight:function(t,e){t.stack.env.CD_minh=t.GetDimen(e)}};e.default=s},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.BboxConfiguration=e.BboxMethods=void 0;var n=r(0),a=r(1),o=r(2);e.BboxMethods={},e.BboxMethods.BBox=function(t,e){for(var r,n,a,l=t.GetBrackets(e,""),c=t.ParseArg(e),u=l.split(/,/),p=0,f=u.length;p=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.BoldsymbolConfiguration=e.rewriteBoldTokens=e.createBoldToken=e.BoldsymbolMethods=void 0;var a=r(0),o=r(3),i=r(7),s=r(1),l=r(18),c={};function u(t,e,r,n){var a=l.NodeFactory.createToken(t,e,r,n);return"mtext"!==e&&t.configuration.parser.stack.env.boldsymbol&&(o.default.setProperty(a,"fixBold",!0),t.configuration.addNode("fixBold",a)),a}function p(t){var e,r;try{for(var a=n(t.data.getList("fixBold")),s=a.next();!s.done;s=a.next()){var l=s.value;if(o.default.getProperty(l,"fixBold")){var u=o.default.getAttribute(l,"mathvariant");null==u?o.default.setAttribute(l,"mathvariant",i.TexConstant.Variant.BOLD):o.default.setAttribute(l,"mathvariant",c[u]||u),o.default.removeProperties(l,"fixBold")}}}catch(t){e={error:t}}finally{try{s&&!s.done&&(r=a.return)&&r.call(a)}finally{if(e)throw e.error}}}c[i.TexConstant.Variant.NORMAL]=i.TexConstant.Variant.BOLD,c[i.TexConstant.Variant.ITALIC]=i.TexConstant.Variant.BOLDITALIC,c[i.TexConstant.Variant.FRAKTUR]=i.TexConstant.Variant.BOLDFRAKTUR,c[i.TexConstant.Variant.SCRIPT]=i.TexConstant.Variant.BOLDSCRIPT,c[i.TexConstant.Variant.SANSSERIF]=i.TexConstant.Variant.BOLDSANSSERIF,c["-tex-calligraphic"]="-tex-bold-calligraphic",c["-tex-oldstyle"]="-tex-bold-oldstyle",e.BoldsymbolMethods={},e.BoldsymbolMethods.Boldsymbol=function(t,e){var r=t.stack.env.boldsymbol;t.stack.env.boldsymbol=!0;var n=t.ParseArg(e);t.stack.env.boldsymbol=r,t.Push(n)},new s.CommandMap("boldsymbol",{boldsymbol:"Boldsymbol"},e.BoldsymbolMethods),e.createBoldToken=u,e.rewriteBoldTokens=p,e.BoldsymbolConfiguration=a.Configuration.create("boldsymbol",{handler:{macro:["boldsymbol"]},nodes:{token:u},postprocessors:[p]})},function(t,e,r){"use strict";var n;Object.defineProperty(e,"__esModule",{value:!0}),e.BraketConfiguration=void 0;var a=r(0),o=r(43);r(87),e.BraketConfiguration=a.Configuration.create("braket",{handler:{character:["Braket-characters"],macro:["Braket-macros"]},items:(n={},n[o.BraketItem.prototype.kind]=o.BraketItem,n)})},function(t,e,r){"use strict";var n,a=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)});Object.defineProperty(e,"__esModule",{value:!0}),e.BraketItem=void 0;var o=r(11),i=r(5),s=r(4),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a(e,t),Object.defineProperty(e.prototype,"kind",{get:function(){return"braket"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isOpen",{get:function(){return!0},enumerable:!1,configurable:!0}),e.prototype.checkItem=function(e){return e.isKind("close")?[[this.factory.create("mml",this.toMml())],!0]:e.isKind("mml")?(this.Push(e.toMml()),this.getProperty("single")?[[this.toMml()],!0]:o.BaseItem.fail):t.prototype.checkItem.call(this,e)},e.prototype.toMml=function(){var e=t.prototype.toMml.call(this),r=this.getProperty("open"),n=this.getProperty("close");if(this.getProperty("stretchy"))return s.default.fenced(this.factory.configuration,r,e,n);var a={fence:!0,stretchy:!1,symmetric:!0,texClass:i.TEXCLASS.OPEN},o=this.create("token","mo",a,r);a.texClass=i.TEXCLASS.CLOSE;var l=this.create("token","mo",a,n);return this.create("node","mrow",[o,e,l],{open:r,close:n,texClass:i.TEXCLASS.INNER})},e}(o.BaseItem);e.BraketItem=l},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=r(8),a=r(5),o=r(2),i={};i.Macro=n.default.Macro,i.Braket=function(t,e,r,n,a,i){var s=t.GetNext();if(""===s)throw new o.default("MissingArgFor","Missing argument for %1",t.currentCS);var l=!0;"{"===s&&(t.i++,l=!1),t.Push(t.itemFactory.create("braket").setProperties({barmax:i,barcount:0,open:r,close:n,stretchy:a,single:l}))},i.Bar=function(t,e){var r="|"===e?"|":"\u2225",n=t.stack.Top();if("braket"!==n.kind||n.getProperty("barcount")>=n.getProperty("barmax")){var o=t.create("token","mo",{texClass:a.TEXCLASS.ORD,stretchy:!1},r);t.Push(o)}else{if("|"===r&&"|"===t.GetNext()&&(t.i++,r="\u2225"),n.getProperty("stretchy")){var i=t.create("node","TeXAtom",[],{texClass:a.TEXCLASS.CLOSE});t.Push(i),n.setProperty("barcount",n.getProperty("barcount")+1),i=t.create("token","mo",{stretchy:!0,braketbar:!0},r),t.Push(i),i=t.create("node","TeXAtom",[],{texClass:a.TEXCLASS.OPEN}),t.Push(i)}else{var s=t.create("token","mo",{stretchy:!1,braketbar:!0},r);t.Push(s)}}},e.default=i},function(t,e,r){"use strict";var n;Object.defineProperty(e,"__esModule",{value:!0}),e.BussproofsConfiguration=void 0;var a=r(0),o=r(46),i=r(20);r(88),e.BussproofsConfiguration=a.Configuration.create("bussproofs",{handler:{macro:["Bussproofs-macros"],environment:["Bussproofs-environments"]},items:(n={},n[o.ProofTreeItem.prototype.kind]=o.ProofTreeItem,n),preprocessors:[[i.saveDocument,1]],postprocessors:[[i.clearDocument,3],[i.makeBsprAttributes,2],[i.balanceRules,1]]})},function(t,e,r){"use strict";var n,a=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)});Object.defineProperty(e,"__esModule",{value:!0}),e.ProofTreeItem=void 0;var o=r(2),i=r(11),s=r(23),l=r(20),c=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.leftLabel=null,e.rigthLabel=null,e.innerStack=new s.default(e.factory,{},!0),e}return a(e,t),Object.defineProperty(e.prototype,"kind",{get:function(){return"proofTree"},enumerable:!1,configurable:!0}),e.prototype.checkItem=function(t){if(t.isKind("end")&&"prooftree"===t.getName()){var e=this.toMml();return l.setProperty(e,"proof",!0),[[this.factory.create("mml",e),t],!0]}if(t.isKind("stop"))throw new o.default("EnvMissingEnd","Missing \\end{%1}",this.getName());return this.innerStack.Push(t),i.BaseItem.fail},e.prototype.toMml=function(){var e=t.prototype.toMml.call(this),r=this.innerStack.Top();if(r.isKind("start")&&!r.Size())return e;this.innerStack.Push(this.factory.create("stop"));var n=this.innerStack.Top().toMml();return this.create("node","mrow",[n,e],{})},e}(i.BaseItem);e.ProofTreeItem=c},function(t,e,r){"use strict";var n=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,a,o=r.call(t),i=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)i.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(a)throw a.error}}return i},a=this&&this.__spread||function(){for(var t=[],e=0;e0);var c=t.create("node","mtr",s,{}),f=t.create("node","mtable",[c],{framespacing:"0 0"}),d=u(t,t.GetArgument(e)),h=n.getProperty("currentLine");h!==n.getProperty("line")&&n.setProperty("currentLine",n.getProperty("line"));var m=p(t,f,[d],n.getProperty("left"),n.getProperty("right"),h,a);n.setProperty("left",null),n.setProperty("right",null),l.setProperty(m,"inference",i),t.configuration.addNode("inference",m),n.Push(m)},c.Label=function(t,e,r){var n=t.stack.Top();if("proofTree"!==n.kind)throw new o.default("IllegalProofCommand","Proof commands only allowed in prooftree environment.");var a=s.default.internalMath(t,t.GetArgument(e),0),i=a.length>1?t.create("node","mrow",a,{}):a[0];n.setProperty(r,i)},c.SetLine=function(t,e,r,n){var a=t.stack.Top();if("proofTree"!==a.kind)throw new o.default("IllegalProofCommand","Proof commands only allowed in prooftree environment.");a.setProperty("currentLine",r),n&&a.setProperty("line",r)},c.RootAtTop=function(t,e,r){var n=t.stack.Top();if("proofTree"!==n.kind)throw new o.default("IllegalProofCommand","Proof commands only allowed in prooftree environment.");n.setProperty("rootAtTop",r)},c.AxiomF=function(t,e){var r=t.stack.Top();if("proofTree"!==r.kind)throw new o.default("IllegalProofCommand","Proof commands only allowed in prooftree environment.");var n=f(t,e);l.setProperty(n,"axiom",!0),r.Push(n)},c.FCenter=function(t,e){},c.InferenceF=function(t,e,r){var n=t.stack.Top();if("proofTree"!==n.kind)throw new o.default("IllegalProofCommand","Proof commands only allowed in prooftree environment.");if(n.Size()0);var c=t.create("node","mtr",s,{}),u=t.create("node","mtable",[c],{framespacing:"0 0"}),d=f(t,e),h=n.getProperty("currentLine");h!==n.getProperty("line")&&n.setProperty("currentLine",n.getProperty("line"));var m=p(t,u,[d],n.getProperty("left"),n.getProperty("right"),h,a);n.setProperty("left",null),n.setProperty("right",null),l.setProperty(m,"inference",i),t.configuration.addNode("inference",m),n.Push(m)},e.default=c},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.CancelConfiguration=e.CancelMethods=void 0;var n=r(0),a=r(7),o=r(1),i=r(4),s=r(25);e.CancelMethods={},e.CancelMethods.Cancel=function(t,e,r){var n=t.GetBrackets(e,""),a=t.ParseArg(e),o=i.default.keyvalOptions(n,s.ENCLOSE_OPTIONS);o.notation=r,t.Push(t.create("node","menclose",[a],o))},e.CancelMethods.CancelTo=function(t,e){var r=t.GetBrackets(e,""),n=t.ParseArg(e),o=t.ParseArg(e),l=i.default.keyvalOptions(r,s.ENCLOSE_OPTIONS);l.notation=[a.TexConstant.Notation.UPDIAGONALSTRIKE,a.TexConstant.Notation.UPDIAGONALARROW,a.TexConstant.Notation.NORTHEASTARROW].join(" "),n=t.create("node","mpadded",[n],{depth:"-.1em",height:"+.1em",voffset:".1em"}),t.Push(t.create("node","msup",[t.create("node","menclose",[o],l),n]))},new o.CommandMap("cancel",{cancel:["Cancel",a.TexConstant.Notation.UPDIAGONALSTRIKE],bcancel:["Cancel",a.TexConstant.Notation.DOWNDIAGONALSTRIKE],xcancel:["Cancel",a.TexConstant.Notation.UPDIAGONALSTRIKE+" "+a.TexConstant.Notation.DOWNDIAGONALSTRIKE],cancelto:"CancelTo"},e.CancelMethods),e.CancelConfiguration=n.Configuration.create("cancel",{handler:{macro:["cancel"]}})},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ColorConfiguration=void 0;var n=r(1),a=r(0),o=r(50),i=r(51);new n.CommandMap("color",{color:"Color",textcolor:"TextColor",definecolor:"DefineColor",colorbox:"ColorBox",fcolorbox:"FColorBox"},o.ColorMethods);e.ColorConfiguration=a.Configuration.create("color",{handler:{macro:["color"]},options:{color:{padding:"5px",borderWidth:"2px"}},config:function(t,e){e.parseOptions.packageData.set("color",{model:new i.ColorModel})}})},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ColorMethods=void 0;var n=r(3),a=r(4);function o(t){var e="+"+t,r=t.replace(/^.*?([a-z]*)$/,"$1");return{width:"+"+2*parseFloat(e)+r,height:e,depth:e,lspace:t}}e.ColorMethods={},e.ColorMethods.Color=function(t,e){var r=t.GetBrackets(e,""),n=t.GetArgument(e),a=t.configuration.packageData.get("color").model.getColor(r,n),o=t.itemFactory.create("style").setProperties({styles:{mathcolor:a}});t.stack.env.color=a,t.Push(o)},e.ColorMethods.TextColor=function(t,e){var r=t.GetBrackets(e,""),n=t.GetArgument(e),a=t.configuration.packageData.get("color").model.getColor(r,n),o=t.stack.env.color;t.stack.env.color=a;var i=t.ParseArg(e);o?t.stack.env.color=o:delete t.stack.env.color;var s=t.create("node","mstyle",[i],{mathcolor:a});t.Push(s)},e.ColorMethods.DefineColor=function(t,e){var r=t.GetArgument(e),n=t.GetArgument(e),a=t.GetArgument(e);t.configuration.packageData.get("color").model.defineColor(n,r,a)},e.ColorMethods.ColorBox=function(t,e){var r=t.GetArgument(e),i=a.default.internalMath(t,t.GetArgument(e)),s=t.configuration.packageData.get("color").model,l=t.create("node","mpadded",i,{mathbackground:s.getColor("named",r)});n.default.setProperties(l,o(t.options.color.padding)),t.Push(l)},e.ColorMethods.FColorBox=function(t,e){var r=t.GetArgument(e),i=t.GetArgument(e),s=a.default.internalMath(t,t.GetArgument(e)),l=t.options.color,c=t.configuration.packageData.get("color").model,u=t.create("node","mpadded",s,{mathbackground:c.getColor("named",i),style:"border: "+l.borderWidth+" solid "+c.getColor("named",r)});n.default.setProperties(u,o(l.padding)),t.Push(u)}},function(t,e,r){"use strict";var n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.ColorModel=void 0;var a=r(2),o=r(52),i=new Map,s=function(){function t(){this.userColors=new Map}return t.prototype.normalizeColor=function(t,e){if(!t||"named"===t)return e;if(i.has(t))return i.get(t)(e);throw new a.default("UndefinedColorModel","Color model '%1' not defined",t)},t.prototype.getColor=function(t,e){return t&&"named"!==t?this.normalizeColor(t,e):this.getColorByName(e)},t.prototype.getColorByName=function(t){return this.userColors.has(t)?this.userColors.get(t):o.COLORS.has(t)?o.COLORS.get(t):t},t.prototype.defineColor=function(t,e,r){var n=this.normalizeColor(t,r);this.userColors.set(e,n)},t}();e.ColorModel=s,i.set("rgb",(function(t){var e,r,o=t.trim().split(/\s*,\s*/),i="#";if(3!==o.length)throw new a.default("ModelArg1","Color values for the %1 model require 3 numbers","rgb");try{for(var s=n(o),l=s.next();!l.done;l=s.next()){var c=l.value;if(!c.match(/^(\d+(\.\d*)?|\.\d+)$/))throw new a.default("InvalidDecimalNumber","Invalid decimal number");var u=parseFloat(c);if(u<0||u>1)throw new a.default("ModelArg2","Color values for the %1 model must be between %2 and %3","rgb","0","1");var p=Math.floor(255*u).toString(16);p.length<2&&(p="0"+p),i+=p}}catch(t){e={error:t}}finally{try{l&&!l.done&&(r=s.return)&&r.call(s)}finally{if(e)throw e.error}}return i})),i.set("RGB",(function(t){var e,r,o=t.trim().split(/\s*,\s*/),i="#";if(3!==o.length)throw new a.default("ModelArg1","Color values for the %1 model require 3 numbers","RGB");try{for(var s=n(o),l=s.next();!l.done;l=s.next()){var c=l.value;if(!c.match(/^\d+$/))throw new a.default("InvalidNumber","Invalid number");var u=parseInt(c);if(u>255)throw new a.default("ModelArg2","Color values for the %1 model must be between %2 and %3","RGB","0","255");var p=u.toString(16);p.length<2&&(p="0"+p),i+=p}}catch(t){e={error:t}}finally{try{l&&!l.done&&(r=s.return)&&r.call(s)}finally{if(e)throw e.error}}return i})),i.set("gray",(function(t){if(!t.match(/^\s*(\d+(\.\d*)?|\.\d+)\s*$/))throw new a.default("InvalidDecimalNumber","Invalid decimal number");var e=parseFloat(t);if(e<0||e>1)throw new a.default("ModelArg2","Color values for the %1 model must be between %2 and %3","gray","0","1");var r=Math.floor(255*e).toString(16);return r.length<2&&(r="0"+r),"#"+r+r+r}))},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.COLORS=void 0,e.COLORS=new Map([["Apricot","#FBB982"],["Aquamarine","#00B5BE"],["Bittersweet","#C04F17"],["Black","#221E1F"],["Blue","#2D2F92"],["BlueGreen","#00B3B8"],["BlueViolet","#473992"],["BrickRed","#B6321C"],["Brown","#792500"],["BurntOrange","#F7921D"],["CadetBlue","#74729A"],["CarnationPink","#F282B4"],["Cerulean","#00A2E3"],["CornflowerBlue","#41B0E4"],["Cyan","#00AEEF"],["Dandelion","#FDBC42"],["DarkOrchid","#A4538A"],["Emerald","#00A99D"],["ForestGreen","#009B55"],["Fuchsia","#8C368C"],["Goldenrod","#FFDF42"],["Gray","#949698"],["Green","#00A64F"],["GreenYellow","#DFE674"],["JungleGreen","#00A99A"],["Lavender","#F49EC4"],["LimeGreen","#8DC73E"],["Magenta","#EC008C"],["Mahogany","#A9341F"],["Maroon","#AF3235"],["Melon","#F89E7B"],["MidnightBlue","#006795"],["Mulberry","#A93C93"],["NavyBlue","#006EB8"],["OliveGreen","#3C8031"],["Orange","#F58137"],["OrangeRed","#ED135A"],["Orchid","#AF72B0"],["Peach","#F7965A"],["Periwinkle","#7977B8"],["PineGreen","#008B72"],["Plum","#92268F"],["ProcessBlue","#00B0F0"],["Purple","#99479B"],["RawSienna","#974006"],["Red","#ED1B23"],["RedOrange","#F26035"],["RedViolet","#A1246B"],["Rhodamine","#EF559F"],["RoyalBlue","#0071BC"],["RoyalPurple","#613F99"],["RubineRed","#ED017D"],["Salmon","#F69289"],["SeaGreen","#3FBC9D"],["Sepia","#671800"],["SkyBlue","#46C5DD"],["SpringGreen","#C6DC67"],["Tan","#DA9D76"],["TealBlue","#00AEB3"],["Thistle","#D883B7"],["Turquoise","#00B4CE"],["Violet","#58429B"],["VioletRed","#EF58A0"],["White","#FFFFFF"],["WildStrawberry","#EE2967"],["Yellow","#FFF200"],["YellowGreen","#98CC70"],["YellowOrange","#FAA21A"]])},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ColorConfiguration=e.ColorV2Methods=void 0;var n=r(1),a=r(0);e.ColorV2Methods={Color:function(t,e){var r=t.GetArgument(e),n=t.stack.env.color;t.stack.env.color=r;var a=t.ParseArg(e);n?t.stack.env.color=n:delete t.stack.env.color;var o=t.create("node","mstyle",[a],{mathcolor:r});t.Push(o)}},new n.CommandMap("colorv2",{color:"Color"},e.ColorV2Methods),e.ColorConfiguration=a.Configuration.create("colorv2",{handler:{macro:["colorv2"]}})},function(t,e,r){"use strict";var n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.ConfigMacrosConfiguration=void 0;var a=r(0),o=r(10),i=r(1),s=r(14),l=r(26);e.ConfigMacrosConfiguration=a.Configuration.create("configmacros",{init:function(t){new i.CommandMap("configmacros-map",{},{}),t.append(a.Configuration.local({handler:{macro:["configmacros-map"]},priority:3}))},config:function(t,e){var r,a,o=e.parseOptions.handlers.retrieve("configmacros-map"),i=e.parseOptions.options.macros;try{for(var c=n(Object.keys(i)),u=c.next();!u.done;u=c.next()){var p=u.value,f="string"==typeof i[p]?[i[p]]:i[p],d=Array.isArray(f[2])?new s.Macro(p,l.default.MacroWithTemplate,f.slice(0,2).concat(f[2])):new s.Macro(p,l.default.Macro,f);o.add(p,d)}}catch(t){r={error:t}}finally{try{u&&!u.done&&(a=c.return)&&a.call(c)}finally{if(r)throw r.error}}},options:{macros:o.expandable({})}})},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ExtpfeilConfiguration=e.ExtpfeilMethods=void 0;var n=r(0),a=r(1),o=r(17),i=r(21),s=r(27),l=r(2);e.ExtpfeilMethods={},e.ExtpfeilMethods.xArrow=o.AmsMethods.xArrow,e.ExtpfeilMethods.NewExtArrow=function(t,r){var n=t.GetArgument(r),a=t.GetArgument(r),o=t.GetArgument(r);if(!n.match(/^\\([a-z]+|.)$/i))throw new l.default("NewextarrowArg1","First argument to %1 must be a control sequence name",r);if(!a.match(/^(\d+),(\d+)$/))throw new l.default("NewextarrowArg2","Second argument to %1 must be two integers separated by a comma",r);if(!o.match(/^(\d+|0x[0-9A-F]+)$/i))throw new l.default("NewextarrowArg3","Third argument to %1 must be a unicode character number",r);n=n.substr(1);var s=a.split(",");i.default.addMacro(t,n,e.ExtpfeilMethods.xArrow,[parseInt(o),parseInt(s[0]),parseInt(s[1])])},new a.CommandMap("extpfeil",{xtwoheadrightarrow:["xArrow",8608,12,16],xtwoheadleftarrow:["xArrow",8606,17,13],xmapsto:["xArrow",8614,6,7],xlongequal:["xArrow",61,7,7],xtofrom:["xArrow",8644,12,12],Newextarrow:"NewExtArrow"},e.ExtpfeilMethods);e.ExtpfeilConfiguration=n.Configuration.create("extpfeil",{handler:{macro:["extpfeil"]},init:function(t){s.NewcommandConfiguration.init(t)}})},function(t,e,r){"use strict";var n,a=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)});Object.defineProperty(e,"__esModule",{value:!0}),e.BeginEnvItem=void 0;var o=r(2),i=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a(e,t),Object.defineProperty(e.prototype,"kind",{get:function(){return"beginEnv"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isOpen",{get:function(){return!0},enumerable:!1,configurable:!0}),e.prototype.checkItem=function(e){if(e.isKind("end")){if(e.getName()!==this.getName())throw new o.default("EnvBadEnd","\\begin{%1} ended with \\end{%2}",this.getName(),e.getName());return[[this.factory.create("mml",this.toMml())],!0]}if(e.isKind("stop"))throw new o.default("EnvMissingEnd","Missing \\end{%1}",this.getName());return t.prototype.checkItem.call(this,e)},e}(r(11).BaseItem);e.BeginEnvItem=i},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.HtmlConfiguration=void 0;var n=r(0),a=r(1),o=r(58);new a.CommandMap("html_macros",{href:"Href",class:"Class",style:"Style",cssId:"Id"},o.default),e.HtmlConfiguration=n.Configuration.create("html",{handler:{macro:["html_macros"]}})},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=r(3),a={Href:function(t,e){var r=t.GetArgument(e),a=o(t,e);n.default.setAttribute(a,"href",r),t.Push(a)},Class:function(t,e){var r=t.GetArgument(e),a=o(t,e),i=n.default.getAttribute(a,"class");i&&(r=i+" "+r),n.default.setAttribute(a,"class",r),t.Push(a)},Style:function(t,e){var r=t.GetArgument(e),a=o(t,e),i=n.default.getAttribute(a,"style");i&&(";"!==r.charAt(r.length-1)&&(r+=";"),r=i+" "+r),n.default.setAttribute(a,"style",r),t.Push(a)},Id:function(t,e){var r=t.GetArgument(e),a=o(t,e);n.default.setAttribute(a,"id",r),t.Push(a)}},o=function(t,e){var r=t.ParseArg(e);if(!n.default.isInferred(r))return r;var a=n.default.getChildren(r);if(1===a.length)return a[0];var o=t.create("node","mrow");return n.default.copyChildren(r,o),n.default.copyAttributes(r,o),o};e.default=a},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.MhchemConfiguration=void 0;var n=r(0),a=r(1),o=r(2),i=r(8),s=r(17),l=r(90),c={};c.Macro=i.default.Macro,c.xArrow=s.AmsMethods.xArrow,c.Machine=function(t,e,r){try{var n=t.GetArgument(e),a=l.mhchemParser.go(n,r),i=l.texify.go(a);t.string=i+t.string.substr(t.i),t.i=0}catch(t){throw new o.default(t[0],t[1],t.slice(2))}},new a.CommandMap("mhchem",{ce:["Machine","ce"],pu:["Machine","pu"],longrightleftharpoons:["Macro","\\stackrel{\\textstyle{-}\\!\\!{\\rightharpoonup}}{\\smash{{\\leftharpoondown}\\!\\!{-}}}"],longRightleftharpoons:["Macro","\\stackrel{\\textstyle{-}\\!\\!{\\rightharpoonup}}{\\smash{\\leftharpoondown}}"],longLeftrightharpoons:["Macro","\\stackrel{\\textstyle\\vphantom{{-}}{\\rightharpoonup}}{\\smash{{\\leftharpoondown}\\!\\!{-}}}"],longleftrightarrows:["Macro","\\stackrel{\\longrightarrow}{\\smash{\\longleftarrow}\\Rule{0px}{.25em}{0px}}"],tripledash:["Macro","\\vphantom{-}\\raise2mu{\\kern2mu\\tiny\\text{-}\\kern1mu\\text{-}\\kern1mu\\text{-}\\kern2mu}"],xrightarrow:["xArrow",8594,5,6],xleftarrow:["xArrow",8592,7,3],xleftrightarrow:["xArrow",8596,6,6],xrightleftharpoons:["xArrow",8652,5,7],xRightleftharpoons:["xArrow",8652,5,7],xLeftrightharpoons:["xArrow",8652,5,7]},c),e.MhchemConfiguration=n.Configuration.create("mhchem",{handler:{macro:["mhchem"]}})},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.NoErrorsConfiguration=void 0;var n=r(0);e.NoErrorsConfiguration=n.Configuration.create("noerrors",{nodes:{error:function(t,e,r,n){var a=t.create("token","mtext",{},n.replace(/\n/g," "));return t.create("node","merror",[a],{"data-mjx-error":e,title:e})}}})},function(t,e,r){"use strict";var n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.NoUndefinedConfiguration=void 0;var a=r(0);e.NoUndefinedConfiguration=a.Configuration.create("noundefined",{fallback:{macro:function(t,e){var r,a,o=t.create("text","\\"+e),i=t.options.noundefined||{},s={};try{for(var l=n(["color","background","size"]),c=l.next();!c.done;c=l.next()){var u=c.value;i[u]&&(s["math"+u]=i[u])}}catch(t){r={error:t}}finally{try{c&&!c.done&&(a=l.return)&&a.call(l)}finally{if(r)throw r.error}}t.Push(t.create("node","mtext",[],s,o))}},options:{noundefined:{color:"red",background:"",size:""}},priority:3})},function(t,e,r){"use strict";var n;Object.defineProperty(e,"__esModule",{value:!0}),e.PhysicsConfiguration=void 0;var a=r(0),o=r(63);r(91),e.PhysicsConfiguration=a.Configuration.create("physics",{handler:{macro:["Physics-automatic-bracing-macros","Physics-vector-macros","Physics-vector-chars","Physics-derivative-macros","Physics-expressions-macros","Physics-quick-quad-macros","Physics-bra-ket-macros","Physics-matrix-macros"],character:["Physics-characters"],environment:["Physics-aux-envs"]},items:(n={},n[o.AutoOpen.prototype.kind]=o.AutoOpen,n)})},function(t,e,r){"use strict";var n,a=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)});Object.defineProperty(e,"__esModule",{value:!0}),e.AutoOpen=void 0;var o=r(11),i=r(4),s=r(6),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a(e,t),Object.defineProperty(e.prototype,"kind",{get:function(){return"auto open"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isOpen",{get:function(){return!0},enumerable:!1,configurable:!0}),e.prototype.toMml=function(){var e=this.factory.configuration.parser,r=this.getProperty("right");if(this.getProperty("smash")){var n=t.prototype.toMml.call(this),a=e.create("node","mpadded",[n],{height:0,depth:0});this.Clear(),this.Push(e.create("node","TeXAtom",[a]))}r&&this.Push(new s.default(r,e.stack.env,e.configuration).mml());var o=t.prototype.toMml.call(this);return i.default.fenced(this.factory.configuration,this.getProperty("open"),o,this.getProperty("close"),this.getProperty("big"))},e.prototype.checkItem=function(e){var r=e.getProperty("autoclose");return r&&r===this.getProperty("close")?this.getProperty("ignore")?(this.Clear(),[[],!0]):[[this.toMml()],!0]:t.prototype.checkItem.call(this,e)},e}(o.BaseItem);e.AutoOpen=l},function(t,e,r){"use strict";var n=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,a,o=r.call(t),i=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)i.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(a)throw a.error}}return i};Object.defineProperty(e,"__esModule",{value:!0});var a=r(8),o=r(6),i=r(2),s=r(5),l=r(4),c=r(3),u=r(18),p={},f={"(":")","[":"]","{":"}","|":"|"},d=/^(b|B)i(g{1,2})$/;p.Quantity=function(t,e,r,n,a,u,p){void 0===r&&(r="("),void 0===n&&(n=")"),void 0===a&&(a=!1),void 0===u&&(u=""),void 0===p&&(p="");var h=!!a&&t.GetStar(),m=t.GetNext(),g=t.i,v=null;if("\\"===m){if(t.i++,!(v=t.GetCS()).match(d)){var y=t.create("node","mrow");return t.Push(l.default.fenced(t.configuration,r,y,n)),void(t.i=g)}m=t.GetNext()}var b=f[m];if(a&&"{"!==m)throw new i.default("MissingArgFor","Missing argument for %1",t.currentCS);if(!b){y=t.create("node","mrow");return t.Push(l.default.fenced(t.configuration,r,y,n)),void(t.i=g)}if(u){var x=t.create("token","mi",{texClass:s.TEXCLASS.OP},u);p&&c.default.setAttribute(x,"mathvariant",p),t.Push(t.itemFactory.create("fn",x))}if("{"===m){var A=t.GetArgument(e);return m=a?r:"\\{",b=a?n:"\\}",A=h?m+" "+A+" "+b:v?"\\"+v+"l"+m+" "+A+" \\"+v+"r"+b:"\\left"+m+" "+A+" \\right"+b,void t.Push(new o.default(A,t.stack.env,t.configuration).mml())}a&&(m=r,b=n),t.i++,t.Push(t.itemFactory.create("auto open").setProperties({open:m,close:b,big:v}))},p.Eval=function(t,e){var r=t.GetStar(),n=t.GetNext();if("{"!==n){if("("===n||"["===n)return t.i++,void t.Push(t.itemFactory.create("auto open").setProperties({open:n,close:"|",smash:r,right:"\\vphantom{\\int}"}));throw new i.default("MissingArgFor","Missing argument for %1",t.currentCS)}var a=t.GetArgument(e),o="\\left. "+(r?"\\smash{"+a+"}":a)+" \\vphantom{\\int}\\right|";t.string=t.string.slice(0,t.i)+o+t.string.slice(t.i)},p.Commutator=function(t,e,r,n){void 0===r&&(r="["),void 0===n&&(n="]");var a=t.GetStar(),s=t.GetNext(),l=null;if("\\"===s){if(t.i++,!(l=t.GetCS()).match(d))throw new i.default("MissingArgFor","Missing argument for %1",t.currentCS);s=t.GetNext()}if("{"!==s)throw new i.default("MissingArgFor","Missing argument for %1",t.currentCS);var c=t.GetArgument(e)+","+t.GetArgument(e);c=a?r+" "+c+" "+n:l?"\\"+l+"l"+r+" "+c+" \\"+l+"r"+n:"\\left"+r+" "+c+" \\right"+n,t.Push(new o.default(c,t.stack.env,t.configuration).mml())};var h=[65,90],m=[97,122],g=[913,937],v=[945,969],y=[48,57];function b(t,e){return t>=e[0]&&t<=e[1]}function x(t,e,r,n){var a=t.configuration.parser,o=u.NodeFactory.createToken(t,e,r,n),i=n.codePointAt(0);return 1===n.length&&!a.stack.env.font&&a.stack.env.vectorFont&&(b(i,h)||b(i,m)||b(i,g)||b(i,y)||b(i,v)&&a.stack.env.vectorStar||c.default.getAttribute(o,"accent"))&&c.default.setAttribute(o,"mathvariant",a.stack.env.vectorFont),o}p.VectorBold=function(t,e){var r=t.GetStar(),n=t.GetArgument(e),a=t.configuration.nodeFactory.get("token"),i=t.stack.env.font;delete t.stack.env.font,t.configuration.nodeFactory.set("token",x),t.stack.env.vectorFont=r?"bold-italic":"bold",t.stack.env.vectorStar=r;var s=new o.default(n,t.stack.env,t.configuration).mml();i&&(t.stack.env.font=i),delete t.stack.env.vectorFont,delete t.stack.env.vectorStar,t.configuration.nodeFactory.set("token",a),t.Push(s)},p.StarMacro=function(t,e,r){for(var n=[],a=3;at.configuration.options.maxMacros)throw new i.default("MaxMacroSub1","MathJax maximum macro substitution count exceeded; is there a recursive macro call?")};var A=function(t,e,r,n,a){var i=new o.default(n,t.stack.env,t.configuration).mml();t.Push(t.itemFactory.create(e,i));var s=t.GetNext(),l=f[s];if(l){var c=-1!==a.indexOf(s);if("{"===s){var u=(c?"\\left\\{":"")+" "+t.GetArgument(r)+" "+(c?"\\right\\}":"");return t.string=u+t.string.slice(t.i),void(t.i=0)}c&&(t.i++,t.Push(t.itemFactory.create("auto open").setProperties({open:s,close:l})))}};function M(t,e,r){var a=n(t,3),o=a[0],i=a[1],s=a[2];return e&&r?"\\left\\langle{"+o+"}\\middle\\vert{"+i+"}\\middle\\vert{"+s+"}\\right\\rangle":e?"\\langle{"+o+"}\\vert{"+i+"}\\vert{"+s+"}\\rangle":"\\left\\langle{"+o+"}\\right\\vert{"+i+"}\\left\\vert{"+s+"}\\right\\rangle"}p.OperatorApplication=function(t,e,r){for(var n=[],a=3;a2&&l.length>2?(u="^{"+(l.length-1)+"}",c=!0):null!=i&&(r>2&&l.length>1&&(c=!0),p=u="^{"+i+"}");for(var f=a?"\\flatfrac":"\\frac",d=l.length>1?l[0]:"",h=l.length>1?l[1]:l[0],m="",g=2,v=void 0;v=l[g];g++)m+=n+" "+v;var y=f+"{"+n+u+d+"}{"+n+" "+h+p+" "+m+"}";t.Push(new o.default(y,t.stack.env,t.configuration).mml()),"("===t.GetNext()&&(t.i++,t.Push(t.itemFactory.create("auto open").setProperties({open:"(",close:")",ignore:c})))},p.Bra=function(t,e){var r=t.GetStar(),n=t.GetArgument(e),a="",i=!1,s=!1;if("\\"===t.GetNext()){var l=t.i;t.i++;var c=t.GetCS(),u=t.lookup("macro",c);u&&"ket"===u.symbol?(i=!0,l=t.i,s=t.GetStar(),"{"===t.GetNext()?a=t.GetArgument(c,!0):(t.i=l,s=!1)):t.i=l}var p="";p=i?r||s?"\\langle{"+n+"}\\vert{"+a+"}\\rangle":"\\left\\langle{"+n+"}\\middle\\vert{"+a+"}\\right\\rangle":r||s?"\\langle{"+n+"}\\vert":"\\left\\langle{"+n+"}\\right\\vert{"+a+"}",t.Push(new o.default(p,t.stack.env,t.configuration).mml())},p.Ket=function(t,e){var r=t.GetStar(),n=t.GetArgument(e),a=r?"\\vert{"+n+"}\\rangle":"\\left\\vert{"+n+"}\\right\\rangle";t.Push(new o.default(a,t.stack.env,t.configuration).mml())},p.BraKet=function(t,e){var r=t.GetStar(),n=t.GetArgument(e),a=null;"{"===t.GetNext()&&(a=t.GetArgument(e,!0));var i="";i=null==a?r?"\\langle{"+n+"}\\vert{"+n+"}\\rangle":"\\left\\langle{"+n+"}\\middle\\vert{"+n+"}\\right\\rangle":r?"\\langle{"+n+"}\\vert{"+a+"}\\rangle":"\\left\\langle{"+n+"}\\middle\\vert{"+a+"}\\right\\rangle",t.Push(new o.default(i,t.stack.env,t.configuration).mml())},p.KetBra=function(t,e){var r=t.GetStar(),n=t.GetArgument(e),a=null;"{"===t.GetNext()&&(a=t.GetArgument(e,!0));var i="";i=null==a?r?"\\vert{"+n+"}\\rangle\\!\\langle{"+n+"}\\vert":"\\left\\vert{"+n+"}\\middle\\rangle\\!\\middle\\langle{"+n+"}\\right\\vert":r?"\\vert{"+n+"}\\rangle\\!\\langle{"+a+"}\\vert":"\\left\\vert{"+n+"}\\middle\\rangle\\!\\middle\\langle{"+a+"}\\right\\vert",t.Push(new o.default(i,t.stack.env,t.configuration).mml())},p.Expectation=function(t,e){var r=t.GetStar(),n=r&&t.GetStar(),a=t.GetArgument(e),i=null;"{"===t.GetNext()&&(i=t.GetArgument(e,!0));var s=a&&i?M([i,a,i],r,n):r?"\\langle {"+a+"} \\rangle":"\\left\\langle {"+a+"} \\right\\rangle";t.Push(new o.default(s,t.stack.env,t.configuration).mml())},p.MatrixElement=function(t,e){var r=t.GetStar(),n=r&&t.GetStar(),a=M([t.GetArgument(e),t.GetArgument(e),t.GetArgument(e)],r,n);t.Push(new o.default(a,t.stack.env,t.configuration).mml())},p.MatrixQuantity=function(t,e,r){var n=t.GetStar(),a=r?"smallmatrix":"array",i="",s="",l="";switch(t.GetNext()){case"{":i=t.GetArgument(e);break;case"(":t.i++,s=n?"\\lgroup":"(",l=n?"\\rgroup":")",i=t.GetUpTo(e,")");break;case"[":t.i++,s="[",l="]",i=t.GetUpTo(e,"]");break;case"|":t.i++,s="|",l="|",i=t.GetUpTo(e,"|");break;default:s="(",l=")"}var c=(s?"\\left":"")+s+"\\begin{"+a+"}{} "+i+"\\end{"+a+"}"+(s?"\\right":"")+l;t.Push(new o.default(c,t.stack.env,t.configuration).mml())},p.IdentityMatrix=function(t,e){var r=t.GetArgument(e),n=parseInt(r,10);if(isNaN(n))throw new i.default("InvalidNumber","Invalid number");if(n<=1)return t.string="1"+t.string.slice(t.i),void(t.i=0);for(var a=Array(n).fill("0"),o=[],s=0;s=a){o.push(t.string.slice(s,a));break}s=t.i,o.push(i)}t.string=function(t,e){for(var r=t.length,n=[],a=0;a=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},i=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,a,o=r.call(t),i=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)i.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(a)throw a.error}}return i},s=this&&this.__spread||function(){for(var t=[],e=0;e\u20d2",nvinfin:"\u29de",nvlArr:"\u2902",nvle:"\u2264\u20d2",nvlt:"<\u20d2",nvltrie:"\u22b4\u20d2",nvrArr:"\u2903",nvrtrie:"\u22b5\u20d2",nvsim:"\u223c\u20d2",nwArr:"\u21d6",nwarhk:"\u2923",nwarrow:"\u2196",nwnear:"\u2927"},"n")},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.PrioritizedList=MathJax._.util.PrioritizedList.PrioritizedList},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.FunctionList=MathJax._.util.FunctionList.FunctionList},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.PackageError=MathJax._.components.package.PackageError,e.Package=MathJax._.components.package.Package},function(t,e,r){"use strict";var n=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,a,o=r.call(t),i=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)i.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(a)throw a.error}}return i},a=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.AutoloadConfiguration=void 0;var o=r(0),i=r(1),s=r(14),l=r(29),c=r(74),u=r(10);function p(t,e,r,o){var i,s,u,p;if(c.Package.packages.has(t.options.require.prefix+r)){var h=t.options.autoload[r],m=n(2===h.length&&Array.isArray(h[0])?h:[h,[]],2),g=m[0],v=m[1];try{for(var y=a(g),b=y.next();!b.done;b=y.next()){var x=b.value;f.remove(x)}}catch(t){i={error:t}}finally{try{b&&!b.done&&(s=y.return)&&s.call(y)}finally{if(i)throw i.error}}try{for(var A=a(v),M=A.next();!M.done;M=A.next()){var _=M.value;d.remove(_)}}catch(t){u={error:t}}finally{try{M&&!M.done&&(p=A.return)&&p.call(A)}finally{if(u)throw u.error}}t.string=(o?e:"\\begin{"+e.slice(1)+"}")+t.string.slice(t.i),t.i=0}l.RequireLoad(t,r)}var f=new i.CommandMap("autoload-macros",{},{}),d=new i.CommandMap("autoload-environments",{},{});e.AutoloadConfiguration=o.Configuration.create("autoload",{handler:{macro:["autoload-macros"],environment:["autoload-environments"]},options:{autoload:u.expandable({action:["toggle","mathtip","texttip"],amscd:[[],["CD"]],bbox:["bbox"],boldsymbol:["boldsymbol"],braket:["bra","ket","braket","set","Bra","Ket","Braket","Set","ketbra","Ketbra"],bussproofs:[[],["prooftree"]],cancel:["cancel","bcancel","xcancel","cancelto"],color:["color","definecolor","textcolor","colorbox","fcolorbox"],enclose:["enclose"],extpfeil:["xtwoheadrightarrow","xtwoheadleftarrow","xmapsto","xlongequal","xtofrom","Newextarrow"],html:["href","class","style","cssId"],mhchem:["ce","pu"],newcommand:["newcommand","renewcommand","newenvironment","renewenvironment","def","let"],unicode:["unicode"],verb:["verb"]})},config:function(t,e){var r,o,i,c,u,h,m=e.parseOptions,g=m.handlers.get("macro"),v=m.handlers.get("environment"),y=m.options.autoload;m.packageData.set("autoload",{Autoload:p});try{for(var b=a(Object.keys(y)),x=b.next();!x.done;x=b.next()){var A=x.value,M=y[A],_=n(2===M.length&&Array.isArray(M[0])?M:[M,[]],2),C=_[0],P=_[1];try{for(var w=(i=void 0,a(C)),S=w.next();!S.done;S=w.next()){var T=S.value;g.lookup(T)&&"color"!==T||f.add(T,new s.Macro(T,p,[A,!0]))}}catch(t){i={error:t}}finally{try{S&&!S.done&&(c=w.return)&&c.call(w)}finally{if(i)throw i.error}}try{for(var k=(u=void 0,a(P)),O=k.next();!O.done;O=k.next()){var E=O.value;v.lookup(E)||d.add(E,new s.Macro(E,p,[A,!1]))}}catch(t){u={error:t}}finally{try{O&&!O.done&&(h=k.return)&&h.call(k)}finally{if(u)throw u.error}}}}catch(t){r={error:t}}finally{try{x&&!x.done&&(o=b.return)&&o.call(b)}finally{if(r)throw r.error}}m.packageData.get("require")||l.RequireConfiguration.config(t,e)},init:function(t){t.options.require||u.defaultOptions(t.options,l.RequireConfiguration.options)},priority:10})},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractInputJax=MathJax._.core.InputJax.AbstractInputJax},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractFindMath=MathJax._.core.FindMath.AbstractFindMath},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.sortLength=MathJax._.util.string.sortLength,e.quotePattern=MathJax._.util.string.quotePattern,e.unicodeChars=MathJax._.util.string.unicodeChars,e.isPercent=MathJax._.util.string.isPercent,e.split=MathJax._.util.string.split},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.protoItem=MathJax._.core.MathItem.protoItem,e.AbstractMathItem=MathJax._.core.MathItem.AbstractMathItem,e.STATE=MathJax._.core.MathItem.STATE,e.newState=MathJax._.core.MathItem.newState},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.MmlMo=MathJax._.core.MmlTree.MmlNodes.mo.MmlMo},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractFactory=MathJax._.core.Tree.Factory.AbstractFactory},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=r(1),a=r(7),o=r(8),i=r(12),s=r(5);new n.RegExpMap("letter",i.default.variable,/[a-z]/i),new n.RegExpMap("digit",i.default.digit,/[0-9.,]/),new n.RegExpMap("command",i.default.controlSequence,/^\\/),new n.MacroMap("special",{"{":"Open","}":"Close","~":"Tilde","^":"Superscript",_:"Subscript"," ":"Space","\t":"Space","\r":"Space","\n":"Space","'":"Prime","%":"Comment","&":"Entry","#":"Hash","\xa0":"Space","\u2019":"Prime"},o.default),new n.CharacterMap("mathchar0mi",i.default.mathchar0mi,{alpha:"\u03b1",beta:"\u03b2",gamma:"\u03b3",delta:"\u03b4",epsilon:"\u03f5",zeta:"\u03b6",eta:"\u03b7",theta:"\u03b8",iota:"\u03b9",kappa:"\u03ba",lambda:"\u03bb",mu:"\u03bc",nu:"\u03bd",xi:"\u03be",omicron:"\u03bf",pi:"\u03c0",rho:"\u03c1",sigma:"\u03c3",tau:"\u03c4",upsilon:"\u03c5",phi:"\u03d5",chi:"\u03c7",psi:"\u03c8",omega:"\u03c9",varepsilon:"\u03b5",vartheta:"\u03d1",varpi:"\u03d6",varrho:"\u03f1",varsigma:"\u03c2",varphi:"\u03c6",S:["\xa7",{mathvariant:a.TexConstant.Variant.NORMAL}],aleph:["\u2135",{mathvariant:a.TexConstant.Variant.NORMAL}],hbar:["\u210f",{variantForm:!0}],imath:"\u0131",jmath:"\u0237",ell:"\u2113",wp:["\u2118",{mathvariant:a.TexConstant.Variant.NORMAL}],Re:["\u211c",{mathvariant:a.TexConstant.Variant.NORMAL}],Im:["\u2111",{mathvariant:a.TexConstant.Variant.NORMAL}],partial:["\u2202",{mathvariant:a.TexConstant.Variant.ITALIC}],infty:["\u221e",{mathvariant:a.TexConstant.Variant.NORMAL}],prime:["\u2032",{mathvariant:a.TexConstant.Variant.NORMAL,variantForm:!0}],emptyset:["\u2205",{mathvariant:a.TexConstant.Variant.NORMAL}],nabla:["\u2207",{mathvariant:a.TexConstant.Variant.NORMAL}],top:["\u22a4",{mathvariant:a.TexConstant.Variant.NORMAL}],bot:["\u22a5",{mathvariant:a.TexConstant.Variant.NORMAL}],angle:["\u2220",{mathvariant:a.TexConstant.Variant.NORMAL}],triangle:["\u25b3",{mathvariant:a.TexConstant.Variant.NORMAL}],backslash:["\u2216",{mathvariant:a.TexConstant.Variant.NORMAL,variantForm:!0}],forall:["\u2200",{mathvariant:a.TexConstant.Variant.NORMAL}],exists:["\u2203",{mathvariant:a.TexConstant.Variant.NORMAL}],neg:["\xac",{mathvariant:a.TexConstant.Variant.NORMAL}],lnot:["\xac",{mathvariant:a.TexConstant.Variant.NORMAL}],flat:["\u266d",{mathvariant:a.TexConstant.Variant.NORMAL}],natural:["\u266e",{mathvariant:a.TexConstant.Variant.NORMAL}],sharp:["\u266f",{mathvariant:a.TexConstant.Variant.NORMAL}],clubsuit:["\u2663",{mathvariant:a.TexConstant.Variant.NORMAL}],diamondsuit:["\u2662",{mathvariant:a.TexConstant.Variant.NORMAL}],heartsuit:["\u2661",{mathvariant:a.TexConstant.Variant.NORMAL}],spadesuit:["\u2660",{mathvariant:a.TexConstant.Variant.NORMAL}]}),new n.CharacterMap("mathchar0mo",i.default.mathchar0mo,{surd:"\u221a",coprod:["\u2210",{texClass:s.TEXCLASS.OP,movesupsub:!0}],bigvee:["\u22c1",{texClass:s.TEXCLASS.OP,movesupsub:!0}],bigwedge:["\u22c0",{texClass:s.TEXCLASS.OP,movesupsub:!0}],biguplus:["\u2a04",{texClass:s.TEXCLASS.OP,movesupsub:!0}],bigcap:["\u22c2",{texClass:s.TEXCLASS.OP,movesupsub:!0}],bigcup:["\u22c3",{texClass:s.TEXCLASS.OP,movesupsub:!0}],int:["\u222b",{texClass:s.TEXCLASS.OP}],intop:["\u222b",{texClass:s.TEXCLASS.OP,movesupsub:!0,movablelimits:!0}],iint:["\u222c",{texClass:s.TEXCLASS.OP}],iiint:["\u222d",{texClass:s.TEXCLASS.OP}],prod:["\u220f",{texClass:s.TEXCLASS.OP,movesupsub:!0}],sum:["\u2211",{texClass:s.TEXCLASS.OP,movesupsub:!0}],bigotimes:["\u2a02",{texClass:s.TEXCLASS.OP,movesupsub:!0}],bigoplus:["\u2a01",{texClass:s.TEXCLASS.OP,movesupsub:!0}],bigodot:["\u2a00",{texClass:s.TEXCLASS.OP,movesupsub:!0}],oint:["\u222e",{texClass:s.TEXCLASS.OP}],bigsqcup:["\u2a06",{texClass:s.TEXCLASS.OP,movesupsub:!0}],smallint:["\u222b",{largeop:!1}],triangleleft:"\u25c3",triangleright:"\u25b9",bigtriangleup:"\u25b3",bigtriangledown:"\u25bd",wedge:"\u2227",land:"\u2227",vee:"\u2228",lor:"\u2228",cap:"\u2229",cup:"\u222a",ddagger:"\u2021",dagger:"\u2020",sqcap:"\u2293",sqcup:"\u2294",uplus:"\u228e",amalg:"\u2a3f",diamond:"\u22c4",bullet:"\u2219",wr:"\u2240",div:"\xf7",odot:["\u2299",{largeop:!1}],oslash:["\u2298",{largeop:!1}],otimes:["\u2297",{largeop:!1}],ominus:["\u2296",{largeop:!1}],oplus:["\u2295",{largeop:!1}],mp:"\u2213",pm:"\xb1",circ:"\u2218",bigcirc:"\u25ef",setminus:"\u2216",cdot:"\u22c5",ast:"\u2217",times:"\xd7",star:"\u22c6",propto:"\u221d",sqsubseteq:"\u2291",sqsupseteq:"\u2292",parallel:"\u2225",mid:"\u2223",dashv:"\u22a3",vdash:"\u22a2",leq:"\u2264",le:"\u2264",geq:"\u2265",ge:"\u2265",lt:"<",gt:">",succ:"\u227b",prec:"\u227a",approx:"\u2248",succeq:"\u2ab0",preceq:"\u2aaf",supset:"\u2283",subset:"\u2282",supseteq:"\u2287",subseteq:"\u2286",in:"\u2208",ni:"\u220b",notin:"\u2209",owns:"\u220b",gg:"\u226b",ll:"\u226a",sim:"\u223c",simeq:"\u2243",perp:"\u22a5",equiv:"\u2261",asymp:"\u224d",smile:"\u2323",frown:"\u2322",ne:"\u2260",neq:"\u2260",cong:"\u2245",doteq:"\u2250",bowtie:"\u22c8",models:"\u22a8",notChar:"\u29f8",Leftrightarrow:"\u21d4",Leftarrow:"\u21d0",Rightarrow:"\u21d2",leftrightarrow:"\u2194",leftarrow:"\u2190",gets:"\u2190",rightarrow:"\u2192",to:["\u2192",{accent:!1}],mapsto:"\u21a6",leftharpoonup:"\u21bc",leftharpoondown:"\u21bd",rightharpoonup:"\u21c0",rightharpoondown:"\u21c1",nearrow:"\u2197",searrow:"\u2198",nwarrow:"\u2196",swarrow:"\u2199",rightleftharpoons:"\u21cc",hookrightarrow:"\u21aa",hookleftarrow:"\u21a9",longleftarrow:"\u27f5",Longleftarrow:"\u27f8",longrightarrow:"\u27f6",Longrightarrow:"\u27f9",Longleftrightarrow:"\u27fa",longleftrightarrow:"\u27f7",longmapsto:"\u27fc",ldots:"\u2026",cdots:"\u22ef",vdots:"\u22ee",ddots:"\u22f1",dotsc:"\u2026",dotsb:"\u22ef",dotsm:"\u22ef",dotsi:"\u22ef",dotso:"\u2026",ldotp:[".",{texClass:s.TEXCLASS.PUNCT}],cdotp:["\u22c5",{texClass:s.TEXCLASS.PUNCT}],colon:[":",{texClass:s.TEXCLASS.PUNCT}]}),new n.CharacterMap("mathchar7",i.default.mathchar7,{Gamma:"\u0393",Delta:"\u0394",Theta:"\u0398",Lambda:"\u039b",Xi:"\u039e",Pi:"\u03a0",Sigma:"\u03a3",Upsilon:"\u03a5",Phi:"\u03a6",Psi:"\u03a8",Omega:"\u03a9",_:"_","#":"#",$:"$","%":"%","&":"&",And:"&"}),new n.DelimiterMap("delimiter",i.default.delimiter,{"(":"(",")":")","[":"[","]":"]","<":"\u27e8",">":"\u27e9","\\lt":"\u27e8","\\gt":"\u27e9","/":"/","|":["|",{texClass:s.TEXCLASS.ORD}],".":"","\\\\":"\\","\\lmoustache":"\u23b0","\\rmoustache":"\u23b1","\\lgroup":"\u27ee","\\rgroup":"\u27ef","\\arrowvert":"\u23d0","\\Arrowvert":"\u2016","\\bracevert":"\u23aa","\\Vert":["\u2225",{texClass:s.TEXCLASS.ORD}],"\\|":["\u2225",{texClass:s.TEXCLASS.ORD}],"\\vert":["|",{texClass:s.TEXCLASS.ORD}],"\\uparrow":"\u2191","\\downarrow":"\u2193","\\updownarrow":"\u2195","\\Uparrow":"\u21d1","\\Downarrow":"\u21d3","\\Updownarrow":"\u21d5","\\backslash":"\\","\\rangle":"\u27e9","\\langle":"\u27e8","\\rbrace":"}","\\lbrace":"{","\\}":"}","\\{":"{","\\rceil":"\u2309","\\lceil":"\u2308","\\rfloor":"\u230b","\\lfloor":"\u230a","\\lbrack":"[","\\rbrack":"]"}),new n.CommandMap("macros",{displaystyle:["SetStyle","D",!0,0],textstyle:["SetStyle","T",!1,0],scriptstyle:["SetStyle","S",!1,1],scriptscriptstyle:["SetStyle","SS",!1,2],rm:["SetFont",a.TexConstant.Variant.NORMAL],mit:["SetFont",a.TexConstant.Variant.ITALIC],oldstyle:["SetFont",a.TexConstant.Variant.OLDSTYLE],cal:["SetFont",a.TexConstant.Variant.CALLIGRAPHIC],it:["SetFont","-tex-mathit"],bf:["SetFont",a.TexConstant.Variant.BOLD],bbFont:["SetFont",a.TexConstant.Variant.DOUBLESTRUCK],scr:["SetFont",a.TexConstant.Variant.SCRIPT],frak:["SetFont",a.TexConstant.Variant.FRAKTUR],sf:["SetFont",a.TexConstant.Variant.SANSSERIF],tt:["SetFont",a.TexConstant.Variant.MONOSPACE],tiny:["SetSize",.5],Tiny:["SetSize",.6],scriptsize:["SetSize",.7],small:["SetSize",.85],normalsize:["SetSize",1],large:["SetSize",1.2],Large:["SetSize",1.44],LARGE:["SetSize",1.73],huge:["SetSize",2.07],Huge:["SetSize",2.49],arcsin:["NamedFn"],arccos:["NamedFn"],arctan:["NamedFn"],arg:["NamedFn"],cos:["NamedFn"],cosh:["NamedFn"],cot:["NamedFn"],coth:["NamedFn"],csc:["NamedFn"],deg:["NamedFn"],det:"NamedOp",dim:["NamedFn"],exp:["NamedFn"],gcd:"NamedOp",hom:["NamedFn"],inf:"NamedOp",ker:["NamedFn"],lg:["NamedFn"],lim:"NamedOp",liminf:["NamedOp","lim inf"],limsup:["NamedOp","lim sup"],ln:["NamedFn"],log:["NamedFn"],max:"NamedOp",min:"NamedOp",Pr:"NamedOp",sec:["NamedFn"],sin:["NamedFn"],sinh:["NamedFn"],sup:"NamedOp",tan:["NamedFn"],tanh:["NamedFn"],limits:["Limits",1],nolimits:["Limits",0],overline:["UnderOver","00AF",null,1],underline:["UnderOver","005F"],overbrace:["UnderOver","23DE",1],underbrace:["UnderOver","23DF",1],overparen:["UnderOver","23DC"],underparen:["UnderOver","23DD"],overrightarrow:["UnderOver","2192"],underrightarrow:["UnderOver","2192"],overleftarrow:["UnderOver","2190"],underleftarrow:["UnderOver","2190"],overleftrightarrow:["UnderOver","2194"],underleftrightarrow:["UnderOver","2194"],overset:"Overset",underset:"Underset",stackrel:["Macro","\\mathrel{\\mathop{#2}\\limits^{#1}}",2],over:"Over",overwithdelims:"Over",atop:"Over",atopwithdelims:"Over",above:"Over",abovewithdelims:"Over",brace:["Over","{","}"],brack:["Over","[","]"],choose:["Over","(",")"],frac:"Frac",sqrt:"Sqrt",root:"Root",uproot:["MoveRoot","upRoot"],leftroot:["MoveRoot","leftRoot"],left:"LeftRight",right:"LeftRight",middle:"Middle",llap:"Lap",rlap:"Lap",raise:"RaiseLower",lower:"RaiseLower",moveleft:"MoveLeftRight",moveright:"MoveLeftRight",",":["Spacer",a.TexConstant.Length.THINMATHSPACE],":":["Spacer",a.TexConstant.Length.MEDIUMMATHSPACE],">":["Spacer",a.TexConstant.Length.MEDIUMMATHSPACE],";":["Spacer",a.TexConstant.Length.THICKMATHSPACE],"!":["Spacer",a.TexConstant.Length.NEGATIVETHINMATHSPACE],enspace:["Spacer",".5em"],quad:["Spacer","1em"],qquad:["Spacer","2em"],thinspace:["Spacer",a.TexConstant.Length.THINMATHSPACE],negthinspace:["Spacer",a.TexConstant.Length.NEGATIVETHINMATHSPACE],hskip:"Hskip",hspace:"Hskip",kern:"Hskip",mskip:"Hskip",mspace:"Hskip",mkern:"Hskip",rule:"rule",Rule:["Rule"],Space:["Rule","blank"],big:["MakeBig",s.TEXCLASS.ORD,.85],Big:["MakeBig",s.TEXCLASS.ORD,1.15],bigg:["MakeBig",s.TEXCLASS.ORD,1.45],Bigg:["MakeBig",s.TEXCLASS.ORD,1.75],bigl:["MakeBig",s.TEXCLASS.OPEN,.85],Bigl:["MakeBig",s.TEXCLASS.OPEN,1.15],biggl:["MakeBig",s.TEXCLASS.OPEN,1.45],Biggl:["MakeBig",s.TEXCLASS.OPEN,1.75],bigr:["MakeBig",s.TEXCLASS.CLOSE,.85],Bigr:["MakeBig",s.TEXCLASS.CLOSE,1.15],biggr:["MakeBig",s.TEXCLASS.CLOSE,1.45],Biggr:["MakeBig",s.TEXCLASS.CLOSE,1.75],bigm:["MakeBig",s.TEXCLASS.REL,.85],Bigm:["MakeBig",s.TEXCLASS.REL,1.15],biggm:["MakeBig",s.TEXCLASS.REL,1.45],Biggm:["MakeBig",s.TEXCLASS.REL,1.75],mathord:["TeXAtom",s.TEXCLASS.ORD],mathop:["TeXAtom",s.TEXCLASS.OP],mathopen:["TeXAtom",s.TEXCLASS.OPEN],mathclose:["TeXAtom",s.TEXCLASS.CLOSE],mathbin:["TeXAtom",s.TEXCLASS.BIN],mathrel:["TeXAtom",s.TEXCLASS.REL],mathpunct:["TeXAtom",s.TEXCLASS.PUNCT],mathinner:["TeXAtom",s.TEXCLASS.INNER],vcenter:["TeXAtom",s.TEXCLASS.VCENTER],buildrel:"BuildRel",hbox:["HBox",0],text:"HBox",mbox:["HBox",0],fbox:"FBox",strut:"Strut",mathstrut:["Macro","\\vphantom{(}"],phantom:"Phantom",vphantom:["Phantom",1,0],hphantom:["Phantom",0,1],smash:"Smash",acute:["Accent","00B4"],grave:["Accent","0060"],ddot:["Accent","00A8"],tilde:["Accent","007E"],bar:["Accent","00AF"],breve:["Accent","02D8"],check:["Accent","02C7"],hat:["Accent","005E"],vec:["Accent","2192"],dot:["Accent","02D9"],widetilde:["Accent","007E",1],widehat:["Accent","005E",1],matrix:"Matrix",array:"Matrix",pmatrix:["Matrix","(",")"],cases:["Matrix","{","","left left",null,".1em",null,!0],eqalign:["Matrix",null,null,"right left",a.TexConstant.Length.THICKMATHSPACE,".5em","D"],displaylines:["Matrix",null,null,"center",null,".5em","D"],cr:"Cr","\\":"CrLaTeX",newline:["CrLaTeX",!0],hline:["HLine","solid"],hdashline:["HLine","dashed"],eqalignno:["Matrix",null,null,"right left",a.TexConstant.Length.THICKMATHSPACE,".5em","D",null,"right"],leqalignno:["Matrix",null,null,"right left",a.TexConstant.Length.THICKMATHSPACE,".5em","D",null,"left"],hfill:"HFill",hfil:"HFill",hfilll:"HFill",bmod:["Macro",'\\mmlToken{mo}[lspace="thickmathspace" rspace="thickmathspace"]{mod}'],pmod:["Macro","\\pod{\\mmlToken{mi}{mod}\\kern 6mu #1}",1],mod:["Macro","\\mathchoice{\\kern18mu}{\\kern12mu}{\\kern12mu}{\\kern12mu}\\mmlToken{mi}{mod}\\,\\,#1",1],pod:["Macro","\\mathchoice{\\kern18mu}{\\kern8mu}{\\kern8mu}{\\kern8mu}(#1)",1],iff:["Macro","\\;\\Longleftrightarrow\\;"],skew:["Macro","{{#2{#3\\mkern#1mu}\\mkern-#1mu}{}}",3],mathcal:["Macro","{\\cal #1}",1],mathscr:["Macro","{\\scr #1}",1],mathrm:["Macro","{\\rm #1}",1],mathbf:["Macro","{\\bf #1}",1],mathbb:["Macro","{\\bbFont #1}",1],Bbb:["Macro","{\\bbFont #1}",1],mathit:["Macro","{\\it #1}",1],mathfrak:["Macro","{\\frak #1}",1],mathsf:["Macro","{\\sf #1}",1],mathtt:["Macro","{\\tt #1}",1],textrm:["HBox",null,a.TexConstant.Variant.NORMAL],textit:["HBox",null,a.TexConstant.Variant.ITALIC],textbf:["HBox",null,a.TexConstant.Variant.BOLD],textsf:["HBox",null,a.TexConstant.Variant.SANSSERIF],texttt:["HBox",null,a.TexConstant.Variant.MONOSPACE],pmb:["Macro","\\rlap{#1}\\kern1px{#1}",1],TeX:["Macro","T\\kern-.14em\\lower.5ex{E}\\kern-.115em X"],LaTeX:["Macro","L\\kern-.325em\\raise.21em{\\scriptstyle{A}}\\kern-.17em\\TeX"]," ":["Macro","\\text{ }"],not:"Not",dots:"Dots",space:"Tilde","\xa0":"Tilde",begin:"BeginEnd",end:"BeginEnd",label:"HandleLabel",ref:"HandleRef",nonumber:"HandleNoTag",mathchoice:"MathChoice",mmlToken:"MmlToken"},o.default),new n.EnvironmentMap("environment",i.default.environment,{array:["AlignedArray"],equation:["Equation",null,!0],"equation*":["Equation",null,!1],eqnarray:["EqnArray",null,!0,!0,"rcl","0 "+a.TexConstant.Length.THICKMATHSPACE,".5em"]},o.default),new n.CharacterMap("not_remap",null,{"\u2190":"\u219a","\u2192":"\u219b","\u2194":"\u21ae","\u21d0":"\u21cd","\u21d2":"\u21cf","\u21d4":"\u21ce","\u2208":"\u2209","\u220b":"\u220c","\u2223":"\u2224","\u2225":"\u2226","\u223c":"\u2241","~":"\u2241","\u2243":"\u2244","\u2245":"\u2247","\u2248":"\u2249","\u224d":"\u226d","=":"\u2260","\u2261":"\u2262","<":"\u226e",">":"\u226f","\u2264":"\u2270","\u2265":"\u2271","\u2272":"\u2274","\u2273":"\u2275","\u2276":"\u2278","\u2277":"\u2279","\u227a":"\u2280","\u227b":"\u2281","\u2282":"\u2284","\u2283":"\u2285","\u2286":"\u2288","\u2287":"\u2289","\u22a2":"\u22ac","\u22a8":"\u22ad","\u22a9":"\u22ae","\u22ab":"\u22af","\u227c":"\u22e0","\u227d":"\u22e1","\u2291":"\u22e2","\u2292":"\u22e3","\u22b2":"\u22ea","\u22b3":"\u22eb","\u22b4":"\u22ec","\u22b5":"\u22ed","\u2203":"\u2204"})},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),r(13).add({Pcy:"\u041f",Poincareplane:"\u210c",Pr:"\u2abb",Prime:"\u2033",Proportion:"\u2237",par:"\u2225",para:"\xb6",parallel:"\u2225",parsim:"\u2af3",parsl:"\u2afd",part:"\u2202",pcy:"\u043f",percnt:"%",permil:"\u2030",perp:"\u22a5",pertenk:"\u2031",phmmat:"\u2133",phone:"\u260e",pitchfork:"\u22d4",planck:"\u210f",planckh:"\u210e",plankv:"\u210f",plus:"+",plusacir:"\u2a23",plusb:"\u229e",pluscir:"\u2a22",plusdo:"\u2214",plusdu:"\u2a25",pluse:"\u2a72",plusmn:"\xb1",plussim:"\u2a26",plustwo:"\u2a27",pm:"\xb1",pointint:"\u2a15",pound:"\xa3",pr:"\u227a",prE:"\u2ab3",prcue:"\u227c",pre:"\u2aaf",prec:"\u227a",precapprox:"\u2ab7",preccurlyeq:"\u227c",preceq:"\u2aaf",precsim:"\u227e",primes:"\u2119",prnE:"\u2ab5",prnap:"\u2ab9",prnsim:"\u22e8",prod:"\u220f",profalar:"\u232e",profline:"\u2312",profsurf:"\u2313",prop:"\u221d",propto:"\u221d",prsim:"\u227e",prurel:"\u22b0",puncsp:"\u2008"},"p")},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),r(13).add({RBarr:"\u2910",REG:"\xae",Racute:"\u0154",Rang:"\u27eb",Rarrtl:"\u2916",Rcaron:"\u0158",Rcedil:"\u0156",Rcy:"\u0420",ReverseElement:"\u220b",ReverseUpEquilibrium:"\u296f",Rho:"\u03a1",RightArrowBar:"\u21e5",RightDoubleBracket:"\u27e7",RightDownTeeVector:"\u295d",RightDownVectorBar:"\u2955",RightTeeVector:"\u295b",RightTriangleBar:"\u29d0",RightUpDownVector:"\u294f",RightUpTeeVector:"\u295c",RightUpVectorBar:"\u2954",RightVectorBar:"\u2953",RoundImplies:"\u2970",RuleDelayed:"\u29f4",rAarr:"\u21db",rArr:"\u21d2",rAtail:"\u291c",rBarr:"\u290f",rHar:"\u2964",race:"\u223d\u0331",racute:"\u0155",radic:"\u221a",raemptyv:"\u29b3",rang:"\u27e9",rangd:"\u2992",range:"\u29a5",rangle:"\u27e9",raquo:"\xbb",rarr:"\u2192",rarrap:"\u2975",rarrb:"\u21e5",rarrbfs:"\u2920",rarrc:"\u2933",rarrfs:"\u291e",rarrhk:"\u21aa",rarrlp:"\u21ac",rarrpl:"\u2945",rarrsim:"\u2974",rarrw:"\u219d",ratail:"\u291a",ratio:"\u2236",rationals:"\u211a",rbarr:"\u290d",rbbrk:"\u2773",rbrke:"\u298c",rbrksld:"\u298e",rbrkslu:"\u2990",rcaron:"\u0159",rcedil:"\u0157",rceil:"\u2309",rcub:"}",rcy:"\u0440",rdca:"\u2937",rdldhar:"\u2969",rdquo:"\u201d",rdquor:"\u201d",rdsh:"\u21b3",real:"\u211c",realine:"\u211b",realpart:"\u211c",reals:"\u211d",rect:"\u25ad",reg:"\xae",rfisht:"\u297d",rfloor:"\u230b",rhard:"\u21c1",rharu:"\u21c0",rharul:"\u296c",rightarrow:"\u2192",rightarrowtail:"\u21a3",rightharpoondown:"\u21c1",rightharpoonup:"\u21c0",rightleftarrows:"\u21c4",rightleftharpoons:"\u21cc",rightsquigarrow:"\u219d",risingdotseq:"\u2253",rlarr:"\u21c4",rlhar:"\u21cc",rlm:"\u200f",rmoustache:"\u23b1",rnmid:"\u2aee",roang:"\u27ed",roarr:"\u21fe",robrk:"\u27e7",ropar:"\u2986",roplus:"\u2a2e",rotimes:"\u2a35",rpar:")",rpargt:"\u2994",rppolint:"\u2a12",rrarr:"\u21c9",rsaquo:"\u203a",rsh:"\u21b1",rsqb:"]",rsquo:"\u2019",rsquor:"\u2019",rthree:"\u22cc",rtrie:"\u22b5",rtrif:"\u25b8",rtriltri:"\u29ce",ruluhar:"\u2968",rx:"\u211e"},"r")},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=r(17),a=r(1),o=r(7),i=r(12),s=r(4),l=r(5),c=function(t){for(var e=[],r=0,n=t.length;r0))return s;if(f.revisit||(t=p.remainder),!f.toContinue)break t}}if(i<=0)throw["MhchemBugU","mhchem bug U. Please report."]}},concatArray:function(t,e){if(e)if(Array.isArray(e))for(var r=0;r":/^[=<>]/,"#":/^[#\u2261]/,"+":/^\+/,"-$":/^-(?=[\s_},;\]/]|$|\([a-z]+\))/,"-9":/^-(?=[0-9])/,"- orbital overlap":/^-(?=(?:[spd]|sp)(?:$|[\s,;\)\]\}]))/,"-":/^-/,"pm-operator":/^(?:\\pm|\$\\pm\$|\+-|\+\/-)/,operator:/^(?:\+|(?:[\-=<>]|<<|>>|\\approx|\$\\approx\$)(?=\s|$|-?[0-9]))/,arrowUpDown:/^(?:v|\(v\)|\^|\(\^\))(?=$|[\s,;\)\]\}])/,"\\bond{(...)}":function(t){return n.patterns.findObserveGroups(t,"\\bond{","","","}")},"->":/^(?:<->|<-->|->|<-|<=>>|<<=>|<=>|[\u2192\u27F6\u21CC])/,CMT:/^[CMT](?=\[)/,"[(...)]":function(t){return n.patterns.findObserveGroups(t,"[","","","]")},"1st-level escape":/^(&|\\\\|\\hline)\s*/,"\\,":/^(?:\\[,\ ;:])/,"\\x{}{}":function(t){return n.patterns.findObserveGroups(t,"",/^\\[a-zA-Z]+\{/,"}","","","{","}","",!0)},"\\x{}":function(t){return n.patterns.findObserveGroups(t,"",/^\\[a-zA-Z]+\{/,"}","")},"\\ca":/^\\ca(?:\s+|(?![a-zA-Z]))/,"\\x":/^(?:\\[a-zA-Z]+\s*|\\[_&{}%])/,orbital:/^(?:[0-9]{1,2}[spdfgh]|[0-9]{0,2}sp)(?=$|[^a-zA-Z])/,others:/^[\/~|]/,"\\frac{(...)}":function(t){return n.patterns.findObserveGroups(t,"\\frac{","","","}","{","","","}")},"\\overset{(...)}":function(t){return n.patterns.findObserveGroups(t,"\\overset{","","","}","{","","","}")},"\\underset{(...)}":function(t){return n.patterns.findObserveGroups(t,"\\underset{","","","}","{","","","}")},"\\underbrace{(...)}":function(t){return n.patterns.findObserveGroups(t,"\\underbrace{","","","}_","{","","","}")},"\\color{(...)}0":function(t){return n.patterns.findObserveGroups(t,"\\color{","","","}")},"\\color{(...)}{(...)}1":function(t){return n.patterns.findObserveGroups(t,"\\color{","","","}","{","","","}")},"\\color(...){(...)}2":function(t){return n.patterns.findObserveGroups(t,"\\color","\\","",/^(?=\{)/,"{","","","}")},"\\ce{(...)}":function(t){return n.patterns.findObserveGroups(t,"\\ce{","","","}")},oxidation$:/^(?:[+-][IVX]+|\\pm\s*0|\$\\pm\$\s*0)$/,"d-oxidation$":/^(?:[+-]?\s?[IVX]+|\\pm\s*0|\$\\pm\$\s*0)$/,"roman numeral":/^[IVX]+/,"1/2$":/^[+\-]?(?:[0-9]+|\$[a-z]\$|[a-z])\/[0-9]+(?:\$[a-z]\$|[a-z])?$/,amount:function(t){var e;if(e=t.match(/^(?:(?:(?:\([+\-]?[0-9]+\/[0-9]+\)|[+\-]?(?:[0-9]+|\$[a-z]\$|[a-z])\/[0-9]+|[+\-]?[0-9]+[.,][0-9]+|[+\-]?\.[0-9]+|[+\-]?[0-9]+)(?:[a-z](?=\s*[A-Z]))?)|[+\-]?[a-z](?=\s*[A-Z])|\+(?!\s))/))return{match_:e[0],remainder:t.substr(e[0].length)};var r=n.patterns.findObserveGroups(t,"","$","$","");return r&&(e=r.match_.match(/^\$(?:\(?[+\-]?(?:[0-9]*[a-z]?[+\-])?[0-9]*[a-z](?:[+\-][0-9]*[a-z]?)?\)?|\+|-)\$$/))?{match_:e[0],remainder:t.substr(e[0].length)}:null},amount2:function(t){return this.amount(t)},"(KV letters),":/^(?:[A-Z][a-z]{0,2}|i)(?=,)/,formula$:function(t){if(t.match(/^\([a-z]+\)$/))return null;var e=t.match(/^(?:[a-z]|(?:[0-9\ \+\-\,\.\(\)]+[a-z])+[0-9\ \+\-\,\.\(\)]*|(?:[a-z][0-9\ \+\-\,\.\(\)]+)+[a-z]?)$/);return e?{match_:e[0],remainder:t.substr(e[0].length)}:null},uprightEntities:/^(?:pH|pOH|pC|pK|iPr|iBu)(?=$|[^a-zA-Z])/,"/":/^\s*(\/)\s*/,"//":/^\s*(\/\/)\s*/,"*":/^\s*[*.]\s*/},findObserveGroups:function(t,e,r,n,a,o,i,s,l,c){var u=function(t,e){if("string"==typeof e)return 0!==t.indexOf(e)?null:e;var r=t.match(e);return r?r[0]:null},p=u(t,e);if(null===p)return null;if(t=t.substr(p.length),null===(p=u(t,r)))return null;var f=function(t,e,r){for(var n=0;e":{"0|1|2|3":{action_:"r=",nextState:"r"},"a|as":{action_:["output","r="],nextState:"r"},"*":{action_:["output","r="],nextState:"r"}},"+":{o:{action_:"d= kv",nextState:"d"},"d|D":{action_:"d=",nextState:"d"},q:{action_:"d=",nextState:"qd"},"qd|qD":{action_:"d=",nextState:"qd"},dq:{action_:["output","d="],nextState:"d"},3:{action_:["sb=false","output","operator"],nextState:"0"}},amount:{"0|2":{action_:"a=",nextState:"a"}},"pm-operator":{"0|1|2|a|as":{action_:["sb=false","output",{type_:"operator",option:"\\pm"}],nextState:"0"}},operator:{"0|1|2|a|as":{action_:["sb=false","output","operator"],nextState:"0"}},"-$":{"o|q":{action_:["charge or bond","output"],nextState:"qd"},d:{action_:"d=",nextState:"d"},D:{action_:["output",{type_:"bond",option:"-"}],nextState:"3"},q:{action_:"d=",nextState:"qd"},qd:{action_:"d=",nextState:"qd"},"qD|dq":{action_:["output",{type_:"bond",option:"-"}],nextState:"3"}},"-9":{"3|o":{action_:["output",{type_:"insert",option:"hyphen"}],nextState:"3"}},"- orbital overlap":{o:{action_:["output",{type_:"insert",option:"hyphen"}],nextState:"2"},d:{action_:["output",{type_:"insert",option:"hyphen"}],nextState:"2"}},"-":{"0|1|2":{action_:[{type_:"output",option:1},"beginsWithBond=true",{type_:"bond",option:"-"}],nextState:"3"},3:{action_:{type_:"bond",option:"-"}},a:{action_:["output",{type_:"insert",option:"hyphen"}],nextState:"2"},as:{action_:[{type_:"output",option:2},{type_:"bond",option:"-"}],nextState:"3"},b:{action_:"b="},o:{action_:{type_:"- after o/d",option:!1},nextState:"2"},q:{action_:{type_:"- after o/d",option:!1},nextState:"2"},"d|qd|dq":{action_:{type_:"- after o/d",option:!0},nextState:"2"},"D|qD|p":{action_:["output",{type_:"bond",option:"-"}],nextState:"3"}},amount2:{"1|3":{action_:"a=",nextState:"a"}},letters:{"0|1|2|3|a|as|b|p|bp|o":{action_:"o=",nextState:"o"},"q|dq":{action_:["output","o="],nextState:"o"},"d|D|qd|qD":{action_:"o after d",nextState:"o"}},digits:{o:{action_:"q=",nextState:"q"},"d|D":{action_:"q=",nextState:"dq"},q:{action_:["output","o="],nextState:"o"},a:{action_:"o=",nextState:"o"}},"space A":{"b|p|bp":{}},space:{a:{nextState:"as"},0:{action_:"sb=false"},"1|2":{action_:"sb=true"},"r|rt|rd|rdt|rdq":{action_:"output",nextState:"0"},"*":{action_:["output","sb=true"],nextState:"1"}},"1st-level escape":{"1|2":{action_:["output",{type_:"insert+p1",option:"1st-level escape"}]},"*":{action_:["output",{type_:"insert+p1",option:"1st-level escape"}],nextState:"0"}},"[(...)]":{"r|rt":{action_:"rd=",nextState:"rd"},"rd|rdt":{action_:"rq=",nextState:"rdq"}},"...":{"o|d|D|dq|qd|qD":{action_:["output",{type_:"bond",option:"..."}],nextState:"3"},"*":{action_:[{type_:"output",option:1},{type_:"insert",option:"ellipsis"}],nextState:"1"}},". |* ":{"*":{action_:["output",{type_:"insert",option:"addition compound"}],nextState:"1"}},"state of aggregation $":{"*":{action_:["output","state of aggregation"],nextState:"1"}},"{[(":{"a|as|o":{action_:["o=","output","parenthesisLevel++"],nextState:"2"},"0|1|2|3":{action_:["o=","output","parenthesisLevel++"],nextState:"2"},"*":{action_:["output","o=","output","parenthesisLevel++"],nextState:"2"}},")]}":{"0|1|2|3|b|p|bp|o":{action_:["o=","parenthesisLevel--"],nextState:"o"},"a|as|d|D|q|qd|qD|dq":{action_:["output","o=","parenthesisLevel--"],nextState:"o"}},", ":{"*":{action_:["output","comma"],nextState:"0"}},"^_":{"*":{}},"^{(...)}|^($...$)":{"0|1|2|as":{action_:"b=",nextState:"b"},p:{action_:"b=",nextState:"bp"},"3|o":{action_:"d= kv",nextState:"D"},q:{action_:"d=",nextState:"qD"},"d|D|qd|qD|dq":{action_:["output","d="],nextState:"D"}},"^a|^\\x{}{}|^\\x{}|^\\x|'":{"0|1|2|as":{action_:"b=",nextState:"b"},p:{action_:"b=",nextState:"bp"},"3|o":{action_:"d= kv",nextState:"d"},q:{action_:"d=",nextState:"qd"},"d|qd|D|qD":{action_:"d="},dq:{action_:["output","d="],nextState:"d"}},"_{(state of aggregation)}$":{"d|D|q|qd|qD|dq":{action_:["output","q="],nextState:"q"}},"_{(...)}|_($...$)|_9|_\\x{}{}|_\\x{}|_\\x":{"0|1|2|as":{action_:"p=",nextState:"p"},b:{action_:"p=",nextState:"bp"},"3|o":{action_:"q=",nextState:"q"},"d|D":{action_:"q=",nextState:"dq"},"q|qd|qD|dq":{action_:["output","q="],nextState:"q"}},"=<>":{"0|1|2|3|a|as|o|q|d|D|qd|qD|dq":{action_:[{type_:"output",option:2},"bond"],nextState:"3"}},"#":{"0|1|2|3|a|as|o":{action_:[{type_:"output",option:2},{type_:"bond",option:"#"}],nextState:"3"}},"{}":{"*":{action_:{type_:"output",option:1},nextState:"1"}},"{...}":{"0|1|2|3|a|as|b|p|bp":{action_:"o=",nextState:"o"},"o|d|D|q|qd|qD|dq":{action_:["output","o="],nextState:"o"}},"$...$":{a:{action_:"a="},"0|1|2|3|as|b|p|bp|o":{action_:"o=",nextState:"o"},"as|o":{action_:"o="},"q|d|D|qd|qD|dq":{action_:["output","o="],nextState:"o"}},"\\bond{(...)}":{"*":{action_:[{type_:"output",option:2},"bond"],nextState:"3"}},"\\frac{(...)}":{"*":{action_:[{type_:"output",option:1},"frac-output"],nextState:"3"}},"\\overset{(...)}":{"*":{action_:[{type_:"output",option:2},"overset-output"],nextState:"3"}},"\\underset{(...)}":{"*":{action_:[{type_:"output",option:2},"underset-output"],nextState:"3"}},"\\underbrace{(...)}":{"*":{action_:[{type_:"output",option:2},"underbrace-output"],nextState:"3"}},"\\color{(...)}{(...)}1|\\color(...){(...)}2":{"*":{action_:[{type_:"output",option:2},"color-output"],nextState:"3"}},"\\color{(...)}0":{"*":{action_:[{type_:"output",option:2},"color0-output"]}},"\\ce{(...)}":{"*":{action_:[{type_:"output",option:2},"ce"],nextState:"3"}},"\\,":{"*":{action_:[{type_:"output",option:1},"copy"],nextState:"1"}},"\\x{}{}|\\x{}|\\x":{"0|1|2|3|a|as|b|p|bp|o|c0":{action_:["o=","output"],nextState:"3"},"*":{action_:["output","o=","output"],nextState:"3"}},others:{"*":{action_:[{type_:"output",option:1},"copy"],nextState:"3"}},else2:{a:{action_:"a to o",nextState:"o",revisit:!0},as:{action_:["output","sb=true"],nextState:"1",revisit:!0},"r|rt|rd|rdt|rdq":{action_:["output"],nextState:"0",revisit:!0},"*":{action_:["output","copy"],nextState:"3"}}}),actions:{"o after d":function(t,e){var r;if((t.d||"").match(/^[0-9]+$/)){var a=t.d;t.d=void 0,r=this.output(t),t.b=a}else r=this.output(t);return n.actions["o="](t,e),r},"d= kv":function(t,e){t.d=e,t.dType="kv"},"charge or bond":function(t,e){if(t.beginsWithBond){var r=[];return n.concatArray(r,this.output(t)),n.concatArray(r,n.actions.bond(t,e,"-")),r}t.d=e},"- after o/d":function(t,e,r){var a=n.patterns.match_("orbital",t.o||""),o=n.patterns.match_("one lowercase greek letter $",t.o||""),i=n.patterns.match_("one lowercase latin letter $",t.o||""),s=n.patterns.match_("$one lowercase latin letter$ $",t.o||""),l="-"===e&&(a&&""===a.remainder||o||i||s);!l||t.a||t.b||t.p||t.d||t.q||a||!i||(t.o="$"+t.o+"$");var c=[];return l?(n.concatArray(c,this.output(t)),c.push({type_:"hyphen"})):(a=n.patterns.match_("digits",t.d||""),r&&a&&""===a.remainder?(n.concatArray(c,n.actions["d="](t,e)),n.concatArray(c,this.output(t))):(n.concatArray(c,this.output(t)),n.concatArray(c,n.actions.bond(t,e,"-")))),c},"a to o":function(t){t.o=t.a,t.a=void 0},"sb=true":function(t){t.sb=!0},"sb=false":function(t){t.sb=!1},"beginsWithBond=true":function(t){t.beginsWithBond=!0},"beginsWithBond=false":function(t){t.beginsWithBond=!1},"parenthesisLevel++":function(t){t.parenthesisLevel++},"parenthesisLevel--":function(t){t.parenthesisLevel--},"state of aggregation":function(t,e){return{type_:"state of aggregation",p1:n.go(e,"o")}},comma:function(t,e){var r=e.replace(/\s*$/,"");return r!==e&&0===t.parenthesisLevel?{type_:"comma enumeration L",p1:r}:{type_:"comma enumeration M",p1:r}},output:function(t,e,r){var a,o,i;t.r?(o="M"===t.rdt?n.go(t.rd,"tex-math"):"T"===t.rdt?[{type_:"text",p1:t.rd||""}]:n.go(t.rd),i="M"===t.rqt?n.go(t.rq,"tex-math"):"T"===t.rqt?[{type_:"text",p1:t.rq||""}]:n.go(t.rq),a={type_:"arrow",r:t.r,rd:o,rq:i}):(a=[],(t.a||t.b||t.p||t.o||t.q||t.d||r)&&(t.sb&&a.push({type_:"entitySkip"}),t.o||t.q||t.d||t.b||t.p||2===r?t.o||t.q||t.d||!t.b&&!t.p?t.o&&"kv"===t.dType&&n.patterns.match_("d-oxidation$",t.d||"")?t.dType="oxidation":t.o&&"kv"===t.dType&&!t.q&&(t.dType=void 0):(t.o=t.a,t.d=t.b,t.q=t.p,t.a=t.b=t.p=void 0):(t.o=t.a,t.a=void 0),a.push({type_:"chemfive",a:n.go(t.a,"a"),b:n.go(t.b,"bd"),p:n.go(t.p,"pq"),o:n.go(t.o,"o"),q:n.go(t.q,"pq"),d:n.go(t.d,"oxidation"===t.dType?"oxidation":"bd"),dType:t.dType})));for(var s in t)"parenthesisLevel"!==s&&"beginsWithBond"!==s&&delete t[s];return a},"oxidation-output":function(t,e){var r=["{"];return n.concatArray(r,n.go(e,"oxidation")),r.push("}"),r},"frac-output":function(t,e){return{type_:"frac-ce",p1:n.go(e[0]),p2:n.go(e[1])}},"overset-output":function(t,e){return{type_:"overset",p1:n.go(e[0]),p2:n.go(e[1])}},"underset-output":function(t,e){return{type_:"underset",p1:n.go(e[0]),p2:n.go(e[1])}},"underbrace-output":function(t,e){return{type_:"underbrace",p1:n.go(e[0]),p2:n.go(e[1])}},"color-output":function(t,e){return{type_:"color",color1:e[0],color2:n.go(e[1])}},"r=":function(t,e){t.r=e},"rdt=":function(t,e){t.rdt=e},"rd=":function(t,e){t.rd=e},"rqt=":function(t,e){t.rqt=e},"rq=":function(t,e){t.rq=e},operator:function(t,e,r){return{type_:"operator",kind_:r||e}}}},a:{transitions:n.createTransitions({empty:{"*":{}},"1/2$":{0:{action_:"1/2"}},else:{0:{nextState:"1",revisit:!0}},"$(...)$":{"*":{action_:"tex-math tight",nextState:"1"}},",":{"*":{action_:{type_:"insert",option:"commaDecimal"}}},else2:{"*":{action_:"copy"}}}),actions:{}},o:{transitions:n.createTransitions({empty:{"*":{}},"1/2$":{0:{action_:"1/2"}},else:{0:{nextState:"1",revisit:!0}},letters:{"*":{action_:"rm"}},"\\ca":{"*":{action_:{type_:"insert",option:"circa"}}},"\\x{}{}|\\x{}|\\x":{"*":{action_:"copy"}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},"{(...)}":{"*":{action_:"{text}"}},else2:{"*":{action_:"copy"}}}),actions:{}},text:{transitions:n.createTransitions({empty:{"*":{action_:"output"}},"{...}":{"*":{action_:"text="}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},"\\greek":{"*":{action_:["output","rm"]}},"\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:["output","copy"]}},else:{"*":{action_:"text="}}}),actions:{output:function(t){if(t.text_){var e={type_:"text",p1:t.text_};for(var r in t)delete t[r];return e}}}},pq:{transitions:n.createTransitions({empty:{"*":{}},"state of aggregation $":{"*":{action_:"state of aggregation"}},i$:{0:{nextState:"!f",revisit:!0}},"(KV letters),":{0:{action_:"rm",nextState:"0"}},formula$:{0:{nextState:"f",revisit:!0}},"1/2$":{0:{action_:"1/2"}},else:{0:{nextState:"!f",revisit:!0}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},"{(...)}":{"*":{action_:"text"}},"a-z":{f:{action_:"tex-math"}},letters:{"*":{action_:"rm"}},"-9.,9":{"*":{action_:"9,9"}},",":{"*":{action_:{type_:"insert+p1",option:"comma enumeration S"}}},"\\color{(...)}{(...)}1|\\color(...){(...)}2":{"*":{action_:"color-output"}},"\\color{(...)}0":{"*":{action_:"color0-output"}},"\\ce{(...)}":{"*":{action_:"ce"}},"\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:"copy"}},else2:{"*":{action_:"copy"}}}),actions:{"state of aggregation":function(t,e){return{type_:"state of aggregation subscript",p1:n.go(e,"o")}},"color-output":function(t,e){return{type_:"color",color1:e[0],color2:n.go(e[1],"pq")}}}},bd:{transitions:n.createTransitions({empty:{"*":{}},x$:{0:{nextState:"!f",revisit:!0}},formula$:{0:{nextState:"f",revisit:!0}},else:{0:{nextState:"!f",revisit:!0}},"-9.,9 no missing 0":{"*":{action_:"9,9"}},".":{"*":{action_:{type_:"insert",option:"electron dot"}}},"a-z":{f:{action_:"tex-math"}},x:{"*":{action_:{type_:"insert",option:"KV x"}}},letters:{"*":{action_:"rm"}},"'":{"*":{action_:{type_:"insert",option:"prime"}}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},"{(...)}":{"*":{action_:"text"}},"\\color{(...)}{(...)}1|\\color(...){(...)}2":{"*":{action_:"color-output"}},"\\color{(...)}0":{"*":{action_:"color0-output"}},"\\ce{(...)}":{"*":{action_:"ce"}},"\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:"copy"}},else2:{"*":{action_:"copy"}}}),actions:{"color-output":function(t,e){return{type_:"color",color1:e[0],color2:n.go(e[1],"bd")}}}},oxidation:{transitions:n.createTransitions({empty:{"*":{}},"roman numeral":{"*":{action_:"roman-numeral"}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},else:{"*":{action_:"copy"}}}),actions:{"roman-numeral":function(t,e){return{type_:"roman numeral",p1:e||""}}}},"tex-math":{transitions:n.createTransitions({empty:{"*":{action_:"output"}},"\\ce{(...)}":{"*":{action_:["output","ce"]}},"{...}|\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:"o="}},else:{"*":{action_:"o="}}}),actions:{output:function(t){if(t.o){var e={type_:"tex-math",p1:t.o};for(var r in t)delete t[r];return e}}}},"tex-math tight":{transitions:n.createTransitions({empty:{"*":{action_:"output"}},"\\ce{(...)}":{"*":{action_:["output","ce"]}},"{...}|\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:"o="}},"-|+":{"*":{action_:"tight operator"}},else:{"*":{action_:"o="}}}),actions:{"tight operator":function(t,e){t.o=(t.o||"")+"{"+e+"}"},output:function(t){if(t.o){var e={type_:"tex-math",p1:t.o};for(var r in t)delete t[r];return e}}}},"9,9":{transitions:n.createTransitions({empty:{"*":{}},",":{"*":{action_:"comma"}},else:{"*":{action_:"copy"}}}),actions:{comma:function(){return{type_:"commaDecimal"}}}},pu:{transitions:n.createTransitions({empty:{"*":{action_:"output"}},space$:{"*":{action_:["output","space"]}},"{[(|)]}":{"0|a":{action_:"copy"}},"(-)(9)^(-9)":{0:{action_:"number^",nextState:"a"}},"(-)(9.,9)(e)(99)":{0:{action_:"enumber",nextState:"a"}},space:{"0|a":{}},"pm-operator":{"0|a":{action_:{type_:"operator",option:"\\pm"},nextState:"0"}},operator:{"0|a":{action_:"copy",nextState:"0"}},"//":{d:{action_:"o=",nextState:"/"}},"/":{d:{action_:"o=",nextState:"/"}},"{...}|else":{"0|d":{action_:"d=",nextState:"d"},a:{action_:["space","d="],nextState:"d"},"/|q":{action_:"q=",nextState:"q"}}}),actions:{enumber:function(t,e){var r=[];return"+-"===e[0]||"+/-"===e[0]?r.push("\\pm "):e[0]&&r.push(e[0]),e[1]&&(n.concatArray(r,n.go(e[1],"pu-9,9")),e[2]&&(e[2].match(/[,.]/)?n.concatArray(r,n.go(e[2],"pu-9,9")):r.push(e[2])),e[3]=e[4]||e[3],e[3]&&(e[3]=e[3].trim(),"e"===e[3]||"*"===e[3].substr(0,1)?r.push({type_:"cdot"}):r.push({type_:"times"}))),e[3]&&r.push("10^{"+e[5]+"}"),r},"number^":function(t,e){var r=[];return"+-"===e[0]||"+/-"===e[0]?r.push("\\pm "):e[0]&&r.push(e[0]),n.concatArray(r,n.go(e[1],"pu-9,9")),r.push("^{"+e[2]+"}"),r},operator:function(t,e,r){return{type_:"operator",kind_:r||e}},space:function(){return{type_:"pu-space-1"}},output:function(t){var e,r=n.patterns.match_("{(...)}",t.d||"");r&&""===r.remainder&&(t.d=r.match_);var a=n.patterns.match_("{(...)}",t.q||"");if(a&&""===a.remainder&&(t.q=a.match_),t.d&&(t.d=t.d.replace(/\u00B0C|\^oC|\^{o}C/g,"{}^{\\circ}C"),t.d=t.d.replace(/\u00B0F|\^oF|\^{o}F/g,"{}^{\\circ}F")),t.q){t.q=t.q.replace(/\u00B0C|\^oC|\^{o}C/g,"{}^{\\circ}C"),t.q=t.q.replace(/\u00B0F|\^oF|\^{o}F/g,"{}^{\\circ}F");var o={d:n.go(t.d,"pu"),q:n.go(t.q,"pu")};"//"===t.o?e={type_:"pu-frac",p1:o.d,p2:o.q}:(e=o.d,o.d.length>1||o.q.length>1?e.push({type_:" / "}):e.push({type_:"/"}),n.concatArray(e,o.q))}else e=n.go(t.d,"pu-2");for(var i in t)delete t[i];return e}}},"pu-2":{transitions:n.createTransitions({empty:{"*":{action_:"output"}},"*":{"*":{action_:["output","cdot"],nextState:"0"}},"\\x":{"*":{action_:"rm="}},space:{"*":{action_:["output","space"],nextState:"0"}},"^{(...)}|^(-1)":{1:{action_:"^(-1)"}},"-9.,9":{0:{action_:"rm=",nextState:"0"},1:{action_:"^(-1)",nextState:"0"}},"{...}|else":{"*":{action_:"rm=",nextState:"1"}}}),actions:{cdot:function(){return{type_:"tight cdot"}},"^(-1)":function(t,e){t.rm+="^{"+e+"}"},space:function(){return{type_:"pu-space-2"}},output:function(t){var e=[];if(t.rm){var r=n.patterns.match_("{(...)}",t.rm||"");e=r&&""===r.remainder?n.go(r.match_,"pu"):{type_:"rm",p1:t.rm}}for(var a in t)delete t[a];return e}}},"pu-9,9":{transitions:n.createTransitions({empty:{0:{action_:"output-0"},o:{action_:"output-o"}},",":{0:{action_:["output-0","comma"],nextState:"o"}},".":{0:{action_:["output-0","copy"],nextState:"o"}},else:{"*":{action_:"text="}}}),actions:{comma:function(){return{type_:"commaDecimal"}},"output-0":function(t){var e=[];if(t.text_=t.text_||"",t.text_.length>4){var r=t.text_.length%3;0===r&&(r=3);for(var n=t.text_.length-3;n>0;n-=3)e.push(t.text_.substr(n,3)),e.push({type_:"1000 separator"});e.push(t.text_.substr(0,r)),e.reverse()}else e.push(t.text_);for(var a in t)delete t[a];return e},"output-o":function(t){var e=[];if(t.text_=t.text_||"",t.text_.length>4){for(var r=t.text_.length-3,n=0;n"===t.r||"<=>>"===t.r||"<<=>"===t.r||"<--\x3e"===t.r?(s="\\long"+s,i.rd&&(s="\\overset{"+i.rd+"}{"+s+"}"),i.rq&&(s="\\underset{\\lower7mu{"+i.rq+"}}{"+s+"}"),s=" {}\\mathrel{"+s+"}{} "):(i.rq&&(s+="[{"+i.rq+"}]"),s=" {}\\mathrel{\\x"+(s+="{"+i.rd+"}")+"}{} "):s=" {}\\mathrel{\\long"+s+"}{} ",e=s;break;case"operator":e=a._getOperator(t.kind_);break;case"1st-level escape":e=t.p1+" ";break;case"space":e=" ";break;case"entitySkip":case"pu-space-1":e="~";break;case"pu-space-2":e="\\mkern3mu ";break;case"1000 separator":e="\\mkern2mu ";break;case"commaDecimal":e="{,}";break;case"comma enumeration L":e="{"+t.p1+"}\\mkern6mu ";break;case"comma enumeration M":e="{"+t.p1+"}\\mkern3mu ";break;case"comma enumeration S":e="{"+t.p1+"}\\mkern1mu ";break;case"hyphen":e="\\text{-}";break;case"addition compound":e="\\,{\\cdot}\\,";break;case"electron dot":e="\\mkern1mu \\bullet\\mkern1mu ";break;case"KV x":e="{\\times}";break;case"prime":e="\\prime ";break;case"cdot":e="\\cdot ";break;case"tight cdot":e="\\mkern1mu{\\cdot}\\mkern1mu ";break;case"times":e="\\times ";break;case"circa":e="{\\sim}";break;case"^":e="uparrow";break;case"v":e="downarrow";break;case"ellipsis":e="\\ldots ";break;case"/":e="/";break;case" / ":e="\\,/\\,";break;default:throw["MhchemBugT","mhchem bug T. Please report."]}return e},_getArrow:function(t){switch(t){case"->":case"\u2192":case"\u27f6":return"rightarrow";case"<-":return"leftarrow";case"<->":return"leftrightarrow";case"<--\x3e":return"leftrightarrows";case"<=>":case"\u21cc":return"rightleftharpoons";case"<=>>":return"Rightleftharpoons";case"<<=>":return"Leftrightharpoons";default:throw["MhchemBugT","mhchem bug T. Please report."]}},_getBond:function(t){switch(t){case"-":case"1":return"{-}";case"=":case"2":return"{=}";case"#":case"3":return"{\\equiv}";case"~":return"{\\tripledash}";case"~-":return"{\\rlap{\\lower.1em{-}}\\raise.1em{\\tripledash}}";case"~=":case"~--":return"{\\rlap{\\lower.2em{-}}\\rlap{\\raise.2em{\\tripledash}}-}";case"-~-":return"{\\rlap{\\lower.2em{-}}\\rlap{\\raise.2em{-}}\\tripledash}";case"...":return"{{\\cdot}{\\cdot}{\\cdot}}";case"....":return"{{\\cdot}{\\cdot}{\\cdot}{\\cdot}}";case"->":return"{\\rightarrow}";case"<-":return"{\\leftarrow}";case"<":return"{<}";case">":return"{>}";default:throw["MhchemBugT","mhchem bug T. Please report."]}},_getOperator:function(t){switch(t){case"+":return" {}+{} ";case"-":return" {}-{} ";case"=":return" {}={} ";case"<":return" {}<{} ";case">":return" {}>{} ";case"<<":return" {}\\ll{} ";case">>":return" {}\\gg{} ";case"\\pm":return" {}\\pm{} ";case"\\approx":case"$\\approx$":return" {}\\approx{} ";case"v":case"(v)":return" \\downarrow{} ";case"^":case"(^)":return" \\uparrow{} ";default:throw["MhchemBugT","mhchem bug T. Please report."]}}};function o(t){}function i(t){}e.mhchemParser=n,e.texify=a,e.assertNever=o,e.assertString=i},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=r(1),a=r(64),o=r(7),i=r(12),s=r(5);new n.CommandMap("Physics-automatic-bracing-macros",{quantity:"Quantity",qty:"Quantity",pqty:["Quantity","(",")",!0],bqty:["Quantity","[","]",!0],vqty:["Quantity","|","|",!0],Bqty:["Quantity","{","}",!0],absolutevalue:["Quantity","|","|",!0],abs:["Quantity","|","|",!0],norm:["Quantity","\\|","\\|",!0],evaluated:"Eval",eval:"Eval",order:["Quantity","(",")",!0,"O",o.TexConstant.Variant.CALLIGRAPHIC],commutator:"Commutator",comm:"Commutator",anticommutator:["Commutator","\\{","\\}"],acomm:["Commutator","\\{","\\}"],poissonbracket:["Commutator","\\{","\\}"],pb:["Commutator","\\{","\\}"]},a.default),new n.CharacterMap("Physics-vector-chars",i.default.mathchar0mi,{dotproduct:["\u22c5",{mathvariant:o.TexConstant.Variant.BOLD}],vdot:["\u22c5",{mathvariant:o.TexConstant.Variant.BOLD}],crossproduct:"\xd7",cross:"\xd7",cp:"\xd7",gradientnabla:["\u2207",{mathvariant:o.TexConstant.Variant.BOLD}],real:["\u211c",{mathvariant:o.TexConstant.Variant.NORMAL}],imaginary:["\u2111",{mathvariant:o.TexConstant.Variant.NORMAL}]}),new n.CommandMap("Physics-vector-macros",{vectorbold:"VectorBold",vb:"VectorBold",vectorarrow:["StarMacro",1,"\\vec{\\vb","{#1}}"],va:["StarMacro",1,"\\vec{\\vb","{#1}}"],vectorunit:["StarMacro",1,"\\hat{\\vb","{#1}}"],vu:["StarMacro",1,"\\hat{\\vb","{#1}}"],gradient:["OperatorApplication","\\gradientnabla","(","["],grad:["OperatorApplication","\\gradientnabla","(","["],divergence:["VectorOperator","\\gradientnabla\\vdot","(","["],div:["VectorOperator","\\gradientnabla\\vdot","(","["],curl:["VectorOperator","\\gradientnabla\\crossproduct","(","["],laplacian:["OperatorApplication","\\nabla^2","(","["]},a.default),new n.CommandMap("Physics-expressions-macros",{sin:"Expression",sinh:"Expression",arcsin:"Expression",asin:"Expression",cos:"Expression",cosh:"Expression",arccos:"Expression",acos:"Expression",tan:"Expression",tanh:"Expression",arctan:"Expression",atan:"Expression",csc:"Expression",csch:"Expression",arccsc:"Expression",acsc:"Expression",sec:"Expression",sech:"Expression",arcsec:"Expression",asec:"Expression",cot:"Expression",coth:"Expression",arccot:"Expression",acot:"Expression",exp:["Expression",!1],log:"Expression",ln:"Expression",det:["Expression",!1],Pr:["Expression",!1],tr:["Expression",!1],trace:["Expression",!1,"tr"],Tr:["Expression",!1],Trace:["Expression",!1,"Tr"],rank:"NamedFn",erf:["Expression",!1],Res:["OperatorApplication","{\\rm Res}","(","[","{"],principalvalue:["OperatorApplication","{\\cal P}"],pv:["OperatorApplication","{\\cal P}"],PV:["OperatorApplication","{\\rm P.V.}"],Re:["OperatorApplication","{\\rm Re}","{"],Im:["OperatorApplication","{\\rm Im}","{"],sine:["NamedFn","sin"],hypsine:["NamedFn","sinh"],arcsine:["NamedFn","arcsin"],asine:["NamedFn","asin"],cosine:["NamedFn","cos"],hypcosine:["NamedFn","cosh"],arccosine:["NamedFn","arccos"],acosine:["NamedFn","acos"],tangent:["NamedFn","tan"],hyptangent:["NamedFn","tanh"],arctangent:["NamedFn","arctan"],atangent:["NamedFn","atan"],cosecant:["NamedFn","csc"],hypcosecant:["NamedFn","csch"],arccosecant:["NamedFn","arccsc"],acosecant:["NamedFn","acsc"],secant:["NamedFn","sec"],hypsecant:["NamedFn","sech"],arcsecant:["NamedFn","arcsec"],asecant:["NamedFn","asec"],cotangent:["NamedFn","cot"],hypcotangent:["NamedFn","coth"],arccotangent:["NamedFn","arccot"],acotangent:["NamedFn","acot"],exponential:["NamedFn","exp"],logarithm:["NamedFn","log"],naturallogarithm:["NamedFn","ln"],determinant:["NamedFn","det"],Probability:["NamedFn","Pr"]},a.default),new n.CommandMap("Physics-quick-quad-macros",{qqtext:"Qqtext",qq:"Qqtext",qcomma:["Macro","\\qqtext*{,}"],qc:["Macro","\\qqtext*{,}"],qcc:["Qqtext","c.c."],qif:["Qqtext","if"],qthen:["Qqtext","then"],qelse:["Qqtext","else"],qotherwise:["Qqtext","otherwise"],qunless:["Qqtext","unless"],qgiven:["Qqtext","given"],qusing:["Qqtext","using"],qassume:["Qqtext","assume"],"qsince,":["Qqtext","since,"],qlet:["Qqtext","let"],qfor:["Qqtext","for"],qall:["Qqtext","all"],qeven:["Qqtext","even"],qodd:["Qqtext","odd"],qinteger:["Qqtext","integer"],qand:["Qqtext","and"],qor:["Qqtext","or"],qas:["Qqtext","as"],qin:["Qqtext","in"]},a.default),new n.CommandMap("Physics-derivative-macros",{flatfrac:["Macro","\\left.#1\\middle/#2\\right.",2],differential:["Differential","{\\rm d}"],dd:["Differential","{\\rm d}"],variation:["Differential","\\delta"],var:["Differential","\\delta"],derivative:["Derivative",2,"{\\rm d}"],dv:["Derivative",2,"{\\rm d}"],partialderivative:["Derivative",3,"\\partial"],pderivative:["Derivative",3,"\\partial"],pdv:["Derivative",3,"\\partial"],functionalderivative:["Derivative",2,"\\delta"],fderivative:["Derivative",2,"\\delta"],fdv:["Derivative",2,"\\delta"]},a.default),new n.CommandMap("Physics-bra-ket-macros",{bra:"Bra",ket:"Ket",innerproduct:"BraKet",braket:"BraKet",outerproduct:"KetBra",dyad:"KetBra",ketbra:"KetBra",op:"KetBra",expectationvalue:"Expectation",expval:"Expectation",ev:"Expectation",matrixelement:"MatrixElement",matrixel:"MatrixElement",mel:"MatrixElement"},a.default),new n.CommandMap("Physics-matrix-macros",{matrixquantity:"MatrixQuantity",mqty:"MatrixQuantity",pmqty:["Macro","\\mqty(#1)",1],Pmqty:["Macro","\\mqty*(#1)",1],bmqty:["Macro","\\mqty[#1]",1],vmqty:["Macro","\\mqty|#1|",1],smallmatrixquantity:["MatrixQuantity",!0],smqty:["MatrixQuantity",!0],spmqty:["Macro","\\smqty(#1)",1],sPmqty:["Macro","\\smqty*(#1)",1],sbmqty:["Macro","\\smqty[#1]",1],svmqty:["Macro","\\smqty|#1|",1],matrixdeterminant:["Macro","\\vmqty{#1}",1],mdet:["Macro","\\vmqty{#1}",1],smdet:["Macro","\\svmqty{#1}",1],identitymatrix:"IdentityMatrix",imat:"IdentityMatrix",xmatrix:"XMatrix",xmat:"XMatrix",zeromatrix:["Macro","\\xmat{0}{#1}{#2}",2],zmat:["Macro","\\xmat{0}{#1}{#2}",2],paulimatrix:"PauliMatrix",pmat:"PauliMatrix",diagonalmatrix:"DiagonalMatrix",dmat:"DiagonalMatrix",antidiagonalmatrix:["DiagonalMatrix",!0],admat:["DiagonalMatrix",!0]},a.default),new n.EnvironmentMap("Physics-aux-envs",i.default.environment,{smallmatrix:["Array",null,null,null,"c","0.333em",".2em","S",1]},a.default),new n.MacroMap("Physics-characters",{"|":["AutoClose",s.TEXCLASS.ORD],")":"AutoClose","]":"AutoClose"},a.default)},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.handleRetriesFor=MathJax._.util.Retries.handleRetriesFor,e.retryAfter=MathJax._.util.Retries.retryAfter},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=r(1),a=r(7),o=r(28);new n.MacroMap("text-special",{$:"Math","%":"Comment","^":"MathModeOnly",_:"MathModeOnly","&":"Misplaced","#":"Misplaced","~":"Tilde"," ":"Space","\t":"Space","\r":"Space","\n":"Space","\xa0":"Tilde","{":"OpenBrace","}":"CloseBrace","`":"OpenQuote","'":"CloseQuote"},o.TextMacrosMethods),new n.CommandMap("text-macros",{"(":"Math",$:"SelfQuote",_:"SelfQuote","%":"SelfQuote","{":"SelfQuote","}":"SelfQuote"," ":"SelfQuote","&":"SelfQuote","#":"SelfQuote","\\":"SelfQuote","'":["Accent","\xb4"],"\u2019":["Accent","\xb4"],"`":["Accent","`"],"\u2018":["Accent","`"],"^":["Accent","^"],'"':["Accent","\xa8"],"~":["Accent","~"],"=":["Accent","\xaf"],".":["Accent","\u02d9"],u:["Accent","\u02d8"],v:["Accent","\u02c7"],emph:"Emph",rm:["SetFont",a.TexConstant.Variant.NORMAL],mit:["SetFont",a.TexConstant.Variant.ITALIC],oldstyle:["SetFont",a.TexConstant.Variant.OLDSTYLE],cal:["SetFont",a.TexConstant.Variant.CALLIGRAPHIC],it:["SetFont","-tex-mathit"],bf:["SetFont",a.TexConstant.Variant.BOLD],bbFont:["SetFont",a.TexConstant.Variant.DOUBLESTRUCK],scr:["SetFont",a.TexConstant.Variant.SCRIPT],frak:["SetFont",a.TexConstant.Variant.FRAKTUR],sf:["SetFont",a.TexConstant.Variant.SANSSERIF],tt:["SetFont",a.TexConstant.Variant.MONOSPACE],tiny:["SetSize",.5],Tiny:["SetSize",.6],scriptsize:["SetSize",.7],small:["SetSize",.85],normalsize:["SetSize",1],large:["SetSize",1.2],Large:["SetSize",1.44],LARGE:["SetSize",1.73],huge:["SetSize",2.07],Huge:["SetSize",2.49],mathcal:"MathModeOnly",mathscr:"MathModeOnly",mathrm:"MathModeOnly",mathbf:"MathModeOnly",mathbb:"MathModeOnly",mathit:"MathModeOnly",mathfrak:"MathModeOnly",mathsf:"MathModeOnly",mathtt:"MathModeOnly",Bbb:["Macro","{\\bbFont #1}",1],textrm:["Macro","{\\rm #1}",1],textit:["Macro","{\\it #1}",1],textbf:["Macro","{\\bf #1}",1],textsf:["Macro","{\\sf #1}",1],texttt:["Macro","{\\tt #1}",1],dagger:["Insert","\u2020"],ddagger:["Insert","\u2021"],S:["Insert","\xa7"],",":["Spacer",a.TexConstant.Length.THINMATHSPACE],":":["Spacer",a.TexConstant.Length.MEDIUMMATHSPACE],">":["Spacer",a.TexConstant.Length.MEDIUMMATHSPACE],";":["Spacer",a.TexConstant.Length.THICKMATHSPACE],"!":["Spacer",a.TexConstant.Length.NEGATIVETHINMATHSPACE],enspace:["Spacer",".5em"],quad:["Spacer","1em"],qquad:["Spacer","2em"],thinspace:["Spacer",a.TexConstant.Length.THINMATHSPACE],negthinspace:["Spacer",a.TexConstant.Length.NEGATIVETHINMATHSPACE],hskip:"Hskip",hspace:"Hskip",kern:"Hskip",mskip:"Hskip",mspace:"Hskip",mkern:"Hskip",rule:"rule",Rule:["Rule"],Space:["Rule","blank"],color:"CheckAutoload",textcolor:"CheckAutoload",colorbox:"CheckAutoload",fcolorbox:"CheckAutoload",href:"CheckAutoload",style:"CheckAutoload",class:"CheckAutoload",cssId:"CheckAutoload",unicode:"CheckAutoload",ref:["HandleRef",!1],eqref:["HandleRef",!0]},o.TextMacrosMethods)},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.mathjax=MathJax._.mathjax.mathjax},function(t,e,r){"use strict";r.r(e);var n=r(22),a=r(30),o=r(31),i=r(0),s=r(33),l=r(32),c=r(16),u=r(18),p=r(3),f=r(12),d=r(24),h=r(4),m=r(23),g=r(11),v=r(34),y=r(14),b=r(1),x=r(9),A=r(7),M=r(2),_=r(6),C=r(35),P=r(38),w=r(39),S=r(36),T=r(37),k=r(17),O=r(75),E=r(19),I=r(15),N=r(8),q=r(40),L=r(41),F=r(42),B=r(43),R=r(44),G=r(45),j=r(46),D=r(47),$=r(20),H=r(48),V=r(53),X=r(49),z=r(52),U=r(50),K=r(51),J=r(54),Q=r(25),W=r(55),Z=r(57),Y=r(58),tt=r(59),et=r(27),rt=r(56),nt=r(26),at=r(21),ot=r(60),it=r(61),st=r(62),lt=r(63),ct=r(64),ut=r(29),pt=r(65),ft=r(66),dt=r(28),ht=r(67),mt=r(68),gt=r(69);Object(n.combineWithMathJax)({_:{input:{tex_ts:a,tex:{AllPackages:o,Configuration:i,FilterUtil:s,FindTeX:l,MapHandler:c,NodeFactory:u,NodeUtil:p,ParseMethods:f,ParseOptions:d,ParseUtil:h,Stack:m,StackItem:g,StackItemFactory:v,Symbol:y,SymbolMap:b,Tags:x,TexConstants:A,TexError:M,TexParser:_,action:{ActionConfiguration:C},amscd:{AmsCdConfiguration:P,AmsCdMethods:w},ams:{AmsConfiguration:S,AmsItems:T,AmsMethods:k},autoload:{AutoloadConfiguration:O},base:{BaseConfiguration:E,BaseItems:I,BaseMethods:N},bbox:{BboxConfiguration:q},boldsymbol:{BoldsymbolConfiguration:L},braket:{BraketConfiguration:F,BraketItems:B,BraketMethods:R},bussproofs:{BussproofsConfiguration:G,BussproofsItems:j,BussproofsMethods:D,BussproofsUtil:$},cancel:{CancelConfiguration:H},colorv2:{ColorV2Configuration:V},color:{ColorConfiguration:X,ColorConstants:z,ColorMethods:U,ColorUtil:K},configmacros:{ConfigMacrosConfiguration:J},enclose:{EncloseConfiguration:Q},extpfeil:{ExtpfeilConfiguration:W},html:{HtmlConfiguration:Z,HtmlMethods:Y},mhchem:{MhchemConfiguration:tt},newcommand:{NewcommandConfiguration:et,NewcommandItems:rt,NewcommandMethods:nt,NewcommandUtil:at},noerrors:{NoErrorsConfiguration:ot},noundefined:{NoUndefinedConfiguration:it},physics:{PhysicsConfiguration:st,PhysicsItems:lt,PhysicsMethods:ct},require:{RequireConfiguration:ut},tagformat:{TagFormatConfiguration:pt},textmacros:{TextMacrosConfiguration:ft,TextMacrosMethods:dt,TextParser:ht},unicode:{UnicodeConfiguration:mt},verb:{VerbConfiguration:gt}}}}});var vt,yt=r(10);function bt(t,e,r){var a,o,i,s=MathJax.config.tex;if(s&&s.packages){var l=s.packages,c=l.indexOf(t);c>=0&&(l[c]=e),r&&s[t]&&(Object(n.combineConfig)(s,(a={},o=e,i=s[t],o in a?Object.defineProperty(a,o,{value:i,enumerable:!0,configurable:!0,writable:!0}):a[o]=i,a)),delete s[t])}}function xt(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r="0"&&o<="9")n[a]=r[parseInt(n[a],10)-1],"number"==typeof n[a]&&(n[a]=n[a].toString());else if("{"===o){if((o=n[a].substr(1))>="0"&&o<="9")n[a]=r[parseInt(n[a].substr(1,n[a].length-2),10)-1],"number"==typeof n[a]&&(n[a]=n[a].toString());else n[a].match(/^\{([a-z]+):%(\d+)\|(.*)\}$/)&&(n[a]="%"+n[a])}null==n[a]&&(n[a]="???")}return n.join("")},t.pattern=/%(\d+|\{\d+\}|\{[a-z]+:\%\d+(?:\|(?:%\{\d+\}|%.|[^\}])*)+\}|.)/g,t}();e.default=n},function(t,e,r){"use strict";var n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,a,i=r.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(n=i.next()).done;)o.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(a)throw a.error}}return o},i=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(n=i.next()).done;)o.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(a)throw a.error}}return o},o=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},s=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(n=i.next()).done;)o.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(a)throw a.error}}return o},a=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0});var i,o=r(5),s=r(1),l=r(8),u=r(0),c=r(11);r(33),function(t){var e={em:function(t){return t},ex:function(t){return.43*t},pt:function(t){return t/10},pc:function(t){return 1.2*t},px:function(t){return 7.2*t/72},in:function(t){return 7.2*t},cm:function(t){return 7.2*t/2.54},mm:function(t){return 7.2*t/25.4},mu:function(t){return t/18}},r="([-+]?([.,]\\d+|\\d+([.,]\\d*)?))",i="(pt|em|ex|mu|px|mm|cm|in|pc)",f=RegExp("^\\s*"+r+"\\s*"+i+"\\s*$"),p=RegExp("^\\s*"+r+"\\s*"+i+" ?");function d(t,r){void 0===r&&(r=!1);var a=t.match(r?p:f);return a?function(t){var r=n(t,3),a=r[0],i=r[1],o=r[2];if("mu"!==i)return[a,i,o];return[h(e[i](parseFloat(a||"1"))).slice(0,-2),"em",o]}([a[1].replace(/,/,"."),a[4],a[0].length]):[null,null,0]}function h(t){return Math.abs(t)<6e-4?"0em":t.toFixed(3).replace(/\.?0+$/,"")+"em"}function m(t,e,r){"{"!==e&&"}"!==e||(e="\\"+e);var n="{\\bigg"+r+" "+e+"}",a="{\\big"+r+" "+e+"}";return new l.default("\\mathchoice"+n+a+a+a,{},t).mml()}function g(t,e,r){e=e.replace(/^\s+/,c.entities.nbsp).replace(/\s+$/,c.entities.nbsp);var n=t.create("text",e);return t.create("node","mtext",[],r,n)}function y(t,e,r){if(r.match(/^[a-z]/i)&&e.match(/(^|[^\\])(\\\\)*\\[a-z]+$/i)&&(e+=" "),e.length+r.length>t.configuration.options.maxBuffer)throw new u.default("MaxBufferSize","MathJax internal buffer size exceeded; is there a recursive macro call?");return e+r}function v(t,e){for(;e>0;)t=t.trim().slice(1,-1),e--;return t.trim()}function b(t,e){for(var r=t.length,n=0,a="",i=0,o=0,s=!0,l=!1;in&&(o=n)),n++;break;case"}":n&&n--,(s||l)&&(o--,l=!0),s=!1;break;default:if(!n&&-1!==e.indexOf(c))return[l?"true":v(a,o),c,t.slice(i)];s=!1,l=!1}a+=c}if(n)throw new u.default("ExtraOpenMissingClose","Extra open brace or missing close brace");return[l?"true":v(a,o),"",t.slice(i)]}t.matchDimen=d,t.dimen2em=function(t){var r=n(d(t),2),a=r[0],i=r[1],o=parseFloat(a||"1"),s=e[i];return s?s(o):0},t.Em=h,t.fenced=function(t,e,r,n,a){void 0===a&&(a="");var i,u=t.nodeFactory,c=u.create("node","mrow",[],{open:e,close:n,texClass:o.TEXCLASS.INNER});if(a)i=new l.default("\\"+a+"l"+e,t.parser.stack.env,t).mml();else{var f=u.create("text",e);i=u.create("node","mo",[],{fence:!0,stretchy:!0,symmetric:!0,texClass:o.TEXCLASS.OPEN},f)}if(s.default.appendChildren(c,[i]),s.default.isType(r,"mrow")&&s.default.isInferred(r)?s.default.appendChildren(c,s.default.getChildren(r)):s.default.appendChildren(c,[r]),a)i=new l.default("\\"+a+"r"+n,t.parser.stack.env,t).mml();else{var p=u.create("text",n);i=u.create("node","mo",[],{fence:!0,stretchy:!0,symmetric:!0,texClass:o.TEXCLASS.CLOSE},p)}return s.default.appendChildren(c,[i]),c},t.fixedFence=function(t,e,r,n){var a=t.nodeFactory.create("node","mrow",[],{open:e,close:n,texClass:o.TEXCLASS.ORD});return e&&s.default.appendChildren(a,[m(t,e,"l")]),s.default.isType(r,"mrow")?s.default.appendChildren(a,s.default.getChildren(r)):s.default.appendChildren(a,[r]),n&&s.default.appendChildren(a,[m(t,n,"r")]),a},t.mathPalette=m,t.fixInitialMO=function(t,e){for(var r=0,n=e.length;r1&&(c=[t.create("node","mrow",c)]),c},t.internalText=g,t.trimSpaces=function(t){if("string"!=typeof t)return t;var e=t.trim();return e.match(/\\$/)&&t.match(/ $/)&&(e+=" "),e},t.setArrayAlign=function(e,r){return"t"===(r=t.trimSpaces(r||""))?e.arraydef.align="baseline 1":"b"===r?e.arraydef.align="baseline -1":"c"===r?e.arraydef.align="center":r&&(e.arraydef.align=r),e},t.substituteArgs=function(t,e,r){for(var n="",a="",i=0;ie.length)throw new u.default("IllegalMacroParam","Illegal macro parameter reference");a=y(t,y(t,a,n),e[parseInt(o,10)-1]),n=""}else n+=o}return y(t,a,n)},t.addArgs=y,t.checkEqnEnv=function(t){if(t.stack.global.eqnenv)throw new u.default("ErroneousNestingEq","Erroneous nesting of equation structures");t.stack.global.eqnenv=!0},t.MmlFilterAttribute=function(t,e,r){return r},t.getFontDef=function(t){var e=t.stack.env.font;return e?{mathvariant:e}:{}},t.keyvalOptions=function(t,e,r){var i,o;void 0===e&&(e=null),void 0===r&&(r=!1);var s=function(t){var e,r,a,i,o,s={},l=t;for(;l;)i=(e=n(b(l,["=",","]),3))[0],a=e[1],l=e[2],"="===a?(o=(r=n(b(l,[","]),3))[0],a=r[1],l=r[2],o="false"===o||"true"===o?JSON.parse(o):o,s[i]=o):i&&(s[i]=!0);return s}(t);if(e)try{for(var l=a(Object.keys(s)),c=l.next();!c.done;c=l.next()){var f=c.value;if(!e.hasOwnProperty(f)){if(r)throw new u.default("InvalidOption","Invalid optional argument: %1",f);delete s[f]}}}catch(t){i={error:t}}finally{try{c&&!c.done&&(o=l.return)&&o.call(l)}finally{if(i)throw i.error}}return s}}(i||(i={})),e.default=i},function(t,e,r){"use strict";var n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,a,i=r.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(n=i.next()).done;)o.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(a)throw a.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.ParserConfiguration=e.ConfigurationHandler=e.Configuration=void 0;var i,o=r(6),s=r(12),l=r(35),u=r(34),c=r(9),f=function(){function t(t,e,r,n,a,i,o,s,l,u,c,f){void 0===e&&(e={}),void 0===r&&(r={}),void 0===n&&(n={}),void 0===a&&(a={}),void 0===i&&(i={}),void 0===o&&(o={}),void 0===s&&(s=[]),void 0===l&&(l=[]),void 0===u&&(u=null),void 0===c&&(c=null),this.name=t,this.handler=e,this.fallback=r,this.items=n,this.tags=a,this.options=i,this.nodes=o,this.preprocessors=s,this.postprocessors=l,this.initMethod=u,this.configMethod=c,this.priority=f,this.handler=Object.assign({character:[],delimiter:[],macro:[],environment:[]},e)}return t.makeProcessor=function(t,e){return Array.isArray(t)?t:[t,e]},t._create=function(e,r){var n=this;void 0===r&&(r={});var a=r.priority||u.PrioritizedList.DEFAULTPRIORITY,i=r.init?this.makeProcessor(r.init,a):null,o=r.config?this.makeProcessor(r.config,a):null,s=(r.preprocessors||[]).map((function(t){return n.makeProcessor(t,a)})),l=(r.postprocessors||[]).map((function(t){return n.makeProcessor(t,a)}));return new t(e,r.handler||{},r.fallback||{},r.items||{},r.tags||{},r.options||{},r.nodes||{},s,l,i,o,a)},t.create=function(e,r){void 0===r&&(r={});var n=t._create(e,r);return i.set(e,n),n},t.local=function(e){return void 0===e&&(e={}),t._create("",e)},Object.defineProperty(t.prototype,"init",{get:function(){return this.initMethod?this.initMethod[0]:null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"config",{get:function(){return this.configMethod?this.configMethod[0]:null},enumerable:!1,configurable:!0}),t}();e.Configuration=f,function(t){var e=new Map;t.set=function(t,r){e.set(t,r)},t.get=function(t){return e.get(t)},t.keys=function(){return e.keys()}}(i=e.ConfigurationHandler||(e.ConfigurationHandler={}));var p=function(){function t(t){var e,r,a,i;this.initMethod=new l.FunctionList,this.configMethod=new l.FunctionList,this.configurations=new u.PrioritizedList,this.handlers=new s.SubHandlers,this.items={},this.tags={},this.options={},this.nodes={};try{for(var o=n(t.slice().reverse()),c=o.next();!c.done;c=o.next()){var f=c.value;this.addPackage(f)}}catch(t){e={error:t}}finally{try{c&&!c.done&&(r=o.return)&&r.call(o)}finally{if(e)throw e.error}}try{for(var p=n(this.configurations),d=p.next();!d.done;d=p.next()){var h=d.value,m=h.item,g=h.priority;this.append(m,g)}}catch(t){a={error:t}}finally{try{d&&!d.done&&(i=p.return)&&i.call(p)}finally{if(a)throw a.error}}}return t.prototype.init=function(){this.initMethod.execute(this)},t.prototype.config=function(t){var e,r;this.configMethod.execute(this,t);try{for(var a=n(this.configurations),i=a.next();!i.done;i=a.next()){var o=i.value;this.addFilters(t,o.item)}}catch(t){e={error:t}}finally{try{i&&!i.done&&(r=a.return)&&r.call(a)}finally{if(e)throw e.error}}},t.prototype.addPackage=function(t){var e="string"==typeof t?t:t[0],r=i.get(e);r&&this.configurations.add(r,"string"==typeof t?r.priority:t[1])},t.prototype.add=function(t,e,r){var a,i;void 0===r&&(r={}),this.append(t),this.configurations.add(t,t.priority),this.init();var s=e.parseOptions;s.nodeFactory.setCreators(t.nodes);try{for(var l=n(Object.keys(t.items)),u=l.next();!u.done;u=l.next()){var f=u.value;s.itemFactory.setNodeClass(f,t.items[f])}}catch(t){a={error:t}}finally{try{u&&!u.done&&(i=l.return)&&i.call(l)}finally{if(a)throw a.error}}c.TagsFactory.addTags(t.tags),o.defaultOptions(s.options,t.options),o.userOptions(s.options,r),this.addFilters(e,t),t.config&&t.config(this,e)},t.prototype.append=function(t,e){e=e||t.priority,t.initMethod&&this.initMethod.add(t.initMethod[0],t.initMethod[1]),t.configMethod&&this.configMethod.add(t.configMethod[0],t.configMethod[1]),this.handlers.add(t.handler,t.fallback,e),Object.assign(this.items,t.items),Object.assign(this.tags,t.tags),o.defaultOptions(this.options,t.options),Object.assign(this.nodes,t.nodes)},t.prototype.addFilters=function(t,e){var r,i,o,s;try{for(var l=n(e.preprocessors),u=l.next();!u.done;u=l.next()){var c=a(u.value,2),f=c[0],p=c[1];t.preFilters.add(f,p)}}catch(t){r={error:t}}finally{try{u&&!u.done&&(i=l.return)&&i.call(l)}finally{if(r)throw r.error}}try{for(var d=n(e.postprocessors),h=d.next();!h.done;h=d.next()){var m=a(h.value,2),g=m[0];p=m[1];t.postFilters.add(g,p)}}catch(t){o={error:t}}finally{try{h&&!h.done&&(s=d.return)&&s.call(d)}finally{if(o)throw o.error}}},t}();e.ParserConfiguration=p},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TEXCLASS=MathJax._.core.MmlTree.MmlNode.TEXCLASS,e.TEXCLASSNAMES=MathJax._.core.MmlTree.MmlNode.TEXCLASSNAMES,e.indentAttributes=MathJax._.core.MmlTree.MmlNode.indentAttributes,e.AbstractMmlNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlNode,e.AbstractMmlTokenNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlTokenNode,e.AbstractMmlLayoutNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlLayoutNode,e.AbstractMmlBaseNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlBaseNode,e.AbstractMmlEmptyNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlEmptyNode,e.TextNode=MathJax._.core.MmlTree.MmlNode.TextNode,e.XMLNode=MathJax._.core.MmlTree.MmlNode.XMLNode},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.APPEND=MathJax._.util.Options.APPEND,e.REMOVE=MathJax._.util.Options.REMOVE,e.Expandable=MathJax._.util.Options.Expandable,e.expandable=MathJax._.util.Options.expandable,e.makeArray=MathJax._.util.Options.makeArray,e.keys=MathJax._.util.Options.keys,e.copy=MathJax._.util.Options.copy,e.insert=MathJax._.util.Options.insert,e.defaultOptions=MathJax._.util.Options.defaultOptions,e.userOptions=MathJax._.util.Options.userOptions,e.selectOptions=MathJax._.util.Options.selectOptions,e.selectOptionsFromKeys=MathJax._.util.Options.selectOptionsFromKeys,e.separateOptions=MathJax._.util.Options.separateOptions},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TexConstant=void 0,function(t){t.Variant={NORMAL:"normal",BOLD:"bold",ITALIC:"italic",BOLDITALIC:"bold-italic",DOUBLESTRUCK:"double-struck",FRAKTUR:"fraktur",BOLDFRAKTUR:"bold-fraktur",SCRIPT:"script",BOLDSCRIPT:"bold-script",SANSSERIF:"sans-serif",BOLDSANSSERIF:"bold-sans-serif",SANSSERIFITALIC:"sans-serif-italic",SANSSERIFBOLDITALIC:"sans-serif-bold-italic",MONOSPACE:"monospace",INITIAL:"inital",TAILED:"tailed",LOOPED:"looped",STRETCHED:"stretched",CALLIGRAPHIC:"-tex-calligraphic",OLDSTYLE:"-tex-oldstyle"},t.Form={PREFIX:"prefix",INFIX:"infix",POSTFIX:"postfix"},t.LineBreak={AUTO:"auto",NEWLINE:"newline",NOBREAK:"nobreak",GOODBREAK:"goodbreak",BADBREAK:"badbreak"},t.LineBreakStyle={BEFORE:"before",AFTER:"after",DUPLICATE:"duplicate",INFIXLINBREAKSTYLE:"infixlinebreakstyle"},t.IndentAlign={LEFT:"left",CENTER:"center",RIGHT:"right",AUTO:"auto",ID:"id",INDENTALIGN:"indentalign"},t.IndentShift={INDENTSHIFT:"indentshift"},t.LineThickness={THIN:"thin",MEDIUM:"medium",THICK:"thick"},t.Notation={LONGDIV:"longdiv",ACTUARIAL:"actuarial",PHASORANGLE:"phasorangle",RADICAL:"radical",BOX:"box",ROUNDEDBOX:"roundedbox",CIRCLE:"circle",LEFT:"left",RIGHT:"right",TOP:"top",BOTTOM:"bottom",UPDIAGONALSTRIKE:"updiagonalstrike",DOWNDIAGONALSTRIKE:"downdiagonalstrike",VERTICALSTRIKE:"verticalstrike",HORIZONTALSTRIKE:"horizontalstrike",NORTHEASTARROW:"northeastarrow",MADRUWB:"madruwb",UPDIAGONALARROW:"updiagonalarrow"},t.Align={TOP:"top",BOTTOM:"bottom",CENTER:"center",BASELINE:"baseline",AXIS:"axis",LEFT:"left",RIGHT:"right"},t.Lines={NONE:"none",SOLID:"solid",DASHED:"dashed"},t.Side={LEFT:"left",RIGHT:"right",LEFTOVERLAP:"leftoverlap",RIGHTOVERLAP:"rightoverlap"},t.Width={AUTO:"auto",FIT:"fit"},t.Actiontype={TOGGLE:"toggle",STATUSLINE:"statusline",TOOLTIP:"tooltip",INPUT:"input"},t.Length={VERYVERYTHINMATHSPACE:"veryverythinmathspace",VERYTHINMATHSPACE:"verythinmathspace",THINMATHSPACE:"thinmathspace",MEDIUMMATHSPACE:"mediummathspace",THICKMATHSPACE:"thickmathspace",VERYTHICKMATHSPACE:"verythickmathspace",VERYVERYTHICKMATHSPACE:"veryverythickmathspace",NEGATIVEVERYVERYTHINMATHSPACE:"negativeveryverythinmathspace",NEGATIVEVERYTHINMATHSPACE:"negativeverythinmathspace",NEGATIVETHINMATHSPACE:"negativethinmathspace",NEGATIVEMEDIUMMATHSPACE:"negativemediummathspace",NEGATIVETHICKMATHSPACE:"negativethickmathspace",NEGATIVEVERYTHICKMATHSPACE:"negativeverythickmathspace",NEGATIVEVERYVERYTHICKMATHSPACE:"negativeveryverythickmathspace"},t.Overflow={LINBREAK:"linebreak",SCROLL:"scroll",ELIDE:"elide",TRUNCATE:"truncate",SCALE:"scale"},t.Unit={EM:"em",EX:"ex",PX:"px",IN:"in",CM:"cm",MM:"mm",PT:"pt",PC:"pc"}}(e.TexConstant||(e.TexConstant={}))},function(t,e,r){"use strict";var n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,a,i=r.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(n=i.next()).done;)o.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(a)throw a.error}}return o},i=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.TagsFactory=e.AllTags=e.NoTags=e.AbstractTags=e.TagInfo=e.Label=void 0;var o=r(8),s=function(t,e){void 0===t&&(t="???"),void 0===e&&(e=""),this.tag=t,this.id=e};e.Label=s;var l=function(t,e,r,n,a,i,o,s){void 0===t&&(t=""),void 0===e&&(e=!1),void 0===r&&(r=!1),void 0===n&&(n=null),void 0===a&&(a=""),void 0===i&&(i=""),void 0===o&&(o=!1),void 0===s&&(s=""),this.env=t,this.taggable=e,this.defaultTags=r,this.tag=n,this.tagId=a,this.tagFormat=i,this.noTag=o,this.labelId=s};e.TagInfo=l;var u=function(){function t(){this.counter=0,this.allCounter=0,this.configuration=null,this.ids={},this.allIds={},this.labels={},this.allLabels={},this.redo=!1,this.refUpdate=!1,this.currentTag=new l,this.history=[],this.stack=[],this.enTag=function(t,e){var r=this.configuration.nodeFactory,n=r.create("node","mtd",[t]),a=r.create("node","mlabeledtr",[e,n]);return r.create("node","mtable",[a],{side:this.configuration.options.tagSide,minlabelspacing:this.configuration.options.tagIndent,displaystyle:!0})}}return t.prototype.start=function(t,e,r){this.currentTag&&this.stack.push(this.currentTag),this.currentTag=new l(t,e,r)},Object.defineProperty(t.prototype,"env",{get:function(){return this.currentTag.env},enumerable:!1,configurable:!0}),t.prototype.end=function(){this.history.push(this.currentTag),this.currentTag=this.stack.pop()},t.prototype.tag=function(t,e){this.currentTag.tag=t,this.currentTag.tagFormat=e?t:this.formatTag(t),this.currentTag.noTag=!1},t.prototype.notag=function(){this.tag("",!0),this.currentTag.noTag=!0},Object.defineProperty(t.prototype,"noTag",{get:function(){return this.currentTag.noTag},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"label",{get:function(){return this.currentTag.labelId},set:function(t){this.currentTag.labelId=t},enumerable:!1,configurable:!0}),t.prototype.formatUrl=function(t,e){return e+"#"+encodeURIComponent(t)},t.prototype.formatTag=function(t){return"("+t+")"},t.prototype.formatId=function(t){return"mjx-eqn-"+t.replace(/\s/g,"_")},t.prototype.formatNumber=function(t){return t.toString()},t.prototype.autoTag=function(){null==this.currentTag.tag&&(this.counter++,this.tag(this.formatNumber(this.counter),!1))},t.prototype.clearTag=function(){this.label="",this.tag(null,!0),this.currentTag.tagId=""},t.prototype.getTag=function(t){if(void 0===t&&(t=!1),t)return this.autoTag(),this.makeTag();var e=this.currentTag;return e.taggable&&!e.noTag&&(e.defaultTags&&this.autoTag(),e.tag)?this.makeTag():null},t.prototype.resetTag=function(){this.history=[],this.redo=!1,this.refUpdate=!1,this.clearTag()},t.prototype.reset=function(t){void 0===t&&(t=0),this.resetTag(),this.counter=this.allCounter=t,this.allLabels={},this.allIds={}},t.prototype.startEquation=function(t){this.labels={},this.ids={},this.counter=this.allCounter,this.redo=!1;var e=t.inputData.recompile;e&&(this.refUpdate=!0,this.counter=e.counter)},t.prototype.finishEquation=function(t){this.redo&&(t.inputData.recompile={state:t.state(),counter:this.allCounter}),this.refUpdate||(this.allCounter=this.counter),Object.assign(this.allIds,this.ids),Object.assign(this.allLabels,this.labels)},t.prototype.finalize=function(t,e){if(!e.display||this.currentTag.env||null==this.currentTag.tag)return t;var r=this.makeTag();return this.enTag(t,r)},t.prototype.makeId=function(){this.currentTag.tagId=this.formatId(this.configuration.options.useLabelIds&&this.label||this.currentTag.tag)},t.prototype.makeTag=function(){this.makeId(),this.label&&(this.labels[this.label]=new s(this.currentTag.tag,this.currentTag.tagId));var t=new o.default("\\text{"+this.currentTag.tagFormat+"}",{},this.configuration).mml();return this.configuration.nodeFactory.create("node","mtd",[t],{id:this.currentTag.tagId})},t}();e.AbstractTags=u;var c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a(e,t),e.prototype.autoTag=function(){},e.prototype.getTag=function(){return this.currentTag.tag?t.prototype.getTag.call(this):null},e}(u);e.NoTags=c;var f=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a(e,t),e.prototype.finalize=function(t,e){if(!e.display||this.history.find((function(t){return t.taggable})))return t;var r=this.getTag(!0);return this.enTag(t,r)},e}(u);e.AllTags=f,function(t){var e=new Map([["none",c],["all",f]]),r="none";t.OPTIONS={tags:r,tagSide:"right",tagIndent:"0.8em",multlineWidth:"85%",useLabelIds:!0,ignoreDuplicateLabels:!1},t.add=function(t,r){e.set(t,r)},t.addTags=function(e){var r,n;try{for(var a=i(Object.keys(e)),o=a.next();!o.done;o=a.next()){var s=o.value;t.add(s,e[s])}}catch(t){r={error:t}}finally{try{o&&!o.done&&(n=a.return)&&n.call(a)}finally{if(r)throw r.error}}},t.create=function(t){var n=e.get(t)||e.get(r);if(!n)throw Error("Unknown tags class");return new n},t.setDefault=function(t){r=t},t.getDefault=function(){return t.create(r)}}(e.TagsFactory||(e.TagsFactory={}))},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Macro=e.Symbol=void 0;var n=function(){function t(t,e,r){this._symbol=t,this._char=e,this._attributes=r}return Object.defineProperty(t.prototype,"symbol",{get:function(){return this._symbol},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"char",{get:function(){return this._char},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"attributes",{get:function(){return this._attributes},enumerable:!1,configurable:!0}),t}();e.Symbol=n;var a=function(){function t(t,e,r){void 0===r&&(r=[]),this._symbol=t,this._func=e,this._args=r}return Object.defineProperty(t.prototype,"symbol",{get:function(){return this._symbol},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"func",{get:function(){return this._func},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"args",{get:function(){return this._args},enumerable:!1,configurable:!0}),t}();e.Macro=a},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.options=MathJax._.util.Entities.options,e.entities=MathJax._.util.Entities.entities,e.add=MathJax._.util.Entities.add,e.remove=MathJax._.util.Entities.remove,e.translate=MathJax._.util.Entities.translate,e.numeric=MathJax._.util.Entities.numeric},function(t,e,r){"use strict";var n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,a,i=r.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(n=i.next()).done;)o.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(a)throw a.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.SubHandlers=e.SubHandler=e.MapHandler=void 0;var i,o=r(34),s=r(35);!function(t){var e=new Map;t.register=function(t){e.set(t.name,t)},t.getMap=function(t){return e.get(t)}}(i=e.MapHandler||(e.MapHandler={}));var l=function(){function t(){this._configuration=new o.PrioritizedList,this._fallback=new s.FunctionList}return t.prototype.add=function(t,e,r){var a,s;void 0===r&&(r=o.PrioritizedList.DEFAULTPRIORITY);try{for(var l=n(t.slice().reverse()),u=l.next();!u.done;u=l.next()){var c=u.value,f=i.getMap(c);if(!f)return void this.warn("Configuration "+c+" not found! Omitted.");this._configuration.add(f,r)}}catch(t){a={error:t}}finally{try{u&&!u.done&&(s=l.return)&&s.call(l)}finally{if(a)throw a.error}}e&&this._fallback.add(e,r)},t.prototype.parse=function(t){var e,r;try{for(var i=n(this._configuration),o=i.next();!o.done;o=i.next()){var s=o.value.item.parse(t);if(s)return s}}catch(t){e={error:t}}finally{try{o&&!o.done&&(r=i.return)&&r.call(i)}finally{if(e)throw e.error}}var l=a(t,2),u=l[0],c=l[1];this._fallback.toArray()[0].item(u,c)},t.prototype.lookup=function(t){var e=this.applicable(t);return e?e.lookup(t):null},t.prototype.contains=function(t){return!!this.applicable(t)},t.prototype.toString=function(){var t,e,r=[];try{for(var a=n(this._configuration),i=a.next();!i.done;i=a.next()){var o=i.value.item;r.push(o.name)}}catch(e){t={error:e}}finally{try{i&&!i.done&&(e=a.return)&&e.call(a)}finally{if(t)throw t.error}}return r.join(", ")},t.prototype.applicable=function(t){var e,r;try{for(var a=n(this._configuration),i=a.next();!i.done;i=a.next()){var o=i.value.item;if(o.contains(t))return o}}catch(t){e={error:t}}finally{try{i&&!i.done&&(r=a.return)&&r.call(a)}finally{if(e)throw e.error}}return null},t.prototype.retrieve=function(t){var e,r;try{for(var a=n(this._configuration),i=a.next();!i.done;i=a.next()){var o=i.value.item;if(o.name===t)return o}}catch(t){e={error:t}}finally{try{i&&!i.done&&(r=a.return)&&r.call(a)}finally{if(e)throw e.error}}return null},t.prototype.warn=function(t){console.log("TexParser Warning: "+t)},t}();e.SubHandler=l;var u=function(){function t(){this.map=new Map}return t.prototype.add=function(t,e,r){var a,i;void 0===r&&(r=o.PrioritizedList.DEFAULTPRIORITY);try{for(var s=n(Object.keys(t)),u=s.next();!u.done;u=s.next()){var c=u.value,f=this.get(c);f||(f=new l,this.set(c,f)),f.add(t[c],e[c],r)}}catch(t){a={error:t}}finally{try{u&&!u.done&&(i=s.return)&&i.call(s)}finally{if(a)throw a.error}}},t.prototype.set=function(t,e){this.map.set(t,e)},t.prototype.get=function(t){return this.map.get(t)},t.prototype.retrieve=function(t){var e,r;try{for(var a=n(this.map.values()),i=a.next();!i.done;i=a.next()){var o=i.value.retrieve(t);if(o)return o}}catch(t){e={error:t}}finally{try{i&&!i.done&&(r=a.return)&&r.call(a)}finally{if(e)throw e.error}}return null},t.prototype.keys=function(){return this.map.keys()},t}();e.SubHandlers=u},function(t,e,r){"use strict";var n,a=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),i=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,a,i=r.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(n=i.next()).done;)o.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(a)throw a.error}}return o},o=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.BaseItem=e.MmlStack=void 0;var l=r(0),u=function(){function t(t){this._nodes=t}return Object.defineProperty(t.prototype,"nodes",{get:function(){return this._nodes},enumerable:!1,configurable:!0}),t.prototype.Push=function(){for(var t,e=[],r=0;r0)&&!(n=i.next()).done;)o.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(a)throw a.error}}return o},o=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(n=i.next()).done;)o.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(a)throw a.error}}return o};Object.defineProperty(e,"__esModule",{value:!0});var a=r(14),i=r(1),o=r(0),s=r(8),l=r(7),u=r(3),c=r(5),f=r(9),p=r(11);r(33),r(49),r(50);var d={},h={fontfamily:1,fontsize:1,fontweight:1,fontstyle:1,color:1,background:1,id:1,class:1,href:1,style:1};function m(t,e){var r=t.stack.env,n=r.inRoot;r.inRoot=!0;var a=new s.default(e,r,t.configuration),i=a.mml(),o=a.stack.global;if(o.leftRoot||o.upRoot){var l={};o.leftRoot&&(l.width=o.leftRoot),o.upRoot&&(l.voffset=o.upRoot,l.height=o.upRoot),i=t.create("node","mpadded",[i],l)}return r.inRoot=n,i}d.Open=function(t,e){t.Push(t.itemFactory.create("open"))},d.Close=function(t,e){t.Push(t.itemFactory.create("close"))},d.Tilde=function(t,e){t.Push(t.create("token","mtext",{},p.entities.nbsp))},d.Space=function(t,e){},d.Superscript=function(t,e){var r,a,s;t.GetNext().match(/\d/)&&(t.string=t.string.substr(0,t.i+1)+" "+t.string.substr(t.i+1));var l=t.stack.Top();l.isKind("prime")?(s=(r=n(l.Peek(2),2))[0],a=r[1],t.stack.Pop()):(s=t.stack.Prev())||(s=t.create("token","mi",{},""));var u=i.default.getProperty(s,"movesupsub"),c=i.default.isType(s,"msubsup")?s.sup:s.over;if(i.default.isType(s,"msubsup")&&!i.default.isType(s,"msup")&&i.default.getChildAt(s,s.sup)||i.default.isType(s,"munderover")&&!i.default.isType(s,"mover")&&i.default.getChildAt(s,s.over)&&!i.default.getProperty(s,"subsupOK"))throw new o.default("DoubleExponent","Double exponent: use braces to clarify");i.default.isType(s,"msubsup")&&!i.default.isType(s,"msup")||(u?((!i.default.isType(s,"munderover")||i.default.isType(s,"mover")||i.default.getChildAt(s,s.over))&&(s=t.create("node","munderover",[s],{movesupsub:!0})),c=s.over):c=(s=t.create("node","msubsup",[s])).sup),t.Push(t.itemFactory.create("subsup",s).setProperties({position:c,primes:a,movesupsub:u}))},d.Subscript=function(t,e){var r,a,s;t.GetNext().match(/\d/)&&(t.string=t.string.substr(0,t.i+1)+" "+t.string.substr(t.i+1));var l=t.stack.Top();l.isKind("prime")?(s=(r=n(l.Peek(2),2))[0],a=r[1],t.stack.Pop()):(s=t.stack.Prev())||(s=t.create("token","mi",{},""));var u=i.default.getProperty(s,"movesupsub"),c=i.default.isType(s,"msubsup")?s.sub:s.under;if(i.default.isType(s,"msubsup")&&!i.default.isType(s,"msup")&&i.default.getChildAt(s,s.sub)||i.default.isType(s,"munderover")&&!i.default.isType(s,"mover")&&i.default.getChildAt(s,s.under)&&!i.default.getProperty(s,"subsupOK"))throw new o.default("DoubleSubscripts","Double subscripts: use braces to clarify");i.default.isType(s,"msubsup")&&!i.default.isType(s,"msup")||(u?((!i.default.isType(s,"munderover")||i.default.isType(s,"mover")||i.default.getChildAt(s,s.under))&&(s=t.create("node","munderover",[s],{movesupsub:!0})),c=s.under):c=(s=t.create("node","msubsup",[s])).sub),t.Push(t.itemFactory.create("subsup",s).setProperties({position:c,primes:a,movesupsub:u}))},d.Prime=function(t,e){var r=t.stack.Prev();if(r||(r=t.create("node","mi")),i.default.isType(r,"msubsup")&&!i.default.isType(r,"msup")&&i.default.getChildAt(r,r.sup))throw new o.default("DoubleExponentPrime","Prime causes double exponent: use braces to clarify");var n="";t.i--;do{n+=p.entities.prime,t.i++,e=t.GetNext()}while("'"===e||e===p.entities.rquote);n=["","\u2032","\u2033","\u2034","\u2057"][n.length]||n;var a=t.create("token","mo",{},n);t.Push(t.itemFactory.create("prime",r,a))},d.Comment=function(t,e){for(;t.it.configuration.options.maxMacros)throw new o.default("MaxMacroSub2","MathJax maximum substitution count exceeded; is there a recursive latex environment?");t.parse("environment",[t,r])},d.Array=function(t,e,r,n,a,i,o,s,l){a||(a=t.GetArgument("\\begin{"+e.getName()+"}"));var u=("c"+a).replace(/[^clr|:]/g,"").replace(/[^|:]([|:])+/g,"$1");a=(a=a.replace(/[^clr]/g,"").split("").join(" ")).replace(/l/g,"left").replace(/r/g,"right").replace(/c/g,"center");var c=t.itemFactory.create("array");return c.arraydef={columnalign:a,columnspacing:i||"1em",rowspacing:o||"4pt"},u.match(/[|:]/)&&(u.charAt(0).match(/[|:]/)&&(c.frame.push("left"),c.dashed=":"===u.charAt(0)),u.charAt(u.length-1).match(/[|:]/)&&c.frame.push("right"),u=u.substr(1,u.length-2),c.arraydef.columnlines=u.split("").join(" ").replace(/[^|: ]/g,"none").replace(/\|/g,"solid").replace(/:/g,"dashed")),r&&c.setProperty("open",t.convertDelimiter(r)),n&&c.setProperty("close",t.convertDelimiter(n)),"D"===s?c.arraydef.displaystyle=!0:s&&(c.arraydef.displaystyle=!1),"S"===s&&(c.arraydef.scriptlevel=1),l&&(c.arraydef.useHeight=!1),t.Push(e),c},d.AlignedArray=function(t,e){var r=t.GetBrackets("\\begin{"+e.getName()+"}"),n=d.Array(t,e);return u.default.setArrayAlign(n,r)},d.Equation=function(t,e,r){return t.Push(e),u.default.checkEqnEnv(t),t.itemFactory.create("equation",r).setProperty("name",e.getName())},d.EqnArray=function(t,e,r,n,a,i){t.Push(e),n&&u.default.checkEqnEnv(t),a=(a=a.replace(/[^clr]/g,"").split("").join(" ")).replace(/l/g,"left").replace(/r/g,"right").replace(/c/g,"center");var o=t.itemFactory.create("eqnarray",e.getName(),r,n,t.stack.global);return o.arraydef={displaystyle:!0,columnalign:a,columnspacing:i||"1em",rowspacing:"3pt",side:t.options.tagSide,minlabelspacing:t.options.tagIndent},o},d.HandleNoTag=function(t,e){t.tags.notag()},d.HandleLabel=function(t,e){var r=t.GetArgument(e);if(""!==r&&!t.tags.refUpdate){if(t.tags.label)throw new o.default("MultipleCommand","Multiple %1",t.currentCS);if(t.tags.label=r,(t.tags.allLabels[r]||t.tags.labels[r])&&!t.options.ignoreDuplicateLabels)throw new o.default("MultipleLabel","Label '%1' multiply defined",r);t.tags.labels[r]=new f.Label}},d.HandleRef=function(t,e,r){var n=t.GetArgument(e),a=t.tags.allLabels[n]||t.tags.labels[n];a||(t.tags.refUpdate||(t.tags.redo=!0),a=new f.Label);var i=a.tag;r&&(i=t.tags.formatTag(i));var o=t.create("node","mrow",u.default.internalMath(t,i),{href:t.tags.formatUrl(a.id,t.options.baseURL),class:"MathJax_ref"});t.Push(o)},d.Macro=function(t,e,r,n,a){if(n){var i=[];if(null!=a){var s=t.GetBrackets(e);i.push(null==s?a:s)}for(var l=i.length;lt.configuration.options.maxMacros)throw new o.default("MaxMacroSub1","MathJax maximum macro substitution count exceeded; is there a recursive macro call?")},d.MathChoice=function(t,e){var r=t.ParseArg(e),n=t.ParseArg(e),a=t.ParseArg(e),i=t.ParseArg(e);t.Push(t.create("node","MathChoice",[r,n,a,i]))},e.default=d},function(t,e,r){"use strict";var n=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,a,i=r.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(n=i.next()).done;)o.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(a)throw a.error}}return o},a=this&&this.__spread||function(){for(var t=[],e=0;e0;)c+="rl",f.push("0em 0em"),p--;var d=f.join(" ");if(i)return e.AmsMethods.EqnArray(t,r,a,i,c,d);var h=e.AmsMethods.EqnArray(t,r,a,i,c,d);return n.default.setArrayAlign(h,l)},e.AmsMethods.Multline=function(t,e,r){t.Push(e),n.default.checkEqnEnv(t);var a=t.itemFactory.create("multline",r,t.stack);return a.arraydef={displaystyle:!0,rowspacing:".5em",columnwidth:"100%",width:t.options.multlineWidth,side:t.options.tagSide,minlabelspacing:t.options.tagIndent},a},e.NEW_OPS="ams-declare-ops",e.AmsMethods.HandleDeclareOp=function(t,r){var a=t.GetStar()?"":"\\nolimits\\SkipLimits",i=n.default.trimSpaces(t.GetArgument(r));"\\"===i.charAt(0)&&(i=i.substr(1));var o=t.GetArgument(r);o.match(/\\text/)||(o=o.replace(/\*/g,"\\text{*}").replace(/-/g,"\\text{-}")),t.configuration.handlers.retrieve(e.NEW_OPS).add(i,new l.Macro(i,e.AmsMethods.Macro,["\\mathop{\\rm "+o+"}"+a]))},e.AmsMethods.HandleOperatorName=function(t,e){var r=t.GetStar()?"":"\\nolimits\\SkipLimits",a=n.default.trimSpaces(t.GetArgument(e));a.match(/\\text/)||(a=a.replace(/\*/g,"\\text{*}").replace(/-/g,"\\text{-}")),t.string="\\mathop{\\rm "+a+"}"+r+" "+t.string.slice(t.i),t.i=0},e.AmsMethods.SkipLimits=function(t,e){var r=t.GetNext(),n=t.i;"\\"===r&&++t.i&&"limits"!==t.GetCS()&&(t.i=n)},e.AmsMethods.MultiIntegral=function(t,e,r){var n=t.GetNext();if("\\"===n){var a=t.i;n=t.GetArgument(e),t.i=a,"\\limits"===n&&(r="\\idotsint"===e?"\\!\\!\\mathop{\\,\\,"+r+"}":"\\!\\!\\!\\mathop{\\,\\,\\,"+r+"}")}t.string=r+" "+t.string.slice(t.i),t.i=0},e.AmsMethods.xArrow=function(t,e,r,i,s){var l={width:"+"+n.default.Em((i+s)/18),lspace:n.default.Em(i/18)},u=t.GetBrackets(e),f=t.ParseArg(e),p=t.create("token","mo",{stretchy:!0,texClass:c.TEXCLASS.REL},String.fromCodePoint(r)),d=t.create("node","munderover",[p]),h=t.create("node","mpadded",[f],l);if(a.default.setAttribute(h,"voffset",".15em"),a.default.setChild(d,d.over,h),u){var m=new o.default(u,t.stack.env,t.configuration).mml();h=t.create("node","mpadded",[m],l),a.default.setAttribute(h,"voffset","-.24em"),a.default.setChild(d,d.under,h)}a.default.setProperty(d,"subsupOK",!0),t.Push(d)},e.AmsMethods.HandleShove=function(t,e,r){var n=t.stack.Top();if("multline"!==n.kind)throw new s.default("CommandOnlyAllowedInEnv","%1 only allowed in %2 environment",t.currentCS,"multline");if(n.Size())throw new s.default("CommandAtTheBeginingOfLine","%1 must come at the beginning of the line",t.currentCS);n.setProperty("shove",r)},e.AmsMethods.CFrac=function(t,e){var r=n.default.trimSpaces(t.GetBrackets(e,"")),l=t.GetArgument(e),u=t.GetArgument(e),c={l:i.TexConstant.Align.LEFT,r:i.TexConstant.Align.RIGHT,"":""},f=new o.default("\\strut\\textstyle{"+l+"}",t.stack.env,t.configuration).mml(),p=new o.default("\\strut\\textstyle{"+u+"}",t.stack.env,t.configuration).mml(),d=t.create("node","mfrac",[f,p]);if(null==(r=c[r]))throw new s.default("IllegalAlign","Illegal alignment specified in %1",t.currentCS);r&&a.default.setProperties(d,{numalign:r,denomalign:r}),t.Push(d)},e.AmsMethods.Genfrac=function(t,e,r,i,o,l){null==r&&(r=t.GetDelimiterArg(e)),null==i&&(i=t.GetDelimiterArg(e)),null==o&&(o=t.GetArgument(e)),null==l&&(l=n.default.trimSpaces(t.GetArgument(e)));var u=t.ParseArg(e),c=t.ParseArg(e),f=t.create("node","mfrac",[u,c]);if(""!==o&&a.default.setAttribute(f,"linethickness",o),(r||i)&&(a.default.setProperty(f,"withDelims",!0),f=n.default.fixedFence(t.configuration,r,f,i)),""!==l){var p=parseInt(l,10),d=["D","T","S","SS"][p];if(null==d)throw new s.default("BadMathStyleFor","Bad math style for %1",t.currentCS);f=t.create("node","mstyle",[f]),"D"===d?a.default.setProperties(f,{displaystyle:!0,scriptlevel:0}):a.default.setProperties(f,{displaystyle:!1,scriptlevel:p-1})}t.Push(f)},e.AmsMethods.HandleTag=function(t,e){if(!t.tags.currentTag.taggable&&t.tags.env)throw new s.default("CommandNotAllowedInEnv","%1 not allowed in %2 environment",t.currentCS,t.tags.env);if(t.tags.currentTag.tag)throw new s.default("MultipleCommand","Multiple %1",t.currentCS);var r=t.GetStar(),a=n.default.trimSpaces(t.GetArgument(e));t.tags.tag(a,r)},e.AmsMethods.HandleNoTag=u.default.HandleNoTag,e.AmsMethods.HandleRef=u.default.HandleRef,e.AmsMethods.Macro=u.default.Macro,e.AmsMethods.Accent=u.default.Accent,e.AmsMethods.Tilde=u.default.Tilde,e.AmsMethods.Array=u.default.Array,e.AmsMethods.Spacer=u.default.Spacer,e.AmsMethods.NamedOp=u.default.NamedOp,e.AmsMethods.EqnArray=u.default.EqnArray},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=r(0),a=r(2),i=r(15),o=r(3),s=r(19),l={NewCommand:function(t,e){var r=o.default.trimSpaces(t.GetArgument(e)),a=t.GetBrackets(e),i=t.GetBrackets(e),u=t.GetArgument(e);if("\\"===r.charAt(0)&&(r=r.substr(1)),!r.match(/^(.|[a-z]+)$/i))throw new n.default("IllegalControlSequenceName","Illegal control sequence name for %1",e);if(a&&!(a=o.default.trimSpaces(a)).match(/^[0-9]+$/))throw new n.default("IllegalParamNumber","Illegal number of parameters specified in %1",e);s.default.addMacro(t,r,l.Macro,[u,a,i])},NewEnvironment:function(t,e){var r=o.default.trimSpaces(t.GetArgument(e)),a=t.GetBrackets(e),i=t.GetBrackets(e),u=t.GetArgument(e),c=t.GetArgument(e);if(a&&!(a=o.default.trimSpaces(a)).match(/^[0-9]+$/))throw new n.default("IllegalParamNumber","Illegal number of parameters specified in %1",e);s.default.addEnvironment(t,r,l.BeginEnv,[!0,u,c,a,i])},MacroDef:function(t,e){var r=s.default.GetCSname(t,e),n=s.default.GetTemplate(t,e,"\\"+r),a=t.GetArgument(e);n instanceof Array?s.default.addMacro(t,r,l.MacroWithTemplate,[a].concat(n)):s.default.addMacro(t,r,l.Macro,[a,n])},Let:function(t,e){var r=s.default.GetCSname(t,e),n=t.GetNext();"="===n&&(t.i++,n=t.GetNext());var i=t.configuration.handlers;if("\\"!==n){t.i++;var o=i.get("delimiter").lookup(n);o?s.default.addDelimiter(t,"\\"+r,o.char,o.attributes):s.default.addMacro(t,r,l.Macro,[n])}else{e=s.default.GetCSname(t,e);var u=i.get("delimiter").lookup("\\"+e);if(u)return void s.default.addDelimiter(t,"\\"+r,u.char,u.attributes);var c=i.get("macro").applicable(e);if(!c)return;if(c instanceof a.MacroMap){var f=c.lookup(e);return void s.default.addMacro(t,r,f.func,f.args,f.symbol)}u=c.lookup(e);var p=s.default.disassembleSymbol(r,u);s.default.addMacro(t,r,(function(t,e){for(var r=[],n=2;nt.configuration.options.maxMacros)throw new n.default("MaxMacroSub1","MathJax maximum macro substitution count exceeded; is here a recursive macro call?")},BeginEnv:function(t,e,r,n,a,i){if(e.getProperty("end")&&t.stack.env.closing===e.getName()){delete t.stack.env.closing;var s=t.string.slice(t.i);return t.string=n,t.i=0,t.Parse(),t.string=s,t.i=0,t.itemFactory.create("end").setProperty("name",e.getName())}if(a){var l=[];if(null!=i){var u=t.GetBrackets("\\begin{"+e.getName()+"}");l.push(null==u?i:u)}for(var c=l.length;c0?[o.toString()].concat(a):o;t.i++}throw new i.default("MissingReplacementString","Missing replacement string for definition of %1",e)},t.GetParameter=function(t,r,n){if(null==n)return t.GetArgument(r);for(var a=t.i,o=0,s=0;t.i0)&&!(n=i.next()).done;)o.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(a)throw a.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.TeX=void 0;var s=r(42),l=r(6),u=r(22),c=r(23),f=r(1),p=r(8),d=r(0),h=r(25),m=r(9),g=r(4);r(28);var y=function(t){function e(r){void 0===r&&(r={});var n=this,a=o(l.separateOptions(r,e.OPTIONS,u.FindTeX.OPTIONS),3),i=a[0],s=a[1],f=a[2];(n=t.call(this,s)||this).findTeX=n.options.FindTeX||new u.FindTeX(f);var p=n.options.packages,d=n.configuration=e.configure(p),g=n._parseOptions=new h.default(d,[n.options,m.TagsFactory.OPTIONS]);return l.userOptions(g.options,i),d.config(n),e.tags(g,d),n.postFilters.add(c.default.cleanSubSup,-6),n.postFilters.add(c.default.setInherited,-5),n.postFilters.add(c.default.moveLimits,-4),n.postFilters.add(c.default.cleanStretchy,-3),n.postFilters.add(c.default.cleanAttributes,-2),n.postFilters.add(c.default.combineRelations,-1),n}return a(e,t),e.configure=function(t){var e=new g.ParserConfiguration(t);return e.init(),e},e.tags=function(t,e){m.TagsFactory.addTags(e.tags),m.TagsFactory.setDefault(t.options.tags),t.tags=m.TagsFactory.getDefault(),t.tags.configuration=t},e.prototype.setMmlFactory=function(e){t.prototype.setMmlFactory.call(this,e),this._parseOptions.nodeFactory.setMmlFactory(e)},Object.defineProperty(e.prototype,"parseOptions",{get:function(){return this._parseOptions},enumerable:!1,configurable:!0}),e.prototype.compile=function(t,e){this.parseOptions.clear(),this.executeFilters(this.preFilters,t,e,this.parseOptions);var r,n=t.display;this.latex=t.math,this.parseOptions.tags.startEquation(t);try{r=new p.default(this.latex,{display:n,isInner:!1},this.parseOptions).mml()}catch(t){if(!(t instanceof d.default))throw t;this.parseOptions.error=!0,r=this.options.formatError(this,t)}return r=this.parseOptions.nodeFactory.create("node","math",[r]),n&&f.default.setAttribute(r,"display","block"),this.parseOptions.tags.finishEquation(t),this.parseOptions.root=r,this.executeFilters(this.postFilters,t,e,this.parseOptions),this.mathNode=this.parseOptions.root,this.mathNode},e.prototype.findMath=function(t){return this.findTeX.findMath(t)},e.prototype.formatError=function(t){var e=t.message.replace(/\n.*/,"");return this.parseOptions.nodeFactory.create("error",e,t.id,this.latex)},e.NAME="TeX",e.OPTIONS=i(i({},s.AbstractInputJax.OPTIONS),{FindTeX:null,packages:["base"],digits:/^(?:[0-9]+(?:\{,\}[0-9]{3})*(?:\.[0-9]*)?|\.[0-9]+)/,maxBuffer:5120,formatError:function(t,e){return t.formatError(e)}}),e}(s.AbstractInputJax);e.TeX=y},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.isObject=MathJax._.components.global.isObject,e.combineConfig=MathJax._.components.global.combineConfig,e.combineDefaults=MathJax._.components.global.combineDefaults,e.combineWithMathJax=MathJax._.components.global.combineWithMathJax,e.MathJax=MathJax._.components.global.MathJax},function(t,e,r){"use strict";var n,a=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),i=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,a,i=r.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(n=i.next()).done;)o.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(a)throw a.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.FindTeX=void 0;var o=r(43),s=r(44),l=r(45),u=function(t){function e(e){var r=t.call(this,e)||this;return r.getPatterns(),r}return a(e,t),e.prototype.getPatterns=function(){var t=this,e=this.options,r=[],n=[],a=[];this.end={},this.env=this.sub=0;var i=1;e.inlineMath.forEach((function(e){return t.addPattern(r,e,!1)})),e.displayMath.forEach((function(e){return t.addPattern(r,e,!0)})),r.length&&n.push(r.sort(s.sortLength).join("|")),e.processEnvironments&&(n.push("\\\\begin\\s*\\{([^}]*)\\}"),this.env=i,i++),e.processEscapes&&a.push("\\\\([\\\\$])"),e.processRefs&&a.push("(\\\\(?:eq)?ref\\s*\\{[^}]*\\})"),a.length&&(n.push("("+a.join("|")+")"),this.sub=i),this.start=new RegExp(n.join("|"),"g"),this.hasPatterns=n.length>0},e.prototype.addPattern=function(t,e,r){var n=i(e,2),a=n[0],o=n[1];t.push(s.quotePattern(a)),this.end[a]=[o,r,this.endPattern(o)]},e.prototype.endPattern=function(t,e){return new RegExp((e||s.quotePattern(t))+"|\\\\(?:[a-zA-Z]|.)|[{}]","g")},e.prototype.findEnd=function(t,e,r,n){for(var a,o=i(n,3),s=o[0],u=o[1],c=o[2],f=c.lastIndex=r.index+r[0].length,p=0;a=c.exec(t);){if((a[1]||a[0])===s&&0===p)return l.protoItem(r[0],t.substr(f,a.index-f),a[0],e,r.index,a.index+a[0].length,u);"{"===a[0]?p++:"}"===a[0]&&p&&p--}return null},e.prototype.findMathInString=function(t,e,r){var n,a;for(this.start.lastIndex=0;n=this.start.exec(r);){if(void 0!==n[this.env]&&this.env){var i="\\\\end\\s*(\\{"+s.quotePattern(n[this.env])+"\\})";(a=this.findEnd(r,e,n,["{"+n[this.env]+"}",!0,this.endPattern(null,i)]))&&(a.math=a.open+a.math+a.close,a.open=a.close="")}else if(void 0!==n[this.sub]&&this.sub){var o=n[this.sub];i=n.index+n[this.sub].length;a=2===o.length?l.protoItem("",o.substr(1),"",e,n.index,i):l.protoItem("",o,"",e,n.index,i,!1)}else a=this.findEnd(r,e,n,this.end[n[0]]);a&&(t.push(a),this.start.lastIndex=a.end.n)}},e.prototype.findMath=function(t){var e=[];if(this.hasPatterns)for(var r=0,n=t.length;r=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0});var a,i=r(5),o=r(1);!function(t){t.cleanStretchy=function(t){var e,r,a=t.data;try{for(var i=n(a.getList("fixStretchy")),s=i.next();!s.done;s=i.next()){var l=s.value;if(o.default.getProperty(l,"fixStretchy")){var u=o.default.getForm(l);u&&u[3]&&u[3].stretchy&&o.default.setAttribute(l,"stretchy",!1);var c=l.parent;if(!(o.default.getTexClass(l)||u&&u[2])){var f=a.nodeFactory.create("node","TeXAtom",[l]);c.replaceChild(f,l),f.inheritAttributesFrom(l)}o.default.removeProperties(l,"fixStretchy")}}}catch(t){e={error:t}}finally{try{s&&!s.done&&(r=i.return)&&r.call(i)}finally{if(e)throw e.error}}},t.cleanAttributes=function(t){t.data.root.walkTree((function(t,e){var r,a,i=t.attributes;if(i)try{for(var o=n(i.getExplicitNames()),s=o.next();!s.done;s=o.next()){var l=s.value;i.attributes[l]===t.attributes.getInherited(l)&&delete i.attributes[l]}}catch(t){r={error:t}}finally{try{s&&!s.done&&(a=o.return)&&a.call(o)}finally{if(r)throw r.error}}}),{})},t.combineRelations=function(t){var a,s;try{for(var l=n(t.data.getList("mo")),u=l.next();!u.done;u=l.next()){var c=u.value;if(!c.getProperty("relationsCombined")&&c.parent&&(!c.parent||o.default.isType(c.parent,"mrow"))&&o.default.getTexClass(c)===i.TEXCLASS.REL){for(var f=c.parent,p=void 0,d=f.childNodes,h=d.indexOf(c)+1,m=o.default.getProperty(c,"variantForm");h=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,a,i=r.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(n=i.next()).done;)o.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(a)throw a.error}}return o},i=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(n=i.next()).done;)o.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(a)throw a.error}}return o},a=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0});var o=r(26),s=r(27),l=r(6),u=function(){function t(t,e){void 0===e&&(e=[]),this.options={},this.packageData=new Map,this.parsers=[],this.root=null,this.nodeLists={},this.error=!1,this.handlers=t.handlers,this.nodeFactory=new s.NodeFactory,this.nodeFactory.configuration=this,this.nodeFactory.setCreators(t.nodes),this.itemFactory=new o.default(t.items),this.itemFactory.configuration=this,l.defaultOptions.apply(void 0,a([this.options],e)),l.defaultOptions(this.options,t.options)}return t.prototype.pushParser=function(t){this.parsers.unshift(t)},t.prototype.popParser=function(){this.parsers.shift()},Object.defineProperty(t.prototype,"parser",{get:function(){return this.parsers[0]},enumerable:!1,configurable:!0}),t.prototype.clear=function(){this.parsers=[],this.root=null,this.nodeLists={},this.error=!1,this.tags.resetTag()},t.prototype.addNode=function(t,e){var r=this.nodeLists[t];r||(r=this.nodeLists[t]=[]),r.push(e)},t.prototype.getList=function(t){var e,r,n=this.nodeLists[t]||[],a=[];try{for(var o=i(n),s=o.next();!s.done;s=o.next()){var l=s.value;this.inTree(l)&&a.push(l)}}catch(t){e={error:t}}finally{try{s&&!s.done&&(r=o.return)&&r.call(o)}finally{if(e)throw e.error}}return this.nodeLists[t]=a,a},t.prototype.inTree=function(t){for(;t&&t!==this.root;)t=t.parent;return!!t},t}();e.default=u},function(t,e,r){"use strict";var n,a,i=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)});Object.defineProperty(e,"__esModule",{value:!0});var o=r(13),s=r(47),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e}(o.BaseItem),u=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.defaultKind="dummy",e.configuration=null,e}return i(e,t),e.DefaultStackItems=((a={})[l.prototype.kind]=l,a),e}(s.AbstractFactory);e.default=u},function(t,e,r){"use strict";var n=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,a,i=r.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(n=i.next()).done;)o.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(a)throw a.error}}return o},a=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,a,i=r.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(n=i.next()).done;)o.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(a)throw a.error}}return o},i=this&&this.__spread||function(){for(var t=[],e=0;e\u20d2",nvinfin:"\u29de",nvlArr:"\u2902",nvle:"\u2264\u20d2",nvlt:"<\u20d2",nvltrie:"\u22b4\u20d2",nvrArr:"\u2903",nvrtrie:"\u22b5\u20d2",nvsim:"\u223c\u20d2",nwArr:"\u21d6",nwarhk:"\u2923",nwarrow:"\u2196",nwnear:"\u2927"},"n")},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.PrioritizedList=MathJax._.util.PrioritizedList.PrioritizedList},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.FunctionList=MathJax._.util.FunctionList.FunctionList},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.PackageError=MathJax._.components.package.PackageError,e.Package=MathJax._.components.package.Package},function(t,e,r){"use strict";var n,a,i=this&&this.__extends||(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)});Object.defineProperty(e,"__esModule",{value:!0}),e.AmsConfiguration=e.AmsTags=void 0;var o=r(4),s=r(29),l=r(9),u=r(17);r(51);var c=r(2),f=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e}(l.AbstractTags);e.AmsTags=f;e.AmsConfiguration=o.Configuration.create("ams",{handler:{delimiter:["AMSsymbols-delimiter","AMSmath-delimiter"],macro:["AMSsymbols-mathchar0mi","AMSsymbols-mathchar0m0","AMSsymbols-delimiter","AMSsymbols-macros","AMSmath-mathchar0mo","AMSmath-macros","AMSmath-delimiter"],environment:["AMSmath-environment"]},items:(a={},a[s.MultlineItem.prototype.kind]=s.MultlineItem,a),tags:{ams:f},init:function(t){new c.CommandMap(u.NEW_OPS,{},{}),t.append(o.Configuration.local({handler:{macro:[u.NEW_OPS]},priority:-1}))}})},function(t,e,r){"use strict";var n=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,a,i=r.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(n=i.next()).done;)o.push(n.value)}catch(t){a={error:t}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(a)throw a.error}}return o},a=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.AutoloadConfiguration=void 0;var i=r(4),o=r(2),s=r(10),l=r(30),u=r(36),c=r(6);function f(t,e,r,i){var o,s,c,f;if(u.Package.packages.has(t.options.require.prefix+r)){var h=t.options.autoload[r],m=n(2===h.length&&Array.isArray(h[0])?h:[h,[]],2),g=m[0],y=m[1];try{for(var v=a(g),b=v.next();!b.done;b=v.next()){var A=b.value;p.remove(A)}}catch(t){o={error:t}}finally{try{b&&!b.done&&(s=v.return)&&s.call(v)}finally{if(o)throw o.error}}try{for(var M=a(y),x=M.next();!x.done;x=M.next()){var T=x.value;d.remove(T)}}catch(t){c={error:t}}finally{try{x&&!x.done&&(f=M.return)&&f.call(M)}finally{if(c)throw c.error}}t.string=(i?e:"\\begin{"+e.slice(1)+"}")+t.string.slice(t.i),t.i=0}l.RequireLoad(t,r)}var p=new o.CommandMap("autoload-macros",{},{}),d=new o.CommandMap("autoload-environments",{},{});e.AutoloadConfiguration=i.Configuration.create("autoload",{handler:{macro:["autoload-macros"],environment:["autoload-environments"]},options:{autoload:c.expandable({action:["toggle","mathtip","texttip"],amscd:[[],["CD"]],bbox:["bbox"],boldsymbol:["boldsymbol"],braket:["bra","ket","braket","set","Bra","Ket","Braket","Set","ketbra","Ketbra"],bussproofs:[[],["prooftree"]],cancel:["cancel","bcancel","xcancel","cancelto"],color:["color","definecolor","textcolor","colorbox","fcolorbox"],enclose:["enclose"],extpfeil:["xtwoheadrightarrow","xtwoheadleftarrow","xmapsto","xlongequal","xtofrom","Newextarrow"],html:["href","class","style","cssId"],mhchem:["ce","pu"],newcommand:["newcommand","renewcommand","newenvironment","renewenvironment","def","let"],unicode:["unicode"],verb:["verb"]})},config:function(t,e){var r,i,o,u,c,h,m=e.parseOptions,g=m.handlers.get("macro"),y=m.handlers.get("environment"),v=m.options.autoload;m.packageData.set("autoload",{Autoload:f});try{for(var b=a(Object.keys(v)),A=b.next();!A.done;A=b.next()){var M=A.value,x=v[M],T=n(2===x.length&&Array.isArray(x[0])?x:[x,[]],2),w=T[0],S=T[1];try{for(var P=(o=void 0,a(w)),C=P.next();!C.done;C=P.next()){var O=C.value;g.lookup(O)&&"color"!==O||p.add(O,new s.Macro(O,f,[M,!0]))}}catch(t){o={error:t}}finally{try{C&&!C.done&&(u=P.return)&&u.call(P)}finally{if(o)throw o.error}}try{for(var E=(c=void 0,a(S)),k=E.next();!k.done;k=E.next()){var _=k.value;y.lookup(_)||d.add(_,new s.Macro(_,f,[M,!1]))}}catch(t){c={error:t}}finally{try{k&&!k.done&&(h=E.return)&&h.call(E)}finally{if(c)throw c.error}}}}catch(t){r={error:t}}finally{try{A&&!A.done&&(i=b.return)&&i.call(b)}finally{if(r)throw r.error}}m.packageData.get("require")||l.RequireConfiguration.config(t,e)},init:function(t){t.options.require||c.defaultOptions(t.options,l.RequireConfiguration.options)},priority:10})},function(t,e,r){"use strict";var n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.ConfigMacrosConfiguration=void 0;var a=r(4),i=r(6),o=r(2),s=r(10),l=r(18);e.ConfigMacrosConfiguration=a.Configuration.create("configmacros",{init:function(t){new o.CommandMap("configmacros-map",{},{}),t.append(a.Configuration.local({handler:{macro:["configmacros-map"]},priority:3}))},config:function(t,e){var r,a,i=e.parseOptions.handlers.retrieve("configmacros-map"),o=e.parseOptions.options.macros;try{for(var u=n(Object.keys(o)),c=u.next();!c.done;c=u.next()){var f=c.value,p="string"==typeof o[f]?[o[f]]:o[f],d=Array.isArray(p[2])?new s.Macro(f,l.default.MacroWithTemplate,p.slice(0,2).concat(p[2])):new s.Macro(f,l.default.Macro,p);i.add(f,d)}}catch(t){r={error:t}}finally{try{c&&!c.done&&(a=u.return)&&a.call(u)}finally{if(r)throw r.error}}},options:{macros:i.expandable({})}})},function(t,e,r){"use strict";var n;Object.defineProperty(e,"__esModule",{value:!0}),e.NewcommandConfiguration=void 0;var a=r(4),i=r(32),o=r(19);r(53);var s=r(16),l=r(2);e.NewcommandConfiguration=a.Configuration.create("newcommand",{handler:{macro:["Newcommand-macros"]},items:(n={},n[i.BeginEnvItem.prototype.kind]=i.BeginEnvItem,n),options:{maxMacros:1e3},init:function(t){new l.DelimiterMap(o.default.NEW_DELIMITER,s.default.delimiter,{}),new l.CommandMap(o.default.NEW_COMMAND,{},{}),new l.EnvironmentMap(o.default.NEW_ENVIRONMENT,s.default.environment,{},{}),t.append(a.Configuration.local({handler:{character:[],delimiter:[o.default.NEW_DELIMITER],macro:[o.default.NEW_DELIMITER,o.default.NEW_COMMAND],environment:[o.default.NEW_ENVIRONMENT]},priority:-1}))}})},function(t,e,r){"use strict";var n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.NoUndefinedConfiguration=void 0;var a=r(4);e.NoUndefinedConfiguration=a.Configuration.create("noundefined",{fallback:{macro:function(t,e){var r,a,i=t.create("text","\\"+e),o=t.options.noundefined||{},s={};try{for(var l=n(["color","background","size"]),u=l.next();!u.done;u=l.next()){var c=u.value;o[c]&&(s["math"+c]=o[c])}}catch(t){r={error:t}}finally{try{u&&!u.done&&(a=l.return)&&a.call(l)}finally{if(r)throw r.error}}t.Push(t.create("node","mtext",[],s,i))}},options:{noundefined:{color:"red",background:"",size:""}},priority:3})},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractInputJax=MathJax._.core.InputJax.AbstractInputJax},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractFindMath=MathJax._.core.FindMath.AbstractFindMath},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.sortLength=MathJax._.util.string.sortLength,e.quotePattern=MathJax._.util.string.quotePattern,e.unicodeChars=MathJax._.util.string.unicodeChars,e.isPercent=MathJax._.util.string.isPercent,e.split=MathJax._.util.string.split},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.protoItem=MathJax._.core.MathItem.protoItem,e.AbstractMathItem=MathJax._.core.MathItem.AbstractMathItem,e.STATE=MathJax._.core.MathItem.STATE,e.newState=MathJax._.core.MathItem.newState},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.MmlMo=MathJax._.core.MmlTree.MmlNodes.mo.MmlMo},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractFactory=MathJax._.core.Tree.Factory.AbstractFactory},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=r(2),a=r(7),i=r(15),o=r(16),s=r(5);new n.RegExpMap("letter",o.default.variable,/[a-z]/i),new n.RegExpMap("digit",o.default.digit,/[0-9.,]/),new n.RegExpMap("command",o.default.controlSequence,/^\\/),new n.MacroMap("special",{"{":"Open","}":"Close","~":"Tilde","^":"Superscript",_:"Subscript"," ":"Space","\t":"Space","\r":"Space","\n":"Space","'":"Prime","%":"Comment","&":"Entry","#":"Hash","\xa0":"Space","\u2019":"Prime"},i.default),new n.CharacterMap("mathchar0mi",o.default.mathchar0mi,{alpha:"\u03b1",beta:"\u03b2",gamma:"\u03b3",delta:"\u03b4",epsilon:"\u03f5",zeta:"\u03b6",eta:"\u03b7",theta:"\u03b8",iota:"\u03b9",kappa:"\u03ba",lambda:"\u03bb",mu:"\u03bc",nu:"\u03bd",xi:"\u03be",omicron:"\u03bf",pi:"\u03c0",rho:"\u03c1",sigma:"\u03c3",tau:"\u03c4",upsilon:"\u03c5",phi:"\u03d5",chi:"\u03c7",psi:"\u03c8",omega:"\u03c9",varepsilon:"\u03b5",vartheta:"\u03d1",varpi:"\u03d6",varrho:"\u03f1",varsigma:"\u03c2",varphi:"\u03c6",S:["\xa7",{mathvariant:a.TexConstant.Variant.NORMAL}],aleph:["\u2135",{mathvariant:a.TexConstant.Variant.NORMAL}],hbar:["\u210f",{variantForm:!0}],imath:"\u0131",jmath:"\u0237",ell:"\u2113",wp:["\u2118",{mathvariant:a.TexConstant.Variant.NORMAL}],Re:["\u211c",{mathvariant:a.TexConstant.Variant.NORMAL}],Im:["\u2111",{mathvariant:a.TexConstant.Variant.NORMAL}],partial:["\u2202",{mathvariant:a.TexConstant.Variant.ITALIC}],infty:["\u221e",{mathvariant:a.TexConstant.Variant.NORMAL}],prime:["\u2032",{mathvariant:a.TexConstant.Variant.NORMAL,variantForm:!0}],emptyset:["\u2205",{mathvariant:a.TexConstant.Variant.NORMAL}],nabla:["\u2207",{mathvariant:a.TexConstant.Variant.NORMAL}],top:["\u22a4",{mathvariant:a.TexConstant.Variant.NORMAL}],bot:["\u22a5",{mathvariant:a.TexConstant.Variant.NORMAL}],angle:["\u2220",{mathvariant:a.TexConstant.Variant.NORMAL}],triangle:["\u25b3",{mathvariant:a.TexConstant.Variant.NORMAL}],backslash:["\u2216",{mathvariant:a.TexConstant.Variant.NORMAL,variantForm:!0}],forall:["\u2200",{mathvariant:a.TexConstant.Variant.NORMAL}],exists:["\u2203",{mathvariant:a.TexConstant.Variant.NORMAL}],neg:["\xac",{mathvariant:a.TexConstant.Variant.NORMAL}],lnot:["\xac",{mathvariant:a.TexConstant.Variant.NORMAL}],flat:["\u266d",{mathvariant:a.TexConstant.Variant.NORMAL}],natural:["\u266e",{mathvariant:a.TexConstant.Variant.NORMAL}],sharp:["\u266f",{mathvariant:a.TexConstant.Variant.NORMAL}],clubsuit:["\u2663",{mathvariant:a.TexConstant.Variant.NORMAL}],diamondsuit:["\u2662",{mathvariant:a.TexConstant.Variant.NORMAL}],heartsuit:["\u2661",{mathvariant:a.TexConstant.Variant.NORMAL}],spadesuit:["\u2660",{mathvariant:a.TexConstant.Variant.NORMAL}]}),new n.CharacterMap("mathchar0mo",o.default.mathchar0mo,{surd:"\u221a",coprod:["\u2210",{texClass:s.TEXCLASS.OP,movesupsub:!0}],bigvee:["\u22c1",{texClass:s.TEXCLASS.OP,movesupsub:!0}],bigwedge:["\u22c0",{texClass:s.TEXCLASS.OP,movesupsub:!0}],biguplus:["\u2a04",{texClass:s.TEXCLASS.OP,movesupsub:!0}],bigcap:["\u22c2",{texClass:s.TEXCLASS.OP,movesupsub:!0}],bigcup:["\u22c3",{texClass:s.TEXCLASS.OP,movesupsub:!0}],int:["\u222b",{texClass:s.TEXCLASS.OP}],intop:["\u222b",{texClass:s.TEXCLASS.OP,movesupsub:!0,movablelimits:!0}],iint:["\u222c",{texClass:s.TEXCLASS.OP}],iiint:["\u222d",{texClass:s.TEXCLASS.OP}],prod:["\u220f",{texClass:s.TEXCLASS.OP,movesupsub:!0}],sum:["\u2211",{texClass:s.TEXCLASS.OP,movesupsub:!0}],bigotimes:["\u2a02",{texClass:s.TEXCLASS.OP,movesupsub:!0}],bigoplus:["\u2a01",{texClass:s.TEXCLASS.OP,movesupsub:!0}],bigodot:["\u2a00",{texClass:s.TEXCLASS.OP,movesupsub:!0}],oint:["\u222e",{texClass:s.TEXCLASS.OP}],bigsqcup:["\u2a06",{texClass:s.TEXCLASS.OP,movesupsub:!0}],smallint:["\u222b",{largeop:!1}],triangleleft:"\u25c3",triangleright:"\u25b9",bigtriangleup:"\u25b3",bigtriangledown:"\u25bd",wedge:"\u2227",land:"\u2227",vee:"\u2228",lor:"\u2228",cap:"\u2229",cup:"\u222a",ddagger:"\u2021",dagger:"\u2020",sqcap:"\u2293",sqcup:"\u2294",uplus:"\u228e",amalg:"\u2a3f",diamond:"\u22c4",bullet:"\u2219",wr:"\u2240",div:"\xf7",odot:["\u2299",{largeop:!1}],oslash:["\u2298",{largeop:!1}],otimes:["\u2297",{largeop:!1}],ominus:["\u2296",{largeop:!1}],oplus:["\u2295",{largeop:!1}],mp:"\u2213",pm:"\xb1",circ:"\u2218",bigcirc:"\u25ef",setminus:"\u2216",cdot:"\u22c5",ast:"\u2217",times:"\xd7",star:"\u22c6",propto:"\u221d",sqsubseteq:"\u2291",sqsupseteq:"\u2292",parallel:"\u2225",mid:"\u2223",dashv:"\u22a3",vdash:"\u22a2",leq:"\u2264",le:"\u2264",geq:"\u2265",ge:"\u2265",lt:"<",gt:">",succ:"\u227b",prec:"\u227a",approx:"\u2248",succeq:"\u2ab0",preceq:"\u2aaf",supset:"\u2283",subset:"\u2282",supseteq:"\u2287",subseteq:"\u2286",in:"\u2208",ni:"\u220b",notin:"\u2209",owns:"\u220b",gg:"\u226b",ll:"\u226a",sim:"\u223c",simeq:"\u2243",perp:"\u22a5",equiv:"\u2261",asymp:"\u224d",smile:"\u2323",frown:"\u2322",ne:"\u2260",neq:"\u2260",cong:"\u2245",doteq:"\u2250",bowtie:"\u22c8",models:"\u22a8",notChar:"\u29f8",Leftrightarrow:"\u21d4",Leftarrow:"\u21d0",Rightarrow:"\u21d2",leftrightarrow:"\u2194",leftarrow:"\u2190",gets:"\u2190",rightarrow:"\u2192",to:["\u2192",{accent:!1}],mapsto:"\u21a6",leftharpoonup:"\u21bc",leftharpoondown:"\u21bd",rightharpoonup:"\u21c0",rightharpoondown:"\u21c1",nearrow:"\u2197",searrow:"\u2198",nwarrow:"\u2196",swarrow:"\u2199",rightleftharpoons:"\u21cc",hookrightarrow:"\u21aa",hookleftarrow:"\u21a9",longleftarrow:"\u27f5",Longleftarrow:"\u27f8",longrightarrow:"\u27f6",Longrightarrow:"\u27f9",Longleftrightarrow:"\u27fa",longleftrightarrow:"\u27f7",longmapsto:"\u27fc",ldots:"\u2026",cdots:"\u22ef",vdots:"\u22ee",ddots:"\u22f1",dotsc:"\u2026",dotsb:"\u22ef",dotsm:"\u22ef",dotsi:"\u22ef",dotso:"\u2026",ldotp:[".",{texClass:s.TEXCLASS.PUNCT}],cdotp:["\u22c5",{texClass:s.TEXCLASS.PUNCT}],colon:[":",{texClass:s.TEXCLASS.PUNCT}]}),new n.CharacterMap("mathchar7",o.default.mathchar7,{Gamma:"\u0393",Delta:"\u0394",Theta:"\u0398",Lambda:"\u039b",Xi:"\u039e",Pi:"\u03a0",Sigma:"\u03a3",Upsilon:"\u03a5",Phi:"\u03a6",Psi:"\u03a8",Omega:"\u03a9",_:"_","#":"#",$:"$","%":"%","&":"&",And:"&"}),new n.DelimiterMap("delimiter",o.default.delimiter,{"(":"(",")":")","[":"[","]":"]","<":"\u27e8",">":"\u27e9","\\lt":"\u27e8","\\gt":"\u27e9","/":"/","|":["|",{texClass:s.TEXCLASS.ORD}],".":"","\\\\":"\\","\\lmoustache":"\u23b0","\\rmoustache":"\u23b1","\\lgroup":"\u27ee","\\rgroup":"\u27ef","\\arrowvert":"\u23d0","\\Arrowvert":"\u2016","\\bracevert":"\u23aa","\\Vert":["\u2225",{texClass:s.TEXCLASS.ORD}],"\\|":["\u2225",{texClass:s.TEXCLASS.ORD}],"\\vert":["|",{texClass:s.TEXCLASS.ORD}],"\\uparrow":"\u2191","\\downarrow":"\u2193","\\updownarrow":"\u2195","\\Uparrow":"\u21d1","\\Downarrow":"\u21d3","\\Updownarrow":"\u21d5","\\backslash":"\\","\\rangle":"\u27e9","\\langle":"\u27e8","\\rbrace":"}","\\lbrace":"{","\\}":"}","\\{":"{","\\rceil":"\u2309","\\lceil":"\u2308","\\rfloor":"\u230b","\\lfloor":"\u230a","\\lbrack":"[","\\rbrack":"]"}),new n.CommandMap("macros",{displaystyle:["SetStyle","D",!0,0],textstyle:["SetStyle","T",!1,0],scriptstyle:["SetStyle","S",!1,1],scriptscriptstyle:["SetStyle","SS",!1,2],rm:["SetFont",a.TexConstant.Variant.NORMAL],mit:["SetFont",a.TexConstant.Variant.ITALIC],oldstyle:["SetFont",a.TexConstant.Variant.OLDSTYLE],cal:["SetFont",a.TexConstant.Variant.CALLIGRAPHIC],it:["SetFont","-tex-mathit"],bf:["SetFont",a.TexConstant.Variant.BOLD],bbFont:["SetFont",a.TexConstant.Variant.DOUBLESTRUCK],scr:["SetFont",a.TexConstant.Variant.SCRIPT],frak:["SetFont",a.TexConstant.Variant.FRAKTUR],sf:["SetFont",a.TexConstant.Variant.SANSSERIF],tt:["SetFont",a.TexConstant.Variant.MONOSPACE],tiny:["SetSize",.5],Tiny:["SetSize",.6],scriptsize:["SetSize",.7],small:["SetSize",.85],normalsize:["SetSize",1],large:["SetSize",1.2],Large:["SetSize",1.44],LARGE:["SetSize",1.73],huge:["SetSize",2.07],Huge:["SetSize",2.49],arcsin:["NamedFn"],arccos:["NamedFn"],arctan:["NamedFn"],arg:["NamedFn"],cos:["NamedFn"],cosh:["NamedFn"],cot:["NamedFn"],coth:["NamedFn"],csc:["NamedFn"],deg:["NamedFn"],det:"NamedOp",dim:["NamedFn"],exp:["NamedFn"],gcd:"NamedOp",hom:["NamedFn"],inf:"NamedOp",ker:["NamedFn"],lg:["NamedFn"],lim:"NamedOp",liminf:["NamedOp","lim inf"],limsup:["NamedOp","lim sup"],ln:["NamedFn"],log:["NamedFn"],max:"NamedOp",min:"NamedOp",Pr:"NamedOp",sec:["NamedFn"],sin:["NamedFn"],sinh:["NamedFn"],sup:"NamedOp",tan:["NamedFn"],tanh:["NamedFn"],limits:["Limits",1],nolimits:["Limits",0],overline:["UnderOver","00AF",null,1],underline:["UnderOver","005F"],overbrace:["UnderOver","23DE",1],underbrace:["UnderOver","23DF",1],overparen:["UnderOver","23DC"],underparen:["UnderOver","23DD"],overrightarrow:["UnderOver","2192"],underrightarrow:["UnderOver","2192"],overleftarrow:["UnderOver","2190"],underleftarrow:["UnderOver","2190"],overleftrightarrow:["UnderOver","2194"],underleftrightarrow:["UnderOver","2194"],overset:"Overset",underset:"Underset",stackrel:["Macro","\\mathrel{\\mathop{#2}\\limits^{#1}}",2],over:"Over",overwithdelims:"Over",atop:"Over",atopwithdelims:"Over",above:"Over",abovewithdelims:"Over",brace:["Over","{","}"],brack:["Over","[","]"],choose:["Over","(",")"],frac:"Frac",sqrt:"Sqrt",root:"Root",uproot:["MoveRoot","upRoot"],leftroot:["MoveRoot","leftRoot"],left:"LeftRight",right:"LeftRight",middle:"Middle",llap:"Lap",rlap:"Lap",raise:"RaiseLower",lower:"RaiseLower",moveleft:"MoveLeftRight",moveright:"MoveLeftRight",",":["Spacer",a.TexConstant.Length.THINMATHSPACE],":":["Spacer",a.TexConstant.Length.MEDIUMMATHSPACE],">":["Spacer",a.TexConstant.Length.MEDIUMMATHSPACE],";":["Spacer",a.TexConstant.Length.THICKMATHSPACE],"!":["Spacer",a.TexConstant.Length.NEGATIVETHINMATHSPACE],enspace:["Spacer",".5em"],quad:["Spacer","1em"],qquad:["Spacer","2em"],thinspace:["Spacer",a.TexConstant.Length.THINMATHSPACE],negthinspace:["Spacer",a.TexConstant.Length.NEGATIVETHINMATHSPACE],hskip:"Hskip",hspace:"Hskip",kern:"Hskip",mskip:"Hskip",mspace:"Hskip",mkern:"Hskip",rule:"rule",Rule:["Rule"],Space:["Rule","blank"],big:["MakeBig",s.TEXCLASS.ORD,.85],Big:["MakeBig",s.TEXCLASS.ORD,1.15],bigg:["MakeBig",s.TEXCLASS.ORD,1.45],Bigg:["MakeBig",s.TEXCLASS.ORD,1.75],bigl:["MakeBig",s.TEXCLASS.OPEN,.85],Bigl:["MakeBig",s.TEXCLASS.OPEN,1.15],biggl:["MakeBig",s.TEXCLASS.OPEN,1.45],Biggl:["MakeBig",s.TEXCLASS.OPEN,1.75],bigr:["MakeBig",s.TEXCLASS.CLOSE,.85],Bigr:["MakeBig",s.TEXCLASS.CLOSE,1.15],biggr:["MakeBig",s.TEXCLASS.CLOSE,1.45],Biggr:["MakeBig",s.TEXCLASS.CLOSE,1.75],bigm:["MakeBig",s.TEXCLASS.REL,.85],Bigm:["MakeBig",s.TEXCLASS.REL,1.15],biggm:["MakeBig",s.TEXCLASS.REL,1.45],Biggm:["MakeBig",s.TEXCLASS.REL,1.75],mathord:["TeXAtom",s.TEXCLASS.ORD],mathop:["TeXAtom",s.TEXCLASS.OP],mathopen:["TeXAtom",s.TEXCLASS.OPEN],mathclose:["TeXAtom",s.TEXCLASS.CLOSE],mathbin:["TeXAtom",s.TEXCLASS.BIN],mathrel:["TeXAtom",s.TEXCLASS.REL],mathpunct:["TeXAtom",s.TEXCLASS.PUNCT],mathinner:["TeXAtom",s.TEXCLASS.INNER],vcenter:["TeXAtom",s.TEXCLASS.VCENTER],buildrel:"BuildRel",hbox:["HBox",0],text:"HBox",mbox:["HBox",0],fbox:"FBox",strut:"Strut",mathstrut:["Macro","\\vphantom{(}"],phantom:"Phantom",vphantom:["Phantom",1,0],hphantom:["Phantom",0,1],smash:"Smash",acute:["Accent","00B4"],grave:["Accent","0060"],ddot:["Accent","00A8"],tilde:["Accent","007E"],bar:["Accent","00AF"],breve:["Accent","02D8"],check:["Accent","02C7"],hat:["Accent","005E"],vec:["Accent","2192"],dot:["Accent","02D9"],widetilde:["Accent","007E",1],widehat:["Accent","005E",1],matrix:"Matrix",array:"Matrix",pmatrix:["Matrix","(",")"],cases:["Matrix","{","","left left",null,".1em",null,!0],eqalign:["Matrix",null,null,"right left",a.TexConstant.Length.THICKMATHSPACE,".5em","D"],displaylines:["Matrix",null,null,"center",null,".5em","D"],cr:"Cr","\\":"CrLaTeX",newline:["CrLaTeX",!0],hline:["HLine","solid"],hdashline:["HLine","dashed"],eqalignno:["Matrix",null,null,"right left",a.TexConstant.Length.THICKMATHSPACE,".5em","D",null,"right"],leqalignno:["Matrix",null,null,"right left",a.TexConstant.Length.THICKMATHSPACE,".5em","D",null,"left"],hfill:"HFill",hfil:"HFill",hfilll:"HFill",bmod:["Macro",'\\mmlToken{mo}[lspace="thickmathspace" rspace="thickmathspace"]{mod}'],pmod:["Macro","\\pod{\\mmlToken{mi}{mod}\\kern 6mu #1}",1],mod:["Macro","\\mathchoice{\\kern18mu}{\\kern12mu}{\\kern12mu}{\\kern12mu}\\mmlToken{mi}{mod}\\,\\,#1",1],pod:["Macro","\\mathchoice{\\kern18mu}{\\kern8mu}{\\kern8mu}{\\kern8mu}(#1)",1],iff:["Macro","\\;\\Longleftrightarrow\\;"],skew:["Macro","{{#2{#3\\mkern#1mu}\\mkern-#1mu}{}}",3],mathcal:["Macro","{\\cal #1}",1],mathscr:["Macro","{\\scr #1}",1],mathrm:["Macro","{\\rm #1}",1],mathbf:["Macro","{\\bf #1}",1],mathbb:["Macro","{\\bbFont #1}",1],Bbb:["Macro","{\\bbFont #1}",1],mathit:["Macro","{\\it #1}",1],mathfrak:["Macro","{\\frak #1}",1],mathsf:["Macro","{\\sf #1}",1],mathtt:["Macro","{\\tt #1}",1],textrm:["HBox",null,a.TexConstant.Variant.NORMAL],textit:["HBox",null,a.TexConstant.Variant.ITALIC],textbf:["HBox",null,a.TexConstant.Variant.BOLD],textsf:["HBox",null,a.TexConstant.Variant.SANSSERIF],texttt:["HBox",null,a.TexConstant.Variant.MONOSPACE],pmb:["Macro","\\rlap{#1}\\kern1px{#1}",1],TeX:["Macro","T\\kern-.14em\\lower.5ex{E}\\kern-.115em X"],LaTeX:["Macro","L\\kern-.325em\\raise.21em{\\scriptstyle{A}}\\kern-.17em\\TeX"]," ":["Macro","\\text{ }"],not:"Not",dots:"Dots",space:"Tilde","\xa0":"Tilde",begin:"BeginEnd",end:"BeginEnd",label:"HandleLabel",ref:"HandleRef",nonumber:"HandleNoTag",mathchoice:"MathChoice",mmlToken:"MmlToken"},i.default),new n.EnvironmentMap("environment",o.default.environment,{array:["AlignedArray"],equation:["Equation",null,!0],"equation*":["Equation",null,!1],eqnarray:["EqnArray",null,!0,!0,"rcl","0 "+a.TexConstant.Length.THICKMATHSPACE,".5em"]},i.default),new n.CharacterMap("not_remap",null,{"\u2190":"\u219a","\u2192":"\u219b","\u2194":"\u21ae","\u21d0":"\u21cd","\u21d2":"\u21cf","\u21d4":"\u21ce","\u2208":"\u2209","\u220b":"\u220c","\u2223":"\u2224","\u2225":"\u2226","\u223c":"\u2241","~":"\u2241","\u2243":"\u2244","\u2245":"\u2247","\u2248":"\u2249","\u224d":"\u226d","=":"\u2260","\u2261":"\u2262","<":"\u226e",">":"\u226f","\u2264":"\u2270","\u2265":"\u2271","\u2272":"\u2274","\u2273":"\u2275","\u2276":"\u2278","\u2277":"\u2279","\u227a":"\u2280","\u227b":"\u2281","\u2282":"\u2284","\u2283":"\u2285","\u2286":"\u2288","\u2287":"\u2289","\u22a2":"\u22ac","\u22a8":"\u22ad","\u22a9":"\u22ae","\u22ab":"\u22af","\u227c":"\u22e0","\u227d":"\u22e1","\u2291":"\u22e2","\u2292":"\u22e3","\u22b2":"\u22ea","\u22b3":"\u22eb","\u22b4":"\u22ec","\u22b5":"\u22ed","\u2203":"\u2204"})},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),r(11).add({Pcy:"\u041f",Poincareplane:"\u210c",Pr:"\u2abb",Prime:"\u2033",Proportion:"\u2237",par:"\u2225",para:"\xb6",parallel:"\u2225",parsim:"\u2af3",parsl:"\u2afd",part:"\u2202",pcy:"\u043f",percnt:"%",permil:"\u2030",perp:"\u22a5",pertenk:"\u2031",phmmat:"\u2133",phone:"\u260e",pitchfork:"\u22d4",planck:"\u210f",planckh:"\u210e",plankv:"\u210f",plus:"+",plusacir:"\u2a23",plusb:"\u229e",pluscir:"\u2a22",plusdo:"\u2214",plusdu:"\u2a25",pluse:"\u2a72",plusmn:"\xb1",plussim:"\u2a26",plustwo:"\u2a27",pm:"\xb1",pointint:"\u2a15",pound:"\xa3",pr:"\u227a",prE:"\u2ab3",prcue:"\u227c",pre:"\u2aaf",prec:"\u227a",precapprox:"\u2ab7",preccurlyeq:"\u227c",preceq:"\u2aaf",precsim:"\u227e",primes:"\u2119",prnE:"\u2ab5",prnap:"\u2ab9",prnsim:"\u22e8",prod:"\u220f",profalar:"\u232e",profline:"\u2312",profsurf:"\u2313",prop:"\u221d",propto:"\u221d",prsim:"\u227e",prurel:"\u22b0",puncsp:"\u2008"},"p")},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),r(11).add({RBarr:"\u2910",REG:"\xae",Racute:"\u0154",Rang:"\u27eb",Rarrtl:"\u2916",Rcaron:"\u0158",Rcedil:"\u0156",Rcy:"\u0420",ReverseElement:"\u220b",ReverseUpEquilibrium:"\u296f",Rho:"\u03a1",RightArrowBar:"\u21e5",RightDoubleBracket:"\u27e7",RightDownTeeVector:"\u295d",RightDownVectorBar:"\u2955",RightTeeVector:"\u295b",RightTriangleBar:"\u29d0",RightUpDownVector:"\u294f",RightUpTeeVector:"\u295c",RightUpVectorBar:"\u2954",RightVectorBar:"\u2953",RoundImplies:"\u2970",RuleDelayed:"\u29f4",rAarr:"\u21db",rArr:"\u21d2",rAtail:"\u291c",rBarr:"\u290f",rHar:"\u2964",race:"\u223d\u0331",racute:"\u0155",radic:"\u221a",raemptyv:"\u29b3",rang:"\u27e9",rangd:"\u2992",range:"\u29a5",rangle:"\u27e9",raquo:"\xbb",rarr:"\u2192",rarrap:"\u2975",rarrb:"\u21e5",rarrbfs:"\u2920",rarrc:"\u2933",rarrfs:"\u291e",rarrhk:"\u21aa",rarrlp:"\u21ac",rarrpl:"\u2945",rarrsim:"\u2974",rarrw:"\u219d",ratail:"\u291a",ratio:"\u2236",rationals:"\u211a",rbarr:"\u290d",rbbrk:"\u2773",rbrke:"\u298c",rbrksld:"\u298e",rbrkslu:"\u2990",rcaron:"\u0159",rcedil:"\u0157",rceil:"\u2309",rcub:"}",rcy:"\u0440",rdca:"\u2937",rdldhar:"\u2969",rdquo:"\u201d",rdquor:"\u201d",rdsh:"\u21b3",real:"\u211c",realine:"\u211b",realpart:"\u211c",reals:"\u211d",rect:"\u25ad",reg:"\xae",rfisht:"\u297d",rfloor:"\u230b",rhard:"\u21c1",rharu:"\u21c0",rharul:"\u296c",rightarrow:"\u2192",rightarrowtail:"\u21a3",rightharpoondown:"\u21c1",rightharpoonup:"\u21c0",rightleftarrows:"\u21c4",rightleftharpoons:"\u21cc",rightsquigarrow:"\u219d",risingdotseq:"\u2253",rlarr:"\u21c4",rlhar:"\u21cc",rlm:"\u200f",rmoustache:"\u23b1",rnmid:"\u2aee",roang:"\u27ed",roarr:"\u21fe",robrk:"\u27e7",ropar:"\u2986",roplus:"\u2a2e",rotimes:"\u2a35",rpar:")",rpargt:"\u2994",rppolint:"\u2a12",rrarr:"\u21c9",rsaquo:"\u203a",rsh:"\u21b1",rsqb:"]",rsquo:"\u2019",rsquor:"\u2019",rthree:"\u22cc",rtrie:"\u22b5",rtrif:"\u25b8",rtriltri:"\u29ce",ruluhar:"\u2968",rx:"\u211e"},"r")},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=r(17),a=r(2),i=r(7),o=r(16),s=r(3),l=r(5),u=function(t){for(var e=[],r=0,n=t.length;r0;)u+="rl",d.push("0em 0em"),p--;var f=d.join(" ");if(o)return e.AmsMethods.EqnArray(t,r,n,o,u,f);var m=e.AmsMethods.EqnArray(t,r,n,o,u,f);return a.default.setArrayAlign(m,c)},e.AmsMethods.Multline=function(t,e,r){t.Push(e),a.default.checkEqnEnv(t);var n=t.itemFactory.create("multline",r,t.stack);return n.arraydef={displaystyle:!0,rowspacing:".5em",columnwidth:"100%",width:t.options.multlineWidth,side:t.options.tagSide,minlabelspacing:t.options.tagIndent},n},e.NEW_OPS="ams-declare-ops",e.AmsMethods.HandleDeclareOp=function(t,r){var n=t.GetStar()?"":"\\nolimits\\SkipLimits",o=a.default.trimSpaces(t.GetArgument(r));"\\"===o.charAt(0)&&(o=o.substr(1));var i=t.GetArgument(r);i.match(/\\text/)||(i=i.replace(/\*/g,"\\text{*}").replace(/-/g,"\\text{-}")),t.configuration.handlers.retrieve(e.NEW_OPS).add(o,new c.Macro(o,e.AmsMethods.Macro,["\\mathop{\\rm "+i+"}"+n]))},e.AmsMethods.HandleOperatorName=function(t,e){var r=t.GetStar()?"":"\\nolimits\\SkipLimits",n=a.default.trimSpaces(t.GetArgument(e));n.match(/\\text/)||(n=n.replace(/\*/g,"\\text{*}").replace(/-/g,"\\text{-}")),t.string="\\mathop{\\rm "+n+"}"+r+" "+t.string.slice(t.i),t.i=0},e.AmsMethods.SkipLimits=function(t,e){var r=t.GetNext(),a=t.i;"\\"===r&&++t.i&&"limits"!==t.GetCS()&&(t.i=a)},e.AmsMethods.MultiIntegral=function(t,e,r){var a=t.GetNext();if("\\"===a){var n=t.i;a=t.GetArgument(e),t.i=n,"\\limits"===a&&(r="\\idotsint"===e?"\\!\\!\\mathop{\\,\\,"+r+"}":"\\!\\!\\!\\mathop{\\,\\,\\,"+r+"}")}t.string=r+" "+t.string.slice(t.i),t.i=0},e.AmsMethods.xArrow=function(t,e,r,o,s){var c={width:"+"+a.default.Em((o+s)/18),lspace:a.default.Em(o/18)},l=t.GetBrackets(e),d=t.ParseArg(e),p=t.create("token","mo",{stretchy:!0,texClass:u.TEXCLASS.REL},String.fromCodePoint(r)),f=t.create("node","munderover",[p]),m=t.create("node","mpadded",[d],c);if(n.default.setAttribute(m,"voffset",".15em"),n.default.setChild(f,f.over,m),l){var h=new i.default(l,t.stack.env,t.configuration).mml();m=t.create("node","mpadded",[h],c),n.default.setAttribute(m,"voffset","-.24em"),n.default.setChild(f,f.under,m)}n.default.setProperty(f,"subsupOK",!0),t.Push(f)},e.AmsMethods.HandleShove=function(t,e,r){var a=t.stack.Top();if("multline"!==a.kind)throw new s.default("CommandOnlyAllowedInEnv","%1 only allowed in %2 environment",t.currentCS,"multline");if(a.Size())throw new s.default("CommandAtTheBeginingOfLine","%1 must come at the beginning of the line",t.currentCS);a.setProperty("shove",r)},e.AmsMethods.CFrac=function(t,e){var r=a.default.trimSpaces(t.GetBrackets(e,"")),c=t.GetArgument(e),l=t.GetArgument(e),u={l:o.TexConstant.Align.LEFT,r:o.TexConstant.Align.RIGHT,"":""},d=new i.default("\\strut\\textstyle{"+c+"}",t.stack.env,t.configuration).mml(),p=new i.default("\\strut\\textstyle{"+l+"}",t.stack.env,t.configuration).mml(),f=t.create("node","mfrac",[d,p]);if(null==(r=u[r]))throw new s.default("IllegalAlign","Illegal alignment specified in %1",t.currentCS);r&&n.default.setProperties(f,{numalign:r,denomalign:r}),t.Push(f)},e.AmsMethods.Genfrac=function(t,e,r,o,i,c){null==r&&(r=t.GetDelimiterArg(e)),null==o&&(o=t.GetDelimiterArg(e)),null==i&&(i=t.GetArgument(e)),null==c&&(c=a.default.trimSpaces(t.GetArgument(e)));var l=t.ParseArg(e),u=t.ParseArg(e),d=t.create("node","mfrac",[l,u]);if(""!==i&&n.default.setAttribute(d,"linethickness",i),(r||o)&&(n.default.setProperty(d,"withDelims",!0),d=a.default.fixedFence(t.configuration,r,d,o)),""!==c){var p=parseInt(c,10),f=["D","T","S","SS"][p];if(null==f)throw new s.default("BadMathStyleFor","Bad math style for %1",t.currentCS);d=t.create("node","mstyle",[d]),"D"===f?n.default.setProperties(d,{displaystyle:!0,scriptlevel:0}):n.default.setProperties(d,{displaystyle:!1,scriptlevel:p-1})}t.Push(d)},e.AmsMethods.HandleTag=function(t,e){if(!t.tags.currentTag.taggable&&t.tags.env)throw new s.default("CommandNotAllowedInEnv","%1 not allowed in %2 environment",t.currentCS,t.tags.env);if(t.tags.currentTag.tag)throw new s.default("MultipleCommand","Multiple %1",t.currentCS);var r=t.GetStar(),n=a.default.trimSpaces(t.GetArgument(e));t.tags.tag(n,r)},e.AmsMethods.HandleNoTag=l.default.HandleNoTag,e.AmsMethods.HandleRef=l.default.HandleRef,e.AmsMethods.Macro=l.default.Macro,e.AmsMethods.Accent=l.default.Accent,e.AmsMethods.Tilde=l.default.Tilde,e.AmsMethods.Array=l.default.Array,e.AmsMethods.Spacer=l.default.Spacer,e.AmsMethods.NamedOp=l.default.NamedOp,e.AmsMethods.EqnArray=l.default.EqnArray},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Symbol=MathJax._.input.tex.Symbol.Symbol,e.Macro=MathJax._.input.tex.Symbol.Macro},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.MmlStack=MathJax._.input.tex.StackItem.MmlStack,e.BaseItem=MathJax._.input.tex.StackItem.BaseItem},function(t,e,r){"use strict";var a=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],a=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&a>=t.length&&(t=void 0),{value:t&&t[a++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},n=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var a,n,o=r.call(t),i=[];try{for(;(void 0===e||e-- >0)&&!(a=o.next()).done;)i.push(a.value)}catch(t){n={error:t}}finally{try{a&&!a.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return i},o=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(a=o.next()).done;)i.push(a.value)}catch(t){n={error:t}}finally{try{a&&!a.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return i},o=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],a=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&a>=t.length&&(t=void 0),{value:t&&t[a++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.clearDocument=e.saveDocument=e.makeBsprAttributes=e.removeProperty=e.getProperty=e.setProperty=e.balanceRules=void 0;var i=r(4),s=r(3),c=null,l=null,u=function(t){return l.root=t,c.outputJax.getBBox(l,c).w},d=function(t){for(var e=0;t&&!i.default.isType(t,"mtable");){if(i.default.isType(t,"text"))return null;i.default.isType(t,"mrow")?(t=t.childNodes[0],e=0):(t=t.parent.childNodes[e],e++)}return t},p=function(t,e){return t.childNodes["up"===e?1:0].childNodes[0].childNodes[0].childNodes[0].childNodes[0]},f=function(t,e){return t.childNodes[e].childNodes[0].childNodes[0]},m=function(t){return f(t,0)},h=function(t){return f(t,t.childNodes.length-1)},g=function(t,e){return t.childNodes["up"===e?0:1].childNodes[0].childNodes[0].childNodes[0]},v=function(t){for(;t&&!i.default.isType(t,"mtd");)t=t.parent;return t},y=function(t){return t.parent.childNodes[t.parent.childNodes.indexOf(t)+1]},x=function(t){for(;t&&null==e.getProperty(t,"inference");)t=t.parent;return t},b=function(t,e,r){void 0===r&&(r=!1);var a=0;if(t===e)return a;if(t!==e.parent){var n=t.childNodes,o=r?n.length-1:0;i.default.isType(n[o],"mspace")&&(a+=u(n[o])),t=e.parent}if(t===e)return a;var s=t.childNodes,c=r?s.length-1:0;return s[c]!==e&&(a+=u(s[c])),a},_=function(t,r){void 0===r&&(r=!1);var a=d(t),n=g(a,e.getProperty(a,"inferenceRule"));return b(t,a,r)+(u(a)-u(n))/2},M=function(t,r,a,n){if(void 0===n&&(n=!1),e.getProperty(r,"inferenceRule")||e.getProperty(r,"labelledRule")){var o=t.nodeFactory.create("node","mrow");r.parent.replaceChild(o,r),o.setChildren([r]),A(r,o),r=o}var c=n?r.childNodes.length-1:0,l=r.childNodes[c];i.default.isType(l,"mspace")?i.default.setAttribute(l,"width",s.default.Em(s.default.dimen2em(i.default.getAttribute(l,"width"))+a)):(l=t.nodeFactory.create("node","mspace",[],{width:s.default.Em(a)}),n?r.appendChild(l):(l.parent=r,r.childNodes.unshift(l)))},A=function(t,r){["inference","proof","maxAdjust","labelledRule"].forEach((function(a){var n=e.getProperty(t,a);null!=n&&(e.setProperty(r,a,n),e.removeProperty(t,a))}))},w=function(t,r,a,n,o){var i=t.nodeFactory.create("node","mspace",[],{width:s.default.Em(o)});if("left"===n){var c=r.childNodes[a].childNodes[0];i.parent=c,c.childNodes.unshift(i)}else r.childNodes[a].appendChild(i);e.setProperty(r.parent,"sequentAdjust_"+n,o)},C=function(t,r){for(var a=r.pop();r.length;){var o=r.pop(),i=n(S(a,o),2),s=i[0],c=i[1];e.getProperty(a.parent,"axiom")&&(w(t,s<0?a:o,0,"left",Math.abs(s)),w(t,c<0?a:o,2,"right",Math.abs(c))),a=o}},S=function(t,e){var r=u(t.childNodes[2]),a=u(e.childNodes[2]);return[u(t.childNodes[0])-u(e.childNodes[0]),r-a]};e.balanceRules=function(t){var r,a;l=new t.document.options.MathItem("",null,t.math.display);var n=t.data;!function(t){var r=t.nodeLists.sequent;if(r)for(var a=r.length-1,n=void 0;n=r[a];a--)if(e.getProperty(n,"sequentProcessed"))e.removeProperty(n,"sequentProcessed");else{var o=[],i=x(n);if(1===e.getProperty(i,"inference")){for(o.push(n);1===e.getProperty(i,"inference");){i=d(i);var s=m(p(i,e.getProperty(i,"inferenceRule"))),c=e.getProperty(s,"inferenceRule")?g(s,e.getProperty(s,"inferenceRule")):s;e.getProperty(c,"sequent")&&(n=c.childNodes[0],o.push(n),e.setProperty(n,"sequentProcessed",!0)),i=s}C(t,o)}}}(n);var i=n.nodeLists.inference||[];try{for(var s=o(i),c=s.next();!c.done;c=s.next()){var u=c.value,f=e.getProperty(u,"proof"),A=d(u),w=p(A,e.getProperty(A,"inferenceRule")),S=m(w);if(e.getProperty(S,"inference")){var P=_(S);if(P){M(n,S,-P);var k=b(u,A,!1);M(n,u,P-k)}}var O=h(w);if(null!=e.getProperty(O,"inference")){var T=_(O,!0);M(n,O,-T,!0);var q=b(u,A,!0),E=e.getProperty(u,"maxAdjust");null!=E&&(T=Math.max(T,E));var I=void 0;if(!f&&(I=v(u))){var N=y(I);if(N){var B=n.nodeFactory.create("node","mspace",[],{width:T-q+"em"});N.appendChild(B),u.removeProperty("maxAdjust")}else{var G=x(I);G&&(T=e.getProperty(G,"maxAdjust")?Math.max(e.getProperty(G,"maxAdjust"),T):T,e.setProperty(G,"maxAdjust",T))}}else M(n,e.getProperty(u,"proof")?u:u.parent,T-q,!0)}}}catch(t){r={error:t}}finally{try{c&&!c.done&&(a=s.return)&&a.call(s)}finally{if(r)throw r.error}}};var P=((a={}).bspr_maxAdjust=!0,a);e.setProperty=function(t,e,r){i.default.setProperty(t,"bspr_"+e,r)},e.getProperty=function(t,e){return i.default.getProperty(t,"bspr_"+e)},e.removeProperty=function(t,e){t.removeProperty("bspr_"+e)},e.makeBsprAttributes=function(t){t.data.root.walkTree((function(t,e){var r=[];t.getPropertyNames().forEach((function(e){!P[e]&&e.match(RegExp("^bspr_"))&&r.push(e+":"+t.getProperty(e))})),r.length&&i.default.setAttribute(t,"semantics",r.join(";"))}))},e.saveDocument=function(t){if(!("getBBox"in(c=t.document).outputJax))throw Error("The bussproofs extension requires an output jax with a getBBox() method")},e.clearDocument=function(t){c=null}},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var a,n=r(3),o=r(2),i=r(12);!function(t){function e(t,e){return t.string.substr(t.i,e.length)!==e||e.match(/\\[a-z]+$/i)&&t.string.charAt(t.i+e.length).match(/[a-z]/i)?0:(t.i+=e.length,1)}t.disassembleSymbol=function(t,e){var r=[t,e.char];if(e.attributes)for(var a in e.attributes)r.push(a),r.push(e.attributes[a]);return r},t.assembleSymbol=function(t){for(var e=t[0],r=t[1],a={},n=2;n0?[i.toString()].concat(n):i;t.i++}throw new o.default("MissingReplacementString","Missing replacement string for definition of %1",e)},t.GetParameter=function(t,r,a){if(null==a)return t.GetArgument(r);for(var n=t.i,i=0,s=0;t.i0)&&!(a=o.next()).done;)i.push(a.value)}catch(t){n={error:t}}finally{try{a&&!a.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return i},n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],a=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&a>=t.length&&(t=void 0),{value:t&&t[a++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.AutoloadConfiguration=void 0;var o=r(0),i=r(1),s=r(12),c=r(14),l=r(28),u=r(10);function d(t,e,r,o){var i,s,u,d;if(l.Package.packages.has(t.options.require.prefix+r)){var m=t.options.autoload[r],h=a(2===m.length&&Array.isArray(m[0])?m:[m,[]],2),g=h[0],v=h[1];try{for(var y=n(g),x=y.next();!x.done;x=y.next()){var b=x.value;p.remove(b)}}catch(t){i={error:t}}finally{try{x&&!x.done&&(s=y.return)&&s.call(y)}finally{if(i)throw i.error}}try{for(var _=n(v),M=_.next();!M.done;M=_.next()){var A=M.value;f.remove(A)}}catch(t){u={error:t}}finally{try{M&&!M.done&&(d=_.return)&&d.call(_)}finally{if(u)throw u.error}}t.string=(o?e:"\\begin{"+e.slice(1)+"}")+t.string.slice(t.i),t.i=0}c.RequireLoad(t,r)}var p=new i.CommandMap("autoload-macros",{},{}),f=new i.CommandMap("autoload-environments",{},{});e.AutoloadConfiguration=o.Configuration.create("autoload",{handler:{macro:["autoload-macros"],environment:["autoload-environments"]},options:{autoload:u.expandable({action:["toggle","mathtip","texttip"],amscd:[[],["CD"]],bbox:["bbox"],boldsymbol:["boldsymbol"],braket:["bra","ket","braket","set","Bra","Ket","Braket","Set","ketbra","Ketbra"],bussproofs:[[],["prooftree"]],cancel:["cancel","bcancel","xcancel","cancelto"],color:["color","definecolor","textcolor","colorbox","fcolorbox"],enclose:["enclose"],extpfeil:["xtwoheadrightarrow","xtwoheadleftarrow","xmapsto","xlongequal","xtofrom","Newextarrow"],html:["href","class","style","cssId"],mhchem:["ce","pu"],newcommand:["newcommand","renewcommand","newenvironment","renewenvironment","def","let"],unicode:["unicode"],verb:["verb"]})},config:function(t,e){var r,o,i,l,u,m,h=e.parseOptions,g=h.handlers.get("macro"),v=h.handlers.get("environment"),y=h.options.autoload;h.packageData.set("autoload",{Autoload:d});try{for(var x=n(Object.keys(y)),b=x.next();!b.done;b=x.next()){var _=b.value,M=y[_],A=a(2===M.length&&Array.isArray(M[0])?M:[M,[]],2),w=A[0],C=A[1];try{for(var S=(i=void 0,n(w)),P=S.next();!P.done;P=S.next()){var k=P.value;g.lookup(k)&&"color"!==k||p.add(k,new s.Macro(k,d,[_,!0]))}}catch(t){i={error:t}}finally{try{P&&!P.done&&(l=S.return)&&l.call(S)}finally{if(i)throw i.error}}try{for(var O=(u=void 0,n(C)),T=O.next();!T.done;T=O.next()){var q=T.value;v.lookup(q)||f.add(q,new s.Macro(q,d,[_,!1]))}}catch(t){u={error:t}}finally{try{T&&!T.done&&(m=O.return)&&m.call(O)}finally{if(u)throw u.error}}}}catch(t){r={error:t}}finally{try{b&&!b.done&&(o=x.return)&&o.call(x)}finally{if(r)throw r.error}}h.packageData.get("require")||c.RequireConfiguration.config(t,e)},init:function(t){t.options.require||u.defaultOptions(t.options,c.RequireConfiguration.options)},priority:10})},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Other=MathJax._.input.tex.base.BaseConfiguration.Other,e.BaseTags=MathJax._.input.tex.base.BaseConfiguration.BaseTags,e.BaseConfiguration=MathJax._.input.tex.base.BaseConfiguration.BaseConfiguration},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.NodeFactory=MathJax._.input.tex.NodeFactory.NodeFactory},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.EncloseConfiguration=e.EncloseMethods=e.ENCLOSE_OPTIONS=void 0;var a=r(0),n=r(1),o=r(3);e.ENCLOSE_OPTIONS={"data-arrowhead":1,color:1,mathcolor:1,background:1,mathbackground:1,"data-padding":1,"data-thickness":1},e.EncloseMethods={},e.EncloseMethods.Enclose=function(t,r){var a=t.GetArgument(r).replace(/,/g," "),n=t.GetBrackets(r,""),i=t.ParseArg(r),s=o.default.keyvalOptions(n,e.ENCLOSE_OPTIONS);s.notation=a,t.Push(t.create("node","menclose",[i],s))},new n.CommandMap("enclose",{enclose:"Enclose"},e.EncloseMethods),e.EncloseConfiguration=a.Configuration.create("enclose",{handler:{macro:["enclose"]}})},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var a=r(2),n=r(1),o=r(8),i=r(3),s=r(19),c={NewCommand:function(t,e){var r=i.default.trimSpaces(t.GetArgument(e)),n=t.GetBrackets(e),o=t.GetBrackets(e),l=t.GetArgument(e);if("\\"===r.charAt(0)&&(r=r.substr(1)),!r.match(/^(.|[a-z]+)$/i))throw new a.default("IllegalControlSequenceName","Illegal control sequence name for %1",e);if(n&&!(n=i.default.trimSpaces(n)).match(/^[0-9]+$/))throw new a.default("IllegalParamNumber","Illegal number of parameters specified in %1",e);s.default.addMacro(t,r,c.Macro,[l,n,o])},NewEnvironment:function(t,e){var r=i.default.trimSpaces(t.GetArgument(e)),n=t.GetBrackets(e),o=t.GetBrackets(e),l=t.GetArgument(e),u=t.GetArgument(e);if(n&&!(n=i.default.trimSpaces(n)).match(/^[0-9]+$/))throw new a.default("IllegalParamNumber","Illegal number of parameters specified in %1",e);s.default.addEnvironment(t,r,c.BeginEnv,[!0,l,u,n,o])},MacroDef:function(t,e){var r=s.default.GetCSname(t,e),a=s.default.GetTemplate(t,e,"\\"+r),n=t.GetArgument(e);a instanceof Array?s.default.addMacro(t,r,c.MacroWithTemplate,[n].concat(a)):s.default.addMacro(t,r,c.Macro,[n,a])},Let:function(t,e){var r=s.default.GetCSname(t,e),a=t.GetNext();"="===a&&(t.i++,a=t.GetNext());var o=t.configuration.handlers;if("\\"!==a){t.i++;var i=o.get("delimiter").lookup(a);i?s.default.addDelimiter(t,"\\"+r,i.char,i.attributes):s.default.addMacro(t,r,c.Macro,[a])}else{e=s.default.GetCSname(t,e);var l=o.get("delimiter").lookup("\\"+e);if(l)return void s.default.addDelimiter(t,"\\"+r,l.char,l.attributes);var u=o.get("macro").applicable(e);if(!u)return;if(u instanceof n.MacroMap){var d=u.lookup(e);return void s.default.addMacro(t,r,d.func,d.args,d.symbol)}l=u.lookup(e);var p=s.default.disassembleSymbol(r,l);s.default.addMacro(t,r,(function(t,e){for(var r=[],a=2;at.configuration.options.maxMacros)throw new a.default("MaxMacroSub1","MathJax maximum macro substitution count exceeded; is here a recursive macro call?")},BeginEnv:function(t,e,r,a,n,o){if(e.getProperty("end")&&t.stack.env.closing===e.getName()){delete t.stack.env.closing;var s=t.string.slice(t.i);return t.string=a,t.i=0,t.Parse(),t.string=s,t.i=0,t.itemFactory.create("end").setProperty("name",e.getName())}if(n){var c=[];if(null!=o){var l=t.GetBrackets("\\begin{"+e.getName()+"}");c.push(null==l?o:l)}for(var u=c.length;u":"\u2192","<":"\u2190",V:"\u2193",A:"\u2191"}[r],g=t.GetUpTo(e+r,r),v=t.GetUpTo(e+r,r);if(">"===r||"<"===r){if(l=t.create("token","mo",f,h),g||(g="\\kern "+u.getProperty("minw")),g||v){var y={width:".67em",lspace:".33em"};if(l=t.create("node","munderover",[l]),g){var x=new a.default(g,t.stack.env,t.configuration).mml(),b=t.create("node","mpadded",[x],y);i.default.setAttribute(b,"voffset",".1em"),i.default.setChild(l,l.over,b)}if(v){var _=new a.default(v,t.stack.env,t.configuration).mml();i.default.setChild(l,l.under,t.create("node","mpadded",[_],y))}t.configuration.options.amscd.hideHorizontalLabels&&(l=t.create("node","mpadded",l,{depth:0,height:".67em"}))}}else{var M=t.create("token","mo",m,h);l=M,(g||v)&&(l=t.create("node","mrow"),g&&i.default.appendChildren(l,[new a.default("\\scriptstyle\\llap{"+g+"}",t.stack.env,t.configuration).mml()]),M.texClass=o.TEXCLASS.ORD,i.default.appendChildren(l,[M]),v&&i.default.appendChildren(l,[new a.default("\\scriptstyle\\rlap{"+v+"}",t.stack.env,t.configuration).mml()]))}}l&&t.Push(l),s.cell(t,e)},cell:function(t,e){var r=t.stack.Top();(r.table||[]).length%2==0&&0===(r.row||[]).length&&t.Push(t.create("node","mpadded",[],{height:"8.5pt",depth:"2pt"})),t.Push(t.itemFactory.create("cell").setProperties({isEntry:!0,name:e}))},minCDarrowwidth:function(t,e){t.stack.env.CD_minw=t.GetDimen(e)},minCDarrowheight:function(t,e){t.stack.env.CD_minh=t.GetDimen(e)}};e.default=s},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.BboxConfiguration=e.BboxMethods=void 0;var a=r(0),n=r(1),o=r(2);e.BboxMethods={},e.BboxMethods.BBox=function(t,e){for(var r,a,n,c=t.GetBrackets(e,""),l=t.ParseArg(e),u=c.split(/,/),d=0,p=u.length;d=t.length&&(t=void 0),{value:t&&t[a++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.BoldsymbolConfiguration=e.rewriteBoldTokens=e.createBoldToken=e.BoldsymbolMethods=void 0;var n=r(0),o=r(4),i=r(6),s=r(1),c=r(23),l={};function u(t,e,r,a){var n=c.NodeFactory.createToken(t,e,r,a);return"mtext"!==e&&t.configuration.parser.stack.env.boldsymbol&&(o.default.setProperty(n,"fixBold",!0),t.configuration.addNode("fixBold",n)),n}function d(t){var e,r;try{for(var n=a(t.data.getList("fixBold")),s=n.next();!s.done;s=n.next()){var c=s.value;if(o.default.getProperty(c,"fixBold")){var u=o.default.getAttribute(c,"mathvariant");null==u?o.default.setAttribute(c,"mathvariant",i.TexConstant.Variant.BOLD):o.default.setAttribute(c,"mathvariant",l[u]||u),o.default.removeProperties(c,"fixBold")}}}catch(t){e={error:t}}finally{try{s&&!s.done&&(r=n.return)&&r.call(n)}finally{if(e)throw e.error}}}l[i.TexConstant.Variant.NORMAL]=i.TexConstant.Variant.BOLD,l[i.TexConstant.Variant.ITALIC]=i.TexConstant.Variant.BOLDITALIC,l[i.TexConstant.Variant.FRAKTUR]=i.TexConstant.Variant.BOLDFRAKTUR,l[i.TexConstant.Variant.SCRIPT]=i.TexConstant.Variant.BOLDSCRIPT,l[i.TexConstant.Variant.SANSSERIF]=i.TexConstant.Variant.BOLDSANSSERIF,l["-tex-calligraphic"]="-tex-bold-calligraphic",l["-tex-oldstyle"]="-tex-bold-oldstyle",e.BoldsymbolMethods={},e.BoldsymbolMethods.Boldsymbol=function(t,e){var r=t.stack.env.boldsymbol;t.stack.env.boldsymbol=!0;var a=t.ParseArg(e);t.stack.env.boldsymbol=r,t.Push(a)},new s.CommandMap("boldsymbol",{boldsymbol:"Boldsymbol"},e.BoldsymbolMethods),e.createBoldToken=u,e.rewriteBoldTokens=d,e.BoldsymbolConfiguration=n.Configuration.create("boldsymbol",{handler:{macro:["boldsymbol"]},nodes:{token:u},postprocessors:[d]})},function(t,e,r){"use strict";var a;Object.defineProperty(e,"__esModule",{value:!0}),e.BraketConfiguration=void 0;var n=r(0),o=r(39);r(40),e.BraketConfiguration=n.Configuration.create("braket",{handler:{character:["Braket-characters"],macro:["Braket-macros"]},items:(a={},a[o.BraketItem.prototype.kind]=o.BraketItem,a)})},function(t,e,r){"use strict";var a,n=this&&this.__extends||(a=function(t,e){return(a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}a(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)});Object.defineProperty(e,"__esModule",{value:!0}),e.BraketItem=void 0;var o=r(13),i=r(7),s=r(3),c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),Object.defineProperty(e.prototype,"kind",{get:function(){return"braket"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isOpen",{get:function(){return!0},enumerable:!1,configurable:!0}),e.prototype.checkItem=function(e){return e.isKind("close")?[[this.factory.create("mml",this.toMml())],!0]:e.isKind("mml")?(this.Push(e.toMml()),this.getProperty("single")?[[this.toMml()],!0]:o.BaseItem.fail):t.prototype.checkItem.call(this,e)},e.prototype.toMml=function(){var e=t.prototype.toMml.call(this),r=this.getProperty("open"),a=this.getProperty("close");if(this.getProperty("stretchy"))return s.default.fenced(this.factory.configuration,r,e,a);var n={fence:!0,stretchy:!1,symmetric:!0,texClass:i.TEXCLASS.OPEN},o=this.create("token","mo",n,r);n.texClass=i.TEXCLASS.CLOSE;var c=this.create("token","mo",n,a);return this.create("node","mrow",[o,e,c],{open:r,close:a,texClass:i.TEXCLASS.INNER})},e}(o.BaseItem);e.BraketItem=c},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var a=r(1),n=r(41);new a.CommandMap("Braket-macros",{bra:["Macro","{\\langle {#1} \\vert}",1],ket:["Macro","{\\vert {#1} \\rangle}",1],braket:["Braket","\u27e8","\u27e9",!1,1/0],set:["Braket","{","}",!1,1],Bra:["Macro","{\\left\\langle {#1} \\right\\vert}",1],Ket:["Macro","{\\left\\vert {#1} \\right\\rangle}",1],Braket:["Braket","\u27e8","\u27e9",!0,1/0],Set:["Braket","{","}",!0,1],ketbra:["Macro","{\\vert {#1} \\rangle\\langle {#2} \\vert}",2],Ketbra:["Macro","{\\left\\vert {#1} \\right\\rangle\\left\\langle {#2} \\right\\vert}",2],"|":"Bar"},n.default),new a.MacroMap("Braket-characters",{"|":"Bar"},n.default)},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var a=r(8),n=r(7),o=r(2),i={};i.Macro=a.default.Macro,i.Braket=function(t,e,r,a,n,i){var s=t.GetNext();if(""===s)throw new o.default("MissingArgFor","Missing argument for %1",t.currentCS);var c=!0;"{"===s&&(t.i++,c=!1),t.Push(t.itemFactory.create("braket").setProperties({barmax:i,barcount:0,open:r,close:a,stretchy:n,single:c}))},i.Bar=function(t,e){var r="|"===e?"|":"\u2225",a=t.stack.Top();if("braket"!==a.kind||a.getProperty("barcount")>=a.getProperty("barmax")){var o=t.create("token","mo",{texClass:n.TEXCLASS.ORD,stretchy:!1},r);t.Push(o)}else{if("|"===r&&"|"===t.GetNext()&&(t.i++,r="\u2225"),a.getProperty("stretchy")){var i=t.create("node","TeXAtom",[],{texClass:n.TEXCLASS.CLOSE});t.Push(i),a.setProperty("barcount",a.getProperty("barcount")+1),i=t.create("token","mo",{stretchy:!0,braketbar:!0},r),t.Push(i),i=t.create("node","TeXAtom",[],{texClass:n.TEXCLASS.OPEN}),t.Push(i)}else{var s=t.create("token","mo",{stretchy:!1,braketbar:!0},r);t.Push(s)}}},e.default=i},function(t,e,r){"use strict";var a;Object.defineProperty(e,"__esModule",{value:!0}),e.BussproofsConfiguration=void 0;var n=r(0),o=r(43),i=r(18);r(45),e.BussproofsConfiguration=n.Configuration.create("bussproofs",{handler:{macro:["Bussproofs-macros"],environment:["Bussproofs-environments"]},items:(a={},a[o.ProofTreeItem.prototype.kind]=o.ProofTreeItem,a),preprocessors:[[i.saveDocument,1]],postprocessors:[[i.clearDocument,3],[i.makeBsprAttributes,2],[i.balanceRules,1]]})},function(t,e,r){"use strict";var a,n=this&&this.__extends||(a=function(t,e){return(a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}a(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)});Object.defineProperty(e,"__esModule",{value:!0}),e.ProofTreeItem=void 0;var o=r(2),i=r(13),s=r(44),c=r(18),l=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.leftLabel=null,e.rigthLabel=null,e.innerStack=new s.default(e.factory,{},!0),e}return n(e,t),Object.defineProperty(e.prototype,"kind",{get:function(){return"proofTree"},enumerable:!1,configurable:!0}),e.prototype.checkItem=function(t){if(t.isKind("end")&&"prooftree"===t.getName()){var e=this.toMml();return c.setProperty(e,"proof",!0),[[this.factory.create("mml",e),t],!0]}if(t.isKind("stop"))throw new o.default("EnvMissingEnd","Missing \\end{%1}",this.getName());return this.innerStack.Push(t),i.BaseItem.fail},e.prototype.toMml=function(){var e=t.prototype.toMml.call(this),r=this.innerStack.Top();if(r.isKind("start")&&!r.Size())return e;this.innerStack.Push(this.factory.create("stop"));var a=this.innerStack.Top().toMml();return this.create("node","mrow",[a,e],{})},e}(i.BaseItem);e.ProofTreeItem=l},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=MathJax._.input.tex.Stack.default},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var a=r(46),n=r(9),o=r(1);new o.CommandMap("Bussproofs-macros",{AxiomC:"Axiom",UnaryInfC:["Inference",1],BinaryInfC:["Inference",2],TrinaryInfC:["Inference",3],QuaternaryInfC:["Inference",4],QuinaryInfC:["Inference",5],RightLabel:["Label","right"],LeftLabel:["Label","left"],AXC:"Axiom",UIC:["Inference",1],BIC:["Inference",2],TIC:["Inference",3],RL:["Label","right"],LL:["Label","left"],noLine:["SetLine","none",!1],singleLine:["SetLine","solid",!1],solidLine:["SetLine","solid",!1],dashedLine:["SetLine","dashed",!1],alwaysNoLine:["SetLine","none",!0],alwaysSingleLine:["SetLine","solid",!0],alwaysSolidLine:["SetLine","solid",!0],alwaysDashedLine:["SetLine","dashed",!0],rootAtTop:["RootAtTop",!0],alwaysRootAtTop:["RootAtTop",!0],rootAtBottom:["RootAtTop",!1],alwaysRootAtBottom:["RootAtTop",!1],fCenter:"FCenter",Axiom:"AxiomF",UnaryInf:["InferenceF",1],BinaryInf:["InferenceF",2],TrinaryInf:["InferenceF",3],QuaternaryInf:["InferenceF",4],QuinaryInf:["InferenceF",5]},a.default),new o.EnvironmentMap("Bussproofs-environments",n.default.environment,{prooftree:["Prooftree",null,!1]},a.default)},function(t,e,r){"use strict";var a=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var a,n,o=r.call(t),i=[];try{for(;(void 0===e||e-- >0)&&!(a=o.next()).done;)i.push(a.value)}catch(t){n={error:t}}finally{try{a&&!a.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return i},n=this&&this.__spread||function(){for(var t=[],e=0;e0);var l=t.create("node","mtr",s,{}),p=t.create("node","mtable",[l],{framespacing:"0 0"}),f=u(t,t.GetArgument(e)),m=a.getProperty("currentLine");m!==a.getProperty("line")&&a.setProperty("currentLine",a.getProperty("line"));var h=d(t,p,[f],a.getProperty("left"),a.getProperty("right"),m,n);a.setProperty("left",null),a.setProperty("right",null),c.setProperty(h,"inference",i),t.configuration.addNode("inference",h),a.Push(h)},l.Label=function(t,e,r){var a=t.stack.Top();if("proofTree"!==a.kind)throw new o.default("IllegalProofCommand","Proof commands only allowed in prooftree environment.");var n=s.default.internalMath(t,t.GetArgument(e),0),i=n.length>1?t.create("node","mrow",n,{}):n[0];a.setProperty(r,i)},l.SetLine=function(t,e,r,a){var n=t.stack.Top();if("proofTree"!==n.kind)throw new o.default("IllegalProofCommand","Proof commands only allowed in prooftree environment.");n.setProperty("currentLine",r),a&&n.setProperty("line",r)},l.RootAtTop=function(t,e,r){var a=t.stack.Top();if("proofTree"!==a.kind)throw new o.default("IllegalProofCommand","Proof commands only allowed in prooftree environment.");a.setProperty("rootAtTop",r)},l.AxiomF=function(t,e){var r=t.stack.Top();if("proofTree"!==r.kind)throw new o.default("IllegalProofCommand","Proof commands only allowed in prooftree environment.");var a=p(t,e);c.setProperty(a,"axiom",!0),r.Push(a)},l.FCenter=function(t,e){},l.InferenceF=function(t,e,r){var a=t.stack.Top();if("proofTree"!==a.kind)throw new o.default("IllegalProofCommand","Proof commands only allowed in prooftree environment.");if(a.Size()0);var l=t.create("node","mtr",s,{}),u=t.create("node","mtable",[l],{framespacing:"0 0"}),f=p(t,e),m=a.getProperty("currentLine");m!==a.getProperty("line")&&a.setProperty("currentLine",a.getProperty("line"));var h=d(t,u,[f],a.getProperty("left"),a.getProperty("right"),m,n);a.setProperty("left",null),a.setProperty("right",null),c.setProperty(h,"inference",i),t.configuration.addNode("inference",h),a.Push(h)},e.default=l},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.CancelConfiguration=e.CancelMethods=void 0;var a=r(0),n=r(6),o=r(1),i=r(3),s=r(24);e.CancelMethods={},e.CancelMethods.Cancel=function(t,e,r){var a=t.GetBrackets(e,""),n=t.ParseArg(e),o=i.default.keyvalOptions(a,s.ENCLOSE_OPTIONS);o.notation=r,t.Push(t.create("node","menclose",[n],o))},e.CancelMethods.CancelTo=function(t,e){var r=t.GetBrackets(e,""),a=t.ParseArg(e),o=t.ParseArg(e),c=i.default.keyvalOptions(r,s.ENCLOSE_OPTIONS);c.notation=[n.TexConstant.Notation.UPDIAGONALSTRIKE,n.TexConstant.Notation.UPDIAGONALARROW,n.TexConstant.Notation.NORTHEASTARROW].join(" "),a=t.create("node","mpadded",[a],{depth:"-.1em",height:"+.1em",voffset:".1em"}),t.Push(t.create("node","msup",[t.create("node","menclose",[o],c),a]))},new o.CommandMap("cancel",{cancel:["Cancel",n.TexConstant.Notation.UPDIAGONALSTRIKE],bcancel:["Cancel",n.TexConstant.Notation.DOWNDIAGONALSTRIKE],xcancel:["Cancel",n.TexConstant.Notation.UPDIAGONALSTRIKE+" "+n.TexConstant.Notation.DOWNDIAGONALSTRIKE],cancelto:"CancelTo"},e.CancelMethods),e.CancelConfiguration=a.Configuration.create("cancel",{handler:{macro:["cancel"]}})},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ColorConfiguration=void 0;var a=r(1),n=r(0),o=r(49),i=r(50);new a.CommandMap("color",{color:"Color",textcolor:"TextColor",definecolor:"DefineColor",colorbox:"ColorBox",fcolorbox:"FColorBox"},o.ColorMethods);e.ColorConfiguration=n.Configuration.create("color",{handler:{macro:["color"]},options:{color:{padding:"5px",borderWidth:"2px"}},config:function(t,e){e.parseOptions.packageData.set("color",{model:new i.ColorModel})}})},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ColorMethods=void 0;var a=r(4),n=r(3);function o(t){var e="+"+t,r=t.replace(/^.*?([a-z]*)$/,"$1");return{width:"+"+2*parseFloat(e)+r,height:e,depth:e,lspace:t}}e.ColorMethods={},e.ColorMethods.Color=function(t,e){var r=t.GetBrackets(e,""),a=t.GetArgument(e),n=t.configuration.packageData.get("color").model.getColor(r,a),o=t.itemFactory.create("style").setProperties({styles:{mathcolor:n}});t.stack.env.color=n,t.Push(o)},e.ColorMethods.TextColor=function(t,e){var r=t.GetBrackets(e,""),a=t.GetArgument(e),n=t.configuration.packageData.get("color").model.getColor(r,a),o=t.stack.env.color;t.stack.env.color=n;var i=t.ParseArg(e);o?t.stack.env.color=o:delete t.stack.env.color;var s=t.create("node","mstyle",[i],{mathcolor:n});t.Push(s)},e.ColorMethods.DefineColor=function(t,e){var r=t.GetArgument(e),a=t.GetArgument(e),n=t.GetArgument(e);t.configuration.packageData.get("color").model.defineColor(a,r,n)},e.ColorMethods.ColorBox=function(t,e){var r=t.GetArgument(e),i=n.default.internalMath(t,t.GetArgument(e)),s=t.configuration.packageData.get("color").model,c=t.create("node","mpadded",i,{mathbackground:s.getColor("named",r)});a.default.setProperties(c,o(t.options.color.padding)),t.Push(c)},e.ColorMethods.FColorBox=function(t,e){var r=t.GetArgument(e),i=t.GetArgument(e),s=n.default.internalMath(t,t.GetArgument(e)),c=t.options.color,l=t.configuration.packageData.get("color").model,u=t.create("node","mpadded",s,{mathbackground:l.getColor("named",i),style:"border: "+c.borderWidth+" solid "+l.getColor("named",r)});a.default.setProperties(u,o(c.padding)),t.Push(u)}},function(t,e,r){"use strict";var a=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],a=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&a>=t.length&&(t=void 0),{value:t&&t[a++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.ColorModel=void 0;var n=r(2),o=r(51),i=new Map,s=function(){function t(){this.userColors=new Map}return t.prototype.normalizeColor=function(t,e){if(!t||"named"===t)return e;if(i.has(t))return i.get(t)(e);throw new n.default("UndefinedColorModel","Color model '%1' not defined",t)},t.prototype.getColor=function(t,e){return t&&"named"!==t?this.normalizeColor(t,e):this.getColorByName(e)},t.prototype.getColorByName=function(t){return this.userColors.has(t)?this.userColors.get(t):o.COLORS.has(t)?o.COLORS.get(t):t},t.prototype.defineColor=function(t,e,r){var a=this.normalizeColor(t,r);this.userColors.set(e,a)},t}();e.ColorModel=s,i.set("rgb",(function(t){var e,r,o=t.trim().split(/\s*,\s*/),i="#";if(3!==o.length)throw new n.default("ModelArg1","Color values for the %1 model require 3 numbers","rgb");try{for(var s=a(o),c=s.next();!c.done;c=s.next()){var l=c.value;if(!l.match(/^(\d+(\.\d*)?|\.\d+)$/))throw new n.default("InvalidDecimalNumber","Invalid decimal number");var u=parseFloat(l);if(u<0||u>1)throw new n.default("ModelArg2","Color values for the %1 model must be between %2 and %3","rgb","0","1");var d=Math.floor(255*u).toString(16);d.length<2&&(d="0"+d),i+=d}}catch(t){e={error:t}}finally{try{c&&!c.done&&(r=s.return)&&r.call(s)}finally{if(e)throw e.error}}return i})),i.set("RGB",(function(t){var e,r,o=t.trim().split(/\s*,\s*/),i="#";if(3!==o.length)throw new n.default("ModelArg1","Color values for the %1 model require 3 numbers","RGB");try{for(var s=a(o),c=s.next();!c.done;c=s.next()){var l=c.value;if(!l.match(/^\d+$/))throw new n.default("InvalidNumber","Invalid number");var u=parseInt(l);if(u>255)throw new n.default("ModelArg2","Color values for the %1 model must be between %2 and %3","RGB","0","255");var d=u.toString(16);d.length<2&&(d="0"+d),i+=d}}catch(t){e={error:t}}finally{try{c&&!c.done&&(r=s.return)&&r.call(s)}finally{if(e)throw e.error}}return i})),i.set("gray",(function(t){if(!t.match(/^\s*(\d+(\.\d*)?|\.\d+)\s*$/))throw new n.default("InvalidDecimalNumber","Invalid decimal number");var e=parseFloat(t);if(e<0||e>1)throw new n.default("ModelArg2","Color values for the %1 model must be between %2 and %3","gray","0","1");var r=Math.floor(255*e).toString(16);return r.length<2&&(r="0"+r),"#"+r+r+r}))},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.COLORS=void 0,e.COLORS=new Map([["Apricot","#FBB982"],["Aquamarine","#00B5BE"],["Bittersweet","#C04F17"],["Black","#221E1F"],["Blue","#2D2F92"],["BlueGreen","#00B3B8"],["BlueViolet","#473992"],["BrickRed","#B6321C"],["Brown","#792500"],["BurntOrange","#F7921D"],["CadetBlue","#74729A"],["CarnationPink","#F282B4"],["Cerulean","#00A2E3"],["CornflowerBlue","#41B0E4"],["Cyan","#00AEEF"],["Dandelion","#FDBC42"],["DarkOrchid","#A4538A"],["Emerald","#00A99D"],["ForestGreen","#009B55"],["Fuchsia","#8C368C"],["Goldenrod","#FFDF42"],["Gray","#949698"],["Green","#00A64F"],["GreenYellow","#DFE674"],["JungleGreen","#00A99A"],["Lavender","#F49EC4"],["LimeGreen","#8DC73E"],["Magenta","#EC008C"],["Mahogany","#A9341F"],["Maroon","#AF3235"],["Melon","#F89E7B"],["MidnightBlue","#006795"],["Mulberry","#A93C93"],["NavyBlue","#006EB8"],["OliveGreen","#3C8031"],["Orange","#F58137"],["OrangeRed","#ED135A"],["Orchid","#AF72B0"],["Peach","#F7965A"],["Periwinkle","#7977B8"],["PineGreen","#008B72"],["Plum","#92268F"],["ProcessBlue","#00B0F0"],["Purple","#99479B"],["RawSienna","#974006"],["Red","#ED1B23"],["RedOrange","#F26035"],["RedViolet","#A1246B"],["Rhodamine","#EF559F"],["RoyalBlue","#0071BC"],["RoyalPurple","#613F99"],["RubineRed","#ED017D"],["Salmon","#F69289"],["SeaGreen","#3FBC9D"],["Sepia","#671800"],["SkyBlue","#46C5DD"],["SpringGreen","#C6DC67"],["Tan","#DA9D76"],["TealBlue","#00AEB3"],["Thistle","#D883B7"],["Turquoise","#00B4CE"],["Violet","#58429B"],["VioletRed","#EF58A0"],["White","#FFFFFF"],["WildStrawberry","#EE2967"],["Yellow","#FFF200"],["YellowGreen","#98CC70"],["YellowOrange","#FAA21A"]])},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ColorConfiguration=e.ColorV2Methods=void 0;var a=r(1),n=r(0);e.ColorV2Methods={Color:function(t,e){var r=t.GetArgument(e),a=t.stack.env.color;t.stack.env.color=r;var n=t.ParseArg(e);a?t.stack.env.color=a:delete t.stack.env.color;var o=t.create("node","mstyle",[n],{mathcolor:r});t.Push(o)}},new a.CommandMap("colorv2",{color:"Color"},e.ColorV2Methods),e.ColorConfiguration=n.Configuration.create("colorv2",{handler:{macro:["colorv2"]}})},function(t,e,r){"use strict";var a=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],a=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&a>=t.length&&(t=void 0),{value:t&&t[a++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.ConfigMacrosConfiguration=void 0;var n=r(0),o=r(10),i=r(1),s=r(12),c=r(25);e.ConfigMacrosConfiguration=n.Configuration.create("configmacros",{init:function(t){new i.CommandMap("configmacros-map",{},{}),t.append(n.Configuration.local({handler:{macro:["configmacros-map"]},priority:3}))},config:function(t,e){var r,n,o=e.parseOptions.handlers.retrieve("configmacros-map"),i=e.parseOptions.options.macros;try{for(var l=a(Object.keys(i)),u=l.next();!u.done;u=l.next()){var d=u.value,p="string"==typeof i[d]?[i[d]]:i[d],f=Array.isArray(p[2])?new s.Macro(d,c.default.MacroWithTemplate,p.slice(0,2).concat(p[2])):new s.Macro(d,c.default.Macro,p);o.add(d,f)}}catch(t){r={error:t}}finally{try{u&&!u.done&&(n=l.return)&&n.call(l)}finally{if(r)throw r.error}}},options:{macros:o.expandable({})}})},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ExtpfeilConfiguration=e.ExtpfeilMethods=void 0;var a=r(0),n=r(1),o=r(11),i=r(19),s=r(26),c=r(2);e.ExtpfeilMethods={},e.ExtpfeilMethods.xArrow=o.AmsMethods.xArrow,e.ExtpfeilMethods.NewExtArrow=function(t,r){var a=t.GetArgument(r),n=t.GetArgument(r),o=t.GetArgument(r);if(!a.match(/^\\([a-z]+|.)$/i))throw new c.default("NewextarrowArg1","First argument to %1 must be a control sequence name",r);if(!n.match(/^(\d+),(\d+)$/))throw new c.default("NewextarrowArg2","Second argument to %1 must be two integers separated by a comma",r);if(!o.match(/^(\d+|0x[0-9A-F]+)$/i))throw new c.default("NewextarrowArg3","Third argument to %1 must be a unicode character number",r);a=a.substr(1);var s=n.split(",");i.default.addMacro(t,a,e.ExtpfeilMethods.xArrow,[parseInt(o),parseInt(s[0]),parseInt(s[1])])},new n.CommandMap("extpfeil",{xtwoheadrightarrow:["xArrow",8608,12,16],xtwoheadleftarrow:["xArrow",8606,17,13],xmapsto:["xArrow",8614,6,7],xlongequal:["xArrow",61,7,7],xtofrom:["xArrow",8644,12,12],Newextarrow:"NewExtArrow"},e.ExtpfeilMethods);e.ExtpfeilConfiguration=a.Configuration.create("extpfeil",{handler:{macro:["extpfeil"]},init:function(t){s.NewcommandConfiguration.init(t)}})},function(t,e,r){"use strict";var a,n=this&&this.__extends||(a=function(t,e){return(a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}a(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)});Object.defineProperty(e,"__esModule",{value:!0}),e.BeginEnvItem=void 0;var o=r(2),i=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),Object.defineProperty(e.prototype,"kind",{get:function(){return"beginEnv"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isOpen",{get:function(){return!0},enumerable:!1,configurable:!0}),e.prototype.checkItem=function(e){if(e.isKind("end")){if(e.getName()!==this.getName())throw new o.default("EnvBadEnd","\\begin{%1} ended with \\end{%2}",this.getName(),e.getName());return[[this.factory.create("mml",this.toMml())],!0]}if(e.isKind("stop"))throw new o.default("EnvMissingEnd","Missing \\end{%1}",this.getName());return t.prototype.checkItem.call(this,e)},e}(r(13).BaseItem);e.BeginEnvItem=i},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var a=r(25);new(r(1).CommandMap)("Newcommand-macros",{newcommand:"NewCommand",renewcommand:"NewCommand",newenvironment:"NewEnvironment",renewenvironment:"NewEnvironment",def:"MacroDef",let:"Let"},a.default)},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.HtmlConfiguration=void 0;var a=r(0),n=r(1),o=r(58);new n.CommandMap("html_macros",{href:"Href",class:"Class",style:"Style",cssId:"Id"},o.default),e.HtmlConfiguration=a.Configuration.create("html",{handler:{macro:["html_macros"]}})},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var a=r(4),n={Href:function(t,e){var r=t.GetArgument(e),n=o(t,e);a.default.setAttribute(n,"href",r),t.Push(n)},Class:function(t,e){var r=t.GetArgument(e),n=o(t,e),i=a.default.getAttribute(n,"class");i&&(r=i+" "+r),a.default.setAttribute(n,"class",r),t.Push(n)},Style:function(t,e){var r=t.GetArgument(e),n=o(t,e),i=a.default.getAttribute(n,"style");i&&(";"!==r.charAt(r.length-1)&&(r+=";"),r=i+" "+r),a.default.setAttribute(n,"style",r),t.Push(n)},Id:function(t,e){var r=t.GetArgument(e),n=o(t,e);a.default.setAttribute(n,"id",r),t.Push(n)}},o=function(t,e){var r=t.ParseArg(e);if(!a.default.isInferred(r))return r;var n=a.default.getChildren(r);if(1===n.length)return n[0];var o=t.create("node","mrow");return a.default.copyChildren(r,o),a.default.copyAttributes(r,o),o};e.default=n},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.MhchemConfiguration=void 0;var a=r(0),n=r(1),o=r(2),i=r(8),s=r(11),c=r(60),l={};l.Macro=i.default.Macro,l.xArrow=s.AmsMethods.xArrow,l.Machine=function(t,e,r){try{var a=t.GetArgument(e),n=c.mhchemParser.go(a,r),i=c.texify.go(n);t.string=i+t.string.substr(t.i),t.i=0}catch(t){throw new o.default(t[0],t[1],t.slice(2))}},new n.CommandMap("mhchem",{ce:["Machine","ce"],pu:["Machine","pu"],longrightleftharpoons:["Macro","\\stackrel{\\textstyle{-}\\!\\!{\\rightharpoonup}}{\\smash{{\\leftharpoondown}\\!\\!{-}}}"],longRightleftharpoons:["Macro","\\stackrel{\\textstyle{-}\\!\\!{\\rightharpoonup}}{\\smash{\\leftharpoondown}}"],longLeftrightharpoons:["Macro","\\stackrel{\\textstyle\\vphantom{{-}}{\\rightharpoonup}}{\\smash{{\\leftharpoondown}\\!\\!{-}}}"],longleftrightarrows:["Macro","\\stackrel{\\longrightarrow}{\\smash{\\longleftarrow}\\Rule{0px}{.25em}{0px}}"],tripledash:["Macro","\\vphantom{-}\\raise2mu{\\kern2mu\\tiny\\text{-}\\kern1mu\\text{-}\\kern1mu\\text{-}\\kern2mu}"],xrightarrow:["xArrow",8594,5,6],xleftarrow:["xArrow",8592,7,3],xleftrightarrow:["xArrow",8596,6,6],xrightleftharpoons:["xArrow",8652,5,7],xRightleftharpoons:["xArrow",8652,5,7],xLeftrightharpoons:["xArrow",8652,5,7]},l),e.MhchemConfiguration=a.Configuration.create("mhchem",{handler:{macro:["mhchem"]}})},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var a={go:function(t,e){if(!t)return[];void 0===e&&(e="ce");var r,n="0",o={};o.parenthesisLevel=0,t=(t=(t=t.replace(/\n/g," ")).replace(/[\u2212\u2013\u2014\u2010]/g,"-")).replace(/[\u2026]/g,"...");for(var i=10,s=[];;){r!==t?(i=10,r=t):i--;var c=a.stateMachines[e],l=c.transitions[n]||c.transitions["*"];t:for(var u=0;u0))return s;if(p.revisit||(t=d.remainder),!p.toContinue)break t}}if(i<=0)throw["MhchemBugU","mhchem bug U. Please report."]}},concatArray:function(t,e){if(e)if(Array.isArray(e))for(var r=0;r":/^[=<>]/,"#":/^[#\u2261]/,"+":/^\+/,"-$":/^-(?=[\s_},;\]/]|$|\([a-z]+\))/,"-9":/^-(?=[0-9])/,"- orbital overlap":/^-(?=(?:[spd]|sp)(?:$|[\s,;\)\]\}]))/,"-":/^-/,"pm-operator":/^(?:\\pm|\$\\pm\$|\+-|\+\/-)/,operator:/^(?:\+|(?:[\-=<>]|<<|>>|\\approx|\$\\approx\$)(?=\s|$|-?[0-9]))/,arrowUpDown:/^(?:v|\(v\)|\^|\(\^\))(?=$|[\s,;\)\]\}])/,"\\bond{(...)}":function(t){return a.patterns.findObserveGroups(t,"\\bond{","","","}")},"->":/^(?:<->|<-->|->|<-|<=>>|<<=>|<=>|[\u2192\u27F6\u21CC])/,CMT:/^[CMT](?=\[)/,"[(...)]":function(t){return a.patterns.findObserveGroups(t,"[","","","]")},"1st-level escape":/^(&|\\\\|\\hline)\s*/,"\\,":/^(?:\\[,\ ;:])/,"\\x{}{}":function(t){return a.patterns.findObserveGroups(t,"",/^\\[a-zA-Z]+\{/,"}","","","{","}","",!0)},"\\x{}":function(t){return a.patterns.findObserveGroups(t,"",/^\\[a-zA-Z]+\{/,"}","")},"\\ca":/^\\ca(?:\s+|(?![a-zA-Z]))/,"\\x":/^(?:\\[a-zA-Z]+\s*|\\[_&{}%])/,orbital:/^(?:[0-9]{1,2}[spdfgh]|[0-9]{0,2}sp)(?=$|[^a-zA-Z])/,others:/^[\/~|]/,"\\frac{(...)}":function(t){return a.patterns.findObserveGroups(t,"\\frac{","","","}","{","","","}")},"\\overset{(...)}":function(t){return a.patterns.findObserveGroups(t,"\\overset{","","","}","{","","","}")},"\\underset{(...)}":function(t){return a.patterns.findObserveGroups(t,"\\underset{","","","}","{","","","}")},"\\underbrace{(...)}":function(t){return a.patterns.findObserveGroups(t,"\\underbrace{","","","}_","{","","","}")},"\\color{(...)}0":function(t){return a.patterns.findObserveGroups(t,"\\color{","","","}")},"\\color{(...)}{(...)}1":function(t){return a.patterns.findObserveGroups(t,"\\color{","","","}","{","","","}")},"\\color(...){(...)}2":function(t){return a.patterns.findObserveGroups(t,"\\color","\\","",/^(?=\{)/,"{","","","}")},"\\ce{(...)}":function(t){return a.patterns.findObserveGroups(t,"\\ce{","","","}")},oxidation$:/^(?:[+-][IVX]+|\\pm\s*0|\$\\pm\$\s*0)$/,"d-oxidation$":/^(?:[+-]?\s?[IVX]+|\\pm\s*0|\$\\pm\$\s*0)$/,"roman numeral":/^[IVX]+/,"1/2$":/^[+\-]?(?:[0-9]+|\$[a-z]\$|[a-z])\/[0-9]+(?:\$[a-z]\$|[a-z])?$/,amount:function(t){var e;if(e=t.match(/^(?:(?:(?:\([+\-]?[0-9]+\/[0-9]+\)|[+\-]?(?:[0-9]+|\$[a-z]\$|[a-z])\/[0-9]+|[+\-]?[0-9]+[.,][0-9]+|[+\-]?\.[0-9]+|[+\-]?[0-9]+)(?:[a-z](?=\s*[A-Z]))?)|[+\-]?[a-z](?=\s*[A-Z])|\+(?!\s))/))return{match_:e[0],remainder:t.substr(e[0].length)};var r=a.patterns.findObserveGroups(t,"","$","$","");return r&&(e=r.match_.match(/^\$(?:\(?[+\-]?(?:[0-9]*[a-z]?[+\-])?[0-9]*[a-z](?:[+\-][0-9]*[a-z]?)?\)?|\+|-)\$$/))?{match_:e[0],remainder:t.substr(e[0].length)}:null},amount2:function(t){return this.amount(t)},"(KV letters),":/^(?:[A-Z][a-z]{0,2}|i)(?=,)/,formula$:function(t){if(t.match(/^\([a-z]+\)$/))return null;var e=t.match(/^(?:[a-z]|(?:[0-9\ \+\-\,\.\(\)]+[a-z])+[0-9\ \+\-\,\.\(\)]*|(?:[a-z][0-9\ \+\-\,\.\(\)]+)+[a-z]?)$/);return e?{match_:e[0],remainder:t.substr(e[0].length)}:null},uprightEntities:/^(?:pH|pOH|pC|pK|iPr|iBu)(?=$|[^a-zA-Z])/,"/":/^\s*(\/)\s*/,"//":/^\s*(\/\/)\s*/,"*":/^\s*[*.]\s*/},findObserveGroups:function(t,e,r,a,n,o,i,s,c,l){var u=function(t,e){if("string"==typeof e)return 0!==t.indexOf(e)?null:e;var r=t.match(e);return r?r[0]:null},d=u(t,e);if(null===d)return null;if(t=t.substr(d.length),null===(d=u(t,r)))return null;var p=function(t,e,r){for(var a=0;e":{"0|1|2|3":{action_:"r=",nextState:"r"},"a|as":{action_:["output","r="],nextState:"r"},"*":{action_:["output","r="],nextState:"r"}},"+":{o:{action_:"d= kv",nextState:"d"},"d|D":{action_:"d=",nextState:"d"},q:{action_:"d=",nextState:"qd"},"qd|qD":{action_:"d=",nextState:"qd"},dq:{action_:["output","d="],nextState:"d"},3:{action_:["sb=false","output","operator"],nextState:"0"}},amount:{"0|2":{action_:"a=",nextState:"a"}},"pm-operator":{"0|1|2|a|as":{action_:["sb=false","output",{type_:"operator",option:"\\pm"}],nextState:"0"}},operator:{"0|1|2|a|as":{action_:["sb=false","output","operator"],nextState:"0"}},"-$":{"o|q":{action_:["charge or bond","output"],nextState:"qd"},d:{action_:"d=",nextState:"d"},D:{action_:["output",{type_:"bond",option:"-"}],nextState:"3"},q:{action_:"d=",nextState:"qd"},qd:{action_:"d=",nextState:"qd"},"qD|dq":{action_:["output",{type_:"bond",option:"-"}],nextState:"3"}},"-9":{"3|o":{action_:["output",{type_:"insert",option:"hyphen"}],nextState:"3"}},"- orbital overlap":{o:{action_:["output",{type_:"insert",option:"hyphen"}],nextState:"2"},d:{action_:["output",{type_:"insert",option:"hyphen"}],nextState:"2"}},"-":{"0|1|2":{action_:[{type_:"output",option:1},"beginsWithBond=true",{type_:"bond",option:"-"}],nextState:"3"},3:{action_:{type_:"bond",option:"-"}},a:{action_:["output",{type_:"insert",option:"hyphen"}],nextState:"2"},as:{action_:[{type_:"output",option:2},{type_:"bond",option:"-"}],nextState:"3"},b:{action_:"b="},o:{action_:{type_:"- after o/d",option:!1},nextState:"2"},q:{action_:{type_:"- after o/d",option:!1},nextState:"2"},"d|qd|dq":{action_:{type_:"- after o/d",option:!0},nextState:"2"},"D|qD|p":{action_:["output",{type_:"bond",option:"-"}],nextState:"3"}},amount2:{"1|3":{action_:"a=",nextState:"a"}},letters:{"0|1|2|3|a|as|b|p|bp|o":{action_:"o=",nextState:"o"},"q|dq":{action_:["output","o="],nextState:"o"},"d|D|qd|qD":{action_:"o after d",nextState:"o"}},digits:{o:{action_:"q=",nextState:"q"},"d|D":{action_:"q=",nextState:"dq"},q:{action_:["output","o="],nextState:"o"},a:{action_:"o=",nextState:"o"}},"space A":{"b|p|bp":{}},space:{a:{nextState:"as"},0:{action_:"sb=false"},"1|2":{action_:"sb=true"},"r|rt|rd|rdt|rdq":{action_:"output",nextState:"0"},"*":{action_:["output","sb=true"],nextState:"1"}},"1st-level escape":{"1|2":{action_:["output",{type_:"insert+p1",option:"1st-level escape"}]},"*":{action_:["output",{type_:"insert+p1",option:"1st-level escape"}],nextState:"0"}},"[(...)]":{"r|rt":{action_:"rd=",nextState:"rd"},"rd|rdt":{action_:"rq=",nextState:"rdq"}},"...":{"o|d|D|dq|qd|qD":{action_:["output",{type_:"bond",option:"..."}],nextState:"3"},"*":{action_:[{type_:"output",option:1},{type_:"insert",option:"ellipsis"}],nextState:"1"}},". |* ":{"*":{action_:["output",{type_:"insert",option:"addition compound"}],nextState:"1"}},"state of aggregation $":{"*":{action_:["output","state of aggregation"],nextState:"1"}},"{[(":{"a|as|o":{action_:["o=","output","parenthesisLevel++"],nextState:"2"},"0|1|2|3":{action_:["o=","output","parenthesisLevel++"],nextState:"2"},"*":{action_:["output","o=","output","parenthesisLevel++"],nextState:"2"}},")]}":{"0|1|2|3|b|p|bp|o":{action_:["o=","parenthesisLevel--"],nextState:"o"},"a|as|d|D|q|qd|qD|dq":{action_:["output","o=","parenthesisLevel--"],nextState:"o"}},", ":{"*":{action_:["output","comma"],nextState:"0"}},"^_":{"*":{}},"^{(...)}|^($...$)":{"0|1|2|as":{action_:"b=",nextState:"b"},p:{action_:"b=",nextState:"bp"},"3|o":{action_:"d= kv",nextState:"D"},q:{action_:"d=",nextState:"qD"},"d|D|qd|qD|dq":{action_:["output","d="],nextState:"D"}},"^a|^\\x{}{}|^\\x{}|^\\x|'":{"0|1|2|as":{action_:"b=",nextState:"b"},p:{action_:"b=",nextState:"bp"},"3|o":{action_:"d= kv",nextState:"d"},q:{action_:"d=",nextState:"qd"},"d|qd|D|qD":{action_:"d="},dq:{action_:["output","d="],nextState:"d"}},"_{(state of aggregation)}$":{"d|D|q|qd|qD|dq":{action_:["output","q="],nextState:"q"}},"_{(...)}|_($...$)|_9|_\\x{}{}|_\\x{}|_\\x":{"0|1|2|as":{action_:"p=",nextState:"p"},b:{action_:"p=",nextState:"bp"},"3|o":{action_:"q=",nextState:"q"},"d|D":{action_:"q=",nextState:"dq"},"q|qd|qD|dq":{action_:["output","q="],nextState:"q"}},"=<>":{"0|1|2|3|a|as|o|q|d|D|qd|qD|dq":{action_:[{type_:"output",option:2},"bond"],nextState:"3"}},"#":{"0|1|2|3|a|as|o":{action_:[{type_:"output",option:2},{type_:"bond",option:"#"}],nextState:"3"}},"{}":{"*":{action_:{type_:"output",option:1},nextState:"1"}},"{...}":{"0|1|2|3|a|as|b|p|bp":{action_:"o=",nextState:"o"},"o|d|D|q|qd|qD|dq":{action_:["output","o="],nextState:"o"}},"$...$":{a:{action_:"a="},"0|1|2|3|as|b|p|bp|o":{action_:"o=",nextState:"o"},"as|o":{action_:"o="},"q|d|D|qd|qD|dq":{action_:["output","o="],nextState:"o"}},"\\bond{(...)}":{"*":{action_:[{type_:"output",option:2},"bond"],nextState:"3"}},"\\frac{(...)}":{"*":{action_:[{type_:"output",option:1},"frac-output"],nextState:"3"}},"\\overset{(...)}":{"*":{action_:[{type_:"output",option:2},"overset-output"],nextState:"3"}},"\\underset{(...)}":{"*":{action_:[{type_:"output",option:2},"underset-output"],nextState:"3"}},"\\underbrace{(...)}":{"*":{action_:[{type_:"output",option:2},"underbrace-output"],nextState:"3"}},"\\color{(...)}{(...)}1|\\color(...){(...)}2":{"*":{action_:[{type_:"output",option:2},"color-output"],nextState:"3"}},"\\color{(...)}0":{"*":{action_:[{type_:"output",option:2},"color0-output"]}},"\\ce{(...)}":{"*":{action_:[{type_:"output",option:2},"ce"],nextState:"3"}},"\\,":{"*":{action_:[{type_:"output",option:1},"copy"],nextState:"1"}},"\\x{}{}|\\x{}|\\x":{"0|1|2|3|a|as|b|p|bp|o|c0":{action_:["o=","output"],nextState:"3"},"*":{action_:["output","o=","output"],nextState:"3"}},others:{"*":{action_:[{type_:"output",option:1},"copy"],nextState:"3"}},else2:{a:{action_:"a to o",nextState:"o",revisit:!0},as:{action_:["output","sb=true"],nextState:"1",revisit:!0},"r|rt|rd|rdt|rdq":{action_:["output"],nextState:"0",revisit:!0},"*":{action_:["output","copy"],nextState:"3"}}}),actions:{"o after d":function(t,e){var r;if((t.d||"").match(/^[0-9]+$/)){var n=t.d;t.d=void 0,r=this.output(t),t.b=n}else r=this.output(t);return a.actions["o="](t,e),r},"d= kv":function(t,e){t.d=e,t.dType="kv"},"charge or bond":function(t,e){if(t.beginsWithBond){var r=[];return a.concatArray(r,this.output(t)),a.concatArray(r,a.actions.bond(t,e,"-")),r}t.d=e},"- after o/d":function(t,e,r){var n=a.patterns.match_("orbital",t.o||""),o=a.patterns.match_("one lowercase greek letter $",t.o||""),i=a.patterns.match_("one lowercase latin letter $",t.o||""),s=a.patterns.match_("$one lowercase latin letter$ $",t.o||""),c="-"===e&&(n&&""===n.remainder||o||i||s);!c||t.a||t.b||t.p||t.d||t.q||n||!i||(t.o="$"+t.o+"$");var l=[];return c?(a.concatArray(l,this.output(t)),l.push({type_:"hyphen"})):(n=a.patterns.match_("digits",t.d||""),r&&n&&""===n.remainder?(a.concatArray(l,a.actions["d="](t,e)),a.concatArray(l,this.output(t))):(a.concatArray(l,this.output(t)),a.concatArray(l,a.actions.bond(t,e,"-")))),l},"a to o":function(t){t.o=t.a,t.a=void 0},"sb=true":function(t){t.sb=!0},"sb=false":function(t){t.sb=!1},"beginsWithBond=true":function(t){t.beginsWithBond=!0},"beginsWithBond=false":function(t){t.beginsWithBond=!1},"parenthesisLevel++":function(t){t.parenthesisLevel++},"parenthesisLevel--":function(t){t.parenthesisLevel--},"state of aggregation":function(t,e){return{type_:"state of aggregation",p1:a.go(e,"o")}},comma:function(t,e){var r=e.replace(/\s*$/,"");return r!==e&&0===t.parenthesisLevel?{type_:"comma enumeration L",p1:r}:{type_:"comma enumeration M",p1:r}},output:function(t,e,r){var n,o,i;t.r?(o="M"===t.rdt?a.go(t.rd,"tex-math"):"T"===t.rdt?[{type_:"text",p1:t.rd||""}]:a.go(t.rd),i="M"===t.rqt?a.go(t.rq,"tex-math"):"T"===t.rqt?[{type_:"text",p1:t.rq||""}]:a.go(t.rq),n={type_:"arrow",r:t.r,rd:o,rq:i}):(n=[],(t.a||t.b||t.p||t.o||t.q||t.d||r)&&(t.sb&&n.push({type_:"entitySkip"}),t.o||t.q||t.d||t.b||t.p||2===r?t.o||t.q||t.d||!t.b&&!t.p?t.o&&"kv"===t.dType&&a.patterns.match_("d-oxidation$",t.d||"")?t.dType="oxidation":t.o&&"kv"===t.dType&&!t.q&&(t.dType=void 0):(t.o=t.a,t.d=t.b,t.q=t.p,t.a=t.b=t.p=void 0):(t.o=t.a,t.a=void 0),n.push({type_:"chemfive",a:a.go(t.a,"a"),b:a.go(t.b,"bd"),p:a.go(t.p,"pq"),o:a.go(t.o,"o"),q:a.go(t.q,"pq"),d:a.go(t.d,"oxidation"===t.dType?"oxidation":"bd"),dType:t.dType})));for(var s in t)"parenthesisLevel"!==s&&"beginsWithBond"!==s&&delete t[s];return n},"oxidation-output":function(t,e){var r=["{"];return a.concatArray(r,a.go(e,"oxidation")),r.push("}"),r},"frac-output":function(t,e){return{type_:"frac-ce",p1:a.go(e[0]),p2:a.go(e[1])}},"overset-output":function(t,e){return{type_:"overset",p1:a.go(e[0]),p2:a.go(e[1])}},"underset-output":function(t,e){return{type_:"underset",p1:a.go(e[0]),p2:a.go(e[1])}},"underbrace-output":function(t,e){return{type_:"underbrace",p1:a.go(e[0]),p2:a.go(e[1])}},"color-output":function(t,e){return{type_:"color",color1:e[0],color2:a.go(e[1])}},"r=":function(t,e){t.r=e},"rdt=":function(t,e){t.rdt=e},"rd=":function(t,e){t.rd=e},"rqt=":function(t,e){t.rqt=e},"rq=":function(t,e){t.rq=e},operator:function(t,e,r){return{type_:"operator",kind_:r||e}}}},a:{transitions:a.createTransitions({empty:{"*":{}},"1/2$":{0:{action_:"1/2"}},else:{0:{nextState:"1",revisit:!0}},"$(...)$":{"*":{action_:"tex-math tight",nextState:"1"}},",":{"*":{action_:{type_:"insert",option:"commaDecimal"}}},else2:{"*":{action_:"copy"}}}),actions:{}},o:{transitions:a.createTransitions({empty:{"*":{}},"1/2$":{0:{action_:"1/2"}},else:{0:{nextState:"1",revisit:!0}},letters:{"*":{action_:"rm"}},"\\ca":{"*":{action_:{type_:"insert",option:"circa"}}},"\\x{}{}|\\x{}|\\x":{"*":{action_:"copy"}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},"{(...)}":{"*":{action_:"{text}"}},else2:{"*":{action_:"copy"}}}),actions:{}},text:{transitions:a.createTransitions({empty:{"*":{action_:"output"}},"{...}":{"*":{action_:"text="}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},"\\greek":{"*":{action_:["output","rm"]}},"\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:["output","copy"]}},else:{"*":{action_:"text="}}}),actions:{output:function(t){if(t.text_){var e={type_:"text",p1:t.text_};for(var r in t)delete t[r];return e}}}},pq:{transitions:a.createTransitions({empty:{"*":{}},"state of aggregation $":{"*":{action_:"state of aggregation"}},i$:{0:{nextState:"!f",revisit:!0}},"(KV letters),":{0:{action_:"rm",nextState:"0"}},formula$:{0:{nextState:"f",revisit:!0}},"1/2$":{0:{action_:"1/2"}},else:{0:{nextState:"!f",revisit:!0}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},"{(...)}":{"*":{action_:"text"}},"a-z":{f:{action_:"tex-math"}},letters:{"*":{action_:"rm"}},"-9.,9":{"*":{action_:"9,9"}},",":{"*":{action_:{type_:"insert+p1",option:"comma enumeration S"}}},"\\color{(...)}{(...)}1|\\color(...){(...)}2":{"*":{action_:"color-output"}},"\\color{(...)}0":{"*":{action_:"color0-output"}},"\\ce{(...)}":{"*":{action_:"ce"}},"\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:"copy"}},else2:{"*":{action_:"copy"}}}),actions:{"state of aggregation":function(t,e){return{type_:"state of aggregation subscript",p1:a.go(e,"o")}},"color-output":function(t,e){return{type_:"color",color1:e[0],color2:a.go(e[1],"pq")}}}},bd:{transitions:a.createTransitions({empty:{"*":{}},x$:{0:{nextState:"!f",revisit:!0}},formula$:{0:{nextState:"f",revisit:!0}},else:{0:{nextState:"!f",revisit:!0}},"-9.,9 no missing 0":{"*":{action_:"9,9"}},".":{"*":{action_:{type_:"insert",option:"electron dot"}}},"a-z":{f:{action_:"tex-math"}},x:{"*":{action_:{type_:"insert",option:"KV x"}}},letters:{"*":{action_:"rm"}},"'":{"*":{action_:{type_:"insert",option:"prime"}}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},"{(...)}":{"*":{action_:"text"}},"\\color{(...)}{(...)}1|\\color(...){(...)}2":{"*":{action_:"color-output"}},"\\color{(...)}0":{"*":{action_:"color0-output"}},"\\ce{(...)}":{"*":{action_:"ce"}},"\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:"copy"}},else2:{"*":{action_:"copy"}}}),actions:{"color-output":function(t,e){return{type_:"color",color1:e[0],color2:a.go(e[1],"bd")}}}},oxidation:{transitions:a.createTransitions({empty:{"*":{}},"roman numeral":{"*":{action_:"roman-numeral"}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},else:{"*":{action_:"copy"}}}),actions:{"roman-numeral":function(t,e){return{type_:"roman numeral",p1:e||""}}}},"tex-math":{transitions:a.createTransitions({empty:{"*":{action_:"output"}},"\\ce{(...)}":{"*":{action_:["output","ce"]}},"{...}|\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:"o="}},else:{"*":{action_:"o="}}}),actions:{output:function(t){if(t.o){var e={type_:"tex-math",p1:t.o};for(var r in t)delete t[r];return e}}}},"tex-math tight":{transitions:a.createTransitions({empty:{"*":{action_:"output"}},"\\ce{(...)}":{"*":{action_:["output","ce"]}},"{...}|\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:"o="}},"-|+":{"*":{action_:"tight operator"}},else:{"*":{action_:"o="}}}),actions:{"tight operator":function(t,e){t.o=(t.o||"")+"{"+e+"}"},output:function(t){if(t.o){var e={type_:"tex-math",p1:t.o};for(var r in t)delete t[r];return e}}}},"9,9":{transitions:a.createTransitions({empty:{"*":{}},",":{"*":{action_:"comma"}},else:{"*":{action_:"copy"}}}),actions:{comma:function(){return{type_:"commaDecimal"}}}},pu:{transitions:a.createTransitions({empty:{"*":{action_:"output"}},space$:{"*":{action_:["output","space"]}},"{[(|)]}":{"0|a":{action_:"copy"}},"(-)(9)^(-9)":{0:{action_:"number^",nextState:"a"}},"(-)(9.,9)(e)(99)":{0:{action_:"enumber",nextState:"a"}},space:{"0|a":{}},"pm-operator":{"0|a":{action_:{type_:"operator",option:"\\pm"},nextState:"0"}},operator:{"0|a":{action_:"copy",nextState:"0"}},"//":{d:{action_:"o=",nextState:"/"}},"/":{d:{action_:"o=",nextState:"/"}},"{...}|else":{"0|d":{action_:"d=",nextState:"d"},a:{action_:["space","d="],nextState:"d"},"/|q":{action_:"q=",nextState:"q"}}}),actions:{enumber:function(t,e){var r=[];return"+-"===e[0]||"+/-"===e[0]?r.push("\\pm "):e[0]&&r.push(e[0]),e[1]&&(a.concatArray(r,a.go(e[1],"pu-9,9")),e[2]&&(e[2].match(/[,.]/)?a.concatArray(r,a.go(e[2],"pu-9,9")):r.push(e[2])),e[3]=e[4]||e[3],e[3]&&(e[3]=e[3].trim(),"e"===e[3]||"*"===e[3].substr(0,1)?r.push({type_:"cdot"}):r.push({type_:"times"}))),e[3]&&r.push("10^{"+e[5]+"}"),r},"number^":function(t,e){var r=[];return"+-"===e[0]||"+/-"===e[0]?r.push("\\pm "):e[0]&&r.push(e[0]),a.concatArray(r,a.go(e[1],"pu-9,9")),r.push("^{"+e[2]+"}"),r},operator:function(t,e,r){return{type_:"operator",kind_:r||e}},space:function(){return{type_:"pu-space-1"}},output:function(t){var e,r=a.patterns.match_("{(...)}",t.d||"");r&&""===r.remainder&&(t.d=r.match_);var n=a.patterns.match_("{(...)}",t.q||"");if(n&&""===n.remainder&&(t.q=n.match_),t.d&&(t.d=t.d.replace(/\u00B0C|\^oC|\^{o}C/g,"{}^{\\circ}C"),t.d=t.d.replace(/\u00B0F|\^oF|\^{o}F/g,"{}^{\\circ}F")),t.q){t.q=t.q.replace(/\u00B0C|\^oC|\^{o}C/g,"{}^{\\circ}C"),t.q=t.q.replace(/\u00B0F|\^oF|\^{o}F/g,"{}^{\\circ}F");var o={d:a.go(t.d,"pu"),q:a.go(t.q,"pu")};"//"===t.o?e={type_:"pu-frac",p1:o.d,p2:o.q}:(e=o.d,o.d.length>1||o.q.length>1?e.push({type_:" / "}):e.push({type_:"/"}),a.concatArray(e,o.q))}else e=a.go(t.d,"pu-2");for(var i in t)delete t[i];return e}}},"pu-2":{transitions:a.createTransitions({empty:{"*":{action_:"output"}},"*":{"*":{action_:["output","cdot"],nextState:"0"}},"\\x":{"*":{action_:"rm="}},space:{"*":{action_:["output","space"],nextState:"0"}},"^{(...)}|^(-1)":{1:{action_:"^(-1)"}},"-9.,9":{0:{action_:"rm=",nextState:"0"},1:{action_:"^(-1)",nextState:"0"}},"{...}|else":{"*":{action_:"rm=",nextState:"1"}}}),actions:{cdot:function(){return{type_:"tight cdot"}},"^(-1)":function(t,e){t.rm+="^{"+e+"}"},space:function(){return{type_:"pu-space-2"}},output:function(t){var e=[];if(t.rm){var r=a.patterns.match_("{(...)}",t.rm||"");e=r&&""===r.remainder?a.go(r.match_,"pu"):{type_:"rm",p1:t.rm}}for(var n in t)delete t[n];return e}}},"pu-9,9":{transitions:a.createTransitions({empty:{0:{action_:"output-0"},o:{action_:"output-o"}},",":{0:{action_:["output-0","comma"],nextState:"o"}},".":{0:{action_:["output-0","copy"],nextState:"o"}},else:{"*":{action_:"text="}}}),actions:{comma:function(){return{type_:"commaDecimal"}},"output-0":function(t){var e=[];if(t.text_=t.text_||"",t.text_.length>4){var r=t.text_.length%3;0===r&&(r=3);for(var a=t.text_.length-3;a>0;a-=3)e.push(t.text_.substr(a,3)),e.push({type_:"1000 separator"});e.push(t.text_.substr(0,r)),e.reverse()}else e.push(t.text_);for(var n in t)delete t[n];return e},"output-o":function(t){var e=[];if(t.text_=t.text_||"",t.text_.length>4){for(var r=t.text_.length-3,a=0;a"===t.r||"<=>>"===t.r||"<<=>"===t.r||"<--\x3e"===t.r?(s="\\long"+s,i.rd&&(s="\\overset{"+i.rd+"}{"+s+"}"),i.rq&&(s="\\underset{\\lower7mu{"+i.rq+"}}{"+s+"}"),s=" {}\\mathrel{"+s+"}{} "):(i.rq&&(s+="[{"+i.rq+"}]"),s=" {}\\mathrel{\\x"+(s+="{"+i.rd+"}")+"}{} "):s=" {}\\mathrel{\\long"+s+"}{} ",e=s;break;case"operator":e=n._getOperator(t.kind_);break;case"1st-level escape":e=t.p1+" ";break;case"space":e=" ";break;case"entitySkip":case"pu-space-1":e="~";break;case"pu-space-2":e="\\mkern3mu ";break;case"1000 separator":e="\\mkern2mu ";break;case"commaDecimal":e="{,}";break;case"comma enumeration L":e="{"+t.p1+"}\\mkern6mu ";break;case"comma enumeration M":e="{"+t.p1+"}\\mkern3mu ";break;case"comma enumeration S":e="{"+t.p1+"}\\mkern1mu ";break;case"hyphen":e="\\text{-}";break;case"addition compound":e="\\,{\\cdot}\\,";break;case"electron dot":e="\\mkern1mu \\bullet\\mkern1mu ";break;case"KV x":e="{\\times}";break;case"prime":e="\\prime ";break;case"cdot":e="\\cdot ";break;case"tight cdot":e="\\mkern1mu{\\cdot}\\mkern1mu ";break;case"times":e="\\times ";break;case"circa":e="{\\sim}";break;case"^":e="uparrow";break;case"v":e="downarrow";break;case"ellipsis":e="\\ldots ";break;case"/":e="/";break;case" / ":e="\\,/\\,";break;default:throw["MhchemBugT","mhchem bug T. Please report."]}return e},_getArrow:function(t){switch(t){case"->":case"\u2192":case"\u27f6":return"rightarrow";case"<-":return"leftarrow";case"<->":return"leftrightarrow";case"<--\x3e":return"leftrightarrows";case"<=>":case"\u21cc":return"rightleftharpoons";case"<=>>":return"Rightleftharpoons";case"<<=>":return"Leftrightharpoons";default:throw["MhchemBugT","mhchem bug T. Please report."]}},_getBond:function(t){switch(t){case"-":case"1":return"{-}";case"=":case"2":return"{=}";case"#":case"3":return"{\\equiv}";case"~":return"{\\tripledash}";case"~-":return"{\\rlap{\\lower.1em{-}}\\raise.1em{\\tripledash}}";case"~=":case"~--":return"{\\rlap{\\lower.2em{-}}\\rlap{\\raise.2em{\\tripledash}}-}";case"-~-":return"{\\rlap{\\lower.2em{-}}\\rlap{\\raise.2em{-}}\\tripledash}";case"...":return"{{\\cdot}{\\cdot}{\\cdot}}";case"....":return"{{\\cdot}{\\cdot}{\\cdot}{\\cdot}}";case"->":return"{\\rightarrow}";case"<-":return"{\\leftarrow}";case"<":return"{<}";case">":return"{>}";default:throw["MhchemBugT","mhchem bug T. Please report."]}},_getOperator:function(t){switch(t){case"+":return" {}+{} ";case"-":return" {}-{} ";case"=":return" {}={} ";case"<":return" {}<{} ";case">":return" {}>{} ";case"<<":return" {}\\ll{} ";case">>":return" {}\\gg{} ";case"\\pm":return" {}\\pm{} ";case"\\approx":case"$\\approx$":return" {}\\approx{} ";case"v":case"(v)":return" \\downarrow{} ";case"^":case"(^)":return" \\uparrow{} ";default:throw["MhchemBugT","mhchem bug T. Please report."]}}};function o(t){}function i(t){}e.mhchemParser=a,e.texify=n,e.assertNever=o,e.assertString=i},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.NoErrorsConfiguration=void 0;var a=r(0);e.NoErrorsConfiguration=a.Configuration.create("noerrors",{nodes:{error:function(t,e,r,a){var n=t.create("token","mtext",{},a.replace(/\n/g," "));return t.create("node","merror",[n],{"data-mjx-error":e,title:e})}}})},function(t,e,r){"use strict";var a=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],a=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&a>=t.length&&(t=void 0),{value:t&&t[a++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.NoUndefinedConfiguration=void 0;var n=r(0);e.NoUndefinedConfiguration=n.Configuration.create("noundefined",{fallback:{macro:function(t,e){var r,n,o=t.create("text","\\"+e),i=t.options.noundefined||{},s={};try{for(var c=a(["color","background","size"]),l=c.next();!l.done;l=c.next()){var u=l.value;i[u]&&(s["math"+u]=i[u])}}catch(t){r={error:t}}finally{try{l&&!l.done&&(n=c.return)&&n.call(c)}finally{if(r)throw r.error}}t.Push(t.create("node","mtext",[],s,o))}},options:{noundefined:{color:"red",background:"",size:""}},priority:3})},function(t,e,r){"use strict";var a;Object.defineProperty(e,"__esModule",{value:!0}),e.PhysicsConfiguration=void 0;var n=r(0),o=r(64);r(65),e.PhysicsConfiguration=n.Configuration.create("physics",{handler:{macro:["Physics-automatic-bracing-macros","Physics-vector-macros","Physics-vector-chars","Physics-derivative-macros","Physics-expressions-macros","Physics-quick-quad-macros","Physics-bra-ket-macros","Physics-matrix-macros"],character:["Physics-characters"],environment:["Physics-aux-envs"]},items:(a={},a[o.AutoOpen.prototype.kind]=o.AutoOpen,a)})},function(t,e,r){"use strict";var a,n=this&&this.__extends||(a=function(t,e){return(a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)},function(t,e){function r(){this.constructor=t}a(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)});Object.defineProperty(e,"__esModule",{value:!0}),e.AutoOpen=void 0;var o=r(13),i=r(3),s=r(5),c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),Object.defineProperty(e.prototype,"kind",{get:function(){return"auto open"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isOpen",{get:function(){return!0},enumerable:!1,configurable:!0}),e.prototype.toMml=function(){var e=this.factory.configuration.parser,r=this.getProperty("right");if(this.getProperty("smash")){var a=t.prototype.toMml.call(this),n=e.create("node","mpadded",[a],{height:0,depth:0});this.Clear(),this.Push(e.create("node","TeXAtom",[n]))}r&&this.Push(new s.default(r,e.stack.env,e.configuration).mml());var o=t.prototype.toMml.call(this);return i.default.fenced(this.factory.configuration,this.getProperty("open"),o,this.getProperty("close"),this.getProperty("big"))},e.prototype.checkItem=function(e){var r=e.getProperty("autoclose");return r&&r===this.getProperty("close")?this.getProperty("ignore")?(this.Clear(),[[],!0]):[[this.toMml()],!0]:t.prototype.checkItem.call(this,e)},e}(o.BaseItem);e.AutoOpen=c},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var a=r(1),n=r(66),o=r(6),i=r(9),s=r(7);new a.CommandMap("Physics-automatic-bracing-macros",{quantity:"Quantity",qty:"Quantity",pqty:["Quantity","(",")",!0],bqty:["Quantity","[","]",!0],vqty:["Quantity","|","|",!0],Bqty:["Quantity","{","}",!0],absolutevalue:["Quantity","|","|",!0],abs:["Quantity","|","|",!0],norm:["Quantity","\\|","\\|",!0],evaluated:"Eval",eval:"Eval",order:["Quantity","(",")",!0,"O",o.TexConstant.Variant.CALLIGRAPHIC],commutator:"Commutator",comm:"Commutator",anticommutator:["Commutator","\\{","\\}"],acomm:["Commutator","\\{","\\}"],poissonbracket:["Commutator","\\{","\\}"],pb:["Commutator","\\{","\\}"]},n.default),new a.CharacterMap("Physics-vector-chars",i.default.mathchar0mi,{dotproduct:["\u22c5",{mathvariant:o.TexConstant.Variant.BOLD}],vdot:["\u22c5",{mathvariant:o.TexConstant.Variant.BOLD}],crossproduct:"\xd7",cross:"\xd7",cp:"\xd7",gradientnabla:["\u2207",{mathvariant:o.TexConstant.Variant.BOLD}],real:["\u211c",{mathvariant:o.TexConstant.Variant.NORMAL}],imaginary:["\u2111",{mathvariant:o.TexConstant.Variant.NORMAL}]}),new a.CommandMap("Physics-vector-macros",{vectorbold:"VectorBold",vb:"VectorBold",vectorarrow:["StarMacro",1,"\\vec{\\vb","{#1}}"],va:["StarMacro",1,"\\vec{\\vb","{#1}}"],vectorunit:["StarMacro",1,"\\hat{\\vb","{#1}}"],vu:["StarMacro",1,"\\hat{\\vb","{#1}}"],gradient:["OperatorApplication","\\gradientnabla","(","["],grad:["OperatorApplication","\\gradientnabla","(","["],divergence:["VectorOperator","\\gradientnabla\\vdot","(","["],div:["VectorOperator","\\gradientnabla\\vdot","(","["],curl:["VectorOperator","\\gradientnabla\\crossproduct","(","["],laplacian:["OperatorApplication","\\nabla^2","(","["]},n.default),new a.CommandMap("Physics-expressions-macros",{sin:"Expression",sinh:"Expression",arcsin:"Expression",asin:"Expression",cos:"Expression",cosh:"Expression",arccos:"Expression",acos:"Expression",tan:"Expression",tanh:"Expression",arctan:"Expression",atan:"Expression",csc:"Expression",csch:"Expression",arccsc:"Expression",acsc:"Expression",sec:"Expression",sech:"Expression",arcsec:"Expression",asec:"Expression",cot:"Expression",coth:"Expression",arccot:"Expression",acot:"Expression",exp:["Expression",!1],log:"Expression",ln:"Expression",det:["Expression",!1],Pr:["Expression",!1],tr:["Expression",!1],trace:["Expression",!1,"tr"],Tr:["Expression",!1],Trace:["Expression",!1,"Tr"],rank:"NamedFn",erf:["Expression",!1],Res:["OperatorApplication","{\\rm Res}","(","[","{"],principalvalue:["OperatorApplication","{\\cal P}"],pv:["OperatorApplication","{\\cal P}"],PV:["OperatorApplication","{\\rm P.V.}"],Re:["OperatorApplication","{\\rm Re}","{"],Im:["OperatorApplication","{\\rm Im}","{"],sine:["NamedFn","sin"],hypsine:["NamedFn","sinh"],arcsine:["NamedFn","arcsin"],asine:["NamedFn","asin"],cosine:["NamedFn","cos"],hypcosine:["NamedFn","cosh"],arccosine:["NamedFn","arccos"],acosine:["NamedFn","acos"],tangent:["NamedFn","tan"],hyptangent:["NamedFn","tanh"],arctangent:["NamedFn","arctan"],atangent:["NamedFn","atan"],cosecant:["NamedFn","csc"],hypcosecant:["NamedFn","csch"],arccosecant:["NamedFn","arccsc"],acosecant:["NamedFn","acsc"],secant:["NamedFn","sec"],hypsecant:["NamedFn","sech"],arcsecant:["NamedFn","arcsec"],asecant:["NamedFn","asec"],cotangent:["NamedFn","cot"],hypcotangent:["NamedFn","coth"],arccotangent:["NamedFn","arccot"],acotangent:["NamedFn","acot"],exponential:["NamedFn","exp"],logarithm:["NamedFn","log"],naturallogarithm:["NamedFn","ln"],determinant:["NamedFn","det"],Probability:["NamedFn","Pr"]},n.default),new a.CommandMap("Physics-quick-quad-macros",{qqtext:"Qqtext",qq:"Qqtext",qcomma:["Macro","\\qqtext*{,}"],qc:["Macro","\\qqtext*{,}"],qcc:["Qqtext","c.c."],qif:["Qqtext","if"],qthen:["Qqtext","then"],qelse:["Qqtext","else"],qotherwise:["Qqtext","otherwise"],qunless:["Qqtext","unless"],qgiven:["Qqtext","given"],qusing:["Qqtext","using"],qassume:["Qqtext","assume"],"qsince,":["Qqtext","since,"],qlet:["Qqtext","let"],qfor:["Qqtext","for"],qall:["Qqtext","all"],qeven:["Qqtext","even"],qodd:["Qqtext","odd"],qinteger:["Qqtext","integer"],qand:["Qqtext","and"],qor:["Qqtext","or"],qas:["Qqtext","as"],qin:["Qqtext","in"]},n.default),new a.CommandMap("Physics-derivative-macros",{flatfrac:["Macro","\\left.#1\\middle/#2\\right.",2],differential:["Differential","{\\rm d}"],dd:["Differential","{\\rm d}"],variation:["Differential","\\delta"],var:["Differential","\\delta"],derivative:["Derivative",2,"{\\rm d}"],dv:["Derivative",2,"{\\rm d}"],partialderivative:["Derivative",3,"\\partial"],pderivative:["Derivative",3,"\\partial"],pdv:["Derivative",3,"\\partial"],functionalderivative:["Derivative",2,"\\delta"],fderivative:["Derivative",2,"\\delta"],fdv:["Derivative",2,"\\delta"]},n.default),new a.CommandMap("Physics-bra-ket-macros",{bra:"Bra",ket:"Ket",innerproduct:"BraKet",braket:"BraKet",outerproduct:"KetBra",dyad:"KetBra",ketbra:"KetBra",op:"KetBra",expectationvalue:"Expectation",expval:"Expectation",ev:"Expectation",matrixelement:"MatrixElement",matrixel:"MatrixElement",mel:"MatrixElement"},n.default),new a.CommandMap("Physics-matrix-macros",{matrixquantity:"MatrixQuantity",mqty:"MatrixQuantity",pmqty:["Macro","\\mqty(#1)",1],Pmqty:["Macro","\\mqty*(#1)",1],bmqty:["Macro","\\mqty[#1]",1],vmqty:["Macro","\\mqty|#1|",1],smallmatrixquantity:["MatrixQuantity",!0],smqty:["MatrixQuantity",!0],spmqty:["Macro","\\smqty(#1)",1],sPmqty:["Macro","\\smqty*(#1)",1],sbmqty:["Macro","\\smqty[#1]",1],svmqty:["Macro","\\smqty|#1|",1],matrixdeterminant:["Macro","\\vmqty{#1}",1],mdet:["Macro","\\vmqty{#1}",1],smdet:["Macro","\\svmqty{#1}",1],identitymatrix:"IdentityMatrix",imat:"IdentityMatrix",xmatrix:"XMatrix",xmat:"XMatrix",zeromatrix:["Macro","\\xmat{0}{#1}{#2}",2],zmat:["Macro","\\xmat{0}{#1}{#2}",2],paulimatrix:"PauliMatrix",pmat:"PauliMatrix",diagonalmatrix:"DiagonalMatrix",dmat:"DiagonalMatrix",antidiagonalmatrix:["DiagonalMatrix",!0],admat:["DiagonalMatrix",!0]},n.default),new a.EnvironmentMap("Physics-aux-envs",i.default.environment,{smallmatrix:["Array",null,null,null,"c","0.333em",".2em","S",1]},n.default),new a.MacroMap("Physics-characters",{"|":["AutoClose",s.TEXCLASS.ORD],")":"AutoClose","]":"AutoClose"},n.default)},function(t,e,r){"use strict";var a=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var a,n,o=r.call(t),i=[];try{for(;(void 0===e||e-- >0)&&!(a=o.next()).done;)i.push(a.value)}catch(t){n={error:t}}finally{try{a&&!a.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return i};Object.defineProperty(e,"__esModule",{value:!0});var n=r(8),o=r(5),i=r(2),s=r(7),c=r(3),l=r(4),u=r(23),d={},p={"(":")","[":"]","{":"}","|":"|"},f=/^(b|B)i(g{1,2})$/;d.Quantity=function(t,e,r,a,n,u,d){void 0===r&&(r="("),void 0===a&&(a=")"),void 0===n&&(n=!1),void 0===u&&(u=""),void 0===d&&(d="");var m=!!n&&t.GetStar(),h=t.GetNext(),g=t.i,v=null;if("\\"===h){if(t.i++,!(v=t.GetCS()).match(f)){var y=t.create("node","mrow");return t.Push(c.default.fenced(t.configuration,r,y,a)),void(t.i=g)}h=t.GetNext()}var x=p[h];if(n&&"{"!==h)throw new i.default("MissingArgFor","Missing argument for %1",t.currentCS);if(!x){y=t.create("node","mrow");return t.Push(c.default.fenced(t.configuration,r,y,a)),void(t.i=g)}if(u){var b=t.create("token","mi",{texClass:s.TEXCLASS.OP},u);d&&l.default.setAttribute(b,"mathvariant",d),t.Push(t.itemFactory.create("fn",b))}if("{"===h){var _=t.GetArgument(e);return h=n?r:"\\{",x=n?a:"\\}",_=m?h+" "+_+" "+x:v?"\\"+v+"l"+h+" "+_+" \\"+v+"r"+x:"\\left"+h+" "+_+" \\right"+x,void t.Push(new o.default(_,t.stack.env,t.configuration).mml())}n&&(h=r,x=a),t.i++,t.Push(t.itemFactory.create("auto open").setProperties({open:h,close:x,big:v}))},d.Eval=function(t,e){var r=t.GetStar(),a=t.GetNext();if("{"!==a){if("("===a||"["===a)return t.i++,void t.Push(t.itemFactory.create("auto open").setProperties({open:a,close:"|",smash:r,right:"\\vphantom{\\int}"}));throw new i.default("MissingArgFor","Missing argument for %1",t.currentCS)}var n=t.GetArgument(e),o="\\left. "+(r?"\\smash{"+n+"}":n)+" \\vphantom{\\int}\\right|";t.string=t.string.slice(0,t.i)+o+t.string.slice(t.i)},d.Commutator=function(t,e,r,a){void 0===r&&(r="["),void 0===a&&(a="]");var n=t.GetStar(),s=t.GetNext(),c=null;if("\\"===s){if(t.i++,!(c=t.GetCS()).match(f))throw new i.default("MissingArgFor","Missing argument for %1",t.currentCS);s=t.GetNext()}if("{"!==s)throw new i.default("MissingArgFor","Missing argument for %1",t.currentCS);var l=t.GetArgument(e)+","+t.GetArgument(e);l=n?r+" "+l+" "+a:c?"\\"+c+"l"+r+" "+l+" \\"+c+"r"+a:"\\left"+r+" "+l+" \\right"+a,t.Push(new o.default(l,t.stack.env,t.configuration).mml())};var m=[65,90],h=[97,122],g=[913,937],v=[945,969],y=[48,57];function x(t,e){return t>=e[0]&&t<=e[1]}function b(t,e,r,a){var n=t.configuration.parser,o=u.NodeFactory.createToken(t,e,r,a),i=a.codePointAt(0);return 1===a.length&&!n.stack.env.font&&n.stack.env.vectorFont&&(x(i,m)||x(i,h)||x(i,g)||x(i,y)||x(i,v)&&n.stack.env.vectorStar||l.default.getAttribute(o,"accent"))&&l.default.setAttribute(o,"mathvariant",n.stack.env.vectorFont),o}d.VectorBold=function(t,e){var r=t.GetStar(),a=t.GetArgument(e),n=t.configuration.nodeFactory.get("token"),i=t.stack.env.font;delete t.stack.env.font,t.configuration.nodeFactory.set("token",b),t.stack.env.vectorFont=r?"bold-italic":"bold",t.stack.env.vectorStar=r;var s=new o.default(a,t.stack.env,t.configuration).mml();i&&(t.stack.env.font=i),delete t.stack.env.vectorFont,delete t.stack.env.vectorStar,t.configuration.nodeFactory.set("token",n),t.Push(s)},d.StarMacro=function(t,e,r){for(var a=[],n=3;nt.configuration.options.maxMacros)throw new i.default("MaxMacroSub1","MathJax maximum macro substitution count exceeded; is there a recursive macro call?")};var _=function(t,e,r,a,n){var i=new o.default(a,t.stack.env,t.configuration).mml();t.Push(t.itemFactory.create(e,i));var s=t.GetNext(),c=p[s];if(c){var l=-1!==n.indexOf(s);if("{"===s){var u=(l?"\\left\\{":"")+" "+t.GetArgument(r)+" "+(l?"\\right\\}":"");return t.string=u+t.string.slice(t.i),void(t.i=0)}l&&(t.i++,t.Push(t.itemFactory.create("auto open").setProperties({open:s,close:c})))}};function M(t,e,r){var n=a(t,3),o=n[0],i=n[1],s=n[2];return e&&r?"\\left\\langle{"+o+"}\\middle\\vert{"+i+"}\\middle\\vert{"+s+"}\\right\\rangle":e?"\\langle{"+o+"}\\vert{"+i+"}\\vert{"+s+"}\\rangle":"\\left\\langle{"+o+"}\\right\\vert{"+i+"}\\left\\vert{"+s+"}\\right\\rangle"}d.OperatorApplication=function(t,e,r){for(var a=[],n=3;n2&&c.length>2?(u="^{"+(c.length-1)+"}",l=!0):null!=i&&(r>2&&c.length>1&&(l=!0),d=u="^{"+i+"}");for(var p=n?"\\flatfrac":"\\frac",f=c.length>1?c[0]:"",m=c.length>1?c[1]:c[0],h="",g=2,v=void 0;v=c[g];g++)h+=a+" "+v;var y=p+"{"+a+u+f+"}{"+a+" "+m+d+" "+h+"}";t.Push(new o.default(y,t.stack.env,t.configuration).mml()),"("===t.GetNext()&&(t.i++,t.Push(t.itemFactory.create("auto open").setProperties({open:"(",close:")",ignore:l})))},d.Bra=function(t,e){var r=t.GetStar(),a=t.GetArgument(e),n="",i=!1,s=!1;if("\\"===t.GetNext()){var c=t.i;t.i++;var l=t.GetCS(),u=t.lookup("macro",l);u&&"ket"===u.symbol?(i=!0,c=t.i,s=t.GetStar(),"{"===t.GetNext()?n=t.GetArgument(l,!0):(t.i=c,s=!1)):t.i=c}var d="";d=i?r||s?"\\langle{"+a+"}\\vert{"+n+"}\\rangle":"\\left\\langle{"+a+"}\\middle\\vert{"+n+"}\\right\\rangle":r||s?"\\langle{"+a+"}\\vert":"\\left\\langle{"+a+"}\\right\\vert{"+n+"}",t.Push(new o.default(d,t.stack.env,t.configuration).mml())},d.Ket=function(t,e){var r=t.GetStar(),a=t.GetArgument(e),n=r?"\\vert{"+a+"}\\rangle":"\\left\\vert{"+a+"}\\right\\rangle";t.Push(new o.default(n,t.stack.env,t.configuration).mml())},d.BraKet=function(t,e){var r=t.GetStar(),a=t.GetArgument(e),n=null;"{"===t.GetNext()&&(n=t.GetArgument(e,!0));var i="";i=null==n?r?"\\langle{"+a+"}\\vert{"+a+"}\\rangle":"\\left\\langle{"+a+"}\\middle\\vert{"+a+"}\\right\\rangle":r?"\\langle{"+a+"}\\vert{"+n+"}\\rangle":"\\left\\langle{"+a+"}\\middle\\vert{"+n+"}\\right\\rangle",t.Push(new o.default(i,t.stack.env,t.configuration).mml())},d.KetBra=function(t,e){var r=t.GetStar(),a=t.GetArgument(e),n=null;"{"===t.GetNext()&&(n=t.GetArgument(e,!0));var i="";i=null==n?r?"\\vert{"+a+"}\\rangle\\!\\langle{"+a+"}\\vert":"\\left\\vert{"+a+"}\\middle\\rangle\\!\\middle\\langle{"+a+"}\\right\\vert":r?"\\vert{"+a+"}\\rangle\\!\\langle{"+n+"}\\vert":"\\left\\vert{"+a+"}\\middle\\rangle\\!\\middle\\langle{"+n+"}\\right\\vert",t.Push(new o.default(i,t.stack.env,t.configuration).mml())},d.Expectation=function(t,e){var r=t.GetStar(),a=r&&t.GetStar(),n=t.GetArgument(e),i=null;"{"===t.GetNext()&&(i=t.GetArgument(e,!0));var s=n&&i?M([i,n,i],r,a):r?"\\langle {"+n+"} \\rangle":"\\left\\langle {"+n+"} \\right\\rangle";t.Push(new o.default(s,t.stack.env,t.configuration).mml())},d.MatrixElement=function(t,e){var r=t.GetStar(),a=r&&t.GetStar(),n=M([t.GetArgument(e),t.GetArgument(e),t.GetArgument(e)],r,a);t.Push(new o.default(n,t.stack.env,t.configuration).mml())},d.MatrixQuantity=function(t,e,r){var a=t.GetStar(),n=r?"smallmatrix":"array",i="",s="",c="";switch(t.GetNext()){case"{":i=t.GetArgument(e);break;case"(":t.i++,s=a?"\\lgroup":"(",c=a?"\\rgroup":")",i=t.GetUpTo(e,")");break;case"[":t.i++,s="[",c="]",i=t.GetUpTo(e,"]");break;case"|":t.i++,s="|",c="|",i=t.GetUpTo(e,"|");break;default:s="(",c=")"}var l=(s?"\\left":"")+s+"\\begin{"+n+"}{} "+i+"\\end{"+n+"}"+(s?"\\right":"")+c;t.Push(new o.default(l,t.stack.env,t.configuration).mml())},d.IdentityMatrix=function(t,e){var r=t.GetArgument(e),a=parseInt(r,10);if(isNaN(a))throw new i.default("InvalidNumber","Invalid number");if(a<=1)return t.string="1"+t.string.slice(t.i),void(t.i=0);for(var n=Array(a).fill("0"),o=[],s=0;s=n){o.push(t.string.slice(s,n));break}s=t.i,o.push(i)}t.string=function(t,e){for(var r=t.length,a=[],n=0;n=t.length&&(t=void 0),{value:t&&t[a++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},i=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var a,n,o=r.call(t),i=[];try{for(;(void 0===e||e-- >0)&&!(a=o.next()).done;)i.push(a.value)}catch(t){n={error:t}}finally{try{a&&!a.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return i},s=this&&this.__spread||function(){for(var t=[],e=0;e":["Spacer",n.TexConstant.Length.MEDIUMMATHSPACE],";":["Spacer",n.TexConstant.Length.THICKMATHSPACE],"!":["Spacer",n.TexConstant.Length.NEGATIVETHINMATHSPACE],enspace:["Spacer",".5em"],quad:["Spacer","1em"],qquad:["Spacer","2em"],thinspace:["Spacer",n.TexConstant.Length.THINMATHSPACE],negthinspace:["Spacer",n.TexConstant.Length.NEGATIVETHINMATHSPACE],hskip:"Hskip",hspace:"Hskip",kern:"Hskip",mskip:"Hskip",mspace:"Hskip",mkern:"Hskip",rule:"rule",Rule:["Rule"],Space:["Rule","blank"],color:"CheckAutoload",textcolor:"CheckAutoload",colorbox:"CheckAutoload",fcolorbox:"CheckAutoload",href:"CheckAutoload",style:"CheckAutoload",class:"CheckAutoload",cssId:"CheckAutoload",unicode:"CheckAutoload",ref:["HandleRef",!1],eqref:["HandleRef",!0]},o.TextMacrosMethods)},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.UnicodeConfiguration=e.UnicodeMethods=void 0;var a=r(0),n=r(2),o=r(1),i=r(3),s=r(4),c=r(74);e.UnicodeMethods={};var l={};e.UnicodeMethods.Unicode=function(t,e){var r=t.GetBrackets(e),a=null,o=null;r&&(r.replace(/ /g,"").match(/^(\d+(\.\d*)?|\.\d+),(\d+(\.\d*)?|\.\d+)$/)?(a=r.replace(/ /g,"").split(/,/),o=t.GetBrackets(e)):o=r);var u=i.default.trimSpaces(t.GetArgument(e)).replace(/^0x/,"x");if(!u.match(/^(x[0-9A-Fa-f]+|[0-9]+)$/))throw new n.default("BadUnicode","Argument to \\unicode must be a number");var d=parseInt(u.match(/^x/)?"0"+u:u);l[d]?o||(o=l[d][2]):l[d]=[800,200,o,d],a&&(l[d][0]=Math.floor(1e3*parseFloat(a[0])),l[d][1]=Math.floor(1e3*parseFloat(a[1])));var p=t.stack.env.font,f={};o?(l[d][2]=f.fontfamily=o.replace(/'/g,"'"),p&&(p.match(/bold/)&&(f.fontweight="bold"),p.match(/italic|-mathit/)&&(f.fontstyle="italic"))):p&&(f.mathvariant=p);var m=t.create("token","mtext",f,c.numeric(u));s.default.setProperty(m,"unicode",!0),t.Push(m)},new o.CommandMap("unicode",{unicode:"Unicode"},e.UnicodeMethods),e.UnicodeConfiguration=a.Configuration.create("unicode",{handler:{macro:["unicode"]}})},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.options=MathJax._.util.Entities.options,e.entities=MathJax._.util.Entities.entities,e.add=MathJax._.util.Entities.add,e.remove=MathJax._.util.Entities.remove,e.translate=MathJax._.util.Entities.translate,e.numeric=MathJax._.util.Entities.numeric},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.VerbConfiguration=e.VerbMethods=void 0;var a=r(0),n=r(6),o=r(1),i=r(2);e.VerbMethods={},e.VerbMethods.Verb=function(t,e){var r=t.GetNext(),a=++t.i;if(""===r)throw new i.default("MissingArgFor","Missing argument for %1",e);for(;t.it.length)&&(e=t.length);for(var r=0,a=new Array(e);r0;)u+="rl",c.push("0em 0em"),d--;var h=c.join(" ");if(i)return e.AmsMethods.EqnArray(t,a,n,i,u,h);var p=e.AmsMethods.EqnArray(t,a,n,i,u,h);return r.default.setArrayAlign(p,s)},e.AmsMethods.Multline=function(t,e,a){t.Push(e),r.default.checkEqnEnv(t);var n=t.itemFactory.create("multline",a,t.stack);return n.arraydef={displaystyle:!0,rowspacing:".5em",columnwidth:"100%",width:t.options.multlineWidth,side:t.options.tagSide,minlabelspacing:t.options.tagIndent},n},e.NEW_OPS="ams-declare-ops",e.AmsMethods.HandleDeclareOp=function(t,a){var n=t.GetStar()?"":"\\nolimits\\SkipLimits",i=r.default.trimSpaces(t.GetArgument(a));"\\"===i.charAt(0)&&(i=i.substr(1));var o=t.GetArgument(a);o.match(/\\text/)||(o=o.replace(/\*/g,"\\text{*}").replace(/-/g,"\\text{-}")),t.configuration.handlers.retrieve(e.NEW_OPS).add(i,new s.Macro(i,e.AmsMethods.Macro,["\\mathop{\\rm "+o+"}"+n]))},e.AmsMethods.HandleOperatorName=function(t,e){var a=t.GetStar()?"":"\\nolimits\\SkipLimits",n=r.default.trimSpaces(t.GetArgument(e));n.match(/\\text/)||(n=n.replace(/\*/g,"\\text{*}").replace(/-/g,"\\text{-}")),t.string="\\mathop{\\rm "+n+"}"+a+" "+t.string.slice(t.i),t.i=0},e.AmsMethods.SkipLimits=function(t,e){var a=t.GetNext(),r=t.i;"\\"===a&&++t.i&&"limits"!==t.GetCS()&&(t.i=r)},e.AmsMethods.MultiIntegral=function(t,e,a){var r=t.GetNext();if("\\"===r){var n=t.i;r=t.GetArgument(e),t.i=n,"\\limits"===r&&(a="\\idotsint"===e?"\\!\\!\\mathop{\\,\\,"+a+"}":"\\!\\!\\!\\mathop{\\,\\,\\,"+a+"}")}t.string=a+" "+t.string.slice(t.i),t.i=0},e.AmsMethods.xArrow=function(t,e,a,i,l){var s={width:"+"+r.default.Em((i+l)/18),lspace:r.default.Em(i/18)},m=t.GetBrackets(e),c=t.ParseArg(e),d=t.create("token","mo",{stretchy:!0,texClass:u.TEXCLASS.REL},String.fromCodePoint(a)),h=t.create("node","munderover",[d]),p=t.create("node","mpadded",[c],s);if(n.default.setAttribute(p,"voffset",".15em"),n.default.setChild(h,h.over,p),m){var f=new o.default(m,t.stack.env,t.configuration).mml();p=t.create("node","mpadded",[f],s),n.default.setAttribute(p,"voffset","-.24em"),n.default.setChild(h,h.under,p)}n.default.setProperty(h,"subsupOK",!0),t.Push(h)},e.AmsMethods.HandleShove=function(t,e,a){var r=t.stack.Top();if("multline"!==r.kind)throw new l.default("CommandOnlyAllowedInEnv","%1 only allowed in %2 environment",t.currentCS,"multline");if(r.Size())throw new l.default("CommandAtTheBeginingOfLine","%1 must come at the beginning of the line",t.currentCS);r.setProperty("shove",a)},e.AmsMethods.CFrac=function(t,e){var a=r.default.trimSpaces(t.GetBrackets(e,"")),s=t.GetArgument(e),m=t.GetArgument(e),u={l:i.TexConstant.Align.LEFT,r:i.TexConstant.Align.RIGHT,"":""},c=new o.default("\\strut\\textstyle{"+s+"}",t.stack.env,t.configuration).mml(),d=new o.default("\\strut\\textstyle{"+m+"}",t.stack.env,t.configuration).mml(),h=t.create("node","mfrac",[c,d]);if(null==(a=u[a]))throw new l.default("IllegalAlign","Illegal alignment specified in %1",t.currentCS);a&&n.default.setProperties(h,{numalign:a,denomalign:a}),t.Push(h)},e.AmsMethods.Genfrac=function(t,e,a,i,o,s){null==a&&(a=t.GetDelimiterArg(e)),null==i&&(i=t.GetDelimiterArg(e)),null==o&&(o=t.GetArgument(e)),null==s&&(s=r.default.trimSpaces(t.GetArgument(e)));var m=t.ParseArg(e),u=t.ParseArg(e),c=t.create("node","mfrac",[m,u]);if(""!==o&&n.default.setAttribute(c,"linethickness",o),(a||i)&&(n.default.setProperty(c,"withDelims",!0),c=r.default.fixedFence(t.configuration,a,c,i)),""!==s){var d=parseInt(s,10),h=["D","T","S","SS"][d];if(null==h)throw new l.default("BadMathStyleFor","Bad math style for %1",t.currentCS);c=t.create("node","mstyle",[c]),"D"===h?n.default.setProperties(c,{displaystyle:!0,scriptlevel:0}):n.default.setProperties(c,{displaystyle:!1,scriptlevel:d-1})}t.Push(c)},e.AmsMethods.HandleTag=function(t,e){if(!t.tags.currentTag.taggable&&t.tags.env)throw new l.default("CommandNotAllowedInEnv","%1 not allowed in %2 environment",t.currentCS,t.tags.env);if(t.tags.currentTag.tag)throw new l.default("MultipleCommand","Multiple %1",t.currentCS);var a=t.GetStar(),n=r.default.trimSpaces(t.GetArgument(e));t.tags.tag(n,a)},e.AmsMethods.HandleNoTag=m.default.HandleNoTag,e.AmsMethods.HandleRef=m.default.HandleRef,e.AmsMethods.Macro=m.default.Macro,e.AmsMethods.Accent=m.default.Accent,e.AmsMethods.Tilde=m.default.Tilde,e.AmsMethods.Array=m.default.Array,e.AmsMethods.Spacer=m.default.Spacer,e.AmsMethods.NamedOp=m.default.NamedOp,e.AmsMethods.EqnArray=m.default.EqnArray},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=MathJax._.input.tex.ParseUtil.default},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TexConstant=MathJax._.input.tex.TexConstants.TexConstant},function(t,e,a){"use strict";var r,n=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var a in e)e.hasOwnProperty(a)&&(t[a]=e[a])})(t,e)},function(t,e){function a(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(a.prototype=e.prototype,new a)});Object.defineProperty(e,"__esModule",{value:!0}),e.MultlineItem=void 0;var i=a(11),o=a(1),l=a(4),s=a(5),m=a(2),u=function(t){function e(e){for(var a=[],r=1;r":"\u2192","<":"\u2190",V:"\u2193",A:"\u2191"}[a],h=e.GetUpTo(t+a,a),b=e.GetUpTo(t+a,a);if(">"===a||"<"===a){if(s=e.create("token","mo",p,M),h||(h="\\kern "+u.getProperty("minw")),h||b){var _={width:".67em",lspace:".33em"};if(s=e.create("node","munderover",[s]),h){var x=new n.default(h,e.stack.env,e.configuration).mml(),g=e.create("node","mpadded",[x],_);i.default.setAttribute(g,"voffset",".1em"),i.default.setChild(s,s.over,g)}if(b){var v=new n.default(b,e.stack.env,e.configuration).mml();i.default.setChild(s,s.under,e.create("node","mpadded",[v],_))}e.configuration.options.amscd.hideHorizontalLabels&&(s=e.create("node","mpadded",s,{depth:0,height:".67em"}))}}else{var C=e.create("token","mo",f,M);s=C,(h||b)&&(s=e.create("node","mrow"),h&&i.default.appendChildren(s,[new n.default("\\scriptstyle\\llap{"+h+"}",e.stack.env,e.configuration).mml()]),C.texClass=o.TEXCLASS.ORD,i.default.appendChildren(s,[C]),b&&i.default.appendChildren(s,[new n.default("\\scriptstyle\\rlap{"+b+"}",e.stack.env,e.configuration).mml()]))}}s&&e.Push(s),c.cell(e,t)},cell:function(e,t){var a=e.stack.Top();(a.table||[]).length%2==0&&0===(a.row||[]).length&&e.Push(e.create("node","mpadded",[],{height:"8.5pt",depth:"2pt"})),e.Push(e.itemFactory.create("cell").setProperties({isEntry:!0,name:t}))},minCDarrowwidth:function(e,t){e.stack.env.CD_minw=e.GetDimen(t)},minCDarrowheight:function(e,t){e.stack.env.CD_minh=e.GetDimen(t)}};t.default=c},function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AmsCdConfiguration=void 0;var n=a(3);a(4),t.AmsCdConfiguration=n.Configuration.create("amscd",{handler:{character:["amscd_special"],macro:["amscd_macros"],environment:["amscd_environment"]},options:{amscd:{colspace:"5pt",rowspace:"5pt",harrowsize:"2.75em",varrowsize:"1.75em",hideHorizontalLabels:!1}}})},function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Configuration=MathJax._.input.tex.Configuration.Configuration,t.ConfigurationHandler=MathJax._.input.tex.Configuration.ConfigurationHandler,t.ParserConfiguration=MathJax._.input.tex.Configuration.ParserConfiguration},function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=a(5),r=a(6),o=a(1);new n.EnvironmentMap("amscd_environment",r.default.environment,{CD:"CD"},o.default),new n.CommandMap("amscd_macros",{minCDarrowwidth:"minCDarrowwidth",minCDarrowheight:"minCDarrowheight"},o.default),new n.MacroMap("amscd_special",{"@":"arrow"},o.default)},function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AbstractSymbolMap=MathJax._.input.tex.SymbolMap.AbstractSymbolMap,t.RegExpMap=MathJax._.input.tex.SymbolMap.RegExpMap,t.AbstractParseMap=MathJax._.input.tex.SymbolMap.AbstractParseMap,t.CharacterMap=MathJax._.input.tex.SymbolMap.CharacterMap,t.DelimiterMap=MathJax._.input.tex.SymbolMap.DelimiterMap,t.MacroMap=MathJax._.input.tex.SymbolMap.MacroMap,t.CommandMap=MathJax._.input.tex.SymbolMap.CommandMap,t.EnvironmentMap=MathJax._.input.tex.SymbolMap.EnvironmentMap},function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=MathJax._.input.tex.ParseMethods.default},function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=MathJax._.input.tex.TexParser.default},function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Other=MathJax._.input.tex.base.BaseConfiguration.Other,t.BaseTags=MathJax._.input.tex.base.BaseConfiguration.BaseTags,t.BaseConfiguration=MathJax._.input.tex.base.BaseConfiguration.BaseConfiguration},function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TEXCLASS=MathJax._.core.MmlTree.MmlNode.TEXCLASS,t.TEXCLASSNAMES=MathJax._.core.MmlTree.MmlNode.TEXCLASSNAMES,t.indentAttributes=MathJax._.core.MmlTree.MmlNode.indentAttributes,t.AbstractMmlNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlNode,t.AbstractMmlTokenNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlTokenNode,t.AbstractMmlLayoutNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlLayoutNode,t.AbstractMmlBaseNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlBaseNode,t.AbstractMmlEmptyNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlEmptyNode,t.TextNode=MathJax._.core.MmlTree.MmlNode.TextNode,t.XMLNode=MathJax._.core.MmlTree.MmlNode.XMLNode},function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=MathJax._.input.tex.NodeUtil.default},function(e,t,a){"use strict";a.r(t);var n=a(0),r=a(2),o=a(1);Object(n.combineWithMathJax)({_:{input:{tex:{amscd:{AmsCdConfiguration:r,AmsCdMethods:o}}}}}),function(e,t,a){var r,o,i,c=MathJax.config.tex;if(c&&c.packages){var l=c.packages,s=l.indexOf(e);s>=0&&(l[s]=t),a&&c[e]&&(Object(n.combineConfig)(c,(r={},o=t,i=c[e],o in r?Object.defineProperty(r,o,{value:i,enumerable:!0,configurable:!0,writable:!0}):r[o]=i,r)),delete c[e])}}("amsCd","amscd",!0)}]); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/autoload.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/autoload.js new file mode 100644 index 0000000..8584aac --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/autoload.js @@ -0,0 +1 @@ +!function(e){var t={};function o(a){if(t[a])return t[a].exports;var r=t[a]={i:a,l:!1,exports:{}};return e[a].call(r.exports,r,r.exports,o),r.l=!0,r.exports}o.m=e,o.c=t,o.d=function(e,t,a){o.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:a})},o.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.t=function(e,t){if(1&t&&(e=o(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var a=Object.create(null);if(o.r(a),Object.defineProperty(a,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)o.d(a,r,function(t){return e[t]}.bind(null,r));return a},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="",o(o.s=8)}([function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isObject=MathJax._.components.global.isObject,t.combineConfig=MathJax._.components.global.combineConfig,t.combineDefaults=MathJax._.components.global.combineDefaults,t.combineWithMathJax=MathJax._.components.global.combineWithMathJax,t.MathJax=MathJax._.components.global.MathJax},function(e,t,o){"use strict";var a=this&&this.__read||function(e,t){var o="function"==typeof Symbol&&e[Symbol.iterator];if(!o)return e;var a,r,n=o.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(a=n.next()).done;)i.push(a.value)}catch(e){r={error:e}}finally{try{a&&!a.done&&(o=n.return)&&o.call(n)}finally{if(r)throw r.error}}return i},r=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,o=t&&e[t],a=0;if(o)return o.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&a>=e.length&&(e=void 0),{value:e&&e[a++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(t,"__esModule",{value:!0}),t.AutoloadConfiguration=void 0;var n=o(2),i=o(3),l=o(4),u=o(5),c=o(6),s=o(7);function p(e,t,o,n){var i,l,s,p;if(c.Package.packages.has(e.options.require.prefix+o)){var x=e.options.autoload[o],M=a(2===x.length&&Array.isArray(x[0])?x:[x,[]],2),b=M[0],h=M[1];try{for(var y=r(b),m=y.next();!m.done;m=y.next()){var _=m.value;f.remove(_)}}catch(e){i={error:e}}finally{try{m&&!m.done&&(l=y.return)&&l.call(y)}finally{if(i)throw i.error}}try{for(var g=r(h),v=g.next();!v.done;v=g.next()){var O=v.value;d.remove(O)}}catch(e){s={error:e}}finally{try{v&&!v.done&&(p=g.return)&&p.call(g)}finally{if(s)throw s.error}}e.string=(n?t:"\\begin{"+t.slice(1)+"}")+e.string.slice(e.i),e.i=0}u.RequireLoad(e,o)}var f=new i.CommandMap("autoload-macros",{},{}),d=new i.CommandMap("autoload-environments",{},{});t.AutoloadConfiguration=n.Configuration.create("autoload",{handler:{macro:["autoload-macros"],environment:["autoload-environments"]},options:{autoload:s.expandable({action:["toggle","mathtip","texttip"],amscd:[[],["CD"]],bbox:["bbox"],boldsymbol:["boldsymbol"],braket:["bra","ket","braket","set","Bra","Ket","Braket","Set","ketbra","Ketbra"],bussproofs:[[],["prooftree"]],cancel:["cancel","bcancel","xcancel","cancelto"],color:["color","definecolor","textcolor","colorbox","fcolorbox"],enclose:["enclose"],extpfeil:["xtwoheadrightarrow","xtwoheadleftarrow","xmapsto","xlongequal","xtofrom","Newextarrow"],html:["href","class","style","cssId"],mhchem:["ce","pu"],newcommand:["newcommand","renewcommand","newenvironment","renewenvironment","def","let"],unicode:["unicode"],verb:["verb"]})},config:function(e,t){var o,n,i,c,s,x,M=t.parseOptions,b=M.handlers.get("macro"),h=M.handlers.get("environment"),y=M.options.autoload;M.packageData.set("autoload",{Autoload:p});try{for(var m=r(Object.keys(y)),_=m.next();!_.done;_=m.next()){var g=_.value,v=y[g],O=a(2===v.length&&Array.isArray(v[0])?v:[v,[]],2),J=O[0],C=O[1];try{for(var P=(i=void 0,r(J)),S=P.next();!S.done;S=P.next()){var w=S.value;b.lookup(w)&&"color"!==w||f.add(w,new l.Macro(w,p,[g,!0]))}}catch(e){i={error:e}}finally{try{S&&!S.done&&(c=P.return)&&c.call(P)}finally{if(i)throw i.error}}try{for(var k=(s=void 0,r(C)),q=k.next();!q.done;q=k.next()){var j=q.value;h.lookup(j)||d.add(j,new l.Macro(j,p,[g,!1]))}}catch(e){s={error:e}}finally{try{q&&!q.done&&(x=k.return)&&x.call(k)}finally{if(s)throw s.error}}}}catch(e){o={error:e}}finally{try{_&&!_.done&&(n=m.return)&&n.call(m)}finally{if(o)throw o.error}}M.packageData.get("require")||u.RequireConfiguration.config(e,t)},init:function(e){e.options.require||s.defaultOptions(e.options,u.RequireConfiguration.options)},priority:10})},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Configuration=MathJax._.input.tex.Configuration.Configuration,t.ConfigurationHandler=MathJax._.input.tex.Configuration.ConfigurationHandler,t.ParserConfiguration=MathJax._.input.tex.Configuration.ParserConfiguration},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AbstractSymbolMap=MathJax._.input.tex.SymbolMap.AbstractSymbolMap,t.RegExpMap=MathJax._.input.tex.SymbolMap.RegExpMap,t.AbstractParseMap=MathJax._.input.tex.SymbolMap.AbstractParseMap,t.CharacterMap=MathJax._.input.tex.SymbolMap.CharacterMap,t.DelimiterMap=MathJax._.input.tex.SymbolMap.DelimiterMap,t.MacroMap=MathJax._.input.tex.SymbolMap.MacroMap,t.CommandMap=MathJax._.input.tex.SymbolMap.CommandMap,t.EnvironmentMap=MathJax._.input.tex.SymbolMap.EnvironmentMap},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Symbol=MathJax._.input.tex.Symbol.Symbol,t.Macro=MathJax._.input.tex.Symbol.Macro},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RequireLoad=MathJax._.input.tex.require.RequireConfiguration.RequireLoad,t.RequireMethods=MathJax._.input.tex.require.RequireConfiguration.RequireMethods,t.options=MathJax._.input.tex.require.RequireConfiguration.options,t.RequireConfiguration=MathJax._.input.tex.require.RequireConfiguration.RequireConfiguration},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PackageError=MathJax._.components.package.PackageError,t.Package=MathJax._.components.package.Package},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.APPEND=MathJax._.util.Options.APPEND,t.REMOVE=MathJax._.util.Options.REMOVE,t.Expandable=MathJax._.util.Options.Expandable,t.expandable=MathJax._.util.Options.expandable,t.makeArray=MathJax._.util.Options.makeArray,t.keys=MathJax._.util.Options.keys,t.copy=MathJax._.util.Options.copy,t.insert=MathJax._.util.Options.insert,t.defaultOptions=MathJax._.util.Options.defaultOptions,t.userOptions=MathJax._.util.Options.userOptions,t.selectOptions=MathJax._.util.Options.selectOptions,t.selectOptionsFromKeys=MathJax._.util.Options.selectOptionsFromKeys,t.separateOptions=MathJax._.util.Options.separateOptions},function(e,t,o){"use strict";o.r(t);var a=o(0),r=o(1);Object(a.combineWithMathJax)({_:{input:{tex:{autoload:{AutoloadConfiguration:r}}}}})}]); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/bbox.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/bbox.js new file mode 100644 index 0000000..636150b --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/bbox.js @@ -0,0 +1 @@ +!function(t){var e={};function a(o){if(e[o])return e[o].exports;var n=e[o]={i:o,l:!1,exports:{}};return t[o].call(n.exports,n,n.exports,a),n.l=!0,n.exports}a.m=t,a.c=e,a.d=function(t,e,o){a.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:o})},a.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},a.t=function(t,e){if(1&e&&(t=a(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var o=Object.create(null);if(a.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var n in t)a.d(o,n,function(e){return t[e]}.bind(null,n));return o},a.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return a.d(e,"a",e),e},a.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},a.p="",a(a.s=5)}([function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.isObject=MathJax._.components.global.isObject,e.combineConfig=MathJax._.components.global.combineConfig,e.combineDefaults=MathJax._.components.global.combineDefaults,e.combineWithMathJax=MathJax._.components.global.combineWithMathJax,e.MathJax=MathJax._.components.global.MathJax},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.BboxConfiguration=e.BboxMethods=void 0;var o=a(2),n=a(3),i=a(4);e.BboxMethods={},e.BboxMethods.BBox=function(t,e){for(var a,o,n,l=t.GetBrackets(e,""),c=t.ParseArg(e),p=l.split(/,/),f=0,s=p.length;f=t.length&&(t=void 0),{value:t&&t[a++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.BoldsymbolConfiguration=e.rewriteBoldTokens=e.createBoldToken=e.BoldsymbolMethods=void 0;var n=o(2),r=o(3),i=o(4),l=o(5),u=o(6),s={};function c(t,e,o,a){var n=u.NodeFactory.createToken(t,e,o,a);return"mtext"!==e&&t.configuration.parser.stack.env.boldsymbol&&(r.default.setProperty(n,"fixBold",!0),t.configuration.addNode("fixBold",n)),n}function d(t){var e,o;try{for(var n=a(t.data.getList("fixBold")),l=n.next();!l.done;l=n.next()){var u=l.value;if(r.default.getProperty(u,"fixBold")){var c=r.default.getAttribute(u,"mathvariant");null==c?r.default.setAttribute(u,"mathvariant",i.TexConstant.Variant.BOLD):r.default.setAttribute(u,"mathvariant",s[c]||c),r.default.removeProperties(u,"fixBold")}}}catch(t){e={error:t}}finally{try{l&&!l.done&&(o=n.return)&&o.call(n)}finally{if(e)throw e.error}}}s[i.TexConstant.Variant.NORMAL]=i.TexConstant.Variant.BOLD,s[i.TexConstant.Variant.ITALIC]=i.TexConstant.Variant.BOLDITALIC,s[i.TexConstant.Variant.FRAKTUR]=i.TexConstant.Variant.BOLDFRAKTUR,s[i.TexConstant.Variant.SCRIPT]=i.TexConstant.Variant.BOLDSCRIPT,s[i.TexConstant.Variant.SANSSERIF]=i.TexConstant.Variant.BOLDSANSSERIF,s["-tex-calligraphic"]="-tex-bold-calligraphic",s["-tex-oldstyle"]="-tex-bold-oldstyle",e.BoldsymbolMethods={},e.BoldsymbolMethods.Boldsymbol=function(t,e){var o=t.stack.env.boldsymbol;t.stack.env.boldsymbol=!0;var a=t.ParseArg(e);t.stack.env.boldsymbol=o,t.Push(a)},new l.CommandMap("boldsymbol",{boldsymbol:"Boldsymbol"},e.BoldsymbolMethods),e.createBoldToken=c,e.rewriteBoldTokens=d,e.BoldsymbolConfiguration=n.Configuration.create("boldsymbol",{handler:{macro:["boldsymbol"]},nodes:{token:c},postprocessors:[d]})},function(t,e,o){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Configuration=MathJax._.input.tex.Configuration.Configuration,e.ConfigurationHandler=MathJax._.input.tex.Configuration.ConfigurationHandler,e.ParserConfiguration=MathJax._.input.tex.Configuration.ParserConfiguration},function(t,e,o){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=MathJax._.input.tex.NodeUtil.default},function(t,e,o){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TexConstant=MathJax._.input.tex.TexConstants.TexConstant},function(t,e,o){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractSymbolMap=MathJax._.input.tex.SymbolMap.AbstractSymbolMap,e.RegExpMap=MathJax._.input.tex.SymbolMap.RegExpMap,e.AbstractParseMap=MathJax._.input.tex.SymbolMap.AbstractParseMap,e.CharacterMap=MathJax._.input.tex.SymbolMap.CharacterMap,e.DelimiterMap=MathJax._.input.tex.SymbolMap.DelimiterMap,e.MacroMap=MathJax._.input.tex.SymbolMap.MacroMap,e.CommandMap=MathJax._.input.tex.SymbolMap.CommandMap,e.EnvironmentMap=MathJax._.input.tex.SymbolMap.EnvironmentMap},function(t,e,o){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.NodeFactory=MathJax._.input.tex.NodeFactory.NodeFactory},function(t,e,o){"use strict";o.r(e);var a=o(0),n=o(1);Object(a.combineWithMathJax)({_:{input:{tex:{boldsymbol:{BoldsymbolConfiguration:n}}}}})}]); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/braket.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/braket.js new file mode 100644 index 0000000..fea082f --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/braket.js @@ -0,0 +1 @@ +!function(e){var t={};function r(a){if(t[a])return t[a].exports;var o=t[a]={i:a,l:!1,exports:{}};return e[a].call(o.exports,o,o.exports,r),o.l=!0,o.exports}r.m=e,r.c=t,r.d=function(e,t,a){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:a})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var a=Object.create(null);if(r.r(a),Object.defineProperty(a,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(a,o,function(t){return e[t]}.bind(null,o));return a},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=12)}([function(e,t,r){"use strict";var a,o=this&&this.__extends||(a=function(e,t){return(a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}a(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.BraketItem=void 0;var n=r(6),i=r(2),c=r(7),u=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o(t,e),Object.defineProperty(t.prototype,"kind",{get:function(){return"braket"},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"isOpen",{get:function(){return!0},enumerable:!1,configurable:!0}),t.prototype.checkItem=function(t){return t.isKind("close")?[[this.factory.create("mml",this.toMml())],!0]:t.isKind("mml")?(this.Push(t.toMml()),this.getProperty("single")?[[this.toMml()],!0]:n.BaseItem.fail):e.prototype.checkItem.call(this,t)},t.prototype.toMml=function(){var t=e.prototype.toMml.call(this),r=this.getProperty("open"),a=this.getProperty("close");if(this.getProperty("stretchy"))return c.default.fenced(this.factory.configuration,r,t,a);var o={fence:!0,stretchy:!1,symmetric:!0,texClass:i.TEXCLASS.OPEN},n=this.create("token","mo",o,r);o.texClass=i.TEXCLASS.CLOSE;var u=this.create("token","mo",o,a);return this.create("node","mrow",[n,t,u],{open:r,close:a,texClass:i.TEXCLASS.INNER})},t}(n.BaseItem);t.BraketItem=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var a=r(10),o=r(2),n=r(11),i={};i.Macro=a.default.Macro,i.Braket=function(e,t,r,a,o,i){var c=e.GetNext();if(""===c)throw new n.default("MissingArgFor","Missing argument for %1",e.currentCS);var u=!0;"{"===c&&(e.i++,u=!1),e.Push(e.itemFactory.create("braket").setProperties({barmax:i,barcount:0,open:r,close:a,stretchy:o,single:u}))},i.Bar=function(e,t){var r="|"===t?"|":"\u2225",a=e.stack.Top();if("braket"!==a.kind||a.getProperty("barcount")>=a.getProperty("barmax")){var n=e.create("token","mo",{texClass:o.TEXCLASS.ORD,stretchy:!1},r);e.Push(n)}else{if("|"===r&&"|"===e.GetNext()&&(e.i++,r="\u2225"),a.getProperty("stretchy")){var i=e.create("node","TeXAtom",[],{texClass:o.TEXCLASS.CLOSE});e.Push(i),a.setProperty("barcount",a.getProperty("barcount")+1),i=e.create("token","mo",{stretchy:!0,braketbar:!0},r),e.Push(i),i=e.create("node","TeXAtom",[],{texClass:o.TEXCLASS.OPEN}),e.Push(i)}else{var c=e.create("token","mo",{stretchy:!1,braketbar:!0},r);e.Push(c)}}},t.default=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TEXCLASS=MathJax._.core.MmlTree.MmlNode.TEXCLASS,t.TEXCLASSNAMES=MathJax._.core.MmlTree.MmlNode.TEXCLASSNAMES,t.indentAttributes=MathJax._.core.MmlTree.MmlNode.indentAttributes,t.AbstractMmlNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlNode,t.AbstractMmlTokenNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlTokenNode,t.AbstractMmlLayoutNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlLayoutNode,t.AbstractMmlBaseNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlBaseNode,t.AbstractMmlEmptyNode=MathJax._.core.MmlTree.MmlNode.AbstractMmlEmptyNode,t.TextNode=MathJax._.core.MmlTree.MmlNode.TextNode,t.XMLNode=MathJax._.core.MmlTree.MmlNode.XMLNode},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isObject=MathJax._.components.global.isObject,t.combineConfig=MathJax._.components.global.combineConfig,t.combineDefaults=MathJax._.components.global.combineDefaults,t.combineWithMathJax=MathJax._.components.global.combineWithMathJax,t.MathJax=MathJax._.components.global.MathJax},function(e,t,r){"use strict";var a;Object.defineProperty(t,"__esModule",{value:!0}),t.BraketConfiguration=void 0;var o=r(5),n=r(0);r(8),t.BraketConfiguration=o.Configuration.create("braket",{handler:{character:["Braket-characters"],macro:["Braket-macros"]},items:(a={},a[n.BraketItem.prototype.kind]=n.BraketItem,a)})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Configuration=MathJax._.input.tex.Configuration.Configuration,t.ConfigurationHandler=MathJax._.input.tex.Configuration.ConfigurationHandler,t.ParserConfiguration=MathJax._.input.tex.Configuration.ParserConfiguration},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MmlStack=MathJax._.input.tex.StackItem.MmlStack,t.BaseItem=MathJax._.input.tex.StackItem.BaseItem},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=MathJax._.input.tex.ParseUtil.default},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var a=r(9),o=r(1);new a.CommandMap("Braket-macros",{bra:["Macro","{\\langle {#1} \\vert}",1],ket:["Macro","{\\vert {#1} \\rangle}",1],braket:["Braket","\u27e8","\u27e9",!1,1/0],set:["Braket","{","}",!1,1],Bra:["Macro","{\\left\\langle {#1} \\right\\vert}",1],Ket:["Macro","{\\left\\vert {#1} \\right\\rangle}",1],Braket:["Braket","\u27e8","\u27e9",!0,1/0],Set:["Braket","{","}",!0,1],ketbra:["Macro","{\\vert {#1} \\rangle\\langle {#2} \\vert}",2],Ketbra:["Macro","{\\left\\vert {#1} \\right\\rangle\\left\\langle {#2} \\right\\vert}",2],"|":"Bar"},o.default),new a.MacroMap("Braket-characters",{"|":"Bar"},o.default)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AbstractSymbolMap=MathJax._.input.tex.SymbolMap.AbstractSymbolMap,t.RegExpMap=MathJax._.input.tex.SymbolMap.RegExpMap,t.AbstractParseMap=MathJax._.input.tex.SymbolMap.AbstractParseMap,t.CharacterMap=MathJax._.input.tex.SymbolMap.CharacterMap,t.DelimiterMap=MathJax._.input.tex.SymbolMap.DelimiterMap,t.MacroMap=MathJax._.input.tex.SymbolMap.MacroMap,t.CommandMap=MathJax._.input.tex.SymbolMap.CommandMap,t.EnvironmentMap=MathJax._.input.tex.SymbolMap.EnvironmentMap},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=MathJax._.input.tex.base.BaseMethods.default},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=MathJax._.input.tex.TexError.default},function(e,t,r){"use strict";r.r(t);var a=r(3),o=r(4),n=r(0),i=r(1);Object(a.combineWithMathJax)({_:{input:{tex:{braket:{BraketConfiguration:o,BraketItems:n,BraketMethods:i}}}}})}]); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/bussproofs.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/bussproofs.js new file mode 100644 index 0000000..ca804ba --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/bussproofs.js @@ -0,0 +1 @@ +!function(e){var t={};function r(o){if(t[o])return t[o].exports;var n=t[o]={i:o,l:!1,exports:{}};return e[o].call(n.exports,n,n.exports,r),n.l=!0,n.exports}r.m=e,r.c=t,r.d=function(e,t,o){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(r.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)r.d(o,n,function(t){return e[t]}.bind(null,n));return o},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=15)}([function(e,t,r){"use strict";var o,n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var o,n,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(o=a.next()).done;)i.push(o.value)}catch(e){n={error:e}}finally{try{o&&!o.done&&(r=a.return)&&r.call(a)}finally{if(n)throw n.error}}return i},a=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],o=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&o>=e.length&&(e=void 0),{value:e&&e[o++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(t,"__esModule",{value:!0}),t.clearDocument=t.saveDocument=t.makeBsprAttributes=t.removeProperty=t.getProperty=t.setProperty=t.balanceRules=void 0;var i=r(10),l=r(4),u=null,f=null,s=function(e){return f.root=e,u.outputJax.getBBox(f,u).w},c=function(e){for(var t=0;e&&!i.default.isType(e,"mtable");){if(i.default.isType(e,"text"))return null;i.default.isType(e,"mrow")?(e=e.childNodes[0],t=0):(e=e.parent.childNodes[t],t++)}return e},d=function(e,t){return e.childNodes["up"===t?1:0].childNodes[0].childNodes[0].childNodes[0].childNodes[0]},p=function(e,t){return e.childNodes[t].childNodes[0].childNodes[0]},m=function(e){return p(e,0)},h=function(e){return p(e,e.childNodes.length-1)},y=function(e,t){return e.childNodes["up"===t?0:1].childNodes[0].childNodes[0].childNodes[0]},v=function(e){for(;e&&!i.default.isType(e,"mtd");)e=e.parent;return e},P=function(e){return e.parent.childNodes[e.parent.childNodes.indexOf(e)+1]},g=function(e){for(;e&&null==t.getProperty(e,"inference");)e=e.parent;return e},b=function(e,t,r){void 0===r&&(r=!1);var o=0;if(e===t)return o;if(e!==t.parent){var n=e.childNodes,a=r?n.length-1:0;i.default.isType(n[a],"mspace")&&(o+=s(n[a])),e=t.parent}if(e===t)return o;var l=e.childNodes,u=r?l.length-1:0;return l[u]!==t&&(o+=s(l[u])),o},x=function(e,r){void 0===r&&(r=!1);var o=c(e),n=y(o,t.getProperty(o,"inferenceRule"));return b(e,o,r)+(s(o)-s(n))/2},M=function(e,r,o,n){if(void 0===n&&(n=!1),t.getProperty(r,"inferenceRule")||t.getProperty(r,"labelledRule")){var a=e.nodeFactory.create("node","mrow");r.parent.replaceChild(a,r),a.setChildren([r]),_(r,a),r=a}var u=n?r.childNodes.length-1:0,f=r.childNodes[u];i.default.isType(f,"mspace")?i.default.setAttribute(f,"width",l.default.Em(l.default.dimen2em(i.default.getAttribute(f,"width"))+o)):(f=e.nodeFactory.create("node","mspace",[],{width:l.default.Em(o)}),n?r.appendChild(f):(f.parent=r,r.childNodes.unshift(f)))},_=function(e,r){["inference","proof","maxAdjust","labelledRule"].forEach((function(o){var n=t.getProperty(e,o);null!=n&&(t.setProperty(r,o,n),t.removeProperty(e,o))}))},w=function(e,r,o,n,a){var i=e.nodeFactory.create("node","mspace",[],{width:l.default.Em(a)});if("left"===n){var u=r.childNodes[o].childNodes[0];i.parent=u,u.childNodes.unshift(i)}else r.childNodes[o].appendChild(i);t.setProperty(r.parent,"sequentAdjust_"+n,a)},T=function(e,r){for(var o=r.pop();r.length;){var a=r.pop(),i=n(C(o,a),2),l=i[0],u=i[1];t.getProperty(o.parent,"axiom")&&(w(e,l<0?o:a,0,"left",Math.abs(l)),w(e,u<0?o:a,2,"right",Math.abs(u))),o=a}},C=function(e,t){var r=s(e.childNodes[2]),o=s(t.childNodes[2]);return[s(e.childNodes[0])-s(t.childNodes[0]),r-o]};t.balanceRules=function(e){var r,o;f=new e.document.options.MathItem("",null,e.math.display);var n=e.data;!function(e){var r=e.nodeLists.sequent;if(r)for(var o=r.length-1,n=void 0;n=r[o];o--)if(t.getProperty(n,"sequentProcessed"))t.removeProperty(n,"sequentProcessed");else{var a=[],i=g(n);if(1===t.getProperty(i,"inference")){for(a.push(n);1===t.getProperty(i,"inference");){i=c(i);var l=m(d(i,t.getProperty(i,"inferenceRule"))),u=t.getProperty(l,"inferenceRule")?y(l,t.getProperty(l,"inferenceRule")):l;t.getProperty(u,"sequent")&&(n=u.childNodes[0],a.push(n),t.setProperty(n,"sequentProcessed",!0)),i=l}T(e,a)}}}(n);var i=n.nodeLists.inference||[];try{for(var l=a(i),u=l.next();!u.done;u=l.next()){var s=u.value,p=t.getProperty(s,"proof"),_=c(s),w=d(_,t.getProperty(_,"inferenceRule")),C=m(w);if(t.getProperty(C,"inference")){var I=x(C);if(I){M(n,C,-I);var S=b(s,_,!1);M(n,s,I-S)}}var N=h(w);if(null!=t.getProperty(N,"inference")){var A=x(N,!0);M(n,N,-A,!0);var j=b(s,_,!0),L=t.getProperty(s,"maxAdjust");null!=L&&(A=Math.max(A,L));var k=void 0;if(!p&&(k=v(s))){var O=P(k);if(O){var J=n.nodeFactory.create("node","mspace",[],{width:A-j+"em"});O.appendChild(J),s.removeProperty("maxAdjust")}else{var B=g(k);B&&(A=t.getProperty(B,"maxAdjust")?Math.max(t.getProperty(B,"maxAdjust"),A):A,t.setProperty(B,"maxAdjust",A))}}else M(n,t.getProperty(s,"proof")?s:s.parent,A-j,!0)}}}catch(e){r={error:e}}finally{try{u&&!u.done&&(o=l.return)&&o.call(l)}finally{if(r)throw r.error}}};var I=((o={}).bspr_maxAdjust=!0,o);t.setProperty=function(e,t,r){i.default.setProperty(e,"bspr_"+t,r)},t.getProperty=function(e,t){return i.default.getProperty(e,"bspr_"+t)},t.removeProperty=function(e,t){e.removeProperty("bspr_"+t)},t.makeBsprAttributes=function(e){e.data.root.walkTree((function(e,t){var r=[];e.getPropertyNames().forEach((function(t){!I[t]&&t.match(RegExp("^bspr_"))&&r.push(t+":"+e.getProperty(t))})),r.length&&i.default.setAttribute(e,"semantics",r.join(";"))}))},t.saveDocument=function(e){if(!("getBBox"in(u=e.document).outputJax))throw Error("The bussproofs extension requires an output jax with a getBBox() method")},t.clearDocument=function(e){u=null}},function(e,t,r){"use strict";var o,n=this&&this.__extends||(o=function(e,t){return(o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}o(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.ProofTreeItem=void 0;var a=r(3),i=r(8),l=r(9),u=r(0),f=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.leftLabel=null,t.rigthLabel=null,t.innerStack=new l.default(t.factory,{},!0),t}return n(t,e),Object.defineProperty(t.prototype,"kind",{get:function(){return"proofTree"},enumerable:!1,configurable:!0}),t.prototype.checkItem=function(e){if(e.isKind("end")&&"prooftree"===e.getName()){var t=this.toMml();return u.setProperty(t,"proof",!0),[[this.factory.create("mml",t),e],!0]}if(e.isKind("stop"))throw new a.default("EnvMissingEnd","Missing \\end{%1}",this.getName());return this.innerStack.Push(e),i.BaseItem.fail},t.prototype.toMml=function(){var t=e.prototype.toMml.call(this),r=this.innerStack.Top();if(r.isKind("start")&&!r.Size())return t;this.innerStack.Push(this.factory.create("stop"));var o=this.innerStack.Top().toMml();return this.create("node","mrow",[o,t],{})},t}(i.BaseItem);t.ProofTreeItem=f},function(e,t,r){"use strict";var o=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var o,n,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(o=a.next()).done;)i.push(o.value)}catch(e){n={error:e}}finally{try{o&&!o.done&&(r=a.return)&&r.call(a)}finally{if(n)throw n.error}}return i},n=this&&this.__spread||function(){for(var e=[],t=0;t0);var f=e.create("node","mtr",l,{}),d=e.create("node","mtable",[f],{framespacing:"0 0"}),p=s(e,e.GetArgument(t)),m=o.getProperty("currentLine");m!==o.getProperty("line")&&o.setProperty("currentLine",o.getProperty("line"));var h=c(e,d,[p],o.getProperty("left"),o.getProperty("right"),m,n);o.setProperty("left",null),o.setProperty("right",null),u.setProperty(h,"inference",i),e.configuration.addNode("inference",h),o.Push(h)},f.Label=function(e,t,r){var o=e.stack.Top();if("proofTree"!==o.kind)throw new a.default("IllegalProofCommand","Proof commands only allowed in prooftree environment.");var n=l.default.internalMath(e,e.GetArgument(t),0),i=n.length>1?e.create("node","mrow",n,{}):n[0];o.setProperty(r,i)},f.SetLine=function(e,t,r,o){var n=e.stack.Top();if("proofTree"!==n.kind)throw new a.default("IllegalProofCommand","Proof commands only allowed in prooftree environment.");n.setProperty("currentLine",r),o&&n.setProperty("line",r)},f.RootAtTop=function(e,t,r){var o=e.stack.Top();if("proofTree"!==o.kind)throw new a.default("IllegalProofCommand","Proof commands only allowed in prooftree environment.");o.setProperty("rootAtTop",r)},f.AxiomF=function(e,t){var r=e.stack.Top();if("proofTree"!==r.kind)throw new a.default("IllegalProofCommand","Proof commands only allowed in prooftree environment.");var o=d(e,t);u.setProperty(o,"axiom",!0),r.Push(o)},f.FCenter=function(e,t){},f.InferenceF=function(e,t,r){var o=e.stack.Top();if("proofTree"!==o.kind)throw new a.default("IllegalProofCommand","Proof commands only allowed in prooftree environment.");if(o.Size()0);var f=e.create("node","mtr",l,{}),s=e.create("node","mtable",[f],{framespacing:"0 0"}),p=d(e,t),m=o.getProperty("currentLine");m!==o.getProperty("line")&&o.setProperty("currentLine",o.getProperty("line"));var h=c(e,s,[p],o.getProperty("left"),o.getProperty("right"),m,n);o.setProperty("left",null),o.setProperty("right",null),u.setProperty(h,"inference",i),e.configuration.addNode("inference",h),o.Push(h)},t.default=f},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=MathJax._.input.tex.TexError.default},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=MathJax._.input.tex.ParseUtil.default},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isObject=MathJax._.components.global.isObject,t.combineConfig=MathJax._.components.global.combineConfig,t.combineDefaults=MathJax._.components.global.combineDefaults,t.combineWithMathJax=MathJax._.components.global.combineWithMathJax,t.MathJax=MathJax._.components.global.MathJax},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0}),t.BussproofsConfiguration=void 0;var n=r(7),a=r(1),i=r(0);r(11),t.BussproofsConfiguration=n.Configuration.create("bussproofs",{handler:{macro:["Bussproofs-macros"],environment:["Bussproofs-environments"]},items:(o={},o[a.ProofTreeItem.prototype.kind]=a.ProofTreeItem,o),preprocessors:[[i.saveDocument,1]],postprocessors:[[i.clearDocument,3],[i.makeBsprAttributes,2],[i.balanceRules,1]]})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Configuration=MathJax._.input.tex.Configuration.Configuration,t.ConfigurationHandler=MathJax._.input.tex.Configuration.ConfigurationHandler,t.ParserConfiguration=MathJax._.input.tex.Configuration.ParserConfiguration},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MmlStack=MathJax._.input.tex.StackItem.MmlStack,t.BaseItem=MathJax._.input.tex.StackItem.BaseItem},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=MathJax._.input.tex.Stack.default},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=MathJax._.input.tex.NodeUtil.default},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=r(2),n=r(13),a=r(14);new a.CommandMap("Bussproofs-macros",{AxiomC:"Axiom",UnaryInfC:["Inference",1],BinaryInfC:["Inference",2],TrinaryInfC:["Inference",3],QuaternaryInfC:["Inference",4],QuinaryInfC:["Inference",5],RightLabel:["Label","right"],LeftLabel:["Label","left"],AXC:"Axiom",UIC:["Inference",1],BIC:["Inference",2],TIC:["Inference",3],RL:["Label","right"],LL:["Label","left"],noLine:["SetLine","none",!1],singleLine:["SetLine","solid",!1],solidLine:["SetLine","solid",!1],dashedLine:["SetLine","dashed",!1],alwaysNoLine:["SetLine","none",!0],alwaysSingleLine:["SetLine","solid",!0],alwaysSolidLine:["SetLine","solid",!0],alwaysDashedLine:["SetLine","dashed",!0],rootAtTop:["RootAtTop",!0],alwaysRootAtTop:["RootAtTop",!0],rootAtBottom:["RootAtTop",!1],alwaysRootAtBottom:["RootAtTop",!1],fCenter:"FCenter",Axiom:"AxiomF",UnaryInf:["InferenceF",1],BinaryInf:["InferenceF",2],TrinaryInf:["InferenceF",3],QuaternaryInf:["InferenceF",4],QuinaryInf:["InferenceF",5]},o.default),new a.EnvironmentMap("Bussproofs-environments",n.default.environment,{prooftree:["Prooftree",null,!1]},o.default)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=MathJax._.input.tex.TexParser.default},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=MathJax._.input.tex.ParseMethods.default},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AbstractSymbolMap=MathJax._.input.tex.SymbolMap.AbstractSymbolMap,t.RegExpMap=MathJax._.input.tex.SymbolMap.RegExpMap,t.AbstractParseMap=MathJax._.input.tex.SymbolMap.AbstractParseMap,t.CharacterMap=MathJax._.input.tex.SymbolMap.CharacterMap,t.DelimiterMap=MathJax._.input.tex.SymbolMap.DelimiterMap,t.MacroMap=MathJax._.input.tex.SymbolMap.MacroMap,t.CommandMap=MathJax._.input.tex.SymbolMap.CommandMap,t.EnvironmentMap=MathJax._.input.tex.SymbolMap.EnvironmentMap},function(e,t,r){"use strict";r.r(t);var o=r(5),n=r(6),a=r(1),i=r(2),l=r(0);Object(o.combineWithMathJax)({_:{input:{tex:{bussproofs:{BussproofsConfiguration:n,BussproofsItems:a,BussproofsMethods:i,BussproofsUtil:l}}}}})}]); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/cancel.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/cancel.js new file mode 100644 index 0000000..3a4cddd --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/cancel.js @@ -0,0 +1 @@ +!function(e){var t={};function n(a){if(t[a])return t[a].exports;var o=t[a]={i:a,l:!1,exports:{}};return e[a].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=e,n.c=t,n.d=function(e,t,a){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:a})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var a=Object.create(null);if(n.r(a),Object.defineProperty(a,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(a,o,function(t){return e[t]}.bind(null,o));return a},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=7)}([function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isObject=MathJax._.components.global.isObject,t.combineConfig=MathJax._.components.global.combineConfig,t.combineDefaults=MathJax._.components.global.combineDefaults,t.combineWithMathJax=MathJax._.components.global.combineWithMathJax,t.MathJax=MathJax._.components.global.MathJax},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CancelConfiguration=t.CancelMethods=void 0;var a=n(2),o=n(3),i=n(4),r=n(5),c=n(6);t.CancelMethods={},t.CancelMethods.Cancel=function(e,t,n){var a=e.GetBrackets(t,""),o=e.ParseArg(t),i=r.default.keyvalOptions(a,c.ENCLOSE_OPTIONS);i.notation=n,e.Push(e.create("node","menclose",[o],i))},t.CancelMethods.CancelTo=function(e,t){var n=e.GetBrackets(t,""),a=e.ParseArg(t),i=e.ParseArg(t),u=r.default.keyvalOptions(n,c.ENCLOSE_OPTIONS);u.notation=[o.TexConstant.Notation.UPDIAGONALSTRIKE,o.TexConstant.Notation.UPDIAGONALARROW,o.TexConstant.Notation.NORTHEASTARROW].join(" "),a=e.create("node","mpadded",[a],{depth:"-.1em",height:"+.1em",voffset:".1em"}),e.Push(e.create("node","msup",[e.create("node","menclose",[i],u),a]))},new i.CommandMap("cancel",{cancel:["Cancel",o.TexConstant.Notation.UPDIAGONALSTRIKE],bcancel:["Cancel",o.TexConstant.Notation.DOWNDIAGONALSTRIKE],xcancel:["Cancel",o.TexConstant.Notation.UPDIAGONALSTRIKE+" "+o.TexConstant.Notation.DOWNDIAGONALSTRIKE],cancelto:"CancelTo"},t.CancelMethods),t.CancelConfiguration=a.Configuration.create("cancel",{handler:{macro:["cancel"]}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Configuration=MathJax._.input.tex.Configuration.Configuration,t.ConfigurationHandler=MathJax._.input.tex.Configuration.ConfigurationHandler,t.ParserConfiguration=MathJax._.input.tex.Configuration.ParserConfiguration},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TexConstant=MathJax._.input.tex.TexConstants.TexConstant},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AbstractSymbolMap=MathJax._.input.tex.SymbolMap.AbstractSymbolMap,t.RegExpMap=MathJax._.input.tex.SymbolMap.RegExpMap,t.AbstractParseMap=MathJax._.input.tex.SymbolMap.AbstractParseMap,t.CharacterMap=MathJax._.input.tex.SymbolMap.CharacterMap,t.DelimiterMap=MathJax._.input.tex.SymbolMap.DelimiterMap,t.MacroMap=MathJax._.input.tex.SymbolMap.MacroMap,t.CommandMap=MathJax._.input.tex.SymbolMap.CommandMap,t.EnvironmentMap=MathJax._.input.tex.SymbolMap.EnvironmentMap},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=MathJax._.input.tex.ParseUtil.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ENCLOSE_OPTIONS=MathJax._.input.tex.enclose.EncloseConfiguration.ENCLOSE_OPTIONS,t.EncloseMethods=MathJax._.input.tex.enclose.EncloseConfiguration.EncloseMethods,t.EncloseConfiguration=MathJax._.input.tex.enclose.EncloseConfiguration.EncloseConfiguration},function(e,t,n){"use strict";n.r(t);var a=n(0),o=n(1);Object(a.combineWithMathJax)({_:{input:{tex:{cancel:{CancelConfiguration:o}}}}})}]); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/color.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/color.js new file mode 100644 index 0000000..8f826f9 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/color.js @@ -0,0 +1 @@ +!function(e){var o={};function t(r){if(o[r])return o[r].exports;var n=o[r]={i:r,l:!1,exports:{}};return e[r].call(n.exports,n,n.exports,t),n.l=!0,n.exports}t.m=e,t.c=o,t.d=function(e,o,r){t.o(e,o)||Object.defineProperty(e,o,{enumerable:!0,get:r})},t.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.t=function(e,o){if(1&o&&(e=t(e)),8&o)return e;if(4&o&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(t.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&o&&"string"!=typeof e)for(var n in e)t.d(r,n,function(o){return e[o]}.bind(null,n));return r},t.n=function(e){var o=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(o,"a",o),o},t.o=function(e,o){return Object.prototype.hasOwnProperty.call(e,o)},t.p="",t(t.s=10)}([function(e,o,t){"use strict";Object.defineProperty(o,"__esModule",{value:!0}),o.ColorMethods=void 0;var r=t(7),n=t(8);function a(e){var o="+"+e,t=e.replace(/^.*?([a-z]*)$/,"$1");return{width:"+"+2*parseFloat(o)+t,height:o,depth:o,lspace:e}}o.ColorMethods={},o.ColorMethods.Color=function(e,o){var t=e.GetBrackets(o,""),r=e.GetArgument(o),n=e.configuration.packageData.get("color").model.getColor(t,r),a=e.itemFactory.create("style").setProperties({styles:{mathcolor:n}});e.stack.env.color=n,e.Push(a)},o.ColorMethods.TextColor=function(e,o){var t=e.GetBrackets(o,""),r=e.GetArgument(o),n=e.configuration.packageData.get("color").model.getColor(t,r),a=e.stack.env.color;e.stack.env.color=n;var l=e.ParseArg(o);a?e.stack.env.color=a:delete e.stack.env.color;var i=e.create("node","mstyle",[l],{mathcolor:n});e.Push(i)},o.ColorMethods.DefineColor=function(e,o){var t=e.GetArgument(o),r=e.GetArgument(o),n=e.GetArgument(o);e.configuration.packageData.get("color").model.defineColor(r,t,n)},o.ColorMethods.ColorBox=function(e,o){var t=e.GetArgument(o),l=n.default.internalMath(e,e.GetArgument(o)),i=e.configuration.packageData.get("color").model,u=e.create("node","mpadded",l,{mathbackground:i.getColor("named",t)});r.default.setProperties(u,a(e.options.color.padding)),e.Push(u)},o.ColorMethods.FColorBox=function(e,o){var t=e.GetArgument(o),l=e.GetArgument(o),i=n.default.internalMath(e,e.GetArgument(o)),u=e.options.color,d=e.configuration.packageData.get("color").model,c=e.create("node","mpadded",i,{mathbackground:d.getColor("named",l),style:"border: "+u.borderWidth+" solid "+d.getColor("named",t)});r.default.setProperties(c,a(u.padding)),e.Push(c)}},function(e,o,t){"use strict";var r=this&&this.__values||function(e){var o="function"==typeof Symbol&&Symbol.iterator,t=o&&e[o],r=0;if(t)return t.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(o?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(o,"__esModule",{value:!0}),o.ColorModel=void 0;var n=t(9),a=t(2),l=new Map,i=function(){function e(){this.userColors=new Map}return e.prototype.normalizeColor=function(e,o){if(!e||"named"===e)return o;if(l.has(e))return l.get(e)(o);throw new n.default("UndefinedColorModel","Color model '%1' not defined",e)},e.prototype.getColor=function(e,o){return e&&"named"!==e?this.normalizeColor(e,o):this.getColorByName(o)},e.prototype.getColorByName=function(e){return this.userColors.has(e)?this.userColors.get(e):a.COLORS.has(e)?a.COLORS.get(e):e},e.prototype.defineColor=function(e,o,t){var r=this.normalizeColor(e,t);this.userColors.set(o,r)},e}();o.ColorModel=i,l.set("rgb",(function(e){var o,t,a=e.trim().split(/\s*,\s*/),l="#";if(3!==a.length)throw new n.default("ModelArg1","Color values for the %1 model require 3 numbers","rgb");try{for(var i=r(a),u=i.next();!u.done;u=i.next()){var d=u.value;if(!d.match(/^(\d+(\.\d*)?|\.\d+)$/))throw new n.default("InvalidDecimalNumber","Invalid decimal number");var c=parseFloat(d);if(c<0||c>1)throw new n.default("ModelArg2","Color values for the %1 model must be between %2 and %3","rgb","0","1");var s=Math.floor(255*c).toString(16);s.length<2&&(s="0"+s),l+=s}}catch(e){o={error:e}}finally{try{u&&!u.done&&(t=i.return)&&t.call(i)}finally{if(o)throw o.error}}return l})),l.set("RGB",(function(e){var o,t,a=e.trim().split(/\s*,\s*/),l="#";if(3!==a.length)throw new n.default("ModelArg1","Color values for the %1 model require 3 numbers","RGB");try{for(var i=r(a),u=i.next();!u.done;u=i.next()){var d=u.value;if(!d.match(/^\d+$/))throw new n.default("InvalidNumber","Invalid number");var c=parseInt(d);if(c>255)throw new n.default("ModelArg2","Color values for the %1 model must be between %2 and %3","RGB","0","255");var s=c.toString(16);s.length<2&&(s="0"+s),l+=s}}catch(e){o={error:e}}finally{try{u&&!u.done&&(t=i.return)&&t.call(i)}finally{if(o)throw o.error}}return l})),l.set("gray",(function(e){if(!e.match(/^\s*(\d+(\.\d*)?|\.\d+)\s*$/))throw new n.default("InvalidDecimalNumber","Invalid decimal number");var o=parseFloat(e);if(o<0||o>1)throw new n.default("ModelArg2","Color values for the %1 model must be between %2 and %3","gray","0","1");var t=Math.floor(255*o).toString(16);return t.length<2&&(t="0"+t),"#"+t+t+t}))},function(e,o,t){"use strict";Object.defineProperty(o,"__esModule",{value:!0}),o.COLORS=void 0,o.COLORS=new Map([["Apricot","#FBB982"],["Aquamarine","#00B5BE"],["Bittersweet","#C04F17"],["Black","#221E1F"],["Blue","#2D2F92"],["BlueGreen","#00B3B8"],["BlueViolet","#473992"],["BrickRed","#B6321C"],["Brown","#792500"],["BurntOrange","#F7921D"],["CadetBlue","#74729A"],["CarnationPink","#F282B4"],["Cerulean","#00A2E3"],["CornflowerBlue","#41B0E4"],["Cyan","#00AEEF"],["Dandelion","#FDBC42"],["DarkOrchid","#A4538A"],["Emerald","#00A99D"],["ForestGreen","#009B55"],["Fuchsia","#8C368C"],["Goldenrod","#FFDF42"],["Gray","#949698"],["Green","#00A64F"],["GreenYellow","#DFE674"],["JungleGreen","#00A99A"],["Lavender","#F49EC4"],["LimeGreen","#8DC73E"],["Magenta","#EC008C"],["Mahogany","#A9341F"],["Maroon","#AF3235"],["Melon","#F89E7B"],["MidnightBlue","#006795"],["Mulberry","#A93C93"],["NavyBlue","#006EB8"],["OliveGreen","#3C8031"],["Orange","#F58137"],["OrangeRed","#ED135A"],["Orchid","#AF72B0"],["Peach","#F7965A"],["Periwinkle","#7977B8"],["PineGreen","#008B72"],["Plum","#92268F"],["ProcessBlue","#00B0F0"],["Purple","#99479B"],["RawSienna","#974006"],["Red","#ED1B23"],["RedOrange","#F26035"],["RedViolet","#A1246B"],["Rhodamine","#EF559F"],["RoyalBlue","#0071BC"],["RoyalPurple","#613F99"],["RubineRed","#ED017D"],["Salmon","#F69289"],["SeaGreen","#3FBC9D"],["Sepia","#671800"],["SkyBlue","#46C5DD"],["SpringGreen","#C6DC67"],["Tan","#DA9D76"],["TealBlue","#00AEB3"],["Thistle","#D883B7"],["Turquoise","#00B4CE"],["Violet","#58429B"],["VioletRed","#EF58A0"],["White","#FFFFFF"],["WildStrawberry","#EE2967"],["Yellow","#FFF200"],["YellowGreen","#98CC70"],["YellowOrange","#FAA21A"]])},function(e,o,t){"use strict";Object.defineProperty(o,"__esModule",{value:!0}),o.isObject=MathJax._.components.global.isObject,o.combineConfig=MathJax._.components.global.combineConfig,o.combineDefaults=MathJax._.components.global.combineDefaults,o.combineWithMathJax=MathJax._.components.global.combineWithMathJax,o.MathJax=MathJax._.components.global.MathJax},function(e,o,t){"use strict";Object.defineProperty(o,"__esModule",{value:!0}),o.ColorConfiguration=void 0;var r=t(5),n=t(6),a=t(0),l=t(1);new r.CommandMap("color",{color:"Color",textcolor:"TextColor",definecolor:"DefineColor",colorbox:"ColorBox",fcolorbox:"FColorBox"},a.ColorMethods);o.ColorConfiguration=n.Configuration.create("color",{handler:{macro:["color"]},options:{color:{padding:"5px",borderWidth:"2px"}},config:function(e,o){o.parseOptions.packageData.set("color",{model:new l.ColorModel})}})},function(e,o,t){"use strict";Object.defineProperty(o,"__esModule",{value:!0}),o.AbstractSymbolMap=MathJax._.input.tex.SymbolMap.AbstractSymbolMap,o.RegExpMap=MathJax._.input.tex.SymbolMap.RegExpMap,o.AbstractParseMap=MathJax._.input.tex.SymbolMap.AbstractParseMap,o.CharacterMap=MathJax._.input.tex.SymbolMap.CharacterMap,o.DelimiterMap=MathJax._.input.tex.SymbolMap.DelimiterMap,o.MacroMap=MathJax._.input.tex.SymbolMap.MacroMap,o.CommandMap=MathJax._.input.tex.SymbolMap.CommandMap,o.EnvironmentMap=MathJax._.input.tex.SymbolMap.EnvironmentMap},function(e,o,t){"use strict";Object.defineProperty(o,"__esModule",{value:!0}),o.Configuration=MathJax._.input.tex.Configuration.Configuration,o.ConfigurationHandler=MathJax._.input.tex.Configuration.ConfigurationHandler,o.ParserConfiguration=MathJax._.input.tex.Configuration.ParserConfiguration},function(e,o,t){"use strict";Object.defineProperty(o,"__esModule",{value:!0}),o.default=MathJax._.input.tex.NodeUtil.default},function(e,o,t){"use strict";Object.defineProperty(o,"__esModule",{value:!0}),o.default=MathJax._.input.tex.ParseUtil.default},function(e,o,t){"use strict";Object.defineProperty(o,"__esModule",{value:!0}),o.default=MathJax._.input.tex.TexError.default},function(e,o,t){"use strict";t.r(o);var r=t(3),n=t(4),a=t(2),l=t(0),i=t(1);Object(r.combineWithMathJax)({_:{input:{tex:{color:{ColorConfiguration:n,ColorConstants:a,ColorMethods:l,ColorUtil:i}}}}})}]); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/colorV2.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/colorV2.js new file mode 100644 index 0000000..c5cf9c9 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/colorV2.js @@ -0,0 +1 @@ +!function(t){var e={};function o(a){if(e[a])return e[a].exports;var n=e[a]={i:a,l:!1,exports:{}};return t[a].call(n.exports,n,n.exports,o),n.l=!0,n.exports}o.m=t,o.c=e,o.d=function(t,e,a){o.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:a})},o.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},o.t=function(t,e){if(1&e&&(t=o(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var a=Object.create(null);if(o.r(a),Object.defineProperty(a,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var n in t)o.d(a,n,function(e){return t[e]}.bind(null,n));return a},o.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return o.d(e,"a",e),e},o.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},o.p="",o(o.s=4)}([function(t,e,o){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.isObject=MathJax._.components.global.isObject,e.combineConfig=MathJax._.components.global.combineConfig,e.combineDefaults=MathJax._.components.global.combineDefaults,e.combineWithMathJax=MathJax._.components.global.combineWithMathJax,e.MathJax=MathJax._.components.global.MathJax},function(t,e,o){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ColorConfiguration=e.ColorV2Methods=void 0;var a=o(2),n=o(3);e.ColorV2Methods={Color:function(t,e){var o=t.GetArgument(e),a=t.stack.env.color;t.stack.env.color=o;var n=t.ParseArg(e);a?t.stack.env.color=a:delete t.stack.env.color;var r=t.create("node","mstyle",[n],{mathcolor:o});t.Push(r)}},new a.CommandMap("colorv2",{color:"Color"},e.ColorV2Methods),e.ColorConfiguration=n.Configuration.create("colorv2",{handler:{macro:["colorv2"]}})},function(t,e,o){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractSymbolMap=MathJax._.input.tex.SymbolMap.AbstractSymbolMap,e.RegExpMap=MathJax._.input.tex.SymbolMap.RegExpMap,e.AbstractParseMap=MathJax._.input.tex.SymbolMap.AbstractParseMap,e.CharacterMap=MathJax._.input.tex.SymbolMap.CharacterMap,e.DelimiterMap=MathJax._.input.tex.SymbolMap.DelimiterMap,e.MacroMap=MathJax._.input.tex.SymbolMap.MacroMap,e.CommandMap=MathJax._.input.tex.SymbolMap.CommandMap,e.EnvironmentMap=MathJax._.input.tex.SymbolMap.EnvironmentMap},function(t,e,o){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Configuration=MathJax._.input.tex.Configuration.Configuration,e.ConfigurationHandler=MathJax._.input.tex.Configuration.ConfigurationHandler,e.ParserConfiguration=MathJax._.input.tex.Configuration.ParserConfiguration},function(t,e,o){"use strict";o.r(e);var a=o(0),n=o(1);Object(a.combineWithMathJax)({_:{input:{tex:{colorv2:{ColorV2Configuration:n}}}}}),function(t,e,o){var n,r,i,c=MathJax.config.tex;if(c&&c.packages){var l=c.packages,u=l.indexOf(t);u>=0&&(l[u]=e),o&&c[t]&&(Object(a.combineConfig)(c,(n={},r=e,i=c[t],r in n?Object.defineProperty(n,r,{value:i,enumerable:!0,configurable:!0,writable:!0}):n[r]=i,n)),delete c[t])}}("colorV2","colorv2",!1)}]); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/configMacros.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/configMacros.js new file mode 100644 index 0000000..3be25bc --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/configMacros.js @@ -0,0 +1 @@ +!function(t){var e={};function a(n){if(e[n])return e[n].exports;var o=e[n]={i:n,l:!1,exports:{}};return t[n].call(o.exports,o,o.exports,a),o.l=!0,o.exports}a.m=t,a.c=e,a.d=function(t,e,n){a.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},a.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},a.t=function(t,e){if(1&e&&(t=a(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(a.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)a.d(n,o,function(e){return t[e]}.bind(null,o));return n},a.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return a.d(e,"a",e),e},a.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},a.p="",a(a.s=7)}([function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.isObject=MathJax._.components.global.isObject,e.combineConfig=MathJax._.components.global.combineConfig,e.combineDefaults=MathJax._.components.global.combineDefaults,e.combineWithMathJax=MathJax._.components.global.combineWithMathJax,e.MathJax=MathJax._.components.global.MathJax},function(t,e,a){"use strict";var n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,a=e&&t[e],n=0;if(a)return a.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.ConfigMacrosConfiguration=void 0;var o=a(2),i=a(3),r=a(4),u=a(5),c=a(6);e.ConfigMacrosConfiguration=o.Configuration.create("configmacros",{init:function(t){new r.CommandMap("configmacros-map",{},{}),t.append(o.Configuration.local({handler:{macro:["configmacros-map"]},priority:3}))},config:function(t,e){var a,o,i=e.parseOptions.handlers.retrieve("configmacros-map"),r=e.parseOptions.options.macros;try{for(var l=n(Object.keys(r)),p=l.next();!p.done;p=l.next()){var s=p.value,f="string"==typeof r[s]?[r[s]]:r[s],M=Array.isArray(f[2])?new u.Macro(s,c.default.MacroWithTemplate,f.slice(0,2).concat(f[2])):new u.Macro(s,c.default.Macro,f);i.add(s,M)}}catch(t){a={error:t}}finally{try{p&&!p.done&&(o=l.return)&&o.call(l)}finally{if(a)throw a.error}}},options:{macros:i.expandable({})}})},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Configuration=MathJax._.input.tex.Configuration.Configuration,e.ConfigurationHandler=MathJax._.input.tex.Configuration.ConfigurationHandler,e.ParserConfiguration=MathJax._.input.tex.Configuration.ParserConfiguration},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.APPEND=MathJax._.util.Options.APPEND,e.REMOVE=MathJax._.util.Options.REMOVE,e.Expandable=MathJax._.util.Options.Expandable,e.expandable=MathJax._.util.Options.expandable,e.makeArray=MathJax._.util.Options.makeArray,e.keys=MathJax._.util.Options.keys,e.copy=MathJax._.util.Options.copy,e.insert=MathJax._.util.Options.insert,e.defaultOptions=MathJax._.util.Options.defaultOptions,e.userOptions=MathJax._.util.Options.userOptions,e.selectOptions=MathJax._.util.Options.selectOptions,e.selectOptionsFromKeys=MathJax._.util.Options.selectOptionsFromKeys,e.separateOptions=MathJax._.util.Options.separateOptions},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractSymbolMap=MathJax._.input.tex.SymbolMap.AbstractSymbolMap,e.RegExpMap=MathJax._.input.tex.SymbolMap.RegExpMap,e.AbstractParseMap=MathJax._.input.tex.SymbolMap.AbstractParseMap,e.CharacterMap=MathJax._.input.tex.SymbolMap.CharacterMap,e.DelimiterMap=MathJax._.input.tex.SymbolMap.DelimiterMap,e.MacroMap=MathJax._.input.tex.SymbolMap.MacroMap,e.CommandMap=MathJax._.input.tex.SymbolMap.CommandMap,e.EnvironmentMap=MathJax._.input.tex.SymbolMap.EnvironmentMap},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Symbol=MathJax._.input.tex.Symbol.Symbol,e.Macro=MathJax._.input.tex.Symbol.Macro},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=MathJax._.input.tex.newcommand.NewcommandMethods.default},function(t,e,a){"use strict";a.r(e);var n=a(0),o=a(1);Object(n.combineWithMathJax)({_:{input:{tex:{configmacros:{ConfigMacrosConfiguration:o}}}}}),function(t,e,a){var o,i,r,u=MathJax.config.tex;if(u&&u.packages){var c=u.packages,l=c.indexOf(t);l>=0&&(c[l]=e),a&&u[t]&&(Object(n.combineConfig)(u,(o={},i=e,r=u[t],i in o?Object.defineProperty(o,i,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[i]=r,o)),delete u[t])}}("configMacros","configmacros",!1)}]); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/enclose.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/enclose.js new file mode 100644 index 0000000..5e724b7 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/enclose.js @@ -0,0 +1 @@ +!function(e){var t={};function a(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,a),o.l=!0,o.exports}a.m=e,a.c=t,a.d=function(e,t,n){a.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},a.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.t=function(e,t){if(1&t&&(e=a(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(a.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)a.d(n,o,function(t){return e[t]}.bind(null,o));return n},a.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(t,"a",t),t},a.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},a.p="",a(a.s=5)}([function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isObject=MathJax._.components.global.isObject,t.combineConfig=MathJax._.components.global.combineConfig,t.combineDefaults=MathJax._.components.global.combineDefaults,t.combineWithMathJax=MathJax._.components.global.combineWithMathJax,t.MathJax=MathJax._.components.global.MathJax},function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EncloseConfiguration=t.EncloseMethods=t.ENCLOSE_OPTIONS=void 0;var n=a(2),o=a(3),r=a(4);t.ENCLOSE_OPTIONS={"data-arrowhead":1,color:1,mathcolor:1,background:1,mathbackground:1,"data-padding":1,"data-thickness":1},t.EncloseMethods={},t.EncloseMethods.Enclose=function(e,a){var n=e.GetArgument(a).replace(/,/g," "),o=e.GetBrackets(a,""),i=e.ParseArg(a),u=r.default.keyvalOptions(o,t.ENCLOSE_OPTIONS);u.notation=n,e.Push(e.create("node","menclose",[i],u))},new o.CommandMap("enclose",{enclose:"Enclose"},t.EncloseMethods),t.EncloseConfiguration=n.Configuration.create("enclose",{handler:{macro:["enclose"]}})},function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Configuration=MathJax._.input.tex.Configuration.Configuration,t.ConfigurationHandler=MathJax._.input.tex.Configuration.ConfigurationHandler,t.ParserConfiguration=MathJax._.input.tex.Configuration.ParserConfiguration},function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AbstractSymbolMap=MathJax._.input.tex.SymbolMap.AbstractSymbolMap,t.RegExpMap=MathJax._.input.tex.SymbolMap.RegExpMap,t.AbstractParseMap=MathJax._.input.tex.SymbolMap.AbstractParseMap,t.CharacterMap=MathJax._.input.tex.SymbolMap.CharacterMap,t.DelimiterMap=MathJax._.input.tex.SymbolMap.DelimiterMap,t.MacroMap=MathJax._.input.tex.SymbolMap.MacroMap,t.CommandMap=MathJax._.input.tex.SymbolMap.CommandMap,t.EnvironmentMap=MathJax._.input.tex.SymbolMap.EnvironmentMap},function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=MathJax._.input.tex.ParseUtil.default},function(e,t,a){"use strict";a.r(t);var n=a(0),o=a(1);Object(n.combineWithMathJax)({_:{input:{tex:{enclose:{EncloseConfiguration:o}}}}})}]); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/extpfeil.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/extpfeil.js new file mode 100644 index 0000000..aade915 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/extpfeil.js @@ -0,0 +1 @@ +!function(t){var e={};function a(o){if(e[o])return e[o].exports;var n=e[o]={i:o,l:!1,exports:{}};return t[o].call(n.exports,n,n.exports,a),n.l=!0,n.exports}a.m=t,a.c=e,a.d=function(t,e,o){a.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:o})},a.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},a.t=function(t,e){if(1&e&&(t=a(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var o=Object.create(null);if(a.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var n in t)a.d(o,n,function(e){return t[e]}.bind(null,n));return o},a.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return a.d(e,"a",e),e},a.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},a.p="",a(a.s=8)}([function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.isObject=MathJax._.components.global.isObject,e.combineConfig=MathJax._.components.global.combineConfig,e.combineDefaults=MathJax._.components.global.combineDefaults,e.combineWithMathJax=MathJax._.components.global.combineWithMathJax,e.MathJax=MathJax._.components.global.MathJax},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ExtpfeilConfiguration=e.ExtpfeilMethods=void 0;var o=a(2),n=a(3),r=a(4),i=a(5),u=a(6),l=a(7);e.ExtpfeilMethods={},e.ExtpfeilMethods.xArrow=r.AmsMethods.xArrow,e.ExtpfeilMethods.NewExtArrow=function(t,a){var o=t.GetArgument(a),n=t.GetArgument(a),r=t.GetArgument(a);if(!o.match(/^\\([a-z]+|.)$/i))throw new l.default("NewextarrowArg1","First argument to %1 must be a control sequence name",a);if(!n.match(/^(\d+),(\d+)$/))throw new l.default("NewextarrowArg2","Second argument to %1 must be two integers separated by a comma",a);if(!r.match(/^(\d+|0x[0-9A-F]+)$/i))throw new l.default("NewextarrowArg3","Third argument to %1 must be a unicode character number",a);o=o.substr(1);var u=n.split(",");i.default.addMacro(t,o,e.ExtpfeilMethods.xArrow,[parseInt(r),parseInt(u[0]),parseInt(u[1])])},new n.CommandMap("extpfeil",{xtwoheadrightarrow:["xArrow",8608,12,16],xtwoheadleftarrow:["xArrow",8606,17,13],xmapsto:["xArrow",8614,6,7],xlongequal:["xArrow",61,7,7],xtofrom:["xArrow",8644,12,12],Newextarrow:"NewExtArrow"},e.ExtpfeilMethods);e.ExtpfeilConfiguration=o.Configuration.create("extpfeil",{handler:{macro:["extpfeil"]},init:function(t){u.NewcommandConfiguration.init(t)}})},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Configuration=MathJax._.input.tex.Configuration.Configuration,e.ConfigurationHandler=MathJax._.input.tex.Configuration.ConfigurationHandler,e.ParserConfiguration=MathJax._.input.tex.Configuration.ParserConfiguration},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractSymbolMap=MathJax._.input.tex.SymbolMap.AbstractSymbolMap,e.RegExpMap=MathJax._.input.tex.SymbolMap.RegExpMap,e.AbstractParseMap=MathJax._.input.tex.SymbolMap.AbstractParseMap,e.CharacterMap=MathJax._.input.tex.SymbolMap.CharacterMap,e.DelimiterMap=MathJax._.input.tex.SymbolMap.DelimiterMap,e.MacroMap=MathJax._.input.tex.SymbolMap.MacroMap,e.CommandMap=MathJax._.input.tex.SymbolMap.CommandMap,e.EnvironmentMap=MathJax._.input.tex.SymbolMap.EnvironmentMap},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AmsMethods=MathJax._.input.tex.ams.AmsMethods.AmsMethods,e.NEW_OPS=MathJax._.input.tex.ams.AmsMethods.NEW_OPS},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=MathJax._.input.tex.newcommand.NewcommandUtil.default},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.NewcommandConfiguration=MathJax._.input.tex.newcommand.NewcommandConfiguration.NewcommandConfiguration},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=MathJax._.input.tex.TexError.default},function(t,e,a){"use strict";a.r(e);var o=a(0),n=a(1);Object(o.combineWithMathJax)({_:{input:{tex:{extpfeil:{ExtpfeilConfiguration:n}}}}})}]); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/html.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/html.js new file mode 100644 index 0000000..adc2ec6 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/html.js @@ -0,0 +1 @@ +!function(t){var e={};function a(n){if(e[n])return e[n].exports;var r=e[n]={i:n,l:!1,exports:{}};return t[n].call(r.exports,r,r.exports,a),r.l=!0,r.exports}a.m=t,a.c=e,a.d=function(t,e,n){a.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},a.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},a.t=function(t,e){if(1&e&&(t=a(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(a.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var r in t)a.d(n,r,function(e){return t[e]}.bind(null,r));return n},a.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return a.d(e,"a",e),e},a.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},a.p="",a(a.s=6)}([function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=a(5),r={Href:function(t,e){var a=t.GetArgument(e),r=o(t,e);n.default.setAttribute(r,"href",a),t.Push(r)},Class:function(t,e){var a=t.GetArgument(e),r=o(t,e),u=n.default.getAttribute(r,"class");u&&(a=u+" "+a),n.default.setAttribute(r,"class",a),t.Push(r)},Style:function(t,e){var a=t.GetArgument(e),r=o(t,e),u=n.default.getAttribute(r,"style");u&&(";"!==a.charAt(a.length-1)&&(a+=";"),a=u+" "+a),n.default.setAttribute(r,"style",a),t.Push(r)},Id:function(t,e){var a=t.GetArgument(e),r=o(t,e);n.default.setAttribute(r,"id",a),t.Push(r)}},o=function(t,e){var a=t.ParseArg(e);if(!n.default.isInferred(a))return a;var r=n.default.getChildren(a);if(1===r.length)return r[0];var o=t.create("node","mrow");return n.default.copyChildren(a,o),n.default.copyAttributes(a,o),o};e.default=r},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.isObject=MathJax._.components.global.isObject,e.combineConfig=MathJax._.components.global.combineConfig,e.combineDefaults=MathJax._.components.global.combineDefaults,e.combineWithMathJax=MathJax._.components.global.combineWithMathJax,e.MathJax=MathJax._.components.global.MathJax},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.HtmlConfiguration=void 0;var n=a(3),r=a(4),o=a(0);new r.CommandMap("html_macros",{href:"Href",class:"Class",style:"Style",cssId:"Id"},o.default),e.HtmlConfiguration=n.Configuration.create("html",{handler:{macro:["html_macros"]}})},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Configuration=MathJax._.input.tex.Configuration.Configuration,e.ConfigurationHandler=MathJax._.input.tex.Configuration.ConfigurationHandler,e.ParserConfiguration=MathJax._.input.tex.Configuration.ParserConfiguration},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractSymbolMap=MathJax._.input.tex.SymbolMap.AbstractSymbolMap,e.RegExpMap=MathJax._.input.tex.SymbolMap.RegExpMap,e.AbstractParseMap=MathJax._.input.tex.SymbolMap.AbstractParseMap,e.CharacterMap=MathJax._.input.tex.SymbolMap.CharacterMap,e.DelimiterMap=MathJax._.input.tex.SymbolMap.DelimiterMap,e.MacroMap=MathJax._.input.tex.SymbolMap.MacroMap,e.CommandMap=MathJax._.input.tex.SymbolMap.CommandMap,e.EnvironmentMap=MathJax._.input.tex.SymbolMap.EnvironmentMap},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=MathJax._.input.tex.NodeUtil.default},function(t,e,a){"use strict";a.r(e);var n=a(1),r=a(2),o=a(0);Object(n.combineWithMathJax)({_:{input:{tex:{html:{HtmlConfiguration:r,HtmlMethods:o}}}}})}]); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/mhchem.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/mhchem.js new file mode 100644 index 0000000..6b131d7 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/mhchem.js @@ -0,0 +1 @@ +!function(t){var e={};function a(n){if(e[n])return e[n].exports;var o=e[n]={i:n,l:!1,exports:{}};return t[n].call(o.exports,o,o.exports,a),o.l=!0,o.exports}a.m=t,a.c=e,a.d=function(t,e,n){a.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},a.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},a.t=function(t,e){if(1&e&&(t=a(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(a.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)a.d(n,o,function(e){return t[e]}.bind(null,o));return n},a.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return a.d(e,"a",e),e},a.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},a.p="",a(a.s=8)}([function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.isObject=MathJax._.components.global.isObject,e.combineConfig=MathJax._.components.global.combineConfig,e.combineDefaults=MathJax._.components.global.combineDefaults,e.combineWithMathJax=MathJax._.components.global.combineWithMathJax,e.MathJax=MathJax._.components.global.MathJax},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.MhchemConfiguration=void 0;var n=a(2),o=a(3),r=a(4),i=a(5),c=a(6),u=a(7),p={};p.Macro=i.default.Macro,p.xArrow=c.AmsMethods.xArrow,p.Machine=function(t,e,a){try{var n=t.GetArgument(e),o=u.mhchemParser.go(n,a),i=u.texify.go(o);t.string=i+t.string.substr(t.i),t.i=0}catch(t){throw new r.default(t[0],t[1],t.slice(2))}},new o.CommandMap("mhchem",{ce:["Machine","ce"],pu:["Machine","pu"],longrightleftharpoons:["Macro","\\stackrel{\\textstyle{-}\\!\\!{\\rightharpoonup}}{\\smash{{\\leftharpoondown}\\!\\!{-}}}"],longRightleftharpoons:["Macro","\\stackrel{\\textstyle{-}\\!\\!{\\rightharpoonup}}{\\smash{\\leftharpoondown}}"],longLeftrightharpoons:["Macro","\\stackrel{\\textstyle\\vphantom{{-}}{\\rightharpoonup}}{\\smash{{\\leftharpoondown}\\!\\!{-}}}"],longleftrightarrows:["Macro","\\stackrel{\\longrightarrow}{\\smash{\\longleftarrow}\\Rule{0px}{.25em}{0px}}"],tripledash:["Macro","\\vphantom{-}\\raise2mu{\\kern2mu\\tiny\\text{-}\\kern1mu\\text{-}\\kern1mu\\text{-}\\kern2mu}"],xrightarrow:["xArrow",8594,5,6],xleftarrow:["xArrow",8592,7,3],xleftrightarrow:["xArrow",8596,6,6],xrightleftharpoons:["xArrow",8652,5,7],xRightleftharpoons:["xArrow",8652,5,7],xLeftrightharpoons:["xArrow",8652,5,7]},p),e.MhchemConfiguration=n.Configuration.create("mhchem",{handler:{macro:["mhchem"]}})},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Configuration=MathJax._.input.tex.Configuration.Configuration,e.ConfigurationHandler=MathJax._.input.tex.Configuration.ConfigurationHandler,e.ParserConfiguration=MathJax._.input.tex.Configuration.ParserConfiguration},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractSymbolMap=MathJax._.input.tex.SymbolMap.AbstractSymbolMap,e.RegExpMap=MathJax._.input.tex.SymbolMap.RegExpMap,e.AbstractParseMap=MathJax._.input.tex.SymbolMap.AbstractParseMap,e.CharacterMap=MathJax._.input.tex.SymbolMap.CharacterMap,e.DelimiterMap=MathJax._.input.tex.SymbolMap.DelimiterMap,e.MacroMap=MathJax._.input.tex.SymbolMap.MacroMap,e.CommandMap=MathJax._.input.tex.SymbolMap.CommandMap,e.EnvironmentMap=MathJax._.input.tex.SymbolMap.EnvironmentMap},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=MathJax._.input.tex.TexError.default},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=MathJax._.input.tex.base.BaseMethods.default},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AmsMethods=MathJax._.input.tex.ams.AmsMethods.AmsMethods,e.NEW_OPS=MathJax._.input.tex.ams.AmsMethods.NEW_OPS},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n={go:function(t,e){if(!t)return[];void 0===e&&(e="ce");var a,o="0",r={};r.parenthesisLevel=0,t=(t=(t=t.replace(/\n/g," ")).replace(/[\u2212\u2013\u2014\u2010]/g,"-")).replace(/[\u2026]/g,"...");for(var i=10,c=[];;){a!==t?(i=10,a=t):i--;var u=n.stateMachines[e],p=u.transitions[o]||u.transitions["*"];t:for(var s=0;s0))return c;if(d.revisit||(t=_.remainder),!d.toContinue)break t}}if(i<=0)throw["MhchemBugU","mhchem bug U. Please report."]}},concatArray:function(t,e){if(e)if(Array.isArray(e))for(var a=0;a":/^[=<>]/,"#":/^[#\u2261]/,"+":/^\+/,"-$":/^-(?=[\s_},;\]/]|$|\([a-z]+\))/,"-9":/^-(?=[0-9])/,"- orbital overlap":/^-(?=(?:[spd]|sp)(?:$|[\s,;\)\]\}]))/,"-":/^-/,"pm-operator":/^(?:\\pm|\$\\pm\$|\+-|\+\/-)/,operator:/^(?:\+|(?:[\-=<>]|<<|>>|\\approx|\$\\approx\$)(?=\s|$|-?[0-9]))/,arrowUpDown:/^(?:v|\(v\)|\^|\(\^\))(?=$|[\s,;\)\]\}])/,"\\bond{(...)}":function(t){return n.patterns.findObserveGroups(t,"\\bond{","","","}")},"->":/^(?:<->|<-->|->|<-|<=>>|<<=>|<=>|[\u2192\u27F6\u21CC])/,CMT:/^[CMT](?=\[)/,"[(...)]":function(t){return n.patterns.findObserveGroups(t,"[","","","]")},"1st-level escape":/^(&|\\\\|\\hline)\s*/,"\\,":/^(?:\\[,\ ;:])/,"\\x{}{}":function(t){return n.patterns.findObserveGroups(t,"",/^\\[a-zA-Z]+\{/,"}","","","{","}","",!0)},"\\x{}":function(t){return n.patterns.findObserveGroups(t,"",/^\\[a-zA-Z]+\{/,"}","")},"\\ca":/^\\ca(?:\s+|(?![a-zA-Z]))/,"\\x":/^(?:\\[a-zA-Z]+\s*|\\[_&{}%])/,orbital:/^(?:[0-9]{1,2}[spdfgh]|[0-9]{0,2}sp)(?=$|[^a-zA-Z])/,others:/^[\/~|]/,"\\frac{(...)}":function(t){return n.patterns.findObserveGroups(t,"\\frac{","","","}","{","","","}")},"\\overset{(...)}":function(t){return n.patterns.findObserveGroups(t,"\\overset{","","","}","{","","","}")},"\\underset{(...)}":function(t){return n.patterns.findObserveGroups(t,"\\underset{","","","}","{","","","}")},"\\underbrace{(...)}":function(t){return n.patterns.findObserveGroups(t,"\\underbrace{","","","}_","{","","","}")},"\\color{(...)}0":function(t){return n.patterns.findObserveGroups(t,"\\color{","","","}")},"\\color{(...)}{(...)}1":function(t){return n.patterns.findObserveGroups(t,"\\color{","","","}","{","","","}")},"\\color(...){(...)}2":function(t){return n.patterns.findObserveGroups(t,"\\color","\\","",/^(?=\{)/,"{","","","}")},"\\ce{(...)}":function(t){return n.patterns.findObserveGroups(t,"\\ce{","","","}")},oxidation$:/^(?:[+-][IVX]+|\\pm\s*0|\$\\pm\$\s*0)$/,"d-oxidation$":/^(?:[+-]?\s?[IVX]+|\\pm\s*0|\$\\pm\$\s*0)$/,"roman numeral":/^[IVX]+/,"1/2$":/^[+\-]?(?:[0-9]+|\$[a-z]\$|[a-z])\/[0-9]+(?:\$[a-z]\$|[a-z])?$/,amount:function(t){var e;if(e=t.match(/^(?:(?:(?:\([+\-]?[0-9]+\/[0-9]+\)|[+\-]?(?:[0-9]+|\$[a-z]\$|[a-z])\/[0-9]+|[+\-]?[0-9]+[.,][0-9]+|[+\-]?\.[0-9]+|[+\-]?[0-9]+)(?:[a-z](?=\s*[A-Z]))?)|[+\-]?[a-z](?=\s*[A-Z])|\+(?!\s))/))return{match_:e[0],remainder:t.substr(e[0].length)};var a=n.patterns.findObserveGroups(t,"","$","$","");return a&&(e=a.match_.match(/^\$(?:\(?[+\-]?(?:[0-9]*[a-z]?[+\-])?[0-9]*[a-z](?:[+\-][0-9]*[a-z]?)?\)?|\+|-)\$$/))?{match_:e[0],remainder:t.substr(e[0].length)}:null},amount2:function(t){return this.amount(t)},"(KV letters),":/^(?:[A-Z][a-z]{0,2}|i)(?=,)/,formula$:function(t){if(t.match(/^\([a-z]+\)$/))return null;var e=t.match(/^(?:[a-z]|(?:[0-9\ \+\-\,\.\(\)]+[a-z])+[0-9\ \+\-\,\.\(\)]*|(?:[a-z][0-9\ \+\-\,\.\(\)]+)+[a-z]?)$/);return e?{match_:e[0],remainder:t.substr(e[0].length)}:null},uprightEntities:/^(?:pH|pOH|pC|pK|iPr|iBu)(?=$|[^a-zA-Z])/,"/":/^\s*(\/)\s*/,"//":/^\s*(\/\/)\s*/,"*":/^\s*[*.]\s*/},findObserveGroups:function(t,e,a,n,o,r,i,c,u,p){var s=function(t,e){if("string"==typeof e)return 0!==t.indexOf(e)?null:e;var a=t.match(e);return a?a[0]:null},_=s(t,e);if(null===_)return null;if(t=t.substr(_.length),null===(_=s(t,a)))return null;var d=function(t,e,a){for(var n=0;e":{"0|1|2|3":{action_:"r=",nextState:"r"},"a|as":{action_:["output","r="],nextState:"r"},"*":{action_:["output","r="],nextState:"r"}},"+":{o:{action_:"d= kv",nextState:"d"},"d|D":{action_:"d=",nextState:"d"},q:{action_:"d=",nextState:"qd"},"qd|qD":{action_:"d=",nextState:"qd"},dq:{action_:["output","d="],nextState:"d"},3:{action_:["sb=false","output","operator"],nextState:"0"}},amount:{"0|2":{action_:"a=",nextState:"a"}},"pm-operator":{"0|1|2|a|as":{action_:["sb=false","output",{type_:"operator",option:"\\pm"}],nextState:"0"}},operator:{"0|1|2|a|as":{action_:["sb=false","output","operator"],nextState:"0"}},"-$":{"o|q":{action_:["charge or bond","output"],nextState:"qd"},d:{action_:"d=",nextState:"d"},D:{action_:["output",{type_:"bond",option:"-"}],nextState:"3"},q:{action_:"d=",nextState:"qd"},qd:{action_:"d=",nextState:"qd"},"qD|dq":{action_:["output",{type_:"bond",option:"-"}],nextState:"3"}},"-9":{"3|o":{action_:["output",{type_:"insert",option:"hyphen"}],nextState:"3"}},"- orbital overlap":{o:{action_:["output",{type_:"insert",option:"hyphen"}],nextState:"2"},d:{action_:["output",{type_:"insert",option:"hyphen"}],nextState:"2"}},"-":{"0|1|2":{action_:[{type_:"output",option:1},"beginsWithBond=true",{type_:"bond",option:"-"}],nextState:"3"},3:{action_:{type_:"bond",option:"-"}},a:{action_:["output",{type_:"insert",option:"hyphen"}],nextState:"2"},as:{action_:[{type_:"output",option:2},{type_:"bond",option:"-"}],nextState:"3"},b:{action_:"b="},o:{action_:{type_:"- after o/d",option:!1},nextState:"2"},q:{action_:{type_:"- after o/d",option:!1},nextState:"2"},"d|qd|dq":{action_:{type_:"- after o/d",option:!0},nextState:"2"},"D|qD|p":{action_:["output",{type_:"bond",option:"-"}],nextState:"3"}},amount2:{"1|3":{action_:"a=",nextState:"a"}},letters:{"0|1|2|3|a|as|b|p|bp|o":{action_:"o=",nextState:"o"},"q|dq":{action_:["output","o="],nextState:"o"},"d|D|qd|qD":{action_:"o after d",nextState:"o"}},digits:{o:{action_:"q=",nextState:"q"},"d|D":{action_:"q=",nextState:"dq"},q:{action_:["output","o="],nextState:"o"},a:{action_:"o=",nextState:"o"}},"space A":{"b|p|bp":{}},space:{a:{nextState:"as"},0:{action_:"sb=false"},"1|2":{action_:"sb=true"},"r|rt|rd|rdt|rdq":{action_:"output",nextState:"0"},"*":{action_:["output","sb=true"],nextState:"1"}},"1st-level escape":{"1|2":{action_:["output",{type_:"insert+p1",option:"1st-level escape"}]},"*":{action_:["output",{type_:"insert+p1",option:"1st-level escape"}],nextState:"0"}},"[(...)]":{"r|rt":{action_:"rd=",nextState:"rd"},"rd|rdt":{action_:"rq=",nextState:"rdq"}},"...":{"o|d|D|dq|qd|qD":{action_:["output",{type_:"bond",option:"..."}],nextState:"3"},"*":{action_:[{type_:"output",option:1},{type_:"insert",option:"ellipsis"}],nextState:"1"}},". |* ":{"*":{action_:["output",{type_:"insert",option:"addition compound"}],nextState:"1"}},"state of aggregation $":{"*":{action_:["output","state of aggregation"],nextState:"1"}},"{[(":{"a|as|o":{action_:["o=","output","parenthesisLevel++"],nextState:"2"},"0|1|2|3":{action_:["o=","output","parenthesisLevel++"],nextState:"2"},"*":{action_:["output","o=","output","parenthesisLevel++"],nextState:"2"}},")]}":{"0|1|2|3|b|p|bp|o":{action_:["o=","parenthesisLevel--"],nextState:"o"},"a|as|d|D|q|qd|qD|dq":{action_:["output","o=","parenthesisLevel--"],nextState:"o"}},", ":{"*":{action_:["output","comma"],nextState:"0"}},"^_":{"*":{}},"^{(...)}|^($...$)":{"0|1|2|as":{action_:"b=",nextState:"b"},p:{action_:"b=",nextState:"bp"},"3|o":{action_:"d= kv",nextState:"D"},q:{action_:"d=",nextState:"qD"},"d|D|qd|qD|dq":{action_:["output","d="],nextState:"D"}},"^a|^\\x{}{}|^\\x{}|^\\x|'":{"0|1|2|as":{action_:"b=",nextState:"b"},p:{action_:"b=",nextState:"bp"},"3|o":{action_:"d= kv",nextState:"d"},q:{action_:"d=",nextState:"qd"},"d|qd|D|qD":{action_:"d="},dq:{action_:["output","d="],nextState:"d"}},"_{(state of aggregation)}$":{"d|D|q|qd|qD|dq":{action_:["output","q="],nextState:"q"}},"_{(...)}|_($...$)|_9|_\\x{}{}|_\\x{}|_\\x":{"0|1|2|as":{action_:"p=",nextState:"p"},b:{action_:"p=",nextState:"bp"},"3|o":{action_:"q=",nextState:"q"},"d|D":{action_:"q=",nextState:"dq"},"q|qd|qD|dq":{action_:["output","q="],nextState:"q"}},"=<>":{"0|1|2|3|a|as|o|q|d|D|qd|qD|dq":{action_:[{type_:"output",option:2},"bond"],nextState:"3"}},"#":{"0|1|2|3|a|as|o":{action_:[{type_:"output",option:2},{type_:"bond",option:"#"}],nextState:"3"}},"{}":{"*":{action_:{type_:"output",option:1},nextState:"1"}},"{...}":{"0|1|2|3|a|as|b|p|bp":{action_:"o=",nextState:"o"},"o|d|D|q|qd|qD|dq":{action_:["output","o="],nextState:"o"}},"$...$":{a:{action_:"a="},"0|1|2|3|as|b|p|bp|o":{action_:"o=",nextState:"o"},"as|o":{action_:"o="},"q|d|D|qd|qD|dq":{action_:["output","o="],nextState:"o"}},"\\bond{(...)}":{"*":{action_:[{type_:"output",option:2},"bond"],nextState:"3"}},"\\frac{(...)}":{"*":{action_:[{type_:"output",option:1},"frac-output"],nextState:"3"}},"\\overset{(...)}":{"*":{action_:[{type_:"output",option:2},"overset-output"],nextState:"3"}},"\\underset{(...)}":{"*":{action_:[{type_:"output",option:2},"underset-output"],nextState:"3"}},"\\underbrace{(...)}":{"*":{action_:[{type_:"output",option:2},"underbrace-output"],nextState:"3"}},"\\color{(...)}{(...)}1|\\color(...){(...)}2":{"*":{action_:[{type_:"output",option:2},"color-output"],nextState:"3"}},"\\color{(...)}0":{"*":{action_:[{type_:"output",option:2},"color0-output"]}},"\\ce{(...)}":{"*":{action_:[{type_:"output",option:2},"ce"],nextState:"3"}},"\\,":{"*":{action_:[{type_:"output",option:1},"copy"],nextState:"1"}},"\\x{}{}|\\x{}|\\x":{"0|1|2|3|a|as|b|p|bp|o|c0":{action_:["o=","output"],nextState:"3"},"*":{action_:["output","o=","output"],nextState:"3"}},others:{"*":{action_:[{type_:"output",option:1},"copy"],nextState:"3"}},else2:{a:{action_:"a to o",nextState:"o",revisit:!0},as:{action_:["output","sb=true"],nextState:"1",revisit:!0},"r|rt|rd|rdt|rdq":{action_:["output"],nextState:"0",revisit:!0},"*":{action_:["output","copy"],nextState:"3"}}}),actions:{"o after d":function(t,e){var a;if((t.d||"").match(/^[0-9]+$/)){var o=t.d;t.d=void 0,a=this.output(t),t.b=o}else a=this.output(t);return n.actions["o="](t,e),a},"d= kv":function(t,e){t.d=e,t.dType="kv"},"charge or bond":function(t,e){if(t.beginsWithBond){var a=[];return n.concatArray(a,this.output(t)),n.concatArray(a,n.actions.bond(t,e,"-")),a}t.d=e},"- after o/d":function(t,e,a){var o=n.patterns.match_("orbital",t.o||""),r=n.patterns.match_("one lowercase greek letter $",t.o||""),i=n.patterns.match_("one lowercase latin letter $",t.o||""),c=n.patterns.match_("$one lowercase latin letter$ $",t.o||""),u="-"===e&&(o&&""===o.remainder||r||i||c);!u||t.a||t.b||t.p||t.d||t.q||o||!i||(t.o="$"+t.o+"$");var p=[];return u?(n.concatArray(p,this.output(t)),p.push({type_:"hyphen"})):(o=n.patterns.match_("digits",t.d||""),a&&o&&""===o.remainder?(n.concatArray(p,n.actions["d="](t,e)),n.concatArray(p,this.output(t))):(n.concatArray(p,this.output(t)),n.concatArray(p,n.actions.bond(t,e,"-")))),p},"a to o":function(t){t.o=t.a,t.a=void 0},"sb=true":function(t){t.sb=!0},"sb=false":function(t){t.sb=!1},"beginsWithBond=true":function(t){t.beginsWithBond=!0},"beginsWithBond=false":function(t){t.beginsWithBond=!1},"parenthesisLevel++":function(t){t.parenthesisLevel++},"parenthesisLevel--":function(t){t.parenthesisLevel--},"state of aggregation":function(t,e){return{type_:"state of aggregation",p1:n.go(e,"o")}},comma:function(t,e){var a=e.replace(/\s*$/,"");return a!==e&&0===t.parenthesisLevel?{type_:"comma enumeration L",p1:a}:{type_:"comma enumeration M",p1:a}},output:function(t,e,a){var o,r,i;t.r?(r="M"===t.rdt?n.go(t.rd,"tex-math"):"T"===t.rdt?[{type_:"text",p1:t.rd||""}]:n.go(t.rd),i="M"===t.rqt?n.go(t.rq,"tex-math"):"T"===t.rqt?[{type_:"text",p1:t.rq||""}]:n.go(t.rq),o={type_:"arrow",r:t.r,rd:r,rq:i}):(o=[],(t.a||t.b||t.p||t.o||t.q||t.d||a)&&(t.sb&&o.push({type_:"entitySkip"}),t.o||t.q||t.d||t.b||t.p||2===a?t.o||t.q||t.d||!t.b&&!t.p?t.o&&"kv"===t.dType&&n.patterns.match_("d-oxidation$",t.d||"")?t.dType="oxidation":t.o&&"kv"===t.dType&&!t.q&&(t.dType=void 0):(t.o=t.a,t.d=t.b,t.q=t.p,t.a=t.b=t.p=void 0):(t.o=t.a,t.a=void 0),o.push({type_:"chemfive",a:n.go(t.a,"a"),b:n.go(t.b,"bd"),p:n.go(t.p,"pq"),o:n.go(t.o,"o"),q:n.go(t.q,"pq"),d:n.go(t.d,"oxidation"===t.dType?"oxidation":"bd"),dType:t.dType})));for(var c in t)"parenthesisLevel"!==c&&"beginsWithBond"!==c&&delete t[c];return o},"oxidation-output":function(t,e){var a=["{"];return n.concatArray(a,n.go(e,"oxidation")),a.push("}"),a},"frac-output":function(t,e){return{type_:"frac-ce",p1:n.go(e[0]),p2:n.go(e[1])}},"overset-output":function(t,e){return{type_:"overset",p1:n.go(e[0]),p2:n.go(e[1])}},"underset-output":function(t,e){return{type_:"underset",p1:n.go(e[0]),p2:n.go(e[1])}},"underbrace-output":function(t,e){return{type_:"underbrace",p1:n.go(e[0]),p2:n.go(e[1])}},"color-output":function(t,e){return{type_:"color",color1:e[0],color2:n.go(e[1])}},"r=":function(t,e){t.r=e},"rdt=":function(t,e){t.rdt=e},"rd=":function(t,e){t.rd=e},"rqt=":function(t,e){t.rqt=e},"rq=":function(t,e){t.rq=e},operator:function(t,e,a){return{type_:"operator",kind_:a||e}}}},a:{transitions:n.createTransitions({empty:{"*":{}},"1/2$":{0:{action_:"1/2"}},else:{0:{nextState:"1",revisit:!0}},"$(...)$":{"*":{action_:"tex-math tight",nextState:"1"}},",":{"*":{action_:{type_:"insert",option:"commaDecimal"}}},else2:{"*":{action_:"copy"}}}),actions:{}},o:{transitions:n.createTransitions({empty:{"*":{}},"1/2$":{0:{action_:"1/2"}},else:{0:{nextState:"1",revisit:!0}},letters:{"*":{action_:"rm"}},"\\ca":{"*":{action_:{type_:"insert",option:"circa"}}},"\\x{}{}|\\x{}|\\x":{"*":{action_:"copy"}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},"{(...)}":{"*":{action_:"{text}"}},else2:{"*":{action_:"copy"}}}),actions:{}},text:{transitions:n.createTransitions({empty:{"*":{action_:"output"}},"{...}":{"*":{action_:"text="}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},"\\greek":{"*":{action_:["output","rm"]}},"\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:["output","copy"]}},else:{"*":{action_:"text="}}}),actions:{output:function(t){if(t.text_){var e={type_:"text",p1:t.text_};for(var a in t)delete t[a];return e}}}},pq:{transitions:n.createTransitions({empty:{"*":{}},"state of aggregation $":{"*":{action_:"state of aggregation"}},i$:{0:{nextState:"!f",revisit:!0}},"(KV letters),":{0:{action_:"rm",nextState:"0"}},formula$:{0:{nextState:"f",revisit:!0}},"1/2$":{0:{action_:"1/2"}},else:{0:{nextState:"!f",revisit:!0}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},"{(...)}":{"*":{action_:"text"}},"a-z":{f:{action_:"tex-math"}},letters:{"*":{action_:"rm"}},"-9.,9":{"*":{action_:"9,9"}},",":{"*":{action_:{type_:"insert+p1",option:"comma enumeration S"}}},"\\color{(...)}{(...)}1|\\color(...){(...)}2":{"*":{action_:"color-output"}},"\\color{(...)}0":{"*":{action_:"color0-output"}},"\\ce{(...)}":{"*":{action_:"ce"}},"\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:"copy"}},else2:{"*":{action_:"copy"}}}),actions:{"state of aggregation":function(t,e){return{type_:"state of aggregation subscript",p1:n.go(e,"o")}},"color-output":function(t,e){return{type_:"color",color1:e[0],color2:n.go(e[1],"pq")}}}},bd:{transitions:n.createTransitions({empty:{"*":{}},x$:{0:{nextState:"!f",revisit:!0}},formula$:{0:{nextState:"f",revisit:!0}},else:{0:{nextState:"!f",revisit:!0}},"-9.,9 no missing 0":{"*":{action_:"9,9"}},".":{"*":{action_:{type_:"insert",option:"electron dot"}}},"a-z":{f:{action_:"tex-math"}},x:{"*":{action_:{type_:"insert",option:"KV x"}}},letters:{"*":{action_:"rm"}},"'":{"*":{action_:{type_:"insert",option:"prime"}}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},"{(...)}":{"*":{action_:"text"}},"\\color{(...)}{(...)}1|\\color(...){(...)}2":{"*":{action_:"color-output"}},"\\color{(...)}0":{"*":{action_:"color0-output"}},"\\ce{(...)}":{"*":{action_:"ce"}},"\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:"copy"}},else2:{"*":{action_:"copy"}}}),actions:{"color-output":function(t,e){return{type_:"color",color1:e[0],color2:n.go(e[1],"bd")}}}},oxidation:{transitions:n.createTransitions({empty:{"*":{}},"roman numeral":{"*":{action_:"roman-numeral"}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},else:{"*":{action_:"copy"}}}),actions:{"roman-numeral":function(t,e){return{type_:"roman numeral",p1:e||""}}}},"tex-math":{transitions:n.createTransitions({empty:{"*":{action_:"output"}},"\\ce{(...)}":{"*":{action_:["output","ce"]}},"{...}|\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:"o="}},else:{"*":{action_:"o="}}}),actions:{output:function(t){if(t.o){var e={type_:"tex-math",p1:t.o};for(var a in t)delete t[a];return e}}}},"tex-math tight":{transitions:n.createTransitions({empty:{"*":{action_:"output"}},"\\ce{(...)}":{"*":{action_:["output","ce"]}},"{...}|\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:"o="}},"-|+":{"*":{action_:"tight operator"}},else:{"*":{action_:"o="}}}),actions:{"tight operator":function(t,e){t.o=(t.o||"")+"{"+e+"}"},output:function(t){if(t.o){var e={type_:"tex-math",p1:t.o};for(var a in t)delete t[a];return e}}}},"9,9":{transitions:n.createTransitions({empty:{"*":{}},",":{"*":{action_:"comma"}},else:{"*":{action_:"copy"}}}),actions:{comma:function(){return{type_:"commaDecimal"}}}},pu:{transitions:n.createTransitions({empty:{"*":{action_:"output"}},space$:{"*":{action_:["output","space"]}},"{[(|)]}":{"0|a":{action_:"copy"}},"(-)(9)^(-9)":{0:{action_:"number^",nextState:"a"}},"(-)(9.,9)(e)(99)":{0:{action_:"enumber",nextState:"a"}},space:{"0|a":{}},"pm-operator":{"0|a":{action_:{type_:"operator",option:"\\pm"},nextState:"0"}},operator:{"0|a":{action_:"copy",nextState:"0"}},"//":{d:{action_:"o=",nextState:"/"}},"/":{d:{action_:"o=",nextState:"/"}},"{...}|else":{"0|d":{action_:"d=",nextState:"d"},a:{action_:["space","d="],nextState:"d"},"/|q":{action_:"q=",nextState:"q"}}}),actions:{enumber:function(t,e){var a=[];return"+-"===e[0]||"+/-"===e[0]?a.push("\\pm "):e[0]&&a.push(e[0]),e[1]&&(n.concatArray(a,n.go(e[1],"pu-9,9")),e[2]&&(e[2].match(/[,.]/)?n.concatArray(a,n.go(e[2],"pu-9,9")):a.push(e[2])),e[3]=e[4]||e[3],e[3]&&(e[3]=e[3].trim(),"e"===e[3]||"*"===e[3].substr(0,1)?a.push({type_:"cdot"}):a.push({type_:"times"}))),e[3]&&a.push("10^{"+e[5]+"}"),a},"number^":function(t,e){var a=[];return"+-"===e[0]||"+/-"===e[0]?a.push("\\pm "):e[0]&&a.push(e[0]),n.concatArray(a,n.go(e[1],"pu-9,9")),a.push("^{"+e[2]+"}"),a},operator:function(t,e,a){return{type_:"operator",kind_:a||e}},space:function(){return{type_:"pu-space-1"}},output:function(t){var e,a=n.patterns.match_("{(...)}",t.d||"");a&&""===a.remainder&&(t.d=a.match_);var o=n.patterns.match_("{(...)}",t.q||"");if(o&&""===o.remainder&&(t.q=o.match_),t.d&&(t.d=t.d.replace(/\u00B0C|\^oC|\^{o}C/g,"{}^{\\circ}C"),t.d=t.d.replace(/\u00B0F|\^oF|\^{o}F/g,"{}^{\\circ}F")),t.q){t.q=t.q.replace(/\u00B0C|\^oC|\^{o}C/g,"{}^{\\circ}C"),t.q=t.q.replace(/\u00B0F|\^oF|\^{o}F/g,"{}^{\\circ}F");var r={d:n.go(t.d,"pu"),q:n.go(t.q,"pu")};"//"===t.o?e={type_:"pu-frac",p1:r.d,p2:r.q}:(e=r.d,r.d.length>1||r.q.length>1?e.push({type_:" / "}):e.push({type_:"/"}),n.concatArray(e,r.q))}else e=n.go(t.d,"pu-2");for(var i in t)delete t[i];return e}}},"pu-2":{transitions:n.createTransitions({empty:{"*":{action_:"output"}},"*":{"*":{action_:["output","cdot"],nextState:"0"}},"\\x":{"*":{action_:"rm="}},space:{"*":{action_:["output","space"],nextState:"0"}},"^{(...)}|^(-1)":{1:{action_:"^(-1)"}},"-9.,9":{0:{action_:"rm=",nextState:"0"},1:{action_:"^(-1)",nextState:"0"}},"{...}|else":{"*":{action_:"rm=",nextState:"1"}}}),actions:{cdot:function(){return{type_:"tight cdot"}},"^(-1)":function(t,e){t.rm+="^{"+e+"}"},space:function(){return{type_:"pu-space-2"}},output:function(t){var e=[];if(t.rm){var a=n.patterns.match_("{(...)}",t.rm||"");e=a&&""===a.remainder?n.go(a.match_,"pu"):{type_:"rm",p1:t.rm}}for(var o in t)delete t[o];return e}}},"pu-9,9":{transitions:n.createTransitions({empty:{0:{action_:"output-0"},o:{action_:"output-o"}},",":{0:{action_:["output-0","comma"],nextState:"o"}},".":{0:{action_:["output-0","copy"],nextState:"o"}},else:{"*":{action_:"text="}}}),actions:{comma:function(){return{type_:"commaDecimal"}},"output-0":function(t){var e=[];if(t.text_=t.text_||"",t.text_.length>4){var a=t.text_.length%3;0===a&&(a=3);for(var n=t.text_.length-3;n>0;n-=3)e.push(t.text_.substr(n,3)),e.push({type_:"1000 separator"});e.push(t.text_.substr(0,a)),e.reverse()}else e.push(t.text_);for(var o in t)delete t[o];return e},"output-o":function(t){var e=[];if(t.text_=t.text_||"",t.text_.length>4){for(var a=t.text_.length-3,n=0;n"===t.r||"<=>>"===t.r||"<<=>"===t.r||"<--\x3e"===t.r?(c="\\long"+c,i.rd&&(c="\\overset{"+i.rd+"}{"+c+"}"),i.rq&&(c="\\underset{\\lower7mu{"+i.rq+"}}{"+c+"}"),c=" {}\\mathrel{"+c+"}{} "):(i.rq&&(c+="[{"+i.rq+"}]"),c=" {}\\mathrel{\\x"+(c+="{"+i.rd+"}")+"}{} "):c=" {}\\mathrel{\\long"+c+"}{} ",e=c;break;case"operator":e=o._getOperator(t.kind_);break;case"1st-level escape":e=t.p1+" ";break;case"space":e=" ";break;case"entitySkip":case"pu-space-1":e="~";break;case"pu-space-2":e="\\mkern3mu ";break;case"1000 separator":e="\\mkern2mu ";break;case"commaDecimal":e="{,}";break;case"comma enumeration L":e="{"+t.p1+"}\\mkern6mu ";break;case"comma enumeration M":e="{"+t.p1+"}\\mkern3mu ";break;case"comma enumeration S":e="{"+t.p1+"}\\mkern1mu ";break;case"hyphen":e="\\text{-}";break;case"addition compound":e="\\,{\\cdot}\\,";break;case"electron dot":e="\\mkern1mu \\bullet\\mkern1mu ";break;case"KV x":e="{\\times}";break;case"prime":e="\\prime ";break;case"cdot":e="\\cdot ";break;case"tight cdot":e="\\mkern1mu{\\cdot}\\mkern1mu ";break;case"times":e="\\times ";break;case"circa":e="{\\sim}";break;case"^":e="uparrow";break;case"v":e="downarrow";break;case"ellipsis":e="\\ldots ";break;case"/":e="/";break;case" / ":e="\\,/\\,";break;default:throw["MhchemBugT","mhchem bug T. Please report."]}return e},_getArrow:function(t){switch(t){case"->":case"\u2192":case"\u27f6":return"rightarrow";case"<-":return"leftarrow";case"<->":return"leftrightarrow";case"<--\x3e":return"leftrightarrows";case"<=>":case"\u21cc":return"rightleftharpoons";case"<=>>":return"Rightleftharpoons";case"<<=>":return"Leftrightharpoons";default:throw["MhchemBugT","mhchem bug T. Please report."]}},_getBond:function(t){switch(t){case"-":case"1":return"{-}";case"=":case"2":return"{=}";case"#":case"3":return"{\\equiv}";case"~":return"{\\tripledash}";case"~-":return"{\\rlap{\\lower.1em{-}}\\raise.1em{\\tripledash}}";case"~=":case"~--":return"{\\rlap{\\lower.2em{-}}\\rlap{\\raise.2em{\\tripledash}}-}";case"-~-":return"{\\rlap{\\lower.2em{-}}\\rlap{\\raise.2em{-}}\\tripledash}";case"...":return"{{\\cdot}{\\cdot}{\\cdot}}";case"....":return"{{\\cdot}{\\cdot}{\\cdot}{\\cdot}}";case"->":return"{\\rightarrow}";case"<-":return"{\\leftarrow}";case"<":return"{<}";case">":return"{>}";default:throw["MhchemBugT","mhchem bug T. Please report."]}},_getOperator:function(t){switch(t){case"+":return" {}+{} ";case"-":return" {}-{} ";case"=":return" {}={} ";case"<":return" {}<{} ";case">":return" {}>{} ";case"<<":return" {}\\ll{} ";case">>":return" {}\\gg{} ";case"\\pm":return" {}\\pm{} ";case"\\approx":case"$\\approx$":return" {}\\approx{} ";case"v":case"(v)":return" \\downarrow{} ";case"^":case"(^)":return" \\uparrow{} ";default:throw["MhchemBugT","mhchem bug T. Please report."]}}};function r(t){}function i(t){}e.mhchemParser=n,e.texify=o,e.assertNever=r,e.assertString=i},function(t,e,a){"use strict";a.r(e);var n=a(0),o=a(1);Object(n.combineWithMathJax)({_:{input:{tex:{mhchem:{MhchemConfiguration:o}}}}})}]); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/newcommand.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/newcommand.js new file mode 100644 index 0000000..8abe85e --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/newcommand.js @@ -0,0 +1 @@ +!function(e){var t={};function a(n){if(t[n])return t[n].exports;var r=t[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,a),r.l=!0,r.exports}a.m=e,a.c=t,a.d=function(e,t,n){a.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},a.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.t=function(e,t){if(1&t&&(e=a(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(a.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)a.d(n,r,function(t){return e[t]}.bind(null,r));return n},a.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(t,"a",t),t},a.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},a.p="",a(a.s=14)}([function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n,r=a(5),i=a(1),o=a(10);!function(e){function t(e,t){return e.string.substr(e.i,t.length)!==t||t.match(/\\[a-z]+$/i)&&e.string.charAt(e.i+t.length).match(/[a-z]/i)?0:(e.i+=t.length,1)}e.disassembleSymbol=function(e,t){var a=[e,t.char];if(t.attributes)for(var n in t.attributes)a.push(n),a.push(t.attributes[n]);return a},e.assembleSymbol=function(e){for(var t=e[0],a=e[1],n={},r=2;r0?[o.toString()].concat(r):o;e.i++}throw new i.default("MissingReplacementString","Missing replacement string for definition of %1",t)},e.GetParameter=function(e,a,n){if(null==n)return e.GetArgument(a);for(var r=e.i,o=0,u=0;e.ie.configuration.options.maxMacros)throw new n.default("MaxMacroSub1","MathJax maximum macro substitution count exceeded; is here a recursive macro call?")},BeginEnv:function(e,t,a,n,r,i){if(t.getProperty("end")&&e.stack.env.closing===t.getName()){delete e.stack.env.closing;var u=e.string.slice(e.i);return e.string=n,e.i=0,e.Parse(),e.string=u,e.i=0,e.itemFactory.create("end").setProperty("name",t.getName())}if(r){var l=[];if(null!=i){var c=e.GetBrackets("\\begin{"+t.getName()+"}");l.push(null==c?i:c)}for(var s=l.length;s=e.length&&(e=void 0),{value:e&&e[o++],done:!e}}};throw new TypeError(n?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(n,"__esModule",{value:!0}),n.NoUndefinedConfiguration=void 0;var r=t(2);n.NoUndefinedConfiguration=r.Configuration.create("noundefined",{fallback:{macro:function(e,n){var t,r,i=e.create("text","\\"+n),a=e.options.noundefined||{},u={};try{for(var f=o(["color","background","size"]),c=f.next();!c.done;c=f.next()){var l=c.value;a[l]&&(u["math"+l]=a[l])}}catch(e){t={error:e}}finally{try{c&&!c.done&&(r=f.return)&&r.call(f)}finally{if(t)throw t.error}}e.Push(e.create("node","mtext",[],u,i))}},options:{noundefined:{color:"red",background:"",size:""}},priority:3})},function(e,n,t){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.Configuration=MathJax._.input.tex.Configuration.Configuration,n.ConfigurationHandler=MathJax._.input.tex.Configuration.ConfigurationHandler,n.ParserConfiguration=MathJax._.input.tex.Configuration.ParserConfiguration},function(e,n,t){"use strict";t.r(n);var o=t(0),r=t(1);Object(o.combineWithMathJax)({_:{input:{tex:{noundefined:{NoUndefinedConfiguration:r}}}}})}]); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/physics.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/physics.js new file mode 100644 index 0000000..0f6b5fc --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/physics.js @@ -0,0 +1 @@ +!function(t){var e={};function a(r){if(e[r])return e[r].exports;var n=e[r]={i:r,l:!1,exports:{}};return t[r].call(n.exports,n,n.exports,a),n.l=!0,n.exports}a.m=t,a.c=e,a.d=function(t,e,r){a.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:r})},a.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},a.t=function(t,e){if(1&e&&(t=a(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(a.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var n in t)a.d(r,n,function(e){return t[e]}.bind(null,n));return r},a.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return a.d(e,"a",e),e},a.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},a.p="",a(a.s=17)}([function(t,e,a){"use strict";var r,n=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var a in e)e.hasOwnProperty(a)&&(t[a]=e[a])})(t,e)},function(t,e){function a(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(a.prototype=e.prototype,new a)});Object.defineProperty(e,"__esModule",{value:!0}),e.AutoOpen=void 0;var i=a(8),o=a(2),s=a(3),c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),Object.defineProperty(e.prototype,"kind",{get:function(){return"auto open"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isOpen",{get:function(){return!0},enumerable:!1,configurable:!0}),e.prototype.toMml=function(){var e=this.factory.configuration.parser,a=this.getProperty("right");if(this.getProperty("smash")){var r=t.prototype.toMml.call(this),n=e.create("node","mpadded",[r],{height:0,depth:0});this.Clear(),this.Push(e.create("node","TeXAtom",[n]))}a&&this.Push(new s.default(a,e.stack.env,e.configuration).mml());var i=t.prototype.toMml.call(this);return o.default.fenced(this.factory.configuration,this.getProperty("open"),i,this.getProperty("close"),this.getProperty("big"))},e.prototype.checkItem=function(e){var a=e.getProperty("autoclose");return a&&a===this.getProperty("close")?this.getProperty("ignore")?(this.Clear(),[[],!0]):[[this.toMml()],!0]:t.prototype.checkItem.call(this,e)},e}(i.BaseItem);e.AutoOpen=c},function(t,e,a){"use strict";var r=this&&this.__read||function(t,e){var a="function"==typeof Symbol&&t[Symbol.iterator];if(!a)return t;var r,n,i=a.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=i.next()).done;)o.push(r.value)}catch(t){n={error:t}}finally{try{r&&!r.done&&(a=i.return)&&a.call(i)}finally{if(n)throw n.error}}return o};Object.defineProperty(e,"__esModule",{value:!0});var n=a(11),i=a(3),o=a(12),s=a(4),c=a(2),l=a(13),u=a(14),m={},d={"(":")","[":"]","{":"}","|":"|"},f=/^(b|B)i(g{1,2})$/;m.Quantity=function(t,e,a,r,n,u,m){void 0===a&&(a="("),void 0===r&&(r=")"),void 0===n&&(n=!1),void 0===u&&(u=""),void 0===m&&(m="");var p=!!n&&t.GetStar(),v=t.GetNext(),g=t.i,h=null;if("\\"===v){if(t.i++,!(h=t.GetCS()).match(f)){var x=t.create("node","mrow");return t.Push(c.default.fenced(t.configuration,a,x,r)),void(t.i=g)}v=t.GetNext()}var M=d[v];if(n&&"{"!==v)throw new o.default("MissingArgFor","Missing argument for %1",t.currentCS);if(!M){x=t.create("node","mrow");return t.Push(c.default.fenced(t.configuration,a,x,r)),void(t.i=g)}if(u){var y=t.create("token","mi",{texClass:s.TEXCLASS.OP},u);m&&l.default.setAttribute(y,"mathvariant",m),t.Push(t.itemFactory.create("fn",y))}if("{"===v){var b=t.GetArgument(e);return v=n?a:"\\{",M=n?r:"\\}",b=p?v+" "+b+" "+M:h?"\\"+h+"l"+v+" "+b+" \\"+h+"r"+M:"\\left"+v+" "+b+" \\right"+M,void t.Push(new i.default(b,t.stack.env,t.configuration).mml())}n&&(v=a,M=r),t.i++,t.Push(t.itemFactory.create("auto open").setProperties({open:v,close:M,big:h}))},m.Eval=function(t,e){var a=t.GetStar(),r=t.GetNext();if("{"!==r){if("("===r||"["===r)return t.i++,void t.Push(t.itemFactory.create("auto open").setProperties({open:r,close:"|",smash:a,right:"\\vphantom{\\int}"}));throw new o.default("MissingArgFor","Missing argument for %1",t.currentCS)}var n=t.GetArgument(e),i="\\left. "+(a?"\\smash{"+n+"}":n)+" \\vphantom{\\int}\\right|";t.string=t.string.slice(0,t.i)+i+t.string.slice(t.i)},m.Commutator=function(t,e,a,r){void 0===a&&(a="["),void 0===r&&(r="]");var n=t.GetStar(),s=t.GetNext(),c=null;if("\\"===s){if(t.i++,!(c=t.GetCS()).match(f))throw new o.default("MissingArgFor","Missing argument for %1",t.currentCS);s=t.GetNext()}if("{"!==s)throw new o.default("MissingArgFor","Missing argument for %1",t.currentCS);var l=t.GetArgument(e)+","+t.GetArgument(e);l=n?a+" "+l+" "+r:c?"\\"+c+"l"+a+" "+l+" \\"+c+"r"+r:"\\left"+a+" "+l+" \\right"+r,t.Push(new i.default(l,t.stack.env,t.configuration).mml())};var p=[65,90],v=[97,122],g=[913,937],h=[945,969],x=[48,57];function M(t,e){return t>=e[0]&&t<=e[1]}function y(t,e,a,r){var n=t.configuration.parser,i=u.NodeFactory.createToken(t,e,a,r),o=r.codePointAt(0);return 1===r.length&&!n.stack.env.font&&n.stack.env.vectorFont&&(M(o,p)||M(o,v)||M(o,g)||M(o,x)||M(o,h)&&n.stack.env.vectorStar||l.default.getAttribute(i,"accent"))&&l.default.setAttribute(i,"mathvariant",n.stack.env.vectorFont),i}m.VectorBold=function(t,e){var a=t.GetStar(),r=t.GetArgument(e),n=t.configuration.nodeFactory.get("token"),o=t.stack.env.font;delete t.stack.env.font,t.configuration.nodeFactory.set("token",y),t.stack.env.vectorFont=a?"bold-italic":"bold",t.stack.env.vectorStar=a;var s=new i.default(r,t.stack.env,t.configuration).mml();o&&(t.stack.env.font=o),delete t.stack.env.vectorFont,delete t.stack.env.vectorStar,t.configuration.nodeFactory.set("token",n),t.Push(s)},m.StarMacro=function(t,e,a){for(var r=[],n=3;nt.configuration.options.maxMacros)throw new o.default("MaxMacroSub1","MathJax maximum macro substitution count exceeded; is there a recursive macro call?")};var b=function(t,e,a,r,n){var o=new i.default(r,t.stack.env,t.configuration).mml();t.Push(t.itemFactory.create(e,o));var s=t.GetNext(),c=d[s];if(c){var l=-1!==n.indexOf(s);if("{"===s){var u=(l?"\\left\\{":"")+" "+t.GetArgument(a)+" "+(l?"\\right\\}":"");return t.string=u+t.string.slice(t.i),void(t.i=0)}l&&(t.i++,t.Push(t.itemFactory.create("auto open").setProperties({open:s,close:c})))}};function P(t,e,a){var n=r(t,3),i=n[0],o=n[1],s=n[2];return e&&a?"\\left\\langle{"+i+"}\\middle\\vert{"+o+"}\\middle\\vert{"+s+"}\\right\\rangle":e?"\\langle{"+i+"}\\vert{"+o+"}\\vert{"+s+"}\\rangle":"\\left\\langle{"+i+"}\\right\\vert{"+o+"}\\left\\vert{"+s+"}\\right\\rangle"}m.OperatorApplication=function(t,e,a){for(var r=[],n=3;n2&&c.length>2?(u="^{"+(c.length-1)+"}",l=!0):null!=o&&(a>2&&c.length>1&&(l=!0),m=u="^{"+o+"}");for(var d=n?"\\flatfrac":"\\frac",f=c.length>1?c[0]:"",p=c.length>1?c[1]:c[0],v="",g=2,h=void 0;h=c[g];g++)v+=r+" "+h;var x=d+"{"+r+u+f+"}{"+r+" "+p+m+" "+v+"}";t.Push(new i.default(x,t.stack.env,t.configuration).mml()),"("===t.GetNext()&&(t.i++,t.Push(t.itemFactory.create("auto open").setProperties({open:"(",close:")",ignore:l})))},m.Bra=function(t,e){var a=t.GetStar(),r=t.GetArgument(e),n="",o=!1,s=!1;if("\\"===t.GetNext()){var c=t.i;t.i++;var l=t.GetCS(),u=t.lookup("macro",l);u&&"ket"===u.symbol?(o=!0,c=t.i,s=t.GetStar(),"{"===t.GetNext()?n=t.GetArgument(l,!0):(t.i=c,s=!1)):t.i=c}var m="";m=o?a||s?"\\langle{"+r+"}\\vert{"+n+"}\\rangle":"\\left\\langle{"+r+"}\\middle\\vert{"+n+"}\\right\\rangle":a||s?"\\langle{"+r+"}\\vert":"\\left\\langle{"+r+"}\\right\\vert{"+n+"}",t.Push(new i.default(m,t.stack.env,t.configuration).mml())},m.Ket=function(t,e){var a=t.GetStar(),r=t.GetArgument(e),n=a?"\\vert{"+r+"}\\rangle":"\\left\\vert{"+r+"}\\right\\rangle";t.Push(new i.default(n,t.stack.env,t.configuration).mml())},m.BraKet=function(t,e){var a=t.GetStar(),r=t.GetArgument(e),n=null;"{"===t.GetNext()&&(n=t.GetArgument(e,!0));var o="";o=null==n?a?"\\langle{"+r+"}\\vert{"+r+"}\\rangle":"\\left\\langle{"+r+"}\\middle\\vert{"+r+"}\\right\\rangle":a?"\\langle{"+r+"}\\vert{"+n+"}\\rangle":"\\left\\langle{"+r+"}\\middle\\vert{"+n+"}\\right\\rangle",t.Push(new i.default(o,t.stack.env,t.configuration).mml())},m.KetBra=function(t,e){var a=t.GetStar(),r=t.GetArgument(e),n=null;"{"===t.GetNext()&&(n=t.GetArgument(e,!0));var o="";o=null==n?a?"\\vert{"+r+"}\\rangle\\!\\langle{"+r+"}\\vert":"\\left\\vert{"+r+"}\\middle\\rangle\\!\\middle\\langle{"+r+"}\\right\\vert":a?"\\vert{"+r+"}\\rangle\\!\\langle{"+n+"}\\vert":"\\left\\vert{"+r+"}\\middle\\rangle\\!\\middle\\langle{"+n+"}\\right\\vert",t.Push(new i.default(o,t.stack.env,t.configuration).mml())},m.Expectation=function(t,e){var a=t.GetStar(),r=a&&t.GetStar(),n=t.GetArgument(e),o=null;"{"===t.GetNext()&&(o=t.GetArgument(e,!0));var s=n&&o?P([o,n,o],a,r):a?"\\langle {"+n+"} \\rangle":"\\left\\langle {"+n+"} \\right\\rangle";t.Push(new i.default(s,t.stack.env,t.configuration).mml())},m.MatrixElement=function(t,e){var a=t.GetStar(),r=a&&t.GetStar(),n=P([t.GetArgument(e),t.GetArgument(e),t.GetArgument(e)],a,r);t.Push(new i.default(n,t.stack.env,t.configuration).mml())},m.MatrixQuantity=function(t,e,a){var r=t.GetStar(),n=a?"smallmatrix":"array",o="",s="",c="";switch(t.GetNext()){case"{":o=t.GetArgument(e);break;case"(":t.i++,s=r?"\\lgroup":"(",c=r?"\\rgroup":")",o=t.GetUpTo(e,")");break;case"[":t.i++,s="[",c="]",o=t.GetUpTo(e,"]");break;case"|":t.i++,s="|",c="|",o=t.GetUpTo(e,"|");break;default:s="(",c=")"}var l=(s?"\\left":"")+s+"\\begin{"+n+"}{} "+o+"\\end{"+n+"}"+(s?"\\right":"")+c;t.Push(new i.default(l,t.stack.env,t.configuration).mml())},m.IdentityMatrix=function(t,e){var a=t.GetArgument(e),r=parseInt(a,10);if(isNaN(r))throw new o.default("InvalidNumber","Invalid number");if(r<=1)return t.string="1"+t.string.slice(t.i),void(t.i=0);for(var n=Array(r).fill("0"),i=[],s=0;s=n){i.push(t.string.slice(s,n));break}s=t.i,i.push(o)}t.string=function(t,e){for(var a=t.length,r=[],n=0;n=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var a="function"==typeof Symbol&&e[Symbol.iterator];if(!a)return e;var r,o,n=a.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(r=n.next()).done;)i.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(a=n.return)&&a.call(n)}finally{if(o)throw o.error}}return i},n=this&&this.__spread||function(){for(var e=[],t=0;t=0&&(s[f]=n),o&&u[t]&&(Object(e.combineConfig)(u,(a={},r=n,i=u[t],r in a?Object.defineProperty(a,r,{value:i,enumerable:!0,configurable:!0,writable:!0}):a[r]=i,a)),delete u[t])}}("tagFormat","tagformat",!0)}]); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/textmacros.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/textmacros.js new file mode 100644 index 0000000..d80c0fc --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/textmacros.js @@ -0,0 +1 @@ +!function(t){var e={};function a(n){if(e[n])return e[n].exports;var r=e[n]={i:n,l:!1,exports:{}};return t[n].call(r.exports,r,r.exports,a),r.l=!0,r.exports}a.m=t,a.c=e,a.d=function(t,e,n){a.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},a.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},a.t=function(t,e){if(1&e&&(t=a(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(a.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var r in t)a.d(n,r,function(e){return t[e]}.bind(null,r));return n},a.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return a.d(e,"a",e),e},a.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},a.p="",a(a.s=18)}([function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TextMacrosMethods=void 0;var n=a(3),r=a(13),o=a(14);e.TextMacrosMethods={Comment:function(t,e){for(;t.i=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},s=this&&this.__read||function(t,e){var a="function"==typeof Symbol&&t[Symbol.iterator];if(!a)return t;var n,r,o=a.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)s.push(n.value)}catch(t){r={error:t}}finally{try{n&&!n.done&&(a=o.return)&&a.call(o)}finally{if(r)throw r.error}}return s},i=this&&this.__spread||function(){for(var t=[],e=0;e":["Spacer",r.TexConstant.Length.MEDIUMMATHSPACE],";":["Spacer",r.TexConstant.Length.THICKMATHSPACE],"!":["Spacer",r.TexConstant.Length.NEGATIVETHINMATHSPACE],enspace:["Spacer",".5em"],quad:["Spacer","1em"],qquad:["Spacer","2em"],thinspace:["Spacer",r.TexConstant.Length.THINMATHSPACE],negthinspace:["Spacer",r.TexConstant.Length.NEGATIVETHINMATHSPACE],hskip:"Hskip",hspace:"Hskip",kern:"Hskip",mskip:"Hskip",mspace:"Hskip",mkern:"Hskip",rule:"rule",Rule:["Rule"],Space:["Rule","blank"],color:"CheckAutoload",textcolor:"CheckAutoload",colorbox:"CheckAutoload",fcolorbox:"CheckAutoload",href:"CheckAutoload",style:"CheckAutoload",class:"CheckAutoload",cssId:"CheckAutoload",unicode:"CheckAutoload",ref:["HandleRef",!1],eqref:["HandleRef",!0]},o.TextMacrosMethods)},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractSymbolMap=MathJax._.input.tex.SymbolMap.AbstractSymbolMap,e.RegExpMap=MathJax._.input.tex.SymbolMap.RegExpMap,e.AbstractParseMap=MathJax._.input.tex.SymbolMap.AbstractParseMap,e.CharacterMap=MathJax._.input.tex.SymbolMap.CharacterMap,e.DelimiterMap=MathJax._.input.tex.SymbolMap.DelimiterMap,e.MacroMap=MathJax._.input.tex.SymbolMap.MacroMap,e.CommandMap=MathJax._.input.tex.SymbolMap.CommandMap,e.EnvironmentMap=MathJax._.input.tex.SymbolMap.EnvironmentMap},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TexConstant=MathJax._.input.tex.TexConstants.TexConstant},function(t,e,a){"use strict";a.r(e);var n=a(4),r=a(5),o=a(0),s=a(1);Object(n.combineWithMathJax)({_:{input:{tex:{textmacros:{TextMacrosConfiguration:r,TextMacrosMethods:o,TextParser:s}}}}})}]); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/unicode.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/unicode.js new file mode 100644 index 0000000..64928ed --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/unicode.js @@ -0,0 +1 @@ +!function(t){var e={};function a(n){if(e[n])return e[n].exports;var o=e[n]={i:n,l:!1,exports:{}};return t[n].call(o.exports,o,o.exports,a),o.l=!0,o.exports}a.m=t,a.c=e,a.d=function(t,e,n){a.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},a.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},a.t=function(t,e){if(1&e&&(t=a(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(a.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)a.d(n,o,function(e){return t[e]}.bind(null,o));return n},a.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return a.d(e,"a",e),e},a.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},a.p="",a(a.s=8)}([function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.isObject=MathJax._.components.global.isObject,e.combineConfig=MathJax._.components.global.combineConfig,e.combineDefaults=MathJax._.components.global.combineDefaults,e.combineWithMathJax=MathJax._.components.global.combineWithMathJax,e.MathJax=MathJax._.components.global.MathJax},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.UnicodeConfiguration=e.UnicodeMethods=void 0;var n=a(2),o=a(3),i=a(4),r=a(5),u=a(6),c=a(7);e.UnicodeMethods={};var l={};e.UnicodeMethods.Unicode=function(t,e){var a=t.GetBrackets(e),n=null,i=null;a&&(a.replace(/ /g,"").match(/^(\d+(\.\d*)?|\.\d+),(\d+(\.\d*)?|\.\d+)$/)?(n=a.replace(/ /g,"").split(/,/),i=t.GetBrackets(e)):i=a);var d=r.default.trimSpaces(t.GetArgument(e)).replace(/^0x/,"x");if(!d.match(/^(x[0-9A-Fa-f]+|[0-9]+)$/))throw new o.default("BadUnicode","Argument to \\unicode must be a number");var p=parseInt(d.match(/^x/)?"0"+d:d);l[p]?i||(i=l[p][2]):l[p]=[800,200,i,p],n&&(l[p][0]=Math.floor(1e3*parseFloat(n[0])),l[p][1]=Math.floor(1e3*parseFloat(n[1])));var s=t.stack.env.font,f={};i?(l[p][2]=f.fontfamily=i.replace(/'/g,"'"),s&&(s.match(/bold/)&&(f.fontweight="bold"),s.match(/italic|-mathit/)&&(f.fontstyle="italic"))):s&&(f.mathvariant=s);var M=t.create("token","mtext",f,c.numeric(d));u.default.setProperty(M,"unicode",!0),t.Push(M)},new i.CommandMap("unicode",{unicode:"Unicode"},e.UnicodeMethods),e.UnicodeConfiguration=n.Configuration.create("unicode",{handler:{macro:["unicode"]}})},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Configuration=MathJax._.input.tex.Configuration.Configuration,e.ConfigurationHandler=MathJax._.input.tex.Configuration.ConfigurationHandler,e.ParserConfiguration=MathJax._.input.tex.Configuration.ParserConfiguration},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=MathJax._.input.tex.TexError.default},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractSymbolMap=MathJax._.input.tex.SymbolMap.AbstractSymbolMap,e.RegExpMap=MathJax._.input.tex.SymbolMap.RegExpMap,e.AbstractParseMap=MathJax._.input.tex.SymbolMap.AbstractParseMap,e.CharacterMap=MathJax._.input.tex.SymbolMap.CharacterMap,e.DelimiterMap=MathJax._.input.tex.SymbolMap.DelimiterMap,e.MacroMap=MathJax._.input.tex.SymbolMap.MacroMap,e.CommandMap=MathJax._.input.tex.SymbolMap.CommandMap,e.EnvironmentMap=MathJax._.input.tex.SymbolMap.EnvironmentMap},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=MathJax._.input.tex.ParseUtil.default},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=MathJax._.input.tex.NodeUtil.default},function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.options=MathJax._.util.Entities.options,e.entities=MathJax._.util.Entities.entities,e.add=MathJax._.util.Entities.add,e.remove=MathJax._.util.Entities.remove,e.translate=MathJax._.util.Entities.translate,e.numeric=MathJax._.util.Entities.numeric},function(t,e,a){"use strict";a.r(e);var n=a(0),o=a(1);Object(n.combineWithMathJax)({_:{input:{tex:{unicode:{UnicodeConfiguration:o}}}}})}]); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/verb.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/verb.js new file mode 100644 index 0000000..c128cfa --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/mathjax/input/tex/extensions/verb.js @@ -0,0 +1 @@ +!function(t){var e={};function n(a){if(e[a])return e[a].exports;var r=e[a]={i:a,l:!1,exports:{}};return t[a].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=t,n.c=e,n.d=function(t,e,a){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:a})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var a=Object.create(null);if(n.r(a),Object.defineProperty(a,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var r in t)n.d(a,r,function(e){return t[e]}.bind(null,r));return a},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=6)}([function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.isObject=MathJax._.components.global.isObject,e.combineConfig=MathJax._.components.global.combineConfig,e.combineDefaults=MathJax._.components.global.combineDefaults,e.combineWithMathJax=MathJax._.components.global.combineWithMathJax,e.MathJax=MathJax._.components.global.MathJax},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.VerbConfiguration=e.VerbMethods=void 0;var a=n(2),r=n(3),o=n(4),i=n(5);e.VerbMethods={},e.VerbMethods.Verb=function(t,e){var n=t.GetNext(),a=++t.i;if(""===n)throw new i.default("MissingArgFor","Missing argument for %1",e);for(;t.ib||1342177279>>=1)c+=c;return d}},"es6","es3");var COMPILED=!0,goog=goog||{};goog.global=this||self; +goog.exportPath_=function(a,b,c){a=a.split(".");c=c||goog.global;a[0]in c||"undefined"==typeof c.execScript||c.execScript("var "+a[0]);for(var d;a.length&&(d=a.shift());)a.length||void 0===b?c=c[d]&&c[d]!==Object.prototype[d]?c[d]:c[d]={}:c[d]=b}; +goog.define=function(a,b){if(!COMPILED){var c=goog.global.CLOSURE_UNCOMPILED_DEFINES,d=goog.global.CLOSURE_DEFINES;c&&void 0===c.nodeType&&Object.prototype.hasOwnProperty.call(c,a)?b=c[a]:d&&void 0===d.nodeType&&Object.prototype.hasOwnProperty.call(d,a)&&(b=d[a])}return b};goog.FEATURESET_YEAR=2012;goog.DEBUG=!0;goog.LOCALE="en";goog.TRUSTED_SITE=!0;goog.STRICT_MODE_COMPATIBLE=!1;goog.DISALLOW_TEST_ONLY_CODE=COMPILED&&!goog.DEBUG;goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING=!1; +goog.provide=function(a){if(goog.isInModuleLoader_())throw Error("goog.provide cannot be used within a module.");if(!COMPILED&&goog.isProvided_(a))throw Error('Namespace "'+a+'" already declared.');goog.constructNamespace_(a)};goog.constructNamespace_=function(a,b){if(!COMPILED){delete goog.implicitNamespaces_[a];for(var c=a;(c=c.substring(0,c.lastIndexOf(".")))&&!goog.getObjectByName(c);)goog.implicitNamespaces_[c]=!0}goog.exportPath_(a,b)}; +goog.getScriptNonce=function(a){if(a&&a!=goog.global)return goog.getScriptNonce_(a.document);null===goog.cspNonce_&&(goog.cspNonce_=goog.getScriptNonce_(goog.global.document));return goog.cspNonce_};goog.NONCE_PATTERN_=/^[\w+/_-]+[=]{0,2}$/;goog.cspNonce_=null;goog.getScriptNonce_=function(a){return(a=a.querySelector&&a.querySelector("script[nonce]"))&&(a=a.nonce||a.getAttribute("nonce"))&&goog.NONCE_PATTERN_.test(a)?a:""};goog.VALID_MODULE_RE_=/^[a-zA-Z_$][a-zA-Z0-9._$]*$/; +goog.module=function(a){if("string"!==typeof a||!a||-1==a.search(goog.VALID_MODULE_RE_))throw Error("Invalid module identifier");if(!goog.isInGoogModuleLoader_())throw Error("Module "+a+" has been loaded incorrectly. Note, modules cannot be loaded as normal scripts. They require some kind of pre-processing step. You're likely trying to load a module via a script tag or as a part of a concatenated bundle without rewriting the module. For more info see: https://github.com/google/closure-library/wiki/goog.module:-an-ES6-module-like-alternative-to-goog.provide."); +if(goog.moduleLoaderState_.moduleName)throw Error("goog.module may only be called once per module.");goog.moduleLoaderState_.moduleName=a;if(!COMPILED){if(goog.isProvided_(a))throw Error('Namespace "'+a+'" already declared.');delete goog.implicitNamespaces_[a]}};goog.module.get=function(a){return goog.module.getInternal_(a)}; +goog.module.getInternal_=function(a){if(!COMPILED){if(a in goog.loadedModules_)return goog.loadedModules_[a].exports;if(!goog.implicitNamespaces_[a])return a=goog.getObjectByName(a),null!=a?a:null}return null};goog.ModuleType={ES6:"es6",GOOG:"goog"};goog.moduleLoaderState_=null;goog.isInModuleLoader_=function(){return goog.isInGoogModuleLoader_()||goog.isInEs6ModuleLoader_()};goog.isInGoogModuleLoader_=function(){return!!goog.moduleLoaderState_&&goog.moduleLoaderState_.type==goog.ModuleType.GOOG}; +goog.isInEs6ModuleLoader_=function(){if(goog.moduleLoaderState_&&goog.moduleLoaderState_.type==goog.ModuleType.ES6)return!0;var a=goog.global.$jscomp;return a?"function"!=typeof a.getCurrentModulePath?!1:!!a.getCurrentModulePath():!1}; +goog.module.declareLegacyNamespace=function(){if(!COMPILED&&!goog.isInGoogModuleLoader_())throw Error("goog.module.declareLegacyNamespace must be called from within a goog.module");if(!COMPILED&&!goog.moduleLoaderState_.moduleName)throw Error("goog.module must be called prior to goog.module.declareLegacyNamespace.");goog.moduleLoaderState_.declareLegacyNamespace=!0}; +goog.declareModuleId=function(a){if(!COMPILED){if(!goog.isInEs6ModuleLoader_())throw Error("goog.declareModuleId may only be called from within an ES6 module");if(goog.moduleLoaderState_&&goog.moduleLoaderState_.moduleName)throw Error("goog.declareModuleId may only be called once per module.");if(a in goog.loadedModules_)throw Error('Module with namespace "'+a+'" already exists.');}if(goog.moduleLoaderState_)goog.moduleLoaderState_.moduleName=a;else{var b=goog.global.$jscomp;if(!b||"function"!=typeof b.getCurrentModulePath)throw Error('Module with namespace "'+ +a+'" has been loaded incorrectly.');b=b.require(b.getCurrentModulePath());goog.loadedModules_[a]={exports:b,type:goog.ModuleType.ES6,moduleId:a}}};goog.setTestOnly=function(a){if(goog.DISALLOW_TEST_ONLY_CODE)throw a=a||"",Error("Importing test-only code into non-debug environment"+(a?": "+a:"."));};goog.forwardDeclare=function(a){};COMPILED||(goog.isProvided_=function(a){return a in goog.loadedModules_||!goog.implicitNamespaces_[a]&&null!=goog.getObjectByName(a)},goog.implicitNamespaces_={"goog.module":!0}); +goog.getObjectByName=function(a,b){a=a.split(".");b=b||goog.global;for(var c=0;c>>0);goog.uidCounter_=0;goog.getHashCode=goog.getUid;goog.removeHashCode=goog.removeUid; +goog.cloneObject=function(a){var b=goog.typeOf(a);if("object"==b||"array"==b){if("function"===typeof a.clone)return a.clone();b="array"==b?[]:{};for(var c in a)b[c]=goog.cloneObject(a[c]);return b}return a};goog.bindNative_=function(a,b,c){return a.call.apply(a.bind,arguments)}; +goog.bindJs_=function(a,b,c){if(!a)throw Error();if(2{"use strict";class X{constructor(){if(new.target!=String)throw 1;this.x=42}}let q=Reflect.construct(X,[],String);if(q.x!=42||!(q instanceof String))throw 1;for(const a of[2,3]){if(a==2)continue;function f(z={a}){let a=0;return z.a}{function f(){return 0;}}return f()==3}})()')}); +a("es7",function(){return b("2 ** 2 == 4")});a("es8",function(){return b("async () => 1, true")});a("es9",function(){return b("({...rest} = {}), true")});a("es_next",function(){return!1});return{target:c,map:d}},goog.Transpiler.prototype.needsTranspile=function(a,b){if("always"==goog.TRANSPILE)return!0;if("never"==goog.TRANSPILE)return!1;if(!this.requiresTranspilation_){var c=this.createRequiresTranspilation_();this.requiresTranspilation_=c.map;this.transpilationTarget_=this.transpilationTarget_|| +c.target}if(a in this.requiresTranspilation_)return this.requiresTranspilation_[a]?!0:!goog.inHtmlDocument_()||"es6"!=b||"noModule"in goog.global.document.createElement("script")?!1:!0;throw Error("Unknown language mode: "+a);},goog.Transpiler.prototype.transpile=function(a,b){return goog.transpile_(a,b,this.transpilationTarget_)},goog.transpiler_=new goog.Transpiler,goog.protectScriptTag_=function(a){return a.replace(/<\/(SCRIPT)/ig,"\\x3c/$1")},goog.DebugLoader_=function(){this.dependencies_={}; +this.idToPath_={};this.written_={};this.loadingDeps_=[];this.depsToLoad_=[];this.paused_=!1;this.factory_=new goog.DependencyFactory(goog.transpiler_);this.deferredCallbacks_={};this.deferredQueue_=[]},goog.DebugLoader_.prototype.bootstrap=function(a,b){function c(){d&&(goog.global.setTimeout(d,0),d=null)}var d=b;if(a.length){b=[];for(var e=0;e\x3c/script>";b.write(goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createHTML(d):d)}else{var e=b.createElement("script");e.defer=goog.Dependency.defer_;e.async=!1;e.type="text/javascript";(d=goog.getScriptNonce())&&e.setAttribute("nonce",d);goog.DebugLoader_.IS_OLD_IE_? +(a.pause(),e.onreadystatechange=function(){if("loaded"==e.readyState||"complete"==e.readyState)a.loaded(),a.resume()}):e.onload=function(){e.onload=null;a.loaded()};e.src=goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createScriptURL(this.path):this.path;b.head.appendChild(e)}}else goog.logToConsole_("Cannot use default debug loader outside of HTML documents."),"deps.js"==this.relativePath?(goog.logToConsole_("Consider setting CLOSURE_IMPORT_SCRIPT before loading base.js, or setting CLOSURE_NO_DEPS to true."), +a.loaded()):a.pause()},goog.Es6ModuleDependency=function(a,b,c,d,e){goog.Dependency.call(this,a,b,c,d,e)},goog.inherits(goog.Es6ModuleDependency,goog.Dependency),goog.Es6ModuleDependency.prototype.load=function(a){function b(l,m){l=m?'");return a};sre.ColorPicker=function(a,b){this.foreground=sre.ColorPicker.getChannelColor_(b,sre.ColorPicker.DEFAULT_FOREGROUND_);this.background=sre.ColorPicker.getChannelColor_(a,sre.ColorPicker.DEFAULT_BACKGROUND_)};sre.ColorPicker.DEFAULT_BACKGROUND_="blue";sre.ColorPicker.DEFAULT_FOREGROUND_="black"; +sre.ColorPicker.namedColors_={red:{red:255,green:0,blue:0},green:{red:0,green:255,blue:0},blue:{red:0,green:0,blue:255},yellow:{red:255,green:255,blue:0},cyan:{red:0,green:255,blue:255},magenta:{red:255,green:0,blue:255},white:{red:255,green:255,blue:255},black:{red:0,green:0,blue:0}};sre.ColorPicker.getChannelColor_=function(a,b){a=a||{color:b};var c=a.color?sre.ColorPicker.namedColors_[a.color]:a;c||(c=sre.ColorPicker.namedColors_[b]);c.alpha=a.hasOwnProperty("alpha")?a.alpha:1;return sre.ColorPicker.normalizeColor_(c)}; +sre.ColorPicker.normalizeColor_=function(a){var b=function(c){c=Math.max(c,0);c=Math.min(255,c);return Math.round(c)};a.red=b(a.red);a.green=b(a.green);a.blue=b(a.blue);a.alpha=Math.max(a.alpha,0);a.alpha=Math.min(1,a.alpha);return a};sre.ColorPicker.prototype.rgba=function(){var a=function(b){return"rgba("+b.red+","+b.green+","+b.blue+","+b.alpha+")"};return{background:a(this.background),foreground:a(this.foreground)}}; +sre.ColorPicker.prototype.rgb=function(){var a=function(b){return"rgb("+b.red+","+b.green+","+b.blue+")"};return{background:a(this.background),alphaback:this.background.alpha.toString(),foreground:a(this.foreground),alphafore:this.foreground.alpha.toString()}}; +sre.ColorPicker.prototype.hex=function(){var a=function(b){return"#"+sre.ColorPicker.toHex_(b.red)+sre.ColorPicker.toHex_(b.green)+sre.ColorPicker.toHex_(b.blue)};return{background:a(this.background),alphaback:this.background.alpha.toString(),foreground:a(this.foreground),alphafore:this.foreground.alpha.toString()}};sre.ColorPicker.toHex_=function(a){a=a.toString(16);return 1===a.length?"0"+a:a};sre.ContrastPicker=function(){this.hue=10;this.sat=100;this.incr=this.light=50}; +sre.ContrastPicker.prototype.generate=function(){return sre.ColorPicker.RGB2hex_(sre.ColorPicker.rgb2RGB_(sre.ColorPicker.hsl2rgb_(this.hue,this.sat,this.light)))};sre.ContrastPicker.prototype.increment=function(){this.hue=(this.hue+this.incr)%360}; +sre.ColorPicker.hsl2rgb_=function(a,b,c){c=1a?(a=$jscomp.makeIterator([d,e,0]),b=a.next().value,f=a.next().value,g=a.next().value):60<=a&&120>a?(a=$jscomp.makeIterator([e,d,0]),b=a.next().value,f=a.next().value,g=a.next().value):120<=a&&180>a?(a=$jscomp.makeIterator([0,d,e]),b=a.next().value,f=a.next().value,g=a.next().value):180<=a&&240>a?(a=$jscomp.makeIterator([0,e,d]),b=a.next().value,f= +a.next().value,g=a.next().value):240<=a&&300>a?(a=$jscomp.makeIterator([e,0,d]),b=a.next().value,f=a.next().value,g=a.next().value):300<=a&&360>a&&(a=$jscomp.makeIterator([d,0,e]),b=a.next().value,f=a.next().value,g=a.next().value);return{red:b+c,green:f+c,blue:g+c}};sre.ColorPicker.rgb2RGB_=function(a){return{red:Math.round(255*a.red),green:Math.round(255*a.green),blue:Math.round(255*a.blue)}};sre.ColorPicker.RGB2hex_=function(a){return"rgb("+a.red+","+a.green+","+a.blue+")"};sre.Highlighter=function(){};sre.Highlighter.prototype.highlight=function(a){};sre.Highlighter.prototype.unhighlight=function(){};sre.Highlighter.prototype.highlightAll=function(a){};sre.Highlighter.prototype.unhighlightAll=function(){};sre.Highlighter.prototype.setColor=function(a){};sre.Highlighter.prototype.addEvents=function(a,b){};sre.AbstractHighlighter=function(){this.currentHighlights_=[];this.color=null;this.mactionName=""};sre.AbstractHighlighter.ATTR="sre-highlight";sre.AbstractHighlighter.prototype.highlight=function(a){this.currentHighlights_.push(a.map(goog.bind(function(b){var c=this.highlightNode(b);this.setHighlighted(b);return c},this)))};sre.AbstractHighlighter.prototype.highlightNode=goog.abstractMethod;sre.AbstractHighlighter.prototype.highlightAll=function(a){a=this.getMactionNodes(a);for(var b=0,c;c=a[b];b++)this.highlight([c])}; +sre.AbstractHighlighter.prototype.unhighlight=function(){var a=this.currentHighlights_.pop();a&&a.forEach(goog.bind(function(b){this.isHighlighted(b.node)&&(this.unhighlightNode(b),this.unsetHighlighted(b.node))},this))};sre.AbstractHighlighter.prototype.unhighlightNode=goog.abstractMethod;sre.AbstractHighlighter.prototype.unhighlightAll=function(){for(;0=a.length)return a;for(var c=[],d=0,e;e=b[d],a.length;d++)e.close&&e.close.length&&e.close.forEach(function(f){var g=a.indexOf(f);-1!==g&&(c.unshift(f),a.splice(g,1))});return c};sre.AudioUtil.PersonalityRanges_={};sre.AudioUtil.LastOpen_=[]; +sre.AudioUtil.personalityMarkup=function(a){sre.AudioUtil.PersonalityRanges_={};sre.AudioUtil.LastOpen_=[];for(var b=[],c={},d=0,e;e=a[d];d++){var f=null,g=e.descriptionSpan(),h=e.personality;e=h[sre.Engine.personalityProps.JOIN];delete h[sre.Engine.personalityProps.JOIN];"undefined"!==typeof h[sre.Engine.personalityProps.PAUSE]&&(f={},f[sre.Engine.personalityProps.PAUSE]=h[sre.Engine.personalityProps.PAUSE],delete h[sre.Engine.personalityProps.PAUSE]);h=sre.AudioUtil.personalityDiff_(h,c);sre.AudioUtil.appendMarkup_(b, +g,h,e,f,!0)}b=b.concat(sre.AudioUtil.finaliseMarkup_());return b=sre.AudioUtil.simplifyMarkup_(b)}; +sre.AudioUtil.appendElement_=function(a,b){var c=a[a.length-1];if(c)if(sre.AudioUtil.isSpanElement(b)&&sre.AudioUtil.isSpanElement(c))if("undefined"===typeof c.join)c.span=c.span.concat(b.span);else{a=c.span.pop();var d=b.span.shift();c.span.push(a+c.join+d);c.span=c.span.concat(b.span);c.join=b.join}else sre.AudioUtil.isPauseElement(b)&&sre.AudioUtil.isPauseElement(c)?c.pause=sre.AudioUtil.mergePause_(c.pause,b.pause):a.push(b);else a.push(b)}; +sre.AudioUtil.simplifyMarkup_=function(a){for(var b={},c=[],d=0,e;e=a[d];d++)if(sre.AudioUtil.isMarkupElement(e))if(!e.close||1!==e.close.length||e.open.length)sre.AudioUtil.copyValues_(e,b),c.push(e);else{var f=a[d+1];if(!f||sre.AudioUtil.isSpanElement(f))sre.AudioUtil.copyValues_(e,b),c.push(e);else{var g=sre.AudioUtil.isPauseElement(f)?f:null;g&&(f=a[d+2]);f&&sre.AudioUtil.isMarkupElement(f)&&f.open[0]===e.close[0]&&!f.close.length&&f[f.open[0]]===b[f.open[0]]?g?(sre.AudioUtil.appendElement_(c, +g),d+=2):d+=1:(sre.AudioUtil.copyValues_(e,b),c.push(e))}}else sre.AudioUtil.appendElement_(c,e);return c};sre.AudioUtil.copyValues_=function(a,b){a.rate&&(b.rate=a.rate);a.pitch&&(b.pitch=a.pitch);a.volume&&(b.volume=a.volume)};sre.AudioUtil.finaliseMarkup_=function(){for(var a=[],b=sre.AudioUtil.LastOpen_.length-1;0<=b;b--){var c=sre.AudioUtil.LastOpen_[b];if(c.length){for(var d={open:[],close:[]},e=0;e=a?"short":500>=a?"medium":"long":a]||""};sre.XmlRenderer=function(){sre.MarkupRenderer.call(this)};goog.inherits(sre.XmlRenderer,sre.MarkupRenderer); +sre.XmlRenderer.prototype.markup=function(a){this.setScaleFunction(-2,2,-100,100,2);a=sre.AudioUtil.personalityMarkup(a);for(var b=[],c=[],d=0,e;e=a[d];d++)if(e.span)b.push(this.merge(e.span));else if(sre.AudioUtil.isPauseElement(e))b.push(this.pause(e));else{if(e.close.length)for(var f=0;f'+this.getSeparator()+a+this.getSeparator()+""};sre.SableRenderer.prototype.pause=function(a){return''}; +sre.SableRenderer.prototype.prosodyElement=function(a,b){b=this.applyScaleFunction(b);switch(a){case sre.Engine.personalityProps.PITCH:return'';case sre.Engine.personalityProps.RATE:return'';case sre.Engine.personalityProps.VOLUME:return'';default:return"<"+a.toUpperCase()+' VALUE="'+b+'">'}};sre.SableRenderer.prototype.closeTag=function(a){return""};sre.SsmlRenderer=function(){sre.XmlRenderer.call(this)};goog.inherits(sre.SsmlRenderer,sre.XmlRenderer);sre.SsmlRenderer.prototype.finalize=function(a){return''+this.getSeparator()+a+this.getSeparator()+""};sre.SsmlRenderer.prototype.pause=function(a){return''}; +sre.SsmlRenderer.prototype.prosodyElement=function(a,b){b=Math.floor(this.applyScaleFunction(b));b=0>b?b.toString():"+"+b.toString();return"":'%">')};sre.SsmlRenderer.prototype.closeTag=function(a){return""};sre.SsmlStepRenderer=function(){sre.SsmlRenderer.call(this)};goog.inherits(sre.SsmlStepRenderer,sre.SsmlRenderer);sre.SsmlStepRenderer.prototype.markup=function(a){sre.SsmlStepRenderer.MARKS={};return sre.SsmlStepRenderer.superClass_.markup.call(this,a)};sre.SsmlStepRenderer.CHARACTER_ATTR_="character";sre.SsmlStepRenderer.MARKS={}; +sre.SsmlStepRenderer.prototype.merge=function(a){for(var b=[],c=0;c'),sre.SsmlStepRenderer.MARKS[e]=!0);1===d.string.length&&d.string.match(/[a-zA-Z]/)?b.push(''+d.string+""):b.push(d.string)}return b.join(this.getSeparator())};sre.StringRenderer=function(){sre.AbstractAudioRenderer.call(this)};goog.inherits(sre.StringRenderer,sre.AbstractAudioRenderer);sre.StringRenderer.prototype.markup=function(a){var b="";a=a.filter(function(g){return g.descriptionString()});if(!a.length)return b;for(var c=0;c "+this.action.toString()};sre.SpeechRule.Type={NODE:"NODE",MULTI:"MULTI",TEXT:"TEXT",PERSONALITY:"PERSONALITY"}; +sre.SpeechRule.Type.fromString=function(a){switch(a){case "[n]":return sre.SpeechRule.Type.NODE;case "[m]":return sre.SpeechRule.Type.MULTI;case "[t]":return sre.SpeechRule.Type.TEXT;case "[p]":return sre.SpeechRule.Type.PERSONALITY;default:throw"Parse error: "+a;}}; +sre.SpeechRule.Type.toString=function(a){switch(a){case sre.SpeechRule.Type.NODE:return"[n]";case sre.SpeechRule.Type.MULTI:return"[m]";case sre.SpeechRule.Type.TEXT:return"[t]";case sre.SpeechRule.Type.PERSONALITY:return"[p]";default:throw"Unknown type error: "+a;}};sre.SpeechRule.Component=function(a){this.type=a.type;this.content=a.content;this.attributes=a.attributes;this.grammar=a.grammar}; +sre.SpeechRule.Component.fromString=function(a){var b={};b.type=sre.SpeechRule.Type.fromString(a.substring(0,3));a=a.slice(3).trim();if(!a)throw new sre.SpeechRule.OutputError("Missing content.");switch(b.type){case sre.SpeechRule.Type.TEXT:if('"'==a[0]){var c=sre.SpeechRule.splitString_(a,"\\(")[0].trim();if('"'!=c.slice(-1))throw new sre.SpeechRule.OutputError("Invalid string syntax.");b.content=c;a=a.slice(c.length).trim();-1==a.indexOf("(")&&(a="");break}case sre.SpeechRule.Type.NODE:case sre.SpeechRule.Type.MULTI:c= +a.indexOf(" ("),-1==c?(b.content=a.trim(),a=""):(b.content=a.substring(0,c).trim(),a=a.slice(c).trim())}a&&(a=sre.SpeechRule.Component.attributesFromString(a),a.grammar&&(b.grammar=a.grammar,delete a.grammar),Object.keys(a).length&&(b.attributes=a));return b=new sre.SpeechRule.Component(b)};sre.SpeechRule.Component.prototype.toString=function(){var a=""+sre.SpeechRule.Type.toString(this.type);a+=this.content?" "+this.content:"";var b=this.attributesToString();return a+(b?" "+b:"")}; +sre.SpeechRule.Component.grammarFromString=function(a){return sre.Grammar.parseInput(a)};sre.SpeechRule.Component.prototype.grammarToString=function(){return this.getGrammar().join(":")};sre.SpeechRule.Component.prototype.getGrammar=function(){var a=[],b;for(b in this.grammar)!0===this.grammar[b]?a.push(b):!1===this.grammar[b]?a.push("!"+b):a.push(b+"="+this.grammar[b]);return a}; +sre.SpeechRule.Component.attributesFromString=function(a){if("("!=a[0]||")"!=a.slice(-1))throw new sre.SpeechRule.OutputError("Invalid attribute expression: "+a);var b={};a=sre.SpeechRule.splitString_(a.slice(1,-1),",");for(var c=0,d=a.length;c "+this.getRule().action:this.constraint};sre.TrieNodeFactory={};sre.TrieNodeFactory.getNode=function(a,b,c){switch(a){case sre.TrieNode.Kind.ROOT:return new sre.RootTrieNode;case sre.TrieNode.Kind.DYNAMIC:return new sre.DynamicTrieNode(b);case sre.TrieNode.Kind.QUERY:return new sre.QueryTrieNode(b,c);case sre.TrieNode.Kind.BOOLEAN:return new sre.BooleanTrieNode(b,c);default:return null}};sre.RootTrieNode=function(){sre.AbstractTrieNode.call(this,"",function(){return!0});this.kind=sre.TrieNode.Kind.ROOT};goog.inherits(sre.RootTrieNode,sre.AbstractTrieNode); +sre.DynamicTrieNode=function(a){sre.AbstractTrieNode.call(this,a,function(b){return b===a});this.kind=sre.TrieNode.Kind.DYNAMIC};goog.inherits(sre.DynamicTrieNode,sre.AbstractTrieNode); +sre.TrieNodeFactory.constraintTest_=function(a){if(a.match(/^self::\*$/))return function(f){return!0};if(a.match(/^self::\w+$/)){var b=a.slice(6).toUpperCase();return function(f){return f.tagName&&sre.DomUtil.tagName(f)===b}}if(a.match(/^self::\w+:\w+$/)){a=a.split(":");var c=sre.XpathUtil.resolveNameSpace(a[2]);if(!c)return null;b=a[3].toUpperCase();return function(f){return f.localName&&f.localName.toUpperCase()===b&&f.namespaceURI===c}}if(a.match(/^@\w+$/)){var d=a.slice(1);return function(f){return f.hasAttribute&& +f.hasAttribute(d)}}if(a.match(/^@\w+="[\w\d ]+"$/)){a=a.split("=");d=a[0].slice(1);var e=a[1].slice(1,-1);return function(f){return f.hasAttribute&&f.hasAttribute(d)&&f.getAttribute(d)===e}}return a.match(/^@\w+!="[\w\d ]+"$/)?(a=a.split("!="),d=a[0].slice(1),e=a[1].slice(1,-1),function(f){return!f.hasAttribute||!f.hasAttribute(d)||f.getAttribute(d)!==e}):a.match(/^contains\(\s*@grammar\s*,\s*"[\w\d ]+"\s*\)$/)?(a=a.split('"'),e=a[1],function(f){return sre.Grammar.getInstance().getParameter(e)}): +a.match(/^not\(\s*contains\(\s*@grammar\s*,\s*"[\w\d ]+"\s*\)\s*\)$/)?(a=a.split('"'),e=a[1],function(f){return!sre.Grammar.getInstance().getParameter(e)}):null};sre.QueryTrieNode=function(a,b){this.context_=b;sre.StaticTrieNode.call(this,a,sre.TrieNodeFactory.constraintTest_(a));this.kind=sre.TrieNode.Kind.QUERY};goog.inherits(sre.QueryTrieNode,sre.StaticTrieNode);sre.QueryTrieNode.prototype.applyTest=function(a){return this.test?this.test(a):this.context_.applyQuery(a,this.constraint)===a}; +sre.BooleanTrieNode=function(a,b){this.context_=b;sre.StaticTrieNode.call(this,a,sre.TrieNodeFactory.constraintTest_(a));this.kind=sre.TrieNode.Kind.BOOLEAN};goog.inherits(sre.BooleanTrieNode,sre.StaticTrieNode);sre.BooleanTrieNode.prototype.applyTest=function(a){return this.test?this.test(a):this.context_.applyConstraint(a,this.constraint)};sre.Trie=function(a){this.store=a;this.root=sre.TrieNodeFactory.getNode(sre.TrieNode.Kind.ROOT,"",this.store.context)};sre.Trie.prototype.addRule=function(a){for(var b=this.root,c=a.context,d=a.dynamicCstr.getValues(),e=0,f=d.length;e=c&&1=d&&1b?-1:aa)return String.fromCharCode(a);a-=65536;return String.fromCharCode((a>>10)+55296,(a&1023)+56320)};sre.MathMap=function(){this.store=sre.MathCompoundStore.getInstance();this.loaded_=[];this.addRules={functions:goog.bind(this.store.addFunctionRules,this.store),symbols:goog.bind(this.store.addSymbolRules,this.store),units:goog.bind(this.store.addUnitRules,this.store)}};goog.addSingletonGetter(sre.MathMap);sre.MathMap.oldInst_=sre.MathMap.getInstance;sre.MathMap.getInstance=function(){var a=sre.MathMap.oldInst_();a.loadLocale();return a}; +sre.MathMap.prototype.loadLocale=function(){var a=sre.Engine.getInstance().locale;if(-1===this.loaded_.indexOf(a)){var b=sre.Engine.getInstance().mode===sre.Engine.Mode.ASYNC;b&&(sre.Engine.getInstance().mode=sre.Engine.Mode.SYNC);this.loaded_.push(a);this.retrieveMaps(a);b&&(sre.Engine.getInstance().mode=sre.Engine.Mode.ASYNC)}};sre.MathMap.toFetch_=0;sre.Engine.registerTest(function(){return sre.MathMap.getInstance()&&!sre.MathMap.toFetch_}); +sre.MathMap.prototype.retrieveFiles=function(a){a=sre.BaseUtil.makePath(sre.SystemExternal.jsonPath)+a+".js";switch(sre.Engine.getInstance().mode){case sre.Engine.Mode.ASYNC:sre.MathMap.toFetch_++;var b=goog.bind(this.parseMaps,this);sre.MathMap.fromFile_(a,function(c,d){sre.MathMap.toFetch_--;c||b(d)});break;case sre.Engine.Mode.HTTP:sre.MathMap.toFetch_++;this.getJsonAjax_(a);break;default:a=sre.MathMap.loadFile(a),this.parseMaps(a)}}; +sre.MathMap.prototype.parseMaps=function(a){a=JSON.parse(a);this.addMaps(a)};sre.MathMap.prototype.addMaps=function(a,b){for(var c=0,d;d=Object.keys(a)[c];c++){var e=d.split("/");b&&b!==e[0]||a[d].forEach(this.addRules[e[1]])}};sre.MathMap.prototype.retrieveMaps=function(a){sre.AlphabetGenerator.generate(a,this.store);sre.Engine.getInstance().isIE&&sre.Engine.getInstance().mode===sre.Engine.Mode.HTTP?this.getJsonIE_(a):this.retrieveFiles(a)}; +sre.MathMap.prototype.getJsonIE_=function(a,b){var c=b||1;sre.BrowserUtil.mapsForIE?this.addMaps(sre.BrowserUtil.mapsForIE,a):5>=c&&setTimeout(goog.bind(function(){this.getJsonIE_(a,c++)},this),300)};sre.MathMap.fromFile_=function(a,b){return sre.SystemExternal.fs.readFile(a,"utf8",b)};sre.MathMap.loadFile=function(a){try{return sre.MathMap.readJSON_(a)}catch(b){console.error("Unable to load file: "+a+"\n"+b)}return"{}"};sre.MathMap.readJSON_=function(a){return sre.SystemExternal.fs.readFileSync(a)}; +sre.MathMap.prototype.getJsonAjax_=function(a){var b=new XMLHttpRequest,c=goog.bind(this.parseMaps,this);b.onreadystatechange=function(){4===b.readyState&&(sre.MathMap.toFetch_--,200===b.status&&c(b.responseText))};b.open("GET",a,!0);b.send()};sre.StoreUtil={};sre.StoreUtil.nodeCounter=function(a,b){var c=a.length,d=0,e=b;b||(e="");return function(){db&&0a}; +sre.ClearspeakUtil.hasPreference=function(a){return sre.Engine.getInstance().style===a};sre.ClearspeakUtil.simpleExpression=function(){return new sre.SemanticAnnotator("clearspeak",function(a){return sre.ClearspeakUtil.isSimpleExpression(a)?"simple":""})};sre.ClearspeakUtil.simpleNode=function(a){if(!a.hasAttribute("annotation"))return!1;a=a.getAttribute("annotation");return!!/clearspeak:simple$|clearspeak:simple;/.exec(a)}; +sre.ClearspeakUtil.simpleCell_=function(a){if(sre.ClearspeakUtil.simpleNode(a))return!0;if(a.tagName!==sre.SemanticAttr.Type.SUBSCRIPT)return!1;a=a.childNodes[0].childNodes;var b=a[1];return a[0].tagName===sre.SemanticAttr.Type.IDENTIFIER&&(sre.ClearspeakUtil.isInteger_(b)||b.tagName===sre.SemanticAttr.Type.INFIXOP&&b.hasAttribute("role")&&b.getAttribute("role")===sre.SemanticAttr.Role.IMPLICIT&&sre.ClearspeakUtil.allIndices_(b))}; +sre.ClearspeakUtil.isInteger_=function(a){return a.tagName===sre.SemanticAttr.Type.NUMBER&&a.hasAttribute("role")&&a.getAttribute("role")===sre.SemanticAttr.Role.INTEGER};sre.ClearspeakUtil.allIndices_=function(a){return sre.XpathUtil.evalXPath("children/*",a).every(function(b){return sre.ClearspeakUtil.isInteger_(b)||b.tagName===sre.SemanticAttr.Type.IDENTIFIER})}; +sre.ClearspeakUtil.allCellsSimple=function(a){return sre.XpathUtil.evalXPath(a.tagName===sre.SemanticAttr.Type.MATRIX?"children/row/children/cell/children/*":"children/line/children/*",a).every(sre.ClearspeakUtil.simpleCell_)?[a]:[]};sre.ClearspeakUtil.isSmallVulgarFraction=function(a){return sre.NumbersUtil.vulgarFractionSmall(a,20,11)?[a]:[]}; +sre.ClearspeakUtil.isUnitExpression=function(a){return a.type===sre.SemanticAttr.Type.TEXT||a.type===sre.SemanticAttr.Type.PUNCTUATED&&a.role===sre.SemanticAttr.Role.TEXT&&sre.ClearspeakUtil.isNumber_(a.childNodes[0])&&sre.ClearspeakUtil.allTextLastContent_(a.childNodes.slice(1))||a.type===sre.SemanticAttr.Type.IDENTIFIER&&a.role===sre.SemanticAttr.Role.UNIT||a.type===sre.SemanticAttr.Type.INFIXOP&&(a.role===sre.SemanticAttr.Role.IMPLICIT||a.role===sre.SemanticAttr.Role.UNIT)}; +sre.ClearspeakUtil.allTextLastContent_=function(a){for(var b=0;b2],self::infixop,@role="unit",name(children/*[1])="number",children/*[1][text()=1]'.split(","),'Rule,unit-divide,default,[n] children/*[1]; [t] "per"; [n] children/*[2] (grammar:singularUnit),self::fraction,@role="unit"'.split(","),'Rule{currency{default{[m] children/*[position()>1]; [n] children/*[1];{self::infixop{contains(@annotation, "clearspeak:unit"){children/*[1][@role="unit"]{CQFfirstCurrency'.split("{"), +'Rule;currency;Currency_Position;[m] children/*;self::infixop;contains(@annotation, "clearspeak:unit")'.split(";"),["SpecializedRule","currency","Currency_Position","Currency_Prefix"],'Rule{currency{Currency_Prefix{[n] children/*[last()]; [m] children/*[position()2{./children/punctuation[@role="ellipsis"]'.split("{"), +'Rule{multi-equality{default{[t] "equation sequence"; [m] children/* (context:"part",ctxtFunc:CTXFnodeCounter,sepFunc:CTXFcontentIterator){self::relseq[@role="equality"]{count(./children/*)>2'.split("{"),'Rule,equality,default,[t] "equation"; [t] "left hand side"; [n] children/*[1];[p] (pause:200); [n] content/*[1] (pause:200);[t] "right hand side"; [n] children/*[2],self::relseq[@role="equality"],count(./children/*)=2'.split(","),'Rule,simple-equality,default,[n] children/*[1]; [p] (pause:200); [n] content/*[1] (pause:200);[n] children/*[2],self::relseq[@role="equality"],count(./children/*)=2,./children/identifier or ./children/number'.split(","), +'Rule,simple-equality2,default,[n] children/*[1]; [p] (pause:200); [n] content/*[1] (pause:200);[n] children/*[2],self::relseq[@role="equality"],count(./children/*)=2,./children/function or ./children/appl'.split(","),["Rule","relseq","default","[m] children/* (sepFunc:CTXFcontentIterator)","self::relseq"],'Rule;implicit;default;[m] children/*;self::infixop;@role="implicit";children/*[1][@role="latinletter"] or children/*[1][@role="greekletter"] or children/*[1][@role="otherletter"] or name(children/*[1])="number";children/*[2][@role="latinletter"] or children/*[2][@role="greekletter"] or children/*[2][@role="otherletter"] or name(children/*[2])="number"'.split(";"), +["Rule","binary-operation","default","[p] (pause:100); [m] children/* (sepFunc:CTXFcontentIterator); [p] (pause:100);","self::infixop"],'Rule,variable-addition,default,[t] "sum with variable number of summands";[p] (pause:400); [m] children/* (sepFunc:CTXFcontentIterator),self::infixop[@role="addition"],count(children/*)>2,children/punctuation[@role="ellipsis"]'.split(","),["Rule","prefix","default",'[t] "prefix"; [n] text(); [t] "of" (pause 150);[n] children/*[1]',"self::prefixop"],'Rule,negative,default,[t] "negative"; [n] children/*[1],self::prefixop,self::prefixop[@role="negative"]'.split(","), +["Rule","postfix","default",'[n] children/*[1]; [t] "postfix"; [n] text() (pause 300)',"self::postfixop"],["Rule","identifier","default","[n] text()","self::identifier"],["Rule","number","default","[n] text()","self::number"],'Rule{font{default{[t] @font; [n] . (grammar:ignoreFont=@font){self::*{@font{not(contains(@grammar, "ignoreFont")){@font!="normal"'.split("{"),'Rule{font-identifier-short{default{[t] @font; [n] CQFhideFont; [t] CSFshowFont{self::identifier{string-length(text())=1{@font{@font="normal"{""=translate(text(), "abcdefghijklmnopqrstuvwxyz\u03b1\u03b2\u03b3\u03b4\u03b5\u03b6\u03b7\u03b8\u03b9\u03ba\u03bb\u03bc\u03bd\u03be\u03bf\u03c0\u03c1\u03c2\u03c3\u03c4\u03c5\u03c6\u03c7\u03c8\u03c9ABCDEFGHIJKLMNOPQRSTUVWXYZ\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u039f\u03a0\u03a1\u03a3\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9", ""){@role!="unit"'.split("{"), +'Rule{font-identifier{default{[t] @font; [n] . (grammar:ignoreFont=@font){self::identifier{string-length(text())=1{@font{@font="normal"{not(contains(@grammar, "ignoreFont")){@role!="unit"'.split("{"),'Rule;omit-font;default;[n] . (grammar:ignoreFont=@font);self::identifier;string-length(text())=1;@font;not(contains(@grammar, "ignoreFont"));@font="italic"'.split(";"),'Rule,simple-fraction,default,[p] (pause:100); [n] children/*[1] (rate:0.35); [t] "over"; [n] children/*[2] (rate:0.35); [p] (pause:100),self::fraction,name(children/*[1])="number" or name(children/*[1])="identifier",name(children/*[2])="number" or name(children/*[2])="identifier"'.split(","), +'Rule;vulgar-fraction;default;[t] CSFvulgarFraction;self::fraction;@role="vulgar";CQFvulgarFractionSmall'.split(";"),["Rule","fraction","default",'[p] (pause:250); [n] children/*[1] (rate:0.35); [p] (pause:250); [t] "divided by"; [p] (pause:250); [n] children/*[2] (rate:0.35); [p] (pause:250)',"self::fraction"],["Rule","superscript","default",'[n] children/*[1]; [t] "super"; [n] children/*[2] (pitch:0.35);[p] (pause:300)',"self::superscript"],["Rule","subscript","default",'[n] children/*[1]; [t] "sub"; [n] children/*[2] (pitch:-0.35);[p] (pause:300)', +"self::subscript"],'Rule,ellipsis,default,[p] (pause:200); [t] "ellipsis"; [p] (pause:300),self::punctuation,self::punctuation[@role="ellipsis"]'.split(","),'Rule;fence-single;default;[n] text();self::punctuation;self::punctuation[@role="openfence"]'.split(";"),["Alias","fence-single","self::punctuation",'self::punctuation[@role="closefence"]'],["Alias","fence-single","self::punctuation",'self::punctuation[@role="vbar"]'],["Alias","fence-single","self::punctuation",'self::punctuation[@role="application"]'], +["Rule","omit-empty","default","[p] (pause:100)","self::empty"],'Rule,fences-open-close,default,[p] (pause:200); [n] children/*[1] (rate:0.35); [p] (pause:200),self::fenced,@role="leftright"'.split(","),'Rule,fences-open-close-in-appl,default,[p] (pause:200); [n] children/*[1]; [p] (pause:200);,self::fenced[@role="leftright"],./parent::children/parent::appl'.split(","),'Rule,fences-neutral,default,[p] (pause:100); [t] "absolute value of"; [n] children/*[1];[p] (pause:350);,self::fenced,self::fenced[@role="neutral"]'.split(","), +["Rule","omit-fences","default","[p] (pause:500); [n] children/*[1]; [p] (pause:200);","self::fenced"],["Rule","matrix","default",'[t] "matrix"; [m] children/* (ctxtFunc:CTXFnodeCounter,context:"row",pause:100)',"self::matrix"],["Rule","matrix-row","default",'[m] children/* (ctxtFunc:CTXFnodeCounter,context:"column",pause:100)','self::row[@role="matrix"]'],["Rule","matrix-cell","default","[n] children/*[1]",'self::cell[@role="matrix"]'],["Rule","vector","default",'[t] "vector"; [m] children/* (ctxtFunc:CTXFnodeCounter,context:"element",pause:100)', +"self::vector"],["Rule","cases","default",'[t] "case statement"; [m] children/* (ctxtFunc:CTXFnodeCounter,context:"case",pause:100)',"self::cases"],["Rule","cases-row","default","[m] children/*",'self::row[@role="cases"]'],["Rule","cases-cell","default","[n] children/*[1]",'self::cell[@role="cases"]'],["Rule","row","default",'[m] ./* (ctxtFunc:CTXFnodeCounter,context:"column",pause:100)',"self::row"],'Rule{cases-end{default{[t] "case statement"; [m] children/* (ctxtFunc:CTXFnodeCounter,context:"case",pause:100);[t] "end cases"{self::cases{following-sibling::*'.split("{"), +["Rule","multiline","default",'[t] "multiline equation";[m] children/* (ctxtFunc:CTXFnodeCounter,context:"line",pause:100)',"self::multiline"],["Rule","line","default","[m] children/*","self::line"],["Rule","table","default",'[t] "multiline equation";[m] children/* (ctxtFunc:CTXFnodeCounter,context:"row",pause:200)',"self::table"],["Rule","table-row","default","[m] children/* (pause:100)",'self::row[@role="table"]'],["Alias","cases-cell",'self::cell[@role="table"]'],'Rule,end-punct,default,[m] children/*; [p] (pause:300),self::punctuated,@role="endpunct"'.split(","), +'Rule,start-punct,default,[n] content/*[1]; [p] (pause:200); [m] children/*[position()>1],self::punctuated,@role="startpunct"'.split(","),'Rule,integral-punct,default,[n] children/*[1] (rate:0.2); [n] children/*[3] (rate:0.2),self::punctuated,@role="integral"'.split(","),["Rule","punctuated","default","[m] children/* (pause:100)","self::punctuated"],["Rule","function","default","[n] text()","self::function"],["Rule","appl","default","[n] children/*[1]; [n] content/*[1]; [n] children/*[2]","self::appl"], +'Rule,sum-only,default,[n] children/*[1]; [t] "from"; [n] children/*[2]; [t] "to";[n] children/*[3],self::limboth,@role="sum" or @role="integral"'.split(","),["Rule","limboth","default",'[n] children/*[1]; [p] (pause 100); [t] "over"; [n] children/*[2];[t] "under"; [n] children/*[3]; [p] (pause 250);',"self::limboth"],["Rule","limlower","default",'[n] children/*[1]; [t] "over"; [n] children/*[2];',"self::limlower"],["Rule","limupper","default",'[n] children/*[1]; [t] "under"; [n] children/*[2];', +"self::limupper"],["Rule","largeop","default","[n] text()","self::largeop"],["Rule","bigop","default",'[n] children/*[1]; [p] (pause 100); [t] "over"; [n] children/*[2];[p] (pause 250);',"self::bigop"],["Rule","integral","default","[n] children/*[1]; [p] (pause 100); [n] children/*[2];[p] (pause 200); [n] children/*[3] (rate:0.35);","self::integral"],["Rule","sqrt","default",'[t] "Square root of"; [n] children/*[1] (rate:0.35); [p] (pause:400)',"self::sqrt"],'Rule,square,default,[n] children/*[1]; [t] "squared" (pitch:0.35); [p] (pause:200),self::superscript,children/*[2][text()=2],name(./children/*[1])!="text"'.split(","), +'Rule,cube,default,[n] children/*[1]; [t] "cubed" (pitch:0.35); [p] (pause:200),self::superscript,children/*[2][text()=3],name(./children/*[1])!="text"'.split(","),["Rule","root","default",'[t] "root of order"; [n] children/*[1];[t] "over"; [n] children/*[1] (rate:0.35); [p] (pause:400)',"self::root"],"Rule,text-no-mult,default,[n] children/*[1]; [p] (pause:200); [n] children/*[2],self::infixop,children/text".split(","),["Rule","text","default","[n] text(); [p] (pause:200)","self::text"],'Rule;unit;default;[t] text() (annotation:unit, preprocess);self::identifier;@role="unit"'.split(";"), +'Rule,unit-square,default,[t] "square"; [n] children/*[1],self::superscript,@role="unit",children/*[2][text()=2],name(children/*[1])="identifier"'.split(","),'Rule,unit-cubic,default,[t] "cubic"; [n] children/*[1],self::superscript,@role="unit",children/*[2][text()=3],name(children/*[1])="identifier"'.split(","),'Rule,reciprocal,default,[t] "reciprocal"; [n] children/*[1],self::superscript,@role="unit",name(children/*[1])="identifier",name(children/*[2])="prefixop",children/*[2][@role="negative"],children/*[2]/children/*[1][text()=1],count(preceding-sibling::*)=0 or preceding-sibling::*[@role!="unit"]'.split(","), +'Rule,reciprocal,default,[t] "per"; [n] children/*[1],self::superscript,@role="unit",name(children/*[1])="identifier",name(children/*[2])="prefixop",children/*[2][@role="negative"],children/*[2]/children/*[1][text()=1],preceding-sibling::*[@role="unit"]'.split(","),'Rule;unit-combine;default;[m] children/*;self::infixop;@role="unit"'.split(";"),'Rule,unit-divide,default,[n] children/*[1] (pitch:0.3); [t] "per"; [n] children/*[2] (pitch:-0.3),self::fraction,@role="unit"'.split(",")]};sre.MathspeakFrenchUtil={};sre.MathspeakFrenchUtil.smallRoot=function(a){if(!a.childNodes||0===a.childNodes.length||!a.childNodes[0].childNodes)return[];var b=a.childNodes[0].childNodes[0].textContent;if(!/^\d+$/.test(b))return[];b=parseInt(b,10);return 1=b?[a]:[]};sre.MathspeakFrenchUtil.baselineVerbose=function(a){return sre.MathspeakUtil.baselineVerbose(a).replace(/\-$/,"")};sre.MathspeakFrenchUtil.baselineBrief=function(a){return sre.MathspeakUtil.baselineBrief(a).replace(/\-$/,"")}; +sre.MathspeakFrenchUtil.leftSuperscriptVerbose=function(a){return sre.MathspeakUtil.superscriptVerbose(a).replace(/^exposant/,"exposant gauche")};sre.MathspeakFrenchUtil.leftSubscriptVerbose=function(a){return sre.MathspeakUtil.subscriptVerbose(a).replace(/^indice/,"indice gauche")};sre.MathspeakFrenchUtil.leftSuperscriptBrief=function(a){return sre.MathspeakUtil.superscriptBrief(a).replace(/^sup/,"sup gauche")}; +sre.MathspeakFrenchUtil.leftSubscriptBrief=function(a){return sre.MathspeakUtil.subscriptBrief(a).replace(/^sub/,"sub gauche")};sre.MathspeakFrench={locale:"fr",domain:"mathspeak",functions:[["CQF","CQFspaceoutNumber",sre.MathspeakUtil.spaceoutNumber],["CQF","CQFspaceoutIdentifier",sre.MathspeakUtil.spaceoutIdentifier],["CSF","CSFspaceoutText",sre.MathspeakUtil.spaceoutText],["CSF","CSFopenFracVerbose",sre.MathspeakUtil.openingFractionVerbose],["CSF","CSFcloseFracVerbose",sre.MathspeakUtil.closingFractionVerbose],["CSF","CSFoverFracVerbose",sre.MathspeakUtil.overFractionVerbose],["CSF","CSFopenFracBrief",sre.MathspeakUtil.openingFractionBrief], +["CSF","CSFcloseFracBrief",sre.MathspeakUtil.closingFractionBrief],["CSF","CSFopenFracSbrief",sre.MathspeakUtil.openingFractionSbrief],["CSF","CSFcloseFracSbrief",sre.MathspeakUtil.closingFractionSbrief],["CSF","CSFoverFracSbrief",sre.MathspeakUtil.overFractionSbrief],["CSF","CSFvulgarFrFraction",sre.NumbersUtil.vulgarFraction],["CQF","CQFvulgarFractionSmall",sre.MathspeakUtil.isSmallVulgarFraction],["CSF","CSFopenRadicalVerbose",sre.MathspeakUtil.openingRadicalVerbose],["CSF","CSFcloseRadicalVerbose", +sre.MathspeakUtil.closingRadicalVerbose],["CSF","CSFindexRadicalVerbose",sre.MathspeakUtil.indexRadicalVerbose],["CSF","CSFopenRadicalBrief",sre.MathspeakUtil.openingRadicalBrief],["CSF","CSFcloseRadicalBrief",sre.MathspeakUtil.closingRadicalBrief],["CSF","CSFindexRadicalBrief",sre.MathspeakUtil.indexRadicalBrief],["CSF","CSFopenRadicalSbrief",sre.MathspeakUtil.openingRadicalSbrief],["CSF","CSFindexRadicalSbrief",sre.MathspeakUtil.indexRadicalSbrief],["CQF","CQFisSmallRoot",sre.MathspeakFrenchUtil.smallRoot], +["CSF","CSFsuperscriptVerbose",sre.MathspeakUtil.superscriptVerbose],["CSF","CSFsuperscriptBrief",sre.MathspeakUtil.superscriptBrief],["CSF","CSFsubscriptVerbose",sre.MathspeakUtil.subscriptVerbose],["CSF","CSFsubscriptBrief",sre.MathspeakUtil.subscriptBrief],["CSF","CSFbaselineVerbose",sre.MathspeakFrenchUtil.baselineVerbose],["CSF","CSFbaselineBrief",sre.MathspeakFrenchUtil.baselineBrief],["CSF","CSFleftsuperscriptVerbose",sre.MathspeakFrenchUtil.leftSuperscriptVerbose],["CSF","CSFleftsubscriptVerbose", +sre.MathspeakFrenchUtil.leftSubscriptVerbose],["CSF","CSFrightsuperscriptVerbose",sre.MathspeakUtil.superscriptVerbose],["CSF","CSFrightsubscriptVerbose",sre.MathspeakUtil.subscriptVerbose],["CSF","CSFleftsuperscriptBrief",sre.MathspeakFrenchUtil.leftSuperscriptBrief],["CSF","CSFleftsubscriptBrief",sre.MathspeakFrenchUtil.leftSubscriptBrief],["CSF","CSFrightsuperscriptBrief",sre.MathspeakUtil.superscriptBrief],["CSF","CSFrightsubscriptBrief",sre.MathspeakUtil.subscriptBrief],["CSF","CSFunderscript", +sre.MathspeakUtil.nestedUnderscore],["CSF","CSFoverscript",sre.MathspeakUtil.nestedOverscore],["CTXF","CTXFordinalCounter",sre.NumbersUtil.ordinalCounter],["CTXF","CTXFcontentIterator",sre.StoreUtil.contentIterator],["CQF","CQFdetIsSimple",sre.MathspeakUtil.determinantIsSimple],["CSF","CSFRemoveParens",sre.MathspeakUtil.removeParens],["CQF","CQFresetNesting",sre.MathspeakUtil.resetNestingDepth],["CQF","CQFisLogarithm",sre.ClearspeakUtil.isLogarithmWithBase]],rules:['Rule;collapsed;default;[n] . (engine:modality=summary,grammar:collapsed);self::*;@alternative;not(contains(@grammar, "collapsed"));self::*;self::*;self::*;self::*;self::*'.split(";"), +["SpecializedRule","collapsed","default","brief"],["SpecializedRule","collapsed","brief","sbrief"],"Rule;stree;default;[n] ./*[1];self::stree;CQFresetNesting".split(";"),["Rule","unknown","default","[n] text()","self::unknown"],'Rule;protected;default;[t] text();self::*;@role="protected"'.split(";"),["Rule","omit-empty","default","[p] (pause:100)","self::empty"],'Rule;blank-empty;default;[t] "vide";self::empty;count(../*)=1;name(../..)="cell" or name(../..)="line"'.split(";"),'Rule{font{default{[n] . (grammar:ignoreFont=@font); [t] @font (grammar:localFont){self::*{@font{not(contains(@grammar, "ignoreFont")){@font!="normal"'.split("{"), +'Rule{font-identifier-short{default{[n] . (grammar:ignoreFont=@font); [t] @font (grammar:localFont);{self::identifier{string-length(text())=1{@font{not(contains(@grammar, "ignoreFont")){@font="normal"{""=translate(text(), "abcdefghijklmnopqrstuvwxyz\u03b1\u03b2\u03b3\u03b4\u03b5\u03b6\u03b7\u03b8\u03b9\u03ba\u03bb\u03bc\u03bd\u03be\u03bf\u03c0\u03c1\u03c2\u03c3\u03c4\u03c5\u03c6\u03c7\u03c8\u03c9ABCDEFGHIJKLMNOPQRSTUVWXYZ\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u039f\u03a0\u03a1\u03a3\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9", ""){@role!="unit"'.split("{"), +'Rule{font-identifier{default{[n] . (grammar:ignoreFont=@font); [t] @font (grammar:localFont){self::identifier{string-length(text())=1{@font{@font="normal"{not(contains(@grammar, "ignoreFont")){@role!="unit"'.split("{"),'Rule;omit-font;default;[n] . (grammar:ignoreFont=@font);self::identifier;string-length(text())=1;@font;not(contains(@grammar, "ignoreFont"));@font="italic"'.split(";"),["Rule","number","default","[n] text()","self::number"],'Rule,mixed-number,default,[n] children/*[1]; [t] "et"; [n] children/*[2]; ,self::number,@role="mixed"'.split(","), +'Rule{number-with-chars{default{[t] "nombre"; [m] CQFspaceoutNumber{self::number{"" != translate(text(), "0123456789.,", ""){text() != translate(text(), "0123456789.,", "")'.split("{"),'Rule{number-as-upper-word{default{[t] "MotMajuscule"; [t] CSFspaceoutText{self::number{string-length(text())>1{text()=translate(text(), "abcdefghijklmnopqrstuvwxyz\u03b1\u03b2\u03b3\u03b4\u03b5\u03b6\u03b7\u03b8\u03b9\u03ba\u03bb\u03bc\u03bd\u03be\u03bf\u03c0\u03c1\u03c2\u03c3\u03c4\u03c5\u03c6\u03c7\u03c8\u03c9", "ABCDEFGHIJKLMNOPQRSTUVWXYZ\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u039f\u03a0\u03a1\u03a3\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9"){""=translate(text(), "ABCDEFGHIJKLMNOPQRSTUVWXYZ\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u039f\u03a0\u03a1\u03a3\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9","")'.split("{"), +'Rule{number-baseline{default{[t] "position de base"; [n] . (grammar:baseline){self::number{not(contains(@grammar, "ignoreFont")){preceding-sibling::identifier{not(contains(@grammar, "baseline")){preceding-sibling::*[1][@role="latinletter" or @role="greekletter" or @role="otherletter"]{parent::*/parent::infixop[@role="implicit"]'.split("{"),["SpecializedRule","number-baseline","default","brief",'[t] "base"; [n] . (grammar:baseline)'],["SpecializedRule","number-baseline","brief","sbrief"],'Rule{number-baseline-font{default{[t] "position de base"; [n] . (grammar:ignoreFont=@font); [t] @font (grammar:localFont){self::number{@font{not(contains(@grammar, "ignoreFont")){@font!="normal"{preceding-sibling::identifier{preceding-sibling::*[@role="latinletter" or @role="greekletter" or @role="otherletter"]{parent::*/parent::infixop[@role="implicit"]'.split("{"), +["SpecializedRule","number-baseline-font","default","brief",'[t] "base"; [n] . (grammar:ignoreFont=@font); [t] @font (grammar:localFont)'],["SpecializedRule","number-baseline-font","brief","sbrief"],'Rule;identifier;default;[m] CQFspaceoutIdentifier;self::identifier;string-length(text())>1;@role!="unit";@role!="protected";not(@font) or @font="normal" or contains(@grammar, "ignoreFont");text()!=translate(text(), "abcdefghijklmnopqrstuvwxyz\u03b1\u03b2\u03b3\u03b4\u03b5\u03b6\u03b7\u03b8\u03b9\u03ba\u03bb\u03bc\u03bd\u03be\u03bf\u03c0\u03c1\u03c2\u03c3\u03c4\u03c5\u03c6\u03c7\u03c8\u03c9ABCDEFGHIJKLMNOPQRSTUVWXYZ\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u039f\u03a0\u03a1\u03a3\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9", "")'.split(";"), +["Rule","identifier","default","[n] text()","self::identifier"],'Rule,negative,default,[t] "n\u00e9gatif"; [n] children/*[1],self::prefixop,@role="negative",children/identifier'.split(","),["Aliases","negative","self::prefixop",'@role="negative"',"children/number"],["Aliases","negative","self::prefixop",'@role="negative"','children/fraction[@role="vulgar"]'],'Rule,negative,default,[t] "n\u00e9gatif"; [n] children/*[1],self::prefixop,@role="negative"'.split(","),["Rule","prefix","default","[m] content/*; [n] children/*[1]", +"self::prefixop"],["Rule","postfix","default","[n] children/*[1]; [m] content/*","self::postfixop"],["Rule","binary-operation","default","[m] children/* (sepFunc:CTXFcontentIterator);","self::infixop"],'Rule;implicit;default;[m] children/*;self::infixop;@role="implicit"'.split(";"),["Aliases","implicit","self::infixop",'@role="leftsuper" or @role="leftsub" or @role="rightsuper" or @role="rightsub"'],'Rule,subtraction,default,[m] children/* (separator:"moins");,self::infixop,@role="subtraction"'.split(","), +["Rule","function-unknown","default","[n] children/*[1]; [n] children/*[2]","self::appl"],'Rule,function-prefix,default,[n] children/*[1]; [n] children/*[2],self::appl,children/*[1][@role="prefix function"]'.split(","),'Rule,fences-open-close,default,[n] content/*[1]; [n] children/*[1]; [n] content/*[2],self::fenced,@role="leftright"'.split(","),'Rule,fences-neutral,default,[t] "d\u00e9but valeur absolue"; [n] children/*[1]; [t] "fin valeur absolue",self::fenced,@role="neutral",content/*[1][text()]="|" or content/*[1][text()]="\u2758" or content/*[1][text()]="\uff5c"'.split(","), +["SpecializedRule","fences-neutral","default","sbrief",'[t] "valeur absolue"; [n] children/*[1]; [t] "fin valeur absolue"'],'Rule,fences-neutral,default,[n] content/*[1]; [n] children/*[1]; [n] content/*[2],self::fenced,@role="neutral"'.split(","),'Rule,fences-set,default,[t] "d\u00e9but ensemble"; [n] children/*[1]; [t] "fin ensemble",self::fenced,@role="set empty" or @role="set extended" or @role="set singleton" or @role="set collection",not(name(../..)="appl")'.split(","),["SpecializedRule","fences-set", +"default","sbrief",'[t] "ensemble"; [n] children/*[1]; [t] "fin ensemble"'],["Rule","text","default","[n] text()","self::text"],'Rule;factorial;default;[t] "factorielle";self::punctuation;text()="!";name(preceding-sibling::*[1])!="text"'.split(";"),'Rule;minus;default;[t] "moins";self::operator;text()="-"'.split(";"),'Rule;single-prime;default;[t] "prime";self::punctuated;@role="prime";count(children/*)=1'.split(";"),'Rule;double-prime;default;[t] "double prime";self::punctuated;@role="prime";count(children/*)=2'.split(";"), +'Rule;triple-prime;default;[t] "triple prime";self::punctuated;@role="prime";count(children/*)=3'.split(";"),'Rule;quadruple-prime;default;[t] "quadruple prime";self::punctuated;@role="prime";count(children/*)=4'.split(";"),'Rule,counted-prime,default,[t] count(children/*); [t] "prime",self::punctuated,@role="prime"'.split(","),["Rule","fraction","default","[t] CSFopenFracVerbose; [n] children/*[1]; [t] CSFoverFracVerbose; [n] children/*[2]; [t] CSFcloseFracVerbose","self::fraction"],["Rule","fraction", +"brief","[t] CSFopenFracBrief; [n] children/*[1]; [t] CSFoverFracVerbose; [n] children/*[2]; [t] CSFcloseFracBrief","self::fraction"],["Rule","fraction","sbrief","[t] CSFopenFracSbrief; [n] children/*[1]; [t] CSFoverFracSbrief; [n] children/*[2]; [t] CSFcloseFracSbrief","self::fraction"],'Rule;vulgar-fraction;default;[t] CSFvulgarFrFraction;self::fraction;@role="vulgar";CQFvulgarFractionSmall'.split(";"),["SpecializedRule","vulgar-fraction","default","brief"],["SpecializedRule","vulgar-fraction", +"default","sbrief"],'Rule,continued-fraction-outer,default,[t] "fraction continue"; [n] children/*[1];[t] "sur"; [n] children/*[2],self::fraction,not(ancestor::fraction),children/*[2]/descendant-or-self::*[@role="ellipsis" and not(following-sibling::*)]'.split(","),["SpecializedRule","continued-fraction-outer","default","brief",'[t] "frac continue"; [n] children/*[1];[t] "sur"; [n] children/*[2]'],["SpecializedRule","continued-fraction-outer","brief","sbrief"],'Rule,continued-fraction-inner,default,[t] "d\u00e9but fraction"; [n] children/*[1];[t] "sur"; [n] children/*[2],self::fraction,ancestor::fraction,children/*[2]/descendant-or-self::*[@role="ellipsis" and not(following-sibling::*)]'.split(","), +["SpecializedRule","continued-fraction-inner","default","brief",'[t] "d\u00e9but frac"; [n] children/*[1];[t] "sur"; [n] children/*[2]'],["SpecializedRule","continued-fraction-inner","brief","sbrief",'[t] "frac"; [n] children/*[1];[t] "sur"; [n] children/*[2]'],["Rule","sqrt","default","[t] CSFopenRadicalVerbose; [n] children/*[1]; [t] CSFcloseRadicalVerbose","self::sqrt"],["Rule","sqrt","brief","[t] CSFopenRadicalBrief; [n] children/*[1]; [t] CSFcloseRadicalBrief","self::sqrt"],["Rule","sqrt","sbrief", +"[t] CSFopenRadicalSbrief; [n] children/*[1]; [t] CSFcloseRadicalBrief","self::sqrt"],"Rule,root-small,default,[t] CSFopenRadicalVerbose; [n] children/*[2]; [t] CSFcloseRadicalVerbose,self::root,CQFisSmallRoot".split(","),"Rule,root-small,brief,[t] CSFopenRadicalBrief; [n] children/*[2]; [t] CSFcloseRadicalBrief,self::root,CQFisSmallRoot".split(","),"Rule,root-small,sbrief,[t] CSFopenRadicalSbrief; [n] children/*[2]; [t] CSFcloseRadicalBrief,self::root,CQFisSmallRoot".split(","),["Rule","root","default", +"[t] CSFindexRadicalVerbose; [n] children/*[1];[t] CSFopenRadicalVerbose; [n] children/*[2]; [t] CSFcloseRadicalVerbose","self::root"],["Rule","root","brief","[t] CSFindexRadicalBrief; [n] children/*[1];[t] CSFopenRadicalBrief; [n] children/*[2]; [t] CSFcloseRadicalBrief","self::root"],["Rule","root","sbrief","[t] CSFindexRadicalSbrief; [n] children/*[1];[t] CSFopenRadicalSbrief; [n] children/*[2]; [t] CSFcloseRadicalBrief","self::root"],'Rule,limboth,default,[n] children/*[1]; [t] "d\u00e9but"; [t] CSFunderscript; [n] children/*[2];[t] "d\u00e9but"; [t] CSFoverscript; [n] children/*[3],self::limboth,name(../..)="underscore" or name(../..)="overscore",following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(","), +'Rule,limlower,default,[n] children/*[1]; [t] "d\u00e9but"; [t] CSFunderscript; [n] children/*[2];,self::limlower,name(../..)="underscore" or name(../..)="overscore",following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(","),'Rule,limupper,default,[n] children/*[1]; [t] "d\u00e9but"; [t] CSFoverscript; [n] children/*[2];,self::limupper,name(../..)="underscore" or name(../..)="overscore",following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(","),'Aliases;limlower;self::underscore;@role="limit function";name(../..)="underscore" or name(../..)="overscore";following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(";"), +'Aliases;limlower;self::underscore;children/*[2][@role!="underaccent"];name(../..)="underscore" or name(../..)="overscore";following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(";"),'Aliases;limupper;self::overscore;children/*[2][@role!="overaccent"];name(../..)="underscore" or name(../..)="overscore";following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(";"),["Rule","limboth-end","default",'[n] children/*[1]; [t] "d\u00e9but"; [t] CSFunderscript; [n] children/*[2];[t] "d\u00e9but"; [t] CSFoverscript; [n] children/*[3]; [t] "fin scripts"', +"self::limboth"],["Rule","limlower-end","default",'[n] children/*[1]; [t] "d\u00e9but"; [t] CSFunderscript; [n] children/*[2]; [t] "fin scripts"',"self::limlower"],["Rule","limupper-end","default",'[n] children/*[1]; [t] "d\u00e9but"; [t] CSFoverscript; [n] children/*[2]; [t] "fin scripts"',"self::limupper"],["Aliases","limlower-end","self::underscore",'@role="limit function"'],["Aliases","limlower-end","self::underscore"],["Aliases","limupper-end","self::overscore"],["Rule","integral","default", +"[n] children/*[1]; [n] children/*[2]; [n] children/*[3];","self::integral"],'Rule,integral,default,[n] children/*[1]; [t] "indice inf\u00e9rieur"; [n] children/*[2];[t] "indice sup\u00e9rieur"; [n] children/*[3]; [t] "position de base";,self::limboth,@role="integral"'.split(","),["SpecializedRule","integral","default","brief",'[n] children/*[1]; [t] "inf"; [n] children/*[2];[t] "sup"; [n] children/*[3]; [t] "position de base";'],["SpecializedRule","integral","brief","sbrief"],["Rule","bigop","default", +"[n] children/*[1]; [n] children/*[2];","self::bigop"],["Rule","relseq","default","[m] children/* (sepFunc:CTXFcontentIterator)","self::relseq"],'Rule,equality,default,[n] children/*[1]; [n] content/*[1]; [n] children/*[2],self::relseq,@role="equality",count(./children/*)=2'.split(","),'Rule;multi-equality;default;[m] children/* (sepFunc:CTXFcontentIterator);self::relseq;@role="equality";count(./children/*)>2'.split(";"),["Rule","multrel","default","[m] children/* (sepFunc:CTXFcontentIterator)","self::multirel"], +["Rule","subscript","default","[n] children/*[1]; [t] CSFsubscriptVerbose; [n] children/*[2]","self::subscript"],["Rule","subscript","brief","[n] children/*[1]; [t] CSFsubscriptBrief; [n] children/*[2]","self::subscript"],["SpecializedRule","subscript","brief","sbrief"],'Rule,subscript-base,default,[n] children/*[1]; [t] "base"; [n] children/*[2],self::subscript,CQFisLogarithm,self::*,self::*,self::*'.split(","),["SpecializedRule","subscript-base","default","brief"],["SpecializedRule","subscript-base", +"default","sbrief"],'Rule,subscript-simple,brief,[n] children/*[1]; [n] children/*[2],self::subscript,name(./children/*[1])="identifier",name(./children/*[2])="number",./children/*[2][@role!="mixed"],./children/*[2][@role!="othernumber"]'.split(","),["SpecializedRule","subscript-simple","brief","sbrief"],'Rule,subscript-baseline,default,[n] children/*[1]; [t] CSFsubscriptVerbose; [n] children/*[2]; [t] CSFbaselineVerbose,self::subscript,following-sibling::*,not(name(following-sibling::subscript/children/*[1])="empty" or (name(following-sibling::infixop[@role="implicit"]/children/*[1])="subscript" and name(following-sibling::*/children/*[1]/children/*[1])="empty")) and @role!="subsup",not(following-sibling::*[@role="rightsuper" or @role="rightsub" or @role="leftsub" or @role="leftsub"])'.split(","), +["SpecializedRule","subscript-baseline","default","brief","[n] children/*[1]; [t] CSFsubscriptBrief; [n] children/*[2]; [t] CSFbaselineBrief"],["SpecializedRule","subscript-baseline","brief","sbrief"],'Aliases;subscript-baseline;self::subscript;not(following-sibling::*);ancestor::fenced|ancestor::root|ancestor::sqrt|ancestor::punctuated|ancestor::fraction;not(ancestor::punctuated[@role="leftsuper" or @role="rightsub" or @role="rightsuper" or @role="rightsub"])'.split(";"),["Aliases","subscript-baseline", +"self::subscript","not(following-sibling::*)","ancestor::relseq|ancestor::multirel",sre.MathspeakUtil.generateBaselineConstraint()],["Aliases","subscript-baseline","self::subscript","not(following-sibling::*)","@embellished"],'Rule,subscript-empty-sup,default,[n] children/*[1]; [n] children/*[2],self::subscript,name(children/*[2])="infixop",name(children/*[2][@role="implicit"]/children/*[1])="superscript",name(children/*[2]/children/*[1]/children/*[1])="empty"'.split(","),["SpecializedRule","subscript-empty-sup", +"default","brief"],["SpecializedRule","subscript-empty-sup","brief","sbrief"],["Aliases","subscript-empty-sup","self::subscript",'name(children/*[2])="superscript"','name(children/*[2]/children/*[1])="empty"'],["Rule","superscript","default","[n] children/*[1]; [t] CSFsuperscriptVerbose; [n] children/*[2]","self::superscript"],["SpecializedRule","superscript","default","brief","[n] children/*[1]; [t] CSFsuperscriptBrief; [n] children/*[2]"],["SpecializedRule","superscript","brief","sbrief"],'Rule,superscript-baseline,default,[n] children/*[1]; [t] CSFsuperscriptVerbose; [n] children/*[2];[t] CSFbaselineVerbose,self::superscript,following-sibling::*,not(name(following-sibling::superscript/children/*[1])="empty" or (name(following-sibling::infixop[@role="implicit"]/children/*[1])="superscript" and name(following-sibling::*/children/*[1]/children/*[1])="empty")) and not(following-sibling::*[@role="rightsuper" or @role="rightsub" or @role="leftsub" or @role="leftsub"])'.split(","), +["SpecializedRule","superscript-baseline","default","brief","[n] children/*[1]; [t] CSFsuperscriptBrief; [n] children/*[2];[t] CSFbaselineBrief"],["SpecializedRule","superscript-baseline","brief","sbrief"],'Aliases;superscript-baseline;self::superscript;not(following-sibling::*);ancestor::punctuated;ancestor::*/following-sibling::* and not(ancestor::punctuated[@role="leftsuper" or @role="rightsub" or @role="rightsuper" or @role="rightsub"])'.split(";"),["Aliases","superscript-baseline","self::superscript", +"not(following-sibling::*)","ancestor::fraction|ancestor::fenced|ancestor::root|ancestor::sqrt"],["Aliases","superscript-baseline","self::superscript","not(following-sibling::*)","ancestor::relseq|ancestor::multirel","not(@embellished)",sre.MathspeakUtil.generateBaselineConstraint()],'Aliases superscript-baseline self::superscript not(following-sibling::*) @embellished not(children/*[2][@role="prime"])'.split(" "),'Rule,superscript-empty-sub,default,[n] children/*[1]; [n] children/*[2],self::superscript,name(children/*[2])="infixop",name(children/*[2][@role="implicit"]/children/*[1])="subscript",name(children/*[2]/children/*[1]/children/*[1])="empty"'.split(","), +["SpecializedRule","superscript-empty-sub","default","brief"],["SpecializedRule","superscript-empty-sub","brief","sbrief"],["Aliases","superscript-empty-sub","self::superscript",'name(children/*[2])="subscript"','name(children/*[2]/children/*[1])="empty"'],'Rule,square,default,[n] children/*[1]; [t] "au carr\u00e9",self::superscript,children/*[2],children/*[2][text()=2],name(children/*[1])!="text" or not(name(children/*[1])="text" and (name(../../../punctuated[@role="text"]/..)="stree" or name(..)="stree")),name(children/*[1])!="subscript" or (name(children/*[1])="subscript" and name(children/*[1]/children/*[1])="identifier" and name(children/*[1]/children/*[2])="number" and children/*[1]/children/*[2][@role!="mixed"] and children/*[1]/children/*[2][@role!="othernumber"]),not(@embellished)'.split(","), +["SpecializedRule","square","default","brief"],["SpecializedRule","square","default","sbrief"],'Aliases;square;self::superscript;children/*[2];children/*[2][text()=2];@embellished;children/*[1][@role="prefix operator"]'.split(";"),'Rule,cube,default,[n] children/*[1]; [t] "cubique",self::superscript,children/*[2],children/*[2][text()=3],name(children/*[1])!="text" or not(name(children/*[1])="text" and (name(../../../punctuated[@role="text"]/..)="stree" or name(..)="stree")),name(children/*[1])!="subscript" or (name(children/*[1])="subscript" and name(children/*[1]/children/*[1])="identifier" and name(children/*[1]/children/*[2])="number" and children/*[1]/children/*[2][@role!="mixed"] and children/*[1]/children/*[2][@role!="othernumber"]),not(@embellished)'.split(","), +["SpecializedRule","cube","default","brief"],["SpecializedRule","cube","default","sbrief"],'Aliases;cube;self::superscript;children/*[2];children/*[2][text()=3];@embellished;children/*[1][@role="prefix operator"]'.split(";"),'Rule,prime,default,[n] children/*[1]; [n] children/*[2],self::superscript,children/*[2],children/*[2][@role="prime"]'.split(","),["SpecializedRule","prime","default","brief"],["SpecializedRule","prime","default","sbrief"],'Rule,prime-subscript,default,[n] children/*[1]/children/*[1]; [n] children/*[2]; [t] CSFsubscriptVerbose; [n] children/*[1]/children/*[2],self::superscript,children/*[2][@role="prime"],name(children/*[1])="subscript",not(following-sibling::*)'.split(","), +["SpecializedRule","prime-subscript","default","brief","[n] children/*[1]/children/*[1]; [n] children/*[2]; [t] CSFsubscriptBrief; [n] children/*[1]/children/*[2]"],["SpecializedRule","prime-subscript","brief","sbrief"],'Rule,prime-subscript-baseline,default,[n] children/*[1]/children/*[1]; [n] children/*[2]; [t] CSFsubscriptVerbose; [n] children/*[1]/children/*[2]; [t] CSFbaselineVerbose,self::superscript,children/*[2][@role="prime"],name(children/*[1])="subscript",following-sibling::*'.split(","), +["SpecializedRule","prime-subscript-baseline","default","brief","[n] children/*[1]/children/*[1]; [n] children/*[2]; [t] CSFsubscriptBrief; [n] children/*[1]/children/*[2]; [t] CSFbaselineBrief"],["SpecializedRule","prime-subscript-baseline","brief","sbrief"],'Aliases prime-subscript-baseline self::superscript children/*[2][@role="prime"] name(children/*[1])="subscript" not(following-sibling::*) @embellished'.split(" "),'Rule,prime-subscript-simple,brief,[n] children/*[1]/children/*[1]; [n] children/*[2];[n] children/*[1]/children/*[2],self::superscript,children/*[2][@role="prime"],name(children/*[1])="subscript",name(children/*[1]/children/*[1])="identifier",name(children/*[1]/children/*[2])="number",children/*[1]/children/*[2][@role!="mixed"],children/*[1]/children/*[2][@role!="othernumber"]'.split(","), +["SpecializedRule","prime-subscript-simple","brief","sbrief"],'Rule,overscore,default,[t] "suscrire"; [n] children/*[1]; [t] "avec"; [n] children/*[2],self::overscore,children/*[2][@role="overaccent"]'.split(","),'Rule,double-overscore,default,[t] "sus-suscrire"; [n] children/*[1]; [t] "avec"; [n] children/*[2],self::overscore,children/*[2][@role="overaccent"],name(children/*[1])="overscore",children/*[1]/children/*[2][@role="overaccent"]'.split(","),'Rule,underscore,default,[t] "souscrire"; [n] children/*[1]; [t] "avec"; [n] children/*[2],self::underscore,children/*[2][@role="underaccent"]'.split(","), +'Rule,double-underscore,default,[t] "sous-souscrire"; [n] children/*[1]; [t] "avec"; [n] children/*[2],self::underscore,children/*[2][@role="underaccent"],name(children/*[1])="underscore",children/*[1]/children/*[2][@role="underaccent"]'.split(","),'Rule,matrix-fence,default,[n] children/*[1];,self::fenced,count(children/*)=1,name(children/*[1])="matrix"'.split(","),["Rule","matrix","default",'[t] "d\u00e9but matrice"; [t] count(children/*); [t] "par";[t] count(children/*[1]/children/*); [m] children/* (ctxtFunc:CTXFordinalCounter,context:"rang\u00e9e "); [t] "fin matrice"', +"self::matrix"],["Rule","matrix","sbrief",'[t] "matrice"; [t] count(children/*); [t] "par";[t] count(children/*[1]/children/*); [m] children/* (ctxtFunc:CTXFordinalCounter,context:"rang\u00e9e "); [t] "fin matrice"',"self::matrix"],["Aliases","matrix","self::vector"],["Rule","matrix-row","default",'[m] children/* (ctxtFunc:CTXFordinalCounter,context:"colonne");[p] (pause: 200)',"self::row"],'Rule{row-with-label{default{[t] "avec \u00e9tiquette"; [n] content/*[1]; [t] "fin \u00e9tiquette"(pause: 200); [m] children/* (ctxtFunc:CTXFordinalCounter,context:"colonne"){self::row{content'.split("{"), +'Rule{row-with-label{brief{[t] "\u00e9tiquette"; [n] content/*[1]; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"colonne"){self::row{content'.split("{"),["SpecializedRule","row-with-label","brief","sbrief"],'Rule{row-with-text-label{sbrief{[t] "\u00e9tiquette"; [t] CSFRemoveParens;[m] children/* (ctxtFunc:CTXFordinalCounter,context:"colonne"){self::row{content{name(content/cell/children/*[1])="text"'.split("{"),'Rule;empty-row;default;[t] "vide";self::row;count(children/*)=0'.split(";"),["Rule", +"matrix-cell","default","[n] children/*[1]; [p] (pause: 300)","self::cell"],'Rule,empty-cell,default,[t] "vide"; [p] (pause: 300),self::cell,count(children/*)=0'.split(","),'Rule{determinant{default{[t] "d\u00e9but d\u00e9terminant"; [t] count(children/*); [t] "par";[t] count(children/*[1]/children/*); [t] ""; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"rang\u00e9e "); [t] "fin d\u00e9terminant"{self::matrix{@role="determinant"'.split("{"),["SpecializedRule","determinant","default","sbrief", +'[t] "d\u00e9terminant"; [t] count(children/*); [t] "par";[t] count(children/*[1]/children/*); [m] children/* (ctxtFunc:CTXFordinalCounter,context:"rang\u00e9e "); [t] "fin d\u00e9terminant"'],'Rule{determinant-simple{default{[t] "d\u00e9but d\u00e9terminant"; [t] count(children/*); [t] "par";[t] count(children/*[1]/children/*); [m] children/* (ctxtFunc:CTXFordinalCounter,context:"rang\u00e9e",grammar:simpleDet); [t] "fin d\u00e9terminant"{self::matrix{@role="determinant"{CQFdetIsSimple'.split("{"), +["SpecializedRule","determinant-simple","default","sbrief",'[t] "d\u00e9terminant"; [t] count(children/*); [t] "par";[t] count(children/*[1]/children/*); [m] children/* (ctxtFunc:CTXFordinalCounter,context:"rang\u00e9e",grammar:simpleDet); [t] "fin d\u00e9terminant"'],'Rule{row-simple{default{[m] children/*;{self::row{@role="determinant"{contains(@grammar, "simpleDet")'.split("{"),["Rule","layout","default",'[t] "d\u00e9but tableau"; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"rang\u00e9e "); [t] "fin tableau"', +"self::table"],["Rule","layout","sbrief",'[t] "tableau"; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"rang\u00e9e "); [t] "fin tableau"',"self::table"],'Rule,binomial,default,[t] "d\u00e9but binomiale"; [n] children/*[2]/children/*[1]; [t] "parmi"; [n] children/*[1]/children/*[1]; [t] "fin binomiale",self::vector,@role="binomial"'.split(","),'Rule,binomial,sbrief,[t] "binomiale"; [n] children/*[1]/children/*[1]; [t] "parmi"; [n] children/*[2]/children/*[1]; [t] "fin binomiale",self::vector,@role="binomial"'.split(","), +["Rule","cases","default",'[t] "d\u00e9but tableau"; [n] content/*[1]; [t] "\u00e9largie";[m] children/* (ctxtFunc:CTXFordinalCounter,context:"rang\u00e9e "); [t] "fin tableau"',"self::cases"],["Rule","cases","sbrief",'[t] "tableau"; [n] content/*[1]; [t] "\u00e9largie"; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"rang\u00e9e "); [t] "fin tableau"',"self::cases"],["Aliases","layout","self::multiline"],["Rule","line","default","[m] children/*","self::line"],'Rule,line-with-label,default,[t] "avec etiquette"; [n] content/*[1]; [t] "fin etiquette" (pause: 200); [m] children/*,self::line,content'.split(","), +["SpecializedRule","line-with-label","default","brief",'[t] "etiquette"; [n] content/*[1] (pause: 200); [m] children/*'],["SpecializedRule","line-with-label","brief","sbrief"],'Rule,line-with-text-label,sbrief,[t] "etiquette"; [t] CSFRemoveParens; [m] children/*,self::line,content,name(content/cell/children/*[1])="text"'.split(","),'Rule;empty-line;default;[t] "vide";self::line;count(children/*)=0;not(content)'.split(";"),["SpecializedRule","empty-line","default","brief"],["SpecializedRule","empty-line", +"brief","sbrief"],'Rule,empty-line-with-label,default,[t] "avec etiquette"; [n] content/*[1]; [t] "fin etiquette" (pause: 200); [t] "vide",self::line,count(children/*)=0,content'.split(","),["SpecializedRule","empty-line-with-label","default","brief",'[t] "etiquette"; [n] content/*[1] (pause: 200); [t] "vide"'],["SpecializedRule","empty-line-with-label","brief","sbrief"],["Rule","enclose","default",'[t] "d\u00e9but enfermer en"; [t] @role (grammar:localEnclose); [n] children/*[1]; [t] "fin enfermer"', +"self::enclose"],'Rule,overbar,default,[t] "d\u00e9but trait suscrit"; [n] children/*[1]; [t] "fin trait suscrit",self::enclose,@role="top"'.split(","),'Rule,underbar,default,[t] "d\u00e9but trait souscrit"; [n] children/*[1]; [t] "fin trait souscrit",self::enclose,@role="bottom"'.split(","),'Rule,leftbar,default,[t] "barre verticale"; [n] children/*[1],self::enclose,@role="left"'.split(","),'Rule,rightbar,default,[n] children/*[1]; [t] "barre verticale",self::enclose,@role="right"'.split(","),'Rule,crossout,default,[t] "d\u00e9but biff\u00e9"; [n] children/*[1]; [t] "fin biff\u00e9",self::enclose,@role="updiagonalstrike" or @role="downdiagonalstrike" or @role="horizontalstrike"'.split(","), +'Rule,cancel,default,[t] "d\u00e9but biff\u00e9"; [n] children/*[1]/children/*[1]; [t] "avec"; [n] children/*[2]; [t] "fin biff\u00e9",self::overscore,@role="updiagonalstrike" or @role="downdiagonalstrike" or @role="horizontalstrike"'.split(","),["SpecializedRule","cancel","default","brief"],["SpecializedRule","cancel","default","sbrief"],["Aliases","cancel","self::underscore",'@role="updiagonalstrike" or @role="downdiagonalstrike" or @role="horizontalstrike"'],'Rule,cancel-reverse,default,[t] "d\u00e9but biff\u00e9"; [n] children/*[2]/children/*[1]; [t] "avec"; [n] children/*[1]; [t] "fin biff\u00e9",self::overscore,name(children/*[2])="enclose",children/*[2][@role="updiagonalstrike" or @role="downdiagonalstrike" or @role="horizontalstrike"]'.split(","), +["SpecializedRule","cancel-reverse","default","brief"],["SpecializedRule","cancel-reverse","default","sbrief"],["Aliases","cancel-reverse","self::underscore",'name(children/*[2])="enclose"','children/*[2][@role="updiagonalstrike" or @role="downdiagonalstrike" or @role="horizontalstrike"]'],'Rule;end-punct;default;[m] children/*;self::punctuated;@role="endpunct"'.split(";"),'Rule,start-punct,default,[n] content/*[1]; [m] children/*[position()>1],self::punctuated,@role="startpunct"'.split(","),'Rule,integral-punct,default,[n] children/*[1]; [n] children/*[3],self::punctuated,@role="integral"'.split(","), +["Rule","punctuated","default","[m] children/*","self::punctuated"],'Rule;unit;default;[t] text() (grammar:annotation="unit":translate);self::identifier;@role="unit"'.split(";"),'Rule,unit-square,default,[n] children/*[1]; [t] "carr\u00e9",self::superscript,@role="unit",children/*[2][text()=2],name(children/*[1])="identifier"'.split(","),'Rule,unit-cubic,default,[n] children/*[1]; [t] "cubique",self::superscript,@role="unit",children/*[2][text()=3],name(children/*[1])="identifier"'.split(","),'Rule,reciprocal,default,[t] "r\u00e9ciproque"; [n] children/*[1],self::superscript,@role="unit",name(children/*[1])="identifier",name(children/*[2])="prefixop",children/*[2][@role="negative"],children/*[2]/children/*[1][text()=1],count(preceding-sibling::*)=0 or preceding-sibling::*[@role!="unit"]'.split(","), +'Rule,reciprocal,default,[t] "par"; [n] children/*[1],self::superscript,@role="unit",name(children/*[1])="identifier",name(children/*[2])="prefixop",children/*[2][@role="negative"],children/*[2]/children/*[1][text()=1],preceding-sibling::*[@role="unit"]'.split(","),'Rule;unit-combine;default;[m] children/*;self::infixop;@role="unit"'.split(";"),'Rule,unit-divide,default,[n] children/*[1]; [t] "par"; [n] children/*[2],self::fraction,@role="unit"'.split(",")],initialize:[sre.MathspeakUtil.generateTensorRules]};sre.MathspeakGerman={locale:"de",domain:"mathspeak",functions:[["CQF","CQFspaceoutNumber",sre.MathspeakUtil.spaceoutNumber],["CQF","CQFspaceoutIdentifier",sre.MathspeakUtil.spaceoutIdentifier],["CSF","CSFspaceoutText",sre.MathspeakUtil.spaceoutText],["CSF","CSFopenFracVerbose",sre.MathspeakUtil.openingFractionVerbose],["CSF","CSFcloseFracVerbose",sre.MathspeakUtil.closingFractionVerbose],["CSF","CSFoverFracVerbose",sre.MathspeakUtil.overFractionVerbose],["CSF","CSFopenFracBrief",sre.MathspeakUtil.openingFractionBrief], +["CSF","CSFcloseFracBrief",sre.MathspeakUtil.closingFractionBrief],["CSF","CSFopenFracSbrief",sre.MathspeakUtil.openingFractionSbrief],["CSF","CSFcloseFracSbrief",sre.MathspeakUtil.closingFractionSbrief],["CSF","CSFoverFracSbrief",sre.MathspeakUtil.overFractionSbrief],["CSF","CSFvulgarFraction",sre.NumbersUtil.vulgarFraction],["CQF","CQFvulgarFractionSmall",sre.MathspeakUtil.isSmallVulgarFraction],["CSF","CSFopenRadicalVerbose",sre.MathspeakUtil.openingRadicalVerbose],["CSF","CSFcloseRadicalVerbose", +sre.MathspeakUtil.closingRadicalVerbose],["CSF","CSFindexRadicalVerbose",sre.MathspeakUtil.indexRadicalVerbose],["CSF","CSFopenRadicalBrief",sre.MathspeakUtil.openingRadicalBrief],["CSF","CSFcloseRadicalBrief",sre.MathspeakUtil.closingRadicalBrief],["CSF","CSFindexRadicalBrief",sre.MathspeakUtil.indexRadicalBrief],["CSF","CSFopenRadicalSbrief",sre.MathspeakUtil.openingRadicalSbrief],["CSF","CSFindexRadicalSbrief",sre.MathspeakUtil.indexRadicalSbrief],["CSF","CSFsuperscriptVerbose",sre.MathspeakUtil.superscriptVerbose], +["CSF","CSFsuperscriptBrief",sre.MathspeakUtil.superscriptBrief],["CSF","CSFsubscriptVerbose",sre.MathspeakUtil.subscriptVerbose],["CSF","CSFsubscriptBrief",sre.MathspeakUtil.subscriptBrief],["CSF","CSFbaselineVerbose",sre.MathspeakUtil.baselineVerbose],["CSF","CSFbaselineBrief",sre.MathspeakUtil.baselineBrief],["CSF","CSFleftsuperscriptVerbose",sre.MathspeakUtil.superscriptVerbose],["CSF","CSFleftsubscriptVerbose",sre.MathspeakUtil.subscriptVerbose],["CSF","CSFrightsuperscriptVerbose",sre.MathspeakUtil.superscriptVerbose], +["CSF","CSFrightsubscriptVerbose",sre.MathspeakUtil.subscriptVerbose],["CSF","CSFleftsuperscriptBrief",sre.MathspeakUtil.superscriptBrief],["CSF","CSFleftsubscriptBrief",sre.MathspeakUtil.subscriptBrief],["CSF","CSFrightsuperscriptBrief",sre.MathspeakUtil.superscriptBrief],["CSF","CSFrightsubscriptBrief",sre.MathspeakUtil.subscriptBrief],["CSF","CSFunderscript",sre.MathspeakUtil.nestedUnderscore],["CSF","CSFoverscript",sre.MathspeakUtil.nestedOverscore],["CTXF","CTXFordinalCounter",sre.NumbersUtil.ordinalCounter], +["CTXF","CTXFcontentIterator",sre.StoreUtil.contentIterator],["CQF","CQFdetIsSimple",sre.MathspeakUtil.determinantIsSimple],["CSF","CSFRemoveParens",sre.MathspeakUtil.removeParens],["CQF","CQFresetNesting",sre.MathspeakUtil.resetNestingDepth]],rules:['Rule{collapsed{default{[n] . (engine:modality=summary,grammar:collapsed); [t] "kollabiert"{self::*{@alternative{not(contains(@grammar, "collapsed")){self::*{self::*{self::*{self::*{self::*'.split("{"),["SpecializedRule","collapsed","default","brief"], +["SpecializedRule","collapsed","brief","sbrief"],"Rule;stree;default;[n] ./*[1];self::stree;CQFresetNesting".split(";"),["Rule","unknown","default","[n] text()","self::unknown"],'Rule;protected;default;[t] text();self::number;contains(@grammar, "protected")'.split(";"),["Rule","omit-empty","default","[p] (pause:100)","self::empty"],'Rule;blank-empty;default;[t] "leer";self::empty;count(../*)=1;name(../..)="cell" or name(../..)="line"'.split(";"),'Rule{font{default{[t] @font (grammar:localFont); [n] . (grammar:ignoreFont=@font){self::*{name(self::*)!="number"{@font{not(contains(@grammar, "ignoreFont")){@font!="normal"'.split("{"), +'Rule{font-number{default{[t] @font (grammar:localFontNumber); [n] . (grammar:ignoreFont=@font){self::number{@font{not(contains(@grammar, "ignoreFont")){@font!="normal"'.split("{"),'Rule{font-identifier-short{default{[t] @font (grammar:localFont); [n] . (grammar:ignoreFont=@font){self::identifier{string-length(text())=1{@font{not(contains(@grammar, "ignoreFont")){@font="normal"{""=translate(text(), "abcdefghijklmnopqrstuvwxyz\u03b1\u03b2\u03b3\u03b4\u03b5\u03b6\u03b7\u03b8\u03b9\u03ba\u03bb\u03bc\u03bd\u03be\u03bf\u03c0\u03c1\u03c2\u03c3\u03c4\u03c5\u03c6\u03c7\u03c8\u03c9ABCDEFGHIJKLMNOPQRSTUVWXYZ\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u039f\u03a0\u03a1\u03a3\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9", ""){@role!="unit"'.split("{"), +'Rule{font-identifier{default{[t] @font (grammar:localFont); [n] . (grammar:ignoreFont=@font){self::identifier{string-length(text())=1 or string-length(text())=2{@font{@font="normal"{not(contains(@grammar, "ignoreFont")){@role!="unit"'.split("{"),'Rule;omit-font;default;[n] . (grammar:ignoreFont=@font);self::identifier;string-length(text())=1 or string-length(text())=2;@font;not(contains(@grammar, "ignoreFont"));@font="italic";self::*'.split(";"),'Rule{font-double-struck{default{[n] . (grammar:ignoreFont=@font); [t] @font (grammar:localFont){self::*{name(self::*)!="number"{string-length(text())=1 or string-length(text())=2{@font{not(contains(@grammar, "ignoreFont")){@font="double-struck"'.split("{"), +'Rule{font-number-double-struck{default{[n] . (grammar:ignoreFont=@font); [t] @font (grammar:localFontNumber){self::number{string-length(text())=1 or string-length(text())=2{@font{not(contains(@grammar, "ignoreFont")){@font="double-struck"'.split("{"),["Rule","number","default","[n] text()","self::number"],'Rule,mixed-number,default,[n] children/*[1]; [n] children/*[2]; ,self::number,@role="mixed"'.split(","),'Rule{number-with-chars{default{[t] "Zahl"; [m] CQFspaceoutNumber (grammar:protected){self::number{@role="othernumber"{"" != translate(text(), "0123456789.,", ""){not(contains(@grammar, "protected"))'.split("{"), +'Rule{number-as-upper-word{default{[t] "Wort gro\u00df"; [t] CSFspaceoutText{self::number{string-length(text())>1{text()=translate(text(), "abcdefghijklmnopqrstuvwxyz\u03b1\u03b2\u03b3\u03b4\u03b5\u03b6\u03b7\u03b8\u03b9\u03ba\u03bb\u03bc\u03bd\u03be\u03bf\u03c0\u03c1\u03c2\u03c3\u03c4\u03c5\u03c6\u03c7\u03c8\u03c9", "ABCDEFGHIJKLMNOPQRSTUVWXYZ\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u039f\u03a0\u03a1\u03a3\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9"){""=translate(text(), "ABCDEFGHIJKLMNOPQRSTUVWXYZ\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u039f\u03a0\u03a1\u03a3\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9","")'.split("{"), +["SpecializedRule","number-as-upper-word","default","brief"],["SpecializedRule","number-as-upper-word","default","sbrief"],'Rule{number-baseline{default{[t] "Grundlinie"; [n] . (grammar:baseline){self::number{not(contains(@grammar, "ignoreFont")){preceding-sibling::identifier{not(contains(@grammar, "baseline")){preceding-sibling::*[1][@role="latinletter" or @role="greekletter" or @role="otherletter"]{parent::*/parent::infixop[@role="implicit"]'.split("{"),["SpecializedRule","number-baseline","default", +"brief",'[t] "Grund"; [n] . (grammar:baseline)'],["SpecializedRule","number-baseline","brief","sbrief"],'Rule{number-baseline-font{default{[t] "Grundlinie"; [t] @font (grammar:localFont); [n] . (grammar:ignoreFont=@font){self::number{@font{not(contains(@grammar, "ignoreFont")){@font!="normal"{preceding-sibling::identifier{preceding-sibling::*[@role="latinletter" or @role="greekletter" or @role="otherletter"]{parent::*/parent::infixop[@role="implicit"]'.split("{"),["SpecializedRule","number-baseline-font", +"default","brief",'[t] "Grund"; [t] @font (grammar:localFont); [n] . (grammar:ignoreFont=@font)'],["SpecializedRule","number-baseline-font","brief","sbrief"],'Rule;identifier;default;[m] CQFspaceoutIdentifier;self::identifier;string-length(text())>1;@role!="unit";not(@font) or @font="normal" or contains(@grammar, "ignoreFont");text()!=translate(text(), "abcdefghijklmnopqrstuvwxyz\u03b1\u03b2\u03b3\u03b4\u03b5\u03b6\u03b7\u03b8\u03b9\u03ba\u03bb\u03bc\u03bd\u03be\u03bf\u03c0\u03c1\u03c2\u03c3\u03c4\u03c5\u03c6\u03c7\u03c8\u03c9ABCDEFGHIJKLMNOPQRSTUVWXYZ\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u039f\u03a0\u03a1\u03a3\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9", "")'.split(";"), +["Rule","identifier","default","[n] text()","self::identifier"],'Rule,negative,default,[t] "minus"; [n] children/*[1],self::prefixop,@role="negative",children/identifier'.split(","),["Aliases","negative","self::prefixop",'@role="negative"',"children/number"],["Aliases","negative","self::prefixop",'@role="negative"','children/fraction[@role="vulgar"]'],'Rule,negative,default,[t] "minus"; [n] children/*[1],self::prefixop,@role="negative"'.split(","),["Rule","prefix","default","[m] content/*; [n] children/*[1]", +"self::prefixop"],["Rule","postfix","default","[n] children/*[1]; [m] content/*","self::postfixop"],["Rule","binary-operation","default","[m] children/* (sepFunc:CTXFcontentIterator);","self::infixop"],'Rule;implicit;default;[m] children/*;self::infixop;@role="implicit"'.split(";"),["Aliases","implicit","self::infixop",'@role="leftsuper" or @role="leftsub" or @role="rightsuper" or @role="rightsub"'],'Rule,subtraction,default,[m] children/* (separator:"minus");,self::infixop,@role="subtraction"'.split(","), +["Rule","function-unknown","default","[n] children/*[1]; [n] children/*[2]","self::appl"],'Rule,function-prefix,default,[n] children/*[1]; [n] children/*[2],self::appl,children/*[1][@role="prefix function"]'.split(","),'Rule,fences-open-close,default,[n] content/*[1]; [n] children/*[1]; [n] content/*[2],self::fenced,@role="leftright"'.split(","),'Rule,fences-neutral,default,[t] "Anfang Betrag"; [n] children/*[1]; [t] "Ende Betrag",self::fenced,@role="neutral",content/*[1][text()]="|" or content/*[1][text()]="\u2758" or content/*[1][text()]="\uff5c"'.split(","), +["SpecializedRule","fences-neutral","default","sbrief",'[t] "Betrag"; [n] children/*[1]; [t] "Ende Betrag"'],'Rule,fences-neutral,default,[n] content/*[1]; [n] children/*[1]; [n] content/*[2],self::fenced,@role="neutral"'.split(","),'Rule,fences-set,default,[t] "Anfang Menge"; [n] children/*[1]; [t] "Ende Menge",self::fenced,@role="set empty" or @role="set extended" or @role="set singleton" or @role="set collection",not(name(../..)="appl")'.split(","),["SpecializedRule","fences-set","default","sbrief", +'[t] "Menge"; [n] children/*[1]; [t] "Ende Menge"'],["Rule","text","default","[n] text()","self::text"],'Rule;factorial;default;[t] "Fakult\u00e4t";self::punctuation;text()="!";name(preceding-sibling::*[1])!="text"'.split(";"),'Rule;minus;default;[t] "minus";self::operator;text()="-"'.split(";"),'Rule;single-prime;default;[t] "Strich";self::punctuated;@role="prime";count(children/*)=1'.split(";"),'Rule;double-prime;default;[t] "zwei Strich";self::punctuated;@role="prime";count(children/*)=2'.split(";"), +'Rule;triple-prime;default;[t] "drei Strich";self::punctuated;@role="prime";count(children/*)=3'.split(";"),'Rule;quadruple-prime;default;[t] "vier Strich";self::punctuated;@role="prime";count(children/*)=4'.split(";"),'Rule,counted-prime,default,[t] count(children/*); [t] "Strich",self::punctuated,@role="prime"'.split(","),["Rule","fraction","default","[t] CSFopenFracVerbose; [n] children/*[1]; [t] CSFoverFracVerbose; [n] children/*[2]; [t] CSFcloseFracVerbose","self::fraction"],["Rule","fraction", +"brief","[t] CSFopenFracBrief; [n] children/*[1]; [t] CSFoverFracVerbose; [n] children/*[2]; [t] CSFcloseFracBrief","self::fraction"],["Rule","fraction","sbrief","[t] CSFopenFracSbrief; [n] children/*[1]; [t] CSFoverFracSbrief; [n] children/*[2]; [t] CSFcloseFracSbrief","self::fraction"],'Rule;vulgar-fraction;default;[t] CSFvulgarFraction (grammar:correctOne);self::fraction;@role="vulgar";CQFvulgarFractionSmall'.split(";"),["SpecializedRule","vulgar-fraction","default","brief"],["SpecializedRule", +"vulgar-fraction","default","sbrief"],'Rule,continued-fraction-outer,default,[t] "Kettenbruch"; [n] children/*[1];[t] "durch"; [n] children/*[2],self::fraction,not(ancestor::fraction),children/*[2]/descendant-or-self::*[@role="ellipsis" and not(following-sibling::*)]'.split(","),'Rule,continued-fraction-inner,default,[t] "Anfang Bruch"; [n] children/*[1];[t] "durch"; [n] children/*[2],self::fraction,ancestor::fraction,children/*[2]/descendant-or-self::*[@role="ellipsis" and not(following-sibling::*)]'.split(","), +["SpecializedRule","continued-fraction-inner","default","sbrief",'[t] "Bruch"; [n] children/*[1];[t] "durch"; [n] children/*[2]'],["Rule","sqrt","default","[t] CSFopenRadicalVerbose; [n] children/*[1]; [t] CSFcloseRadicalVerbose","self::sqrt"],["Rule","sqrt","brief","[t] CSFopenRadicalBrief; [n] children/*[1]; [t] CSFcloseRadicalBrief","self::sqrt"],["Rule","sqrt","sbrief","[t] CSFopenRadicalSbrief; [n] children/*[1]; [t] CSFcloseRadicalBrief","self::sqrt"],"Rule,root-small,default,[t] CSFopenRadicalVerbose; [n] children/*[2]; [t] CSFcloseRadicalVerbose,self::root,children/*[1][text()=3 or text()=2]".split(","), +"Rule,root-small,brief,[t] CSFopenRadicalBrief; [n] children/*[2]; [t] CSFcloseRadicalBrief,self::root,children/*[1][text()=3 or text()=2]".split(","),"Rule,root-small,sbrief,[t] CSFopenRadicalSbrief; [n] children/*[2]; [t] CSFcloseRadicalBrief,self::root,children/*[1][text()=3 or text()=2]".split(","),["Rule","root","default","[t] CSFindexRadicalVerbose; [n] children/*[1];[t] CSFopenRadicalVerbose; [n] children/*[2]; [t] CSFcloseRadicalVerbose","self::root"],["Rule","root","brief","[t] CSFindexRadicalBrief; [n] children/*[1];[t] CSFopenRadicalBrief; [n] children/*[2]; [t] CSFcloseRadicalBrief", +"self::root"],["Rule","root","sbrief","[t] CSFindexRadicalSbrief; [n] children/*[1];[t] CSFopenRadicalSbrief; [n] children/*[2]; [t] CSFcloseRadicalBrief","self::root"],'Rule,limboth,default,[n] children/*[1]; [t] CSFunderscript; [n] children/*[2];[t] CSFoverscript; [n] children/*[3],self::limboth,name(../..)="underscore" or name(../..)="overscore",following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(","),'Rule,limlower,default,[n] children/*[1]; [t] CSFunderscript; [n] children/*[2];,self::limlower,name(../..)="underscore" or name(../..)="overscore",following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(","), +'Rule,limupper,default,[n] children/*[1]; [t] CSFoverscript; [n] children/*[2];,self::limupper,name(../..)="underscore" or name(../..)="overscore",following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(","),'Aliases;limlower;self::underscore;@role="limit function";name(../..)="underscore" or name(../..)="overscore";following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(";"),'Aliases;limlower;self::underscore;children/*[2][@role!="underaccent"];name(../..)="underscore" or name(../..)="overscore";following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(";"), +'Aliases;limupper;self::overscore;children/*[2][@role!="overaccent"];name(../..)="underscore" or name(../..)="overscore";following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(";"),["Rule","limboth-end","default",'[n] children/*[1]; [t] CSFunderscript; [n] children/*[2];[t] CSFoverscript; [n] children/*[3]; [t] "Ende \u00dcberschrift"',"self::limboth"],["Rule","limlower-end","default",'[n] children/*[1]; [t] CSFunderscript; [n] children/*[2]; [t] "Ende Unterschrift"',"self::limlower"], +["Rule","limupper-end","default",'[n] children/*[1]; [t] CSFoverscript; [n] children/*[2]; [t] "Ende \u00dcberschrift"',"self::limupper"],["Aliases","limlower-end","self::underscore",'@role="limit function"'],["Aliases","limlower-end","self::underscore"],["Aliases","limupper-end","self::overscore"],["Rule","integral","default","[n] children/*[1]; [n] children/*[2]; [n] children/*[3];","self::integral"],'Rule,integral,default,[n] children/*[1]; [t] "Index"; [n] children/*[2];[t] "Hoch"; [n] children/*[3]; [t] "Grundlinie";,self::limboth,@role="integral"'.split(","), +["SpecializedRule","integral","default","brief",'[n] children/*[1]; [t] "Index"; [n] children/*[2];[t] "Hoch"; [n] children/*[3]; [t] "Base";'],["SpecializedRule","integral","brief","sbrief"],["Rule","bigop","default","[n] children/*[1]; [n] children/*[2];","self::bigop"],["Rule","relseq","default","[m] children/* (sepFunc:CTXFcontentIterator)","self::relseq"],'Rule,equality,default,[n] children/*[1]; [n] content/*[1]; [n] children/*[2],self::relseq,@role="equality",count(./children/*)=2'.split(","), +'Rule;multi-equality;default;[m] children/* (sepFunc:CTXFcontentIterator);self::relseq;@role="equality";count(./children/*)>2'.split(";"),["Rule","multrel","default","[m] children/* (sepFunc:CTXFcontentIterator)","self::multirel"],["Rule","subscript","default","[n] children/*[1]; [t] CSFsubscriptVerbose; [n] children/*[2]","self::subscript"],["Rule","subscript","brief","[n] children/*[1]; [t] CSFsubscriptBrief; [n] children/*[2]","self::subscript"],["SpecializedRule","subscript","brief","sbrief"], +'Rule,subscript-simple,default,[n] children/*[1]; [n] children/*[2],self::subscript,name(./children/*[1])="identifier",name(./children/*[2])="number",./children/*[2][@role!="mixed"],./children/*[2][@role!="othernumber"]'.split(","),["SpecializedRule","subscript-simple","default","brief"],["SpecializedRule","subscript-simple","default","sbrief"],'Rule,subscript-baseline,default,[n] children/*[1]; [t] CSFsubscriptVerbose; [n] children/*[2]; [t] CSFbaselineVerbose,self::subscript,following-sibling::*,not(name(following-sibling::subscript/children/*[1])="empty" or (name(following-sibling::infixop[@role="implicit"]/children/*[1])="subscript" and name(following-sibling::*/children/*[1]/children/*[1])="empty")) and @role!="subsup",not(following-sibling::*[@role="rightsuper" or @role="rightsub" or @role="leftsub" or @role="leftsub"])'.split(","), +["SpecializedRule","subscript-baseline","default","brief","[n] children/*[1]; [t] CSFsubscriptBrief; [n] children/*[2]; [t] CSFbaselineBrief"],["SpecializedRule","subscript-baseline","brief","sbrief"],'Aliases;subscript-baseline;self::subscript;not(following-sibling::*);ancestor::fenced|ancestor::root|ancestor::sqrt|ancestor::punctuated|ancestor::fraction;not(ancestor::punctuated[@role="leftsuper" or @role="rightsub" or @role="rightsuper" or @role="rightsub"])'.split(";"),["Aliases","subscript-baseline", +"self::subscript","not(following-sibling::*)","ancestor::relseq|ancestor::multirel",sre.MathspeakUtil.generateBaselineConstraint()],["Aliases","subscript-baseline","self::subscript","not(following-sibling::*)","@embellished"],'Rule,subscript-empty-sup,default,[n] children/*[1]; [n] children/*[2],self::subscript,name(children/*[2])="infixop",name(children/*[2][@role="implicit"]/children/*[1])="superscript",name(children/*[2]/children/*[1]/children/*[1])="empty"'.split(","),["SpecializedRule","subscript-empty-sup", +"default","brief"],["SpecializedRule","subscript-empty-sup","brief","sbrief"],["Aliases","subscript-empty-sup","self::subscript",'name(children/*[2])="superscript"','name(children/*[2]/children/*[1])="empty"'],["Rule","superscript","default","[n] children/*[1]; [t] CSFsuperscriptVerbose; [n] children/*[2]","self::superscript"],["SpecializedRule","superscript","default","brief","[n] children/*[1]; [t] CSFsuperscriptBrief; [n] children/*[2]"],["SpecializedRule","superscript","brief","sbrief"],'Rule,superscript-baseline,default,[n] children/*[1]; [t] CSFsuperscriptVerbose; [n] children/*[2];[t] CSFbaselineVerbose,self::superscript,following-sibling::*,not(name(following-sibling::superscript/children/*[1])="empty" or (name(following-sibling::infixop[@role="implicit"]/children/*[1])="superscript" and name(following-sibling::*/children/*[1]/children/*[1])="empty")) and not(following-sibling::*[@role="rightsuper" or @role="rightsub" or @role="leftsub" or @role="leftsub"])'.split(","), +["SpecializedRule","superscript-baseline","default","brief","[n] children/*[1]; [t] CSFsuperscriptBrief; [n] children/*[2];[t] CSFbaselineBrief"],["SpecializedRule","superscript-baseline","brief","sbrief"],'Aliases;superscript-baseline;self::superscript;not(following-sibling::*);ancestor::punctuated;ancestor::*/following-sibling::* and not(ancestor::punctuated[@role="leftsuper" or @role="rightsub" or @role="rightsuper" or @role="rightsub"])'.split(";"),["Aliases","superscript-baseline","self::superscript", +"not(following-sibling::*)","ancestor::fraction|ancestor::fenced|ancestor::root|ancestor::sqrt"],["Aliases","superscript-baseline","self::superscript","not(following-sibling::*)","ancestor::relseq|ancestor::multirel","not(@embellished)",sre.MathspeakUtil.generateBaselineConstraint()],'Aliases superscript-baseline self::superscript not(following-sibling::*) @embellished not(children/*[2][@role="prime"])'.split(" "),'Rule,superscript-empty-sub,default,[n] children/*[1]; [n] children/*[2],self::superscript,name(children/*[2])="infixop",name(children/*[2][@role="implicit"]/children/*[1])="subscript",name(children/*[2]/children/*[1]/children/*[1])="empty"'.split(","), +["SpecializedRule","superscript-empty-sub","default","brief"],["SpecializedRule","superscript-empty-sub","brief","sbrief"],["Aliases","superscript-empty-sub","self::superscript",'name(children/*[2])="subscript"','name(children/*[2]/children/*[1])="empty"'],'Rule,square,default,[n] children/*[1]; [t] "Quadrat",self::superscript,children/*[2],children/*[2][text()=2],name(children/*[1])!="text" or not(name(children/*[1])="text" and (name(../../../punctuated[@role="text"]/..)="stree" or name(..)="stree")),name(children/*[1])!="subscript" or (name(children/*[1])="subscript" and name(children/*[1]/children/*[1])="identifier" and name(children/*[1]/children/*[2])="number" and children/*[1]/children/*[2][@role!="mixed"] and children/*[1]/children/*[2][@role!="othernumber"]),not(@embellished)'.split(","), +["SpecializedRule","square","default","brief"],["SpecializedRule","square","default","sbrief"],'Aliases;square;self::superscript;children/*[2];children/*[2][text()=2];@embellished;children/*[1][@role="prefix operator"]'.split(";"),'Rule,cube,default,[n] children/*[1]; [t] "Kubik",self::superscript,children/*[2],children/*[2][text()=3],name(children/*[1])!="text" or not(name(children/*[1])="text" and (name(../../../punctuated[@role="text"]/..)="stree" or name(..)="stree")),name(children/*[1])!="subscript" or (name(children/*[1])="subscript" and name(children/*[1]/children/*[1])="identifier" and name(children/*[1]/children/*[2])="number" and children/*[1]/children/*[2][@role!="mixed"] and children/*[1]/children/*[2][@role!="othernumber"]),not(@embellished)'.split(","), +["SpecializedRule","cube","default","brief"],["SpecializedRule","cube","default","sbrief"],'Aliases;cube;self::superscript;children/*[2];children/*[2][text()=3];@embellished;children/*[1][@role="prefix operator"]'.split(";"),'Rule,prime,default,[n] children/*[1]; [n] children/*[2],self::superscript,children/*[2],children/*[2][@role="prime"]'.split(","),["SpecializedRule","prime","default","brief"],["SpecializedRule","prime","default","sbrief"],'Rule,prime-subscript,default,[n] children/*[1]/children/*[1]; [n] children/*[2]; [t] CSFsubscriptVerbose; [n] children/*[1]/children/*[2],self::superscript,children/*[2][@role="prime"],name(children/*[1])="subscript",not(following-sibling::*)'.split(","), +["SpecializedRule","prime-subscript","default","brief","[n] children/*[1]/children/*[1]; [n] children/*[2]; [t] CSFsubscriptBrief; [n] children/*[1]/children/*[2]"],["SpecializedRule","prime-subscript","brief","sbrief"],'Rule,prime-subscript-baseline,default,[n] children/*[1]/children/*[1]; [n] children/*[2]; [t] CSFsubscriptVerbose; [n] children/*[1]/children/*[2]; [t] CSFbaselineVerbose,self::superscript,children/*[2][@role="prime"],name(children/*[1])="subscript",following-sibling::*'.split(","), +["SpecializedRule","prime-subscript-baseline","default","brief","[n] children/*[1]/children/*[1]; [n] children/*[2]; [t] CSFsubscriptBrief; [n] children/*[1]/children/*[2]; [t] CSFbaselineBrief"],["SpecializedRule","prime-subscript-baseline","brief","sbrief"],'Aliases prime-subscript-baseline self::superscript children/*[2][@role="prime"] name(children/*[1])="subscript" not(following-sibling::*) @embellished'.split(" "),'Rule,prime-subscript-simple,default,[n] children/*[1]/children/*[1]; [n] children/*[2];[n] children/*[1]/children/*[2],self::superscript,children/*[2][@role="prime"],name(children/*[1])="subscript",name(children/*[1]/children/*[1])="identifier",name(children/*[1]/children/*[2])="number",children/*[1]/children/*[2][@role!="mixed"],children/*[1]/children/*[2][@role!="othernumber"]'.split(","), +["SpecializedRule","prime-subscript-simple","default","brief"],["SpecializedRule","prime-subscript-simple","default","sbrief"],'Rule,overscore,default,[t] "modifiziert oben"; [n] children/*[1]; [t] "mit"; [n] children/*[2],self::overscore,children/*[2][@role="overaccent"]'.split(","),["SpecializedRule","overscore","default","brief",'[t] "mod oben"; [n] children/*[1]; [t] "mit"; [n] children/*[2]'],["SpecializedRule","overscore","brief","sbrief"],'Rule,double-overscore,default,[t] "modifiziert oben oben"; [n] children/*[1]; [t] "mit"; [n] children/*[2],self::overscore,children/*[2][@role="overaccent"],name(children/*[1])="overscore",children/*[1]/children/*[2][@role="overaccent"]'.split(","), +["SpecializedRule","double-overscore","default","brief",'[t] "mod oben oben"; [n] children/*[1]; [t] "mit"; [n] children/*[2]'],["SpecializedRule","double-overscore","brief","sbrief"],'Rule,underscore,default,[t] "modifiziert unten"; [n] children/*[1]; [t] "mit"; [n] children/*[2],self::underscore,children/*[2][@role="underaccent"]'.split(","),["SpecializedRule","underscore","default","brief",'[t] "mod unten"; [n] children/*[1]; [t] "mit"; [n] children/*[2]'],["SpecializedRule","underscore","brief", +"sbrief"],'Rule,double-underscore,default,[t] "modifiziert unten unten"; [n] children/*[1]; [t] "mit"; [n] children/*[2],self::underscore,children/*[2][@role="underaccent"],name(children/*[1])="underscore",children/*[1]/children/*[2][@role="underaccent"]'.split(","),["SpecializedRule","double-underscore","default","brief",'[t] "mod unten unten"; [n] children/*[1]; [t] "mit"; [n] children/*[2]'],["SpecializedRule","double-underscore","brief","sbrief"],'Rule,overbar,default,[n] children/*[1]; [t] "\u00dcberstrich",self::overscore,@role="latinletter" or @role="greekletter" or @role="otherletter",children/*[2][@role="overaccent"],children/*[2][text()="\u00af" or text()="\uffe3" or text()="\uff3f" or text()="_" or text()="\u203e"]'.split(","), +'Rule,underbar,default,[n] children/*[1]; [t] "Unterstrich",self::underscore,@role="latinletter" or @role="greekletter" or @role="otherletter",children/*[2][@role="underaccent"],children/*[2][text()="\u00af" or text()="\uffe3" or text()="\uff3f" or text()="_" or text()="\u203e"]'.split(","),'Rule,overtilde,default,[n] children/*[1]; [t] "Tilde oben",self::overscore,children/*[2][@role="overaccent"],@role="latinletter" or @role="greekletter" or @role="otherletter",children/*[2][text()="~" or text()="\u02dc" or text()="\u223c" or text()="\uff5e"]'.split(","), +'Rule,undertilde,default,[n] children/*[1]; [t] "Tilde unten",self::underscore,@role="latinletter" or @role="greekletter" or @role="otherletter",children/*[2][@role="underaccent"],children/*[2][text()="~" or text()="\u02dc" or text()="\u223c" or text()="\uff5e"]'.split(","),'Rule,matrix-fence,default,[n] children/*[1];,self::fenced,count(children/*)=1,name(children/*[1])="matrix"'.split(","),["Rule","matrix","default",'[t] "Anfang"; [t] count(children/*); [t] "mal";[t] count(children/*[1]/children/*); [t] "Matrize"; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"Zeile "); [t] "Ende Matrize"', +"self::matrix"],["Rule","matrix","sbrief",'[t] count(children/*); [t] "mal";[t] count(children/*[1]/children/*); [t] "Matrize"; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"Zeile "); [t] "Ende Matrize"',"self::matrix"],["Aliases","matrix","self::vector"],["Rule","matrix-row","default",'[m] children/* (ctxtFunc:CTXFordinalCounter,context:"Spalte");[p] (pause: 200)',"self::row"],'Rule{row-with-label{default{[t] "mit Bezeichner"; [n] content/*[1]; [t] "Ende Bezeichner"(pause: 200); [m] children/* (ctxtFunc:CTXFordinalCounter,context:"Spalte"){self::row{content'.split("{"), +'Rule{row-with-label{brief{[t] "Bezeichner"; [n] content/*[1]; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"Spalte"){self::row{content'.split("{"),["SpecializedRule","row-with-label","brief","sbrief"],'Rule{row-with-text-label{sbrief{[t] "Bezeichner"; [t] CSFRemoveParens;[m] children/* (ctxtFunc:CTXFordinalCounter,context:"Spalte"){self::row{content{name(content/cell/children/*[1])="text"'.split("{"),'Rule;empty-row;default;[t] "Blank";self::row;count(children/*)=0'.split(";"),["Rule","matrix-cell", +"default","[n] children/*[1]; [p] (pause: 300)","self::cell"],'Rule,empty-cell,default,[t] "leer"; [p] (pause: 300),self::cell,count(children/*)=0'.split(","),'Rule{determinant{default{[t] "Anfang"; [t] count(children/*); [t] "mal";[t] count(children/*[1]/children/*); [t] "Determinante"; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"Zeile "); [t] "Ende Determinante"{self::matrix{@role="determinant"'.split("{"),["SpecializedRule","determinant","default","sbrief",'[t] count(children/*); [t] "mal";[t] count(children/*[1]/children/*); [t] "Determinante"; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"Zeile "); [t] "Ende Determinante"'], +'Rule{determinant-simple{default{[t] "Anfang"; [t] count(children/*); [t] "mal";[t] count(children/*[1]/children/*); [t] "Determinante"; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"Zeile",grammar:simpleDet); [t] "Ende Determinante"{self::matrix{@role="determinant"{CQFdetIsSimple'.split("{"),["SpecializedRule","determinant-simple","default","sbrief",'[t] count(children/*); [t] "mal";[t] count(children/*[1]/children/*); [t] "Determinante"; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"Zeile",grammar:simpleDet); [t] "Ende Determinante"'], +'Rule{row-simple{default{[m] children/*;{self::row{@role="determinant"{contains(@grammar, "simpleDet")'.split("{"),["Rule","layout","default",'[t] "Anfang Anordnung"; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"Zeile "); [t] "Ende Anordnung"',"self::table"],["Rule","layout","sbrief",'[t] "Anordnung"; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"Zeile "); [t] "Ende Anordnung"',"self::table"],'Rule,binomial,default,[t] "Anfang Binomialkoeffizient"; [n] children/*[2]/children/*[1]; [t] "aus"; [n] children/*[1]/children/*[1]; [t] "Ende Binomialkoeffizient",self::vector,@role="binomial"'.split(","), +'Rule,binomial,brief,[t] "Anfang Binomial"; [n] children/*[2]/children/*[1]; [t] "aus"; [n] children/*[1]/children/*[1]; [t] "Ende Binomial",self::vector,@role="binomial"'.split(","),'Rule,binomial,sbrief,[t] "Binomial"; [n] children/*[2]/children/*[1]; [t] "aus"; [n] children/*[1]/children/*[1]; [t] "Ende Binomial",self::vector,@role="binomial"'.split(","),["Rule","cases","default",'[t] "Anfang Fallunterscheidung"; [t] "gro\u00dfe"; [n] content/*[1];[m] children/* (ctxtFunc:CTXFordinalCounter,context:"Zeile "); [t] "Ende Fallunterscheidung"', +"self::cases"],["Rule","cases","brief",'[t] "Anfang F\u00e4lle"; [t] "gro\u00dfe"; [n] content/*[1];[m] children/* (ctxtFunc:CTXFordinalCounter,context:"Zeile "); [t] "Ende F\u00e4lle"',"self::cases"],["Rule","cases","sbrief",'[t] "F\u00e4lle"; [t] "gro\u00dfe"; [n] content/*[1];[m] children/* (ctxtFunc:CTXFordinalCounter,context:"Zeile "); [t] "Ende F\u00e4lle"',"self::cases"],["Aliases","layout","self::multiline"],["Rule","line","default","[m] children/*","self::line"],'Rule,line-with-label,default,[t] "mit Bezeichner"; [n] content/*[1]; [t] "Ende Bezeichner" (pause: 200); [m] children/*,self::line,content'.split(","), +["SpecializedRule","line-with-label","default","brief",'[t] "Bezeichner"; [n] content/*[1] (pause: 200); [m] children/*'],["SpecializedRule","line-with-label","brief","sbrief"],'Rule,line-with-text-label,sbrief,[t] "Bezeichner"; [t] CSFRemoveParens; [m] children/*,self::line,content,name(content/cell/children/*[1])="text"'.split(","),'Rule;empty-line;default;[t] "leer";self::line;count(children/*)=0;not(content)'.split(";"),["SpecializedRule","empty-line","default","brief"],["SpecializedRule","empty-line", +"brief","sbrief"],'Rule,empty-line-with-label,default,[t] "mit Bezeichner"; [n] content/*[1]; [t] "Ende Bezeichner"(pause: 200); [t] "leer",self::line,count(children/*)=0,content'.split(","),["SpecializedRule","empty-line-with-label","default","brief",'[t] "Bezeichner"; [n] content/*[1] (pause: 200); [t] "leer"'],["SpecializedRule","empty-line-with-label","brief","sbrief"],["Rule","enclose","default",'[t] "Anfang Umschlie\u00dfung"; [t] @role (grammar:localEnclose); [n] children/*[1]; [t] "Ende Umschlie\u00dfung"', +"self::enclose"],["Aliases","overbar","self::enclose",'@role="top"'],["Aliases","underbar","self::enclose",'@role="bottom"'],'Rule,leftbar,default,[t] "senkrechter Strich"; [n] children/*[1],self::enclose,@role="left"'.split(","),'Rule,rightbar,default,[n] children/*[1]; [t] "senkrechter Strich",self::enclose,@role="right"'.split(","),'Rule,crossout,default,[t] "durchgestrichen"; [n] children/*[1]; [t] "Ende duchgestrichen",self::enclose,@role="updiagonalstrike" or @role="downdiagonalstrike" or @role="horizontalstrike"'.split(","), +'Rule,cancel,default,[t] "durchgestrichen"; [n] children/*[1]/children/*[1]; [t] "mit"; [n] children/*[2]; [t] "Ende duchgestrichen",self::overscore,@role="updiagonalstrike" or @role="downdiagonalstrike" or @role="horizontalstrike"'.split(","),["SpecializedRule","cancel","default","brief"],["SpecializedRule","cancel","default","sbrief"],["Aliases","cancel","self::underscore",'@role="updiagonalstrike" or @role="downdiagonalstrike" or @role="horizontalstrike"'],'Rule,cancel-reverse,default,[t] "durchgestrichen"; [n] children/*[2]/children/*[1]; [t] "mit"; [n] children/*[1]; [t] "Ende duchgestrichen",self::overscore,name(children/*[2])="enclose",children/*[2][@role="updiagonalstrike" or @role="downdiagonalstrike" or @role="horizontalstrike"]'.split(","), +["SpecializedRule","cancel-reverse","default","brief"],["SpecializedRule","cancel-reverse","default","sbrief"],["Aliases","cancel-reverse","self::underscore",'name(children/*[2])="enclose"','children/*[2][@role="updiagonalstrike" or @role="downdiagonalstrike" or @role="horizontalstrike"]'],'Rule;end-punct;default;[m] children/*;self::punctuated;@role="endpunct"'.split(";"),'Rule,start-punct,default,[n] content/*[1]; [m] children/*[position()>1],self::punctuated,@role="startpunct"'.split(","),'Rule,integral-punct,default,[n] children/*[1]; [n] children/*[3],self::punctuated,@role="integral"'.split(","), +["Rule","punctuated","default","[m] children/*","self::punctuated"],'Rule;unit;default;[t] text() (grammar:annotation="unit":translate:plural);self::identifier;@role="unit"'.split(";"),'Rule,unit-square,default,[t] "Quadrat"; [n] children/*[1],self::superscript,@role="unit",children/*[2][text()=2],name(children/*[1])="identifier"'.split(","),'Rule,unit-cubic,default,[t] "Kubik"; [n] children/*[1],self::superscript,@role="unit",children/*[2][text()=3],name(children/*[1])="identifier"'.split(","),'Rule,reciprocal,default,[n] children/*[1]; [t] "invers",self::superscript,@role="unit",name(children/*[1])="identifier",name(children/*[2])="prefixop",children/*[2][@role="negative"],children/*[2]/children/*[1][text()=1],count(preceding-sibling::*)=0 or preceding-sibling::*[@role!="unit"]'.split(","), +'Rule,reciprocal,default,[t] "pro"; [n] children/*[1],self::superscript,@role="unit",name(children/*[1])="identifier",name(children/*[2])="prefixop",children/*[2][@role="negative"],children/*[2]/children/*[1][text()=1],preceding-sibling::*[@role="unit"]'.split(","),'Rule;unit-combine;default;[m] children/*;self::infixop;@role="unit"'.split(";"),'Rule,unit-divide,default,[n] children/*[1]; [t] "pro"; [n] children/*[2],self::fraction,@role="unit"'.split(","),["Rule","inference","default",'[t] "Schlussregel"; [m] content/*; [t] "mit Folgerung"; [n] children/*[1]; [t] "aus"; [t] count(children/*[2]/children/*); [t] "Pr\u00e4missen"', +"self::inference"],'Rule,inference,default,[t] "Schlussregel"; ; [m] content/*; [t] "mit Folgerung"; [n] children/*[1]; [t] "aus"; [t] count(children/*[2]/children/*); [t] "Pr\u00e4misse",self::inference,count(children/*[2]/children/*)<2'.split(","),["Rule","premise","default",'[m] children/* (ctxtFunc:CTXFordinalCounter,context:"Pr\u00e4misse ");',"self::premises"],["Rule","conclusion","default","[n] children/*[1]","self::conclusion"],["Rule","label","default",'[t] "Regel"; [n] children/*[1]',"self::rulelabel"], +'Rule,axiom,default,[t] "Axiom"; [m] children/*[1];,self::inference,@role="axiom"'.split(","),'Rule,axiom,default,[t] "leeres Axiom";,self::empty,@role="axiom"'.split(",")],initialize:[sre.MathspeakUtil.generateTensorRules]};sre.MathspeakRules={domain:"mathspeak",functions:[["CQF","CQFspaceoutNumber",sre.MathspeakUtil.spaceoutNumber],["CQF","CQFspaceoutIdentifier",sre.MathspeakUtil.spaceoutIdentifier],["CSF","CSFspaceoutText",sre.MathspeakUtil.spaceoutText],["CSF","CSFopenFracVerbose",sre.MathspeakUtil.openingFractionVerbose],["CSF","CSFcloseFracVerbose",sre.MathspeakUtil.closingFractionVerbose],["CSF","CSFoverFracVerbose",sre.MathspeakUtil.overFractionVerbose],["CSF","CSFopenFracBrief",sre.MathspeakUtil.openingFractionBrief], +["CSF","CSFcloseFracBrief",sre.MathspeakUtil.closingFractionBrief],["CSF","CSFopenFracSbrief",sre.MathspeakUtil.openingFractionSbrief],["CSF","CSFcloseFracSbrief",sre.MathspeakUtil.closingFractionSbrief],["CSF","CSFoverFracSbrief",sre.MathspeakUtil.overFractionSbrief],["CSF","CSFvulgarFraction",sre.NumbersUtil.vulgarFraction],["CQF","CQFvulgarFractionSmall",sre.MathspeakUtil.isSmallVulgarFraction],["CSF","CSFopenRadicalVerbose",sre.MathspeakUtil.openingRadicalVerbose],["CSF","CSFcloseRadicalVerbose", +sre.MathspeakUtil.closingRadicalVerbose],["CSF","CSFindexRadicalVerbose",sre.MathspeakUtil.indexRadicalVerbose],["CSF","CSFopenRadicalBrief",sre.MathspeakUtil.openingRadicalBrief],["CSF","CSFcloseRadicalBrief",sre.MathspeakUtil.closingRadicalBrief],["CSF","CSFindexRadicalBrief",sre.MathspeakUtil.indexRadicalBrief],["CSF","CSFopenRadicalSbrief",sre.MathspeakUtil.openingRadicalSbrief],["CSF","CSFindexRadicalSbrief",sre.MathspeakUtil.indexRadicalSbrief],["CSF","CSFsuperscriptVerbose",sre.MathspeakUtil.superscriptVerbose], +["CSF","CSFsuperscriptBrief",sre.MathspeakUtil.superscriptBrief],["CSF","CSFsubscriptVerbose",sre.MathspeakUtil.subscriptVerbose],["CSF","CSFsubscriptBrief",sre.MathspeakUtil.subscriptBrief],["CSF","CSFbaselineVerbose",sre.MathspeakUtil.baselineVerbose],["CSF","CSFbaselineBrief",sre.MathspeakUtil.baselineBrief],["CSF","CSFleftsuperscriptVerbose",sre.MathspeakUtil.superscriptVerbose],["CSF","CSFleftsubscriptVerbose",sre.MathspeakUtil.subscriptVerbose],["CSF","CSFrightsuperscriptVerbose",sre.MathspeakUtil.superscriptVerbose], +["CSF","CSFrightsubscriptVerbose",sre.MathspeakUtil.subscriptVerbose],["CSF","CSFleftsuperscriptBrief",sre.MathspeakUtil.superscriptBrief],["CSF","CSFleftsubscriptBrief",sre.MathspeakUtil.subscriptBrief],["CSF","CSFrightsuperscriptBrief",sre.MathspeakUtil.superscriptBrief],["CSF","CSFrightsubscriptBrief",sre.MathspeakUtil.subscriptBrief],["CSF","CSFunderscript",sre.MathspeakUtil.nestedUnderscore],["CSF","CSFoverscript",sre.MathspeakUtil.nestedOverscore],["CTXF","CTXFordinalCounter",sre.NumbersUtil.ordinalCounter], +["CTXF","CTXFcontentIterator",sre.StoreUtil.contentIterator],["CQF","CQFdetIsSimple",sre.MathspeakUtil.determinantIsSimple],["CSF","CSFRemoveParens",sre.MathspeakUtil.removeParens],["CQF","CQFresetNesting",sre.MathspeakUtil.resetNestingDepth]],rules:['Rule{collapsed{default{[t] "collapsed"; [n] . (engine:modality=summary,grammar:collapsed){self::*[@alternative]{not(contains(@grammar, "collapsed"))'.split("{"),["SpecializedRule","collapsed","default","brief"],["SpecializedRule","collapsed","brief", +"sbrief"],["Rule","direct-speech","default","[t] @ext-speech","self::*[@ext-speech]"],"Rule;stree;default;[n] ./*[1];self::stree;CQFresetNesting".split(";"),["Rule","unknown","default","[n] text()","self::unknown"],'Rule;protected;default;[t] text();self::number;contains(@grammar, "protected")'.split(";"),["Rule","omit-empty","default","[p] (pause:100)","self::empty"],'Rule;blank-empty;default;[t] "Blank";self::empty;count(../*)=1;name(../..)="cell" or name(../..)="line"'.split(";"),'Rule{font{default{[t] @font (grammar:localFont); [n] . (grammar:ignoreFont=@font){self::*{@font{not(contains(@grammar, "ignoreFont")){@font!="normal"'.split("{"), +'Rule{font-identifier-short{default{[t] @font (grammar:localFont); [n] . (grammar:ignoreFont=@font){self::identifier{string-length(text())=1{@font{not(contains(@grammar, "ignoreFont")){@font="normal"{""=translate(text(), "abcdefghijklmnopqrstuvwxyz\u03b1\u03b2\u03b3\u03b4\u03b5\u03b6\u03b7\u03b8\u03b9\u03ba\u03bb\u03bc\u03bd\u03be\u03bf\u03c0\u03c1\u03c2\u03c3\u03c4\u03c5\u03c6\u03c7\u03c8\u03c9ABCDEFGHIJKLMNOPQRSTUVWXYZ\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u039f\u03a0\u03a1\u03a3\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9", ""){@role!="unit"'.split("{"), +'Rule{font-identifier{default{[t] @font (grammar:localFont); [n] . (grammar:ignoreFont=@font){self::identifier{string-length(text())=1{@font{@font="normal"{not(contains(@grammar, "ignoreFont")){@role!="unit"'.split("{"),'Rule;omit-font;default;[n] . (grammar:ignoreFont=@font);self::identifier;string-length(text())=1;@font;not(contains(@grammar, "ignoreFont"));@font="italic"'.split(";"),'Rule{german-font{default{[t] "German"; [n] . (grammar:ignoreFont=@font){self::*{@font{not(contains(@grammar, "ignoreFont")){@font="fraktur"'.split("{"), +'Rule{german-font{default{[t] "bold German"; [n] . (grammar:ignoreFont=@font){self::*{@font{not(contains(@grammar, "ignoreFont")){@font="bold-fraktur"'.split("{"),["Rule","number","default","[n] text()","self::number"],'Rule,mixed-number,default,[n] children/*[1]; [t] "and"; [n] children/*[2]; ,self::number,@role="mixed"'.split(","),'Rule{number-with-chars{default{[t] "Number"; [m] CQFspaceoutNumber (grammar:protected){self::number{@role="othernumber"{"" != translate(text(), "0123456789.,", ""){not(contains(@grammar, "protected"))'.split("{"), +["SpecializedRule","number-with-chars","default","brief",'[t] "Num"; [m] CQFspaceoutNumber (grammar:protected)'],["SpecializedRule","number-with-chars","brief","sbrief"],'Rule{number-as-upper-word{default{[t] "UpperWord"; [t] CSFspaceoutText{self::number{string-length(text())>1{text()=translate(text(), "abcdefghijklmnopqrstuvwxyz\u03b1\u03b2\u03b3\u03b4\u03b5\u03b6\u03b7\u03b8\u03b9\u03ba\u03bb\u03bc\u03bd\u03be\u03bf\u03c0\u03c1\u03c2\u03c3\u03c4\u03c5\u03c6\u03c7\u03c8\u03c9", "ABCDEFGHIJKLMNOPQRSTUVWXYZ\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u039f\u03a0\u03a1\u03a3\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9"){""=translate(text(), "ABCDEFGHIJKLMNOPQRSTUVWXYZ\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u039f\u03a0\u03a1\u03a3\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9","")'.split("{"), +["SpecializedRule","number-as-upper-word","default","brief"],["SpecializedRule","number-as-upper-word","default","sbrief"],'Rule{number-baseline{default{[t] "Baseline"; [n] . (grammar:baseline){self::number{not(contains(@grammar, "ignoreFont")){preceding-sibling::identifier{not(contains(@grammar, "baseline")){preceding-sibling::*[1][@role="latinletter" or @role="greekletter" or @role="otherletter"]{parent::*/parent::infixop[@role="implicit"]'.split("{"),["SpecializedRule","number-baseline","default", +"brief",'[t] "Base"; [n] . (grammar:baseline)'],["SpecializedRule","number-baseline","brief","sbrief"],'Rule{number-baseline-font{default{[t] "Baseline"; [t] @font; [n] . (grammar:ignoreFont=@font){self::number{@font{not(contains(@grammar, "ignoreFont")){@font!="normal"{preceding-sibling::identifier{preceding-sibling::*[@role="latinletter" or @role="greekletter" or @role="otherletter"]{parent::*/parent::infixop[@role="implicit"]'.split("{"),["SpecializedRule","number-baseline-font","default","brief", +'[t] "Base"; [t] @font; [n] . (grammar:ignoreFont=@font)'],["SpecializedRule","number-baseline-font","brief","sbrief"],'Rule;identifier;default;[m] CQFspaceoutIdentifier;self::identifier;string-length(text())>1;@role!="unit";not(@font) or @font="normal" or contains(@grammar, "ignoreFont");text()!=translate(text(), "abcdefghijklmnopqrstuvwxyz\u03b1\u03b2\u03b3\u03b4\u03b5\u03b6\u03b7\u03b8\u03b9\u03ba\u03bb\u03bc\u03bd\u03be\u03bf\u03c0\u03c1\u03c2\u03c3\u03c4\u03c5\u03c6\u03c7\u03c8\u03c9ABCDEFGHIJKLMNOPQRSTUVWXYZ\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u039f\u03a0\u03a1\u03a3\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9", "")'.split(";"), +["Rule","identifier","default","[n] text()","self::identifier"],'Rule,negative,default,[t] "negative"; [n] children/*[1],self::prefixop,@role="negative",children/identifier'.split(","),["Aliases","negative","self::prefixop",'@role="negative"',"children/number"],["Aliases","negative","self::prefixop",'@role="negative"','children/fraction[@role="vulgar"]'],'Rule,negative,default,[t] "minus"; [n] children/*[1],self::prefixop,@role="negative"'.split(","),["Rule","prefix","default","[m] content/*; [n] children/*[1]", +"self::prefixop"],["Rule","postfix","default","[n] children/*[1]; [m] content/*","self::postfixop"],["Rule","binary-operation","default","[m] children/* (sepFunc:CTXFcontentIterator);","self::infixop"],'Rule;implicit;default;[m] children/*;self::infixop;@role="implicit"'.split(";"),["Aliases","implicit","self::infixop",'@role="leftsuper" or @role="leftsub" or @role="rightsuper" or @role="rightsub"'],'Rule,subtraction,default,[m] children/* (separator:"minus");,self::infixop,@role="subtraction"'.split(","), +["Rule","function-unknown","default","[n] children/*[1]; [n] children/*[2]","self::appl"],'Rule,function-prefix,default,[n] children/*[1]; [n] children/*[2],self::appl,children/*[1][@role="prefix function"]'.split(","),'Rule,fences-open-close,default,[n] content/*[1]; [n] children/*[1]; [n] content/*[2],self::fenced,@role="leftright"'.split(","),'Rule,fences-neutral,default,[t] "StartAbsoluteValue"; [n] children/*[1]; [t] "EndAbsoluteValue",self::fenced,@role="neutral",content/*[1][text()]="|" or content/*[1][text()]="\u2758" or content/*[1][text()]="\uff5c"'.split(","), +["SpecializedRule","fences-neutral","default","sbrief",'[t] "AbsoluteValue"; [n] children/*[1]; [t] "EndAbsoluteValue"'],'Rule,fences-neutral,default,[n] content/*[1]; [n] children/*[1]; [n] content/*[2],self::fenced,@role="neutral"'.split(","),'Rule,fences-set,default,[t] "StartSet"; [n] children/*[1]; [t] "EndSet",self::fenced,@role="set empty" or @role="set extended" or @role="set singleton" or @role="set collection",not(name(../..)="appl")'.split(","),["SpecializedRule","fences-set","default", +"sbrief",'[t] "Set"; [n] children/*[1]; [t] "EndSet"'],["Rule","text","default","[n] text()","self::text"],'Rule;factorial;default;[t] "factorial";self::punctuation;text()="!";name(preceding-sibling::*[1])!="text"'.split(";"),'Rule;minus;default;[t] "minus";self::operator;text()="-"'.split(";"),'Rule;single-prime;default;[t] "prime";self::punctuated;@role="prime";count(children/*)=1'.split(";"),'Rule;double-prime;default;[t] "double prime";self::punctuated;@role="prime";count(children/*)=2'.split(";"), +'Rule;triple-prime;default;[t] "triple prime";self::punctuated;@role="prime";count(children/*)=3'.split(";"),'Rule;quadruple-prime;default;[t] "quadruple prime";self::punctuated;@role="prime";count(children/*)=4'.split(";"),'Rule,counted-prime,default,[t] count(children/*); [t] "prime",self::punctuated,@role="prime"'.split(","),["Rule","fraction","default","[t] CSFopenFracVerbose; [n] children/*[1]; [t] CSFoverFracVerbose; [n] children/*[2]; [t] CSFcloseFracVerbose","self::fraction"],["Rule","fraction", +"brief","[t] CSFopenFracBrief; [n] children/*[1]; [t] CSFoverFracVerbose; [n] children/*[2]; [t] CSFcloseFracBrief","self::fraction"],["Rule","fraction","sbrief","[t] CSFopenFracSbrief; [n] children/*[1]; [t] CSFoverFracSbrief; [n] children/*[2]; [t] CSFcloseFracSbrief","self::fraction"],'Rule;vulgar-fraction;default;[t] CSFvulgarFraction;self::fraction;@role="vulgar";CQFvulgarFractionSmall'.split(";"),["SpecializedRule","vulgar-fraction","default","brief"],["SpecializedRule","vulgar-fraction","default", +"sbrief"],'Rule,continued-fraction-outer,default,[t] "ContinuedFraction"; [n] children/*[1];[t] "Over"; [n] children/*[2],self::fraction,not(ancestor::fraction),children/*[2]/descendant-or-self::*[@role="ellipsis" and not(following-sibling::*)]'.split(","),["SpecializedRule","continued-fraction-outer","default","brief",'[t] "ContinuedFrac"; [n] children/*[1];[t] "Over"; [n] children/*[2]'],["SpecializedRule","continued-fraction-outer","brief","sbrief"],'Rule,continued-fraction-inner,default,[t] "StartFraction"; [n] children/*[1];[t] "Over"; [n] children/*[2],self::fraction,ancestor::fraction,children/*[2]/descendant-or-self::*[@role="ellipsis" and not(following-sibling::*)]'.split(","), +["SpecializedRule","continued-fraction-inner","default","brief",'[t] "StartFrac"; [n] children/*[1];[t] "Over"; [n] children/*[2]'],["SpecializedRule","continued-fraction-inner","brief","sbrief",'[t] "Frac"; [n] children/*[1];[t] "Over"; [n] children/*[2]'],["Rule","sqrt","default","[t] CSFopenRadicalVerbose; [n] children/*[1]; [t] CSFcloseRadicalVerbose","self::sqrt"],["Rule","sqrt","brief","[t] CSFopenRadicalBrief; [n] children/*[1]; [t] CSFcloseRadicalBrief","self::sqrt"],["Rule","sqrt","sbrief", +"[t] CSFopenRadicalSbrief; [n] children/*[1]; [t] CSFcloseRadicalBrief","self::sqrt"],["Rule","root","default","[t] CSFindexRadicalVerbose; [n] children/*[1];[t] CSFopenRadicalVerbose; [n] children/*[2]; [t] CSFcloseRadicalVerbose","self::root"],["Rule","root","brief","[t] CSFindexRadicalBrief; [n] children/*[1];[t] CSFopenRadicalBrief; [n] children/*[2]; [t] CSFcloseRadicalBrief","self::root"],["Rule","root","sbrief","[t] CSFindexRadicalSbrief; [n] children/*[1];[t] CSFopenRadicalSbrief; [n] children/*[2]; [t] CSFcloseRadicalBrief", +"self::root"],'Rule,limboth,default,[n] children/*[1]; [t] CSFunderscript; [n] children/*[2];[t] CSFoverscript; [n] children/*[3],self::limboth,name(../..)="underscore" or name(../..)="overscore",following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(","),'Rule,limlower,default,[n] children/*[1]; [t] CSFunderscript; [n] children/*[2];,self::limlower,name(../..)="underscore" or name(../..)="overscore",following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(","), +'Rule,limupper,default,[n] children/*[1]; [t] CSFoverscript; [n] children/*[2];,self::limupper,name(../..)="underscore" or name(../..)="overscore",following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(","),'Aliases;limlower;self::underscore;@role="limit function";name(../..)="underscore" or name(../..)="overscore";following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(";"),'Aliases;limlower;self::underscore;children/*[2][@role!="underaccent"];name(../..)="underscore" or name(../..)="overscore";following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(";"), +'Aliases;limupper;self::overscore;children/*[2][@role!="overaccent"];name(../..)="underscore" or name(../..)="overscore";following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(";"),["Rule","limboth-end","default",'[n] children/*[1]; [t] CSFunderscript; [n] children/*[2];[t] CSFoverscript; [n] children/*[3]; [t] "Endscripts"',"self::limboth"],["Rule","limlower-end","default",'[n] children/*[1]; [t] CSFunderscript; [n] children/*[2]; [t] "Endscripts"',"self::limlower"],["Rule","limupper-end", +"default",'[n] children/*[1]; [t] CSFoverscript; [n] children/*[2]; [t] "Endscripts"',"self::limupper"],["Aliases","limlower-end","self::underscore",'@role="limit function"'],["Aliases","limlower-end","self::underscore"],["Aliases","limupper-end","self::overscore"],["Rule","integral","default","[n] children/*[1]; [n] children/*[2]; [n] children/*[3];","self::integral"],'Rule,integral,default,[n] children/*[1]; [t] "Subscript"; [n] children/*[2];[t] "Superscript"; [n] children/*[3]; [t] "Baseline";,self::limboth,@role="integral"'.split(","), +["SpecializedRule","integral","default","brief",'[n] children/*[1]; [t] "Sub"; [n] children/*[2];[t] "Sup"; [n] children/*[3]; [t] "Base";'],["SpecializedRule","integral","brief","sbrief"],["Rule","bigop","default","[n] children/*[1]; [n] children/*[2];","self::bigop"],["Rule","relseq","default","[m] children/* (sepFunc:CTXFcontentIterator)","self::relseq"],'Rule,equality,default,[n] children/*[1]; [n] content/*[1]; [n] children/*[2],self::relseq,@role="equality",count(./children/*)=2'.split(","), +'Rule;multi-equality;default;[m] children/* (sepFunc:CTXFcontentIterator);self::relseq;@role="equality";count(./children/*)>2'.split(";"),["Rule","multrel","default","[m] children/* (sepFunc:CTXFcontentIterator)","self::multirel"],["Rule","subscript","default","[n] children/*[1]; [t] CSFsubscriptVerbose; [n] children/*[2]","self::subscript"],["Rule","subscript","brief","[n] children/*[1]; [t] CSFsubscriptBrief; [n] children/*[2]","self::subscript"],["SpecializedRule","subscript","brief","sbrief"], +'Rule,subscript-simple,default,[n] children/*[1]; [n] children/*[2],self::subscript,name(./children/*[1])="identifier",name(./children/*[2])="number",./children/*[2][@role!="mixed"],./children/*[2][@role!="othernumber"]'.split(","),["SpecializedRule","subscript-simple","default","brief"],["SpecializedRule","subscript-simple","default","sbrief"],'Rule,subscript-baseline,default,[n] children/*[1]; [t] CSFsubscriptVerbose; [n] children/*[2]; [t] CSFbaselineVerbose,self::subscript,following-sibling::*,not(name(following-sibling::subscript/children/*[1])="empty" or (name(following-sibling::infixop[@role="implicit"]/children/*[1])="subscript" and name(following-sibling::*/children/*[1]/children/*[1])="empty")) and @role!="subsup",not(following-sibling::*[@role="rightsuper" or @role="rightsub" or @role="leftsub" or @role="leftsub"])'.split(","), +["SpecializedRule","subscript-baseline","default","brief","[n] children/*[1]; [t] CSFsubscriptBrief; [n] children/*[2]; [t] CSFbaselineBrief"],["SpecializedRule","subscript-baseline","brief","sbrief"],'Aliases;subscript-baseline;self::subscript;not(following-sibling::*);ancestor::fenced|ancestor::root|ancestor::sqrt|ancestor::punctuated|ancestor::fraction;not(ancestor::punctuated[@role="leftsuper" or @role="rightsub" or @role="rightsuper" or @role="rightsub"])'.split(";"),["Aliases","subscript-baseline", +"self::subscript","not(following-sibling::*)","ancestor::relseq|ancestor::multirel",sre.MathspeakUtil.generateBaselineConstraint()],["Aliases","subscript-baseline","self::subscript","not(following-sibling::*)","@embellished"],'Rule,subscript-empty-sup,default,[n] children/*[1]; [n] children/*[2],self::subscript,name(children/*[2])="infixop",name(children/*[2][@role="implicit"]/children/*[1])="superscript",name(children/*[2]/children/*[1]/children/*[1])="empty"'.split(","),["SpecializedRule","subscript-empty-sup", +"default","brief"],["SpecializedRule","subscript-empty-sup","brief","sbrief"],["Aliases","subscript-empty-sup","self::subscript",'name(children/*[2])="superscript"','name(children/*[2]/children/*[1])="empty"'],["Rule","superscript","default","[n] children/*[1]; [t] CSFsuperscriptVerbose; [n] children/*[2]","self::superscript"],["SpecializedRule","superscript","default","brief","[n] children/*[1]; [t] CSFsuperscriptBrief; [n] children/*[2]"],["SpecializedRule","superscript","brief","sbrief"],'Rule,superscript-baseline,default,[n] children/*[1]; [t] CSFsuperscriptVerbose; [n] children/*[2];[t] CSFbaselineVerbose,self::superscript,following-sibling::*,not(name(following-sibling::superscript/children/*[1])="empty" or (name(following-sibling::infixop[@role="implicit"]/children/*[1])="superscript" and name(following-sibling::*/children/*[1]/children/*[1])="empty")) and not(following-sibling::*[@role="rightsuper" or @role="rightsub" or @role="leftsub" or @role="leftsub"])'.split(","), +["SpecializedRule","superscript-baseline","default","brief","[n] children/*[1]; [t] CSFsuperscriptBrief; [n] children/*[2];[t] CSFbaselineBrief"],["SpecializedRule","superscript-baseline","brief","sbrief"],'Aliases;superscript-baseline;self::superscript;not(following-sibling::*);ancestor::punctuated;ancestor::*/following-sibling::* and not(ancestor::punctuated[@role="leftsuper" or @role="rightsub" or @role="rightsuper" or @role="rightsub"])'.split(";"),["Aliases","superscript-baseline","self::superscript", +"not(following-sibling::*)","ancestor::fraction|ancestor::fenced|ancestor::root|ancestor::sqrt"],["Aliases","superscript-baseline","self::superscript","not(following-sibling::*)","ancestor::relseq|ancestor::multirel","not(@embellished)",sre.MathspeakUtil.generateBaselineConstraint()],'Aliases superscript-baseline self::superscript not(following-sibling::*) @embellished not(children/*[2][@role="prime"])'.split(" "),'Rule,superscript-empty-sub,default,[n] children/*[1]; [n] children/*[2],self::superscript,name(children/*[2])="infixop",name(children/*[2][@role="implicit"]/children/*[1])="subscript",name(children/*[2]/children/*[1]/children/*[1])="empty"'.split(","), +["SpecializedRule","superscript-empty-sub","default","brief"],["SpecializedRule","superscript-empty-sub","brief","sbrief"],["Aliases","superscript-empty-sub","self::superscript",'name(children/*[2])="subscript"','name(children/*[2]/children/*[1])="empty"'],'Rule,square,default,[n] children/*[1]; [t] "squared",self::superscript,children/*[2],children/*[2][text()=2],name(children/*[1])!="text" or not(name(children/*[1])="text" and (name(../../../punctuated[@role="text"]/..)="stree" or name(..)="stree")),name(children/*[1])!="subscript" or (name(children/*[1])="subscript" and name(children/*[1]/children/*[1])="identifier" and name(children/*[1]/children/*[2])="number" and children/*[1]/children/*[2][@role!="mixed"] and children/*[1]/children/*[2][@role!="othernumber"]),not(@embellished)'.split(","), +["SpecializedRule","square","default","brief"],["SpecializedRule","square","default","sbrief"],'Aliases;square;self::superscript;children/*[2];children/*[2][text()=2];@embellished;children/*[1][@role="prefix operator"]'.split(";"),'Rule,cube,default,[n] children/*[1]; [t] "cubed",self::superscript,children/*[2],children/*[2][text()=3],name(children/*[1])!="text" or not(name(children/*[1])="text" and (name(../../../punctuated[@role="text"]/..)="stree" or name(..)="stree")),name(children/*[1])!="subscript" or (name(children/*[1])="subscript" and name(children/*[1]/children/*[1])="identifier" and name(children/*[1]/children/*[2])="number" and children/*[1]/children/*[2][@role!="mixed"] and children/*[1]/children/*[2][@role!="othernumber"]),not(@embellished)'.split(","), +["SpecializedRule","cube","default","brief"],["SpecializedRule","cube","default","sbrief"],'Aliases;cube;self::superscript;children/*[2];children/*[2][text()=3];@embellished;children/*[1][@role="prefix operator"]'.split(";"),'Rule,prime,default,[n] children/*[1]; [n] children/*[2],self::superscript,children/*[2],children/*[2][@role="prime"]'.split(","),["SpecializedRule","prime","default","brief"],["SpecializedRule","prime","default","sbrief"],'Rule,prime-subscript,default,[n] children/*[1]/children/*[1]; [n] children/*[2]; [t] CSFsubscriptVerbose; [n] children/*[1]/children/*[2],self::superscript,children/*[2][@role="prime"],name(children/*[1])="subscript",not(following-sibling::*)'.split(","), +["SpecializedRule","prime-subscript","default","brief","[n] children/*[1]/children/*[1]; [n] children/*[2]; [t] CSFsubscriptBrief; [n] children/*[1]/children/*[2]"],["SpecializedRule","prime-subscript","brief","sbrief"],'Rule,prime-subscript-baseline,default,[n] children/*[1]/children/*[1]; [n] children/*[2]; [t] CSFsubscriptVerbose; [n] children/*[1]/children/*[2]; [t] CSFbaselineVerbose,self::superscript,children/*[2][@role="prime"],name(children/*[1])="subscript",following-sibling::*'.split(","), +["SpecializedRule","prime-subscript-baseline","default","brief","[n] children/*[1]/children/*[1]; [n] children/*[2]; [t] CSFsubscriptBrief; [n] children/*[1]/children/*[2]; [t] CSFbaselineBrief"],["SpecializedRule","prime-subscript-baseline","brief","sbrief"],'Aliases prime-subscript-baseline self::superscript children/*[2][@role="prime"] name(children/*[1])="subscript" not(following-sibling::*) @embellished'.split(" "),'Rule,prime-subscript-simple,default,[n] children/*[1]/children/*[1]; [n] children/*[2];[n] children/*[1]/children/*[2],self::superscript,children/*[2][@role="prime"],name(children/*[1])="subscript",name(children/*[1]/children/*[1])="identifier",name(children/*[1]/children/*[2])="number",children/*[1]/children/*[2][@role!="mixed"],children/*[1]/children/*[2][@role!="othernumber"]'.split(","), +["SpecializedRule","prime-subscript-simple","default","brief"],["SpecializedRule","prime-subscript-simple","default","sbrief"],'Rule,overscore,default,[t] "ModifyingAbove"; [n] children/*[1]; [t] "With"; [n] children/*[2],self::overscore,children/*[2][@role="overaccent"]'.split(","),["SpecializedRule","overscore","default","brief",'[t] "ModAbove"; [n] children/*[1]; [t] "With"; [n] children/*[2]'],["SpecializedRule","overscore","brief","sbrief"],'Rule,double-overscore,default,[t] "ModifyingAbove Above"; [n] children/*[1]; [t] "With"; [n] children/*[2],self::overscore,children/*[2][@role="overaccent"],name(children/*[1])="overscore",children/*[1]/children/*[2][@role="overaccent"]'.split(","), +["SpecializedRule","double-overscore","default","brief",'[t] "ModAbove Above"; [n] children/*[1]; [t] "With"; [n] children/*[2]'],["SpecializedRule","double-overscore","brief","sbrief"],'Rule,underscore,default,[t] "ModifyingBelow"; [n] children/*[1]; [t] "With"; [n] children/*[2],self::underscore,children/*[2][@role="underaccent"]'.split(","),["SpecializedRule","underscore","default","brief",'[t] "ModBelow"; [n] children/*[1]; [t] "With"; [n] children/*[2]'],["SpecializedRule","underscore","brief", +"sbrief"],'Rule,double-underscore,default,[t] "ModifyingBelow Below"; [n] children/*[1]; [t] "With"; [n] children/*[2],self::underscore,children/*[2][@role="underaccent"],name(children/*[1])="underscore",children/*[1]/children/*[2][@role="underaccent"]'.split(","),["SpecializedRule","double-underscore","default","brief",'[t] "ModBelow Below"; [n] children/*[1]; [t] "With"; [n] children/*[2]'],["SpecializedRule","double-underscore","brief","sbrief"],'Rule,overbar,default,[n] children/*[1]; [t] "overbar",self::overscore,@role="latinletter" or @role="greekletter" or @role="otherletter",children/*[2][@role="overaccent"],children/*[2][text()="\u00af" or text()="\uffe3" or text()="\uff3f" or text()="_" or text()="\u203e"]'.split(","), +["SpecializedRule","overbar","default","brief",'[n] children/*[1]; [t] "overBar"'],["SpecializedRule","overbar","brief","sbrief"],'Rule,underbar,default,[n] children/*[1]; [t] "underbar",self::underscore,@role="latinletter" or @role="greekletter" or @role="otherletter",children/*[2][@role="underaccent"],children/*[2][text()="\u00af" or text()="\uffe3" or text()="\uff3f" or text()="_" or text()="\u203e"]'.split(","),["SpecializedRule","underbar","default","brief",'[n] children/*[1]; [t] "underBar"'], +["SpecializedRule","underbar","brief","sbrief"],'Rule,overtilde,default,[n] children/*[1]; [t] "overTilde",self::overscore,children/*[2][@role="overaccent"],@role="latinletter" or @role="greekletter" or @role="otherletter",children/*[2][text()="~" or text()="\u02dc" or text()="\u223c" or text()="\uff5e"]'.split(","),["SpecializedRule","overtilde","default","brief",'[n] children/*[1]; [t] "overtilde"'],["SpecializedRule","overtilde","brief","sbrief"],'Rule,undertilde,default,[n] children/*[1]; [t] "underTilde",self::underscore,@role="latinletter" or @role="greekletter" or @role="otherletter",children/*[2][@role="underaccent"],children/*[2][text()="~" or text()="\u02dc" or text()="\u223c" or text()="\uff5e"]'.split(","), +["SpecializedRule","undertilde","default","brief",'[n] children/*[1]; [t] "undertilde"'],["SpecializedRule","undertilde","brief","sbrief"],'Rule,matrix-fence,default,[n] children/*[1];,self::fenced,count(children/*)=1,name(children/*[1])="matrix"'.split(","),["Rule","matrix","default",'[t] "Start"; [t] count(children/*); [t] "By";[t] count(children/*[1]/children/*); [t] "Matrix"; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"Row "); [t] "EndMatrix"',"self::matrix"],["Rule","matrix","sbrief", +'[t] count(children/*); [t] "By";[t] count(children/*[1]/children/*); [t] "Matrix"; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"Row "); [t] "EndMatrix"',"self::matrix"],["Aliases","matrix","self::vector"],["Rule","matrix-row","default",'[m] children/* (ctxtFunc:CTXFordinalCounter,context:"Column");[p] (pause: 200)',"self::row"],'Rule{row-with-label{default{[t] "with Label"; [n] content/*[1]; [t] "EndLabel"(pause: 200); [m] children/* (ctxtFunc:CTXFordinalCounter,context:"Column"){self::row{content'.split("{"), +'Rule{row-with-label{brief{[t] "Label"; [n] content/*[1]; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"Column"){self::row{content'.split("{"),["SpecializedRule","row-with-label","brief","sbrief"],'Rule{row-with-text-label{sbrief{[t] "Label"; [t] CSFRemoveParens;[m] children/* (ctxtFunc:CTXFordinalCounter,context:"Column"){self::row{content{name(content/cell/children/*[1])="text"'.split("{"),'Rule;empty-row;default;[t] "Blank";self::row;count(children/*)=0'.split(";"),["Rule","matrix-cell", +"default","[n] children/*[1]; [p] (pause: 300)","self::cell"],'Rule,empty-cell,default,[t] "Blank"; [p] (pause: 300),self::cell,count(children/*)=0'.split(","),'Rule{determinant{default{[t] "Start"; [t] count(children/*); [t] "By";[t] count(children/*[1]/children/*); [t] "Determinant"; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"Row "); [t] "EndDeterminant"{self::matrix{@role="determinant"'.split("{"),["SpecializedRule","determinant","default","sbrief",'[t] count(children/*); [t] "By";[t] count(children/*[1]/children/*); [t] "Determinant"; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"Row "); [t] "EndDeterminant"'], +'Rule{determinant-simple{default{[t] "Start"; [t] count(children/*); [t] "By";[t] count(children/*[1]/children/*); [t] "Determinant"; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"Row",grammar:simpleDet); [t] "EndDeterminant"{self::matrix{@role="determinant"{CQFdetIsSimple'.split("{"),["SpecializedRule","determinant-simple","default","sbrief",'[t] count(children/*); [t] "By";[t] count(children/*[1]/children/*); [t] "Determinant"; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"Row",grammar:simpleDet); [t] "EndDeterminant"'], +'Rule{row-simple{default{[m] children/*;{self::row{@role="determinant"{contains(@grammar, "simpleDet")'.split("{"),["Rule","layout","default",'[t] "StartLayout"; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"Row "); [t] "EndLayout"',"self::table"],["Rule","layout","sbrief",'[t] "Layout"; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"Row "); [t] "EndLayout"',"self::table"],'Rule,binomial,default,[t] "StartBinomialOrMatrix"; [n] children/*[1]/children/*[1]; [t] "Choose"; [n] children/*[2]/children/*[1]; [t] "EndBinomialOrMatrix",self::vector,@role="binomial"'.split(","), +'Rule,binomial,sbrief,[t] "BinomialOrMatrix"; [n] children/*[1]/children/*[1]; [t] "Choose"; [n] children/*[2]/children/*[1]; [t] "EndBinomialOrMatrix",self::vector,@role="binomial"'.split(","),["Rule","cases","default",'[t] "StartLayout"; [t] "Enlarged"; [n] content/*[1];[m] children/* (ctxtFunc:CTXFordinalCounter,context:"Row "); [t] "EndLayout"',"self::cases"],["Rule","cases","sbrief",'[t] "Layout"; [t] "Enlarged"; [n] content/*[1];[m] children/* (ctxtFunc:CTXFordinalCounter,context:"Row "); [t] "EndLayout"', +"self::cases"],["Aliases","layout","self::multiline"],["Rule","line","default","[m] children/*","self::line"],'Rule,line-with-label,default,[t] "with Label"; [n] content/*[1]; [t] "EndLabel" (pause: 200); [m] children/*,self::line,content'.split(","),["SpecializedRule","line-with-label","default","brief",'[t] "Label"; [n] content/*[1] (pause: 200); [m] children/*'],["SpecializedRule","line-with-label","brief","sbrief"],'Rule,line-with-text-label,sbrief,[t] "Label"; [t] CSFRemoveParens; [m] children/*,self::line,content,name(content/cell/children/*[1])="text"'.split(","), +'Rule;empty-line;default;[t] "Blank";self::line;count(children/*)=0;not(content)'.split(";"),["SpecializedRule","empty-line","default","brief"],["SpecializedRule","empty-line","brief","sbrief"],'Rule,empty-line-with-label,default,[t] "with Label"; [n] content/*[1]; [t] "EndLabel"(pause: 200); [t] "Blank",self::line,count(children/*)=0,content'.split(","),["SpecializedRule","empty-line-with-label","default","brief",'[t] "Label"; [n] content/*[1] (pause: 200); [t] "Blank"'],["SpecializedRule","empty-line-with-label", +"brief","sbrief"],["Rule","enclose","default",'[t] "StartEnclose"; [t] @role (grammar:localEnclose); [n] children/*[1]; [t] "EndEnclose"',"self::enclose"],["Aliases","overbar","self::enclose",'@role="top"'],["Aliases","underbar","self::enclose",'@role="bottom"'],'Rule,leftbar,default,[t] "vertical bar"; [n] children/*[1],self::enclose,@role="left"'.split(","),'Rule,rightbar,default,[n] children/*[1]; [t] "vertical bar",self::enclose,@role="right"'.split(","),'Rule,crossout,default,[t] "CrossOut"; [n] children/*[1]; [t] "EndCrossOut",self::enclose,@role="updiagonalstrike" or @role="downdiagonalstrike" or @role="horizontalstrike"'.split(","), +'Rule,cancel,default,[t] "CrossOut"; [n] children/*[1]/children/*[1]; [t] "With"; [n] children/*[2]; [t] "EndCrossOut",self::overscore,@role="updiagonalstrike" or @role="downdiagonalstrike" or @role="horizontalstrike"'.split(","),["SpecializedRule","cancel","default","brief"],["SpecializedRule","cancel","default","sbrief"],["Aliases","cancel","self::underscore",'@role="updiagonalstrike" or @role="downdiagonalstrike" or @role="horizontalstrike"'],'Rule,cancel-reverse,default,[t] "CrossOut"; [n] children/*[2]/children/*[1]; [t] "With"; [n] children/*[1]; [t] "EndCrossOut",self::overscore,name(children/*[2])="enclose",children/*[2][@role="updiagonalstrike" or @role="downdiagonalstrike" or @role="horizontalstrike"]'.split(","), +["SpecializedRule","cancel-reverse","default","brief"],["SpecializedRule","cancel-reverse","default","sbrief"],["Aliases","cancel-reverse","self::underscore",'name(children/*[2])="enclose"','children/*[2][@role="updiagonalstrike" or @role="downdiagonalstrike" or @role="horizontalstrike"]'],'Rule;end-punct;default;[m] children/*;self::punctuated;@role="endpunct"'.split(";"),'Rule,start-punct,default,[n] content/*[1]; [m] children/*[position()>1],self::punctuated,@role="startpunct"'.split(","),'Rule,integral-punct,default,[n] children/*[1]; [n] children/*[3],self::punctuated,@role="integral"'.split(","), +["Rule","punctuated","default","[m] children/*","self::punctuated"],'Rule;unit;default;[t] text() (grammar:annotation="unit":translate:plural);self::identifier;@role="unit"'.split(";"),'Rule;unit-combine;default;[m] children/*;self::infixop;@role="unit"'.split(";"),'Rule,unit-divide,default,[n] children/*[1]; [t] "per"; [n] children/*[2],self::fraction,@role="unit"'.split(","),["Rule","inference","default",'[t] "inference rule"; [m] content/*; [t] "with conclusion"; [n] children/*[1]; [t] "and"; [t] count(children/*[2]/children/*); [t] "premises"', +"self::inference"],'Rule,inference,default,[t] "inference rule"; ; [m] content/*; [t] "with conclusion"; [n] children/*[1]; [t] "and"; [t] count(children/*[2]/children/*); [t] "premise",self::inference,count(children/*[2]/children/*)<2'.split(","),["Rule","premise","default",'[m] children/* (ctxtFunc:CTXFordinalCounter,context:"premise ");',"self::premises"],["Rule","conclusion","default","[n] children/*[1]","self::conclusion"],["Rule","label","default",'[t] "label"; [n] children/*[1]',"self::rulelabel"], +'Rule,axiom,default,[t] "axiom"; [m] children/*[1];,self::inference,@role="axiom"'.split(","),'Rule,axiom,default,[t] "empty axiom";,self::empty,@role="axiom"'.split(",")],initialize:[sre.MathspeakUtil.generateTensorRules]};sre.MathspeakSpanishUtil={};sre.MathspeakSpanishUtil.ordinalCounter=function(a,b){var c=0;return function(){return sre.Messages.NUMBERS.numberToOrdinal(++c,!1)+" "+b}};sre.MathspeakSpanishUtil.smallRoot=function(a){if(!a.childNodes||0===a.childNodes.length||!a.childNodes[0].childNodes)return[];var b=a.childNodes[0].childNodes[0].textContent;if(!/^\d+$/.test(b))return[];b=parseInt(b,10);return 1=b?[a]:[]};sre.UnitUtil={};sre.UnitUtil.unitMultipliers=function(a,b){var c=0;return function(){var d=sre.AuditoryDescription.create({text:sre.UnitUtil.rightMostUnit(a[c])&&sre.UnitUtil.leftMostUnit(a[c+1])?sre.Messages.UNIT_TIMES:""},{});c++;return[d]}};sre.UnitUtil.SCRIPT_ELEMENTS=[sre.SemanticAttr.Type.SUPERSCRIPT,sre.SemanticAttr.Type.SUBSCRIPT,sre.SemanticAttr.Type.OVERSCORE,sre.SemanticAttr.Type.UNDERSCORE]; +sre.UnitUtil.rightMostUnit=function(a){for(;a;){if("unit"===a.getAttribute("role"))return!0;var b=a.tagName;a=sre.XpathUtil.evalXPath("children/*",a);a=-1!==sre.UnitUtil.SCRIPT_ELEMENTS.indexOf(b)?a[0]:a[a.length-1]}return!1};sre.UnitUtil.leftMostUnit=function(a){for(;a;){if("unit"===a.getAttribute("role"))return!0;a=sre.XpathUtil.evalXPath("children/*",a)[0]}return!1}; +sre.UnitUtil.oneLeft=function(a){for(;a;){if("number"===a.tagName&&"1"===a.textContent)return[a];if("infixop"!==a.tagName||"multiplication"!==a.getAttribute("role")&&"implicit"!==a.getAttribute("role"))break;a=sre.XpathUtil.evalXPath("children/*",a)[0]}return[]};sre.MathspeakSpanish={locale:"es",domain:"mathspeak",functions:[["CQF","CQFspaceoutNumber",sre.MathspeakUtil.spaceoutNumber],["CQF","CQFspaceoutIdentifier",sre.MathspeakUtil.spaceoutIdentifier],["CSF","CSFspaceoutText",sre.MathspeakUtil.spaceoutText],["CSF","CSFopenFracVerbose",sre.MathspeakUtil.openingFractionVerbose],["CSF","CSFcloseFracVerbose",sre.MathspeakUtil.closingFractionVerbose],["CSF","CSFoverFracVerbose",sre.MathspeakUtil.overFractionVerbose],["CSF","CSFopenFracBrief",sre.MathspeakUtil.openingFractionBrief], +["CSF","CSFcloseFracBrief",sre.MathspeakUtil.closingFractionBrief],["CSF","CSFopenFracSbrief",sre.MathspeakUtil.openingFractionSbrief],["CSF","CSFcloseFracSbrief",sre.MathspeakUtil.closingFractionSbrief],["CSF","CSFoverFracSbrief",sre.MathspeakUtil.overFractionSbrief],["CSF","CSFopenRadicalVerbose",sre.MathspeakUtil.openingRadicalVerbose],["CSF","CSFcloseRadicalVerbose",sre.MathspeakUtil.closingRadicalVerbose],["CSF","CSFindexRadicalVerbose",sre.MathspeakUtil.indexRadicalVerbose],["CSF","CSFopenRadicalBrief", +sre.MathspeakUtil.openingRadicalBrief],["CSF","CSFcloseRadicalBrief",sre.MathspeakUtil.closingRadicalBrief],["CSF","CSFindexRadicalBrief",sre.MathspeakUtil.indexRadicalBrief],["CSF","CSFopenRadicalSbrief",sre.MathspeakUtil.openingRadicalSbrief],["CSF","CSFindexRadicalSbrief",sre.MathspeakUtil.indexRadicalSbrief],["CQF","CQFisSmallRoot",sre.MathspeakSpanishUtil.smallRoot],["CSF","CSFsuperscriptVerbose",sre.MathspeakUtil.superscriptVerbose],["CSF","CSFsuperscriptBrief",sre.MathspeakUtil.superscriptBrief], +["CSF","CSFsubscriptVerbose",sre.MathspeakUtil.subscriptVerbose],["CSF","CSFsubscriptBrief",sre.MathspeakUtil.subscriptBrief],["CSF","CSFbaselineVerbose",sre.MathspeakUtil.baselineVerbose],["CSF","CSFbaselineBrief",sre.MathspeakUtil.baselineBrief],["CSF","CSFleftsuperscriptVerbose",sre.MathspeakUtil.superscriptVerbose],["CSF","CSFleftsubscriptVerbose",sre.MathspeakUtil.subscriptVerbose],["CSF","CSFrightsuperscriptVerbose",sre.MathspeakUtil.superscriptVerbose],["CSF","CSFrightsubscriptVerbose",sre.MathspeakUtil.subscriptVerbose], +["CSF","CSFleftsuperscriptBrief",sre.MathspeakUtil.superscriptBrief],["CSF","CSFleftsubscriptBrief",sre.MathspeakUtil.subscriptBrief],["CSF","CSFrightsuperscriptBrief",sre.MathspeakUtil.superscriptBrief],["CSF","CSFrightsubscriptBrief",sre.MathspeakUtil.subscriptBrief],["CSF","CSFunderscript",sre.MathspeakUtil.nestedUnderscore],["CSF","CSFoverscript",sre.MathspeakUtil.nestedOverscore],["CTXF","CTXFordinalCounter",sre.MathspeakSpanishUtil.ordinalCounter],["CTXF","CTXFcontentIterator",sre.StoreUtil.contentIterator], +["CTXF","CTXFunitMultipliers",sre.UnitUtil.unitMultipliers],["CQF","CQFdetIsSimple",sre.MathspeakUtil.determinantIsSimple],["CSF","CSFRemoveParens",sre.MathspeakUtil.removeParens],["CQF","CQFoneLeft",sre.UnitUtil.oneLeft],["CQF","CQFresetNesting",sre.MathspeakUtil.resetNestingDepth]],rules:['Rule{collapsed{default{[n] . (engine:modality=summary,grammar:collapsed); [t] "plegado";{self::*{@alternative{not(contains(@grammar, "collapsed")){self::*{self::*{self::*{self::*{self::*'.split("{"),["SpecializedRule", +"collapsed","default","brief"],["SpecializedRule","collapsed","brief","sbrief"],"Rule;stree;default;[n] ./*[1];self::stree;CQFresetNesting".split(";"),["Rule","unknown","default","[n] text()","self::unknown"],'Rule;protected;default;[t] text();self::number;contains(@grammar, "protected")'.split(";"),["Rule","omit-empty","default","[p] (pause:100)","self::empty"],'Rule;blank-empty;default;[t] "espacio";self::empty;count(../*)=1;name(../..)="cell" or name(../..)="line"'.split(";"),'Rule{font{default{[t] @font (grammar:localFont); [n] . (grammar:ignoreFont=@font){self::*{@font{not(contains(@grammar, "ignoreFont")){@font!="normal"'.split("{"), +'Rule{font-identifier-short{default{[t] @font (grammar:localFont); [n] . (grammar:ignoreFont=@font){self::identifier{string-length(text())=1{@font{not(contains(@grammar, "ignoreFont")){@font="normal"{""=translate(text(), "abcdefghijklmnopqrstuvwxyz\u03b1\u03b2\u03b3\u03b4\u03b5\u03b6\u03b7\u03b8\u03b9\u03ba\u03bb\u03bc\u03bd\u03be\u03bf\u03c0\u03c1\u03c2\u03c3\u03c4\u03c5\u03c6\u03c7\u03c8\u03c9ABCDEFGHIJKLMNOPQRSTUVWXYZ\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u039f\u03a0\u03a1\u03a3\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9", ""){@role!="unit"'.split("{"), +'Rule{font-identifier{default{[t] @font (grammar:localFont); [n] . (grammar:ignoreFont=@font){self::identifier{string-length(text())=1{@font{@font="normal"{not(contains(@grammar, "ignoreFont")){@role!="unit"'.split("{"),'Rule;omit-font;default;[n] . (grammar:ignoreFont=@font);self::identifier;string-length(text())=1;@font;not(contains(@grammar, "ignoreFont"));@font="italic"'.split(";"),["Rule","number","default","[n] text()","self::number"],'Rule,mixed-number,default,[n] children/*[1]; [t] "m\u00e1s"; [n] children/*[2]; ,self::number,@role="mixed"'.split(","), +'Rule{number-with-chars{default{[t] "n\u00famero"; [m] CQFspaceoutNumber (grammar:protected){self::number{@role="othernumber"{"" != translate(text(), "0123456789.,", ""){not(contains(@grammar, "protected"))'.split("{"),["SpecializedRule","number-with-chars","default","brief",'[t] "n\u00fam"; [m] CQFspaceoutNumber (grammar:protected)'],["SpecializedRule","number-with-chars","brief","sbrief"],'Rule{number-as-upper-word{default{[t] "may\u00fascula"; [t] CSFspaceoutText{self::number{string-length(text())>1{text()=translate(text(), "abcdefghijklmnopqrstuvwxyz\u03b1\u03b2\u03b3\u03b4\u03b5\u03b6\u03b7\u03b8\u03b9\u03ba\u03bb\u03bc\u03bd\u03be\u03bf\u03c0\u03c1\u03c2\u03c3\u03c4\u03c5\u03c6\u03c7\u03c8\u03c9", "ABCDEFGHIJKLMNOPQRSTUVWXYZ\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u039f\u03a0\u03a1\u03a3\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9"){""=translate(text(), "ABCDEFGHIJKLMNOPQRSTUVWXYZ\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u039f\u03a0\u03a1\u03a3\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9","")'.split("{"), +["SpecializedRule","number-as-upper-word","default","brief"],["SpecializedRule","number-as-upper-word","default","sbrief"],'Rule{number-baseline{default{[t] "l\u00ednea base"; [n] . (grammar:baseline){self::number{not(contains(@grammar, "ignoreFont")){preceding-sibling::identifier{not(contains(@grammar, "baseline")){preceding-sibling::*[1][@role="latinletter" or @role="greekletter" or @role="otherletter"]{parent::*/parent::infixop[@role="implicit"]'.split("{"),["SpecializedRule","number-baseline", +"default","brief",'[t] "base"; [n] text()'],["SpecializedRule","number-baseline","brief","sbrief"],'Rule{number-baseline-font{default{[t] "l\u00ednea base"; [t] @font (grammar:localFont); [n] . (grammar:ignoreFont=@font){self::number{@font{not(contains(@grammar, "ignoreFont")){@font!="normal"{preceding-sibling::identifier{preceding-sibling::*[@role="latinletter" or @role="greekletter" or @role="otherletter"]{parent::*/parent::infixop[@role="implicit"]'.split("{"),["SpecializedRule","number-baseline-font", +"default","brief",'[t] "base"; [t] @font (grammar:localFont); [n] . (grammar:ignoreFont=@font)'],["SpecializedRule","number-baseline-font","brief","sbrief"],'Rule;identifier;default;[m] CQFspaceoutIdentifier;self::identifier;string-length(text())>1;@role!="unit";not(@font) or @font="normal" or contains(@grammar, "ignoreFont");text()!=translate(text(), "abcdefghijklmnopqrstuvwxyz\u03b1\u03b2\u03b3\u03b4\u03b5\u03b6\u03b7\u03b8\u03b9\u03ba\u03bb\u03bc\u03bd\u03be\u03bf\u03c0\u03c1\u03c2\u03c3\u03c4\u03c5\u03c6\u03c7\u03c8\u03c9ABCDEFGHIJKLMNOPQRSTUVWXYZ\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u039f\u03a0\u03a1\u03a3\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9", "")'.split(";"), +["Rule","identifier","default","[n] text()","self::identifier"],'Rule,negative,default,[t] "menos"; [n] children/*[1],self::prefixop,@role="negative",children/identifier'.split(","),["Aliases","negative","self::prefixop",'@role="negative"',"children/number"],["Aliases","negative","self::prefixop",'@role="negative"','children/fraction[@role="vulgar"]'],'Rule,negative,default,[t] "menos"; [n] children/*[1],self::prefixop,@role="negative"'.split(","),["Rule","prefix","default","[m] content/*; [n] children/*[1]", +"self::prefixop"],["Rule","postfix","default","[n] children/*[1]; [m] content/*","self::postfixop"],["Rule","binary-operation","default","[m] children/* (sepFunc:CTXFcontentIterator);","self::infixop"],'Rule;implicit;default;[m] children/*;self::infixop;@role="implicit"'.split(";"),["Aliases","implicit","self::infixop",'@role="leftsuper" or @role="leftsub" or @role="rightsuper" or @role="rightsub"'],'Rule,subtraction,default,[m] children/* (separator:"menos");,self::infixop,@role="subtraction"'.split(","), +["Rule","function-unknown","default","[n] children/*[1]; [n] children/*[2]","self::appl"],'Rule,function-prefix,default,[n] children/*[1]; [n] children/*[2],self::appl,children/*[1][@role="prefix function"]'.split(","),'Rule,fences-open-close,default,[n] content/*[1]; [n] children/*[1]; [n] content/*[2],self::fenced,@role="leftright"'.split(","),'Rule,fences-neutral,default,[t] "empezar valor absoluto"; [n] children/*[1]; [t] "finalizar valor absoluto",self::fenced,@role="neutral",content/*[1][text()]="|" or content/*[1][text()]="\u2758" or content/*[1][text()]="\uff5c"'.split(","), +["SpecializedRule","fences-neutral","default","sbrief",'[t] "valor absoluto"; [n] children/*[1]; [t] "finalizar valor absoluto"'],'Rule,fences-neutral,default,[n] content/*[1]; [n] children/*[1]; [n] content/*[2],self::fenced,@role="neutral"'.split(","),'Rule,fences-set,default,[t] "empezar llave"; [n] children/*[1]; [t] "finalizar llave",self::fenced,@role="set empty" or @role="set extended" or @role="set singleton" or @role="set collection",not(name(../..)="appl")'.split(","),["SpecializedRule", +"fences-set","default","sbrief",'[t] "llave"; [n] children/*[1]; [t] "finalizar llave"'],["Rule","text","default","[n] text() (grammar:noTranslateText)","self::text"],'Rule;factorial;default;[t] "factorial";self::punctuation;text()="!";name(preceding-sibling::*[1])!="text"'.split(";"),'Rule;minus;default;[t] "menos";self::operator;text()="-"'.split(";"),'Rule;single-prime;default;[t] "prima";self::punctuated;@role="prime";count(children/*)=1'.split(";"),'Rule;double-prime;default;[t] "doble prima";self::punctuated;@role="prime";count(children/*)=2'.split(";"), +'Rule;triple-prime;default;[t] "triple prima";self::punctuated;@role="prime";count(children/*)=3'.split(";"),'Rule;quadruple-prime;default;[t] "cuadruplicar prima";self::punctuated;@role="prime";count(children/*)=4'.split(";"),'Rule,counted-prime,default,[t] count(children/*); [t] "prime",self::punctuated,@role="prime"'.split(","),["Rule","fraction","default","[t] CSFopenFracVerbose; [n] children/*[1]; [t] CSFoverFracVerbose; [n] children/*[2]; [t] CSFcloseFracVerbose","self::fraction"],["Rule","fraction", +"brief","[t] CSFopenFracBrief; [n] children/*[1]; [t] CSFoverFracVerbose; [n] children/*[2]; [t] CSFcloseFracBrief","self::fraction"],["Rule","fraction","sbrief","[t] CSFopenFracSbrief; [n] children/*[1]; [t] CSFoverFracSbrief; [n] children/*[2]; [t] CSFcloseFracSbrief","self::fraction"],'Rule,continued-fraction-outer,default,[t] "fracci\u00f3n continua"; [n] children/*[1];[t] "entre"; [n] children/*[2],self::fraction,not(ancestor::fraction),children/*[2]/descendant-or-self::*[@role="ellipsis" and not(following-sibling::*)]'.split(","), +["SpecializedRule","continued-fraction-outer","default","brief",'[t] "frac continua"; [n] children/*[1];[t] "entre"; [n] children/*[2]'],["SpecializedRule","continued-fraction-outer","brief","sbrief"],'Rule,continued-fraction-inner,default,[t] "empezar fracci\u00f3n"; [n] children/*[1];[t] "entre"; [n] children/*[2],self::fraction,ancestor::fraction,children/*[2]/descendant-or-self::*[@role="ellipsis" and not(following-sibling::*)]'.split(","),["SpecializedRule","continued-fraction-inner","default", +"brief",'[t] "empezar frac"; [n] children/*[1];[t] "entre"; [n] children/*[2]'],["SpecializedRule","continued-fraction-inner","brief","sbrief",'[t] "frac"; [n] children/*[1];[t] "entre"; [n] children/*[2]'],["Rule","sqrt","default","[t] CSFopenRadicalVerbose; [n] children/*[1]; [t] CSFcloseRadicalVerbose","self::sqrt"],["Rule","sqrt","brief","[t] CSFopenRadicalBrief; [n] children/*[1]; [t] CSFcloseRadicalBrief","self::sqrt"],["Rule","sqrt","sbrief","[t] CSFopenRadicalSbrief; [n] children/*[1]; [t] CSFcloseRadicalBrief", +"self::sqrt"],"Rule,root-small,default,[t] CSFopenRadicalVerbose; [n] children/*[2]; [t] CSFcloseRadicalVerbose,self::root,CQFisSmallRoot".split(","),"Rule,root-small,brief,[t] CSFopenRadicalBrief; [n] children/*[2]; [t] CSFcloseRadicalBrief,self::root,CQFisSmallRoot".split(","),"Rule,root-small,sbrief,[t] CSFopenRadicalSbrief; [n] children/*[2]; [t] CSFcloseRadicalBrief,self::root,CQFisSmallRoot".split(","),["Rule","root","default","[t] CSFindexRadicalVerbose; [n] children/*[1];[t] CSFopenRadicalVerbose; [n] children/*[2]; [t] CSFcloseRadicalVerbose", +"self::root"],["Rule","root","brief","[t] CSFindexRadicalBrief; [n] children/*[1];[t] CSFopenRadicalBrief; [n] children/*[2]; [t] CSFcloseRadicalBrief","self::root"],["Rule","root","sbrief","[t] CSFindexRadicalSbrief; [n] children/*[1];[t] CSFopenRadicalSbrief; [n] children/*[2]; [t] CSFcloseRadicalBrief","self::root"],'Rule,limboth,default,[n] children/*[1]; [t] CSFunderscript; [n] children/*[2];[t] CSFoverscript; [n] children/*[3],self::limboth,name(../..)="underscore" or name(../..)="overscore",following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(","), +'Rule,limlower,default,[n] children/*[1]; [t] CSFunderscript; [n] children/*[2];,self::limlower,name(../..)="underscore" or name(../..)="overscore",following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(","),'Rule,limupper,default,[n] children/*[1]; [t] CSFoverscript; [n] children/*[2];,self::limupper,name(../..)="underscore" or name(../..)="overscore",following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(","),'Aliases;limlower;self::underscore;@role="limit function";name(../..)="underscore" or name(../..)="overscore";following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(";"), +'Aliases;limlower;self::underscore;children/*[2][@role!="underaccent"];name(../..)="underscore" or name(../..)="overscore";following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(";"),'Aliases;limupper;self::overscore;children/*[2][@role!="overaccent"];name(../..)="underscore" or name(../..)="overscore";following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(";"),["Rule","limboth-end","default",'[n] children/*[1]; [t] CSFunderscript; [n] children/*[2];[t] CSFoverscript; [n] children/*[3]; [t] "finalizar \u00edndices"', +"self::limboth"],["Rule","limlower-end","default",'[n] children/*[1]; [t] CSFunderscript; [n] children/*[2]; [t] "finalizar \u00edndices"',"self::limlower"],["Rule","limupper-end","default",'[n] children/*[1]; [t] CSFoverscript; [n] children/*[2]; [t] "finalizar \u00edndices"',"self::limupper"],["Aliases","limlower-end","self::underscore",'@role="limit function"'],["Aliases","limlower-end","self::underscore"],["Aliases","limupper-end","self::overscore"],["Rule","integral","default","[n] children/*[1]; [n] children/*[2]; [n] children/*[3];", +"self::integral"],'Rule,integral,default,[n] children/*[1]; [t] "definida"; [t] "sub\u00edndice"; [n] children/*[2];[t] "super\u00edndice"; [n] children/*[3]; [t] "l\u00ednea base";,self::limboth,@role="integral"'.split(","),["SpecializedRule","integral","default","brief",'[n] children/*[1]; [t] "Sub"; [n] children/*[2];[t] "Sup"; [n] children/*[3]; [t] "Base";'],["SpecializedRule","integral","brief","sbrief"],["Rule","bigop","default","[n] children/*[1]; [n] children/*[2];","self::bigop"],["Rule", +"relseq","default","[m] children/* (sepFunc:CTXFcontentIterator)","self::relseq"],'Rule,equality,default,[n] children/*[1]; [n] content/*[1]; [n] children/*[2],self::relseq,@role="equality",count(./children/*)=2'.split(","),'Rule;multi-equality;default;[m] children/* (sepFunc:CTXFcontentIterator);self::relseq;@role="equality";count(./children/*)>2'.split(";"),["Rule","multrel","default","[m] children/* (sepFunc:CTXFcontentIterator)","self::multirel"],["Rule","subscript","default","[n] children/*[1]; [t] CSFsubscriptVerbose; [n] children/*[2]", +"self::subscript"],["Rule","subscript","brief","[n] children/*[1]; [t] CSFsubscriptBrief; [n] children/*[2]","self::subscript"],["SpecializedRule","subscript","brief","sbrief"],'Rule,subscript-baseline,default,[n] children/*[1]; [t] CSFsubscriptVerbose; [n] children/*[2]; [t] CSFbaselineVerbose,self::subscript,following-sibling::*,not(name(following-sibling::subscript/children/*[1])="empty" or (name(following-sibling::infixop[@role="implicit"]/children/*[1])="subscript" and name(following-sibling::*/children/*[1]/children/*[1])="empty")) and @role!="subsup",not(following-sibling::*[@role="rightsuper" or @role="rightsub" or @role="leftsub" or @role="leftsub"])'.split(","), +["SpecializedRule","subscript-baseline","default","brief","[n] children/*[1]; [t] CSFsubscriptBrief; [n] children/*[2]; [t] CSFbaselineBriefS"],["SpecializedRule","subscript-baseline","brief","sbrief"],'Aliases;subscript-baseline;self::subscript;not(following-sibling::*);ancestor::fenced|ancestor::root|ancestor::sqrt|ancestor::punctuated|ancestor::fraction;not(ancestor::punctuated[@role="leftsuper" or @role="rightsub" or @role="rightsuper" or @role="rightsub"])'.split(";"),["Aliases","subscript-baseline", +"self::subscript","not(following-sibling::*)","ancestor::relseq|ancestor::multirel",sre.MathspeakUtil.generateBaselineConstraint()],["Aliases","subscript-baseline","self::subscript","not(following-sibling::*)","@embellished"],'Rule,subscript-empty-sup,default,[n] children/*[1]; [n] children/*[2],self::subscript,name(children/*[2])="infixop",name(children/*[2][@role="implicit"]/children/*[1])="superscript",name(children/*[2]/children/*[1]/children/*[1])="empty"'.split(","),["SpecializedRule","subscript-empty-sup", +"default","brief"],["SpecializedRule","subscript-empty-sup","brief","sbrief"],["Aliases","subscript-empty-sup","self::subscript",'name(children/*[2])="superscript"','name(children/*[2]/children/*[1])="empty"'],["Rule","superscript","default","[n] children/*[1]; [t] CSFsuperscriptVerbose; [n] children/*[2]","self::superscript"],["SpecializedRule","superscript","default","brief","[n] children/*[1]; [t] CSFsuperscriptBrief; [n] children/*[2]"],["SpecializedRule","superscript","brief","sbrief"],'Rule,superscript-baseline,default,[n] children/*[1]; [t] CSFsuperscriptVerbose; [n] children/*[2];[t] CSFbaselineVerbose,self::superscript,following-sibling::*,not(name(following-sibling::superscript/children/*[1])="empty" or (name(following-sibling::infixop[@role="implicit"]/children/*[1])="superscript" and name(following-sibling::*/children/*[1]/children/*[1])="empty")) and not(following-sibling::*[@role="rightsuper" or @role="rightsub" or @role="leftsub" or @role="leftsub"])'.split(","), +["SpecializedRule","superscript-baseline","default","brief","[n] children/*[1]; [t] CSFsuperscriptBrief; [n] children/*[2];[t] CSFbaselineBriefS"],["SpecializedRule","superscript-baseline","brief","sbrief"],'Aliases;superscript-baseline;self::superscript;not(following-sibling::*);ancestor::punctuated;ancestor::*/following-sibling::* and not(ancestor::punctuated[@role="leftsuper" or @role="rightsub" or @role="rightsuper" or @role="rightsub"])'.split(";"),["Aliases","superscript-baseline","self::superscript", +"not(following-sibling::*)","ancestor::fraction|ancestor::fenced|ancestor::root|ancestor::sqrt"],["Aliases","superscript-baseline","self::superscript","not(following-sibling::*)","ancestor::relseq|ancestor::multirel","not(@embellished)",sre.MathspeakUtil.generateBaselineConstraint()],'Aliases superscript-baseline self::superscript not(following-sibling::*) @embellished not(children/*[2][@role="prime"])'.split(" "),'Rule,superscript-empty-sub,default,[n] children/*[1]; [n] children/*[2],self::superscript,name(children/*[2])="infixop",name(children/*[2][@role="implicit"]/children/*[1])="subscript",name(children/*[2]/children/*[1]/children/*[1])="empty"'.split(","), +["SpecializedRule","superscript-empty-sub","default","brief"],["SpecializedRule","superscript-empty-sub","brief","sbrief"],["Aliases","superscript-empty-sub","self::superscript",'name(children/*[2])="subscript"','name(children/*[2]/children/*[1])="empty"'],'Rule,square,default,[n] children/*[1]; [t] "al cuadrado",self::superscript,children/*[2],children/*[2][text()=2],name(children/*[1])!="text" or not(name(children/*[1])="text" and (name(../../../punctuated[@role="text"]/..)="stree" or name(..)="stree")),name(children/*[1])!="subscript" or (name(children/*[1])="subscript" and name(children/*[1]/children/*[1])="identifier" and name(children/*[1]/children/*[2])="number" and children/*[1]/children/*[2][@role!="mixed"] and children/*[1]/children/*[2][@role!="othernumber"]),not(@embellished)'.split(","), +["SpecializedRule","square","default","brief"],["SpecializedRule","square","default","sbrief"],'Aliases;square;self::superscript;children/*[2];children/*[2][text()=2];@embellished;children/*[1][@role="prefix operator"]'.split(";"),'Rule,cube,default,[n] children/*[1]; [t] "al cubo",self::superscript,children/*[2],children/*[2][text()=3],name(children/*[1])!="text" or not(name(children/*[1])="text" and (name(../../../punctuated[@role="text"]/..)="stree" or name(..)="stree")),name(children/*[1])!="subscript" or (name(children/*[1])="subscript" and name(children/*[1]/children/*[1])="identifier" and name(children/*[1]/children/*[2])="number" and children/*[1]/children/*[2][@role!="mixed"] and children/*[1]/children/*[2][@role!="othernumber"]),not(@embellished)'.split(","), +["SpecializedRule","cube","default","brief"],["SpecializedRule","cube","default","sbrief"],'Aliases;cube;self::superscript;children/*[2];children/*[2][text()=3];@embellished;children/*[1][@role="prefix operator"]'.split(";"),'Rule,prime,default,[n] children/*[1]; [n] children/*[2],self::superscript,children/*[2],children/*[2][@role="prime"]'.split(","),["SpecializedRule","prime","default","brief"],["SpecializedRule","prime","default","sbrief"],'Rule,prime-subscript,default,[n] children/*[1]/children/*[1]; [n] children/*[2]; [t] CSFsubscriptVerbose; [n] children/*[1]/children/*[2],self::superscript,children/*[2][@role="prime"],name(children/*[1])="subscript",not(following-sibling::*)'.split(","), +["SpecializedRule","prime-subscript","default","brief","[n] children/*[1]/children/*[1]; [n] children/*[2]; [t] CSFsubscriptBrief; [n] children/*[1]/children/*[2]"],["SpecializedRule","prime-subscript","brief","sbrief"],'Rule,prime-subscript-baseline,default,[n] children/*[1]/children/*[1]; [n] children/*[2]; [t] CSFsubscriptVerbose; [n] children/*[1]/children/*[2]; [t] CSFbaselineVerbose,self::superscript,children/*[2][@role="prime"],name(children/*[1])="subscript",following-sibling::*'.split(","), +["SpecializedRule","prime-subscript-baseline","default","brief","[n] children/*[1]/children/*[1]; [n] children/*[2]; [t] CSFsubscriptBrief; [n] children/*[1]/children/*[2]; [t] CSFbaselineBriefS"],["SpecializedRule","prime-subscript-baseline","brief","sbrief"],'Aliases prime-subscript-baseline self::superscript children/*[2][@role="prime"] name(children/*[1])="subscript" not(following-sibling::*) @embellished'.split(" "),'Rule,overscore,default,[t] "modificando superior"; [n] children/*[1]; [t] "con"; [n] children/*[2],self::overscore,children/*[2][@role="overaccent"]'.split(","), +["SpecializedRule","overscore","default","brief",'[t] "mod superior"; [n] children/*[1]; [t] "con"; [n] children/*[2]'],["SpecializedRule","overscore","brief","sbrief"],'Rule,double-overscore,default,[t] "modificando superior superior"; [n] children/*[1]; [t] "con"; [n] children/*[2],self::overscore,children/*[2][@role="overaccent"],name(children/*[1])="overscore",children/*[1]/children/*[2][@role="overaccent"]'.split(","),["SpecializedRule","double-overscore","default","brief",'[t] "mod superior superior"; [n] children/*[1]; [t] "con"; [n] children/*[2]'], +["SpecializedRule","double-overscore","brief","sbrief"],'Rule,underscore,default,[t] "modificando inferior"; [n] children/*[1]; [t] "con"; [n] children/*[2],self::underscore,children/*[2][@role="underaccent"]'.split(","),["SpecializedRule","underscore","default","brief",'[t] "mod inferior"; [n] children/*[1]; [t] "con"; [n] children/*[2]'],["SpecializedRule","underscore","brief","sbrief"],'Rule,double-underscore,default,[t] "modificando inferior inferior"; [n] children/*[1]; [t] "con"; [n] children/*[2],self::underscore,children/*[2][@role="underaccent"],name(children/*[1])="underscore",children/*[1]/children/*[2][@role="underaccent"]'.split(","), +["SpecializedRule","double-underscore","default","brief",'[t] "mod inferior inferior"; [n] children/*[1]; [t] "con"; [n] children/*[2]'],["SpecializedRule","double-underscore","brief","sbrief"],'Rule,overbar,default,[n] children/*[1]; [t] "barra",self::overscore,@role="latinletter" or @role="greekletter" or @role="otherletter",children/*[2][@role="overaccent"],children/*[2][text()="\u00af" or text()="\uffe3" or text()="\uff3f" or text()="_" or text()="\u203e"]'.split(","),["SpecializedRule","overbar", +"default","brief",'[n] children/*[1]; [t] "barra"'],["SpecializedRule","overbar","brief","sbrief"],'Rule,underbar,default,[n] children/*[1]; [t] "subbarra",self::underscore,@role="latinletter" or @role="greekletter" or @role="otherletter",children/*[2][@role="underaccent"],children/*[2][text()="\u00af" or text()="\uffe3" or text()="\uff3f" or text()="_" or text()="\u203e"]'.split(","),["SpecializedRule","underbar","default","brief",'[n] children/*[1]; [t] "subbarra"'],["SpecializedRule","underbar", +"brief","sbrief"],'Rule,overtilde,default,[n] children/*[1]; [t] "tilde",self::overscore,children/*[2][@role="overaccent"],@role="latinletter" or @role="greekletter" or @role="otherletter",children/*[2][text()="~" or text()="\u02dc" or text()="\u223c" or text()="\uff5e"]'.split(","),["SpecializedRule","overtilde","default","brief",'[n] children/*[1]; [t] "tilde"'],["SpecializedRule","overtilde","brief","sbrief"],'Rule,undertilde,default,[n] children/*[1]; [t] "subtilde",self::underscore,@role="latinletter" or @role="greekletter" or @role="otherletter",children/*[2][@role="underaccent"],children/*[2][text()="~" or text()="\u02dc" or text()="\u223c" or text()="\uff5e"]'.split(","), +["SpecializedRule","undertilde","default","brief",'[n] children/*[1]; [t] "subtilde"'],["SpecializedRule","undertilde","brief","sbrief"],'Rule,matrix-fence,default,[n] children/*[1];,self::fenced,count(children/*)=1,name(children/*[1])="matrix"'.split(","),["Rule","matrix","default",'[t] "empezar matriz"; [t] count(children/*); [t] "por";[t] count(children/*[1]/children/*); [m] children/* (ctxtFunc:CTXFordinalCounter,context:"fila "); [t] "finalizar matriz"',"self::matrix"],["Rule","matrix","sbrief", +'[t] "matriz"; [t] count(children/*); [t] "por";[t] count(children/*[1]/children/*); [m] children/* (ctxtFunc:CTXFordinalCounter,context:" "); [t] "finalizar matriz"',"self::matrix"],["Aliases","matrix","self::vector"],["Rule","matrix-row","default",'[m] children/* (ctxtFunc:CTXFordinalCounter,context:"columna");[p] (pause: 200)',"self::row"],'Rule{row-with-label{default{[t] "con etiqueta"; [n] content/*[1]; [t] "finalizar etiqueta" (pause: 200); [m] children/* (ctxtFunc:CTXFordinalCounter,context:"columna"){self::row{content'.split("{"), +'Rule{row-with-label{brief{[t] "etiqueta"; [n] content/*[1]; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"columna"){self::row{content'.split("{"),["SpecializedRule","row-with-label","brief","sbrief"],'Rule{row-with-text-label{sbrief{[t] "etiqueta"; [t] CSFRemoveParens;[m] children/* (ctxtFunc:CTXFordinalCounter,context:"columna"){self::row{content{name(content/cell/children/*[1])="text"'.split("{"),'Rule;empty-row;default;[t] "espacio";self::row;count(children/*)=0'.split(";"),["Rule","matrix-cell", +"default","[n] children/*[1]; [p] (pause: 300)","self::cell"],'Rule,empty-cell,default,[t] "espacio"; [p] (pause: 300),self::cell,count(children/*)=0'.split(","),'Rule{determinant{default{[t] "empezar determinante"; [t] count(children/*); [t] "por";[t] count(children/*[1]/children/*); [m] children/* (ctxtFunc:CTXFordinalCounter,context:"fila "); [t] "finalizar determinante"{self::matrix{@role="determinant"'.split("{"),["SpecializedRule","determinant","default","sbrief",'[t] "determinante"; [t] count(children/*); [t] "por";[t] count(children/*[1]/children/*); [m] children/* (ctxtFunc:CTXFordinalCounter,context:"fila "); [t] "finalizar determinante"'], +'Rule{determinant-simple{default{[t] "empezar determinante"; [t] count(children/*); [t] "por";[t] count(children/*[1]/children/*); [m] children/* (ctxtFunc:CTXFordinalCounter,context:"fila",grammar:simpleDet); [t] "finalizar determinante"{self::matrix{@role="determinant"{CQFdetIsSimple'.split("{"),["SpecializedRule","determinant-simple","default","sbrief",'[t] "determinante"; [t] count(children/*); [t] "por";[t] count(children/*[1]/children/*); [m] children/* (ctxtFunc:CTXFordinalCounter,context:"fila",grammar:simpleDet); [t] "finalizar determinante"'], +'Rule{row-simple{default{[m] children/*;{self::row{@role="determinant"{contains(@grammar, "simpleDet")'.split("{"),["Rule","layout","default",'[t] "empezar esquema"; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"fila "); [t] "finalizar esquema"',"self::table"],["Rule","layout","sbrief",'[t] "esquema"; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"fila "); [t] "finalizar esquema"',"self::table"],'Rule,binomial,default,[t] "empezar binomial"; [n] children/*[1]/children/*[1]; [t] "en"; [n] children/*[2]/children/*[1]; [t] "finalizar binomial",self::vector,@role="binomial"'.split(","), +'Rule,binomial,sbrief,[t] "binomial"; [n] children/*[1]/children/*[1]; [t] "en"; [n] children/*[2]/children/*[1]; [t] "finalizar binomial",self::vector,@role="binomial"'.split(","),["Rule","cases","default",'[t] "empezar esquema"; [n] content/*[1]; [t] "alargada"; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"fila "); [t] "finalizar esquema"',"self::cases"],["Rule","cases","sbrief",'[t] "esquema"; [n] content/*[1]; [t] "alargada"; [m] children/* (ctxtFunc:CTXFordinalCounter,context:"fila "); [t] "finalizar esquema"', +"self::cases"],["Aliases","layout","self::multiline"],["Rule","line","default","[m] children/*","self::line"],'Rule,line-with-label,default,[t] "con etiqueta"; [n] content/*[1]; [t] "finalizar etiqueta" (pause: 200); [m] children/*,self::line,content'.split(","),["SpecializedRule","line-with-label","default","brief",'[t] "etiqueta"; [n] content/*[1] (pause: 200); [m] children/*'],["SpecializedRule","line-with-label","brief","sbrief"],'Rule,line-with-text-label,sbrief,[t] "etiqueta"; [t] CSFRemoveParens; [m] children/*,self::line,content,name(content/cell/children/*[1])="text"'.split(","), +'Rule;empty-line;default;[t] "espacio";self::line;count(children/*)=0;not(content)'.split(";"),["SpecializedRule","empty-line","default","brief"],["SpecializedRule","empty-line","brief","sbrief"],'Rule,empty-line-with-label,default,[t] "con etiqueta"; [n] content/*[1]; [t] "finalizar etiqueta" (pause: 200); [t] "espacio",self::line,count(children/*)=0,content'.split(","),["SpecializedRule","empty-line-with-label","default","brief",'[t] "etiqueta"; [n] content/*[1] (pause: 200); [t] "espacio"'],["SpecializedRule", +"empty-line-with-label","brief","sbrief"],["Rule","enclose","default",'[t] "empezar rodear"; [t] @role (grammar:localEnclose); [n] children/*[1]; [t] "finalizar rodear"',"self::enclose"],["Aliases","overbar","self::enclose",'@role="top"'],["Aliases","underbar","self::enclose",'@role="bottom"'],'Rule,leftbar,default,[t] "barra vertical"; [n] children/*[1],self::enclose,@role="left"'.split(","),'Rule,rightbar,default,[n] children/*[1]; [t] "barra vertical",self::enclose,@role="right"'.split(","),'Rule,crossout,default,[t] "tachado"; [n] children/*[1]; [t] "finalizar tachado",self::enclose,@role="updiagonalstrike" or @role="downdiagonalstrike" or @role="horizontalstrike"'.split(","), +'Rule,cancel,default,[t] "tachado"; [n] children/*[1]/children/*[1]; [t] "con"; [n] children/*[2]; [t] "finalizar tachado",self::overscore,@role="updiagonalstrike" or @role="downdiagonalstrike" or @role="horizontalstrike"'.split(","),["SpecializedRule","cancel","default","brief"],["SpecializedRule","cancel","default","sbrief"],["Aliases","cancel","self::underscore",'@role="updiagonalstrike" or @role="downdiagonalstrike" or @role="horizontalstrike"'],'Rule,cancel-reverse,default,[t] "tachado"; [n] children/*[2]/children/*[1]; [t] "con"; [n] children/*[1]; [t] "finalizar tachado",self::overscore,name(children/*[2])="enclose",children/*[2][@role="updiagonalstrike" or @role="downdiagonalstrike" or @role="horizontalstrike"]'.split(","), +["SpecializedRule","cancel-reverse","default","brief"],["SpecializedRule","cancel-reverse","default","sbrief"],["Aliases","cancel-reverse","self::underscore",'name(children/*[2])="enclose"','children/*[2][@role="updiagonalstrike" or @role="downdiagonalstrike" or @role="horizontalstrike"]'],'Rule;end-punct;default;[m] children/*;self::punctuated;@role="endpunct"'.split(";"),'Rule,start-punct,default,[n] content/*[1]; [m] children/*[position()>1],self::punctuated,@role="startpunct"'.split(","),'Rule,integral-punct,default,[n] children/*[1]; [n] children/*[3],self::punctuated,@role="integral"'.split(","), +["Rule","punctuated","default","[m] children/*","self::punctuated"],'Rule;unit-singular;default;[t] text() (grammar:annotation="unit":translate);self::identifier;@role="unit"'.split(";"),'Rule;unit-plural;default;[t] text() (grammar:annotation="unit":translate:plural);self::identifier;@role="unit";not(contains(@grammar, "singularUnit"))'.split(";"),'Rule,unit-square,default,[n] children/*[1]; [t] "cuadrado",self::superscript,@role="unit",children/*[2][text()=2],name(children/*[1])="identifier"'.split(","), +'Rule,unit-cubic,default,[n] children/*[1]; [t] "c\u00fabico",self::superscript,@role="unit",children/*[2][text()=3],name(children/*[1])="identifier"'.split(","),'Rule,reciprocal,default,[t] "rec\u00edproco"; [n] children/*[1],self::superscript,@role="unit",name(children/*[1])="identifier",name(children/*[2])="prefixop",children/*[2][@role="negative"],children/*[2]/children/*[1][text()=1],count(preceding-sibling::*)=0 or preceding-sibling::*[@role!="unit"]'.split(","),'Rule,reciprocal,default,[t] "por"; [n] children/*[1],self::superscript,@role="unit",name(children/*[1])="identifier",name(children/*[2])="prefixop",children/*[2][@role="negative"],children/*[2]/children/*[1][text()=1],preceding-sibling::*[@role="unit"]'.split(","), +'Rule;unit-combine;default;[m] children/* (sepFunc:CTXFunitMultipliers);self::infixop;@role="unit"'.split(";"),'Rule,unit-combine-mult,default,[m] children/* (sepFunc:CTXFunitMultipliers);,self::infixop,@role="multiplication" or @role="implicit",children/*[@role="unit"]'.split(","),'Rule{unit-combiner-singular{default{[n] children/*[1]; [t] "por"; [m] children/*[position()>1] (grammar:!singularUnit, sepFunc:CTXFunitMultipliers){self::infixop{@role="unit"{name(children/*[1])!="number"{contains(@grammar, "singularUnit"){count(children/*)>1'.split("{"), +'Rule,unit-combine-singular-first,default,[n] children/*[1]; [n] children/*[2] (grammar:singularUnit); [t] "por"; [m] children/*[position()>2] (sepFunc:CTXFunitMultipliers),self::infixop,@role="unit",name(children/*[1])="number",children/*[1][text()=1]'.split(","),'Rule,unit-combine-singular-first,default,[n] children/*[1]; [n] children/*[2] (grammar:singularUnit); ,self::infixop,@role="unit",name(children/*[1])="number",children/*[1][text()=1],count(children/*)=2'.split(","),'Rule,unit-divide,default,[n] children/*[1]; [t] "por"; [n] children/*[2] (grammar:singularUnit),self::fraction,@role="unit"'.split(",")], +initialize:[sre.MathspeakUtil.generateTensorRules]};sre.NemethUtil={};sre.NemethUtil.openingFraction=function(a){a=sre.MathspeakUtil.fractionNestingDepth(a);return Array(a).join(sre.Messages.MS.FRACTION_REPEAT)+sre.Messages.MS.FRACTION_START};sre.NemethUtil.closingFraction=function(a){a=sre.MathspeakUtil.fractionNestingDepth(a);return Array(a).join(sre.Messages.MS.FRACTION_REPEAT)+sre.Messages.MS.FRACTION_END};sre.NemethUtil.overFraction=function(a){a=sre.MathspeakUtil.fractionNestingDepth(a);return Array(a).join(sre.Messages.MS.FRACTION_REPEAT)+sre.Messages.MS.FRACTION_OVER}; +sre.NemethUtil.overBevelledFraction=function(a){a=sre.MathspeakUtil.fractionNestingDepth(a);return Array(a).join(sre.Messages.MS.FRACTION_REPEAT)+"\u2838"+sre.Messages.MS.FRACTION_OVER};sre.NemethUtil.nestedRadical=function(a,b){a=sre.NemethUtil.radicalNestingDepth(a);return 1===a?b:Array(a).join(sre.Messages.MS.NESTED)+b};sre.NemethUtil.radicalNestingDepth=function(a,b){b=b||0;return a.parentNode?sre.NemethUtil.radicalNestingDepth(a.parentNode,"root"===a.tagName||"sqrt"===a.tagName?b+1:b):b}; +sre.NemethUtil.openingRadical=function(a){return sre.NemethUtil.nestedRadical(a,sre.Messages.MS.STARTROOT)};sre.NemethUtil.closingRadical=function(a){return sre.NemethUtil.nestedRadical(a,sre.Messages.MS.ENDROOT)};sre.NemethUtil.indexRadical=function(a){return sre.NemethUtil.nestedRadical(a,sre.Messages.MS.ROOTINDEX)}; +sre.NemethUtil.enlargeFence=function(a){if(1===a.length)return"\u2820"+a;var b=a.split("");return b.every(function(c){return"\u2833"===c})?"\u2820"+b.join("\u2820"):a.slice(0,1)+"\u2820"+a.slice(1)};sre.Grammar.getInstance().setCorrection("enlargeFence",sre.NemethUtil.enlargeFence);sre.NemethUtil.NUMBER_PROPAGATORS_=[sre.SemanticAttr.Type.MULTIREL,sre.SemanticAttr.Type.RELSEQ,sre.SemanticAttr.Type.PUNCTUATED,sre.SemanticAttr.Type.APPL]; +sre.NemethUtil.checkParent_=function(a){a=a.parent;if(!a)return!1;var b=a.type;return-1!==sre.NemethUtil.NUMBER_PROPAGATORS_.indexOf(b)||b===sre.SemanticAttr.Type.PREFIXOP&&a.role===sre.SemanticAttr.Role.NEGATIVE?!0:!1};sre.NemethUtil.propagateNumber=function(a,b){if(!a.childNodes.length)return sre.NemethUtil.checkParent_(a)&&(b.number=!0),[b.number?"number":"",{number:!1}];sre.NemethUtil.checkParent_(a)&&(b.number=!0);return["",b]}; +sre.NemethUtil.numberIndicator=function(){return new sre.SemanticVisitor("nemeth",sre.NemethUtil.propagateNumber,{number:!0})};sre.NemethUtil.addAnnotators=function(){sre.SemanticAnnotations.getInstance().register(sre.NemethUtil.numberIndicator())};sre.NemethUtil.componentString_={2:"CSFbaseline",1:"CSFsubscript",0:"CSFsuperscript"};sre.NemethUtil.childNumber_={4:2,3:3,2:1,1:4,0:5}; +sre.NemethUtil.generateTensorRuleStrings_=function(a){var b=[],c="";a=parseInt(a,2);for(var d=0;5>d;d++){var e="children/*["+sre.NemethUtil.childNumber_[d]+"]";a&1?c="[t] "+sre.NemethUtil.componentString_[d%3]+"Verbose; [n] "+e+";"+c:b.unshift("name("+e+')="empty"');a>>=1}b.push(c);return b}; +sre.NemethUtil.generateTensorRules=function(a){var b=goog.bind(a.defineRule,a);a=goog.bind(a.defineRulesAlias,a);for(var c="11111 11110 11101 11100 10111 10110 10101 10100 01111 01110 01101 01100".split(" "),d=0,e;e=c[d];d++){var f="tensor"+e;e=sre.NemethUtil.generateTensorRuleStrings_(e);var g=e.pop(),h=[f,"default",g,"self::tensor"].concat(e);b.apply(null,h);g+="; [t]"+sre.NemethUtil.componentString_[2]+"Verbose";f+="-baseline";h=[f,"default",g,"self::tensor","following-sibling::*"].concat(e);b.apply(null, +h);f=[f,"self::tensor","not(following-sibling::*)","ancestor::fraction|ancestor::punctuated|ancestor::fenced|ancestor::root|ancestor::sqrt|ancestor::relseq|ancestor::multirel|@embellished"].concat(e);a.apply(null,f)}};sre.NemethRules={locale:"nemeth",modality:"braille",domain:"default",functions:[["CQF","CQFspaceoutNumber",sre.MathspeakUtil.spaceoutNumber],["CQF","CQFspaceoutIdentifier",sre.MathspeakUtil.spaceoutIdentifier],["CSF","CSFspaceoutText",sre.MathspeakUtil.spaceoutText],["CSF","CSFopenFraction",sre.NemethUtil.openingFraction],["CSF","CSFcloseFraction",sre.NemethUtil.closingFraction],["CSF","CSFoverFraction",sre.NemethUtil.overFraction],["CSF","CSFoverBevFraction",sre.NemethUtil.overBevelledFraction], +["CSF","CSFopenRadicalVerbose",sre.NemethUtil.openingRadical],["CSF","CSFcloseRadicalVerbose",sre.NemethUtil.closingRadical],["CSF","CSFindexRadicalVerbose",sre.NemethUtil.indexRadical],["CSF","CSFsuperscriptVerbose",sre.MathspeakUtil.superscriptVerbose],["CSF","CSFsubscriptVerbose",sre.MathspeakUtil.subscriptVerbose],["CSF","CSFbaselineVerbose",sre.MathspeakUtil.baselineVerbose],["CSF","CSFunderscript",sre.MathspeakUtil.nestedUnderscore],["CSF","CSFoverscript",sre.MathspeakUtil.nestedOverscore], +["CTXF","CTXFordinalCounter",sre.NumbersUtil.ordinalCounter],["CTXF","CTXFcontentIterator",sre.StoreUtil.contentIterator],["CQF","CQFdetIsSimple",sre.MathspeakUtil.determinantIsSimple],["CSF","CSFRemoveParens",sre.MathspeakUtil.removeParens],["CQF","CQFresetNesting",sre.MathspeakUtil.resetNestingDepth]],rules:["Rule;stree;default;[n] ./*[1];self::stree;CQFresetNesting".split(";"),["Rule","unknown","default","[n] text()","self::unknown"],'Rule;protected;default;[t] text();self::*;@role="protected"'.split(";"), +["Rule","omit-empty","default","[p] (pause:100)","self::empty"],'Rule;blank-empty;default;[t] "\u2800";self::empty;count(../*)=1;name(../..)="cell" or name(../..)="line"'.split(";"),'Rule{font{default{[t] @font (grammar:localFont); [n] . (grammar:ignoreFont=@font){self::*{@font{not(contains(@grammar, "ignoreFont")){@font!="normal"'.split("{"),'Rule{font-identifier-short{default{[t] @font (grammar:localFont); [n] . (grammar:ignoreFont=@font){self::identifier{string-length(text())=1{@font{not(contains(@grammar, "ignoreFont")){@font="normal"{""=translate(text(), "abcdefghijklmnopqrstuvwxyz\u03b1\u03b2\u03b3\u03b4\u03b5\u03b6\u03b7\u03b8\u03b9\u03ba\u03bb\u03bc\u03bd\u03be\u03bf\u03c0\u03c1\u03c2\u03c3\u03c4\u03c5\u03c6\u03c7\u03c8\u03c9ABCDEFGHIJKLMNOPQRSTUVWXYZ\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u039f\u03a0\u03a1\u03a3\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9", ""){@role!="unit"'.split("{"), +'Rule{font-identifier{default{[t] @font (grammar:localFont); [n] . (grammar:ignoreFont=@font){self::identifier{string-length(text())=1{@font{@font="normal"{not(contains(@grammar, "ignoreFont")){@role!="unit"'.split("{"),'Rule;omit-font;default;[n] . (grammar:ignoreFont=@font);self::identifier;string-length(text())=1;@font;@role!="greekletter";not(contains(@grammar, "ignoreFont"));@font="italic"'.split(";"),'Rule{number-indicator{default{[t] "\u283c"; [n] text() (pause:10){self::number{contains(@annotation, "nemeth:number"){not(ancestor::sqrt){not(ancestor::root){not(ancestor::fraction)'.split("{"), +["Rule","number","default","[n] text()","self::number"],'Rule,mixed-number,default,[n] children/*[1]; [t] "\u2838\u2839"; [n] children/*[2]/children/*[1]; [t] "\u280c"; [n] children/*[2]/children/*[2]; [t] "\u2838\u283c",self::number,@role="mixed"'.split(","),'Rule{number-with-chars{default{[t] "\u283c"; [m] CQFspaceoutNumber{self::number{"" != translate(text(), "0123456789.,", ""){text() != translate(text(), "0123456789.,", "")'.split("{"),'Rule{number-as-upper-word{default{[t] "UpperWord"; [t] CSFspaceoutText{self::number{string-length(text())>1{text()=translate(text(), "abcdefghijklmnopqrstuvwxyz\u03b1\u03b2\u03b3\u03b4\u03b5\u03b6\u03b7\u03b8\u03b9\u03ba\u03bb\u03bc\u03bd\u03be\u03bf\u03c0\u03c1\u03c2\u03c3\u03c4\u03c5\u03c6\u03c7\u03c8\u03c9", "ABCDEFGHIJKLMNOPQRSTUVWXYZ\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u039f\u03a0\u03a1\u03a3\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9"){""=translate(text(), "ABCDEFGHIJKLMNOPQRSTUVWXYZ\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u039f\u03a0\u03a1\u03a3\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9","")'.split("{"), +'Rule{number-baseline{default{[t] "\u2810"; [n] text(){self::number{not(contains(@grammar, "ignoreFont")){preceding-sibling::identifier{preceding-sibling::*[1][@role="latinletter" or @role="greekletter" or @role="otherletter"]{parent::*/parent::infixop[@role="implicit"]'.split("{"),'Rule{number-baseline-font{default{[t] "\u2810"; [t] @font; [n] . (grammar:ignoreFont=@font){self::number{@font{not(contains(@grammar, "ignoreFont")){@font!="normal"{preceding-sibling::identifier{preceding-sibling::*[@role="latinletter" or @role="greekletter" or @role="otherletter"]{parent::*/parent::infixop[@role="implicit"]'.split("{"), +'Rule;identifier;default;[n] text();self::identifier;@role="protected"'.split(";"),'Rule,negative,default,[t] "\u2824"; [n] children/*[1],self::prefixop,@role="negative"'.split(","),["Rule","prefix","default","[n] text(); [n] children/*[1]","self::prefixop"],["Rule","postfix","default","[n] children/*[1]; [n] text()","self::postfixop"],["Rule","binary-operation","default","[m] children/* (sepFunc:CTXFcontentIterator);","self::infixop"],'Rule;implicit;default;[m] children/*;self::infixop;@role="implicit"'.split(";"), +["Aliases","implicit","self::infixop",'@role="leftsuper" or @role="leftsub" or @role="rightsuper" or @role="rightsub"'],["Rule","function-named","default",'[n] children/*[1]; [t] "\u2800"; [n] children/*[2]',"self::appl"],'Rule,function-prefix,default,[n] content/*[1]; [t] "\u2800"; [n] children/*[1],self::prefixop,content/*[1][@role="infix function"]'.split(","),'Rule,function-infix,default,[n] children/*[1]; [n] content/*[1]; [t] "\u2800"; [n] children/*[2],self::infixop,@role="infix function"'.split(","), +'Rule,function-simple,default,[n] children/*[1]; [n] children/*[2],self::appl,children/*[1][@role="simple function"]'.split(","),["Rule","fences-open-close","default","[n] content/*[1]; [n] children/*[1]; [n] content/*[2]","self::fenced"],'Rule,fences-neutral,default,[n] content/*[1]; [n] children/*[1]; [n] content/*[2],self::fenced,@role="neutral"'.split(","),["Rule","text","default","[n] text()","self::text"],'Rule;factorial;default;[t] "\u282f";self::punctuation;text()="!";name(preceding-sibling::*[1])!="text"'.split(";"), +'Rule;single-prime;default;[t] "\u2804";self::punctuated;@role="prime";count(children/*)=1'.split(";"),'Rule;double-prime;default;[t] "\u2804\u2804";self::punctuated;@role="prime";count(children/*)=2'.split(";"),'Rule;triple-prime;default;[t] "\u2804\u2804\u2804";self::punctuated;@role="prime";count(children/*)=3'.split(";"),'Rule;quadruple-prime;default;[t] "\u2804\u2804\u2804\u2804";self::punctuated;@role="prime";count(children/*)=4'.split(";"),["Rule","fraction","default","[t] CSFopenFraction; [n] children/*[1]; [t] CSFoverFraction; [n] children/*[2]; [t] CSFcloseFraction", +"self::fraction"],'Rule{bevelled-fraction{default{[t] CSFopenFraction; [n] children/*[1]; [t] CSFoverBevFraction; [n] children/*[2]; [t] CSFcloseFraction{self::fraction{contains(@annotation, "general:bevelled")'.split("{"),["Rule","sqrt","default","[t] CSFopenRadicalVerbose; [n] children/*[1]; [t] CSFcloseRadicalVerbose","self::sqrt"],["Rule","root","default",'[t] CSFindexRadicalVerbose; [n] children/*[1];[t] "\u281c"; [n] children/*[2]; [t] CSFcloseRadicalVerbose',"self::root"],'Rule,limboth,default,[t] "\u2810"; [n] children/*[1]; [t] CSFunderscript; [n] children/*[2];[t] CSFoverscript; [n] children/*[3],self::limboth,name(../..)="underscore" or name(../..)="overscore",following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(","), +'Rule,limlower,default,[t] "\u2810"; [n] children/*[1]; [t] CSFunderscript; [n] children/*[2];,self::limlower,name(../..)="underscore" or name(../..)="overscore",following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(","),'Rule,limupper,default,[t] "\u2810"; [n] children/*[1]; [t] CSFoverscript; [n] children/*[2];,self::limupper,name(../..)="underscore" or name(../..)="overscore",following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(","),'Aliases;limlower;self::underscore;@role="limit function";name(../..)="underscore" or name(../..)="overscore";following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(";"), +'Aliases;limlower;self::underscore;children/*[2][@role!="underaccent"];name(../..)="underscore" or name(../..)="overscore";following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(";"),'Aliases;limupper;self::overscore;children/*[2][@role!="overaccent"];name(../..)="underscore" or name(../..)="overscore";following-sibling::*[@role!="underaccent" and @role!="overaccent"]'.split(";"),["Rule","limboth-end","default",'[t] "\u2810"; [n] children/*[1]; [t] CSFunderscript; [n] children/*[2];[t] CSFoverscript; [n] children/*[3]; [t] "\u283b"', +"self::limboth"],["Rule","limlower-end","default",'[t] "\u2810"; [n] children/*[1]; [t] CSFunderscript; [n] children/*[2]; [t] "\u283b"',"self::limlower"],["Rule","limupper-end","default",'[t] "\u2810"; [n] children/*[1]; [t] CSFoverscript; [n] children/*[2]; [t] "\u283b"',"self::limupper"],["Aliases","limlower-end","self::underscore",'@role="limit function"'],["Aliases","limlower-end","self::underscore"],["Aliases","limupper-end","self::overscore"],["Rule","integral","default","[n] children/*[1]; [n] children/*[2]; [n] children/*[3];", +"self::integral"],'Rule,integral,default,[n] children/*[1]; [t] "\u2830"; [n] children/*[2];[t] "\u2818"; [n] children/*[3]; [t] "\u2810",self::limboth,@role="integral"'.split(","),["Rule","bigop","default","[n] children/*[1]; [n] children/*[2];","self::bigop"],["Rule","relseq","default","[m] children/* (sepFunc:CTXFcontentIterator)","self::relseq"],'Rule,equality,default,[n] children/*[1]; [n] content/*[1]; [n] children/*[2],self::relseq,@role="equality",count(./children/*)=2'.split(","),'Rule;multi-equality;default;[m] children/* (sepFunc:CTXFcontentIterator);self::relseq;@role="equality";count(./children/*)>2'.split(";"), +["Rule","multrel","default","[m] children/* (sepFunc:CTXFcontentIterator)","self::multirel"],["Rule","subscript","default","[n] children/*[1]; [t] CSFsubscriptVerbose; [n] children/*[2]","self::subscript"],'Rule,subscript-simple,default,[n] children/*[1]; [n] children/*[2],self::subscript,name(./children/*[1])="identifier",name(./children/*[2])="number",./children/*[2][@role!="mixed"],./children/*[2][@role!="othernumber"],self::*'.split(","),'Rule,subscript-baseline,default,[n] children/*[1]; [t] CSFsubscriptVerbose; [n] children/*[2]; [t] CSFbaselineVerbose,self::subscript,following-sibling::*,@role!="prefix function",not(name(following-sibling::subscript/children/*[1])="empty" or (name(following-sibling::infixop[@role="implicit"]/children/*[1])="subscript" and name(following-sibling::*/children/*[1]/children/*[1])="empty")) and @role!="subsup",not(following-sibling::*[@role="rightsuper" or @role="rightsub" or @role="leftsub" or @role="leftsub"])'.split(","), +'Aliases;subscript-baseline;self::subscript;not(following-sibling::*);ancestor::fenced|ancestor::root|ancestor::sqrt|ancestor::punctuated|ancestor::fraction;not(ancestor::punctuated[@role="leftsuper" or @role="rightsub" or @role="rightsuper" or @role="rightsub"])'.split(";"),["Aliases","subscript-baseline","self::subscript","not(following-sibling::*)","ancestor::relseq|ancestor::multirel",sre.MathspeakUtil.generateBaselineConstraint()],["Aliases","subscript-baseline","self::subscript","not(following-sibling::*)", +"@embellished"],'Rule,subscript-empty-sup,default,[n] children/*[1]; [n] children/*[2],self::subscript,name(children/*[2])="infixop",name(children/*[2][@role="implicit"]/children/*[1])="superscript",name(children/*[2]/children/*[1]/children/*[1])="empty"'.split(","),["Aliases","subscript-empty-sup","self::subscript",'name(children/*[2])="superscript"','name(children/*[2]/children/*[1])="empty"'],["Rule","superscript","default","[n] children/*[1]; [t] CSFsuperscriptVerbose; [n] children/*[2]","self::superscript"], +'Rule,superscript-baseline,default,[n] children/*[1]; [t] CSFsuperscriptVerbose; [n] children/*[2];[t] CSFbaselineVerbose,self::superscript,following-sibling::*,@role!="prefix function",not(name(following-sibling::superscript/children/*[1])="empty" or (name(following-sibling::infixop[@role="implicit"]/children/*[1])="superscript" and name(following-sibling::*/children/*[1]/children/*[1])="empty")) and not(following-sibling::*[@role="rightsuper" or @role="rightsub" or @role="leftsub" or @role="leftsub"])'.split(","), +'Aliases;superscript-baseline;self::superscript;not(following-sibling::*);ancestor::punctuated;ancestor::*/following-sibling::* and not(ancestor::punctuated[@role="leftsuper" or @role="rightsub" or @role="rightsuper" or @role="rightsub"])'.split(";"),["Aliases","superscript-baseline","self::superscript","not(following-sibling::*)","ancestor::fraction|ancestor::fenced|ancestor::root|ancestor::sqrt"],["Aliases","superscript-baseline","self::superscript","not(following-sibling::*)","ancestor::relseq|ancestor::multirel", +"not(@embellished)",sre.MathspeakUtil.generateBaselineConstraint()],'Aliases superscript-baseline self::superscript not(following-sibling::*) @embellished not(children/*[2][@role="prime"])'.split(" "),'Rule,superscript-empty-sub,default,[n] children/*[1]; [n] children/*[2],self::superscript,name(children/*[2])="infixop",name(children/*[2][@role="implicit"]/children/*[1])="subscript",name(children/*[2]/children/*[1]/children/*[1])="empty"'.split(","),["Aliases","superscript-empty-sub","self::superscript", +'name(children/*[2])="subscript"','name(children/*[2]/children/*[1])="empty"'],'Rule,prime,default,[n] children/*[1]; [n] children/*[2],self::superscript,children/*[2],children/*[2][@role="prime"]'.split(","),'Rule,prime-subscript,default,[n] children/*[1]/children/*[1]; [n] children/*[2]; [t] CSFsubscriptVerbose; [n] children/*[1]/children/*[2],self::superscript,children/*[2][@role="prime"],name(children/*[1])="subscript",not(following-sibling::*)'.split(","),'Rule,prime-subscript-baseline,default,[n] children/*[1]/children/*[1]; [n] children/*[2]; [t] CSFsubscriptVerbose; [n] children/*[1]/children/*[2]; [t] CSFbaselineVerbose,self::superscript,children/*[2][@role="prime"],name(children/*[1])="subscript",following-sibling::*'.split(","), +'Aliases prime-subscript-baseline self::superscript children/*[2][@role="prime"] name(children/*[1])="subscript" not(following-sibling::*) @embellished'.split(" "),'Rule,prime-subscript-simple,default,[n] children/*[1]/children/*[1]; [n] children/*[2];[n] children/*[1]/children/*[2],self::superscript,children/*[2][@role="prime"],name(children/*[1])="subscript",name(children/*[1]/children/*[1])="identifier",name(children/*[1]/children/*[2])="number",children/*[1]/children/*[2][@role!="mixed"],children/*[1]/children/*[2][@role!="othernumber"]'.split(","), +'Rule,overscore,default,[t] "\u2810"; [n] children/*[1]; [t] "\u2823"; [n] children/*[2]; [t] "\u283b",self::overscore,children/*[2][@role="overaccent"]'.split(","),'Rule{overscore{default{[n] children/*[1]; [t] "\u2823"; [n] children/*[2]{self::overscore{children/*[2][@role="overaccent"]{contains(@grammar, "modified")'.split("{"),'Rule,double-overscore,default,[t] "\u2810"; [n] children/*[1] (grammar:"modified"); [t] "\u2823"; [n] children/*[2]; [t] "\u283b",self::overscore,children/*[2][@role="overaccent"],name(children/*[1])="overscore",children/*[1]/children/*[2][@role="overaccent"]'.split(","), +'Rule,underscore,default,[t] "\u2810"; [n] children/*[1]; [t] "\u2829"; [n] children/*[2]; [t] "\u283b",self::underscore,children/*[2][@role="underaccent"]'.split(","),'Rule{underscore{default{[n] children/*[1]; [t] "\u2829"; [n] children/*[2]{self::underscore{children/*[2][@role="underaccent"]{contains(@grammar, "modified")'.split("{"),'Rule,double-underscore,default,[t] "\u2810"; [n] children/*[1] (grammar:"modified"); [t] "\u2829"; [n] children/*[2]; [t] "\u283b",self::underscore,children/*[2][@role="underaccent"],name(children/*[1])="underscore",children/*[1]/children/*[2][@role="underaccent"]'.split(","), +'Rule,matrix-fence,default,[n] children/*[1];,self::fenced,count(children/*)=1,name(children/*[1])="matrix"'.split(","),["Rule","matrix","default",'[m] children/* (separator:"\u2800", join:"");',"self::matrix"],["Aliases","matrix","self::vector"],["Rule","matrix-row","default",'[n] ../../content/*[1] (grammar:enlargeFence); [m] children/* (separator:"\u2800"); [n] ../../content/*[2] (grammar:enlargeFence); ',"self::row"],["Aliases","matrix-row","self::line",'@role="vector"'],["Aliases","matrix-row", +"self::line",'@role="binomial"'],'Rule{row-with-label{default{[t] "with Label"; [n] content/*[1]; [t] "EndLabel"(pause: 200); [m] children/* (ctxtFunc:CTXFordinalCounter,context:"Column"){self::row{content'.split("{"),'Rule;empty-row;default;[t] "\u2800" (pause:300);self::row;count(children/*)=0'.split(";"),["Rule","matrix-cell","default","[n] children/*[1]","self::cell"],'Rule;empty-cell;default;[t] "\u2800" (pause: 300);self::cell;count(children/*)=0'.split(";"),["Rule","layout","default",'[m] children/* (separator:"\u2800", join:"");', +"self::table"],["Rule","cases","default",'[n] ../../content/*[1] (grammar:enlargeFence); [m] children/* (separator:"\u2800"); [t] "\u2810"',"self::cases"],["Aliases","layout","self::multiline"],["Rule","line","default","[m] children/*","self::line"],'Rule,line-with-label,default,[t] "with Label"; [n] content/*[1]; [t] "EndLabel" (pause: 200); [m] children/*,self::line,content'.split(","),'Rule;empty-line;default;[t] "\u2800";self::line;count(children/*)=0;not(content)'.split(";"),'Rule,empty-line-with-label,default,[t] "with Label"; [n] content/*[1]; [t] "EndLabel"(pause: 200); [t] "Blank",self::line,count(children/*)=0,content'.split(","), +["Rule","enclose","default",'[t] "StartEnclose"; [t] @role (grammar:localEnclose); [n] children/*[1]; [t] "EndEnclose"',"self::enclose"],'Rule,overbar,default,[t] "\u2810"; [n] children/*[1]; [t] "\u2823\u2831\u283b",self::enclose,@role="top"'.split(","),'Rule,underbar,default,[t] "\u2810"; [n] children/*[1]; [t] "\u2829\u2831\u283b",self::enclose,@role="bottom"'.split(","),'Rule,leftbar,default,[t] "\u2833"; [n] children/*[1],self::enclose,@role="left"'.split(","),'Rule,rightbar,default,[n] children/*[1]; [t] "\u2833",self::enclose,@role="right"'.split(","), +'Rule,crossout,default,[t] "\u282a"; [n] children/*[1]; [t] "\u283b",self::enclose,@role="updiagonalstrike" or @role="downdiagonalstrike" or @role="horizontalstrike"'.split(","),'Rule,cancel,default,[t] "\u282a"; [n] children/*[1]/children/*[1]; [t] "\u282a"; [n] children/*[2]; [t] "\u283b",self::overscore,@role="updiagonalstrike" or @role="downdiagonalstrike" or @role="horizontalstrike"'.split(","),["Aliases","cancel","self::underscore",'@role="updiagonalstrike" or @role="downdiagonalstrike" or @role="horizontalstrike"'], +'Rule,cancel-reverse,default,[t] "\u282a"; [n] children/*[2]/children/*[1]; [t] "\u282a"; [n] children/*[1]; [t] "\u283b",self::overscore,name(children/*[2])="enclose",children/*[2][@role="updiagonalstrike" or @role="downdiagonalstrike" or @role="horizontalstrike"]'.split(","),["Aliases","cancel-reverse","self::underscore",'name(children/*[2])="enclose"','children/*[2][@role="updiagonalstrike" or @role="downdiagonalstrike" or @role="horizontalstrike"]'],'Rule;end-punct;default;[m] children/*;self::punctuated;@role="endpunct"'.split(";"), +'Rule,start-punct,default,[n] content/*[1]; [m] children/*[position()>1],self::punctuated,@role="startpunct"'.split(","),'Rule{punctuation{default{[n] text(); [t] "\u2810"{self::punctuation{@role="fullstop"{contains(@annotation, "nemeth:number")'.split("{"),'Rule,integral-punct,default,[n] children/*[1]; [n] children/*[3],self::punctuated,@role="integral"'.split(","),["Rule","punctuated","default","[m] children/*","self::punctuated"],'Rule,punctuation-comma,default,[n] text(); [t] "\u2800",self::punctuation,parent::*/parent::punctuated,following-sibling::*,@role!="fullstop",@role!="vbar"'.split(","), +'Rule,punctuation-ellipses,default,[t] "\u2800"; [n] text(); [t] "\u2800",self::punctuation,parent::*/parent::punctuated,following-sibling::*,@role="ellipsis",name(preceding-sibling::*[1])!="punctuation"'.split(","),'Rule,punctuation-ellipses,default,[t] "\u2800"; [n] text();,self::punctuation,parent::*/parent::punctuated,@role="ellipsis",name(preceding-sibling::*[1])!="punctuation"'.split(","),'Rule,reference-sign,default,[n] children/*[1]; [n] children/*[2],self::superscript,name(children/*[1])="text" or (name(children/*[1])="punctuated" and children/*[1][@role="text"]),name(children/*[2])="operator" or name(children/*[2])="punctuation"'.split(","), +'Rule,reference-number,default,[n] children/*[1]; [t] "\u2808\u283b"; [n] children/*[2]; [t] "\u2810",self::superscript,name(children/*[1])="text" or (name(children/*[1])="punctuated" and children/*[1][@role="text"]),name(children/*[2])="number",children/*[2][@role="integer"]'.split(",")],initialize:[sre.NemethUtil.generateTensorRules,sre.NemethUtil.addAnnotators]};sre.PrefixFrench={locale:"fr",modality:"prefix",domain:"default",functions:[["CSF","CSFordinalPosition",sre.NumbersUtil.ordinalPosition]],rules:['Rule,numerator,default,[t] "num\u00e9rateur"; [p] (pause:200),self::*,name(../..)="fraction",count(preceding-sibling::*)=0'.split(","),'Rule,denominator,default,[t] "d\u00e9nominateur"; [p] (pause:200),self::*,name(../..)="fraction",count(preceding-sibling::*)=1'.split(","),'Rule,base,default,[t] "base"; [p] (pause:200),self::*,name(../..)="superscript" or name(../..)="subscript" or name(../..)="overscore" or name(../..)="underscore" or name(../..)="tensor" or name(../..)="limlower" or name(../..)="limupper",count(preceding-sibling::*)=0'.split(","), +'Rule,base-limit,default,[t] "base"; [p] (pause:200),self::*,name(../..)="limboth"'.split(","),'Rule,exponent,default,[t] "exposant"; [p] (pause:200),self::*,name(../..)="superscript",count(preceding-sibling::*)=1'.split(","),'Rule,subscript,default,[t] "indice"; [p] (pause:200),self::*,name(../..)="subscript",count(preceding-sibling::*)=1'.split(","),'Rule,overscript,default,[t] "indice suscrit"; [p] (pause:200),self::*,name(../..)="overscore" or name(../..)="limupper" or name(../..)="limboth",count(preceding-sibling::*)=1 or count(preceding-sibling::*)=2'.split(","), +'Rule,underscript,default,[t] "indice souscrit"; [p] (pause:200),self::*,name(../..)="underscore" or name(../..)="limlower" or name(../..)="limboth",count(preceding-sibling::*)=1'.split(","),'Rule,radicand,default,[t] "radicande"; [p] (pause:200),self::*,name(../..)="sqrt"'.split(","),'Rule,radicand,default,[t] "radicande"; [p] (pause:200),self::*,name(../..)="root",count(preceding-sibling::*)=1'.split(","),'Rule,index,default,[t] "indice"; [p] (pause:200),self::*,name(../..)="root",count(preceding-sibling::*)=0'.split(","), +'Rule,leftsub,default,[t] "indice inf\u00e9rieur gauche"; [p] (pause:200),self::*,name(../..)="tensor",@role="leftsub"'.split(","),'Rule,leftsub,default,[t] CSFordinalPosition (grammar:gender="male"); [t] "indice inf\u00e9rieur gauche"; [p] (pause:200),self::*,name(../..)="punctuated",name(../../../..)="tensor",../../@role="leftsub"'.split(","),'Rule,leftsuper,default,[t] "indice sup\u00e9rieur gauche"; [p] (pause:200),self::*,name(../..)="tensor",@role="leftsuper"'.split(","),'Rule,leftsuper,default,[t] CSFordinalPosition (grammar:gender="male"); [t] "indice sup\u00e9rieur gauche"; [p] (pause:200),self::*,name(../..)="punctuated",name(../../../..)="tensor",../../@role="leftsuper"'.split(","), +'Rule,rightsub,default,[t] "indice inf\u00e9rieur droite"; [p] (pause:200),self::*,name(../..)="tensor",@role="rightsub"'.split(","),'Rule,rightsub,default,[t] CSFordinalPosition (grammar:gender="male"); [t] "indice inf\u00e9rieur droite"; [p] (pause:200),self::*,name(../..)="punctuated",name(../../../..)="tensor",../../@role="rightsub"'.split(","),'Rule,rightsuper,default,[t] "indice sup\u00e9rieur droite"; [p] (pause:200),self::*,name(../..)="tensor",@role="rightsuper"'.split(","),'Rule,rightsuper,default,[t] CSFordinalPosition (grammar:gender="male"); [t] "indice sup\u00e9rieur droite"; [p] (pause:200),self::*,name(../..)="punctuated",name(../../../..)="tensor",../../@role="rightsuper"'.split(","), +'Rule,choice,default,[t] "nombre d\'\u00e9l\u00e9ments choisis"; [p] (pause:200),self::line,@role="binomial",parent::*/parent::vector,count(preceding-sibling::*)=1'.split(","),'Rule,select,default,[t] "nombre d\'\u00e9l\u00e9ments disponibles"; [p] (pause:200),self::line,@role="binomial",parent::*/parent::vector,count(preceding-sibling::*)=0'.split(","),["Rule","row","default",'[t] CSFordinalPosition (grammar:gender="female"); [t] "rang\u00e9e"; [p] (pause:200)',"self::row"],["Aliases","row","self::line"], +'Rule{cell{default{[n] ../..; [t] CSFordinalPosition (grammar:gender="female"); [t] "colonne"; [p] (pause:200){self::cell{contains(@grammar,"depth")'.split("{"),["Rule","cell","default",'[t] CSFordinalPosition (grammar:gender="female"); [t] "colonne"; [p] (pause:200)',"self::cell"]]};sre.PrefixGerman={modality:"prefix",locale:"de",domain:"default",functions:[["CSF","CSFordinalPosition",sre.NumbersUtil.ordinalPosition]],rules:['Rule,numerator,default,[t] "Z\u00e4hler"; [p] (pause:200),self::*,name(../..)="fraction",count(preceding-sibling::*)=0'.split(","),'Rule,denominator,default,[t] "Nenner"; [p] (pause:200),self::*,name(../..)="fraction",count(preceding-sibling::*)=1'.split(","),'Rule,base,default,[t] "Basis"; [p] (pause:200),self::*,name(../..)="superscript" or name(../..)="subscript" or name(../..)="overscore" or name(../..)="underscore" or name(../..)="tensor",count(preceding-sibling::*)=0'.split(","), +'Rule,exponent,default,[t] "Exponent"; [p] (pause:200),self::*,name(../..)="superscript",count(preceding-sibling::*)=1'.split(","),'Rule,subscript,default,[t] "Index"; [p] (pause:200),self::*,name(../..)="subscript",count(preceding-sibling::*)=1'.split(","),'Rule,overscript,default,[t] "Oberer Grenzwert"; [p] (pause:200),self::*,name(../..)="overscore",count(preceding-sibling::*)=1'.split(","),'Rule,underscript,default,[t] "Unterer Grenzwert"; [p] (pause:200),self::*,name(../..)="underscore",count(preceding-sibling::*)=1'.split(","), +'Rule,radicand,default,[t] "Radikand"; [p] (pause:200),self::*,name(../..)="sqrt"'.split(","),'Rule,radicand,default,[t] "Radikand"; [p] (pause:200),self::*,name(../..)="root",count(preceding-sibling::*)=1'.split(","),'Rule,index,default,[t] "Wurzelexponent"; [p] (pause:200),self::*,name(../..)="root",count(preceding-sibling::*)=0'.split(","),'Rule,leftsub,default,[t] "linker unterer Index"; [p] (pause:200),self::*,name(../..)="tensor",@role="leftsub"'.split(","),'Rule,leftsub,default,[t] CSFordinalPosition; [t] "linker unterer Index"; [p] (pause:200),self::*,name(../..)="punctuated",name(../../../..)="tensor",../../@role="leftsub"'.split(","), +'Rule,leftsuper,default,[t] "linker oberer Index"; [p] (pause:200),self::*,name(../..)="tensor",@role="leftsuper"'.split(","),'Rule,leftsuper,default,[t] CSFordinalPosition; [t] "linker oberer Index"; [p] (pause:200),self::*,name(../..)="punctuated",name(../../../..)="tensor",../../@role="leftsuper"'.split(","),'Rule,rightsub,default,[t] "rechter unterer Index"; [p] (pause:200),self::*,name(../..)="tensor",@role="rightsub"'.split(","),'Rule,rightsub,default,[t] CSFordinalPosition; [t] "rechter unterer Index"; [p] (pause:200),self::*,name(../..)="punctuated",name(../../../..)="tensor",../../@role="rightsub"'.split(","), +'Rule,rightsuper,default,[t] "rechter oberer Index"; [p] (pause:200),self::*,name(../..)="tensor",@role="rightsuper"'.split(","),'Rule,rightsuper,default,[t] CSFordinalPosition; [t] "rechter oberer Index"; [p] (pause:200),self::*,name(../..)="punctuated",name(../../../..)="tensor",../../@role="rightsuper"'.split(","),'Rule,choice,default,[t] "Grundgesamtheit"; [p] (pause:200),self::line,@role="binomial",parent::*/parent::vector,count(preceding-sibling::*)=0'.split(","),'Rule,select,default,[t] "Stichprobengr\u00f6\u00dfe"; [p] (pause:200),self::line,@role="binomial",parent::*/parent::vector,count(preceding-sibling::*)=1'.split(","), +["Rule","row","default",'[t] CSFordinalPosition; [t] "Zeile"; [p] (pause:200)',"self::row"],["Aliases","row","self::line"],'Rule{cell{default{[n] ../..; [t] CSFordinalPosition; [t] "Spalte"; [p] (pause:200){self::cell{contains(@grammar,"depth")'.split("{"),["Rule","cell","default",'[t] CSFordinalPosition; [t] "Spalte"; [p] (pause:200)',"self::cell"]]};sre.PrefixRules={modality:"prefix",domain:"default",functions:[["CSF","CSFordinalPosition",sre.NumbersUtil.ordinalPosition]],rules:['Rule,numerator,default,[t] "Numerator"; [p] (pause:200),self::*,name(../..)="fraction",count(preceding-sibling::*)=0'.split(","),'Rule,denominator,default,[t] "Denominator"; [p] (pause:200),self::*,name(../..)="fraction",count(preceding-sibling::*)=1'.split(","),'Rule,base,default,[t] "Base"; [p] (pause:200),self::*,name(../..)="superscript" or name(../..)="subscript" or name(../..)="overscore" or name(../..)="underscore" or name(../..)="tensor",count(preceding-sibling::*)=0'.split(","), +'Rule,exponent,default,[t] "Exponent"; [p] (pause:200),self::*,name(../..)="superscript",count(preceding-sibling::*)=1'.split(","),'Rule,subscript,default,[t] "Subscript"; [p] (pause:200),self::*,name(../..)="subscript",count(preceding-sibling::*)=1'.split(","),'Rule,overscript,default,[t] "Overscript"; [p] (pause:200),self::*,name(../..)="overscore",count(preceding-sibling::*)=1'.split(","),'Rule,underscript,default,[t] "Underscript"; [p] (pause:200),self::*,name(../..)="underscore",count(preceding-sibling::*)=1'.split(","), +'Rule,radicand,default,[t] "Radicand"; [p] (pause:200),self::*,name(../..)="sqrt"'.split(","),'Rule,radicand,default,[t] "Radicand"; [p] (pause:200),self::*,name(../..)="root",count(preceding-sibling::*)=1'.split(","),'Rule,index,default,[t] "Index"; [p] (pause:200),self::*,name(../..)="root",count(preceding-sibling::*)=0'.split(","),'Rule,leftsub,default,[t] "Left Subscript"; [p] (pause:200),self::*,name(../..)="tensor",@role="leftsub"'.split(","),'Rule,leftsub,default,[t] CSFordinalPosition; [t] "Left Subscript"; [p] (pause:200),self::*,name(../..)="punctuated",name(../../../..)="tensor",../../@role="leftsub"'.split(","), +'Rule,leftsuper,default,[t] "Left Superscript"; [p] (pause:200),self::*,name(../..)="tensor",@role="leftsuper"'.split(","),'Rule,leftsuper,default,[t] CSFordinalPosition; [t] "Left Superscript"; [p] (pause:200),self::*,name(../..)="punctuated",name(../../../..)="tensor",../../@role="leftsuper"'.split(","),'Rule,rightsub,default,[t] "Right Subscript"; [p] (pause:200),self::*,name(../..)="tensor",@role="rightsub"'.split(","),'Rule,rightsub,default,[t] CSFordinalPosition; [t] "Right Subscript"; [p] (pause:200),self::*,name(../..)="punctuated",name(../../../..)="tensor",../../@role="rightsub"'.split(","), +'Rule,rightsuper,default,[t] "Right Superscript"; [p] (pause:200),self::*,name(../..)="tensor",@role="rightsuper"'.split(","),'Rule,rightsuper,default,[t] CSFordinalPosition; [t] "Right Superscript"; [p] (pause:200),self::*,name(../..)="punctuated",name(../../../..)="tensor",../../@role="rightsuper"'.split(","),'Rule,choice,default,[t] "Choice Quantity"; [p] (pause:200),self::line,@role="binomial",parent::*/parent::vector,count(preceding-sibling::*)=0'.split(","),'Rule,select,default,[t] "Selection Quantity"; [p] (pause:200),self::line,@role="binomial",parent::*/parent::vector,count(preceding-sibling::*)=1'.split(","), +["Rule","row","default",'[t] CSFordinalPosition; [t] "Row"; [p] (pause:200)',"self::row"],["Aliases","row","self::line"],'Rule{cell{default{[n] ../..; [t] CSFordinalPosition; [t] "Column"; [p] (pause:200){self::cell{contains(@grammar,"depth")'.split("{"),["Rule","cell","default",'[t] CSFordinalPosition; [t] "Column"; [p] (pause:200)',"self::cell"]]};sre.PrefixSpanish={locale:"es",modality:"prefix",domain:"default",functions:[["CSF","CSFordinalPosition",sre.NumbersUtil.ordinalPosition]],rules:['Rule,numerator,default,[t] "numerador"; [p] (pause:200),self::*,name(../..)="fraction",count(preceding-sibling::*)=0'.split(","),'Rule,denominator,default,[t] "denominador"; [p] (pause:200),self::*,name(../..)="fraction",count(preceding-sibling::*)=1'.split(","),'Rule,base,default,[t] "base"; [p] (pause:200),self::*,name(../..)="superscript" or name(../..)="subscript" or name(../..)="overscore" or name(../..)="underscore" or name(../..)="tensor",count(preceding-sibling::*)=0'.split(","), +'Rule,exponent,default,[t] "exponente"; [p] (pause:200),self::*,name(../..)="superscript",count(preceding-sibling::*)=1'.split(","),'Rule,subscript,default,[t] "sub\u00edndice"; [p] (pause:200),self::*,name(../..)="subscript",count(preceding-sibling::*)=1'.split(","),'Rule,overscript,default,[t] "sobre\u00edndice"; [p] (pause:200),self::*,name(../..)="overscore",count(preceding-sibling::*)=1'.split(","),'Rule,underscript,default,[t] "bajo\u00edndice"; [p] (pause:200),self::*,name(../..)="underscore",count(preceding-sibling::*)=1'.split(","), +'Rule,radicand,default,[t] "radicand"; [p] (pause:200),self::*,name(../..)="sqrt"'.split(","),'Rule,radicand,default,[t] "radicand"; [p] (pause:200),self::*,name(../..)="root",count(preceding-sibling::*)=1'.split(","),'Rule,index,default,[t] "\u00edndice"; [p] (pause:200),self::*,name(../..)="root",count(preceding-sibling::*)=0'.split(","),'Rule,leftsub,default,[t] "sub\u00edndice izquierdo"; [p] (pause:200),self::*,name(../..)="tensor",@role="leftsub"'.split(","),'Rule,leftsub,default,[t] CSFordinalPosition (grammar:gender="male"); [t] "sub\u00edndice izquierdo"; [p] (pause:200),self::*,name(../..)="punctuated",name(../../../..)="tensor",../../@role="leftsub"'.split(","), +'Rule,leftsuper,default,[t] "super\u00edndice izquierdo"; [p] (pause:200),self::*,name(../..)="tensor",@role="leftsuper"'.split(","),'Rule,leftsuper,default,[t] CSFordinalPosition (grammar:gender="male"); [t] "super\u00edndice izquierdo"; [p] (pause:200),self::*,name(../..)="punctuated",name(../../../..)="tensor",../../@role="leftsuper"'.split(","),'Rule,rightsub,default,[t] "sub\u00edndice derecho"; [p] (pause:200),self::*,name(../..)="tensor",@role="rightsub"'.split(","),'Rule,rightsub,default,[t] CSFordinalPosition (grammar:gender="male"); [t] "sub\u00edndice derecho"; [p] (pause:200),self::*,name(../..)="punctuated",name(../../../..)="tensor",../../@role="rightsub"'.split(","), +'Rule,rightsuper,default,[t] "super\u00edndice derecho"; [p] (pause:200),self::*,name(../..)="tensor",@role="rightsuper"'.split(","),'Rule,rightsuper,default,[t] CSFordinalPosition (grammar:gender="male"); [t] "super\u00edndice derecho"; [p] (pause:200),self::*,name(../..)="punctuated",name(../../../..)="tensor",../../@role="rightsuper"'.split(","),'Rule,choice,default,[t] "cantidad de elecci\u00f3n"; [p] (pause:200),self::line,@role="binomial",parent::*/parent::vector,count(preceding-sibling::*)=0'.split(","), +'Rule,select,default,[t] "cantidad de selecci\u00f3n"; [p] (pause:200),self::line,@role="binomial",parent::*/parent::vector,count(preceding-sibling::*)=1'.split(","),["Rule","row","default",'[t] CSFordinalPosition (grammar:gender="female"); [t] "fila"; [p] (pause:200)',"self::row"],["Aliases","row","self::line"],'Rule{cell{default{[n] ../..; [t] CSFordinalPosition (grammar:gender="female"); [t] "columna"; [p] (pause:200){self::cell{contains(@grammar,"depth")'.split("{"),["Rule","cell","default",'[t] CSFordinalPosition (grammar:gender="female"); [t] "columna"; [p] (pause:200)', +"self::cell"]]};sre.SemanticTreeRules={domain:"default",functions:[["CTXF","CTXFnodeCounter",sre.StoreUtil.nodeCounter],["CTXF","CTXFcontentIterator",sre.StoreUtil.contentIterator]],rules:['Rule{collapsed{default{[t] "collapsed"; [n] . (engine:modality=summary,grammar:collapsed){self::*{@alternative{not(contains(@grammar, "collapsed")){self::*{self::*{self::*{self::*{self::*'.split("{"),["Rule","stree","default","[n] ./*[1]","self::stree"],'Rule;factorial;default;[t] "factorial";self::punctuation;text()="!";name(preceding-sibling::*[1])!="text"'.split(";"), +["Rule","multrel","default",'[t] "multirelation"; [m] children/* (sepFunc:CTXFcontentIterator)',"self::multirel"],'Rule{variable-equality{default{[t] "equation sequence"; [m] children/* (context:"part",ctxtFunc:CTXFnodeCounter,sepFunc:CTXFcontentIterator){self::relseq[@role="equality"]{count(./children/*)>2{./children/punctuation[@role="ellipsis"]'.split("{"),'Rule{multi-equality{default{[t] "equation sequence"; [m] children/* (context:"part",ctxtFunc:CTXFnodeCounter,sepFunc:CTXFcontentIterator){self::relseq[@role="equality"]{count(./children/*)>2'.split("{"), +'Rule,equality,default,[n] children/*[1]; [p] (pause:200); [n] content/*[1] (pause:200);[n] children/*[2],self::relseq[@role="equality"],count(./children/*)=2'.split(","),'Rule,simple-equality,default,[n] children/*[1]; [p] (pause:200); [n] content/*[1] (pause:200);[n] children/*[2],self::relseq[@role="equality"],count(./children/*)=2,./children/identifier or ./children/number'.split(","),'Rule,simple-equality2,default,[n] children/*[1]; [p] (pause:200); [n] content/*[1] (pause:200);[n] children/*[2],self::relseq[@role="equality"],count(./children/*)=2,./children/function or ./children/appl'.split(","), +["Rule","relseq","default","[m] children/* (sepFunc:CTXFcontentIterator)","self::relseq"],["Rule","binary-operation","default","[m] children/* (sepFunc:CTXFcontentIterator);","self::infixop"],'Rule,variable-addition,default,[t] "sum with variable number of summands";[p] (pause:400); [m] children/* (sepFunc:CTXFcontentIterator),self::infixop[@role="addition"],count(children/*)>2,children/punctuation[@role="ellipsis"]'.split(","),'Rule,multi-addition,default,[t] "sum with"; [t] count(./children/*); [t] "summands";[p] (pause:400); [m] children/* (sepFunc:CTXFcontentIterator),self::infixop[@role="addition"],count(./children/*)>2'.split(","), +["Rule","prefix","default",'[t] "prefix"; [m] content/* (pause 150);[n] children/*[1]',"self::prefixop"],'Rule,negative,default,[t] "negative"; [n] children/*[1],self::prefixop,self::prefixop[@role="negative"]'.split(","),["Rule","postfix","default",'[n] children/*[1]; [t] "postfix"; [m] content/* (pause 300)',"self::postfixop"],["Rule","identifier","default","[n] text()","self::identifier"],["Rule","number","default","[n] text()","self::number"],'Rule,mixed-number,default,[n] children/*[1]; [t] "and"; [n] children/*[2]; ,self::number,@role="mixed"'.split(","), +'Rule{font{default{[t] @font (grammar:localFont); [n] . (grammar:ignoreFont=@font){self::*{@font{not(contains(@grammar, "ignoreFont")){@font!="normal"'.split("{"),'Rule{font-identifier-short{default{[t] @font (grammar:localFont); [n] . (grammar:ignoreFont=@font){self::identifier{string-length(text())=1{@font{not(contains(@grammar, "ignoreFont")){@font="normal"{""=translate(text(), "abcdefghijklmnopqrstuvwxyz\u03b1\u03b2\u03b3\u03b4\u03b5\u03b6\u03b7\u03b8\u03b9\u03ba\u03bb\u03bc\u03bd\u03be\u03bf\u03c0\u03c1\u03c2\u03c3\u03c4\u03c5\u03c6\u03c7\u03c8\u03c9ABCDEFGHIJKLMNOPQRSTUVWXYZ\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u039f\u03a0\u03a1\u03a3\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9", ""){@role!="unit"'.split("{"), +'Rule{font-identifier{default{[t] @font (grammar:localFont); [n] . (grammar:ignoreFont=@font){self::identifier{string-length(text())=1{@font{@font="normal"{not(contains(@grammar, "ignoreFont")){@role!="unit"'.split("{"),'Rule;omit-font;default;[n] . (grammar:ignoreFont=@font);self::identifier;string-length(text())=1;@font;not(contains(@grammar, "ignoreFont"));@font="italic"'.split(";"),["Rule","fraction","default",'[p] (pause:250); [n] children/*[1] (rate:0.35); [p] (pause:250); [t] "divided by"; [n] children/*[2] (rate:-0.35); [p] (pause:400)', +"self::fraction"],["Rule","superscript","default",'[n] children/*[1]; [t] "super"; [n] children/*[2] (pitch:0.35);[p] (pause:300)',"self::superscript"],["Rule","subscript","default",'[n] children/*[1]; [t] "sub"; [n] children/*[2] (pitch:-0.35);[p] (pause:300)',"self::subscript"],'Rule,ellipsis,default,[p] (pause:200); [t] "ellipsis"; [p] (pause:300),self::punctuation,self::punctuation[@role="ellipsis"]'.split(","),'Rule;fence-single;default;[n] text();self::punctuation;self::punctuation[@role="openfence"]'.split(";"), +["Aliases","fence-single","self::punctuation",'self::punctuation[@role="closefence"]'],["Aliases","fence-single","self::punctuation",'self::punctuation[@role="vbar"]'],["Aliases","fence-single","self::punctuation",'self::punctuation[@role="application"]'],["Rule","omit-empty","default","[p] (pause:100)","self::empty"],'Rule,fences-open-close,default,[p] (pause:100); [n] content/*[1]; [n] children/*[1]; [n] content/*[2]; [p] (pause:100),self::fenced,@role="leftright"'.split(","),'Rule,fences-open-close-in-appl,default,[p] (pause:200); [n] children/*[1]; [p] (pause:200);,self::fenced[@role="leftright"],./parent::children/parent::appl'.split(","), +'Rule,fences-neutral,default,[p] (pause:100); [t] "absolute value of"; [n] children/*[1];[p] (pause:350);,self::fenced,self::fenced[@role="neutral"]'.split(","),["Rule","omit-fences","default","[p] (pause:500); [n] children/*[1]; [p] (pause:200);","self::fenced"],["Rule","matrix","default",'[t] "matrix"; [m] children/* (ctxtFunc:CTXFnodeCounter,context:"row",pause:100)',"self::matrix"],["Rule","matrix-row","default",'[m] children/* (ctxtFunc:CTXFnodeCounter,context:"column",pause:100)','self::row[@role="matrix"]'], +["Rule","matrix-cell","default","[n] children/*[1]",'self::cell[@role="matrix"]'],["Rule","vector","default",'[t] "vector"; [m] children/* (ctxtFunc:CTXFnodeCounter,context:"element",pause:100)',"self::vector"],["Rule","cases","default",'[t] "case statement"; [m] children/* (ctxtFunc:CTXFnodeCounter,context:"case",pause:100)',"self::cases"],["Rule","cases-row","default","[m] children/*",'self::row[@role="cases"]'],["Rule","cases-cell","default","[n] children/*[1]",'self::cell[@role="cases"]'],["Rule", +"row","default",'[m] ./* (ctxtFunc:CTXFnodeCounter,context:"column",pause:100)',"self::row"],'Rule{cases-end{default{[t] "case statement"; [m] children/* (ctxtFunc:CTXFnodeCounter,context:"case",pause:100);[t] "end cases"{self::cases{following-sibling::*'.split("{"),["Rule","multiline","default",'[t] "multiline equation";[m] children/* (ctxtFunc:CTXFnodeCounter,context:"line",pause:100)',"self::multiline"],'Rule{multiline-ineq{default{[t] "multiline inequality";[m] children/* (ctxtFunc:CTXFnodeCounter,context:"row",pause:100){self::multiline{@role="inequality"'.split("{"), +["Rule","line","default","[m] children/*","self::line"],["Rule","table","default",'[t] "multiline equation";[m] children/* (ctxtFunc:CTXFnodeCounter,context:"row",pause:200)',"self::table"],'Rule{table-ineq{default{[t] "multiline inequality";[m] children/* (ctxtFunc:CTXFnodeCounter,context:"row",pause:200){self::table{@role="inequality"'.split("{"),["Rule","table-row","default","[m] children/* (pause:100)",'self::row[@role="table"]'],["Aliases","cases-cell",'self::cell[@role="table"]'],'Rule;empty-cell;default;[t] "Blank";self::cell;count(children/*)=0'.split(";"), +'Rule,end-punct,default,[m] children/*; [p] (pause:300),self::punctuated,@role="endpunct"'.split(","),'Rule,start-punct,default,[n] content/*[1]; [p] (pause:200); [m] children/*[position()>1],self::punctuated,@role="startpunct"'.split(","),'Rule,integral-punct,default,[n] children/*[1] (rate:0.2); [n] children/*[3] (rate:0.2),self::punctuated,@role="integral"'.split(","),["Rule","punctuated","default","[m] children/* (pause:100)","self::punctuated"],["Rule","function","default","[n] text()","self::function"], +["Rule","appl","default","[n] children/*[1]; [n] content/*[1]; [n] children/*[2]","self::appl"],'Rule,sum-only,default,[n] children/*[1]; [t] "from"; [n] children/*[2]; [t] "to";[n] children/*[3],self::limboth,self::limboth[@role="sum"]'.split(","),["Rule","limboth","default",'[n] children/*[1]; [p] (pause 100); [t] "over"; [n] children/*[2];[t] "under"; [n] children/*[3]; [p] (pause 250);',"self::limboth"],["Rule","limlower","default",'[n] children/*[1]; [t] "over"; [n] children/*[2];',"self::limlower"], +["Rule","limupper","default",'[n] children/*[1]; [t] "under"; [n] children/*[2];',"self::limupper"],["Rule","largeop","default","[n] text()","self::largeop"],["Rule","bigop","default",'[n] children/*[1]; [p] (pause 100); [t] "over"; [n] children/*[2];[p] (pause 250);',"self::bigop"],["Rule","integral","default","[n] children/*[1]; [p] (pause 100); [n] children/*[2];[p] (pause 200); [n] children/*[3] (rate:0.35);","self::integral"],["Rule","sqrt","default",'[t] "Square root of"; [n] children/*[1] (rate:0.35); [p] (pause:400)', +"self::sqrt"],'Rule,square,default,[n] children/*[1]; [t] "squared" (pitch:0.35); [p] (pause:300),self::superscript,children/*[2][text()=2],name(./children/*[1])!="text"'.split(","),'Rule,cube,default,[n] children/*[1]; [t] "cubed" (pitch:0.35); [p] (pause:300),self::superscript,children/*[2][text()=3],name(./children/*[1])!="text"'.split(","),["Rule","root","default",'[t] "root of order"; [n] children/*[1];[t] "over"; [n] children/*[2] (rate:0.35); [p] (pause:400)',"self::root"],["Rule","text","default", +"[n] text(); [p] (pause:200)","self::text"],'Rule;unit;default;[t] text() (grammar:annotation="unit":translate:plural);self::identifier;@role="unit"'.split(";"),'Rule,unit-square,default,[t] "square"; [n] children/*[1],self::superscript,@role="unit",children/*[2][text()=2],name(children/*[1])="identifier"'.split(","),'Rule,unit-cubic,default,[t] "cubic"; [n] children/*[1],self::superscript,@role="unit",children/*[2][text()=3],name(children/*[1])="identifier"'.split(","),'Rule,reciprocal,default,[t] "reciprocal"; [n] children/*[1],self::superscript,@role="unit",name(children/*[1])="identifier",name(children/*[2])="prefixop",children/*[2][@role="negative"],children/*[2]/children/*[1][text()=1],count(preceding-sibling::*)=0 or preceding-sibling::*[@role!="unit"]'.split(","), +'Rule,reciprocal,default,[t] "per"; [n] children/*[1],self::superscript,@role="unit",name(children/*[1])="identifier",name(children/*[2])="prefixop",children/*[2][@role="negative"],children/*[2]/children/*[1][text()=1],preceding-sibling::*[@role="unit"]'.split(","),'Rule;unit-combine;default;[m] children/*;self::infixop;@role="unit"'.split(";"),'Rule,unit-divide,default,[n] children/*[1] (pitch:0.3); [t] "per"; [n] children/*[2] (pitch:-0.3),self::fraction,@role="unit"'.split(",")]};sre.SummaryFrench={locale:"fr",modality:"summary",rules:[["Rule","collapsed-masculine","default.masculine",'[t] "compress\u00e9"','contains(@grammar, "collapsed")'],["Rule","collapsed-feminine","default.feminine",'[t] "compress\u00e9e"','contains(@grammar, "collapsed")'],["Rule","no-collapsed","default.masculine",'[t] ""','not(contains(@grammar, "collapsed"))'],["Rule","no-collapsed","default.feminine",'[t] ""','not(contains(@grammar, "collapsed"))'],["Rule","stree","default.default","[n] ./*[1]", +"self::stree"],'Rule{abstr-identifier{default.default{[t] "identifiant long"; [n] . (engine:style=masculine){self::identifier{contains(@grammar, "collapsed")'.split("{"),["Rule","abstr-identifier","default.default",'[t] "identifiant"; [n] . (engine:style=masculine)',"self::identifier"],'Rule{abstr-number{default.default{[t] "nombre long"; [n] . (engine:style=masculine){self::number{contains(@grammar, "collapsed")'.split("{"),["Rule","abstr-number","default.default",'[t] "nombre"; [n] . (engine:style=masculine)', +"self::number"],'Rule{abstr-mixed-number{default.default{[t] "nombre fractionnaire long"; [n] . (engine:style=masculine){self::number{@role="mixed"{contains(@grammar, "collapsed")'.split("{"),'Rule,abstr-mixed-number,default.default,[t] "nombre fractionnaire"; [n] . (engine:style=masculine),self::number,@role="mixed"'.split(","),["Rule","abstr-text","default.default",'[t] "texte"; [n] . (engine:style=masculine)',"self::text"],["Rule","abstr-function","default.default",'[t] "expression fonctionnelle"; [n] . (engine:style=feminine)', +"self::function"],["Rule","abstr-function","mathspeak.brief",'[t] "fonction"; [n] . (engine:style=feminine)',"self::function"],["SpecializedRule","abstr-function","mathspeak.brief","mathspeak.sbrief"],'Rule,abstr-lim,default.default,[t] "fonction de limitation"; [n] . (engine:style=feminine),self::function,@role="limit function"'.split(","),'Rule,abstr-lim,mathspeak.brief,[t] "lim"; [n] . (engine:style=feminine),self::function,@role="limit function"'.split(","),["SpecializedRule","abstr-lim","mathspeak.brief", +"mathspeak.sbrief"],["Rule","abstr-fraction","default.default",'[t] "fraction"; [n] . (engine:style=feminine)',"self::fraction"],["Rule","abstr-fraction","mathspeak.brief",'[t] "frac"; [n] . (engine:style=feminine)',"self::fraction"],["SpecializedRule","abstr-fraction","mathspeak.brief","mathspeak.sbrief"],'Rule,abstr-continued-fraction,default.default,[t] "fraction continue"; [n] . (engine:style=feminine),self::fraction,children/*[2]/descendant-or-self::*[@role="ellipsis"]'.split(","),'Rule,abstr-continued-fraction,mathspeak.brief,[t] "frac continue"; [n] . (engine:style=feminine),self::fraction,children/*[2]/descendant-or-self::*[@role="ellipsis"]'.split(","), +["SpecializedRule","abstr-continued-fraction","mathspeak.brief","mathspeak.sbrief"],["Rule","abstr-sqrt","default.default",'[t] "racine carr\u00e9e"; [n] . (engine:style=feminine)',"self::sqrt"],'Rule,abstr-sqrt-nested,default.default,[t] "racine carr\u00e9e imbriqu\u00e9e"; [n] . (engine:style=feminine),self::sqrt,children/*/descendant-or-self::sqrt or children/*/descendant-or-self::root'.split(","),'Rule{abstr-root{default.default{[t] "racine d\'indice"; [n] children/*[1] (engine:modality="speech"); [t] "fin indice"; [n] . (engine:style=feminine);{self::root{contains(@grammar, "collapsed"){following-sibling::* or ancestor::*/following-sibling::*'.split("{"), +["Rule","abstr-root","default.default",'[t] "racine d\'indice"; [n] children/*[1] (engine:modality=speech); [n] . (engine:style=feminine)',"self::root"],["Rule","abstr-root","mathspeak.brief",'[t] "racine"; [n] . (engine:style=feminine)',"self::root"],["SpecializedRule","abstr-root","mathspeak.brief","mathspeak.sbrief"],'Rule{abstr-root-nested{default.default{[t] "racine imbriqu\u00e9e d\'indice"; [n] children/*[1] (engine:modality=speech); [t] "fin indice"; [n] . (engine:style=feminine);{self::root{contains(@grammar, "collapsed"){children/*/descendant-or-self::sqrt or children/*/descendant-or-self::root{following-sibling::* or ancestor::*/following-sibling::*'.split("{"), +'Rule,abstr-root-nested,default.default,[t] "racine imbriqu\u00e9e d\'indice"; [n] children/*[1] (engine:modality=speech); [n] . (engine:style=feminine),self::root,children/*/descendant-or-self::sqrt or children/*/descendant-or-self::root'.split(","),'Rule,abstr-root-nested,mathspeak.brief,[t] "racine imbriqu\u00e9e"; [n] . (engine:style=feminine),self::root,children/*/descendant-or-self::sqrt or children/*/descendant-or-self::root'.split(","),["SpecializedRule","abstr-root-nested","mathspeak.brief", +"mathspeak.sbrief"],["Rule","abstr-superscript","default.default",'[t] "puissance"; [n] . (engine:style=feminine)',"self::superscript"],["Rule","abstr-subscript","default.default",'[t] "indice"; [n] . (engine:style=masculine)',"self::subscript"],'Rule,abstr-subsup,default.default,[t] "puissance avec index"; [n] . (engine:style=feminine),self::superscript,name(children/*[1])="subscript"'.split(","),["Rule","abstr-infixop","default.default",'[t] @role (grammar:localRole); [t] "avec"; [t] count(./children/*); [t] "\u00e9l\u00e9ments"; [n] . (engine:style=masculine)', +"self::infixop"],'Rule,abstr-infixop,default.default,[t] @role (grammar:localRole); [t] "avec un nombre d\'\u00e9l\u00e9ments variable"; [n] . (engine:style=masculine),self::infixop,count(./children/*)>2,./children/punctuation[@role="ellipsis"]'.split(","),["Rule","abstr-infixop","mathspeak.brief","[t] @role (grammar:localRole); [n] . (engine:style=masculine)","self::infixop"],["SpecializedRule","abstr-infixop","mathspeak.brief","mathspeak.sbrief"],'Rule,abstr-addition,default.default,[t] "somme avec"; [t] count(./children/*); [t] "op\u00e9randes"; [n] . (engine:style=feminine),self::infixop,@role="addition"'.split(","), +'Rule,abstr-addition,mathspeak.brief,[t] "somme"; [n] . (engine:style=feminine),self::infixop,@role="addition"'.split(","),["SpecializedRule","abstr-addition","mathspeak.brief","mathspeak.sbrief"],'Rule,abstr-var-addition,default.default,[t] "somme avec un nombre variable d\'op\u00e9randes"; [n] . (engine:style=feminine),self::infixop,@role="addition",count(./children/*)>2,./children/punctuation[@role="ellipsis"]'.split(","),'Rule,abstr-multiplication,default.default,[t] "produit avec"; [t] count(./children/*); [t] "facteurs"; [n] . (engine:style=masculine);,self::infixop,@role="multiplication"'.split(","), +'Rule,abstr-multiplication,mathspeak.brief,[t] "produit"; [n] . (engine:style=masculine),self::infixop,@role="multiplication"'.split(","),["SpecializedRule","abstr-multiplication","mathspeak.brief","mathspeak.sbrief"],["Aliases","abstr-multiplication","self::infixop",'@role="implicit"'],'Rule,abstr-var-multiplication,default.default,[t] "produit avec un nombre de facteurs variable"; [n] . (engine:style=masculine),self::infixop,@role="multiplication",count(./children/*)>2,./children/punctuation[@role="ellipsis"]'.split(","), +'Aliases abstr-var-multiplication self::infixop @role="implicit" count(./children/*)>2 ./children/punctuation[@role="ellipsis"]'.split(" "),["Rule","abstr-vector","default.default",'[t] "vecteur de dimension"; [t] count(./children/*); [n] . (engine:style=masculine)',"self::vector"],["Rule","abstr-vector","mathspeak.brief",'[t] "vecteur"; [n] . (engine:style=masculine)',"self::vector"],["SpecializedRule","abstr-vector","mathspeak.brief","mathspeak.sbrief"],'Rule,abstr-var-vector,default.default,[t] "vecteur colonne de dimension n"; [n] . (engine:style=masculine),self::vector,./children/*/children/punctuation[@role="ellipsis"]'.split(","), +'Rule,abstr-binomial,default.default,[t] "binomial"; [n] . (engine:style=masculine),self::vector,@role="binomial"'.split(","),["SpecializedRule","abstr-binomial","default.default","mathspeak.brief"],["SpecializedRule","abstr-binomial","default.default","mathspeak.sbrief"],'Rule,abstr-determinant,default.default,[t] "d\u00e9terminant de dimension"; [t] count(./children/*); [n] . (engine:style=masculine),self::matrix,@role="determinant"'.split(","),'Rule,abstr-determinant,mathspeak.brief,[t] "d\u00e9terminant"; [n] . (engine:style=masculine),self::matrix,@role="determinant"'.split(","), +["SpecializedRule","abstr-determinant","mathspeak.brief","mathspeak.sbrief"],'Rule,abstr-var-determinant,default.default,[t] "d\u00e9terminant de dimension n"; [n] . (engine:style=masculine),self::matrix,@role="determinant",./children/*/children/*/children/punctuation[@role="ellipsis"]'.split(","),'Rule,abstr-squarematrix,default.default,[t] "matrice carr\u00e9e de dimension"; [t] count(./children/*); [n] . (engine:style=feminine),self::matrix,@role="squarematrix"'.split(","),'Rule,abstr-squarematrix,mathspeak.brief,[t] "matrice carr\u00e9e"; [n] . (engine:style=feminine),self::matrix,@role="squarematrix"'.split(","), +["SpecializedRule","abstr-squarematrix","mathspeak.brief","mathspeak.sbrief"],'Rule,abstr-rowvector,default.default,[t] "vecteur ligne de dimension"; [t] count(./children/row/children/*); [n] . (engine:style=masculine),self::matrix,@role="rowvector"'.split(","),'Rule,abstr-rowvector,mathspeak.brief,[t] "vecteur ligne"; [n] . (engine:style=masculine),self::matrix,@role="rowvector"'.split(","),["SpecializedRule","abstr-rowvector","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-var-matrix;default.default;[t] "vecteur ligne de dimension n";self::matrix;@role="rowvector";./children/*/children/*/children/punctuation[@role="ellipsis"]'.split(";"), +["Rule","abstr-matrix","default.default",'[t] "matrice"; [t] count(children/*); [t] "par";[t] count(children/*[1]/children/*); [n] . (engine:style=feminine)',"self::matrix"],["Rule","abstr-matrix","mathspeak.brief",'[t] "matrice"; [n] . (engine:style=feminine)',"self::matrix"],["SpecializedRule","abstr-matrix","mathspeak.brief","mathspeak.sbrief"],'Rule,abstr-var-matrix,default.default,[t] "matrice de dimension n par m"; [n] . (engine:style=feminine),self::matrix,./children/*/children/*/children/punctuation[@role="ellipsis"]'.split(","), +["Rule","abstr-cases","default.default",'[t] "d\u00e9claration de cas";[t] "avec"; [t] count(children/*); [t] "cas"; [n] . (engine:style=feminine)',"self::cases"],["Rule","abstr-cases","mathspeak.brief",'[t] "d\u00e9claration de cas"; [n] . (engine:style=feminine)',"self::cases"],["SpecializedRule","abstr-cases","mathspeak.brief","mathspeak.sbrief"],'Rule,abstr-var-cases,default.default,[t] "d\u00e9claration de cas variable"; [n] . (engine:style=feminine),self::cases,./children/row/children/cell/children/punctuation[@role="ellipsis"]or ./children/line/children/punctuation[@role="ellipsis"]'.split(","), +["Rule","abstr-punctuated","default.default",'[t] "liste de longueur"; [t] count(children/*) - count(content/*); [t] "s\u00e9par\u00e9e par des"; [n] content/*[1] (join:""); [t] "s"; [n] . (engine:style=feminine)',"self::punctuated"],["Rule","abstr-punctuated","mathspeak.brief",'[t] "liste s\u00e9par\u00e9e par des"; [n] content/*[1] (join:""); [t] "s"; [n] . (engine:style=feminine)',"self::punctuated"],["SpecializedRule","abstr-punctuated","mathspeak.brief","mathspeak.sbrief"],'Rule,abstr-var-punctuated,default.default,[t] "liste de longueur variable s\u00e9par\u00e9e par des"; [n] content/*[1] (join:""); [t] "s"; [n] . (engine:style=feminine),self::punctuated,./children/punctuation[@role="ellipsis"]'.split(","), +["Rule","abstr-bigop","default.default","[n] content/*[1]; [n] . (engine:style=masculine)","self::bigop"],["Rule","abstr-integral","default.default",'[t] "int\u00e9grale"; [n] . (engine:style=feminine)','@role="integral"'],"Rule,abstr-relation,default.default,[t] @role (grammar:localRole); [n] . (engine:style=masculine);,self::relseq,count(./children/*)=2".split(","),'Rule,abstr-relation-seq,default.default,[t] @role (grammar:localRole); [t] "s\u00e9quence"; [t] "avec"; [t] count(./children/*); [t] "\u00e9l\u00e9ments"; [n] . (engine:style=feminine),self::relseq,count(./children/*)>2'.split(","), +'Rule,abstr-relation-seq,mathspeak.brief,[t] @role (grammar:localRole); [t] "s\u00e9quence"; [n] . (engine:style=feminine),self::relseq,count(./children/*)>2'.split(","),["SpecializedRule","abstr-relation-seq","mathspeak.brief","mathspeak.sbrief"],'Rule,abstr-var-relation,default.default,[t] @role (grammar:localRole); [t] "s\u00e9quence"; [t] "avec un nombre de \u00e9l\u00e9ments variable"; [n] . (engine:style=feminine),self::relseq,count(./children/*)>2,./children/punctuation[@role="ellipsis"]'.split(","), +'UniqueAlias abstr-relation default.default self::multirel @role!="unknown" count(./children/*)>2'.split(" "),'Aliases abstr-var-relation self::multirel @role!="unknown" count(./children/*)>2 ./children/punctuation[@role="ellipsis"]'.split(" "),'Rule,abstr-multirel,default.default,[t] "s\u00e9quence de relation"; [t] "avec"; [t] count(./children/*); [t] "\u00e9l\u00e9ments"; [n] . (engine:style=feminine),self::multirel,count(./children/*)>2'.split(","),'Rule,abstr-multirel,mathspeak.brief,[t] "s\u00e9quence de relation"; [n] . (engine:style=feminine),self::multirel,count(./children/*)>2'.split(","), +["SpecializedRule","abstr-multirel","mathspeak.brief","mathspeak.sbrief"],'Rule,abstr-var-multirel,default.default,[t] "s\u00e9quence de relation avec un nombre de \u00e9l\u00e9ments variable"; [n] . (engine:style=feminine),self::multirel,count(./children/*)>2,./children/punctuation[@role="ellipsis"]'.split(","),["Rule","abstr-table","default.default",'[t] "table avec"; [t] count(children/*); [t] "lignes et";[t] count(children/*[1]/children/*); [t] "colonnes"; [n] . (engine:style=feminine);',"self::table"], +["Rule","abstr-line","default.default",'[t] "dans"; [t] @role (grammar:localRole); [n] . (engine:style=masculine)',"self::line"],["Rule","abstr-row","default.default",'[t] "dans"; [t] @role (grammar:localRole);[t] count(preceding-sibling::..); [t] "avec";[t] count(children/*); [t] "colonnes"; [n] . (engine:style=feminine)',"self::row"],["Rule","abstr-cell","default.default",'[t] "dans"; [t] @role (grammar:localRole); [n] . (engine:style=feminine);',"self::cell"]]};sre.SummaryGerman={modality:"summary",locale:"de",rules:['Rule;abstr-identifier;default.default;[t] "langer Bezeichner";self::identifier;contains(@grammar, "collapsed")'.split(";"),["Rule","abstr-identifier","default.default",'[t] "Bezeichner"',"self::identifier"],'Rule;abstr-number;default.default;[t] "lange Zahl";self::number;contains(@grammar, "collapsed")'.split(";"),["Rule","abstr-number","default.default",'[t] "Zahl"',"self::number"],'Rule;abstr-mixed-number;default.default;[t] "langer gemischter Bruch";self::number;@role="mixed";contains(@grammar, "collapsed")'.split(";"), +'Rule;abstr-mixed-number;default.default;[t] "gemischter Bruch";self::number;@role="mixed"'.split(";"),["Rule","abstr-text","default.default",'[t] "Text"',"self::text"],["Rule","abstr-function","default.default",'[t] "Funktionsausdruck"',"self::function"],["Rule","abstr-function","mathspeak.brief",'[t] "Funktion"',"self::function"],["SpecializedRule","abstr-function","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-lim;default.default;[t] "Grenzwertfunktion";self::function;@role="limit function"'.split(";"), +'Rule;abstr-lim;mathspeak.brief;[t] "Grenzwert";self::function;@role="limit function"'.split(";"),["SpecializedRule","abstr-lim","mathspeak.brief","mathspeak.sbrief"],["Rule","abstr-fraction","default.default",'[t] "Bruch"',"self::fraction"],'Rule;abstr-continued-fraction;default.default;[t] "Kettenbruch";self::fraction;children/*[2]/descendant-or-self::*[@role="ellipsis"]'.split(";"),["Rule","abstr-sqrt","default.default",'[t] "Quadratwurzel"',"self::sqrt"],'Rule;abstr-sqrt-nested;default.default;[t] "verschachtelte Quadratwurzel";self::sqrt;children/*/descendant-or-self::sqrt or children/*/descendant-or-self::root'.split(";"), +'Rule{abstr-root{default.default{[t] "Wurzel mit Exponent"; [n] children/*[1] (engine:modality=speech); [t] "Exponentende"{self::root{contains(@grammar, "collapsed"){following-sibling::* or ancestor::*/following-sibling::*'.split("{"),["Rule","abstr-root","default.default",'[t] "Wurzel mit Exponent"; [n] children/*[1] (engine:modality=speech)',"self::root"],["Rule","abstr-root","mathspeak.brief",'[t] "Wurzel"',"self::root"],["SpecializedRule","abstr-root","mathspeak.brief","mathspeak.sbrief"],'Rule{abstr-root-nested{default.default{[t] "verschachtelte Wurzel mit Wurzelexponent"; [n] children/*[1] (engine:modality="speech"); [t] "Ende Wurzelexponent"{self::root{contains(@grammar, "collapsed"){children/*/descendant-or-self::sqrt or children/*/descendant-or-self::root{following-sibling::* or ancestor::*/following-sibling::*'.split("{"), +'Rule,abstr-root-nested,default.default,[t] "verschachtelte Wurzel mit Exponent"; [n] children/*[1] (engine:modality="speech"),self::root,children/*/descendant-or-self::sqrt or children/*/descendant-or-self::root'.split(","),'Rule;abstr-root-nested;mathspeak.brief;[t] "verschachtelte Wurzel";self::root;children/*/descendant-or-self::sqrt or children/*/descendant-or-self::root'.split(";"),["SpecializedRule","abstr-root-nested","mathspeak.brief","mathspeak.sbrief"],["Rule","abstr-superscript","default.default", +'[t] "Potenz"',"self::superscript"],["Rule","abstr-subscript","default.default",'[t] "Index"',"self::subscript"],'Rule;abstr-subsup;default.default;[t] "Potenz mit Index";self::superscript;name(children/*[1])="subscript"'.split(";"),["Rule","abstr-infixop","default.default",'[t] @role (grammar:localRole); [t] "mit"; [t] count(./children/*); [t] "Elementen"',"self::infixop"],'Rule,abstr-infixop,default.default,[t] @role (grammar:localRole); [t] "mit ver\u00e4nderlicher Anzahl an Elementen",self::infixop,count(./children/*)>2,./children/punctuation[@role="ellipsis"]'.split(","), +["Rule","abstr-infixop","mathspeak.brief","[t] @role (grammar:localRole)","self::infixop"],["SpecializedRule","abstr-infixop","mathspeak.brief","mathspeak.sbrief"],'Rule,abstr-addition,default.default,[t] "Summe mit"; [t] count(./children/*); [t] "Summanden",self::infixop,@role="addition"'.split(","),'Rule;abstr-addition;mathspeak.brief;[t] "Summe";self::infixop;@role="addition"'.split(";"),["SpecializedRule","abstr-addition","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-var-addition;default.default;[t] "Summe mit ver\u00e4nderlicher Anzahl an Summanden";self::infixop;@role="addition";count(./children/*)>2;./children/punctuation[@role="ellipsis"]'.split(";"), +'Rule,abstr-multiplication,default.default,[t] "Produkt mit"; [t] count(./children/*); [t] "Faktoren",self::infixop,@role="multiplication"'.split(","),'Rule;abstr-multiplication;mathspeak.brief;[t] "Produkt";self::infixop;@role="multiplication"'.split(";"),["SpecializedRule","abstr-multiplication","mathspeak.brief","mathspeak.sbrief"],["Aliases","abstr-multiplication","self::infixop",'@role="implicit"'],'Rule;abstr-var-multiplication;default.default;[t] "Produkt mit ver\u00e4nderlicher Anzahl an Faktoren";self::infixop;@role="multiplication";count(./children/*)>2;./children/punctuation[@role="ellipsis"]'.split(";"), +'Aliases abstr-var-multiplication self::infixop @role="implicit" count(./children/*)>2 ./children/punctuation[@role="ellipsis"]'.split(" "),["Rule","abstr-vector","default.default",'[t] count(./children/*) ; [t] "dimensionaler Vektor"',"self::vector"],["Rule","abstr-vector","mathspeak.brief",'[t] "Vektor"',"self::vector"],["SpecializedRule","abstr-vector","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-var-vector;default.default;[t] "n dimensionaler Vektor";self::vector;./children/*/children/punctuation[@role="ellipsis"]'.split(";"), +'Rule;abstr-binomial;default.default;[t] "Binomialkoeffizient";self::vector;@role="binomial"'.split(";"),["SpecializedRule","abstr-binomial","default.default","mathspeak.brief"],["SpecializedRule","abstr-binomial","default.default","mathspeak.sbrief"],'Rule,abstr-determinant,default.default,[t] count(./children/*); [t] "dimensionale Determinante",self::matrix,@role="determinant"'.split(","),'Rule;abstr-determinant;mathspeak.brief;[t] "Determinante";self::matrix;@role="determinant"'.split(";"),["SpecializedRule", +"abstr-determinant","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-var-determinant;default.default;[t] "n dimensionale Determinante";self::matrix;@role="determinant";./children/*/children/*/children/punctuation[@role="ellipsis"]'.split(";"),'Rule,abstr-squarematrix,default.default,[t] count(./children/*); [t] "dimensionale quadratische Matrize",self::matrix,@role="squarematrix"'.split(","),'Rule;abstr-squarematrix;mathspeak.brief;[t] "quadratische Matrize";self::matrix;@role="squarematrix"'.split(";"), +["SpecializedRule","abstr-squarematrix","mathspeak.brief","mathspeak.sbrief"],'Rule,abstr-rowvector,default.default,[t] count(./children/row/children/*); [t] "dimensionaler Zeilenvektor",self::matrix,@role="rowvector"'.split(","),'Rule;abstr-rowvector;mathspeak.brief;[t] "Zeilenvektor";self::matrix;@role="rowvector"'.split(";"),["SpecializedRule","abstr-rowvector","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-var-matrix;default.default;[t] "n dimensionaler Zeilenvektor";self::matrix;@role="rowvector";./children/*/children/*/children/punctuation[@role="ellipsis"]'.split(";"), +["Rule","abstr-matrix","default.default",'[t] count(children/*); [t] "mal";[t] count(children/*[1]/children/*); [t] "Matrize"',"self::matrix"],["Rule","abstr-matrix","mathspeak.brief",'[t] "Matrize"',"self::matrix"],["SpecializedRule","abstr-matrix","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-var-matrix;default.default;[t] "n mal m dimensionale Matrize";self::matrix;./children/*/children/*/children/punctuation[@role="ellipsis"]'.split(";"),["Rule","abstr-cases","default.default",'[t] "Fallunterscheidung";[t] "mit"; [t] count(children/*); [t] "F\u00e4llen"', +"self::cases"],["Rule","abstr-cases","mathspeak.brief",'[t] "Fallunterscheidung"',"self::cases"],["SpecializedRule","abstr-cases","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-var-cases;default.default;[t] "Fallunterscheidung mit ver\u00e4nderlicher Anzahl an F\u00e4llen";self::cases;./children/row/children/cell/children/punctuation[@role="ellipsis"]or ./children/line/children/punctuation[@role="ellipsis"]'.split(";"),["Rule","abstr-punctuated","default.default",'[t] "mit"; [n] content/*[1]; [t] "getrennte Liste der L\u00e4nge"; [t] count(children/*) - count(content/*)', +"self::punctuated"],["Rule","abstr-punctuated","mathspeak.brief",'[t] "mit"; [n] content/*[1]; [t] "getrennte Liste";',"self::punctuated"],["SpecializedRule","abstr-punctuated","mathspeak.brief","mathspeak.sbrief"],'Rule,abstr-var-punctuated,default.default,[t] "mit"; [n] content/*[1]; [t] "getrennte Liste";[t] "ver\u00e4nderlicher L\u00e4nge",self::punctuated,./children/punctuation[@role="ellipsis"]'.split(","),["Rule","abstr-bigop","default.default","[n] content/*[1]","self::bigop"],["Rule","abstr-integral", +"default.default",'[t] "Integral"','@role="integral"'],"Rule,abstr-relation,default.default,[t] @role (grammar:localRole);,self::relseq,count(./children/*)=2".split(","),'Rule{abstr-relation-seq{default.default{[t] @role (grammar:localRole, join:""); [t] "ssequenz"; [t] "mit"; [t] count(./children/*); [t] "Elementen"{self::relseq{count(./children/*)>2'.split("{"),'Rule{abstr-relation-seq{mathspeak.brief{[t] @role (grammar:localRole, join:""); [t] "ssequenz"{self::relseq{count(./children/*)>2'.split("{"), +["SpecializedRule","abstr-relation-seq","mathspeak.brief","mathspeak.sbrief"],'Rule{abstr-var-relation{default.default{[t] @role (grammar:localRole, join:""); [t] "ssequenz";[t] "mit ver\u00e4nderlicher Anzahl an Elementen"{self::relseq{count(./children/*)>2{./children/punctuation[@role="ellipsis"]'.split("{"),'UniqueAlias abstr-relation default.default self::multirel @role!="unknown" count(./children/*)>2'.split(" "),'Aliases abstr-var-relation self::multirel @role!="unknown" count(./children/*)>2 ./children/punctuation[@role="ellipsis"]'.split(" "), +'Rule,abstr-multirel,default.default,[t] "Relationsequenz"; [t] "mit"; [t] count(./children/*); [t] "Elementen",self::multirel,count(./children/*)>2'.split(","),'Rule;abstr-multirel;mathspeak.brief;[t] "Relationsequenz";self::multirel;count(./children/*)>2'.split(";"),["SpecializedRule","abstr-multirel","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-var-multirel;default.default;[t] "Relationsequenz mit ver\u00e4nderlicher Anzahl an Elementen";self::multirel;count(./children/*)>2;./children/punctuation[@role="ellipsis"]'.split(";"), +["Rule","abstr-table","default.default",'[t] "Tabelle mit"; [t] count(children/*); [t] "Zeilen und";[t] count(children/*[1]/children/*); [t] "Spalten"',"self::table"],["Rule","abstr-line","default.default",'[t] "in"; [t] @role (grammar:localRole);',"self::line"],["Rule","abstr-row","default.default",'[t] "in"; [t] @role (grammar:localRole);[t] count(preceding-sibling::..); [t] "mit";[t] count(children/*); [t] "Spalten"',"self::row"],["Rule","abstr-cell","default.default",'[t] "in"; [t] @role (grammar:localRole);', +"self::cell"]]};sre.SummaryRules={modality:"summary",rules:['Rule;abstr-identifier;default.default;[t] "long identifier";self::identifier;contains(@grammar, "collapsed")'.split(";"),["Rule","abstr-identifier","default.default",'[t] "identifier"',"self::identifier"],'Rule;abstr-number;default.default;[t] "long number";self::number;contains(@grammar, "collapsed")'.split(";"),["Rule","abstr-number","default.default",'[t] "number"',"self::number"],'Rule;abstr-mixed-number;default.default;[t] "long mixed number";self::number;@role="mixed";contains(@grammar, "collapsed")'.split(";"), +'Rule;abstr-mixed-number;default.default;[t] "mixed number";self::number;@role="mixed"'.split(";"),["Rule","abstr-text","default.default",'[t] "text"',"self::text"],["Rule","abstr-function","default.default",'[t] "functional expression"',"self::function"],["Rule","abstr-function","mathspeak.brief",'[t] "function"',"self::function"],["SpecializedRule","abstr-function","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-lim;default.default;[t] "limit function";self::function;@role="limit function"'.split(";"), +'Rule;abstr-lim;mathspeak.brief;[t] "lim";self::function;@role="limit function"'.split(";"),["SpecializedRule","abstr-lim","mathspeak.brief","mathspeak.sbrief"],["Rule","abstr-fraction","default.default",'[t] "fraction"',"self::fraction"],["Rule","abstr-fraction","mathspeak.brief",'[t] "frac"',"self::fraction"],["SpecializedRule","abstr-fraction","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-continued-fraction;default.default;[t] "continued fraction";self::fraction;children/*[2]/descendant-or-self::*[@role="ellipsis"]'.split(";"), +'Rule;abstr-continued-fraction;mathspeak.brief;[t] "continued frac";self::fraction;children/*[2]/descendant-or-self::*[@role="ellipsis"]'.split(";"),["SpecializedRule","abstr-continued-fraction","mathspeak.brief","mathspeak.sbrief"],["Rule","abstr-sqrt","default.default",'[t] "square root"',"self::sqrt"],'Rule;abstr-sqrt-nested;default.default;[t] "nested square root";self::sqrt;children/*/descendant-or-self::sqrt or children/*/descendant-or-self::root'.split(";"),'Rule{abstr-root{default.default{[t] "root of index"; [n] children/*[1] (engine:modality="speech"); [t] "endindex"{self::root{contains(@grammar, "collapsed"){following-sibling::* or ancestor::*/following-sibling::*'.split("{"), +["Rule","abstr-root","default.default",'[t] "root of index"; [n] children/*[1] (engine:modality=speech)',"self::root"],["Rule","abstr-root","mathspeak.brief",'[t] "root"',"self::root"],["SpecializedRule","abstr-root","mathspeak.brief","mathspeak.sbrief"],'Rule{abstr-root-nested{default.default{[t] "nested root of index"; [n] children/*[1] (engine:modality="speech"); [t] "endindex"{self::root{contains(@grammar, "collapsed"){children/*/descendant-or-self::sqrt or children/*/descendant-or-self::root{following-sibling::* or ancestor::*/following-sibling::*'.split("{"), +'Rule,abstr-root-nested,default.default,[t] "nested root of index"; [n] children/*[1] (engine:modality="speech"),self::root,children/*/descendant-or-self::sqrt or children/*/descendant-or-self::root'.split(","),'Rule;abstr-root-nested;mathspeak.brief;[t] "nested root";self::root;children/*/descendant-or-self::sqrt or children/*/descendant-or-self::root'.split(";"),["SpecializedRule","abstr-root-nested","mathspeak.brief","mathspeak.sbrief"],["Rule","abstr-superscript","default.default",'[t] "power"', +"self::superscript"],["Rule","abstr-subscript","default.default",'[t] "subscript"',"self::subscript"],'Rule;abstr-subsup;default.default;[t] "power with subscript";self::superscript;name(children/*[1])="subscript"'.split(";"),["Rule","abstr-infixop","default.default",'[t] @role (grammar:localRole); [t] "with"; [t] count(./children/*); [t] "elements"',"self::infixop"],'Rule,abstr-infixop,default.default,[t] @role (grammar:localRole); [t] "with variable number of elements",self::infixop,count(./children/*)>2,./children/punctuation[@role="ellipsis"]'.split(","), +["Rule","abstr-infixop","mathspeak.brief","[t] @role (grammar:localRole)","self::infixop"],["SpecializedRule","abstr-infixop","mathspeak.brief","mathspeak.sbrief"],'Rule,abstr-addition,default.default,[t] "sum with"; [t] count(./children/*); [t] "summands",self::infixop,@role="addition"'.split(","),'Rule;abstr-addition;mathspeak.brief;[t] "sum";self::infixop;@role="addition"'.split(";"),["SpecializedRule","abstr-addition","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-var-addition;default.default;[t] "sum with variable number of summands";self::infixop;@role="addition";count(./children/*)>2;./children/punctuation[@role="ellipsis"]'.split(";"), +'Rule,abstr-multiplication,default.default,[t] "product with"; [t] count(./children/*); [t] "factors",self::infixop,@role="multiplication"'.split(","),'Rule;abstr-multiplication;mathspeak.brief;[t] "product";self::infixop;@role="multiplication"'.split(";"),["SpecializedRule","abstr-multiplication","mathspeak.brief","mathspeak.sbrief"],["Aliases","abstr-multiplication","self::infixop",'@role="implicit"'],'Rule;abstr-var-multiplication;default.default;[t] "product with variable number of factors";self::infixop;@role="multiplication";count(./children/*)>2;./children/punctuation[@role="ellipsis"]'.split(";"), +'Aliases abstr-var-multiplication self::infixop @role="implicit" count(./children/*)>2 ./children/punctuation[@role="ellipsis"]'.split(" "),["Rule","abstr-vector","default.default",'[t] count(./children/*) ; [t] "dimensional vector"',"self::vector"],["Rule","abstr-vector","mathspeak.brief",'[t] "vector"',"self::vector"],["SpecializedRule","abstr-vector","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-var-vector;default.default;[t] "n dimensional vector";self::vector;./children/*/children/punctuation[@role="ellipsis"]'.split(";"), +'Rule;abstr-binomial;default.default;[t] "binomial";self::vector;@role="binomial"'.split(";"),["SpecializedRule","abstr-binomial","default.default","mathspeak.brief"],["SpecializedRule","abstr-binomial","default.default","mathspeak.sbrief"],'Rule,abstr-determinant,default.default,[t] count(./children/*); [t] "dimensional determinant",self::matrix,@role="determinant"'.split(","),'Rule;abstr-determinant;mathspeak.brief;[t] "determinant";self::matrix;@role="determinant"'.split(";"),["SpecializedRule", +"abstr-determinant","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-var-determinant;default.default;[t] "n dimensional determinant";self::matrix;@role="determinant";./children/*/children/*/children/punctuation[@role="ellipsis"]'.split(";"),'Rule,abstr-squarematrix,default.default,[t] count(./children/*); [t] "dimensional square matrix",self::matrix,@role="squarematrix"'.split(","),'Rule;abstr-squarematrix;mathspeak.brief;[t] "square matrix";self::matrix;@role="squarematrix"'.split(";"),["SpecializedRule", +"abstr-squarematrix","mathspeak.brief","mathspeak.sbrief"],'Rule,abstr-rowvector,default.default,[t] count(./children/row/children/*); [t] "dimensional row vector",self::matrix,@role="rowvector"'.split(","),'Rule;abstr-rowvector;mathspeak.brief;[t] "row vector";self::matrix;@role="rowvector"'.split(";"),["SpecializedRule","abstr-rowvector","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-var-matrix;default.default;[t] "n dimensional row vector";self::matrix;@role="rowvector";./children/*/children/*/children/punctuation[@role="ellipsis"]'.split(";"), +["Rule","abstr-matrix","default.default",'[t] count(children/*); [t] "by";[t] count(children/*[1]/children/*); [t] "matrix"',"self::matrix"],["Rule","abstr-matrix","mathspeak.brief",'[t] "matrix"',"self::matrix"],["SpecializedRule","abstr-matrix","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-var-matrix;default.default;[t] "n by m dimensional matrix";self::matrix;./children/*/children/*/children/punctuation[@role="ellipsis"]'.split(";"),["Rule","abstr-cases","default.default",'[t] "case statement";[t] "with"; [t] count(children/*); [t] "cases"', +"self::cases"],["Rule","abstr-cases","mathspeak.brief",'[t] "case statement"',"self::cases"],["SpecializedRule","abstr-cases","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-var-cases;default.default;[t] "case statement with variable number of cases";self::cases;./children/row/children/cell/children/punctuation[@role="ellipsis"]or ./children/line/children/punctuation[@role="ellipsis"]'.split(";"),["Rule","abstr-punctuated","default.default",'[n] content/*[1]; [t] "separated list"; [t] "of length"; [t] count(children/*) - count(content/*)', +"self::punctuated"],["Rule","abstr-punctuated","mathspeak.brief",'[n] content/*[1]; [t] "separated list"',"self::punctuated"],["SpecializedRule","abstr-punctuated","mathspeak.brief","mathspeak.sbrief"],'Rule,abstr-var-punctuated,default.default,[n] content/*[1]; [t] "separated list";[t] "of variable length",self::punctuated,./children/punctuation[@role="ellipsis"]'.split(","),["Rule","abstr-bigop","default.default","[n] content/*[1]","self::bigop"],["Rule","abstr-integral","default.default",'[t] "integral"', +'@role="integral"'],"Rule,abstr-relation,default.default,[t] @role (grammar:localRole);,self::relseq,count(./children/*)=2".split(","),'Rule,abstr-relation-seq,default.default,[t] @role (grammar:localRole); [t] "sequence"; [t] "with"; [t] count(./children/*); [t] "elements",self::relseq,count(./children/*)>2'.split(","),'Rule,abstr-relation-seq,mathspeak.brief,[t] @role (grammar:localRole); [t] "sequence",self::relseq,count(./children/*)>2'.split(","),["SpecializedRule","abstr-relation-seq","mathspeak.brief", +"mathspeak.sbrief"],'Rule,abstr-var-relation,default.default,[t] @role (grammar:localRole); [t] "sequence"; [t] "with variable number of elements",self::relseq,count(./children/*)>2,./children/punctuation[@role="ellipsis"]'.split(","),'UniqueAlias abstr-relation default.default self::multirel @role!="unknown" count(./children/*)>2'.split(" "),'Aliases abstr-var-relation self::multirel @role!="unknown" count(./children/*)>2 ./children/punctuation[@role="ellipsis"]'.split(" "),'Rule,abstr-multirel,default.default,[t] "relation sequence"; [t] "with"; [t] count(./children/*); [t] "elements",self::multirel,count(./children/*)>2'.split(","), +'Rule;abstr-multirel;mathspeak.brief;[t] "relation sequence";self::multirel;count(./children/*)>2'.split(";"),["SpecializedRule","abstr-multirel","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-var-multirel;default.default;[t] "relation sequence with variable number of elements";self::multirel;count(./children/*)>2;./children/punctuation[@role="ellipsis"]'.split(";"),["Rule","abstr-table","default.default",'[t] "table with"; [t] count(children/*); [t] "rows and";[t] count(children/*[1]/children/*); [t] "columns"', +"self::table"],["Rule","abstr-line","default.default",'[t] "in"; [t] @role (grammar:localRole);',"self::line"],["Rule","abstr-row","default.default",'[t] "in"; [t] @role (grammar:localRole);[t] count(preceding-sibling::..); [t] "with";[t] count(children/*); [t] "columns"',"self::row"],["Rule","abstr-cell","default.default",'[t] "in"; [t] @role (grammar:localRole);',"self::cell"]]};sre.SummarySpanish={locale:"es",modality:"summary",rules:[["Rule","stree","default.default","[n] ./*[1]","self::stree"],'Rule;abstr-identifier;default.default;[t] "identificador largo";self::identifier;contains(@grammar, "collapsed")'.split(";"),["Rule","abstr-identifier","default.default",'[t] "identificador"',"self::identifier"],'Rule;abstr-number;default.default;[t] "n\u00famero largo";self::number;contains(@grammar, "collapsed")'.split(";"),["Rule","abstr-number","default.default",'[t] "n\u00famero"', +"self::number"],'Rule;abstr-mixed-number;default.default;[t] "n\u00famero largo mixto";self::number;@role="mixed";contains(@grammar, "collapsed")'.split(";"),'Rule;abstr-mixed-number;default.default;[t] "n\u00famero mixto";self::number;@role="mixed"'.split(";"),["Rule","abstr-text","default.default",'[t] "texto"',"self::text"],["Rule","abstr-function","default.default",'[t] "expresi\u00f3n funcional"',"self::function"],["Rule","abstr-function","mathspeak.brief",'[t] "funci\u00f3n"',"self::function"], +["SpecializedRule","abstr-function","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-lim;default.default;[t] "funci\u00f3n de l\u00edmite";self::function;@role="limit function"'.split(";"),'Rule;abstr-lim;mathspeak.brief;[t] "l\u00edmite";self::function;@role="limit function"'.split(";"),["SpecializedRule","abstr-lim","mathspeak.brief","mathspeak.sbrief"],["Rule","abstr-fraction","default.default",'[t] "fracci\u00f3n"',"self::fraction"],["Rule","abstr-fraction","mathspeak.brief",'[t] "frac"',"self::fraction"], +["SpecializedRule","abstr-fraction","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-continued-fraction;default.default;[t] "fracci\u00f3n continua";self::fraction;children/*[2]/descendant-or-self::*[@role="ellipsis"]'.split(";"),'Rule;abstr-continued-fraction;mathspeak.brief;[t] "frac continua";self::fraction;children/*[2]/descendant-or-self::*[@role="ellipsis"]'.split(";"),["SpecializedRule","abstr-continued-fraction","mathspeak.brief","mathspeak.sbrief"],["Rule","abstr-sqrt","default.default", +'[t] "ra\u00edz cuadrada"',"self::sqrt"],'Rule;abstr-sqrt-nested;default.default;[t] "ra\u00edz cuadrada anidada";self::sqrt;children/*/descendant-or-self::sqrt or children/*/descendant-or-self::root'.split(";"),'Rule{abstr-root{default.default{[t] "ra\u00edz del \u00edndice"; [n] children/*[1] (engine:modality="speech"); [t] "finalizar de \u00edndice"{self::root{contains(@grammar, "collapsed"){following-sibling::* or ancestor::*/following-sibling::*'.split("{"),["Rule","abstr-root","default.default", +'[t] "ra\u00edz del \u00edndice"; [n] children/*[1] (engine:modality=speech)',"self::root"],["Rule","abstr-root","mathspeak.brief",'[t] "ra\u00edz"',"self::root"],["SpecializedRule","abstr-root","mathspeak.brief","mathspeak.sbrief"],'Rule{abstr-root-nested{default.default{[t] "ra\u00edz anidada del \u00edndice"; [n] children/*[1] (engine:modality="speech"); [t] "finalizar de \u00edndice"{self::root{contains(@grammar, "collapsed"){children/*/descendant-or-self::sqrt or children/*/descendant-or-self::root{following-sibling::* or ancestor::*/following-sibling::*'.split("{"), +'Rule,abstr-root-nested,default.default,[t] "ra\u00edz anidada del \u00edndice"; [n] children/*[1] (engine:modality="speech"),self::root,children/*/descendant-or-self::sqrt or children/*/descendant-or-self::root'.split(","),'Rule;abstr-root-nested;mathspeak.brief;[t] "ra\u00edz anidada";self::root;children/*/descendant-or-self::sqrt or children/*/descendant-or-self::root'.split(";"),["SpecializedRule","abstr-root-nested","mathspeak.brief","mathspeak.sbrief"],["Rule","abstr-superscript","default.default", +'[t] "potencia"',"self::superscript"],["Rule","abstr-subscript","default.default",'[t] "sub\u00edndice"',"self::subscript"],'Rule;abstr-subsup;default.default;[t] "potencia con sub\u00edndice";self::superscript;name(children/*[1])="subscript"'.split(";"),["Rule","abstr-infixop","default.default",'[t] @role (grammar:localRole); [t] "con"; [t] count(./children/*); [t] "elementos"',"self::infixop"],'Rule,abstr-infixop,default.default,[t] @role (grammar:localRole); [t] "con una cantidad variable de elementos",self::infixop,count(./children/*)>2,./children/punctuation[@role="ellipsis"]'.split(","), +["Rule","abstr-infixop","mathspeak.brief","[t] @role (grammar:localRole)","self::infixop"],["SpecializedRule","abstr-infixop","mathspeak.brief","mathspeak.sbrief"],'Rule,abstr-addition,default.default,[t] "suma con"; [t] count(./children/*); [t] "sumandos",self::infixop,@role="addition"'.split(","),'Rule;abstr-addition;mathspeak.brief;[t] "suma";self::infixop;@role="addition"'.split(";"),["SpecializedRule","abstr-addition","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-var-addition;default.default;[t] "suma con n\u00famero variable de sumandos";self::infixop;@role="addition";count(./children/*)>2;./children/punctuation[@role="ellipsis"]'.split(";"), +'Rule,abstr-multiplication,default.default,[t] "producto con"; [t] count(./children/*); [t] "factores",self::infixop,@role="multiplication"'.split(","),'Rule;abstr-multiplication;mathspeak.brief;[t] "producto";self::infixop;@role="multiplication"'.split(";"),["SpecializedRule","abstr-multiplication","mathspeak.brief","mathspeak.sbrief"],["Aliases","abstr-multiplication","self::infixop",'@role="implicit"'],'Rule;abstr-var-multiplication;default.default;[t] "producto con una cantidad variable de factores";self::infixop;@role="multiplication";count(./children/*)>2;./children/punctuation[@role="ellipsis"]'.split(";"), +'Aliases abstr-var-multiplication self::infixop @role="implicit" count(./children/*)>2 ./children/punctuation[@role="ellipsis"]'.split(" "),["Rule","abstr-vector","default.default",'[t] "vector de dimensi\u00f3n"; [t] count(./children/*)',"self::vector"],["Rule","abstr-vector","mathspeak.brief",'[t] "vector"',"self::vector"],["SpecializedRule","abstr-vector","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-var-vector;default.default;[t] "vector de dimensi\u00f3n n";self::vector;./children/*/children/punctuation[@role="ellipsis"]'.split(";"), +'Rule;abstr-binomial;default.default;[t] "binomio";self::vector;@role="binomial"'.split(";"),["SpecializedRule","abstr-binomial","default.default","mathspeak.brief"],["SpecializedRule","abstr-binomial","default.default","mathspeak.sbrief"],'Rule,abstr-determinant,default.default,[t] "determinante de dimensi\u00f3n"; [t] count(./children/*),self::matrix,@role="determinant"'.split(","),'Rule;abstr-determinant;mathspeak.brief;[t] "determinante";self::matrix;@role="determinant"'.split(";"),["SpecializedRule", +"abstr-determinant","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-var-determinant;default.default;[t] "determinante de dimensi\u00f3n n";self::matrix;@role="determinant";./children/*/children/*/children/punctuation[@role="ellipsis"]'.split(";"),'Rule,abstr-squarematrix,default.default,[t] "matriz cuadrada de dimensi\u00f3n"; [t] count(./children/*),self::matrix,@role="squarematrix"'.split(","),'Rule;abstr-squarematrix;mathspeak.brief;[t] "matriz cuadrada";self::matrix;@role="squarematrix"'.split(";"), +["SpecializedRule","abstr-squarematrix","mathspeak.brief","mathspeak.sbrief"],'Rule,abstr-rowvector,default.default,[t] "vector fila de dimensi\u00f3n"; [t] count(./children/row/children/*),self::matrix,@role="rowvector"'.split(","),'Rule;abstr-rowvector;mathspeak.brief;[t] "vector fila";self::matrix;@role="rowvector"'.split(";"),["SpecializedRule","abstr-rowvector","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-var-matrix;default.default;[t] "vector fila de dimensi\u00f3n n";self::matrix;@role="rowvector";./children/*/children/*/children/punctuation[@role="ellipsis"]'.split(";"), +["Rule","abstr-matrix","default.default",'[t] count(children/*); [t] "por";[t] count(children/*[1]/children/*); [t] "matriz"',"self::matrix"],["Rule","abstr-matrix","mathspeak.brief",'[t] "matriz"',"self::matrix"],["SpecializedRule","abstr-matrix","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-var-matrix;default.default;[t] "matriz de dimensi\u00f3n n por m";self::matrix;./children/*/children/*/children/punctuation[@role="ellipsis"]'.split(";"),["Rule","abstr-cases","default.default",'[t] "declaraci\u00f3n de caso";[t] "con"; [t] count(children/*); [t] "casos"', +"self::cases"],["Rule","abstr-cases","mathspeak.brief",'[t] "declaraci\u00f3n de caso"',"self::cases"],["SpecializedRule","abstr-cases","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-var-cases;default.default;[t] "declaraci\u00f3n de caso con n\u00famero variable de casos";self::cases;./children/row/children/cell/children/punctuation[@role="ellipsis"]or ./children/line/children/punctuation[@role="ellipsis"]'.split(";"),["Rule","abstr-punctuated","default.default",'[t] "lista separada por"; [n] content/*[1]; [t] "de longitud"; [t] count(children/*) - count(content/*)', +"self::punctuated"],["Rule","abstr-punctuated","mathspeak.brief",'[t] "lista separada por"; [n] content/*[1]',"self::punctuated"],["SpecializedRule","abstr-punctuated","mathspeak.brief","mathspeak.sbrief"],'Rule,abstr-var-punctuated,default.default,[t] "lista separada por"; [n] content/*[1],[t] "de longitud variable",self::punctuated,./children/punctuation[@role="ellipsis"]'.split(","),["Rule","abstr-bigop","default.default","[n] content/*[1]","self::bigop"],["Rule","abstr-integral","default.default", +'[t] "integral"','@role="integral"'],"Rule,abstr-relation,default.default,[t] @role (grammar:localRole);,self::relseq,count(./children/*)=2".split(","),'Rule,abstr-relation-seq,default.default,[t] "secuencia de"; [t] @role (grammar:localRole); [t] "con"; [t] count(./children/*); [t] "elementos",self::relseq,count(./children/*)>2'.split(","),'Rule,abstr-relation-seq,mathspeak.brief,[t] "secuencia de"; [t] @role (grammar:localRole),self::relseq,count(./children/*)>2'.split(","),["SpecializedRule","abstr-relation-seq", +"mathspeak.brief","mathspeak.sbrief"],'Rule,abstr-var-relation,default.default,[t] "secuencia de"; [t] @role (grammar:localRole); [t] "con una cantidad variable de elementos",self::relseq,count(./children/*)>2,./children/punctuation[@role="ellipsis"]'.split(","),'UniqueAlias abstr-relation default.default self::multirel @role!="unknown" count(./children/*)>2'.split(" "),'Aliases abstr-var-relation self::multirel @role!="unknown" count(./children/*)>2 ./children/punctuation[@role="ellipsis"]'.split(" "), +'Rule,abstr-multirel,default.default,[t] "secuencia de relaci\u00f3n"; [t] "con"; [t] count(./children/*); [t] "elementos",self::multirel,count(./children/*)>2'.split(","),'Rule;abstr-multirel;mathspeak.brief;[t] "secuencia de relaci\u00f3n";self::multirel;count(./children/*)>2'.split(";"),["SpecializedRule","abstr-multirel","mathspeak.brief","mathspeak.sbrief"],'Rule;abstr-var-multirel;default.default;[t] "secuencia de relaci\u00f3n con n\u00famero variable de elementos";self::multirel;count(./children/*)>2;./children/punctuation[@role="ellipsis"]'.split(";"), +["Rule","abstr-table","default.default",'[t] "mesa con"; [t] count(children/*); [t] "filas y";[t] count(children/*[1]/children/*); [t] "columnas"',"self::table"],["Rule","abstr-line","default.default",'[t] "en"; [t] @role (grammar:localRole);',"self::line"],["Rule","abstr-row","default.default",'[t] "en"; [t] @role (grammar:localRole);[t] count(preceding-sibling::..); [t] "con";[t] count(children/*); [t] "columnas"',"self::row"],["Rule","abstr-cell","default.default",'[t] "en"; [t] @role (grammar:localRole);', +"self::cell"]]};sre.SpeechRuleStores={}; +sre.SpeechRuleStores.RULE_SETS_={SemanticTreeRules:sre.SemanticTreeRules,MathspeakFrench:sre.MathspeakFrench,MathspeakGerman:sre.MathspeakGerman,MathspeakRules:sre.MathspeakRules,MathspeakSpanish:sre.MathspeakSpanish,NemethRules:sre.NemethRules,ClearspeakFrench:sre.ClearspeakFrench,ClearspeakGerman:sre.ClearspeakGerman,ClearspeakRules:sre.ClearspeakRules,EmacspeakRules:sre.EmacspeakRules,SummaryFrench:sre.SummaryFrench,SummaryGerman:sre.SummaryGerman,SummaryRules:sre.SummaryRules,SummarySpanish:sre.SummarySpanish, +PrefixFrench:sre.PrefixFrench,PrefixGerman:sre.PrefixGerman,PrefixRules:sre.PrefixRules,PrefixSpanish:sre.PrefixSpanish};sre.SpeechRuleStores.availableSets=function(){return Object.keys(sre.SpeechRuleStores.RULE_SETS_)};sre.SpeechRuleStores.getConstructor=function(a){return(a=sre.SpeechRuleStores.RULE_SETS_[a])?a:null};sre.SpeechRuleEngine=function(){this.activeStore_=null;this.cache_={};this.ready_=!0;this.combinedStores_={};this.evaluators_={};this.ruleSets_={};sre.Engine.registerTest(goog.bind(function(a){return this.ready_},this))};goog.addSingletonGetter(sre.SpeechRuleEngine); +sre.SpeechRuleEngine.prototype.parameterize=function(a){for(var b={},c=0,d=a.length;c=g.length&&d.push(g.shift());e=e.concat(g)}b.push(d);e.forEach(function(h){return b.push(h)})}else a.childNodes.forEach(function(h){return sre.ColorGenerator.visitStree_(h, +b,c)})}else c[a.id]||b.push(a.id)};sre.DirectSpeechGenerator=function(){sre.AbstractSpeechGenerator.call(this)};goog.inherits(sre.DirectSpeechGenerator,sre.AbstractSpeechGenerator);sre.DirectSpeechGenerator.prototype.getSpeech=function(a,b){return sre.WalkerUtil.getAttribute(a,this.modality)};sre.DummySpeechGenerator=function(){sre.AbstractSpeechGenerator.call(this)};goog.inherits(sre.DummySpeechGenerator,sre.AbstractSpeechGenerator);sre.DummySpeechGenerator.prototype.getSpeech=function(a,b){return""};sre.TreeSpeechGenerator=function(){sre.AbstractSpeechGenerator.call(this)};goog.inherits(sre.TreeSpeechGenerator,sre.AbstractSpeechGenerator); +sre.TreeSpeechGenerator.prototype.getSpeech=function(a,b){var c=this.generateSpeech(a,b);a.setAttribute(this.modality,c);var d=this.getRebuilt().nodeDict,e;for(e in d){var f=d[e],g=sre.WalkerUtil.getBySemanticId(b,e),h=sre.WalkerUtil.getBySemanticId(a,e);g&&h&&(sre.SpeechGeneratorUtil.addSpeech(h,f,this.modality),this.modality===sre.EnrichMathml.Attribute.SPEECH&&sre.SpeechGeneratorUtil.addPrefix(h,f))}return c};sre.NodeSpeechGenerator=function(){sre.TreeSpeechGenerator.call(this)};goog.inherits(sre.NodeSpeechGenerator,sre.TreeSpeechGenerator);sre.NodeSpeechGenerator.prototype.getSpeech=function(a,b){var c=sre.WalkerUtil.getAttribute(a,this.modality);return c?c:sre.NodeSpeechGenerator.superClass_.getSpeech.call(this,a,b)};sre.SummarySpeechGenerator=function(){sre.AbstractSpeechGenerator.call(this)};goog.inherits(sre.SummarySpeechGenerator,sre.AbstractSpeechGenerator);sre.SummarySpeechGenerator.prototype.getSpeech=function(a,b){sre.SpeechGeneratorUtil.connectAllMactions(b,this.getRebuilt().xml);return this.generateSpeech(a,b)};sre.SpeechGeneratorFactory={};sre.SpeechGeneratorFactory.generator=function(a){return new (sre.SpeechGeneratorFactory.generatorMapping_[a]||sre.SpeechGeneratorFactory.generatorMapping_.Direct)};sre.SpeechGeneratorFactory.generatorMapping_={Adhoc:sre.AdhocSpeechGenerator,Color:sre.ColorGenerator,Direct:sre.DirectSpeechGenerator,Dummy:sre.DummySpeechGenerator,Node:sre.NodeSpeechGenerator,Summary:sre.SummarySpeechGenerator,Tree:sre.TreeSpeechGenerator};sre.EventUtil={};sre.EventUtil.KeyCode={ENTER:13,ESC:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40,TAB:9,LESS:188,GREATER:190,DASH:189,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,A:65,B:66,C:67,D:68,E:69,F:70,G:71,H:72,I:73,J:74,K:75,L:76,M:77,N:78,O:79,P:80,Q:81,R:82,S:83,T:84,U:85,V:86,W:87,X:88,Y:89,Z:90};sre.EventUtil.Move=function(){var a={},b;for(b in sre.EventUtil.KeyCode)a[sre.EventUtil.KeyCode[b]]=b;return a}(); +sre.EventUtil.EventType={CLICK:"click",DBLCLICK:"dblclick",MOUSEDOWN:"mousedown",MOUSEUP:"mouseup",MOUSEOVER:"mouseover",MOUSEOUT:"mouseout",MOUSEMOVE:"mousemove",SELECTSTART:"selectstart",KEYPRESS:"keypress",KEYDOWN:"keydown",KEYUP:"keyup",TOUCHSTART:"touchstart",TOUCHMOVE:"touchmove",TOUCHEND:"touchend",TOUCHCANCEL:"touchcancel"};sre.EventUtil.Event=function(a,b,c){this.src=a;this.type=b;this.callback=c};sre.EventUtil.Event.prototype.add=function(){this.src.addEventListener(this.type,this.callback)}; +sre.EventUtil.Event.prototype.remove=function(){this.src.removeEventListener(this.type,this.callback)};sre.Focus=function(a,b){this.semanticNodes_=a;this.semanticPrimary_=b;this.domNodes_=[];this.domPrimary_=null;this.allNodes_=[]};sre.Focus.prototype.getSemanticPrimary=function(){return this.semanticPrimary_};sre.Focus.prototype.getSemanticNodes=function(){return this.semanticNodes_};sre.Focus.prototype.getNodes=function(){return this.allNodes_};sre.Focus.prototype.getDomNodes=function(){return this.domNodes_};sre.Focus.prototype.getDomPrimary=function(){return this.domPrimary_}; +sre.Focus.prototype.toString=function(){return"Primary:"+this.domPrimary_+" Nodes:"+this.domNodes_};sre.Focus.prototype.clone=function(){var a=new sre.Focus(this.semanticNodes_,this.semanticPrimary_);a.domNodes_=this.domNodes_;a.domPrimary_=this.domPrimary_;a.allNodes_=this.allNodes_;return a}; +sre.Focus.factory=function(a,b,c,d){var e=function(h){return sre.WalkerUtil.getBySemanticId(d,h)},f=c.nodeDict;c=e(a);e=b.map(e);var g=b.map(function(h){return f[h]});a=new sre.Focus(g,f[a]);a.domNodes_=e;a.domPrimary_=c;a.allNodes_=sre.Focus.generateAllVisibleNodes_(b,e,f,d);return a}; +sre.Focus.generateAllVisibleNodes_=function(a,b,c,d){for(var e=function(m){return sre.WalkerUtil.getBySemanticId(d,m)},f=[],g=0,h=a.length;ga||a>=b.length?null:b[a]};sre.Levels.prototype.depth=function(){return this.level_.length};sre.Levels.prototype.clone=function(){var a=new sre.Levels;a.level_=this.level_.slice(0);return a};sre.Levels.prototype.toString=function(){for(var a="",b=0,c;c=this.level_[b];b++)a+="\n"+c.map(function(d){return d.toString()});return a};sre.Walker=function(){};sre.Walker.prototype.isActive=function(){};sre.Walker.prototype.activate=function(){};sre.Walker.prototype.deactivate=function(){};sre.Walker.prototype.speech=function(){};sre.Walker.prototype.getXml=function(){};sre.Walker.prototype.getRebuilt=function(){};sre.Walker.prototype.getFocus=function(a){};sre.Walker.prototype.setFocus=function(a){};sre.Walker.prototype.getDepth=function(){};sre.Walker.prototype.move=function(a){};sre.Walker.prototype.update=function(a){}; +sre.Walker.move={UP:"up",DOWN:"down",LEFT:"left",RIGHT:"right",REPEAT:"repeat",DEPTH:"depth",ENTER:"enter",EXPAND:"expand",HOME:"home",SUMMARY:"summary",DETAIL:"detail",ROW:"row",CELL:"cell"};sre.Walker.STATE_={};sre.Walker.resetState=function(a){delete sre.Walker.STATE_[a]};sre.Walker.setState=function(a,b){sre.Walker.STATE_[a]=b};sre.Walker.getState=function(a){return sre.Walker.STATE_[a]};sre.AbstractWalker=function(a,b,c,d){this.node=a;this.node.id?this.id=this.node.id:this.node.hasAttribute(sre.AbstractWalker.SRE_ID_ATTR)?this.id=this.node.getAttribute(sre.AbstractWalker.SRE_ID_ATTR):(this.node.setAttribute(sre.AbstractWalker.SRE_ID_ATTR,sre.AbstractWalker.ID_COUNTER),this.id=sre.AbstractWalker.ID_COUNTER++);this.generator=b;this.highlighter=c;this.rootNode=sre.WalkerUtil.getSemanticRoot(a);this.rootId=this.rootNode.getAttribute(sre.EnrichMathml.Attribute.ID);this.xmlString_=d;this.focus_= +this.rebuilt_=this.xml_=null;this.keyMapping={};this.keyMapping[sre.EventUtil.KeyCode.UP]=goog.bind(this.up,this);this.keyMapping[sre.EventUtil.KeyCode.DOWN]=goog.bind(this.down,this);this.keyMapping[sre.EventUtil.KeyCode.RIGHT]=goog.bind(this.right,this);this.keyMapping[sre.EventUtil.KeyCode.LEFT]=goog.bind(this.left,this);this.keyMapping[sre.EventUtil.KeyCode.TAB]=goog.bind(this.repeat,this);this.keyMapping[sre.EventUtil.KeyCode.DASH]=goog.bind(this.expand,this);this.keyMapping[sre.EventUtil.KeyCode.SPACE]= +goog.bind(this.depth,this);this.keyMapping[sre.EventUtil.KeyCode.HOME]=goog.bind(this.home,this);this.keyMapping[sre.EventUtil.KeyCode.X]=goog.bind(this.summary,this);this.keyMapping[sre.EventUtil.KeyCode.Z]=goog.bind(this.detail,this);this.keyMapping[sre.EventUtil.KeyCode.V]=goog.bind(this.virtualize,this);this.keyMapping[sre.EventUtil.KeyCode.P]=goog.bind(this.previous,this);this.keyMapping[sre.EventUtil.KeyCode.U]=goog.bind(this.undo,this);this.keyMapping[sre.EventUtil.KeyCode.LESS]=goog.bind(this.previousRules, +this);this.keyMapping[sre.EventUtil.KeyCode.GREATER]=goog.bind(this.nextRules,this);this.active_=!1;this.moved=sre.Walker.move.ENTER;this.cursors=[]};sre.AbstractWalker.prototype.getXml=function(){this.xml_||(this.xml_=sre.DomUtil.parseInput(this.xmlString_));return this.xml_};sre.AbstractWalker.prototype.getRebuilt=function(){this.rebuilt_||(this.rebuilt_=this.rebuildStree());return this.rebuilt_};sre.AbstractWalker.ID_COUNTER=0;sre.AbstractWalker.SRE_ID_ATTR="sre-explorer-id"; +sre.AbstractWalker.prototype.isActive=function(){return this.active_};sre.AbstractWalker.prototype.toggleActive_=function(){this.active_=!this.active_};sre.AbstractWalker.prototype.activate=function(){this.isActive()||(this.generator.start(),this.toggleActive_())};sre.AbstractWalker.prototype.deactivate=function(){this.isActive()&&(sre.Walker.setState(this.id,this.primaryId()),this.generator.end(),this.toggleActive_())}; +sre.AbstractWalker.prototype.getFocus=function(a){this.focus_||(this.focus_=sre.Focus.factory(this.rootId,[this.rootId],this.getRebuilt(),this.node));a&&this.updateFocus();return this.focus_};sre.AbstractWalker.prototype.setFocus=function(a){this.focus_=a};sre.AbstractWalker.prototype.getDepth=function(){return this.levels.depth()-1};sre.AbstractWalker.prototype.isSpeech=function(){return this.generator.modality===sre.EnrichMathml.Attribute.SPEECH}; +sre.AbstractWalker.prototype.speech=function(){var a=this.getFocus().getDomNodes();if(!a.length)return"";var b=this.specialMove();if(null!==b)return b;switch(this.moved){case sre.Walker.move.DEPTH:return this.depth_();case sre.Walker.move.SUMMARY:return this.summary_();case sre.Walker.move.DETAIL:return this.detail_();default:b=[];for(var c=this.getFocus().getSemanticNodes(),d=0,e=a.length;d=a.length-1?a[0]:a[c+1]}if("clearspeak"===a){var d=sre.ClearspeakPreferences.getLocalePreferences().en;if(!d)return"default";a=sre.ClearspeakPreferences.relevantPreferences(this.getFocus().getSemanticPrimary());c=sre.ClearspeakPreferences.findPreference(b,a);d=d[a].map(function(e){return e.split("_")[1]});c=d.indexOf(c);return-1===c?b:sre.ClearspeakPreferences.addPreference(b, +a,c>=d.length-1?d[0]:d[c+1])}return b};sre.AbstractWalker.prototype.previousRules=function(){var a=this.generator.getOptions();if("speech"!==a.modality)return this.getFocus();a.style=this.nextStyle(a.domain,a.style);this.update(a);this.moved=sre.Walker.move.REPEAT;return this.getFocus().clone()};sre.DummyWalker=function(a,b,c,d){sre.AbstractWalker.call(this,a,b,c,d)};goog.inherits(sre.DummyWalker,sre.AbstractWalker);sre.DummyWalker.prototype.up=function(){};sre.DummyWalker.prototype.down=function(){};sre.DummyWalker.prototype.left=function(){};sre.DummyWalker.prototype.right=function(){};sre.DummyWalker.prototype.repeat=function(){};sre.DummyWalker.prototype.depth=function(){};sre.DummyWalker.prototype.home=function(){};sre.DummyWalker.prototype.getDepth=function(){return 0}; +sre.DummyWalker.prototype.initLevels=function(){};sre.SemanticWalker=function(a,b,c,d){sre.AbstractWalker.call(this,a,b,c,d);this.levels=null;this.restoreState()};goog.inherits(sre.SemanticWalker,sre.AbstractWalker);sre.SemanticWalker.prototype.initLevels=function(){var a=new sre.Levels;a.push([this.getFocus()]);return a}; +sre.SemanticWalker.prototype.up=function(){sre.SemanticWalker.superClass_.up.call(this);var a=this.previousLevel();if(!a)return null;this.levels.pop();return this.levels.find(function(b){return b.getSemanticNodes().some(function(c){return c.id.toString()===a})})};sre.SemanticWalker.prototype.down=function(){sre.SemanticWalker.superClass_.down.call(this);var a=this.nextLevel();if(0===a.length)return null;this.levels.push(a);return a[0]}; +sre.SemanticWalker.prototype.combineContentChildren=function(a,b,c,d){switch(a){case sre.SemanticAttr.Type.RELSEQ:case sre.SemanticAttr.Type.INFIXOP:case sre.SemanticAttr.Type.MULTIREL:return this.makePairList(d,c);case sre.SemanticAttr.Type.PREFIXOP:return[this.focusFromId(d[0],c.concat(d))];case sre.SemanticAttr.Type.POSTFIXOP:return[this.focusFromId(d[0],d.concat(c))];case sre.SemanticAttr.Type.MATRIX:case sre.SemanticAttr.Type.VECTOR:case sre.SemanticAttr.Type.FENCED:return[this.focusFromId(d[0], +[c[0],d[0],c[1]])];case sre.SemanticAttr.Type.CASES:return[this.focusFromId(d[0],[c[0],d[0]])];case sre.SemanticAttr.Type.PUNCTUATED:return b===sre.SemanticAttr.Role.TEXT?d.map(goog.bind(this.singletonFocus,this)):d.length===c.length?c.map(goog.bind(this.singletonFocus,this)):this.combinePunctuations(d,c,[],[]);case sre.SemanticAttr.Type.APPL:return[this.focusFromId(d[0],[d[0],c[0]]),this.singletonFocus(d[1])];case sre.SemanticAttr.Type.ROOT:return[this.singletonFocus(d[1]),this.singletonFocus(d[0])]; +default:return d.map(goog.bind(this.singletonFocus,this))}};sre.SemanticWalker.prototype.combinePunctuations=function(a,b,c,d){if(0===a.length)return d;var e=a.shift(),f=b.shift();if(e===f)return c.push(f),this.combinePunctuations(a,b,c,d);b.unshift(f);c.push(e);if(a.length===b.length)return d.push(this.focusFromId(e,c.concat(b))),d;d.push(this.focusFromId(e,c));return this.combinePunctuations(a,b,[],d)}; +sre.SemanticWalker.prototype.makePairList=function(a,b){if(0===a.length)return[];if(1===a.length)return[this.singletonFocus(a[0])];for(var c=[this.singletonFocus(a.shift())],d=0,e=a.length;dthis.currentTable_.childNodes.length)return this.getFocus();this.row_=a;this.moved=sre.Walker.move.ROW;return this.getFocus().clone()}; +sre.TableWalker.prototype.jumpCell_=function(a,b){this.firstJump?this.virtualize(!1):(this.firstJump=this.getFocus(),this.virtualize(!0));var c=this.currentTable_.id.toString();do var d=this.levels.pop();while(-1===d.indexOf(c));this.levels.push(d);this.setFocus(this.singletonFocus(c));this.levels.push(this.nextLevel());a=this.currentTable_.childNodes[a-1];this.setFocus(this.singletonFocus(a.id.toString()));this.levels.push(this.nextLevel());return this.singletonFocus(a.childNodes[b-1].id.toString())}; +sre.TableWalker.prototype.isLegalJump_=function(a,b){var c=sre.DomUtil.querySelectorAllByAttrValue(this.getRebuilt().xml,"id",this.currentTable_.id.toString())[0];if(!c||c.hasAttribute("alternative"))return!1;a=this.currentTable_.childNodes[a-1];if(!a)return!1;c=sre.DomUtil.querySelectorAllByAttrValue(c,"id",a.id.toString())[0];return!c||c.hasAttribute("alternative")?!1:!(!a||!a.childNodes[b-1])}; +sre.TableWalker.prototype.isInTable_=function(){for(var a=this.getFocus().getSemanticPrimary();a;){if(-1!==sre.TableWalker.ELIGIBLE_TABLE_TYPES.indexOf(a.type))return this.currentTable_=a,!0;a=a.parent}return!1};sre.TableWalker.prototype.undo=function(){var a=sre.TableWalker.superClass_.undo.call(this);a===this.firstJump&&(this.firstJump=null);return a};sre.WalkerFactory={};sre.WalkerFactory.walker=function(a,b,c,d,e){return new (sre.WalkerFactory.walkerMapping_[a.toLowerCase()]||sre.WalkerFactory.walkerMapping_.dummy)(b,c,d,e)};sre.WalkerFactory.walkerMapping_={dummy:sre.DummyWalker,semantic:sre.SemanticWalker,syntax:sre.SyntaxWalker,table:sre.TableWalker};sre.ProcessorFactory={};sre.ProcessorFactory.PROCESSORS_={};sre.ProcessorFactory.get_=function(a){var b=sre.ProcessorFactory.PROCESSORS_[a.toLowerCase()];if(!b)throw new sre.Engine.Error("Unknown processor "+a);return b};sre.ProcessorFactory.process=function(a,b){return sre.ProcessorFactory.get_(a).processor(b)};sre.ProcessorFactory.print=function(a,b){a=sre.ProcessorFactory.get_(a);return sre.Engine.getInstance().pprint?a.pprint(b):a.print(b)}; +sre.ProcessorFactory.output=function(a,b){a=sre.ProcessorFactory.get_(a);b=a.processor(b);return sre.Engine.getInstance().pprint?a.pprint(b):a.print(b)};sre.ProcessorFactory.keypress=function(a,b){a=sre.ProcessorFactory.get_(a);b=a.key?a.key(b):b;b=a.processor(b);return sre.Engine.getInstance().pprint?a.pprint(b):a.print(b)}; +sre.Processor=function(a,b){this.name=a;this.processor=b.processor;this.print=b.print||sre.Processor.stringify_;this.pprint=b.pprint||this.print;sre.ProcessorFactory.PROCESSORS_[this.name]=this};sre.KeyProcessor=function(a,b){sre.Processor.call(this,a,b);this.key=b.key||sre.KeyProcessor.getKey_};goog.inherits(sre.KeyProcessor,sre.Processor);sre.KeyProcessor.getKey_=function(a){return"string"===typeof a?sre.EventUtil.KeyCode[a.toUpperCase()]:a}; +sre.Processor.LocalState_={walker:null,speechGenerator:null,highlighter:null};sre.Processor.stringify_=function(a){return a?a.toString():a};new sre.Processor("semantic",{processor:function(a){a=sre.DomUtil.parseInput(a);return sre.Semantic.xmlTree(a)},pprint:function(a){return sre.DomUtil.formatXml(a.toString())}}); +new sre.Processor("speech",{processor:function(a){a=sre.DomUtil.parseInput(a);a=sre.Semantic.xmlTree(a);a=sre.SpeechGeneratorUtil.computeSpeech(a);var b=sre.AuralRendering.getInstance();return b.finalize(b.markup(a))},pprint:function(a){a=a.toString();return sre.AuralRendering.ofType(sre.XmlRenderer)?sre.DomUtil.formatXml(a):a}}); +new sre.Processor("json",{processor:function(a){a=sre.DomUtil.parseInput(a,sre.Engine.Error);return sre.Semantic.getTree(a).toJson()},print:function(a){return JSON.stringify(a)},pprint:function(a){return JSON.stringify(a,null,2)}});new sre.Processor("description",{processor:function(a){a=sre.DomUtil.parseInput(a);a=sre.Semantic.xmlTree(a);return sre.SpeechGeneratorUtil.computeSpeech(a)},print:function(a){return JSON.stringify(a)},pprint:function(a){return JSON.stringify(a,null,2)}}); +new sre.Processor("enriched",{processor:function(a){a=sre.Enrich.semanticMathmlSync(a);var b=sre.WalkerUtil.getSemanticRoot(a);switch(sre.Engine.getInstance().speech){case sre.Engine.Speech.SHALLOW:var c=sre.SpeechGeneratorFactory.generator("Adhoc");c.getSpeech(b,a);break;case sre.Engine.Speech.DEEP:c=sre.SpeechGeneratorFactory.generator("Tree"),c.getSpeech(b,a)}return a},pprint:function(a){return sre.DomUtil.formatXml(a.toString())}}); +new sre.Processor("walker",{processor:function(a){var b=sre.SpeechGeneratorFactory.generator("Node");sre.Processor.LocalState_.speechGenerator=b;sre.Processor.LocalState_.highlighter=sre.HighlighterFactory.highlighter({color:"black"},{color:"white"},{renderer:"NativeMML"});a=sre.ProcessorFactory.process("enriched",a);var c=sre.ProcessorFactory.print("enriched",a);sre.Processor.LocalState_.walker=sre.WalkerFactory.walker(sre.Engine.getInstance().walker,a,b,sre.Processor.LocalState_.highlighter,c); +return sre.Processor.LocalState_.walker},print:function(a){return sre.Processor.LocalState_.walker.speech()}});new sre.KeyProcessor("move",{processor:function(a){return sre.Processor.LocalState_.walker?!1===sre.Processor.LocalState_.walker.move(a)?sre.AuralRendering.getInstance().error(a):sre.Processor.LocalState_.walker.speech():null}});sre.System=function(){this.version=sre.Variables.VERSION};goog.addSingletonGetter(sre.System); +sre.System.prototype.setupEngine=function(a){var b=sre.Engine.getInstance(),c=function(d){b[d]=a[d]||b[d]};c("mode");sre.System.prototype.configBlocks_(a);sre.Engine.BINARY_FEATURES.forEach(function(d){"undefined"!==typeof a[d]&&(b[d]=!!a[d])});sre.Engine.STRING_FEATURES.forEach(c);a.json&&(sre.SystemExternal.jsonPath=sre.BaseUtil.makePath(a.json));a.xpath&&(sre.SystemExternal.WGXpath=a.xpath);b.setupBrowsers();b.ruleSets=a.rules?a.rules:sre.SpeechRuleStores.availableSets();sre.SpeechRuleEngine.getInstance().parameterize(b.ruleSets); +b.setDynamicCstr();sre.L10n.setLocale()};sre.System.prototype.configBlocks_=function(a){if(!sre.Engine.getInstance().config&&sre.Engine.getInstance().mode===sre.Engine.Mode.HTTP){sre.Engine.getInstance().config=!0;for(var b=document.documentElement.querySelectorAll('script[type="text/x-sre-config"]'),c=0,d=b.length;c=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},i=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.XMLNode=e.TextNode=e.AbstractMmlEmptyNode=e.AbstractMmlBaseNode=e.AbstractMmlLayoutNode=e.AbstractMmlTokenNode=e.AbstractMmlNode=e.indentAttributes=e.TEXCLASSNAMES=e.TEXCLASS=void 0;var a=Q(24),s=Q(58);e.TEXCLASS={ORD:0,OP:1,BIN:2,REL:3,OPEN:4,CLOSE:5,PUNCT:6,INNER:7,VCENTER:8,NONE:-1},e.TEXCLASSNAMES=["ORD","OP","BIN","REL","OPEN","CLOSE","PUNCT","INNER","VCENTER"];var l=["","thinmathspace","mediummathspace","thickmathspace"],c=[[0,-1,2,3,0,0,0,1],[-1,-1,0,3,0,0,0,1],[2,2,0,0,2,0,0,2],[3,3,0,0,3,0,0,3],[0,0,0,0,0,0,0,0],[0,-1,2,3,0,0,0,1],[1,1,0,1,1,1,1,1],[1,-1,2,3,1,0,1,1]];e.indentAttributes=["indentalign","indentalignfirst","indentshift","indentshiftfirst"];var u=function(t){function Q(e,Q,r){void 0===Q&&(Q={}),void 0===r&&(r=[]);var T=t.call(this,e)||this;return T.texClass=null,T.prevClass=null,T.prevLevel=null,T.arity<0&&(T.childNodes=[e.create("inferredMrow")],T.childNodes[0].parent=T),T.setChildren(r),T.attributes=new a.Attributes(e.getNodeClass(T.kind).defaults,e.getNodeClass("math").defaults),T.attributes.setList(Q),T}return T(Q,t),Object.defineProperty(Q.prototype,"isToken",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(Q.prototype,"isEmbellished",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(Q.prototype,"isSpacelike",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(Q.prototype,"linebreakContainer",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(Q.prototype,"hasNewLine",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(Q.prototype,"arity",{get:function(){return 1/0},enumerable:!1,configurable:!0}),Object.defineProperty(Q.prototype,"isInferred",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(Q.prototype,"Parent",{get:function(){for(var t=this.parent;t&&t.notParent;)t=t.Parent;return t},enumerable:!1,configurable:!0}),Object.defineProperty(Q.prototype,"notParent",{get:function(){return!1},enumerable:!1,configurable:!0}),Q.prototype.setChildren=function(e){return this.arity<0?this.childNodes[0].setChildren(e):t.prototype.setChildren.call(this,e)},Q.prototype.appendChild=function(e){return this.arity<0?(this.childNodes[0].appendChild(e),e):t.prototype.appendChild.call(this,e)},Q.prototype.replaceChild=function(e,Q){return this.arity<0?(this.childNodes[0].replaceChild(e,Q),e):t.prototype.replaceChild.call(this,e,Q)},Q.prototype.core=function(){return this},Q.prototype.coreMO=function(){return this},Q.prototype.coreIndex=function(){return 0},Q.prototype.childPosition=function(){for(var t,e,Q=this,r=Q.parent;r&&r.notParent;)Q=r,r=r.parent;if(r){var T=0;try{for(var n=o(r.childNodes),i=n.next();!i.done;i=n.next()){if(i.value===Q)return T;T++}}catch(e){t={error:e}}finally{try{i&&!i.done&&(e=n.return)&&e.call(n)}finally{if(t)throw t.error}}}return null},Q.prototype.setTeXclass=function(t){return this.getPrevClass(t),null!=this.texClass?this:t},Q.prototype.updateTeXclass=function(t){t&&(this.prevClass=t.prevClass,this.prevLevel=t.prevLevel,t.prevClass=t.prevLevel=null,this.texClass=t.texClass)},Q.prototype.getPrevClass=function(t){t&&(this.prevClass=t.texClass,this.prevLevel=t.attributes.get("scriptlevel"))},Q.prototype.texSpacing=function(){var t=null!=this.prevClass?this.prevClass:e.TEXCLASS.NONE,Q=this.texClass||e.TEXCLASS.ORD;if(t===e.TEXCLASS.NONE||Q===e.TEXCLASS.NONE)return"";t===e.TEXCLASS.VCENTER&&(t=e.TEXCLASS.ORD),Q===e.TEXCLASS.VCENTER&&(Q=e.TEXCLASS.ORD);var r=c[t][Q];return(this.prevLevel>0||this.attributes.get("scriptlevel")>0)&&r>=0?"":l[Math.abs(r)]},Q.prototype.hasSpacingAttributes=function(){return this.isEmbellished&&this.coreMO().hasSpacingAttributes()},Q.prototype.setInheritedAttributes=function(t,e,r,T){var n,a;void 0===t&&(t={}),void 0===e&&(e=!1),void 0===r&&(r=0),void 0===T&&(T=!1);var s=this.attributes.getAllDefaults();try{for(var l=o(Object.keys(t)),c=l.next();!c.done;c=l.next()){var u=c.value;if(s.hasOwnProperty(u)||Q.alwaysInherit.hasOwnProperty(u)){var p=i(t[u],2),h=p[0],f=p[1];((Q.noInherit[h]||{})[this.kind]||{})[u]||this.attributes.setInherited(u,f)}}}catch(t){n={error:t}}finally{try{c&&!c.done&&(a=l.return)&&a.call(l)}finally{if(n)throw n.error}}void 0===this.attributes.getExplicit("displaystyle")&&this.attributes.setInherited("displaystyle",e),void 0===this.attributes.getExplicit("scriptlevel")&&this.attributes.setInherited("scriptlevel",r),T&&this.setProperty("texprimestyle",T);var d=this.arity;if(d>=0&&d!==1/0&&(1===d&&0===this.childNodes.length||1!==d&&this.childNodes.length!==d))if(d=0&&e!==1/0&&(1===e&&0===this.childNodes.length||1!==e&&this.childNodes.length!==e)&&this.mError('Wrong number of children for "'+this.kind+'" node',t,!0),this.verifyChildren(t)}},Q.prototype.verifyAttributes=function(t){var e,Q;if(t.checkAttributes){var r=this.attributes,T=[];try{for(var n=o(r.getExplicitNames()),i=n.next();!i.done;i=n.next()){var a=i.value;"data-"===a.substr(0,5)||void 0!==r.getDefault(a)||a.match(/^(?:class|style|id|(?:xlink:)?href)$/)||T.push(a)}}catch(t){e={error:t}}finally{try{i&&!i.done&&(Q=n.return)&&Q.call(n)}finally{if(e)throw e.error}}T.length&&this.mError("Unknown attributes for "+this.kind+" node: "+T.join(", "),t)}},Q.prototype.verifyChildren=function(t){var e,Q;try{for(var r=o(this.childNodes),T=r.next();!T.done;T=r.next()){T.value.verifyTree(t)}}catch(t){e={error:t}}finally{try{T&&!T.done&&(Q=r.return)&&Q.call(r)}finally{if(e)throw e.error}}},Q.prototype.mError=function(t,e,Q){if(void 0===Q&&(Q=!1),this.parent&&this.parent.isKind("merror"))return null;var r=this.factory.create("merror");if(e.fullErrors||Q){var T=this.factory.create("mtext"),n=this.factory.create("text");n.setText(e.fullErrors?t:this.kind),T.appendChild(n),r.appendChild(T),this.parent.replaceChild(r,this)}else this.parent.replaceChild(r,this),r.appendChild(this);return r},Q.defaults={mathbackground:a.INHERIT,mathcolor:a.INHERIT,mathsize:a.INHERIT,dir:a.INHERIT},Q.noInherit={mstyle:{mpadded:{width:!0,height:!0,depth:!0,lspace:!0,voffset:!0},mtable:{width:!0,height:!0,depth:!0,align:!0}},maligngroup:{mrow:{groupalign:!0},mtable:{groupalign:!0}}},Q.alwaysInherit={scriptminsize:!0,scriptsizemultiplier:!0},Q.verifyDefaults={checkArity:!0,checkAttributes:!1,fullErrors:!1,fixMmultiscripts:!0,fixMtables:!0},Q}(s.AbstractNode);e.AbstractMmlNode=u;var p=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),Object.defineProperty(e.prototype,"isToken",{get:function(){return!0},enumerable:!1,configurable:!0}),e.prototype.getText=function(){var t,e,Q="";try{for(var r=o(this.childNodes),T=r.next();!T.done;T=r.next()){var n=T.value;n instanceof L&&(Q+=n.getText())}}catch(e){t={error:e}}finally{try{T&&!T.done&&(e=r.return)&&e.call(r)}finally{if(t)throw t.error}}return Q},e.prototype.setChildInheritedAttributes=function(t,e,Q,r){var T,n;try{for(var i=o(this.childNodes),a=i.next();!a.done;a=i.next()){var s=a.value;s instanceof u&&s.setInheritedAttributes(t,e,Q,r)}}catch(t){T={error:t}}finally{try{a&&!a.done&&(n=i.return)&&n.call(i)}finally{if(T)throw T.error}}},e.prototype.walkTree=function(t,e){var Q,r;t(this,e);try{for(var T=o(this.childNodes),n=T.next();!n.done;n=T.next()){var i=n.value;i instanceof u&&i.walkTree(t,e)}}catch(t){Q={error:t}}finally{try{n&&!n.done&&(r=T.return)&&r.call(T)}finally{if(Q)throw Q.error}}return e},e.defaults=n(n({},u.defaults),{mathvariant:"normal",mathsize:a.INHERIT}),e}(u);e.AbstractMmlTokenNode=p;var h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),Object.defineProperty(e.prototype,"isSpacelike",{get:function(){return this.childNodes[0].isSpacelike},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isEmbellished",{get:function(){return this.childNodes[0].isEmbellished},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"arity",{get:function(){return-1},enumerable:!1,configurable:!0}),e.prototype.core=function(){return this.childNodes[0]},e.prototype.coreMO=function(){return this.childNodes[0].coreMO()},e.prototype.setTeXclass=function(t){return t=this.childNodes[0].setTeXclass(t),this.updateTeXclass(this.childNodes[0]),t},e.defaults=u.defaults,e}(u);e.AbstractMmlLayoutNode=h;var f=function(t){function Q(){return null!==t&&t.apply(this,arguments)||this}return T(Q,t),Object.defineProperty(Q.prototype,"isEmbellished",{get:function(){return this.childNodes[0].isEmbellished},enumerable:!1,configurable:!0}),Q.prototype.core=function(){return this.childNodes[0]},Q.prototype.coreMO=function(){return this.childNodes[0].coreMO()},Q.prototype.setTeXclass=function(t){var Q,r;this.getPrevClass(t),this.texClass=e.TEXCLASS.ORD;var T=this.childNodes[0];T?this.isEmbellished||T.isKind("mi")?(t=T.setTeXclass(t),this.updateTeXclass(this.core())):(T.setTeXclass(null),t=this):t=this;try{for(var n=o(this.childNodes.slice(1)),i=n.next();!i.done;i=n.next()){var a=i.value;a&&a.setTeXclass(null)}}catch(t){Q={error:t}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(Q)throw Q.error}}return t},Q.defaults=u.defaults,Q}(u);e.AbstractMmlBaseNode=f;var d=function(t){function Q(){return null!==t&&t.apply(this,arguments)||this}return T(Q,t),Object.defineProperty(Q.prototype,"isToken",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(Q.prototype,"isEmbellished",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(Q.prototype,"isSpacelike",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(Q.prototype,"linebreakContainer",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(Q.prototype,"hasNewLine",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(Q.prototype,"arity",{get:function(){return 0},enumerable:!1,configurable:!0}),Object.defineProperty(Q.prototype,"isInferred",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(Q.prototype,"notParent",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(Q.prototype,"Parent",{get:function(){return this.parent},enumerable:!1,configurable:!0}),Object.defineProperty(Q.prototype,"texClass",{get:function(){return e.TEXCLASS.NONE},enumerable:!1,configurable:!0}),Object.defineProperty(Q.prototype,"prevClass",{get:function(){return e.TEXCLASS.NONE},enumerable:!1,configurable:!0}),Object.defineProperty(Q.prototype,"prevLevel",{get:function(){return 0},enumerable:!1,configurable:!0}),Q.prototype.hasSpacingAttributes=function(){return!1},Object.defineProperty(Q.prototype,"attributes",{get:function(){return null},enumerable:!1,configurable:!0}),Q.prototype.core=function(){return this},Q.prototype.coreMO=function(){return this},Q.prototype.coreIndex=function(){return 0},Q.prototype.childPosition=function(){return 0},Q.prototype.setTeXclass=function(t){return t},Q.prototype.texSpacing=function(){return""},Q.prototype.setInheritedAttributes=function(t,e,Q,r){},Q.prototype.inheritAttributesFrom=function(t){},Q.prototype.verifyTree=function(t){},Q.prototype.mError=function(t,e,Q){void 0===Q&&(Q=!1)},Q}(s.AbstractEmptyNode);e.AbstractMmlEmptyNode=d;var L=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.text="",e}return T(e,t),Object.defineProperty(e.prototype,"kind",{get:function(){return"text"},enumerable:!1,configurable:!0}),e.prototype.getText=function(){return this.text},e.prototype.setText=function(t){return this.text=t,this},e.prototype.toString=function(){return this.text},e}(d);e.TextNode=L;var H=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.xml=null,e.adaptor=null,e}return T(e,t),Object.defineProperty(e.prototype,"kind",{get:function(){return"XML"},enumerable:!1,configurable:!0}),e.prototype.getXML=function(){return this.xml},e.prototype.setXML=function(t,e){return void 0===e&&(e=null),this.xml=t,this.adaptor=e,this},e.prototype.getSerializedXML=function(){return this.adaptor.outerHTML(this.xml)},e.prototype.toString=function(){return"XML data"},e}(d);e.XMLNode=H},function(t,e,Q){"use strict";(function(t){var Q=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};function r(t){return"object"==typeof t&&null!==t}function T(t,e){var n,o;try{for(var i=Q(Object.keys(e)),a=i.next();!a.done;a=i.next()){var s=a.value;"__esModule"!==s&&(!r(t[s])||!r(e[s])||e[s]instanceof Promise?null!==e[s]&&void 0!==e[s]&&(t[s]=e[s]):T(t[s],e[s]))}}catch(t){n={error:t}}finally{try{a&&!a.done&&(o=i.return)&&o.call(i)}finally{if(n)throw n.error}}return t}Object.defineProperty(e,"__esModule",{value:!0}),e.MathJax=e.combineWithMathJax=e.combineDefaults=e.combineConfig=e.isObject=void 0,e.isObject=r,e.combineConfig=T,e.combineDefaults=function t(e,T,n){var o,i;e[T]||(e[T]={}),e=e[T];try{for(var a=Q(Object.keys(n)),s=a.next();!s.done;s=a.next()){var l=s.value;r(e[l])&&r(n[l])?t(e,l,n[l]):null==e[l]&&null!=n[l]&&(e[l]=n[l])}}catch(t){o={error:t}}finally{try{s&&!s.done&&(i=a.return)&&i.call(a)}finally{if(o)throw o.error}}return e},e.combineWithMathJax=function(t){return T(e.MathJax,t)},void 0===t.MathJax&&(t.MathJax={}),t.MathJax.version||(t.MathJax={version:"3.1.2",_:{},config:t.MathJax}),e.MathJax=t.MathJax}).call(this,Q(271))},function(t,e,Q){"use strict";var r=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},T=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.ParserConfiguration=e.ConfigurationHandler=e.Configuration=void 0;var n,o=Q(7),i=Q(33),a=Q(30),s=Q(21),l=Q(20),c=function(){function t(t,e,Q,r,T,n,o,i,a,s,l,c){void 0===e&&(e={}),void 0===Q&&(Q={}),void 0===r&&(r={}),void 0===T&&(T={}),void 0===n&&(n={}),void 0===o&&(o={}),void 0===i&&(i=[]),void 0===a&&(a=[]),void 0===s&&(s=null),void 0===l&&(l=null),this.name=t,this.handler=e,this.fallback=Q,this.items=r,this.tags=T,this.options=n,this.nodes=o,this.preprocessors=i,this.postprocessors=a,this.initMethod=s,this.configMethod=l,this.priority=c,this.handler=Object.assign({character:[],delimiter:[],macro:[],environment:[]},e)}return t.makeProcessor=function(t,e){return Array.isArray(t)?t:[t,e]},t._create=function(e,Q){var r=this;void 0===Q&&(Q={});var T=Q.priority||s.PrioritizedList.DEFAULTPRIORITY,n=Q.init?this.makeProcessor(Q.init,T):null,o=Q.config?this.makeProcessor(Q.config,T):null,i=(Q.preprocessors||[]).map((function(t){return r.makeProcessor(t,T)})),a=(Q.postprocessors||[]).map((function(t){return r.makeProcessor(t,T)}));return new t(e,Q.handler||{},Q.fallback||{},Q.items||{},Q.tags||{},Q.options||{},Q.nodes||{},i,a,n,o,T)},t.create=function(e,Q){void 0===Q&&(Q={});var r=t._create(e,Q);return n.set(e,r),r},t.local=function(e){return void 0===e&&(e={}),t._create("",e)},Object.defineProperty(t.prototype,"init",{get:function(){return this.initMethod?this.initMethod[0]:null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"config",{get:function(){return this.configMethod?this.configMethod[0]:null},enumerable:!1,configurable:!0}),t}();e.Configuration=c,function(t){var e=new Map;t.set=function(t,Q){e.set(t,Q)},t.get=function(t){return e.get(t)},t.keys=function(){return e.keys()}}(n=e.ConfigurationHandler||(e.ConfigurationHandler={}));var u=function(){function t(t){var e,Q,T,n;this.initMethod=new a.FunctionList,this.configMethod=new a.FunctionList,this.configurations=new s.PrioritizedList,this.handlers=new i.SubHandlers,this.items={},this.tags={},this.options={},this.nodes={};try{for(var o=r(t.slice().reverse()),l=o.next();!l.done;l=o.next()){var c=l.value;this.addPackage(c)}}catch(t){e={error:t}}finally{try{l&&!l.done&&(Q=o.return)&&Q.call(o)}finally{if(e)throw e.error}}try{for(var u=r(this.configurations),p=u.next();!p.done;p=u.next()){var h=p.value,f=h.item,d=h.priority;this.append(f,d)}}catch(t){T={error:t}}finally{try{p&&!p.done&&(n=u.return)&&n.call(u)}finally{if(T)throw T.error}}}return t.prototype.init=function(){this.initMethod.execute(this)},t.prototype.config=function(t){var e,Q;this.configMethod.execute(this,t);try{for(var T=r(this.configurations),n=T.next();!n.done;n=T.next()){var o=n.value;this.addFilters(t,o.item)}}catch(t){e={error:t}}finally{try{n&&!n.done&&(Q=T.return)&&Q.call(T)}finally{if(e)throw e.error}}},t.prototype.addPackage=function(t){var e="string"==typeof t?t:t[0],Q=n.get(e);Q&&this.configurations.add(Q,"string"==typeof t?Q.priority:t[1])},t.prototype.add=function(t,e,Q){var T,n;void 0===Q&&(Q={}),this.append(t),this.configurations.add(t,t.priority),this.init();var i=e.parseOptions;i.nodeFactory.setCreators(t.nodes);try{for(var a=r(Object.keys(t.items)),s=a.next();!s.done;s=a.next()){var c=s.value;i.itemFactory.setNodeClass(c,t.items[c])}}catch(t){T={error:t}}finally{try{s&&!s.done&&(n=a.return)&&n.call(a)}finally{if(T)throw T.error}}l.TagsFactory.addTags(t.tags),o.defaultOptions(i.options,t.options),o.userOptions(i.options,Q),this.addFilters(e,t),t.config&&t.config(this,e)},t.prototype.append=function(t,e){e=e||t.priority,t.initMethod&&this.initMethod.add(t.initMethod[0],t.initMethod[1]),t.configMethod&&this.configMethod.add(t.configMethod[0],t.configMethod[1]),this.handlers.add(t.handler,t.fallback,e),Object.assign(this.items,t.items),Object.assign(this.tags,t.tags),o.defaultOptions(this.options,t.options),Object.assign(this.nodes,t.nodes)},t.prototype.addFilters=function(t,e){var Q,n,o,i;try{for(var a=r(e.preprocessors),s=a.next();!s.done;s=a.next()){var l=T(s.value,2),c=l[0],u=l[1];t.preFilters.add(c,u)}}catch(t){Q={error:t}}finally{try{s&&!s.done&&(n=a.return)&&n.call(a)}finally{if(Q)throw Q.error}}try{for(var p=r(e.postprocessors),h=p.next();!h.done;h=p.next()){var f=T(h.value,2),d=f[0];u=f[1];t.postFilters.add(d,u)}}catch(t){o={error:t}}finally{try{h&&!h.done&&(i=p.return)&&i.call(p)}finally{if(o)throw o.error}}},t}();e.ParserConfiguration=u},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},o=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},i=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.SVGWrapper=void 0;var i=Q(168),a=Q(50),s=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.element=null,e}return T(e,t),e.prototype.toSVG=function(t){this.addChildren(this.standardSVGnode(t))},e.prototype.addChildren=function(t){var e,Q,r=0;try{for(var T=n(this.childNodes),o=T.next();!o.done;o=T.next()){var i=o.value;i.toSVG(t),i.element&&i.place(r+i.bbox.L*i.bbox.rscale,0),r+=(i.bbox.L+i.bbox.w+i.bbox.R)*i.bbox.rscale}}catch(t){e={error:t}}finally{try{o&&!o.done&&(Q=T.return)&&Q.call(T)}finally{if(e)throw e.error}}},e.prototype.standardSVGnode=function(t){var e=this.createSVGnode(t);return this.handleStyles(),this.handleScale(),this.handleColor(),this.handleAttributes(),e},e.prototype.createSVGnode=function(t){var e=this.node.attributes.get("href");if(e){t=this.adaptor.append(t,this.svg("a",{href:e}));var Q=this.getBBox(),r=Q.h,T=Q.d,n=Q.w;this.adaptor.append(t,this.svg("rect",{"data-hitbox":!0,fill:"none",stroke:"none","pointer-events":"all",width:this.fixed(n),height:this.fixed(r+T),y:this.fixed(-T)}))}return this.element=this.adaptor.append(t,this.svg("g",{"data-mml-node":this.node.kind})),this.element},e.prototype.handleStyles=function(){if(this.styles){var t=this.styles.cssText;t&&this.adaptor.setAttribute(this.element,"style",t)}},e.prototype.handleScale=function(){if(1!==this.bbox.rscale){var t="scale("+this.fixed(this.bbox.rscale/1e3,3)+")";this.adaptor.setAttribute(this.element,"transform",t)}},e.prototype.handleColor=function(){var t=this.adaptor,e=this.node.attributes,Q=e.getExplicit("mathcolor"),r=e.getExplicit("color"),T=e.getExplicit("mathbackground"),n=e.getExplicit("background");if((Q||r)&&(t.setAttribute(this.element,"fill",Q||r),t.setAttribute(this.element,"stroke",Q||r)),T||n){var o=this.getBBox(),i=o.h,a=o.d,s=o.w,l=this.svg("rect",{fill:T||n,x:0,y:this.fixed(-a),width:this.fixed(s),height:this.fixed(i+a),"data-bgcolor":!0}),c=t.firstChild(this.element);c?t.insert(l,c):t.append(this.element,l)}},e.prototype.handleAttributes=function(){var t,Q,r,T,o=this.node.attributes,i=o.getAllDefaults(),a=e.skipAttributes;try{for(var s=n(o.getExplicitNames()),l=s.next();!l.done;l=s.next()){var c=l.value;!1!==a[c]&&(c in i||a[c]||this.adaptor.hasAttribute(this.element,c))||this.adaptor.setAttribute(this.element,c,o.getExplicit(c))}}catch(e){t={error:e}}finally{try{l&&!l.done&&(Q=s.return)&&Q.call(s)}finally{if(t)throw t.error}}if(o.get("class")){var u=o.get("class").trim().split(/ +/);try{for(var p=n(u),h=p.next();!h.done;h=p.next()){var f=h.value;this.adaptor.addClass(this.element,f)}}catch(t){r={error:t}}finally{try{h&&!h.done&&(T=p.return)&&T.call(p)}finally{if(r)throw r.error}}}},e.prototype.place=function(t,e,Q){if(void 0===Q&&(Q=null),t||e){Q||(Q=this.element);var r=this.adaptor.getAttribute(Q,"transform")||"";r="translate("+this.fixed(t)+", "+this.fixed(e)+")"+(r?" "+r:""),this.adaptor.setAttribute(Q,"transform",r)}},e.prototype.placeChar=function(t,e,Q,r,T){var i,a;void 0===T&&(T=null),null===T&&(T=this.variant);var s=t.toString(16).toUpperCase(),l=o(this.getVariantChar(T,t),4),c=l[2],u=l[3];if("p"in u){var p=u.p?"M"+u.p+"Z":"";this.place(e,Q,this.adaptor.append(r,this.charNode(T,s,p)))}else if("c"in u){var h=this.adaptor.append(r,this.svg("g",{"data-c":s}));this.place(e,Q,h),e=0;try{for(var f=n(this.unicodeChars(u.c,T)),d=f.next();!d.done;d=f.next()){var L=d.value;e+=this.placeChar(L,e,Q,h,T)}}catch(t){i={error:t}}finally{try{d&&!d.done&&(a=f.return)&&a.call(f)}finally{if(i)throw i.error}}}else if(u.unknown){var H=String.fromCodePoint(t),m=this.adaptor.append(r,this.jax.unknownText(H,T));return this.place(e,Q,m),this.jax.measureTextNodeWithCache(m,H,T).w}return c},e.prototype.charNode=function(t,e,Q){return"none"!==this.jax.options.fontCache?this.useNode(t,e,Q):this.pathNode(e,Q)},e.prototype.pathNode=function(t,e){return this.svg("path",{"data-c":t,d:e})},e.prototype.useNode=function(t,e,Q){var r=this.svg("use"),T="#"+this.jax.fontCache.cachePath(t,e,Q);return this.adaptor.setAttribute(r,"href",T,a.XLINKNS),r},e.prototype.drawBBox=function(){var t=this.getBBox(),e=t.w,Q=t.h,r=t.d,T=this.svg("g",{style:{opacity:.25}},[this.svg("rect",{fill:"red",height:this.fixed(Q),width:this.fixed(e)}),this.svg("rect",{fill:"green",height:this.fixed(r),width:this.fixed(e),y:this.fixed(-r)})]),n=this.element||this.parent.element;this.adaptor.append(n,T)},e.prototype.html=function(t,e,Q){return void 0===e&&(e={}),void 0===Q&&(Q=[]),this.jax.html(t,e,Q)},e.prototype.svg=function(t,e,Q){return void 0===e&&(e={}),void 0===Q&&(Q=[]),this.jax.svg(t,e,Q)},e.prototype.text=function(t){return this.jax.text(t)},e.prototype.fixed=function(t,e){return void 0===e&&(e=1),this.jax.fixed(1e3*t,e)},e.kind="unknown",e}(i.CommonWrapper);e.SVGWrapper=s},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(e,Q){for(var r=[],T=2;T="0"&&o<="9")r[T]=Q[parseInt(r[T],10)-1],"number"==typeof r[T]&&(r[T]=r[T].toString());else if("{"===o){if((o=r[T].substr(1))>="0"&&o<="9")r[T]=Q[parseInt(r[T].substr(1,r[T].length-2),10)-1],"number"==typeof r[T]&&(r[T]=r[T].toString());else r[T].match(/^\{([a-z]+):%(\d+)\|(.*)\}$/)&&(r[T]="%"+r[T])}null==r[T]&&(r[T]="???")}return r.join("")},t.pattern=/%(\d+|\{\d+\}|\{[a-z]+:\%\d+(?:\|(?:%\{\d+\}|%.|[^\}])*)+\}|.)/g,t}();e.default=r},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__createBinding||(Object.create?function(t,e,Q,r){void 0===r&&(r=Q),Object.defineProperty(t,r,{enumerable:!0,get:function(){return e[Q]}})}:function(t,e,Q,r){void 0===r&&(r=Q),t[r]=e[Q]}),o=this&&this.__exportStar||function(t,e){for(var Q in t)"default"===Q||e.hasOwnProperty(Q)||n(e,t,Q)},i=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.AddPaths=e.SVGFontData=void 0;var a=Q(28);o(Q(28),e);var s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.charOptions=function(e,Q){return t.charOptions.call(this,e,Q)},e}(a.FontData);e.SVGFontData=s,e.AddPaths=function(t,e,Q){var r,T,n,o;try{for(var a=i(Object.keys(e)),l=a.next();!l.done;l=a.next()){var c=l.value,u=parseInt(c);s.charOptions(t,u).p=e[u]}}catch(t){r={error:t}}finally{try{l&&!l.done&&(T=a.return)&&T.call(a)}finally{if(r)throw r.error}}try{for(var p=i(Object.keys(Q)),h=p.next();!h.done;h=p.next()){c=h.value,u=parseInt(c);s.charOptions(t,u).c=Q[u]}}catch(t){n={error:t}}finally{try{h&&!h.done&&(o=p.return)&&o.call(p)}finally{if(n)throw n.error}}return t}},function(t,e,Q){"use strict";var r=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},T=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},n=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},T=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},n=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},T=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0});var n,o=Q(0),i=Q(8),a=Q(12),s=Q(5),l=Q(19);Q(272),function(t){var e={em:function(t){return t},ex:function(t){return.43*t},pt:function(t){return t/10},pc:function(t){return 1.2*t},px:function(t){return 7.2*t/72},in:function(t){return 7.2*t},cm:function(t){return 7.2*t/2.54},mm:function(t){return 7.2*t/25.4},mu:function(t){return t/18}},Q="([-+]?([.,]\\d+|\\d+([.,]\\d*)?))",n="(pt|em|ex|mu|px|mm|cm|in|pc)",c=RegExp("^\\s*"+Q+"\\s*"+n+"\\s*$"),u=RegExp("^\\s*"+Q+"\\s*"+n+" ?");function p(t,Q){void 0===Q&&(Q=!1);var T=t.match(Q?u:c);return T?function(t){var Q=r(t,3),T=Q[0],n=Q[1],o=Q[2];if("mu"!==n)return[T,n,o];return[h(e[n](parseFloat(T||"1"))).slice(0,-2),"em",o]}([T[1].replace(/,/,"."),T[4],T[0].length]):[null,null,0]}function h(t){return Math.abs(t)<6e-4?"0em":t.toFixed(3).replace(/\.?0+$/,"")+"em"}function f(t,e,Q){"{"!==e&&"}"!==e||(e="\\"+e);var r="{\\bigg"+Q+" "+e+"}",T="{\\big"+Q+" "+e+"}";return new a.default("\\mathchoice"+r+T+T+T,{},t).mml()}function d(t,e,Q){e=e.replace(/^\s+/,l.entities.nbsp).replace(/\s+$/,l.entities.nbsp);var r=t.create("text",e);return t.create("node","mtext",[],Q,r)}function L(t,e,Q){if(Q.match(/^[a-z]/i)&&e.match(/(^|[^\\])(\\\\)*\\[a-z]+$/i)&&(e+=" "),e.length+Q.length>t.configuration.options.maxBuffer)throw new s.default("MaxBufferSize","MathJax internal buffer size exceeded; is there a recursive macro call?");return e+Q}function H(t,e){for(;e>0;)t=t.trim().slice(1,-1),e--;return t.trim()}function m(t,e){for(var Q=t.length,r=0,T="",n=0,o=0,i=!0,a=!1;nr&&(o=r)),r++;break;case"}":r&&r--,(i||a)&&(o--,a=!0),i=!1;break;default:if(!r&&-1!==e.indexOf(l))return[a?"true":H(T,o),l,t.slice(n)];i=!1,a=!1}T+=l}if(r)throw new s.default("ExtraOpenMissingClose","Extra open brace or missing close brace");return[a?"true":H(T,o),"",t.slice(n)]}t.matchDimen=p,t.dimen2em=function(t){var Q=r(p(t),2),T=Q[0],n=Q[1],o=parseFloat(T||"1"),i=e[n];return i?i(o):0},t.Em=h,t.fenced=function(t,e,Q,r,T){void 0===T&&(T="");var n,s=t.nodeFactory,l=s.create("node","mrow",[],{open:e,close:r,texClass:o.TEXCLASS.INNER});if(T)n=new a.default("\\"+T+"l"+e,t.parser.stack.env,t).mml();else{var c=s.create("text",e);n=s.create("node","mo",[],{fence:!0,stretchy:!0,symmetric:!0,texClass:o.TEXCLASS.OPEN},c)}if(i.default.appendChildren(l,[n]),i.default.isType(Q,"mrow")&&i.default.isInferred(Q)?i.default.appendChildren(l,i.default.getChildren(Q)):i.default.appendChildren(l,[Q]),T)n=new a.default("\\"+T+"r"+r,t.parser.stack.env,t).mml();else{var u=s.create("text",r);n=s.create("node","mo",[],{fence:!0,stretchy:!0,symmetric:!0,texClass:o.TEXCLASS.CLOSE},u)}return i.default.appendChildren(l,[n]),l},t.fixedFence=function(t,e,Q,r){var T=t.nodeFactory.create("node","mrow",[],{open:e,close:r,texClass:o.TEXCLASS.ORD});return e&&i.default.appendChildren(T,[f(t,e,"l")]),i.default.isType(Q,"mrow")?i.default.appendChildren(T,i.default.getChildren(Q)):i.default.appendChildren(T,[Q]),r&&i.default.appendChildren(T,[f(t,r,"r")]),T},t.mathPalette=f,t.fixInitialMO=function(t,e){for(var Q=0,r=e.length;Q1&&(l=[t.create("node","mrow",l)]),l},t.internalText=d,t.trimSpaces=function(t){if("string"!=typeof t)return t;var e=t.trim();return e.match(/\\$/)&&t.match(/ $/)&&(e+=" "),e},t.setArrayAlign=function(e,Q){return"t"===(Q=t.trimSpaces(Q||""))?e.arraydef.align="baseline 1":"b"===Q?e.arraydef.align="baseline -1":"c"===Q?e.arraydef.align="center":Q&&(e.arraydef.align=Q),e},t.substituteArgs=function(t,e,Q){for(var r="",T="",n=0;ne.length)throw new s.default("IllegalMacroParam","Illegal macro parameter reference");T=L(t,L(t,T,r),e[parseInt(o,10)-1]),r=""}else r+=o}return L(t,T,r)},t.addArgs=L,t.checkEqnEnv=function(t){if(t.stack.global.eqnenv)throw new s.default("ErroneousNestingEq","Erroneous nesting of equation structures");t.stack.global.eqnenv=!0},t.MmlFilterAttribute=function(t,e,Q){return Q},t.getFontDef=function(t){var e=t.stack.env.font;return e?{mathvariant:e}:{}},t.keyvalOptions=function(t,e,Q){var n,o;void 0===e&&(e=null),void 0===Q&&(Q=!1);var i=function(t){var e,Q,T,n,o,i={},a=t;for(;a;)n=(e=r(m(a,["=",","]),3))[0],T=e[1],a=e[2],"="===T?(o=(Q=r(m(a,[","]),3))[0],T=Q[1],a=Q[2],o="false"===o||"true"===o?JSON.parse(o):o,i[n]=o):n&&(i[n]=!0);return i}(t);if(e)try{for(var a=T(Object.keys(i)),l=a.next();!l.done;l=a.next()){var c=l.value;if(!e.hasOwnProperty(c)){if(Q)throw new s.default("InvalidOption","Invalid optional argument: %1",c);delete i[c]}}}catch(t){n={error:t}}finally{try{l&&!l.done&&(o=a.return)&&o.call(a)}finally{if(n)throw n.error}}return i}}(n||(n={})),e.default=n},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.HtmlAttrs=e.HtmlClasses=void 0;function r(t){return"CtxtMenu_"+t}function T(t){return r(t)}function n(t){return r(t)}e.HtmlClasses={ATTACHED:T("Attached"),CONTEXTMENU:T("ContextMenu"),MENU:T("Menu"),MENUARROW:T("MenuArrow"),MENUACTIVE:T("MenuActive"),MENUCHECK:T("MenuCheck"),MENUCLOSE:T("MenuClose"),MENUCOMBOBOX:T("MenuComboBox"),MENUDISABLED:T("MenuDisabled"),MENUFRAME:T("MenuFrame"),MENUITEM:T("MenuItem"),MENULABEL:T("MenuLabel"),MENURADIOCHECK:T("MenuRadioCheck"),MENUINPUTBOX:T("MenuInputBox"),MENURULE:T("MenuRule"),MENUSLIDER:T("MenuSlider"),MOUSEPOST:T("MousePost"),RTL:T("RTL"),INFO:T("Info"),INFOCLOSE:T("InfoClose"),INFOCONTENT:T("InfoContent"),INFOSIGNATURE:T("InfoSignature"),INFOTITLE:T("InfoTitle"),SLIDERVALUE:T("SliderValue"),SLIDERBAR:T("SliderBar"),SELECTION:T("Selection"),SELECTIONBOX:T("SelectionBox"),SELECTIONMENU:T("SelectionMenu"),SELECTIONDIVIDER:T("SelectionDivider"),SELECTIONITEM:T("SelectionItem")},e.HtmlAttrs={COUNTER:n("Counter"),KEYDOWNFUNC:n("keydownFunc"),CONTEXTMENUFUNC:n("contextmenuFunc"),OLDTAB:n("Oldtabindex"),TOUCHFUNC:n("TouchFunc")}},function(t,e,Q){"use strict";(function(t){var r=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.CONFIG=e.MathJax=e.Loader=void 0;var T,n=Q(1),o=Q(29),i=Q(29);Object.defineProperty(e,"Package",{enumerable:!0,get:function(){return i.Package}}),Object.defineProperty(e,"PackageError",{enumerable:!0,get:function(){return i.PackageError}}),function(Q){Q.ready=function(){for(var t,e,Q=[],T=0;T=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},T=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},n=this&&this.__spread||function(){for(var t=[],e=0;e=Q&&this.state(Q-1),t.renderActions.renderMath(this,t,Q)},t.prototype.convert=function(t,Q){void 0===Q&&(Q=e.STATE.LAST),t.renderActions.renderConvert(this,t,Q)},t.prototype.compile=function(t){this.state()=e.STATE.INSERTED&&this.removeFromDocument(Q),t=e.STATE.TYPESET&&(this.outputData={}),t=e.STATE.COMPILED&&(this.inputData={}),this._state=t),this._state},t.prototype.reset=function(t){void 0===t&&(t=!1),this.state(e.STATE.UNPROCESSED,t)},t}();e.AbstractMathItem=r,e.STATE={UNPROCESSED:0,FINDMATH:10,COMPILED:20,CONVERT:100,METRICS:110,RERENDER:125,TYPESET:150,INSERTED:200,LAST:1e4},e.newState=function(t,Q){if(t in e.STATE)throw Error("State "+t+" already exists");e.STATE[t]=Q}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.split=e.isPercent=e.unicodeChars=e.quotePattern=e.sortLength=void 0,e.sortLength=function(t,e){return t.length!==e.length?e.length-t.length:t===e?0:t0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0});var T=Q(27),n=Q(8),o=Q(5),i=Q(12),a=Q(13),s=Q(9),l=Q(0),c=Q(20),u=Q(19);Q(272),Q(282),Q(283);var p={},h={fontfamily:1,fontsize:1,fontweight:1,fontstyle:1,color:1,background:1,id:1,class:1,href:1,style:1};function f(t,e){var Q=t.stack.env,r=Q.inRoot;Q.inRoot=!0;var T=new i.default(e,Q,t.configuration),n=T.mml(),o=T.stack.global;if(o.leftRoot||o.upRoot){var a={};o.leftRoot&&(a.width=o.leftRoot),o.upRoot&&(a.voffset=o.upRoot,a.height=o.upRoot),n=t.create("node","mpadded",[n],a)}return Q.inRoot=r,n}p.Open=function(t,e){t.Push(t.itemFactory.create("open"))},p.Close=function(t,e){t.Push(t.itemFactory.create("close"))},p.Tilde=function(t,e){t.Push(t.create("token","mtext",{},u.entities.nbsp))},p.Space=function(t,e){},p.Superscript=function(t,e){var Q,T,i;t.GetNext().match(/\d/)&&(t.string=t.string.substr(0,t.i+1)+" "+t.string.substr(t.i+1));var a=t.stack.Top();a.isKind("prime")?(i=(Q=r(a.Peek(2),2))[0],T=Q[1],t.stack.Pop()):(i=t.stack.Prev())||(i=t.create("token","mi",{},""));var s=n.default.getProperty(i,"movesupsub"),l=n.default.isType(i,"msubsup")?i.sup:i.over;if(n.default.isType(i,"msubsup")&&!n.default.isType(i,"msup")&&n.default.getChildAt(i,i.sup)||n.default.isType(i,"munderover")&&!n.default.isType(i,"mover")&&n.default.getChildAt(i,i.over)&&!n.default.getProperty(i,"subsupOK"))throw new o.default("DoubleExponent","Double exponent: use braces to clarify");n.default.isType(i,"msubsup")&&!n.default.isType(i,"msup")||(s?((!n.default.isType(i,"munderover")||n.default.isType(i,"mover")||n.default.getChildAt(i,i.over))&&(i=t.create("node","munderover",[i],{movesupsub:!0})),l=i.over):l=(i=t.create("node","msubsup",[i])).sup),t.Push(t.itemFactory.create("subsup",i).setProperties({position:l,primes:T,movesupsub:s}))},p.Subscript=function(t,e){var Q,T,i;t.GetNext().match(/\d/)&&(t.string=t.string.substr(0,t.i+1)+" "+t.string.substr(t.i+1));var a=t.stack.Top();a.isKind("prime")?(i=(Q=r(a.Peek(2),2))[0],T=Q[1],t.stack.Pop()):(i=t.stack.Prev())||(i=t.create("token","mi",{},""));var s=n.default.getProperty(i,"movesupsub"),l=n.default.isType(i,"msubsup")?i.sub:i.under;if(n.default.isType(i,"msubsup")&&!n.default.isType(i,"msup")&&n.default.getChildAt(i,i.sub)||n.default.isType(i,"munderover")&&!n.default.isType(i,"mover")&&n.default.getChildAt(i,i.under)&&!n.default.getProperty(i,"subsupOK"))throw new o.default("DoubleSubscripts","Double subscripts: use braces to clarify");n.default.isType(i,"msubsup")&&!n.default.isType(i,"msup")||(s?((!n.default.isType(i,"munderover")||n.default.isType(i,"mover")||n.default.getChildAt(i,i.under))&&(i=t.create("node","munderover",[i],{movesupsub:!0})),l=i.under):l=(i=t.create("node","msubsup",[i])).sub),t.Push(t.itemFactory.create("subsup",i).setProperties({position:l,primes:T,movesupsub:s}))},p.Prime=function(t,e){var Q=t.stack.Prev();if(Q||(Q=t.create("node","mi")),n.default.isType(Q,"msubsup")&&!n.default.isType(Q,"msup")&&n.default.getChildAt(Q,Q.sup))throw new o.default("DoubleExponentPrime","Prime causes double exponent: use braces to clarify");var r="";t.i--;do{r+=u.entities.prime,t.i++,e=t.GetNext()}while("'"===e||e===u.entities.rquote);r=["","\u2032","\u2033","\u2034","\u2057"][r.length]||r;var T=t.create("token","mo",{},r);t.Push(t.itemFactory.create("prime",Q,T))},p.Comment=function(t,e){for(;t.it.configuration.options.maxMacros)throw new o.default("MaxMacroSub2","MathJax maximum substitution count exceeded; is there a recursive latex environment?");t.parse("environment",[t,Q])},p.Array=function(t,e,Q,r,T,n,o,i,a){T||(T=t.GetArgument("\\begin{"+e.getName()+"}"));var s=("c"+T).replace(/[^clr|:]/g,"").replace(/[^|:]([|:])+/g,"$1");T=(T=T.replace(/[^clr]/g,"").split("").join(" ")).replace(/l/g,"left").replace(/r/g,"right").replace(/c/g,"center");var l=t.itemFactory.create("array");return l.arraydef={columnalign:T,columnspacing:n||"1em",rowspacing:o||"4pt"},s.match(/[|:]/)&&(s.charAt(0).match(/[|:]/)&&(l.frame.push("left"),l.dashed=":"===s.charAt(0)),s.charAt(s.length-1).match(/[|:]/)&&l.frame.push("right"),s=s.substr(1,s.length-2),l.arraydef.columnlines=s.split("").join(" ").replace(/[^|: ]/g,"none").replace(/\|/g,"solid").replace(/:/g,"dashed")),Q&&l.setProperty("open",t.convertDelimiter(Q)),r&&l.setProperty("close",t.convertDelimiter(r)),"D"===i?l.arraydef.displaystyle=!0:i&&(l.arraydef.displaystyle=!1),"S"===i&&(l.arraydef.scriptlevel=1),a&&(l.arraydef.useHeight=!1),t.Push(e),l},p.AlignedArray=function(t,e){var Q=t.GetBrackets("\\begin{"+e.getName()+"}"),r=p.Array(t,e);return s.default.setArrayAlign(r,Q)},p.Equation=function(t,e,Q){return t.Push(e),s.default.checkEqnEnv(t),t.itemFactory.create("equation",Q).setProperty("name",e.getName())},p.EqnArray=function(t,e,Q,r,T,n){t.Push(e),r&&s.default.checkEqnEnv(t),T=(T=T.replace(/[^clr]/g,"").split("").join(" ")).replace(/l/g,"left").replace(/r/g,"right").replace(/c/g,"center");var o=t.itemFactory.create("eqnarray",e.getName(),Q,r,t.stack.global);return o.arraydef={displaystyle:!0,columnalign:T,columnspacing:n||"1em",rowspacing:"3pt",side:t.options.tagSide,minlabelspacing:t.options.tagIndent},o},p.HandleNoTag=function(t,e){t.tags.notag()},p.HandleLabel=function(t,e){var Q=t.GetArgument(e);if(""!==Q&&!t.tags.refUpdate){if(t.tags.label)throw new o.default("MultipleCommand","Multiple %1",t.currentCS);if(t.tags.label=Q,(t.tags.allLabels[Q]||t.tags.labels[Q])&&!t.options.ignoreDuplicateLabels)throw new o.default("MultipleLabel","Label '%1' multiply defined",Q);t.tags.labels[Q]=new c.Label}},p.HandleRef=function(t,e,Q){var r=t.GetArgument(e),T=t.tags.allLabels[r]||t.tags.labels[r];T||(t.tags.refUpdate||(t.tags.redo=!0),T=new c.Label);var n=T.tag;Q&&(n=t.tags.formatTag(n));var o=t.create("node","mrow",s.default.internalMath(t,n),{href:t.tags.formatUrl(T.id,t.options.baseURL),class:"MathJax_ref"});t.Push(o)},p.Macro=function(t,e,Q,r,T){if(r){var n=[];if(null!=T){var i=t.GetBrackets(e);n.push(null==i?T:i)}for(var a=n.length;at.configuration.options.maxMacros)throw new o.default("MaxMacroSub1","MathJax maximum macro substitution count exceeded; is there a recursive macro call?")},p.MathChoice=function(t,e){var Q=t.ParseArg(e),r=t.ParseArg(e),T=t.ParseArg(e),n=t.ParseArg(e);t.Push(t.create("node","MathChoice",[Q,r,T,n]))},e.default=p},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.MenuUtil=void 0,function(t){t.close=function(t){var e=t.menu;e.baseMenu?e.baseMenu.unpost():e.unpost()},t.getActiveElement=function(t){var e=t.menu;return(e.baseMenu?e.baseMenu:e).store.active},t.error=function(t,e){console.error("ContextMenu Error: "+e)},t.counter=function(){return e++};var e=0}(e.MenuUtil||(e.MenuUtil={}))},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.BBox=e.BBoxStyleAdjust=void 0;var r=Q(32);e.BBoxStyleAdjust=[["borderTopWidth","h"],["borderRightWidth","w"],["borderBottomWidth","d"],["borderLeftWidth","w",0],["paddingTop","h"],["paddingRight","w"],["paddingBottom","d"],["paddingLeft","w",0]];var T=function(){function t(t){void 0===t&&(t={w:0,h:-r.BIGDIMEN,d:-r.BIGDIMEN}),this.w=t.w||0,this.h="h"in t?t.h:-r.BIGDIMEN,this.d="d"in t?t.d:-r.BIGDIMEN,this.L=this.R=this.ic=this.sk=0,this.scale=this.rscale=1,this.pwidth=""}return t.zero=function(){return new t({h:0,d:0,w:0})},t.empty=function(){return new t},t.prototype.empty=function(){return this.w=0,this.h=this.d=-r.BIGDIMEN,this},t.prototype.clean=function(){this.w===-r.BIGDIMEN&&(this.w=0),this.h===-r.BIGDIMEN&&(this.h=0),this.d===-r.BIGDIMEN&&(this.d=0)},t.prototype.rescale=function(t){this.w*=t,this.h*=t,this.d*=t},t.prototype.combine=function(t,e,Q){void 0===e&&(e=0),void 0===Q&&(Q=0);var r=t.rscale,T=e+r*(t.w+t.L+t.R),n=Q+r*t.h,o=r*t.d-Q;T>this.w&&(this.w=T),n>this.h&&(this.h=n),o>this.d&&(this.d=o)},t.prototype.append=function(t){var e=t.rscale;this.w+=e*(t.w+t.L+t.R),e*t.h>this.h&&(this.h=e*t.h),e*t.d>this.d&&(this.d=e*t.d)},t.prototype.updateFrom=function(t){this.h=t.h,this.d=t.d,this.w=t.w,t.pwidth&&(this.pwidth=t.pwidth)},t.fullWidth="100%",t}();e.BBox=T},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.numeric=e.translate=e.remove=e.add=e.entities=e.options=void 0;var r=Q(40),T=Q(126);e.options={loadMissingEntities:!0},e.entities={ApplyFunction:"\u2061",Backslash:"\u2216",Because:"\u2235",Breve:"\u02d8",Cap:"\u22d2",CenterDot:"\xb7",CircleDot:"\u2299",CircleMinus:"\u2296",CirclePlus:"\u2295",CircleTimes:"\u2297",Congruent:"\u2261",ContourIntegral:"\u222e",Coproduct:"\u2210",Cross:"\u2a2f",Cup:"\u22d3",CupCap:"\u224d",Dagger:"\u2021",Del:"\u2207",Delta:"\u0394",Diamond:"\u22c4",DifferentialD:"\u2146",DotEqual:"\u2250",DoubleDot:"\xa8",DoubleRightTee:"\u22a8",DoubleVerticalBar:"\u2225",DownArrow:"\u2193",DownLeftVector:"\u21bd",DownRightVector:"\u21c1",DownTee:"\u22a4",Downarrow:"\u21d3",Element:"\u2208",EqualTilde:"\u2242",Equilibrium:"\u21cc",Exists:"\u2203",ExponentialE:"\u2147",FilledVerySmallSquare:"\u25aa",ForAll:"\u2200",Gamma:"\u0393",Gg:"\u22d9",GreaterEqual:"\u2265",GreaterEqualLess:"\u22db",GreaterFullEqual:"\u2267",GreaterLess:"\u2277",GreaterSlantEqual:"\u2a7e",GreaterTilde:"\u2273",Hacek:"\u02c7",Hat:"^",HumpDownHump:"\u224e",HumpEqual:"\u224f",Im:"\u2111",ImaginaryI:"\u2148",Integral:"\u222b",Intersection:"\u22c2",InvisibleComma:"\u2063",InvisibleTimes:"\u2062",Lambda:"\u039b",Larr:"\u219e",LeftAngleBracket:"\u27e8",LeftArrow:"\u2190",LeftArrowRightArrow:"\u21c6",LeftCeiling:"\u2308",LeftDownVector:"\u21c3",LeftFloor:"\u230a",LeftRightArrow:"\u2194",LeftTee:"\u22a3",LeftTriangle:"\u22b2",LeftTriangleEqual:"\u22b4",LeftUpVector:"\u21bf",LeftVector:"\u21bc",Leftarrow:"\u21d0",Leftrightarrow:"\u21d4",LessEqualGreater:"\u22da",LessFullEqual:"\u2266",LessGreater:"\u2276",LessSlantEqual:"\u2a7d",LessTilde:"\u2272",Ll:"\u22d8",Lleftarrow:"\u21da",LongLeftArrow:"\u27f5",LongLeftRightArrow:"\u27f7",LongRightArrow:"\u27f6",Longleftarrow:"\u27f8",Longleftrightarrow:"\u27fa",Longrightarrow:"\u27f9",Lsh:"\u21b0",MinusPlus:"\u2213",NestedGreaterGreater:"\u226b",NestedLessLess:"\u226a",NotDoubleVerticalBar:"\u2226",NotElement:"\u2209",NotEqual:"\u2260",NotExists:"\u2204",NotGreater:"\u226f",NotGreaterEqual:"\u2271",NotLeftTriangle:"\u22ea",NotLeftTriangleEqual:"\u22ec",NotLess:"\u226e",NotLessEqual:"\u2270",NotPrecedes:"\u2280",NotPrecedesSlantEqual:"\u22e0",NotRightTriangle:"\u22eb",NotRightTriangleEqual:"\u22ed",NotSubsetEqual:"\u2288",NotSucceeds:"\u2281",NotSucceedsSlantEqual:"\u22e1",NotSupersetEqual:"\u2289",NotTilde:"\u2241",NotVerticalBar:"\u2224",Omega:"\u03a9",OverBar:"\u203e",OverBrace:"\u23de",PartialD:"\u2202",Phi:"\u03a6",Pi:"\u03a0",PlusMinus:"\xb1",Precedes:"\u227a",PrecedesEqual:"\u2aaf",PrecedesSlantEqual:"\u227c",PrecedesTilde:"\u227e",Product:"\u220f",Proportional:"\u221d",Psi:"\u03a8",Rarr:"\u21a0",Re:"\u211c",ReverseEquilibrium:"\u21cb",RightAngleBracket:"\u27e9",RightArrow:"\u2192",RightArrowLeftArrow:"\u21c4",RightCeiling:"\u2309",RightDownVector:"\u21c2",RightFloor:"\u230b",RightTee:"\u22a2",RightTeeArrow:"\u21a6",RightTriangle:"\u22b3",RightTriangleEqual:"\u22b5",RightUpVector:"\u21be",RightVector:"\u21c0",Rightarrow:"\u21d2",Rrightarrow:"\u21db",Rsh:"\u21b1",Sigma:"\u03a3",SmallCircle:"\u2218",Sqrt:"\u221a",Square:"\u25a1",SquareIntersection:"\u2293",SquareSubset:"\u228f",SquareSubsetEqual:"\u2291",SquareSuperset:"\u2290",SquareSupersetEqual:"\u2292",SquareUnion:"\u2294",Star:"\u22c6",Subset:"\u22d0",SubsetEqual:"\u2286",Succeeds:"\u227b",SucceedsEqual:"\u2ab0",SucceedsSlantEqual:"\u227d",SucceedsTilde:"\u227f",SuchThat:"\u220b",Sum:"\u2211",Superset:"\u2283",SupersetEqual:"\u2287",Supset:"\u22d1",Therefore:"\u2234",Theta:"\u0398",Tilde:"\u223c",TildeEqual:"\u2243",TildeFullEqual:"\u2245",TildeTilde:"\u2248",UnderBar:"_",UnderBrace:"\u23df",Union:"\u22c3",UnionPlus:"\u228e",UpArrow:"\u2191",UpDownArrow:"\u2195",UpTee:"\u22a5",Uparrow:"\u21d1",Updownarrow:"\u21d5",Upsilon:"\u03a5",Vdash:"\u22a9",Vee:"\u22c1",VerticalBar:"\u2223",VerticalTilde:"\u2240",Vvdash:"\u22aa",Wedge:"\u22c0",Xi:"\u039e",amp:"&",acute:"\xb4",aleph:"\u2135",alpha:"\u03b1",amalg:"\u2a3f",and:"\u2227",ang:"\u2220",angmsd:"\u2221",angsph:"\u2222",ape:"\u224a",backprime:"\u2035",backsim:"\u223d",backsimeq:"\u22cd",beta:"\u03b2",beth:"\u2136",between:"\u226c",bigcirc:"\u25ef",bigodot:"\u2a00",bigoplus:"\u2a01",bigotimes:"\u2a02",bigsqcup:"\u2a06",bigstar:"\u2605",bigtriangledown:"\u25bd",bigtriangleup:"\u25b3",biguplus:"\u2a04",blacklozenge:"\u29eb",blacktriangle:"\u25b4",blacktriangledown:"\u25be",blacktriangleleft:"\u25c2",bowtie:"\u22c8",boxdl:"\u2510",boxdr:"\u250c",boxminus:"\u229f",boxplus:"\u229e",boxtimes:"\u22a0",boxul:"\u2518",boxur:"\u2514",bsol:"\\",bull:"\u2022",cap:"\u2229",check:"\u2713",chi:"\u03c7",circ:"\u02c6",circeq:"\u2257",circlearrowleft:"\u21ba",circlearrowright:"\u21bb",circledR:"\xae",circledS:"\u24c8",circledast:"\u229b",circledcirc:"\u229a",circleddash:"\u229d",clubs:"\u2663",colon:":",comp:"\u2201",ctdot:"\u22ef",cuepr:"\u22de",cuesc:"\u22df",cularr:"\u21b6",cup:"\u222a",curarr:"\u21b7",curlyvee:"\u22ce",curlywedge:"\u22cf",dagger:"\u2020",daleth:"\u2138",ddarr:"\u21ca",deg:"\xb0",delta:"\u03b4",digamma:"\u03dd",div:"\xf7",divideontimes:"\u22c7",dot:"\u02d9",doteqdot:"\u2251",dotplus:"\u2214",dotsquare:"\u22a1",dtdot:"\u22f1",ecir:"\u2256",efDot:"\u2252",egs:"\u2a96",ell:"\u2113",els:"\u2a95",empty:"\u2205",epsi:"\u03b5",epsiv:"\u03f5",erDot:"\u2253",eta:"\u03b7",eth:"\xf0",flat:"\u266d",fork:"\u22d4",frown:"\u2322",gEl:"\u2a8c",gamma:"\u03b3",gap:"\u2a86",gimel:"\u2137",gnE:"\u2269",gnap:"\u2a8a",gne:"\u2a88",gnsim:"\u22e7",gt:">",gtdot:"\u22d7",harrw:"\u21ad",hbar:"\u210f",hellip:"\u2026",hookleftarrow:"\u21a9",hookrightarrow:"\u21aa",imath:"\u0131",infin:"\u221e",intcal:"\u22ba",iota:"\u03b9",jmath:"\u0237",kappa:"\u03ba",kappav:"\u03f0",lEg:"\u2a8b",lambda:"\u03bb",lap:"\u2a85",larrlp:"\u21ab",larrtl:"\u21a2",lbrace:"{",lbrack:"[",le:"\u2264",leftleftarrows:"\u21c7",leftthreetimes:"\u22cb",lessdot:"\u22d6",lmoust:"\u23b0",lnE:"\u2268",lnap:"\u2a89",lne:"\u2a87",lnsim:"\u22e6",longmapsto:"\u27fc",looparrowright:"\u21ac",lowast:"\u2217",loz:"\u25ca",lt:"<",ltimes:"\u22c9",ltri:"\u25c3",macr:"\xaf",malt:"\u2720",mho:"\u2127",mu:"\u03bc",multimap:"\u22b8",nLeftarrow:"\u21cd",nLeftrightarrow:"\u21ce",nRightarrow:"\u21cf",nVDash:"\u22af",nVdash:"\u22ae",natur:"\u266e",nearr:"\u2197",nharr:"\u21ae",nlarr:"\u219a",not:"\xac",nrarr:"\u219b",nu:"\u03bd",nvDash:"\u22ad",nvdash:"\u22ac",nwarr:"\u2196",omega:"\u03c9",omicron:"\u03bf",or:"\u2228",osol:"\u2298",period:".",phi:"\u03c6",phiv:"\u03d5",pi:"\u03c0",piv:"\u03d6",prap:"\u2ab7",precnapprox:"\u2ab9",precneqq:"\u2ab5",precnsim:"\u22e8",prime:"\u2032",psi:"\u03c8",quot:'"',rarrtl:"\u21a3",rbrace:"}",rbrack:"]",rho:"\u03c1",rhov:"\u03f1",rightrightarrows:"\u21c9",rightthreetimes:"\u22cc",ring:"\u02da",rmoust:"\u23b1",rtimes:"\u22ca",rtri:"\u25b9",scap:"\u2ab8",scnE:"\u2ab6",scnap:"\u2aba",scnsim:"\u22e9",sdot:"\u22c5",searr:"\u2198",sect:"\xa7",sharp:"\u266f",sigma:"\u03c3",sigmav:"\u03c2",simne:"\u2246",smile:"\u2323",spades:"\u2660",sub:"\u2282",subE:"\u2ac5",subnE:"\u2acb",subne:"\u228a",supE:"\u2ac6",supnE:"\u2acc",supne:"\u228b",swarr:"\u2199",tau:"\u03c4",theta:"\u03b8",thetav:"\u03d1",tilde:"\u02dc",times:"\xd7",triangle:"\u25b5",triangleq:"\u225c",upsi:"\u03c5",upuparrows:"\u21c8",veebar:"\u22bb",vellip:"\u22ee",weierp:"\u2118",xi:"\u03be",yen:"\xa5",zeta:"\u03b6",zigrarr:"\u21dd"};var n={};function o(t,Q){if("#"===Q.charAt(0))return i(Q.slice(1));if(e.entities[Q])return e.entities[Q];if(e.options.loadMissingEntities){var o=Q.match(/^[a-zA-Z](fr|scr|opf)$/)?RegExp.$1:Q.charAt(0).toLowerCase();n[o]||(n[o]=!0,r.retryAfter(T.asyncLoad("./util/entities/"+o+".js")))}return t}function i(t){var e="x"===t.charAt(0)?parseInt(t.slice(1),16):parseInt(t);return String.fromCodePoint(e)}e.add=function(t,Q){Object.assign(e.entities,t),n[Q]=!0},e.remove=function(t){delete e.entities[t]},e.translate=function(t){return t.replace(/&([a-z][a-z0-9]*|#(?:[0-9]+|x[0-9a-f]+));/gi,o)},e.numeric=i},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.TagsFactory=e.AllTags=e.NoTags=e.AbstractTags=e.TagInfo=e.Label=void 0;var o=Q(12),i=function(t,e){void 0===t&&(t="???"),void 0===e&&(e=""),this.tag=t,this.id=e};e.Label=i;var a=function(t,e,Q,r,T,n,o,i){void 0===t&&(t=""),void 0===e&&(e=!1),void 0===Q&&(Q=!1),void 0===r&&(r=null),void 0===T&&(T=""),void 0===n&&(n=""),void 0===o&&(o=!1),void 0===i&&(i=""),this.env=t,this.taggable=e,this.defaultTags=Q,this.tag=r,this.tagId=T,this.tagFormat=n,this.noTag=o,this.labelId=i};e.TagInfo=a;var s=function(){function t(){this.counter=0,this.allCounter=0,this.configuration=null,this.ids={},this.allIds={},this.labels={},this.allLabels={},this.redo=!1,this.refUpdate=!1,this.currentTag=new a,this.history=[],this.stack=[],this.enTag=function(t,e){var Q=this.configuration.nodeFactory,r=Q.create("node","mtd",[t]),T=Q.create("node","mlabeledtr",[e,r]);return Q.create("node","mtable",[T],{side:this.configuration.options.tagSide,minlabelspacing:this.configuration.options.tagIndent,displaystyle:!0})}}return t.prototype.start=function(t,e,Q){this.currentTag&&this.stack.push(this.currentTag),this.currentTag=new a(t,e,Q)},Object.defineProperty(t.prototype,"env",{get:function(){return this.currentTag.env},enumerable:!1,configurable:!0}),t.prototype.end=function(){this.history.push(this.currentTag),this.currentTag=this.stack.pop()},t.prototype.tag=function(t,e){this.currentTag.tag=t,this.currentTag.tagFormat=e?t:this.formatTag(t),this.currentTag.noTag=!1},t.prototype.notag=function(){this.tag("",!0),this.currentTag.noTag=!0},Object.defineProperty(t.prototype,"noTag",{get:function(){return this.currentTag.noTag},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"label",{get:function(){return this.currentTag.labelId},set:function(t){this.currentTag.labelId=t},enumerable:!1,configurable:!0}),t.prototype.formatUrl=function(t,e){return e+"#"+encodeURIComponent(t)},t.prototype.formatTag=function(t){return"("+t+")"},t.prototype.formatId=function(t){return"mjx-eqn-"+t.replace(/\s/g,"_")},t.prototype.formatNumber=function(t){return t.toString()},t.prototype.autoTag=function(){null==this.currentTag.tag&&(this.counter++,this.tag(this.formatNumber(this.counter),!1))},t.prototype.clearTag=function(){this.label="",this.tag(null,!0),this.currentTag.tagId=""},t.prototype.getTag=function(t){if(void 0===t&&(t=!1),t)return this.autoTag(),this.makeTag();var e=this.currentTag;return e.taggable&&!e.noTag&&(e.defaultTags&&this.autoTag(),e.tag)?this.makeTag():null},t.prototype.resetTag=function(){this.history=[],this.redo=!1,this.refUpdate=!1,this.clearTag()},t.prototype.reset=function(t){void 0===t&&(t=0),this.resetTag(),this.counter=this.allCounter=t,this.allLabels={},this.allIds={}},t.prototype.startEquation=function(t){this.labels={},this.ids={},this.counter=this.allCounter,this.redo=!1;var e=t.inputData.recompile;e&&(this.refUpdate=!0,this.counter=e.counter)},t.prototype.finishEquation=function(t){this.redo&&(t.inputData.recompile={state:t.state(),counter:this.allCounter}),this.refUpdate||(this.allCounter=this.counter),Object.assign(this.allIds,this.ids),Object.assign(this.allLabels,this.labels)},t.prototype.finalize=function(t,e){if(!e.display||this.currentTag.env||null==this.currentTag.tag)return t;var Q=this.makeTag();return this.enTag(t,Q)},t.prototype.makeId=function(){this.currentTag.tagId=this.formatId(this.configuration.options.useLabelIds&&this.label||this.currentTag.tag)},t.prototype.makeTag=function(){this.makeId(),this.label&&(this.labels[this.label]=new i(this.currentTag.tag,this.currentTag.tagId));var t=new o.default("\\text{"+this.currentTag.tagFormat+"}",{},this.configuration).mml();return this.configuration.nodeFactory.create("node","mtd",[t],{id:this.currentTag.tagId})},t}();e.AbstractTags=s;var l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.autoTag=function(){},e.prototype.getTag=function(){return this.currentTag.tag?t.prototype.getTag.call(this):null},e}(s);e.NoTags=l;var c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.finalize=function(t,e){if(!e.display||this.history.find((function(t){return t.taggable})))return t;var Q=this.getTag(!0);return this.enTag(t,Q)},e}(s);e.AllTags=c,function(t){var e=new Map([["none",l],["all",c]]),Q="none";t.OPTIONS={tags:Q,tagSide:"right",tagIndent:"0.8em",multlineWidth:"85%",useLabelIds:!0,ignoreDuplicateLabels:!1},t.add=function(t,Q){e.set(t,Q)},t.addTags=function(e){var Q,r;try{for(var T=n(Object.keys(e)),o=T.next();!o.done;o=T.next()){var i=o.value;t.add(i,e[i])}}catch(t){Q={error:t}}finally{try{o&&!o.done&&(r=T.return)&&r.call(T)}finally{if(Q)throw Q.error}}},t.create=function(t){var r=e.get(t)||e.get(Q);if(!r)throw Error("Unknown tags class");return new r},t.setDefault=function(t){Q=t},t.getDefault=function(){return t.create(Q)}}(e.TagsFactory||(e.TagsFactory={}))},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.PrioritizedList=void 0;var r=function(){function t(){this.items=[],this.items=[]}return t.prototype[Symbol.iterator]=function(){var t=0,e=this.items;return{next:function(){return{value:e[t++],done:t>e.length}}}},t.prototype.add=function(e,Q){void 0===Q&&(Q=t.DEFAULTPRIORITY);var r=this.items.length;do{r--}while(r>=0&&Q=0&&this.items[e].item!==t);e>=0&&this.items.splice(e,1)},t.prototype.toArray=function(){return Array.from(this)},t.DEFAULTPRIORITY=5,t}();e.PrioritizedList=r},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},o=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.BaseItem=e.MmlStack=void 0;var a=Q(5),s=function(){function t(t){this._nodes=t}return Object.defineProperty(t.prototype,"nodes",{get:function(){return this._nodes},enumerable:!1,configurable:!0}),t.prototype.Push=function(){for(var t,e=[],Q=0;Q0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},T=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.Attributes=e.INHERIT=void 0,e.INHERIT="_inherit_";var T=function(){function t(t,e){this.global=e,this.defaults=Object.create(e),this.inherited=Object.create(this.defaults),this.attributes=Object.create(this.inherited),Object.assign(this.defaults,t)}return t.prototype.set=function(t,e){this.attributes[t]=e},t.prototype.setList=function(t){Object.assign(this.attributes,t)},t.prototype.get=function(t){var Q=this.attributes[t];return Q===e.INHERIT&&(Q=this.global[t]),Q},t.prototype.getExplicit=function(t){if(this.attributes.hasOwnProperty(t))return this.attributes[t]},t.prototype.getList=function(){for(var t,e,Q=[],T=0;T0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},o=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},n=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.FontData=e.NOSTRETCH=e.H=e.V=void 0,e.V=1,e.H=2,e.NOSTRETCH={dir:0};var i=function(){function t(){var t,e;this.variant={},this.delimiters={},this.cssFontMap={},this.remapChars={};var Q=this.constructor;this.params=r({},Q.defaultParams),this.sizeVariants=n(Q.defaultSizeVariants),this.cssFontMap=r({},Q.defaultCssFonts),this.cssFamilyPrefix=Q.defaultCssFamilyPrefix,this.createVariants(Q.defaultVariants),this.defineDelimiters(Q.defaultDelimiters);try{for(var T=o(Object.keys(Q.defaultChars)),i=T.next();!i.done;i=T.next()){var a=i.value;this.defineChars(a,Q.defaultChars[a])}}catch(e){t={error:e}}finally{try{i&&!i.done&&(e=T.return)&&e.call(T)}finally{if(t)throw t.error}}this.defineRemap("accent",Q.defaultAccentMap),this.defineRemap("mo",Q.defaultMoMap),this.defineRemap("mn",Q.defaultMnMap)}return t.charOptions=function(t,e){var Q=t[e];return 3===Q.length&&(Q[3]={}),Q[3]},t.prototype.createVariant=function(t,e,Q){void 0===e&&(e=null),void 0===Q&&(Q=null);var r={linked:[],chars:e?Object.create(this.variant[e].chars):{}};Q&&this.variant[Q]&&(Object.assign(r.chars,this.variant[Q].chars),this.variant[Q].linked.push(r.chars),r.chars=Object.create(r.chars)),this.remapSmpChars(r.chars,t),this.variant[t]=r},t.prototype.remapSmpChars=function(t,e){var Q,r,n,i,a=this.constructor;if(a.VariantSmp[e]){var s=a.SmpRemap,l=[null,null,a.SmpRemapGreekU,a.SmpRemapGreekL];try{for(var c=o(a.SmpRanges),u=c.next();!u.done;u=c.next()){var p=T(u.value,3),h=p[0],f=p[1],d=p[2],L=a.VariantSmp[e][h];if(L){for(var H=f;H<=d;H++)if(930!==H){var m=L+H-f;t[H]=this.smpChar(s[m]||m)}if(l[h])try{for(var y=(n=void 0,o(Object.keys(l[h]).map((function(t){return parseInt(t)})))),v=y.next();!v.done;v=y.next()){t[H=v.value]=this.smpChar(L+l[h][H])}}catch(t){n={error:t}}finally{try{v&&!v.done&&(i=y.return)&&i.call(y)}finally{if(n)throw n.error}}}}}catch(t){Q={error:t}}finally{try{u&&!u.done&&(r=c.return)&&r.call(c)}finally{if(Q)throw Q.error}}}"bold"===e&&(t[988]=this.smpChar(120778),t[989]=this.smpChar(120779))},t.prototype.smpChar=function(t){return[,,,{smp:t}]},t.prototype.createVariants=function(t){var e,Q;try{for(var r=o(t),T=r.next();!T.done;T=r.next()){var n=T.value;this.createVariant(n[0],n[1],n[2])}}catch(t){e={error:t}}finally{try{T&&!T.done&&(Q=r.return)&&Q.call(r)}finally{if(e)throw e.error}}},t.prototype.defineChars=function(t,e){var Q,r,T=this.variant[t];Object.assign(T.chars,e);try{for(var n=o(T.linked),i=n.next();!i.done;i=n.next()){var a=i.value;Object.assign(a,e)}}catch(t){Q={error:t}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(Q)throw Q.error}}},t.prototype.defineDelimiters=function(t){Object.assign(this.delimiters,t)},t.prototype.defineRemap=function(t,e){this.remapChars.hasOwnProperty(t)||(this.remapChars[t]={}),Object.assign(this.remapChars[t],e)},t.prototype.getDelimiter=function(t){return this.delimiters[t]},t.prototype.getSizeVariant=function(t,e){return this.delimiters[t].variants&&(e=this.delimiters[t].variants[e]),this.sizeVariants[e]},t.prototype.getChar=function(t,e){return this.variant[t].chars[e]},t.prototype.getVariant=function(t){return this.variant[t]},t.prototype.getCssFont=function(t){return this.cssFontMap[t]||["serif",!1,!1]},t.prototype.getFamily=function(t){return this.cssFamilyPrefix?this.cssFamilyPrefix+", "+t:t},t.prototype.getRemappedChar=function(t,e){return(this.remapChars[t]||{})[e]},t.OPTIONS={},t.defaultVariants=[["normal"],["bold","normal"],["italic","normal"],["bold-italic","italic","bold"],["double-struck","bold"],["fraktur","normal"],["bold-fraktur","bold","fraktur"],["script","italic"],["bold-script","bold-italic","script"],["sans-serif","normal"],["bold-sans-serif","bold","sans-serif"],["sans-serif-italic","italic","sans-serif"],["sans-serif-bold-italic","bold-italic","bold-sans-serif"],["monospace","normal"]],t.defaultCssFonts={normal:["serif",!1,!1],bold:["serif",!1,!0],italic:["serif",!0,!1],"bold-italic":["serif",!0,!0],"double-struck":["serif",!1,!0],fraktur:["serif",!1,!1],"bold-fraktur":["serif",!1,!0],script:["cursive",!1,!1],"bold-script":["cursive",!1,!0],"sans-serif":["sans-serif",!1,!1],"bold-sans-serif":["sans-serif",!1,!0],"sans-serif-italic":["sans-serif",!0,!1],"sans-serif-bold-italic":["sans-serif",!0,!0],monospace:["monospace",!1,!1]},t.defaultCssFamilyPrefix="",t.VariantSmp={bold:[119808,119834,120488,120514,120782],italic:[119860,119886,120546,120572],"bold-italic":[119912,119938,120604,120630],script:[119964,119990],"bold-script":[120016,120042],fraktur:[120068,120094],"double-struck":[120120,120146,,,120792],"bold-fraktur":[120172,120198],"sans-serif":[120224,120250,,,120802],"bold-sans-serif":[120276,120302,120662,120688,120812],"sans-serif-italic":[120328,120354],"sans-serif-bold-italic":[120380,120406,120720,120746],monospace:[120432,120458,,,120822]},t.SmpRanges=[[0,65,90],[1,97,122],[2,913,937],[3,945,969],[4,48,57]],t.SmpRemap={119893:8462,119965:8492,119968:8496,119969:8497,119971:8459,119972:8464,119975:8466,119976:8499,119981:8475,119994:8495,119996:8458,120004:8500,120070:8493,120075:8460,120076:8465,120085:8476,120093:8488,120122:8450,120127:8461,120133:8469,120135:8473,120136:8474,120137:8477,120145:8484},t.SmpRemapGreekU={8711:25,1012:17},t.SmpRemapGreekL={977:27,981:29,982:31,1008:28,1009:30,1013:26,8706:25},t.defaultAccentMap={768:"\u02cb",769:"\u02ca",770:"\u02c6",771:"\u02dc",772:"\u02c9",774:"\u02d8",775:"\u02d9",776:"\xa8",778:"\u02da",780:"\u02c7",8594:"\u20d7",8242:"'",8243:"''",8244:"'''",8245:"`",8246:"``",8247:"```",8279:"''''",8400:"\u21bc",8401:"\u21c0",8406:"\u2190",8417:"\u2194",8432:"*",8411:"...",8412:"....",8428:"\u21c1",8429:"\u21bd",8430:"\u2190",8431:"\u2192"},t.defaultMoMap={45:"\u2212"},t.defaultMnMap={45:"\u2212"},t.defaultParams={x_height:.442,quad:1,num1:.676,num2:.394,num3:.444,denom1:.686,denom2:.345,sup1:.413,sup2:.363,sup3:.289,sub1:.15,sub2:.247,sup_drop:.386,sub_drop:.05,delim1:2.39,delim2:1,axis_height:.25,rule_thickness:.06,big_op_spacing1:.111,big_op_spacing2:.167,big_op_spacing3:.2,big_op_spacing4:.6,big_op_spacing5:.1,surd_height:.075,scriptspace:.05,nulldelimiterspace:.12,delimiterfactor:901,delimitershortfall:.3,min_rule_thickness:1.25},t.defaultDelimiters={},t.defaultChars={},t.defaultSizeVariants=[],t}();e.FontData=i},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},i=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},i=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},i=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.MmlMo=void 0;var a=Q(0),s=Q(112),l=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._texClass=null,e.lspace=5/18,e.rspace=5/18,e}return T(e,t),Object.defineProperty(e.prototype,"texClass",{get:function(){if(null===this._texClass){var t=this.getText(),e=o(this.handleExplicitForm(this.getForms()),3),Q=e[0],r=e[1],T=e[2],n=this.constructor.OPTABLE,i=n[Q][t]||n[r][t]||n[T][t];return i?i[2]:a.TEXCLASS.REL}return this._texClass},set:function(t){this._texClass=t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"kind",{get:function(){return"mo"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isEmbellished",{get:function(){return!0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"hasNewLine",{get:function(){return"newline"===this.attributes.get("linebreak")},enumerable:!1,configurable:!0}),e.prototype.coreParent=function(){for(var t=this,e=this,Q=this.factory.getNodeClass("math");e&&e.isEmbellished&&e.coreMO()===this&&!(e instanceof Q);)t=e,e=e.Parent;return t},e.prototype.coreText=function(t){if(!t)return"";if(t.isEmbellished)return t.coreMO().getText();for(;((t.isKind("mrow")||t.isKind("TeXAtom")||t.isKind("mstyle")||t.isKind("mphantom"))&&1===t.childNodes.length||t.isKind("munderover"))&&t.childNodes[0];)t=t.childNodes[0];return t.isToken?t.getText():""},e.prototype.hasSpacingAttributes=function(){return this.attributes.isSet("lspace")||this.attributes.isSet("rspace")},Object.defineProperty(e.prototype,"isAccent",{get:function(){var t=!1,e=this.coreParent().parent;if(e){var Q=e.isKind("mover")?e.childNodes[e.over].coreMO()?"accent":"":e.isKind("munder")?e.childNodes[e.under].coreMO()?"accentunder":"":e.isKind("munderover")?this===e.childNodes[e.over].coreMO()?"accent":this===e.childNodes[e.under].coreMO()?"accentunder":"":"";if(Q)t=void 0!==e.attributes.getExplicit(Q)?t:this.attributes.get("accent")}return t},enumerable:!1,configurable:!0}),e.prototype.setTeXclass=function(t){var e=this.attributes.getList("form","fence"),Q=e.form,r=e.fence;return void 0===this.getProperty("texClass")&&(this.attributes.isSet("lspace")||this.attributes.isSet("rspace"))?null:(r&&this.texClass===a.TEXCLASS.REL&&("prefix"===Q&&(this.texClass=a.TEXCLASS.OPEN),"postfix"===Q&&(this.texClass=a.TEXCLASS.CLOSE)),"\u2061"===this.getText()?(t&&(t.texClass=a.TEXCLASS.OP,t.setProperty("fnOP",!0)),this.texClass=this.prevClass=a.TEXCLASS.NONE,t):this.adjustTeXclass(t))},e.prototype.adjustTeXclass=function(t){var e=this.texClass,Q=this.prevClass;if(e===a.TEXCLASS.NONE)return t;if(t?(!t.getProperty("autoOP")||e!==a.TEXCLASS.BIN&&e!==a.TEXCLASS.REL||(Q=t.texClass=a.TEXCLASS.ORD),Q=this.prevClass=t.texClass||a.TEXCLASS.ORD,this.prevLevel=this.attributes.getInherited("scriptlevel")):Q=this.prevClass=a.TEXCLASS.NONE,e!==a.TEXCLASS.BIN||Q!==a.TEXCLASS.NONE&&Q!==a.TEXCLASS.BIN&&Q!==a.TEXCLASS.OP&&Q!==a.TEXCLASS.REL&&Q!==a.TEXCLASS.OPEN&&Q!==a.TEXCLASS.PUNCT)if(Q!==a.TEXCLASS.BIN||e!==a.TEXCLASS.REL&&e!==a.TEXCLASS.CLOSE&&e!==a.TEXCLASS.PUNCT){if(e===a.TEXCLASS.BIN){for(var r=this,T=this.parent;T&&T.parent&&T.isEmbellished&&(1===T.childNodes.length||!T.isKind("mrow")&&T.core()===r);)r=T,T=T.parent;T.childNodes[T.childNodes.length-1]===r&&(this.texClass=a.TEXCLASS.ORD)}}else t.texClass=this.prevClass=a.TEXCLASS.ORD;else this.texClass=a.TEXCLASS.ORD;return this},e.prototype.setInheritedAttributes=function(e,Q,r,T){var n,a;void 0===e&&(e={}),void 0===Q&&(Q=!1),void 0===r&&(r=0),void 0===T&&(T=!1),t.prototype.setInheritedAttributes.call(this,e,Q,r,T);var s=this.getText(),l=o(this.handleExplicitForm(this.getForms()),3),c=l[0],u=l[1],p=l[2];this.attributes.setInherited("form",c);var h=this.constructor.OPTABLE,f=h[c][s]||h[u][s]||h[p][s];if(f){void 0===this.getProperty("texClass")&&(this.texClass=f[2]);try{for(var d=i(Object.keys(f[3]||{})),L=d.next();!L.done;L=d.next()){var H=L.value;this.attributes.setInherited(H,f[3][H])}}catch(t){n={error:t}}finally{try{L&&!L.done&&(a=d.return)&&a.call(d)}finally{if(n)throw n.error}}this.lspace=(f[0]+1)/18,this.rspace=(f[1]+1)/18}else{var m=this.getRange(s);if(m){void 0===this.getProperty("texClass")&&(this.texClass=m[2]);var y=this.constructor.MMLSPACING[m[2]];this.lspace=(y[0]+1)/18,this.rspace=(y[1]+1)/18}}},e.prototype.getForms=function(){for(var t=this,e=this.parent,Q=this.Parent;Q&&Q.isEmbellished;)t=e,e=Q.parent,Q=Q.Parent;if(e&&e.isKind("mrow")&&1!==e.nonSpaceLength()){if(e.firstNonSpace()===t)return["prefix","infix","postfix"];if(e.lastNonSpace()===t)return["postfix","infix","prefix"]}return["infix","prefix","postfix"]},e.prototype.handleExplicitForm=function(t){if(this.attributes.isSet("form")){var e=this.attributes.get("form");t=[e].concat(t.filter((function(t){return t!==e})))}return t},e.prototype.getRange=function(t){var e,Q;if(!t.match(/^[\uD800-\uDBFF]?.$/))return null;var r=t.codePointAt(0),T=this.constructor.RANGES;try{for(var n=i(T),o=n.next();!o.done;o=n.next()){var a=o.value;if(a[0]<=r&&r<=a[1])return a;if(r=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},T=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.SubHandlers=e.SubHandler=e.MapHandler=void 0;var n,o=Q(21),i=Q(30);!function(t){var e=new Map;t.register=function(t){e.set(t.name,t)},t.getMap=function(t){return e.get(t)}}(n=e.MapHandler||(e.MapHandler={}));var a=function(){function t(){this._configuration=new o.PrioritizedList,this._fallback=new i.FunctionList}return t.prototype.add=function(t,e,Q){var T,i;void 0===Q&&(Q=o.PrioritizedList.DEFAULTPRIORITY);try{for(var a=r(t.slice().reverse()),s=a.next();!s.done;s=a.next()){var l=s.value,c=n.getMap(l);if(!c)return void this.warn("Configuration "+l+" not found! Omitted.");this._configuration.add(c,Q)}}catch(t){T={error:t}}finally{try{s&&!s.done&&(i=a.return)&&i.call(a)}finally{if(T)throw T.error}}e&&this._fallback.add(e,Q)},t.prototype.parse=function(t){var e,Q;try{for(var n=r(this._configuration),o=n.next();!o.done;o=n.next()){var i=o.value.item.parse(t);if(i)return i}}catch(t){e={error:t}}finally{try{o&&!o.done&&(Q=n.return)&&Q.call(n)}finally{if(e)throw e.error}}var a=T(t,2),s=a[0],l=a[1];this._fallback.toArray()[0].item(s,l)},t.prototype.lookup=function(t){var e=this.applicable(t);return e?e.lookup(t):null},t.prototype.contains=function(t){return!!this.applicable(t)},t.prototype.toString=function(){var t,e,Q=[];try{for(var T=r(this._configuration),n=T.next();!n.done;n=T.next()){var o=n.value.item;Q.push(o.name)}}catch(e){t={error:e}}finally{try{n&&!n.done&&(e=T.return)&&e.call(T)}finally{if(t)throw t.error}}return Q.join(", ")},t.prototype.applicable=function(t){var e,Q;try{for(var T=r(this._configuration),n=T.next();!n.done;n=T.next()){var o=n.value.item;if(o.contains(t))return o}}catch(t){e={error:t}}finally{try{n&&!n.done&&(Q=T.return)&&Q.call(T)}finally{if(e)throw e.error}}return null},t.prototype.retrieve=function(t){var e,Q;try{for(var T=r(this._configuration),n=T.next();!n.done;n=T.next()){var o=n.value.item;if(o.name===t)return o}}catch(t){e={error:t}}finally{try{n&&!n.done&&(Q=T.return)&&Q.call(T)}finally{if(e)throw e.error}}return null},t.prototype.warn=function(t){console.log("TexParser Warning: "+t)},t}();e.SubHandler=a;var s=function(){function t(){this.map=new Map}return t.prototype.add=function(t,e,Q){var T,n;void 0===Q&&(Q=o.PrioritizedList.DEFAULTPRIORITY);try{for(var i=r(Object.keys(t)),s=i.next();!s.done;s=i.next()){var l=s.value,c=this.get(l);c||(c=new a,this.set(l,c)),c.add(t[l],e[l],Q)}}catch(t){T={error:t}}finally{try{s&&!s.done&&(n=i.return)&&n.call(i)}finally{if(T)throw T.error}}},t.prototype.set=function(t,e){this.map.set(t,e)},t.prototype.get=function(t){return this.map.get(t)},t.prototype.retrieve=function(t){var e,Q;try{for(var T=r(this.map.values()),n=T.next();!n.done;n=T.next()){var o=n.value.retrieve(t);if(o)return o}}catch(t){e={error:t}}finally{try{n&&!n.done&&(Q=T.return)&&Q.call(T)}finally{if(e)throw e.error}}return null},t.prototype.keys=function(){return this.map.keys()},t}();e.SubHandlers=s},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.NEW_OPS=e.AmsMethods=void 0;var r=Q(9),T=Q(8),n=Q(13),o=Q(12),i=Q(5),a=Q(26),s=Q(16),l=Q(0);e.AmsMethods={},e.AmsMethods.AmsEqnArray=function(t,e,Q,T,n,o,i){var a=t.GetBrackets("\\begin{"+e.getName()+"}"),l=s.default.EqnArray(t,e,Q,T,n,o,i);return r.default.setArrayAlign(l,a)},e.AmsMethods.AlignAt=function(t,Q,T,n){var o,a,s=Q.getName(),l="",c=[];if(n||(a=t.GetBrackets("\\begin{"+s+"}")),(o=t.GetArgument("\\begin{"+s+"}")).match(/[^0-9]/))throw new i.default("PositiveIntegerArg","Argument to %1 must me a positive integer","\\begin{"+s+"}");for(var u=parseInt(o,10);u>0;)l+="rl",c.push("0em 0em"),u--;var p=c.join(" ");if(n)return e.AmsMethods.EqnArray(t,Q,T,n,l,p);var h=e.AmsMethods.EqnArray(t,Q,T,n,l,p);return r.default.setArrayAlign(h,a)},e.AmsMethods.Multline=function(t,e,Q){t.Push(e),r.default.checkEqnEnv(t);var T=t.itemFactory.create("multline",Q,t.stack);return T.arraydef={displaystyle:!0,rowspacing:".5em",columnwidth:"100%",width:t.options.multlineWidth,side:t.options.tagSide,minlabelspacing:t.options.tagIndent},T},e.NEW_OPS="ams-declare-ops",e.AmsMethods.HandleDeclareOp=function(t,Q){var T=t.GetStar()?"":"\\nolimits\\SkipLimits",n=r.default.trimSpaces(t.GetArgument(Q));"\\"===n.charAt(0)&&(n=n.substr(1));var o=t.GetArgument(Q);o.match(/\\text/)||(o=o.replace(/\*/g,"\\text{*}").replace(/-/g,"\\text{-}")),t.configuration.handlers.retrieve(e.NEW_OPS).add(n,new a.Macro(n,e.AmsMethods.Macro,["\\mathop{\\rm "+o+"}"+T]))},e.AmsMethods.HandleOperatorName=function(t,e){var Q=t.GetStar()?"":"\\nolimits\\SkipLimits",T=r.default.trimSpaces(t.GetArgument(e));T.match(/\\text/)||(T=T.replace(/\*/g,"\\text{*}").replace(/-/g,"\\text{-}")),t.string="\\mathop{\\rm "+T+"}"+Q+" "+t.string.slice(t.i),t.i=0},e.AmsMethods.SkipLimits=function(t,e){var Q=t.GetNext(),r=t.i;"\\"===Q&&++t.i&&"limits"!==t.GetCS()&&(t.i=r)},e.AmsMethods.MultiIntegral=function(t,e,Q){var r=t.GetNext();if("\\"===r){var T=t.i;r=t.GetArgument(e),t.i=T,"\\limits"===r&&(Q="\\idotsint"===e?"\\!\\!\\mathop{\\,\\,"+Q+"}":"\\!\\!\\!\\mathop{\\,\\,\\,"+Q+"}")}t.string=Q+" "+t.string.slice(t.i),t.i=0},e.AmsMethods.xArrow=function(t,e,Q,n,i){var a={width:"+"+r.default.Em((n+i)/18),lspace:r.default.Em(n/18)},s=t.GetBrackets(e),c=t.ParseArg(e),u=t.create("token","mo",{stretchy:!0,texClass:l.TEXCLASS.REL},String.fromCodePoint(Q)),p=t.create("node","munderover",[u]),h=t.create("node","mpadded",[c],a);if(T.default.setAttribute(h,"voffset",".15em"),T.default.setChild(p,p.over,h),s){var f=new o.default(s,t.stack.env,t.configuration).mml();h=t.create("node","mpadded",[f],a),T.default.setAttribute(h,"voffset","-.24em"),T.default.setChild(p,p.under,h)}T.default.setProperty(p,"subsupOK",!0),t.Push(p)},e.AmsMethods.HandleShove=function(t,e,Q){var r=t.stack.Top();if("multline"!==r.kind)throw new i.default("CommandOnlyAllowedInEnv","%1 only allowed in %2 environment",t.currentCS,"multline");if(r.Size())throw new i.default("CommandAtTheBeginingOfLine","%1 must come at the beginning of the line",t.currentCS);r.setProperty("shove",Q)},e.AmsMethods.CFrac=function(t,e){var Q=r.default.trimSpaces(t.GetBrackets(e,"")),a=t.GetArgument(e),s=t.GetArgument(e),l={l:n.TexConstant.Align.LEFT,r:n.TexConstant.Align.RIGHT,"":""},c=new o.default("\\strut\\textstyle{"+a+"}",t.stack.env,t.configuration).mml(),u=new o.default("\\strut\\textstyle{"+s+"}",t.stack.env,t.configuration).mml(),p=t.create("node","mfrac",[c,u]);if(null==(Q=l[Q]))throw new i.default("IllegalAlign","Illegal alignment specified in %1",t.currentCS);Q&&T.default.setProperties(p,{numalign:Q,denomalign:Q}),t.Push(p)},e.AmsMethods.Genfrac=function(t,e,Q,n,o,a){null==Q&&(Q=t.GetDelimiterArg(e)),null==n&&(n=t.GetDelimiterArg(e)),null==o&&(o=t.GetArgument(e)),null==a&&(a=r.default.trimSpaces(t.GetArgument(e)));var s=t.ParseArg(e),l=t.ParseArg(e),c=t.create("node","mfrac",[s,l]);if(""!==o&&T.default.setAttribute(c,"linethickness",o),(Q||n)&&(T.default.setProperty(c,"withDelims",!0),c=r.default.fixedFence(t.configuration,Q,c,n)),""!==a){var u=parseInt(a,10),p=["D","T","S","SS"][u];if(null==p)throw new i.default("BadMathStyleFor","Bad math style for %1",t.currentCS);c=t.create("node","mstyle",[c]),"D"===p?T.default.setProperties(c,{displaystyle:!0,scriptlevel:0}):T.default.setProperties(c,{displaystyle:!1,scriptlevel:u-1})}t.Push(c)},e.AmsMethods.HandleTag=function(t,e){if(!t.tags.currentTag.taggable&&t.tags.env)throw new i.default("CommandNotAllowedInEnv","%1 not allowed in %2 environment",t.currentCS,t.tags.env);if(t.tags.currentTag.tag)throw new i.default("MultipleCommand","Multiple %1",t.currentCS);var Q=t.GetStar(),T=r.default.trimSpaces(t.GetArgument(e));t.tags.tag(T,Q)},e.AmsMethods.HandleNoTag=s.default.HandleNoTag,e.AmsMethods.HandleRef=s.default.HandleRef,e.AmsMethods.Macro=s.default.Macro,e.AmsMethods.Accent=s.default.Accent,e.AmsMethods.Tilde=s.default.Tilde,e.AmsMethods.Array=s.default.Array,e.AmsMethods.Spacer=s.default.Spacer,e.AmsMethods.NamedOp=s.default.NamedOp,e.AmsMethods.EqnArray=s.default.EqnArray},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.TeXFont=void 0;var o=Q(6),i=Q(292),a=Q(220),s=Q(222),l=Q(293),c=Q(225),u=Q(227),p=Q(229),h=Q(231),f=Q(233),d=Q(235),L=Q(237),H=Q(239),m=Q(241),y=Q(243),v=Q(294),g=Q(295),b=Q(247),M=Q(249),V=Q(251),x=Q(253),O=Q(255),_=Q(257),S=Q(259),E=Q(261),C=Q(263),w=Q(265),A=function(t){function e(){var e,Q,r=t.call(this)||this,T=r.constructor;try{for(var o=n(Object.keys(T.variantCacheIds)),i=o.next();!i.done;i=o.next()){var a=i.value;r.variant[a].cacheID="TEX-"+T.variantCacheIds[a]}}catch(t){e={error:t}}finally{try{i&&!i.done&&(Q=o.return)&&Q.call(o)}finally{if(e)throw e.error}}return r}return T(e,t),e.defaultDelimiters=w.delimiters,e.defaultChars={normal:d.normal,bold:s.bold,italic:p.italic,"bold-italic":a.boldItalic,"double-struck":l.doubleStruck,fraktur:u.fraktur,"bold-fraktur":c.frakturBold,script:g.script,"bold-script":v.scriptBold,"sans-serif":y.sansSerif,"bold-sans-serif":H.sansSerifBold,"sans-serif-italic":m.sansSerifItalic,"sans-serif-bold-italic":L.sansSerifBoldItalic,monospace:f.monospace,"-smallop":b.smallop,"-largeop":h.largeop,"-size3":S.texSize3,"-size4":E.texSize4,"-tex-calligraphic":V.texCalligraphic,"-tex-bold-calligraphic":M.texCalligraphicBold,"-tex-mathit":x.texMathit,"-tex-oldstyle":_.texOldstyle,"-tex-bold-oldstyle":O.texOldstyleBold,"-tex-variant":C.texVariant},e.variantCacheIds={normal:"N",bold:"B",italic:"I","bold-italic":"BI","double-struck":"D",fraktur:"F","bold-fraktur":"BF",script:"S","bold-script":"BS","sans-serif":"SS","bold-sans-serif":"BSS","sans-serif-italic":"SSI","sans-serif-bold-italic":"SSBI",monospace:"M","-smallop":"SO","-largeop":"LO","-size3":"S3","-size4":"S4","-tex-calligraphic":"C","-tex-bold-calligraphic":"BC","-tex-mathit":"MI","-tex-oldstyle":"OS","-tex-bold-oldstyle":"BOS","-tex-variant":"V"},e}(i.CommonTeXFontMixin(o.SVGFontData));e.TeXFont=A},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractItem=void 0;var o=Q(275),i=Q(17),a=Q(10),s=function(t){function e(e,Q,r,T){var n=t.call(this,e,Q)||this;return n._content=r,n.disabled=!1,n.callbacks=[],n._id=T||r,n}return T(e,t),Object.defineProperty(e.prototype,"content",{get:function(){return this._content},set:function(t){this._content=t,this.generateHtml(),this.menu&&this.menu.generateHtml()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"id",{get:function(){return this._id},enumerable:!1,configurable:!0}),e.prototype.press=function(){this.disabled||(this.executeAction(),this.executeCallbacks_())},e.prototype.executeAction=function(){},e.prototype.registerCallback=function(t){-1===this.callbacks.indexOf(t)&&this.callbacks.push(t)},e.prototype.unregisterCallback=function(t){var e=this.callbacks.indexOf(t);-1!==e&&this.callbacks.splice(e,1)},e.prototype.mousedown=function(t){this.press(),this.stop(t)},e.prototype.mouseover=function(t){this.focus(),this.stop(t)},e.prototype.mouseout=function(t){this.deactivate(),this.stop(t)},e.prototype.generateHtml=function(){t.prototype.generateHtml.call(this);var e=this.html;e.setAttribute("aria-disabled","false"),e.textContent=this.content},e.prototype.activate=function(){this.disabled||this.html.classList.add(a.HtmlClasses.MENUACTIVE)},e.prototype.deactivate=function(){this.html.classList.remove(a.HtmlClasses.MENUACTIVE)},e.prototype.focus=function(){this.menu.focused=this,t.prototype.focus.call(this),this.activate()},e.prototype.unfocus=function(){this.deactivate(),t.prototype.unfocus.call(this)},e.prototype.escape=function(t){i.MenuUtil.close(this)},e.prototype.up=function(t){this.menu.up(t)},e.prototype.down=function(t){this.menu.down(t)},e.prototype.left=function(t){this.menu.left(t)},e.prototype.right=function(t){this.menu.right(t)},e.prototype.space=function(t){this.press()},e.prototype.disable=function(){this.disabled=!0;var t=this.html;t.classList.add(a.HtmlClasses.MENUDISABLED),t.setAttribute("aria-disabled","true")},e.prototype.enable=function(){this.disabled=!1;var t=this.html;t.classList.remove(a.HtmlClasses.MENUDISABLED),t.removeAttribute("aria-disabled")},e.prototype.executeCallbacks_=function(){var t,e;try{for(var Q=n(this.callbacks),r=Q.next();!r.done;r=Q.next()){var T=r.value;try{T(this)}catch(t){i.MenuUtil.error(t,"Callback for menu entry "+this.id+" failed.")}}}catch(e){t={error:e}}finally{try{r&&!r.done&&(e=Q.return)&&e.call(Q)}finally{if(t)throw t.error}}},e}(o.AbstractEntry);e.AbstractItem=s},function(t,e,Q){"use strict";var r=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},T=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},n=this&&this.__spread||function(){for(var t=[],e=0;e1&&Q.match(e.operatorName)&&this.texClass===o.TEXCLASS.ORD&&(this.texClass=o.TEXCLASS.OP,this.setProperty("autoOP",!0)),this},e.defaults=n({},o.AbstractMmlTokenNode.defaults),e.operatorName=/^[a-z][a-z0-9]*$/i,e.singleCharacter=/^[\uD800-\uDBFF]?.$/,e}(o.AbstractMmlTokenNode);e.MmlMi=i},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__assign||function(){return(n=Object.assign||function(t){for(var e,Q=1,r=arguments.length;Q0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},T=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.clearDocument=e.saveDocument=e.makeBsprAttributes=e.removeProperty=e.getProperty=e.setProperty=e.balanceRules=void 0;var o=Q(8),i=Q(9),a=null,s=null,l=function(t){return s.root=t,a.outputJax.getBBox(s,a).w},c=function(t){for(var e=0;t&&!o.default.isType(t,"mtable");){if(o.default.isType(t,"text"))return null;o.default.isType(t,"mrow")?(t=t.childNodes[0],e=0):(t=t.parent.childNodes[e],e++)}return t},u=function(t,e){return t.childNodes["up"===e?1:0].childNodes[0].childNodes[0].childNodes[0].childNodes[0]},p=function(t,e){return t.childNodes[e].childNodes[0].childNodes[0]},h=function(t){return p(t,0)},f=function(t){return p(t,t.childNodes.length-1)},d=function(t,e){return t.childNodes["up"===e?0:1].childNodes[0].childNodes[0].childNodes[0]},L=function(t){for(;t&&!o.default.isType(t,"mtd");)t=t.parent;return t},H=function(t){return t.parent.childNodes[t.parent.childNodes.indexOf(t)+1]},m=function(t){for(;t&&null==e.getProperty(t,"inference");)t=t.parent;return t},y=function(t,e,Q){void 0===Q&&(Q=!1);var r=0;if(t===e)return r;if(t!==e.parent){var T=t.childNodes,n=Q?T.length-1:0;o.default.isType(T[n],"mspace")&&(r+=l(T[n])),t=e.parent}if(t===e)return r;var i=t.childNodes,a=Q?i.length-1:0;return i[a]!==e&&(r+=l(i[a])),r},v=function(t,Q){void 0===Q&&(Q=!1);var r=c(t),T=d(r,e.getProperty(r,"inferenceRule"));return y(t,r,Q)+(l(r)-l(T))/2},g=function(t,Q,r,T){if(void 0===T&&(T=!1),e.getProperty(Q,"inferenceRule")||e.getProperty(Q,"labelledRule")){var n=t.nodeFactory.create("node","mrow");Q.parent.replaceChild(n,Q),n.setChildren([Q]),b(Q,n),Q=n}var a=T?Q.childNodes.length-1:0,s=Q.childNodes[a];o.default.isType(s,"mspace")?o.default.setAttribute(s,"width",i.default.Em(i.default.dimen2em(o.default.getAttribute(s,"width"))+r)):(s=t.nodeFactory.create("node","mspace",[],{width:i.default.Em(r)}),T?Q.appendChild(s):(s.parent=Q,Q.childNodes.unshift(s)))},b=function(t,Q){["inference","proof","maxAdjust","labelledRule"].forEach((function(r){var T=e.getProperty(t,r);null!=T&&(e.setProperty(Q,r,T),e.removeProperty(t,r))}))},M=function(t,Q,r,T,n){var o=t.nodeFactory.create("node","mspace",[],{width:i.default.Em(n)});if("left"===T){var a=Q.childNodes[r].childNodes[0];o.parent=a,a.childNodes.unshift(o)}else Q.childNodes[r].appendChild(o);e.setProperty(Q.parent,"sequentAdjust_"+T,n)},V=function(t,Q){for(var r=Q.pop();Q.length;){var n=Q.pop(),o=T(x(r,n),2),i=o[0],a=o[1];e.getProperty(r.parent,"axiom")&&(M(t,i<0?r:n,0,"left",Math.abs(i)),M(t,a<0?r:n,2,"right",Math.abs(a))),r=n}},x=function(t,e){var Q=l(t.childNodes[2]),r=l(e.childNodes[2]);return[l(t.childNodes[0])-l(e.childNodes[0]),Q-r]};e.balanceRules=function(t){var Q,r;s=new t.document.options.MathItem("",null,t.math.display);var T=t.data;!function(t){var Q=t.nodeLists.sequent;if(Q)for(var r=Q.length-1,T=void 0;T=Q[r];r--)if(e.getProperty(T,"sequentProcessed"))e.removeProperty(T,"sequentProcessed");else{var n=[],o=m(T);if(1===e.getProperty(o,"inference")){for(n.push(T);1===e.getProperty(o,"inference");){o=c(o);var i=h(u(o,e.getProperty(o,"inferenceRule"))),a=e.getProperty(i,"inferenceRule")?d(i,e.getProperty(i,"inferenceRule")):i;e.getProperty(a,"sequent")&&(T=a.childNodes[0],n.push(T),e.setProperty(T,"sequentProcessed",!0)),o=i}V(t,n)}}}(T);var o=T.nodeLists.inference||[];try{for(var i=n(o),a=i.next();!a.done;a=i.next()){var l=a.value,p=e.getProperty(l,"proof"),b=c(l),M=u(b,e.getProperty(b,"inferenceRule")),x=h(M);if(e.getProperty(x,"inference")){var O=v(x);if(O){g(T,x,-O);var _=y(l,b,!1);g(T,l,O-_)}}var S=f(M);if(null!=e.getProperty(S,"inference")){var E=v(S,!0);g(T,S,-E,!0);var C=y(l,b,!0),w=e.getProperty(l,"maxAdjust");null!=w&&(E=Math.max(E,w));var A=void 0;if(!p&&(A=L(l))){var P=H(A);if(P){var N=T.nodeFactory.create("node","mspace",[],{width:E-C+"em"});P.appendChild(N),l.removeProperty("maxAdjust")}else{var k=m(A);k&&(E=e.getProperty(k,"maxAdjust")?Math.max(e.getProperty(k,"maxAdjust"),E):E,e.setProperty(k,"maxAdjust",E))}}else g(T,e.getProperty(l,"proof")?l:l.parent,E-C,!0)}}}catch(t){Q={error:t}}finally{try{a&&!a.done&&(r=i.return)&&r.call(i)}finally{if(Q)throw Q.error}}};var O=((r={}).bspr_maxAdjust=!0,r);e.setProperty=function(t,e,Q){o.default.setProperty(t,"bspr_"+e,Q)},e.getProperty=function(t,e){return o.default.getProperty(t,"bspr_"+e)},e.removeProperty=function(t,e){t.removeProperty("bspr_"+e)},e.makeBsprAttributes=function(t){t.data.root.walkTree((function(t,e){var Q=[];t.getPropertyNames().forEach((function(e){!O[e]&&e.match(RegExp("^bspr_"))&&Q.push(e+":"+t.getProperty(e))})),Q.length&&o.default.setAttribute(t,"semantics",Q.join(";"))}))},e.saveDocument=function(t){if(!("getBBox"in(a=t.document).outputJax))throw Error("The bussproofs extension requires an output jax with a getBBox() method")},e.clearDocument=function(t){a=null}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r,T=Q(9),n=Q(5),o=Q(26);!function(t){function e(t,e){return t.string.substr(t.i,e.length)!==e||e.match(/\\[a-z]+$/i)&&t.string.charAt(t.i+e.length).match(/[a-z]/i)?0:(t.i+=e.length,1)}t.disassembleSymbol=function(t,e){var Q=[t,e.char];if(e.attributes)for(var r in e.attributes)Q.push(r),Q.push(e.attributes[r]);return Q},t.assembleSymbol=function(t){for(var e=t[0],Q=t[1],r={},T=2;T0?[o.toString()].concat(T):o;t.i++}throw new n.default("MissingReplacementString","Missing replacement string for definition of %1",e)},t.GetParameter=function(t,Q,r){if(null==r)return t.GetArgument(Q);for(var T=t.i,o=0,i=0;t.i0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.CommonArrow=e.CommonDiagonalArrow=e.CommonDiagonalStrike=e.CommonBorder2=e.CommonBorder=e.arrowBBox=e.diagonalArrowDef=e.arrowDef=e.arrowBBoxW=e.arrowBBoxHD=e.arrowHead=e.fullBorder=e.fullPadding=e.fullBBox=e.sideNames=e.sideIndex=e.SOLID=e.PADDING=e.THICKNESS=e.ARROWY=e.ARROWDX=e.ARROWX=void 0,e.ARROWX=4,e.ARROWDX=1,e.ARROWY=2,e.THICKNESS=.067,e.PADDING=.2,e.SOLID=e.THICKNESS+"em solid",e.sideIndex={top:0,right:1,bottom:2,left:3},e.sideNames=Object.keys(e.sideIndex),e.fullBBox=function(t){return new Array(4).fill(t.thickness+t.padding)},e.fullPadding=function(t){return new Array(4).fill(t.padding)},e.fullBorder=function(t){return new Array(4).fill(t.thickness)},e.arrowHead=function(t){return Math.max(t.padding,t.thickness*(t.arrowhead.x+t.arrowhead.dx+1))},e.arrowBBoxHD=function(t,e){if(t.childNodes[0]){var Q=t.childNodes[0].getBBox(),r=Q.h,T=Q.d;e[0]=e[2]=Math.max(0,t.thickness*t.arrowhead.y-(r+T)/2)}return e},e.arrowBBoxW=function(t,e){if(t.childNodes[0]){var Q=t.childNodes[0].getBBox().w;e[1]=e[3]=Math.max(0,t.thickness*t.arrowhead.y-Q/2)}return e},e.arrowDef={up:[-Math.PI/2,!1,!0,"verticalstrike"],down:[Math.PI/2,!1,!0,"verticakstrike"],right:[0,!1,!1,"horizontalstrike"],left:[Math.PI,!1,!1,"horizontalstrike"],updown:[Math.PI/2,!0,!0,"verticalstrike uparrow downarrow"],leftright:[0,!0,!1,"horizontalstrike leftarrow rightarrow"]},e.diagonalArrowDef={updiagonal:[-1,0,!1,"updiagonalstrike northeastarrow"],northeast:[-1,0,!1,"updiagonalstrike updiagonalarrow"],southeast:[1,0,!1,"downdiagonalstrike"],northwest:[1,Math.PI,!1,"downdiagonalstrike"],southwest:[-1,Math.PI,!1,"updiagonalstrike"],northeastsouthwest:[-1,0,!0,"updiagonalstrike northeastarrow updiagonalarrow southwestarrow"],northwestsoutheast:[1,0,!0,"downdiagonalstrike northwestarrow southeastarrow"]},e.arrowBBox={up:function(t){return e.arrowBBoxW(t,[e.arrowHead(t),0,t.padding,0])},down:function(t){return e.arrowBBoxW(t,[t.padding,0,e.arrowHead(t),0])},right:function(t){return e.arrowBBoxHD(t,[0,e.arrowHead(t),0,t.padding])},left:function(t){return e.arrowBBoxHD(t,[0,t.padding,0,e.arrowHead(t)])},updown:function(t){return e.arrowBBoxW(t,[e.arrowHead(t),0,e.arrowHead(t),0])},leftright:function(t){return e.arrowBBoxHD(t,[0,e.arrowHead(t),0,e.arrowHead(t)])}},e.CommonBorder=function(t){return function(Q){var r=e.sideIndex[Q];return[Q,{renderer:t,bbox:function(t){var e=[0,0,0,0];return e[r]=t.thickness+t.padding,e},border:function(t){var e=[0,0,0,0];return e[r]=t.thickness,e}}]}},e.CommonBorder2=function(t){return function(Q,r,T){var n=e.sideIndex[r],o=e.sideIndex[T];return[Q,{renderer:t,bbox:function(t){var e=t.thickness+t.padding,Q=[0,0,0,0];return Q[n]=Q[o]=e,Q},border:function(t){var e=[0,0,0,0];return e[n]=e[o]=t.thickness,e},remove:r+" "+T}]}},e.CommonDiagonalStrike=function(t){return function(Q){var r="mjx-"+Q.charAt(0)+"strike";return[Q+"diagonalstrike",{renderer:t(r),bbox:e.fullBBox}]}},e.CommonDiagonalArrow=function(t){return function(Q){var T=r(e.diagonalArrowDef[Q],4),n=T[0],o=T[1],i=T[2];return[Q+"arrow",{renderer:function(e,Q){var r=e.arrowData(),T=r.a,a=r.W,s=e.arrow(a,n*(T-o),i);t(e,s)},bbox:function(t){var e=t.arrowData(),Q=e.a,T=e.x,n=e.y,o=r([t.arrowhead.x,t.arrowhead.y,t.arrowhead.dx],3),i=o[0],a=o[1],s=o[2],l=r(t.getArgMod(i+s,a),2),c=l[0],u=l[1],p=n+(c>Q?t.thickness*u*Math.sin(c-Q):0),h=T+(c>Math.PI/2-Q?t.thickness*u*Math.sin(c+Q-Math.PI/2):0);return[p,h,p,h]},remove:T[3]}]}},e.CommonArrow=function(t){return function(Q){var T=r(e.arrowDef[Q],4),n=T[0],o=T[1],i=T[2],a=T[3];return[Q+"arrow",{renderer:function(e,Q){var r=e.getBBox(),T=r.w,a=r.h,s=r.d,l=i?a+s:T,c=e.arrow(l,n,o);t(e,c)},bbox:e.arrowBBox[Q],remove:a}]}}},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.CommonMsubsupMixin=e.CommonMsupMixin=e.CommonMsubMixin=void 0,e.CommonMsubMixin=function(t){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),Object.defineProperty(e.prototype,"script",{get:function(){return this.childNodes[this.node.sub]},enumerable:!1,configurable:!0}),e.prototype.getOffset=function(t,e){return[0,-this.getV(t,e)]},e}(t)},e.CommonMsupMixin=function(t){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),Object.defineProperty(e.prototype,"script",{get:function(){return this.childNodes[this.node.sup]},enumerable:!1,configurable:!0}),e.prototype.getOffset=function(t,e){return[(this.baseCore.bbox.ic?.05*this.baseCore.bbox.ic+.05:0)*this.coreScale(),this.getU(t,e)]},e}(t)},e.CommonMsubsupMixin=function(t){return function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.UVQ=null,e}return T(e,t),Object.defineProperty(e.prototype,"subChild",{get:function(){return this.childNodes[this.node.sub]},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"supChild",{get:function(){return this.childNodes[this.node.sup]},enumerable:!1,configurable:!0}),e.prototype.computeBBox=function(t,e){void 0===e&&(e=!1);var Q=this.baseChild.getBBox(),r=this.subChild.getBBox(),T=this.supChild.getBBox();t.empty(),t.append(Q);var o=t.w,i=n(this.getUVQ(Q,r,T),2),a=i[0],s=i[1],l=this.baseCore.bbox.ic?this.coreIC()*this.coreScale():0;t.combine(r,o,s),t.combine(T,o+l,a),t.w+=this.font.params.scriptspace,t.clean(),this.setChildPWidths(e)},e.prototype.getUVQ=function(t,e,Q){if(this.UVQ)return this.UVQ;var r=this.font.params,T=3*r.rule_thickness,o=this.length2em(this.node.attributes.get("subscriptshift"),r.sub2),i=this.isCharBase()?0:t.d*t.rscale+r.sub_drop*e.rscale,a=n([this.getU(t,Q),Math.max(i,o)],2),s=a[0],l=a[1],c=s-Q.d*Q.rscale-(e.h*e.rscale-l);if(c0&&(s+=u,l-=u)}return s=Math.max(this.length2em(this.node.attributes.get("superscriptshift"),s),s),l=Math.max(this.length2em(this.node.attributes.get("subscriptshift"),l),l),c=s-Q.d*Q.rscale-(e.h*e.rscale-l),this.UVQ=[s,-l,c],this.UVQ},e}(t)}},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},o=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.SVGmsubsup=e.SVGmsup=e.SVGmsub=void 0;var o=Q(207),i=Q(46),a=Q(46),s=Q(46),l=Q(39),c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.kind=l.MmlMsub.prototype.kind,e.useIC=!1,e}(i.CommonMsubMixin(o.SVGscriptbase));e.SVGmsub=c;var u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.kind=l.MmlMsup.prototype.kind,e.useIC=!0,e}(a.CommonMsupMixin(o.SVGscriptbase));e.SVGmsup=u;var p=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.toSVG=function(t){var e=this.standardSVGnode(t),Q=n([this.baseChild,this.supChild,this.subChild],3),r=Q[0],T=Q[1],o=Q[2],i=r.getBBox(),a=n(this.getUVQ(i,o.getBBox(),T.getBBox()),2),s=a[0],l=a[1],c=this.baseCore.bbox.ic?this.coreIC()*this.coreScale():0;r.toSVG(e),T.toSVG(e),o.toSVG(e),o.place(i.w*i.rscale,l),T.place(i.w*i.rscale+c,s)},e.kind=l.MmlMsubsup.prototype.kind,e.useIC=!1,e}(s.CommonMsubsupMixin(o.SVGscriptbase));e.SVGmsubsup=p},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.HTMLHandler=void 0;var n=Q(108),o=Q(122),i=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.documentClass=o.HTMLDocument,e}return T(e,t),e.prototype.handlesDocument=function(t){var e=this.adaptor;if("string"==typeof t)try{t=e.parse(t,"text/html")}catch(t){}return t instanceof e.window.Document||t instanceof e.window.HTMLElement||t instanceof e.window.DocumentFragment},e.prototype.create=function(e,Q){var r=this.adaptor;if("string"==typeof e)e=r.parse(e,"text/html");else if(e instanceof r.window.HTMLElement||e instanceof r.window.DocumentFragment){var T=e;e=r.parse("","text/html"),r.append(r.body(e),T)}return t.prototype.create.call(this,e,Q)},e}(n.AbstractHandler);e.HTMLHandler=i},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__assign||function(){return(n=Object.assign||function(t){for(var e,Q=1,r=arguments.length;Q0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.SVG=e.XLINKNS=e.SVGNS=void 0;var i=Q(167),a=Q(191),s=Q(35),l=Q(266),c=Q(15),u=Q(32);e.SVGNS="http://www.w3.org/2000/svg",e.XLINKNS="http://www.w3.org/1999/xlink";var p=function(t){function Q(e){void 0===e&&(e=null);var Q=t.call(this,e,a.SVGWrapperFactory,s.TeXFont)||this;return Q.minwidth=0,Q.shift=0,Q.container=null,Q.svgStyles=null,Q.fontCache=new l.FontCache(Q),Q}return T(Q,t),Q.prototype.initialize=function(){"global"===this.options.fontCache&&this.fontCache.clearCache()},Q.prototype.clearFontCache=function(){this.fontCache.clearCache()},Q.prototype.setScale=function(t){1!==this.options.scale&&this.adaptor.setStyle(t,"fontSize",u.percent(this.options.scale))},Q.prototype.escaped=function(t,e){return this.setDocument(e),this.html("span",{},[this.text(t.math)])},Q.prototype.styleSheet=function(e){if(this.svgStyles)return null;var r=this.svgStyles=t.prototype.styleSheet.call(this,e);return this.adaptor.setAttribute(r,"id",Q.STYLESHEETID),r},Q.prototype.pageElements=function(t){return"global"!==this.options.fontCache||this.findCache(t)?null:this.svg("svg",{id:Q.FONTCACHEID,style:{display:"none"}},[this.fontCache.getCache()])},Q.prototype.findCache=function(t){for(var e=this.adaptor,r=e.tags(e.body(t.document),"svg"),T=r.length-1;T>=0;T--)if(this.adaptor.getAttribute(r[T],"id")===Q.FONTCACHEID)return!0;return!1},Q.prototype.processMath=function(t,e){var Q=this.container;this.container=e;var r=this.factory.wrap(t),T=o(this.createRoot(r),2),n=T[0],i=T[1];this.typesetSVG(r,n,i),this.container=Q},Q.prototype.createRoot=function(t){var Q=t.getBBox(),r=Q.w,T=Q.h,n=Q.d,o=Q.pwidth,i=Math.max(r,.001),a=this.svg("g",{stroke:"currentColor",fill:"currentColor","stroke-width":0,transform:"matrix(1 0 0 -1 0 0)"}),s=this.adaptor,l=s.append(this.container,this.svg("svg",{xmlns:e.SVGNS,width:this.ex(i),height:this.ex(T+n),role:"img",focusable:!1,style:{"vertical-align":this.ex(-n)},viewBox:[0,this.fixed(1e3*-T,1),this.fixed(1e3*i,1),this.fixed(1e3*(T+n),1)].join(" ")},[a]));if(.001===i&&(s.setAttribute(l,"preserveAspectRatio","xMidYMid slice"),r<0&&s.setStyle(this.container,"margin-right",this.ex(r))),o){s.setStyle(l,"min-width",this.ex(i)),s.setAttribute(l,"width",o),s.removeAttribute(l,"viewBox");var c=t.metrics.ex/(1e3*this.font.params.x_height);s.setAttribute(a,"transform","matrix(1 0 0 -1 0 0) scale("+this.fixed(c,6)+") translate(0, "+this.fixed(1e3*-T,1)+")")}return"none"!==this.options.fontCache&&s.setAttribute(l,"xmlns:xlink",e.XLINKNS),[l,a]},Q.prototype.typesetSVG=function(t,e,Q){var r=this.adaptor;if(this.minwidth=this.shift=0,"local"===this.options.fontCache&&(this.fontCache.clearCache(),this.fontCache.useLocalID(this.options.localID),r.insert(this.fontCache.getCache(),Q)),t.toSVG(Q),this.fontCache.clearLocalID(),this.minwidth)r.setStyle(e,"minWidth",this.ex(this.minwidth)),r.setStyle(this.container,"minWidth",this.ex(this.minwidth));else if(this.shift){var T=r.getAttribute(this.container,"justify")||"center";this.setIndent(e,T,this.shift)}},Q.prototype.setIndent=function(t,e,Q){"center"!==e&&"left"!==e||this.adaptor.setStyle(t,"margin-left",this.ex(Q)),"center"!==e&&"right"!==e||this.adaptor.setStyle(t,"margin-right",this.ex(-Q))},Q.prototype.ex=function(t){return t/=this.font.params.x_height,Math.abs(t)<.001?"0":t.toFixed(3).replace(/\.?0+$/,"")+"ex"},Q.prototype.svg=function(t,Q,r){return void 0===Q&&(Q={}),void 0===r&&(r=[]),this.html(t,Q,r,e.SVGNS)},Q.prototype.unknownText=function(t,e){var Q=this.math.metrics,r=this.font.params.x_height/Q.ex*Q.em*1e3,T=this.svg("text",{"data-variant":e,transform:"matrix(1 0 0 -1 0 0)","font-size":this.fixed(r,1)+"px"},[this.text(t)]),n=this.adaptor;if("-explicitFont"!==e){var i=c.unicodeChars(t);if(1!==i.length||i[0]<119808||i[0]>120831){var a=o(this.font.getCssFont(e),3),s=a[0],l=a[1],u=a[2];n.setAttribute(T,"font-family",s),l&&n.setAttribute(T,"font-style","italic"),u&&n.setAttribute(T,"font-weight","bold")}}return T},Q.prototype.measureTextNode=function(t){var e=this.adaptor;t=e.clone(t),e.removeAttribute(t,"transform");var Q=this.fixed(1e3*this.font.params.x_height,1),r=this.svg("svg",{position:"absolute",visibility:"hidden",width:"1ex",height:"1ex",viewBox:[0,0,Q,Q].join(" ")},[t]);e.append(e.body(e.document),r);var T=e.nodeSize(t,1e3,!0)[0];return e.remove(r),{w:T,h:.75,d:.2}},Q.NAME="SVG",Q.OPTIONS=n(n({},i.CommonOutputJax.OPTIONS),{internalSpeechTitles:!0,titleID:0,fontCache:"local",localID:null}),Q.commonStyles={'mjx-container[jax="SVG"]':{direction:"ltr"},'mjx-container[jax="SVG"] > svg':{overflow:"visible"},'mjx-container[jax="SVG"] > svg a':{fill:"blue",stroke:"blue"}},Q.FONTCACHEID="MJX-SVG-global-cache",Q.STYLESHEETID="MJX-SVG-styles",Q}(i.CommonOutputJax);e.SVG=p},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.KEY=void 0,function(t){t[t.RETURN=13]="RETURN",t[t.ESCAPE=27]="ESCAPE",t[t.SPACE=32]="SPACE",t[t.LEFT=37]="LEFT",t[t.UP=38]="UP",t[t.RIGHT=39]="RIGHT",t[t.DOWN=40]="DOWN"}(e.KEY||(e.KEY={}))},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractVariableItem=void 0;var n=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.generateHtml=function(){t.prototype.generateHtml.call(this);var e=this.html;this.span||this.generateSpan(),e.appendChild(this.span),this.update()},e.prototype.register=function(){this.variable.register(this)},e.prototype.unregister=function(){this.variable.unregister(this)},e.prototype.update=function(){this.updateAria(),this.span&&this.updateSpan()},e}(Q(36).AbstractItem);e.AbstractVariableItem=n},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},i=this&&this.__spread||function(){for(var t=[],e=0;e=e&&i.item.renderDoc(t))return}}catch(t){Q={error:t}}finally{try{o&&!o.done&&(r=T.return)&&r.call(T)}finally{if(Q)throw Q.error}}},e.prototype.renderMath=function(t,e,Q){var r,T;void 0===Q&&(Q=u.STATE.UNPROCESSED);try{for(var o=n(this.items),i=o.next();!i.done;i=o.next()){var a=i.value;if(a.priority>=Q&&a.item.renderMath(t,e))return}}catch(t){r={error:t}}finally{try{i&&!i.done&&(T=o.return)&&T.call(o)}finally{if(r)throw r.error}}},e.prototype.renderConvert=function(t,e,Q){var r,T;void 0===Q&&(Q=u.STATE.LAST);try{for(var o=n(this.items),i=o.next();!i.done;i=o.next()){var a=i.value;if(a.priority>Q)return;if(a.item.convert&&a.item.renderMath(t,e))return}}catch(t){r={error:t}}finally{try{i&&!i.done&&(T=o.return)&&T.call(o)}finally{if(r)throw r.error}}},e.prototype.findID=function(t){var e,Q;try{for(var r=n(this.items),T=r.next();!T.done;T=r.next()){var o=T.value;if(o.item.id===t)return o.item}}catch(t){e={error:t}}finally{try{T&&!T.done&&(Q=r.return)&&Q.call(r)}finally{if(e)throw e.error}}return null},e}(Q(21).PrioritizedList);e.RenderList=f;var d=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.compile=function(t){return null},e}(s.AbstractInputJax),L=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.typeset=function(t,e){return void 0===e&&(e=null),null},e.prototype.escaped=function(t,e){return null},e}(l.AbstractOutputJax),H=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e}(c.AbstractMathList),m=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e}(u.AbstractMathItem),y=function(){function t(e,Q,r){var T=this,n=this.constructor;this.document=e,this.options=a.userOptions(a.defaultOptions({},n.OPTIONS),r),this.math=new(this.options.MathList||H),this.renderActions=f.create(this.options.renderActions),this.processed=new t.ProcessBits,this.outputJax=this.options.OutputJax||new L;var o=this.options.InputJax||[new d];Array.isArray(o)||(o=[o]),this.inputJax=o,this.adaptor=Q,this.outputJax.setAdaptor(Q),this.inputJax.map((function(t){return t.setAdaptor(Q)})),this.mmlFactory=this.options.MmlFactory||new p.MmlFactory,this.inputJax.map((function(t){return t.setMmlFactory(T.mmlFactory)})),this.outputJax.initialize(),this.inputJax.map((function(t){return t.initialize()}))}return Object.defineProperty(t.prototype,"kind",{get:function(){return this.constructor.KIND},enumerable:!1,configurable:!0}),t.prototype.addRenderAction=function(t){for(var e=[],Q=1;Q=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractEmptyNode=e.AbstractNode=void 0;var o=function(){function t(t,e,Q){var r,T;void 0===e&&(e={}),void 0===Q&&(Q=[]),this.parent=null,this.properties={},this._factory=null,this.childNodes=[],this._factory=t;try{for(var o=n(Object.keys(e)),i=o.next();!i.done;i=o.next()){var a=i.value;this.setProperty(a,e[a])}}catch(t){r={error:t}}finally{try{i&&!i.done&&(T=o.return)&&T.call(o)}finally{if(r)throw r.error}}Q.length&&this.setChildren(Q)}return Object.defineProperty(t.prototype,"factory",{get:function(){return this._factory},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"kind",{get:function(){return"unknown"},enumerable:!1,configurable:!0}),t.prototype.setProperty=function(t,e){this.properties[t]=e},t.prototype.getProperty=function(t){return this.properties[t]},t.prototype.getPropertyNames=function(){return Object.keys(this.properties)},t.prototype.getAllProperties=function(){return this.properties},t.prototype.removeProperty=function(){for(var t,e,Q=[],r=0;r=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.MmlInferredMrow=e.MmlMrow=void 0;var i=Q(0),a=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._core=null,e}return T(e,t),Object.defineProperty(e.prototype,"kind",{get:function(){return"mrow"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isSpacelike",{get:function(){var t,e;try{for(var Q=o(this.childNodes),r=Q.next();!r.done;r=Q.next()){if(!r.value.isSpacelike)return!1}}catch(e){t={error:e}}finally{try{r&&!r.done&&(e=Q.return)&&e.call(Q)}finally{if(t)throw t.error}}return!0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isEmbellished",{get:function(){var t,e,Q=!1,r=0;try{for(var T=o(this.childNodes),n=T.next();!n.done;n=T.next()){var i=n.value;if(i)if(i.isEmbellished){if(Q)return!1;Q=!0,this._core=r}else if(!i.isSpacelike)return!1;r++}}catch(e){t={error:e}}finally{try{n&&!n.done&&(e=T.return)&&e.call(T)}finally{if(t)throw t.error}}return Q},enumerable:!1,configurable:!0}),e.prototype.core=function(){return this.isEmbellished&&null!=this._core?this.childNodes[this._core]:this},e.prototype.coreMO=function(){return this.isEmbellished&&null!=this._core?this.childNodes[this._core].coreMO():this},e.prototype.nonSpaceLength=function(){var t,e,Q=0;try{for(var r=o(this.childNodes),T=r.next();!T.done;T=r.next()){var n=T.value;n&&!n.isSpacelike&&Q++}}catch(e){t={error:e}}finally{try{T&&!T.done&&(e=r.return)&&e.call(r)}finally{if(t)throw t.error}}return Q},e.prototype.firstNonSpace=function(){var t,e;try{for(var Q=o(this.childNodes),r=Q.next();!r.done;r=Q.next()){var T=r.value;if(T&&!T.isSpacelike)return T}}catch(e){t={error:e}}finally{try{r&&!r.done&&(e=Q.return)&&e.call(Q)}finally{if(t)throw t.error}}return null},e.prototype.lastNonSpace=function(){for(var t=this.childNodes.length;--t>=0;){var e=this.childNodes[t];if(e&&!e.isSpacelike)return e}return null},e.prototype.setTeXclass=function(t){var e,Q,r,T;if(null==this.getProperty("open")&&null==this.getProperty("close")||t&&null==t.getProperty("fnOP")){try{for(var n=o(this.childNodes),a=n.next();!a.done;a=n.next()){t=a.value.setTeXclass(t)}}catch(t){r={error:t}}finally{try{a&&!a.done&&(T=n.return)&&T.call(n)}finally{if(r)throw r.error}}this.childNodes[0]&&this.updateTeXclass(this.childNodes[0])}else{this.getPrevClass(t),t=null;try{for(var s=o(this.childNodes),l=s.next();!l.done;l=s.next()){t=l.value.setTeXclass(t)}}catch(t){e={error:t}}finally{try{l&&!l.done&&(Q=s.return)&&Q.call(s)}finally{if(e)throw e.error}}null==this.texClass&&(this.texClass=i.TEXCLASS.INNER)}return t},e.defaults=n({},i.AbstractMmlNode.defaults),e}(i.AbstractMmlNode);e.MmlMrow=a;var s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),Object.defineProperty(e.prototype,"kind",{get:function(){return"inferredMrow"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isInferred",{get:function(){return!0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"notParent",{get:function(){return!0},enumerable:!1,configurable:!0}),e.prototype.toString=function(){return"["+this.childNodes.join(",")+"]"},e.defaults=a.defaults,e}(a);e.MmlInferredMrow=s},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__assign||function(){return(n=Object.assign||function(t){for(var e,Q=1,r=arguments.length;Q=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.MmlMfrac=void 0;var i=Q(0),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),Object.defineProperty(e.prototype,"kind",{get:function(){return"mfrac"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"arity",{get:function(){return 2},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"linebreakContainer",{get:function(){return!0},enumerable:!1,configurable:!0}),e.prototype.setTeXclass=function(t){var e,Q;this.getPrevClass(t);try{for(var r=o(this.childNodes),T=r.next();!T.done;T=r.next()){T.value.setTeXclass(null)}}catch(t){e={error:t}}finally{try{T&&!T.done&&(Q=r.return)&&Q.call(r)}finally{if(e)throw e.error}}return this},e.prototype.setChildInheritedAttributes=function(t,e,Q,r){(!e||Q>0)&&Q++,this.childNodes[0].setInheritedAttributes(t,!1,Q,r),this.childNodes[1].setInheritedAttributes(t,!1,Q,!0)},e.defaults=n(n({},i.AbstractMmlBaseNode.defaults),{linethickness:"medium",numalign:"center",denomalign:"center",bevelled:!1}),e}(i.AbstractMmlBaseNode);e.MmlMfrac=a},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__assign||function(){return(n=Object.assign||function(t){for(var e,Q=1,r=arguments.length;Q=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.MmlMfenced=void 0;var i=Q(0),a=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.texClass=i.TEXCLASS.INNER,e.separators=[],e.open=null,e.close=null,e}return T(e,t),Object.defineProperty(e.prototype,"kind",{get:function(){return"mfenced"},enumerable:!1,configurable:!0}),e.prototype.setTeXclass=function(t){this.getPrevClass(t),this.open&&(t=this.open.setTeXclass(t)),this.childNodes[0]&&(t=this.childNodes[0].setTeXclass(t));for(var e=1,Q=this.childNodes.length;ethis.childNodes.length&&(t=1),this.attributes.set("selection",t)},e.defaults=n(n({},o.AbstractMmlNode.defaults),{actiontype:"toggle",selection:1}),e}(o.AbstractMmlNode);e.MmlMaction=i},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__assign||function(){return(n=Object.assign||function(t){for(var e,Q=1,r=arguments.length;Q=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.MmlMtable=void 0;var i=Q(0),a=Q(15),s=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.properties={useHeight:1},e.texClass=i.TEXCLASS.ORD,e}return T(e,t),Object.defineProperty(e.prototype,"kind",{get:function(){return"mtable"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"linebreakContainer",{get:function(){return!0},enumerable:!1,configurable:!0}),e.prototype.setInheritedAttributes=function(e,Q,r,T){var n,a;try{for(var s=o(i.indentAttributes),l=s.next();!l.done;l=s.next()){var c=l.value;e[c]&&this.attributes.setInherited(c,e[c][1]),void 0!==this.attributes.getExplicit(c)&&delete this.attributes.getAllAttributes()[c]}}catch(t){n={error:t}}finally{try{l&&!l.done&&(a=s.return)&&a.call(s)}finally{if(n)throw n.error}}t.prototype.setInheritedAttributes.call(this,e,Q,r,T)},e.prototype.setChildInheritedAttributes=function(t,e,Q,r){var T,n,i,s;try{for(var l=o(this.childNodes),c=l.next();!c.done;c=l.next()){(f=c.value).isKind("mtr")||this.replaceChild(this.factory.create("mtr"),f).appendChild(f)}}catch(t){T={error:t}}finally{try{c&&!c.done&&(n=l.return)&&n.call(l)}finally{if(T)throw T.error}}e=!(!this.attributes.getExplicit("displaystyle")&&!this.attributes.getDefault("displaystyle")),t=this.addInheritedAttributes(t,{columnalign:this.attributes.get("columnalign"),rowalign:"center"});var u=a.split(this.attributes.get("rowalign"));try{for(var p=o(this.childNodes),h=p.next();!h.done;h=p.next()){var f=h.value;t.rowalign[1]=u.shift()||t.rowalign[1],f.setInheritedAttributes(t,e,Q,r)}}catch(t){i={error:t}}finally{try{h&&!h.done&&(s=p.return)&&s.call(p)}finally{if(i)throw i.error}}},e.prototype.verifyChildren=function(e){var Q,r;if(!e.fixMtables)try{for(var T=o(this.childNodes),n=T.next();!n.done;n=T.next()){n.value.isKind("mtr")||this.mError("Children of "+this.kind+" must be mtr or mlabeledtr",e)}}catch(t){Q={error:t}}finally{try{n&&!n.done&&(r=T.return)&&r.call(T)}finally{if(Q)throw Q.error}}t.prototype.verifyChildren.call(this,e)},e.prototype.setTeXclass=function(t){var e,Q;this.getPrevClass(t);try{for(var r=o(this.childNodes),T=r.next();!T.done;T=r.next()){T.value.setTeXclass(null)}}catch(t){e={error:t}}finally{try{T&&!T.done&&(Q=r.return)&&Q.call(r)}finally{if(e)throw e.error}}return this},e.defaults=n(n({},i.AbstractMmlNode.defaults),{align:"axis",rowalign:"baseline",columnalign:"center",groupalign:"{left}",alignmentscope:!0,columnwidth:"auto",width:"auto",rowspacing:"1ex",columnspacing:".8em",rowlines:"none",columnlines:"none",frame:"none",framespacing:"0.4em 0.5ex",equalrows:!1,equalcolumns:!1,displaystyle:!1,side:"right",minlabelspacing:"0.8em"}),e}(i.AbstractMmlNode);e.MmlMtable=s},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__assign||function(){return(n=Object.assign||function(t){for(var e,Q=1,r=arguments.length;Q=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.MmlMlabeledtr=e.MmlMtr=void 0;var i=Q(0),a=Q(24),s=Q(15),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),Object.defineProperty(e.prototype,"kind",{get:function(){return"mtr"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"linebreakContainer",{get:function(){return!0},enumerable:!1,configurable:!0}),e.prototype.setChildInheritedAttributes=function(t,e,Q,r){var T,n,i,a;try{for(var l=o(this.childNodes),c=l.next();!c.done;c=l.next()){(f=c.value).isKind("mtd")||this.replaceChild(this.factory.create("mtd"),f).appendChild(f)}}catch(t){T={error:t}}finally{try{c&&!c.done&&(n=l.return)&&n.call(l)}finally{if(T)throw T.error}}var u=s.split(this.attributes.get("columnalign"));1===this.arity&&u.unshift(this.parent.attributes.get("side")),t=this.addInheritedAttributes(t,{rowalign:this.attributes.get("rowalign"),columnalign:"center"});try{for(var p=o(this.childNodes),h=p.next();!h.done;h=p.next()){var f=h.value;t.columnalign[1]=u.shift()||t.columnalign[1],f.setInheritedAttributes(t,e,Q,r)}}catch(t){i={error:t}}finally{try{h&&!h.done&&(a=p.return)&&a.call(p)}finally{if(i)throw i.error}}},e.prototype.verifyChildren=function(e){var Q,r;if(!this.parent||this.parent.isKind("mtable")){if(!e.fixMtables)try{for(var T=o(this.childNodes),n=T.next();!n.done;n=T.next()){var i=n.value;if(!i.isKind("mtd"))this.replaceChild(this.factory.create("mtr"),i).mError("Children of "+this.kind+" must be mtd",e,!0)}}catch(t){Q={error:t}}finally{try{n&&!n.done&&(r=T.return)&&r.call(T)}finally{if(Q)throw Q.error}}t.prototype.verifyChildren.call(this,e)}else this.mError(this.kind+" can only be a child of an mtable",e,!0)},e.prototype.setTeXclass=function(t){var e,Q;this.getPrevClass(t);try{for(var r=o(this.childNodes),T=r.next();!T.done;T=r.next()){T.value.setTeXclass(null)}}catch(t){e={error:t}}finally{try{T&&!T.done&&(Q=r.return)&&Q.call(r)}finally{if(e)throw e.error}}return this},e.defaults=n(n({},i.AbstractMmlNode.defaults),{rowalign:a.INHERIT,columnalign:a.INHERIT,groupalign:a.INHERIT}),e}(i.AbstractMmlNode);e.MmlMtr=l;var c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),Object.defineProperty(e.prototype,"kind",{get:function(){return"mlabeledtr"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"arity",{get:function(){return 1},enumerable:!1,configurable:!0}),e}(l);e.MmlMlabeledtr=c},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__assign||function(){return(n=Object.assign||function(t){for(var e,Q=1,r=arguments.length;Q=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.SerializedMmlVisitor=e.toEntity=e.DATAMJX=void 0;var i=Q(82),a=Q(0),s=Q(38);e.DATAMJX="data-mjx-",e.toEntity=function(t){return"&#x"+t.codePointAt(0).toString(16).toUpperCase()+";"};var l=function(t){function Q(){return null!==t&&t.apply(this,arguments)||this}return T(Q,t),Q.prototype.visitTree=function(t){return this.visitNode(t,"")},Q.prototype.visitTextNode=function(t,e){return this.quoteHTML(t.getText())},Q.prototype.visitXMLNode=function(t,e){return e+t.getSerializedXML()},Q.prototype.visitInferredMrowNode=function(t,e){var Q,r,T=[];try{for(var o=n(t.childNodes),i=o.next();!i.done;i=o.next()){var a=i.value;T.push(this.visitNode(a,e))}}catch(t){Q={error:t}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(Q)throw Q.error}}return T.join("\n")},Q.prototype.visitTeXAtomNode=function(t,e){var Q=this.childNodeMml(t,e+" ","\n");return e+""+(Q.match(/\S/)?"\n"+Q+e:"")+""},Q.prototype.visitAnnotationNode=function(t,e){return e+""+this.childNodeMml(t,"","")+""},Q.prototype.visitDefault=function(t,e){var Q=t.kind,r=o(t.isToken||0===t.childNodes.length?["",""]:["\n",e],2),T=r[0],n=r[1],i=this.childNodeMml(t,e+" ",T);return e+"<"+Q+this.getAttributes(t)+">"+(i.match(/\S/)?T+i+n:"")+""},Q.prototype.childNodeMml=function(t,e,Q){var r,T,o="";try{for(var i=n(t.childNodes),a=i.next();!a.done;a=i.next()){var s=a.value;o+=this.visitNode(s,e)+Q}}catch(t){r={error:t}}finally{try{a&&!a.done&&(T=i.return)&&T.call(i)}finally{if(r)throw r.error}}return o},Q.prototype.getAttributes=function(t){var e,Q,r=[],T=this.constructor.defaultAttributes[t.kind]||{},o=Object.assign({},T,this.getDataAttributes(t),t.attributes.getAllAttributes()),i=this.constructor.variants;o.hasOwnProperty("mathvariant")&&i.hasOwnProperty(o.mathvariant)&&(o.mathvariant=i[o.mathvariant]);try{for(var a=n(Object.keys(o)),s=a.next();!s.done;s=a.next()){var l=s.value,c=String(o[l]);void 0!==c&&r.push(l+'="'+this.quoteHTML(c)+'"')}}catch(t){e={error:t}}finally{try{s&&!s.done&&(Q=a.return)&&Q.call(a)}finally{if(e)throw e.error}}return r.length?" "+r.join(" "):""},Q.prototype.getDataAttributes=function(t){var e={},Q=t.attributes.getExplicit("mathvariant"),r=this.constructor.variants;Q&&r.hasOwnProperty(Q)&&this.setDataAttribute(e,"variant",Q),t.getProperty("variantForm")&&this.setDataAttribute(e,"alternate","1");var T=t.getProperty("texClass");if(void 0!==T){var n=!0;if(T===a.TEXCLASS.OP&&t.isKind("mi")){var o=t.getText();n=!(o.length>1&&o.match(s.MmlMi.operatorName))}n&&this.setDataAttribute(e,"texclass",T<0?"NONE":a.TEXCLASSNAMES[T])}return e},Q.prototype.setDataAttribute=function(t,Q,r){t[e.DATAMJX+Q]=r},Q.prototype.quoteHTML=function(t){return t.replace(/&/g,"&").replace(//g,">").replace(/\"/g,""").replace(/[\uD800-\uDBFF]./g,e.toEntity).replace(/[\u0080-\uD7FF\uE000-\uFFFF]/g,e.toEntity)},Q.variants={"-tex-calligraphic":"script","-tex-calligraphic-bold":"bold-script","-tex-oldstyle":"normal","-tex-oldstyle-bold":"bold","-tex-mathit":"italic"},Q.defaultAttributes={math:{xmlns:"http://www.w3.org/1998/Math/MathML"}},Q}(i.MmlVisitor);e.SerializedMmlVisitor=l},function(t,e,Q){"use strict";var r=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},T=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},n=this&&this.__spread||function(){for(var t=[],e=0;e1;)e.shift(),Q.push(e.shift());return Q}function s(t){var e,Q,T=a(this.styles[t]);0===T.length&&T.push(""),1===T.length&&T.push(T[0]),2===T.length&&T.push(T[0]),3===T.length&&T.push(T[1]);try{for(var n=r(y.connect[t].children),o=n.next();!o.done;o=n.next()){var i=o.value;this.setStyle(this.childName(t,i),T.shift())}}catch(t){e={error:t}}finally{try{o&&!o.done&&(Q=n.return)&&Q.call(n)}finally{if(e)throw e.error}}}function l(t){var e,Q,T=y.connect[t].children,n=[];try{for(var o=r(T),i=o.next();!i.done;i=o.next()){var a=i.value,s=this.styles[t+"-"+a];if(!s)return void delete this.styles[t];n.push(s)}}catch(t){e={error:t}}finally{try{i&&!i.done&&(Q=o.return)&&Q.call(o)}finally{if(e)throw e.error}}n[3]===n[1]&&(n.pop(),n[2]===n[0]&&(n.pop(),n[1]===n[0]&&n.pop())),this.styles[t]=n.join(" ")}function c(t){var e,Q;try{for(var T=r(y.connect[t].children),n=T.next();!n.done;n=T.next()){var o=n.value;this.setStyle(this.childName(t,o),this.styles[t])}}catch(t){e={error:t}}finally{try{n&&!n.done&&(Q=T.return)&&Q.call(T)}finally{if(e)throw e.error}}}function u(t){var e,Q,T=n(y.connect[t].children),o=this.styles[this.childName(t,T.shift())];try{for(var i=r(T),a=i.next();!a.done;a=i.next()){var s=a.value;if(this.styles[this.childName(t,s)]!==o)return void delete this.styles[t]}}catch(t){e={error:t}}finally{try{a&&!a.done&&(Q=i.return)&&Q.call(i)}finally{if(e)throw e.error}}this.styles[t]=o}var p=/^(?:[\d.]+(?:[a-z]+)|thin|medium|thick|inherit|initial|unset)$/,h=/^(?:none|hidden|dotted|dashed|solid|double|groove|ridge|inset|outset|inherit|initial|unset)$/;function f(t){var e,Q,T,n,o={width:"",style:"",color:""};try{for(var i=r(a(this.styles[t])),s=i.next();!s.done;s=i.next()){var l=s.value;l.match(p)&&""===o.width?o.width=l:l.match(h)&&""===o.style?o.style=l:o.color=l}}catch(t){e={error:t}}finally{try{s&&!s.done&&(Q=i.return)&&Q.call(i)}finally{if(e)throw e.error}}try{for(var c=r(y.connect[t].children),u=c.next();!u.done;u=c.next()){var f=u.value;this.setStyle(this.childName(t,f),o[f])}}catch(t){T={error:t}}finally{try{u&&!u.done&&(n=c.return)&&n.call(c)}finally{if(T)throw T.error}}}function d(t){var e,Q,T=[];try{for(var n=r(y.connect[t].children),o=n.next();!o.done;o=n.next()){var i=o.value,a=this.styles[this.childName(t,i)];a&&T.push(a)}}catch(t){e={error:t}}finally{try{o&&!o.done&&(Q=n.return)&&Q.call(n)}finally{if(e)throw e.error}}T.length?this.styles[t]=T.join(" "):delete this.styles[t]}var L={style:/^(?:normal|italic|oblique|inherit|initial|unset)$/,variant:new RegExp("^(?:"+["normal|none","inherit|initial|unset","common-ligatures|no-common-ligatures","discretionary-ligatures|no-discretionary-ligatures","historical-ligatures|no-historical-ligatures","contextual|no-contextual","(?:stylistic|character-variant|swash|ornaments|annotation)\\([^)]*\\)","small-caps|all-small-caps|petite-caps|all-petite-caps|unicase|titling-caps","lining-nums|oldstyle-nums|proportional-nums|tabular-nums","diagonal-fractions|stacked-fractions","ordinal|slashed-zero","jis78|jis83|jis90|jis04|simplified|traditional","full-width|proportional-width","ruby"].join("|")+")$"),weight:/^(?:normal|bold|bolder|lighter|[1-9]00|inherit|initial|unset)$/,stretch:new RegExp("^(?:"+["normal","(?:(?:ultra|extra|semi)-)?condensed","(?:(?:semi|extra|ulta)-)?expanded","inherit|initial|unset"].join("|")+")$"),size:new RegExp("^(?:"+["xx-small|x-small|small|medium|large|x-large|xx-large|larger|smaller","[d.]+%|[d.]+[a-z]+","inherit|initial|unset"].join("|")+")(?:/(?:normal|[d.+](?:%|[a-z]+)?))?$")};function H(t){var e,Q,n,o,i=a(this.styles[t]),s={style:"",variant:[],weight:"",stretch:"",size:"",family:"","line-height":""};try{for(var l=r(i),c=l.next();!c.done;c=l.next()){var u=c.value;s.family=u;try{for(var p=(n=void 0,r(Object.keys(L))),h=p.next();!h.done;h=p.next()){var f=h.value;if((Array.isArray(s[f])||""===s[f])&&u.match(L[f]))if("size"===f){var d=T(u.split(/\//),2),H=d[0],m=d[1];s[f]=H,m&&(s["line-height"]=m)}else""===s.size&&(Array.isArray(s[f])?s[f].push(u):s[f]=u)}}catch(t){n={error:t}}finally{try{h&&!h.done&&(o=p.return)&&o.call(p)}finally{if(n)throw n.error}}}}catch(t){e={error:t}}finally{try{c&&!c.done&&(Q=l.return)&&Q.call(l)}finally{if(e)throw e.error}}!function(t,e){var Q,T;try{for(var n=r(y.connect[t].children),o=n.next();!o.done;o=n.next()){var i=o.value,a=this.childName(t,i);if(Array.isArray(e[i])){var s=e[i];s.length&&(this.styles[a]=s.join(" "))}else""!==e[i]&&(this.styles[a]=e[i])}}catch(t){Q={error:t}}finally{try{o&&!o.done&&(T=n.return)&&T.call(n)}finally{if(Q)throw Q.error}}}(t,s),delete this.styles[t]}function m(t){}var y=function(){function t(t){void 0===t&&(t=""),this.parse(t)}return Object.defineProperty(t.prototype,"cssText",{get:function(){var t,e,Q=[];try{for(var T=r(Object.keys(this.styles)),n=T.next();!n.done;n=T.next()){var o=n.value,i=this.parentName(o);this.styles[i]||Q.push(o+": "+this.styles[o])}}catch(e){t={error:e}}finally{try{n&&!n.done&&(e=T.return)&&e.call(T)}finally{if(t)throw t.error}}return Q.join("; ")},enumerable:!1,configurable:!0}),t.prototype.set=function(e,Q){for(e=this.normalizeName(e),this.setStyle(e,Q),t.connect[e]&&!t.connect[e].combine&&(this.combineChildren(e),delete this.styles[e]);e.match(/-/)&&(e=this.parentName(e),t.connect[e]);)t.connect[e].combine.call(this,e)},t.prototype.get=function(t){return t=this.normalizeName(t),this.styles.hasOwnProperty(t)?this.styles[t]:""},t.prototype.setStyle=function(e,Q){this.styles[e]=Q,t.connect[e]&&t.connect[e].children&&t.connect[e].split.call(this,e),""===Q&&delete this.styles[e]},t.prototype.combineChildren=function(e){var Q,T,n=this.parentName(e);try{for(var o=r(t.connect[e].children),i=o.next();!i.done;i=o.next()){var a=i.value,s=this.childName(n,a);t.connect[s].combine.call(this,s)}}catch(t){Q={error:t}}finally{try{i&&!i.done&&(T=o.return)&&T.call(o)}finally{if(Q)throw Q.error}}},t.prototype.parentName=function(t){var e=t.replace(/-[^-]*$/,"");return t===e?"":e},t.prototype.childName=function(e,Q){return Q.match(/-/)?Q:(t.connect[e]&&!t.connect[e].combine&&(Q+=e.replace(/.*-/,"-"),e=this.parentName(e)),e+"-"+Q)},t.prototype.normalizeName=function(t){return t.replace(/[A-Z]/g,(function(t){return"-"+t.toLowerCase()}))},t.prototype.parse=function(t){void 0===t&&(t="");var e=this.constructor.pattern;this.styles={};for(var Q=t.replace(e.comment,"").split(e.style);Q.length>1;){var r=T(Q.splice(0,3),3),n=r[0],o=r[1],i=r[2];if(n.match(/[^\s\n]/))return;this.set(o,i)}},t.pattern={style:/([-a-z]+)[\s\n]*:[\s\n]*((?:'[^']*'|"[^"]*"|\n|.)*?)[\s\n]*(?:;|$)/g,comment:/\/\*[^]*?\*\//g},t.connect={padding:{children:o,split:s,combine:l},border:{children:o,split:c,combine:u},"border-top":{children:i,split:f,combine:d},"border-right":{children:i,split:f,combine:d},"border-bottom":{children:i,split:f,combine:d},"border-left":{children:i,split:f,combine:d},"border-width":{children:o,split:s,combine:null},"border-style":{children:o,split:s,combine:null},"border-color":{children:o,split:s,combine:null},font:{children:["style","variant","weight","stretch","line-height","size","family"],split:H,combine:m}},t}();e.Styles=y},function(t,e,Q){"use strict";var r=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},T=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},n=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},T=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0});var o=Q(131),i=Q(41),a=Q(7),s=function(){function t(t,e){void 0===e&&(e=[]),this.options={},this.packageData=new Map,this.parsers=[],this.root=null,this.nodeLists={},this.error=!1,this.handlers=t.handlers,this.nodeFactory=new i.NodeFactory,this.nodeFactory.configuration=this,this.nodeFactory.setCreators(t.nodes),this.itemFactory=new o.default(t.items),this.itemFactory.configuration=this,a.defaultOptions.apply(void 0,T([this.options],e)),a.defaultOptions(this.options,t.options)}return t.prototype.pushParser=function(t){this.parsers.unshift(t)},t.prototype.popParser=function(){this.parsers.shift()},Object.defineProperty(t.prototype,"parser",{get:function(){return this.parsers[0]},enumerable:!1,configurable:!0}),t.prototype.clear=function(){this.parsers=[],this.root=null,this.nodeLists={},this.error=!1,this.tags.resetTag()},t.prototype.addNode=function(t,e){var Q=this.nodeLists[t];Q||(Q=this.nodeLists[t]=[]),Q.push(e)},t.prototype.getList=function(t){var e,Q,r=this.nodeLists[t]||[],T=[];try{for(var o=n(r),i=o.next();!i.done;i=o.next()){var a=i.value;this.inTree(a)&&T.push(a)}}catch(t){e={error:t}}finally{try{i&&!i.done&&(Q=o.return)&&Q.call(o)}finally{if(e)throw e.error}}return this.nodeLists[t]=T,T},t.prototype.inTree=function(t){for(;t&&t!==this.root;)t=t.parent;return!!t},t}();e.default=s},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.EncloseConfiguration=e.EncloseMethods=e.ENCLOSE_OPTIONS=void 0;var r=Q(2),T=Q(3),n=Q(9);e.ENCLOSE_OPTIONS={"data-arrowhead":1,color:1,mathcolor:1,background:1,mathbackground:1,"data-padding":1,"data-thickness":1},e.EncloseMethods={},e.EncloseMethods.Enclose=function(t,Q){var r=t.GetArgument(Q).replace(/,/g," "),T=t.GetBrackets(Q,""),o=t.ParseArg(Q),i=n.default.keyvalOptions(T,e.ENCLOSE_OPTIONS);i.notation=r,t.Push(t.create("node","menclose",[o],i))},new T.CommandMap("enclose",{enclose:"Enclose"},e.EncloseMethods),e.EncloseConfiguration=r.Configuration.create("enclose",{handler:{macro:["enclose"]}})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=Q(5),T=Q(3),n=Q(16),o=Q(9),i=Q(44),a={NewCommand:function(t,e){var Q=o.default.trimSpaces(t.GetArgument(e)),T=t.GetBrackets(e),n=t.GetBrackets(e),s=t.GetArgument(e);if("\\"===Q.charAt(0)&&(Q=Q.substr(1)),!Q.match(/^(.|[a-z]+)$/i))throw new r.default("IllegalControlSequenceName","Illegal control sequence name for %1",e);if(T&&!(T=o.default.trimSpaces(T)).match(/^[0-9]+$/))throw new r.default("IllegalParamNumber","Illegal number of parameters specified in %1",e);i.default.addMacro(t,Q,a.Macro,[s,T,n])},NewEnvironment:function(t,e){var Q=o.default.trimSpaces(t.GetArgument(e)),T=t.GetBrackets(e),n=t.GetBrackets(e),s=t.GetArgument(e),l=t.GetArgument(e);if(T&&!(T=o.default.trimSpaces(T)).match(/^[0-9]+$/))throw new r.default("IllegalParamNumber","Illegal number of parameters specified in %1",e);i.default.addEnvironment(t,Q,a.BeginEnv,[!0,s,l,T,n])},MacroDef:function(t,e){var Q=i.default.GetCSname(t,e),r=i.default.GetTemplate(t,e,"\\"+Q),T=t.GetArgument(e);r instanceof Array?i.default.addMacro(t,Q,a.MacroWithTemplate,[T].concat(r)):i.default.addMacro(t,Q,a.Macro,[T,r])},Let:function(t,e){var Q=i.default.GetCSname(t,e),r=t.GetNext();"="===r&&(t.i++,r=t.GetNext());var n=t.configuration.handlers;if("\\"!==r){t.i++;var o=n.get("delimiter").lookup(r);o?i.default.addDelimiter(t,"\\"+Q,o.char,o.attributes):i.default.addMacro(t,Q,a.Macro,[r])}else{e=i.default.GetCSname(t,e);var s=n.get("delimiter").lookup("\\"+e);if(s)return void i.default.addDelimiter(t,"\\"+Q,s.char,s.attributes);var l=n.get("macro").applicable(e);if(!l)return;if(l instanceof T.MacroMap){var c=l.lookup(e);return void i.default.addMacro(t,Q,c.func,c.args,c.symbol)}s=l.lookup(e);var u=i.default.disassembleSymbol(Q,s);i.default.addMacro(t,Q,(function(t,e){for(var Q=[],r=2;rt.configuration.options.maxMacros)throw new r.default("MaxMacroSub1","MathJax maximum macro substitution count exceeded; is here a recursive macro call?")},BeginEnv:function(t,e,Q,r,T,n){if(e.getProperty("end")&&t.stack.env.closing===e.getName()){delete t.stack.env.closing;var i=t.string.slice(t.i);return t.string=r,t.i=0,t.Parse(),t.string=i,t.i=0,t.itemFactory.create("end").setProperty("name",e.getName())}if(T){var a=[];if(null!=n){var s=t.GetBrackets("\\begin{"+e.getName()+"}");a.push(null==s?n:s)}for(var l=a.length;l=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},T=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},n=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},o=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},o=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.CommonInferredMrowMixin=e.CommonMrowMixin=void 0;var a=Q(18);e.CommonMrowMixin=function(t){return function(t){function e(){for(var e,Q,r=[],T=0;T1){var u=0,p=0,h=l>1&&l===c;try{for(var f=i(this.childNodes),d=f.next();!d.done;d=f.next()){var L=0===(b=d.value).stretch.dir;if(h||L){var H=b.getBBox(L),m=H.h,y=H.d;m>u&&(u=m),y>p&&(p=y)}}}catch(t){Q={error:t}}finally{try{d&&!d.done&&(r=f.return)&&r.call(f)}finally{if(Q)throw Q.error}}try{for(var v=i(o),g=v.next();!g.done;g=v.next()){var b;(b=g.value).coreMO().getStretchedVariant([u,p])}}catch(t){T={error:t}}finally{try{g&&!g.done&&(n=v.return)&&n.call(v)}finally{if(T)throw T.error}}}},e}(t)},e.CommonInferredMrowMixin=function(t){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.getScale=function(){this.bbox.scale=this.parent.bbox.scale,this.bbox.rscale=1},e}(t)}},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.CommonMlabeledtrMixin=e.CommonMtrMixin=void 0,e.CommonMtrMixin=function(t){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),Object.defineProperty(e.prototype,"fixesPWidth",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"numCells",{get:function(){return this.childNodes.length},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"labeled",{get:function(){return!1},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"tableCells",{get:function(){return this.childNodes},enumerable:!1,configurable:!0}),e.prototype.getChild=function(t){return this.childNodes[t]},e.prototype.getChildBBoxes=function(){return this.childNodes.map((function(t){return t.getBBox()}))},e.prototype.stretchChildren=function(t){var e,Q,r,T,o,i;void 0===t&&(t=null);var a=[],s=this.labeled?this.childNodes.slice(1):this.childNodes;try{for(var l=n(s),c=l.next();!c.done;c=l.next()){(V=c.value.childNodes[0]).canStretch(1)&&a.push(V)}}catch(t){e={error:t}}finally{try{c&&!c.done&&(Q=l.return)&&Q.call(l)}finally{if(e)throw e.error}}var u=a.length,p=this.childNodes.length;if(u&&p>1){if(null===t){var h=0,f=0,d=u>1&&u===p;try{for(var L=n(s),H=L.next();!H.done;H=L.next()){var m=0===(V=H.value.childNodes[0]).stretch.dir;if(d||m){var y=V.getBBox(m),v=y.h,g=y.d;v>h&&(h=v),g>f&&(f=g)}}}catch(t){r={error:t}}finally{try{H&&!H.done&&(T=L.return)&&T.call(L)}finally{if(r)throw r.error}}t=[h,f]}try{for(var b=n(a),M=b.next();!M.done;M=b.next()){var V;(V=M.value).coreMO().getStretchedVariant(t)}}catch(t){o={error:t}}finally{try{M&&!M.done&&(i=b.return)&&i.call(b)}finally{if(o)throw o.error}}}},e}(t)},e.CommonMlabeledtrMixin=function(t){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),Object.defineProperty(e.prototype,"numCells",{get:function(){return Math.max(0,this.childNodes.length-1)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"labeled",{get:function(){return!0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"tableCells",{get:function(){return this.childNodes.slice(1)},enumerable:!1,configurable:!0}),e.prototype.getChild=function(t){return this.childNodes[t+1]},e.prototype.getChildBBoxes=function(){return this.childNodes.slice(1).map((function(t){return t.getBBox()}))},e}(t)}},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.SVGmsqrt=void 0;var n=Q(4),o=Q(185),i=Q(66),a=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.dx=0,e}return T(e,t),e.prototype.toSVG=function(t){var e=this.childNodes[this.surd],Q=this.childNodes[this.base],r=this.root?this.childNodes[this.root]:null,T=this.getBBox(),n=e.getBBox(),o=Q.getBBox(),i=this.getPQ(n)[1],a=this.font.params.rule_thickness*this.bbox.scale,s=o.h+i+a,l=this.standardSVGnode(t),c=this.adaptor.append(l,this.svg("g"));this.addRoot(l,r,n,s),e.toSVG(l),e.place(this.dx,T.h-n.h-a),Q.toSVG(c),Q.place(this.dx+n.w,0),this.adaptor.append(l,this.svg("rect",{width:this.fixed(o.w),height:this.fixed(a),x:this.fixed(this.dx+n.w),y:this.fixed(T.h-2*a)}))},e.prototype.addRoot=function(t,e,Q,r){},e.kind=i.MmlMsqrt.prototype.kind,e}(o.CommonMsqrtMixin(n.SVGWrapper));e.SVGmsqrt=a},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.browserAdaptor=void 0;var r=Q(105);e.browserAdaptor=function(){return new r.HTMLAdaptor(window)}},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__assign||function(){return(n=Object.assign||function(t){for(var e,Q=1,r=arguments.length;Q0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.TeX=void 0;var i=Q(54),a=Q(7),s=Q(129),l=Q(130),c=Q(8),u=Q(12),p=Q(5),h=Q(86),f=Q(20),d=Q(2);Q(42);var L=function(t){function e(Q){void 0===Q&&(Q={});var r=this,T=o(a.separateOptions(Q,e.OPTIONS,s.FindTeX.OPTIONS),3),n=T[0],i=T[1],c=T[2];(r=t.call(this,i)||this).findTeX=r.options.FindTeX||new s.FindTeX(c);var u=r.options.packages,p=r.configuration=e.configure(u),d=r._parseOptions=new h.default(p,[r.options,f.TagsFactory.OPTIONS]);return a.userOptions(d.options,n),p.config(r),e.tags(d,p),r.postFilters.add(l.default.cleanSubSup,-6),r.postFilters.add(l.default.setInherited,-5),r.postFilters.add(l.default.moveLimits,-4),r.postFilters.add(l.default.cleanStretchy,-3),r.postFilters.add(l.default.cleanAttributes,-2),r.postFilters.add(l.default.combineRelations,-1),r}return T(e,t),e.configure=function(t){var e=new d.ParserConfiguration(t);return e.init(),e},e.tags=function(t,e){f.TagsFactory.addTags(e.tags),f.TagsFactory.setDefault(t.options.tags),t.tags=f.TagsFactory.getDefault(),t.tags.configuration=t},e.prototype.setMmlFactory=function(e){t.prototype.setMmlFactory.call(this,e),this._parseOptions.nodeFactory.setMmlFactory(e)},Object.defineProperty(e.prototype,"parseOptions",{get:function(){return this._parseOptions},enumerable:!1,configurable:!0}),e.prototype.compile=function(t,e){this.parseOptions.clear(),this.executeFilters(this.preFilters,t,e,this.parseOptions);var Q,r=t.display;this.latex=t.math,this.parseOptions.tags.startEquation(t);try{Q=new u.default(this.latex,{display:r,isInner:!1},this.parseOptions).mml()}catch(t){if(!(t instanceof p.default))throw t;this.parseOptions.error=!0,Q=this.options.formatError(this,t)}return Q=this.parseOptions.nodeFactory.create("node","math",[Q]),r&&c.default.setAttribute(Q,"display","block"),this.parseOptions.tags.finishEquation(t),this.parseOptions.root=Q,this.executeFilters(this.postFilters,t,e,this.parseOptions),this.mathNode=this.parseOptions.root,this.mathNode},e.prototype.findMath=function(t){return this.findTeX.findMath(t)},e.prototype.formatError=function(t){var e=t.message.replace(/\n.*/,"");return this.parseOptions.nodeFactory.create("error",e,t.id,this.latex)},e.NAME="TeX",e.OPTIONS=n(n({},i.AbstractInputJax.OPTIONS),{FindTeX:null,packages:["base"],digits:/^(?:[0-9]+(?:\{,\}[0-9]{3})*(?:\.[0-9]*)?|\.[0-9]+)/,maxBuffer:5120,formatError:function(t,e){return t.formatError(e)}}),e}(i.AbstractInputJax);e.TeX=L},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AllPackages=void 0,Q(42),Q(132),Q(133),Q(135),Q(137),Q(138),Q(139),Q(142),Q(145),Q(146),Q(150),Q(151),Q(87),Q(152),Q(154),Q(156),Q(89),Q(157),Q(158),Q(159),Q(162),Q(163),Q(165),Q(166),"undefined"!=typeof MathJax&&MathJax.loader&&MathJax.loader.preLoad("[tex]/action","[tex]/ams","[tex]/amscd","[tex]/bbox","[tex]/boldsymbol","[tex]/braket","[tex]/bussproofs","[tex]/cancel","[tex]/color","[tex]/colorv2","[tex]/enclose","[tex]/extpfeil","[tex]/html","[tex]/mhchem","[tex]/newcommand","[tex]/noerrors","[tex]/noundefined","[tex]/physics","[tex]/unicode","[tex]/verb","[tex]/configmacros","[tex]/tagformat","[tex]/textmacros"),e.AllPackages=["base","action","ams","amscd","bbox","boldsymbol","braket","bussproofs","cancel","color","enclose","extpfeil","html","mhchem","newcommand","noerrors","noundefined","unicode","verb","configmacros","tagformat","textmacros"]},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__assign||function(){return(n=Object.assign||function(t){for(var e,Q=1,r=arguments.length;Q0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},i=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.MenuHandler=e.MenuMathDocumentMixin=e.MenuMathItemMixin=void 0;var s=Q(25),l=Q(14),c=Q(7),u=Q(268);function p(t){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.addMenu=function(t,e){void 0===e&&(e=!1),this.state()>=l.STATE.CONTEXT_MENU||(this.isEscaped||!t.options.enableMenu&&!e||t.menu.addMenu(this),this.state(l.STATE.CONTEXT_MENU))},e.prototype.checkLoading=function(t){t.checkLoading()},e}(t)}function h(t){var e;return(e=function(t){function e(){for(var e=[],Q=0;Q0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},i=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.AssistiveMmlHandler=e.AssistiveMmlMathDocumentMixin=e.AssistiveMmlMathItemMixin=e.LimitedMmlVisitor=void 0;var s=Q(14),l=Q(83),c=Q(7),u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.getAttributes=function(e){return t.prototype.getAttributes.call(this,e).replace(/ ?id=".*?"/,"")},e}(l.SerializedMmlVisitor);function p(t){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.assistiveMml=function(t,e){if(void 0===e&&(e=!1),!(this.state()>=s.STATE.ASSISTIVEMML)){if(!this.isEscaped&&(t.options.enableAssistiveMml||e)){var Q=t.adaptor,r=t.toMML(this.root).replace(/\n */g,"").replace(//g,""),T=Q.firstChild(Q.body(Q.parse(r,"text/html"))),n=Q.node("mjx-assistive-mml",{role:"presentation",unselectable:"on",display:this.display?"block":"inline"},[T]);Q.setAttribute(this.typesetRoot,"role","presentation"),Q.setAttribute(Q.firstChild(this.typesetRoot),"aria-hidden","true"),Q.setStyle(this.typesetRoot,"position","relative"),Q.append(this.typesetRoot,n)}this.state(s.STATE.ASSISTIVEMML)}},e}(t)}function h(t){var e;return(e=function(t){function e(){for(var e=[],Q=0;Q=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractMenu=void 0;var o=Q(102),i=Q(36),a=Q(10),s=Q(103),l=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.className=a.HtmlClasses.CONTEXTMENU,e.role="menu",e._items=[],e._baseMenu=null,e}return T(e,t),Object.defineProperty(e.prototype,"baseMenu",{get:function(){return this._baseMenu},set:function(t){this._baseMenu=t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"items",{get:function(){return this._items},set:function(t){this._items=t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"pool",{get:function(){return this.variablePool},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"focused",{get:function(){return this._focused},set:function(t){if(this._focused!==t){this._focused||this.unfocus();var e=this._focused;this._focused=t,e&&e.unfocus()}},enumerable:!1,configurable:!0}),e.prototype.up=function(t){var e=this.items.filter((function(t){return t instanceof i.AbstractItem&&!t.isHidden()}));if(0!==e.length)if(this.focused){var Q=e.indexOf(this.focused);-1!==Q&&e[Q=Q?--Q:e.length-1].focus()}else e[e.length-1].focus()},e.prototype.down=function(t){var e=this.items.filter((function(t){return t instanceof i.AbstractItem&&!t.isHidden()}));if(0!==e.length)if(this.focused){var Q=e.indexOf(this.focused);-1!==Q&&e[Q=++Q===e.length?0:Q].focus()}else e[0].focus()},e.prototype.generateHtml=function(){t.prototype.generateHtml.call(this),this.generateMenu()},e.prototype.generateMenu=function(){var t,e,Q=this.html;Q.classList.add(a.HtmlClasses.MENU);try{for(var r=n(this.items),T=r.next();!T.done;T=r.next()){var o=T.value;if(o.isHidden()){var i=o.html;i.parentNode&&i.parentNode.removeChild(i)}else Q.appendChild(o.html)}}catch(e){t={error:e}}finally{try{T&&!T.done&&(e=r.return)&&e.call(r)}finally{if(t)throw t.error}}},e.prototype.post=function(e,Q){this.variablePool.update(),t.prototype.post.call(this,e,Q)},e.prototype.unpostSubmenus=function(){var t,e,Q=this.items.filter((function(t){return t instanceof s.Submenu}));try{for(var r=n(Q),T=r.next();!T.done;T=r.next()){var o=T.value;o.submenu.unpost(),o!==this.focused&&o.unfocus()}}catch(e){t={error:e}}finally{try{T&&!T.done&&(e=r.return)&&e.call(r)}finally{if(t)throw t.error}}},e.prototype.unpost=function(){t.prototype.unpost.call(this),this.unpostSubmenus(),this.focused=null},e.prototype.find=function(t){var e,Q;try{for(var r=n(this.items),T=r.next();!T.done;T=r.next()){var o=T.value;if("rule"!==o.type){if(o.id===t)return o;if("submenu"===o.type){var i=o.submenu.find(t);if(i)return i}}}}catch(t){e={error:t}}finally{try{T&&!T.done&&(Q=r.return)&&Q.call(r)}finally{if(e)throw e.error}}return null},e}(o.AbstractPostable);e.AbstractMenu=l},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractPostable=void 0;var n=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.posted=!1,e}return T(e,t),e.prototype.isPosted=function(){return this.posted},e.prototype.post=function(t,e){this.posted||(void 0!==t&&void 0!==e&&this.html.setAttribute("style","left: "+t+"px; top: "+e+"px;"),this.display(),this.posted=!0)},e.prototype.unpost=function(){if(this.posted){var t=this.html;t.parentNode&&t.parentNode.removeChild(t),this.posted=!1}},e}(Q(274).MenuElement);e.AbstractPostable=n},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.Submenu=void 0;var n=Q(36),o=Q(10),i=function(t){function e(e,Q,r){var T=t.call(this,e,"submenu",Q,r)||this;return T._submenu=null,T}return T(e,t),e.fromJson=function(t,e,Q){var r=e.content,T=e.menu,n=new this(Q,r,e.id),o=t.get("subMenu")(t,T,n);return n.submenu=o,n},Object.defineProperty(e.prototype,"submenu",{get:function(){return this._submenu},set:function(t){this._submenu=t},enumerable:!1,configurable:!0}),e.prototype.mouseover=function(t){this.focus(),this.stop(t)},e.prototype.mouseout=function(t){this.stop(t)},e.prototype.unfocus=function(){if(this.submenu.isPosted()){if(this.menu.focused!==this)return t.prototype.unfocus.call(this),void this.menu.unpostSubmenus();this.html.setAttribute("tabindex","-1"),this.html.blur()}else t.prototype.unfocus.call(this)},e.prototype.focus=function(){t.prototype.focus.call(this),this.submenu.isPosted()||this.disabled||this.submenu.post()},e.prototype.executeAction=function(){this.submenu.isPosted()?this.submenu.unpost():this.submenu.post()},e.prototype.generateHtml=function(){t.prototype.generateHtml.call(this);var e=this.html;this.span=document.createElement("span"),this.span.textContent="\u25ba",this.span.classList.add(o.HtmlClasses.MENUARROW),e.appendChild(this.span),e.setAttribute("aria-haspopup","true")},e.prototype.left=function(e){this.submenu.isPosted()?this.submenu.unpost():t.prototype.left.call(this,e)},e.prototype.right=function(t){this.submenu.isPosted()?this.submenu.down(t):this.submenu.post()},e.prototype.toJson=function(){return{type:""}},e}(n.AbstractItem);e.Submenu=i},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.Info=void 0;var n=Q(300),o=Q(10),i=function(t){function e(e,Q,r){var T=t.call(this)||this;return T.title=e,T.signature=r,T.className=o.HtmlClasses.INFO,T.role="dialog",T.contentDiv=T.generateContent(),T.close=T.generateClose(),T.content=Q||function(){return""},T}return T(e,t),e.prototype.attachMenu=function(t){this.menu=t},e.prototype.generateHtml=function(){t.prototype.generateHtml.call(this);var e=this.html;e.appendChild(this.generateTitle()),e.appendChild(this.contentDiv),e.appendChild(this.generateSignature()),e.appendChild(this.close.html),e.setAttribute("tabindex","0")},e.prototype.post=function(){t.prototype.post.call(this);var e=document.documentElement,Q=this.html,r=window.innerHeight||e.clientHeight||e.scrollHeight||0,T=Math.floor(-Q.offsetWidth/2),n=Math.floor((r-Q.offsetHeight)/3);Q.setAttribute("style","margin-left: "+T+"px; top: "+n+"px;"),window.event instanceof MouseEvent&&Q.classList.add(o.HtmlClasses.MOUSEPOST),Q.focus()},e.prototype.display=function(){this.menu.registerWidget(this),this.contentDiv.innerHTML=this.content();var t=this.menu.html;t.parentNode&&t.parentNode.removeChild(t),this.menu.frame.appendChild(this.html)},e.prototype.click=function(t){},e.prototype.keydown=function(e){this.bubbleKey(),t.prototype.keydown.call(this,e)},e.prototype.escape=function(t){this.unpost()},e.prototype.unpost=function(){t.prototype.unpost.call(this),this.html.classList.remove(o.HtmlClasses.MOUSEPOST),this.menu.unregisterWidget(this)},e.prototype.generateClose=function(){var t=new n.CloseButton(this),e=t.html;return e.classList.add(o.HtmlClasses.INFOCLOSE),e.setAttribute("aria-label","Close Dialog Box"),t},e.prototype.generateTitle=function(){var t=document.createElement("span");return t.innerHTML=this.title,t.classList.add(o.HtmlClasses.INFOTITLE),t},e.prototype.generateContent=function(){var t=document.createElement("div");return t.classList.add(o.HtmlClasses.INFOCONTENT),t.setAttribute("tabindex","0"),t},e.prototype.generateSignature=function(){var t=document.createElement("span");return t.innerHTML=this.signature,t.classList.add(o.HtmlClasses.INFOSIGNATURE),t},e.prototype.toJson=function(){return{type:""}},e}(Q(102).AbstractPostable);e.Info=i},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.HTMLAdaptor=void 0;var o=function(t){function e(e){var Q=t.call(this,e.document)||this;return Q.window=e,Q.parser=new e.DOMParser,Q}return T(e,t),e.prototype.parse=function(t,e){return void 0===e&&(e="text/html"),this.parser.parseFromString(t,e)},e.prototype.create=function(t,e){return e?this.document.createElementNS(e,t):this.document.createElement(t)},e.prototype.text=function(t){return this.document.createTextNode(t)},e.prototype.head=function(t){return t.head},e.prototype.body=function(t){return t.body},e.prototype.root=function(t){return t.documentElement},e.prototype.doctype=function(t){return""},e.prototype.tags=function(t,e,Q){void 0===Q&&(Q=null);var r=Q?t.getElementsByTagNameNS(Q,e):t.getElementsByTagName(e);return Array.from(r)},e.prototype.getElements=function(t,e){var Q,r,T=[];try{for(var o=n(t),i=o.next();!i.done;i=o.next()){var a=i.value;"string"==typeof a?T=T.concat(Array.from(this.document.querySelectorAll(a))):Array.isArray(a)||a instanceof this.window.NodeList||a instanceof this.window.HTMLCollection?T=T.concat(Array.from(a)):T.push(a)}}catch(t){Q={error:t}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(Q)throw Q.error}}return T},e.prototype.contains=function(t,e){return t.contains(e)},e.prototype.parent=function(t){return t.parentNode},e.prototype.append=function(t,e){return t.appendChild(e)},e.prototype.insert=function(t,e){return this.parent(e).insertBefore(t,e)},e.prototype.remove=function(t){return this.parent(t).removeChild(t)},e.prototype.replace=function(t,e){return this.parent(e).replaceChild(t,e)},e.prototype.clone=function(t){return t.cloneNode(!0)},e.prototype.split=function(t,e){return t.splitText(e)},e.prototype.next=function(t){return t.nextSibling},e.prototype.previous=function(t){return t.previousSibling},e.prototype.firstChild=function(t){return t.firstChild},e.prototype.lastChild=function(t){return t.lastChild},e.prototype.childNodes=function(t){return Array.from(t.childNodes)},e.prototype.childNode=function(t,e){return t.childNodes[e]},e.prototype.kind=function(t){return t.nodeName.toLowerCase()},e.prototype.value=function(t){return t.nodeValue||""},e.prototype.textContent=function(t){return t.textContent},e.prototype.innerHTML=function(t){return t.innerHTML},e.prototype.outerHTML=function(t){return t.outerHTML},e.prototype.setAttribute=function(t,e,Q,r){return void 0===r&&(r=null),r?(e=r.replace(/.*\//,"")+":"+e.replace(/^.*:/,""),t.setAttributeNS(r,e,Q)):t.setAttribute(e,Q)},e.prototype.getAttribute=function(t,e){return t.getAttribute(e)},e.prototype.removeAttribute=function(t,e){return t.removeAttribute(e)},e.prototype.hasAttribute=function(t,e){return t.hasAttribute(e)},e.prototype.allAttributes=function(t){return Array.from(t.attributes).map((function(t){return{name:t.name,value:t.value}}))},e.prototype.addClass=function(t,e){t.classList?t.classList.add(e):t.className=(t.className+" "+e).trim()},e.prototype.removeClass=function(t,e){t.classList?t.classList.remove(e):t.className=t.className.split(/ /).filter((function(t){return t!==e})).join(" ")},e.prototype.hasClass=function(t,e){return t.classList?t.classList.contains(e):t.className.split(/ /).indexOf(e)>=0},e.prototype.setStyle=function(t,e,Q){t.style[e]=Q},e.prototype.getStyle=function(t,e){return t.style[e]},e.prototype.allStyles=function(t){return t.style.cssText},e.prototype.fontSize=function(t){var e=this.window.getComputedStyle(t);return parseFloat(e.fontSize)},e.prototype.fontFamily=function(t){return this.window.getComputedStyle(t).fontFamily||""},e.prototype.nodeSize=function(t,e,Q){if(void 0===e&&(e=1),void 0===Q&&(Q=!1),Q&&t.getBBox){var r=t.getBBox();return[r.width/e,r.height/e]}return[t.offsetWidth/e,t.offsetHeight/e]},e.prototype.nodeBBox=function(t){var e=t.getBoundingClientRect();return{left:e.left,right:e.right,top:e.top,bottom:e.bottom}},e}(Q(106).AbstractDOMAdaptor);e.HTMLAdaptor=o},function(t,e,Q){"use strict";var r=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractDOMAdaptor=void 0;var T=function(){function t(t){void 0===t&&(t=null),this.document=t}return t.prototype.node=function(t,e,Q,T){var n,o;void 0===e&&(e={}),void 0===Q&&(Q=[]);var i=this.create(t,T);this.setAttributes(i,e);try{for(var a=r(Q),s=a.next();!s.done;s=a.next()){var l=s.value;this.append(i,l)}}catch(t){n={error:t}}finally{try{s&&!s.done&&(o=a.return)&&o.call(a)}finally{if(n)throw n.error}}return i},t.prototype.setAttributes=function(t,e){var Q,T,n,o,i,a;if(e.style&&"string"!=typeof e.style)try{for(var s=r(Object.keys(e.style)),l=s.next();!l.done;l=s.next()){var c=l.value;this.setStyle(t,c.replace(/-([a-z])/g,(function(t,e){return e.toUpperCase()})),e.style[c])}}catch(t){Q={error:t}}finally{try{l&&!l.done&&(T=s.return)&&T.call(s)}finally{if(Q)throw Q.error}}if(e.properties)try{for(var u=r(Object.keys(e.properties)),p=u.next();!p.done;p=u.next()){t[c=p.value]=e.properties[c]}}catch(t){n={error:t}}finally{try{p&&!p.done&&(o=u.return)&&o.call(u)}finally{if(n)throw n.error}}try{for(var h=r(Object.keys(e)),f=h.next();!f.done;f=h.next()){"style"===(c=f.value)&&"string"!=typeof e.style||"properties"===c||this.setAttribute(t,c,e[c])}}catch(t){i={error:t}}finally{try{f&&!f.done&&(a=h.return)&&a.call(h)}finally{if(i)throw i.error}}},t.prototype.replace=function(t,e){return this.insert(t,e),this.remove(e),e},t.prototype.childNode=function(t,e){return this.childNodes(t)[e]},t.prototype.allClasses=function(t){var e=this.getAttribute(t,"class");return e?e.replace(/ +/g," ").replace(/^ /,"").replace(/ $/,"").split(/ /):[]},t}();e.AbstractDOMAdaptor=T},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractFindMath=void 0;var r=Q(7),T=function(){function t(t){var e=this.constructor;this.options=r.userOptions(r.defaultOptions({},e.OPTIONS),t)}return t.OPTIONS={},t}();e.AbstractFindMath=T},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractHandler=void 0;var n=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e}(Q(53).AbstractMathDocument),o=function(){function t(t,e){void 0===e&&(e=5),this.documentClass=n,this.adaptor=t,this.priority=e}return Object.defineProperty(t.prototype,"name",{get:function(){return this.constructor.NAME},enumerable:!1,configurable:!0}),t.prototype.handlesDocument=function(t){return!1},t.prototype.create=function(t,e){return new this.documentClass(t,this.adaptor,e)},t.NAME="generic",t}();e.AbstractHandler=o},function(t,e,Q){"use strict";var r=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},T=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.LinkedList=e.ListItem=e.END=void 0,e.END=Symbol();var o=function(t){void 0===t&&(t=null),this.next=null,this.prev=null,this.data=t};e.ListItem=o;var i=function(){function t(){for(var t=[],Q=0;Q1;){var s=T.shift(),l=T.shift();s.merge(l,e),T.push(s)}return T.length&&(this.list=T[0].list),this},t.prototype.merge=function(t,Q){var T,n,o,i,a;void 0===Q&&(Q=null),null===Q&&(Q=this.isBefore.bind(this));for(var s=this.list.next,l=t.list.next;s.data!==e.END&&l.data!==e.END;)Q(l.data,s.data)?(T=r([s,l],2),l.prev.next=T[0],s.prev.next=T[1],n=r([s.prev,l.prev],2),l.prev=n[0],s.prev=n[1],o=r([t.list,this.list],2),this.list.prev.next=o[0],t.list.prev.next=o[1],i=r([t.list.prev,this.list.prev],2),this.list.prev=i[0],t.list.prev=i[1],s=(a=r([l.next,s],2))[0],l=a[1]):s=s.next;return l.data!==e.END&&(this.list.prev.next=t.list.next,t.list.next.prev=this.list.prev,t.list.prev.next=this.list,this.list.prev=t.list.prev,t.list.next=t.list.prev=t.list),this},t}();e.LinkedList=i},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractNodeFactory=void 0;var n=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.create=function(t,e,Q){return void 0===e&&(e={}),void 0===Q&&(Q=[]),this.node[t](e,Q)},e}(Q(37).AbstractFactory);e.AbstractNodeFactory=n},function(t,e,Q){"use strict";var r;Object.defineProperty(e,"__esModule",{value:!0}),e.MML=void 0;var T=Q(0),n=Q(59),o=Q(38),i=Q(60),a=Q(31),s=Q(61),l=Q(62),c=Q(63),u=Q(64),p=Q(65),h=Q(66),f=Q(67),d=Q(113),L=Q(68),H=Q(69),m=Q(70),y=Q(71),v=Q(72),g=Q(73),b=Q(39),M=Q(74),V=Q(75),x=Q(76),O=Q(77),_=Q(78),S=Q(114),E=Q(115),C=Q(79),w=Q(80),A=Q(81),P=Q(116);e.MML=((r={})[n.MmlMath.prototype.kind]=n.MmlMath,r[o.MmlMi.prototype.kind]=o.MmlMi,r[i.MmlMn.prototype.kind]=i.MmlMn,r[a.MmlMo.prototype.kind]=a.MmlMo,r[s.MmlMtext.prototype.kind]=s.MmlMtext,r[l.MmlMspace.prototype.kind]=l.MmlMspace,r[c.MmlMs.prototype.kind]=c.MmlMs,r[u.MmlMrow.prototype.kind]=u.MmlMrow,r[u.MmlInferredMrow.prototype.kind]=u.MmlInferredMrow,r[p.MmlMfrac.prototype.kind]=p.MmlMfrac,r[h.MmlMsqrt.prototype.kind]=h.MmlMsqrt,r[f.MmlMroot.prototype.kind]=f.MmlMroot,r[d.MmlMstyle.prototype.kind]=d.MmlMstyle,r[L.MmlMerror.prototype.kind]=L.MmlMerror,r[H.MmlMpadded.prototype.kind]=H.MmlMpadded,r[m.MmlMphantom.prototype.kind]=m.MmlMphantom,r[y.MmlMfenced.prototype.kind]=y.MmlMfenced,r[v.MmlMenclose.prototype.kind]=v.MmlMenclose,r[g.MmlMaction.prototype.kind]=g.MmlMaction,r[b.MmlMsub.prototype.kind]=b.MmlMsub,r[b.MmlMsup.prototype.kind]=b.MmlMsup,r[b.MmlMsubsup.prototype.kind]=b.MmlMsubsup,r[M.MmlMunder.prototype.kind]=M.MmlMunder,r[M.MmlMover.prototype.kind]=M.MmlMover,r[M.MmlMunderover.prototype.kind]=M.MmlMunderover,r[V.MmlMmultiscripts.prototype.kind]=V.MmlMmultiscripts,r[V.MmlMprescripts.prototype.kind]=V.MmlMprescripts,r[V.MmlNone.prototype.kind]=V.MmlNone,r[x.MmlMtable.prototype.kind]=x.MmlMtable,r[O.MmlMlabeledtr.prototype.kind]=O.MmlMlabeledtr,r[O.MmlMtr.prototype.kind]=O.MmlMtr,r[_.MmlMtd.prototype.kind]=_.MmlMtd,r[S.MmlMaligngroup.prototype.kind]=S.MmlMaligngroup,r[E.MmlMalignmark.prototype.kind]=E.MmlMalignmark,r[C.MmlMglyph.prototype.kind]=C.MmlMglyph,r[w.MmlSemantics.prototype.kind]=w.MmlSemantics,r[w.MmlAnnotation.prototype.kind]=w.MmlAnnotation,r[w.MmlAnnotationXML.prototype.kind]=w.MmlAnnotationXML,r[A.TeXAtom.prototype.kind]=A.TeXAtom,r[P.MathChoice.prototype.kind]=P.MathChoice,r[T.TextNode.prototype.kind]=T.TextNode,r[T.XMLNode.prototype.kind]=T.XMLNode,r)},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.OPTABLE=e.MMLSPACING=e.RANGES=e.MO=e.OPDEF=void 0;var r=Q(0);function T(t,e,Q,T){return void 0===Q&&(Q=r.TEXCLASS.BIN),void 0===T&&(T=null),[t,e,Q,T]}e.OPDEF=T,e.MO={ORD:T(0,0,r.TEXCLASS.ORD),ORD11:T(1,1,r.TEXCLASS.ORD),ORD21:T(2,1,r.TEXCLASS.ORD),ORD02:T(0,2,r.TEXCLASS.ORD),ORD55:T(5,5,r.TEXCLASS.ORD),OP:T(1,2,r.TEXCLASS.OP,{largeop:!0,movablelimits:!0,symmetric:!0}),OPFIXED:T(1,2,r.TEXCLASS.OP,{largeop:!0,movablelimits:!0}),INTEGRAL:T(0,1,r.TEXCLASS.OP,{largeop:!0,symmetric:!0}),INTEGRAL2:T(1,2,r.TEXCLASS.OP,{largeop:!0,symmetric:!0}),BIN3:T(3,3,r.TEXCLASS.BIN),BIN4:T(4,4,r.TEXCLASS.BIN),BIN01:T(0,1,r.TEXCLASS.BIN),BIN5:T(5,5,r.TEXCLASS.BIN),TALLBIN:T(4,4,r.TEXCLASS.BIN,{stretchy:!0}),BINOP:T(4,4,r.TEXCLASS.BIN,{largeop:!0,movablelimits:!0}),REL:T(5,5,r.TEXCLASS.REL),REL1:T(1,1,r.TEXCLASS.REL,{stretchy:!0}),REL4:T(4,4,r.TEXCLASS.REL),RELSTRETCH:T(5,5,r.TEXCLASS.REL,{stretchy:!0}),RELACCENT:T(5,5,r.TEXCLASS.REL,{accent:!0}),WIDEREL:T(5,5,r.TEXCLASS.REL,{accent:!0,stretchy:!0}),OPEN:T(0,0,r.TEXCLASS.OPEN,{fence:!0,stretchy:!0,symmetric:!0}),CLOSE:T(0,0,r.TEXCLASS.CLOSE,{fence:!0,stretchy:!0,symmetric:!0}),INNER:T(0,0,r.TEXCLASS.INNER),PUNCT:T(0,3,r.TEXCLASS.PUNCT),ACCENT:T(0,0,r.TEXCLASS.ORD,{accent:!0}),WIDEACCENT:T(0,0,r.TEXCLASS.ORD,{accent:!0,stretchy:!0})},e.RANGES=[[32,127,r.TEXCLASS.REL,"BasicLatin"],[160,255,r.TEXCLASS.ORD,"Latin1Supplement"],[256,383,r.TEXCLASS.ORD,"LatinExtendedA"],[384,591,r.TEXCLASS.ORD,"LatinExtendedB"],[688,767,r.TEXCLASS.ORD,"SpacingModLetters"],[768,879,r.TEXCLASS.ORD,"CombDiacritMarks"],[880,1023,r.TEXCLASS.ORD,"GreekAndCoptic"],[7680,7935,r.TEXCLASS.ORD,"LatinExtendedAdditional"],[8192,8303,r.TEXCLASS.PUNCT,"GeneralPunctuation"],[8304,8351,r.TEXCLASS.ORD,"SuperAndSubscripts"],[8352,8399,r.TEXCLASS.ORD,"Currency"],[8400,8447,r.TEXCLASS.ORD,"CombDiactForSymbols"],[8448,8527,r.TEXCLASS.ORD,"LetterlikeSymbols"],[8528,8591,r.TEXCLASS.ORD,"NumberForms"],[8592,8703,r.TEXCLASS.REL,"Arrows"],[8704,8959,r.TEXCLASS.BIN,"MathOperators"],[8960,9215,r.TEXCLASS.ORD,"MiscTechnical"],[9312,9471,r.TEXCLASS.ORD,"EnclosedAlphaNums"],[9472,9631,r.TEXCLASS.ORD,"BoxDrawing"],[9632,9727,r.TEXCLASS.ORD,"GeometricShapes"],[9984,10175,r.TEXCLASS.ORD,"Dingbats"],[10176,10223,r.TEXCLASS.ORD,"MiscMathSymbolsA"],[10224,10239,r.TEXCLASS.REL,"SupplementalArrowsA"],[10496,10623,r.TEXCLASS.REL,"SupplementalArrowsB"],[10624,10751,r.TEXCLASS.ORD,"MiscMathSymbolsB"],[10752,11007,r.TEXCLASS.BIN,"SuppMathOperators"],[11008,11263,r.TEXCLASS.ORD,"MiscSymbolsAndArrows"],[119808,120831,r.TEXCLASS.ORD,"MathAlphabets"]],e.MMLSPACING=[[0,0],[1,2],[3,3],[4,4],[0,0],[0,0],[0,3]],e.OPTABLE={prefix:{"(":e.MO.OPEN,"+":e.MO.BIN01,"-":e.MO.BIN01,"[":e.MO.OPEN,"{":e.MO.OPEN,"|":e.MO.OPEN,"||":[0,0,r.TEXCLASS.BIN,{fence:!0,stretchy:!0,symmetric:!0}],"|||":[0,0,r.TEXCLASS.ORD,{fence:!0,stretchy:!0,symmetric:!0}],"\xac":e.MO.ORD21,"\xb1":e.MO.BIN01,"\u2016":[0,0,r.TEXCLASS.ORD,{fence:!0,stretchy:!0}],"\u2018":[0,0,r.TEXCLASS.OPEN,{fence:!0}],"\u201c":[0,0,r.TEXCLASS.OPEN,{fence:!0}],"\u2145":e.MO.ORD21,"\u2146":T(2,0,r.TEXCLASS.ORD),"\u2200":e.MO.ORD21,"\u2202":e.MO.ORD21,"\u2203":e.MO.ORD21,"\u2204":e.MO.ORD21,"\u2207":e.MO.ORD21,"\u220f":e.MO.OP,"\u2210":e.MO.OP,"\u2211":e.MO.OP,"\u2212":e.MO.BIN01,"\u2213":e.MO.BIN01,"\u221a":[1,1,r.TEXCLASS.ORD,{stretchy:!0}],"\u221b":e.MO.ORD11,"\u221c":e.MO.ORD11,"\u2220":e.MO.ORD,"\u2221":e.MO.ORD,"\u2222":e.MO.ORD,"\u222b":e.MO.INTEGRAL,"\u222c":e.MO.INTEGRAL,"\u222d":e.MO.INTEGRAL,"\u222e":e.MO.INTEGRAL,"\u222f":e.MO.INTEGRAL,"\u2230":e.MO.INTEGRAL,"\u2231":e.MO.INTEGRAL,"\u2232":e.MO.INTEGRAL,"\u2233":e.MO.INTEGRAL,"\u22c0":e.MO.OP,"\u22c1":e.MO.OP,"\u22c2":e.MO.OP,"\u22c3":e.MO.OP,"\u2308":e.MO.OPEN,"\u230a":e.MO.OPEN,"\u2772":e.MO.OPEN,"\u27e6":e.MO.OPEN,"\u27e8":e.MO.OPEN,"\u27ea":e.MO.OPEN,"\u27ec":e.MO.OPEN,"\u27ee":e.MO.OPEN,"\u2980":[0,0,r.TEXCLASS.ORD,{fence:!0,stretchy:!0}],"\u2983":e.MO.OPEN,"\u2985":e.MO.OPEN,"\u2987":e.MO.OPEN,"\u2989":e.MO.OPEN,"\u298b":e.MO.OPEN,"\u298d":e.MO.OPEN,"\u298f":e.MO.OPEN,"\u2991":e.MO.OPEN,"\u2993":e.MO.OPEN,"\u2995":e.MO.OPEN,"\u2997":e.MO.OPEN,"\u29fc":e.MO.OPEN,"\u2a00":e.MO.OP,"\u2a01":e.MO.OP,"\u2a02":e.MO.OP,"\u2a03":e.MO.OP,"\u2a04":e.MO.OP,"\u2a05":e.MO.OP,"\u2a06":e.MO.OP,"\u2a07":e.MO.OP,"\u2a08":e.MO.OP,"\u2a09":e.MO.OP,"\u2a0a":e.MO.OP,"\u2a0b":e.MO.INTEGRAL2,"\u2a0c":e.MO.INTEGRAL,"\u2a0d":e.MO.INTEGRAL2,"\u2a0e":e.MO.INTEGRAL2,"\u2a0f":e.MO.INTEGRAL2,"\u2a10":e.MO.OP,"\u2a11":e.MO.OP,"\u2a12":e.MO.OP,"\u2a13":e.MO.OP,"\u2a14":e.MO.OP,"\u2a15":e.MO.INTEGRAL2,"\u2a16":e.MO.INTEGRAL2,"\u2a17":e.MO.INTEGRAL2,"\u2a18":e.MO.INTEGRAL2,"\u2a19":e.MO.INTEGRAL2,"\u2a1a":e.MO.INTEGRAL2,"\u2a1b":e.MO.INTEGRAL2,"\u2a1c":e.MO.INTEGRAL2,"\u2afc":e.MO.OP,"\u2aff":e.MO.OP},postfix:{"!!":T(1,0),"!":[1,0,r.TEXCLASS.CLOSE,null],"&":e.MO.ORD,")":e.MO.CLOSE,"++":T(0,0),"--":T(0,0),"..":T(0,0),"...":e.MO.ORD,"'":e.MO.ACCENT,"]":e.MO.CLOSE,"^":e.MO.WIDEACCENT,_:e.MO.WIDEACCENT,"`":e.MO.ACCENT,"|":e.MO.CLOSE,"}":e.MO.CLOSE,"~":e.MO.WIDEACCENT,"||":[0,0,r.TEXCLASS.BIN,{fence:!0,stretchy:!0,symmetric:!0}],"|||":[0,0,r.TEXCLASS.ORD,{fence:!0,stretchy:!0,symmetric:!0}],"\xa8":e.MO.ACCENT,"\xaf":e.MO.WIDEACCENT,"\xb0":e.MO.ORD,"\xb4":e.MO.ACCENT,"\xb8":e.MO.ACCENT,"\u02c6":e.MO.WIDEACCENT,"\u02c7":e.MO.WIDEACCENT,"\u02c9":e.MO.WIDEACCENT,"\u02ca":e.MO.ACCENT,"\u02cb":e.MO.ACCENT,"\u02cd":e.MO.WIDEACCENT,"\u02d8":e.MO.ACCENT,"\u02d9":e.MO.ACCENT,"\u02da":e.MO.ACCENT,"\u02dc":e.MO.WIDEACCENT,"\u02dd":e.MO.ACCENT,"\u02f7":e.MO.WIDEACCENT,"\u0302":e.MO.WIDEACCENT,"\u0311":e.MO.ACCENT,"\u03f6":e.MO.REL,"\u2016":[0,0,r.TEXCLASS.ORD,{fence:!0,stretchy:!0}],"\u2019":[0,0,r.TEXCLASS.CLOSE,{fence:!0}],"\u201d":[0,0,r.TEXCLASS.CLOSE,{fence:!0}],"\u2032":e.MO.ORD02,"\u203e":e.MO.WIDEACCENT,"\u20db":e.MO.ACCENT,"\u20dc":e.MO.ACCENT,"\u2309":e.MO.CLOSE,"\u230b":e.MO.CLOSE,"\u23b4":e.MO.WIDEACCENT,"\u23b5":e.MO.WIDEACCENT,"\u23dc":e.MO.WIDEACCENT,"\u23dd":e.MO.WIDEACCENT,"\u23de":e.MO.WIDEACCENT,"\u23df":e.MO.WIDEACCENT,"\u23e0":e.MO.WIDEACCENT,"\u23e1":e.MO.WIDEACCENT,"\u25a0":e.MO.BIN3,"\u25a1":e.MO.BIN3,"\u25aa":e.MO.BIN3,"\u25ab":e.MO.BIN3,"\u25ad":e.MO.BIN3,"\u25ae":e.MO.BIN3,"\u25af":e.MO.BIN3,"\u25b0":e.MO.BIN3,"\u25b1":e.MO.BIN3,"\u25b2":e.MO.BIN4,"\u25b4":e.MO.BIN4,"\u25b6":e.MO.BIN4,"\u25b7":e.MO.BIN4,"\u25b8":e.MO.BIN4,"\u25bc":e.MO.BIN4,"\u25be":e.MO.BIN4,"\u25c0":e.MO.BIN4,"\u25c1":e.MO.BIN4,"\u25c2":e.MO.BIN4,"\u25c4":e.MO.BIN4,"\u25c5":e.MO.BIN4,"\u25c6":e.MO.BIN4,"\u25c7":e.MO.BIN4,"\u25c8":e.MO.BIN4,"\u25c9":e.MO.BIN4,"\u25cc":e.MO.BIN4,"\u25cd":e.MO.BIN4,"\u25ce":e.MO.BIN4,"\u25cf":e.MO.BIN4,"\u25d6":e.MO.BIN4,"\u25d7":e.MO.BIN4,"\u25e6":e.MO.BIN4,"\u266d":e.MO.ORD02,"\u266e":e.MO.ORD02,"\u266f":e.MO.ORD02,"\u2773":e.MO.CLOSE,"\u27e7":e.MO.CLOSE,"\u27e9":e.MO.CLOSE,"\u27eb":e.MO.CLOSE,"\u27ed":e.MO.CLOSE,"\u27ef":e.MO.CLOSE,"\u2980":[0,0,r.TEXCLASS.ORD,{fence:!0,stretchy:!0}],"\u2984":e.MO.CLOSE,"\u2986":e.MO.CLOSE,"\u2988":e.MO.CLOSE,"\u298a":e.MO.CLOSE,"\u298c":e.MO.CLOSE,"\u298e":e.MO.CLOSE,"\u2990":e.MO.CLOSE,"\u2992":e.MO.CLOSE,"\u2994":e.MO.CLOSE,"\u2996":e.MO.CLOSE,"\u2998":e.MO.CLOSE,"\u29fd":e.MO.CLOSE},infix:{"!=":e.MO.BIN4,"#":e.MO.ORD,$:e.MO.ORD,"%":[3,3,r.TEXCLASS.ORD,null],"&&":e.MO.BIN4,"":e.MO.ORD,"*":e.MO.BIN3,"**":T(1,1),"*=":e.MO.BIN4,"+":e.MO.BIN4,"+=":e.MO.BIN4,",":[0,3,r.TEXCLASS.PUNCT,{linebreakstyle:"after",separator:!0}],"-":e.MO.BIN4,"-=":e.MO.BIN4,"->":e.MO.BIN5,".":[0,3,r.TEXCLASS.PUNCT,{separator:!0}],"/":e.MO.ORD11,"//":T(1,1),"/=":e.MO.BIN4,":":[1,2,r.TEXCLASS.REL,null],":=":e.MO.BIN4,";":[0,3,r.TEXCLASS.PUNCT,{linebreakstyle:"after",separator:!0}],"<":e.MO.REL,"<=":e.MO.BIN5,"<>":T(1,1),"=":e.MO.REL,"==":e.MO.BIN4,">":e.MO.REL,">=":e.MO.BIN5,"?":[1,1,r.TEXCLASS.CLOSE,null],"@":e.MO.ORD11,"\\":e.MO.ORD,"^":e.MO.ORD11,_:e.MO.ORD11,"|":[2,2,r.TEXCLASS.ORD,{fence:!0,stretchy:!0,symmetric:!0}],"||":[2,2,r.TEXCLASS.BIN,{fence:!0,stretchy:!0,symmetric:!0}],"|||":[2,2,r.TEXCLASS.ORD,{fence:!0,stretchy:!0,symmetric:!0}],"\xb1":e.MO.BIN4,"\xb7":e.MO.BIN4,"\xd7":e.MO.BIN4,"\xf7":e.MO.BIN4,"\u02b9":e.MO.ORD,"\u0300":e.MO.ACCENT,"\u0301":e.MO.ACCENT,"\u0303":e.MO.WIDEACCENT,"\u0304":e.MO.ACCENT,"\u0306":e.MO.ACCENT,"\u0307":e.MO.ACCENT,"\u0308":e.MO.ACCENT,"\u030c":e.MO.ACCENT,"\u0332":e.MO.WIDEACCENT,"\u0338":e.MO.REL4,"\u2015":[0,0,r.TEXCLASS.ORD,{stretchy:!0}],"\u2017":[0,0,r.TEXCLASS.ORD,{stretchy:!0}],"\u2020":e.MO.BIN3,"\u2021":e.MO.BIN3,"\u2022":e.MO.BIN4,"\u2026":e.MO.INNER,"\u2044":e.MO.TALLBIN,"\u2061":e.MO.ORD,"\u2062":e.MO.ORD,"\u2063":[0,0,r.TEXCLASS.ORD,{linebreakstyle:"after",separator:!0}],"\u2064":e.MO.ORD,"\u20d7":e.MO.ACCENT,"\u2111":e.MO.ORD,"\u2113":e.MO.ORD,"\u2118":e.MO.ORD,"\u211c":e.MO.ORD,"\u2190":e.MO.WIDEREL,"\u2191":e.MO.RELSTRETCH,"\u2192":e.MO.WIDEREL,"\u2193":e.MO.RELSTRETCH,"\u2194":e.MO.WIDEREL,"\u2195":e.MO.RELSTRETCH,"\u2196":e.MO.RELSTRETCH,"\u2197":e.MO.RELSTRETCH,"\u2198":e.MO.RELSTRETCH,"\u2199":e.MO.RELSTRETCH,"\u219a":e.MO.RELACCENT,"\u219b":e.MO.RELACCENT,"\u219c":e.MO.WIDEREL,"\u219d":e.MO.WIDEREL,"\u219e":e.MO.WIDEREL,"\u219f":e.MO.WIDEREL,"\u21a0":e.MO.WIDEREL,"\u21a1":e.MO.RELSTRETCH,"\u21a2":e.MO.WIDEREL,"\u21a3":e.MO.WIDEREL,"\u21a4":e.MO.WIDEREL,"\u21a5":e.MO.RELSTRETCH,"\u21a6":e.MO.WIDEREL,"\u21a7":e.MO.RELSTRETCH,"\u21a8":e.MO.RELSTRETCH,"\u21a9":e.MO.WIDEREL,"\u21aa":e.MO.WIDEREL,"\u21ab":e.MO.WIDEREL,"\u21ac":e.MO.WIDEREL,"\u21ad":e.MO.WIDEREL,"\u21ae":e.MO.RELACCENT,"\u21af":e.MO.RELSTRETCH,"\u21b0":e.MO.RELSTRETCH,"\u21b1":e.MO.RELSTRETCH,"\u21b2":e.MO.RELSTRETCH,"\u21b3":e.MO.RELSTRETCH,"\u21b4":e.MO.RELSTRETCH,"\u21b5":e.MO.RELSTRETCH,"\u21b6":e.MO.RELACCENT,"\u21b7":e.MO.RELACCENT,"\u21b8":e.MO.REL,"\u21b9":e.MO.WIDEREL,"\u21ba":e.MO.REL,"\u21bb":e.MO.REL,"\u21bc":e.MO.WIDEREL,"\u21bd":e.MO.WIDEREL,"\u21be":e.MO.RELSTRETCH,"\u21bf":e.MO.RELSTRETCH,"\u21c0":e.MO.WIDEREL,"\u21c1":e.MO.WIDEREL,"\u21c2":e.MO.RELSTRETCH,"\u21c3":e.MO.RELSTRETCH,"\u21c4":e.MO.WIDEREL,"\u21c5":e.MO.RELSTRETCH,"\u21c6":e.MO.WIDEREL,"\u21c7":e.MO.WIDEREL,"\u21c8":e.MO.RELSTRETCH,"\u21c9":e.MO.WIDEREL,"\u21ca":e.MO.RELSTRETCH,"\u21cb":e.MO.WIDEREL,"\u21cc":e.MO.WIDEREL,"\u21cd":e.MO.RELACCENT,"\u21ce":e.MO.RELACCENT,"\u21cf":e.MO.RELACCENT,"\u21d0":e.MO.WIDEREL,"\u21d1":e.MO.RELSTRETCH,"\u21d2":e.MO.WIDEREL,"\u21d3":e.MO.RELSTRETCH,"\u21d4":e.MO.WIDEREL,"\u21d5":e.MO.RELSTRETCH,"\u21d6":e.MO.RELSTRETCH,"\u21d7":e.MO.RELSTRETCH,"\u21d8":e.MO.RELSTRETCH,"\u21d9":e.MO.RELSTRETCH,"\u21da":e.MO.WIDEREL,"\u21db":e.MO.WIDEREL,"\u21dc":e.MO.WIDEREL,"\u21dd":e.MO.WIDEREL,"\u21de":e.MO.REL,"\u21df":e.MO.REL,"\u21e0":e.MO.WIDEREL,"\u21e1":e.MO.RELSTRETCH,"\u21e2":e.MO.WIDEREL,"\u21e3":e.MO.RELSTRETCH,"\u21e4":e.MO.WIDEREL,"\u21e5":e.MO.WIDEREL,"\u21e6":e.MO.WIDEREL,"\u21e7":e.MO.RELSTRETCH,"\u21e8":e.MO.WIDEREL,"\u21e9":e.MO.RELSTRETCH,"\u21ea":e.MO.RELSTRETCH,"\u21eb":e.MO.RELSTRETCH,"\u21ec":e.MO.RELSTRETCH,"\u21ed":e.MO.RELSTRETCH,"\u21ee":e.MO.RELSTRETCH,"\u21ef":e.MO.RELSTRETCH,"\u21f0":e.MO.WIDEREL,"\u21f1":e.MO.REL,"\u21f2":e.MO.REL,"\u21f3":e.MO.RELSTRETCH,"\u21f4":e.MO.RELACCENT,"\u21f5":e.MO.RELSTRETCH,"\u21f6":e.MO.WIDEREL,"\u21f7":e.MO.RELACCENT,"\u21f8":e.MO.RELACCENT,"\u21f9":e.MO.RELACCENT,"\u21fa":e.MO.RELACCENT,"\u21fb":e.MO.RELACCENT,"\u21fc":e.MO.RELACCENT,"\u21fd":e.MO.WIDEREL,"\u21fe":e.MO.WIDEREL,"\u21ff":e.MO.WIDEREL,"\u2201":T(1,2,r.TEXCLASS.ORD),"\u2205":e.MO.ORD,"\u2206":e.MO.BIN3,"\u2208":e.MO.REL,"\u2209":e.MO.REL,"\u220a":e.MO.REL,"\u220b":e.MO.REL,"\u220c":e.MO.REL,"\u220d":e.MO.REL,"\u220e":e.MO.BIN3,"\u2212":e.MO.BIN4,"\u2213":e.MO.BIN4,"\u2214":e.MO.BIN4,"\u2215":e.MO.TALLBIN,"\u2216":e.MO.BIN4,"\u2217":e.MO.BIN4,"\u2218":e.MO.BIN4,"\u2219":e.MO.BIN4,"\u221d":e.MO.REL,"\u221e":e.MO.ORD,"\u221f":e.MO.REL,"\u2223":e.MO.REL,"\u2224":e.MO.REL,"\u2225":e.MO.REL,"\u2226":e.MO.REL,"\u2227":e.MO.BIN4,"\u2228":e.MO.BIN4,"\u2229":e.MO.BIN4,"\u222a":e.MO.BIN4,"\u2234":e.MO.REL,"\u2235":e.MO.REL,"\u2236":e.MO.REL,"\u2237":e.MO.REL,"\u2238":e.MO.BIN4,"\u2239":e.MO.REL,"\u223a":e.MO.BIN4,"\u223b":e.MO.REL,"\u223c":e.MO.REL,"\u223d":e.MO.REL,"\u223d\u0331":e.MO.BIN3,"\u223e":e.MO.REL,"\u223f":e.MO.BIN3,"\u2240":e.MO.BIN4,"\u2241":e.MO.REL,"\u2242":e.MO.REL,"\u2242\u0338":e.MO.REL,"\u2243":e.MO.REL,"\u2244":e.MO.REL,"\u2245":e.MO.REL,"\u2246":e.MO.REL,"\u2247":e.MO.REL,"\u2248":e.MO.REL,"\u2249":e.MO.REL,"\u224a":e.MO.REL,"\u224b":e.MO.REL,"\u224c":e.MO.REL,"\u224d":e.MO.REL,"\u224e":e.MO.REL,"\u224e\u0338":e.MO.REL,"\u224f":e.MO.REL,"\u224f\u0338":e.MO.REL,"\u2250":e.MO.REL,"\u2251":e.MO.REL,"\u2252":e.MO.REL,"\u2253":e.MO.REL,"\u2254":e.MO.REL,"\u2255":e.MO.REL,"\u2256":e.MO.REL,"\u2257":e.MO.REL,"\u2258":e.MO.REL,"\u2259":e.MO.REL,"\u225a":e.MO.REL,"\u225c":e.MO.REL,"\u225d":e.MO.REL,"\u225e":e.MO.REL,"\u225f":e.MO.REL,"\u2260":e.MO.REL,"\u2261":e.MO.REL,"\u2262":e.MO.REL,"\u2263":e.MO.REL,"\u2264":e.MO.REL,"\u2265":e.MO.REL,"\u2266":e.MO.REL,"\u2266\u0338":e.MO.REL,"\u2267":e.MO.REL,"\u2268":e.MO.REL,"\u2269":e.MO.REL,"\u226a":e.MO.REL,"\u226a\u0338":e.MO.REL,"\u226b":e.MO.REL,"\u226b\u0338":e.MO.REL,"\u226c":e.MO.REL,"\u226d":e.MO.REL,"\u226e":e.MO.REL,"\u226f":e.MO.REL,"\u2270":e.MO.REL,"\u2271":e.MO.REL,"\u2272":e.MO.REL,"\u2273":e.MO.REL,"\u2274":e.MO.REL,"\u2275":e.MO.REL,"\u2276":e.MO.REL,"\u2277":e.MO.REL,"\u2278":e.MO.REL,"\u2279":e.MO.REL,"\u227a":e.MO.REL,"\u227b":e.MO.REL,"\u227c":e.MO.REL,"\u227d":e.MO.REL,"\u227e":e.MO.REL,"\u227f":e.MO.REL,"\u227f\u0338":e.MO.REL,"\u2280":e.MO.REL,"\u2281":e.MO.REL,"\u2282":e.MO.REL,"\u2282\u20d2":e.MO.REL,"\u2283":e.MO.REL,"\u2283\u20d2":e.MO.REL,"\u2284":e.MO.REL,"\u2285":e.MO.REL,"\u2286":e.MO.REL,"\u2287":e.MO.REL,"\u2288":e.MO.REL,"\u2289":e.MO.REL,"\u228a":e.MO.REL,"\u228b":e.MO.REL,"\u228c":e.MO.BIN4,"\u228d":e.MO.BIN4,"\u228e":e.MO.BIN4,"\u228f":e.MO.REL,"\u228f\u0338":e.MO.REL,"\u2290":e.MO.REL,"\u2290\u0338":e.MO.REL,"\u2291":e.MO.REL,"\u2292":e.MO.REL,"\u2293":e.MO.BIN4,"\u2294":e.MO.BIN4,"\u2295":e.MO.BIN4,"\u2296":e.MO.BIN4,"\u2297":e.MO.BIN4,"\u2298":e.MO.BIN4,"\u2299":e.MO.BIN4,"\u229a":e.MO.BIN4,"\u229b":e.MO.BIN4,"\u229c":e.MO.BIN4,"\u229d":e.MO.BIN4,"\u229e":e.MO.BIN4,"\u229f":e.MO.BIN4,"\u22a0":e.MO.BIN4,"\u22a1":e.MO.BIN4,"\u22a2":e.MO.REL,"\u22a3":e.MO.REL,"\u22a4":e.MO.ORD55,"\u22a5":e.MO.REL,"\u22a6":e.MO.REL,"\u22a7":e.MO.REL,"\u22a8":e.MO.REL,"\u22a9":e.MO.REL,"\u22aa":e.MO.REL,"\u22ab":e.MO.REL,"\u22ac":e.MO.REL,"\u22ad":e.MO.REL,"\u22ae":e.MO.REL,"\u22af":e.MO.REL,"\u22b0":e.MO.REL,"\u22b1":e.MO.REL,"\u22b2":e.MO.REL,"\u22b3":e.MO.REL,"\u22b4":e.MO.REL,"\u22b5":e.MO.REL,"\u22b6":e.MO.REL,"\u22b7":e.MO.REL,"\u22b8":e.MO.REL,"\u22b9":e.MO.REL,"\u22ba":e.MO.BIN4,"\u22bb":e.MO.BIN4,"\u22bc":e.MO.BIN4,"\u22bd":e.MO.BIN4,"\u22be":e.MO.BIN3,"\u22bf":e.MO.BIN3,"\u22c4":e.MO.BIN4,"\u22c5":e.MO.BIN4,"\u22c6":e.MO.BIN4,"\u22c7":e.MO.BIN4,"\u22c8":e.MO.REL,"\u22c9":e.MO.BIN4,"\u22ca":e.MO.BIN4,"\u22cb":e.MO.BIN4,"\u22cc":e.MO.BIN4,"\u22cd":e.MO.REL,"\u22ce":e.MO.BIN4,"\u22cf":e.MO.BIN4,"\u22d0":e.MO.REL,"\u22d1":e.MO.REL,"\u22d2":e.MO.BIN4,"\u22d3":e.MO.BIN4,"\u22d4":e.MO.REL,"\u22d5":e.MO.REL,"\u22d6":e.MO.REL,"\u22d7":e.MO.REL,"\u22d8":e.MO.REL,"\u22d9":e.MO.REL,"\u22da":e.MO.REL,"\u22db":e.MO.REL,"\u22dc":e.MO.REL,"\u22dd":e.MO.REL,"\u22de":e.MO.REL,"\u22df":e.MO.REL,"\u22e0":e.MO.REL,"\u22e1":e.MO.REL,"\u22e2":e.MO.REL,"\u22e3":e.MO.REL,"\u22e4":e.MO.REL,"\u22e5":e.MO.REL,"\u22e6":e.MO.REL,"\u22e7":e.MO.REL,"\u22e8":e.MO.REL,"\u22e9":e.MO.REL,"\u22ea":e.MO.REL,"\u22eb":e.MO.REL,"\u22ec":e.MO.REL,"\u22ed":e.MO.REL,"\u22ee":e.MO.ORD55,"\u22ef":e.MO.INNER,"\u22f0":e.MO.REL,"\u22f1":[5,5,r.TEXCLASS.INNER,null],"\u22f2":e.MO.REL,"\u22f3":e.MO.REL,"\u22f4":e.MO.REL,"\u22f5":e.MO.REL,"\u22f6":e.MO.REL,"\u22f7":e.MO.REL,"\u22f8":e.MO.REL,"\u22f9":e.MO.REL,"\u22fa":e.MO.REL,"\u22fb":e.MO.REL,"\u22fc":e.MO.REL,"\u22fd":e.MO.REL,"\u22fe":e.MO.REL,"\u22ff":e.MO.REL,"\u2305":e.MO.BIN3,"\u2306":e.MO.BIN3,"\u2322":e.MO.REL4,"\u2323":e.MO.REL4,"\u2329":e.MO.OPEN,"\u232a":e.MO.CLOSE,"\u23aa":e.MO.ORD,"\u23af":[0,0,r.TEXCLASS.ORD,{stretchy:!0}],"\u23b0":e.MO.OPEN,"\u23b1":e.MO.CLOSE,"\u2500":e.MO.ORD,"\u25b3":e.MO.BIN4,"\u25b5":e.MO.BIN4,"\u25b9":e.MO.BIN4,"\u25bd":e.MO.BIN4,"\u25bf":e.MO.BIN4,"\u25c3":e.MO.BIN4,"\u25ef":e.MO.BIN3,"\u2660":e.MO.ORD,"\u2661":e.MO.ORD,"\u2662":e.MO.ORD,"\u2663":e.MO.ORD,"\u2758":e.MO.REL,"\u27f0":e.MO.RELSTRETCH,"\u27f1":e.MO.RELSTRETCH,"\u27f5":e.MO.WIDEREL,"\u27f6":e.MO.WIDEREL,"\u27f7":e.MO.WIDEREL,"\u27f8":e.MO.WIDEREL,"\u27f9":e.MO.WIDEREL,"\u27fa":e.MO.WIDEREL,"\u27fb":e.MO.WIDEREL,"\u27fc":e.MO.WIDEREL,"\u27fd":e.MO.WIDEREL,"\u27fe":e.MO.WIDEREL,"\u27ff":e.MO.WIDEREL,"\u2900":e.MO.RELACCENT,"\u2901":e.MO.RELACCENT,"\u2902":e.MO.RELACCENT,"\u2903":e.MO.RELACCENT,"\u2904":e.MO.RELACCENT,"\u2905":e.MO.RELACCENT,"\u2906":e.MO.RELACCENT,"\u2907":e.MO.RELACCENT,"\u2908":e.MO.REL,"\u2909":e.MO.REL,"\u290a":e.MO.RELSTRETCH,"\u290b":e.MO.RELSTRETCH,"\u290c":e.MO.WIDEREL,"\u290d":e.MO.WIDEREL,"\u290e":e.MO.WIDEREL,"\u290f":e.MO.WIDEREL,"\u2910":e.MO.WIDEREL,"\u2911":e.MO.RELACCENT,"\u2912":e.MO.RELSTRETCH,"\u2913":e.MO.RELSTRETCH,"\u2914":e.MO.RELACCENT,"\u2915":e.MO.RELACCENT,"\u2916":e.MO.RELACCENT,"\u2917":e.MO.RELACCENT,"\u2918":e.MO.RELACCENT,"\u2919":e.MO.RELACCENT,"\u291a":e.MO.RELACCENT,"\u291b":e.MO.RELACCENT,"\u291c":e.MO.RELACCENT,"\u291d":e.MO.RELACCENT,"\u291e":e.MO.RELACCENT,"\u291f":e.MO.RELACCENT,"\u2920":e.MO.RELACCENT,"\u2921":e.MO.RELSTRETCH,"\u2922":e.MO.RELSTRETCH,"\u2923":e.MO.REL,"\u2924":e.MO.REL,"\u2925":e.MO.REL,"\u2926":e.MO.REL,"\u2927":e.MO.REL,"\u2928":e.MO.REL,"\u2929":e.MO.REL,"\u292a":e.MO.REL,"\u292b":e.MO.REL,"\u292c":e.MO.REL,"\u292d":e.MO.REL,"\u292e":e.MO.REL,"\u292f":e.MO.REL,"\u2930":e.MO.REL,"\u2931":e.MO.REL,"\u2932":e.MO.REL,"\u2933":e.MO.RELACCENT,"\u2934":e.MO.REL,"\u2935":e.MO.REL,"\u2936":e.MO.REL,"\u2937":e.MO.REL,"\u2938":e.MO.REL,"\u2939":e.MO.REL,"\u293a":e.MO.RELACCENT,"\u293b":e.MO.RELACCENT,"\u293c":e.MO.RELACCENT,"\u293d":e.MO.RELACCENT,"\u293e":e.MO.REL,"\u293f":e.MO.REL,"\u2940":e.MO.REL,"\u2941":e.MO.REL,"\u2942":e.MO.RELACCENT,"\u2943":e.MO.RELACCENT,"\u2944":e.MO.RELACCENT,"\u2945":e.MO.RELACCENT,"\u2946":e.MO.RELACCENT,"\u2947":e.MO.RELACCENT,"\u2948":e.MO.RELACCENT,"\u2949":e.MO.REL,"\u294a":e.MO.RELACCENT,"\u294b":e.MO.RELACCENT,"\u294c":e.MO.REL,"\u294d":e.MO.REL,"\u294e":e.MO.WIDEREL,"\u294f":e.MO.RELSTRETCH,"\u2950":e.MO.WIDEREL,"\u2951":e.MO.RELSTRETCH,"\u2952":e.MO.WIDEREL,"\u2953":e.MO.WIDEREL,"\u2954":e.MO.RELSTRETCH,"\u2955":e.MO.RELSTRETCH,"\u2956":e.MO.RELSTRETCH,"\u2957":e.MO.RELSTRETCH,"\u2958":e.MO.RELSTRETCH,"\u2959":e.MO.RELSTRETCH,"\u295a":e.MO.WIDEREL,"\u295b":e.MO.WIDEREL,"\u295c":e.MO.RELSTRETCH,"\u295d":e.MO.RELSTRETCH,"\u295e":e.MO.WIDEREL,"\u295f":e.MO.WIDEREL,"\u2960":e.MO.RELSTRETCH,"\u2961":e.MO.RELSTRETCH,"\u2962":e.MO.RELACCENT,"\u2963":e.MO.REL,"\u2964":e.MO.RELACCENT,"\u2965":e.MO.REL,"\u2966":e.MO.RELACCENT,"\u2967":e.MO.RELACCENT,"\u2968":e.MO.RELACCENT,"\u2969":e.MO.RELACCENT,"\u296a":e.MO.RELACCENT,"\u296b":e.MO.RELACCENT,"\u296c":e.MO.RELACCENT,"\u296d":e.MO.RELACCENT,"\u296e":e.MO.RELSTRETCH,"\u296f":e.MO.RELSTRETCH,"\u2970":e.MO.RELACCENT,"\u2971":e.MO.RELACCENT,"\u2972":e.MO.RELACCENT,"\u2973":e.MO.RELACCENT,"\u2974":e.MO.RELACCENT,"\u2975":e.MO.RELACCENT,"\u2976":e.MO.RELACCENT,"\u2977":e.MO.RELACCENT,"\u2978":e.MO.RELACCENT,"\u2979":e.MO.RELACCENT,"\u297a":e.MO.RELACCENT,"\u297b":e.MO.RELACCENT,"\u297c":e.MO.RELACCENT,"\u297d":e.MO.RELACCENT,"\u297e":e.MO.REL,"\u297f":e.MO.REL,"\u2981":e.MO.BIN3,"\u2982":e.MO.BIN3,"\u2999":e.MO.BIN3,"\u299a":e.MO.BIN3,"\u299b":e.MO.BIN3,"\u299c":e.MO.BIN3,"\u299d":e.MO.BIN3,"\u299e":e.MO.BIN3,"\u299f":e.MO.BIN3,"\u29a0":e.MO.BIN3,"\u29a1":e.MO.BIN3,"\u29a2":e.MO.BIN3,"\u29a3":e.MO.BIN3,"\u29a4":e.MO.BIN3,"\u29a5":e.MO.BIN3,"\u29a6":e.MO.BIN3,"\u29a7":e.MO.BIN3,"\u29a8":e.MO.BIN3,"\u29a9":e.MO.BIN3,"\u29aa":e.MO.BIN3,"\u29ab":e.MO.BIN3,"\u29ac":e.MO.BIN3,"\u29ad":e.MO.BIN3,"\u29ae":e.MO.BIN3,"\u29af":e.MO.BIN3,"\u29b0":e.MO.BIN3,"\u29b1":e.MO.BIN3,"\u29b2":e.MO.BIN3,"\u29b3":e.MO.BIN3,"\u29b4":e.MO.BIN3,"\u29b5":e.MO.BIN3,"\u29b6":e.MO.BIN4,"\u29b7":e.MO.BIN4,"\u29b8":e.MO.BIN4,"\u29b9":e.MO.BIN4,"\u29ba":e.MO.BIN4,"\u29bb":e.MO.BIN4,"\u29bc":e.MO.BIN4,"\u29bd":e.MO.BIN4,"\u29be":e.MO.BIN4,"\u29bf":e.MO.BIN4,"\u29c0":e.MO.REL,"\u29c1":e.MO.REL,"\u29c2":e.MO.BIN3,"\u29c3":e.MO.BIN3,"\u29c4":e.MO.BIN4,"\u29c5":e.MO.BIN4,"\u29c6":e.MO.BIN4,"\u29c7":e.MO.BIN4,"\u29c8":e.MO.BIN4,"\u29c9":e.MO.BIN3,"\u29ca":e.MO.BIN3,"\u29cb":e.MO.BIN3,"\u29cc":e.MO.BIN3,"\u29cd":e.MO.BIN3,"\u29ce":e.MO.REL,"\u29cf":e.MO.REL,"\u29cf\u0338":e.MO.REL,"\u29d0":e.MO.REL,"\u29d0\u0338":e.MO.REL,"\u29d1":e.MO.REL,"\u29d2":e.MO.REL,"\u29d3":e.MO.REL,"\u29d4":e.MO.REL,"\u29d5":e.MO.REL,"\u29d6":e.MO.BIN4,"\u29d7":e.MO.BIN4,"\u29d8":e.MO.BIN3,"\u29d9":e.MO.BIN3,"\u29db":e.MO.BIN3,"\u29dc":e.MO.BIN3,"\u29dd":e.MO.BIN3,"\u29de":e.MO.REL,"\u29df":e.MO.BIN3,"\u29e0":e.MO.BIN3,"\u29e1":e.MO.REL,"\u29e2":e.MO.BIN4,"\u29e3":e.MO.REL,"\u29e4":e.MO.REL,"\u29e5":e.MO.REL,"\u29e6":e.MO.REL,"\u29e7":e.MO.BIN3,"\u29e8":e.MO.BIN3,"\u29e9":e.MO.BIN3,"\u29ea":e.MO.BIN3,"\u29eb":e.MO.BIN3,"\u29ec":e.MO.BIN3,"\u29ed":e.MO.BIN3,"\u29ee":e.MO.BIN3,"\u29ef":e.MO.BIN3,"\u29f0":e.MO.BIN3,"\u29f1":e.MO.BIN3,"\u29f2":e.MO.BIN3,"\u29f3":e.MO.BIN3,"\u29f4":e.MO.REL,"\u29f5":e.MO.BIN4,"\u29f6":e.MO.BIN4,"\u29f7":e.MO.BIN4,"\u29f8":e.MO.BIN3,"\u29f9":e.MO.BIN3,"\u29fa":e.MO.BIN3,"\u29fb":e.MO.BIN3,"\u29fe":e.MO.BIN4,"\u29ff":e.MO.BIN4,"\u2a1d":e.MO.BIN3,"\u2a1e":e.MO.BIN3,"\u2a1f":e.MO.BIN3,"\u2a20":e.MO.BIN3,"\u2a21":e.MO.BIN3,"\u2a22":e.MO.BIN4,"\u2a23":e.MO.BIN4,"\u2a24":e.MO.BIN4,"\u2a25":e.MO.BIN4,"\u2a26":e.MO.BIN4,"\u2a27":e.MO.BIN4,"\u2a28":e.MO.BIN4,"\u2a29":e.MO.BIN4,"\u2a2a":e.MO.BIN4,"\u2a2b":e.MO.BIN4,"\u2a2c":e.MO.BIN4,"\u2a2d":e.MO.BIN4,"\u2a2e":e.MO.BIN4,"\u2a2f":e.MO.BIN4,"\u2a30":e.MO.BIN4,"\u2a31":e.MO.BIN4,"\u2a32":e.MO.BIN4,"\u2a33":e.MO.BIN4,"\u2a34":e.MO.BIN4,"\u2a35":e.MO.BIN4,"\u2a36":e.MO.BIN4,"\u2a37":e.MO.BIN4,"\u2a38":e.MO.BIN4,"\u2a39":e.MO.BIN4,"\u2a3a":e.MO.BIN4,"\u2a3b":e.MO.BIN4,"\u2a3c":e.MO.BIN4,"\u2a3d":e.MO.BIN4,"\u2a3e":e.MO.BIN4,"\u2a3f":e.MO.BIN4,"\u2a40":e.MO.BIN4,"\u2a41":e.MO.BIN4,"\u2a42":e.MO.BIN4,"\u2a43":e.MO.BIN4,"\u2a44":e.MO.BIN4,"\u2a45":e.MO.BIN4,"\u2a46":e.MO.BIN4,"\u2a47":e.MO.BIN4,"\u2a48":e.MO.BIN4,"\u2a49":e.MO.BIN4,"\u2a4a":e.MO.BIN4,"\u2a4b":e.MO.BIN4,"\u2a4c":e.MO.BIN4,"\u2a4d":e.MO.BIN4,"\u2a4e":e.MO.BIN4,"\u2a4f":e.MO.BIN4,"\u2a50":e.MO.BIN4,"\u2a51":e.MO.BIN4,"\u2a52":e.MO.BIN4,"\u2a53":e.MO.BIN4,"\u2a54":e.MO.BIN4,"\u2a55":e.MO.BIN4,"\u2a56":e.MO.BIN4,"\u2a57":e.MO.BIN4,"\u2a58":e.MO.BIN4,"\u2a59":e.MO.REL,"\u2a5a":e.MO.BIN4,"\u2a5b":e.MO.BIN4,"\u2a5c":e.MO.BIN4,"\u2a5d":e.MO.BIN4,"\u2a5e":e.MO.BIN4,"\u2a5f":e.MO.BIN4,"\u2a60":e.MO.BIN4,"\u2a61":e.MO.BIN4,"\u2a62":e.MO.BIN4,"\u2a63":e.MO.BIN4,"\u2a64":e.MO.BIN4,"\u2a65":e.MO.BIN4,"\u2a66":e.MO.REL,"\u2a67":e.MO.REL,"\u2a68":e.MO.REL,"\u2a69":e.MO.REL,"\u2a6a":e.MO.REL,"\u2a6b":e.MO.REL,"\u2a6c":e.MO.REL,"\u2a6d":e.MO.REL,"\u2a6e":e.MO.REL,"\u2a6f":e.MO.REL,"\u2a70":e.MO.REL,"\u2a71":e.MO.BIN4,"\u2a72":e.MO.BIN4,"\u2a73":e.MO.REL,"\u2a74":e.MO.REL,"\u2a75":e.MO.REL,"\u2a76":e.MO.REL,"\u2a77":e.MO.REL,"\u2a78":e.MO.REL,"\u2a79":e.MO.REL,"\u2a7a":e.MO.REL,"\u2a7b":e.MO.REL,"\u2a7c":e.MO.REL,"\u2a7d":e.MO.REL,"\u2a7d\u0338":e.MO.REL,"\u2a7e":e.MO.REL,"\u2a7e\u0338":e.MO.REL,"\u2a7f":e.MO.REL,"\u2a80":e.MO.REL,"\u2a81":e.MO.REL,"\u2a82":e.MO.REL,"\u2a83":e.MO.REL,"\u2a84":e.MO.REL,"\u2a85":e.MO.REL,"\u2a86":e.MO.REL,"\u2a87":e.MO.REL,"\u2a88":e.MO.REL,"\u2a89":e.MO.REL,"\u2a8a":e.MO.REL,"\u2a8b":e.MO.REL,"\u2a8c":e.MO.REL,"\u2a8d":e.MO.REL,"\u2a8e":e.MO.REL,"\u2a8f":e.MO.REL,"\u2a90":e.MO.REL,"\u2a91":e.MO.REL,"\u2a92":e.MO.REL,"\u2a93":e.MO.REL,"\u2a94":e.MO.REL,"\u2a95":e.MO.REL,"\u2a96":e.MO.REL,"\u2a97":e.MO.REL,"\u2a98":e.MO.REL,"\u2a99":e.MO.REL,"\u2a9a":e.MO.REL,"\u2a9b":e.MO.REL,"\u2a9c":e.MO.REL,"\u2a9d":e.MO.REL,"\u2a9e":e.MO.REL,"\u2a9f":e.MO.REL,"\u2aa0":e.MO.REL,"\u2aa1":e.MO.REL,"\u2aa1\u0338":e.MO.REL,"\u2aa2":e.MO.REL,"\u2aa2\u0338":e.MO.REL,"\u2aa3":e.MO.REL,"\u2aa4":e.MO.REL,"\u2aa5":e.MO.REL,"\u2aa6":e.MO.REL,"\u2aa7":e.MO.REL,"\u2aa8":e.MO.REL,"\u2aa9":e.MO.REL,"\u2aaa":e.MO.REL,"\u2aab":e.MO.REL,"\u2aac":e.MO.REL,"\u2aad":e.MO.REL,"\u2aae":e.MO.REL,"\u2aaf":e.MO.REL,"\u2aaf\u0338":e.MO.REL,"\u2ab0":e.MO.REL,"\u2ab0\u0338":e.MO.REL,"\u2ab1":e.MO.REL,"\u2ab2":e.MO.REL,"\u2ab3":e.MO.REL,"\u2ab4":e.MO.REL,"\u2ab5":e.MO.REL,"\u2ab6":e.MO.REL,"\u2ab7":e.MO.REL,"\u2ab8":e.MO.REL,"\u2ab9":e.MO.REL,"\u2aba":e.MO.REL,"\u2abb":e.MO.REL,"\u2abc":e.MO.REL,"\u2abd":e.MO.REL,"\u2abe":e.MO.REL,"\u2abf":e.MO.REL,"\u2ac0":e.MO.REL,"\u2ac1":e.MO.REL,"\u2ac2":e.MO.REL,"\u2ac3":e.MO.REL,"\u2ac4":e.MO.REL,"\u2ac5":e.MO.REL,"\u2ac6":e.MO.REL,"\u2ac7":e.MO.REL,"\u2ac8":e.MO.REL,"\u2ac9":e.MO.REL,"\u2aca":e.MO.REL,"\u2acb":e.MO.REL,"\u2acc":e.MO.REL,"\u2acd":e.MO.REL,"\u2ace":e.MO.REL,"\u2acf":e.MO.REL,"\u2ad0":e.MO.REL,"\u2ad1":e.MO.REL,"\u2ad2":e.MO.REL,"\u2ad3":e.MO.REL,"\u2ad4":e.MO.REL,"\u2ad5":e.MO.REL,"\u2ad6":e.MO.REL,"\u2ad7":e.MO.REL,"\u2ad8":e.MO.REL,"\u2ad9":e.MO.REL,"\u2ada":e.MO.REL,"\u2adb":e.MO.REL,"\u2adc":e.MO.REL,"\u2add":e.MO.REL,"\u2ade":e.MO.REL,"\u2adf":e.MO.REL,"\u2ae0":e.MO.REL,"\u2ae1":e.MO.REL,"\u2ae2":e.MO.REL,"\u2ae3":e.MO.REL,"\u2ae4":e.MO.REL,"\u2ae5":e.MO.REL,"\u2ae6":e.MO.REL,"\u2ae7":e.MO.REL,"\u2ae8":e.MO.REL,"\u2ae9":e.MO.REL,"\u2aea":e.MO.REL,"\u2aeb":e.MO.REL,"\u2aec":e.MO.REL,"\u2aed":e.MO.REL,"\u2aee":e.MO.REL,"\u2aef":e.MO.REL,"\u2af0":e.MO.REL,"\u2af1":e.MO.REL,"\u2af2":e.MO.REL,"\u2af3":e.MO.REL,"\u2af4":e.MO.BIN4,"\u2af5":e.MO.BIN4,"\u2af6":e.MO.BIN4,"\u2af7":e.MO.REL,"\u2af8":e.MO.REL,"\u2af9":e.MO.REL,"\u2afa":e.MO.REL,"\u2afb":e.MO.BIN4,"\u2afd":e.MO.BIN4,"\u2afe":e.MO.BIN3,"\u2b45":e.MO.RELSTRETCH,"\u2b46":e.MO.RELSTRETCH,"\u3008":e.MO.OPEN,"\u3009":e.MO.CLOSE,"\ufe37":e.MO.WIDEACCENT,"\ufe38":e.MO.WIDEACCENT}},e.OPTABLE.infix["^"]=e.MO.WIDEREL,e.OPTABLE.infix._=e.MO.WIDEREL,e.OPTABLE.prefix["\u2223"]=e.MO.OPEN,e.OPTABLE.prefix["\u2225"]=e.MO.OPEN,e.OPTABLE.postfix["\u2223"]=e.MO.CLOSE,e.OPTABLE.postfix["\u2225"]=e.MO.CLOSE},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__assign||function(){return(n=Object.assign||function(t){for(var e,Q=1,r=arguments.length;Q=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},i=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.HandlerList=void 0;var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.register=function(t){return this.add(t,t.priority)},e.prototype.unregister=function(t){this.remove(t)},e.prototype.handlesDocument=function(t){var e,Q;try{for(var r=n(this),T=r.next();!T.done;T=r.next()){var o=T.value.item;if(o.handlesDocument(t))return o}}catch(t){e={error:t}}finally{try{T&&!T.done&&(Q=r.return)&&Q.call(r)}finally{if(e)throw e.error}}throw new Error("Can't find handler for document")},e.prototype.document=function(t,e){return void 0===e&&(e=null),this.handlesDocument(t).create(t,e)},e}(Q(21).PrioritizedList);e.HandlerList=o},function(t,e,Q){"use strict";var r=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},T=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},n=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},o=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},i=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.HTMLDocument=void 0;var a=Q(53),s=Q(7),l=Q(123),c=Q(124),u=Q(125),p=Q(14),h=function(t){function e(e,Q,r){var T=this,n=o(s.separateOptions(r,u.HTMLDomStrings.OPTIONS),2),i=n[0],a=n[1];return(T=t.call(this,e,Q,i)||this).domStrings=T.options.DomStrings||new u.HTMLDomStrings(a),T.domStrings.adaptor=Q,T.styles=[],T}return T(e,t),e.prototype.findPosition=function(t,e,Q,r){var T,n,a=this.adaptor;try{for(var s=i(r[t]),l=s.next();!l.done;l=s.next()){var c=l.value,u=o(c,2),p=u[0],h=u[1];if(e<=h&&"#text"===a.kind(p))return{node:p,n:Math.max(e,0),delim:Q};e-=h}}catch(t){T={error:t}}finally{try{l&&!l.done&&(n=s.return)&&n.call(s)}finally{if(T)throw T.error}}return{node:null,n:0,delim:Q}},e.prototype.mathItem=function(t,e,Q){var r=t.math,T=this.findPosition(t.n,t.start.n,t.open,Q),n=this.findPosition(t.n,t.end.n,t.close,Q);return new this.options.MathItem(r,e,t.display,T,n)},e.prototype.findMath=function(t){var e,Q,r,T,n,a,l,c,u;if(!this.processed.isSet("findMath")){this.adaptor.document=this.document,t=s.userOptions({elements:this.options.elements||[this.adaptor.body(this.document)]},t);try{for(var p=i(this.adaptor.getElements(t.elements,this.document)),h=p.next();!h.done;h=p.next()){var f=h.value,d=o([null,null],2),L=d[0],H=d[1];try{for(var m=(r=void 0,i(this.inputJax)),y=m.next();!y.done;y=m.next()){var v=y.value,g=new this.options.MathList;if(v.processStrings){null===L&&(L=(n=o(this.domStrings.find(f),2))[0],H=n[1]);try{for(var b=(a=void 0,i(v.findMath(L))),M=b.next();!M.done;M=b.next()){var V=M.value;g.push(this.mathItem(V,v,H))}}catch(t){a={error:t}}finally{try{M&&!M.done&&(l=b.return)&&l.call(b)}finally{if(a)throw a.error}}}else try{for(var x=(c=void 0,i(v.findMath(f))),O=x.next();!O.done;O=x.next()){V=O.value;var _=new this.options.MathItem(V.math,v,V.display,V.start,V.end);g.push(_)}}catch(t){c={error:t}}finally{try{O&&!O.done&&(u=x.return)&&u.call(x)}finally{if(c)throw c.error}}this.math.merge(g)}}catch(t){r={error:t}}finally{try{y&&!y.done&&(T=m.return)&&T.call(m)}finally{if(r)throw r.error}}}}catch(t){e={error:t}}finally{try{h&&!h.done&&(Q=p.return)&&Q.call(p)}finally{if(e)throw e.error}}this.processed.set("findMath")}return this},e.prototype.updateDocument=function(){return this.processed.isSet("updateDocument")||(this.addPageElements(),this.addStyleSheet(),t.prototype.updateDocument.call(this),this.processed.set("updateDocument")),this},e.prototype.addPageElements=function(){var t=this.adaptor.body(this.document),e=this.documentPageElements();e&&this.adaptor.append(t,e)},e.prototype.addStyleSheet=function(){var t=this.documentStyleSheet();if(t){var e=this.adaptor.head(this.document),Q=this.findSheet(e,this.adaptor.getAttribute(t,"id"));Q?this.adaptor.replace(t,Q):this.adaptor.append(e,t)}},e.prototype.findSheet=function(t,e){var Q,r;if(e)try{for(var T=i(this.adaptor.tags(t,"style")),n=T.next();!n.done;n=T.next()){var o=n.value;if(this.adaptor.getAttribute(o,"id")===e)return o}}catch(t){Q={error:t}}finally{try{n&&!n.done&&(r=T.return)&&r.call(T)}finally{if(Q)throw Q.error}}return null},e.prototype.removeFromDocument=function(t){var e,Q;if(void 0===t&&(t=!1),this.processed.isSet("updateDocument"))try{for(var r=i(this.math),T=r.next();!T.done;T=r.next()){var n=T.value;n.state()>=p.STATE.INSERTED&&n.state(p.STATE.TYPESET,t)}}catch(t){e={error:t}}finally{try{T&&!T.done&&(Q=r.return)&&Q.call(r)}finally{if(e)throw e.error}}return this.processed.clear("updateDocument"),this},e.prototype.documentStyleSheet=function(){return this.outputJax.styleSheet(this)},e.prototype.documentPageElements=function(){return this.outputJax.pageElements(this)},e.prototype.addStyles=function(t){this.styles.push(t)},e.prototype.getStyles=function(){return this.styles},e.KIND="HTML",e.OPTIONS=n(n({},a.AbstractMathDocument.OPTIONS),{renderActions:s.expandable(n(n({},a.AbstractMathDocument.OPTIONS.renderActions),{styles:[p.STATE.INSERTED+1,"","updateStyleSheet",!1]})),MathList:c.HTMLMathList,MathItem:l.HTMLMathItem,DomStrings:null}),e}(a.AbstractMathDocument);e.HTMLDocument=h},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.HTMLMathItem=void 0;var n=Q(14),o=function(t){function e(e,Q,r,T,n){return void 0===r&&(r=!0),void 0===T&&(T={node:null,n:0,delim:""}),void 0===n&&(n={node:null,n:0,delim:""}),t.call(this,e,Q,r,T,n)||this}return T(e,t),Object.defineProperty(e.prototype,"adaptor",{get:function(){return this.inputJax.adaptor},enumerable:!1,configurable:!0}),e.prototype.updateDocument=function(t){if(this.state()=n.STATE.TYPESET){var e=this.adaptor,Q=this.start.node,r=e.text("");if(t){var T=this.start.delim+this.math+this.end.delim;if(this.inputJax.processStrings)r=e.text(T);else{var o=e.parse(T,"text/html");r=e.firstChild(e.body(o))}}e.parent(Q)&&e.replace(r,Q),this.start.node=this.end.node=r,this.start.n=this.end.n=0}},e}(n.AbstractMathItem);e.HTMLMathItem=o},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.HTMLMathList=void 0;var n=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e}(Q(56).AbstractMathList);e.HTMLMathList=n},function(t,e,Q){"use strict";var r=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.HTMLDomStrings=void 0;var T=Q(7),n=function(){function t(t){void 0===t&&(t=null);var e=this.constructor;this.options=T.userOptions(T.defaultOptions({},e.OPTIONS),t),this.init(),this.getPatterns()}return t.prototype.init=function(){this.strings=[],this.string="",this.snodes=[],this.nodes=[],this.stack=[]},t.prototype.getPatterns=function(){var t=T.makeArray(this.options.skipHtmlTags),e=T.makeArray(this.options.ignoreHtmlClass),Q=T.makeArray(this.options.processHtmlClass);this.skipHtmlTags=new RegExp("^(?:"+t.join("|")+")$","i"),this.ignoreHtmlClass=new RegExp("(?:^| )(?:"+e.join("|")+")(?: |$)"),this.processHtmlClass=new RegExp("(?:^| )(?:"+Q+")(?: |$)")},t.prototype.pushString=function(){this.string.match(/\S/)&&(this.strings.push(this.string),this.nodes.push(this.snodes)),this.string="",this.snodes=[]},t.prototype.extendString=function(t,e){this.snodes.push([t,e.length]),this.string+=e},t.prototype.handleText=function(t,e){return e||this.extendString(t,this.adaptor.value(t)),this.adaptor.next(t)},t.prototype.handleTag=function(t,e){if(!e){var Q=this.options.includeHtmlTags[this.adaptor.kind(t)];this.extendString(t,Q)}return this.adaptor.next(t)},t.prototype.handleContainer=function(t,e){this.pushString();var Q=this.adaptor.getAttribute(t,"class")||"",r=this.adaptor.kind(t)||"",T=this.processHtmlClass.exec(Q),n=t;return!this.adaptor.firstChild(t)||this.adaptor.getAttribute(t,"data-MJX")||!T&&this.skipHtmlTags.exec(r)?n=this.adaptor.next(t):(this.adaptor.next(t)&&this.stack.push([this.adaptor.next(t),e]),n=this.adaptor.firstChild(t),e=(e||this.ignoreHtmlClass.exec(Q))&&!T),[n,e]},t.prototype.find=function(t){var e,Q;this.init();for(var T=this.adaptor.next(t),n=!1,o=this.options.includeHtmlTags;t&&t!==T;)"#text"===this.adaptor.kind(t)?t=this.handleText(t,n):void 0!==o[this.adaptor.kind(t)]?t=this.handleTag(t,n):(t=(e=r(this.handleContainer(t,n),2))[0],n=e[1]),!t&&this.stack.length&&(this.pushString(),t=(Q=r(this.stack.pop(),2))[0],n=Q[1]);this.pushString();var i=[this.strings,this.nodes];return this.init(),i},t.OPTIONS={skipHtmlTags:["script","noscript","style","textarea","pre","code","annotation","annotation-xml"],includeHtmlTags:{br:"\n",wbr:"","#comment":""},ignoreHtmlClass:"mathjax_ignore",processHtmlClass:"mathjax_process"},t}();e.HTMLDomStrings=n},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.asyncLoad=void 0;var r=Q(25);e.asyncLoad=function(t){return r.mathjax.asyncLoad?new Promise((function(e,Q){var T=r.mathjax.asyncLoad(t);T instanceof Promise?T.then((function(t){return e(t)})).catch((function(t){return Q(t)})):e(T)})):Promise.reject("Can't load '"+t+"': No asyncLoad method specified")}},function(t,e,Q){"use strict";var r=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.CssStyles=void 0;var T=function(){function t(t){void 0===t&&(t=null),this.styles={},this.addStyles(t)}return Object.defineProperty(t.prototype,"cssText",{get:function(){return this.getStyleString()},enumerable:!1,configurable:!0}),t.prototype.addStyles=function(t){var e,Q;if(t)try{for(var T=r(Object.keys(t)),n=T.next();!n.done;n=T.next()){var o=n.value;this.styles[o]||(this.styles[o]={}),Object.assign(this.styles[o],t[o])}}catch(t){e={error:t}}finally{try{n&&!n.done&&(Q=T.return)&&Q.call(T)}finally{if(e)throw e.error}}},t.prototype.removeStyles=function(){for(var t,e,Q=[],T=0;T0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.FindTeX=void 0;var o=Q(107),i=Q(15),a=Q(14),s=function(t){function e(e){var Q=t.call(this,e)||this;return Q.getPatterns(),Q}return T(e,t),e.prototype.getPatterns=function(){var t=this,e=this.options,Q=[],r=[],T=[];this.end={},this.env=this.sub=0;var n=1;e.inlineMath.forEach((function(e){return t.addPattern(Q,e,!1)})),e.displayMath.forEach((function(e){return t.addPattern(Q,e,!0)})),Q.length&&r.push(Q.sort(i.sortLength).join("|")),e.processEnvironments&&(r.push("\\\\begin\\s*\\{([^}]*)\\}"),this.env=n,n++),e.processEscapes&&T.push("\\\\([\\\\$])"),e.processRefs&&T.push("(\\\\(?:eq)?ref\\s*\\{[^}]*\\})"),T.length&&(r.push("("+T.join("|")+")"),this.sub=n),this.start=new RegExp(r.join("|"),"g"),this.hasPatterns=r.length>0},e.prototype.addPattern=function(t,e,Q){var r=n(e,2),T=r[0],o=r[1];t.push(i.quotePattern(T)),this.end[T]=[o,Q,this.endPattern(o)]},e.prototype.endPattern=function(t,e){return new RegExp((e||i.quotePattern(t))+"|\\\\(?:[a-zA-Z]|.)|[{}]","g")},e.prototype.findEnd=function(t,e,Q,r){for(var T,o=n(r,3),i=o[0],s=o[1],l=o[2],c=l.lastIndex=Q.index+Q[0].length,u=0;T=l.exec(t);){if((T[1]||T[0])===i&&0===u)return a.protoItem(Q[0],t.substr(c,T.index-c),T[0],e,Q.index,T.index+T[0].length,s);"{"===T[0]?u++:"}"===T[0]&&u&&u--}return null},e.prototype.findMathInString=function(t,e,Q){var r,T;for(this.start.lastIndex=0;r=this.start.exec(Q);){if(void 0!==r[this.env]&&this.env){var n="\\\\end\\s*(\\{"+i.quotePattern(r[this.env])+"\\})";(T=this.findEnd(Q,e,r,["{"+r[this.env]+"}",!0,this.endPattern(null,n)]))&&(T.math=T.open+T.math+T.close,T.open=T.close="")}else if(void 0!==r[this.sub]&&this.sub){var o=r[this.sub];n=r.index+r[this.sub].length;T=2===o.length?a.protoItem("",o.substr(1),"",e,r.index,n):a.protoItem("",o,"",e,r.index,n,!1)}else T=this.findEnd(Q,e,r,this.end[r[0]]);T&&(t.push(T),this.start.lastIndex=T.end.n)}},e.prototype.findMath=function(t){var e=[];if(this.hasPatterns)for(var Q=0,r=t.length;Q=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0});var T,n=Q(0),o=Q(8);!function(t){t.cleanStretchy=function(t){var e,Q,T=t.data;try{for(var n=r(T.getList("fixStretchy")),i=n.next();!i.done;i=n.next()){var a=i.value;if(o.default.getProperty(a,"fixStretchy")){var s=o.default.getForm(a);s&&s[3]&&s[3].stretchy&&o.default.setAttribute(a,"stretchy",!1);var l=a.parent;if(!(o.default.getTexClass(a)||s&&s[2])){var c=T.nodeFactory.create("node","TeXAtom",[a]);l.replaceChild(c,a),c.inheritAttributesFrom(a)}o.default.removeProperties(a,"fixStretchy")}}}catch(t){e={error:t}}finally{try{i&&!i.done&&(Q=n.return)&&Q.call(n)}finally{if(e)throw e.error}}},t.cleanAttributes=function(t){t.data.root.walkTree((function(t,e){var Q,T,n=t.attributes;if(n)try{for(var o=r(n.getExplicitNames()),i=o.next();!i.done;i=o.next()){var a=i.value;n.attributes[a]===t.attributes.getInherited(a)&&delete n.attributes[a]}}catch(t){Q={error:t}}finally{try{i&&!i.done&&(T=o.return)&&T.call(o)}finally{if(Q)throw Q.error}}}),{})},t.combineRelations=function(t){var T,i;try{for(var a=r(t.data.getList("mo")),s=a.next();!s.done;s=a.next()){var l=s.value;if(!l.getProperty("relationsCombined")&&l.parent&&(!l.parent||o.default.isType(l.parent,"mrow"))&&o.default.getTexClass(l)===n.TEXCLASS.REL){for(var c=l.parent,u=void 0,p=c.childNodes,h=p.indexOf(l)+1,f=o.default.getProperty(l,"variantForm");h":"\u2192","<":"\u2190",V:"\u2193",A:"\u2191"}[Q],d=t.GetUpTo(e+Q,Q),L=t.GetUpTo(e+Q,Q);if(">"===Q||"<"===Q){if(s=t.create("token","mo",p,f),d||(d="\\kern "+l.getProperty("minw")),d||L){var H={width:".67em",lspace:".33em"};if(s=t.create("node","munderover",[s]),d){var m=new r.default(d,t.stack.env,t.configuration).mml(),y=t.create("node","mpadded",[m],H);o.default.setAttribute(y,"voffset",".1em"),o.default.setChild(s,s.over,y)}if(L){var v=new r.default(L,t.stack.env,t.configuration).mml();o.default.setChild(s,s.under,t.create("node","mpadded",[v],H))}t.configuration.options.amscd.hideHorizontalLabels&&(s=t.create("node","mpadded",s,{depth:0,height:".67em"}))}}else{var g=t.create("token","mo",h,f);s=g,(d||L)&&(s=t.create("node","mrow"),d&&o.default.appendChildren(s,[new r.default("\\scriptstyle\\llap{"+d+"}",t.stack.env,t.configuration).mml()]),g.texClass=n.TEXCLASS.ORD,o.default.appendChildren(s,[g]),L&&o.default.appendChildren(s,[new r.default("\\scriptstyle\\rlap{"+L+"}",t.stack.env,t.configuration).mml()]))}}s&&t.Push(s),i.cell(t,e)},cell:function(t,e){var Q=t.stack.Top();(Q.table||[]).length%2==0&&0===(Q.row||[]).length&&t.Push(t.create("node","mpadded",[],{height:"8.5pt",depth:"2pt"})),t.Push(t.itemFactory.create("cell").setProperties({isEntry:!0,name:e}))},minCDarrowwidth:function(t,e){t.stack.env.CD_minw=t.GetDimen(e)},minCDarrowheight:function(t,e){t.stack.env.CD_minh=t.GetDimen(e)}};e.default=i},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.BboxConfiguration=e.BboxMethods=void 0;var r=Q(2),T=Q(3),n=Q(5);e.BboxMethods={},e.BboxMethods.BBox=function(t,e){for(var Q,r,T,a=t.GetBrackets(e,""),s=t.ParseArg(e),l=a.split(/,/),c=0,u=l.length;c=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.BoldsymbolConfiguration=e.rewriteBoldTokens=e.createBoldToken=e.BoldsymbolMethods=void 0;var T=Q(2),n=Q(8),o=Q(13),i=Q(3),a=Q(41),s={};function l(t,e,Q,r){var T=a.NodeFactory.createToken(t,e,Q,r);return"mtext"!==e&&t.configuration.parser.stack.env.boldsymbol&&(n.default.setProperty(T,"fixBold",!0),t.configuration.addNode("fixBold",T)),T}function c(t){var e,Q;try{for(var T=r(t.data.getList("fixBold")),i=T.next();!i.done;i=T.next()){var a=i.value;if(n.default.getProperty(a,"fixBold")){var l=n.default.getAttribute(a,"mathvariant");null==l?n.default.setAttribute(a,"mathvariant",o.TexConstant.Variant.BOLD):n.default.setAttribute(a,"mathvariant",s[l]||l),n.default.removeProperties(a,"fixBold")}}}catch(t){e={error:t}}finally{try{i&&!i.done&&(Q=T.return)&&Q.call(T)}finally{if(e)throw e.error}}}s[o.TexConstant.Variant.NORMAL]=o.TexConstant.Variant.BOLD,s[o.TexConstant.Variant.ITALIC]=o.TexConstant.Variant.BOLDITALIC,s[o.TexConstant.Variant.FRAKTUR]=o.TexConstant.Variant.BOLDFRAKTUR,s[o.TexConstant.Variant.SCRIPT]=o.TexConstant.Variant.BOLDSCRIPT,s[o.TexConstant.Variant.SANSSERIF]=o.TexConstant.Variant.BOLDSANSSERIF,s["-tex-calligraphic"]="-tex-bold-calligraphic",s["-tex-oldstyle"]="-tex-bold-oldstyle",e.BoldsymbolMethods={},e.BoldsymbolMethods.Boldsymbol=function(t,e){var Q=t.stack.env.boldsymbol;t.stack.env.boldsymbol=!0;var r=t.ParseArg(e);t.stack.env.boldsymbol=Q,t.Push(r)},new i.CommandMap("boldsymbol",{boldsymbol:"Boldsymbol"},e.BoldsymbolMethods),e.createBoldToken=l,e.rewriteBoldTokens=c,e.BoldsymbolConfiguration=T.Configuration.create("boldsymbol",{handler:{macro:["boldsymbol"]},nodes:{token:l},postprocessors:[c]})},function(t,e,Q){"use strict";var r;Object.defineProperty(e,"__esModule",{value:!0}),e.BraketConfiguration=void 0;var T=Q(2),n=Q(140);Q(286),e.BraketConfiguration=T.Configuration.create("braket",{handler:{character:["Braket-characters"],macro:["Braket-macros"]},items:(r={},r[n.BraketItem.prototype.kind]=n.BraketItem,r)})},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.BraketItem=void 0;var n=Q(22),o=Q(0),i=Q(9),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),Object.defineProperty(e.prototype,"kind",{get:function(){return"braket"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isOpen",{get:function(){return!0},enumerable:!1,configurable:!0}),e.prototype.checkItem=function(e){return e.isKind("close")?[[this.factory.create("mml",this.toMml())],!0]:e.isKind("mml")?(this.Push(e.toMml()),this.getProperty("single")?[[this.toMml()],!0]:n.BaseItem.fail):t.prototype.checkItem.call(this,e)},e.prototype.toMml=function(){var e=t.prototype.toMml.call(this),Q=this.getProperty("open"),r=this.getProperty("close");if(this.getProperty("stretchy"))return i.default.fenced(this.factory.configuration,Q,e,r);var T={fence:!0,stretchy:!1,symmetric:!0,texClass:o.TEXCLASS.OPEN},n=this.create("token","mo",T,Q);T.texClass=o.TEXCLASS.CLOSE;var a=this.create("token","mo",T,r);return this.create("node","mrow",[n,e,a],{open:Q,close:r,texClass:o.TEXCLASS.INNER})},e}(n.BaseItem);e.BraketItem=a},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=Q(16),T=Q(0),n=Q(5),o={};o.Macro=r.default.Macro,o.Braket=function(t,e,Q,r,T,o){var i=t.GetNext();if(""===i)throw new n.default("MissingArgFor","Missing argument for %1",t.currentCS);var a=!0;"{"===i&&(t.i++,a=!1),t.Push(t.itemFactory.create("braket").setProperties({barmax:o,barcount:0,open:Q,close:r,stretchy:T,single:a}))},o.Bar=function(t,e){var Q="|"===e?"|":"\u2225",r=t.stack.Top();if("braket"!==r.kind||r.getProperty("barcount")>=r.getProperty("barmax")){var n=t.create("token","mo",{texClass:T.TEXCLASS.ORD,stretchy:!1},Q);t.Push(n)}else{if("|"===Q&&"|"===t.GetNext()&&(t.i++,Q="\u2225"),r.getProperty("stretchy")){var o=t.create("node","TeXAtom",[],{texClass:T.TEXCLASS.CLOSE});t.Push(o),r.setProperty("barcount",r.getProperty("barcount")+1),o=t.create("token","mo",{stretchy:!0,braketbar:!0},Q),t.Push(o),o=t.create("node","TeXAtom",[],{texClass:T.TEXCLASS.OPEN}),t.Push(o)}else{var i=t.create("token","mo",{stretchy:!1,braketbar:!0},Q);t.Push(i)}}},e.default=o},function(t,e,Q){"use strict";var r;Object.defineProperty(e,"__esModule",{value:!0}),e.BussproofsConfiguration=void 0;var T=Q(2),n=Q(143),o=Q(43);Q(287),e.BussproofsConfiguration=T.Configuration.create("bussproofs",{handler:{macro:["Bussproofs-macros"],environment:["Bussproofs-environments"]},items:(r={},r[n.ProofTreeItem.prototype.kind]=n.ProofTreeItem,r),preprocessors:[[o.saveDocument,1]],postprocessors:[[o.clearDocument,3],[o.makeBsprAttributes,2],[o.balanceRules,1]]})},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.ProofTreeItem=void 0;var n=Q(5),o=Q(22),i=Q(85),a=Q(43),s=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.leftLabel=null,e.rigthLabel=null,e.innerStack=new i.default(e.factory,{},!0),e}return T(e,t),Object.defineProperty(e.prototype,"kind",{get:function(){return"proofTree"},enumerable:!1,configurable:!0}),e.prototype.checkItem=function(t){if(t.isKind("end")&&"prooftree"===t.getName()){var e=this.toMml();return a.setProperty(e,"proof",!0),[[this.factory.create("mml",e),t],!0]}if(t.isKind("stop"))throw new n.default("EnvMissingEnd","Missing \\end{%1}",this.getName());return this.innerStack.Push(t),o.BaseItem.fail},e.prototype.toMml=function(){var e=t.prototype.toMml.call(this),Q=this.innerStack.Top();if(Q.isKind("start")&&!Q.Size())return e;this.innerStack.Push(this.factory.create("stop"));var r=this.innerStack.Top().toMml();return this.create("node","mrow",[r,e],{})},e}(o.BaseItem);e.ProofTreeItem=s},function(t,e,Q){"use strict";var r=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},T=this&&this.__spread||function(){for(var t=[],e=0;e0);var s=t.create("node","mtr",i,{}),u=t.create("node","mtable",[s],{framespacing:"0 0"}),p=l(t,t.GetArgument(e)),h=r.getProperty("currentLine");h!==r.getProperty("line")&&r.setProperty("currentLine",r.getProperty("line"));var f=c(t,u,[p],r.getProperty("left"),r.getProperty("right"),h,T);r.setProperty("left",null),r.setProperty("right",null),a.setProperty(f,"inference",o),t.configuration.addNode("inference",f),r.Push(f)},s.Label=function(t,e,Q){var r=t.stack.Top();if("proofTree"!==r.kind)throw new n.default("IllegalProofCommand","Proof commands only allowed in prooftree environment.");var T=i.default.internalMath(t,t.GetArgument(e),0),o=T.length>1?t.create("node","mrow",T,{}):T[0];r.setProperty(Q,o)},s.SetLine=function(t,e,Q,r){var T=t.stack.Top();if("proofTree"!==T.kind)throw new n.default("IllegalProofCommand","Proof commands only allowed in prooftree environment.");T.setProperty("currentLine",Q),r&&T.setProperty("line",Q)},s.RootAtTop=function(t,e,Q){var r=t.stack.Top();if("proofTree"!==r.kind)throw new n.default("IllegalProofCommand","Proof commands only allowed in prooftree environment.");r.setProperty("rootAtTop",Q)},s.AxiomF=function(t,e){var Q=t.stack.Top();if("proofTree"!==Q.kind)throw new n.default("IllegalProofCommand","Proof commands only allowed in prooftree environment.");var r=u(t,e);a.setProperty(r,"axiom",!0),Q.Push(r)},s.FCenter=function(t,e){},s.InferenceF=function(t,e,Q){var r=t.stack.Top();if("proofTree"!==r.kind)throw new n.default("IllegalProofCommand","Proof commands only allowed in prooftree environment.");if(r.Size()0);var s=t.create("node","mtr",i,{}),l=t.create("node","mtable",[s],{framespacing:"0 0"}),p=u(t,e),h=r.getProperty("currentLine");h!==r.getProperty("line")&&r.setProperty("currentLine",r.getProperty("line"));var f=c(t,l,[p],r.getProperty("left"),r.getProperty("right"),h,T);r.setProperty("left",null),r.setProperty("right",null),a.setProperty(f,"inference",o),t.configuration.addNode("inference",f),r.Push(f)},e.default=s},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.CancelConfiguration=e.CancelMethods=void 0;var r=Q(2),T=Q(13),n=Q(3),o=Q(9),i=Q(87);e.CancelMethods={},e.CancelMethods.Cancel=function(t,e,Q){var r=t.GetBrackets(e,""),T=t.ParseArg(e),n=o.default.keyvalOptions(r,i.ENCLOSE_OPTIONS);n.notation=Q,t.Push(t.create("node","menclose",[T],n))},e.CancelMethods.CancelTo=function(t,e){var Q=t.GetBrackets(e,""),r=t.ParseArg(e),n=t.ParseArg(e),a=o.default.keyvalOptions(Q,i.ENCLOSE_OPTIONS);a.notation=[T.TexConstant.Notation.UPDIAGONALSTRIKE,T.TexConstant.Notation.UPDIAGONALARROW,T.TexConstant.Notation.NORTHEASTARROW].join(" "),r=t.create("node","mpadded",[r],{depth:"-.1em",height:"+.1em",voffset:".1em"}),t.Push(t.create("node","msup",[t.create("node","menclose",[n],a),r]))},new n.CommandMap("cancel",{cancel:["Cancel",T.TexConstant.Notation.UPDIAGONALSTRIKE],bcancel:["Cancel",T.TexConstant.Notation.DOWNDIAGONALSTRIKE],xcancel:["Cancel",T.TexConstant.Notation.UPDIAGONALSTRIKE+" "+T.TexConstant.Notation.DOWNDIAGONALSTRIKE],cancelto:"CancelTo"},e.CancelMethods),e.CancelConfiguration=r.Configuration.create("cancel",{handler:{macro:["cancel"]}})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ColorConfiguration=void 0;var r=Q(3),T=Q(2),n=Q(147),o=Q(148);new r.CommandMap("color",{color:"Color",textcolor:"TextColor",definecolor:"DefineColor",colorbox:"ColorBox",fcolorbox:"FColorBox"},n.ColorMethods);e.ColorConfiguration=T.Configuration.create("color",{handler:{macro:["color"]},options:{color:{padding:"5px",borderWidth:"2px"}},config:function(t,e){e.parseOptions.packageData.set("color",{model:new o.ColorModel})}})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ColorMethods=void 0;var r=Q(8),T=Q(9);function n(t){var e="+"+t,Q=t.replace(/^.*?([a-z]*)$/,"$1");return{width:"+"+2*parseFloat(e)+Q,height:e,depth:e,lspace:t}}e.ColorMethods={},e.ColorMethods.Color=function(t,e){var Q=t.GetBrackets(e,""),r=t.GetArgument(e),T=t.configuration.packageData.get("color").model.getColor(Q,r),n=t.itemFactory.create("style").setProperties({styles:{mathcolor:T}});t.stack.env.color=T,t.Push(n)},e.ColorMethods.TextColor=function(t,e){var Q=t.GetBrackets(e,""),r=t.GetArgument(e),T=t.configuration.packageData.get("color").model.getColor(Q,r),n=t.stack.env.color;t.stack.env.color=T;var o=t.ParseArg(e);n?t.stack.env.color=n:delete t.stack.env.color;var i=t.create("node","mstyle",[o],{mathcolor:T});t.Push(i)},e.ColorMethods.DefineColor=function(t,e){var Q=t.GetArgument(e),r=t.GetArgument(e),T=t.GetArgument(e);t.configuration.packageData.get("color").model.defineColor(r,Q,T)},e.ColorMethods.ColorBox=function(t,e){var Q=t.GetArgument(e),o=T.default.internalMath(t,t.GetArgument(e)),i=t.configuration.packageData.get("color").model,a=t.create("node","mpadded",o,{mathbackground:i.getColor("named",Q)});r.default.setProperties(a,n(t.options.color.padding)),t.Push(a)},e.ColorMethods.FColorBox=function(t,e){var Q=t.GetArgument(e),o=t.GetArgument(e),i=T.default.internalMath(t,t.GetArgument(e)),a=t.options.color,s=t.configuration.packageData.get("color").model,l=t.create("node","mpadded",i,{mathbackground:s.getColor("named",o),style:"border: "+a.borderWidth+" solid "+s.getColor("named",Q)});r.default.setProperties(l,n(a.padding)),t.Push(l)}},function(t,e,Q){"use strict";var r=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.ColorModel=void 0;var T=Q(5),n=Q(149),o=new Map,i=function(){function t(){this.userColors=new Map}return t.prototype.normalizeColor=function(t,e){if(!t||"named"===t)return e;if(o.has(t))return o.get(t)(e);throw new T.default("UndefinedColorModel","Color model '%1' not defined",t)},t.prototype.getColor=function(t,e){return t&&"named"!==t?this.normalizeColor(t,e):this.getColorByName(e)},t.prototype.getColorByName=function(t){return this.userColors.has(t)?this.userColors.get(t):n.COLORS.has(t)?n.COLORS.get(t):t},t.prototype.defineColor=function(t,e,Q){var r=this.normalizeColor(t,Q);this.userColors.set(e,r)},t}();e.ColorModel=i,o.set("rgb",(function(t){var e,Q,n=t.trim().split(/\s*,\s*/),o="#";if(3!==n.length)throw new T.default("ModelArg1","Color values for the %1 model require 3 numbers","rgb");try{for(var i=r(n),a=i.next();!a.done;a=i.next()){var s=a.value;if(!s.match(/^(\d+(\.\d*)?|\.\d+)$/))throw new T.default("InvalidDecimalNumber","Invalid decimal number");var l=parseFloat(s);if(l<0||l>1)throw new T.default("ModelArg2","Color values for the %1 model must be between %2 and %3","rgb","0","1");var c=Math.floor(255*l).toString(16);c.length<2&&(c="0"+c),o+=c}}catch(t){e={error:t}}finally{try{a&&!a.done&&(Q=i.return)&&Q.call(i)}finally{if(e)throw e.error}}return o})),o.set("RGB",(function(t){var e,Q,n=t.trim().split(/\s*,\s*/),o="#";if(3!==n.length)throw new T.default("ModelArg1","Color values for the %1 model require 3 numbers","RGB");try{for(var i=r(n),a=i.next();!a.done;a=i.next()){var s=a.value;if(!s.match(/^\d+$/))throw new T.default("InvalidNumber","Invalid number");var l=parseInt(s);if(l>255)throw new T.default("ModelArg2","Color values for the %1 model must be between %2 and %3","RGB","0","255");var c=l.toString(16);c.length<2&&(c="0"+c),o+=c}}catch(t){e={error:t}}finally{try{a&&!a.done&&(Q=i.return)&&Q.call(i)}finally{if(e)throw e.error}}return o})),o.set("gray",(function(t){if(!t.match(/^\s*(\d+(\.\d*)?|\.\d+)\s*$/))throw new T.default("InvalidDecimalNumber","Invalid decimal number");var e=parseFloat(t);if(e<0||e>1)throw new T.default("ModelArg2","Color values for the %1 model must be between %2 and %3","gray","0","1");var Q=Math.floor(255*e).toString(16);return Q.length<2&&(Q="0"+Q),"#"+Q+Q+Q}))},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.COLORS=void 0,e.COLORS=new Map([["Apricot","#FBB982"],["Aquamarine","#00B5BE"],["Bittersweet","#C04F17"],["Black","#221E1F"],["Blue","#2D2F92"],["BlueGreen","#00B3B8"],["BlueViolet","#473992"],["BrickRed","#B6321C"],["Brown","#792500"],["BurntOrange","#F7921D"],["CadetBlue","#74729A"],["CarnationPink","#F282B4"],["Cerulean","#00A2E3"],["CornflowerBlue","#41B0E4"],["Cyan","#00AEEF"],["Dandelion","#FDBC42"],["DarkOrchid","#A4538A"],["Emerald","#00A99D"],["ForestGreen","#009B55"],["Fuchsia","#8C368C"],["Goldenrod","#FFDF42"],["Gray","#949698"],["Green","#00A64F"],["GreenYellow","#DFE674"],["JungleGreen","#00A99A"],["Lavender","#F49EC4"],["LimeGreen","#8DC73E"],["Magenta","#EC008C"],["Mahogany","#A9341F"],["Maroon","#AF3235"],["Melon","#F89E7B"],["MidnightBlue","#006795"],["Mulberry","#A93C93"],["NavyBlue","#006EB8"],["OliveGreen","#3C8031"],["Orange","#F58137"],["OrangeRed","#ED135A"],["Orchid","#AF72B0"],["Peach","#F7965A"],["Periwinkle","#7977B8"],["PineGreen","#008B72"],["Plum","#92268F"],["ProcessBlue","#00B0F0"],["Purple","#99479B"],["RawSienna","#974006"],["Red","#ED1B23"],["RedOrange","#F26035"],["RedViolet","#A1246B"],["Rhodamine","#EF559F"],["RoyalBlue","#0071BC"],["RoyalPurple","#613F99"],["RubineRed","#ED017D"],["Salmon","#F69289"],["SeaGreen","#3FBC9D"],["Sepia","#671800"],["SkyBlue","#46C5DD"],["SpringGreen","#C6DC67"],["Tan","#DA9D76"],["TealBlue","#00AEB3"],["Thistle","#D883B7"],["Turquoise","#00B4CE"],["Violet","#58429B"],["VioletRed","#EF58A0"],["White","#FFFFFF"],["WildStrawberry","#EE2967"],["Yellow","#FFF200"],["YellowGreen","#98CC70"],["YellowOrange","#FAA21A"]])},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ColorConfiguration=e.ColorV2Methods=void 0;var r=Q(3),T=Q(2);e.ColorV2Methods={Color:function(t,e){var Q=t.GetArgument(e),r=t.stack.env.color;t.stack.env.color=Q;var T=t.ParseArg(e);r?t.stack.env.color=r:delete t.stack.env.color;var n=t.create("node","mstyle",[T],{mathcolor:Q});t.Push(n)}},new r.CommandMap("colorv2",{color:"Color"},e.ColorV2Methods),e.ColorConfiguration=T.Configuration.create("colorv2",{handler:{macro:["colorv2"]}})},function(t,e,Q){"use strict";var r=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.ConfigMacrosConfiguration=void 0;var T=Q(2),n=Q(7),o=Q(3),i=Q(26),a=Q(88);e.ConfigMacrosConfiguration=T.Configuration.create("configmacros",{init:function(t){new o.CommandMap("configmacros-map",{},{}),t.append(T.Configuration.local({handler:{macro:["configmacros-map"]},priority:3}))},config:function(t,e){var Q,T,n=e.parseOptions.handlers.retrieve("configmacros-map"),o=e.parseOptions.options.macros;try{for(var s=r(Object.keys(o)),l=s.next();!l.done;l=s.next()){var c=l.value,u="string"==typeof o[c]?[o[c]]:o[c],p=Array.isArray(u[2])?new i.Macro(c,a.default.MacroWithTemplate,u.slice(0,2).concat(u[2])):new i.Macro(c,a.default.Macro,u);n.add(c,p)}}catch(t){Q={error:t}}finally{try{l&&!l.done&&(T=s.return)&&T.call(s)}finally{if(Q)throw Q.error}}},options:{macros:n.expandable({})}})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ExtpfeilConfiguration=e.ExtpfeilMethods=void 0;var r=Q(2),T=Q(3),n=Q(34),o=Q(44),i=Q(89),a=Q(5);e.ExtpfeilMethods={},e.ExtpfeilMethods.xArrow=n.AmsMethods.xArrow,e.ExtpfeilMethods.NewExtArrow=function(t,Q){var r=t.GetArgument(Q),T=t.GetArgument(Q),n=t.GetArgument(Q);if(!r.match(/^\\([a-z]+|.)$/i))throw new a.default("NewextarrowArg1","First argument to %1 must be a control sequence name",Q);if(!T.match(/^(\d+),(\d+)$/))throw new a.default("NewextarrowArg2","Second argument to %1 must be two integers separated by a comma",Q);if(!n.match(/^(\d+|0x[0-9A-F]+)$/i))throw new a.default("NewextarrowArg3","Third argument to %1 must be a unicode character number",Q);r=r.substr(1);var i=T.split(",");o.default.addMacro(t,r,e.ExtpfeilMethods.xArrow,[parseInt(n),parseInt(i[0]),parseInt(i[1])])},new T.CommandMap("extpfeil",{xtwoheadrightarrow:["xArrow",8608,12,16],xtwoheadleftarrow:["xArrow",8606,17,13],xmapsto:["xArrow",8614,6,7],xlongequal:["xArrow",61,7,7],xtofrom:["xArrow",8644,12,12],Newextarrow:"NewExtArrow"},e.ExtpfeilMethods);e.ExtpfeilConfiguration=r.Configuration.create("extpfeil",{handler:{macro:["extpfeil"]},init:function(t){i.NewcommandConfiguration.init(t)}})},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.BeginEnvItem=void 0;var n=Q(5),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),Object.defineProperty(e.prototype,"kind",{get:function(){return"beginEnv"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isOpen",{get:function(){return!0},enumerable:!1,configurable:!0}),e.prototype.checkItem=function(e){if(e.isKind("end")){if(e.getName()!==this.getName())throw new n.default("EnvBadEnd","\\begin{%1} ended with \\end{%2}",this.getName(),e.getName());return[[this.factory.create("mml",this.toMml())],!0]}if(e.isKind("stop"))throw new n.default("EnvMissingEnd","Missing \\end{%1}",this.getName());return t.prototype.checkItem.call(this,e)},e}(Q(22).BaseItem);e.BeginEnvItem=o},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.HtmlConfiguration=void 0;var r=Q(2),T=Q(3),n=Q(155);new T.CommandMap("html_macros",{href:"Href",class:"Class",style:"Style",cssId:"Id"},n.default),e.HtmlConfiguration=r.Configuration.create("html",{handler:{macro:["html_macros"]}})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=Q(8),T={Href:function(t,e){var Q=t.GetArgument(e),T=n(t,e);r.default.setAttribute(T,"href",Q),t.Push(T)},Class:function(t,e){var Q=t.GetArgument(e),T=n(t,e),o=r.default.getAttribute(T,"class");o&&(Q=o+" "+Q),r.default.setAttribute(T,"class",Q),t.Push(T)},Style:function(t,e){var Q=t.GetArgument(e),T=n(t,e),o=r.default.getAttribute(T,"style");o&&(";"!==Q.charAt(Q.length-1)&&(Q+=";"),Q=o+" "+Q),r.default.setAttribute(T,"style",Q),t.Push(T)},Id:function(t,e){var Q=t.GetArgument(e),T=n(t,e);r.default.setAttribute(T,"id",Q),t.Push(T)}},n=function(t,e){var Q=t.ParseArg(e);if(!r.default.isInferred(Q))return Q;var T=r.default.getChildren(Q);if(1===T.length)return T[0];var n=t.create("node","mrow");return r.default.copyChildren(Q,n),r.default.copyAttributes(Q,n),n};e.default=T},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.MhchemConfiguration=void 0;var r=Q(2),T=Q(3),n=Q(5),o=Q(16),i=Q(34),a=Q(289),s={};s.Macro=o.default.Macro,s.xArrow=i.AmsMethods.xArrow,s.Machine=function(t,e,Q){try{var r=t.GetArgument(e),T=a.mhchemParser.go(r,Q),o=a.texify.go(T);t.string=o+t.string.substr(t.i),t.i=0}catch(t){throw new n.default(t[0],t[1],t.slice(2))}},new T.CommandMap("mhchem",{ce:["Machine","ce"],pu:["Machine","pu"],longrightleftharpoons:["Macro","\\stackrel{\\textstyle{-}\\!\\!{\\rightharpoonup}}{\\smash{{\\leftharpoondown}\\!\\!{-}}}"],longRightleftharpoons:["Macro","\\stackrel{\\textstyle{-}\\!\\!{\\rightharpoonup}}{\\smash{\\leftharpoondown}}"],longLeftrightharpoons:["Macro","\\stackrel{\\textstyle\\vphantom{{-}}{\\rightharpoonup}}{\\smash{{\\leftharpoondown}\\!\\!{-}}}"],longleftrightarrows:["Macro","\\stackrel{\\longrightarrow}{\\smash{\\longleftarrow}\\Rule{0px}{.25em}{0px}}"],tripledash:["Macro","\\vphantom{-}\\raise2mu{\\kern2mu\\tiny\\text{-}\\kern1mu\\text{-}\\kern1mu\\text{-}\\kern2mu}"],xrightarrow:["xArrow",8594,5,6],xleftarrow:["xArrow",8592,7,3],xleftrightarrow:["xArrow",8596,6,6],xrightleftharpoons:["xArrow",8652,5,7],xRightleftharpoons:["xArrow",8652,5,7],xLeftrightharpoons:["xArrow",8652,5,7]},s),e.MhchemConfiguration=r.Configuration.create("mhchem",{handler:{macro:["mhchem"]}})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.NoErrorsConfiguration=void 0;var r=Q(2);e.NoErrorsConfiguration=r.Configuration.create("noerrors",{nodes:{error:function(t,e,Q,r){var T=t.create("token","mtext",{},r.replace(/\n/g," "));return t.create("node","merror",[T],{"data-mjx-error":e,title:e})}}})},function(t,e,Q){"use strict";var r=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.NoUndefinedConfiguration=void 0;var T=Q(2);e.NoUndefinedConfiguration=T.Configuration.create("noundefined",{fallback:{macro:function(t,e){var Q,T,n=t.create("text","\\"+e),o=t.options.noundefined||{},i={};try{for(var a=r(["color","background","size"]),s=a.next();!s.done;s=a.next()){var l=s.value;o[l]&&(i["math"+l]=o[l])}}catch(t){Q={error:t}}finally{try{s&&!s.done&&(T=a.return)&&T.call(a)}finally{if(Q)throw Q.error}}t.Push(t.create("node","mtext",[],i,n))}},options:{noundefined:{color:"red",background:"",size:""}},priority:3})},function(t,e,Q){"use strict";var r;Object.defineProperty(e,"__esModule",{value:!0}),e.PhysicsConfiguration=void 0;var T=Q(2),n=Q(160);Q(290),e.PhysicsConfiguration=T.Configuration.create("physics",{handler:{macro:["Physics-automatic-bracing-macros","Physics-vector-macros","Physics-vector-chars","Physics-derivative-macros","Physics-expressions-macros","Physics-quick-quad-macros","Physics-bra-ket-macros","Physics-matrix-macros"],character:["Physics-characters"],environment:["Physics-aux-envs"]},items:(r={},r[n.AutoOpen.prototype.kind]=n.AutoOpen,r)})},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.AutoOpen=void 0;var n=Q(22),o=Q(9),i=Q(12),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),Object.defineProperty(e.prototype,"kind",{get:function(){return"auto open"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isOpen",{get:function(){return!0},enumerable:!1,configurable:!0}),e.prototype.toMml=function(){var e=this.factory.configuration.parser,Q=this.getProperty("right");if(this.getProperty("smash")){var r=t.prototype.toMml.call(this),T=e.create("node","mpadded",[r],{height:0,depth:0});this.Clear(),this.Push(e.create("node","TeXAtom",[T]))}Q&&this.Push(new i.default(Q,e.stack.env,e.configuration).mml());var n=t.prototype.toMml.call(this);return o.default.fenced(this.factory.configuration,this.getProperty("open"),n,this.getProperty("close"),this.getProperty("big"))},e.prototype.checkItem=function(e){var Q=e.getProperty("autoclose");return Q&&Q===this.getProperty("close")?this.getProperty("ignore")?(this.Clear(),[[],!0]):[[this.toMml()],!0]:t.prototype.checkItem.call(this,e)},e}(n.BaseItem);e.AutoOpen=a},function(t,e,Q){"use strict";var r=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0});var T=Q(16),n=Q(12),o=Q(5),i=Q(0),a=Q(9),s=Q(8),l=Q(41),c={},u={"(":")","[":"]","{":"}","|":"|"},p=/^(b|B)i(g{1,2})$/;c.Quantity=function(t,e,Q,r,T,l,c){void 0===Q&&(Q="("),void 0===r&&(r=")"),void 0===T&&(T=!1),void 0===l&&(l=""),void 0===c&&(c="");var h=!!T&&t.GetStar(),f=t.GetNext(),d=t.i,L=null;if("\\"===f){if(t.i++,!(L=t.GetCS()).match(p)){var H=t.create("node","mrow");return t.Push(a.default.fenced(t.configuration,Q,H,r)),void(t.i=d)}f=t.GetNext()}var m=u[f];if(T&&"{"!==f)throw new o.default("MissingArgFor","Missing argument for %1",t.currentCS);if(!m){H=t.create("node","mrow");return t.Push(a.default.fenced(t.configuration,Q,H,r)),void(t.i=d)}if(l){var y=t.create("token","mi",{texClass:i.TEXCLASS.OP},l);c&&s.default.setAttribute(y,"mathvariant",c),t.Push(t.itemFactory.create("fn",y))}if("{"===f){var v=t.GetArgument(e);return f=T?Q:"\\{",m=T?r:"\\}",v=h?f+" "+v+" "+m:L?"\\"+L+"l"+f+" "+v+" \\"+L+"r"+m:"\\left"+f+" "+v+" \\right"+m,void t.Push(new n.default(v,t.stack.env,t.configuration).mml())}T&&(f=Q,m=r),t.i++,t.Push(t.itemFactory.create("auto open").setProperties({open:f,close:m,big:L}))},c.Eval=function(t,e){var Q=t.GetStar(),r=t.GetNext();if("{"!==r){if("("===r||"["===r)return t.i++,void t.Push(t.itemFactory.create("auto open").setProperties({open:r,close:"|",smash:Q,right:"\\vphantom{\\int}"}));throw new o.default("MissingArgFor","Missing argument for %1",t.currentCS)}var T=t.GetArgument(e),n="\\left. "+(Q?"\\smash{"+T+"}":T)+" \\vphantom{\\int}\\right|";t.string=t.string.slice(0,t.i)+n+t.string.slice(t.i)},c.Commutator=function(t,e,Q,r){void 0===Q&&(Q="["),void 0===r&&(r="]");var T=t.GetStar(),i=t.GetNext(),a=null;if("\\"===i){if(t.i++,!(a=t.GetCS()).match(p))throw new o.default("MissingArgFor","Missing argument for %1",t.currentCS);i=t.GetNext()}if("{"!==i)throw new o.default("MissingArgFor","Missing argument for %1",t.currentCS);var s=t.GetArgument(e)+","+t.GetArgument(e);s=T?Q+" "+s+" "+r:a?"\\"+a+"l"+Q+" "+s+" \\"+a+"r"+r:"\\left"+Q+" "+s+" \\right"+r,t.Push(new n.default(s,t.stack.env,t.configuration).mml())};var h=[65,90],f=[97,122],d=[913,937],L=[945,969],H=[48,57];function m(t,e){return t>=e[0]&&t<=e[1]}function y(t,e,Q,r){var T=t.configuration.parser,n=l.NodeFactory.createToken(t,e,Q,r),o=r.codePointAt(0);return 1===r.length&&!T.stack.env.font&&T.stack.env.vectorFont&&(m(o,h)||m(o,f)||m(o,d)||m(o,H)||m(o,L)&&T.stack.env.vectorStar||s.default.getAttribute(n,"accent"))&&s.default.setAttribute(n,"mathvariant",T.stack.env.vectorFont),n}c.VectorBold=function(t,e){var Q=t.GetStar(),r=t.GetArgument(e),T=t.configuration.nodeFactory.get("token"),o=t.stack.env.font;delete t.stack.env.font,t.configuration.nodeFactory.set("token",y),t.stack.env.vectorFont=Q?"bold-italic":"bold",t.stack.env.vectorStar=Q;var i=new n.default(r,t.stack.env,t.configuration).mml();o&&(t.stack.env.font=o),delete t.stack.env.vectorFont,delete t.stack.env.vectorStar,t.configuration.nodeFactory.set("token",T),t.Push(i)},c.StarMacro=function(t,e,Q){for(var r=[],T=3;Tt.configuration.options.maxMacros)throw new o.default("MaxMacroSub1","MathJax maximum macro substitution count exceeded; is there a recursive macro call?")};var v=function(t,e,Q,r,T){var o=new n.default(r,t.stack.env,t.configuration).mml();t.Push(t.itemFactory.create(e,o));var i=t.GetNext(),a=u[i];if(a){var s=-1!==T.indexOf(i);if("{"===i){var l=(s?"\\left\\{":"")+" "+t.GetArgument(Q)+" "+(s?"\\right\\}":"");return t.string=l+t.string.slice(t.i),void(t.i=0)}s&&(t.i++,t.Push(t.itemFactory.create("auto open").setProperties({open:i,close:a})))}};function g(t,e,Q){var T=r(t,3),n=T[0],o=T[1],i=T[2];return e&&Q?"\\left\\langle{"+n+"}\\middle\\vert{"+o+"}\\middle\\vert{"+i+"}\\right\\rangle":e?"\\langle{"+n+"}\\vert{"+o+"}\\vert{"+i+"}\\rangle":"\\left\\langle{"+n+"}\\right\\vert{"+o+"}\\left\\vert{"+i+"}\\right\\rangle"}c.OperatorApplication=function(t,e,Q){for(var r=[],T=3;T2&&a.length>2?(l="^{"+(a.length-1)+"}",s=!0):null!=o&&(Q>2&&a.length>1&&(s=!0),c=l="^{"+o+"}");for(var u=T?"\\flatfrac":"\\frac",p=a.length>1?a[0]:"",h=a.length>1?a[1]:a[0],f="",d=2,L=void 0;L=a[d];d++)f+=r+" "+L;var H=u+"{"+r+l+p+"}{"+r+" "+h+c+" "+f+"}";t.Push(new n.default(H,t.stack.env,t.configuration).mml()),"("===t.GetNext()&&(t.i++,t.Push(t.itemFactory.create("auto open").setProperties({open:"(",close:")",ignore:s})))},c.Bra=function(t,e){var Q=t.GetStar(),r=t.GetArgument(e),T="",o=!1,i=!1;if("\\"===t.GetNext()){var a=t.i;t.i++;var s=t.GetCS(),l=t.lookup("macro",s);l&&"ket"===l.symbol?(o=!0,a=t.i,i=t.GetStar(),"{"===t.GetNext()?T=t.GetArgument(s,!0):(t.i=a,i=!1)):t.i=a}var c="";c=o?Q||i?"\\langle{"+r+"}\\vert{"+T+"}\\rangle":"\\left\\langle{"+r+"}\\middle\\vert{"+T+"}\\right\\rangle":Q||i?"\\langle{"+r+"}\\vert":"\\left\\langle{"+r+"}\\right\\vert{"+T+"}",t.Push(new n.default(c,t.stack.env,t.configuration).mml())},c.Ket=function(t,e){var Q=t.GetStar(),r=t.GetArgument(e),T=Q?"\\vert{"+r+"}\\rangle":"\\left\\vert{"+r+"}\\right\\rangle";t.Push(new n.default(T,t.stack.env,t.configuration).mml())},c.BraKet=function(t,e){var Q=t.GetStar(),r=t.GetArgument(e),T=null;"{"===t.GetNext()&&(T=t.GetArgument(e,!0));var o="";o=null==T?Q?"\\langle{"+r+"}\\vert{"+r+"}\\rangle":"\\left\\langle{"+r+"}\\middle\\vert{"+r+"}\\right\\rangle":Q?"\\langle{"+r+"}\\vert{"+T+"}\\rangle":"\\left\\langle{"+r+"}\\middle\\vert{"+T+"}\\right\\rangle",t.Push(new n.default(o,t.stack.env,t.configuration).mml())},c.KetBra=function(t,e){var Q=t.GetStar(),r=t.GetArgument(e),T=null;"{"===t.GetNext()&&(T=t.GetArgument(e,!0));var o="";o=null==T?Q?"\\vert{"+r+"}\\rangle\\!\\langle{"+r+"}\\vert":"\\left\\vert{"+r+"}\\middle\\rangle\\!\\middle\\langle{"+r+"}\\right\\vert":Q?"\\vert{"+r+"}\\rangle\\!\\langle{"+T+"}\\vert":"\\left\\vert{"+r+"}\\middle\\rangle\\!\\middle\\langle{"+T+"}\\right\\vert",t.Push(new n.default(o,t.stack.env,t.configuration).mml())},c.Expectation=function(t,e){var Q=t.GetStar(),r=Q&&t.GetStar(),T=t.GetArgument(e),o=null;"{"===t.GetNext()&&(o=t.GetArgument(e,!0));var i=T&&o?g([o,T,o],Q,r):Q?"\\langle {"+T+"} \\rangle":"\\left\\langle {"+T+"} \\right\\rangle";t.Push(new n.default(i,t.stack.env,t.configuration).mml())},c.MatrixElement=function(t,e){var Q=t.GetStar(),r=Q&&t.GetStar(),T=g([t.GetArgument(e),t.GetArgument(e),t.GetArgument(e)],Q,r);t.Push(new n.default(T,t.stack.env,t.configuration).mml())},c.MatrixQuantity=function(t,e,Q){var r=t.GetStar(),T=Q?"smallmatrix":"array",o="",i="",a="";switch(t.GetNext()){case"{":o=t.GetArgument(e);break;case"(":t.i++,i=r?"\\lgroup":"(",a=r?"\\rgroup":")",o=t.GetUpTo(e,")");break;case"[":t.i++,i="[",a="]",o=t.GetUpTo(e,"]");break;case"|":t.i++,i="|",a="|",o=t.GetUpTo(e,"|");break;default:i="(",a=")"}var s=(i?"\\left":"")+i+"\\begin{"+T+"}{} "+o+"\\end{"+T+"}"+(i?"\\right":"")+a;t.Push(new n.default(s,t.stack.env,t.configuration).mml())},c.IdentityMatrix=function(t,e){var Q=t.GetArgument(e),r=parseInt(Q,10);if(isNaN(r))throw new o.default("InvalidNumber","Invalid number");if(r<=1)return t.string="1"+t.string.slice(t.i),void(t.i=0);for(var T=Array(r).fill("0"),n=[],i=0;i=T){n.push(t.string.slice(i,T));break}i=t.i,n.push(o)}t.string=function(t,e){for(var Q=t.length,r=[],T=0;T=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},i=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},i=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.CommonOutputJax=void 0;var a=Q(55),s=Q(14),l=Q(7),c=Q(32),u=Q(84),p=Q(127),h=function(t){function e(e,Q,r){void 0===e&&(e=null),void 0===Q&&(Q=null),void 0===r&&(r=null);var T=this,n=o(l.separateOptions(e,r.OPTIONS),2),i=n[0],a=n[1];return(T=t.call(this,i)||this).factory=T.options.wrapperFactory||new Q,T.factory.jax=T,T.cssStyles=T.options.cssStyles||new p.CssStyles,T.font=T.options.font||new r(a),T.unknownCache=new Map,T}return T(e,t),e.prototype.typeset=function(t,e){this.setDocument(e);var Q=this.createNode();return this.toDOM(t,Q,e),Q},e.prototype.createNode=function(){var t=this.constructor.NAME;return this.html("mjx-container",{class:"MathJax",jax:t})},e.prototype.setScale=function(t){var e=this.math.metrics.scale*this.options.scale;1!==e&&this.adaptor.setStyle(t,"fontSize",c.percent(e))},e.prototype.toDOM=function(t,e,Q){void 0===Q&&(Q=null),this.setDocument(Q),this.math=t,this.pxPerEm=t.metrics.ex/this.font.params.x_height,t.root.setTeXclass(null),this.setScale(e),this.nodeMap=new Map,this.container=e,this.processMath(t.root,e),this.nodeMap=null,this.executeFilters(this.postFilters,t,Q,e)},e.prototype.getBBox=function(t,e){this.setDocument(e),this.math=t,t.root.setTeXclass(null),this.nodeMap=new Map;var Q=this.factory.wrap(t.root).getBBox();return this.nodeMap=null,Q},e.prototype.getMetrics=function(t){var e,Q;this.setDocument(t);var r=this.adaptor,T=this.getMetricMaps(t);try{for(var n=i(t.math),o=n.next();!o.done;o=n.next()){var a=o.value,l=r.parent(a.start.node);if(a.state()=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},i=this&&this.__spread||function(){for(var t=[],e=0;e600?"bold":"normal"),r.family?Q=this.explicitVariant(r.family,r.weight,r.style):(this.node.getProperty("variantForm")&&(Q="-tex-variant"),Q=(e.BOLDVARIANTS[r.weight]||{})[Q]||Q,Q=(e.ITALICVARIANTS[r.style]||{})[Q]||Q)}this.variant=Q}},e.prototype.explicitVariant=function(t,e,Q){var r=this.styles;return r||(r=this.styles=new u.Styles),r.set("fontFamily",t),e&&r.set("fontWeight",e),Q&&r.set("fontStyle",Q),"-explicitFont"},e.prototype.getScale=function(){var t=1,e=this.parent,Q=e?e.bbox.scale:1,r=this.node.attributes,T=Math.min(r.get("scriptlevel"),2),n=r.get("fontsize"),o=this.node.isToken||this.node.isKind("mstyle")?r.get("mathsize"):r.getInherited("mathsize");if(0!==T){t=Math.pow(r.get("scriptsizemultiplier"),T);var i=this.length2em(r.get("scriptminsize"),.8,1);t0;this.bbox.L=e.isSet("lspace")?Math.max(0,this.length2em(e.get("lspace"))):f(Q,t.lspace),this.bbox.R=e.isSet("rspace")?Math.max(0,this.length2em(e.get("rspace"))):f(Q,t.rspace)},e.prototype.getTeXSpacing=function(t,e){if(!e){var Q=this.node.texSpacing();Q&&(this.bbox.L=this.length2em(Q))}if(t||e){var r=this.node.coreMO().attributes;r.isSet("lspace")&&(this.bbox.L=Math.max(0,this.length2em(r.get("lspace")))),r.isSet("rspace")&&(this.bbox.R=Math.max(0,this.length2em(r.get("rspace"))))}},e.prototype.isTopEmbellished=function(){return this.node.isEmbellished&&!(this.node.Parent&&this.node.Parent.isEmbellished)},e.prototype.core=function(){return this.jax.nodeMap.get(this.node.core())},e.prototype.coreMO=function(){return this.jax.nodeMap.get(this.node.coreMO())},e.prototype.getText=function(){var t,e,Q="";if(this.node.isToken)try{for(var r=n(this.node.childNodes),T=r.next();!T.done;T=r.next()){var o=T.value;o instanceof s.TextNode&&(Q+=o.getText())}}catch(e){t={error:e}}finally{try{T&&!T.done&&(e=r.return)&&e.call(r)}finally{if(t)throw t.error}}return Q},e.prototype.canStretch=function(t){if(this.stretch=h.NOSTRETCH,this.node.isEmbellished){var e=this.core();e&&e.node!==this.node&&e.canStretch(t)&&(this.stretch=e.stretch)}return 0!==this.stretch.dir},e.prototype.getAlignShift=function(){var t,e=(t=this.node.attributes).getList.apply(t,i(s.indentAttributes)),Q=e.indentalign,r=e.indentshift,T=e.indentalignfirst,n=e.indentshiftfirst;return"indentalign"!==T&&(Q=T),"auto"===Q&&(Q=this.jax.options.displayAlign),"indentshift"!==n&&(r=n),"auto"===r&&(r=this.jax.options.displayIndent,"right"!==Q||r.match(/^\s*0[a-z]*\s*$/)||(r=("-"+r.trim()).replace(/^--/,""))),[Q,this.length2em(r,this.metrics.containerWidth)]},e.prototype.getAlignX=function(t,e,Q){return"right"===Q?t-(e.w+e.R)*e.rscale:"left"===Q?e.L*e.rscale:(t-e.w*e.rscale)/2},e.prototype.getAlignY=function(t,e,Q,r,T){return"top"===T?t-Q:"bottom"===T?r-e:"middle"===T?(t-Q-(e-r))/2:0},e.prototype.getWrapWidth=function(t){return this.childNodes[t].getBBox().w},e.prototype.getChildAlign=function(t){return"left"},e.prototype.percent=function(t){return c.percent(t)},e.prototype.em=function(t){return c.em(t)},e.prototype.px=function(t,e){return void 0===e&&(e=-c.BIGDIMEN),c.px(t,e,this.metrics.em)},e.prototype.length2em=function(t,e,Q){return void 0===e&&(e=1),void 0===Q&&(Q=null),null===Q&&(Q=this.bbox.scale),c.length2em(t,e,Q,this.jax.pxPerEm)},e.prototype.unicodeChars=function(t,e){void 0===e&&(e=this.variant);var Q=l.unicodeChars(t),r=this.font.getVariant(e);if(r&&r.chars){var T=r.chars;Q=Q.map((function(t){return((T[t]||[])[3]||{}).smp||t}))}return Q},e.prototype.remapChars=function(t){return t},e.prototype.mmlText=function(t){return this.node.factory.create("text").setText(t)},e.prototype.mmlNode=function(t,e,Q){return void 0===e&&(e={}),void 0===Q&&(Q=[]),this.node.factory.create(t,e,Q)},e.prototype.createMo=function(t){var e=this.node.factory,Q=e.create("text").setText(t),r=e.create("mo",{stretchy:!0},[Q]);r.inheritAttributesFrom(this.node);var T=this.wrap(r);return T.parent=this,T},e.prototype.getVariantChar=function(t,e){var Q=this.font.getChar(t,e)||[0,0,0,{unknown:!0}];return 3===Q.length&&(Q[3]={}),Q},e.kind="unknown",e.styles={},e.removeStyles=["fontSize","fontFamily","fontWeight","fontStyle","fontVariant","font"],e.skipAttributes={fontfamily:!0,fontsize:!0,fontweight:!0,fontstyle:!0,color:!0,background:!0,class:!0,href:!0,style:!0,xmlns:!0},e.BOLDVARIANTS={bold:{normal:"bold",italic:"bold-italic",fraktur:"bold-fraktur",script:"bold-script","sans-serif":"bold-sans-serif","sans-serif-italic":"sans-serif-bold-italic"},normal:{bold:"normal","bold-italic":"italic","bold-fraktur":"fraktur","bold-script":"script","bold-sans-serif":"sans-serif","sans-serif-bold-italic":"sans-serif-italic"}},e.ITALICVARIANTS={italic:{normal:"italic",bold:"bold-italic","sans-serif":"sans-serif-italic","bold-sans-serif":"sans-serif-bold-italic"},normal:{italic:"normal","bold-italic":"bold","sans-serif-italic":"sans-serif","sans-serif-bold-italic":"bold-sans-serif"}},e}(a.AbstractWrapper);e.CommonWrapper=d},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.CommonWrapperFactory=void 0;var n=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.jax=null,e}return T(e,t),Object.defineProperty(e.prototype,"Wrappers",{get:function(){return this.node},enumerable:!1,configurable:!0}),e.defaultNodes={},e}(Q(121).AbstractWrapperFactory);e.CommonWrapperFactory=n},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.CommonTeXAtomMixin=void 0;var n=Q(0);e.CommonTeXAtomMixin=function(t){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.computeBBox=function(e,Q){if(void 0===Q&&(Q=!1),t.prototype.computeBBox.call(this,e,Q),this.childNodes[0]&&this.childNodes[0].bbox.ic&&(e.ic=this.childNodes[0].bbox.ic),this.node.texClass===n.TEXCLASS.VCENTER){var r=e.h,T=(r+e.d)/2+this.font.params.axis_height-r;e.h+=T,e.d-=T}},e}(t)}},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.CommonTextNodeMixin=void 0,e.CommonTextNodeMixin=function(t){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.computeBBox=function(t,e){var Q,r;void 0===e&&(e=!1);var T=this.parent.variant,i=this.node.getText();if("-explicitFont"===T){var a=this.jax.getFontData(this.parent.styles),s=this.jax.measureText(i,T,a),l=s.w,c=s.h,u=s.d;t.h=c,t.d=u,t.w=l}else{var p=this.remappedText(i,T);t.empty();try{for(var h=n(p),f=h.next();!f.done;f=h.next()){var d=f.value,L=o(this.getVariantChar(T,d),4),H=(c=L[0],u=L[1],l=L[2],L[3]);if(H.unknown){var m=this.jax.measureText(String.fromCodePoint(d),T);l=m.w,c=m.h,u=m.d}t.w+=l,c>t.h&&(t.h=c),u>t.d&&(t.d=u),t.ic=H.ic||0,t.sk=H.sk||0}}catch(t){Q={error:t}}finally{try{f&&!f.done&&(r=h.return)&&r.call(h)}finally{if(Q)throw Q.error}}p.length>1&&(t.sk=0),t.clean()}},e.prototype.remappedText=function(t,e){var Q=this.parent.stretch.c;return Q?[Q]:this.parent.remapChars(this.unicodeChars(t,e))},e.prototype.getStyles=function(){},e.prototype.getVariant=function(){},e.prototype.getScale=function(){},e.prototype.getSpace=function(){},e}(t)}},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.CommonMathMixin=void 0,e.CommonMathMixin=function(t){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.getWrapWidth=function(t){return this.parent?this.getBBox().w:this.metrics.containerWidth/this.jax.pxPerEm},e}(t)}},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},o=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.CommonMencloseMixin=void 0;var a=Q(45),s=Q(15);e.CommonMencloseMixin=function(t){return function(t){function e(){for(var e=[],Q=0;Q0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},o=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.CommonMfencedMixin=void 0,e.CommonMfencedMixin=function(t){return function(t){function e(){for(var e=[],Q=0;Q0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},o=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},o=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},o=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.CommonMmultiscriptsMixin=e.ScriptNames=e.NextScript=void 0;var i=Q(18);e.NextScript={base:"subList",subList:"supList",supList:"subList",psubList:"psupList",psupList:"psubList"},e.ScriptNames=["sup","sup","psup","psub"],e.CommonMmultiscriptsMixin=function(t){return function(t){function Q(){var e=null!==t&&t.apply(this,arguments)||this;return e.scriptData=null,e.firstPrescript=0,e}return T(Q,t),Q.prototype.combinePrePost=function(t,e){var Q=new i.BBox(t);return Q.combine(e,0,0),Q},Q.prototype.computeBBox=function(t,e){void 0===e&&(e=!1);var Q=this.font.params.scriptspace,r=this.getScriptData(),T=this.combinePrePost(r.sub,r.psub),o=this.combinePrePost(r.sup,r.psup),i=n(this.getUVQ(r.base,T,o),2),a=i[0],s=i[1];if(t.empty(),r.numPrescripts&&(t.combine(r.psup,Q,a),t.combine(r.psub,Q,s)),t.append(r.base),r.numScripts){var l=t.w;t.combine(r.sup,l,a),t.combine(r.sub,l,s),t.w+=Q}t.clean(),this.setChildPWidths(e)},Q.prototype.getScriptData=function(){if(this.scriptData)return this.scriptData;var t=this.scriptData={base:null,sub:i.BBox.empty(),sup:i.BBox.empty(),psub:i.BBox.empty(),psup:i.BBox.empty(),numPrescripts:0,numScripts:0},e=this.getScriptBBoxLists();return this.combineBBoxLists(t.sub,t.sup,e.subList,e.supList),this.combineBBoxLists(t.psub,t.psup,e.psubList,e.psupList),this.scriptData.base=e.base[0],this.scriptData.numPrescripts=e.psubList.length,this.scriptData.numScripts=e.subList.length,this.scriptData},Q.prototype.getScriptBBoxLists=function(){var t,Q,r={base:[],subList:[],supList:[],psubList:[],psupList:[]},T="base";try{for(var n=o(this.childNodes),i=n.next();!i.done;i=n.next()){var a=i.value;a.node.isKind("mprescripts")?T="psubList":(r[T].push(a.getBBox()),T=e.NextScript[T])}}catch(e){t={error:e}}finally{try{i&&!i.done&&(Q=n.return)&&Q.call(n)}finally{if(t)throw t.error}}return this.firstPrescript=r.subList.length+r.supList.length+2,this.padLists(r.subList,r.supList),this.padLists(r.psubList,r.psupList),r},Q.prototype.padLists=function(t,e){t.length>e.length&&e.push(i.BBox.empty())},Q.prototype.combineBBoxLists=function(t,e,Q,r){for(var T=0;Tt.h&&(t.h=a),s>t.d&&(t.d=s),u>e.h&&(e.h=u),p>e.d&&(e.d=p)}},Q.prototype.getScaledWHD=function(t){var e=t.w,Q=t.h,r=t.d,T=t.rscale;return[e*T,Q*T,r*T]},Q.prototype.getUVQ=function(e,Q,r){var T;if(!this.UVQ){var o=n([0,0,0],3),i=o[0],a=o[1],s=o[2];0===Q.h&&0===Q.d?i=this.getU(e,r):0===r.h&&0===r.d?i=-this.getV(e,Q):(i=(T=n(t.prototype.getUVQ.call(this,e,Q,r),3))[0],a=T[1],s=T[2]),this.UVQ=[i,a,s]}return this.UVQ},Q}(t)}},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.CommonMnMixin=void 0,e.CommonMnMixin=function(t){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.remapChars=function(t){if(t.length){var e=this.font.getRemappedChar("mn",t[0]);if(e){var Q=this.unicodeChars(e,this.variant);1===Q.length?t[0]=Q[0]:t=Q.concat(t.slice(1))}}return t},e}(t)}},function(t,e,Q){"use strict";var r,T,n=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),o=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},i=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.CommonMoMixin=e.DirectionVH=void 0;var s=Q(28);e.DirectionVH=((T={})[1]="v",T[2]="h",T),e.CommonMoMixin=function(t){return function(t){function e(){for(var e=[],Q=0;Q=i)return this.variant=this.font.getSizeVariant(l,c),void(this.size=c);c++}}catch(t){Q={error:t}}finally{try{p&&!p.done&&(r=u.return)&&r.call(u)}finally{if(Q)throw Q.error}}s.stretch?(this.size=-1,this.invalidateBBox(),this.getStretchBBox(t,T,s)):(this.variant=this.font.getSizeVariant(l,c-1),this.size=c-1)}},e.prototype.getSize=function(t,e){var Q=this.node.attributes;return Q.isSet(t)&&(e=this.length2em(Q.get(t),1,1)),e},e.prototype.getWH=function(t){if(0===t.length)return 0;if(1===t.length)return t[0];var e=o(t,2),Q=e[0],r=e[1],T=this.font.params.axis_height;return this.node.attributes.get("symmetric")?2*Math.max(Q-T,r+T):Q+r},e.prototype.getStretchBBox=function(t,e,Q){var r;Q.hasOwnProperty("min")&&Q.min>e&&(e=Q.min);var T=o(Q.HDW,3),n=T[0],i=T[1],a=T[2];1===this.stretch.dir?(n=(r=o(this.getBaseline(t,e,Q),2))[0],i=r[1]):a=e,this.bbox.h=n,this.bbox.d=i,this.bbox.w=a},e.prototype.getBaseline=function(t,e,Q){var r=2===t.length&&t[0]+t[1]===e,T=this.node.attributes.get("symmetric"),n=o(r?t:[e,0],2),i=n[0],a=n[1],s=o([i+a,0],2),l=s[0],c=s[1];if(T){var u=this.font.params.axis_height;r&&(l=2*Math.max(i-u,a+u)),c=l/2-u}else if(r)c=a;else{var p=o(Q.HDW||[.75,.25],2),h=p[0],f=p[1];c=f*(l/(h+f))}return[l-c,c]},e.prototype.remapChars=function(t){if(1===t.length){var e=this.node.coreParent().parent,Q=this.isAccent&&!e.isKind("mrow")?"accent":"mo",r=this.font.getRemappedChar(Q,t[0]);r&&(t=this.unicodeChars(r,this.variant))}return t},e}(t)}},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.CommonMpaddedMixin=void 0,e.CommonMpaddedMixin=function(t){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.getDimens=function(){var t=this.node.attributes.getList("width","height","depth","lspace","voffset"),e=this.childNodes[0].getBBox(),Q=e.w,r=e.h,T=e.d,n=Q,o=r,i=T,a=0,s=0,l=0;""!==t.width&&(Q=this.dimen(t.width,e,"w",0)),""!==t.height&&(r=this.dimen(t.height,e,"h",0)),""!==t.depth&&(T=this.dimen(t.depth,e,"d",0)),""!==t.voffset&&(s=this.dimen(t.voffset,e)),""!==t.lspace&&(a=this.dimen(t.lspace,e));var c=this.node.attributes.get("data-align");return c&&(l=this.getAlignX(Q,e,c)),[o,i,n,r-o,T-i,Q-n,a,s,l]},e.prototype.dimen=function(t,e,Q,r){void 0===Q&&(Q=""),void 0===r&&(r=null);var T=(t=String(t)).match(/width|height|depth/),n=T?e[T[0].charAt(0)]:Q?e[Q]:0,o=this.length2em(t,n)||0;return t.match(/^[-+]/)&&Q&&(o+=n),null!=r&&(o=Math.max(r,o)),o},e.prototype.computeBBox=function(t,e){void 0===e&&(e=!1);var Q=n(this.getDimens(),6),r=Q[0],T=Q[1],o=Q[2],i=Q[3],a=Q[4],s=Q[5];t.w=o+s,t.h=r+i,t.d=T+a,this.setChildPWidths(e,t.w)},e.prototype.getWrapWidth=function(t){return this.getBBox().w},e.prototype.getChildAlign=function(t){return this.node.attributes.get("data-align")||"left"},e}(t)}},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.CommonMrootMixin=void 0,e.CommonMrootMixin=function(t){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),Object.defineProperty(e.prototype,"surd",{get:function(){return 2},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"root",{get:function(){return 1},enumerable:!1,configurable:!0}),e.prototype.combineRootBBox=function(t,e,Q){var r=this.childNodes[this.root].getBBox(),T=this.getRootDimens(e,Q)[1];t.combine(r,0,T)},e.prototype.getRootDimens=function(t,e){var Q=this.childNodes[this.surd],r=this.childNodes[this.root].getBBox(),T=(Q.size<0?.5:.6)*t.w,n=r.w,o=r.rscale,i=Math.max(n,T/o),a=Math.max(0,i-n);return[i*o-T,this.rootHeight(r,t,Q.size,e),a]},e.prototype.rootHeight=function(t,e,Q,r){var T=e.h+e.d;return(Q<0?1.9:.55*T)-(T-r)+Math.max(0,t.d*t.rscale)},e}(t)}},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},o=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},o=this&&this.__spread||function(){for(var t=[],e=0;ethis.surdH?(t.h+t.d-(this.surdH-2*e-Q/2))/2:e+Q/4]},e.prototype.getRootDimens=function(t,e){return[0,0,0,0]},e}(t)}},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},o=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.CommonMtableMixin=void 0;var a=Q(18),s=Q(15),l=Q(128);e.CommonMtableMixin=function(t){return function(t){function e(){for(var e=[],Q=0;Q1){if(null===e){e=0;var h=u>1&&u===p;try{for(var f=i(this.tableRows),d=f.next();!d.done;d=f.next()){var L;if(L=d.value.getChild(t)){var H=0===(g=L.childNodes[0]).stretch.dir;if(h||H){var m=g.getBBox(H).w;m>e&&(e=m)}}}}catch(t){T={error:t}}finally{try{d&&!d.done&&(n=f.return)&&n.call(f)}finally{if(T)throw T.error}}}try{for(var y=i(s),v=y.next();!v.done;v=y.next()){var g;(g=v.value).coreMO().getStretchedVariant([e])}}catch(t){o={error:t}}finally{try{v&&!v.done&&(a=y.return)&&a.call(y)}finally{if(o)throw o.error}}}},e.prototype.getTableData=function(){if(this.data)return this.data;for(var t=new Array(this.numRows).fill(0),e=new Array(this.numRows).fill(0),Q=new Array(this.numCols).fill(0),r=new Array(this.numRows),T=new Array(this.numRows),n=[0],o=this.tableRows,i=0;ir[Q]&&(r[Q]=i),a>T[Q]&&(T[Q]=a),n&&s>n[e]&&(n[e]=s)},e.prototype.recordPWidthCell=function(t,e){t.childNodes[0]&&t.childNodes[0].getBBox().pwidth&&this.pwidthCells.push([t,e])},e.prototype.computeBBox=function(t,e){void 0===e&&(e=!1);var Q,r,T=this.getTableData(),o=T.H,i=T.D;if(this.node.attributes.get("equalrows")){var a=this.getEqualRowHeight();Q=l.sum([].concat(this.rLines,this.rSpace))+a*this.numRows}else Q=l.sum(o.concat(i,this.rLines,this.rSpace));Q+=2*(this.fLine+this.fSpace[1]);var c=this.getComputedWidths();r=l.sum(c.concat(this.cLines,this.cSpace))+2*(this.fLine+this.fSpace[0]);var u=this.node.attributes.get("width");"auto"!==u&&(r=Math.max(this.length2em(u,0)+2*this.fLine,r));var p=n(this.getBBoxHD(Q),2),h=p[0],f=p[1];t.h=h,t.d=f,t.w=r;var d=n(this.getBBoxLR(),2),L=d[0],H=d[1];t.L=L,t.R=H,s.isPercent(u)||this.setColumnPWidths()},e.prototype.setChildPWidths=function(t,e,Q){var r=this.node.attributes.get("width");if(!s.isPercent(r))return!1;this.hasLabels||(this.bbox.pwidth="",this.container.bbox.pwidth="");var T=this.bbox,n=T.w,o=T.L,i=T.R,a=Math.max(n,this.length2em(r,Math.max(e,o+n+i))),c=this.node.attributes.get("equalcolumns")?Array(this.numCols).fill(this.percent(1/Math.max(1,this.numCols))):this.getColumnAttributes("columnwidth",0);this.cWidths=this.getColumnWidthsFixed(c,a);var u=this.getComputedWidths();return this.pWidth=l.sum(u.concat(this.cLines,this.cSpace))+2*(this.fLine+this.fSpace[0]),this.isTop&&(this.bbox.w=this.pWidth),this.setColumnPWidths(),this.pWidth!==n&&this.parent.invalidateBBox(),this.pWidth!==n},e.prototype.setColumnPWidths=function(){var t,e,Q=this.cWidths;try{for(var r=i(this.pwidthCells),T=r.next();!T.done;T=r.next()){var o=n(T.value,2),a=o[0],s=o[1];a.setChildPWidths(!1,Q[s])&&(a.invalidateBBox(),a.getBBox())}}catch(e){t={error:e}}finally{try{T&&!T.done&&(e=r.return)&&e.call(r)}finally{if(t)throw t.error}}},e.prototype.getBBoxHD=function(t){var e=n(this.getAlignmentRow(),2),Q=e[0],r=e[1];if(null===r){var T=this.font.params.axis_height,o=t/2;return{top:[0,t],center:[o,o],bottom:[t,0],baseline:[o,o],axis:[o+T,o-T]}[Q]||[o,o]}var i=this.getVerticalPosition(r,Q);return[i,t-i]},e.prototype.getBBoxLR=function(){if(this.hasLabels){var t=this.node.attributes.get("side"),e=n(this.getPadAlignShift(t),2),Q=e[0];return"center"===e[1]?[Q,Q]:"left"===t?[Q,0]:[0,Q]}return[0,0]},e.prototype.getPadAlignShift=function(t){var e=this.getTableData().L+this.length2em(this.node.attributes.get("minlabelspacing")),Q=n(null==this.styles?["",""]:[this.styles.get("padding-left"),this.styles.get("padding-right")],2),r=Q[0],T=Q[1];(r||T)&&(e=Math.max(e,this.length2em(r||"0"),this.length2em(T||"0")));var o=n(this.getAlignShift(),2),i=o[0],a=o[1];return i===t&&(a="left"===t?Math.max(e,a)-e:Math.min(-e,a)+e),[e,i,a]},e.prototype.getAlignShift=function(){return this.isTop?t.prototype.getAlignShift.call(this):[this.container.getChildAlign(this.containerI),0]},e.prototype.getWidth=function(){return this.pWidth||this.getBBox().w},e.prototype.getEqualRowHeight=function(){var t=this.getTableData(),e=t.H,Q=t.D,r=Array.from(e.keys()).map((function(t){return e[t]+Q[t]}));return Math.max.apply(Math,r)},e.prototype.getComputedWidths=function(){var t=this,e=this.getTableData().W,Q=Array.from(e.keys()).map((function(Q){return"number"==typeof t.cWidths[Q]?t.cWidths[Q]:e[Q]}));return this.node.attributes.get("equalcolumns")&&(Q=Array(Q.length).fill(l.max(Q))),Q},e.prototype.getColumnWidths=function(){var t=this.node.attributes.get("width");if(this.node.attributes.get("equalcolumns"))return this.getEqualColumns(t);var e=this.getColumnAttributes("columnwidth",0);return"auto"===t?this.getColumnWidthsAuto(e):s.isPercent(t)?this.getColumnWidthsPercent(e):this.getColumnWidthsFixed(e,this.length2em(t))},e.prototype.getEqualColumns=function(t){var e,Q=Math.max(1,this.numCols);if("auto"===t){var r=this.getTableData().W;e=l.max(r)}else if(s.isPercent(t))e=this.percent(1/Q);else{var T=l.sum([].concat(this.cLines,this.cSpace))+2*this.fSpace[0];e=Math.max(0,this.length2em(t)-T)/Q}return Array(this.numCols).fill(e)},e.prototype.getColumnWidthsAuto=function(t){var e=this;return t.map((function(t){return"auto"===t||"fit"===t?null:s.isPercent(t)?t:e.length2em(t)}))},e.prototype.getColumnWidthsPercent=function(t){var e=this,Q=t.indexOf("fit")>=0,r=(Q?this.getTableData():{W:null}).W;return Array.from(t.keys()).map((function(T){var n=t[T];return"fit"===n?null:"auto"===n?Q?r[T]:null:s.isPercent(n)?n:e.length2em(n)}))},e.prototype.getColumnWidthsFixed=function(t,e){var Q=this,r=Array.from(t.keys()),T=r.filter((function(e){return"fit"===t[e]})),n=r.filter((function(e){return"auto"===t[e]})),o=T.length||n.length,i=(o?this.getTableData():{W:null}).W,a=e-l.sum([].concat(this.cLines,this.cSpace))-2*this.fSpace[0],s=a;r.forEach((function(r){var T=t[r];s-="fit"===T||"auto"===T?i[r]:Q.length2em(T,e)}));var c=o&&s>0?s/o:0;return r.map((function(e){var r=t[e];return"fit"===r?i[e]+c:"auto"===r?i[e]+(0===T.length?c:0):Q.length2em(r,a)}))},e.prototype.getVerticalPosition=function(t,e){for(var Q=this.node.attributes.get("equalrows"),r=this.getTableData(),T=r.H,o=r.D,i=Q?this.getEqualRowHeight():0,a=this.getRowHalfSpacing(),s=this.fLine,l=0;lthis.numRows?null:r-1]},e.prototype.getColumnAttributes=function(t,e){void 0===e&&(e=1);var Q=this.numCols-e,r=this.getAttributeArray(t);if(0===r.length)return null;for(;r.lengthQ&&r.splice(Q),r},e.prototype.getRowAttributes=function(t,e){void 0===e&&(e=1);var Q=this.numRows-e,r=this.getAttributeArray(t);if(0===r.length)return null;for(;r.lengthQ&&r.splice(Q),r},e.prototype.getAttributeArray=function(t){var e=this.node.attributes.get(t);return e?s.split(e):[this.node.attributes.getDefault(t)]},e.prototype.addEm=function(t,e){var Q=this;return void 0===e&&(e=1),t?t.map((function(t){return Q.em(t/e)})):null},e.prototype.convertLengths=function(t){var e=this;return t?t.map((function(t){return e.length2em(t)})):null},e}(t)}},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.CommonMtdMixin=void 0,e.CommonMtdMixin=function(t){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),Object.defineProperty(e.prototype,"fixesPWidth",{get:function(){return!1},enumerable:!1,configurable:!0}),e.prototype.invalidateBBox=function(){this.bboxComputed=!1},e.prototype.getWrapWidth=function(t){var e=this.parent.parent,Q=this.parent,r=this.node.childPosition()-(Q.labeled?1:0);return"number"==typeof e.cWidths[r]?e.cWidths[r]:e.getTableData().W[r]},e.prototype.getChildAlign=function(t){return this.node.attributes.get("columnalign")},e}(t)}},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.CommonMtextMixin=void 0,e.CommonMtextMixin=function(t){var e;return(e=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.getVariant=function(){var e=this.jax.options,Q=this.jax.math.outputData,r=(!!Q.merrorFamily||!!e.merrorFont)&&this.node.Parent.isKind("merror");if(Q.mtextFamily||e.mtextFont||r){var T=this.node.attributes.get("mathvariant"),n=this.constructor.INHERITFONTS[T]||this.jax.font.getCssFont(T),o=n[0]||(r?Q.merrorFamily||e.merrorFont:Q.mtextFamily||e.mtextFont);this.variant=this.explicitVariant(o,n[2]?"bold":"",n[1]?"italic":"")}else t.prototype.getVariant.call(this)},e}(t)).INHERITFONTS={normal:["",!1,!1],bold:["",!1,!0],italic:["",!0,!1],"bold-italic":["",!0,!0]},e}},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},o=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.CommonScriptbaseMixin=void 0;e.CommonScriptbaseMixin=function(t){var e;return(e=function(t){function e(){for(var e=[],Q=0;Q1){var u=0,p=l>1&&l===c;try{for(var h=i(this.childNodes),f=h.next();!f.done;f=h.next()){var d=0===(g=f.value).stretch.dir;if(p||d){var L=g.getBBox(d),H=L.w,m=L.rscale;H*m>u&&(u=H*m)}}}catch(t){Q={error:t}}finally{try{f&&!f.done&&(r=h.return)&&r.call(h)}finally{if(Q)throw Q.error}}try{for(var y=i(o),v=y.next();!v.done;v=y.next()){var g;(g=v.value).coreMO().getStretchedVariant([u/g.bbox.rscale])}}catch(t){T={error:t}}finally{try{v&&!v.done&&(n=y.return)&&n.call(y)}finally{if(T)throw T.error}}}},e}(t)).useIC=!1,e}},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.CommonSemanticsMixin=void 0,e.CommonSemanticsMixin=function(t){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.computeBBox=function(t,e){if(void 0===e&&(e=!1),this.childNodes.length){var Q=this.childNodes[0].getBBox(),r=Q.w,T=Q.h,n=Q.d;t.w=r,t.h=T,t.d=n}},e}(t)}},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.SVGWrapperFactory=void 0;var n=Q(169),o=Q(192),i=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.jax=null,e}return T(e,t),e.defaultNodes=o.SVGWrappers,e}(n.CommonWrapperFactory);e.SVGWrapperFactory=i},function(t,e,Q){"use strict";var r;Object.defineProperty(e,"__esModule",{value:!0}),e.SVGWrappers=void 0;var T=Q(4),n=Q(193),o=Q(194),i=Q(195),a=Q(196),s=Q(197),l=Q(198),c=Q(199),u=Q(200),p=Q(201),h=Q(202),f=Q(203),d=Q(204),L=Q(95),H=Q(205),m=Q(206),y=Q(48),v=Q(208),g=Q(209),b=Q(210),M=Q(211),V=Q(212),x=Q(213),O=Q(214),_=Q(216),S=Q(217),E=Q(218),C=Q(219);e.SVGWrappers=((r={})[n.SVGmath.kind]=n.SVGmath,r[o.SVGmrow.kind]=o.SVGmrow,r[o.SVGinferredMrow.kind]=o.SVGinferredMrow,r[i.SVGmi.kind]=i.SVGmi,r[a.SVGmo.kind]=a.SVGmo,r[s.SVGmn.kind]=s.SVGmn,r[l.SVGms.kind]=l.SVGms,r[c.SVGmtext.kind]=c.SVGmtext,r[u.SVGmerror.kind]=u.SVGmerror,r[p.SVGmspace.kind]=p.SVGmspace,r[h.SVGmpadded.kind]=h.SVGmpadded,r[f.SVGmphantom.kind]=f.SVGmphantom,r[d.SVGmfrac.kind]=d.SVGmfrac,r[L.SVGmsqrt.kind]=L.SVGmsqrt,r[H.SVGmroot.kind]=H.SVGmroot,r[m.SVGmfenced.kind]=m.SVGmfenced,r[y.SVGmsub.kind]=y.SVGmsub,r[y.SVGmsup.kind]=y.SVGmsup,r[y.SVGmsubsup.kind]=y.SVGmsubsup,r[v.SVGmunder.kind]=v.SVGmunder,r[v.SVGmover.kind]=v.SVGmover,r[v.SVGmunderover.kind]=v.SVGmunderover,r[g.SVGmmultiscripts.kind]=g.SVGmmultiscripts,r[b.SVGmtable.kind]=b.SVGmtable,r[M.SVGmtr.kind]=M.SVGmtr,r[M.SVGmlabeledtr.kind]=M.SVGmlabeledtr,r[V.SVGmtd.kind]=V.SVGmtd,r[x.SVGmaction.kind]=x.SVGmaction,r[O.SVGmenclose.kind]=O.SVGmenclose,r[_.SVGsemantics.kind]=_.SVGsemantics,r[_.SVGannotation.kind]=_.SVGannotation,r[_.SVGannotationXML.kind]=_.SVGannotationXML,r[_.SVGxml.kind]=_.SVGxml,r[S.SVGmglyph.kind]=S.SVGmglyph,r[E.SVGTeXAtom.kind]=E.SVGTeXAtom,r[C.SVGTextNode.kind]=C.SVGTextNode,r[T.SVGWrapper.kind]=T.SVGWrapper,r)},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},o=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.SVGmath=void 0;var i=Q(4),a=Q(172),s=Q(59),l=Q(18),c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.toSVG=function(e){t.prototype.toSVG.call(this,e);var Q=this.adaptor;"block"===this.node.attributes.get("display")&&(Q.setAttribute(this.jax.container,"display","true"),this.handleDisplay()),this.jax.document.options.internalSpeechTitles&&this.handleSpeech()},e.prototype.handleDisplay=function(){var t=n(this.getAlignShift(),2),e=t[0],Q=t[1];if("center"!==e&&this.adaptor.setAttribute(this.jax.container,"justify",e),this.bbox.pwidth===l.BBox.fullWidth){if(this.adaptor.setAttribute(this.jax.container,"width","full"),this.jax.table){var r=this.jax.table.getBBox(),T=r.L,o=r.w,i=r.R;"right"===e?i=Math.max(i||-Q,-Q):"left"===e?T=Math.max(T||Q,Q):"center"===e&&(o+=2*Math.abs(Q)),this.jax.minwidth=Math.max(0,T+o+i)}}else this.jax.shift=Q},e.prototype.handleSpeech=function(){var t,e,Q=this.adaptor,r=this.node.attributes,T=r.get("aria-label")||r.get("data-semantic-speech");if(T){var n=this.getTitleID(),i=this.svg("title",{id:n},[this.text(T)]);Q.insert(i,Q.firstChild(this.element)),Q.setAttribute(this.element,"aria-labeledby",n),Q.removeAttribute(this.element,"aria-label");try{for(var a=o(this.childNodes[0].childNodes),s=a.next();!s.done;s=a.next()){var l=s.value;Q.setAttribute(l.element,"aria-hidden","true")}}catch(e){t={error:e}}finally{try{s&&!s.done&&(e=a.return)&&e.call(a)}finally{if(t)throw t.error}}}},e.prototype.getTitleID=function(){return"mjx-svg-title-"+String(this.jax.options.titleID++)},e.prototype.setChildPWidths=function(e,Q,r){return void 0===Q&&(Q=null),void 0===r&&(r=!0),t.prototype.setChildPWidths.call(this,e,this.parent?Q:this.metrics.containerWidth/this.jax.pxPerEm,!1)},e.kind=s.MmlMath.prototype.kind,e.styles={'mjx-container[jax="SVG"][display="true"]':{display:"block","text-align":"center",margin:"1em 0"},'mjx-container[jax="SVG"][display="true"][width="full"]':{display:"flex"},'mjx-container[jax="SVG"][justify="left"]':{"text-align":"left"},'mjx-container[jax="SVG"][justify="right"]':{"text-align":"right"}},e}(a.CommonMathMixin(i.SVGWrapper));e.SVGmath=c},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.SVGinferredMrow=e.SVGmrow=void 0;var n=Q(4),o=Q(93),i=Q(93),a=Q(64),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.toSVG=function(t){var e=this.node.isInferred?this.element=t:this.standardSVGnode(t);this.addChildren(e)},e.kind=a.MmlMrow.prototype.kind,e}(o.CommonMrowMixin(n.SVGWrapper));e.SVGmrow=s;var l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.kind=a.MmlInferredMrow.prototype.kind,e}(i.CommonInferredMrowMixin(s));e.SVGinferredMrow=l},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.SVGmi=void 0;var n=Q(4),o=Q(177),i=Q(38),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.kind=i.MmlMi.prototype.kind,e}(o.CommonMiMixin(n.SVGWrapper));e.SVGmi=a},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.SVGmo=void 0;var o=Q(4),i=Q(180),a=Q(31),s=Q(18),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.toSVG=function(e){var Q=this.node.attributes,r=Q.get("symmetric")&&2!==this.stretch.dir,T=0!==this.stretch.dir;T&&null===this.size&&this.getStretchedVariant([]);var n=this.standardSVGnode(e);if(T&&this.size<0)this.stretchSVG();else{if(r||Q.get("largeop")){var o=s.BBox.empty();t.prototype.computeBBox.call(this,o);var i=this.fixed((o.d-o.h)/2+this.font.params.axis_height);"0"!==i&&this.adaptor.setAttribute(n,"transform","translate(0 "+i+")")}this.addChildren(n)}},e.prototype.stretchSVG=function(){var t=this.stretch.stretch,e=this.getBBox();1===this.stretch.dir?this.stretchVertical(t,e):this.stretchHorizontal(t,e)},e.prototype.stretchVertical=function(t,e){var Q=e.h,r=e.d,T=e.w,o=this.addTop(t[0],Q,T),i=this.addBot(t[2],r,T);if(4===t.length){var a=n(this.addMidV(t[3],T),2),s=a[0],l=a[1];this.addExtV(t[1],Q,0,o,s,T),this.addExtV(t[1],0,r,l,i,T)}else this.addExtV(t[1],Q,r,o,i,T)},e.prototype.stretchHorizontal=function(t,e){var Q=e.w,r=this.addLeft(t[0]),T=this.addRight(t[2],Q);if(4===t.length){var o=n(this.addMidH(t[3],Q),2),i=o[0],a=o[1],s=Q/2;this.addExtH(t[1],s,r,s-i),this.addExtH(t[1],s,a-s,T,s)}else this.addExtH(t[1],Q,r,T)},e.prototype.getChar=function(t){var e=this.font.getChar("-size4",t)||[0,0,0,null];return[e[0],e[1],e[2],e[3]||{}]},e.prototype.addGlyph=function(t,e,Q,r){return void 0===r&&(r=null),this.placeChar(t,e,Q,r||this.element,"-size4")},e.prototype.addTop=function(t,e,Q){if(!t)return 0;var r=n(this.getChar(t),3),T=r[0],o=r[1],i=r[2];return this.addGlyph(t,(Q-i)/2,e-T),T+o},e.prototype.addExtV=function(t,e,Q,r,T,o){var i=this;if(t){r=Math.max(0,r-.1),T=Math.max(0,T-.1);var a=this.adaptor,s=n(this.getChar(t),3),l=s[0],c=s[1],u=s[2],p=e+Q-r-T,h=1.5*p/(l+c),f=(h*(l-c)-p)/2;if(!(p<=0)){var d=this.svg("svg",{width:this.fixed(u),height:this.fixed(p),y:this.fixed(T-Q),x:this.fixed((o-u)/2),viewBox:[0,f,u,p].map((function(t){return i.fixed(t)})).join(" ")});this.addGlyph(t,0,0,d);var L=a.lastChild(d);a.setAttribute(L,"transform","scale(1, "+this.jax.fixed(h)+")"),a.append(this.element,d)}}},e.prototype.addBot=function(t,e,Q){if(!t)return 0;var r=n(this.getChar(t),3),T=r[0],o=r[1],i=r[2];return this.addGlyph(t,(Q-i)/2,o-e),T+o},e.prototype.addMidV=function(t,e){if(!t)return[0,0];var Q=n(this.getChar(t),3),r=Q[0],T=Q[1],o=Q[2],i=(T-r)/2+this.font.params.axis_height;return this.addGlyph(t,(e-o)/2,i),[r+i,T-i]},e.prototype.addLeft=function(t){return t?this.addGlyph(t,0,0):0},e.prototype.addExtH=function(t,e,Q,r,T){var o=this;if(void 0===T&&(T=0),t){r=Math.max(0,r-.1),Q=Math.max(0,Q-.1);var i=n(this.getChar(t),3),a=i[0],s=i[1],l=i[2],c=e-Q-r,u=a+s+.2,p=c/l*1.5,h=-(s+.1);if(!(c<=0)){var f=this.svg("svg",{width:this.fixed(c),height:this.fixed(u),x:this.fixed(T+Q),y:this.fixed(h),viewBox:[(p*l-c)/2,h,c,u].map((function(t){return o.fixed(t)})).join(" ")});this.addGlyph(t,0,0,f);var d=this.adaptor.lastChild(f);this.adaptor.setAttribute(d,"transform","scale("+this.jax.fixed(p)+", 1)"),this.adaptor.append(this.element,f)}}},e.prototype.addRight=function(t,e){if(!t)return 0;var Q=this.getChar(t)[2];return this.addGlyph(t,e-Q,0)},e.prototype.addMidH=function(t,e){if(!t)return[0,0];var Q=this.getChar(t)[2];return this.addGlyph(t,(e-Q)/2,0),[(e-Q)/2,(e+Q)/2]},e.kind=a.MmlMo.prototype.kind,e}(i.CommonMoMixin(o.SVGWrapper));e.SVGmo=l},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.SVGmn=void 0;var n=Q(4),o=Q(179),i=Q(60),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.kind=i.MmlMn.prototype.kind,e}(o.CommonMnMixin(n.SVGWrapper));e.SVGmn=a},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.SVGms=void 0;var n=Q(4),o=Q(183),i=Q(63),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.kind=i.MmlMs.prototype.kind,e}(o.CommonMsMixin(n.SVGWrapper));e.SVGms=a},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.SVGmtext=void 0;var n=Q(4),o=Q(188),i=Q(61),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.kind=i.MmlMtext.prototype.kind,e}(o.CommonMtextMixin(n.SVGWrapper));e.SVGmtext=a},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.SVGmerror=void 0;var n=Q(4),o=Q(68),i=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.toSVG=function(t){var e=this.standardSVGnode(t),Q=this.getBBox(),r=Q.h,T=Q.d,n=Q.w;this.adaptor.append(this.element,this.svg("rect",{"data-background":!0,width:this.fixed(n),height:this.fixed(r+T),y:this.fixed(-T)}));var o=this.node.attributes.get("title");o&&this.adaptor.append(this.element,this.svg("title",{},[this.adaptor.text(o)])),this.addChildren(e)},e.kind=o.MmlMerror.prototype.kind,e.styles={'g[data-mml-node="merror"] > g':{fill:"red",stroke:"red"},'g[data-mml-node="merror"] > rect[data-background]':{fill:"yellow",stroke:"none"}},e}(n.SVGWrapper);e.SVGmerror=i},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.SVGmspace=void 0;var n=Q(4),o=Q(184),i=Q(62),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.kind=i.MmlMspace.prototype.kind,e}(o.CommonMspaceMixin(n.SVGWrapper));e.SVGmspace=a},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.SVGmpadded=void 0;var o=Q(4),i=Q(181),a=Q(69),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.toSVG=function(t){var e=this.standardSVGnode(t),Q=n(this.getDimens(),9),r=Q[5],T=Q[6],o=Q[7],i=Q[8],a=this.node.attributes.get("data-align")||"left",s=T+i-(r<0&&"left"!==a?"center"===a?r/2:r:0);(s||o)&&(e=this.adaptor.append(e,this.svg("g")),this.place(s,o,e)),this.addChildren(e)},e.kind=a.MmlMpadded.prototype.kind,e}(i.CommonMpaddedMixin(o.SVGWrapper));e.SVGmpadded=s},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.SVGmphantom=void 0;var n=Q(4),o=Q(70),i=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.toSVG=function(t){this.standardSVGnode(t)},e.kind=o.MmlMphantom.prototype.kind,e}(n.SVGWrapper);e.SVGmphantom=i},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.SVGmfrac=void 0;var o=Q(4),i=Q(175),a=Q(65),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.toSVG=function(t){this.standardSVGnode(t);var e=this.node.attributes.getList("linethickness","bevelled"),Q=e.linethickness,r=e.bevelled,T=this.isDisplay();if(r)this.makeBevelled(T);else{var n=this.length2em(String(Q),.06);0===n?this.makeAtop(T):this.makeFraction(T,n)}},e.prototype.makeFraction=function(t,e){var Q=this.element,r=this.node.attributes.getList("numalign","denomalign"),T=r.numalign,o=r.denomalign,i=n(this.childNodes,2),a=i[0],s=i[1],l=a.getBBox(),c=s.getBBox(),u=this.font.params,p=u.axis_height,h=this.node.getProperty("withDelims")?0:u.nulldelimiterspace,f=Math.max((l.L+l.w+l.R)*l.rscale,(c.L+c.w+c.R)*c.rscale),d=this.getAlignX(f,l,T)+.1+h,L=this.getAlignX(f,c,o)+.1+h,H=this.getTUV(t,e),m=H.T,y=H.u,v=H.v;a.toSVG(Q),a.place(d,p+m+Math.max(l.d*l.rscale,y)),s.toSVG(Q),s.place(L,p-m-Math.max(c.h*c.rscale,v)),this.adaptor.append(Q,this.svg("rect",{width:this.fixed(f+.2),height:this.fixed(e),x:this.fixed(h),y:this.fixed(p-e/2)}))},e.prototype.makeAtop=function(t){var e=this.element,Q=this.node.attributes.getList("numalign","denomalign"),r=Q.numalign,T=Q.denomalign,o=n(this.childNodes,2),i=o[0],a=o[1],s=i.getBBox(),l=a.getBBox(),c=this.font.params,u=this.node.getProperty("withDelims")?0:c.nulldelimiterspace,p=Math.max((s.L+s.w+s.R)*s.rscale,(l.L+l.w+l.R)*l.rscale),h=this.getAlignX(p,s,r)+u,f=this.getAlignX(p,l,T)+u,d=this.getUVQ(t),L=d.u,H=d.v;i.toSVG(e),i.place(h,L),a.toSVG(e),a.place(f,-H)},e.prototype.makeBevelled=function(t){var e=this.element,Q=n(this.childNodes,2),r=Q[0],T=Q[1],o=this.getBevelData(t),i=o.u,a=o.v,s=o.delta,l=o.nbox,c=o.dbox,u=(l.L+l.w+l.R)*l.rscale;r.toSVG(e),this.bevel.toSVG(e),T.toSVG(e),r.place(l.L*l.rscale,i),this.bevel.place(u-s/2,0),T.place(u+this.bevel.getBBox().w+c.L*c.rscale-s,a)},e.kind=a.MmlMfrac.prototype.kind,e}(i.CommonMfracMixin(o.SVGWrapper));e.SVGmfrac=s},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.SVGmroot=void 0;var o=Q(95),i=Q(182),a=Q(67),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.addRoot=function(t,e,Q,r){e.toSVG(t);var T=n(this.getRootDimens(Q,r),3),o=T[0],i=T[1],a=T[2],s=e.getBBox();e.place(a*s.rscale,i),this.dx=o},e.kind=a.MmlMroot.prototype.kind,e}(i.CommonMrootMixin(o.SVGmsqrt));e.SVGmroot=s},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.SVGmfenced=void 0;var o=Q(4),i=Q(174),a=Q(71),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.toSVG=function(t){var e=this.standardSVGnode(t);this.setChildrenParent(this.mrow),this.mrow.toSVG(e),this.setChildrenParent(this)},e.prototype.setChildrenParent=function(t){var e,Q;try{for(var r=n(this.childNodes),T=r.next();!T.done;T=r.next()){T.value.parent=t}}catch(t){e={error:t}}finally{try{T&&!T.done&&(Q=r.return)&&Q.call(r)}finally{if(e)throw e.error}}},e.kind=a.MmlMfenced.prototype.kind,e}(i.CommonMfencedMixin(o.SVGWrapper));e.SVGmfenced=s},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.SVGscriptbase=void 0;var o=Q(4),i=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.toSVG=function(t){var e=this.standardSVGnode(t),Q=this.baseChild.getBBox(),r=this.script.getBBox(),T=n(this.getOffset(Q,r),2),o=T[0],i=T[1];this.baseChild.toSVG(e),this.script.toSVG(e),this.script.place(Q.w*Q.rscale+o,i)},e.kind="scriptbase",e.useIC=!1,e}(Q(189).CommonScriptbaseMixin(o.SVGWrapper));e.SVGscriptbase=i},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.SVGmunderover=e.SVGmover=e.SVGmunder=void 0;var o=Q(48),i=Q(47),a=Q(47),s=Q(47),l=Q(74),c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.toSVG=function(e){if(this.hasMovableLimits())t.prototype.toSVG.call(this,e);else{var Q=this.standardSVGnode(e),r=n([this.baseChild,this.script],2),T=r[0],o=r[1],i=n([T.getBBox(),o.getBBox()],2),a=i[0],s=i[1];T.toSVG(Q),o.toSVG(Q);var l=this.getDelta(!0),c=this.getUnderKV(a,s)[1],u=n(this.getDeltaW([a,s],[0,-l]),2),p=u[0],h=u[1];T.place(p,0),o.place(h,c)}},e.kind=l.MmlMunder.prototype.kind,e.useIC=!0,e}(i.CommonMunderMixin(o.SVGmsub));e.SVGmunder=c;var u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.toSVG=function(e){if(this.hasMovableLimits())t.prototype.toSVG.call(this,e);else{var Q=this.standardSVGnode(e),r=n([this.baseChild,this.script],2),T=r[0],o=r[1],i=n([T.getBBox(),o.getBBox()],2),a=i[0],s=i[1];T.toSVG(Q),o.toSVG(Q);var l=this.getDelta(),c=this.getOverKU(a,s)[1],u=n(this.getDeltaW([a,s],[0,l]),2),p=u[0],h=u[1];T.place(p,0),o.place(h,c)}},e.kind=l.MmlMover.prototype.kind,e.useIC=!0,e}(a.CommonMoverMixin(o.SVGmsup));e.SVGmover=u;var p=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.toSVG=function(e){if(this.hasMovableLimits())t.prototype.toSVG.call(this,e);else{var Q=this.standardSVGnode(e),r=n([this.baseChild,this.overChild,this.underChild],3),T=r[0],o=r[1],i=r[2],a=n([T.getBBox(),o.getBBox(),i.getBBox()],3),s=a[0],l=a[1],c=a[2];T.toSVG(Q),i.toSVG(Q),o.toSVG(Q);var u=this.getDelta(),p=this.getOverKU(s,l)[1],h=this.getUnderKV(s,c)[1],f=n(this.getDeltaW([s,c,l],[0,-u,u]),3),d=f[0],L=f[1],H=f[2];T.place(d,0),i.place(L,h),o.place(H,p)}},e.kind=l.MmlMunderover.prototype.kind,e.useIC=!0,e}(s.CommonMunderoverMixin(o.SVGmsubsup));e.SVGmunderover=p},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.SVGmmultiscripts=void 0;var o=Q(48),i=Q(178),a=Q(75),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.toSVG=function(t){var e=this.standardSVGnode(t),Q=this.getScriptData(),r=this.combinePrePost(Q.sub,Q.psub),T=this.combinePrePost(Q.sup,Q.psup),o=n(this.getUVQ(Q.base,r,T),2),i=o[0],a=o[1],s=0;Q.numPrescripts&&(s=this.addScripts(.05,i,a,!0,this.firstPrescript,Q.numPrescripts));var l=this.baseChild;l.toSVG(e),l.place(s,0),s+=l.getBBox().w,Q.numScripts&&this.addScripts(s,i,a,!1,1,Q.numScripts)},e.prototype.addScripts=function(t,e,Q,r,T,o){var i=this.adaptor,a=i.append(this.element,this.svg("g")),s=i.append(this.element,this.svg("g"));this.place(t,e,a),this.place(t,Q,s);for(var l=T+2*o,c=0;T0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},o=this&&this.__spread||function(){for(var t=[],e=0;ei?i:this.pWidth),s="left"===o?0:"right"===o?a:a/2;if(s){var l=this.svg("g",{},this.adaptor.childNodes(t));this.place(s,0,l),this.adaptor.append(t,l)}return s},e.prototype.lineClass=function(t){return"mjx-"+t},e.prototype.makeFrame=function(t,e,Q,r){var T=this.fLine;return this.svg("rect",this.setLineThickness(T,r,{"data-frame":!0,class:this.lineClass(r),width:this.fixed(t-T),height:this.fixed(e+Q-T),x:this.fixed(T/2),y:this.fixed(T/2-Q)}))},e.prototype.makeVLine=function(t,e,Q){var r=this.getBBox(),T=r.h,n=r.d,o="dotted"===e?Q/2:0,i=this.fixed(t+Q/2);return this.svg("line",this.setLineThickness(Q,e,{"data-line":"v",class:this.lineClass(e),x1:i,y1:this.fixed(o-n),x2:i,y2:this.fixed(T-o)}))},e.prototype.makeHLine=function(t,e,Q){var r=this.getBBox().w,T="dotted"===e?Q/2:0,n=this.fixed(t-Q/2);return this.svg("line",this.setLineThickness(Q,e,{"data-line":"h",class:this.lineClass(e),x1:this.fixed(T),y1:n,x2:this.fixed(r-T),y2:n}))},e.prototype.setLineThickness=function(t,e,Q){return.07!==t&&(Q["stroke-thickness"]=this.fixed(t),"solid"!==e&&(Q["stroke-dasharray"]=("dotted"===e?"0,":"")+this.fixed(2*t))),Q},e.prototype.handleLabels=function(t,e,Q){if(this.hasLabels){var r=this.labels,T=this.node.attributes.get("side");this.spaceLabels(),this.isTop?this.topTable(t,r,T):this.subTable(t,r,T,Q)}},e.prototype.spaceLabels=function(){for(var t=this.adaptor,e=this.getBBox().h,Q=this.getTableData().L,r=this.getRowHalfSpacing(),T=e-this.fLine,n=t.firstChild(this.labels),o=0;o line[data-line]':{"stroke-width":"70px",fill:"none"},'g[data-mml-node="mtable"] > rect[data-frame]':{"stroke-width":"70px",fill:"none"},'g[data-mml-node="mtable"] > .mjx-dashed':{"stroke-dasharray":"140"},'g[data-mml-node="mtable"] > .mjx-dotted':{"stroke-linecap":"round","stroke-dasharray":"0,140"},'g[data-mml-node="mtable"] > g > svg':{overflow:"visible"}},e}(a.CommonMtableMixin(i.SVGWrapper));e.SVGmtable=l},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},o=this&&this.__spread||function(){for(var t=[],e=0;e mjx-tip':{position:"absolute",top:0,left:0},"mjx-tool > mjx-tip":{display:"inline-block",padding:".2em",border:"1px solid #888","font-size":"70%","background-color":"#F8F8F8",color:"black","box-shadow":"2px 2px 5px #AAAAAA"},'g[data-mml-node="maction"][data-toggle]':{cursor:"pointer"},"mjx-status":{display:"block",position:"fixed",left:"1em",bottom:"1em","min-width":"25%",padding:".2em .4em",border:"1px solid #888","font-size":"90%","background-color":"#F8F8F8",color:"black"}},e.actions=new Map([["toggle",[function(t,e){t.adaptor.setAttribute(t.element,"data-toggle",t.node.attributes.get("selection"));var Q=t.factory.jax.math,r=t.factory.jax.document,T=t.node;t.setEventHandler("click",(function(t){Q.end.node||(Q.start.node=Q.end.node=Q.typesetRoot,Q.start.n=Q.end.n=0),T.nextToggleSelection(),Q.rerender(r),t.stopPropagation()}))},{}]],["tooltip",[function(t,e){var Q=t.childNodes[1];if(Q){var r=t.adaptor.firstChild(t.element);if(Q.node.isKind("mtext")){var T=Q.node.getText();t.adaptor.insert(t.svg("title",{},[t.text(T)]),r)}else{var n=t.adaptor,o=t.jax.container,i=t.node.factory.create("math",{},[t.childNodes[1].node]),a=t.html("mjx-tool",{},[t.html("mjx-tip")]),s=n.append(r,t.svg("foreignObject",{style:{display:"none"}},[a]));t.jax.processMath(i,n.firstChild(a)),t.childNodes[1].node.parent=t.node,t.setEventHandler("mouseover",(function(Q){e.stopTimers(t,e),e.hoverTimer.set(t,setTimeout((function(){n.setStyle(a,"left","0"),n.setStyle(a,"top","0"),n.append(o,a);var e=n.nodeBBox(a),Q=n.nodeBBox(t.element),r=(Q.right-e.left)/t.metrics.em+t.dx,T=(Q.bottom-e.bottom)/t.metrics.em+t.dy;n.setStyle(a,"left",t.px(r)),n.setStyle(a,"top",t.px(T))}),e.postDelay)),Q.stopPropagation()})),t.setEventHandler("mouseout",(function(Q){e.stopTimers(t,e);var r=setTimeout((function(){return n.append(s,a)}),e.clearDelay);e.clearTimer.set(t,r),Q.stopPropagation()}))}}},i.TooltipData]],["statusline",[function(t,e){var Q=t.childNodes[1];if(Q&&Q.node.isKind("mtext")){var r=t.adaptor,T=Q.node.getText();r.setAttribute(t.element,"data-statusline",T),t.setEventHandler("mouseover",(function(Q){if(null===e.status){var n=r.body(r.document);e.status=r.append(n,t.html("mjx-status",{},[t.text(T)]))}Q.stopPropagation()})),t.setEventHandler("mouseout",(function(t){e.status&&(r.remove(e.status),e.status=null),t.stopPropagation()}))}},{status:null}]]]),e}(o.CommonMactionMixin(n.SVGWrapper));e.SVGmaction=s},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.SVGmenclose=void 0;var i=Q(4),a=Q(173),s=Q(215),l=Q(72),c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.toSVG=function(t){var e,Q,r=this.standardSVGnode(t),T=this.getBBoxExtenders()[3],o={};T>0&&(o.transform="translate("+this.fixed(T)+", 0)");var i=this.adaptor.append(r,this.svg("g",o));this.renderChild?this.renderChild(this,i):this.childNodes[0].toSVG(i);try{for(var a=n(Object.keys(this.notations)),s=a.next();!s.done;s=a.next()){var l=s.value,c=this.notations[l];!c.renderChild&&c.renderer(this,r)}}catch(t){e={error:t}}finally{try{s&&!s.done&&(Q=a.return)&&Q.call(a)}finally{if(e)throw e.error}}},e.prototype.arrow=function(t,e,Q){void 0===Q&&(Q=!1);var r=this.getBBox(),T=r.w,n=(t-T)/2,i=(r.h-r.d)/2,a=this.thickness,s=a/2,l=o([a*this.arrowhead.x,a*this.arrowhead.y,a*this.arrowhead.dx],3),c=l[0],u=l[1],p=l[2],h=Q?this.fill("M",T+n,i,"l",-(c+p),u,"l",p,s-u,"L",c-n,i+s,"l",p,u-s,"l",-(c+p),-u,"l",c+p,-u,"l",-p,u-s,"L",T+n-c,i-s,"l",-p,s-u,"Z"):this.fill("M",T+n,i,"l",-(c+p),u,"l",p,s-u,"L",-n,i+s,"l",0,-a,"L",T+n-c,i-s,"l",-p,s-u,"Z");if(e){var f=this.jax.fixed(180*-e/Math.PI);this.adaptor.setAttribute(h,"transform","rotate("+[f,this.fixed(T/2),this.fixed(i)].join(" ")+")")}return h},e.prototype.line=function(t){var e=o(t,4),Q=e[0],r=e[1],T=e[2],n=e[3];return this.svg("line",{x1:this.fixed(Q),y1:this.fixed(r),x2:this.fixed(T),y2:this.fixed(n),"stroke-width":this.fixed(this.thickness)})},e.prototype.box=function(t,e,Q,r){void 0===r&&(r=0);var T=this.thickness,n={x:this.fixed(T/2),y:this.fixed(T/2-Q),width:this.fixed(t-T),height:this.fixed(e+Q-T),fill:"none","stroke-width":this.fixed(T)};return r&&(n.rx=this.fixed(r)),this.svg("rect",n)},e.prototype.ellipse=function(t,e,Q){var r=this.thickness;return this.svg("ellipse",{rx:this.fixed((t-r)/2),ry:this.fixed((e+Q-r)/2),cx:this.fixed(t/2),cy:this.fixed((e-Q)/2),fill:"none","stroke-width":this.fixed(r)})},e.prototype.path=function(t){for(var e=this,Q=[],r=1;r=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.SVGTextNode=void 0;var o=Q(0),i=Q(4),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.toSVG=function(t){var e,Q,r=this.node.getText(),T=this.parent.variant;if("-explicitFont"===T)this.adaptor.append(t,this.jax.unknownText(r,T));else{var o=this.remappedText(r,T),i=0;try{for(var a=n(o),s=a.next();!s.done;s=a.next()){var l=s.value;i+=this.placeChar(l,i,0,t,T)}}catch(t){e={error:t}}finally{try{s&&!s.done&&(Q=a.return)&&Q.call(a)}finally{if(e)throw e.error}}}this.element=this.adaptor.lastChild(t)},e.kind=o.TextNode.prototype.kind,e.styles={".MathJax path":{"stroke-width":3}},e}(Q(171).CommonTextNodeMixin(i.SVGWrapper));e.SVGTextNode=a},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.boldItalic=void 0;var r=Q(6),T=Q(221);e.boldItalic=r.AddPaths(T.boldItalic,{47:"189 -210Q179 -210 170 -203T160 -179Q160 -171 162 -166Q164 -163 420 266T679 698Q686 711 704 711Q714 711 723 704T733 681Q733 672 730 667Q723 654 469 228T211 -201Q202 -210 189 -210",305:"24 296Q24 305 34 328T63 380T115 430T187 452Q205 452 223 448T262 435T295 406T308 360Q308 345 287 290T240 170T207 87Q202 67 202 57Q202 42 215 42Q235 42 257 64Q288 92 302 140Q307 156 310 159T330 162H336H347Q367 162 367 148Q367 140 357 117T329 65T276 14T201 -8Q158 -8 121 15T83 84Q83 104 133 229T184 358Q189 376 189 388Q189 402 177 402Q156 402 134 380Q103 352 89 304Q84 288 81 285T61 282H55H44Q24 282 24 296",567:"297 360T297 373T294 392T288 400T278 401H276Q237 398 200 363Q181 343 170 325T156 299T149 287T129 282H123H116Q102 282 97 284T92 298Q93 303 98 315T118 349T151 390T201 427T267 451H279Q357 451 388 422T420 354V339L370 138Q321 -60 317 -69Q287 -157 163 -194Q133 -201 99 -201Q39 -201 14 -178T-12 -125Q-12 -94 11 -69T68 -43Q93 -43 108 -57T123 -95Q123 -121 100 -151H104Q131 -151 155 -125T193 -60Q195 -54 244 141T294 345Q297 360 297 373",8260:"189 -210Q179 -210 170 -203T160 -179Q160 -171 162 -166Q164 -163 420 266T679 698Q686 711 704 711Q714 711 723 704T733 681Q733 672 730 667Q723 654 469 228T211 -201Q202 -210 189 -210",8710:"65 0Q59 6 59 9T61 16Q64 20 334 357T608 698Q616 706 629 710Q630 710 634 710T644 710T656 711Q686 711 694 703Q698 699 700 693Q706 674 805 345T904 14Q904 7 894 1L479 0H65ZM630 342L567 551L232 134L462 133H693Q693 137 630 342",10744:"189 -210Q179 -210 170 -203T160 -179Q160 -171 162 -166Q164 -163 420 266T679 698Q686 711 704 711Q714 711 723 704T733 681Q733 672 730 667Q723 654 469 228T211 -201Q202 -210 189 -210"},{})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.boldItalic=void 0,e.boldItalic={47:[.711,.21,.894],305:[.452,.008,.394,{sk:.0319}],567:[.451,.201,.439,{sk:.0958}],8260:[.711,.21,.894],8710:[.711,0,.958,{sk:.192}],10744:[.711,.21,.894]}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.bold=void 0;var r=Q(6),T=Q(223);e.bold=r.AddPaths(T.bold,{33:"89 629Q89 663 116 684T171 705Q215 705 237 681T260 634Q260 619 233 434T204 244Q201 237 175 237Q150 237 146 244Q144 248 117 433T89 629ZM90 86Q90 125 116 148T177 171Q211 169 235 146T259 86Q259 48 235 25T175 1Q138 1 114 24T90 86",34:"38 572T38 608T61 669T121 694Q167 694 196 657T225 559Q225 520 214 482T186 418T151 370T119 339T99 329T82 340T70 360Q70 365 74 369T92 385T122 414Q142 441 154 471T170 518L172 535L166 532Q160 530 148 527T122 523Q85 523 62 547ZM305 572T305 608T328 669T388 694Q434 694 463 657T492 559Q492 520 481 482T453 418T418 370T386 339T366 329T349 340T337 360Q337 365 341 369T359 385T389 414Q409 441 421 471T436 518L439 535L433 532Q427 530 415 527T389 523Q352 523 329 547",35:"64 362Q64 380 87 393H363L366 404Q379 443 390 480T409 542T424 590T435 628T443 655T451 674T458 686T467 692T478 694Q490 694 499 686T509 662Q505 643 427 395Q427 393 523 393H620L623 404Q630 426 652 498T691 624T711 681Q718 694 735 694Q748 694 757 685T766 662Q762 643 684 395Q684 393 777 393H871Q872 392 875 390T881 386T887 381T891 374T893 363Q893 345 871 333L767 332H664L660 319Q660 318 638 245T614 171Q614 169 742 169H871L877 165Q883 161 885 159T890 151T893 138Q893 120 871 109L732 108H594L590 95Q587 84 546 -46Q508 -175 505 -178Q498 -193 478 -193Q462 -193 455 -183T448 -164Q448 -156 530 106Q530 108 434 108H337L333 95Q330 84 289 -46Q251 -175 248 -178Q240 -193 222 -193Q206 -193 199 -183T191 -164Q191 -154 273 106Q273 108 180 108L87 109Q64 117 64 139Q64 156 87 169H293L321 262Q326 277 331 294T340 321L343 330Q343 332 215 332L87 333Q64 343 64 362ZM600 330Q600 332 504 332H407L403 319Q403 318 381 245T357 171Q357 169 453 169H550L578 262Q583 277 588 294T597 321L600 330",36:"64 494Q64 541 80 579T120 638T171 674T219 693T253 698H256V750H318V699H323Q355 694 380 686T433 663T480 620T506 556Q510 539 510 520Q510 480 488 463T440 445L422 447Q407 451 398 459Q370 478 370 515Q370 542 384 559T412 580L427 584Q424 589 418 596T386 617T324 636H318V434Q411 419 460 355T510 217Q510 196 507 175T492 122T461 67T404 23T318 -4V-56H256V-5H254Q252 -3 240 -3Q194 4 160 23T108 64T80 112T67 156T64 190Q64 218 81 240T134 262Q171 262 187 240T204 193T190 150T153 125Q146 125 144 123Q142 123 149 113T174 89T218 66Q247 58 255 58Q256 58 256 173V287L239 291Q160 308 112 365T64 494ZM255 636Q246 635 236 632T206 620T173 591T160 543Q160 472 256 448V542Q256 636 255 636ZM320 59Q324 59 333 61T356 70T384 89T406 120T415 167Q415 200 395 225T356 260T318 274V59H320",37:"65 549Q65 609 84 652T132 714T187 742T236 750Q265 750 296 734T355 697T431 661T541 644Q662 644 736 730Q751 749 767 749T790 739T797 719Q797 710 768 672T504 329Q212 -47 211 -48Q203 -55 191 -55Q161 -55 161 -25Q161 -17 163 -12L642 609Q608 595 542 595Q515 595 488 599T441 608T405 619T381 628L373 632Q373 630 375 619T380 589T383 548Q383 455 343 401T235 347Q217 347 198 351T154 368T110 403T78 462T65 549ZM320 549Q320 633 295 665T235 698H234Q214 698 196 674Q182 650 182 549Q182 509 183 486T190 441T207 409T238 399Q269 399 294 431T320 549ZM745 -56Q727 -56 708 -52T664 -35T620 0T588 59T575 146T588 232T620 291T663 325T708 343T747 347Q810 347 851 294T893 146Q893 89 879 48T841 -15T794 -46T745 -56ZM830 146Q830 230 805 262T745 295H744Q724 295 706 271Q692 247 692 146Q692 106 693 83T700 38T717 6T748 -4Q779 -4 804 28T830 146",38:"255 -11Q209 -11 164 4T84 56T48 146Q48 159 50 171Q57 197 72 218T99 249T152 292Q204 333 204 334L194 356Q185 379 176 421T166 511Q166 538 168 551Q182 613 226 654T332 704Q334 704 343 704T358 705Q412 702 444 661T476 565V559Q476 489 334 371L330 368L335 357Q382 272 485 165L496 154L506 163Q543 200 597 273L671 382H601V444H610L732 441Q821 441 830 444H836V382H741L709 335Q702 324 687 302T665 270T646 244T625 216T605 191T581 162T553 132L537 116Q544 109 557 98T605 69T673 51Q711 51 739 70T767 115V118H829V114Q829 70 786 30T668 -11Q570 -11 474 37L451 49L441 43Q352 -11 255 -11ZM415 564Q415 596 400 625T356 654Q329 654 310 634T285 588Q283 580 283 554Q283 475 309 417L325 431Q415 512 415 564ZM192 182Q192 126 213 89T279 51Q348 51 400 83L389 91Q362 112 338 137T295 186T264 229T240 265T227 286Q226 285 222 280T217 272T211 263T205 251T200 238T196 222T193 204T192 182",39:"74 572T74 608T97 669T157 694Q203 694 232 657T261 559Q261 520 250 482T222 418T187 370T155 339T135 329Q128 329 117 340T106 359Q106 365 117 375T144 399T176 440T203 505Q204 511 205 518T208 530V535L202 532Q196 530 184 527T158 523Q121 523 98 547",40:"103 166T103 251T121 412T165 541T225 639T287 708T341 750H356H361Q382 750 382 736Q382 732 365 714T323 661T274 576T232 439T214 250Q214 -62 381 -229Q382 -231 382 -234Q382 -249 360 -249H356H341Q314 -231 287 -207T226 -138T165 -41T121 89",41:"231 251Q231 354 214 439T173 575T123 661T81 714T64 735Q64 744 73 749H75Q77 749 79 749T84 750T90 750H105Q132 732 159 708T220 639T281 542T325 413T343 251T325 89T281 -40T221 -138T159 -207T105 -249H90Q80 -249 76 -249T68 -245T64 -234Q64 -230 81 -212T123 -160T172 -75T214 61T231 251",42:"235 706Q235 724 251 737T287 750Q306 750 322 738T339 706Q339 685 318 580V579Q429 663 436 666Q441 668 449 668Q471 668 486 650T501 612Q501 582 478 572Q476 570 414 549L354 528L414 507Q420 505 430 502T445 497T458 492T470 488T479 483T487 478T493 471T497 463T500 454T501 443Q501 423 486 406T449 388H446Q435 388 370 437Q339 461 318 477V476Q339 371 339 350Q339 332 323 319T287 306T251 319T235 350Q235 371 256 476V477Q145 393 138 390Q133 388 125 388Q103 388 88 406T73 444Q73 474 96 484Q98 486 160 507L220 528L160 549Q154 551 144 554T129 559T116 564T104 568T95 573T87 578T81 585T77 593T74 602T73 613Q73 633 88 650T125 668H128Q139 668 204 619Q235 595 256 579V580Q235 685 235 706",43:"64 232T64 250T87 281H416V444Q416 608 418 612Q426 633 446 633T475 613Q477 608 477 444V281H807Q808 280 811 278T817 274T823 269T827 262T829 251Q829 230 807 221L642 220H477V57Q477 -107 475 -112Q468 -131 446 -131Q425 -131 418 -112Q416 -107 416 57V220H251L87 221Q64 232 64 250",44:"74 85Q74 120 97 145T159 171Q200 171 226 138Q258 101 258 37Q258 -5 246 -44T218 -109T183 -155T152 -184T135 -194Q129 -194 118 -183T106 -164Q106 -157 115 -149Q121 -145 130 -137T161 -100T195 -35Q197 -28 200 -17T204 3T205 11T199 9T183 3T159 0Q120 0 97 26T74 85",45:"13 166V278H318V166H13",46:"74 85Q74 121 99 146T156 171Q200 171 222 143T245 85Q245 56 224 29T160 1Q118 1 96 27T74 85",47:"451 730Q460 750 479 750Q492 750 501 740T510 718Q508 708 318 244L122 -232Q112 -250 95 -250Q82 -250 73 -241T64 -218Q66 -205 258 261T451 730",58:"74 359Q74 394 98 419T158 444Q200 444 222 417T245 358Q245 329 224 302T160 274Q116 274 95 301T74 359ZM74 85Q74 121 99 146T156 171Q200 171 222 143T245 85Q245 56 224 29T160 1Q118 1 96 27T74 85",59:"74 359Q74 394 98 419T158 444Q200 444 222 417T245 358Q245 329 224 302T160 274Q116 274 95 301T74 359ZM74 50T74 86T97 146T158 171Q204 171 226 132T248 38Q248 -23 223 -80T171 -165T135 -194Q129 -194 118 -183T106 -164Q106 -163 106 -160L107 -158Q108 -155 121 -142T150 -107T177 -58Q189 -32 194 3Q195 6 193 6Q172 0 158 0Q121 0 98 25",60:"797 -56Q797 -68 790 -76T767 -85H759L434 70Q108 226 105 229Q96 238 96 250Q96 263 105 272Q109 276 271 354T595 508T757 585Q763 587 766 587Q780 587 788 578T797 556Q797 544 788 535Q784 531 490 391L197 251Q213 242 359 173T644 37T788 -34Q797 -43 797 -56",61:"87 333Q64 343 64 362Q64 383 84 391Q89 393 448 393H807Q808 392 811 390T817 386T823 381T827 374T829 363Q829 345 807 333H87ZM87 109Q64 118 64 139Q64 159 86 168Q89 169 448 169H807L812 166Q816 163 818 162T823 157T827 149T829 139Q829 118 807 109H87",62:"127 -85Q110 -85 103 -75T96 -55Q96 -41 106 -34Q119 -24 308 65Q361 90 411 114L696 250L427 379Q106 533 103 537Q96 545 96 557Q96 568 104 577T128 587Q137 586 460 431T788 272Q797 263 797 250Q797 238 788 229Q785 226 459 70L135 -85H127",63:"65 570Q65 628 119 664T259 700Q326 700 372 688T440 654T469 613T478 569Q478 505 412 465Q287 391 287 294V283Q287 250 284 244T263 237H256H249Q232 237 229 242T225 272V287Q227 364 253 418Q274 463 311 504Q335 530 335 575Q335 622 323 635T259 648Q231 648 209 644T179 636T170 630L172 628Q174 627 177 625T183 620T190 611T197 601T202 587T204 570Q204 539 185 519T134 499Q105 499 85 517T65 570ZM171 86Q171 125 197 148T258 171Q292 169 316 146T340 86Q340 48 316 25T256 1Q218 1 195 24T171 86",64:"64 347Q64 511 171 605T434 699Q487 699 500 698Q624 684 703 621T811 464Q828 414 828 344Q828 232 788 179T691 125Q673 125 657 127T628 132T606 140T588 148T576 156T568 162L566 164Q565 164 549 154T504 135T444 125Q349 125 284 183T218 347Q218 455 284 512T448 569Q554 569 610 479H638Q670 479 674 471Q676 468 676 340V258Q676 213 679 199T694 178Q701 174 713 177Q767 187 767 340Q767 489 678 569T446 649Q299 649 213 566T126 346Q126 307 134 269T166 189T225 116T320 65T455 45H463Q606 51 721 91L746 99H782H801Q829 99 829 85Q829 78 825 75T804 65Q800 63 797 62Q625 -6 451 -6Q271 -6 168 91T64 347ZM547 468Q526 493 504 505T444 517T377 476T346 347Q346 306 354 271T386 206T448 177Q505 177 547 226V468",91:"128 -250V750H293V689H189V-189H293V-250H128",92:"64 718Q63 731 72 740T94 750Q106 750 113 743Q118 741 122 732L318 256Q508 -208 510 -218Q511 -231 502 -240T480 -250Q460 -250 451 -230Q451 -229 259 238T64 718",93:"25 689V750H190V-250H25V-189H129V689H25",94:"207 632L287 694Q289 693 368 632T448 570T431 545T413 520Q410 520 350 559L287 597L224 559Q164 520 161 520Q160 520 143 544T126 570T207 632",95:"0 -61V-10H574V-61H0",96:"114 634Q114 663 136 684T183 706Q191 706 196 705T208 700T219 693T232 681T245 666T262 645T282 620Q332 558 337 553Q338 552 318 527L299 503L223 543Q215 547 202 553T183 563T167 571T153 580T141 587T131 595T124 603T118 612T115 622T114 634",123:"504 -207T504 -225T500 -246T476 -250H469Q257 -250 227 -145L225 -135L224 0Q224 15 224 30T224 59T224 84T224 106T223 122T223 133V137Q222 138 221 144T213 162T195 185Q171 206 141 215Q123 222 107 223T84 225T74 229T70 250T73 270T83 276T106 276T141 285Q171 294 195 315Q201 321 206 328T214 341T219 352T222 360L223 363V367Q223 371 223 378T223 394T224 415T224 441T224 470T224 501L225 636Q249 739 426 749Q428 749 443 749T466 750H473Q495 750 499 747T504 725T501 704T480 699Q381 693 357 645Q352 634 351 617T350 497V412Q350 350 338 329Q325 303 298 284T251 258T227 251Q226 251 226 250L227 249Q231 248 238 246T265 236T299 217T329 184T349 137Q350 131 350 3T352 -130Q358 -160 392 -178T480 -199Q497 -200 500 -203",124:"160 -249Q138 -249 129 -225V250Q129 725 131 729Q139 750 159 750T190 725V-225Q181 -249 160 -249",125:"70 726Q71 744 74 747T99 750H106Q323 750 349 636L350 501Q350 486 350 470T350 441T350 416T350 394T351 378T351 367V363Q352 362 353 356T361 338T379 315Q403 294 433 285Q451 278 467 277T490 275T500 271T504 250T501 230T491 224T468 224T433 215Q403 206 379 185Q373 179 368 172T360 159T355 148T352 140L351 137V133Q351 129 351 122T351 106T350 85T350 59T350 31T350 0L349 -135L347 -145Q317 -250 106 -250H99Q79 -250 75 -247T70 -226Q70 -208 73 -204T95 -199Q193 -193 217 -145Q222 -134 223 -117T224 3Q224 20 224 48T223 86Q223 145 237 175T301 232Q335 249 347 249Q348 249 348 250L347 251Q343 252 336 254T309 264T275 284T245 316T225 363Q224 369 224 497T222 631Q216 660 182 678T95 699Q77 700 74 704T70 726",126:"343 202Q320 202 278 225T215 249Q181 249 146 214L134 202L115 219Q111 222 106 226T98 234L96 236Q158 306 165 313Q199 344 230 344Q239 344 244 343Q262 339 300 318T359 297Q393 297 428 332L440 344L459 327Q463 324 468 320T476 312L478 310Q416 240 409 233Q375 202 343 202",168:"96 615Q96 650 120 672T178 695Q214 693 234 669T255 615Q255 583 232 559T176 535Q147 535 122 556T96 615ZM319 615Q319 651 343 673T399 695Q426 695 452 675T478 615Q478 578 454 557T395 535Q364 537 342 559T319 615",172:"680 371Q683 369 688 366T695 361T698 356T701 346T701 332T702 308V216Q702 196 702 168T703 130Q703 90 697 76T671 61Q650 61 643 81Q641 86 641 198V310H364L87 311Q64 319 64 341Q64 362 84 369Q89 371 385 371H680",175:"80 540V607H494V540H80",176:"160 618Q160 653 193 677T279 702H284Q381 702 407 647Q414 634 414 618Q414 607 410 596T395 570T355 546T287 536T220 545T181 568T165 594T160 618ZM352 618Q352 645 341 652T301 659H292Q286 659 278 659T268 660Q247 660 236 653T224 638T222 619Q222 591 234 585T287 578Q315 578 326 580T345 590T352 618",177:"64 328T64 346T87 377H416V542L417 707Q431 728 443 728Q467 728 475 709Q477 704 477 540V377H807Q808 376 811 374T817 370T823 365T827 358T829 347Q829 326 807 317L642 316H477V25H807Q808 24 811 22T817 18T823 13T827 6T829 -5Q829 -26 807 -35H87Q64 -24 64 -6T87 25H416V316H251L87 317Q64 328 64 346",180:"391 706Q419 706 439 683T460 634Q460 608 441 593T366 550Q356 545 351 543L275 503L256 527Q236 552 237 553Q242 558 292 620Q299 629 309 641T324 659T336 673T346 685T354 693T363 699T371 703T380 705T391 706",183:"74 251Q74 286 99 311T156 336Q200 336 222 308T245 250Q245 221 224 194T160 166T96 193T74 251",215:"168 500Q168 515 178 522T195 530H198Q207 530 218 521T282 458Q312 428 331 409L447 294L563 409Q674 520 682 525Q687 529 695 529Q711 529 718 520T726 499V498Q726 489 720 481T666 427Q631 392 606 367L490 251L606 135Q717 23 721 17T726 2Q726 -9 719 -18T695 -28H692Q685 -28 674 -18T608 47Q581 74 563 92L447 207L331 91Q217 -22 208 -27Q206 -28 203 -28H197Q168 -28 168 2Q168 13 178 24T288 135L404 250L288 366Q177 479 173 485T168 500",247:"344 495Q344 535 372 566T447 597Q490 597 519 566T548 495Q548 452 518 423T446 393Q404 393 374 423T344 495ZM87 221Q64 230 64 251T84 279Q89 281 448 281H806Q807 280 810 278T816 274T822 269T826 262T828 251Q828 230 806 221H87ZM344 -36T344 6T373 78T446 108Q487 108 517 79T548 6Q548 -35 519 -65T446 -96Q406 -96 375 -66",305:"247 0Q232 3 143 3Q132 3 106 3T56 1L34 0H26V46H42Q70 46 91 49Q100 53 102 60T104 102V205V293Q104 345 102 359T88 378Q74 385 41 385H30V408Q30 431 32 431L42 432Q52 433 70 434T106 436Q123 437 142 438T171 441T182 442H185V62Q190 52 197 50T232 46H255V0H247",567:"28 -163Q58 -168 64 -168Q124 -168 135 -77Q137 -65 137 141T136 353Q132 371 120 377T72 385H52V408Q52 431 54 431L58 432Q62 432 70 432T87 433T108 434T133 436Q151 437 171 438T202 441T214 442H218V184Q217 -36 217 -59T211 -98Q195 -145 153 -175T58 -205Q9 -205 -23 -179T-55 -117Q-55 -94 -40 -79T-2 -64T36 -79T52 -118Q52 -143 28 -163",697:"240 563Q278 563 304 539T331 480V473Q331 462 316 431T217 236Q199 200 174 151T136 78T123 50Q113 33 105 33Q101 33 72 45T38 60Q35 63 35 65Q35 77 101 293T171 517Q182 542 202 552T240 563",710:"207 632L287 694Q289 693 368 632T448 570T431 545T413 520Q410 520 350 559L287 597L224 559Q164 520 161 520Q160 520 143 544T126 570T207 632",711:"131 603Q130 604 136 618T150 646T158 659L223 635L287 611L351 635L416 659Q417 660 424 647T437 619T443 603Q440 601 364 558T287 515T210 558T131 603",713:"80 540V607H494V540H80",714:"391 706Q419 706 439 683T460 634Q460 608 441 593T366 550Q356 545 351 543L275 503L256 527Q236 552 237 553Q242 558 292 620Q299 629 309 641T324 659T336 673T346 685T354 693T363 699T371 703T380 705T391 706",715:"114 634Q114 663 136 684T183 706Q191 706 196 705T208 700T219 693T232 681T245 666T262 645T282 620Q332 558 337 553Q338 552 318 527L299 503L223 543Q215 547 202 553T183 563T167 571T153 580T141 587T131 595T124 603T118 612T115 622T114 634",728:"287 500Q208 500 155 558T102 689V694H153V685Q153 681 154 674T164 648T186 615T226 590T287 578Q347 578 382 611T421 685V694H472V689Q472 623 422 562T287 500",729:"202 610Q202 647 227 671T283 695Q324 695 348 669T372 610T350 551T287 525Q248 525 225 551T202 610",730:"160 618Q160 653 193 677T279 702H284Q381 702 407 647Q414 634 414 618Q414 607 410 596T395 570T355 546T287 536T220 545T181 568T165 594T160 618ZM352 618Q352 645 341 652T301 659H292Q286 659 278 659T268 660Q247 660 236 653T224 638T222 619Q222 591 234 585T287 578Q315 578 326 580T345 590T352 618",732:"343 552Q320 552 278 575T215 599Q181 599 146 564L134 552L115 569Q111 572 106 576T98 584L96 586Q158 656 165 663Q199 694 230 694Q239 694 244 693Q262 689 300 668T359 647Q393 647 428 682L440 694L459 677Q463 674 468 670T476 662L478 660Q416 590 409 583Q375 552 343 552",768:"-461 634Q-461 663 -439 684T-392 706Q-384 706 -379 705T-367 700T-356 693T-343 681T-330 666T-313 645T-293 620Q-243 558 -238 553Q-237 552 -257 527L-276 503L-352 543Q-360 547 -373 553T-392 563T-408 571T-422 580T-434 587T-444 595T-451 603T-457 612T-460 622T-461 634",769:"-184 706Q-156 706 -136 683T-115 634Q-115 608 -134 593T-209 550Q-219 545 -224 543L-300 503L-319 527Q-339 552 -338 553Q-333 558 -283 620Q-276 629 -266 641T-251 659T-239 673T-229 685T-221 693T-212 699T-204 703T-195 705T-184 706",770:"-368 632L-288 694Q-286 693 -207 632T-127 570T-144 545T-162 520Q-165 520 -225 559L-288 597L-351 559Q-411 520 -414 520Q-415 520 -432 544T-449 570T-368 632",771:"-232 552Q-255 552 -297 575T-360 599Q-394 599 -429 564L-441 552L-460 569Q-464 572 -469 576T-476 584L-479 586Q-417 656 -410 663Q-376 694 -345 694Q-336 694 -331 693Q-313 689 -275 668T-216 647Q-182 647 -147 682L-135 694L-116 677Q-112 674 -107 670T-100 662L-97 660Q-159 590 -166 583Q-200 552 -232 552",772:"-495 540V607H-81V540H-495",774:"-288 500Q-367 500 -420 558T-473 689V694H-422V685Q-422 681 -421 674T-411 648T-389 615T-349 590T-288 578Q-228 578 -193 611T-154 685V694H-103V689Q-103 623 -153 562T-288 500",775:"-373 610Q-373 647 -348 671T-292 695Q-251 695 -227 669T-203 610T-225 551T-288 525Q-327 525 -350 551T-373 610",776:"-479 615Q-479 650 -456 672T-397 695Q-361 693 -341 669T-320 615Q-320 583 -343 559T-399 535Q-428 535 -453 556T-479 615ZM-256 615Q-256 651 -232 673T-176 695Q-149 695 -123 675T-97 615Q-97 578 -121 557T-180 535Q-211 537 -233 559T-256 615",778:"-415 618Q-415 653 -382 677T-296 702H-291Q-194 702 -168 647Q-161 634 -161 618Q-161 607 -165 596T-180 570T-220 546T-288 536T-355 545T-394 568T-410 594T-415 618ZM-223 618Q-223 645 -234 652T-274 659H-283Q-289 659 -297 659T-307 660Q-328 660 -339 653T-351 638T-353 619Q-353 591 -341 585T-288 578Q-260 578 -249 580T-230 590T-223 618",779:"-389 511L-442 543Q-442 544 -424 606T-404 674Q-390 705 -361 713Q-360 713 -356 713T-349 714Q-340 714 -330 712Q-273 690 -273 644Q-273 621 -290 604L-342 554L-389 511ZM-198 511L-251 543Q-251 544 -233 606T-213 674Q-199 705 -170 713Q-169 713 -165 713T-158 714Q-127 714 -105 693T-82 647Q-82 638 -84 631T-89 618T-99 604T-112 590T-130 574T-151 554L-198 511",780:"-444 603Q-445 604 -439 618T-425 646T-417 659L-352 635L-288 611L-224 635L-159 659Q-158 660 -151 647T-138 619T-132 603Q-135 601 -211 558T-288 515T-365 558T-444 603",824:"-705 -210Q-715 -210 -724 -203T-734 -179Q-734 -171 -732 -166Q-730 -163 -474 266T-215 698Q-208 711 -190 711Q-180 711 -171 704T-161 681Q-161 672 -164 667Q-171 654 -425 228T-683 -201Q-692 -210 -705 -210",8194:"",8195:"",8196:"",8197:"",8198:"",8201:"",8202:"",8211:"0 249V300H574V249H0",8212:"0 249V300H1149V249H0",8213:"0 249V300H1149V249H0",8214:"205 -225Q201 -234 199 -237T191 -244T175 -248T161 -246Q151 -240 146 -229Q145 -224 145 251Q145 725 146 730Q156 750 176 750Q193 748 205 727V-225ZM369 727L372 732Q375 737 377 740T385 747T398 750Q406 750 413 747Q423 740 428 730Q430 720 430 251Q430 -219 428 -229Q423 -240 413 -246Q408 -248 400 -248Q393 -248 388 -247T379 -242T375 -236T371 -230L369 -225V727",8215:"0 -61V-10H574V-61H0",8216:"58 461Q58 503 70 542T99 607T134 654T165 684T184 694T201 683T213 664Q213 658 202 648T175 624T143 583T116 518Q115 512 114 505T112 493L111 488Q132 500 161 500Q198 500 221 475T245 414T222 354T161 329Q112 329 85 369T58 461",8217:"74 572T74 608T97 669T157 694Q203 694 232 657T261 559Q261 520 250 482T222 418T187 370T155 339T135 329Q128 329 117 340T106 359Q106 365 117 375T144 399T176 440T203 505Q204 511 205 518T208 530V535L202 532Q196 530 184 527T158 523Q121 523 98 547",8220:"110 461Q110 502 121 541T150 606T185 653T217 684T235 694Q242 694 254 682T266 664Q266 659 254 648T226 623T193 578T167 511Q164 500 164 494T164 487Q188 500 212 500Q251 500 274 475T297 414Q297 378 274 354T212 329Q167 329 139 367T110 461ZM377 461Q377 502 388 541T417 606T452 653T484 684T502 694Q509 694 521 682T533 664Q533 659 521 648T493 623T460 578T434 511Q431 500 431 494T431 487Q455 500 479 500Q518 500 541 475T564 414Q564 378 541 354T479 329Q434 329 406 367T377 461",8221:"38 572T38 608T61 669T121 694Q167 694 196 657T225 559Q225 520 214 482T186 418T151 370T119 339T99 329T82 340T70 360Q70 365 74 369T92 385T122 414Q142 441 154 471T170 518L172 535L166 532Q160 530 148 527T122 523Q85 523 62 547ZM305 572T305 608T328 669T388 694Q434 694 463 657T492 559Q492 520 481 482T453 418T418 370T386 339T366 329T349 340T337 360Q337 365 341 369T359 385T389 414Q409 441 421 471T436 518L439 535L433 532Q427 530 415 527T389 523Q352 523 329 547",8224:"231 470Q232 471 232 473Q232 477 213 540T193 636Q192 642 192 651T204 677T239 700Q249 702 255 702Q300 702 315 660Q317 653 317 636Q317 603 298 539T279 472V470Q280 470 318 488T383 506Q408 506 423 493T442 467T446 444T443 421T424 396T383 382Q355 382 318 400T279 418Q278 416 285 392T303 334T316 284Q318 268 318 234Q318 149 311 45T296 -127T284 -203Q279 -211 255 -211Q237 -211 233 -210T226 -203Q222 -195 214 -129T199 41T192 234V245Q192 286 212 349Q233 413 231 418Q229 418 192 400T128 382Q102 382 86 396T67 421T64 444T67 466T86 492T128 506Q155 506 192 488T231 470",8225:"193 637Q193 663 206 679T231 698T255 702T279 699T304 679T317 637Q317 605 299 557T280 504Q280 503 281 503T320 521T382 539Q410 539 428 521T446 476Q446 454 432 434T383 414H377Q358 414 320 431T281 449L280 448Q280 444 298 396T317 316Q318 310 318 301T306 275T271 252Q261 250 255 250Q210 250 195 292Q193 299 193 316Q193 347 211 395T230 448Q230 449 229 449Q227 449 196 434Q151 414 133 414H127Q102 414 87 427T68 452T64 477Q64 503 81 521T127 539Q143 539 164 532T204 515T226 504Q230 502 230 504Q230 508 212 556T193 637ZM193 184Q193 210 206 226T231 245T255 249T279 246T304 226T317 184Q317 153 299 106T280 53Q280 51 282 51T322 68T383 86Q411 86 428 69T445 24T428 -21T382 -39Q358 -39 322 -22T282 -4Q280 -3 280 -3T280 -6Q281 -13 299 -59T317 -136Q318 -142 318 -151T306 -177T271 -200Q261 -202 255 -202Q210 -202 195 -160Q193 -153 193 -136Q193 -106 211 -60T230 -6Q230 -4 228 -4T188 -21T128 -39Q100 -39 83 -22T65 24Q65 53 82 69T127 86Q150 86 187 69T228 51Q230 50 230 50T230 53Q229 58 211 105T193 184",8226:"64 251Q64 303 80 344T121 409T175 448T230 469T275 474Q277 474 283 474T292 473Q385 473 447 415T510 251Q510 149 449 89T287 28T126 88T64 251",8230:"74 85Q74 121 99 146T156 171Q200 171 222 143T245 85Q245 56 224 29T160 1Q118 1 96 27T74 85ZM562 85Q562 121 587 146T644 171Q688 171 710 143T733 85Q733 56 712 29T648 1Q606 1 584 27T562 85ZM1050 85Q1050 121 1075 146T1132 171Q1176 171 1198 143T1221 85Q1221 56 1200 29T1136 1Q1094 1 1072 27T1050 85",8242:"240 563Q278 563 304 539T331 480V473Q331 462 316 431T217 236Q199 200 174 151T136 78T123 50Q113 33 105 33Q101 33 72 45T38 60Q35 63 35 65Q35 77 101 293T171 517Q182 542 202 552T240 563",8254:"80 540V607H494V540H80",8260:"451 730Q460 750 479 750Q492 750 501 740T510 718Q508 708 318 244L122 -232Q112 -250 95 -250Q82 -250 73 -241T64 -218Q66 -205 258 261T451 730",8407:"406 694Q406 704 413 713T433 723Q448 723 454 719T467 701Q483 665 522 648Q542 637 542 619Q542 605 536 599T514 586Q468 569 431 532Q411 513 399 513Q386 513 378 522T369 543Q369 557 381 568Q385 572 387 574L400 588H228L56 589Q33 598 33 618Q33 636 56 649H426Q406 676 406 694",8463:"477 56Q477 48 479 46T490 43Q522 45 544 75T577 140Q582 156 585 159T605 162H611H622Q642 162 642 148Q642 138 632 114T602 62T550 13T478 -8Q429 -8 394 17T358 83Q358 95 395 199T433 350Q433 400 394 400H388H383Q335 400 291 363Q256 332 236 298Q233 293 202 170T169 40Q160 18 141 5T99 -8Q70 -8 58 9T45 39Q45 51 116 336L167 540H80V607H184L188 622H184Q183 622 179 622T169 623T157 624T146 624T136 624T131 625Q119 628 119 642Q119 647 123 661T129 679Q133 684 142 685T220 690Q293 694 307 694Q324 694 328 679Q328 673 311 607H494V540H294Q286 507 278 473T264 420L260 403Q260 400 269 408Q327 451 393 451H401H410Q425 451 439 450T476 442T515 424T544 391T556 337Q556 286 517 179T477 56",8467:"245 -19Q228 -19 212 -16T184 -6T162 9T143 27T129 46T118 66T111 84T106 99T102 111L101 116L69 89L36 62Q31 60 24 62Q-1 88 -1 98Q-1 101 1 105Q1 106 73 170L95 189V197Q95 242 112 317T159 476T241 624T353 701Q357 702 367 702Q428 702 444 641Q446 630 446 606Q446 454 241 246L215 220L212 203Q203 150 203 114Q203 113 203 106T204 95T205 82T209 67T214 54T223 43T236 35T253 32Q277 32 305 44T352 70T389 98T407 112Q409 113 412 113Q420 113 432 95Q445 77 443 70Q440 64 416 44T342 3T245 -19ZM387 615Q387 651 366 651Q342 651 321 604T276 470L241 331Q246 331 280 373T350 486T387 615",8472:"399 159Q410 159 421 151T433 126Q433 104 410 85Q408 84 410 78Q411 72 414 66T428 51T455 43Q483 43 506 55T543 83T568 125T584 166T594 206Q595 211 596 214Q610 273 610 301Q610 365 542 365H538Q483 365 429 344T337 292T269 229T225 175T210 150L255 99Q261 92 274 78T292 58T305 41T316 22T321 3T324 -23Q324 -87 283 -148T174 -210H171Q161 -210 152 -209T128 -201T101 -180T81 -141T72 -78Q72 -72 72 -60T73 -45Q79 4 102 65L108 81Q84 117 84 167Q84 273 140 367T269 461Q285 461 285 447Q285 440 282 431Q278 418 276 415T264 410Q228 404 201 336T174 219Q174 218 176 202L184 214Q252 303 348 360T549 417Q614 417 658 391T719 317Q726 292 726 260Q726 148 646 70T451 -8Q407 -8 377 17T346 92Q346 159 396 159H399ZM178 -160Q200 -160 216 -132T232 -75Q232 -63 228 -56T203 -26Q196 -18 192 -14Q185 -5 176 5T161 20T156 27L153 28Q151 28 146 8T137 -42T132 -89Q132 -160 178 -160",8501:"590 427Q581 427 579 433T575 450T568 470V468L532 288L541 281Q620 220 634 165L637 154V124Q637 74 628 46Q623 32 612 16T592 0Q580 0 578 19T569 69T538 121Q532 126 385 240T236 355Q234 355 231 338T225 291T222 237Q222 222 223 213T225 201T228 195T231 190Q238 179 261 160T300 119T316 73Q316 41 291 23T231 1Q226 0 149 0H98Q73 0 69 3T64 24Q64 43 67 47T85 51H89Q119 51 134 55T152 64T154 76Q154 95 125 141T96 220Q96 243 104 270T123 319T145 360T164 391T172 404T150 421T102 468T68 529L65 541V570Q65 620 74 648Q79 664 91 679T111 694Q122 694 123 675T132 625T164 573Q168 569 319 452T471 335Q471 337 486 409T502 488Q502 489 491 493T467 511T448 546V573Q448 602 452 624T462 659T474 680T486 691T493 694Q499 694 502 691T507 682T513 673Q517 667 534 651T557 630Q558 629 590 616T631 587Q638 577 638 543Q637 489 622 458T590 427",8592:"1063 281Q1084 268 1084 251Q1084 231 1063 221L649 220H235Q340 133 364 17Q368 1 368 -2Q368 -16 343 -17Q340 -17 338 -17H332Q317 -17 314 -14T305 6Q298 34 285 62T247 126T179 189T78 233Q64 237 64 251Q64 261 74 265T108 277T154 297Q212 328 251 379T305 495Q309 511 313 514T333 518H338Q363 517 367 510Q368 507 368 503Q368 500 364 484Q345 401 287 331Q254 295 235 282L649 281H1063",8593:"33 396Q14 396 14 423Q14 445 18 449T41 459Q72 466 99 478T147 505T185 537T215 571T238 604T254 635T264 661T270 678L272 685Q276 694 288 694Q298 692 300 689T307 672Q331 592 392 535T535 459Q553 454 557 450T561 423Q561 396 542 396Q531 396 501 405T418 443T329 517L319 529L318 179V-171Q307 -193 288 -193Q265 -193 258 -171L257 179V529L247 517Q209 473 158 444T76 405T33 396",8594:"65 251Q65 270 87 281H500L914 282Q881 304 842 357T785 482Q781 500 781 501Q781 512 792 517Q794 518 812 518H817Q832 518 835 515T844 495Q864 412 923 351T1065 270Q1085 263 1085 251Q1085 240 1077 236T1044 225T995 204Q937 173 898 122T844 6Q840 -10 836 -13T816 -17H811Q786 -16 782 -9Q781 -6 781 -2Q781 1 785 17Q813 138 914 220H500L87 221Q65 228 65 251",8595:"14 77Q14 104 33 104Q44 104 74 96T156 57T247 -17L257 -29V321Q257 669 259 675Q268 694 289 694Q295 693 300 691T307 686T313 679T318 672V321L319 -29L329 -17Q366 26 417 55T499 94T542 104Q561 104 561 77Q561 56 557 51T535 41Q481 28 438 0T370 -58T330 -119T308 -167T302 -187Q297 -194 288 -194Q278 -194 273 -186T265 -165T251 -127T220 -77Q151 15 41 41Q22 46 18 50T14 77",8596:"305 495Q309 511 313 514T333 518H338Q363 517 367 510Q368 507 368 503Q368 500 364 484Q345 401 287 331Q254 295 235 282L404 281H744L914 282Q880 305 839 362T785 484Q781 500 781 503Q781 517 806 518Q809 518 811 518H817Q832 518 835 515T844 495Q864 412 923 351T1065 270Q1085 263 1085 251Q1085 240 1077 236T1044 225T995 204Q937 173 898 122T844 6Q840 -10 836 -13T816 -17H811Q786 -16 782 -9Q781 -6 781 -2Q781 1 785 17Q813 138 914 220H235Q340 133 364 17Q368 1 368 -2Q368 -16 343 -17Q340 -17 338 -17H332Q317 -17 314 -14T305 6Q298 34 285 62T247 126T179 189T78 233Q64 237 64 251Q64 261 74 265T108 277T154 297Q212 328 251 379T305 495",8597:"33 469Q14 469 14 496Q14 518 18 522T41 532Q121 551 182 608T268 745Q275 767 288 767Q299 767 303 755T320 713T355 650Q424 558 535 532Q553 527 557 523T561 496Q561 469 542 469Q531 469 501 478T418 516T329 590L319 602L318 426V74L319 -102L329 -90Q366 -47 417 -18T499 21T542 31Q561 31 561 4Q561 -17 557 -22T535 -32Q454 -51 393 -108T307 -245Q300 -267 288 -267Q279 -267 274 -259T266 -238T250 -200T220 -150Q151 -58 41 -32Q22 -27 18 -23T14 4Q14 31 33 31Q44 31 74 23T156 -16T247 -90L257 -102V602L247 590Q209 546 158 517T76 478T33 469",8598:"429 724Q438 724 452 711T466 690Q466 681 452 671Q361 602 242 599H218L756 135Q832 69 913 -1T1036 -108L1077 -143Q1084 -151 1084 -163Q1084 -180 1074 -187T1054 -194H1052Q1043 -194 939 -105Q866 -42 812 5Q180 549 178 549V546Q179 542 179 539Q183 520 183 483Q183 435 172 390T149 323T130 296Q121 292 115 295Q85 312 85 328Q85 331 95 350T115 406T125 486Q125 540 110 583T79 648T64 675Q64 681 68 687T81 693Q87 693 94 690Q162 657 232 657Q296 657 349 681T420 722Q422 724 429 724",8599:"1069 693Q1076 693 1080 687T1085 675Q1085 671 1076 656T1055 621T1034 565T1024 486Q1024 442 1034 406T1054 351T1064 328Q1064 321 1057 313T1042 300L1034 295Q1030 293 1027 293Q1023 293 1020 295T1014 301T1009 308T1005 316T1001 324Q980 368 971 419Q966 442 966 484V492Q966 528 972 553Q971 553 757 368T328 -3T107 -191Q103 -193 94 -193Q78 -193 71 -184T64 -164Q64 -153 72 -143Q79 -136 382 124L934 599H909Q837 599 760 634T683 690Q683 697 696 710T722 724Q726 724 742 714T779 691T838 668T920 657Q959 657 991 666T1043 684T1069 693",8600:"65 663Q65 680 74 687T93 694H96Q104 694 118 683T204 610Q280 545 338 495Q969 -49 971 -49L970 -46Q970 -42 970 -39Q966 -20 966 18Q966 65 977 110T1001 177T1019 204Q1028 208 1034 205Q1064 188 1064 172Q1064 169 1054 150T1034 94T1024 14Q1024 -28 1033 -64T1054 -120T1075 -155T1085 -175Q1085 -181 1081 -187T1068 -193Q1062 -193 1055 -190Q987 -157 919 -157Q817 -157 739 -215Q727 -224 720 -224Q712 -224 697 -210Q683 -199 683 -190T697 -171Q788 -102 907 -99H931L393 365Q317 431 236 501T114 608L72 643Q65 651 65 663",8601:"80 -193Q73 -193 69 -187T64 -175Q64 -172 79 -150T109 -84T125 14Q125 58 115 94T95 149T85 172Q85 179 92 187T108 200L115 205Q119 207 122 207Q126 207 129 205T135 199T140 192T144 184T148 176Q169 132 178 81Q183 58 183 17Q183 -7 182 -24T178 -48L177 -53Q178 -53 389 129T816 498T1043 692Q1049 694 1054 694Q1070 694 1077 684T1085 664Q1085 653 1077 643Q1070 636 767 376L215 -98L240 -99Q312 -99 389 -134T466 -190Q466 -197 452 -210T429 -224Q422 -224 411 -215Q330 -157 229 -157Q190 -157 158 -166T106 -184T80 -193",8614:"65 426Q74 448 95 448Q112 448 125 426V281H500L914 282Q881 304 842 357T785 482Q781 500 781 501Q781 512 792 517Q794 518 812 518H817Q832 518 835 515T844 495Q864 412 923 351T1065 270Q1085 263 1085 251Q1085 240 1077 236T1044 225T995 204Q937 173 898 122T844 6Q840 -10 836 -13T816 -17H811Q786 -16 782 -9Q781 -6 781 -2Q781 1 785 17Q813 138 914 220H500L135 221Q134 221 133 221T130 220H125V76Q115 54 95 54Q73 54 65 76V426",8617:"1029 475Q1029 505 1068 505Q1129 501 1173 463T1218 363Q1218 296 1170 259T1066 221H1063L649 220H235Q340 133 364 17Q368 1 368 -2Q368 -16 343 -17Q340 -17 338 -17H332Q317 -17 314 -14T305 6Q298 34 285 62T247 126T179 189T78 233Q64 237 64 251Q64 261 74 265T108 277T154 297Q212 328 251 379T305 495Q309 511 313 514T333 518H338Q363 517 367 510Q368 507 368 503Q368 500 364 484Q345 401 287 331Q254 295 235 282L649 281H1063Q1105 284 1131 305T1158 361Q1158 385 1146 401Q1122 441 1063 444Q1029 446 1029 475",8618:"225 221H218Q159 221 112 260T65 363Q65 431 116 468T221 505Q254 503 254 474Q254 456 245 450T216 443T188 438Q152 427 137 401Q125 385 125 362Q125 334 147 310Q171 288 221 281H632L1046 282Q1013 304 974 357T917 482Q913 500 913 501Q913 512 924 517Q926 518 944 518H949Q964 518 967 515T976 495Q996 412 1055 351T1197 270Q1217 263 1217 251Q1217 240 1209 236T1176 225T1127 204Q1069 173 1030 122T976 6Q972 -10 968 -13T948 -17H943Q918 -16 914 -9Q913 -6 913 -2Q913 1 917 17Q945 138 1046 220H632L225 221",8636:"1063 281Q1084 268 1084 251Q1084 231 1063 221L572 220Q79 220 77 221Q64 225 64 244Q64 250 64 254T67 261T71 265T78 268T85 272Q142 302 189 345T258 421T296 484T315 516Q319 518 337 518Q358 518 363 512Q370 504 367 496Q360 469 319 404T219 290L209 282L636 281H1063",8637:"1063 281Q1084 268 1084 251Q1084 231 1063 221L636 220H209L219 212Q278 162 319 97T367 5Q370 -3 363 -11Q358 -17 337 -17H332Q318 -17 314 -14T302 7Q278 55 246 95T185 160T130 202T88 228L70 237Q64 243 64 257Q64 274 75 279Q78 281 571 281H1063",8640:"65 251Q65 270 87 281H513L940 282L930 290Q871 338 830 403T782 496Q779 510 791 517Q794 518 812 518H817Q831 518 835 515T847 494Q871 445 903 404T966 338T1022 298T1064 272T1083 259Q1085 255 1085 245Q1085 225 1072 221Q1070 220 578 220L87 221Q65 228 65 251",8641:"84 279Q89 281 580 281Q1070 281 1074 279Q1085 275 1085 256Q1085 245 1083 241T1066 230Q919 153 847 7Q839 -11 835 -14T817 -17H812Q791 -17 786 -11Q779 -3 782 5Q789 31 830 96T930 212L940 220H513L87 221Q64 229 64 250Q64 272 84 279",8652:"65 451Q65 470 87 481H513L940 482L930 490Q871 538 830 603T782 696Q779 710 791 717Q794 718 812 718H817Q831 718 835 715T847 694Q871 645 903 604T966 538T1022 498T1064 472T1083 459Q1085 455 1085 445Q1085 425 1072 421Q1070 420 578 420L87 421Q65 428 65 451ZM1063 281Q1084 268 1084 251Q1084 231 1063 221L636 220H209L219 212Q278 162 319 97T367 5Q370 -3 363 -11Q358 -17 337 -17H332Q318 -17 314 -14T302 7Q278 55 246 95T185 160T130 202T88 228L70 237Q64 243 64 257Q64 274 75 279Q78 281 571 281H1063",8656:"1063 169L1068 166Q1072 163 1074 162T1079 157T1083 149T1085 139Q1085 118 1063 109L733 108H404L412 99Q455 50 488 -10Q498 -27 493 -37Q487 -46 465 -46H460Q446 -46 439 -39T426 -18T399 25T344 89Q239 194 99 229Q96 230 92 231T85 232T79 234T73 235T69 237T66 240T65 244T64 250Q64 267 90 271Q197 295 286 361T430 525Q439 542 442 544T460 547H465Q487 547 492 539Q496 531 496 530Q496 521 471 482T414 405L404 394L733 393H1063Q1064 392 1069 389T1076 384T1082 375T1085 362Q1085 344 1063 333L700 332H338L324 321Q283 290 230 264L205 250Q266 224 323 180L338 170L700 169H1063",8657:"672 343Q672 326 670 320T657 313Q644 313 602 335Q577 349 557 361T527 381T509 395T499 403T495 406T494 118Q494 -166 492 -174Q484 -193 465 -193H463Q456 -193 453 -192T444 -186T433 -170V465L423 477Q407 495 394 514T367 554T351 579Q349 576 339 560T313 520T279 477L269 465V-22V-102Q269 -132 269 -145T268 -169T266 -180T260 -185T253 -191Q248 -193 239 -193H237Q218 -193 210 -174Q208 -166 208 118Q208 406 207 406L199 399Q191 392 165 374T100 335Q58 313 45 313Q35 313 33 319T30 343V349Q30 359 30 362T35 369T45 374T66 383T100 401Q267 499 333 680Q339 694 351 694Q361 694 365 687T380 652T407 597Q442 536 489 489T573 420T638 383T670 365Q672 361 672 343",8658:"64 362Q64 380 87 393H416L745 394L735 405Q708 436 681 477T654 531Q654 547 679 547H684H689Q703 547 710 540T723 519T750 475T806 411Q914 303 1059 271Q1060 271 1063 270T1068 269T1072 268T1076 266T1079 264T1082 260T1083 256T1084 250Q1084 242 1080 238T1063 231T1035 225T992 211T934 185Q797 112 719 -24Q710 -40 706 -43T689 -46H684Q653 -46 653 -31Q653 -24 661 -10Q694 50 737 99L745 108H416L87 109Q64 117 64 139Q64 156 87 169H449L812 170L826 180Q842 193 860 204T892 223T918 237T937 246L944 250L919 264Q866 290 825 321L811 332H449L87 333Q64 343 64 362",8659:"30 157Q30 174 32 180T46 187Q59 187 104 163Q154 136 198 101L207 94Q208 94 208 382Q208 666 210 674Q219 694 241 694Q254 692 262 683Q266 679 267 674Q269 658 269 522V35L279 23Q295 5 308 -14T335 -54T351 -79Q353 -76 363 -60T389 -20T423 23L433 35V671Q439 682 444 686T452 692T463 693H465Q484 693 492 674Q494 666 494 382Q494 94 495 94L504 101Q547 135 593 160T652 187Q665 191 671 177Q672 175 672 157Q672 137 669 134T636 116Q606 101 578 83T528 47T486 9T452 -30T424 -68T403 -103T387 -134T377 -159T370 -176L367 -184Q360 -194 351 -194Q345 -194 342 -192T334 -182T327 -166T315 -137T295 -97Q260 -36 213 11T129 80T63 117T32 136Q30 139 30 157",8660:"336 497Q358 541 363 544Q367 547 379 547H384Q401 547 405 545Q418 538 414 525T389 474T346 408L335 393H814L803 408Q781 436 760 474T735 525T744 545Q748 547 765 547Q771 547 774 547T780 546T786 544T790 541T794 535T799 527T805 514T813 497Q841 446 877 406T950 340T1014 301T1068 276L1096 265Q1102 259 1102 251Q1102 240 1085 232Q981 195 902 121Q835 56 798 -25Q791 -40 787 -43T765 -46T744 -44Q735 -40 735 -30Q735 -15 760 28T806 98L814 108H335L343 98Q361 75 378 46T404 -1T414 -24Q418 -37 405 -44Q401 -46 384 -46T363 -43T351 -25Q314 56 247 121Q216 150 182 173T125 206T79 226T53 237Q47 243 47 251Q47 254 47 256T49 261T52 264T57 267T61 268T66 270T71 272Q246 335 336 497ZM985 251Q932 280 882 323L871 332H278Q264 321 253 311T237 297T214 282T164 251L176 244Q221 218 278 169H871Q928 218 973 244L985 251",8661:"49 441Q30 441 30 464V471V480Q30 498 44 502Q237 573 331 750Q337 767 351 767Q360 767 368 753T400 702T460 629Q504 584 552 554T632 511T666 497Q672 493 672 471Q672 454 670 449Q664 441 653 441Q639 443 591 465T508 513L495 522L494 386V114L495 -22L508 -13Q543 12 591 34T653 59Q672 59 672 36V29V20Q672 2 658 -2Q465 -71 367 -257Q360 -267 351 -267Q343 -267 336 -257T320 -231T292 -187T242 -129Q198 -84 150 -54T70 -11T36 3Q30 7 30 29Q30 46 32 51Q38 59 49 59Q63 57 111 35T194 -13L208 -22V522L194 513Q159 488 111 466T49 441ZM422 584Q411 594 400 606T383 626T366 648T351 667Q349 665 339 652T314 620T280 584L269 573V-73L280 -84Q305 -108 351 -166Q353 -164 363 -151T389 -119T422 -84L433 -73V573L422 584",8704:"1 664Q-2 685 23 693H27Q46 693 54 680T102 578L148 475H492L533 570Q541 586 548 603T560 630T569 650T576 667T582 678T588 686T594 691T600 693T609 694Q622 694 631 684T639 662Q637 653 492 325T341 -8Q333 -16 320 -16Q306 -16 298 -8Q294 -4 147 326L1 656V664ZM464 414H319Q175 414 175 413L319 88L464 414",8707:"81 347Q81 359 84 363T104 378H513V633H300L87 634Q64 642 64 664Q64 685 84 692Q89 694 321 694H552Q571 681 574 669V25Q567 7 552 1H87Q64 12 64 30T87 61H513V317H308Q103 317 99 319Q81 328 81 347",8709:"285 711Q307 711 326 708T357 701T370 698Q371 698 375 710T383 735T389 750Q395 767 415 767Q431 767 438 757T446 738T436 701T426 670Q426 668 433 664Q468 633 489 588Q511 542 519 488T528 344Q528 286 524 243T508 150T466 63T394 6Q345 -17 287 -17Q265 -17 246 -14T216 -7T203 -4Q191 -47 183 -60T159 -73Q146 -73 137 -63T128 -44Q128 -38 138 -7L148 24L141 30Q134 35 120 49Q94 77 78 113T56 194T48 268T46 344Q46 388 47 416T56 494T78 577T122 644T194 694Q239 711 285 711ZM351 639Q350 639 346 642T337 648T325 654T306 658T283 660Q254 660 221 638T181 567Q171 513 171 375Q171 164 182 129L351 639ZM402 356Q402 516 395 555Q395 557 395 559T394 563T394 566L393 568L223 57Q252 34 286 34H288Q318 34 346 53T387 109Q402 152 402 329V356",8710:"901 12Q901 7 892 0H479Q65 0 62 2Q56 6 56 11Q56 14 242 347T433 685Q438 694 450 696Q454 698 480 698H506L523 687Q526 683 711 354T899 17Q901 13 901 12ZM653 137L427 538L202 137L315 136H540L653 137",8712:"97 251Q97 393 194 484T417 586Q418 586 436 586T482 586T538 587H648Q649 586 652 584T658 580T664 575T668 568T670 557Q670 536 648 527L534 526Q515 526 491 526T457 526T435 526T417 525T404 523T390 521T374 517Q298 498 243 447T167 324Q159 295 159 283Q159 281 403 281H648Q649 280 652 278T658 274T664 269T668 262T670 251Q670 230 648 221L403 220Q159 220 159 218Q159 206 166 182T190 122T247 50T341 -6Q380 -20 405 -22T534 -25H648Q649 -26 654 -29T661 -34T667 -43T670 -56Q670 -74 648 -85L541 -86Q419 -86 396 -82Q276 -65 187 24T97 251",8713:"126 -210Q116 -210 107 -203T97 -179Q97 -171 99 -166Q99 -165 111 -145T150 -80T203 8Q97 104 97 251Q97 393 194 484T417 586Q418 586 436 586T482 586T538 587H549Q565 614 582 643T608 685L616 698Q623 711 641 711Q651 711 660 704T670 681Q670 672 667 667Q666 666 661 657T644 627T620 587H648Q649 586 652 584T658 580T664 575T668 568T670 557Q670 536 648 527L584 526L437 281H648Q649 280 652 278T658 274T664 269T668 262T670 251Q670 230 648 221L403 220H401L283 23Q311 5 341 -6Q380 -20 405 -22T534 -25H648Q649 -26 654 -29T661 -34T667 -43T670 -56Q670 -74 648 -85L541 -86Q419 -86 396 -82Q320 -71 252 -29Q152 -197 148 -201Q139 -210 126 -210ZM235 62L330 220Q159 219 159 218Q159 196 176 150T235 62ZM366 281L513 526Q503 526 487 526T465 526T448 525T433 525T422 525T412 524T403 523T394 521T385 519T374 517Q298 498 243 447T167 324Q159 295 159 283Q159 281 366 281",8715:"96 251Q96 268 119 281H363Q607 281 607 283Q607 295 600 319T576 379T519 451T425 507Q386 521 361 523T233 526L119 527Q96 535 96 557Q96 578 116 585Q121 587 229 587Q238 587 257 587T288 588Q366 588 435 568T568 488Q670 388 670 251Q670 155 621 78T499 -39T345 -85Q336 -86 225 -86L119 -85Q96 -77 96 -55Q96 -38 119 -25H233Q356 -24 371 -21Q373 -21 393 -16Q468 3 523 55T599 177Q607 206 607 218Q607 220 363 220L119 221Q96 229 96 251",8722:"119 221Q96 230 96 251T116 279Q121 281 448 281H775Q776 280 779 278T785 274T791 269T795 262T797 251Q797 230 775 221H119",8723:"64 155Q64 172 87 185H416V476H251L87 477Q64 485 64 507Q64 528 84 535Q89 537 448 537H807Q808 536 811 534T817 530T823 525T827 518T829 507Q829 486 807 477L642 476H477V185H807Q808 184 811 182T817 178T823 173T827 166T829 155Q829 134 807 125L642 124H477V-39Q477 -203 475 -208Q466 -227 446 -227Q427 -227 417 -205L416 -41V124H251L87 125Q64 133 64 155",8725:"451 730Q460 750 479 750Q492 750 501 740T510 718Q508 708 318 244L122 -232Q112 -250 95 -250Q82 -250 73 -241T64 -218Q66 -205 258 261T451 730",8726:"64 718Q63 731 72 740T94 750Q106 750 113 743Q118 741 122 732L318 256Q508 -208 510 -218Q511 -231 502 -240T480 -250Q460 -250 451 -230Q451 -229 259 238T64 718",8727:"236 431Q237 447 251 459T287 472T323 459T338 431Q338 423 328 363L317 300Q318 300 340 317T392 356T435 387Q442 390 450 390Q470 390 485 374T501 335Q501 326 500 320T494 309T486 300T473 293T458 287T438 280T414 272L353 250L414 228Q422 225 436 221T457 214T472 208T485 201T493 192T499 181T501 166Q501 141 484 126T450 111Q447 111 445 111T441 111T437 112T433 114T428 117T422 121T414 127T404 135T391 145T374 158L317 200L328 137Q338 77 338 69Q336 52 321 40T287 28T253 40T236 69Q236 77 246 137L257 200Q256 200 234 183T182 144T139 113Q132 110 124 110Q104 110 89 126T73 165Q73 174 74 180T80 191T88 200T101 207T116 213T136 220T160 228L221 250L160 272Q152 275 138 279T117 286T102 292T89 299T81 308T75 319T73 334Q73 359 90 374T124 389Q127 389 129 389T133 389T137 388T141 386T146 383T152 379T160 373T170 365T183 355T200 342L257 300L246 363Q236 423 236 431",8728:"64 251Q64 303 80 344T121 409T175 448T230 469T275 474Q277 474 283 474T292 473Q385 473 447 415T510 251Q510 149 449 89T287 28T126 88T64 251ZM448 251Q448 325 405 369T286 413Q215 413 171 371T126 251Q126 177 168 133T287 89Q361 89 404 132T448 251",8729:"64 251Q64 303 80 344T121 409T175 448T230 469T275 474Q277 474 283 474T292 473Q385 473 447 415T510 251Q510 149 449 89T287 28T126 88T64 251",8730:"107 178Q100 178 89 188T78 207Q78 216 84 220Q85 221 124 248T207 304T260 338Q269 340 275 335Q276 334 370 156L463 -20L698 393Q928 800 935 811Q944 820 954 820Q972 820 980 811T988 789Q988 781 858 553Q776 409 718 306Q452 -166 447 -171Q439 -179 422 -180Q405 -180 400 -175Q399 -174 346 -73T241 128T187 229L151 205Q111 178 107 178",8733:"65 222Q65 282 88 329T144 401T208 438T261 451H273Q312 451 320 450Q456 431 526 330L537 316Q638 451 778 451Q813 451 830 445V388Q821 391 799 391Q758 391 721 377T660 342T618 301T592 266L584 251Q648 152 697 114Q748 74 804 74H806Q823 74 829 77Q830 77 830 38V-1L820 -3Q801 -7 786 -7H771Q699 -7 632 25T527 114L516 128Q414 -8 276 -8Q192 -8 129 56T65 222ZM256 53Q296 53 332 67T392 102T434 143T461 178L469 193Q405 292 356 330Q308 369 251 369H243Q196 369 156 328T116 221Q116 191 124 161T158 99T225 55Q234 53 256 53",8734:"65 219Q65 318 132 385T302 452Q473 452 573 331L589 312L596 320Q710 452 857 452Q948 452 1016 386T1084 225Q1084 125 1017 59T848 -8Q679 -8 576 113L560 132L553 124Q439 -8 292 -8Q200 -8 133 58T65 219ZM1033 224Q1033 291 987 340T875 389Q748 389 648 261Q641 253 642 251Q717 163 748 137Q813 81 880 81Q941 81 987 120T1033 224ZM275 56Q315 56 353 70T418 104T466 144T497 178L507 192Q507 193 474 230T441 269Q355 362 267 362Q210 362 163 324T116 221Q116 150 162 103T275 56",8736:"71 0L68 2Q65 3 63 5T58 11T55 20Q55 21 56 23V25Q55 27 55 30Q55 31 56 33V35Q55 37 55 40Q55 42 57 48Q67 63 346 381Q421 467 518 578Q607 680 623 697T647 714Q656 714 661 708T666 694V692Q676 687 676 674Q676 668 673 663Q672 662 637 622T534 503T400 350L147 61L386 60H653Q666 50 666 40V38Q676 31 676 20Q676 8 661 0H71",8739:"160 -249Q138 -249 129 -225V250Q129 725 131 729Q139 750 159 750T190 725V-225Q181 -249 160 -249",8741:"205 -225Q201 -234 199 -237T191 -244T175 -248T161 -246Q151 -240 146 -229Q145 -224 145 251Q145 725 146 730Q156 750 176 750Q193 748 205 727V-225ZM369 727L372 732Q375 737 377 740T385 747T398 750Q406 750 413 747Q423 740 428 730Q430 720 430 251Q430 -219 428 -229Q423 -240 413 -246Q408 -248 400 -248Q393 -248 388 -247T379 -242T375 -236T371 -230L369 -225V727",8743:"95 -16Q78 -16 71 -6T64 14Q64 20 65 22L212 308Q359 593 361 595Q370 604 385 604Q398 602 405 595Q407 593 554 308L701 22Q702 20 702 15Q702 1 693 -8T671 -17Q661 -17 651 -9Q647 -5 515 251L383 506L251 251Q119 -5 116 -8Q108 -16 95 -16",8744:"64 572Q64 585 72 594T94 604T116 595Q119 592 251 336L383 81L515 336Q647 592 651 596Q661 604 671 604Q684 604 693 595T702 572Q702 567 701 565L554 279Q407 -6 405 -8Q404 -9 401 -11T397 -14Q392 -16 383 -16H380Q369 -16 361 -8Q359 -6 212 279L65 565Q65 566 65 568T64 572",8745:"94 -16Q73 -16 64 8V209Q64 239 64 287Q65 418 69 432Q70 434 70 435Q84 487 125 523T216 575T299 597T354 603H372Q444 603 501 590T591 558T648 515T681 471T696 435Q696 434 697 432Q701 417 702 309Q702 303 702 287Q702 239 702 209V8Q693 -16 672 -16Q650 -16 643 3Q641 8 641 201Q641 397 640 403Q631 472 558 507T383 542Q339 542 298 535T219 511T156 468T126 403Q125 397 125 201Q125 8 123 3Q116 -16 94 -16",8746:"672 603Q693 603 702 579V378Q702 348 702 300Q701 169 697 155Q696 153 696 152Q676 78 593 31T383 -16Q265 -16 179 28T70 152Q70 153 69 155Q65 170 64 278Q64 285 64 300Q64 348 64 378Q64 579 65 583Q74 604 94 604T123 584Q125 579 125 386Q125 190 126 184Q135 115 210 80T383 44Q426 44 467 51T546 75T609 119T640 184Q641 190 641 386Q641 579 643 584Q650 603 672 603",8747:"204 -71Q204 -108 181 -124T137 -141Q132 -141 132 -142Q142 -161 154 -161Q164 -161 186 -152Q200 -145 210 -135T228 -107T241 -77T249 -38T254 -2T258 38T262 74Q282 265 334 489Q334 490 337 503T341 523T347 544T355 569T365 594T379 620T397 643T420 666T447 685T481 700Q511 711 539 711T587 696T616 656T628 612T632 573Q632 536 610 519T562 501Q534 501 513 519T492 571Q492 608 515 624T559 641Q564 641 564 642Q554 661 542 661Q532 661 510 652Q496 645 486 635T468 607T455 577T447 538T442 502T438 462T434 426Q414 235 362 11Q352 -35 347 -54T328 -101T291 -152Q235 -208 162 -211Q147 -211 136 -208T109 -196T83 -165T67 -108Q64 -94 64 -73Q64 -37 86 -19T134 -1Q162 -1 183 -19T204 -71",8764:"64 155Q64 210 84 262T150 353T257 391Q300 391 341 371T417 321T484 264T557 215T637 194Q702 194 745 244T788 367Q796 391 808 391Q815 391 821 381T828 353V342Q828 252 776 181T637 109Q594 109 552 129T476 179T409 236T336 285T256 306Q193 306 149 258T105 132Q98 109 86 109Q76 109 70 122T64 155",8768:"64 561Q64 570 76 576T108 583Q174 583 214 535T254 407Q254 368 238 324T202 248T166 173T149 92Q149 43 169 2T217 -39Q231 -40 242 -46T254 -60Q254 -69 241 -75T210 -82Q145 -82 105 -34T64 93Q64 133 80 177T116 253T152 328T169 408Q169 461 148 500T105 540Q92 540 78 545T64 561",8771:"64 295Q64 378 117 440T257 502Q298 502 339 485T416 443T486 394T560 352T637 335Q693 335 740 373T788 478Q796 502 808 502Q815 502 821 492T828 465V455Q828 365 771 308T640 250Q603 250 562 265T501 294T439 336L370 382Q308 417 256 417Q205 417 164 388T110 317Q110 316 109 304T107 286T103 270T97 255T86 250Q76 250 70 263T64 295ZM64 6T64 27T87 56H93Q99 56 110 56T137 56T173 56T217 56T267 57T323 57T383 57T448 57H807Q808 56 811 54T815 52T819 49T823 45T826 40T828 34T829 27Q829 7 807 -3H87Q64 6 64 27",8773:"64 402Q64 457 84 509T150 600T257 638Q300 638 341 618T417 569T484 511T557 462T637 441Q702 441 745 491T788 614Q796 638 808 638Q815 638 821 628T828 600V589Q828 499 776 428T637 356Q594 356 552 376T476 425T409 483T336 532T256 553Q193 553 149 505T105 379Q98 356 86 356Q76 356 70 369T64 402ZM87 197Q64 207 64 226Q64 247 84 255Q89 257 448 257H807Q808 256 811 254T817 250T823 245T827 238T829 227Q829 209 807 197H87ZM87 -27Q64 -18 64 3Q64 23 86 32Q89 33 448 33H807L812 30Q816 27 818 26T823 21T827 13T829 3Q829 -18 807 -27H87",8776:"64 345Q64 423 119 473T250 524Q301 524 356 503T451 455T542 407T636 385Q700 385 743 417T786 481Q786 493 791 508T807 524Q817 524 823 512T829 479Q829 404 776 352T638 300Q590 300 537 321T443 369T352 417T256 439Q207 439 166 417T110 359Q109 357 107 341T100 312T85 300Q77 300 71 313T64 345ZM64 77Q64 155 119 205T250 256Q302 256 357 235T451 187T541 139T636 117Q699 117 742 148T786 213Q786 231 792 243T808 256T823 242T829 208Q829 134 776 83T640 32Q591 32 537 53T443 101T352 149T256 171Q206 171 165 148T110 91Q109 89 107 73T100 44T85 32Q77 32 71 45T64 77",8781:"798 533Q812 533 820 524T829 502T819 480T769 440Q655 355 537 330Q492 322 447 322Q401 322 356 330Q289 344 219 381T118 443T73 481Q64 490 64 503Q64 517 72 525T94 533Q99 533 102 532Q107 531 138 507T209 456T314 405T446 382Q604 382 765 515Q788 533 798 533ZM95 -32Q81 -32 73 -23T64 -1Q64 10 74 21T124 61Q213 127 293 153T421 179L422 180Q424 180 426 180T432 180T441 180T452 179Q612 179 769 61Q811 29 820 19T829 -1Q829 -14 821 -23T798 -32Q788 -32 765 -14Q608 118 446 118Q287 118 128 -14Q105 -32 95 -32",8784:"87 333Q64 343 64 362Q64 383 84 391Q89 393 448 393H807Q808 392 811 390T817 386T823 381T827 374T829 363Q829 345 807 333H87ZM87 109Q64 118 64 139Q64 159 86 168Q89 169 448 169H807L812 166Q816 163 818 162T823 157T827 149T829 139Q829 118 807 109H87ZM362 635Q362 671 387 696T444 721Q488 721 510 693T533 635Q533 606 512 579T448 551Q406 551 384 577T362 635",8800:"189 -210Q179 -210 170 -203T160 -179Q160 -171 162 -166Q165 -163 327 109H87Q64 118 64 139Q64 159 86 168Q89 169 363 169L461 333H87Q64 343 64 362Q64 383 84 391Q89 393 448 393H496Q533 455 583 539T656 660T679 698Q686 711 704 711Q714 711 723 704T733 681Q733 672 730 667Q729 664 709 631T645 523T567 393H807Q808 392 811 390T817 386T823 381T827 374T829 363Q829 345 807 333H532L433 169H807L812 166Q816 163 818 162T823 157T827 149T829 139Q829 118 807 109H398Q217 -195 211 -201Q202 -210 189 -210",8801:"87 445Q64 454 64 475Q64 497 84 503Q89 505 448 505H807Q808 504 812 502T818 497T823 492T827 484T829 474Q829 456 807 445H87ZM87 221Q64 230 64 251T84 279Q89 281 448 281H807Q808 280 811 278T817 274T823 269T827 262T829 251Q829 230 807 221H87ZM64 6T64 27T87 56H93Q99 56 110 56T137 56T173 56T217 56T267 57T323 57T383 57T448 57H807Q808 56 811 54T815 52T819 49T823 45T826 40T828 34T829 27Q829 7 807 -3H87Q64 6 64 27",8804:"797 55Q797 45 790 35T767 25H759L434 180Q108 336 105 339Q96 348 96 360Q96 378 114 388Q126 394 439 544T757 695Q763 697 766 697Q780 697 788 688T797 666Q797 654 788 645Q784 641 507 509T197 361L466 232Q785 80 790 74Q797 66 797 55ZM119 -199Q96 -191 96 -169Q96 -160 102 -152T119 -140H124Q130 -140 140 -140T164 -140T197 -140T237 -140T283 -139T334 -139T389 -139T448 -139H775Q797 -153 797 -169Q797 -187 775 -199H119",8805:"127 25Q110 25 103 34T96 54Q96 66 105 75Q109 80 439 238L696 361Q113 637 105 645Q96 654 96 667Q96 679 104 688T128 697Q137 696 460 541T788 382Q797 373 797 360Q797 348 788 339Q785 336 459 180L135 25H127ZM119 -199Q96 -191 96 -169Q96 -160 102 -152T119 -140H124Q130 -140 140 -140T164 -140T197 -140T237 -140T283 -139T334 -139T389 -139T448 -139H775Q797 -153 797 -169Q797 -187 775 -199H119",8810:"734 -74T734 -86T727 -107T704 -116H702Q694 -116 584 -55Q473 7 380 58Q87 219 73 229Q64 238 64 250Q64 263 73 272Q87 282 380 443Q695 616 699 617H700Q718 617 726 607T734 588Q734 568 717 560Q705 554 435 404L157 250L439 94Q721 -61 726 -66Q734 -74 734 -86ZM1085 -74T1085 -86T1078 -107T1055 -116H1053Q1045 -116 935 -55Q824 7 731 58Q438 219 424 229Q415 238 415 250Q415 263 424 272Q438 282 731 443Q1046 616 1050 617H1051Q1069 617 1077 607T1085 588Q1085 568 1068 560Q1056 554 786 404L508 250L790 94Q1072 -61 1077 -66Q1085 -74 1085 -86",8811:"64 588Q64 600 72 609T94 618H95Q103 618 209 559Q322 496 419 443Q712 282 725 272Q734 263 734 250Q734 238 725 229Q714 220 415 55T110 -113Q103 -116 95 -116Q78 -116 71 -106T64 -86Q64 -74 72 -66Q77 -61 359 94L641 250L363 404Q277 452 173 509Q95 552 82 560T66 576V577Q64 585 64 588ZM415 588Q415 600 423 609T445 618H446Q454 618 560 559Q673 496 770 443Q1063 282 1076 272Q1085 263 1085 250Q1085 238 1076 229Q1065 220 766 55T461 -113Q454 -116 446 -116Q429 -116 422 -106T415 -86Q415 -74 423 -66Q428 -61 710 94L992 250L714 404Q628 452 524 509Q446 552 433 560T417 576V577Q415 585 415 588",8826:"797 -57Q797 -65 790 -75T766 -86Q748 -86 741 -74T733 -43T719 8T681 72Q647 112 588 141T475 185T343 207T230 216T136 219Q96 219 96 250Q96 280 132 280H136Q193 281 239 283T347 292T457 310T556 342T643 391T703 460T735 553Q741 585 763 585Q781 585 789 575T797 556Q797 540 792 513T758 434T682 345Q605 285 481 254L462 249Q483 246 526 233T633 185T733 104Q767 63 782 15T797 -57",8827:"96 556Q96 568 104 577T126 586Q152 586 158 553Q164 503 188 462T247 394T331 345T429 313T539 294T649 284T758 280H760Q797 280 797 250Q797 219 760 219H758Q627 217 529 204T347 160T216 77T158 -54Q152 -86 126 -86Q110 -86 103 -76T96 -57Q96 -41 101 -14T135 65T211 154Q288 214 412 245L431 250Q410 252 367 265T259 314T160 395Q127 435 112 483T96 556",8834:"96 251Q96 389 191 482T417 586Q418 586 428 586T456 586T496 586T546 587T601 587H775Q776 586 779 584T785 580T791 575T795 568T797 557Q797 536 775 527L597 526Q411 525 395 522Q390 521 370 516Q285 494 222 424T158 251Q158 131 246 53Q313 -9 408 -23Q417 -24 597 -25H775Q776 -26 781 -29T788 -34T794 -43T797 -56Q797 -74 775 -85H493Q407 -85 376 -79Q257 -55 177 35T96 251",8835:"96 -55Q96 -38 119 -25H296Q482 -24 498 -21Q503 -20 523 -15Q609 7 672 77T735 251T665 431T485 524Q476 525 296 526L119 527Q96 535 96 557Q96 578 116 585Q121 587 300 587Q451 586 476 585T522 579Q632 556 714 468T796 251Q796 112 695 13Q612 -65 497 -82Q473 -86 289 -86L119 -85Q96 -77 96 -55",8838:"96 361Q96 499 191 592T417 696Q418 696 428 696T456 696T496 696T546 697T601 697H775Q776 696 779 694T785 690T791 685T795 678T797 667Q797 646 775 637L597 636Q411 635 395 632Q390 631 370 626Q285 604 222 534T158 361Q158 241 246 163Q313 101 408 87Q417 86 597 85H775Q776 84 781 81T788 76T794 67T797 54Q797 36 775 25H493Q407 25 376 31Q257 55 177 145T96 361ZM149 -199Q127 -191 127 -169T149 -140H154Q160 -140 169 -140T192 -140T224 -140T262 -140T306 -139T354 -139T407 -139T463 -139H775Q776 -140 779 -142T785 -146T791 -151T795 -158T797 -169Q797 -190 775 -199H149",8839:"96 55Q96 72 119 85H296Q482 86 498 89Q503 90 523 95Q609 117 672 187T735 361T665 541T485 634Q476 635 296 636L119 637Q96 645 96 667Q96 688 116 695Q121 697 300 697Q451 696 476 695T522 689Q632 666 714 578T796 361Q796 222 695 123Q612 45 497 28Q473 24 289 24L119 25Q96 33 96 55ZM119 -199Q96 -190 96 -169T116 -141Q121 -139 433 -139H745Q766 -152 766 -170Q766 -190 745 -199H119",8846:"672 603Q693 603 702 579V378Q702 348 702 300Q701 169 697 155Q696 153 696 152Q676 78 593 31T383 -16Q265 -16 179 28T70 152Q70 153 69 155Q65 170 64 278Q64 285 64 300Q64 348 64 378Q64 579 65 583Q74 604 94 604T123 584Q125 579 125 386Q125 190 126 184Q135 115 210 80T383 44Q426 44 467 51T546 75T609 119T640 184Q641 190 641 386Q641 579 643 584Q650 603 672 603ZM353 412Q353 420 353 435T352 456Q352 483 358 495T385 507Q403 506 409 494T415 457Q415 451 415 436T414 411V341H558Q579 329 579 311Q579 289 558 281L486 280H414V136Q400 114 384 114Q363 114 354 136L353 208V280H281L209 281Q187 289 187 310Q187 328 209 341H353V412",8849:"127 25Q111 29 104 49V362L105 675Q114 693 127 696H132Q138 696 149 696T174 696T208 696T249 696T297 697T350 697T407 697T468 697H806Q828 683 828 666Q828 646 806 637L485 636H165V85H805Q806 84 809 82T813 80T817 77T821 73T824 68T826 62T827 55Q827 34 806 25H127ZM96 -190T96 -169T119 -140H125Q131 -140 141 -140T167 -140T201 -140T242 -140T290 -139T344 -139T402 -139T463 -139H805Q806 -140 809 -142T813 -144T817 -147T821 -151T824 -156T826 -162T827 -169Q827 -190 806 -199H119Q96 -190 96 -169",8850:"66 55Q66 74 89 85H728V636H408L88 637Q66 645 66 667T88 696H94Q99 696 110 696T135 696T169 696T210 696T258 697T311 697T368 697T429 697H767Q786 684 789 672V49Q782 31 767 25H88Q66 32 66 55ZM88 -199Q66 -191 66 -169Q66 -148 87 -140Q91 -139 433 -139H775Q776 -140 779 -142T783 -144T787 -147T791 -151T794 -156T796 -162T797 -169Q797 -189 775 -199H88",8851:"131 25Q121 1 100 1Q81 1 71 23L70 301Q70 579 72 583Q77 598 90 602Q95 604 385 604H674Q693 591 696 579V25Q686 1 665 1Q646 1 636 23L635 283V543H131V25",8852:"696 25Q689 7 674 1H93Q77 7 71 23L70 301Q70 579 72 583Q80 604 100 604T131 579V61H635V579Q644 603 666 603Q687 603 696 579V25",8853:"64 250Q64 350 98 426T189 546T307 610T434 632Q485 632 496 631Q572 621 635 592Q669 575 699 550T760 484T809 384T828 250Q828 77 725 -27T446 -132Q272 -132 168 -27T64 250ZM416 282V570H414Q341 564 285 535T202 475T156 397T134 332T128 287Q127 283 127 282H416ZM765 288Q760 344 743 389T700 462T647 512T589 543T538 560T499 568L483 570H478V282H766L765 288ZM416 -69V220H127Q130 195 131 189T138 155T150 115T168 76T196 35T234 0T286 -35Q337 -61 410 -69H416ZM483 -69Q554 -60 607 -33T687 21T733 93T756 156T764 209Q766 217 766 220H478V-69H483",8854:"64 250Q64 350 98 426T189 546T307 610T434 632Q485 632 496 631Q572 621 635 592Q669 575 699 550T760 484T809 384T828 250Q828 77 725 -27T446 -132Q272 -132 168 -27T64 250ZM765 288Q753 424 666 497T446 571T227 498T128 288L127 282H766L765 288ZM446 -70Q578 -70 666 4T765 213L766 220H127Q130 195 131 189T138 155T150 115T168 76T196 35T234 0T286 -35Q353 -70 446 -70",8855:"64 250Q64 350 98 426T189 546T307 610T434 632Q485 632 496 631Q572 621 635 592Q669 575 699 550T760 484T809 384T828 250Q828 77 725 -27T446 -132Q272 -132 168 -27T64 250ZM647 512Q567 571 447 571Q340 571 262 523Q237 507 237 505L342 399L447 295L657 505L647 512ZM298 356L192 461Q180 445 161 411Q126 341 126 251Q126 128 192 40L403 250L298 356ZM701 41Q704 41 719 63T750 138T767 250Q767 310 750 362T719 437T701 460L491 250L701 41ZM238 -5Q238 -8 261 -22T336 -53T447 -70Q567 -70 647 -11L657 -4L447 206L342 101Q238 -1 238 -5",8856:"64 250Q64 350 98 426T189 546T307 610T434 632Q485 632 496 631Q572 621 635 592Q669 575 699 550T760 484T809 384T828 250Q828 77 725 -27T446 -132Q272 -132 168 -27T64 250ZM657 505Q656 506 650 510T638 518T623 527T604 537T581 547T553 556T522 563T486 569T446 571Q305 571 216 487T126 251Q126 128 192 40L657 505ZM447 -70Q591 -70 679 16T767 250Q767 308 751 360T719 436T701 460L469 228Q238 -1 238 -5Q238 -8 261 -22T336 -53T447 -70",8857:"64 250Q64 350 98 426T189 546T307 610T434 632Q485 632 496 631Q572 621 635 592Q669 575 699 550T760 484T809 384T828 250Q828 77 725 -27T446 -132Q272 -132 168 -27T64 250ZM767 252Q767 395 681 483T446 571Q303 571 215 486T126 249Q126 107 212 19T446 -70Q596 -70 681 18T767 252ZM335 251Q335 297 368 329T441 361Q498 361 527 327T557 250Q557 202 525 171T446 140Q397 140 366 173T335 251",8866:"65 672Q76 693 91 693Q115 693 123 674Q125 669 125 523V378H615Q618 376 622 373T628 369T632 366T635 362T636 356T637 347Q637 328 619 319Q615 317 370 317H125V171Q125 25 123 20Q114 1 94 1Q73 1 65 23V672",8867:"64 327T64 347T89 378H577V525L578 672Q592 693 604 693Q629 693 638 669V25Q628 1 607 1Q588 1 578 23L577 170V317H88Q64 327 64 347",8868:"64 664Q64 675 71 683T87 693H93Q99 693 110 693T137 693T173 693T217 694T267 694T323 694T383 694T448 694H807Q808 693 811 691T817 687T823 682T827 675T829 664Q829 643 807 634L642 633H477V25Q467 1 446 1Q427 1 417 23L416 328V633H251L87 634Q64 643 64 664",8869:"65 31Q65 38 66 41T71 50T87 61H416V366L417 672Q431 693 443 693Q468 693 477 669V61H807Q808 60 811 58T817 54T823 49T827 42T829 31Q829 10 807 1H87Q65 10 65 31",8872:"160 -249Q138 -249 129 -225V250Q129 725 131 729Q139 750 159 750T190 725V392Q219 393 537 393H896Q897 392 900 390T906 386T912 381T916 374T918 363Q918 345 896 333H190V169H896L900 166Q905 163 907 162T912 157T916 149T918 139Q918 118 896 109H190V-225Q181 -249 160 -249",8900:"280 522Q281 523 285 523H289Q301 523 366 457Q404 420 431 393Q533 291 546 277T560 250Q560 239 548 226T431 108Q313 -10 304 -16Q297 -21 287 -21Q278 -21 275 -19Q270 -17 146 107T18 238Q15 242 15 251Q15 258 18 263Q20 268 145 392T274 519L280 522ZM388 350L288 449L188 350L89 250L288 52L487 250L388 350",8901:"74 251Q74 286 99 311T156 336Q200 336 222 308T245 250Q245 221 224 194T160 166T96 193T74 251",8902:"270 491Q274 502 287 502Q298 502 304 491Q304 486 323 396T342 303L438 314Q520 324 534 324Q540 324 545 320T550 307Q550 298 539 290T456 243Q377 198 377 197L416 111Q456 26 456 22Q457 21 457 18Q457 11 451 6T438 0H437Q432 0 415 16Q387 42 358 68L287 133L216 68Q193 47 167 23Q142 0 136 0Q129 0 123 5T117 18Q117 21 118 22Q118 26 158 111L197 197Q197 198 156 221T72 269T26 298Q24 304 24 307Q24 315 29 319T40 324Q53 324 136 314L232 303Q232 306 251 396T270 491",8904:"906 251Q906 456 905 456Q550 252 549 251Q549 250 726 148T905 45T906 251ZM967 -14Q958 -38 939 -38H937Q928 -38 923 -35Q919 -34 748 64T500 209L71 -38Q69 -39 63 -39Q42 -39 33 -16V518Q45 540 63 540H65Q72 540 174 481Q247 439 302 407L500 292Q578 339 750 438T929 539H933Q958 539 967 515V-14ZM449 251L94 456Q93 456 93 251Q93 45 94 45L106 52Q119 59 139 71T186 98T242 131T301 165T357 197T404 225T437 244L449 251",8942:"74 55Q74 91 99 116T156 141Q200 141 222 113T245 55Q245 26 224 -1T160 -29Q118 -29 96 -3T74 55ZM74 465Q74 501 99 526T156 551Q200 551 222 523T245 465Q245 436 224 409T160 381Q118 381 96 407T74 465ZM74 865Q74 901 99 926T156 951Q200 951 222 923T245 865Q245 836 224 809T160 781Q118 781 96 807T74 865",8943:"74 251Q74 286 99 311T156 336Q200 336 222 308T245 250Q245 221 224 194T160 166T96 193T74 251ZM562 251Q562 286 587 311T644 336Q688 336 710 308T733 250Q733 221 712 194T648 166T584 193T562 251ZM1050 251Q1050 286 1075 311T1132 336Q1176 336 1198 308T1221 250Q1221 221 1200 194T1136 166T1072 193T1050 251",8945:"129 785Q129 821 154 846T211 871Q255 871 277 843T300 785Q300 756 279 729T215 701Q173 701 151 727T129 785ZM576 485Q576 521 601 546T658 571Q702 571 724 543T747 485Q747 456 726 429T662 401Q620 401 598 427T576 485ZM1023 185Q1023 221 1048 246T1105 271Q1149 271 1171 243T1194 185Q1194 156 1173 129T1109 101Q1067 101 1045 127T1023 185",8968:"194 728Q199 743 216 749H220Q223 749 229 749T245 749T265 750T289 750T316 750T345 750H471Q472 749 477 746T484 741T490 732T493 719Q493 701 471 690L362 689H254V-224Q244 -248 223 -248T194 -226V728",8969:"317 -224Q307 -248 286 -248Q267 -248 257 -226L256 231V689H148L40 690Q17 698 17 720Q17 741 37 748Q42 750 169 750H295Q314 737 317 725V-224",8970:"194 728Q204 749 220 749Q245 749 254 725V-188H471Q472 -189 477 -192T484 -197T490 -206T493 -219Q493 -237 471 -248H216Q200 -242 194 -226V728",8971:"17 -219Q17 -201 40 -188H256V270L257 728Q271 749 283 749Q308 749 317 725V-224Q310 -242 295 -248H40L38 -247Q35 -246 34 -245T30 -243T25 -239T21 -234T18 -227T17 -219",8994:"95 108Q85 108 75 114T65 139Q65 159 129 227Q316 405 573 405Q654 405 729 387T854 344T950 286T1015 232T1053 191Q1078 160 1083 152Q1084 148 1084 139Q1084 121 1074 115T1054 108Q1040 108 1029 122T990 167T922 223Q819 291 680 309Q641 315 575 315Q508 315 469 309Q303 288 197 201Q168 179 148 155T118 119T95 108",8995:"1054 392Q1067 392 1076 384T1085 362Q1085 351 1079 342T1050 310Q983 243 901 200Q753 126 575 126Q494 126 420 141T298 176T205 225T140 272T100 310Q64 346 64 362Q64 370 67 374Q75 393 93 393Q107 393 124 375Q272 214 575 214Q877 214 1025 375Q1039 392 1054 392",9001:"127 243V259L223 491Q251 557 286 642Q318 719 324 732T340 748H341Q347 750 351 750Q365 750 373 740T382 723Q382 713 286 482L190 251Q190 249 286 20T382 -219Q382 -232 373 -240T352 -249Q332 -249 323 -229Q320 -220 223 10L127 243",9002:"64 720Q64 732 72 741T94 750Q106 750 113 743Q118 741 122 732L319 259V243L122 -231Q112 -249 95 -249Q83 -249 74 -240T64 -218Q64 -210 160 20L256 251L160 482Q64 715 64 720",9651:"91 1Q69 10 69 31Q69 39 81 59T168 197Q327 447 485 697Q493 711 510 711Q523 711 532 702Q536 697 743 371T951 41Q953 35 953 31Q953 12 931 1H91ZM690 340Q651 401 604 476T534 586L512 621Q511 622 507 616Q498 604 332 342L154 62L333 61H689L867 62L690 340",9653:"91 1Q69 10 69 31Q69 39 81 59T168 197Q327 447 485 697Q493 711 510 711Q523 711 532 702Q536 697 743 371T951 41Q953 35 953 31Q953 12 931 1H91ZM690 340Q651 401 604 476T534 586L512 621Q511 622 507 616Q498 604 332 342L154 62L333 61H689L867 62L690 340",9657:"33 518Q45 540 63 540H65Q72 540 174 481Q247 439 302 407Q529 276 533 272Q542 263 542 250Q542 238 533 229Q528 224 304 95T71 -38Q69 -39 63 -39Q42 -39 33 -16V518ZM449 251L94 456Q93 456 93 251Q93 45 94 45L106 52Q119 59 139 71T186 98T242 131T301 165T357 197T404 225T437 244L449 251",9661:"68 470Q68 481 75 489T91 499H93Q296 500 512 500H931Q932 499 937 496T945 490T950 482T953 469Q953 465 951 459Q950 455 743 129T532 -202Q524 -210 511 -210Q497 -210 489 -202Q486 -199 281 124T71 456Q68 462 68 470ZM154 439Q155 437 332 158T510 -122Q510 -123 533 -87T600 18T688 157Q866 437 866 438Q867 439 805 439T511 439H154",9663:"68 470Q68 481 75 489T91 499H93Q296 500 512 500H931Q932 499 937 496T945 490T950 482T953 469Q953 465 951 459Q950 455 743 129T532 -202Q524 -210 511 -210Q497 -210 489 -202Q486 -199 281 124T71 456Q68 462 68 470ZM154 439Q155 437 332 158T510 -122Q510 -123 533 -87T600 18T688 157Q866 437 866 438Q867 439 805 439T511 439H154",9667:"542 -14Q533 -38 514 -38H512Q503 -38 498 -35Q494 -34 270 95T42 229Q33 238 33 251Q33 259 35 264Q36 265 38 268T42 272Q48 278 271 407T504 539H508Q533 539 542 515V-14ZM481 251Q481 456 480 456Q125 252 124 251Q124 250 301 148T480 45T481 251",9711:"65 42T65 250T204 584T574 711Q795 711 935 594Q955 577 974 555T1022 490T1067 385T1084 250Q1084 42 945 -84T574 -211T204 -85ZM1024 250Q1024 431 903 540T578 650Q482 650 404 627T274 565T189 474T140 366T125 250Q125 123 186 31T347 -106T573 -150Q772 -150 898 -45T1024 250",9824:"675 -18Q536 -18 527 62V70H477V55Q479 14 487 -21T502 -75T509 -101Q509 -120 491 -127Q487 -129 447 -129Q446 -129 439 -129T427 -130Q384 -130 384 -101Q384 -95 391 -76T406 -21T416 55V70H366Q364 52 360 40T342 14T300 -8T230 -17H218Q110 -17 75 117Q64 163 64 209Q64 290 116 357T261 495Q363 574 414 690Q425 719 445 719Q467 719 478 693Q507 627 547 578T623 503T702 438T777 357Q829 285 829 202V197Q826 128 808 81T762 15T714 -11T675 -18",9825:"65 491Q65 602 121 656T246 710Q375 710 440 624L447 615Q519 711 638 711Q723 711 775 652T828 491Q828 390 770 313T581 129Q539 95 514 63T483 14T469 -13T446 -24Q434 -24 427 -17T416 0T400 32T371 74Q352 97 310 131T229 199T151 276T89 374T65 491ZM249 649Q188 649 157 603T125 489Q125 409 181 338T352 176Q408 131 437 87L446 73L456 87Q479 121 507 147T579 207T659 278Q768 387 768 489Q768 506 766 524T756 566T731 611T687 642Q668 649 638 649Q609 649 593 644Q547 633 516 604T478 534Q473 505 447 505H445Q420 505 416 534Q407 577 372 608T285 648Q277 649 249 649",9826:"409 686Q410 688 412 691T415 696T418 701T421 706T424 709T427 713T431 715T435 717T440 718T446 719Q455 719 460 717T472 704T488 679T516 633T563 567Q624 485 687 422T787 330T826 296T828 282Q828 270 825 265T801 245Q696 161 612 59T477 -133Q465 -154 447 -154Q439 -154 434 -152T425 -146T414 -130T399 -104T372 -62T330 -3Q270 78 207 142T107 234T70 265Q64 274 64 282Q64 296 90 317Q284 472 409 686ZM749 282Q745 286 721 307T681 343T635 388T581 446T525 516T465 601Q462 606 457 613T450 624L447 627V628Q446 628 436 611T402 561T348 489T266 396T155 292L145 282Q147 280 185 245T257 177T343 79T442 -57Q446 -64 447 -64V-63Q450 -59 475 -22T530 56T619 160T749 282",9827:"240 527Q240 611 301 665T446 719T590 665T652 527Q652 431 571 373Q578 363 584 352T593 335T597 329L604 335Q611 341 617 345T637 356T667 366Q672 366 680 367T694 368Q767 368 814 310T861 177Q861 109 819 57T713 -12Q690 -17 656 -17Q535 -13 527 62V70H477V55Q479 14 487 -21T502 -75T509 -101Q509 -120 491 -127Q487 -129 447 -129Q446 -129 439 -129T427 -130Q384 -130 384 -101Q384 -95 391 -76T406 -21T416 55V70H366V62Q356 -12 237 -17Q130 -17 71 60Q32 111 32 178Q32 251 78 309T198 368Q217 368 233 364T260 354T279 343T291 333T296 329L300 336Q304 343 310 354T322 373Q240 432 240 527",9837:"230 480Q293 480 337 440T381 330V322Q381 240 323 161Q258 71 123 -11L114 -16L97 -17Q70 -17 66 -7Q64 -3 64 366V641Q64 717 65 731T75 748Q78 750 95 750Q117 750 122 742T127 694Q127 685 127 653T126 595V454Q183 480 230 480ZM242 333Q242 405 212 405H207Q147 405 130 370L127 364L126 219Q126 77 128 77Q133 82 140 90T167 127T202 183T229 253T242 333",9838:"345 -223Q333 -223 330 -214T327 -178V-116Q327 -23 326 -23L203 -82Q90 -134 77 -140Q65 -142 59 -130Q57 -126 57 295V595Q57 643 57 667T58 704T60 719T63 724Q93 741 101 741Q113 741 116 732T119 680V597Q119 467 120 467Q121 468 180 495T301 552T369 584Q381 586 387 574Q389 570 389 187V-88Q389 -132 389 -154T388 -188T386 -202T383 -206Q353 -223 345 -223ZM327 271Q327 421 326 421L120 323L119 173V23Q120 23 223 72L327 121V271",9839:"140 628Q151 628 154 620T158 591V549V484L166 488Q175 492 192 500T223 516L288 548V622V674Q288 681 288 685T289 693T289 699T291 703T295 707T298 709T304 712T311 716Q326 724 332 724Q343 724 346 715T350 685V644V579Q358 583 364 583Q376 583 380 574Q382 570 382 514V481Q382 459 380 454T363 441L350 435V135Q358 139 364 139Q376 139 380 130Q382 126 382 70V37Q382 15 380 10T363 -3L350 -9V-76Q350 -102 348 -106T328 -119Q312 -128 306 -128Q288 -128 288 -99V-77V-40L280 -44Q271 -48 254 -56T223 -72L158 -104V-150V-180Q158 -198 155 -202T135 -216Q119 -224 114 -224Q96 -224 96 -192V-172V-135Q86 -140 81 -140Q70 -140 66 -129Q64 -126 64 -70V-54Q64 -18 66 -12T83 3L96 9V309Q86 304 81 304Q70 304 66 315Q64 318 64 374V407Q64 429 66 434T83 447L96 453V602Q99 609 100 610T118 619Q134 628 140 628ZM288 254Q288 404 287 404L158 340V40L166 44Q175 48 192 56T223 72L288 104V254",10072:"160 -249Q138 -249 129 -225V250Q129 725 131 729Q139 750 159 750T190 725V-225Q181 -249 160 -249",10216:"127 243V259L223 491Q251 557 286 642Q318 719 324 732T340 748H341Q347 750 351 750Q365 750 373 740T382 723Q382 713 286 482L190 251Q190 249 286 20T382 -219Q382 -232 373 -240T352 -249Q332 -249 323 -229Q320 -220 223 10L127 243",10217:"64 720Q64 732 72 741T94 750Q106 750 113 743Q118 741 122 732L319 259V243L122 -231Q112 -249 95 -249Q83 -249 74 -240T64 -218Q64 -210 160 20L256 251L160 482Q64 715 64 720",10229:"1063 221L649 220H235Q340 133 364 17Q368 1 368 -2Q368 -16 343 -17Q340 -17 338 -17H332Q317 -17 314 -14T305 6Q298 34 285 62T247 126T179 189T78 233Q64 237 64 251Q64 261 74 265T108 277T154 297Q212 328 251 379T305 495Q309 511 313 514T333 518H338Q363 517 367 510Q368 507 368 503Q368 500 364 484Q345 401 287 331Q254 295 235 282L649 281H1063L1065 280Q1079 281 1392 281H1719Q1720 280 1723 278T1729 274T1735 269T1739 262T1741 251Q1741 230 1719 221H1063",10230:"119 221Q96 230 96 251T116 279Q121 281 448 281H1188L1602 282Q1569 304 1530 357T1473 482Q1469 500 1469 501Q1469 512 1480 517Q1482 518 1500 518H1505Q1520 518 1523 515T1532 495Q1552 412 1611 351T1753 270Q1773 263 1773 251Q1773 240 1765 236T1732 225T1683 204Q1625 173 1586 122T1532 6Q1528 -10 1524 -13T1504 -17H1499Q1474 -16 1470 -9Q1469 -6 1469 -2Q1469 1 1473 17Q1501 138 1602 220H1188L775 221H119",10231:"1063 221L649 220H235Q340 133 364 17Q368 1 368 -2Q368 -16 343 -17Q340 -17 338 -17H332Q317 -17 314 -14T305 6Q298 34 285 62T247 126T179 189T78 233Q64 237 64 251Q64 261 74 265T108 277T154 297Q212 328 251 379T305 495Q309 511 313 514T333 518H338Q363 517 367 510Q368 507 368 503Q368 500 364 484Q345 401 287 331Q254 295 235 282L649 281H1476L1890 282Q1857 304 1818 357T1761 482Q1757 500 1757 501Q1757 512 1768 517Q1770 518 1788 518H1793Q1808 518 1811 515T1820 495Q1840 412 1899 351T2041 270Q2061 263 2061 251Q2061 240 2053 236T2020 225T1971 204Q1913 173 1874 122T1820 6Q1816 -10 1812 -13T1792 -17H1787Q1762 -16 1758 -9Q1757 -6 1757 -2Q1757 1 1761 17Q1789 138 1890 220H1476L1063 221",10232:"1063 333L700 332H338L324 321Q283 290 230 264L205 250Q266 224 323 180L338 170L700 169H1063L1064 168Q1080 169 1423 169H1782L1786 166Q1791 163 1793 162T1798 157T1802 149T1804 139Q1804 118 1782 109H1063L733 108H404L412 99Q455 50 488 -10Q498 -27 493 -37Q487 -46 465 -46H460Q446 -46 439 -39T426 -18T399 25T344 89Q239 194 99 229Q96 230 92 231T85 232T79 234T73 235T69 237T66 240T65 244T64 250Q64 267 90 271Q197 295 286 361T430 525Q439 542 442 544T460 547H465Q487 547 492 539Q496 531 496 530Q496 521 471 482T414 405L404 394L733 393H1063Q1064 392 1065 392Q1081 393 1423 393H1782Q1783 392 1786 390T1792 386T1798 381T1802 374T1804 363Q1804 345 1782 333H1063",10233:"87 109Q64 118 64 139Q64 159 86 168Q89 169 448 169H1169L1532 170L1546 180Q1562 193 1580 204T1612 223T1638 237T1657 246L1664 250L1639 264Q1586 290 1545 321L1531 332H1169L807 333H87Q64 343 64 362Q64 383 84 391Q89 393 448 393H1136L1465 394L1455 405Q1428 436 1401 477T1374 531Q1374 547 1399 547H1404H1409Q1423 547 1430 540T1443 519T1470 475T1526 411Q1634 303 1779 271Q1780 271 1783 270T1788 269T1792 268T1796 266T1799 264T1802 260T1803 256T1804 250Q1804 242 1800 238T1783 231T1755 225T1712 211T1654 185Q1517 112 1439 -24Q1430 -40 1426 -43T1409 -46H1404Q1373 -46 1373 -31Q1373 -24 1381 -10Q1414 50 1457 99L1465 108H1136L807 109H87",10234:"1063 333L700 332H338L324 321Q283 290 230 264L205 250Q266 224 323 180L338 170L700 169H1425L1788 170L1802 180Q1818 193 1836 204T1868 223T1894 237T1913 246L1920 250L1895 264Q1842 290 1801 321L1787 332H1425L1063 333ZM733 393H1392L1721 394L1711 405Q1684 436 1657 477T1630 531Q1630 547 1655 547H1660H1665Q1679 547 1686 540T1699 519T1726 475T1782 411Q1890 303 2035 271Q2036 271 2039 270T2044 269T2048 268T2052 266T2055 264T2058 260T2059 256T2060 250Q2060 242 2056 238T2039 231T2011 225T1968 211T1910 185Q1773 112 1695 -24Q1686 -40 1682 -43T1665 -46H1660Q1629 -46 1629 -31Q1629 -24 1637 -10Q1670 50 1713 99L1721 108H1392L1063 109L733 108H404L412 99Q455 50 488 -10Q498 -27 493 -37Q487 -46 465 -46H460Q446 -46 439 -39T426 -18T399 25T344 89Q239 194 99 229Q96 230 92 231T85 232T79 234T73 235T69 237T66 240T65 244T64 250Q64 267 90 271Q197 295 286 361T430 525Q439 542 442 544T460 547H465Q487 547 492 539Q496 531 496 530Q496 521 471 482T414 405L404 394L733 393",10236:"65 426Q74 448 95 448Q112 448 125 426V281H130L132 280H134Q162 281 448 281H1188L1602 282Q1569 304 1530 357T1473 482Q1469 500 1469 501Q1469 512 1480 517Q1482 518 1500 518H1505Q1520 518 1523 515T1532 495Q1552 412 1611 351T1753 270Q1773 263 1773 251Q1773 240 1765 236T1732 225T1683 204Q1625 173 1586 122T1532 6Q1528 -10 1524 -13T1504 -17H1499Q1474 -16 1470 -9Q1469 -6 1469 -2Q1469 1 1473 17Q1501 138 1602 220H1188L775 221H135Q133 220 130 220H125V76Q115 54 95 54Q73 54 65 76V426",10744:"189 -210Q179 -210 170 -203T160 -179Q160 -171 162 -166Q164 -163 420 266T679 698Q686 711 704 711Q714 711 723 704T733 681Q733 672 730 667Q723 654 469 228T211 -201Q202 -210 189 -210",10799:"168 500Q168 515 178 522T195 530H198Q207 530 218 521T282 458Q312 428 331 409L447 294L563 409Q674 520 682 525Q687 529 695 529Q711 529 718 520T726 499V498Q726 489 720 481T666 427Q631 392 606 367L490 251L606 135Q717 23 721 17T726 2Q726 -9 719 -18T695 -28H692Q685 -28 674 -18T608 47Q581 74 563 92L447 207L331 91Q217 -22 208 -27Q206 -28 203 -28H197Q168 -28 168 2Q168 13 178 24T288 135L404 250L288 366Q177 479 173 485T168 500",10815:"39 655Q39 675 43 680T69 686Q110 684 225 684Q267 684 303 684T360 685T385 686Q401 686 405 680T409 651Q409 632 403 628T367 624H348H301V62H598V624H551H532Q502 624 496 628T490 651Q490 673 494 679T514 686Q518 686 558 685T675 684T792 685T836 686Q852 686 856 680T860 651Q860 632 854 628T818 624H799H752V62H799H809Q846 62 853 59T860 36V31V21Q860 6 850 2Q846 0 450 0H156Q75 0 60 1T40 11V18Q39 26 39 31Q39 54 44 58T82 63Q84 63 90 63T100 62H147V624H100H90Q53 624 46 627T39 650V655",10927:"796 54Q796 40 788 32T767 24Q741 24 735 57Q729 107 705 148T646 216T563 264T465 297T356 316T245 326T136 330H134Q96 330 96 360Q96 391 134 391H136Q193 392 239 394T347 403T457 421T556 453T643 502T703 571T735 664Q741 696 763 696Q781 696 789 686T797 667Q797 651 792 624T758 545T682 456Q605 396 481 365L462 360Q483 357 526 344T633 296T733 215Q767 173 781 128T796 54ZM119 -199Q96 -190 96 -169T116 -141Q121 -139 448 -139H775Q776 -140 779 -142T785 -146T791 -151T795 -158T797 -169Q797 -190 775 -199H119",10928:"127 24Q115 24 106 32T97 55Q97 95 124 156T211 265Q288 325 412 356L431 361Q410 363 367 376T259 425T160 506Q127 546 112 594T96 667Q96 679 104 688T126 697Q152 697 158 664Q164 614 188 573T247 505T331 456T429 424T539 405T649 395T758 391Q797 391 797 360Q797 330 761 330H758Q701 329 655 327T547 318T437 300T337 268T251 219T190 150T158 57Q151 24 127 24ZM119 -199Q96 -190 96 -169T116 -141Q121 -139 448 -139H775Q776 -140 779 -142T785 -146T791 -151T795 -158T797 -169Q797 -190 775 -199H119",12296:"127 243V259L223 491Q251 557 286 642Q318 719 324 732T340 748H341Q347 750 351 750Q365 750 373 740T382 723Q382 713 286 482L190 251Q190 249 286 20T382 -219Q382 -232 373 -240T352 -249Q332 -249 323 -229Q320 -220 223 10L127 243",12297:"64 720Q64 732 72 741T94 750Q106 750 113 743Q118 741 122 732L319 259V243L122 -231Q112 -249 95 -249Q83 -249 74 -240T64 -218Q64 -210 160 20L256 251L160 482Q64 715 64 720"},{8243:"\u2032\u2032",8244:"\u2032\u2032\u2032",8279:"\u2032\u2032\u2032\u2032",8602:"\u2190\u0338",8603:"\u2192\u0338",8622:"\u2194\u0338",8653:"\u21d0\u0338",8654:"\u21d4\u0338",8655:"\u21d2\u0338",8708:"\u2203\u0338",8716:"\u220b\u0338",8740:"\u2223\u0338",8742:"\u2225\u0338",8769:"\u223c\u0338",8772:"\u2243\u0338",8775:"\u2245\u0338",8777:"\u2248\u0338",8802:"\u2261\u0338",8813:"\u224d\u0338",8814:"<\u0338",8815:">\u0338",8816:"\u2264\u0338",8817:"\u2265\u0338",8832:"\u227a\u0338",8833:"\u227b\u0338",8836:"\u2282\u0338",8837:"\u2283\u0338",8840:"\u2286\u0338",8841:"\u2287\u0338",8876:"\u22a2\u0338",8877:"\u22a8\u0338",8930:"\u2291\u0338",8931:"\u2292\u0338"})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.bold=void 0,e.bold={33:[.705,0,.35],34:[.694,-.329,.603],35:[.694,.193,.958],36:[.75,.056,.575],37:[.75,.056,.958],38:[.705,.011,.894],39:[.694,-.329,.319],40:[.75,.249,.447],41:[.75,.249,.447],42:[.75,-.306,.575],43:[.633,.131,.894],44:[.171,.194,.319],45:[.278,-.166,.383],46:[.171,0,.319],47:[.75,.25,.575],58:[.444,0,.319],59:[.444,.194,.319],60:[.587,.085,.894],61:[.393,-.109,.894],62:[.587,.085,.894],63:[.7,0,.543],64:[.699,.006,.894],91:[.75,.25,.319],92:[.75,.25,.575],93:[.75,.25,.319],94:[.694,-.52,.575],95:[-.01,.061,.575],96:[.706,-.503,.575],123:[.75,.25,.575],124:[.75,.249,.319],125:[.75,.25,.575],126:[.344,-.202,.575],168:[.695,-.535,.575],172:[.371,-.061,.767],175:[.607,-.54,.575],176:[.702,-.536,.575],177:[.728,.035,.894],180:[.706,-.503,.575],183:[.336,-.166,.319],215:[.53,.028,.894],247:[.597,.096,.894],305:[.442,0,.278,{sk:.0278}],567:[.442,.205,.306,{sk:.0833}],697:[.563,-.033,.344],710:[.694,-.52,.575],711:[.66,-.515,.575],713:[.607,-.54,.575],714:[.706,-.503,.575],715:[.706,-.503,.575],728:[.694,-.5,.575],729:[.695,-.525,.575],730:[.702,-.536,.575],732:[.694,-.552,.575],768:[.706,-.503,0],769:[.706,-.503,0],770:[.694,-.52,0],771:[.694,-.552,0],772:[.607,-.54,0],774:[.694,-.5,0],775:[.695,-.525,0],776:[.695,-.535,0],778:[.702,-.536,0],779:[.714,-.511,0],780:[.66,-.515,0],824:[.711,.21,0],8194:[0,0,.5],8195:[0,0,.999],8196:[0,0,.333],8197:[0,0,.25],8198:[0,0,.167],8201:[0,0,.167],8202:[0,0,.083],8211:[.3,-.249,.575],8212:[.3,-.249,1.15],8213:[.3,-.249,1.15],8214:[.75,.248,.575],8215:[-.01,.061,.575],8216:[.694,-.329,.319],8217:[.694,-.329,.319],8220:[.694,-.329,.603],8221:[.694,-.329,.603],8224:[.702,.211,.511],8225:[.702,.202,.511],8226:[.474,-.028,.575],8230:[.171,0,1.295],8242:[.563,-.033,.344],8243:[.563,0,.688],8244:[.563,0,1.032],8254:[.607,-.54,.575],8260:[.75,.25,.575],8279:[.563,0,1.376],8407:[.723,-.513,.575],8463:[.694,.008,.668,{sk:-.0319}],8467:[.702,.019,.474,{sk:.128}],8472:[.461,.21,.74],8501:[.694,0,.703],8592:[.518,.017,1.15],8593:[.694,.193,.575],8594:[.518,.017,1.15],8595:[.694,.194,.575],8596:[.518,.017,1.15],8597:[.767,.267,.575],8598:[.724,.194,1.15],8599:[.724,.193,1.15],8600:[.694,.224,1.15],8601:[.694,.224,1.15],8602:[.711,.21,1.15],8603:[.711,.21,1.15],8614:[.518,.017,1.15],8617:[.518,.017,1.282],8618:[.518,.017,1.282],8622:[.711,.21,1.15],8636:[.518,-.22,1.15],8637:[.281,.017,1.15],8640:[.518,-.22,1.15],8641:[.281,.017,1.15],8652:[.718,.017,1.15],8653:[.711,.21,1.15],8654:[.711,.21,1.15],8655:[.711,.21,1.15],8656:[.547,.046,1.15],8657:[.694,.193,.703],8658:[.547,.046,1.15],8659:[.694,.194,.703],8660:[.547,.046,1.15],8661:[.767,.267,.703],8704:[.694,.016,.639],8707:[.694,0,.639],8708:[.711,.21,.639],8709:[.767,.073,.575],8710:[.698,0,.958],8712:[.587,.086,.767],8713:[.711,.21,.767],8715:[.587,.086,.767],8716:[.711,.21,.767],8722:[.281,-.221,.894],8723:[.537,.227,.894],8725:[.75,.25,.575],8726:[.75,.25,.575],8727:[.472,-.028,.575],8728:[.474,-.028,.575],8729:[.474,-.028,.575],8730:[.82,.18,.958,{ic:.03}],8733:[.451,.008,.894],8734:[.452,.008,1.15],8736:[.714,0,.722],8739:[.75,.249,.319],8740:[.75,.249,.319],8741:[.75,.248,.575],8742:[.75,.248,.575],8743:[.604,.017,.767],8744:[.604,.016,.767],8745:[.603,.016,.767],8746:[.604,.016,.767],8747:[.711,.211,.569,{ic:.063}],8764:[.391,-.109,.894],8768:[.583,.082,.319],8769:[.711,.21,.894],8771:[.502,0,.894],8772:[.711,.21,.894],8773:[.638,.027,.894],8775:[.711,.21,.894],8776:[.524,-.032,.894],8777:[.711,.21,.894],8781:[.533,.032,.894],8784:[.721,-.109,.894],8800:[.711,.21,.894],8801:[.505,0,.894],8802:[.711,.21,.894],8804:[.697,.199,.894],8805:[.697,.199,.894],8810:[.617,.116,1.15],8811:[.618,.116,1.15],8813:[.711,.21,.894],8814:[.711,.21,.894],8815:[.711,.21,.894],8816:[.711,.21,.894],8817:[.711,.21,.894],8826:[.585,.086,.894],8827:[.586,.086,.894],8832:[.711,.21,.894],8833:[.711,.21,.894],8834:[.587,.085,.894],8835:[.587,.086,.894],8836:[.711,.21,.894],8837:[.711,.21,.894],8838:[.697,.199,.894],8839:[.697,.199,.894],8840:[.711,.21,.894],8841:[.711,.21,.894],8846:[.604,.016,.767],8849:[.697,.199,.894],8850:[.697,.199,.894],8851:[.604,0,.767],8852:[.604,0,.767],8853:[.632,.132,.894],8854:[.632,.132,.894],8855:[.632,.132,.894],8856:[.632,.132,.894],8857:[.632,.132,.894],8866:[.693,0,.703],8867:[.693,0,.703],8868:[.694,0,.894],8869:[.693,0,.894],8872:[.75,.249,.974],8876:[.711,.21,.703],8877:[.75,.249,.974],8900:[.523,.021,.575],8901:[.336,-.166,.319],8902:[.502,0,.575],8904:[.54,.039,1],8930:[.711,.21,.894],8931:[.711,.21,.894],8942:[.951,.029,.319],8943:[.336,-.166,1.295],8945:[.871,-.101,1.323],8968:[.75,.248,.511],8969:[.75,.248,.511],8970:[.749,.248,.511],8971:[.749,.248,.511],8994:[.405,-.108,1.15],8995:[.392,-.126,1.15],9001:[.75,.249,.447],9002:[.75,.249,.447],9651:[.711,0,1.022],9653:[.711,0,1.022],9657:[.54,.039,.575],9661:[.5,.21,1.022],9663:[.5,.21,1.022],9667:[.539,.038,.575],9711:[.711,.211,1.15],9824:[.719,.129,.894],9825:[.711,.024,.894],9826:[.719,.154,.894],9827:[.719,.129,.894],9837:[.75,.017,.447],9838:[.741,.223,.447],9839:[.724,.224,.447],10072:[.75,.249,.319],10216:[.75,.249,.447],10217:[.75,.249,.447],10229:[.518,.017,1.805],10230:[.518,.017,1.833],10231:[.518,.017,2.126],10232:[.547,.046,1.868],10233:[.547,.046,1.87],10234:[.547,.046,2.126],10236:[.518,.017,1.833],10744:[.711,.21,.894],10799:[.53,.028,.894],10815:[.686,0,.9],10927:[.696,.199,.894],10928:[.697,.199,.894],12296:[.75,.249,.447],12297:[.75,.249,.447]}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.doubleStruck=void 0,e.doubleStruck={}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.frakturBold=void 0;var r=Q(6),T=Q(226);e.frakturBold=r.AddPaths(T.frakturBold,{33:"121 621Q121 657 132 673T177 689Q223 689 223 644V635Q223 604 222 595Q221 590 210 490T187 292T175 190V186L166 185L156 184Q156 185 139 393T121 621ZM107 47Q107 70 127 87T174 104Q201 104 221 89T241 48Q241 24 222 6T174 -12Q147 -12 127 6T107 47",34:"53 695Q74 695 90 679V622L65 433L52 432H39L27 516Q10 626 10 655Q10 680 26 688Q33 693 39 693Q49 695 53 695ZM151 668Q151 691 191 691Q217 691 224 685T231 661V652Q230 634 219 531L207 433L195 432Q183 432 183 433L168 541Q151 664 151 668",38:"290 -14Q186 -14 115 41T44 185Q44 222 54 249T88 300T131 336T189 371Q216 387 216 388Q185 459 185 510Q185 563 206 601T263 659T334 687T405 696Q476 696 503 668T531 603Q531 565 513 536T450 476Q423 459 370 432L334 413L354 384Q474 212 560 139L563 137Q611 185 611 250Q611 295 577 329Q549 356 496 357Q439 357 433 354Q432 354 432 379V403L437 402Q443 402 479 401T557 400Q653 400 735 403T831 407H836Q833 352 833 351L821 352Q809 352 792 352T756 352T720 353T696 354Q680 354 680 353L681 346Q682 339 683 327T685 306Q685 283 681 260T669 218T653 182T635 152T619 129T606 114L602 109Q604 107 618 99T659 81T707 71Q742 71 767 99T804 155L815 183Q815 184 821 183T833 180T839 177Q837 169 834 156T816 110T782 52T727 5T648 -16Q569 -16 499 35H498Q496 35 466 23T387 -1T290 -14ZM418 592Q418 617 398 639T352 661T302 642T278 574Q278 545 288 514T306 465T319 444Q342 456 353 463T382 488T409 529T418 584V592ZM159 239Q159 158 222 98T364 38Q386 38 447 57L469 63L434 98Q349 185 286 275Q258 316 238 345Q233 353 232 353Q159 316 159 239",39:"80 645T80 662T93 687T123 695Q158 695 158 659Q158 649 157 643L123 437Q123 436 114 436H104Q104 442 92 538Q80 645 80 662",40:"347 719Q325 708 311 698T272 656T233 580T207 455T195 267Q195 30 247 -79Q261 -110 291 -136Q320 -163 347 -172V-179Q347 -186 344 -186Q338 -186 328 -184T287 -165T230 -123Q134 -25 134 271Q134 417 158 514T226 662T335 734L346 737Q347 737 347 728V719",41:"264 262Q264 366 253 446T226 572T186 649T145 692T105 714V725Q105 735 107 735Q108 734 121 731T154 719T196 692T242 641T284 560T314 437T326 268Q326 112 299 7Q279 -78 239 -124T116 -185L105 -187V-179L106 -171L109 -169Q130 -161 138 -158T165 -146T190 -127T210 -101T229 -64T243 -12T255 58T261 148T264 262",42:"40 516L62 529Q85 542 110 556T140 574L126 582Q112 591 104 595T80 607T40 629Q53 642 57 645L65 652L78 642Q106 620 132 603L152 589V595Q152 630 149 681V692H179V689Q178 681 174 638T171 593Q173 593 240 639L258 652Q260 652 267 643L276 633L260 625Q190 587 175 576Q173 575 180 570Q183 569 186 567Q213 549 256 527L277 515L256 495Q246 501 228 515T194 539T170 554V543Q170 486 178 449H148V456Q152 492 152 550L151 562Q150 562 102 528L53 495Q40 514 40 516",43:"422 584L471 598Q472 598 472 440V282H837Q833 273 829 263L821 244L647 243H472V-63L448 -73L423 -82Q422 -82 422 81V243H239Q56 243 56 244Q60 253 65 263L73 282H422V584",44:"118 61Q118 80 135 93T169 107Q190 107 221 65T253 -23Q253 -39 251 -49T237 -80T198 -133Q148 -191 144 -191Q142 -191 137 -182T132 -172Q143 -161 160 -131T183 -83Q185 -77 185 -62Q185 -54 184 -48T182 -38T177 -28T171 -19T162 -8T150 6Q130 28 124 38T118 61",45:"54 236L73 275H453Q833 275 833 274Q830 265 825 255L818 236H54",46:"103 23T103 44T120 83T170 102Q200 102 218 84T237 44Q237 20 216 3T168 -15Q138 -15 121 4",47:"272 270Q503 721 506 721L509 720Q512 720 518 719T529 717L550 713L91 -181L66 -182Q41 -182 41 -181L272 270",48:"238 -12Q162 -12 102 42T42 185Q42 303 130 393Q163 425 208 452T284 490L313 501Q323 499 339 495T395 472T464 426Q533 357 533 273Q533 201 483 133T364 27T238 -12ZM428 208Q428 255 402 297T342 365T280 404T241 419Q214 419 178 374T142 259Q142 206 168 164T225 99Q259 74 310 74Q326 74 337 75T366 82T396 103T417 141Q428 171 428 208",49:"95 481Q102 481 217 485T383 489Q384 489 384 485Q367 397 367 165Q367 58 369 54Q374 46 380 44T410 42H466H546V40Q547 38 547 19L548 0H54V23Q54 29 54 34T54 44L55 47Q79 47 134 46T202 45Q226 45 234 52Q240 57 241 64T245 105Q254 236 254 320V347Q254 369 252 382T240 409T211 431L97 450L96 465Q95 480 95 481",50:"307 335Q307 374 283 397T224 421Q187 421 112 387Q105 384 100 382T95 381Q90 387 86 394L77 407L86 413Q219 491 298 491Q370 491 399 460T428 388Q428 373 424 358T409 326T391 297T363 264T335 235T301 202T269 171L199 104Q194 99 205 97Q209 96 214 96Q527 105 544 105Q553 107 563 102Q563 100 557 79T545 34T537 2H377Q338 2 247 2T130 4H44V26L104 77Q185 145 212 172T267 235Q307 291 307 335",51:"102 402L108 408Q115 413 122 418T141 431T165 447T194 461T227 474T263 483T302 487H307Q413 487 452 420Q465 400 465 371Q465 334 445 303T396 253T347 225T317 213Q314 213 314 211Q316 209 316 205Q317 201 320 201Q337 201 359 198T411 184T465 156T506 109T523 39Q523 -62 436 -127T229 -193Q179 -193 130 -178T56 -150T31 -133Q31 -132 41 -122L52 -112L63 -117Q128 -148 201 -148Q282 -148 331 -104T381 20Q381 71 363 100T304 145Q243 166 149 166H137V204H146Q179 204 211 210T275 229T326 268T346 329Q346 372 314 401Q292 423 245 423Q188 423 125 383L102 402",52:"346 -196Q344 -196 335 -187L336 -148Q337 -127 337 -55V0H13V29L187 253Q362 477 362 479L368 480Q375 481 387 483T411 487T434 491T452 494L459 495Q460 495 470 482V453Q470 389 466 230T461 62Q461 61 513 61T565 60L555 29L546 -1H461V-15Q461 -48 463 -100T465 -154L457 -157Q449 -160 434 -165T405 -175Q347 -196 346 -196ZM339 265V341Q339 362 335 362Q327 362 219 217T110 65V61H337V117Q338 133 338 187T339 265",53:"232 192Q176 192 122 152L95 162V481H306Q516 481 516 479Q514 477 501 433L486 389L319 388H152V386V382Q152 379 152 374T151 365Q147 329 146 260V218H149Q211 242 284 242Q353 242 402 224T474 176T508 117T518 55Q518 -62 432 -126T220 -190Q184 -190 151 -185T96 -172T57 -157T31 -145T20 -139T19 -138Q19 -136 27 -125L35 -112L51 -120Q114 -152 174 -152Q257 -152 314 -100T371 46Q371 107 340 149T232 192",54:"48 251Q48 330 76 403T150 529T253 623T370 683T485 704Q494 704 520 701T547 695Q547 692 542 659T536 625Q531 624 524 624L512 623L502 628Q489 635 468 640Q452 645 423 645Q403 645 379 640T320 617T255 568T201 481T171 348Q170 341 170 330V325L183 333Q275 385 357 385H361Q464 385 514 312Q546 267 546 217Q546 127 457 58T262 -12Q225 -12 189 3T120 49T68 132T48 251ZM448 165Q448 228 406 274T289 320Q264 320 236 312T190 295T173 284Q173 266 176 241T189 178T214 112T259 61T326 39Q372 39 410 75T448 165",55:"57 376L87 479H591V455L584 446Q544 399 491 328T349 117T185 -169L171 -196H159Q152 -197 102 -197Q58 -197 58 -196T56 -185L54 -175L299 158L443 359Q446 367 444 370H254L71 365L57 376",56:"88 533Q88 573 120 610T194 668T268 701T307 714Q324 714 352 711T422 695T486 659Q518 625 518 585Q518 536 479 489T384 406L371 398L385 390Q387 389 400 382T420 370T442 356T466 339T489 319T510 295T526 269T538 238T542 204Q542 125 463 60T256 -5Q145 -5 92 52Q45 97 45 165Q45 204 64 237T109 290T163 324T209 345T228 353L214 364Q199 375 179 392T138 431T103 480T88 533ZM405 557Q405 568 402 581T387 612T350 644T286 663Q283 663 280 663T274 664H272Q256 664 228 636T199 572Q199 547 238 507Q268 475 320 437L334 427Q345 433 358 443T388 483T405 549V557ZM304 42Q366 42 398 76T431 155Q431 178 420 200T396 238T359 270T321 296T283 318L263 328Q262 328 230 312Q190 290 175 266T160 198Q160 132 202 87T304 42",57:"549 220Q549 23 429 -82T105 -195H84V-189Q84 -179 85 -174V-164H93Q184 -156 238 -132T334 -56Q361 -23 376 16T394 78L397 100L363 88Q329 75 291 61T244 45Q237 44 218 44Q154 44 94 97Q29 152 29 240Q29 350 108 404Q145 429 257 480Q270 487 279 487Q403 487 470 421Q549 347 549 220ZM408 217Q408 276 390 320T346 385T297 415T259 424Q218 424 185 393T151 286Q151 216 213 154Q252 115 321 115Q368 115 388 134T408 217",58:"57 398Q57 419 72 438T117 457Q154 457 174 439T194 398Q194 379 176 361T119 343Q85 343 71 362T57 398ZM62 19T62 43T77 85T115 104Q153 104 175 86T197 42Q197 14 171 1T119 -12Q96 -12 79 3",59:"56 399Q56 424 73 440T104 456Q114 458 120 458Q149 458 170 440T192 399Q192 380 174 362T120 344Q85 344 71 362T56 399ZM78 53Q78 67 84 76T90 86Q90 88 98 92T116 98Q117 98 121 98T128 99Q152 97 181 58T211 -24Q211 -77 128 -165Q124 -170 121 -173T116 -178T113 -181T110 -185T106 -190L97 -184L88 -177L95 -168Q143 -104 143 -65Q143 -51 137 -40T113 -7T81 35Q78 41 78 53",61:"559 342L549 304H22L27 319Q29 328 30 333T33 343H296Q559 343 559 342ZM559 206L549 168H22L27 183Q29 192 30 197T33 207H296Q559 207 559 206",63:"121 590Q121 575 128 562T144 542T152 533T115 512L78 491Q55 499 47 516Q40 530 40 553Q40 601 77 632Q155 697 257 697H268Q316 697 355 679Q422 646 422 576Q422 518 388 476Q383 468 376 461T358 444T340 428T316 410T290 390L230 344Q180 307 180 275Q180 261 187 248T202 227L209 219Q209 215 176 193L142 170Q114 177 100 194T84 226V239Q84 259 93 276T113 302T150 331T192 362Q203 370 219 382T247 403T267 422Q312 471 312 546Q312 593 282 623T207 653Q170 653 146 636T121 590ZM95 23T95 49T117 94T173 113Q204 113 223 96T242 54Q242 27 221 7T167 -14Q136 -14 116 4",91:"226 711T225 711T86 699V-93H89Q94 -93 157 -96T223 -100H226V-119H223Q134 -119 42 -130H36V740H42Q61 738 156 736H226V723Q226 711 225 711",93:"69 732Q116 733 146 734T184 736T197 737T206 738H208V-132Q190 -129 160 -127T99 -125T66 -124H14V-103H19Q20 -103 84 -98T152 -92H158V699H151Q148 700 85 703T18 708H14V732H69",94:"1 463T1 464T148 599T296 734Q584 486 584 485L561 472Q538 459 537 461Q296 672 293 672L161 563Q133 539 97 509T44 466L28 452Q27 452 14 457",8216:"187 456Q187 437 169 424T138 411Q114 411 84 454T53 538Q53 565 75 597Q109 648 155 697L166 708L181 694L173 681Q124 610 124 577Q124 549 155 511T187 456",8217:"125 524Q125 545 92 588T58 651Q58 661 61 667Q65 674 80 683T107 692Q131 692 162 645T193 564Q193 540 176 509T144 460T87 394L78 400L68 406L79 421Q125 489 125 524",8260:"272 270Q503 721 506 721L509 720Q512 720 518 719T529 717L550 713L91 -181L66 -182Q41 -182 41 -181L272 270",58113:"388 427Q320 485 242 524T128 563H116Q95 563 87 561L77 559Q72 563 69 566T65 570T65 572L75 576Q106 592 154 611T212 630Q230 630 262 622T358 581T492 498L508 486Q512 463 512 396Q512 246 469 112L465 102Q453 94 341 25Q252 -27 247 -27Q243 -27 174 24T97 84Q90 100 90 214Q90 285 98 345Q100 360 102 363T118 377Q175 422 262 465Q264 463 270 460L277 456Q277 455 267 447T244 428T228 414Q206 382 206 269Q206 187 214 164T259 110Q286 89 342 58Q391 131 391 313Q391 355 388 412V427",58114:"39 362L37 366L38 368L82 405H133V474Q135 563 143 589T198 658Q210 669 224 676T247 687L255 690H253Q241 690 253 692Q254 692 256 692T260 693Q263 693 262 691L261 690Q300 690 361 662L373 656L388 666Q404 675 405 675L406 674Q406 672 406 670T406 664L408 655L301 555Q300 555 287 564T254 584T221 597Q190 597 176 583T161 550Q161 525 184 495T232 440T261 405H387V399Q377 389 364 379L340 359H258V315Q258 52 228 -18L172 -120L121 -211H109Q102 -212 96 -212L109 -174Q131 -108 135 -80T139 53V76V157V362H39",58115:"41 352Q40 354 39 355T37 358L36 360H37Q48 370 61 380L84 400H108Q131 400 131 402Q121 424 104 501L100 519Q109 560 134 602T196 664Q230 681 271 681Q291 681 316 669T358 644L373 631Q373 630 304 553Q299 548 294 547Q292 547 290 546H287Q286 546 274 562T243 593T205 609Q180 609 165 596T150 562Q150 526 191 488L217 462Q248 431 253 405V400H381L384 394L349 352H251V332Q249 271 231 17L227 -37L120 -217L109 -218Q103 -219 97 -219Q97 -218 101 -206T110 -177T118 -151Q126 -129 128 -120T136 -46T141 127Q141 250 136 340V352H41",58116:"107 370Q127 384 172 409T255 454T294 473L306 468Q356 446 425 431L435 429L524 468Q528 465 531 461Q499 395 499 271V263Q499 146 509 71T519 -8Q519 -28 512 -45Q510 -50 435 -123T355 -197Q296 -212 257 -212Q209 -212 164 -196T98 -167T67 -143L133 -44H144Q167 -88 216 -111T320 -134Q371 -134 390 -118T410 -69Q410 -52 404 -12T392 60T385 92L193 -29L158 5Q124 39 110 51L96 63V71Q94 79 94 121Q94 130 94 148T93 174Q93 230 96 275T103 344T107 370ZM221 397Q200 334 200 254Q200 170 210 140Q216 126 234 109T268 81L283 71L383 119V127Q384 132 384 241L385 347L368 349Q325 357 290 369T240 389T221 397",58117:"103 453Q103 631 95 661Q95 663 102 667T110 672L114 664Q117 655 123 641T131 621L140 597L154 606Q208 641 275 673L297 684Q300 683 302 682T307 679T310 678L314 676Q283 658 256 625Q238 601 231 579T223 515L224 512L282 548Q339 583 341 583T365 548T386 509Q326 443 318 443L316 446Q314 448 311 452T304 460T294 470T283 480T272 488T260 494T248 497Q231 497 223 474Q220 468 218 440T215 407V401H345L309 360H218V314Q218 181 221 139V129L253 108Q306 73 310 73Q315 73 343 83L373 92L374 87Q375 82 375 79T375 74T360 65T308 36T229 -13L208 -27L192 -13Q149 24 90 61Q89 61 89 62L90 68Q91 73 93 87T97 125T100 191T103 291V360H33V366L34 371L85 405H94L103 404V453",58120:"602 575Q505 508 505 489Q505 488 505 482T506 463T507 432Q507 314 456 237L449 226L434 216Q420 208 325 143L316 137Q453 82 488 82Q527 82 585 127L596 136Q597 136 599 126L602 115Q578 85 511 27T428 -31Q400 -31 308 10T170 51Q143 51 123 43T92 24T54 -15L34 6L41 14Q65 41 170 129L188 144L204 145Q254 147 293 164T350 208Q378 249 378 344Q378 422 362 478T320 563T268 605T213 618Q177 618 156 600T134 561Q134 539 162 508T217 446T245 394Q245 368 213 337T85 250L62 262Q73 269 86 279T116 308T133 338T108 378T57 439T32 499Q32 556 117 617T291 679Q350 679 393 658Q415 647 433 631T462 600T480 572T490 550T494 541T499 544T516 556T547 578T603 613T689 662L720 679L730 670Q742 659 756 649T785 629T810 615T836 601T855 590Q855 587 860 536T870 419T875 312Q875 114 800 -25Q794 -35 781 -47Q584 -220 398 -220Q322 -220 278 -190Q253 -173 239 -155L244 -150Q248 -145 255 -138T271 -120T290 -100T310 -80T328 -63T341 -51T349 -46Q350 -46 351 -46T354 -47Q357 -47 357 -52Q359 -68 364 -83T383 -118T424 -151T491 -166Q559 -166 613 -129Q629 -118 641 -108T674 -68T710 1T735 107T746 260Q746 433 727 507Q727 512 685 535T615 570L602 575",58121:"351 571Q317 571 247 563T171 555Q153 555 133 563T107 584Q94 605 98 609Q101 615 138 658T190 717H207Q204 710 204 699Q204 673 231 666Q235 665 264 665Q296 665 345 667T426 669Q474 669 501 660T545 626Q553 612 553 594Q553 531 498 474T379 384Q371 379 371 378Q371 376 390 376H411H434Q520 376 602 318Q621 303 627 288T633 234Q633 59 540 -34Q465 -109 348 -130Q308 -137 235 -137Q159 -136 143 -129Q132 -125 132 -118V-53Q118 -24 90 -24Q69 -24 37 -39L27 -44L25 -42Q23 -39 21 -35T17 -30Q17 -28 40 -14T103 19T177 44Q183 45 205 45Q219 45 227 44T245 37T259 20T264 -12Q264 -33 262 -48T259 -80Q259 -93 260 -95Q271 -110 305 -110Q343 -110 383 -86T443 -33Q491 34 491 154Q491 223 467 249Q428 288 334 288H322Q288 288 237 276L222 273L206 286L262 367Q279 369 303 377T358 403T410 452T431 524Q431 531 431 533T427 545T416 558T392 566T351 571"},{})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.frakturBold=void 0,e.frakturBold={33:[.689,.012,.349],34:[.695,-.432,.254],38:[.696,.016,.871],39:[.695,-.436,.25],40:[.737,.186,.459],41:[.735,.187,.459],42:[.692,-.449,.328],43:[.598,.082,.893],44:[.107,.191,.328],45:[.275,-.236,.893],46:[.102,.015,.328],47:[.721,.182,.593],48:[.501,.012,.593],49:[.489,0,.593],50:[.491,0,.593],51:[.487,.193,.593],52:[.495,.196,.593],53:[.481,.19,.593],54:[.704,.012,.593],55:[.479,.197,.593],56:[.714,.005,.593],57:[.487,.195,.593],58:[.457,.012,.255],59:[.458,.19,.255],61:[.343,-.168,.582],63:[.697,.014,.428],91:[.74,.13,.257],93:[.738,.132,.257],94:[.734,-.452,.59],8216:[.708,-.411,.254],8217:[.692,-.394,.254],8260:[.721,.182,.593],58113:[.63,.027,.587],58114:[.693,.212,.394,{ic:.014}],58115:[.681,.219,.387],58116:[.473,.212,.593],58117:[.684,.027,.393],58120:[.679,.22,.981],58121:[.717,.137,.727]}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.fraktur=void 0;var r=Q(6),T=Q(228);e.fraktur=r.AddPaths(T.fraktur,{33:"102 582T102 620T112 673T152 689Q190 689 190 638Q190 605 167 373L148 187L133 184Q102 582 102 620ZM91 24T91 48T107 88T148 104Q171 104 187 87T204 48Q204 22 188 5T149 -12Q124 -12 108 6",34:"33 436Q8 603 8 648Q8 663 9 671T19 687T43 695Q63 695 74 681Q76 678 76 650V623L66 532Q57 443 55 436V432H33V436ZM128 666Q128 691 162 691T196 668Q196 634 186 531Q176 441 176 432H166Q155 432 155 434L142 545Q135 603 130 647Q128 664 128 666",38:"181 520Q181 604 231 650T328 697L330 698Q333 698 335 698Q336 698 340 698T346 697Q390 697 418 670T446 604Q446 554 414 511Q384 467 300 417L283 406Q281 405 296 374T347 286T425 182Q466 135 469 135Q470 135 473 140T480 152T486 165Q509 210 509 263Q509 282 507 292Q498 317 488 332T465 352T443 359T418 361Q388 361 357 358L346 356L347 374Q347 394 348 396V399H355Q366 396 535 396Q663 396 689 398L703 399Q703 398 702 375T700 351L688 353Q655 356 601 357Q553 357 553 355Q562 332 562 294Q562 280 561 267T555 241T548 218T539 195T529 175T518 156T508 141T497 126L489 115L496 107Q549 54 596 54Q623 54 644 67T677 101T697 140T708 174L710 187Q710 188 710 188L711 190Q714 190 723 187T733 183Q733 179 732 172T726 145T714 107T694 66T665 27T623 0T569 -11Q500 -11 443 41L434 49L425 42Q348 -9 275 -9Q251 -9 233 -6Q187 -1 152 18T98 60T67 111T52 159T49 195Q49 231 60 261T96 315T141 354T197 390L208 397Q181 459 181 520ZM374 577Q374 607 356 629T311 651Q289 651 271 636Q242 614 242 559Q242 533 249 502T262 453T270 435T279 440T298 453T314 464Q374 503 374 577ZM127 217Q127 145 173 89T291 32Q318 32 347 42T393 63T409 75Q384 100 325 184T227 351Q223 366 220 366Q215 366 178 338Q127 298 127 217",39:"69 666Q69 680 79 687T104 695Q112 695 117 694T128 684T134 659L104 438Q104 436 96 436T88 438Q88 447 79 540T69 655V666",40:"293 737V719Q291 718 285 714T276 708T268 702T258 695T250 686T241 674Q164 570 164 282Q164 -37 230 -119Q273 -171 292 -171Q293 -171 293 -179V-186H289Q270 -180 259 -175Q175 -132 145 -23T114 275Q114 491 157 598T293 737",41:"223 259Q223 386 212 474T178 609T136 677T89 714V735Q121 726 139 713Q276 622 276 273Q276 98 246 -23Q225 -106 189 -139T89 -187V-170L101 -165Q148 -146 172 -110T210 13T223 259",42:"118 573Q118 575 76 602L34 629L50 647L55 652L66 642Q76 633 91 620T117 598L128 590Q128 663 125 687V692H151V689V687Q151 685 151 683T150 678T150 672Q145 628 144 605V592L219 652L232 634Q232 632 220 624Q195 610 155 582L146 575L158 567Q178 552 197 540T225 523T233 516Q233 515 226 506T217 495L152 549L143 555V530Q144 509 145 492T148 466T149 454Q149 449 142 449H125V462Q128 522 128 549V562L115 552Q88 531 59 506L45 495Q44 495 39 505T34 516L118 573",43:"357 584L399 598V282H709L702 263L696 243H399V-64L379 -73L358 -82Q357 -82 357 81V243H47L51 253Q52 256 54 263T58 272L62 282H357V584",44:"99 62Q99 82 114 94T144 107Q159 107 178 77T205 26Q213 5 213 -23Q213 -49 207 -65T181 -113Q128 -189 122 -191Q121 -191 116 -184T111 -174Q111 -173 122 -155T145 -111T156 -62Q156 -44 152 -34T127 4L104 37Q99 49 99 62",45:"46 236L62 274Q62 275 384 275H706L699 255L693 236H46",46:"87 43Q87 69 104 85T142 102Q164 102 182 86T200 44Q200 20 183 3T141 -15Q118 -15 103 2T87 43",47:"230 270Q426 721 428 721Q437 719 447 717L466 713L448 672Q78 -180 77 -181Q77 -182 55 -182L34 -181L230 270",48:"212 -13Q184 -13 156 -2T101 32T59 97T42 195Q42 311 132 396Q170 433 211 462T262 492Q272 492 301 477T366 434T429 360T456 258Q456 161 378 74T212 -13ZM381 209Q381 257 365 295T328 355T282 390T243 408T223 413Q220 413 204 403T167 376T137 341Q119 305 119 250Q119 168 159 114T263 59Q308 59 344 93T381 209",49:"123 459Q145 459 170 460T217 462T256 464T284 466L295 467Q296 467 296 467T297 468Q299 468 302 466T307 462L309 459Q307 454 304 424T299 341T297 235Q297 139 298 101T302 55T313 44Q316 43 367 43L460 46Q460 35 459 22V-1H450Q402 2 281 6Q222 6 171 4T91 1T56 -1L47 -2V43H121H170Q195 43 201 45T209 56Q212 69 212 214Q212 333 209 365T194 409Q183 417 161 423T121 430L104 432Q103 432 103 446V459H123",50:"104 384Q115 394 133 409T199 449T281 474Q321 474 351 447T385 378Q385 328 333 255T228 127T176 72Q176 67 183 65Q184 65 203 65T260 67T331 69L475 73L484 67Q484 64 472 33L460 1H60V17L107 61Q210 159 249 208Q309 283 309 331Q309 363 285 389T228 415Q212 415 184 403T134 379L114 367L104 384",51:"305 328Q305 372 279 396T214 421H211Q172 421 128 384L107 398L116 405Q151 437 191 455T251 473H260Q314 473 341 455T382 394Q384 386 384 367T382 338Q362 263 271 217L256 210L257 206L259 202Q260 202 272 201T296 198T324 192T355 179T384 157T410 123T427 75Q429 64 429 41Q429 -59 353 -120T183 -182L88 -164Q81 -162 69 -157T48 -147T39 -141Q39 -139 46 -127L53 -114L69 -122Q129 -149 171 -149Q218 -149 253 -131T305 -83T330 -26T338 29Q338 41 336 55T328 89T308 127T273 153Q228 171 162 171Q158 171 152 171T142 170H127V204H134Q232 214 275 257Q305 292 305 328",52:"299 -179Q306 -156 306 -48V0H11V7Q10 10 10 18Q10 23 154 236L298 449Q298 450 339 463L379 476Q385 473 384 470V466Q384 463 384 457T384 444T383 427T383 408Q381 328 381 248Q381 46 384 40H387Q422 40 460 44Q465 44 470 44T478 44L481 45Q481 43 478 24T473 1Q473 -1 464 -1Q462 -1 451 -1T430 0H387V-76L389 -156V-161L311 -191Q299 -181 299 -179ZM299 364H287L277 352Q234 297 186 224T112 104T79 43Q79 42 192 42H306V115Q306 300 299 359V364",53:"334 25Q334 99 296 134T207 169Q154 169 107 123L98 114L89 120L80 125V458H420Q420 456 409 418L397 379Q397 378 264 378H131Q130 377 128 376T125 374T124 371T122 368T122 363T121 356T121 345V279V190L130 186L140 190Q196 214 260 214Q311 214 348 197T404 153T431 99T440 42T433 -16T406 -76T356 -130T276 -169T163 -184H156Q110 -184 57 -163L47 -159L53 -147L58 -134Q61 -134 74 -139T110 -148T156 -153Q206 -153 243 -135T299 -87T326 -30T334 25",54:"45 240Q45 328 73 406T143 536T235 626T327 681T399 699Q400 699 404 699T411 700Q424 700 441 696T459 689Q459 671 451 637Q451 633 447 632L444 629L434 633Q413 640 384 640H377Q299 640 222 565Q182 531 156 463T129 315V306H136L149 315Q229 376 316 376H318Q393 376 432 326T471 213Q471 129 402 58T237 -13T93 59T45 240ZM391 172Q391 231 354 272T258 314Q230 314 200 302T154 279T133 262L134 249Q154 32 266 32Q315 32 353 64T391 172",55:"395 377L391 382H225Q59 382 59 383L74 423Q89 464 89 465Q90 468 94 468Q146 460 350 458H498V442L473 406Q241 75 125 -156L113 -181H40L37 -168L57 -140Q115 -58 199 70T339 287T395 377",56:"220 -10Q168 -10 131 6T75 50T48 103T40 157Q40 223 77 266Q103 295 156 328T225 375Q247 393 247 394L206 361Q205 361 193 368T164 391T131 426T102 474T90 531Q90 580 114 615Q146 660 238 698L254 705L262 704Q288 704 332 693T402 656Q434 620 434 568Q434 518 401 475T321 402L305 391L336 368Q339 366 353 356T372 343T389 330T406 316T420 301T434 283T445 265T454 244T458 222T461 195Q461 106 389 48T220 -10ZM350 545Q350 578 337 601T304 634T266 649T234 653L224 654L204 639Q196 634 191 629T182 621T176 614T173 609T170 603T168 597Q165 585 165 567Q165 497 261 424L273 415Q350 467 350 545ZM261 405L263 407Q262 407 261 405ZM258 403Q257 403 255 401L254 399L256 400Q258 402 258 403ZM252 398Q251 398 249 396L248 394L250 395Q252 397 252 398ZM245 36Q276 36 300 45T338 69T360 102T371 136T374 168Q374 211 341 255Q324 275 305 289T235 332Q231 330 215 321T193 307T173 292T153 271T138 247T127 216T123 177Q123 146 132 117T170 62T245 36",57:"353 93T352 93T320 79T251 49T201 34Q127 37 87 79Q28 138 28 234Q28 273 37 304T60 355T101 396T152 429T218 462L234 469H243Q348 461 395 417Q466 348 466 201Q466 72 397 -29T211 -163Q155 -179 91 -182H72V-154H80Q144 -154 202 -131T297 -60Q318 -31 333 7T352 68L357 92Q353 93 352 93ZM369 208Q369 240 362 272T339 339T290 394T214 415Q171 415 144 372T116 266Q116 193 154 144T238 95H249Q369 95 369 208",58:"50 377T50 400T64 440T99 457Q128 457 146 440T165 399Q165 375 146 359T102 342T64 359ZM53 19T53 43T66 86T103 105Q129 105 148 87T168 41Q168 17 147 3T102 -12Q80 -12 67 3",59:"47 399Q47 424 62 441T101 458T143 442T162 400T144 359T101 343Q78 343 63 360T47 399ZM76 86Q76 88 80 91T91 96T106 99Q119 99 131 86Q179 35 179 -25Q179 -64 146 -115T89 -189Q86 -187 83 -185T79 -182T76 -180T75 -177T77 -173T80 -168Q121 -108 121 -64Q121 -44 94 -5T66 52Q66 66 71 75T76 86",61:"725 366Q724 365 721 349T716 331V329H385Q54 329 54 331Q55 332 59 349T63 368H394Q725 368 725 366ZM725 169Q724 168 721 152T716 134V132H385Q54 132 54 134Q55 135 59 152T63 171H394Q725 171 725 169",63:"46 557Q46 613 103 653T227 693Q287 693 322 659T357 564Q357 517 326 469T259 390T191 326T160 272Q160 240 187 221Q193 217 193 216Q182 209 170 200L147 184Q127 192 113 209T98 250Q98 290 193 376Q287 454 287 542Q287 581 262 616T188 652Q143 652 126 631T108 588Q108 559 140 527L79 490Q46 515 46 557ZM108 47Q108 68 123 85T160 103Q179 103 198 90T217 46Q215 24 201 7T164 -11Q142 -11 125 6T108 47",91:"262 -119Q224 -120 191 -123T141 -128T118 -130Q117 -130 117 305V740H122Q141 737 219 736H278V723Q278 711 277 711L159 699V-93H162Q167 -93 220 -96T276 -100Q278 -100 278 -109V-119H262",93:"64 733Q89 733 110 734T143 737T158 738H160V-131H154Q101 -125 40 -124H-4V-103H1Q3 -102 57 -98T113 -92H118V700L64 703Q7 707 3 708H-4V732H21Q34 733 64 733",94:"0 464L250 734L262 722Q274 712 384 598L495 486Q483 478 467 467L456 459L248 672L154 580L23 452Q17 454 10 458T0 464",8216:"117 410Q97 410 71 455T45 539Q45 588 129 694L140 708Q142 708 153 694L147 682Q106 609 106 582V577V571Q106 548 132 511T158 455Q158 434 143 422T117 410",8217:"105 529Q105 546 77 588T49 651Q49 658 51 666Q53 672 67 682T92 692Q111 692 137 644T163 563Q163 534 143 497T99 428T74 395Q72 395 65 400T58 407Q105 476 105 523V529",8260:"230 270Q426 721 428 721Q437 719 447 717L466 713L448 672Q78 -180 77 -181Q77 -182 55 -182L34 -181L230 270",58112:"427 436Q427 434 427 425T429 398T430 362Q430 222 396 109L393 99L305 33Q218 -32 216 -32Q208 -29 142 22L91 68L78 81L77 94Q75 130 75 173Q75 245 87 347L135 385Q178 418 184 424L177 428Q174 429 170 431Q116 454 96 473T75 534Q79 608 154 683Q164 677 164 673Q164 670 157 662T144 637T137 598Q137 552 182 518T280 470T380 447T427 436ZM342 371L275 394L208 417Q203 417 192 399T168 334T156 229Q153 187 153 157Q153 141 156 135Q158 125 208 88T280 51Q306 51 326 120T346 297Q346 339 344 354T342 371",58113:"39 551L35 569L52 577Q72 586 98 595T140 610T158 616Q174 612 200 604T293 560T412 477Q414 475 417 472Q428 462 430 450T432 376Q432 223 401 124Q395 106 393 103T382 92Q351 68 281 20T206 -29Q201 -31 137 26L100 60L78 83L77 112Q76 132 76 170Q76 259 86 342L88 360L101 371Q116 386 163 422T215 459Q216 459 224 455T233 450L229 446Q225 442 218 434T203 419Q179 394 175 389T168 372Q156 334 156 262Q156 167 164 137Q168 125 196 102T252 62L278 45Q279 45 285 52T302 78T322 126T339 205T346 316Q346 367 344 389L343 406L326 423Q228 520 113 559L100 564L70 557L39 551",58114:"123 386L120 431Q116 476 116 511V520Q116 593 174 649Q207 680 236 680Q258 680 284 664T312 648Q318 648 327 656Q328 657 330 659Q337 664 337 661Q337 660 338 657Q338 652 339 648L268 566L260 574Q234 600 206 600Q182 600 164 585T145 541Q145 492 211 386L267 385H324L299 354H214V312Q214 86 193 -58L192 -69L116 -215H108Q92 -215 92 -212Q93 -211 100 -189T116 -135T128 -80Q134 -41 134 22Q134 54 130 185T125 349V354H29L59 385H91Q123 385 123 386",58115:"91 530Q91 564 116 600T164 656T194 678Q195 678 200 678T209 679Q268 679 316 639L293 593Q267 547 263 546H262Q260 546 256 553Q222 613 180 613Q160 613 146 599T132 564T170 474T210 388H318L296 356H206V322Q204 284 204 255Q202 221 202 161V99Q202 28 194 -22T160 -124Q148 -146 116 -199L101 -224L91 -220Q85 -218 84 -217T83 -215L101 -161Q116 -114 119 -73T122 108Q119 334 117 352V356H72L28 357L66 388H92Q118 388 118 389L109 433Q91 514 91 530",58116:"254 -150Q293 -150 328 -126T363 -54Q363 -38 352 29T339 98L250 34Q160 -30 159 -30L77 64V71Q74 95 74 174Q74 212 75 243T79 294T83 328T87 352T90 366L117 384Q206 446 238 464L250 471Q277 455 306 443T350 427L365 423Q367 423 405 443T443 465L449 455Q431 414 426 362T418 201Q418 135 420 121Q438 -4 438 -19Q438 -26 438 -31T434 -42T429 -51T420 -63T408 -77T391 -95T370 -119T346 -147T325 -170T309 -187T291 -200T274 -207T252 -213T225 -214Q175 -214 132 -196T70 -160L52 -143Q52 -138 90 -48Q90 -47 95 -47H101Q108 -81 146 -115T254 -150ZM341 136Q341 157 344 242T347 348V355L334 356Q299 359 262 367T203 383T179 391Q177 391 173 377T163 323T158 227Q158 164 161 128V121L174 106Q203 75 223 59L341 127V136",58117:"92 446Q92 603 82 664Q94 670 95 670L96 666Q98 661 101 651T108 633Q121 598 121 597L141 612Q247 686 250 686Q251 686 266 679Q261 674 243 659T213 632T190 597T173 546Q172 541 171 530T170 511T170 502Q171 502 222 542L273 582Q308 522 315 504L279 449L269 462Q231 506 215 506Q202 506 190 490Q164 458 164 395V390H279L266 373L254 355H167V306Q169 252 169 217Q170 195 170 147V117L200 92Q234 64 237 64Q243 64 277 81L311 99V75Q310 75 242 27L174 -20L156 -3Q88 60 81 60L79 62Q80 60 82 62Q87 67 87 290V355H57L26 356L73 390H92V446",58118:"117 531Q117 533 137 544T178 566L198 577Q200 577 204 575T208 572V570Q208 568 208 566T207 560Q197 496 197 397V392H321L295 353H199V260Q199 157 200 145V122L269 68Q271 67 274 67Q282 67 310 83T342 100Q343 100 345 92T346 83L211 -21L172 12Q117 59 117 63Q117 65 117 87T119 150T120 238V353H75L29 354L65 391H118V460Q117 498 117 531",58119:"337 91V78L324 71Q288 53 256 29T206 -8T180 -22Q174 -22 158 -9Q82 46 60 46H59L63 51Q67 56 73 68T85 96Q101 158 101 254Q101 300 95 330T83 370T66 394L53 388Q48 385 41 382T24 374Q22 376 20 378T16 381T13 383T10 385V386L119 475Q150 439 160 430L171 422V409Q173 377 173 300Q173 228 166 183T152 122T145 102Q207 81 242 58L337 104V111Q340 146 340 227Q340 320 339 351T338 408V423L422 469Q425 465 429 462L426 438Q413 354 413 251Q413 152 423 119Q426 110 435 96T452 82Q454 82 509 103Q514 98 514 89Q514 87 507 81T472 51T409 -7L395 -20Q393 -18 390 -17Q386 -14 382 -6Q380 -2 379 1Q369 24 361 40T348 62T341 73T338 84L337 91"},{})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.fraktur=void 0,e.fraktur={33:[.689,.012,.296],34:[.695,-.432,.215],38:[.698,.011,.738],39:[.695,-.436,.212],40:[.737,.186,.389],41:[.735,.187,.389],42:[.692,-.449,.278],43:[.598,.082,.756],44:[.107,.191,.278],45:[.275,-.236,.756],46:[.102,.015,.278],47:[.721,.182,.502],48:[.492,.013,.502],49:[.468,0,.502],50:[.474,0,.502],51:[.473,.182,.502],52:[.476,.191,.502],53:[.458,.184,.502],54:[.7,.013,.502],55:[.468,.181,.502],56:[.705,.01,.502],57:[.469,.182,.502],58:[.457,.012,.216],59:[.458,.189,.216],61:[.368,-.132,.756],63:[.693,.011,.362],91:[.74,.13,.278],93:[.738,.131,.278],94:[.734,-.452,.5],8216:[.708,-.41,.215],8217:[.692,-.395,.215],8260:[.721,.182,.502],58112:[.683,.032,.497],58113:[.616,.03,.498],58114:[.68,.215,.333],58115:[.679,.224,.329],58116:[.471,.214,.503],58117:[.686,.02,.333],58118:[.577,.021,.334,{ic:.013}],58119:[.475,.022,.501,{ic:.013}]}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.italic=void 0;var r=Q(6),T=Q(230);e.italic=r.AddPaths(T.italic,{33:"330 716Q351 716 365 703T380 670V659L304 433Q230 207 227 204Q225 198 205 198Q184 198 184 207T220 439T260 669Q270 694 297 708Q300 709 304 710T311 713T316 714Q324 716 330 716ZM107 51Q110 83 133 102T179 121Q207 121 219 105T231 72Q231 45 209 23T156 0Q138 0 123 11T107 51",34:"214 620Q214 647 236 670T289 694Q312 694 326 677T341 633V624Q341 588 327 550T294 482T253 428T216 392T196 379Q191 379 184 388T176 401Q176 404 195 421T243 472T287 547Q299 576 299 582L295 580Q291 578 282 576T264 573Q241 573 228 585T214 620ZM411 620Q411 647 433 670T486 694Q509 694 523 677T538 633V624Q538 588 524 550T491 482T450 428T413 392T393 379Q388 379 381 388T373 401Q373 404 392 421T440 472T484 547Q496 576 496 582L492 580Q488 578 479 576T461 573Q438 573 425 585T411 620",35:"281 327H228Q186 327 175 330T164 347Q164 359 176 365Q179 367 292 367H404L563 688Q569 694 578 694T593 686T597 670Q597 667 531 535L448 367H614L773 688Q779 694 787 694Q796 694 802 688T808 674V672L807 670Q807 667 732 517L658 368L736 367H814Q828 357 828 347Q828 336 812 327H637L599 250Q561 174 561 173H662H724Q760 173 769 170T779 153T770 136T729 132Q721 132 696 132T651 133H540L380 -188Q374 -194 366 -194Q357 -194 351 -188T345 -174L346 -172V-170Q346 -167 412 -35L495 133H330L170 -188Q164 -194 156 -194Q147 -194 141 -188T135 -174L136 -172V-170Q136 -167 211 -17L285 133H207L130 134Q115 140 115 153Q115 164 131 173H306L344 250Q382 326 382 327H281ZM592 327H427L389 250Q351 174 351 173H516L554 250Q592 326 592 327",37:"301 348Q257 348 231 383T205 480Q205 553 244 629T346 736Q370 750 394 750Q416 750 429 742T458 714Q512 644 606 644Q722 644 802 732Q817 750 827 750Q835 750 841 744T847 730Q847 725 827 700T689 540Q586 421 512 335Q180 -50 176 -52Q172 -56 165 -56Q157 -56 151 -50T145 -35Q145 -29 162 -9T330 186Q392 258 430 302Q711 627 711 628L701 624Q652 607 604 607Q551 607 494 634L479 642V624Q479 544 439 467Q414 416 377 382T301 348ZM270 443Q270 385 303 385H306H308Q326 385 348 407Q384 441 409 504T434 627Q434 713 390 713Q358 713 328 663Q307 631 289 556T270 451V443ZM608 -56Q573 -56 543 -23T513 76Q513 129 536 190T604 296L627 318Q670 347 704 347Q747 347 767 310T788 222Q788 126 732 35T608 -56ZM742 222Q742 310 699 310Q677 310 655 285T620 227Q608 197 593 138T578 42V36Q578 -18 613 -18Q657 -18 699 64T742 222",38:"209 444Q209 546 278 631T424 716Q473 716 501 683T530 601Q530 554 511 535T467 515Q446 515 437 527T427 553Q427 578 446 594T481 610H483V617Q480 641 464 660T419 679Q367 679 328 603Q316 578 305 538T288 470L282 443L295 449Q308 455 330 462T371 469Q397 469 413 450T430 404Q430 363 400 329T331 295Q291 295 256 322Q255 322 246 293T227 223T217 158Q217 117 232 88T273 43T327 22T387 15Q457 15 512 37T599 93T652 169T680 248T688 317T678 380T659 423T647 437Q643 435 637 431T613 416T581 392T554 364T538 332Q540 310 541 310Q554 335 587 335Q601 335 613 327T626 300Q626 290 622 279T603 255T563 242Q532 245 512 263T491 320Q494 351 511 377T547 418T600 456T652 494Q676 512 697 539T728 582T738 601Q738 602 736 602Q732 602 726 604T714 616T707 638Q707 661 724 677T764 694Q799 694 802 660Q802 625 767 562T688 467L694 458Q700 449 702 444T711 428T720 408T727 385T733 358T735 327Q735 281 724 235T685 141T617 59T515 1T375 -22Q270 -22 199 34T127 181Q127 216 147 270T207 374L216 386Q209 421 209 444ZM386 412Q386 432 366 432Q345 432 325 418T294 390T284 375Q284 371 289 362T306 343T335 332Q355 332 367 350T383 384T386 412",39:"250 620Q250 647 272 670T325 694Q348 694 362 677T377 633V624Q377 566 343 506T275 412T231 379Q226 379 220 388T213 401T232 421T279 472T323 547Q335 573 335 582L331 580Q327 578 318 576T300 573Q277 573 264 585T250 620",40:"241 -250Q203 -212 174 -140T144 39Q144 158 180 288T296 544T481 746L487 750H499Q517 750 517 740Q517 736 495 716Q399 630 331 491T236 228T208 3Q208 -73 224 -130T255 -214T271 -244Q271 -250 252 -250H241",41:"326 497Q326 546 320 588T304 655T285 699T269 728T262 740Q262 746 267 749L272 750Q276 750 281 750H293Q331 712 360 640T390 461Q390 332 339 171T188 -116Q161 -150 121 -188T47 -250H35Q17 -250 17 -240Q17 -236 39 -216Q135 -130 203 9T298 272T326 497",42:"560 658Q569 658 576 649T584 631Q584 625 583 620T577 611T569 603T556 595T540 587T519 578T494 566L428 536Q427 535 433 531T479 502Q525 475 532 469T539 450Q538 435 525 424T497 412Q489 412 482 418T442 456Q400 497 400 494L387 420Q376 353 373 343T352 323Q345 320 336 320H331Q322 320 316 327T309 343Q309 347 334 420L359 496Q358 496 297 456T234 414Q228 411 221 411Q212 411 204 417T195 439Q198 458 209 465T283 502L353 534L300 566Q255 593 247 599T239 616Q239 631 252 644T282 658Q290 658 295 654T335 615L378 573L391 647Q393 657 395 671T398 691T400 706T404 720T408 730T414 739T423 744T434 749Q435 749 439 749T445 750Q467 748 469 728Q469 723 457 685T432 610L420 573L481 613Q548 658 560 658",43:"139 237T139 250T151 266T198 270H293H431L465 407Q469 424 476 452Q494 528 500 542T519 557Q526 557 532 552T538 538Q538 536 507 409T472 272Q472 270 604 270Q737 270 741 268Q753 261 753 250Q753 237 742 233T696 229Q687 229 655 229T599 230H462L461 226Q461 224 427 91T392 -47Q387 -57 374 -57Q367 -57 361 -51T355 -37Q355 -31 388 99L421 230H288Q267 230 238 230T199 229Q163 229 151 233",44:"106 46Q106 68 121 90T167 120Q168 120 173 120T180 121Q232 121 232 59V54Q232 18 219 -20T186 -88T145 -143T109 -181T88 -194Q84 -194 77 -185T69 -171Q69 -168 70 -166T76 -161T85 -154T101 -139T124 -114Q146 -88 162 -58T183 -12T188 7Q187 7 183 5T172 2T156 0Q129 0 118 14T106 46",45:"205 180H131Q102 180 93 181T84 190Q90 238 103 251H334Q341 244 341 241Q341 236 336 214T327 186Q325 181 312 181T205 180",46:"107 50Q107 76 129 98T181 121Q203 121 217 108T231 72Q231 47 210 24T156 0Q135 0 121 13T107 50",47:"166 -215T159 -215T147 -212T141 -204T139 -197Q139 -190 144 -183Q157 -157 378 274T602 707Q605 716 618 716Q625 716 630 712T636 703T638 696Q638 691 406 241T170 -212Q166 -215 159 -215",48:"414 665Q562 665 562 490Q562 426 534 318Q451 -21 251 -21Q222 -21 202 -15Q155 2 134 40T110 144Q110 201 127 286T187 470T287 614Q348 665 414 665ZM187 98Q187 59 208 37T260 15Q320 15 365 83Q394 128 440 312T487 547Q487 580 471 600T433 627Q428 628 408 628Q381 628 353 609T311 569Q279 526 239 364T190 143Q187 120 187 98",49:"248 491Q228 491 228 502Q228 516 236 532Q237 536 246 537T275 541T314 552Q350 567 382 595T430 644L446 664Q450 666 454 666Q468 666 468 658Q468 647 395 359Q321 63 321 59Q321 52 334 50T388 46H422Q428 37 428 35Q428 19 421 5Q416 0 405 0Q400 0 361 1T263 2Q215 2 185 2T142 1T127 0Q110 0 110 11Q110 13 113 25T118 40Q120 46 146 46Q196 46 212 49T235 61Q238 66 295 295L353 526L340 519Q328 512 302 503T248 491",50:"159 404Q159 433 176 476T222 562T297 635T395 666Q466 666 508 617T551 497Q551 473 545 446Q534 388 482 333Q441 292 355 240T264 184Q216 151 179 101L171 91Q171 90 177 90Q206 90 269 77T366 64Q385 64 390 65Q418 73 441 98T475 156Q479 168 481 170T495 173H518Q524 167 524 166T521 152Q502 86 459 32T353 -22Q315 -22 259 15T172 53Q156 53 143 36T126 1L121 -16Q119 -22 98 -22H82Q76 -16 76 -13T80 5T98 50T132 111T189 178T274 242Q327 273 364 305T420 370T447 427T460 483Q466 514 466 538Q466 586 443 607T389 629Q338 629 293 584T226 487T204 399Q204 390 204 386T209 378T222 373Q258 376 282 422T307 493Q307 506 302 517T297 531Q297 537 308 546T327 551Q329 550 333 543T340 523T344 497Q344 450 306 393T216 336Q186 336 173 355T159 396V404",51:"296 531Q296 536 307 544T322 553Q330 553 338 534T346 501Q346 468 319 440T258 412Q232 412 216 430T200 478Q200 552 281 618Q345 666 416 666Q489 666 525 625T562 530Q562 473 525 419T430 335L416 329Q479 288 479 206Q479 142 440 89T344 7T229 -22Q173 -22 135 12T96 106Q96 192 157 192Q192 192 197 157Q197 134 184 117T142 96Q153 47 180 29Q201 15 232 15Q249 15 275 22Q307 34 331 57Q363 90 379 153T396 246Q396 261 393 272T384 290T371 301T355 308T341 311T326 312H316H307Q287 312 282 313T276 320Q276 323 279 337T283 352Q284 356 290 357T325 358Q364 359 368 360Q386 365 400 372T433 397T464 448T485 527Q487 535 487 556Q487 629 414 629Q350 629 298 580T245 476Q245 450 263 450H264Q280 450 294 463T308 496Q308 508 302 518T296 531",52:"448 34Q453 34 463 22T473 5Q473 -2 457 -7Q417 -22 383 -23H366L350 -91Q348 -98 345 -111T340 -130T335 -146T330 -161T325 -172T318 -182T310 -188T299 -193T286 -194Q256 -194 253 -165Q253 -159 271 -83T292 -5Q231 29 169 29Q114 29 91 14Q72 -2 65 1Q46 20 46 28Q46 35 55 43T77 60T96 74Q306 257 396 623Q410 666 444 666Q459 666 468 657T478 634Q478 627 470 595T440 504T387 381T303 239T187 99L164 75H178Q217 75 260 59L304 43Q304 48 325 127Q342 195 346 207T358 228Q372 242 391 242Q403 242 413 235T423 214Q423 205 402 116T378 25Q378 23 387 23Q405 23 418 25T439 31T448 34",53:"196 304Q189 309 189 314Q189 317 231 487T275 660Q278 666 283 666Q287 666 302 658T346 643T413 635Q447 635 481 642T537 658T559 666Q561 666 564 663T567 658Q565 637 557 629Q528 600 474 573T359 545Q342 545 327 546T304 550T294 552L291 540Q288 529 283 507T273 465L251 379Q307 420 364 420Q415 420 456 382T497 261Q497 165 429 82T262 -20Q256 -20 247 -21T233 -22Q176 -22 141 15T106 112Q106 208 173 208Q192 208 203 197T214 169Q214 143 195 125T156 107H153V100Q155 73 174 47T239 21Q245 21 259 23Q355 46 392 200Q393 205 394 207Q412 276 412 312Q412 352 396 367T358 383Q288 383 233 314Q226 306 224 305T209 304H196",54:"377 434Q425 434 457 404T499 341T509 278Q509 243 496 194T456 105T383 27Q322 -22 256 -22Q142 -22 122 114Q120 130 120 159Q120 221 135 292T195 452T310 599Q390 665 465 665Q565 665 565 583V574Q565 543 546 524Q528 506 504 506Q491 506 478 514T465 543Q465 585 515 602Q505 626 466 626Q419 626 372 587Q334 557 305 503T266 409L255 370Q287 410 339 429Q361 434 377 434ZM424 333Q424 359 411 378T365 397Q318 397 282 356T230 257T205 157T197 94Q197 67 211 45T260 22Q313 22 341 57T386 151Q424 283 424 333",55:"466 519Q448 519 435 528T416 550T400 571T376 581Q324 581 271 540T186 437Q185 435 183 432T181 428T179 426T177 424T174 423T171 422T165 422H159Q141 422 141 423Q136 423 136 431Q136 433 190 548T247 665Q249 666 266 666H282Q288 660 288 657Q288 655 284 646T276 628L273 620Q337 666 390 666Q413 666 425 652T438 620T444 584T457 559Q460 557 470 557Q497 557 524 582T571 635T594 665Q595 666 612 666H628Q634 660 634 657Q634 653 618 629T572 556T510 441T437 269T367 43Q356 -22 304 -22Q291 -22 278 -14T263 14Q263 36 281 95T354 269T486 507Q497 524 495 524Q482 519 466 519",56:"209 449Q209 545 278 605T416 666Q482 666 517 631T553 546Q553 513 539 482T504 430T463 394T426 370L410 360L430 343Q471 309 483 278T495 211Q495 141 441 75Q363 -21 253 -21Q182 -21 141 18T99 117Q99 161 119 201T170 268T222 308T259 331L272 338L259 349Q212 389 209 449ZM492 542Q492 586 469 605T415 625Q360 625 320 587T279 505Q279 495 281 487T286 474T295 460T306 449T321 436T337 422Q379 386 380 386Q389 386 420 412T472 471Q492 513 492 542ZM163 118Q163 76 189 49T258 21Q316 21 368 64T420 170Q420 193 412 208T395 233T350 271L302 312Q298 312 284 303T249 276T209 235T177 181T163 118",57:"297 211Q258 211 230 228T189 273T169 323T163 367Q163 411 183 472T254 585Q327 656 401 665Q403 665 412 665T427 666Q458 664 481 652T518 622T539 580T550 535T553 491Q553 448 544 395T515 277T454 148T358 37Q282 -22 213 -22Q166 -22 137 -1T107 55V64Q107 88 114 104T134 127T154 136T169 138Q185 138 196 128T207 101Q207 82 196 68T172 48L161 43Q161 40 167 36T187 26T219 21Q286 21 344 99Q364 126 382 169T408 241T417 275L412 269Q406 263 395 253T370 234T337 218T297 211ZM476 552Q476 626 417 626Q368 626 330 584Q312 563 300 533T270 433Q248 341 248 312Q248 286 262 267T310 248Q353 248 387 287T440 380T467 480T476 552",58:"184 358Q184 385 206 408T258 431Q279 431 293 418T308 383Q308 354 284 332T233 310Q212 310 198 324T184 358ZM107 50Q107 76 129 98T181 121Q203 121 217 108T231 72Q231 47 210 24T156 0Q135 0 121 13T107 50",59:"184 358Q184 385 206 408T258 431Q279 431 293 418T308 383Q308 354 284 332T233 310Q212 310 198 324T184 358ZM107 47Q107 77 130 99T180 121Q226 121 226 61Q226 25 214 -14T182 -84T144 -140T109 -180T88 -194T77 -185T70 -172Q70 -169 84 -155T121 -112T161 -48Q180 -10 180 3Q180 4 174 2Q172 2 166 1T156 0Q135 0 121 13T107 47",61:"776 357T776 347T761 327H470Q180 327 176 329Q164 334 164 347Q164 359 176 365Q179 367 470 367H761Q776 357 776 347ZM116 143T116 153T131 173H422Q713 173 717 171Q728 166 728 153T717 135Q713 133 422 133H131Q116 143 116 153",63:"235 431Q217 431 206 442T195 468Q195 490 215 537T280 638T380 707Q403 716 423 716Q425 716 429 716T436 715Q485 715 518 681T551 590Q551 543 530 503T482 439Q471 428 400 375T318 310Q300 287 300 259Q300 236 315 236Q333 236 352 251T384 300Q386 306 407 306H423Q429 300 429 297Q429 272 393 235T308 198Q287 198 269 215T251 270Q251 330 293 374L374 436Q377 438 401 456T432 480T457 503T481 531T494 561T501 598Q501 614 499 626Q482 678 430 678H426Q392 678 362 660T311 615T280 571T264 540L259 528Q259 527 266 526T283 516T294 492Q294 466 276 449T235 431ZM209 51Q212 83 235 102T281 121Q309 121 321 105T333 72Q333 45 311 23T258 0Q240 0 225 11T209 51",64:"198 250Q198 155 248 91T394 26Q514 26 640 80L650 84H675H683Q709 84 709 76Q709 73 708 71Q706 64 660 45T534 8T383 -11T260 24T181 115Q152 168 152 248Q152 410 268 552Q303 590 324 608Q439 705 551 705Q611 705 658 683T733 623T775 543T789 454Q789 380 766 304T720 192Q677 125 617 125Q591 125 573 137T548 160T541 176Q541 178 540 178L534 173Q527 168 515 160T488 144T454 131T417 125Q361 125 320 166T279 284Q279 393 356 481T523 569Q570 569 603 537Q623 515 632 490L637 480L657 479Q684 479 684 470Q684 465 650 333L617 199V185Q616 162 628 162Q677 162 712 278Q743 381 743 442Q743 555 687 611T553 668Q467 668 385 608T250 450T198 250ZM598 445Q598 453 594 470T569 510T518 532Q463 532 410 448T356 271Q356 220 374 191T423 162Q482 162 552 255L575 348Q598 440 598 445",91:"205 -221Q205 -239 194 -250H137H106Q73 -250 73 -242Q73 -232 194 255T321 747L324 750H381H417Q435 750 440 748T446 739Q446 730 443 723T437 712L434 710H350L349 706Q349 704 235 249T120 -208Q120 -210 159 -210Q166 -210 175 -210T187 -209Q205 -209 205 -221",93:"227 721Q227 739 238 750H295H326Q359 750 359 742Q359 732 238 245T111 -247L108 -250H51H15Q-3 -250 -8 -248T-14 -239Q-14 -230 -11 -223T-5 -212L-2 -210H82L83 -206Q83 -204 197 251T312 708Q312 710 273 710Q266 710 257 710T245 709Q227 709 227 721",94:"528 555Q528 549 514 538T496 527Q491 527 470 554Q458 569 449 580L414 625L353 578Q339 567 323 555T298 536L290 529Q286 527 285 527Q279 527 273 533T264 546L260 553Q260 559 263 562Q265 564 342 628T421 693T425 694Q430 694 433 691Q528 563 528 555",95:"98 -62Q91 -58 91 -51Q91 -31 100 -26Q102 -25 324 -25H442H500Q536 -25 545 -27T554 -36Q554 -50 548 -56Q546 -60 538 -61Q520 -62 319 -62H98",126:"266 208Q262 208 255 215T247 228Q247 233 250 236T274 259Q335 318 369 318Q394 318 420 292T464 265Q485 265 516 291T550 318Q554 318 562 311T571 297Q570 293 551 273T502 231T451 209H447Q421 209 396 235T355 261Q334 261 301 235T266 208",305:"75 287Q75 292 82 313T103 362T142 413T196 441H214Q248 441 270 419T293 357Q292 338 289 330T245 208Q193 72 193 46Q193 26 209 26Q228 26 247 43Q273 71 292 136Q295 148 297 150T311 153H317Q327 153 330 153T337 150T340 143Q340 133 330 105T292 41T228 -8Q220 -10 204 -10Q160 -10 141 15T122 71Q122 98 171 227T221 384Q221 396 218 400T203 405Q175 403 156 374T128 312T116 279Q115 278 97 278H81Q75 284 75 287",567:"75 284T75 287T81 305T101 343T133 389T180 426T240 442Q273 440 300 420T327 350V332L278 134Q267 92 253 37T233 -45T225 -73Q208 -123 162 -163T54 -204Q8 -204 -15 -181Q-32 -164 -32 -140Q-32 -112 -14 -96T27 -79Q48 -79 57 -91T67 -114Q67 -146 39 -166L44 -167H59H60Q112 -167 145 -74Q148 -65 198 134T251 347Q252 353 252 370Q252 382 251 388T245 399T230 405Q204 405 175 378Q157 360 145 337T126 298T117 280T98 278H81Q75 284 75 287",768:"-222 651Q-222 668 -206 682T-174 697Q-155 697 -145 680Q-140 671 -107 599T-74 526Q-74 522 -88 511T-107 500Q-109 500 -113 502T-167 568T-219 637Q-222 643 -222 651",769:"-148 500Q-154 500 -163 511T-173 528Q-173 529 -172 530V532Q-170 534 -97 610T-21 688Q-8 697 4 697Q19 697 29 688T39 663T30 638Q26 631 -50 573L-135 507Q-144 500 -148 500",770:"17 555Q17 549 3 538T-15 527Q-20 527 -41 554Q-53 569 -62 580L-97 625L-158 578Q-172 567 -188 555T-212 536L-221 529Q-225 527 -226 527Q-232 527 -238 533T-248 546L-251 553Q-251 559 -248 562Q-246 564 -169 628T-90 693T-86 694Q-81 694 -78 691Q17 563 17 555",771:"-245 558Q-249 558 -256 565T-264 578Q-264 583 -261 586T-237 609Q-176 668 -142 668Q-117 668 -91 642T-47 615Q-26 615 5 641T39 668Q43 668 51 661T60 647Q59 643 40 623T-9 581T-60 559H-64Q-90 559 -115 585T-156 611Q-177 611 -210 585T-245 558",772:"-275 544Q-282 548 -282 554Q-282 561 -279 573T-271 588Q-269 589 -111 589H-27H12Q38 589 46 587T54 578Q54 574 51 563T47 550Q45 546 32 545Q15 544 -118 544H-275",774:"-237 641Q-237 694 -218 694H-213Q-195 694 -195 684Q-195 683 -195 679T-197 667T-198 650Q-198 611 -176 589T-117 566Q-74 566 -34 597T23 678Q27 689 30 691T43 694Q62 694 62 684Q62 671 49 645T14 589T-46 537T-123 515Q-175 515 -206 550T-237 641",775:"-165 599Q-162 631 -139 650T-93 669Q-65 669 -53 653T-41 620Q-41 593 -63 571T-116 548Q-134 548 -149 559T-165 599",776:"-251 601Q-251 626 -230 647T-180 669Q-139 669 -133 625Q-133 595 -155 575T-203 554Q-223 554 -237 567T-251 601ZM-72 599Q-72 632 -48 650T-2 669Q18 669 31 657T45 623Q45 592 22 573T-25 554Q-68 554 -72 599",778:"-199 610Q-199 654 -161 685T-79 716Q-39 716 -16 693Q3 674 3 647Q3 607 -34 575T-118 542Q-199 542 -199 610ZM-41 631T-41 655T-83 679H-89Q-129 679 -142 656Q-146 650 -151 632T-156 604Q-156 578 -113 578H-108Q-94 578 -86 579T-69 586T-52 605Q-41 631 -41 655",779:"-217 503Q-221 503 -234 510T-248 523Q-248 528 -205 602Q-200 610 -192 623T-180 644T-170 661T-159 676T-151 686T-142 694T-134 696Q-132 697 -121 697Q-88 694 -88 664Q-88 652 -97 640T-152 574Q-214 504 -217 503ZM-64 503Q-68 503 -81 510T-95 523Q-95 528 -52 602Q-47 610 -39 623T-27 644T-17 661T-6 676T2 686T11 694T19 696Q21 697 32 697Q65 694 65 664Q65 652 56 640T1 574Q-61 504 -64 503",780:"11 637Q16 637 22 624T29 607Q29 606 27 602Q26 600 -47 552T-125 502H-127Q-133 502 -184 553Q-236 602 -236 608Q-236 612 -224 625T-206 638L-202 637L-196 632Q-190 628 -179 620T-158 603L-116 570Q-109 572 -52 604T11 637",989:"477 261Q477 257 473 256T455 253T417 251T348 250H235L155 -77L146 -82Q137 -85 109 -85Q55 -85 55 -77L139 261Q224 596 226 598Q229 603 239 603Q240 603 254 603T290 603T341 604T405 605T477 605Q656 603 687 602T719 596Q719 589 692 588T513 585H319L282 427L242 272Q242 270 351 270Q388 270 410 270T444 269T460 267T469 265T477 261",8211:"98 248Q91 252 91 259Q91 279 100 284Q102 285 324 285H442H500Q536 285 545 283T554 274Q554 260 548 254Q546 250 538 249Q520 248 319 248H98",8212:"124 248Q117 252 117 259Q117 279 126 284Q128 285 579 285T1033 284Q1037 280 1037 278Q1038 276 1038 274Q1038 253 1029 250Q1026 248 575 248H124",8213:"124 248Q117 252 117 259Q117 279 126 284Q128 285 579 285T1033 284Q1037 280 1037 278Q1038 276 1038 274Q1038 253 1029 250Q1026 248 575 248H124",8215:"98 -62Q91 -58 91 -51Q91 -31 100 -26Q102 -25 324 -25H442H500Q536 -25 545 -27T554 -36Q554 -50 548 -56Q546 -60 538 -61Q520 -62 319 -62H98",8216:"249 379Q228 379 213 396T197 448Q197 533 271 627L278 635Q286 643 295 652T314 671T332 687T344 694Q349 694 355 685T362 671Q362 668 345 654T301 608T256 537Q238 493 240 491Q241 491 245 493T258 498T275 500Q296 500 311 488T326 454Q326 426 304 403T249 379",8217:"250 620Q250 647 272 670T325 694Q348 694 362 677T377 633V624Q377 566 343 506T275 412T231 379Q226 379 220 388T213 401T232 421T279 472T323 547Q335 573 335 582L331 580Q327 578 318 576T300 573Q277 573 264 585T250 620",8220:"295 379Q274 379 259 396T243 448Q243 533 317 627Q326 638 354 666T391 694Q395 694 402 686T409 673Q409 668 392 654T348 608T302 537Q284 493 286 491Q287 491 291 493T304 498T321 500Q342 500 357 488T372 454Q372 426 350 403T295 379ZM492 379Q471 379 456 396T440 448Q440 533 514 627Q523 638 551 666T588 694Q592 694 599 685T606 672T589 654T544 608T499 537Q481 493 483 491Q484 491 488 493T501 498T518 500Q539 500 554 488T569 454Q569 426 547 403T492 379",8221:"214 620Q214 647 236 670T289 694Q312 694 326 677T341 633V624Q341 588 327 550T294 482T253 428T216 392T196 379Q191 379 184 388T176 401Q176 404 195 421T243 472T287 547Q299 576 299 582L295 580Q291 578 282 576T264 573Q241 573 228 585T214 620ZM411 620Q411 647 433 670T486 694Q509 694 523 677T538 633V624Q538 588 524 550T491 482T450 428T413 392T393 379Q388 379 381 388T373 401Q373 404 392 421T440 472T484 547Q496 576 496 582L492 580Q488 578 479 576T461 573Q438 573 425 585T411 620",8260:"166 -215T159 -215T147 -212T141 -204T139 -197Q139 -190 144 -183Q157 -157 378 274T602 707Q605 716 618 716Q625 716 630 712T636 703T638 696Q638 691 406 241T170 -212Q166 -215 159 -215",8463:"150 475Q147 475 118 466T82 457Q73 457 64 467T54 487Q54 490 55 492Q63 506 64 506Q67 512 118 526Q162 541 169 546Q173 559 175 575Q181 596 181 604Q181 613 166 617Q164 617 153 618T135 619Q119 619 114 621T109 630Q109 636 114 656T122 681Q125 685 202 688Q272 695 286 695Q304 695 304 684Q304 682 291 628L278 577L386 612Q466 635 476 635T492 627T499 607Q499 593 489 586Q485 583 373 546L262 512Q262 511 248 455T233 397T236 397T244 404Q295 441 357 441Q405 441 445 417T485 333Q485 284 449 178T412 58T426 44Q447 44 466 68Q485 87 500 130L509 152H531H543Q562 152 562 144Q562 128 546 93T494 23T415 -13Q385 -13 359 3T322 44Q318 52 318 77Q318 99 352 196T386 337Q386 386 346 386Q318 386 286 370Q267 361 245 338T211 292Q207 287 193 235T162 113T138 21Q128 7 122 4Q105 -12 83 -12Q66 -12 54 -2T42 26Q42 45 98 257L151 475H150",8710:"574 715L582 716Q589 716 595 716Q612 716 616 714Q621 712 621 709Q622 707 705 359T788 8Q786 5 785 3L781 0H416Q52 0 50 2T48 6Q48 9 305 358T567 711Q572 712 574 715ZM599 346L538 602L442 474Q347 345 252 217T157 87T409 86T661 88L654 120Q646 151 629 220T599 346",10744:"166 -215T159 -215T147 -212T141 -204T139 -197Q139 -190 144 -183Q157 -157 378 274T602 707Q605 716 618 716Q625 716 630 712T636 703T638 696Q638 691 406 241T170 -212Q166 -215 159 -215"},{})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.italic=void 0,e.italic={33:[.716,0,.307,{ic:.073}],34:[.694,-.379,.514,{ic:.024}],35:[.694,.194,.818,{ic:.01}],37:[.75,.056,.818,{ic:.029}],38:[.716,.022,.767,{ic:.035}],39:[.694,-.379,.307,{ic:.07}],40:[.75,.25,.409,{ic:.108}],41:[.75,.25,.409],42:[.75,-.32,.511,{ic:.073}],43:[.557,.057,.767],44:[.121,.194,.307],45:[.251,-.18,.358],46:[.121,0,.307],47:[.716,.215,.778],48:[.665,.021,.511,{ic:.051}],49:[.666,0,.511],50:[.666,.022,.511,{ic:.04}],51:[.666,.022,.511,{ic:.051}],52:[.666,.194,.511],53:[.666,.022,.511,{ic:.056}],54:[.665,.022,.511,{ic:.054}],55:[.666,.022,.511,{ic:.123}],56:[.666,.021,.511,{ic:.042}],57:[.666,.022,.511,{ic:.042}],58:[.431,0,.307],59:[.431,.194,.307],61:[.367,-.133,.767],63:[.716,0,.511,{ic:.04}],64:[.705,.011,.767,{ic:.022}],91:[.75,.25,.307,{ic:.139}],93:[.75,.25,.307,{ic:.052}],94:[.694,-.527,.511,{ic:.017}],95:[-.025,.062,.511,{ic:.043}],126:[.318,-.208,.511,{ic:.06}],305:[.441,.01,.307,{ic:.033}],567:[.442,.204,.332],768:[.697,-.5,0],769:[.697,-.5,0,{ic:.039}],770:[.694,-.527,0,{ic:.017}],771:[.668,-.558,0,{ic:.06}],772:[.589,-.544,0,{ic:.054}],774:[.694,-.515,0,{ic:.062}],775:[.669,-.548,0],776:[.669,-.554,0,{ic:.045}],778:[.716,-.542,0],779:[.697,-.503,0,{ic:.065}],780:[.638,-.502,0,{ic:.029}],989:[.605,.085,.778],8211:[.285,-.248,.511,{ic:.043}],8212:[.285,-.248,1.022,{ic:.016}],8213:[.285,-.248,1.022,{ic:.016}],8215:[-.025,.062,.511,{ic:.043}],8216:[.694,-.379,.307,{ic:.055}],8217:[.694,-.379,.307,{ic:.07}],8220:[.694,-.379,.514,{ic:.092}],8221:[.694,-.379,.514,{ic:.024}],8260:[.716,.215,.778],8463:[.695,.013,.54,{ic:.022}],8710:[.716,0,.833,{sk:.167}],10744:[.716,.215,.778]}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.largeop=void 0;var r=Q(6),T=Q(232);e.largeop=r.AddPaths(T.largeop,{40:"180 96T180 250T205 541T266 770T353 944T444 1069T527 1150H555Q561 1144 561 1141Q561 1137 545 1120T504 1072T447 995T386 878T330 721T288 513T272 251Q272 133 280 56Q293 -87 326 -209T399 -405T475 -531T536 -609T561 -640Q561 -643 555 -649H527Q483 -612 443 -568T353 -443T266 -270T205 -41",41:"35 1138Q35 1150 51 1150H56H69Q113 1113 153 1069T243 944T330 771T391 541T416 250T391 -40T330 -270T243 -443T152 -568T69 -649H56Q43 -649 39 -647T35 -637Q65 -607 110 -548Q283 -316 316 56Q324 133 324 251Q324 368 316 445Q278 877 48 1123Q36 1137 35 1138",47:"78 -649Q56 -646 56 -625Q56 -614 382 261T712 1140Q716 1150 732 1150Q754 1147 754 1126Q754 1116 428 240T98 -639Q94 -649 78 -649",91:"224 -649V1150H455V1099H275V-598H455V-649H224",92:"754 -625Q754 -649 731 -649Q715 -649 712 -639Q709 -635 383 242T55 1124Q54 1135 61 1142T80 1150Q92 1150 98 1140Q101 1137 427 262T754 -625",93:"16 1099V1150H247V-649H16V-598H196V1099H16",123:"547 -643L541 -649H528Q515 -649 503 -645Q324 -582 293 -466Q289 -449 289 -428T287 -200L286 42L284 53Q274 98 248 135T196 190T146 222L121 235Q119 239 119 250Q119 262 121 266T133 273Q262 336 284 449L286 460L287 701Q287 737 287 794Q288 949 292 963Q293 966 293 967Q325 1080 508 1148Q516 1150 527 1150H541L547 1144V1130Q547 1117 546 1115T536 1109Q480 1086 437 1046T381 950L379 940L378 699Q378 657 378 594Q377 452 374 438Q373 437 373 436Q350 348 243 282Q192 257 186 254L176 251L188 245Q211 236 234 223T287 189T340 135T373 65Q373 64 374 63Q377 49 378 -93Q378 -156 378 -198L379 -438L381 -449Q393 -504 436 -544T536 -608Q544 -611 545 -613T547 -629V-643",125:"119 1130Q119 1144 121 1147T135 1150H139Q151 1150 182 1138T252 1105T326 1046T373 964Q378 942 378 702Q378 469 379 462Q386 394 439 339Q482 296 535 272Q544 268 545 266T547 251Q547 241 547 238T542 231T531 227T510 217T477 194Q390 129 379 39Q378 32 378 -201Q378 -441 373 -463Q342 -580 165 -644Q152 -649 139 -649Q125 -649 122 -646T119 -629Q119 -622 119 -619T121 -614T124 -610T132 -607T143 -602Q195 -579 235 -539T285 -447Q286 -435 287 -199T289 51Q294 74 300 91T329 138T390 197Q412 213 436 226T475 244L489 250L472 258Q455 265 430 279T377 313T327 366T293 434Q289 451 289 472T287 699Q286 941 285 948Q279 978 262 1005T227 1048T184 1080T151 1100T129 1109L127 1110Q119 1113 119 1130",710:"1004 603Q1004 600 999 583T991 565L960 574Q929 582 866 599T745 631L500 698Q497 698 254 631Q197 616 134 599T39 574L8 565Q5 565 0 582T-5 603L26 614Q58 624 124 646T248 687L499 772Q999 604 1004 603",732:"296 691Q258 691 216 683T140 663T79 639T34 619T16 611Q13 619 8 628L0 644L36 662Q206 749 321 749Q410 749 517 710T703 670Q741 670 783 678T859 698T920 722T965 742T983 750Q986 742 991 733L999 717L963 699Q787 611 664 611Q594 611 484 651T296 691",770:"4 603Q4 600 -1 583T-9 565L-40 574Q-71 582 -134 599T-255 631L-500 698Q-503 698 -746 631Q-803 616 -866 599T-961 574L-992 565Q-995 565 -1000 582T-1005 603L-974 614Q-942 624 -876 646T-752 687L-501 772Q-1 604 4 603",771:"-704 691Q-742 691 -784 683T-860 663T-921 639T-966 619T-984 611Q-987 619 -992 628L-1000 644L-964 662Q-794 749 -679 749Q-590 749 -483 710T-297 670Q-259 670 -217 678T-141 698T-80 722T-35 742T-17 750Q-14 742 -9 733L-1 717L-37 699Q-213 611 -336 611Q-405 611 -515 651T-704 691",8214:"257 0V602H300V0H257ZM478 0V602H521V0H478",8260:"78 -649Q56 -646 56 -625Q56 -614 382 261T712 1140Q716 1150 732 1150Q754 1147 754 1126Q754 1116 428 240T98 -639Q94 -649 78 -649",8593:"112 421L120 424Q127 427 136 430T161 441T191 458T224 481T260 510T295 546T328 591L333 600L340 589Q380 527 431 489T555 421V377L543 381Q445 418 368 492L355 504V0H312V504L299 492Q222 418 124 381L112 377V421",8595:"312 96V600H355V96L368 108Q445 182 543 219L555 223V179L546 176Q538 173 529 169T505 158T475 141T442 119T407 90T372 53T339 9L334 0L327 11Q287 73 236 111T112 179V223L124 219Q222 182 299 108L312 96",8657:"142 329Q300 419 389 599Q389 598 399 579T420 541T452 494T497 438T558 383T636 329T708 294L721 289V246Q718 246 694 256T623 293T532 356L522 364L521 182V0H478V405L466 417Q436 450 389 516Q388 515 378 500T352 463T312 417L300 405V0H257V364L247 356Q202 320 155 293T82 256L57 246V289L70 294Q101 305 142 329",8659:"257 236V600H300V195L312 183Q342 150 389 84Q390 85 400 100T426 137T466 183L478 195V600H521V418L522 236L532 244Q576 280 623 307T696 344L721 354V311L708 306Q677 295 636 271Q478 181 389 1Q389 2 379 21T358 59T326 106T281 162T220 217T142 271T70 306L57 311V354Q60 354 83 345T154 308T247 244L257 236",8719:"220 812Q220 813 218 819T214 829T208 840T199 853T185 866T166 878T140 887T107 893T66 896H56V950H1221V896H1211Q1080 896 1058 812V-311Q1076 -396 1211 -396H1221V-450H725V-396H735Q864 -396 888 -314Q889 -312 889 -311V896H388V292L389 -311Q405 -396 542 -396H552V-450H56V-396H66Q195 -396 219 -314Q220 -312 220 -311V812",8720:"220 812Q220 813 218 819T214 829T208 840T199 853T185 866T166 878T140 887T107 893T66 896H56V950H552V896H542Q411 896 389 812L388 208V-396H889V812Q889 813 887 819T883 829T877 840T868 853T854 866T835 878T809 887T776 893T735 896H725V950H1221V896H1211Q1080 896 1058 812V-311Q1076 -396 1211 -396H1221V-450H56V-396H66Q195 -396 219 -314Q220 -312 220 -311V812",8721:"60 948Q63 950 665 950H1267L1325 815Q1384 677 1388 669H1348L1341 683Q1320 724 1285 761Q1235 809 1174 838T1033 881T882 898T699 902H574H543H251L259 891Q722 258 724 252Q725 250 724 246Q721 243 460 -56L196 -356Q196 -357 407 -357Q459 -357 548 -357T676 -358Q812 -358 896 -353T1063 -332T1204 -283T1307 -196Q1328 -170 1348 -124H1388Q1388 -125 1381 -145T1356 -210T1325 -294L1267 -449L666 -450Q64 -450 61 -448Q55 -446 55 -439Q55 -437 57 -433L590 177Q590 178 557 222T452 366T322 544L56 909L55 924Q55 945 60 948",8730:"1001 1150Q1017 1150 1020 1132Q1020 1127 741 244L460 -643Q453 -650 436 -650H424Q423 -647 423 -645T421 -640T419 -631T415 -617T408 -594T399 -560T385 -512T367 -448T343 -364T312 -259L203 119L138 41L111 67L212 188L264 248L472 -474L983 1140Q988 1150 1001 1150",8739:"146 612Q151 627 166 627Q182 627 187 612Q188 610 188 306T187 0Q184 -15 166 -15Q149 -15 146 0V10Q146 19 146 35T146 73T146 122T145 179T145 241T145 306T145 370T145 433T145 489T146 538T146 576T146 602V612",8741:"146 612Q151 627 166 627Q182 627 187 612Q188 610 188 306T187 0Q184 -15 166 -15Q149 -15 146 0V10Q146 19 146 35T146 73T146 122T145 179T145 241T145 306T145 370T145 433T145 489T146 538T146 576T146 602V612ZM368 612Q373 627 388 627Q404 627 409 612Q410 610 410 306T409 0Q406 -15 389 -15Q371 -15 368 0V10Q368 19 368 35T368 73T368 122T367 179T367 241T367 306T367 370T367 433T367 489T368 538T368 576T368 602V612",8747:"114 -798Q132 -824 165 -824H167Q195 -824 223 -764T275 -600T320 -391T362 -164Q365 -143 367 -133Q439 292 523 655T645 1127Q651 1145 655 1157T672 1201T699 1257T733 1306T777 1346T828 1360Q884 1360 912 1325T944 1245Q944 1220 932 1205T909 1186T887 1183Q866 1183 849 1198T832 1239Q832 1287 885 1296L882 1300Q879 1303 874 1307T866 1313Q851 1323 833 1323Q819 1323 807 1311T775 1255T736 1139T689 936T633 628Q574 293 510 -5T410 -437T355 -629Q278 -862 165 -862Q125 -862 92 -831T55 -746Q55 -711 74 -698T112 -685Q133 -685 150 -700T167 -741Q167 -789 114 -798",8748:"114 -798Q132 -824 165 -824H167Q195 -824 223 -764T275 -600T320 -391T362 -164Q365 -143 367 -133Q439 292 523 655T645 1127Q651 1145 655 1157T672 1201T699 1257T733 1306T777 1346T828 1360Q884 1360 912 1325T944 1245Q944 1220 932 1205T909 1186T887 1183Q866 1183 849 1198T832 1239Q832 1287 885 1296L882 1300Q879 1303 874 1307T866 1313Q851 1323 833 1323Q819 1323 807 1311T775 1255T736 1139T689 936T633 628Q574 293 510 -5T410 -437T355 -629Q278 -862 165 -862Q125 -862 92 -831T55 -746Q55 -711 74 -698T112 -685Q133 -685 150 -700T167 -741Q167 -789 114 -798ZM642 -798Q660 -824 693 -824H695Q723 -824 751 -764T803 -600T848 -391T890 -164Q893 -143 895 -133Q967 292 1051 655T1173 1127Q1179 1145 1183 1157T1200 1201T1227 1257T1261 1306T1305 1346T1356 1360Q1412 1360 1440 1325T1472 1245Q1472 1220 1460 1205T1437 1186T1415 1183Q1394 1183 1377 1198T1360 1239Q1360 1287 1413 1296L1410 1300Q1407 1303 1402 1307T1394 1313Q1379 1323 1361 1323Q1347 1323 1335 1311T1303 1255T1264 1139T1217 936T1161 628Q1102 293 1038 -5T938 -437T883 -629Q806 -862 693 -862Q653 -862 620 -831T583 -746Q583 -711 602 -698T640 -685Q661 -685 678 -700T695 -741Q695 -789 642 -798",8749:"114 -798Q132 -824 165 -824H167Q195 -824 223 -764T275 -600T320 -391T362 -164Q365 -143 367 -133Q439 292 523 655T645 1127Q651 1145 655 1157T672 1201T699 1257T733 1306T777 1346T828 1360Q884 1360 912 1325T944 1245Q944 1220 932 1205T909 1186T887 1183Q866 1183 849 1198T832 1239Q832 1287 885 1296L882 1300Q879 1303 874 1307T866 1313Q851 1323 833 1323Q819 1323 807 1311T775 1255T736 1139T689 936T633 628Q574 293 510 -5T410 -437T355 -629Q278 -862 165 -862Q125 -862 92 -831T55 -746Q55 -711 74 -698T112 -685Q133 -685 150 -700T167 -741Q167 -789 114 -798ZM642 -798Q660 -824 693 -824H695Q723 -824 751 -764T803 -600T848 -391T890 -164Q893 -143 895 -133Q967 292 1051 655T1173 1127Q1179 1145 1183 1157T1200 1201T1227 1257T1261 1306T1305 1346T1356 1360Q1412 1360 1440 1325T1472 1245Q1472 1220 1460 1205T1437 1186T1415 1183Q1394 1183 1377 1198T1360 1239Q1360 1287 1413 1296L1410 1300Q1407 1303 1402 1307T1394 1313Q1379 1323 1361 1323Q1347 1323 1335 1311T1303 1255T1264 1139T1217 936T1161 628Q1102 293 1038 -5T938 -437T883 -629Q806 -862 693 -862Q653 -862 620 -831T583 -746Q583 -711 602 -698T640 -685Q661 -685 678 -700T695 -741Q695 -789 642 -798ZM1150 -798Q1168 -824 1201 -824H1203Q1231 -824 1259 -764T1311 -600T1356 -391T1398 -164Q1401 -143 1403 -133Q1475 292 1559 655T1681 1127Q1687 1145 1691 1157T1708 1201T1735 1257T1769 1306T1813 1346T1864 1360Q1920 1360 1948 1325T1980 1245Q1980 1220 1968 1205T1945 1186T1923 1183Q1902 1183 1885 1198T1868 1239Q1868 1287 1921 1296L1918 1300Q1915 1303 1910 1307T1902 1313Q1887 1323 1869 1323Q1855 1323 1843 1311T1811 1255T1772 1139T1725 936T1669 628Q1610 293 1546 -5T1446 -437T1391 -629Q1314 -862 1201 -862Q1161 -862 1128 -831T1091 -746Q1091 -711 1110 -698T1148 -685Q1169 -685 1186 -700T1203 -741Q1203 -789 1150 -798",8750:"114 -798Q132 -824 165 -824H167Q195 -824 223 -764T275 -600T320 -391T362 -164Q365 -143 367 -133Q382 -52 390 2Q314 40 276 99Q230 167 230 249Q230 363 305 436T484 519H494L503 563Q587 939 632 1087T727 1298Q774 1360 828 1360Q884 1360 912 1325T944 1245Q944 1220 932 1205T909 1186T887 1183Q866 1183 849 1198T832 1239Q832 1287 885 1296L882 1300Q879 1303 874 1307T866 1313Q851 1323 833 1323Q766 1323 688 929Q662 811 610 496Q770 416 770 249Q770 147 701 68T516 -21H506L497 -65Q407 -464 357 -623T237 -837Q203 -862 165 -862Q125 -862 92 -831T55 -746Q55 -711 74 -698T112 -685Q133 -685 150 -700T167 -741Q167 -789 114 -798ZM480 478Q460 478 435 470T380 444T327 401T287 335T271 249Q271 124 375 56L397 43L431 223L485 478H480ZM519 20Q545 20 578 33T647 72T706 144T730 249Q730 383 603 455Q603 454 597 421T582 343T569 276Q516 22 515 20H519",8896:"1055 -401Q1055 -419 1042 -434T1007 -450Q977 -450 963 -423Q959 -417 757 167L555 750L353 167Q151 -417 147 -423Q134 -450 104 -450Q84 -450 70 -436T55 -401Q55 -394 56 -390Q59 -381 284 270T512 925Q525 950 555 950Q583 950 597 926Q599 923 825 270T1054 -391Q1055 -394 1055 -401",8897:"55 900Q55 919 69 934T103 950Q134 950 147 924Q152 913 353 333L555 -250L757 333Q958 913 963 924Q978 950 1007 950Q1028 950 1041 935T1055 901Q1055 894 1054 891Q1052 884 826 231T597 -426Q583 -450 556 -450Q527 -450 512 -424Q510 -421 285 229T56 890Q55 893 55 900",8898:"57 516Q68 602 104 675T190 797T301 882T423 933T542 949Q594 949 606 948Q780 928 901 815T1048 545Q1053 516 1053 475T1055 49Q1055 -406 1054 -410Q1051 -427 1037 -438T1006 -450T976 -439T958 -411Q957 -407 957 37Q957 484 956 494Q945 643 831 747T554 852Q481 852 411 826Q301 786 232 696T154 494Q153 484 153 37Q153 -407 152 -411Q148 -428 135 -439T104 -450T73 -439T56 -410Q55 -406 55 49Q56 505 57 516",8899:"56 911Q58 926 71 938T103 950Q120 950 134 939T152 911Q153 907 153 463Q153 16 154 6Q165 -143 279 -247T556 -352Q716 -352 830 -248T956 6Q957 16 957 463Q957 907 958 911Q962 928 975 939T1006 950T1037 939T1054 911Q1055 906 1055 451Q1054 -5 1053 -16Q1029 -207 889 -328T555 -449Q363 -449 226 -331T62 -45Q57 -16 57 25T55 451Q55 906 56 911",8968:"224 -649V1150H511V1099H275V-649H224",8969:"16 1099V1150H303V-649H252V1099H16",8970:"224 -649V1150H275V-598H511V-649H224",8971:"252 -598V1150H303V-649H16V-598H252",9001:"112 244V258L473 1130Q482 1150 498 1150Q511 1150 517 1142T523 1125V1118L344 685Q304 587 257 473T187 305L165 251L344 -184L523 -616V-623Q524 -634 517 -641T499 -649Q484 -649 473 -629L112 244",9002:"112 -649Q103 -649 95 -642T87 -623V-616L266 -184L445 251Q445 252 356 466T178 898T86 1123Q85 1134 93 1142T110 1150Q126 1150 133 1137Q134 1136 317 695L498 258V244L317 -194Q134 -635 133 -636Q126 -649 112 -649",9168:"312 0V602H355V0H312",10072:"146 612Q151 627 166 627Q182 627 187 612Q188 610 188 306T187 0Q184 -15 166 -15Q149 -15 146 0V10Q146 19 146 35T146 73T146 122T145 179T145 241T145 306T145 370T145 433T145 489T146 538T146 576T146 602V612",10216:"112 244V258L473 1130Q482 1150 498 1150Q511 1150 517 1142T523 1125V1118L344 685Q304 587 257 473T187 305L165 251L344 -184L523 -616V-623Q524 -634 517 -641T499 -649Q484 -649 473 -629L112 244",10217:"112 -649Q103 -649 95 -642T87 -623V-616L266 -184L445 251Q445 252 356 466T178 898T86 1123Q85 1134 93 1142T110 1150Q126 1150 133 1137Q134 1136 317 695L498 258V244L317 -194Q134 -635 133 -636Q126 -649 112 -649",10752:"668 944Q697 949 744 949Q803 949 814 948Q916 937 1006 902T1154 826T1262 730T1336 638T1380 563Q1454 415 1454 250Q1454 113 1402 -14T1258 -238T1036 -391T755 -449Q608 -449 477 -392T255 -240T110 -16T56 250Q56 387 105 510T239 723T434 871T668 944ZM755 -352Q922 -352 1061 -269T1278 -48T1356 250Q1356 479 1202 652T809 850Q798 851 747 851Q634 851 527 806T337 682T204 491T154 251Q154 128 201 17T329 -176T521 -304T755 -352ZM665 250Q665 290 692 315T758 341Q792 339 818 315T845 250Q845 211 819 186T755 160Q716 160 691 186T665 250",10753:"668 944Q697 949 744 949Q803 949 814 948Q916 937 1006 902T1154 826T1262 730T1336 638T1380 563Q1454 415 1454 250Q1454 113 1402 -14T1258 -238T1036 -391T755 -449Q608 -449 477 -392T255 -240T110 -16T56 250Q56 387 105 510T239 723T434 871T668 944ZM706 299V850H704Q519 832 386 725T198 476Q181 433 169 379T156 300Q156 299 431 299H706ZM1116 732Q1054 778 982 807T871 842T810 849L804 850V299H1079Q1354 299 1354 300Q1354 311 1352 329T1336 402T1299 506T1228 620T1116 732ZM706 -350V201H431Q156 201 156 200Q156 189 158 171T174 98T211 -6T282 -120T395 -232Q428 -257 464 -277T527 -308T587 -328T636 -339T678 -346T706 -350ZM1354 200Q1354 201 1079 201H804V-350Q808 -349 838 -345T887 -338T940 -323T1010 -295Q1038 -282 1067 -265T1144 -208T1229 -121T1301 0T1349 158Q1354 188 1354 200",10754:"668 944Q697 949 744 949Q803 949 814 948Q916 937 1006 902T1154 826T1262 730T1336 638T1380 563Q1454 415 1454 250Q1454 113 1402 -14T1258 -238T1036 -391T755 -449Q608 -449 477 -392T255 -240T110 -16T56 250Q56 387 105 510T239 723T434 871T668 944ZM1143 709Q1138 714 1129 722T1086 752T1017 791T925 826T809 850Q798 851 747 851H728Q659 851 571 823T408 741Q367 713 367 709L755 320L1143 709ZM297 639Q296 639 282 622T247 570T205 491T169 382T154 250T168 118T204 9T247 -70T282 -122L297 -139L685 250L297 639ZM1213 -139Q1214 -139 1228 -122T1263 -70T1305 9T1341 118T1356 250T1342 382T1306 491T1263 570T1228 622L1213 639L825 250L1213 -139ZM367 -209Q373 -215 384 -224T434 -258T514 -302T622 -336T755 -352T887 -338T996 -302T1075 -259T1126 -224L1143 -209L755 180Q754 180 561 -14T367 -209",10756:"56 911Q58 926 71 938T103 950Q120 950 134 939T152 911Q153 907 153 463Q153 16 154 6Q165 -143 279 -247T556 -352Q716 -352 830 -248T956 6Q957 16 957 463Q957 907 958 911Q962 928 975 939T1006 950T1037 939T1054 911Q1055 906 1055 451Q1054 -5 1053 -16Q1029 -207 889 -328T555 -449Q363 -449 226 -331T62 -45Q57 -16 57 25T55 451Q55 906 56 911ZM507 554Q511 570 523 581T554 593Q571 593 585 582T603 554Q604 551 604 443V338H709Q817 338 820 337Q835 334 847 321T859 290Q859 254 819 241Q816 240 709 240H604V134Q604 48 604 34T598 11Q583 -15 555 -15Q526 -15 512 11Q507 20 507 34T506 134V240H401H344Q292 240 278 246Q251 259 251 290Q251 309 264 321T290 337Q293 338 401 338H506V443Q506 551 507 554",10758:"56 911Q60 927 72 938T103 950Q120 950 134 939T152 911Q153 907 153 277V-352H957V277Q957 907 958 911Q962 928 975 939T1006 950T1036 939T1054 911V891Q1054 871 1054 836T1054 754T1054 647T1055 525T1055 390T1055 250T1055 111T1055 -24T1055 -147T1054 -253T1054 -335T1054 -391V-411Q1047 -442 1016 -449Q1011 -450 552 -450L94 -449Q63 -439 56 -411V-391Q56 -371 56 -336T56 -254T56 -147T55 -25T55 110T55 250T55 389T55 524T55 647T56 753T56 835T56 891V911",12296:"112 244V258L473 1130Q482 1150 498 1150Q511 1150 517 1142T523 1125V1118L344 685Q304 587 257 473T187 305L165 251L344 -184L523 -616V-623Q524 -634 517 -641T499 -649Q484 -649 473 -629L112 244",12297:"112 -649Q103 -649 95 -642T87 -623V-616L266 -184L445 251Q445 252 356 466T178 898T86 1123Q85 1134 93 1142T110 1150Q126 1150 133 1137Q134 1136 317 695L498 258V244L317 -194Q134 -635 133 -636Q126 -649 112 -649"},{10764:"\u222c\u222c"})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.largeop=void 0,e.largeop={40:[1.15,.649,.597],41:[1.15,.649,.597],47:[1.15,.649,.811],91:[1.15,.649,.472],92:[1.15,.649,.811],93:[1.15,.649,.472],123:[1.15,.649,.667],125:[1.15,.649,.667],710:[.772,-.565,1],732:[.75,-.611,1],770:[.772,-.565,0],771:[.75,-.611,0],8214:[.602,0,.778],8260:[1.15,.649,.811],8593:[.6,0,.667],8595:[.6,0,.667],8657:[.599,0,.778],8659:[.6,0,.778],8719:[.95,.45,1.278],8720:[.95,.45,1.278],8721:[.95,.45,1.444],8730:[1.15,.65,1,{ic:.02}],8739:[.627,.015,.333],8741:[.627,.015,.556],8747:[1.36,.862,.556,{ic:.388}],8748:[1.36,.862,1.084,{ic:.388}],8749:[1.36,.862,1.592,{ic:.388}],8750:[1.36,.862,.556,{ic:.388}],8896:[.95,.45,1.111],8897:[.95,.45,1.111],8898:[.949,.45,1.111],8899:[.95,.449,1.111],8968:[1.15,.649,.528],8969:[1.15,.649,.528],8970:[1.15,.649,.528],8971:[1.15,.649,.528],9001:[1.15,.649,.611],9002:[1.15,.649,.611],9168:[.602,0,.667],10072:[.627,.015,.333],10216:[1.15,.649,.611],10217:[1.15,.649,.611],10752:[.949,.449,1.511],10753:[.949,.449,1.511],10754:[.949,.449,1.511],10756:[.95,.449,1.111],10758:[.95,.45,1.111],10764:[1.36,.862,2.168,{ic:.388}],12296:[1.15,.649,.611],12297:[1.15,.649,.611]}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.monospace=void 0;var r=Q(6),T=Q(234);e.monospace=r.AddPaths(T.monospace,{32:"",33:"206 565Q206 590 222 606T265 622Q287 621 303 606T319 565T314 392L308 216Q299 194 273 194H262Q247 194 241 195T228 200T217 216L211 392Q206 539 206 565ZM206 56Q206 83 223 99T265 115Q288 113 304 99T320 58Q320 33 303 17T262 0Q237 0 222 17T206 56",34:"122 575Q122 593 137 608T173 623Q196 623 210 608T225 575Q225 562 218 464Q212 373 211 361T201 341Q193 333 173 333Q154 333 146 341Q138 348 137 360T129 464Q122 561 122 575ZM299 575Q299 593 314 608T350 623Q373 623 387 608T402 575Q402 562 395 464Q389 373 388 361T378 341Q370 333 350 333Q331 333 323 341Q315 348 314 360T306 464Q299 561 299 575",35:"93 163Q74 163 65 164T46 173T36 198Q36 210 40 215T61 233H131V236Q132 239 140 307T149 377Q149 379 105 379L61 380Q36 392 36 414Q36 450 86 450Q91 450 99 450T112 449H159Q163 480 167 517Q168 524 170 545T174 573T180 591T191 607T210 611Q223 611 232 604T243 588L245 580Q245 565 238 511T230 451Q230 449 282 449H333Q337 480 341 517Q342 524 343 537T345 556T348 573T352 589T359 600T370 608T384 611Q395 611 406 602T419 580Q419 565 412 511T404 451Q404 449 431 449H442Q477 449 485 429Q489 421 489 414Q489 392 463 380L428 379H394V376Q393 373 385 305T376 235Q376 233 419 233H463L468 230Q472 227 473 227T477 223T482 218T486 213T488 206T489 198Q489 162 436 162Q430 162 422 162T412 163H366V161Q364 159 357 92Q356 85 355 73T353 54T350 37T346 22T339 11T328 3T314 0Q303 0 292 9T279 31Q279 37 287 96T295 162Q295 163 244 163H192V161Q190 159 183 92Q182 85 181 73T179 54T176 37T172 22T165 11T154 3T140 0Q129 0 118 9T105 31Q105 37 113 96T121 162Q121 163 93 163ZM323 377Q323 379 272 379H220V376Q219 373 211 305T202 235Q202 233 253 233H305V236Q306 239 314 307T323 377",36:"415 397Q392 397 377 411T362 448Q362 464 376 485Q369 498 362 506T346 520T332 528T315 533T300 538V445L301 353L311 350Q382 334 424 284T466 174Q466 115 425 65T303 -2L300 -3V-30Q300 -64 291 -74Q283 -82 262 -82H255Q234 -82 225 -60L224 -32V-4L213 -2Q152 6 106 51T59 170V180Q59 197 74 213Q89 227 110 227T146 213T162 174Q162 156 147 137Q153 123 161 112T176 95T191 85T205 79T216 76T224 74V283L213 285Q147 298 103 343T58 449Q58 516 108 560T224 614V643V654Q224 666 226 673T237 687T264 694Q289 693 294 683T300 642V615H303Q355 607 390 587T440 540T460 493T466 453Q466 425 451 411T415 397ZM137 452Q137 425 158 404T198 376T223 369Q224 369 224 453T223 537Q198 532 168 509T137 452ZM301 75Q307 75 325 83T365 116T387 171Q387 238 300 267V171Q300 75 301 75",37:"35 560Q35 607 54 645T110 693Q111 693 116 693T125 694Q165 692 187 651T210 560Q210 506 186 467T123 428Q84 428 60 466T35 560ZM139 560Q139 574 136 587T130 608T124 615Q122 617 120 614Q106 595 106 561Q106 516 121 506Q123 504 125 507Q139 526 139 560ZM123 -83Q107 -83 98 -73T88 -48Q88 -43 89 -41Q90 -37 229 316T370 675Q381 694 400 694Q416 694 426 684T436 659Q436 654 435 652Q434 647 295 294T153 -65Q144 -83 123 -83ZM314 50Q314 104 338 143T400 183Q439 183 464 144T489 50T465 -43T402 -82Q358 -82 336 -41T314 50ZM417 50Q417 71 413 85T405 102L401 106Q386 95 386 50Q386 29 390 15T398 -2L402 -6Q417 5 417 50",38:"96 462Q96 546 132 584T211 622Q255 622 284 583T314 474Q314 395 224 305L208 288Q213 275 226 251L265 185L269 179Q273 184 299 246L332 333L342 363Q342 364 341 365Q334 365 334 393Q334 406 334 410T340 420T356 431H412H440Q467 431 478 424T490 393Q490 376 484 367T470 357T448 355H441H415L399 312Q349 176 322 127L315 115L323 106Q360 65 393 65Q405 65 410 80T416 109Q416 140 452 140Q487 140 487 105Q487 56 460 23T391 -11L286 41L273 53L262 42Q212 -11 151 -11Q97 -11 63 33T28 143Q28 161 30 176T38 205T47 227T60 247T72 261T84 274T94 283L122 311L119 323Q96 392 96 462ZM243 474Q243 533 218 545L215 546Q212 546 210 546Q182 546 169 501Q167 492 167 466Q167 419 179 368L188 377Q234 425 242 461Q243 465 243 474ZM217 129Q185 174 154 235Q121 214 115 176Q113 168 113 143Q113 83 139 67Q141 66 152 66Q191 66 228 112L217 129",39:"205 554Q205 577 221 594T263 611Q302 611 325 577T349 490Q349 409 298 347Q285 330 258 309T214 287Q203 289 189 302T175 327Q175 341 185 349T213 369T245 402Q269 437 273 483V497Q264 496 263 496Q240 496 223 513T205 554",40:"437 -53Q437 -82 399 -82H394Q377 -82 342 -55Q259 7 213 102T166 306Q166 412 211 507T342 667Q377 694 393 694H399Q437 694 437 665Q437 654 426 643T397 620T356 584T311 525Q301 511 290 488T264 412T250 306Q250 191 300 105T422 -27Q437 -37 437 -53",41:"87 664Q87 694 126 694Q138 694 147 690T183 667Q266 605 312 510T358 306Q358 193 307 93T161 -70Q142 -82 126 -82Q105 -82 96 -73T87 -53Q87 -47 88 -44Q92 -36 116 -19T173 34T230 119Q273 206 273 306Q273 408 231 494T109 635Q87 649 87 664",42:"222 487Q224 501 235 510T262 520Q279 520 289 510T302 487Q302 458 301 429Q301 421 301 413T301 398T300 386T300 377V374Q300 373 301 373Q304 373 353 403T416 434Q432 434 444 423T456 393Q456 389 456 386T454 379T451 373T448 368T442 363T436 358T427 353T417 348T405 342T391 334Q345 309 339 305L388 279Q400 273 412 266T432 255T441 250Q456 238 456 218Q456 200 445 189T417 177Q403 177 354 207T301 238Q300 238 300 237V234Q300 231 300 226T300 214T301 199T301 182Q302 153 302 124Q300 109 289 100T262 90T235 100T222 124Q222 153 223 182Q223 190 223 198T223 213T224 225T224 234V237Q224 238 223 238Q220 238 171 208T108 177Q92 177 80 188T68 218Q68 237 79 246T134 277Q180 303 185 306L136 332Q124 338 112 345T92 356T83 361Q68 373 68 393Q68 411 79 422T107 434Q121 434 170 404T223 373Q224 373 224 374V377Q224 380 224 385T224 397T223 412T223 429Q222 458 222 487",43:"147 271Q138 271 122 271T98 270Q68 270 53 277T38 306T53 335T98 342Q105 342 121 342T147 341H227V423L228 505Q241 531 262 531Q268 531 273 530T282 525T287 519T293 511L297 505V341H377H430Q457 341 467 338T483 321Q487 313 487 306Q487 295 480 286T463 273Q457 271 377 271H297V107Q281 81 262 81Q250 81 242 87T230 100L228 107L227 189V271H147",44:"193 37T193 70T213 121T260 140Q302 140 327 108T353 36Q353 -7 336 -43T294 -98T249 -128T215 -139Q204 -139 189 -125Q177 -111 174 -101Q172 -84 183 -77T217 -61T253 -33Q261 -24 272 1L265 0Q234 0 214 18",45:"57 306Q57 333 86 341H438Q468 332 468 306T438 271H86Q57 280 57 306",46:"193 70Q193 105 214 122T258 140Q291 140 311 120T332 70Q332 44 314 23T262 1Q234 1 214 18T193 70",47:"94 -83Q78 -83 68 -73T58 -48Q58 -44 60 -36Q62 -31 227 314T399 673Q410 694 431 694Q445 694 455 684T466 659Q466 656 464 648Q463 643 298 298T125 -62Q114 -83 94 -83",58:"193 361Q193 396 214 413T258 431Q291 431 311 411T332 361Q332 335 314 314T262 292Q234 292 214 309T193 361ZM193 70Q193 105 214 122T258 140Q291 140 311 120T332 70Q332 44 314 23T262 1Q234 1 214 18T193 70",59:"193 361Q193 396 214 413T258 431Q291 431 311 411T332 361Q332 335 314 314T262 292Q234 292 214 309T193 361ZM193 70Q193 105 214 122T259 140Q301 140 319 108T337 33Q337 -38 291 -88T214 -139Q203 -139 189 -126T175 -97Q175 -85 182 -78T200 -66T225 -50T249 -17Q256 -3 256 0Q252 1 248 1Q242 2 235 5T218 15T200 36T193 70",60:"468 90Q468 76 458 66T433 55Q426 55 419 58Q413 61 243 168T68 280Q57 291 57 306T68 332Q72 335 241 442T416 553Q424 557 432 557Q447 557 457 547T468 522T456 496Q454 494 305 399L158 306L305 213Q341 190 390 159Q443 125 452 119T464 106V105Q468 97 468 90",61:"38 382Q38 409 67 417H457Q487 408 487 382Q487 358 461 348H64Q51 352 45 360T38 376V382ZM67 195Q38 204 38 230Q38 255 62 264Q66 265 264 265H461L464 264Q467 262 469 261T475 256T481 249T485 240T487 230Q487 204 457 195H67",62:"57 522Q57 539 67 548T90 557Q98 557 105 554Q111 551 281 444T456 332Q468 320 468 306T456 280Q452 276 282 169T105 58Q98 55 91 55Q79 55 68 63T57 90Q57 105 68 116Q70 118 219 213L366 306L219 399Q75 491 71 494Q57 507 57 522",63:"62 493Q62 540 107 578T253 617Q366 617 414 578T462 490Q462 459 445 434T411 400L394 390Q315 347 296 287Q294 278 293 247V217Q285 201 278 198T246 194T216 197T201 215V245V253Q201 379 351 456Q366 464 375 477Q377 482 377 490Q377 517 339 528T251 540Q182 540 159 517Q166 503 166 490Q166 468 151 453T114 438Q96 438 79 451T62 493ZM190 58Q190 85 208 100T249 115Q272 113 288 99T304 58Q304 33 287 17T246 0T206 16T190 58",64:"44 306Q44 445 125 531T302 617Q332 617 358 607T411 574T456 502T479 387Q481 361 481 321Q481 203 421 143Q381 103 332 103Q266 103 225 165T183 307Q183 390 227 449T332 508Q358 508 378 498Q350 541 304 541Q229 541 172 473T115 305Q115 208 171 140T306 71H310Q358 71 397 105Q409 115 436 115Q458 115 462 113Q481 106 481 86Q481 73 468 61Q401 -6 305 -6Q262 -6 217 14T133 71T69 170T44 306ZM410 306Q410 361 386 396T333 431Q300 431 277 394T254 305Q254 256 276 218T332 180Q364 180 387 217T410 306",91:"237 -82Q221 -78 214 -58V305Q214 669 216 673Q220 687 231 690T278 694H350H461Q462 693 467 690T474 685T478 679T482 670T483 656Q483 632 471 625T428 617Q422 617 406 617T379 618H298V-7H379H420Q459 -7 471 -13T483 -45Q483 -55 483 -59T477 -70T461 -82H237",92:"58 659Q58 673 68 683T93 694Q114 694 125 673Q132 659 297 314T464 -36Q466 -44 466 -48Q466 -66 454 -74T431 -83Q410 -83 399 -62Q391 -47 226 298T60 648Q58 656 58 659",93:"41 656Q41 681 53 688T99 695Q107 695 133 695T177 694H288Q307 681 310 669V-58Q303 -76 288 -82H64Q41 -73 41 -45Q41 -21 53 -14T96 -6Q102 -6 118 -6T145 -7H226V618H145H100Q67 618 54 625T41 656",94:"138 460Q121 460 109 479T96 512Q96 527 106 534Q109 536 178 571T253 609Q256 611 264 611Q272 610 343 574Q357 567 369 561T389 550T402 543T411 538T416 535T420 532T422 529T425 525Q428 518 428 512Q428 498 416 479T386 460H384Q377 460 316 496L262 526L208 496Q147 460 138 460",95:"57 -60Q57 -33 86 -25H438Q468 -34 468 -60T438 -95H86Q57 -86 57 -60",96:"176 479Q176 563 227 622T310 681Q324 680 337 667T350 641Q350 627 340 619T312 599T280 566Q256 531 252 485V471Q261 472 262 472Q285 472 302 455T320 414Q320 389 303 373T261 357Q223 357 200 391T176 479",123:"430 -7H436Q449 -7 456 -8T469 -19T475 -45Q475 -69 466 -76T434 -83H419Q386 -82 363 -80T308 -69T253 -41T223 7L221 17L220 118V220L218 224Q215 229 214 230T210 235T204 241T195 246T184 252T170 257T151 262T127 265Q118 267 100 267T69 270T52 283Q50 288 50 306V314Q50 335 67 341Q68 342 102 343T172 355T217 386L220 392V493L221 595Q225 611 230 621T251 650T304 679T395 693L406 694Q418 694 426 694Q458 694 466 685Q475 676 475 656T466 627Q458 618 430 618Q319 618 305 587L304 486Q304 476 304 458T305 431Q305 385 295 358T251 311L243 306Q243 305 254 298T281 274T302 231Q304 223 304 125L305 25Q309 16 316 10T352 -1T430 -7",124:"228 668Q241 694 262 694Q268 694 273 693T282 688T287 682T293 674L297 668V-57Q282 -82 262 -82Q239 -82 228 -57V668",125:"49 655Q49 674 56 682T73 692T106 694Q141 693 167 690T224 677T275 647T303 595L305 392Q313 367 347 356T417 344T457 341Q475 335 475 306Q475 292 473 285T464 273T451 269T430 267Q352 262 327 246Q311 236 305 220L303 17L301 7Q294 -16 277 -33T242 -60T196 -74T150 -80T106 -83Q78 -83 72 -82T58 -74Q49 -65 49 -44Q49 -24 58 -16Q66 -7 94 -7Q143 -7 171 -1T207 10T220 25V125Q220 223 222 231Q228 257 243 274T270 299L281 306Q234 329 222 381Q220 387 220 486V587Q212 597 207 601T173 612T94 618Q66 618 58 627Q49 635 49 655",126:"125 467Q113 467 100 480T87 509Q88 520 111 543Q172 602 209 609Q219 611 224 611Q246 611 263 596T290 566T304 551Q319 551 367 594Q383 610 396 610H400Q411 610 424 597T437 568Q436 557 413 534Q348 469 305 466Q278 466 260 481T234 511T220 526Q205 526 157 483Q141 467 129 467H125",127:"104 565Q104 590 120 600T155 611Q175 611 180 610Q217 599 217 565Q217 545 202 532T166 519H159H155Q120 519 107 547Q104 553 104 565ZM307 565Q307 580 317 593T346 610Q348 610 350 610T354 611Q355 612 367 612Q395 611 408 597T421 565T409 534T365 519H358Q336 519 322 532T307 565",160:"",305:"411 76Q441 76 451 69T462 38Q462 29 462 26T460 18T453 9T440 1H94Q72 8 72 33V38Q72 46 72 49T74 58T81 68T94 76H233V355H167L102 356Q80 363 80 393Q80 418 91 425T138 432Q145 432 165 432T200 431H295Q297 429 303 425T310 420T314 415T317 404T317 389T318 363Q318 354 318 314T317 241V76H378H411",567:"75 -91T100 -91T138 -107T152 -144V-150L160 -151H193H203Q241 -151 267 -121Q284 -97 288 -73T292 23V151V355H218L145 356Q123 365 123 387V393Q123 422 145 430H148Q151 430 156 430T169 430T185 430T205 431T227 431T251 431H354Q356 430 360 427T365 424T369 420T372 416T373 410T375 402T376 391T377 376T377 356Q377 345 377 286T376 176Q376 -67 371 -88Q362 -123 342 -151T299 -194Q254 -228 180 -228Q84 -226 56 -177Q49 -162 48 -148Q48 -122 61 -107",697:"211 572Q211 593 226 608T262 623Q281 623 297 610T313 573Q313 561 307 465Q301 370 299 357T284 336Q279 334 262 334Q240 334 231 343Q226 350 225 362T217 465Q211 549 211 572",768:"-409 569Q-409 586 -399 596T-377 610Q-376 610 -372 610T-365 611Q-355 610 -284 588T-210 563Q-195 556 -195 537Q-195 533 -197 522T-208 498T-229 485Q-238 485 -312 508T-388 533Q-400 538 -405 552Q-409 559 -409 569",769:"-297 485Q-315 485 -323 505T-331 537Q-331 556 -316 563Q-307 569 -170 610Q-169 610 -165 610T-157 611Q-141 609 -131 600T-119 584T-117 569Q-117 555 -124 545T-138 533Q-140 531 -214 508T-297 485",770:"-387 460Q-404 460 -416 479T-429 512Q-429 527 -419 534Q-416 536 -347 571T-272 609Q-269 611 -261 611Q-254 610 -182 574Q-168 567 -156 561T-136 550T-123 543T-114 538T-109 535T-105 532T-103 529T-100 525Q-97 518 -97 512Q-97 498 -109 479T-139 460H-141Q-148 460 -209 496L-263 526L-317 496Q-378 460 -387 460",771:"-400 467Q-412 467 -425 480T-438 509Q-437 520 -414 543Q-353 602 -316 609Q-306 611 -301 611Q-279 611 -262 596T-235 566T-221 551Q-206 551 -158 594Q-142 610 -129 610H-125Q-114 610 -101 597T-88 568Q-89 557 -112 534Q-177 469 -220 466Q-247 466 -265 481T-291 511T-305 526Q-320 526 -368 483Q-384 467 -396 467H-400",772:"-429 500Q-440 504 -445 511T-450 522T-452 536Q-452 552 -451 556Q-445 571 -434 574T-379 578Q-369 578 -330 578T-261 577H-96Q-94 575 -90 573T-85 569T-81 564T-77 558T-75 550T-74 538Q-74 522 -78 515T-96 500H-429",774:"-446 579Q-446 611 -412 611H-407Q-383 609 -378 599T-358 587Q-340 583 -263 583H-235Q-159 583 -152 593Q-145 611 -120 611H-117H-115Q-79 611 -79 577Q-80 552 -95 536T-140 514T-191 506T-251 504H-263H-274Q-311 504 -334 505T-386 513T-431 536T-446 579",776:"-421 565Q-421 590 -405 600T-370 611Q-350 611 -345 610Q-308 599 -308 565Q-308 545 -323 532T-359 519H-366H-370Q-405 519 -418 547Q-421 553 -421 565ZM-218 565Q-218 580 -208 593T-179 610Q-177 610 -175 610T-171 611Q-170 612 -158 612Q-130 611 -117 597T-104 565T-116 534T-160 519H-167Q-189 519 -203 532T-218 565",778:"-344 558Q-344 583 -321 601T-262 619Q-225 619 -204 600T-182 560Q-182 536 -205 518T-264 499Q-301 499 -322 519T-344 558ZM-223 559Q-223 570 -234 579T-261 588T-289 580T-303 559Q-303 549 -293 540T-263 530T-234 539T-223 559",780:"-427 525Q-427 542 -417 559T-392 577Q-385 577 -323 553L-263 530L-203 553Q-143 576 -136 576Q-118 576 -109 559T-99 525Q-99 508 -107 502T-161 481Q-177 475 -186 472Q-256 449 -263 449Q-272 449 -339 472T-412 498Q-420 501 -423 508T-427 520V525",913:"191 76Q212 75 220 68T229 38Q229 10 208 1H129H80Q48 1 38 7T28 38Q28 51 29 57T40 69T70 76Q89 76 89 78Q90 79 117 205T173 461T205 599Q212 623 250 623H262H273Q312 623 319 599Q322 591 350 461T406 205T435 78Q435 76 454 76H458Q484 76 493 59Q496 53 496 38Q496 11 478 3Q474 1 395 1H317Q295 8 295 38Q295 65 311 73Q316 75 333 76L348 77V78Q348 80 341 112L334 143H190L183 112Q176 80 176 78Q175 76 178 76Q180 76 191 76ZM318 221Q313 238 288 366T263 519Q263 526 262 527Q261 527 261 520Q261 493 236 365T206 221Q206 219 262 219T318 221",914:"39 1Q17 10 17 32V38V46Q17 65 34 73Q40 76 61 76H84V535H61H54Q27 535 19 553Q17 557 17 573Q17 583 17 587T23 599T39 610Q40 611 179 611Q320 610 332 607Q332 607 339 605Q394 591 427 547T461 454Q461 413 436 378T369 325L358 320Q405 311 443 270T482 169Q482 112 445 64T345 3L334 1H39ZM309 533Q302 535 234 535H168V356H230Q284 357 296 358T323 368Q346 380 361 402T377 452Q377 482 358 505T309 533ZM398 176Q396 218 371 246T315 279Q310 280 237 280H168V76H239Q316 77 327 81Q329 82 334 84Q398 107 398 176",915:"466 611Q468 609 473 606T479 602T483 598T486 593T487 586T488 576T488 562V526V488Q488 452 470 444Q466 442 446 442Q421 442 413 450Q406 457 405 463T404 501V535H185V76H222H239Q260 76 270 69T281 38Q281 12 270 6T209 0H155H104Q48 0 37 5T25 38Q25 59 35 69Q44 76 76 76H101V535H76H64Q36 535 27 552Q25 557 25 573T27 594Q33 606 43 608T106 611H258H466",916:"232 622H237Q242 622 249 622T264 623H293Q295 622 300 619T308 613T314 608T319 601Q322 597 405 316T489 19Q489 9 473 1Q471 0 262 0T51 1Q35 9 35 19Q35 34 118 315T205 601Q214 616 232 622ZM267 501Q266 504 265 510T263 521T261 526V523Q261 508 211 332Q142 91 138 82H386Q385 84 345 224Q281 439 267 501",917:"374 271Q374 241 367 232T332 223Q307 223 299 231Q290 240 290 263V279H173V76H418V118V144Q418 167 426 176T460 186Q491 186 500 166Q502 161 502 93V52Q502 25 499 17T480 1H41Q19 9 19 32V38Q19 63 36 73Q42 76 65 76H89V535H65H55Q44 535 38 537T25 548T19 573Q19 602 41 610H47Q53 610 63 610T88 610T121 610T160 611T204 611T251 611H458Q460 609 465 606T471 602T475 598T478 593T479 586T480 576T480 562V526V488Q480 452 462 444Q458 442 438 442Q413 442 405 450Q398 457 397 463T396 501V535H173V355H290V371Q290 394 299 403T332 412Q363 412 372 392Q374 387 374 317V271",918:"71 1Q60 5 55 11T49 23T48 39V46Q48 56 58 73T131 183Q171 242 197 282L366 535H144V501Q144 470 143 464T135 450Q127 442 102 442H94Q71 442 62 461Q60 466 60 527L61 589Q70 607 83 610H88Q93 610 102 610T124 610T154 610T188 611T227 611T270 611H454Q456 609 461 606T467 601T471 597T474 591T475 584T476 572V565Q476 555 466 538T393 428Q353 369 327 329L158 76H397V120V146Q397 169 405 179T439 189Q470 189 479 169Q481 164 481 95V48Q481 24 478 16T459 1H71",919:"16 571Q16 597 27 604T74 611H125H208Q223 602 226 596T230 573Q230 559 227 551T217 540T204 536T186 535H165V356H359V535H338H333Q306 535 297 552Q295 556 295 573Q295 586 295 590T301 600T317 611H486Q501 602 504 596T508 573Q508 559 505 551T495 540T482 536T464 535H443V76H464H470Q482 76 489 75T502 64T508 38Q508 10 486 1H317Q306 5 301 11T296 21T295 38V44Q295 66 311 73Q318 76 338 76H359V280H165V76H186H192Q204 76 211 75T224 64T230 38Q230 10 208 1H39Q28 5 23 11T18 21T17 38V44Q17 66 33 73Q40 76 60 76H81V535H60Q45 535 38 536T24 545T16 571",920:"102 588Q140 621 240 621Q323 621 335 620Q393 613 422 588Q450 560 459 493T468 306Q468 185 460 118T422 23Q382 -10 289 -10H262H235Q142 -10 102 23Q74 50 65 118T56 306Q56 427 64 494T102 588ZM262 66Q285 66 300 67T329 74T351 86T366 108T376 138T381 181T383 235T384 306Q384 452 371 492T304 544Q296 545 251 545Q230 545 215 543T188 534T169 520T155 497T147 466T143 423T141 371T140 306Q140 247 141 215T146 151T158 107T179 82T212 69T262 66ZM179 356Q187 378 219 378H223Q240 377 249 372T260 360L261 355Q261 353 262 353T263 355Q263 362 272 369Q280 377 304 377H310Q325 377 331 374T346 356V256Q338 241 331 238T309 234H304Q280 234 272 242Q263 249 263 256Q263 258 262 258T261 256Q261 249 252 242Q244 234 220 234H216Q186 234 179 256V356",921:"400 76Q431 76 441 69T452 38Q452 29 452 26T450 18T443 9T430 1H95Q84 6 79 12T73 23T72 38Q72 65 90 73Q96 76 157 76H220V535H157H124Q93 535 83 542T72 573Q72 603 93 610Q97 611 264 611H430Q432 609 436 607T444 602T449 594Q452 588 452 573Q452 546 434 538Q428 535 367 535H304V76H367H400",922:"18 549T18 573T29 604T70 611H118H193Q207 603 210 596T214 573Q214 549 198 538Q191 535 172 535H152V421Q152 344 152 326T153 309L242 422L329 534Q327 535 322 536T314 538T308 542T303 548T300 558T298 573Q298 600 316 608Q322 611 392 611H463Q477 602 481 595T485 573Q485 535 446 535H441H420L281 357L436 77L454 76Q473 75 478 73Q495 62 495 38Q495 10 473 1H345Q334 5 329 11T324 21T323 38Q323 51 324 56T332 68T355 77L233 296L152 192V76H172Q191 76 198 73Q214 63 214 38Q214 9 193 1H41Q18 8 18 38Q18 61 35 73Q42 76 61 76H81V535H61Q42 535 35 538Q18 549 18 573",923:"30 38Q30 57 38 66T70 76Q88 76 88 78Q89 79 117 207T173 466T205 602Q213 617 231 622H236Q241 622 249 622T264 623H294Q315 609 319 602Q321 598 350 468T407 208T435 78Q436 76 454 76Q470 76 478 73Q495 62 495 38Q495 10 473 1H313Q290 10 290 38Q290 56 297 65T310 74T331 76Q350 76 350 78Q349 80 328 176T285 383T263 520Q263 526 262 527Q261 527 261 521Q261 497 240 388T198 181T174 78Q174 76 193 76Q220 75 227 65Q234 56 234 38Q234 28 234 24T228 13T212 1H52Q30 9 30 32V38",924:"50 535Q37 536 31 537T18 547T12 573Q12 598 22 604T62 611H91H121Q147 611 158 607T178 587Q183 579 222 446T261 293Q261 289 262 288Q263 288 263 292Q263 311 298 434T346 588Q353 603 365 607T402 611H435H450Q488 611 500 605T512 573Q512 556 506 547T493 537T474 535H459V76H474Q487 75 493 74T505 64T512 38Q512 11 494 3Q490 1 424 1H386Q355 1 345 7T335 38Q335 55 341 64T354 74T373 76H388V302Q388 512 387 519Q382 482 346 359T304 228Q292 204 262 204T220 228Q215 237 179 359T137 519Q136 512 136 302V76H151Q164 75 170 74T182 64T189 38Q189 11 171 3Q167 1 101 1H63Q32 1 22 7T12 38Q12 55 18 64T31 74T50 76H65V535H50",925:"20 571Q20 598 30 604T73 611H105H136Q152 611 160 611T177 607T189 601T198 587T206 568T217 537T231 497Q354 142 365 95L368 84V535H347H342Q314 535 306 552Q304 556 304 573Q304 586 304 590T310 600T326 611H482Q497 602 500 596T504 573Q504 559 501 551T491 540T478 536T460 535H439V25Q432 7 424 4T389 0H374Q334 0 322 31L293 115Q171 468 159 517L156 528V76H177H183Q195 76 202 75T215 64T221 38Q221 10 199 1H43Q32 5 27 11T22 21T21 38V44Q21 66 37 73Q44 76 64 76H85V535H64Q49 535 42 536T28 545T20 571",926:"37 555V569Q37 605 60 610H66Q71 610 81 610T105 610T137 610T175 611T217 611T264 611H465Q467 609 471 606T477 602T481 599T484 594T485 588T487 580T487 570T487 554Q487 526 486 520T478 506Q470 498 445 498T412 506Q403 515 403 531V539H121V531Q121 498 86 498H79H71Q48 498 39 517Q37 522 37 555ZM109 318V346Q109 366 113 374T132 389H170Q193 379 193 359V354H331V359Q331 379 354 389H392Q407 381 411 373T415 342V318V290Q415 270 411 262T392 247H354Q331 257 331 277V282H193V277Q193 257 170 247H132Q117 255 113 263T109 294V318ZM56 1Q41 7 37 15T33 42V58V80Q33 101 41 110T77 119Q87 118 91 118T103 114T114 103T117 83V72H407V83Q407 101 416 110T449 119T482 110Q489 103 490 97T491 59V41Q491 24 487 16T469 1H56",927:"102 588Q140 621 240 621Q323 621 335 620Q393 613 422 588Q450 560 459 493T468 306Q468 185 460 118T422 23Q382 -10 289 -10H262H235Q142 -10 102 23Q74 50 65 118T56 306Q56 427 64 494T102 588ZM363 513Q357 523 347 530T324 540T302 544T280 546H268Q192 546 167 521Q150 501 145 452T140 300Q140 235 142 197T151 130T172 89T207 71T262 65Q317 65 341 81T374 144T384 300Q384 474 363 513",928:"60 535Q45 535 38 536T24 545T16 571Q16 603 36 609Q41 611 264 611H486Q501 602 504 596T508 573Q508 559 505 551T495 540T482 536T464 535H443V76H464H470Q482 76 489 75T502 64T508 38Q508 10 486 1H317Q306 5 301 11T296 21T295 38V44Q295 66 311 73Q318 76 338 76H359V535H165V76H186H192Q204 76 211 75T224 64T230 38Q230 10 208 1H39Q28 5 23 11T18 21T17 38V44Q17 66 33 73Q40 76 60 76H81V535H60",929:"41 1Q19 9 19 32V38Q19 63 36 73Q42 76 65 76H89V535H65H55Q38 535 29 543T19 576Q19 603 41 610H49Q57 610 70 610T100 610T136 611T175 611Q190 611 216 611T255 612Q321 612 363 598T441 537Q480 486 480 427V421Q480 354 447 311T378 251Q339 230 275 230H239H173V76H197Q220 76 227 73Q244 62 244 38Q244 10 222 1H41ZM396 421Q396 461 369 491T300 533Q294 534 233 535H173V306H233Q294 307 300 308Q345 319 370 352T396 421",931:"40 575Q40 576 40 579T41 583T41 588T43 593T46 597T50 602T55 606T63 610H68Q74 610 84 610T108 610T139 610T176 611T219 611T264 611H462Q464 609 469 606T475 602T479 598T482 593T483 586T484 576T484 562V526V488Q484 452 466 444Q462 442 442 442Q417 442 409 450Q402 457 401 463T400 501V535H153Q153 533 218 430Q233 405 250 378T276 336T286 319Q290 311 290 307Q290 296 239 211Q229 194 223 184L161 78H400V112Q400 142 401 149T409 163Q418 172 442 172Q473 172 482 152Q484 147 484 86V49Q484 25 481 17T462 1H63Q41 10 41 31Q41 39 43 44Q43 45 81 109T157 238L195 303Q195 307 119 430T41 557T40 575",932:"129 38Q129 51 129 55T135 65T151 76H220V535H110V501Q110 470 109 464T101 450Q93 442 68 442H60Q37 442 28 461Q26 466 26 527L27 589Q36 607 49 610H55Q61 610 72 610T97 610T131 610T170 611T215 611T264 611H476Q478 609 483 606T489 602T493 598T496 593T497 586T498 576T498 562V526V488Q498 452 480 444Q476 442 456 442Q431 442 423 450Q416 457 415 463T414 501V535H304V76H374Q389 67 392 61T396 38Q396 10 374 1H151Q140 5 135 11T130 21T129 38",933:"38 494Q38 549 74 585T152 621Q168 621 179 619T209 606T241 566T262 492Q262 494 265 507T270 526T276 547T285 569T298 589T315 606T337 617T365 622Q416 622 451 584T486 494Q486 470 469 461Q464 459 445 459H437Q416 459 406 476Q404 479 403 502T393 541T365 558Q350 558 340 548T323 519T312 475T307 419T305 354T304 282Q304 254 304 239V76H358Q372 67 376 60T380 38Q380 10 358 1H167Q145 9 145 32V38Q145 54 148 60T167 76H220V239Q220 256 220 289T220 338T219 383T217 426T214 463T209 497T201 522T189 543T174 555Q168 558 159 558Q139 558 131 541T121 502T118 476Q108 459 84 459H79H71Q38 459 38 494",934:"139 573V578Q139 603 161 610H166Q172 610 182 610T204 610T232 611T264 611H364Q379 602 382 595T385 573Q385 544 364 536L334 535H304V441H306Q313 440 325 438T367 426T421 403T464 364T483 306Q483 251 430 216T317 172Q315 172 313 172T308 170H306H304V76H364Q379 67 382 60T385 38Q385 28 385 24T379 12T364 1H161Q139 8 139 33V38Q139 46 139 49T141 58T148 68T161 76H220V170H218Q211 171 199 173T157 185T103 208T60 248T41 306Q41 361 94 396T208 439Q210 439 212 439T216 440L218 441H220V535H190L161 536Q139 543 139 573ZM124 306Q124 286 147 271T194 252L218 247Q220 247 220 306V364H218Q212 364 192 359T148 340T124 306ZM400 305Q400 325 377 340T330 360L306 364Q304 364 304 306Q304 247 306 247Q312 247 332 252T376 271T400 305",935:"39 571Q39 597 49 604T93 611H141H218Q233 602 236 595T239 573Q239 538 210 535Q202 535 202 534T215 507T243 454L257 428L307 535H298Q266 538 266 573Q266 584 267 588T273 598T289 611H366H401Q442 611 454 605T466 573Q466 546 448 538Q442 535 421 535H398L299 327Q299 323 362 201L426 77L449 76Q467 76 475 75T489 65T495 38Q495 11 477 3Q473 1 395 1H317Q295 8 295 38Q295 73 325 76L334 77Q333 78 314 117T276 196L257 235L239 196Q221 157 204 118T186 77Q190 76 196 76Q211 74 218 67T227 55T228 38Q228 28 227 24T221 13T206 1H50Q28 9 28 32V38Q28 63 45 73Q51 76 73 76H96L214 324Q215 327 162 431L108 535H85H79Q67 535 60 536T46 546T39 571",936:"37 439Q38 451 40 457T52 469T77 475H79Q96 475 107 473T132 456T152 411Q152 409 153 396T154 372V365Q154 291 198 261Q215 251 219 251Q220 251 220 393V535H193L167 536Q145 545 145 567V573Q145 602 167 610Q168 611 264 611H358Q372 602 376 595T380 573Q380 545 358 536L331 535H304V393Q304 251 305 251Q307 251 310 252T323 259T339 272T355 295T367 331Q368 337 370 372Q370 382 371 395T372 411Q376 434 384 448T404 467T425 474T447 475Q461 474 467 473T480 463T487 437Q487 419 481 412Q476 403 459 398Q457 390 453 344T431 263Q415 228 383 205T332 177T306 172H304V76H358Q372 67 376 60T380 38Q380 10 358 1H167Q145 9 145 32V38Q145 54 148 60T167 76H220V172H218Q211 172 192 177T141 205T93 263Q74 298 71 343T67 391L66 398Q47 403 42 411T37 433V439",937:"40 404Q40 498 106 560T258 622Q357 622 420 558T484 406Q484 359 469 311T428 205T392 117Q382 84 382 78Q382 76 402 76H421V87Q421 110 431 116T457 123Q474 123 483 114Q490 107 491 100T492 61V42Q492 11 474 3Q470 1 397 1H324Q302 9 302 32V39Q302 104 351 225T400 405Q400 462 361 504T262 546Q200 546 162 504T124 405Q124 346 171 230T223 42V36Q223 11 205 3Q201 1 128 1H55Q39 7 33 23L32 60V80Q32 94 34 102T44 116T68 123Q103 123 103 87V76H123Q142 76 142 78Q142 100 117 156T66 282T40 404",8215:"57 -60Q57 -33 86 -25H438Q468 -34 468 -60T438 -95H86Q57 -86 57 -60",8242:"211 572Q211 593 226 608T262 623Q281 623 297 610T313 573Q313 561 307 465Q301 370 299 357T284 336Q279 334 262 334Q240 334 231 343Q226 350 225 362T217 465Q211 549 211 572",8260:"94 -83Q78 -83 68 -73T58 -48Q58 -44 60 -36Q62 -31 227 314T399 673Q410 694 431 694Q445 694 455 684T466 659Q466 656 464 648Q463 643 298 298T125 -62Q114 -83 94 -83",8710:"232 622H237Q242 622 249 622T264 623H293Q295 622 300 619T308 613T314 608T319 601Q322 597 405 316T489 19Q489 9 473 1Q471 0 262 0T51 1Q35 9 35 19Q35 34 118 315T205 601Q214 616 232 622ZM267 501Q266 504 265 510T263 521T261 526V523Q261 508 211 332Q142 91 138 82H386Q385 84 345 224Q281 439 267 501"},{8243:"\u2032\u2032",8244:"\u2032\u2032\u2032",8279:"\u2032\u2032\u2032\u2032"})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.monospace=void 0,e.monospace={32:[0,0,.525],33:[.622,0,.525],34:[.623,-.333,.525],35:[.611,0,.525],36:[.694,.082,.525],37:[.694,.083,.525],38:[.622,.011,.525],39:[.611,-.287,.525],40:[.694,.082,.525],41:[.694,.082,.525],42:[.52,-.09,.525],43:[.531,-.081,.525],44:[.14,.139,.525],45:[.341,-.271,.525],46:[.14,0,.525],47:[.694,.083,.525],58:[.431,0,.525],59:[.431,.139,.525],60:[.557,-.055,.525],61:[.417,-.195,.525],62:[.557,-.055,.525],63:[.617,0,.525],64:[.617,.006,.525],91:[.694,.082,.525],92:[.694,.083,.525],93:[.694,.082,.525],94:[.611,-.46,.525],95:[-.025,.095,.525],96:[.681,-.357,.525],123:[.694,.083,.525],124:[.694,.082,.525],125:[.694,.083,.525],126:[.611,-.466,.525],127:[.612,-.519,.525],160:[0,0,.525],305:[.431,0,.525],567:[.431,.228,.525],697:[.623,-.334,.525],768:[.611,-.485,0],769:[.611,-.485,0],770:[.611,-.46,0],771:[.611,-.466,0],772:[.577,-.5,0],774:[.611,-.504,0],776:[.612,-.519,0],778:[.619,-.499,0],780:[.577,-.449,0],913:[.623,0,.525],914:[.611,0,.525],915:[.611,0,.525],916:[.623,0,.525],917:[.611,0,.525],918:[.611,0,.525],919:[.611,0,.525],920:[.621,.01,.525],921:[.611,0,.525],922:[.611,0,.525],923:[.623,0,.525],924:[.611,0,.525],925:[.611,0,.525],926:[.611,0,.525],927:[.621,.01,.525],928:[.611,0,.525],929:[.611,0,.525],931:[.611,0,.525],932:[.611,0,.525],933:[.622,0,.525],934:[.611,0,.525],935:[.611,0,.525],936:[.611,0,.525],937:[.622,0,.525],8215:[-.025,.095,.525],8242:[.623,-.334,.525],8243:[.623,0,1.05],8244:[.623,0,1.575],8260:[.694,.083,.525],8279:[.623,0,2.1],8710:[.623,0,.525]}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.normal=void 0;var r=Q(6),T=Q(236);e.normal=r.AddPaths(T.normal,{32:"",33:"78 661Q78 682 96 699T138 716T180 700T199 661Q199 654 179 432T158 206Q156 198 139 198Q121 198 119 206Q118 209 98 431T78 661ZM79 61Q79 89 97 105T141 121Q164 119 181 104T198 61Q198 31 181 16T139 1Q114 1 97 16T79 61",34:"34 634Q34 659 50 676T93 694Q121 694 144 668T168 579Q168 525 146 476T101 403T73 379Q69 379 60 388T50 401Q50 404 62 417T88 448T116 500T131 572Q131 584 130 584T125 581T112 576T94 573Q69 573 52 590T34 634ZM238 634Q238 659 254 676T297 694Q325 694 348 668T372 579Q372 525 350 476T305 403T277 379Q273 379 264 388T254 401Q254 404 266 417T292 448T320 500T335 572Q335 584 334 584T329 581T316 576T298 573Q273 573 256 590T238 634",35:"56 347Q56 360 70 367H313L355 524Q394 676 401 686Q406 694 416 694Q434 694 436 676Q436 672 396 522Q355 374 355 369L354 367H543L585 524Q626 679 630 685Q636 694 646 694Q653 694 659 689T665 678Q665 668 626 522Q585 374 585 369L584 367H762Q777 359 777 347Q777 334 767 331T722 327H667H572L552 251L531 174Q531 173 647 173H720Q756 173 766 170T777 153T762 133H519L477 -24Q436 -179 432 -185Q426 -194 416 -194Q409 -194 403 -189T397 -177Q397 -167 436 -21Q477 125 477 131L478 133H289L247 -24Q206 -179 202 -185Q196 -194 186 -194Q179 -194 173 -189T167 -177Q167 -167 206 -21Q247 125 247 131L248 133H70Q56 140 56 153Q56 168 72 173H260L280 249L301 326Q301 327 186 327H72Q56 332 56 347ZM531 326Q531 327 437 327H342L322 251L301 174Q301 173 395 173H490L510 249L531 326",36:"162 187Q162 164 146 149T109 133H103V130Q108 115 115 105Q122 92 131 82T150 64T170 52T190 44T206 40T220 37L227 36V313Q190 320 162 335Q116 358 86 404T55 508Q55 567 85 614T165 685Q186 696 225 704H227V750H273V704L286 703Q369 690 413 631Q441 588 444 531Q444 514 443 509Q439 490 425 479T391 468Q368 468 353 483T337 522Q337 546 353 560T390 575L394 576V578Q386 599 372 614T342 637T314 649T288 656L273 658V408L288 405Q329 394 355 376Q396 348 420 300T444 199Q444 130 408 76T313 1Q286 -9 276 -9H273V-56H227V-10H221Q202 -6 193 -4T155 11T108 41T74 94T55 176V182Q55 227 95 238Q103 240 108 240Q129 240 145 226T162 187ZM225 657Q219 657 204 651T169 632T135 594T121 538Q121 512 131 491T156 457T187 435T213 423T227 420V539Q227 657 225 657ZM378 169Q378 230 339 265T274 301Q273 301 273 169V37Q324 50 351 87T378 169",37:"465 605Q428 605 394 614T340 632T319 641Q332 608 332 548Q332 458 293 403T202 347Q145 347 101 402T56 548Q56 637 101 693T202 750Q241 750 272 719Q359 642 464 642Q580 642 650 732Q662 748 668 749Q670 750 673 750Q682 750 688 743T693 726Q178 -47 170 -52Q166 -56 160 -56Q147 -56 142 -45Q137 -36 142 -27Q143 -24 363 304Q469 462 525 546T581 630Q528 605 465 605ZM207 385Q235 385 263 427T292 548Q292 617 267 664T200 712Q193 712 186 709T167 698T147 668T134 615Q132 595 132 548V527Q132 436 165 403Q183 385 203 385H207ZM500 146Q500 234 544 290T647 347Q699 347 737 292T776 146T737 0T646 -56Q590 -56 545 0T500 146ZM651 -18Q679 -18 707 24T736 146Q736 215 711 262T644 309Q637 309 630 306T611 295T591 265T578 212Q577 200 577 146V124Q577 -18 647 -18H651",38:"156 540Q156 620 201 668T302 716Q354 716 377 671T401 578Q401 505 287 386L274 373Q309 285 416 148L429 132L437 142Q474 191 543 309L562 341V349Q562 368 541 376T498 385H493V431H502L626 428Q709 428 721 431H727V385H712Q688 384 669 379T639 369T618 354T603 337T591 316T578 295Q537 223 506 176T464 117T454 104Q454 102 471 85T497 62Q543 24 585 24Q618 24 648 48T682 113V121H722V112Q721 94 714 75T692 32T646 -7T574 -22Q491 -19 414 42L402 51L391 42Q312 -22 224 -22Q144 -22 93 25T42 135Q42 153 46 169T55 197T74 225T96 249T125 278T156 308L195 347L190 360Q185 372 182 382T174 411T165 448T159 491T156 540ZM361 576Q361 613 348 646T305 679Q272 679 252 649T232 572Q232 497 255 426L259 411L267 420Q361 519 361 576ZM140 164Q140 103 167 64T240 24Q271 24 304 36T356 61T374 77Q295 156 235 262L220 292L210 310L193 293Q177 277 169 268T151 229T140 164",39:"78 634Q78 659 95 676T138 694Q166 694 189 668T212 579Q212 525 190 476T146 403T118 379Q114 379 105 388T95 401Q95 404 107 417T133 448T161 500T176 572Q176 584 175 584T170 581T157 576T139 573Q114 573 96 590T78 634",40:"94 250Q94 319 104 381T127 488T164 576T202 643T244 695T277 729T302 750H315H319Q333 750 333 741Q333 738 316 720T275 667T226 581T184 443T167 250T184 58T225 -81T274 -167T316 -220T333 -241Q333 -250 318 -250H315H302L274 -226Q180 -141 137 -14T94 250",41:"60 749L64 750Q69 750 74 750H86L114 726Q208 641 251 514T294 250Q294 182 284 119T261 12T224 -76T186 -143T145 -194T113 -227T90 -246Q87 -249 86 -250H74Q66 -250 63 -250T58 -247T55 -238Q56 -237 66 -225Q221 -64 221 250T66 725Q56 737 55 738Q55 746 60 749",42:"215 721Q216 732 225 741T248 750Q263 750 273 742T284 721L270 571L327 613Q383 654 388 657T399 660Q412 660 423 650T435 624T424 600T376 575Q363 569 355 566L289 534L355 504L424 470Q435 462 435 447Q435 431 424 420T399 409Q393 409 388 412T327 456L270 498L277 423L284 348Q280 320 250 320T215 348L229 498L172 456Q116 415 111 412T100 409Q87 409 76 420T64 447Q64 461 75 470L144 504L210 534L144 566Q136 570 122 576Q83 593 74 600T64 624Q64 639 75 649T100 660Q106 660 111 657T172 613L229 571Q229 578 222 643T215 721",43:"56 237T56 250T70 270H369V420L370 570Q380 583 389 583Q402 583 409 568V270H707Q722 262 722 250T707 230H409V-68Q401 -82 391 -82H389H387Q375 -82 369 -68V230H70Q56 237 56 250",44:"78 35T78 60T94 103T137 121Q165 121 187 96T210 8Q210 -27 201 -60T180 -117T154 -158T130 -185T117 -194Q113 -194 104 -185T95 -172Q95 -168 106 -156T131 -126T157 -76T173 -3V9L172 8Q170 7 167 6T161 3T152 1T140 0Q113 0 96 17",45:"11 179V252H277V179H11",46:"78 60Q78 84 95 102T138 120Q162 120 180 104T199 61Q199 36 182 18T139 0T96 17T78 60",47:"423 750Q432 750 438 744T444 730Q444 725 271 248T92 -240Q85 -250 75 -250Q68 -250 62 -245T56 -231Q56 -221 230 257T407 740Q411 750 423 750",48:"96 585Q152 666 249 666Q297 666 345 640T423 548Q460 465 460 320Q460 165 417 83Q397 41 362 16T301 -15T250 -22Q224 -22 198 -16T137 16T82 83Q39 165 39 320Q39 494 96 585ZM321 597Q291 629 250 629Q208 629 178 597Q153 571 145 525T137 333Q137 175 145 125T181 46Q209 16 250 16Q290 16 318 46Q347 76 354 130T362 333Q362 478 354 524T321 597",49:"213 578L200 573Q186 568 160 563T102 556H83V602H102Q149 604 189 617T245 641T273 663Q275 666 285 666Q294 666 302 660V361L303 61Q310 54 315 52T339 48T401 46H427V0H416Q395 3 257 3Q121 3 100 0H88V46H114Q136 46 152 46T177 47T193 50T201 52T207 57T213 61V578",50:"109 429Q82 429 66 447T50 491Q50 562 103 614T235 666Q326 666 387 610T449 465Q449 422 429 383T381 315T301 241Q265 210 201 149L142 93L218 92Q375 92 385 97Q392 99 409 186V189H449V186Q448 183 436 95T421 3V0H50V19V31Q50 38 56 46T86 81Q115 113 136 137Q145 147 170 174T204 211T233 244T261 278T284 308T305 340T320 369T333 401T340 431T343 464Q343 527 309 573T212 619Q179 619 154 602T119 569T109 550Q109 549 114 549Q132 549 151 535T170 489Q170 464 154 447T109 429",51:"127 463Q100 463 85 480T69 524Q69 579 117 622T233 665Q268 665 277 664Q351 652 390 611T430 522Q430 470 396 421T302 350L299 348Q299 347 308 345T337 336T375 315Q457 262 457 175Q457 96 395 37T238 -22Q158 -22 100 21T42 130Q42 158 60 175T105 193Q133 193 151 175T169 130Q169 119 166 110T159 94T148 82T136 74T126 70T118 67L114 66Q165 21 238 21Q293 21 321 74Q338 107 338 175V195Q338 290 274 322Q259 328 213 329L171 330L168 332Q166 335 166 348Q166 366 174 366Q202 366 232 371Q266 376 294 413T322 525V533Q322 590 287 612Q265 626 240 626Q208 626 181 615T143 592T132 580H135Q138 579 143 578T153 573T165 566T175 555T183 540T186 520Q186 498 172 481T127 463",52:"462 0Q444 3 333 3Q217 3 199 0H190V46H221Q241 46 248 46T265 48T279 53T286 61Q287 63 287 115V165H28V211L179 442Q332 674 334 675Q336 677 355 677H373L379 671V211H471V165H379V114Q379 73 379 66T385 54Q393 47 442 46H471V0H462ZM293 211V545L74 212L183 211H293",53:"164 157Q164 133 148 117T109 101H102Q148 22 224 22Q294 22 326 82Q345 115 345 210Q345 313 318 349Q292 382 260 382H254Q176 382 136 314Q132 307 129 306T114 304Q97 304 95 310Q93 314 93 485V614Q93 664 98 664Q100 666 102 666Q103 666 123 658T178 642T253 634Q324 634 389 662Q397 666 402 666Q410 666 410 648V635Q328 538 205 538Q174 538 149 544L139 546V374Q158 388 169 396T205 412T256 420Q337 420 393 355T449 201Q449 109 385 44T229 -22Q148 -22 99 32T50 154Q50 178 61 192T84 210T107 214Q132 214 148 197T164 157",54:"42 313Q42 476 123 571T303 666Q372 666 402 630T432 550Q432 525 418 510T379 495Q356 495 341 509T326 548Q326 592 373 601Q351 623 311 626Q240 626 194 566Q147 500 147 364L148 360Q153 366 156 373Q197 433 263 433H267Q313 433 348 414Q372 400 396 374T435 317Q456 268 456 210V192Q456 169 451 149Q440 90 387 34T253 -22Q225 -22 199 -14T143 16T92 75T56 172T42 313ZM257 397Q227 397 205 380T171 335T154 278T148 216Q148 133 160 97T198 39Q222 21 251 21Q302 21 329 59Q342 77 347 104T352 209Q352 289 347 316T329 361Q302 397 257 397",55:"55 458Q56 460 72 567L88 674Q88 676 108 676H128V672Q128 662 143 655T195 646T364 644H485V605L417 512Q408 500 387 472T360 435T339 403T319 367T305 330T292 284T284 230T278 162T275 80Q275 66 275 52T274 28V19Q270 2 255 -10T221 -22Q210 -22 200 -19T179 0T168 40Q168 198 265 368Q285 400 349 489L395 552H302Q128 552 119 546Q113 543 108 522T98 479L95 458V455H55V458",56:"70 417T70 494T124 618T248 666Q319 666 374 624T429 515Q429 485 418 459T392 417T361 389T335 371T324 363L338 354Q352 344 366 334T382 323Q457 264 457 174Q457 95 399 37T249 -22Q159 -22 101 29T43 155Q43 263 172 335L154 348Q133 361 127 368Q70 417 70 494ZM286 386L292 390Q298 394 301 396T311 403T323 413T334 425T345 438T355 454T364 471T369 491T371 513Q371 556 342 586T275 624Q268 625 242 625Q201 625 165 599T128 534Q128 511 141 492T167 463T217 431Q224 426 228 424L286 386ZM250 21Q308 21 350 55T392 137Q392 154 387 169T375 194T353 216T330 234T301 253T274 270Q260 279 244 289T218 306L210 311Q204 311 181 294T133 239T107 157Q107 98 150 60T250 21",57:"352 287Q304 211 232 211Q154 211 104 270T44 396Q42 412 42 436V444Q42 537 111 606Q171 666 243 666Q245 666 249 666T257 665H261Q273 665 286 663T323 651T370 619T413 560Q456 472 456 334Q456 194 396 97Q361 41 312 10T208 -22Q147 -22 108 7T68 93T121 149Q143 149 158 135T173 96Q173 78 164 65T148 49T135 44L131 43Q131 41 138 37T164 27T206 22H212Q272 22 313 86Q352 142 352 280V287ZM244 248Q292 248 321 297T351 430Q351 508 343 542Q341 552 337 562T323 588T293 615T246 625Q208 625 181 598Q160 576 154 546T147 441Q147 358 152 329T172 282Q197 248 244 248",58:"78 370Q78 394 95 412T138 430Q162 430 180 414T199 371Q199 346 182 328T139 310T96 327T78 370ZM78 60Q78 84 95 102T138 120Q162 120 180 104T199 61Q199 36 182 18T139 0T96 17T78 60",59:"78 370Q78 394 95 412T138 430Q162 430 180 414T199 371Q199 346 182 328T139 310T96 327T78 370ZM78 60Q78 85 94 103T137 121Q202 121 202 8Q202 -44 183 -94T144 -169T118 -194Q115 -194 106 -186T95 -174Q94 -171 107 -155T137 -107T160 -38Q161 -32 162 -22T165 -4T165 4Q165 5 161 4T142 0Q110 0 94 18T78 60",60:"694 -11T694 -19T688 -33T678 -40Q671 -40 524 29T234 166L90 235Q83 240 83 250Q83 261 91 266Q664 540 678 540Q681 540 687 534T694 519T687 505Q686 504 417 376L151 250L417 124Q686 -4 687 -5Q694 -11 694 -19",61:"56 347Q56 360 70 367H707Q722 359 722 347Q722 336 708 328L390 327H72Q56 332 56 347ZM56 153Q56 168 72 173H708Q722 163 722 153Q722 140 707 133H70Q56 140 56 153",62:"84 520Q84 528 88 533T96 539L99 540Q106 540 253 471T544 334L687 265Q694 260 694 250T687 235Q685 233 395 96L107 -40H101Q83 -38 83 -20Q83 -19 83 -17Q82 -10 98 -1Q117 9 248 71Q326 108 378 132L626 250L378 368Q90 504 86 509Q84 513 84 520",63:"226 668Q190 668 162 656T124 632L114 621Q116 621 119 620T130 616T145 607T157 591T162 567Q162 544 147 529T109 514T71 528T55 566Q55 625 100 661T199 704Q201 704 210 704T224 705H228Q281 705 320 692T378 656T407 612T416 567Q416 503 361 462Q267 395 247 303Q242 279 242 241V224Q242 205 239 202T222 198T205 201T202 218V249Q204 320 220 371T255 445T292 491T315 537Q317 546 317 574V587Q317 604 315 615T304 640T277 661T226 668ZM162 61Q162 89 180 105T224 121Q247 119 264 104T281 61Q281 31 264 16T222 1Q197 1 180 16T162 61",64:"56 347Q56 429 86 498T164 612T270 680T386 705Q522 705 622 603T722 349Q722 126 608 126Q541 126 513 176Q512 177 512 179T510 182L509 183Q508 183 503 177T487 163T464 146T429 132T385 126Q311 126 251 186T190 347Q190 448 251 508T385 568Q426 568 460 548T509 511T531 479H555Q580 479 582 478Q586 477 587 468Q588 454 588 338V260Q588 200 593 182T619 163Q641 163 655 178T674 223T680 273T682 325V330Q682 426 647 500Q611 569 544 618T388 668Q271 668 184 577T96 347Q96 216 180 121T396 26Q421 26 446 28T493 34T535 43T573 52T605 63T629 72T647 80T657 84H716Q722 78 722 74Q722 65 675 45T547 7T392 -11Q255 -11 156 90T56 347ZM274 347Q274 266 308 214T390 162Q420 162 449 182T498 235L504 245V449L498 459Q453 532 387 532Q347 532 311 483T274 347",65:"255 0Q240 3 140 3Q48 3 39 0H32V46H47Q119 49 139 88Q140 91 192 245T295 553T348 708Q351 716 366 716H376Q396 715 400 709Q402 707 508 390L617 67Q624 54 636 51T687 46H717V0H708Q699 3 581 3Q458 3 437 0H427V46H440Q510 46 510 64Q510 66 486 138L462 209H229L209 150Q189 91 189 85Q189 72 209 59T259 46H264V0H255ZM447 255L345 557L244 256Q244 255 345 255H447",66:"131 622Q124 629 120 631T104 634T61 637H28V683H229H267H346Q423 683 459 678T531 651Q574 627 599 590T624 512Q624 461 583 419T476 360L466 357Q539 348 595 302T651 187Q651 119 600 67T469 3Q456 1 242 0H28V46H61Q103 47 112 49T131 61V622ZM511 513Q511 560 485 594T416 636Q415 636 403 636T371 636T333 637Q266 637 251 636T232 628Q229 624 229 499V374H312L396 375L406 377Q410 378 417 380T442 393T474 417T499 456T511 513ZM537 188Q537 239 509 282T430 336L329 337H229V200V116Q229 57 234 52Q240 47 334 47H383Q425 47 443 53Q486 67 511 104T537 188",67:"56 342Q56 428 89 500T174 615T283 681T391 705Q394 705 400 705T408 704Q499 704 569 636L582 624L612 663Q639 700 643 704Q644 704 647 704T653 705H657Q660 705 666 699V419L660 413H626Q620 419 619 430Q610 512 571 572T476 651Q457 658 426 658Q322 658 252 588Q173 509 173 342Q173 221 211 151Q232 111 263 84T328 45T384 29T428 24Q517 24 571 93T626 244Q626 251 632 257H660L666 251V236Q661 133 590 56T403 -21Q262 -21 159 83T56 342",68:"130 622Q123 629 119 631T103 634T60 637H27V683H228Q399 682 419 682T461 676Q504 667 546 641T626 573T685 470T708 336Q708 210 634 116T442 3Q429 1 228 0H27V46H60Q102 47 111 49T130 61V622ZM593 338Q593 439 571 501T493 602Q439 637 355 637H322H294Q238 637 234 628Q231 624 231 344Q231 62 232 59Q233 49 248 48T339 46H350Q456 46 515 95Q561 133 577 191T593 338",69:"128 619Q121 626 117 628T101 631T58 634H25V680H597V676Q599 670 611 560T625 444V440H585V444Q584 447 582 465Q578 500 570 526T553 571T528 601T498 619T457 629T411 633T353 634Q266 634 251 633T233 622Q233 622 233 621Q232 619 232 497V376H286Q359 378 377 385Q413 401 416 469Q416 471 416 473V493H456V213H416V233Q415 268 408 288T383 317T349 328T297 330Q290 330 286 330H232V196V114Q232 57 237 52Q243 47 289 47H340H391Q428 47 452 50T505 62T552 92T584 146Q594 172 599 200T607 247T612 270V273H652V270Q651 267 632 137T610 3V0H25V46H58Q100 47 109 49T128 61V619",70:"128 619Q121 626 117 628T101 631T58 634H25V680H582V676Q584 670 596 560T610 444V440H570V444Q563 493 561 501Q555 538 543 563T516 601T477 622T431 631T374 633H334H286Q252 633 244 631T233 621Q232 619 232 490V363H284Q287 363 303 363T327 364T349 367T372 373T389 385Q407 403 410 459V480H450V200H410V221Q407 276 389 296Q381 303 371 307T348 313T327 316T303 317T284 317H232V189L233 61Q240 54 245 52T270 48T333 46H360V0H348Q324 3 182 3Q51 3 36 0H25V46H58Q100 47 109 49T128 61V619",71:"56 342Q56 428 89 500T174 615T283 681T391 705Q394 705 400 705T408 704Q499 704 569 636L582 624L612 663Q639 700 643 704Q644 704 647 704T653 705H657Q660 705 666 699V419L660 413H626Q620 419 619 430Q610 512 571 572T476 651Q457 658 426 658Q401 658 376 654T316 633T254 592T205 519T177 411Q173 369 173 335Q173 259 192 201T238 111T302 58T370 31T431 24Q478 24 513 45T559 100Q562 110 562 160V212Q561 213 557 216T551 220T542 223T526 225T502 226T463 227H437V273H449L609 270Q715 270 727 273H735V227H721Q674 227 668 215Q666 211 666 108V6Q660 0 657 0Q653 0 639 10Q617 25 600 42L587 54Q571 27 524 3T406 -22Q317 -22 238 22T108 151T56 342",72:"128 622Q121 629 117 631T101 634T58 637H25V683H36Q57 680 180 680Q315 680 324 683H335V637H302Q262 636 251 634T233 622L232 500V378H517V622Q510 629 506 631T490 634T447 637H414V683H425Q446 680 569 680Q704 680 713 683H724V637H691Q651 636 640 634T622 622V61Q628 51 639 49T691 46H724V0H713Q692 3 569 3Q434 3 425 0H414V46H447Q489 47 498 49T517 61V332H232V197L233 61Q239 51 250 49T302 46H335V0H324Q303 3 180 3Q45 3 36 0H25V46H58Q100 47 109 49T128 61V622",73:"328 0Q307 3 180 3T32 0H21V46H43Q92 46 106 49T126 60Q128 63 128 342Q128 620 126 623Q122 628 118 630T96 635T43 637H21V683H32Q53 680 180 680T328 683H339V637H317Q268 637 254 634T234 623Q232 620 232 342Q232 63 234 60Q238 55 242 53T264 48T317 46H339V0H328",74:"89 177Q115 177 133 160T152 112Q152 88 137 72T102 52Q99 51 101 49Q106 43 129 29Q159 15 190 15Q232 15 256 48T286 126Q286 127 286 142T286 183T286 238T287 306T287 378Q287 403 287 429T287 479T287 524T286 563T286 593T286 614V621Q281 630 263 633T182 637H154V683H166Q187 680 332 680Q439 680 457 683H465V637H449Q422 637 401 634Q393 631 389 623Q388 621 388 376T387 123Q377 61 322 20T194 -22Q188 -22 177 -21T160 -20Q96 -9 61 29T25 110Q25 144 44 160T89 177",75:"128 622Q121 629 117 631T101 634T58 637H25V683H36Q57 680 180 680Q315 680 324 683H335V637H313Q235 637 233 620Q232 618 232 462L233 307L379 449Q425 494 479 546Q518 584 524 591T531 607V608Q531 630 503 636Q501 636 498 636T493 637H489V683H499Q517 680 630 680Q704 680 716 683H722V637H708Q633 633 589 597Q584 592 495 506T406 419T515 254T631 80Q644 60 662 54T715 46H736V0H728Q719 3 615 3Q493 3 472 0H461V46H469Q515 46 515 72Q515 78 512 84L336 351Q332 348 278 296L232 251V156Q232 62 235 58Q243 47 302 46H335V0H324Q303 3 180 3Q45 3 36 0H25V46H58Q100 47 109 49T128 61V622",76:"128 622Q121 629 117 631T101 634T58 637H25V683H36Q48 680 182 680Q324 680 348 683H360V637H333Q273 637 258 635T233 622L232 342V129Q232 57 237 52Q243 47 313 47Q384 47 410 53Q470 70 498 110T536 221Q536 226 537 238T540 261T542 272T562 273H582V268Q580 265 568 137T554 5V0H25V46H58Q100 47 109 49T128 61V622",77:"132 622Q125 629 121 631T105 634T62 637H29V683H135Q221 683 232 682T249 675Q250 674 354 398L458 124L562 398Q666 674 668 675Q671 681 683 682T781 683H887V637H854Q814 636 803 634T785 622V61Q791 51 802 49T854 46H887V0H876Q855 3 736 3Q605 3 596 0H585V46H618Q660 47 669 49T688 61V347Q688 424 688 461T688 546T688 613L687 632Q454 14 450 7Q446 1 430 1T410 7Q409 9 292 316L176 624V606Q175 588 175 543T175 463T175 356L176 86Q187 50 261 46H278V0H269Q254 3 154 3Q52 3 37 0H29V46H46Q78 48 98 56T122 69T132 86V622",78:"42 46Q74 48 94 56T118 69T128 86V634H124Q114 637 52 637H25V683H232L235 680Q237 679 322 554T493 303L578 178V598Q572 608 568 613T544 627T492 637H475V683H483Q498 680 600 680Q706 680 715 683H724V637H707Q634 633 622 598L621 302V6L614 0H600Q585 0 582 3T481 150T282 443T171 605V345L172 86Q183 50 257 46H274V0H265Q250 3 150 3Q48 3 33 0H25V46H42",79:"56 340Q56 423 86 494T164 610T270 680T388 705Q521 705 621 601T722 341Q722 260 693 191T617 75T510 4T388 -22T267 3T160 74T85 189T56 340ZM467 647Q426 665 388 665Q360 665 331 654T269 620T213 549T179 439Q174 411 174 354Q174 144 277 61Q327 20 385 20H389H391Q474 20 537 99Q603 188 603 354Q603 411 598 439Q577 592 467 647",80:"130 622Q123 629 119 631T103 634T60 637H27V683H214Q237 683 276 683T331 684Q419 684 471 671T567 616Q624 563 624 489Q624 421 573 372T451 307Q429 302 328 301H234V181Q234 62 237 58Q245 47 304 46H337V0H326Q305 3 182 3Q47 3 38 0H27V46H60Q102 47 111 49T130 61V622ZM507 488Q507 514 506 528T500 564T483 597T450 620T397 635Q385 637 307 637H286Q237 637 234 628Q231 624 231 483V342H302H339Q390 342 423 349T481 382Q507 411 507 488",81:"56 341Q56 499 157 602T388 705Q521 705 621 601T722 341Q722 275 703 218T660 127T603 63T555 25T525 9Q524 8 524 8H523Q524 5 526 -1T537 -21T555 -47T581 -67T615 -76Q653 -76 678 -56T706 -3Q707 10 716 10Q721 10 728 5L727 -13Q727 -88 697 -140T606 -193Q563 -193 538 -166T498 -83Q483 -23 483 -8L471 -11Q459 -14 435 -18T388 -22Q254 -22 155 81T56 341ZM607 339Q607 429 586 496T531 598T461 649T390 665T318 649T248 598T192 496T170 339Q170 143 277 57Q301 39 305 39L304 42Q304 44 304 46Q301 53 301 68Q301 101 325 128T391 155Q454 155 495 70L501 58Q549 91 578 164Q607 234 607 339ZM385 18Q404 18 425 23T459 33T472 40Q471 47 468 57T449 88T412 115Q398 117 386 117Q367 117 353 102T338 67Q338 48 351 33T385 18",82:"130 622Q123 629 119 631T103 634T60 637H27V683H202H236H300Q376 683 417 677T500 648Q595 600 609 517Q610 512 610 501Q610 468 594 439T556 392T511 361T472 343L456 338Q459 335 467 332Q497 316 516 298T545 254T559 211T568 155T578 94Q588 46 602 31T640 16H645Q660 16 674 32T692 87Q692 98 696 101T712 105T728 103T732 90Q732 59 716 27T672 -16Q656 -22 630 -22Q481 -16 458 90Q456 101 456 163T449 246Q430 304 373 320L363 322L297 323H231V192L232 61Q238 51 249 49T301 46H334V0H323Q302 3 181 3Q59 3 38 0H27V46H60Q102 47 111 49T130 61V622ZM491 499V509Q491 527 490 539T481 570T462 601T424 623T362 636Q360 636 340 636T304 637H283Q238 637 234 628Q231 624 231 492V360H289Q390 360 434 378T489 456Q491 467 491 499",83:"55 507Q55 590 112 647T243 704H257Q342 704 405 641L426 672Q431 679 436 687T446 700L449 704Q450 704 453 704T459 705H463Q466 705 472 699V462L466 456H448Q437 456 435 459T430 479Q413 605 329 646Q292 662 254 662Q201 662 168 626T135 542Q135 508 152 480T200 435Q210 431 286 412T370 389Q427 367 463 314T500 191Q500 110 448 45T301 -21Q245 -21 201 -4T140 27L122 41Q118 36 107 21T87 -7T78 -21Q76 -22 68 -22H64Q61 -22 55 -16V101Q55 220 56 222Q58 227 76 227H89Q95 221 95 214Q95 182 105 151T139 90T205 42T305 24Q352 24 386 62T420 155Q420 198 398 233T340 281Q284 295 266 300Q261 301 239 306T206 314T174 325T141 343T112 367T85 402Q55 451 55 507",84:"36 443Q37 448 46 558T55 671V677H666V671Q667 666 676 556T685 443V437H645V443Q645 445 642 478T631 544T610 593Q593 614 555 625Q534 630 478 630H451H443Q417 630 414 618Q413 616 413 339V63Q420 53 439 50T528 46H558V0H545L361 3Q186 1 177 0H164V46H194Q264 46 283 49T309 63V339V550Q309 620 304 625T271 630H244H224Q154 630 119 601Q101 585 93 554T81 486T76 443V437H36V443",85:"128 622Q121 629 117 631T101 634T58 637H25V683H36Q57 680 180 680Q315 680 324 683H335V637H302Q262 636 251 634T233 622L232 418V291Q232 189 240 145T280 67Q325 24 389 24Q454 24 506 64T571 183Q575 206 575 410V598Q569 608 565 613T541 627T489 637H472V683H481Q496 680 598 680T715 683H724V637H707Q634 633 622 598L621 399Q620 194 617 180Q617 179 615 171Q595 83 531 31T389 -22Q304 -22 226 33T130 192Q129 201 128 412V622",86:"114 620Q113 621 110 624T107 627T103 630T98 632T91 634T80 635T67 636T48 637H19V683H28Q46 680 152 680Q273 680 294 683H305V637H284Q223 634 223 620Q223 618 313 372T404 126L490 358Q575 588 575 597Q575 616 554 626T508 637H503V683H512Q527 680 627 680Q718 680 724 683H730V637H723Q648 637 627 596Q627 595 515 291T401 -14Q396 -22 382 -22H374H367Q353 -22 348 -14Q346 -12 231 303Q114 617 114 620",87:"792 683Q810 680 914 680Q991 680 1003 683H1009V637H996Q931 633 915 598Q912 591 863 438T766 135T716 -17Q711 -22 694 -22Q676 -22 673 -15Q671 -13 593 231L514 477L435 234Q416 174 391 92T358 -6T341 -22H331Q314 -21 310 -15Q309 -14 208 302T104 622Q98 632 87 633Q73 637 35 637H18V683H27Q69 681 154 681Q164 681 181 681T216 681T249 682T276 683H287H298V637H285Q213 637 213 620Q213 616 289 381L364 144L427 339Q490 535 492 546Q487 560 482 578T475 602T468 618T461 628T449 633T433 636T408 637H380V683H388Q397 680 508 680Q629 680 650 683H660V637H647Q576 637 576 619L727 146Q869 580 869 600Q869 605 863 612T839 627T794 637H783V683H792",88:"270 0Q252 3 141 3Q46 3 31 0H23V46H40Q129 50 161 88Q165 94 244 216T324 339Q324 341 235 480T143 622Q133 631 119 634T57 637H37V683H46Q64 680 172 680Q297 680 318 683H329V637H324Q307 637 286 632T263 621Q263 618 322 525T384 431Q385 431 437 511T489 593Q490 595 490 599Q490 611 477 622T436 637H428V683H437Q455 680 566 680Q661 680 676 683H684V637H667Q585 634 551 599Q548 596 478 491Q412 388 412 387Q412 385 514 225T620 62Q628 53 642 50T695 46H726V0H717Q699 3 591 3Q466 3 445 0H434V46H440Q454 46 476 51T499 64Q499 67 463 124T390 238L353 295L350 292Q348 290 343 283T331 265T312 236T286 195Q219 88 218 84Q218 70 234 59T272 46H280V0H270",89:"518 0Q497 3 374 3Q253 3 232 0H221V46H254Q313 47 321 58Q324 62 324 167V273L221 446Q117 620 114 623Q106 631 91 634T31 637H11V683H20Q29 680 148 680Q273 680 294 683H305V637H287Q239 636 236 621Q236 619 321 475L407 332L483 460Q502 492 527 534Q563 594 563 604Q563 632 517 637H508V683H517H525Q533 683 545 683T571 682T600 681T626 681Q695 681 731 683H738V637H723Q640 633 613 588Q612 587 517 427L425 273V169V95Q425 66 428 59T444 49Q459 46 506 46H528V0H518",90:"69 443Q69 452 74 554T80 683H549Q555 677 555 664Q555 649 554 648Q552 645 366 348T179 50T192 49T263 49H275H302Q333 49 353 50T401 59T447 78T482 115T507 173Q513 200 520 273V282H560V274Q560 272 552 143T543 8V0H302L61 1L58 3Q55 8 55 21V35Q59 43 153 193T340 489T432 637H343Q259 637 214 625T141 573Q109 523 109 445Q109 443 89 443H69",91:"118 -250V750H255V710H158V-210H255V-250H118",92:"56 731Q56 740 62 745T75 750Q85 750 92 740Q96 733 270 255T444 -231Q444 -239 438 -244T424 -250Q414 -250 407 -240Q404 -236 230 242T56 731",93:"22 710V750H159V-250H22V-210H119V710H22",94:"112 560L249 694L257 686Q387 562 387 560L361 531Q359 532 303 581L250 627L195 580Q182 569 169 557T148 538L140 532Q138 530 125 546L112 560",95:"0 -62V-25H499V-62H0",96:"106 655Q106 671 119 685T150 699Q166 699 177 688Q190 671 222 629T275 561T295 533T282 519L267 505L196 563Q119 626 113 634Q106 643 106 655",97:"137 305T115 305T78 320T63 359Q63 394 97 421T218 448Q291 448 336 416T396 340Q401 326 401 309T402 194V124Q402 76 407 58T428 40Q443 40 448 56T453 109V145H493V106Q492 66 490 59Q481 29 455 12T400 -6T353 12T329 54V58L327 55Q325 52 322 49T314 40T302 29T287 17T269 6T247 -2T221 -8T190 -11Q130 -11 82 20T34 107Q34 128 41 147T68 188T116 225T194 253T304 268H318V290Q318 324 312 340Q290 411 215 411Q197 411 181 410T156 406T148 403Q170 388 170 359Q170 334 154 320ZM126 106Q126 75 150 51T209 26Q247 26 276 49T315 109Q317 116 318 175Q318 233 317 233Q309 233 296 232T251 223T193 203T147 166T126 106",98:"307 -11Q234 -11 168 55L158 37Q156 34 153 28T147 17T143 10L138 1L118 0H98V298Q98 599 97 603Q94 622 83 628T38 637H20V660Q20 683 22 683L32 684Q42 685 61 686T98 688Q115 689 135 690T165 693T176 694H179V543Q179 391 180 391L183 394Q186 397 192 401T207 411T228 421T254 431T286 439T323 442Q401 442 461 379T522 216Q522 115 458 52T307 -11ZM182 98Q182 97 187 90T196 79T206 67T218 55T233 44T250 35T271 29T295 26Q330 26 363 46T412 113Q424 148 424 212Q424 287 412 323Q385 405 300 405Q270 405 239 390T188 347L182 339V98",99:"370 305T349 305T313 320T297 358Q297 381 312 396Q317 401 317 402T307 404Q281 408 258 408Q209 408 178 376Q131 329 131 219Q131 137 162 90Q203 29 272 29Q313 29 338 55T374 117Q376 125 379 127T395 129H409Q415 123 415 120Q415 116 411 104T395 71T366 33T318 2T249 -11Q163 -11 99 53T34 214Q34 318 99 383T250 448T370 421T404 357Q404 334 387 320",100:"376 495Q376 511 376 535T377 568Q377 613 367 624T316 637H298V660Q298 683 300 683L310 684Q320 685 339 686T376 688Q393 689 413 690T443 693T454 694H457V390Q457 84 458 81Q461 61 472 55T517 46H535V0Q533 0 459 -5T380 -11H373V44L365 37Q307 -11 235 -11Q158 -11 96 50T34 215Q34 315 97 378T244 442Q319 442 376 393V495ZM373 342Q328 405 260 405Q211 405 173 369Q146 341 139 305T131 211Q131 155 138 120T173 59Q203 26 251 26Q322 26 373 103V342",101:"28 218Q28 273 48 318T98 391T163 433T229 448Q282 448 320 430T378 380T406 316T415 245Q415 238 408 231H126V216Q126 68 226 36Q246 30 270 30Q312 30 342 62Q359 79 369 104L379 128Q382 131 395 131H398Q415 131 415 121Q415 117 412 108Q393 53 349 21T250 -11Q155 -11 92 58T28 218ZM333 275Q322 403 238 411H236Q228 411 220 410T195 402T166 381T143 340T127 274V267H333V275",102:"273 0Q255 3 146 3Q43 3 34 0H26V46H42Q70 46 91 49Q99 52 103 60Q104 62 104 224V385H33V431H104V497L105 564L107 574Q126 639 171 668T266 704Q267 704 275 704T289 705Q330 702 351 679T372 627Q372 604 358 590T321 576T284 590T270 627Q270 647 288 667H284Q280 668 273 668Q245 668 223 647T189 592Q183 572 182 497V431H293V385H185V225Q185 63 186 61T189 57T194 54T199 51T206 49T213 48T222 47T231 47T241 46T251 46H282V0H273",103:"329 409Q373 453 429 453Q459 453 472 434T485 396Q485 382 476 371T449 360Q416 360 412 390Q410 404 415 411Q415 412 416 414V415Q388 412 363 393Q355 388 355 386Q355 385 359 381T368 369T379 351T388 325T392 292Q392 230 343 187T222 143Q172 143 123 171Q112 153 112 133Q112 98 138 81Q147 75 155 75T227 73Q311 72 335 67Q396 58 431 26Q470 -13 470 -72Q470 -139 392 -175Q332 -206 250 -206Q167 -206 107 -175Q29 -140 29 -75Q29 -39 50 -15T92 18L103 24Q67 55 67 108Q67 155 96 193Q52 237 52 292Q52 355 102 398T223 442Q274 442 318 416L329 409ZM299 343Q294 371 273 387T221 404Q192 404 171 388T145 343Q142 326 142 292Q142 248 149 227T179 192Q196 182 222 182Q244 182 260 189T283 207T294 227T299 242Q302 258 302 292T299 343ZM403 -75Q403 -50 389 -34T348 -11T299 -2T245 0H218Q151 0 138 -6Q118 -15 107 -34T95 -74Q95 -84 101 -97T122 -127T170 -155T250 -167Q319 -167 361 -139T403 -75",104:"41 46H55Q94 46 102 60V68Q102 77 102 91T102 124T102 167T103 217T103 272T103 329Q103 366 103 407T103 482T102 542T102 586T102 603Q99 622 88 628T43 637H25V660Q25 683 27 683L37 684Q47 685 66 686T103 688Q120 689 140 690T170 693T181 694H184V367Q244 442 328 442Q451 442 463 329Q464 322 464 190V104Q464 66 466 59T477 49Q498 46 526 46H542V0H534L510 1Q487 2 460 2T422 3Q319 3 310 0H302V46H318Q379 46 379 62Q380 64 380 200Q379 335 378 343Q372 371 358 385T334 402T308 404Q263 404 229 370Q202 343 195 315T187 232V168V108Q187 78 188 68T191 55T200 49Q221 46 249 46H265V0H257L234 1Q210 2 183 2T145 3Q42 3 33 0H25V46H41",105:"69 609Q69 637 87 653T131 669Q154 667 171 652T188 609Q188 579 171 564T129 549Q104 549 87 564T69 609ZM247 0Q232 3 143 3Q132 3 106 3T56 1L34 0H26V46H42Q70 46 91 49Q100 53 102 60T104 102V205V293Q104 345 102 359T88 378Q74 385 41 385H30V408Q30 431 32 431L42 432Q52 433 70 434T106 436Q123 437 142 438T171 441T182 442H185V62Q190 52 197 50T232 46H255V0H247",106:"98 609Q98 637 116 653T160 669Q183 667 200 652T217 609Q217 579 200 564T158 549Q133 549 116 564T98 609ZM28 -163Q58 -168 64 -168Q124 -168 135 -77Q137 -65 137 141T136 353Q132 371 120 377T72 385H52V408Q52 431 54 431L58 432Q62 432 70 432T87 433T108 434T133 436Q151 437 171 438T202 441T214 442H218V184Q217 -36 217 -59T211 -98Q195 -145 153 -175T58 -205Q9 -205 -23 -179T-55 -117Q-55 -94 -40 -79T-2 -64T36 -79T52 -118Q52 -143 28 -163",107:"36 46H50Q89 46 97 60V68Q97 77 97 91T97 124T98 167T98 217T98 272T98 329Q98 366 98 407T98 482T98 542T97 586T97 603Q94 622 83 628T38 637H20V660Q20 683 22 683L32 684Q42 685 61 686T98 688Q115 689 135 690T165 693T176 694H179V463L180 233L240 287Q300 341 304 347Q310 356 310 364Q310 383 289 385H284V431H293Q308 428 412 428Q475 428 484 431H489V385H476Q407 380 360 341Q286 278 286 274Q286 273 349 181T420 79Q434 60 451 53T500 46H511V0H505Q496 3 418 3Q322 3 307 0H299V46H306Q330 48 330 65Q330 72 326 79Q323 84 276 153T228 222L176 176V120V84Q176 65 178 59T189 49Q210 46 238 46H254V0H246Q231 3 137 3T28 0H20V46H36",108:"42 46H56Q95 46 103 60V68Q103 77 103 91T103 124T104 167T104 217T104 272T104 329Q104 366 104 407T104 482T104 542T103 586T103 603Q100 622 89 628T44 637H26V660Q26 683 28 683L38 684Q48 685 67 686T104 688Q121 689 141 690T171 693T182 694H185V379Q185 62 186 60Q190 52 198 49Q219 46 247 46H263V0H255L232 1Q209 2 183 2T145 3T107 3T57 1L34 0H26V46H42",109:"41 46H55Q94 46 102 60V68Q102 77 102 91T102 122T103 161T103 203Q103 234 103 269T102 328V351Q99 370 88 376T43 385H25V408Q25 431 27 431L37 432Q47 433 65 434T102 436Q119 437 138 438T167 441T178 442H181V402Q181 364 182 364T187 369T199 384T218 402T247 421T285 437Q305 442 336 442Q351 442 364 440T387 434T406 426T421 417T432 406T441 395T448 384T452 374T455 366L457 361L460 365Q463 369 466 373T475 384T488 397T503 410T523 422T546 432T572 439T603 442Q729 442 740 329Q741 322 741 190V104Q741 66 743 59T754 49Q775 46 803 46H819V0H811L788 1Q764 2 737 2T699 3Q596 3 587 0H579V46H595Q656 46 656 62Q657 64 657 200Q656 335 655 343Q649 371 635 385T611 402T585 404Q540 404 506 370Q479 343 472 315T464 232V168V108Q464 78 465 68T468 55T477 49Q498 46 526 46H542V0H534L510 1Q487 2 460 2T422 3Q319 3 310 0H302V46H318Q379 46 379 62Q380 64 380 200Q379 335 378 343Q372 371 358 385T334 402T308 404Q263 404 229 370Q202 343 195 315T187 232V168V108Q187 78 188 68T191 55T200 49Q221 46 249 46H265V0H257L234 1Q210 2 183 2T145 3Q42 3 33 0H25V46H41",110:"41 46H55Q94 46 102 60V68Q102 77 102 91T102 122T103 161T103 203Q103 234 103 269T102 328V351Q99 370 88 376T43 385H25V408Q25 431 27 431L37 432Q47 433 65 434T102 436Q119 437 138 438T167 441T178 442H181V402Q181 364 182 364T187 369T199 384T218 402T247 421T285 437Q305 442 336 442Q450 438 463 329Q464 322 464 190V104Q464 66 466 59T477 49Q498 46 526 46H542V0H534L510 1Q487 2 460 2T422 3Q319 3 310 0H302V46H318Q379 46 379 62Q380 64 380 200Q379 335 378 343Q372 371 358 385T334 402T308 404Q263 404 229 370Q202 343 195 315T187 232V168V108Q187 78 188 68T191 55T200 49Q221 46 249 46H265V0H257L234 1Q210 2 183 2T145 3Q42 3 33 0H25V46H41",111:"28 214Q28 309 93 378T250 448Q340 448 405 380T471 215Q471 120 407 55T250 -10Q153 -10 91 57T28 214ZM250 30Q372 30 372 193V225V250Q372 272 371 288T364 326T348 362T317 390T268 410Q263 411 252 411Q222 411 195 399Q152 377 139 338T126 246V226Q126 130 145 91Q177 30 250 30",112:"36 -148H50Q89 -148 97 -134V-126Q97 -119 97 -107T97 -77T98 -38T98 6T98 55T98 106Q98 140 98 177T98 243T98 296T97 335T97 351Q94 370 83 376T38 385H20V408Q20 431 22 431L32 432Q42 433 61 434T98 436Q115 437 135 438T165 441T176 442H179V416L180 390L188 397Q247 441 326 441Q407 441 464 377T522 216Q522 115 457 52T310 -11Q242 -11 190 33L182 40V-45V-101Q182 -128 184 -134T195 -145Q216 -148 244 -148H260V-194H252L228 -193Q205 -192 178 -192T140 -191Q37 -191 28 -194H20V-148H36ZM424 218Q424 292 390 347T305 402Q234 402 182 337V98Q222 26 294 26Q345 26 384 80T424 218",113:"33 218Q33 308 95 374T236 441H246Q330 441 381 372L387 364Q388 364 404 403L420 442H457V156Q457 -132 458 -134Q462 -142 470 -145Q491 -148 519 -148H535V-194H527L504 -193Q480 -192 453 -192T415 -191Q312 -191 303 -194H295V-148H311Q339 -148 360 -145Q369 -141 371 -135T373 -106V-41V49Q313 -11 236 -11Q154 -11 94 53T33 218ZM376 300Q346 389 278 401Q275 401 269 401T261 402Q211 400 171 350T131 214Q131 137 165 82T253 27Q296 27 328 54T376 118V300",114:"36 46H50Q89 46 97 60V68Q97 77 97 91T98 122T98 161T98 203Q98 234 98 269T98 328L97 351Q94 370 83 376T38 385H20V408Q20 431 22 431L32 432Q42 433 60 434T96 436Q112 437 131 438T160 441T171 442H174V373Q213 441 271 441H277Q322 441 343 419T364 373Q364 352 351 337T313 322Q288 322 276 338T263 372Q263 381 265 388T270 400T273 405Q271 407 250 401Q234 393 226 386Q179 341 179 207V154Q179 141 179 127T179 101T180 81T180 66V61Q181 59 183 57T188 54T193 51T200 49T207 48T216 47T225 47T235 46T245 46H276V0H267Q249 3 140 3Q37 3 28 0H20V46H36",115:"295 316Q295 356 268 385T190 414Q154 414 128 401Q98 382 98 349Q97 344 98 336T114 312T157 287Q175 282 201 278T245 269T277 256Q294 248 310 236T342 195T359 133Q359 71 321 31T198 -10H190Q138 -10 94 26L86 19L77 10Q71 4 65 -1L54 -11H46H42Q39 -11 33 -5V74V132Q33 153 35 157T45 162H54Q66 162 70 158T75 146T82 119T101 77Q136 26 198 26Q295 26 295 104Q295 133 277 151Q257 175 194 187T111 210Q75 227 54 256T33 318Q33 357 50 384T93 424T143 442T187 447H198Q238 447 268 432L283 424L292 431Q302 440 314 448H322H326Q329 448 335 442V310L329 304H301Q295 310 295 316",116:"27 422Q80 426 109 478T141 600V615H181V431H316V385H181V241Q182 116 182 100T189 68Q203 29 238 29Q282 29 292 100Q293 108 293 146V181H333V146V134Q333 57 291 17Q264 -10 221 -10Q187 -10 162 2T124 33T105 68T98 100Q97 107 97 248V385H18V422H27",117:"383 58Q327 -10 256 -10H249Q124 -10 105 89Q104 96 103 226Q102 335 102 348T96 369Q86 385 36 385H25V408Q25 431 27 431L38 432Q48 433 67 434T105 436Q122 437 142 438T172 441T184 442H187V261Q188 77 190 64Q193 49 204 40Q224 26 264 26Q290 26 311 35T343 58T363 90T375 120T379 144Q379 145 379 161T380 201T380 248V315Q380 361 370 372T320 385H302V431Q304 431 378 436T457 442H464V264Q464 84 465 81Q468 61 479 55T524 46H542V0Q540 0 467 -5T390 -11H383V58",118:"338 431Q344 429 422 429Q479 429 503 431H508V385H497Q439 381 423 345Q421 341 356 172T288 -2Q283 -11 263 -11Q244 -11 239 -2Q99 359 98 364Q93 378 82 381T43 385H19V431H25L33 430Q41 430 53 430T79 430T104 429T122 428Q217 428 232 431H240V385H226Q187 384 184 370Q184 366 235 234L286 102L377 341V349Q377 363 367 372T349 383T335 385H331V431H338",119:"90 368Q84 378 76 380T40 385H18V431H24L43 430Q62 430 84 429T116 428Q206 428 221 431H229V385H215Q177 383 177 368Q177 367 221 239L265 113L339 328L333 345Q323 374 316 379Q308 384 278 385H258V431H264Q270 428 348 428Q439 428 454 431H461V385H452Q404 385 404 369Q404 366 418 324T449 234T481 143L496 100L537 219Q579 341 579 347Q579 363 564 373T530 385H522V431H529Q541 428 624 428Q692 428 698 431H703V385H697Q696 385 691 385T682 384Q635 377 619 334L559 161Q546 124 528 71Q508 12 503 1T487 -11H479Q460 -11 456 -4Q455 -3 407 133L361 267Q359 263 266 -4Q261 -11 243 -11H238Q225 -11 220 -3L90 368",120:"201 0Q189 3 102 3Q26 3 17 0H11V46H25Q48 47 67 52T96 61T121 78T139 96T160 122T180 150L226 210L168 288Q159 301 149 315T133 336T122 351T113 363T107 370T100 376T94 379T88 381T80 383Q74 383 44 385H16V431H23Q59 429 126 429Q219 429 229 431H237V385Q201 381 201 369Q201 367 211 353T239 315T268 274L272 270L297 304Q329 345 329 358Q329 364 327 369T322 376T317 380T310 384L307 385H302V431H309Q324 428 408 428Q487 428 493 431H499V385H492Q443 385 411 368Q394 360 377 341T312 257L296 236L358 151Q424 61 429 57T446 50Q464 46 499 46H516V0H510H502Q494 1 482 1T457 2T432 2T414 3Q403 3 377 3T327 1L304 0H295V46H298Q309 46 320 51T331 63Q331 65 291 120L250 175Q249 174 219 133T185 88Q181 83 181 74Q181 63 188 55T206 46Q208 46 208 23V0H201",121:"69 -66Q91 -66 104 -80T118 -116Q118 -134 109 -145T91 -160Q84 -163 97 -166Q104 -168 111 -168Q131 -168 148 -159T175 -138T197 -106T213 -75T225 -43L242 0L170 183Q150 233 125 297Q101 358 96 368T80 381Q79 382 78 382Q66 385 34 385H19V431H26L46 430Q65 430 88 429T122 428Q129 428 142 428T171 429T200 430T224 430L233 431H241V385H232Q183 385 185 366L286 112Q286 113 332 227L376 341V350Q376 365 366 373T348 383T334 385H331V431H337H344Q351 431 361 431T382 430T405 429T422 429Q477 429 503 431H508V385H497Q441 380 422 345Q420 343 378 235T289 9T227 -131Q180 -204 113 -204Q69 -204 44 -177T19 -116Q19 -89 35 -78T69 -66",122:"42 263Q44 270 48 345T53 423V431H393Q399 425 399 415Q399 403 398 402L381 378Q364 355 331 309T265 220L134 41L182 40H206Q254 40 283 46T331 77Q352 105 359 185L361 201Q361 202 381 202H401V196Q401 195 393 103T384 6V0H209L34 1L31 3Q28 8 28 17Q28 30 29 31T160 210T294 394H236Q169 393 152 388Q127 382 113 367Q89 344 82 264V255H42V263",123:"434 -231Q434 -244 428 -250H410Q281 -250 230 -184Q225 -177 222 -172T217 -161T213 -148T211 -133T210 -111T209 -84T209 -47T209 0Q209 21 209 53Q208 142 204 153Q203 154 203 155Q189 191 153 211T82 231Q71 231 68 234T65 250T68 266T82 269Q116 269 152 289T203 345Q208 356 208 377T209 529V579Q209 634 215 656T244 698Q270 724 324 740Q361 748 377 749Q379 749 390 749T408 750H428Q434 744 434 732Q434 719 431 716Q429 713 415 713Q362 710 332 689T296 647Q291 634 291 499V417Q291 370 288 353T271 314Q240 271 184 255L170 250L184 245Q202 239 220 230T262 196T290 137Q291 131 291 1Q291 -134 296 -147Q306 -174 339 -192T415 -213Q429 -213 431 -216Q434 -219 434 -231",124:"139 -249H137Q125 -249 119 -235V251L120 737Q130 750 139 750Q152 750 159 735V-235Q151 -249 141 -249H139",125:"65 731Q65 745 68 747T88 750Q171 750 216 725T279 670Q288 649 289 635T291 501Q292 362 293 357Q306 312 345 291T417 269Q428 269 431 266T434 250T431 234T417 231Q380 231 345 210T298 157Q293 143 292 121T291 -28V-79Q291 -134 285 -156T256 -198Q202 -250 89 -250Q71 -250 68 -247T65 -230Q65 -224 65 -223T66 -218T69 -214T77 -213Q91 -213 108 -210T146 -200T183 -177T207 -139Q208 -134 209 3L210 139Q223 196 280 230Q315 247 330 250Q305 257 280 270Q225 304 212 352L210 362L209 498Q208 635 207 640Q195 680 154 696T77 713Q68 713 67 716T65 731",126:"179 251Q164 251 151 245T131 234T111 215L97 227L83 238Q83 239 95 253T121 283T142 304Q165 318 187 318T253 300T320 282Q335 282 348 288T368 299T388 318L402 306L416 295Q375 236 344 222Q330 215 313 215Q292 215 248 233T179 251",160:"",163:"699 578Q699 473 635 473Q597 473 595 508Q595 559 654 569V576Q654 619 637 648T581 677Q545 677 513 647T463 561Q460 554 437 464T414 371Q414 370 458 370H502Q508 364 508 362Q505 334 495 324H402L382 241Q377 224 373 206T366 180T361 163T358 151T354 142T350 133T344 120Q340 112 338 107T336 101L354 90Q398 63 422 54T476 44Q515 44 539 73T574 133Q578 144 580 146T598 148Q622 148 622 139Q622 138 620 130Q602 74 555 32T447 -11Q395 -11 317 38L294 51Q271 28 233 9T155 -10Q117 -10 103 5T88 39Q88 73 126 106T224 139Q236 139 247 138T266 134L273 132Q275 132 302 239L323 324H259Q253 330 253 332Q253 350 265 370H300L334 371L355 453Q356 457 360 477T366 501T372 522T379 545T387 565T397 587T409 606T425 627Q453 664 497 689T583 714Q640 714 669 676T699 578ZM245 76Q211 85 195 85Q173 85 158 71T142 42Q142 26 160 26H163Q211 30 245 76",165:"515 0Q494 3 374 3Q256 3 235 0H224V46H257Q316 47 324 58Q327 62 327 137V213H133Q121 213 113 213T97 213T86 213T78 213T73 214T70 215T69 216T68 218T67 220Q64 225 66 231T73 240Q76 242 202 242H327V273L247 407H115Q81 407 75 408T67 414Q64 419 66 425T73 434Q76 436 153 436Q228 436 228 437Q227 440 173 530T115 623Q101 637 31 637H11V683H20Q66 681 153 681Q169 681 202 681T262 682L288 683H298V637H280Q230 636 230 621Q230 619 250 584Q255 576 264 561T286 526T305 494L340 437L403 436H467L513 514Q564 596 564 605Q564 608 560 616Q550 634 517 637H508V683H516Q531 680 633 680Q722 680 731 683H738V637H723Q644 632 617 595Q614 591 568 515T521 437T597 436T676 434Q681 432 683 426T682 414T671 409T589 407H503L422 273V242H547Q673 242 676 240Q681 238 683 232T682 220Q682 219 682 218T681 217T679 216T677 215T672 214T664 213T652 213T637 213T616 213H422V139V87Q422 64 425 58T441 49Q456 46 503 46H525V0H515ZM449 406Q449 407 403 407Q358 407 358 406L370 387Q381 368 392 350L404 331Q447 404 449 406",168:"95 612Q95 633 112 651T153 669T193 652T210 612Q210 588 194 571T152 554L127 560Q95 577 95 612ZM289 611Q289 634 304 649T335 668Q336 668 340 668T346 669Q369 669 386 652T404 612T387 572T346 554Q323 554 306 570T289 611",172:"56 323T56 336T70 356H596Q603 353 611 343V102Q598 89 591 89Q587 89 584 90T579 94T575 98T572 102L571 209V316H70Q56 323 56 336",174:"915 266Q915 140 852 38T689 -120T474 -175Q312 -175 188 -71T38 190Q32 220 32 266V287Q32 345 57 416T129 545Q192 624 282 666T464 709Q513 709 522 708Q599 698 665 666T776 590T853 493T900 387T915 287V266ZM875 285Q875 339 853 399T789 517T676 616T519 668Q510 669 465 669Q380 669 299 630T155 514T77 336Q72 312 72 285V266V256Q72 123 163 11Q290 -135 474 -135Q614 -135 727 -46Q875 81 875 266V285ZM276 457Q275 458 274 460T272 463T270 465T267 467T264 469T258 471T252 472T243 473T232 474T218 474H204V514H335Q477 514 499 510Q560 502 610 467T661 375Q661 362 658 350T648 327T635 308T618 292T601 280T583 269T568 262T554 256L547 253Q548 252 556 247T570 237T586 223T602 202T614 174Q616 169 626 123T638 72Q652 23 683 23Q715 23 720 68Q721 78 724 81T740 84T756 82T760 70Q760 47 747 25T715 -7Q700 -14 673 -14Q672 -14 662 -14T643 -12T619 -7T593 2T568 16T547 37T534 67Q531 80 531 97Q531 103 531 116T532 136Q532 218 472 236Q466 238 413 239H360V148L361 58Q366 47 375 44T418 40H432V0H424Q409 3 318 3T212 0H204V40H218Q242 40 253 42T268 47T276 58V457ZM376 473Q365 471 363 464T360 430V366V276H416Q421 276 434 276T453 276T469 277T486 279T501 282T517 287T529 294T542 305Q561 324 561 375Q561 424 545 444T482 472Q478 473 427 474Q415 474 403 474T384 474L376 473",175:"69 544V590H430V544H69",176:"147 628Q147 669 179 692T244 715Q298 715 325 689T352 629Q352 592 323 567T249 542Q202 542 175 567T147 628ZM313 628Q313 660 300 669T259 678H253Q248 678 242 678T234 679Q217 679 207 674T192 659T188 644T187 629Q187 600 198 590Q210 579 250 579H265Q279 579 288 581T305 595T313 628",177:"56 320T56 333T70 353H369V502Q369 651 371 655Q376 666 388 666Q402 666 405 654T409 596V500V353H707Q722 345 722 333Q722 320 707 313H409V40H707Q722 32 722 20T707 0H70Q56 7 56 20T70 40H369V313H70Q56 320 56 333",180:"349 699Q367 699 380 686T393 656Q393 651 392 647T387 637T380 627T367 616T351 602T330 585T303 563L232 505L217 519Q203 533 204 533Q204 534 229 567T282 636T313 678L316 681Q318 684 321 686T328 692T337 697T349 699",183:"78 250Q78 274 95 292T138 310Q162 310 180 294T199 251Q199 226 182 208T139 190T96 207T78 250",215:"630 29Q630 9 609 9Q604 9 587 25T493 118L389 222L284 117Q178 13 175 11Q171 9 168 9Q160 9 154 15T147 29Q147 36 161 51T255 146L359 250L255 354Q174 435 161 449T147 471Q147 480 153 485T168 490Q173 490 175 489Q178 487 284 383L389 278L493 382Q570 459 587 475T609 491Q630 491 630 471Q630 464 620 453T522 355L418 250L522 145Q606 61 618 48T630 29",240:"75 566V604Q75 624 79 629T102 635Q124 635 127 629T131 588L133 550L191 588L249 628L231 635Q176 654 124 657Q116 657 106 658L95 659Q94 661 94 687T95 715Q99 717 113 717Q195 717 282 679L309 668L331 681Q351 697 391 721Q428 748 435 748Q437 749 446 749Q470 749 473 746Q478 744 478 681V621Q466 615 456 615Q435 615 424 624L422 661V699L382 675L344 648Q353 639 366 630Q480 538 504 413Q509 393 509 333V313Q509 284 507 257T495 184T466 102T413 33T329 -16Q311 -21 275 -21Q226 -21 195 -10Q150 7 110 50T53 141Q42 179 42 227Q42 332 101 403T245 474Q282 474 314 461T359 436T380 415Q386 405 389 408Q389 426 378 475Q368 505 355 529T329 567T306 590T288 603L282 606L120 501Q116 500 102 500Q84 500 75 506V566ZM388 225Q388 376 309 410Q299 416 273 419Q216 419 191 390Q174 371 168 342T162 218Q162 112 184 79Q212 39 273 39Q312 39 342 62T380 121Q388 159 388 225",247:"318 466Q318 500 339 518T386 537Q418 537 438 517T458 466Q458 438 440 417T388 396Q355 396 337 417T318 466ZM56 237T56 250T70 270H706Q721 262 721 250T706 230H70Q56 237 56 250ZM318 34Q318 68 339 86T386 105Q418 105 438 85T458 34Q458 6 440 -15T388 -36Q355 -36 337 -15T318 34",305:"247 0Q232 3 143 3Q132 3 106 3T56 1L34 0H26V46H42Q70 46 91 49Q100 53 102 60T104 102V205V293Q104 345 102 359T88 378Q74 385 41 385H30V408Q30 431 32 431L42 432Q52 433 70 434T106 436Q123 437 142 438T171 441T182 442H185V62Q190 52 197 50T232 46H255V0H247",567:"28 -163Q58 -168 64 -168Q124 -168 135 -77Q137 -65 137 141T136 353Q132 371 120 377T72 385H52V408Q52 431 54 431L58 432Q62 432 70 432T87 433T108 434T133 436Q151 437 171 438T202 441T214 442H218V184Q217 -36 217 -59T211 -98Q195 -145 153 -175T58 -205Q9 -205 -23 -179T-55 -117Q-55 -94 -40 -79T-2 -64T36 -79T52 -118Q52 -143 28 -163",697:"79 43Q73 43 52 49T30 61Q30 68 85 293T146 528Q161 560 198 560Q218 560 240 545T262 501Q262 496 260 486Q259 479 173 263T84 45T79 43",710:"112 560L249 694L257 686Q387 562 387 560L361 531Q359 532 303 581L250 627L195 580Q182 569 169 557T148 538L140 532Q138 530 125 546L112 560",711:"114 611L127 630L136 644Q138 644 193 612Q248 581 250 581L306 612Q361 644 363 644L385 611L318 562L249 513L114 611",713:"69 544V590H430V544H69",714:"349 699Q367 699 380 686T393 656Q393 651 392 647T387 637T380 627T367 616T351 602T330 585T303 563L232 505L217 519Q203 533 204 533Q204 534 229 567T282 636T313 678L316 681Q318 684 321 686T328 692T337 697T349 699",715:"106 655Q106 671 119 685T150 699Q166 699 177 688Q190 671 222 629T275 561T295 533T282 519L267 505L196 563Q119 626 113 634Q106 643 106 655",728:"250 515Q179 515 138 565T92 683V694H129V689Q129 688 129 683T130 675Q137 631 169 599T248 567Q304 567 337 608T370 689V694H407V683Q403 617 361 566T250 515",729:"190 609Q190 637 208 653T252 669Q275 667 292 652T309 609Q309 579 292 564T250 549Q225 549 208 564T190 609",730:"147 628Q147 669 179 692T244 715Q298 715 325 689T352 629Q352 592 323 567T249 542Q202 542 175 567T147 628ZM313 628Q313 660 300 669T259 678H253Q248 678 242 678T234 679Q217 679 207 674T192 659T188 644T187 629Q187 600 198 590Q210 579 250 579H265Q279 579 288 581T305 595T313 628",732:"179 601Q164 601 151 595T131 584T111 565L97 577L83 588Q83 589 95 603T121 633T142 654Q165 668 187 668T253 650T320 632Q335 632 348 638T368 649T388 668L402 656L416 645Q375 586 344 572Q330 565 313 565Q292 565 248 583T179 601",768:"-394 655Q-394 671 -381 685T-350 699Q-334 699 -323 688Q-310 671 -278 629T-225 561T-205 533T-218 519L-233 505L-304 563Q-381 626 -387 634Q-394 643 -394 655",769:"-151 699Q-133 699 -120 686T-107 656Q-107 651 -108 647T-113 637T-120 627T-133 616T-149 602T-170 585T-197 563L-268 505L-283 519Q-297 533 -296 533Q-296 534 -271 567T-218 636T-187 678L-184 681Q-182 684 -179 686T-172 692T-163 697T-151 699",770:"-388 560L-251 694L-243 686Q-113 562 -113 560L-139 531Q-141 532 -197 581L-250 627L-305 580Q-318 569 -331 557T-352 538L-360 532Q-362 530 -375 546L-388 560",771:"-321 601Q-336 601 -349 595T-369 584T-389 565L-403 577L-417 588Q-417 589 -405 603T-379 633T-358 654Q-335 668 -313 668T-247 650T-180 632Q-165 632 -152 638T-132 649T-112 668L-98 656L-84 645Q-125 586 -156 572Q-170 565 -187 565Q-208 565 -252 583T-321 601",772:"-431 544V590H-70V544H-431",774:"-250 515Q-321 515 -362 565T-408 683V694H-371V689Q-371 688 -371 683T-370 675Q-363 631 -331 599T-252 567Q-196 567 -163 608T-130 689V694H-93V683Q-97 617 -139 566T-250 515",775:"-310 609Q-310 637 -292 653T-248 669Q-225 667 -208 652T-191 609Q-191 579 -208 564T-250 549Q-275 549 -292 564T-310 609",776:"-405 612Q-405 633 -388 651T-347 669T-307 652T-290 612Q-290 588 -306 571T-348 554L-373 560Q-405 577 -405 612ZM-211 611Q-211 634 -196 649T-165 668Q-164 668 -160 668T-154 669Q-131 669 -114 652T-96 612T-113 572T-154 554Q-177 554 -194 570T-211 611",778:"-353 628Q-353 669 -321 692T-256 715Q-202 715 -175 689T-148 629Q-148 592 -177 567T-251 542Q-298 542 -325 567T-353 628ZM-187 628Q-187 660 -200 669T-241 678H-247Q-252 678 -258 678T-266 679Q-283 679 -293 674T-308 659T-312 644T-313 629Q-313 600 -302 590Q-290 579 -250 579H-235Q-221 579 -212 581T-195 595T-187 628",779:"-292 701Q-278 701 -262 690T-246 658Q-246 649 -250 641Q-252 637 -297 574T-344 510L-378 528Q-378 530 -355 598T-327 676Q-316 701 -292 701ZM-126 701Q-112 701 -96 690T-80 658Q-80 649 -84 641Q-86 637 -131 574T-178 510L-212 528Q-212 530 -189 598T-161 676Q-150 701 -126 701",780:"-386 611L-373 630L-364 644Q-362 644 -307 612Q-252 581 -250 581L-194 612Q-139 644 -137 644L-115 611L-182 562L-251 513L-386 611",824:"-612 -215T-619 -215T-631 -212T-637 -204T-639 -197Q-639 -190 -634 -183Q-621 -157 -400 274T-176 707Q-173 716 -160 716Q-153 716 -148 712T-142 703T-140 696Q-140 691 -372 241T-608 -212Q-612 -215 -619 -215",913:"255 0Q240 3 140 3Q48 3 39 0H32V46H47Q119 49 139 88Q140 91 192 245T295 553T348 708Q351 716 366 716H376Q396 715 400 709Q402 707 508 390L617 67Q624 54 636 51T687 46H717V0H708Q699 3 581 3Q458 3 437 0H427V46H440Q510 46 510 64Q510 66 486 138L462 209H229L209 150Q189 91 189 85Q189 72 209 59T259 46H264V0H255ZM447 255L345 557L244 256Q244 255 345 255H447",914:"131 622Q124 629 120 631T104 634T61 637H28V683H229H267H346Q423 683 459 678T531 651Q574 627 599 590T624 512Q624 461 583 419T476 360L466 357Q539 348 595 302T651 187Q651 119 600 67T469 3Q456 1 242 0H28V46H61Q103 47 112 49T131 61V622ZM511 513Q511 560 485 594T416 636Q415 636 403 636T371 636T333 637Q266 637 251 636T232 628Q229 624 229 499V374H312L396 375L406 377Q410 378 417 380T442 393T474 417T499 456T511 513ZM537 188Q537 239 509 282T430 336L329 337H229V200V116Q229 57 234 52Q240 47 334 47H383Q425 47 443 53Q486 67 511 104T537 188",915:"128 619Q121 626 117 628T101 631T58 634H25V680H554V676Q556 670 568 560T582 444V440H542V444Q542 445 538 478T523 545T492 598Q454 634 349 634H334Q264 634 249 633T233 621Q232 618 232 339L233 61Q240 54 245 52T270 48T333 46H360V0H348Q324 3 182 3Q51 3 36 0H25V46H58Q100 47 109 49T128 61V619",916:"51 0Q46 4 46 7Q46 9 215 357T388 709Q391 716 416 716Q439 716 444 709Q447 705 616 357T786 7Q786 4 781 0H51ZM507 344L384 596L137 92L383 91H630Q630 93 507 344",917:"128 619Q121 626 117 628T101 631T58 634H25V680H597V676Q599 670 611 560T625 444V440H585V444Q584 447 582 465Q578 500 570 526T553 571T528 601T498 619T457 629T411 633T353 634Q266 634 251 633T233 622Q233 622 233 621Q232 619 232 497V376H286Q359 378 377 385Q413 401 416 469Q416 471 416 473V493H456V213H416V233Q415 268 408 288T383 317T349 328T297 330Q290 330 286 330H232V196V114Q232 57 237 52Q243 47 289 47H340H391Q428 47 452 50T505 62T552 92T584 146Q594 172 599 200T607 247T612 270V273H652V270Q651 267 632 137T610 3V0H25V46H58Q100 47 109 49T128 61V619",918:"69 443Q69 452 74 554T80 683H549Q555 677 555 664Q555 649 554 648Q552 645 366 348T179 50T192 49T263 49H275H302Q333 49 353 50T401 59T447 78T482 115T507 173Q513 200 520 273V282H560V274Q560 272 552 143T543 8V0H302L61 1L58 3Q55 8 55 21V35Q59 43 153 193T340 489T432 637H343Q259 637 214 625T141 573Q109 523 109 445Q109 443 89 443H69",919:"128 622Q121 629 117 631T101 634T58 637H25V683H36Q57 680 180 680Q315 680 324 683H335V637H302Q262 636 251 634T233 622L232 500V378H517V622Q510 629 506 631T490 634T447 637H414V683H425Q446 680 569 680Q704 680 713 683H724V637H691Q651 636 640 634T622 622V61Q628 51 639 49T691 46H724V0H713Q692 3 569 3Q434 3 425 0H414V46H447Q489 47 498 49T517 61V332H232V197L233 61Q239 51 250 49T302 46H335V0H324Q303 3 180 3Q45 3 36 0H25V46H58Q100 47 109 49T128 61V622",920:"56 340Q56 423 86 494T164 610T270 680T388 705Q521 705 621 601T722 341Q722 260 693 191T617 75T510 4T388 -22T267 3T160 74T85 189T56 340ZM610 339Q610 428 590 495T535 598T463 651T384 668Q332 668 289 638T221 566Q168 485 168 339Q168 274 176 235Q189 158 228 105T324 28Q356 16 388 16Q415 16 442 24T501 54T555 111T594 205T610 339ZM223 263V422H263V388H514V422H554V263H514V297H263V263H223",921:"328 0Q307 3 180 3T32 0H21V46H43Q92 46 106 49T126 60Q128 63 128 342Q128 620 126 623Q122 628 118 630T96 635T43 637H21V683H32Q53 680 180 680T328 683H339V637H317Q268 637 254 634T234 623Q232 620 232 342Q232 63 234 60Q238 55 242 53T264 48T317 46H339V0H328",922:"128 622Q121 629 117 631T101 634T58 637H25V683H36Q57 680 180 680Q315 680 324 683H335V637H313Q235 637 233 620Q232 618 232 462L233 307L379 449Q425 494 479 546Q518 584 524 591T531 607V608Q531 630 503 636Q501 636 498 636T493 637H489V683H499Q517 680 630 680Q704 680 716 683H722V637H708Q633 633 589 597Q584 592 495 506T406 419T515 254T631 80Q644 60 662 54T715 46H736V0H728Q719 3 615 3Q493 3 472 0H461V46H469Q515 46 515 72Q515 78 512 84L336 351Q332 348 278 296L232 251V156Q232 62 235 58Q243 47 302 46H335V0H324Q303 3 180 3Q45 3 36 0H25V46H58Q100 47 109 49T128 61V622",923:"320 708Q326 716 340 716H348H355Q367 716 372 708Q374 706 423 547T523 226T575 62Q581 52 591 50T634 46H661V0H653Q644 3 532 3Q411 3 390 0H379V46H392Q464 46 464 65Q463 70 390 305T316 539L246 316Q177 95 177 84Q177 72 198 59T248 46H253V0H245Q230 3 130 3Q47 3 38 0H32V46H45Q112 51 127 91Q128 92 224 399T320 708",924:"132 622Q125 629 121 631T105 634T62 637H29V683H135Q221 683 232 682T249 675Q250 674 354 398L458 124L562 398Q666 674 668 675Q671 681 683 682T781 683H887V637H854Q814 636 803 634T785 622V61Q791 51 802 49T854 46H887V0H876Q855 3 736 3Q605 3 596 0H585V46H618Q660 47 669 49T688 61V347Q688 424 688 461T688 546T688 613L687 632Q454 14 450 7Q446 1 430 1T410 7Q409 9 292 316L176 624V606Q175 588 175 543T175 463T175 356L176 86Q187 50 261 46H278V0H269Q254 3 154 3Q52 3 37 0H29V46H46Q78 48 98 56T122 69T132 86V622",925:"42 46Q74 48 94 56T118 69T128 86V634H124Q114 637 52 637H25V683H232L235 680Q237 679 322 554T493 303L578 178V598Q572 608 568 613T544 627T492 637H475V683H483Q498 680 600 680Q706 680 715 683H724V637H707Q634 633 622 598L621 302V6L614 0H600Q585 0 582 3T481 150T282 443T171 605V345L172 86Q183 50 257 46H274V0H265Q250 3 150 3Q48 3 33 0H25V46H42",926:"47 509L55 676Q55 677 333 677T611 676L619 509Q619 508 599 508T579 510Q579 529 575 557T564 589Q550 594 333 594T102 589Q95 586 91 558T87 510Q87 508 67 508T47 509ZM139 260V445H179V394H487V445H527V260H487V311H179V260H139ZM50 0L42 180H62Q82 180 82 178Q82 133 89 105Q92 93 95 90T108 86Q137 83 333 83Q530 83 558 86Q568 87 571 90T577 105Q584 133 584 178Q584 180 604 180H624L616 0H50",927:"56 340Q56 423 86 494T164 610T270 680T388 705Q521 705 621 601T722 341Q722 260 693 191T617 75T510 4T388 -22T267 3T160 74T85 189T56 340ZM467 647Q426 665 388 665Q360 665 331 654T269 620T213 549T179 439Q174 411 174 354Q174 144 277 61Q327 20 385 20H389H391Q474 20 537 99Q603 188 603 354Q603 411 598 439Q577 592 467 647",928:"128 619Q121 626 117 628T101 631T58 634H25V680H724V634H691Q651 633 640 631T622 619V61Q628 51 639 49T691 46H724V0H713Q692 3 569 3Q434 3 425 0H414V46H447Q489 47 498 49T517 61V634H232V348L233 61Q239 51 250 49T302 46H335V0H324Q303 3 180 3Q45 3 36 0H25V46H58Q100 47 109 49T128 61V619",929:"130 622Q123 629 119 631T103 634T60 637H27V683H214Q237 683 276 683T331 684Q419 684 471 671T567 616Q624 563 624 489Q624 421 573 372T451 307Q429 302 328 301H234V181Q234 62 237 58Q245 47 304 46H337V0H326Q305 3 182 3Q47 3 38 0H27V46H60Q102 47 111 49T130 61V622ZM507 488Q507 514 506 528T500 564T483 597T450 620T397 635Q385 637 307 637H286Q237 637 234 628Q231 624 231 483V342H302H339Q390 342 423 349T481 382Q507 411 507 488",931:"666 247Q664 244 652 126T638 4V0H351Q131 0 95 0T57 5V6Q54 12 57 17L73 36Q89 54 121 90T182 159L305 299L56 644L55 658Q55 677 60 681Q63 683 351 683H638V679Q640 674 652 564T666 447V443H626V447Q618 505 604 543T559 605Q529 626 478 631T333 637H294H189L293 494Q314 465 345 422Q400 346 400 340Q400 338 399 337L154 57Q407 57 428 58Q476 60 508 68T551 83T575 103Q595 125 608 162T624 225L626 251H666V247",932:"36 443Q37 448 46 558T55 671V677H666V671Q667 666 676 556T685 443V437H645V443Q645 445 642 478T631 544T610 593Q593 614 555 625Q534 630 478 630H451H443Q417 630 414 618Q413 616 413 339V63Q420 53 439 50T528 46H558V0H545L361 3Q186 1 177 0H164V46H194Q264 46 283 49T309 63V339V550Q309 620 304 625T271 630H244H224Q154 630 119 601Q101 585 93 554T81 486T76 443V437H36V443",933:"55 551Q55 604 91 654T194 705Q240 705 277 681T334 624T367 556T385 498L389 474L392 488Q394 501 400 521T414 566T438 615T473 659T521 692T584 705Q620 705 648 689T691 647T714 597T722 551Q722 540 719 538T699 536Q680 536 677 541Q677 542 677 544T676 548Q676 576 650 596T588 616H582Q538 616 505 582Q466 543 454 477T441 318Q441 301 441 269T442 222V61Q448 55 452 53T478 48T542 46H569V0H557Q533 3 389 3T221 0H209V46H236Q256 46 270 46T295 47T311 48T322 51T328 54T332 57T337 61V209Q337 383 333 415Q313 616 189 616Q154 616 128 597T101 548Q101 540 97 538T78 536Q63 536 59 538T55 551",934:"312 622Q310 623 307 625T303 629T297 631T286 634T270 635T246 636T211 637H184V683H196Q220 680 361 680T526 683H538V637H511Q468 637 447 635T422 631T411 622V533L425 531Q525 519 595 466T665 342Q665 301 642 267T583 209T506 172T425 152L411 150V61Q417 55 421 53T447 48T511 46H538V0H526Q502 3 361 3T196 0H184V46H211Q231 46 245 46T270 47T286 48T297 51T303 54T307 57T312 61V150H310Q309 151 289 153T232 166T160 195Q149 201 136 210T103 238T69 284T56 342Q56 414 128 467T294 530Q309 532 310 533H312V622ZM170 342Q170 207 307 188H312V495H309Q301 495 282 491T231 469T186 423Q170 389 170 342ZM415 188Q487 199 519 236T551 342Q551 384 539 414T507 459T470 481T434 491T415 495H410V188H415",935:"270 0Q252 3 141 3Q46 3 31 0H23V46H40Q129 50 161 88Q165 94 244 216T324 339Q324 341 235 480T143 622Q133 631 119 634T57 637H37V683H46Q64 680 172 680Q297 680 318 683H329V637H324Q307 637 286 632T263 621Q263 618 322 525T384 431Q385 431 437 511T489 593Q490 595 490 599Q490 611 477 622T436 637H428V683H437Q455 680 566 680Q661 680 676 683H684V637H667Q585 634 551 599Q548 596 478 491Q412 388 412 387Q412 385 514 225T620 62Q628 53 642 50T695 46H726V0H717Q699 3 591 3Q466 3 445 0H434V46H440Q454 46 476 51T499 64Q499 67 463 124T390 238L353 295L350 292Q348 290 343 283T331 265T312 236T286 195Q219 88 218 84Q218 70 234 59T272 46H280V0H270",936:"340 622Q338 623 335 625T331 629T325 631T314 634T298 635T274 636T239 637H212V683H224Q248 680 389 680T554 683H566V637H539Q479 637 464 635T439 622L438 407Q438 192 439 192Q443 193 449 195T474 207T507 232T536 276T557 344Q560 365 562 417T573 493Q587 536 620 544Q627 546 671 546H715L722 540V515Q714 509 708 509Q680 505 671 476T658 392T644 307Q599 177 451 153L438 151V106L439 61Q446 54 451 52T476 48T539 46H566V0H554Q530 3 389 3T224 0H212V46H239Q259 46 273 46T298 47T314 48T325 51T331 54T335 57T340 61V151Q126 178 117 406Q115 503 69 509Q55 509 55 526Q55 541 59 543T86 546H107H120Q150 546 161 543T184 528Q198 514 204 493Q212 472 213 420T226 316T272 230Q287 216 303 207T330 194L339 192Q340 192 340 407V622",937:"55 454Q55 503 75 546T127 617T197 665T272 695T337 704H352Q396 704 404 703Q527 687 596 615T666 454Q666 392 635 330T559 200T499 83V80H543Q589 81 600 83T617 93Q622 102 629 135T636 172L637 177H677V175L660 89Q645 3 644 2V0H552H488Q461 0 456 3T451 20Q451 89 499 235T548 455Q548 512 530 555T483 622T424 656T361 668Q332 668 303 658T243 626T193 560T174 456Q174 380 222 233T270 20Q270 7 263 0H77V2Q76 3 61 89L44 175V177H84L85 172Q85 171 88 155T96 119T104 93Q109 86 120 84T178 80H222V83Q206 132 162 199T87 329T55 454",8192:"",8193:"",8194:"",8195:"",8196:"",8197:"",8198:"",8201:"",8202:"",8203:"",8204:"",8211:"0 248V285H499V248H0",8212:"0 248V285H999V248H0",8213:"0 248V285H999V248H0",8214:"133 736Q138 750 153 750Q164 750 170 739Q172 735 172 250T170 -239Q164 -250 152 -250Q144 -250 138 -244L137 -243Q133 -241 133 -179T132 250Q132 731 133 736ZM329 739Q334 750 346 750Q353 750 361 744L362 743Q366 741 366 679T367 250T367 -178T362 -243L361 -244Q355 -250 347 -250Q335 -250 329 -239Q327 -235 327 250T329 739",8215:"0 -62V-25H499V-62H0",8216:"64 494Q64 548 86 597T131 670T160 694Q163 694 172 685T182 672Q182 669 170 656T144 625T116 573T101 501Q101 489 102 489T107 491T120 497T138 500Q163 500 180 483T198 440T181 397T139 379Q110 379 87 405T64 494",8217:"78 634Q78 659 95 676T138 694Q166 694 189 668T212 579Q212 525 190 476T146 403T118 379Q114 379 105 388T95 401Q95 404 107 417T133 448T161 500T176 572Q176 584 175 584T170 581T157 576T139 573Q114 573 96 590T78 634",8220:"128 494Q128 528 137 560T158 616T185 658T209 685T223 694T236 685T245 670Q244 668 231 654T204 622T178 571T164 501Q164 489 165 489T170 491T183 497T201 500Q226 500 244 483T262 440T245 397T202 379Q173 379 151 405T128 494ZM332 494Q332 528 341 560T362 616T389 658T413 685T427 694T439 685T449 672Q449 669 437 656T411 625T383 573T368 501Q368 489 369 489T374 491T387 497T405 500Q430 500 448 483T466 440T449 397T406 379Q377 379 355 405T332 494",8221:"34 634Q34 659 50 676T93 694Q121 694 144 668T168 579Q168 525 146 476T101 403T73 379Q69 379 60 388T50 401Q50 404 62 417T88 448T116 500T131 572Q131 584 130 584T125 581T112 576T94 573Q69 573 52 590T34 634ZM238 634Q238 659 254 676T297 694Q325 694 348 668T372 579Q372 525 350 476T305 403T277 379Q273 379 264 388T254 401Q254 404 266 417T292 448T320 500T335 572Q335 584 334 584T329 581T316 576T298 573Q273 573 256 590T238 634",8224:"182 675Q195 705 222 705Q234 705 243 700T253 691T263 675L262 655Q262 620 252 549T240 454V449Q250 451 288 461T346 472T377 461T389 431Q389 417 379 404T346 390Q327 390 288 401T243 412H240V405Q245 367 250 339T258 301T261 274T263 225Q263 124 255 -41T239 -213Q236 -216 222 -216H217Q206 -216 204 -212T200 -186Q199 -175 199 -168Q181 38 181 225Q181 265 182 280T191 327T204 405V412H201Q196 412 157 401T98 390Q76 390 66 403T55 431T65 458T98 472Q116 472 155 462T205 449Q204 452 204 460T201 490T193 547Q182 619 182 655V675",8225:"181 658Q181 705 222 705T263 658Q263 633 252 572T240 497Q240 496 241 496Q243 496 285 507T345 519Q365 519 376 508T388 478Q388 466 384 458T375 447T361 438H344Q318 438 282 448T241 459Q240 458 240 456Q240 449 251 384T263 297Q263 278 255 267T238 253T222 250T206 252T190 266T181 297Q181 323 192 383T204 458Q204 459 203 459Q198 459 162 449T101 438H84Q74 443 70 446T61 457T56 478Q56 497 67 508T99 519Q117 519 159 508T203 496Q204 496 204 499Q204 507 193 572T181 658ZM181 202Q181 249 222 249T263 202Q263 185 259 161T249 103T240 48V41H243Q248 41 287 52T346 63T377 52T389 22Q389 8 379 -5T346 -19Q327 -19 288 -8T243 3H240V-4Q243 -24 249 -58T259 -117T263 -158Q263 -177 255 -188T238 -202T222 -205T206 -203T190 -189T181 -158Q181 -141 185 -117T195 -59T204 -4V3H201Q196 3 157 -8T98 -19Q76 -19 66 -6T55 22T65 49T98 63Q117 63 156 52T201 41H204V48Q201 68 195 102T185 161T181 202",8226:"55 251Q55 328 112 386T249 444T386 388T444 249Q444 171 388 113T250 55Q170 55 113 112T55 251",8230:"78 60Q78 84 95 102T138 120Q162 120 180 104T199 61Q199 36 182 18T139 0T96 17T78 60ZM525 60Q525 84 542 102T585 120Q609 120 627 104T646 61Q646 36 629 18T586 0T543 17T525 60ZM972 60Q972 84 989 102T1032 120Q1056 120 1074 104T1093 61Q1093 36 1076 18T1033 0T990 17T972 60",8242:"79 43Q73 43 52 49T30 61Q30 68 85 293T146 528Q161 560 198 560Q218 560 240 545T262 501Q262 496 260 486Q259 479 173 263T84 45T79 43",8245:"12 501Q12 527 31 542T63 558Q73 560 77 560Q114 560 128 528Q133 518 188 293T244 61Q244 56 223 50T195 43Q192 43 190 45T102 263T14 486Q12 496 12 501",8254:"69 544V590H430V544H69",8260:"423 750Q432 750 438 744T444 730Q444 725 271 248T92 -240Q85 -250 75 -250Q68 -250 62 -245T56 -231Q56 -221 230 257T407 740Q411 750 423 750",8288:"",8289:"",8290:"",8291:"",8292:"",8407:"377 694Q377 702 382 708T397 714Q404 714 409 709Q414 705 419 690Q429 653 460 633Q471 626 471 615Q471 606 468 603T454 594Q411 572 379 531Q377 529 374 525T369 519T364 517T357 516Q350 516 344 521T337 536Q337 555 384 595H213L42 596Q29 605 29 615Q29 622 42 635H401Q377 673 377 694",8450:"684 131Q684 125 672 109T633 71T573 29T489 -5T386 -19Q330 -19 276 -3T174 46T91 134T44 261Q39 283 39 341T44 421Q66 538 143 611T341 699Q344 699 364 700T395 701Q449 698 503 677T585 655Q603 655 611 662T620 678T625 694T639 702Q650 702 657 690V481L653 474Q640 467 628 472Q624 476 618 496T595 541Q562 587 507 625T390 663H381Q337 663 299 625Q212 547 212 336Q212 249 233 179Q274 30 405 30Q533 30 641 130Q658 147 666 147Q671 147 677 143T684 131ZM250 625Q264 643 261 643Q238 635 214 620T161 579T110 510T79 414Q74 384 74 341T79 268Q89 213 113 169T164 101T217 61T260 39L277 34Q270 41 264 48Q199 111 181 254Q178 281 178 344T181 434Q200 559 250 625ZM621 565V625Q617 623 613 623Q603 619 590 619H575L588 605Q608 583 610 579L621 565",8459:"331 505Q331 519 382 574T472 629H480Q512 629 529 614T547 576Q547 555 534 532T520 504Q520 493 549 493Q590 493 623 506T668 533L681 546Q731 600 772 641T832 700T852 717Q857 717 860 711T865 697L866 690Q866 688 813 617T708 475T656 403Q682 403 714 404H771L780 416Q1004 707 1167 707Q1209 707 1225 689T1241 646Q1241 604 1209 547T1118 447Q1081 422 1034 405T952 382T888 374T857 370H852L826 334Q733 204 708 144Q691 104 691 76Q691 29 748 29Q768 31 791 48T831 83T862 122T881 146Q883 148 900 148H917Q921 143 921 140T914 127Q810 -8 723 -8Q611 -4 611 100Q611 142 631 191T676 275T721 337T742 367Q716 367 685 366H628L620 355Q618 352 558 268Q486 168 461 141Q405 79 339 34T215 -28Q188 -36 153 -36Q86 -36 58 -11T29 46Q29 82 55 120T123 158Q144 158 154 146T164 119Q164 102 143 89T100 75Q92 75 86 76T77 80T72 82Q67 82 67 60Q67 28 99 14T170 0Q214 0 272 47T419 224L505 340L518 357Q513 357 504 356T467 347T415 330T360 300T308 253Q296 238 295 237H278H274Q256 237 256 243Q256 248 263 256Q291 294 330 321T407 362T476 382T530 393T552 398Q556 402 573 423T600 454Q602 457 604 460T608 465L610 467Q565 455 532 455Q465 455 449 483Q447 487 447 498Q447 513 463 538T479 579Q479 593 463 593Q436 593 385 519Q374 504 371 502T360 499H353H349Q331 499 331 505ZM1195 634Q1195 643 1195 648T1185 662T1157 671Q1130 671 1092 644T1019 579T952 502T901 436L882 409L891 410Q900 411 913 412T934 415Q1081 439 1144 520Q1195 590 1195 634",8460:"11 -16L1 0Q7 6 25 27T57 62T91 88T128 101Q159 99 195 66L203 59L211 67Q239 95 239 133Q239 158 210 213T152 330T123 430Q123 477 173 536T269 630T320 666Q376 610 440 606H443Q457 606 466 611T519 647L542 664Q543 664 543 654V643L522 622Q434 537 403 537Q388 537 366 543T329 555T293 570T270 580L261 585L253 574Q206 517 206 475Q206 452 218 416T242 356L255 331Q256 331 270 345T324 391T421 459L437 468H453Q545 463 608 421L618 415L623 392Q644 307 644 233Q644 97 612 9Q604 -10 601 -15T581 -35Q505 -104 467 -124Q446 -133 431 -133Q414 -132 399 -126T376 -115T368 -107Q368 -106 392 -75L415 -43Q432 -67 444 -73T472 -79H474Q479 -79 484 -78T501 -69T521 -50T538 -13T551 46Q558 97 558 180Q558 232 557 245Q553 277 547 300T528 349T488 389T424 404Q344 404 276 295Q272 288 273 285Q300 216 300 168Q300 161 300 156T298 145T297 137T293 129T289 123T283 116T277 107Q212 23 178 -13L166 -26L149 -9Q108 32 81 32Q63 32 21 -7L11 -16",8461:"14 666Q14 675 26 683H344L351 679Q361 665 351 655Q344 648 317 648Q287 645 282 641Q270 637 269 623T266 497V370H511V497Q511 519 510 553Q509 615 507 626T496 641H495Q489 645 459 648Q420 648 420 665Q420 672 426 679L433 683H751Q762 676 762 666Q762 648 724 648Q684 645 677 632Q675 626 675 341Q675 57 677 52Q684 38 724 35Q762 35 762 16Q762 6 751 -1H433L426 3Q420 10 420 17Q420 35 459 35Q501 38 506 52Q511 64 511 190V323H266V190Q266 60 271 52Q276 38 317 35Q342 35 351 28Q360 17 351 3L344 -1H26Q14 5 14 16Q14 35 53 35Q94 38 99 52Q104 60 104 341T99 632Q93 645 53 648Q14 648 14 666ZM233 341V553Q233 635 239 648H131Q134 641 135 638T137 603T139 517T139 341Q139 131 138 89T132 37Q131 36 131 35H239Q233 47 233 129V341ZM639 341V489Q639 548 639 576T640 620T642 639T646 648H537L542 639Q546 625 546 341Q546 130 545 88T538 37Q537 36 537 35H646Q643 41 643 42T641 55T639 84T639 140V341",8462:"137 683Q138 683 209 688T282 694Q294 694 294 685Q294 674 258 534Q220 386 220 383Q220 381 227 388Q288 442 357 442Q411 442 444 415T478 336Q478 285 440 178T402 50Q403 36 407 31T422 26Q450 26 474 56T513 138Q516 149 519 151T535 153Q555 153 555 145Q555 144 551 130Q535 71 500 33Q466 -10 419 -10H414Q367 -10 346 17T325 74Q325 90 361 192T398 345Q398 404 354 404H349Q266 404 205 306L198 293L164 158Q132 28 127 16Q114 -11 83 -11Q69 -11 59 -2T48 16Q48 30 121 320L195 616Q195 629 188 632T149 637H128Q122 643 122 645T124 664Q129 683 137 683",8463:"150 475Q147 475 118 466T82 457Q73 457 64 467T54 487Q54 490 55 492Q63 506 64 506Q67 512 118 526Q162 541 169 546Q173 559 175 575Q181 596 181 604Q181 613 166 617Q164 617 153 618T135 619Q119 619 114 621T109 630Q109 636 114 656T122 681Q125 685 202 688Q272 695 286 695Q304 695 304 684Q304 682 291 628L278 577L386 612Q466 635 476 635T492 627T499 607Q499 593 489 586Q485 583 373 546L262 512Q262 511 248 455T233 397T236 397T244 404Q295 441 357 441Q405 441 445 417T485 333Q485 284 449 178T412 58T426 44Q447 44 466 68Q485 87 500 130L509 152H531H543Q562 152 562 144Q562 128 546 93T494 23T415 -13Q385 -13 359 3T322 44Q318 52 318 77Q318 99 352 196T386 337Q386 386 346 386Q318 386 286 370Q267 361 245 338T211 292Q207 287 193 235T162 113T138 21Q128 7 122 4Q105 -12 83 -12Q66 -12 54 -2T42 26Q42 45 98 257L151 475H150",8464:"829 148Q845 148 845 143T841 130T823 109T788 83T730 54T644 22Q637 20 634 19T627 16T622 13T618 10T612 3T604 -6Q510 -112 396 -203T201 -312Q190 -314 171 -314H166Q156 -314 147 -312T123 -304T101 -283T92 -245Q92 -203 117 -160T175 -93Q214 -65 280 -41T390 -6T509 22L532 27L547 47Q673 219 673 225L665 228Q657 231 648 235T627 249T606 270T591 300T584 341Q584 389 614 447T686 544Q735 588 799 615T959 667T1108 713Q1118 717 1119 717Q1125 717 1129 705T1133 689Q1133 686 1115 673Q1051 627 1001 579T918 481T867 403T828 328T805 277Q802 271 801 267T798 261T798 259Q849 270 900 317Q956 371 956 421Q956 438 953 457T950 480Q950 481 950 482L951 484Q953 487 966 492T985 498Q989 498 994 473Q1000 441 1000 423Q1000 362 934 302T790 223L775 220L767 207Q757 191 731 158T685 98T662 63Q662 61 690 70T755 99T811 142L816 148H829ZM646 332Q646 308 659 291T685 268L698 263L735 320Q828 465 865 511Q923 582 1003 643L1005 645Q1004 645 924 620Q775 572 716 492Q646 401 646 332ZM184 -278Q233 -278 311 -212T444 -80L498 -15H496Q468 -20 424 -30T293 -70T174 -133Q167 -140 158 -153T138 -190T127 -232Q127 -278 184 -278",8465:"190 601Q161 601 137 587T97 553T71 512T55 477T48 463Q44 465 39 468L30 473L35 488Q73 594 106 636T199 685Q200 686 211 686Q250 686 326 652T417 617Q435 617 455 626T497 652T522 670Q532 660 532 654Q469 591 390 550L378 543L343 556Q223 601 190 601ZM378 208Q378 249 369 318T360 424Q360 430 360 439T361 451L362 462Q416 526 482 571L495 580L503 577L511 575L499 562Q442 502 442 465Q442 436 452 368T462 246Q462 169 442 128T385 56Q292 -26 195 -26Q150 -26 104 14L96 21L43 -16Q43 -15 43 -14T41 -10T38 0L48 13Q76 50 123 97L150 125Q154 131 159 131Q166 131 171 116T182 81T193 53Q199 43 216 33T261 22Q307 22 344 68Q378 113 378 208",8466:"572 704Q607 704 607 693Q607 681 590 664H588Q586 664 584 664T578 663Q504 658 434 592T363 457Q363 426 386 401Q417 371 481 361Q490 360 527 360H562Q565 363 595 404T666 494T755 596T854 682T945 717Q986 717 1010 696T1035 637Q1035 593 996 531T873 414Q809 378 753 360T674 338T651 333Q650 333 633 308T588 245T544 185Q498 126 426 78L413 68H414Q498 47 575 47Q626 47 676 74T755 139L762 148H779H783Q802 148 802 142Q802 137 795 129Q760 81 691 33T544 -16Q470 -16 366 20L341 29L331 24Q239 -17 155 -17H141Q90 -17 61 -12T23 1T14 22Q14 44 39 65T103 95Q126 101 180 101Q224 101 258 98T309 90T330 86Q332 86 353 103T389 135Q401 146 412 158T431 179T450 203T466 225T485 252T505 280L535 322H509Q391 322 340 362T289 452Q289 495 321 547T396 630Q438 665 486 684T572 704ZM978 635Q978 644 977 650T973 661T968 668T961 673T954 676T946 678T938 680Q929 680 925 677Q893 659 795 531T682 377Q683 377 711 385T755 401T801 421T856 453T906 495Q927 516 952 557T978 635ZM274 50Q274 51 258 54T216 61T166 65Q160 65 151 65T140 64Q115 58 102 48T88 31Q88 20 159 20Q191 20 219 27T261 42L274 50",8467:"345 104T349 104T361 95T369 80T352 59Q268 -20 206 -20Q170 -20 146 3T113 53T99 104L94 129Q94 130 79 116T48 86T28 70Q22 70 15 79T7 94Q7 98 12 103T58 147L91 179V185Q91 186 91 191T92 200Q92 282 128 400T223 612T336 705Q397 705 397 636V627Q397 453 194 233Q185 223 180 218T174 211T171 208T165 201L163 186Q159 142 159 123Q159 17 208 17Q228 17 253 30T293 56T335 94Q345 104 349 104ZM360 634Q360 655 354 661T336 668Q328 668 322 666T302 645T272 592Q252 547 229 467T192 330L179 273Q179 272 186 280T204 300T221 322Q327 453 355 590Q360 612 360 634",8469:"20 664Q20 666 31 683H142Q256 683 258 681Q259 680 279 653T342 572T422 468L582 259V425Q582 451 582 490T583 541Q583 611 573 628T522 648Q500 648 493 654Q484 665 493 679L500 683H691Q702 676 702 666Q702 657 698 652Q688 648 680 648Q633 648 627 612Q624 601 624 294V-8Q616 -20 607 -20Q601 -20 596 -15Q593 -13 371 270L156 548L153 319Q153 284 153 234T152 167Q152 103 156 78T172 44T213 34Q236 34 242 28Q253 17 242 3L236 -1H36Q24 6 24 16Q24 34 56 34Q58 35 69 36T86 40T100 50T109 72Q111 83 111 345V603L96 619Q72 643 44 648Q20 648 20 664ZM413 419L240 648H120L136 628Q137 626 361 341T587 54L589 68Q589 78 589 121V192L413 419",8472:"300 74Q300 133 338 133Q350 133 356 126T363 109Q363 88 340 76Q340 71 342 62T358 39T393 26Q435 26 474 67T532 182T551 290Q551 325 535 349T484 373Q430 373 378 348T291 289T228 218T187 157T174 130Q254 30 265 10Q276 -15 276 -41Q276 -101 235 -158T142 -216Q112 -216 90 -195T67 -118Q67 -40 104 64L110 81Q81 118 81 174Q81 268 134 360T247 453Q252 453 255 451T258 447L259 445Q259 432 253 420Q251 416 242 416Q209 411 176 341T142 203Q142 193 143 184T146 170T149 165L158 180Q215 280 303 345T485 410Q548 410 586 368T625 255Q625 157 553 74T389 -10H383Q349 -10 325 14Q302 37 300 74ZM105 -123Q105 -134 106 -141T110 -158T122 -173T145 -178Q155 -178 160 -176Q184 -163 199 -132T214 -73Q214 -69 214 -66T213 -59T212 -53T209 -47T205 -41T199 -33T193 -25T184 -14T174 -1L165 10Q156 22 148 32L139 43Q138 43 130 15T113 -54T105 -123",8473:"16 666Q16 675 28 683H195Q334 683 370 682T437 672Q511 657 554 611T597 495Q597 343 404 309Q402 308 401 308Q381 303 319 303H261V181Q261 157 262 120Q262 60 267 50T304 36Q310 35 313 35Q352 35 352 17Q352 10 346 3L339 -1H28Q16 5 16 16Q16 35 53 35Q68 36 75 37T87 42T95 52Q98 61 98 341T95 630Q91 640 83 643T53 648Q16 648 16 666ZM235 35Q228 46 227 84Q226 129 226 337V621L230 635L237 648H128Q128 647 133 632Q136 620 136 341Q136 64 133 50L128 35H235ZM301 341H313Q339 341 354 344T389 362T417 410T426 498Q426 586 401 616T322 647Q301 647 293 643Q271 637 264 621Q261 617 261 479V341H301ZM429 350Q431 350 443 353T476 367T515 391T548 432T562 490Q562 550 524 592Q507 607 484 619Q481 621 448 635L433 639L439 621Q462 578 462 506Q462 448 454 413T437 366T428 350H429",8474:"480 -10Q480 -13 486 -24T507 -50T541 -80T588 -104T648 -114Q666 -114 688 -110T714 -106Q724 -106 728 -114T729 -130Q723 -145 663 -163T548 -181Q503 -181 463 -169T395 -139T343 -97T307 -56T284 -19L280 -3L262 1Q188 24 131 81Q57 155 37 275Q34 292 34 342T37 410Q58 528 131 601Q179 652 248 676T388 701Q485 701 562 661Q698 595 731 448Q742 410 742 341T731 235Q707 141 646 81Q616 50 575 27T493 -5L480 -10ZM568 342Q568 613 437 659L395 666Q329 666 286 626Q232 570 213 439Q210 408 210 342T213 246Q231 113 286 57Q309 37 342 23Q357 19 389 19Q420 19 437 23Q469 38 491 57Q568 134 568 342ZM174 341V354Q174 393 175 419T183 484T205 561T246 635L249 639Q246 639 224 627T193 608Q189 606 183 601T169 589T155 577Q69 491 69 344Q69 133 231 52Q247 42 247 46Q247 46 246 48Q231 69 222 85T200 141T177 239Q174 269 174 341ZM708 341Q708 410 689 467T640 556T588 606T546 630Q532 638 531 638Q530 638 531 635Q563 590 577 543Q602 472 602 341V316Q602 264 599 230T580 144T531 48Q529 44 532 45T546 52Q575 68 596 84T642 128T683 200T706 299Q708 327 708 341ZM391 -17H333Q329 -15 326 -15Q324 -15 324 -17Q324 -21 362 -68Q424 -130 506 -143Q518 -144 544 -144Q569 -144 577 -143L589 -141L575 -139Q544 -127 509 -101T453 -37L442 -19L391 -17",8475:"224 266Q185 266 156 286T127 354Q127 419 176 487T282 594Q346 642 433 679T615 717Q732 717 802 680L815 673Q824 680 840 690T860 700Q864 700 867 693T872 680L873 673Q873 668 858 659L845 651L853 642Q887 605 887 561Q887 500 840 439Q790 379 681 336Q693 312 693 292Q692 276 689 263T672 229T653 198T620 152L575 87Q557 57 557 33Q557 24 560 17T566 8L569 5Q546 5 508 25T470 76Q470 83 473 92T545 198T616 310Q616 317 615 318T612 319Q603 319 575 315H560L545 291Q492 201 429 135T277 23Q202 -17 142 -17H130Q50 -17 16 17Q-2 35 -2 57Q-2 95 24 126T88 158Q106 158 116 147T127 121Q127 110 122 102Q116 93 99 84T63 75Q58 75 53 76T47 77T45 75T44 67Q45 52 57 42T88 27T120 21T144 19Q174 19 208 36T267 76T324 134T369 189T406 239Q462 319 504 374T616 503T755 631L770 644Q767 647 753 654T697 670T602 680Q493 680 399 631T247 516Q218 485 193 440T168 359Q168 328 188 316T234 303Q255 303 273 315T304 340T343 389T390 448Q428 490 441 510T456 548Q456 557 458 559Q459 560 476 567T496 575Q505 575 505 558Q505 511 434 412Q429 406 427 403Q397 360 378 343Q342 308 300 287T224 266ZM819 564Q819 595 800 619L784 606Q729 557 692 512T605 387L591 365L610 364Q622 364 631 363T641 361Q643 361 651 363Q725 388 772 449T819 564ZM794 141Q794 123 725 63T612 3Q609 3 612 5Q612 5 615 7Q639 19 678 57T742 131L755 148H772H780Q794 148 794 141ZM588 -3Q590 0 593 0H594L593 -1Q592 -1 590 -2L588 -3",8476:"27 496Q31 569 102 627T234 685Q236 685 241 685T251 686Q287 686 318 672T367 638T399 598T418 564L423 550Q424 554 434 567T463 601T505 639T561 671T626 685Q672 685 688 659T710 572Q713 533 721 523T766 513Q781 513 787 514T794 516Q796 512 798 509T801 504T802 501T787 493Q702 461 624 401L607 389Q655 383 688 358L697 352V342Q699 330 699 297Q704 209 710 173T734 103Q751 69 765 69Q769 69 806 83L824 90V74Q823 73 759 24T693 -26Q692 -26 660 32L628 90L629 111Q631 159 631 177Q631 278 614 300Q584 340 523 340Q500 340 467 333T431 325Q429 325 429 322Q428 321 426 308T420 275T410 230T392 178T366 125L358 112L342 99Q306 70 269 38T213 -10T193 -26Q192 -26 163 0T116 26Q82 26 50 -8L42 -16L35 -8L27 0L35 10Q43 21 58 38T104 80T158 106Q179 106 218 65L235 48Q238 48 255 60T295 99T329 158Q352 231 352 359Q352 555 242 614Q210 628 187 628Q140 628 116 600T91 548Q91 522 138 464T185 382V376Q185 345 158 313T103 263L76 246Q74 244 64 253L54 260L65 267Q91 285 100 302Q111 318 111 337Q111 355 69 410T27 496ZM562 628Q504 628 443 507L435 491L436 479Q437 471 437 446Q437 396 432 351L529 389L602 426Q673 462 673 463H672Q644 470 637 483T622 553Q608 628 562 628",8477:"17 665Q17 672 28 683H221Q415 681 439 677Q461 673 481 667T516 654T544 639T566 623T584 607T597 592T607 578T614 565T618 554L621 548Q626 530 626 497Q626 447 613 419Q578 348 473 326L455 321Q462 310 473 292T517 226T578 141T637 72T686 35Q705 30 705 16Q705 7 693 -1H510Q503 6 404 159L306 310H268V183Q270 67 271 59Q274 42 291 38Q295 37 319 35Q344 35 353 28Q362 17 353 3L346 -1H28Q16 5 16 16Q16 35 55 35Q96 38 101 52Q106 60 106 341T101 632Q95 645 55 648Q17 648 17 665ZM241 35Q238 42 237 45T235 78T233 163T233 337V621L237 635L244 648H133Q136 641 137 638T139 603T141 517T141 341Q141 131 140 89T134 37Q133 36 133 35H241ZM457 496Q457 540 449 570T425 615T400 634T377 643Q374 643 339 648Q300 648 281 635Q271 628 270 610T268 481V346H284Q327 346 375 352Q421 364 439 392T457 496ZM492 537T492 496T488 427T478 389T469 371T464 361Q464 360 465 360Q469 360 497 370Q593 400 593 495Q593 592 477 630L457 637L461 626Q474 611 488 561Q492 537 492 496ZM464 243Q411 317 410 317Q404 317 401 315Q384 315 370 312H346L526 35H619L606 50Q553 109 464 243",8484:"39 -1Q29 9 29 12Q29 23 60 77T219 337L410 648H364Q261 648 210 628Q168 612 142 588T109 545T97 509T88 490Q85 489 80 489Q72 489 61 503L70 588Q72 607 75 628T79 662T81 675Q84 677 88 681Q90 683 341 683H592Q604 673 604 666Q604 662 412 348L221 37Q221 35 301 35Q406 35 446 48Q504 68 543 111T597 212Q602 239 617 239Q624 239 629 234T635 223Q635 215 621 113T604 8L597 1Q595 -1 317 -1H39ZM148 637L166 648H112V632Q111 629 110 622T108 612Q108 608 110 608T116 612T129 623T148 637ZM552 646Q552 648 504 648Q452 648 450 643Q448 639 266 343T77 37Q77 35 128 35H179L366 339L552 646ZM572 35Q581 89 581 97L561 77Q542 59 526 48L508 37L539 35H572",8486:"55 454Q55 503 75 546T127 617T197 665T272 695T337 704H352Q396 704 404 703Q527 687 596 615T666 454Q666 392 635 330T559 200T499 83V80H543Q589 81 600 83T617 93Q622 102 629 135T636 172L637 177H677V175L660 89Q645 3 644 2V0H552H488Q461 0 456 3T451 20Q451 89 499 235T548 455Q548 512 530 555T483 622T424 656T361 668Q332 668 303 658T243 626T193 560T174 456Q174 380 222 233T270 20Q270 7 263 0H77V2Q76 3 61 89L44 175V177H84L85 172Q85 171 88 155T96 119T104 93Q109 86 120 84T178 80H222V83Q206 132 162 199T87 329T55 454",8487:"126 584Q119 584 110 539T97 493Q95 490 73 490Q44 490 44 501Q44 515 62 590Q75 672 82 679Q84 684 177 684Q193 684 214 684T241 685Q265 685 271 682T277 664V648Q271 572 229 434T186 231Q186 173 203 132T247 70T302 42T360 33Q391 33 419 42T474 72T517 133T533 231Q533 297 491 437T442 648Q442 675 446 679Q448 684 542 684Q635 684 637 681Q640 678 657 594T675 501Q675 490 646 490Q624 490 622 493Q620 493 609 538T593 584Q591 585 585 585T569 586T551 588H513Q514 586 518 573T538 531T582 453Q647 340 660 277Q663 259 663 232Q663 194 657 177Q652 151 629 112T560 39Q495 -5 424 -19Q403 -22 360 -22Q318 -22 297 -19Q239 -8 193 18T120 74T80 131T62 177Q56 194 56 229Q56 281 74 328T137 453Q160 491 174 518T193 555T201 575T206 588H168Q160 587 150 587T134 586T126 584",8488:"148 590Q95 592 91 627V633L160 729H176Q169 713 169 705Q169 670 244 670Q269 670 305 672T357 675Q405 675 432 661T468 609Q469 605 469 596Q469 572 460 540Q433 463 301 372Q325 378 359 378Q431 378 472 350T519 297Q532 249 532 198Q532 115 500 40T442 -57Q335 -139 202 -139Q165 -139 125 -131L112 -129V-100Q112 -49 106 -33T75 -17Q55 -17 31 -35L22 -42L11 -26L22 -18Q94 36 151 36H160Q171 36 178 33T188 27T194 13T196 -5T197 -32Q198 -79 206 -90Q217 -107 251 -107Q336 -107 389 -33T442 155Q442 240 407 274Q362 319 285 319Q236 319 192 298Q188 298 181 309L224 372Q227 373 234 374T246 376T257 379T271 384T285 391T302 402T321 417Q384 471 384 540Q384 562 366 581T306 600Q292 600 233 595T148 590",8492:"256 262Q161 262 161 351Q161 408 203 471T289 570Q380 645 475 676T617 707L627 708Q637 708 644 708Q759 708 831 675L844 669L857 677Q892 700 896 700Q902 700 907 685Q907 683 907 681T908 678T909 676T909 673Q909 671 909 670T906 667T903 664T897 660T889 655L878 647L889 636Q928 598 928 548Q928 529 923 510T907 474T886 442T861 412T837 388T815 368T800 355Q847 323 847 270V263Q847 205 806 145Q766 82 695 37T564 -8Q527 -8 506 10T484 58Q484 85 501 117T543 172Q607 226 685 228Q695 228 698 226Q703 220 692 206Q684 194 682 193T665 191Q625 189 595 172T550 133T529 93T522 66Q522 29 576 29Q642 29 705 109Q785 211 785 270Q785 287 779 300T769 316T755 327L740 319Q682 290 634 290Q611 290 592 294H588L565 261Q559 252 544 231T522 201T504 178T481 151T455 123Q394 63 314 18T159 -28Q103 -28 67 -6T31 54Q31 88 57 123T123 158Q144 158 154 146T164 119Q164 102 142 89T100 75Q94 75 87 77T76 80L72 81Q69 78 69 65Q69 35 102 22T175 9Q184 9 198 11Q248 23 300 70T403 187T508 331T636 489T789 629L801 639Q796 642 786 647T732 661T633 670Q592 670 558 665Q481 651 409 613T286 520Q274 507 258 485T222 424T202 354Q202 299 269 299Q282 299 295 301T318 307T339 317T358 329T376 345T391 362T406 380T420 398T433 417T445 435Q496 512 496 547Q496 559 497 560T516 569Q526 574 530 574Q538 574 538 540Q538 414 427 325Q342 262 256 262ZM689 382Q708 382 753 375L765 387Q860 482 860 555Q860 594 839 610L822 592Q794 563 752 511T680 420T651 380Q655 381 660 381Q664 382 689 382ZM697 344Q692 345 681 345H675Q671 345 665 345T655 344T650 344L648 342Q646 339 645 338Q643 333 639 327H653Q670 329 676 330Q706 342 706 343Q702 344 697 344",8493:"299 585Q333 609 384 634T470 672L505 685Q506 685 513 662T531 613T548 580Q553 576 563 576Q575 576 605 585Q607 585 607 575V564Q537 532 496 527Q475 542 456 567T427 610T415 627Q410 627 398 618T382 603Q373 588 373 558T386 475T400 399Q400 337 366 303Q343 281 309 266T254 247T226 242L214 257Q214 258 223 260T251 272T287 299Q304 316 304 360Q304 396 289 451T274 532Q274 553 277 561V564H269Q205 558 172 501T139 358Q139 207 226 127T443 46Q448 46 457 46T470 47L485 48L601 106Q602 106 602 93V80Q551 48 517 25T474 -4T460 -13T443 -19Q409 -24 367 -24Q360 -24 351 -24T335 -23T326 -22Q190 -2 125 87T59 319V328Q62 412 96 487L101 500L118 512Q189 563 245 591L266 601L299 585",8496:"280 398L279 400Q278 402 277 405T275 413T272 426T271 443Q271 494 302 544T379 629T472 685T553 707H565H573Q630 707 664 689Q718 661 718 604Q718 548 662 492T553 436Q525 436 508 451T490 492Q490 534 531 579T619 630Q632 630 632 623Q632 619 624 606Q614 593 602 592T578 580Q566 568 549 541T532 497Q532 474 565 474Q577 474 587 476Q600 481 611 489Q630 503 651 535T672 596Q672 660 553 660H548Q494 660 450 616Q421 587 384 531T343 439Q341 420 344 415H345Q346 415 352 415T369 417T391 418Q421 418 440 412T466 398T473 382Q473 367 452 353T398 339Q370 339 348 345T315 359L304 366Q297 365 284 360T234 321T163 234Q120 160 120 117Q120 83 149 57T252 30Q311 30 357 60Q386 79 414 114T452 179Q454 186 454 200Q454 230 415 242Q401 246 373 246Q353 246 347 244Q328 236 313 219T288 184T274 149T265 121T261 109Q260 107 247 102T230 97Q223 97 223 105Q223 148 271 216T386 284Q446 284 483 260T520 195Q520 121 427 57T239 -8Q192 -8 152 2T79 46T46 133Q46 212 107 285T269 394L280 398ZM427 376Q427 377 402 380Q386 380 386 379L425 375L427 376",8497:"258 428Q258 489 322 562T482 685T661 735Q726 735 824 693T977 651Q990 651 990 644Q990 639 971 612T948 581Q947 580 938 580Q878 580 784 621T617 663Q544 663 480 635T379 568T320 492T299 431Q299 387 362 387Q404 387 438 402T493 438T527 486T546 531T551 563Q551 569 550 575T549 584T549 590Q551 593 563 602T579 611Q584 611 592 605T608 584T616 548Q616 513 595 477T554 423Q518 392 464 372T349 351Q258 351 258 428ZM324 187T305 187T286 196Q286 202 301 217Q327 242 383 262T484 290L527 297L567 356Q624 441 643 467T688 521Q715 550 752 581T795 613T804 603T808 587T778 547T702 444T626 300H637Q663 302 685 306L697 308L703 317Q745 376 792 400Q806 406 818 406Q849 406 849 375Q847 355 831 338T797 312T763 296L747 290Q744 289 735 266T724 241Q722 240 702 232T664 217T645 210Q638 210 638 218Q638 224 653 246T669 270Q669 271 668 271Q663 270 624 264L607 263Q570 199 529 152Q513 133 484 106T409 45T305 -13T193 -36Q109 -36 74 -10T39 50Q39 86 64 121T128 158Q171 158 171 121Q171 97 141 83Q125 75 107 75Q93 75 80 83Q76 71 76 62Q76 29 117 15T207 0Q324 0 494 248L501 258H495Q368 239 330 195Q324 187 305 187ZM775 335Q806 358 806 368Q805 369 804 369Q800 369 791 360Q774 336 775 335",8498:"457 681Q471 695 477 695Q485 695 497 681V12L484 -1H68Q55 14 55 19T68 39H457V328H215L211 335Q198 346 211 359L217 368H457V681",8499:"112 -7Q86 -7 58 6T30 48T54 103T113 130Q129 130 141 121T153 94Q153 71 132 59T90 47H80Q95 30 133 30Q180 30 228 63T311 137T402 249T500 361Q566 425 703 529T910 693Q942 721 945 721T958 716T970 709Q974 704 964 691Q961 688 905 622T847 554L595 181Q553 121 527 77T496 19L492 5Q497 5 531 46Q579 98 685 224T850 409L972 524Q994 543 1004 556Q1012 567 1097 643T1186 720Q1194 720 1206 715T1215 703Q1215 701 1191 671T1133 599T1080 530Q1036 461 983 357T862 152Q802 64 799 17Q799 7 800 5T811 2Q836 2 882 37T969 126Q972 130 974 134T978 138T983 139T996 140H1012Q1018 134 1018 132Q1018 122 981 83T889 4T795 -35Q761 -35 745 -12T728 48Q728 122 781 190Q833 269 890 370L927 434L914 422Q848 360 752 245Q643 117 582 51T498 -33T461 -50Q424 -48 424 -4Q424 84 481 172L714 495Q591 406 523 333Q507 316 430 226T313 95Q263 48 221 24T162 -4T120 -7H112",8501:"55 613Q55 643 61 663T74 688T85 694Q94 694 94 681Q98 632 134 588L412 285Q416 311 430 397T447 509V519L438 526Q407 554 398 571T388 617T394 664T407 688T418 694Q425 694 427 684Q429 675 454 635T488 586Q490 584 496 579T513 563T537 540Q555 516 555 487Q555 460 549 441T537 416T528 409Q519 409 517 415T513 435T503 463Q492 481 490 481Q454 264 454 246Q454 237 479 212T529 152T555 79Q555 32 538 9Q531 1 524 1Q516 1 516 13Q512 62 476 106Q468 115 337 258T195 412L193 406Q191 401 189 394T183 377T176 352T171 322T167 284T165 240Q165 224 166 220Q171 199 211 152T252 70Q252 45 235 29T203 8T175 1Q170 0 115 0H79Q60 0 58 3T55 20Q55 31 58 34Q60 37 76 37Q112 39 126 46T140 70Q140 96 112 148T83 236Q83 281 102 334T140 419T159 452Q55 556 55 613",8502:"56 706V726Q56 763 76 763Q83 763 87 759T98 741Q108 726 116 721L127 717L340 715Q547 712 564 709Q575 705 587 692Q599 680 605 663L609 650V137H676Q687 124 687 115Q687 110 678 100T622 43L558 -21H-9Q-22 -6 -22 -1T-13 14T42 72L107 137H569V339Q569 541 567 546Q558 555 554 557L545 563H329Q118 566 101 569Q90 573 78 586Q54 610 54 661Q54 670 56 706",8503:"56 750Q68 764 76 764Q88 764 97 743T125 717Q131 715 240 715T358 713Q421 691 421 640Q421 608 399 588T358 566Q353 566 352 565T351 557L356 526Q356 488 379 346T402 97Q400 21 385 -12Q366 -43 351 -43Q335 -43 329 -10Q316 40 316 64Q316 67 315 67Q313 67 269 26L222 -21H-9Q-22 -7 -22 -1Q-22 4 -14 14T42 73L107 137H311V564H211H164Q115 564 93 573T60 615Q56 630 56 690V750",8504:"62 757Q69 764 75 764Q87 764 97 741Q102 731 105 728T117 721L129 715H349Q569 715 580 710Q618 701 635 670Q640 661 640 639Q640 609 622 590Q617 583 604 575T580 566H573V553Q575 547 576 531T582 469T600 353Q624 205 624 104Q624 46 617 17T591 -32Q581 -43 573 -43Q550 -43 540 44Q535 73 533 319V564H322Q117 566 100 570Q90 573 77 586Q54 609 54 663Q54 689 55 706Q55 738 56 745T62 757",8513:"239 665Q194 665 154 653T90 629T66 617Q59 617 53 623T46 637Q46 652 66 659Q129 695 197 701Q218 705 248 705Q293 705 335 693Q371 684 435 644Q543 562 573 417Q577 393 577 341Q577 290 573 266Q531 83 384 10Q346 -9 315 -16T234 -23H206Q202 -23 183 -23T152 -21T120 -18T88 -10T63 3T44 24L37 35V297L50 310H235Q248 297 248 290Q248 285 235 270H77V103Q77 88 77 80T77 63T78 50T80 43T82 38T85 35T89 32T95 30Q126 20 206 17Q289 17 330 30Q407 55 460 120T533 275Q538 305 538 342Q538 486 452 575T239 665",8592:"944 261T944 250T929 230H165Q167 228 182 216T211 189T244 152T277 96T303 25Q308 7 308 0Q308 -11 288 -11Q281 -11 278 -11T272 -7T267 2T263 21Q245 94 195 151T73 236Q58 242 55 247Q55 254 59 257T73 264Q121 283 158 314T215 375T247 434T264 480L267 497Q269 503 270 505T275 509T288 511Q308 511 308 500Q308 493 303 475Q293 438 278 406T246 352T215 315T185 287T165 270H929Q944 261 944 250",8593:"27 414Q17 414 17 433Q17 437 17 439T17 444T19 447T20 450T22 452T26 453T30 454T36 456Q80 467 120 494T180 549Q227 607 238 678Q240 694 251 694Q259 694 261 684Q261 677 265 659T284 608T320 549Q340 525 363 507T405 479T440 463T467 455T479 451Q483 447 483 433Q483 413 472 413Q467 413 458 416Q342 448 277 545L270 555V-179Q262 -193 252 -193H250H248Q236 -193 230 -179V555L223 545Q192 499 146 467T70 424T27 414",8594:"56 237T56 250T70 270H835Q719 357 692 493Q692 494 692 496T691 499Q691 511 708 511H711Q720 511 723 510T729 506T732 497T735 481T743 456Q765 389 816 336T935 261Q944 258 944 250Q944 244 939 241T915 231T877 212Q836 186 806 152T761 85T740 35T732 4Q730 -6 727 -8T711 -11Q691 -11 691 0Q691 7 696 25Q728 151 835 230H70Q56 237 56 250",8595:"473 86Q483 86 483 67Q483 63 483 61T483 56T481 53T480 50T478 48T474 47T470 46T464 44Q428 35 391 14T316 -55T264 -168Q264 -170 263 -173T262 -180T261 -184Q259 -194 251 -194Q242 -194 238 -176T221 -121T180 -49Q169 -34 155 -21T125 2T95 20T67 33T44 42T27 47L21 49Q17 53 17 67Q17 87 28 87Q33 87 42 84Q158 52 223 -45L230 -55V312Q230 391 230 482T229 591Q229 662 231 676T243 693Q244 694 251 694Q264 692 270 679V-55L277 -45Q307 1 353 33T430 76T473 86",8596:"263 479Q267 501 271 506T288 511Q308 511 308 500Q308 493 303 475Q293 438 278 406T246 352T215 315T185 287T165 270H835Q729 349 696 475Q691 493 691 500Q691 511 711 511Q720 511 723 510T729 506T732 497T735 481T743 456Q765 389 816 336T935 261Q944 258 944 250Q944 244 939 241T915 231T877 212Q836 186 806 152T761 85T740 35T732 4Q730 -6 727 -8T711 -11Q691 -11 691 0Q691 7 696 25Q728 151 835 230H165Q167 228 182 216T211 189T244 152T277 96T303 25Q308 7 308 0Q308 -11 288 -11Q281 -11 278 -11T272 -7T267 2T263 21Q245 94 195 151T73 236Q58 242 55 247Q55 254 59 257T73 264Q144 292 194 349T263 479",8597:"27 492Q17 492 17 511Q17 515 17 517T17 522T19 525T20 528T22 530T26 531T30 532T36 534Q80 545 120 572T180 627Q210 664 223 701T238 755T250 772T261 762Q261 757 264 741T282 691T319 628Q352 589 390 566T454 536L479 529Q483 525 483 511Q483 491 472 491Q467 491 458 494Q342 526 277 623L270 633V-133L277 -123Q307 -77 353 -45T430 -2T473 8Q483 8 483 -11Q483 -15 483 -17T483 -22T481 -25T480 -28T478 -30T474 -31T470 -32T464 -34Q407 -49 364 -84T300 -157T270 -223T261 -262Q259 -272 250 -272Q242 -272 239 -255T223 -201T180 -127Q169 -112 155 -99T125 -76T95 -58T67 -45T44 -36T27 -31L21 -29Q17 -25 17 -11Q17 9 28 9Q33 9 42 6Q158 -26 223 -123L230 -133V633L223 623Q192 577 146 545T70 502T27 492",8598:"204 662Q257 662 301 676T369 705T394 720Q398 720 407 711T417 697Q417 688 389 671T310 639T212 623Q176 623 153 628Q151 628 221 557T546 232Q942 -164 943 -168Q944 -170 944 -174Q944 -182 938 -188T924 -195Q922 -195 916 -193Q912 -191 517 204Q440 281 326 394T166 553L121 598Q126 589 126 541Q126 438 70 349Q59 332 52 332Q48 332 39 341T29 355Q29 358 38 372T57 407T77 464T86 545Q86 583 78 614T63 663T55 683Q55 693 65 693Q73 693 82 688Q136 662 204 662",8599:"582 697Q582 701 591 710T605 720Q607 720 630 706T697 677T795 662Q830 662 863 670T914 686T934 694Q942 694 944 685Q944 680 936 663T921 615T913 545Q913 490 927 446T956 379T970 355Q970 351 961 342T947 332Q940 332 929 349Q874 436 874 541Q874 590 878 598L832 553Q787 508 673 395T482 204Q87 -191 83 -193Q77 -195 75 -195Q67 -195 61 -189T55 -174Q55 -170 56 -168Q58 -164 453 232Q707 487 777 557T847 628Q824 623 787 623Q689 623 599 679Q582 690 582 697",8600:"55 675Q55 683 60 689T75 695Q77 695 83 693Q87 691 482 296Q532 246 605 174T717 62T799 -20T859 -80T878 -97Q874 -93 874 -41Q874 64 929 151Q940 168 947 168Q951 168 960 159T970 145Q970 143 956 121T928 54T913 -45Q913 -83 920 -114T936 -163T944 -185Q942 -194 934 -194Q932 -194 914 -186T864 -170T795 -162Q743 -162 698 -176T630 -205T605 -220Q601 -220 592 -211T582 -197Q582 -187 611 -170T691 -138T787 -123Q824 -123 847 -128Q848 -128 778 -57T453 268Q58 664 56 668Q55 670 55 675",8601:"126 -41Q126 -92 121 -97Q121 -98 139 -80T200 -20T281 61T394 173T517 296Q909 690 916 693Q922 695 924 695Q932 695 938 689T944 674Q944 670 943 668Q942 664 546 268Q292 13 222 -57T153 -128Q176 -123 212 -123Q310 -123 400 -179Q417 -190 417 -197Q417 -201 408 -210T394 -220Q392 -220 369 -206T302 -177T204 -162Q131 -162 67 -194Q63 -195 59 -192T55 -183Q55 -180 62 -163T78 -115T86 -45Q86 10 72 54T44 120T29 145Q29 149 38 158T52 168Q59 168 70 151Q126 62 126 -41",8602:"942 250Q942 244 928 230H511L457 148Q440 124 420 93Q404 68 400 64T389 60Q381 60 375 66T368 81Q368 88 415 159L462 230H175L188 214Q210 188 235 145T264 85Q264 75 260 74T231 72L206 74L191 103Q169 142 164 150Q130 195 64 239Q56 244 56 250T64 261Q115 294 142 323T191 397L206 428H231Q255 428 259 426T264 414Q260 397 235 355T188 288L175 272L331 270Q488 270 491 272Q491 275 542 352T597 432Q602 437 609 437Q617 437 622 432T628 417T582 341L537 272L735 270H931Q942 257 942 250",8603:"54 250Q54 258 66 270H277L488 272L542 350Q596 431 602 435Q604 437 609 437Q617 437 622 432T628 417T582 341L537 272L608 270H751L822 272L808 288Q786 313 761 355T733 414Q733 424 737 426T766 428H793L806 397Q829 354 864 314Q896 284 928 263Q942 257 942 250T928 237Q887 208 864 185Q829 147 806 103L793 74L766 72Q742 72 738 73T733 85Q735 102 756 137T797 198L817 225L822 230H511L457 148Q440 124 420 93Q404 68 400 64T389 60Q381 60 375 66T368 81Q368 88 415 159L462 230H264L66 232Q54 239 54 250",8606:"56 250Q103 277 142 322T199 417H221Q244 417 244 416Q244 414 237 397T208 344T158 278L151 270H276L285 277Q322 306 349 345T388 417H434Q434 413 424 392T393 338T349 279L340 270H634Q933 270 937 266L938 265Q944 259 944 250T938 235L937 234Q933 230 634 230H340L349 221Q372 196 393 163T424 108T434 83H388Q377 116 350 155T285 223L276 230H151L158 222Q186 191 207 156T236 104T244 84Q244 83 221 83H199Q181 133 142 178T56 250",8608:"943 250Q895 221 856 177T801 83H778Q755 83 755 84Q755 86 762 103T791 156T841 222L848 230H723L714 223Q677 194 650 155T611 83H565Q565 87 575 108T606 162T650 221L659 230H365Q66 230 62 234L61 235Q55 241 55 250T61 265L62 266Q66 270 365 270H659L650 279Q627 304 606 337T575 392T565 417H611Q622 384 649 345T714 277L723 270H848L841 278Q813 309 792 344T763 396T755 416Q755 417 778 417H801Q817 367 856 323T943 250",8610:"56 250Q103 277 142 322T199 417H221Q244 417 244 416Q244 414 237 397T208 344T158 278L151 270H873L882 277Q919 306 946 345T985 417H1031Q1031 413 1021 392T990 338T946 279L937 270V230L946 221Q969 196 990 163T1021 108T1031 83H985Q974 116 947 155T882 223L873 230H151L158 222Q186 191 207 156T236 104T244 84Q244 83 221 83H199Q181 133 142 178T56 250",8611:"1054 250Q1006 221 967 177T912 83H889Q866 83 866 84Q866 86 873 103T902 156T952 222L959 230H237L228 223Q191 194 164 155T125 83H79Q79 87 89 108T120 162T164 221L173 230V270L164 279Q141 304 120 337T89 392T79 417H125Q136 384 163 345T228 277L237 270H959L952 278Q924 309 903 344T874 396T866 416Q866 417 889 417H912Q928 367 967 323T1054 250",8614:"95 155V109Q95 83 92 73T75 63Q61 63 58 74T54 130Q54 140 54 180T55 250Q55 421 57 425Q61 437 75 437Q88 437 91 428T95 393V345V270H835Q719 357 692 493Q692 494 692 496T691 499Q691 511 708 511H711Q720 511 723 510T729 506T732 497T735 481T743 456Q765 389 816 336T935 261Q944 258 944 250Q944 244 939 241T915 231T877 212Q836 186 806 152T761 85T740 35T732 4Q730 -6 727 -8T711 -11Q691 -11 691 0Q691 7 696 25Q728 151 835 230H95V155",8617:"903 424T903 444T929 464Q976 464 1023 434T1070 347Q1070 316 1055 292T1016 256T971 237T929 230H165Q167 228 182 216T211 189T244 152T277 96T303 25Q308 7 308 0Q308 -11 288 -11Q281 -11 278 -11T272 -7T267 2T263 21Q245 94 195 151T73 236Q58 242 55 247Q55 254 59 257T73 264Q121 283 158 314T215 375T247 434T264 480L267 497Q269 503 270 505T275 509T288 511Q308 511 308 500Q308 493 303 475Q293 438 278 406T246 352T215 315T185 287T165 270H926Q929 270 941 271T960 275T978 280T998 290T1015 307Q1030 325 1030 347Q1030 355 1027 364T1014 387T983 411T929 424H928Q903 424 903 444",8618:"55 347Q55 380 72 404T113 441T159 458T197 464Q222 464 222 444Q222 429 204 426T157 417T110 387Q95 369 95 347Q95 339 98 330T111 307T142 283T196 270H961Q845 357 818 493Q818 494 818 496T817 499Q817 511 834 511H837Q846 511 849 510T855 506T858 497T861 481T869 456Q891 389 942 336T1061 261Q1070 258 1070 250Q1070 244 1065 241T1041 231T1003 212Q962 186 932 152T887 85T866 35T858 4Q856 -6 853 -8T837 -11Q817 -11 817 0Q817 7 822 25Q854 151 961 230H196Q149 230 102 260T55 347",8619:"56 250Q103 277 142 322T199 417H221Q244 417 244 416Q244 414 237 397T208 344T158 278L151 270H622V305Q622 356 624 388T635 460T661 521T709 559T785 575Q813 575 833 573T880 561T923 534T952 483T964 405Q964 374 959 350T942 307T918 276T884 255T847 242T804 235T760 231T713 230H662V-27Q654 -41 644 -41H642H640Q628 -41 622 -27V230H151L158 222Q186 191 207 156T236 104T244 84Q244 83 221 83H199Q181 133 142 178T56 250ZM924 403Q924 474 894 505T794 536Q758 536 734 526T696 500T675 453T665 395T662 319V270H699Q826 270 875 295T924 403",8620:"35 405Q35 454 48 489T86 542T137 567T195 575Q229 575 251 571T301 554T345 510T370 429Q377 384 377 305V270H848L841 278Q813 309 792 344T763 396T755 416Q755 417 778 417H801Q817 367 856 323T943 250Q896 221 857 177T801 83H778Q755 83 755 84Q755 86 762 103T791 156T841 222L848 230H377V-27Q369 -41 359 -41H357Q342 -41 337 -25V230H286Q247 231 225 232T169 238T115 255T75 284T45 333T35 405ZM75 406Q75 322 123 296T300 270H337V319Q335 432 317 477T240 534Q232 535 197 535Q140 535 108 507T75 406",8621:"57 250Q159 311 200 417H246L242 407Q215 340 159 278L152 270H276L315 310Q354 349 358 351Q366 356 376 351Q378 350 455 273L530 196L606 273Q683 350 686 351Q694 354 703 351Q705 350 782 273L858 196L933 273Q1010 350 1012 351Q1022 356 1030 351Q1034 349 1073 310L1112 270H1236L1229 278Q1173 340 1146 407L1142 417H1188Q1233 306 1331 250Q1231 192 1188 83H1142L1146 93Q1173 160 1229 222L1236 230H1168Q1155 230 1139 230T1119 229Q1112 229 1108 229T1099 231T1092 233T1085 238T1078 245T1068 256T1056 269L1021 304L984 267Q948 230 910 191T867 149Q857 144 848 150Q844 151 770 227T694 304T618 228T540 150Q531 144 521 149Q517 152 479 191T404 267L367 304L332 269Q328 264 320 256T310 246T303 239T296 234T289 231T280 229T269 229Q265 229 249 229T220 230H152L159 222Q215 160 242 93L246 83H223L200 84L195 96Q152 190 57 250",8622:"491 272Q491 275 542 352T597 432Q602 437 609 437Q617 437 622 432T628 417T582 341L537 272L608 270H751L822 272L808 288Q786 313 761 355T733 414Q733 424 737 426T766 428H793L806 397Q829 354 864 314Q896 284 928 263Q942 257 942 250T928 237Q887 208 864 185Q829 147 806 103L793 74L766 72Q742 72 738 73T733 85Q735 102 756 137T797 198L817 225L822 230H511L457 148Q440 124 420 93Q404 68 400 64T389 60Q381 60 375 66T368 81Q368 88 415 159L462 230H175L188 214Q210 188 235 145T264 85Q264 75 260 74T231 72L206 74L191 103Q169 142 164 150Q130 195 64 239Q56 244 56 250T64 261Q115 294 142 323T191 397L206 428H231Q255 428 259 426T264 414Q260 397 235 355T188 288L175 272L331 270Q488 270 491 272",8624:"56 555Q74 567 79 570T107 592T141 625T170 667T198 722H221Q244 722 244 721Q244 718 236 699T207 647T161 587L151 576L291 575H292H293H294H296H297H298H299H300H301H302H304H305H306H307H308H309H310H311H312H314H315H316H317H318H319H320H321H322H323H324H325H327H328H329H330H331H332H333H334H335H336H337H338H339H340H341H342H343H345Q435 574 438 570L439 569L440 568Q444 564 444 287Q444 15 442 12Q436 0 424 0T406 12Q404 15 404 275V535H151L162 523Q187 495 207 462T236 410T244 389H198L193 402Q171 457 131 497T56 555",8625:"301 722Q339 618 443 555L437 551Q431 547 422 541T401 526T377 504T352 477T327 443T306 402L301 389H255Q255 392 263 410T291 461T337 523L348 535H95V275Q95 15 93 12Q87 0 75 0T57 12Q55 15 55 287Q55 564 59 568L60 569Q64 573 76 573T208 575L348 576L338 587Q314 613 294 646T264 698T255 721Q255 722 278 722H301",8630:"361 210Q373 210 373 182V177Q373 155 370 151T348 139Q303 118 267 84T216 28T201 1Q197 -1 196 -1Q189 -1 184 8Q166 39 143 64T99 104T61 129T32 144T19 150Q17 152 17 179Q17 203 21 208Q28 210 39 206Q106 178 157 135L175 119V126Q179 130 179 155Q182 173 193 201Q228 305 312 374T510 459Q532 461 551 461H567Q678 461 784 386Q835 344 861 301Q902 245 926 173T950 32Q950 15 944 8Q930 -6 917 8Q910 12 910 43Q901 208 801 314T561 421Q453 421 359 359Q300 319 263 258T217 126L216 125Q216 124 216 123T217 122Q219 122 229 131T260 156T301 181Q314 189 336 199T361 210",8631:"972 209Q980 209 981 204T982 179Q982 155 979 151T957 139Q915 121 878 86T815 8Q808 -1 803 -1Q801 -1 797 1Q797 6 783 28T732 84T650 139L628 150Q626 152 626 177Q626 201 630 206Q636 210 637 210Q650 210 697 181Q727 166 764 137L784 119L782 132Q767 239 689 318T499 417Q474 421 442 421Q343 421 261 369T130 219Q86 121 86 28Q86 15 79 8Q73 1 66 1T53 8Q46 15 46 30Q46 102 77 192T186 361Q274 443 386 459Q396 460 426 460Q515 460 588 431T703 361T773 271T812 187T822 132Q822 123 825 123Q936 209 972 209",8634:"369 543T369 563T397 583Q408 583 440 579L454 577L464 581Q492 592 516 609T552 638T565 650Q604 638 607 637Q606 636 598 628T585 614T570 601T548 584T523 568L510 560L516 558Q522 555 527 553T541 546T559 536T580 523T603 506T626 485Q722 384 722 250Q722 106 622 12T387 -83Q253 -83 155 12T56 250Q56 357 110 433T235 545Q244 550 252 550Q270 550 270 531Q270 522 261 515T238 501T202 477T159 433Q95 352 95 250Q95 131 178 45T388 -42Q511 -42 596 43T682 250Q682 340 636 408T522 511Q495 526 488 526Q488 525 488 525T487 522T485 515L490 506Q505 481 516 451T531 404T535 384L532 385Q529 386 524 387T513 390L491 397L488 408Q472 483 413 542L399 543Q369 543 369 563",8635:"170 637L213 650Q270 597 313 581L323 577L337 579Q369 583 380 583Q408 583 408 563T380 543H378L364 542Q305 483 289 408L286 397L264 390Q259 389 254 388T245 385L242 384Q242 387 246 403T261 450T287 506L292 515Q291 519 291 521T290 524T289 526Q284 526 265 517T216 486T160 434T114 354T95 249Q95 132 178 45T388 -42Q513 -42 597 44T682 250Q682 337 638 404T532 506Q529 508 525 510T519 514T515 516T511 519T509 522T508 526T507 531Q507 550 525 550Q533 550 542 545Q569 532 596 511T653 454T702 366T721 250Q721 151 672 74T547 -43T388 -83Q254 -83 155 12T56 250Q56 385 151 485Q164 498 179 509T205 528T228 542T247 551T260 558L267 560L254 568Q215 590 170 637",8636:"62 230Q56 236 55 244Q55 252 57 255T69 265Q114 292 151 326T208 391T243 448T265 491T273 509Q276 511 288 511Q304 511 306 505Q309 501 303 484Q293 456 279 430T251 383T223 344T196 313T173 291T156 276L148 270H929Q944 261 944 250T929 230H62",8637:"55 256Q56 264 62 270H929Q944 261 944 250T929 230H148Q149 229 165 215T196 185T231 145T270 87T303 16Q309 -1 306 -5Q304 -11 288 -11Q279 -11 276 -10T269 -4T264 10T253 36T231 75Q172 173 69 235Q59 242 57 245T55 256",8638:"188 258V694H208L215 682Q246 628 293 594T375 551V528Q375 505 374 505Q369 505 351 510T299 534T237 578L228 587V205Q228 -178 226 -182Q221 -194 208 -194T190 -182Q188 -178 188 258",8639:"41 551Q76 559 123 592T201 682L208 694H228V258Q228 -178 226 -182Q221 -194 208 -194T190 -182Q188 -178 188 205V587L179 578Q151 552 117 534T65 511T42 505Q41 505 41 528V551",8640:"691 500Q691 511 711 511Q720 511 723 510T730 504T735 490T746 464T768 425Q796 378 835 339T897 285T933 263Q941 258 942 256T944 245T937 230H70Q56 237 56 250T70 270H852Q802 308 762 364T707 455T691 500",8641:"56 237T56 250T70 270H937Q944 263 944 256Q944 251 944 250T943 246T940 242T933 238Q794 153 734 7Q729 -7 726 -9T711 -11Q695 -11 693 -5Q690 -1 696 16Q721 84 763 139T852 230H70Q56 237 56 250",8642:"190 682Q195 694 208 694T226 683Q228 679 228 296V-87L237 -78Q265 -52 299 -34T351 -11T374 -5Q375 -5 375 -28V-51Q340 -60 293 -92T215 -182L208 -194H188V242Q188 678 190 682",8643:"188 295V573Q188 657 189 672T200 692Q206 694 208 694Q221 694 226 683Q228 679 228 242V-194H208L201 -182Q170 -128 123 -94T41 -51V-28Q41 -5 42 -5Q47 -5 65 -10T117 -34T179 -78L188 -87V295",8644:"943 500Q895 471 856 427T801 333H778Q755 333 755 334Q755 336 762 353T791 406T841 472L848 480H459Q70 480 67 482Q55 488 55 500T67 518Q70 520 459 520H848L841 528Q813 559 792 594T763 646T755 666Q755 667 778 667H801Q817 617 856 573T943 500ZM56 167Q102 194 141 238T198 333H221Q244 333 244 332Q221 265 161 198L151 187H539Q928 187 930 186Q944 182 944 167Q944 155 934 149Q930 147 541 147H151L160 137Q185 110 205 77T235 24T244 1Q244 0 221 0H199Q158 106 56 167",8646:"56 500Q103 527 142 572T199 667H221Q244 667 244 666Q244 664 237 647T208 594T158 528L151 520H539Q928 520 932 518Q944 513 944 500T932 482Q928 480 539 480H151L158 472Q186 441 207 406T236 354T244 334Q244 333 221 333H199Q181 383 142 428T56 500ZM943 167Q835 101 801 0H778Q755 0 755 1T758 9T765 25T771 39Q800 94 839 137L848 147H458Q68 147 66 149Q55 154 55 167Q55 182 69 186Q71 187 460 187H848L838 198Q811 228 791 261T762 314L755 332Q755 333 778 333H801Q841 227 943 167",8647:"930 437Q944 426 944 416T934 399Q930 397 540 397H150L159 387Q185 360 205 328T234 277T243 252Q243 237 217 191T159 113L150 103H540Q930 103 934 101Q944 94 944 84Q944 71 930 64L540 63H151Q180 34 203 -2T236 -61L244 -83H198Q178 -31 142 11T66 77L55 83L65 89Q157 145 197 246Q199 250 190 269Q150 359 65 411L55 417L66 423Q106 447 142 489T198 583H244Q202 488 151 437H930",8648:"83 551Q190 590 250 694Q251 689 263 671T307 621T380 567Q409 551 416 551Q422 551 447 563T511 608T577 684L582 694Q642 591 749 551V528Q749 505 748 505Q745 505 724 515T669 546T612 590L602 599V-181Q595 -193 585 -193H582H581Q568 -193 565 -183L563 -179L562 209V598L552 589Q517 556 473 531T414 506H412Q411 506 393 514T361 530T324 553T280 589L270 598V-179Q255 -192 250 -193H247Q237 -193 230 -181V599L220 590Q197 567 164 546T110 515T84 505Q83 505 83 528V551",8649:"55 416Q55 427 70 437H848Q819 466 796 502T764 561L755 583H801Q821 531 857 489T933 423L944 417L934 411Q843 355 802 254Q800 250 809 231Q849 141 934 89L944 83L933 77Q893 53 857 11T801 -83H755Q797 12 848 63H459L70 64Q55 70 55 84Q55 94 65 101Q69 103 459 103H849L840 113Q806 148 779 196T756 254Q756 255 760 264T770 286T786 315T809 351T840 387L849 397H459Q69 397 65 399Q55 406 55 416",8650:"230 681Q240 694 251 694Q260 693 270 680V-98L280 -89Q297 -73 314 -60T348 -38T374 -24T397 -13T412 -6H414Q428 -6 473 -32T552 -89L562 -98V291L563 680Q570 693 582 693Q593 694 602 681V-99L612 -90Q635 -68 668 -47T723 -15T748 -5Q749 -5 749 -28V-51Q642 -91 582 -194L577 -184Q551 -141 512 -108T447 -63T416 -51T385 -63T321 -108T255 -184L250 -194Q189 -89 83 -51V-28Q83 -5 84 -5Q88 -5 109 -15T164 -46T220 -90L230 -99V681",8651:"195 504L198 514H221Q244 514 244 512Q244 508 239 490T215 437T171 376L162 367H545Q928 367 932 365Q944 360 944 347T932 329Q928 327 492 327H55V347L67 354Q113 379 146 420T195 504ZM67 171Q70 173 507 173H944V153L932 146Q839 95 804 -4L801 -14H778Q755 -14 755 -12Q768 59 828 124L837 133H454Q71 133 67 135Q55 140 55 153Q55 165 67 171",8652:"691 660Q691 671 711 671Q720 671 723 670T730 664T735 650T746 624T768 585Q797 538 836 499T897 445T933 423Q941 418 942 416T944 405T937 390H70Q56 397 56 410T70 430H852Q802 468 762 524T707 615T691 660ZM55 256Q56 264 62 270H929Q944 261 944 250T929 230H148Q149 229 165 215T196 185T231 145T270 87T303 16Q309 -1 306 -5Q304 -11 288 -11Q279 -11 276 -10T269 -4T264 10T253 36T231 75Q172 173 69 235Q59 242 57 245T55 256",8653:"397 525Q410 525 414 524T418 516Q418 506 394 467T331 381L319 367H473L624 369L657 445Q674 487 684 507T699 531T709 534Q717 534 722 528T728 516Q728 510 695 434Q689 418 683 402T672 377T668 367H928Q942 355 942 347Q942 341 928 327H791Q651 327 651 325Q649 324 620 251T586 174Q586 172 757 172H928Q942 158 942 152Q942 143 928 132H568L537 54Q510 -9 503 -22T486 -35Q479 -35 473 -29T466 -17T495 61L526 132H319L331 118Q364 81 391 37T418 -17Q418 -23 415 -24T401 -26Q398 -26 397 -26L384 -24L377 -13Q344 49 301 97T218 170T143 210T84 233T55 245Q54 253 59 256T86 267Q281 327 377 512L384 525H397ZM606 325Q606 327 439 327H275Q258 312 179 265L148 249Q228 206 262 181L275 172H544L575 247L606 325",8654:"395 -24T395 -19T417 57T440 132H255L266 116Q308 64 340 -6Q342 -17 337 -21Q335 -26 320 -26T302 -19Q302 -15 294 4T265 54T217 117T145 182T49 236Q30 243 33 254Q40 261 49 263Q98 283 142 315T214 379T263 442T293 493T302 519Q305 525 320 525T337 521Q342 516 340 505Q308 435 266 383L255 370L384 367H515Q561 522 569 530Q574 534 580 534Q587 534 594 528T602 516Q602 512 580 441T557 367H651L742 370L731 383Q689 435 657 505Q655 516 660 521Q662 525 677 525T695 519Q695 515 703 496T732 446T780 383T853 317T949 263Q967 258 964 245Q959 240 949 236Q897 215 852 182T779 116T731 52T703 3T695 -19Q692 -26 677 -26T660 -21Q655 -17 657 -6Q670 21 682 42T702 77T717 99T728 114T735 122T739 126T740 130T613 132H482L460 54Q440 -9 433 -23T415 -37Q408 -37 402 -31ZM502 325Q502 327 360 327H217L195 310Q173 291 120 256L111 250Q114 248 143 229T195 190L217 172H335L453 174L502 325ZM886 250Q885 251 865 263T831 286T802 310L780 327H544L535 299Q531 283 511 223L495 174L637 172H780L802 190Q843 225 877 243L886 250",8655:"346 174Q348 176 378 249T411 325Q411 327 239 327H68Q55 342 55 347Q55 354 68 367H428L459 445Q487 509 494 521T510 534Q517 534 524 527T531 516Q531 515 502 438L471 367H677L666 381Q631 421 605 463T578 516Q578 522 582 523T599 525H615L619 512Q659 437 714 383T812 309T896 272T942 254Q943 246 938 243T911 232Q718 172 619 -13L615 -24L599 -26Q578 -26 578 -17Q578 -11 587 6T617 53T666 118L677 132H373L339 54Q323 12 313 -8T298 -32T288 -35Q280 -35 275 -29T269 -17Q269 -14 298 57T328 132H68Q55 145 55 152Q55 156 56 158T62 165T68 172H206Q346 172 346 174ZM848 249Q763 297 735 318L722 327H455L422 252L391 174Q391 172 557 172H722L735 181Q773 210 819 234L848 249",8656:"944 153Q944 140 929 133H318L328 123Q379 69 414 0Q419 -13 419 -17Q419 -24 399 -24Q388 -24 385 -23T377 -12Q332 77 253 144T72 237Q62 240 59 242T56 250T59 257T70 262T89 268T119 278T160 296Q303 366 377 512Q382 522 385 523T401 525Q419 524 419 515Q419 510 414 500Q379 431 328 377L318 367H929Q944 359 944 347Q944 336 930 328L602 327H274L264 319Q225 289 147 250Q148 249 165 241T210 217T264 181L274 173H930Q931 172 933 171T936 169T938 167T941 164T942 162T943 158T944 153",8657:"228 -179Q227 -180 226 -182T223 -186T221 -189T218 -192T214 -193T208 -194Q196 -194 189 -181L188 125V430L176 419Q122 369 59 338Q46 330 40 330Q38 330 31 337V350Q31 362 33 365T46 374Q60 381 77 390T128 426T190 484T247 567T292 677Q295 688 298 692Q302 694 305 694Q313 694 318 677Q334 619 363 568T420 485T481 427T532 391T564 374Q575 368 577 365T579 350V337Q572 330 570 330Q564 330 551 338Q487 370 435 419L423 430L422 125V-181Q409 -194 401 -194Q397 -194 394 -193T388 -189T385 -184T382 -180V-177V475L373 487Q331 541 305 602Q304 601 300 591T290 571T278 548T260 519T238 488L229 476L228 148V-179",8658:"580 514Q580 525 596 525Q601 525 604 525T609 525T613 524T615 523T617 520T619 517T622 512Q659 438 720 381T831 300T927 263Q944 258 944 250T935 239T898 228T840 204Q696 134 622 -12Q618 -21 615 -22T600 -24Q580 -24 580 -17Q580 -13 585 0Q620 69 671 123L681 133H70Q56 140 56 153Q56 168 72 173H725L735 181Q774 211 852 250Q851 251 834 259T789 283T735 319L725 327H72Q56 332 56 347Q56 360 70 367H681L671 377Q638 412 609 458T580 514",8659:"401 694Q412 694 422 681V375L423 70L435 81Q487 130 551 162Q564 170 570 170Q572 170 579 163V150Q579 138 577 135T564 126Q541 114 518 99T453 48T374 -46T318 -177Q313 -194 305 -194T293 -178T272 -119T225 -31Q158 70 46 126Q35 132 33 135T31 150V163Q38 170 40 170Q46 170 59 162Q122 131 176 81L188 70V375L189 681Q199 694 208 694Q219 694 228 680V352L229 25L238 12Q279 -42 305 -102Q344 -23 373 13L382 25V678Q387 692 401 694",8660:"308 524Q318 526 323 526Q340 526 340 514Q340 507 336 499Q326 476 314 454T292 417T274 391T260 374L255 368Q255 367 500 367Q744 367 744 368L739 374Q734 379 726 390T707 416T685 453T663 499Q658 511 658 515Q658 525 680 525Q687 524 690 523T695 519T701 507Q766 359 902 287Q921 276 939 269T961 259T966 250Q966 246 965 244T960 240T949 236T930 228T902 213Q763 137 701 -7Q697 -16 695 -19T690 -23T680 -25Q658 -25 658 -15Q658 -11 663 1Q673 24 685 46T707 83T725 109T739 126L744 132Q744 133 500 133Q255 133 255 132L260 126Q265 121 273 110T292 84T314 47T336 1Q341 -11 341 -15Q341 -25 319 -25Q312 -24 309 -23T304 -19T298 -7Q233 141 97 213Q83 221 70 227T51 235T41 239T35 243T34 250T35 256T40 261T51 265T70 273T97 287Q235 363 299 509Q305 522 308 524ZM792 319L783 327H216Q183 294 120 256L110 250L120 244Q173 212 207 181L216 173H783L792 181Q826 212 879 244L889 250L879 256Q826 288 792 319",8661:"290 755Q298 772 305 772T318 757T343 706T393 633Q431 588 473 558T545 515T579 497V484Q579 464 570 464Q564 464 550 470Q485 497 423 550L422 400V100L423 -50Q485 3 550 30Q565 36 570 36Q579 36 579 16V3Q575 -1 549 -12T480 -53T393 -132Q361 -172 342 -208T318 -258T305 -272T293 -258T268 -208T217 -132Q170 -80 128 -51T61 -12T31 3V16Q31 36 40 36Q46 36 61 30Q86 19 109 6T146 -18T173 -38T188 -50V550Q186 549 173 539T147 519T110 495T61 470Q46 464 40 464Q31 464 31 484V497Q34 500 63 513T135 557T217 633Q267 692 290 755ZM374 598Q363 610 351 625T332 651T316 676T305 695L294 676Q282 657 267 636T236 598L228 589V-89L236 -98Q247 -110 259 -125T278 -151T294 -176T305 -195L316 -176Q328 -157 343 -136T374 -98L382 -89V589L374 598",8666:"944 54Q942 44 929 36H372Q372 34 377 26T395 -4T422 -58Q442 -109 442 -110T408 -111H374L370 -100Q282 124 87 243L76 250L87 257Q284 377 370 600L374 611H408Q442 611 442 610Q423 550 381 480Q380 478 379 475T376 471T374 468T372 465V464H929Q942 456 944 446Q944 442 943 439T941 434T938 430T935 428T931 426T928 424H344L336 414Q277 336 200 277L191 270H560Q929 270 933 268Q944 262 944 250Q944 237 933 232Q929 230 560 230H191L200 223Q279 162 336 86L344 76H928Q929 76 931 75T934 73T938 70T941 66T943 61T944 54",8667:"56 250Q56 260 68 270H808L799 277Q720 338 663 414L655 424H363Q71 424 68 426Q55 432 55 444T68 462Q71 464 349 464H627Q627 466 622 474T604 504T577 558Q557 609 557 610T591 611H626L629 600Q717 376 912 257L923 250L912 243Q715 123 629 -100L626 -111H591Q557 -111 557 -110Q576 -50 618 20Q619 22 620 25T623 29T625 32T626 35L627 36H349Q71 36 68 38Q55 44 55 56T68 74Q71 76 363 76H655L663 86Q722 164 799 223L808 230H438L68 231Q56 236 56 250",8669:"76 230Q68 230 62 237T56 250Q56 257 63 264T91 291Q102 300 108 306L159 351Q168 356 177 351L218 316L303 239L353 195Q376 214 403 239L488 316L529 351Q538 356 546 351Q548 350 594 310L638 270H848L841 278Q813 309 792 344T763 396T755 416Q755 417 778 417H801Q817 367 856 323T943 250Q895 221 856 177T801 83H778Q755 83 755 84Q755 86 762 103T791 156T841 222L848 230H737Q625 230 622 232Q620 233 599 251T558 288L537 306Q537 305 451 228T362 149Q353 146 345 149Q341 150 255 227T169 306Q167 306 129 270Q123 265 115 257T102 245T93 237T84 232T76 230",8672:"292 419Q292 400 261 347T211 275H306H364Q400 275 411 271T422 250T411 230T366 225H306H211Q214 222 232 197T271 136T292 82Q292 71 285 68T262 64H250H241Q221 64 216 67T205 83Q186 127 153 167T78 230Q64 238 64 250Q64 258 69 263T82 272T106 288T139 318Q162 342 177 365T198 402T209 425T223 436Q224 437 252 437H258Q292 437 292 419ZM501 237T501 250T515 270H819Q834 262 834 250T819 230H515Q501 237 501 250ZM918 237T918 250T932 270H1236Q1251 262 1251 250T1236 230H932Q918 237 918 250",8674:"84 237T84 250T98 270H402Q417 262 417 250T402 230H98Q84 237 84 250ZM501 237T501 250T515 270H819Q834 262 834 250T819 230H515Q501 237 501 250ZM1022 417Q1022 437 1055 437H1067Q1090 437 1097 434T1109 417Q1128 373 1161 333T1236 270Q1251 261 1251 250Q1251 241 1244 236T1216 217T1175 182Q1149 155 1133 128T1109 85T1097 66Q1093 64 1065 64H1053Q1031 64 1025 72T1027 100Q1036 124 1049 147T1073 185T1091 210T1101 223L1103 225H1008H950Q914 225 903 229T892 250T903 270T948 275H1008H1103L1101 277Q1100 280 1091 291T1067 325T1039 374Q1022 408 1022 417",8704:"0 673Q0 684 7 689T20 694Q32 694 38 680T82 567L126 451H430L473 566Q483 593 494 622T512 668T519 685Q524 694 538 694Q556 692 556 674Q556 670 426 329T293 -15Q288 -22 278 -22T263 -15Q260 -11 131 328T0 673ZM414 410Q414 411 278 411T142 410L278 55L414 410",8705:"404 269Q412 269 418 267T428 261T435 253T441 245L444 240V172Q444 103 443 96Q440 81 431 65T403 27T344 -7T250 -21T156 -8T97 27T69 65T58 96Q56 103 56 413Q56 722 58 729Q74 822 215 845Q221 846 229 846H243Q282 846 290 845Q422 826 443 729Q444 722 444 653V586L442 583Q441 580 440 578T436 573T430 567T423 562T415 558T404 556Q377 556 367 583Q364 590 364 654V719Q363 721 360 726T355 733Q326 766 250 766H249Q235 766 219 765T174 752T137 719V107Q145 83 178 71T251 58H254Q340 58 364 107V172Q364 176 364 187T363 204Q363 269 404 269",8706:"202 508Q179 508 169 520T158 547Q158 557 164 577T185 624T230 675T301 710L333 715H345Q378 715 384 714Q447 703 489 661T549 568T566 457Q566 362 519 240T402 53Q321 -22 223 -22Q123 -22 73 56Q42 102 42 148V159Q42 276 129 370T322 465Q383 465 414 434T455 367L458 378Q478 461 478 515Q478 603 437 639T344 676Q266 676 223 612Q264 606 264 572Q264 547 246 528T202 508ZM430 306Q430 372 401 400T333 428Q270 428 222 382Q197 354 183 323T150 221Q132 149 132 116Q132 21 232 21Q244 21 250 22Q327 35 374 112Q389 137 409 196T430 306",8707:"56 661T56 674T70 694H487Q497 686 500 679V15Q497 10 487 1L279 0H70Q56 7 56 20T70 40H460V327H84Q70 334 70 347T84 367H460V654H70Q56 661 56 674",8709:"331 696Q335 708 339 722T345 744T350 759T357 769T367 772Q374 772 381 767T388 754Q388 746 377 712L366 673L378 661Q460 575 460 344Q460 281 456 234T432 126T373 27Q319 -22 250 -22Q214 -22 180 -7Q168 -3 168 -4L159 -33Q148 -71 142 -75Q138 -78 132 -78Q124 -78 118 -72T111 -60Q111 -52 122 -18L133 21L125 29Q39 111 39 344Q39 596 137 675Q187 716 251 716Q265 716 278 714T296 710T315 703T331 696ZM276 676Q264 679 246 679Q196 679 159 631Q134 597 128 536T121 356Q121 234 127 174T151 80L234 366Q253 430 275 506T308 618L318 654Q318 656 294 669L276 676ZM181 42Q207 16 250 16Q291 16 324 47Q354 78 366 136T378 356Q378 470 372 528T349 616L348 613Q348 611 264 326L181 42",8710:"51 0Q46 4 46 7Q46 9 215 357T388 709Q391 716 416 716Q439 716 444 709Q447 705 616 357T786 7Q786 4 781 0H51ZM507 344L384 596L137 92L383 91H630Q630 93 507 344",8711:"46 676Q46 679 51 683H781Q786 679 786 676Q786 674 617 326T444 -26Q439 -33 416 -33T388 -26Q385 -22 216 326T46 676ZM697 596Q697 597 445 597T193 596Q195 591 319 336T445 80L697 596",8712:"84 250Q84 372 166 450T360 539Q361 539 377 539T419 540T469 540H568Q583 532 583 520Q583 511 570 501L466 500Q355 499 329 494Q280 482 242 458T183 409T147 354T129 306T124 272V270H568Q583 262 583 250T568 230H124V228Q124 207 134 177T167 112T231 48T328 7Q355 1 466 0H570Q583 -10 583 -20Q583 -32 568 -40H471Q464 -40 446 -40T417 -41Q262 -41 172 45Q84 127 84 250",8713:"196 25Q84 109 84 250Q84 372 166 450T360 539Q361 539 375 539T413 540T460 540L547 707Q550 716 563 716Q570 716 575 712T581 703T583 696T505 540H568Q583 532 583 520Q583 511 570 501L484 500L366 270H568Q583 262 583 250T568 230H346L247 38Q284 16 328 7Q355 1 466 0H570Q583 -10 583 -20Q583 -32 568 -40H471Q464 -40 447 -40T419 -41Q304 -41 228 3Q117 -211 115 -212Q111 -215 104 -215T92 -212T86 -204T84 -197Q84 -190 89 -183L196 25ZM214 61L301 230H124V228Q124 196 147 147T214 61ZM321 270L440 500Q353 499 329 494Q280 482 242 458T183 409T147 354T129 306T124 272V270H321",8715:"83 520Q83 532 98 540H195Q202 540 220 540T249 541Q404 541 494 455Q582 374 582 250Q582 165 539 99T434 0T304 -39Q297 -40 195 -40H98Q83 -32 83 -20Q83 -10 96 0H200Q311 1 337 6Q369 14 401 28Q422 39 445 55Q484 85 508 127T537 191T542 228V230H98Q84 237 84 250T98 270H542V272Q542 280 539 295T527 336T497 391T445 445Q422 461 401 472Q386 479 374 483T347 491T325 495T298 498T273 499T239 500T200 500L96 501Q83 511 83 520",8717:"154 -1Q122 -1 112 3T102 26Q102 63 158 63H178Q192 64 206 65T228 66T240 68Q301 85 324 146L329 157H244Q158 157 153 161Q149 162 145 169T140 183Q140 201 158 215L167 221H256L344 223L349 237Q352 262 352 287Q352 308 351 315Q341 352 315 368T256 385Q231 385 206 376T166 356T149 346Q143 346 138 364T132 388Q132 396 147 406Q198 440 252 440Q291 440 318 435Q421 404 451 301Q456 288 456 248V234Q456 151 391 86Q330 25 240 3Q212 -1 154 -1",8719:"158 656Q147 684 131 694Q110 707 69 710H55V750H888V710H874Q840 708 820 698T795 678T786 656V-155Q798 -206 874 -210H888V-250H570V-210H584Q618 -208 638 -197T663 -178T673 -155V710H270V277L271 -155Q283 -206 359 -210H373V-250H55V-210H69Q103 -208 123 -197T148 -178T158 -155V656",8720:"158 656Q147 684 131 694Q110 707 69 710H55V750H373V710H359Q325 708 305 698T280 678T271 656L270 223V-210H673V656Q666 672 663 679T639 697T584 710H570V750H888V710H874Q840 708 820 698T795 678T786 656V-155Q798 -206 874 -210H888V-250H55V-210H69Q103 -208 123 -197T148 -178T158 -155V656",8721:"61 748Q64 750 489 750H913L954 640Q965 609 976 579T993 533T999 516H979L959 517Q936 579 886 621T777 682Q724 700 655 705T436 710H319Q183 710 183 709Q186 706 348 484T511 259Q517 250 513 244L490 216Q466 188 420 134T330 27L149 -187Q149 -188 362 -188Q388 -188 436 -188T506 -189Q679 -189 778 -162T936 -43Q946 -27 959 6H999L913 -249L489 -250Q65 -250 62 -248Q56 -246 56 -239Q56 -234 118 -161Q186 -81 245 -11L428 206Q428 207 242 462L57 717L56 728Q56 744 61 748",8722:"84 237T84 250T98 270H679Q694 262 694 250T679 230H98Q84 237 84 250",8723:"56 467T56 480T70 500H707Q722 492 722 480T707 460H409V187H707Q722 179 722 167Q722 154 707 147H409V0V-93Q409 -144 406 -155T389 -166Q376 -166 372 -155T368 -105Q368 -96 368 -62T369 -2V147H70Q56 154 56 167T70 187H369V460H70Q56 467 56 480",8724:"339 717Q339 739 354 752T388 766Q410 766 424 751T439 716T424 681T390 666Q369 666 354 681T339 717ZM57 237T57 250T71 270H369V425L370 581Q380 594 389 594Q402 594 409 579V270H707Q722 262 722 250T707 230H409V-79Q401 -93 391 -93H389H387Q375 -93 369 -79V230H71Q57 237 57 250",8725:"423 750Q432 750 438 744T444 730Q444 725 271 248T92 -240Q85 -250 75 -250Q68 -250 62 -245T56 -231Q56 -221 230 257T407 740Q411 750 423 750",8726:"56 731Q56 740 62 745T75 750Q85 750 92 740Q96 733 270 255T444 -231Q444 -239 438 -244T424 -250Q414 -250 407 -240Q404 -236 230 242T56 731",8727:"229 286Q216 420 216 436Q216 454 240 464Q241 464 245 464T251 465Q263 464 273 456T283 436Q283 419 277 356T270 286L328 328Q384 369 389 372T399 375Q412 375 423 365T435 338Q435 325 425 315Q420 312 357 282T289 250L355 219L425 184Q434 175 434 161Q434 146 425 136T401 125Q393 125 383 131T328 171L270 213Q283 79 283 63Q283 53 276 44T250 35Q231 35 224 44T216 63Q216 80 222 143T229 213L171 171Q115 130 110 127Q106 124 100 124Q87 124 76 134T64 161Q64 166 64 169T67 175T72 181T81 188T94 195T113 204T138 215T170 230T210 250L74 315Q65 324 65 338Q65 353 74 363T98 374Q106 374 116 368T171 328L229 286",8728:"55 251Q55 328 112 386T249 444T386 388T444 249Q444 171 388 113T250 55Q170 55 113 112T55 251ZM245 403Q188 403 142 361T96 250Q96 183 141 140T250 96Q284 96 313 109T354 135T375 160Q403 197 403 250Q403 313 360 358T245 403",8729:"55 251Q55 328 112 386T249 444T386 388T444 249Q444 171 388 113T250 55Q170 55 113 112T55 251",8730:"95 178Q89 178 81 186T72 200T103 230T169 280T207 309Q209 311 212 311H213Q219 311 227 294T281 177Q300 134 312 108L397 -77Q398 -77 501 136T707 565T814 786Q820 800 834 800Q841 800 846 794T853 782V776L620 293L385 -193Q381 -200 366 -200Q357 -200 354 -197Q352 -195 256 15L160 225L144 214Q129 202 113 190T95 178",8733:"56 124T56 216T107 375T238 442Q260 442 280 438T319 425T352 407T382 385T406 361T427 336T442 315T455 297T462 285L469 297Q555 442 679 442Q687 442 722 437V398H718Q710 400 694 400Q657 400 623 383T567 343T527 294T503 253T495 235Q495 231 520 192T554 143Q625 44 696 44Q717 44 719 46H722V-5Q695 -11 678 -11Q552 -11 457 141Q455 145 454 146L447 134Q362 -11 235 -11Q157 -11 107 56ZM93 213Q93 143 126 87T220 31Q258 31 292 48T349 88T389 137T413 178T421 196Q421 200 396 239T362 288Q322 345 288 366T213 387Q163 387 128 337T93 213",8734:"55 217Q55 305 111 373T254 442Q342 442 419 381Q457 350 493 303L507 284L514 294Q618 442 747 442Q833 442 888 374T944 214Q944 128 889 59T743 -11Q657 -11 580 50Q542 81 506 128L492 147L485 137Q381 -11 252 -11Q166 -11 111 57T55 217ZM907 217Q907 285 869 341T761 397Q740 397 720 392T682 378T648 359T619 335T594 310T574 285T559 263T548 246L543 238L574 198Q605 158 622 138T664 94T714 61T765 51Q827 51 867 100T907 217ZM92 214Q92 145 131 89T239 33Q357 33 456 193L425 233Q364 312 334 337Q285 380 233 380Q171 380 132 331T92 214",8736:"71 0L68 2Q65 3 63 5T58 11T55 20Q55 22 57 28Q67 43 346 361Q397 420 474 508Q595 648 616 671T647 694T661 688T666 674Q666 668 663 663Q662 662 627 622T524 503T390 350L120 41L386 40H653Q666 30 666 20Q666 8 651 0H71",8737:"71 0L68 2Q65 3 63 5T58 11T55 20Q55 22 57 28Q64 38 348 373T638 712Q644 714 646 714Q653 714 659 709T666 694V693Q666 687 633 647Q619 631 576 580Q528 524 495 485Q336 296 329 289Q328 288 348 264T395 182T433 54L434 40H651Q666 32 666 20T651 0H436Q431 -20 416 -20Q400 -20 396 -4V0H71ZM394 40Q394 51 389 76T366 149T319 234L302 256L119 41L256 40H394",8738:"666 -32Q666 -51 646 -51Q639 -51 365 85L75 228Q55 238 55 250Q55 257 59 262T68 268L72 270L611 536Q642 551 647 551T659 547T666 532Q666 521 657 515L525 449Q525 448 535 424T556 352T566 250T556 148T536 77T525 51L657 -15Q666 -21 666 -32ZM526 250Q526 297 517 342T499 409T488 431Q487 431 304 341T121 250T304 159T488 69Q526 143 526 250",8739:"139 -249H137Q125 -249 119 -235V251L120 737Q130 750 139 750Q152 750 159 735V-235Q151 -249 141 -249H139",8740:"118 737Q131 750 138 750L151 746L158 739V579L160 421L213 470Q269 519 276 519Q284 519 290 513T296 499V498Q296 493 291 488T244 445Q225 428 213 417L158 368V-239Q143 -252 136 -252L124 -248L120 -241L118 44V328L62 279Q4 231 0 230Q-8 230 -14 236T-20 250Q-20 257 -11 265T62 332L118 384V737",8741:"133 736Q138 750 153 750Q164 750 170 739Q172 735 172 250T170 -239Q164 -250 152 -250Q144 -250 138 -244L137 -243Q133 -241 133 -179T132 250Q132 731 133 736ZM329 739Q334 750 346 750Q353 750 361 744L362 743Q366 741 366 679T367 250T367 -178T362 -243L361 -244Q355 -250 347 -250Q335 -250 329 -239Q327 -235 327 250T329 739",8742:"131 737Q134 739 138 743T144 748T151 750T171 737V199L327 357V737Q340 750 347 750Q351 750 353 749T360 743T367 737V397L429 457Q493 518 498 519Q506 519 512 512T518 500Q518 489 442 417L367 339V-237Q352 -250 346 -250L333 -243L327 -237V301L171 143V-237Q156 -250 151 -250T131 -237V101L69 41Q24 -3 15 -12T0 -21Q-8 -21 -14 -14T-20 -2Q-20 5 -7 19T56 81L131 159V737",8743:"318 591Q325 598 333 598Q344 598 348 591Q349 590 414 445T545 151T611 -4Q609 -22 591 -22Q588 -22 586 -21T581 -20T577 -17T575 -13T572 -9T570 -4L333 528L96 -4Q87 -20 80 -21Q78 -22 75 -22Q57 -22 55 -4Q55 2 120 150T251 444T318 591",8744:"55 580Q56 587 61 592T75 598Q86 598 96 580L333 48L570 580Q579 596 586 597Q588 598 591 598Q609 598 611 580Q611 574 546 426T415 132T348 -15Q343 -22 333 -22T318 -15Q317 -14 252 131T121 425T55 580",8745:"88 -21T75 -21T55 -7V200Q55 231 55 280Q56 414 60 428Q61 430 61 431Q77 500 152 549T332 598Q443 598 522 544T610 405Q611 399 611 194V-7Q604 -22 591 -22Q582 -22 572 -9L570 405Q563 433 556 449T529 485Q498 519 445 538T334 558Q251 558 179 518T96 401Q95 396 95 193V-7Q88 -21 75 -21",8746:"591 598H592Q604 598 611 583V376Q611 345 611 296Q610 162 606 148Q605 146 605 145Q586 68 507 23T333 -22Q268 -22 209 -1T106 66T56 173Q55 180 55 384L56 585Q66 598 75 598Q85 598 95 585V378L96 172L98 162Q112 95 181 57T332 18Q415 18 487 58T570 175Q571 180 571 383V583Q579 598 591 598",8747:"151 -112Q151 -150 106 -161Q106 -165 114 -172T134 -179Q155 -179 170 -146Q181 -120 188 -64T206 101T232 310Q256 472 277 567Q308 716 392 716Q434 716 453 681T472 613Q472 590 458 577T424 564Q404 564 390 578T376 612Q376 650 421 661Q421 663 418 667T407 675T393 679Q387 679 380 675Q360 665 350 619T326 438Q302 190 253 -57Q235 -147 201 -186Q174 -213 138 -216Q93 -216 74 -181T55 -113Q55 -91 69 -78T103 -64Q123 -64 137 -78T151 -112",8748:"113 -244Q113 -246 119 -251T139 -263T167 -269Q186 -269 199 -260Q220 -247 232 -218T251 -133T262 -15T276 155T297 367Q300 390 305 438T314 512T325 580T340 647T361 703T390 751T428 784T479 804Q481 804 488 804T501 805Q552 802 581 769T610 695Q610 669 594 657T561 645Q542 645 527 658T512 694Q512 705 516 714T526 729T538 737T548 742L552 743Q552 745 545 751T525 762T498 768Q475 768 460 756T434 716T418 652T407 559T398 444T387 300T369 133Q349 -38 337 -102T303 -207Q256 -306 169 -306Q119 -306 87 -272T55 -196Q55 -170 71 -158T104 -146Q123 -146 138 -159T153 -195Q153 -206 149 -215T139 -230T127 -238T117 -242L113 -244ZM460 -244Q460 -246 466 -251T486 -263T514 -269Q532 -269 546 -260Q567 -247 579 -218T598 -133T609 -15T623 155T644 367Q647 390 652 438T661 512T672 580T687 647T708 703T737 751T775 784T826 804Q828 804 835 804T848 805Q899 802 928 769T957 695Q957 669 941 657T908 645Q889 645 874 658T859 694Q859 705 863 714T873 729T885 737T895 742L899 743Q899 745 892 751T872 762T845 768Q822 768 807 756T781 716T765 652T754 559T745 444T734 300T716 133Q696 -38 684 -102T650 -207Q603 -306 516 -306Q466 -306 434 -272T402 -196Q402 -170 418 -158T451 -146Q470 -146 485 -159T500 -195Q500 -206 496 -215T486 -230T474 -238T464 -242L460 -244",8749:"113 -244Q113 -246 119 -251T139 -263T167 -269Q186 -269 199 -260Q220 -247 232 -218T251 -133T262 -15T276 155T297 367Q300 390 305 438T314 512T325 580T340 647T361 703T390 751T428 784T479 804Q481 804 488 804T501 805Q552 802 581 769T610 695Q610 669 594 657T561 645Q542 645 527 658T512 694Q512 705 516 714T526 729T538 737T548 742L552 743Q552 745 545 751T525 762T498 768Q475 768 460 756T434 716T418 652T407 559T398 444T387 300T369 133Q349 -38 337 -102T303 -207Q256 -306 169 -306Q119 -306 87 -272T55 -196Q55 -170 71 -158T104 -146Q123 -146 138 -159T153 -195Q153 -206 149 -215T139 -230T127 -238T117 -242L113 -244ZM460 -244Q460 -246 466 -251T486 -263T514 -269Q532 -269 546 -260Q567 -247 579 -218T598 -133T609 -15T623 155T644 367Q647 390 652 438T661 512T672 580T687 647T708 703T737 751T775 784T826 804Q828 804 835 804T848 805Q899 802 928 769T957 695Q957 669 941 657T908 645Q889 645 874 658T859 694Q859 705 863 714T873 729T885 737T895 742L899 743Q899 745 892 751T872 762T845 768Q822 768 807 756T781 716T765 652T754 559T745 444T734 300T716 133Q696 -38 684 -102T650 -207Q603 -306 516 -306Q466 -306 434 -272T402 -196Q402 -170 418 -158T451 -146Q470 -146 485 -159T500 -195Q500 -206 496 -215T486 -230T474 -238T464 -242L460 -244ZM807 -244Q807 -246 813 -251T833 -263T861 -269Q880 -269 893 -260Q914 -247 926 -218T945 -133T956 -15T970 155T991 367Q994 390 999 438T1008 512T1019 580T1034 647T1055 703T1084 751T1122 784T1173 804Q1175 804 1182 804T1195 805Q1246 802 1275 769T1304 695Q1304 669 1288 657T1255 645Q1236 645 1221 658T1206 694Q1206 705 1210 714T1220 729T1232 737T1242 742L1246 743Q1246 745 1239 751T1219 762T1192 768Q1169 768 1154 756T1128 716T1112 652T1101 559T1092 444T1081 300T1063 133Q1043 -38 1031 -102T997 -207Q950 -306 863 -306Q813 -306 781 -272T749 -196Q749 -170 765 -158T798 -146Q817 -146 832 -159T847 -195Q847 -206 843 -215T833 -230T821 -238T811 -242L807 -244",8750:"269 74L256 80Q244 85 227 97T191 128T161 179T148 250Q148 332 199 379T302 433L306 434L307 444Q309 456 313 495T321 553T331 607T345 664T365 712T393 756T431 785T479 804Q481 804 488 804T501 805Q552 802 581 769T610 695Q610 669 594 657T561 645Q542 645 527 658T512 694Q512 705 516 714T526 729T538 737T548 742L552 743Q552 745 545 751T525 762T498 768Q471 768 454 752T427 693T414 626T406 536Q405 530 405 527L397 425L404 422Q410 419 421 413T445 399T470 376T494 345T511 303T518 250Q518 205 502 169T460 112T410 80T364 66L360 65L359 55Q357 38 353 4T346 -43T340 -81T333 -118T326 -148T316 -179T303 -207Q256 -306 169 -306Q119 -306 87 -272T55 -196Q55 -170 71 -158T104 -146Q123 -146 138 -159T153 -195Q153 -206 149 -215T139 -230T127 -238T117 -242L113 -244Q113 -246 119 -251T139 -263T167 -269Q186 -269 199 -260Q231 -241 242 -183T266 33L269 74ZM272 122Q272 156 300 391Q300 392 299 392Q287 392 263 379T213 331T187 249Q187 211 205 180T239 137T272 116V122ZM366 107Q378 107 402 119T453 167T479 249Q479 340 394 383V377Q394 375 394 374T393 371T393 366T392 357T391 342T389 321T386 291T382 251T377 199T369 133Q366 112 366 107",8756:"273 411Q273 437 291 454T334 471Q358 471 375 454T393 411T376 368T333 351Q307 351 290 368T273 411ZM84 38Q110 38 126 21T143 -22Q143 -46 127 -64T83 -82Q57 -82 41 -65T24 -22Q24 4 41 21T84 38ZM524 -22Q524 4 541 21T584 38Q608 38 625 21T643 -22Q643 -45 627 -63T583 -82Q557 -82 541 -65T524 -22",8757:"23 411Q23 437 41 454T84 471Q108 471 125 454T143 411T126 368T83 351Q57 351 40 368T23 411ZM523 411Q523 437 541 454T584 471Q608 471 625 454T643 411T626 368T583 351Q557 351 540 368T523 411ZM274 -22Q274 4 291 21T334 38Q356 38 374 22T392 -22T375 -65T333 -82Q307 -82 291 -65T274 -22",8764:"55 166Q55 241 101 304T222 367Q260 367 296 349T362 304T421 252T484 208T554 189Q616 189 655 236T694 338Q694 350 698 358T708 367Q722 367 722 334Q722 260 677 197T562 134H554Q517 134 481 152T414 196T355 248T292 293T223 311Q179 311 145 286Q109 257 96 218T80 156T69 133Q55 133 55 166",8765:"222 133Q147 133 102 197T56 335Q56 362 66 365Q71 369 77 364Q83 356 84 335T90 298Q102 254 137 222T223 189Q258 189 292 206T355 250T413 301T477 346T550 367Q628 367 673 309T722 171Q722 133 708 133Q703 133 699 141T694 162Q694 220 655 265T555 311Q519 311 485 293T421 248T363 196T298 152T222 133",8768:"55 569Q55 583 83 583Q122 583 151 565T194 519T215 464T222 411Q222 360 194 304T139 193T111 89Q111 38 134 -7T195 -55Q222 -57 222 -69Q222 -83 189 -83Q130 -83 93 -33T55 90Q55 130 72 174T110 252T148 328T166 411Q166 462 144 507T83 555Q55 556 55 569",8769:"220 366Q258 366 297 347T361 308T391 288Q394 288 464 370Q494 407 510 425T535 454T546 465T552 467H553Q560 467 566 461T573 448Q573 439 499 350Q424 266 424 261Q424 259 442 247T492 222T554 209Q607 209 646 243Q671 268 680 295T690 341T702 366Q719 366 719 314Q716 265 695 226Q682 199 664 179Q614 132 555 132Q517 132 477 151T412 190T383 210T347 172T278 89T233 37Q228 32 220 32Q210 32 206 38T201 48Q201 57 266 137Q272 144 275 148Q351 231 351 237Q351 239 333 251T283 276T221 289Q159 289 123 248T86 166Q86 156 82 145T73 132Q55 132 55 172Q55 220 79 272Q95 301 111 319Q161 366 220 366",8770:"55 439T55 443T56 449T62 456T68 463H706Q720 449 720 443T706 423H68Q55 439 55 443ZM56 72Q56 112 73 152T130 225T224 257Q259 257 294 240T360 199T419 149T484 107T553 90Q603 90 643 125T691 223Q693 257 704 257Q717 257 717 221Q717 147 671 91T554 34Q517 34 481 51T414 93T355 142T291 184T222 201Q172 201 131 167T84 67Q81 34 71 34Q56 37 56 72",8771:"55 283Q55 356 103 409T217 463Q262 463 297 447T395 382Q431 355 446 344T493 320T554 307H558Q613 307 652 344T694 433Q694 464 708 464T722 432Q722 356 673 304T564 251H554Q510 251 465 275T387 329T310 382T223 407H219Q164 407 122 367Q91 333 85 295T76 253T69 250Q55 250 55 283ZM56 56Q56 71 72 76H706Q722 70 722 56Q722 44 707 36H70Q56 43 56 56",8773:"55 388Q55 463 101 526T222 589Q260 589 296 571T362 526T421 474T484 430T554 411Q616 411 655 458T694 560Q694 572 698 580T708 589Q722 589 722 556Q722 482 677 419T562 356H554Q517 356 481 374T414 418T355 471T292 515T223 533Q179 533 145 508Q109 479 96 440T80 378T69 355Q55 355 55 388ZM56 236Q56 249 70 256H707Q722 248 722 236Q722 225 708 217L390 216H72Q56 221 56 236ZM56 42Q56 57 72 62H708Q722 52 722 42Q722 30 707 22H70Q56 29 56 42",8775:"55 417Q55 479 101 528T222 578Q259 578 294 564T393 507Q413 493 434 480T469 460T484 454L537 549Q587 639 595 647Q600 652 607 652Q615 652 621 647T628 634Q628 625 575 536Q524 446 524 443Q527 440 555 440Q603 440 644 469T691 547Q694 578 706 578T718 556Q718 555 718 551T717 545Q717 488 684 445T595 387Q582 384 558 384Q530 384 508 389L493 394L404 238L557 236H708Q720 224 720 217T706 196H379L291 43L499 41H708Q720 29 720 21T706 1H268L226 -71Q186 -143 179 -148Q173 -155 165 -155T152 -150T146 -137Q146 -133 184 -64L222 1H144L66 3L59 7Q54 14 54 20Q54 29 66 41H246L333 194Q333 196 202 196H68Q55 211 55 218T66 236H213L357 238L457 409L437 421Q432 423 393 450T307 500T222 523Q171 523 129 491T84 414Q82 383 70 383Q55 383 55 417",8776:"55 319Q55 360 72 393T114 444T163 472T205 482Q207 482 213 482T223 483Q262 483 296 468T393 413L443 381Q502 346 553 346Q609 346 649 375T694 454Q694 465 698 474T708 483Q722 483 722 452Q722 386 675 338T555 289Q514 289 468 310T388 357T308 404T224 426Q164 426 125 393T83 318Q81 289 69 289Q55 289 55 319ZM55 85Q55 126 72 159T114 210T163 238T205 248Q207 248 213 248T223 249Q262 249 296 234T393 179L443 147Q502 112 553 112Q609 112 649 141T694 220Q694 249 708 249T722 217Q722 153 675 104T555 55Q514 55 468 76T388 123T308 170T224 192Q164 192 125 159T83 84Q80 55 69 55Q55 55 55 85",8778:"220 523Q163 523 124 486T84 412Q81 383 69 383Q56 383 56 413Q56 441 67 470Q78 508 111 537T187 575Q203 579 219 579Q248 579 271 572Q304 565 393 508Q498 439 551 439Q620 439 662 486Q688 512 693 557Q693 565 697 572T707 579Q719 579 719 548Q719 483 673 434T550 384Q512 384 467 405T386 453T305 501T220 523ZM222 288Q164 288 124 251T84 177Q81 148 69 148Q56 148 56 178Q56 206 67 235Q78 274 111 302T187 339Q198 343 220 343Q244 343 259 341T308 322T393 272Q496 203 553 203Q612 203 651 241T691 312Q693 343 705 343Q719 343 719 313Q719 245 673 199Q626 148 552 148Q513 148 467 170T385 218T304 266T222 288ZM51 -19Q51 -6 62 -1H387Q713 -1 715 -3Q725 -10 725 -20Q725 -27 718 -34Q714 -38 672 -38T387 -39H62Q51 -25 51 -19",8781:"55 464Q55 471 60 477T74 484Q80 484 108 464T172 420T268 376T389 356Q436 356 483 368T566 399T630 436T675 467T695 482Q701 484 703 484Q711 484 716 478T722 464Q722 454 707 442Q550 316 389 316Q338 316 286 329T195 362T124 402T76 437T57 456Q55 462 55 464ZM57 45Q66 58 109 88T230 151T381 183Q438 183 494 168T587 135T658 94T703 61T720 45Q722 39 722 36Q722 28 717 22T703 16Q697 16 669 36T606 80T510 124T389 144Q341 144 294 132T211 101T147 64T102 33T82 18Q76 16 74 16Q66 16 61 22T55 36Q55 39 57 45",8782:"245 367Q251 415 288 453T392 492Q445 492 485 456T532 367H707Q722 359 722 347Q722 334 711 331T665 327H608H509Q500 332 498 336Q496 338 493 363T472 411Q443 451 389 451H387Q335 451 305 411Q290 392 287 374T282 344T268 327H72Q56 332 56 347Q56 360 70 367H245ZM56 153Q56 168 72 173H268Q277 168 279 164Q281 162 284 137T305 89Q334 49 389 49H391Q442 49 472 89Q487 108 490 126T495 156T509 173H608H666Q701 173 711 170T722 153T707 133H532Q526 81 486 45T389 8Q331 8 291 45T245 133H70Q56 140 56 153",8783:"245 367Q251 415 288 453T392 492Q445 492 485 456T532 367H707Q722 359 722 347Q722 334 711 331T665 327H608H509Q500 332 498 336Q496 338 493 363T472 411Q443 451 389 451H387Q335 451 305 411Q290 392 287 374T282 344T268 327H72Q56 332 56 347Q56 360 70 367H245ZM56 153Q56 168 72 173H708Q722 163 722 153Q722 140 707 133H70Q56 140 56 153",8784:"56 347Q56 360 70 367H707Q722 359 722 347Q722 336 708 328L390 327H72Q56 332 56 347ZM56 153Q56 168 72 173H708Q722 163 722 153Q722 140 707 133H70Q56 140 56 153ZM329 610Q329 634 346 652T389 670Q413 670 431 654T450 611Q450 586 433 568T390 550T347 567T329 610",8785:"421 474T389 474T339 493T321 541Q321 566 337 587T391 609Q456 602 456 541Q456 512 439 493ZM56 347Q56 360 70 367H707Q722 359 722 347Q722 336 708 328L390 327H72Q56 332 56 347ZM56 153Q56 168 72 173H708Q722 163 722 153Q722 140 707 133H70Q56 140 56 153ZM421 -108T389 -108T339 -89T321 -41Q321 -16 337 5T391 27Q456 20 456 -41Q456 -70 439 -89",8786:"15 541Q15 569 33 585T75 601T117 585T135 541Q135 514 118 498T75 481T32 498T15 541ZM56 347Q56 360 70 367H707Q722 359 722 347Q722 336 708 328L390 327H72Q56 332 56 347ZM56 153Q56 168 72 173H708Q722 163 722 153Q722 140 707 133H70Q56 140 56 153ZM642 -41Q642 -17 658 0T702 18Q726 18 744 3T762 -41Q762 -67 745 -84T702 -101Q676 -101 659 -85T642 -41",8787:"642 541Q642 569 660 585T702 601T744 585T762 541Q762 515 745 498T702 481Q676 481 659 497T642 541ZM56 347Q56 360 70 367H707Q722 359 722 347Q722 336 708 328L390 327H72Q56 332 56 347ZM56 153Q56 168 72 173H708Q722 163 722 153Q722 140 707 133H70Q56 140 56 153ZM14 -41Q14 -15 31 1T74 18Q101 18 118 0T135 -41Q135 -64 118 -83T75 -102Q51 -102 33 -85T14 -41",8790:"56 347Q56 360 70 367H707Q722 359 722 347Q722 334 711 331T658 327H586H465L472 318Q496 288 496 250T472 182L465 173H586H663Q700 173 711 170T722 153T707 133H70Q56 140 56 153Q56 168 72 173H312L305 182Q281 212 281 250T305 318L312 327H72Q56 332 56 347ZM473 250Q473 265 472 273T460 297T428 327H349Q328 313 318 298T306 273T304 250Q304 235 305 227T317 203T349 173H428Q449 187 459 202T471 227T473 250",8791:"279 612Q279 656 310 688T388 721Q433 721 465 689T498 612Q498 573 470 538T389 503Q336 503 308 538T279 612ZM458 614Q458 637 452 651T433 672T411 679T383 680T352 675T333 664T324 647T321 629T320 611Q320 593 321 584T332 562T359 545Q366 543 389 543H391Q406 543 414 544T435 552T452 573T458 614ZM56 347Q56 360 70 367H707Q722 359 722 347Q722 336 708 328L390 327H72Q56 332 56 347ZM56 153Q56 168 72 173H708Q722 163 722 153Q722 140 707 133H70Q56 140 56 153",8796:"192 482H190Q187 483 185 484T181 488T177 493T175 501Q175 506 178 512Q184 523 278 687T375 853Q379 857 383 857Q385 857 387 858T390 859Q397 859 403 853Q405 851 499 687T600 512Q603 506 603 501Q603 488 587 482H192ZM548 523L389 798Q388 798 309 661T230 523T389 522T548 523ZM56 347Q56 360 70 367H708Q723 359 723 347Q723 336 709 328L390 327H72Q56 332 56 347ZM56 153Q56 168 72 173H709Q723 163 723 153Q723 140 708 133H70Q56 140 56 153",8800:"166 -215T159 -215T147 -212T141 -204T139 -197Q139 -190 144 -183L306 133H70Q56 140 56 153Q56 168 72 173H327L406 327H72Q56 332 56 347Q56 360 70 367H426Q597 702 602 707Q605 716 618 716Q625 716 630 712T636 703T638 696Q638 692 471 367H707Q722 359 722 347Q722 336 708 328L451 327L371 173H708Q722 163 722 153Q722 140 707 133H351Q175 -210 170 -212Q166 -215 159 -215",8801:"56 444Q56 457 70 464H707Q722 456 722 444Q722 430 706 424H72Q56 429 56 444ZM56 237T56 250T70 270H707Q722 262 722 250T707 230H70Q56 237 56 250ZM56 56Q56 71 72 76H706Q722 70 722 56Q722 44 707 36H70Q56 43 56 56",8804:"674 636Q682 636 688 630T694 615T687 601Q686 600 417 472L151 346L399 228Q687 92 691 87Q694 81 694 76Q694 58 676 56H670L382 192Q92 329 90 331Q83 336 83 348Q84 359 96 365Q104 369 382 500T665 634Q669 636 674 636ZM84 -118Q84 -108 99 -98H678Q694 -104 694 -118Q694 -130 679 -138H98Q84 -131 84 -118",8805:"83 616Q83 624 89 630T99 636Q107 636 253 568T543 431T687 361Q694 356 694 346T687 331Q685 329 395 192L107 56H101Q83 58 83 76Q83 77 83 79Q82 86 98 95Q117 105 248 167Q326 204 378 228L626 346L360 472Q291 505 200 548Q112 589 98 597T83 616ZM84 -118Q84 -108 99 -98H678Q694 -104 694 -118Q694 -130 679 -138H98Q84 -131 84 -118",8806:"674 753Q682 753 688 747T694 732T687 718Q686 717 417 589L151 463L399 345Q687 209 691 204Q694 198 694 193Q694 175 676 173H670L382 309Q92 446 90 448Q83 453 83 465Q84 476 96 482Q104 486 382 617T665 751Q669 753 674 753ZM84 39Q84 49 99 59H678Q694 53 694 39Q694 26 679 19H98Q84 26 84 39ZM83 -157Q83 -153 84 -150T86 -145T89 -141T92 -139T96 -137T99 -135H678Q694 -146 694 -155Q694 -168 679 -175H98Q84 -168 83 -157",8807:"83 733Q83 741 89 747T99 753Q107 753 253 685T543 548T687 478Q694 473 694 463T687 448Q685 446 395 309L107 173H101Q83 175 83 193Q83 194 83 196Q82 203 98 212Q117 222 248 284Q326 321 378 345L626 463L360 589Q291 622 200 665Q112 706 98 714T83 733ZM84 39Q84 49 99 59H678Q694 53 694 39Q694 26 679 19H98Q84 26 84 39ZM83 -157Q83 -153 84 -150T86 -145T89 -141T92 -139T96 -137T99 -135H678Q694 -146 694 -155Q694 -168 679 -175H98Q84 -168 83 -157",8808:"86 472Q93 477 381 614T673 752Q680 752 686 746T693 732T689 721Q686 715 418 590L151 461L418 332Q684 207 689 201Q693 195 693 190Q693 183 687 177T675 170Q668 170 380 307T86 450Q82 454 82 461Q82 467 86 472ZM82 33Q82 37 83 40T89 47T95 54H473L520 105Q569 156 571 156Q573 157 578 157Q586 157 592 151T598 136Q598 130 562 92L526 56L604 54H682Q693 43 693 35Q693 31 692 28T686 21T680 14H489L342 -139L513 -142H682Q693 -148 693 -160Q693 -167 680 -182H304L258 -230Q248 -240 237 -251T221 -268T211 -278T203 -284T197 -286Q189 -286 184 -280T178 -264Q178 -257 213 -219L249 -182H171L93 -179L86 -175Q82 -170 82 -163Q82 -155 95 -142H289L360 -64L433 14H262L93 16Q82 23 82 33",8809:"89 745Q95 752 100 752Q106 752 394 615T689 472Q693 468 693 461T689 450Q684 445 396 308T100 170Q95 170 89 176T82 190Q82 195 86 201Q91 208 358 332L624 461L358 590Q90 715 86 721Q82 725 82 731Q82 739 89 745ZM82 33Q82 37 83 40T89 47T95 54H473L520 105Q569 156 571 156Q573 157 578 157Q586 157 592 151T598 136Q598 130 562 92L526 56L604 54H682Q693 43 693 35Q693 31 692 28T686 21T680 14H489L342 -139L513 -142H682Q693 -148 693 -160Q693 -167 680 -182H304L258 -230Q248 -240 237 -251T221 -268T211 -278T203 -284T197 -286Q189 -286 184 -280T178 -264Q178 -257 213 -219L249 -182H171L93 -179L86 -175Q82 -170 82 -163Q82 -155 95 -142H289L360 -64L433 14H262L93 16Q82 23 82 33",8810:"639 -48Q639 -54 634 -60T619 -67H618Q612 -67 536 -26Q430 33 329 88Q61 235 59 239Q56 243 56 250T59 261Q62 266 336 415T615 567L619 568Q622 567 625 567Q639 562 639 548Q639 540 633 534Q632 532 374 391L117 250L374 109Q632 -32 633 -34Q639 -40 639 -48ZM944 -48Q944 -54 939 -60T924 -67H923Q917 -67 841 -26Q735 33 634 88Q366 235 364 239Q361 243 361 250T364 261Q367 266 641 415T920 567L924 568Q927 567 930 567Q944 562 944 548Q944 540 938 534Q937 532 679 391L422 250L679 109Q937 -32 938 -34Q944 -40 944 -48",8811:"55 539T55 547T60 561T74 567Q81 567 207 498Q297 449 365 412Q633 265 636 261Q639 255 639 250Q639 241 626 232Q614 224 365 88Q83 -65 79 -66Q76 -67 73 -67Q65 -67 60 -61T55 -47Q55 -39 61 -33Q62 -33 95 -15T193 39T320 109L321 110H322L323 111H324L325 112L326 113H327L329 114H330L331 115H332L333 116L334 117H335L336 118H337L338 119H339L340 120L341 121H342L343 122H344L345 123H346L347 124L348 125H349L351 126H352L353 127H354L355 128L356 129H357L358 130H359L360 131H361L362 132L363 133H364L365 134H366L367 135H368L369 136H370L371 137L372 138H373L374 139H375L376 140L378 141L576 251Q63 530 62 533Q55 539 55 547ZM360 539T360 547T365 561T379 567Q386 567 512 498Q602 449 670 412Q938 265 941 261Q944 255 944 250Q944 241 931 232Q919 224 670 88Q388 -65 384 -66Q381 -67 378 -67Q370 -67 365 -61T360 -47Q360 -39 366 -33Q367 -33 400 -15T498 39T625 109L626 110H627L628 111H629L630 112L631 113H632L634 114H635L636 115H637L638 116L639 117H640L641 118H642L643 119H644L645 120L646 121H647L648 122H649L650 123H651L652 124L653 125H654L656 126H657L658 127H659L660 128L661 129H662L663 130H664L665 131H666L667 132L668 133H669L670 134H671L672 135H673L674 136H675L676 137L677 138H678L679 139H680L681 140L683 141L881 251Q368 530 367 533Q360 539 360 547",8812:"104 730Q104 749 123 749Q130 749 138 745Q186 717 237 671L250 659L261 670Q297 703 332 726T375 750T389 744T395 730Q395 721 390 717T364 699T322 668Q290 641 283 632Q280 628 281 627T293 612Q425 454 425 250Q425 144 388 51T293 -112Q282 -125 281 -126T283 -132Q306 -162 379 -209Q395 -219 395 -230Q395 -238 389 -244T375 -250T335 -228T262 -171L250 -159L238 -170Q202 -203 167 -226T124 -250T110 -244T104 -230Q104 -219 121 -209Q199 -156 216 -132Q219 -128 218 -127T206 -112Q74 46 74 250T206 612Q217 625 218 626T216 632Q199 656 121 709Q104 719 104 730ZM249 -94Q364 61 364 250Q364 430 265 574Q253 590 249 594L242 583Q134 439 134 250Q134 114 192 -1Q212 -44 242 -83L249 -94",8814:"693 -14T693 -20T687 -33T675 -41Q667 -41 506 37L344 112Q342 112 262 -46Q184 -196 176 -205Q172 -209 168 -209T162 -208Q155 -208 151 -203T146 -190Q146 -178 171 -137Q193 -91 251 21L306 132L198 183Q142 208 118 220T88 238T82 249Q82 253 86 261Q92 267 278 357L464 443L529 572Q561 637 577 667T597 703T607 708Q615 708 622 702T629 688Q629 680 575 579L524 474Q524 473 545 482T598 508Q666 541 673 541T686 535T693 521Q693 512 679 504T589 459L493 414L360 150Q366 148 378 142T431 116T529 70Q686 -8 689 -10Q693 -14 693 -20ZM380 277L433 383Q432 385 292 319T151 250T237 209T324 170L380 277",8815:"82 514T82 520T89 533T100 541Q106 541 271 463Q434 386 435 386L515 543Q593 699 600 706Q604 708 607 708Q615 708 622 702T629 688T549 526Q509 445 491 407T473 368Q522 343 580 317Q636 291 660 278T688 261T693 250V249Q693 241 681 234T580 184Q533 161 502 146Q317 59 315 59Q312 56 246 -74Q197 -170 186 -189T168 -209Q164 -209 162 -208Q155 -208 151 -203T146 -190Q146 -187 200 -79L253 28L218 11Q182 -6 144 -23T100 -41Q95 -41 89 -35T82 -21Q82 -12 96 -4T186 41L284 88L349 217Q377 273 395 311T413 350Q413 351 253 428Q101 498 86 510Q82 514 82 520ZM624 250Q461 330 455 330Q454 331 453 329T448 321T441 308T430 287T416 259T398 223L342 114L624 250",8816:"82 -124Q82 -120 83 -117T89 -110T95 -103H220L284 50Q346 204 344 206L218 268Q153 297 123 313T87 333T82 344T86 355Q104 369 291 455Q491 552 491 553L542 673Q581 767 590 784T609 801Q616 801 622 795T629 781Q629 773 586 677Q546 581 546 577L609 606Q669 635 673 635Q680 635 686 629T693 615Q693 610 692 608T670 593T604 561L524 521L400 226L542 157Q617 123 649 107T687 85T694 72Q694 66 690 60T679 54Q664 54 526 121Q513 127 495 136T464 150T438 162T416 173T399 180T388 185L384 186Q383 186 322 41L262 -103H680Q682 -105 684 -108T688 -113T691 -118T693 -124Q693 -134 682 -141L464 -143H246L213 -219Q182 -292 178 -299Q172 -303 166 -303T153 -297T146 -283Q146 -282 174 -213T202 -143H146L93 -141Q82 -134 82 -124ZM418 370L466 495Q464 495 308 420T151 344T204 317T311 267T364 244Q364 247 418 370",8817:"97 54Q82 54 82 72Q82 79 86 84Q95 91 222 153L351 215L398 324L442 433L258 519Q95 597 87 604Q82 608 82 615T88 628T102 635Q107 635 424 484L458 468L524 630Q593 789 597 795Q601 801 609 801Q616 801 622 795T629 781L562 615L493 450L589 406Q665 371 679 362T694 344Q694 339 693 337T677 326T631 302T538 257Q504 241 465 223T406 195T386 186Q384 185 322 39L262 -103H680Q682 -105 684 -108T688 -113T691 -118T693 -124Q693 -134 682 -141L464 -143H246L213 -219Q182 -292 178 -299Q172 -303 166 -303T153 -297T146 -283Q146 -282 174 -213T202 -143H146L93 -141Q82 -134 82 -124Q82 -120 83 -117T89 -110T95 -103H220L273 26Q326 156 326 157L218 106Q109 54 97 54ZM553 379Q480 412 480 415Q479 415 460 372T423 285T406 241Q408 240 516 291T624 344L553 379",8818:"674 732Q682 732 688 726T694 711T687 697Q686 696 417 568L151 442L399 324Q687 188 691 183Q694 177 694 172Q694 154 676 152H670L382 288Q92 425 90 427Q83 432 83 444Q84 455 96 461Q104 465 382 596T665 730Q669 732 674 732ZM56 -194Q56 -107 106 -51T222 6Q260 6 296 -12T362 -56T420 -108T483 -153T554 -171Q616 -171 654 -128T694 -29Q696 6 708 6Q722 6 722 -26Q722 -102 676 -164T557 -227Q518 -227 481 -209T415 -165T358 -113T294 -69T223 -51Q163 -51 125 -93T83 -196Q81 -228 69 -228Q56 -228 56 -202V-194",8819:"90 697Q83 704 83 712T88 726T99 732Q107 732 253 664T543 527T687 457Q694 452 694 442T687 427Q685 425 395 288L107 152H101Q83 154 83 172Q83 173 83 175Q82 182 98 191Q117 201 248 263Q326 300 378 324L626 442L360 568Q91 696 90 697ZM56 -194Q56 -107 106 -51T222 6Q260 6 296 -12T362 -56T420 -108T483 -153T554 -171Q616 -171 654 -128T694 -29Q696 6 708 6Q722 6 722 -26Q722 -102 676 -164T557 -227Q518 -227 481 -209T415 -165T358 -113T294 -69T223 -51Q163 -51 125 -93T83 -196Q81 -228 69 -228Q56 -228 56 -202V-194",8822:"734 181Q734 173 728 167T714 161Q711 161 386 280T54 404Q44 408 44 421Q44 432 52 437Q66 443 388 562T714 681Q721 681 727 675T734 661Q734 651 722 645Q711 639 462 546Q441 539 420 531L122 421L420 311L723 198Q734 192 734 181ZM44 247Q44 255 50 261T63 267Q66 267 391 148T723 24Q734 18 734 7T723 -10Q716 -14 391 -133T63 -253Q56 -253 50 -247T44 -233Q44 -223 55 -217Q67 -210 317 -118Q337 -110 357 -103L655 7L357 117L54 230Q44 236 44 247",8823:"83 661Q83 668 88 674T104 681Q111 679 396 560Q686 437 687 436Q694 431 694 421T687 406Q686 405 543 344T253 222T101 161Q83 163 83 180Q83 194 95 199Q96 199 130 213T232 257T361 311L621 421L357 532Q307 553 233 584Q121 631 102 640T83 661ZM673 267Q694 267 694 248Q694 237 687 232Q684 229 420 118L156 7L416 -103L683 -215Q694 -222 694 -233Q694 -251 676 -253Q670 -253 524 -192T235 -70T90 -8Q83 -1 83 7Q83 19 94 24Q97 25 378 144T667 266Q669 267 673 267",8826:"84 249Q84 262 91 266T117 270Q120 270 126 270T137 269Q388 273 512 333T653 512Q657 539 676 539Q685 538 689 532T694 520V515Q689 469 672 431T626 366T569 320T500 286T435 265T373 249Q379 248 404 242T440 233T477 221T533 199Q681 124 694 -17Q694 -41 674 -41Q658 -41 653 -17Q646 41 613 84T533 154T418 197T284 220T137 229H114Q104 229 98 230T88 235T84 249",8827:"84 517Q84 539 102 539Q115 539 119 529T125 503T137 459T171 404Q277 275 640 269H661Q694 269 694 249T661 229H640Q526 227 439 214T283 173T173 98T124 -17Q118 -41 103 -41Q83 -41 83 -17Q88 29 105 67T151 132T208 178T277 212T342 233T404 249Q401 250 380 254T345 263T302 276T245 299Q125 358 92 468Q84 502 84 517",8828:"112 270Q83 270 83 290Q83 301 94 307Q98 310 118 310Q516 310 620 464Q635 486 642 510T651 548T657 571T675 580Q693 577 693 559V552Q684 472 628 410T465 314Q436 303 372 290Q373 290 388 287T425 278T465 266Q674 199 693 28L694 17Q688 5 683 3Q677 0 673 0Q656 0 653 24Q623 270 118 270H112ZM110 116Q83 116 83 136T110 156H113Q134 156 160 155T231 146T318 128T407 95T489 44T550 -30T583 -131Q583 -153 563 -153Q556 -153 553 -152T547 -145T542 -127Q531 -54 478 0Q425 53 333 83T123 116H110",8829:"668 310Q694 310 694 290Q694 285 691 279Q684 271 664 270Q550 268 464 257T301 220T179 146T124 27Q119 0 103 0T83 16Q83 21 83 31T92 68T113 121T157 177T229 231Q295 268 405 290Q404 290 389 293T352 302T312 314Q138 371 96 500Q83 541 83 562Q83 568 89 574T103 580Q115 580 120 570T126 542T138 497T173 442Q289 310 659 310H668ZM194 -131Q201 -60 241 -6T343 82T477 133T628 155Q632 155 644 155T661 156Q685 155 690 147Q694 143 694 136Q694 132 693 129T689 124T685 120T681 117L656 116Q596 114 543 106T436 79T342 35T272 -33T235 -127Q231 -154 212 -154Q203 -153 199 -147T194 -136V-131",8830:"84 442Q84 455 91 459T117 463Q120 463 126 463T137 462Q388 466 512 526T653 705Q657 732 676 732Q685 731 689 725T694 714V708Q689 662 672 624T626 559T569 513T500 479T435 458T373 442Q379 441 404 435T440 426T477 414T533 392Q592 362 630 319T681 241T694 174Q694 153 674 153Q662 153 657 163T652 188T640 231T606 287Q500 416 137 422H114Q104 422 98 423T88 428T84 442ZM56 -194Q56 -107 106 -51T222 6Q260 6 296 -12T362 -56T420 -108T483 -153T554 -171Q616 -171 654 -128T694 -29Q696 6 708 6Q722 6 722 -26Q722 -102 676 -164T557 -227Q518 -227 481 -209T415 -165T358 -113T294 -69T223 -51Q163 -51 125 -93T83 -196Q81 -228 69 -228Q56 -228 56 -202V-194",8831:"84 710Q84 732 102 732Q115 732 119 722T125 696T137 652T171 597Q277 468 640 462H661Q694 462 694 442T661 422H640Q578 421 526 417T415 403T309 376T222 333T156 268T124 179Q122 162 118 158T103 153Q100 153 98 153T95 154T93 155T90 158T85 163Q83 167 83 176Q88 222 105 260T151 325T208 371T277 405T342 426T404 442Q401 443 380 447T345 456T302 469T245 492Q125 551 92 661Q84 695 84 710ZM56 -194Q56 -107 106 -51T222 6Q260 6 296 -12T362 -56T420 -108T483 -153T554 -171Q616 -171 654 -128T694 -29Q696 6 708 6Q722 6 722 -26Q722 -102 676 -164T557 -227Q518 -227 481 -209T415 -165T358 -113T294 -69T223 -51Q163 -51 125 -93T83 -196Q81 -228 69 -228Q56 -228 56 -202V-194",8832:"386 292Q388 292 439 393T543 598T598 703Q599 703 603 704T609 705Q616 705 622 699T629 685T533 494Q440 308 440 305Q451 310 462 312Q547 342 592 388T651 505Q654 525 658 532T673 539Q680 539 686 533T693 519Q693 495 678 450Q638 341 500 283Q433 259 418 259Q416 259 411 251T406 241T415 239Q482 224 544 190Q674 121 691 -10Q693 -28 691 -32Q684 -43 672 -43Q664 -43 658 -37Q656 -33 650 -6T634 47T589 109T500 168Q473 179 436 190T388 201H386L284 -1Q261 -45 232 -101T191 -181T178 -206Q176 -206 172 -207T166 -208Q160 -208 153 -202T146 -188Q146 -185 246 12Q344 206 344 210Q344 213 305 217T213 225T124 228H95Q82 241 82 248Q82 253 95 268H124Q172 268 236 273T343 283T386 292",8833:"103 -43Q96 -43 89 -39T82 -26L84 -10Q105 141 275 212Q342 236 355 236Q360 236 364 245L369 256H360Q284 280 275 283Q115 351 86 490Q82 507 82 517Q82 526 88 532T103 538Q110 538 115 534Q119 531 122 517T128 486T143 444T174 397T231 351T320 310Q371 292 389 292L491 496Q595 701 598 703Q599 703 603 704T609 705Q616 705 622 699T629 685Q629 684 531 485Q431 296 431 288Q431 278 520 273T651 268H680Q693 253 693 248Q693 241 680 228H651Q591 228 491 218T386 201L284 -1Q261 -45 232 -101T191 -181T178 -206Q176 -206 172 -207T166 -208Q160 -208 153 -202T146 -188Q146 -182 302 125L335 190L324 185Q313 185 289 172Q241 153 208 128T159 78T135 31T124 -11T118 -37Q112 -43 103 -43",8834:"84 250Q84 372 166 450T360 539Q361 539 370 539T395 539T430 540T475 540T524 540H679Q694 532 694 520Q694 511 681 501L522 500H470H441Q366 500 338 496T266 472Q244 461 224 446T179 404T139 337T124 250V245Q124 157 185 89Q244 25 328 7Q348 2 366 2T522 0H681Q694 -10 694 -20Q694 -32 679 -40H526Q510 -40 480 -40T434 -41Q350 -41 289 -25T172 45Q84 127 84 250",8835:"83 520Q83 532 98 540H251Q267 540 297 540T343 541Q427 541 488 525T605 455Q693 374 693 250Q693 165 650 99T545 0T415 -39Q407 -40 251 -40H98Q83 -32 83 -20Q83 -10 96 0H255H308H337Q412 0 439 4T512 28Q533 39 553 54T599 96T639 163T654 250Q654 341 592 411Q557 449 512 472Q468 491 439 495T335 500H306H255L96 501Q83 511 83 520",8838:"84 346Q84 468 166 546T360 635Q361 635 370 635T395 635T430 636T475 636T524 636H679Q694 628 694 616Q694 607 681 597L522 596H470H441Q366 596 338 592T266 568Q244 557 224 542T179 500T139 433T124 346V341Q124 253 185 185Q244 121 328 103Q348 98 366 98T522 96H681Q694 86 694 76Q694 64 679 56H526Q510 56 480 56T434 55Q350 55 289 71T172 141Q84 223 84 346ZM104 -131T104 -118T118 -98H679Q694 -106 694 -118T679 -138H118Q104 -131 104 -118",8839:"83 616Q83 628 98 636H251Q267 636 297 636T343 637Q427 637 488 621T605 551Q693 470 693 346Q693 261 650 195T545 96T415 57Q407 56 251 56H98Q83 64 83 76Q83 86 96 96H255H308H337Q412 96 439 100T512 124Q533 135 553 150T599 192T639 259T654 346Q654 437 592 507Q557 545 512 568Q468 587 439 591T335 596H306H255L96 597Q83 607 83 616ZM84 -131T84 -118T98 -98H659Q674 -106 674 -118T659 -138H98Q84 -131 84 -118",8840:"146 -283Q146 -282 174 -213T202 -143H115Q102 -127 102 -123T115 -103H220L291 68L278 73Q203 101 153 157T86 288Q83 309 83 344Q83 380 86 399Q107 480 160 539Q222 601 298 621Q328 630 345 631T435 635L526 637L560 715Q587 778 593 789T609 801Q616 801 622 795T629 781Q629 780 625 771T614 742T600 706L571 637Q571 635 626 635H680Q693 620 693 613T689 601L682 597L618 595H553L449 346Q425 288 399 223T359 127T346 95H356Q365 95 381 95T417 94T463 93T515 93H682Q693 82 693 74T680 53H511Q420 55 335 55L329 57L262 -103H680Q682 -105 684 -108T688 -113T691 -118T693 -124Q693 -134 682 -141L464 -143H246L213 -219Q182 -292 178 -299Q172 -303 166 -303T153 -297T146 -283ZM509 590Q509 595 438 595Q354 595 318 586Q246 567 195 516T126 395Q123 378 123 344T126 293Q141 229 184 181T291 110L306 104L406 346L509 590",8841:"82 606T82 613T95 635H251H348Q408 635 435 632T502 615L515 608L520 617Q520 619 558 708Q584 774 591 787T609 801Q616 801 622 795T629 781Q629 775 562 615L551 590L569 577Q646 527 678 437Q691 398 691 344T678 250Q653 182 597 132T469 64Q427 53 366 53H326L295 -25L262 -103H660Q673 -118 673 -124Q673 -129 669 -136L662 -141L453 -143H246L213 -219Q182 -292 178 -299Q172 -303 166 -303T153 -297T146 -283Q146 -282 174 -213T202 -143H95Q82 -128 82 -123T95 -103H220L251 -25L284 53H189L93 55L86 59Q82 64 82 71T95 93H302L400 333Q498 569 498 573L444 590Q431 593 260 595L93 597L86 601Q82 606 82 613ZM652 344V354Q652 451 575 521Q571 526 557 538T537 551Q534 551 533 548Q533 543 438 319L344 95L371 93H386Q487 93 557 150T649 293Q652 309 652 344",8842:"693 72Q693 68 692 66T686 59T680 52H524Q398 52 367 53T309 63Q236 82 180 132T98 250Q84 288 84 343Q84 397 98 437Q126 515 193 568T346 632Q347 632 373 633T440 634T520 635H680Q693 620 693 615Q693 608 680 595H526Q364 595 353 592Q279 582 221 539T138 430Q124 392 124 343Q124 296 138 257Q163 192 221 149T353 95Q364 92 526 92H680Q693 79 693 72ZM102 -132T102 -125T115 -103H382L420 -68Q429 -60 438 -52T452 -39T463 -28T472 -20T478 -14T483 -10T487 -7T490 -6T493 -5T496 -5Q502 -5 508 -12T515 -28Q515 -34 513 -37Q512 -38 507 -42T492 -55T475 -70L440 -101L562 -103H682Q693 -114 693 -122T680 -143H395L355 -179Q289 -241 280 -241Q273 -241 267 -235T260 -221T265 -208T300 -174L335 -143H224L113 -141L106 -137Q102 -132 102 -125",8843:"82 615Q82 620 95 635H251Q378 635 409 634T469 623Q540 605 596 555T678 437Q691 397 691 343T678 250Q649 172 581 119T426 55Q415 52 251 52H95Q93 55 89 59T84 65T82 72Q82 79 95 92H249Q411 92 422 95Q496 105 554 148T638 257Q651 296 651 343Q651 391 638 430Q613 495 555 538T422 592Q411 595 249 595H95Q82 608 82 615ZM82 -132T82 -125T95 -103H380L420 -57Q452 -21 460 -14T474 -6Q482 -6 488 -12T495 -25T451 -81L433 -101L549 -103H662Q673 -114 673 -122T660 -143H395L355 -190Q311 -239 309 -239Q305 -241 302 -241Q294 -241 287 -235T280 -221T324 -163L342 -143H218L93 -141L86 -137Q82 -132 82 -125",8846:"591 598H592Q604 598 611 583V376Q611 345 611 296Q610 162 606 148Q605 146 605 145Q586 68 507 23T333 -22Q268 -22 209 -1T106 66T56 173Q55 180 55 384L56 585Q66 598 75 598Q85 598 95 585V378L96 172L98 162Q112 95 181 57T332 18Q415 18 487 58T570 175Q571 180 571 383V583Q579 598 591 598ZM313 406Q313 417 313 435T312 459Q312 483 316 493T333 503T349 494T353 461V406V325H515Q516 325 519 323T527 316T531 305T527 294T520 287T515 285H353V204V152Q353 127 350 117T333 107T316 117T312 152Q312 158 312 175T313 204V285H151Q150 285 147 287T139 294T135 305T139 316T146 323T151 325H313V406",8847:"83 523Q87 535 99 539H679Q694 531 694 519Q694 506 679 499H123V-1H678Q694 -7 694 -21Q694 -34 679 -41H98Q93 -38 84 -28L83 247V523",8848:"64 506T64 519T78 539H699Q706 536 714 526V-28Q706 -38 699 -41H78Q64 -34 64 -21Q64 -6 80 -1H674V499H78Q64 506 64 519",8849:"94 620Q98 632 110 636H699Q714 628 714 616T699 596H134V96H698Q714 90 714 76Q714 64 699 56H109Q104 59 95 69L94 344V620ZM84 -118Q84 -103 100 -98H698Q714 -104 714 -118Q714 -130 699 -138H98Q84 -131 84 -118",8850:"64 603T64 616T78 636H668Q675 633 683 623V69Q675 59 668 56H78Q64 63 64 76Q64 91 80 96H643V596H78Q64 603 64 616ZM64 -118Q64 -108 79 -98H678Q694 -104 694 -118Q694 -130 679 -138H78Q64 -131 64 -118",8851:"83 0Q79 0 76 1T71 3T67 6T65 9T63 13T61 16V301L62 585Q70 595 76 598H592Q602 590 605 583V15Q598 2 587 0Q583 0 580 1T575 3T571 6T569 9T567 13T565 16V558H101V15Q94 2 83 0",8852:"77 0Q65 4 61 16V301L62 585Q72 598 81 598Q94 598 101 583V40H565V583Q573 598 585 598Q598 598 605 583V15Q602 10 592 1L335 0H77",8853:"56 250Q56 394 156 488T384 583Q530 583 626 485T722 250Q722 110 625 14T390 -83Q249 -83 153 14T56 250ZM364 542Q308 539 251 509T148 418T96 278V270H369V542H364ZM681 278Q675 338 650 386T592 462T522 509T458 535T412 542H409V270H681V278ZM96 222Q104 150 139 95T219 12T302 -29T366 -42H369V230H96V222ZM681 222V230H409V-42H412Q429 -42 456 -36T521 -10T590 37T649 113T681 222",8854:"56 250Q56 394 156 488T384 583Q530 583 626 485T722 250Q722 110 625 14T390 -83Q249 -83 153 14T56 250ZM681 278Q669 385 591 463T381 542Q283 542 196 471T96 278V270H681V278ZM275 -42T388 -42T585 32T681 222V230H96V222Q108 107 191 33",8855:"56 250Q56 394 156 488T384 583Q530 583 626 485T722 250Q722 110 625 14T390 -83Q249 -83 153 14T56 250ZM582 471Q531 510 496 523Q446 542 381 542Q324 542 272 519T196 471L389 278L485 375L582 471ZM167 442Q95 362 95 250Q95 137 167 58L359 250L167 442ZM610 58Q682 138 682 250Q682 363 610 442L418 250L610 58ZM196 29Q209 16 230 2T295 -27T388 -42Q409 -42 429 -40T465 -33T496 -23T522 -11T544 1T561 13T574 22T582 29L388 222L196 29",8856:"56 250Q56 394 156 488T384 583Q530 583 626 485T722 250Q722 110 625 14T390 -83Q249 -83 153 14T56 250ZM582 471Q581 472 571 480T556 491T539 502T517 514T491 525T460 534T424 539T381 542Q272 542 184 460T95 251Q95 198 113 150T149 80L167 58L582 471ZM388 -42Q513 -42 597 44T682 250Q682 363 610 442L196 29Q209 16 229 2T295 -27T388 -42",8857:"56 250Q56 394 156 488T384 583Q530 583 626 485T722 250Q722 110 625 14T390 -83Q249 -83 153 14T56 250ZM682 250Q682 322 649 387T546 497T381 542Q272 542 184 459T95 250Q95 132 178 45T389 -42Q515 -42 598 45T682 250ZM311 250Q311 285 332 304T375 328Q376 328 382 328T392 329Q424 326 445 305T466 250Q466 217 445 195T389 172Q354 172 333 195T311 250",8858:"57 250Q57 327 87 392T166 497T270 560T382 582H394Q512 582 610 500Q721 401 721 250Q721 112 626 15T389 -82Q251 -82 154 13T57 250ZM682 129T682 250T596 457T390 543Q269 543 183 457T96 250Q96 132 180 45T389 -43Q511 -43 596 43ZM250 250Q250 316 295 352T384 388Q451 388 489 347T528 250Q528 192 487 152T389 112Q331 112 291 152T250 250ZM488 250Q488 290 460 319T389 349Q348 349 319 320T290 250Q290 208 320 180T389 151Q431 151 459 181T488 250",8859:"57 250Q57 327 87 392T166 497T270 560T382 582H394Q512 582 610 500Q721 401 721 250Q721 112 626 15T389 -82Q251 -82 154 13T57 250ZM682 129T682 250T596 457T390 543Q269 543 183 457T96 250Q96 132 180 45T389 -43Q511 -43 596 43ZM204 339Q204 357 215 366T238 375Q247 375 283 348Q300 336 311 328L368 286Q369 286 366 323T359 398T355 437Q357 456 379 465Q380 465 384 465T391 466Q403 465 412 457T423 437Q423 436 420 398T413 323T410 286L467 328Q476 334 486 341T501 353T513 361T523 368T529 372T535 374T541 375Q554 375 564 365T575 339Q575 325 566 318T519 292Q504 285 496 281L430 250L496 219Q552 192 559 188T572 175Q575 168 575 161Q575 148 566 137T541 126H538Q530 126 499 149Q480 163 467 172L410 214Q409 214 412 177T419 102T423 63Q423 59 421 54T411 43T389 36T368 42T357 54T355 63Q355 64 358 102T365 177T368 214L311 172Q302 165 293 159T279 148T268 140T260 134T254 131T250 128T246 127T242 126T238 126Q223 126 214 135T204 161T213 183T282 219L348 250L282 281Q226 308 219 312T206 325Q204 330 204 339",8861:"57 250Q57 327 87 392T166 497T270 560T382 582H394Q512 582 610 500Q721 401 721 250Q721 112 626 15T389 -82Q251 -82 154 13T57 250ZM682 129T682 250T596 457T390 543Q269 543 183 457T96 250Q96 132 180 45T389 -43Q511 -43 596 43ZM223 250Q223 263 233 267T280 271Q289 271 325 271T389 270H490Q535 270 545 267T555 250Q555 241 549 235Q544 231 527 231T389 230Q239 230 235 232Q223 236 223 250",8862:"71 0Q59 4 55 16V346L56 676Q64 686 70 689H709Q719 681 722 674V15Q719 10 709 1L390 0H71ZM369 365V649H95V365H369ZM682 365V649H409V365H682ZM369 40V325H95V40H369ZM682 40V325H409V40H682",8863:"71 0Q59 4 55 16V346L56 676Q64 686 70 689H709Q719 681 722 674V15Q719 10 709 1L390 0H71ZM682 365V649H95V365H682ZM682 40V325H95V40H682",8864:"71 0Q59 4 55 16V346L56 676Q64 686 70 689H707Q714 686 722 676V13Q714 3 707 0H71ZM123 649Q147 625 214 555T335 430T389 374L654 649H123ZM95 70Q99 74 229 209T360 345L95 619V70ZM682 70V619L418 346Q417 344 549 207L682 70ZM654 41L400 304L388 315L123 41L256 40H522L654 41",8865:"71 0Q59 4 55 16V346L56 676Q64 686 70 689H709Q719 681 722 674V15Q719 10 709 1L390 0H71ZM682 40V649H95V40H682ZM330 345Q330 371 347 388T390 405Q412 405 430 389T448 345Q448 317 430 301T389 285T348 301T330 345",8866:"55 678Q55 679 56 681T58 684T61 688T65 691T70 693T77 694Q88 692 95 679V367H540Q555 359 555 347Q555 334 540 327H95V15Q88 2 77 0Q73 0 70 1T65 3T61 6T59 9T57 13T55 16V678",8867:"515 678Q515 679 516 681T518 684T521 688T525 691T530 693T537 694Q548 692 555 679V15Q548 2 537 0Q533 0 530 1T525 3T521 6T519 9T517 13T515 16V327H71Q70 327 67 329T59 336T55 347T59 358T66 365T71 367H515V678",8868:"55 642T55 648T59 659T66 666T71 668H708Q723 660 723 648T708 628H409V15Q402 2 391 0Q387 0 384 1T379 3T375 6T373 9T371 13T369 16V628H71Q70 628 67 630T59 637",8869:"369 652Q369 653 370 655T372 658T375 662T379 665T384 667T391 668Q402 666 409 653V40H708Q723 32 723 20T708 0H71Q70 0 67 2T59 9T55 20T59 31T66 38T71 40H369V652",8872:"139 -249H137Q125 -249 119 -235V251L120 737Q130 750 139 750Q152 750 159 735V367H796Q811 359 811 347Q811 336 797 328L479 327H161L159 328V172L161 173H797Q798 172 800 171T803 169T805 167T808 164T809 162T810 158T811 153Q811 140 796 133H159V-235Q151 -249 141 -249H139",8873:"55 678Q55 679 56 681T58 684T61 688T65 691T70 693T77 694Q88 692 95 679V15Q88 2 77 0Q73 0 70 1T65 3T61 6T59 9T57 13T55 16V678ZM249 678Q249 679 250 681T252 684T255 688T259 691T264 693T271 694Q282 692 289 679V367H651Q666 359 666 347Q666 334 651 327H289V15Q282 2 271 0Q267 0 264 1T259 3T255 6T253 9T251 13T249 16V678",8874:"55 678Q55 679 56 681T58 684T61 688T65 691T70 693T77 694Q88 692 95 679V15Q88 2 77 0Q73 0 70 1T65 3T61 6T59 9T57 13T55 16V678ZM237 678Q237 679 238 681T240 684T243 688T247 691T252 693T259 694Q270 692 277 679V15Q270 2 259 0Q255 0 252 1T247 3T243 6T241 9T239 13T237 16V678ZM419 678Q419 679 420 681T422 684T425 688T429 691T434 693T441 694Q452 692 459 679V367H818Q833 359 833 347Q833 334 818 327H459V15Q452 2 441 0Q437 0 434 1T429 3T425 6T423 9T421 13T419 16V678",8876:"56 681Q70 695 76 695T96 681V368H243L381 530Q521 692 525 692Q537 700 547 688Q554 682 554 674Q554 671 553 669T548 661T539 649T522 631T499 604T465 565T421 512Q296 373 296 368H416H476Q525 368 539 365T554 348Q554 334 543 328H261L96 141V12Q81 -1 75 -1Q65 -1 58 10L56 50V92L18 48Q7 37 -1 28T-13 14T-19 6T-23 1T-27 0T-33 -1Q-42 -1 -48 4T-55 19Q-55 24 -47 34T12 103L56 155V681ZM205 326Q205 328 152 328H96V263Q96 203 98 203Q99 203 123 231T174 290T205 326",8877:"56 681Q70 695 76 695T96 681V466H327L425 579Q522 692 527 692Q529 693 534 693Q542 693 547 688T553 674Q553 668 549 663Q549 662 538 650T504 611T463 563L381 468L461 466H543Q554 453 554 446T541 426H345L209 272L376 270H543Q554 257 554 251T541 230H174L96 141V12Q81 -1 75 -1Q65 -1 58 10L56 50V92L18 48Q7 37 -1 28T-13 14T-19 6T-23 1T-27 0T-33 -1Q-42 -1 -48 4T-55 19Q-55 24 -47 34T12 103L56 155V681ZM267 399L292 426H96V270H158L201 321Q256 382 267 399ZM118 228L119 229Q119 230 109 230H96V201L107 212Q118 227 118 228",8878:"56 681Q70 695 77 695T96 683V428L98 175L252 323V681Q264 695 272 695Q278 695 292 681V526Q292 368 296 368Q298 368 447 510Q638 695 642 695H645Q651 695 658 688T665 673Q665 666 661 661Q659 660 639 641T578 582T505 512L356 370L505 368H654Q665 357 665 349Q665 343 652 328H314L303 317L292 308V12Q289 10 285 6T279 1T272 -1Q265 -1 252 12V139Q252 266 249 266L96 119V12Q80 -1 76 -1T70 0T63 6T56 12V79L29 55Q-26 -1 -35 -1Q-42 -1 -48 5T-55 19Q-55 25 -51 30T-15 66Q5 86 18 99L56 135V681",8879:"56 681Q70 695 77 695T96 683V428L98 175L252 323V681Q264 695 272 695Q278 695 292 681V466H401L503 563L621 679Q637 695 645 695Q652 695 658 688T665 673Q665 670 663 666Q663 665 651 652T611 612T561 563L458 468L556 466H654Q665 455 665 447T652 426H416L294 308L292 288V270H652Q665 255 665 250T652 230H292V12Q289 10 285 6T279 1T272 -1Q265 -1 252 12V139Q252 266 249 266L96 119V12Q80 -1 76 -1T70 0T63 6T56 12V79L29 55Q-26 -1 -35 -1Q-42 -1 -48 5T-55 19Q-55 25 -51 30T-15 66Q5 86 18 99L56 135V681ZM358 426H292V361L325 392L358 426",8882:"694 -26Q686 -40 676 -41H670L382 95Q92 232 90 234Q83 239 83 249Q83 262 96 267Q101 270 379 401T665 537Q671 539 674 539Q686 539 694 524V-26ZM654 11T654 249T653 487T402 369T151 249L275 190Q399 131 524 72T652 11Q654 11 654 249",8883:"83 523Q83 524 85 527T92 535T103 539Q107 539 389 406T680 268Q694 260 694 249Q694 239 687 234Q685 232 395 95L107 -41H101Q90 -40 83 -26V523ZM376 368Q323 393 254 425T155 472L125 487Q123 487 123 249T125 11Q127 12 252 71T502 190L626 249L376 368",8884:"694 71Q686 58 676 56H670L382 192Q92 329 90 331Q83 336 83 346Q83 359 96 364Q101 367 379 498T665 634Q671 636 674 636Q686 636 694 621V71ZM654 108T654 346T653 584T402 466T151 346L275 287Q399 228 524 169T652 108Q654 108 654 346ZM83 -120Q83 -116 84 -113T86 -108T89 -104T92 -102T96 -100T99 -98H678Q679 -98 681 -99T684 -101T688 -104T691 -108T693 -113T694 -120Q692 -130 679 -138H98Q84 -130 83 -120",8885:"83 620Q83 621 85 624T92 632T103 636Q107 636 389 503T680 365Q694 357 694 346Q694 336 687 331Q685 329 395 192L107 56H101Q90 58 83 71V620ZM376 465Q323 490 254 522T155 570L125 584Q123 584 123 346T125 108Q127 109 252 168T502 287L626 346L376 465ZM83 -120Q83 -116 84 -113T86 -108T89 -104T92 -102T96 -100T99 -98H678Q679 -98 681 -99T684 -101T688 -104T691 -108T693 -113T694 -120Q692 -130 679 -138H98Q84 -130 83 -120",8888:"1055 250Q1055 190 1012 141T896 92Q858 92 828 106T781 140T755 180T741 214L738 228V230H405Q71 230 68 232Q55 238 55 250T68 268Q71 270 405 270H738V272L740 280Q742 287 745 297T754 321T771 348T796 374T832 396T881 408H891Q969 408 1012 360T1055 250ZM896 132Q948 132 981 166T1014 250Q1014 301 985 330T920 367Q914 368 891 368Q853 368 816 338T778 250Q778 198 812 165T896 132",8890:"318 -182Q302 -212 280 -212H278H275Q249 -212 239 -182L238 84V351H162L87 352Q57 362 57 391T84 429Q89 431 280 431H470L474 429Q477 427 479 426T484 423T490 417T495 410T499 402T500 391Q500 365 470 352L394 351H318V-182",8891:"56 697Q56 706 62 711T75 716Q86 716 90 709Q91 708 104 680T147 592T199 483L305 261L411 483Q443 548 481 629Q512 694 518 705T535 716Q543 716 549 710T555 700Q555 693 501 577T388 340T325 210Q316 194 305 194Q292 194 285 210Q282 219 224 339T111 574T56 697ZM55 14T55 20T59 31T66 38T71 40H540Q555 32 555 20T540 0H71Q70 0 67 2T59 9",8892:"55 698Q56 708 70 716H540Q554 708 555 698Q555 694 554 691T552 686T549 682T546 680T542 678T539 676H71Q70 676 68 677T65 679T61 682T58 686T56 691T55 698ZM555 18Q554 12 549 6T536 0H535Q525 0 515 17T459 132Q430 194 410 235L305 455L199 233Q176 185 147 125T105 36T90 7Q85 0 75 0Q63 0 58 11Q55 15 55 21Q58 31 170 266T285 507Q295 522 305 522T320 515Q322 513 439 268L555 24V18",8896:"119 -249T97 -249T65 -235T55 -207Q55 -201 56 -198Q58 -190 218 268T380 729Q392 750 416 750Q438 750 451 732Q453 728 534 498T695 36L775 -194Q777 -204 777 -208Q777 -222 767 -235T735 -249Q713 -249 700 -231Q696 -225 557 177L416 579L276 177Q136 -226 132 -231Q119 -249 97 -249",8897:"55 708Q55 729 68 739T96 750Q119 750 132 731Q136 726 276 323L416 -79L557 323Q696 725 700 731Q713 749 735 749Q756 749 766 736T777 708Q777 700 696 466T533 1T451 -232Q436 -249 416 -249Q402 -249 391 -241Q384 -236 380 -226Q368 -198 219 230Q55 697 55 708",8898:"139 -217Q127 -241 114 -246Q106 -249 97 -249Q67 -249 57 -220Q55 -214 55 102Q55 152 55 221T54 312Q54 422 60 464T91 554Q120 612 165 654T257 714T337 741T392 749Q393 750 402 750Q414 750 422 749Q557 749 660 659T776 430Q777 422 777 102Q777 -214 775 -220Q765 -249 735 -249Q716 -249 708 -241T694 -217L692 428L690 441Q674 540 597 603T416 666H409Q388 666 364 662T294 638T212 581Q156 523 142 441L140 428L139 105V-217",8899:"96 750Q103 750 109 748T120 744T127 737T133 730T137 723T139 718V395L140 73L142 60Q159 -43 237 -104T416 -166Q521 -166 597 -103T690 60L692 73L694 718Q708 749 735 749Q765 749 775 720Q777 714 777 398Q777 78 776 71Q766 -51 680 -140Q571 -249 416 -249H411Q261 -249 152 -140Q66 -51 56 71Q55 78 55 398Q55 714 57 720Q60 734 70 740Q80 750 96 750",8900:"242 486Q245 488 250 488Q256 488 258 486Q262 484 373 373T486 258T488 250T486 242T373 127T258 14Q256 12 250 12Q245 12 242 14Q237 16 127 126T14 242Q12 245 12 250T14 258Q16 263 126 373T242 486ZM439 250L250 439L61 250L250 61L439 250",8901:"78 250Q78 274 95 292T138 310Q162 310 180 294T199 251Q199 226 182 208T139 190T96 207T78 250",8902:"210 282Q210 284 225 381T241 480Q241 484 245 484Q249 486 251 486Q258 486 260 477T272 406Q275 390 276 380Q290 286 290 282L388 299Q484 314 487 314H488Q497 314 497 302Q497 297 434 266Q416 257 404 251L315 206L361 118Q372 98 383 75T401 40L407 28Q407 16 395 16Q394 16 392 16L390 17L250 159L110 17L108 16Q106 16 105 16Q93 16 93 28L99 40Q105 52 116 75T139 118L185 206L96 251Q6 296 4 300Q3 301 3 302Q3 314 12 314H13Q16 314 112 299L210 282",8903:"366 543Q374 545 382 545Q405 545 419 538Q429 534 443 521T462 496Q466 478 466 467Q466 438 444 412Q422 390 388 390Q352 390 331 412Q311 434 311 467Q311 499 331 518Q345 533 366 543ZM146 472Q146 479 153 485T166 492Q171 492 187 476T279 385L386 278L495 385Q600 492 608 492Q615 492 621 486T628 472Q628 467 614 452T531 367L435 270H706Q720 256 720 250Q720 241 706 230H435L531 132Q600 63 614 48T628 27Q628 20 622 14T608 7Q600 7 495 114L386 221L279 114Q204 39 188 23T166 7Q159 7 153 13T146 27Q146 32 160 47T244 132L339 230H68Q55 243 55 250Q55 255 68 270H339L244 367Q175 436 161 451T146 472ZM466 34Q466 4 447 -20T388 -44Q353 -44 331 -22Q311 1 311 34Q311 66 331 85Q347 101 366 110Q374 112 382 112Q405 112 419 105Q429 100 443 87T462 63Q466 45 466 34",8904:"833 50T833 250T832 450T659 351T487 250T658 150T832 50Q833 50 833 250ZM873 10Q866 -5 854 -5Q851 -5 845 -3L449 226L260 115Q51 -5 43 -5Q39 -5 35 -1T28 7L26 11V489Q33 505 43 505Q51 505 260 385L449 274L845 503Q851 505 853 505Q866 505 873 490V10ZM412 250L67 450Q66 450 66 250T67 50Q69 51 240 150T412 250",8905:"146 479Q159 492 166 492Q171 492 189 475T279 386L386 279L495 386Q598 492 608 492Q615 492 621 486T628 472Q628 464 522 357L415 250L522 144Q628 37 628 28Q628 21 622 15T608 8Q599 8 495 115L386 221L279 115Q204 40 188 24T166 8Q162 8 160 9T153 15T146 21V479ZM186 77L359 250L186 424V77",8906:"146 472Q146 479 152 485T166 492Q171 492 189 475T279 386L386 279L495 386Q598 492 608 492Q615 492 628 479V21Q615 8 608 8Q599 8 495 115L386 221L279 115Q204 40 188 24T166 8Q159 8 153 14T146 28Q146 37 253 144L359 250L253 357Q146 464 146 472ZM588 77V424L499 337L415 250L588 77",8907:"55 674Q55 682 62 688T76 694H77Q83 694 100 677T208 561Q320 440 410 342Q462 286 541 201Q677 55 699 30T722 -2Q722 -9 716 -15T701 -22T688 -17Q687 -15 542 141T394 301L388 306L240 146Q119 15 101 -3T75 -22T61 -16T55 -2Q55 4 67 19T158 117Q190 151 209 172L361 336L209 500Q62 657 57 667Q55 671 55 674",8908:"84 -22T76 -22T62 -16T55 -2Q55 4 78 30T249 215Q321 293 367 342Q672 672 683 682Q695 694 702 694Q710 694 716 688T722 674Q722 668 710 653T619 555Q587 521 568 500L416 336L568 172Q715 15 720 5Q722 1 722 -2Q722 -9 716 -15T702 -22H700Q693 -22 671 1T537 146L389 306Q387 304 340 253T237 143T135 33L89 -17Q84 -22 76 -22",8909:"56 433Q56 464 71 464Q74 464 77 461Q82 454 82 438T91 397T123 347Q166 307 222 307Q264 307 308 331T386 385T465 438T556 463Q631 463 676 408T722 283Q722 250 708 250Q704 250 699 257Q695 265 693 286T682 330Q670 350 655 367Q612 407 556 407Q514 407 470 383T393 329T314 276T222 251Q148 251 102 306T56 433ZM57 56Q57 71 73 76H706Q722 70 722 56Q722 44 707 36H71Q57 43 57 56",8910:"83 558Q83 566 89 572T104 578Q108 578 116 577T146 570T190 555T239 526T286 480Q308 453 325 420T351 358T367 304T376 265T380 251T381 253Q381 262 395 312Q428 434 492 499T642 576Q654 578 655 578Q664 578 670 572T676 558Q676 543 657 540T599 524T525 476Q406 362 400 29V8Q400 -21 380 -21Q369 -21 362 -11Q360 -7 360 12Q360 115 348 200T308 360T231 480T111 537Q83 540 83 558",8911:"104 -22Q95 -22 89 -16T83 -2Q83 11 98 16T135 23T192 46T256 103Q360 233 360 549Q360 554 360 557T361 563T362 567T364 569T367 572T371 576Q377 578 380 578Q401 578 401 547Q401 543 401 537T400 527Q409 53 648 19Q676 16 676 -2Q676 -10 670 -16T655 -22Q654 -22 642 -20Q556 -9 492 56T395 244Q381 294 381 303Q381 305 380 305T374 275T352 201T310 110T234 27T117 -20Q105 -22 104 -22",8912:"84 250Q84 372 166 450T360 539Q361 539 370 539T395 539T430 540T475 540T524 540H679Q694 532 694 520Q694 511 681 501L522 500H470H441Q366 500 338 496T266 472Q244 461 224 446T179 404T139 337T124 250V245Q124 157 185 89Q244 25 328 7Q348 2 366 2T522 0H681Q694 -10 694 -20Q694 -32 679 -40H526Q510 -40 480 -40T434 -41Q350 -41 289 -25T172 45Q84 127 84 250ZM694 134Q694 123 679 114H425H384Q350 114 326 121T277 154Q238 193 238 251Q238 322 295 361Q318 378 339 382T412 387Q423 387 459 387T520 386H679Q694 377 694 366Q694 354 679 346H519Q493 346 458 346T411 347Q360 347 341 342T303 315Q278 287 278 250Q278 210 301 187T351 156Q358 154 519 154H679Q694 146 694 134",8913:"83 520Q83 532 98 540H251Q267 540 297 540T343 541Q427 541 488 525T605 455Q693 374 693 250Q693 165 650 99T545 0T415 -39Q407 -40 251 -40H98Q83 -32 83 -20Q83 -10 96 0H255H308H337Q412 0 439 4T512 28Q533 39 553 54T599 96T639 163T654 250Q654 341 592 411Q557 449 512 472Q468 491 439 495T335 500H306H255L96 501Q83 511 83 520ZM83 366Q83 376 96 386H244Q280 386 317 386T378 386L402 387Q456 387 498 348T540 250Q540 203 512 168T446 120Q427 114 353 114H99Q84 120 84 134Q84 147 98 154H258Q284 154 319 154T366 153Q416 153 436 158T474 185Q500 214 500 250Q500 290 477 313T426 344Q419 346 258 346H98Q83 354 83 366",8914:"88 -21T75 -21T55 -7V200Q55 231 55 280Q56 414 60 428Q61 430 61 431Q77 500 152 549T332 598Q443 598 522 544T610 405Q611 399 611 194V-7Q604 -22 591 -22Q582 -22 572 -9L570 405Q563 433 556 449T529 485Q498 519 445 538T334 558Q251 558 179 518T96 401Q95 396 95 193V-7Q88 -21 75 -21ZM229 -21H227Q215 -21 209 -7V166Q209 304 209 327T215 363Q226 398 259 421T333 444Q380 444 414 416T455 347Q457 339 457 166V-7Q449 -21 439 -21H437H435Q423 -21 417 -7V164Q417 303 417 325T411 358Q387 403 333 403T255 358Q250 347 250 325T249 164V-7Q241 -21 231 -21H229",8915:"591 598H592Q604 598 611 583V376Q611 345 611 296Q610 162 606 148Q605 146 605 145Q586 68 507 23T333 -22Q268 -22 209 -1T106 66T56 173Q55 180 55 384L56 585Q66 598 75 598Q85 598 95 585V378L96 172L98 162Q112 95 181 57T332 18Q415 18 487 58T570 175Q571 180 571 383V583Q579 598 591 598ZM437 598Q450 598 457 583V410Q457 237 455 229Q448 189 414 161T333 132Q291 132 255 157T211 230Q209 237 209 412L210 585Q220 598 229 598Q242 598 249 583V412Q249 273 249 251T255 218Q279 173 333 173T411 218Q416 229 416 251T417 412V583Q425 598 437 598",8916:"76 -22Q64 -22 56 -7V176L57 360L59 370Q66 401 83 426T123 468T171 495T221 513T265 522T298 527L311 528H314V625L315 723Q325 736 334 736Q346 736 354 721V528H356L368 527Q380 526 399 523T441 515T490 498T537 472T578 433T606 379Q611 359 611 171V-7Q604 -21 591 -21T571 -7V170Q571 313 571 337T565 375Q555 408 526 432T461 467T402 482T365 487H354V-7Q347 -21 334 -21T314 -7V487H303Q251 484 207 467Q121 438 99 367L97 357L96 174V-9Q86 -22 76 -22",8918:"86 261Q92 267 381 404T673 541Q680 541 686 535T693 521T689 510Q684 504 418 379L151 250L418 121Q686 -4 689 -10Q693 -14 693 -21T687 -34T675 -41Q668 -41 380 96T86 239Q82 244 82 250Q82 257 86 261ZM610 250Q610 224 592 198T531 172Q498 172 475 195Q453 214 453 250Q453 308 513 328Q515 330 535 330Q569 328 589 304T610 250",8919:"82 521Q82 529 89 535T100 541Q107 541 395 404T689 261Q693 257 693 250T689 239Q684 234 396 97T100 -41Q95 -41 89 -35T82 -21Q82 -12 96 -4Q118 9 358 121L624 250L358 379Q91 503 86 510Q82 514 82 521ZM165 250Q165 282 188 306T239 330Q262 330 275 323Q303 312 318 283Q322 272 322 250Q322 213 300 195Q277 172 246 172Q224 172 213 177Q165 200 165 250",8920:"639 -48Q639 -54 634 -60T619 -67H618Q612 -67 536 -26Q430 33 329 88Q61 235 59 239Q56 243 56 250T59 261Q62 266 336 415T615 567L619 568Q622 567 625 567Q639 562 639 548Q639 540 633 534Q632 532 374 391L117 250L374 109Q632 -32 633 -34Q639 -40 639 -48ZM958 -48Q958 -54 953 -60T938 -67H937Q931 -67 855 -26Q749 33 648 88Q380 235 378 239Q375 243 375 250T378 261Q381 266 655 415T934 567L938 568Q941 567 944 567Q958 562 958 548Q958 540 952 534Q951 532 693 391L436 250L693 109Q951 -32 952 -34Q958 -40 958 -48ZM1277 -48Q1277 -54 1272 -60T1257 -67H1256Q1250 -67 1174 -26Q1068 33 967 88Q699 235 697 239Q694 243 694 250T697 261Q700 266 974 415T1253 567L1257 568Q1260 567 1263 567Q1277 562 1277 548Q1277 540 1271 534Q1270 532 1012 391L755 250L1012 109Q1270 -32 1271 -34Q1277 -40 1277 -48",8921:"75 -67Q65 -67 60 -61T55 -48Q55 -40 61 -34Q62 -32 329 109L595 250L329 391Q62 532 61 534Q55 540 55 548Q55 562 69 567H77Q81 567 222 493T506 342T653 264Q667 250 653 236Q649 234 504 157T220 7T77 -67H75ZM364 547Q364 563 381 567L384 568Q387 568 518 499T795 353T955 269Q967 261 967 250T955 231Q925 216 780 139T513 -3T383 -67Q373 -67 369 -60T364 -47Q364 -40 370 -34Q373 -31 639 109L904 250L639 391Q373 531 370 534Q364 540 364 547ZM674 538T674 548T681 562T693 567Q699 567 816 505Q915 453 993 412Q1050 382 1132 339Q1241 282 1259 271T1277 250Q1277 241 1263 232Q1246 221 985 84Q698 -67 692 -67Q674 -67 674 -47Q674 -38 680 -33Q683 -30 947 109L1213 250L947 391Q683 530 680 533Q674 538 674 548",8922:"674 445Q674 438 669 432T655 425T369 531T90 640Q83 645 83 655Q83 668 95 673Q644 886 654 886Q662 886 668 880T674 866Q674 856 663 850Q649 843 411 751L160 655L407 560Q474 534 561 501Q646 469 660 462T674 445ZM84 250Q84 260 99 270H658Q674 264 674 250Q674 238 659 230H98Q84 237 84 250ZM83 55Q83 68 94 73Q98 76 104 76Q108 75 383 -30T664 -138Q674 -144 674 -155Q674 -165 667 -170Q664 -173 385 -279T104 -386Q85 -386 83 -368Q83 -354 92 -349Q93 -349 347 -251L597 -155L346 -59Q296 -40 223 -12Q118 28 101 36T83 55",8923:"111 425T102 425T88 431T83 445V446Q83 455 96 461Q111 469 203 504Q287 536 350 560L597 655L346 751Q94 848 92 850Q83 856 83 866Q83 873 88 879T104 886Q109 885 386 779T667 670Q674 665 674 655T667 640Q665 638 388 532ZM84 250Q84 260 99 270H658Q674 264 674 250Q674 238 659 230H98Q84 237 84 250ZM653 76Q656 76 660 75T669 68T674 56Q674 46 665 40Q663 38 411 -59L160 -155L410 -251Q664 -349 665 -349Q674 -354 674 -368Q672 -386 654 -386Q650 -386 371 -279T90 -170Q83 -165 83 -155Q83 -144 93 -138Q645 76 653 76",8926:"113 424Q83 424 83 444Q83 453 96 464H121Q181 466 234 474T341 501T435 545T505 613T542 707Q545 734 564 734Q583 731 583 714Q583 658 560 613T500 538T414 486T321 453T229 434T156 426T113 424ZM112 270Q83 270 83 290Q83 301 94 307Q98 310 118 310Q624 310 653 556Q657 580 675 580Q693 577 693 559V552Q684 472 628 410T465 314Q436 303 372 290Q373 290 388 287T425 278T465 266Q674 199 693 28L694 17L692 14Q691 11 689 8T683 3T673 0Q657 0 653 24Q623 270 118 270H112",8927:"195 713Q195 725 201 729T214 734Q227 734 231 722T238 691T255 641T299 580Q405 474 656 464H681Q694 451 694 443Q694 424 670 424H664Q535 424 415 465T235 595Q195 657 195 713ZM668 310Q694 310 694 290Q694 285 691 279Q684 271 664 270Q550 268 464 257T301 220T179 146T124 27Q119 0 103 0T83 16Q83 21 83 31T92 68T113 121T157 177T229 231Q295 268 405 290Q404 290 389 293T352 302T312 314Q138 371 96 500Q83 541 83 562Q83 568 89 574T103 580Q115 580 120 570T126 542T138 497T173 442Q289 310 659 310H668",8928:"82 344Q82 349 95 364H124Q266 364 398 390L429 397L509 595Q519 619 536 659Q581 766 590 783T609 801Q616 801 622 795T629 781Q629 776 553 595Q533 548 516 506T489 439T480 415Q482 415 505 426T538 444Q632 498 651 601Q654 621 658 628T673 635Q680 635 686 629T693 615Q693 591 678 546Q636 433 484 375L458 364L451 348Q443 332 443 329T455 324Q480 316 503 307T560 277T619 233T664 170T691 86Q693 68 691 64Q684 53 672 53Q664 53 658 59Q657 60 650 97T617 174T538 244Q515 257 476 273T428 289Q425 289 412 256Q381 179 344 90L262 -103H680Q682 -105 684 -108T688 -113T691 -118T693 -124Q693 -134 682 -141L464 -143H246L213 -219Q182 -292 178 -299Q172 -303 166 -303T153 -297T146 -283Q146 -282 174 -213T202 -143H95Q82 -128 82 -123T95 -103H220L302 97Q384 288 384 299Q384 302 341 308T235 319T124 324H95Q82 337 82 344ZM399 338Q403 338 406 346L409 353L375 344Q375 343 384 341T399 338",8929:"146 -283Q146 -282 174 -213T202 -143H95Q82 -127 82 -123T95 -103H220L300 93Q343 196 374 270Q385 294 386 299L373 295Q331 287 289 268Q241 249 208 224T159 174T135 127T124 85T118 59Q112 53 103 53Q91 53 84 64Q82 68 84 86Q96 185 174 248T375 337L400 344Q399 344 381 348T351 355T316 364T276 379T235 398T193 424T155 456T122 497T98 546Q82 587 82 615Q82 622 88 628T102 635Q112 635 116 628T124 601Q128 579 134 562T159 515T207 463T290 418T415 384L422 381L506 586Q571 744 584 772T609 801Q616 801 622 795T629 781T544 577Q525 529 504 478T473 402T462 375Q480 373 500 373Q579 364 651 364H680Q682 361 686 357T691 351T693 344Q693 337 680 324H651Q553 324 451 310L433 308L349 104L262 -101L473 -103H682Q694 -115 694 -123Q694 -133 682 -141L464 -143H246L213 -219Q182 -292 178 -299Q172 -303 166 -303T153 -297T146 -283",8934:"86 450Q93 455 380 592T673 730Q680 730 686 724T693 710Q693 702 688 699Q686 693 417 568L151 439L417 310Q685 185 688 179Q693 176 693 168Q693 161 687 155T675 148Q668 148 380 285T86 428Q74 438 86 450ZM55 -205Q55 -175 64 -142T92 -76T145 -22T222 -1Q288 -1 362 -66Q369 -72 372 -75T378 -79T382 -81T384 -79Q389 -74 439 21Q483 100 490 111T504 122Q510 122 518 118T526 103Q526 101 510 69T467 -12T419 -99L413 -112L433 -128Q498 -180 553 -180Q605 -180 646 -139Q672 -112 681 -77T693 -21T706 -1Q719 -1 719 -33Q719 -39 717 -57Q708 -141 655 -190Q625 -224 586 -232Q568 -237 551 -237Q487 -237 413 -172L391 -155Q391 -157 335 -255Q297 -325 286 -342T268 -359Q260 -359 254 -353T248 -339T304 -230L359 -126Q359 -124 337 -107T302 -81Q262 -57 221 -57Q170 -57 130 -93T84 -201Q82 -236 70 -236Q55 -236 55 -205",8935:"88 723Q95 730 99 730Q106 730 394 593T688 450Q693 447 693 439T688 428Q683 423 395 286T99 148Q94 148 88 155T82 168Q82 175 86 179Q89 184 357 310L624 439L357 568Q88 694 86 699Q81 703 81 711T88 723ZM55 -205Q55 -175 64 -142T92 -76T145 -22T222 -1Q288 -1 362 -66Q369 -72 372 -75T378 -79T382 -81T384 -79Q389 -74 439 21Q483 100 490 111T504 122Q510 122 518 118T526 103Q526 101 510 69T467 -12T419 -99L413 -112L433 -128Q498 -180 553 -180Q605 -180 646 -139Q672 -112 681 -77T693 -21T706 -1Q719 -1 719 -33Q719 -39 717 -57Q708 -141 655 -190Q625 -224 586 -232Q568 -237 551 -237Q487 -237 413 -172L391 -155Q391 -157 335 -255Q297 -325 286 -342T268 -359Q260 -359 254 -353T248 -339T304 -230L359 -126Q359 -124 337 -107T302 -81Q262 -57 221 -57Q170 -57 130 -93T84 -201Q82 -236 70 -236Q55 -236 55 -205",8936:"95 419Q81 433 81 439T95 459H124Q318 459 455 501Q515 521 556 550T615 607T641 659T652 702T659 725Q667 730 673 730Q680 730 686 724T693 710Q693 682 677 641Q668 616 654 594T622 554T586 522T545 497T504 477T464 462T428 452T397 444T375 439Q379 437 410 430T476 411T551 379T625 321T677 237Q693 196 693 168Q693 161 687 155T673 148Q662 148 658 154T651 181Q638 253 591 300T455 377Q318 419 124 419H95ZM55 -205Q55 -175 64 -142T92 -76T145 -22T222 -1Q288 -1 362 -66Q369 -72 372 -75T378 -79T382 -81T384 -79Q389 -74 439 21Q483 100 490 111T504 122Q510 122 518 118T526 103Q526 101 510 69T467 -12T419 -99L413 -112L433 -128Q498 -180 553 -180Q605 -180 646 -139Q672 -112 681 -77T693 -21T706 -1Q719 -1 719 -33Q719 -39 717 -57Q708 -141 655 -190Q625 -224 586 -232Q568 -237 551 -237Q487 -237 413 -172L391 -155Q391 -157 335 -255Q297 -325 286 -342T268 -359Q260 -359 254 -353T248 -339T304 -230L359 -126Q359 -124 337 -107T302 -81Q262 -57 221 -57Q170 -57 130 -93T84 -201Q82 -236 70 -236Q55 -236 55 -205",8937:"679 459Q693 445 693 439Q693 430 679 419H651Q455 419 319 377Q231 347 184 300T124 181Q120 161 116 155T102 148Q95 148 89 154T82 168Q82 192 97 237Q111 275 137 306T188 355T249 391T307 414T361 429T399 439Q397 440 364 447T298 467T224 499T149 557T97 641Q82 686 82 710Q82 717 88 723T102 730L115 725Q118 722 124 697Q137 625 184 578T319 501Q456 459 651 459H679ZM55 -205Q55 -175 64 -142T92 -76T145 -22T222 -1Q288 -1 362 -66Q369 -72 372 -75T378 -79T382 -81T384 -79Q389 -74 439 21Q483 100 490 111T504 122Q510 122 518 118T526 103Q526 101 510 69T467 -12T419 -99L413 -112L433 -128Q498 -180 553 -180Q605 -180 646 -139Q672 -112 681 -77T693 -21T706 -1Q719 -1 719 -33Q719 -39 717 -57Q708 -141 655 -190Q625 -224 586 -232Q568 -237 551 -237Q487 -237 413 -172L391 -155Q391 -157 335 -255Q297 -325 286 -342T268 -359Q260 -359 254 -353T248 -339T304 -230L359 -126Q359 -124 337 -107T302 -81Q262 -57 221 -57Q170 -57 130 -93T84 -201Q82 -236 70 -236Q55 -236 55 -205",8938:"693 -30Q686 -41 673 -41Q661 -41 506 34L346 110L280 -44Q228 -162 216 -185T193 -208Q177 -208 173 -192Q173 -186 242 -30T311 128Q271 145 184 186T86 236Q82 240 82 246Q82 251 86 259Q96 267 271 350L449 434L506 565Q537 635 551 664T571 700T582 706Q587 706 593 701T600 690Q600 679 553 572Q504 463 504 461L586 501Q672 539 673 539Q679 539 693 525V-30ZM653 10V488L566 445L480 405L422 276Q415 260 405 236T388 199T376 171T368 151T366 145Q368 143 510 77T653 10ZM422 374Q422 376 420 376T285 313T151 248Q315 168 326 163Q415 356 422 374",8939:"82 525Q96 539 102 539Q103 539 122 530T186 501T266 463L426 388Q428 388 495 541Q564 694 569 699Q573 706 581 706Q587 706 593 702T600 691Q600 676 533 528Q515 486 506 465T485 418T470 381T466 370Q466 369 575 316Q676 269 689 259Q693 253 693 248Q693 242 689 236Q688 235 506 145Q328 63 324 59Q324 50 266 -70Q224 -169 214 -188T193 -208Q177 -208 173 -192Q173 -183 222 -77Q244 -29 257 2T269 34L186 -6Q108 -43 99 -43Q93 -43 82 -30V525ZM271 416Q129 485 126 485H125Q122 485 122 250Q122 10 124 10L211 50L295 92L411 350Q411 351 271 416ZM624 248L449 332L440 319Q434 297 393 214Q353 121 353 119Q355 119 489 182T624 248",8940:"82 -123Q82 -114 93 -103H166L238 -101L293 50Q349 200 349 204L220 266Q166 291 140 304T100 325T84 336T82 344Q82 353 94 360Q112 372 282 453L473 541L482 568Q487 578 529 693Q559 785 569 795Q573 802 581 802Q587 802 593 797T599 786Q599 775 564 675L526 570Q526 568 561 584T633 617T673 635Q679 635 693 621V66Q686 54 679 54Q665 54 526 119Q491 137 458 153T405 177T386 184Q385 182 334 42T282 -101T482 -103H680Q682 -105 684 -108T688 -113T691 -118T693 -124Q693 -134 682 -141L473 -143H266L238 -219Q217 -278 210 -290T193 -303Q178 -303 173 -287Q173 -279 198 -214L222 -145Q222 -143 158 -143L93 -141L86 -136Q82 -131 82 -123ZM653 106V584L506 513L453 370Q442 339 428 300T407 243T400 224Q403 222 527 164T653 106ZM453 486Q453 488 451 488T300 417T151 344L224 308Q247 298 285 279T331 257L364 241L453 486",8941:"82 621Q96 635 102 635T249 568L420 486L449 473L469 533Q563 789 569 797Q573 801 581 801Q598 801 600 786Q602 781 544 617L484 455Q531 435 584 408Q677 364 689 355Q693 351 693 344Q693 339 692 337T676 325T631 302T538 257Q504 241 465 223T406 195T386 186Q384 184 333 44T282 -101Q282 -103 482 -103H680Q682 -105 684 -108T688 -113T691 -118T693 -124Q693 -134 682 -141L473 -143H266L238 -219Q217 -278 210 -290T193 -303Q178 -303 173 -287Q173 -279 198 -214L222 -145Q222 -143 158 -143L93 -141L86 -136Q82 -131 82 -123Q82 -114 93 -103H166L238 -101L333 159Q326 159 220 106Q110 54 97 54Q89 54 82 66V621ZM298 501Q155 567 142 575L122 584V344Q122 106 124 106Q125 106 180 132T291 185T351 213Q355 217 393 326L433 435Q433 436 298 501ZM549 381Q472 417 471 417L406 241Q408 240 516 291T624 344L549 381",8942:"78 30Q78 54 95 72T138 90Q162 90 180 74T199 31Q199 6 182 -12T139 -30T96 -13T78 30ZM78 440Q78 464 95 482T138 500Q162 500 180 484T199 441Q199 416 182 398T139 380T96 397T78 440ZM78 840Q78 864 95 882T138 900Q162 900 180 884T199 841Q199 816 182 798T139 780T96 797T78 840",8943:"78 250Q78 274 95 292T138 310Q162 310 180 294T199 251Q199 226 182 208T139 190T96 207T78 250ZM525 250Q525 274 542 292T585 310Q609 310 627 294T646 251Q646 226 629 208T586 190T543 207T525 250ZM972 250Q972 274 989 292T1032 310Q1056 310 1074 294T1093 251Q1093 226 1076 208T1033 190T990 207T972 250",8945:"133 760Q133 784 150 802T193 820Q217 820 235 804T254 761Q254 736 237 718T194 700T151 717T133 760ZM580 460Q580 484 597 502T640 520Q664 520 682 504T701 461Q701 436 684 418T641 400T598 417T580 460ZM1027 160Q1027 184 1044 202T1087 220Q1111 220 1129 204T1148 161Q1148 136 1131 118T1088 100T1045 117T1027 160",8965:"55 698Q56 708 70 716H540Q554 708 555 698Q555 694 554 691T552 686T549 682T546 680T542 678T539 676H71Q70 676 68 677T65 679T61 682T58 686T56 691T55 698ZM555 18Q554 12 549 6T536 0H535Q525 0 515 17T459 132Q430 194 410 235L305 455L199 233Q176 185 147 125T105 36T90 7Q85 0 75 0Q63 0 58 11Q55 15 55 21Q58 31 170 266T285 507Q295 522 305 522T320 515Q322 513 439 268L555 24V18",8966:"55 795Q56 806 70 813H540Q554 806 555 795Q555 791 554 788T552 783T549 779T546 777T542 775T539 773H71Q70 773 68 774T65 776T61 779T58 783T56 788T55 795ZM55 601Q56 612 70 619H540Q554 612 555 601Q555 597 554 594T552 589T549 585T546 583T542 581T539 579H71Q70 579 68 580T65 582T61 585T58 589T56 594T55 601ZM75 -97Q67 -97 61 -91T55 -81Q55 -71 169 166T285 410Q295 425 305 425Q311 425 316 422T323 414L325 410Q327 404 441 167T555 -81Q555 -85 549 -91T535 -97T520 -90Q519 -89 506 -61T463 27T411 136L305 358L199 136Q167 71 129 -10Q98 -75 92 -86T75 -97",8968:"174 734Q178 746 190 750H298H369Q400 750 411 747T422 730T411 713T372 709Q365 709 345 709T310 710H214V-235Q206 -248 196 -250Q192 -250 189 -249T184 -247T180 -244T178 -241T176 -237T174 -234V734",8969:"21 717T21 730T32 746T75 750H147H256Q266 742 269 735V-235Q262 -248 251 -250Q247 -250 244 -249T239 -247T235 -244T233 -241T231 -237T229 -234V710H133Q119 710 99 710T71 709Q43 709 32 713",8970:"174 734Q174 735 175 737T177 740T180 744T184 747T189 749T196 750Q206 748 214 735V-210H310H373Q401 -210 411 -213T422 -230T411 -247T369 -251Q362 -251 338 -251T298 -250H190Q178 -246 174 -234V734",8971:"229 734Q229 735 230 737T232 740T235 744T239 747T244 749T251 750Q262 748 269 735V-235Q266 -240 256 -249L147 -250H77Q43 -250 32 -247T21 -230T32 -213T72 -209Q79 -209 99 -209T133 -210H229V734",8988:"76 306Q62 306 59 319T55 386V500V596Q55 664 57 676T68 692Q71 694 250 694Q428 694 432 692Q444 685 444 674Q444 665 432 656Q428 654 261 654H95V487Q95 355 95 336T90 312Q84 306 76 306",8989:"424 306Q418 306 413 310T406 318L404 321V654H238Q71 654 68 656Q55 662 55 674T68 692Q71 694 250 694H379Q432 694 438 688Q443 683 443 662T444 500T444 338T438 312Q432 306 424 306",8990:"55 172V287Q55 341 58 353T76 366Q88 366 95 351V18H261Q428 18 432 16Q444 9 444 -2Q444 -11 432 -20Q428 -22 250 -22H120Q67 -22 61 -16Q56 -11 56 10T55 172",8991:"404 351Q410 366 424 366Q437 366 440 353T444 288V172V72Q444 8 443 -4T432 -20Q428 -22 250 -22Q71 -22 68 -20Q55 -14 55 -2T68 16Q71 18 238 18H404V351",8994:"55 141Q55 149 72 174T125 234T209 303T329 360T478 388H526Q649 383 765 319Q814 291 858 250T923 179T944 141Q944 133 938 128T924 122Q914 124 912 125T902 139Q766 328 500 328Q415 328 342 308T225 258T150 199T102 148T84 124Q81 122 75 122Q55 127 55 141",8995:"923 378Q944 378 944 358Q944 345 912 311T859 259Q710 134 500 134Q288 134 140 259Q55 336 55 358Q55 366 61 372T75 378Q78 378 84 376Q86 376 101 356T147 310T221 257T339 212T500 193Q628 193 734 236Q841 282 903 363Q914 378 923 378",9001:"333 -232Q332 -239 327 -244T313 -250Q303 -250 296 -240Q293 -233 202 6T110 250T201 494T296 740Q299 745 306 749L309 750Q312 750 313 750Q331 750 333 732Q333 727 243 489Q152 252 152 250T243 11Q333 -227 333 -232",9002:"55 732Q56 739 61 744T75 750Q85 750 92 740Q95 733 186 494T278 250T187 6T92 -240Q85 -250 75 -250Q67 -250 62 -245T55 -232Q55 -227 145 11Q236 248 236 250T145 489Q55 727 55 732",9136:"357 741V726Q357 720 349 715Q261 655 242 539Q240 526 240 454T239 315T239 247Q240 235 240 124V40Q240 -17 233 -53T201 -130Q155 -206 78 -244H69H64Q58 -244 57 -243T56 -234Q56 -232 56 -231V-225Q56 -218 63 -215Q153 -153 170 -39Q172 -25 173 119V219Q173 245 174 249Q173 258 173 376V460Q173 515 178 545T201 611Q244 695 327 741L334 744H354L357 741",9137:"78 744Q153 706 196 640T239 492V376Q239 341 239 314T238 271T238 253Q239 251 239 223V119V49Q239 -39 254 -85Q263 -111 275 -134T301 -172T326 -197T346 -213T356 -221T357 -232V-241L354 -244H334Q264 -209 222 -146T174 -12Q173 -6 173 95Q173 134 173 191T174 250Q173 258 173 382V451Q173 542 159 585Q145 626 120 658T75 706T56 723V731Q56 741 57 742T66 744H78",9168:"312 0V602H355V0H312",9416:"451 -175Q328 -175 226 -115T66 47T8 267Q8 303 15 342T39 431T94 531T186 622Q239 663 307 686T424 709H440Q604 709 716 622Q757 592 788 555T838 482T869 414T886 350T892 301T894 267Q894 147 835 45T674 -116T451 -175ZM854 268Q854 375 802 467T657 614T450 670Q283 670 166 552T49 267Q49 99 167 -18T453 -136Q617 -136 735 -18T854 268ZM273 378Q273 430 309 474T409 527Q411 527 417 527T428 528Q498 528 549 484L567 505Q583 528 590 528H594Q600 528 606 522V350L600 344H586Q577 344 574 344T569 347T566 357Q542 491 432 491Q389 491 365 465T340 407Q340 391 344 378T358 356T377 340T400 328T421 321T443 316T459 313Q499 305 517 300T559 279T601 238Q629 195 629 148Q629 80 583 33T471 -14Q392 -14 330 30Q312 6 293 -13Q292 -14 285 -14Q279 -14 273 -8V77V138Q273 160 275 165T286 170H294H307Q313 164 313 158Q313 108 350 67T471 26Q512 26 537 54T562 119Q562 137 558 151T544 176T527 193T504 205T483 212T459 218T441 222Q391 232 368 241T318 273Q273 316 273 378",9484:"76 306Q62 306 59 319T55 386V500V596Q55 664 57 676T68 692Q71 694 250 694Q428 694 432 692Q444 685 444 674Q444 665 432 656Q428 654 261 654H95V487Q95 355 95 336T90 312Q84 306 76 306",9488:"424 306Q418 306 413 310T406 318L404 321V654H238Q71 654 68 656Q55 662 55 674T68 692Q71 694 250 694H379Q432 694 438 688Q443 683 443 662T444 500T444 338T438 312Q432 306 424 306",9492:"55 172V287Q55 341 58 353T76 366Q88 366 95 351V18H261Q428 18 432 16Q444 9 444 -2Q444 -11 432 -20Q428 -22 250 -22H120Q67 -22 61 -16Q56 -11 56 10T55 172",9496:"404 351Q410 366 424 366Q437 366 440 353T444 288V172V72Q444 8 443 -4T432 -20Q428 -22 250 -22Q71 -22 68 -20Q55 -14 55 -2T68 16Q71 18 238 18H404V351",9585:"19 -195Q13 -195 7 -188T0 -176Q0 -169 18 -151L822 683Q835 694 840 694T852 688T860 674Q860 667 810 614T460 252Q57 -167 44 -179Q27 -195 19 -195",9586:"0 675Q0 681 6 687T19 694Q27 694 44 678L460 247Q759 -62 809 -115T860 -175Q860 -183 852 -189T840 -195Q835 -195 822 -184L18 649Q0 667 0 675",9632:"71 0Q59 4 55 16V346L56 676Q64 686 70 689H709Q719 681 722 674V15Q719 10 709 1L390 0H71",9633:"71 0Q59 4 55 16V346L56 676Q64 686 70 689H709Q719 681 722 674V15Q719 10 709 1L390 0H71ZM682 40V649H95V40H682",9642:"71 0Q59 4 55 16V346L56 676Q64 686 70 689H709Q719 681 722 674V15Q719 10 709 1L390 0H71",9650:"99 -20Q84 -11 84 0Q84 5 148 145T278 424L342 563Q347 575 360 575Q368 575 375 570Q376 569 441 430T571 148T637 0Q637 -11 622 -20H99",9651:"75 0L72 2Q69 3 67 5T62 11T59 20Q59 24 62 30Q65 37 245 370T428 707Q428 708 430 710T436 714T444 716Q451 716 455 712Q459 710 644 368L828 27V20Q828 7 814 0H75ZM610 347L444 653Q443 653 278 347T113 40H775Q775 42 610 347",9652:"99 -20Q84 -11 84 0Q84 5 148 145T278 424L342 563Q347 575 360 575Q368 575 375 570Q376 569 441 430T571 148T637 0Q637 -11 622 -20H99",9653:"75 0L72 2Q69 3 67 5T62 11T59 20Q59 24 62 30Q65 37 245 370T428 707Q428 708 430 710T436 714T444 716Q451 716 455 712Q459 710 644 368L828 27V20Q828 7 814 0H75ZM610 347L444 653Q443 653 278 347T113 40H775Q775 42 610 347",9654:"83 523Q83 524 85 527T92 535T103 539Q107 539 389 406T680 268Q694 260 694 249Q694 239 687 234Q685 232 395 95L107 -41H101Q90 -40 83 -26V523",9656:"83 523Q83 524 85 527T92 535T103 539Q107 539 389 406T680 268Q694 260 694 249Q694 239 687 234Q685 232 395 95L107 -41H101Q90 -40 83 -26V523",9657:"26 489Q33 505 43 505Q51 505 260 385Q464 266 471 259Q473 257 473 250Q473 242 469 239Q459 231 260 115Q51 -5 43 -5Q39 -5 35 -1T28 7L26 11V489ZM412 250L67 450Q66 450 66 250T67 50Q69 51 240 150T412 250",9660:"84 556Q84 567 99 576H622Q637 567 637 556Q637 551 572 409T441 127T375 -14Q368 -19 360 -19H358Q349 -19 342 -7T296 92Q249 193 211 275Q84 550 84 556",9661:"59 480Q59 485 61 489T66 495T72 498L75 500H814Q828 493 828 480V474L644 132Q458 -210 455 -212Q451 -215 444 -215T433 -212Q429 -210 342 -49T164 282T64 466Q59 478 59 480ZM775 460H113Q113 459 278 153T444 -153T610 153T775 460",9662:"84 556Q84 567 99 576H622Q637 567 637 556Q637 551 572 409T441 127T375 -14Q368 -19 360 -19H358Q349 -19 342 -7T296 92Q249 193 211 275Q84 550 84 556",9663:"59 480Q59 485 61 489T66 495T72 498L75 500H814Q828 493 828 480V474L644 132Q458 -210 455 -212Q451 -215 444 -215T433 -212Q429 -210 342 -49T164 282T64 466Q59 478 59 480ZM775 460H113Q113 459 278 153T444 -153T610 153T775 460",9664:"694 -26Q686 -40 676 -41H670L382 95Q92 232 90 234Q83 239 83 249Q83 262 96 267Q101 270 379 401T665 537Q671 539 674 539Q686 539 694 524V-26",9666:"694 -26Q686 -40 676 -41H670L382 95Q92 232 90 234Q83 239 83 249Q83 262 96 267Q101 270 379 401T665 537Q671 539 674 539Q686 539 694 524V-26",9667:"473 10Q466 -5 454 -5Q451 -5 445 -3Q444 -3 343 56T140 173T35 234Q26 239 26 250T35 266Q40 269 240 384T445 503Q451 505 453 505Q466 505 473 490V10ZM433 50T433 250T432 450T259 351T87 250T258 150T432 50Q433 50 433 250",9674:"318 709Q325 716 332 716Q340 716 344 713T474 511Q611 298 611 292Q611 285 526 152Q494 103 474 72Q347 -128 344 -130Q340 -132 333 -132T322 -130Q319 -128 257 -31T131 169T60 278Q56 285 56 292Q56 298 60 305Q73 326 194 516T318 709ZM567 290T567 291T451 475T333 658L100 293Q100 288 215 108L333 -74Q334 -74 450 108",9711:"56 250Q56 353 95 442T196 589T335 681T491 715Q573 715 635 693Q694 673 747 635T846 543T917 412T944 250Q944 58 815 -78T500 -215Q457 -215 429 -210Q274 -183 165 -56T56 250ZM500 -176Q664 -176 784 -54T904 250Q904 418 799 536T543 674Q534 675 493 675Q425 675 357 647T229 567T133 432T96 250Q96 160 129 80T217 -56T346 -144T500 -176",9723:"71 0Q59 4 55 16V346L56 676Q64 686 70 689H709Q719 681 722 674V15Q719 10 709 1L390 0H71ZM682 40V649H95V40H682",9724:"71 0Q59 4 55 16V346L56 676Q64 686 70 689H709Q719 681 722 674V15Q719 10 709 1L390 0H71",9733:"367 395Q374 416 398 492T442 627T463 688Q463 692 467 692Q471 694 472 694Q478 694 484 680T523 562Q553 469 576 400L577 395H731H819Q872 395 883 394T895 384Q895 380 891 376T832 333Q794 305 767 285Q643 195 643 194L690 47Q737 -96 737 -103Q737 -111 727 -111Q721 -111 594 -18L472 71L350 -18Q223 -111 217 -111Q207 -111 207 -103Q207 -96 254 47L301 194Q301 195 241 239T118 328T51 378Q49 382 49 384Q49 392 58 393T110 395H213H367",9824:"181 -21Q134 -21 96 27T55 193Q55 224 58 247T82 317T143 410Q172 443 234 498Q282 543 314 598T360 687T380 725Q386 727 389 727Q395 727 398 725T406 716T413 702T423 677T439 641Q481 556 544 498Q633 420 678 353T723 204Q723 142 711 94T669 12T590 -21Q520 -21 490 8T459 66V70H409V62Q409 22 416 -17T430 -82T437 -112Q437 -131 407 -131Q403 -131 397 -131T389 -130T382 -130T372 -131Q341 -131 341 -111Q341 -107 348 -82T362 -18T369 62V70H319V66Q319 57 314 44T297 16T257 -10T191 -21H181",9825:"55 490Q55 557 71 604T114 674T167 706T222 716Q279 716 322 684T389 605Q391 610 395 617T414 643T447 677T494 704T555 716Q642 716 682 652T723 490Q723 455 718 426T684 342T602 227Q573 196 537 161T485 110T449 63T412 -8Q408 -22 404 -27T389 -33Q382 -33 379 -31T372 -23T366 -8T355 18T335 54Q319 81 298 104T239 163T176 227Q102 310 79 371T55 490ZM198 674Q143 664 119 613T95 491Q95 415 137 346Q174 282 265 194T384 48L389 39Q391 42 397 54T406 71T415 86T427 104T442 122T464 146T491 172Q571 249 613 303Q683 396 683 487Q683 581 649 631Q613 676 556 676Q495 676 457 634T410 538Q407 514 390 514Q386 514 380 517Q372 520 369 536T355 581T319 635Q277 675 223 675H217H208L204 674Q200 674 198 674",9826:"370 714Q370 717 375 722T388 727Q398 727 403 721T417 697Q420 692 421 689Q536 465 709 304Q723 291 723 282T709 260Q529 93 406 -153Q402 -162 390 -162H389Q379 -162 376 -158T357 -125Q247 89 89 241L64 265Q55 272 55 282Q55 287 57 290T64 300T77 312T98 331T127 361Q197 435 258 523T344 663L370 714ZM655 299Q568 384 508 470T389 662L376 638Q362 613 341 577T289 497T215 399T123 299L105 282L123 265Q210 180 270 94T389 -98L402 -74Q416 -49 437 -13T489 67T563 165T655 265L673 282L655 299",9827:"213 532Q213 615 265 670T389 726Q461 726 513 671T565 532Q565 511 562 492T553 458T541 432T526 409T512 393T498 379L490 371L511 326Q512 326 516 330T528 341T546 353T572 363T606 368Q664 368 707 315T750 174Q750 87 699 33T579 -22Q567 -22 553 -20T517 -10T479 16T459 63V70H409V62Q409 22 416 -17T430 -82T437 -112Q437 -131 407 -131Q403 -131 397 -131T389 -130T382 -130T372 -131Q341 -131 341 -111Q341 -107 348 -82T362 -18T369 62V70H319V63Q315 25 281 2T197 -22Q132 -22 80 32T28 174Q28 255 69 311T175 368Q192 368 207 364T232 353T250 341T262 331T267 326L288 371L280 378Q272 385 267 391T253 407T238 430T226 457T217 492T213 532",9837:"200 467Q254 467 293 428T332 321Q332 147 104 -11L88 -22H75Q62 -22 56 -16L55 362V647Q55 743 60 748Q63 750 76 750H83Q87 750 95 744V434L104 440Q144 467 200 467ZM237 322Q237 360 225 388T183 417Q158 417 134 407T101 378Q96 370 96 349T95 197V34Q152 91 194 167T237 322",9838:"65 721Q78 734 94 734Q100 734 104 727V444L116 449Q129 454 157 465T208 486Q313 527 314 527Q318 527 324 521V-210Q306 -223 294 -223Q289 -223 284 -216V-13L270 -18Q257 -24 231 -34T180 -54Q77 -96 74 -96T65 -90V721ZM104 13Q282 84 283 85Q284 85 284 252Q284 418 283 418L230 396L140 360L104 346V13",9839:"101 -223Q94 -223 93 -217T91 -188V-151Q91 -88 90 -88Q87 -88 80 -92T68 -96Q62 -96 56 -90L55 -50V-22Q55 -8 58 -4T78 5L91 10V177Q91 343 90 343Q87 343 80 339T68 335Q62 335 56 341L55 381V409Q55 423 58 427T78 436L91 441V543V616Q91 643 93 648T106 656Q119 662 126 659Q130 657 130 645T131 554V456L257 503V607L258 710L260 712Q261 715 272 719T286 723Q293 723 295 715T297 671V617Q297 519 298 519Q301 519 307 522T319 526Q327 526 333 521V437L330 435Q328 432 312 427L297 421V254Q297 88 298 88Q301 88 307 91T319 95Q327 95 333 90V6L330 4Q328 1 312 -4L297 -10V-78V-122Q297 -145 295 -149T282 -156Q274 -160 268 -160Q257 -160 257 -130V-89V-25L131 -72V-210Q123 -215 116 -218T104 -222L101 -223ZM257 72V406L131 359V25L257 72",10003:"84 231Q84 244 114 264T170 285Q176 285 183 274T224 205Q267 129 268 129Q271 141 279 163T318 250T389 378T502 523T662 673Q702 706 732 706H734Q749 706 749 695Q749 682 730 666T660 607T559 505Q387 299 328 29Q324 0 295 -17T245 -34H241Q234 -34 225 -21T185 46Q166 79 154 101Q84 223 84 231",10016:"195 702T195 706T201 716H632Q638 710 638 706T636 700T621 690Q436 581 427 374V357H430Q554 357 645 421Q682 447 711 483T755 542T770 567Q775 572 786 563V131Q777 125 774 125T762 139Q709 228 642 274T482 333Q452 337 430 337H427V320Q430 279 437 247T462 170T521 82T621 4Q630 -2 633 -4T637 -7T638 -12Q638 -16 632 -22H201Q195 -16 195 -12T197 -6T212 4Q397 113 406 320V337H403Q279 337 188 273Q151 247 122 211T78 152T63 127Q58 122 48 131V563Q54 569 59 569Q62 569 71 555Q124 466 191 420T351 361Q381 357 403 357H406V374Q403 415 396 447T371 525T312 613T212 690Q199 697 197 699",10072:"139 -249H137Q125 -249 119 -235V251L120 737Q130 750 139 750Q152 750 159 735V-235Q151 -249 141 -249H139",10216:"333 -232Q332 -239 327 -244T313 -250Q303 -250 296 -240Q293 -233 202 6T110 250T201 494T296 740Q299 745 306 749L309 750Q312 750 313 750Q331 750 333 732Q333 727 243 489Q152 252 152 250T243 11Q333 -227 333 -232",10217:"55 732Q56 739 61 744T75 750Q85 750 92 740Q95 733 186 494T278 250T187 6T92 -240Q85 -250 75 -250Q67 -250 62 -245T55 -232Q55 -227 145 11Q236 248 236 250T145 489Q55 727 55 732",10222:"357 741V726Q357 720 349 715Q261 655 242 539Q240 526 240 394V331Q240 259 239 250Q240 242 240 119V49Q240 -42 254 -85Q263 -111 275 -134T301 -172T326 -197T346 -213T356 -221T357 -232V-241L354 -244H334Q264 -209 222 -146T174 -12Q173 -6 173 95Q173 134 173 191T174 250Q173 260 173 376V460Q173 515 178 545T201 611Q244 695 327 741L334 744H354L357 741",10223:"78 744Q153 706 196 640T239 492V376Q239 339 239 311T238 269T238 252Q240 236 240 124V40Q240 -18 233 -53T202 -130Q156 -206 79 -244H70H65Q58 -244 57 -242T56 -231T57 -220T64 -215Q153 -154 170 -39Q173 -18 174 119V247Q173 249 173 382V451Q173 542 159 585Q145 626 120 658T75 706T56 723V731Q56 741 57 742T66 744H78",10229:"165 270H1510Q1525 262 1525 250T1510 230H165Q167 228 182 216T211 189T244 152T277 96T303 25Q308 7 308 0Q308 -11 288 -11Q281 -11 278 -11T272 -7T267 2T263 21Q245 94 195 151T73 236Q58 242 55 247Q55 254 59 257T73 264Q121 283 158 314T215 375T247 434T264 480L267 497Q269 503 270 505T275 509T288 511Q308 511 308 500Q308 493 303 475Q293 438 278 406T246 352T215 315T185 287T165 270",10230:"84 237T84 250T98 270H1444Q1328 357 1301 493Q1301 494 1301 496T1300 499Q1300 511 1317 511H1320Q1329 511 1332 510T1338 506T1341 497T1344 481T1352 456Q1374 389 1425 336T1544 261Q1553 258 1553 250Q1553 244 1548 241T1524 231T1486 212Q1445 186 1415 152T1370 85T1349 35T1341 4Q1339 -6 1336 -8T1320 -11Q1300 -11 1300 0Q1300 7 1305 25Q1337 151 1444 230H98Q84 237 84 250",10231:"165 270H1694Q1578 357 1551 493Q1551 494 1551 496T1550 499Q1550 511 1567 511H1570Q1579 511 1582 510T1588 506T1591 497T1594 481T1602 456Q1624 389 1675 336T1794 261Q1803 258 1803 250Q1803 244 1798 241T1774 231T1736 212Q1695 186 1665 152T1620 85T1599 35T1591 4Q1589 -6 1586 -8T1570 -11Q1550 -11 1550 0Q1550 7 1555 25Q1587 151 1694 230H165Q167 228 182 216T211 189T244 152T277 96T303 25Q308 7 308 0Q308 -11 288 -11Q281 -11 278 -11T272 -7T267 2T263 21Q245 94 195 151T73 236Q58 242 55 247Q55 254 59 257T73 264Q121 283 158 314T215 375T247 434T264 480L267 497Q269 503 270 505T275 509T288 511Q308 511 308 500Q308 493 303 475Q293 438 278 406T246 352T215 315T185 287T165 270",10232:"274 173H1539Q1540 172 1542 171T1545 169T1547 167T1550 164T1551 162T1552 158T1553 153Q1553 140 1538 133H318L328 123Q379 69 414 0Q419 -13 419 -17Q419 -24 399 -24Q388 -24 385 -23T377 -12Q332 77 253 144T72 237Q62 240 59 242T56 250T59 257T70 262T89 268T119 278T160 296Q303 366 377 512Q382 522 385 523T401 525Q419 524 419 515Q419 510 414 500Q379 431 328 377L318 367H1538Q1553 359 1553 347Q1553 336 1539 328L1221 327H903L900 328L602 327H274L264 319Q225 289 147 250Q148 249 165 241T210 217T264 181L274 173",10233:"1218 514Q1218 525 1234 525Q1239 525 1242 525T1247 525T1251 524T1253 523T1255 520T1257 517T1260 512Q1297 438 1358 381T1469 300T1565 263Q1582 258 1582 250T1573 239T1536 228T1478 204Q1334 134 1260 -12Q1256 -21 1253 -22T1238 -24Q1218 -24 1218 -17Q1218 -13 1223 0Q1258 69 1309 123L1319 133H70Q56 140 56 153Q56 168 72 173H1363L1373 181Q1412 211 1490 250Q1489 251 1472 259T1427 283T1373 319L1363 327H710L707 328L390 327H72Q56 332 56 347Q56 360 70 367H1319L1309 377Q1276 412 1247 458T1218 514",10234:"1438 514Q1438 525 1454 525Q1459 525 1462 525T1467 525T1471 524T1473 523T1475 520T1477 517T1480 512Q1517 438 1578 381T1689 300T1785 263Q1802 258 1802 250T1793 239T1756 228T1698 204Q1554 134 1480 -12Q1476 -21 1473 -22T1458 -24Q1438 -24 1438 -17Q1438 -13 1443 0Q1478 69 1529 123L1539 133H318L328 123Q379 69 414 0Q419 -13 419 -17Q419 -24 399 -24Q388 -24 385 -23T377 -12Q332 77 253 144T72 237Q62 240 59 242T56 250T59 257T70 262T89 268T119 278T160 296Q303 366 377 512Q382 522 385 523T401 525Q419 524 419 515Q419 510 414 500Q379 431 328 377L318 367H1539L1529 377Q1496 412 1467 458T1438 514ZM274 173H1583L1593 181Q1632 211 1710 250Q1709 251 1692 259T1647 283T1593 319L1583 327H930L927 328L602 327H274L264 319Q225 289 147 250Q148 249 165 241T210 217T264 181L274 173",10236:"95 155V109Q95 83 92 73T75 63Q61 63 58 74T54 130Q54 140 54 180T55 250Q55 421 57 425Q61 437 75 437Q88 437 91 428T95 393V345V270H1444Q1328 357 1301 493Q1301 494 1301 496T1300 499Q1300 511 1317 511H1320Q1329 511 1332 510T1338 506T1341 497T1344 481T1352 456Q1374 389 1425 336T1544 261Q1553 258 1553 250Q1553 244 1548 241T1524 231T1486 212Q1445 186 1415 152T1370 85T1349 35T1341 4Q1339 -6 1336 -8T1320 -11Q1300 -11 1300 0Q1300 7 1305 25Q1337 151 1444 230H95V155",10731:"318 709Q325 716 332 716Q340 716 344 713T474 511Q611 298 611 292Q611 285 526 152Q494 103 474 72Q347 -128 344 -130Q340 -132 333 -132T322 -130Q319 -128 257 -31T131 169T60 278Q56 285 56 292Q56 298 60 305Q73 326 194 516T318 709",10744:"166 -215T159 -215T147 -212T141 -204T139 -197Q139 -190 144 -183Q157 -157 378 274T602 707Q605 716 618 716Q625 716 630 712T636 703T638 696Q638 691 406 241T170 -212Q166 -215 159 -215",10752:"555 -250Q420 -250 306 -185T124 -4T56 250Q56 453 193 595T526 749Q528 750 539 750Q554 750 562 749Q688 749 800 687T983 508T1054 250Q1054 112 987 -3T806 -184T555 -250ZM555 -165Q672 -165 767 -108T916 44T970 250Q970 418 861 532T600 664Q591 665 548 665Q446 665 353 614T200 466T140 250V243Q140 88 248 -30Q262 -46 280 -62T338 -105T434 -148T555 -165ZM478 250Q478 288 503 307T551 326Q586 326 609 305T632 250Q632 217 610 196T555 174T500 196T478 250",10753:"555 -250Q420 -250 306 -185T124 -4T56 250Q56 453 193 595T526 749Q528 750 539 750Q554 750 562 749Q688 749 800 687T983 508T1054 250Q1054 112 987 -3T806 -184T555 -250ZM513 478Q513 664 512 664Q504 664 481 660T406 637T313 588Q281 564 255 537T211 483T181 431T161 382T150 342T144 310T141 292H513V478ZM798 588Q758 616 711 634T639 658T602 663L597 664V292H969Q969 293 967 309T960 341T949 381T930 430T900 482T856 537T798 588ZM513 -164V208H141Q142 205 144 189T149 160T158 125T173 83T196 39T229 -9Q249 -34 273 -55T318 -92T363 -119T405 -138T444 -150T475 -158T499 -162T513 -164ZM775 -103Q801 -87 823 -68T863 -30T894 10T919 49T937 88T950 123T959 154T964 180T968 198L969 208H597V-164Q599 -163 616 -161T647 -155T683 -145T728 -128T775 -103",10754:"555 -250Q420 -250 306 -185T124 -4T56 250Q56 453 193 595T526 749Q528 750 539 750Q554 750 562 749Q688 749 800 687T983 508T1054 250Q1054 112 987 -3T806 -184T555 -250ZM600 664Q591 665 548 665Q414 665 306 583L292 573L423 441L555 310L687 441L818 573L804 583Q714 650 600 664ZM364 118L495 250L364 382L232 513L223 500Q140 391 140 250Q140 107 223 0L232 -13L364 118ZM970 250Q970 389 887 501L878 512Q878 513 861 496T812 447T746 381L615 250L746 118L878 -13L887 0Q970 109 970 250ZM687 59L555 190L423 59L292 -73L306 -83Q416 -166 555 -166T804 -83L818 -73L687 59",10756:"96 750Q103 750 109 748T120 744T127 737T133 730T137 723T139 718V395L140 73L142 60Q159 -43 237 -104T416 -166Q521 -166 597 -103T690 60L692 73L694 718Q708 749 735 749Q765 749 775 720Q777 714 777 398Q777 78 776 71Q766 -51 680 -140Q571 -249 416 -249H411Q261 -249 152 -140Q66 -51 56 71Q55 78 55 398Q55 714 57 720Q60 734 70 740Q80 750 96 750ZM223 276Q223 282 224 287T227 296T232 302T238 308T243 313T250 316L254 319H374V376V406Q374 438 382 454T418 470Q443 467 450 453T458 410V376V319H579Q580 319 583 317T589 313T594 308T600 302T604 295T608 287T609 276Q609 253 587 241Q577 235 513 235H458V178Q458 176 458 166T459 148Q459 84 415 84Q401 84 390 93T375 117Q374 120 374 178V235H319Q317 235 307 235T290 234Q223 234 223 276",10758:"777 -217Q766 -244 745 -249H88Q64 -242 57 -220Q55 -214 55 250T57 720Q60 734 70 740Q80 750 96 750Q127 750 137 720Q139 714 139 274V-166H693V274Q693 714 695 720Q705 749 735 749Q766 749 775 719Q777 713 777 248V-217",10799:"630 29Q630 9 609 9Q604 9 587 25T493 118L389 222L284 117Q178 13 175 11Q171 9 168 9Q160 9 154 15T147 29Q147 36 161 51T255 146L359 250L255 354Q174 435 161 449T147 471Q147 480 153 485T168 490Q173 490 175 489Q178 487 284 383L389 278L493 382Q570 459 587 475T609 491Q630 491 630 471Q630 464 620 453T522 355L418 250L522 145Q606 61 618 48T630 29",10815:"28 660Q28 676 31 679T46 683H50Q87 681 182 681Q217 681 247 681T294 682T315 682Q321 682 323 682T328 679T331 673T332 660Q332 643 328 640T304 637Q239 637 231 626Q229 620 229 334V46H520V334Q520 620 518 626Q510 637 445 637Q426 637 422 640T417 660Q417 675 420 678T432 682H435Q437 682 467 682T569 681T671 681T703 682Q714 682 717 679T721 660Q721 643 717 640T693 637Q628 637 620 626Q619 623 619 342Q619 60 620 57Q628 46 693 46Q714 46 717 43T721 23Q721 5 715 1Q713 0 374 0Q36 0 34 1Q28 5 28 23Q28 40 31 43T56 46Q121 46 129 57Q131 63 131 342Q131 620 129 626Q121 637 56 637Q35 637 32 640T28 660",10846:"55 795Q56 806 70 813H540Q554 806 555 795Q555 791 554 788T552 783T549 779T546 777T542 775T539 773H71Q70 773 68 774T65 776T61 779T58 783T56 788T55 795ZM55 601Q56 612 70 619H540Q554 612 555 601Q555 597 554 594T552 589T549 585T546 583T542 581T539 579H71Q70 579 68 580T65 582T61 585T58 589T56 594T55 601ZM75 -97Q67 -97 61 -91T55 -81Q55 -71 169 166T285 410Q295 425 305 425Q311 425 316 422T323 414L325 410Q327 404 441 167T555 -81Q555 -85 549 -91T535 -97T520 -90Q519 -89 506 -61T463 27T411 136L305 358L199 136Q167 71 129 -10Q98 -75 92 -86T75 -97",10877:"674 636Q682 636 688 630T694 615T687 601Q686 600 417 472L151 346L399 228Q687 92 691 87Q694 81 694 76Q694 58 676 56H670L382 192Q92 329 90 331Q83 336 83 348Q84 359 96 365Q104 369 382 500T665 634Q669 636 674 636ZM94 170Q102 172 104 172Q110 171 254 103T535 -30T678 -98Q694 -106 694 -118Q694 -136 676 -138H670L382 -2Q92 135 90 137Q83 142 83 154Q84 164 94 170",10878:"83 616Q83 624 89 630T99 636Q107 636 253 568T543 431T687 361Q694 356 694 346T687 331Q685 329 395 192L107 56H101Q83 58 83 76Q83 77 83 79Q82 86 98 95Q117 105 248 167Q326 204 378 228L626 346L360 472Q291 505 200 548Q112 589 98 597T83 616ZM674 172Q692 172 694 154Q694 142 687 137Q685 135 395 -2L107 -138H101Q83 -136 83 -118Q83 -106 96 -100Q100 -98 380 35T665 170T674 172",10885:"667 761Q669 762 673 762Q682 762 688 756T694 741Q694 731 687 727Q684 724 420 613L156 502L416 392Q476 367 544 338T647 295T682 280Q694 274 694 262Q694 244 676 242Q670 242 524 303T235 425T90 487Q83 493 83 501Q83 514 94 519Q97 520 378 639T667 761ZM55 -23Q55 43 103 90T223 138Q265 138 316 114Q342 100 393 68L443 36Q502 0 554 0Q609 0 650 32T694 109Q694 138 708 138Q710 138 713 136T719 127T722 108Q722 37 673 -9T557 -56Q514 -56 468 -35T387 13T308 60T223 82Q167 82 127 50T83 -27Q81 -56 69 -56Q55 -56 55 -23ZM55 -257Q55 -191 103 -144T223 -96Q265 -96 316 -120Q342 -134 393 -166L443 -198Q502 -234 554 -234Q609 -234 650 -202T694 -125Q694 -96 708 -96Q710 -96 713 -98T719 -107T722 -126Q722 -197 673 -243T557 -290Q514 -290 468 -269T387 -221T308 -174T223 -152Q167 -152 127 -184T83 -261Q80 -290 69 -290Q55 -290 55 -257",10886:"90 727Q83 734 83 743Q83 751 89 756T104 762Q111 760 396 641Q686 518 687 517Q694 512 694 502T687 487Q686 486 543 425T253 303T101 242Q83 244 83 262Q83 274 95 280Q96 280 130 294T232 338T361 392L621 502L357 613Q93 724 90 727ZM55 -23Q55 43 103 90T223 138Q265 138 316 114Q342 100 393 68L443 36Q502 0 554 0Q609 0 650 32T694 109Q694 138 708 138Q710 138 713 136T719 127T722 108Q722 37 673 -9T557 -56Q514 -56 468 -35T387 13T308 60T223 82Q167 82 127 50T83 -27Q81 -56 69 -56Q55 -56 55 -23ZM55 -257Q55 -191 103 -144T223 -96Q265 -96 316 -120Q342 -134 393 -166L443 -198Q502 -234 554 -234Q609 -234 650 -202T694 -125Q694 -96 708 -96Q710 -96 713 -98T719 -107T722 -126Q722 -197 673 -243T557 -290Q514 -290 468 -269T387 -221T308 -174T223 -152Q167 -152 127 -184T83 -261Q80 -290 69 -290Q55 -290 55 -257",10887:"380 497Q445 528 522 564T636 618T673 635Q680 635 686 628T693 615T689 603Q686 599 418 472L151 343L418 215Q686 88 689 83Q693 79 693 72T687 59T675 52Q669 52 381 189T86 332Q82 337 82 344Q82 350 86 355Q91 359 380 497ZM82 -130T82 -124T95 -103H380L431 -54Q476 -6 486 -6Q491 -6 498 -12T505 -27Q505 -28 505 -29T504 -32Q503 -33 498 -38T485 -53T469 -70L438 -103H680Q682 -106 686 -110T691 -116T693 -123Q693 -130 680 -143H398L346 -192Q300 -241 291 -241Q271 -241 271 -221Q271 -209 306 -179L340 -143H95Q82 -130 82 -124",10888:"82 614Q82 620 86 625T94 632T100 635Q106 635 394 498T689 355Q693 349 693 343Q693 338 689 332Q683 327 395 190T100 52Q95 52 89 58T82 72Q82 80 95 88Q114 99 358 215L624 343L358 472Q89 599 86 603Q82 607 82 614ZM82 -130T82 -124T95 -103H380L431 -54Q476 -6 486 -6Q491 -6 498 -12T505 -27Q505 -28 505 -29T504 -32Q503 -33 498 -38T485 -53T469 -70L438 -103H680Q682 -106 686 -110T691 -116T693 -123Q693 -130 680 -143H398L346 -192Q300 -241 291 -241Q271 -241 271 -221Q271 -209 306 -179L340 -143H95Q82 -130 82 -124",10889:"86 512Q93 518 381 639T673 761Q680 761 686 755T693 741Q693 733 688 730Q685 723 419 612L155 501L419 390Q685 277 688 272Q693 269 693 261Q693 254 687 248T675 241Q669 241 381 362T86 490Q74 500 86 512ZM70 -59Q57 -59 57 -24Q57 40 104 87Q116 102 146 118Q186 136 231 136Q232 136 242 135T258 133T276 128T302 118T334 101T377 74Q386 69 396 63T411 53T417 50Q435 87 453 134Q491 223 495 227Q498 230 505 230Q513 230 519 225T526 212Q526 203 491 118T453 30Q453 22 489 10T553 -3Q589 -3 622 14Q653 28 669 50T688 90T694 122T706 136Q718 136 718 114Q718 113 718 109T717 103Q717 31 668 -14T554 -60Q529 -60 499 -50T451 -32T433 -24Q431 -24 404 -90T375 -157Q375 -159 402 -178T473 -218T553 -239Q599 -239 641 -211T691 -130Q694 -99 706 -99T718 -122Q718 -123 718 -127T717 -133Q717 -204 668 -249T559 -295Q512 -295 470 -275T355 -206L322 -290Q313 -310 304 -332T289 -367T282 -382Q277 -387 270 -387Q262 -387 255 -382T248 -368Q248 -361 322 -186Q311 -177 280 -166T222 -155Q189 -155 153 -173Q122 -186 106 -208T87 -248T82 -280T71 -294Q57 -294 57 -259Q57 -195 104 -148Q122 -126 155 -113T220 -99Q245 -99 276 -109T324 -127T342 -135Q397 -2 397 1Q386 10 367 23T302 58T222 80Q175 80 132 52T84 -28Q82 -59 70 -59",10890:"86 730Q81 734 81 740Q81 747 88 754T99 761Q103 761 392 640T688 512Q693 509 693 501T688 490Q682 484 394 363T99 241Q94 241 88 248T82 261Q82 268 86 272Q89 277 355 390L619 501L355 612Q89 723 86 730ZM70 -59Q57 -59 57 -24Q57 40 104 87Q116 102 146 118Q186 136 231 136Q232 136 242 135T258 133T276 128T302 118T334 101T377 74Q386 69 396 63T411 53T417 50Q435 87 453 134Q491 223 495 227Q498 230 505 230Q513 230 519 225T526 212Q526 203 491 118T453 30Q453 22 489 10T553 -3Q589 -3 622 14Q653 28 669 50T688 90T694 122T706 136Q718 136 718 114Q718 113 718 109T717 103Q717 31 668 -14T554 -60Q529 -60 499 -50T451 -32T433 -24Q431 -24 404 -90T375 -157Q375 -159 402 -178T473 -218T553 -239Q599 -239 641 -211T691 -130Q694 -99 706 -99T718 -122Q718 -123 718 -127T717 -133Q717 -204 668 -249T559 -295Q512 -295 470 -275T355 -206L322 -290Q313 -310 304 -332T289 -367T282 -382Q277 -387 270 -387Q262 -387 255 -382T248 -368Q248 -361 322 -186Q311 -177 280 -166T222 -155Q189 -155 153 -173Q122 -186 106 -208T87 -248T82 -280T71 -294Q57 -294 57 -259Q57 -195 104 -148Q122 -126 155 -113T220 -99Q245 -99 276 -109T324 -127T342 -135Q397 -2 397 1Q386 10 367 23T302 58T222 80Q175 80 132 52T84 -28Q82 -59 70 -59",10891:"674 1003Q681 1003 687 999T694 983Q694 973 683 967Q669 959 420 868L162 772L422 676Q683 579 685 577Q694 571 694 560Q694 550 687 546T673 541Q669 542 384 647T93 755Q83 760 83 772Q83 783 91 788Q98 791 383 897T674 1003ZM84 354T84 367T98 387H679Q694 379 694 367Q694 354 679 347H98Q84 354 84 367ZM84 160T84 173T98 193H679Q694 185 694 173Q694 160 679 153H98Q84 160 84 173ZM94 -3Q102 -1 104 -1Q107 -2 392 -107T684 -215Q694 -219 694 -232Q694 -241 687 -247Q686 -248 395 -357Q106 -463 101 -463Q83 -461 83 -443Q83 -431 94 -426Q97 -423 357 -328L615 -232L355 -136Q94 -39 92 -37Q83 -31 83 -21Q83 -9 94 -3",10892:"104 541Q98 541 91 545T83 560Q83 571 92 577Q94 579 355 676L615 772L357 868Q108 959 94 967Q83 973 83 983Q83 989 87 996T104 1003Q109 1002 396 896T687 787Q694 781 694 772Q694 759 684 755Q678 752 393 647T104 541ZM84 367Q84 380 98 387H679Q694 379 694 367Q694 356 680 348L390 347H100Q84 352 84 367ZM84 173Q84 188 100 193H680Q694 183 694 173Q694 160 679 153H98Q84 160 84 173ZM674 -1Q682 -1 688 -6T694 -20Q694 -31 685 -37Q683 -39 422 -136L162 -232L420 -328Q680 -423 683 -426Q694 -431 694 -443Q694 -461 676 -463Q671 -463 382 -357Q91 -248 90 -247Q83 -242 83 -232Q83 -220 93 -215Q667 -1 674 -1",10901:"674 636Q682 636 688 631T694 616Q694 605 687 601Q685 599 395 462L107 326H101Q83 328 83 345Q83 358 96 365Q102 367 382 500T665 634Q671 636 674 636ZM674 442Q692 442 694 424Q694 412 687 407Q686 406 417 278L151 152L399 34Q687 -102 691 -107Q694 -113 694 -118Q694 -136 676 -138H670L382 -2Q92 135 90 137Q83 142 83 154Q84 165 96 171Q104 175 382 306T665 440Q669 442 674 442",10902:"83 616Q83 624 89 630T99 636Q107 636 253 568T543 431T687 361Q694 354 694 346Q694 328 676 326H670L382 462Q317 493 226 535Q119 585 101 595T83 616ZM94 440Q102 442 104 442Q110 441 254 373T535 240T678 172Q679 172 680 171Q694 164 694 153T687 137Q685 135 395 -2L107 -138H101Q83 -136 83 -118Q83 -106 93 -101L128 -84Q163 -68 230 -36T361 26L626 152L360 278Q91 406 90 407Q83 412 83 424Q84 434 94 440",10927:"84 346Q84 359 91 363T117 367Q120 367 126 367T137 366Q388 370 512 430T653 609Q657 636 676 636Q685 635 689 629T694 618V612Q689 566 672 528T626 463T569 417T500 383T435 362T373 346Q379 345 404 339T440 330T477 318T533 296Q592 266 630 223T681 145T694 78Q694 57 674 57Q662 57 657 67T652 92T640 135T606 191Q500 320 137 326H114Q104 326 98 327T88 332T84 346ZM84 -131T84 -118T98 -98H679Q694 -106 694 -118T679 -138H98Q84 -131 84 -118",10928:"84 614Q84 636 102 636Q115 636 119 626T125 600T137 556T171 501Q277 372 640 366H661Q694 366 694 346T661 326H640Q578 325 526 321T415 307T309 280T222 237T156 172T124 83Q122 66 118 62T103 57Q100 57 98 57T95 58T93 59T90 62T85 67Q83 71 83 80Q88 126 105 164T151 229T208 275T277 309T342 330T404 346Q401 347 380 351T345 360T302 373T245 396Q125 455 92 565Q84 599 84 614ZM84 -131T84 -118T98 -98H679Q694 -106 694 -118T679 -138H98Q84 -131 84 -118",10933:"653 734Q653 738 660 745T673 752T686 745T693 723Q672 555 466 485Q390 463 378 463Q373 463 373 461Q373 458 378 458Q390 458 466 436Q562 404 620 350Q682 283 693 198Q693 183 686 176Q681 170 674 170T660 176T653 187Q653 192 652 200T646 228T631 265T602 307T555 350Q435 431 151 441H95Q82 454 82 460T95 481H151Q165 482 197 483T238 485Q427 500 528 554T649 707Q653 729 653 734ZM82 33Q82 37 83 40T89 47T95 54H473L520 105Q569 156 571 156Q573 157 578 157Q586 157 592 151T598 136Q598 130 562 92L526 56L604 54H682Q693 43 693 35Q693 31 692 28T686 21T680 14H489L342 -139L513 -142H682Q693 -148 693 -160Q693 -167 680 -182H304L258 -230Q248 -240 237 -251T221 -268T211 -278T203 -284T197 -286Q189 -286 184 -280T178 -264Q178 -257 213 -219L249 -182H171L93 -179L86 -175Q82 -170 82 -163Q82 -155 95 -142H289L360 -64L433 14H262L93 16Q82 23 82 33",10934:"693 466T693 460T680 441H624Q608 439 577 438T538 436Q349 421 248 367T126 214Q122 192 122 187Q122 183 116 177T102 170Q95 170 89 176Q82 183 82 198Q93 283 155 350Q213 404 309 436Q385 458 398 458Q402 458 402 461Q402 463 398 463Q385 463 309 485Q103 555 82 723Q82 738 89 745T102 752T115 745T122 734Q122 721 126 701T155 640T220 572Q340 490 624 481H680Q693 466 693 460ZM82 33Q82 37 83 40T89 47T95 54H473L520 105Q569 156 571 156Q573 157 578 157Q586 157 592 151T598 136Q598 130 562 92L526 56L604 54H682Q693 43 693 35Q693 31 692 28T686 21T680 14H489L342 -139L513 -142H682Q693 -148 693 -160Q693 -167 680 -182H304L258 -230Q248 -240 237 -251T221 -268T211 -278T203 -284T197 -286Q189 -286 184 -280T178 -264Q178 -257 213 -219L249 -182H171L93 -179L86 -175Q82 -170 82 -163Q82 -155 95 -142H289L360 -64L433 14H262L93 16Q82 23 82 33",10935:"82 494T82 501T95 521H171Q405 527 511 569Q630 618 651 732Q652 734 653 740T655 748T658 754T663 759T672 761L686 754Q693 747 693 734Q684 668 648 623Q627 591 573 557T442 507L417 501Q428 496 442 494Q520 478 573 444T648 378Q684 333 693 267Q693 254 686 247Q673 234 659 245Q657 247 651 269Q630 383 511 432Q406 474 171 481H95Q82 494 82 501ZM70 -59Q57 -59 57 -26Q57 30 90 73T177 132Q191 136 226 136Q228 136 239 136T253 135T267 132T287 125T311 113T346 95T391 67Q462 20 502 5Q519 1 553 1Q586 1 602 5Q641 18 664 45T691 107Q694 136 704 136Q717 136 717 115V105Q717 39 671 -9T554 -58Q518 -58 481 -43T382 14Q302 63 273 74Q255 78 222 78Q188 78 173 74Q90 46 84 -28Q82 -59 70 -59ZM71 -294Q57 -294 57 -262Q57 -205 90 -162T177 -104Q191 -99 226 -99Q266 -103 277 -106Q310 -119 391 -168Q455 -212 502 -231Q519 -235 553 -235Q586 -235 602 -231Q640 -218 661 -195T686 -151T693 -115T704 -99Q717 -99 717 -121V-131Q717 -198 671 -246T556 -294Q519 -294 482 -279T382 -222Q307 -175 273 -162Q255 -157 222 -157Q188 -157 173 -162Q133 -175 110 -201T84 -264Q82 -294 71 -294",10936:"693 501Q693 493 679 481H604Q369 474 264 432Q143 382 124 269Q116 246 115 245Q101 234 88 247Q82 254 82 267Q89 329 126 378Q147 410 201 444T333 494L357 501Q354 502 340 505T318 510T295 516T269 525T243 535T215 548T188 565Q142 599 126 623Q89 672 82 734Q82 761 102 761L115 756Q116 755 124 732Q143 619 264 569Q371 527 604 521H679Q693 507 693 501ZM70 -59Q57 -59 57 -26Q57 30 90 73T177 132Q191 136 226 136Q228 136 239 136T253 135T267 132T287 125T311 113T346 95T391 67Q462 20 502 5Q519 1 553 1Q586 1 602 5Q641 18 664 45T691 107Q694 136 704 136Q717 136 717 115V105Q717 39 671 -9T554 -58Q518 -58 481 -43T382 14Q302 63 273 74Q255 78 222 78Q188 78 173 74Q90 46 84 -28Q82 -59 70 -59ZM71 -294Q57 -294 57 -262Q57 -205 90 -162T177 -104Q191 -99 226 -99Q266 -103 277 -106Q310 -119 391 -168Q455 -212 502 -231Q519 -235 553 -235Q586 -235 602 -231Q640 -218 661 -195T686 -151T693 -115T704 -99Q717 -99 717 -121V-131Q717 -198 671 -246T556 -294Q519 -294 482 -279T382 -222Q307 -175 273 -162Q255 -157 222 -157Q188 -157 173 -162Q133 -175 110 -201T84 -264Q82 -294 71 -294",10937:"82 494T82 501T95 521H171Q256 523 317 528T441 548T543 584T613 644T651 732Q652 734 653 740T655 748T658 754T663 759T672 761L686 754Q693 747 693 734Q686 686 664 647T615 586T548 545T482 518T417 501Q419 500 451 493T517 471T590 434T657 367T693 267Q693 241 673 241Q664 241 659 245Q656 249 650 273T635 323T593 380T511 432Q406 474 171 481H95Q82 494 82 501ZM57 -26Q57 39 101 87T219 136Q254 136 277 130Q320 114 382 72Q419 50 424 45Q426 45 459 110Q496 178 497 179Q500 180 504 180Q509 180 517 175T526 161Q526 158 495 90L462 25Q462 21 502 5Q519 1 553 1Q586 1 602 5Q641 18 664 45T691 107Q694 136 706 136T718 115Q718 114 718 111T717 105Q717 39 671 -9T554 -58L459 -33Q450 -29 444 -27T437 -26L371 -155L391 -168Q485 -235 538 -235H553Q586 -235 602 -230Q683 -204 691 -128Q694 -99 706 -99T718 -120Q718 -121 718 -124T717 -130Q717 -199 670 -246T557 -294T393 -228Q353 -205 351 -201Q348 -201 315 -266Q294 -310 285 -323T268 -337Q259 -337 254 -331T248 -317Q248 -305 282 -246L313 -181Q313 -177 273 -161Q255 -157 222 -157Q188 -157 173 -161Q134 -174 113 -198T88 -242T82 -278T71 -294Q57 -294 57 -261Q57 -204 91 -161T179 -104Q195 -99 228 -99Q274 -102 315 -124Q337 -132 337 -130L404 -1L384 12Q319 58 273 74Q255 79 222 79Q188 79 173 74Q133 61 112 37T88 -7T82 -43T70 -59Q57 -59 57 -26",10938:"693 501Q693 493 679 481H604Q548 479 509 477T418 469T331 454T257 429T194 392T150 340T124 270Q117 247 115 245Q101 236 88 247Q82 254 82 267Q89 330 126 379Q147 411 202 444T333 494L357 501Q239 531 188 565Q142 599 126 623Q89 672 82 734Q82 761 102 761L115 756Q116 755 124 732Q133 678 166 640T241 579T349 544T470 527T604 521H679Q693 507 693 501ZM57 -26Q57 39 101 87T219 136Q254 136 277 130Q320 114 382 72Q419 50 424 45Q426 45 459 110Q496 178 497 179Q500 180 504 180Q509 180 517 175T526 161Q526 158 495 90L462 25Q462 21 502 5Q519 1 553 1Q586 1 602 5Q641 18 664 45T691 107Q694 136 706 136T718 115Q718 114 718 111T717 105Q717 39 671 -9T554 -58L459 -33Q450 -29 444 -27T437 -26L371 -155L391 -168Q485 -235 538 -235H553Q586 -235 602 -230Q683 -204 691 -128Q694 -99 706 -99T718 -120Q718 -121 718 -124T717 -130Q717 -199 670 -246T557 -294T393 -228Q353 -205 351 -201Q348 -201 315 -266Q294 -310 285 -323T268 -337Q259 -337 254 -331T248 -317Q248 -305 282 -246L313 -181Q313 -177 273 -161Q255 -157 222 -157Q188 -157 173 -161Q134 -174 113 -198T88 -242T82 -278T71 -294Q57 -294 57 -261Q57 -204 91 -161T179 -104Q195 -99 228 -99Q274 -102 315 -124Q337 -132 337 -130L404 -1L384 12Q319 58 273 74Q255 79 222 79Q188 79 173 74Q133 61 112 37T88 -7T82 -43T70 -59Q57 -59 57 -26",10949:"84 463Q84 585 166 663T360 752Q361 752 370 752T395 752T430 752T475 753T524 753H679Q694 746 694 733Q694 724 681 714L522 713H470H441Q366 713 338 709T266 685Q244 674 224 659T179 617T139 550T124 463V458Q124 370 185 302Q244 238 328 220Q348 215 366 215T522 213H681Q694 203 694 193Q694 180 679 173H526Q510 173 480 173T434 172Q350 172 289 188T172 258Q84 340 84 463ZM84 -14T84 -1T98 19H679Q694 11 694 -1Q694 -14 679 -21H98Q84 -14 84 -1ZM84 -208T84 -195T98 -175H679Q694 -183 694 -195Q694 -208 679 -215H98Q84 -208 84 -195",10950:"83 733Q83 746 98 753H251Q267 753 297 753T343 754Q427 754 488 738T605 668Q693 587 693 463Q693 378 650 312T545 213T415 174Q407 173 251 173H98Q83 180 83 193Q83 203 96 213H255H308H337Q412 213 439 217T512 241Q533 252 553 267T599 309T639 376T654 463Q654 554 592 624Q557 662 512 685Q468 704 439 708T335 713H306H255L96 714Q83 724 83 733ZM84 -14T84 -1T98 19H679Q694 11 694 -1Q694 -14 679 -21H98Q84 -14 84 -1ZM84 -208T84 -195T98 -175H679Q694 -183 694 -195Q694 -208 679 -215H98Q84 -208 84 -195",10955:"693 221Q693 214 680 201H524Q398 201 367 202T309 212Q236 230 180 280T98 398Q84 438 84 492T98 585Q126 663 193 716T346 781Q347 781 373 781T440 782T520 783H680Q682 780 686 776T691 770T693 763T680 743H526Q364 743 353 741Q279 730 221 687T138 578Q124 540 124 492T138 405Q163 340 221 297T353 243Q364 241 526 241H680Q682 238 686 234T691 228T693 221ZM82 -48T82 -41T95 -19H462L513 41L569 105Q574 110 582 110T596 104T602 90Q602 87 600 83Q600 77 555 30L515 -17L600 -19H682Q693 -30 693 -38T680 -59H480L415 -137L349 -213L515 -215H682Q693 -226 693 -233T680 -255H313L260 -317Q224 -360 212 -372T192 -385Q184 -385 179 -377T173 -362Q174 -361 218 -306L260 -255H178L93 -253L86 -248Q82 -243 82 -235Q82 -226 93 -215H195L295 -213L362 -137L426 -59H260L93 -57L86 -53Q82 -48 82 -41",10956:"82 759T82 763T83 769T89 776T95 783H251Q378 783 409 782T469 772Q540 753 596 703T678 585Q691 546 691 492T678 398Q649 320 581 267T426 203Q415 201 251 201H95Q82 214 82 221Q82 225 83 227T89 234T95 241H249Q411 241 422 243Q496 253 554 296T638 405Q651 444 651 492Q651 539 638 578Q613 643 555 686T422 741Q411 743 249 743H95Q82 759 82 763ZM82 -48T82 -41T95 -19H462L513 41L569 105Q574 110 582 110T596 104T602 90Q602 87 600 83Q600 77 555 30L515 -17L600 -19H682Q693 -30 693 -38T680 -59H480L415 -137L349 -213L515 -215H682Q693 -226 693 -233T680 -255H313L260 -317Q224 -360 212 -372T192 -385Q184 -385 179 -377T173 -362Q174 -361 218 -306L260 -255H178L93 -253L86 -248Q82 -243 82 -235Q82 -226 93 -215H195L295 -213L362 -137L426 -59H260L93 -57L86 -53Q82 -48 82 -41",12296:"333 -232Q332 -239 327 -244T313 -250Q303 -250 296 -240Q293 -233 202 6T110 250T201 494T296 740Q299 745 306 749L309 750Q312 750 313 750Q331 750 333 732Q333 727 243 489Q152 252 152 250T243 11Q333 -227 333 -232",12297:"55 732Q56 739 61 744T75 750Q85 750 92 740Q95 733 186 494T278 250T187 6T92 -240Q85 -250 75 -250Q67 -250 62 -245T55 -232Q55 -227 145 11Q236 248 236 250T145 489Q55 727 55 732",57350:"91 417Q104 430 111 430T131 417V301L171 341Q201 373 207 378T220 384Q227 384 233 377T240 366Q240 357 187 299L131 244V-10Q116 -23 111 -23T91 -10V201L49 157Q20 127 14 121T0 115Q-8 115 -14 121T-20 132Q-20 139 17 178Q29 191 36 199L91 257V417",57351:"56 417Q68 431 76 431L89 426L96 419V317L98 215L193 273L291 330V375L293 419Q301 431 311 431Q331 431 331 388L333 355L356 370Q381 384 388 384Q394 384 400 377T407 363Q407 354 367 328L331 308V-10Q316 -23 310 -23Q300 -23 293 -12L291 135V284L98 168L96 77V-12Q84 -24 76 -24L62 -19L58 -12L56 66V144L31 128Q5 114 -2 114Q-8 114 -14 121T-20 136Q-20 142 -14 147T20 170L56 190V417",57352:"477 261Q477 257 473 256T455 253T417 251T348 250H235L155 -77L146 -82Q137 -85 109 -85Q55 -85 55 -77L139 261Q224 596 226 598Q229 603 239 603Q240 603 254 603T290 603T341 604T405 605T477 605Q656 603 687 602T719 596Q719 589 692 588T513 585H319L282 427L242 272Q242 270 351 270Q388 270 410 270T444 269T460 267T469 265T477 261",57353:"228 325Q170 322 156 316T127 309Q108 309 104 314Q99 319 99 322T108 341Q125 376 171 400T268 425H271Q302 425 319 396Q328 377 328 358Q328 332 324 314Q311 270 286 221Q274 194 274 192H275Q339 234 484 325T639 421Q669 434 691 434T723 425T734 406Q734 394 719 381Q715 376 644 330L575 287L566 267Q543 233 526 176Q520 160 515 143T508 115T506 105Q506 103 533 103Q585 103 607 110T641 118Q670 118 670 107Q670 100 661 85Q643 50 598 27T504 3Q465 3 450 36Q441 51 441 73Q441 84 444 96Q452 146 484 205L497 236L324 125Q143 12 135 10Q103 -6 77 -6Q61 -6 49 2T37 21Q37 36 49 46T124 96L195 141L204 156Q219 179 243 248T264 323Q264 325 228 325",57356:"86 472Q93 477 381 614T673 752Q680 752 686 746T693 732T689 721Q686 715 418 590L151 461L418 332Q684 207 689 201Q693 195 693 190Q693 183 687 177T675 170Q668 170 380 307T86 450Q82 454 82 461Q82 467 86 472ZM369 101V126Q369 156 382 156H384Q385 157 386 157Q409 157 409 115V98V54H680Q693 39 693 34T680 14H409V-142H680Q693 -155 693 -162Q693 -167 680 -182H409V-273Q396 -284 388 -284Q382 -284 369 -275V-182H95Q82 -167 82 -162Q82 -155 95 -142H369V14H95Q93 17 89 21T84 27T82 34T83 40T89 47T95 54H369V101",57357:"89 745Q95 752 100 752Q106 752 394 615T689 472Q693 468 693 461T689 450Q684 445 396 308T100 170Q95 170 89 176T82 190Q82 195 86 201Q91 208 358 332L624 461L358 590Q90 715 86 721Q82 725 82 731Q82 739 89 745ZM369 101V126Q369 156 382 156H384Q385 157 386 157Q409 157 409 115V98V54H680Q693 39 693 34T680 14H409V-142H680Q693 -155 693 -162Q693 -167 680 -182H409V-273Q396 -284 388 -284Q382 -284 369 -275V-182H95Q82 -167 82 -162Q82 -155 95 -142H369V14H95Q93 17 89 21T84 27T82 34T83 40T89 47T95 54H369V101",57358:"97 172Q82 172 82 190Q82 197 86 201Q94 209 173 246T327 319T402 357Q405 360 434 448T462 539L278 628Q96 713 86 721Q82 725 82 732T88 745T102 752Q103 752 125 742T198 709T293 666Q342 642 385 622T453 590T478 579Q479 579 506 659T562 824T598 915Q602 919 609 919T622 913T629 901Q629 898 571 728Q546 656 531 608T518 559Q555 539 602 519Q664 488 679 479T694 461Q694 457 689 450Q680 443 616 413T494 356T435 326L389 190L342 57L513 55H682Q694 43 694 34Q694 28 689 21L682 17L506 15H329L322 -8Q320 -13 310 -41T295 -85L275 -141H680Q682 -143 684 -146T688 -151T691 -156T693 -162Q693 -172 682 -179L473 -181H262L220 -303Q192 -388 185 -404T166 -421Q160 -421 153 -415T146 -403Q146 -400 179 -302T220 -185Q220 -181 158 -181L93 -179L86 -174Q82 -169 82 -161Q82 -152 93 -141H164L233 -139L260 -63L286 15H189L93 17L86 21Q82 26 82 34Q82 44 93 55H198L300 57L342 179Q350 204 361 238T378 286T382 301L246 237Q111 172 97 172ZM624 461Q621 464 560 492Q512 518 503 518Q500 518 500 517Q499 513 488 479T465 413T453 379L624 461",57359:"97 54Q82 54 82 72Q82 79 86 84Q95 91 222 153L351 215L398 324L442 433L258 519Q95 597 87 604Q82 608 82 615T88 628T102 635Q107 635 424 484L458 468L524 630Q593 789 597 795Q601 801 609 801Q616 801 622 795T629 781L562 615L493 450L589 406Q665 371 679 362T694 344Q694 339 693 337T677 326T631 302T538 257Q504 241 465 223T406 195T386 186Q383 185 344 92T306 -3L486 81Q662 168 673 168Q680 168 686 162T693 148T689 137Q688 136 482 35L280 -59L233 -176Q184 -291 178 -299Q172 -303 166 -303T153 -297T146 -283Q146 -279 185 -186T224 -90Q225 -88 223 -88Q219 -88 193 -101Q109 -143 98 -143Q82 -138 82 -122Q82 -116 85 -113T108 -98T171 -67L249 -30L289 61Q297 81 307 107T321 144T326 157L218 106Q109 54 97 54ZM553 379Q480 412 480 415Q479 415 460 372T423 285T406 241Q408 240 516 291T624 344L553 379",57360:"102 168Q103 168 151 146T247 102T295 81Q299 85 322 144T344 206L218 268Q153 297 123 313T87 333T82 344T86 355Q104 369 291 455Q491 552 491 553L542 673Q581 767 590 784T609 801Q616 801 622 795T629 781Q629 773 586 677Q546 581 546 577L609 606Q669 635 673 635Q680 635 686 629T693 615Q693 610 692 608T670 593T604 561L524 521L400 226L542 157Q617 123 649 107T687 85T694 72Q694 66 690 60T679 54Q665 54 526 119Q394 186 386 186Q385 186 342 88L331 61L509 -23Q680 -105 688 -111Q693 -115 693 -122T688 -135T675 -141H673Q664 -141 491 -59Q320 21 316 21H315L249 -136Q183 -293 178 -299Q172 -303 166 -303T153 -297T146 -283Q146 -282 154 -261T181 -197T213 -119L280 41Q280 46 186 86Q157 101 121 119Q92 133 87 136T82 148Q82 155 88 161T102 168ZM418 370L466 495Q464 495 308 420T151 344T204 317T311 267T364 244Q364 247 418 370",57361:"82 34Q82 44 93 55H198L300 57L342 179Q351 207 362 238T378 286T384 303T238 377Q109 435 86 450Q82 454 82 460T86 472Q90 476 302 579L511 679Q512 679 553 795Q569 842 577 866T592 903T600 917T608 919Q615 919 622 912T629 901Q629 899 595 799Q589 777 581 753T569 717T564 703L618 728Q666 752 673 752T686 746T693 732Q693 723 683 717T615 683L546 650L491 488Q464 410 450 368T438 326Q493 297 562 266Q660 219 677 209T694 190Q694 183 690 177T678 171Q664 171 546 228L424 286Q422 286 382 172L342 57L513 55H682Q694 43 694 34Q694 28 689 21L682 17L506 15H329L322 -8Q320 -13 310 -41T295 -85L275 -141H680Q682 -143 684 -146T688 -151T691 -156T693 -162Q693 -172 682 -179L473 -181H262L220 -303Q192 -388 185 -404T166 -421Q160 -421 153 -415T146 -403Q146 -400 179 -302T220 -185Q220 -181 158 -181L93 -179L86 -174Q82 -169 82 -161Q82 -152 93 -141H164L233 -139L260 -63L286 15H189L93 17L86 21Q82 26 82 34ZM495 623Q495 626 493 626T321 544T151 461L398 343Q399 343 405 360T423 415T446 483Q457 513 469 551T488 606T495 623",57366:"82 -6Q82 1 95 14H262L295 94Q331 171 331 174Q324 175 312 178T267 194T206 227T146 283T98 368Q84 406 84 461T98 554Q126 632 194 685T349 750Q360 752 480 752H591L604 783Q620 819 624 821Q631 828 640 828Q653 825 658 810Q658 808 646 781L635 754Q635 752 658 752Q680 752 686 746Q693 739 693 732Q693 728 692 726T686 719T680 712H615L506 466Q479 407 451 344T408 248T393 214Q393 210 535 210H680Q693 194 693 190T680 170H373L340 92L304 14H680Q693 1 693 -6Q693 -11 680 -26H286L253 -103L218 -179L451 -181H682Q694 -193 694 -201Q694 -212 682 -219L440 -221H200L178 -270Q160 -309 154 -319T139 -330Q122 -330 118 -312L155 -223Q155 -221 126 -221H95Q82 -206 82 -201T95 -181H175L206 -108Q237 -35 242 -30Q242 -26 169 -26H95Q82 -11 82 -6ZM571 710Q571 712 469 712Q443 712 416 712T371 711T351 710Q279 700 221 656T138 548Q124 508 124 461T138 374Q186 245 351 212L460 459Q571 709 571 710",57367:"82 -14T82 -7T95 15H431L529 170H435Q341 170 333 175Q149 218 98 368Q84 406 84 461Q84 515 98 555Q126 633 193 686T346 750Q347 750 373 750T440 751T520 752H680Q693 739 693 732Q693 727 680 712H526Q364 712 353 710Q268 700 207 646T126 512Q123 496 123 461T126 410Q141 350 180 304T280 232Q312 217 344 214T464 210H555L589 261Q613 301 620 311T635 321Q644 321 650 315T657 301Q657 296 651 286T630 252T604 212Q604 210 642 210H680Q693 197 693 190Q693 186 692 184T686 177T680 170H578L526 92L478 17L580 15H682Q693 4 693 -4T680 -25H451L353 -179L518 -181H682Q694 -193 694 -201Q694 -211 682 -219L504 -221H326L293 -272Q257 -332 246 -332Q238 -332 232 -326T225 -313Q225 -310 226 -308Q226 -305 251 -265T278 -223Q278 -221 186 -221H95Q93 -218 89 -214T84 -208T82 -201T95 -181H306L404 -25H249L93 -23L86 -19Q82 -14 82 -7",57368:"82 732Q82 739 95 752H251H348Q420 752 460 744T551 708Q566 697 566 701Q618 815 624 821Q631 828 640 828Q653 825 658 810L600 677Q600 671 615 656T653 605T689 517Q692 496 692 461T689 406Q668 325 615 266Q572 221 513 196T391 170H373L340 92L304 14H680Q693 1 693 -6Q693 -11 680 -26H286L253 -103L218 -179L451 -181H682Q694 -193 694 -201Q694 -212 682 -219L440 -221H200L178 -270Q160 -309 154 -319T139 -330Q122 -330 118 -312L155 -223Q155 -221 126 -221H95Q82 -206 82 -201T95 -181H175L206 -108Q237 -35 242 -30Q242 -26 169 -26H95Q82 -11 82 -6Q82 1 95 14H262L295 92L331 170H95Q93 172 91 175T87 180T84 185T82 191Q82 199 93 210H220L349 212L549 659Q507 692 462 702T338 712H249H95Q82 727 82 732ZM652 473Q652 513 636 552T603 611T582 632Q581 632 487 422T393 210Q424 210 460 220T535 253T605 316T649 410Q652 427 652 461V473",57369:"82 732Q82 739 95 752H251Q415 752 426 750Q539 736 615 657Q667 599 689 517Q692 496 692 461T689 406Q668 325 615 266Q522 170 382 170H355L326 95Q319 80 311 59T298 28T293 17Q293 15 486 15H680Q693 0 693 -6T680 -25H275L213 -179L449 -181H682Q693 -192 693 -199T680 -221H198L178 -270Q153 -333 139 -333Q132 -333 126 -327T119 -314T135 -266T153 -223Q153 -221 124 -221H95Q82 -207 82 -201T95 -181H171L233 -25H162L93 -23L86 -19Q82 -14 82 -7T95 15H251L313 170H202L93 172L86 177Q82 182 82 190Q82 199 93 210H211L329 212L349 261Q366 301 372 311T386 321Q392 321 399 315T407 302Q407 295 390 254T373 210Q374 209 377 209Q412 209 444 217Q512 231 564 273T638 377Q651 414 651 461Q651 509 638 548Q613 613 555 656T422 710Q411 712 249 712H95Q82 727 82 732",57370:"693 -115T693 -122T680 -144H315L269 -199Q221 -255 213 -255H212Q203 -255 197 -248T193 -231Q195 -225 229 -184L262 -144H186L113 -142L106 -137Q102 -130 102 -125Q102 -119 115 -104H298L426 52H386Q342 54 309 63Q236 79 180 129T98 249Q84 289 84 343Q84 398 98 436Q126 514 193 567T346 632Q347 632 373 632T440 633T520 634H680Q682 631 686 627T691 621T693 614T680 594H526Q364 594 353 592Q268 581 207 528T126 394Q123 378 123 343T126 292Q141 231 181 185T280 114Q329 92 415 92H462L506 147Q554 203 562 203H563Q572 203 578 196T582 178Q579 173 546 132L513 94L598 92H682Q693 81 693 73T680 52H480L349 -102L515 -104H682Q693 -115 693 -122",57371:"82 610T82 614T83 620T89 627T95 634H251Q378 634 409 633T469 623Q540 604 596 554T678 436Q691 397 691 343T678 249Q653 181 597 131T469 63Q427 52 362 52H315L213 -102L438 -104H662Q673 -115 673 -123Q673 -129 660 -144H186L151 -197Q114 -250 109 -253Q106 -254 104 -254Q100 -254 98 -253Q91 -253 87 -248T82 -235Q82 -230 109 -186L138 -144H115Q82 -144 82 -125Q82 -119 95 -104H166L266 49Q266 52 182 52H95Q82 65 82 72Q82 76 83 78T89 85T95 92H295L329 143Q365 195 369 198Q372 203 380 203Q385 203 391 197T398 185Q398 184 398 184L399 182Q399 175 369 129L344 94Q344 92 376 92Q402 92 422 94Q496 104 554 147T638 256Q651 295 651 343Q651 390 638 429Q613 494 555 537T422 592Q411 594 249 594H95Q82 610 82 614",119808:"296 0Q278 3 164 3Q58 3 49 0H40V62H92Q144 62 144 64Q388 682 397 689Q403 698 434 698Q463 698 471 689Q475 686 538 530T663 218L724 64Q724 62 776 62H828V0H817Q796 3 658 3Q509 3 485 0H472V62H517Q561 62 561 63L517 175H262L240 120Q218 65 217 64Q217 62 261 62H306V0H296ZM390 237L492 238L440 365Q390 491 388 491Q287 239 287 237H390",119809:"720 510Q720 476 704 448T665 404T619 377T580 362L564 359L583 356Q602 353 632 342T690 312Q712 292 725 276Q752 235 752 189V183Q752 160 741 125Q698 18 547 2Q543 1 288 0H39V62H147V624H39V686H264H409Q502 686 542 681T624 655Q720 607 720 510ZM563 513Q563 553 548 578T518 611T486 622Q479 624 385 624H293V382H375Q458 383 467 385Q563 405 563 513ZM590 192Q590 307 505 329Q504 330 503 330L398 331H293V62H391H400H444Q496 62 528 75T580 131Q590 155 590 192",119810:"64 343Q64 502 174 599T468 697Q502 697 533 691T586 674T623 655T647 639T657 632L694 663Q703 670 711 677T723 687T730 692T735 695T740 696T746 697Q759 697 762 692T766 668V627V489V449Q766 428 762 424T742 419H732H720Q699 419 697 436Q690 498 657 545Q611 618 532 632Q522 634 496 634Q356 634 286 553Q232 488 232 343T286 133Q355 52 497 52Q597 52 650 112T704 237Q704 248 709 251T729 254H735Q750 254 755 253T763 248T766 234Q766 136 680 63T469 -11Q285 -11 175 86T64 343",119811:"39 624V686H270H310H408Q500 686 545 680T638 649Q768 584 805 438Q817 388 817 338Q817 171 702 75Q628 17 515 2Q504 1 270 0H39V62H147V624H39ZM655 337Q655 370 655 390T650 442T639 494T616 540T580 580T526 607T451 623Q443 624 368 624H298V62H377H387H407Q445 62 472 65T540 83T606 129Q629 156 640 195T653 262T655 337",119812:"723 286Q721 284 700 145T677 3V0H39V62H147V618H39V680H660V676Q662 670 675 552T691 428V424H629V428Q629 429 627 448T618 494T601 541Q574 593 527 605T382 618H374H304V384H336Q338 384 347 384T361 384T376 386T392 390T407 397T421 407T432 423Q442 444 443 482V501H505V205H443V224Q442 258 435 278T411 307T380 318T336 322H304V62H375H394Q429 62 449 62T497 66T541 76T577 95T609 126T632 170T651 232Q661 287 661 289H723V286",119813:"425 0L228 3Q63 3 51 0H39V62H147V618H39V680H644V676Q647 670 659 552T675 428V424H613Q613 433 605 477Q599 511 589 535T562 574T530 599T488 612T441 617T387 618H368H304V371H333Q389 373 411 390T437 468V488H499V192H437V212Q436 244 430 263T408 292T378 305T333 309H304V62H439V0H425",119814:"465 -10Q281 -10 173 88T64 343Q64 413 85 471T143 568T217 631T298 670Q371 697 449 697Q452 697 459 697T470 696Q502 696 531 690T582 675T618 658T644 641T656 632L732 695Q734 697 745 697Q758 697 761 692T765 668V627V489V449Q765 428 761 424T741 419H731H724Q705 419 702 422T695 444Q683 520 631 577T495 635Q364 635 295 563Q261 528 247 477T232 343Q232 296 236 260T256 185T296 120T366 76T472 52Q481 51 498 51Q544 51 573 67T607 108Q608 111 608 164V214H464V276H479Q506 273 680 273Q816 273 834 276H845V214H765V113V51Q765 16 763 8T750 0Q742 2 709 16T658 40L648 46Q592 -10 465 -10",119815:"400 0Q376 3 226 3Q75 3 51 0H39V62H147V624H39V686H51Q75 683 226 683Q376 683 400 686H412V624H304V388H595V624H487V686H499Q523 683 673 683Q824 683 848 686H860V624H752V62H860V0H848Q824 3 674 3Q523 3 499 0H487V62H595V326H304V62H412V0H400",119816:"397 0Q370 3 218 3Q65 3 38 0H25V62H139V624H25V686H38Q65 683 218 683Q370 683 397 686H410V624H296V62H410V0H397",119817:"174 114Q174 96 169 82T159 63T144 47L155 45Q183 40 203 40Q271 40 290 104Q294 118 294 150T295 380V624H154V686H169Q196 683 365 683Q499 683 517 686H527V624H446V379Q446 183 446 153T441 108Q413 32 315 2Q266 -11 208 -11Q160 -11 118 -2T42 37T8 114V122Q8 150 30 174T91 198T152 174T174 122V114",119818:"400 0Q376 3 226 3Q75 3 51 0H39V62H147V624H39V686H51Q75 683 226 683Q376 683 400 686H412V624H304V338L472 483L634 624H565V686H576Q597 683 728 683Q814 683 829 686H836V624H730L614 524Q507 432 497 422Q496 422 498 418T514 395T553 342T627 241L759 63L805 62H852V0H842Q830 3 701 3Q550 3 526 0H513V62H549Q584 62 584 63Q583 65 486 196T388 328L304 256V62H412V0H400",119819:"643 285Q641 280 629 148T612 4V0H39V62H147V624H39V686H51Q75 683 228 683Q415 685 425 686H439V624H304V62H352H378Q492 62 539 138Q551 156 558 178T569 214T576 255T581 289H643V285",119820:"314 0Q296 3 181 3T48 0H39V62H147V624H39V686H305Q316 679 323 667Q330 653 434 414L546 157L658 414Q766 662 773 674Q778 681 788 686H1052V624H944V62H1052V0H1040Q1016 3 874 3T708 0H696V62H804V341L803 618L786 580Q770 543 735 462T671 315Q540 13 536 9Q528 1 507 1Q485 1 477 9Q472 14 408 162T281 457T217 603Q215 603 215 334V62H323V0H314",119821:"314 0Q296 3 181 3T48 0H39V62H147V624H39V686H171H265Q288 686 297 686T309 684T315 679Q317 676 500 455T684 233V624H576V686H585Q603 683 718 683T851 686H860V624H752V319Q752 15 750 11Q747 4 742 2T718 0H712Q708 0 706 0T700 0T696 1T693 2T690 4T687 7T684 11T679 16T674 23Q671 27 437 311L215 579V62H323V0H314",119822:"64 339Q64 431 96 502T182 614T295 675T420 696Q469 696 481 695Q620 680 709 589T798 339Q798 173 697 82T432 -10Q262 -10 163 85T64 339ZM625 454Q618 502 600 538T562 593T515 624T469 639T431 642Q331 642 276 563Q232 493 232 353Q232 315 234 285T244 216T267 148T308 94T372 56Q405 46 432 46Q517 46 567 106T627 267Q631 299 631 353Q631 418 625 454",119823:"400 0Q376 3 226 3Q75 3 51 0H39V62H147V624H39V686H253Q435 686 470 685T536 678Q585 668 621 648T675 605T705 557T718 514T721 483T718 451T704 409T673 362T616 322T530 293Q500 288 399 287H304V62H412V0H400ZM553 475Q553 554 537 582T459 622Q451 623 373 624H298V343H372Q457 344 480 350Q527 362 540 390T553 475",119824:"64 339Q64 431 96 502T182 614T295 675T420 696Q469 696 481 695Q620 680 709 589T798 339Q798 255 768 184Q720 77 611 26L600 21Q635 -26 682 -26H696Q769 -26 769 0Q769 7 774 12T787 18Q805 18 805 -7V-13Q803 -64 785 -106T737 -171Q720 -183 697 -191Q687 -193 668 -193Q636 -193 613 -182T575 -144T552 -94T532 -27Q531 -23 530 -16T528 -6T526 -3L512 -5Q499 -7 477 -8T431 -10Q393 -10 382 -9Q238 8 151 97T64 339ZM326 80Q326 113 356 138T430 163Q492 163 542 100L553 86Q554 85 561 91T578 108Q637 179 637 330Q637 430 619 498T548 604Q500 641 425 641Q408 641 390 637T347 623T299 590T259 535Q226 469 226 338Q226 244 246 180T318 79L325 74Q326 74 326 80ZM506 58Q480 112 433 112Q412 112 395 104T378 77Q378 44 431 44Q480 44 506 58",119825:"394 0Q370 3 222 3Q75 3 51 0H39V62H147V624H39V686H234Q256 686 299 686T362 687Q479 687 554 669T681 593Q716 550 716 497Q716 390 568 338Q569 337 572 336T577 332Q605 317 623 300T650 258T662 218T668 172Q678 98 689 76Q707 40 748 40Q770 40 780 54T795 88T801 111Q805 117 827 117H831Q846 117 852 113T858 92Q857 78 852 63T834 30T797 1T739 -11Q630 -11 580 12T511 87Q506 104 506 168Q506 170 506 178T507 194Q507 289 438 313Q424 318 356 318H298V62H406V0H394ZM366 369Q459 370 490 381Q548 402 548 476V498V517Q548 578 513 600Q479 624 392 624H358H298V369H366",119826:"64 493Q64 582 120 636T264 696H272Q280 697 285 697Q380 697 454 645L480 669Q484 672 488 676T495 683T500 688T504 691T508 693T511 695T514 696T517 697T522 697Q536 697 539 691T542 652V577Q542 557 542 532T543 500Q543 472 540 465T524 458H511H505Q489 458 485 461T479 478Q472 529 449 564T393 614T336 634T287 639Q228 639 203 610T177 544Q177 517 195 493T247 457Q253 454 343 436T475 391Q574 326 574 207V200Q574 163 559 120Q517 12 389 -9Q380 -10 346 -10Q308 -10 275 -5T221 7T184 22T160 35T151 40L126 17Q122 14 118 10T111 3T106 -2T102 -5T98 -7T95 -9T92 -10T89 -11T84 -11Q70 -11 67 -4T64 35V108Q64 128 64 153T63 185Q63 203 63 211T69 223T77 227T94 228H100Q118 228 122 225T126 205Q130 125 193 88T345 51Q408 51 434 82T460 157Q460 196 439 221T388 257Q384 259 305 276T221 295Q155 313 110 366T64 493",119827:"41 425Q41 426 51 545T62 669V675H737V669Q738 665 748 546T758 425V419H696V425Q687 517 669 555T595 607Q578 612 522 613H478V62H631V0H615Q585 3 399 3Q214 3 184 0H168V62H321V613H277H263Q164 613 134 561Q113 527 103 425V419H41V425",119828:"570 686Q588 683 703 683T836 686H845V624H737V420Q737 390 737 345T738 284Q738 205 729 164T689 83Q614 -11 465 -11Q321 -11 240 51T148 207Q147 214 147 421V624H39V686H51Q75 683 226 683Q376 683 400 686H412V624H304V405V370V268Q304 181 311 146T346 87Q387 52 466 52Q642 52 667 195Q668 204 669 415V624H561V686H570",119829:"592 686H604Q615 685 631 685T666 684T700 684T724 683Q829 683 835 686H843V624H744L611 315Q584 254 546 165Q492 40 482 19T461 -6L460 -7H409Q398 -4 391 9Q385 20 257 315L124 624H25V686H36Q57 683 190 683Q340 683 364 686H377V624H289L384 403L480 185L492 212Q504 240 529 298T575 405L670 624H582V686H592",119830:"915 686L1052 683Q1142 683 1157 686H1164V624H1073L957 320Q930 249 900 170T855 52T839 10Q834 0 826 -5Q821 -7 799 -7H792Q777 -7 772 -5T759 10Q759 11 748 39T716 122T676 228L594 442L512 228Q486 159 455 78Q433 19 428 9T416 -5Q411 -7 389 -7H379Q356 -7 349 10Q349 12 334 51T288 170T231 320L116 624H24V686H35Q44 683 183 683Q331 683 355 686H368V624H323Q278 624 278 623L437 207L499 369L561 531L526 624H434V686H445Q454 683 593 683Q741 683 765 686H778V624H733Q688 624 688 623L847 207Q848 207 927 415T1006 624H905V686H915",119831:"327 0Q306 3 174 3Q52 3 43 0H33V62H98L162 63L360 333L157 624H48V686H59Q80 683 217 683Q368 683 395 686H408V624H335L393 540L452 458L573 623Q573 624 528 624H483V686H494Q515 683 646 683Q769 683 778 686H787V624H658L575 511Q493 398 493 397L508 376Q522 356 553 312T611 229L727 62H835V0H824Q803 3 667 3Q516 3 489 0H476V62H513L549 63L401 274L247 63Q247 62 292 62H338V0H327",119832:"605 0Q581 3 434 3Q286 3 262 0H250V62H358V275L126 624H19V686H30Q54 683 189 683Q361 685 370 686H383V624H308L319 608Q330 591 353 556T396 491L484 359L660 623Q660 624 623 624H585V686H595Q613 683 728 683Q832 683 841 686H849V624H742L509 274V62H618V0H605",119833:"80 430L92 686H358Q624 686 628 684Q638 679 638 656Q638 640 637 639Q637 638 445 353Q401 288 351 214T277 103L253 67L256 66Q258 66 265 66T279 66T298 66H343Q380 66 406 68T464 81T518 110T557 164T579 250Q583 278 583 298Q583 299 614 299H645V291Q643 281 636 150T627 8V0H353Q79 0 75 2Q64 7 64 31Q64 48 66 52L259 340L451 623Q451 624 384 624Q294 623 259 612Q155 581 143 446Q142 440 142 432V430H80",119834:"64 349Q64 399 107 426T255 453Q346 453 402 423T473 341Q478 327 478 310T479 196V77Q493 63 529 62Q549 62 553 57T558 31Q558 9 552 5T514 0H497H481Q375 0 367 56L356 46Q300 -6 210 -6Q130 -6 81 30T32 121Q32 188 111 226T332 272H350V292Q350 313 348 327T337 361T306 391T248 402T194 399H189Q204 376 204 354Q204 327 187 306T134 284Q97 284 81 305T64 349ZM164 121Q164 89 186 67T238 45Q274 45 307 63T346 108L350 117V226H347Q248 218 206 189T164 121",119835:"32 686L123 690Q214 694 215 694H221V409Q289 450 378 450Q479 450 539 387T600 221Q600 122 535 58T358 -6H355Q272 -6 203 53L160 1L129 0H98V301Q98 362 98 435T99 525Q99 591 97 604T83 620Q69 624 42 624H29V686H32ZM227 105L232 99Q237 93 242 87T258 73T280 59T306 49T339 45Q380 45 411 66T451 131Q457 160 457 230Q457 264 456 284T448 329T430 367T396 389T343 398Q282 398 235 355L227 348V105",119836:"447 131H458Q478 131 478 117Q478 112 471 95T439 51T377 9Q330 -6 286 -6Q196 -6 135 35Q39 96 39 222Q39 324 101 384Q169 453 286 453Q359 453 411 431T464 353Q464 319 445 302T395 284Q360 284 343 305T325 353Q325 380 338 396H333Q317 398 295 398H292Q280 398 271 397T245 390T218 373T197 338T183 283Q182 275 182 231Q182 199 184 180T193 132T220 85T270 57Q289 50 317 50H326Q385 50 414 115Q419 127 423 129T447 131",119837:"351 686L442 690Q533 694 534 694H540V389Q540 327 540 253T539 163Q539 97 541 83T555 66Q569 62 596 62H609V31Q609 0 608 0Q588 0 510 -3T412 -6Q411 -6 411 16V38L401 31Q337 -6 265 -6Q159 -6 99 58T38 224Q38 265 51 303T92 375T165 429T272 449Q359 449 417 412V507V555Q417 597 415 607T402 620Q388 624 361 624H348V686H351ZM411 350Q362 399 291 399Q278 399 256 392T218 371Q195 351 189 320T182 238V221Q182 179 183 159T191 115T212 74Q241 46 288 46Q358 46 404 100L411 109V350",119838:"32 225Q32 332 102 392T272 452H283Q382 452 436 401Q494 343 494 243Q494 226 486 222T440 217Q431 217 394 217T327 218H175V209Q175 177 179 154T196 107T236 69T306 50Q312 49 323 49Q376 49 410 85Q421 99 427 111T434 127T442 133T463 135H468Q494 135 494 117Q494 110 489 97T468 66T431 32T373 5T292 -6Q181 -6 107 55T32 225ZM383 276Q377 346 348 374T280 402Q253 402 230 390T195 357Q179 331 176 279V266H383V276",119839:"308 0Q290 3 172 3Q58 3 49 0H40V62H109V382H42V444H109V503L110 562L112 572Q127 625 178 658T316 699Q318 699 330 699T348 700Q381 698 404 687T436 658T449 629T452 606Q452 576 432 557T383 537Q355 537 335 555T314 605Q314 635 328 649H325Q311 649 293 644T253 618T227 560Q226 555 226 498V444H340V382H232V62H318V0H308",119840:"50 300Q50 368 105 409T255 450Q328 450 376 426L388 420Q435 455 489 455Q517 455 533 441T554 414T558 389Q558 367 544 353T508 339Q484 339 471 354T458 387Q458 397 462 400Q464 401 461 400Q459 400 454 399Q429 392 427 390Q454 353 459 328Q461 315 461 300Q461 240 419 202Q364 149 248 149Q185 149 136 172Q129 158 129 148Q129 105 170 93Q176 91 263 91Q273 91 298 91T334 91T366 89T400 85T432 77T466 64Q544 22 544 -69Q544 -114 506 -145Q438 -201 287 -201Q149 -201 90 -161T30 -70Q30 -58 33 -47T42 -27T54 -13T69 -1T82 6T94 12T101 15Q66 57 66 106Q66 151 90 187L97 197L89 204Q50 243 50 300ZM485 403H492Q491 404 488 404L485 403V403ZM255 200Q279 200 295 206T319 219T331 242T335 268T336 300Q336 337 333 352T317 380Q298 399 255 399Q228 399 211 392T187 371T178 345T176 312V300V289Q176 235 194 219Q215 200 255 200ZM287 -150Q357 -150 400 -128T443 -71Q443 -65 442 -61T436 -50T420 -37T389 -27T339 -21L308 -20Q276 -20 253 -20Q190 -20 180 -20T156 -26Q130 -38 130 -69Q130 -105 173 -127T287 -150",119841:"40 686L131 690Q222 694 223 694H229V533L230 372L238 381Q248 394 264 407T317 435T398 450Q428 450 448 447T491 434T529 402T551 346Q553 335 554 198V62H623V0H614Q596 3 489 3Q374 3 365 0H356V62H425V194V275Q425 348 416 373T371 399Q326 399 288 370T238 290Q236 281 235 171V62H304V0H295Q277 3 171 3Q64 3 46 0H37V62H106V332Q106 387 106 453T107 534Q107 593 105 605T91 620Q77 624 50 624H37V686H40",119842:"72 610Q72 649 98 672T159 695Q193 693 217 670T241 610Q241 572 217 549T157 525Q120 525 96 548T72 610ZM46 442L136 446L226 450H232V62H294V0H286Q271 3 171 3Q67 3 49 0H40V62H109V209Q109 358 108 362Q103 380 55 380H43V442H46",119843:"104 610Q104 649 130 672T191 695Q225 693 249 670T273 610Q273 572 249 549T189 525Q152 525 128 548T104 610ZM78 442L173 446L268 450H274V196Q274 -5 274 -37T269 -83Q256 -132 201 -166T71 -200Q10 -200 -30 -173T-71 -102Q-71 -70 -51 -51T-1 -31Q27 -31 48 -49T69 -100Q69 -121 53 -147H56Q66 -149 77 -149H80Q90 -149 100 -146T127 -125T149 -73Q151 -55 151 149V362Q150 364 148 366T145 370T142 373T138 375T133 377T124 378T113 379T97 380H75V442H78",119844:"32 686L123 690Q214 694 215 694H221V255L377 382H346V444H355Q370 441 476 441Q544 441 556 444H562V382H476L347 277L515 62H587V0H579Q564 3 476 3Q370 3 352 0H343V62H358L373 63L260 206L237 189L216 172V62H285V0H277Q259 3 157 3Q46 3 37 0H29V62H98V332Q98 387 98 453T99 534Q99 593 97 605T83 620Q69 624 42 624H29V686H32",119845:"43 686L134 690Q225 694 226 694H232V62H301V0H292Q274 3 170 3Q67 3 49 0H40V62H109V332Q109 387 109 453T110 534Q110 593 108 605T94 620Q80 624 53 624H40V686H43",119846:"40 442Q217 450 218 450H224V365Q226 367 235 378T254 397T278 416T314 435T362 448Q376 450 400 450H406Q503 450 534 393Q545 376 545 370Q545 368 555 379Q611 450 716 450Q774 450 809 434Q850 414 861 379T873 276V213V198V62H942V0H933Q915 3 809 3Q702 3 684 0H675V62H744V194V275Q744 348 735 373T690 399Q645 399 607 370T557 290Q555 281 554 171V62H623V0H614Q596 3 489 3Q374 3 365 0H356V62H425V194V275Q425 348 416 373T371 399Q326 399 288 370T238 290Q236 281 235 171V62H304V0H295Q277 3 171 3Q64 3 46 0H37V62H106V210V303Q106 353 104 363T91 376Q77 380 50 380H37V442H40",119847:"40 442Q217 450 218 450H224V407L225 365Q233 378 245 391T289 422T362 448Q374 450 398 450Q428 450 448 447T491 434T529 402T551 346Q553 335 554 198V62H623V0H614Q596 3 489 3Q374 3 365 0H356V62H425V194V275Q425 348 416 373T371 399Q326 399 288 370T238 290Q236 281 235 171V62H304V0H295Q277 3 171 3Q64 3 46 0H37V62H106V210V303Q106 353 104 363T91 376Q77 380 50 380H37V442H40",119848:"287 -5Q228 -5 182 10T109 48T63 102T39 161T32 219Q32 272 50 314T94 382T154 423T214 446T265 452H279Q319 452 326 451Q428 439 485 376T542 221Q542 156 514 108T442 33Q384 -5 287 -5ZM399 230V250Q399 280 398 298T391 338T372 372T338 392T282 401Q241 401 212 380Q190 363 183 334T175 230Q175 202 175 189T177 153T183 118T195 91T215 68T245 56T287 50Q348 50 374 84Q388 101 393 132T399 230",119849:"32 442L123 446Q214 450 215 450H221V409Q222 409 229 413T251 423T284 436T328 446T382 450Q480 450 540 388T600 223Q600 128 539 61T361 -6H354Q292 -6 236 28L227 34V-132H296V-194H287Q269 -191 163 -191Q56 -191 38 -194H29V-132H98V113V284Q98 330 97 348T93 370T83 376Q69 380 42 380H29V442H32ZM457 224Q457 303 427 349T350 395Q282 395 235 352L227 345V104L233 97Q274 45 337 45Q383 45 420 86T457 224",119850:"38 220Q38 273 54 314T95 380T152 421T211 443T264 449Q368 449 429 386L438 377L484 450H540V-132H609V-194H600Q582 -191 475 -191Q360 -191 351 -194H342V-132H411V42Q409 41 399 34T383 25T367 16T347 7T324 1T296 -4T264 -6Q162 -6 100 56T38 220ZM287 46Q368 46 417 127V301L412 312Q398 347 369 371T302 395Q282 395 263 388T225 362T194 308T182 221Q182 126 214 86T287 46",119851:"405 293T374 293T324 312T305 361Q305 378 312 394Q315 397 315 399Q305 399 294 394T266 375T238 329T222 249Q221 241 221 149V62H308V0H298Q280 3 161 3Q47 3 38 0H29V62H98V210V303Q98 353 96 363T83 376Q69 380 42 380H29V442H32L118 446Q204 450 205 450H210V414L211 378Q247 449 315 449H321Q384 449 413 422T442 360Q442 332 424 313",119852:"38 315Q38 339 45 360T70 404T127 440T223 453Q273 453 320 436L338 445L357 453H366Q380 453 383 447T386 403V387V355Q386 331 383 326T365 321H355H349Q333 321 329 324T324 341Q317 406 224 406H216Q123 406 123 353Q123 334 143 321T188 304T244 294T285 286Q305 281 325 273T373 237T412 172Q414 162 414 142Q414 -6 230 -6Q154 -6 117 22L68 -6H58Q44 -6 41 0T38 42V73Q38 85 38 101T37 122Q37 144 42 148T68 153H75Q87 153 91 151T97 147T103 132Q131 46 220 46H230Q257 46 265 47Q330 58 330 108Q330 127 316 142Q300 156 284 162Q271 168 212 178T122 202Q38 243 38 315",119853:"272 49Q320 49 320 136V145V177H382V143Q382 106 380 99Q374 62 349 36T285 -2L272 -5H247Q173 -5 134 27Q109 46 102 74T94 160Q94 171 94 199T95 245V382H21V433H25Q58 433 90 456Q121 479 140 523T162 621V635H224V444H363V382H224V239V207V149Q224 98 228 81T249 55Q261 49 272 49",119854:"40 442L134 446Q228 450 229 450H235V273V165Q235 90 238 74T254 52Q268 46 304 46H319Q352 46 380 67T419 121L420 123Q424 135 425 199Q425 201 425 207Q425 233 425 249V316Q425 354 423 363T410 376Q396 380 369 380H356V442L554 450V267Q554 84 556 79Q561 62 610 62H623V31Q623 0 622 0Q603 0 527 -3T432 -6Q431 -6 431 25V56L420 45Q373 6 332 -1Q313 -6 281 -6Q208 -6 165 14T109 87L107 98L106 230Q106 358 104 366Q96 380 50 380H37V442H40",119855:"401 444Q413 441 495 441Q568 441 574 444H580V382H510L409 156Q348 18 339 6Q331 -4 320 -4Q318 -4 313 -4T303 -3H288Q273 -3 264 12T221 102Q206 135 197 156L96 382H26V444H34Q49 441 145 441Q252 441 270 444H279V382H231L284 264Q335 149 338 149Q338 150 389 264T442 381Q442 382 418 382H394V444H401",119856:"624 444Q636 441 722 441Q797 441 800 444H805V382H741L593 11Q592 10 590 8T586 4T584 2T581 0T579 -2T575 -3T571 -3T567 -4T561 -4T553 -4H542Q525 -4 518 6T490 70Q474 110 463 137L415 257L367 137Q357 111 341 72Q320 17 313 7T289 -4H277Q259 -4 253 -2T238 11L90 382H25V444H32Q47 441 140 441Q243 441 261 444H270V382H222L310 164L382 342L366 382H303V444H310Q322 441 407 441Q508 441 523 444H531V382H506Q481 382 481 380Q482 376 529 259T577 142L674 382H617V444H624",119857:"227 0Q212 3 121 3Q40 3 28 0H21V62H117L245 213L109 382H26V444H34Q49 441 143 441Q247 441 265 444H274V382H246L281 339Q315 297 316 297Q320 297 354 341L389 382H352V444H360Q375 441 466 441Q547 441 559 444H566V382H471L355 246L504 63L545 62H586V0H578Q563 3 469 3Q365 3 347 0H338V62H366Q366 63 326 112T285 163L198 63L217 62H235V0H227",119858:"84 -102Q84 -110 87 -119T102 -138T133 -149Q148 -148 162 -143T186 -131T206 -114T222 -95T234 -76T243 -59T249 -45T252 -37L269 0L96 382H26V444H34Q49 441 146 441Q252 441 270 444H279V382H255Q232 382 232 380L337 151L442 382H394V444H401Q413 441 495 441Q568 441 574 444H580V382H510L406 152Q298 -84 297 -87Q269 -139 225 -169T131 -200Q85 -200 54 -172T23 -100Q23 -64 44 -50T87 -35Q111 -35 130 -50T152 -92V-100H84V-102",119859:"48 262Q48 264 54 349T60 436V444H252Q289 444 336 444T394 445Q441 445 450 441T459 418Q459 406 458 404Q456 399 327 229T194 55H237Q260 56 268 56T297 58T325 65T348 77T370 98T384 128T395 170Q400 197 400 216Q400 217 431 217H462V211Q461 208 453 108T444 6V0H245Q46 0 43 2Q32 7 32 28V33Q32 41 40 52T84 112Q129 170 164 217L298 393H256Q189 392 165 380Q124 360 115 303Q110 280 110 256Q110 254 79 254H48V262",119860:"208 74Q208 50 254 46Q272 46 272 35Q272 34 270 22Q267 8 264 4T251 0Q249 0 239 0T205 1T141 2Q70 2 50 0H42Q35 7 35 11Q37 38 48 46H62Q132 49 164 96Q170 102 345 401T523 704Q530 716 547 716H555H572Q578 707 578 706L606 383Q634 60 636 57Q641 46 701 46Q726 46 726 36Q726 34 723 22Q720 7 718 4T704 0Q701 0 690 0T651 1T578 2Q484 2 455 0H443Q437 6 437 9T439 27Q443 40 445 43L449 46H469Q523 49 533 63L521 213H283L249 155Q208 86 208 74ZM516 260Q516 271 504 416T490 562L463 519Q447 492 400 412L310 260L413 259Q516 259 516 260",119861:"231 637Q204 637 199 638T194 649Q194 676 205 682Q206 683 335 683Q594 683 608 681Q671 671 713 636T756 544Q756 480 698 429T565 360L555 357Q619 348 660 311T702 219Q702 146 630 78T453 1Q446 0 242 0Q42 0 39 2Q35 5 35 10Q35 17 37 24Q42 43 47 45Q51 46 62 46H68Q95 46 128 49Q142 52 147 61Q150 65 219 339T288 628Q288 635 231 637ZM649 544Q649 574 634 600T585 634Q578 636 493 637Q473 637 451 637T416 636H403Q388 635 384 626Q382 622 352 506Q352 503 351 500L320 374H401Q482 374 494 376Q554 386 601 434T649 544ZM595 229Q595 273 572 302T512 336Q506 337 429 337Q311 337 310 336Q310 334 293 263T258 122L240 52Q240 48 252 48T333 46Q422 46 429 47Q491 54 543 105T595 229",119862:"50 252Q50 367 117 473T286 641T490 704Q580 704 633 653Q642 643 648 636T656 626L657 623Q660 623 684 649Q691 655 699 663T715 679T725 690L740 705H746Q760 705 760 698Q760 694 728 561Q692 422 692 421Q690 416 687 415T669 413H653Q647 419 647 422Q647 423 648 429T650 449T651 481Q651 552 619 605T510 659Q484 659 454 652T382 628T299 572T226 479Q194 422 175 346T156 222Q156 108 232 58Q280 24 350 24Q441 24 512 92T606 240Q610 253 612 255T628 257Q648 257 648 248Q648 243 647 239Q618 132 523 55T319 -22Q206 -22 128 53T50 252",119863:"287 628Q287 635 230 637Q207 637 200 638T193 647Q193 655 197 667T204 682Q206 683 403 683Q570 682 590 682T630 676Q702 659 752 597T803 431Q803 275 696 151T444 3L430 1L236 0H125H72Q48 0 41 2T33 11Q33 13 36 25Q40 41 44 43T67 46Q94 46 127 49Q141 52 146 61Q149 65 218 339T287 628ZM703 469Q703 507 692 537T666 584T629 613T590 629T555 636Q553 636 541 636T512 636T479 637H436Q392 637 386 627Q384 623 313 339T242 52Q242 48 253 48T330 47Q335 47 349 47T373 46Q499 46 581 128Q617 164 640 212T683 339T703 469",119864:"492 213Q472 213 472 226Q472 230 477 250T482 285Q482 316 461 323T364 330H312Q311 328 277 192T243 52Q243 48 254 48T334 46Q428 46 458 48T518 61Q567 77 599 117T670 248Q680 270 683 272Q690 274 698 274Q718 274 718 261Q613 7 608 2Q605 0 322 0H133Q31 0 31 11Q31 13 34 25Q38 41 42 43T65 46Q92 46 125 49Q139 52 144 61Q146 66 215 342T285 622Q285 629 281 629Q273 632 228 634H197Q191 640 191 642T193 659Q197 676 203 680H757Q764 676 764 669Q764 664 751 557T737 447Q735 440 717 440H705Q698 445 698 453L701 476Q704 500 704 528Q704 558 697 578T678 609T643 625T596 632T532 634H485Q397 633 392 631Q388 629 386 622Q385 619 355 499T324 377Q347 376 372 376H398Q464 376 489 391T534 472Q538 488 540 490T557 493Q562 493 565 493T570 492T572 491T574 487T577 483L544 351Q511 218 508 216Q505 213 492 213",119865:"48 1Q31 1 31 11Q31 13 34 25Q38 41 42 43T65 46Q92 46 125 49Q139 52 144 61Q146 66 215 342T285 622Q285 629 281 629Q273 632 228 634H197Q191 640 191 642T193 659Q197 676 203 680H742Q749 676 749 669Q749 664 736 557T722 447Q720 440 702 440H690Q683 445 683 453Q683 454 686 477T689 530Q689 560 682 579T663 610T626 626T575 633T503 634H480Q398 633 393 631Q388 629 386 623Q385 622 352 492L320 363H375Q378 363 398 363T426 364T448 367T472 374T489 386Q502 398 511 419T524 457T529 475Q532 480 548 480H560Q567 475 567 470Q567 467 536 339T502 207Q500 200 482 200H470Q463 206 463 212Q463 215 468 234T473 274Q473 303 453 310T364 317H309L277 190Q245 66 245 60Q245 46 334 46H359Q365 40 365 39T363 19Q359 6 353 0H336Q295 2 185 2Q120 2 86 2T48 1",119866:"50 252Q50 367 117 473T286 641T490 704Q580 704 633 653Q642 643 648 636T656 626L657 623Q660 623 684 649Q691 655 699 663T715 679T725 690L740 705H746Q760 705 760 698Q760 694 728 561Q692 422 692 421Q690 416 687 415T669 413H653Q647 419 647 422Q647 423 648 429T650 449T651 481Q651 552 619 605T510 659Q492 659 471 656T418 643T357 615T294 567T236 496T189 394T158 260Q156 242 156 221Q156 173 170 136T206 79T256 45T308 28T353 24Q407 24 452 47T514 106Q517 114 529 161T541 214Q541 222 528 224T468 227H431Q425 233 425 235T427 254Q431 267 437 273H454Q494 271 594 271Q634 271 659 271T695 272T707 272Q721 272 721 263Q721 261 719 249Q714 230 709 228Q706 227 694 227Q674 227 653 224Q646 221 643 215T629 164Q620 131 614 108Q589 6 586 3Q584 1 581 1Q571 1 553 21T530 52Q530 53 528 52T522 47Q448 -22 322 -22Q201 -22 126 55T50 252",119867:"228 637Q194 637 192 641Q191 643 191 649Q191 673 202 682Q204 683 219 683Q260 681 355 681Q389 681 418 681T463 682T483 682Q499 682 499 672Q499 670 497 658Q492 641 487 638H485Q483 638 480 638T473 638T464 637T455 637Q416 636 405 634T387 623Q384 619 355 500Q348 474 340 442T328 395L324 380Q324 378 469 378H614L615 381Q615 384 646 504Q674 619 674 627T617 637Q594 637 587 639T580 648Q580 650 582 660Q586 677 588 679T604 682Q609 682 646 681T740 680Q802 680 835 681T871 682Q888 682 888 672Q888 645 876 638H874Q872 638 869 638T862 638T853 637T844 637Q805 636 794 634T776 623Q773 618 704 340T634 58Q634 51 638 51Q646 48 692 46H723Q729 38 729 37T726 19Q722 6 716 0H701Q664 2 567 2Q533 2 504 2T458 2T437 1Q420 1 420 10Q420 15 423 24Q428 43 433 45Q437 46 448 46H454Q481 46 514 49Q520 50 522 50T528 55T534 64T540 82T547 110T558 153Q565 181 569 198Q602 330 602 331T457 332H312L279 197Q245 63 245 58Q245 51 253 49T303 46H334Q340 38 340 37T337 19Q333 6 327 0H312Q275 2 178 2Q144 2 115 2T69 2T48 1Q31 1 31 10Q31 12 34 24Q39 43 44 45Q48 46 59 46H65Q92 46 125 49Q139 52 144 61Q147 65 216 339T285 628Q285 635 228 637",119868:"43 1Q26 1 26 10Q26 12 29 24Q34 43 39 45Q42 46 54 46H60Q120 46 136 53Q137 53 138 54Q143 56 149 77T198 273Q210 318 216 344Q286 624 286 626Q284 630 284 631Q274 637 213 637H193Q184 643 189 662Q193 677 195 680T209 683H213Q285 681 359 681Q481 681 487 683H497Q504 676 504 672T501 655T494 639Q491 637 471 637Q440 637 407 634Q393 631 388 623Q381 609 337 432Q326 385 315 341Q245 65 245 59Q245 52 255 50T307 46H339Q345 38 345 37T342 19Q338 6 332 0H316Q279 2 179 2Q143 2 113 2T65 2T43 1",119869:"447 625Q447 637 354 637H329Q323 642 323 645T325 664Q329 677 335 683H352Q393 681 498 681Q541 681 568 681T605 682T619 682Q633 682 633 672Q633 670 630 658Q626 642 623 640T604 637Q552 637 545 623Q541 610 483 376Q420 128 419 127Q397 64 333 21T195 -22Q137 -22 97 8T57 88Q57 130 80 152T132 174Q177 174 182 130Q182 98 164 80T123 56Q115 54 115 53T122 44Q148 15 197 15Q235 15 271 47T324 130Q328 142 387 380T447 625",119870:"285 628Q285 635 228 637Q205 637 198 638T191 647Q191 649 193 661Q199 681 203 682Q205 683 214 683H219Q260 681 355 681Q389 681 418 681T463 682T483 682Q500 682 500 674Q500 669 497 660Q496 658 496 654T495 648T493 644T490 641T486 639T479 638T470 637T456 637Q416 636 405 634T387 623L306 305Q307 305 490 449T678 597Q692 611 692 620Q692 635 667 637Q651 637 651 648Q651 650 654 662T659 677Q662 682 676 682Q680 682 711 681T791 680Q814 680 839 681T869 682Q889 682 889 672Q889 650 881 642Q878 637 862 637Q787 632 726 586Q710 576 656 534T556 455L509 418L518 396Q527 374 546 329T581 244Q656 67 661 61Q663 59 666 57Q680 47 717 46H738Q744 38 744 37T741 19Q737 6 731 0H720Q680 3 625 3Q503 3 488 0H478Q472 6 472 9T474 27Q478 40 480 43T491 46H494Q544 46 544 71Q544 75 517 141T485 216L427 354L359 301L291 248L268 155Q245 63 245 58Q245 51 253 49T303 46H334Q340 37 340 35Q340 19 333 5Q328 0 317 0Q314 0 280 1T180 2Q118 2 85 2T49 1Q31 1 31 11Q31 13 34 25Q38 41 42 43T65 46Q92 46 125 49Q139 52 144 61Q147 65 216 339T285 628",119871:"228 637Q194 637 192 641Q191 643 191 649Q191 673 202 682Q204 683 217 683Q271 680 344 680Q485 680 506 683H518Q524 677 524 674T522 656Q517 641 513 637H475Q406 636 394 628Q387 624 380 600T313 336Q297 271 279 198T252 88L243 52Q243 48 252 48T311 46H328Q360 46 379 47T428 54T478 72T522 106T564 161Q580 191 594 228T611 270Q616 273 628 273H641Q647 264 647 262T627 203T583 83T557 9Q555 4 553 3T537 0T494 -1Q483 -1 418 -1T294 0H116Q32 0 32 10Q32 17 34 24Q39 43 44 45Q48 46 59 46H65Q92 46 125 49Q139 52 144 61Q147 65 216 339T285 628Q285 635 228 637",119872:"289 629Q289 635 232 637Q208 637 201 638T194 648Q194 649 196 659Q197 662 198 666T199 671T201 676T203 679T207 681T212 683T220 683T232 684Q238 684 262 684T307 683Q386 683 398 683T414 678Q415 674 451 396L487 117L510 154Q534 190 574 254T662 394Q837 673 839 675Q840 676 842 678T846 681L852 683H948Q965 683 988 683T1017 684Q1051 684 1051 673Q1051 668 1048 656T1045 643Q1041 637 1008 637Q968 636 957 634T939 623Q936 618 867 340T797 59Q797 55 798 54T805 50T822 48T855 46H886Q892 37 892 35Q892 19 885 5Q880 0 869 0Q864 0 828 1T736 2Q675 2 644 2T609 1Q592 1 592 11Q592 13 594 25Q598 41 602 43T625 46Q652 46 685 49Q699 52 704 61Q706 65 742 207T813 490T848 631L654 322Q458 10 453 5Q451 4 449 3Q444 0 433 0Q418 0 415 7Q413 11 374 317L335 624L267 354Q200 88 200 79Q206 46 272 46H282Q288 41 289 37T286 19Q282 3 278 1Q274 0 267 0Q265 0 255 0T221 1T157 2Q127 2 95 1T58 0Q43 0 39 2T35 11Q35 13 38 25T43 40Q45 46 65 46Q135 46 154 86Q158 92 223 354T289 629",119873:"234 637Q231 637 226 637Q201 637 196 638T191 649Q191 676 202 682Q204 683 299 683Q376 683 387 683T401 677Q612 181 616 168L670 381Q723 592 723 606Q723 633 659 637Q635 637 635 648Q635 650 637 660Q641 676 643 679T653 683Q656 683 684 682T767 680Q817 680 843 681T873 682Q888 682 888 672Q888 650 880 642Q878 637 858 637Q787 633 769 597L620 7Q618 0 599 0Q585 0 582 2Q579 5 453 305L326 604L261 344Q196 88 196 79Q201 46 268 46H278Q284 41 284 38T282 19Q278 6 272 0H259Q228 2 151 2Q123 2 100 2T63 2T46 1Q31 1 31 10Q31 14 34 26T39 40Q41 46 62 46Q130 49 150 85Q154 91 221 362L289 634Q287 635 234 637",119874:"740 435Q740 320 676 213T511 42T304 -22Q207 -22 138 35T51 201Q50 209 50 244Q50 346 98 438T227 601Q351 704 476 704Q514 704 524 703Q621 689 680 617T740 435ZM637 476Q637 565 591 615T476 665Q396 665 322 605Q242 542 200 428T157 216Q157 126 200 73T314 19Q404 19 485 98T608 313Q637 408 637 476",119875:"287 628Q287 635 230 637Q206 637 199 638T192 648Q192 649 194 659Q200 679 203 681T397 683Q587 682 600 680Q664 669 707 631T751 530Q751 453 685 389Q616 321 507 303Q500 302 402 301H307L277 182Q247 66 247 59Q247 55 248 54T255 50T272 48T305 46H336Q342 37 342 35Q342 19 335 5Q330 0 319 0Q316 0 282 1T182 2Q120 2 87 2T51 1Q33 1 33 11Q33 13 36 25Q40 41 44 43T67 46Q94 46 127 49Q141 52 146 61Q149 65 218 339T287 628ZM645 554Q645 567 643 575T634 597T609 619T560 635Q553 636 480 637Q463 637 445 637T416 636T404 636Q391 635 386 627Q384 621 367 550T332 412T314 344Q314 342 395 342H407H430Q542 342 590 392Q617 419 631 471T645 554",119876:"399 -80Q399 -47 400 -30T402 -11V-7L387 -11Q341 -22 303 -22Q208 -22 138 35T51 201Q50 209 50 244Q50 346 98 438T227 601Q351 704 476 704Q514 704 524 703Q621 689 680 617T740 435Q740 255 592 107Q529 47 461 16L444 8V3Q444 2 449 -24T470 -66T516 -82Q551 -82 583 -60T625 -3Q631 11 638 11Q647 11 649 2Q649 -6 639 -34T611 -100T557 -165T481 -194Q399 -194 399 -87V-80ZM636 468Q636 523 621 564T580 625T530 655T477 665Q429 665 379 640Q277 591 215 464T153 216Q153 110 207 59Q231 38 236 38V46Q236 86 269 120T347 155Q372 155 390 144T417 114T429 82T435 55L448 64Q512 108 557 185T619 334T636 468ZM314 18Q362 18 404 39L403 49Q399 104 366 115Q354 117 347 117Q344 117 341 117T337 118Q317 118 296 98T274 52Q274 18 314 18",119877:"230 637Q203 637 198 638T193 649Q193 676 204 682Q206 683 378 683Q550 682 564 680Q620 672 658 652T712 606T733 563T739 529Q739 484 710 445T643 385T576 351T538 338L545 333Q612 295 612 223Q612 212 607 162T602 80V71Q602 53 603 43T614 25T640 16Q668 16 686 38T712 85Q717 99 720 102T735 105Q755 105 755 93Q755 75 731 36Q693 -21 641 -21H632Q571 -21 531 4T487 82Q487 109 502 166T517 239Q517 290 474 313Q459 320 449 321T378 323H309L277 193Q244 61 244 59Q244 55 245 54T252 50T269 48T302 46H333Q339 38 339 37T336 19Q332 6 326 0H311Q275 2 180 2Q146 2 117 2T71 2T50 1Q33 1 33 10Q33 12 36 24Q41 43 46 45Q50 46 61 46H67Q94 46 127 49Q141 52 146 61Q149 65 218 339T287 628Q287 635 230 637ZM630 554Q630 586 609 608T523 636Q521 636 500 636T462 637H440Q393 637 386 627Q385 624 352 494T319 361Q319 360 388 360Q466 361 492 367Q556 377 592 426Q608 449 619 486T630 554",119878:"308 24Q367 24 416 76T466 197Q466 260 414 284Q308 311 278 321T236 341Q176 383 176 462Q176 523 208 573T273 648Q302 673 343 688T407 704H418H425Q521 704 564 640Q565 640 577 653T603 682T623 704Q624 704 627 704T632 705Q645 705 645 698T617 577T585 459T569 456Q549 456 549 465Q549 471 550 475Q550 478 551 494T553 520Q553 554 544 579T526 616T501 641Q465 662 419 662Q362 662 313 616T263 510Q263 480 278 458T319 427Q323 425 389 408T456 390Q490 379 522 342T554 242Q554 216 546 186Q541 164 528 137T492 78T426 18T332 -20Q320 -22 298 -22Q199 -22 144 33L134 44L106 13Q83 -14 78 -18T65 -22Q52 -22 52 -14Q52 -11 110 221Q112 227 130 227H143Q149 221 149 216Q149 214 148 207T144 186T142 153Q144 114 160 87T203 47T255 29T308 24",119879:"40 437Q21 437 21 445Q21 450 37 501T71 602L88 651Q93 669 101 677H569H659Q691 677 697 676T704 667Q704 661 687 553T668 444Q668 437 649 437Q640 437 637 437T631 442L629 445Q629 451 635 490T641 551Q641 586 628 604T573 629Q568 630 515 631Q469 631 457 630T439 622Q438 621 368 343T298 60Q298 48 386 46Q418 46 427 45T436 36Q436 31 433 22Q429 4 424 1L422 0Q419 0 415 0Q410 0 363 1T228 2Q99 2 64 0H49Q43 6 43 9T45 27Q49 40 55 46H83H94Q174 46 189 55Q190 56 191 56Q196 59 201 76T241 233Q258 301 269 344Q339 619 339 625Q339 630 310 630H279Q212 630 191 624Q146 614 121 583T67 467Q60 445 57 441T43 437H40",119880:"107 637Q73 637 71 641Q70 643 70 649Q70 673 81 682Q83 683 98 683Q139 681 234 681Q268 681 297 681T342 682T362 682Q378 682 378 672Q378 670 376 658Q371 641 366 638H364Q362 638 359 638T352 638T343 637T334 637Q295 636 284 634T266 623Q265 621 238 518T184 302T154 169Q152 155 152 140Q152 86 183 55T269 24Q336 24 403 69T501 205L552 406Q599 598 599 606Q599 633 535 637Q511 637 511 648Q511 650 513 660Q517 676 519 679T529 683Q532 683 561 682T645 680Q696 680 723 681T752 682Q767 682 767 672Q767 650 759 642Q756 637 737 637Q666 633 648 597Q646 592 598 404Q557 235 548 205Q515 105 433 42T263 -22Q171 -22 116 34T60 167V183Q60 201 115 421Q164 622 164 628Q164 635 107 637",119881:"52 648Q52 670 65 683H76Q118 680 181 680Q299 680 320 683H330Q336 677 336 674T334 656Q329 641 325 637H304Q282 635 274 635Q245 630 242 620Q242 618 271 369T301 118L374 235Q447 352 520 471T595 594Q599 601 599 609Q599 633 555 637Q537 637 537 648Q537 649 539 661Q542 675 545 679T558 683Q560 683 570 683T604 682T668 681Q737 681 755 683H762Q769 676 769 672Q769 655 760 640Q757 637 743 637Q730 636 719 635T698 630T682 623T670 615T660 608T652 599T645 592L452 282Q272 -9 266 -16Q263 -18 259 -21L241 -22H234Q216 -22 216 -15Q213 -9 177 305Q139 623 138 626Q133 637 76 637H59Q52 642 52 648",119882:"436 683Q450 683 486 682T553 680Q604 680 638 681T677 682Q695 682 695 674Q695 670 692 659Q687 641 683 639T661 637Q636 636 621 632T600 624T597 615Q597 603 613 377T629 138L631 141Q633 144 637 151T649 170T666 200T690 241T720 295T759 362Q863 546 877 572T892 604Q892 619 873 628T831 637Q817 637 817 647Q817 650 819 660Q823 676 825 679T839 682Q842 682 856 682T895 682T949 681Q1015 681 1034 683Q1048 683 1048 672Q1048 666 1045 655T1038 640T1028 637Q1006 637 988 631T958 617T939 600T927 584L923 578L754 282Q586 -14 585 -15Q579 -22 561 -22Q546 -22 542 -17Q539 -14 523 229T506 480L494 462Q472 425 366 239Q222 -13 220 -15T215 -19Q210 -22 197 -22Q178 -22 176 -15Q176 -12 154 304T131 622Q129 631 121 633T82 637H58Q51 644 51 648Q52 671 64 683H76Q118 680 176 680Q301 680 313 683H323Q329 677 329 674T327 656Q322 641 318 637H297Q236 634 232 620Q262 160 266 136L501 550L499 587Q496 629 489 632Q483 636 447 637Q428 637 422 639T416 648Q416 650 418 660Q419 664 420 669T421 676T424 680T428 682T436 683",119883:"42 0H40Q26 0 26 11Q26 15 29 27Q33 41 36 43T55 46Q141 49 190 98Q200 108 306 224T411 342Q302 620 297 625Q288 636 234 637H206Q200 643 200 645T202 664Q206 677 212 683H226Q260 681 347 681Q380 681 408 681T453 682T473 682Q490 682 490 671Q490 670 488 658Q484 643 481 640T465 637Q434 634 411 620L488 426L541 485Q646 598 646 610Q646 628 622 635Q617 635 609 637Q594 637 594 648Q594 650 596 664Q600 677 606 683H618Q619 683 643 683T697 681T738 680Q828 680 837 683H845Q852 676 852 672Q850 647 840 637H824Q790 636 763 628T722 611T698 593L687 584Q687 585 592 480L505 384Q505 383 536 304T601 142T638 56Q648 47 699 46Q734 46 734 37Q734 35 732 23Q728 7 725 4T711 1Q708 1 678 1T589 2Q528 2 496 2T461 1Q444 1 444 10Q444 11 446 25Q448 35 450 39T455 44T464 46T480 47T506 54Q523 62 523 64Q522 64 476 181L429 299Q241 95 236 84Q232 76 232 72Q232 53 261 47Q262 47 267 47T273 46Q276 46 277 46T280 45T283 42T284 35Q284 26 282 19Q279 6 276 4T261 1Q258 1 243 1T201 2T142 2Q64 2 42 0",119884:"66 637Q54 637 49 637T39 638T32 641T30 647T33 664T42 682Q44 683 56 683Q104 680 165 680Q288 680 306 683H316Q322 677 322 674T320 656Q316 643 310 637H298Q242 637 242 624Q242 619 292 477T343 333L346 336Q350 340 358 349T379 373T411 410T454 461Q546 568 561 587T577 618Q577 634 545 637Q528 637 528 647Q528 649 530 661Q533 676 535 679T549 683Q551 683 578 682T657 680Q684 680 713 681T746 682Q763 682 763 673Q763 669 760 657T755 643Q753 637 734 637Q662 632 617 587Q608 578 477 424L348 273L322 169Q295 62 295 57Q295 46 363 46Q379 46 384 45T390 35Q390 33 388 23Q384 6 382 4T366 1Q361 1 324 1T232 2Q170 2 138 2T102 1Q84 1 84 9Q84 14 87 24Q88 27 89 30T90 35T91 39T93 42T96 44T101 45T107 45T116 46T129 46Q168 47 180 50T198 63Q201 68 227 171L252 274L129 623Q128 624 127 625T125 627T122 629T118 631T113 633T105 634T96 635T83 636T66 637",119885:"58 8Q58 23 64 35Q64 36 329 334T596 635L586 637Q575 637 512 637H500H476Q442 637 420 635T365 624T311 598T266 548T228 469Q227 466 226 463T224 458T223 453T222 450L221 448Q218 443 202 443Q185 443 182 453L214 561Q228 606 241 651Q249 679 253 681Q256 683 487 683H718Q723 678 723 675Q723 673 717 649Q189 54 188 52L185 49H274Q369 50 377 51Q452 60 500 100T579 247Q587 272 590 277T603 282H607Q628 282 628 271Q547 5 541 2Q538 0 300 0H124Q58 0 58 8",119886:"33 157Q33 258 109 349T280 441Q331 441 370 392Q386 422 416 422Q429 422 439 414T449 394Q449 381 412 234T374 68Q374 43 381 35T402 26Q411 27 422 35Q443 55 463 131Q469 151 473 152Q475 153 483 153H487Q506 153 506 144Q506 138 501 117T481 63T449 13Q436 0 417 -8Q409 -10 393 -10Q359 -10 336 5T306 36L300 51Q299 52 296 50Q294 48 292 46Q233 -10 172 -10Q117 -10 75 30T33 157ZM351 328Q351 334 346 350T323 385T277 405Q242 405 210 374T160 293Q131 214 119 129Q119 126 119 118T118 106Q118 61 136 44T179 26Q217 26 254 59T298 110Q300 114 325 217T351 328",119887:"73 647Q73 657 77 670T89 683Q90 683 161 688T234 694Q246 694 246 685T212 542Q204 508 195 472T180 418L176 399Q176 396 182 402Q231 442 283 442Q345 442 383 396T422 280Q422 169 343 79T173 -11Q123 -11 82 27T40 150V159Q40 180 48 217T97 414Q147 611 147 623T109 637Q104 637 101 637H96Q86 637 83 637T76 640T73 647ZM336 325V331Q336 405 275 405Q258 405 240 397T207 376T181 352T163 330L157 322L136 236Q114 150 114 114Q114 66 138 42Q154 26 178 26Q211 26 245 58Q270 81 285 114T318 219Q336 291 336 325",119888:"34 159Q34 268 120 355T306 442Q362 442 394 418T427 355Q427 326 408 306T360 285Q341 285 330 295T319 325T330 359T352 380T366 386H367Q367 388 361 392T340 400T306 404Q276 404 249 390Q228 381 206 359Q162 315 142 235T121 119Q121 73 147 50Q169 26 205 26H209Q321 26 394 111Q403 121 406 121Q410 121 419 112T429 98T420 83T391 55T346 25T282 0T202 -11Q127 -11 81 37T34 159",119889:"366 683Q367 683 438 688T511 694Q523 694 523 686Q523 679 450 384T375 83T374 68Q374 26 402 26Q411 27 422 35Q443 55 463 131Q469 151 473 152Q475 153 483 153H487H491Q506 153 506 145Q506 140 503 129Q490 79 473 48T445 8T417 -8Q409 -10 393 -10Q359 -10 336 5T306 36L300 51Q299 52 296 50Q294 48 292 46Q233 -10 172 -10Q117 -10 75 30T33 157Q33 205 53 255T101 341Q148 398 195 420T280 442Q336 442 364 400Q369 394 369 396Q370 400 396 505T424 616Q424 629 417 632T378 637H357Q351 643 351 645T353 664Q358 683 366 683ZM352 326Q329 405 277 405Q242 405 210 374T160 293Q131 214 119 129Q119 126 119 118T118 106Q118 61 136 44T179 26Q233 26 290 98L298 109L352 326",119890:"39 168Q39 225 58 272T107 350T174 402T244 433T307 442H310Q355 442 388 420T421 355Q421 265 310 237Q261 224 176 223Q139 223 138 221Q138 219 132 186T125 128Q125 81 146 54T209 26T302 45T394 111Q403 121 406 121Q410 121 419 112T429 98T420 82T390 55T344 24T281 -1T205 -11Q126 -11 83 42T39 168ZM373 353Q367 405 305 405Q272 405 244 391T199 357T170 316T154 280T149 261Q149 260 169 260Q282 260 327 284T373 353",119891:"118 -162Q120 -162 124 -164T135 -167T147 -168Q160 -168 171 -155T187 -126Q197 -99 221 27T267 267T289 382V385H242Q195 385 192 387Q188 390 188 397L195 425Q197 430 203 430T250 431Q298 431 298 432Q298 434 307 482T319 540Q356 705 465 705Q502 703 526 683T550 630Q550 594 529 578T487 561Q443 561 443 603Q443 622 454 636T478 657L487 662Q471 668 457 668Q445 668 434 658T419 630Q412 601 403 552T387 469T380 433Q380 431 435 431Q480 431 487 430T498 424Q499 420 496 407T491 391Q489 386 482 386T428 385H372L349 263Q301 15 282 -47Q255 -132 212 -173Q175 -205 139 -205Q107 -205 81 -186T55 -132Q55 -95 76 -78T118 -61Q162 -61 162 -103Q162 -122 151 -136T127 -157L118 -162",119892:"311 43Q296 30 267 15T206 0Q143 0 105 45T66 160Q66 265 143 353T314 442Q361 442 401 394L404 398Q406 401 409 404T418 412T431 419T447 422Q461 422 470 413T480 394Q480 379 423 152T363 -80Q345 -134 286 -169T151 -205Q10 -205 10 -137Q10 -111 28 -91T74 -71Q89 -71 102 -80T116 -111Q116 -121 114 -130T107 -144T99 -154T92 -162L90 -164H91Q101 -167 151 -167Q189 -167 211 -155Q234 -144 254 -122T282 -75Q288 -56 298 -13Q311 35 311 43ZM384 328L380 339Q377 350 375 354T369 368T359 382T346 393T328 402T306 405Q262 405 221 352Q191 313 171 233T151 117Q151 38 213 38Q269 38 323 108L331 118L384 328",119894:"184 600Q184 624 203 642T247 661Q265 661 277 649T290 619Q290 596 270 577T226 557Q211 557 198 567T184 600ZM21 287Q21 295 30 318T54 369T98 420T158 442Q197 442 223 419T250 357Q250 340 236 301T196 196T154 83Q149 61 149 51Q149 26 166 26Q175 26 185 29T208 43T235 78T260 137Q263 149 265 151T282 153Q302 153 302 143Q302 135 293 112T268 61T223 11T161 -11Q129 -11 102 10T74 74Q74 91 79 106T122 220Q160 321 166 341T173 380Q173 404 156 404H154Q124 404 99 371T61 287Q60 286 59 284T58 281T56 279T53 278T49 278T41 278H27Q21 284 21 287",119895:"297 596Q297 627 318 644T361 661Q378 661 389 651T403 623Q403 595 384 576T340 557Q322 557 310 567T297 596ZM288 376Q288 405 262 405Q240 405 220 393T185 362T161 325T144 293L137 279Q135 278 121 278H107Q101 284 101 286T105 299Q126 348 164 391T252 441Q253 441 260 441T272 442Q296 441 316 432Q341 418 354 401T367 348V332L318 133Q267 -67 264 -75Q246 -125 194 -164T75 -204Q25 -204 7 -183T-12 -137Q-12 -110 7 -91T53 -71Q70 -71 82 -81T95 -112Q95 -148 63 -167Q69 -168 77 -168Q111 -168 139 -140T182 -74L193 -32Q204 11 219 72T251 197T278 308T289 365Q289 372 288 376",119896:"121 647Q121 657 125 670T137 683Q138 683 209 688T282 694Q294 694 294 686Q294 679 244 477Q194 279 194 272Q213 282 223 291Q247 309 292 354T362 415Q402 442 438 442Q468 442 485 423T503 369Q503 344 496 327T477 302T456 291T438 288Q418 288 406 299T394 328Q394 353 410 369T442 390L458 393Q446 405 434 405H430Q398 402 367 380T294 316T228 255Q230 254 243 252T267 246T293 238T320 224T342 206T359 180T365 147Q365 130 360 106T354 66Q354 26 381 26Q429 26 459 145Q461 153 479 153H483Q499 153 499 144Q499 139 496 130Q455 -11 378 -11Q333 -11 305 15T277 90Q277 108 280 121T283 145Q283 167 269 183T234 206T200 217T182 220H180Q168 178 159 139T145 81T136 44T129 20T122 7T111 -2Q98 -11 83 -11Q66 -11 57 -1T48 16Q48 26 85 176T158 471L195 616Q196 629 188 632T149 637H144Q134 637 131 637T124 640T121 647",119897:"117 59Q117 26 142 26Q179 26 205 131Q211 151 215 152Q217 153 225 153H229Q238 153 241 153T246 151T248 144Q247 138 245 128T234 90T214 43T183 6T137 -11Q101 -11 70 11T38 85Q38 97 39 102L104 360Q167 615 167 623Q167 626 166 628T162 632T157 634T149 635T141 636T132 637T122 637Q112 637 109 637T101 638T95 641T94 647Q94 649 96 661Q101 680 107 682T179 688Q194 689 213 690T243 693T254 694Q266 694 266 686Q266 675 193 386T118 83Q118 81 118 75T117 65V59",119898:"21 287Q22 293 24 303T36 341T56 388T88 425T132 442T175 435T205 417T221 395T229 376L231 369Q231 367 232 367L243 378Q303 442 384 442Q401 442 415 440T441 433T460 423T475 411T485 398T493 385T497 373T500 364T502 357L510 367Q573 442 659 442Q713 442 746 415T780 336Q780 285 742 178T704 50Q705 36 709 31T724 26Q752 26 776 56T815 138Q818 149 821 151T837 153Q857 153 857 145Q857 144 853 130Q845 101 831 73T785 17T716 -10Q669 -10 648 17T627 73Q627 92 663 193T700 345Q700 404 656 404H651Q565 404 506 303L499 291L466 157Q433 26 428 16Q415 -11 385 -11Q372 -11 364 -4T353 8T350 18Q350 29 384 161L420 307Q423 322 423 345Q423 404 379 404H374Q288 404 229 303L222 291L189 157Q156 26 151 16Q138 -11 108 -11Q95 -11 87 -5T76 7T74 17Q74 30 112 181Q151 335 151 342Q154 357 154 369Q154 405 129 405Q107 405 92 377T69 316T57 280Q55 278 41 278H27Q21 284 21 287",119899:"21 287Q22 293 24 303T36 341T56 388T89 425T135 442Q171 442 195 424T225 390T231 369Q231 367 232 367L243 378Q304 442 382 442Q436 442 469 415T503 336T465 179T427 52Q427 26 444 26Q450 26 453 27Q482 32 505 65T540 145Q542 153 560 153Q580 153 580 145Q580 144 576 130Q568 101 554 73T508 17T439 -10Q392 -10 371 17T350 73Q350 92 386 193T423 345Q423 404 379 404H374Q288 404 229 303L222 291L189 157Q156 26 151 16Q138 -11 108 -11Q95 -11 87 -5T76 7T74 17Q74 30 112 180T152 343Q153 348 153 366Q153 405 129 405Q91 405 66 305Q60 285 60 284Q58 278 41 278H27Q21 284 21 287",119900:"201 -11Q126 -11 80 38T34 156Q34 221 64 279T146 380Q222 441 301 441Q333 441 341 440Q354 437 367 433T402 417T438 387T464 338T476 268Q476 161 390 75T201 -11ZM121 120Q121 70 147 48T206 26Q250 26 289 58T351 142Q360 163 374 216T388 308Q388 352 370 375Q346 405 306 405Q243 405 195 347Q158 303 140 230T121 120",119901:"23 287Q24 290 25 295T30 317T40 348T55 381T75 411T101 433T134 442Q209 442 230 378L240 387Q302 442 358 442Q423 442 460 395T497 281Q497 173 421 82T249 -10Q227 -10 210 -4Q199 1 187 11T168 28L161 36Q160 35 139 -51T118 -138Q118 -144 126 -145T163 -148H188Q194 -155 194 -157T191 -175Q188 -187 185 -190T172 -194Q170 -194 161 -194T127 -193T65 -192Q-5 -192 -24 -194H-32Q-39 -187 -39 -183Q-37 -156 -26 -148H-6Q28 -147 33 -136Q36 -130 94 103T155 350Q156 355 156 364Q156 405 131 405Q109 405 94 377T71 316T59 280Q57 278 43 278H29Q23 284 23 287ZM178 102Q200 26 252 26Q282 26 310 49T356 107Q374 141 392 215T411 325V331Q411 405 350 405Q339 405 328 402T306 393T286 380T269 365T254 350T243 336T235 326L232 322Q232 321 229 308T218 264T204 212Q178 106 178 102",119902:"33 157Q33 258 109 349T280 441Q340 441 372 389Q373 390 377 395T388 406T404 418Q438 442 450 442Q454 442 457 439T460 434Q460 425 391 149Q320 -135 320 -139Q320 -147 365 -148H390Q396 -156 396 -157T393 -175Q389 -188 383 -194H370Q339 -192 262 -192Q234 -192 211 -192T174 -192T157 -193Q143 -193 143 -185Q143 -182 145 -170Q149 -154 152 -151T172 -148Q220 -148 230 -141Q238 -136 258 -53T279 32Q279 33 272 29Q224 -10 172 -10Q117 -10 75 30T33 157ZM352 326Q329 405 277 405Q242 405 210 374T160 293Q131 214 119 129Q119 126 119 118T118 106Q118 61 136 44T179 26Q233 26 290 98L298 109L352 326",119903:"21 287Q22 290 23 295T28 317T38 348T53 381T73 411T99 433T132 442Q161 442 183 430T214 408T225 388Q227 382 228 382T236 389Q284 441 347 441H350Q398 441 422 400Q430 381 430 363Q430 333 417 315T391 292T366 288Q346 288 334 299T322 328Q322 376 378 392Q356 405 342 405Q286 405 239 331Q229 315 224 298T190 165Q156 25 151 16Q138 -11 108 -11Q95 -11 87 -5T76 7T74 17Q74 30 114 189T154 366Q154 405 128 405Q107 405 92 377T68 316T57 280Q55 278 41 278H27Q21 284 21 287",119904:"131 289Q131 321 147 354T203 415T300 442Q362 442 390 415T419 355Q419 323 402 308T364 292Q351 292 340 300T328 326Q328 342 337 354T354 372T367 378Q368 378 368 379Q368 382 361 388T336 399T297 405Q249 405 227 379T204 326Q204 301 223 291T278 274T330 259Q396 230 396 163Q396 135 385 107T352 51T289 7T195 -10Q118 -10 86 19T53 87Q53 126 74 143T118 160Q133 160 146 151T160 120Q160 94 142 76T111 58Q109 57 108 57T107 55Q108 52 115 47T146 34T201 27Q237 27 263 38T301 66T318 97T323 122Q323 150 302 164T254 181T195 196T148 231Q131 256 131 289",119905:"26 385Q19 392 19 395Q19 399 22 411T27 425Q29 430 36 430T87 431H140L159 511Q162 522 166 540T173 566T179 586T187 603T197 615T211 624T229 626Q247 625 254 615T261 596Q261 589 252 549T232 470L222 433Q222 431 272 431H323Q330 424 330 420Q330 398 317 385H210L174 240Q135 80 135 68Q135 26 162 26Q197 26 230 60T283 144Q285 150 288 151T303 153H307Q322 153 322 145Q322 142 319 133Q314 117 301 95T267 48T216 6T155 -11Q125 -11 98 4T59 56Q57 64 57 83V101L92 241Q127 382 128 383Q128 385 77 385H26",119906:"21 287Q21 295 30 318T55 370T99 420T158 442Q204 442 227 417T250 358Q250 340 216 246T182 105Q182 62 196 45T238 27T291 44T328 78L339 95Q341 99 377 247Q407 367 413 387T427 416Q444 431 463 431Q480 431 488 421T496 402L420 84Q419 79 419 68Q419 43 426 35T447 26Q469 29 482 57T512 145Q514 153 532 153Q551 153 551 144Q550 139 549 130T540 98T523 55T498 17T462 -8Q454 -10 438 -10Q372 -10 347 46Q345 45 336 36T318 21T296 6T267 -6T233 -11Q189 -11 155 7Q103 38 103 113Q103 170 138 262T173 379Q173 380 173 381Q173 390 173 393T169 400T158 404H154Q131 404 112 385T82 344T65 302T57 280Q55 278 41 278H27Q21 284 21 287",119907:"173 380Q173 405 154 405Q130 405 104 376T61 287Q60 286 59 284T58 281T56 279T53 278T49 278T41 278H27Q21 284 21 287Q21 294 29 316T53 368T97 419T160 441Q202 441 225 417T249 361Q249 344 246 335Q246 329 231 291T200 202T182 113Q182 86 187 69Q200 26 250 26Q287 26 319 60T369 139T398 222T409 277Q409 300 401 317T383 343T365 361T357 383Q357 405 376 424T417 443Q436 443 451 425T467 367Q467 340 455 284T418 159T347 40T241 -11Q177 -11 139 22Q102 54 102 117Q102 148 110 181T151 298Q173 362 173 380",119908:"580 385Q580 406 599 424T641 443Q659 443 674 425T690 368Q690 339 671 253Q656 197 644 161T609 80T554 12T482 -11Q438 -11 404 5T355 48Q354 47 352 44Q311 -11 252 -11Q226 -11 202 -5T155 14T118 53T104 116Q104 170 138 262T173 379Q173 380 173 381Q173 390 173 393T169 400T158 404H154Q131 404 112 385T82 344T65 302T57 280Q55 278 41 278H27Q21 284 21 287Q21 293 29 315T52 366T96 418T161 441Q204 441 227 416T250 358Q250 340 217 250T184 111Q184 65 205 46T258 26Q301 26 334 87L339 96V119Q339 122 339 128T340 136T341 143T342 152T345 165T348 182T354 206T362 238T373 281Q402 395 406 404Q419 431 449 431Q468 431 475 421T483 402Q483 389 454 274T422 142Q420 131 420 107V100Q420 85 423 71T442 42T487 26Q558 26 600 148Q609 171 620 213T632 273Q632 306 619 325T593 357T580 385",119909:"52 289Q59 331 106 386T222 442Q257 442 286 424T329 379Q371 442 430 442Q467 442 494 420T522 361Q522 332 508 314T481 292T458 288Q439 288 427 299T415 328Q415 374 465 391Q454 404 425 404Q412 404 406 402Q368 386 350 336Q290 115 290 78Q290 50 306 38T341 26Q378 26 414 59T463 140Q466 150 469 151T485 153H489Q504 153 504 145Q504 144 502 134Q486 77 440 33T333 -11Q263 -11 227 52Q186 -10 133 -10H127Q78 -10 57 16T35 71Q35 103 54 123T99 143Q142 143 142 101Q142 81 130 66T107 46T94 41L91 40Q91 39 97 36T113 29T132 26Q168 26 194 71Q203 87 217 139T245 247T261 313Q266 340 266 352Q266 380 251 392T217 404Q177 404 142 372T93 290Q91 281 88 280T72 278H58Q52 284 52 289",119910:"21 287Q21 301 36 335T84 406T158 442Q199 442 224 419T250 355Q248 336 247 334Q247 331 231 288T198 191T182 105Q182 62 196 45T238 27Q261 27 281 38T312 61T339 94Q339 95 344 114T358 173T377 247Q415 397 419 404Q432 431 462 431Q475 431 483 424T494 412T496 403Q496 390 447 193T391 -23Q363 -106 294 -155T156 -205Q111 -205 77 -183T43 -117Q43 -95 50 -80T69 -58T89 -48T106 -45Q150 -45 150 -87Q150 -107 138 -122T115 -142T102 -147L99 -148Q101 -153 118 -160T152 -167H160Q177 -167 186 -165Q219 -156 247 -127T290 -65T313 -9T321 21L315 17Q309 13 296 6T270 -6Q250 -11 231 -11Q185 -11 150 11T104 82Q103 89 103 113Q103 170 138 262T173 379Q173 380 173 381Q173 390 173 393T169 400T158 404H154Q131 404 112 385T82 344T65 302T57 280Q55 278 41 278H27Q21 284 21 287",119911:"347 338Q337 338 294 349T231 360Q211 360 197 356T174 346T162 335T155 324L153 320Q150 317 138 317Q117 317 117 325Q117 330 120 339Q133 378 163 406T229 440Q241 442 246 442Q271 442 291 425T329 392T367 375Q389 375 411 408T434 441Q435 442 449 442H462Q468 436 468 434Q468 430 463 420T449 399T432 377T418 358L411 349Q368 298 275 214T160 106L148 94L163 93Q185 93 227 82T290 71Q328 71 360 90T402 140Q406 149 409 151T424 153Q443 153 443 143Q443 138 442 134Q425 72 376 31T278 -11Q252 -11 232 6T193 40T155 57Q111 57 76 -3Q70 -11 59 -11H54H41Q35 -5 35 -2Q35 13 93 84Q132 129 225 214T340 322Q352 338 347 338",119912:"65 0Q45 0 45 18Q48 52 61 60Q65 62 81 62Q155 62 165 74Q166 74 265 228T465 539T569 699Q576 707 583 709T611 711T637 710T649 700Q650 697 695 380L741 63L784 62H827Q839 50 839 45L835 29Q831 9 827 5T806 0Q803 0 790 0T743 1T657 2Q585 2 547 1T504 0Q481 0 481 17Q484 54 497 60Q501 62 541 62Q580 62 580 63Q580 68 573 121T564 179V181H308L271 124Q236 69 236 67T283 62H287Q316 62 316 46Q316 26 307 8Q302 3 295 0L262 1Q242 2 168 2Q119 2 93 1T65 0ZM537 372Q533 402 528 435T521 486T518 504V505Q517 505 433 375L348 244L451 243Q555 243 555 244L537 372",119913:"258 624H235Q214 624 209 626T199 639Q203 678 216 684Q220 686 449 686H477H586Q684 686 733 677T817 634Q853 598 853 547Q853 499 826 460T761 401T695 371T654 360H653L662 358Q670 357 683 354T712 344T744 327T774 303T795 269T804 224Q804 148 732 79T533 1Q524 0 288 0H58Q47 5 43 15Q47 54 60 60Q64 62 113 62H162L302 623Q302 624 258 624ZM703 550Q703 571 695 586T675 609T656 619T643 623L545 624H447L417 504Q386 384 386 383T470 382Q554 383 565 385Q632 397 667 447T703 550ZM651 240Q651 265 645 282T626 309T608 322T592 329Q587 330 479 331H373L340 198Q307 65 306 64Q306 62 406 62L507 63L519 65Q565 76 596 107T639 171T651 240",119914:"380 -17Q335 -17 293 -10T207 16T130 65T76 144T55 256Q55 306 70 361T122 476T211 582T345 663T525 702H545Q673 702 731 634L777 668Q783 672 789 677T800 685T808 691T814 695T818 698T822 700T825 702T828 703T830 703T833 703Q855 703 855 690Q855 686 823 558T789 426Q786 421 782 420T756 419Q734 420 729 421T724 432Q724 434 725 447T726 472Q726 552 678 604Q640 640 586 640H574Q533 640 494 632T409 604T324 541T260 437Q243 397 227 333T210 219Q210 152 237 117Q255 90 299 68T420 46H429Q506 46 580 100T678 234Q683 249 687 251T712 254H723Q743 254 743 240Q743 232 736 213T710 162T663 100T586 40T477 -5Q433 -17 380 -17",119915:"258 624H235Q214 624 209 626T199 639Q203 678 216 684Q220 686 437 686Q659 686 668 685Q727 680 772 662T842 621T883 568T905 517T913 475Q914 466 914 434Q914 373 892 307T828 179T712 69T548 7Q517 2 494 2T279 0H58Q47 5 43 15Q47 54 60 60Q64 62 113 62H162L302 623Q302 624 258 624ZM768 475Q768 515 753 544T718 588T666 611T613 622T563 624H538H532H452L382 344Q311 64 311 63T363 62H405Q490 62 545 76T656 142Q696 185 724 265T760 399T768 475",119916:"257 618H231Q198 618 198 636Q202 672 214 678L219 680H811Q817 677 820 673T824 666L825 664Q825 659 814 549T799 433Q793 424 771 424Q752 424 746 427T740 441Q740 445 742 466T744 505Q744 561 722 585T646 616Q639 617 545 618H456Q456 617 427 502T398 385Q398 384 435 384Q461 385 471 385T499 391T526 405T545 433T562 478Q566 494 571 497T595 501H604Q622 501 626 486Q626 482 593 349T557 213Q552 205 530 205Q499 205 499 219Q499 222 503 242T508 281Q508 308 491 314T429 322Q425 322 423 322H382L317 64Q317 62 390 62Q460 62 493 64T569 80T640 124Q665 149 686 187T719 253T733 283Q739 289 760 289Q791 289 791 274Q791 267 763 201T706 71L678 8Q676 4 667 0H58Q47 5 43 15Q47 54 60 60Q64 62 113 62H162L163 66Q163 67 231 341T301 616Q301 618 257 618",119917:"257 618H231Q198 618 198 636Q202 672 214 678L219 680H795Q801 677 804 673T808 666L809 664Q809 659 798 549T783 433Q777 424 755 424Q736 424 730 427T724 444Q724 448 725 468T727 507V524Q727 541 724 554T713 577T698 594T676 605T653 612T625 616T597 617T566 618T538 618H456L455 614Q455 611 424 491L394 371H429Q454 372 463 372T491 378T517 392T536 419T552 464Q556 481 561 484T586 488Q603 488 607 486Q616 482 616 473Q616 467 584 337T549 201Q542 192 521 192Q503 192 497 195T490 209Q490 212 492 224Q499 251 499 269Q499 288 489 296T465 306T417 308L379 309L348 188Q341 161 334 129T322 80L318 65L317 62H375H409Q430 62 438 59T447 45Q444 8 431 2L426 0L377 1Q347 2 231 2Q152 2 111 1T65 0Q48 0 43 15Q47 54 60 60Q64 62 113 62H162L163 66Q163 67 231 341T301 616Q301 618 257 618",119918:"379 -16Q233 -16 145 52T56 255Q56 310 73 368T127 483T216 586T347 663T518 702H540Q562 702 582 700T616 696T644 689T667 681T686 670T702 659T717 647T731 635L776 668Q782 672 788 677T799 685T807 691T813 695T817 698T821 700T824 702T827 703T829 703T832 703Q854 703 854 690Q854 686 822 558T788 426Q785 421 781 420T755 419Q734 420 729 422T723 432Q723 434 724 446T725 469Q725 531 702 571T642 628Q616 640 575 640Q468 640 390 593T272 464Q247 415 229 340T210 214Q210 166 228 132T277 79T343 54T419 46Q445 46 465 50T500 59T526 76T544 96T557 123T566 150T574 182T581 214H519Q511 214 498 214T479 213Q443 213 443 230Q443 250 452 268Q457 273 464 276L514 275Q546 274 657 274Q735 274 768 275T803 276Q826 276 826 258Q823 224 810 216Q806 214 771 214H736Q736 211 710 109T683 5Q678 0 671 0Q666 0 637 14T597 36Q593 38 590 40T585 44T582 44T576 40Q511 -16 379 -16",119919:"258 624H235Q214 624 209 626T199 639Q203 678 216 684Q220 686 239 686Q290 684 403 684Q475 684 512 685T553 686Q576 686 576 668Q572 632 560 626Q555 624 506 624H457L399 389Q399 388 547 388H695L753 623Q753 624 709 624H686Q665 624 660 626T650 639Q653 678 668 684Q672 686 681 686Q685 686 726 685T847 684Q902 684 937 684T986 685T1004 686Q1027 686 1027 668Q1023 632 1011 626Q1006 624 957 624H908L839 344Q768 64 768 63T812 62H839Q871 62 871 44Q867 6 854 2L850 0L808 1Q782 2 675 2Q600 2 560 1T516 0Q499 0 494 15Q498 54 511 60Q515 62 564 62H613L614 66L679 324Q679 326 531 326H383L382 322L317 64Q317 62 361 62H388Q420 62 420 44Q416 6 403 2L399 0L357 1Q331 2 224 2Q149 2 109 1T65 0Q48 0 43 15Q47 54 60 60Q64 62 113 62H162L302 623Q302 624 258 624",119920:"247 624Q242 624 233 624T220 623Q186 623 186 640Q186 647 190 664T202 684Q206 686 226 686Q277 684 393 684Q435 684 471 684T528 685T553 686Q573 686 573 670Q573 650 564 632Q556 624 537 624H501H449L380 344Q309 64 309 63T356 62Q361 62 370 62T384 63Q417 63 417 46Q417 26 408 8Q403 3 396 0L352 1Q325 2 216 2T82 1L45 0Q30 7 30 16Q33 51 46 60Q51 62 102 62H154L294 623Q294 624 247 624",119921:"205 131Q205 105 192 84T165 54L152 45Q152 44 160 42T182 37T213 35H216Q255 35 289 65Q314 90 329 129Q331 136 392 378T453 623Q453 624 393 624H332Q318 631 318 640Q318 647 322 664T334 684Q338 686 359 686Q413 684 533 684Q566 684 605 685T652 686Q677 686 685 683T694 669Q694 664 691 652Q686 631 681 628T647 624H602L542 380Q531 336 518 285T500 212T487 161T475 122T463 97T448 74T429 55Q351 -17 213 -17Q142 -17 99 7T43 70Q42 75 42 93Q42 143 73 168T139 194Q168 194 186 177T205 131",119922:"536 0Q522 6 522 18Q522 35 533 57Q539 62 557 62Q595 62 601 65L472 330L365 255L342 160Q318 65 317 64Q317 62 361 62H388Q420 62 420 44Q416 6 403 2L399 0L357 1Q331 2 224 2Q149 2 109 1T65 0Q48 0 43 15Q47 54 60 60Q64 62 113 62H162L302 623Q302 624 258 624H235Q214 624 209 626T199 639Q203 678 216 684Q220 686 239 686Q290 684 403 684Q475 684 512 685T553 686Q576 686 576 668Q572 632 560 626Q555 624 506 624H457L422 481Q386 339 386 337L785 621Q779 624 749 624Q726 624 726 641Q726 645 730 659Q734 675 736 679T747 686L786 685Q812 684 888 684Q908 684 934 685T968 686Q1003 686 1003 669Q1003 646 991 629Q985 624 967 624Q918 624 888 617Q884 617 874 613L865 609Q864 608 732 515T599 420Q599 418 686 242T775 65Q784 62 829 62Q847 62 850 61T860 54Q862 52 862 43Q862 10 845 1Q844 1 842 1T836 0T797 1T694 2Q599 2 573 1L536 0",119923:"258 624H235Q214 624 209 626T199 639Q203 678 216 684Q220 686 239 686Q290 684 409 684Q454 684 492 684T552 685T579 686Q603 686 603 668Q599 632 587 626Q583 624 520 624H457L388 344Q317 64 317 63T353 62H390Q418 62 440 64T493 78T548 110T598 169T643 261Q651 282 655 285T680 289Q696 289 700 288T709 279Q711 274 711 269Q710 265 663 138T613 8Q611 4 602 0H58Q47 5 43 15Q47 54 60 60Q64 62 113 62H162L302 623Q302 624 258 624",119924:"258 624H231Q214 624 208 626T199 639Q203 678 216 684Q220 686 347 686H473Q474 685 478 682T484 677Q487 673 535 413L584 153L608 187Q631 221 672 281T761 410Q935 663 943 671Q949 678 962 686H1082H1166Q1201 686 1210 683T1219 668Q1215 632 1203 626Q1199 624 1149 624H1100L1031 344Q960 64 960 63T1004 62H1031Q1063 62 1063 44Q1060 7 1046 2Q1042 0 1034 0Q1030 0 990 1T875 2Q804 2 767 1T725 0H723Q707 0 703 15Q707 54 720 60Q724 62 773 62H822Q961 618 961 619L754 318Q546 15 543 12Q531 0 510 0Q500 0 495 0T484 5T477 19Q477 20 421 315L367 604L299 335Q234 72 234 68Q234 62 302 62Q334 62 334 46Q332 8 317 2Q313 0 306 0Q301 0 267 1T181 2Q125 2 96 1T63 0Q48 0 43 15Q43 19 47 35Q52 55 57 58T94 62Q147 64 164 69L233 345Q302 619 302 622Q302 624 258 624",119925:"258 624H235Q214 624 209 626T199 639Q203 678 216 684Q220 686 344 686H434Q464 686 477 680Q480 677 607 454Q738 227 739 227Q742 227 789 418T836 618Q836 620 835 620L821 622Q811 622 779 624Q755 624 749 625T740 632Q737 635 737 644Q737 656 742 669T754 685Q755 685 757 685T763 686Q768 686 803 685T890 684Q925 684 951 684T990 685T1006 686Q1014 686 1016 684Q1027 679 1027 668Q1023 632 1011 626Q1007 624 978 624Q912 622 907 617Q907 616 831 314T753 8Q749 0 723 0H712Q699 0 692 7Q692 8 671 44T607 155T526 296L361 580L296 323Q234 74 234 68T302 62H307Q334 62 334 44Q330 6 317 2L313 0L280 1Q260 2 181 2Q125 2 96 1T63 0Q48 0 43 15Q43 19 47 35Q52 55 57 58T94 62Q147 64 164 69L233 345Q302 619 302 622Q302 624 258 624",119926:"53 245Q53 297 70 356T125 478T216 590T349 671T523 703Q656 703 735 637T815 445Q815 378 791 307Q727 104 527 17Q437 -17 344 -17Q289 -17 242 -5T150 35T79 116T53 245ZM664 489Q664 575 618 611T511 648Q463 648 416 627T334 570Q297 531 270 472T230 355T213 261T208 206Q208 177 215 151T237 98T284 56T358 40Q440 40 510 98T618 270Q664 400 664 489",119927:"162 62L302 623Q302 624 258 624H234Q214 624 209 626T200 638Q200 677 217 684Q220 686 439 686Q667 685 684 682Q686 681 693 680Q713 677 733 671T782 649T829 602T847 528Q847 450 784 382T604 293Q571 288 469 287H373L346 176Q340 151 333 122T321 78L317 64Q317 62 361 62H387Q420 62 420 44Q417 10 404 2L399 0L357 1Q331 2 224 2Q149 2 109 1T65 0Q43 0 43 17Q43 21 47 33Q52 54 57 58T89 62H113H162ZM692 558Q692 611 617 622Q610 623 529 624H452L381 343H458H492Q604 343 641 389Q662 414 677 471T692 558",119928:"53 245Q53 297 70 356T125 478T216 590T349 671T523 703Q656 703 735 637T815 445Q815 410 808 370T781 277T729 178T643 87T519 14L525 4Q540 -19 553 -25T592 -32Q632 -32 654 -24T680 -7T689 10T704 18Q713 18 717 12T722 0Q722 -8 711 -36T681 -101T624 -166T541 -194Q513 -194 494 -183T465 -157T450 -118T444 -79T443 -41V-7L433 -9Q391 -17 344 -17Q301 -17 263 -10T185 15T118 62T71 138T53 245ZM666 482Q666 529 652 563T614 615T565 640T512 648Q412 648 335 573Q268 506 235 389T201 202Q201 164 210 136T230 95T259 66L262 76Q269 109 302 135T382 162Q401 162 415 159T449 140T484 92L491 78L496 82Q502 86 505 88T515 97T528 107T541 120T555 137T570 156T585 179T599 205T612 235Q629 278 647 351T666 482ZM439 56Q439 58 439 62T435 75T426 92T410 106T383 112Q353 112 332 96T311 63Q311 38 355 38H366Q391 39 415 45T439 56",119929:"258 624H235Q214 624 209 626T199 639Q203 678 216 684Q220 686 422 686H446H525Q634 686 698 674T806 620Q843 583 843 535Q843 505 833 478T805 432T768 396T728 370T690 352T662 342L651 338L654 336Q658 334 667 327T688 310Q719 278 719 237Q719 222 710 165T701 94Q701 35 748 35Q775 35 793 57T819 101Q822 112 826 114T843 117H849Q881 117 881 99Q881 78 852 39T781 -11Q765 -17 728 -17Q537 -13 537 94Q537 110 552 169T567 243Q567 292 529 309Q517 316 508 316T441 318H375L374 314Q374 312 343 189T311 64Q311 62 355 62H382Q414 62 414 44Q410 6 397 2L393 0L351 1Q325 2 221 2Q147 2 108 1T65 0Q48 0 43 15Q47 54 60 60Q64 62 113 62H162L302 623Q302 624 258 624ZM687 555Q687 617 589 623Q581 624 513 624H451L420 498Q413 468 405 436T392 388L388 371Q388 369 458 369Q464 369 485 369T515 369T541 372T570 377T596 386T624 400Q649 417 664 457T683 522T687 555",119930:"354 45Q429 45 467 91T506 184Q506 225 477 250Q461 262 384 279T294 300Q238 318 210 362T182 452Q182 493 202 540T257 623Q338 702 449 702Q491 702 501 701Q571 690 610 654Q614 649 617 650Q618 650 650 675T683 702Q685 703 692 703Q714 703 714 690Q714 686 687 578T658 466Q653 458 629 458Q606 458 602 463Q600 465 599 466Q599 467 599 469T598 473Q598 475 599 487T600 511Q600 584 557 614T454 645Q386 645 347 606T308 520Q308 506 311 496T323 477T338 464T360 454T384 446T413 439T441 433Q523 416 549 401Q581 384 602 352Q631 309 631 254Q631 214 615 170T567 83T478 12T347 -16Q322 -16 300 -14T261 -8T230 0T205 10T187 20T172 30L162 37L130 11Q124 7 119 3T110 -4T104 -9T100 -13T96 -15T93 -16T91 -17T88 -17H82Q76 -17 73 -16T69 -14T66 -10T63 -5L90 107Q97 133 106 170Q116 211 120 219T136 228H148Q167 228 173 227T179 218Q179 216 176 200T173 168Q173 102 227 74T354 45",119931:"498 62Q511 58 511 43Q511 10 494 1L490 0Q487 0 482 0T424 1T271 2Q201 2 157 2T94 1T72 0H70Q46 0 46 17Q49 54 62 60L66 62H137Q208 62 209 63L218 98Q227 134 244 203T278 339L347 613H300Q262 612 246 611T198 599T146 564Q128 545 114 512T91 454T79 425Q73 419 52 419Q22 419 22 434Q22 440 41 498T80 611L100 666Q105 673 111 675H434Q758 675 762 673Q772 668 772 657Q772 655 756 549T738 434Q735 419 711 419H707Q690 419 686 421Q677 425 677 434Q676 436 678 449T683 485T686 529Q686 553 679 569T662 594T631 607T593 612T544 613H502L433 340Q418 279 400 207T374 100L365 65L364 62H498",119932:"856 686Q877 686 877 668Q877 663 873 649T867 631Q861 624 828 624Q762 622 757 617Q757 613 705 409T651 200Q620 112 540 48T328 -16Q251 -16 196 2T113 51T75 112T63 176Q63 202 70 232T117 422Q129 469 141 520T160 598L167 623Q167 624 123 624H96Q79 624 73 626T64 639Q68 678 81 684Q85 686 104 686Q155 684 268 684Q340 684 377 685T418 686Q441 686 441 668Q437 632 425 626Q421 624 371 624H322L270 415Q224 232 217 198T209 141Q209 45 336 45Q372 45 406 52T475 77T540 128T585 211L590 229Q594 247 601 274T617 336T636 409T654 482T670 547T681 595T686 618Q686 620 685 620H683Q681 621 678 621T671 622Q660 622 630 624Q616 624 610 624T598 626T589 630T587 640Q587 647 590 659Q594 677 598 681T613 686Q618 686 653 685T740 684Q775 684 801 684T840 685T856 686",119933:"401 686Q415 680 415 668Q415 651 404 629Q398 624 356 624Q318 624 318 623Q318 620 337 508T377 284L397 174L472 285Q548 396 623 507T699 620Q698 621 652 624Q634 624 627 627T619 641Q619 648 622 658Q627 677 631 681T650 686Q654 686 686 685T766 684Q794 684 823 684T858 685Q874 685 878 683T886 671Q886 667 882 651Q877 632 873 628T850 624Q800 624 779 617Q774 617 770 613Q767 610 560 304T350 -5Q346 -9 332 -16H306H291Q270 -16 267 -2Q267 -1 260 37T238 161T210 313L156 624H116H94Q62 624 62 642Q66 678 78 684Q82 686 99 686Q144 684 246 684Q330 684 368 685L401 686",119934:"111 624Q109 624 102 624T91 623Q61 623 61 640Q61 660 70 678Q78 686 98 686Q140 684 239 684Q277 684 309 684T360 685T383 686H385Q407 686 407 668Q404 634 391 626Q387 624 348 624Q307 624 307 622Q307 618 332 409Q359 198 359 195L570 532L564 576L558 622V624H522H504Q472 624 472 641Q475 678 488 684L493 686L529 685Q551 684 645 684Q716 684 753 685T795 686Q818 686 818 669Q815 632 802 626Q798 624 759 624Q718 624 718 622Q718 615 743 410Q770 199 770 196Q770 195 806 253T903 406Q1035 618 1035 619Q1025 624 968 624Q943 624 943 641Q943 648 946 659Q950 675 952 679T963 686L998 685Q1020 684 1093 684Q1113 684 1139 685T1173 686Q1207 686 1207 669Q1207 664 1204 652Q1199 631 1194 628T1164 624Q1113 622 1101 615Q1098 612 905 305Q715 -1 709 -7Q699 -17 673 -17Q645 -17 639 -8L581 441Q581 444 442 221Q331 44 314 18T288 -14Q279 -17 263 -17H254Q229 -17 227 -5Q225 2 186 311L147 620V624H111",119935:"931 686Q953 686 953 670Q953 650 944 632Q936 624 924 624H914Q823 624 803 611Q800 609 696 503T591 396Q591 394 667 229L743 62H787H814Q846 62 846 44Q843 7 829 2Q825 0 817 0Q813 0 775 1T664 2Q590 2 551 1T508 0H507Q484 0 484 18Q484 19 488 37Q492 56 497 58T534 62L566 63Q567 64 520 169T471 274Q469 274 369 172T268 67L315 62Q320 62 328 62L335 61Q347 58 347 44Q344 10 331 2L326 0L287 1Q263 2 177 2Q95 2 78 1L53 0Q38 6 38 17Q38 40 50 57Q56 62 78 62Q169 62 188 75Q194 77 435 324L444 334L439 347Q437 351 373 492L313 624H268H246Q220 624 212 632Q210 636 210 642Q210 655 215 669T227 684Q230 686 247 686Q295 684 398 684Q438 684 472 684T527 685T551 686Q567 686 572 671Q572 667 568 651Q563 631 558 628T523 624T492 623H488L526 540Q563 457 564 457Q564 456 574 466T604 496T645 537L724 619Q716 622 677 624H673Q645 624 645 640Q645 660 654 678Q659 683 666 686L704 685Q728 684 813 684Q847 684 873 684T913 685T931 686",119936:"97 624H73Q40 624 40 640Q40 660 49 678Q57 686 77 686Q122 684 228 684Q269 684 304 684T360 685T385 686Q406 686 406 668Q406 662 403 653Q398 631 393 628T361 624H353Q321 624 321 623T376 491T432 360L448 377Q465 394 493 424T553 490L673 620Q662 624 630 624Q606 624 606 640Q608 678 623 684Q627 686 634 686Q638 686 671 685T755 684Q777 684 805 685T841 686Q861 686 868 683T876 669Q876 664 873 652Q868 631 863 628T829 624Q764 622 747 611Q727 590 590 441L437 275L411 170Q385 65 384 64Q384 62 429 62H453Q473 62 478 60T487 48Q488 44 484 29Q479 6 473 3Q468 0 454 0Q450 0 436 0T386 1T294 2Q220 2 181 1T138 0Q121 0 116 15Q120 54 133 60Q137 62 187 62H236L289 275L142 624H97",119937:"223 430Q192 430 192 448Q192 450 225 561T261 677Q265 683 270 684Q273 686 534 686Q796 686 797 685Q805 682 805 673Q805 668 804 661T800 648T798 641Q796 637 531 352L266 67L329 66H364Q412 66 446 70T523 96T596 157Q617 186 630 220T649 273T663 297Q667 299 684 299H688Q715 299 715 281Q715 278 673 145T628 8Q626 4 617 0H348Q289 0 221 0T139 -1Q112 -1 99 -1T78 1T69 5T68 12Q68 16 71 31T77 49L84 57Q91 65 104 79T133 110T170 151T213 196L610 624H540Q533 624 514 624T488 624T467 623T443 620T422 616T398 609T373 600Q292 560 255 449Q251 436 246 433T223 430",119938:"222 -8Q140 -8 89 34T38 158Q38 191 48 227Q72 329 151 390T327 452Q361 452 385 443T421 425T433 416H434L441 421Q448 426 460 430T486 435Q509 435 523 422T538 386Q538 380 522 315T488 179T467 93Q466 87 466 72Q466 42 483 42Q505 42 521 75Q531 94 541 134Q546 155 550 158T571 162H576H587Q607 162 607 148Q606 142 604 132T590 94T566 47T528 9T474 -8Q396 -8 358 40Q295 -8 222 -8ZM404 351Q383 401 324 401Q300 401 270 385T221 330Q206 296 186 220Q166 136 166 106Q166 72 184 58T228 43Q256 43 284 57T328 84T343 103Q343 106 374 228L404 351",119939:"220 -8Q142 -8 94 35T45 155V167Q45 187 52 218T104 426L153 622H149Q148 622 144 622T134 623T122 624T111 624T101 624T96 625Q84 628 84 642Q84 647 88 661T94 679Q98 684 109 685T185 690Q258 694 272 694Q289 694 293 679Q293 676 263 553L232 429L244 434Q256 440 281 446T331 452Q417 452 465 407T513 285Q513 235 494 184T439 90T346 20T220 -8ZM385 337Q385 400 318 400Q269 400 226 360Q214 349 211 341T191 268Q162 149 162 113Q162 44 226 44Q269 44 299 76T339 135T362 215Q364 222 365 226Q385 303 385 337",119940:"362 325Q362 344 371 361T390 386L399 394Q390 401 355 401Q276 401 231 338Q207 301 189 230T170 122Q170 43 264 43Q392 43 457 105Q472 120 480 117Q486 114 497 102T509 83Q509 79 502 70T477 47T432 21T360 1T259 -8Q194 -8 148 9T80 54T49 109T40 167Q40 280 129 365T352 451Q390 451 396 450Q448 442 473 416T499 358T477 302T421 274H417Q393 274 378 288T362 325",119941:"222 -8Q140 -8 89 34T38 158Q38 220 68 285T151 391Q230 452 329 452Q382 452 416 428L422 424Q423 424 447 523L472 622H468Q467 622 463 622T453 623T441 624T430 624T420 624T415 625Q403 628 403 642Q403 647 407 661T413 679Q417 684 428 685T504 690Q577 694 591 694Q608 694 612 679L467 91Q466 87 466 72Q466 43 483 43Q518 43 541 134Q546 155 550 158T571 162H576H587Q607 162 607 148Q606 142 604 132T590 94T566 47T528 9T474 -8Q396 -8 358 40Q295 -8 222 -8ZM404 351Q383 401 324 401Q300 401 270 385T221 330Q206 296 186 220Q166 136 166 106Q166 72 184 58T228 43Q256 43 284 57T328 84T343 103Q343 106 374 228L404 351",119942:"260 -8Q196 -8 151 9T83 54T52 111T42 169Q42 188 44 210Q50 240 58 266Q127 434 335 451L338 452Q342 452 345 452Q347 452 353 452T363 451Q426 451 464 424T502 352Q502 289 442 250Q381 211 222 211H184Q184 210 181 196T175 162T171 126Q171 43 264 43Q391 43 457 105Q472 120 480 117Q486 114 497 102T509 83Q509 79 502 70T477 47T432 21T360 1T260 -8ZM237 262Q427 266 427 349Q427 368 409 384T354 401Q316 401 287 388T242 354T216 314T202 278L197 263Q197 262 237 262",119943:"584 444Q597 439 597 426Q597 409 586 387Q580 382 505 382H434V380Q432 378 421 314T395 162T368 30Q324 -164 203 -199Q194 -201 175 -201Q123 -201 94 -177T64 -117T88 -58T145 -33Q169 -33 184 -47T200 -84Q200 -122 166 -150L174 -151H185Q202 -148 217 -112Q222 -94 240 9Q246 40 262 132T293 303T307 382H247H210Q190 382 182 385T173 400Q177 436 189 442Q193 444 256 444H318L319 446Q337 565 355 602Q373 640 404 664T458 694T503 701Q569 701 596 676T624 617Q624 581 599 557T544 533Q520 533 504 547T488 585Q488 596 491 606T499 624T508 637T516 646L520 650Q515 650 509 651Q459 651 459 561V554L458 518L452 484Q446 448 445 447V444H584",119944:"227 0Q142 0 93 43T43 166Q43 207 58 252T104 341T188 414T310 451L313 452Q316 452 319 452Q321 452 326 452T335 451Q367 451 390 443T425 425L436 416L443 421Q450 426 462 430T488 435Q511 435 525 422T540 386Q540 378 483 151T424 -82Q401 -139 335 -170T167 -202Q72 -202 36 -183T0 -125Q0 -90 24 -67T81 -43Q103 -43 119 -56T136 -99Q133 -124 114 -149L123 -150H183Q222 -150 254 -127T299 -74Q300 -71 306 -47T318 -1T324 23Q323 23 310 18T274 6T227 0ZM407 353Q406 354 404 358T400 365T395 371T388 379T381 385T371 391T360 396T346 400T329 401Q300 401 277 389T240 355T219 317T205 280Q171 148 171 109Q171 77 190 64T235 51T296 67Q322 82 337 98L345 106L407 353",119945:"477 56Q477 48 479 46T490 43Q522 45 544 75T577 140Q582 156 585 159T605 162H611H622Q642 162 642 148Q642 138 632 114T602 62T550 13T478 -8Q429 -8 394 17T358 83Q358 95 395 199T433 350Q433 400 394 400H388H383Q335 400 291 363Q256 332 236 298Q233 293 202 170T169 40Q160 18 141 5T99 -8Q70 -8 58 9T45 39Q45 51 116 336L188 622H184Q183 622 179 622T169 623T157 624T146 624T136 624T131 625Q119 628 119 642Q119 647 123 661T129 679Q133 684 144 685T220 690Q293 694 307 694Q324 694 328 679Q328 672 294 540Q286 507 278 473T264 420L260 403Q260 400 269 408Q327 451 393 451H401H410Q425 451 439 450T476 442T515 424T544 391T556 337Q556 286 517 179T477 56",119946:"205 615Q205 646 229 670T283 694Q310 694 324 679T339 641Q339 610 315 586T258 562Q235 562 220 577T205 615ZM24 296Q24 305 34 328T63 380T115 430T187 452Q205 452 223 448T262 435T295 406T308 360Q308 345 287 290T240 170T207 87Q202 67 202 57Q202 42 215 42Q235 42 257 64Q288 92 302 140Q307 156 310 159T330 162H336H347Q367 162 367 148Q367 140 357 117T329 65T276 14T201 -8Q158 -8 121 15T83 84Q83 104 133 229T184 358Q189 376 189 388Q189 402 177 402Q156 402 134 380Q103 352 89 304Q84 288 81 285T61 282H55H44Q24 282 24 296",119947:"321 616Q321 648 346 671T400 694Q425 694 440 680T456 640Q456 609 431 586T376 562Q353 562 337 577T321 616ZM297 360T297 373T294 392T288 400T278 401H276Q241 399 210 372T158 303Q151 287 148 285T129 282H123H116Q102 282 97 284T92 298Q96 331 153 391T279 451Q357 451 388 422T420 354V339L371 142Q363 111 353 71T339 13T329 -30T318 -64T308 -88T296 -109T283 -125T264 -142Q190 -202 88 -202Q44 -202 16 -181T-12 -125Q-12 -93 11 -68T68 -43Q92 -43 108 -58T124 -93Q124 -121 106 -144Q101 -150 103 -150Q120 -150 147 -128T191 -64Q194 -57 242 136T294 345Q297 360 297 373",119948:"99 -8Q71 -8 58 9T45 39Q45 51 116 336L188 622H184Q183 622 179 622T169 623T157 624T146 624T136 624T131 625Q119 628 119 642Q119 647 123 661T129 679Q133 684 144 685T220 690Q293 694 307 694Q324 694 328 679Q328 674 280 482Q231 290 231 287Q231 285 234 286Q259 302 294 334T356 390T420 433T493 452Q528 452 546 427T564 364Q564 308 538 282T480 256Q456 256 441 269T425 308Q425 339 444 359T483 384L502 389Q502 395 496 398Q493 400 483 400Q465 400 449 395T409 374T373 347T323 305T268 257Q274 256 282 256Q312 251 329 247T371 232T411 202Q431 181 431 146Q431 132 427 110T422 73Q422 44 440 44H442Q462 44 478 64T502 102T514 141Q518 157 522 159T547 162H558Q578 162 578 148Q578 118 537 56T440 -7H432Q374 -7 337 21T299 94Q299 103 301 116T304 139Q304 164 281 181T235 202L212 206H211Q176 47 160 24Q137 -8 99 -8",119949:"157 -8Q138 -8 118 -4T77 11T41 42T27 91V106L156 622H152Q151 622 147 622T137 623T125 624T114 624T104 624T99 625Q87 628 87 642Q87 647 91 661T97 679Q101 684 112 685T188 690Q261 694 275 694Q292 694 296 679L151 91Q150 85 150 71Q150 42 167 42Q186 42 205 75Q216 96 225 134Q230 155 234 158T255 162H260H271Q291 162 291 148Q290 145 289 140T283 118T271 87T254 54T229 23T197 1T157 -8",119950:"24 296Q25 302 27 312T41 350T65 397T104 435T159 452Q203 452 234 435Q268 419 285 384L295 392Q305 401 317 410T349 429T389 445Q411 451 446 451Q560 451 592 383Q593 380 594 379L595 375L604 384Q675 452 762 452Q893 452 916 367Q918 356 918 334Q918 285 881 183T841 66Q838 43 849 43Q876 43 901 69T940 138Q945 156 949 159T969 162H975H986Q1006 162 1006 148Q1006 138 996 115T966 63T914 13T841 -8Q794 -8 758 16T721 82Q721 96 758 199T796 351Q796 401 753 401Q702 401 662 369T599 298Q597 294 567 172T533 40Q525 22 506 7T462 -8Q435 -8 422 8T409 39Q409 48 425 114T458 248T476 320Q478 330 478 348T474 377T462 393T449 399T433 400H428Q380 400 336 363Q301 332 281 298Q278 293 247 170T214 40Q206 22 187 7T143 -8T104 7T90 39Q90 47 108 124T146 274L164 347Q166 355 166 372Q166 401 149 401Q129 401 115 379T89 306Q84 288 80 285T55 282H44Q24 282 24 296",119951:"24 296Q25 302 27 312T41 350T65 397T104 435T159 452Q203 452 234 435Q268 419 285 384L293 391Q363 452 454 452Q575 446 597 367Q599 356 599 334Q599 285 562 183T522 66Q519 43 530 43Q557 43 582 69T621 138Q626 156 630 159T650 162H656H667Q687 162 687 148Q687 138 677 115T647 63T595 13T522 -8Q475 -8 439 16T402 82Q402 96 439 199T477 351Q477 401 434 401Q421 401 409 398Q341 388 285 305L278 295L247 170Q216 46 214 40Q206 22 187 7T143 -8T104 7T90 39Q90 47 108 124T146 274L164 347Q166 355 166 372Q166 401 149 401Q129 401 115 379T89 306Q84 288 80 285T55 282H44Q24 282 24 296",119952:"254 -8Q191 -8 146 9T80 54T49 111T39 169Q39 206 53 247T96 329T176 402T292 446Q317 451 336 451L344 452Q353 452 359 452Q457 452 516 408T576 279Q576 169 488 81T254 -8ZM349 400Q321 400 287 385T231 338Q206 301 188 228T170 126Q170 99 178 83Q198 44 260 44Q367 44 409 157Q419 185 432 238T445 317Q445 336 443 348Q435 372 416 384T384 398T349 400",119953:"24 296Q25 302 27 312T41 350T65 397T103 435T157 452Q235 452 273 404Q336 452 409 452Q434 452 458 448T507 432T550 402T581 354T593 285Q593 221 564 159T480 53Q401 -8 302 -8Q290 -8 279 -7T259 -3T242 3T228 9T218 14T212 18L209 20Q208 19 190 -55T171 -131T198 -132H213Q240 -132 240 -150Q237 -187 223 -192Q219 -194 212 -194Q208 -194 176 -193T95 -192Q48 -192 24 -193T-3 -194Q-11 -194 -16 -190T-22 -182T-23 -176Q-20 -142 -7 -134Q-3 -132 20 -132H44L164 354Q165 357 165 372Q165 401 148 401Q113 401 90 310Q85 289 82 286T60 282H55H44Q24 282 24 296ZM465 339Q465 373 447 387T403 401Q375 401 347 387T303 360T288 341Q288 338 257 216L227 93Q248 43 306 43Q332 43 361 59T410 115Q425 147 445 224Q465 309 465 339",119954:"38 159Q38 209 58 260T113 355T205 425T327 452Q338 452 348 451T366 449T382 444T394 440T405 434T414 429T422 423T429 418Q440 429 481 440T533 452Q540 452 545 447T550 437Q550 432 481 152Q410 -130 410 -131T437 -132H452Q479 -132 479 -150Q476 -187 462 -192Q458 -194 451 -194Q447 -194 414 -193T330 -192Q277 -192 249 -193T217 -194Q202 -194 197 -179Q197 -175 201 -159Q206 -139 211 -136T243 -132H283L319 15L307 10Q295 4 270 -2T220 -8Q134 -8 86 37T38 159ZM402 353Q402 358 395 368T369 390T324 401Q301 401 282 394T249 369T226 338T208 297T196 258T186 218Q166 141 166 107Q166 44 229 44Q265 44 294 61T337 95Q341 100 371 222T402 353",119955:"24 296Q24 298 28 313T42 352T67 398T104 436T154 452Q198 452 230 437T273 404L282 411Q334 452 393 452Q441 452 470 423T500 350Q500 301 473 279T418 256Q395 256 379 270T363 308Q363 366 424 386Q424 388 420 391T405 398T385 401Q363 401 343 390Q321 380 289 341L252 192Q214 42 212 39Q190 -8 142 -8Q117 -8 103 7T89 39Q89 52 127 202T165 369Q165 402 148 402Q139 402 128 393T110 369Q100 348 90 310Q85 289 82 286T60 282H55H44Q24 282 24 296",119956:"140 290Q140 311 148 336T176 388T235 433T326 451H336Q355 451 373 449T418 439T460 412T476 363Q476 333 456 311T406 289Q384 289 371 302T357 335Q357 351 364 364T379 384L386 391Q386 392 381 394T362 398T330 400Q299 400 278 393T247 373T235 352T232 335Q232 322 242 312Q258 299 315 290T403 260Q457 224 457 167Q457 152 453 134T435 90T397 43T330 7T229 -8Q133 -8 95 22T57 91Q57 127 81 152T139 177Q161 177 177 164T194 121Q189 80 153 56Q179 43 236 43Q275 43 303 52T343 75T361 101T366 124Q366 148 338 161T272 180T232 186Q187 198 164 227T140 290",119957:"82 382H55Q21 382 21 399Q21 422 33 439Q39 444 93 444H144L162 517Q163 522 167 541T174 567T181 589T192 611T206 627T226 639T253 643Q276 643 291 630T306 594Q306 586 288 514Q284 499 280 481T273 454L271 445Q271 444 317 444Q322 444 331 444T345 445Q377 445 377 428Q377 408 368 390Q360 382 341 382H306H255Q182 86 182 75Q182 43 201 43H204Q242 46 279 81Q298 101 309 119T323 145T330 157T350 162H356H363Q377 162 382 160T387 146Q385 136 372 114T337 64T275 14T192 -7Q131 -7 95 19T59 90V105L128 381Q128 382 82 382",119958:"189 389Q189 397 187 399T176 401Q150 399 126 372T89 304Q84 288 81 285T61 282H55H44Q24 282 24 296Q24 307 35 331T65 383T117 431T187 452Q237 452 272 427T308 362Q308 347 273 254T238 111Q238 43 291 43Q319 43 344 58T380 86T391 103T426 247T464 396Q472 414 491 429T535 444T574 429T588 397Q588 390 570 315T534 168L516 97Q514 89 514 72Q514 42 531 42Q544 42 556 56Q574 76 589 134Q594 155 598 158T619 162H624H635Q655 162 655 148Q654 142 652 132T638 94T614 47T575 9T520 -8Q509 -8 498 -7T478 -3T461 2T446 8T434 16T424 23T416 29T410 35T406 39L405 41L397 34Q347 -7 288 -7H281Q148 -7 122 78Q116 95 116 125V136Q116 174 152 273T189 389",119959:"380 367Q380 397 406 425T465 453Q493 453 516 430T540 357Q540 314 524 250T467 115T373 13Q338 -8 292 -8Q218 -8 167 23T116 129Q116 178 152 275T189 388Q189 396 187 398T176 401Q148 398 125 372T89 304Q84 288 81 285T61 282H55H44Q24 282 24 296Q24 306 34 330T64 382T116 431T189 452Q231 452 269 429T308 362Q308 346 273 255T238 114Q238 43 306 43Q336 43 363 65T407 118T437 182T456 239T462 268Q462 290 417 315Q380 335 380 367",119960:"636 367Q636 400 664 426T719 453Q748 453 772 431T796 357Q796 321 782 256T727 112T633 6Q604 -8 567 -8Q466 -8 415 43Q414 42 410 38T403 31T396 25T388 18T378 11T367 5T355 0T340 -4T324 -7T306 -8Q249 -8 209 5T151 40T125 84T117 129Q117 176 153 274T190 388Q190 408 158 396Q112 376 90 306Q85 288 81 285T61 282H55H44Q24 282 24 296Q24 305 34 328T63 380T114 430T187 452Q240 452 274 427T309 362Q309 346 275 255T240 117Q240 43 317 43Q325 43 333 45T347 50T359 57T369 66T377 75T383 83T388 90L390 95Q390 99 389 110T387 129Q387 139 391 167Q393 177 419 282T448 396Q456 414 475 429T519 444Q546 444 559 428T572 397Q572 384 542 265T511 114Q511 43 579 43Q608 43 633 66T673 122T699 188T714 244L718 267Q718 291 673 315Q636 335 636 367",119961:"74 282H63Q43 282 43 296Q43 298 45 307T56 332T76 365T110 401T159 433Q200 451 233 451H236Q273 451 282 450Q358 437 382 400L392 410Q434 452 483 452Q538 452 568 421T599 346Q599 303 573 280T517 256Q494 256 478 270T462 308Q462 343 488 367Q501 377 520 385Q520 386 516 389T502 396T480 400T462 398Q429 383 415 341Q354 116 354 80T405 44Q449 44 485 74T535 142Q539 156 542 159T562 162H568H579Q599 162 599 148Q599 135 586 111T550 60T485 12T397 -8Q313 -8 266 35L258 44Q215 -7 161 -7H156Q99 -7 71 25T43 95Q43 143 70 165T125 188Q148 188 164 174T180 136Q180 101 154 77Q141 67 122 59Q124 54 136 49T161 43Q183 43 200 61T226 103Q287 328 287 364T236 400Q200 400 164 377T107 302Q103 288 100 285T80 282H74",119962:"206 -150Q240 -150 268 -134T314 -95T344 -48T362 -7T367 14Q339 -7 280 -7Q230 -7 195 5T144 39T122 79T115 122Q115 175 152 274T189 388Q189 396 187 398T176 401Q148 398 125 372T89 304Q84 288 81 285T61 282H55H44Q24 282 24 296Q24 306 34 329T64 381T116 431T188 452Q239 452 273 427T308 361Q308 347 273 253T237 109Q237 43 291 43T388 98Q388 99 425 246T463 396Q471 414 490 429T534 444T573 430T587 399Q587 386 537 186T483 -25Q461 -84 410 -126T296 -188Q248 -202 204 -202Q127 -202 96 -175T64 -114Q64 -82 86 -57T144 -31Q169 -31 184 -45T199 -83Q199 -89 198 -94T196 -104T193 -113T189 -120T184 -128T179 -134T173 -141T168 -147Q189 -150 206 -150",119963:"66 -8H60Q34 -8 34 5Q34 9 42 22T70 59T115 110Q162 156 255 229T381 332L389 339H381Q348 332 298 329T212 325T172 321Q168 318 151 318H146Q116 318 116 332Q116 334 118 342Q128 374 154 402Q205 452 265 452Q304 452 352 422T426 392Q441 392 462 421T485 451T508 452H518Q539 452 539 438Q539 431 516 401T458 334Q412 289 312 210Q229 146 191 111L183 103H195Q203 103 213 104T240 107T268 110Q301 114 337 116T391 119T428 123T455 134T469 157Q473 166 495 166Q521 166 525 161Q532 156 528 141Q510 81 456 37T337 -7Q297 -7 251 22T177 52Q154 52 134 38T100 8L88 -7Q86 -8 66 -8",119964:"76 60Q83 29 135 29Q190 29 264 81Q280 93 280 95T277 99T265 106T248 118Q189 166 189 237Q189 307 245 388Q267 421 299 436Q336 455 386 455Q488 455 550 403L559 395L571 405Q727 544 944 679L957 687L966 701Q968 704 970 707T973 712T975 714T978 716T982 717T989 717H995Q1004 717 1007 717T1013 714T1016 708Q1016 705 829 403L636 92L630 83Q659 93 685 110T728 143L745 158Q758 158 752 138L748 127L740 119Q676 58 605 42L593 22Q590 17 587 12T583 6T579 2T573 0T564 0H530H484Q480 3 480 8Q480 15 489 26T498 39T497 40Q477 40 423 49T327 74L316 78L302 68Q200 -8 121 -8Q85 -8 60 7T35 53T60 113T123 144Q144 144 153 132T162 106Q162 89 143 75T99 61Q90 61 76 65V60ZM904 614L905 615Q901 615 840 573T700 469T581 369L587 359Q600 340 608 315T618 273T622 238T624 216L764 414Q904 612 904 614ZM525 363Q493 405 379 418H375Q342 418 309 378Q251 300 251 234Q251 174 306 137Q318 128 322 131Q323 132 329 139Q351 161 362 180Q430 273 509 348L525 363ZM579 205Q579 245 571 278T556 323T546 337L521 311Q461 248 422 196T362 121L353 111Q427 85 499 79Q517 77 520 77L525 76L549 111Q551 114 556 121T563 131T568 138T573 147T575 157T577 169T578 185T579 205",119966:"367 89Q367 84 353 77T334 70Q325 70 312 83T298 120Q298 169 364 233T496 298Q538 298 563 275T588 220V213Q588 132 501 53T306 -26Q251 -26 211 6T170 114Q171 148 181 184T205 248T232 298T255 334T265 349T246 350Q127 350 77 390T26 480Q26 533 71 581T178 656T295 683Q312 683 312 676Q312 674 311 672L302 660Q294 648 292 647L286 646Q280 646 276 646Q197 641 145 583T93 476Q93 387 265 387Q271 387 277 387T287 388T292 388T313 414T373 483T451 562Q618 712 732 727Q733 727 740 727T753 728Q790 727 804 708T819 665Q819 643 810 617T773 553T699 481T572 414T385 361Q381 361 367 341Q247 172 247 86Q247 11 325 11Q404 11 465 95Q518 165 528 208Q529 212 529 220Q529 237 518 249T480 261Q431 261 387 209T343 126Q343 111 355 101T367 89ZM777 658Q777 691 738 691Q704 691 658 662T570 590T491 504T432 432T410 400H411Q416 400 440 405T505 423T589 455T675 506T743 576Q777 627 777 658",119967:"251 272Q199 272 168 298T136 374Q136 432 175 496T267 603Q321 645 395 676T552 708Q610 708 655 694T724 659T763 618T784 584L790 569Q792 569 800 572T819 576T840 578Q855 578 855 571Q855 566 846 554T829 541Q824 541 817 539T804 533T799 529Q802 517 802 483Q802 376 742 256T585 53T392 -31Q353 -31 300 -7L289 -2L277 -6Q242 -17 192 -17Q141 -17 113 -13T77 -3T68 14Q68 20 73 28T93 45T131 58Q152 62 197 62Q241 62 272 48L282 44Q308 65 334 93Q380 145 467 266T622 454Q644 476 664 493T694 517T720 534T740 547Q699 671 540 671Q461 671 385 625T276 534Q265 520 251 499T219 438T202 368Q202 309 267 309Q325 309 396 383T491 545Q492 548 493 552Q494 558 496 559T511 564Q513 565 514 565Q523 568 527 568Q534 568 534 560Q534 554 529 537Q507 442 420 357T251 272ZM332 20Q332 19 341 15T368 6T400 2Q425 2 457 13T531 49T614 125T690 248Q750 376 750 476V490L738 479Q698 436 646 366T554 239T455 121T332 20ZM226 20Q226 25 186 25Q181 25 174 24H166Q161 24 158 23H152Q170 21 197 21Q205 21 213 21T223 20H226",119970:"206 318L249 320Q249 327 259 352T282 399Q312 447 366 510T465 610Q588 717 661 717Q695 717 716 701T738 653T704 577Q663 522 610 474T512 397T424 346T359 315T333 306Q331 304 327 290T323 267Q323 229 368 229Q402 229 439 254T505 312T571 382T638 435Q642 437 644 437Q658 437 658 409Q655 403 647 399T624 379T595 326Q583 296 564 267T523 179Q504 126 483 91T423 27Q335 -37 231 -37Q191 -37 157 -30T95 -2T67 53Q67 89 94 123T159 158Q180 158 190 146T200 119Q200 102 178 89T136 75Q128 75 120 78T110 81Q105 81 105 62Q105 38 129 24T180 5T238 1H244Q282 1 319 32Q349 55 371 85T436 190L465 239Q413 192 354 192Q300 192 274 217T245 276Q245 284 242 284Q220 280 187 280Q106 280 59 315T12 409Q12 457 43 508T118 597T210 659T295 683Q308 683 308 675Q308 670 299 658T282 646Q266 646 240 633Q182 606 118 511Q76 448 76 400Q76 368 105 343T206 318ZM677 660Q677 680 646 680Q616 680 565 629Q537 601 514 571Q493 544 455 492T389 398T360 355Q366 357 386 367Q463 406 534 473T641 591T677 660",119973:"829 148Q845 148 845 143T841 130T823 109T788 83T730 54T644 22Q637 20 634 19T627 16T622 13T618 10T612 3T604 -6Q510 -112 396 -203T201 -312Q190 -314 171 -314H166Q156 -314 147 -312T123 -304T101 -283T92 -245Q92 -203 117 -160T175 -93Q214 -65 280 -41T390 -6T509 22L532 27L547 47Q673 219 673 225L665 228Q657 231 648 235T627 249T606 270T591 300T584 341Q584 389 614 447T686 544Q735 588 799 615T959 667T1108 713Q1118 717 1119 717Q1125 717 1129 705T1133 689Q1133 686 1115 673Q1051 627 1001 579T918 481T867 403T828 328T805 277Q802 271 801 267T798 261T798 259Q849 270 900 317Q956 371 956 421Q956 438 953 457T950 480Q950 481 950 482L951 484Q953 487 966 492T985 498Q989 498 994 473Q1000 441 1000 423Q1000 362 934 302T790 223L775 220L767 207Q757 191 731 158T685 98T662 63Q662 61 690 70T755 99T811 142L816 148H829ZM646 332Q646 308 659 291T685 268L698 263L735 320Q828 465 865 511Q923 582 1003 643L1005 645Q1004 645 924 620Q775 572 716 492Q646 401 646 332ZM184 -278Q233 -278 311 -212T444 -80L498 -15H496Q468 -20 424 -30T293 -70T174 -133Q167 -140 158 -153T138 -190T127 -232Q127 -278 184 -278",119974:"521 506Q521 493 549 493Q608 493 660 527Q667 531 690 555L736 604Q750 619 777 646T825 694T848 716T852 717Q857 717 860 711T865 697L866 690Q866 687 812 615Q654 404 654 401Q655 401 656 401T659 402T665 403T680 404Q718 404 734 374Q735 370 743 376Q745 377 752 382Q806 416 852 466T933 563T982 623Q1028 666 1075 686T1155 706Q1165 706 1173 705T1186 703T1194 699T1199 695T1201 692T1202 688V687L1204 677Q1204 667 1191 670Q1189 670 1183 670T1174 671Q1137 671 1086 643T1001 564Q970 517 899 449T749 339L739 333L736 322Q730 295 703 253T652 165T628 77Q628 21 681 21Q692 21 698 23Q751 46 817 134L827 148H844Q861 148 864 146Q869 140 859 127Q818 75 761 29T665 -17Q649 -17 633 -12T598 4T569 40T558 100Q558 128 563 152T585 205T609 245T643 294Q647 300 645 300Q633 297 615 297Q607 297 600 298T589 300T584 301Q581 301 569 284T536 236T488 171T418 97T331 28Q233 -37 155 -37Q104 -37 68 -17T29 44Q29 82 55 120T123 158Q144 158 154 146T164 119Q164 102 143 89T100 75Q92 75 86 76T77 80T72 82Q68 82 68 59Q68 37 85 23T123 5T167 0Q203 0 238 21T311 85T382 174T468 288T563 410Q576 426 588 440T607 462T615 472L605 468Q568 456 533 456H527Q490 456 463 483Q451 496 451 508T468 545T486 581Q486 593 465 593Q448 593 425 568T384 518T364 493Q364 492 347 492Q326 492 326 499T351 537T414 599T477 630Q509 630 528 615T547 576Q547 556 534 533T521 506ZM675 357Q675 368 665 368Q656 368 644 363Q631 355 616 333H628Q640 334 672 341Q675 354 675 357",119977:"764 513Q764 482 772 423T780 330Q780 304 778 285T775 256T773 245Q778 252 826 328T932 484T1042 617Q1077 652 1114 678T1173 715T1200 726Q1208 726 1208 717Q1208 711 1206 695L1203 679L1199 675Q1197 675 1187 670T1161 657T1133 639Q1050 583 959 456Q906 381 858 307T779 179T725 83T691 18T679 -6Q677 -8 660 -8H656Q639 -8 639 -1Q639 4 646 17Q685 93 685 173V196Q685 233 681 288T676 380Q676 438 687 487L664 454Q505 230 454 170Q366 64 290 14T163 -36H152Q87 -36 58 -11T29 46Q29 82 55 120T123 158Q144 158 154 146T164 119Q164 102 143 89T100 75Q92 75 86 76T77 80T72 82Q67 82 67 59Q67 37 89 19T167 1Q187 1 197 3Q221 9 246 22T292 52T336 91T375 132T411 174T440 212T463 245T478 266Q779 695 784 698Q786 700 802 700H818Q824 694 824 692T809 668T779 604T764 513",119978:"259 -8Q230 -7 205 0T153 24T112 74T96 153Q96 254 174 379T374 599T607 707H621Q732 707 778 661Q805 634 805 598Q805 558 775 517T696 452L684 447V441Q684 378 626 273T484 97Q379 7 288 -7Q279 -8 259 -8ZM760 594Q760 670 608 670Q562 670 493 622T347 472Q174 240 174 131Q174 76 205 53T279 29Q294 29 306 32Q405 60 507 205Q592 325 616 401Q625 426 625 435Q625 436 621 436T603 440T569 449Q524 466 515 475Q513 477 513 481T525 496T541 508L548 504Q555 501 565 497T587 488T609 480T625 476Q627 476 626 481Q626 486 623 494T613 513T589 533T548 541Q495 541 413 454T286 281Q265 241 254 201T240 141T235 120Q234 118 217 111T197 104Q195 104 192 107T189 112Q190 125 193 147T220 231T280 348Q335 428 407 493T539 576Q548 578 563 578Q594 578 617 568T653 546T672 518T681 494T683 482Q683 481 684 481Q690 481 707 495T742 538T760 594",119979:"571 345Q571 384 612 418T687 452Q698 452 698 445Q698 436 679 417Q677 415 670 415Q650 412 633 389T615 350Q615 340 621 331T634 319T643 315L663 342Q751 462 817 536Q873 595 896 614L907 625Q843 680 701 680Q594 680 499 632T344 516Q317 486 296 449T267 384Q262 366 262 354Q262 332 276 316T326 299H327Q374 299 426 338Q481 376 537 456T597 598Q597 616 599 617Q601 619 614 624T630 630Q639 630 639 604V587V581Q639 519 597 456Q544 377 462 320T318 262Q278 262 250 282T222 350Q222 418 285 504Q360 597 480 656T702 716Q773 716 825 707T898 688T951 660Q962 670 985 685T1012 700Q1018 700 1022 690T1026 673Q1026 670 1019 664Q988 633 988 631Q988 630 999 618T1020 580T1031 522Q1031 471 1003 419T928 330Q854 275 765 264Q757 262 733 262H714L701 245Q615 121 473 42T218 -37Q159 -37 125 -15T90 46Q90 82 116 120T185 158Q203 158 213 147T224 121Q224 110 219 102Q198 75 159 75Q154 75 149 76T143 77T140 77Q137 72 137 53Q138 37 149 26T177 9T205 2T228 0Q313 0 419 74T602 257L620 281L614 285Q607 289 601 294T587 306T576 323T571 345ZM950 529Q950 576 943 576Q940 576 840 439T741 299H751Q804 300 845 334T924 438Q949 490 950 529",119980:"330 387Q330 331 402 331Q463 331 514 371T589 459T613 542Q613 559 608 570T598 588T593 596Q593 601 617 610Q632 617 636 616Q675 585 675 527Q675 464 629 409T516 324T387 294Q271 294 271 394V402Q271 438 292 478Q344 582 457 649T672 717Q765 717 825 675T885 548Q885 433 771 298T498 76Q493 73 491 72T486 69T484 67T485 66Q539 41 607 41Q655 41 703 71T780 139L787 148H804Q806 148 809 148Q826 149 826 140Q826 128 786 91T687 19T589 -16H576Q503 -16 414 20L396 27Q279 -17 192 -17Q130 -17 92 2T54 53Q54 92 107 123T222 155Q303 155 401 106L431 91L441 97Q476 118 527 157Q622 236 711 361T801 573Q801 591 795 607T775 641T732 668T660 679Q592 679 528 644T422 560T355 464T330 387ZM201 20Q232 20 267 27T322 40T342 49Q342 52 315 60T243 77T160 86Q150 88 144 88Q130 88 122 79T112 62L111 53Q111 20 201 20",119982:"346 463Q346 419 406 386T576 352H588L613 384L681 476Q767 594 842 651T973 708Q1016 708 1016 661Q1016 621 987 562T894 449Q802 375 696 338L682 334L665 312Q638 279 605 233T547 158T482 97Q418 46 332 5T158 -36Q87 -36 58 -11T29 48Q29 82 55 120T123 158Q144 158 154 146T164 119Q164 102 143 89T100 75Q92 75 86 76T77 80T72 82Q67 82 67 59Q67 28 98 14T166 0Q232 0 320 55T491 226Q530 279 551 305L558 314Q558 315 543 315Q417 321 353 365T289 460Q289 566 488 632Q578 662 660 665H679Q685 660 685 657T676 642Q670 633 666 629L664 628Q663 628 661 628T655 628Q606 628 546 615T426 568T350 486Q346 475 346 463ZM976 653Q976 671 959 671Q938 671 919 661T883 629T858 593T835 554Q832 548 830 545Q802 495 775 455T734 400T721 382L736 388Q876 449 946 568Q948 572 949 573Q976 622 976 653",119983:"354 350Q264 350 264 426Q264 442 265 448Q279 514 347 582T503 692T662 735Q719 735 774 714T882 672T983 651Q996 651 996 644Q996 639 977 612T954 581Q953 580 938 580Q909 582 884 587L869 591L870 587Q870 583 849 557T796 491T748 422Q729 391 692 313T620 188Q555 105 454 34T253 -37Q214 -37 181 -30T120 -2T92 53Q92 89 119 123T184 158Q205 158 215 146T225 119Q225 102 203 89T161 75Q153 75 145 78T135 81Q130 81 130 62Q130 39 153 24T204 5T267 0Q311 0 358 29T454 117T539 226T629 358T710 476Q726 496 744 516T778 551T807 577T828 595L836 601L785 623Q743 642 713 651T668 661T626 663Q564 663 509 644T418 596T356 535T317 475T305 431Q305 416 312 408Q323 388 369 388Q429 388 465 411T530 480Q557 526 557 565Q557 573 556 579T555 587T555 590Q555 591 568 600T584 611Q588 612 600 603Q622 581 622 549Q622 516 600 475T536 405Q454 350 354 350",119984:"55 377Q55 443 122 523T290 660T478 717Q533 717 575 689T618 594Q618 565 611 538T585 477T552 422T506 355T458 288L357 146Q307 68 307 31Q307 20 318 20Q326 20 331 21Q367 27 411 57T490 128L767 500L861 617H908H939Q953 617 956 616T960 609Q960 605 928 566T816 423T648 198Q587 113 571 86Q540 34 540 21Q540 20 545 20Q580 25 623 55T696 124Q702 132 704 133T722 134H739Q744 130 744 127T735 113Q713 80 655 38T548 -14Q527 -17 524 -17Q475 -17 473 47V63L462 55Q364 -17 302 -17Q235 -17 235 69Q235 88 239 105T248 135T268 171T292 205T328 251T369 304Q376 313 395 338T423 374T450 408T476 445T499 479T519 514T534 546T545 579T548 608Q548 647 522 663T460 680Q355 680 243 591T99 406Q97 399 97 383V377Q97 339 153 339Q169 339 175 340Q215 350 241 373T298 444Q333 496 349 535T367 588T374 603Q402 616 408 616Q416 616 416 608Q416 563 393 492T320 378Q233 302 140 302H132Q75 302 57 353Q55 361 55 377",119985:"540 717Q542 717 545 717Q562 717 562 710Q562 708 557 702T541 678T517 632T485 544T448 407Q447 405 443 388T438 366T433 345T427 321T420 299T411 274T400 250T387 223T372 197Q363 181 364 181L388 203Q476 284 527 354T620 490T718 612Q754 647 790 673T835 700Q839 700 842 691T848 672L850 662Q850 657 842 653Q803 630 768 600T699 527T653 467T610 405Q554 322 518 282T368 138Q307 84 273 51T231 9T218 -5L207 -17H175Q169 -11 169 -9Q169 -4 183 10Q227 56 258 120T302 234T330 350T356 445Q357 450 360 458L362 464Q317 434 276 434Q221 437 221 479Q221 498 240 521T259 552Q259 565 235 565Q209 565 174 546T105 482Q103 480 102 478T99 474T97 472T95 470T93 468T90 467T86 467T81 467H75Q56 467 56 475Q56 482 82 511T156 570T253 601Q289 601 311 590T334 557Q334 543 312 517T289 478Q289 471 297 471Q327 471 378 514Q384 519 390 531T412 571T451 632Q482 675 524 717H540",119986:"232 504Q232 492 263 492Q304 492 356 515L367 520L379 537Q443 632 515 705L527 717H543H552Q564 717 564 709Q564 705 562 703T554 694T540 677T518 643T488 589T448 504T398 385Q368 309 353 281L349 270L523 472L669 634Q726 695 737 706T757 717H765Q786 717 786 710Q786 704 776 691T738 627T675 497Q630 394 609 354T541 244Q456 120 449 111L447 107L448 108Q630 240 700 327Q734 368 788 463Q821 520 841 550T898 619T980 683Q1010 700 1018 700Q1020 700 1023 697T1026 692Q1026 688 1024 671T1020 652Q1018 650 1007 645T988 635Q940 609 902 565T842 477T781 374T699 272Q653 226 535 133Q423 47 373 -2L358 -17H342Q320 -17 320 -11Q320 -7 328 5T354 46T390 112Q416 161 439 217T488 326T564 453L589 490Q587 490 523 414T352 217T166 14Q138 -16 137 -16Q136 -17 120 -17Q106 -17 103 -16T99 -9Q99 -5 100 -3T106 3T116 14T132 35T154 72T184 129T222 212T270 327Q310 426 337 471L326 467Q278 455 243 455Q209 455 188 462T161 478T155 496Q155 508 176 533T198 576Q198 579 198 581T192 588T178 593Q151 593 100 519Q89 504 86 502T75 499H68Q46 499 46 506Q46 510 63 534T112 587T170 627Q178 629 195 629Q235 629 252 613T270 577Q270 556 251 532T232 504",119987:"351 351Q308 351 290 373T272 426Q272 487 329 566T478 688Q538 717 584 717Q635 717 681 696T745 620Q752 598 752 564T745 498L741 485Q742 486 769 516T825 573T889 634T962 689T1027 716Q1035 717 1060 717Q1083 716 1096 714T1120 705T1131 686Q1131 668 1109 647T1055 626Q1035 626 1026 638T1016 663Q1016 667 1020 679H1015Q971 671 886 589T728 413L688 360Q688 359 725 359H750Q762 359 766 357T770 348Q769 345 761 335T750 322Q748 321 704 321H660Q651 311 632 282T589 199T565 107Q565 25 653 20Q684 20 720 44T779 95T826 152T850 183L856 184Q861 184 865 184Q888 184 888 173Q883 163 845 117Q770 37 723 10T638 -17Q584 -14 554 17T523 101Q523 147 534 167L532 166Q530 164 526 160T518 153Q378 15 256 -15Q250 -16 226 -16Q161 -16 132 7T103 59Q103 93 129 125T194 158Q232 158 232 121Q233 118 233 113T221 96T188 77Q182 75 168 75T150 78V70Q150 43 178 32T241 20Q340 20 527 286L552 321H524Q489 321 489 330Q489 333 497 344T509 358Q511 359 545 359H579Q580 362 597 389T631 445T661 514T675 586Q675 637 645 658T572 680Q506 680 444 632T348 527T314 434Q314 388 361 388H364H366Q380 388 389 390T416 408T457 454Q487 497 505 536T526 594L529 613Q531 615 545 622T560 630Q568 630 573 613T578 577Q578 518 532 455Q504 413 453 382T351 351",119988:"155 280Q116 280 87 300T57 368Q57 409 87 466T192 589Q269 653 345 684T472 716Q572 716 613 675Q644 644 644 599Q644 585 643 574T637 550T629 529T616 505T600 481T578 450T554 416Q494 330 493 328L480 306Q466 278 466 256Q466 227 492 227H496Q514 227 534 234Q541 237 544 241T571 279L762 559Q777 579 792 595Q818 620 856 646T919 686T946 700Q951 700 955 692T959 677Q959 673 947 665T911 639T866 595Q816 538 749 408T640 225Q574 138 464 61T248 -17Q190 -17 144 1T98 62Q98 81 109 102T131 135Q156 156 183 158Q226 158 226 121Q226 111 224 107Q215 93 196 84T162 74Q154 74 147 77H144V70Q146 41 185 31T263 20Q363 20 493 175L507 192H504Q500 191 498 191Q484 189 476 189Q430 189 405 219T379 287Q379 294 379 299T382 311T385 322T391 335T398 347T408 363T420 379T434 399T450 422Q455 429 469 449T488 475T504 499T520 523T533 543T544 565T552 583T557 603T559 620Q559 680 467 680Q402 680 333 646T213 563T131 462T98 373Q98 343 119 330T169 317Q187 317 212 333Q242 354 291 423T352 555Q354 562 355 588Q355 612 356 612Q357 614 371 622T387 630Q391 630 397 623T409 597T415 556Q415 507 380 448T294 344Q216 280 155 280",119989:"221 428Q221 487 280 555T425 670T583 717H587Q641 717 665 695T689 646Q689 625 674 600T658 564Q658 550 671 541T695 530T710 528L718 539Q779 613 821 646Q894 707 964 707H970Q1010 707 1025 675Q1032 661 1032 645Q1032 626 1022 607Q1008 579 980 560T897 522Q867 512 836 505T788 496L771 493Q768 493 760 477T736 429T702 370Q700 367 698 363Q696 360 696 359H805Q809 355 809 350Q809 340 791 322Q789 321 728 321H668Q562 179 433 88L419 78L434 73Q505 54 554 54Q609 54 654 82T720 140H752Q758 134 758 132Q758 128 747 113Q711 67 657 32T552 -14Q540 -16 517 -16T480 -15T439 -3T375 27L354 38L338 30Q257 -8 191 -8H184Q154 -8 133 -5T103 1T88 10T83 19T83 29Q83 35 86 44T100 65T127 88T173 105T241 112Q286 112 342 99L360 95L372 105Q434 157 523 270L560 320Q560 321 533 321L507 322Q502 325 502 330Q502 339 521 358Q523 359 556 359H588L669 474L682 491Q676 492 665 494T647 498T632 503T614 510T596 521Q556 547 556 570Q556 585 579 618T603 663Q603 679 568 679Q510 679 452 650T354 581T288 500T262 431Q262 407 280 397T321 387Q331 387 341 390T360 398T376 409T390 423T400 435T409 447L414 454Q457 514 460 562Q460 575 461 576Q461 577 475 586T492 595Q496 595 503 588T514 572Q520 559 520 539Q520 473 452 412T308 351Q269 351 245 370T221 428ZM989 642Q989 667 953 671Q905 671 871 644Q853 632 832 604T799 554T787 531H788Q801 531 842 539T916 561Q989 592 989 642ZM198 29Q230 29 257 36T295 52L306 59Q306 63 259 73Q251 74 209 74Q177 74 158 66T134 48L130 40Q130 29 198 29",120068:"22 505Q22 563 94 624T271 685H280Q416 685 443 560Q447 535 447 504Q444 414 405 330L399 319L229 155Q233 154 241 153T253 150T265 145T281 135T301 119T328 93L357 64L402 92Q438 116 473 137L500 154V339Q500 528 495 593V601L559 649Q621 696 624 696L638 686L629 677Q599 650 593 638Q582 614 581 504Q580 490 580 443Q580 314 584 238Q584 235 584 224T584 210T585 199T586 187T588 176T591 164T595 152T601 137T609 121Q630 77 640 77Q661 77 703 101Q704 95 706 90L707 86V84L636 29Q618 15 601 2T574 -19T564 -25L500 121Q499 121 399 48L299 -26Q298 -26 291 -15T272 11T245 42T209 69T165 80Q120 80 58 43L48 37L40 42L32 48L122 117Q196 173 241 211Q319 280 343 327T368 447Q368 535 317 582Q264 633 199 633Q155 633 122 605T86 542Q86 518 133 467T181 387Q181 348 140 309Q113 281 73 260L64 255L50 265L59 273Q112 307 112 345Q112 363 90 387T45 441T22 505",120069:"48 506Q48 568 120 629T268 691Q362 691 425 594L431 585L441 594Q478 628 528 657T629 686Q665 686 687 670Q703 658 718 584T753 506Q756 505 763 505Q778 505 804 512L815 516L820 496Q820 494 808 490T774 476T732 454Q720 445 708 437L675 415L640 394L625 383Q626 382 635 382Q652 382 670 379T712 364T754 336T784 289T797 220Q797 172 776 122Q769 106 766 102T745 84Q654 11 619 -8T538 -27Q483 -27 387 10T249 47Q218 47 186 34T133 8T112 -5T104 7T97 21L196 82Q259 120 284 140Q333 181 351 214Q368 251 368 353Q368 588 228 620Q222 621 205 621Q160 621 139 596Q117 569 117 548Q117 526 162 470T208 387Q208 352 179 320T104 264Q88 256 86 256Q83 256 70 266L82 274Q134 309 134 343Q134 352 130 359Q118 377 100 401T72 439T56 470T48 506ZM453 528Q457 496 457 419L458 357L488 367Q554 390 622 425Q673 449 673 453L671 454Q669 456 665 460T657 473T648 498T639 541Q629 597 616 613Q599 633 567 633Q534 633 493 599Q471 577 457 540L453 528ZM713 176Q713 252 661 295T528 339Q512 339 494 336T466 330T455 325Q454 325 452 311T444 270T425 217L420 207L304 118L319 116Q381 111 475 74T602 37Q655 37 684 79T713 176",120071:"346 611Q300 611 261 604T194 584T144 555T107 519T82 481T65 443T55 410T50 383T48 367L37 372L27 378V393Q33 524 115 603Q160 648 230 666T365 685Q423 685 434 684Q745 653 745 405Q745 281 694 151L687 133L657 103Q524 -27 470 -27Q456 -27 331 18T157 64Q122 64 84 28Q67 9 57 -6L50 -16L43 -8L35 0Q35 3 46 22T83 74T141 133H154Q208 136 253 161T299 230Q299 259 277 290T232 348T209 392Q209 434 254 479T358 556L368 561L382 550Q382 549 381 548T377 545T371 541Q353 527 326 496T298 444Q298 430 343 365T389 277Q389 240 353 202T267 136L252 127Q304 118 400 83T513 47Q548 47 582 79T635 145Q671 208 671 323Q671 390 651 441T599 524T523 576T436 603T346 611",120072:"301 564Q240 564 203 507T165 361Q165 280 190 218T260 119T358 64T474 46Q491 46 499 47L511 48L628 106V80L499 -5Q498 -6 497 -7T494 -10T490 -12T485 -15T478 -17T468 -19T456 -21T439 -22T418 -23T392 -24Q252 -20 169 67T86 315Q86 409 124 491Q128 500 139 508Q211 560 272 591L293 601L325 585L338 594Q374 617 422 639T502 674L532 685Q533 685 540 663T557 614T574 581Q580 575 591 575Q600 575 616 580T634 585V564L623 559Q572 535 532 529L522 527Q491 547 442 627Q442 628 440 627T435 624T428 620Q410 610 405 597T399 559V553Q399 534 409 487Q419 431 427 369L476 400Q526 431 526 432Q531 426 537 420Q565 382 602 359Q611 353 610 352Q609 351 575 332T537 312Q536 312 505 335T463 358Q451 358 439 352T425 337Q394 243 263 223L251 221L243 229L235 236L245 239Q274 247 303 266Q320 277 325 290T330 336Q330 394 315 451T300 531Q300 549 303 561Q303 564 301 564",120073:"198 617Q177 617 159 609T128 587T106 557T91 524T82 494T76 472L75 463Q74 463 67 468T59 474Q59 488 63 510T80 564T114 622T170 667T253 686Q272 686 295 680Q330 672 384 645T468 598Q498 580 524 580Q549 580 595 626L612 643V616L599 599Q522 500 482 500Q466 500 435 514L420 521Q388 516 349 486T309 415Q309 396 323 366T352 315T367 294Q367 293 375 301T398 322T429 352L490 410Q537 355 542 332Q542 330 531 315T510 286L499 273Q479 313 449 313Q437 313 419 303T390 282L378 271L394 250Q444 183 470 129Q484 96 484 71Q484 -19 402 -86T223 -153H220Q175 -153 137 -120Q103 -89 103 -8Q103 12 106 40T109 96Q109 132 103 146T72 161Q46 161 16 143L14 154L11 165Q88 219 143 219Q163 219 177 197T192 127Q192 102 186 65T179 4Q179 -60 210 -88T272 -117Q319 -117 362 -75T405 33Q405 72 363 139T278 271T235 368Q235 385 243 404T264 439T292 472T324 500T353 522T374 538L382 543Q382 544 351 562T274 598T198 617",120074:"373 560Q373 543 378 509T388 448T394 421Q396 421 416 433T474 474T548 537L538 543Q481 570 452 628L487 659Q521 690 522 690L526 684Q529 677 535 667T551 646T575 625T607 608Q617 606 621 606Q644 606 660 622L664 600L497 455Q495 453 527 453H546Q628 453 665 407L666 406Q710 357 710 297Q710 196 631 109L621 98L577 69Q471 -7 452 -15Q413 -26 370 -26Q239 -26 155 59Q66 148 66 319Q66 442 113 505L191 552Q269 600 270 600H271Q273 600 280 596T293 589T299 586Q300 586 357 623Q413 659 415 659L426 649Q373 604 373 560ZM219 228Q305 262 305 329V343Q305 384 294 434T282 519Q282 562 287 567Q287 569 286 569Q222 556 191 520Q144 464 144 362Q144 213 228 128T420 42Q514 42 568 103T622 255V260Q622 320 578 357Q526 400 453 400Q434 400 410 396L399 394L400 378V372Q400 330 388 301T348 254T305 232T252 217Q245 215 242 214L234 213L226 220L219 228",120077:"194 601Q175 601 155 590T121 564T95 533T76 506L69 495Q55 503 55 507Q55 509 60 521Q87 586 132 636T222 686Q251 686 289 660T363 607T422 580Q442 580 466 588T506 604L522 612V591L487 574Q371 517 359 517H357Q332 522 280 561T194 601ZM383 39Q383 96 356 203T329 361Q329 364 329 370T330 378L331 388L339 399Q362 429 394 462T446 513T469 531Q470 531 477 527T484 521L474 509Q411 434 411 379Q411 341 434 223T458 82Q458 1 390 -69T239 -139Q191 -139 162 -123T123 -83T108 -30T101 23T88 64T52 80Q27 80 -4 64L-10 80Q-5 85 13 98T63 128T118 144Q149 144 163 129T179 93T182 38T187 -19Q199 -96 278 -96Q294 -96 309 -91T343 -73T372 -31T383 39",120078:"154 37Q219 41 219 142Q219 203 190 302T160 434Q160 445 172 472T209 534T269 602T354 657T460 680H472Q576 680 618 617V599Q618 578 615 555T608 517T602 501Q596 495 587 495Q586 495 586 499Q586 500 586 505T585 513Q567 628 415 628Q384 628 356 621T302 596T260 546T244 466Q244 416 258 377L261 367L276 382Q294 401 317 422T386 471T468 500Q500 500 518 477T544 422T554 386Q555 382 560 376T576 364T601 357Q612 357 623 361Q623 360 621 351T617 340L541 305L465 272Q469 271 476 270T488 266T502 260L512 255L519 242Q533 211 546 157T564 93Q584 53 617 53Q649 53 682 74V54L675 46Q646 17 612 -5T554 -27Q546 -27 538 -23T517 -9T494 28T478 91Q465 172 448 200T378 228Q337 228 289 207L288 196Q288 160 284 138Q283 125 262 98Q185 1 112 -24L102 -27L91 -25Q47 -13 17 31Q17 33 49 69L80 106Q111 37 154 37ZM421 434Q411 436 405 436Q370 436 336 407T275 337L267 325L271 313Q288 257 288 234Q289 234 395 276T502 319Q501 320 499 323T493 330T485 345T475 371Q473 378 468 388T449 416T421 434",120079:"251 231Q251 254 206 341T160 468Q160 529 238 605Q313 677 425 685L432 686Q440 686 445 686Q520 686 545 657T571 576Q571 548 568 517T564 480Q564 466 572 460T608 452H623V431L619 430Q618 430 611 428T591 423T566 417L516 404Q497 415 491 419T480 433T475 461Q475 470 477 498T480 546Q480 561 480 569T474 592T459 615T429 631T379 638Q322 638 283 606T239 526Q237 480 280 394Q319 310 320 268V250Q308 235 244 169L203 128H210Q215 128 256 112T357 80T466 64Q526 64 564 88T625 186L629 196Q643 187 644 186Q618 70 604 41Q577 -15 513 -24Q496 -26 476 -26Q418 -26 344 -3T211 45T133 69Q115 69 97 50T65 7T49 -20L45 -16Q41 -11 37 -6T33 0Q33 8 66 69T111 134Q251 156 251 231",120080:"687 578Q690 586 719 612T794 665T877 692Q909 692 926 670T953 614T973 570Q983 561 1000 560Q1023 560 1048 569V553L1034 546Q1003 528 972 504T933 466Q905 403 905 264Q905 205 909 172T920 126T940 91Q951 74 959 74T997 87L1027 100V79L956 27Q940 15 922 2T894 -19L885 -26Q883 -26 854 27L825 80V192Q826 314 830 341Q831 345 833 356Q840 398 844 404Q871 444 920 489L917 491Q914 493 911 495T903 501T898 508Q893 516 877 562T852 616Q840 628 818 628Q751 628 702 541L697 532L700 515Q708 467 708 419Q706 348 690 276T662 169T643 126L634 116Q626 105 611 87T581 51L522 -22L514 -15Q470 21 452 21Q431 21 394 -16L384 5L386 9L426 60Q449 87 460 95T486 104Q487 104 491 104T497 103Q514 99 541 81L559 69Q595 96 606 169T618 350Q618 486 598 543T517 601Q484 601 458 570T432 523Q432 516 434 492T436 443Q436 250 369 133L363 122L280 50Q207 -16 192 -27L182 -18Q136 26 106 26Q83 26 62 9T37 -16L27 0L33 10Q41 22 54 39T94 81T143 106Q178 106 225 62L235 53Q283 82 307 117Q352 190 352 359Q352 408 345 451T320 534T267 597T183 621Q159 621 147 617T120 598Q97 574 96 556Q96 528 143 469T191 377T161 311T102 262T70 245Q69 245 59 252T49 260L56 264Q63 268 73 275T94 291T111 312T118 338Q118 355 95 384T50 446T27 506Q31 567 101 626T255 686Q297 686 330 671T382 632T409 595T421 572V571L430 580Q454 610 496 634T588 659H590Q655 659 683 585L687 578",120081:"112 334Q112 356 70 410T27 497Q27 553 94 619T229 685Q230 685 236 685T246 686Q303 686 349 654Q373 636 392 607T419 558L426 538L454 576Q474 604 486 618T520 651T569 678T633 686Q668 684 687 673T713 651T730 609Q730 608 732 600T736 588T741 578T747 568T754 561T765 555T779 553Q789 553 817 562Q819 557 819 555V547L790 526Q743 492 730 479T712 447Q697 369 697 281Q697 166 726 108Q741 76 755 68Q759 66 767 66Q789 66 825 93V82Q825 71 822 70Q821 69 763 27T701 -18L692 -25L668 15Q662 25 650 45T635 70L627 85V107Q627 122 626 162T624 285Q624 381 632 398Q638 409 651 425T675 454T696 477T707 489H696Q683 490 679 492T669 507T653 551Q642 588 627 608T584 628Q572 628 560 625T538 616T519 602T502 586T486 568T473 549T463 532T454 517T448 504L445 497Q437 480 437 474Q437 472 439 461T444 421T446 348Q446 205 405 124Q396 105 392 100T368 78Q312 32 278 9T235 -18T214 -22Q191 -22 170 -10T139 12T129 25T160 66T192 105Q193 102 194 98T200 83T213 64T233 49T261 42Q303 42 339 90Q373 134 373 268Q373 397 339 493T235 618Q215 628 191 628Q155 628 126 604T97 548Q97 524 120 493T168 431T192 381Q192 346 164 318T86 260L70 250L54 266L63 272Q112 300 112 334",120082:"428 596Q412 596 386 595T350 593Q289 593 270 625Q267 632 267 640Q267 656 280 672T312 705T336 729H343Q351 729 351 728Q342 710 342 703Q342 683 382 676T493 662T604 643Q648 627 677 599T720 535T739 466T744 392Q744 317 732 260T696 166T659 116T621 83Q617 80 615 78Q485 -27 377 -27Q320 -25 272 -9T187 21T122 36H116Q65 36 29 -13L27 -15L12 0Q12 1 32 26T76 78T109 109Q145 123 166 150T187 207Q187 244 134 318T80 412Q80 454 112 498T176 566T213 590Q216 590 224 585L234 580L225 573Q216 566 207 557T188 536T172 511T165 484Q165 448 213 368T261 259Q261 241 252 219T228 179T200 146T176 122L167 112Q170 111 174 111Q188 110 233 91T339 55T453 37Q508 37 556 68T626 152Q655 219 655 328Q655 543 532 582Q484 596 428 596",120083:"112 339Q112 354 91 380T49 438T28 497Q28 565 95 628T242 692Q261 692 277 689T307 682T331 670T351 655T367 637T379 619T388 600T395 582T401 565T405 550Q409 554 422 570T453 603T500 641Q573 692 637 692Q656 692 670 686T692 672T705 647T713 618T718 584Q720 568 721 562T728 546T742 534T768 530Q776 531 782 532T791 535T796 536Q799 536 804 521Q801 519 789 513T764 499T738 480Q697 447 680 414Q677 407 677 396Q677 370 713 312T750 210Q750 125 686 57T560 -11Q540 -11 475 13L410 37V31Q410 -9 412 -50T417 -118T420 -150Q419 -150 373 -184T326 -218L305 -208Q305 -207 307 -196T314 -165T322 -116T328 -46T331 43V63L318 66Q270 80 250 80Q233 80 213 70Q183 57 138 -3L128 -16L118 5L125 20Q193 154 282 154Q309 154 331 146V287Q331 444 327 469Q321 522 301 560Q284 590 251 611T184 633Q146 633 119 607T92 550Q92 539 94 534Q100 516 143 460T186 386Q186 366 170 336T119 281Q102 264 70 250L49 260L56 266Q64 271 72 278T90 296T106 317T112 339ZM602 345Q602 357 608 371T622 397T642 421T661 441T678 456L686 462Q663 473 652 486T639 512T634 553Q631 594 624 608T593 631Q587 632 567 632Q539 632 497 600T416 497L410 484V122L467 103Q481 99 502 92T533 82T557 75T578 69T594 66T610 64Q647 64 672 87T697 144Q697 180 650 250T602 345",120084:"428 596Q412 596 386 595T350 593Q313 593 291 605T268 638Q268 644 269 648T274 658T284 669T301 689T326 718L336 729H343Q351 729 351 728Q342 710 342 703Q342 683 382 676T493 662T604 643Q744 592 744 398Q744 299 708 213T646 104L603 68L614 55Q670 -5 710 -5Q726 -5 744 1T772 14L781 20Q782 20 782 7V-6L771 -13Q673 -69 665 -69L647 -63Q552 -30 514 8H512Q509 8 500 3T471 -9T428 -23Q405 -27 377 -27Q305 -24 228 6T124 36Q69 36 27 -16Q23 -13 19 -8L11 0L27 20Q93 102 109 109Q145 123 166 150T187 207Q187 244 134 318T80 412Q80 454 112 498T176 566T213 590Q216 590 224 585L234 580L225 573Q216 566 207 557T188 536T172 511T165 484Q165 448 213 368T261 259Q261 241 252 219T228 179T200 146T176 122L167 112Q170 111 174 111Q188 110 233 91T339 55T453 37Q508 37 556 68T626 152Q655 219 655 328Q655 543 532 582Q484 596 428 596",120086:"750 276Q750 141 645 57T378 -27Q224 -27 146 67Q66 163 66 307Q66 361 80 412T127 515T217 609T356 676L388 684L420 692L442 681Q545 625 586 608T654 591Q688 591 710 609T737 646L742 665Q742 665 756 654L752 642Q736 594 706 566T621 515L607 510Q580 513 528 542T421 599T335 627Q272 627 214 569Q139 500 139 373Q139 308 159 247T217 136T316 56T455 26Q520 26 566 43T634 90T666 148T676 207Q676 264 649 297T580 338Q574 339 552 339Q516 339 442 325T327 310H324Q303 310 290 312T259 328T232 369Q230 375 230 390Q230 426 259 461Q286 488 338 507Q351 498 351 495L346 492Q342 490 339 488T330 482T320 473T312 462T305 447T303 428Q303 368 366 368Q393 368 487 388T613 409Q656 409 696 385T748 306Q750 294 750 276",120087:"289 686Q338 686 439 668T565 649Q606 649 641 672Q656 683 664 690T674 700L675 701Q676 698 676 692V681L641 636Q608 591 602 588Q577 575 528 575Q490 575 438 583L426 585L416 578Q335 520 335 465Q335 437 393 366T452 259Q452 226 406 171Q387 146 351 115L341 106L358 97Q438 58 475 58Q525 58 598 124L608 133Q617 119 617 118Q617 114 606 103Q513 0 448 -27L438 -25Q401 -19 337 14T234 48Q186 48 122 -3L112 -11L106 -3L101 5L110 15Q160 63 209 105L224 117H310Q384 163 384 210Q384 238 329 303T263 398Q262 400 262 404Q262 427 290 476T368 580Q383 596 381 596Q315 622 228 622Q159 622 118 593T76 516Q76 482 96 461T139 431L107 399L75 367Q34 403 34 472Q34 525 64 572T148 652Q207 686 289 686",120088:"160 247Q160 291 110 382T59 505Q59 542 106 597T207 690L218 697L229 682Q229 680 216 669T187 644T158 604T144 552Q144 526 165 482T207 387T228 291Q228 277 228 267T224 247T219 232T210 217T199 202T184 184T166 163L118 107Q124 105 132 105T160 98T220 77Q298 47 317 47Q354 47 409 105Q444 142 451 161T458 244V277Q458 339 455 457T447 596L575 686L591 676L583 668Q550 632 541 587T532 449V372V298Q532 198 550 147Q572 79 605 79Q617 79 631 84T656 95L665 100V79L595 27Q578 15 560 2T532 -19L523 -26Q522 -26 490 42L458 111L397 50Q389 42 374 27T355 8T340 -5T325 -16T311 -22T294 -26T274 -27Q232 -25 152 6T35 37Q28 36 19 30T4 18T-8 4T-16 -5Q-25 10 -25 11T-20 18Q-5 34 15 57L54 101Q70 103 86 116Q94 121 113 140T137 166Q160 201 160 247",120089:"54 266Q118 307 118 339Q118 360 74 413T27 493Q26 530 59 578T133 651Q187 686 256 686Q299 686 332 673T382 640T409 600T424 567T429 553Q431 553 463 586T542 653T624 686Q663 686 715 652T798 617Q812 617 825 622V606L815 599Q785 576 762 546Q724 495 724 432Q724 397 737 317T750 217Q750 148 711 96Q697 75 639 34T578 -10Q563 -21 555 -23T522 -26Q458 -26 363 29Q253 89 211 89Q192 89 173 83T139 67T114 49T96 34L90 27L80 43L95 59Q121 87 148 110T191 143T213 154Q261 154 300 195Q328 222 340 267T352 406Q352 562 255 611Q222 627 187 627H182Q143 627 115 598Q96 579 96 559Q96 528 144 470T192 381Q192 348 156 314T80 256L70 250L54 266ZM727 548Q701 550 650 583T567 617Q560 617 554 615Q532 610 501 580T445 501L437 485V465Q432 326 378 223L294 150Q321 143 421 87T560 31Q608 31 634 64Q660 102 660 198Q660 226 655 292T650 387Q650 418 658 452L660 462L735 548H727ZM264 150Q265 151 263 151H261Q261 150 264 150ZM280 150H276V149Q280 149 280 150",120090:"32 501Q35 564 103 625T264 686Q326 686 365 652Q402 618 420 564L441 585Q486 630 539 670L559 686L572 672Q637 606 665 559L682 576Q787 686 845 686Q877 686 929 656T992 623Q999 621 1016 621Q1041 621 1054 628L1051 617L1047 606Q1042 602 1037 597Q983 557 969 522T954 434Q954 394 961 336T968 221Q968 201 966 184T963 155T956 131T948 113T936 96T923 82T906 66T887 50L816 -2Q815 -3 810 -6T801 -11T791 -16T777 -20T759 -23T735 -25Q691 -25 619 4T505 37H496L463 21Q420 0 389 -20L378 -27H362Q316 -27 275 -9T202 28T150 46H146Q114 46 59 -5L48 -16L41 -6Q40 -4 38 -2T34 2L33 4Q33 8 77 54Q111 87 142 112L154 122H166Q239 127 288 182Q346 244 346 406Q346 489 326 537T259 610Q227 628 195 628Q155 628 128 606T101 549Q101 517 146 465T192 382Q192 348 156 310T85 254L75 250L64 258L55 266Q56 267 74 276T105 301T118 339Q118 362 75 413T32 501ZM952 547Q927 555 877 586T796 617Q744 617 682 525L676 516L677 498Q678 486 678 425Q678 301 652 206Q649 195 613 151T577 102Q577 100 582 100Q618 100 720 51Q761 32 790 32H794Q843 32 869 83Q884 110 884 189Q884 233 879 294T873 400Q874 433 879 451T889 478T915 507T952 547ZM241 105Q249 98 263 88T317 60T393 42Q478 42 547 109Q607 171 607 358Q607 371 607 380T604 417T595 467T577 517T546 566T500 601L479 580Q449 550 433 526L426 516V503Q426 311 357 200L352 191L296 149Q241 107 241 105",120091:"96 511L78 527L149 603Q207 666 227 686L237 685Q278 680 306 667T351 631T376 588T395 533L400 516L406 527Q439 600 523 653Q538 664 587 688Q589 688 596 672T613 635T629 606Q643 588 665 588Q677 588 693 596L709 603V585L607 526Q583 536 554 564T512 614Q461 571 435 507T405 381V367H581L563 347Q561 344 558 341T553 335T549 330T546 326L545 325H541Q537 325 488 329T411 334H405V325Q405 198 454 123Q497 54 568 54Q594 54 619 64T660 84L676 95V74L565 -16L553 -20Q528 -27 512 -27Q492 -27 475 -21T444 -5T418 19T398 47T382 77T371 105T363 128T358 145L357 151Q354 151 339 136T294 91T232 37Q152 -22 113 -22Q90 -22 69 -9T38 17T28 32Q28 33 58 68L86 101Q94 81 115 64T165 47Q206 47 249 84Q302 128 325 222Q334 263 336 312V334H312Q198 334 163 324H161Q162 326 182 348L198 367H336V398Q333 508 308 550Q295 570 274 585T227 601Q204 601 181 589T145 565T115 533T96 511",120092:"123 345Q123 358 75 415T27 496Q27 533 63 578T121 639Q181 685 256 685Q305 685 332 676T384 635Q419 588 425 542Q468 585 526 628T618 686Q632 667 658 645T704 609T724 594Q740 512 740 385V375V361Q740 128 682 -3Q656 -64 554 -141T361 -218Q319 -218 287 -203T243 -173T230 -150Q230 -148 267 -109L304 -69Q311 -115 341 -142T411 -170Q474 -170 534 -119T624 11Q660 111 660 312Q660 447 633 528L612 549Q578 583 552 596L543 601L528 592Q501 574 483 558Q454 528 436 494L431 484V473Q431 330 376 230Q366 213 359 206T306 159L250 112Q278 105 327 82T399 58Q421 58 440 69T471 92T484 104H485L493 90L480 73Q453 39 429 13Q393 -22 372 -22Q342 -22 260 15T153 53Q97 53 48 -16L38 5Q46 22 74 54T128 108L143 122H155Q226 127 275 168Q352 236 352 399Q352 501 309 564T197 628Q156 628 129 607T102 553Q102 517 147 463T192 383Q192 323 75 250L59 266Q123 314 123 345",120094:"86 363Q86 365 128 391T212 444L255 470Q256 470 263 465T283 453T308 442Q338 431 346 431Q350 431 358 436L414 465L421 459L418 434Q404 339 404 262Q404 147 408 119L425 97Q443 74 444 74L467 86L491 97Q492 97 497 83L436 28Q377 -26 374 -26L331 46L329 91L155 -35Q152 -35 114 10T68 65L67 86Q66 100 66 156Q66 177 66 198T68 236T71 268T74 296T77 320T80 338T83 351T86 360V363ZM314 365Q285 367 255 374T206 386L187 392Q181 392 172 376T154 311T145 197Q145 124 151 118Q156 110 187 78L208 56H214Q221 57 253 76L308 109L329 123V136Q328 143 328 257V365H314",120095:"177 427Q177 364 181 364Q184 364 192 370T223 395T271 433Q317 469 323 469Q325 469 338 462T377 440T432 413L440 409L441 396Q441 394 441 372T442 334Q442 203 425 108L423 97L400 83Q347 49 296 21T222 -19T196 -31Q192 -29 149 12T87 71L89 89Q100 155 100 319Q100 500 94 627Q94 632 94 638T94 648T94 656T93 662V664Q93 668 97 669T106 670H110Q114 653 118 633L127 596Q127 595 132 597Q136 599 195 642L255 685L272 673Q269 670 256 659T233 637T211 609T190 565T179 508Q177 494 177 427ZM295 377L274 385Q273 385 264 381T242 370T223 361Q213 355 188 340L178 333V123L198 103Q259 42 285 42Q299 42 314 55T339 85Q363 132 363 232Q363 310 358 343V349L345 355Q330 363 295 377",120096:"72 208Q72 323 84 361Q84 363 167 414Q248 466 250 466Q255 465 260 465Q283 460 307 450T344 430L357 422L306 343L301 342L296 340Q267 362 247 372T216 384T177 390Q154 349 154 238Q154 220 156 158V145L168 132Q179 121 208 93T244 59Q245 58 246 58Q255 58 302 83T350 108L352 104Q355 100 356 96L358 92Q358 91 274 32T187 -29L177 -20Q160 -6 120 36T77 84Q77 87 75 118T72 208",120097:"13 542Q13 544 77 576T147 609Q154 609 185 598T283 551T414 464L427 454V440Q427 436 427 412T428 372Q428 315 426 270T418 197T409 152T400 121T394 103L304 35Q285 21 261 2T225 -25L214 -33Q149 7 97 59L76 80L75 91V171Q75 221 76 254T79 299T80 313Q80 315 78 321Q78 323 78 326L77 330Q79 336 132 384T211 447L219 445Q221 445 224 444L228 443Q229 443 228 441T221 432T206 415L191 395Q175 378 162 339Q152 306 152 250Q152 217 159 140V134L171 121Q194 99 235 74T284 48Q296 48 310 75T337 156T349 267Q349 346 336 400L315 420Q246 489 176 525Q127 545 94 545H73L27 527L13 542",120098:"353 103Q353 97 358 87L337 71Q293 38 247 6Q191 -30 189 -30Q188 -30 173 -16T130 26T76 85L74 99Q70 139 70 190Q70 228 73 271T79 338T84 365L94 372Q105 378 126 392T166 417L246 467Q283 417 349 369L364 358L355 349Q249 249 169 180L151 166L152 152V139L165 126Q186 105 215 84T260 62Q267 62 309 82L353 103ZM267 323Q246 337 230 350T204 371T189 385T179 394T174 397Q149 381 149 219V211Q151 211 171 223T220 258T268 299L282 313L267 323",120099:"128 387Q128 391 112 456T92 546V555L101 568Q133 617 183 670L193 681L204 673Q238 648 262 648Q276 648 292 656L302 661L308 653Q308 652 278 618L249 585H234Q194 587 159 595Q158 595 156 596H153L150 597Q151 593 152 581T154 564T157 547T164 524T176 494Q199 436 203 400V392H207L323 386Q323 384 309 368L296 351H203V176Q201 -9 198 -32Q194 -61 166 -114Q158 -129 153 -138Q114 -214 110 -221Q105 -221 98 -220L87 -219V-216Q88 -215 106 -150T124 -82Q128 -73 129 155V351H30L64 386H96Q128 386 128 387",120100:"27 -144L17 -131L82 -75L146 -20L126 6Q99 37 92 48L78 65L77 79Q75 103 75 158Q75 217 78 268T86 343T91 368Q92 370 109 382T157 413T222 452Q240 465 249 469L251 470Q296 443 350 428L365 424L437 465L442 459Q442 456 441 453T437 444T432 424T427 385T423 317T421 215V133L423 119Q423 111 455 -17Q455 -21 380 -108T290 -201Q290 -202 284 -204T269 -207T252 -209Q172 -209 75 -135L62 -126Q60 -126 44 -135L27 -144ZM349 351Q267 359 178 389Q177 387 173 376T166 358T161 337T157 303T155 259Q155 195 159 135L160 124L170 112Q180 101 204 77T230 53Q231 53 286 88L340 123V141Q340 235 348 329Q348 334 348 339T348 348L349 351ZM364 -59Q364 -37 358 -1T347 64T341 93Q336 93 252 28T149 -57Q226 -134 293 -134Q325 -134 344 -118T364 -69V-59",120101:"88 427Q88 486 87 545T84 634T81 667Q81 673 82 673T89 676H94L117 600L200 661Q208 667 218 674T233 684L238 688L254 678Q222 646 216 637Q164 572 164 483V442V371Q187 390 244 431T312 478Q344 446 411 423L428 417L429 396Q434 297 434 218Q430 8 406 -34Q346 -111 262 -195L251 -205L249 -203Q248 -203 244 -199T236 -193Q226 -183 227 -182Q228 -182 244 -169T278 -140T301 -121Q330 -89 340 -22Q355 60 355 171Q355 200 353 244T348 321T344 354Q333 363 307 376T260 390Q241 390 179 350L164 341V121Q180 96 201 66L213 50Q210 46 172 11T131 -24Q130 -24 123 -11T102 25T77 65V78Q80 104 84 227T88 427",120102:"72 617Q72 618 102 645T133 673H134Q134 668 175 627L187 615L130 555L116 568Q72 615 72 617ZM27 369Q21 376 14 382L26 392Q83 440 119 474Q158 435 169 427L179 420L176 395Q166 302 166 227Q166 171 174 139Q178 119 186 103T202 81L208 75Q255 100 261 100Q262 100 264 92T267 83Q267 80 208 30T145 -20Q143 -20 118 17L91 55Q98 117 98 193Q98 339 88 369Q71 390 68 390Q63 390 39 376L27 369",120103:"101 644L132 672L145 657Q155 642 169 628L182 614L169 600Q148 579 140 570L125 555L112 568Q109 570 91 592T72 615Q72 617 101 644ZM19 -208Q-9 -185 -9 -183Q57 -134 80 -106Q103 -81 110 -19T118 179Q118 294 113 329T86 383Q78 389 76 389Q73 389 57 379L39 367Q26 380 26 381L33 387Q40 393 53 405T79 428L130 474Q147 457 186 428L195 422L196 376Q196 130 192 58T174 -35Q172 -39 104 -114T19 -208",120104:"93 348Q93 379 90 503T87 658V670Q87 671 94 671L100 672L112 636Q124 603 124 600L144 616Q196 659 234 682L246 689Q252 686 256 685T268 680L254 667Q225 641 211 626T184 579T168 505V497L178 504Q203 523 237 544L300 584L310 573Q359 522 359 481Q359 476 359 472T358 464T355 456T351 448T346 440T340 433T332 424T323 414T312 402T299 389L255 343L300 342H346L320 309H177V128L193 113Q214 92 244 68L254 60L303 84Q351 108 352 108L362 96Q355 85 277 30T194 -25L170 -4Q146 18 120 41T89 68Q94 85 94 168Q94 184 94 218T93 268V309H58L24 310L51 342H93V348ZM172 342Q217 342 252 374T287 445Q287 472 255 504Q242 517 241 517Q202 498 187 468T168 365V342H172",120105:"221 76L267 99Q268 98 269 96T271 88T270 82L262 76Q255 69 241 57T214 34L148 -20L98 56L99 89Q107 247 107 373Q107 494 101 621Q101 653 99 659V665L106 668L113 672L118 655Q122 642 131 617L138 597Q140 597 157 611L240 670L264 685Q265 685 270 680T276 674T269 667T247 647T219 617Q197 587 186 551T173 493T171 438Q171 376 175 282T179 147V117Q184 109 201 93T221 76",120106:"20 367L8 379Q9 380 63 425T118 471Q130 460 143 446L168 421V398L169 376L295 475Q362 433 415 418V399Q415 380 416 380T437 394T484 428T529 462L544 474L556 467Q590 449 614 438T646 424L653 421L665 417L664 412Q664 411 664 407T664 397T663 384Q660 342 660 335Q658 303 658 245Q658 186 660 152L661 126L669 115Q680 96 697 79L707 83Q716 87 723 90T735 96T741 100T746 102L747 103V102L750 95Q753 88 753 87L631 -18Q630 -17 622 -3T589 43L576 60L579 72Q592 146 592 218Q592 265 584 321Q581 345 578 350T560 363Q535 376 496 386L481 390Q475 387 425 358L415 351V238V157Q415 142 415 135T417 120T421 110T430 98T441 81L465 47Q462 44 458 41T443 28T420 8L380 -26L333 47L336 62Q339 77 342 109T345 184Q345 223 341 285T333 348Q322 364 258 382L240 388L169 347L168 240Q168 118 171 110L174 106Q178 101 183 93T195 78L217 48Q217 47 196 30T154 -5T133 -21L130 -16Q127 -10 122 0T111 19Q89 56 89 60Q95 76 95 153Q95 239 88 337V365L62 391L20 367",120107:"31 368Q20 379 20 380T72 427L121 470L129 463Q137 455 155 441T176 425V367L320 475L329 469Q351 454 385 437T434 417L432 402Q429 362 429 231V128L439 111Q442 107 445 102T449 95T453 90T456 86T459 84T463 82T467 82Q468 82 489 93T511 105T514 95V88L395 -18L340 65L341 77Q347 111 348 178Q348 343 343 353V358L332 363Q298 377 264 382Q260 382 254 382L249 383Q247 383 211 362L176 341V229V147Q176 134 176 127T177 115T179 106T183 99T189 91T197 81Q201 76 206 69T214 57L217 53Q217 52 175 15T132 -22Q132 -20 114 5T88 41Q84 45 84 50Q94 116 94 203Q94 227 93 263T92 324L90 364L67 388L50 378Q32 368 31 368",120108:"67 121Q70 265 84 359V364L97 371Q137 394 177 421T238 464T260 480L278 468Q295 457 327 442T394 418L406 414Q412 388 412 300Q412 263 410 228T405 170T399 130T393 103T391 92L381 86Q274 19 165 -28L161 -24Q157 -21 151 -15T136 -2T118 14T101 30T86 46T74 60L67 68V121ZM335 278Q335 286 335 303T334 335L333 349V356H326Q288 360 208 388L183 397Q178 393 172 383T154 333T142 239Q142 192 151 134Q152 124 155 120T175 99Q197 77 219 64T251 47T267 44T281 52T302 80T320 124Q335 182 335 278",120109:"23 25Q15 33 12 38L35 59Q82 102 87 105V351L68 378Q42 414 42 422Q42 437 67 472T114 530L125 541Q126 541 132 537T138 532Q121 507 121 488Q121 453 160 413L167 405L166 390L165 372Q169 372 233 421T305 478Q307 479 315 472Q395 421 423 415Q424 415 424 415T425 414L426 410Q426 407 426 401T426 388Q430 335 430 272Q430 139 408 80Q407 78 340 22L273 -33Q200 23 165 23Q164 23 164 -32Q165 -89 168 -155V-170L93 -212L78 -203Q85 -48 87 16V47H79Q53 44 23 25ZM319 41Q346 94 349 212Q349 278 343 343V351L330 357Q318 363 270 381L255 387L245 383Q212 370 178 345L166 336V287Q165 260 165 166V94H175Q219 90 299 51L319 41ZM132 57L129 60Q130 58 132 57ZM158 29Q159 29 155 34T145 45T138 50Q155 29 158 29",120110:"399 19Q399 -123 407 -174V-179L332 -219L322 -210L312 -202L314 -185Q320 -83 323 54V95L311 85Q255 40 162 -19Q146 -29 145 -27Q140 -22 103 20L63 65V73Q61 83 61 115Q61 122 61 135T60 154Q60 263 79 353L83 368L94 375Q123 391 147 405T186 429T212 446T229 458T238 466T243 470T247 471L260 464Q274 457 295 448T330 434L341 432L410 479L412 478Q414 476 416 475T419 473L417 461Q399 358 399 19ZM316 367Q287 370 252 377T196 391L176 397H175Q173 397 166 382T149 314T139 187V158Q139 138 141 132T155 114Q158 111 160 109Q210 58 211 58L218 62Q226 67 240 75T266 91L319 124V196Q319 334 325 361V367H316",120111:"357 398Q364 398 375 403L386 408Q386 404 387 400V393L369 377Q361 370 350 360T336 347T327 340T316 336T303 335Q270 335 234 371L224 379Q220 375 214 370T198 355L182 340V243Q182 164 183 152T189 129Q195 117 211 100T239 72T254 60T298 81Q342 101 343 101Q344 100 345 92T346 82L200 -21Q174 -5 117 55L97 75L99 92Q106 147 106 196Q106 216 104 282T97 355Q95 359 95 361Q95 364 77 378L65 387L48 380Q30 372 29 372Q28 371 23 375T17 380Q17 384 50 415T107 467L115 474L128 461Q171 421 182 414V382L235 425Q247 435 261 446T283 462L290 468L295 460Q335 398 357 398",120112:"272 33Q284 33 290 70T296 138Q296 181 290 198T262 230Q257 232 246 232Q231 232 218 227T156 194L108 167L101 176Q90 192 75 219L69 230V284Q69 346 70 357V377L146 427Q181 450 202 464T223 477L225 476Q227 475 229 474Q231 472 242 466T270 450T296 431Q309 418 326 418Q342 418 361 429T392 450T403 459Q406 445 406 442Q406 440 384 421T338 382L316 363Q315 362 310 362Q292 362 251 371T173 396Q156 403 155 403Q143 386 143 342Q143 305 150 278T168 244Q171 242 181 242L190 243L315 300Q330 295 357 274Q358 273 362 270T366 266T369 261T372 253T373 239T374 217T374 185Q374 157 372 133T368 98T363 71T358 50L336 40Q288 20 255 2T211 -22T198 -29L190 -22Q181 -14 168 -3T138 19T104 38T70 46Q50 46 32 37T3 20T-9 11L-18 23L-1 41Q46 89 62 99T112 110Q141 110 157 103T225 62Q268 33 272 33",120113:"228 640L242 627L227 613Q213 599 211 593T203 553Q197 500 196 435V389H301L272 353H195V274Q195 178 196 159L197 123Q249 71 273 68H280L312 83Q344 99 345 99Q348 99 348 78Q348 76 314 52T246 4L212 -20Q211 -20 164 19T112 62Q112 122 113 196Q113 228 113 262T114 318T114 341V353H27L62 389H116L117 431V558L228 640",120114:"171 315Q171 252 165 199T153 124L147 103Q147 102 196 80L244 57L335 107V116Q339 161 339 268Q339 315 338 351T337 412V424L420 468Q424 465 427 461L424 435Q412 331 412 226Q412 170 415 145T434 96Q442 84 452 83Q461 83 492 96L506 102Q507 102 510 96T513 88L493 71Q445 32 401 -9Q392 -18 388 -17L384 -16Q358 39 355 44Q336 77 333 77Q261 45 203 -9Q186 -23 181 -23Q177 -23 162 -11T121 18T69 44L57 48L61 54Q65 60 71 73T82 102Q100 156 100 262Q100 305 93 335T80 373T62 396L23 376Q18 377 9 386L119 474Q149 437 171 421V339V315",120115:"55 418Q55 443 100 503Q121 530 123 530Q125 528 127 528T131 528T134 528T135 524T131 516Q123 499 123 486Q123 457 159 416L169 405L170 388L171 372Q171 371 244 424L317 477L334 466Q394 428 432 416L433 402Q433 400 433 377T434 336V305Q434 195 420 131Q413 94 406 87Q403 84 298 29L192 -28L172 -8Q139 25 106 52L92 64V70Q95 97 95 198Q95 293 94 318L92 355L84 367Q55 406 55 418ZM174 306Q174 297 173 255T171 184Q171 153 175 136T198 100Q207 94 224 80T255 57T282 49Q304 49 328 80Q359 129 359 243Q359 284 352 345Q351 358 348 360Q333 373 304 384T265 396L251 390Q215 372 186 351L175 344V337Q175 319 174 306",120116:"45 425Q45 439 82 485T126 532Q127 532 128 532T131 531T137 529L132 519Q121 499 121 483Q121 473 131 454T156 419L167 408L169 376L185 388Q237 425 291 473L301 466Q337 443 394 416L419 405L418 387V369Q419 369 487 418T560 471L581 459Q597 450 621 437T664 415T684 406Q688 406 688 323Q688 254 679 193T662 103T648 71Q647 70 554 20L464 -28L443 -15Q416 1 386 17T343 40T331 49Q331 52 333 73T337 133T339 216Q339 309 334 339Q333 341 316 353T277 377T246 389Q235 389 201 369T166 346Q166 345 164 247Q164 232 164 210T163 179Q163 139 170 116T205 57L212 48L136 -27Q115 16 87 44L78 53L80 67Q88 124 88 211Q88 282 87 315T83 356T74 371Q45 410 45 425ZM591 352Q580 359 565 365T540 374T517 381T504 385L418 342L417 318V220Q417 212 417 194T417 170T418 152T420 134T424 120T431 106T440 95T454 83Q508 44 544 44Q566 44 583 77Q603 120 605 235Q605 289 600 322Q598 343 597 345T591 352",120117:"14 377Q63 428 117 472Q130 462 144 449L193 408V392V376L247 420Q300 464 301 464L310 451Q331 417 363 390L333 365Q303 340 301 340Q293 343 277 364T250 386Q241 386 215 361L195 341Q194 333 193 327T191 318T190 304T188 269Q188 220 192 148Q193 122 195 118T210 101Q255 60 271 60Q276 60 278 61L318 82Q327 86 336 91T351 98L356 101Q359 82 356 79Q354 77 283 27T210 -24L192 -7Q160 23 137 40L126 49L116 40Q66 -13 66 -54Q66 -117 167 -140L179 -142V-147L180 -152L123 -188L112 -185Q58 -170 31 -145Q10 -122 10 -96Q10 -80 22 -53Q44 -10 95 49Q97 51 100 54T104 59T107 64T109 71T111 81T112 97T113 119T114 149T114 188Q114 284 108 347V354L96 365Q76 385 67 385Q62 385 45 377L27 368L14 377",120118:"74 58Q89 124 89 241Q89 265 89 278T89 305T88 324T87 336T84 346T81 352T77 359T71 368Q57 388 52 398L45 409Q62 454 98 507L113 528Q128 528 128 524Q128 523 125 518T120 503T117 483V471Q123 456 130 445Q135 438 140 432T148 422T153 415T157 409T160 405T162 402T163 399T163 395V384V365Q165 365 237 419L311 473Q383 430 420 416Q426 414 426 411V404Q426 398 426 388T427 367Q431 233 431 201Q431 -3 391 -52Q387 -58 305 -138T221 -218L218 -217Q216 -216 211 -214T202 -210L184 -202L199 -194Q259 -162 288 -127T334 -19T350 184Q350 257 342 328L340 356Q282 390 262 390Q248 390 178 346L163 336V111L216 45L131 -26L124 -15Q114 3 85 44L74 58",120119:"47 335L36 347L52 362Q112 421 167 461L181 471L192 465Q236 444 260 417T284 369Q284 355 276 343T233 291Q195 246 195 245T205 242T241 228T300 198L302 187Q314 138 314 74Q314 -24 291 -95Q290 -100 222 -157L154 -214H145Q102 -214 53 -189T-7 -117Q41 -21 183 122L207 147Q205 149 186 157T140 172T100 180H97V192L140 231Q192 280 199 293Q205 303 205 315Q205 339 185 363T137 388Q119 388 63 347L47 335ZM179 -153Q212 -153 226 -113T240 14Q240 67 233 98T223 132T211 143L222 130Q216 125 206 116T170 82T124 33T88 -20T72 -70Q72 -99 105 -126T179 -153",120120:"130 -1H63Q34 -1 26 2T17 17Q17 24 22 29T35 35Q49 35 64 44T88 66Q101 93 210 383Q331 693 335 697T346 701T357 697Q358 696 493 399Q621 104 633 83Q656 35 686 35Q693 35 698 30T703 17Q703 5 693 2T643 -1H541Q388 -1 386 1Q378 6 378 16Q378 24 383 29T397 35Q412 35 434 45T456 65Q456 93 428 170L419 197H197L195 179Q184 134 184 97Q184 82 186 71T190 55T198 45T205 39T214 36L219 35Q241 31 241 17Q241 5 233 2T196 -1H130ZM493 68Q493 51 481 35H619Q604 56 515 256Q486 321 468 361L348 637Q347 637 330 592T313 543Q313 538 358 436T448 219T493 68ZM404 235Q404 239 355 355T295 488L275 430Q241 348 208 232H306Q404 232 404 235ZM155 48Q151 55 148 88V117L135 86Q118 47 117 46L110 37L135 35H159Q157 41 155 48",120121:"11 665Q11 672 22 683H213Q407 681 431 677Q582 649 582 515Q582 488 573 468Q554 413 484 372L474 366H475Q620 317 620 178Q620 115 568 69T420 6Q393 1 207 -1H22Q11 10 11 18Q11 35 51 35Q79 37 88 39T102 52Q107 70 107 341T102 630Q97 640 88 643T51 648H46Q11 648 11 665ZM142 341Q142 129 141 88T134 37Q133 36 133 35H240L233 48L229 61V623L233 635L240 648H133L138 639Q142 621 142 341ZM284 370Q365 378 391 411T417 508Q417 551 406 581T378 624T347 643T320 648Q298 648 278 635Q267 628 266 611T264 492V370H284ZM546 515Q546 551 531 577T494 617T454 635T422 641L411 643L420 630Q439 604 445 579T452 510V504Q452 481 451 467T441 430T415 383Q420 383 439 391T483 413T527 455T546 515ZM585 185Q585 221 570 249T534 294T490 320T453 334T436 337L435 336L440 330Q445 325 452 315T467 288T479 246T484 188Q484 145 474 110T454 62T442 48Q442 47 444 47Q450 47 470 54T517 75T564 119T585 185ZM449 184Q449 316 358 332Q355 332 335 333T302 335H264V199Q266 68 270 57Q275 50 289 43Q300 37 324 37Q449 37 449 184",120123:"16 666Q16 675 28 683H193Q329 683 364 682T430 672Q534 650 600 585T686 423Q688 406 688 352Q688 274 673 226Q641 130 565 72T381 1Q368 -1 195 -1H28Q16 5 16 16Q16 35 53 35Q68 36 75 37T87 42T95 52Q98 61 98 341T95 630Q91 640 83 643T53 648Q16 648 16 666ZM237 646Q237 648 184 648H128Q128 647 133 632Q136 620 136 341Q136 64 133 50L128 35H237L230 48L226 61V343Q228 620 231 633Q232 636 237 646ZM264 61Q278 40 310 35Q363 35 401 55T461 112T496 193T513 295Q515 333 515 349Q515 411 504 459Q481 598 373 641Q351 648 321 648Q304 648 292 643T277 635T264 621V61ZM461 628Q462 627 471 616T489 594T509 559T529 509T544 441T550 352Q550 165 479 75L468 59Q474 61 484 65T522 87T573 128T618 195T650 290Q654 322 654 354Q654 418 638 464T581 552Q559 576 529 595T480 621L461 628",120124:"12 666Q12 675 24 683H582Q590 680 593 672V588Q593 514 591 502T575 490Q567 490 563 495T555 517Q552 556 517 590Q486 623 445 634T340 648H282Q266 636 264 620T260 492V370H277Q329 375 358 391T404 439Q420 480 420 506Q420 529 436 529Q445 529 451 521Q455 517 455 361Q455 333 455 298T456 253Q456 217 453 207T437 197Q420 196 420 217Q420 240 406 270Q377 328 284 335H260V201Q261 174 261 134Q262 73 264 61T278 38Q281 36 282 35H331Q400 35 449 50Q571 93 602 179Q605 203 622 203Q629 203 634 197T640 183Q638 181 624 95T604 3L600 -1H24Q12 5 12 16Q12 35 51 35Q92 38 97 52Q102 60 102 341T97 632Q91 645 51 648Q12 648 12 666ZM137 341Q137 131 136 89T130 37Q129 36 129 35H235Q233 41 231 48L226 61V623L231 635L235 648H129Q132 641 133 638T135 603T137 517T137 341ZM557 603V648H504Q504 646 515 639Q527 634 542 619L557 603ZM420 317V397L406 383Q394 370 380 363L366 355Q373 350 382 346Q400 333 409 328L420 317ZM582 61L586 88Q585 88 582 83Q557 61 526 46L511 37L542 35H577Q577 36 578 39T580 49T582 61",120125:"584 499Q569 490 566 490Q558 490 552 497T546 515Q546 535 533 559Q526 574 506 593T469 621Q415 648 326 648Q293 648 287 647T275 641Q264 630 263 617Q262 609 260 492V370L275 372Q323 376 350 392T393 441Q409 473 409 506Q409 529 427 529Q437 529 442 519Q444 511 444 362Q444 212 442 206Q436 197 426 197Q409 197 409 217Q409 265 375 299Q346 328 280 335H260V206Q260 70 262 63Q265 46 276 41T326 35Q362 35 366 28Q377 17 366 3L360 -1H24Q12 5 12 16Q12 35 51 35Q92 38 97 52Q102 60 102 341T97 632Q91 645 51 648Q12 648 12 666Q12 675 24 683H573Q576 678 584 670V499ZM137 341Q137 131 136 89T130 37Q129 36 129 35H182Q233 35 233 39Q226 54 225 92T224 346L226 623L231 635L235 648H129Q132 641 133 638T135 603T137 517T137 341ZM549 603V648H495L506 641Q531 621 533 619L549 603ZM409 317V395L400 386Q390 376 375 366L357 355L373 346Q394 331 397 328L409 317",120126:"737 285Q749 277 749 268Q749 260 744 255T730 250Q695 250 677 217Q666 195 666 119Q666 52 664 50Q656 36 555 3Q483 -16 415 -19Q364 -19 348 -17Q226 -3 146 70T44 261Q39 283 39 341T44 421Q66 538 143 611T341 699Q344 699 364 700T395 701Q449 698 503 677T585 655Q603 655 611 662T620 678T625 694T639 702Q650 702 657 690V481L653 474Q640 467 628 472Q624 476 618 496T595 541Q562 587 507 625T390 663H381Q337 663 299 625Q213 547 213 337Q213 75 341 23Q357 19 397 19Q440 19 462 22T492 30T513 45V119Q513 184 506 203Q491 237 435 250Q421 250 415 257Q404 267 415 281L421 285H737ZM250 43Q250 45 243 55T225 87T203 139T185 224T177 343V361Q184 533 250 625Q264 643 261 643Q238 635 214 620T161 579T110 510T79 414Q74 384 74 341T79 268Q106 117 230 52L250 43ZM621 565V625Q617 623 613 623Q603 619 590 619H575L588 605Q608 583 610 579L621 565ZM655 250H517L524 241Q548 213 548 149V114V39Q549 39 562 44T592 55T615 63L630 70V134Q632 190 634 204T648 237Q655 245 655 250",120128:"20 666Q20 676 31 683H358Q369 676 369 666Q369 648 331 648Q288 645 282 632Q278 626 278 341Q278 57 282 50Q286 42 295 40T331 35Q369 35 369 16Q369 6 358 -1H31Q20 4 20 16Q20 35 58 35Q84 37 93 39T107 50Q113 60 113 341Q113 623 107 632Q101 645 58 648Q20 648 20 666ZM249 35Q246 40 246 41T244 54T242 83T242 139V341Q242 632 244 639L249 648H140Q146 634 147 596T149 341Q149 124 148 86T140 35H249",120129:"79 103Q108 103 129 83T151 38Q151 9 130 -15Q116 -34 130 -37Q133 -39 157 -39Q208 -39 219 -8L226 3V305Q226 612 224 621Q220 636 211 641T166 647Q137 647 128 654Q119 665 128 679L135 683H466Q478 677 478 666Q478 647 439 647Q399 644 393 632Q388 620 388 347Q386 69 384 59Q364 -6 316 -39T184 -77H172Q102 -77 56 -48T6 30Q6 62 26 82T79 103ZM353 354Q353 556 354 596T361 645Q362 646 362 647H253Q257 639 258 628T261 547T262 312V-4L255 -17Q248 -29 250 -29Q253 -29 258 -28T277 -20T302 -5T327 22T348 65Q350 74 353 354ZM115 36Q115 47 105 57T79 67Q73 67 67 66T52 56T44 34Q44 9 62 -8Q66 -11 71 -15T81 -22T86 -24L90 -13Q100 3 102 5Q115 22 115 36",120130:"22 666Q22 676 33 683H351L358 679Q368 665 358 655Q351 648 324 648Q288 645 280 637Q275 631 274 605T273 477L275 343L382 446Q473 530 492 553T512 599Q512 617 502 631T475 648Q455 651 455 666Q455 677 465 680T510 683H593H720Q732 676 732 666Q732 659 727 654T713 648Q670 648 589 581Q567 562 490 489T413 415Q413 413 554 245T711 61Q737 35 751 35Q758 35 763 29T768 15Q768 6 758 -1H624Q491 -1 486 3Q480 10 480 17Q480 25 487 30T506 35Q518 36 520 38T520 48L400 195L302 310L286 297L273 283V170Q275 65 277 57Q280 41 300 38Q302 37 324 35Q349 35 358 28Q367 17 358 3L351 -1H33Q22 4 22 16Q22 35 60 35Q101 38 106 52Q111 60 111 341T106 632Q100 645 60 648Q22 648 22 666ZM240 341V553Q240 635 246 648H138Q141 641 142 638T144 603T146 517T146 341Q146 131 145 89T139 37Q138 36 138 35H246Q240 47 240 129V341ZM595 632L615 648H535L542 637Q542 636 544 625T549 610V595L562 606Q565 608 577 618T595 632ZM524 226L386 388Q386 389 378 382T358 361Q330 338 330 333Q330 332 330 332L331 330L533 90Q558 55 558 41V35H684L671 50Q667 54 524 226",120131:"12 666Q12 675 24 683H333L340 679Q350 665 340 655Q333 648 309 648Q287 646 279 643T266 630Q264 623 264 346Q264 68 266 57Q274 40 284 35H340Q413 37 460 55Q514 78 553 117T602 197Q605 221 622 221Q629 221 634 215T640 201Q638 194 625 105T611 12Q611 6 600 -1H24Q12 5 12 16Q12 35 51 35Q92 38 97 52Q102 60 102 341T97 632Q91 645 51 648Q12 648 12 666ZM137 341Q137 131 136 89T130 37Q129 36 129 35H237Q235 41 233 48L229 61L226 339Q226 621 229 628Q230 630 231 636T233 643V648H129Q132 641 133 638T135 603T137 517T137 341ZM580 48Q580 59 583 74T586 97Q586 98 585 97T579 92T571 86Q549 64 513 43L500 35H577L580 48",120132:"18 666Q18 677 27 680T73 683H146Q261 683 266 679L465 215Q469 215 566 443Q663 676 668 681Q673 683 790 683H908L915 679Q924 664 915 655Q912 648 897 648Q851 639 835 606L833 346Q833 86 835 79Q838 69 849 58T873 41Q877 40 887 38T901 35Q926 35 926 16Q926 6 915 -1H604L597 3Q588 19 597 28Q600 35 615 35Q660 42 673 68L679 79V339Q679 409 679 443T679 520T679 580T677 597Q646 521 584 375T473 117T424 3Q416 -1 410 -1T401 1Q399 3 273 301L148 599L146 343Q146 86 148 79Q152 69 163 58T186 41Q190 40 200 38T215 35Q226 35 235 28Q244 17 235 3L228 -1H28Q17 4 17 17Q17 35 39 35Q84 42 97 68L104 79V639L88 641Q72 644 53 648Q34 648 26 651T18 666ZM457 166Q451 169 449 171T435 198T404 268T344 412L244 648H157L166 637Q169 633 293 346L413 66Q424 88 435 117L457 166ZM817 646Q817 648 766 648H715V72L708 57Q701 45 697 41L695 37Q695 35 757 35H819L813 46Q802 61 800 76Q797 105 797 346L799 612L804 626Q812 638 815 641L817 646ZM124 42Q119 42 119 38Q119 35 128 35Q132 35 132 36Q125 42 124 42",120134:"131 601Q180 652 249 676T387 701Q485 701 562 661Q628 629 671 575T731 448Q742 410 742 341T731 234Q707 140 646 81Q549 -19 389 -19Q228 -19 131 81Q57 155 37 274Q34 292 34 341Q34 392 37 410Q58 528 131 601ZM568 341Q568 613 437 659Q406 664 395 665Q329 665 286 625Q232 571 213 439Q210 408 210 341Q210 275 213 245Q232 111 286 57Q309 37 342 23Q357 19 389 19Q420 19 437 23Q469 38 491 57Q568 132 568 341ZM174 341Q174 403 177 441T197 535T249 639Q246 639 224 627T193 608Q189 606 183 601T169 589T155 577Q69 488 69 344Q69 133 231 52Q244 45 246 45Q248 45 246 48Q231 69 222 85T200 141T177 239Q174 269 174 341ZM708 341Q708 415 684 475T635 563T582 610Q578 612 565 619T546 630Q533 637 531 637Q530 637 530 636V635L531 634Q562 591 577 543Q602 471 602 341V316Q602 264 599 230T580 144T531 48L530 47V46Q530 45 531 45Q533 45 547 52T583 75T622 105Q708 195 708 341",120138:"54 238Q72 238 72 212Q72 174 106 121Q113 110 132 90T166 59Q221 23 264 23Q315 23 348 41Q368 50 384 79Q393 102 393 129Q393 181 356 219T221 299Q120 343 74 390T28 501Q28 561 55 610Q98 682 212 699Q214 699 231 700T261 701Q309 698 340 687T408 675Q431 678 445 690T465 702Q474 702 481 690V497L477 490Q464 481 450 490Q446 500 446 501Q446 546 386 606T260 666Q215 666 182 639T148 565Q148 528 186 496T319 428Q352 414 370 405T418 379T468 338T506 284Q528 239 528 191Q528 102 456 46T266 -10Q211 -10 176 2T110 15Q86 9 73 -1T53 -12Q44 -12 37 -1V112V182Q37 214 40 226T54 238ZM446 619Q446 648 444 648Q439 646 435 644Q425 644 415 639H404L417 624Q435 606 439 601L446 592V619ZM124 619L128 635Q126 635 108 617Q64 576 64 502Q64 489 65 479T76 449T102 414T150 376T228 335Q335 291 381 245T427 128Q427 94 419 75L415 61Q421 61 448 88Q490 127 490 190Q490 233 475 264Q456 299 430 321Q402 349 369 367T287 404T204 441Q138 481 119 526Q113 544 113 565Q113 596 124 619ZM75 43Q76 43 90 46T110 50H119L106 64L74 101Q72 101 72 72T75 43",120139:"33 672Q36 680 44 683H624Q632 680 635 672V490L631 483Q621 479 617 479Q611 479 606 485T600 499Q600 525 584 552Q577 567 558 588T524 617Q479 642 426 646L415 648V355Q415 62 422 52Q425 42 434 40T473 35Q500 35 509 28Q518 17 509 3L502 -1H166L160 3Q149 17 160 28Q167 35 195 35Q224 37 234 39T249 52Q253 66 253 355V648L242 646Q192 642 144 617Q129 609 110 588T84 552Q69 527 69 499Q69 490 64 484T50 478Q39 478 33 490V672ZM113 639L126 648H69V597L84 612Q93 623 113 639ZM389 35Q382 46 381 86Q380 134 380 350V648H289V350Q289 199 288 131T286 53T280 35H389ZM600 597V648H542L555 639Q575 623 584 612L600 597",120140:"16 666Q16 677 28 683H341L348 679Q359 665 348 654Q342 648 315 648Q270 644 266 632Q262 627 262 598T261 399Q261 372 261 325T260 260Q260 149 274 99T339 30Q355 25 393 25Q430 25 457 33T494 49T519 72Q562 115 575 205Q576 219 576 379Q576 538 575 550Q568 597 550 622T506 648Q498 648 493 654T487 667T499 683H697Q709 675 709 667T704 654T690 648Q653 648 633 597Q624 573 622 546T619 377Q617 193 613 174Q596 95 544 41Q477 -19 355 -19H344Q275 -16 226 5T153 57T120 110T106 154Q101 172 99 399Q99 618 95 632Q88 644 53 648Q16 648 16 666ZM228 639L233 648H128Q128 647 133 632Q135 621 135 412Q135 197 137 185Q148 115 181 79Q209 51 235 41Q242 36 258 31T277 25Q276 27 268 38T254 59T241 92T228 145Q226 161 226 399Q226 632 228 639ZM604 621Q606 626 619 648H577L586 634Q587 632 591 625T595 614L597 608L604 621",120141:"316 683Q327 676 327 666Q327 648 302 648Q272 642 258 628Q249 621 249 608Q252 589 263 556T289 485T322 406T357 325T388 256T411 205L420 185Q423 185 473 317Q547 497 547 590Q547 621 541 632T516 648Q501 648 498 654Q488 664 498 679L504 683H607H660Q695 683 707 680T719 667Q719 660 714 654T700 648Q678 648 658 628L642 614L513 301Q484 231 449 148T397 25T380 -15Q373 -20 368 -20Q361 -20 358 -15Q354 -13 287 135T149 438T67 610Q45 648 18 648Q11 648 6 653T0 666Q0 677 9 680T59 683H164H316ZM216 614Q216 620 216 622T216 628T216 633T217 635T218 638T219 640T221 644T224 648H84L96 632Q118 592 236 330L367 43L387 88L404 132L380 185Q250 468 222 568Q216 590 216 614ZM576 645Q584 628 584 597L587 568L598 597Q609 624 618 637L624 648H600Q576 648 576 645",120142:"785 664Q785 670 795 683H982Q994 675 994 665Q994 650 975 648Q953 643 939 619Q931 593 823 292T710 -15Q706 -19 699 -19T688 -15Q682 -6 639 107T555 328T513 437Q513 438 500 409T462 325T413 212Q315 -14 310 -17Q308 -19 302 -19T288 -15L57 619Q45 643 24 648Q5 650 5 665Q5 677 17 683H146H200Q256 683 270 681T285 666Q285 659 280 654T268 648Q253 648 239 634Q230 630 230 619Q230 598 264 481L362 192Q363 193 428 341T493 492Q493 496 473 546T446 608Q426 648 399 648Q392 648 387 653T382 667Q382 678 393 683H679Q690 670 690 665Q690 662 685 655T673 648Q653 648 633 632L622 625V610Q626 576 657 479T719 300T751 218Q754 218 779 294Q847 492 847 581Q847 648 802 648Q796 648 791 652T785 664ZM194 623Q194 630 199 648H82L90 632Q99 616 199 332L302 50Q303 50 322 94T342 141Q342 142 305 245T231 467T194 623ZM585 620Q585 634 593 648H530Q466 648 466 645Q479 632 595 323L699 54Q701 56 718 103T735 154L702 245Q585 562 585 620ZM884 572L890 587Q896 602 903 620T915 645Q915 648 893 648H868L875 634Q883 598 883 576Q883 572 884 572",120143:"22 666Q22 677 31 680T80 683H184H335Q346 675 346 667Q346 660 341 655Q335 648 315 648Q280 644 273 637Q273 630 300 583T356 492T386 448Q430 504 450 535T474 577T478 601Q478 620 469 634T444 648Q428 648 428 666Q428 678 436 680T488 683H559H630Q673 683 681 681T690 666Q690 648 673 648Q652 648 619 637Q571 615 517 550Q490 517 450 464T410 408Q415 399 501 273T617 106Q648 61 661 48T688 35Q705 35 705 16Q705 5 695 -1H539Q384 -1 379 3Q373 10 373 17Q373 27 380 31T408 35Q459 40 459 49Q459 59 418 129T335 259Q334 260 332 260Q328 260 273 197Q210 127 208 117Q199 104 199 82Q199 57 213 46T239 35Q247 35 252 29T257 15Q257 10 256 7T253 3T248 0L246 -1H28Q16 7 16 15T21 29T35 35Q61 35 117 88Q289 279 304 297Q307 303 255 377Q117 586 79 626Q60 648 39 648Q32 648 27 653T22 666ZM237 639V648H173Q113 647 113 646Q113 642 137 612Q186 546 302 373T453 139Q497 63 497 43Q497 39 495 35H559Q622 35 622 37Q622 38 583 94T486 233T373 399T277 552T237 639ZM553 637L566 648H504L508 637Q510 630 515 615V603L528 615Q529 616 539 625T553 637ZM170 46Q169 49 167 58T164 70V83L137 59L113 35H175Q175 38 170 46",120144:"16 659T16 667T28 683H295Q306 676 306 666Q306 648 284 648Q258 648 255 641Q255 634 265 615T339 479Q418 339 421 339L455 394Q489 448 523 502L557 557Q560 566 560 582Q560 637 504 648Q489 648 486 655Q475 664 486 679L493 683H693Q704 675 704 667Q704 650 684 648Q672 645 653 623Q633 604 614 576T517 426L439 301V183Q442 62 444 59Q449 35 504 35Q521 35 528 30Q538 16 528 3L521 -1H195L188 3Q178 16 188 30Q195 35 213 35Q266 35 273 59Q274 61 277 163V261L75 621Q64 638 58 643T37 648Q28 648 22 653ZM219 637V648H101Q110 634 215 446L313 270V166Q310 59 306 48L301 35H415L410 48Q404 65 404 175V290L317 443Q230 601 226 612Q219 625 219 637ZM608 630L624 648H575Q584 632 588 623L595 610L608 630",120172:"821 97Q822 97 824 88T827 77L793 53Q676 -25 670 -28Q669 -29 656 -27L583 123Q583 124 467 46L352 -31L341 -20Q305 18 264 47T192 77Q161 77 60 32L49 40Q37 47 38 49Q39 49 93 83T212 160T297 219Q411 312 411 452Q411 519 360 571T233 624Q180 624 157 601T133 548Q133 524 160 496T214 441T241 393Q241 356 199 321T100 256L86 249L77 256Q68 263 67 263L84 274Q101 286 118 304T135 339T109 384T56 446T29 504Q29 566 118 624Q207 686 309 686Q349 686 360 685Q405 678 439 661T491 625T520 583T534 543T537 511Q537 436 491 344L478 318L455 299Q420 272 308 179L284 160L294 158Q348 154 426 89L437 79Q513 110 579 153V175Q579 183 579 227T580 330T581 446T582 542L583 582L664 630Q681 640 703 653T734 673L744 679Q750 678 756 676L767 674L716 623V585Q716 568 712 463T708 289V250Q708 237 709 218T710 195L711 180L739 130Q768 79 771 79Q775 79 796 88T821 97",120173:"160 345Q160 357 144 376T109 413T73 458T57 509Q57 544 95 584Q142 631 205 657T331 684Q382 684 427 658T500 585L505 577L521 588Q537 599 562 614T616 646T679 673T738 684Q790 684 807 666T840 587Q850 552 863 532T888 508Q894 505 906 505Q917 505 930 507T953 512T963 514L964 504Q965 495 965 494T914 467T808 413T745 384H751Q782 380 802 377T854 362T904 334T937 287T951 217Q951 178 937 143T908 91Q903 86 820 34L734 -21L718 -24Q679 -31 639 -31Q561 -31 451 4T271 40Q190 40 119 -2L99 -13L91 1L84 15L86 16Q88 18 132 42T233 100T315 152Q377 199 386 233Q388 240 393 297T399 363Q399 487 353 551Q337 573 306 597T238 622Q201 622 179 602T157 557T214 476T272 396Q272 371 229 334T143 272T96 246Q95 246 85 252T74 259T95 273T138 306T160 345ZM529 443Q529 409 528 385T526 353L525 346Q526 346 649 390T773 435Q749 451 742 464T727 518Q727 519 725 532T721 548T717 562T712 577T706 589T698 601T688 608T675 614T658 616Q626 616 576 582T525 528Q525 527 526 518T528 489T529 443ZM772 57Q774 57 778 58T792 64T808 77T821 103T827 144Q827 222 784 266T660 322Q652 323 611 323H596Q577 323 535 316L523 314Q520 291 505 255L500 241L356 138L366 137Q443 131 518 110T650 72T748 54Q763 54 772 57",120174:"460 -32Q373 -32 305 -11T193 45T122 124T83 214T72 303Q72 395 114 476L119 486L313 592L338 568L359 580Q418 615 479 638T568 668T606 675Q607 675 608 676H610Q612 676 615 661T630 621T660 578Q673 568 694 568Q717 568 721 570H726Q724 565 722 559L717 549L706 545Q608 513 583 513Q568 517 559 522T533 546T493 603L490 609Q452 599 452 558Q452 537 469 481T486 393Q486 353 474 331T422 285T296 231L272 223L262 230L253 237Q279 246 314 274T351 338Q351 376 334 442T316 532Q316 546 319 552Q319 554 316 554Q304 554 288 547T250 523T214 466T199 371Q199 218 299 133T541 47Q571 47 585 51T652 81L712 108Q716 104 716 81L706 74Q695 68 673 54T633 29L550 -22L540 -24Q492 -32 460 -32",120175:"380 596Q307 596 250 582T158 546T100 493T67 433T56 373V361Q55 361 43 366L31 372V384Q31 455 69 523T173 627Q213 650 284 666T444 683H452Q629 683 735 629Q896 548 896 369Q896 263 839 163Q835 155 818 140Q746 82 662 27T563 -29Q525 -29 386 16T183 62Q147 62 127 52T63 1L48 -14L40 -4L31 5Q83 73 172 149L186 161H199Q291 161 329 181Q357 199 357 231Q357 258 301 316T245 396Q245 423 282 458T349 512T403 543L413 548L425 545L438 541Q373 491 373 462Q373 446 399 415T453 349T480 288Q480 251 433 212Q394 180 348 156L334 148L353 145Q408 134 513 105T654 76Q711 76 745 132T780 277Q780 434 676 517Q637 549 562 572T380 596",120176:"527 55Q574 55 619 69T691 97L717 111V85L562 -18Q520 -29 443 -29Q379 -29 325 -15T235 21T180 61T146 98Q74 186 74 307Q74 395 109 472Q113 482 123 489T190 533Q251 568 295 591L308 598L350 580L361 586Q403 612 464 636T564 673T609 686Q610 686 610 685Q612 683 616 670T627 636T646 601Q666 572 686 572H692Q713 572 726 576H728L725 565L723 554L692 544Q660 535 629 526T595 516Q585 514 574 519Q563 527 543 552T507 597T490 617Q467 604 456 579V564Q456 535 473 471T492 393L494 381L613 460L622 446Q630 433 650 411T696 371L703 365L614 312H596L580 322Q568 329 553 340T528 355T510 360Q496 358 491 354T484 345T471 326T435 297Q408 278 370 261T307 235T277 227Q273 227 266 234L256 240L267 245Q280 251 294 258T330 288T353 336Q353 373 335 444T316 530V537Q316 549 322 567Q270 554 233 499T196 370Q196 253 287 157Q392 55 527 55",120177:"424 522Q265 596 208 596Q193 596 180 593T150 579T116 542T89 474Q86 465 86 463L59 481L63 494Q87 578 137 627Q191 684 285 684Q334 684 406 658T538 607T621 581Q644 581 706 629L721 640Q722 640 725 630L727 620Q701 592 654 548T582 486L569 487Q533 490 485 504L468 508Q449 503 429 495T387 466T365 422Q365 373 439 299L453 310Q473 325 528 370L588 418Q614 398 642 368T668 331Q667 331 628 296L590 262L582 274Q557 311 526 311Q511 311 487 297T462 278Q462 277 492 244T551 166T581 88Q581 54 570 25T536 -27T505 -56T478 -76Q376 -146 274 -146H270Q199 -146 162 -118T124 -15Q124 12 128 30T132 96V107Q132 144 117 157Q102 169 85 169Q74 169 59 165T32 156T20 151Q20 152 19 158T17 167Q17 168 17 168T17 169T19 170T22 172T27 175T35 179Q131 230 195 230Q231 230 259 202Q270 190 270 171Q269 150 253 87T236 -16Q236 -67 261 -87T322 -107Q380 -107 428 -68Q467 -35 467 30Q467 60 447 91T383 171T316 251Q290 286 278 308T263 339T261 359Q261 384 284 418Q322 469 424 522",120178:"742 611Q784 611 812 631V611Q807 607 783 591T718 544T629 476L606 458Q608 458 628 457T667 453T713 443T762 423T804 388T836 335Q844 313 844 289Q844 231 814 182T746 103Q720 82 655 48T546 -18L520 -21Q456 -29 432 -29Q313 -29 223 33Q204 45 183 65T135 119T91 207T74 320Q74 428 109 480Q116 491 127 497T215 546L308 595L343 583L355 591Q387 613 433 636T488 660H489L491 659Q493 658 495 657T500 655L509 650L500 645Q479 635 460 612T441 552Q441 535 447 498T459 433T466 405L625 513L643 526Q620 530 585 546T535 586Q535 587 532 592T527 602T525 610Q525 613 577 649L630 687Q632 687 638 675T653 649T686 623T742 611ZM349 313Q349 328 327 413T305 510V516Q305 531 308 542T314 559T317 566T315 567Q297 567 270 548Q233 524 212 490T191 392Q191 337 206 288T244 207T284 156T316 128Q410 51 535 51Q632 51 675 102T718 217Q718 269 690 314T599 375Q574 381 535 381Q501 381 477 377L466 376Q469 364 469 349Q469 314 457 295T408 258Q366 236 308 219L288 213L279 220L270 227Q284 232 294 236T309 243T320 252T326 260T331 270T336 281Q349 310 349 313",120179:"288 139Q288 172 255 224T189 335T156 442Q156 495 242 579Q289 625 361 668Q364 671 368 673T376 678T380 681L384 683L392 676Q401 670 414 661T443 642T477 626T509 619Q543 619 618 668Q625 672 628 674T631 675Q632 673 633 663T633 651L564 595Q556 589 545 580T528 566T516 556T505 548T497 543T488 539T481 537T472 535T463 534T451 534H442Q385 534 304 581L291 589Q290 588 285 583T277 575T269 566T262 555T257 543T255 529V522Q255 507 260 487T276 446T293 409T311 376L321 359Q321 358 322 358T324 359T327 361T333 366Q386 409 481 460L503 472L543 471Q586 471 599 470Q692 459 714 430Q725 416 738 360T752 245Q752 184 742 127T725 51T703 -8Q700 -13 619 -64T518 -123Q508 -126 493 -126Q438 -126 398 -86L427 -52Q456 -17 457 -17Q460 -17 465 -16H473Q474 -21 481 -32T504 -56T539 -69Q572 -69 599 -34Q625 4 625 158Q625 264 609 311T532 378Q508 386 484 386Q455 386 419 372T360 345T337 330L346 313Q375 263 386 227Q389 215 389 202Q389 192 388 184T384 168T376 152T365 138T350 121T331 103T307 81T278 54L194 -24Q130 30 99 30Q85 30 64 20T31 1T16 -10Q15 -11 13 -7Q12 -6 11 -3Q8 4 6 8L32 35Q88 88 117 107T169 126Q177 126 182 125Q218 118 252 84L263 73Q288 113 288 139",120180:"500 615Q523 615 550 628T595 655T614 668L623 654L607 642Q512 569 440 534L427 527L413 529Q384 535 340 547T265 565T209 572Q173 572 145 556T101 522T60 465Q58 460 54 460T41 468L32 477L37 487Q96 599 139 640Q187 681 247 681Q275 681 283 680Q313 674 398 645T500 615ZM418 170Q418 186 410 260T401 382Q403 418 403 424L405 433L415 444Q482 515 571 571L582 578Q591 573 607 568L597 560Q522 504 522 450Q522 427 533 357T545 241V228Q545 190 536 159T508 106T478 73T446 48Q343 -25 238 -25Q179 -25 118 15L107 22L79 5Q51 -12 51 -12L38 2L55 18Q106 67 175 122L192 136Q202 130 206 123Q223 91 252 61Q263 50 266 48T278 39T297 32T320 30Q357 30 389 68Q415 102 418 170",120181:"65 510Q68 517 74 528T101 569T144 620T202 661T274 680Q308 680 389 628T503 576Q530 576 596 600Q615 607 616 607Q616 602 615 596V585Q605 581 576 568T531 548T485 531T418 509L400 503L358 522Q347 527 327 537T299 550T277 560T257 568T239 573T220 577T201 578H196Q181 578 169 575T135 554T88 502L83 496Q82 496 74 502T65 510ZM424 4Q424 50 395 151T365 313V320Q365 352 369 361T405 403Q431 432 465 462T521 508T547 525L549 524Q551 524 554 523T560 521L571 517L552 498Q515 461 499 430Q485 399 485 366Q485 326 512 231T539 84Q539 -14 460 -77T273 -141Q248 -141 234 -140T198 -131T160 -106T134 -59Q128 -40 124 -16T117 22T108 49T91 69T59 75T15 65L1 59Q-8 76 -7 77Q4 85 22 97T88 129T170 149Q218 149 234 125Q242 112 242 43V21Q242 -17 248 -41T274 -85T322 -105H325H330Q363 -105 396 -75Q424 -47 424 4",120182:"234 109Q234 144 194 245T153 404Q153 445 180 490Q232 572 325 626T517 681H524Q612 681 661 658Q683 647 699 632T717 604Q717 600 708 545L699 490L690 489Q681 488 679 488Q675 488 669 504T640 546T577 592Q520 620 446 620Q415 620 386 614T327 594T280 553T262 487Q262 468 265 447T271 413T279 384T285 362L295 371Q320 396 352 421T439 474T538 502Q577 502 596 484T627 428Q642 386 651 373T677 360H682Q698 360 727 369L724 357Q724 354 724 351T722 346V344Q559 289 539 283Q582 272 589 271L615 265L637 189Q662 109 663 108Q668 97 682 84Q698 68 722 68H730H738Q762 68 799 91L803 80L806 70Q795 59 770 40T703 -3T631 -26Q598 -26 578 -8Q548 24 536 92Q524 154 509 183T477 218T428 224Q409 224 385 220T346 212L331 207Q330 205 330 201T331 189T332 178Q332 158 325 116L305 96Q269 60 240 38Q171 -21 123 -21Q72 -21 33 18L20 32L62 74Q96 107 102 112T116 118Q120 118 122 113T131 95T150 69Q171 48 190 48Q198 48 206 51T224 69T234 109ZM519 367Q497 432 450 432Q379 432 313 333L300 314L304 299Q306 294 309 280T315 260L321 235L542 313Q530 325 519 367",120183:"277 226Q277 248 253 286T203 369T178 449Q178 490 212 533T284 607Q380 683 532 683Q610 683 639 660T668 583Q668 568 666 546T663 509Q663 478 683 460Q691 452 719 452L738 450Q732 437 729 437Q728 437 652 416T573 394Q554 394 541 409T527 444Q527 449 532 487T538 542Q536 584 501 606T418 628Q389 628 364 620T317 587T295 523Q295 478 333 401T372 276Q372 269 371 267Q371 264 318 206L264 149Q284 141 317 130T433 101T577 82Q619 82 652 95T701 127T728 164T742 196L744 209Q744 210 749 208T759 203T764 199T760 185T751 154T744 129Q714 42 680 13Q628 -28 566 -28Q490 -28 403 -5T249 42T153 66T106 53T70 15T47 -16Q46 -17 30 -5L39 13Q85 100 138 148L147 156L161 157Q218 165 246 179T277 226",120184:"134 338Q134 357 81 417T27 504Q27 516 34 530Q55 568 110 615Q190 683 305 683H314Q445 683 495 580L501 569L512 577Q608 646 681 646Q759 646 801 585L808 576L816 583Q860 619 921 650T1041 682Q1063 682 1077 675T1096 660T1112 631T1132 596Q1160 555 1188 555Q1204 555 1228 564Q1230 565 1231 562Q1231 560 1232 554V547L1215 538Q1179 521 1114 475Q1112 474 1106 470T1099 464T1093 459T1088 452T1085 441T1082 425T1081 404T1079 376T1079 339Q1079 282 1084 236T1098 160T1117 112T1138 85T1159 77Q1166 77 1180 81T1207 90L1219 94Q1220 94 1221 86T1222 76L1045 -32Q1044 -32 1004 15L964 64V167Q965 334 970 372V378L994 402Q1032 440 1057 460Q1061 463 1066 467Q1070 469 1070 470T1068 471T1060 474T1050 481Q1040 488 1021 531T996 583Q979 609 947 609Q922 609 887 592T820 537L821 524Q825 484 825 448Q825 268 768 155L759 137L589 -28L579 -20Q533 17 507 17Q475 17 449 -7L436 -18L424 2L441 20Q446 25 456 36T471 52T484 65T497 79T509 90T522 99T534 106T548 112T561 115T576 117Q602 117 639 86Q648 81 648 81Q650 82 657 94T668 112Q711 202 711 373Q711 484 677 533T600 583Q592 583 583 581T569 577T554 568T542 560T528 549T516 539L519 523Q527 485 527 461Q527 444 522 407Q506 266 447 150L437 130L217 -25L208 -15Q165 28 126 28Q89 28 62 1Q47 -14 43 -14Q42 -14 36 -8L28 0L44 17Q96 73 120 92T166 117Q182 123 204 123Q239 123 284 78L295 67Q307 72 337 102Q400 178 400 346Q400 508 325 571Q270 618 208 618Q180 618 168 614T140 594Q124 578 124 564Q124 540 182 480T240 396Q240 359 197 321Q154 285 94 252L80 245L76 248L67 257L61 262L71 268Q82 275 94 284T120 309T134 338",120185:"522 492Q521 492 517 502T512 513Q542 444 542 333Q542 226 503 137L498 125L396 53Q308 -8 292 -17T260 -27Q226 -27 191 -9T136 29L145 39Q162 56 192 89L230 129L235 128H241Q276 57 332 57Q358 57 391 80Q403 89 409 100T422 143T428 227Q428 329 406 408T347 530T272 594T196 615Q152 615 135 596T118 558Q118 535 146 502T203 438T232 385Q232 357 195 322T122 265T83 243Q82 242 72 249T61 258L66 262Q72 265 82 273T103 292Q125 314 125 333Q125 351 101 376T51 432T26 492Q26 549 108 614T290 679Q326 679 335 678Q353 675 370 670T400 658T425 642T445 625T463 606T477 588T487 571T495 556T500 543L504 535L523 553Q553 581 569 595T619 632T686 667T757 678Q778 678 793 675T819 664T833 651T844 633T852 617Q884 548 910 548H916Q938 548 962 556L967 542Q967 540 947 531Q909 509 883 492T847 467T838 458Q825 419 825 328Q825 234 833 191T858 121Q875 94 892 77Q898 71 907 71Q912 71 928 76T957 87T971 91L972 88Q972 84 972 81L973 73L957 63Q891 21 806 -23L794 -30L783 -14Q766 13 728 60L713 79V372L724 384Q743 406 765 427T800 460L813 471Q809 472 806 472Q783 479 766 503T741 551T715 594T672 614Q644 614 622 595Q597 576 572 550T534 508L522 492",120186:"254 595Q269 583 269 581L262 577Q256 573 247 566T228 549T212 527T205 502Q205 480 266 386T328 277Q328 234 239 150L221 134L231 133Q264 131 376 99T516 62Q567 50 604 50Q614 50 626 52Q643 57 662 71T703 115T739 198T753 323Q753 454 692 517Q652 555 584 565T382 577Q365 577 357 577H308L300 591L292 606Q292 608 342 665L392 724L403 725Q406 725 411 726H416L417 725L412 715Q408 705 408 698Q408 684 423 679Q431 677 516 672T663 655Q757 634 806 593T873 463Q881 421 881 380Q881 340 874 306Q859 223 809 147Q801 134 789 124Q595 -30 456 -30Q395 -30 289 3T147 36Q134 36 121 33T98 26T76 15T59 4T44 -8T32 -17L22 -7L12 4L56 59L100 114L116 118Q217 142 217 199Q217 230 185 276T120 365T87 430Q87 435 109 464T172 534T254 595",120187:"247 398Q247 372 206 334T126 272T83 247Q82 247 72 253T61 261Q60 261 61 262T66 265Q127 306 127 343Q127 364 63 430Q42 451 38 458T33 480V490V497Q33 526 63 567Q112 632 170 660T282 688Q341 688 384 667Q454 633 482 566Q483 565 484 566T496 574Q562 623 630 653Q699 681 751 681Q778 681 797 673Q818 662 830 609Q835 580 843 564Q863 524 895 524H901Q917 524 932 528Q936 522 938 518T942 513T942 511Q873 480 836 454Q789 423 789 395Q789 362 834 298T880 200Q880 170 867 145T820 81Q733 -20 647 -20Q581 -20 499 21V9Q499 -16 502 -53T509 -116L512 -141L370 -223L357 -216Q344 -209 344 -208L348 -196Q370 -113 370 33V52L355 58Q307 76 284 76Q258 76 228 60T183 29T141 -11Q137 -7 133 -2L126 7L134 18Q181 89 210 121T278 170Q304 179 328 179Q336 179 358 177L370 175Q368 268 367 359Q367 416 363 434Q362 438 362 441Q348 527 302 574T203 621Q169 621 148 599T127 557Q127 535 187 476T247 398ZM673 315Q673 357 786 442Q786 443 776 444T750 449T727 462Q719 471 716 484V496Q715 507 715 515Q715 571 698 588Q680 611 643 611Q592 611 547 571Q534 558 511 522L499 505V139L543 123Q702 64 744 64Q770 64 781 79T793 112Q793 143 733 217T673 315",120188:"254 595Q269 583 269 581L262 577Q256 573 247 566T228 549T212 527T205 502Q205 480 266 386T328 277Q328 234 239 150L221 134L231 133Q264 131 376 99T516 62Q567 50 604 50Q614 50 626 52Q643 57 662 71T703 115T739 198T753 323Q753 454 692 517Q652 555 584 565T382 577Q365 577 357 577H308L300 591L292 606Q292 608 342 665L392 724L403 725Q406 725 411 726H416L417 725L412 715Q408 705 408 698Q408 684 423 679Q431 677 516 672T663 655Q757 634 806 593T873 463Q881 421 881 380Q881 340 874 306Q864 250 838 196T791 126Q748 93 733 82L715 69Q714 68 723 60T748 40T774 23Q806 2 832 2Q849 2 870 6T904 14L917 17Q917 12 918 6V-3L882 -22Q806 -60 778 -73L755 -83Q640 -36 596 -7L586 0L576 -4Q513 -30 457 -30Q394 -30 289 2T149 35Q119 35 93 22T52 -4T36 -17T24 -7T12 4L56 59L100 114L116 118Q217 142 217 199Q217 230 185 276T120 365T87 430Q87 435 109 464T172 534T254 595",120189:"31 498Q34 541 76 586T176 659T279 688H290Q377 688 429 653T506 569L511 558L526 572Q620 663 707 682Q722 685 737 685Q781 685 804 665T830 619T838 565T854 525Q866 511 897 511Q917 511 925 513L937 515Q938 515 941 509T944 501T925 493T870 470T803 438Q735 406 735 401Q735 400 741 399T767 390T814 374L828 367L829 307Q829 233 833 202T852 144Q873 109 896 90Q906 82 928 82T976 95V92Q976 88 978 72L807 -28Q768 39 733 87L718 108V149Q718 230 714 257T693 298Q654 333 580 333Q524 333 520 329Q520 300 489 224T443 133Q441 131 333 53T223 -27Q221 -26 204 -11T169 16T136 28Q110 28 66 -8L56 -16Q52 -13 40 -1L48 7Q165 124 211 124Q232 124 287 77L298 67Q309 73 337 97Q397 150 397 347Q397 419 379 474T330 560T269 604T207 619Q177 619 152 601T126 563Q126 540 185 479T244 387Q240 336 160 289Q144 278 98 255L80 246L62 261L79 272Q96 283 113 301T130 337Q130 353 115 373T81 410T47 451T31 498ZM524 358Q537 358 657 405T777 457Q777 459 768 459Q749 462 738 474T723 499T714 539Q706 585 697 599Q681 618 657 618Q632 618 597 595T532 515L525 502L524 441Q524 375 523 369Q523 358 524 358",120190:"457 -31Q356 -31 272 6T135 120T82 304Q82 372 106 430T170 527T241 588T305 626Q341 643 386 657T460 678T495 685T554 660T674 609T778 584Q800 584 818 591T848 610T866 633T878 651T883 659L893 649L901 639Q879 574 803 532T666 490Q661 490 657 490T650 491T641 492T633 495T622 500T610 505T595 513T577 522T554 533T527 547Q436 594 415 602Q393 608 374 608Q303 608 253 545T202 386Q202 229 307 135T568 41Q674 41 748 85T822 198Q822 244 779 283T639 322Q595 322 499 303T383 283Q358 283 335 290T291 318T270 374Q270 418 313 460T424 510H431L435 505L440 500Q425 496 403 475T380 427Q380 382 431 373Q437 372 475 372Q543 372 626 388T742 404Q831 404 868 362T905 260Q905 182 831 108Q692 -31 457 -31",120191:"666 641Q737 641 794 686L802 662Q790 648 734 596L677 541L664 538Q630 528 583 528Q540 528 482 537L461 541Q402 512 402 456Q402 427 439 387T512 311T549 253Q549 220 455 139L440 126Q541 75 586 75Q600 75 619 80T654 94T685 110T709 124T719 130Q722 125 725 119L730 108Q700 72 568 -18Q551 -30 542 -30Q495 -30 404 6T270 42H263Q213 42 142 -11L131 -19L129 -8Q126 1 126 4Q218 84 301 126L316 134H406L413 142Q436 165 436 189Q436 202 421 221T364 281Q336 307 318 328T296 356T283 381L290 394Q338 478 410 540Q419 549 417 549Q415 550 369 558T268 575T195 584Q153 584 127 567T100 523Q100 499 116 479T151 447T170 433Q170 429 171 428Q171 427 131 394T88 359Q82 363 73 370T47 403T31 457Q31 513 79 565T197 648T332 679Q369 679 490 660T666 641",120192:"273 244Q273 281 244 331T186 428T155 502Q155 524 165 536Q239 634 333 688Q338 684 345 680L356 672L344 664Q310 642 295 624T280 582Q280 550 303 505T348 407T371 300Q371 270 362 248L247 123L358 92Q452 64 484 64Q507 64 523 72Q553 87 573 109Q583 121 586 146T593 283Q594 303 594 344Q594 401 591 461T584 558L581 595Q598 600 623 611T672 634T719 659T754 678L768 686Q770 686 784 673L782 670Q781 668 777 664T768 655Q747 635 738 616T721 535T714 359Q714 205 723 176Q727 164 744 133T771 89Q780 75 804 75Q814 75 853 87L867 92L871 73L671 -39L654 -10Q636 20 619 50T600 83Q600 84 589 75T539 34Q478 -16 475 -19Q469 -22 449 -28T414 -34Q410 -34 394 -32Q356 -28 282 -2L237 15Q169 38 126 38Q106 38 85 27T51 4T37 -8T27 -1T18 8Q18 10 70 63T124 116Q154 123 176 131T223 154T260 191T273 244",120193:"133 343Q133 360 79 416T25 496Q25 523 58 563T118 624Q197 685 293 685Q331 685 339 684Q453 665 489 558L493 546Q521 570 553 596T640 653T725 684Q753 684 783 672T844 641T889 618Q895 616 912 616Q924 616 936 617T956 620T965 622T966 612V604L952 595Q924 576 895 549Q864 517 856 496T847 448V434Q847 395 848 388L859 323Q874 241 874 212Q874 142 830 96Q796 62 724 14Q661 -29 603 -29Q555 -29 421 28T242 86Q182 86 110 31Q105 28 102 26T99 25Q88 36 88 42Q95 54 222 142Q252 163 262 165Q319 183 344 218Q378 266 378 377Q378 444 362 494T319 571T266 610T212 623Q181 623 156 603T131 562Q131 539 154 512T206 458T243 416Q246 409 246 399Q246 387 242 377T225 351T178 311T94 259L79 251Q72 256 68 261T62 268L61 270L70 277Q131 318 133 343ZM822 526Q778 531 719 564T628 597Q611 597 579 574Q543 543 513 506L505 495L506 473Q506 469 506 461T507 449Q507 348 467 271L462 261L404 218L348 174Q349 173 356 173Q384 169 450 144L546 105Q665 56 708 56Q737 56 746 72T756 118Q756 129 755 135L741 219Q725 314 725 334V344Q725 416 736 431Q748 450 815 510L832 526H822",120194:"133 317T133 338T80 413T26 496Q26 532 83 591Q100 608 111 616T151 644T219 672T304 682Q381 682 434 646T506 564L510 557Q513 557 534 573L677 665L707 683L790 561L803 572Q933 682 1001 682Q1037 682 1098 650T1193 616Q1208 616 1222 619L1235 622Q1239 622 1239 616Q1239 611 1240 609Q1240 608 1206 577T1138 503T1104 430Q1104 409 1123 330T1142 208Q1142 183 1136 147Q1127 118 1117 106Q1114 103 1031 48T935 -14Q930 -18 908 -22T862 -27Q826 -27 759 -6T647 26Q597 38 578 38Q573 38 561 33T533 20T505 4T480 -10L469 -16L452 -26L439 -28Q423 -30 411 -30Q358 -30 279 7T169 45Q125 45 58 -5L47 -14L41 -4L35 8Q35 11 56 29T113 75T181 125L200 139H217Q279 143 320 180T377 270T394 393Q394 453 378 498T334 568T277 605T213 617Q177 617 155 607Q140 600 130 587T119 560Q119 545 137 522T177 479T217 434T236 393Q236 324 98 251L89 246L76 253L63 261Q91 275 112 296ZM1088 526Q1066 526 1004 556T909 586Q863 586 816 539L802 526L804 514Q814 461 814 411Q814 319 781 238Q772 214 760 198T730 165T702 136L715 133Q759 122 848 90T973 57Q1003 57 1017 80Q1022 93 1022 116Q1022 152 1003 241T983 377V391Q983 405 985 409T1002 429Q1019 450 1045 475T1090 514L1107 528Q1104 527 1102 527T1096 527T1088 526ZM699 358Q699 391 696 419T688 467T675 503T660 530T642 550T626 563T608 574T593 582Q581 575 559 554T524 512Q523 510 523 477Q523 315 444 218L435 207L368 169Q301 132 301 131Q307 128 315 125L377 99Q476 57 515 57Q534 57 608 94L627 102L636 111Q699 187 699 358",120195:"273 679Q354 674 408 633T477 525L484 533Q496 548 524 574T571 615Q594 633 625 649T675 673T699 681Q724 632 747 607Q754 601 756 599T765 594T777 591T794 590Q818 590 834 594V585L835 577L704 513L693 518Q657 534 631 560T597 599Q596 601 581 584Q495 490 489 379V366H562L681 369Q682 369 679 366T668 355T651 341L620 314H485V295Q490 190 543 125T686 60Q720 60 789 88L801 93V89Q798 83 798 66Q781 59 685 -10L665 -25L634 -30Q596 -35 594 -35Q570 -35 536 -23T477 19Q461 37 445 67T418 118L409 138Q401 131 388 120T340 79T273 28T206 -12T151 -31Q129 -31 90 -12T32 22L113 101Q114 101 120 96T136 84T160 69T189 56T221 51Q256 51 305 90Q376 149 376 301V315H293Q276 315 251 315T210 314T190 313L168 312Q168 313 200 340L231 368L238 367Q275 367 311 366H378V387Q376 470 355 512T291 572Q274 579 252 579Q223 579 197 568T156 544T131 519T117 508Q112 512 108 518L99 527L117 545Q177 604 255 665L273 679",120196:"34 496Q34 518 53 549T107 610T195 661T310 682Q357 682 398 663T460 611Q467 600 475 583T489 554T495 542Q495 544 531 570T617 629T700 676L724 688Q742 670 756 657T784 635T806 621T830 606T856 592Q878 416 878 340Q878 154 805 -3L798 -20L779 -40Q706 -113 613 -163T421 -214Q359 -214 317 -196T256 -160L306 -63L313 -64L320 -66L326 -79Q337 -104 349 -120T392 -151T470 -166Q576 -166 644 -101Q750 7 750 292Q750 426 721 495T617 565H611Q563 565 513 509L506 501L508 493Q508 490 509 475T510 445Q510 319 458 236L451 225L436 216Q406 198 365 169T318 134L332 127Q336 126 397 103T489 80H493Q527 80 593 129L604 137L607 127Q610 119 610 116Q610 114 592 95T543 46T484 -4Q450 -27 446 -27Q441 -27 402 -18Q365 -9 290 20T188 50Q135 50 64 -7L52 -17L43 -7L34 2L51 19Q118 87 177 132L192 143H215Q259 145 289 155T335 184T355 214T366 245Q382 306 382 388Q382 426 381 436Q368 520 318 570T214 621Q184 621 165 608T142 583T137 562Q137 541 163 508L201 469Q245 425 251 408Q253 403 253 398Q253 383 240 366T212 335T161 295Q128 271 99 253L89 247L77 256L65 266L76 273Q125 301 134 329Q136 334 136 342Q136 357 124 372T88 410T49 455Q34 479 34 496",120197:"278 601Q242 601 212 591T167 570T121 533Q114 528 111 525L93 550Q223 661 244 667Q299 677 356 677Q415 677 456 666T515 634T541 596T549 555Q549 513 529 478T480 421T424 388T377 372Q365 370 365 367Q365 365 389 365T450 358T523 337T588 282T623 183Q624 177 624 161Q624 20 524 -60Q415 -148 285 -148Q242 -148 213 -139Q181 -131 159 -109Q136 -87 127 -56T114 6T104 49Q94 69 57 69Q38 69 13 58L1 53Q1 55 0 59T-3 68T-4 76Q78 130 138 142Q150 144 162 144Q213 144 227 120T242 31Q242 -30 263 -66T345 -102Q397 -102 444 -52T491 107Q491 172 471 211T428 265Q392 288 306 288Q269 288 233 284L218 282Q208 289 208 291L229 324L251 359Q250 360 248 360Q239 360 248 371L256 381H273Q344 385 378 409T413 495Q413 537 384 569T278 601",120198:"80 129V151Q80 241 99 363Q99 367 111 372T172 401T285 465L297 472Q340 455 405 443L423 440L455 453Q486 467 489 467L497 461L494 451Q480 390 480 292V283Q480 207 483 155L484 143L535 80L558 90L582 99Q586 95 586 83Q586 81 513 25L443 -29Q410 16 386 40L371 55V61Q371 63 371 67T370 74V80L278 25Q186 -29 184 -31Q182 -32 160 -12T112 35T80 75V129ZM359 366Q334 366 300 371T243 382L221 388Q218 388 212 375T200 323T194 228Q194 191 197 152L198 139L217 120Q245 92 269 74L279 66L304 78Q338 95 349 100L369 110V152Q368 164 368 210T367 275Q367 358 366 361V366H359",120199:"99 398Q99 610 86 662Q86 665 95 669T106 674L108 669Q109 664 112 654T119 635Q122 626 125 616T130 601L131 596Q214 649 273 678Q295 690 298 690Q299 690 304 688T313 682L317 679Q275 653 240 612Q210 569 210 469V459Q210 450 210 432T211 406L212 378L285 425Q301 435 321 447T350 466L360 472Q360 473 361 473T368 471T401 456T465 429L501 414V408Q504 386 504 309Q504 255 500 203T491 125T485 97Q485 95 445 74T343 23T237 -24L214 -32Q197 -22 165 3T109 49T87 73Q99 169 99 398ZM386 251Q386 320 380 347V350L305 374L282 382L214 348L213 274Q213 184 214 165V131L230 119Q288 76 349 54Q386 137 386 251",120200:"227 393Q215 393 210 351T205 269Q205 161 213 153Q220 145 244 125T290 88L312 72L365 92Q414 113 418 113V93L365 60Q255 -9 221 -26L211 -18Q158 21 91 88L90 107Q87 167 87 225Q87 267 90 302T96 351T100 366L295 473L311 470Q340 464 368 454T410 437T424 429L347 334L342 333H337L325 342Q299 363 271 378T228 393H227",120201:"88 117Q88 177 91 231T97 310T102 341Q102 343 118 357T168 397T239 447L257 459L268 454L278 449Q242 416 238 412L219 394Q219 391 216 378T211 349T206 307T203 249Q203 211 206 166L208 148Q224 132 261 108T333 70Q341 66 342 67T350 79Q393 157 393 302Q393 368 388 406V411L371 424Q199 558 101 558Q69 558 28 545L18 542L8 549L-1 557L24 569Q61 587 147 621L177 632Q179 631 194 627T216 621T240 613T269 602T302 589T340 571T382 549T431 522T484 488Q504 475 504 472Q511 449 511 365Q511 248 474 129L468 108L451 96Q427 77 347 28T254 -28Q235 -20 174 21T89 86L88 117",120202:"309 69Q391 98 416 108Q418 106 422 100T425 92Q419 86 326 30T229 -27Q228 -27 207 -13T154 27T97 76L85 87L84 106Q81 152 81 194Q81 295 93 359L95 369L286 471L313 449Q376 397 414 372L428 362Q428 360 375 318L188 181V170Q188 156 189 153V148L203 138Q228 119 266 94T309 69ZM209 389Q208 388 204 366T194 307T187 244Q187 225 188 225T201 233L245 261Q283 284 291 291Q324 313 324 316L296 334Q280 343 259 357T224 380L210 390Q209 390 209 389",120203:"128 400Q127 401 121 422T108 478T99 540V555L111 569Q135 597 165 626T214 671T235 687L249 678Q263 668 282 659T315 650Q335 650 362 666L372 654L286 569H271Q205 576 173 586V583Q173 558 208 492T252 401Q253 399 310 399T367 398L332 355H254V311Q251 160 235 16Q230 -28 226 -36Q225 -38 221 -45Q171 -140 121 -211L113 -222H104Q94 -222 94 -220Q94 -215 105 -187L121 -145Q139 -80 139 35V93Q139 222 135 314L134 354Q134 355 84 355H35L84 399H106Q128 399 128 400",120204:"92 71Q92 74 91 88T88 128T86 183Q86 230 91 275T102 342T109 366Q115 372 207 422T305 472Q407 426 431 426Q435 426 476 445L519 465L525 463L532 461Q497 392 497 268Q496 255 496 233Q496 179 516 92T539 -10L541 -22L526 -38Q441 -126 355 -194L339 -206L327 -207Q324 -207 319 -207T310 -208Q242 -208 171 -179T73 -131L56 -141Q40 -150 38 -150Q17 -140 17 -137Q17 -136 18 -136T98 -79L176 -23Q174 -21 134 24T92 71ZM226 393Q224 393 221 372T214 312T210 235Q210 182 214 144L215 132L230 118Q281 70 301 66Q304 66 331 80T373 105L384 112L383 165Q383 224 387 309Q387 314 387 319T387 329T388 336T388 341V343Q388 344 381 344T339 354T249 384Q246 385 243 386T236 389T231 391T228 392L226 393ZM414 -80Q414 -64 411 -43T403 -1T394 37T386 66T382 79Q381 79 286 15T189 -52Q312 -125 365 -125Q397 -125 405 -115T414 -80",120205:"95 661Q95 662 103 667T113 672L126 634L137 596L147 602Q235 656 275 677L292 687L303 680Q305 679 307 677T312 674L313 672L310 670Q307 669 301 667T289 660T274 649T259 634Q250 622 244 611T233 585T226 560T222 528T221 497T220 456T219 413V377L232 384Q244 391 271 409T339 455L362 471L383 461Q425 440 491 415L504 410V406Q507 399 507 269Q507 76 486 -21Q485 -30 483 -33T461 -57Q382 -139 299 -207L281 -197L263 -186L266 -185Q268 -184 280 -177T312 -155Q344 -130 353 -116Q394 -59 394 117Q394 162 391 216T386 301T382 335Q382 338 365 346T323 364T281 376L250 362Q220 347 219 347Q213 336 213 232Q213 177 217 144L218 128L224 119Q244 92 263 71L272 60Q206 21 157 -24Q156 -24 151 -16T132 11T98 52L89 62L91 103Q104 289 104 436Q104 471 103 506T101 568T99 616T96 649L95 661",120206:"73 613L164 686L184 666Q200 650 214 637T235 620T242 614T203 577T162 540Q158 540 122 570T73 613ZM92 58Q92 63 94 83T98 142T101 234Q101 318 97 358V366L59 387L40 379L21 371Q20 371 12 376T3 382L38 406Q78 431 125 466L138 477Q149 468 186 444L219 422V389Q215 324 215 247Q215 136 222 123Q226 113 238 98T258 83Q263 83 292 94L322 104Q322 103 324 97T327 89Q327 88 317 82T272 52T190 -7Q166 -25 164 -25L112 35Q92 55 92 58",120207:"74 611L155 682Q172 666 186 655T208 636L235 614Q227 606 191 574L154 540L135 556Q101 582 84 601L74 611ZM10 377L144 477Q145 476 184 453T229 428L233 425V416Q238 346 238 252Q238 93 215 -16L213 -30L185 -57Q29 -203 19 -203Q17 -203 -19 -189L-9 -183Q52 -146 78 -116T114 -37Q120 31 120 192V237Q120 327 113 351T72 380L53 372Q34 362 32 364L10 377",120208:"106 72Q110 105 111 193T114 294V308H74L34 309L83 346H115V430Q114 591 106 652Q105 662 107 665T114 668T123 672Q125 672 139 635L152 597L154 598Q156 600 160 602T167 607Q193 625 226 644T279 672T302 682L312 676L321 670L312 665Q281 649 263 626T241 587T233 547Q232 541 231 530T230 510T230 501Q231 501 265 522T334 564T369 583L380 570Q428 509 428 481Q428 475 427 470T423 459T416 448T404 434T389 418T369 397T344 371L321 347L365 346H409L372 308H227V294Q227 272 230 208T234 138Q234 136 256 119T302 84L324 68L372 88Q421 108 422 108T432 90L421 83Q373 53 270 -5L234 -25L204 -1Q172 25 124 60L106 72ZM336 434Q336 452 327 472T308 503T297 514Q296 514 290 510T275 499T264 490Q230 458 230 358V346H247Q268 346 276 350T302 372Q328 398 335 423Q335 424 335 428T336 434",120209:"111 275Q111 406 108 518T104 650V657Q105 657 109 660T117 665T122 666L133 629L144 594L161 606Q218 642 272 670L294 681Q295 681 300 677T306 672L302 669Q298 666 292 662T278 651T263 637T251 621Q232 587 227 530T222 343Q222 226 230 125L231 112L244 98L258 83Q271 87 285 92L312 102V84Q297 72 231 24T163 -23L100 55Q110 141 111 275",120210:"115 203Q115 257 114 291T112 338T111 355Q111 357 93 370L75 384L54 375Q32 366 31 365Q27 365 16 378Q25 383 89 430L152 476Q175 453 228 420Q229 420 229 418T229 410T227 394L225 369Q279 400 315 425T363 461T376 471Q480 424 514 416V412Q514 411 514 404T513 392L511 376L520 382Q529 387 548 399T584 422Q599 432 618 444T648 463L657 469H658Q661 469 681 461T735 440T796 420Q803 418 803 416Q801 414 798 390T791 325T788 247Q788 220 790 172T794 123Q799 115 814 97T835 78H838Q841 78 867 89L895 101Q896 101 896 100T897 92T900 78L873 62Q810 23 761 -12L736 -30Q735 -30 729 -22T707 7T671 48L661 59Q674 93 674 207V219Q674 341 670 344Q655 353 591 372L576 376L544 364Q511 351 510 351Q507 349 507 224V132L535 95Q541 87 548 78T560 63L563 58Q563 57 504 15T444 -28L385 53L387 67Q396 114 396 206Q396 289 393 334Q393 346 390 348Q369 358 306 373Q301 373 265 361L228 349V335Q227 322 227 284Q227 206 231 157Q231 151 231 144T232 133V129Q232 125 259 90Q286 56 286 53Q287 53 284 51T273 43T258 31L173 -31L166 -20Q160 -11 145 7T119 38T108 59Q108 62 110 81T113 133T115 203",120211:"608 88Q572 65 535 37T477 -8T455 -25Q432 7 389 53L375 68L378 82Q386 160 386 195V221Q386 284 385 307L384 344Q352 359 306 373L286 379L213 353V273Q214 229 214 161V129L275 62L163 -28L150 -14Q136 0 121 16T91 44Q86 48 86 50Q95 83 96 148Q96 224 89 340L88 366L79 374Q69 384 67 385L64 388L55 383Q52 382 44 378T33 373L21 367L13 374Q5 379 5 381Q5 384 69 428L133 473Q135 473 147 464T179 443T215 424L214 400V376Q271 404 342 457L363 472Q363 473 364 473Q366 473 375 469T418 449T502 414L512 411V407Q502 330 502 217V197V132L523 109Q527 104 533 97T543 87T547 83L550 80L578 92Q603 103 604 103Q606 103 608 88",120212:"107 102Q107 178 112 242T123 334T129 362Q129 363 140 368T199 400T315 469L336 482L346 476Q409 439 498 414L514 410L515 389Q515 208 502 141Q494 101 491 94Q490 89 478 81Q430 51 375 23T288 -20T254 -34Q250 -34 200 -1T119 56L108 65L107 76V102ZM389 355Q367 358 346 363T309 372T282 381T264 388L257 390H256Q254 390 249 381T238 348T227 293Q226 280 226 237Q226 183 231 146L232 131L244 122Q285 91 323 74T374 57H377L380 68Q405 154 405 267Q405 315 401 349V354L389 355",120213:"66 435Q66 445 117 501T173 557Q174 557 183 555T193 551Q174 526 174 509Q174 496 190 472T233 428V386L377 482L399 471Q450 445 509 425Q519 421 519 420L518 419Q518 418 518 416T517 410Q517 405 518 381T519 335Q519 222 501 137Q492 84 489 84L473 75Q457 66 423 44T354 -6L338 -19L329 -13Q320 -8 313 -4T297 4T284 10T270 14T258 17T245 20T233 22V12L241 -161L214 -172Q187 -184 160 -195T131 -207Q127 -207 112 -202L113 -188Q113 -182 115 -77T118 31Q118 32 109 32Q63 27 23 0L10 -9Q5 -4 -1 8Q1 13 52 57T114 101H115L117 123Q117 141 117 230V359L110 367Q85 394 71 421Q66 433 66 435ZM384 83Q386 83 389 110T396 180T400 254Q400 294 395 339L394 349L379 355Q308 383 294 383Q290 383 263 372L234 360L233 245V130Q270 125 305 113T361 92T384 83",120214:"362 -196Q375 -92 375 47V78L282 24Q189 -29 188 -30Q187 -30 139 21T90 75Q87 84 87 158Q88 206 94 259T107 342L113 372L308 478L322 473Q374 452 421 444L433 442L503 485Q515 479 515 477Q485 378 485 56Q485 -100 494 -164V-171L381 -211L371 -207L362 -202V-196ZM280 72Q301 77 323 86T358 101T372 110Q372 268 377 346L378 358H374Q368 360 358 360T323 365T257 380L234 386Q231 386 229 379Q215 353 211 310T207 180Q207 152 208 150Q210 142 235 114T280 72",120215:"23 367Q21 370 18 374T14 380L13 382L151 472L236 411L238 381L290 426Q298 432 307 439T322 452T333 461T342 467L344 469Q382 410 404 399Q410 397 416 397Q423 397 432 399T446 403L451 405Q453 405 453 399V393Q430 374 404 356T364 328T350 318L349 317Q321 320 276 356Q257 371 256 371Q253 374 249 366T242 351Q232 321 232 236Q232 214 232 205T232 182T233 162T235 148T238 137T242 129T249 120T257 114T268 105T281 95Q313 70 314 70L358 85Q377 92 389 96T402 100V90L403 80L229 -26L221 -18Q195 6 166 29T121 63T105 76T106 82T110 97T114 121T117 158T119 208Q119 269 114 329L113 341L103 350Q90 362 67 380L45 374L23 367",120216:"189 331Q190 304 196 282T207 252T214 244Q239 244 348 292L371 302L382 297Q398 290 415 279T433 265Q442 238 442 166Q442 103 423 45Q416 42 380 29T310 3T244 -26L227 -34Q139 40 73 40Q61 40 48 37T24 30T6 22T-8 14L-13 11Q-14 11 -18 18T-23 26T38 75T102 125Q107 128 146 131H153Q192 131 296 56Q318 40 318 43Q323 48 323 114Q323 157 321 177L319 194Q308 208 291 216T261 225Q239 225 160 185L123 167Q85 205 79 227Q78 230 78 304V377L171 428Q264 479 265 478Q268 478 287 465T334 440T384 427Q423 427 475 463L478 453Q481 446 481 442Q481 439 410 391L339 342H331Q309 345 277 361T222 391T198 406T195 399T191 372T189 331",120217:"328 69Q401 102 403 102Q404 102 405 94T406 84Q406 83 318 28L230 -27Q223 -21 206 -5T171 25T132 54L124 60V71Q129 154 129 297V359H43L44 363Q44 365 44 367L45 369L48 372Q51 374 57 378T68 387L90 405H129V553L285 648Q304 641 306 640L260 598V592Q259 589 255 505T249 413V405H353V402Q353 399 328 379L303 360H245V319Q245 150 253 125Q257 115 276 101T311 78T328 69",120218:"444 -31Q444 -29 384 66Q382 66 364 58T309 30T231 -17Q214 -29 212 -29L197 -20Q172 -4 140 11T88 34L68 42Q68 43 73 49T85 67T100 98T113 149T118 221Q118 272 105 332L100 356L58 383L23 365L9 379L76 425Q141 472 144 472Q144 471 183 443L221 414V404Q224 365 224 275V253Q224 159 196 113Q191 104 193 104Q203 104 285 72L308 62L374 89L375 106Q375 266 373 340Q373 364 371 396V424L430 445L491 467Q493 467 499 463T505 457Q505 456 503 442Q488 335 488 187V158L529 81L534 80Q541 80 568 90L598 101Q605 94 602 87L524 27Q445 -32 444 -31",120219:"95 67Q104 80 104 193Q104 261 100 321L98 355L91 363Q56 402 56 421Q56 441 82 472T132 524T159 546Q174 542 175 542Q159 520 159 501Q159 481 205 432L221 415L220 401Q219 394 219 387L288 429Q309 441 325 451T347 465T358 472T365 476L504 415V409Q504 408 505 374T507 318Q507 155 474 91L469 80L343 26Q314 14 281 0T232 -20L216 -27L202 -15Q192 -5 152 28Q141 35 126 45T103 60T95 67ZM386 349Q302 389 287 389Q271 383 253 375L220 361V136Q226 120 256 100T312 68T342 56Q355 56 360 68Q389 134 389 258Q389 310 386 341V349",120220:"90 58T90 59T92 64T97 78T102 105T107 150T109 218Q109 290 103 350V356L83 377Q55 407 55 425Q55 445 138 528Q158 549 162 549L164 548Q165 548 167 548T170 547L175 546L172 540Q168 533 165 523T161 502Q161 479 216 430L229 419V382Q232 382 366 471Q407 445 500 408L511 404V387L512 370L595 420Q678 469 679 469L693 462Q756 431 795 417L815 409L814 380Q812 187 782 96Q774 71 766 62T744 48T684 25T577 -23L557 -32L546 -26Q536 -19 519 -10T481 10T436 31T393 47Q384 50 380 50Q380 52 381 58T384 77T387 104Q391 174 391 256V292L390 333L377 340Q350 357 304 373L294 376L227 355V348Q224 322 224 243Q228 117 232 112L235 108Q238 103 245 95T257 80L281 50Q281 49 227 10T172 -29L159 -13Q133 19 116 36T94 56ZM652 64Q658 64 667 84T685 162T697 303V336L686 341Q653 356 619 367L591 376Q590 376 553 361T514 344T512 324T510 275T508 221Q508 167 510 152T521 126Q537 112 590 88T652 64",120221:"8 -90Q8 -68 13 -63Q13 -56 53 -8T120 63L128 71L129 85Q133 120 134 182Q134 308 131 331T106 365Q100 367 97 369L75 381L35 365L20 377Q20 378 47 397T110 440T161 471L253 413V396Q253 378 254 378L309 422Q364 466 365 466Q365 467 366 466T370 461T376 454Q403 419 426 396L441 380L438 377Q438 376 433 372T420 359T404 344L372 314Q351 320 338 327T310 344T277 364Q261 364 252 316Q251 306 251 235Q251 136 255 129Q257 127 258 124T268 113T298 92Q334 68 335 68Q340 70 349 73T377 84T408 95T421 99Q422 99 422 90L423 82L334 26Q246 -28 243 -28L200 8Q156 43 148 43Q144 43 130 36T99 9T83 -36Q83 -67 121 -89T198 -118L237 -124V-129L238 -133L193 -160Q183 -166 171 -173T152 -184L146 -188Q140 -187 131 -185T98 -173T56 -154T23 -127T8 -90",120222:"280 53Q272 47 246 27T199 -10T176 -27L167 -18Q137 17 107 44L90 60L93 71Q108 130 109 290V331Q109 339 109 344T108 353T107 359T105 364T102 369T97 374T91 381Q60 412 60 432Q60 448 86 479T138 534L164 557Q168 553 180 553Q163 532 163 511Q165 491 186 468Q206 443 231 423V404L232 385L371 477L389 468Q439 441 498 418L512 412V386Q512 360 507 190T500 14Q488 -26 445 -67Q401 -111 355 -148T282 -203T249 -221Q247 -220 230 -210T213 -199T229 -191T269 -172T306 -151Q361 -120 379 14Q391 92 391 182Q391 218 386 305Q384 339 380 341Q363 353 330 366T288 379Q282 379 258 368L230 356V181V141Q230 127 232 120T236 108T251 89T275 59L280 53",120223:"153 371Q141 371 126 365T100 354T78 340L65 331L57 338L50 346L62 356Q133 419 222 471Q274 453 306 422T338 366Q338 356 329 346T283 301L243 264L262 257Q298 246 361 214Q378 154 378 73Q378 33 371 -9T356 -74T345 -104Q340 -106 267 -160L191 -214H177Q60 -214 13 -150Q-7 -122 -7 -115Q-7 -112 19 -77T106 25T241 149Q241 152 227 158T181 173T109 185V190L108 194L158 229Q212 267 223 278T234 306Q234 329 208 350T153 371ZM258 1Q258 42 257 68T254 105T252 118Q235 105 210 85T144 22T102 -45Q102 -79 146 -106T234 -133H238Q248 -128 254 -80Q258 -58 258 1",120224:"183 181Q183 179 152 91T118 0H28L154 346L280 693Q281 694 333 694H385L511 349Q636 4 638 2Q638 0 584 0H530L464 183H184L183 181ZM324 606Q319 578 292 492T238 332T210 256Q210 254 324 254T438 255L429 281L419 308Q409 336 395 378T365 465T339 551T324 611V606",120225:"425 363Q438 363 465 353T526 324T585 270T610 192Q610 132 561 78T426 7Q404 2 387 2T240 0H90V694H227Q373 693 396 689Q484 673 533 623T583 517Q583 494 574 473T551 437T520 409T487 388T456 374T433 366L425 363ZM490 516Q490 527 485 539T467 568T423 599T347 621Q340 622 262 623H188V399H261H286Q432 399 478 475Q490 496 490 516ZM514 190Q514 245 462 280T343 322Q336 323 259 323H188V71H274Q365 72 388 77Q445 88 479 121T514 190",120226:"59 347Q59 440 100 521T218 654T392 705Q473 705 550 680Q577 670 577 667Q576 666 572 642T564 595T559 571Q515 601 479 613T392 626Q300 626 232 549T164 347Q164 231 229 150T397 68Q453 68 489 80T568 120L581 129L582 110Q584 91 585 71T587 46Q580 40 566 31T502 5T396 -11Q296 -11 218 41T99 174T59 347",120227:"88 0V694H237H258H316Q383 694 425 686T511 648Q578 604 622 525T666 343Q666 190 564 86Q494 18 400 3Q387 1 237 0H88ZM565 341Q565 409 546 463T495 550T429 600T359 621Q348 623 267 623H189V71H267Q272 71 286 71T310 70Q461 70 527 184Q565 251 565 341",120228:"86 0V691H541V611H366L190 612V397H513V321H190V85H372L554 86V0H86",120229:"86 0V691H526V611H358L190 612V384H485V308H190V0H86",120230:"59 346Q59 499 157 601T384 704Q436 704 466 700T541 679Q551 674 560 670T575 664T583 660T588 658T590 656Q590 652 582 605T573 557L564 564Q489 626 392 626Q301 626 233 549T164 347T233 145T392 68Q441 68 506 84V223H388V299H599V38L588 33Q494 -11 393 -11Q296 -11 219 40T100 172T59 346",120231:"86 0V694H190V399H517V694H621V0H517V323H190V0H86",120232:"87 0V694H191V0H87",120233:"181 53Q200 53 215 56T241 66T259 79T272 95T280 109T285 122L287 129V694H388V415V229Q388 135 385 112T369 63Q364 51 355 39T328 12T280 -12T212 -22Q172 -22 130 -12T66 8T43 20L46 42Q50 65 54 88L58 110Q58 111 65 104Q107 53 181 53",120234:"88 0V694H188V519L189 343L525 694H638L375 419L651 0H541L309 351L188 225V0H88",120235:"87 0V694H191V79L297 80H451L499 81V0H87",120236:"92 0V694H228L233 680Q236 675 284 547T382 275T436 106Q446 149 497 292T594 558L640 680L645 694H782V0H689V305L688 606Q688 577 500 78L479 23H392L364 96Q364 97 342 156T296 280T246 418T203 544T186 609V588Q185 568 185 517T185 427T185 305V0H92",120237:"88 0V694H235L252 659Q261 639 364 428T526 84V694H619V0H472L455 35Q453 39 330 294T185 601L181 611V0H88",120238:"55 345Q55 504 149 609T361 715Q386 715 406 713Q521 696 600 592T680 344Q680 193 590 86T368 -22Q239 -22 147 84T55 345ZM276 59T368 59T518 146T576 360Q576 473 525 545T401 634Q371 637 362 637Q284 637 222 562T159 360T217 147",120239:"88 0V694H230Q347 693 370 692T410 686Q487 667 535 611T583 485Q583 409 527 348T379 276Q369 274 279 274H192V0H88ZM486 485Q486 523 471 551T432 593T391 612T357 621Q350 622 268 623H189V347H268Q350 348 357 349Q370 351 383 354T416 368T450 391T475 429T486 485",120240:"55 345Q55 504 149 609T361 715Q386 715 406 713Q521 696 600 592T680 344Q680 284 665 231T629 143T587 85T551 48L536 35L648 -120L652 -125H531L452 -8L440 -12Q407 -22 369 -22Q239 -22 147 85T55 345ZM579 345Q579 473 517 555T369 637Q279 637 218 554T156 345Q156 223 215 141T368 58Q376 58 382 58T392 58T397 59T401 60T403 61H404Q404 63 360 128T315 194H421L453 150Q485 105 486 105Q490 108 496 113T517 138T545 182T567 247T579 334V345",120241:"88 0V694H227H259H302Q365 694 399 689T474 663Q528 637 558 595T589 504Q589 482 584 462T569 426T547 396T522 372T495 353T470 338T449 328T434 322L429 320L440 300Q452 280 477 238T523 160L617 1L565 0Q513 0 512 1Q512 2 424 156L337 309H189V0H88ZM492 504Q492 600 367 620Q354 622 271 623H189V385H271Q363 386 388 392Q432 402 462 430T492 504",120242:"55 514Q55 589 115 652T283 716Q315 716 345 711T396 699T432 685T457 672T467 667Q467 666 459 618T449 568Q383 634 282 634Q214 634 182 600T150 525Q150 507 155 492T172 465T194 446T222 432T247 423T272 416T289 412Q353 396 378 384Q432 358 466 307T500 194Q500 110 438 44T272 -22Q215 -22 159 -5T73 28T44 50Q45 51 49 75T57 122T62 146L65 143Q68 140 74 136T88 125T107 111T131 98T160 85T194 74T232 66T274 63H286Q327 63 366 96T406 182Q406 245 352 280Q329 296 265 310T173 339Q124 363 90 409T55 514",120243:"36 608V688H644V608H518L392 609V0H288V609L162 608H36",120244:"87 450V694H191V449Q192 203 193 194Q200 148 220 117T266 72T311 54T347 49Q404 49 446 84T501 178Q505 195 505 218T507 449V694H600V450Q600 414 600 356Q599 198 595 181Q594 178 594 177Q575 89 505 34T345 -22Q258 -22 184 34T89 196Q88 205 87 450",120245:"14 692Q14 694 68 694H122L146 633Q325 165 339 90Q340 87 341 87Q341 124 530 619L558 694H605Q652 694 652 692Q650 690 523 354T390 10L387 0H279L276 10Q271 18 144 354T14 692",120246:"115 694Q115 693 156 550T233 266T270 90L271 85Q272 86 272 92Q272 153 405 616L427 694H524L553 590Q672 174 681 95L682 84L684 95Q689 138 728 287T803 563T841 692Q841 694 885 694T929 693Q929 691 829 346L730 0H679L628 1L606 75Q478 524 470 600L469 611L467 600Q458 518 338 101L310 0H213L114 346Q14 691 14 693Q14 694 64 694H115",120247:"14 0Q16 5 144 184T275 367L153 528Q121 571 88 615T42 674T28 694H150L228 584Q315 463 316 461L326 448L497 694H610L609 692Q606 689 492 528Q440 454 409 410T378 366Q378 365 515 182L652 0H531L326 292Q326 293 299 254T226 146L128 0H14",120248:"4 693L64 694H125L174 621Q335 378 340 364L341 362Q361 398 395 450L558 694H663L383 277V0H282V278L143 485Q112 531 75 586T21 668L4 693",120249:"69 617V694H555V643L373 362Q190 81 190 79H234Q244 79 272 79T344 80T419 81H560V0H55V53L237 334Q420 615 420 617Q413 618 387 618Q380 618 334 618T245 617H69",120250:"236 387Q209 387 184 382T141 370T111 355T91 342T83 337L82 355Q80 373 79 393T77 417Q77 419 81 421Q86 423 91 426Q155 460 227 460H238Q319 460 368 400Q393 371 400 341T408 252Q408 240 408 207T407 152V0H317V39L306 32Q244 -10 159 -10H152Q109 -10 77 22Q38 61 38 126Q38 142 39 146Q55 199 130 223T295 252H314V277Q314 305 313 310Q308 342 287 364T236 387ZM303 186Q124 180 124 126Q124 105 144 86T208 66Q284 66 309 124Q314 137 314 166V186H303",120251:"303 -11Q280 -11 259 -6T222 6T194 21T176 33T168 38V0H75V694H165V550L166 405Q247 455 336 455Q397 455 439 389T482 226Q482 115 428 52T303 -11ZM390 221Q390 283 361 331T265 379Q214 379 177 342L168 334V118Q203 66 258 66Q316 66 353 106T390 221",120252:"34 223Q34 327 99 393T245 460Q290 460 301 459Q328 455 354 445T395 427T410 415L396 338L386 344Q377 349 362 357T335 370Q305 381 258 381H252Q182 381 146 315Q126 275 126 224Q126 158 159 113T255 68Q329 68 394 106L408 114L410 93Q411 72 412 52L414 32Q407 27 394 20T338 2T252 -10Q156 -10 95 58T34 223",120253:"33 224Q33 321 81 388T197 455Q277 455 342 414L351 408V694H441V0H348V44L338 37Q278 -10 198 -10Q177 -10 168 -8Q99 11 62 90Q33 148 33 224ZM348 337Q307 378 263 378Q260 378 256 378T251 379Q239 379 223 374T182 355T142 305T126 220Q126 90 225 67Q231 66 250 66H255Q306 66 342 115L348 124V337",120254:"28 226Q28 329 91 395T235 461Q258 461 279 456T325 436T368 397T399 332T415 238V219H113V215Q113 163 151 114T248 65Q273 65 298 70T341 82T373 96T396 108L403 113Q403 106 406 76T409 38Q409 34 408 33T393 24Q325 -10 252 -10Q155 -10 92 59T28 226ZM340 289L338 297Q335 305 333 310T327 326T317 343T304 358T286 372T263 381T233 385Q212 385 193 376T162 353T140 325T127 301T123 289H340",120255:"262 705H267Q300 705 347 694V612L336 616Q303 628 274 628H266Q224 628 199 605Q187 590 184 579T181 541V507V444H287V371H184V0H94V371H27V444H94V492Q94 544 95 550Q102 617 151 661T262 705",120256:"55 286Q55 357 105 406T224 455Q280 455 323 421L322 423L318 427Q318 428 339 434T396 448T465 455H471L478 416L485 377Q484 377 474 379T445 383T401 385Q397 385 391 385T381 384L362 383L357 387Q358 386 364 375T375 354T384 325T389 287Q389 217 340 168T221 119Q178 119 138 142Q133 145 131 143Q125 131 125 117Q125 82 155 72L227 71Q230 71 251 71T280 71T310 69T343 65T373 57T403 46T428 30T449 7Q471 -26 471 -62V-71Q471 -136 384 -178Q326 -206 250 -206Q159 -206 102 -172T30 -92Q28 -84 28 -68T31 -37T40 -12T52 7T64 21T75 31T82 38Q60 68 60 106Q60 145 80 180L86 189L80 199Q55 240 55 286ZM304 233T304 287T279 362T220 383Q189 383 165 361T140 287Q140 243 161 217T220 191Q253 191 278 212ZM250 -134Q298 -134 331 -122T375 -96T387 -69Q387 -21 306 -7Q288 -5 216 -5Q161 -5 153 -7Q146 -9 139 -13T122 -31T113 -66Q113 -75 113 -80T127 -97T166 -121Q203 -134 250 -134",120257:"163 395Q223 455 307 455Q417 455 438 354Q442 331 443 164V0H350V157Q349 315 348 320Q334 378 259 378H253Q224 378 204 358Q180 334 173 301T165 209Q165 198 165 172T166 129V0H73V694H163V395",120258:"67 576V680H171V576H67ZM74 0V444H164V0H74",120259:"88 576V680H192V576H88ZM31 -126Q40 -126 48 -125T62 -122T73 -117T82 -111T89 -105T94 -99T98 -92L102 -86V444H192V180Q191 -45 191 -70T184 -113Q171 -152 140 -178T63 -205Q34 -205 4 -197T-43 -181T-59 -171T-51 -133T-41 -96L-38 -99Q-34 -102 -28 -106T-13 -115T7 -123T31 -126",120260:"76 0V694H163V257L340 444H449L286 272L292 263Q296 259 378 138T463 12L471 0H372L309 92Q294 114 277 139T250 179T237 198L228 211L160 139V0H76",120261:"74 0V694H164V0H74",120262:"160 392Q223 455 304 455Q359 455 386 436T430 383L437 391Q495 455 584 455Q694 455 715 354Q719 331 720 164V0H627V157Q626 315 625 320Q611 378 536 378H530Q501 378 481 358Q457 334 450 301T442 209Q442 198 442 172T443 129V0H350V157Q349 315 348 320Q334 378 259 378H253Q224 378 204 358Q180 334 173 301T165 209Q165 198 165 172T166 129V0H73V450H160V392",120263:"160 392Q214 446 283 454Q285 454 292 454T303 455H306Q417 455 438 354Q442 331 443 164V0H350V157Q349 315 348 320Q334 378 259 378H253Q224 378 204 358Q180 334 173 301T165 209Q165 198 165 172T166 129V0H73V450H160V392",120264:"28 222Q28 323 95 391T244 460Q275 460 281 459Q364 445 417 377T471 219Q471 124 408 57T250 -10Q158 -10 93 57T28 222ZM377 230Q377 277 364 310T328 358T287 379T248 385Q233 385 219 382T186 369T155 342T132 297T122 230Q122 146 159 108T250 69H253Q263 69 274 70T305 81T339 106T365 154T377 230",120265:"166 404Q194 424 241 439T337 455H341Q410 455 451 370Q483 307 483 222Q483 128 433 59T306 -10Q282 -10 260 -5T222 7T194 21T176 33T168 38V-194H75V444H165V424L166 404ZM390 222Q390 287 354 331T266 376T177 340L168 332V118Q200 66 257 66Q313 66 351 112T390 222",120266:"33 220Q33 325 87 389T206 454Q286 454 341 406L351 398V455H441V-194H348V41L338 35Q276 -8 198 -11Q171 -11 154 -5Q102 12 68 74T33 220ZM126 220Q126 160 161 113T251 65Q305 65 351 123V298L350 301Q349 304 347 308T342 319T336 331T327 343T315 355T300 365T283 373Q273 375 256 375Q208 375 167 332T126 220",120267:"171 389Q237 455 320 455H327V373H317Q262 369 220 336T167 248Q165 239 164 119V0H74V450H159V377L171 389",120268:"33 326Q33 376 60 408T117 450T175 460H190Q245 460 272 454T345 429Q345 428 338 388L331 349Q278 386 188 386H183Q119 386 119 336Q119 307 142 295T210 276T278 256Q360 213 360 130Q360 108 354 88T332 43T281 5T195 -10Q152 -10 111 1T49 22T28 35Q29 36 32 56T39 95T43 115T51 110T72 99T102 85T143 73T193 68Q274 68 274 123Q274 152 248 167Q234 178 187 186T115 207Q66 229 46 273Q33 298 33 326",120269:"333 27Q333 24 314 16T257 -1T184 -10H172Q146 -10 128 14T105 58T99 91Q95 113 95 251V371H18V444H98V571H182V444H316V371H182V253Q183 128 189 104Q199 68 234 68Q277 72 314 98Q315 93 323 61T333 27",120270:"353 39Q352 38 344 34T331 27T315 19T295 11T270 3T241 -3T207 -8T168 -10H162Q148 -10 137 -8T111 2T87 30T74 81Q73 89 73 268V444H166V268L167 92Q171 79 174 74T192 64T238 59Q317 59 344 116Q349 128 349 148T350 291V444H443V0H353V39",120271:"178 0Q15 441 14 442Q14 444 60 444Q107 444 107 442Q108 441 136 364T196 194T232 67Q233 98 280 234T356 442Q356 444 401 444T446 442L282 0H178",120272:"14 444H105L108 434Q192 160 200 74V65L201 75Q206 144 282 399L296 444H381L399 381Q480 112 480 69L481 70Q481 113 562 386L580 444H668L534 1L483 0H432L429 10Q343 294 338 367L337 377Q336 375 336 370Q336 340 313 250T269 88T245 11L242 0H195L148 1L14 444",120273:"187 229L6 444H107L227 294L344 444H393L442 443Q439 437 299 268L267 229L460 0H359L294 88Q280 107 262 131T236 166L227 177L100 0H0Q1 1 47 58T140 171T187 229",120274:"113 -204Q83 -204 63 -200L43 -197Q43 -196 40 -157T36 -117L48 -121Q79 -133 114 -133Q124 -133 130 -132T145 -121T163 -94Q169 -82 184 -42T200 1L188 29Q176 57 152 115T107 223T62 330T26 416L14 443Q14 444 61 444H109L122 411Q230 155 236 75L237 65V74Q245 161 348 424L356 444H401Q446 444 446 443L396 313Q345 183 293 49T236 -93Q191 -204 123 -204H113",120275:"42 370V444H400V395L156 76L279 77H402V0H28V51L273 371L157 370H42",120276:"110 0H86Q42 0 42 27Q42 37 148 350T258 667Q269 687 291 692Q295 694 366 694H399Q432 694 448 689T474 667Q477 663 583 350T690 27Q690 0 642 0H617H592Q582 0 575 1T561 2T549 6T541 11T533 18T527 26T522 37T517 49T512 64T506 81L490 130H225Q225 128 208 79T189 27Q185 19 180 14T170 7T156 3T143 1T127 0T110 0ZM439 279Q359 524 359 547L357 555L355 543Q347 503 270 263L259 231H357Q455 231 455 232L439 279",120277:"119 1Q98 5 92 28V667Q98 686 118 693Q121 694 272 694H289H346Q439 694 500 681T600 625Q640 580 640 513Q640 451 601 414T504 364L518 361Q568 351 602 329T649 280T666 235T671 197Q671 172 665 147T642 91T586 37T488 5Q456 1 282 1H119ZM489 509Q489 532 479 548T450 573T421 585T394 591Q387 592 315 593H247V404H298H325Q432 404 466 444Q489 470 489 509ZM517 194Q517 235 502 261T458 299T407 313T353 317H329H322H247V101H319H357Q387 101 407 103T452 111T492 133T514 171Q516 176 517 194",120278:"423 -11Q339 -11 275 9T171 62T106 143T71 240T61 347Q61 450 93 527Q157 664 313 694Q357 704 416 704Q479 704 517 699T608 676Q634 667 635 660Q635 653 624 592L612 528L609 524Q604 521 601 521Q595 521 583 531T555 555T505 578T428 589H424Q298 589 250 494Q224 438 224 347Q224 292 233 251T265 175T329 122T432 104Q488 104 524 115T604 158Q607 160 610 162T615 165T619 168L621 170Q625 172 630 170T637 163Q638 160 642 109T647 54Q646 49 625 37T568 11T499 -7Q463 -11 423 -11",120279:"119 1Q98 5 92 28V667Q98 686 118 693H124Q131 693 142 693T168 694T200 694T237 694H296Q416 694 450 692T525 677Q732 617 732 342Q732 169 644 81Q593 32 528 16T372 0Q356 0 324 0T276 1H119ZM573 349Q573 387 571 413T559 473T532 527T482 567T403 591Q395 592 320 593H250V101H321Q418 102 456 114Q553 144 569 263Q573 303 573 349",120280:"277 122Q280 122 380 123T544 125Q552 125 557 125T565 124T569 124Q595 115 595 75V62V47Q595 9 569 2Q564 0 341 0L119 1Q99 7 92 28V664Q98 683 118 690Q121 691 335 691T554 689Q580 682 580 644V632V618Q580 582 554 573Q553 573 551 573T542 572T527 572Q464 572 364 573T260 575H253V412H385H459Q524 412 536 404T549 357Q549 341 549 334T542 318T523 305Q518 303 385 303H253V122H277",120281:"512 572Q451 572 356 573T258 575H253V400H370H431Q494 400 506 392T518 345Q518 307 507 299T437 291H370H253V161Q253 141 253 113T254 75Q254 23 245 12T195 0H170L119 1Q99 7 92 28V664Q98 683 118 690Q121 691 327 691T538 689Q564 682 564 644V632V618Q564 582 538 573Q537 573 535 573T526 572T512 572",120282:"61 347Q61 405 70 454T105 550T171 631T276 685T426 705Q483 705 537 693T620 668T650 646Q650 645 649 637T645 612T639 578L627 514L624 510Q620 507 615 507T597 520T566 548T512 577T430 590Q223 590 223 347T431 104Q478 104 506 112Q508 112 508 164V215H471L434 216L428 222L427 268Q427 315 429 318Q432 323 444 323T544 324H652Q655 320 659 317V45L656 43Q654 39 624 27T536 2T424 -11Q366 -11 317 -2T219 33T137 97T82 200T61 347",120283:"92 667Q101 694 143 694H172H198Q244 694 251 669Q253 663 253 539V415H540V539Q540 558 540 585T539 621Q539 673 550 683T611 694H621H646Q671 694 683 690T700 669Q702 663 702 347T700 25Q696 9 684 5T646 0H621H606Q560 0 550 11T539 76Q539 85 539 116T540 169V306H253V169Q253 147 253 116T254 75Q254 23 245 12T194 0H170L119 1Q99 7 92 28V667",120284:"85 667Q94 694 136 694H165H191Q237 694 244 669Q246 663 246 347T244 25Q235 0 192 0H163L112 1Q92 7 85 28V667",120285:"236 -22Q190 -22 144 -11T72 12T46 29Q63 147 69 153Q80 164 92 146Q124 91 191 91Q222 91 242 102T267 134Q268 139 268 402Q268 663 270 669Q275 687 294 692Q298 694 347 694H367Q393 694 406 690T425 669Q427 663 427 399Q427 132 426 125Q421 87 404 58T366 15T318 -9T273 -20T236 -22",120286:"92 667Q101 694 139 694H163H186Q225 694 234 671Q236 663 236 529L237 392L533 682Q550 694 590 694H623H681Q695 680 695 672Q695 670 693 664Q688 657 561 533L431 405L698 33Q701 28 701 23Q701 7 683 0H626H604Q571 0 564 2T545 13Q544 14 530 33T489 90T437 162L332 307Q331 307 284 260L236 214V122V65Q236 32 231 19T210 2Q205 0 161 0L119 1Q99 7 92 28V667",120287:"92 667Q98 684 109 689T142 694H172H198Q244 694 251 669Q253 663 253 389V116L278 117Q410 119 490 119H495Q511 119 517 115T534 93V63V48Q534 9 508 2Q503 0 310 0L119 1Q99 7 92 28V667",120288:"92 667Q98 684 109 689T146 695Q152 695 167 695T192 694Q200 694 214 694T234 695Q291 695 305 664Q313 651 400 419T487 165Q487 162 488 162T489 165Q489 187 574 413T671 664Q679 680 695 688Q708 694 785 694H828Q855 694 867 689T884 669Q886 663 886 347T884 25Q876 0 832 0H817H802Q758 0 750 25Q748 31 748 293V555L746 544Q737 509 692 386T606 160T564 52Q548 22 502 22H487H472Q423 22 410 52Q407 59 367 160T283 385T231 546L230 548Q229 548 229 293Q229 31 227 25Q222 9 211 5T176 0H158L119 1Q99 7 92 28V667",120289:"92 667Q98 684 109 689T146 694H185Q273 694 279 692Q301 689 315 669Q322 660 419 453L554 163L562 143Q564 143 564 401Q564 663 566 669Q574 694 618 694H633H648Q692 694 700 669Q702 663 702 347T700 25Q696 10 683 5T642 0H596H551Q520 0 505 4T478 25Q471 34 374 241L239 532Q231 550 231 552L229 479Q229 440 229 293Q229 31 227 25Q222 9 211 5T176 0H158L119 1Q99 7 92 28V667",120290:"362 715Q364 715 376 715T394 716H400Q542 716 626 643T727 426Q731 395 731 342Q731 271 722 225Q674 -22 396 -22Q320 -22 259 -3T148 68T77 201Q62 257 62 342Q62 447 86 522T173 649Q245 707 362 715ZM568 433Q551 623 396 623Q383 623 370 622T333 612T292 591T257 550T233 485Q223 442 223 350Q223 276 232 227T267 137Q309 74 397 74Q433 74 461 85T507 113T537 156T556 205T566 260T569 310T570 357Q570 409 568 433",120291:"641 470Q641 426 630 391T603 334T561 295T513 271T459 259T408 254T361 253H350H337H253V142Q253 125 253 100T254 67Q254 32 249 19T227 2Q222 0 170 0L119 1Q99 7 92 28V667Q98 686 118 693Q121 694 271 694Q428 693 462 688Q641 656 641 470ZM487 467Q487 495 485 510T474 546T442 578T382 592Q375 593 310 593H250V347H309H339Q364 347 380 348T418 354T451 368T474 395T486 438Q487 444 487 467",120292:"450 -20Q444 -20 429 -21T396 -22Q320 -22 259 -3T148 68T77 201Q62 257 62 342Q62 447 86 522T173 649Q245 707 362 715Q364 715 376 715T394 716Q732 716 732 340Q732 268 719 210T686 120T647 68T615 39T601 29T638 -22T676 -73Q679 -78 679 -83Q679 -98 661 -106H593Q526 -106 521 -104Q514 -103 507 -97T496 -84T477 -55L454 -19L450 -20ZM554 509Q516 622 391 622Q294 622 250 535Q220 475 220 345Q220 299 222 266T234 198T258 140T299 99T363 74Q378 71 393 71H395L381 92Q367 114 353 136T338 161Q336 165 336 170Q336 186 352 193L361 194Q370 194 384 194T412 194H452Q457 194 460 194T466 194T471 192T476 191T480 188T483 185T487 180T492 174T497 167T504 158L526 129Q532 127 552 175Q573 231 573 348Q573 455 554 509",120293:"654 24Q654 9 644 5T612 0H577L521 1Q509 5 503 13Q498 20 421 160L343 304H250V168Q250 147 250 118T251 78Q251 24 242 12T192 0H168L119 1Q99 7 92 28V667Q98 686 118 693H124Q131 693 141 693T165 694T195 694T229 694T280 694T332 695Q389 695 428 691T510 675T582 637T627 569Q641 532 641 493Q641 377 537 331L497 317L493 316L571 177Q653 28 654 24ZM487 472T487 492T485 525T476 553T450 577T404 591Q398 592 322 593H250V391H321Q327 391 353 391T385 392T412 395T438 401T457 412T474 430T483 456",120294:"61 503Q61 547 72 583T110 650T186 698T305 716Q405 716 496 671Q513 664 514 657Q514 656 513 648T509 623T503 589L491 525L488 521Q484 518 479 518H475L461 532Q430 565 395 581T305 598Q201 598 201 523Q201 480 240 462T345 431T443 394Q549 324 549 204Q549 160 538 123T502 51T427 -2T308 -22Q180 -22 69 41Q50 52 49 57Q49 58 50 66T54 91T60 125L72 189L75 193Q80 196 84 196Q87 196 104 182T145 149T212 117T304 102Q408 102 408 188Q408 215 396 234T362 263T319 278T267 290T219 302Q149 324 105 380T61 503",120295:"67 687Q70 688 366 688Q661 688 666 686Q692 680 692 641V629V615Q692 579 666 570H660Q655 569 648 569Q645 569 624 569T581 570Q505 570 475 572H447V302Q447 31 445 25Q436 0 393 0H364L313 1Q293 7 286 28L285 300V572H257Q227 570 151 570Q130 570 109 570T84 569Q77 569 72 570H66Q48 577 44 588T40 631L41 661Q47 680 67 687",120296:"92 667Q101 694 143 694H172H200Q242 694 251 671Q253 663 253 430Q254 189 255 185Q262 134 288 107T384 79Q498 79 516 168Q520 191 521 431Q521 663 523 671Q532 694 572 694H596H618Q639 694 648 692T665 679Q671 672 671 653Q672 632 672 555V432Q671 200 670 190Q652 79 581 29T383 -22Q137 -22 98 166Q92 195 92 303V667",120297:"27 667Q27 683 39 688T75 694H101Q155 694 159 692Q182 687 194 665Q202 652 283 419T374 142Q376 165 473 445Q552 664 553 666Q568 694 618 694H639H658Q681 694 693 689T705 667Q705 660 592 347Q481 32 477 28Q466 7 441 1H292Q266 7 255 28Q251 32 140 347Q27 660 27 667",120298:"994 694Q1012 683 1014 668Q1014 661 977 519T896 217T845 26Q831 0 783 0H747H711Q685 0 672 5T649 26Q644 36 583 272T517 548Q516 552 516 551Q503 479 437 227Q389 37 383 26Q367 0 323 0H288H254Q207 0 193 26Q191 32 108 346T24 665Q24 685 44 693Q47 694 98 694H115Q152 694 168 668Q174 657 235 417T297 144Q297 134 300 153Q307 204 362 421T427 668Q441 694 488 694H523Q586 694 597 688Q612 683 620 661T651 549Q664 496 673 462Q744 194 750 146V140Q767 223 800 354T857 576T883 668Q897 694 938 694H958H994",120299:"52 1Q37 11 37 23Q37 26 39 32Q39 34 158 202L275 369Q275 370 221 441T112 586T55 663Q53 669 53 672Q53 687 68 693H72Q77 693 84 693T99 694T118 694T139 694H176Q203 694 212 692T230 682Q231 681 239 669T265 634T296 591L358 504L418 591Q481 682 486 686Q491 691 499 692Q505 694 569 694H632Q650 685 650 672Q650 667 646 660Q643 654 592 582T491 440T441 369T566 201T693 29Q694 27 694 23Q694 11 677 0H607L537 1Q523 6 519 10T437 131Q422 153 411 170T390 200T375 222T365 237T359 245L357 247L348 232Q339 218 319 188T283 131Q222 37 211 22T186 1H52",120300:"635 694H668Q688 694 698 690T708 670Q708 664 704 658L446 278L445 152V27Q442 20 440 17T433 9T419 1L368 0H339Q316 0 305 5T288 26Q286 31 286 154V278L157 468Q135 500 101 550Q43 635 34 650T24 671Q24 686 39 693Q42 694 105 694H122H132Q163 694 180 689T214 666Q225 654 336 485Q373 425 373 420L374 418Q375 419 375 421Q378 432 418 493T496 609T536 667Q543 676 551 681T572 689T591 693T615 694T635 694",120301:"411 584Q243 581 131 581Q122 581 116 581T106 582T102 582Q84 589 80 600T76 640L77 667Q83 686 103 693Q106 694 343 694Q579 694 584 692Q592 691 599 684T609 668Q610 665 610 646Q610 614 608 608Q605 603 434 361L261 116Q340 117 402 118T490 119T533 120T560 120H572Q605 120 614 95Q616 89 616 60V46Q616 9 590 2Q585 0 339 0Q92 0 87 2Q79 3 72 10T62 26Q61 29 61 49Q61 84 63 90Q65 94 152 217T325 461T411 584",120302:"255 394Q218 394 186 383T138 358T109 333T94 321H91Q88 321 86 322T83 325T80 331T79 339T78 349T77 362T75 377Q72 410 72 420Q72 423 72 425T73 429T74 431T77 433T80 435T85 437Q166 475 262 475Q360 475 413 440Q462 406 471 341Q472 332 472 181Q472 155 472 119T473 73Q473 20 462 10T398 0H380Q349 0 337 8T324 48V65Q298 30 257 10T172 -11Q109 -11 70 37T31 145Q31 276 307 289H321V309Q321 337 318 352T300 381T255 394ZM176 146Q176 116 190 97T231 77Q251 77 266 85Q322 110 322 185Q322 189 322 192T322 198L321 201V234L308 232Q176 220 176 146",120303:"54 667Q63 694 102 694H127H151Q190 694 199 671Q201 663 201 544L202 422L211 428Q270 468 355 468Q523 468 523 231Q523 -10 321 -10Q286 -10 261 -2T204 33Q197 11 187 6T142 0H126L81 1Q61 7 54 28V667ZM372 230Q372 317 355 349T280 382Q251 382 204 356V107Q235 76 274 76Q301 76 320 84T349 105T364 139T371 180T372 230",120304:"188 233Q188 199 190 177T200 131T225 95T271 83H281Q356 83 421 130Q433 138 434 139Q446 141 448 131Q449 128 453 84T457 36Q455 30 432 20T364 -1T273 -11Q37 -11 37 232Q37 456 244 474Q246 474 257 474T276 475Q349 475 400 455Q443 436 448 431L451 425Q451 419 443 377Q442 372 441 366T439 356T438 348T436 340T435 334T433 330T431 327T429 325T426 324Q420 324 406 336Q376 362 350 372T281 382Q254 382 236 373T208 352T194 317T189 278T188 233",120305:"225 -11Q192 -11 164 -3T104 29T55 102T37 227Q37 321 63 376Q111 469 223 469Q292 469 349 433L359 426V546Q359 564 359 589T358 623Q358 675 369 684T433 694H451Q497 694 505 669Q507 663 507 347T505 25Q500 9 487 5T450 0H432H413Q356 0 356 36V40Q298 -11 225 -11ZM356 359Q326 382 286 382Q239 382 215 358Q189 330 189 256V229V203V195Q189 102 231 86Q251 76 274 76Q318 76 356 114V359",120306:"30 231Q30 301 51 351T107 426T181 463T262 474H268Q293 474 312 472T366 459T422 427T462 363T480 260Q480 230 466 222T405 213Q395 213 364 213T311 214H173V211Q173 183 183 148T216 96Q244 76 287 76Q319 76 350 85T399 104T433 125T451 136Q463 138 465 128Q466 125 469 84T473 39Q471 29 423 13T330 -9Q321 -10 286 -10Q213 -10 161 11T81 68T42 144T30 231ZM353 292Q350 324 342 344T320 373T294 384T264 387Q191 387 175 286V282H353V292",120307:"67 458H78V502V509Q78 538 79 556T90 604T117 651T169 685T253 704Q254 704 258 704T265 705T275 705T287 704Q364 704 381 687V638V607Q381 591 378 585T366 579Q362 581 351 591T323 610T282 618Q238 618 226 587Q224 581 223 519V458H253Q288 458 298 453Q315 441 315 415Q315 399 312 390T299 377T282 372T259 371H255H226V201Q226 31 224 25Q215 0 174 0H150L106 1Q86 7 79 28L78 199V371H69Q29 371 29 412Q29 425 30 431T40 447T67 458",120308:"63 108Q63 142 83 176L76 184Q35 227 35 300Q35 469 243 469Q330 469 385 437L397 443Q451 469 508 469Q515 468 517 466T522 456T528 425Q534 392 534 386Q532 379 523 377Q520 377 509 381T477 390T431 398L425 399Q453 362 453 297Q453 268 445 242T417 189T351 146T242 130Q169 130 119 153Q117 141 117 136Q117 95 155 83Q161 81 252 81Q354 80 362 79Q437 71 475 48T526 -24Q532 -42 532 -65Q532 -116 489 -156T341 -204Q323 -206 274 -206H256Q39 -206 18 -84Q17 -79 17 -68Q17 15 82 42L76 53Q63 79 63 108ZM310 300Q310 359 298 377T238 396Q217 396 204 390T186 368T179 339T178 300Q178 245 189 224T244 203T299 224T310 300ZM414 -66Q414 -55 411 -47T401 -32T387 -21T368 -14T346 -10T322 -7T297 -6T271 -6T246 -6H193Q163 -6 154 -10T140 -30Q135 -45 135 -62Q135 -134 274 -134Q414 -134 414 -66",120309:"53 667Q62 694 101 694H126H148Q191 694 198 669Q200 663 200 526V390Q263 469 361 469Q390 469 412 465T456 449T491 413T507 351Q508 342 508 185Q508 31 506 25Q498 0 450 0H432H413Q368 0 359 23Q357 31 357 186Q356 345 355 350Q349 369 336 376Q324 381 301 381H298Q269 381 242 362Q217 342 210 316T202 239Q202 229 202 202T203 157V82Q203 24 195 12T146 0H125L80 1Q60 7 53 28V667",120310:"72 574Q55 583 51 591T46 619V636L47 670L48 673Q50 676 52 678T56 684T63 690T73 694H81Q89 694 102 694T129 695H181Q193 687 196 685T203 676T207 661T208 634Q208 603 204 593T181 574H72ZM54 431Q63 458 102 458H127H149Q192 458 199 433Q201 427 201 229T199 25Q190 0 149 0H125L81 1Q61 7 54 28V431",120311:"70 634V648Q70 686 96 693Q100 695 151 695H176Q201 695 213 691T230 670Q232 665 232 634V620Q232 582 206 575Q202 573 151 573H126Q101 573 89 577T72 598Q70 603 70 634ZM-41 -84Q-1 -105 28 -105Q67 -105 78 -85Q83 -77 83 -48T84 180Q84 427 86 433Q93 458 136 458H158H180Q201 458 209 456T225 443Q230 436 231 418Q232 397 232 313V183V124V40Q232 -55 228 -87T203 -147Q166 -205 78 -205Q31 -205 -20 -189T-71 -159Q-71 -156 -62 -124T-52 -89Q-49 -84 -41 -84",120312:"496 23Q496 9 487 5T457 0H427H398Q367 0 354 11Q352 12 288 99L226 183L191 150V90V54Q191 30 186 18T165 2Q160 0 124 0L90 1Q70 7 63 28V667Q72 694 108 694H128H146Q183 694 192 671Q194 663 194 496L195 325L254 383Q266 394 281 409T301 429T316 441T329 450T341 455T357 458T376 458H409H436Q461 458 470 454T480 437Q480 430 477 427T445 395Q417 368 396 347L319 271Q319 270 358 217T442 103T494 32Q496 30 496 23",120313:"54 667Q63 694 102 694H127H149Q192 694 199 669Q201 663 201 347T199 25Q190 0 149 0H125L81 1Q61 7 54 28V667",120314:"197 386Q256 468 366 468Q404 468 430 461T471 438T491 413T503 385Q563 469 666 469Q731 469 769 446T814 350Q815 343 815 185Q815 31 813 25Q808 9 796 5T758 0H737L692 1Q672 7 665 28L664 186V206V290Q664 349 655 365T610 381Q581 381 560 370T529 341T515 311T510 291Q509 286 509 157V82Q509 24 501 12T452 0H431L386 1Q366 7 359 28L358 186V206V290Q358 349 349 365T304 381Q275 381 254 370T223 341T209 311T204 291Q203 286 203 157V82Q203 24 195 12T146 0H125L80 1Q60 7 53 28V437Q58 453 80 464H122H142Q167 464 178 460T195 439Q197 434 197 409V386",120315:"197 386Q264 468 350 468Q375 468 390 467T429 460T466 443T492 408T507 351Q508 342 508 185Q508 31 506 25Q498 0 450 0H432H413Q368 0 359 23Q357 31 357 186Q356 345 355 350Q349 369 336 376Q324 381 301 381H298Q269 381 242 362Q217 342 210 316T202 239Q202 229 202 202T203 157V82Q203 24 195 12T146 0H125L80 1Q60 7 53 28V437Q58 453 80 464H122H142Q167 464 178 460T195 439Q197 434 197 409V386",120316:"274 -11Q32 -11 32 225Q32 346 85 406T249 474H266H271Q302 474 325 471T385 458T451 419T498 346Q518 300 518 225Q518 -11 274 -11ZM367 233Q367 322 350 354T270 387Q240 387 222 377T195 344T184 298T182 233Q182 151 198 117T275 83H282Q318 83 339 104Q355 119 361 146T367 233",120317:"125 458H139Q174 458 185 452T202 420L211 426Q245 448 288 458T354 469Q356 469 361 469T369 468Q443 468 481 412Q523 355 523 223Q523 164 509 120T473 51T423 12T371 -7T323 -11Q260 -11 204 33V-65Q204 -80 204 -102T205 -131Q205 -162 200 -175T178 -192Q173 -194 126 -194L81 -193Q61 -187 54 -166V431Q58 447 81 458H125ZM372 230Q372 376 282 376Q247 376 204 352V107L208 103Q213 99 218 95T232 87T251 79T274 76Q323 76 349 116Q372 153 372 230",120318:"226 -11Q37 -11 37 236Q37 294 51 338T86 407T135 445T186 464T233 469H235Q300 469 349 422L359 413V425Q359 452 376 464Q384 469 433 469H455Q498 469 505 444Q507 438 507 137Q507 -163 505 -169Q500 -185 487 -189T450 -194H432H413Q367 -194 358 -171Q356 -163 356 -63V40L348 33Q296 -11 231 -11H226ZM281 375Q188 375 188 228Q188 77 275 77Q322 77 359 120V328Q338 357 324 366T281 375",120319:"54 437Q58 453 81 464H122H147Q186 464 194 439Q196 434 196 405V377L203 387Q245 456 324 468Q325 468 331 468T340 469Q347 469 356 462V360Q350 355 346 354T339 353T326 353T300 347Q260 337 234 311T202 252Q201 247 201 138Q201 122 201 98T202 66Q202 33 197 20T175 2Q170 0 125 0L81 1Q61 7 54 28V437",120320:"37 328Q37 392 75 433T203 474Q254 474 265 473Q319 465 370 442Q378 439 380 432Q380 426 372 384Q364 336 359 333Q358 331 355 331Q348 331 337 341Q282 388 216 388H208Q190 388 180 387T161 377T151 351Q151 333 164 323T224 306L267 297Q314 285 355 246T396 144Q396 17 282 -5Q260 -10 218 -10Q170 -10 124 2T55 26T30 44Q30 48 39 99T49 153Q52 159 60 159Q66 159 70 153Q100 120 133 101T218 82Q231 82 238 83T258 87T277 101T283 126Q283 149 260 160T200 176T153 186Q109 201 73 236T37 328",120321:"225 267Q225 202 226 169T232 115T244 88T265 82Q295 84 318 100T345 116Q352 116 354 110T364 77Q373 46 373 43Q373 28 312 9T190 -10Q160 -10 139 1T107 29T89 77T82 136T80 210V258V371H66H59Q39 371 27 386Q20 394 20 417Q21 432 23 437Q35 458 60 458H65H83V510L84 562Q93 589 131 589H154H174Q216 589 223 564Q225 558 225 508V458H274Q330 458 338 453Q355 441 355 415Q355 388 338 376Q330 371 274 371H225V267",120322:"53 431Q62 459 100 459Q105 459 114 459T127 458H152Q192 458 201 435Q203 427 203 262Q204 86 208 77Q209 74 216 71Q227 66 258 66H264Q334 66 354 140L356 150L357 290Q357 427 359 435Q365 449 377 453T412 458H432H450Q498 458 506 433Q508 427 508 229T506 25Q498 0 451 0H434H418Q386 0 374 7T360 43V58L352 49Q298 -11 199 -11Q135 -9 101 11T56 80Q52 100 52 273L53 431",120323:"26 429T26 435T32 448T44 456Q48 458 85 458H99Q145 458 161 431Q162 429 207 285L251 145L294 284Q333 410 341 430Q351 451 374 456Q379 458 420 458H430Q450 458 457 456T471 443Q473 437 473 435Q473 426 443 325T381 126L350 28Q339 7 316 2Q312 0 250 0Q187 0 183 2Q160 7 149 28L136 68Q124 109 106 166T70 283T39 385",120324:"699 458Q717 447 719 432Q719 426 666 230T610 27Q602 10 588 5T548 0H512H482Q431 0 420 17T384 135Q356 241 352 298V308L351 295Q348 251 322 145T290 28Q279 0 233 0H212H191Q146 0 133 27Q130 33 77 229T24 430Q24 449 44 457Q47 458 79 458Q122 458 126 456Q154 450 163 419L233 153Q241 187 272 304T307 431Q318 458 368 458Q394 458 398 456Q421 451 430 431Q434 423 509 147L547 286Q582 416 588 429Q600 454 624 457Q632 458 647 458H663H699",120325:"92 0Q87 0 77 0T62 -1Q24 -1 24 22Q24 29 33 41T106 136Q185 237 184 238Q184 239 147 284T73 376T33 427Q31 430 31 436Q31 451 45 457Q48 458 96 458H122Q152 458 163 450T208 394L247 345L282 394Q288 403 297 416T309 434T319 444T328 452T338 455T352 458T372 458H393H440Q457 449 457 435Q457 428 450 419T379 328Q308 239 308 237L389 137Q409 112 436 79Q475 31 475 23Q475 -1 436 -1Q432 -1 422 -1T407 0Q360 0 352 3Q343 6 336 16T291 83L247 151L245 148Q243 145 239 139T229 124T218 106T204 84Q167 24 160 15T141 1L92 0",120326:"454 458Q473 446 473 430Q473 426 394 184L311 -68Q291 -119 245 -162T123 -205Q51 -205 46 -190Q44 -187 40 -142T36 -92Q36 -90 36 -88L37 -87Q41 -80 46 -80Q48 -80 73 -92T126 -105Q146 -105 161 -98T185 -76T197 -53T206 -28L215 0L122 212Q29 427 29 435Q29 448 46 457Q49 458 91 458Q93 458 106 458T125 457T140 454T157 446T170 431Q183 410 224 305T266 158Q266 152 266 151Q267 151 268 163Q271 206 302 310T342 432Q354 458 398 458H418H454",120327:"268 376Q250 376 180 375T92 374Q69 374 63 380Q46 390 46 419Q46 428 49 437Q57 451 73 457Q76 458 242 458T413 456Q420 455 427 448Q439 438 439 413Q439 392 433 385Q432 383 318 236T204 88Q235 88 306 89T395 90H399Q408 90 414 89T427 84T438 70T442 45Q442 9 416 2Q411 0 236 0H136Q73 0 62 1T41 12Q31 23 31 47Q31 68 36 77Q37 78 51 97T96 155T153 228L268 376",120328:"28 0L429 694H533L585 350Q596 275 610 182T632 46L638 3V0H530L528 18Q527 25 515 103T503 183H223L135 29L118 1L73 0H28ZM492 254Q492 256 473 398T454 589V610Q433 552 290 301L264 255L378 254H492",120329:"501 363Q557 355 605 316T653 222Q653 148 586 85T403 2Q394 1 240 0Q90 0 90 1L100 46Q109 90 128 177T164 348L238 694H375Q518 693 546 688Q614 674 655 635T696 544Q696 490 648 441T516 368L501 363ZM601 530Q601 568 566 590T479 621Q472 622 394 623H320L297 513Q292 489 286 459T276 415L273 401V399H339H372Q504 399 571 466Q601 498 601 530ZM257 322Q256 320 230 197T203 73Q203 71 289 71Q379 72 387 73Q459 84 507 122T556 210Q556 255 519 283T428 320Q415 322 336 323Q257 323 257 322",120330:"124 266Q124 372 179 473T333 639T544 705Q592 705 635 697T698 679L718 670Q719 669 701 621T681 572L676 576Q670 580 661 586T641 598T614 611T583 620Q558 625 526 625Q406 625 318 516T230 276Q230 238 236 212Q251 148 294 108T412 68Q469 68 508 80T598 123Q608 129 608 128Q606 109 603 87L598 45L573 33Q521 7 486 -1T394 -10Q358 -10 346 -8Q260 5 202 62Q124 145 124 266",120331:"162 348L236 694H385Q535 693 543 692Q600 682 641 654T705 586T737 506T747 425Q747 296 672 187Q625 114 548 62T384 1Q376 0 262 0Q88 0 88 1L98 46Q107 90 126 177T162 348ZM622 533Q575 624 443 624Q434 624 419 624T399 623H321L263 348Q249 283 234 213T212 107L204 72Q204 71 289 71Q374 72 386 74Q501 94 573 193T646 422Q646 487 622 533",120332:"86 2Q88 4 160 346T233 689Q233 691 461 691Q688 691 688 689Q685 686 671 611H495L320 612L319 609Q319 607 297 501L274 397H436Q597 397 597 396L596 391Q595 386 593 376T589 358L581 322L420 321Q258 321 258 320Q209 89 208 87Q208 85 390 85Q417 85 460 85T518 86L572 85Q556 8 554 2V0H86V2",120333:"86 2Q88 4 160 346T233 689Q233 691 453 691T673 689Q670 686 656 611H488L320 612Q314 579 302 523T281 427T272 385Q272 384 419 384H567L551 308H255L223 156Q216 124 207 82T194 20L190 2Q190 0 138 0H86V2",120334:"125 267Q125 375 182 476T337 641T544 705Q598 705 644 693T710 669T730 655L712 609L693 560L692 557L681 567Q618 626 526 626Q447 626 378 573T269 440T229 277Q229 185 276 127T406 68Q422 68 451 71T502 78T524 84L526 93Q528 102 532 119T539 153L553 222Q553 223 495 223Q436 223 436 224Q436 230 444 262L452 299H662V296Q661 290 635 166T607 40Q606 37 576 25T492 1T391 -11Q272 -11 199 66T125 267",120335:"517 2Q518 3 551 161T585 322Q586 323 557 323T422 323H259L190 0H138Q86 0 86 1L96 46Q105 90 124 177T160 348L234 694H337V691Q336 690 306 545T275 399H602L603 403Q603 407 634 551L665 694H768V691Q768 690 695 348T621 2V0H517V2",120336:"161 348L235 694H338V691Q338 690 265 348T191 2V0H139Q87 0 87 1L96 46Q106 90 125 177T161 348",120337:"377 424L435 694H535V691Q534 685 476 412T416 135Q401 74 350 26T210 -22Q165 -22 124 -11T65 9T46 21L54 41Q62 61 70 83T81 109Q82 111 85 106Q86 105 87 103Q93 94 103 84T135 64T185 53Q238 53 272 76T317 142Q317 145 325 182T348 289T377 424",120338:"236 223Q235 222 213 113T188 2V0H138Q88 0 88 1L98 46Q107 90 126 177T162 348L236 694H285Q335 694 335 693L330 671Q326 649 316 603T298 518Q289 477 280 433T266 366L261 343L672 694H729L784 693L465 420L651 0H596L541 1L384 350Q383 351 310 288T236 223",120339:"161 348L235 694H338V691Q338 690 273 385T208 79Q278 80 362 80H516Q502 11 499 2V0H293Q87 0 87 1L96 46Q106 90 125 177T161 348",120340:"375 691Q456 215 459 124V106Q488 177 762 641L793 694H929V691Q929 690 856 348T782 2V0H689V2Q691 4 753 304Q817 604 818 606Q819 611 817 608Q817 607 815 603Q798 559 540 117L484 22H440L397 23L393 42Q393 47 373 169T334 422T315 594V609L250 306Q186 3 185 2Q185 0 138 0Q92 0 92 1L102 46Q111 90 130 177T166 348L240 694H375V691",120341:"311 609Q310 608 246 306T181 2V0H134Q88 0 88 1L98 46Q107 90 126 177T162 348L236 694H382L383 691Q383 688 418 561T493 286T541 97L544 84L545 89Q545 90 553 128T578 246T610 394L674 694H766V691Q766 690 693 348T619 2V0H472L469 13Q468 17 393 293T312 605L311 609",120342:"118 254Q118 366 174 473T324 648T517 716Q627 716 695 638T763 435Q763 321 706 215T555 43T362 -22Q256 -22 187 56T118 254ZM380 58Q452 58 518 116T622 263T661 442Q661 496 646 535T608 594T567 622T534 634Q516 636 496 636Q400 636 313 528T225 264Q225 172 267 115T380 58",120343:"162 348L236 694H378Q522 693 530 692Q604 680 647 635T690 524Q690 474 665 430T612 359Q550 299 465 280Q443 275 343 274H250V271Q250 269 235 201T206 68T192 2V0H140Q88 0 88 1L98 46Q107 90 126 177T162 348ZM594 513Q594 560 562 588T477 622Q470 623 394 623H321L293 487L263 349V347H342H347H375Q530 347 578 449Q594 483 594 513",120344:"118 254Q118 366 174 473T324 648T517 716Q627 716 695 638T763 435Q763 305 693 194T543 36Q547 29 586 -47T625 -125H504L450 -8Q406 -22 363 -22Q256 -22 187 56T118 254ZM661 437Q661 532 616 584T506 636Q428 636 361 578T257 433T220 258Q220 167 264 113T380 58Q390 58 397 58T408 59T413 60T417 61Q417 63 387 127T356 193Q356 194 409 194H462L485 150L508 105Q509 103 532 125T567 161Q661 278 661 437",120345:"162 348L236 694H375H414H445Q507 694 538 690T606 668Q698 623 698 534V528Q698 447 608 377Q582 358 555 345T512 326L497 321L617 0H565L513 1L402 309H255L189 0H138Q88 0 88 1L98 46Q107 90 126 177T162 348ZM603 525Q603 603 499 620Q486 622 403 623H321L297 506Q292 482 285 449T274 402L271 387V385H346Q350 385 363 385T386 384Q548 384 592 479Q603 503 603 525",120346:"161 478Q161 568 242 642T435 716Q527 716 599 673L609 667Q595 633 589 615L571 568Q570 568 564 575T546 592T518 611T475 628T417 635Q351 635 305 596T259 507Q259 465 290 444T372 411T432 396Q473 385 509 343T545 236Q545 140 464 59T270 -22Q155 -22 54 48L92 146Q93 146 101 138T124 117T161 92T216 72T288 63Q360 63 403 109T447 204Q447 220 444 233T435 256T421 273T404 285T385 295T366 301T347 306T331 310T315 314T292 321T265 331T235 346T207 367T183 395T168 431T161 478",120347:"165 608L182 687Q182 688 486 688H790L789 685L781 645L773 609H521L457 306Q393 3 392 2Q392 0 340 0H288V2Q289 5 353 304T417 605V609L291 608H165",120348:"340 -22Q251 -22 191 33T131 177V187Q131 192 131 195T132 205T133 215T136 231T141 253T147 285T156 328T168 384T184 457L235 694H338V691Q338 690 288 451T236 210Q234 194 234 177Q234 138 247 111T280 72T319 54T357 49Q408 49 449 74T510 128Q516 136 521 143T530 158T538 175T545 194T553 220T560 250T569 289T579 336T591 395T606 464L655 694H747V691Q651 243 645 213Q623 149 587 102Q482 -22 340 -22",120349:"220 348L161 694H216Q270 694 270 693L283 613Q334 313 346 215Q359 102 359 96Q359 87 358 84Q388 162 684 657L706 694H753Q799 694 799 693L387 0H333Q279 0 279 1L272 45Q264 89 249 177T220 348",120350:"596 540Q596 562 597 585T599 609Q599 588 436 255Q402 185 362 104L310 0H213V3Q213 6 188 347T161 694H263L265 664Q290 327 293 184Q293 112 289 85Q290 85 290 87Q290 95 301 123T332 194T373 282T419 380T463 469T498 541T517 579L574 694H671V689L674 646Q678 603 682 538T691 401T699 263T703 160Q703 102 700 87Q719 154 930 576L989 694H1076Q1076 693 903 347L730 0H628V4L626 26Q624 48 622 85T616 168T609 267T603 369T598 464T596 540",120351:"14 0Q17 3 184 184T352 367L265 529Q244 567 222 609T188 672L176 692Q176 694 236 694H297L338 612Q387 515 400 489L421 448L645 694H758L708 640Q481 393 456 368Q455 366 500 281T596 104T652 0H531L388 293L128 0H14",120352:"151 692Q151 694 212 694H272L418 362L696 683L705 694H758L809 693Q809 692 630 490T444 280Q442 275 413 139L383 1L333 0Q282 0 282 2Q283 3 312 141L341 278L246 484L151 692",120353:"67 54Q551 615 551 617Q543 618 517 618Q510 618 463 618T376 617Q200 617 200 618T209 657L216 694H459Q702 694 702 692Q702 689 697 667L692 643L207 80H392Q493 81 577 81Q577 70 560 2V0H55V2L67 54",120354:"313 386Q286 386 260 381T217 369T186 355T164 342T155 337Q154 338 159 377T165 418Q251 461 320 461Q322 461 328 461T337 460Q397 460 435 424T473 329Q473 325 473 318T472 308Q432 110 407 2V0H317V2L325 38Q295 21 269 10Q215 -10 156 -10H149Q76 -10 62 69Q61 75 61 90Q61 127 73 150T116 194Q146 215 207 231T348 252H368L373 277Q378 302 378 318Q378 367 339 384Q332 386 313 386ZM150 116Q150 93 171 79T223 65Q259 65 293 85T341 135Q343 140 348 160T353 184Q353 186 342 186Q298 186 231 174T153 134Q150 127 150 116",120355:"302 -11Q266 -11 235 1T190 26L176 38Q170 8 168 2V0H121Q75 0 75 1L84 46Q94 90 113 177T149 348L223 694H267Q312 694 312 693T282 551T251 407Q251 406 256 408T271 415Q347 454 430 454H438Q501 454 528 374Q539 339 539 299Q539 179 466 84T302 -11ZM443 275Q443 317 421 348T346 379Q318 379 296 369Q269 359 238 332L193 118L198 109Q220 65 269 65Q350 65 396 130T443 275",120356:"75 164Q75 226 100 282T165 377T252 437T342 460H347Q447 460 499 417L483 378Q468 339 468 338Q466 338 455 347T424 366T385 378Q355 382 334 382Q262 382 215 318T168 177Q168 120 196 95T259 69H269Q345 69 420 108Q432 114 432 113T427 72L422 32L402 22Q382 12 344 2T259 -11Q214 -11 180 2T126 36T95 81T79 126T75 164",120357:"73 156Q73 224 102 293T184 408T294 455Q375 455 432 413Q438 407 438 410T469 553L499 694H588V691Q588 690 515 348T441 2V0H348V2Q357 29 357 43L352 41Q332 24 288 7T196 -10H190Q178 -10 166 -7T134 8T98 46T75 113Q73 129 73 156ZM419 335Q419 339 412 348T386 368T342 379Q284 379 243 343T184 261T167 168Q167 122 191 94T263 66Q321 66 367 116L374 124L397 229Q419 333 419 335",120358:"248 -11Q170 -11 121 41T71 173Q71 265 133 349T285 454Q305 460 318 460H328Q368 460 399 448Q472 414 472 309Q472 274 464 234L462 219H159Q156 198 156 185Q156 137 179 107T237 68Q246 66 268 66Q345 66 427 113V109Q426 108 422 73T417 37Q417 34 409 29Q329 -11 248 -11ZM401 299Q399 337 376 361T316 385Q291 385 266 371Q220 350 184 289H401V299",120359:"381 443Q381 440 374 407T366 371H315Q263 371 263 369Q262 368 224 186Q215 145 205 97T189 25L184 2V0H94V2L99 25Q104 48 114 96T134 186Q172 368 173 369Q173 371 139 371H106V373L114 410L121 444H155L188 445L191 455L212 551Q232 612 288 658T415 705Q438 705 464 701T494 694Q478 614 477 614L467 618Q457 621 440 624T406 629H400Q333 629 306 579Q301 568 289 507L275 444H328Q381 444 381 443",120360:"113 252Q113 334 177 394T311 454Q332 454 350 451T379 442T398 432T410 424L413 421Q412 423 411 424L409 426Q409 429 434 436T496 449T560 455H568V451Q568 447 567 429T566 394L565 377L553 379Q522 385 479 385Q463 385 456 384L443 383L436 392Q454 357 454 324Q454 243 390 182T249 120Q233 120 219 122T195 128T178 136T167 142L163 145Q149 131 149 105Q149 78 171 72L242 71Q246 71 269 71T303 71T336 68T372 62T403 51T432 32Q461 8 461 -40Q461 -112 383 -159T211 -206Q123 -206 68 -172T12 -86Q12 -55 31 -23T82 32Q90 38 89 39Q89 40 87 44T82 59T80 82Q80 134 126 189Q113 228 113 252ZM369 319Q369 354 350 368T304 383Q274 383 252 369T218 333T202 291T197 255Q197 221 217 206T263 191Q317 191 343 233T369 319ZM373 -59Q373 -41 362 -30T330 -13T291 -7T247 -5H216Q167 -5 158 -6T139 -12Q123 -20 110 -38T97 -76Q97 -102 133 -118T221 -134Q242 -134 267 -130T316 -118T357 -94T373 -59",120361:"416 321Q416 379 336 379Q276 379 237 302Q226 276 209 202T180 66T166 2V0H119Q73 0 73 1L82 46Q92 90 111 177T147 348L221 694H265Q310 694 310 693T279 544L247 395Q325 455 403 455Q513 455 513 358Q513 334 508 309Q507 304 476 156T443 2V0H350V2L357 34Q364 65 373 110T392 200T409 281T416 321",120362:"189 578Q190 579 199 627T211 678V680H315V678Q313 675 304 627T293 578V576H189V578ZM168 442T168 443T213 444T258 443T212 225T164 2V0H74V2Q75 7 121 224",120363:"211 577L233 680H284Q336 680 336 679L315 576H263Q211 576 211 577ZM19 -204Q-12 -204 -40 -196T-82 -179T-96 -170Q-96 -168 -78 -132L-61 -95L-54 -103Q-32 -126 3 -126Q26 -126 50 -116Q76 -101 83 -85Q84 -79 140 180T196 443Q196 444 241 444T286 443Q286 441 232 186T175 -75Q163 -120 122 -162T19 -204",120364:"150 348L224 694H310V691Q218 259 218 258L232 270Q245 281 274 306T327 351L435 444H489L542 443Q542 442 443 357L344 272L471 1L422 0H372L366 14Q359 27 347 54T323 105L273 210Q271 210 231 174L190 139L160 0H118Q76 0 76 1L86 46Q95 90 114 177T150 348",120365:"148 348L222 694H311V691Q311 690 238 348T164 2V0H119Q74 0 74 1L84 46Q93 90 112 177T148 348",120366:"416 321Q416 379 336 379Q276 379 237 302Q226 276 209 202T180 66T166 2V0H119Q73 0 73 2L121 226L169 449Q169 450 213 450H256L249 421Q248 417 247 412T246 404T245 398T244 394T244 392Q250 398 261 407T307 433T379 454H392H400Q451 454 472 439Q482 434 489 427T500 412T506 399T510 388L511 384Q511 384 517 388Q563 431 620 446Q648 455 680 455Q790 455 790 358Q790 334 785 309Q784 304 753 156T720 2V0H627V2L634 34Q641 65 650 110T669 200T686 281T693 321Q693 379 613 379Q553 379 514 302Q503 276 486 202T457 66T443 2V0H350V2L357 34Q364 65 373 110T392 200T409 281T416 321",120367:"416 321Q416 379 336 379Q276 379 237 302Q226 276 209 202T180 66T166 2V0H119Q73 0 73 2L121 226L169 449Q169 450 213 450H256L249 421Q248 417 247 412T246 404T245 398T244 394T244 392Q250 398 261 407T307 433T379 454H392Q416 454 433 452T470 440T502 411T513 358Q513 334 508 309Q507 304 476 156T443 2V0H350V2L357 34Q364 65 373 110T392 200T409 281T416 321",120368:"69 169Q69 238 107 306T211 417T348 461Q419 461 471 412T523 271Q523 161 438 75T247 -11Q170 -11 120 39T69 169ZM432 279Q432 338 401 361T333 385Q280 385 240 352T182 273T164 178Q164 119 195 94T265 68Q306 68 344 94Q380 115 406 169T432 279",120369:"259 443Q251 405 251 404L260 409Q269 414 286 421T324 436T375 449T434 455Q482 455 510 417T538 303Q538 169 463 79T302 -11Q226 -11 176 39V36Q175 35 151 -80L127 -193Q127 -194 80 -194H34V-191L102 127L169 443Q169 444 214 444T259 443ZM269 65Q332 65 386 124T441 262Q441 304 422 334T370 373Q356 375 339 375Q293 375 238 331L193 118Q200 103 206 94T229 75T269 65",120370:"72 149Q72 272 146 363T304 455Q340 455 371 442T409 423T436 398Q438 411 442 427L448 455H538L400 -193Q400 -194 354 -194Q307 -194 307 -193L356 37V41Q355 41 350 38T332 27T302 13Q247 -10 191 -10H179Q138 -10 105 32T72 149ZM414 298Q402 376 341 376Q277 376 223 317T169 182Q169 121 198 93T265 65Q319 65 365 111L377 123L414 298",120371:"240 377L244 380Q248 384 255 390T272 404T296 419T325 434T361 446T401 454Q403 454 408 454T416 455H424L421 442Q419 435 413 405T406 373Q351 373 294 336T216 237Q213 231 201 173T178 60T164 2V0H119Q74 0 74 2L122 226L170 449Q170 450 213 450H255L247 414Q246 409 245 403T243 393T241 385T240 379T240 377",120372:"99 299Q99 318 106 341T133 393T195 441T298 461Q336 461 370 453T420 437L436 429Q436 428 421 389T405 350Q356 386 273 386H265Q248 386 237 384T211 371T191 337Q189 329 189 326Q189 320 190 315T194 306T200 299T209 293T218 289T228 285T239 283T251 281T263 278L270 276Q278 275 283 274T298 270T316 264T333 255T351 243T367 228T380 209T388 186T391 157Q391 96 341 43T193 -11Q171 -11 150 -8T114 -1T84 9T61 19T45 28T35 33Q35 36 67 116L76 109Q132 67 211 67Q258 67 279 88T301 135Q301 159 280 170T224 187T180 197Q141 212 120 239T99 299",120373:"245 68Q267 68 289 75T322 90L334 98Q338 94 338 28V24L324 19Q268 -4 218 -8Q198 -11 177 -11Q118 -11 118 75Q118 98 123 127Q125 137 149 251T174 369Q174 371 135 371H97V373L105 410L112 444H152L192 445L200 478Q208 512 213 541L219 571H261Q303 571 303 570T290 506L276 444H343Q410 444 410 443Q410 440 403 407T395 371H328Q261 371 261 369Q211 152 211 118Q211 68 245 68",120374:"166 -10H160Q146 -10 137 -8T115 0T97 22T90 63Q90 79 130 268L167 443Q167 444 214 444Q260 444 260 443L224 273Q187 97 187 86Q187 70 202 65T250 59Q303 59 336 83T379 139Q380 143 412 292T444 443Q444 444 491 444Q537 444 537 443T491 225T443 2V0H353V2L361 38L352 34Q344 29 326 22T286 7T232 -5T166 -10",120375:"177 6L108 442V444H201V442Q202 441 213 371T235 213T246 90V65Q259 117 429 406L450 444H495Q540 444 540 443Q539 442 411 221L282 1L230 0H178L177 6",120376:"148 5Q147 8 128 222T109 440L108 444H199V442Q200 441 204 385T214 253T219 140Q219 108 215 76Q215 72 214 67V65L215 66Q219 95 278 221L390 444H475V437Q497 203 497 121Q497 90 494 70Q494 67 494 67L496 73Q520 143 654 405L674 444H718Q762 444 762 443L534 1L483 0H432V5Q429 28 422 126T413 283Q413 343 416 370L417 378Q416 377 416 376Q401 303 248 12L242 0H148V5",120377:"317 229Q453 9 460 0H409L359 1L312 88Q266 176 265 176Q265 177 254 165T223 132T182 88L100 0H1L15 14Q29 28 61 59T118 115L236 229L226 244Q108 433 100 444H201L290 294L438 444H537L528 435Q526 432 512 418T468 376T418 327L317 229",120378:"11 -117L20 -120Q28 -124 46 -128T84 -132H100Q124 -122 149 -85Q200 -6 200 1Q200 17 155 204T109 442Q109 444 156 444H203Q203 443 208 419T221 357T235 277T248 190T254 114Q254 81 250 67V65Q251 65 251 67Q256 94 297 177Q339 259 422 397L450 444H540Q540 443 386 186T219 -90Q179 -153 145 -179T73 -205Q52 -205 34 -202Q29 -202 21 -201T7 -198L1 -197Q1 -196 6 -157T11 -117",120379:"129 408L136 444H315Q494 444 494 443Q494 441 489 419L484 396L164 76L291 77Q418 77 418 76T411 41T402 2V0H215Q28 0 28 2L34 27L38 50L360 371L240 370Q121 370 121 371Q124 388 129 408",120432:"191 76Q212 75 220 68T229 38Q229 10 208 1H129H80Q48 1 38 7T28 38Q28 51 29 57T40 69T70 76Q89 76 89 78Q90 79 117 205T173 461T205 599Q212 623 250 623H262H273Q312 623 319 599Q322 591 350 461T406 205T435 78Q435 76 454 76H458Q484 76 493 59Q496 53 496 38Q496 11 478 3Q474 1 395 1H317Q295 8 295 38Q295 65 311 73Q316 75 333 76L348 77V78Q348 80 341 112L334 143H190L183 112Q176 80 176 78Q175 76 178 76Q180 76 191 76ZM318 221Q313 238 288 366T263 519Q263 526 262 527Q261 527 261 520Q261 493 236 365T206 221Q206 219 262 219T318 221",120433:"39 1Q17 10 17 32V38V46Q17 65 34 73Q40 76 61 76H84V535H61H54Q27 535 19 553Q17 557 17 573Q17 583 17 587T23 599T39 610Q40 611 179 611Q320 610 332 607Q332 607 339 605Q394 591 427 547T461 454Q461 413 436 378T369 325L358 320Q405 311 443 270T482 169Q482 112 445 64T345 3L334 1H39ZM309 533Q302 535 234 535H168V356H230Q284 357 296 358T323 368Q346 380 361 402T377 452Q377 482 358 505T309 533ZM398 176Q396 218 371 246T315 279Q310 280 237 280H168V76H239Q316 77 327 81Q329 82 334 84Q398 107 398 176",120434:"40 305Q40 437 110 529T281 622Q315 622 343 611T387 589T404 578Q409 585 415 596T425 611T435 618T452 622Q472 622 478 609T485 566Q485 559 485 540T484 508V460Q484 413 478 403T442 393Q417 393 409 402Q400 409 400 420Q400 428 395 445T380 487T347 528T295 546Q235 546 180 483T124 306Q124 245 141 197T186 121T241 80T296 66Q346 66 373 103T400 178Q400 209 435 209H442H450Q484 209 484 172Q480 96 421 43T281 -11Q177 -11 109 84T40 305",120435:"38 1Q16 8 16 38Q16 62 32 73Q39 76 58 76H78V535H58Q40 535 32 538Q16 548 16 573Q16 587 17 591Q23 604 34 607T83 611H166H176Q188 611 209 611T239 612Q299 612 337 597T415 530Q485 438 485 300Q485 180 431 100T301 3L291 1H38ZM400 301Q400 363 385 410T346 482T303 519T267 534Q261 535 210 535H162V76H214L267 77Q323 89 361 148T400 301",120436:"374 271Q374 241 367 232T332 223Q307 223 299 231Q290 240 290 263V279H173V76H418V118V144Q418 167 426 176T460 186Q491 186 500 166Q502 161 502 93V52Q502 25 499 17T480 1H41Q19 9 19 32V38Q19 63 36 73Q42 76 65 76H89V535H65H55Q44 535 38 537T25 548T19 573Q19 602 41 610H47Q53 610 63 610T88 610T121 610T160 611T204 611T251 611H458Q460 609 465 606T471 602T475 598T478 593T479 586T480 576T480 562V526V488Q480 452 462 444Q458 442 438 442Q413 442 405 450Q398 457 397 463T396 501V535H173V355H290V371Q290 394 299 403T332 412Q363 412 372 392Q374 387 374 317V271",120437:"384 260Q384 230 377 221T342 212Q317 212 309 220Q300 229 300 252V268H179V76H249Q264 67 267 61T271 38Q271 10 249 1H44Q22 9 22 32V38Q22 63 39 73Q45 76 69 76H95V535H69H59Q42 535 32 542T22 573Q22 602 44 610H50Q56 610 66 610T91 610T125 610T164 611T208 611T257 611H468Q470 609 475 606T481 602T485 598T488 593T489 586T490 576T490 562V526V488Q490 452 472 444Q468 442 448 442Q423 442 415 450Q408 457 407 463T406 501V535H179V344H300V360Q300 383 309 392T342 401Q373 401 382 381Q384 376 384 306V260",120438:"38 306Q38 447 105 534T261 622Q280 622 298 618T329 608T350 596T366 585L371 581Q373 581 377 591T390 612T417 622Q437 622 443 609T450 566Q450 559 450 540T449 508V460Q449 413 443 403T407 393Q392 393 386 394T373 402T364 426Q360 472 335 509T271 546Q214 546 168 477T121 308Q121 210 164 138T271 65Q293 65 310 78T337 109T352 147T360 180T362 195Q362 196 333 196L304 197Q282 204 282 227V234Q282 247 282 251T288 261T304 272H474Q488 263 492 256T496 234Q496 211 479 199Q475 197 461 196H449V21Q441 6 434 3T412 -1H407H402Q385 -1 379 3T364 28Q350 14 322 2T260 -11Q173 -11 106 76T38 306",120439:"16 571Q16 597 27 604T74 611H125H208Q223 602 226 596T230 573Q230 559 227 551T217 540T204 536T186 535H165V356H359V535H338H333Q306 535 297 552Q295 556 295 573Q295 586 295 590T301 600T317 611H486Q501 602 504 596T508 573Q508 559 505 551T495 540T482 536T464 535H443V76H464H470Q482 76 489 75T502 64T508 38Q508 10 486 1H317Q306 5 301 11T296 21T295 38V44Q295 66 311 73Q318 76 338 76H359V280H165V76H186H192Q204 76 211 75T224 64T230 38Q230 10 208 1H39Q28 5 23 11T18 21T17 38V44Q17 66 33 73Q40 76 60 76H81V535H60Q45 535 38 536T24 545T16 571",120440:"400 76Q431 76 441 69T452 38Q452 29 452 26T450 18T443 9T430 1H95Q84 6 79 12T73 23T72 38Q72 65 90 73Q96 76 157 76H220V535H157H124Q93 535 83 542T72 573Q72 603 93 610Q97 611 264 611H430Q432 609 436 607T444 602T449 594Q452 588 452 573Q452 546 434 538Q428 535 367 535H304V76H367H400",120441:"202 543T202 573T224 610H228Q231 610 237 610T251 610T269 610T291 611T315 611T342 611H457Q471 602 475 595T479 573Q479 549 462 538Q454 535 432 535H408V328Q408 159 408 133T402 93Q386 48 340 19T229 -11Q158 -11 108 16T57 100Q57 129 73 141T108 154Q128 154 143 140T159 102Q159 93 155 79Q188 65 228 65H230Q290 65 318 106Q323 115 323 139T324 329V535H274L224 536Q202 543 202 573",120442:"18 549T18 573T29 604T70 611H118H193Q207 603 210 596T214 573Q214 549 198 538Q191 535 172 535H152V421Q152 344 152 326T153 309L242 422L329 534Q327 535 322 536T314 538T308 542T303 548T300 558T298 573Q298 600 316 608Q322 611 392 611H463Q477 602 481 595T485 573Q485 535 446 535H441H420L281 357L436 77L454 76Q473 75 478 73Q495 62 495 38Q495 10 473 1H345Q334 5 329 11T324 21T323 38Q323 51 324 56T332 68T355 77L233 296L152 192V76H172Q191 76 198 73Q214 63 214 38Q214 9 193 1H41Q18 8 18 38Q18 61 35 73Q42 76 61 76H81V535H61Q42 535 35 538Q18 549 18 573",120443:"27 594Q34 605 43 608T84 611H154H213Q258 611 269 605T281 573Q281 546 263 538Q257 535 222 535H185V76H404V118V145Q404 168 411 177T446 186H453Q478 186 486 167Q488 161 488 93V50Q488 24 485 17T466 1L258 0H147H99Q47 0 36 6T25 38Q25 59 35 69Q44 76 76 76H101V535H76H64Q36 535 27 552Q25 557 25 573T27 594",120444:"50 535Q37 536 31 537T18 547T12 573Q12 598 22 604T62 611H91H121Q147 611 158 607T178 587Q183 579 222 446T261 293Q261 289 262 288Q263 288 263 292Q263 311 298 434T346 588Q353 603 365 607T402 611H435H450Q488 611 500 605T512 573Q512 556 506 547T493 537T474 535H459V76H474Q487 75 493 74T505 64T512 38Q512 11 494 3Q490 1 424 1H386Q355 1 345 7T335 38Q335 55 341 64T354 74T373 76H388V302Q388 512 387 519Q382 482 346 359T304 228Q292 204 262 204T220 228Q215 237 179 359T137 519Q136 512 136 302V76H151Q164 75 170 74T182 64T189 38Q189 11 171 3Q167 1 101 1H63Q32 1 22 7T12 38Q12 55 18 64T31 74T50 76H65V535H50",120445:"20 571Q20 598 30 604T73 611H105H136Q152 611 160 611T177 607T189 601T198 587T206 568T217 537T231 497Q354 142 365 95L368 84V535H347H342Q314 535 306 552Q304 556 304 573Q304 586 304 590T310 600T326 611H482Q497 602 500 596T504 573Q504 559 501 551T491 540T478 536T460 535H439V25Q432 7 424 4T389 0H374Q334 0 322 31L293 115Q171 468 159 517L156 528V76H177H183Q195 76 202 75T215 64T221 38Q221 10 199 1H43Q32 5 27 11T22 21T21 38V44Q21 66 37 73Q44 76 64 76H85V535H64Q49 535 42 536T28 545T20 571",120446:"102 588Q140 621 240 621Q323 621 335 620Q393 613 422 588Q450 560 459 493T468 306Q468 185 460 118T422 23Q382 -10 289 -10H262H235Q142 -10 102 23Q74 50 65 118T56 306Q56 427 64 494T102 588ZM363 513Q357 523 347 530T324 540T302 544T280 546H268Q192 546 167 521Q150 501 145 452T140 300Q140 235 142 197T151 130T172 89T207 71T262 65Q317 65 341 81T374 144T384 300Q384 474 363 513",120447:"41 1Q19 9 19 32V38Q19 63 36 73Q42 76 65 76H89V535H65H55Q38 535 29 543T19 576Q19 603 41 610H49Q57 610 70 610T100 610T136 611T175 611Q190 611 216 611T255 612Q321 612 363 598T441 537Q480 486 480 427V421Q480 354 447 311T378 251Q339 230 275 230H239H173V76H197Q220 76 227 73Q244 62 244 38Q244 10 222 1H41ZM396 421Q396 461 369 491T300 533Q294 534 233 535H173V306H233Q294 307 300 308Q345 319 370 352T396 421",120448:"56 306Q56 380 58 426T68 510T87 568T120 600T170 617T240 621Q323 621 335 620Q393 613 422 588Q450 560 459 493T468 306Q468 124 447 66Q433 23 394 6L424 -53Q454 -112 454 -118Q454 -128 441 -138H377Q367 -135 363 -129T333 -69L304 -11H254Q205 -10 180 -8T128 6T91 36T70 92T58 178T56 306ZM227 151Q227 171 262 171H276H281Q292 171 296 171T305 170T313 165T317 158T323 145T332 127L353 88Q356 88 361 95T372 131T382 202Q384 228 384 306Q384 452 371 492T304 544Q296 545 251 545Q230 545 215 543T188 534T169 520T155 497T147 466T143 423T141 371T140 306Q140 248 141 217T146 154T157 109T178 83T212 68T262 65H266L264 70Q261 75 256 85T247 105Q227 145 227 151",120449:"16 571Q16 598 27 605T76 612Q84 612 108 612T148 611Q268 611 294 605Q346 592 389 550T432 440Q432 394 410 359Q393 329 366 310L358 303Q387 273 399 239Q405 219 405 178T408 106T421 68Q426 65 428 65Q433 65 435 74T438 96T441 112Q450 130 480 130H485Q519 130 522 100Q522 79 516 56T488 11T434 -11Q421 -11 408 -8T377 5T344 37T324 93Q322 101 322 154L321 209Q304 257 257 267Q252 268 207 268H165V76H186H192Q204 76 211 75T224 64T230 38Q230 10 208 1H39Q28 5 23 11T18 21T17 38V44Q17 66 33 73Q40 76 60 76H81V535H60Q45 535 38 536T24 545T16 571ZM348 440Q348 478 321 502T260 532Q252 534 208 535H165V344H208Q212 344 223 344T239 345T252 346T266 348T278 351T293 358Q348 387 348 440",120450:"52 454Q52 524 107 572T229 621Q266 621 274 620Q326 610 360 588L371 581Q377 594 379 598T386 610T397 619T412 622Q433 622 439 610T446 570Q446 563 446 545T445 515V479Q445 441 444 432T436 417Q428 408 403 408T370 417Q361 424 361 434Q361 439 360 448T351 476T331 509T295 535T238 546Q194 546 163 522T132 458Q132 435 148 412Q155 401 166 393T192 380T218 371T247 364T270 359Q341 342 349 339Q389 325 418 296T461 229Q472 201 472 164Q469 92 417 41T287 -11Q240 -11 200 -1T143 19L126 29Q117 6 109 -2Q100 -11 84 -11Q64 -11 58 1T51 42Q51 49 51 66T52 95V135Q52 173 53 180T61 194Q70 203 95 203Q119 203 127 194Q136 186 136 168Q143 66 284 66H290Q325 66 350 85Q391 115 391 165Q391 204 369 228T322 260Q320 260 255 275T185 293Q123 309 88 355T52 454",120451:"129 38Q129 51 129 55T135 65T151 76H220V535H110V501Q110 470 109 464T101 450Q93 442 68 442H60Q37 442 28 461Q26 466 26 527L27 589Q36 607 49 610H55Q61 610 72 610T97 610T131 610T170 611T215 611T264 611H476Q478 609 483 606T489 602T493 598T496 593T497 586T498 576T498 562V526V488Q498 452 480 444Q476 442 456 442Q431 442 423 450Q416 457 415 463T414 501V535H304V76H374Q389 67 392 61T396 38Q396 10 374 1H151Q140 5 135 11T130 21T129 38",120452:"-3 573Q-3 597 8 604T50 612Q57 612 77 612T111 611H200Q214 602 218 595T222 573Q222 549 205 538Q198 535 175 535H151V359Q151 333 151 291Q152 177 156 162Q157 160 157 159Q165 123 193 95T262 66Q303 66 330 94T367 159Q371 175 371 191T373 359V535H349H339Q328 535 322 537T309 548T303 573T306 595T325 611H506Q520 602 524 595T528 573Q528 549 511 538Q504 535 481 535H457V364Q457 189 456 182Q448 101 394 45T262 -11Q189 -11 132 43T68 182Q67 189 67 364V535H43H33Q22 535 16 537T3 548T-3 573",120453:"19 578Q19 585 20 590T23 598T29 604T38 608T48 610T62 611T78 612T97 611T119 611H195Q210 602 213 596T217 573Q217 561 216 555T206 542T179 535H164Q166 529 188 435T235 231T261 94L262 84V88Q263 91 263 94Q265 121 289 231T336 438L360 535H345Q308 535 308 566V573Q308 586 308 590T314 600T330 611H484Q499 602 502 595T505 573Q505 560 504 554T493 541T465 535H447L384 278Q321 19 319 14Q309 -7 278 -7H262H246Q215 -7 205 14Q203 19 140 278L78 535H59Q45 535 38 536T25 547T19 573V578",120454:"459 611Q491 611 501 605T512 573Q512 538 482 535H474L439 276Q406 26 402 11Q398 2 389 -3Q387 -3 386 -4L380 -7H359H349Q324 -7 313 13Q307 29 285 139T263 275Q263 283 262 283Q261 282 261 274Q261 248 239 137T211 13Q200 -7 175 -7H165H144Q136 -3 127 3Q121 10 117 36T85 276L50 535H42Q26 536 19 545T12 564V573Q12 603 33 610Q37 611 101 611H134Q165 611 175 604T186 573Q186 563 186 559T182 547T169 538T143 535H122V531Q124 517 133 446T155 266T172 96V84L173 102Q176 157 192 243T215 346Q227 367 259 367H262H265Q297 367 309 346Q316 329 332 243T351 102L352 84V96Q356 161 368 266T390 444T402 531V535H381Q366 535 359 536T345 547T338 573Q338 600 356 608Q362 611 425 611H459",120455:"39 571Q39 597 49 604T93 611H141H218Q233 602 236 595T239 573Q239 538 210 535Q202 535 202 534T215 507T243 454L257 428L307 535H298Q266 538 266 573Q266 584 267 588T273 598T289 611H366H401Q442 611 454 605T466 573Q466 546 448 538Q442 535 421 535H398L299 327Q299 323 362 201L426 77L449 76Q467 76 475 75T489 65T495 38Q495 11 477 3Q473 1 395 1H317Q295 8 295 38Q295 73 325 76L334 77Q333 78 314 117T276 196L257 235L239 196Q221 157 204 118T186 77Q190 76 196 76Q211 74 218 67T227 55T228 38Q228 28 227 24T221 13T206 1H50Q28 9 28 32V38Q28 63 45 73Q51 76 73 76H96L214 324Q215 327 162 431L108 535H85H79Q67 535 60 536T46 546T39 571",120456:"20 573Q20 597 30 604T72 611H121H198Q212 602 216 595T220 573Q220 568 219 563T217 555T214 549T211 544T207 541T203 538T198 537T194 536T190 536L188 535Q179 535 179 534L188 516Q196 497 208 470T232 415T252 363T261 332Q261 329 262 329T263 332Q263 354 333 508L345 534Q345 535 336 535Q305 538 305 567V573Q305 589 308 595T327 611H483Q505 598 505 573Q505 549 488 538Q481 535 460 535H438L304 245V76H325H331Q343 76 350 75T363 64T369 38Q369 10 347 1H178Q167 5 162 11T157 21T156 38V44Q156 66 172 73Q180 76 199 76H220V245L86 535H64Q44 535 36 538Q20 548 20 573",120457:"71 1Q60 5 55 11T49 23T48 39V46Q48 56 58 73T131 183Q171 242 197 282L366 535H144V501Q144 470 143 464T135 450Q127 442 102 442H94Q71 442 62 461Q60 466 60 527L61 589Q70 607 83 610H88Q93 610 102 610T124 610T154 610T188 611T227 611T270 611H454Q456 609 461 606T467 601T471 597T474 591T475 584T476 572V565Q476 555 466 538T393 428Q353 369 327 329L158 76H397V120V146Q397 169 405 179T439 189Q470 189 479 169Q481 164 481 95V48Q481 24 478 16T459 1H71",120458:"126 306Q105 306 90 321T74 359Q74 439 211 439Q268 439 276 438Q343 426 383 390T430 306Q431 301 431 190V81Q446 79 465 78T492 76T509 72T521 60T524 38Q524 11 506 3Q502 1 466 1Q426 1 406 5T379 14T355 36L345 30Q284 -6 205 -6Q135 -6 92 39T48 141Q48 182 79 212T158 256T252 278T342 285H347V290Q347 315 325 335T267 362Q258 363 224 363Q189 363 185 362H179L178 358Q178 353 178 352T176 345T174 337T170 330T165 322T158 316T150 311T139 308T126 306ZM132 140Q132 115 157 93T224 70Q269 70 302 87T344 133Q346 139 347 175V211H339Q256 209 194 190T132 140",120459:"4 573Q4 596 15 603T52 611H90H124Q146 611 155 608T171 591Q173 586 173 491V396L182 402Q217 424 256 431Q280 437 309 437Q376 437 434 379T492 217Q492 162 473 118T422 47T358 8T293 -6Q229 -6 174 38Q171 13 163 7T135 1H131H122Q99 1 90 23L89 279V535H58L27 536Q4 543 4 573ZM409 215Q409 269 377 315T283 361Q255 361 224 344T177 297L173 290V167Q189 124 213 97T278 70Q330 70 369 111T409 215",120460:"291 -6Q196 -6 131 60T66 216Q66 296 119 361Q154 403 200 421T273 439Q275 440 293 440H313Q400 440 433 409Q454 388 454 359Q454 335 439 321T402 306Q380 306 365 321T350 357V362L340 363Q339 363 326 363T303 364Q280 364 266 362Q217 352 184 313T151 215Q151 153 199 112T313 70Q341 70 357 85T381 118T394 140Q402 146 424 146Q443 146 447 144Q466 137 466 117Q466 106 457 88T429 47T374 10T291 -6",120461:"266 573Q266 596 277 603T314 611H352H385Q411 611 419 607T435 586V76H498Q512 67 516 60T520 38Q520 9 498 1H436Q429 1 417 1T398 0Q375 0 363 7T351 34V43L342 36Q288 -6 223 -6Q143 -6 87 58T31 216Q31 307 88 372T230 437Q292 437 342 405L351 399V535H320L289 536Q266 543 266 573ZM351 290Q347 302 337 316T302 346T244 361Q193 361 154 319T115 215Q115 152 152 111T235 70Q314 70 351 170V290",120462:"48 217Q48 295 100 361T248 439L258 440Q268 440 274 440Q329 438 369 416T428 359T456 292T464 228Q464 215 461 208T454 198T442 190L288 189H135L138 179Q153 132 199 102T303 71Q336 71 353 86T380 120T398 143Q404 146 422 146Q453 146 462 126Q464 120 464 116Q464 84 416 39T285 -6Q187 -6 118 59T48 217ZM377 264Q371 291 365 306T341 338T294 362Q288 363 264 363Q225 363 190 336T139 264H377",120463:"43 395Q44 405 44 408T47 416T53 423T66 431H176V461Q176 500 182 518Q201 570 252 593T353 617Q399 614 418 593T437 548Q437 528 424 514T387 499Q365 499 353 511T338 537V541H328Q275 536 261 494Q260 490 260 460V431H327Q334 431 346 431T364 432Q392 432 404 425T416 393T405 362T365 355H327H260V76H319Q375 76 388 71T401 38Q401 27 400 23T395 12T379 1H58Q47 6 42 12T36 23T35 38Q35 65 53 73Q59 76 117 76H176V355H121H93Q64 355 54 362T43 395",120464:"60 274Q60 337 107 386T233 436Q278 436 316 417L329 410L338 416Q384 442 427 442T489 423T509 381T494 345T460 332Q449 332 440 338Q432 341 427 348T419 360T415 365Q414 364 410 364L383 355Q406 320 406 274Q406 211 358 162T233 112Q189 112 155 128L146 133Q142 125 142 115Q142 99 150 85T175 71Q182 72 187 70Q188 70 195 70T218 70T254 69Q259 69 275 69T297 69T318 68T340 66T361 62T384 57T405 49T428 38Q495 -1 495 -76Q495 -143 427 -186T262 -229Q161 -229 94 -185T29 -73Q30 -60 33 -48T39 -26T47 -8T57 8T67 20T77 30T86 38L91 43Q91 44 86 53T75 80T70 117Q70 142 89 183L83 194Q60 232 60 274ZM321 274Q321 312 296 337T230 362Q197 362 171 338T145 274Q145 235 170 211T233 187Q273 187 297 212T321 274ZM422 -78Q422 -54 408 -38T366 -15T315 -6T255 -4H200Q198 -4 193 -4T183 -3Q148 -3 125 -26T102 -78Q102 -110 151 -132T261 -154Q321 -154 371 -132T422 -78",120465:"4 573Q4 596 15 603T52 611H90H124Q146 611 155 608T171 591Q173 586 173 489Q173 394 175 394L186 402Q197 410 219 420T269 434Q278 436 306 436Q343 436 371 423Q411 402 423 365T436 265Q436 257 436 239T435 211V198V76H498Q512 67 516 60T520 38Q520 9 498 1H308Q286 10 286 32V38V46Q286 65 303 73Q309 76 329 76H351V188Q351 204 351 230T352 266Q352 321 341 341T288 361Q253 361 222 341T176 274L174 264L173 170V76H236Q250 67 254 60T258 38Q258 9 236 1H27Q4 8 4 38Q4 53 8 60T27 76H89V535H58L27 536Q4 543 4 573",120466:"202 538T202 559T218 596T260 612Q283 612 300 597T317 560Q317 538 300 523T260 507Q235 507 219 522ZM411 76Q441 76 451 69T462 38Q462 29 462 26T460 18T453 9T440 1H94Q72 8 72 33V38Q72 46 72 49T74 58T81 68T94 76H233V355H167L102 356Q80 363 80 393Q80 418 91 425T138 432Q145 432 165 432T200 431H295Q297 429 303 425T310 420T314 415T317 404T317 389T318 363Q318 354 318 314T317 241V76H378H411",120467:"261 559Q261 580 277 596T319 612Q342 612 359 597T376 560T360 523T320 507Q296 507 279 523T261 559ZM75 -91T100 -91T138 -107T152 -144V-150L160 -151H193H203Q241 -151 267 -121Q284 -97 288 -73T292 23V151V355H218L145 356Q123 365 123 387V393Q123 422 145 430H148Q151 430 156 430T169 430T185 430T205 431T227 431T251 431H354Q356 430 360 427T365 424T369 420T372 416T373 410T375 402T376 391T377 376T377 356Q377 345 377 286T376 176Q376 -67 371 -88Q362 -123 342 -151T299 -194Q254 -228 180 -228Q84 -226 56 -177Q49 -162 48 -148Q48 -122 61 -107",120468:"13 42Q13 63 23 69T69 76H102V535H69H54Q34 535 24 542T13 573Q13 588 15 593Q22 605 29 608T56 611H95Q113 611 122 611T140 610T152 609T159 607T163 603T167 597T173 589V413L174 237L295 355H275Q260 355 253 356T239 367T232 393Q232 419 243 425T304 431H359H464Q479 422 482 415T485 393Q485 364 464 356L431 355H398L293 254L427 76H486Q501 67 504 60T507 38Q507 28 507 24T501 12T486 1H314Q292 8 292 38Q292 62 308 73Q312 75 326 76L338 77L290 140Q279 154 267 171T248 196L242 204L207 171L173 139V76H206H221Q241 76 251 69T262 38Q262 11 244 3Q240 1 138 1Q123 1 100 1T70 0Q32 0 23 7T13 42",120469:"51 573Q51 602 73 610H76Q79 610 84 610T97 610T113 610T133 611T155 611T179 611H282Q301 598 304 586V76H452Q466 67 470 60T474 38Q474 10 452 1H73Q51 9 51 32V38Q51 54 54 60T73 76H220V535H146L73 536Q51 545 51 567V573",120470:"133 76Q156 74 164 67T172 38Q172 9 151 1H11Q-12 8 -12 38Q-12 61 5 73Q10 75 28 76H45V355H28Q10 356 5 358Q-12 370 -12 393Q-12 419 11 431H52H70Q91 431 100 427T116 405Q163 436 200 436Q255 436 281 390L285 394Q289 398 292 400T301 407T314 415T329 423T346 429T366 434T389 436H392Q425 436 448 411Q469 390 474 360T480 268V232V203V76H497Q520 74 528 67T536 38Q536 9 515 1H396Q374 9 374 32V38Q374 73 402 76H409V191V242Q409 317 404 339T375 361Q343 361 323 332T299 264Q298 258 298 165V76H315Q338 74 346 67T354 38Q354 9 333 1H214Q192 9 192 32V38Q192 73 220 76H227V191V242Q227 317 222 339T193 361Q161 361 141 332T117 264Q116 258 116 165V76H133",120471:"89 431Q94 431 105 431T122 432Q173 432 173 399Q173 394 175 394Q176 394 190 404T233 425T298 436Q343 436 371 423Q411 402 423 365T436 265Q436 257 436 239T435 211V198V76H498Q512 67 516 60T520 38Q520 9 498 1H308Q286 9 286 32V38V45Q286 65 303 73Q309 76 329 76H351V188Q351 204 351 230T352 266Q352 321 341 341T288 361Q253 361 222 341T176 274L174 264L173 170V76H236Q250 67 254 60T258 38Q258 9 236 1H27Q4 8 4 38Q4 53 8 60T27 76H89V355H58L27 356Q4 363 4 393Q4 408 8 415T27 431H89",120472:"52 216Q52 318 118 379T261 440Q343 440 407 378T472 216Q472 121 410 58T262 -6Q176 -6 114 58T52 216ZM388 225Q388 281 351 322T261 364Q213 364 175 325T136 225Q136 158 174 114T262 70T350 114T388 225",120473:"89 431Q93 431 104 431T121 432Q173 432 173 401V396L182 402Q237 437 305 437Q376 437 434 378T492 217Q492 146 459 93T382 17T291 -6Q261 -6 232 5T188 26L174 37Q173 37 173 -54V-146H236Q250 -155 254 -162T258 -184Q258 -213 236 -221H27Q4 -214 4 -184Q4 -169 8 -162T27 -146H89V355H58L27 356Q4 363 4 393Q4 408 8 415T27 431H89ZM409 215Q409 269 377 315T283 361Q255 361 224 344T177 297L173 290V167Q189 124 213 97T278 70Q330 70 369 111T409 215",120474:"34 215Q34 309 91 368T222 436Q224 436 231 436T242 437Q309 437 372 390V401Q372 419 381 428T414 437Q426 437 432 436T444 430T456 412V-146H489H504Q524 -146 534 -153T545 -184Q545 -211 527 -219Q523 -221 414 -221Q398 -221 374 -221T342 -222Q304 -222 294 -216T283 -184Q283 -157 301 -149Q307 -146 339 -146H372V-51Q372 43 371 43L364 38Q357 33 345 26T318 12T280 -1T236 -6Q155 -6 95 55T34 215ZM117 215Q117 152 157 111T250 70Q289 70 318 92T363 146Q372 163 372 192V215L371 263Q339 360 254 360Q206 360 162 321T117 215",120475:"327 76Q359 76 369 70T380 38Q380 10 359 1H47Q24 8 24 38Q24 54 28 61T47 76H145V355H96L47 356Q24 363 24 393Q24 409 28 416T47 431H207Q223 419 226 414T229 393V387V369Q297 437 394 437Q436 437 461 417T487 368Q487 347 473 332T438 317Q428 317 420 320T407 327T398 337T393 347T390 356L388 361Q348 356 324 345Q228 299 228 170Q228 161 228 151T229 138V76H293H327",120476:"72 317Q72 361 108 396T229 439Q231 439 245 439T268 440Q303 439 324 435T353 427T363 423L372 432Q380 440 397 440Q430 440 430 395Q430 390 430 380T429 366V335Q429 311 422 302T387 293Q364 293 355 300T346 316T343 336T325 353Q306 364 257 364Q209 364 178 351T147 317Q147 284 231 272Q327 256 357 247Q458 210 458 129V121Q458 74 413 34T271 -6Q246 -6 224 -3T189 5T165 14T150 22T144 26Q142 23 139 18T135 11T132 6T128 1T124 -2T119 -4T113 -5T104 -6Q84 -6 78 6T71 43Q71 48 71 60T72 79Q72 132 73 141T81 157Q90 166 115 166Q135 166 142 162T157 140Q168 108 191 90T260 70Q297 70 323 76T361 91T379 110T384 129Q384 157 346 171T247 195T165 212Q119 228 96 256T72 317",120477:"25 395Q26 405 26 408T29 416T35 423T48 431H145V481L146 532Q154 547 161 550T184 554H189Q218 554 227 534Q229 529 229 480V431H405Q406 430 411 427T418 422T422 416T426 407T427 393Q427 387 427 382T424 374T421 368T417 363T413 360T408 358L405 356L317 355H229V249Q229 237 229 214T228 179Q228 126 241 98T295 70Q354 70 365 149Q366 167 375 174Q383 182 407 182H415Q438 182 446 166Q448 161 448 148Q448 84 398 39T282 -6Q226 -6 189 29T146 128Q145 134 145 247V355H96H72Q45 355 35 362T25 395",120478:"4 393Q4 416 15 423T52 431H90Q141 431 151 429T168 417Q171 412 173 409V254L174 100Q182 70 244 70Q320 70 344 119Q349 130 350 144T351 248V355H320L289 356Q266 363 266 393Q266 408 270 415T289 431H351H386Q409 431 418 428T433 411Q435 406 435 241V76H498Q512 67 516 60T520 38Q520 9 498 1H436H394Q372 1 364 5T351 26L342 21Q293 -5 227 -5Q118 -5 96 67Q91 82 90 101T89 227V355H58L27 356Q4 363 4 393",120479:"24 392Q24 417 36 424T79 432Q85 432 103 432T132 431H215Q229 422 233 415T237 393Q237 355 198 355H193H172L262 77L352 355H331H323Q288 355 288 393Q288 409 291 415T310 431H478Q491 423 495 416T500 393Q500 364 478 356L452 355H426L374 190Q320 24 318 20Q307 -4 273 -4H262H251Q217 -4 206 20Q204 24 150 190L98 355H72L47 356Q24 363 24 392",120480:"54 355Q16 355 16 388V393Q16 423 37 430Q41 431 125 431H162Q206 431 218 425T230 393Q230 366 212 358Q206 355 174 355Q141 355 141 354L150 296Q181 110 181 89V84Q182 85 183 96Q185 118 199 173T218 237Q223 247 245 259H264H268Q294 259 309 240Q315 229 329 174T343 92Q343 84 344 84V86Q344 88 344 91T345 97Q347 125 356 187T374 301T383 354Q383 355 350 355H333Q314 355 304 362T294 393Q294 420 312 428Q318 431 401 431H440Q485 431 496 425T508 393Q508 382 508 377T498 363T470 355L455 354Q455 353 441 271T413 104T396 16Q384 -4 355 -4H351Q315 -4 305 9T280 79Q278 90 276 96Q265 149 265 169Q265 176 264 169Q263 166 263 162Q261 130 248 79T230 18Q220 -4 183 -4H175L151 -3Q134 5 127 17L112 102Q97 188 83 270T69 354Q62 355 54 355",120481:"35 393Q35 417 46 424T89 432Q95 432 112 432T141 431H223Q238 422 241 415T244 393Q244 389 244 383T237 367T216 355Q209 355 209 354L234 319Q259 286 260 286L308 354Q308 355 301 355Q285 356 278 365T270 384L271 393Q271 420 289 428Q295 431 376 431H459Q460 430 465 427T472 422T476 416T480 407T481 393Q481 368 470 362T434 355H425H392L344 290Q295 225 295 223Q294 223 309 203T350 149L405 77L439 76H453Q474 76 484 69T495 38Q495 10 473 1H303Q281 9 281 32V38Q281 49 282 54T290 67T313 76Q324 76 324 77L259 173L197 77Q202 76 209 76Q225 75 233 68T241 55T242 38Q242 28 242 24T236 12T221 1H51Q29 9 29 32V38Q29 48 29 51T31 59T38 67T51 76H117L171 149Q224 222 224 223L124 355H90H78Q54 355 45 361T35 393",120482:"26 393Q26 417 37 424T80 431H134H217Q232 422 235 416T239 393Q239 379 236 371T226 360T214 356T197 355L179 354V353L188 330Q197 306 209 272T235 201T259 133T271 89V84L274 95Q279 122 298 185T335 300T352 354Q352 355 331 355Q312 355 304 358Q288 368 288 393Q288 408 291 415T310 431H478Q479 430 484 427T491 422T495 416T499 407T500 393Q500 376 493 367T479 357T458 355H452Q426 355 425 353Q420 337 351 124T280 -94Q240 -195 168 -220Q147 -228 125 -228Q89 -228 66 -201T42 -139Q42 -116 56 -102T93 -87Q117 -87 130 -102T144 -135V-138H126Q121 -148 121 -150T130 -152Q182 -147 207 -87Q211 -78 223 -40T236 1Q230 10 102 355H75L49 356Q26 363 26 393",120483:"56 1Q40 7 37 14T34 41Q34 59 36 64Q39 67 43 73Q65 95 191 213T341 355H133V334Q133 306 124 297Q116 289 91 289H83Q60 289 51 308Q49 313 49 361L50 409Q59 427 72 430H78Q83 430 92 430T115 430T144 430T179 431T219 431T262 431H450Q452 430 455 428T459 424T463 422T466 419T468 416T469 413T470 409T471 404T472 398T472 391Q472 374 469 368L462 358Q453 349 315 218Q210 122 164 76H391V103Q391 136 400 146Q409 155 433 155Q464 155 473 135Q475 130 475 78V46Q475 24 472 16T453 1H56",120488:"296 0Q278 3 164 3Q58 3 49 0H40V62H92Q144 62 144 64Q388 682 397 689Q403 698 434 698Q463 698 471 689Q475 686 538 530T663 218L724 64Q724 62 776 62H828V0H817Q796 3 658 3Q509 3 485 0H472V62H517Q561 62 561 63L517 175H262L240 120Q218 65 217 64Q217 62 261 62H306V0H296ZM390 237L492 238L440 365Q390 491 388 491Q287 239 287 237H390",120489:"720 510Q720 476 704 448T665 404T619 377T580 362L564 359L583 356Q602 353 632 342T690 312Q712 292 725 276Q752 235 752 189V183Q752 160 741 125Q698 18 547 2Q543 1 288 0H39V62H147V624H39V686H264H409Q502 686 542 681T624 655Q720 607 720 510ZM563 513Q563 553 548 578T518 611T486 622Q479 624 385 624H293V382H375Q458 383 467 385Q563 405 563 513ZM590 192Q590 307 505 329Q504 330 503 330L398 331H293V62H391H400H444Q496 62 528 75T580 131Q590 155 590 192",120490:"425 0L228 3Q63 3 51 0H39V62H147V618H39V680H612V676Q614 670 627 552T643 428V424H581V428Q580 430 576 461T562 524T532 576Q512 596 481 605T426 616T357 618H304V62H439V0H425",120491:"901 12Q901 7 892 0H479Q65 0 62 2Q56 6 56 11Q56 14 242 347T433 685Q438 694 450 696Q454 698 480 698H506L523 687Q526 683 711 354T899 17Q901 13 901 12ZM653 137L427 538L202 137L315 136H540L653 137",120492:"723 286Q721 284 700 145T677 3V0H39V62H147V618H39V680H660V676Q662 670 675 552T691 428V424H629V428Q629 429 627 448T618 494T601 541Q574 593 527 605T382 618H374H304V384H336Q338 384 347 384T361 384T376 386T392 390T407 397T421 407T432 423Q442 444 443 482V501H505V205H443V224Q442 258 435 278T411 307T380 318T336 322H304V62H375H394Q429 62 449 62T497 66T541 76T577 95T609 126T632 170T651 232Q661 287 661 289H723V286",120493:"80 430L92 686H358Q624 686 628 684Q638 679 638 656Q638 640 637 639Q637 638 445 353Q401 288 351 214T277 103L253 67L256 66Q258 66 265 66T279 66T298 66H343Q380 66 406 68T464 81T518 110T557 164T579 250Q583 278 583 298Q583 299 614 299H645V291Q643 281 636 150T627 8V0H353Q79 0 75 2Q64 7 64 31Q64 48 66 52L259 340L451 623Q451 624 384 624Q294 623 259 612Q155 581 143 446Q142 440 142 432V430H80",120494:"400 0Q376 3 226 3Q75 3 51 0H39V62H147V624H39V686H51Q75 683 226 683Q376 683 400 686H412V624H304V388H595V624H487V686H499Q523 683 673 683Q824 683 848 686H860V624H752V62H860V0H848Q824 3 674 3Q523 3 499 0H487V62H595V326H304V62H412V0H400",120495:"629 -10T446 -10T164 89T64 340Q64 380 71 420T102 510T163 596T266 662T418 696H438Q488 696 499 695Q582 686 644 655T741 584T796 495T823 409T829 338Q829 188 729 89ZM439 645Q416 645 390 638T333 615T275 564T236 480Q221 423 221 341Q221 272 230 228Q247 144 301 94T447 43T592 93T663 228Q672 272 672 341Q672 645 439 645ZM286 242V446H348V412H545V446H607V242H545V276H348V242H286",120496:"397 0Q370 3 218 3Q65 3 38 0H25V62H139V624H25V686H38Q65 683 218 683Q370 683 397 686H410V624H296V62H410V0H397",120497:"400 0Q376 3 226 3Q75 3 51 0H39V62H147V624H39V686H51Q75 683 226 683Q376 683 400 686H412V624H304V338L472 483L634 624H565V686H576Q597 683 728 683Q814 683 829 686H836V624H730L614 524Q507 432 497 422Q496 422 498 418T514 395T553 342T627 241L759 63L805 62H852V0H842Q830 3 701 3Q550 3 526 0H513V62H549Q584 62 584 63Q583 65 486 196T388 328L304 256V62H412V0H400",120498:"285 0Q267 3 154 3Q56 3 47 0H40V62H131Q131 63 167 160T244 369T321 578T359 678Q366 698 393 698H404H413Q437 698 446 678Q448 672 560 369T674 62H765V0H754Q733 3 604 3Q453 3 429 0H416V62H461L507 63L355 470Q353 468 279 265L203 63L249 62H294V0H285",120499:"314 0Q296 3 181 3T48 0H39V62H147V624H39V686H305Q316 679 323 667Q330 653 434 414L546 157L658 414Q766 662 773 674Q778 681 788 686H1052V624H944V62H1052V0H1040Q1016 3 874 3T708 0H696V62H804V341L803 618L786 580Q770 543 735 462T671 315Q540 13 536 9Q528 1 507 1Q485 1 477 9Q472 14 408 162T281 457T217 603Q215 603 215 334V62H323V0H314",120500:"314 0Q296 3 181 3T48 0H39V62H147V624H39V686H171H265Q288 686 297 686T309 684T315 679Q317 676 500 455T684 233V624H576V686H585Q603 683 718 683T851 686H860V624H752V319Q752 15 750 11Q747 4 742 2T718 0H712Q708 0 706 0T700 0T696 1T693 2T690 4T687 7T684 11T679 16T674 23Q671 27 437 311L215 579V62H323V0H314",120501:"54 465L63 674Q63 675 383 675T703 674L712 465Q712 464 681 464H650V467Q650 490 646 516T632 545Q612 550 383 550H283Q169 550 149 548T124 531Q123 530 123 529Q116 506 116 467V464H85Q54 464 54 465ZM160 256V447H222V414H544V447H606V256H544V289H222V256H160ZM57 0L48 222H110V219Q110 147 125 133Q127 130 130 129T160 127T235 126T383 126Q482 126 530 126T604 127T635 129T641 133Q656 146 656 219V222H718L709 0H57",120502:"64 339Q64 431 96 502T182 614T295 675T420 696Q469 696 481 695Q620 680 709 589T798 339Q798 173 697 82T432 -10Q262 -10 163 85T64 339ZM625 454Q618 502 600 538T562 593T515 624T469 639T431 642Q331 642 276 563Q232 493 232 353Q232 315 234 285T244 216T267 148T308 94T372 56Q405 46 432 46Q517 46 567 106T627 267Q631 299 631 353Q631 418 625 454",120503:"400 0Q376 3 226 3Q75 3 51 0H39V62H147V618H39V680H860V618H752V62H860V0H848Q824 3 674 3Q523 3 499 0H487V62H595V618H304V62H412V0H400",120504:"400 0Q376 3 226 3Q75 3 51 0H39V62H147V624H39V686H253Q435 686 470 685T536 678Q585 668 621 648T675 605T705 557T718 514T721 483T718 451T704 409T673 362T616 322T530 293Q500 288 399 287H304V62H412V0H400ZM553 475Q553 554 537 582T459 622Q451 623 373 624H298V343H372Q457 344 480 350Q527 362 540 390T553 475",120506:"766 271Q764 266 750 137T735 4V0H407Q74 0 71 4L70 5Q64 9 64 18Q64 24 82 41T213 158L359 288Q360 288 320 336T214 460Q67 633 66 635Q64 638 64 655Q64 679 75 684Q78 686 407 686H735V682Q738 676 751 558T766 434V430H735Q704 430 704 431Q704 434 703 444T696 477T681 520T654 563T613 598Q578 615 527 619T371 624H281L396 489Q506 358 513 351Q517 342 512 334Q503 325 371 208Q338 179 303 147T249 99L231 83L243 81Q258 81 364 81Q382 81 418 81T470 82T513 83T554 88T587 96T619 109T645 129Q689 173 702 260L704 274Q704 275 735 275H766V271",120507:"41 425Q41 426 51 545T62 669V675H737V669Q738 665 748 546T758 425V419H696V425Q687 517 669 555T595 607Q578 612 522 613H478V62H631V0H615Q585 3 399 3Q214 3 184 0H168V62H321V613H277H263Q164 613 134 561Q113 527 103 425V419H41V425",120508:"64 556Q69 619 114 658T224 697Q271 697 310 677T375 622T417 554T444 484L447 477V479Q456 516 473 551T516 620T582 676T670 697Q735 697 780 656T829 556Q829 539 818 532H772Q761 539 761 548Q761 571 681 571Q664 571 653 570T623 562T587 537T555 490Q536 448 531 410T525 300V210V62H660V0H646L447 3Q257 1 247 0H233V62H368V210V301Q368 373 363 410T338 490Q324 518 307 536T270 561T240 569T212 571Q132 571 132 548Q132 539 121 532H75Q64 538 64 556",120509:"609 0Q582 3 415 3T221 0H207V62H342V168L328 169Q193 180 117 241Q64 286 64 343T117 445Q193 506 328 517L342 518V624H207V686H221Q248 683 415 683T609 686H623V624H488V518L502 517Q637 506 713 445Q766 400 766 343T713 241Q637 180 502 169L488 168V62H623V0H609ZM342 219T342 343T340 467Q328 467 304 459Q277 451 261 439T237 409T228 378T226 343Q226 314 229 296T250 259T301 228Q331 219 341 219Q342 219 342 343ZM604 343Q604 365 602 379T591 413T560 446T503 464L489 467Q488 467 488 343T489 219Q499 219 529 228Q554 236 570 248T593 277T602 308T604 343",120510:"327 0Q306 3 174 3Q52 3 43 0H33V62H98L162 63L360 333L157 624H48V686H59Q80 683 217 683Q368 683 395 686H408V624H335L393 540L452 458L573 623Q573 624 528 624H483V686H494Q515 683 646 683Q769 683 778 686H787V624H658L575 511Q493 398 493 397L508 376Q522 356 553 312T611 229L727 62H835V0H824Q803 3 667 3Q516 3 489 0H476V62H513L549 63L401 274L247 63Q247 62 292 62H338V0H327",120511:"64 515Q64 532 71 536T104 540H139Q200 540 207 538Q225 533 236 521T253 489T260 454T264 414Q264 340 287 296T347 237Q369 226 373 226Q374 226 374 425V624H239V686H253Q280 683 447 683T641 686H655V624H520V226L522 227Q525 228 531 229T552 240T580 261T606 298T624 354Q627 368 628 394T631 440T637 482T654 518T686 538Q693 540 754 540H794Q817 540 823 536T829 515Q829 500 824 495T811 489T796 483T782 461T775 408Q767 212 568 175Q526 168 521 168Q520 168 520 115V62H655V0H641Q614 3 447 3T253 0H239V62H374V168L364 169Q290 178 243 203Q126 261 118 409Q117 443 111 461T98 484T83 489T70 495T64 515",120512:"598 645T415 645T232 458Q232 385 275 239T318 26Q318 8 311 4T272 -1Q265 -1 240 -1T196 0H88V3Q86 5 70 108Q52 211 51 212V215H113V212Q123 149 132 133Q136 124 149 122T202 118Q241 118 241 119Q241 132 132 277Q64 378 64 457Q64 564 158 630T403 696Q487 696 543 685T661 638Q722 599 744 549T766 458Q766 434 761 410T749 368T729 327T709 293T684 258T663 229Q632 187 614 160T592 126L589 119Q589 118 628 118Q667 119 680 121T698 133Q702 140 706 160T714 196L717 212V215H779V212Q778 211 760 108Q744 5 742 3V0H634H562Q528 0 520 4T512 26Q512 92 555 238T598 458Q598 645 415 645",120513:"56 673Q56 679 65 686H892Q901 679 901 673Q901 668 714 331T521 -15Q518 -18 506 -24H452Q440 -19 436 -15Q431 -8 337 162T150 501L57 669Q57 670 56 672V673ZM528 136L758 553H297Q298 551 414 341L528 136",120546:"208 74Q208 50 254 46Q272 46 272 35Q272 34 270 22Q267 8 264 4T251 0Q249 0 239 0T205 1T141 2Q70 2 50 0H42Q35 7 35 11Q37 38 48 46H62Q132 49 164 96Q170 102 345 401T523 704Q530 716 547 716H555H572Q578 707 578 706L606 383Q634 60 636 57Q641 46 701 46Q726 46 726 36Q726 34 723 22Q720 7 718 4T704 0Q701 0 690 0T651 1T578 2Q484 2 455 0H443Q437 6 437 9T439 27Q443 40 445 43L449 46H469Q523 49 533 63L521 213H283L249 155Q208 86 208 74ZM516 260Q516 271 504 416T490 562L463 519Q447 492 400 412L310 260L413 259Q516 259 516 260",120547:"231 637Q204 637 199 638T194 649Q194 676 205 682Q206 683 335 683Q594 683 608 681Q671 671 713 636T756 544Q756 480 698 429T565 360L555 357Q619 348 660 311T702 219Q702 146 630 78T453 1Q446 0 242 0Q42 0 39 2Q35 5 35 10Q35 17 37 24Q42 43 47 45Q51 46 62 46H68Q95 46 128 49Q142 52 147 61Q150 65 219 339T288 628Q288 635 231 637ZM649 544Q649 574 634 600T585 634Q578 636 493 637Q473 637 451 637T416 636H403Q388 635 384 626Q382 622 352 506Q352 503 351 500L320 374H401Q482 374 494 376Q554 386 601 434T649 544ZM595 229Q595 273 572 302T512 336Q506 337 429 337Q311 337 310 336Q310 334 293 263T258 122L240 52Q240 48 252 48T333 46Q422 46 429 47Q491 54 543 105T595 229",120548:"49 1Q31 1 31 10Q31 12 34 24Q39 43 44 45Q48 46 59 46H65Q92 46 125 49Q139 52 144 61Q146 66 215 342T285 622Q285 629 281 629Q273 632 228 634H197Q191 640 191 642T193 661Q197 674 203 680H714Q721 676 721 669Q721 664 708 557T694 447Q692 440 674 440H662Q655 445 655 454Q655 455 658 480T661 534Q661 572 652 592Q638 619 603 626T501 634H471Q398 633 393 630Q389 628 386 622Q385 619 315 341T245 60Q245 46 333 46H345Q366 46 366 35Q366 33 363 21T358 6Q356 1 339 1Q334 1 292 1T187 2Q122 2 88 2T49 1",120549:"574 715L582 716Q589 716 595 716Q612 716 616 714Q621 712 621 709Q622 707 705 359T788 8Q786 5 785 3L781 0H416Q52 0 50 2T48 6Q48 9 305 358T567 711Q572 712 574 715ZM599 346L538 602L442 474Q347 345 252 217T157 87T409 86T661 88L654 120Q646 151 629 220T599 346",120550:"492 213Q472 213 472 226Q472 230 477 250T482 285Q482 316 461 323T364 330H312Q311 328 277 192T243 52Q243 48 254 48T334 46Q428 46 458 48T518 61Q567 77 599 117T670 248Q680 270 683 272Q690 274 698 274Q718 274 718 261Q613 7 608 2Q605 0 322 0H133Q31 0 31 11Q31 13 34 25Q38 41 42 43T65 46Q92 46 125 49Q139 52 144 61Q146 66 215 342T285 622Q285 629 281 629Q273 632 228 634H197Q191 640 191 642T193 659Q197 676 203 680H757Q764 676 764 669Q764 664 751 557T737 447Q735 440 717 440H705Q698 445 698 453L701 476Q704 500 704 528Q704 558 697 578T678 609T643 625T596 632T532 634H485Q397 633 392 631Q388 629 386 622Q385 619 355 499T324 377Q347 376 372 376H398Q464 376 489 391T534 472Q538 488 540 490T557 493Q562 493 565 493T570 492T572 491T574 487T577 483L544 351Q511 218 508 216Q505 213 492 213",120551:"58 8Q58 23 64 35Q64 36 329 334T596 635L586 637Q575 637 512 637H500H476Q442 637 420 635T365 624T311 598T266 548T228 469Q227 466 226 463T224 458T223 453T222 450L221 448Q218 443 202 443Q185 443 182 453L214 561Q228 606 241 651Q249 679 253 681Q256 683 487 683H718Q723 678 723 675Q723 673 717 649Q189 54 188 52L185 49H274Q369 50 377 51Q452 60 500 100T579 247Q587 272 590 277T603 282H607Q628 282 628 271Q547 5 541 2Q538 0 300 0H124Q58 0 58 8",120552:"228 637Q194 637 192 641Q191 643 191 649Q191 673 202 682Q204 683 219 683Q260 681 355 681Q389 681 418 681T463 682T483 682Q499 682 499 672Q499 670 497 658Q492 641 487 638H485Q483 638 480 638T473 638T464 637T455 637Q416 636 405 634T387 623Q384 619 355 500Q348 474 340 442T328 395L324 380Q324 378 469 378H614L615 381Q615 384 646 504Q674 619 674 627T617 637Q594 637 587 639T580 648Q580 650 582 660Q586 677 588 679T604 682Q609 682 646 681T740 680Q802 680 835 681T871 682Q888 682 888 672Q888 645 876 638H874Q872 638 869 638T862 638T853 637T844 637Q805 636 794 634T776 623Q773 618 704 340T634 58Q634 51 638 51Q646 48 692 46H723Q729 38 729 37T726 19Q722 6 716 0H701Q664 2 567 2Q533 2 504 2T458 2T437 1Q420 1 420 10Q420 15 423 24Q428 43 433 45Q437 46 448 46H454Q481 46 514 49Q520 50 522 50T528 55T534 64T540 82T547 110T558 153Q565 181 569 198Q602 330 602 331T457 332H312L279 197Q245 63 245 58Q245 51 253 49T303 46H334Q340 38 340 37T337 19Q333 6 327 0H312Q275 2 178 2Q144 2 115 2T69 2T48 1Q31 1 31 10Q31 12 34 24Q39 43 44 45Q48 46 59 46H65Q92 46 125 49Q139 52 144 61Q147 65 216 339T285 628Q285 635 228 637",120553:"740 435Q740 320 676 213T511 42T304 -22Q207 -22 138 35T51 201Q50 209 50 244Q50 346 98 438T227 601Q351 704 476 704Q514 704 524 703Q621 689 680 617T740 435ZM640 466Q640 523 625 565T583 628T532 658T479 668Q370 668 273 559T151 255Q150 245 150 213Q150 156 165 116T207 55T259 26T313 17Q385 17 451 63T561 184Q590 234 615 312T640 466ZM510 276Q510 278 512 288L515 298Q515 299 384 299H253L250 285Q246 271 244 268T231 265H227Q216 265 214 266T207 274Q207 278 223 345T244 416Q247 419 260 419H263Q280 419 280 408Q280 406 278 396L275 386Q275 385 406 385H537L540 399Q544 413 546 416T559 419H563Q574 419 576 418T583 410Q583 403 566 339Q549 271 544 267Q542 265 538 265H530H527Q510 265 510 276",120554:"43 1Q26 1 26 10Q26 12 29 24Q34 43 39 45Q42 46 54 46H60Q120 46 136 53Q137 53 138 54Q143 56 149 77T198 273Q210 318 216 344Q286 624 286 626Q284 630 284 631Q274 637 213 637H193Q184 643 189 662Q193 677 195 680T209 683H213Q285 681 359 681Q481 681 487 683H497Q504 676 504 672T501 655T494 639Q491 637 471 637Q440 637 407 634Q393 631 388 623Q381 609 337 432Q326 385 315 341Q245 65 245 59Q245 52 255 50T307 46H339Q345 38 345 37T342 19Q338 6 332 0H316Q279 2 179 2Q143 2 113 2T65 2T43 1",120555:"285 628Q285 635 228 637Q205 637 198 638T191 647Q191 649 193 661Q199 681 203 682Q205 683 214 683H219Q260 681 355 681Q389 681 418 681T463 682T483 682Q500 682 500 674Q500 669 497 660Q496 658 496 654T495 648T493 644T490 641T486 639T479 638T470 637T456 637Q416 636 405 634T387 623L306 305Q307 305 490 449T678 597Q692 611 692 620Q692 635 667 637Q651 637 651 648Q651 650 654 662T659 677Q662 682 676 682Q680 682 711 681T791 680Q814 680 839 681T869 682Q889 682 889 672Q889 650 881 642Q878 637 862 637Q787 632 726 586Q710 576 656 534T556 455L509 418L518 396Q527 374 546 329T581 244Q656 67 661 61Q663 59 666 57Q680 47 717 46H738Q744 38 744 37T741 19Q737 6 731 0H720Q680 3 625 3Q503 3 488 0H478Q472 6 472 9T474 27Q478 40 480 43T491 46H494Q544 46 544 71Q544 75 517 141T485 216L427 354L359 301L291 248L268 155Q245 63 245 58Q245 51 253 49T303 46H334Q340 37 340 35Q340 19 333 5Q328 0 317 0Q314 0 280 1T180 2Q118 2 85 2T49 1Q31 1 31 11Q31 13 34 25Q38 41 42 43T65 46Q92 46 125 49Q139 52 144 61Q147 65 216 339T285 628",120556:"135 2Q114 2 90 2T60 1Q35 1 35 11Q35 28 42 40Q45 46 55 46Q119 46 151 94Q153 97 325 402T498 709Q505 716 526 716Q543 716 549 710Q550 709 560 548T580 224T591 57Q594 52 595 52Q603 47 638 46H663Q670 39 670 35Q669 12 657 0H644Q613 2 530 2Q497 2 469 2T424 2T405 1Q388 1 388 10Q388 15 391 24Q392 27 393 32T395 38T397 41T401 44T406 45T415 46Q473 46 487 64L472 306Q468 365 465 426T459 518L457 550Q456 550 328 322T198 88Q196 80 196 77Q196 49 243 46Q261 46 261 35Q261 34 259 22Q256 7 254 4T240 0Q237 0 211 1T135 2",120557:"289 629Q289 635 232 637Q208 637 201 638T194 648Q194 649 196 659Q197 662 198 666T199 671T201 676T203 679T207 681T212 683T220 683T232 684Q238 684 262 684T307 683Q386 683 398 683T414 678Q415 674 451 396L487 117L510 154Q534 190 574 254T662 394Q837 673 839 675Q840 676 842 678T846 681L852 683H948Q965 683 988 683T1017 684Q1051 684 1051 673Q1051 668 1048 656T1045 643Q1041 637 1008 637Q968 636 957 634T939 623Q936 618 867 340T797 59Q797 55 798 54T805 50T822 48T855 46H886Q892 37 892 35Q892 19 885 5Q880 0 869 0Q864 0 828 1T736 2Q675 2 644 2T609 1Q592 1 592 11Q592 13 594 25Q598 41 602 43T625 46Q652 46 685 49Q699 52 704 61Q706 65 742 207T813 490T848 631L654 322Q458 10 453 5Q451 4 449 3Q444 0 433 0Q418 0 415 7Q413 11 374 317L335 624L267 354Q200 88 200 79Q206 46 272 46H282Q288 41 289 37T286 19Q282 3 278 1Q274 0 267 0Q265 0 255 0T221 1T157 2Q127 2 95 1T58 0Q43 0 39 2T35 11Q35 13 38 25T43 40Q45 46 65 46Q135 46 154 86Q158 92 223 354T289 629",120558:"234 637Q231 637 226 637Q201 637 196 638T191 649Q191 676 202 682Q204 683 299 683Q376 683 387 683T401 677Q612 181 616 168L670 381Q723 592 723 606Q723 633 659 637Q635 637 635 648Q635 650 637 660Q641 676 643 679T653 683Q656 683 684 682T767 680Q817 680 843 681T873 682Q888 682 888 672Q888 650 880 642Q878 637 858 637Q787 633 769 597L620 7Q618 0 599 0Q585 0 582 2Q579 5 453 305L326 604L261 344Q196 88 196 79Q201 46 268 46H278Q284 41 284 38T282 19Q278 6 272 0H259Q228 2 151 2Q123 2 100 2T63 2T46 1Q31 1 31 10Q31 14 34 26T39 40Q41 46 62 46Q130 49 150 85Q154 91 221 362L289 634Q287 635 234 637",120559:"222 668Q222 670 229 677H654Q677 677 705 677T740 678Q764 678 770 676T777 667Q777 662 764 594Q761 579 757 559T751 528L749 519Q747 512 729 512H717Q710 519 710 525Q712 532 715 559T719 591Q718 595 711 595Q682 598 486 598Q252 598 246 592Q239 587 228 552L216 517Q214 512 197 512H185Q178 517 178 522Q178 524 198 591T222 668ZM227 262Q218 262 215 262T209 266L207 270L227 356Q247 435 250 439Q253 443 260 443H267H280Q287 438 287 433Q287 430 285 420T280 402L278 393Q278 392 431 392H585L590 415Q595 436 598 439T612 443H628Q635 438 635 433Q635 431 615 351T594 268Q592 262 575 262H572Q556 262 556 272Q556 280 560 293L565 313H258L252 292Q248 271 245 267T230 262H227ZM60 0Q53 4 53 11Q53 14 68 89T84 169Q88 176 98 176H104H116Q123 169 123 163Q122 160 117 127T112 88Q112 80 243 80H351H454Q554 80 574 81T597 88V89Q603 100 610 121T622 157T630 174Q633 176 646 176H658Q665 171 665 166Q665 164 643 89T618 7Q616 2 607 1T548 0H335H60",120560:"740 435Q740 320 676 213T511 42T304 -22Q207 -22 138 35T51 201Q50 209 50 244Q50 346 98 438T227 601Q351 704 476 704Q514 704 524 703Q621 689 680 617T740 435ZM637 476Q637 565 591 615T476 665Q396 665 322 605Q242 542 200 428T157 216Q157 126 200 73T314 19Q404 19 485 98T608 313Q637 408 637 476",120561:"48 1Q31 1 31 10Q31 12 34 24Q39 43 44 45Q48 46 59 46H65Q92 46 125 49Q139 52 144 61Q146 66 215 342T285 622Q285 629 281 629Q273 632 228 634H197Q191 640 191 642T193 661Q197 674 203 680H541Q621 680 709 680T812 681Q841 681 855 681T877 679T886 676T887 670Q887 663 885 656Q880 637 875 635Q871 634 860 634H854Q827 634 794 631Q780 628 775 619Q773 614 704 338T634 58Q634 51 638 51Q646 48 692 46H723Q729 38 729 37T726 19Q722 6 716 0H701Q664 2 567 2Q533 2 504 2T458 2T437 1Q420 1 420 10Q420 15 423 24Q428 43 433 45Q437 46 448 46H454Q481 46 514 49Q528 52 533 61Q536 67 572 209T642 491T678 632Q678 634 533 634H388Q387 631 316 347T245 59Q245 55 246 54T253 50T270 48T303 46H334Q340 38 340 37T337 19Q333 6 327 0H312Q275 2 178 2Q144 2 115 2T69 2T48 1",120562:"287 628Q287 635 230 637Q206 637 199 638T192 648Q192 649 194 659Q200 679 203 681T397 683Q587 682 600 680Q664 669 707 631T751 530Q751 453 685 389Q616 321 507 303Q500 302 402 301H307L277 182Q247 66 247 59Q247 55 248 54T255 50T272 48T305 46H336Q342 37 342 35Q342 19 335 5Q330 0 319 0Q316 0 282 1T182 2Q120 2 87 2T51 1Q33 1 33 11Q33 13 36 25Q40 41 44 43T67 46Q94 46 127 49Q141 52 146 61Q149 65 218 339T287 628ZM645 554Q645 567 643 575T634 597T609 619T560 635Q553 636 480 637Q463 637 445 637T416 636T404 636Q391 635 386 627Q384 621 367 550T332 412T314 344Q314 342 395 342H407H430Q542 342 590 392Q617 419 631 471T645 554",120564:"65 0Q58 4 58 11Q58 16 114 67Q173 119 222 164L377 304Q378 305 340 386T261 552T218 644Q217 648 219 660Q224 678 228 681Q231 683 515 683H799Q804 678 806 674Q806 667 793 559T778 448Q774 443 759 443Q747 443 743 445T739 456Q739 458 741 477T743 516Q743 552 734 574T710 609T663 627T596 635T502 637Q480 637 469 637H339Q344 627 411 486T478 341V339Q477 337 477 336L457 318Q437 300 398 265T322 196L168 57Q167 56 188 56T258 56H359Q426 56 463 58T537 69T596 97T639 146T680 225Q686 243 689 246T702 250H705Q726 250 726 239Q726 238 683 123T639 5Q637 1 610 1Q577 0 348 0H65",120565:"40 437Q21 437 21 445Q21 450 37 501T71 602L88 651Q93 669 101 677H569H659Q691 677 697 676T704 667Q704 661 687 553T668 444Q668 437 649 437Q640 437 637 437T631 442L629 445Q629 451 635 490T641 551Q641 586 628 604T573 629Q568 630 515 631Q469 631 457 630T439 622Q438 621 368 343T298 60Q298 48 386 46Q418 46 427 45T436 36Q436 31 433 22Q429 4 424 1L422 0Q419 0 415 0Q410 0 363 1T228 2Q99 2 64 0H49Q43 6 43 9T45 27Q49 40 55 46H83H94Q174 46 189 55Q190 56 191 56Q196 59 201 76T241 233Q258 301 269 344Q339 619 339 625Q339 630 310 630H279Q212 630 191 624Q146 614 121 583T67 467Q60 445 57 441T43 437H40",120566:"45 535Q34 535 31 536T28 544Q28 554 39 578T70 631T126 683T206 705Q230 705 251 698T295 671T330 612T344 514Q344 477 342 473V472Q343 472 347 480T361 509T380 547Q471 704 596 704Q615 704 625 702Q659 692 679 663T700 595Q700 565 696 552T687 537T670 535Q656 535 653 536T649 543Q649 544 649 550T650 562Q650 589 629 605T575 621Q502 621 448 547T365 361Q290 70 290 60Q290 46 379 46H404Q410 40 410 39T408 19Q404 6 398 0H381Q340 2 225 2Q184 2 149 2T94 2T69 1Q61 1 58 1T53 4T51 10Q51 11 53 23Q54 25 55 30T56 36T58 40T60 43T62 44T67 46T73 46T82 46H89Q144 46 163 49T190 62L198 93Q206 124 217 169T241 262T262 350T274 404Q281 445 281 486V494Q281 621 185 621Q147 621 116 601T74 550Q71 539 66 537T45 535",120567:"356 624Q356 637 267 637H243Q237 642 237 645T239 664Q243 677 249 683H264Q342 681 429 681Q565 681 571 683H583Q589 677 589 674T587 656Q582 641 578 637H540Q516 637 504 637T479 633T463 630T454 623T448 613T443 597T438 576Q436 566 434 556T430 539L428 533Q442 533 472 526T543 502T613 451T642 373Q642 301 567 241T386 158L336 150Q332 150 331 146Q310 66 310 60Q310 46 399 46H424Q430 40 430 39T428 19Q424 6 418 0H401Q360 2 247 2Q207 2 173 2T119 2T95 1Q87 1 84 1T79 4T77 10Q77 11 79 23Q80 25 81 30T82 36T84 40T86 43T88 44T93 46T99 46T108 46H115Q170 46 189 49T216 62Q220 74 228 107L239 150L223 152Q139 164 82 205T24 311Q24 396 125 462Q207 517 335 533L346 578Q356 619 356 624ZM130 291Q130 203 241 188H249Q249 190 287 342L325 495H324Q313 495 291 491T229 466T168 414Q130 357 130 291ZM536 393Q536 440 507 463T418 496L341 187L351 189Q443 201 487 255Q536 314 536 393",120568:"42 0H40Q26 0 26 11Q26 15 29 27Q33 41 36 43T55 46Q141 49 190 98Q200 108 306 224T411 342Q302 620 297 625Q288 636 234 637H206Q200 643 200 645T202 664Q206 677 212 683H226Q260 681 347 681Q380 681 408 681T453 682T473 682Q490 682 490 671Q490 670 488 658Q484 643 481 640T465 637Q434 634 411 620L488 426L541 485Q646 598 646 610Q646 628 622 635Q617 635 609 637Q594 637 594 648Q594 650 596 664Q600 677 606 683H618Q619 683 643 683T697 681T738 680Q828 680 837 683H845Q852 676 852 672Q850 647 840 637H824Q790 636 763 628T722 611T698 593L687 584Q687 585 592 480L505 384Q505 383 536 304T601 142T638 56Q648 47 699 46Q734 46 734 37Q734 35 732 23Q728 7 725 4T711 1Q708 1 678 1T589 2Q528 2 496 2T461 1Q444 1 444 10Q444 11 446 25Q448 35 450 39T455 44T464 46T480 47T506 54Q523 62 523 64Q522 64 476 181L429 299Q241 95 236 84Q232 76 232 72Q232 53 261 47Q262 47 267 47T273 46Q276 46 277 46T280 45T283 42T284 35Q284 26 282 19Q279 6 276 4T261 1Q258 1 243 1T201 2T142 2Q64 2 42 0",120569:"216 151Q48 174 48 329Q48 361 56 403T65 458Q65 482 58 494T43 507T28 510T21 520Q21 528 23 534T29 544L32 546H72H94Q110 546 119 544T139 536T154 514T159 476V465Q159 445 149 399T138 314Q142 229 197 201Q223 187 226 190L233 218Q240 246 253 300T280 407Q333 619 333 625Q333 637 244 637H220Q214 642 214 645T216 664Q220 677 226 683H241Q321 681 405 681Q543 681 549 683H560Q566 677 566 674T564 656Q559 641 555 637H517Q448 636 436 628Q429 623 423 600T373 404L320 192Q370 201 419 248Q451 281 469 317T500 400T518 457Q529 486 542 505T569 532T594 543T621 546H644H669Q692 546 692 536Q691 509 676 509Q623 509 593 399Q587 377 579 355T552 301T509 244T446 195T359 159Q324 151 314 151Q311 151 310 150T298 106T287 60Q287 46 376 46H401Q407 40 407 39T405 19Q401 6 395 0H378Q337 2 224 2Q184 2 150 2T96 2T72 1Q64 1 61 1T56 4T54 10Q54 11 56 23Q57 25 58 30T59 36T61 40T63 43T65 44T70 46T76 46T85 46H92Q147 46 166 49T193 62L204 106Q216 149 216 151",120570:"125 84Q127 78 194 76H243V78Q243 122 208 215T165 350Q164 359 162 389Q162 522 272 610Q328 656 396 680T525 704Q628 704 698 661Q734 637 755 601T781 544T786 504Q786 439 747 374T635 226T537 109Q518 81 518 77Q537 76 557 76Q608 76 620 78T640 92Q646 100 656 119T673 155T683 172Q690 173 698 173Q718 173 718 162Q718 161 681 82T642 2Q639 0 550 0H461Q455 5 455 9T458 28Q472 78 510 149T584 276T648 402T677 525Q677 594 636 631T530 668Q476 668 423 641T335 568Q284 499 271 400Q270 388 270 348Q270 298 277 228T285 115Q285 82 280 49T271 6Q269 1 258 1T175 0H87Q83 3 80 7V18Q80 22 82 98Q84 156 85 163T91 172Q94 173 104 173T119 172Q124 169 124 126Q125 104 125 84",120572:"34 156Q34 270 120 356T309 442Q379 442 421 402T478 304Q484 275 485 237V208Q534 282 560 374Q564 388 566 390T582 393Q603 393 603 385Q603 376 594 346T558 261T497 161L486 147L487 123Q489 67 495 47T514 26Q528 28 540 37T557 60Q559 67 562 68T577 70Q597 70 597 62Q597 56 591 43Q579 19 556 5T512 -10H505Q438 -10 414 62L411 69L400 61Q390 53 370 41T325 18T267 -2T203 -11Q124 -11 79 39T34 156ZM208 26Q257 26 306 47T379 90L403 112Q401 255 396 290Q382 405 304 405Q235 405 183 332Q156 292 139 224T121 120Q121 71 146 49T208 26",120573:"29 -194Q23 -188 23 -186Q23 -183 102 134T186 465Q208 533 243 584T309 658Q365 705 429 705H431Q493 705 533 667T573 570Q573 465 469 396L482 383Q533 332 533 252Q533 139 448 65T257 -10Q227 -10 203 -2T165 17T143 40T131 59T126 65L62 -188Q60 -194 42 -194H29ZM353 431Q392 431 427 419L432 422Q436 426 439 429T449 439T461 453T472 471T484 495T493 524T501 560Q503 569 503 593Q503 611 502 616Q487 667 426 667Q384 667 347 643T286 582T247 514T224 455Q219 439 186 308T152 168Q151 163 151 147Q151 99 173 68Q204 26 260 26Q302 26 349 51T425 137Q441 171 449 214T457 279Q457 337 422 372Q380 358 347 358H337Q258 358 258 389Q258 396 261 403Q275 431 353 431",120574:"31 249Q11 249 11 258Q11 275 26 304T66 365T129 418T206 441Q233 441 239 440Q287 429 318 386T371 255Q385 195 385 170Q385 166 386 166L398 193Q418 244 443 300T486 391T508 430Q510 431 524 431H537Q543 425 543 422Q543 418 522 378T463 251T391 71Q385 55 378 6T357 -100Q341 -165 330 -190T303 -216Q286 -216 286 -188Q286 -138 340 32L346 51L347 69Q348 79 348 100Q348 257 291 317Q251 355 196 355Q148 355 108 329T51 260Q49 251 47 251Q45 249 31 249",120575:"195 609Q195 656 227 686T302 717Q319 716 351 709T407 697T433 690Q451 682 451 662Q451 644 438 628T403 612Q382 612 348 641T288 671T249 657T235 628Q235 584 334 463Q401 379 401 292Q401 169 340 80T205 -10H198Q127 -10 83 36T36 153Q36 286 151 382Q191 413 252 434Q252 435 245 449T230 481T214 521T201 566T195 609ZM112 130Q112 83 136 55T204 27Q233 27 256 51T291 111T309 178T316 232Q316 267 309 298T295 344T269 400L259 396Q215 381 183 342T137 256T118 179T112 130",120576:"190 -22Q124 -22 76 11T27 107Q27 174 97 232L107 239L99 248Q76 273 76 304Q76 364 144 408T290 452H302Q360 452 405 421Q428 405 428 392Q428 381 417 369T391 356Q382 356 371 365T338 383T283 392Q217 392 167 368T116 308Q116 289 133 272Q142 263 145 262T157 264Q188 278 238 278H243Q308 278 308 247Q308 206 223 206Q177 206 142 219L132 212Q68 169 68 112Q68 39 201 39Q253 39 286 49T328 72T345 94T362 105Q376 103 376 88Q376 79 365 62T334 26T275 -8T190 -22",120577:"296 643Q298 704 324 704Q342 704 342 687Q342 682 339 664T336 633Q336 623 337 618T338 611Q339 612 341 612Q343 614 354 616T374 618L384 619H394Q471 619 471 586Q467 548 386 546H372Q338 546 320 564L311 558Q235 506 175 398T114 190Q114 171 116 155T125 127T137 104T153 86T171 72T192 61T213 53T235 46T256 39L322 16Q389 -10 389 -80Q389 -119 364 -154T300 -202Q292 -204 274 -204Q247 -204 225 -196Q210 -192 193 -182T172 -167Q167 -159 173 -148Q180 -139 191 -139Q195 -139 221 -153T283 -168Q298 -166 310 -152T322 -117Q322 -91 302 -75T250 -51T183 -29T116 4T65 62T44 160Q44 287 121 410T293 590L302 595Q296 613 296 643",120578:"21 287Q22 290 23 295T28 317T38 348T53 381T73 411T99 433T132 442Q156 442 175 435T205 417T221 395T229 376L231 369Q231 367 232 367L243 378Q304 442 382 442Q436 442 469 415T503 336V326Q503 302 439 53Q381 -182 377 -189Q364 -216 332 -216Q319 -216 310 -208T299 -186Q299 -177 358 57L420 307Q423 322 423 345Q423 404 379 404H374Q288 404 229 303L222 291L189 157Q156 26 151 16Q138 -11 108 -11Q95 -11 87 -5T76 7T74 17Q74 30 114 189T154 366Q154 405 128 405Q107 405 92 377T68 316T57 280Q55 278 41 278H27Q21 284 21 287",120579:"35 200Q35 302 74 415T180 610T319 704Q320 704 327 704T339 705Q393 701 423 656Q462 596 462 495Q462 380 417 261T302 66T168 -10H161Q125 -10 99 10T60 63T41 130T35 200ZM383 566Q383 668 330 668Q294 668 260 623T204 521T170 421T157 371Q206 370 254 370L351 371Q352 372 359 404T375 484T383 566ZM113 132Q113 26 166 26Q181 26 198 36T239 74T287 161T335 307L340 324H145Q145 321 136 286T120 208T113 132",120580:"139 -10Q111 -10 92 0T64 25T52 52T48 74Q48 89 55 109T85 199T135 375L137 384Q139 394 140 397T145 409T151 422T160 431T173 439T190 442Q202 442 213 435T225 410Q225 404 214 358T181 238T137 107Q126 74 126 54Q126 43 126 39T130 31T142 27H147Q206 27 255 78Q272 98 281 114T290 138T295 149T313 153Q321 153 324 153T329 152T332 149T332 143Q332 106 276 48T145 -10H139",120581:"83 -11Q70 -11 62 -4T51 8T49 17Q49 30 96 217T147 414Q160 442 193 442Q205 441 213 435T223 422T225 412Q225 401 208 337L192 270Q193 269 208 277T235 292Q252 304 306 349T396 412T467 431Q489 431 500 420T512 391Q512 366 494 347T449 327Q430 327 418 338T405 368Q405 370 407 380L397 375Q368 360 315 315L253 266L240 257H245Q262 257 300 251T366 230Q422 203 422 150Q422 140 417 114T411 67Q411 26 437 26Q484 26 513 137Q516 149 519 151T535 153Q554 153 554 144Q554 121 527 64T457 -7Q447 -10 431 -10Q386 -10 360 17T333 90Q333 108 336 122T339 146Q339 170 320 186T271 209T222 218T185 221H180L155 122Q129 22 126 16Q113 -11 83 -11",120582:"166 673Q166 685 183 694H202Q292 691 316 644Q322 629 373 486T474 207T524 67Q531 47 537 34T546 15T551 6T555 2T556 -2T550 -11H482Q457 3 450 18T399 152L354 277L340 262Q327 246 293 207T236 141Q211 112 174 69Q123 9 111 -1T83 -12Q47 -12 47 20Q47 37 61 52T199 187Q229 216 266 252T321 306L338 322Q338 323 288 462T234 612Q214 657 183 657Q166 657 166 673",120583:"58 -216Q44 -216 34 -208T23 -186Q23 -176 96 116T173 414Q186 442 219 442Q231 441 239 435T249 423T251 413Q251 401 220 279T187 142Q185 131 185 107V99Q185 26 252 26Q261 26 270 27T287 31T302 38T315 45T327 55T338 65T348 77T356 88T365 100L372 110L408 253Q444 395 448 404Q461 431 491 431Q504 431 512 424T523 412T525 402L449 84Q448 79 448 68Q448 43 455 35T476 26Q485 27 496 35Q517 55 537 131Q543 151 547 152Q549 153 557 153H561Q580 153 580 144Q580 138 575 117T555 63T523 13Q510 0 491 -8Q483 -10 467 -10Q446 -10 429 -4T402 11T385 29T376 44T374 51L368 45Q362 39 350 30T324 12T288 -4T246 -11Q199 -11 153 12L129 -85Q108 -167 104 -180T92 -202Q76 -216 58 -216",120584:"74 431Q75 431 146 436T219 442Q231 442 231 434Q231 428 185 241L137 51H140L150 55Q161 59 177 67T214 86T261 119T312 165Q410 264 445 394Q458 442 496 442Q509 442 519 434T530 411Q530 390 516 352T469 262T388 162T267 70T106 5Q81 -2 71 -2Q66 -2 59 -1T51 1Q45 5 45 11Q45 13 88 188L132 364Q133 377 125 380T86 385H65Q59 391 59 393T61 412Q65 431 74 431",120585:"268 632Q268 704 296 704Q314 704 314 687Q314 682 311 664T308 635T309 620V616H315Q342 619 360 619Q443 619 443 586Q439 548 358 546H344Q326 546 317 549T290 566Q257 550 226 505T195 405Q195 381 201 364T211 342T218 337Q266 347 298 347Q375 347 375 314Q374 297 359 288T327 277T280 275Q234 275 208 283L195 286Q149 260 119 214T88 130Q88 116 90 108Q101 79 129 63T229 20Q238 17 243 15Q337 -21 354 -33Q383 -53 383 -94Q383 -137 351 -171T273 -205Q240 -205 202 -190T158 -167Q156 -163 156 -159Q156 -151 161 -146T176 -140Q182 -140 189 -143Q232 -168 274 -168Q286 -168 292 -165Q313 -151 313 -129Q313 -112 301 -104T232 -75Q214 -68 204 -64Q198 -62 171 -52T136 -38T107 -24T78 -8T56 12T36 37T26 66T21 103Q21 149 55 206T145 301L154 307L148 313Q141 319 136 323T124 338T111 358T103 382T99 413Q99 471 143 524T259 602L271 607Q268 618 268 632",120586:"201 -11Q126 -11 80 38T34 156Q34 221 64 279T146 380Q222 441 301 441Q333 441 341 440Q354 437 367 433T402 417T438 387T464 338T476 268Q476 161 390 75T201 -11ZM121 120Q121 70 147 48T206 26Q250 26 289 58T351 142Q360 163 374 216T388 308Q388 352 370 375Q346 405 306 405Q243 405 195 347Q158 303 140 230T121 120",120587:"132 -11Q98 -11 98 22V33L111 61Q186 219 220 334L228 358H196Q158 358 142 355T103 336Q92 329 81 318T62 297T53 285Q51 284 38 284Q19 284 19 294Q19 300 38 329T93 391T164 429Q171 431 389 431Q549 431 553 430Q573 423 573 402Q573 371 541 360Q535 358 472 358H408L405 341Q393 269 393 222Q393 170 402 129T421 65T431 37Q431 20 417 5T381 -10Q370 -10 363 -7T347 17T331 77Q330 86 330 121Q330 170 339 226T357 318T367 358H269L268 354Q268 351 249 275T206 114T175 17Q164 -11 132 -11",120588:"58 -216Q25 -216 23 -186Q23 -176 73 26T127 234Q143 289 182 341Q252 427 341 441Q343 441 349 441T359 442Q432 442 471 394T510 276Q510 219 486 165T425 74T345 13T266 -10H255H248Q197 -10 165 35L160 41L133 -71Q108 -168 104 -181T92 -202Q76 -216 58 -216ZM424 322Q424 359 407 382T357 405Q322 405 287 376T231 300Q217 269 193 170L176 102Q193 26 260 26Q298 26 334 62Q367 92 389 158T418 266T424 322",120589:"31 207Q31 306 115 374T302 442Q341 442 373 430T405 400Q405 392 399 383T379 374Q373 375 348 390T296 405Q222 405 160 357T98 249Q98 232 103 218T112 195T132 175T154 159T186 141T219 122Q234 114 255 102T286 85T299 78L302 74Q306 71 308 69T315 61T322 51T328 40T332 25T334 8Q334 -31 305 -69T224 -107Q194 -107 163 -92Q156 -88 156 -80Q156 -73 162 -67T178 -61Q186 -61 190 -63Q209 -71 224 -71Q244 -71 253 -59T263 -30Q263 -25 263 -21T260 -12T255 -4T248 3T239 9T227 17T213 25T195 34T174 46Q170 48 150 58T122 74T97 90T70 112T51 137T36 169T31 207",120590:"184 -11Q116 -11 74 34T31 147Q31 247 104 333T274 430Q275 431 414 431H552Q553 430 555 429T559 427T562 425T565 422T567 420T569 416T570 412T571 407T572 401Q572 357 507 357Q500 357 490 357T476 358H416L421 348Q439 310 439 263Q439 153 359 71T184 -11ZM361 278Q361 358 276 358Q152 358 115 184Q114 180 114 178Q106 141 106 117Q106 67 131 47T188 26Q242 26 287 73Q316 103 334 153T356 233T361 278",120591:"39 284Q18 284 18 294Q18 301 45 338T99 398Q134 425 164 429Q170 431 332 431Q492 431 497 429Q517 424 517 402Q517 388 508 376T485 360Q479 358 389 358T299 356Q298 355 283 274T251 109T233 20Q228 5 215 -4T186 -13Q153 -13 153 20V30L203 192Q214 228 227 272T248 336L254 357Q254 358 208 358Q206 358 197 358T183 359Q105 359 61 295Q56 287 53 286T39 284",120592:"413 384Q413 406 432 424T473 443Q492 443 507 425T523 367Q523 334 508 270T468 153Q424 63 373 27T282 -10H268Q220 -10 186 2T135 36T111 78T104 121Q104 170 138 262T173 379Q173 380 173 381Q173 390 173 393T169 400T158 404H154Q131 404 112 385T82 344T65 302T57 280Q55 278 41 278H27Q21 284 21 287Q21 299 34 333T82 404T161 441Q200 441 225 419T250 355Q248 336 247 334Q247 331 232 291T201 199T185 118Q185 68 211 47T275 26Q317 26 355 57T416 132T452 216T465 277Q465 301 457 318T439 343T421 361T413 384",120593:"92 210Q92 176 106 149T142 108T185 85T220 72L235 70L237 71L250 112Q268 170 283 211T322 299T370 375T429 423T502 442Q547 442 582 410T618 302Q618 224 575 152T457 35T299 -10Q273 -10 273 -12L266 -48Q260 -83 252 -125T241 -179Q236 -203 215 -212Q204 -218 190 -218Q159 -215 159 -185Q159 -175 214 -2L209 0Q204 2 195 5T173 14T147 28T120 46T94 71T71 103T56 142T50 190Q50 238 76 311T149 431H162Q183 431 183 423Q183 417 175 409Q134 361 114 300T92 210ZM574 278Q574 320 550 344T486 369Q437 369 394 329T323 218Q309 184 295 109L286 64Q304 62 306 62Q423 62 498 131T574 278",120594:"576 -125Q576 -147 547 -175T487 -204H476Q394 -204 363 -157Q334 -114 293 26L284 59Q283 58 248 19T170 -66T92 -151T53 -191Q49 -194 43 -194Q36 -194 31 -189T25 -177T38 -154T151 -30L272 102L265 131Q189 405 135 405Q104 405 87 358Q86 351 68 351Q48 351 48 361Q48 369 56 386T89 423T148 442Q224 442 258 400Q276 375 297 320T330 222L341 180Q344 180 455 303T573 429Q579 431 582 431Q600 431 600 414Q600 407 587 392T477 270Q356 138 353 134L362 102Q392 -10 428 -89T490 -168Q504 -168 517 -156T536 -126Q539 -116 543 -115T557 -114T571 -115Q576 -118 576 -125",120595:"161 441Q202 441 226 417T250 358Q250 338 218 252T187 127Q190 85 214 61Q235 43 257 37Q275 29 288 29H289L371 360Q455 691 456 692Q459 694 472 694Q492 694 492 687Q492 678 411 356Q329 28 329 27T335 26Q421 26 498 114T576 278Q576 302 568 319T550 343T532 361T524 384Q524 405 541 424T583 443Q602 443 618 425T634 366Q634 337 623 288T605 220Q573 125 492 57T329 -11H319L296 -104Q272 -198 272 -199Q270 -205 252 -205H239Q233 -199 233 -197Q233 -192 256 -102T279 -9Q272 -8 265 -8Q106 14 106 139Q106 174 139 264T173 379Q173 380 173 381Q173 390 173 393T169 400T158 404H154Q131 404 112 385T82 344T65 302T57 280Q55 278 41 278H27Q21 284 21 287Q21 299 34 333T82 404T161 441",120596:"495 384Q495 406 514 424T555 443Q574 443 589 425T604 364Q604 334 592 278T555 155T483 38T377 -11Q297 -11 267 66Q266 68 260 61Q201 -11 125 -11Q15 -11 15 139Q15 230 56 325T123 434Q135 441 147 436Q160 429 160 418Q160 406 140 379T94 306T62 208Q61 202 61 187Q61 124 85 100T143 76Q201 76 245 129L253 137V156Q258 297 317 297Q348 297 348 261Q348 243 338 213T318 158L308 135Q309 133 310 129T318 115T334 97T358 83T393 76Q456 76 501 148T546 274Q546 305 533 325T508 357T495 384",120597:"202 508Q179 508 169 520T158 547Q158 557 164 577T185 624T230 675T301 710L333 715H345Q378 715 384 714Q447 703 489 661T549 568T566 457Q566 362 519 240T402 53Q321 -22 223 -22Q123 -22 73 56Q42 102 42 148V159Q42 276 129 370T322 465Q383 465 414 434T455 367L458 378Q478 461 478 515Q478 603 437 639T344 676Q266 676 223 612Q264 606 264 572Q264 547 246 528T202 508ZM430 306Q430 372 401 400T333 428Q270 428 222 382Q197 354 183 323T150 221Q132 149 132 116Q132 21 232 21Q244 21 250 22Q327 35 374 112Q389 137 409 196T430 306",120598:"227 -11Q149 -11 95 41T40 174Q40 262 87 322Q121 367 173 396T287 430Q289 431 329 431H367Q382 426 382 411Q382 385 341 385H325H312Q191 385 154 277L150 265H327Q340 256 340 246Q340 228 320 219H138V217Q128 187 128 143Q128 77 160 52T231 26Q258 26 284 36T326 57T343 68Q350 68 354 58T358 39Q358 36 357 35Q354 31 337 21T289 0T227 -11",120599:"537 500Q537 474 533 439T524 383L521 362Q558 355 561 351Q563 349 563 345Q563 321 552 318Q542 318 521 323L510 326Q496 261 459 187T362 51T241 -11Q100 -11 100 105Q100 139 127 242T154 366Q154 405 128 405Q107 405 92 377T68 316T57 280Q55 278 41 278H27Q21 284 21 287Q21 291 27 313T47 368T79 418Q103 442 134 442Q169 442 201 419T233 344Q232 330 206 228T180 98Q180 26 247 26Q292 26 332 90T404 260L427 349Q422 349 398 359T339 392T289 440Q265 476 265 520Q265 590 312 647T417 705Q463 705 491 670T528 592T537 500ZM464 564Q464 668 413 668Q373 668 339 622T304 522Q304 494 317 470T349 431T388 406T421 391T435 387H436L443 415Q450 443 457 485T464 564",120600:"228 325Q170 322 156 316T127 309Q108 309 104 314Q99 319 99 322T108 341Q125 376 171 400T268 425H271Q302 425 319 396Q328 377 328 358Q328 332 324 314Q311 270 286 221Q274 194 274 192H275Q339 234 484 325T639 421Q669 434 691 434T723 425T734 406Q734 394 719 381Q715 376 644 330L575 287L566 267Q543 233 526 176Q520 160 515 143T508 115T506 105Q506 103 533 103Q585 103 607 110T641 118Q670 118 670 107Q670 100 661 85Q643 50 598 27T504 3Q465 3 450 36Q441 51 441 73Q441 84 444 96Q452 146 484 205L497 236L324 125Q143 12 135 10Q103 -6 77 -6Q61 -6 49 2T37 21Q37 36 49 46T124 96L195 141L204 156Q219 179 243 248T264 323Q264 325 228 325",120601:"409 688Q413 694 421 694H429H442Q448 688 448 686Q448 679 418 563Q411 535 404 504T392 458L388 442Q388 441 397 441T429 435T477 418Q521 397 550 357T579 260T548 151T471 65T374 11T279 -10H275L251 -105Q245 -128 238 -160Q230 -192 227 -198T215 -205H209Q189 -205 189 -198Q189 -193 211 -103L234 -11Q234 -10 226 -10Q221 -10 206 -8T161 6T107 36T62 89T43 171Q43 231 76 284T157 370T254 422T342 441Q347 441 348 445L378 567Q409 686 409 688ZM122 150Q122 116 134 91T167 53T203 35T237 27H244L337 404Q333 404 326 403T297 395T255 379T211 350T170 304Q152 276 137 237Q122 191 122 150ZM500 282Q500 320 484 347T444 385T405 400T381 404H378L332 217L284 29Q284 27 285 27Q293 27 317 33T357 47Q400 66 431 100T475 170T494 234T500 282",120602:"205 -174Q136 -174 102 -153T67 -76Q67 -25 91 85T127 234Q143 289 182 341Q252 427 341 441Q343 441 349 441T359 442Q432 442 471 394T510 276Q510 169 431 80T253 -10Q226 -10 204 -2T169 19T146 44T132 64L128 73Q128 72 124 53T116 5T112 -44Q112 -68 117 -78T150 -95T236 -102Q327 -102 356 -111T386 -154Q386 -166 384 -178Q381 -190 378 -192T361 -194H348Q342 -188 342 -179Q342 -169 315 -169Q294 -169 264 -171T205 -174ZM424 322Q424 359 407 382T357 405Q322 405 287 376T231 300Q221 276 204 217Q188 152 188 116Q188 68 210 47T259 26Q297 26 334 62Q367 92 389 158T418 266T424 322",120603:"206 -10Q158 -10 136 24T114 110Q114 233 199 349L205 358H184Q144 358 121 347Q108 340 95 330T75 312T61 295T53 285Q51 284 38 284Q19 284 19 294Q19 300 38 329T93 391T164 429Q171 431 532 431Q799 431 803 430Q823 423 823 402Q823 377 801 364Q790 358 766 358Q748 358 748 357Q748 355 749 348T752 327T754 297Q754 258 738 207T693 107T618 24T520 -10Q488 -10 466 2T432 36T416 77T411 120Q411 128 410 128T404 122Q373 71 323 31T206 -10ZM714 296Q714 316 707 358H251Q250 357 244 348T230 328T212 301T193 267T176 229T164 187T159 144Q159 62 222 62Q290 62 349 127T432 285Q433 286 434 288T435 291T437 293T440 294T444 294T452 294H466Q472 288 472 286Q472 285 464 244T456 170Q456 62 534 62Q604 62 659 139T714 296",120604:"65 0Q45 0 45 18Q48 52 61 60Q65 62 81 62Q155 62 165 74Q166 74 265 228T465 539T569 699Q576 707 583 709T611 711T637 710T649 700Q650 697 695 380L741 63L784 62H827Q839 50 839 45L835 29Q831 9 827 5T806 0Q803 0 790 0T743 1T657 2Q585 2 547 1T504 0Q481 0 481 17Q484 54 497 60Q501 62 541 62Q580 62 580 63Q580 68 573 121T564 179V181H308L271 124Q236 69 236 67T283 62H287Q316 62 316 46Q316 26 307 8Q302 3 295 0L262 1Q242 2 168 2Q119 2 93 1T65 0ZM537 372Q533 402 528 435T521 486T518 504V505Q517 505 433 375L348 244L451 243Q555 243 555 244L537 372",120605:"258 624H235Q214 624 209 626T199 639Q203 678 216 684Q220 686 449 686H477H586Q684 686 733 677T817 634Q853 598 853 547Q853 499 826 460T761 401T695 371T654 360H653L662 358Q670 357 683 354T712 344T744 327T774 303T795 269T804 224Q804 148 732 79T533 1Q524 0 288 0H58Q47 5 43 15Q47 54 60 60Q64 62 113 62H162L302 623Q302 624 258 624ZM703 550Q703 571 695 586T675 609T656 619T643 623L545 624H447L417 504Q386 384 386 383T470 382Q554 383 565 385Q632 397 667 447T703 550ZM651 240Q651 265 645 282T626 309T608 322T592 329Q587 330 479 331H373L340 198Q307 65 306 64Q306 62 406 62L507 63L519 65Q565 76 596 107T639 171T651 240",120606:"257 618H231Q198 618 198 636Q202 672 214 678L219 680H763Q769 677 772 673T776 666L777 664Q777 659 766 549T751 433Q745 424 723 424Q704 424 699 427T693 441Q693 444 695 467T697 513Q697 543 689 563T670 594T636 610T592 617T534 618H516H456L455 614Q455 613 387 339T317 64Q317 62 375 62H411Q430 62 438 59T447 44Q444 7 430 2Q426 0 416 0Q409 0 359 1T231 2Q152 2 111 1T65 0Q48 0 43 15Q47 54 60 60Q64 62 113 62H162L163 66Q163 67 231 341T301 616Q301 618 257 618",120607:"65 0Q59 6 59 9T61 16Q64 20 334 357T608 698Q616 706 629 710Q630 710 634 710T644 710T656 711Q686 711 694 703Q698 699 700 693Q706 674 805 345T904 14Q904 7 894 1L479 0H65ZM630 342L567 551L232 134L462 133H693Q693 137 630 342",120608:"257 618H231Q198 618 198 636Q202 672 214 678L219 680H811Q817 677 820 673T824 666L825 664Q825 659 814 549T799 433Q793 424 771 424Q752 424 746 427T740 441Q740 445 742 466T744 505Q744 561 722 585T646 616Q639 617 545 618H456Q456 617 427 502T398 385Q398 384 435 384Q461 385 471 385T499 391T526 405T545 433T562 478Q566 494 571 497T595 501H604Q622 501 626 486Q626 482 593 349T557 213Q552 205 530 205Q499 205 499 219Q499 222 503 242T508 281Q508 308 491 314T429 322Q425 322 423 322H382L317 64Q317 62 390 62Q460 62 493 64T569 80T640 124Q665 149 686 187T719 253T733 283Q739 289 760 289Q791 289 791 274Q791 267 763 201T706 71L678 8Q676 4 667 0H58Q47 5 43 15Q47 54 60 60Q64 62 113 62H162L163 66Q163 67 231 341T301 616Q301 618 257 618",120609:"223 430Q192 430 192 448Q192 450 225 561T261 677Q265 683 270 684Q273 686 534 686Q796 686 797 685Q805 682 805 673Q805 668 804 661T800 648T798 641Q796 637 531 352L266 67L329 66H364Q412 66 446 70T523 96T596 157Q617 186 630 220T649 273T663 297Q667 299 684 299H688Q715 299 715 281Q715 278 673 145T628 8Q626 4 617 0H348Q289 0 221 0T139 -1Q112 -1 99 -1T78 1T69 5T68 12Q68 16 71 31T77 49L84 57Q91 65 104 79T133 110T170 151T213 196L610 624H540Q533 624 514 624T488 624T467 623T443 620T422 616T398 609T373 600Q292 560 255 449Q251 436 246 433T223 430",120610:"258 624H235Q214 624 209 626T199 639Q203 678 216 684Q220 686 239 686Q290 684 403 684Q475 684 512 685T553 686Q576 686 576 668Q572 632 560 626Q555 624 506 624H457L399 389Q399 388 547 388H695L753 623Q753 624 709 624H686Q665 624 660 626T650 639Q653 678 668 684Q672 686 681 686Q685 686 726 685T847 684Q902 684 937 684T986 685T1004 686Q1027 686 1027 668Q1023 632 1011 626Q1006 624 957 624H908L839 344Q768 64 768 63T812 62H839Q871 62 871 44Q867 6 854 2L850 0L808 1Q782 2 675 2Q600 2 560 1T516 0Q499 0 494 15Q498 54 511 60Q515 62 564 62H613L614 66L679 324Q679 326 531 326H383L382 322L317 64Q317 62 361 62H388Q420 62 420 44Q416 6 403 2L399 0L357 1Q331 2 224 2Q149 2 109 1T65 0Q48 0 43 15Q47 54 60 60Q64 62 113 62H162L302 623Q302 624 258 624",120611:"358 -17Q218 -17 136 49T54 243Q54 298 70 356T123 474T211 582T338 663T504 702H527Q578 702 590 701Q709 688 776 622T844 441Q844 379 825 315T765 192T668 86T532 11T358 -17ZM700 474Q700 525 685 561T642 616T587 643T528 652Q390 652 301 534Q252 472 225 373T198 210Q198 160 214 125T256 71T311 44T372 36Q484 36 571 119Q639 189 669 299T700 474ZM366 428Q366 425 364 419T362 411H466L570 412L573 422Q576 437 581 441T604 445Q620 445 623 444Q636 440 636 429Q636 423 616 340T593 253Q586 243 572 243H566Q545 243 539 249Q536 251 535 253T534 258T534 263T535 270T537 277H329L326 266Q323 251 318 247T295 243Q279 243 276 244Q263 248 263 259Q263 265 283 346Q288 366 295 394Q304 431 308 438T326 445H334H338Q366 445 366 428",120612:"247 624Q242 624 233 624T220 623Q186 623 186 640Q186 647 190 664T202 684Q206 686 226 686Q277 684 393 684Q435 684 471 684T528 685T553 686Q573 686 573 670Q573 650 564 632Q556 624 537 624H501H449L380 344Q309 64 309 63T356 62Q361 62 370 62T384 63Q417 63 417 46Q417 26 408 8Q403 3 396 0L352 1Q325 2 216 2T82 1L45 0Q30 7 30 16Q33 51 46 60Q51 62 102 62H154L294 623Q294 624 247 624",120613:"536 0Q522 6 522 18Q522 35 533 57Q539 62 557 62Q595 62 601 65L472 330L365 255L342 160Q318 65 317 64Q317 62 361 62H388Q420 62 420 44Q416 6 403 2L399 0L357 1Q331 2 224 2Q149 2 109 1T65 0Q48 0 43 15Q47 54 60 60Q64 62 113 62H162L302 623Q302 624 258 624H235Q214 624 209 626T199 639Q203 678 216 684Q220 686 239 686Q290 684 403 684Q475 684 512 685T553 686Q576 686 576 668Q572 632 560 626Q555 624 506 624H457L422 481Q386 339 386 337L785 621Q779 624 749 624Q726 624 726 641Q726 645 730 659Q734 675 736 679T747 686L786 685Q812 684 888 684Q908 684 934 685T968 686Q1003 686 1003 669Q1003 646 991 629Q985 624 967 624Q918 624 888 617Q884 617 874 613L865 609Q864 608 732 515T599 420Q599 418 686 242T775 65Q784 62 829 62Q847 62 850 61T860 54Q862 52 862 43Q862 10 845 1Q844 1 842 1T836 0T797 1T694 2Q599 2 573 1L536 0",120614:"439 0Q425 6 425 18Q425 35 436 57Q442 62 485 62Q525 62 525 64L478 483Q478 484 465 463T422 394T350 277Q222 69 222 68Q223 67 224 67Q229 64 271 62Q290 62 297 59T305 45Q305 38 302 28Q297 9 293 5T274 0Q270 0 238 1T159 2Q133 2 105 2T72 1Q56 1 52 3T44 15Q44 19 48 35Q53 55 58 58T89 62Q142 64 151 73Q154 76 345 387T538 699Q550 711 570 711H580H592Q613 711 618 695Q619 692 654 379T690 63Q690 62 726 62H746Q776 62 776 44Q773 7 759 2Q755 0 747 0Q743 0 707 1T600 2Q502 2 476 1L439 0",120615:"258 624H231Q214 624 208 626T199 639Q203 678 216 684Q220 686 347 686H473Q474 685 478 682T484 677Q487 673 535 413L584 153L608 187Q631 221 672 281T761 410Q935 663 943 671Q949 678 962 686H1082H1166Q1201 686 1210 683T1219 668Q1215 632 1203 626Q1199 624 1149 624H1100L1031 344Q960 64 960 63T1004 62H1031Q1063 62 1063 44Q1060 7 1046 2Q1042 0 1034 0Q1030 0 990 1T875 2Q804 2 767 1T725 0H723Q707 0 703 15Q707 54 720 60Q724 62 773 62H822Q961 618 961 619L754 318Q546 15 543 12Q531 0 510 0Q500 0 495 0T484 5T477 19Q477 20 421 315L367 604L299 335Q234 72 234 68Q234 62 302 62Q334 62 334 46Q332 8 317 2Q313 0 306 0Q301 0 267 1T181 2Q125 2 96 1T63 0Q48 0 43 15Q43 19 47 35Q52 55 57 58T94 62Q147 64 164 69L233 345Q302 619 302 622Q302 624 258 624",120616:"258 624H235Q214 624 209 626T199 639Q203 678 216 684Q220 686 344 686H434Q464 686 477 680Q480 677 607 454Q738 227 739 227Q742 227 789 418T836 618Q836 620 835 620L821 622Q811 622 779 624Q755 624 749 625T740 632Q737 635 737 644Q737 656 742 669T754 685Q755 685 757 685T763 686Q768 686 803 685T890 684Q925 684 951 684T990 685T1006 686Q1014 686 1016 684Q1027 679 1027 668Q1023 632 1011 626Q1007 624 978 624Q912 622 907 617Q907 616 831 314T753 8Q749 0 723 0H712Q699 0 692 7Q692 8 671 44T607 155T526 296L361 580L296 323Q234 74 234 68T302 62H307Q334 62 334 44Q330 6 317 2L313 0L280 1Q260 2 181 2Q125 2 96 1T63 0Q48 0 43 15Q43 19 47 35Q52 55 57 58T94 62Q147 64 164 69L233 345Q302 619 302 622Q302 624 258 624",120617:"206 466Q175 466 175 484Q175 487 201 574T230 666Q235 673 241 675H547Q853 675 857 673Q867 668 867 657Q867 655 850 569T832 478Q827 466 808 466H802H795Q773 466 771 481Q771 486 775 508T779 541V549H774Q755 552 505 552Q281 551 267 548Q262 548 255 533T242 496T233 472Q228 466 206 466ZM259 255H252Q231 255 228 270Q228 275 248 355T270 439Q277 448 288 448H298Q321 448 326 440Q331 434 326 414Q326 413 486 413H647L650 424Q654 441 658 444T678 448H683H693Q702 448 705 446T714 432L694 348Q674 267 669 261Q664 255 652 255H643Q622 255 617 261Q613 265 613 272T613 283T616 289Q616 290 456 290H295L294 285Q293 280 292 275T288 265T281 257Q278 255 259 255ZM150 131Q150 124 281 123Q346 123 390 123Q640 123 664 126Q668 127 675 127Q686 131 704 198Q708 213 713 216T733 220H738Q755 220 759 218Q768 213 768 203Q768 198 741 105T710 8Q708 4 699 0H388Q77 0 73 2Q62 7 62 18Q62 27 81 115Q99 206 102 212Q106 220 120 220H129Q140 220 145 220T155 215T160 202Q160 196 159 192Q150 145 150 131",120618:"53 245Q53 297 70 356T125 478T216 590T349 671T523 703Q656 703 735 637T815 445Q815 378 791 307Q727 104 527 17Q437 -17 344 -17Q289 -17 242 -5T150 35T79 116T53 245ZM664 489Q664 575 618 611T511 648Q463 648 416 627T334 570Q297 531 270 472T230 355T213 261T208 206Q208 177 215 151T237 98T284 56T358 40Q440 40 510 98T618 270Q664 400 664 489",120619:"257 618H231Q198 618 198 636Q202 672 214 678L219 680H1011Q1022 675 1026 665Q1022 626 1009 620Q1005 618 956 618H907L906 614Q906 613 838 339T768 64Q768 62 812 62H839Q871 62 871 44Q867 6 854 2L850 0L808 1Q782 2 675 2Q600 2 560 1T516 0Q499 0 494 15Q498 54 511 60Q515 62 564 62H613L614 66Q614 67 682 341T752 616Q752 618 604 618H456L455 614Q455 613 387 339T317 64Q317 62 361 62H388Q420 62 420 44Q416 6 403 2L399 0L357 1Q331 2 224 2Q149 2 109 1T65 0Q48 0 43 15Q47 54 60 60Q64 62 113 62H162L163 66Q163 67 231 341T301 616Q301 618 257 618",120620:"162 62L302 623Q302 624 258 624H234Q214 624 209 626T200 638Q200 677 217 684Q220 686 439 686Q667 685 684 682Q686 681 693 680Q713 677 733 671T782 649T829 602T847 528Q847 450 784 382T604 293Q571 288 469 287H373L346 176Q340 151 333 122T321 78L317 64Q317 62 361 62H387Q420 62 420 44Q417 10 404 2L399 0L357 1Q331 2 224 2Q149 2 109 1T65 0Q43 0 43 17Q43 21 47 33Q52 54 57 58T89 62H113H162ZM692 558Q692 611 617 622Q610 623 529 624H452L381 343H458H492Q604 343 641 389Q662 414 677 471T692 558",120622:"847 430Q828 430 823 434T817 450Q817 454 817 466T818 487Q818 526 809 551T784 591T737 613T675 622T590 624H528H430L513 487Q594 351 596 345Q596 335 590 330Q583 323 418 204L250 81L363 80Q533 80 591 89T694 142Q739 185 765 252Q772 268 776 271T799 274Q816 274 820 272Q832 266 830 254Q829 250 784 130T736 7Q732 3 725 0H405Q84 0 80 2Q69 7 69 18Q69 26 75 32Q76 32 98 48T168 100T255 164L432 293Q429 300 329 465T225 637Q223 675 245 686H888Q900 680 902 671Q902 667 890 556T876 441Q871 430 847 430",120623:"498 62Q511 58 511 43Q511 10 494 1L490 0Q487 0 482 0T424 1T271 2Q201 2 157 2T94 1T72 0H70Q46 0 46 17Q49 54 62 60L66 62H137Q208 62 209 63L218 98Q227 134 244 203T278 339L347 613H300Q262 612 246 611T198 599T146 564Q128 545 114 512T91 454T79 425Q73 419 52 419Q22 419 22 434Q22 440 41 498T80 611L100 666Q105 673 111 675H434Q758 675 762 673Q772 668 772 657Q772 655 756 549T738 434Q735 419 711 419H707Q690 419 686 421Q677 425 677 434Q676 436 678 449T683 485T686 529Q686 553 679 569T662 594T631 607T593 612T544 613H502L433 340Q418 279 400 207T374 100L365 65L364 62H498",120624:"32 544Q32 586 91 644T229 703Q277 703 311 683T363 628T389 560T397 491V478L404 491Q455 589 526 646T677 703Q730 703 766 671T802 584Q802 551 793 541T766 531H757L736 532L732 535L729 539V549Q731 569 715 575T658 581H650Q545 581 477 443Q453 392 443 351Q441 345 424 273T389 133T371 64Q371 62 428 62H461Q483 62 492 59T501 44Q498 10 485 2L480 0L431 1Q401 2 278 2T127 1L85 0Q71 5 71 17Q71 24 74 33Q77 46 78 49T84 57T95 61T118 62H154H216Q232 126 249 193T273 287T287 345T296 388T299 416T300 452Q294 581 198 581Q154 581 132 575T106 562T99 546T86 533Q82 531 60 531L39 532Q32 537 32 544",120625:"323 624H293Q267 624 261 626T251 639Q255 678 268 684Q272 686 293 686Q348 684 475 684Q557 684 600 685T647 686H648Q671 686 671 668Q667 632 655 626Q650 624 588 624H525L500 520Q500 519 520 518T579 507T656 480Q737 440 737 372Q737 294 648 237Q562 180 426 169L412 168L399 118Q386 66 386 65L385 62H443H479Q498 62 506 59T515 44Q511 8 499 2L494 0L447 1Q417 2 298 2Q212 2 167 1T118 0Q100 0 95 15Q99 54 112 60Q116 62 179 62H241Q242 64 254 114T266 167Q266 168 262 168Q256 168 237 170T180 181T110 205T54 249T29 316Q29 391 112 446T327 516Q345 518 349 518Q351 518 353 518L355 519Q356 520 368 570T381 623Q381 624 323 624ZM342 466Q341 467 339 467Q320 467 283 455T225 420Q181 361 181 296Q181 273 193 257T222 233T254 222T277 219L280 220Q281 220 311 342T342 466ZM583 389Q583 409 576 423T557 444T533 456T509 463T492 467H486L455 343Q444 300 437 271T428 231T426 219Q430 219 445 222T483 232T521 250Q551 269 567 310T583 389",120626:"931 686Q953 686 953 670Q953 650 944 632Q936 624 924 624H914Q823 624 803 611Q800 609 696 503T591 396Q591 394 667 229L743 62H787H814Q846 62 846 44Q843 7 829 2Q825 0 817 0Q813 0 775 1T664 2Q590 2 551 1T508 0H507Q484 0 484 18Q484 19 488 37Q492 56 497 58T534 62L566 63Q567 64 520 169T471 274Q469 274 369 172T268 67L315 62Q320 62 328 62L335 61Q347 58 347 44Q344 10 331 2L326 0L287 1Q263 2 177 2Q95 2 78 1L53 0Q38 6 38 17Q38 40 50 57Q56 62 78 62Q169 62 188 75Q194 77 435 324L444 334L439 347Q437 351 373 492L313 624H268H246Q220 624 212 632Q210 636 210 642Q210 655 215 669T227 684Q230 686 247 686Q295 684 398 684Q438 684 472 684T527 685T551 686Q567 686 572 671Q572 667 568 651Q563 631 558 628T523 624T492 623H488L526 540Q563 457 564 457Q564 456 574 466T604 496T645 537L724 619Q716 622 677 624H673Q645 624 645 640Q645 660 654 678Q659 683 666 686L704 685Q728 684 813 684Q847 684 873 684T913 685T931 686",120627:"205 471Q205 445 196 403T186 333Q186 303 194 281T218 248T240 233T262 224L361 623Q361 624 303 624Q296 624 284 624T266 623Q232 623 232 641Q232 648 235 657Q240 678 244 682T268 686H273Q329 684 457 684Q502 684 540 684T599 685T626 686H628Q651 686 651 668Q649 633 631 624H505L407 227Q410 228 416 229T439 239T472 259T507 294T539 345Q549 365 563 416T597 498T649 538Q657 540 717 540Q725 540 737 540T755 541Q790 541 790 524Q790 512 784 497Q780 491 767 490T742 477Q736 471 731 463T722 449T715 433T710 419T705 403T701 389Q686 340 658 302T599 240T530 201T463 179T404 169L391 168L379 116Q365 67 365 63Q365 62 422 62H455Q477 62 486 59T495 44Q492 10 479 2L474 0L427 1Q397 2 278 2T131 1L90 0Q76 5 76 17Q76 24 79 33Q82 46 83 49T89 57T100 61T123 62H159H221Q247 162 247 168H244Q241 169 239 169Q202 176 178 182T123 207T74 252Q46 291 46 351Q46 375 52 404T59 454Q59 489 40 489Q32 489 27 494T22 507Q22 535 37 538Q40 540 99 540H128Q168 540 186 528T205 471",120628:"162 119Q181 115 235 115L273 116Q273 133 231 222T180 345Q173 368 173 391V406V414Q173 477 214 540Q255 600 315 635Q353 661 423 682T585 703Q656 703 711 690T799 656T851 608T879 555T886 503Q886 449 860 401Q840 359 810 322T725 230T643 146Q619 117 619 116T650 115Q707 115 722 120Q730 123 750 165T775 210Q779 212 796 212Q828 212 828 196Q828 191 807 144T764 52L743 7Q740 4 740 4T733 2T717 0T686 0H632H573Q535 0 526 3T517 17Q517 44 544 103T617 243T671 341Q729 454 729 535Q729 599 686 625T583 652Q549 652 517 645T450 616T388 561T344 470T327 340Q327 304 331 237T336 135Q336 93 330 50T313 2Q308 0 208 0H142Q107 0 100 4T93 25Q93 28 93 41T95 77T96 118L100 199Q105 208 109 210T131 212Q147 212 151 210T161 199V160Q161 131 162 125V119",120630:"39 166Q39 213 59 261T117 353T219 424T362 452Q420 452 466 433T536 384T573 325T586 269V265Q593 272 609 308T636 381Q640 397 644 399T669 402H680Q700 402 700 388Q700 379 691 351T659 276T604 188L593 173L595 153Q600 79 612 43H618Q634 45 642 51T653 64T658 71Q661 73 684 73Q712 73 712 59Q712 39 685 16T603 -7Q588 -7 575 -5T551 2T532 12T516 24T503 37T494 49T487 60T481 69L469 61Q362 -8 251 -8Q159 -8 99 36T39 166ZM260 43Q310 43 361 63T438 101T465 124Q458 240 453 277Q435 401 354 401Q291 401 245 355Q230 337 217 313Q201 279 186 216T170 126Q170 72 208 54Q230 43 260 43",120631:"59 -194H49Q31 -194 28 -182Q28 -178 107 139T192 473Q212 533 248 580T324 652T395 689T450 701H461Q514 701 551 688T605 652T630 607T637 561Q637 546 634 526T611 465T556 393Q572 382 590 347T608 262Q608 146 522 69T299 -8Q279 -8 261 -6T228 2T204 13T183 26T169 37T157 48L150 56L120 -64Q113 -90 104 -128Q93 -175 89 -184T73 -194H59ZM531 592Q531 651 463 651Q399 651 341 600T253 466Q250 458 217 327T182 185Q180 176 180 159Q180 108 212 76T301 44Q330 44 354 51T393 65T423 91T444 118T459 151T468 179T475 206Q490 264 491 296Q491 313 489 326T484 345L482 350Q481 350 477 348T464 344T444 340T413 335T372 333T334 334T301 340T274 355T265 380Q265 444 397 444Q425 444 445 441T476 436L485 433Q489 433 499 458Q509 482 520 527T531 592ZM424 390Q424 393 389 393Q383 393 374 393T362 392Q348 392 333 388Q345 384 379 384Q424 384 424 390",120632:"5 269Q5 285 19 312T57 368T124 421T215 451H241Q274 451 303 439T353 406T389 361T416 311T432 266T442 232L444 220L446 216L450 226Q473 278 513 357T561 441Q566 444 584 444H594Q617 444 617 430Q617 426 596 389T536 273T462 110L452 84L451 70Q447 12 427 -76T388 -192Q375 -211 355 -211Q339 -211 332 -198T325 -171Q325 -114 386 64L393 84V98Q393 181 371 241Q360 280 319 303T210 327Q158 327 126 317T84 296T68 272T59 258Q55 256 36 256Q23 256 18 256T9 260T5 269",120633:"216 610Q216 640 229 664T262 700T299 719T327 725Q330 725 406 709T487 690Q513 681 513 651Q513 627 494 607T450 587Q417 587 378 631Q346 663 314 663Q286 663 272 639Q271 637 271 634Q271 609 344 536L397 484Q438 448 458 410T478 313Q478 234 443 147T338 18Q298 -8 249 -8Q214 -8 180 0T113 26T60 81T39 168Q39 200 50 237T87 316T160 391T272 442L260 465Q216 553 216 610ZM348 235Q348 274 336 313T310 372L298 392Q295 391 290 390T269 380T241 359T212 323T185 267Q157 168 157 130Q157 83 186 63T255 43Q280 43 300 67Q317 89 332 138T348 235",120634:"224 -17Q126 -17 81 22T36 112Q36 178 84 226L93 236L88 246Q79 264 79 289Q79 341 124 388Q201 461 333 461Q402 461 455 425Q480 409 481 390Q481 365 464 350T428 334Q415 334 387 352T313 370Q141 370 141 293Q141 275 146 270Q147 270 148 270T155 272Q202 291 263 291H270Q349 291 349 244Q349 195 281 183Q274 182 239 182Q201 182 184 185T137 200Q123 188 112 168T100 129T112 98T148 81T189 75T237 74H243H251Q288 74 310 75T359 86T398 112Q405 124 417 124Q426 124 432 117T439 100Q439 88 427 70T390 32T322 -3T224 -17ZM286 238Q286 240 253 240Q245 240 234 239T216 237T209 235Q209 232 250 232Q286 232 286 238",120635:"361 711Q373 711 381 703T389 683Q389 681 388 676T383 656T376 618V612H379Q385 618 429 618Q521 618 521 572Q521 551 506 534Q483 510 415 507Q385 507 371 511T336 536L326 528Q254 472 204 381T154 209Q154 190 157 177Q159 165 162 154T170 135T182 119T195 106T212 95T229 86T249 78T269 72T290 66T311 60Q385 37 388 36Q437 14 454 -36Q456 -46 456 -64Q456 -83 455 -90Q445 -132 413 -167T333 -202Q300 -202 257 -191T206 -169Q203 -164 203 -158Q203 -148 210 -140T231 -130Q239 -130 263 -139T326 -151H329Q337 -151 342 -150T352 -143T357 -123Q356 -117 355 -113T350 -104T344 -96T335 -90T324 -85T310 -80T294 -74T275 -68T254 -62Q253 -62 231 -56T205 -48T179 -39T150 -26T125 -10T100 11T80 37T62 70T53 109T48 157Q48 281 123 396T317 586V612Q319 638 320 649T325 678T338 703T361 711ZM454 564Q445 567 424 567Q407 567 398 565T387 563Q387 558 411 558Q434 558 450 562L454 564",120636:"24 296Q25 302 27 312T41 350T65 397T103 435T157 452Q202 452 233 435Q267 419 284 384L294 392Q304 401 316 410T348 429T388 445Q410 451 445 451H453Q468 451 482 450T519 443T558 425T587 391T600 337V327Q600 311 538 64Q484 -158 478 -168Q457 -211 409 -211Q386 -211 372 -197T357 -161Q357 -158 415 80Q476 330 477 348Q477 366 473 377T461 393T448 399T432 400H427Q379 400 335 363Q300 332 280 298Q277 293 246 170T213 40Q205 22 186 7T142 -8T103 7T89 39Q89 49 106 117T142 260T164 351Q166 363 166 372Q166 402 148 402Q126 402 110 369Q100 350 90 310Q85 289 82 286T60 282H55H44Q24 282 24 296",120637:"213 -8Q130 -8 85 50T40 200V207Q40 303 83 428Q122 535 189 608Q279 702 381 702Q410 702 437 693T492 661T537 593T554 486Q554 428 539 362T495 230T425 111T330 25T213 -8ZM433 562Q433 600 419 625T377 651Q363 651 348 644T311 619T268 557T229 453Q225 441 217 411T208 378H401Q433 500 433 562ZM161 140Q161 43 217 43Q249 43 280 74Q310 103 332 150T378 287Q385 313 385 315Q385 316 289 316H192Q191 308 183 275T169 205T161 140",120638:"161 -8Q111 -8 75 16T38 85Q38 95 48 121T80 214T123 368L124 374Q126 381 127 386T132 399T139 414T149 428T162 440T180 448T203 452Q226 452 241 439T257 404Q257 386 230 290T171 111Q157 73 157 57Q157 43 166 43Q209 43 258 69T322 144Q326 157 330 159T348 162H355H366Q386 162 386 148Q386 143 383 132T367 100T335 61Q301 27 253 10T161 -8",120639:"258 405Q258 394 251 364T237 308T230 281T238 284T270 306T330 349Q365 377 389 394T450 427T519 444Q545 444 559 430T574 391Q574 360 551 336T491 312Q469 312 454 326T439 364Q439 372 438 372Q433 372 395 344T320 289T283 260H285Q287 260 290 260T297 259Q495 248 495 146Q495 132 491 110T486 74Q486 43 505 43Q520 43 531 53Q559 72 578 141Q582 157 586 159T611 162H622Q642 162 642 148T627 100T578 29T504 -7H495Q435 -7 399 22T363 96Q363 111 366 122T369 142Q369 155 364 165T347 182T326 193T298 200T269 204T238 207T212 210L211 206L190 123L169 40Q161 22 142 7T98 -8T59 7T45 39Q45 48 67 139T112 317L134 404Q142 424 161 438T204 452Q226 452 242 440T258 405",120640:"95 -13Q70 -13 55 4T40 41Q40 65 61 88Q65 92 210 207T357 322L235 602Q217 640 185 643Q182 643 178 644T173 645Q161 651 161 666Q161 677 167 684T181 692Q189 694 212 694Q335 694 358 660Q362 653 500 340T647 18Q652 10 652 6Q652 -8 622 -8H589H538L526 -5Q506 1 500 8Q494 16 444 128Q442 133 440 138L387 259L265 134Q156 20 137 4T95 -13",120641:"294 -8Q265 -8 244 -5T213 1T201 4Q200 4 192 -32T172 -111T155 -168Q134 -211 86 -211Q62 -211 48 -196T34 -158Q37 -144 103 123T174 404Q182 424 201 438T244 452Q271 452 284 436T298 404Q298 392 267 269T235 114Q235 43 305 43Q342 43 375 68T418 110Q420 112 455 253T492 397Q514 444 562 444Q587 444 601 429T615 397Q615 387 599 320T563 178T542 93Q540 81 540 72Q540 42 558 42Q580 42 596 75Q606 94 616 134Q621 155 624 158T646 162H651H662Q682 162 682 148Q681 142 679 132T665 94T641 47T602 9T548 -8Q523 -8 502 -3T468 11T446 27T432 40L429 46Q367 -8 294 -8",120642:"88 382Q70 382 65 385T59 402T64 427T78 443Q79 444 157 448T247 452Q256 452 261 448T266 440L267 437Q267 432 223 252L177 71L192 77Q293 117 371 199T480 388Q489 424 511 438T556 452Q579 452 593 438T608 402Q608 378 593 340T540 251T446 152T299 62T96 -1Q91 -2 78 -2Q38 -2 38 15Q38 22 82 198L127 379Q124 382 88 382",120643:"287 648Q291 671 293 680T305 700T329 711Q339 711 347 705T356 687Q356 680 351 653T345 619Q345 615 346 615Q358 618 398 618Q490 618 490 572Q490 553 476 536T434 512Q411 508 378 508H366Q332 508 306 534L298 525Q271 496 254 456T237 375Q237 336 244 336Q272 346 319 346H325Q354 346 372 344T406 331T422 300Q422 252 350 238Q332 236 303 236Q286 236 269 238T240 242T218 247T202 252L196 254Q191 254 174 237T141 191T124 139Q124 108 151 92T267 46Q285 40 295 37Q308 33 332 25T366 13T392 3T415 -8T432 -20T445 -36T451 -55T454 -80Q454 -118 427 -153T358 -199Q349 -201 327 -201Q313 -201 298 -200T271 -196T246 -191T226 -185T210 -180T200 -176L196 -174Q187 -170 187 -158T196 -138T216 -130Q217 -130 254 -140T329 -151Q349 -151 349 -135Q349 -127 340 -122T293 -104Q260 -93 238 -85Q130 -48 115 -41Q71 -19 47 15T23 88Q23 126 48 179T130 277L144 288L136 297Q99 336 99 390Q99 456 148 514T285 602V619Q285 624 286 635T287 648ZM355 563Q362 560 376 558Q424 558 423 564Q405 567 390 567Q369 567 355 563ZM279 292Q297 287 315 287Q355 287 355 293Q355 296 321 296Q316 296 308 296L301 295Q295 295 289 294L279 292",120644:"254 -8Q191 -8 146 9T80 54T49 111T39 169Q39 206 53 247T96 329T176 402T292 446Q317 451 336 451L344 452Q353 452 359 452Q457 452 516 408T576 279Q576 169 488 81T254 -8ZM349 400Q321 400 287 385T231 338Q206 301 188 228T170 126Q170 99 178 83Q198 44 260 44Q367 44 409 157Q419 185 432 238T445 317Q445 336 443 348Q435 372 416 384T384 398T349 400",120645:"55 289H43Q23 289 23 303Q23 308 33 322Q116 434 199 443Q200 444 418 444Q591 444 617 444T652 439Q674 426 674 400Q674 378 661 360T625 335Q621 334 549 333H479L477 321Q476 312 476 279Q476 219 491 174T521 104T536 65Q536 38 511 15T457 -8Q403 -8 386 94Q384 110 384 139Q384 181 391 229T406 304L413 331Q413 333 365 333H316L315 329Q315 328 312 314T301 272T288 220Q274 167 258 103Q244 49 240 38T228 18Q225 16 224 14Q200 -8 172 -8Q146 -8 132 7T118 44Q118 54 121 61Q122 65 142 102T190 195T235 293Q250 329 250 333Q177 333 166 332Q115 328 88 301L77 290L55 289",120646:"307 -8Q277 -8 251 0T215 14L205 20Q203 18 193 -25T171 -114T155 -168Q134 -211 87 -211Q64 -211 49 -198T34 -162Q34 -158 137 254Q153 299 179 334T232 390T277 419T311 434Q357 451 403 451Q435 451 455 449T506 435T560 400Q603 357 603 285Q603 172 520 82T307 -8ZM474 343Q474 364 458 382T409 400H406Q339 400 299 341Q281 313 264 257Q261 248 242 170T222 89Q222 84 230 74T260 54T308 43Q334 43 365 57T417 110Q437 145 456 228Q474 298 474 332V343",120647:"33 209Q33 277 80 334T195 421T330 451H344Q410 451 439 429Q457 417 457 402Q457 386 445 375T420 363Q415 363 406 368T383 383T354 398Q347 400 330 400Q256 400 196 361T135 265V257Q135 242 147 225T174 199L358 107Q400 77 400 28T362 -63T271 -105Q254 -105 229 -99T195 -86Q188 -82 188 -71Q188 -56 197 -50T216 -44Q225 -44 237 -48T270 -53H282Q293 -44 293 -31Q293 -19 283 -10Q278 -4 200 33T115 76Q77 98 55 133T33 209",120648:"35 151Q35 190 51 236T99 327T184 404T306 443Q307 443 316 443T342 443T378 444T425 444T476 444Q606 444 626 444T655 439Q677 426 677 400Q677 358 639 340Q625 333 563 333Q510 333 510 331Q518 319 518 272Q518 155 437 74T226 -8Q123 -8 79 41T35 151ZM396 278Q396 314 375 323T305 332Q249 332 222 310T180 243Q171 219 162 178T153 116V110Q153 43 234 43Q347 43 382 199Q383 203 383 204Q396 255 396 278",120649:"55 289H43Q23 289 23 303Q23 308 33 322Q116 434 199 443Q200 444 386 444Q571 444 577 442Q588 441 599 432T610 402Q610 359 572 340Q561 335 547 334T452 333H353V331Q352 330 342 261T320 119T306 40Q300 18 281 3Q257 -13 233 -13Q210 -13 196 0T181 35Q181 44 182 48Q183 53 229 187T279 331Q279 333 228 333H209Q163 333 136 328T88 301L77 290L55 289",120650:"189 388Q189 396 187 398T176 401Q144 399 122 369T89 304Q84 288 81 285T61 282H55H44Q24 282 24 296Q24 306 34 330T64 382T116 431T188 452Q232 452 270 430T308 361Q308 345 275 258T241 123Q241 44 336 44H344Q380 44 415 73T474 140T511 214T526 267Q526 280 513 292Q505 301 486 311T456 333T444 367Q444 400 471 426T529 453Q555 453 579 431T604 358Q604 327 592 271T557 172Q550 157 541 142T510 97T464 47T404 9T328 -8Q264 -8 219 5T154 41T125 85T117 131Q117 182 153 277T189 388",120651:"238 4Q230 5 218 8T174 26T118 58T73 112T53 190Q53 219 60 246Q77 313 103 362T143 426T163 443Q165 444 186 444Q217 444 217 432Q217 425 188 392Q157 351 137 291T116 206Q116 127 263 109L276 107L288 139Q347 304 414 378T566 452Q621 449 662 412T703 286Q698 167 598 82T357 -8H332V-11Q332 -12 327 -46T317 -116T310 -157Q306 -180 286 -198T234 -216Q211 -216 197 -203T183 -168Q183 -160 184 -155Q184 -152 198 -112T225 -34T238 4ZM637 260Q637 303 607 322T541 341Q502 341 466 319T405 264Q368 218 356 159Q348 111 348 104Q348 103 361 103Q502 103 569 152T637 260",120652:"58 -194Q32 -194 32 -164Q32 -153 46 -139L175 -13Q296 104 296 106Q271 232 226 308Q165 401 141 401Q128 401 117 390T100 365Q94 350 91 349T69 346H45Q35 348 35 359Q35 380 62 411T133 450Q143 452 165 452Q286 452 329 402Q347 379 366 333T394 254T404 215Q404 213 405 213Q405 212 420 227T463 268T520 324Q637 437 640 438Q647 444 661 444Q667 444 676 438T685 419Q685 405 670 389T549 271L420 145Q433 85 444 53Q466 -25 509 -88T575 -151Q590 -151 600 -140T617 -114T626 -98Q629 -96 650 -96H655Q681 -96 681 -108Q681 -114 679 -119Q670 -148 646 -169T591 -199Q581 -201 550 -201Q422 -201 381 -143Q345 -88 316 20L311 39L230 -40Q144 -126 114 -153Q85 -182 77 -188T58 -194",120653:"244 141Q244 117 254 98T277 70T305 55T329 48T342 47L344 48L424 366Q501 678 505 686Q508 691 512 692T533 694T555 693T562 688T565 683Q565 678 486 362T406 45Q406 43 415 43Q467 49 514 78T590 143T636 213T653 266Q653 282 641 293T613 311T585 332T572 367Q572 397 598 425T657 453Q684 453 708 430T732 358Q732 330 723 287T706 225Q671 124 578 58T401 -8H393L370 -101Q346 -196 345 -197Q340 -202 316 -202H306Q286 -202 286 -188Q286 -187 296 -144T318 -57T331 -8Q331 -6 328 -6Q290 -6 233 11T148 62Q119 97 119 146Q119 181 154 275T190 388Q190 401 181 401Q154 401 129 375T90 306Q85 288 81 285T61 282H55H44Q24 282 24 296Q24 306 34 329T64 381T116 431T189 452Q237 452 273 428T309 362Q309 343 277 260T244 141",120654:"532 367Q532 399 559 426T618 453Q645 453 668 430T691 357Q691 319 677 261T649 171Q640 149 626 125T586 68T521 14T438 -7Q401 -7 372 7T333 30T311 57Q246 -8 165 -8Q119 -8 82 19T30 102Q24 126 24 163V178Q24 210 37 255Q61 346 118 424Q141 451 161 451Q174 451 184 443T194 419Q194 402 179 387Q91 273 91 206Q91 159 122 138T189 117T281 145V173Q283 223 294 253Q304 276 323 289T364 303Q386 303 400 287T415 250Q415 219 385 157L378 144Q378 142 388 136T419 124T462 117Q522 117 566 165T610 255Q610 288 561 320Q532 337 532 367",120655:"230 475Q202 475 189 492T175 526T186 570T221 631T288 687T389 710Q430 710 438 709Q495 701 537 679T601 629T637 568T653 509T657 459Q657 409 640 341Q617 248 581 180T507 75T424 16T348 -11T282 -17Q171 -17 113 37Q60 88 60 159Q60 192 71 231Q96 336 184 402Q264 462 366 462Q407 462 439 448T497 389L502 380Q503 381 508 403T519 463T525 531Q523 580 499 610T447 648T387 657Q324 657 283 616Q271 604 276 604Q279 604 286 600T302 583T311 555Q311 523 287 499T230 475ZM196 110Q196 41 287 41Q351 41 398 88Q422 111 437 151Q473 243 473 298Q473 386 409 409Q408 409 383 411Q316 411 278 373Q265 360 259 351T241 311T217 226Q196 143 196 110",120656:"415 89Q423 89 429 74T436 46Q436 43 434 39Q432 36 420 29T380 11T322 -5Q311 -7 281 -7Q216 -7 168 10T94 54T56 110T44 167V181Q44 262 94 329Q104 343 119 357T162 391T234 425T327 443Q328 443 348 443T383 444Q434 444 442 438Q450 430 450 416Q446 392 424 383L376 382Q306 381 278 369Q230 349 208 294Q199 274 199 268Q199 267 291 267Q305 267 325 267T353 268Q383 268 394 263T406 241Q406 214 380 206Q375 205 279 205T183 203Q174 176 174 140Q174 87 208 65T292 43Q295 43 300 43T307 44Q337 49 372 69T415 89",120657:"114 132Q114 153 140 253T166 372Q166 402 148 402Q126 402 110 369Q100 350 90 310Q85 289 82 286T60 282H55H44Q24 282 24 296Q25 302 27 312T41 350T65 397T104 435T158 452Q184 452 211 445T263 414T288 354V339L265 245Q237 134 237 118V107V102Q237 87 239 77T257 56T300 43Q395 43 455 254Q479 346 479 347L460 354Q294 408 294 528Q294 606 350 653T464 701Q536 701 579 659Q634 601 634 491Q634 468 630 438T623 388L620 370Q624 370 631 369T647 364T656 352Q656 347 653 335Q647 317 642 316Q640 315 637 315Q635 315 619 317Q606 319 605 316Q605 315 603 308Q587 248 550 177T457 57Q379 -8 293 -8Q192 -8 153 23T114 116V132ZM519 566Q519 600 507 625T464 651Q425 651 391 617T356 529Q356 501 370 478T404 441T443 417T477 404L491 400Q493 400 499 428T512 497T519 566",120658:"228 325Q170 322 156 316T127 309Q108 309 104 314Q99 319 99 322T108 341Q125 376 171 400T268 425H271Q302 425 319 396Q328 377 328 358Q328 332 324 314Q311 270 286 221Q274 194 274 192H275Q339 234 484 325T639 421Q669 434 691 434T723 425T734 406Q734 394 719 381Q715 376 644 330L575 287L566 267Q543 233 526 176Q520 160 515 143T508 115T506 105Q506 103 533 103Q585 103 607 110T641 118Q670 118 670 107Q670 100 661 85Q643 50 598 27T504 3Q465 3 450 36Q441 51 441 73Q441 84 444 96Q452 146 484 205L497 236L324 125Q143 12 135 10Q103 -6 77 -6Q61 -6 49 2T37 21Q37 36 49 46T124 96L195 141L204 156Q219 179 243 248T264 323Q264 325 228 325",120659:"274 -7Q232 -4 195 7T125 38T71 94T51 176V190Q51 213 60 242T95 307T156 373T255 425T393 451L397 452L427 568Q434 597 443 636Q452 677 456 685T472 694H486H495Q517 694 517 680L514 665Q510 650 503 621T489 564L460 451H469Q527 447 574 430T657 370T693 266Q693 163 599 82T350 -7H346L322 -100Q301 -190 295 -197Q291 -202 283 -202H269H258Q238 -202 238 -188Q238 -186 260 -96L283 -7H274ZM449 400Q448 400 404 225T359 47T366 45Q464 55 516 119Q542 149 558 199T575 295Q575 387 462 398L449 400ZM384 398Q384 399 381 399Q350 399 298 378T214 308Q168 236 168 149Q168 68 259 49Q282 44 294 44H295L384 398",120660:"371 -168Q357 -168 323 -171T245 -175Q143 -175 109 -150T75 -66Q75 -5 100 108T137 254Q153 299 179 334T232 390T277 419T311 434Q357 451 403 451Q435 451 455 449T506 435T560 400Q603 357 603 282Q603 213 569 148T465 38T304 -8Q273 -8 247 -2T204 14T176 31T159 46T152 53Q152 52 148 27T144 -16Q144 -36 150 -44T189 -58T293 -64Q405 -65 432 -75Q466 -88 466 -127Q466 -140 459 -172Q455 -188 451 -191T426 -194H420Q405 -194 400 -191T395 -176Q396 -170 394 -169T378 -168Q373 -168 371 -168ZM236 116Q236 77 258 60T311 43Q369 43 407 94Q429 123 451 206T474 331Q474 400 409 400H406Q339 400 299 341Q276 305 256 227T236 116",120661:"55 289H43Q23 289 23 303Q23 308 33 322Q116 434 199 443Q200 444 562 444Q922 444 928 442Q961 434 961 400Q961 376 944 355T886 333H870Q872 322 872 295V279Q872 230 842 165T751 46T618 -8Q581 -8 554 6T513 45T494 84T484 119Q484 121 478 114Q477 113 476 111Q384 -7 268 -7H265Q251 -7 237 -4T199 11T162 54T147 132Q147 149 149 166T155 198T165 229T176 256T189 281T200 301T211 319T220 333H199Q120 333 88 301L77 290L55 289ZM639 103Q674 103 712 122T780 188T811 295Q811 318 808 330V333H289Q274 318 244 263T214 169Q214 133 236 118T288 103Q351 103 412 153T494 278Q497 290 502 292T529 295Q546 295 551 293T556 283Q556 281 553 260T550 218Q550 153 576 128T639 103",120662:"110 0H86Q42 0 42 27Q42 37 148 350T258 667Q269 687 291 692Q295 694 366 694H399Q432 694 448 689T474 667Q477 663 583 350T690 27Q690 0 642 0H617H592Q582 0 575 1T561 2T549 6T541 11T533 18T527 26T522 37T517 49T512 64T506 81L490 130H225Q225 128 208 79T189 27Q185 19 180 14T170 7T156 3T143 1T127 0T110 0ZM439 279Q359 524 359 547L357 555L355 543Q347 503 270 263L259 231H357Q455 231 455 232L439 279",120663:"119 1Q98 5 92 28V667Q98 686 118 693Q121 694 272 694H289H346Q439 694 500 681T600 625Q640 580 640 513Q640 451 601 414T504 364L518 361Q568 351 602 329T649 280T666 235T671 197Q671 172 665 147T642 91T586 37T488 5Q456 1 282 1H119ZM489 509Q489 532 479 548T450 573T421 585T394 591Q387 592 315 593H247V404H298H325Q432 404 466 444Q489 470 489 509ZM517 194Q517 235 502 261T458 299T407 313T353 317H329H322H247V101H319H357Q387 101 407 103T452 111T492 133T514 171Q516 176 517 194",120664:"92 664Q98 683 118 690Q121 691 312 691T508 689Q534 682 534 644V632V618Q534 582 508 573L502 572Q496 572 489 572Q486 572 463 572T416 573Q333 573 291 575H253V303Q253 31 251 25Q242 0 199 0H170L119 1Q99 7 92 28V664",120665:"381 692Q386 694 458 694Q516 694 527 693T549 687Q564 680 575 663Q576 658 715 349T856 27Q856 6 838 1H826Q815 1 795 1T747 1T686 1T616 0T539 0T458 0T378 0T300 0T230 0T169 1T122 1T90 1H78Q60 6 60 27Q62 38 201 349T341 663Q356 687 381 692ZM627 148Q626 149 581 250T492 453L447 554Q447 553 446 552Q444 546 326 278L268 148Q268 147 448 147Q627 147 627 148",120666:"277 122Q280 122 380 123T544 125Q552 125 557 125T565 124T569 124Q595 115 595 75V62V47Q595 9 569 2Q564 0 341 0L119 1Q99 7 92 28V664Q98 683 118 690Q121 691 335 691T554 689Q580 682 580 644V632V618Q580 582 554 573Q553 573 551 573T542 572T527 572Q464 572 364 573T260 575H253V412H385H459Q524 412 536 404T549 357Q549 341 549 334T542 318T523 305Q518 303 385 303H253V122H277",120667:"411 584Q243 581 131 581Q122 581 116 581T106 582T102 582Q84 589 80 600T76 640L77 667Q83 686 103 693Q106 694 343 694Q579 694 584 692Q592 691 599 684T609 668Q610 665 610 646Q610 614 608 608Q605 603 434 361L261 116Q340 117 402 118T490 119T533 120T560 120H572Q605 120 614 95Q616 89 616 60V46Q616 9 590 2Q585 0 339 0Q92 0 87 2Q79 3 72 10T62 26Q61 29 61 49Q61 84 63 90Q65 94 152 217T325 461T411 584",120668:"92 667Q101 694 143 694H172H198Q244 694 251 669Q253 663 253 539V415H540V539Q540 558 540 585T539 621Q539 673 550 683T611 694H621H646Q671 694 683 690T700 669Q702 663 702 347T700 25Q696 9 684 5T646 0H621H606Q560 0 550 11T539 76Q539 85 539 116T540 169V306H253V169Q253 147 253 116T254 75Q254 23 245 12T194 0H170L119 1Q99 7 92 28V667",120669:"62 340Q62 716 425 716Q511 716 576 696T681 642T747 559T783 458T793 341Q793 264 777 203T721 89T608 7T428 -22Q62 -22 62 340ZM638 333Q638 365 637 387T632 441T621 495T600 542T567 583T518 611T451 628Q443 629 427 629Q402 629 378 624T327 608T276 571T240 511Q217 453 217 345Q217 254 231 204T279 120Q333 69 428 69Q522 69 576 120Q638 183 638 333ZM279 349V373Q279 413 305 420Q309 422 427 422H487Q550 422 563 414T576 369V349Q576 345 576 337T577 324Q577 284 550 277Q545 275 428 275H369Q306 275 293 283T279 329V349",120670:"85 667Q94 694 136 694H165H191Q237 694 244 669Q246 663 246 347T244 25Q235 0 192 0H163L112 1Q92 7 85 28V667",120671:"92 667Q101 694 139 694H163H186Q225 694 234 671Q236 663 236 529L237 392L533 682Q550 694 590 694H623H681Q695 680 695 672Q695 670 693 664Q688 657 561 533L431 405L698 33Q701 28 701 23Q701 7 683 0H626H604Q571 0 564 2T545 13Q544 14 530 33T489 90T437 162L332 307Q331 307 284 260L236 214V122V65Q236 32 231 19T210 2Q205 0 161 0L119 1Q99 7 92 28V667",120672:"106 0H83Q41 0 41 28Q41 39 133 349T229 667Q242 694 296 694H335H375Q403 694 418 689T442 667Q445 660 537 350T630 28Q630 11 619 6T584 0H555H526Q478 0 465 27Q462 32 431 136T366 372T325 555V546Q320 503 287 376T222 141T186 27Q184 22 177 15T165 6Q154 0 106 0",120673:"92 667Q98 684 109 689T146 695Q152 695 167 695T192 694Q200 694 214 694T234 695Q291 695 305 664Q313 651 400 419T487 165Q487 162 488 162T489 165Q489 187 574 413T671 664Q679 680 695 688Q708 694 785 694H828Q855 694 867 689T884 669Q886 663 886 347T884 25Q876 0 832 0H817H802Q758 0 750 25Q748 31 748 293V555L746 544Q737 509 692 386T606 160T564 52Q548 22 502 22H487H472Q423 22 410 52Q407 59 367 160T283 385T231 546L230 548Q229 548 229 293Q229 31 227 25Q222 9 211 5T176 0H158L119 1Q99 7 92 28V667",120674:"92 667Q98 684 109 689T146 694H185Q273 694 279 692Q301 689 315 669Q322 660 419 453L554 163L562 143Q564 143 564 401Q564 663 566 669Q574 694 618 694H633H648Q692 694 700 669Q702 663 702 347T700 25Q696 10 683 5T642 0H596H551Q520 0 505 4T478 25Q471 34 374 241L239 532Q231 550 231 552L229 479Q229 440 229 293Q229 31 227 25Q222 9 211 5T176 0H158L119 1Q99 7 92 28V667",120675:"627 553Q609 553 512 554T366 555Q316 555 220 554T105 553Q96 553 90 553T82 554T78 554Q61 560 57 571T52 605V623L53 661Q59 680 79 687Q82 688 366 688Q649 688 654 686Q680 679 680 639V621V603Q680 563 654 554Q653 554 651 554T642 554T627 553ZM149 423Q152 424 366 424Q579 424 584 422Q610 415 610 376V358V340Q610 300 584 293Q579 291 366 291H232Q162 291 150 293T129 306Q122 315 122 360L123 397Q129 416 149 423ZM108 135Q143 135 226 134T363 133Q407 133 507 134T632 135H645Q675 135 684 110Q686 104 686 68V49Q686 9 660 2Q655 0 364 0L74 1Q57 7 49 21L47 28L46 65V83Q46 126 72 133Q80 135 108 135",120676:"362 715Q364 715 376 715T394 716H400Q542 716 626 643T727 426Q731 395 731 342Q731 271 722 225Q674 -22 396 -22Q320 -22 259 -3T148 68T77 201Q62 257 62 342Q62 447 86 522T173 649Q245 707 362 715ZM568 433Q551 623 396 623Q383 623 370 622T333 612T292 591T257 550T233 485Q223 442 223 350Q223 276 232 227T267 137Q309 74 397 74Q433 74 461 85T507 113T537 156T556 205T566 260T569 310T570 357Q570 409 568 433",120677:"92 664Q98 683 118 690Q121 691 396 691T676 689Q695 684 700 666Q702 660 702 345Q702 31 700 25Q696 9 684 5T646 0H621H596Q571 0 559 4T542 25Q540 31 540 307V582H253V307Q253 31 251 25Q242 0 199 0H170L119 1Q99 7 92 28V664",120678:"641 470Q641 426 630 391T603 334T561 295T513 271T459 259T408 254T361 253H350H337H253V142Q253 125 253 100T254 67Q254 32 249 19T227 2Q222 0 170 0L119 1Q99 7 92 28V667Q98 686 118 693Q121 694 271 694Q428 693 462 688Q641 656 641 470ZM487 467Q487 495 485 510T474 546T442 578T382 592Q375 593 310 593H250V347H309H339Q364 347 380 348T418 354T451 368T474 395T486 438Q487 444 487 467",120680:"322 124Q326 124 457 125T672 127H689Q721 127 730 102Q732 96 732 64V48Q732 9 706 2Q701 0 394 0L89 1Q76 5 69 13T62 29V36Q62 37 62 38Q62 47 70 58T126 126Q161 167 185 196Q302 335 302 336L187 463Q74 584 68 594Q61 603 61 639L62 667Q68 686 88 693Q91 694 396 694T706 692Q732 686 732 647V635V621Q732 585 706 576Q705 576 702 576T691 576T670 575L302 578Q302 577 394 475T490 371Q498 362 498 347Q498 336 488 323T408 226L322 124",120681:"67 687Q70 688 366 688Q661 688 666 686Q692 680 692 641V629V615Q692 579 666 570H660Q655 569 648 569Q645 569 624 569T581 570Q505 570 475 572H447V302Q447 31 445 25Q436 0 393 0H364L313 1Q293 7 286 28L285 300V572H257Q227 570 151 570Q130 570 109 570T84 569Q77 569 72 570H66Q48 577 44 588T40 631L41 661Q47 680 67 687",120682:"62 560Q62 607 94 644T169 698T253 715Q273 715 286 713T322 704T363 677T398 625Q413 597 423 556L428 540Q429 541 436 566T454 620T494 677T561 713Q570 715 593 715Q682 715 737 668T793 560Q793 549 793 545T786 533T767 520H670Q646 532 644 551T632 579Q618 594 591 594Q539 594 524 530T509 321V216Q509 31 507 25Q498 0 455 0H426L375 1Q355 7 348 28L347 232Q346 344 346 441Q346 442 343 468T335 521T312 571T266 594Q252 594 247 593Q228 586 220 576T212 557T209 539T191 523L185 520H88Q75 527 69 534T63 545T62 560",120683:"62 292T62 347T80 445T124 511T183 552T243 574T292 584L315 587H319V627L320 667Q329 694 370 694H397H422Q466 694 473 669Q475 663 475 625V587H478Q479 587 500 584T548 575T608 553T668 513T713 446T732 347Q732 253 674 187Q655 167 628 152T576 128T530 116T493 109L478 107H475V69V50Q475 9 449 2Q444 0 395 0L347 1Q327 7 320 28L319 67V107H315L292 110Q269 114 243 119T184 142T124 182T80 249ZM319 197T319 347T318 497Q316 497 307 494T284 485T262 471Q220 438 220 347Q220 285 239 249Q248 234 261 223T286 208T308 200L317 197Q319 197 319 347ZM572 347V357Q572 387 569 407T548 452T496 491Q495 491 494 491T487 493T475 497V197Q518 210 541 232T571 303Q572 312 572 347",120684:"52 1Q37 11 37 23Q37 26 39 32Q39 34 158 202L275 369Q275 370 221 441T112 586T55 663Q53 669 53 672Q53 687 68 693H72Q77 693 84 693T99 694T118 694T139 694H176Q203 694 212 692T230 682Q231 681 239 669T265 634T296 591L358 504L418 591Q481 682 486 686Q491 691 499 692Q505 694 569 694H632Q650 685 650 672Q650 667 646 660Q643 654 592 582T491 440T441 369T566 201T693 29Q694 27 694 23Q694 11 677 0H607L537 1Q523 6 519 10T437 131Q422 153 411 170T390 200T375 222T365 237T359 245L357 247L348 232Q339 218 319 188T283 131Q222 37 211 22T186 1H52",120685:"61 585Q62 594 62 597T64 606T73 616T89 626H138Q196 626 208 620Q243 602 253 546T261 431T271 309T325 219Q342 205 349 205Q350 205 350 436L351 667Q360 694 401 694H428H454Q495 694 504 671Q506 663 506 436L507 205Q542 222 561 251T586 318T593 392T595 472T602 546Q614 614 661 625Q665 626 708 626H730Q766 626 780 618T794 582Q794 548 768 540Q755 538 754 501T750 410T736 298T680 191T560 120Q550 116 512 109H506V70V50Q506 9 480 2Q475 0 426 0L378 1Q358 7 351 28L350 68V109L335 111Q298 117 267 129T214 156T175 191T146 229T127 272T115 314T109 357T106 395T105 429Q104 537 87 540Q66 548 63 565Q61 570 61 585",120686:"241 122Q225 154 191 199T131 278T83 363T61 464Q61 497 68 527T94 591T145 650T228 693T349 715Q354 715 370 715T396 716Q539 716 622 668Q658 647 682 617T715 556T728 505T732 465Q732 415 711 365T663 280T602 200T552 122H632Q649 122 669 122T693 123H697Q736 123 742 98Q744 92 744 62V47Q744 9 718 2Q713 0 591 0L471 1Q454 7 446 21Q444 27 444 45Q444 96 463 154T506 257T549 360T569 469Q569 504 563 530T538 580T485 616T396 629Q313 629 268 594T223 468Q223 419 243 361T286 258T330 152T350 41Q350 14 335 7T276 -1Q267 -1 241 -1T197 0L77 1Q57 7 50 28L49 59V74Q49 114 75 121Q81 123 100 123Q104 123 124 123T161 122H241",120782:"266 654H280H282Q500 654 524 418Q529 370 529 320Q529 125 456 52Q397 -10 287 -10Q110 -10 63 154Q45 212 45 316Q45 504 113 585Q140 618 185 636T266 654ZM374 548Q347 604 286 604Q247 604 218 575Q197 552 193 511T188 311Q188 159 196 116Q202 87 225 64T287 41Q339 41 367 87Q379 107 382 152T386 329Q386 518 374 548",120783:"481 0L294 3Q136 3 109 0H96V62H227V304Q227 546 225 546Q169 529 97 529H80V591H97Q231 591 308 647L319 655H333Q355 655 359 644Q361 640 361 351V62H494V0H481",120784:"175 580Q175 578 185 572T205 551T215 510Q215 467 191 449T137 430Q107 430 83 448T58 511Q58 558 91 592T168 640T259 654Q328 654 383 637Q451 610 484 563T517 459Q517 401 482 360T368 262Q340 243 265 184L210 140H274Q416 140 429 145Q439 148 447 186T455 237H517V233Q516 230 501 119Q489 9 486 4V0H57V25Q57 51 58 54Q60 57 109 106T215 214T288 291Q364 377 364 458Q364 515 328 553T231 592Q214 592 201 589T181 584T175 580",120785:"80 503Q80 565 133 610T274 655Q366 655 421 623T491 538Q493 528 493 510Q493 446 453 407T361 348L376 344Q452 324 489 281T526 184Q526 152 514 121T474 58T392 8T265 -11Q175 -11 111 34T48 152Q50 187 72 209T132 232Q171 232 193 208T216 147Q216 136 214 126T207 108T197 94T187 84T178 77T170 72L168 71Q168 70 179 65T215 54T266 48H270Q331 48 350 105Q358 128 358 185Q358 239 348 268T309 313Q292 321 242 322Q205 322 198 324T191 341V348Q191 366 196 369T232 375Q239 375 247 376T260 377T268 378Q284 383 297 393T326 436T341 517Q341 536 339 547T331 573T308 593T266 600Q248 600 241 599Q214 593 183 576Q234 556 234 503Q234 462 210 444T157 426Q126 426 103 446T80 503",120786:"531 0Q510 3 381 3Q238 3 214 0H201V62H313V155H32V217L205 434Q342 606 362 630T387 655L391 656Q395 656 401 656T414 656H427Q447 656 451 645Q453 641 453 429V217H542V155H453V62H542V0H531ZM324 217V494L103 218L213 217H324",120787:"100 565V605Q100 637 102 646T113 655Q116 655 139 647T202 631T286 623Q332 623 372 631T434 647T459 655Q466 655 469 651T472 643T472 629Q472 613 463 601Q370 487 219 487Q195 487 183 488T169 490T168 433V376Q169 376 174 379T188 387T211 397T244 405T288 409Q390 409 453 352T517 201Q517 106 445 48T253 -11Q169 -11 113 37T57 154Q57 187 79 208T131 229T183 209T206 154Q206 99 155 83Q152 82 157 78Q196 47 253 47Q347 47 358 135Q358 137 358 138Q360 158 360 209Q360 277 355 301T337 338Q315 358 282 358Q202 358 160 303Q153 294 149 292T130 290Q107 290 102 301Q100 304 100 474V565",120788:"48 318Q48 395 68 456T120 553T193 613T273 646T350 655Q425 655 461 616T497 524Q497 485 475 468T428 451Q399 451 378 470T357 521Q357 565 403 588Q375 601 351 601Q313 601 282 584Q242 565 222 526Q199 473 199 367Q201 369 210 380T227 396T246 410T275 422T312 426Q438 426 494 332Q526 285 526 208V199Q526 112 465 53Q428 17 388 3T285 -11Q236 -11 195 7T135 43T104 80Q48 165 48 318ZM375 231V244V268Q375 295 373 310T364 342T341 366T299 374H297Q231 374 208 287Q200 257 200 196Q201 120 209 100Q231 47 288 47Q351 47 368 90Q375 112 375 231",120789:"256 -11Q231 -11 208 5T185 65Q185 105 193 146T212 220T241 289T275 349T312 402T346 445T377 479T397 502L400 504H301Q156 503 150 497Q142 491 134 456T126 407H64V411Q65 414 82 544T99 675T130 676H161V673Q161 669 162 666T167 661T173 657T181 654T190 652T200 651T210 650T220 649T229 648Q237 648 254 647T276 646Q277 646 426 644H558V620V607Q558 596 551 586T509 537Q489 515 476 500Q390 401 384 393Q349 339 337 259T324 113T322 38Q307 -11 256 -11",120790:"80 474Q80 561 139 607T278 654Q357 654 411 632Q490 593 494 509Q494 424 416 376L407 371L418 364Q432 356 447 345T481 312T513 260T526 192Q526 100 461 45T285 -11Q184 -11 116 32T48 164Q48 181 50 196T58 225T69 249T84 270T100 286T117 300T134 311T149 321T162 329L152 336Q120 360 100 397T80 474ZM347 404Q404 446 404 503Q404 579 317 599Q309 600 276 600Q178 600 170 538Q170 532 171 527T173 518T178 509T184 501T194 492T205 484T219 476T235 467T254 456T275 445L347 404ZM289 47Q323 47 351 54T402 82T425 137Q425 147 421 161Q411 183 391 197T303 249Q224 293 223 293Q220 291 215 288T197 273T175 248T157 213T149 167Q149 109 188 78T289 47",120791:"178 59Q206 48 238 48Q311 48 345 102Q370 138 375 259V278Q374 278 369 271T350 252T322 232Q297 220 258 220Q172 220 110 275T48 438V446Q54 561 146 618Q199 654 278 654Q321 654 329 653Q526 621 526 330Q526 252 507 190T457 92T388 31T312 -2T240 -11Q165 -11 121 25T77 120Q77 159 99 176T147 193T194 177T217 122Q217 113 216 106T211 92T205 82T198 73T191 67T184 62T178 59ZM374 446V465Q374 523 364 552T315 598Q309 600 293 601Q227 601 210 562Q199 539 199 433Q199 343 204 319T235 279Q250 272 274 271H282Q293 271 303 274T327 288T353 323T371 385Q374 403 374 446",120802:"117 621Q174 678 247 678Q305 678 351 647Q396 617 424 557Q460 472 460 328Q460 271 455 224Q448 154 427 104T376 27T314 -10T249 -22Q201 -22 160 1T91 67Q39 154 39 316Q39 541 117 621ZM250 55Q274 55 293 66T324 93T344 136T357 185T364 240T366 291T367 340Q367 373 367 393T363 449T352 507T332 553T299 589T250 601Q217 601 194 584T159 542T141 479T133 411T132 340V331Q132 299 133 277T137 219T147 157T167 107T201 68T250 55",120803:"94 612Q172 616 211 632T284 678H307V73H430V0H88V73H213V317Q213 560 212 560Q210 558 197 554T155 546T96 540L83 539V612H94",120804:"222 599Q190 599 166 585T128 550T108 509T97 474T93 459L67 492L42 526L47 539Q72 608 120 642T225 677Q304 677 355 644Q449 579 449 454Q449 373 361 290Q351 280 315 250T199 144Q156 103 137 85L293 86H449V0H50V79L216 242Q284 302 317 349T351 456Q351 517 315 558T222 599",120805:"333 521Q333 554 313 579T243 604Q154 604 99 514L78 546Q56 577 56 579Q56 580 62 589T82 611T114 637T162 662T222 677Q224 677 231 677T242 678H245Q318 678 374 634T430 520Q430 483 417 452T382 398T351 369T329 354L328 353Q369 333 373 330Q408 306 432 268T457 184Q457 103 397 41T242 -22Q131 -22 51 58L42 68L49 105L55 142L58 138Q62 134 66 130T77 120T91 108T108 96T129 83T152 72T179 63T209 57T242 54Q285 54 319 86T353 184Q353 231 331 267T260 315L213 316H166V354Q166 392 167 392Q233 395 257 405Q290 418 311 450T333 521",120806:"271 654L272 656H380V235H471V159H380V0H286V159H28V235L149 443Q269 652 271 654ZM292 235V607Q292 604 290 591T286 571T280 548T269 517T252 476T226 422T189 354T140 267Q136 260 132 253T126 240L123 236Q123 235 207 235H292",120807:"257 350Q236 350 218 342T189 323T171 301T160 281L157 273Q157 272 116 272H75V656H416V577H162V486Q162 396 163 396T174 403T207 418T258 426Q339 426 394 360T449 203Q449 113 386 46T226 -21H223Q188 -21 156 -11T102 13T64 42T41 66T33 77Q34 78 44 95T64 128L73 144Q93 112 117 93Q165 54 223 54Q270 54 306 86T345 197Q345 350 257 350",120808:"42 318Q42 396 61 460T109 564T173 629T237 666T289 677H301H317Q359 677 408 658V621Q408 585 407 585H406Q359 605 308 605Q246 605 203 556T146 421Q143 403 144 403Q145 402 152 409Q216 469 299 469Q333 469 357 457T407 405Q457 330 457 226Q457 126 402 57Q340 -22 251 -22Q216 -22 183 -7T116 43T63 149T42 318ZM260 393Q216 393 188 365T150 306T141 243Q141 153 172 104Q192 68 230 56Q238 54 251 54Q311 54 342 116Q360 152 360 226Q360 297 344 332Q320 382 277 392Q275 392 270 392T260 393",120809:"42 570V656H457V577L447 564Q345 439 295 289T244 0V-11H145V12Q160 330 356 550Q360 556 365 561T374 571L208 570H42",120810:"55 500Q55 568 109 623T250 678Q327 678 385 627T444 501Q444 445 410 410T336 357L329 353H330Q378 335 417 293T456 184Q456 93 393 36T249 -22T106 35T43 184Q43 251 82 293T169 353Q171 354 166 356Q165 356 163 357Q113 378 84 416T55 500ZM358 496Q358 557 325 581T250 605Q206 605 174 580T141 496Q141 446 171 420T250 393Q298 393 328 419T358 496ZM245 316Q205 316 172 285T139 185V179Q139 79 222 57Q231 55 250 55H254Q295 55 327 84Q360 120 360 188Q360 254 326 285Q295 316 245 316",120811:"44 476Q57 561 116 619T245 677H255Q308 677 349 647Q392 619 424 545T457 334Q457 178 382 78T205 -22Q168 -22 135 -10T86 14L72 25Q73 25 91 58L110 91Q127 78 136 72T163 60T203 54Q238 54 265 71T308 110T335 164T350 214T357 253V257L347 248Q284 187 200 187Q165 187 140 201T87 258Q42 332 42 430Q42 458 44 476ZM269 604Q265 605 254 605Q222 605 199 591T164 554T148 517T141 487Q140 478 140 430T141 373Q146 335 164 307T207 269Q223 263 247 263Q299 266 328 308T358 417Q358 435 356 456T346 511T318 570T269 604",120812:"274 -22Q227 -22 190 -9T128 24T87 76T62 135T49 204T44 271T43 336V343V362Q43 407 45 440T56 524T86 613T141 677Q197 715 264 715Q314 715 353 702T418 669T460 616T487 555T500 483T505 413T506 343Q506 310 506 293T503 241T498 185T486 133T467 83T437 42T397 8T343 -13T274 -22ZM355 355V401Q355 448 354 476T349 537T336 587T311 617T272 629Q270 629 266 629T261 628Q219 618 207 568T194 419V355Q194 203 200 156T231 85Q250 66 275 66Q299 66 318 85Q342 109 348 156T355 355",120813:"118 560H116Q107 560 100 561T85 572T76 600Q76 612 77 618T83 632T99 644Q102 645 135 646T207 660T275 700Q292 716 310 716Q353 716 360 691Q362 685 362 386V87H446Q464 76 468 69T473 44Q473 12 446 1H118Q105 7 100 13T94 25T93 44V62Q100 79 119 87H210V329Q210 571 208 571Q182 560 118 560",120814:"339 477Q339 505 332 531T301 579T242 601Q165 601 136 503Q133 493 130 490T121 486Q116 486 94 514Q86 523 82 528Q46 572 46 577Q46 591 77 632T147 691Q192 716 257 716Q305 716 351 700Q416 674 455 615T494 481Q494 421 463 376T356 266Q326 240 287 205T224 146T199 122H331Q359 122 392 122T431 123H445Q485 123 492 98Q494 92 494 62V47Q494 9 468 2Q463 0 272 0L83 1Q63 7 56 28L55 57V89Q59 97 215 261Q255 303 275 327T317 394T339 477",120815:"61 624Q62 630 83 650T153 693T262 716Q328 716 373 698T438 650T465 593T473 536Q473 438 375 376L387 371Q450 350 476 305T503 208Q503 164 492 126T456 53T380 -2T261 -22Q224 -22 189 -15T130 2T86 24T57 43T46 53Q46 56 53 99T62 145Q65 152 71 152Q76 152 90 143T123 121T175 99T248 87Q302 87 321 113T341 202Q341 264 329 292T279 329L232 331L190 332L184 338V411Q190 417 192 417Q193 418 205 419T232 421T252 424Q280 430 299 461T318 539V551Q318 599 283 609Q276 611 257 611Q225 611 199 601T159 577T136 554T120 543T102 560T76 597T62 618T61 624",120816:"278 693H282Q285 693 291 693T305 694T322 694T342 694H377Q402 694 411 691T430 677Q434 670 434 646T435 456V249H461H472Q509 249 516 224Q518 219 518 194Q518 178 518 171T511 155T492 142Q488 140 461 140H435V86V53Q435 9 409 2Q405 0 366 0H351Q306 0 298 25Q296 31 296 86V140H179H123Q99 140 80 129T50 106T37 95Q31 95 31 163V208Q31 246 33 251Q251 673 262 684Q268 691 278 693ZM302 249V416L301 576Q301 536 165 276L151 250L226 249H302",120817:"109 282Q87 290 83 310V666Q83 667 84 670T87 676T91 682T98 688T108 693Q112 694 269 694T431 692Q457 686 457 648V637V624Q457 588 431 581Q426 579 326 579H227V510Q227 442 229 442Q243 450 288 450Q377 450 435 399T494 222Q494 -22 241 -22Q202 -22 167 -11T109 16T69 49T45 79T37 94T69 151Q91 185 97 185Q105 185 112 170Q127 135 160 111T240 87Q266 87 284 94T311 111T325 142T331 179T332 226Q332 307 324 335T281 363Q228 363 197 306Q189 289 172 282H109",120818:"414 589Q410 589 389 600T334 612Q275 612 243 575Q209 538 202 433V422L209 431Q243 487 317 487Q392 487 440 442Q478 402 490 357T503 236Q503 113 454 54Q421 13 381 -4T279 -22Q263 -22 250 -21T214 -15T173 1T133 30T96 77T68 146T50 242Q46 278 46 336Q46 406 52 447Q84 698 312 715L315 716Q318 716 321 716Q323 716 328 716T337 715Q398 715 425 688V596Q419 591 414 589ZM282 87Q324 89 336 117T348 231Q348 310 343 343T324 388T277 399Q249 399 231 373T208 317T202 253Q202 201 207 168T224 117T249 93T282 87",120819:"135 38Q135 190 198 335T353 572H215Q185 572 151 572T110 571H96Q55 571 48 596Q46 602 46 633V648Q46 686 72 693Q76 695 124 695Q134 695 183 695T274 694Q472 694 477 692Q503 686 503 648V637Q503 612 502 605T491 588Q300 349 292 46V36Q292 -4 266 -9Q262 -11 214 -11H192Q160 -11 148 -3T135 38",120820:"61 518Q61 574 79 614T128 676T192 706T263 715H270Q298 715 318 714T373 701T430 671T470 612T488 517Q488 459 458 423T390 376Q388 375 393 373Q395 372 398 371Q503 330 503 204Q503 -22 275 -22Q209 -22 163 -3T92 49T57 120T46 204Q46 230 50 252T61 289T77 318T96 339T116 353T134 363T148 369T158 373T160 376Q118 389 90 424T61 518ZM344 538Q344 563 340 578T326 600T307 609T279 612Q232 612 218 594T204 518Q204 459 216 439T275 418Q328 418 338 450Q344 464 344 515V538ZM248 88T274 88T315 94T338 117T346 149T349 197Q349 269 342 290Q338 309 320 320T274 331Q246 331 229 320T207 290Q200 269 200 197Q201 163 202 149T210 118T232 94",120821:"347 272Q346 272 342 266T330 250T309 230T276 214T230 207Q185 207 150 223Q116 240 90 276T54 357Q46 393 46 468Q46 469 46 484T47 502T48 520T51 540T55 559T61 579T69 599T81 620T96 640T115 661Q174 716 276 716Q299 716 317 714T369 698T426 658T471 580T499 456Q503 402 503 342Q503 115 392 29Q322 -22 231 -22Q163 -22 115 7L82 31Q76 38 81 46Q116 112 127 123Q130 126 134 126T148 116T179 97T226 87Q287 87 318 132Q323 139 326 146T332 165T337 182T340 204T342 225T345 249T347 272ZM201 547T201 454T211 329T262 294Q276 294 285 296T310 312T335 355Q347 391 347 447Q347 520 340 550T317 595Q300 612 277 612Q226 612 214 580",120822:"42 305Q42 450 111 535T257 621Q335 621 390 562Q482 468 482 306Q482 174 418 82T262 -10T106 82T42 305ZM257 545Q209 545 168 481T126 320Q126 220 162 147Q204 65 262 65Q318 65 358 139T398 320V328Q395 411 364 470T284 543Q270 545 257 545",120823:"99 461Q99 470 99 474T104 487T120 498T151 502Q213 517 251 596Q264 622 283 622Q308 622 319 597V76H373H401Q428 76 439 69T450 38Q450 11 428 1H127Q104 10 104 38Q104 62 115 69T153 76H181H235V269Q235 461 234 461Q184 426 137 424H133Q124 424 119 425T109 431T99 447V461",120824:"52 462Q52 528 110 575T247 622H250Q343 622 407 565T472 421Q472 371 446 324T390 248T308 178Q307 177 275 151T214 101L185 77Q185 76 286 76H388V87Q388 105 397 114T430 123T463 114Q470 107 471 100T472 61V42Q472 24 468 16T450 1H75Q53 10 53 32V38V48Q53 57 63 67T127 122Q153 144 169 157L289 256Q388 345 388 419Q388 473 346 509T231 545H224Q176 545 146 499L144 494Q155 476 155 459Q154 459 155 455T154 444T148 430T136 417T114 408Q113 408 110 408T104 407Q80 407 66 422T52 462",120825:"260 546Q233 546 211 541T180 531T171 524L174 514Q177 505 177 497Q177 476 162 461T125 446Q106 446 90 459T73 504Q76 540 98 565T150 601T203 616T239 621Q241 622 265 622Q322 620 362 602T420 558T444 513T451 478Q451 386 369 329L375 326Q381 323 386 320T401 311T419 298T436 283T452 263T466 240T475 212T479 180Q479 99 416 44T259 -11T105 28T44 130Q44 154 59 168T95 183Q117 183 132 169T148 131Q148 119 139 101Q175 65 260 65Q316 65 355 97T395 179Q395 211 375 240Q336 292 253 292H234H215Q194 292 185 299T175 330Q175 350 184 359Q192 368 238 370T309 384Q336 398 351 423T367 474Q367 496 350 513Q321 546 260 546",120826:"235 1Q213 10 213 32V38V46Q213 65 230 73Q236 76 274 76H314V168H183L52 169Q37 175 33 182T29 205V218L30 244Q53 283 155 443T264 613Q276 623 298 623H323H363Q378 616 385 601V244H429H450Q474 244 484 237T495 206Q495 179 477 171Q471 168 429 168H385V76H425H442Q466 76 476 69T487 38Q487 10 465 1H235ZM314 244V554L117 245L215 244H314",120827:"387 189Q387 244 354 278T273 313Q230 313 205 301T163 271T138 249H120Q102 249 97 251Q85 258 83 266T80 311Q80 320 80 359T81 430Q81 587 82 591Q88 605 103 610H108Q112 610 120 610T138 610T163 610T192 611T225 611T260 611H415Q416 610 421 607T428 602T432 596T436 587T437 573Q437 567 437 562T434 554T431 548T427 543T423 540T418 538L415 536L289 535H164V363L170 366Q175 368 184 372T207 380T238 386T276 389Q357 389 414 331T472 187Q472 116 412 53T245 -10Q218 -10 209 -9Q126 5 89 48T52 137Q52 164 68 177T104 191Q130 191 143 175T156 141Q156 132 154 125T149 113T146 107Q146 104 155 95T188 76T245 65Q298 65 342 98T387 189",120828:"357 536Q357 546 318 546Q258 546 205 497T133 357V353L144 361Q210 402 285 402Q362 402 414 350Q479 285 479 193Q479 111 418 50T263 -11Q234 -11 207 -3T149 26T97 81T60 171T45 301Q45 444 129 533T319 622Q388 622 421 589T454 510Q454 491 442 475T402 458Q373 458 362 475T350 510Q350 520 354 528L357 536ZM319 326T269 326T179 298T136 223Q136 202 143 174T176 112T237 68Q246 66 265 66Q319 66 360 107Q395 146 395 197Q395 250 356 289Q319 326 269 326",120829:"204 -10Q162 -10 162 40Q162 146 198 261T310 477Q311 478 321 491T342 517T358 535H128V524Q128 506 119 497Q111 489 86 489H78Q55 489 46 508Q44 513 44 557V580Q44 605 52 616T88 627H93Q114 627 125 611H458Q474 598 477 593T480 573Q480 559 478 553T469 543T446 521T408 477Q252 290 246 49Q246 43 246 37T246 27T245 22Q243 11 233 1T204 -10",120830:"58 460Q58 523 117 572T254 621Q290 621 298 620Q376 607 421 560T466 460Q466 441 460 424T443 393T421 370T397 352T374 340T357 332L350 330L356 328Q363 325 371 321T392 310T415 295T439 274T459 249T473 217T479 179Q479 102 418 46T262 -10T106 46T45 179Q45 202 52 222T70 257T96 284T123 305T148 319T167 328L174 330L170 332Q166 333 159 336T145 343Q104 362 81 393T58 460ZM382 458Q382 491 349 518T263 546Q215 546 179 521T142 458Q142 421 178 395T262 368Q315 368 348 396T382 458ZM396 178Q396 223 358 257T263 292Q206 292 167 258T128 178Q128 137 163 102T262 66Q324 66 360 101T396 178",120831:"392 259Q333 210 236 210H233Q163 210 109 262Q46 325 46 411T99 550Q164 622 264 622Q293 622 319 615T376 587T428 532T464 440T479 304Q479 167 400 78T217 -11Q140 -11 105 22T70 101Q70 124 84 138T122 153Q150 153 162 137T174 101Q174 91 168 76Q179 65 216 65Q267 65 300 93Q322 109 339 130T366 173T380 210T388 242T392 259ZM388 389Q388 438 357 492T268 546T185 520Q129 479 129 415Q129 384 138 363Q145 349 156 334T195 302T255 285Q305 285 345 313T388 389"},{8243:"\u2032\u2032",8244:"\u2032\u2032\u2032",8246:"\u2035\u2035",8247:"\u2035\u2035\u2035",8279:"\u2032\u2032\u2032\u2032",8708:"\u2203\u0338",8716:"\u220b\u0338",8772:"\u2243\u0338",8777:"\u2248\u0338",8802:"\u2261\u0338",8813:"\u224d\u0338",8820:"\u2272\u0338",8821:"\u2273\u0338",8824:"\u2276\u0338",8825:"\u2277\u0338",8836:"\u2282\u0338",8837:"\u2283\u0338",8930:"\u2291\u0338",8931:"\u2292\u0338",10764:"\u222c\u222c"})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.normal=void 0,e.normal={32:[0,0,.25],33:[.716,0,.278],34:[.694,-.379,.5],35:[.694,.194,.833],36:[.75,.056,.5],37:[.75,.056,.833],38:[.716,.022,.778],39:[.694,-.379,.278],40:[.75,.25,.389],41:[.75,.25,.389],42:[.75,-.32,.5],43:[.583,.082,.778],44:[.121,.194,.278],45:[.252,-.179,.333],46:[.12,0,.278],47:[.75,.25,.5],48:[.666,.022,.5],49:[.666,0,.5],50:[.666,0,.5],51:[.665,.022,.5],52:[.677,0,.5],53:[.666,.022,.5],54:[.666,.022,.5],55:[.676,.022,.5],56:[.666,.022,.5],57:[.666,.022,.5],58:[.43,0,.278],59:[.43,.194,.278],60:[.54,.04,.778],61:[.583,.082,.778],62:[.54,.04,.778],63:[.705,0,.472],64:[.705,.011,.778],65:[.716,0,.75],66:[.683,0,.708],67:[.705,.021,.722],68:[.683,0,.764],69:[.68,0,.681],70:[.68,0,.653],71:[.705,.022,.785],72:[.683,0,.75],73:[.683,0,.361],74:[.683,.022,.514],75:[.683,0,.778],76:[.683,0,.625],77:[.683,0,.917],78:[.683,0,.75],79:[.705,.022,.778],80:[.683,0,.681],81:[.705,.193,.778],82:[.683,.022,.736],83:[.705,.022,.556],84:[.677,0,.722],85:[.683,.022,.75],86:[.683,.022,.75],87:[.683,.022,1.028],88:[.683,0,.75],89:[.683,0,.75],90:[.683,0,.611],91:[.75,.25,.278],92:[.75,.25,.5],93:[.75,.25,.278],94:[.694,-.531,.5],95:[-.025,.062,.5],96:[.699,-.505,.5],97:[.448,.011,.5],98:[.694,.011,.556],99:[.448,.011,.444],100:[.694,.011,.556],101:[.448,.011,.444],102:[.705,0,.306,{ic:.066}],103:[.453,.206,.5],104:[.694,0,.556],105:[.669,0,.278],106:[.669,.205,.306],107:[.694,0,.528],108:[.694,0,.278],109:[.442,0,.833],110:[.442,0,.556],111:[.448,.01,.5],112:[.442,.194,.556],113:[.442,.194,.528],114:[.442,0,.392],115:[.448,.011,.394],116:[.615,.01,.389],117:[.442,.011,.556],118:[.431,.011,.528],119:[.431,.011,.722],120:[.431,0,.528],121:[.431,.204,.528],122:[.431,0,.444],123:[.75,.25,.5],124:[.75,.249,.278],125:[.75,.25,.5],126:[.318,-.215,.5],160:[0,0,.25],163:[.714,.011,.769],165:[.683,0,.75],168:[.669,-.554,.5],172:[.356,-.089,.667],174:[.709,.175,.947],175:[.59,-.544,.5],176:[.715,-.542,.5],177:[.666,0,.778],180:[.699,-.505,.5],183:[.31,-.19,.278],215:[.491,-.009,.778],240:[.749,.021,.556],247:[.537,.036,.778],305:[.442,0,.278,{sk:.0278}],567:[.442,.205,.306,{sk:.0833}],697:[.56,-.043,.275],710:[.694,-.531,.5],711:[.644,-.513,.5],713:[.59,-.544,.5],714:[.699,-.505,.5],715:[.699,-.505,.5],728:[.694,-.515,.5],729:[.669,-.549,.5],730:[.715,-.542,.5],732:[.668,-.565,.5],768:[.699,-.505,0],769:[.699,-.505,0],770:[.694,-.531,0],771:[.668,-.565,0],772:[.59,-.544,0],774:[.694,-.515,0],775:[.669,-.549,0],776:[.669,-.554,0],778:[.715,-.542,0],779:[.701,-.51,0],780:[.644,-.513,0],824:[.716,.215,0],913:[.716,0,.75],914:[.683,0,.708],915:[.68,0,.625],916:[.716,0,.833],917:[.68,0,.681],918:[.683,0,.611],919:[.683,0,.75],920:[.705,.022,.778],921:[.683,0,.361],922:[.683,0,.778],923:[.716,0,.694],924:[.683,0,.917],925:[.683,0,.75],926:[.677,0,.667],927:[.705,.022,.778],928:[.68,0,.75],929:[.683,0,.681],931:[.683,0,.722],932:[.677,0,.722],933:[.705,0,.778],934:[.683,0,.722],935:[.683,0,.75],936:[.683,0,.778],937:[.704,0,.722],8192:[0,0,.5],8193:[0,0,1],8194:[0,0,.5],8195:[0,0,1],8196:[0,0,.333],8197:[0,0,.25],8198:[0,0,.167],8201:[0,0,.167],8202:[0,0,.1],8203:[0,0,0],8204:[0,0,0],8211:[.285,-.248,.5],8212:[.285,-.248,1],8213:[.285,-.248,1],8214:[.75,.25,.5],8215:[-.025,.062,.5],8216:[.694,-.379,.278],8217:[.694,-.379,.278],8220:[.694,-.379,.5],8221:[.694,-.379,.5],8224:[.705,.216,.444],8225:[.705,.205,.444],8226:[.444,-.055,.5],8230:[.12,0,1.172],8242:[.56,-.043,.275],8243:[.56,0,.55],8244:[.56,0,.825],8245:[.56,-.043,.275],8246:[.56,0,.55],8247:[.56,0,.825],8254:[.59,-.544,.5],8260:[.75,.25,.5],8279:[.56,0,1.1],8288:[0,0,0],8289:[0,0,0],8290:[0,0,0],8291:[0,0,0],8292:[0,0,0],8407:[.714,-.516,.5],8450:[.702,.019,.722],8459:[.717,.036,.969,{ic:.272,sk:.333}],8460:[.666,.133,.72],8461:[.683,0,.778],8462:[.694,.011,.576,{sk:-.0278}],8463:[.695,.013,.54,{ic:.022}],8464:[.717,.314,1.052,{ic:.081,sk:.417}],8465:[.686,.026,.554],8466:[.717,.017,.874,{ic:.161,sk:.306}],8467:[.705,.02,.417,{sk:.111}],8469:[.683,.02,.722],8472:[.453,.216,.636,{sk:.111}],8473:[.683,0,.611],8474:[.701,.181,.778],8475:[.717,.017,.85,{ic:.037,sk:.194}],8476:[.686,.026,.828],8477:[.683,0,.722],8484:[.683,0,.667],8486:[.704,0,.722],8487:[.684,.022,.722],8488:[.729,.139,.602],8492:[.708,.028,.908,{ic:.02,sk:.194}],8493:[.685,.024,.613],8496:[.707,.008,.562,{ic:.156,sk:.139}],8497:[.735,.036,.895,{ic:.095,sk:.222}],8498:[.695,0,.556],8499:[.721,.05,1.08,{ic:.136,sk:.444}],8501:[.694,0,.611],8502:[.763,.021,.667,{ic:.02}],8503:[.764,.043,.444],8504:[.764,.043,.667],8513:[.705,.023,.639],8592:[.511,.011,1],8593:[.694,.193,.5],8594:[.511,.011,1],8595:[.694,.194,.5],8596:[.511,.011,1],8597:[.772,.272,.5],8598:[.72,.195,1],8599:[.72,.195,1],8600:[.695,.22,1],8601:[.695,.22,1],8602:[.437,-.06,1],8603:[.437,-.06,1],8606:[.417,-.083,1],8608:[.417,-.083,1],8610:[.417,-.083,1.111],8611:[.417,-.083,1.111],8614:[.511,.011,1],8617:[.511,.011,1.126],8618:[.511,.011,1.126],8619:[.575,.041,1],8620:[.575,.041,1],8621:[.417,-.083,1.389],8622:[.437,-.06,1],8624:[.722,0,.5],8625:[.722,0,.5],8630:[.461,0,1],8631:[.46,0,1],8634:[.65,.083,.778],8635:[.65,.083,.778],8636:[.511,-.23,1],8637:[.27,.011,1],8638:[.694,.194,.417],8639:[.694,.194,.417],8640:[.511,-.23,1],8641:[.27,.011,1],8642:[.694,.194,.417],8643:[.694,.194,.417],8644:[.667,0,1],8646:[.667,0,1],8647:[.583,.083,1],8648:[.694,.193,.833],8649:[.583,.083,1],8650:[.694,.194,.833],8651:[.514,.014,1],8652:[.671,.011,1],8653:[.534,.035,1],8654:[.534,.037,1],8655:[.534,.035,1],8656:[.525,.024,1],8657:[.694,.194,.611],8658:[.525,.024,1],8659:[.694,.194,.611],8660:[.526,.025,1],8661:[.772,.272,.611],8666:[.611,.111,1],8667:[.611,.111,1],8669:[.417,-.083,1],8672:[.437,-.064,1.334],8674:[.437,-.064,1.334],8704:[.694,.022,.556],8705:[.846,.021,.5],8706:[.715,.022,.531,{ic:.035,sk:.0833}],8707:[.694,0,.556],8708:[.716,.215,.556],8709:[.772,.078,.5],8710:[.716,0,.833],8711:[.683,.033,.833],8712:[.54,.04,.667],8713:[.716,.215,.667],8715:[.54,.04,.667],8716:[.716,.215,.667],8717:[.44,0,.429,{ic:.027}],8719:[.75,.25,.944],8720:[.75,.25,.944],8721:[.75,.25,1.056],8722:[.583,.082,.778],8723:[.5,.166,.778],8724:[.766,.093,.778],8725:[.75,.25,.5],8726:[.75,.25,.5],8727:[.465,-.035,.5],8728:[.444,-.055,.5],8729:[.444,-.055,.5],8730:[.8,.2,.833,{ic:.02}],8733:[.442,.011,.778],8734:[.442,.011,1],8736:[.694,0,.722],8737:[.714,.02,.722],8738:[.551,.051,.722],8739:[.75,.249,.278],8740:[.75,.252,.278,{ic:.019}],8741:[.75,.25,.5],8742:[.75,.25,.5,{ic:.018}],8743:[.598,.022,.667],8744:[.598,.022,.667],8745:[.598,.022,.667],8746:[.598,.022,.667],8747:[.716,.216,.417,{ic:.055}],8748:[.805,.306,.819,{ic:.138}],8749:[.805,.306,1.166,{ic:.138}],8750:[.805,.306,.472,{ic:.138}],8756:[.471,.082,.667],8757:[.471,.082,.667],8764:[.367,-.133,.778],8765:[.367,-.133,.778],8768:[.583,.083,.278],8769:[.467,-.032,.778],8770:[.463,-.034,.778],8771:[.464,-.036,.778],8772:[.716,.215,.778],8773:[.589,-.022,.778],8775:[.652,.155,.778],8776:[.483,-.055,.778],8777:[.716,.215,.778],8778:[.579,.039,.778],8781:[.484,-.016,.778],8782:[.492,-.008,.778],8783:[.492,-.133,.778],8784:[.67,-.133,.778],8785:[.609,.108,.778],8786:[.601,.101,.778],8787:[.601,.102,.778],8790:[.367,-.133,.778],8791:[.721,-.133,.778],8796:[.859,-.133,.778],8800:[.716,.215,.778],8801:[.464,-.036,.778],8802:[.716,.215,.778],8804:[.636,.138,.778],8805:[.636,.138,.778],8806:[.753,.175,.778],8807:[.753,.175,.778],8808:[.752,.286,.778],8809:[.752,.286,.778],8810:[.568,.067,1],8811:[.567,.067,1],8812:[.75,.25,.5],8813:[.716,.215,.778],8814:[.708,.209,.778],8815:[.708,.209,.778],8816:[.801,.303,.778],8817:[.801,.303,.778],8818:[.732,.228,.778],8819:[.732,.228,.778],8820:[.732,.228,.778],8821:[.732,.228,.778],8822:[.681,.253,.778],8823:[.681,.253,.778],8824:[.716,.253,.778],8825:[.716,.253,.778],8826:[.539,.041,.778],8827:[.539,.041,.778],8828:[.58,.153,.778],8829:[.58,.154,.778],8830:[.732,.228,.778],8831:[.732,.228,.778],8832:[.705,.208,.778],8833:[.705,.208,.778],8834:[.54,.04,.778],8835:[.54,.04,.778],8836:[.716,.215,.778],8837:[.716,.215,.778],8838:[.636,.138,.778],8839:[.636,.138,.778],8840:[.801,.303,.778],8841:[.801,.303,.778],8842:[.635,.241,.778],8843:[.635,.241,.778],8846:[.598,.022,.667],8847:[.539,.041,.778],8848:[.539,.041,.778],8849:[.636,.138,.778],8850:[.636,.138,.778],8851:[.598,0,.667],8852:[.598,0,.667],8853:[.583,.083,.778],8854:[.583,.083,.778],8855:[.583,.083,.778],8856:[.583,.083,.778],8857:[.583,.083,.778],8858:[.582,.082,.778],8859:[.582,.082,.778],8861:[.582,.082,.778],8862:[.689,0,.778],8863:[.689,0,.778],8864:[.689,0,.778],8865:[.689,0,.778],8866:[.694,0,.611],8867:[.694,0,.611],8868:[.668,0,.778],8869:[.668,0,.778],8872:[.75,.249,.867],8873:[.694,0,.722],8874:[.694,0,.889],8876:[.695,0,.611],8877:[.695,0,.611],8878:[.695,0,.722],8879:[.695,0,.722],8882:[.539,.041,.778],8883:[.539,.041,.778],8884:[.636,.138,.778],8885:[.636,.138,.778],8888:[.408,-.092,1.111],8890:[.431,.212,.556],8891:[.716,0,.611],8892:[.716,0,.611],8896:[.75,.249,.833],8897:[.75,.249,.833],8898:[.75,.249,.833],8899:[.75,.249,.833],8900:[.488,-.012,.5],8901:[.31,-.19,.278],8902:[.486,-.016,.5],8903:[.545,.044,.778],8904:[.505,.005,.9],8905:[.492,-.008,.778],8906:[.492,-.008,.778],8907:[.694,.022,.778],8908:[.694,.022,.778],8909:[.464,-.036,.778],8910:[.578,.021,.76],8911:[.578,.022,.76],8912:[.54,.04,.778],8913:[.54,.04,.778],8914:[.598,.022,.667],8915:[.598,.022,.667],8916:[.736,.022,.667],8918:[.541,.041,.778],8919:[.541,.041,.778],8920:[.568,.067,1.333],8921:[.568,.067,1.333],8922:[.886,.386,.778],8923:[.886,.386,.778],8926:[.734,0,.778],8927:[.734,0,.778],8928:[.801,.303,.778],8929:[.801,.303,.778],8930:[.716,.215,.778],8931:[.716,.215,.778],8934:[.73,.359,.778],8935:[.73,.359,.778],8936:[.73,.359,.778],8937:[.73,.359,.778],8938:[.706,.208,.778],8939:[.706,.208,.778],8940:[.802,.303,.778],8941:[.801,.303,.778],8942:[1.3,.03,.278],8943:[.31,-.19,1.172],8945:[1.52,-.1,1.282],8965:[.716,0,.611],8966:[.813,.097,.611],8968:[.75,.25,.444],8969:[.75,.25,.444],8970:[.75,.25,.444],8971:[.75,.25,.444],8988:[.694,-.306,.5],8989:[.694,-.306,.5],8990:[.366,.022,.5],8991:[.366,.022,.5],8994:[.388,-.122,1],8995:[.378,-.134,1],9001:[.75,.25,.389],9002:[.75,.25,.389],9136:[.744,.244,.412],9137:[.744,.244,.412],9168:[.602,0,.667],9416:[.709,.175,.902],9484:[.694,-.306,.5],9488:[.694,-.306,.5],9492:[.366,.022,.5],9496:[.366,.022,.5],9585:[.694,.195,.889],9586:[.694,.195,.889],9632:[.689,0,.778],9633:[.689,0,.778],9642:[.689,0,.778],9650:[.575,.02,.722],9651:[.716,0,.889],9652:[.575,.02,.722],9653:[.716,0,.889],9654:[.539,.041,.778],9656:[.539,.041,.778],9657:[.505,.005,.5],9660:[.576,.019,.722],9661:[.5,.215,.889],9662:[.576,.019,.722],9663:[.5,.215,.889],9664:[.539,.041,.778],9666:[.539,.041,.778],9667:[.505,.005,.5],9674:[.716,.132,.667],9711:[.715,.215,1],9723:[.689,0,.778],9724:[.689,0,.778],9733:[.694,.111,.944],9824:[.727,.13,.778],9825:[.716,.033,.778],9826:[.727,.162,.778],9827:[.726,.13,.778],9837:[.75,.022,.389],9838:[.734,.223,.389],9839:[.723,.223,.389],10003:[.706,.034,.833],10016:[.716,.022,.833],10072:[.75,.249,.278],10216:[.75,.25,.389],10217:[.75,.25,.389],10222:[.744,.244,.412],10223:[.744,.244,.412],10229:[.511,.011,1.609],10230:[.511,.011,1.638],10231:[.511,.011,1.859],10232:[.525,.024,1.609],10233:[.525,.024,1.638],10234:[.525,.024,1.858],10236:[.511,.011,1.638],10731:[.716,.132,.667],10744:[.716,.215,.778],10752:[.75,.25,1.111],10753:[.75,.25,1.111],10754:[.75,.25,1.111],10756:[.75,.249,.833],10758:[.75,.249,.833],10764:[.805,.306,1.638,{ic:.138}],10799:[.491,-.009,.778],10815:[.683,0,.75],10846:[.813,.097,.611],10877:[.636,.138,.778],10878:[.636,.138,.778],10885:[.762,.29,.778],10886:[.762,.29,.778],10887:[.635,.241,.778],10888:[.635,.241,.778],10889:[.761,.387,.778],10890:[.761,.387,.778],10891:[1.003,.463,.778],10892:[1.003,.463,.778],10901:[.636,.138,.778],10902:[.636,.138,.778],10927:[.636,.138,.778],10928:[.636,.138,.778],10933:[.752,.286,.778],10934:[.752,.286,.778],10935:[.761,.294,.778],10936:[.761,.294,.778],10937:[.761,.337,.778],10938:[.761,.337,.778],10949:[.753,.215,.778],10950:[.753,.215,.778],10955:[.783,.385,.778],10956:[.783,.385,.778],12296:[.75,.25,.389],12297:[.75,.25,.389],57350:[.43,.023,.222,{ic:.018}],57351:[.431,.024,.389,{ic:.018}],57352:[.605,.085,.778],57353:[.434,.006,.667,{ic:.067}],57356:[.752,.284,.778],57357:[.752,.284,.778],57358:[.919,.421,.778],57359:[.801,.303,.778],57360:[.801,.303,.778],57361:[.919,.421,.778],57366:[.828,.33,.778],57367:[.752,.332,.778],57368:[.828,.33,.778],57369:[.752,.333,.778],57370:[.634,.255,.778],57371:[.634,.254,.778],119808:[.698,0,.869],119809:[.686,0,.818],119810:[.697,.011,.831],119811:[.686,0,.882],119812:[.68,0,.756],119813:[.68,0,.724],119814:[.697,.01,.904],119815:[.686,0,.9],119816:[.686,0,.436],119817:[.686,.011,.594],119818:[.686,0,.901],119819:[.686,0,.692],119820:[.686,0,1.092],119821:[.686,0,.9],119822:[.696,.01,.864],119823:[.686,0,.786],119824:[.696,.193,.864],119825:[.686,.011,.862],119826:[.697,.011,.639],119827:[.675,0,.8],119828:[.686,.011,.885],119829:[.686,.007,.869],119830:[.686,.007,1.189],119831:[.686,0,.869],119832:[.686,0,.869],119833:[.686,0,.703],119834:[.453,.006,.559],119835:[.694,.006,.639],119836:[.453,.006,.511],119837:[.694,.006,.639],119838:[.452,.006,.527],119839:[.7,0,.351,{ic:.101}],119840:[.455,.201,.575],119841:[.694,0,.639],119842:[.695,0,.319],119843:[.695,.2,.351],119844:[.694,0,.607],119845:[.694,0,.319],119846:[.45,0,.958],119847:[.45,0,.639],119848:[.452,.005,.575],119849:[.45,.194,.639],119850:[.45,.194,.607],119851:[.45,0,.474],119852:[.453,.006,.454],119853:[.635,.005,.447],119854:[.45,.006,.639],119855:[.444,0,.607],119856:[.444,0,.831],119857:[.444,0,.607],119858:[.444,.2,.607],119859:[.444,0,.511],119860:[.716,0,.75,{sk:.139}],119861:[.683,0,.759,{sk:.0833}],119862:[.705,.022,.715,{ic:.045,sk:.0833}],119863:[.683,0,.828,{sk:.0556}],119864:[.68,0,.738,{ic:.026,sk:.0833}],119865:[.68,0,.643,{ic:.106,sk:.0833}],119866:[.705,.022,.786,{sk:.0833}],119867:[.683,0,.831,{ic:.057,sk:.0556}],119868:[.683,0,.44,{ic:.064,sk:.111}],119869:[.683,.022,.555,{ic:.078,sk:.167}],119870:[.683,0,.849,{ic:.04,sk:.0556}],119871:[.683,0,.681,{sk:.0278}],119872:[.683,0,.97,{ic:.081,sk:.0833}],119873:[.683,0,.803,{ic:.085,sk:.0833}],119874:[.704,.022,.763,{sk:.0833}],119875:[.683,0,.642,{ic:.109,sk:.0833}],119876:[.704,.194,.791,{sk:.0833}],119877:[.683,.021,.759,{sk:.0833}],119878:[.705,.022,.613,{ic:.032,sk:.0833}],119879:[.677,0,.584,{ic:.12,sk:.0833}],119880:[.683,.022,.683,{ic:.084,sk:.0278}],119881:[.683,.022,.583,{ic:.186}],119882:[.683,.022,.944,{ic:.104}],119883:[.683,0,.828,{ic:.024,sk:.0833}],119884:[.683,0,.581,{ic:.182}],119885:[.683,0,.683,{ic:.04,sk:.0833}],119886:[.441,.01,.529],119887:[.694,.011,.429],119888:[.442,.011,.433,{sk:.0556}],119889:[.694,.01,.52,{sk:.167}],119890:[.442,.011,.466,{sk:.0556}],119891:[.705,.205,.49,{ic:.06,sk:.167}],119892:[.442,.205,.477,{sk:.0278}],119894:[.661,.011,.345],119895:[.661,.204,.412],119896:[.694,.011,.521],119897:[.694,.011,.298,{sk:.0833}],119898:[.442,.011,.878],119899:[.442,.011,.6],119900:[.441,.011,.485,{sk:.0556}],119901:[.442,.194,.503,{sk:.0833}],119902:[.442,.194,.446,{ic:.014,sk:.0833}],119903:[.442,.011,.451,{sk:.0556}],119904:[.442,.01,.469,{sk:.0556}],119905:[.626,.011,.361,{sk:.0833}],119906:[.442,.011,.572,{sk:.0278}],119907:[.443,.011,.485,{sk:.0278}],119908:[.443,.011,.716,{sk:.0833}],119909:[.442,.011,.572,{sk:.0278}],119910:[.442,.205,.49,{sk:.0556}],119911:[.442,.011,.465,{sk:.0556}],119912:[.711,0,.869,{sk:.16}],119913:[.686,0,.866,{sk:.0958}],119914:[.703,.017,.817,{ic:.038,sk:.0958}],119915:[.686,0,.938,{sk:.0639}],119916:[.68,0,.81,{ic:.015,sk:.0958}],119917:[.68,0,.689,{ic:.12,sk:.0958}],119918:[.703,.016,.887,{sk:.0958}],119919:[.686,0,.982,{ic:.045,sk:.0639}],119920:[.686,0,.511,{ic:.062,sk:.128}],119921:[.686,.017,.631,{ic:.063,sk:.192}],119922:[.686,0,.971,{ic:.032,sk:.0639}],119923:[.686,0,.756,{sk:.0319}],119924:[.686,0,1.142,{ic:.077,sk:.0958}],119925:[.686,0,.95,{ic:.077,sk:.0958}],119926:[.703,.017,.837,{sk:.0958}],119927:[.686,0,.723,{ic:.124,sk:.0958}],119928:[.703,.194,.869,{sk:.0958}],119929:[.686,.017,.872,{sk:.0958}],119930:[.703,.017,.693,{ic:.021,sk:.0958}],119931:[.675,0,.637,{ic:.135,sk:.0958}],119932:[.686,.016,.8,{ic:.077,sk:.0319}],119933:[.686,.016,.678,{ic:.208}],119934:[.686,.017,1.093,{ic:.114}],119935:[.686,0,.947,{sk:.0958}],119936:[.686,0,.675,{ic:.201}],119937:[.686,0,.773,{ic:.032,sk:.0958}],119938:[.452,.008,.633],119939:[.694,.008,.521],119940:[.451,.008,.513,{sk:.0639}],119941:[.694,.008,.61,{sk:.192}],119942:[.452,.008,.554,{sk:.0639}],119943:[.701,.201,.568,{ic:.056,sk:.192}],119944:[.452,.202,.545,{sk:.0319}],119945:[.694,.008,.668,{sk:-.0319}],119946:[.694,.008,.405],119947:[.694,.202,.471],119948:[.694,.008,.604],119949:[.694,.008,.348,{sk:.0958}],119950:[.452,.008,1.032],119951:[.452,.008,.713],119952:[.452,.008,.585,{sk:.0639}],119953:[.452,.194,.601,{sk:.0958}],119954:[.452,.194,.542,{sk:.0958}],119955:[.452,.008,.529,{sk:.0639}],119956:[.451,.008,.531,{sk:.0639}],119957:[.643,.007,.415,{sk:.0958}],119958:[.452,.008,.681,{sk:.0319}],119959:[.453,.008,.567,{sk:.0319}],119960:[.453,.008,.831,{sk:.0958}],119961:[.452,.008,.659,{sk:.0319}],119962:[.452,.202,.59,{sk:.0639}],119963:[.452,.008,.555,{sk:.0639}],119964:[.717,.008,.803,{ic:.213,sk:.389}],119966:[.728,.026,.666,{ic:.153,sk:.278}],119967:[.708,.031,.774,{ic:.081,sk:.111}],119970:[.717,.037,.61,{ic:.128,sk:.25}],119973:[.717,.314,1.052,{ic:.081,sk:.417}],119974:[.717,.037,.914,{ic:.29,sk:.361}],119977:[.726,.036,.902,{ic:.306,sk:.389}],119978:[.707,.008,.738,{ic:.067,sk:.167}],119979:[.716,.037,1.013,{ic:.018,sk:.222}],119980:[.717,.017,.883,{sk:.278}],119982:[.708,.036,.868,{ic:.148,sk:.333}],119983:[.735,.037,.747,{ic:.249,sk:.222}],119984:[.717,.017,.8,{ic:.16,sk:.25}],119985:[.717,.017,.622,{ic:.228,sk:.222}],119986:[.717,.017,.805,{ic:.221,sk:.25}],119987:[.717,.017,.944,{ic:.187,sk:.278}],119988:[.716,.017,.71,{ic:.249,sk:.194}],119989:[.717,.016,.821,{ic:.211,sk:.306}],120068:[.696,.026,.718],120069:[.691,.027,.884],120071:[.685,.027,.832],120072:[.685,.024,.663],120073:[.686,.153,.611],120074:[.69,.026,.785],120077:[.686,.139,.552],120078:[.68,.027,.668,{ic:.014}],120079:[.686,.026,.666],120080:[.692,.027,1.05],120081:[.686,.025,.832],120082:[.729,.027,.827],120083:[.692,.218,.828],120084:[.729,.069,.827],120086:[.692,.027,.829],120087:[.701,.027,.669],120088:[.697,.027,.646,{ic:.019}],120089:[.686,.026,.831],120090:[.686,.027,1.046],120091:[.688,.027,.719],120092:[.686,.218,.833],120094:[.47,.035,.5],120095:[.685,.031,.513],120096:[.466,.029,.389],120097:[.609,.033,.499],120098:[.467,.03,.401],120099:[.681,.221,.326],120100:[.47,.209,.504],120101:[.688,.205,.521],120102:[.673,.02,.279],120103:[.672,.208,.281],120104:[.689,.025,.389],120105:[.685,.02,.28],120106:[.475,.026,.767],120107:[.475,.022,.527],120108:[.48,.028,.489],120109:[.541,.212,.5],120110:[.479,.219,.489],120111:[.474,.021,.389],120112:[.478,.029,.443],120113:[.64,.02,.333,{ic:.015}],120114:[.474,.023,.517],120115:[.53,.028,.512],120116:[.532,.028,.774],120117:[.472,.188,.389],120118:[.528,.218,.499],120119:[.471,.214,.391],120120:[.701,0,.722],120121:[.683,0,.667],120123:[.683,0,.722],120124:[.683,0,.667],120125:[.683,0,.611],120126:[.702,.019,.778],120128:[.683,0,.389],120129:[.683,.077,.5],120130:[.683,0,.778],120131:[.683,0,.667],120132:[.683,0,.944],120134:[.701,.019,.778],120138:[.702,.012,.556],120139:[.683,0,.667],120140:[.683,.019,.722],120141:[.683,.02,.722],120142:[.683,.019,1],120143:[.683,0,.722],120144:[.683,0,.722],120172:[.686,.031,.847],120173:[.684,.031,1.044],120174:[.676,.032,.723],120175:[.683,.029,.982],120176:[.686,.029,.783],120177:[.684,.146,.722],120178:[.687,.029,.927],120179:[.683,.126,.851],120180:[.681,.025,.655],120181:[.68,.141,.652],120182:[.681,.026,.789,{ic:.017}],120183:[.683,.028,.786],120184:[.683,.032,1.239],120185:[.679,.03,.983],120186:[.726,.03,.976],120187:[.688,.223,.977],120188:[.726,.083,.976],120189:[.688,.028,.978],120190:[.685,.031,.978],120191:[.686,.03,.79,{ic:.012}],120192:[.688,.039,.851,{ic:.02}],120193:[.685,.029,.982],120194:[.683,.03,1.235],120195:[.681,.035,.849],120196:[.688,.214,.984],120197:[.677,.148,.711],120198:[.472,.032,.603],120199:[.69,.032,.59],120200:[.473,.026,.464],120201:[.632,.028,.589],120202:[.471,.027,.472],120203:[.687,.222,.388],120204:[.472,.208,.595],120205:[.687,.207,.615],120206:[.686,.025,.331],120207:[.682,.203,.332],120208:[.682,.025,.464],120209:[.681,.024,.337],120210:[.476,.031,.921],120211:[.473,.028,.654],120212:[.482,.034,.609],120213:[.557,.207,.604],120214:[.485,.211,.596],120215:[.472,.026,.46],120216:[.479,.034,.523],120217:[.648,.027,.393,{ic:.014}],120218:[.472,.032,.589,{ic:.014}],120219:[.546,.027,.604],120220:[.549,.032,.918],120221:[.471,.188,.459],120222:[.557,.221,.589],120223:[.471,.214,.461],120224:[.694,0,.667],120225:[.694,0,.667],120226:[.705,.011,.639],120227:[.694,0,.722],120228:[.691,0,.597],120229:[.691,0,.569],120230:[.704,.011,.667],120231:[.694,0,.708],120232:[.694,0,.278],120233:[.694,.022,.472],120234:[.694,0,.694],120235:[.694,0,.542],120236:[.694,0,.875],120237:[.694,0,.708],120238:[.715,.022,.736],120239:[.694,0,.639],120240:[.715,.125,.736],120241:[.694,0,.646],120242:[.716,.022,.556],120243:[.688,0,.681],120244:[.694,.022,.688],120245:[.694,0,.667],120246:[.694,0,.944],120247:[.694,0,.667],120248:[.694,0,.667],120249:[.694,0,.611],120250:[.46,.01,.481],120251:[.694,.011,.517],120252:[.46,.01,.444],120253:[.694,.01,.517],120254:[.461,.01,.444],120255:[.705,0,.306,{ic:.041}],120256:[.455,.206,.5],120257:[.694,0,.517],120258:[.68,0,.239],120259:[.68,.205,.267],120260:[.694,0,.489],120261:[.694,0,.239],120262:[.455,0,.794],120263:[.455,0,.517],120264:[.46,.01,.5],120265:[.455,.194,.517],120266:[.455,.194,.517],120267:[.455,0,.342],120268:[.46,.01,.383],120269:[.571,.01,.361],120270:[.444,.01,.517],120271:[.444,0,.461],120272:[.444,0,.683],120273:[.444,0,.461],120274:[.444,.204,.461],120275:[.444,0,.435],120276:[.694,0,.733],120277:[.694,0,.733],120278:[.704,.011,.703],120279:[.694,0,.794],120280:[.691,0,.642],120281:[.691,0,.611],120282:[.705,.011,.733],120283:[.694,0,.794],120284:[.694,0,.331],120285:[.694,.022,.519],120286:[.694,0,.764],120287:[.694,0,.581],120288:[.694,0,.978],120289:[.694,0,.794],120290:[.716,.022,.794],120291:[.694,0,.703],120292:[.716,.106,.794],120293:[.694,0,.703],120294:[.716,.022,.611],120295:[.688,0,.733],120296:[.694,.022,.764],120297:[.694,0,.733],120298:[.694,0,1.039],120299:[.694,0,.733],120300:[.694,0,.733],120301:[.694,0,.672],120302:[.475,.011,.525],120303:[.694,.01,.561],120304:[.475,.011,.489],120305:[.694,.011,.561],120306:[.474,.01,.511],120307:[.705,0,.336,{ic:.045}],120308:[.469,.206,.55],120309:[.694,0,.561],120310:[.695,0,.256],120311:[.695,.205,.286],120312:[.694,0,.531],120313:[.694,0,.256],120314:[.469,0,.867],120315:[.468,0,.561],120316:[.474,.011,.55],120317:[.469,.194,.561],120318:[.469,.194,.561],120319:[.469,0,.372],120320:[.474,.01,.422],120321:[.589,.01,.404],120322:[.458,.011,.561],120323:[.458,0,.5],120324:[.458,0,.744],120325:[.458,0,.5],120326:[.458,.205,.5],120327:[.458,0,.476],120328:[.694,0,.667],120329:[.694,0,.667,{ic:.029}],120330:[.705,.01,.639,{ic:.08}],120331:[.694,0,.722,{ic:.025}],120332:[.691,0,.597,{ic:.091}],120333:[.691,0,.569,{ic:.104}],120334:[.705,.011,.667,{ic:.063}],120335:[.694,0,.708,{ic:.06}],120336:[.694,0,.278,{ic:.06}],120337:[.694,.022,.472,{ic:.063}],120338:[.694,0,.694,{ic:.091}],120339:[.694,0,.542],120340:[.694,0,.875,{ic:.054}],120341:[.694,0,.708,{ic:.058}],120342:[.716,.022,.736,{ic:.027}],120343:[.694,0,.639,{ic:.051}],120344:[.716,.125,.736,{ic:.027}],120345:[.694,0,.646,{ic:.052}],120346:[.716,.022,.556,{ic:.053}],120347:[.688,0,.681,{ic:.109}],120348:[.694,.022,.688,{ic:.059}],120349:[.694,0,.667,{ic:.132}],120350:[.694,0,.944,{ic:.132}],120351:[.694,0,.667,{ic:.091}],120352:[.694,0,.667,{ic:.143}],120353:[.694,0,.611,{ic:.091}],120354:[.461,.01,.481],120355:[.694,.011,.517,{ic:.022}],120356:[.46,.011,.444,{ic:.055}],120357:[.694,.01,.517,{ic:.071}],120358:[.46,.011,.444,{ic:.028}],120359:[.705,0,.306,{ic:.188}],120360:[.455,.206,.5,{ic:.068}],120361:[.694,0,.517],120362:[.68,0,.239,{ic:.076}],120363:[.68,.204,.267,{ic:.069}],120364:[.694,0,.489,{ic:.054}],120365:[.694,0,.239,{ic:.072}],120366:[.455,0,.794],120367:[.454,0,.517],120368:[.461,.011,.5,{ic:.023}],120369:[.455,.194,.517,{ic:.021}],120370:[.455,.194,.517,{ic:.021}],120371:[.455,0,.342,{ic:.082}],120372:[.461,.011,.383,{ic:.053}],120373:[.571,.011,.361,{ic:.049}],120374:[.444,.01,.517,{ic:.02}],120375:[.444,0,.461,{ic:.079}],120376:[.444,0,.683,{ic:.079}],120377:[.444,0,.461,{ic:.076}],120378:[.444,.205,.461,{ic:.079}],120379:[.444,0,.435,{ic:.059}],120432:[.623,0,.525],120433:[.611,0,.525],120434:[.622,.011,.525],120435:[.611,0,.525],120436:[.611,0,.525],120437:[.611,0,.525],120438:[.622,.011,.525],120439:[.611,0,.525],120440:[.611,0,.525],120441:[.611,.011,.525],120442:[.611,0,.525],120443:[.611,0,.525],120444:[.611,0,.525],120445:[.611,0,.525],120446:[.621,.01,.525],120447:[.611,0,.525],120448:[.621,.138,.525],120449:[.611,.011,.525],120450:[.622,.011,.525],120451:[.611,0,.525],120452:[.611,.011,.525],120453:[.611,.007,.525],120454:[.611,.007,.525],120455:[.611,0,.525],120456:[.611,0,.525],120457:[.611,0,.525],120458:[.439,.006,.525],120459:[.611,.006,.525],120460:[.44,.006,.525],120461:[.611,.006,.525],120462:[.44,.006,.525],120463:[.617,0,.525],120464:[.442,.229,.525],120465:[.611,0,.525],120466:[.612,0,.525],120467:[.612,.228,.525],120468:[.611,0,.525],120469:[.611,0,.525],120470:[.436,0,.525,{ic:.011}],120471:[.436,0,.525],120472:[.44,.006,.525],120473:[.437,.221,.525],120474:[.437,.221,.525,{ic:.02}],120475:[.437,0,.525],120476:[.44,.006,.525],120477:[.554,.006,.525],120478:[.431,.005,.525],120479:[.431,0,.525],120480:[.431,0,.525],120481:[.431,0,.525],120482:[.431,.228,.525],120483:[.431,0,.525],120488:[.698,0,.869],120489:[.686,0,.818],120490:[.68,0,.692],120491:[.698,0,.958],120492:[.68,0,.756],120493:[.686,0,.703],120494:[.686,0,.9],120495:[.696,.01,.894],120496:[.686,0,.436],120497:[.686,0,.901],120498:[.698,0,.806],120499:[.686,0,1.092],120500:[.686,0,.9],120501:[.675,0,.767],120502:[.696,.01,.864],120503:[.68,0,.9],120504:[.686,0,.786],120506:[.686,0,.831],120507:[.675,0,.8],120508:[.697,0,.894],120509:[.686,0,.831],120510:[.686,0,.869],120511:[.686,0,.894],120512:[.696,0,.831],120513:[.686,.024,.958],120546:[.716,0,.75,{sk:.139}],120547:[.683,0,.759,{sk:.0833}],120548:[.68,0,.615,{ic:.106,sk:.0833}],120549:[.716,0,.833,{sk:.167}],120550:[.68,0,.738,{ic:.026,sk:.0833}],120551:[.683,0,.683,{ic:.04,sk:.0833}],120552:[.683,0,.831,{ic:.057,sk:.0556}],120553:[.704,.022,.763,{sk:.0833}],120554:[.683,0,.44,{ic:.064,sk:.111}],120555:[.683,0,.849,{ic:.04,sk:.0556}],120556:[.716,0,.694,{sk:.167}],120557:[.683,0,.97,{ic:.081,sk:.0833}],120558:[.683,0,.803,{ic:.085,sk:.0833}],120559:[.677,0,.742,{ic:.035,sk:.0833}],120560:[.704,.022,.763,{sk:.0833}],120561:[.68,0,.831,{ic:.056,sk:.0556}],120562:[.683,0,.642,{ic:.109,sk:.0833}],120564:[.683,0,.78,{ic:.026,sk:.0833}],120565:[.677,0,.584,{ic:.12,sk:.0833}],120566:[.705,0,.583,{ic:.117,sk:.0556}],120567:[.683,0,.667,{sk:.0833}],120568:[.683,0,.828,{ic:.024,sk:.0833}],120569:[.683,0,.612,{ic:.08,sk:.0556}],120570:[.704,0,.772,{ic:.014,sk:.0833}],120572:[.442,.011,.64,{sk:.0278}],120573:[.705,.194,.566,{sk:.0833}],120574:[.441,.216,.518,{ic:.025}],120575:[.717,.01,.444,{sk:.0556}],120576:[.452,.022,.466,{sk:.0833}],120577:[.704,.204,.438,{ic:.033,sk:.0833}],120578:[.442,.216,.497,{sk:.0556}],120579:[.705,.01,.469,{sk:.0833}],120580:[.442,.01,.354,{sk:.0556}],120581:[.442,.011,.576],120582:[.694,.012,.583],120583:[.442,.216,.603,{sk:.0278}],120584:[.442,0,.494,{ic:.036,sk:.0278}],120585:[.704,.205,.438,{sk:.111}],120586:[.441,.011,.485,{sk:.0556}],120587:[.431,.011,.57],120588:[.442,.216,.517,{sk:.0833}],120589:[.442,.107,.363,{ic:.042,sk:.0833}],120590:[.431,.011,.571],120591:[.431,.013,.437,{ic:.08,sk:.0278}],120592:[.443,.01,.54,{sk:.0278}],120593:[.442,.218,.654,{sk:.0833}],120594:[.442,.204,.626,{sk:.0556}],120595:[.694,.205,.651,{sk:.111}],120596:[.443,.011,.622],120597:[.715,.022,.531,{ic:.035,sk:.0833}],120598:[.431,.011,.406,{sk:.0556}],120599:[.705,.011,.591,{sk:.0833}],120600:[.434,.006,.667,{ic:.067}],120601:[.694,.205,.596,{sk:.0833}],120602:[.442,.194,.517,{sk:.0833}],120603:[.431,.01,.828],120604:[.711,0,.869,{sk:.16}],120605:[.686,0,.866,{sk:.0958}],120606:[.68,0,.657,{ic:.12,sk:.0958}],120607:[.711,0,.958,{sk:.192}],120608:[.68,0,.81,{ic:.015,sk:.0958}],120609:[.686,0,.773,{ic:.032,sk:.0958}],120610:[.686,0,.982,{ic:.045,sk:.0639}],120611:[.702,.017,.867,{sk:.0958}],120612:[.686,0,.511,{ic:.062,sk:.128}],120613:[.686,0,.971,{ic:.032,sk:.0639}],120614:[.711,0,.806,{sk:.192}],120615:[.686,0,1.142,{ic:.077,sk:.0958}],120616:[.686,0,.95,{ic:.077,sk:.0958}],120617:[.675,0,.841,{ic:.026,sk:.0958}],120618:[.703,.017,.837,{sk:.0958}],120619:[.68,0,.982,{ic:.044,sk:.0639}],120620:[.686,0,.723,{ic:.124,sk:.0958}],120622:[.686,0,.885,{ic:.017,sk:.0958}],120623:[.675,0,.637,{ic:.135,sk:.0958}],120624:[.703,0,.671,{ic:.131,sk:.0639}],120625:[.686,0,.767,{sk:.0958}],120626:[.686,0,.947,{sk:.0958}],120627:[.686,0,.714,{ic:.076,sk:.0639}],120628:[.703,0,.879,{sk:.0958}],120630:[.452,.008,.761,{sk:.0319}],120631:[.701,.194,.66,{sk:.0958}],120632:[.451,.211,.59,{ic:.027}],120633:[.725,.008,.522,{sk:.0639}],120634:[.461,.017,.529,{sk:.0958}],120635:[.711,.202,.508,{ic:.013,sk:.0958}],120636:[.452,.211,.6,{sk:.0639}],120637:[.702,.008,.562,{sk:.0958}],120638:[.452,.008,.412,{sk:.0639}],120639:[.452,.008,.668],120640:[.694,.013,.671],120641:[.452,.211,.708,{sk:.0319}],120642:[.452,0,.577,{ic:.031,sk:.0319}],120643:[.711,.201,.508,{sk:.128}],120644:[.452,.008,.585,{sk:.0639}],120645:[.444,.008,.682],120646:[.451,.211,.612,{sk:.0958}],120647:[.451,.105,.424,{ic:.033,sk:.0958}],120648:[.444,.008,.686],120649:[.444,.013,.521,{ic:.089,sk:.0319}],120650:[.453,.008,.631,{sk:.0319}],120651:[.452,.216,.747,{sk:.0958}],120652:[.452,.201,.718,{sk:.0639}],120653:[.694,.202,.758,{sk:.128}],120654:[.453,.008,.718],120655:[.71,.017,.628,{ic:.029,sk:.0958}],120656:[.444,.007,.483,{sk:.0639}],120657:[.701,.008,.692,{sk:.0958}],120658:[.434,.006,.667,{ic:.067}],120659:[.694,.202,.712,{sk:.0958}],120660:[.451,.194,.612,{sk:.0958}],120661:[.444,.008,.975],120662:[.694,0,.733],120663:[.694,0,.733],120664:[.691,0,.581],120665:[.694,0,.917],120666:[.691,0,.642],120667:[.694,0,.672],120668:[.694,0,.794],120669:[.716,.022,.856],120670:[.694,0,.331],120671:[.694,0,.764],120672:[.694,0,.672],120673:[.694,0,.978],120674:[.694,0,.794],120675:[.688,0,.733],120676:[.716,.022,.794],120677:[.691,0,.794],120678:[.694,0,.703],120680:[.694,0,.794],120681:[.688,0,.733],120682:[.715,0,.856],120683:[.694,0,.794],120684:[.694,0,.733],120685:[.694,0,.856],120686:[.716,0,.794],120782:[.654,.01,.575],120783:[.655,0,.575],120784:[.654,0,.575],120785:[.655,.011,.575],120786:[.656,0,.575],120787:[.655,.011,.575],120788:[.655,.011,.575],120789:[.676,.011,.575],120790:[.654,.011,.575],120791:[.654,.011,.575],120802:[.678,.022,.5],120803:[.678,0,.5],120804:[.677,0,.5],120805:[.678,.022,.5],120806:[.656,0,.5],120807:[.656,.021,.5],120808:[.677,.022,.5],120809:[.656,.011,.5],120810:[.678,.022,.5],120811:[.677,.022,.5],120812:[.715,.022,.55],120813:[.716,0,.55],120814:[.716,0,.55],120815:[.716,.022,.55],120816:[.694,0,.55],120817:[.694,.022,.55],120818:[.716,.022,.55],120819:[.695,.011,.55],120820:[.715,.022,.55],120821:[.716,.022,.55],120822:[.621,.01,.525],120823:[.622,0,.525],120824:[.622,0,.525],120825:[.622,.011,.525],120826:[.624,0,.525],120827:[.611,.01,.525],120828:[.622,.011,.525],120829:[.627,.01,.525],120830:[.621,.01,.525],120831:[.622,.011,.525]}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.sansSerifBoldItalic=void 0;var r=Q(6),T=Q(238);e.sansSerifBoldItalic=r.AddPaths(T.sansSerifBoldItalic,{305:"54 431Q63 458 102 458H127H149Q192 458 199 433Q201 427 201 229T199 25Q190 0 149 0H125L81 1Q61 7 54 28V431",567:"-38 -84Q-36 -84 -14 -95T33 -106H38Q70 -103 78 -86Q83 -78 83 -49T84 180Q84 427 86 433Q93 458 136 458H158H180Q201 458 209 456T225 443Q230 436 231 418Q232 397 232 313V183V124V40Q232 -55 228 -87T203 -147Q166 -205 78 -205Q31 -205 -20 -189T-71 -159Q-71 -156 -59 -123Q-50 -96 -47 -91T-38 -84"},{})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.sansSerifBoldItalic=void 0,e.sansSerifBoldItalic={305:[.458,0,.256],567:[.458,.205,.286]}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.sansSerifBold=void 0;var r=Q(6),T=Q(240);e.sansSerifBold=r.AddPaths(T.sansSerifBold,{33:"111 669Q111 680 111 682T113 689T121 693T137 694H184H249Q255 686 256 681Q244 220 239 213Q236 208 229 208T183 207T137 207T127 213T118 431T111 669ZM110 71V95Q110 137 136 144Q140 146 183 146H200Q246 146 254 121Q256 115 256 73V51Q256 9 230 2Q225 0 181 0L138 1Q121 7 113 21L111 28L110 71",34:"38 687Q42 693 45 693Q46 694 111 694H176Q179 690 183 687V556L144 501Q139 494 134 486T126 474T120 465T114 457T110 451T106 447T102 445T98 443T94 443T89 442H73H62Q37 442 37 453Q37 458 55 501T74 546Q74 548 59 548L44 549L38 555V687ZM275 687Q279 693 282 693Q283 694 348 694H413Q416 690 420 687V556L381 501Q376 494 371 486T363 474T357 465T351 457T347 451T343 447T339 445T335 443T331 443T326 442H310H299Q274 442 274 453Q274 458 292 501T311 546Q311 548 296 548L281 549L275 555V687",35:"61 365Q61 370 62 375T65 383T69 390T74 395T80 399T85 403T90 406L94 407H344L381 536Q418 668 426 680Q431 687 445 692Q451 694 457 694Q477 694 488 682T500 651Q500 645 466 528T431 409Q431 407 504 407H577L609 521Q651 668 656 675Q669 693 691 693Q710 693 721 680T733 651Q733 645 699 528T664 409Q664 407 743 407H823L827 405Q831 403 834 402T841 397T848 389T853 379T855 365Q855 337 823 324L731 323H639L619 253Q599 181 598 180V177H823L827 175Q831 173 834 172T841 167T848 159T853 149T855 135Q855 107 823 94L698 93H573L540 -21Q498 -168 493 -175Q480 -193 458 -193Q439 -193 428 -180T416 -151Q416 -144 450 -27T485 91Q485 93 412 93H340L307 -21Q265 -168 260 -175Q247 -193 225 -193Q206 -193 195 -180T183 -151Q183 -144 217 -27T252 91Q252 93 173 93L94 94Q61 105 61 135Q61 140 62 145T65 153T69 160T74 165T80 169T85 173T90 176L94 177H185L277 178L297 248L318 320V323H206L94 324Q61 335 61 365ZM551 320V323H479Q406 323 405 322Q404 319 385 249T365 178T438 177L510 178L530 248L551 320",36:"231 712L232 716Q232 719 232 722T234 729T239 736T246 743T256 748T271 750Q318 750 318 711V703Q393 692 451 656Q469 645 470 640Q470 635 461 587L453 537Q445 529 442 529Q438 529 424 540T384 565T330 585Q328 585 325 585T320 586L318 587V434Q322 433 333 429T350 424T365 418T382 409T399 397T419 380Q488 313 488 213Q488 24 334 -5L318 -8V-17Q318 -56 279 -56H272Q253 -56 243 -46T232 -30T231 -18V-8H224Q170 2 127 20T68 50T49 67Q49 71 58 122T68 176Q71 182 79 182Q83 182 98 169T145 138T216 110Q228 108 229 108H231V288Q167 299 114 356T61 496Q61 537 70 570T94 624T126 661T162 684T195 696T219 701L228 702H231V712ZM231 521Q231 583 230 583Q226 582 220 579T204 561T193 521Q193 491 212 472Q226 458 230 458Q231 458 231 521ZM318 112Q356 131 356 187Q356 237 318 263V112",37:"61 549Q61 733 218 749Q220 749 228 749T241 750Q286 750 321 735T369 708T389 683Q422 634 422 548V538Q422 519 420 501T408 453T381 401T328 364T243 347Q61 347 61 549ZM292 549Q292 663 242 663Q221 663 211 648T198 615T196 566V548Q196 471 206 454Q218 434 242 434Q292 434 292 549ZM243 -55Q223 -55 212 -42T201 -13Q201 -2 207 7Q209 11 480 371T758 738Q770 750 788 750Q805 750 817 738T830 709Q830 694 820 681L544 315Q273 -43 269 -47Q258 -55 243 -55ZM606 146Q606 330 763 346Q764 346 773 346T786 347Q831 347 866 332T914 305T934 280Q966 233 966 146V135Q966 115 964 97T952 49T925 -2T872 -40T788 -56Q606 -56 606 146ZM742 146V132Q742 107 743 93T748 62T762 39T787 31Q819 31 832 79Q837 97 837 146Q837 260 787 260Q767 260 757 246T744 214T742 169V146",38:"757 117Q762 117 769 110V3Q759 -7 718 -14T641 -22T571 -15T518 1T477 19T453 31L437 23Q350 -19 257 -22Q158 -22 103 30T47 155Q47 188 57 216T87 263T119 292T151 313L182 333L187 336L181 349Q150 431 150 506Q150 605 211 660T347 716Q417 716 471 668T526 543Q526 517 518 495T471 432T360 343L342 330Q342 327 358 306T402 250T458 189L467 181Q518 225 556 289T607 395L620 437Q622 443 630 443Q631 443 679 430Q718 420 725 418T733 409Q733 402 722 365T670 255T573 123Q562 111 563 111Q589 94 644 94Q678 94 703 100T740 111T757 117ZM397 544Q397 573 384 601T346 629Q320 629 299 607T277 538Q277 484 295 429Q301 413 301 412Q302 409 309 415Q397 476 397 544ZM227 258Q197 228 197 177Q197 150 207 126T234 95Q242 93 251 93Q288 93 337 107L349 110L328 131Q266 196 234 248L227 258",39:"81 687Q85 693 88 693Q89 694 154 694H219Q222 690 226 687V556L187 501Q182 494 177 486T169 474T163 465T157 457T153 451T149 447T145 445T141 443T137 443T132 442H116H105Q80 442 80 453Q80 458 98 501T117 546Q117 548 102 548L87 549L81 555V687",40:"79 250Q79 352 100 441T152 585T213 678T266 733L287 749Q288 750 324 750H359Q366 741 366 738Q366 734 356 721T329 682T296 623T262 531T238 407Q230 346 230 250Q230 142 244 55T278 -82T318 -165T352 -215T366 -238Q366 -242 359 -249H286L277 -242Q79 -74 79 250",41:"61 737Q61 750 85 750H106H141L150 742Q348 574 348 250T150 -242L141 -249L106 -250H87Q61 -250 61 -238Q61 -233 74 -216Q157 -113 183 51Q197 130 197 250T183 449Q174 505 158 554T126 634T95 687T71 722T61 737",42:"241 579Q241 582 228 639T215 702Q215 722 233 736T271 750Q296 750 315 736T334 702V697Q334 693 328 664T314 607L308 579L352 620Q389 654 397 660T417 668Q447 668 464 647T482 602Q482 591 479 583T472 569T459 559T443 552T421 546T397 538L342 521L397 504Q405 501 420 497T442 490T458 483T472 473T479 460T482 440Q482 416 465 395T417 374Q406 375 398 381T352 422L308 463L314 435Q321 407 327 378T334 345Q336 333 327 319T296 295Q288 293 275 293Q241 293 227 311T215 345Q215 349 221 378T234 435L241 463L197 422Q160 388 152 382T132 374Q102 374 85 395T67 440Q67 451 70 459T77 473T90 483T106 490T128 496T152 504L207 521L152 538Q144 541 129 545T107 552T91 559T77 569T70 582T67 602Q67 626 84 647T132 668Q143 667 151 661T197 620L241 579",43:"61 250Q61 276 94 292H386V436V535Q386 577 388 589T401 607Q411 617 427 617Q458 617 468 587Q470 581 470 436V292H762L766 290Q770 288 773 287T780 282T787 274T792 264T794 250Q794 222 762 209L616 208H470V64Q470 -81 468 -87Q458 -116 428 -116T388 -87Q386 -81 386 64V208H240L94 209Q61 220 61 250",44:"81 139Q85 145 88 145Q89 146 154 146H219Q222 142 226 139V8L187 -47Q182 -54 177 -62T169 -74T163 -83T157 -91T153 -97T149 -101T145 -103T141 -105T137 -105T132 -106H116H105Q80 -106 80 -95Q80 -90 98 -47T117 -2Q117 0 102 0L87 1L81 7V139",45:"12 230Q12 257 26 265T80 274Q88 274 114 274T158 273T201 273T235 274Q276 274 290 266T305 230T291 194T235 185Q226 185 201 185T159 186Q143 186 119 186T85 185Q43 185 28 193T12 230",46:"219 146Q222 142 226 139V7L222 4L219 1L154 0Q102 0 94 0T82 6Q80 9 80 74L81 139Q85 145 88 145Q89 146 154 146H219",47:"103 -249Q81 -249 71 -235T61 -207Q61 -201 62 -198Q64 -192 235 265T409 727Q418 750 445 750Q464 750 476 737T488 707Q488 701 313 234Q143 -225 137 -232Q126 -249 103 -249",58:"226 319L219 313H87L81 319L80 384Q80 437 80 445T86 456Q89 458 154 458H219Q222 454 226 451V319ZM219 146Q222 142 226 139V7L222 4L219 1L154 0Q102 0 94 0T82 6Q80 9 80 74L81 139Q85 145 88 145Q89 146 154 146H219",59:"226 319L219 313H87L81 319L80 384Q80 437 80 445T86 456Q89 458 154 458H219Q222 454 226 451V319ZM81 139Q85 145 88 145Q89 146 154 146H219Q222 142 226 139V8L187 -47Q182 -54 177 -62T169 -74T163 -83T157 -91T153 -97T149 -101T145 -103T141 -105T137 -105T132 -106H116H105Q80 -106 80 -95Q80 -90 98 -47T117 -2Q117 0 102 0L87 1L81 7V139",61:"94 324Q61 335 61 366Q61 396 91 405Q96 407 429 407H762Q763 406 767 404T774 400T781 395T787 387T792 378T794 365Q794 338 762 324H94ZM94 94Q61 105 61 135Q61 149 69 160T92 175Q97 177 430 177H762L766 175Q770 173 773 172T780 167T787 159T792 149T794 135Q794 107 762 94H94",63:"61 644Q61 652 87 666T157 693T244 705Q344 705 400 671T457 551Q457 516 446 490T422 451T387 421T356 391Q330 361 318 332T305 292T303 252Q303 218 300 213T290 208T244 207H220Q194 207 188 213Q187 214 186 215V255Q187 282 188 296T198 345T229 417T288 496Q306 515 306 559Q306 596 296 607T253 618Q214 618 185 607T143 583T120 558T103 547Q99 547 95 551Q93 553 77 597T61 644ZM171 71V95Q171 137 197 144Q201 146 244 146H261Q307 146 315 121Q317 115 317 73V51Q317 9 291 2Q286 0 242 0L199 1Q182 7 174 21L172 28L171 71",64:"61 264T61 347T82 494T136 596T217 660T311 694T410 704Q460 704 471 703Q534 694 577 666Q633 623 651 552T670 370V342Q670 249 633 195Q583 116 454 116Q238 116 238 347Q238 443 276 499Q328 578 456 578Q488 578 494 577L504 575Q475 617 430 617H421Q196 617 196 347Q196 215 253 143Q310 76 427 76Q499 76 561 102L575 107H664Q671 97 671 94V89L663 81Q566 -11 422 -11Q365 -11 316 -2T219 33T137 97T82 200ZM469 490Q459 492 453 492Q429 492 405 472Q374 439 374 347Q374 233 423 210Q436 202 454 202L486 210Q536 228 536 347Q536 461 486 484Q476 490 469 490",91:"318 -206Q318 -235 305 -243T255 -251Q248 -251 229 -251T198 -250H143Q112 -250 99 -246T81 -225Q79 -219 79 250T81 725Q85 741 98 745T143 750H198Q210 750 229 750T255 751Q291 751 304 743T318 707Q318 680 301 668Q293 663 255 663H224V-163H255Q293 -163 301 -168Q318 -180 318 -206",93:"24 706Q24 734 39 742T90 751Q97 751 114 751T143 750H198Q230 750 243 746T261 725Q263 719 263 250T261 -225Q257 -241 244 -245T198 -250H143Q131 -250 112 -250T86 -251Q50 -251 37 -243T24 -207Q24 -180 41 -168Q49 -163 87 -163H118V663H87H71Q24 663 24 706",94:"108 550Q108 554 135 589T190 658T219 692Q221 694 275 694Q328 694 330 693Q331 692 381 629T438 557Q441 553 441 549T434 538L399 537Q363 537 362 538Q361 538 318 575L275 611Q274 611 231 575Q188 538 187 538Q186 537 150 537L115 538Q108 545 108 550",95:"0 -66Q0 -32 26 -25Q30 -23 274 -23Q469 -23 497 -23T532 -28Q549 -40 549 -67Q549 -93 532 -105Q525 -109 498 -109T275 -110Q31 -110 26 -108Q0 -101 0 -66",126:"92 215Q92 259 122 301T204 344Q238 344 264 329T310 300T343 285Q356 285 361 295T369 322T377 344H450Q457 334 457 330Q457 281 427 240T344 198Q312 198 285 213T239 242T206 257Q188 257 182 230T172 199L137 198H120Q102 198 97 200T92 215",305:"54 431Q63 458 102 458H127H149Q192 458 199 433Q201 427 201 229T199 25Q190 0 149 0H125L81 1Q61 7 54 28V431",567:"-38 -84Q-36 -84 -14 -95T33 -106H38Q70 -103 78 -86Q83 -78 83 -49T84 180Q84 427 86 433Q93 458 136 458H158H180Q201 458 209 456T225 443Q230 436 231 418Q232 397 232 313V183V124V40Q232 -55 228 -87T203 -147Q166 -205 78 -205Q31 -205 -20 -189T-71 -159Q-71 -156 -59 -123Q-50 -96 -47 -91T-38 -84",768:"-458 682Q-458 690 -452 692T-426 694H-381H-314L-312 691Q-311 691 -305 682T-287 655T-263 622L-218 555V549Q-218 544 -224 538L-259 537Q-295 537 -296 538Q-298 539 -376 606T-456 676Q-458 680 -458 682",769:"-290 537H-310Q-334 537 -334 549Q-334 553 -311 588T-264 656L-241 690Q-240 690 -239 691T-236 693Q-235 694 -167 694H-100Q-93 684 -93 681T-94 677Q-95 675 -173 607T-255 538Q-256 537 -290 537",770:"-442 550Q-442 554 -415 589T-360 658T-331 692Q-329 694 -275 694Q-222 694 -220 693Q-219 692 -169 629T-112 557Q-109 552 -109 549Q-109 545 -116 538L-151 537Q-187 537 -188 538Q-189 538 -232 575L-275 611Q-276 611 -319 575Q-362 538 -363 538Q-364 537 -400 537L-435 538Q-442 545 -442 550",771:"-458 565Q-458 609 -428 651T-346 694Q-312 694 -286 679T-240 650T-207 635Q-194 635 -189 645T-181 672T-173 694H-100Q-93 684 -93 680Q-93 631 -123 590T-206 548Q-238 548 -265 563T-311 592T-344 607Q-362 607 -368 580T-378 549L-413 548H-430Q-448 548 -453 550T-458 565",772:"-84 660Q-81 656 -77 653V567L-81 564L-84 561L-274 560H-383Q-469 560 -471 565L-472 566Q-474 569 -474 611L-473 653Q-469 659 -466 659Q-465 660 -274 660H-84",774:"-123 694Q-80 694 -80 657Q-80 626 -99 601T-161 563Q-199 552 -275 552Q-352 552 -389 563Q-470 586 -470 655Q-470 667 -468 673Q-457 694 -435 694H-431Q-408 694 -396 685Q-387 676 -387 671Q-384 661 -275 661Q-167 661 -164 671Q-164 674 -163 677T-151 687T-123 694",775:"-329 596Q-346 602 -351 611T-356 638V646Q-356 653 -356 654T-356 661T-355 668T-353 673T-351 679T-347 684T-341 689T-332 693T-274 695H-221Q-202 683 -198 676T-194 645Q-194 632 -195 625T-202 610T-221 596H-329",776:"-331 695Q-312 683 -308 676T-304 645Q-304 632 -304 626T-311 610T-331 596L-380 595H-408Q-448 595 -457 617Q-459 621 -459 645T-457 673Q-448 696 -409 696Q-405 696 -396 696T-380 695H-331ZM-247 644Q-247 658 -246 665T-239 680T-221 694Q-217 695 -169 695H-143Q-102 695 -93 672Q-91 664 -91 645V635Q-91 613 -106 602Q-113 597 -121 596T-171 595L-219 596Q-232 600 -238 608T-246 622T-247 644",778:"-365 616Q-365 658 -331 676T-256 694Q-253 694 -247 694T-236 693Q-166 693 -139 666Q-119 644 -119 616T-139 565Q-166 538 -237 538H-242Q-365 538 -365 616ZM-181 616Q-181 641 -195 647T-242 654Q-258 654 -266 654T-284 650T-298 638T-303 616Q-303 592 -289 585T-242 577Q-209 577 -195 584T-181 616",779:"-426 686Q-424 694 -394 694H-350H-283Q-277 686 -277 682Q-277 673 -317 608T-361 538L-396 537H-420Q-432 537 -436 539T-440 548Q-440 560 -434 616Q-432 633 -430 650T-427 677L-426 686ZM-243 686Q-241 694 -211 694H-167H-100Q-94 686 -94 682Q-94 673 -134 608T-178 538L-213 537H-237Q-249 537 -253 539T-257 548Q-257 560 -251 616Q-249 633 -247 650T-244 677L-243 686",780:"-442 645Q-442 657 -418 657H-398Q-393 657 -388 657T-379 657T-371 656T-365 656H-363L-319 620L-276 583Q-275 583 -232 619Q-189 656 -188 656Q-187 657 -151 657H-116Q-109 649 -109 645Q-109 642 -112 637Q-118 629 -168 566T-220 501Q-222 500 -275 500Q-329 500 -331 501Q-442 634 -442 645",8211:"0 284Q0 318 26 325Q30 327 274 327Q469 327 497 327T532 322Q549 310 549 283Q549 257 532 245Q525 241 498 241T275 240Q31 240 26 242Q0 249 0 284",8212:"0 284Q0 318 26 325Q30 327 549 327T1073 325Q1099 318 1099 284Q1099 249 1073 242Q1068 240 549 240Q31 240 26 242Q0 249 0 284",8213:"0 284Q0 318 26 325Q30 327 549 327T1073 325Q1099 318 1099 284Q1099 249 1073 242Q1068 240 549 240Q31 240 26 242Q0 249 0 284",8215:"0 -66Q0 -32 26 -25Q30 -23 274 -23Q469 -23 497 -23T532 -28Q549 -40 549 -67Q549 -93 532 -105Q525 -109 498 -109T275 -110Q31 -110 26 -108Q0 -101 0 -66",8216:"87 443L81 449V581L119 636Q125 644 131 653T141 667T148 677T154 685T158 689T163 692T167 693T173 694H190H201Q226 694 226 683Q226 678 208 635T189 590Q189 588 204 588H219Q222 584 226 581V449L219 443H87",8217:"81 687Q85 693 88 693Q89 694 154 694H219Q222 690 226 687V556L187 501Q182 494 177 486T169 474T163 465T157 457T153 451T149 447T145 445T141 443T137 443T132 442H116H105Q80 442 80 453Q80 458 98 501T117 546Q117 548 102 548L87 549L81 555V687",8220:"144 443L138 449V581L176 636Q182 644 188 653T198 667T205 677T211 685T215 689T220 692T224 693T230 694H247H258Q283 694 283 683Q283 678 265 635T246 590Q246 588 261 588H276Q279 584 283 581V449L276 443H144ZM381 443L375 449V581L413 636Q419 644 425 653T435 667T442 677T448 685T452 689T457 692T461 693T467 694H484H495Q520 694 520 683Q520 678 502 635T483 590Q483 588 498 588H513Q516 584 520 581V449L513 443H381",8221:"38 687Q42 693 45 693Q46 694 111 694H176Q179 690 183 687V556L144 501Q139 494 134 486T126 474T120 465T114 457T110 451T106 447T102 445T98 443T94 443T89 442H73H62Q37 442 37 453Q37 458 55 501T74 546Q74 548 59 548L44 549L38 555V687ZM275 687Q279 693 282 693Q283 694 348 694H413Q416 690 420 687V556L381 501Q376 494 371 486T363 474T357 465T351 457T347 451T343 447T339 445T335 443T331 443T326 442H310H299Q274 442 274 453Q274 458 292 501T311 546Q311 548 296 548L281 549L275 555V687",8260:"103 -249Q81 -249 71 -235T61 -207Q61 -201 62 -198Q64 -192 235 265T409 727Q418 750 445 750Q464 750 476 737T488 707Q488 701 313 234Q143 -225 137 -232Q126 -249 103 -249",8710:"381 692Q386 694 458 694Q516 694 527 693T549 687Q564 680 575 663Q576 658 715 349T856 27Q856 6 838 1H826Q815 1 795 1T747 1T686 1T616 0T539 0T458 0T378 0T300 0T230 0T169 1T122 1T90 1H78Q60 6 60 27Q62 38 201 349T341 663Q356 687 381 692ZM627 148Q626 149 581 250T492 453L447 554Q447 553 446 552Q444 546 326 278L268 148Q268 147 448 147Q627 147 627 148"},{})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.sansSerifBold=void 0,e.sansSerifBold={33:[.694,0,.367],34:[.694,-.442,.558],35:[.694,.193,.917],36:[.75,.056,.55],37:[.75,.056,1.029],38:[.716,.022,.831],39:[.694,-.442,.306],40:[.75,.249,.428],41:[.75,.25,.428],42:[.75,-.293,.55],43:[.617,.116,.856],44:[.146,.106,.306],45:[.273,-.186,.367],46:[.146,0,.306],47:[.75,.249,.55],58:[.458,0,.306],59:[.458,.106,.306],61:[.407,-.094,.856],63:[.705,0,.519],64:[.704,.011,.733],91:[.75,.25,.343],93:[.75,.25,.343],94:[.694,-.537,.55],95:[-.023,.11,.55],126:[.344,-.198,.55],305:[.458,0,.256],567:[.458,.205,.286],768:[.694,-.537,0],769:[.694,-.537,0],770:[.694,-.537,0],771:[.694,-.548,0],772:[.66,-.56,0],774:[.694,-.552,0],775:[.695,-.596,0],776:[.695,-.595,0],778:[.694,-.538,0],779:[.694,-.537,0],780:[.657,-.5,0],8211:[.327,-.24,.55],8212:[.327,-.24,1.1],8213:[.327,-.24,1.1],8215:[-.023,.11,.55],8216:[.694,-.443,.306],8217:[.694,-.442,.306],8220:[.694,-.443,.558],8221:[.694,-.442,.558],8260:[.75,.249,.55],8710:[.694,0,.917]}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.sansSerifItalic=void 0;var r=Q(6),T=Q(242);e.sansSerifItalic=r.AddPaths(T.sansSerifItalic,{33:"160 187L257 694H306Q355 694 355 693L238 186H199Q160 186 160 187ZM110 2Q111 3 120 49T131 96Q131 98 180 98T229 96L219 50Q209 3 208 2V0H110V2",34:"171 647L180 694H229Q278 694 278 693L276 686Q275 680 273 668T268 644L258 597L182 471H157Q133 471 133 472L189 595Q189 596 174 596H160V598Q160 601 171 647ZM365 647L374 694H423Q472 694 472 693L470 686Q469 680 467 668T462 644L452 597L376 471H351Q327 471 327 472L383 595Q383 596 368 596H354V598Q354 601 365 647",35:"793 170Q809 162 809 149Q809 145 807 141T802 135T796 132L793 130H547L472 -27Q397 -184 394 -187Q389 -194 379 -194Q367 -194 362 -183Q359 -179 359 -173Q360 -168 431 -20L503 129Q503 130 410 130H317L242 -27Q167 -184 164 -187Q159 -194 149 -194Q137 -194 132 -183Q129 -179 129 -173Q130 -168 201 -19L273 130H187L100 131Q87 141 87 150Q87 162 102 170H294L331 248Q339 265 349 286T365 318L370 328Q370 330 258 330Q145 330 142 332Q129 338 129 351Q129 362 140 368Q146 370 267 370L391 371L467 527Q542 684 544 686Q544 688 549 691T560 694H562Q565 693 567 692T571 690T575 686T578 681T579 672Q577 665 507 520T436 373L435 370H528L621 371L692 518Q767 675 769 677Q775 694 789 694Q798 694 804 688T809 672Q806 664 737 519L665 371L751 370Q835 370 841 368Q851 362 851 350Q851 337 841 334T799 330H765H741H645L606 250L568 170H793ZM600 328Q600 330 508 330H415Q412 326 338 171Q338 170 431 170H524L561 248Q569 265 579 286T595 318L600 328",36:"228 70Q233 92 246 155T270 266T280 316Q271 318 265 320T237 333T200 360T172 403T159 468Q159 537 205 600T325 691Q352 701 360 701Q361 701 361 701T362 703T364 711T368 727L372 750H409Q445 750 445 749L436 705Q436 703 450 702T494 691T554 657L565 649Q562 642 548 604L534 568Q511 591 484 605T440 621L424 623L419 624L372 405Q399 400 424 384Q490 338 490 247V240Q490 156 430 85Q374 13 294 -5L284 -7L280 -30Q279 -35 278 -41T275 -52L274 -55Q274 -56 237 -56Q201 -56 201 -54Q202 -53 205 -34T211 -11Q211 -9 206 -9Q154 -2 115 19Q80 35 56 59L88 141L99 131Q109 121 119 113T141 99T160 89T180 82T197 77T214 73T228 70ZM303 426Q304 427 313 471T332 564T345 620L335 616Q287 596 263 549Q252 525 252 499Q252 470 267 451T298 426Q303 424 303 426ZM302 75Q305 75 315 80T340 98T367 125T390 164T399 214Q399 247 384 268T349 297Q338 247 326 186L302 75",37:"268 347Q224 347 195 386T165 488Q165 517 173 552Q191 637 246 693T349 749Q389 749 414 725T448 673T456 614Q456 506 396 427T268 347ZM372 604Q372 674 339 674Q311 674 290 633T261 549T253 482V474Q253 438 272 426Q277 424 286 424Q319 424 345 485T372 604ZM189 -56Q179 -56 173 -49T167 -37Q167 -30 347 198Q425 296 475 360Q780 745 785 747Q790 750 796 750Q814 748 814 730Q814 725 811 719L204 -49Q198 -56 189 -56ZM523 87Q523 184 583 265T713 347Q758 347 786 308T815 207Q815 110 757 28T629 -55Q576 -55 550 -12T523 87ZM729 200Q729 271 696 271Q675 271 658 247T631 189T616 125T611 76Q611 21 644 21H647Q672 21 700 77T729 200",38:"219 -22Q158 -22 117 13T71 111Q71 131 74 150T84 185T98 215T118 241T137 262T159 281T179 295T199 308L214 318L258 348L256 362Q254 373 254 413V435Q254 483 271 537T325 641T411 708Q427 715 441 715Q446 716 455 716Q504 716 534 681T565 590Q565 522 519 468T377 347L358 334Q359 333 363 320T374 290T387 262Q404 227 428 187T460 139Q521 183 574 251T651 362T674 409L710 398Q746 388 747 388Q747 381 720 333T635 213T517 94L510 87Q542 57 598 57Q649 57 708 72Q716 75 718 75L709 34L701 -7Q636 -22 578 -22Q531 -22 498 -8T428 34L408 25Q314 -22 219 -22ZM480 579Q480 640 436 640Q410 640 385 615T351 554Q340 513 340 457Q340 413 343 410Q343 406 360 419Q431 471 455 505T480 579ZM245 57Q279 59 311 67T359 81T375 89T358 113T318 178T281 260L274 277L245 257Q167 205 167 135Q167 110 174 93T194 69T217 60T237 57H245",39:"228 647L237 694H286Q335 694 335 693L334 686Q332 680 330 668T325 644L315 597L239 471H214Q190 471 190 472L246 595Q246 596 231 596H217V598Q217 601 228 647",40:"195 37Q195 -7 200 -47T213 -113T231 -166T250 -204T268 -232T280 -250H204L194 -238Q104 -124 104 55Q104 238 181 432T405 740L417 750H454Q491 750 491 749L468 729Q446 709 411 667T337 565T262 405T208 188Q195 110 195 37",41:"300 463Q300 634 222 740L214 750H290L299 740Q300 738 309 726T323 707T337 682T353 651T367 613T379 566T387 510T390 444Q390 314 344 156T203 -125Q179 -155 145 -191Q111 -224 89 -241L78 -250H2Q4 -248 27 -227T65 -189T107 -140T155 -71T200 16T244 129T278 266Q300 372 300 463",42:"193 608Q193 628 210 644T246 660Q250 660 252 660T257 658T264 654T272 648T284 638T302 623Q340 590 340 593Q341 594 345 623T354 682T360 715Q365 729 378 739T407 750Q424 750 433 740T443 720Q443 712 427 652L410 591L462 623Q505 650 514 655T534 660Q549 660 558 650T568 625Q568 617 567 611T560 599T551 590T536 580T519 571T496 561T470 548L429 528L474 500Q482 495 492 489T506 481T516 475T523 469T527 464T529 458T530 450Q530 430 514 414T479 397H475Q468 397 460 402T423 433Q414 440 404 448T388 461L383 465L365 344Q348 306 314 306Q302 306 292 313T281 338Q281 347 297 404L313 464L260 433Q201 397 195 397H189Q173 397 165 407T156 432Q156 438 157 443T161 452T166 460T175 468T185 475T198 482T212 489T230 497T250 506L295 528L250 556Q203 582 202 585Q193 591 193 608",43:"108 244T108 250T112 261T119 268T124 270H426V272Q428 274 457 419Q489 565 492 573Q497 583 508 583Q516 583 522 577T528 565Q528 553 498 417Q491 384 483 346T471 288L467 270H760Q775 262 775 250T760 230H458Q456 221 426 77T394 -71Q389 -83 375 -83Q367 -83 362 -78T356 -64Q356 -58 387 84Q394 118 401 155T413 210L417 229Q417 230 271 230H124Q123 230 120 232T112 239",44:"90 2Q91 3 100 49T111 96Q111 98 160 98T209 96L199 50Q189 3 188 2Q188 0 149 -63L112 -125H63L120 0H105Q90 0 90 2",45:"66 257V259H332V257L324 220L317 186H184Q51 186 51 187T58 220T66 257",46:"90 2Q91 3 100 49T111 96Q111 98 160 98T209 96L199 50Q189 3 188 2V0H90V2",47:"564 744L568 747Q573 750 579 750Q588 750 594 744T599 729Q597 721 321 241T41 -243Q37 -250 27 -250Q6 -250 6 -230Q6 -228 8 -222Q9 -219 285 261T564 744",48:"245 -22Q209 -22 181 -11T135 20T107 65T92 116T88 171Q88 235 114 354T194 557Q226 606 269 635T340 671T392 678H395Q422 678 446 670T495 643T534 582T549 481Q549 430 534 350T499 213Q459 89 379 25Q315 -22 247 -22H245ZM430 582Q408 601 378 601Q313 601 269 534Q234 475 205 341Q181 232 181 174Q181 104 209 76Q231 54 260 54T318 73T368 125Q410 194 447 375Q460 445 460 487Q460 555 430 582",49:"234 613Q277 613 331 628T428 678H439Q451 678 451 676Q450 671 387 373T323 74T384 73H445L430 0H259L88 1L104 73H229L332 560Q278 541 198 539Q198 540 198 541T199 546T200 554T202 564T205 576L213 612H219Q221 612 226 612T234 613",50:"190 460Q189 460 181 475T164 507T155 527Q155 535 182 571Q259 678 380 678Q462 678 506 630T551 513V507Q551 418 487 349Q469 329 441 305T391 265T344 232T316 212Q158 87 158 86T188 85Q194 85 234 85T311 86Q467 86 467 85Q451 9 449 2V0H50Q54 18 58 40L67 79L133 133Q246 226 269 243Q369 318 410 373T452 492Q452 535 433 560T393 592T350 599Q311 599 279 578T231 532T203 484T190 460",51:"446 542Q446 576 424 590T372 605Q330 605 288 583T216 524Q209 515 208 516Q207 517 192 549L178 580L187 589Q224 627 276 652T386 678Q456 678 500 642T544 550Q544 515 530 482T495 427T453 387T418 362L403 353L413 348Q440 335 462 313Q500 271 500 217Q500 135 423 57T236 -22T63 59L56 68L85 141Q106 112 125 98Q177 54 254 54Q315 54 355 105T396 218Q396 242 393 254Q380 301 335 313Q327 315 280 316Q233 316 233 318L249 392Q298 392 322 399Q373 408 409 453T446 542",52:"78 235L411 656H465Q519 656 519 655T475 447T430 237V235H521V233L505 160Q505 159 459 159H414L380 0H286L320 159H62L63 164Q64 169 66 179T70 198L78 235ZM342 235L421 607Q420 607 419 604Q409 535 197 267Q173 236 173 235H342",53:"330 350Q263 350 214 272H133V275Q134 276 174 467L214 655Q214 656 385 656H555V653Q555 652 554 647T550 631T546 613L539 577H284L265 486Q261 464 256 441T248 406L246 395L250 398Q255 401 264 406T286 415T315 423T350 427Q412 427 455 381T498 256Q498 150 415 64T222 -22Q186 -22 155 -12T105 12T74 41T55 65T50 77L51 79Q61 89 78 112L104 145L107 138Q110 130 114 123T125 106T142 88T165 72T196 60T236 55Q282 55 316 79T366 140T389 208T396 267Q396 310 378 330T337 350H330",54:"437 605Q397 605 361 585T301 536T261 477T236 426T228 401L236 408Q244 414 260 424T296 445T345 462T402 469H404Q422 469 434 467T465 446T498 394Q515 351 515 307Q515 254 497 193T439 85Q352 -22 246 -22Q220 -22 196 -14T148 15T109 78T94 179Q94 272 123 373Q163 505 257 591T450 678Q474 678 498 674T535 664T548 656L540 621L532 586L520 590Q509 594 485 599T437 605ZM339 392Q281 392 233 334T185 163V158Q185 87 230 61Q244 54 262 54Q325 54 371 122Q395 158 407 217T419 298Q419 337 401 364T339 392",55:"173 614L181 656H389Q596 656 596 655L595 650Q594 645 592 635T588 616L580 578L554 551Q313 307 245 4L242 -11H192Q143 -11 143 -10Q144 0 148 17T169 89T212 198T285 327T393 470Q423 504 472 550Q479 555 485 561T496 571L329 570Q163 570 163 571L164 577Q166 583 168 593T173 614",56:"159 470Q159 547 229 612T394 678Q467 678 510 636T554 533Q554 512 549 493T535 458T515 429T492 405T467 386T443 372T423 362T409 356L404 354Q404 353 405 353Q411 353 432 341T476 295T500 218Q500 134 424 56T246 -22Q175 -22 126 22T77 143Q77 204 110 251T188 327L202 334Q216 340 229 346T243 353T235 358T214 372T189 393T168 426T159 470ZM467 527Q467 605 375 605Q317 605 281 566T244 472Q244 429 271 411T334 392Q392 392 429 430T467 527ZM405 228Q405 262 384 289T315 316Q257 316 216 266T174 144Q174 95 199 75T262 54Q329 54 367 109T405 228",57:"220 594Q303 677 389 677Q545 677 545 479Q545 413 526 327Q493 175 398 77T202 -22Q124 -22 77 25L130 91L137 83Q169 54 218 54Q255 54 290 76T347 129Q364 151 380 182T403 232T411 256Q410 255 390 241T353 217T303 197T236 187Q195 187 173 209Q155 226 140 263T124 352Q124 392 135 435Q154 527 220 594ZM455 497Q455 605 383 605Q340 605 305 577T246 492Q220 411 220 360Q220 278 279 264Q280 264 287 264T299 263Q347 263 387 302Q455 375 455 497",58:"174 396L184 444H233Q282 444 282 443Q277 421 272 394L262 346H213Q164 346 164 347Q169 369 174 396ZM90 2Q91 3 100 49T111 96Q111 98 160 98T209 96L199 50Q189 3 188 2V0H90V2",59:"174 396L184 444H233Q282 444 282 443Q277 421 272 394L262 346H213Q164 346 164 347Q169 369 174 396ZM90 2Q91 3 100 49T111 96Q111 98 160 98T209 96L199 50Q189 3 188 2Q188 0 149 -63L112 -125H63L120 0H105Q90 0 90 2",61:"142 368Q145 370 463 370Q780 370 784 368Q796 364 796 350T784 332Q780 330 463 330Q145 330 142 332Q129 338 129 351Q129 362 142 368ZM88 137T88 150T102 170H738Q739 170 742 168T750 161T754 150T750 139T743 132T738 130H102Q88 137 88 150",63:"194 652Q194 654 218 666T284 691T362 704Q444 704 490 678T536 583Q536 541 516 500T459 433Q415 400 387 371T343 313T321 266T307 216L301 186H262Q223 186 223 187Q224 199 228 218T250 288T294 377Q317 413 344 440T391 481T414 499Q442 527 442 574Q442 584 441 590T433 607T409 623T362 629Q335 629 310 624T267 610T235 595T214 582T205 576L200 614Q194 651 194 652ZM173 2Q174 3 183 49T194 96Q194 98 243 98T292 96L282 50Q272 3 271 2V0H173V2",64:"120 267Q120 377 179 478T336 642T538 705Q610 705 658 662T707 513Q707 425 681 331Q658 241 590 179T447 117Q386 117 343 163T300 288Q300 397 374 486T544 576Q575 576 608 562Q590 628 517 628Q406 628 309 522T212 278Q212 179 267 122T404 65T550 91H631Q513 -10 390 -10Q265 -10 193 70T120 267ZM600 397Q600 441 581 471T530 501Q476 501 433 436T390 298Q390 254 409 224T462 193Q512 193 556 257T600 397",91:"148 252L253 750H339Q425 750 425 749L424 744Q423 739 421 729T417 711L409 675L367 674H325L235 252Q145 -167 145 -172Q145 -174 187 -174H229V-176Q213 -240 213 -250H127Q41 -250 41 -248Q41 -245 148 252",93:"353 749Q353 746 303 512T200 27T141 -250H-31Q-31 -240 -15 -176V-174H70L250 674H208L165 675L181 750H267Q353 750 353 749",94:"190 527L360 694H434L484 611Q533 528 533 527H457L390 632L385 639L266 527H190",95:"59 -75L66 -38H316Q565 -38 565 -39T558 -75T549 -112Q549 -114 299 -114Q50 -114 50 -113L52 -108Q53 -103 55 -93T59 -75",126:"330 327Q356 326 388 298T446 269Q470 269 484 327H522Q560 327 560 325L557 316Q554 306 549 292T535 263T512 232T480 208Q453 193 429 193T370 222T315 251Q285 251 275 193H199V197Q214 257 251 292T330 327",305:"168 442T168 443T213 444T258 443T212 225T164 2V0H74V2Q75 7 121 224",567:"-54 -96L-48 -104Q-41 -111 -27 -118T7 -126Q60 -126 82 -87Q85 -81 140 181L196 443Q196 444 241 444T286 443Q286 441 232 186T175 -75Q163 -120 122 -162T19 -204Q-13 -204 -41 -196T-83 -180T-96 -170Q-55 -96 -54 -96",768:"-262 681L-270 694H-177L-132 612Q-89 530 -87 528Q-87 527 -125 527H-163L-208 598Q-254 670 -262 681",769:"-96 625L-29 694H63Q42 673 -31 605L-114 527H-190L-176 541Q-160 559 -96 625",770:"-310 527L-140 694H-66L-16 611Q33 528 33 527H-43L-110 632L-115 639L-234 527H-310",771:"-170 677Q-144 676 -112 648T-54 619Q-30 619 -16 677H22Q60 677 60 675L57 666Q54 656 49 642T35 613T12 582T-20 558Q-47 543 -71 543T-130 572T-185 601Q-215 601 -225 543H-301V547Q-286 607 -249 642T-170 677",772:"-314 553L-297 631H-116Q64 631 64 630Q60 612 56 591L47 553L-133 552Q-314 552 -314 553",774:"-142 508Q-205 508 -244 548T-284 652Q-284 666 -281 683L-280 694H-204Q-205 689 -205 677Q-205 650 -196 631T-173 604T-147 593T-125 590Q-85 590 -50 618T-5 686L-2 694H73V690Q53 610 -10 559T-142 508",775:"-180 578Q-179 579 -170 627T-158 678V680H-54V678Q-56 675 -65 627T-76 578V576H-180V578",776:"-273 584Q-272 585 -262 632L-252 678V680H-154V678L-164 632Q-174 585 -175 584Q-175 582 -224 582T-273 584ZM-78 586Q-78 587 -69 632T-58 678V680H40L39 677Q39 676 38 670T34 651T29 628L19 583L-30 582H-79L-78 586",778:"-227 597Q-227 639 -186 666T-102 693H-97Q-29 693 -8 649Q-2 637 -2 623Q-2 582 -43 555T-132 527Q-171 527 -199 546T-227 597ZM-59 619Q-59 635 -68 643T-104 652Q-142 652 -156 636T-171 602Q-171 569 -123 569Q-119 569 -111 570T-99 571Q-59 582 -59 619",779:"-236 619L-195 694H-149Q-103 694 -103 693L-211 527H-287L-282 536Q-281 539 -236 619ZM-70 619L-29 694H17Q63 694 63 693L-45 527H-121L-116 536Q-115 539 -70 619",780:"-283 654H-207L-140 549L-135 542L-16 654H60L-109 487H-147L-184 488L-234 570Q-283 653 -283 654",913:"28 0L429 694H533L585 350Q596 275 610 182T632 46L638 3V0H530L528 18Q527 25 515 103T503 183H223L135 29L118 1L73 0H28ZM492 254Q492 256 473 398T454 589V610Q433 552 290 301L264 255L378 254H492",914:"501 363Q557 355 605 316T653 222Q653 148 586 85T403 2Q394 1 240 0Q90 0 90 1L100 46Q109 90 128 177T164 348L238 694H375Q518 693 546 688Q614 674 655 635T696 544Q696 490 648 441T516 368L501 363ZM601 530Q601 568 566 590T479 621Q472 622 394 623H320L297 513Q292 489 286 459T276 415L273 401V399H339H372Q504 399 571 466Q601 498 601 530ZM257 322Q256 320 230 197T203 73Q203 71 289 71Q379 72 387 73Q459 84 507 122T556 210Q556 255 519 283T428 320Q415 322 336 323Q257 323 257 322",915:"87 2Q88 4 160 346T234 689Q234 691 440 691T646 689Q643 686 629 611H475L321 612Q193 4 191 2V0H87V2",916:"273 343L510 694H617Q790 2 790 0H416L42 1L273 343ZM539 576Q536 597 536 600Q536 602 535 605Q534 607 534 607Q527 580 222 130L201 98H651L648 110Q645 123 639 149T627 198Q554 489 539 576",917:"86 2Q88 4 160 346T233 689Q233 691 461 691Q688 691 688 689Q685 686 671 611H495L320 612L319 609Q319 607 297 501L274 397H436Q597 397 597 396L596 391Q595 386 593 376T589 358L581 322L420 321Q258 321 258 320Q209 89 208 87Q208 85 390 85Q417 85 460 85T518 86L572 85Q556 8 554 2V0H86V2",918:"67 54Q551 615 551 617Q543 618 517 618Q510 618 463 618T376 617Q200 617 200 618T209 657L216 694H459Q702 694 702 692Q702 689 697 667L692 643L207 80H392Q493 81 577 81Q577 70 560 2V0H55V2L67 54",919:"517 2Q518 3 551 161T585 322Q586 323 557 323T422 323H259L190 0H138Q86 0 86 1L96 46Q105 90 124 177T160 348L234 694H337V691Q336 690 306 545T275 399H602L603 403Q603 407 634 551L665 694H768V691Q768 690 695 348T621 2V0H517V2",920:"119 260Q119 348 157 433T254 579T387 677T533 715Q701 715 772 574Q804 511 804 431Q804 315 744 209T586 41T384 -22Q262 -22 191 59T119 260ZM706 426Q706 524 655 582T525 640Q454 640 395 600T293 502Q256 447 237 383T218 266Q218 168 269 112T401 55Q518 55 612 166T706 426ZM283 349L293 397H473Q652 397 652 396Q647 374 642 347L632 299H452Q273 299 273 300Q278 322 283 349",921:"161 348L235 694H338V691Q338 690 265 348T191 2V0H139Q87 0 87 1L96 46Q106 90 125 177T161 348",922:"236 223Q235 222 213 113T188 2V0H138Q88 0 88 1L98 46Q107 90 126 177T162 348L236 694H285Q335 694 335 693L330 671Q326 649 316 603T298 518Q289 477 280 433T266 366L261 343L672 694H729L784 693L465 420L651 0H596L541 1L384 350Q383 351 310 288T236 223",923:"28 0L401 694H504V690Q505 686 543 345T582 1Q582 0 528 0H473V3Q472 6 460 113T435 359T422 558Q422 593 424 603L425 610L424 608Q414 572 343 431Q287 316 143 49L117 1L73 0H28",924:"375 691Q456 215 459 124V106Q488 177 762 641L793 694H929V691Q929 690 856 348T782 2V0H689V2Q691 4 753 304Q817 604 818 606Q819 611 817 608Q817 607 815 603Q798 559 540 117L484 22H440L397 23L393 42Q393 47 373 169T334 422T315 594V609L250 306Q186 3 185 2Q185 0 138 0Q92 0 92 1L102 46Q111 90 130 177T166 348L240 694H375V691",925:"311 609Q310 608 246 306T181 2V0H134Q88 0 88 1L98 46Q107 90 126 177T162 348L236 694H382L383 691Q383 688 418 561T493 286T541 97L544 84L545 89Q545 90 553 128T578 246T610 394L674 694H766V691Q766 690 693 348T619 2V0H472L469 13Q468 17 393 293T312 605L311 609",926:"193 687Q193 688 479 688H765V686Q764 685 755 642L747 600H461L175 601Q175 602 184 645L193 687ZM196 400Q196 401 418 401T640 400L622 315Q622 314 400 314T178 315L196 400ZM42 2Q43 3 51 44T60 87H64Q68 87 75 87T93 87T119 87T151 88T190 88T237 88T291 88T352 88H643Q638 66 634 44T627 13T624 2V0H42V2",927:"118 254Q118 366 174 473T324 648T517 716Q627 716 695 638T763 435Q763 321 706 215T555 43T362 -22Q256 -22 187 56T118 254ZM380 58Q452 58 518 116T622 263T661 442Q661 496 646 535T608 594T567 622T534 634Q516 636 496 636Q400 636 313 528T225 264Q225 172 267 115T380 58",928:"86 2Q88 4 160 346T233 689Q233 691 501 691Q768 691 768 689Q766 688 694 346T621 2V0H517V2Q518 3 582 304T646 609L648 615H321L190 0H86V2",929:"162 348L236 694H378Q522 693 530 692Q604 680 647 635T690 524Q690 474 665 430T612 359Q550 299 465 280Q443 275 343 274H250V271Q250 269 235 201T206 68T192 2V0H140Q88 0 88 1L98 46Q107 90 126 177T162 348ZM594 513Q594 560 562 588T477 622Q470 623 394 623H321L293 487L263 349V347H342H347H375Q530 347 578 449Q594 483 594 513",931:"194 655L202 694H508Q813 694 813 693Q809 675 805 653L797 614H559L321 615Q327 606 405 478L485 347Q449 311 348 203T247 86Q247 84 294 84Q303 84 359 84T465 85H684Q684 84 675 42L666 0H360L55 1L195 154Q346 319 347 320L359 333L273 473Q187 614 186 614L187 620Q188 625 190 635T194 655",932:"165 608L182 687Q182 688 486 688H790L789 685L781 645L773 609H521L457 306Q393 3 392 2Q392 0 340 0H288V2Q289 5 353 304T417 605V609L291 608H165",933:"357 637Q320 637 297 612T266 555H173Q178 576 188 598Q214 651 265 683T373 716Q497 716 497 542V509L504 526Q579 715 711 715Q773 715 808 677T843 589Q843 576 840 555H747L748 557Q748 559 748 563T749 574V580Q749 604 731 622Q715 638 693 638Q591 638 543 465Q531 425 506 309T462 98T441 2V0H337V2Q425 401 436 486Q438 504 438 526Q438 637 364 637H357",934:"124 308Q124 399 208 481T433 587Q437 587 437 589Q438 590 449 643L459 694H508Q557 694 557 693Q557 691 546 641T535 587Q543 587 562 583T614 565T674 531T722 472T743 387Q743 288 656 209T449 110L433 106Q411 3 410 2Q410 0 361 0H312L313 3Q313 5 324 56L335 107H331L321 108Q311 110 297 114T266 124T228 141T190 168Q124 225 124 308ZM227 315Q227 282 239 257T270 218T306 197T338 186L350 184H351L386 346Q420 507 420 509H419Q411 509 393 505T342 485T284 444Q227 387 227 315ZM642 381Q642 413 629 437T599 475T563 496T533 507T519 510Q518 510 484 348T450 184Q544 201 593 258T642 381",935:"14 0Q17 3 184 184T352 367L265 529Q244 567 222 609T188 672L176 692Q176 694 236 694H297L338 612Q387 515 400 489L421 448L645 694H758L708 640Q481 393 456 368Q455 366 500 281T596 104T652 0H531L388 293L128 0H14",936:"325 556Q325 524 310 447T294 330Q294 289 304 260Q314 234 333 216T364 192T380 187L488 694H585V691Q584 689 531 438L478 188H479Q485 188 503 195T555 231T613 305Q637 352 654 435Q662 470 669 496T681 538T690 562T698 578T704 587Q719 609 733 615T772 621H802H854V619L838 546Q838 545 832 545Q775 539 749 418Q716 274 638 196Q616 173 590 156T543 131T503 117T473 110T460 106Q460 105 450 54T438 2V0H340V2Q341 3 351 54T362 106Q363 107 358 108T344 111T322 117T295 128T267 145T239 171T216 207T200 256T194 319Q194 356 203 408T213 483Q213 517 203 530T182 544T171 546Q184 609 187 619V621H239Q286 621 294 620T309 612Q325 596 325 556",937:"148 407Q148 475 182 534T269 633T386 694T511 716Q622 716 695 658T769 507Q769 461 747 409T699 321T628 225T562 136Q533 90 533 86Q542 85 557 85Q564 85 583 85T614 86Q695 86 695 85Q679 9 677 2V0H425Q426 3 433 30T447 72T480 131T549 241L554 248Q558 254 563 261T576 281T592 306T609 335T625 366T640 400T653 434T661 466T664 498Q664 562 618 601T497 640Q416 640 351 596T262 482Q250 441 250 392T276 237T302 70V56Q302 28 296 2V0H44V2L62 85Q62 86 143 86L225 85V88Q224 89 224 89T224 91T224 95T223 101T222 110T220 123T216 140T209 163T200 191T188 227Q148 344 148 407",8211:"59 275L66 312H316Q565 312 565 311T558 275T549 238Q549 236 299 236Q50 236 50 237L52 242Q53 247 55 257T59 275",8212:"59 275L66 312H566Q1065 312 1065 311T1058 275T1049 238Q1049 236 549 236Q50 236 50 237L52 242Q53 247 55 257T59 275",8213:"59 275L66 312H566Q1065 312 1065 311T1058 275T1049 238Q1049 236 549 236Q50 236 50 237L52 242Q53 247 55 257T59 275",8215:"59 -75L66 -38H316Q565 -38 565 -39T558 -75T549 -112Q549 -114 299 -114Q50 -114 50 -113L52 -108Q53 -103 55 -93T59 -75",8216:"309 567L299 520Q289 474 288 473Q288 471 239 471T190 473L192 480Q193 486 196 499T201 522L211 569L287 694H312L335 693L332 685Q328 677 321 661T307 630L279 570L294 569Q309 569 309 567",8217:"228 647L237 694H286Q335 694 335 693L334 686Q332 680 330 668T325 644L315 597L239 471H214Q190 471 190 472L246 595Q246 596 231 596H217V598Q217 601 228 647",8220:"393 567L383 520Q373 474 372 473Q372 471 323 471T274 473L276 480Q277 486 280 499T285 522L295 569L371 694H396L419 693L416 685Q412 677 405 661T391 630L363 570L378 569Q393 569 393 567ZM587 567L577 520Q567 474 566 473Q566 471 517 471T468 473L470 480Q471 486 474 499T479 522L489 569L565 694H590L613 693L610 685Q606 677 599 661T585 630L557 570L572 569Q587 569 587 567",8221:"171 647L180 694H229Q278 694 278 693L276 686Q275 680 273 668T268 644L258 597L182 471H157Q133 471 133 472L189 595Q189 596 174 596H160V598Q160 601 171 647ZM365 647L374 694H423Q472 694 472 693L470 686Q469 680 467 668T462 644L452 597L376 471H351Q327 471 327 472L383 595Q383 596 368 596H354V598Q354 601 365 647",8260:"564 744L568 747Q573 750 579 750Q588 750 594 744T599 729Q597 721 321 241T41 -243Q37 -250 27 -250Q6 -250 6 -230Q6 -228 8 -222Q9 -219 285 261T564 744",8710:"273 343L510 694H617Q790 2 790 0H416L42 1L273 343ZM539 576Q536 597 536 600Q536 602 535 605Q534 607 534 607Q527 580 222 130L201 98H651L648 110Q645 123 639 149T627 198Q554 489 539 576"},{})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.sansSerifItalic=void 0,e.sansSerifItalic={33:[.694,0,.319,{ic:.036}],34:[.694,-.471,.5],35:[.694,.194,.833,{ic:.018}],36:[.75,.056,.5,{ic:.065}],37:[.75,.056,.833],38:[.716,.022,.758],39:[.694,-.471,.278,{ic:.057}],40:[.75,.25,.389,{ic:.102}],41:[.75,.25,.389],42:[.75,-.306,.5,{ic:.068}],43:[.583,.083,.778],44:[.098,.125,.278],45:[.259,-.186,.333],46:[.098,0,.278],47:[.75,.25,.5,{ic:.1}],48:[.678,.022,.5,{ic:.049}],49:[.678,0,.5],50:[.678,0,.5,{ic:.051}],51:[.678,.022,.5,{ic:.044}],52:[.656,0,.5,{ic:.021}],53:[.656,.022,.5,{ic:.055}],54:[.678,.022,.5,{ic:.048}],55:[.656,.011,.5,{ic:.096}],56:[.678,.022,.5,{ic:.054}],57:[.677,.022,.5,{ic:.045}],58:[.444,0,.278],59:[.444,.125,.278],61:[.37,-.13,.778,{ic:.018}],63:[.704,0,.472,{ic:.064}],64:[.705,.01,.667,{ic:.04}],91:[.75,.25,.289,{ic:.136}],93:[.75,.25,.289,{ic:.064}],94:[.694,-.527,.5,{ic:.033}],95:[-.038,.114,.5,{ic:.065}],126:[.327,-.193,.5,{ic:.06}],305:[.444,0,.239,{ic:.019}],567:[.444,.204,.267,{ic:.019}],768:[.694,-.527,0],769:[.694,-.527,0,{ic:.063}],770:[.694,-.527,0,{ic:.033}],771:[.677,-.543,0,{ic:.06}],772:[.631,-.552,0,{ic:.064}],774:[.694,-.508,0,{ic:.073}],775:[.68,-.576,0],776:[.68,-.582,0,{ic:.04}],778:[.693,-.527,0],779:[.694,-.527,0,{ic:.063}],780:[.654,-.487,0,{ic:.06}],913:[.694,0,.667],914:[.694,0,.667,{ic:.029}],915:[.691,0,.542,{ic:.104}],916:[.694,0,.833],917:[.691,0,.597,{ic:.091}],918:[.694,0,.611,{ic:.091}],919:[.694,0,.708,{ic:.06}],920:[.715,.022,.778,{ic:.026}],921:[.694,0,.278,{ic:.06}],922:[.694,0,.694,{ic:.091}],923:[.694,0,.611],924:[.694,0,.875,{ic:.054}],925:[.694,0,.708,{ic:.058}],926:[.688,0,.667,{ic:.098}],927:[.716,.022,.736,{ic:.027}],928:[.691,0,.708,{ic:.06}],929:[.694,0,.639,{ic:.051}],931:[.694,0,.722,{ic:.091}],932:[.688,0,.681,{ic:.109}],933:[.716,0,.778,{ic:.065}],934:[.694,0,.722,{ic:.021}],935:[.694,0,.667,{ic:.091}],936:[.694,0,.778,{ic:.076}],937:[.716,0,.722,{ic:.047}],8211:[.312,-.236,.5,{ic:.065}],8212:[.312,-.236,1,{ic:.065}],8213:[.312,-.236,1,{ic:.065}],8215:[-.038,.114,.5,{ic:.065}],8216:[.694,-.471,.278,{ic:.058}],8217:[.694,-.471,.278,{ic:.057}],8220:[.694,-.471,.5,{ic:.114}],8221:[.694,-.471,.5],8260:[.75,.25,.5,{ic:.1}],8710:[.694,0,.833]}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.sansSerif=void 0;var r=Q(6),T=Q(244);e.sansSerif=r.AddPaths(T.sansSerif,{33:"120 187Q120 225 115 440T110 693Q110 694 159 694T208 693Q208 655 203 440T198 187Q198 186 159 186T120 187ZM110 0V98H208V0H110",34:"33 596V694H131V597L82 471H32L47 532Q62 593 63 594Q63 596 48 596H33ZM227 596V694H325V597L276 471H226L241 532Q256 593 257 594Q257 596 242 596H227",35:"56 350Q56 363 70 370H192Q314 370 314 371L356 526Q396 676 401 685Q406 694 416 694Q423 694 429 689T436 677Q436 673 396 523T355 371Q355 370 449 370Q544 370 544 371L586 526Q628 682 630 685Q636 694 646 694Q653 694 659 689T665 678Q665 670 645 593T605 444L585 371Q585 370 673 370H762Q777 362 777 350Q777 337 767 334T723 330H668H573L567 305Q560 282 545 226L530 171L646 170H721Q756 170 766 167T777 150Q777 138 762 130H640Q518 130 518 129L476 -26Q434 -182 432 -185Q426 -194 416 -194Q409 -194 403 -189T397 -178Q397 -170 417 -93T457 56L477 129Q477 130 383 130Q288 130 288 129L246 -26Q204 -182 202 -185Q196 -194 186 -194Q179 -194 173 -189T167 -178Q167 -170 187 -94T227 56L247 129Q247 130 159 130H70Q56 137 56 150Q56 165 72 170H259L265 195Q273 222 287 275L302 330H186L70 331Q63 334 58 339Q56 343 56 350ZM489 170L532 330H343L337 305Q330 282 315 226L300 171L394 170H489",36:"55 509Q55 585 103 638T213 701V750H286V703H289Q312 703 354 689Q372 682 399 666T427 646L413 569Q413 568 403 575Q352 615 291 624H286V405Q357 389 400 331T444 199Q444 128 402 69T286 -7V-56H213V-9Q167 -3 125 14T63 44T44 60Q44 61 52 101L59 140L69 132Q78 125 87 119T107 107T124 97T141 90T157 84T173 80T187 76T201 73T213 70V317L202 319Q141 335 98 386T55 509ZM213 424V620L203 615Q143 587 143 522Q143 455 213 424ZM356 187Q356 208 350 227T334 258T315 280T298 293T287 297Q286 297 286 186V75Q356 110 356 187",37:"56 549Q56 639 98 694T195 750Q248 750 290 694T332 548Q332 455 290 401T195 347Q141 347 99 403T56 549ZM248 549Q248 602 234 638T195 674Q145 674 145 549Q145 423 195 423Q219 423 233 459T248 549ZM197 -56Q187 -56 182 -49T176 -35Q176 -33 178 -27Q179 -25 399 356T623 741Q626 750 639 750Q648 750 654 744T659 729Q657 721 435 336T207 -52Q203 -56 197 -56ZM500 146Q500 235 542 291T639 347Q692 347 734 293T776 146Q776 53 733 -1T639 -56Q587 -56 544 -2T500 146ZM692 146Q692 199 678 235T639 271Q589 271 589 146Q589 20 639 20Q663 20 677 56T692 146",38:"156 502Q156 600 198 658T302 716Q367 716 405 665T444 549Q444 531 442 523Q426 446 304 348L287 334Q305 297 340 249T402 170T430 139T443 149T472 181T509 231T549 303T583 394Q584 398 586 404Q587 408 587 409Q588 409 626 399T665 388Q663 381 660 369T644 322T614 253T567 176T502 98L491 87Q534 57 584 57Q653 57 700 75Q702 75 702 34T700 -7Q652 -22 586 -22H580Q505 -22 434 26L421 34Q419 33 405 25T374 11T336 -4T285 -17T226 -22Q143 -22 93 31T42 152Q42 184 51 211T81 260T111 291T144 317L184 348L178 365Q156 430 156 502ZM359 552Q359 588 345 614T302 640Q292 640 282 636T260 622T241 590T233 535Q236 474 253 417L257 407L271 419Q312 454 330 479Q359 514 359 552ZM345 102Q262 190 216 277Q215 277 204 267T180 247T165 236Q135 208 135 159Q135 123 152 97T198 61Q207 58 227 58Q286 58 357 89L345 102",39:"90 596V694H188V597L139 471H89L104 532Q119 593 120 594Q120 596 105 596H90",40:"74 250Q74 564 240 733L257 750H333L323 739Q167 573 167 250T323 -239L333 -250H257L240 -233Q74 -63 74 250",41:"221 -73T221 250T65 739L55 750H131L148 733Q314 567 314 250T148 -233L131 -250H55L65 -239Q221 -73 221 250",42:"208 717Q211 731 222 740T250 750Q265 750 277 741T291 717Q291 706 290 675T286 617L285 591L329 622Q369 651 376 655T393 659Q411 659 423 647T436 616Q436 609 434 603T429 594T419 585T407 577T389 567T368 556L316 528L368 500Q421 472 429 464Q436 455 436 440Q436 422 423 409T393 396Q390 396 388 396T384 397T380 398T375 401T367 406T358 413T346 422T329 434L285 465Q284 465 285 438T289 381T291 347Q291 327 278 317T250 306Q234 306 222 315T208 339Q208 350 209 381T212 439L214 465L170 434Q130 405 123 401T106 397Q88 397 76 409T63 440Q63 447 65 453T70 462T80 471T92 479T110 489T131 500L183 528L131 556Q78 584 70 592Q63 601 63 616Q63 634 76 647T106 660Q109 660 111 660T115 659T119 658T124 655T132 650T141 643T153 634T170 622L214 591L212 617Q211 643 210 674T208 717",43:"56 237T56 250T70 270H369V420L370 570Q380 583 389 583Q402 583 409 568V270H707Q722 262 722 250T707 230H409V-68Q401 -82 391 -82H389H387Q375 -82 369 -68V230H70Q56 237 56 250",44:"90 0V98H188V1L139 -125H89L104 -64Q119 -3 120 -2Q120 0 105 0H90",45:"11 186V259H277V186H11",46:"90 0V98H188V0H90",47:"423 750Q432 750 438 744T444 730Q444 725 271 248T92 -240Q85 -250 75 -250Q68 -250 62 -245T56 -231Q56 -221 230 257T407 740Q411 750 423 750",58:"90 346V444H188V346H90ZM90 0V98H188V0H90",59:"90 346V444H188V346H90ZM90 0V98H188V1L139 -125H89L104 -64Q119 -3 120 -2Q120 0 105 0H90",61:"56 350Q56 363 70 370H707Q722 362 722 350Q722 339 708 331L390 330H72Q56 335 56 350ZM56 150Q56 165 72 170H708Q722 160 722 150Q722 138 707 130H70Q56 137 56 150",63:"55 652Q63 658 77 666T132 689T214 704T265 703Q303 698 332 684T376 653T401 615T413 578T416 546Q416 475 360 426Q325 396 303 365T273 303T263 256T261 216V186H183V225Q184 281 194 322Q206 368 232 409T276 469T306 495Q323 517 323 550Q323 596 297 612T223 629Q187 629 157 618Q122 607 91 583L83 576L55 652ZM173 0V98H271V0H173",64:"422 576Q440 576 456 573T480 566L488 563Q488 565 484 571T472 588T452 607T424 622T387 629Q294 629 220 550T146 347Q146 233 210 155T365 66Q376 65 400 65Q465 68 517 86L532 91H612L598 76Q511 -11 388 -11Q250 -11 153 93T56 347Q56 454 107 538T231 663T378 704Q446 704 492 680T564 608T599 506T611 376Q611 320 607 299Q595 227 546 173T422 118Q343 118 288 185T232 347Q232 444 287 510T422 576ZM520 347Q520 429 487 465T421 501Q385 501 354 461T323 347Q323 270 355 232T422 193Q454 193 487 229T520 347",91:"94 -250V750H266V674H181V-174H266V-250H94",93:"22 674V750H194V-250H22V-174H107V674H22",94:"146 612L212 694H287L353 612Q417 532 420 529Q421 528 418 527Q414 527 383 527H345L250 639Q244 633 199 580L154 527H116Q79 528 79 529Q82 532 146 612",95:"0 -114V-38H499V-114H0",126:"83 204Q86 254 113 290T186 327Q211 327 251 299T312 270Q337 270 340 315V327H416V316Q413 258 382 226T315 193Q289 193 249 221T187 250Q162 250 159 205V193H83V204",305:"74 0V444H164V0H74",567:"-35 -95Q-4 -126 34 -126Q58 -126 76 -116T100 -88Q102 -82 102 181V444H192V180Q191 -45 191 -70T184 -113Q171 -152 140 -178T63 -205Q34 -205 4 -197T-43 -181T-59 -171L-47 -133L-35 -95",768:"-415 692L-417 694H-324L-262 612Q-249 594 -233 572T-208 539L-200 528L-237 527H-275L-344 608Q-359 625 -378 647T-406 680T-415 692",769:"-239 612L-177 694H-84L-86 692Q-86 691 -95 681T-123 648T-157 608L-226 527H-264L-301 528L-293 539Q-285 550 -269 572T-239 612",770:"-354 612L-288 694H-213L-147 612Q-83 532 -80 529Q-79 528 -82 527Q-86 527 -117 527H-155L-250 639Q-256 633 -301 580L-346 527H-384Q-421 528 -421 529Q-418 532 -354 612",771:"-417 554Q-414 604 -387 640T-314 677Q-289 677 -249 649T-188 620Q-163 620 -160 665V677H-84V666Q-87 608 -118 576T-185 543Q-211 543 -251 571T-313 600Q-338 600 -341 555V543H-417V554",772:"-431 552V631H-70V552H-431",774:"-250 508Q-331 508 -379 567T-427 689V694H-351V685Q-348 649 -321 620T-250 591Q-206 591 -180 619T-150 685V694H-74V689Q-74 624 -122 566T-250 508",775:"-302 576V680H-198V576H-302",776:"-397 582V680H-299V582H-397ZM-202 582V680H-104V582H-202",778:"-319 611Q-319 649 -285 671T-211 694Q-164 694 -132 671T-99 611Q-99 572 -133 550T-209 527T-285 549T-319 611ZM-155 610Q-155 635 -171 643T-215 651Q-263 651 -263 610Q-263 570 -211 570H-209H-207Q-155 570 -155 610",779:"-250 693Q-317 544 -323 527H-399L-343 694H-296Q-250 694 -250 693ZM-84 693Q-151 544 -157 527H-233L-177 694H-130Q-84 694 -84 693",780:"-421 652Q-422 653 -419 654Q-415 654 -384 654H-346L-301 601Q-287 585 -275 571T-258 551T-250 542L-155 654H-117Q-80 653 -80 652Q-83 649 -147 569L-213 487H-288L-354 569Q-418 649 -421 652",913:"183 181Q183 179 152 91T118 0H28L154 346L280 693Q281 694 333 694H385L511 349Q636 4 638 2Q638 0 584 0H530L464 183H184L183 181ZM324 606Q319 578 292 492T238 332T210 256Q210 254 324 254T438 255L429 281L419 308Q409 336 395 378T365 465T339 551T324 611V606",914:"425 363Q438 363 465 353T526 324T585 270T610 192Q610 132 561 78T426 7Q404 2 387 2T240 0H90V694H227Q373 693 396 689Q484 673 533 623T583 517Q583 494 574 473T551 437T520 409T487 388T456 374T433 366L425 363ZM490 516Q490 527 485 539T467 568T423 599T347 621Q340 622 262 623H188V399H261H286Q432 399 478 475Q490 496 490 516ZM514 190Q514 245 462 280T343 322Q336 323 259 323H188V71H274Q365 72 388 77Q445 88 479 121T514 190",915:"87 0V691H499V611H345L191 612V0H87",916:"203 348L362 694H470L629 348Q789 2 790 1Q790 0 416 0T42 1Q43 2 203 348ZM630 98Q630 100 584 198T481 422T407 603L405 610L403 600Q388 544 191 122L180 99L405 98H630",917:"86 0V691H541V611H366L190 612V397H513V321H190V85H372L554 86V0H86",918:"69 617V694H555V643L373 362Q190 81 190 79H234Q244 79 272 79T344 80T419 81H560V0H55V53L237 334Q420 615 420 617Q413 618 387 618Q380 618 334 618T245 617H69",919:"86 0V694H190V399H517V694H621V0H517V323H190V0H86",920:"56 344Q56 430 86 502T164 619T271 690T388 716Q448 716 506 691T613 619T692 501T722 344Q722 188 624 84T389 -21Q252 -21 154 83T56 344ZM624 345Q624 423 597 488T513 596T380 639Q343 639 305 621T232 568T175 475T153 344Q153 216 222 136T388 56Q487 56 555 138T624 345ZM209 299V397H568V299H209",921:"87 0V694H191V0H87",922:"88 0V694H188V519L189 343L525 694H638L375 419L651 0H541L309 351L188 225V0H88",923:"294 606Q294 574 252 430T163 144T117 0H72Q28 0 28 1T141 348L254 694H357L469 348Q582 2 582 1T527 0L473 1L469 11Q469 13 427 141T343 411T296 599L294 610V606",924:"92 0V694H228L233 680Q236 675 284 547T382 275T436 106Q446 149 497 292T594 558L640 680L645 694H782V0H689V305L688 606Q688 577 500 78L479 23H392L364 96Q364 97 342 156T296 280T246 418T203 544T186 609V588Q185 568 185 517T185 427T185 305V0H92",925:"88 0V694H235L252 659Q261 639 364 428T526 84V694H619V0H472L455 35Q453 39 330 294T185 601L181 611V0H88",926:"47 600V688H619V600H47ZM111 314V401H555V314H111ZM42 0V88H624V0H42",927:"55 345Q55 504 149 609T361 715Q386 715 406 713Q521 696 600 592T680 344Q680 193 590 86T368 -22Q239 -22 147 84T55 345ZM276 59T368 59T518 146T576 360Q576 473 525 545T401 634Q371 637 362 637Q284 637 222 562T159 360T217 147",928:"86 0V691H621V0H517V615H190V0H86",929:"88 0V694H230Q347 693 370 692T410 686Q487 667 535 611T583 485Q583 409 527 348T379 276Q369 274 279 274H192V0H88ZM486 485Q486 523 471 551T432 593T391 612T357 621Q350 622 268 623H189V347H268Q350 348 357 349Q370 351 383 354T416 368T450 391T475 429T486 485",931:"55 0Q56 3 171 167T288 332Q288 334 172 474L55 615V694H666V614H428L190 615L412 347L322 218Q236 97 228 84L447 85H666V0H55",932:"36 608V688H644V608H518L392 609V0H288V609L162 608H36",933:"55 565Q59 625 105 670T219 716H222Q310 716 353 627Q376 583 386 524L389 510L393 532Q397 555 407 584T433 644T482 695T557 716Q621 716 669 673T722 565V555H629V563Q627 592 607 615T557 638Q530 638 511 629T479 598T459 553T447 488T442 411T441 319V202V0H337V202Q337 453 331 497Q313 634 226 638Q185 638 167 612T148 563V555H55V565",934:"666 347Q666 326 661 302T638 247T594 190T520 140T413 107H410V0H312V54Q312 107 311 107Q286 107 229 128T125 192Q55 260 55 347Q55 396 77 438T131 507T200 552T265 579T311 587Q312 587 312 641V694H410V587H413Q476 576 524 552T598 502T640 444T661 390T666 347ZM310 510Q305 510 291 507T252 492T208 464T172 416T157 347T171 279T204 233T247 205T286 190T310 184H312V347Q312 510 310 510ZM564 347Q564 385 549 416T514 463T470 491T433 505T414 509L410 510V184Q413 184 426 187T464 200T510 227T548 275T564 347",935:"14 0Q16 5 144 184T275 367L153 528Q121 571 88 615T42 674T28 694H150L228 584Q315 463 316 461L326 448L497 694H610L609 692Q606 689 492 528Q440 454 409 410T378 366Q378 365 515 182L652 0H531L326 292Q326 293 299 254T226 146L128 0H14",936:"340 187V694H438V187Q481 206 495 219Q518 239 533 267T553 332T560 386T562 435Q562 576 593 608Q608 621 637 621H670H722V545H719Q718 545 715 545T710 544Q679 536 666 487Q664 474 662 429T654 344T633 259T580 175T486 119Q450 109 438 108V0H340V108L326 110Q122 149 117 415Q116 460 111 487Q98 536 67 544Q65 544 62 544T58 545H55V621H107Q160 621 163 620Q191 613 202 573Q213 536 213 473T220 351T256 249Q262 239 270 230T285 216T301 205T316 197T329 192T340 187",937:"55 462Q55 561 141 638T359 716Q492 716 579 640T666 462Q666 407 642 347T579 222T529 126Q515 91 515 86Q517 85 528 85Q530 85 552 85T596 86H677V0H425V14Q429 79 465 168L492 228Q494 232 504 254T516 283T527 310T539 340T548 368T556 399T560 428T562 460Q562 531 510 585T361 639Q263 639 211 585T159 460Q159 422 170 378T192 309T229 228L256 168Q292 79 296 14V0H44V86H125Q146 86 168 86T193 85L206 86Q206 103 183 148T131 241T79 352T55 462",8211:"0 236V312H499V236H0",8212:"0 236V312H999V236H0",8213:"0 236V312H999V236H0",8215:"0 -114V-38H499V-114H0",8216:"90 568L140 694H189L174 633Q159 572 158 571Q158 569 173 569H188V471H90V568",8217:"90 596V694H188V597L139 471H89L104 532Q119 593 120 594Q120 596 105 596H90",8220:"174 568L224 694H273L258 633Q243 572 242 571Q242 569 257 569H272V471H174V568ZM368 568L418 694H467L452 633Q437 572 436 571Q436 569 451 569H466V471H368V568",8221:"33 596V694H131V597L82 471H32L47 532Q62 593 63 594Q63 596 48 596H33ZM227 596V694H325V597L276 471H226L241 532Q256 593 257 594Q257 596 242 596H227",8260:"423 750Q432 750 438 744T444 730Q444 725 271 248T92 -240Q85 -250 75 -250Q68 -250 62 -245T56 -231Q56 -221 230 257T407 740Q411 750 423 750",8710:"203 348L362 694H470L629 348Q789 2 790 1Q790 0 416 0T42 1Q43 2 203 348ZM630 98Q630 100 584 198T481 422T407 603L405 610L403 600Q388 544 191 122L180 99L405 98H630"},{})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.sansSerif=void 0,e.sansSerif={33:[.694,0,.319],34:[.694,-.471,.5],35:[.694,.194,.833],36:[.75,.056,.5],37:[.75,.056,.833],38:[.716,.022,.758],39:[.694,-.471,.278],40:[.75,.25,.389],41:[.75,.25,.389],42:[.75,-.306,.5],43:[.583,.082,.778],44:[.098,.125,.278],45:[.259,-.186,.333],46:[.098,0,.278],47:[.75,.25,.5],58:[.444,0,.278],59:[.444,.125,.278],61:[.37,-.13,.778],63:[.704,0,.472],64:[.704,.011,.667],91:[.75,.25,.289],93:[.75,.25,.289],94:[.694,-.527,.5],95:[-.038,.114,.5],126:[.327,-.193,.5],305:[.444,0,.239],567:[.444,.205,.267],768:[.694,-.527,0],769:[.694,-.527,0],770:[.694,-.527,0],771:[.677,-.543,0],772:[.631,-.552,0],774:[.694,-.508,0],775:[.68,-.576,0],776:[.68,-.582,0],778:[.694,-.527,0],779:[.694,-.527,0],780:[.654,-.487,0],913:[.694,0,.667],914:[.694,0,.667],915:[.691,0,.542],916:[.694,0,.833],917:[.691,0,.597],918:[.694,0,.611],919:[.694,0,.708],920:[.716,.021,.778],921:[.694,0,.278],922:[.694,0,.694],923:[.694,0,.611],924:[.694,0,.875],925:[.694,0,.708],926:[.688,0,.667],927:[.715,.022,.736],928:[.691,0,.708],929:[.694,0,.639],931:[.694,0,.722],932:[.688,0,.681],933:[.716,0,.778],934:[.694,0,.722],935:[.694,0,.667],936:[.694,0,.778],937:[.716,0,.722],8211:[.312,-.236,.5],8212:[.312,-.236,1],8213:[.312,-.236,1],8215:[-.038,.114,.5],8216:[.694,-.471,.278],8217:[.694,-.471,.278],8220:[.694,-.471,.5],8221:[.694,-.471,.5],8260:[.75,.25,.5],8710:[.694,0,.833]}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.scriptBold=void 0,e.scriptBold={}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.script=void 0,e.script={}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.smallop=void 0;var r=Q(6),T=Q(248);e.smallop=r.AddPaths(T.smallop,{40:"152 251Q152 646 388 850H416Q422 844 422 841Q422 837 403 816T357 753T302 649T255 482T236 250Q236 124 255 19T301 -147T356 -251T403 -315T422 -340Q422 -343 416 -349H388Q359 -325 332 -296T271 -213T212 -97T170 56T152 251",41:"305 251Q305 -145 69 -349H56Q43 -349 39 -347T35 -338Q37 -333 60 -307T108 -239T160 -136T204 27T221 250T204 473T160 636T108 740T60 807T35 839Q35 850 50 850H56H69Q197 743 256 566Q305 425 305 251",47:"481 838Q489 850 500 850Q508 850 515 844T522 827Q521 824 311 248T96 -337Q90 -349 77 -349Q68 -349 62 -343T55 -326Q56 -323 266 253T481 838",91:"202 -349V850H394V810H242V-309H394V-349H202",92:"522 -326Q522 -337 515 -343T500 -349Q487 -349 481 -337Q477 -328 267 248T55 827Q54 835 60 842T76 850Q89 850 96 838Q100 829 310 253T522 -326",93:"22 810V850H214V-349H22V-309H174V810H22",123:"477 -343L471 -349H458Q432 -349 367 -325T273 -263Q258 -245 250 -212L249 -51Q249 -27 249 12Q248 118 244 128Q243 129 243 130Q220 189 121 228Q109 232 107 235T105 250Q105 256 105 257T105 261T107 265T111 268T118 272T128 276T142 283T162 291Q224 324 243 371Q243 372 244 373Q248 384 249 469Q249 475 249 489Q249 528 249 552L250 714Q253 728 256 736T271 761T299 789T347 816T422 843Q440 849 441 849H443Q445 849 447 849T452 850T457 850H471L477 844V830Q477 820 476 817T470 811T459 807T437 801T404 785Q353 760 338 724Q333 710 333 550Q333 526 333 492T334 447Q334 393 327 368T295 318Q257 280 181 255L169 251L184 245Q318 198 332 112Q333 106 333 -49Q333 -209 338 -223Q351 -255 391 -277T469 -309Q477 -311 477 -329V-343",125:"110 849L115 850Q120 850 125 850Q151 850 215 826T309 764Q324 747 332 714L333 552Q333 528 333 489Q334 383 338 373Q339 372 339 371Q353 336 391 310T469 271Q477 268 477 251Q477 241 476 237T472 232T456 225T428 214Q357 179 339 130Q339 129 338 128Q334 117 333 32Q333 26 333 12Q333 -27 333 -51L332 -212Q328 -228 323 -240T302 -271T255 -307T175 -338Q139 -349 125 -349T108 -346T105 -329Q105 -314 107 -312T130 -304Q233 -271 248 -209Q249 -203 249 -49V57Q249 106 253 125T273 167Q307 213 398 245L413 251L401 255Q265 300 250 389Q249 395 249 550Q249 710 244 724Q224 774 112 811Q105 813 105 830Q105 845 110 849",710:"279 669Q273 669 142 610T9 551L0 569Q-8 585 -8 587Q-8 588 -7 588L12 598Q30 608 66 628T136 666L277 744L564 587L555 569Q549 556 547 554T544 552Q539 555 410 612T279 669",732:"374 597Q337 597 269 627T160 658Q101 658 34 606L24 597L12 611Q1 624 1 626Q1 627 27 648T55 671Q120 722 182 722Q219 722 286 692T395 661Q454 661 521 713L531 722L543 708Q554 695 554 693Q554 692 528 671T500 648Q434 597 374 597",770:"-277 669Q-283 669 -414 610T-547 551L-556 569Q-564 585 -564 587Q-564 588 -563 588L-544 598Q-526 608 -490 628T-420 666L-279 744L8 587L-1 569Q-7 556 -9 554T-12 552Q-17 555 -146 612T-277 669",771:"-182 597Q-219 597 -287 627T-396 658Q-455 658 -522 606L-532 597L-544 611Q-555 624 -555 626Q-555 627 -529 648T-501 671Q-436 722 -374 722Q-337 722 -270 692T-161 661Q-102 661 -35 713L-25 722L-13 708Q-2 695 -2 693Q-2 692 -28 671T-56 648Q-122 597 -182 597",8214:"257 0V602H300V0H257ZM478 0V602H521V0H478",8260:"481 838Q489 850 500 850Q508 850 515 844T522 827Q521 824 311 248T96 -337Q90 -349 77 -349Q68 -349 62 -343T55 -326Q56 -323 266 253T481 838",8593:"112 421L120 424Q127 427 136 430T161 441T191 458T224 481T260 510T295 546T328 591L333 600L340 589Q380 527 431 489T555 421V377L543 381Q445 418 368 492L355 504V0H312V504L299 492Q222 418 124 381L112 377V421",8595:"312 96V600H355V96L368 108Q445 182 543 219L555 223V179L546 176Q538 173 529 169T505 158T475 141T442 119T407 90T372 53T339 9L334 0L327 11Q287 73 236 111T112 179V223L124 219Q222 182 299 108L312 96",8657:"142 329Q300 419 389 599Q389 598 399 579T420 541T452 494T497 438T558 383T636 329T708 294L721 289V246Q718 246 694 256T623 293T532 356L522 364L521 182V0H478V405L466 417Q436 450 389 516Q388 515 378 500T352 463T312 417L300 405V0H257V364L247 356Q202 320 155 293T82 256L57 246V289L70 294Q101 305 142 329",8659:"257 236V600H300V195L312 183Q342 150 389 84Q390 85 400 100T426 137T466 183L478 195V600H521V418L522 236L532 244Q576 280 623 307T696 344L721 354V311L708 306Q677 295 636 271Q478 181 389 1Q389 2 379 21T358 59T326 106T281 162T220 217T142 271T70 306L57 311V354Q60 354 83 345T154 308T247 244L257 236",8719:"158 656Q147 684 131 694Q110 707 69 710H55V750H888V710H874Q840 708 820 698T795 678T786 656V-155Q798 -206 874 -210H888V-250H570V-210H584Q618 -208 638 -197T663 -178T673 -155V710H270V277L271 -155Q283 -206 359 -210H373V-250H55V-210H69Q103 -208 123 -197T148 -178T158 -155V656",8720:"158 656Q147 684 131 694Q110 707 69 710H55V750H373V710H359Q325 708 305 698T280 678T271 656L270 223V-210H673V656Q666 672 663 679T639 697T584 710H570V750H888V710H874Q840 708 820 698T795 678T786 656V-155Q798 -206 874 -210H888V-250H55V-210H69Q103 -208 123 -197T148 -178T158 -155V656",8721:"61 748Q64 750 489 750H913L954 640Q965 609 976 579T993 533T999 516H979L959 517Q936 579 886 621T777 682Q724 700 655 705T436 710H319Q183 710 183 709Q186 706 348 484T511 259Q517 250 513 244L490 216Q466 188 420 134T330 27L149 -187Q149 -188 362 -188Q388 -188 436 -188T506 -189Q679 -189 778 -162T936 -43Q946 -27 959 6H999L913 -249L489 -250Q65 -250 62 -248Q56 -246 56 -239Q56 -234 118 -161Q186 -81 245 -11L428 206Q428 207 242 462L57 717L56 728Q56 744 61 748",8730:"263 249Q264 249 315 130T417 -108T470 -228L725 302Q981 837 982 839Q989 850 1001 850Q1008 850 1013 844T1020 832V826L741 243Q645 43 540 -176Q479 -303 469 -324T453 -348Q449 -350 436 -350L424 -349L315 -96Q206 156 205 156L171 130Q138 104 137 104L111 130L263 249",8739:"146 612Q151 627 166 627Q182 627 187 612Q188 610 188 306T187 0Q184 -15 166 -15Q149 -15 146 0V10Q146 19 146 35T146 73T146 122T145 179T145 241T145 306T145 370T145 433T145 489T146 538T146 576T146 602V612",8741:"146 612Q151 627 166 627Q182 627 187 612Q188 610 188 306T187 0Q184 -15 166 -15Q149 -15 146 0V10Q146 19 146 35T146 73T146 122T145 179T145 241T145 306T145 370T145 433T145 489T146 538T146 576T146 602V612ZM368 612Q373 627 388 627Q404 627 409 612Q410 610 410 306T409 0Q406 -15 389 -15Q371 -15 368 0V10Q368 19 368 35T368 73T368 122T367 179T367 241T367 306T367 370T367 433T367 489T368 538T368 576T368 602V612",8747:"113 -244Q113 -246 119 -251T139 -263T167 -269Q186 -269 199 -260Q220 -247 232 -218T251 -133T262 -15T276 155T297 367Q300 390 305 438T314 512T325 580T340 647T361 703T390 751T428 784T479 804Q481 804 488 804T501 805Q552 802 581 769T610 695Q610 669 594 657T561 645Q542 645 527 658T512 694Q512 705 516 714T526 729T538 737T548 742L552 743Q552 745 545 751T525 762T498 768Q475 768 460 756T434 716T418 652T407 559T398 444T387 300T369 133Q349 -38 337 -102T303 -207Q256 -306 169 -306Q119 -306 87 -272T55 -196Q55 -170 71 -158T104 -146Q123 -146 138 -159T153 -195Q153 -206 149 -215T139 -230T127 -238T117 -242L113 -244",8748:"113 -244Q113 -246 119 -251T139 -263T167 -269Q186 -269 199 -260Q220 -247 232 -218T251 -133T262 -15T276 155T297 367Q300 390 305 438T314 512T325 580T340 647T361 703T390 751T428 784T479 804Q481 804 488 804T501 805Q552 802 581 769T610 695Q610 669 594 657T561 645Q542 645 527 658T512 694Q512 705 516 714T526 729T538 737T548 742L552 743Q552 745 545 751T525 762T498 768Q475 768 460 756T434 716T418 652T407 559T398 444T387 300T369 133Q349 -38 337 -102T303 -207Q256 -306 169 -306Q119 -306 87 -272T55 -196Q55 -170 71 -158T104 -146Q123 -146 138 -159T153 -195Q153 -206 149 -215T139 -230T127 -238T117 -242L113 -244ZM460 -244Q460 -246 466 -251T486 -263T514 -269Q532 -269 546 -260Q567 -247 579 -218T598 -133T609 -15T623 155T644 367Q647 390 652 438T661 512T672 580T687 647T708 703T737 751T775 784T826 804Q828 804 835 804T848 805Q899 802 928 769T957 695Q957 669 941 657T908 645Q889 645 874 658T859 694Q859 705 863 714T873 729T885 737T895 742L899 743Q899 745 892 751T872 762T845 768Q822 768 807 756T781 716T765 652T754 559T745 444T734 300T716 133Q696 -38 684 -102T650 -207Q603 -306 516 -306Q466 -306 434 -272T402 -196Q402 -170 418 -158T451 -146Q470 -146 485 -159T500 -195Q500 -206 496 -215T486 -230T474 -238T464 -242L460 -244",8749:"113 -244Q113 -246 119 -251T139 -263T167 -269Q186 -269 199 -260Q220 -247 232 -218T251 -133T262 -15T276 155T297 367Q300 390 305 438T314 512T325 580T340 647T361 703T390 751T428 784T479 804Q481 804 488 804T501 805Q552 802 581 769T610 695Q610 669 594 657T561 645Q542 645 527 658T512 694Q512 705 516 714T526 729T538 737T548 742L552 743Q552 745 545 751T525 762T498 768Q475 768 460 756T434 716T418 652T407 559T398 444T387 300T369 133Q349 -38 337 -102T303 -207Q256 -306 169 -306Q119 -306 87 -272T55 -196Q55 -170 71 -158T104 -146Q123 -146 138 -159T153 -195Q153 -206 149 -215T139 -230T127 -238T117 -242L113 -244ZM460 -244Q460 -246 466 -251T486 -263T514 -269Q532 -269 546 -260Q567 -247 579 -218T598 -133T609 -15T623 155T644 367Q647 390 652 438T661 512T672 580T687 647T708 703T737 751T775 784T826 804Q828 804 835 804T848 805Q899 802 928 769T957 695Q957 669 941 657T908 645Q889 645 874 658T859 694Q859 705 863 714T873 729T885 737T895 742L899 743Q899 745 892 751T872 762T845 768Q822 768 807 756T781 716T765 652T754 559T745 444T734 300T716 133Q696 -38 684 -102T650 -207Q603 -306 516 -306Q466 -306 434 -272T402 -196Q402 -170 418 -158T451 -146Q470 -146 485 -159T500 -195Q500 -206 496 -215T486 -230T474 -238T464 -242L460 -244ZM807 -244Q807 -246 813 -251T833 -263T861 -269Q880 -269 893 -260Q914 -247 926 -218T945 -133T956 -15T970 155T991 367Q994 390 999 438T1008 512T1019 580T1034 647T1055 703T1084 751T1122 784T1173 804Q1175 804 1182 804T1195 805Q1246 802 1275 769T1304 695Q1304 669 1288 657T1255 645Q1236 645 1221 658T1206 694Q1206 705 1210 714T1220 729T1232 737T1242 742L1246 743Q1246 745 1239 751T1219 762T1192 768Q1169 768 1154 756T1128 716T1112 652T1101 559T1092 444T1081 300T1063 133Q1043 -38 1031 -102T997 -207Q950 -306 863 -306Q813 -306 781 -272T749 -196Q749 -170 765 -158T798 -146Q817 -146 832 -159T847 -195Q847 -206 843 -215T833 -230T821 -238T811 -242L807 -244",8750:"269 74L256 80Q244 85 227 97T191 128T161 179T148 250Q148 332 199 379T302 433L306 434L307 444Q309 456 313 495T321 553T331 607T345 664T365 712T393 756T431 785T479 804Q481 804 488 804T501 805Q552 802 581 769T610 695Q610 669 594 657T561 645Q542 645 527 658T512 694Q512 705 516 714T526 729T538 737T548 742L552 743Q552 745 545 751T525 762T498 768Q471 768 454 752T427 693T414 626T406 536Q405 530 405 527L397 425L404 422Q410 419 421 413T445 399T470 376T494 345T511 303T518 250Q518 205 502 169T460 112T410 80T364 66L360 65L359 55Q357 38 353 4T346 -43T340 -81T333 -118T326 -148T316 -179T303 -207Q256 -306 169 -306Q119 -306 87 -272T55 -196Q55 -170 71 -158T104 -146Q123 -146 138 -159T153 -195Q153 -206 149 -215T139 -230T127 -238T117 -242L113 -244Q113 -246 119 -251T139 -263T167 -269Q186 -269 199 -260Q231 -241 242 -183T266 33L269 74ZM272 122Q272 156 300 391Q300 392 299 392Q287 392 263 379T213 331T187 249Q187 211 205 180T239 137T272 116V122ZM366 107Q378 107 402 119T453 167T479 249Q479 340 394 383V377Q394 375 394 374T393 371T393 366T392 357T391 342T389 321T386 291T382 251T377 199T369 133Q366 112 366 107",8896:"119 -249T97 -249T65 -235T55 -207Q55 -201 56 -198Q58 -190 218 268T380 729Q392 750 416 750Q438 750 451 732Q453 728 534 498T695 36L775 -194Q777 -204 777 -208Q777 -222 767 -235T735 -249Q713 -249 700 -231Q696 -225 557 177L416 579L276 177Q136 -226 132 -231Q119 -249 97 -249",8897:"55 708Q55 729 68 739T96 750Q119 750 132 731Q136 726 276 323L416 -79L557 323Q696 725 700 731Q713 749 735 749Q756 749 766 736T777 708Q777 700 696 466T533 1T451 -232Q436 -249 416 -249Q402 -249 391 -241Q384 -236 380 -226Q368 -198 219 230Q55 697 55 708",8898:"139 -217Q127 -241 114 -246Q106 -249 97 -249Q67 -249 57 -220Q55 -214 55 102Q55 152 55 221T54 312Q54 422 60 464T91 554Q120 612 165 654T257 714T337 741T392 749Q393 750 402 750Q414 750 422 749Q557 749 660 659T776 430Q777 422 777 102Q777 -214 775 -220Q765 -249 735 -249Q716 -249 708 -241T694 -217L692 428L690 441Q674 540 597 603T416 666H409Q388 666 364 662T294 638T212 581Q156 523 142 441L140 428L139 105V-217",8899:"96 750Q103 750 109 748T120 744T127 737T133 730T137 723T139 718V395L140 73L142 60Q159 -43 237 -104T416 -166Q521 -166 597 -103T690 60L692 73L694 718Q708 749 735 749Q765 749 775 720Q777 714 777 398Q777 78 776 71Q766 -51 680 -140Q571 -249 416 -249H411Q261 -249 152 -140Q66 -51 56 71Q55 78 55 398Q55 714 57 720Q60 734 70 740Q80 750 96 750",8968:"202 -349V850H449V810H242V-349H202",8969:"22 810V850H269V-349H229V810H22",8970:"202 -349V850H242V-309H449V-349H202",8971:"229 -309V850H269V-349H22V-309H229",9001:"373 850Q392 850 394 832Q394 825 267 538L139 250L267 -38Q394 -325 394 -332Q392 -350 375 -350Q361 -350 356 -338Q354 -331 289 -186T161 103T97 250T160 397T289 685T356 838Q362 850 373 850",9002:"77 832Q77 837 82 843T98 850Q110 849 115 838Q117 831 182 686T310 397T374 250T311 103T182 -185T115 -338Q110 -350 96 -350Q79 -350 77 -332Q77 -325 204 -38L332 250L204 538Q77 825 77 832",9168:"312 0V602H355V0H312",10072:"146 612Q151 627 166 627Q182 627 187 612Q188 610 188 306T187 0Q184 -15 166 -15Q149 -15 146 0V10Q146 19 146 35T146 73T146 122T145 179T145 241T145 306T145 370T145 433T145 489T146 538T146 576T146 602V612",10216:"373 850Q392 850 394 832Q394 825 267 538L139 250L267 -38Q394 -325 394 -332Q392 -350 375 -350Q361 -350 356 -338Q354 -331 289 -186T161 103T97 250T160 397T289 685T356 838Q362 850 373 850",10217:"77 832Q77 837 82 843T98 850Q110 849 115 838Q117 831 182 686T310 397T374 250T311 103T182 -185T115 -338Q110 -350 96 -350Q79 -350 77 -332Q77 -325 204 -38L332 250L204 538Q77 825 77 832",10752:"555 -250Q420 -250 306 -185T124 -4T56 250Q56 453 193 595T526 749Q528 750 539 750Q554 750 562 749Q688 749 800 687T983 508T1054 250Q1054 112 987 -3T806 -184T555 -250ZM555 -165Q672 -165 767 -108T916 44T970 250Q970 418 861 532T600 664Q591 665 548 665Q446 665 353 614T200 466T140 250V243Q140 88 248 -30Q262 -46 280 -62T338 -105T434 -148T555 -165ZM478 250Q478 288 503 307T551 326Q586 326 609 305T632 250Q632 217 610 196T555 174T500 196T478 250",10753:"555 -250Q420 -250 306 -185T124 -4T56 250Q56 453 193 595T526 749Q528 750 539 750Q554 750 562 749Q688 749 800 687T983 508T1054 250Q1054 112 987 -3T806 -184T555 -250ZM513 478Q513 664 512 664Q504 664 481 660T406 637T313 588Q281 564 255 537T211 483T181 431T161 382T150 342T144 310T141 292H513V478ZM798 588Q758 616 711 634T639 658T602 663L597 664V292H969Q969 293 967 309T960 341T949 381T930 430T900 482T856 537T798 588ZM513 -164V208H141Q142 205 144 189T149 160T158 125T173 83T196 39T229 -9Q249 -34 273 -55T318 -92T363 -119T405 -138T444 -150T475 -158T499 -162T513 -164ZM775 -103Q801 -87 823 -68T863 -30T894 10T919 49T937 88T950 123T959 154T964 180T968 198L969 208H597V-164Q599 -163 616 -161T647 -155T683 -145T728 -128T775 -103",10754:"555 -250Q420 -250 306 -185T124 -4T56 250Q56 453 193 595T526 749Q528 750 539 750Q554 750 562 749Q688 749 800 687T983 508T1054 250Q1054 112 987 -3T806 -184T555 -250ZM600 664Q591 665 548 665Q414 665 306 583L292 573L423 441L555 310L687 441L818 573L804 583Q714 650 600 664ZM364 118L495 250L364 382L232 513L223 500Q140 391 140 250Q140 107 223 0L232 -13L364 118ZM970 250Q970 389 887 501L878 512Q878 513 861 496T812 447T746 381L615 250L746 118L878 -13L887 0Q970 109 970 250ZM687 59L555 190L423 59L292 -73L306 -83Q416 -166 555 -166T804 -83L818 -73L687 59",10756:"96 750Q103 750 109 748T120 744T127 737T133 730T137 723T139 718V395L140 73L142 60Q159 -43 237 -104T416 -166Q521 -166 597 -103T690 60L692 73L694 718Q708 749 735 749Q765 749 775 720Q777 714 777 398Q777 78 776 71Q766 -51 680 -140Q571 -249 416 -249H411Q261 -249 152 -140Q66 -51 56 71Q55 78 55 398Q55 714 57 720Q60 734 70 740Q80 750 96 750ZM223 276Q223 282 224 287T227 296T232 302T238 308T243 313T250 316L254 319H374V376V406Q374 438 382 454T418 470Q443 467 450 453T458 410V376V319H579Q580 319 583 317T589 313T594 308T600 302T604 295T608 287T609 276Q609 253 587 241Q577 235 513 235H458V178Q458 176 458 166T459 148Q459 84 415 84Q401 84 390 93T375 117Q374 120 374 178V235H319Q317 235 307 235T290 234Q223 234 223 276",10758:"777 -217Q766 -244 745 -249H88Q64 -242 57 -220Q55 -214 55 250T57 720Q60 734 70 740Q80 750 96 750Q127 750 137 720Q139 714 139 274V-166H693V274Q693 714 695 720Q705 749 735 749Q766 749 775 719Q777 713 777 248V-217",12296:"373 850Q392 850 394 832Q394 825 267 538L139 250L267 -38Q394 -325 394 -332Q392 -350 375 -350Q361 -350 356 -338Q354 -331 289 -186T161 103T97 250T160 397T289 685T356 838Q362 850 373 850",12297:"77 832Q77 837 82 843T98 850Q110 849 115 838Q117 831 182 686T310 397T374 250T311 103T182 -185T115 -338Q110 -350 96 -350Q79 -350 77 -332Q77 -325 204 -38L332 250L204 538Q77 825 77 832"},{10764:"\u222c\u222c"})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.smallop=void 0,e.smallop={40:[.85,.349,.458],41:[.85,.349,.458],47:[.85,.349,.578],91:[.85,.349,.417],92:[.85,.349,.578],93:[.85,.349,.417],123:[.85,.349,.583],125:[.85,.349,.583],710:[.744,-.551,.556],732:[.722,-.597,.556],770:[.744,-.551,0],771:[.722,-.597,0],8214:[.602,0,.778],8260:[.85,.349,.578],8593:[.6,0,.667],8595:[.6,0,.667],8657:[.599,0,.778],8659:[.6,0,.778],8719:[.75,.25,.944],8720:[.75,.25,.944],8721:[.75,.25,1.056],8730:[.85,.35,1,{ic:.02}],8739:[.627,.015,.333],8741:[.627,.015,.556],8747:[.805,.306,.472,{ic:.138}],8748:[.805,.306,.819,{ic:.138}],8749:[.805,.306,1.166,{ic:.138}],8750:[.805,.306,.472,{ic:.138}],8896:[.75,.249,.833],8897:[.75,.249,.833],8898:[.75,.249,.833],8899:[.75,.249,.833],8968:[.85,.349,.472],8969:[.85,.349,.472],8970:[.85,.349,.472],8971:[.85,.349,.472],9001:[.85,.35,.472],9002:[.85,.35,.472],9168:[.602,0,.667],10072:[.627,.015,.333],10216:[.85,.35,.472],10217:[.85,.35,.472],10752:[.75,.25,1.111],10753:[.75,.25,1.111],10754:[.75,.25,1.111],10756:[.75,.249,.833],10758:[.75,.249,.833],10764:[.805,.306,1.638,{ic:.138}],12296:[.85,.35,.472],12297:[.85,.35,.472]}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.texCalligraphicBold=void 0;var r=Q(6),T=Q(250);e.texCalligraphicBold=r.AddPaths(T.texCalligraphicBold,{65:"761 751Q784 751 784 728V711Q784 570 795 417T820 191Q844 76 865 76Q868 76 902 93T962 112H973Q989 104 989 94Q989 92 987 86Q978 47 846 -11Q812 -25 779 -26Q722 -26 708 9Q688 47 669 161H524L379 162L359 136Q286 43 234 -3T142 -49T71 -19T39 55Q39 92 60 131T103 174Q113 174 117 167T124 149T136 128T166 110Q183 105 190 105Q230 105 341 246Q401 322 453 397T531 514T582 601T611 651H640V663Q640 692 676 718T745 750Q747 750 752 750T761 751ZM658 266Q653 312 649 377T644 489T641 541V556L557 415Q500 325 448 253Q467 261 524 261H568H658V266",66:"441 83Q571 83 571 195Q571 246 538 279T466 322T386 333Q378 333 357 330T329 327Q307 327 307 345Q307 354 313 365T347 396T419 430Q546 472 581 498Q594 508 594 535Q594 574 567 589T508 604Q469 604 442 583Q390 546 342 457T265 256Q237 148 186 60Q167 29 144 13Q105 -15 68 -17H65Q40 -17 40 1Q40 7 53 29T87 100T124 210Q162 373 190 575Q188 575 174 567T138 550T98 542Q75 542 75 560Q75 588 123 618Q135 625 203 659T281 696Q299 703 316 703Q339 703 339 685Q339 656 328 583L333 588Q338 592 346 599T367 615T394 634T428 654T467 674T511 690T559 701T611 705Q651 704 681 689Q739 659 739 598Q739 507 595 427L584 421Q585 420 595 416T610 410T626 402T644 392T660 380T677 365T691 347T703 325T710 299T715 268Q717 193 665 130Q622 73 531 28T348 -17Q275 -17 225 10Q206 19 200 24T193 36Q193 57 231 86T311 119H322Q386 83 441 83",67:"243 -20Q135 -20 78 48T20 218Q20 280 39 344T98 470T193 580T324 661T488 702H490Q491 702 493 702T498 703T507 703T518 702H526Q599 702 599 631Q599 597 577 550T541 486Q523 463 490 447T431 430Q423 430 419 433Q409 437 409 450Q410 456 432 499T454 567Q454 586 446 594T415 603Q316 603 254 532Q216 487 190 421T164 284Q164 228 181 186T226 122T282 90T340 80Q377 80 405 96T449 131T492 167T553 187H555Q580 187 580 168Q580 153 551 123T476 60T367 4T243 -20",68:"107 0Q92 5 92 18Q92 33 113 53T160 86Q170 91 182 94T197 100L206 120Q248 226 273 337T304 501T309 585Q278 585 234 577T179 557Q172 550 166 532T156 509Q140 484 105 466T44 447Q20 447 20 465Q20 482 34 510T76 565Q122 608 173 632Q281 686 447 686H480H517Q692 686 784 631Q885 571 885 450Q885 339 805 239T586 75T286 1Q276 0 187 0H107ZM741 391Q741 424 731 452T694 510T613 558T481 584Q476 584 468 584T457 585L449 586V579Q441 501 425 424T391 292T357 193T330 125T319 100H324Q511 100 628 175Q688 215 714 275T741 391",69:"495 516Q485 516 478 520T470 532Q470 537 476 550T482 570Q482 589 465 596T401 603Q344 603 319 582Q295 558 295 519Q295 493 312 474T355 445T407 432T455 427Q477 427 477 409Q477 395 453 371T389 333Q380 330 345 327T279 312T223 272Q181 223 181 176Q181 131 225 107T324 83Q366 83 395 98T448 136T487 167Q517 185 547 187H551Q574 187 574 170Q574 151 535 113T421 36T271 -15Q260 -16 226 -16Q181 -16 152 -9Q104 4 71 33T37 111Q37 140 50 176T106 263T216 356Q215 357 207 362T190 374T172 392T156 419T150 456Q150 521 208 580T341 670T474 702Q475 703 499 703Q528 703 547 701T586 693T615 673T627 637Q627 584 581 550T495 516",70:"812 567Q804 567 795 570T786 579Q786 586 647 586H559L558 582Q558 575 539 510T506 407L498 384H775Q788 378 790 368Q790 328 746 298T665 268Q646 268 642 284H457L447 261Q396 150 360 94Q329 46 270 8T149 -30Q123 -30 100 -24T63 -10T37 9T22 26T17 36Q17 59 56 88T135 119Q145 119 149 117T165 104Q187 78 227 72Q232 72 234 76Q245 93 273 145T350 323T424 570L428 586H276Q265 575 239 563T190 551Q180 551 174 556T167 569Q167 580 179 597T213 634T278 668T371 685Q374 686 624 686Q863 685 888 682Q917 678 927 663Q930 658 930 650Q930 624 888 596T812 567",71:"50 279Q50 361 88 438T190 570T335 661T503 702H514Q524 703 532 703Q671 703 671 626Q671 580 614 514T495 447Q472 447 472 465Q472 477 499 511T527 562Q527 582 507 592T433 602Q351 602 302 569Q252 535 223 469T194 344Q194 266 237 217T352 168Q401 168 442 205T505 316Q515 345 551 368T622 393H625Q649 393 649 376Q649 371 635 318T612 237Q580 129 540 62T442 -49Q353 -114 264 -114Q259 -114 252 -114L246 -113Q190 -113 142 -107T81 -96Q71 -90 71 -81Q71 -57 110 -30T187 2Q196 2 236 -4T338 -14Q371 -14 377 -9Q410 24 446 113L451 127Q353 68 253 68Q157 68 104 129T50 279",72:"42 447Q20 447 20 465Q20 481 47 515T119 589T239 657T392 686Q443 686 463 664T484 616Q484 570 473 506T452 401L441 360Q441 359 550 359H660L663 370Q684 435 716 522T758 624Q771 646 806 666T870 686Q894 686 894 668Q894 667 867 597T804 416T752 218Q737 135 737 93Q737 77 746 65T778 53Q799 53 803 54T814 63Q831 86 864 103T924 120Q946 120 946 100Q945 85 931 63T888 16T806 -27T684 -48H681Q625 -48 603 -10Q593 4 593 29Q593 71 603 131T624 230L634 269Q632 269 624 266Q610 261 600 261T507 259H411L399 222Q344 62 322 21Q301 -7 268 -24T209 -41H207Q187 -41 185 -25Q185 -17 192 2T220 71T261 184Q284 256 284 258Q284 259 227 259H170Q169 259 166 261T162 264T158 266T156 271T155 277Q155 296 184 320T250 356Q259 358 286 359Q312 359 312 360Q314 372 318 385Q332 450 339 526Q339 530 339 535T340 543Q340 586 296 586Q255 586 227 576T188 553T165 523T146 497Q127 476 97 462T42 447",73:"56 499Q32 499 32 516Q32 540 64 580T165 649Q241 682 365 685Q366 685 376 685T405 685T445 686T496 686T553 686H732Q746 677 746 668Q746 646 711 620T642 587L572 586H503Q479 546 458 479T424 352T383 224T318 111L309 101L412 100H514L523 109Q567 150 618 153Q644 153 644 135Q644 132 642 124Q629 86 581 52T476 6Q454 2 433 2T216 0Q-11 0 -15 2Q-27 6 -27 18Q-27 37 2 61T59 93Q77 100 142 100H198Q255 177 299 369Q337 513 382 574L391 586H348Q261 586 176 576Q163 543 124 521T56 499",74:"286 390Q263 390 263 407Q263 432 293 481T367 566Q511 687 724 687Q738 687 761 687T793 686H923Q937 677 937 668Q937 648 905 623T842 589Q829 587 817 586T802 585T795 583T788 578Q709 506 632 189Q622 153 615 134T588 81T537 17Q482 -39 404 -76T247 -114Q192 -114 158 -100Q53 -61 53 32Q53 59 58 73T79 102Q126 147 177 147Q200 147 200 128Q200 123 198 112T196 96Q196 47 238 17T345 -13Q362 -13 377 -9T404 0T426 16T444 34T459 55T470 76T478 97T483 116T488 132L490 141Q511 222 520 257T554 364T608 486T675 576L685 586H634H612Q532 586 484 564Q453 549 436 526T409 478T395 447Q378 424 345 407T286 390",75:"98 542Q75 542 75 560Q75 588 123 618Q132 624 199 657T275 694Q291 703 315 703Q327 703 332 699T338 690T339 670Q339 596 323 505T283 337T237 194T198 90L181 53Q170 31 136 8T68 -17H65Q40 -17 40 0L76 92Q112 185 150 322T194 564V578L168 565Q125 542 98 542ZM834 142Q834 125 819 100T774 48T692 3T576 -16H560Q540 -16 508 6Q469 33 422 108T342 267T309 398Q309 411 310 417T320 442T347 482Q401 542 517 615T710 702Q712 702 721 702T735 703Q772 703 791 690Q819 674 819 646T792 597T733 574H722Q704 584 704 599Q706 607 700 610T672 617L660 613Q609 595 524 538T423 450V440Q423 376 488 247T604 83Q621 70 640 70Q677 70 701 82Q713 87 718 101T737 132T783 160Q792 163 807 163Q834 163 834 142",76:"63 -17Q41 -17 41 0Q41 22 85 54Q101 68 113 92T133 141T154 219T182 315Q230 462 306 553Q345 599 391 632T478 678T543 697T582 703Q584 703 589 703T598 702Q643 702 666 676T689 613Q689 588 683 575Q674 551 632 524T552 496Q530 496 530 512Q530 517 531 525T533 538Q533 559 522 577T480 596H476Q462 596 451 588T415 544Q350 447 310 281Q284 181 261 136L255 124H285Q342 123 441 107T583 90L596 89Q603 116 647 144T729 173Q751 173 751 157Q751 118 685 60T523 -15Q514 -16 479 -16Q421 -16 320 0T171 18H155L142 10Q98 -17 63 -17",77:"38 20Q38 59 60 99T104 139Q106 139 126 125T176 106H181Q200 106 221 139T286 281Q322 370 342 451T368 581T376 634Q384 657 420 680T487 703Q502 703 507 696T522 649Q538 589 554 537Q579 453 609 372T660 248T686 202Q687 201 739 244T830 322L1166 642Q1225 700 1230 701Q1230 701 1237 703Q1258 703 1258 667L1253 637Q1248 607 1241 558T1227 451T1214 326T1209 202Q1209 77 1232 77Q1237 77 1269 94T1326 112H1329Q1353 112 1353 94Q1353 81 1334 60Q1311 37 1248 7T1150 -24H1141H1135Q1085 -24 1074 26Q1064 75 1064 134Q1064 239 1086 426Q1087 430 1087 434L1061 410Q871 227 783 149L694 76Q653 44 647 40T631 34Q620 34 616 37T594 63Q546 125 514 198Q467 307 423 449L418 466L412 444Q376 310 306 153Q278 88 251 45T201 -18T163 -43T131 -49Q102 -48 70 -31T38 20",78:"47 139Q81 105 122 105Q137 105 147 117Q159 134 182 199T234 381T274 610Q275 634 284 647Q297 666 327 684T389 703Q403 703 408 695T428 645Q480 490 567 298Q628 163 673 103Q674 102 674 102T675 106Q732 331 803 551Q842 674 875 725Q908 775 966 807T1081 840H1084Q1105 840 1105 803Q1105 768 1088 733T1051 689Q1045 686 1032 686Q986 683 948 663T901 624Q881 579 837 430T760 154L726 28Q725 28 725 28T723 25Q716 0 682 -24T611 -48Q600 -48 595 -45T576 -23Q522 44 480 124Q417 243 332 463L328 473L325 457Q291 293 227 124Q159 -49 72 -49Q38 -49 5 -28Q-24 -8 -24 21Q-24 58 -3 98T41 139H47",79:"433 703Q456 703 456 685Q456 672 441 655T407 627Q402 623 378 611T328 579T276 524Q207 434 207 324Q207 222 270 153T441 84Q566 84 651 177T737 400V405Q737 496 693 549T576 603Q542 603 510 560Q490 537 472 502T442 454Q397 412 346 409Q320 409 320 427Q320 430 322 436Q331 465 360 507T433 594T542 671T677 703Q776 703 829 636T882 468Q882 369 831 277T702 122T528 21T343 -17Q214 -17 139 61T63 257Q63 336 94 409T173 534T272 625T367 684T432 703H433",80:"170 -67Q147 -67 147 -49Q147 -42 162 -8T204 99T253 254Q274 332 288 415T305 542L308 585Q277 585 234 577T179 557Q172 550 166 532T156 509Q140 484 105 466T44 447Q20 447 20 465Q20 482 34 510T76 565Q122 608 173 632Q279 686 448 686H495H537Q622 686 678 677T784 637Q846 598 846 533Q846 452 776 375T597 252T378 206H366L358 181Q341 130 316 68T282 -7Q262 -33 230 -50T170 -67ZM701 468Q701 512 661 540T570 577T461 586H448V582Q446 576 443 545T428 447T395 301L389 280Q390 280 398 284T419 295T441 303Q443 304 484 306T572 321T651 359Q701 402 701 468",81:"874 453Q874 372 836 298T750 177T638 89T543 33T486 8L483 7Q485 5 523 -7T622 -32T726 -46Q741 -46 746 -45T755 -41T762 -27Q770 -1 806 23T878 50H890Q905 42 905 33Q905 -8 838 -68T670 -145Q662 -146 628 -146Q538 -146 389 -100T164 -50Q132 -50 132 -32T162 11T227 47Q231 48 286 51T394 62T518 100T641 180Q730 271 730 387Q730 478 673 540T520 602Q410 602 337 525T264 355Q264 284 310 244T420 203Q476 203 568 222Q594 222 594 204Q594 184 565 161T508 128Q433 103 316 103Q227 103 174 157T120 290Q120 382 182 471T343 620T548 697Q578 703 601 703Q604 703 611 703T623 702Q663 702 687 696Q760 679 817 618T874 453",82:"159 0Q159 5 172 34T205 114T245 229T284 386T309 575V585H304Q303 585 295 585T282 584Q233 579 207 570T175 553T165 531T156 509Q140 484 105 466T44 447Q20 447 20 465Q20 482 34 510T76 565Q122 608 173 632Q279 686 448 686H505H582Q683 686 745 672T834 611Q842 594 842 565Q842 523 824 484T780 419T722 370T669 336T632 318L619 312L626 302Q640 279 667 227T696 172Q717 133 735 112T762 88T784 84Q824 84 872 118T957 153Q981 153 981 136Q981 114 937 78T820 13T684 -17Q646 -17 616 8T569 66T526 151T477 234Q461 256 446 265Q437 272 421 274Q400 274 400 291Q400 311 430 336T495 371Q496 371 543 374T627 392T681 436Q699 467 699 503Q699 550 644 568T471 586H449V582Q449 581 447 559T438 499T422 413T393 298T348 165Q313 73 296 45Q282 24 249 4T185 -17Q159 -17 159 0",83:"204 476Q204 525 248 577T372 666T539 703T674 683T721 612Q721 588 714 569Q704 547 669 524T601 499Q573 499 573 516Q573 521 575 527T577 543Q577 563 568 574T548 588L539 590Q490 603 444 603Q418 603 394 597T364 583Q348 567 348 533Q348 493 382 466T459 425T555 387T633 330Q662 292 662 249Q662 153 544 69T257 -16Q218 -16 208 -15Q118 1 64 46Q25 76 25 126Q25 185 82 235T203 290H207Q229 290 231 274Q231 243 180 213Q173 209 172 206T170 189T171 170T183 150T216 121Q273 83 356 83Q412 83 459 100Q493 111 507 141Q518 165 518 185Q518 208 506 228T478 262T437 288T398 306T360 320Q316 335 285 352T239 384T215 416T205 443T204 467V476",84:"61 462H59Q38 462 38 479Q38 528 109 594T289 683L304 685L837 687L846 693Q889 720 923 720Q947 720 947 702Q945 671 892 631T776 583Q774 583 772 583T769 582T766 582L764 581H758Q753 581 744 581T722 580T693 580T662 580H563L514 385Q507 355 493 299T475 225T460 172T443 119T426 76T402 24Q386 -11 355 -33T304 -61T266 -69Q242 -69 242 -50Q243 -45 253 -25T278 32T307 115L364 340Q405 511 413 538T436 580H207Q202 572 200 568T197 561T195 552T190 537Q176 511 135 487T61 462",85:"124 586Q107 586 74 569T15 552H13Q-10 552 -10 570Q-10 605 70 645T222 686Q283 686 283 631Q283 590 246 504T172 326T135 181Q135 130 157 107T205 83Q221 83 259 106Q347 165 453 301T604 548Q607 557 612 569T619 587T624 600T628 612T632 621T637 628T641 634T647 640T654 645T662 652Q706 686 748 686Q771 686 771 669Q771 656 754 614T700 467T630 229Q615 168 610 105Q610 88 617 78L641 90Q681 111 706 112Q733 112 733 95Q733 82 714 60Q694 40 633 10Q567 -23 532 -24Q507 -24 495 -17Q466 -4 466 32Q466 96 500 225Q277 -17 102 -17Q56 -17 23 17T-10 118Q-10 164 13 234T64 363T115 481T139 567Q139 586 124 586",86:"25 608Q25 628 60 657T148 686Q184 683 213 671T273 625T327 538T363 394T380 184L381 134L399 148Q503 226 574 302T667 415T689 467Q688 474 684 482T672 502T645 521T600 532Q576 532 576 567Q576 604 597 644T641 685H649Q701 685 737 648T774 545Q774 457 703 333T461 66Q397 13 332 -32T255 -77Q237 -77 237 -30V-23Q241 20 241 109Q241 483 115 569Q91 586 50 589Q25 589 25 608",87:"25 607Q25 629 62 657T142 686Q205 686 248 647T312 541T339 411T347 275Q347 249 345 203V189Q375 219 449 316T587 516Q629 584 629 587Q629 589 626 597T622 607Q622 629 658 656T732 686H744Q755 680 757 678Q757 677 769 649T799 577T835 475T874 339T904 183Q908 157 910 151L925 169Q997 252 1059 343T1121 474Q1120 498 1103 513T1059 532Q1036 532 1036 568Q1036 600 1053 636T1090 683L1097 686H1109Q1147 684 1176 652T1206 551Q1206 460 1131 320T897 7Q859 -33 840 -52T816 -74T804 -77Q788 -77 784 -32Q783 -28 783 -26Q774 108 744 239T691 436T665 501Q664 501 649 475T602 400T528 289T420 146T280 -15Q243 -56 231 -66T210 -77Q191 -77 191 -40Q191 -38 195 -4T204 91T209 217Q209 290 202 351T177 469T126 557T45 589Q25 589 25 607",88:"762 562Q762 579 737 584T711 604Q711 630 753 658T834 686Q864 686 885 669T906 627Q906 580 834 522T614 379L584 362V357Q585 354 589 315T597 233T603 183Q610 132 627 116T671 100Q678 100 704 113T754 126T778 107Q776 79 733 45T626 2Q615 1 578 1Q542 1 535 3Q521 7 510 15T491 31T477 54T467 78T460 108T456 137T452 170T449 201Q447 220 445 240T442 270L441 281Q435 281 357 233Q240 165 206 135Q200 128 200 124Q200 113 208 108T226 101T244 96T252 82Q252 61 214 31T129 1H120Q97 1 77 16T56 60Q56 105 133 168T414 345Q428 352 431 354T433 359Q422 493 414 522Q407 551 395 566T373 583T350 586H341L332 580Q290 560 265 560Q243 560 243 577Q243 585 248 596T269 624T306 653T365 676T447 686H456Q472 686 484 683T514 671T543 637T562 576Q565 557 570 501L577 437Q577 436 613 457T694 506T756 551Q762 558 762 562",89:"73 555Q49 555 49 573Q49 602 110 644T239 686Q319 686 376 624Q416 584 444 511T483 361T499 240T503 173Q503 165 504 165Q506 165 524 184T556 218Q631 297 674 377T718 485Q718 505 699 526Q673 552 628 552Q619 552 613 562T607 590Q607 617 621 645T658 685Q661 686 671 686Q718 686 757 652T797 545Q797 476 749 369T602 146Q500 29 371 -67T176 -164Q112 -164 74 -120T36 -29Q36 5 55 36T95 67Q104 67 108 59T115 39T128 12T154 -12Q183 -30 216 -30Q239 -30 305 7L361 44L367 49V54Q367 95 364 143T351 273T312 429T243 546Q206 581 156 588L146 581Q108 555 73 555",90:"622 574Q522 579 420 579H396Q373 579 364 574T351 550Q339 516 297 490T218 462Q195 462 195 479Q195 487 197 492Q218 565 313 625T509 685Q564 685 650 683T755 680Q787 680 807 683T831 686Q853 686 853 669Q853 657 826 626Q742 532 641 437L619 415L622 414Q626 414 631 414T642 414Q697 411 697 388Q697 367 670 345T607 323Q605 323 592 325T546 329H522L490 302Q457 274 400 226T289 136L260 113L318 112Q345 111 452 109T587 106H627Q650 143 656 170Q666 197 710 225T788 253Q811 253 811 237Q811 211 781 160T710 77Q619 0 515 0Q507 0 497 0T484 1Q434 1 319 3T177 6Q123 6 95 2Q83 2 71 0H68Q46 0 46 17Q46 28 58 44Q68 56 100 80T210 165T383 307L408 329H361L314 330Q297 338 297 350Q297 368 320 388T368 413Q375 415 441 415H506L647 555L664 574H622",305:"24 296Q24 305 34 328T63 380T115 430T187 452Q205 452 223 448T262 435T295 406T308 360Q308 345 287 290T240 170T207 87Q202 67 202 57Q202 42 215 42Q235 42 257 64Q288 92 302 140Q307 156 310 159T330 162H336H347Q367 162 367 148Q367 140 357 117T329 65T276 14T201 -8Q158 -8 121 15T83 84Q83 104 133 229T184 358Q189 376 189 388Q189 402 177 402Q156 402 134 380Q103 352 89 304Q84 288 81 285T61 282H55H44Q24 282 24 296",567:"297 360T297 373T294 392T288 400T278 401H276Q237 398 200 363Q181 343 170 325T156 299T149 287T129 282H123H116Q102 282 97 284T92 298Q93 303 98 315T118 349T151 390T201 427T267 451H279Q357 451 388 422T420 354V339L370 138Q321 -60 317 -69Q287 -157 163 -194Q133 -201 99 -201Q39 -201 14 -178T-12 -125Q-12 -94 11 -69T68 -43Q93 -43 108 -57T123 -95Q123 -121 100 -151H104Q131 -151 155 -125T193 -60Q195 -54 244 141T294 345Q297 360 297 373"},{})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.texCalligraphicBold=void 0,e.texCalligraphicBold={65:[.751,.049,.921,{ic:.068,sk:.224}],66:[.705,.017,.748,{sk:.16}],67:[.703,.02,.613,{sk:.16}],68:[.686,0,.892,{sk:.0958}],69:[.703,.016,.607,{ic:.02,sk:.128}],70:[.686,.03,.814,{ic:.116,sk:.128}],71:[.703,.113,.682,{sk:.128}],72:[.686,.048,.987,{sk:.128}],73:[.686,0,.642,{ic:.104,sk:.0319}],74:[.686,.114,.779,{ic:.158,sk:.192}],75:[.703,.017,.871,{sk:.0639}],76:[.703,.017,.788,{sk:.16}],77:[.703,.049,1.378,{sk:.16}],78:[.84,.049,.937,{ic:.168,sk:.0958}],79:[.703,.017,.906,{sk:.128}],80:[.686,.067,.81,{ic:.036,sk:.0958}],81:[.703,.146,.939,{sk:.128}],82:[.686,.017,.99,{sk:.0958}],83:[.703,.016,.696,{ic:.025,sk:.16}],84:[.72,.069,.644,{ic:.303,sk:.0319}],85:[.686,.024,.715,{ic:.056,sk:.0958}],86:[.686,.077,.737,{ic:.037,sk:.0319}],87:[.686,.077,1.169,{ic:.037,sk:.0958}],88:[.686,0,.817,{ic:.089,sk:.16}],89:[.686,.164,.759,{ic:.038,sk:.0958}],90:[.686,0,.818,{ic:.035,sk:.16}],305:[.452,.008,.394,{sk:.0319}],567:[.451,.201,.439,{sk:.0958}]}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.texCalligraphic=void 0;var r=Q(6),T=Q(252);e.texCalligraphic=r.AddPaths(T.texCalligraphic,{65:"576 668Q576 688 606 708T660 728Q676 728 675 712V571Q675 409 688 252Q696 122 720 57Q722 53 723 50T728 46T732 43T737 41T743 39L754 45Q788 61 803 61Q819 61 819 47Q818 43 814 35Q799 15 755 -7T675 -30Q659 -30 648 -25T630 -8T621 11T614 34Q603 77 599 106T594 146T591 160V163H460L329 164L316 145Q241 35 196 -7T119 -50T59 -24T30 43Q30 75 46 100T74 125Q81 125 83 120T88 104T96 84Q118 57 151 57Q189 57 277 182Q432 400 542 625L559 659H567Q574 659 575 660T576 668ZM584 249Q579 333 577 386T575 473T574 520V581L563 560Q497 426 412 290L372 228L370 224H371L383 228L393 232H586L584 249",66:"304 342Q292 342 292 353Q292 372 323 391Q331 396 417 428T533 487Q563 512 563 555V562Q563 575 557 589T530 618T475 636Q429 636 396 613T330 539Q263 446 210 238Q196 183 173 120Q135 31 121 16Q108 1 85 -10T47 -22T32 -10Q32 -5 44 18T77 93T112 206Q135 296 154 395T182 550T191 615Q191 616 190 616Q188 616 179 611T157 601T131 594Q113 594 113 605Q113 623 144 644Q154 650 205 676T267 703Q277 705 279 705Q295 705 295 693Q295 686 288 635T278 575Q278 572 287 582Q336 635 402 669T540 704Q603 704 633 673T664 599Q664 559 638 523T580 462Q553 440 504 413L491 407L504 402Q566 381 596 338T627 244Q627 172 575 110T444 13T284 -22Q208 -22 158 28Q144 42 146 50Q150 67 178 85T230 103Q236 103 246 95T267 75T302 56T357 47Q436 47 486 93Q526 136 526 198V210Q526 228 518 249T491 292T436 330T350 345Q335 345 321 344T304 342",67:"201 -25Q167 -25 136 -14T75 23T29 94T12 202Q12 290 50 394T161 574Q227 642 303 673T433 704Q435 705 457 705Q533 701 533 640Q533 606 507 548T464 474Q431 444 396 444Q381 444 381 453Q381 459 388 473T407 513T428 563Q433 580 433 594Q433 636 381 636Q314 636 260 594T175 489T128 363T112 247Q112 157 153 101T273 44Q347 44 398 121Q413 144 437 157T481 171Q496 171 496 160Q496 150 476 123Q426 56 350 16T201 -25",68:"37 475Q19 475 19 487Q19 536 103 604T327 682H356Q386 683 408 683H419Q475 683 506 681T582 668T667 633Q766 571 766 450Q766 365 723 287T611 152T455 57T279 6Q248 1 160 0Q148 0 131 0T108 -1Q72 -1 72 11Q72 24 90 40T133 64L144 68L152 88Q247 328 272 587Q275 613 272 613Q272 613 269 613Q225 610 195 602T149 579T129 556T119 532Q118 530 116 525T113 518Q102 502 80 490T37 475ZM665 407Q665 596 412 613Q403 614 383 614Q370 614 370 612Q370 598 363 542T323 357T242 103L228 69H265Q391 73 481 119Q536 148 575 188T633 268T658 338T665 392V407",69:"144 470Q144 556 240 630T451 705Q564 705 564 637Q564 611 540 573Q529 559 505 547T464 534Q448 534 448 545Q448 552 455 562Q463 577 463 591Q463 600 462 604T456 616T436 627T400 635Q396 635 390 635T380 636Q291 636 258 568Q245 544 245 516Q245 463 290 438T391 410Q415 410 415 398Q415 392 407 380T376 356T326 341Q288 340 260 327Q218 311 187 276T143 208T130 151Q130 113 156 88T211 55T268 47Q349 47 403 125Q415 144 439 157T483 171Q499 171 499 160Q499 148 475 120T413 59T315 3T197 -22Q124 -22 77 14T30 105Q30 126 39 154T66 216T122 288T209 354L223 362Q144 400 144 470",70:"199 579Q181 579 181 590Q181 598 188 611T212 639T260 666T335 682Q336 682 349 682T383 682T431 682T493 683T561 683Q776 682 784 681Q826 673 829 647Q829 620 797 600T744 580Q728 580 728 595Q729 607 713 610Q698 613 598 614H500L499 610Q499 598 467 486T428 367Q428 365 551 365H674Q683 360 684 355Q687 346 677 329Q666 312 642 299T598 285Q586 285 582 296H402L394 277Q386 258 373 229T346 167T315 102T286 51Q265 22 225 -5T133 -32Q108 -32 87 -25T54 -7T33 15T21 35T18 47Q18 60 44 80T98 103Q108 103 111 101T119 88Q130 66 150 54T179 39T195 37Q199 37 203 43Q217 67 245 125T318 300T391 532Q393 543 398 564T406 598T409 613T339 614H269Q229 579 199 579",71:"216 68Q155 68 115 100T59 177T44 273Q44 299 50 333T73 421T133 533T239 632Q346 704 466 704Q508 704 515 703Q555 696 577 681T599 635Q599 605 570 560T523 496Q490 466 455 466Q440 466 440 475T469 526T499 589Q499 605 489 617Q460 636 403 636Q343 636 295 611T220 548T174 464T150 382T144 318Q144 241 180 189T287 137Q325 137 359 160Q428 205 466 322Q472 342 501 359T551 376Q557 376 560 373T564 368L565 365Q560 341 551 302T512 173T451 31Q359 -119 204 -119Q163 -118 127 -109T74 -91T53 -77Q52 -75 52 -71Q52 -54 79 -35T132 -14H140L151 -19Q210 -49 281 -49H289Q312 -49 329 -31Q351 -7 372 36T405 109T416 142L408 136Q401 131 392 125T369 111T338 96T303 82T261 72T216 68",72:"18 487Q18 496 29 517T67 566T127 621T216 665T330 683Q359 683 376 669T397 643T400 622Q400 584 382 488T348 343Q348 342 467 342H587L594 366Q615 440 648 534T690 641Q701 656 723 669T764 683Q783 683 783 672L750 578Q716 485 677 346T625 101Q624 92 623 82T622 65T621 56Q621 20 658 20Q666 20 701 25Q709 52 736 69T785 87Q803 87 803 75T791 44T754 3T685 -33T588 -48Q568 -48 562 -46Q522 -31 522 13V23Q531 129 562 250L569 281L565 280Q561 278 556 277T549 274L438 273H328L321 249Q307 202 275 107T232 0Q219 -16 196 -28T155 -41Q149 -41 145 -39T140 -34T139 -29Q139 -24 148 -3T181 86T233 247Q240 270 240 272Q240 273 194 273H169Q139 273 139 285Q139 295 153 308T187 332Q206 341 236 342L260 343L264 359Q278 414 289 482T300 578Q300 613 260 613H254Q198 613 169 592Q148 578 127 544T104 508Q72 478 37 475Q18 475 18 487",73:"174 0H31Q-13 0 -21 2T-30 12Q-30 23 -17 36Q9 60 42 68L155 70Q187 102 214 179T257 333T302 491T366 610L369 614H305Q221 611 188 607T145 596T128 569Q119 543 94 529T47 512Q28 512 28 524Q28 527 32 539Q56 614 159 654Q218 678 312 682Q314 682 339 682T404 682T481 683H632Q642 678 642 671Q642 657 621 641T577 617Q570 615 507 614H444Q427 592 406 542Q382 478 355 366T310 209Q280 123 238 78L230 69H330Q442 70 442 74Q443 74 443 77T447 87T460 105Q490 134 527 137Q545 137 545 125Q545 120 542 112Q531 78 491 49T399 7Q379 2 360 2T174 0",74:"148 78Q148 16 189 -17T286 -50Q319 -50 348 -33T396 10T426 59T444 101L471 204Q498 306 521 372Q575 532 649 605L659 614H591Q517 613 494 607Q433 591 400 550T360 477Q353 454 325 437T275 419Q256 419 260 435Q280 523 376 597T583 681Q603 683 713 683H830Q839 674 839 671Q839 654 810 634T754 614Q735 614 721 601Q688 571 654 495T600 351T561 209T541 132Q507 29 412 -45T213 -119Q141 -119 94 -77T47 33Q47 55 50 69T58 90T71 103Q105 131 135 131Q152 131 152 120Q152 119 151 114T149 99T148 78",75:"194 618Q193 618 182 613T156 601T131 594Q113 594 113 605Q113 623 144 644Q154 650 205 676T267 703Q277 705 279 705Q295 705 295 691Q295 569 250 397Q225 306 197 217T151 81T128 25Q120 8 94 -7T47 -22Q32 -22 32 -10L64 76Q95 163 133 295T185 530Q198 611 194 618ZM331 429Q331 383 364 290T449 117T542 36Q574 36 607 51T652 103Q660 124 677 133T709 143Q727 143 727 128Q727 119 723 111Q704 56 639 17T497 -22H493Q463 -22 425 16Q401 40 382 71Q335 138 296 243T256 399Q256 434 288 473Q342 540 471 622T670 705Q691 704 703 696Q732 678 732 644Q732 613 714 600T677 586Q671 586 667 587T660 592T657 604V619Q657 647 629 647Q623 647 620 646Q576 635 495 583T365 482Q331 448 331 429",76:"62 -22T47 -22T32 -11Q32 -1 56 24T83 55Q113 96 138 172T180 320T234 473T323 609Q364 649 419 677T531 705Q559 705 578 696T604 671T615 645T618 623V611Q618 582 615 571T598 548Q581 531 558 520T518 509Q503 509 503 520Q503 523 505 536T507 560Q507 590 494 610T452 630Q423 630 410 617Q367 578 333 492T271 301T233 170Q211 123 204 112L198 103L224 102Q281 102 369 79T509 52H523Q535 64 544 87T579 128Q616 152 641 152Q656 152 656 142Q656 101 588 40T433 -22Q381 -22 289 1T156 28L141 29L131 20Q111 0 87 -11",77:"28 9Q28 37 43 63T73 90Q77 90 83 84T103 70T141 57H146Q162 57 178 79T222 167Q266 279 295 371T334 513T349 598T358 651T371 677Q397 705 432 705Q442 705 445 699T452 666Q453 661 453 659Q475 538 509 405T568 207L574 192Q581 178 587 164T594 150Q596 150 635 189T693 248Q765 324 863 438T1024 626T1089 701Q1093 705 1100 705Q1111 705 1111 682Q1111 675 1108 660T1099 611T1086 540Q1041 277 1041 144Q1041 98 1044 75T1050 48T1059 42Q1064 41 1075 46Q1102 61 1121 61Q1137 61 1137 50Q1137 28 1087 0T1000 -29Q983 -29 972 -23T955 -9T945 16T942 45T941 83V96Q941 158 952 256T974 422L985 489Q984 489 939 436T821 300T698 164Q665 128 620 85T568 37Q564 34 558 34Q550 34 546 37T535 54Q512 91 496 127T450 259T389 498L384 518Q349 367 294 223T198 15Q155 -50 117 -50Q87 -50 61 -35T30 -6Q28 2 28 9",78:"343 705Q358 705 358 698Q360 696 370 658T411 524T484 319Q536 174 590 82L595 73L615 152Q646 274 683 407Q729 571 752 637T799 727Q852 780 937 788Q939 788 947 788T958 789H962Q979 789 979 765Q979 722 951 692Q942 683 924 683Q888 681 859 672T818 654T803 639Q784 608 708 322T631 15Q631 14 630 15Q630 17 629 15Q628 14 628 12Q621 -4 601 -17T560 -31Q550 -31 546 -28T530 -7Q484 67 458 123T398 272Q352 392 314 514L306 535V534Q306 533 296 488T272 379T234 239T185 100T127 -7T61 -50Q34 -50 4 -34T-27 8Q-27 33 -12 61T18 90Q21 90 36 77T87 57H92Q109 57 123 78T162 173Q206 299 232 417T265 599T276 667Q284 681 304 693T343 705",79:"308 428Q289 428 289 438Q289 457 318 508T378 593Q417 638 475 671T599 705Q688 705 732 643T777 483Q777 380 733 285T620 123T464 18T293 -22Q188 -22 123 51T58 245Q58 327 87 403T159 533T249 626T333 685T388 705Q404 705 404 693Q404 674 363 649Q333 632 304 606T239 537T181 429T158 290Q158 179 214 114T364 48Q489 48 583 165T677 438Q677 473 670 505T648 568T601 617T528 636Q518 636 513 635Q486 629 460 600T419 544T392 490Q383 470 372 459Q341 430 308 428",80:"37 475Q19 475 19 487Q19 536 103 604T327 682Q329 682 344 682T380 682T421 683H463Q625 683 695 615Q718 591 726 564Q733 547 733 525Q733 412 607 312T321 205H312Q293 205 293 217Q293 224 302 236T333 260T385 274Q558 287 614 407Q633 445 633 477Q633 515 612 543T556 585T481 607T399 614H370L368 603Q352 463 312 312T242 82T202 -13Q190 -33 164 -45T121 -57Q108 -57 108 -45Q108 -40 120 -10T151 73T192 190T233 349T266 539Q267 546 269 565T272 598T274 613H270Q209 613 163 588Q131 572 113 518Q102 502 80 490T37 475",81:"114 286Q114 358 151 433T249 569T392 667T558 705Q653 705 713 641T774 460Q774 389 750 322T687 206T600 114T504 46T412 4L399 -2Q542 -62 636 -62Q660 -62 670 -54T686 -27T700 0Q734 34 770 34Q787 34 787 23Q787 -18 720 -74T563 -131Q485 -131 350 -83T145 -34Q127 -34 127 -22Q127 -12 144 5T190 31L200 34L237 35Q386 38 467 79Q550 120 612 210T675 416Q675 510 625 573T484 636Q410 636 346 587T248 469T214 333Q214 306 221 281T243 229T288 188T360 172Q403 172 441 188T490 205Q510 205 510 192Q505 162 432 132T287 102Q206 102 160 155T114 286",82:"37 475Q19 475 19 487Q19 503 35 530T83 589T180 647T327 682H374Q387 682 417 682T464 683Q519 683 559 679T642 663T708 625T731 557Q731 481 668 411T504 300Q506 296 512 286T528 257T553 202Q594 105 611 82Q635 47 665 47Q708 47 742 93Q758 113 786 128Q804 136 819 137Q837 137 837 125Q837 115 818 92T767 43T687 -2T589 -22Q549 -22 517 22T467 120T422 221T362 273Q346 273 346 287Q348 301 373 320T436 342Q437 342 446 343T462 345T481 348T504 353T527 362T553 375T577 393Q598 412 614 443T630 511Q630 545 613 566T541 600T393 614Q370 614 370 613L366 584Q349 446 311 307T243 96L213 25Q205 8 179 -7T132 -22Q125 -22 120 -18T117 -8Q117 -5 130 26T163 113T205 239T246 408T274 606V614Q273 614 259 613T231 609T198 602T163 588Q131 572 113 518Q102 502 80 490T37 475",83:"554 512Q536 512 536 522Q536 525 539 539T542 564Q542 588 528 604Q515 616 482 625T410 635Q374 635 349 624T312 594T295 561T290 532Q290 505 303 482T342 442T378 419T409 404Q435 391 451 383T494 357T535 323T562 282T574 231Q574 133 464 56T220 -22Q138 -22 78 21T18 123Q18 184 61 227T156 274Q178 274 178 263Q178 260 177 258Q172 247 164 239T151 227T136 218L127 213L124 202Q118 186 118 163Q120 124 165 86T292 48Q374 48 423 86T473 186V193Q473 267 347 327Q268 364 239 389Q191 431 191 486Q191 547 242 600T356 679T470 705Q472 705 478 705T489 704Q551 704 596 682T642 610Q642 566 621 545Q592 516 554 512",84:"49 475Q34 475 34 490Q34 552 106 611T261 681Q272 683 507 683H742Q790 717 816 717Q833 717 833 708Q833 682 795 653T714 615Q691 610 588 609Q490 609 490 607L483 580Q476 554 462 496T435 392Q410 289 395 231T363 116T335 34T309 -15T279 -47T242 -64Q231 -68 218 -68Q203 -68 203 -57Q203 -52 211 -38Q224 -7 234 20T251 66T268 123T283 179T304 261T328 360Q342 415 360 488Q380 567 384 582T397 605Q400 607 401 609H302H244Q200 609 188 607T167 596Q145 572 145 541Q145 520 109 498T49 475",85:"8 592Q8 616 70 649T193 683Q246 683 246 631Q246 587 205 492T124 297T83 143Q83 101 100 75T154 48Q202 48 287 135T450 342T560 553Q589 635 593 640Q603 656 626 668T669 683H670Q687 683 687 672T670 616T617 463T547 220Q525 137 521 68Q521 54 522 50T533 42L543 47Q573 61 588 61Q604 61 604 47Q599 16 506 -22Q486 -28 468 -28T436 -18T421 18Q421 92 468 258Q468 259 467 257T459 248Q426 206 391 167T303 81T194 6T83 -22Q66 -22 58 -20Q25 -11 4 19T-17 99Q-17 146 8 220T64 358T120 488T146 586Q146 604 141 608T123 613H120Q99 613 72 597T25 580Q8 580 8 592",86:"25 633Q25 647 47 665T100 683Q291 683 291 306Q291 264 288 213T282 132L279 102Q281 102 308 126T378 191T464 279T545 381T596 479Q600 490 600 502Q600 527 581 550T523 577Q505 577 505 601Q505 622 516 647T542 681Q546 683 558 683Q605 679 631 645T658 559Q658 423 487 215Q409 126 308 37T190 -52Q177 -52 177 -28Q177 -26 183 15T196 127T203 270Q203 356 192 421T165 523T126 583T83 613T41 620Q25 620 25 633",87:"25 633Q25 647 46 665T103 683Q168 683 207 632Q228 608 243 568Q269 485 269 374Q269 324 265 271T256 184L251 150L252 152Q254 153 257 157T264 167T274 180T286 197Q359 293 424 398T519 558T549 616Q549 618 547 624T545 638Q550 654 572 668T615 683Q626 683 632 672T657 595Q726 370 741 128L742 110Q752 122 767 142T823 217T894 321T950 424T976 511Q976 544 958 560T918 577Q906 577 906 602Q906 629 918 651T942 681Q948 683 954 683Q983 683 1008 658T1034 569T999 421T915 257T813 109T724 -3T681 -49Q666 -59 660 -45Q659 -41 657 35T639 233T591 477Q573 551 570 551Q569 551 554 523T507 439T433 315T323 155T182 -25Q160 -52 151 -53Q137 -53 137 -30Q137 -29 148 25T170 168T181 338Q181 424 168 483T131 571T87 609T40 620Q25 620 25 633",88:"324 614Q291 576 250 573Q231 573 231 584Q231 589 232 592Q235 601 244 614T271 643T324 671T400 683H403Q462 683 481 610Q485 594 490 545T498 454L501 413Q504 413 551 442T648 509T705 561Q707 565 707 578Q707 610 682 614Q667 614 667 626Q667 641 695 662T755 683Q765 683 775 680T796 662T807 623Q807 596 792 572T713 499T530 376L505 361V356Q508 346 511 278T524 148T557 75Q569 69 580 69Q585 69 593 77Q624 108 660 110Q667 110 670 110T676 106T678 94Q668 59 624 30T510 0Q487 0 471 9T445 32T430 71T422 117T417 173Q416 183 416 188Q413 214 411 244T407 286T405 299Q403 299 344 263T223 182T154 122Q152 118 152 105Q152 69 180 69Q183 69 187 66T191 60L192 58V56Q192 41 163 21T105 0Q94 0 84 3T63 21T52 60Q52 77 56 90T85 131T155 191Q197 223 259 263T362 327T402 352L391 489Q391 492 390 505T387 526T384 547T379 568T372 586T361 602T348 611Q346 612 341 613T333 614H324",89:"65 599Q65 618 107 650T204 683Q267 683 312 643T380 533T414 385T424 217Q424 186 423 160T422 123Q426 123 468 170T567 304T650 469Q661 503 661 519Q661 546 639 570Q615 591 583 591Q569 591 569 616Q569 640 582 661T613 683Q624 683 638 679T671 664T702 625T714 558Q714 472 639 329T426 45Q361 -21 282 -82T154 -143Q97 -143 64 -104T31 -20Q31 4 44 25T70 46Q78 46 81 39T87 16T97 -9Q127 -51 182 -51Q184 -51 187 -50H190Q233 -41 314 25Q330 36 330 40Q336 79 336 178Q336 508 223 594Q199 614 158 619L148 620L139 611Q111 586 83 586Q65 586 65 599",90:"694 220Q708 220 708 210Q708 195 695 167T658 105T593 42T502 3Q492 1 458 1Q400 1 293 11T150 22Q116 22 92 11T51 0Q37 0 37 10Q37 21 63 44T179 146T367 319L391 343H343L296 344Q285 350 285 358Q285 365 289 372T300 383T313 392T324 398L329 400H450L561 518Q597 558 607 571L621 587H596Q553 589 484 599T383 609Q342 609 326 596T301 555Q294 533 263 514T208 492Q189 492 189 503Q189 510 197 528T215 559Q249 607 318 645T466 683Q504 683 573 673T669 662L690 661Q734 682 748 683Q767 683 767 673Q767 666 746 640Q655 531 555 428L529 400Q529 399 543 399Q604 397 604 366Q604 350 587 337T551 322Q541 322 539 323Q529 328 529 334Q529 339 487 342L470 343L446 320Q272 153 200 96L235 95Q297 95 392 86T533 74H554Q586 116 597 159Q604 179 635 199T694 220"},{})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.texCalligraphic=void 0,e.texCalligraphic={65:[.728,.05,.798,{ic:.021,sk:.194}],66:[.705,.022,.657,{sk:.139}],67:[.705,.025,.527,{sk:.139}],68:[.683,0,.771,{sk:.0833}],69:[.705,.022,.528,{ic:.036,sk:.111}],70:[.683,.032,.719,{ic:.11,sk:.111}],71:[.704,.119,.595,{sk:.111}],72:[.683,.048,.845,{sk:.111}],73:[.683,0,.545,{ic:.097,sk:.0278}],74:[.683,.119,.678,{ic:.161,sk:.167}],75:[.705,.022,.762,{sk:.0556}],76:[.705,.022,.69,{sk:.139}],77:[.705,.05,1.201,{sk:.139}],78:[.789,.05,.82,{ic:.159,sk:.0833}],79:[.705,.022,.796,{sk:.111}],80:[.683,.057,.696,{ic:.037,sk:.0833}],81:[.705,.131,.817,{sk:.111}],82:[.682,.022,.848,{sk:.0833}],83:[.705,.022,.606,{ic:.036,sk:.139}],84:[.717,.068,.545,{ic:.288,sk:.0278}],85:[.683,.028,.626,{ic:.061,sk:.0833}],86:[.683,.052,.613,{ic:.045,sk:.0278}],87:[.683,.053,.988,{ic:.046,sk:.0833}],88:[.683,0,.713,{ic:.094,sk:.139}],89:[.683,.143,.668,{ic:.046,sk:.0833}],90:[.683,0,.725,{ic:.042,sk:.139}]}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.texMathit=void 0;var r=Q(6),T=Q(254);e.texMathit=r.AddPaths(T.texMathit,{65:"85 46Q112 48 132 56T161 73T176 92T185 104Q185 106 353 407T524 709Q527 716 551 716Q568 716 572 712Q573 711 574 710Q576 708 594 384Q613 54 617 52H618Q626 46 672 46H689Q696 41 696 36Q696 13 683 0H670Q639 2 557 2Q526 2 500 2T459 2T441 1Q425 1 425 10Q425 12 427 24Q428 27 429 31T430 36T432 40T434 43T437 45T443 46T450 46Q514 46 514 69Q514 74 511 136L506 209H292L260 152Q222 84 222 74Q222 48 264 46Q280 46 280 35Q280 33 278 21Q275 7 272 4T259 0Q256 0 232 1T159 2Q135 2 109 1T78 0Q58 0 58 10Q58 14 61 26T66 40Q68 46 85 46ZM504 260Q503 263 496 407T486 553L466 520Q446 486 402 406L318 256Q318 255 411 255H504V260",66:"57 11Q57 38 69 45L74 46Q78 46 85 46T99 46Q134 47 145 50T162 62Q164 66 233 344T303 626Q303 627 302 629V631Q296 637 241 637H223Q217 642 217 645T219 664Q223 677 229 683H411L593 682L605 680Q616 678 628 675T660 662T694 639T720 601T732 547Q732 519 726 503Q710 452 662 414T556 360L545 357L556 355Q604 346 641 312T678 221Q678 155 622 92T482 8Q459 2 439 2T256 0H154H105Q74 0 66 2T57 11ZM629 549Q628 550 629 557T627 576T619 600T601 622T570 636Q564 637 490 637Q472 637 454 637T424 636T411 636Q399 635 395 622T364 500Q333 377 332 376Q332 374 408 374L485 375L495 377Q547 390 588 437T629 549ZM504 336Q500 337 410 337Q323 337 322 336Q322 334 305 263T270 122T252 51Q252 47 337 46Q346 46 361 46T384 45Q425 45 455 55T515 95Q574 156 574 235Q574 276 555 304T504 336",67:"395 -21Q279 -21 215 56T150 244Q150 402 265 543Q339 630 421 667T562 704Q596 704 604 703Q627 698 647 689T679 669T699 649T711 633T716 627L753 665Q790 704 792 704Q793 705 798 705Q812 705 812 698Q812 694 780 561Q744 422 744 421Q742 416 739 415T721 413H705Q699 419 699 426Q701 432 701 444Q705 464 705 493Q705 524 700 551T681 604T643 644T583 659Q480 659 387 570Q321 502 287 397T252 213Q252 123 297 74Q347 24 421 24Q500 24 564 89T653 240Q656 253 659 255T677 257Q700 257 700 248Q700 242 694 222Q681 183 656 143T593 65T504 3T395 -21",68:"56 11Q56 38 68 45L72 46Q77 46 84 46T98 46Q133 47 144 50T161 62Q163 66 232 344T302 626Q302 627 302 629L301 631Q295 637 240 637H222Q216 642 216 645T218 664Q222 677 228 683H403Q582 683 589 682Q672 674 723 608T775 440Q775 312 709 209T562 54Q502 14 432 2Q423 1 243 0H148H102Q72 0 64 2T56 11ZM254 51Q254 46 348 46Q395 46 422 50T484 71Q585 121 633 255Q679 396 679 477Q679 522 665 554T629 603T587 626T548 636Q547 636 536 636T510 636T480 637Q420 637 411 636T398 627Q396 623 325 339T254 51",69:"248 634Q216 634 214 638Q213 641 213 646Q213 674 224 678Q226 680 481 680H736Q743 676 743 669Q743 665 729 557T713 447Q711 440 690 440H675Q667 445 667 454Q667 455 671 481T675 536Q675 583 658 604T592 632Q574 634 475 634Q439 634 424 633T405 631T399 625Q397 622 367 501T336 377Q336 376 367 376H388Q451 376 477 389Q493 399 503 419T520 462T528 489Q531 493 549 493Q557 493 561 492T566 491T569 488T572 483L539 351Q507 221 503 216Q503 216 500 213H484Q468 213 465 216Q461 219 461 225Q461 228 466 250T472 290Q472 317 452 323T368 330H324Q323 326 289 191T255 51T331 46H360Q413 46 444 49T511 67T570 113Q589 137 608 175T638 242T652 272Q656 274 670 274Q693 274 693 262L648 148Q590 4 588 2Q585 0 323 0H61Q54 4 54 11Q54 27 61 41Q65 46 95 46Q131 47 142 50T159 62L194 200Q229 337 264 477T299 623Q299 630 292 631T248 634",70:"299 623Q299 630 292 631T247 634H219Q213 640 213 642T215 661Q218 673 225 680H724Q731 676 731 669Q731 665 717 557T701 447Q699 440 678 440H663Q656 444 656 452Q656 457 659 485T663 538Q663 586 644 607T566 633Q564 633 535 633T486 634H458Q404 634 399 625Q396 620 364 492L332 363H380Q446 365 464 373Q496 389 514 458Q518 477 523 479Q527 480 541 480H556Q563 475 563 470Q563 467 532 339T498 207Q496 200 475 200H460Q453 207 453 212Q454 213 456 225T461 254T464 278Q464 304 445 310T369 317H321L289 190Q257 66 257 59Q257 54 261 52T283 48T337 46Q348 46 352 46T360 45T366 42T368 37Q368 32 365 23Q360 4 355 2Q352 1 342 1Q336 1 297 1T199 2Q138 2 106 2T71 1H68Q54 1 54 11Q54 38 66 45L70 46Q75 46 82 46T96 46Q131 47 142 50T159 62L194 200Q229 337 264 477T299 623",71:"632 -1Q629 -1 622 5T604 25T583 53Q508 -22 394 -22Q287 -22 219 52T150 244Q150 402 265 543Q339 630 421 667T562 704Q596 704 604 703Q627 698 647 689T679 669T699 649T711 633T716 627L753 665Q790 704 792 704Q793 705 798 705Q812 705 812 698Q812 694 780 561Q744 422 744 421Q742 416 739 415T721 413H705Q699 419 699 426Q701 432 701 444Q705 464 705 493Q705 524 700 551T681 604T643 644T583 659Q480 659 387 570Q319 501 286 394T252 208Q252 156 269 118T314 61T369 33T425 24Q470 24 509 46T566 104Q571 116 583 162T595 214Q595 222 583 223Q561 227 517 227H495Q488 230 488 238Q488 254 495 268Q500 273 511 273Q515 273 532 273T581 272T649 271Q731 271 752 273H761Q767 267 767 264T765 246Q761 233 755 227H742Q698 227 693 213L639 4Q636 -1 632 -1",72:"61 0Q54 7 54 11Q54 27 61 41Q65 46 95 46Q131 47 142 50T159 62Q161 66 230 344T300 626Q300 627 300 629L299 631Q293 637 238 637H220Q214 642 214 645T216 664Q220 677 226 683H239Q307 681 372 681Q480 681 486 683H496Q502 677 502 674T500 656Q496 643 490 637H472Q418 637 406 630Q400 627 396 612T367 500Q360 474 352 442T340 395L336 380Q336 378 466 378H596Q657 622 657 626Q657 627 656 629V631Q650 637 595 637H577Q571 642 571 645T573 664Q577 677 583 683H596Q664 681 729 681Q837 681 843 683H853Q860 676 860 672Q858 647 848 637H819Q783 636 772 634T756 623Q753 618 684 340T614 57Q614 50 621 49T666 46Q697 46 699 40Q701 37 698 21Q693 3 689 1Q686 0 677 0Q673 0 657 0T611 1T546 2Q453 2 428 0H418Q411 7 411 11Q411 27 418 41Q422 46 452 46Q488 47 499 50T516 62Q517 64 550 196T584 331Q584 332 454 332H324L291 197Q257 64 257 56Q257 50 265 49T309 46Q340 46 342 40Q344 37 341 21Q336 3 332 1Q329 0 320 0Q316 0 300 0T254 1T189 2Q96 2 71 0H61",73:"235 637Q217 637 213 638T209 649Q209 673 220 682Q222 683 237 683Q278 681 369 681Q404 681 441 682T483 683Q499 683 503 681T508 672Q508 670 505 658T500 643Q498 637 464 637Q425 635 415 633T398 621Q396 618 327 340T257 58T260 52T278 48T322 46Q349 46 349 36Q349 31 346 22Q342 4 337 1Q336 1 334 1T329 0Q325 0 307 0T258 1T190 2Q95 2 67 0H56Q49 7 49 11Q51 38 62 46H91Q129 47 141 50T159 62Q161 66 230 344T300 625Q300 637 235 637",74:"361 637Q333 637 331 641Q330 644 330 649Q330 673 341 682Q343 683 360 683Q405 681 500 681Q551 681 577 681T607 682Q622 682 622 673Q622 665 616 647Q614 640 610 639T587 637Q547 636 541 624Q538 618 477 374T413 124Q391 64 333 22T207 -21T109 12T78 86Q78 130 101 150T149 170Q193 170 196 129Q196 100 178 80T137 58L132 57Q134 52 138 46T160 28T205 16Q242 16 273 48T319 122Q322 129 383 371T444 627Q444 637 361 637",75:"668 621Q668 635 645 637Q629 637 629 648Q629 650 632 662T637 677Q640 682 653 682Q657 682 688 681T764 680Q786 680 810 681T839 682Q859 682 859 672Q859 655 852 643Q849 637 839 637Q804 637 768 621T717 595T697 578Q696 578 600 497L505 417L508 408Q543 311 574 227T618 106T632 69Q645 47 688 46H707Q713 38 713 37T710 19Q706 6 700 0H688Q659 2 587 2Q557 2 532 2T492 2T474 1Q458 1 458 10Q458 13 460 23Q464 39 466 42T480 46Q526 46 526 72Q526 75 476 213L427 350Q426 350 396 325T334 272T302 242Q302 241 299 230T290 194T279 150Q257 61 257 55Q257 50 265 49T309 46H337Q343 40 343 38T341 19Q337 6 331 0H316Q280 2 190 2Q158 2 131 2T89 2T70 1Q54 1 54 11Q54 38 66 45L70 46Q75 46 82 46T96 46Q131 47 142 50T159 62Q161 66 230 344T300 626Q300 627 300 629L299 631Q293 637 238 637H220Q214 642 214 645T216 664Q220 677 226 683H239Q307 681 372 681Q386 681 414 681T464 682L487 683H496Q502 677 502 674T500 656Q495 641 491 637H462Q426 636 415 634T399 623Q396 618 358 467L320 314Q321 314 484 452Q510 474 552 509Q625 570 646 590T668 621",76:"61 0Q54 4 54 11Q54 27 61 41Q65 46 95 46Q131 47 142 50T159 62Q161 66 230 344T300 626Q300 627 300 629L299 631Q293 637 238 637H220Q214 642 214 645T216 664Q220 677 226 683H240Q275 681 371 681Q407 681 438 681T487 682T509 682Q527 682 527 674Q527 670 524 659Q523 657 523 654T522 649T520 645T519 642T517 640T515 639T512 638T507 637T502 637T494 637H478Q433 636 417 633T396 617Q395 614 325 334T255 51Q255 47 319 47Q387 47 410 52Q459 65 494 98T543 163T570 229T589 273H622Q628 264 628 262Q628 259 584 133T539 5Q537 1 511 1Q482 0 296 0H61",77:"72 1Q58 1 58 11Q58 33 66 41Q68 46 87 46Q150 50 168 84Q172 91 238 356T304 626Q304 627 304 629L303 631Q297 637 242 637H224Q218 642 218 645T220 664Q224 677 230 683H326H394Q417 683 422 682T429 676L480 127L502 163Q523 199 560 262T642 400Q801 668 805 676L817 683H1003Q1010 678 1010 672Q1010 650 997 637H979Q915 637 906 623Q903 618 834 340T764 57Q764 50 771 49T817 46H845Q851 38 851 37T848 19Q845 7 838 0H824Q789 2 701 2Q670 2 644 2T603 2T584 1Q569 1 569 11Q569 13 571 25Q576 42 581 45L586 46Q590 46 597 46T611 46Q646 47 657 50T674 62L813 616L634 313Q453 7 452 7Q446 0 428 0Q409 0 407 6Q405 10 379 304T351 604L285 348Q220 83 220 82Q220 65 233 57T279 46H295Q301 38 301 37T298 19Q295 7 288 0H275Q244 2 171 2Q145 2 123 2T88 2T72 1",78:"633 637Q624 637 621 639T617 650Q617 670 630 683H641Q682 680 736 680Q836 680 845 683H853Q860 676 860 672Q858 647 848 637H832Q764 633 750 598Q746 590 673 300Q656 230 638 156T610 44L600 7Q598 0 576 0H559Q553 6 448 297L342 588Q341 588 279 336T216 81Q216 49 274 46Q293 46 295 40Q297 37 294 21Q293 19 292 16T291 11T290 7T289 4T287 2T284 1T280 1T275 0T263 0T229 1T167 2Q91 2 70 0H61Q54 7 54 11T57 27Q61 41 64 43T83 46Q146 50 164 84Q167 90 235 362L303 634Q300 635 253 637H220Q214 643 214 645T216 664Q220 677 226 683H314Q386 683 397 683T410 677Q412 675 501 428L591 179Q591 178 592 180T595 189T600 209T610 246T624 303T645 385Q698 595 698 606Q698 618 683 627T633 637",79:"149 237Q149 326 186 413T282 563T412 665T552 704Q619 704 667 678T741 611T777 528T788 444Q788 328 728 219T572 44T377 -22Q275 -22 212 50T149 237ZM688 487Q688 570 650 617T548 665Q467 665 398 592T291 413T253 203Q253 119 290 70T387 20Q440 20 489 52T573 135T635 249T675 373T688 487",80:"62 0Q55 7 55 11Q55 27 62 41Q66 46 96 46Q132 47 143 50T160 62Q162 66 231 344T301 626Q301 627 300 629V631Q294 637 239 637H221Q215 642 215 645T217 664Q221 677 227 683H404H431H502Q578 683 615 675T684 636Q729 595 729 531Q729 462 671 396T524 308Q499 302 404 301H318L288 182Q258 63 258 55T310 46Q341 46 343 40Q345 37 342 21Q337 3 333 1Q330 0 321 0Q317 0 301 0T255 1T190 2Q97 2 72 0H62ZM626 555V562Q626 620 552 635Q546 636 481 637Q466 637 450 637T423 636T412 636Q401 635 398 627Q396 622 361 484Q353 452 344 416T330 362L325 344Q325 342 390 342H427Q523 342 567 386Q596 415 611 473T626 555",81:"460 -107Q460 -72 464 -42T468 -7L457 -10Q446 -14 424 -18T379 -22Q276 -22 213 50T149 237Q149 326 186 413T282 563T412 665T552 704Q664 704 726 631T788 442Q788 305 703 180Q627 64 517 13L506 8Q506 7 508 -12T513 -38T522 -59T538 -79T565 -85Q604 -85 634 -59T672 0Q676 11 684 11Q693 11 695 2Q695 -1 690 -20T673 -69T644 -126T599 -174T538 -194Q464 -194 460 -110Q460 -108 460 -107ZM689 481Q689 578 646 621T551 665Q468 665 391 586Q321 512 285 399T249 202Q249 106 295 58Q310 41 314 41Q315 41 315 46Q315 83 344 118T420 154Q450 154 473 135Q493 114 500 69L502 58L512 65Q571 110 613 192T672 348T689 481ZM472 49Q472 118 415 118Q393 118 373 98T353 51Q353 18 386 18H387Q424 18 472 40V49",82:"62 0Q55 7 55 11Q55 27 62 41Q66 46 96 46Q132 47 143 50T160 62Q162 66 231 344T301 626Q301 627 300 629V631Q294 637 239 637H221Q215 642 215 645T217 664Q221 677 227 683H386Q554 682 569 679Q571 678 580 676Q643 662 680 623T717 533Q717 473 667 420T528 337L538 330Q563 314 578 286T594 228Q594 212 588 147T581 65Q581 36 589 26T616 16H618Q637 16 652 37Q668 57 677 94Q679 105 701 105T723 95Q723 89 717 72T698 33T662 -5T610 -22Q555 -22 513 3T471 88Q471 107 486 168T502 244Q502 303 452 320Q445 322 382 323H320L288 192Q255 63 255 55T307 46Q338 46 340 40Q342 37 339 21Q335 3 330 1Q326 0 320 0Q317 0 306 0T265 1T190 2Q99 2 73 0H62ZM612 558Q612 566 612 568T610 581T603 597T590 611T567 625T532 635Q526 636 470 637Q458 637 445 637T422 636T412 636Q402 635 397 627L390 598Q383 570 373 532T354 455T337 389T330 361Q356 360 384 360H415Q483 360 527 382Q557 399 574 424T604 498Q612 533 612 558",83:"198 460Q198 551 269 628T432 705Q516 705 557 644L583 673Q589 679 593 684T600 693T605 698T609 702T611 704T614 705T618 705H620Q633 705 633 698T605 577T573 459L570 456H554Q546 456 543 456T536 457T532 460T531 466Q531 469 533 489T536 532Q536 573 525 600T496 640T462 657T427 662Q369 662 325 612T281 503Q281 475 290 458T318 430T356 415T407 401T463 383Q506 360 522 323T538 258V244Q538 141 465 60T300 -22Q198 -22 152 41L143 31Q137 25 126 12T106 -10T95 -21L92 -22Q88 -22 86 -22Q81 -22 78 -20T74 -16V-14Q74 -11 132 221Q134 227 155 227H171Q177 221 177 215Q177 212 175 205T171 182T169 147Q171 99 195 70T246 33T306 25Q358 25 400 70T453 169Q455 180 455 203V210Q455 263 414 285Q409 288 347 305Q271 328 254 339Q239 350 224 371Q198 409 198 460",84:"178 437Q173 442 171 446Q171 451 238 654Q243 670 250 677H681H762Q792 677 799 676T806 667Q806 661 788 553T768 444Q768 437 746 437Q727 437 723 445Q723 450 729 492T736 562Q736 589 728 602T693 624Q675 630 622 630H595Q575 630 571 629T564 623Q562 621 492 342T422 59Q422 48 502 46H542Q548 38 548 37T545 19Q541 6 535 0H517Q475 2 357 2Q315 2 279 2T223 2T198 1Q179 1 179 9Q179 14 182 24Q187 42 190 44Q194 46 206 46H232Q289 47 301 49T326 65L395 344Q465 619 465 626Q465 629 462 629Q456 631 411 631Q364 631 336 625T288 597T255 549T224 467Q215 442 210 437H178",85:"636 637Q627 637 624 639T620 650Q620 670 633 683H644Q702 681 753 681Q760 681 772 681T796 681T820 682T838 683H845H853Q860 676 860 672Q858 647 848 637H832Q764 633 750 598Q745 588 698 400T648 204Q627 140 584 86Q484 -22 378 -22Q300 -22 247 31T194 167Q194 176 194 182T196 198T200 218T207 248T217 288T231 346T250 422Q300 618 300 626Q300 627 300 629L299 631Q293 637 238 637H220Q214 642 214 645T216 664Q220 677 226 683H239Q307 681 372 681Q480 681 486 683H496Q502 677 502 674T500 656Q496 643 490 637H472Q418 637 406 630Q400 627 394 603T344 410Q299 232 292 198T284 135Q284 102 294 78T322 44T355 29T387 24Q455 24 515 74T604 211Q605 215 653 404T701 607Q701 618 686 627T636 637",86:"667 637Q657 637 654 639T650 650Q650 670 663 683H675Q704 681 772 681Q793 681 818 682T847 683Q868 683 868 672Q868 670 865 658T860 643Q857 637 848 637Q785 637 749 587L394 -15Q387 -22 366 -22Q346 -22 342 -16Q341 -13 313 303Q285 622 285 623Q283 631 273 634T229 637Q205 637 205 648Q205 654 208 666T217 682Q219 683 230 683Q276 680 329 680Q444 680 456 683H466Q472 677 472 674T470 656Q466 643 460 637H448Q384 637 384 615Q385 612 406 371T427 126Q427 125 495 240T632 473T704 596Q707 604 707 609Q707 633 667 637",87:"234 637H226Q205 637 205 648Q205 673 216 682Q218 683 231 683Q265 681 340 681Q371 681 404 682T443 683Q458 683 462 681T467 672Q467 670 464 658T459 643Q457 637 434 637Q407 636 394 632T378 623T376 613Q376 589 385 377T394 149L511 361Q542 419 596 519L613 551L612 585Q610 621 610 624Q608 637 559 637H555Q537 637 537 647Q537 654 540 664Q544 677 550 683H561Q600 680 656 680Q771 680 783 683H792Q798 677 798 675T796 658Q792 643 790 640T778 637H774Q721 637 708 620L717 385Q726 150 727 149Q727 148 752 193T812 303T882 433T942 546T969 596Q970 600 970 606Q970 610 969 613T966 620T961 625T955 628T949 631T941 633T934 634T927 636T920 637Q903 637 903 648Q903 650 905 664Q909 677 915 683H928Q960 681 1031 681Q1050 681 1073 681T1101 682Q1124 682 1124 672Q1124 655 1117 643Q1114 637 1104 637Q1085 637 1069 632T1043 618T1026 603T1014 588L1009 580L687 -16Q681 -22 660 -22Q643 -22 637 -16Q635 -14 627 223Q617 441 617 464L602 441Q578 397 487 228Q456 171 423 110T372 17T355 -15Q348 -22 328 -22Q312 -22 308 -20T303 -9Q303 -5 291 310T277 627Q273 636 234 637",88:"684 0Q670 0 634 1T569 2Q512 2 482 2T449 1Q433 1 433 10Q433 11 435 25Q437 34 438 37T442 43T448 45T459 46T476 49Q506 58 506 64Q506 65 467 179T426 295L382 244Q339 194 295 142T249 86Q245 79 245 72Q245 48 279 46Q293 46 293 32Q293 13 280 0H268Q206 2 151 2Q70 2 64 0Q50 0 50 11Q50 15 53 27Q57 41 60 43T78 46Q154 49 205 100Q207 103 312 225L411 341L407 353Q404 360 381 428T336 560T310 627Q301 636 255 637H229Q223 643 223 645T225 664Q229 677 235 683H246Q288 680 346 680Q462 680 477 683H487Q493 677 493 674T491 656Q488 644 485 641T471 637Q461 635 454 635Q419 626 421 619Q421 617 453 524T486 430T554 509T624 593Q631 604 631 611Q631 622 621 629T598 637Q583 637 583 648Q583 650 585 660Q589 676 591 679T602 683Q606 683 637 682T715 680Q742 680 771 681T804 682Q825 682 825 672Q825 650 817 642Q814 637 797 637Q739 634 700 608Q684 597 659 569T505 389L501 384L557 222Q612 61 616 57Q625 47 671 46Q691 46 697 45T704 36Q704 35 702 23Q701 19 700 14T699 7T696 3T692 1T684 0",89:"232 637Q198 637 198 647Q198 651 201 664T210 682Q212 683 223 683Q269 680 325 680Q443 680 455 683H465Q472 676 472 672Q472 656 465 642Q460 637 441 637Q395 634 395 623Q395 621 438 478T482 334T583 460T688 591Q688 593 694 601T700 617Q700 637 668 637H666Q655 637 655 648Q655 654 658 664Q660 672 660 673T663 678T668 682T677 683Q680 683 704 682T776 680Q801 680 828 681T858 682Q875 682 875 673Q875 669 872 657T867 643Q865 637 848 637Q788 634 749 597Q733 581 608 424L487 273L461 170Q454 145 448 118T438 76T434 60Q434 54 436 52T452 48T496 46H514Q520 41 520 38T518 19Q514 6 508 0H495Q427 2 364 2Q350 2 323 2T272 0H250H241Q234 7 234 11Q234 27 241 41Q245 46 275 46Q312 47 323 50T340 64Q340 65 344 79T355 120T368 171L393 274L341 448Q288 622 286 626Q278 636 232 637",90:"203 452Q203 455 236 565T270 677Q270 681 274 681Q276 683 488 683H699Q704 678 704 675Q704 663 697 649Q697 647 449 348L201 50L266 49H301Q442 49 495 116Q525 155 556 251Q563 274 565 278T579 282H585Q609 285 609 271Q609 270 570 142T528 8T518 1T466 0H303Q253 0 197 0T131 -1Q112 -1 102 -1T87 1T81 3T80 8Q80 30 89 39Q90 41 204 178T446 470T575 626L584 637H512H504H475Q446 637 426 635T378 624T330 597T289 546T254 467Q247 446 243 444Q239 442 226 442Q203 442 203 452",97:"418 53Q418 26 438 26Q466 26 494 131Q500 151 504 152Q507 153 516 153H521Q531 153 534 153T540 150T543 144Q543 141 540 126T529 88T509 43T477 5T434 -11Q404 -11 383 3T354 30T347 48H346Q345 47 342 45T337 40Q282 -11 228 -11Q172 -11 137 34T101 146Q101 260 177 351T333 442Q343 442 352 441T369 437T382 431T393 425T402 417T409 410T414 402T419 396Q423 406 436 414T461 422Q475 422 484 413T494 395Q494 384 459 244T420 88Q418 80 418 58V53ZM397 323Q397 344 382 374T333 405Q302 405 271 372Q249 349 235 316T203 215Q184 135 184 108V100V94Q184 54 207 35Q218 26 235 26Q279 26 330 91Q343 109 346 118T372 217Q397 317 397 323",98:"158 683Q163 683 223 688T300 694Q312 694 312 685T279 544Q243 405 243 403L256 412Q268 422 292 432T338 442Q395 442 431 398T467 284Q467 175 393 82T229 -11Q175 -11 142 32T108 142Q108 176 115 207T166 412Q177 458 190 510T209 588T216 616Q216 629 209 632T170 637H149Q143 643 143 645T145 664Q150 683 158 683ZM178 109Q178 27 234 27Q247 27 254 29Q295 44 323 94Q343 129 363 208T384 332Q384 354 382 361Q369 405 332 405Q282 405 228 326L222 317L205 250Q178 142 178 109",99:"257 -10Q183 -10 143 37T103 155Q103 257 173 341T337 440Q341 441 348 441H358Q421 441 445 415T469 356Q469 320 450 305T410 289Q392 289 381 299T370 325Q370 362 404 378L414 383Q392 402 365 405Q322 405 285 375T227 294Q217 271 202 213T187 119Q187 27 263 27Q299 27 330 40Q361 51 386 71T424 106T440 121Q444 121 455 110T466 96Q466 92 458 81T432 54T390 24T331 0T257 -10",100:"418 54Q418 26 438 26Q466 26 494 131Q500 151 504 152Q507 153 516 153H521H526Q543 153 543 144Q543 143 541 129Q531 91 521 65T487 14T434 -11T383 3T354 30T347 48H346Q345 47 342 45T337 40Q282 -11 228 -11Q172 -11 137 34T101 146Q101 255 174 348T337 441Q354 441 368 437T390 427T404 414T413 404T417 400L471 616Q471 629 464 632T425 637H404Q398 643 398 645T400 664Q405 683 413 683Q418 683 478 688T555 694Q567 694 567 686Q567 676 495 389L419 86Q418 80 418 61V54ZM397 323Q397 329 394 340T385 367T365 394T333 405Q302 405 271 372Q249 349 235 316T203 215Q184 135 184 108V100Q184 71 191 56Q204 26 235 26Q267 26 300 57T344 112Q347 117 372 217T397 323",101:"107 166Q107 230 131 283T193 369T270 420T345 441Q346 441 352 441T361 442H364Q409 442 439 418T470 355Q470 270 366 239Q308 223 218 223H205Q189 164 189 125Q189 83 206 55T261 27Q309 27 353 50T426 109Q436 121 440 121T453 111T466 97Q469 92 455 77Q424 41 372 16T258 -10Q184 -10 146 41T107 166ZM416 333T416 354T401 390T360 405Q322 405 292 384T246 336T223 288T215 261Q215 260 240 260Q262 261 276 262T314 266T353 275T384 291T408 317",102:"351 608Q351 642 389 661Q368 668 365 668Q358 668 352 664Q349 663 347 661T342 654T337 647T333 637T330 627T327 614T324 601T321 587T318 571L291 432Q291 431 343 431H394Q400 426 400 423T398 404Q394 390 389 386L335 385H282L255 246Q212 20 189 -51Q136 -199 58 -204Q22 -204 0 -185T-23 -134Q-23 -100 -3 -85T37 -69Q54 -69 65 -80T76 -108Q76 -115 75 -119Q70 -134 61 -144T46 -158L39 -161Q39 -162 42 -163T50 -166T61 -168Q77 -168 91 -145Q98 -128 105 -95L125 -1Q145 90 146 98Q149 109 163 180T189 317T202 384T158 385H114Q108 390 108 393T110 412Q113 424 120 431H165Q211 431 211 433Q213 435 219 473T237 561T266 639Q282 667 310 686T367 705Q402 705 426 686T450 635Q450 600 430 585T390 569Q373 569 362 580T351 608",103:"103 163Q106 263 173 347T320 441Q322 441 329 441T341 442Q387 439 419 398Q420 399 420 400Q421 402 425 406T440 416T464 422Q476 421 485 413T494 396Q494 386 465 268T407 38T377 -77Q365 -123 310 -164T179 -205Q46 -205 46 -139Q46 -114 64 -97T106 -79Q127 -79 136 -91T146 -115Q146 -127 141 -138T130 -155T124 -162T125 -163Q133 -166 170 -168Q200 -168 217 -162Q242 -153 264 -130T297 -78Q298 -74 305 -46T320 10T327 38Q326 38 317 31T291 15T256 2Q249 1 231 1Q182 1 143 38T103 163ZM398 324Q398 330 395 346T375 383T332 405Q330 405 326 405T320 404Q291 396 263 365Q230 324 208 239T185 115Q185 38 238 38Q258 38 279 50T312 77T336 106L348 122Q349 125 373 223T398 324",104:"398 44Q398 26 414 26Q431 26 451 43Q477 71 496 136Q499 148 501 150T515 153H521Q531 153 534 153T541 150T544 143Q544 133 534 105T496 41T432 -8Q424 -10 408 -10Q370 -10 348 12T326 72Q326 93 342 135Q397 288 397 349Q397 367 396 372Q386 405 357 405Q283 405 228 310Q217 290 212 274T180 152Q153 42 148 26T135 3Q121 -11 102 -11Q89 -11 80 -3T69 19L216 616Q216 629 209 632T170 637H149Q143 643 143 645T145 664Q150 683 158 683Q163 683 223 688T300 694Q312 694 312 685Q312 674 277 539Q241 395 241 393Q242 394 249 399T259 407T271 415T285 424T300 431T318 437T338 440T362 442Q423 442 449 410T475 338Q475 290 437 178T398 44",105:"234 599Q234 620 251 638T292 656Q306 656 319 647T332 617Q332 594 313 577T273 560Q260 560 247 569T234 599ZM75 287Q75 292 82 313T103 362T142 413T196 441H214Q248 441 270 419T293 357Q292 338 289 330T245 208Q193 72 193 46Q193 26 209 26Q228 26 247 43Q273 71 292 136Q295 148 297 150T311 153H317Q327 153 330 153T337 150T340 143Q340 133 330 105T292 41T228 -8Q220 -10 204 -10Q160 -10 141 15T122 71Q122 98 171 227T221 384Q221 396 218 400T203 405Q175 403 156 374T128 312T116 279Q115 278 97 278H81Q75 284 75 287",106:"266 600Q266 622 283 639T322 656Q340 656 352 645T364 616Q364 596 347 578T305 560Q291 560 279 569T266 600ZM75 287Q75 293 86 316T117 369T168 420T236 442Q282 442 304 415T327 358V332L278 134Q269 98 260 60T246 3T236 -36T227 -66T220 -85T213 -101T204 -114Q181 -150 139 -177T46 -204Q8 -204 -12 -186T-32 -140Q-32 -112 -14 -96T27 -79Q48 -79 57 -91T67 -114Q67 -146 38 -166Q42 -168 49 -168Q75 -168 98 -147T130 -108T146 -71Q150 -59 199 138T250 346Q253 359 253 373Q253 405 230 405Q206 405 184 386T149 345T126 301L117 280Q115 278 98 278H81Q75 284 75 287",107:"158 683Q163 683 223 688T300 694Q312 694 312 686Q312 679 262 478L211 273Q212 272 219 276T248 299T296 349Q317 371 328 382T360 410T399 434T439 442Q462 442 480 427T498 373Q498 329 479 313T437 296Q420 296 409 305T398 331Q398 357 413 372T445 391Q454 392 448 399Q445 405 431 405Q408 405 377 385Q351 368 314 327T250 261Q243 257 243 254Q249 254 279 243T328 220Q366 192 366 146Q366 131 361 109T355 62V54Q355 26 376 26Q379 26 387 28Q420 36 443 130Q449 151 454 152Q457 153 465 153H470Q484 153 488 152T492 144Q492 141 489 126T476 88T454 42T420 5T372 -11Q331 -11 306 17T280 88Q280 100 283 119T287 146Q287 172 265 190T221 215T198 220Q197 220 173 121Q152 37 148 24T135 3Q121 -11 102 -11Q89 -11 80 -3T69 19L216 616Q216 629 209 632T170 637H149Q143 643 143 645T145 664Q150 683 158 683",108:"162 61Q162 26 183 26Q211 26 239 131Q245 151 249 152Q252 153 261 153H266H271Q288 153 288 144Q288 143 286 129Q276 91 266 65T232 14T179 -11Q144 -11 116 12T87 81Q87 96 88 102L216 616Q216 629 209 632T170 637H149Q143 643 143 645T145 664Q150 683 158 683Q163 683 223 688T300 694Q312 694 312 686Q312 676 240 389L164 86Q162 74 162 61",109:"81 278Q75 284 75 289Q77 299 89 338Q101 373 114 396T142 428T166 439T186 442H189Q225 440 251 417Q266 401 271 384L275 374L286 386Q342 442 414 442Q428 442 440 440T461 435T479 427T493 418T503 407T511 397T516 387T520 378T523 370L524 366Q546 395 583 418T667 442Q729 442 755 411T782 338Q782 290 743 178T704 45Q704 26 720 26Q773 26 802 136Q805 148 807 150T822 153H828Q838 153 841 153T848 150T851 143Q851 137 843 115T821 63T778 12T715 -10Q671 -10 652 16T632 71Q632 88 668 191T704 349Q704 367 703 372Q693 405 664 405Q637 405 613 393T571 360T547 329T534 309Q523 290 518 274T487 151Q455 24 452 16Q438 -11 408 -11T376 18Q376 26 411 167T447 314Q449 325 449 346Q449 372 444 384Q431 405 408 405Q334 405 276 305Q266 289 262 273T231 151Q199 24 196 16Q182 -11 152 -11T120 18Q120 26 159 182T200 347Q202 361 202 372Q202 405 181 405Q168 405 159 391Q145 374 132 328T117 280T98 278H81",110:"449 44Q449 26 465 26Q482 26 502 43Q528 71 547 136Q550 148 552 150T566 153H572Q582 153 585 153T592 150T595 143Q595 133 585 105T547 41T483 -8Q475 -10 459 -10Q421 -10 399 12T377 72Q377 93 393 135Q448 288 448 349Q448 367 447 372Q437 405 408 405Q381 405 357 393T315 360T291 329T278 309Q267 290 262 274T231 151Q199 24 196 16Q182 -11 152 -11T120 18Q120 23 159 181Q199 343 199 346Q202 360 202 372Q202 406 183 406Q163 406 148 374Q142 360 135 338T124 299T117 280T98 278H81Q75 284 75 287Q76 293 78 303T90 341T110 388T141 425T184 442Q195 442 204 441T221 436T235 429T247 421T256 412T262 403T267 394T271 387T273 381L274 378V374L287 387Q342 442 414 442Q474 442 500 410T526 338Q526 290 488 178T449 44",111:"103 155Q103 266 185 354T366 442Q435 442 476 394T517 275Q517 169 436 79T255 -11Q194 -11 149 32T103 155ZM187 119Q187 67 209 47T260 26Q290 26 321 47Q354 68 380 113T426 260Q432 291 432 315Q432 361 408 385Q388 405 358 405Q319 405 283 374T227 294Q217 271 202 213T187 119",112:"81 278Q75 284 75 287Q93 379 131 417Q154 442 189 442Q222 440 243 423T272 382L280 390Q335 442 389 442Q446 442 482 398T518 284Q518 212 480 137T375 19Q321 -10 291 -10H282H278Q237 -10 204 28L202 32L181 -51Q160 -135 160 -139Q160 -147 205 -148H230Q236 -155 236 -157T233 -175Q230 -187 227 -190T214 -194Q211 -194 202 -194T169 -193T108 -192Q40 -192 21 -194H13Q6 -187 6 -183T9 -167Q13 -153 16 -151T39 -148Q73 -147 78 -136Q82 -128 139 104Q199 337 199 347Q202 362 202 372Q202 406 182 406Q169 406 159 391Q145 374 132 328T117 280T98 278H81ZM221 111Q234 26 286 26Q307 26 336 47T385 116Q398 147 416 217T435 332Q435 354 433 361Q420 405 383 405Q333 405 279 326L273 317L221 111",113:"228 -11Q172 -11 137 33T101 147Q101 205 125 266T201 377T318 441Q322 442 333 442Q388 442 420 394L429 403Q439 413 455 423T481 437T494 442Q498 442 501 439T504 434Q504 425 435 149Q364 -135 364 -139Q364 -147 409 -148H434Q440 -155 440 -157T437 -175Q433 -191 429 -193Q425 -194 418 -194Q416 -194 406 -194T372 -193T309 -192Q259 -192 233 -192T204 -193Q190 -193 190 -184Q190 -181 192 -169Q196 -153 199 -151T219 -148Q266 -148 277 -141Q283 -137 305 -51L325 29L316 22Q270 -11 228 -11ZM397 323Q397 329 394 340T385 367T365 394T333 405Q302 405 271 372Q249 349 235 316T203 215Q184 135 184 108V100Q184 71 191 56Q204 26 235 26Q267 26 300 57T344 112Q347 117 372 217T397 323",114:"81 278Q75 284 75 289Q77 301 89 339Q122 442 183 442Q219 442 241 425T271 384L283 396Q327 442 384 442Q424 442 454 421T484 362Q484 327 464 312T424 296Q407 296 396 305T385 331Q385 352 394 365T414 384T424 390Q409 405 378 405Q322 405 276 315L268 300L234 161Q200 25 196 16Q182 -11 152 -11T120 18Q120 23 159 181Q199 343 199 346Q202 360 202 372Q202 405 182 405Q164 405 150 377T128 316T117 280Q115 278 98 278H81",115:"153 285Q153 349 197 395T311 442Q355 442 386 420T418 356Q418 321 401 308T365 294Q336 294 331 326Q331 336 334 345T343 359T353 368T362 374L366 376Q365 379 362 383T344 396T308 404Q265 404 246 377T226 325T244 289T287 275T339 258T383 212Q395 188 395 163Q395 132 379 95T333 32Q279 -11 207 -11Q154 -11 115 13T76 86Q76 108 83 123T102 145T121 153T135 156Q154 156 164 145T175 117Q175 82 142 66L132 62Q131 62 131 61Q131 57 139 49T166 34T210 26Q250 26 277 44T312 83T321 123Q321 153 301 166T248 185T204 198Q176 211 162 241Q153 258 153 285",116:"94 385Q87 392 87 395Q87 399 90 411T95 425Q97 430 103 430T149 431H196L215 511Q218 521 222 539T228 565T234 585T242 603T251 615T264 623T281 626Q311 626 315 597Q315 591 296 513T275 433Q275 431 320 431H366Q373 424 373 420Q373 398 360 385H263L189 86Q188 80 188 61V54Q188 29 201 27Q213 23 229 30Q253 37 276 66T316 138Q321 149 324 151T342 153H347Q364 153 364 146T360 130Q331 63 290 26T202 -11Q158 -11 135 18T111 81Q111 93 129 168T166 314L184 383Q184 385 139 385H94",117:"75 287Q75 299 89 333T135 404T205 441Q246 441 269 420T293 357Q292 338 259 245T225 95Q225 26 274 26Q301 26 324 43T358 77T369 99Q369 102 406 249T446 404Q460 431 490 431T522 402Q522 394 485 245T446 89Q443 74 443 56Q443 28 461 26Q487 26 507 86Q524 130 524 146Q524 147 530 153H547Q570 153 570 144Q570 138 561 109T544 62Q530 29 512 12Q492 -11 454 -11Q429 -9 410 2T385 23T376 41L363 28Q350 16 325 3T269 -10Q204 -10 176 25T148 108Q148 161 184 262T221 383Q221 405 206 405Q178 405 158 375T128 313T116 279Q115 278 97 278H81Q75 284 75 287",118:"387 386Q387 407 406 425T445 443Q466 443 479 423T492 371Q492 330 473 253Q411 18 307 -8Q298 -10 279 -10Q208 -10 179 26T149 114Q149 162 185 261T221 384Q221 405 206 405Q177 405 157 375T128 313T116 279Q115 278 97 278H81Q75 284 75 287T79 304T93 342T119 388T158 425T210 441H218Q243 441 268 421T293 357Q292 337 259 245T226 102Q226 26 285 26Q328 26 360 72T422 237Q429 265 429 290Q428 324 408 349T387 386",119:"591 386Q591 407 610 425T649 443Q670 443 683 423T696 371Q696 327 672 232T621 85Q575 -11 493 -11Q469 -11 449 -6T418 8T398 24T386 38L382 43Q347 -10 293 -10H286Q221 -10 186 21T150 115Q150 164 185 262T221 384Q221 405 206 405Q177 405 157 375T128 313T116 279Q115 278 97 278H81Q75 284 75 287T79 304T93 342T119 388T158 425T210 441H218Q243 441 268 421T293 357Q292 336 260 246T227 108Q227 26 292 26H295Q332 26 361 93L366 103V119Q366 122 367 133T369 150Q372 167 401 282T433 404Q446 431 477 431Q507 431 509 402Q509 396 500 358T474 254T446 140Q444 126 444 104V92Q444 66 459 46T502 26H505Q527 28 545 43T577 88T602 149T623 226Q633 265 633 290Q632 324 612 349T591 386",120:"275 356Q275 383 262 394T233 405Q196 405 166 371T121 289Q119 280 116 279T98 278H81Q77 282 76 283T75 288T78 300Q88 332 109 363T153 411Q195 442 235 442Q306 442 333 386Q373 442 427 442Q461 442 487 421T513 364T494 312T453 296Q436 296 425 305T414 331Q414 352 424 366T446 386L456 390Q448 404 421 404H418Q382 404 358 341Q355 332 328 227T298 105Q295 90 295 75Q295 26 339 26Q365 26 388 43T424 82T444 123T451 146L457 153H474Q490 153 493 152T496 144Q496 133 486 110T456 58T404 10T333 -11Q276 -11 237 45Q197 -11 146 -11Q108 -11 83 10T58 67Q58 99 76 117T119 135Q136 135 147 124T158 96Q158 89 157 85Q149 57 125 45L115 41Q125 26 151 26Q171 26 187 45T214 93Q217 102 244 210T273 330Q275 339 275 356",121:"75 287Q75 299 89 333T135 404T205 441Q246 441 269 420T293 357Q292 338 259 245T225 95Q225 26 274 26Q325 26 367 93L405 245Q442 393 446 404Q460 431 490 431T522 402Q522 400 416 -24Q389 -102 327 -153T196 -205Q152 -205 122 -181T91 -119Q91 -84 110 -67T152 -49Q170 -49 180 -60T191 -87Q191 -108 174 -128Q167 -134 157 -138T146 -144Q155 -153 159 -156T173 -163T199 -167Q229 -167 255 -149T297 -105T325 -52T342 -6T347 15Q315 -10 269 -10Q204 -10 176 25T148 108Q148 161 184 262T221 383Q221 405 206 405Q178 405 158 375T128 313T116 279Q115 278 97 278H81Q75 284 75 287",122:"160 317Q158 317 155 317Q136 317 136 324Q136 351 171 396T260 442Q292 442 321 410T365 375H369Q384 375 404 408L425 441Q427 442 444 442H460Q466 436 466 434Q466 419 426 367Q387 314 294 222T178 105L170 95L181 94Q198 93 236 81T295 68Q328 68 356 89T395 141Q398 150 401 151T419 153Q441 153 441 144Q441 110 394 50T282 -11Q251 -11 221 23T171 57Q157 57 143 47T121 26T104 3T95 -10Q93 -11 76 -11H60Q54 -5 54 -2Q54 3 61 14Q103 88 233 215Q349 329 349 338L302 351Q269 362 247 362Q227 362 212 356T192 342T183 327T178 320Q175 317 160 317"},{})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.texMathit=void 0,e.texMathit={65:[.716,0,.743],66:[.683,0,.704],67:[.705,.021,.716],68:[.683,0,.755],69:[.68,0,.678],70:[.68,0,.653],71:[.705,.022,.774],72:[.683,0,.743],73:[.683,0,.386],74:[.683,.021,.525],75:[.683,0,.769],76:[.683,0,.627],77:[.683,0,.897],78:[.683,0,.743],79:[.704,.022,.767],80:[.683,0,.678],81:[.704,.194,.767],82:[.683,.022,.729],83:[.705,.022,.562],84:[.677,0,.716],85:[.683,.022,.743],86:[.683,.022,.743],87:[.683,.022,.999],88:[.683,0,.743],89:[.683,0,.743],90:[.683,0,.613],97:[.442,.011,.511],98:[.694,.011,.46],99:[.441,.01,.46],100:[.694,.011,.511],101:[.442,.01,.46],102:[.705,.204,.307],103:[.442,.205,.46],104:[.694,.011,.511],105:[.656,.01,.307],106:[.656,.204,.307],107:[.694,.011,.46],108:[.694,.011,.256],109:[.442,.011,.818],110:[.442,.011,.562],111:[.442,.011,.511],112:[.442,.194,.511],113:[.442,.194,.46],114:[.442,.011,.422],115:[.442,.011,.409],116:[.626,.011,.332],117:[.441,.011,.537],118:[.443,.01,.46],119:[.443,.011,.664],120:[.442,.011,.464],121:[.441,.205,.486],122:[.442,.011,.409]}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.texOldstyleBold=void 0;var r=Q(6),T=Q(256);e.texOldstyleBold=r.AddPaths(T.texOldstyleBold,{48:"259 460H279Q352 460 403 444T491 378Q528 320 528 219Q528 100 475 45Q417 -17 287 -17Q152 -17 99 44T46 219Q46 246 47 265T57 318T82 376T131 422T210 454Q234 460 259 460ZM389 229V271Q389 351 371 380T280 409Q232 409 208 385Q194 371 190 345T185 229V210Q185 108 194 83Q208 35 287 35Q317 35 336 42Q372 55 380 85T389 204V229",49:"119 417Q191 417 240 428T310 450T338 461Q353 461 357 452T361 400Q361 389 361 342T360 254V62H420H456Q483 62 488 58T494 35V29Q494 13 491 7T473 0Q468 0 424 1T295 2T167 1T117 0Q114 0 111 0T107 1Q96 8 96 27V35Q96 54 102 58T140 62H170H229V213Q229 363 228 363Q220 360 196 358T150 356L130 355H93Q84 360 82 365T80 386Q80 404 81 407T95 417H119",50:"214 399Q202 399 191 398T175 395T170 392L171 390Q172 389 174 386T178 379T181 369T182 355Q182 328 165 312T123 296Q99 296 82 312T64 356Q64 397 105 428T253 460Q301 460 337 456T411 441T476 403T514 338Q516 328 516 310V304Q516 257 470 227Q456 217 427 205T376 184L354 176Q350 174 325 162T277 139L254 128Q414 129 428 130H439Q450 148 453 166T460 188T486 193H493Q515 193 517 178Q517 171 502 94T484 11Q481 3 472 2T410 0H269Q65 0 62 2Q55 5 53 10T51 32Q51 54 56 58Q60 62 173 131Q296 207 318 224Q368 264 368 308Q368 342 342 363T283 392T214 399",51:"80 309Q80 367 131 414T276 461Q388 461 441 417T494 313Q494 265 463 223T373 155L361 151L376 147Q436 132 480 92T525 -15T487 -127T393 -192T274 -211Q179 -211 114 -167T48 -53Q48 -18 69 5T128 29Q168 29 188 5T208 -50Q208 -59 207 -67T203 -81T197 -92T190 -101T183 -109T177 -114T170 -118L167 -121Q160 -125 164 -127Q167 -129 176 -133Q215 -152 268 -152H273Q337 -152 356 -92Q364 -69 364 -14Q364 45 352 74T303 120Q287 125 240 125H230Q201 125 196 127T191 146V152Q192 170 196 173T233 178Q234 178 241 178T252 179T262 181T274 183T285 188T297 195T308 205T319 218T328 235T337 257Q345 280 345 320V330Q345 345 343 355T335 379T312 399T270 407Q226 407 177 377Q226 356 226 310Q226 270 204 253T153 235Q123 235 102 253T80 309",52:"180 0Q155 0 124 0T84 -1Q48 -1 40 3T32 27V37Q32 59 34 63T204 265T377 465Q380 468 383 468H387Q391 468 398 468T411 469Q432 469 438 468T449 459Q451 455 451 258V62H489H498Q531 62 536 58T542 31Q542 9 537 5T504 0H489H451V-132H489H498Q530 -132 536 -136T542 -163Q542 -181 538 -187T522 -194Q518 -194 483 -193T378 -192Q281 -192 256 -193L217 -194Q203 -189 203 -169V-163V-158Q203 -140 209 -136T246 -132H265H314V0H180ZM325 62V320L105 63L215 62H325",53:"131 29Q159 26 175 12T194 -13T197 -35V-41Q197 -58 195 -66Q191 -76 185 -84T173 -97T161 -105T152 -109L148 -110Q148 -112 158 -121T195 -141T252 -152Q274 -152 280 -151Q335 -137 349 -104T363 9Q363 85 356 114T322 157Q305 166 286 166Q251 166 223 154T182 131T162 109Q154 98 150 96T130 93Q107 93 102 104Q100 107 100 279V371V424Q100 461 110 461Q114 461 123 458T149 450T183 441Q234 429 286 429Q313 429 340 432T387 440T422 449T447 457T458 461Q472 461 472 435Q472 420 470 418Q464 405 438 379T352 325T226 297Q189 297 171 301H168V182Q169 182 174 185T190 194T213 205T248 213T292 217Q391 217 454 159T517 5Q517 -92 444 -151T255 -211Q167 -211 112 -160T57 -44Q57 -12 76 8T131 29",54:"48 316Q48 398 70 462T124 562T198 621T274 652T339 660Q377 660 384 659Q497 632 497 532Q497 507 482 487T431 466Q397 466 381 486T365 530Q365 569 405 593Q382 603 381 603Q361 607 350 607Q316 607 279 589T221 533Q199 489 196 385L195 370Q196 371 203 379T217 395T237 410T263 424Q283 431 313 431Q409 431 468 368Q526 310 526 208Q526 131 492 81T405 5Q359 -17 289 -17Q256 -17 227 -11T163 17T105 73T65 170T48 316ZM293 380Q244 380 220 331T196 212Q196 104 216 80Q240 41 292 41Q295 41 301 41T309 42Q338 46 355 62Q372 81 375 108T379 230Q378 314 372 333Q358 375 299 380H293",55:"95 210H88Q66 210 64 225Q64 229 82 345T102 465Q106 476 125 476H131Q162 476 162 458Q162 451 213 448Q221 448 238 447T260 446Q261 446 410 444Q436 444 468 444T509 445Q544 445 551 440T558 413V404Q558 395 547 380T478 301L392 202Q354 150 339 81T321 -104V-132Q321 -187 286 -203Q273 -211 255 -211Q236 -211 217 -199T190 -160Q189 -153 189 -130Q194 17 282 156Q309 200 370 270Q404 307 400 307H293Q151 306 146 303Q140 300 132 259T120 215Q115 210 95 210",56:"48 164Q48 199 59 228T92 277T128 307T163 329Q159 332 155 336Q135 346 110 382Q80 427 80 477Q80 564 147 620Q202 660 264 660Q266 660 275 660T290 661Q384 661 439 619T494 506Q494 486 489 468T477 437T459 413T440 395T421 380T406 370L410 368Q414 365 421 361T437 351T456 335T476 316T495 291T511 262T522 228T526 189Q526 93 460 38T282 -17Q242 -17 205 -9T130 19T71 75T48 164ZM406 506Q406 545 379 576T283 607Q218 606 193 585T168 536Q168 522 172 513T195 490T224 471T275 443L346 403Q406 446 406 506ZM291 42Q365 42 395 70T425 134V141Q425 170 401 190T319 242Q308 248 302 251Q286 260 266 271T235 288L225 294Q222 292 217 289T198 274T175 249T157 212T148 163Q148 116 179 79T291 42",57:"175 -140Q198 -152 236 -152Q294 -152 332 -116Q356 -91 366 -54T379 62V78L376 74Q372 70 366 64T352 50T333 35T308 23Q289 17 262 17Q168 17 108 77T48 235Q48 273 59 317Q81 381 141 421T276 461Q279 461 285 461T295 460Q326 460 354 454T415 426T471 371T510 277T526 136Q526 42 501 -28T432 -136T341 -192T240 -210Q199 -210 169 -201T121 -178T94 -146T80 -112T77 -82Q77 -51 95 -33T143 -15Q170 -15 189 -33T209 -81Q209 -116 175 -140ZM377 244V274Q377 300 376 316T368 352T348 384T312 405Q307 406 283 406Q257 406 238 396T213 376T205 361Q196 341 196 259V233V181Q196 122 211 96T278 69H298Q330 82 345 104Q367 134 376 190Q377 200 377 244",65:"761 751Q784 751 784 728V711Q784 570 795 417T820 191Q844 76 865 76Q868 76 902 93T962 112H973Q989 104 989 94Q989 92 987 86Q978 47 846 -11Q812 -25 779 -26Q722 -26 708 9Q688 47 669 161H524L379 162L359 136Q286 43 234 -3T142 -49T71 -19T39 55Q39 92 60 131T103 174Q113 174 117 167T124 149T136 128T166 110Q183 105 190 105Q230 105 341 246Q401 322 453 397T531 514T582 601T611 651H640V663Q640 692 676 718T745 750Q747 750 752 750T761 751ZM658 266Q653 312 649 377T644 489T641 541V556L557 415Q500 325 448 253Q467 261 524 261H568H658V266",66:"441 83Q571 83 571 195Q571 246 538 279T466 322T386 333Q378 333 357 330T329 327Q307 327 307 345Q307 354 313 365T347 396T419 430Q546 472 581 498Q594 508 594 535Q594 574 567 589T508 604Q469 604 442 583Q390 546 342 457T265 256Q237 148 186 60Q167 29 144 13Q105 -15 68 -17H65Q40 -17 40 1Q40 7 53 29T87 100T124 210Q162 373 190 575Q188 575 174 567T138 550T98 542Q75 542 75 560Q75 588 123 618Q135 625 203 659T281 696Q299 703 316 703Q339 703 339 685Q339 656 328 583L333 588Q338 592 346 599T367 615T394 634T428 654T467 674T511 690T559 701T611 705Q651 704 681 689Q739 659 739 598Q739 507 595 427L584 421Q585 420 595 416T610 410T626 402T644 392T660 380T677 365T691 347T703 325T710 299T715 268Q717 193 665 130Q622 73 531 28T348 -17Q275 -17 225 10Q206 19 200 24T193 36Q193 57 231 86T311 119H322Q386 83 441 83",67:"243 -20Q135 -20 78 48T20 218Q20 280 39 344T98 470T193 580T324 661T488 702H490Q491 702 493 702T498 703T507 703T518 702H526Q599 702 599 631Q599 597 577 550T541 486Q523 463 490 447T431 430Q423 430 419 433Q409 437 409 450Q410 456 432 499T454 567Q454 586 446 594T415 603Q316 603 254 532Q216 487 190 421T164 284Q164 228 181 186T226 122T282 90T340 80Q377 80 405 96T449 131T492 167T553 187H555Q580 187 580 168Q580 153 551 123T476 60T367 4T243 -20",68:"107 0Q92 5 92 18Q92 33 113 53T160 86Q170 91 182 94T197 100L206 120Q248 226 273 337T304 501T309 585Q278 585 234 577T179 557Q172 550 166 532T156 509Q140 484 105 466T44 447Q20 447 20 465Q20 482 34 510T76 565Q122 608 173 632Q281 686 447 686H480H517Q692 686 784 631Q885 571 885 450Q885 339 805 239T586 75T286 1Q276 0 187 0H107ZM741 391Q741 424 731 452T694 510T613 558T481 584Q476 584 468 584T457 585L449 586V579Q441 501 425 424T391 292T357 193T330 125T319 100H324Q511 100 628 175Q688 215 714 275T741 391",69:"495 516Q485 516 478 520T470 532Q470 537 476 550T482 570Q482 589 465 596T401 603Q344 603 319 582Q295 558 295 519Q295 493 312 474T355 445T407 432T455 427Q477 427 477 409Q477 395 453 371T389 333Q380 330 345 327T279 312T223 272Q181 223 181 176Q181 131 225 107T324 83Q366 83 395 98T448 136T487 167Q517 185 547 187H551Q574 187 574 170Q574 151 535 113T421 36T271 -15Q260 -16 226 -16Q181 -16 152 -9Q104 4 71 33T37 111Q37 140 50 176T106 263T216 356Q215 357 207 362T190 374T172 392T156 419T150 456Q150 521 208 580T341 670T474 702Q475 703 499 703Q528 703 547 701T586 693T615 673T627 637Q627 584 581 550T495 516",70:"812 567Q804 567 795 570T786 579Q786 586 647 586H559L558 582Q558 575 539 510T506 407L498 384H775Q788 378 790 368Q790 328 746 298T665 268Q646 268 642 284H457L447 261Q396 150 360 94Q329 46 270 8T149 -30Q123 -30 100 -24T63 -10T37 9T22 26T17 36Q17 59 56 88T135 119Q145 119 149 117T165 104Q187 78 227 72Q232 72 234 76Q245 93 273 145T350 323T424 570L428 586H276Q265 575 239 563T190 551Q180 551 174 556T167 569Q167 580 179 597T213 634T278 668T371 685Q374 686 624 686Q863 685 888 682Q917 678 927 663Q930 658 930 650Q930 624 888 596T812 567",71:"50 279Q50 361 88 438T190 570T335 661T503 702H514Q524 703 532 703Q671 703 671 626Q671 580 614 514T495 447Q472 447 472 465Q472 477 499 511T527 562Q527 582 507 592T433 602Q351 602 302 569Q252 535 223 469T194 344Q194 266 237 217T352 168Q401 168 442 205T505 316Q515 345 551 368T622 393H625Q649 393 649 376Q649 371 635 318T612 237Q580 129 540 62T442 -49Q353 -114 264 -114Q259 -114 252 -114L246 -113Q190 -113 142 -107T81 -96Q71 -90 71 -81Q71 -57 110 -30T187 2Q196 2 236 -4T338 -14Q371 -14 377 -9Q410 24 446 113L451 127Q353 68 253 68Q157 68 104 129T50 279",72:"42 447Q20 447 20 465Q20 481 47 515T119 589T239 657T392 686Q443 686 463 664T484 616Q484 570 473 506T452 401L441 360Q441 359 550 359H660L663 370Q684 435 716 522T758 624Q771 646 806 666T870 686Q894 686 894 668Q894 667 867 597T804 416T752 218Q737 135 737 93Q737 77 746 65T778 53Q799 53 803 54T814 63Q831 86 864 103T924 120Q946 120 946 100Q945 85 931 63T888 16T806 -27T684 -48H681Q625 -48 603 -10Q593 4 593 29Q593 71 603 131T624 230L634 269Q632 269 624 266Q610 261 600 261T507 259H411L399 222Q344 62 322 21Q301 -7 268 -24T209 -41H207Q187 -41 185 -25Q185 -17 192 2T220 71T261 184Q284 256 284 258Q284 259 227 259H170Q169 259 166 261T162 264T158 266T156 271T155 277Q155 296 184 320T250 356Q259 358 286 359Q312 359 312 360Q314 372 318 385Q332 450 339 526Q339 530 339 535T340 543Q340 586 296 586Q255 586 227 576T188 553T165 523T146 497Q127 476 97 462T42 447",73:"56 499Q32 499 32 516Q32 540 64 580T165 649Q241 682 365 685Q366 685 376 685T405 685T445 686T496 686T553 686H732Q746 677 746 668Q746 646 711 620T642 587L572 586H503Q479 546 458 479T424 352T383 224T318 111L309 101L412 100H514L523 109Q567 150 618 153Q644 153 644 135Q644 132 642 124Q629 86 581 52T476 6Q454 2 433 2T216 0Q-11 0 -15 2Q-27 6 -27 18Q-27 37 2 61T59 93Q77 100 142 100H198Q255 177 299 369Q337 513 382 574L391 586H348Q261 586 176 576Q163 543 124 521T56 499",74:"286 390Q263 390 263 407Q263 432 293 481T367 566Q511 687 724 687Q738 687 761 687T793 686H923Q937 677 937 668Q937 648 905 623T842 589Q829 587 817 586T802 585T795 583T788 578Q709 506 632 189Q622 153 615 134T588 81T537 17Q482 -39 404 -76T247 -114Q192 -114 158 -100Q53 -61 53 32Q53 59 58 73T79 102Q126 147 177 147Q200 147 200 128Q200 123 198 112T196 96Q196 47 238 17T345 -13Q362 -13 377 -9T404 0T426 16T444 34T459 55T470 76T478 97T483 116T488 132L490 141Q511 222 520 257T554 364T608 486T675 576L685 586H634H612Q532 586 484 564Q453 549 436 526T409 478T395 447Q378 424 345 407T286 390",75:"98 542Q75 542 75 560Q75 588 123 618Q132 624 199 657T275 694Q291 703 315 703Q327 703 332 699T338 690T339 670Q339 596 323 505T283 337T237 194T198 90L181 53Q170 31 136 8T68 -17H65Q40 -17 40 0L76 92Q112 185 150 322T194 564V578L168 565Q125 542 98 542ZM834 142Q834 125 819 100T774 48T692 3T576 -16H560Q540 -16 508 6Q469 33 422 108T342 267T309 398Q309 411 310 417T320 442T347 482Q401 542 517 615T710 702Q712 702 721 702T735 703Q772 703 791 690Q819 674 819 646T792 597T733 574H722Q704 584 704 599Q706 607 700 610T672 617L660 613Q609 595 524 538T423 450V440Q423 376 488 247T604 83Q621 70 640 70Q677 70 701 82Q713 87 718 101T737 132T783 160Q792 163 807 163Q834 163 834 142",76:"63 -17Q41 -17 41 0Q41 22 85 54Q101 68 113 92T133 141T154 219T182 315Q230 462 306 553Q345 599 391 632T478 678T543 697T582 703Q584 703 589 703T598 702Q643 702 666 676T689 613Q689 588 683 575Q674 551 632 524T552 496Q530 496 530 512Q530 517 531 525T533 538Q533 559 522 577T480 596H476Q462 596 451 588T415 544Q350 447 310 281Q284 181 261 136L255 124H285Q342 123 441 107T583 90L596 89Q603 116 647 144T729 173Q751 173 751 157Q751 118 685 60T523 -15Q514 -16 479 -16Q421 -16 320 0T171 18H155L142 10Q98 -17 63 -17",77:"38 20Q38 59 60 99T104 139Q106 139 126 125T176 106H181Q200 106 221 139T286 281Q322 370 342 451T368 581T376 634Q384 657 420 680T487 703Q502 703 507 696T522 649Q538 589 554 537Q579 453 609 372T660 248T686 202Q687 201 739 244T830 322L1166 642Q1225 700 1230 701Q1230 701 1237 703Q1258 703 1258 667L1253 637Q1248 607 1241 558T1227 451T1214 326T1209 202Q1209 77 1232 77Q1237 77 1269 94T1326 112H1329Q1353 112 1353 94Q1353 81 1334 60Q1311 37 1248 7T1150 -24H1141H1135Q1085 -24 1074 26Q1064 75 1064 134Q1064 239 1086 426Q1087 430 1087 434L1061 410Q871 227 783 149L694 76Q653 44 647 40T631 34Q620 34 616 37T594 63Q546 125 514 198Q467 307 423 449L418 466L412 444Q376 310 306 153Q278 88 251 45T201 -18T163 -43T131 -49Q102 -48 70 -31T38 20",78:"47 139Q81 105 122 105Q137 105 147 117Q159 134 182 199T234 381T274 610Q275 634 284 647Q297 666 327 684T389 703Q403 703 408 695T428 645Q480 490 567 298Q628 163 673 103Q674 102 674 102T675 106Q732 331 803 551Q842 674 875 725Q908 775 966 807T1081 840H1084Q1105 840 1105 803Q1105 768 1088 733T1051 689Q1045 686 1032 686Q986 683 948 663T901 624Q881 579 837 430T760 154L726 28Q725 28 725 28T723 25Q716 0 682 -24T611 -48Q600 -48 595 -45T576 -23Q522 44 480 124Q417 243 332 463L328 473L325 457Q291 293 227 124Q159 -49 72 -49Q38 -49 5 -28Q-24 -8 -24 21Q-24 58 -3 98T41 139H47",79:"433 703Q456 703 456 685Q456 672 441 655T407 627Q402 623 378 611T328 579T276 524Q207 434 207 324Q207 222 270 153T441 84Q566 84 651 177T737 400V405Q737 496 693 549T576 603Q542 603 510 560Q490 537 472 502T442 454Q397 412 346 409Q320 409 320 427Q320 430 322 436Q331 465 360 507T433 594T542 671T677 703Q776 703 829 636T882 468Q882 369 831 277T702 122T528 21T343 -17Q214 -17 139 61T63 257Q63 336 94 409T173 534T272 625T367 684T432 703H433",80:"170 -67Q147 -67 147 -49Q147 -42 162 -8T204 99T253 254Q274 332 288 415T305 542L308 585Q277 585 234 577T179 557Q172 550 166 532T156 509Q140 484 105 466T44 447Q20 447 20 465Q20 482 34 510T76 565Q122 608 173 632Q279 686 448 686H495H537Q622 686 678 677T784 637Q846 598 846 533Q846 452 776 375T597 252T378 206H366L358 181Q341 130 316 68T282 -7Q262 -33 230 -50T170 -67ZM701 468Q701 512 661 540T570 577T461 586H448V582Q446 576 443 545T428 447T395 301L389 280Q390 280 398 284T419 295T441 303Q443 304 484 306T572 321T651 359Q701 402 701 468",81:"874 453Q874 372 836 298T750 177T638 89T543 33T486 8L483 7Q485 5 523 -7T622 -32T726 -46Q741 -46 746 -45T755 -41T762 -27Q770 -1 806 23T878 50H890Q905 42 905 33Q905 -8 838 -68T670 -145Q662 -146 628 -146Q538 -146 389 -100T164 -50Q132 -50 132 -32T162 11T227 47Q231 48 286 51T394 62T518 100T641 180Q730 271 730 387Q730 478 673 540T520 602Q410 602 337 525T264 355Q264 284 310 244T420 203Q476 203 568 222Q594 222 594 204Q594 184 565 161T508 128Q433 103 316 103Q227 103 174 157T120 290Q120 382 182 471T343 620T548 697Q578 703 601 703Q604 703 611 703T623 702Q663 702 687 696Q760 679 817 618T874 453",82:"159 0Q159 5 172 34T205 114T245 229T284 386T309 575V585H304Q303 585 295 585T282 584Q233 579 207 570T175 553T165 531T156 509Q140 484 105 466T44 447Q20 447 20 465Q20 482 34 510T76 565Q122 608 173 632Q279 686 448 686H505H582Q683 686 745 672T834 611Q842 594 842 565Q842 523 824 484T780 419T722 370T669 336T632 318L619 312L626 302Q640 279 667 227T696 172Q717 133 735 112T762 88T784 84Q824 84 872 118T957 153Q981 153 981 136Q981 114 937 78T820 13T684 -17Q646 -17 616 8T569 66T526 151T477 234Q461 256 446 265Q437 272 421 274Q400 274 400 291Q400 311 430 336T495 371Q496 371 543 374T627 392T681 436Q699 467 699 503Q699 550 644 568T471 586H449V582Q449 581 447 559T438 499T422 413T393 298T348 165Q313 73 296 45Q282 24 249 4T185 -17Q159 -17 159 0",83:"204 476Q204 525 248 577T372 666T539 703T674 683T721 612Q721 588 714 569Q704 547 669 524T601 499Q573 499 573 516Q573 521 575 527T577 543Q577 563 568 574T548 588L539 590Q490 603 444 603Q418 603 394 597T364 583Q348 567 348 533Q348 493 382 466T459 425T555 387T633 330Q662 292 662 249Q662 153 544 69T257 -16Q218 -16 208 -15Q118 1 64 46Q25 76 25 126Q25 185 82 235T203 290H207Q229 290 231 274Q231 243 180 213Q173 209 172 206T170 189T171 170T183 150T216 121Q273 83 356 83Q412 83 459 100Q493 111 507 141Q518 165 518 185Q518 208 506 228T478 262T437 288T398 306T360 320Q316 335 285 352T239 384T215 416T205 443T204 467V476",84:"61 462H59Q38 462 38 479Q38 528 109 594T289 683L304 685L837 687L846 693Q889 720 923 720Q947 720 947 702Q945 671 892 631T776 583Q774 583 772 583T769 582T766 582L764 581H758Q753 581 744 581T722 580T693 580T662 580H563L514 385Q507 355 493 299T475 225T460 172T443 119T426 76T402 24Q386 -11 355 -33T304 -61T266 -69Q242 -69 242 -50Q243 -45 253 -25T278 32T307 115L364 340Q405 511 413 538T436 580H207Q202 572 200 568T197 561T195 552T190 537Q176 511 135 487T61 462",85:"124 586Q107 586 74 569T15 552H13Q-10 552 -10 570Q-10 605 70 645T222 686Q283 686 283 631Q283 590 246 504T172 326T135 181Q135 130 157 107T205 83Q221 83 259 106Q347 165 453 301T604 548Q607 557 612 569T619 587T624 600T628 612T632 621T637 628T641 634T647 640T654 645T662 652Q706 686 748 686Q771 686 771 669Q771 656 754 614T700 467T630 229Q615 168 610 105Q610 88 617 78L641 90Q681 111 706 112Q733 112 733 95Q733 82 714 60Q694 40 633 10Q567 -23 532 -24Q507 -24 495 -17Q466 -4 466 32Q466 96 500 225Q277 -17 102 -17Q56 -17 23 17T-10 118Q-10 164 13 234T64 363T115 481T139 567Q139 586 124 586",86:"25 608Q25 628 60 657T148 686Q184 683 213 671T273 625T327 538T363 394T380 184L381 134L399 148Q503 226 574 302T667 415T689 467Q688 474 684 482T672 502T645 521T600 532Q576 532 576 567Q576 604 597 644T641 685H649Q701 685 737 648T774 545Q774 457 703 333T461 66Q397 13 332 -32T255 -77Q237 -77 237 -30V-23Q241 20 241 109Q241 483 115 569Q91 586 50 589Q25 589 25 608",87:"25 607Q25 629 62 657T142 686Q205 686 248 647T312 541T339 411T347 275Q347 249 345 203V189Q375 219 449 316T587 516Q629 584 629 587Q629 589 626 597T622 607Q622 629 658 656T732 686H744Q755 680 757 678Q757 677 769 649T799 577T835 475T874 339T904 183Q908 157 910 151L925 169Q997 252 1059 343T1121 474Q1120 498 1103 513T1059 532Q1036 532 1036 568Q1036 600 1053 636T1090 683L1097 686H1109Q1147 684 1176 652T1206 551Q1206 460 1131 320T897 7Q859 -33 840 -52T816 -74T804 -77Q788 -77 784 -32Q783 -28 783 -26Q774 108 744 239T691 436T665 501Q664 501 649 475T602 400T528 289T420 146T280 -15Q243 -56 231 -66T210 -77Q191 -77 191 -40Q191 -38 195 -4T204 91T209 217Q209 290 202 351T177 469T126 557T45 589Q25 589 25 607",88:"762 562Q762 579 737 584T711 604Q711 630 753 658T834 686Q864 686 885 669T906 627Q906 580 834 522T614 379L584 362V357Q585 354 589 315T597 233T603 183Q610 132 627 116T671 100Q678 100 704 113T754 126T778 107Q776 79 733 45T626 2Q615 1 578 1Q542 1 535 3Q521 7 510 15T491 31T477 54T467 78T460 108T456 137T452 170T449 201Q447 220 445 240T442 270L441 281Q435 281 357 233Q240 165 206 135Q200 128 200 124Q200 113 208 108T226 101T244 96T252 82Q252 61 214 31T129 1H120Q97 1 77 16T56 60Q56 105 133 168T414 345Q428 352 431 354T433 359Q422 493 414 522Q407 551 395 566T373 583T350 586H341L332 580Q290 560 265 560Q243 560 243 577Q243 585 248 596T269 624T306 653T365 676T447 686H456Q472 686 484 683T514 671T543 637T562 576Q565 557 570 501L577 437Q577 436 613 457T694 506T756 551Q762 558 762 562",89:"73 555Q49 555 49 573Q49 602 110 644T239 686Q319 686 376 624Q416 584 444 511T483 361T499 240T503 173Q503 165 504 165Q506 165 524 184T556 218Q631 297 674 377T718 485Q718 505 699 526Q673 552 628 552Q619 552 613 562T607 590Q607 617 621 645T658 685Q661 686 671 686Q718 686 757 652T797 545Q797 476 749 369T602 146Q500 29 371 -67T176 -164Q112 -164 74 -120T36 -29Q36 5 55 36T95 67Q104 67 108 59T115 39T128 12T154 -12Q183 -30 216 -30Q239 -30 305 7L361 44L367 49V54Q367 95 364 143T351 273T312 429T243 546Q206 581 156 588L146 581Q108 555 73 555",90:"622 574Q522 579 420 579H396Q373 579 364 574T351 550Q339 516 297 490T218 462Q195 462 195 479Q195 487 197 492Q218 565 313 625T509 685Q564 685 650 683T755 680Q787 680 807 683T831 686Q853 686 853 669Q853 657 826 626Q742 532 641 437L619 415L622 414Q626 414 631 414T642 414Q697 411 697 388Q697 367 670 345T607 323Q605 323 592 325T546 329H522L490 302Q457 274 400 226T289 136L260 113L318 112Q345 111 452 109T587 106H627Q650 143 656 170Q666 197 710 225T788 253Q811 253 811 237Q811 211 781 160T710 77Q619 0 515 0Q507 0 497 0T484 1Q434 1 319 3T177 6Q123 6 95 2Q83 2 71 0H68Q46 0 46 17Q46 28 58 44Q68 56 100 80T210 165T383 307L408 329H361L314 330Q297 338 297 350Q297 368 320 388T368 413Q375 415 441 415H506L647 555L664 574H622"},{})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.texOldstyleBold=void 0,e.texOldstyleBold={48:[.46,.017,.575],49:[.461,0,.575],50:[.46,0,.575],51:[.461,.211,.575],52:[.469,.194,.575],53:[.461,.211,.575],54:[.66,.017,.575],55:[.476,.211,.575],56:[.661,.017,.575],57:[.461,.21,.575],65:[.751,.049,.921,{ic:.068,sk:.224}],66:[.705,.017,.748,{sk:.16}],67:[.703,.02,.613,{sk:.16}],68:[.686,0,.892,{sk:.0958}],69:[.703,.016,.607,{ic:.02,sk:.128}],70:[.686,.03,.814,{ic:.116,sk:.128}],71:[.703,.113,.682,{sk:.128}],72:[.686,.048,.987,{sk:.128}],73:[.686,0,.642,{ic:.104,sk:.0319}],74:[.686,.114,.779,{ic:.158,sk:.192}],75:[.703,.017,.871,{sk:.0639}],76:[.703,.017,.788,{sk:.16}],77:[.703,.049,1.378,{sk:.16}],78:[.84,.049,.937,{ic:.168,sk:.0958}],79:[.703,.017,.906,{sk:.128}],80:[.686,.067,.81,{ic:.036,sk:.0958}],81:[.703,.146,.939,{sk:.128}],82:[.686,.017,.99,{sk:.0958}],83:[.703,.016,.696,{ic:.025,sk:.16}],84:[.72,.069,.644,{ic:.303,sk:.0319}],85:[.686,.024,.715,{ic:.056,sk:.0958}],86:[.686,.077,.737,{ic:.037,sk:.0319}],87:[.686,.077,1.169,{ic:.037,sk:.0958}],88:[.686,0,.817,{ic:.089,sk:.16}],89:[.686,.164,.759,{ic:.038,sk:.0958}],90:[.686,0,.818,{ic:.035,sk:.16}]}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.texOldstyle=void 0;var r=Q(6),T=Q(258);e.texOldstyle=r.AddPaths(T.texOldstyle,{48:"39 213Q39 274 53 319T89 389T139 429T192 448T242 452Q347 452 400 400Q460 335 460 213Q460 -22 250 -22Q39 -22 39 213ZM364 242Q364 279 363 301T355 348T338 385T306 406T254 415Q250 415 245 415T238 416Q217 416 190 404T150 368Q136 339 136 221Q136 114 146 78T200 23Q219 16 250 16Q280 16 299 23Q341 41 352 77T364 221V242",49:"116 410Q176 412 215 423T269 443T288 453H291Q293 453 301 447V254Q301 62 303 60Q307 52 322 49T394 46Q418 46 422 43T426 23Q426 8 424 4T411 0Q407 0 369 1T258 2T148 1T106 0Q96 0 94 4T91 23Q91 40 95 43T123 46Q180 46 195 49T215 61Q216 63 216 220V376Q192 367 119 364H93L86 371V403L92 410H116",50:"55 334Q55 386 105 419T236 453Q333 453 390 413T448 307Q448 278 437 256T406 218T365 193T318 172T277 151L248 134Q219 118 191 102T163 84T267 83L382 85H391Q399 99 406 126Q410 143 413 145T429 148Q440 148 442 147T449 139Q449 137 435 73T420 7Q420 6 414 0H233Q94 0 71 0T46 5Q46 5 46 6Q44 8 44 24Q44 39 46 41Q47 44 98 78T212 155T294 212Q347 257 347 304Q347 354 306 380T203 407Q150 407 120 377Q118 375 123 373Q146 362 146 332Q146 315 133 302T101 288Q85 288 70 298T55 334",51:"69 312Q69 377 122 414T233 452Q333 452 381 409T430 313Q430 268 402 223T311 149L301 144Q307 143 317 140T355 123T402 92T439 44T456 -25Q456 -101 396 -158T241 -216Q154 -216 98 -173T42 -68Q42 -58 44 -50T50 -35T57 -25T66 -17T75 -13T82 -10L87 -8Q92 -7 102 -7Q132 -7 147 -25T162 -66Q162 -112 118 -125L113 -126Q113 -129 127 -140T173 -162T239 -173Q268 -173 292 -158Q345 -124 345 -24Q345 33 329 67Q298 125 229 125H210H172Q166 131 166 142Q166 159 172 161Q178 161 208 164T244 169Q251 169 263 176T291 199T316 245T327 314Q327 413 238 413Q182 413 130 369Q177 350 181 312Q181 289 166 273T125 257Q102 257 86 272T69 312",52:"163 0Q139 0 109 0T71 -1Q43 -1 36 2T28 15V27V46L190 270Q325 457 330 462Q333 464 352 464H371L377 458V46H464L471 40V6L464 0H377V-65V-108Q377 -131 379 -137T391 -144Q409 -148 446 -148H464Q468 -151 471 -155V-187L464 -194H453Q395 -192 325 -192Q222 -192 210 -194H199L193 -188V-154L199 -148H228Q241 -148 250 -148T265 -146T275 -145T281 -143T284 -141T286 -138T289 -134V0H163ZM295 46V350L75 46H295",53:"159 -44Q159 -66 145 -80T109 -96H102L107 -105Q148 -173 228 -173Q255 -173 280 -162Q351 -128 351 -6V8Q351 67 344 98T316 151Q288 176 255 176Q175 176 136 109Q129 100 114 100Q97 100 95 106Q93 110 93 277V403Q93 451 98 451Q100 452 103 452Q105 452 124 445T177 431T251 423Q294 423 328 430T380 445T401 453Q410 453 410 435V422Q332 331 203 331Q152 331 140 339Q139 339 139 254V168Q194 214 256 214Q332 214 390 154T448 0Q448 -95 381 -155T229 -216Q153 -216 104 -166T50 -49Q50 -15 66 -1T105 13Q128 13 143 -3T159 -44",54:"42 313Q42 401 68 472T133 583T215 644T296 665H304Q317 665 329 664T360 657T393 640T418 608T432 557Q432 533 422 519T401 502T380 498Q358 498 343 512T328 550Q328 591 367 601L372 602Q372 604 365 609T341 620T307 626Q260 626 226 600T174 537Q147 483 143 376V356Q192 434 266 434Q317 434 357 409Q406 375 435 317Q456 268 456 210V192Q456 169 451 149Q440 90 387 34T253 -22Q225 -22 199 -14T143 16T92 75T56 172T42 313ZM251 396Q211 396 178 354T145 217Q145 159 152 122T166 73T187 47Q216 21 252 21Q294 21 321 47Q342 68 349 99T356 203V232Q356 264 354 285T345 331T322 373T280 395Q274 396 251 396",55:"75 246Q64 246 62 247T55 255Q55 259 72 357T90 458L94 462H99Q104 463 109 463H121Q128 460 128 452Q128 445 134 441T165 435T233 432T356 431H478L485 425V392L414 298Q408 290 385 260T358 223T337 191T317 154T302 116T289 68T282 14T275 -55T274 -137Q274 -173 272 -177Q262 -216 223 -216Q170 -216 170 -157V-148Q172 -78 189 -12T237 109T288 196T338 266Q345 275 348 279Q395 340 395 342Q396 343 376 343T274 343Q122 342 117 339T103 294T90 248Q88 246 75 246",56:"69 496Q69 570 124 618T247 666Q321 666 375 624T429 515Q429 468 405 433T320 361L346 344Q385 320 403 301T439 250Q456 212 456 181V172V160Q456 141 449 119T426 71T386 26T326 -8T246 -21Q160 -21 102 30T43 155Q43 265 167 332L176 337L161 347Q105 384 87 423Q69 458 69 496ZM371 513Q371 567 334 596T249 626Q198 626 163 598T127 532Q127 521 129 511T138 492T150 476T167 460T185 447T207 433T228 420L284 384L294 391Q346 424 363 469Q371 486 371 513ZM190 21T250 21T351 56T393 140Q393 180 362 213Q354 221 317 246T246 292L212 313Q210 313 200 307T173 287T142 256T117 212T106 157Q106 100 148 61",57:"171 -101Q171 -118 163 -130T146 -146T134 -151Q132 -151 132 -152Q132 -154 140 -159T167 -168T206 -173Q274 -173 317 -108Q356 -50 356 79V86L350 77Q308 9 231 9Q150 9 92 81Q42 141 42 228Q42 289 64 333Q93 390 142 421T235 452Q237 452 244 452T255 453Q289 453 321 439T386 391T437 290T457 128Q457 -29 381 -122T206 -216Q148 -216 108 -187T67 -104Q67 -75 84 -62T119 -49Q141 -49 156 -63T171 -101ZM242 46Q293 46 324 94T355 223Q355 323 337 356Q316 401 275 410Q267 412 248 412Q206 412 179 386Q155 360 149 328T143 224Q143 120 163 88Q192 46 242 46",65:"576 668Q576 688 606 708T660 728Q676 728 675 712V571Q675 409 688 252Q696 122 720 57Q722 53 723 50T728 46T732 43T737 41T743 39L754 45Q788 61 803 61Q819 61 819 47Q818 43 814 35Q799 15 755 -7T675 -30Q659 -30 648 -25T630 -8T621 11T614 34Q603 77 599 106T594 146T591 160V163H460L329 164L316 145Q241 35 196 -7T119 -50T59 -24T30 43Q30 75 46 100T74 125Q81 125 83 120T88 104T96 84Q118 57 151 57Q189 57 277 182Q432 400 542 625L559 659H567Q574 659 575 660T576 668ZM584 249Q579 333 577 386T575 473T574 520V581L563 560Q497 426 412 290L372 228L370 224H371L383 228L393 232H586L584 249",66:"304 342Q292 342 292 353Q292 372 323 391Q331 396 417 428T533 487Q563 512 563 555V562Q563 575 557 589T530 618T475 636Q429 636 396 613T330 539Q263 446 210 238Q196 183 173 120Q135 31 121 16Q108 1 85 -10T47 -22T32 -10Q32 -5 44 18T77 93T112 206Q135 296 154 395T182 550T191 615Q191 616 190 616Q188 616 179 611T157 601T131 594Q113 594 113 605Q113 623 144 644Q154 650 205 676T267 703Q277 705 279 705Q295 705 295 693Q295 686 288 635T278 575Q278 572 287 582Q336 635 402 669T540 704Q603 704 633 673T664 599Q664 559 638 523T580 462Q553 440 504 413L491 407L504 402Q566 381 596 338T627 244Q627 172 575 110T444 13T284 -22Q208 -22 158 28Q144 42 146 50Q150 67 178 85T230 103Q236 103 246 95T267 75T302 56T357 47Q436 47 486 93Q526 136 526 198V210Q526 228 518 249T491 292T436 330T350 345Q335 345 321 344T304 342",67:"201 -25Q167 -25 136 -14T75 23T29 94T12 202Q12 290 50 394T161 574Q227 642 303 673T433 704Q435 705 457 705Q533 701 533 640Q533 606 507 548T464 474Q431 444 396 444Q381 444 381 453Q381 459 388 473T407 513T428 563Q433 580 433 594Q433 636 381 636Q314 636 260 594T175 489T128 363T112 247Q112 157 153 101T273 44Q347 44 398 121Q413 144 437 157T481 171Q496 171 496 160Q496 150 476 123Q426 56 350 16T201 -25",68:"37 475Q19 475 19 487Q19 536 103 604T327 682H356Q386 683 408 683H419Q475 683 506 681T582 668T667 633Q766 571 766 450Q766 365 723 287T611 152T455 57T279 6Q248 1 160 0Q148 0 131 0T108 -1Q72 -1 72 11Q72 24 90 40T133 64L144 68L152 88Q247 328 272 587Q275 613 272 613Q272 613 269 613Q225 610 195 602T149 579T129 556T119 532Q118 530 116 525T113 518Q102 502 80 490T37 475ZM665 407Q665 596 412 613Q403 614 383 614Q370 614 370 612Q370 598 363 542T323 357T242 103L228 69H265Q391 73 481 119Q536 148 575 188T633 268T658 338T665 392V407",69:"144 470Q144 556 240 630T451 705Q564 705 564 637Q564 611 540 573Q529 559 505 547T464 534Q448 534 448 545Q448 552 455 562Q463 577 463 591Q463 600 462 604T456 616T436 627T400 635Q396 635 390 635T380 636Q291 636 258 568Q245 544 245 516Q245 463 290 438T391 410Q415 410 415 398Q415 392 407 380T376 356T326 341Q288 340 260 327Q218 311 187 276T143 208T130 151Q130 113 156 88T211 55T268 47Q349 47 403 125Q415 144 439 157T483 171Q499 171 499 160Q499 148 475 120T413 59T315 3T197 -22Q124 -22 77 14T30 105Q30 126 39 154T66 216T122 288T209 354L223 362Q144 400 144 470",70:"199 579Q181 579 181 590Q181 598 188 611T212 639T260 666T335 682Q336 682 349 682T383 682T431 682T493 683T561 683Q776 682 784 681Q826 673 829 647Q829 620 797 600T744 580Q728 580 728 595Q729 607 713 610Q698 613 598 614H500L499 610Q499 598 467 486T428 367Q428 365 551 365H674Q683 360 684 355Q687 346 677 329Q666 312 642 299T598 285Q586 285 582 296H402L394 277Q386 258 373 229T346 167T315 102T286 51Q265 22 225 -5T133 -32Q108 -32 87 -25T54 -7T33 15T21 35T18 47Q18 60 44 80T98 103Q108 103 111 101T119 88Q130 66 150 54T179 39T195 37Q199 37 203 43Q217 67 245 125T318 300T391 532Q393 543 398 564T406 598T409 613T339 614H269Q229 579 199 579",71:"216 68Q155 68 115 100T59 177T44 273Q44 299 50 333T73 421T133 533T239 632Q346 704 466 704Q508 704 515 703Q555 696 577 681T599 635Q599 605 570 560T523 496Q490 466 455 466Q440 466 440 475T469 526T499 589Q499 605 489 617Q460 636 403 636Q343 636 295 611T220 548T174 464T150 382T144 318Q144 241 180 189T287 137Q325 137 359 160Q428 205 466 322Q472 342 501 359T551 376Q557 376 560 373T564 368L565 365Q560 341 551 302T512 173T451 31Q359 -119 204 -119Q163 -118 127 -109T74 -91T53 -77Q52 -75 52 -71Q52 -54 79 -35T132 -14H140L151 -19Q210 -49 281 -49H289Q312 -49 329 -31Q351 -7 372 36T405 109T416 142L408 136Q401 131 392 125T369 111T338 96T303 82T261 72T216 68",72:"18 487Q18 496 29 517T67 566T127 621T216 665T330 683Q359 683 376 669T397 643T400 622Q400 584 382 488T348 343Q348 342 467 342H587L594 366Q615 440 648 534T690 641Q701 656 723 669T764 683Q783 683 783 672L750 578Q716 485 677 346T625 101Q624 92 623 82T622 65T621 56Q621 20 658 20Q666 20 701 25Q709 52 736 69T785 87Q803 87 803 75T791 44T754 3T685 -33T588 -48Q568 -48 562 -46Q522 -31 522 13V23Q531 129 562 250L569 281L565 280Q561 278 556 277T549 274L438 273H328L321 249Q307 202 275 107T232 0Q219 -16 196 -28T155 -41Q149 -41 145 -39T140 -34T139 -29Q139 -24 148 -3T181 86T233 247Q240 270 240 272Q240 273 194 273H169Q139 273 139 285Q139 295 153 308T187 332Q206 341 236 342L260 343L264 359Q278 414 289 482T300 578Q300 613 260 613H254Q198 613 169 592Q148 578 127 544T104 508Q72 478 37 475Q18 475 18 487",73:"174 0H31Q-13 0 -21 2T-30 12Q-30 23 -17 36Q9 60 42 68L155 70Q187 102 214 179T257 333T302 491T366 610L369 614H305Q221 611 188 607T145 596T128 569Q119 543 94 529T47 512Q28 512 28 524Q28 527 32 539Q56 614 159 654Q218 678 312 682Q314 682 339 682T404 682T481 683H632Q642 678 642 671Q642 657 621 641T577 617Q570 615 507 614H444Q427 592 406 542Q382 478 355 366T310 209Q280 123 238 78L230 69H330Q442 70 442 74Q443 74 443 77T447 87T460 105Q490 134 527 137Q545 137 545 125Q545 120 542 112Q531 78 491 49T399 7Q379 2 360 2T174 0",74:"148 78Q148 16 189 -17T286 -50Q319 -50 348 -33T396 10T426 59T444 101L471 204Q498 306 521 372Q575 532 649 605L659 614H591Q517 613 494 607Q433 591 400 550T360 477Q353 454 325 437T275 419Q256 419 260 435Q280 523 376 597T583 681Q603 683 713 683H830Q839 674 839 671Q839 654 810 634T754 614Q735 614 721 601Q688 571 654 495T600 351T561 209T541 132Q507 29 412 -45T213 -119Q141 -119 94 -77T47 33Q47 55 50 69T58 90T71 103Q105 131 135 131Q152 131 152 120Q152 119 151 114T149 99T148 78",75:"194 618Q193 618 182 613T156 601T131 594Q113 594 113 605Q113 623 144 644Q154 650 205 676T267 703Q277 705 279 705Q295 705 295 691Q295 569 250 397Q225 306 197 217T151 81T128 25Q120 8 94 -7T47 -22Q32 -22 32 -10L64 76Q95 163 133 295T185 530Q198 611 194 618ZM331 429Q331 383 364 290T449 117T542 36Q574 36 607 51T652 103Q660 124 677 133T709 143Q727 143 727 128Q727 119 723 111Q704 56 639 17T497 -22H493Q463 -22 425 16Q401 40 382 71Q335 138 296 243T256 399Q256 434 288 473Q342 540 471 622T670 705Q691 704 703 696Q732 678 732 644Q732 613 714 600T677 586Q671 586 667 587T660 592T657 604V619Q657 647 629 647Q623 647 620 646Q576 635 495 583T365 482Q331 448 331 429",76:"62 -22T47 -22T32 -11Q32 -1 56 24T83 55Q113 96 138 172T180 320T234 473T323 609Q364 649 419 677T531 705Q559 705 578 696T604 671T615 645T618 623V611Q618 582 615 571T598 548Q581 531 558 520T518 509Q503 509 503 520Q503 523 505 536T507 560Q507 590 494 610T452 630Q423 630 410 617Q367 578 333 492T271 301T233 170Q211 123 204 112L198 103L224 102Q281 102 369 79T509 52H523Q535 64 544 87T579 128Q616 152 641 152Q656 152 656 142Q656 101 588 40T433 -22Q381 -22 289 1T156 28L141 29L131 20Q111 0 87 -11",77:"28 9Q28 37 43 63T73 90Q77 90 83 84T103 70T141 57H146Q162 57 178 79T222 167Q266 279 295 371T334 513T349 598T358 651T371 677Q397 705 432 705Q442 705 445 699T452 666Q453 661 453 659Q475 538 509 405T568 207L574 192Q581 178 587 164T594 150Q596 150 635 189T693 248Q765 324 863 438T1024 626T1089 701Q1093 705 1100 705Q1111 705 1111 682Q1111 675 1108 660T1099 611T1086 540Q1041 277 1041 144Q1041 98 1044 75T1050 48T1059 42Q1064 41 1075 46Q1102 61 1121 61Q1137 61 1137 50Q1137 28 1087 0T1000 -29Q983 -29 972 -23T955 -9T945 16T942 45T941 83V96Q941 158 952 256T974 422L985 489Q984 489 939 436T821 300T698 164Q665 128 620 85T568 37Q564 34 558 34Q550 34 546 37T535 54Q512 91 496 127T450 259T389 498L384 518Q349 367 294 223T198 15Q155 -50 117 -50Q87 -50 61 -35T30 -6Q28 2 28 9",78:"343 705Q358 705 358 698Q360 696 370 658T411 524T484 319Q536 174 590 82L595 73L615 152Q646 274 683 407Q729 571 752 637T799 727Q852 780 937 788Q939 788 947 788T958 789H962Q979 789 979 765Q979 722 951 692Q942 683 924 683Q888 681 859 672T818 654T803 639Q784 608 708 322T631 15Q631 14 630 15Q630 17 629 15Q628 14 628 12Q621 -4 601 -17T560 -31Q550 -31 546 -28T530 -7Q484 67 458 123T398 272Q352 392 314 514L306 535V534Q306 533 296 488T272 379T234 239T185 100T127 -7T61 -50Q34 -50 4 -34T-27 8Q-27 33 -12 61T18 90Q21 90 36 77T87 57H92Q109 57 123 78T162 173Q206 299 232 417T265 599T276 667Q284 681 304 693T343 705",79:"308 428Q289 428 289 438Q289 457 318 508T378 593Q417 638 475 671T599 705Q688 705 732 643T777 483Q777 380 733 285T620 123T464 18T293 -22Q188 -22 123 51T58 245Q58 327 87 403T159 533T249 626T333 685T388 705Q404 705 404 693Q404 674 363 649Q333 632 304 606T239 537T181 429T158 290Q158 179 214 114T364 48Q489 48 583 165T677 438Q677 473 670 505T648 568T601 617T528 636Q518 636 513 635Q486 629 460 600T419 544T392 490Q383 470 372 459Q341 430 308 428",80:"37 475Q19 475 19 487Q19 536 103 604T327 682Q329 682 344 682T380 682T421 683H463Q625 683 695 615Q718 591 726 564Q733 547 733 525Q733 412 607 312T321 205H312Q293 205 293 217Q293 224 302 236T333 260T385 274Q558 287 614 407Q633 445 633 477Q633 515 612 543T556 585T481 607T399 614H370L368 603Q352 463 312 312T242 82T202 -13Q190 -33 164 -45T121 -57Q108 -57 108 -45Q108 -40 120 -10T151 73T192 190T233 349T266 539Q267 546 269 565T272 598T274 613H270Q209 613 163 588Q131 572 113 518Q102 502 80 490T37 475",81:"114 286Q114 358 151 433T249 569T392 667T558 705Q653 705 713 641T774 460Q774 389 750 322T687 206T600 114T504 46T412 4L399 -2Q542 -62 636 -62Q660 -62 670 -54T686 -27T700 0Q734 34 770 34Q787 34 787 23Q787 -18 720 -74T563 -131Q485 -131 350 -83T145 -34Q127 -34 127 -22Q127 -12 144 5T190 31L200 34L237 35Q386 38 467 79Q550 120 612 210T675 416Q675 510 625 573T484 636Q410 636 346 587T248 469T214 333Q214 306 221 281T243 229T288 188T360 172Q403 172 441 188T490 205Q510 205 510 192Q505 162 432 132T287 102Q206 102 160 155T114 286",82:"37 475Q19 475 19 487Q19 503 35 530T83 589T180 647T327 682H374Q387 682 417 682T464 683Q519 683 559 679T642 663T708 625T731 557Q731 481 668 411T504 300Q506 296 512 286T528 257T553 202Q594 105 611 82Q635 47 665 47Q708 47 742 93Q758 113 786 128Q804 136 819 137Q837 137 837 125Q837 115 818 92T767 43T687 -2T589 -22Q549 -22 517 22T467 120T422 221T362 273Q346 273 346 287Q348 301 373 320T436 342Q437 342 446 343T462 345T481 348T504 353T527 362T553 375T577 393Q598 412 614 443T630 511Q630 545 613 566T541 600T393 614Q370 614 370 613L366 584Q349 446 311 307T243 96L213 25Q205 8 179 -7T132 -22Q125 -22 120 -18T117 -8Q117 -5 130 26T163 113T205 239T246 408T274 606V614Q273 614 259 613T231 609T198 602T163 588Q131 572 113 518Q102 502 80 490T37 475",83:"554 512Q536 512 536 522Q536 525 539 539T542 564Q542 588 528 604Q515 616 482 625T410 635Q374 635 349 624T312 594T295 561T290 532Q290 505 303 482T342 442T378 419T409 404Q435 391 451 383T494 357T535 323T562 282T574 231Q574 133 464 56T220 -22Q138 -22 78 21T18 123Q18 184 61 227T156 274Q178 274 178 263Q178 260 177 258Q172 247 164 239T151 227T136 218L127 213L124 202Q118 186 118 163Q120 124 165 86T292 48Q374 48 423 86T473 186V193Q473 267 347 327Q268 364 239 389Q191 431 191 486Q191 547 242 600T356 679T470 705Q472 705 478 705T489 704Q551 704 596 682T642 610Q642 566 621 545Q592 516 554 512",84:"49 475Q34 475 34 490Q34 552 106 611T261 681Q272 683 507 683H742Q790 717 816 717Q833 717 833 708Q833 682 795 653T714 615Q691 610 588 609Q490 609 490 607L483 580Q476 554 462 496T435 392Q410 289 395 231T363 116T335 34T309 -15T279 -47T242 -64Q231 -68 218 -68Q203 -68 203 -57Q203 -52 211 -38Q224 -7 234 20T251 66T268 123T283 179T304 261T328 360Q342 415 360 488Q380 567 384 582T397 605Q400 607 401 609H302H244Q200 609 188 607T167 596Q145 572 145 541Q145 520 109 498T49 475",85:"8 592Q8 616 70 649T193 683Q246 683 246 631Q246 587 205 492T124 297T83 143Q83 101 100 75T154 48Q202 48 287 135T450 342T560 553Q589 635 593 640Q603 656 626 668T669 683H670Q687 683 687 672T670 616T617 463T547 220Q525 137 521 68Q521 54 522 50T533 42L543 47Q573 61 588 61Q604 61 604 47Q599 16 506 -22Q486 -28 468 -28T436 -18T421 18Q421 92 468 258Q468 259 467 257T459 248Q426 206 391 167T303 81T194 6T83 -22Q66 -22 58 -20Q25 -11 4 19T-17 99Q-17 146 8 220T64 358T120 488T146 586Q146 604 141 608T123 613H120Q99 613 72 597T25 580Q8 580 8 592",86:"25 633Q25 647 47 665T100 683Q291 683 291 306Q291 264 288 213T282 132L279 102Q281 102 308 126T378 191T464 279T545 381T596 479Q600 490 600 502Q600 527 581 550T523 577Q505 577 505 601Q505 622 516 647T542 681Q546 683 558 683Q605 679 631 645T658 559Q658 423 487 215Q409 126 308 37T190 -52Q177 -52 177 -28Q177 -26 183 15T196 127T203 270Q203 356 192 421T165 523T126 583T83 613T41 620Q25 620 25 633",87:"25 633Q25 647 46 665T103 683Q168 683 207 632Q228 608 243 568Q269 485 269 374Q269 324 265 271T256 184L251 150L252 152Q254 153 257 157T264 167T274 180T286 197Q359 293 424 398T519 558T549 616Q549 618 547 624T545 638Q550 654 572 668T615 683Q626 683 632 672T657 595Q726 370 741 128L742 110Q752 122 767 142T823 217T894 321T950 424T976 511Q976 544 958 560T918 577Q906 577 906 602Q906 629 918 651T942 681Q948 683 954 683Q983 683 1008 658T1034 569T999 421T915 257T813 109T724 -3T681 -49Q666 -59 660 -45Q659 -41 657 35T639 233T591 477Q573 551 570 551Q569 551 554 523T507 439T433 315T323 155T182 -25Q160 -52 151 -53Q137 -53 137 -30Q137 -29 148 25T170 168T181 338Q181 424 168 483T131 571T87 609T40 620Q25 620 25 633",88:"324 614Q291 576 250 573Q231 573 231 584Q231 589 232 592Q235 601 244 614T271 643T324 671T400 683H403Q462 683 481 610Q485 594 490 545T498 454L501 413Q504 413 551 442T648 509T705 561Q707 565 707 578Q707 610 682 614Q667 614 667 626Q667 641 695 662T755 683Q765 683 775 680T796 662T807 623Q807 596 792 572T713 499T530 376L505 361V356Q508 346 511 278T524 148T557 75Q569 69 580 69Q585 69 593 77Q624 108 660 110Q667 110 670 110T676 106T678 94Q668 59 624 30T510 0Q487 0 471 9T445 32T430 71T422 117T417 173Q416 183 416 188Q413 214 411 244T407 286T405 299Q403 299 344 263T223 182T154 122Q152 118 152 105Q152 69 180 69Q183 69 187 66T191 60L192 58V56Q192 41 163 21T105 0Q94 0 84 3T63 21T52 60Q52 77 56 90T85 131T155 191Q197 223 259 263T362 327T402 352L391 489Q391 492 390 505T387 526T384 547T379 568T372 586T361 602T348 611Q346 612 341 613T333 614H324",89:"65 599Q65 618 107 650T204 683Q267 683 312 643T380 533T414 385T424 217Q424 186 423 160T422 123Q426 123 468 170T567 304T650 469Q661 503 661 519Q661 546 639 570Q615 591 583 591Q569 591 569 616Q569 640 582 661T613 683Q624 683 638 679T671 664T702 625T714 558Q714 472 639 329T426 45Q361 -21 282 -82T154 -143Q97 -143 64 -104T31 -20Q31 4 44 25T70 46Q78 46 81 39T87 16T97 -9Q127 -51 182 -51Q184 -51 187 -50H190Q233 -41 314 25Q330 36 330 40Q336 79 336 178Q336 508 223 594Q199 614 158 619L148 620L139 611Q111 586 83 586Q65 586 65 599",90:"694 220Q708 220 708 210Q708 195 695 167T658 105T593 42T502 3Q492 1 458 1Q400 1 293 11T150 22Q116 22 92 11T51 0Q37 0 37 10Q37 21 63 44T179 146T367 319L391 343H343L296 344Q285 350 285 358Q285 365 289 372T300 383T313 392T324 398L329 400H450L561 518Q597 558 607 571L621 587H596Q553 589 484 599T383 609Q342 609 326 596T301 555Q294 533 263 514T208 492Q189 492 189 503Q189 510 197 528T215 559Q249 607 318 645T466 683Q504 683 573 673T669 662L690 661Q734 682 748 683Q767 683 767 673Q767 666 746 640Q655 531 555 428L529 400Q529 399 543 399Q604 397 604 366Q604 350 587 337T551 322Q541 322 539 323Q529 328 529 334Q529 339 487 342L470 343L446 320Q272 153 200 96L235 95Q297 95 392 86T533 74H554Q586 116 597 159Q604 179 635 199T694 220"},{})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.texOldstyle=void 0,e.texOldstyle={48:[.452,.022,.5],49:[.453,0,.5],50:[.453,0,.5],51:[.452,.216,.5],52:[.464,.194,.5],53:[.453,.216,.5],54:[.665,.022,.5],55:[.463,.216,.5],56:[.666,.021,.5],57:[.453,.216,.5],65:[.728,.05,.798,{ic:.021,sk:.194}],66:[.705,.022,.657,{sk:.139}],67:[.705,.025,.527,{sk:.139}],68:[.683,0,.771,{sk:.0833}],69:[.705,.022,.528,{ic:.036,sk:.111}],70:[.683,.032,.719,{ic:.11,sk:.111}],71:[.704,.119,.595,{sk:.111}],72:[.683,.048,.845,{sk:.111}],73:[.683,0,.545,{ic:.097,sk:.0278}],74:[.683,.119,.678,{ic:.161,sk:.167}],75:[.705,.022,.762,{sk:.0556}],76:[.705,.022,.69,{sk:.139}],77:[.705,.05,1.201,{sk:.139}],78:[.789,.05,.82,{ic:.159,sk:.0833}],79:[.705,.022,.796,{sk:.111}],80:[.683,.057,.696,{ic:.037,sk:.0833}],81:[.705,.131,.817,{sk:.111}],82:[.682,.022,.848,{sk:.0833}],83:[.705,.022,.606,{ic:.036,sk:.139}],84:[.717,.068,.545,{ic:.288,sk:.0278}],85:[.683,.028,.626,{ic:.061,sk:.0833}],86:[.683,.052,.613,{ic:.045,sk:.0278}],87:[.683,.053,.988,{ic:.046,sk:.0833}],88:[.683,0,.713,{ic:.094,sk:.139}],89:[.683,.143,.668,{ic:.046,sk:.0833}],90:[.683,0,.725,{ic:.042,sk:.139}]}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.texSize3=void 0;var r=Q(6),T=Q(260);e.texSize3=r.AddPaths(T.texSize3,{40:"701 -940Q701 -943 695 -949H664Q662 -947 636 -922T591 -879T537 -818T475 -737T412 -636T350 -511T295 -362T250 -186T221 17T209 251Q209 962 573 1361Q596 1386 616 1405T649 1437T664 1450H695Q701 1444 701 1441Q701 1436 681 1415T629 1356T557 1261T476 1118T400 927T340 675T308 359Q306 321 306 250Q306 -139 400 -430T690 -924Q701 -936 701 -940",41:"34 1438Q34 1446 37 1448T50 1450H56H71Q73 1448 99 1423T144 1380T198 1319T260 1238T323 1137T385 1013T440 864T485 688T514 485T526 251Q526 134 519 53Q472 -519 162 -860Q139 -885 119 -904T86 -936T71 -949H56Q43 -949 39 -947T34 -937Q88 -883 140 -813Q428 -430 428 251Q428 453 402 628T338 922T245 1146T145 1309T46 1425Q44 1427 42 1429T39 1433T36 1436L34 1438",47:"81 -949Q71 -949 63 -941T55 -921Q55 -917 56 -915Q59 -906 498 264T939 1438Q945 1450 960 1450Q972 1450 980 1441T988 1421Q982 1403 839 1020L398 -155Q107 -934 103 -938Q96 -949 81 -949",91:"247 -949V1450H516V1388H309V-887H516V-949H247",92:"988 -922Q988 -933 980 -941T962 -949Q947 -949 940 -938Q936 -934 645 -155L204 1020Q56 1416 56 1424Q56 1433 62 1441T84 1450Q97 1448 103 1439Q107 1435 398 656L839 -519Q988 -918 988 -922",93:"11 1388V1450H280V-949H11V-887H218V1388H11",123:"618 -943L612 -949H582L568 -943Q472 -903 411 -841T332 -703Q327 -682 327 -653T325 -350Q324 -28 323 -18Q317 24 301 61T264 124T221 171T179 205T147 225T132 234Q130 238 130 250Q130 255 130 258T131 264T132 267T134 269T139 272T144 275Q207 308 256 367Q310 436 323 519Q324 529 325 851Q326 1124 326 1154T332 1205Q369 1358 566 1443L582 1450H612L618 1444V1429Q618 1413 616 1411L608 1406Q599 1402 585 1393T552 1372T515 1343T479 1305T449 1257T429 1200Q425 1180 425 1152T423 851Q422 579 422 549T416 498Q407 459 388 424T346 364T297 318T250 284T214 264T197 254L188 251L205 242Q290 200 345 138T416 3Q421 -18 421 -48T423 -349Q423 -397 423 -472Q424 -677 428 -694Q429 -697 429 -699Q434 -722 443 -743T465 -782T491 -816T519 -845T548 -868T574 -886T595 -899T610 -908L616 -910Q618 -912 618 -928V-943",125:"131 1414T131 1429T133 1447T148 1450H153H167L182 1444Q276 1404 336 1343T415 1207Q421 1184 421 1154T423 851L424 531L426 517Q434 462 460 415T518 339T571 296T608 274Q615 270 616 267T618 251Q618 241 618 238T615 232T608 227Q542 194 491 132T426 -15L424 -29L423 -350Q422 -622 422 -652T415 -706Q397 -780 337 -841T182 -943L167 -949H153Q137 -949 134 -946T131 -928Q131 -914 132 -911T144 -904Q146 -903 148 -902Q299 -820 323 -680Q324 -663 325 -349T327 -19Q355 145 541 241L561 250L541 260Q356 355 327 520Q326 537 325 850T323 1181Q315 1227 293 1267T244 1332T193 1374T151 1401T132 1413Q131 1414 131 1429",710:"1439 564Q1434 564 1080 631T722 698Q719 698 362 631Q7 564 4 564L0 583Q-4 602 -4 603L720 772L1083 688Q1446 603 1447 603Q1447 602 1443 583L1439 564",732:"1 643Q1 646 76 671T271 722T476 749Q555 749 626 736T742 706T856 676T999 662Q1088 662 1192 684T1363 727T1432 749Q1432 745 1437 731T1442 716Q1442 714 1381 693T1212 645T1012 611Q1000 610 955 610Q851 610 701 653T444 697Q355 697 251 676T80 632T11 610Q11 614 6 628T1 643",770:"-5 564Q-9 564 -363 631T-722 698Q-725 698 -1082 631Q-1437 564 -1440 564L-1444 583Q-1448 602 -1448 603L-724 772L-361 688Q2 603 3 603Q3 602 -1 583L-5 564",771:"-1443 643Q-1443 646 -1368 671T-1173 722T-968 749Q-889 749 -818 736T-702 706T-588 676T-445 662Q-356 662 -252 684T-81 727T-12 749Q-12 745 -7 731T-2 716Q-2 714 -63 693T-232 645T-432 611Q-444 610 -489 610Q-593 610 -743 653T-1000 697Q-1089 697 -1193 676T-1364 632T-1433 610Q-1433 614 -1438 628T-1443 643",8260:"81 -949Q71 -949 63 -941T55 -921Q55 -917 56 -915Q59 -906 498 264T939 1438Q945 1450 960 1450Q972 1450 980 1441T988 1421Q982 1403 839 1020L398 -155Q107 -934 103 -938Q96 -949 81 -949",8730:"424 -948Q422 -947 313 -434T202 80L170 31Q165 24 157 10Q137 -21 137 -21Q131 -16 124 -8L111 5L264 248L473 -720Q473 -717 727 359T983 1440Q989 1450 1001 1450Q1007 1450 1013 1445T1020 1433Q1020 1425 742 244T460 -941Q458 -950 439 -950H436Q424 -950 424 -948",8968:"246 -949V1450H571V1388H308V-949H246",8969:"11 1388V1450H336V-949H274V1388H11",8970:"246 -949V1450H308V-887H571V-949H246",8971:"274 -887V1450H336V-949H11V-887H274",9001:"126 242V259L361 845Q595 1431 597 1435Q610 1450 624 1450Q634 1450 644 1443T654 1419V1411L422 831Q190 253 190 250T422 -331L654 -910V-919Q654 -936 644 -943T624 -950Q612 -950 597 -935Q595 -931 361 -345L126 242",9002:"94 1424Q94 1426 97 1432T107 1444T124 1450Q141 1450 152 1435Q154 1431 388 845L623 259V242L388 -345Q153 -933 152 -934Q142 -949 127 -949H125Q95 -949 95 -919V-910L327 -331Q559 247 559 250T327 831Q94 1411 94 1424",10216:"126 242V259L361 845Q595 1431 597 1435Q610 1450 624 1450Q634 1450 644 1443T654 1419V1411L422 831Q190 253 190 250T422 -331L654 -910V-919Q654 -936 644 -943T624 -950Q612 -950 597 -935Q595 -931 361 -345L126 242",10217:"94 1424Q94 1426 97 1432T107 1444T124 1450Q141 1450 152 1435Q154 1431 388 845L623 259V242L388 -345Q153 -933 152 -934Q142 -949 127 -949H125Q95 -949 95 -919V-910L327 -331Q559 247 559 250T327 831Q94 1411 94 1424",12296:"126 242V259L361 845Q595 1431 597 1435Q610 1450 624 1450Q634 1450 644 1443T654 1419V1411L422 831Q190 253 190 250T422 -331L654 -910V-919Q654 -936 644 -943T624 -950Q612 -950 597 -935Q595 -931 361 -345L126 242",12297:"94 1424Q94 1426 97 1432T107 1444T124 1450Q141 1450 152 1435Q154 1431 388 845L623 259V242L388 -345Q153 -933 152 -934Q142 -949 127 -949H125Q95 -949 95 -919V-910L327 -331Q559 247 559 250T327 831Q94 1411 94 1424"},{})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.texSize3=void 0,e.texSize3={40:[1.45,.949,.736],41:[1.45,.949,.736],47:[1.45,.949,1.044],91:[1.45,.949,.528],92:[1.45,.949,1.044],93:[1.45,.949,.528],123:[1.45,.949,.75],125:[1.45,.949,.75],710:[.772,-.564,1.444],732:[.749,-.61,1.444],770:[.772,-.564,0],771:[.749,-.61,0],8260:[1.45,.949,1.044],8730:[1.45,.95,1,{ic:.02}],8968:[1.45,.949,.583],8969:[1.45,.949,.583],8970:[1.45,.949,.583],8971:[1.45,.949,.583],9001:[1.45,.95,.75],9002:[1.45,.949,.75],10216:[1.45,.95,.75],10217:[1.45,.949,.75],12296:[1.45,.95,.75],12297:[1.45,.949,.75]}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.texSize4=void 0;var r=Q(6),T=Q(262);e.texSize4=r.AddPaths(T.texSize4,{40:"758 -1237T758 -1240T752 -1249H736Q718 -1249 717 -1248Q711 -1245 672 -1199Q237 -706 237 251T672 1700Q697 1730 716 1749Q718 1750 735 1750H752Q758 1744 758 1741Q758 1737 740 1713T689 1644T619 1537T540 1380T463 1176Q348 802 348 251Q348 -242 441 -599T744 -1218Q758 -1237 758 -1240",41:"33 1741Q33 1750 51 1750H60H65Q73 1750 81 1743T119 1700Q554 1207 554 251Q554 -707 119 -1199Q76 -1250 66 -1250Q65 -1250 62 -1250T56 -1249Q55 -1249 53 -1249T49 -1250Q33 -1250 33 -1239Q33 -1236 50 -1214T98 -1150T163 -1052T238 -910T311 -727Q443 -335 443 251Q443 402 436 532T405 831T339 1142T224 1438T50 1716Q33 1737 33 1741",47:"1166 1738Q1176 1750 1189 1750T1211 1742T1221 1721Q1221 1720 1221 1718T1220 1715Q1219 1708 666 238T111 -1237Q102 -1249 86 -1249Q74 -1249 65 -1240T56 -1220Q56 -1219 56 -1217T57 -1214Q58 -1207 611 263T1166 1738",91:"269 -1249V1750H577V1677H342V-1176H577V-1249H269",92:"56 1720Q56 1732 64 1741T85 1750Q104 1750 111 1738Q113 1734 666 264T1220 -1214Q1220 -1215 1220 -1217T1221 -1220Q1221 -1231 1212 -1240T1191 -1249Q1175 -1249 1166 -1237Q1164 -1233 611 237T57 1715Q57 1716 56 1718V1720",93:"5 1677V1750H313V-1249H5V-1176H240V1677H5",123:"661 -1243L655 -1249H622L604 -1240Q503 -1190 434 -1107T348 -909Q346 -897 346 -499L345 -98L343 -82Q335 3 287 87T157 223Q146 232 145 236Q144 240 144 250Q144 265 145 268T157 278Q242 333 288 417T343 583L345 600L346 1001Q346 1398 348 1410Q379 1622 600 1739L622 1750H655L661 1744V1727V1721Q661 1712 661 1710T657 1705T648 1700T630 1690T602 1668Q589 1659 574 1643T531 1593T484 1508T459 1398Q458 1389 458 1001Q458 614 457 605Q441 435 301 316Q254 277 202 251L250 222Q260 216 301 185Q443 66 457 -104Q458 -113 458 -501Q458 -888 459 -897Q463 -944 478 -988T509 -1060T548 -1114T580 -1149T602 -1167Q620 -1183 634 -1192T653 -1202T659 -1207T661 -1220V-1226V-1243",125:"144 1727Q144 1743 146 1746T162 1750H167H183L203 1740Q274 1705 325 1658T403 1562T440 1478T456 1410Q458 1398 458 1001Q459 661 459 624T465 558Q470 526 480 496T502 441T529 395T559 356T588 325T615 301T637 284T654 273L660 269V266Q660 263 660 259T661 250V239Q661 236 661 234T660 232T656 229T649 224Q577 179 528 105T465 -57Q460 -86 460 -123T458 -499V-661Q458 -857 457 -893T447 -955Q425 -1048 359 -1120T203 -1239L183 -1249H168Q150 -1249 147 -1246T144 -1226Q144 -1213 145 -1210T153 -1202Q169 -1193 186 -1181T232 -1140T282 -1081T322 -1000T345 -897Q346 -888 346 -501Q346 -113 347 -104Q359 58 503 184Q554 226 603 250Q504 299 430 393T347 605Q346 614 346 1002Q346 1389 345 1398Q338 1493 288 1573T153 1703Q146 1707 145 1710T144 1727",710:"5 561Q-4 561 -9 582T-14 618Q-14 623 -13 625Q-11 628 461 736T943 845Q945 845 1417 738T1896 628Q1902 628 1902 618Q1902 607 1897 584T1883 561Q1881 561 1412 654L945 750L476 654Q6 561 5 561",732:"1212 583Q1124 583 1048 603T923 647T799 691T635 711Q524 711 375 679T120 615L16 583Q14 584 12 587T9 592Q-2 650 2 659Q2 669 38 687Q54 696 146 723T309 767Q527 823 666 823Q759 823 837 803T964 759T1088 715T1252 695Q1363 695 1512 727T1764 791T1871 823Q1872 822 1874 819T1878 814Q1885 783 1885 753Q1885 748 1884 747Q1884 738 1849 719Q1836 712 1740 682T1484 617T1212 583",770:"-1884 561Q-1893 561 -1898 582T-1903 618Q-1903 623 -1902 625Q-1900 628 -1428 736T-946 845Q-944 845 -472 738T7 628Q13 628 13 618Q13 607 8 584T-6 561Q-8 561 -477 654L-944 750L-1413 654Q-1883 561 -1884 561",771:"-677 583Q-765 583 -841 603T-966 647T-1090 691T-1254 711Q-1365 711 -1514 679T-1768 615L-1873 583Q-1875 584 -1877 587T-1880 592Q-1891 650 -1887 659Q-1887 669 -1851 687Q-1835 696 -1743 723T-1580 767Q-1362 823 -1223 823Q-1130 823 -1052 803T-925 759T-801 715T-637 695Q-526 695 -377 727T-125 791T-18 823Q-17 822 -15 819T-11 814Q-4 782 -4 753Q-4 748 -5 747Q-5 738 -40 719Q-53 712 -149 682T-405 617T-677 583",8260:"1166 1738Q1176 1750 1189 1750T1211 1742T1221 1721Q1221 1720 1221 1718T1220 1715Q1219 1708 666 238T111 -1237Q102 -1249 86 -1249Q74 -1249 65 -1240T56 -1220Q56 -1219 56 -1217T57 -1214Q58 -1207 611 263T1166 1738",8730:"983 1739Q988 1750 1001 1750Q1008 1750 1013 1745T1020 1733Q1020 1726 742 244T460 -1241Q458 -1250 439 -1250H436Q424 -1250 424 -1248L410 -1166Q395 -1083 367 -920T312 -601L201 44L137 -83L111 -57L187 96L264 247Q265 246 369 -357Q470 -958 473 -963L727 384Q979 1729 983 1739",8968:"269 -1249V1750H633V1677H342V-1249H269",8969:"5 1677V1750H369V-1249H296V1677H5",8970:"269 -1249V1750H342V-1176H633V-1249H269",8971:"296 -1176V1750H369V-1249H5V-1176H296",9001:"140 242V260L386 994Q633 1729 635 1732Q643 1745 657 1749Q658 1749 662 1749T668 1750Q682 1749 692 1740T702 1714V1705L214 251L703 -1204L702 -1213Q702 -1230 692 -1239T667 -1248H664Q647 -1248 635 -1231Q633 -1228 386 -493L140 242",9002:"103 1714Q103 1732 114 1741T137 1750Q157 1750 170 1732Q172 1729 419 994L665 260V242L419 -493Q172 -1228 170 -1231Q158 -1248 141 -1248H138Q123 -1248 113 -1239T103 -1213V-1204L591 251L103 1705V1714",9115:"837 1154Q843 1148 843 1145Q843 1141 818 1106T753 1002T667 841T574 604T494 299Q417 -84 417 -609Q417 -641 416 -647T411 -654Q409 -655 366 -655Q299 -655 297 -654Q292 -652 292 -643T291 -583Q293 -400 304 -242T347 110T432 470T574 813T785 1136Q787 1139 790 1142T794 1147T796 1150T799 1152T802 1153T807 1154T813 1154H819H837",9116:"413 -9Q412 -9 407 -9T388 -10T354 -10Q300 -10 297 -9Q294 -8 293 -5Q291 5 291 127V300Q291 602 292 605L296 609Q298 610 366 610Q382 610 392 610T407 610T412 609Q416 609 416 592T417 473V127Q417 -9 413 -9",9117:"843 -635Q843 -638 837 -644H820Q801 -644 800 -643Q792 -635 785 -626Q684 -503 605 -363T473 -75T385 216T330 518T302 809T291 1093Q291 1144 291 1153T296 1164Q298 1165 366 1165Q409 1165 411 1164Q415 1163 416 1157T417 1119Q417 529 517 109T833 -617Q843 -631 843 -635",9118:"31 1143Q31 1154 49 1154H59Q72 1154 75 1152T89 1136Q190 1013 269 873T401 585T489 294T544 -8T572 -299T583 -583Q583 -634 583 -643T577 -654Q575 -655 508 -655Q465 -655 463 -654Q459 -653 458 -647T457 -609Q457 -58 371 340T100 1037Q87 1059 61 1098T31 1143",9119:"579 -9Q578 -9 573 -9T554 -10T520 -10Q466 -10 463 -9Q460 -8 459 -5Q457 5 457 127V300Q457 602 458 605L462 609Q464 610 532 610Q548 610 558 610T573 610T578 609Q582 609 582 592T583 473V127Q583 -9 579 -9",9120:"56 -644H50Q31 -644 31 -635Q31 -632 37 -622Q69 -579 100 -527Q286 -228 371 170T457 1119Q457 1161 462 1164Q464 1165 520 1165Q575 1165 577 1164Q582 1162 582 1153T583 1093Q581 910 570 752T527 400T442 40T300 -303T89 -626Q78 -640 75 -642T61 -644H56",9121:"319 -645V1154H666V1070H403V-645H319",9122:"319 0V602H403V0H319",9123:"319 -644V1155H403V-560H666V-644H319",9124:"0 1070V1154H347V-645H263V1070H0",9125:"263 0V602H347V0H263",9126:"263 -560V1155H347V-644H0V-560H263",9127:"712 899L718 893V876V865Q718 854 704 846Q627 793 577 710T510 525Q510 524 509 521Q505 493 504 349Q504 345 504 334Q504 277 504 240Q504 -2 503 -4Q502 -8 494 -9T444 -10Q392 -10 390 -9Q387 -8 386 -5Q384 5 384 230Q384 262 384 312T383 382Q383 481 392 535T434 656Q510 806 664 892L677 899H712",9128:"389 1159Q391 1160 455 1160Q496 1160 498 1159Q501 1158 502 1155Q504 1145 504 924Q504 691 503 682Q494 549 425 439T243 259L229 250L243 241Q349 175 421 66T503 -182Q504 -191 504 -424Q504 -600 504 -629T499 -659H498Q496 -660 444 -660T390 -659Q387 -658 386 -655Q384 -645 384 -425V-282Q384 -176 377 -116T342 10Q325 54 301 92T255 155T214 196T183 222T171 232Q170 233 170 250T171 268Q171 269 191 284T240 331T300 407T354 524T383 679Q384 691 384 925Q384 1152 385 1155L389 1159",9129:"718 -893L712 -899H677L666 -893Q542 -825 468 -714T385 -476Q384 -466 384 -282Q384 3 385 5L389 9Q392 10 444 10Q486 10 494 9T503 4Q504 2 504 -239V-310V-366Q504 -470 508 -513T530 -609Q546 -657 569 -698T617 -767T661 -812T699 -843T717 -856T718 -876V-893",9130:"384 150V266Q384 304 389 309Q391 310 455 310Q496 310 498 309Q502 308 503 298Q504 283 504 150Q504 32 504 12T499 -9H498Q496 -10 444 -10T390 -9Q386 -8 385 2Q384 17 384 150",9131:"170 875Q170 892 172 895T189 899H194H211L222 893Q345 826 420 715T503 476Q504 467 504 230Q504 51 504 21T499 -9H498Q496 -10 444 -10Q402 -10 394 -9T385 -4Q384 -2 384 240V311V366Q384 469 380 513T358 609Q342 657 319 698T271 767T227 812T189 843T171 856T170 875",9132:"389 1159Q391 1160 455 1160Q496 1160 498 1159Q501 1158 502 1155Q504 1145 504 925V782Q504 676 511 616T546 490Q563 446 587 408T633 345T674 304T705 278T717 268Q718 267 718 250T717 232Q717 231 697 216T648 169T588 93T534 -24T505 -179Q504 -191 504 -425Q504 -600 504 -629T499 -659H498Q496 -660 444 -660T390 -659Q387 -658 386 -655Q384 -645 384 -424Q384 -191 385 -182Q394 -49 463 61T645 241L659 250L645 259Q539 325 467 434T385 682Q384 692 384 873Q384 1153 385 1155L389 1159",9133:"384 -239V-57Q384 4 389 9Q391 10 455 10Q496 10 498 9Q501 8 502 5Q504 -5 504 -230Q504 -261 504 -311T505 -381Q505 -486 492 -551T435 -691Q357 -820 222 -893L211 -899H195Q176 -899 173 -896T170 -874Q170 -858 171 -855T184 -846Q262 -793 312 -709T378 -525Q378 -524 379 -522Q383 -493 384 -351Q384 -345 384 -334Q384 -276 384 -239",9143:"742 -871Q740 -873 737 -876T733 -880T730 -882T724 -884T714 -885H702L222 569L180 484Q138 399 137 399Q131 404 124 412L111 425L265 736L702 -586V168L703 922Q713 935 722 935Q734 935 742 920V-871",10216:"140 242V260L386 994Q633 1729 635 1732Q643 1745 657 1749Q658 1749 662 1749T668 1750Q682 1749 692 1740T702 1714V1705L214 251L703 -1204L702 -1213Q702 -1230 692 -1239T667 -1248H664Q647 -1248 635 -1231Q633 -1228 386 -493L140 242",10217:"103 1714Q103 1732 114 1741T137 1750Q157 1750 170 1732Q172 1729 419 994L665 260V242L419 -493Q172 -1228 170 -1231Q158 -1248 141 -1248H138Q123 -1248 113 -1239T103 -1213V-1204L591 251L103 1705V1714",12296:"140 242V260L386 994Q633 1729 635 1732Q643 1745 657 1749Q658 1749 662 1749T668 1750Q682 1749 692 1740T702 1714V1705L214 251L703 -1204L702 -1213Q702 -1230 692 -1239T667 -1248H664Q647 -1248 635 -1231Q633 -1228 386 -493L140 242",12297:"103 1714Q103 1732 114 1741T137 1750Q157 1750 170 1732Q172 1729 419 994L665 260V242L419 -493Q172 -1228 170 -1231Q158 -1248 141 -1248H138Q123 -1248 113 -1239T103 -1213V-1204L591 251L103 1705V1714",57344:"722 -14H720Q708 -14 702 0V306L703 612Q713 625 722 625Q734 625 742 610V0Q734 -14 724 -14H722",57345:"702 589Q706 601 718 605H1061Q1076 597 1076 585Q1076 572 1061 565H742V0Q734 -14 724 -14H722H720Q708 -14 702 0V589",57680:"-18 -213L-24 -207V-172L-16 -158Q75 2 260 84Q334 113 415 119Q418 119 427 119T440 120Q454 120 457 117T460 98V60V25Q460 7 457 4T441 0Q308 0 193 -55T25 -205Q21 -211 18 -212T-1 -213H-18",57681:"-10 60Q-10 104 -10 111T-5 118Q-1 120 10 120Q96 120 190 84Q375 2 466 -158L474 -172V-207L468 -213H451H447Q437 -213 434 -213T428 -209T423 -202T414 -187T396 -163Q331 -82 224 -41T9 0Q-4 0 -7 3T-10 25V60",57682:"-24 327L-18 333H-1Q11 333 15 333T22 329T27 322T35 308T54 284Q115 203 225 162T441 120Q454 120 457 117T460 95V60V28Q460 8 457 4T442 0Q355 0 260 36Q75 118 -16 278L-24 292V327",57683:"-10 60V95Q-10 113 -7 116T9 120Q151 120 250 171T396 284Q404 293 412 305T424 324T431 331Q433 333 451 333H468L474 327V292L466 278Q375 118 190 36Q95 0 8 0Q-5 0 -7 3T-10 24V60",57684:"-10 0V120H410V0H-10"},{57685:"\ue153\ue152",57686:"\ue151\ue150"})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.texSize4=void 0,e.texSize4={40:[1.75,1.249,.792],41:[1.75,1.249,.792],47:[1.75,1.249,1.278],91:[1.75,1.249,.583],92:[1.75,1.249,1.278],93:[1.75,1.249,.583],123:[1.75,1.249,.806],125:[1.75,1.249,.806],710:[.845,-.561,1.889,{ic:.013}],732:[.823,-.583,1.889],770:[.845,-.561,0,{ic:.013}],771:[.823,-.583,0],8260:[1.75,1.249,1.278],8730:[1.75,1.25,1,{ic:.02}],8968:[1.75,1.249,.639],8969:[1.75,1.249,.639],8970:[1.75,1.249,.639],8971:[1.75,1.249,.639],9001:[1.75,1.248,.806],9002:[1.75,1.248,.806],9115:[1.154,.655,.875],9116:[.61,.01,.875],9117:[1.165,.644,.875],9118:[1.154,.655,.875],9119:[.61,.01,.875],9120:[1.165,.644,.875],9121:[1.154,.645,.667],9122:[.602,0,.667],9123:[1.155,.644,.667],9124:[1.154,.645,.667],9125:[.602,0,.667],9126:[1.155,.644,.667],9127:[.899,.01,.889],9128:[1.16,.66,.889],9129:[.01,.899,.889],9130:[.29,.015,.889],9131:[.899,.01,.889],9132:[1.16,.66,.889],9133:[.01,.899,.889],9143:[.935,.885,1.056],10216:[1.75,1.248,.806],10217:[1.75,1.248,.806],12296:[1.75,1.248,.806],12297:[1.75,1.248,.806],57344:[.625,.014,1.056],57345:[.605,.014,1.056,{ic:.02}],57680:[.12,.213,.45,{ic:.01}],57681:[.12,.213,.45,{ic:.024}],57682:[.333,0,.45,{ic:.01}],57683:[.333,0,.45,{ic:.024}],57684:[.32,.2,.4,{ic:.01}],57685:[.333,0,.9,{ic:.01}],57686:[.12,.213,.9,{ic:.01}]}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.texVariant=void 0;var r=Q(6),T=Q(264);e.texVariant=r.AddPaths(T.texVariant,{710:"1 561Q-3 563 -6 577T-12 604L-14 618Q-14 625 -7 628T23 635Q31 636 36 637Q63 641 621 745Q1148 845 1165 845Q1167 845 1752 739L2338 630Q2346 630 2346 618Q2340 565 2332 561Q2329 561 1749 654Q1617 675 1466 699T1241 736T1167 748Q1165 748 1093 737T867 700T583 654Q3 561 1 561",732:"804 788Q717 788 606 772T397 732T213 685T75 645T18 628Q11 628 11 632Q8 637 4 668T2 704Q2 713 36 732Q55 739 242 795Q622 898 826 898Q893 898 947 895Q1009 887 1056 872T1187 819Q1286 776 1356 758T1527 739Q1614 739 1725 755T1934 795T2118 842T2256 882T2313 899Q2320 899 2320 895Q2323 890 2327 860T2329 824Q2329 818 2296 795Q2273 787 2089 732Q1810 657 1598 632Q1562 629 1492 629Q1389 629 1320 644T1144 708Q1048 751 977 769T804 788",770:"-2332 561Q-2336 563 -2340 577T-2346 604L-2347 618Q-2347 625 -2340 628T-2310 635Q-2302 636 -2297 637Q-2270 641 -1712 745Q-1185 845 -1168 845Q-1166 845 -581 739L5 630Q13 630 13 618Q7 565 -1 561Q-4 561 -584 654Q-716 675 -867 699T-1092 736T-1166 748Q-1168 748 -1240 737T-1466 700T-1750 654Q-2330 561 -2332 561",771:"-1529 788Q-1616 788 -1727 772T-1936 732T-2120 685T-2258 645T-2315 628Q-2322 628 -2322 632Q-2325 637 -2329 668T-2331 704Q-2331 713 -2297 732Q-2278 739 -2091 795Q-1711 898 -1507 898Q-1440 898 -1386 895Q-1324 887 -1277 872T-1146 819Q-1047 776 -977 758T-806 739Q-719 739 -608 755T-399 795T-215 842T-77 882T-20 899Q-13 899 -13 895Q-10 890 -6 860T-4 824Q-4 818 -37 795Q-60 787 -244 732Q-523 657 -735 632Q-771 629 -841 629Q-944 629 -1013 644T-1189 708Q-1285 751 -1356 769T-1529 788",1008:"228 325Q170 322 156 316T127 309Q108 309 104 314Q99 319 99 322T108 341Q125 376 171 400T268 425H271Q302 425 319 396Q328 377 328 358Q328 332 324 314Q311 270 286 221Q274 194 274 192H275Q339 234 484 325T639 421Q669 434 691 434T723 425T734 406Q734 394 719 381Q715 376 644 330L575 287L566 267Q543 233 526 176Q520 160 515 143T508 115T506 105Q506 103 533 103Q585 103 607 110T641 118Q670 118 670 107Q670 100 661 85Q643 50 598 27T504 3Q465 3 450 36Q441 51 441 73Q441 84 444 96Q452 146 484 205L497 236L324 125Q143 12 135 10Q103 -6 77 -6Q61 -6 49 2T37 21Q37 36 49 46T124 96L195 141L204 156Q219 179 243 248T264 323Q264 325 228 325",8463:"182 599Q182 611 174 615T133 619Q118 619 114 621T109 630Q109 636 114 656T122 681Q125 685 202 688Q272 695 286 695Q304 695 304 684Q304 682 295 644T282 597Q282 592 360 592H399Q430 592 445 587T460 563Q460 552 451 541L442 535H266L251 468Q247 453 243 436T236 409T233 399Q233 395 244 404Q295 441 357 441Q405 441 445 417T485 333Q485 284 449 178T412 58T426 44Q447 44 466 68Q485 87 500 130L509 152H531H543Q562 152 562 144Q562 128 546 93T494 23T415 -13Q385 -13 359 3T322 44Q318 52 318 77Q318 99 352 196T386 337Q386 386 346 386Q318 386 286 370Q267 361 245 338T211 292Q207 287 193 235T162 113T138 21Q128 7 122 4Q105 -12 83 -12Q66 -12 54 -2T42 26L166 530Q166 534 161 534T129 535Q127 535 122 535T112 534Q74 534 74 562Q74 570 77 576T84 585T96 589T109 591T124 592T138 592L182 595V599",8592:"292 419Q292 400 261 347T211 275H306Q319 275 338 275T364 276Q399 276 410 271T422 250T411 230T366 225H306H211Q214 222 232 197T271 136T292 82Q292 71 285 68T262 64H250H241Q221 64 216 67T205 83Q186 127 153 167T78 230Q64 238 64 250Q64 258 69 263T82 272T106 288T139 318Q162 342 177 365T198 402T209 425T223 436Q224 437 252 437H258Q292 437 292 419",8594:"188 417Q188 437 221 437H233Q256 437 263 434T275 417Q294 373 327 333T402 270Q417 261 417 250Q417 241 410 236T382 217T341 182Q315 155 299 128T275 85T263 66Q259 64 231 64H219Q197 64 191 72T193 100Q202 124 215 147T239 185T257 210T267 223L269 225H174H116Q80 225 69 229T58 250T70 271T114 276Q121 276 140 276T174 275H269L267 277Q266 280 257 291T233 325T205 374Q188 408 188 417",8652:"755 512Q755 514 778 514H801L804 503Q805 501 812 486T824 462T839 437T862 408T892 381T932 354L944 347V327H507Q70 327 67 329Q55 335 55 347T67 365Q70 367 454 367H837L828 376Q803 403 785 437T761 489T755 512ZM55 153V173H492Q928 173 932 171Q944 166 944 153T932 135Q928 133 545 133H162L171 124Q198 95 216 61T239 8L244 -12Q244 -14 221 -14H198L195 -4Q160 95 67 146L55 153",8708:"55 676Q55 688 66 694H199L333 696L351 772Q364 827 370 843T386 860Q393 860 399 854T406 841Q406 836 391 765L375 696Q375 694 431 694H484Q491 688 497 681V12L493 5L486 1L353 -1H219L202 -79Q184 -153 180 -159Q175 -166 165 -166Q146 -166 146 -148Q146 -141 161 -76T177 -4Q177 -1 122 -1H68Q55 12 55 20T66 39H126L186 41L219 181Q226 215 234 251T246 305T251 325Q251 328 166 328H79Q68 345 68 347Q68 352 75 359L82 368H262L291 505Q298 539 306 575T319 630T324 650V654H68Q55 669 55 676ZM457 368V654H411Q366 654 366 652Q365 651 361 634T349 580T333 514Q303 373 302 372V368H457ZM457 39V328H375Q293 328 293 325Q292 322 260 183T228 41T344 39H457",8709:"624 470Q624 468 639 446T668 382T683 291Q683 181 612 99T437 -1Q425 -2 387 -2T337 -1Q245 18 193 70L179 81L131 39Q96 8 89 3T75 -3Q55 -3 55 17Q55 24 61 30T111 73Q154 113 151 113Q151 114 140 130T115 177T95 241Q94 253 94 291T95 341Q112 431 173 495Q265 587 385 587Q410 587 437 581Q522 571 582 513L595 501L642 541Q689 586 695 586Q696 586 697 586T699 587Q706 587 713 583T720 568Q720 560 711 551T664 510Q651 499 642 490T628 475T624 470ZM564 477Q517 522 448 539Q428 546 375 546Q290 546 229 492T144 370Q133 332 133 279Q136 228 151 195Q157 179 168 160T184 141Q186 141 375 307T564 477ZM642 290Q642 318 637 343T625 386T611 416T598 436T593 444Q590 444 402 277T213 108Q213 104 231 89T293 55T392 37Q495 37 568 111T642 290",8722:"84 237T84 250T98 270H402Q417 262 417 250T402 230H98Q84 237 84 250",8726:"91 404T91 410T97 423T111 430Q117 430 395 224Q676 13 678 10Q685 3 685 -3T678 -16T664 -23Q658 -23 380 184T98 397Q91 404 91 410",8733:"56 250Q56 346 122 409T276 472Q349 472 407 430T486 326L489 316Q490 317 493 326T501 345T514 367T531 393Q557 425 602 448T698 472Q722 472 722 452Q722 437 702 435T642 421T571 377Q520 323 520 250Q520 179 568 126T693 68Q722 66 722 48Q722 28 698 28Q636 28 576 67T493 174L490 184Q489 181 483 167T475 150T468 136T458 120T447 107T432 90T412 73Q350 28 277 28Q188 28 122 91T56 250ZM199 68T278 68T408 122T459 250Q459 322 414 370T308 430Q302 431 273 431Q204 431 150 380T96 250Q96 176 147 122",8739:"91 417Q104 430 111 430T131 417V-10Q116 -23 111 -23T91 -10V417",8740:"91 417Q104 430 111 430T131 417V301L171 341Q201 373 207 378T220 384Q227 384 233 377T240 366Q240 357 187 299L131 244V-10Q116 -23 111 -23T91 -10V201L49 157Q20 127 14 121T0 115Q-8 115 -14 121T-20 132Q-20 139 17 178Q29 191 36 199L91 257V417",8741:"55 417Q69 431 76 431T95 419V-12Q84 -23 76 -23Q72 -23 69 -22T62 -16T55 -10V417ZM293 419Q300 431 310 431L324 424L331 417V-10Q316 -23 309 -23L297 -19L293 -12V419",8742:"56 417Q68 431 76 431L89 426L96 419V317L98 215L193 273L291 330V375L293 419Q301 431 311 431Q331 431 331 388L333 355L356 370Q381 384 388 384Q394 384 400 377T407 363Q407 354 367 328L331 308V-10Q316 -23 310 -23Q300 -23 293 -12L291 135V284L98 168L96 77V-12Q84 -24 76 -24L62 -19L58 -12L56 66V144L31 128Q5 114 -2 114Q-8 114 -14 121T-20 136Q-20 142 -14 147T20 170L56 190V417",8764:"73 132Q55 132 55 172Q55 220 79 272Q95 301 111 319Q148 353 195 363Q199 364 212 364Q262 364 294 350T408 272Q472 222 522 212Q537 208 555 208Q606 208 646 243Q671 268 680 296T691 342T702 365Q713 365 716 354T719 314Q714 236 664 179L660 176Q657 173 654 170T644 163T631 154T615 146T596 139T574 134T549 132Q510 132 465 156T386 211T307 265T223 290Q162 290 124 249T86 165Q86 155 82 144T73 132",8776:"55 326Q55 394 101 437T226 481Q268 479 313 460T392 419T469 379T555 361Q622 361 662 401Q686 423 688 450Q693 479 702 479H705Q719 479 719 442Q719 367 670 327T554 286Q512 286 466 304T386 345T307 385T220 404Q184 404 157 394T120 374L111 363Q86 339 86 317Q86 288 71 288Q55 288 55 326ZM55 90Q55 164 105 205T226 246Q269 243 314 224T392 183T470 144T558 126Q622 126 662 166Q686 187 688 214Q693 244 704 244Q716 244 719 210Q719 165 702 132T658 82T605 58T552 50T498 58T447 77T384 110Q322 146 302 152Q263 168 220 168Q179 168 144 152Q128 147 107 125T86 81Q86 52 71 52Q55 52 55 90",8808:"86 472Q93 477 381 614T673 752Q680 752 686 746T693 732T689 721Q686 715 418 590L151 461L418 332Q684 207 689 201Q693 195 693 190Q693 183 687 177T675 170Q668 170 380 307T86 450Q82 454 82 461Q82 467 86 472ZM369 101V126Q369 156 382 156H384Q385 157 386 157Q409 157 409 115V98V54H680Q693 39 693 34T680 14H409V-142H680Q693 -155 693 -162Q693 -167 680 -182H409V-273Q396 -284 388 -284Q382 -284 369 -275V-182H95Q82 -167 82 -162Q82 -155 95 -142H369V14H95Q93 17 89 21T84 27T82 34T83 40T89 47T95 54H369V101",8809:"89 745Q95 752 100 752Q106 752 394 615T689 472Q693 468 693 461T689 450Q684 445 396 308T100 170Q95 170 89 176T82 190Q82 195 86 201Q91 208 358 332L624 461L358 590Q90 715 86 721Q82 725 82 731Q82 739 89 745ZM369 101V126Q369 156 382 156H384Q385 157 386 157Q409 157 409 115V98V54H680Q693 39 693 34T680 14H409V-142H680Q693 -155 693 -162Q693 -167 680 -182H409V-273Q396 -284 388 -284Q382 -284 369 -275V-182H95Q82 -167 82 -162Q82 -155 95 -142H369V14H95Q93 17 89 21T84 27T82 34T83 40T89 47T95 54H369V101",8816:"82 34Q82 44 93 55H198L300 57L342 179Q351 207 362 238T378 286T384 303T238 377Q109 435 86 450Q82 454 82 460T86 472Q90 476 302 579L511 679Q512 679 553 795Q569 842 577 866T592 903T600 917T608 919Q615 919 622 912T629 901Q629 899 595 799Q589 777 581 753T569 717T564 703L618 728Q666 752 673 752T686 746T693 732Q693 723 683 717T615 683L546 650L491 488Q464 410 450 368T438 326Q493 297 562 266Q660 219 677 209T694 190Q694 183 690 177T678 171Q664 171 546 228L424 286Q422 286 382 172L342 57L513 55H682Q694 43 694 34Q694 28 689 21L682 17L506 15H329L322 -8Q320 -13 310 -41T295 -85L275 -141H680Q682 -143 684 -146T688 -151T691 -156T693 -162Q693 -172 682 -179L473 -181H262L220 -303Q192 -388 185 -404T166 -421Q160 -421 153 -415T146 -403Q146 -400 179 -302T220 -185Q220 -181 158 -181L93 -179L86 -174Q82 -169 82 -161Q82 -152 93 -141H164L233 -139L260 -63L286 15H189L93 17L86 21Q82 26 82 34ZM495 623Q495 626 493 626T321 544T151 461L398 343Q399 343 405 360T423 415T446 483Q457 513 469 551T488 606T495 623",8817:"97 172Q82 172 82 190Q82 197 86 201Q94 209 173 246T327 319T402 357Q405 360 434 448T462 539L278 628Q96 713 86 721Q82 725 82 732T88 745T102 752Q103 752 125 742T198 709T293 666Q342 642 385 622T453 590T478 579Q479 579 506 659T562 824T598 915Q602 919 609 919T622 913T629 901Q629 898 571 728Q546 656 531 608T518 559Q555 539 602 519Q664 488 679 479T694 461Q694 457 689 450Q680 443 616 413T494 356T435 326L389 190L342 57L513 55H682Q694 43 694 34Q694 28 689 21L682 17L506 15H329L322 -8Q320 -13 310 -41T295 -85L275 -141H680Q682 -143 684 -146T688 -151T691 -156T693 -162Q693 -172 682 -179L473 -181H262L220 -303Q192 -388 185 -404T166 -421Q160 -421 153 -415T146 -403Q146 -400 179 -302T220 -185Q220 -181 158 -181L93 -179L86 -174Q82 -169 82 -161Q82 -152 93 -141H164L233 -139L260 -63L286 15H189L93 17L86 21Q82 26 82 34Q82 44 93 55H198L300 57L342 179Q350 204 361 238T378 286T382 301L246 237Q111 172 97 172ZM624 461Q621 464 560 492Q512 518 503 518Q500 518 500 517Q499 513 488 479T465 413T453 379L624 461",8840:"82 -6Q82 1 95 14H262L295 94Q331 171 331 174Q324 175 312 178T267 194T206 227T146 283T98 368Q84 406 84 461T98 554Q126 632 194 685T349 750Q360 752 480 752H591L604 783Q620 819 624 821Q631 828 640 828Q653 825 658 810Q658 808 646 781L635 754Q635 752 658 752Q680 752 686 746Q693 739 693 732Q693 728 692 726T686 719T680 712H615L506 466Q479 407 451 344T408 248T393 214Q393 210 535 210H680Q693 194 693 190T680 170H373L340 92L304 14H680Q693 1 693 -6Q693 -11 680 -26H286L253 -103L218 -179L451 -181H682Q694 -193 694 -201Q694 -212 682 -219L440 -221H200L178 -270Q160 -309 154 -319T139 -330Q122 -330 118 -312L155 -223Q155 -221 126 -221H95Q82 -206 82 -201T95 -181H175L206 -108Q237 -35 242 -30Q242 -26 169 -26H95Q82 -11 82 -6ZM571 710Q571 712 469 712Q443 712 416 712T371 711T351 710Q279 700 221 656T138 548Q124 508 124 461T138 374Q186 245 351 212L460 459Q571 709 571 710",8841:"82 732Q82 739 95 752H251H348Q420 752 460 744T551 708Q566 697 566 701Q618 815 624 821Q631 828 640 828Q653 825 658 810L600 677Q600 671 615 656T653 605T689 517Q692 496 692 461T689 406Q668 325 615 266Q572 221 513 196T391 170H373L340 92L304 14H680Q693 1 693 -6Q693 -11 680 -26H286L253 -103L218 -179L451 -181H682Q694 -193 694 -201Q694 -212 682 -219L440 -221H200L178 -270Q160 -309 154 -319T139 -330Q122 -330 118 -312L155 -223Q155 -221 126 -221H95Q82 -206 82 -201T95 -181H175L206 -108Q237 -35 242 -30Q242 -26 169 -26H95Q82 -11 82 -6Q82 1 95 14H262L295 92L331 170H95Q93 172 91 175T87 180T84 185T82 191Q82 199 93 210H220L349 212L549 659Q507 692 462 702T338 712H249H95Q82 727 82 732ZM652 473Q652 513 636 552T603 611T582 632Q581 632 487 422T393 210Q424 210 460 220T535 253T605 316T649 410Q652 427 652 461V473",8842:"693 -115T693 -122T680 -144H315L269 -199Q221 -255 213 -255H212Q203 -255 197 -248T193 -231Q195 -225 229 -184L262 -144H186L113 -142L106 -137Q102 -130 102 -125Q102 -119 115 -104H298L426 52H386Q342 54 309 63Q236 79 180 129T98 249Q84 289 84 343Q84 398 98 436Q126 514 193 567T346 632Q347 632 373 632T440 633T520 634H680Q682 631 686 627T691 621T693 614T680 594H526Q364 594 353 592Q268 581 207 528T126 394Q123 378 123 343T126 292Q141 231 181 185T280 114Q329 92 415 92H462L506 147Q554 203 562 203H563Q572 203 578 196T582 178Q579 173 546 132L513 94L598 92H682Q693 81 693 73T680 52H480L349 -102L515 -104H682Q693 -115 693 -122",8843:"82 610T82 614T83 620T89 627T95 634H251Q378 634 409 633T469 623Q540 604 596 554T678 436Q691 397 691 343T678 249Q653 181 597 131T469 63Q427 52 362 52H315L213 -102L438 -104H662Q673 -115 673 -123Q673 -129 660 -144H186L151 -197Q114 -250 109 -253Q106 -254 104 -254Q100 -254 98 -253Q91 -253 87 -248T82 -235Q82 -230 109 -186L138 -144H115Q82 -144 82 -125Q82 -119 95 -104H166L266 49Q266 52 182 52H95Q82 65 82 72Q82 76 83 78T89 85T95 92H295L329 143Q365 195 369 198Q372 203 380 203Q385 203 391 197T398 185Q398 184 398 184L399 182Q399 175 369 129L344 94Q344 92 376 92Q402 92 422 94Q496 104 554 147T638 256Q651 295 651 343Q651 390 638 429Q613 494 555 537T422 592Q411 594 249 594H95Q82 610 82 614",8872:"55 678Q55 679 56 681T58 684T61 688T65 691T70 693T77 694Q88 692 95 679V464H540Q554 456 555 446Q555 442 554 439T552 434T549 430T546 428T542 426T539 424H95V270H539Q540 270 542 269T545 267T549 264T552 260T554 255T555 248Q554 238 540 230H95V15Q88 2 77 0Q73 0 70 1T65 3T61 6T59 9T57 13T55 16V678",8901:"71 0Q59 4 55 16V96L56 176Q59 180 66 187L70 189H209Q219 181 222 174V15Q219 10 209 1L140 0H71",8994:"77 122Q68 122 63 126T57 135T55 142Q55 151 68 176T111 235T177 302T271 356T388 378Q451 378 508 355T602 300T668 233T709 174T722 142Q722 124 704 122Q692 122 685 134T658 179T606 243Q511 338 390 338Q354 338 320 329Q251 312 193 263T97 141Q87 123 77 122",8995:"389 143Q324 143 266 164T171 215T107 277T67 330T55 358T60 371T77 378Q85 377 92 367T116 331T158 280Q256 182 389 182Q475 182 552 227T675 351Q688 378 704 378Q722 376 722 358Q722 352 710 330T670 276T605 215T511 164T389 143",9651:"99 -20Q84 -11 84 0Q84 5 148 145T278 424L342 563Q347 575 360 575Q368 575 375 570Q376 569 441 430T571 148T637 0Q637 -11 622 -20H99ZM476 260L360 509L248 266Q137 24 135 22Q135 20 360 20Q586 20 586 21L476 260",9661:"84 556Q84 567 99 576H622Q637 567 637 556Q637 551 572 409T441 127T375 -14Q368 -19 360 -19H358Q349 -19 342 -7T296 92Q249 193 211 275Q84 550 84 556ZM586 534Q586 536 361 536Q135 536 135 535L358 52L361 47L473 290Q584 532 586 534",10887:"102 168Q103 168 151 146T247 102T295 81Q299 85 322 144T344 206L218 268Q153 297 123 313T87 333T82 344T86 355Q104 369 291 455Q491 552 491 553L542 673Q581 767 590 784T609 801Q616 801 622 795T629 781Q629 773 586 677Q546 581 546 577L609 606Q669 635 673 635Q680 635 686 629T693 615Q693 610 692 608T670 593T604 561L524 521L400 226L542 157Q617 123 649 107T687 85T694 72Q694 66 690 60T679 54Q665 54 526 119Q394 186 386 186Q385 186 342 88L331 61L509 -23Q680 -105 688 -111Q693 -115 693 -122T688 -135T675 -141H673Q664 -141 491 -59Q320 21 316 21H315L249 -136Q183 -293 178 -299Q172 -303 166 -303T153 -297T146 -283Q146 -282 154 -261T181 -197T213 -119L280 41Q280 46 186 86Q157 101 121 119Q92 133 87 136T82 148Q82 155 88 161T102 168ZM418 370L466 495Q464 495 308 420T151 344T204 317T311 267T364 244Q364 247 418 370",10888:"97 54Q82 54 82 72Q82 79 86 84Q95 91 222 153L351 215L398 324L442 433L258 519Q95 597 87 604Q82 608 82 615T88 628T102 635Q107 635 424 484L458 468L524 630Q593 789 597 795Q601 801 609 801Q616 801 622 795T629 781L562 615L493 450L589 406Q665 371 679 362T694 344Q694 339 693 337T677 326T631 302T538 257Q504 241 465 223T406 195T386 186Q383 185 344 92T306 -3L486 81Q662 168 673 168Q680 168 686 162T693 148T689 137Q688 136 482 35L280 -59L233 -176Q184 -291 178 -299Q172 -303 166 -303T153 -297T146 -283Q146 -279 185 -186T224 -90Q225 -88 223 -88Q219 -88 193 -101Q109 -143 98 -143Q82 -138 82 -122Q82 -116 85 -113T108 -98T171 -67L249 -30L289 61Q297 81 307 107T321 144T326 157L218 106Q109 54 97 54ZM553 379Q480 412 480 415Q479 415 460 372T423 285T406 241Q408 240 516 291T624 344L553 379",10955:"82 -14T82 -7T95 15H431L529 170H435Q341 170 333 175Q149 218 98 368Q84 406 84 461Q84 515 98 555Q126 633 193 686T346 750Q347 750 373 750T440 751T520 752H680Q693 739 693 732Q693 727 680 712H526Q364 712 353 710Q268 700 207 646T126 512Q123 496 123 461T126 410Q141 350 180 304T280 232Q312 217 344 214T464 210H555L589 261Q613 301 620 311T635 321Q644 321 650 315T657 301Q657 296 651 286T630 252T604 212Q604 210 642 210H680Q693 197 693 190Q693 186 692 184T686 177T680 170H578L526 92L478 17L580 15H682Q693 4 693 -4T680 -25H451L353 -179L518 -181H682Q694 -193 694 -201Q694 -211 682 -219L504 -221H326L293 -272Q257 -332 246 -332Q238 -332 232 -326T225 -313Q225 -310 226 -308Q226 -305 251 -265T278 -223Q278 -221 186 -221H95Q93 -218 89 -214T84 -208T82 -201T95 -181H306L404 -25H249L93 -23L86 -19Q82 -14 82 -7",10956:"82 732Q82 739 95 752H251Q415 752 426 750Q539 736 615 657Q667 599 689 517Q692 496 692 461T689 406Q668 325 615 266Q522 170 382 170H355L326 95Q319 80 311 59T298 28T293 17Q293 15 486 15H680Q693 0 693 -6T680 -25H275L213 -179L449 -181H682Q693 -192 693 -199T680 -221H198L178 -270Q153 -333 139 -333Q132 -333 126 -327T119 -314T135 -266T153 -223Q153 -221 124 -221H95Q82 -207 82 -201T95 -181H171L233 -25H162L93 -23L86 -19Q82 -14 82 -7T95 15H251L313 170H202L93 172L86 177Q82 182 82 190Q82 199 93 210H211L329 212L349 261Q366 301 372 311T386 321Q392 321 399 315T407 302Q407 295 390 254T373 210Q374 209 377 209Q412 209 444 217Q512 231 564 273T638 377Q651 414 651 461Q651 509 638 548Q613 613 555 656T422 710Q411 712 249 712H95Q82 727 82 732"},{})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.texVariant=void 0,e.texVariant={710:[.845,-.561,2.333,{ic:.013}],732:[.899,-.628,2.333],770:[.845,-.561,0,{ic:.013}],771:[.899,-.628,0],1008:[.434,.006,.667,{ic:.067}],8463:[.695,.013,.54,{ic:.022}],8592:[.437,-.064,.5],8594:[.437,-.064,.5],8652:[.514,.014,1],8708:[.86,.166,.556],8709:[.587,0,.778],8722:[.27,-.23,.5],8726:[.43,.023,.778],8733:[.472,-.028,.778],8739:[.43,.023,.222],8740:[.43,.023,.222,{ic:.018}],8741:[.431,.023,.389],8742:[.431,.024,.389,{ic:.018}],8764:[.365,-.132,.778],8776:[.481,-.05,.778],8808:[.752,.284,.778],8809:[.752,.284,.778],8816:[.919,.421,.778],8817:[.919,.421,.778],8840:[.828,.33,.778],8841:[.828,.33,.778],8842:[.634,.255,.778],8843:[.634,.254,.778],8872:[.694,0,.611],8901:[.189,0,.278],8994:[.378,-.122,.778],8995:[.378,-.143,.778],9651:[.575,.02,.722],9661:[.576,.019,.722],10887:[.801,.303,.778],10888:[.801,.303,.778],10955:[.752,.332,.778],10956:[.752,.333,.778]}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.delimiters=e.VSIZES=e.HDW3=e.HDW2=e.HDW1=void 0;var r=Q(28);e.HDW1=[.75,.25,.875],e.HDW2=[.85,.349,.667],e.HDW3=[.583,.082,.5],e.VSIZES=[1,1.2,1.8,2.4,3];var T={c:47,dir:r.V,sizes:e.VSIZES},n={c:175,dir:r.H,sizes:[.59],stretch:[0,175],HDW:[.59,-.544,.5]},o={c:710,dir:r.H,sizes:[.517,.817,1.335,1.777,1.909]},i={c:732,dir:r.H,sizes:[.583,.805,1.33,1.773,1.887]},a={c:8211,dir:r.H,sizes:[.5],stretch:[0,8211],HDW:[.285,-.248,.5]},s={c:8592,dir:r.H,sizes:[1],stretch:[8592,8722],HDW:e.HDW3},l={c:8594,dir:r.H,sizes:[1],stretch:[0,8722,8594],HDW:e.HDW3},c={c:8596,dir:r.H,sizes:[1],stretch:[8592,8722,8594],HDW:e.HDW3},u={c:8612,dir:r.H,stretch:[8592,8722,8739],HDW:e.HDW3,min:1.278},p={c:8614,dir:r.H,sizes:[1],stretch:[8739,8722,8594],HDW:e.HDW3},h={c:8656,dir:r.H,sizes:[1],stretch:[8656,61],HDW:e.HDW3},f={c:8658,dir:r.H,sizes:[1],stretch:[0,61,8658],HDW:e.HDW3},d={c:8660,dir:r.H,sizes:[1],stretch:[8656,61,8658],HDW:e.HDW3},L={c:8722,dir:r.H,sizes:[.778],stretch:[0,8722],HDW:e.HDW3},H={c:8739,dir:r.V,sizes:[1],stretch:[0,8739],HDW:[.627,.015,.333]},m={c:9180,dir:r.H,sizes:[.778,1],schar:[8994,8994],stretch:[57680,57684,57681],HDW:[.32,.2,.5]},y={c:9181,dir:r.H,sizes:[.778,1],schar:[8995,8995],stretch:[57682,57684,57683],HDW:[.32,.2,.5]},v={c:9182,dir:r.H,stretch:[57680,57684,57681,57685],HDW:[.32,.2,.5],min:1.8},g={c:9183,dir:r.H,stretch:[57682,57684,57683,57686],HDW:[.32,.2,.5],min:1.8},b={c:10216,dir:r.V,sizes:e.VSIZES},M={c:10217,dir:r.V,sizes:e.VSIZES},V={c:10502,dir:r.H,stretch:[8656,61,8739],HDW:e.HDW3,min:1.278},x={c:10503,dir:r.H,stretch:[8872,61,8658],HDW:e.HDW3,min:1.278};e.delimiters={40:{dir:r.V,sizes:e.VSIZES,stretch:[9115,9116,9117],HDW:[.85,.349,.875]},41:{dir:r.V,sizes:e.VSIZES,stretch:[9118,9119,9120],HDW:[.85,.349,.875]},45:L,47:T,61:{dir:r.H,sizes:[.767],stretch:[0,61],HDW:e.HDW3},91:{dir:r.V,sizes:e.VSIZES,stretch:[9121,9122,9123],HDW:e.HDW2},92:{dir:r.V,sizes:e.VSIZES},93:{dir:r.V,sizes:e.VSIZES,stretch:[9124,9125,9126],HDW:e.HDW2},94:o,95:a,123:{dir:r.V,sizes:e.VSIZES,stretch:[9127,9130,9129,9128],HDW:[.85,.349,.889]},124:{dir:r.V,sizes:[1],stretch:[0,8739],HDW:[.75,.25,.333]},125:{dir:r.V,sizes:e.VSIZES,stretch:[9131,9130,9133,9132],HDW:[.85,.349,.889]},126:i,175:n,710:o,713:n,732:i,770:o,771:i,818:a,8211:a,8212:a,8213:a,8214:{dir:r.V,sizes:[.602,1],schar:[0,8741],stretch:[0,8741],HDW:[.602,0,.556]},8215:a,8254:n,8407:l,8592:s,8593:{dir:r.V,sizes:[.888],stretch:[8593,9168],HDW:[.6,0,.667]},8594:l,8595:{dir:r.V,sizes:[.888],stretch:[0,9168,8595],HDW:[.6,0,.667]},8596:c,8597:{dir:r.V,sizes:[1.044],stretch:[8593,9168,8595],HDW:e.HDW1},8606:{dir:r.H,sizes:[1],stretch:[8606,8722],HDW:e.HDW3},8608:{dir:r.H,sizes:[1],stretch:[0,8722,8608],HDW:e.HDW3},8612:u,8613:{dir:r.V,stretch:[8593,9168,8869],HDW:e.HDW1,min:1.555},8614:p,8615:{dir:r.V,stretch:[8868,9168,8595],HDW:e.HDW1,min:1.555},8624:{dir:r.V,sizes:[.722],stretch:[8624,9168],HDW:e.HDW1},8625:{dir:r.V,sizes:[.722],stretch:[8625,9168],HDW:e.HDW1},8636:{dir:r.H,sizes:[1],stretch:[8636,8722],HDW:e.HDW3},8637:{dir:r.H,sizes:[1],stretch:[8637,8722],HDW:e.HDW3},8638:{dir:r.V,sizes:[.888],stretch:[8638,9168],HDW:e.HDW1},8639:{dir:r.V,sizes:[.888],stretch:[8639,9168],HDW:e.HDW1},8640:{dir:r.H,sizes:[1],stretch:[0,8722,8640],HDW:e.HDW3},8641:{dir:r.H,sizes:[1],stretch:[0,8722,8641],HDW:e.HDW3},8642:{dir:r.V,sizes:[.888],stretch:[0,9168,8642],HDW:e.HDW1},8643:{dir:r.V,sizes:[.888],stretch:[0,9168,8643],HDW:e.HDW1},8656:h,8657:{dir:r.V,sizes:[.888],stretch:[8657,8214],HDW:[.599,0,.778]},8658:f,8659:{dir:r.V,sizes:[.888],stretch:[0,8214,8659],HDW:[.6,0,.778]},8660:d,8661:{dir:r.V,sizes:[1.044],stretch:[8657,8214,8659],HDW:[.75,.25,.778]},8666:{dir:r.H,sizes:[1],stretch:[8666,8801],HDW:[.464,-.036,.5]},8667:{dir:r.H,sizes:[1],stretch:[0,8801,8667],HDW:[.464,-.036,.5]},8722:L,8725:T,8730:{dir:r.V,sizes:e.VSIZES,stretch:[57345,57344,9143],HDW:[.85,.35,1.056]},8739:H,8741:{dir:r.V,sizes:[1],stretch:[0,8741],HDW:[.627,.015,.556]},8968:{dir:r.V,sizes:e.VSIZES,stretch:[9121,9122],HDW:e.HDW2},8969:{dir:r.V,sizes:e.VSIZES,stretch:[9124,9125],HDW:e.HDW2},8970:{dir:r.V,sizes:e.VSIZES,stretch:[0,9122,9123],HDW:e.HDW2},8971:{dir:r.V,sizes:e.VSIZES,stretch:[0,9125,9126],HDW:e.HDW2},8978:m,8994:m,8995:y,9001:b,9002:M,9130:{dir:r.V,sizes:[.32],stretch:[9130,9130,9130],HDW:[.29,.015,.889]},9135:a,9136:{dir:r.V,sizes:[.989],stretch:[9127,9130,9133],HDW:[.75,.25,.889]},9137:{dir:r.V,sizes:[.989],stretch:[9131,9130,9129],HDW:[.75,.25,.889]},9140:{dir:r.H,stretch:[9484,8722,9488],HDW:e.HDW3,min:1},9141:{dir:r.H,stretch:[9492,8722,9496],HDW:e.HDW3,min:1},9168:{dir:r.V,sizes:[.602,1],schar:[0,8739],stretch:[0,8739],HDW:[.602,0,.333]},9180:m,9181:y,9182:v,9183:g,9184:{dir:r.H,stretch:[714,713,715],HDW:[.59,-.544,.5],min:1},9185:{dir:r.H,stretch:[715,713,714],HDW:[.59,-.544,.5],min:1},9472:a,10072:H,10216:b,10217:M,10222:{dir:r.V,sizes:[.989],stretch:[9127,9130,9129],HDW:[.75,.25,.889]},10223:{dir:r.V,sizes:[.989],stretch:[9131,9130,9133],HDW:[.75,.25,.889]},10229:s,10230:l,10231:c,10232:h,10233:f,10234:d,10235:u,10236:p,10237:V,10238:x,10502:V,10503:x,10574:{dir:r.H,stretch:[8636,8722,8640],HDW:e.HDW3,min:2},10575:{dir:r.V,stretch:[8638,9168,8642],HDW:e.HDW1,min:1.776},10576:{dir:r.H,stretch:[8637,8722,8641],HDW:e.HDW3,min:2},10577:{dir:r.V,stretch:[8639,9168,8643],HDW:e.HDW1,min:.5},10586:{dir:r.H,stretch:[8636,8722,8739],HDW:e.HDW3,min:1.278},10587:{dir:r.H,stretch:[8739,8722,8640],HDW:e.HDW3,min:1.278},10588:{dir:r.V,stretch:[8638,9168,8869],HDW:e.HDW1,min:1.556},10589:{dir:r.V,stretch:[8868,9168,8642],HDW:e.HDW1,min:1.556},10590:{dir:r.H,stretch:[8637,8722,8739],HDW:e.HDW3,min:1.278},10591:{dir:r.H,stretch:[8739,8722,8641],HDW:e.HDW3,min:1.278},10592:{dir:r.V,stretch:[8639,9168,8869],HDW:e.HDW1,min:1.776},10593:{dir:r.V,stretch:[8868,9168,8643],HDW:e.HDW1,min:1.776},12296:b,12297:M,65079:v,65080:g}},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.FontCache=void 0;var r=function(){function t(t){this.cache=new Map,this.defs=null,this.localID="",this.nextID=0,this.jax=t}return t.prototype.cachePath=function(t,e,Q){var r="MJX-"+this.localID+(this.jax.font.getVariant(t).cacheID||"")+"-"+e;return this.cache.has(r)||(this.cache.set(r,Q),this.jax.adaptor.append(this.defs,this.jax.svg("path",{id:r,d:Q}))),r},t.prototype.clearLocalID=function(){this.localID=""},t.prototype.useLocalID=function(t){void 0===t&&(t=null),this.localID=(null==t?++this.nextID:t)+(""===t?"":"-")},t.prototype.clearCache=function(){this.cache=new Map,this.defs=this.jax.svg("defs")},t.prototype.getCache=function(){return this.defs},t}();e.FontCache=r},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.MJContextMenu=void 0;var i=Q(273),a=Q(103),s=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.mathItem=null,e.annotation="",e.annotationTypes={},e}return T(e,t),e.prototype.post=function(e,Q){if(this.mathItem){if(void 0!==Q){var r=this.mathItem.inputJax.name,T=this.findID("Show","Original");T.content="MathML"===r?"Original MathML":r+" Commands",this.findID("Copy","Original").content=T.content;var n=this.findID("Settings","semantics");"MathML"===r?n.disable():n.enable(),this.getAnnotationMenu(),this.dynamicSubmenus()}t.prototype.post.call(this,e,Q)}},e.prototype.unpost=function(){t.prototype.unpost.call(this),this.mathItem=null},e.prototype.findID=function(){for(var t,e,Q=[],r=0;r=0)return i}}catch(t){e={error:t}}finally{try{o&&!o.done&&(Q=T.return)&&Q.call(T)}finally{if(e)throw e.error}}return null},e.prototype.createAnnotationMenu=function(t,e,Q){var r=this,T=this.findID(t,"Annotation");T.submenu=this.factory.get("subMenu")(this.factory,{items:e.map((function(t){var e=o(t,2),T=e[0],n=e[1];return{type:"command",id:T,content:T,action:function(){r.annotation=n,Q()}}})),id:"annotations"},T),e.length?T.enable():T.disable()},e.prototype.dynamicSubmenus=function(){var t,Q;try{for(var r=n(e.DynamicSubmenus),T=r.next();!T.done;T=r.next()){var i=o(T.value,2),a=i[0],s=i[1],l=this.find(a);if(l){var c=s(this,l);l.submenu=c,c.items.length?l.enable():l.disable()}}}catch(e){t={error:e}}finally{try{T&&!T.done&&(Q=r.return)&&Q.call(r)}finally{if(t)throw t.error}}},e.DynamicSubmenus=new Map,e}(i.ContextMenu);e.MJContextMenu=s},function(t,e,Q){"use strict";var r=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.Menu=void 0;var T=Q(25),n=Q(14),o=Q(1),i=Q(7),a=Q(267),s=Q(269),l=Q(270),c=Q(104),u=Q(301),p=Q(276),h=Q(312),f=o.MathJax,d="undefined"!=typeof window&&window.navigator&&"Mac"===window.navigator.platform.substr(0,3),L=function(){function t(t,e){var Q=this;void 0===e&&(e={}),this.settings=null,this.defaultSettings=null,this.menu=null,this.MmlVisitor=new s.MmlVisitor,this.jax={CHTML:null,SVG:null},this.rerenderStart=n.STATE.LAST,this.about=new c.Info('MathJax v'+T.mathjax.version,(function(){var t=[];return t.push("Input Jax: "+Q.document.inputJax.map((function(t){return t.name})).join(", ")),t.push("Output Jax: "+Q.document.outputJax.name),t.push("Document Type: "+Q.document.kind),t.join("
")}),'www.mathjax.org'),this.help=new c.Info("MathJax Help",(function(){return["

MathJax is a JavaScript library that allows page"," authors to include mathematics within their web pages."," As a reader, you don't need to do anything to make that happen.

","

Browsers: MathJax works with all modern browsers including"," Edge, Firefox, Chrome, Safari, Opera, and most mobile browsers.

","

Math Menu: MathJax adds a contextual menu to equations."," Right-click or CTRL-click on any mathematics to access the menu.

",'
',"

Show Math As: These options allow you to view the formula's"," source markup (as MathML or in its original format).

","

Copy to Clipboard: These options copy the formula's source markup,"," as MathML or in its original format, to the clipboard"," (in browsers that support that).

","

Math Settings: These give you control over features of MathJax,"," such the size of the mathematics, and the mechanism used"," to display equations.

","

Accessibility: MathJax can work with screen"," readers to make mathematics accessible to the visually impaired."," Turn on the explorer to enable generation of speech strings"," and the ability to investigate expressions interactively.

","

Language: This menu lets you select the language used by MathJax"," for its menus and warning messages. (Not yet implemented in version 3.)

","
","

Math Zoom: If you are having difficulty reading an"," equation, MathJax can enlarge it to help you see it better, or"," you can scall all the math on the page to make it larger."," Turn these features on in the Math Settings menu.

","

Preferences: MathJax uses your browser's localStorage database"," to save the preferences set via this menu locally in your browser. These"," are not used to track you, and are not transferred or used remotely by"," MathJax in any way.

"].join("\n")}),'www.mathjax.org'),this.mathmlCode=new l.SelectableInfo("MathJax MathML Expression",(function(){if(!Q.menu.mathItem)return"";var t=Q.toMML(Q.menu.mathItem);return"
"+Q.formatSource(t)+"
"}),""),this.originalText=new l.SelectableInfo("MathJax Original Source",(function(){if(!Q.menu.mathItem)return"";var t=Q.menu.mathItem.math;return'
'+Q.formatSource(t)+"
"}),""),this.annotationText=new l.SelectableInfo("MathJax Annotation Text",(function(){if(!Q.menu.mathItem)return"";var t=Q.menu.annotation;return'
'+Q.formatSource(t)+"
"}),""),this.zoomBox=new c.Info("MathJax Zoomed Expression",(function(){if(!Q.menu.mathItem)return"";var t=Q.menu.mathItem.typesetRoot.cloneNode(!0);return t.style.margin="0",'
'+t.outerHTML+"
"}),""),this.document=t,this.options=i.userOptions(i.defaultOptions({},this.constructor.OPTIONS),e),this.initSettings(),this.mergeUserSettings(),this.initMenu()}return Object.defineProperty(t.prototype,"isLoading",{get:function(){return t.loading>0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"loadingPromise",{get:function(){return this.isLoading?(t._loadingPromise||(t._loadingPromise=new Promise((function(e,Q){t._loadingOK=e,t._loadingFailed=Q}))),t._loadingPromise):Promise.resolve()},enumerable:!1,configurable:!0}),t.prototype.initSettings=function(){this.settings=this.options.settings,this.jax=this.options.jax;var t=this.document.outputJax;this.jax[t.name]=t,this.settings.renderer=t.name,f._.a11y&&f._.a11y.explorer&&Object.assign(this.settings,this.document.options.a11y),this.settings.scale=t.options.scale,this.defaultSettings=Object.assign({},this.settings)},t.prototype.initMenu=function(){var t=this,e=new u.Parser([["contextMenu",a.MJContextMenu.fromJson.bind(a.MJContextMenu)]]);this.menu=e.parse({type:"contextMenu",id:"MathJax_Menu",pool:[this.variable("texHints"),this.variable("semantics"),this.variable("zoom"),this.variable("zscale"),this.variable("renderer",(function(e){return t.setRenderer(e)})),this.variable("alt"),this.variable("cmd"),this.variable("ctrl"),this.variable("shift"),this.variable("scale",(function(e){return t.setScale(e)})),this.variable("explorer",(function(e){return t.setExplorer(e)})),this.a11yVar("highlight"),this.a11yVar("backgroundColor"),this.a11yVar("backgroundOpacity"),this.a11yVar("foregroundColor"),this.a11yVar("foregroundOpacity"),this.a11yVar("speech"),this.a11yVar("subtitles"),this.a11yVar("braille"),this.a11yVar("viewBraille"),this.a11yVar("locale"),this.a11yVar("speechRules"),this.a11yVar("magnification"),this.a11yVar("magnify"),this.a11yVar("treeColoring"),this.a11yVar("infoType"),this.a11yVar("infoRole"),this.a11yVar("infoPrefix"),this.variable("autocollapse"),this.variable("collapsible",(function(e){return t.setCollapsible(e)})),this.variable("inTabOrder",(function(e){return t.setTabOrder(e)})),this.variable("assistiveMml",(function(e){return t.setAssistiveMml(e)}))],items:[this.submenu("Show","Show Math As",[this.command("MathMLcode","MathML Code",(function(){return t.mathmlCode.post()})),this.command("Original","Original Form",(function(){return t.originalText.post()})),this.submenu("Annotation","Annotation")]),this.submenu("Copy","Copy to Clipboard",[this.command("MathMLcode","MathML Code",(function(){return t.copyMathML()})),this.command("Original","Original Form",(function(){return t.copyOriginal()})),this.submenu("Annotation","Annotation")]),this.rule(),this.submenu("Settings","Math Settings",[this.submenu("Renderer","Math Renderer",this.radioGroup("renderer",[["CHTML"],["SVG"]])),this.rule(),this.submenu("ZoomTrigger","Zoom Trigger",[this.command("ZoomNow","Zoom Once Now",(function(){return t.zoom(null,"",t.menu.mathItem)})),this.rule(),this.radioGroup("zoom",[["Click"],["DoubleClick","Double-Click"],["NoZoom","No Zoom"]]),this.rule(),this.label("TriggerRequires","Trigger Requires:"),this.checkbox(d?"Option":"Alt",d?"Option":"Alt","alt"),this.checkbox("Command","Command","cmd",{hidden:!d}),this.checkbox("Control","Control","ctrl",{hiddne:d}),this.checkbox("Shift","Shift","shift")]),this.submenu("ZoomFactor","Zoom Factor",this.radioGroup("zscale",[["150%"],["175%"],["200%"],["250%"],["300%"],["400%"]])),this.rule(),this.command("Scale","Scale All Math...",(function(){return t.scaleAllMath()})),this.rule(),this.checkbox("texHints","Add TeX hints to MathML","texHints"),this.checkbox("semantics","Add original as annotation","semantics"),this.rule(),this.command("Reset","Reset to defaults",(function(){return t.resetDefaults()}))]),this.submenu("Accessibility","Accessibility",[this.checkbox("Activate","Activate","explorer"),this.submenu("Speech","Speech",[this.checkbox("Speech","Speech Output","speech"),this.checkbox("Subtitles","Speech Subtities","subtitles"),this.checkbox("Braille","Braille Output","braille"),this.checkbox("View Braille","Braille Subtitles","viewBraille"),this.rule(),this.submenu("A11yLanguage","Language"),this.rule(),this.submenu("Mathspeak","Mathspeak Rules",this.radioGroup("speechRules",[["mathspeak-default","Verbose"],["mathspeak-brief","Brief"],["mathspeak-sbrief","Superbrief"]])),this.submenu("Clearspeak","Clearspeak Rules",this.radioGroup("speechRules",[["clearspeak-default","Auto"]])),this.submenu("ChromeVox","ChromeVox Rules",this.radioGroup("speechRules",[["default-default","Standard"],["default-alternative","Alternative"]]))]),this.submenu("Highlight","Highlight",[this.submenu("Background","Background",this.radioGroup("backgroundColor",[["Blue"],["Red"],["Green"],["Yellow"],["Cyan"],["Magenta"],["White"],["Black"]])),{type:"slider",variable:"backgroundOpacity",content:" "},this.submenu("Foreground","Foreground",this.radioGroup("foregroundColor",[["Black"],["White"],["Magenta"],["Cyan"],["Yellow"],["Green"],["Red"],["Blue"]])),{type:"slider",variable:"foregroundOpacity",content:" "},this.rule(),this.radioGroup("highlight",[["None"],["Hover"],["Flame"]]),this.rule(),this.checkbox("TreeColoring","Tree Coloring","treeColoring")]),this.submenu("Magnification","Magnification",[this.radioGroup("magnification",[["None"],["Keyboard"],["Mouse"]]),this.rule(),this.radioGroup("magnify",[["200%"],["300%"],["400%"],["500%"]])]),this.submenu("Semantic Info","Semantic Info",[this.checkbox("Type","Type","infoType"),this.checkbox("Role","Role","infoRole"),this.checkbox("Prefix","Prefix","infoPrefix")],!0),this.rule(),this.checkbox("Collapsible","Collapsible Math","collapsible"),this.checkbox("AutoCollapse","Auto Collapse","autocollapse",{disabled:!0}),this.rule(),this.checkbox("InTabOrder","Include in Tab Order","inTabOrder"),this.checkbox("AssistiveMml","Include Hidden MathML","assistiveMml")]),this.submenu("Language","Language"),this.rule(),this.command("About","About MathJax",(function(){return t.about.post()})),this.command("Help","MathJax Help",(function(){return t.help.post()}))]});var Q=this.menu;this.about.attachMenu(Q),this.help.attachMenu(Q),this.originalText.attachMenu(Q),this.annotationText.attachMenu(Q),this.mathmlCode.attachMenu(Q),this.zoomBox.attachMenu(Q),this.checkLoadableItems(),this.enableExplorerItems(this.settings.explorer),Q.showAnnotation=this.annotationText,Q.copyAnnotation=this.copyAnnotation.bind(this),Q.annotationTypes=this.options.annotationTypes,h.CssStyles.addInfoStyles(this.document.document),h.CssStyles.addMenuStyles(this.document.document)},t.prototype.checkLoadableItems=function(){var t,e;if(f&&f._&&f.loader&&f.startup)!this.settings.collapsible||f._.a11y&&f._.a11y.complexity||this.loadA11y("complexity"),!this.settings.explorer||f._.a11y&&f._.a11y.explorer||this.loadA11y("explorer"),!this.settings.assistiveMml||f._.a11y&&f._.a11y["assistive-mml"]||this.loadA11y("assistive-mml");else{var Q=this.menu;try{for(var T=r(Object.keys(this.jax)),n=T.next();!n.done;n=T.next()){var o=n.value;this.jax[o]||Q.findID("Settings","Renderer",o).disable()}}catch(e){t={error:e}}finally{try{n&&!n.done&&(e=T.return)&&e.call(T)}finally{if(t)throw t.error}}Q.findID("Accessibility","Activate").disable(),Q.findID("Accessibility","AutoCollapse").disable(),Q.findID("Accessibility","Collapsible").disable()}},t.prototype.enableExplorerItems=function(t){var e,Q,T=this.menu.findID("Accessibility","Activate").menu;try{for(var n=r(T.items.slice(1)),o=n.next();!o.done;o=n.next()){var i=o.value;if(i instanceof p.Rule)break;t?i.enable():i.disable()}}catch(t){e={error:t}}finally{try{o&&!o.done&&(Q=n.return)&&Q.call(n)}finally{if(e)throw e.error}}},t.prototype.mergeUserSettings=function(){try{var e=localStorage.getItem(t.MENU_STORAGE);if(!e)return;Object.assign(this.settings,JSON.parse(e)),this.setA11y(this.settings)}catch(t){console.log("MathJax localStorage error: "+t.message)}},t.prototype.saveUserSettings=function(){var e,Q,T={};try{for(var n=r(Object.keys(this.settings)),o=n.next();!o.done;o=n.next()){var i=o.value;this.settings[i]!==this.defaultSettings[i]&&(T[i]=this.settings[i])}}catch(t){e={error:t}}finally{try{o&&!o.done&&(Q=n.return)&&Q.call(n)}finally{if(e)throw e.error}}try{Object.keys(T).length?localStorage.setItem(t.MENU_STORAGE,JSON.stringify(T)):localStorage.removeItem(t.MENU_STORAGE)}catch(t){console.log("MathJax localStorage error: "+t.message)}},t.prototype.setA11y=function(t){f._.a11y&&f._.a11y.explorer&&f._.a11y.explorer_ts.setA11yOptions(this.document,t)},t.prototype.getA11y=function(t){if(f._.a11y&&f._.a11y.explorer)return this.document.options.a11y[t]},t.prototype.setScale=function(t){this.document.outputJax.options.scale=parseFloat(t),this.document.rerender()},t.prototype.setRenderer=function(t){var e=this;if(this.jax[t])this.setOutputJax(t);else{var Q=t.toLowerCase();this.loadComponent("output/"+Q,(function(){var r=f.startup;Q in r.constructors&&(r.useOutput(Q,!0),r.output=r.getOutputJax(),e.jax[t]=r.output,e.setOutputJax(t))}))}},t.prototype.setOutputJax=function(t){this.jax[t].setAdaptor(this.document.adaptor),this.document.outputJax=this.jax[t],this.rerender()},t.prototype.setTabOrder=function(t){this.menu.store.inTaborder(t)},t.prototype.setAssistiveMml=function(t){this.document.options.enableAssistiveMml=t,!t||f._.a11y&&f._.a11y["assistive-mml"]?this.rerender():this.loadA11y("assistive-mml")},t.prototype.setExplorer=function(t){this.enableExplorerItems(t),this.document.options.enableExplorer=t,!t||f._.a11y&&f._.a11y.explorer?this.rerender(this.settings.collapsible?n.STATE.RERENDER:n.STATE.COMPILED):this.loadA11y("explorer")},t.prototype.setCollapsible=function(t){this.document.options.enableComplexity=t,!t||f._.a11y&&f._.a11y.complexity?this.rerender(n.STATE.COMPILED):this.loadA11y("complexity")},t.prototype.scaleAllMath=function(){var t=(100*parseFloat(this.settings.scale)).toFixed(1).replace(/.0$/,""),e=prompt("Scale all mathematics (compared to surrounding text) by",t+"%");if(e)if(e.match(/^\s*\d+(\.\d*)?\s*%?\s*$/)){var Q=parseFloat(e)/100;Q?this.setScale(String(Q)):alert("The scale should not be zero")}else alert("The scale should be a percentage (e.g., 120%)")},t.prototype.resetDefaults=function(){var e,Q;t.loading++;var T=this.menu.pool,o=this.defaultSettings;try{for(var i=r(Object.keys(this.settings)),a=i.next();!a.done;a=i.next()){var s=a.value,l=T.lookup(s);if(l){l.setValue(o[s]);var c=l.items[0];c&&c.executeCallbacks_()}else this.settings[s]=o[s]}}catch(t){e={error:t}}finally{try{a&&!a.done&&(Q=i.return)&&Q.call(i)}finally{if(e)throw e.error}}t.loading--,this.rerender(n.STATE.COMPILED)},t.prototype.checkComponent=function(e){var Q=t.loadingPromises.get(e);Q&&T.mathjax.retryAfter(Q)},t.prototype.loadComponent=function(e,Q){if(!t.loadingPromises.has(e)){var r=f.loader;if(r){t.loading++;var T=r.load(e).then((function(){t.loading--,t.loadingPromises.delete(e),Q(),0===t.loading&&t._loadingPromise&&(t._loadingPromise=null,t._loadingOK())})).catch((function(e){t._loadingPromise?(t._loadingPromise=null,t._loadingFailed(e)):console.log(e)}));t.loadingPromises.set(e,T)}}},t.prototype.loadA11y=function(e){var Q=this,r=!n.STATE.ENRICHED;this.loadComponent("a11y/"+e,(function(){var o=f.startup;T.mathjax.handlers.unregister(o.handler),o.handler=o.getHandler(),T.mathjax.handlers.register(o.handler);var i=Q.document;Q.document=o.document=o.getDocument(),Q.document.menu=Q,Q.transferMathList(i),Q.document.processed=i.processed,t._loadingPromise||Q.rerender("complexity"===e||r?n.STATE.COMPILED:n.STATE.TYPESET)}))},t.prototype.transferMathList=function(t){var e,Q,T=this.document.options.MathItem;try{for(var n=r(t.math),o=n.next();!o.done;o=n.next()){var i=o.value,a=new T;Object.assign(a,i),this.document.math.push(a)}}catch(t){e={error:t}}finally{try{o&&!o.done&&(Q=n.return)&&Q.call(n)}finally{if(e)throw e.error}}},t.prototype.formatSource=function(t){return t.trim().replace(/&/g,"&").replace(//g,">")},t.prototype.toMML=function(t){return this.MmlVisitor.visitTree(t.root,t,{texHints:this.settings.texHints,semantics:this.settings.semantics&&"MathML"!==t.inputJax.name})},t.prototype.zoom=function(t,e,Q){t&&!this.isZoomEvent(t,e)||(this.menu.mathItem=Q,t&&this.menu.post(t),this.zoomBox.post())},t.prototype.isZoomEvent=function(t,e){return this.settings.zoom===e&&(!this.settings.alt||t.altKey)&&(!this.settings.ctrl||t.ctrlKey)&&(!this.settings.cmd||t.metaKey)&&(!this.settings.shift||t.shiftKey)},t.prototype.rerender=function(e){void 0===e&&(e=n.STATE.TYPESET),this.rerenderStart=Math.min(e,this.rerenderStart),t.loading||(this.document.rerender(this.rerenderStart),this.rerenderStart=n.STATE.LAST)},t.prototype.copyMathML=function(){this.copyToClipboard(this.toMML(this.menu.mathItem))},t.prototype.copyOriginal=function(){this.copyToClipboard(this.menu.mathItem.math)},t.prototype.copyAnnotation=function(){this.copyToClipboard(this.menu.annotation)},t.prototype.copyToClipboard=function(t){var e=document.createElement("textarea");e.value=t,e.setAttribute("readonly",""),e.style.cssText="height: 1px; width: 1px; padding: 1px; position: absolute; left: -10px",document.body.appendChild(e),e.select();try{document.execCommand("copy")}catch(t){alert("Can't copy to clipboard: "+t.message)}document.body.removeChild(e)},t.prototype.addMenu=function(t){var e=this,Q=t.typesetRoot;Q.addEventListener("contextmenu",(function(){return e.menu.mathItem=t}),!0),Q.addEventListener("keydown",(function(){return e.menu.mathItem=t}),!0),Q.addEventListener("click",(function(Q){return e.zoom(Q,"Click",t)}),!0),Q.addEventListener("dblclick",(function(Q){return e.zoom(Q,"DoubleClick",t)}),!0),this.menu.store.insert(Q)},t.prototype.clear=function(){this.menu.store.clear()},t.prototype.variable=function(t,e){var Q=this;return{name:t,getter:function(){return Q.settings[t]},setter:function(r){Q.settings[t]=r,e&&e(r),Q.saveUserSettings()}}},t.prototype.a11yVar=function(t){var e=this;return{name:t,getter:function(){return e.getA11y(t)},setter:function(Q){e.settings[t]=Q;var r={};r[t]=Q,e.setA11y(r),e.saveUserSettings()}}},t.prototype.submenu=function(t,e,Q,T){var n,o;void 0===Q&&(Q=[]),void 0===T&&(T=!1);var i=[];try{for(var a=r(Q),s=a.next();!s.done;s=a.next()){var l=s.value;Array.isArray(l)?i=i.concat(l):i.push(l)}}catch(t){n={error:t}}finally{try{s&&!s.done&&(o=a.return)&&o.call(a)}finally{if(n)throw n.error}}return{type:"submenu",id:t,content:e,menu:{items:i},disabled:0===i.length||T}},t.prototype.command=function(t,e,Q,r){return void 0===r&&(r={}),Object.assign({type:"command",id:t,content:e,action:Q},r)},t.prototype.checkbox=function(t,e,Q,r){return void 0===r&&(r={}),Object.assign({type:"checkbox",id:t,content:e,variable:Q},r)},t.prototype.radioGroup=function(t,e){var Q=this;return e.map((function(e){return Q.radio(e[0],e[1]||e[0],t)}))},t.prototype.radio=function(t,e,Q,r){return void 0===r&&(r={}),Object.assign({type:"radio",id:t,content:e,variable:Q},r)},t.prototype.label=function(t,e){return{type:"label",id:t,content:e}},t.prototype.rule=function(){return{type:"rule"}},t.MENU_STORAGE="MathJax-Menu-Settings",t.OPTIONS={settings:{texHints:!0,semantics:!1,zoom:"NoZoom",zscale:"200%",renderer:"CHTML",alt:!1,cmd:!1,ctrl:!1,shift:!1,scale:1,autocollapse:!1,collapsible:!1,inTabOrder:!0,assistiveMml:!0,explorer:!1},jax:{CHTML:null,SVG:null},annotationTypes:i.expandable({TeX:["TeX","LaTeX","application/x-tex"],StarMath:["StarMath 5.0"],Maple:["Maple"],ContentMathML:["MathML-Content","application/mathml-content+xml"],OpenMath:["OpenMath"]})},t.loading=0,t.loadingPromises=new Map,t._loadingPromise=null,t._loadingOK=null,t._loadingFailed=null,t}();e.Menu=L},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.MmlVisitor=void 0;var n=Q(83),o=Q(7),i=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.options={texHints:!0,semantics:!1},e.mathItem=null,e}return T(e,t),e.prototype.visitTree=function(t,e,Q){return void 0===e&&(e=null),void 0===Q&&(Q={}),this.mathItem=e,o.userOptions(this.options,Q),this.visitNode(t,"")},e.prototype.visitTeXAtomNode=function(e,Q){return this.options.texHints?t.prototype.visitTeXAtomNode.call(this,e,Q):e.childNodes[0]&&1===e.childNodes[0].childNodes.length?this.visitNode(e.childNodes[0],Q):Q+"\n"+this.childNodeMml(e,Q+" ","\n")+Q+""},e.prototype.visitMathNode=function(e,Q){if(!this.options.semantics||"TeX"!==this.mathItem.inputJax.name)return t.prototype.visitDefault.call(this,e,Q);var r=e.childNodes.length&&e.childNodes[0].childNodes.length>1;return Q+"\n"+Q+" \n"+(r?Q+" \n":"")+this.childNodeMml(e,Q+(r?" ":" "),"\n")+(r?Q+" \n":"")+Q+' '+this.mathItem.math+"\n"+Q+" \n"+Q+""},e}(n.SerializedMmlVisitor);e.MmlVisitor=i},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.SelectableInfo=void 0;var n=Q(104),o=Q(10),i=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.addEvents=function(t){var e=this;t.addEventListener("keypress",(function(t){"a"===t.key&&(t.ctrlKey||t.metaKey)&&(e.selectAll(),e.stop(t))}))},e.prototype.selectAll=function(){document.getSelection().selectAllChildren(this.html.querySelector("pre"))},e.prototype.copyToClipboard=function(){this.selectAll();try{document.execCommand("copy")}catch(t){alert("Can't copy to clipboard: "+t.message)}document.getSelection().removeAllRanges()},e.prototype.generateHtml=function(){var e=this;t.prototype.generateHtml.call(this);var Q=this.html.querySelector("span."+o.HtmlClasses.INFOSIGNATURE).appendChild(document.createElement("input"));Q.type="button",Q.value="Copy to Clipboard",Q.addEventListener("click",(function(t){return e.copyToClipboard()}))},e}(n.Info);e.SelectableInfo=i},function(t,e){var Q;Q=function(){return this}();try{Q=Q||new Function("return this")()}catch(t){"object"==typeof window&&(Q=window)}t.exports=Q},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),Q(19).add({NJcy:"\u040a",Nacute:"\u0143",Ncaron:"\u0147",Ncedil:"\u0145",Ncy:"\u041d",NegativeMediumSpace:"\u200b",NegativeThickSpace:"\u200b",NegativeThinSpace:"\u200b",NegativeVeryThinSpace:"\u200b",NewLine:"\n",NoBreak:"\u2060",NonBreakingSpace:"\xa0",Not:"\u2aec",NotCongruent:"\u2262",NotCupCap:"\u226d",NotEqualTilde:"\u2242\u0338",NotGreaterFullEqual:"\u2267\u0338",NotGreaterGreater:"\u226b\u0338",NotGreaterLess:"\u2279",NotGreaterSlantEqual:"\u2a7e\u0338",NotGreaterTilde:"\u2275",NotHumpDownHump:"\u224e\u0338",NotHumpEqual:"\u224f\u0338",NotLeftTriangleBar:"\u29cf\u0338",NotLessGreater:"\u2278",NotLessLess:"\u226a\u0338",NotLessSlantEqual:"\u2a7d\u0338",NotLessTilde:"\u2274",NotNestedGreaterGreater:"\u2aa2\u0338",NotNestedLessLess:"\u2aa1\u0338",NotPrecedesEqual:"\u2aaf\u0338",NotReverseElement:"\u220c",NotRightTriangleBar:"\u29d0\u0338",NotSquareSubset:"\u228f\u0338",NotSquareSubsetEqual:"\u22e2",NotSquareSuperset:"\u2290\u0338",NotSquareSupersetEqual:"\u22e3",NotSubset:"\u2282\u20d2",NotSucceedsEqual:"\u2ab0\u0338",NotSucceedsTilde:"\u227f\u0338",NotSuperset:"\u2283\u20d2",NotTildeEqual:"\u2244",NotTildeFullEqual:"\u2247",NotTildeTilde:"\u2249",Ntilde:"\xd1",Nu:"\u039d",nGg:"\u22d9\u0338",nGt:"\u226b\u20d2",nGtv:"\u226b\u0338",nLl:"\u22d8\u0338",nLt:"\u226a\u20d2",nLtv:"\u226a\u0338",nabla:"\u2207",nacute:"\u0144",nang:"\u2220\u20d2",nap:"\u2249",napE:"\u2a70\u0338",napid:"\u224b\u0338",napos:"\u0149",napprox:"\u2249",natural:"\u266e",naturals:"\u2115",nbsp:"\xa0",nbump:"\u224e\u0338",nbumpe:"\u224f\u0338",ncap:"\u2a43",ncaron:"\u0148",ncedil:"\u0146",ncong:"\u2247",ncongdot:"\u2a6d\u0338",ncup:"\u2a42",ncy:"\u043d",ndash:"\u2013",ne:"\u2260",neArr:"\u21d7",nearhk:"\u2924",nearrow:"\u2197",nedot:"\u2250\u0338",nequiv:"\u2262",nesear:"\u2928",nesim:"\u2242\u0338",nexist:"\u2204",nexists:"\u2204",ngE:"\u2267\u0338",nge:"\u2271",ngeq:"\u2271",ngeqq:"\u2267\u0338",ngeqslant:"\u2a7e\u0338",nges:"\u2a7e\u0338",ngsim:"\u2275",ngt:"\u226f",ngtr:"\u226f",nhArr:"\u21ce",nhpar:"\u2af2",ni:"\u220b",nis:"\u22fc",nisd:"\u22fa",niv:"\u220b",njcy:"\u045a",nlArr:"\u21cd",nlE:"\u2266\u0338",nldr:"\u2025",nle:"\u2270",nleftarrow:"\u219a",nleftrightarrow:"\u21ae",nleq:"\u2270",nleqq:"\u2266\u0338",nleqslant:"\u2a7d\u0338",nles:"\u2a7d\u0338",nless:"\u226e",nlsim:"\u2274",nlt:"\u226e",nltri:"\u22ea",nltrie:"\u22ec",nmid:"\u2224",notin:"\u2209",notinE:"\u22f9\u0338",notindot:"\u22f5\u0338",notinva:"\u2209",notinvb:"\u22f7",notinvc:"\u22f6",notni:"\u220c",notniva:"\u220c",notnivb:"\u22fe",notnivc:"\u22fd",npar:"\u2226",nparallel:"\u2226",nparsl:"\u2afd\u20e5",npart:"\u2202\u0338",npolint:"\u2a14",npr:"\u2280",nprcue:"\u22e0",npre:"\u2aaf\u0338",nprec:"\u2280",npreceq:"\u2aaf\u0338",nrArr:"\u21cf",nrarrc:"\u2933\u0338",nrarrw:"\u219d\u0338",nrightarrow:"\u219b",nrtri:"\u22eb",nrtrie:"\u22ed",nsc:"\u2281",nsccue:"\u22e1",nsce:"\u2ab0\u0338",nshortmid:"\u2224",nshortparallel:"\u2226",nsim:"\u2241",nsime:"\u2244",nsimeq:"\u2244",nsmid:"\u2224",nspar:"\u2226",nsqsube:"\u22e2",nsqsupe:"\u22e3",nsub:"\u2284",nsubE:"\u2ac5\u0338",nsube:"\u2288",nsubset:"\u2282\u20d2",nsubseteq:"\u2288",nsubseteqq:"\u2ac5\u0338",nsucc:"\u2281",nsucceq:"\u2ab0\u0338",nsup:"\u2285",nsupE:"\u2ac6\u0338",nsupe:"\u2289",nsupset:"\u2283\u20d2",nsupseteq:"\u2289",nsupseteqq:"\u2ac6\u0338",ntgl:"\u2279",ntilde:"\xf1",ntlg:"\u2278",ntriangleleft:"\u22ea",ntrianglelefteq:"\u22ec",ntriangleright:"\u22eb",ntrianglerighteq:"\u22ed",num:"#",numero:"\u2116",numsp:"\u2007",nvHarr:"\u2904",nvap:"\u224d\u20d2",nvge:"\u2265\u20d2",nvgt:">\u20d2",nvinfin:"\u29de",nvlArr:"\u2902",nvle:"\u2264\u20d2",nvlt:"<\u20d2",nvltrie:"\u22b4\u20d2",nvrArr:"\u2903",nvrtrie:"\u22b5\u20d2",nvsim:"\u223c\u20d2",nwArr:"\u21d6",nwarhk:"\u2923",nwarrow:"\u2196",nwnear:"\u2927"},"n")},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.ContextMenu=void 0;var n=Q(101),o=Q(10),i=Q(298),a=Q(299),s=function(t){function e(e){var Q=t.call(this)||this;return Q.factory=e,Q.id="",Q.moving=!1,Q._store=new i.MenuStore(Q),Q.widgets=[],Q.variablePool=new a.VariablePool,Q}return T(e,t),e.fromJson=function(t,e){var Q=e.pool,r=e.items,T=e.id,n=void 0===T?"":T,o=new this(t);o.id=n;var i=t.get("variable");Q.forEach((function(e){return i(t,e,o.pool)}));var a=t.get("items")(t,r,o);return o.items=a,o},e.prototype.generateHtml=function(){this.isPosted()&&this.unpost(),t.prototype.generateHtml.call(this),this._frame=document.createElement("div"),this._frame.classList.add(o.HtmlClasses.MENUFRAME);var e="left: 0px; top: 0px; z-index: 200; width: 100%; height: 100%; border: 0px; padding: 0px; margin: 0px;";this._frame.setAttribute("style","position: absolute; "+e);var Q=document.createElement("div");Q.setAttribute("style","position: fixed; "+e),this._frame.appendChild(Q),Q.addEventListener("mousedown",function(t){this.unpost(),this.unpostWidgets(),this.stop(t)}.bind(this))},e.prototype.display=function(){document.body.appendChild(this.frame),this.frame.appendChild(this.html),this.focus()},e.prototype.escape=function(t){this.unpost(),this.unpostWidgets()},e.prototype.unpost=function(){if(t.prototype.unpost.call(this),!(this.widgets.length>0)){this.frame.parentNode.removeChild(this.frame);var e=this.store;this.moving||e.insertTaborder(),e.active.focus()}},e.prototype.left=function(t){this.move_(this.store.previous())},e.prototype.right=function(t){this.move_(this.store.next())},Object.defineProperty(e.prototype,"frame",{get:function(){return this._frame},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"store",{get:function(){return this._store},enumerable:!1,configurable:!0}),e.prototype.post=function(e,Q){if(void 0!==Q)return this.moving||this.store.removeTaborder(),void t.prototype.post.call(this,e,Q);var r,T,n,o=e;if(o instanceof Event?(r=o.target,this.stop(o)):r=o,o instanceof MouseEvent&&(T=o.pageX,n=o.pageY,T||n||!o.clientX||(T=o.clientX+document.body.scrollLeft+document.documentElement.scrollLeft,n=o.clientY+document.body.scrollTop+document.documentElement.scrollTop)),!T&&!n&&r){var i=window.pageXOffset||document.documentElement.scrollLeft,a=window.pageYOffset||document.documentElement.scrollTop,s=r.getBoundingClientRect();T=(s.right+s.left)/2+i,n=(s.bottom+s.top)/2+a}this.store.active=r,this.anchor=this.store.active;var l=this.html;T+l.offsetWidth>document.body.offsetWidth-5&&(T=document.body.offsetWidth-l.offsetWidth-5),this.post(T,n)},e.prototype.registerWidget=function(t){this.widgets.push(t)},e.prototype.unregisterWidget=function(t){var e=this.widgets.indexOf(t);e>-1&&this.widgets.splice(e,1),0===this.widgets.length&&this.unpost()},e.prototype.unpostWidgets=function(){this.widgets.forEach((function(t){return t.unpost()}))},e.prototype.toJson=function(){return{type:""}},e.prototype.move_=function(t){this.anchor&&t!==this.anchor&&(this.moving=!0,this.unpost(),this.post(t),this.moving=!1)},e}(n.AbstractMenu);e.ContextMenu=s},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.MenuElement=void 0;var n=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return T(e,t),e.prototype.addAttributes=function(t){for(var e in t)this.html.setAttribute(e,t[e])},Object.defineProperty(e.prototype,"html",{get:function(){return this._html||this.generateHtml(),this._html},set:function(t){this._html=t,this.addEvents(t)},enumerable:!1,configurable:!0}),e.prototype.generateHtml=function(){var t=document.createElement("div");t.classList.add(this.className),t.setAttribute("role",this.role),this.html=t},e.prototype.focus=function(){var t=this.html;t.setAttribute("tabindex","0"),t.focus()},e.prototype.unfocus=function(){var t=this.html;t.hasAttribute("tabindex")&&t.setAttribute("tabindex","-1");try{t.blur()}catch(t){}t.blur()},e}(Q(296).AbstractNavigatable);e.MenuElement=n},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractEntry=void 0;var n=Q(274),o=Q(10),i=function(t){function e(e,Q){var r=t.call(this)||this;return r._menu=e,r._type=Q,r.className=o.HtmlClasses.MENUITEM,r.role="menuitem",r.hidden=!1,r}return T(e,t),Object.defineProperty(e.prototype,"menu",{get:function(){return this._menu},set:function(t){this._menu=t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"type",{get:function(){return this._type},enumerable:!1,configurable:!0}),e.prototype.hide=function(){this.hidden=!0,this.menu.generateMenu()},e.prototype.show=function(){this.hidden=!1,this.menu.generateMenu()},e.prototype.isHidden=function(){return this.hidden},e}(n.MenuElement);e.AbstractEntry=i},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)});Object.defineProperty(e,"__esModule",{value:!0}),e.Rule=void 0;var n=Q(275),o=Q(10),i=function(t){function e(e){var Q=t.call(this,e,"rule")||this;return Q.className=o.HtmlClasses.MENUITEM,Q.role="separator",Q}return T(e,t),e.fromJson=function(t,e,Q){return new this(Q)},e.prototype.generateHtml=function(){t.prototype.generateHtml.call(this);var e=this.html;e.classList.add(o.HtmlClasses.MENURULE),e.setAttribute("aria-orientation","vertical")},e.prototype.addEvents=function(t){},e.prototype.toJson=function(){return{type:"rule"}},e}(n.AbstractEntry);e.Rule=i},function(t,e,Q){"use strict";(function(t){var r=this&&this.__assign||function(){return(r=Object.assign||function(t){for(var e,Q=1,r=arguments.length;Q=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.CONFIG=e.MathJax=e.Startup=void 0;var n,o=Q(1),i=Q(21);!function(Q){var n,o,s=new i.PrioritizedList;function l(t){return n.visitTree(t,Q.document)}function c(){n=new e.MathJax._.core.MmlTree.SerializedMmlVisitor.SerializedMmlVisitor,o=e.MathJax._.mathjax.mathjax,Q.input=L(),Q.output=H(),Q.adaptor=m(),Q.handler&&o.handlers.unregister(Q.handler),Q.handler=y(),Q.handler&&(o.handlers.register(Q.handler),Q.document=v())}function u(){var t,e;Q.input&&Q.output&&p();var r=Q.output?Q.output.name.toLowerCase():"";try{for(var n=T(Q.input),o=n.next();!o.done;o=n.next()){var i=o.value,a=i.name.toLowerCase();f(a,i),d(a,i),Q.output&&h(a,r,i)}}catch(e){t={error:e}}finally{try{o&&!o.done&&(e=n.return)&&e.call(n)}finally{if(t)throw t.error}}}function p(){e.MathJax.typeset=function(t){void 0===t&&(t=null),Q.document.options.elements=t,Q.document.reset(),Q.document.render()},e.MathJax.typesetPromise=function(t){return void 0===t&&(t=null),Q.document.options.elements=t,Q.document.reset(),o.handleRetriesFor((function(){Q.document.render()}))},e.MathJax.typesetClear=function(t){void 0===t&&(t=null),t?Q.document.clearMathItemsWithin(t):Q.document.clear()}}function h(t,r,T){var n=t+"2"+r;e.MathJax[n]=function(t,e){return void 0===e&&(e={}),e.format=T.name,Q.document.convert(t,e)},e.MathJax[n+"Promise"]=function(t,e){return void 0===e&&(e={}),e.format=T.name,o.handleRetriesFor((function(){return Q.document.convert(t,e)}))},e.MathJax[r+"Stylesheet"]=function(){return Q.output.styleSheet(Q.document)},"getMetricsFor"in Q.output&&(e.MathJax.getMetricsFor=function(t,e){return Q.output.getMetricsFor(t,e)})}function f(t,r){var T=e.MathJax._.core.MathItem.STATE;e.MathJax[t+"2mml"]=function(t,e){return void 0===e&&(e={}),e.end=T.CONVERT,e.format=r.name,l(Q.document.convert(t,e))},e.MathJax[t+"2mmlPromise"]=function(t,e){return void 0===e&&(e={}),e.end=T.CONVERT,e.format=r.name,o.handleRetriesFor((function(){return l(Q.document.convert(t,e))}))}}function d(t,Q){"tex"===t&&(e.MathJax.texReset=function(t){return void 0===t&&(t=0),Q.parseOptions.tags.reset(t)})}function L(){var t,r,n=[];try{for(var o=T(e.CONFIG.input),i=o.next();!i.done;i=o.next()){var a=i.value,s=Q.constructors[a];if(!s)throw Error('Input Jax "'+a+'" is not defined (has it been loaded?)');n.push(new s(e.MathJax.config[a]))}}catch(e){t={error:e}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(t)throw t.error}}return n}function H(){var t=e.CONFIG.output;if(!t)return null;var r=Q.constructors[t];if(!r)throw Error('Output Jax "'+t+'" is not defined (has it been loaded?)');return new r(e.MathJax.config[t])}function m(){var t=e.CONFIG.adaptor;if(!t||"none"===t)return null;var r=Q.constructors[t];if(!r)throw Error('DOMAdaptor "'+t+'" is not defined (has it been loaded?)');return r(e.MathJax.config[t])}function y(){var t,r,n=e.CONFIG.handler;if(!n||"none"===n||!Q.adaptor)return null;var o=Q.constructors[n];if(!o)throw Error('Handler "'+n+'" is not defined (has it been loaded?)');var i=new o(Q.adaptor,5);try{for(var a=T(s),l=a.next();!l.done;l=a.next()){i=l.value.item(i)}}catch(e){t={error:e}}finally{try{l&&!l.done&&(r=a.return)&&r.call(a)}finally{if(t)throw t.error}}return i}function v(t){return void 0===t&&(t=null),o.document(t||e.CONFIG.document,r(r({},e.MathJax.config.options),{InputJax:Q.input,OutputJax:Q.output}))}Q.constructors={},Q.input=[],Q.output=null,Q.handler=null,Q.adaptor=null,Q.elements=null,Q.document=null,Q.promise=new Promise((function(t,e){Q.promiseResolve=t,Q.promiseReject=e})),Q.pagePromise=new Promise((function(e,Q){var r=t.document;if(r&&r.readyState&&"complete"!==r.readyState&&"interactive"!==r.readyState){var T=function(){return e()};r.defaultView.addEventListener("load",T,!0),r.defaultView.addEventListener("DOMContentLoaded",T,!0)}else e()})),Q.toMML=l,Q.registerConstructor=function(t,e){Q.constructors[t]=e},Q.useHandler=function(t,Q){void 0===Q&&(Q=!1),e.CONFIG.handler&&!Q||(e.CONFIG.handler=t)},Q.useAdaptor=function(t,Q){void 0===Q&&(Q=!1),e.CONFIG.adaptor&&!Q||(e.CONFIG.adaptor=t)},Q.useInput=function(t,Q){void 0===Q&&(Q=!1),a&&!Q||e.CONFIG.input.push(t)},Q.useOutput=function(t,Q){void 0===Q&&(Q=!1),e.CONFIG.output&&!Q||(e.CONFIG.output=t)},Q.extendHandler=function(t,e){void 0===e&&(e=10),s.add(t,e)},Q.defaultReady=function(){c(),u(),Q.pagePromise.then((function(){return e.CONFIG.pageReady()})).then((function(){return Q.promiseResolve()})).catch((function(t){return Q.promiseReject(t)}))},Q.defaultPageReady=function(){return e.CONFIG.typeset&&e.MathJax.typesetPromise?e.MathJax.typesetPromise(e.CONFIG.elements):Promise.resolve()},Q.getComponents=c,Q.makeMethods=u,Q.makeTypesetMethods=p,Q.makeOutputMethods=h,Q.makeMmlMethods=f,Q.makeResetMethod=d,Q.getInputJax=L,Q.getOutputJax=H,Q.getAdaptor=m,Q.getHandler=y,Q.getDocument=v}(n=e.Startup||(e.Startup={})),e.MathJax=o.MathJax,void 0===e.MathJax._.startup&&(o.combineDefaults(e.MathJax.config,"startup",{input:[],output:"",handler:null,adaptor:null,document:"undefined"==typeof document?"":document,elements:null,typeset:!0,ready:n.defaultReady.bind(n),pageReady:n.defaultPageReady.bind(n)}),o.combineWithMathJax({startup:n,options:{}})),e.CONFIG=e.MathJax.config.startup;var a=0!==e.CONFIG.input.length}).call(this,Q(271))},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.MathMLVisitor=void 0;var o=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.document=null,e}return T(e,t),e.prototype.visitTree=function(t,e){this.document=e;var Q=e.createElement("top");return this.visitNode(t,Q),this.document=null,Q.firstChild},e.prototype.visitTextNode=function(t,e){e.appendChild(this.document.createTextNode(t.getText()))},e.prototype.visitXMLNode=function(t,e){e.appendChild(t.getXML().cloneNode(!0))},e.prototype.visitInferredMrowNode=function(t,e){var Q,r;try{for(var T=n(t.childNodes),o=T.next();!o.done;o=T.next()){var i=o.value;this.visitNode(i,e)}}catch(t){Q={error:t}}finally{try{o&&!o.done&&(r=T.return)&&r.call(T)}finally{if(Q)throw Q.error}}},e.prototype.visitDefault=function(t,e){var Q,r,T=this.document.createElement(t.kind);this.addAttributes(t,T);try{for(var o=n(t.childNodes),i=o.next();!i.done;i=o.next()){var a=i.value;this.visitNode(a,T)}}catch(t){Q={error:t}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(Q)throw Q.error}}e.appendChild(T)},e.prototype.addAttributes=function(t,e){var Q,r,T=t.attributes,o=T.getExplicitNames();try{for(var i=n(o),a=i.next();!a.done;a=i.next()){var s=a.value;e.setAttribute(s,T.getExplicit(s).toString())}}catch(t){Q={error:t}}finally{try{a&&!a.done&&(r=i.return)&&r.call(i)}finally{if(Q)throw Q.error}}},e}(Q(82).MmlVisitor);e.MathMLVisitor=o},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.RegisterHTMLHandler=void 0;var r=Q(25),T=Q(49);e.RegisterHTMLHandler=function(t){var e=new T.HTMLHandler(t);return r.mathjax.handlers.register(e),e}},function(t,e,Q){"use strict";var r=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},T=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.AutoloadConfiguration=void 0;var n=Q(2),o=Q(3),i=Q(26),a=Q(91),s=Q(29),l=Q(7);function c(t,e,Q,n){var o,i,l,c;if(s.Package.packages.has(t.options.require.prefix+Q)){var h=t.options.autoload[Q],f=r(2===h.length&&Array.isArray(h[0])?h:[h,[]],2),d=f[0],L=f[1];try{for(var H=T(d),m=H.next();!m.done;m=H.next()){var y=m.value;u.remove(y)}}catch(t){o={error:t}}finally{try{m&&!m.done&&(i=H.return)&&i.call(H)}finally{if(o)throw o.error}}try{for(var v=T(L),g=v.next();!g.done;g=v.next()){var b=g.value;p.remove(b)}}catch(t){l={error:t}}finally{try{g&&!g.done&&(c=v.return)&&c.call(v)}finally{if(l)throw l.error}}t.string=(n?e:"\\begin{"+e.slice(1)+"}")+t.string.slice(t.i),t.i=0}a.RequireLoad(t,Q)}var u=new o.CommandMap("autoload-macros",{},{}),p=new o.CommandMap("autoload-environments",{},{});e.AutoloadConfiguration=n.Configuration.create("autoload",{handler:{macro:["autoload-macros"],environment:["autoload-environments"]},options:{autoload:l.expandable({action:["toggle","mathtip","texttip"],amscd:[[],["CD"]],bbox:["bbox"],boldsymbol:["boldsymbol"],braket:["bra","ket","braket","set","Bra","Ket","Braket","Set","ketbra","Ketbra"],bussproofs:[[],["prooftree"]],cancel:["cancel","bcancel","xcancel","cancelto"],color:["color","definecolor","textcolor","colorbox","fcolorbox"],enclose:["enclose"],extpfeil:["xtwoheadrightarrow","xtwoheadleftarrow","xmapsto","xlongequal","xtofrom","Newextarrow"],html:["href","class","style","cssId"],mhchem:["ce","pu"],newcommand:["newcommand","renewcommand","newenvironment","renewenvironment","def","let"],unicode:["unicode"],verb:["verb"]})},config:function(t,e){var Q,n,o,s,l,h,f=e.parseOptions,d=f.handlers.get("macro"),L=f.handlers.get("environment"),H=f.options.autoload;f.packageData.set("autoload",{Autoload:c});try{for(var m=T(Object.keys(H)),y=m.next();!y.done;y=m.next()){var v=y.value,g=H[v],b=r(2===g.length&&Array.isArray(g[0])?g:[g,[]],2),M=b[0],V=b[1];try{for(var x=(o=void 0,T(M)),O=x.next();!O.done;O=x.next()){var _=O.value;d.lookup(_)&&"color"!==_||u.add(_,new i.Macro(_,c,[v,!0]))}}catch(t){o={error:t}}finally{try{O&&!O.done&&(s=x.return)&&s.call(x)}finally{if(o)throw o.error}}try{for(var S=(l=void 0,T(V)),E=S.next();!E.done;E=S.next()){var C=E.value;L.lookup(C)||p.add(C,new i.Macro(C,c,[v,!1]))}}catch(t){l={error:t}}finally{try{E&&!E.done&&(h=S.return)&&h.call(S)}finally{if(l)throw l.error}}}}catch(t){Q={error:t}}finally{try{y&&!y.done&&(n=m.return)&&n.call(m)}finally{if(Q)throw Q.error}}f.packageData.get("require")||a.RequireConfiguration.config(t,e)},init:function(t){t.options.require||l.defaultOptions(t.options,a.RequireConfiguration.options)},priority:10})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=Q(3),T=Q(13),n=Q(16),o=Q(23),i=Q(0);new r.RegExpMap("letter",o.default.variable,/[a-z]/i),new r.RegExpMap("digit",o.default.digit,/[0-9.,]/),new r.RegExpMap("command",o.default.controlSequence,/^\\/),new r.MacroMap("special",{"{":"Open","}":"Close","~":"Tilde","^":"Superscript",_:"Subscript"," ":"Space","\t":"Space","\r":"Space","\n":"Space","'":"Prime","%":"Comment","&":"Entry","#":"Hash","\xa0":"Space","\u2019":"Prime"},n.default),new r.CharacterMap("mathchar0mi",o.default.mathchar0mi,{alpha:"\u03b1",beta:"\u03b2",gamma:"\u03b3",delta:"\u03b4",epsilon:"\u03f5",zeta:"\u03b6",eta:"\u03b7",theta:"\u03b8",iota:"\u03b9",kappa:"\u03ba",lambda:"\u03bb",mu:"\u03bc",nu:"\u03bd",xi:"\u03be",omicron:"\u03bf",pi:"\u03c0",rho:"\u03c1",sigma:"\u03c3",tau:"\u03c4",upsilon:"\u03c5",phi:"\u03d5",chi:"\u03c7",psi:"\u03c8",omega:"\u03c9",varepsilon:"\u03b5",vartheta:"\u03d1",varpi:"\u03d6",varrho:"\u03f1",varsigma:"\u03c2",varphi:"\u03c6",S:["\xa7",{mathvariant:T.TexConstant.Variant.NORMAL}],aleph:["\u2135",{mathvariant:T.TexConstant.Variant.NORMAL}],hbar:["\u210f",{variantForm:!0}],imath:"\u0131",jmath:"\u0237",ell:"\u2113",wp:["\u2118",{mathvariant:T.TexConstant.Variant.NORMAL}],Re:["\u211c",{mathvariant:T.TexConstant.Variant.NORMAL}],Im:["\u2111",{mathvariant:T.TexConstant.Variant.NORMAL}],partial:["\u2202",{mathvariant:T.TexConstant.Variant.ITALIC}],infty:["\u221e",{mathvariant:T.TexConstant.Variant.NORMAL}],prime:["\u2032",{mathvariant:T.TexConstant.Variant.NORMAL,variantForm:!0}],emptyset:["\u2205",{mathvariant:T.TexConstant.Variant.NORMAL}],nabla:["\u2207",{mathvariant:T.TexConstant.Variant.NORMAL}],top:["\u22a4",{mathvariant:T.TexConstant.Variant.NORMAL}],bot:["\u22a5",{mathvariant:T.TexConstant.Variant.NORMAL}],angle:["\u2220",{mathvariant:T.TexConstant.Variant.NORMAL}],triangle:["\u25b3",{mathvariant:T.TexConstant.Variant.NORMAL}],backslash:["\u2216",{mathvariant:T.TexConstant.Variant.NORMAL,variantForm:!0}],forall:["\u2200",{mathvariant:T.TexConstant.Variant.NORMAL}],exists:["\u2203",{mathvariant:T.TexConstant.Variant.NORMAL}],neg:["\xac",{mathvariant:T.TexConstant.Variant.NORMAL}],lnot:["\xac",{mathvariant:T.TexConstant.Variant.NORMAL}],flat:["\u266d",{mathvariant:T.TexConstant.Variant.NORMAL}],natural:["\u266e",{mathvariant:T.TexConstant.Variant.NORMAL}],sharp:["\u266f",{mathvariant:T.TexConstant.Variant.NORMAL}],clubsuit:["\u2663",{mathvariant:T.TexConstant.Variant.NORMAL}],diamondsuit:["\u2662",{mathvariant:T.TexConstant.Variant.NORMAL}],heartsuit:["\u2661",{mathvariant:T.TexConstant.Variant.NORMAL}],spadesuit:["\u2660",{mathvariant:T.TexConstant.Variant.NORMAL}]}),new r.CharacterMap("mathchar0mo",o.default.mathchar0mo,{surd:"\u221a",coprod:["\u2210",{texClass:i.TEXCLASS.OP,movesupsub:!0}],bigvee:["\u22c1",{texClass:i.TEXCLASS.OP,movesupsub:!0}],bigwedge:["\u22c0",{texClass:i.TEXCLASS.OP,movesupsub:!0}],biguplus:["\u2a04",{texClass:i.TEXCLASS.OP,movesupsub:!0}],bigcap:["\u22c2",{texClass:i.TEXCLASS.OP,movesupsub:!0}],bigcup:["\u22c3",{texClass:i.TEXCLASS.OP,movesupsub:!0}],int:["\u222b",{texClass:i.TEXCLASS.OP}],intop:["\u222b",{texClass:i.TEXCLASS.OP,movesupsub:!0,movablelimits:!0}],iint:["\u222c",{texClass:i.TEXCLASS.OP}],iiint:["\u222d",{texClass:i.TEXCLASS.OP}],prod:["\u220f",{texClass:i.TEXCLASS.OP,movesupsub:!0}],sum:["\u2211",{texClass:i.TEXCLASS.OP,movesupsub:!0}],bigotimes:["\u2a02",{texClass:i.TEXCLASS.OP,movesupsub:!0}],bigoplus:["\u2a01",{texClass:i.TEXCLASS.OP,movesupsub:!0}],bigodot:["\u2a00",{texClass:i.TEXCLASS.OP,movesupsub:!0}],oint:["\u222e",{texClass:i.TEXCLASS.OP}],bigsqcup:["\u2a06",{texClass:i.TEXCLASS.OP,movesupsub:!0}],smallint:["\u222b",{largeop:!1}],triangleleft:"\u25c3",triangleright:"\u25b9",bigtriangleup:"\u25b3",bigtriangledown:"\u25bd",wedge:"\u2227",land:"\u2227",vee:"\u2228",lor:"\u2228",cap:"\u2229",cup:"\u222a",ddagger:"\u2021",dagger:"\u2020",sqcap:"\u2293",sqcup:"\u2294",uplus:"\u228e",amalg:"\u2a3f",diamond:"\u22c4",bullet:"\u2219",wr:"\u2240",div:"\xf7",odot:["\u2299",{largeop:!1}],oslash:["\u2298",{largeop:!1}],otimes:["\u2297",{largeop:!1}],ominus:["\u2296",{largeop:!1}],oplus:["\u2295",{largeop:!1}],mp:"\u2213",pm:"\xb1",circ:"\u2218",bigcirc:"\u25ef",setminus:"\u2216",cdot:"\u22c5",ast:"\u2217",times:"\xd7",star:"\u22c6",propto:"\u221d",sqsubseteq:"\u2291",sqsupseteq:"\u2292",parallel:"\u2225",mid:"\u2223",dashv:"\u22a3",vdash:"\u22a2",leq:"\u2264",le:"\u2264",geq:"\u2265",ge:"\u2265",lt:"<",gt:">",succ:"\u227b",prec:"\u227a",approx:"\u2248",succeq:"\u2ab0",preceq:"\u2aaf",supset:"\u2283",subset:"\u2282",supseteq:"\u2287",subseteq:"\u2286",in:"\u2208",ni:"\u220b",notin:"\u2209",owns:"\u220b",gg:"\u226b",ll:"\u226a",sim:"\u223c",simeq:"\u2243",perp:"\u22a5",equiv:"\u2261",asymp:"\u224d",smile:"\u2323",frown:"\u2322",ne:"\u2260",neq:"\u2260",cong:"\u2245",doteq:"\u2250",bowtie:"\u22c8",models:"\u22a8",notChar:"\u29f8",Leftrightarrow:"\u21d4",Leftarrow:"\u21d0",Rightarrow:"\u21d2",leftrightarrow:"\u2194",leftarrow:"\u2190",gets:"\u2190",rightarrow:"\u2192",to:["\u2192",{accent:!1}],mapsto:"\u21a6",leftharpoonup:"\u21bc",leftharpoondown:"\u21bd",rightharpoonup:"\u21c0",rightharpoondown:"\u21c1",nearrow:"\u2197",searrow:"\u2198",nwarrow:"\u2196",swarrow:"\u2199",rightleftharpoons:"\u21cc",hookrightarrow:"\u21aa",hookleftarrow:"\u21a9",longleftarrow:"\u27f5",Longleftarrow:"\u27f8",longrightarrow:"\u27f6",Longrightarrow:"\u27f9",Longleftrightarrow:"\u27fa",longleftrightarrow:"\u27f7",longmapsto:"\u27fc",ldots:"\u2026",cdots:"\u22ef",vdots:"\u22ee",ddots:"\u22f1",dotsc:"\u2026",dotsb:"\u22ef",dotsm:"\u22ef",dotsi:"\u22ef",dotso:"\u2026",ldotp:[".",{texClass:i.TEXCLASS.PUNCT}],cdotp:["\u22c5",{texClass:i.TEXCLASS.PUNCT}],colon:[":",{texClass:i.TEXCLASS.PUNCT}]}),new r.CharacterMap("mathchar7",o.default.mathchar7,{Gamma:"\u0393",Delta:"\u0394",Theta:"\u0398",Lambda:"\u039b",Xi:"\u039e",Pi:"\u03a0",Sigma:"\u03a3",Upsilon:"\u03a5",Phi:"\u03a6",Psi:"\u03a8",Omega:"\u03a9",_:"_","#":"#",$:"$","%":"%","&":"&",And:"&"}),new r.DelimiterMap("delimiter",o.default.delimiter,{"(":"(",")":")","[":"[","]":"]","<":"\u27e8",">":"\u27e9","\\lt":"\u27e8","\\gt":"\u27e9","/":"/","|":["|",{texClass:i.TEXCLASS.ORD}],".":"","\\\\":"\\","\\lmoustache":"\u23b0","\\rmoustache":"\u23b1","\\lgroup":"\u27ee","\\rgroup":"\u27ef","\\arrowvert":"\u23d0","\\Arrowvert":"\u2016","\\bracevert":"\u23aa","\\Vert":["\u2225",{texClass:i.TEXCLASS.ORD}],"\\|":["\u2225",{texClass:i.TEXCLASS.ORD}],"\\vert":["|",{texClass:i.TEXCLASS.ORD}],"\\uparrow":"\u2191","\\downarrow":"\u2193","\\updownarrow":"\u2195","\\Uparrow":"\u21d1","\\Downarrow":"\u21d3","\\Updownarrow":"\u21d5","\\backslash":"\\","\\rangle":"\u27e9","\\langle":"\u27e8","\\rbrace":"}","\\lbrace":"{","\\}":"}","\\{":"{","\\rceil":"\u2309","\\lceil":"\u2308","\\rfloor":"\u230b","\\lfloor":"\u230a","\\lbrack":"[","\\rbrack":"]"}),new r.CommandMap("macros",{displaystyle:["SetStyle","D",!0,0],textstyle:["SetStyle","T",!1,0],scriptstyle:["SetStyle","S",!1,1],scriptscriptstyle:["SetStyle","SS",!1,2],rm:["SetFont",T.TexConstant.Variant.NORMAL],mit:["SetFont",T.TexConstant.Variant.ITALIC],oldstyle:["SetFont",T.TexConstant.Variant.OLDSTYLE],cal:["SetFont",T.TexConstant.Variant.CALLIGRAPHIC],it:["SetFont","-tex-mathit"],bf:["SetFont",T.TexConstant.Variant.BOLD],bbFont:["SetFont",T.TexConstant.Variant.DOUBLESTRUCK],scr:["SetFont",T.TexConstant.Variant.SCRIPT],frak:["SetFont",T.TexConstant.Variant.FRAKTUR],sf:["SetFont",T.TexConstant.Variant.SANSSERIF],tt:["SetFont",T.TexConstant.Variant.MONOSPACE],tiny:["SetSize",.5],Tiny:["SetSize",.6],scriptsize:["SetSize",.7],small:["SetSize",.85],normalsize:["SetSize",1],large:["SetSize",1.2],Large:["SetSize",1.44],LARGE:["SetSize",1.73],huge:["SetSize",2.07],Huge:["SetSize",2.49],arcsin:["NamedFn"],arccos:["NamedFn"],arctan:["NamedFn"],arg:["NamedFn"],cos:["NamedFn"],cosh:["NamedFn"],cot:["NamedFn"],coth:["NamedFn"],csc:["NamedFn"],deg:["NamedFn"],det:"NamedOp",dim:["NamedFn"],exp:["NamedFn"],gcd:"NamedOp",hom:["NamedFn"],inf:"NamedOp",ker:["NamedFn"],lg:["NamedFn"],lim:"NamedOp",liminf:["NamedOp","lim inf"],limsup:["NamedOp","lim sup"],ln:["NamedFn"],log:["NamedFn"],max:"NamedOp",min:"NamedOp",Pr:"NamedOp",sec:["NamedFn"],sin:["NamedFn"],sinh:["NamedFn"],sup:"NamedOp",tan:["NamedFn"],tanh:["NamedFn"],limits:["Limits",1],nolimits:["Limits",0],overline:["UnderOver","00AF",null,1],underline:["UnderOver","005F"],overbrace:["UnderOver","23DE",1],underbrace:["UnderOver","23DF",1],overparen:["UnderOver","23DC"],underparen:["UnderOver","23DD"],overrightarrow:["UnderOver","2192"],underrightarrow:["UnderOver","2192"],overleftarrow:["UnderOver","2190"],underleftarrow:["UnderOver","2190"],overleftrightarrow:["UnderOver","2194"],underleftrightarrow:["UnderOver","2194"],overset:"Overset",underset:"Underset",stackrel:["Macro","\\mathrel{\\mathop{#2}\\limits^{#1}}",2],over:"Over",overwithdelims:"Over",atop:"Over",atopwithdelims:"Over",above:"Over",abovewithdelims:"Over",brace:["Over","{","}"],brack:["Over","[","]"],choose:["Over","(",")"],frac:"Frac",sqrt:"Sqrt",root:"Root",uproot:["MoveRoot","upRoot"],leftroot:["MoveRoot","leftRoot"],left:"LeftRight",right:"LeftRight",middle:"Middle",llap:"Lap",rlap:"Lap",raise:"RaiseLower",lower:"RaiseLower",moveleft:"MoveLeftRight",moveright:"MoveLeftRight",",":["Spacer",T.TexConstant.Length.THINMATHSPACE],":":["Spacer",T.TexConstant.Length.MEDIUMMATHSPACE],">":["Spacer",T.TexConstant.Length.MEDIUMMATHSPACE],";":["Spacer",T.TexConstant.Length.THICKMATHSPACE],"!":["Spacer",T.TexConstant.Length.NEGATIVETHINMATHSPACE],enspace:["Spacer",".5em"],quad:["Spacer","1em"],qquad:["Spacer","2em"],thinspace:["Spacer",T.TexConstant.Length.THINMATHSPACE],negthinspace:["Spacer",T.TexConstant.Length.NEGATIVETHINMATHSPACE],hskip:"Hskip",hspace:"Hskip",kern:"Hskip",mskip:"Hskip",mspace:"Hskip",mkern:"Hskip",rule:"rule",Rule:["Rule"],Space:["Rule","blank"],big:["MakeBig",i.TEXCLASS.ORD,.85],Big:["MakeBig",i.TEXCLASS.ORD,1.15],bigg:["MakeBig",i.TEXCLASS.ORD,1.45],Bigg:["MakeBig",i.TEXCLASS.ORD,1.75],bigl:["MakeBig",i.TEXCLASS.OPEN,.85],Bigl:["MakeBig",i.TEXCLASS.OPEN,1.15],biggl:["MakeBig",i.TEXCLASS.OPEN,1.45],Biggl:["MakeBig",i.TEXCLASS.OPEN,1.75],bigr:["MakeBig",i.TEXCLASS.CLOSE,.85],Bigr:["MakeBig",i.TEXCLASS.CLOSE,1.15],biggr:["MakeBig",i.TEXCLASS.CLOSE,1.45],Biggr:["MakeBig",i.TEXCLASS.CLOSE,1.75],bigm:["MakeBig",i.TEXCLASS.REL,.85],Bigm:["MakeBig",i.TEXCLASS.REL,1.15],biggm:["MakeBig",i.TEXCLASS.REL,1.45],Biggm:["MakeBig",i.TEXCLASS.REL,1.75],mathord:["TeXAtom",i.TEXCLASS.ORD],mathop:["TeXAtom",i.TEXCLASS.OP],mathopen:["TeXAtom",i.TEXCLASS.OPEN],mathclose:["TeXAtom",i.TEXCLASS.CLOSE],mathbin:["TeXAtom",i.TEXCLASS.BIN],mathrel:["TeXAtom",i.TEXCLASS.REL],mathpunct:["TeXAtom",i.TEXCLASS.PUNCT],mathinner:["TeXAtom",i.TEXCLASS.INNER],vcenter:["TeXAtom",i.TEXCLASS.VCENTER],buildrel:"BuildRel",hbox:["HBox",0],text:"HBox",mbox:["HBox",0],fbox:"FBox",strut:"Strut",mathstrut:["Macro","\\vphantom{(}"],phantom:"Phantom",vphantom:["Phantom",1,0],hphantom:["Phantom",0,1],smash:"Smash",acute:["Accent","00B4"],grave:["Accent","0060"],ddot:["Accent","00A8"],tilde:["Accent","007E"],bar:["Accent","00AF"],breve:["Accent","02D8"],check:["Accent","02C7"],hat:["Accent","005E"],vec:["Accent","2192"],dot:["Accent","02D9"],widetilde:["Accent","007E",1],widehat:["Accent","005E",1],matrix:"Matrix",array:"Matrix",pmatrix:["Matrix","(",")"],cases:["Matrix","{","","left left",null,".1em",null,!0],eqalign:["Matrix",null,null,"right left",T.TexConstant.Length.THICKMATHSPACE,".5em","D"],displaylines:["Matrix",null,null,"center",null,".5em","D"],cr:"Cr","\\":"CrLaTeX",newline:["CrLaTeX",!0],hline:["HLine","solid"],hdashline:["HLine","dashed"],eqalignno:["Matrix",null,null,"right left",T.TexConstant.Length.THICKMATHSPACE,".5em","D",null,"right"],leqalignno:["Matrix",null,null,"right left",T.TexConstant.Length.THICKMATHSPACE,".5em","D",null,"left"],hfill:"HFill",hfil:"HFill",hfilll:"HFill",bmod:["Macro",'\\mmlToken{mo}[lspace="thickmathspace" rspace="thickmathspace"]{mod}'],pmod:["Macro","\\pod{\\mmlToken{mi}{mod}\\kern 6mu #1}",1],mod:["Macro","\\mathchoice{\\kern18mu}{\\kern12mu}{\\kern12mu}{\\kern12mu}\\mmlToken{mi}{mod}\\,\\,#1",1],pod:["Macro","\\mathchoice{\\kern18mu}{\\kern8mu}{\\kern8mu}{\\kern8mu}(#1)",1],iff:["Macro","\\;\\Longleftrightarrow\\;"],skew:["Macro","{{#2{#3\\mkern#1mu}\\mkern-#1mu}{}}",3],mathcal:["Macro","{\\cal #1}",1],mathscr:["Macro","{\\scr #1}",1],mathrm:["Macro","{\\rm #1}",1],mathbf:["Macro","{\\bf #1}",1],mathbb:["Macro","{\\bbFont #1}",1],Bbb:["Macro","{\\bbFont #1}",1],mathit:["Macro","{\\it #1}",1],mathfrak:["Macro","{\\frak #1}",1],mathsf:["Macro","{\\sf #1}",1],mathtt:["Macro","{\\tt #1}",1],textrm:["HBox",null,T.TexConstant.Variant.NORMAL],textit:["HBox",null,T.TexConstant.Variant.ITALIC],textbf:["HBox",null,T.TexConstant.Variant.BOLD],textsf:["HBox",null,T.TexConstant.Variant.SANSSERIF],texttt:["HBox",null,T.TexConstant.Variant.MONOSPACE],pmb:["Macro","\\rlap{#1}\\kern1px{#1}",1],TeX:["Macro","T\\kern-.14em\\lower.5ex{E}\\kern-.115em X"],LaTeX:["Macro","L\\kern-.325em\\raise.21em{\\scriptstyle{A}}\\kern-.17em\\TeX"]," ":["Macro","\\text{ }"],not:"Not",dots:"Dots",space:"Tilde","\xa0":"Tilde",begin:"BeginEnd",end:"BeginEnd",label:"HandleLabel",ref:"HandleRef",nonumber:"HandleNoTag",mathchoice:"MathChoice",mmlToken:"MmlToken"},n.default),new r.EnvironmentMap("environment",o.default.environment,{array:["AlignedArray"],equation:["Equation",null,!0],"equation*":["Equation",null,!1],eqnarray:["EqnArray",null,!0,!0,"rcl","0 "+T.TexConstant.Length.THICKMATHSPACE,".5em"]},n.default),new r.CharacterMap("not_remap",null,{"\u2190":"\u219a","\u2192":"\u219b","\u2194":"\u21ae","\u21d0":"\u21cd","\u21d2":"\u21cf","\u21d4":"\u21ce","\u2208":"\u2209","\u220b":"\u220c","\u2223":"\u2224","\u2225":"\u2226","\u223c":"\u2241","~":"\u2241","\u2243":"\u2244","\u2245":"\u2247","\u2248":"\u2249","\u224d":"\u226d","=":"\u2260","\u2261":"\u2262","<":"\u226e",">":"\u226f","\u2264":"\u2270","\u2265":"\u2271","\u2272":"\u2274","\u2273":"\u2275","\u2276":"\u2278","\u2277":"\u2279","\u227a":"\u2280","\u227b":"\u2281","\u2282":"\u2284","\u2283":"\u2285","\u2286":"\u2288","\u2287":"\u2289","\u22a2":"\u22ac","\u22a8":"\u22ad","\u22a9":"\u22ae","\u22ab":"\u22af","\u227c":"\u22e0","\u227d":"\u22e1","\u2291":"\u22e2","\u2292":"\u22e3","\u22b2":"\u22ea","\u22b3":"\u22eb","\u22b4":"\u22ec","\u22b5":"\u22ed","\u2203":"\u2204"})},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),Q(19).add({Pcy:"\u041f",Poincareplane:"\u210c",Pr:"\u2abb",Prime:"\u2033",Proportion:"\u2237",par:"\u2225",para:"\xb6",parallel:"\u2225",parsim:"\u2af3",parsl:"\u2afd",part:"\u2202",pcy:"\u043f",percnt:"%",permil:"\u2030",perp:"\u22a5",pertenk:"\u2031",phmmat:"\u2133",phone:"\u260e",pitchfork:"\u22d4",planck:"\u210f",planckh:"\u210e",plankv:"\u210f",plus:"+",plusacir:"\u2a23",plusb:"\u229e",pluscir:"\u2a22",plusdo:"\u2214",plusdu:"\u2a25",pluse:"\u2a72",plusmn:"\xb1",plussim:"\u2a26",plustwo:"\u2a27",pm:"\xb1",pointint:"\u2a15",pound:"\xa3",pr:"\u227a",prE:"\u2ab3",prcue:"\u227c",pre:"\u2aaf",prec:"\u227a",precapprox:"\u2ab7",preccurlyeq:"\u227c",preceq:"\u2aaf",precsim:"\u227e",primes:"\u2119",prnE:"\u2ab5",prnap:"\u2ab9",prnsim:"\u22e8",prod:"\u220f",profalar:"\u232e",profline:"\u2312",profsurf:"\u2313",prop:"\u221d",propto:"\u221d",prsim:"\u227e",prurel:"\u22b0",puncsp:"\u2008"},"p")},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),Q(19).add({RBarr:"\u2910",REG:"\xae",Racute:"\u0154",Rang:"\u27eb",Rarrtl:"\u2916",Rcaron:"\u0158",Rcedil:"\u0156",Rcy:"\u0420",ReverseElement:"\u220b",ReverseUpEquilibrium:"\u296f",Rho:"\u03a1",RightArrowBar:"\u21e5",RightDoubleBracket:"\u27e7",RightDownTeeVector:"\u295d",RightDownVectorBar:"\u2955",RightTeeVector:"\u295b",RightTriangleBar:"\u29d0",RightUpDownVector:"\u294f",RightUpTeeVector:"\u295c",RightUpVectorBar:"\u2954",RightVectorBar:"\u2953",RoundImplies:"\u2970",RuleDelayed:"\u29f4",rAarr:"\u21db",rArr:"\u21d2",rAtail:"\u291c",rBarr:"\u290f",rHar:"\u2964",race:"\u223d\u0331",racute:"\u0155",radic:"\u221a",raemptyv:"\u29b3",rang:"\u27e9",rangd:"\u2992",range:"\u29a5",rangle:"\u27e9",raquo:"\xbb",rarr:"\u2192",rarrap:"\u2975",rarrb:"\u21e5",rarrbfs:"\u2920",rarrc:"\u2933",rarrfs:"\u291e",rarrhk:"\u21aa",rarrlp:"\u21ac",rarrpl:"\u2945",rarrsim:"\u2974",rarrw:"\u219d",ratail:"\u291a",ratio:"\u2236",rationals:"\u211a",rbarr:"\u290d",rbbrk:"\u2773",rbrke:"\u298c",rbrksld:"\u298e",rbrkslu:"\u2990",rcaron:"\u0159",rcedil:"\u0157",rceil:"\u2309",rcub:"}",rcy:"\u0440",rdca:"\u2937",rdldhar:"\u2969",rdquo:"\u201d",rdquor:"\u201d",rdsh:"\u21b3",real:"\u211c",realine:"\u211b",realpart:"\u211c",reals:"\u211d",rect:"\u25ad",reg:"\xae",rfisht:"\u297d",rfloor:"\u230b",rhard:"\u21c1",rharu:"\u21c0",rharul:"\u296c",rightarrow:"\u2192",rightarrowtail:"\u21a3",rightharpoondown:"\u21c1",rightharpoonup:"\u21c0",rightleftarrows:"\u21c4",rightleftharpoons:"\u21cc",rightsquigarrow:"\u219d",risingdotseq:"\u2253",rlarr:"\u21c4",rlhar:"\u21cc",rlm:"\u200f",rmoustache:"\u23b1",rnmid:"\u2aee",roang:"\u27ed",roarr:"\u21fe",robrk:"\u27e7",ropar:"\u2986",roplus:"\u2a2e",rotimes:"\u2a35",rpar:")",rpargt:"\u2994",rppolint:"\u2a12",rrarr:"\u21c9",rsaquo:"\u203a",rsh:"\u21b1",rsqb:"]",rsquo:"\u2019",rsquor:"\u2019",rthree:"\u22cc",rtrie:"\u22b5",rtrif:"\u25b8",rtriltri:"\u29ce",ruluhar:"\u2968",rx:"\u211e"},"r")},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=Q(34),T=Q(3),n=Q(13),o=Q(23),i=Q(9),a=Q(0),s=function(t){for(var e=[],Q=0,r=t.length;Q0))return i;if(u.revisit||(t=c.remainder),!u.toContinue)break t}}if(o<=0)throw["MhchemBugU","mhchem bug U. Please report."]}},concatArray:function(t,e){if(e)if(Array.isArray(e))for(var Q=0;Q":/^[=<>]/,"#":/^[#\u2261]/,"+":/^\+/,"-$":/^-(?=[\s_},;\]/]|$|\([a-z]+\))/,"-9":/^-(?=[0-9])/,"- orbital overlap":/^-(?=(?:[spd]|sp)(?:$|[\s,;\)\]\}]))/,"-":/^-/,"pm-operator":/^(?:\\pm|\$\\pm\$|\+-|\+\/-)/,operator:/^(?:\+|(?:[\-=<>]|<<|>>|\\approx|\$\\approx\$)(?=\s|$|-?[0-9]))/,arrowUpDown:/^(?:v|\(v\)|\^|\(\^\))(?=$|[\s,;\)\]\}])/,"\\bond{(...)}":function(t){return r.patterns.findObserveGroups(t,"\\bond{","","","}")},"->":/^(?:<->|<-->|->|<-|<=>>|<<=>|<=>|[\u2192\u27F6\u21CC])/,CMT:/^[CMT](?=\[)/,"[(...)]":function(t){return r.patterns.findObserveGroups(t,"[","","","]")},"1st-level escape":/^(&|\\\\|\\hline)\s*/,"\\,":/^(?:\\[,\ ;:])/,"\\x{}{}":function(t){return r.patterns.findObserveGroups(t,"",/^\\[a-zA-Z]+\{/,"}","","","{","}","",!0)},"\\x{}":function(t){return r.patterns.findObserveGroups(t,"",/^\\[a-zA-Z]+\{/,"}","")},"\\ca":/^\\ca(?:\s+|(?![a-zA-Z]))/,"\\x":/^(?:\\[a-zA-Z]+\s*|\\[_&{}%])/,orbital:/^(?:[0-9]{1,2}[spdfgh]|[0-9]{0,2}sp)(?=$|[^a-zA-Z])/,others:/^[\/~|]/,"\\frac{(...)}":function(t){return r.patterns.findObserveGroups(t,"\\frac{","","","}","{","","","}")},"\\overset{(...)}":function(t){return r.patterns.findObserveGroups(t,"\\overset{","","","}","{","","","}")},"\\underset{(...)}":function(t){return r.patterns.findObserveGroups(t,"\\underset{","","","}","{","","","}")},"\\underbrace{(...)}":function(t){return r.patterns.findObserveGroups(t,"\\underbrace{","","","}_","{","","","}")},"\\color{(...)}0":function(t){return r.patterns.findObserveGroups(t,"\\color{","","","}")},"\\color{(...)}{(...)}1":function(t){return r.patterns.findObserveGroups(t,"\\color{","","","}","{","","","}")},"\\color(...){(...)}2":function(t){return r.patterns.findObserveGroups(t,"\\color","\\","",/^(?=\{)/,"{","","","}")},"\\ce{(...)}":function(t){return r.patterns.findObserveGroups(t,"\\ce{","","","}")},oxidation$:/^(?:[+-][IVX]+|\\pm\s*0|\$\\pm\$\s*0)$/,"d-oxidation$":/^(?:[+-]?\s?[IVX]+|\\pm\s*0|\$\\pm\$\s*0)$/,"roman numeral":/^[IVX]+/,"1/2$":/^[+\-]?(?:[0-9]+|\$[a-z]\$|[a-z])\/[0-9]+(?:\$[a-z]\$|[a-z])?$/,amount:function(t){var e;if(e=t.match(/^(?:(?:(?:\([+\-]?[0-9]+\/[0-9]+\)|[+\-]?(?:[0-9]+|\$[a-z]\$|[a-z])\/[0-9]+|[+\-]?[0-9]+[.,][0-9]+|[+\-]?\.[0-9]+|[+\-]?[0-9]+)(?:[a-z](?=\s*[A-Z]))?)|[+\-]?[a-z](?=\s*[A-Z])|\+(?!\s))/))return{match_:e[0],remainder:t.substr(e[0].length)};var Q=r.patterns.findObserveGroups(t,"","$","$","");return Q&&(e=Q.match_.match(/^\$(?:\(?[+\-]?(?:[0-9]*[a-z]?[+\-])?[0-9]*[a-z](?:[+\-][0-9]*[a-z]?)?\)?|\+|-)\$$/))?{match_:e[0],remainder:t.substr(e[0].length)}:null},amount2:function(t){return this.amount(t)},"(KV letters),":/^(?:[A-Z][a-z]{0,2}|i)(?=,)/,formula$:function(t){if(t.match(/^\([a-z]+\)$/))return null;var e=t.match(/^(?:[a-z]|(?:[0-9\ \+\-\,\.\(\)]+[a-z])+[0-9\ \+\-\,\.\(\)]*|(?:[a-z][0-9\ \+\-\,\.\(\)]+)+[a-z]?)$/);return e?{match_:e[0],remainder:t.substr(e[0].length)}:null},uprightEntities:/^(?:pH|pOH|pC|pK|iPr|iBu)(?=$|[^a-zA-Z])/,"/":/^\s*(\/)\s*/,"//":/^\s*(\/\/)\s*/,"*":/^\s*[*.]\s*/},findObserveGroups:function(t,e,Q,r,T,n,o,i,a,s){var l=function(t,e){if("string"==typeof e)return 0!==t.indexOf(e)?null:e;var Q=t.match(e);return Q?Q[0]:null},c=l(t,e);if(null===c)return null;if(t=t.substr(c.length),null===(c=l(t,Q)))return null;var u=function(t,e,Q){for(var r=0;e":{"0|1|2|3":{action_:"r=",nextState:"r"},"a|as":{action_:["output","r="],nextState:"r"},"*":{action_:["output","r="],nextState:"r"}},"+":{o:{action_:"d= kv",nextState:"d"},"d|D":{action_:"d=",nextState:"d"},q:{action_:"d=",nextState:"qd"},"qd|qD":{action_:"d=",nextState:"qd"},dq:{action_:["output","d="],nextState:"d"},3:{action_:["sb=false","output","operator"],nextState:"0"}},amount:{"0|2":{action_:"a=",nextState:"a"}},"pm-operator":{"0|1|2|a|as":{action_:["sb=false","output",{type_:"operator",option:"\\pm"}],nextState:"0"}},operator:{"0|1|2|a|as":{action_:["sb=false","output","operator"],nextState:"0"}},"-$":{"o|q":{action_:["charge or bond","output"],nextState:"qd"},d:{action_:"d=",nextState:"d"},D:{action_:["output",{type_:"bond",option:"-"}],nextState:"3"},q:{action_:"d=",nextState:"qd"},qd:{action_:"d=",nextState:"qd"},"qD|dq":{action_:["output",{type_:"bond",option:"-"}],nextState:"3"}},"-9":{"3|o":{action_:["output",{type_:"insert",option:"hyphen"}],nextState:"3"}},"- orbital overlap":{o:{action_:["output",{type_:"insert",option:"hyphen"}],nextState:"2"},d:{action_:["output",{type_:"insert",option:"hyphen"}],nextState:"2"}},"-":{"0|1|2":{action_:[{type_:"output",option:1},"beginsWithBond=true",{type_:"bond",option:"-"}],nextState:"3"},3:{action_:{type_:"bond",option:"-"}},a:{action_:["output",{type_:"insert",option:"hyphen"}],nextState:"2"},as:{action_:[{type_:"output",option:2},{type_:"bond",option:"-"}],nextState:"3"},b:{action_:"b="},o:{action_:{type_:"- after o/d",option:!1},nextState:"2"},q:{action_:{type_:"- after o/d",option:!1},nextState:"2"},"d|qd|dq":{action_:{type_:"- after o/d",option:!0},nextState:"2"},"D|qD|p":{action_:["output",{type_:"bond",option:"-"}],nextState:"3"}},amount2:{"1|3":{action_:"a=",nextState:"a"}},letters:{"0|1|2|3|a|as|b|p|bp|o":{action_:"o=",nextState:"o"},"q|dq":{action_:["output","o="],nextState:"o"},"d|D|qd|qD":{action_:"o after d",nextState:"o"}},digits:{o:{action_:"q=",nextState:"q"},"d|D":{action_:"q=",nextState:"dq"},q:{action_:["output","o="],nextState:"o"},a:{action_:"o=",nextState:"o"}},"space A":{"b|p|bp":{}},space:{a:{nextState:"as"},0:{action_:"sb=false"},"1|2":{action_:"sb=true"},"r|rt|rd|rdt|rdq":{action_:"output",nextState:"0"},"*":{action_:["output","sb=true"],nextState:"1"}},"1st-level escape":{"1|2":{action_:["output",{type_:"insert+p1",option:"1st-level escape"}]},"*":{action_:["output",{type_:"insert+p1",option:"1st-level escape"}],nextState:"0"}},"[(...)]":{"r|rt":{action_:"rd=",nextState:"rd"},"rd|rdt":{action_:"rq=",nextState:"rdq"}},"...":{"o|d|D|dq|qd|qD":{action_:["output",{type_:"bond",option:"..."}],nextState:"3"},"*":{action_:[{type_:"output",option:1},{type_:"insert",option:"ellipsis"}],nextState:"1"}},". |* ":{"*":{action_:["output",{type_:"insert",option:"addition compound"}],nextState:"1"}},"state of aggregation $":{"*":{action_:["output","state of aggregation"],nextState:"1"}},"{[(":{"a|as|o":{action_:["o=","output","parenthesisLevel++"],nextState:"2"},"0|1|2|3":{action_:["o=","output","parenthesisLevel++"],nextState:"2"},"*":{action_:["output","o=","output","parenthesisLevel++"],nextState:"2"}},")]}":{"0|1|2|3|b|p|bp|o":{action_:["o=","parenthesisLevel--"],nextState:"o"},"a|as|d|D|q|qd|qD|dq":{action_:["output","o=","parenthesisLevel--"],nextState:"o"}},", ":{"*":{action_:["output","comma"],nextState:"0"}},"^_":{"*":{}},"^{(...)}|^($...$)":{"0|1|2|as":{action_:"b=",nextState:"b"},p:{action_:"b=",nextState:"bp"},"3|o":{action_:"d= kv",nextState:"D"},q:{action_:"d=",nextState:"qD"},"d|D|qd|qD|dq":{action_:["output","d="],nextState:"D"}},"^a|^\\x{}{}|^\\x{}|^\\x|'":{"0|1|2|as":{action_:"b=",nextState:"b"},p:{action_:"b=",nextState:"bp"},"3|o":{action_:"d= kv",nextState:"d"},q:{action_:"d=",nextState:"qd"},"d|qd|D|qD":{action_:"d="},dq:{action_:["output","d="],nextState:"d"}},"_{(state of aggregation)}$":{"d|D|q|qd|qD|dq":{action_:["output","q="],nextState:"q"}},"_{(...)}|_($...$)|_9|_\\x{}{}|_\\x{}|_\\x":{"0|1|2|as":{action_:"p=",nextState:"p"},b:{action_:"p=",nextState:"bp"},"3|o":{action_:"q=",nextState:"q"},"d|D":{action_:"q=",nextState:"dq"},"q|qd|qD|dq":{action_:["output","q="],nextState:"q"}},"=<>":{"0|1|2|3|a|as|o|q|d|D|qd|qD|dq":{action_:[{type_:"output",option:2},"bond"],nextState:"3"}},"#":{"0|1|2|3|a|as|o":{action_:[{type_:"output",option:2},{type_:"bond",option:"#"}],nextState:"3"}},"{}":{"*":{action_:{type_:"output",option:1},nextState:"1"}},"{...}":{"0|1|2|3|a|as|b|p|bp":{action_:"o=",nextState:"o"},"o|d|D|q|qd|qD|dq":{action_:["output","o="],nextState:"o"}},"$...$":{a:{action_:"a="},"0|1|2|3|as|b|p|bp|o":{action_:"o=",nextState:"o"},"as|o":{action_:"o="},"q|d|D|qd|qD|dq":{action_:["output","o="],nextState:"o"}},"\\bond{(...)}":{"*":{action_:[{type_:"output",option:2},"bond"],nextState:"3"}},"\\frac{(...)}":{"*":{action_:[{type_:"output",option:1},"frac-output"],nextState:"3"}},"\\overset{(...)}":{"*":{action_:[{type_:"output",option:2},"overset-output"],nextState:"3"}},"\\underset{(...)}":{"*":{action_:[{type_:"output",option:2},"underset-output"],nextState:"3"}},"\\underbrace{(...)}":{"*":{action_:[{type_:"output",option:2},"underbrace-output"],nextState:"3"}},"\\color{(...)}{(...)}1|\\color(...){(...)}2":{"*":{action_:[{type_:"output",option:2},"color-output"],nextState:"3"}},"\\color{(...)}0":{"*":{action_:[{type_:"output",option:2},"color0-output"]}},"\\ce{(...)}":{"*":{action_:[{type_:"output",option:2},"ce"],nextState:"3"}},"\\,":{"*":{action_:[{type_:"output",option:1},"copy"],nextState:"1"}},"\\x{}{}|\\x{}|\\x":{"0|1|2|3|a|as|b|p|bp|o|c0":{action_:["o=","output"],nextState:"3"},"*":{action_:["output","o=","output"],nextState:"3"}},others:{"*":{action_:[{type_:"output",option:1},"copy"],nextState:"3"}},else2:{a:{action_:"a to o",nextState:"o",revisit:!0},as:{action_:["output","sb=true"],nextState:"1",revisit:!0},"r|rt|rd|rdt|rdq":{action_:["output"],nextState:"0",revisit:!0},"*":{action_:["output","copy"],nextState:"3"}}}),actions:{"o after d":function(t,e){var Q;if((t.d||"").match(/^[0-9]+$/)){var T=t.d;t.d=void 0,Q=this.output(t),t.b=T}else Q=this.output(t);return r.actions["o="](t,e),Q},"d= kv":function(t,e){t.d=e,t.dType="kv"},"charge or bond":function(t,e){if(t.beginsWithBond){var Q=[];return r.concatArray(Q,this.output(t)),r.concatArray(Q,r.actions.bond(t,e,"-")),Q}t.d=e},"- after o/d":function(t,e,Q){var T=r.patterns.match_("orbital",t.o||""),n=r.patterns.match_("one lowercase greek letter $",t.o||""),o=r.patterns.match_("one lowercase latin letter $",t.o||""),i=r.patterns.match_("$one lowercase latin letter$ $",t.o||""),a="-"===e&&(T&&""===T.remainder||n||o||i);!a||t.a||t.b||t.p||t.d||t.q||T||!o||(t.o="$"+t.o+"$");var s=[];return a?(r.concatArray(s,this.output(t)),s.push({type_:"hyphen"})):(T=r.patterns.match_("digits",t.d||""),Q&&T&&""===T.remainder?(r.concatArray(s,r.actions["d="](t,e)),r.concatArray(s,this.output(t))):(r.concatArray(s,this.output(t)),r.concatArray(s,r.actions.bond(t,e,"-")))),s},"a to o":function(t){t.o=t.a,t.a=void 0},"sb=true":function(t){t.sb=!0},"sb=false":function(t){t.sb=!1},"beginsWithBond=true":function(t){t.beginsWithBond=!0},"beginsWithBond=false":function(t){t.beginsWithBond=!1},"parenthesisLevel++":function(t){t.parenthesisLevel++},"parenthesisLevel--":function(t){t.parenthesisLevel--},"state of aggregation":function(t,e){return{type_:"state of aggregation",p1:r.go(e,"o")}},comma:function(t,e){var Q=e.replace(/\s*$/,"");return Q!==e&&0===t.parenthesisLevel?{type_:"comma enumeration L",p1:Q}:{type_:"comma enumeration M",p1:Q}},output:function(t,e,Q){var T,n,o;t.r?(n="M"===t.rdt?r.go(t.rd,"tex-math"):"T"===t.rdt?[{type_:"text",p1:t.rd||""}]:r.go(t.rd),o="M"===t.rqt?r.go(t.rq,"tex-math"):"T"===t.rqt?[{type_:"text",p1:t.rq||""}]:r.go(t.rq),T={type_:"arrow",r:t.r,rd:n,rq:o}):(T=[],(t.a||t.b||t.p||t.o||t.q||t.d||Q)&&(t.sb&&T.push({type_:"entitySkip"}),t.o||t.q||t.d||t.b||t.p||2===Q?t.o||t.q||t.d||!t.b&&!t.p?t.o&&"kv"===t.dType&&r.patterns.match_("d-oxidation$",t.d||"")?t.dType="oxidation":t.o&&"kv"===t.dType&&!t.q&&(t.dType=void 0):(t.o=t.a,t.d=t.b,t.q=t.p,t.a=t.b=t.p=void 0):(t.o=t.a,t.a=void 0),T.push({type_:"chemfive",a:r.go(t.a,"a"),b:r.go(t.b,"bd"),p:r.go(t.p,"pq"),o:r.go(t.o,"o"),q:r.go(t.q,"pq"),d:r.go(t.d,"oxidation"===t.dType?"oxidation":"bd"),dType:t.dType})));for(var i in t)"parenthesisLevel"!==i&&"beginsWithBond"!==i&&delete t[i];return T},"oxidation-output":function(t,e){var Q=["{"];return r.concatArray(Q,r.go(e,"oxidation")),Q.push("}"),Q},"frac-output":function(t,e){return{type_:"frac-ce",p1:r.go(e[0]),p2:r.go(e[1])}},"overset-output":function(t,e){return{type_:"overset",p1:r.go(e[0]),p2:r.go(e[1])}},"underset-output":function(t,e){return{type_:"underset",p1:r.go(e[0]),p2:r.go(e[1])}},"underbrace-output":function(t,e){return{type_:"underbrace",p1:r.go(e[0]),p2:r.go(e[1])}},"color-output":function(t,e){return{type_:"color",color1:e[0],color2:r.go(e[1])}},"r=":function(t,e){t.r=e},"rdt=":function(t,e){t.rdt=e},"rd=":function(t,e){t.rd=e},"rqt=":function(t,e){t.rqt=e},"rq=":function(t,e){t.rq=e},operator:function(t,e,Q){return{type_:"operator",kind_:Q||e}}}},a:{transitions:r.createTransitions({empty:{"*":{}},"1/2$":{0:{action_:"1/2"}},else:{0:{nextState:"1",revisit:!0}},"$(...)$":{"*":{action_:"tex-math tight",nextState:"1"}},",":{"*":{action_:{type_:"insert",option:"commaDecimal"}}},else2:{"*":{action_:"copy"}}}),actions:{}},o:{transitions:r.createTransitions({empty:{"*":{}},"1/2$":{0:{action_:"1/2"}},else:{0:{nextState:"1",revisit:!0}},letters:{"*":{action_:"rm"}},"\\ca":{"*":{action_:{type_:"insert",option:"circa"}}},"\\x{}{}|\\x{}|\\x":{"*":{action_:"copy"}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},"{(...)}":{"*":{action_:"{text}"}},else2:{"*":{action_:"copy"}}}),actions:{}},text:{transitions:r.createTransitions({empty:{"*":{action_:"output"}},"{...}":{"*":{action_:"text="}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},"\\greek":{"*":{action_:["output","rm"]}},"\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:["output","copy"]}},else:{"*":{action_:"text="}}}),actions:{output:function(t){if(t.text_){var e={type_:"text",p1:t.text_};for(var Q in t)delete t[Q];return e}}}},pq:{transitions:r.createTransitions({empty:{"*":{}},"state of aggregation $":{"*":{action_:"state of aggregation"}},i$:{0:{nextState:"!f",revisit:!0}},"(KV letters),":{0:{action_:"rm",nextState:"0"}},formula$:{0:{nextState:"f",revisit:!0}},"1/2$":{0:{action_:"1/2"}},else:{0:{nextState:"!f",revisit:!0}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},"{(...)}":{"*":{action_:"text"}},"a-z":{f:{action_:"tex-math"}},letters:{"*":{action_:"rm"}},"-9.,9":{"*":{action_:"9,9"}},",":{"*":{action_:{type_:"insert+p1",option:"comma enumeration S"}}},"\\color{(...)}{(...)}1|\\color(...){(...)}2":{"*":{action_:"color-output"}},"\\color{(...)}0":{"*":{action_:"color0-output"}},"\\ce{(...)}":{"*":{action_:"ce"}},"\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:"copy"}},else2:{"*":{action_:"copy"}}}),actions:{"state of aggregation":function(t,e){return{type_:"state of aggregation subscript",p1:r.go(e,"o")}},"color-output":function(t,e){return{type_:"color",color1:e[0],color2:r.go(e[1],"pq")}}}},bd:{transitions:r.createTransitions({empty:{"*":{}},x$:{0:{nextState:"!f",revisit:!0}},formula$:{0:{nextState:"f",revisit:!0}},else:{0:{nextState:"!f",revisit:!0}},"-9.,9 no missing 0":{"*":{action_:"9,9"}},".":{"*":{action_:{type_:"insert",option:"electron dot"}}},"a-z":{f:{action_:"tex-math"}},x:{"*":{action_:{type_:"insert",option:"KV x"}}},letters:{"*":{action_:"rm"}},"'":{"*":{action_:{type_:"insert",option:"prime"}}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},"{(...)}":{"*":{action_:"text"}},"\\color{(...)}{(...)}1|\\color(...){(...)}2":{"*":{action_:"color-output"}},"\\color{(...)}0":{"*":{action_:"color0-output"}},"\\ce{(...)}":{"*":{action_:"ce"}},"\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:"copy"}},else2:{"*":{action_:"copy"}}}),actions:{"color-output":function(t,e){return{type_:"color",color1:e[0],color2:r.go(e[1],"bd")}}}},oxidation:{transitions:r.createTransitions({empty:{"*":{}},"roman numeral":{"*":{action_:"roman-numeral"}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},else:{"*":{action_:"copy"}}}),actions:{"roman-numeral":function(t,e){return{type_:"roman numeral",p1:e||""}}}},"tex-math":{transitions:r.createTransitions({empty:{"*":{action_:"output"}},"\\ce{(...)}":{"*":{action_:["output","ce"]}},"{...}|\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:"o="}},else:{"*":{action_:"o="}}}),actions:{output:function(t){if(t.o){var e={type_:"tex-math",p1:t.o};for(var Q in t)delete t[Q];return e}}}},"tex-math tight":{transitions:r.createTransitions({empty:{"*":{action_:"output"}},"\\ce{(...)}":{"*":{action_:["output","ce"]}},"{...}|\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:"o="}},"-|+":{"*":{action_:"tight operator"}},else:{"*":{action_:"o="}}}),actions:{"tight operator":function(t,e){t.o=(t.o||"")+"{"+e+"}"},output:function(t){if(t.o){var e={type_:"tex-math",p1:t.o};for(var Q in t)delete t[Q];return e}}}},"9,9":{transitions:r.createTransitions({empty:{"*":{}},",":{"*":{action_:"comma"}},else:{"*":{action_:"copy"}}}),actions:{comma:function(){return{type_:"commaDecimal"}}}},pu:{transitions:r.createTransitions({empty:{"*":{action_:"output"}},space$:{"*":{action_:["output","space"]}},"{[(|)]}":{"0|a":{action_:"copy"}},"(-)(9)^(-9)":{0:{action_:"number^",nextState:"a"}},"(-)(9.,9)(e)(99)":{0:{action_:"enumber",nextState:"a"}},space:{"0|a":{}},"pm-operator":{"0|a":{action_:{type_:"operator",option:"\\pm"},nextState:"0"}},operator:{"0|a":{action_:"copy",nextState:"0"}},"//":{d:{action_:"o=",nextState:"/"}},"/":{d:{action_:"o=",nextState:"/"}},"{...}|else":{"0|d":{action_:"d=",nextState:"d"},a:{action_:["space","d="],nextState:"d"},"/|q":{action_:"q=",nextState:"q"}}}),actions:{enumber:function(t,e){var Q=[];return"+-"===e[0]||"+/-"===e[0]?Q.push("\\pm "):e[0]&&Q.push(e[0]),e[1]&&(r.concatArray(Q,r.go(e[1],"pu-9,9")),e[2]&&(e[2].match(/[,.]/)?r.concatArray(Q,r.go(e[2],"pu-9,9")):Q.push(e[2])),e[3]=e[4]||e[3],e[3]&&(e[3]=e[3].trim(),"e"===e[3]||"*"===e[3].substr(0,1)?Q.push({type_:"cdot"}):Q.push({type_:"times"}))),e[3]&&Q.push("10^{"+e[5]+"}"),Q},"number^":function(t,e){var Q=[];return"+-"===e[0]||"+/-"===e[0]?Q.push("\\pm "):e[0]&&Q.push(e[0]),r.concatArray(Q,r.go(e[1],"pu-9,9")),Q.push("^{"+e[2]+"}"),Q},operator:function(t,e,Q){return{type_:"operator",kind_:Q||e}},space:function(){return{type_:"pu-space-1"}},output:function(t){var e,Q=r.patterns.match_("{(...)}",t.d||"");Q&&""===Q.remainder&&(t.d=Q.match_);var T=r.patterns.match_("{(...)}",t.q||"");if(T&&""===T.remainder&&(t.q=T.match_),t.d&&(t.d=t.d.replace(/\u00B0C|\^oC|\^{o}C/g,"{}^{\\circ}C"),t.d=t.d.replace(/\u00B0F|\^oF|\^{o}F/g,"{}^{\\circ}F")),t.q){t.q=t.q.replace(/\u00B0C|\^oC|\^{o}C/g,"{}^{\\circ}C"),t.q=t.q.replace(/\u00B0F|\^oF|\^{o}F/g,"{}^{\\circ}F");var n={d:r.go(t.d,"pu"),q:r.go(t.q,"pu")};"//"===t.o?e={type_:"pu-frac",p1:n.d,p2:n.q}:(e=n.d,n.d.length>1||n.q.length>1?e.push({type_:" / "}):e.push({type_:"/"}),r.concatArray(e,n.q))}else e=r.go(t.d,"pu-2");for(var o in t)delete t[o];return e}}},"pu-2":{transitions:r.createTransitions({empty:{"*":{action_:"output"}},"*":{"*":{action_:["output","cdot"],nextState:"0"}},"\\x":{"*":{action_:"rm="}},space:{"*":{action_:["output","space"],nextState:"0"}},"^{(...)}|^(-1)":{1:{action_:"^(-1)"}},"-9.,9":{0:{action_:"rm=",nextState:"0"},1:{action_:"^(-1)",nextState:"0"}},"{...}|else":{"*":{action_:"rm=",nextState:"1"}}}),actions:{cdot:function(){return{type_:"tight cdot"}},"^(-1)":function(t,e){t.rm+="^{"+e+"}"},space:function(){return{type_:"pu-space-2"}},output:function(t){var e=[];if(t.rm){var Q=r.patterns.match_("{(...)}",t.rm||"");e=Q&&""===Q.remainder?r.go(Q.match_,"pu"):{type_:"rm",p1:t.rm}}for(var T in t)delete t[T];return e}}},"pu-9,9":{transitions:r.createTransitions({empty:{0:{action_:"output-0"},o:{action_:"output-o"}},",":{0:{action_:["output-0","comma"],nextState:"o"}},".":{0:{action_:["output-0","copy"],nextState:"o"}},else:{"*":{action_:"text="}}}),actions:{comma:function(){return{type_:"commaDecimal"}},"output-0":function(t){var e=[];if(t.text_=t.text_||"",t.text_.length>4){var Q=t.text_.length%3;0===Q&&(Q=3);for(var r=t.text_.length-3;r>0;r-=3)e.push(t.text_.substr(r,3)),e.push({type_:"1000 separator"});e.push(t.text_.substr(0,Q)),e.reverse()}else e.push(t.text_);for(var T in t)delete t[T];return e},"output-o":function(t){var e=[];if(t.text_=t.text_||"",t.text_.length>4){for(var Q=t.text_.length-3,r=0;r"===t.r||"<=>>"===t.r||"<<=>"===t.r||"<--\x3e"===t.r?(i="\\long"+i,o.rd&&(i="\\overset{"+o.rd+"}{"+i+"}"),o.rq&&(i="\\underset{\\lower7mu{"+o.rq+"}}{"+i+"}"),i=" {}\\mathrel{"+i+"}{} "):(o.rq&&(i+="[{"+o.rq+"}]"),i=" {}\\mathrel{\\x"+(i+="{"+o.rd+"}")+"}{} "):i=" {}\\mathrel{\\long"+i+"}{} ",e=i;break;case"operator":e=T._getOperator(t.kind_);break;case"1st-level escape":e=t.p1+" ";break;case"space":e=" ";break;case"entitySkip":case"pu-space-1":e="~";break;case"pu-space-2":e="\\mkern3mu ";break;case"1000 separator":e="\\mkern2mu ";break;case"commaDecimal":e="{,}";break;case"comma enumeration L":e="{"+t.p1+"}\\mkern6mu ";break;case"comma enumeration M":e="{"+t.p1+"}\\mkern3mu ";break;case"comma enumeration S":e="{"+t.p1+"}\\mkern1mu ";break;case"hyphen":e="\\text{-}";break;case"addition compound":e="\\,{\\cdot}\\,";break;case"electron dot":e="\\mkern1mu \\bullet\\mkern1mu ";break;case"KV x":e="{\\times}";break;case"prime":e="\\prime ";break;case"cdot":e="\\cdot ";break;case"tight cdot":e="\\mkern1mu{\\cdot}\\mkern1mu ";break;case"times":e="\\times ";break;case"circa":e="{\\sim}";break;case"^":e="uparrow";break;case"v":e="downarrow";break;case"ellipsis":e="\\ldots ";break;case"/":e="/";break;case" / ":e="\\,/\\,";break;default:throw["MhchemBugT","mhchem bug T. Please report."]}return e},_getArrow:function(t){switch(t){case"->":case"\u2192":case"\u27f6":return"rightarrow";case"<-":return"leftarrow";case"<->":return"leftrightarrow";case"<--\x3e":return"leftrightarrows";case"<=>":case"\u21cc":return"rightleftharpoons";case"<=>>":return"Rightleftharpoons";case"<<=>":return"Leftrightharpoons";default:throw["MhchemBugT","mhchem bug T. Please report."]}},_getBond:function(t){switch(t){case"-":case"1":return"{-}";case"=":case"2":return"{=}";case"#":case"3":return"{\\equiv}";case"~":return"{\\tripledash}";case"~-":return"{\\rlap{\\lower.1em{-}}\\raise.1em{\\tripledash}}";case"~=":case"~--":return"{\\rlap{\\lower.2em{-}}\\rlap{\\raise.2em{\\tripledash}}-}";case"-~-":return"{\\rlap{\\lower.2em{-}}\\rlap{\\raise.2em{-}}\\tripledash}";case"...":return"{{\\cdot}{\\cdot}{\\cdot}}";case"....":return"{{\\cdot}{\\cdot}{\\cdot}{\\cdot}}";case"->":return"{\\rightarrow}";case"<-":return"{\\leftarrow}";case"<":return"{<}";case">":return"{>}";default:throw["MhchemBugT","mhchem bug T. Please report."]}},_getOperator:function(t){switch(t){case"+":return" {}+{} ";case"-":return" {}-{} ";case"=":return" {}={} ";case"<":return" {}<{} ";case">":return" {}>{} ";case"<<":return" {}\\ll{} ";case">>":return" {}\\gg{} ";case"\\pm":return" {}\\pm{} ";case"\\approx":case"$\\approx$":return" {}\\approx{} ";case"v":case"(v)":return" \\downarrow{} ";case"^":case"(^)":return" \\uparrow{} ";default:throw["MhchemBugT","mhchem bug T. Please report."]}}};function n(t){}function o(t){}e.mhchemParser=r,e.texify=T,e.assertNever=n,e.assertString=o},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=Q(3),T=Q(161),n=Q(13),o=Q(23),i=Q(0);new r.CommandMap("Physics-automatic-bracing-macros",{quantity:"Quantity",qty:"Quantity",pqty:["Quantity","(",")",!0],bqty:["Quantity","[","]",!0],vqty:["Quantity","|","|",!0],Bqty:["Quantity","{","}",!0],absolutevalue:["Quantity","|","|",!0],abs:["Quantity","|","|",!0],norm:["Quantity","\\|","\\|",!0],evaluated:"Eval",eval:"Eval",order:["Quantity","(",")",!0,"O",n.TexConstant.Variant.CALLIGRAPHIC],commutator:"Commutator",comm:"Commutator",anticommutator:["Commutator","\\{","\\}"],acomm:["Commutator","\\{","\\}"],poissonbracket:["Commutator","\\{","\\}"],pb:["Commutator","\\{","\\}"]},T.default),new r.CharacterMap("Physics-vector-chars",o.default.mathchar0mi,{dotproduct:["\u22c5",{mathvariant:n.TexConstant.Variant.BOLD}],vdot:["\u22c5",{mathvariant:n.TexConstant.Variant.BOLD}],crossproduct:"\xd7",cross:"\xd7",cp:"\xd7",gradientnabla:["\u2207",{mathvariant:n.TexConstant.Variant.BOLD}],real:["\u211c",{mathvariant:n.TexConstant.Variant.NORMAL}],imaginary:["\u2111",{mathvariant:n.TexConstant.Variant.NORMAL}]}),new r.CommandMap("Physics-vector-macros",{vectorbold:"VectorBold",vb:"VectorBold",vectorarrow:["StarMacro",1,"\\vec{\\vb","{#1}}"],va:["StarMacro",1,"\\vec{\\vb","{#1}}"],vectorunit:["StarMacro",1,"\\hat{\\vb","{#1}}"],vu:["StarMacro",1,"\\hat{\\vb","{#1}}"],gradient:["OperatorApplication","\\gradientnabla","(","["],grad:["OperatorApplication","\\gradientnabla","(","["],divergence:["VectorOperator","\\gradientnabla\\vdot","(","["],div:["VectorOperator","\\gradientnabla\\vdot","(","["],curl:["VectorOperator","\\gradientnabla\\crossproduct","(","["],laplacian:["OperatorApplication","\\nabla^2","(","["]},T.default),new r.CommandMap("Physics-expressions-macros",{sin:"Expression",sinh:"Expression",arcsin:"Expression",asin:"Expression",cos:"Expression",cosh:"Expression",arccos:"Expression",acos:"Expression",tan:"Expression",tanh:"Expression",arctan:"Expression",atan:"Expression",csc:"Expression",csch:"Expression",arccsc:"Expression",acsc:"Expression",sec:"Expression",sech:"Expression",arcsec:"Expression",asec:"Expression",cot:"Expression",coth:"Expression",arccot:"Expression",acot:"Expression",exp:["Expression",!1],log:"Expression",ln:"Expression",det:["Expression",!1],Pr:["Expression",!1],tr:["Expression",!1],trace:["Expression",!1,"tr"],Tr:["Expression",!1],Trace:["Expression",!1,"Tr"],rank:"NamedFn",erf:["Expression",!1],Res:["OperatorApplication","{\\rm Res}","(","[","{"],principalvalue:["OperatorApplication","{\\cal P}"],pv:["OperatorApplication","{\\cal P}"],PV:["OperatorApplication","{\\rm P.V.}"],Re:["OperatorApplication","{\\rm Re}","{"],Im:["OperatorApplication","{\\rm Im}","{"],sine:["NamedFn","sin"],hypsine:["NamedFn","sinh"],arcsine:["NamedFn","arcsin"],asine:["NamedFn","asin"],cosine:["NamedFn","cos"],hypcosine:["NamedFn","cosh"],arccosine:["NamedFn","arccos"],acosine:["NamedFn","acos"],tangent:["NamedFn","tan"],hyptangent:["NamedFn","tanh"],arctangent:["NamedFn","arctan"],atangent:["NamedFn","atan"],cosecant:["NamedFn","csc"],hypcosecant:["NamedFn","csch"],arccosecant:["NamedFn","arccsc"],acosecant:["NamedFn","acsc"],secant:["NamedFn","sec"],hypsecant:["NamedFn","sech"],arcsecant:["NamedFn","arcsec"],asecant:["NamedFn","asec"],cotangent:["NamedFn","cot"],hypcotangent:["NamedFn","coth"],arccotangent:["NamedFn","arccot"],acotangent:["NamedFn","acot"],exponential:["NamedFn","exp"],logarithm:["NamedFn","log"],naturallogarithm:["NamedFn","ln"],determinant:["NamedFn","det"],Probability:["NamedFn","Pr"]},T.default),new r.CommandMap("Physics-quick-quad-macros",{qqtext:"Qqtext",qq:"Qqtext",qcomma:["Macro","\\qqtext*{,}"],qc:["Macro","\\qqtext*{,}"],qcc:["Qqtext","c.c."],qif:["Qqtext","if"],qthen:["Qqtext","then"],qelse:["Qqtext","else"],qotherwise:["Qqtext","otherwise"],qunless:["Qqtext","unless"],qgiven:["Qqtext","given"],qusing:["Qqtext","using"],qassume:["Qqtext","assume"],"qsince,":["Qqtext","since,"],qlet:["Qqtext","let"],qfor:["Qqtext","for"],qall:["Qqtext","all"],qeven:["Qqtext","even"],qodd:["Qqtext","odd"],qinteger:["Qqtext","integer"],qand:["Qqtext","and"],qor:["Qqtext","or"],qas:["Qqtext","as"],qin:["Qqtext","in"]},T.default),new r.CommandMap("Physics-derivative-macros",{flatfrac:["Macro","\\left.#1\\middle/#2\\right.",2],differential:["Differential","{\\rm d}"],dd:["Differential","{\\rm d}"],variation:["Differential","\\delta"],var:["Differential","\\delta"],derivative:["Derivative",2,"{\\rm d}"],dv:["Derivative",2,"{\\rm d}"],partialderivative:["Derivative",3,"\\partial"],pderivative:["Derivative",3,"\\partial"],pdv:["Derivative",3,"\\partial"],functionalderivative:["Derivative",2,"\\delta"],fderivative:["Derivative",2,"\\delta"],fdv:["Derivative",2,"\\delta"]},T.default),new r.CommandMap("Physics-bra-ket-macros",{bra:"Bra",ket:"Ket",innerproduct:"BraKet",braket:"BraKet",outerproduct:"KetBra",dyad:"KetBra",ketbra:"KetBra",op:"KetBra",expectationvalue:"Expectation",expval:"Expectation",ev:"Expectation",matrixelement:"MatrixElement",matrixel:"MatrixElement",mel:"MatrixElement"},T.default),new r.CommandMap("Physics-matrix-macros",{matrixquantity:"MatrixQuantity",mqty:"MatrixQuantity",pmqty:["Macro","\\mqty(#1)",1],Pmqty:["Macro","\\mqty*(#1)",1],bmqty:["Macro","\\mqty[#1]",1],vmqty:["Macro","\\mqty|#1|",1],smallmatrixquantity:["MatrixQuantity",!0],smqty:["MatrixQuantity",!0],spmqty:["Macro","\\smqty(#1)",1],sPmqty:["Macro","\\smqty*(#1)",1],sbmqty:["Macro","\\smqty[#1]",1],svmqty:["Macro","\\smqty|#1|",1],matrixdeterminant:["Macro","\\vmqty{#1}",1],mdet:["Macro","\\vmqty{#1}",1],smdet:["Macro","\\svmqty{#1}",1],identitymatrix:"IdentityMatrix",imat:"IdentityMatrix",xmatrix:"XMatrix",xmat:"XMatrix",zeromatrix:["Macro","\\xmat{0}{#1}{#2}",2],zmat:["Macro","\\xmat{0}{#1}{#2}",2],paulimatrix:"PauliMatrix",pmat:"PauliMatrix",diagonalmatrix:"DiagonalMatrix",dmat:"DiagonalMatrix",antidiagonalmatrix:["DiagonalMatrix",!0],admat:["DiagonalMatrix",!0]},T.default),new r.EnvironmentMap("Physics-aux-envs",o.default.environment,{smallmatrix:["Array",null,null,null,"c","0.333em",".2em","S",1]},T.default),new r.MacroMap("Physics-characters",{"|":["AutoClose",i.TEXCLASS.ORD],")":"AutoClose","]":"AutoClose"},T.default)},function(t,e,Q){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=Q(3),T=Q(13),n=Q(90);new r.MacroMap("text-special",{$:"Math","%":"Comment","^":"MathModeOnly",_:"MathModeOnly","&":"Misplaced","#":"Misplaced","~":"Tilde"," ":"Space","\t":"Space","\r":"Space","\n":"Space","\xa0":"Tilde","{":"OpenBrace","}":"CloseBrace","`":"OpenQuote","'":"CloseQuote"},n.TextMacrosMethods),new r.CommandMap("text-macros",{"(":"Math",$:"SelfQuote",_:"SelfQuote","%":"SelfQuote","{":"SelfQuote","}":"SelfQuote"," ":"SelfQuote","&":"SelfQuote","#":"SelfQuote","\\":"SelfQuote","'":["Accent","\xb4"],"\u2019":["Accent","\xb4"],"`":["Accent","`"],"\u2018":["Accent","`"],"^":["Accent","^"],'"':["Accent","\xa8"],"~":["Accent","~"],"=":["Accent","\xaf"],".":["Accent","\u02d9"],u:["Accent","\u02d8"],v:["Accent","\u02c7"],emph:"Emph",rm:["SetFont",T.TexConstant.Variant.NORMAL],mit:["SetFont",T.TexConstant.Variant.ITALIC],oldstyle:["SetFont",T.TexConstant.Variant.OLDSTYLE],cal:["SetFont",T.TexConstant.Variant.CALLIGRAPHIC],it:["SetFont","-tex-mathit"],bf:["SetFont",T.TexConstant.Variant.BOLD],bbFont:["SetFont",T.TexConstant.Variant.DOUBLESTRUCK],scr:["SetFont",T.TexConstant.Variant.SCRIPT],frak:["SetFont",T.TexConstant.Variant.FRAKTUR],sf:["SetFont",T.TexConstant.Variant.SANSSERIF],tt:["SetFont",T.TexConstant.Variant.MONOSPACE],tiny:["SetSize",.5],Tiny:["SetSize",.6],scriptsize:["SetSize",.7],small:["SetSize",.85],normalsize:["SetSize",1],large:["SetSize",1.2],Large:["SetSize",1.44],LARGE:["SetSize",1.73],huge:["SetSize",2.07],Huge:["SetSize",2.49],mathcal:"MathModeOnly",mathscr:"MathModeOnly",mathrm:"MathModeOnly",mathbf:"MathModeOnly",mathbb:"MathModeOnly",mathit:"MathModeOnly",mathfrak:"MathModeOnly",mathsf:"MathModeOnly",mathtt:"MathModeOnly",Bbb:["Macro","{\\bbFont #1}",1],textrm:["Macro","{\\rm #1}",1],textit:["Macro","{\\it #1}",1],textbf:["Macro","{\\bf #1}",1],textsf:["Macro","{\\sf #1}",1],texttt:["Macro","{\\tt #1}",1],dagger:["Insert","\u2020"],ddagger:["Insert","\u2021"],S:["Insert","\xa7"],",":["Spacer",T.TexConstant.Length.THINMATHSPACE],":":["Spacer",T.TexConstant.Length.MEDIUMMATHSPACE],">":["Spacer",T.TexConstant.Length.MEDIUMMATHSPACE],";":["Spacer",T.TexConstant.Length.THICKMATHSPACE],"!":["Spacer",T.TexConstant.Length.NEGATIVETHINMATHSPACE],enspace:["Spacer",".5em"],quad:["Spacer","1em"],qquad:["Spacer","2em"],thinspace:["Spacer",T.TexConstant.Length.THINMATHSPACE],negthinspace:["Spacer",T.TexConstant.Length.NEGATIVETHINMATHSPACE],hskip:"Hskip",hspace:"Hskip",kern:"Hskip",mskip:"Hskip",mspace:"Hskip",mkern:"Hskip",rule:"rule",Rule:["Rule"],Space:["Rule","blank"],color:"CheckAutoload",textcolor:"CheckAutoload",colorbox:"CheckAutoload",fcolorbox:"CheckAutoload",href:"CheckAutoload",style:"CheckAutoload",class:"CheckAutoload",cssId:"CheckAutoload",unicode:"CheckAutoload",ref:["HandleRef",!1],eqref:["HandleRef",!0]},n.TextMacrosMethods)},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__assign||function(){return(n=Object.assign||function(t){for(var e,Q=1,r=arguments.length;Q0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},i=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.MenuStore=void 0;var T=Q(17),n=Q(10),o=Q(51),i=function(){function t(t){this.menu=t,this.store=[],this._active=null,this.counter=0,this.attachedClass=n.HtmlClasses.ATTACHED+"_"+T.MenuUtil.counter(),this.taborder=!0,this.attrMap={}}return Object.defineProperty(t.prototype,"active",{get:function(){return this._active},set:function(t){do{if(-1!==this.store.indexOf(t)){this._active=t;break}t=t.parentNode}while(t)},enumerable:!1,configurable:!0}),t.prototype.next=function(){var t=this.store.length;if(0===t)return this.active=null,null;var e=this.store.indexOf(this.active);return e=-1===e?0:e0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o},n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,Q=e&&t[e],r=0;if(Q)return Q.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__spread||function(){for(var t=[],e=0;edocument.body.offsetWidth-5&&(n=Math.max(5,n-T-Q.offsetWidth+6)),t.prototype.post.call(this,n,o)}},e.prototype.display=function(){this.baseMenu.frame.appendChild(this.html)},e.prototype.setBaseMenu=function(){var t=this;do{t=t.anchor.menu}while(t instanceof e);this.baseMenu=t},e.prototype.left=function(t){this.focused=null,this.anchor.focus()},e.prototype.toJson=function(){return{type:""}},e}(Q(101).AbstractMenu);e.SubMenu=n},function(t,e,Q){"use strict";var r,T=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var Q in e)e.hasOwnProperty(Q)&&(t[Q]=e[Q])})(t,e)},function(t,e){function Q(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(Q.prototype=e.prototype,new Q)}),n=this&&this.__read||function(t,e){var Q="function"==typeof Symbol&&t[Symbol.iterator];if(!Q)return t;var r,T,n=Q.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(t){T={error:t}}finally{try{r&&!r.done&&(Q=n.return)&&Q.call(n)}finally{if(T)throw T.error}}return o};Object.defineProperty(e,"__esModule",{value:!0}),e.SelectionBox=e.SelectionMenu=void 0;var o=Q(17),i=Q(10),a=Q(101),s=Q(104),l=function(t){function e(e){var Q=t.call(this)||this;return Q.anchor=e,Q.className=i.HtmlClasses.SELECTIONMENU,Q.variablePool=Q.anchor.menu.pool,Q.baseMenu=Q.anchor.menu,Q}return T(e,t),e.fromJson=function(t,e,Q){var r=e.title,T=e.values,n=e.variable,o=new this(Q),i=t.get("label")(t,{content:r||"",id:r||"id"},o),a=t.get("rule")(t,{},o),s=T.map((function(e){return t.get("radio")(t,{content:e,variable:n,id:e},o)})),l=[i,a].concat(s);return o.items=l,o},e.prototype.generateHtml=function(){t.prototype.generateHtml.call(this),this.items.forEach((function(t){return t.html.classList.add(i.HtmlClasses.SELECTIONITEM)}))},e.prototype.display=function(){},e.prototype.right=function(t){this.anchor.right(t)},e.prototype.left=function(t){this.anchor.left(t)},e}(a.AbstractMenu);e.SelectionMenu=l;var c=function(t){function e(e,Q,r,T){void 0===r&&(r="none"),void 0===T&&(T="vertical");var n=t.call(this,e,null,Q)||this;return n.style=r,n.grid=T,n._selections=[],n.prefix="ctxt-selection",n._balanced=!0,n}return T(e,t),e.fromJson=function(t,e,Q){var r=e.title,T=e.signature,n=e.selections,o=new this(r,T,e.order,e.grid);o.attachMenu(Q);var i=n.map((function(e){return t.get("selectionMenu")(t,e,o)}));return o.selections=i,o},e.prototype.attachMenu=function(t){this.menu=t},Object.defineProperty(e.prototype,"selections",{get:function(){return this._selections},set:function(t){var e=this;this._selections=[],t.forEach((function(t){return e.addSelection(t)}))},enumerable:!1,configurable:!0}),e.prototype.addSelection=function(t){t.anchor=this,this._selections.push(t)},e.prototype.rowDiv=function(t){var e=this,Q=document.createElement("div");this.contentDiv.appendChild(Q);var r=t.map((function(t){return Q.appendChild(t.html),t.html.id||(t.html.id=e.prefix+o.MenuUtil.counter()),t.html.getBoundingClientRect()})),T=r.map((function(t){return t.width})),n=T.reduce((function(t,e){return t+e}),0),a=r.reduce((function(t,e){return Math.max(t,e.height)}),0);return Q.classList.add(i.HtmlClasses.SELECTIONDIVIDER),Q.setAttribute("style","height: "+a+"px;"),[Q,n,a,T]},e.prototype.display=function(){if(t.prototype.display.call(this),this.order(),this.selections.length){for(var e=[],Q=0,r=[],T=this.getChunkSize(this.selections.length),o=function(t){var o=i.selections.slice(t,t+T),a=n(i.rowDiv(o),4),s=a[0],l=a[1],c=a[2],u=a[3];e.push(s),Q=Math.max(Q,l),o.forEach((function(t){return t.html.style.height=c+"px"})),r=i.combineColumn(r,u)},i=this,a=0;a=0&&(a[s]=e),Q&&i[t]&&(Object(r.combineConfig)(i,(T={},n=e,o=i[t],n in T?Object.defineProperty(T,n,{value:o,enumerable:!0,configurable:!0,writable:!0}):T[n]=o,T)),delete i[t])}}function Ge(t,e){(null==e||e>t.length)&&(e=t.length);for(var Q=0,r=new Array(e);Qt.length)&&(e=t.length);for(var Q=0,r=new Array(e);Q{var B2e=Object.create;var by=Object.defineProperty;var F2e=Object.getOwnPropertyDescriptor;var $2e=Object.getOwnPropertyNames;var z2e=Object.getPrototypeOf,G2e=Object.prototype.hasOwnProperty;var o=(t,e)=>by(t,"name",{value:e,configurable:!0});var N=(t,e)=>()=>(t&&(e=t(t=0)),e);var Mi=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),hr=(t,e)=>{for(var r in e)by(t,r,{get:e[r],enumerable:!0})},L4=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of $2e(e))!G2e.call(t,i)&&i!==r&&by(t,i,{get:()=>e[i],enumerable:!(n=F2e(e,i))||n.enumerable});return t},Sr=(t,e,r)=>(L4(t,e,"default"),r&&L4(r,e,"default")),Sa=(t,e,r)=>(r=t!=null?B2e(z2e(t)):{},L4(e||!t||!t.__esModule?by(r,"default",{value:t,enumerable:!0}):r,t)),V2e=t=>L4(by({},"__esModule",{value:!0}),t);var R4=Mi((EC,SC)=>{"use strict";(function(t,e){typeof EC=="object"&&typeof SC<"u"?SC.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs=e()})(EC,function(){"use strict";var t=1e3,e=6e4,r=36e5,n="millisecond",i="second",a="minute",s="hour",l="day",u="week",h="month",f="quarter",d="year",p="date",m="Invalid Date",g=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,y=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,v={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:o(function(k){var L=["th","st","nd","rd"],R=k%100;return"["+k+(L[(R-20)%10]||L[R]||L[0])+"]"},"ordinal")},x=o(function(k,L,R){var O=String(k);return!O||O.length>=L?k:""+Array(L+1-O.length).join(R)+k},"m"),b={s:x,z:o(function(k){var L=-k.utcOffset(),R=Math.abs(L),O=Math.floor(R/60),M=R%60;return(L<=0?"+":"-")+x(O,2,"0")+":"+x(M,2,"0")},"z"),m:o(function k(L,R){if(L.date()1)return k(F[0])}else{var P=L.name;C[P]=L,M=P}return!O&&M&&(w=M),M||!O&&w},"t"),S=o(function(k,L){if(E(k))return k.clone();var R=typeof L=="object"?L:{};return R.date=k,R.args=arguments,new I(R)},"O"),_=b;_.l=A,_.i=E,_.w=function(k,L){return S(k,{locale:L.$L,utc:L.$u,x:L.$x,$offset:L.$offset})};var I=function(){function k(R){this.$L=A(R.locale,null,!0),this.parse(R),this.$x=this.$x||R.x||{},this[T]=!0}o(k,"M");var L=k.prototype;return L.parse=function(R){this.$d=function(O){var M=O.date,B=O.utc;if(M===null)return new Date(NaN);if(_.u(M))return new Date;if(M instanceof Date)return new Date(M);if(typeof M=="string"&&!/Z$/i.test(M)){var F=M.match(g);if(F){var P=F[2]-1||0,z=(F[7]||"0").substring(0,3);return B?new Date(Date.UTC(F[1],P,F[3]||1,F[4]||0,F[5]||0,F[6]||0,z)):new Date(F[1],P,F[3]||1,F[4]||0,F[5]||0,F[6]||0,z)}}return new Date(M)}(R),this.init()},L.init=function(){var R=this.$d;this.$y=R.getFullYear(),this.$M=R.getMonth(),this.$D=R.getDate(),this.$W=R.getDay(),this.$H=R.getHours(),this.$m=R.getMinutes(),this.$s=R.getSeconds(),this.$ms=R.getMilliseconds()},L.$utils=function(){return _},L.isValid=function(){return this.$d.toString()!==m},L.isSame=function(R,O){var M=S(R);return this.startOf(O)<=M&&M<=this.endOf(O)},L.isAfter=function(R,O){return S(R){"use strict";CF=Sa(R4(),1),eu={trace:0,debug:1,info:2,warn:3,error:4,fatal:5},Y={trace:o((...t)=>{},"trace"),debug:o((...t)=>{},"debug"),info:o((...t)=>{},"info"),warn:o((...t)=>{},"warn"),error:o((...t)=>{},"error"),fatal:o((...t)=>{},"fatal")},wy=o(function(t="fatal"){let e=eu.fatal;typeof t=="string"?t.toLowerCase()in eu&&(e=eu[t]):typeof t=="number"&&(e=t),Y.trace=()=>{},Y.debug=()=>{},Y.info=()=>{},Y.warn=()=>{},Y.error=()=>{},Y.fatal=()=>{},e<=eu.fatal&&(Y.fatal=console.error?console.error.bind(console,bo("FATAL"),"color: orange"):console.log.bind(console,"\x1B[35m",bo("FATAL"))),e<=eu.error&&(Y.error=console.error?console.error.bind(console,bo("ERROR"),"color: orange"):console.log.bind(console,"\x1B[31m",bo("ERROR"))),e<=eu.warn&&(Y.warn=console.warn?console.warn.bind(console,bo("WARN"),"color: orange"):console.log.bind(console,"\x1B[33m",bo("WARN"))),e<=eu.info&&(Y.info=console.info?console.info.bind(console,bo("INFO"),"color: lightblue"):console.log.bind(console,"\x1B[34m",bo("INFO"))),e<=eu.debug&&(Y.debug=console.debug?console.debug.bind(console,bo("DEBUG"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",bo("DEBUG"))),e<=eu.trace&&(Y.trace=console.debug?console.debug.bind(console,bo("TRACE"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",bo("TRACE")))},"setLogLevel"),bo=o(t=>`%c${(0,CF.default)().format("ss.SSS")} : ${t} : `,"format")});var U2e,e0,CC,AF,N4=N(()=>{"use strict";U2e=Object.freeze({left:0,top:0,width:16,height:16}),e0=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),CC=Object.freeze({...U2e,...e0}),AF=Object.freeze({...CC,body:"",hidden:!1})});var H2e,_F,DF=N(()=>{"use strict";N4();H2e=Object.freeze({width:null,height:null}),_F=Object.freeze({...H2e,...e0})});var AC,M4,LF=N(()=>{"use strict";AC=o((t,e,r,n="")=>{let i=t.split(":");if(t.slice(0,1)==="@"){if(i.length<2||i.length>3)return null;n=i.shift().slice(1)}if(i.length>3||!i.length)return null;if(i.length>1){let l=i.pop(),u=i.pop(),h={provider:i.length>0?i[0]:n,prefix:u,name:l};return e&&!M4(h)?null:h}let a=i[0],s=a.split("-");if(s.length>1){let l={provider:n,prefix:s.shift(),name:s.join("-")};return e&&!M4(l)?null:l}if(r&&n===""){let l={provider:n,prefix:"",name:a};return e&&!M4(l,r)?null:l}return null},"stringToIcon"),M4=o((t,e)=>t?!!((e&&t.prefix===""||t.prefix)&&t.name):!1,"validateIconName")});function RF(t,e){let r={};!t.hFlip!=!e.hFlip&&(r.hFlip=!0),!t.vFlip!=!e.vFlip&&(r.vFlip=!0);let n=((t.rotate||0)+(e.rotate||0))%4;return n&&(r.rotate=n),r}var NF=N(()=>{"use strict";o(RF,"mergeIconTransformations")});function _C(t,e){let r=RF(t,e);for(let n in AF)n in e0?n in t&&!(n in r)&&(r[n]=e0[n]):n in e?r[n]=e[n]:n in t&&(r[n]=t[n]);return r}var MF=N(()=>{"use strict";N4();NF();o(_C,"mergeIconData")});function IF(t,e){let r=t.icons,n=t.aliases||Object.create(null),i=Object.create(null);function a(s){if(r[s])return i[s]=[];if(!(s in i)){i[s]=null;let l=n[s]&&n[s].parent,u=l&&a(l);u&&(i[s]=[l].concat(u))}return i[s]}return o(a,"resolve"),(e||Object.keys(r).concat(Object.keys(n))).forEach(a),i}var OF=N(()=>{"use strict";o(IF,"getIconsTree")});function PF(t,e,r){let n=t.icons,i=t.aliases||Object.create(null),a={};function s(l){a=_C(n[l]||i[l],a)}return o(s,"parse"),s(e),r.forEach(s),_C(t,a)}function DC(t,e){if(t.icons[e])return PF(t,e,[]);let r=IF(t,[e])[e];return r?PF(t,e,r):null}var BF=N(()=>{"use strict";MF();OF();o(PF,"internalGetIconData");o(DC,"getIconData")});function LC(t,e,r){if(e===1)return t;if(r=r||100,typeof t=="number")return Math.ceil(t*e*r)/r;if(typeof t!="string")return t;let n=t.split(W2e);if(n===null||!n.length)return t;let i=[],a=n.shift(),s=q2e.test(a);for(;;){if(s){let l=parseFloat(a);isNaN(l)?i.push(a):i.push(Math.ceil(l*e*r)/r)}else i.push(a);if(a=n.shift(),a===void 0)return i.join("");s=!s}}var W2e,q2e,FF=N(()=>{"use strict";W2e=/(-?[0-9.]*[0-9]+[0-9.]*)/g,q2e=/^-?[0-9.]*[0-9]+[0-9.]*$/g;o(LC,"calculateSize")});function Y2e(t,e="defs"){let r="",n=t.indexOf("<"+e);for(;n>=0;){let i=t.indexOf(">",n),a=t.indexOf("",a);if(s===-1)break;r+=t.slice(i+1,a).trim(),t=t.slice(0,n).trim()+t.slice(s+1)}return{defs:r,content:t}}function X2e(t,e){return t?""+t+""+e:e}function $F(t,e,r){let n=Y2e(t);return X2e(n.defs,e+n.content+r)}var zF=N(()=>{"use strict";o(Y2e,"splitSVGDefs");o(X2e,"mergeDefsAndContent");o($F,"wrapSVGContent")});function RC(t,e){let r={...CC,...t},n={..._F,...e},i={left:r.left,top:r.top,width:r.width,height:r.height},a=r.body;[r,n].forEach(y=>{let v=[],x=y.hFlip,b=y.vFlip,w=y.rotate;x?b?w+=2:(v.push("translate("+(i.width+i.left).toString()+" "+(0-i.top).toString()+")"),v.push("scale(-1 1)"),i.top=i.left=0):b&&(v.push("translate("+(0-i.left).toString()+" "+(i.height+i.top).toString()+")"),v.push("scale(1 -1)"),i.top=i.left=0);let C;switch(w<0&&(w-=Math.floor(w/4)*4),w=w%4,w){case 1:C=i.height/2+i.top,v.unshift("rotate(90 "+C.toString()+" "+C.toString()+")");break;case 2:v.unshift("rotate(180 "+(i.width/2+i.left).toString()+" "+(i.height/2+i.top).toString()+")");break;case 3:C=i.width/2+i.left,v.unshift("rotate(-90 "+C.toString()+" "+C.toString()+")");break}w%2===1&&(i.left!==i.top&&(C=i.left,i.left=i.top,i.top=C),i.width!==i.height&&(C=i.width,i.width=i.height,i.height=C)),v.length&&(a=$F(a,'',""))});let s=n.width,l=n.height,u=i.width,h=i.height,f,d;s===null?(d=l===null?"1em":l==="auto"?h:l,f=LC(d,u/h)):(f=s==="auto"?u:s,d=l===null?LC(f,h/u):l==="auto"?h:l);let p={},m=o((y,v)=>{j2e(v)||(p[y]=v.toString())},"setAttr");m("width",f),m("height",d);let g=[i.left,i.top,u,h];return p.viewBox=g.join(" "),{attributes:p,viewBox:g,body:a}}var j2e,GF=N(()=>{"use strict";N4();DF();FF();zF();j2e=o(t=>t==="unset"||t==="undefined"||t==="none","isUnsetKeyword");o(RC,"iconToSVG")});function NC(t,e=Q2e){let r=[],n;for(;n=K2e.exec(t);)r.push(n[1]);if(!r.length)return t;let i="suffix"+(Math.random()*16777216|Date.now()).toString(16);return r.forEach(a=>{let s=typeof e=="function"?e(a):e+(Z2e++).toString(),l=a.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");t=t.replace(new RegExp('([#;"])('+l+')([")]|\\.[a-z])',"g"),"$1"+s+i+"$3")}),t=t.replace(new RegExp(i,"g"),""),t}var K2e,Q2e,Z2e,VF=N(()=>{"use strict";K2e=/\sid="(\S+)"/g,Q2e="IconifyId"+Date.now().toString(16)+(Math.random()*16777216|0).toString(16),Z2e=0;o(NC,"replaceIDs")});function MC(t,e){let r=t.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(let n in e)r+=" "+n+'="'+e[n]+'"';return'"+t+""}var UF=N(()=>{"use strict";o(MC,"iconToHTML")});var WF=Mi((iit,HF)=>{"use strict";var t0=1e3,r0=t0*60,n0=r0*60,Wf=n0*24,J2e=Wf*7,exe=Wf*365.25;HF.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return txe(t);if(r==="number"&&isFinite(t))return e.long?nxe(t):rxe(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function txe(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*exe;case"weeks":case"week":case"w":return r*J2e;case"days":case"day":case"d":return r*Wf;case"hours":case"hour":case"hrs":case"hr":case"h":return r*n0;case"minutes":case"minute":case"mins":case"min":case"m":return r*r0;case"seconds":case"second":case"secs":case"sec":case"s":return r*t0;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}o(txe,"parse");function rxe(t){var e=Math.abs(t);return e>=Wf?Math.round(t/Wf)+"d":e>=n0?Math.round(t/n0)+"h":e>=r0?Math.round(t/r0)+"m":e>=t0?Math.round(t/t0)+"s":t+"ms"}o(rxe,"fmtShort");function nxe(t){var e=Math.abs(t);return e>=Wf?I4(t,e,Wf,"day"):e>=n0?I4(t,e,n0,"hour"):e>=r0?I4(t,e,r0,"minute"):e>=t0?I4(t,e,t0,"second"):t+" ms"}o(nxe,"fmtLong");function I4(t,e,r,n){var i=e>=r*1.5;return Math.round(t/r)+" "+n+(i?"s":"")}o(I4,"plural")});var YF=Mi((sit,qF)=>{"use strict";function ixe(t){r.debug=r,r.default=r,r.coerce=u,r.disable=s,r.enable=i,r.enabled=l,r.humanize=WF(),r.destroy=h,Object.keys(t).forEach(f=>{r[f]=t[f]}),r.names=[],r.skips=[],r.formatters={};function e(f){let d=0;for(let p=0;p{if(E==="%%")return"%";C++;let S=r.formatters[A];if(typeof S=="function"){let _=v[C];E=S.call(x,_),v.splice(C,1),C--}return E}),r.formatArgs.call(x,v),(x.log||r.log).apply(x,v)}return o(y,"debug"),y.namespace=f,y.useColors=r.useColors(),y.color=r.selectColor(f),y.extend=n,y.destroy=r.destroy,Object.defineProperty(y,"enabled",{enumerable:!0,configurable:!1,get:o(()=>p!==null?p:(m!==r.namespaces&&(m=r.namespaces,g=r.enabled(f)),g),"get"),set:o(v=>{p=v},"set")}),typeof r.init=="function"&&r.init(y),y}o(r,"createDebug");function n(f,d){let p=r(this.namespace+(typeof d>"u"?":":d)+f);return p.log=this.log,p}o(n,"extend");function i(f){r.save(f),r.namespaces=f,r.names=[],r.skips=[];let d=(typeof f=="string"?f:"").trim().replace(" ",",").split(",").filter(Boolean);for(let p of d)p[0]==="-"?r.skips.push(p.slice(1)):r.names.push(p)}o(i,"enable");function a(f,d){let p=0,m=0,g=-1,y=0;for(;p"-"+d)].join(",");return r.enable(""),f}o(s,"disable");function l(f){for(let d of r.skips)if(a(f,d))return!1;for(let d of r.names)if(a(f,d))return!0;return!1}o(l,"enabled");function u(f){return f instanceof Error?f.stack||f.message:f}o(u,"coerce");function h(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return o(h,"destroy"),r.enable(r.load()),r}o(ixe,"setup");qF.exports=ixe});var XF=Mi((qs,O4)=>{"use strict";qs.formatArgs=sxe;qs.save=oxe;qs.load=lxe;qs.useColors=axe;qs.storage=cxe();qs.destroy=(()=>{let t=!1;return()=>{t||(t=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();qs.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function axe(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let t;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(t=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(t[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}o(axe,"useColors");function sxe(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+O4.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let r=0,n=0;t[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(r++,i==="%c"&&(n=r))}),t.splice(n,0,e)}o(sxe,"formatArgs");qs.log=console.debug||console.log||(()=>{});function oxe(t){try{t?qs.storage.setItem("debug",t):qs.storage.removeItem("debug")}catch{}}o(oxe,"save");function lxe(){let t;try{t=qs.storage.getItem("debug")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}o(lxe,"load");function cxe(){try{return localStorage}catch{}}o(cxe,"localstorage");O4.exports=YF()(qs);var{formatters:uxe}=O4.exports;uxe.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var uit,jF=N(()=>{"use strict";LF();BF();GF();VF();UF();uit=Sa(XF(),1)});var OC,IC,KF,P4,hxe,wo,tu=N(()=>{"use strict";vt();jF();OC={body:'?',height:80,width:80},IC=new Map,KF=new Map,P4=o(t=>{for(let e of t){if(!e.name)throw new Error('Invalid icon loader. Must have a "name" property with non-empty string value.');if(Y.debug("Registering icon pack:",e.name),"loader"in e)KF.set(e.name,e.loader);else if("icons"in e)IC.set(e.name,e.icons);else throw Y.error("Invalid icon loader:",e),new Error('Invalid icon loader. Must have either "icons" or "loader" property.')}},"registerIconPacks"),hxe=o(async(t,e)=>{let r=AC(t,!0,e!==void 0);if(!r)throw new Error(`Invalid icon name: ${t}`);let n=r.prefix||e;if(!n)throw new Error(`Icon name must contain a prefix: ${t}`);let i=IC.get(n);if(!i){let s=KF.get(n);if(!s)throw new Error(`Icon set not found: ${r.prefix}`);try{i={...await s(),prefix:n},IC.set(n,i)}catch(l){throw Y.error(l),new Error(`Failed to load icon set: ${r.prefix}`)}}let a=DC(i,r.name);if(!a)throw new Error(`Icon not found: ${t}`);return a},"getRegisteredIconData"),wo=o(async(t,e)=>{let r;try{r=await hxe(t,e?.fallbackPrefix)}catch(a){Y.error(a),r=OC}let n=RC(r,e);return MC(NC(n.body),n.attributes)},"getIconSVG")});function B4(t){for(var e=[],r=1;r{"use strict";o(B4,"dedent")});var F4,qf,QF,$4=N(()=>{"use strict";F4=/^-{3}\s*[\n\r](.*?)[\n\r]-{3}\s*[\n\r]+/s,qf=/%{2}{\s*(?:(\w+)\s*:|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,QF=/\s*%%.*\n/gm});var i0,BC=N(()=>{"use strict";i0=class extends Error{static{o(this,"UnknownDiagramError")}constructor(e){super(e),this.name="UnknownDiagramError"}}});var Yf,a0,z4,FC,ZF,Xf=N(()=>{"use strict";vt();$4();BC();Yf={},a0=o(function(t,e){t=t.replace(F4,"").replace(qf,"").replace(QF,` +`);for(let[r,{detector:n}]of Object.entries(Yf))if(n(t,e))return r;throw new i0(`No diagram type detected matching given configuration for text: ${t}`)},"detectType"),z4=o((...t)=>{for(let{id:e,detector:r,loader:n}of t)FC(e,r,n)},"registerLazyLoadedDiagrams"),FC=o((t,e,r)=>{Yf[t]&&Y.warn(`Detector with key ${t} already exists. Overwriting.`),Yf[t]={detector:e,loader:r},Y.debug(`Detector with key ${t} added${r?" with loader":""}`)},"addDetector"),ZF=o(t=>Yf[t].loader,"getDiagramLoader")});var Ty,JF,$C=N(()=>{"use strict";Ty=function(){var t=o(function($e,Re,Ie,be){for(Ie=Ie||{},be=$e.length;be--;Ie[$e[be]]=Re);return Ie},"o"),e=[1,24],r=[1,25],n=[1,26],i=[1,27],a=[1,28],s=[1,63],l=[1,64],u=[1,65],h=[1,66],f=[1,67],d=[1,68],p=[1,69],m=[1,29],g=[1,30],y=[1,31],v=[1,32],x=[1,33],b=[1,34],w=[1,35],C=[1,36],T=[1,37],E=[1,38],A=[1,39],S=[1,40],_=[1,41],I=[1,42],D=[1,43],k=[1,44],L=[1,45],R=[1,46],O=[1,47],M=[1,48],B=[1,50],F=[1,51],P=[1,52],z=[1,53],$=[1,54],H=[1,55],Q=[1,56],j=[1,57],ie=[1,58],ne=[1,59],le=[1,60],he=[14,42],K=[14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],X=[12,14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],te=[1,82],J=[1,83],se=[1,84],ue=[1,85],Z=[12,14,42],Se=[12,14,33,42],ce=[12,14,33,42,76,77,79,80],ae=[12,33],Oe=[34,36,37,38,39,40,41,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],ge={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,direction_tb:6,direction_bt:7,direction_rl:8,direction_lr:9,graphConfig:10,C4_CONTEXT:11,NEWLINE:12,statements:13,EOF:14,C4_CONTAINER:15,C4_COMPONENT:16,C4_DYNAMIC:17,C4_DEPLOYMENT:18,otherStatements:19,diagramStatements:20,otherStatement:21,title:22,accDescription:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,boundaryStatement:29,boundaryStartStatement:30,boundaryStopStatement:31,boundaryStart:32,LBRACE:33,ENTERPRISE_BOUNDARY:34,attributes:35,SYSTEM_BOUNDARY:36,BOUNDARY:37,CONTAINER_BOUNDARY:38,NODE:39,NODE_L:40,NODE_R:41,RBRACE:42,diagramStatement:43,PERSON:44,PERSON_EXT:45,SYSTEM:46,SYSTEM_DB:47,SYSTEM_QUEUE:48,SYSTEM_EXT:49,SYSTEM_EXT_DB:50,SYSTEM_EXT_QUEUE:51,CONTAINER:52,CONTAINER_DB:53,CONTAINER_QUEUE:54,CONTAINER_EXT:55,CONTAINER_EXT_DB:56,CONTAINER_EXT_QUEUE:57,COMPONENT:58,COMPONENT_DB:59,COMPONENT_QUEUE:60,COMPONENT_EXT:61,COMPONENT_EXT_DB:62,COMPONENT_EXT_QUEUE:63,REL:64,BIREL:65,REL_U:66,REL_D:67,REL_L:68,REL_R:69,REL_B:70,REL_INDEX:71,UPDATE_EL_STYLE:72,UPDATE_REL_STYLE:73,UPDATE_LAYOUT_CONFIG:74,attribute:75,STR:76,STR_KEY:77,STR_VALUE:78,ATTRIBUTE:79,ATTRIBUTE_EMPTY:80,$accept:0,$end:1},terminals_:{2:"error",6:"direction_tb",7:"direction_bt",8:"direction_rl",9:"direction_lr",11:"C4_CONTEXT",12:"NEWLINE",14:"EOF",15:"C4_CONTAINER",16:"C4_COMPONENT",17:"C4_DYNAMIC",18:"C4_DEPLOYMENT",22:"title",23:"accDescription",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"LBRACE",34:"ENTERPRISE_BOUNDARY",36:"SYSTEM_BOUNDARY",37:"BOUNDARY",38:"CONTAINER_BOUNDARY",39:"NODE",40:"NODE_L",41:"NODE_R",42:"RBRACE",44:"PERSON",45:"PERSON_EXT",46:"SYSTEM",47:"SYSTEM_DB",48:"SYSTEM_QUEUE",49:"SYSTEM_EXT",50:"SYSTEM_EXT_DB",51:"SYSTEM_EXT_QUEUE",52:"CONTAINER",53:"CONTAINER_DB",54:"CONTAINER_QUEUE",55:"CONTAINER_EXT",56:"CONTAINER_EXT_DB",57:"CONTAINER_EXT_QUEUE",58:"COMPONENT",59:"COMPONENT_DB",60:"COMPONENT_QUEUE",61:"COMPONENT_EXT",62:"COMPONENT_EXT_DB",63:"COMPONENT_EXT_QUEUE",64:"REL",65:"BIREL",66:"REL_U",67:"REL_D",68:"REL_L",69:"REL_R",70:"REL_B",71:"REL_INDEX",72:"UPDATE_EL_STYLE",73:"UPDATE_REL_STYLE",74:"UPDATE_LAYOUT_CONFIG",76:"STR",77:"STR_KEY",78:"STR_VALUE",79:"ATTRIBUTE",80:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[5,1],[5,1],[5,1],[5,1],[4,1],[10,4],[10,4],[10,4],[10,4],[10,4],[13,1],[13,1],[13,2],[19,1],[19,2],[19,3],[21,1],[21,1],[21,2],[21,2],[21,1],[29,3],[30,3],[30,3],[30,4],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[31,1],[20,1],[20,2],[20,3],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,1],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[35,1],[35,2],[75,1],[75,2],[75,1],[75,1]],performAction:o(function(Re,Ie,be,W,de,re,oe){var V=re.length-1;switch(de){case 3:W.setDirection("TB");break;case 4:W.setDirection("BT");break;case 5:W.setDirection("RL");break;case 6:W.setDirection("LR");break;case 8:case 9:case 10:case 11:case 12:W.setC4Type(re[V-3]);break;case 19:W.setTitle(re[V].substring(6)),this.$=re[V].substring(6);break;case 20:W.setAccDescription(re[V].substring(15)),this.$=re[V].substring(15);break;case 21:this.$=re[V].trim(),W.setTitle(this.$);break;case 22:case 23:this.$=re[V].trim(),W.setAccDescription(this.$);break;case 28:re[V].splice(2,0,"ENTERPRISE"),W.addPersonOrSystemBoundary(...re[V]),this.$=re[V];break;case 29:re[V].splice(2,0,"SYSTEM"),W.addPersonOrSystemBoundary(...re[V]),this.$=re[V];break;case 30:W.addPersonOrSystemBoundary(...re[V]),this.$=re[V];break;case 31:re[V].splice(2,0,"CONTAINER"),W.addContainerBoundary(...re[V]),this.$=re[V];break;case 32:W.addDeploymentNode("node",...re[V]),this.$=re[V];break;case 33:W.addDeploymentNode("nodeL",...re[V]),this.$=re[V];break;case 34:W.addDeploymentNode("nodeR",...re[V]),this.$=re[V];break;case 35:W.popBoundaryParseStack();break;case 39:W.addPersonOrSystem("person",...re[V]),this.$=re[V];break;case 40:W.addPersonOrSystem("external_person",...re[V]),this.$=re[V];break;case 41:W.addPersonOrSystem("system",...re[V]),this.$=re[V];break;case 42:W.addPersonOrSystem("system_db",...re[V]),this.$=re[V];break;case 43:W.addPersonOrSystem("system_queue",...re[V]),this.$=re[V];break;case 44:W.addPersonOrSystem("external_system",...re[V]),this.$=re[V];break;case 45:W.addPersonOrSystem("external_system_db",...re[V]),this.$=re[V];break;case 46:W.addPersonOrSystem("external_system_queue",...re[V]),this.$=re[V];break;case 47:W.addContainer("container",...re[V]),this.$=re[V];break;case 48:W.addContainer("container_db",...re[V]),this.$=re[V];break;case 49:W.addContainer("container_queue",...re[V]),this.$=re[V];break;case 50:W.addContainer("external_container",...re[V]),this.$=re[V];break;case 51:W.addContainer("external_container_db",...re[V]),this.$=re[V];break;case 52:W.addContainer("external_container_queue",...re[V]),this.$=re[V];break;case 53:W.addComponent("component",...re[V]),this.$=re[V];break;case 54:W.addComponent("component_db",...re[V]),this.$=re[V];break;case 55:W.addComponent("component_queue",...re[V]),this.$=re[V];break;case 56:W.addComponent("external_component",...re[V]),this.$=re[V];break;case 57:W.addComponent("external_component_db",...re[V]),this.$=re[V];break;case 58:W.addComponent("external_component_queue",...re[V]),this.$=re[V];break;case 60:W.addRel("rel",...re[V]),this.$=re[V];break;case 61:W.addRel("birel",...re[V]),this.$=re[V];break;case 62:W.addRel("rel_u",...re[V]),this.$=re[V];break;case 63:W.addRel("rel_d",...re[V]),this.$=re[V];break;case 64:W.addRel("rel_l",...re[V]),this.$=re[V];break;case 65:W.addRel("rel_r",...re[V]),this.$=re[V];break;case 66:W.addRel("rel_b",...re[V]),this.$=re[V];break;case 67:re[V].splice(0,1),W.addRel("rel",...re[V]),this.$=re[V];break;case 68:W.updateElStyle("update_el_style",...re[V]),this.$=re[V];break;case 69:W.updateRelStyle("update_rel_style",...re[V]),this.$=re[V];break;case 70:W.updateLayoutConfig("update_layout_config",...re[V]),this.$=re[V];break;case 71:this.$=[re[V]];break;case 72:re[V].unshift(re[V-1]),this.$=re[V];break;case 73:case 75:this.$=re[V].trim();break;case 74:let xe={};xe[re[V-1].trim()]=re[V].trim(),this.$=xe;break;case 76:this.$="";break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],7:[1,6],8:[1,7],9:[1,8],10:4,11:[1,9],15:[1,10],16:[1,11],17:[1,12],18:[1,13]},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,7]},{1:[2,3]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{12:[1,14]},{12:[1,15]},{12:[1,16]},{12:[1,17]},{12:[1,18]},{13:19,19:20,20:21,21:22,22:e,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:w,51:C,52:T,53:E,54:A,55:S,56:_,57:I,58:D,59:k,60:L,61:R,62:O,63:M,64:B,65:F,66:P,67:z,68:$,69:H,70:Q,71:j,72:ie,73:ne,74:le},{13:70,19:20,20:21,21:22,22:e,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:w,51:C,52:T,53:E,54:A,55:S,56:_,57:I,58:D,59:k,60:L,61:R,62:O,63:M,64:B,65:F,66:P,67:z,68:$,69:H,70:Q,71:j,72:ie,73:ne,74:le},{13:71,19:20,20:21,21:22,22:e,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:w,51:C,52:T,53:E,54:A,55:S,56:_,57:I,58:D,59:k,60:L,61:R,62:O,63:M,64:B,65:F,66:P,67:z,68:$,69:H,70:Q,71:j,72:ie,73:ne,74:le},{13:72,19:20,20:21,21:22,22:e,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:w,51:C,52:T,53:E,54:A,55:S,56:_,57:I,58:D,59:k,60:L,61:R,62:O,63:M,64:B,65:F,66:P,67:z,68:$,69:H,70:Q,71:j,72:ie,73:ne,74:le},{13:73,19:20,20:21,21:22,22:e,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:w,51:C,52:T,53:E,54:A,55:S,56:_,57:I,58:D,59:k,60:L,61:R,62:O,63:M,64:B,65:F,66:P,67:z,68:$,69:H,70:Q,71:j,72:ie,73:ne,74:le},{14:[1,74]},t(he,[2,13],{43:23,29:49,30:61,32:62,20:75,34:s,36:l,37:u,38:h,39:f,40:d,41:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w,51:C,52:T,53:E,54:A,55:S,56:_,57:I,58:D,59:k,60:L,61:R,62:O,63:M,64:B,65:F,66:P,67:z,68:$,69:H,70:Q,71:j,72:ie,73:ne,74:le}),t(he,[2,14]),t(K,[2,16],{12:[1,76]}),t(he,[2,36],{12:[1,77]}),t(X,[2,19]),t(X,[2,20]),{25:[1,78]},{27:[1,79]},t(X,[2,23]),{35:80,75:81,76:te,77:J,79:se,80:ue},{35:86,75:81,76:te,77:J,79:se,80:ue},{35:87,75:81,76:te,77:J,79:se,80:ue},{35:88,75:81,76:te,77:J,79:se,80:ue},{35:89,75:81,76:te,77:J,79:se,80:ue},{35:90,75:81,76:te,77:J,79:se,80:ue},{35:91,75:81,76:te,77:J,79:se,80:ue},{35:92,75:81,76:te,77:J,79:se,80:ue},{35:93,75:81,76:te,77:J,79:se,80:ue},{35:94,75:81,76:te,77:J,79:se,80:ue},{35:95,75:81,76:te,77:J,79:se,80:ue},{35:96,75:81,76:te,77:J,79:se,80:ue},{35:97,75:81,76:te,77:J,79:se,80:ue},{35:98,75:81,76:te,77:J,79:se,80:ue},{35:99,75:81,76:te,77:J,79:se,80:ue},{35:100,75:81,76:te,77:J,79:se,80:ue},{35:101,75:81,76:te,77:J,79:se,80:ue},{35:102,75:81,76:te,77:J,79:se,80:ue},{35:103,75:81,76:te,77:J,79:se,80:ue},{35:104,75:81,76:te,77:J,79:se,80:ue},t(Z,[2,59]),{35:105,75:81,76:te,77:J,79:se,80:ue},{35:106,75:81,76:te,77:J,79:se,80:ue},{35:107,75:81,76:te,77:J,79:se,80:ue},{35:108,75:81,76:te,77:J,79:se,80:ue},{35:109,75:81,76:te,77:J,79:se,80:ue},{35:110,75:81,76:te,77:J,79:se,80:ue},{35:111,75:81,76:te,77:J,79:se,80:ue},{35:112,75:81,76:te,77:J,79:se,80:ue},{35:113,75:81,76:te,77:J,79:se,80:ue},{35:114,75:81,76:te,77:J,79:se,80:ue},{35:115,75:81,76:te,77:J,79:se,80:ue},{20:116,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:w,51:C,52:T,53:E,54:A,55:S,56:_,57:I,58:D,59:k,60:L,61:R,62:O,63:M,64:B,65:F,66:P,67:z,68:$,69:H,70:Q,71:j,72:ie,73:ne,74:le},{12:[1,118],33:[1,117]},{35:119,75:81,76:te,77:J,79:se,80:ue},{35:120,75:81,76:te,77:J,79:se,80:ue},{35:121,75:81,76:te,77:J,79:se,80:ue},{35:122,75:81,76:te,77:J,79:se,80:ue},{35:123,75:81,76:te,77:J,79:se,80:ue},{35:124,75:81,76:te,77:J,79:se,80:ue},{35:125,75:81,76:te,77:J,79:se,80:ue},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},t(he,[2,15]),t(K,[2,17],{21:22,19:130,22:e,23:r,24:n,26:i,28:a}),t(he,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:e,23:r,24:n,26:i,28:a,34:s,36:l,37:u,38:h,39:f,40:d,41:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w,51:C,52:T,53:E,54:A,55:S,56:_,57:I,58:D,59:k,60:L,61:R,62:O,63:M,64:B,65:F,66:P,67:z,68:$,69:H,70:Q,71:j,72:ie,73:ne,74:le}),t(X,[2,21]),t(X,[2,22]),t(Z,[2,39]),t(Se,[2,71],{75:81,35:132,76:te,77:J,79:se,80:ue}),t(ce,[2,73]),{78:[1,133]},t(ce,[2,75]),t(ce,[2,76]),t(Z,[2,40]),t(Z,[2,41]),t(Z,[2,42]),t(Z,[2,43]),t(Z,[2,44]),t(Z,[2,45]),t(Z,[2,46]),t(Z,[2,47]),t(Z,[2,48]),t(Z,[2,49]),t(Z,[2,50]),t(Z,[2,51]),t(Z,[2,52]),t(Z,[2,53]),t(Z,[2,54]),t(Z,[2,55]),t(Z,[2,56]),t(Z,[2,57]),t(Z,[2,58]),t(Z,[2,60]),t(Z,[2,61]),t(Z,[2,62]),t(Z,[2,63]),t(Z,[2,64]),t(Z,[2,65]),t(Z,[2,66]),t(Z,[2,67]),t(Z,[2,68]),t(Z,[2,69]),t(Z,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},t(ae,[2,28]),t(ae,[2,29]),t(ae,[2,30]),t(ae,[2,31]),t(ae,[2,32]),t(ae,[2,33]),t(ae,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},t(K,[2,18]),t(he,[2,38]),t(Se,[2,72]),t(ce,[2,74]),t(Z,[2,24]),t(Z,[2,35]),t(Oe,[2,25]),t(Oe,[2,26],{12:[1,138]}),t(Oe,[2,27])],defaultActions:{2:[2,1],3:[2,2],4:[2,7],5:[2,3],6:[2,4],7:[2,5],8:[2,6],74:[2,8],126:[2,9],127:[2,10],128:[2,11],129:[2,12]},parseError:o(function(Re,Ie){if(Ie.recoverable)this.trace(Re);else{var be=new Error(Re);throw be.hash=Ie,be}},"parseError"),parse:o(function(Re){var Ie=this,be=[0],W=[],de=[null],re=[],oe=this.table,V="",xe=0,q=0,pe=0,ve=2,Pe=1,_e=re.slice.call(arguments,1),we=Object.create(this.lexer),Ve={yy:{}};for(var De in this.yy)Object.prototype.hasOwnProperty.call(this.yy,De)&&(Ve.yy[De]=this.yy[De]);we.setInput(Re,Ve.yy),Ve.yy.lexer=we,Ve.yy.parser=this,typeof we.yylloc>"u"&&(we.yylloc={});var qe=we.yylloc;re.push(qe);var at=we.options&&we.options.ranges;typeof Ve.yy.parseError=="function"?this.parseError=Ve.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Rt(nt){be.length=be.length-2*nt,de.length=de.length-nt,re.length=re.length-nt}o(Rt,"popStack");function st(){var nt;return nt=W.pop()||we.lex()||Pe,typeof nt!="number"&&(nt instanceof Array&&(W=nt,nt=W.pop()),nt=Ie.symbols_[nt]||nt),nt}o(st,"lex");for(var Ue,ct,We,ot,Yt,bt,Mt={},xt,ut,Et,ft;;){if(We=be[be.length-1],this.defaultActions[We]?ot=this.defaultActions[We]:((Ue===null||typeof Ue>"u")&&(Ue=st()),ot=oe[We]&&oe[We][Ue]),typeof ot>"u"||!ot.length||!ot[0]){var yt="";ft=[];for(xt in oe[We])this.terminals_[xt]&&xt>ve&&ft.push("'"+this.terminals_[xt]+"'");we.showPosition?yt="Parse error on line "+(xe+1)+`: +`+we.showPosition()+` +Expecting `+ft.join(", ")+", got '"+(this.terminals_[Ue]||Ue)+"'":yt="Parse error on line "+(xe+1)+": Unexpected "+(Ue==Pe?"end of input":"'"+(this.terminals_[Ue]||Ue)+"'"),this.parseError(yt,{text:we.match,token:this.terminals_[Ue]||Ue,line:we.yylineno,loc:qe,expected:ft})}if(ot[0]instanceof Array&&ot.length>1)throw new Error("Parse Error: multiple actions possible at state: "+We+", token: "+Ue);switch(ot[0]){case 1:be.push(Ue),de.push(we.yytext),re.push(we.yylloc),be.push(ot[1]),Ue=null,ct?(Ue=ct,ct=null):(q=we.yyleng,V=we.yytext,xe=we.yylineno,qe=we.yylloc,pe>0&&pe--);break;case 2:if(ut=this.productions_[ot[1]][1],Mt.$=de[de.length-ut],Mt._$={first_line:re[re.length-(ut||1)].first_line,last_line:re[re.length-1].last_line,first_column:re[re.length-(ut||1)].first_column,last_column:re[re.length-1].last_column},at&&(Mt._$.range=[re[re.length-(ut||1)].range[0],re[re.length-1].range[1]]),bt=this.performAction.apply(Mt,[V,q,xe,Ve.yy,ot[1],de,re].concat(_e)),typeof bt<"u")return bt;ut&&(be=be.slice(0,-1*ut*2),de=de.slice(0,-1*ut),re=re.slice(0,-1*ut)),be.push(this.productions_[ot[1]][0]),de.push(Mt.$),re.push(Mt._$),Et=oe[be[be.length-2]][be[be.length-1]],be.push(Et);break;case 3:return!0}}return!0},"parse")},ze=function(){var $e={EOF:1,parseError:o(function(Ie,be){if(this.yy.parser)this.yy.parser.parseError(Ie,be);else throw new Error(Ie)},"parseError"),setInput:o(function(Re,Ie){return this.yy=Ie||this.yy||{},this._input=Re,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var Re=this._input[0];this.yytext+=Re,this.yyleng++,this.offset++,this.match+=Re,this.matched+=Re;var Ie=Re.match(/(?:\r\n?|\n).*/g);return Ie?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Re},"input"),unput:o(function(Re){var Ie=Re.length,be=Re.split(/(?:\r\n?|\n)/g);this._input=Re+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ie),this.offset-=Ie;var W=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),be.length-1&&(this.yylineno-=be.length-1);var de=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:be?(be.length===W.length?this.yylloc.first_column:0)+W[W.length-be.length].length-be[0].length:this.yylloc.first_column-Ie},this.options.ranges&&(this.yylloc.range=[de[0],de[0]+this.yyleng-Ie]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(Re){this.unput(this.match.slice(Re))},"less"),pastInput:o(function(){var Re=this.matched.substr(0,this.matched.length-this.match.length);return(Re.length>20?"...":"")+Re.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var Re=this.match;return Re.length<20&&(Re+=this._input.substr(0,20-Re.length)),(Re.substr(0,20)+(Re.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var Re=this.pastInput(),Ie=new Array(Re.length+1).join("-");return Re+this.upcomingInput()+` +`+Ie+"^"},"showPosition"),test_match:o(function(Re,Ie){var be,W,de;if(this.options.backtrack_lexer&&(de={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(de.yylloc.range=this.yylloc.range.slice(0))),W=Re[0].match(/(?:\r\n?|\n).*/g),W&&(this.yylineno+=W.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:W?W[W.length-1].length-W[W.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Re[0].length},this.yytext+=Re[0],this.match+=Re[0],this.matches=Re,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(Re[0].length),this.matched+=Re[0],be=this.performAction.call(this,this.yy,this,Ie,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),be)return be;if(this._backtrack){for(var re in de)this[re]=de[re];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Re,Ie,be,W;this._more||(this.yytext="",this.match="");for(var de=this._currentRules(),re=0;reIe[0].length)){if(Ie=be,W=re,this.options.backtrack_lexer){if(Re=this.test_match(be,de[re]),Re!==!1)return Re;if(this._backtrack){Ie=!1;continue}else return!1}else if(!this.options.flex)break}return Ie?(Re=this.test_match(Ie,de[W]),Re!==!1?Re:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var Ie=this.next();return Ie||this.lex()},"lex"),begin:o(function(Ie){this.conditionStack.push(Ie)},"begin"),popState:o(function(){var Ie=this.conditionStack.length-1;return Ie>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(Ie){return Ie=this.conditionStack.length-1-Math.abs(Ie||0),Ie>=0?this.conditionStack[Ie]:"INITIAL"},"topState"),pushState:o(function(Ie){this.begin(Ie)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(Ie,be,W,de){var re=de;switch(W){case 0:return 6;case 1:return 7;case 2:return 8;case 3:return 9;case 4:return 22;case 5:return 23;case 6:return this.begin("acc_title"),24;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),26;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:break;case 14:c;break;case 15:return 12;case 16:break;case 17:return 11;case 18:return 15;case 19:return 16;case 20:return 17;case 21:return 18;case 22:return this.begin("person_ext"),45;break;case 23:return this.begin("person"),44;break;case 24:return this.begin("system_ext_queue"),51;break;case 25:return this.begin("system_ext_db"),50;break;case 26:return this.begin("system_ext"),49;break;case 27:return this.begin("system_queue"),48;break;case 28:return this.begin("system_db"),47;break;case 29:return this.begin("system"),46;break;case 30:return this.begin("boundary"),37;break;case 31:return this.begin("enterprise_boundary"),34;break;case 32:return this.begin("system_boundary"),36;break;case 33:return this.begin("container_ext_queue"),57;break;case 34:return this.begin("container_ext_db"),56;break;case 35:return this.begin("container_ext"),55;break;case 36:return this.begin("container_queue"),54;break;case 37:return this.begin("container_db"),53;break;case 38:return this.begin("container"),52;break;case 39:return this.begin("container_boundary"),38;break;case 40:return this.begin("component_ext_queue"),63;break;case 41:return this.begin("component_ext_db"),62;break;case 42:return this.begin("component_ext"),61;break;case 43:return this.begin("component_queue"),60;break;case 44:return this.begin("component_db"),59;break;case 45:return this.begin("component"),58;break;case 46:return this.begin("node"),39;break;case 47:return this.begin("node"),39;break;case 48:return this.begin("node_l"),40;break;case 49:return this.begin("node_r"),41;break;case 50:return this.begin("rel"),64;break;case 51:return this.begin("birel"),65;break;case 52:return this.begin("rel_u"),66;break;case 53:return this.begin("rel_u"),66;break;case 54:return this.begin("rel_d"),67;break;case 55:return this.begin("rel_d"),67;break;case 56:return this.begin("rel_l"),68;break;case 57:return this.begin("rel_l"),68;break;case 58:return this.begin("rel_r"),69;break;case 59:return this.begin("rel_r"),69;break;case 60:return this.begin("rel_b"),70;break;case 61:return this.begin("rel_index"),71;break;case 62:return this.begin("update_el_style"),72;break;case 63:return this.begin("update_rel_style"),73;break;case 64:return this.begin("update_layout_config"),74;break;case 65:return"EOF_IN_STRUCT";case 66:return this.begin("attribute"),"ATTRIBUTE_EMPTY";break;case 67:this.begin("attribute");break;case 68:this.popState(),this.popState();break;case 69:return 80;case 70:break;case 71:return 80;case 72:this.begin("string");break;case 73:this.popState();break;case 74:return"STR";case 75:this.begin("string_kv");break;case 76:return this.begin("string_kv_key"),"STR_KEY";break;case 77:this.popState(),this.begin("string_kv_value");break;case 78:return"STR_VALUE";case 79:this.popState(),this.popState();break;case 80:return"STR";case 81:return"LBRACE";case 82:return"RBRACE";case 83:return"SPACE";case 84:return"EOL";case 85:return 14}},"anonymous"),rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:title\s[^#\n;]+)/,/^(?:accDescription\s[^#\n;]+)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:C4Context\b)/,/^(?:C4Container\b)/,/^(?:C4Component\b)/,/^(?:C4Dynamic\b)/,/^(?:C4Deployment\b)/,/^(?:Person_Ext\b)/,/^(?:Person\b)/,/^(?:SystemQueue_Ext\b)/,/^(?:SystemDb_Ext\b)/,/^(?:System_Ext\b)/,/^(?:SystemQueue\b)/,/^(?:SystemDb\b)/,/^(?:System\b)/,/^(?:Boundary\b)/,/^(?:Enterprise_Boundary\b)/,/^(?:System_Boundary\b)/,/^(?:ContainerQueue_Ext\b)/,/^(?:ContainerDb_Ext\b)/,/^(?:Container_Ext\b)/,/^(?:ContainerQueue\b)/,/^(?:ContainerDb\b)/,/^(?:Container\b)/,/^(?:Container_Boundary\b)/,/^(?:ComponentQueue_Ext\b)/,/^(?:ComponentDb_Ext\b)/,/^(?:Component_Ext\b)/,/^(?:ComponentQueue\b)/,/^(?:ComponentDb\b)/,/^(?:Component\b)/,/^(?:Deployment_Node\b)/,/^(?:Node\b)/,/^(?:Node_L\b)/,/^(?:Node_R\b)/,/^(?:Rel\b)/,/^(?:BiRel\b)/,/^(?:Rel_Up\b)/,/^(?:Rel_U\b)/,/^(?:Rel_Down\b)/,/^(?:Rel_D\b)/,/^(?:Rel_Left\b)/,/^(?:Rel_L\b)/,/^(?:Rel_Right\b)/,/^(?:Rel_R\b)/,/^(?:Rel_Back\b)/,/^(?:RelIndex\b)/,/^(?:UpdateElementStyle\b)/,/^(?:UpdateRelStyle\b)/,/^(?:UpdateLayoutConfig\b)/,/^(?:$)/,/^(?:[(][ ]*[,])/,/^(?:[(])/,/^(?:[)])/,/^(?:,,)/,/^(?:,)/,/^(?:[ ]*["]["])/,/^(?:[ ]*["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:[ ]*[\$])/,/^(?:[^=]*)/,/^(?:[=][ ]*["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:[^,]+)/,/^(?:\{)/,/^(?:\})/,/^(?:[\s]+)/,/^(?:[\n\r]+)/,/^(?:$)/],conditions:{acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},string_kv_value:{rules:[78,79],inclusive:!1},string_kv_key:{rules:[77],inclusive:!1},string_kv:{rules:[76],inclusive:!1},string:{rules:[73,74],inclusive:!1},attribute:{rules:[68,69,70,71,72,75,80],inclusive:!1},update_layout_config:{rules:[65,66,67,68],inclusive:!1},update_rel_style:{rules:[65,66,67,68],inclusive:!1},update_el_style:{rules:[65,66,67,68],inclusive:!1},rel_b:{rules:[65,66,67,68],inclusive:!1},rel_r:{rules:[65,66,67,68],inclusive:!1},rel_l:{rules:[65,66,67,68],inclusive:!1},rel_d:{rules:[65,66,67,68],inclusive:!1},rel_u:{rules:[65,66,67,68],inclusive:!1},rel_bi:{rules:[],inclusive:!1},rel:{rules:[65,66,67,68],inclusive:!1},node_r:{rules:[65,66,67,68],inclusive:!1},node_l:{rules:[65,66,67,68],inclusive:!1},node:{rules:[65,66,67,68],inclusive:!1},index:{rules:[],inclusive:!1},rel_index:{rules:[65,66,67,68],inclusive:!1},component_ext_queue:{rules:[],inclusive:!1},component_ext_db:{rules:[65,66,67,68],inclusive:!1},component_ext:{rules:[65,66,67,68],inclusive:!1},component_queue:{rules:[65,66,67,68],inclusive:!1},component_db:{rules:[65,66,67,68],inclusive:!1},component:{rules:[65,66,67,68],inclusive:!1},container_boundary:{rules:[65,66,67,68],inclusive:!1},container_ext_queue:{rules:[65,66,67,68],inclusive:!1},container_ext_db:{rules:[65,66,67,68],inclusive:!1},container_ext:{rules:[65,66,67,68],inclusive:!1},container_queue:{rules:[65,66,67,68],inclusive:!1},container_db:{rules:[65,66,67,68],inclusive:!1},container:{rules:[65,66,67,68],inclusive:!1},birel:{rules:[65,66,67,68],inclusive:!1},system_boundary:{rules:[65,66,67,68],inclusive:!1},enterprise_boundary:{rules:[65,66,67,68],inclusive:!1},boundary:{rules:[65,66,67,68],inclusive:!1},system_ext_queue:{rules:[65,66,67,68],inclusive:!1},system_ext_db:{rules:[65,66,67,68],inclusive:!1},system_ext:{rules:[65,66,67,68],inclusive:!1},system_queue:{rules:[65,66,67,68],inclusive:!1},system_db:{rules:[65,66,67,68],inclusive:!1},system:{rules:[65,66,67,68],inclusive:!1},person_ext:{rules:[65,66,67,68],inclusive:!1},person:{rules:[65,66,67,68],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,81,82,83,84,85],inclusive:!0}}};return $e}();ge.lexer=ze;function He(){this.yy={}}return o(He,"Parser"),He.prototype=ge,ge.Parser=He,new He}();Ty.parser=Ty;JF=Ty});var zC,Gn,s0=N(()=>{"use strict";zC=o((t,e,{depth:r=2,clobber:n=!1}={})=>{let i={depth:r,clobber:n};return Array.isArray(e)&&!Array.isArray(t)?(e.forEach(a=>zC(t,a,i)),t):Array.isArray(e)&&Array.isArray(t)?(e.forEach(a=>{t.includes(a)||t.push(a)}),t):t===void 0||r<=0?t!=null&&typeof t=="object"&&typeof e=="object"?Object.assign(t,e):e:(e!==void 0&&typeof t=="object"&&typeof e=="object"&&Object.keys(e).forEach(a=>{typeof e[a]=="object"&&(t[a]===void 0||typeof t[a]=="object")?(t[a]===void 0&&(t[a]=Array.isArray(e[a])?[]:{}),t[a]=zC(t[a],e[a],{depth:r-1,clobber:n})):(n||typeof t[a]!="object"&&typeof e[a]!="object")&&(t[a]=e[a])}),t)},"assignWithDepth"),Gn=zC});var G4,e$,t$=N(()=>{"use strict";G4={min:{r:0,g:0,b:0,s:0,l:0,a:0},max:{r:255,g:255,b:255,h:360,s:100,l:100,a:1},clamp:{r:o(t=>t>=255?255:t<0?0:t,"r"),g:o(t=>t>=255?255:t<0?0:t,"g"),b:o(t=>t>=255?255:t<0?0:t,"b"),h:o(t=>t%360,"h"),s:o(t=>t>=100?100:t<0?0:t,"s"),l:o(t=>t>=100?100:t<0?0:t,"l"),a:o(t=>t>=1?1:t<0?0:t,"a")},toLinear:o(t=>{let e=t/255;return t>.03928?Math.pow((e+.055)/1.055,2.4):e/12.92},"toLinear"),hue2rgb:o((t,e,r)=>(r<0&&(r+=1),r>1&&(r-=1),r<.16666666666666666?t+(e-t)*6*r:r<.5?e:r<.6666666666666666?t+(e-t)*(.6666666666666666-r)*6:t),"hue2rgb"),hsl2rgb:o(({h:t,s:e,l:r},n)=>{if(!e)return r*2.55;t/=360,e/=100,r/=100;let i=r<.5?r*(1+e):r+e-r*e,a=2*r-i;switch(n){case"r":return G4.hue2rgb(a,i,t+.3333333333333333)*255;case"g":return G4.hue2rgb(a,i,t)*255;case"b":return G4.hue2rgb(a,i,t-.3333333333333333)*255}},"hsl2rgb"),rgb2hsl:o(({r:t,g:e,b:r},n)=>{t/=255,e/=255,r/=255;let i=Math.max(t,e,r),a=Math.min(t,e,r),s=(i+a)/2;if(n==="l")return s*100;if(i===a)return 0;let l=i-a,u=s>.5?l/(2-i-a):l/(i+a);if(n==="s")return u*100;switch(i){case t:return((e-r)/l+(e{"use strict";fxe={clamp:o((t,e,r)=>e>r?Math.min(e,Math.max(r,t)):Math.min(r,Math.max(e,t)),"clamp"),round:o(t=>Math.round(t*1e10)/1e10,"round")},r$=fxe});var dxe,i$,a$=N(()=>{"use strict";dxe={dec2hex:o(t=>{let e=Math.round(t).toString(16);return e.length>1?e:`0${e}`},"dec2hex")},i$=dxe});var pxe,jt,Wl=N(()=>{"use strict";t$();n$();a$();pxe={channel:e$,lang:r$,unit:i$},jt=pxe});var ru,Ii,ky=N(()=>{"use strict";Wl();ru={};for(let t=0;t<=255;t++)ru[t]=jt.unit.dec2hex(t);Ii={ALL:0,RGB:1,HSL:2}});var GC,s$,o$=N(()=>{"use strict";ky();GC=class{static{o(this,"Type")}constructor(){this.type=Ii.ALL}get(){return this.type}set(e){if(this.type&&this.type!==e)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=e}reset(){this.type=Ii.ALL}is(e){return this.type===e}},s$=GC});var VC,l$,c$=N(()=>{"use strict";Wl();o$();ky();VC=class{static{o(this,"Channels")}constructor(e,r){this.color=r,this.changed=!1,this.data=e,this.type=new s$}set(e,r){return this.color=r,this.changed=!1,this.data=e,this.type.type=Ii.ALL,this}_ensureHSL(){let e=this.data,{h:r,s:n,l:i}=e;r===void 0&&(e.h=jt.channel.rgb2hsl(e,"h")),n===void 0&&(e.s=jt.channel.rgb2hsl(e,"s")),i===void 0&&(e.l=jt.channel.rgb2hsl(e,"l"))}_ensureRGB(){let e=this.data,{r,g:n,b:i}=e;r===void 0&&(e.r=jt.channel.hsl2rgb(e,"r")),n===void 0&&(e.g=jt.channel.hsl2rgb(e,"g")),i===void 0&&(e.b=jt.channel.hsl2rgb(e,"b"))}get r(){let e=this.data,r=e.r;return!this.type.is(Ii.HSL)&&r!==void 0?r:(this._ensureHSL(),jt.channel.hsl2rgb(e,"r"))}get g(){let e=this.data,r=e.g;return!this.type.is(Ii.HSL)&&r!==void 0?r:(this._ensureHSL(),jt.channel.hsl2rgb(e,"g"))}get b(){let e=this.data,r=e.b;return!this.type.is(Ii.HSL)&&r!==void 0?r:(this._ensureHSL(),jt.channel.hsl2rgb(e,"b"))}get h(){let e=this.data,r=e.h;return!this.type.is(Ii.RGB)&&r!==void 0?r:(this._ensureRGB(),jt.channel.rgb2hsl(e,"h"))}get s(){let e=this.data,r=e.s;return!this.type.is(Ii.RGB)&&r!==void 0?r:(this._ensureRGB(),jt.channel.rgb2hsl(e,"s"))}get l(){let e=this.data,r=e.l;return!this.type.is(Ii.RGB)&&r!==void 0?r:(this._ensureRGB(),jt.channel.rgb2hsl(e,"l"))}get a(){return this.data.a}set r(e){this.type.set(Ii.RGB),this.changed=!0,this.data.r=e}set g(e){this.type.set(Ii.RGB),this.changed=!0,this.data.g=e}set b(e){this.type.set(Ii.RGB),this.changed=!0,this.data.b=e}set h(e){this.type.set(Ii.HSL),this.changed=!0,this.data.h=e}set s(e){this.type.set(Ii.HSL),this.changed=!0,this.data.s=e}set l(e){this.type.set(Ii.HSL),this.changed=!0,this.data.l=e}set a(e){this.changed=!0,this.data.a=e}},l$=VC});var mxe,ih,Ey=N(()=>{"use strict";c$();mxe=new l$({r:0,g:0,b:0,a:0},"transparent"),ih=mxe});var u$,jf,UC=N(()=>{"use strict";Ey();ky();u$={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:o(t=>{if(t.charCodeAt(0)!==35)return;let e=t.match(u$.re);if(!e)return;let r=e[1],n=parseInt(r,16),i=r.length,a=i%4===0,s=i>4,l=s?1:17,u=s?8:4,h=a?0:-1,f=s?255:15;return ih.set({r:(n>>u*(h+3)&f)*l,g:(n>>u*(h+2)&f)*l,b:(n>>u*(h+1)&f)*l,a:a?(n&f)*l/255:1},t)},"parse"),stringify:o(t=>{let{r:e,g:r,b:n,a:i}=t;return i<1?`#${ru[Math.round(e)]}${ru[Math.round(r)]}${ru[Math.round(n)]}${ru[Math.round(i*255)]}`:`#${ru[Math.round(e)]}${ru[Math.round(r)]}${ru[Math.round(n)]}`},"stringify")},jf=u$});var V4,Sy,h$=N(()=>{"use strict";Wl();Ey();V4={re:/^hsla?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(?:deg|grad|rad|turn)?)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(%)?))?\s*?\)$/i,hueRe:/^(.+?)(deg|grad|rad|turn)$/i,_hue2deg:o(t=>{let e=t.match(V4.hueRe);if(e){let[,r,n]=e;switch(n){case"grad":return jt.channel.clamp.h(parseFloat(r)*.9);case"rad":return jt.channel.clamp.h(parseFloat(r)*180/Math.PI);case"turn":return jt.channel.clamp.h(parseFloat(r)*360)}}return jt.channel.clamp.h(parseFloat(t))},"_hue2deg"),parse:o(t=>{let e=t.charCodeAt(0);if(e!==104&&e!==72)return;let r=t.match(V4.re);if(!r)return;let[,n,i,a,s,l]=r;return ih.set({h:V4._hue2deg(n),s:jt.channel.clamp.s(parseFloat(i)),l:jt.channel.clamp.l(parseFloat(a)),a:s?jt.channel.clamp.a(l?parseFloat(s)/100:parseFloat(s)):1},t)},"parse"),stringify:o(t=>{let{h:e,s:r,l:n,a:i}=t;return i<1?`hsla(${jt.lang.round(e)}, ${jt.lang.round(r)}%, ${jt.lang.round(n)}%, ${i})`:`hsl(${jt.lang.round(e)}, ${jt.lang.round(r)}%, ${jt.lang.round(n)}%)`},"stringify")},Sy=V4});var U4,HC,f$=N(()=>{"use strict";UC();U4={colors:{aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyanaqua:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",transparent:"#00000000",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},parse:o(t=>{t=t.toLowerCase();let e=U4.colors[t];if(e)return jf.parse(e)},"parse"),stringify:o(t=>{let e=jf.stringify(t);for(let r in U4.colors)if(U4.colors[r]===e)return r},"stringify")},HC=U4});var d$,Cy,p$=N(()=>{"use strict";Wl();Ey();d$={re:/^rgba?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?)))?\s*?\)$/i,parse:o(t=>{let e=t.charCodeAt(0);if(e!==114&&e!==82)return;let r=t.match(d$.re);if(!r)return;let[,n,i,a,s,l,u,h,f]=r;return ih.set({r:jt.channel.clamp.r(i?parseFloat(n)*2.55:parseFloat(n)),g:jt.channel.clamp.g(s?parseFloat(a)*2.55:parseFloat(a)),b:jt.channel.clamp.b(u?parseFloat(l)*2.55:parseFloat(l)),a:h?jt.channel.clamp.a(f?parseFloat(h)/100:parseFloat(h)):1},t)},"parse"),stringify:o(t=>{let{r:e,g:r,b:n,a:i}=t;return i<1?`rgba(${jt.lang.round(e)}, ${jt.lang.round(r)}, ${jt.lang.round(n)}, ${jt.lang.round(i)})`:`rgb(${jt.lang.round(e)}, ${jt.lang.round(r)}, ${jt.lang.round(n)})`},"stringify")},Cy=d$});var gxe,Oi,nu=N(()=>{"use strict";UC();h$();f$();p$();ky();gxe={format:{keyword:HC,hex:jf,rgb:Cy,rgba:Cy,hsl:Sy,hsla:Sy},parse:o(t=>{if(typeof t!="string")return t;let e=jf.parse(t)||Cy.parse(t)||Sy.parse(t)||HC.parse(t);if(e)return e;throw new Error(`Unsupported color format: "${t}"`)},"parse"),stringify:o(t=>!t.changed&&t.color?t.color:t.type.is(Ii.HSL)||t.data.r===void 0?Sy.stringify(t):t.a<1||!Number.isInteger(t.r)||!Number.isInteger(t.g)||!Number.isInteger(t.b)?Cy.stringify(t):jf.stringify(t),"stringify")},Oi=gxe});var yxe,H4,WC=N(()=>{"use strict";Wl();nu();yxe=o((t,e)=>{let r=Oi.parse(t);for(let n in e)r[n]=jt.channel.clamp[n](e[n]);return Oi.stringify(r)},"change"),H4=yxe});var vxe,qa,qC=N(()=>{"use strict";Wl();Ey();nu();WC();vxe=o((t,e,r=0,n=1)=>{if(typeof t!="number")return H4(t,{a:e});let i=ih.set({r:jt.channel.clamp.r(t),g:jt.channel.clamp.g(e),b:jt.channel.clamp.b(r),a:jt.channel.clamp.a(n)});return Oi.stringify(i)},"rgba"),qa=vxe});var xxe,Kf,m$=N(()=>{"use strict";Wl();nu();xxe=o((t,e)=>jt.lang.round(Oi.parse(t)[e]),"channel"),Kf=xxe});var bxe,g$,y$=N(()=>{"use strict";Wl();nu();bxe=o(t=>{let{r:e,g:r,b:n}=Oi.parse(t),i=.2126*jt.channel.toLinear(e)+.7152*jt.channel.toLinear(r)+.0722*jt.channel.toLinear(n);return jt.lang.round(i)},"luminance"),g$=bxe});var wxe,v$,x$=N(()=>{"use strict";y$();wxe=o(t=>g$(t)>=.5,"isLight"),v$=wxe});var Txe,ca,b$=N(()=>{"use strict";x$();Txe=o(t=>!v$(t),"isDark"),ca=Txe});var kxe,W4,YC=N(()=>{"use strict";Wl();nu();kxe=o((t,e,r)=>{let n=Oi.parse(t),i=n[e],a=jt.channel.clamp[e](i+r);return i!==a&&(n[e]=a),Oi.stringify(n)},"adjustChannel"),W4=kxe});var Exe,Dt,w$=N(()=>{"use strict";YC();Exe=o((t,e)=>W4(t,"l",e),"lighten"),Dt=Exe});var Sxe,Ot,T$=N(()=>{"use strict";YC();Sxe=o((t,e)=>W4(t,"l",-e),"darken"),Ot=Sxe});var Cxe,Me,k$=N(()=>{"use strict";nu();WC();Cxe=o((t,e)=>{let r=Oi.parse(t),n={};for(let i in e)e[i]&&(n[i]=r[i]+e[i]);return H4(t,n)},"adjust"),Me=Cxe});var Axe,E$,S$=N(()=>{"use strict";nu();qC();Axe=o((t,e,r=50)=>{let{r:n,g:i,b:a,a:s}=Oi.parse(t),{r:l,g:u,b:h,a:f}=Oi.parse(e),d=r/100,p=d*2-1,m=s-f,y=((p*m===-1?p:(p+m)/(1+p*m))+1)/2,v=1-y,x=n*y+l*v,b=i*y+u*v,w=a*y+h*v,C=s*d+f*(1-d);return qa(x,b,w,C)},"mix"),E$=Axe});var _xe,wt,C$=N(()=>{"use strict";nu();S$();_xe=o((t,e=100)=>{let r=Oi.parse(t);return r.r=255-r.r,r.g=255-r.g,r.b=255-r.b,E$(r,t,e)},"invert"),wt=_xe});var A$=N(()=>{"use strict";qC();m$();b$();w$();T$();k$();C$()});var Ys=N(()=>{"use strict";A$()});var ah,sh,Ay=N(()=>{"use strict";ah="#ffffff",sh="#f2f2f2"});var Ti,o0=N(()=>{"use strict";Ys();Ti=o((t,e)=>e?Me(t,{s:-40,l:10}):Me(t,{s:-40,l:-10}),"mkBorder")});var jC,_$,D$=N(()=>{"use strict";Ys();Ay();o0();jC=class{static{o(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#fff4dd",this.noteBkgColor="#fff5ad",this.noteTextColor="#333",this.THEME_COLOR_LIMIT=12,this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px"}updateColors(){if(this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#333"),this.secondaryColor=this.secondaryColor||Me(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||Me(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||Ti(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||Ti(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||Ti(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||Ti(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||wt(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||wt(this.tertiaryColor),this.lineColor=this.lineColor||wt(this.background),this.arrowheadColor=this.arrowheadColor||wt(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.primaryBorderColor,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?Ot(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||Ot(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||wt(this.lineColor),this.sectionBkgColor=this.sectionBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||this.secondaryColor,this.sectionBkgColor2=this.sectionBkgColor2||this.primaryColor,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||this.primaryColor,this.activeTaskBorderColor=this.activeTaskBorderColor||this.primaryColor,this.activeTaskBkgColor=this.activeTaskBkgColor||Dt(this.primaryColor,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.taskTextColor=this.taskTextColor||this.textColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.darkMode?(this.rowOdd=this.rowOdd||Ot(this.mainBkg,5)||"#ffffff",this.rowEven=this.rowEven||Ot(this.mainBkg,10)):(this.rowOdd=this.rowOdd||Dt(this.mainBkg,75)||"#ffffff",this.rowEven=this.rowEven||Dt(this.mainBkg,5)),this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||this.tertiaryColor,this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||Me(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Me(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Me(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Me(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Me(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Me(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||Me(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Me(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Me(this.primaryColor,{h:330}),this.darkMode)for(let r=0;r{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},_$=o(t=>{let e=new jC;return e.calculate(t),e},"getThemeVariables")});var KC,L$,R$=N(()=>{"use strict";Ys();o0();KC=class{static{o(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=Dt(this.primaryColor,16),this.tertiaryColor=Me(this.primaryColor,{h:-160}),this.primaryBorderColor=wt(this.background),this.secondaryBorderColor=Ti(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Ti(this.tertiaryColor,this.darkMode),this.primaryTextColor=wt(this.primaryColor),this.secondaryTextColor=wt(this.secondaryColor),this.tertiaryTextColor=wt(this.tertiaryColor),this.lineColor=wt(this.background),this.textColor=wt(this.background),this.mainBkg="#1f2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=Dt(wt("#323D47"),10),this.lineColor="calculated",this.border1="#ccc",this.border2=qa(255,255,255,.25),this.arrowheadColor="calculated",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="#181818",this.textColor="#ccc",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#F9FFFE",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="calculated",this.activationBkgColor="calculated",this.sequenceNumberColor="black",this.sectionBkgColor=Ot("#EAE8D9",30),this.altSectionBkgColor="calculated",this.sectionBkgColor2="#EAE8D9",this.excludeBkgColor=Ot(this.sectionBkgColor,10),this.taskBorderColor=qa(255,255,255,70),this.taskBkgColor="calculated",this.taskTextColor="calculated",this.taskTextLightColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor=qa(255,255,255,50),this.activeTaskBkgColor="#81B1DB",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="grey",this.critBorderColor="#E83737",this.critBkgColor="#E83737",this.taskTextDarkColor="calculated",this.todayLineColor="#DB5757",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.rowOdd=this.rowOdd||Dt(this.mainBkg,5)||"#ffffff",this.rowEven=this.rowEven||Ot(this.mainBkg,10),this.labelColor="calculated",this.errorBkgColor="#a44141",this.errorTextColor="#ddd"}updateColors(){this.secondBkg=Dt(this.mainBkg,16),this.lineColor=this.mainContrastColor,this.arrowheadColor=this.mainContrastColor,this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.edgeLabelBackground=Dt(this.labelBackground,25),this.actorBorder=this.border1,this.actorBkg=this.mainBkg,this.actorTextColor=this.mainContrastColor,this.actorLineColor=this.actorBorder,this.signalColor=this.mainContrastColor,this.signalTextColor=this.mainContrastColor,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.mainContrastColor,this.loopTextColor=this.mainContrastColor,this.noteBorderColor=this.secondaryBorderColor,this.noteBkgColor=this.secondBkg,this.noteTextColor=this.secondaryTextColor,this.activationBorderColor=this.border1,this.activationBkgColor=this.secondBkg,this.altSectionBkgColor=this.background,this.taskBkgColor=Dt(this.mainBkg,23),this.taskTextColor=this.darkTextColor,this.taskTextLightColor=this.mainContrastColor,this.taskTextOutsideColor=this.taskTextLightColor,this.gridColor=this.mainContrastColor,this.doneTaskBkgColor=this.mainContrastColor,this.taskTextDarkColor=this.darkTextColor,this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#555",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.primaryBorderColor,this.specialStateColor="#f4f4f4",this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.fillType0=this.primaryColor,this.fillType1=this.secondaryColor,this.fillType2=Me(this.primaryColor,{h:64}),this.fillType3=Me(this.secondaryColor,{h:64}),this.fillType4=Me(this.primaryColor,{h:-64}),this.fillType5=Me(this.secondaryColor,{h:-64}),this.fillType6=Me(this.primaryColor,{h:128}),this.fillType7=Me(this.secondaryColor,{h:128}),this.cScale1=this.cScale1||"#0b0000",this.cScale2=this.cScale2||"#4d1037",this.cScale3=this.cScale3||"#3f5258",this.cScale4=this.cScale4||"#4f2f1b",this.cScale5=this.cScale5||"#6e0a0a",this.cScale6=this.cScale6||"#3b0048",this.cScale7=this.cScale7||"#995a01",this.cScale8=this.cScale8||"#154706",this.cScale9=this.cScale9||"#161722",this.cScale10=this.cScale10||"#00296f",this.cScale11=this.cScale11||"#01629c",this.cScale12=this.cScale12||"#010029",this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||Me(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Me(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Me(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Me(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Me(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Me(this.primaryColor,{h:210}),this.cScale9=this.cScale9||Me(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Me(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Me(this.primaryColor,{h:330});for(let e=0;e{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},L$=o(t=>{let e=new KC;return e.calculate(t),e},"getThemeVariables")});var QC,oh,_y=N(()=>{"use strict";Ys();o0();Ay();QC=class{static{o(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#ECECFF",this.secondaryColor=Me(this.primaryColor,{h:120}),this.secondaryColor="#ffffde",this.tertiaryColor=Me(this.primaryColor,{h:-160}),this.primaryBorderColor=Ti(this.primaryColor,this.darkMode),this.secondaryBorderColor=Ti(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Ti(this.tertiaryColor,this.darkMode),this.primaryTextColor=wt(this.primaryColor),this.secondaryTextColor=wt(this.secondaryColor),this.tertiaryTextColor=wt(this.tertiaryColor),this.lineColor=wt(this.background),this.textColor=wt(this.background),this.background="white",this.mainBkg="#ECECFF",this.secondBkg="#ffffde",this.lineColor="#333333",this.border1="#9370DB",this.border2="#aaaa33",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="rgba(232,232,232, 0.8)",this.textColor="#333",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="calculated",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="calculated",this.taskTextColor=this.taskTextLightColor,this.taskTextDarkColor="calculated",this.taskTextOutsideColor=this.taskTextDarkColor,this.taskTextClickableColor="calculated",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBorderColor="calculated",this.critBkgColor="calculated",this.todayLineColor="calculated",this.sectionBkgColor=qa(102,102,255,.49),this.altSectionBkgColor="white",this.sectionBkgColor2="#fff400",this.taskBorderColor="#534fbc",this.taskBkgColor="#8a90dd",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="#534fbc",this.activeTaskBkgColor="#bfc7ff",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.rowOdd="calculated",this.rowEven="calculated",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222",this.updateColors()}updateColors(){this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||Me(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Me(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Me(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Me(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Me(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Me(this.primaryColor,{h:210}),this.cScale9=this.cScale9||Me(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Me(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Me(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||Ot(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||Ot(this.tertiaryColor,40);for(let e=0;e{this[n]==="calculated"&&(this[n]=void 0)}),typeof e!="object"){this.updateColors();return}let r=Object.keys(e);r.forEach(n=>{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},oh=o(t=>{let e=new QC;return e.calculate(t),e},"getThemeVariables")});var ZC,N$,M$=N(()=>{"use strict";Ys();Ay();o0();ZC=class{static{o(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#cde498",this.secondaryColor="#cdffb2",this.background="white",this.mainBkg="#cde498",this.secondBkg="#cdffb2",this.lineColor="green",this.border1="#13540c",this.border2="#6eaa49",this.arrowheadColor="green",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.tertiaryColor=Dt("#cde498",10),this.primaryBorderColor=Ti(this.primaryColor,this.darkMode),this.secondaryBorderColor=Ti(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Ti(this.tertiaryColor,this.darkMode),this.primaryTextColor=wt(this.primaryColor),this.secondaryTextColor=wt(this.secondaryColor),this.tertiaryTextColor=wt(this.primaryColor),this.lineColor=wt(this.background),this.textColor=wt(this.background),this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#333",this.edgeLabelBackground="#e8e8e8",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="calculated",this.signalColor="#333",this.signalTextColor="#333",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="#326932",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="#6eaa49",this.altSectionBkgColor="white",this.sectionBkgColor2="#6eaa49",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="#487e3a",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){this.actorBorder=Ot(this.mainBkg,20),this.actorBkg=this.mainBkg,this.labelBoxBkgColor=this.actorBkg,this.labelTextColor=this.actorTextColor,this.loopTextColor=this.actorTextColor,this.noteBorderColor=this.border2,this.noteTextColor=this.actorTextColor,this.actorLineColor=this.actorBorder,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||Me(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Me(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Me(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Me(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Me(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Me(this.primaryColor,{h:210}),this.cScale9=this.cScale9||Me(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Me(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Me(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||Ot(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||Ot(this.tertiaryColor,40);for(let e=0;e{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},N$=o(t=>{let e=new ZC;return e.calculate(t),e},"getThemeVariables")});var JC,I$,O$=N(()=>{"use strict";Ys();o0();Ay();JC=class{static{o(this,"Theme")}constructor(){this.primaryColor="#eee",this.contrast="#707070",this.secondaryColor=Dt(this.contrast,55),this.background="#ffffff",this.tertiaryColor=Me(this.primaryColor,{h:-160}),this.primaryBorderColor=Ti(this.primaryColor,this.darkMode),this.secondaryBorderColor=Ti(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Ti(this.tertiaryColor,this.darkMode),this.primaryTextColor=wt(this.primaryColor),this.secondaryTextColor=wt(this.secondaryColor),this.tertiaryTextColor=wt(this.tertiaryColor),this.lineColor=wt(this.background),this.textColor=wt(this.background),this.mainBkg="#eee",this.secondBkg="calculated",this.lineColor="#666",this.border1="#999",this.border2="calculated",this.note="#ffa",this.text="#333",this.critical="#d42",this.done="#bbb",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="white",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor=this.actorBorder,this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="calculated",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="white",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBkgColor="calculated",this.critBorderColor="calculated",this.todayLineColor="calculated",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.rowOdd=this.rowOdd||Dt(this.mainBkg,75)||"#ffffff",this.rowEven=this.rowEven||"#f4f4f4",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){this.secondBkg=Dt(this.contrast,55),this.border2=this.contrast,this.actorBorder=Dt(this.border1,23),this.actorBkg=this.mainBkg,this.actorTextColor=this.text,this.actorLineColor=this.actorBorder,this.signalColor=this.text,this.signalTextColor=this.text,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.text,this.loopTextColor=this.text,this.noteBorderColor="#999",this.noteBkgColor="#666",this.noteTextColor="#fff",this.cScale0=this.cScale0||"#555",this.cScale1=this.cScale1||"#F4F4F4",this.cScale2=this.cScale2||"#555",this.cScale3=this.cScale3||"#BBB",this.cScale4=this.cScale4||"#777",this.cScale5=this.cScale5||"#999",this.cScale6=this.cScale6||"#DDD",this.cScale7=this.cScale7||"#FFF",this.cScale8=this.cScale8||"#DDD",this.cScale9=this.cScale9||"#BBB",this.cScale10=this.cScale10||"#999",this.cScale11=this.cScale11||"#777";for(let e=0;e{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},I$=o(t=>{let e=new JC;return e.calculate(t),e},"getThemeVariables")});var To,q4=N(()=>{"use strict";D$();R$();_y();M$();O$();To={base:{getThemeVariables:_$},dark:{getThemeVariables:L$},default:{getThemeVariables:oh},forest:{getThemeVariables:N$},neutral:{getThemeVariables:I$}}});var ql,P$=N(()=>{"use strict";ql={flowchart:{useMaxWidth:!0,titleTopMargin:25,subGraphTitleMargin:{top:0,bottom:0},diagramPadding:8,htmlLabels:!0,nodeSpacing:50,rankSpacing:50,curve:"basis",padding:15,defaultRenderer:"dagre-wrapper",wrappingWidth:200},sequence:{useMaxWidth:!0,hideUnusedParticipants:!1,activationWidth:10,diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",mirrorActors:!0,forceMenus:!1,bottomMarginAdj:1,rightAngles:!1,showSequenceNumbers:!1,actorFontSize:14,actorFontFamily:'"Open Sans", sans-serif',actorFontWeight:400,noteFontSize:14,noteFontFamily:'"trebuchet ms", verdana, arial, sans-serif',noteFontWeight:400,noteAlign:"center",messageFontSize:16,messageFontFamily:'"trebuchet ms", verdana, arial, sans-serif',messageFontWeight:400,wrap:!1,wrapPadding:10,labelBoxWidth:50,labelBoxHeight:20},gantt:{useMaxWidth:!0,titleTopMargin:25,barHeight:20,barGap:4,topPadding:50,rightPadding:75,leftPadding:75,gridLineStartPadding:35,fontSize:11,sectionFontSize:11,numberSectionStyles:4,axisFormat:"%Y-%m-%d",topAxis:!1,displayMode:"",weekday:"sunday"},journey:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"]},class:{useMaxWidth:!0,titleTopMargin:25,arrowMarkerAbsolute:!1,dividerMargin:10,padding:5,textHeight:10,defaultRenderer:"dagre-wrapper",htmlLabels:!1,hideEmptyMembersBox:!1},state:{useMaxWidth:!0,titleTopMargin:25,dividerMargin:10,sizeUnit:5,padding:8,textHeight:10,titleShift:-15,noteMargin:10,forkWidth:70,forkHeight:7,miniPadding:2,fontSizeFactor:5.02,fontSize:24,labelHeight:16,edgeLengthFactor:"20",compositTitleSize:35,radius:5,defaultRenderer:"dagre-wrapper"},er:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:20,layoutDirection:"TB",minEntityWidth:100,minEntityHeight:75,entityPadding:15,nodeSpacing:140,rankSpacing:80,stroke:"gray",fill:"honeydew",fontSize:12},pie:{useMaxWidth:!0,textPosition:.75},quadrantChart:{useMaxWidth:!0,chartWidth:500,chartHeight:500,titleFontSize:20,titlePadding:10,quadrantPadding:5,xAxisLabelPadding:5,yAxisLabelPadding:5,xAxisLabelFontSize:16,yAxisLabelFontSize:16,quadrantLabelFontSize:16,quadrantTextTopPadding:5,pointTextPadding:5,pointLabelFontSize:12,pointRadius:5,xAxisPosition:"top",yAxisPosition:"left",quadrantInternalBorderStrokeWidth:1,quadrantExternalBorderStrokeWidth:2},xyChart:{useMaxWidth:!0,width:700,height:500,titleFontSize:20,titlePadding:10,showTitle:!0,xAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2},yAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2},chartOrientation:"vertical",plotReservedSpacePercent:50},requirement:{useMaxWidth:!0,rect_fill:"#f9f9f9",text_color:"#333",rect_border_size:"0.5px",rect_border_color:"#bbb",rect_min_width:200,rect_min_height:200,fontSize:14,rect_padding:10,line_height:20},mindmap:{useMaxWidth:!0,padding:10,maxNodeWidth:200},kanban:{useMaxWidth:!0,padding:8,sectionWidth:200,ticketBaseUrl:""},timeline:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"],disableMulticolor:!1},gitGraph:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:8,nodeLabel:{width:75,height:100,x:-25,y:0},mainBranchName:"main",mainBranchOrder:0,showCommitLabel:!0,showBranches:!0,rotateCommitLabel:!0,parallelCommits:!1,arrowMarkerAbsolute:!1},c4:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,c4ShapeMargin:50,c4ShapePadding:20,width:216,height:60,boxMargin:10,c4ShapeInRow:4,nextLinePaddingX:0,c4BoundaryInRow:2,personFontSize:14,personFontFamily:'"Open Sans", sans-serif',personFontWeight:"normal",external_personFontSize:14,external_personFontFamily:'"Open Sans", sans-serif',external_personFontWeight:"normal",systemFontSize:14,systemFontFamily:'"Open Sans", sans-serif',systemFontWeight:"normal",external_systemFontSize:14,external_systemFontFamily:'"Open Sans", sans-serif',external_systemFontWeight:"normal",system_dbFontSize:14,system_dbFontFamily:'"Open Sans", sans-serif',system_dbFontWeight:"normal",external_system_dbFontSize:14,external_system_dbFontFamily:'"Open Sans", sans-serif',external_system_dbFontWeight:"normal",system_queueFontSize:14,system_queueFontFamily:'"Open Sans", sans-serif',system_queueFontWeight:"normal",external_system_queueFontSize:14,external_system_queueFontFamily:'"Open Sans", sans-serif',external_system_queueFontWeight:"normal",boundaryFontSize:14,boundaryFontFamily:'"Open Sans", sans-serif',boundaryFontWeight:"normal",messageFontSize:12,messageFontFamily:'"Open Sans", sans-serif',messageFontWeight:"normal",containerFontSize:14,containerFontFamily:'"Open Sans", sans-serif',containerFontWeight:"normal",external_containerFontSize:14,external_containerFontFamily:'"Open Sans", sans-serif',external_containerFontWeight:"normal",container_dbFontSize:14,container_dbFontFamily:'"Open Sans", sans-serif',container_dbFontWeight:"normal",external_container_dbFontSize:14,external_container_dbFontFamily:'"Open Sans", sans-serif',external_container_dbFontWeight:"normal",container_queueFontSize:14,container_queueFontFamily:'"Open Sans", sans-serif',container_queueFontWeight:"normal",external_container_queueFontSize:14,external_container_queueFontFamily:'"Open Sans", sans-serif',external_container_queueFontWeight:"normal",componentFontSize:14,componentFontFamily:'"Open Sans", sans-serif',componentFontWeight:"normal",external_componentFontSize:14,external_componentFontFamily:'"Open Sans", sans-serif',external_componentFontWeight:"normal",component_dbFontSize:14,component_dbFontFamily:'"Open Sans", sans-serif',component_dbFontWeight:"normal",external_component_dbFontSize:14,external_component_dbFontFamily:'"Open Sans", sans-serif',external_component_dbFontWeight:"normal",component_queueFontSize:14,component_queueFontFamily:'"Open Sans", sans-serif',component_queueFontWeight:"normal",external_component_queueFontSize:14,external_component_queueFontFamily:'"Open Sans", sans-serif',external_component_queueFontWeight:"normal",wrap:!0,wrapPadding:10,person_bg_color:"#08427B",person_border_color:"#073B6F",external_person_bg_color:"#686868",external_person_border_color:"#8A8A8A",system_bg_color:"#1168BD",system_border_color:"#3C7FC0",system_db_bg_color:"#1168BD",system_db_border_color:"#3C7FC0",system_queue_bg_color:"#1168BD",system_queue_border_color:"#3C7FC0",external_system_bg_color:"#999999",external_system_border_color:"#8A8A8A",external_system_db_bg_color:"#999999",external_system_db_border_color:"#8A8A8A",external_system_queue_bg_color:"#999999",external_system_queue_border_color:"#8A8A8A",container_bg_color:"#438DD5",container_border_color:"#3C7FC0",container_db_bg_color:"#438DD5",container_db_border_color:"#3C7FC0",container_queue_bg_color:"#438DD5",container_queue_border_color:"#3C7FC0",external_container_bg_color:"#B3B3B3",external_container_border_color:"#A6A6A6",external_container_db_bg_color:"#B3B3B3",external_container_db_border_color:"#A6A6A6",external_container_queue_bg_color:"#B3B3B3",external_container_queue_border_color:"#A6A6A6",component_bg_color:"#85BBF0",component_border_color:"#78A8D8",component_db_bg_color:"#85BBF0",component_db_border_color:"#78A8D8",component_queue_bg_color:"#85BBF0",component_queue_border_color:"#78A8D8",external_component_bg_color:"#CCCCCC",external_component_border_color:"#BFBFBF",external_component_db_bg_color:"#CCCCCC",external_component_db_border_color:"#BFBFBF",external_component_queue_bg_color:"#CCCCCC",external_component_queue_border_color:"#BFBFBF"},sankey:{useMaxWidth:!0,width:600,height:400,linkColor:"gradient",nodeAlignment:"justify",showValues:!0,prefix:"",suffix:""},block:{useMaxWidth:!0,padding:8},packet:{useMaxWidth:!0,rowHeight:32,bitWidth:32,bitsPerRow:32,showBits:!0,paddingX:5,paddingY:5},architecture:{useMaxWidth:!0,padding:40,iconSize:80,fontSize:16},radar:{useMaxWidth:!0,width:600,height:600,marginTop:50,marginRight:50,marginBottom:50,marginLeft:50,axisScaleFactor:1,axisLabelFactor:1.05,curveTension:.17},theme:"default",look:"classic",handDrawnSeed:0,layout:"dagre",maxTextSize:5e4,maxEdges:500,darkMode:!1,fontFamily:'"trebuchet ms", verdana, arial, sans-serif;',logLevel:5,securityLevel:"strict",startOnLoad:!0,arrowMarkerAbsolute:!1,secure:["secure","securityLevel","startOnLoad","maxTextSize","suppressErrorRendering","maxEdges"],legacyMathML:!1,forceLegacyMathML:!1,deterministicIds:!1,fontSize:16,markdownAutoWrap:!0,suppressErrorRendering:!1}});var B$,F$,$$,or,Ya=N(()=>{"use strict";q4();P$();B$={...ql,deterministicIDSeed:void 0,elk:{mergeEdges:!1,nodePlacementStrategy:"BRANDES_KOEPF"},themeCSS:void 0,themeVariables:To.default.getThemeVariables(),sequence:{...ql.sequence,messageFont:o(function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},"messageFont"),noteFont:o(function(){return{fontFamily:this.noteFontFamily,fontSize:this.noteFontSize,fontWeight:this.noteFontWeight}},"noteFont"),actorFont:o(function(){return{fontFamily:this.actorFontFamily,fontSize:this.actorFontSize,fontWeight:this.actorFontWeight}},"actorFont")},class:{hideEmptyMembersBox:!1},gantt:{...ql.gantt,tickInterval:void 0,useWidth:void 0},c4:{...ql.c4,useWidth:void 0,personFont:o(function(){return{fontFamily:this.personFontFamily,fontSize:this.personFontSize,fontWeight:this.personFontWeight}},"personFont"),external_personFont:o(function(){return{fontFamily:this.external_personFontFamily,fontSize:this.external_personFontSize,fontWeight:this.external_personFontWeight}},"external_personFont"),systemFont:o(function(){return{fontFamily:this.systemFontFamily,fontSize:this.systemFontSize,fontWeight:this.systemFontWeight}},"systemFont"),external_systemFont:o(function(){return{fontFamily:this.external_systemFontFamily,fontSize:this.external_systemFontSize,fontWeight:this.external_systemFontWeight}},"external_systemFont"),system_dbFont:o(function(){return{fontFamily:this.system_dbFontFamily,fontSize:this.system_dbFontSize,fontWeight:this.system_dbFontWeight}},"system_dbFont"),external_system_dbFont:o(function(){return{fontFamily:this.external_system_dbFontFamily,fontSize:this.external_system_dbFontSize,fontWeight:this.external_system_dbFontWeight}},"external_system_dbFont"),system_queueFont:o(function(){return{fontFamily:this.system_queueFontFamily,fontSize:this.system_queueFontSize,fontWeight:this.system_queueFontWeight}},"system_queueFont"),external_system_queueFont:o(function(){return{fontFamily:this.external_system_queueFontFamily,fontSize:this.external_system_queueFontSize,fontWeight:this.external_system_queueFontWeight}},"external_system_queueFont"),containerFont:o(function(){return{fontFamily:this.containerFontFamily,fontSize:this.containerFontSize,fontWeight:this.containerFontWeight}},"containerFont"),external_containerFont:o(function(){return{fontFamily:this.external_containerFontFamily,fontSize:this.external_containerFontSize,fontWeight:this.external_containerFontWeight}},"external_containerFont"),container_dbFont:o(function(){return{fontFamily:this.container_dbFontFamily,fontSize:this.container_dbFontSize,fontWeight:this.container_dbFontWeight}},"container_dbFont"),external_container_dbFont:o(function(){return{fontFamily:this.external_container_dbFontFamily,fontSize:this.external_container_dbFontSize,fontWeight:this.external_container_dbFontWeight}},"external_container_dbFont"),container_queueFont:o(function(){return{fontFamily:this.container_queueFontFamily,fontSize:this.container_queueFontSize,fontWeight:this.container_queueFontWeight}},"container_queueFont"),external_container_queueFont:o(function(){return{fontFamily:this.external_container_queueFontFamily,fontSize:this.external_container_queueFontSize,fontWeight:this.external_container_queueFontWeight}},"external_container_queueFont"),componentFont:o(function(){return{fontFamily:this.componentFontFamily,fontSize:this.componentFontSize,fontWeight:this.componentFontWeight}},"componentFont"),external_componentFont:o(function(){return{fontFamily:this.external_componentFontFamily,fontSize:this.external_componentFontSize,fontWeight:this.external_componentFontWeight}},"external_componentFont"),component_dbFont:o(function(){return{fontFamily:this.component_dbFontFamily,fontSize:this.component_dbFontSize,fontWeight:this.component_dbFontWeight}},"component_dbFont"),external_component_dbFont:o(function(){return{fontFamily:this.external_component_dbFontFamily,fontSize:this.external_component_dbFontSize,fontWeight:this.external_component_dbFontWeight}},"external_component_dbFont"),component_queueFont:o(function(){return{fontFamily:this.component_queueFontFamily,fontSize:this.component_queueFontSize,fontWeight:this.component_queueFontWeight}},"component_queueFont"),external_component_queueFont:o(function(){return{fontFamily:this.external_component_queueFontFamily,fontSize:this.external_component_queueFontSize,fontWeight:this.external_component_queueFontWeight}},"external_component_queueFont"),boundaryFont:o(function(){return{fontFamily:this.boundaryFontFamily,fontSize:this.boundaryFontSize,fontWeight:this.boundaryFontWeight}},"boundaryFont"),messageFont:o(function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},"messageFont")},pie:{...ql.pie,useWidth:984},xyChart:{...ql.xyChart,useWidth:void 0},requirement:{...ql.requirement,useWidth:void 0},packet:{...ql.packet},radar:{...ql.radar}},F$=o((t,e="")=>Object.keys(t).reduce((r,n)=>Array.isArray(t[n])?r:typeof t[n]=="object"&&t[n]!==null?[...r,e+n,...F$(t[n],"")]:[...r,e+n],[]),"keyify"),$$=new Set(F$(B$,"")),or=B$});var l0,Dxe,e7=N(()=>{"use strict";Ya();vt();l0=o(t=>{if(Y.debug("sanitizeDirective called with",t),!(typeof t!="object"||t==null)){if(Array.isArray(t)){t.forEach(e=>l0(e));return}for(let e of Object.keys(t)){if(Y.debug("Checking key",e),e.startsWith("__")||e.includes("proto")||e.includes("constr")||!$$.has(e)||t[e]==null){Y.debug("sanitize deleting key: ",e),delete t[e];continue}if(typeof t[e]=="object"){Y.debug("sanitizing object",e),l0(t[e]);continue}let r=["themeCSS","fontFamily","altFontFamily"];for(let n of r)e.includes(n)&&(Y.debug("sanitizing css option",e),t[e]=Dxe(t[e]))}if(t.themeVariables)for(let e of Object.keys(t.themeVariables)){let r=t.themeVariables[e];r?.match&&!r.match(/^[\d "#%(),.;A-Za-z]+$/)&&(t.themeVariables[e]="")}Y.debug("After sanitization",t)}},"sanitizeDirective"),Dxe=o(t=>{let e=0,r=0;for(let n of t){if(e{"use strict";s0();vt();q4();Ya();e7();lh=Object.freeze(or),xs=Gn({},lh),c0=[],Dy=Gn({},lh),Y4=o((t,e)=>{let r=Gn({},t),n={};for(let i of e)H$(i),n=Gn(n,i);if(r=Gn(r,n),n.theme&&n.theme in To){let i=Gn({},G$),a=Gn(i.themeVariables||{},n.themeVariables);r.theme&&r.theme in To&&(r.themeVariables=To[r.theme].getThemeVariables(a))}return Dy=r,q$(Dy),Dy},"updateCurrentConfig"),t7=o(t=>(xs=Gn({},lh),xs=Gn(xs,t),t.theme&&To[t.theme]&&(xs.themeVariables=To[t.theme].getThemeVariables(t.themeVariables)),Y4(xs,c0),xs),"setSiteConfig"),V$=o(t=>{G$=Gn({},t)},"saveConfigFromInitialize"),U$=o(t=>(xs=Gn(xs,t),Y4(xs,c0),xs),"updateSiteConfig"),r7=o(()=>Gn({},xs),"getSiteConfig"),X4=o(t=>(q$(t),Gn(Dy,t),cr()),"setConfig"),cr=o(()=>Gn({},Dy),"getConfig"),H$=o(t=>{t&&(["secure",...xs.secure??[]].forEach(e=>{Object.hasOwn(t,e)&&(Y.debug(`Denied attempt to modify a secure key ${e}`,t[e]),delete t[e])}),Object.keys(t).forEach(e=>{e.startsWith("__")&&delete t[e]}),Object.keys(t).forEach(e=>{typeof t[e]=="string"&&(t[e].includes("<")||t[e].includes(">")||t[e].includes("url(data:"))&&delete t[e],typeof t[e]=="object"&&H$(t[e])}))},"sanitize"),W$=o(t=>{l0(t),t.fontFamily&&!t.themeVariables?.fontFamily&&(t.themeVariables={...t.themeVariables,fontFamily:t.fontFamily}),c0.push(t),Y4(xs,c0)},"addDirective"),Ly=o((t=xs)=>{c0=[],Y4(t,c0)},"reset"),Lxe={LAZY_LOAD_DEPRECATED:"The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead."},z$={},Rxe=o(t=>{z$[t]||(Y.warn(Lxe[t]),z$[t]=!0)},"issueWarning"),q$=o(t=>{t&&(t.lazyLoadedDiagrams||t.loadExternalDiagramsAtStartup)&&Rxe("LAZY_LOAD_DEPRECATED")},"checkConfig")});function Ka(t){return function(e){for(var r=arguments.length,n=new Array(r>1?r-1:0),i=1;i2&&arguments[2]!==void 0?arguments[2]:Q4;Y$&&Y$(t,null);let n=e.length;for(;n--;){let i=e[n];if(typeof i=="string"){let a=r(i);a!==i&&(Nxe(e)||(e[n]=a),i=a)}t[i]=!0}return t}function zxe(t){for(let e=0;e0&&arguments[0]!==void 0?arguments[0]:Qxe(),e=o(At=>sz(At),"DOMPurify");if(e.version="3.2.4",e.removed=[],!t||!t.document||t.document.nodeType!==Oy.document||!t.Element)return e.isSupported=!1,e;let{document:r}=t,n=r,i=n.currentScript,{DocumentFragment:a,HTMLTemplateElement:s,Node:l,Element:u,NodeFilter:h,NamedNodeMap:f=t.NamedNodeMap||t.MozNamedAttrMap,HTMLFormElement:d,DOMParser:p,trustedTypes:m}=t,g=u.prototype,y=Iy(g,"cloneNode"),v=Iy(g,"remove"),x=Iy(g,"nextSibling"),b=Iy(g,"childNodes"),w=Iy(g,"parentNode");if(typeof s=="function"){let At=r.createElement("template");At.content&&At.content.ownerDocument&&(r=At.content.ownerDocument)}let C,T="",{implementation:E,createNodeIterator:A,createDocumentFragment:S,getElementsByTagName:_}=r,{importNode:I}=n,D=tz();e.isSupported=typeof rz=="function"&&typeof w=="function"&&E&&E.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:k,ERB_EXPR:L,TMPLIT_EXPR:R,DATA_ATTR:O,ARIA_ATTR:M,IS_SCRIPT_OR_DATA:B,ATTR_WHITESPACE:F,CUSTOM_ELEMENT:P}=ez,{IS_ALLOWED_URI:z}=ez,$=null,H=Cr({},[...K$,...i7,...a7,...s7,...Q$]),Q=null,j=Cr({},[...Z$,...o7,...J$,...K4]),ie=Object.seal(nz(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),ne=null,le=null,he=!0,K=!0,X=!1,te=!0,J=!1,se=!0,ue=!1,Z=!1,Se=!1,ce=!1,ae=!1,Oe=!1,ge=!0,ze=!1,He="user-content-",$e=!0,Re=!1,Ie={},be=null,W=Cr({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),de=null,re=Cr({},["audio","video","img","source","image","track"]),oe=null,V=Cr({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),xe="http://www.w3.org/1998/Math/MathML",q="http://www.w3.org/2000/svg",pe="http://www.w3.org/1999/xhtml",ve=pe,Pe=!1,_e=null,we=Cr({},[xe,q,pe],n7),Ve=Cr({},["mi","mo","mn","ms","mtext"]),De=Cr({},["annotation-xml"]),qe=Cr({},["title","style","font","a","script"]),at=null,Rt=["application/xhtml+xml","text/html"],st="text/html",Ue=null,ct=null,We=r.createElement("form"),ot=o(function(Ce){return Ce instanceof RegExp||Ce instanceof Function},"isRegexOrFunction"),Yt=o(function(){let Ce=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(ct&&ct===Ce)){if((!Ce||typeof Ce!="object")&&(Ce={}),Ce=Qf(Ce),at=Rt.indexOf(Ce.PARSER_MEDIA_TYPE)===-1?st:Ce.PARSER_MEDIA_TYPE,Ue=at==="application/xhtml+xml"?n7:Q4,$=sl(Ce,"ALLOWED_TAGS")?Cr({},Ce.ALLOWED_TAGS,Ue):H,Q=sl(Ce,"ALLOWED_ATTR")?Cr({},Ce.ALLOWED_ATTR,Ue):j,_e=sl(Ce,"ALLOWED_NAMESPACES")?Cr({},Ce.ALLOWED_NAMESPACES,n7):we,oe=sl(Ce,"ADD_URI_SAFE_ATTR")?Cr(Qf(V),Ce.ADD_URI_SAFE_ATTR,Ue):V,de=sl(Ce,"ADD_DATA_URI_TAGS")?Cr(Qf(re),Ce.ADD_DATA_URI_TAGS,Ue):re,be=sl(Ce,"FORBID_CONTENTS")?Cr({},Ce.FORBID_CONTENTS,Ue):W,ne=sl(Ce,"FORBID_TAGS")?Cr({},Ce.FORBID_TAGS,Ue):{},le=sl(Ce,"FORBID_ATTR")?Cr({},Ce.FORBID_ATTR,Ue):{},Ie=sl(Ce,"USE_PROFILES")?Ce.USE_PROFILES:!1,he=Ce.ALLOW_ARIA_ATTR!==!1,K=Ce.ALLOW_DATA_ATTR!==!1,X=Ce.ALLOW_UNKNOWN_PROTOCOLS||!1,te=Ce.ALLOW_SELF_CLOSE_IN_ATTR!==!1,J=Ce.SAFE_FOR_TEMPLATES||!1,se=Ce.SAFE_FOR_XML!==!1,ue=Ce.WHOLE_DOCUMENT||!1,ce=Ce.RETURN_DOM||!1,ae=Ce.RETURN_DOM_FRAGMENT||!1,Oe=Ce.RETURN_TRUSTED_TYPE||!1,Se=Ce.FORCE_BODY||!1,ge=Ce.SANITIZE_DOM!==!1,ze=Ce.SANITIZE_NAMED_PROPS||!1,$e=Ce.KEEP_CONTENT!==!1,Re=Ce.IN_PLACE||!1,z=Ce.ALLOWED_URI_REGEXP||iz,ve=Ce.NAMESPACE||pe,Ve=Ce.MATHML_TEXT_INTEGRATION_POINTS||Ve,De=Ce.HTML_INTEGRATION_POINTS||De,ie=Ce.CUSTOM_ELEMENT_HANDLING||{},Ce.CUSTOM_ELEMENT_HANDLING&&ot(Ce.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(ie.tagNameCheck=Ce.CUSTOM_ELEMENT_HANDLING.tagNameCheck),Ce.CUSTOM_ELEMENT_HANDLING&&ot(Ce.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(ie.attributeNameCheck=Ce.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),Ce.CUSTOM_ELEMENT_HANDLING&&typeof Ce.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(ie.allowCustomizedBuiltInElements=Ce.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),J&&(K=!1),ae&&(ce=!0),Ie&&($=Cr({},Q$),Q=[],Ie.html===!0&&(Cr($,K$),Cr(Q,Z$)),Ie.svg===!0&&(Cr($,i7),Cr(Q,o7),Cr(Q,K4)),Ie.svgFilters===!0&&(Cr($,a7),Cr(Q,o7),Cr(Q,K4)),Ie.mathMl===!0&&(Cr($,s7),Cr(Q,J$),Cr(Q,K4))),Ce.ADD_TAGS&&($===H&&($=Qf($)),Cr($,Ce.ADD_TAGS,Ue)),Ce.ADD_ATTR&&(Q===j&&(Q=Qf(Q)),Cr(Q,Ce.ADD_ATTR,Ue)),Ce.ADD_URI_SAFE_ATTR&&Cr(oe,Ce.ADD_URI_SAFE_ATTR,Ue),Ce.FORBID_CONTENTS&&(be===W&&(be=Qf(be)),Cr(be,Ce.FORBID_CONTENTS,Ue)),$e&&($["#text"]=!0),ue&&Cr($,["html","head","body"]),$.table&&(Cr($,["tbody"]),delete ne.tbody),Ce.TRUSTED_TYPES_POLICY){if(typeof Ce.TRUSTED_TYPES_POLICY.createHTML!="function")throw My('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof Ce.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw My('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');C=Ce.TRUSTED_TYPES_POLICY,T=C.createHTML("")}else C===void 0&&(C=Zxe(m,i)),C!==null&&typeof T=="string"&&(T=C.createHTML(""));ja&&ja(Ce),ct=Ce}},"_parseConfig"),bt=Cr({},[...i7,...a7,...Gxe]),Mt=Cr({},[...s7,...Vxe]),xt=o(function(Ce){let tt=w(Ce);(!tt||!tt.tagName)&&(tt={namespaceURI:ve,tagName:"template"});let St=Q4(Ce.tagName),mr=Q4(tt.tagName);return _e[Ce.namespaceURI]?Ce.namespaceURI===q?tt.namespaceURI===pe?St==="svg":tt.namespaceURI===xe?St==="svg"&&(mr==="annotation-xml"||Ve[mr]):!!bt[St]:Ce.namespaceURI===xe?tt.namespaceURI===pe?St==="math":tt.namespaceURI===q?St==="math"&&De[mr]:!!Mt[St]:Ce.namespaceURI===pe?tt.namespaceURI===q&&!De[mr]||tt.namespaceURI===xe&&!Ve[mr]?!1:!Mt[St]&&(qe[St]||!bt[St]):!!(at==="application/xhtml+xml"&&_e[Ce.namespaceURI]):!1},"_checkValidNamespace"),ut=o(function(Ce){Ry(e.removed,{element:Ce});try{w(Ce).removeChild(Ce)}catch{v(Ce)}},"_forceRemove"),Et=o(function(Ce,tt){try{Ry(e.removed,{attribute:tt.getAttributeNode(Ce),from:tt})}catch{Ry(e.removed,{attribute:null,from:tt})}if(tt.removeAttribute(Ce),Ce==="is")if(ce||ae)try{ut(tt)}catch{}else try{tt.setAttribute(Ce,"")}catch{}},"_removeAttribute"),ft=o(function(Ce){let tt=null,St=null;if(Se)Ce=""+Ce;else{let gn=j$(Ce,/^[\r\n\t ]+/);St=gn&&gn[0]}at==="application/xhtml+xml"&&ve===pe&&(Ce=''+Ce+"");let mr=C?C.createHTML(Ce):Ce;if(ve===pe)try{tt=new p().parseFromString(mr,at)}catch{}if(!tt||!tt.documentElement){tt=E.createDocument(ve,"template",null);try{tt.documentElement.innerHTML=Pe?T:mr}catch{}}let rn=tt.body||tt.documentElement;return Ce&&St&&rn.insertBefore(r.createTextNode(St),rn.childNodes[0]||null),ve===pe?_.call(tt,ue?"html":"body")[0]:ue?tt.documentElement:rn},"_initDocument"),yt=o(function(Ce){return A.call(Ce.ownerDocument||Ce,Ce,h.SHOW_ELEMENT|h.SHOW_COMMENT|h.SHOW_TEXT|h.SHOW_PROCESSING_INSTRUCTION|h.SHOW_CDATA_SECTION,null)},"_createNodeIterator"),nt=o(function(Ce){return Ce instanceof d&&(typeof Ce.nodeName!="string"||typeof Ce.textContent!="string"||typeof Ce.removeChild!="function"||!(Ce.attributes instanceof f)||typeof Ce.removeAttribute!="function"||typeof Ce.setAttribute!="function"||typeof Ce.namespaceURI!="string"||typeof Ce.insertBefore!="function"||typeof Ce.hasChildNodes!="function")},"_isClobbered"),dn=o(function(Ce){return typeof l=="function"&&Ce instanceof l},"_isNode");function Tt(At,Ce,tt){j4(At,St=>{St.call(e,Ce,tt,ct)})}o(Tt,"_executeHooks");let On=o(function(Ce){let tt=null;if(Tt(D.beforeSanitizeElements,Ce,null),nt(Ce))return ut(Ce),!0;let St=Ue(Ce.nodeName);if(Tt(D.uponSanitizeElement,Ce,{tagName:St,allowedTags:$}),Ce.hasChildNodes()&&!dn(Ce.firstElementChild)&&Xa(/<[/\w]/g,Ce.innerHTML)&&Xa(/<[/\w]/g,Ce.textContent)||Ce.nodeType===Oy.progressingInstruction||se&&Ce.nodeType===Oy.comment&&Xa(/<[/\w]/g,Ce.data))return ut(Ce),!0;if(!$[St]||ne[St]){if(!ne[St]&&_r(St)&&(ie.tagNameCheck instanceof RegExp&&Xa(ie.tagNameCheck,St)||ie.tagNameCheck instanceof Function&&ie.tagNameCheck(St)))return!1;if($e&&!be[St]){let mr=w(Ce)||Ce.parentNode,rn=b(Ce)||Ce.childNodes;if(rn&&mr){let gn=rn.length;for(let Zr=gn-1;Zr>=0;--Zr){let Ni=y(rn[Zr],!0);Ni.__removalCount=(Ce.__removalCount||0)+1,mr.insertBefore(Ni,x(Ce))}}}return ut(Ce),!0}return Ce instanceof u&&!xt(Ce)||(St==="noscript"||St==="noembed"||St==="noframes")&&Xa(/<\/no(script|embed|frames)/i,Ce.innerHTML)?(ut(Ce),!0):(J&&Ce.nodeType===Oy.text&&(tt=Ce.textContent,j4([k,L,R],mr=>{tt=Ny(tt,mr," ")}),Ce.textContent!==tt&&(Ry(e.removed,{element:Ce.cloneNode()}),Ce.textContent=tt)),Tt(D.afterSanitizeElements,Ce,null),!1)},"_sanitizeElements"),tn=o(function(Ce,tt,St){if(ge&&(tt==="id"||tt==="name")&&(St in r||St in We))return!1;if(!(K&&!le[tt]&&Xa(O,tt))){if(!(he&&Xa(M,tt))){if(!Q[tt]||le[tt]){if(!(_r(Ce)&&(ie.tagNameCheck instanceof RegExp&&Xa(ie.tagNameCheck,Ce)||ie.tagNameCheck instanceof Function&&ie.tagNameCheck(Ce))&&(ie.attributeNameCheck instanceof RegExp&&Xa(ie.attributeNameCheck,tt)||ie.attributeNameCheck instanceof Function&&ie.attributeNameCheck(tt))||tt==="is"&&ie.allowCustomizedBuiltInElements&&(ie.tagNameCheck instanceof RegExp&&Xa(ie.tagNameCheck,St)||ie.tagNameCheck instanceof Function&&ie.tagNameCheck(St))))return!1}else if(!oe[tt]){if(!Xa(z,Ny(St,F,""))){if(!((tt==="src"||tt==="xlink:href"||tt==="href")&&Ce!=="script"&&Bxe(St,"data:")===0&&de[Ce])){if(!(X&&!Xa(B,Ny(St,F,"")))){if(St)return!1}}}}}}return!0},"_isValidAttribute"),_r=o(function(Ce){return Ce!=="annotation-xml"&&j$(Ce,P)},"_isBasicCustomElement"),Dr=o(function(Ce){Tt(D.beforeSanitizeAttributes,Ce,null);let{attributes:tt}=Ce;if(!tt||nt(Ce))return;let St={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Q,forceKeepAttr:void 0},mr=tt.length;for(;mr--;){let rn=tt[mr],{name:gn,namespaceURI:Zr,value:Ni}=rn,Zn=Ue(gn),Sn=gn==="value"?Ni:Fxe(Ni);if(St.attrName=Zn,St.attrValue=Sn,St.keepAttr=!0,St.forceKeepAttr=void 0,Tt(D.uponSanitizeAttribute,Ce,St),Sn=St.attrValue,ze&&(Zn==="id"||Zn==="name")&&(Et(gn,Ce),Sn=He+Sn),se&&Xa(/((--!?|])>)|<\/(style|title)/i,Sn)){Et(gn,Ce);continue}if(St.forceKeepAttr||(Et(gn,Ce),!St.keepAttr))continue;if(!te&&Xa(/\/>/i,Sn)){Et(gn,Ce);continue}J&&j4([k,L,R],et=>{Sn=Ny(Sn,et," ")});let Hr=Ue(Ce.nodeName);if(tn(Hr,Zn,Sn)){if(C&&typeof m=="object"&&typeof m.getAttributeType=="function"&&!Zr)switch(m.getAttributeType(Hr,Zn)){case"TrustedHTML":{Sn=C.createHTML(Sn);break}case"TrustedScriptURL":{Sn=C.createScriptURL(Sn);break}}try{Zr?Ce.setAttributeNS(Zr,gn,Sn):Ce.setAttribute(gn,Sn),nt(Ce)?ut(Ce):X$(e.removed)}catch{}}}Tt(D.afterSanitizeAttributes,Ce,null)},"_sanitizeAttributes"),Pn=o(function At(Ce){let tt=null,St=yt(Ce);for(Tt(D.beforeSanitizeShadowDOM,Ce,null);tt=St.nextNode();)Tt(D.uponSanitizeShadowNode,tt,null),On(tt),Dr(tt),tt.content instanceof a&&At(tt.content);Tt(D.afterSanitizeShadowDOM,Ce,null)},"_sanitizeShadowDOM");return e.sanitize=function(At){let Ce=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},tt=null,St=null,mr=null,rn=null;if(Pe=!At,Pe&&(At=""),typeof At!="string"&&!dn(At))if(typeof At.toString=="function"){if(At=At.toString(),typeof At!="string")throw My("dirty is not a string, aborting")}else throw My("toString is not a function");if(!e.isSupported)return At;if(Z||Yt(Ce),e.removed=[],typeof At=="string"&&(Re=!1),Re){if(At.nodeName){let Ni=Ue(At.nodeName);if(!$[Ni]||ne[Ni])throw My("root node is forbidden and cannot be sanitized in-place")}}else if(At instanceof l)tt=ft(""),St=tt.ownerDocument.importNode(At,!0),St.nodeType===Oy.element&&St.nodeName==="BODY"||St.nodeName==="HTML"?tt=St:tt.appendChild(St);else{if(!ce&&!J&&!ue&&At.indexOf("<")===-1)return C&&Oe?C.createHTML(At):At;if(tt=ft(At),!tt)return ce?null:Oe?T:""}tt&&Se&&ut(tt.firstChild);let gn=yt(Re?At:tt);for(;mr=gn.nextNode();)On(mr),Dr(mr),mr.content instanceof a&&Pn(mr.content);if(Re)return At;if(ce){if(ae)for(rn=S.call(tt.ownerDocument);tt.firstChild;)rn.appendChild(tt.firstChild);else rn=tt;return(Q.shadowroot||Q.shadowrootmode)&&(rn=I.call(n,rn,!0)),rn}let Zr=ue?tt.outerHTML:tt.innerHTML;return ue&&$["!doctype"]&&tt.ownerDocument&&tt.ownerDocument.doctype&&tt.ownerDocument.doctype.name&&Xa(az,tt.ownerDocument.doctype.name)&&(Zr=" +`+Zr),J&&j4([k,L,R],Ni=>{Zr=Ny(Zr,Ni," ")}),C&&Oe?C.createHTML(Zr):Zr},e.setConfig=function(){let At=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Yt(At),Z=!0},e.clearConfig=function(){ct=null,Z=!1},e.isValidAttribute=function(At,Ce,tt){ct||Yt({});let St=Ue(At),mr=Ue(Ce);return tn(St,mr,tt)},e.addHook=function(At,Ce){typeof Ce=="function"&&Ry(D[At],Ce)},e.removeHook=function(At,Ce){if(Ce!==void 0){let tt=Oxe(D[At],Ce);return tt===-1?void 0:Pxe(D[At],tt,1)[0]}return X$(D[At])},e.removeHooks=function(At){D[At]=[]},e.removeAllHooks=function(){D=tz()},e}var rz,Y$,Nxe,Mxe,Ixe,ja,ko,nz,l7,c7,j4,Oxe,X$,Ry,Pxe,Q4,n7,j$,Ny,Bxe,Fxe,sl,Xa,My,K$,i7,a7,Gxe,s7,Vxe,Q$,Z$,o7,J$,K4,Uxe,Hxe,Wxe,qxe,Yxe,iz,Xxe,jxe,az,Kxe,ez,Oy,Qxe,Zxe,tz,ch,u7=N(()=>{"use strict";({entries:rz,setPrototypeOf:Y$,isFrozen:Nxe,getPrototypeOf:Mxe,getOwnPropertyDescriptor:Ixe}=Object),{freeze:ja,seal:ko,create:nz}=Object,{apply:l7,construct:c7}=typeof Reflect<"u"&&Reflect;ja||(ja=o(function(e){return e},"freeze"));ko||(ko=o(function(e){return e},"seal"));l7||(l7=o(function(e,r,n){return e.apply(r,n)},"apply"));c7||(c7=o(function(e,r){return new e(...r)},"construct"));j4=Ka(Array.prototype.forEach),Oxe=Ka(Array.prototype.lastIndexOf),X$=Ka(Array.prototype.pop),Ry=Ka(Array.prototype.push),Pxe=Ka(Array.prototype.splice),Q4=Ka(String.prototype.toLowerCase),n7=Ka(String.prototype.toString),j$=Ka(String.prototype.match),Ny=Ka(String.prototype.replace),Bxe=Ka(String.prototype.indexOf),Fxe=Ka(String.prototype.trim),sl=Ka(Object.prototype.hasOwnProperty),Xa=Ka(RegExp.prototype.test),My=$xe(TypeError);o(Ka,"unapply");o($xe,"unconstruct");o(Cr,"addToSet");o(zxe,"cleanArray");o(Qf,"clone");o(Iy,"lookupGetter");K$=ja(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","section","select","shadow","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),i7=ja(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","filter","font","g","glyph","glyphref","hkern","image","line","lineargradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),a7=ja(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),Gxe=ja(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),s7=ja(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),Vxe=ja(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),Q$=ja(["#text"]),Z$=ja(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","face","for","headers","height","hidden","high","href","hreflang","id","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns","slot"]),o7=ja(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),J$=ja(["accent","accentunder","align","bevelled","close","columnsalign","columnlines","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lspace","lquote","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),K4=ja(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),Uxe=ko(/\{\{[\w\W]*|[\w\W]*\}\}/gm),Hxe=ko(/<%[\w\W]*|[\w\W]*%>/gm),Wxe=ko(/\$\{[\w\W]*/gm),qxe=ko(/^data-[\-\w.\u00B7-\uFFFF]+$/),Yxe=ko(/^aria-[\-\w]+$/),iz=ko(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Xxe=ko(/^(?:\w+script|data):/i),jxe=ko(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),az=ko(/^html$/i),Kxe=ko(/^[a-z][.\w]*(-[.\w]+)+$/i),ez=Object.freeze({__proto__:null,ARIA_ATTR:Yxe,ATTR_WHITESPACE:jxe,CUSTOM_ELEMENT:Kxe,DATA_ATTR:qxe,DOCTYPE_NAME:az,ERB_EXPR:Hxe,IS_ALLOWED_URI:iz,IS_SCRIPT_OR_DATA:Xxe,MUSTACHE_EXPR:Uxe,TMPLIT_EXPR:Wxe}),Oy={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},Qxe=o(function(){return typeof window>"u"?null:window},"getGlobal"),Zxe=o(function(e,r){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let n=null,i="data-tt-policy-suffix";r&&r.hasAttribute(i)&&(n=r.getAttribute(i));let a="dompurify"+(n?"#"+n:"");try{return e.createPolicy(a,{createHTML(s){return s},createScriptURL(s){return s}})}catch{return console.warn("TrustedTypes policy "+a+" could not be created."),null}},"_createTrustedTypesPolicy"),tz=o(function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},"_createHooksMap");o(sz,"createDOMPurify");ch=sz()});var MG={};hr(MG,{default:()=>q4e});function abe(t){return String(t).replace(ibe,e=>nbe[e])}function cbe(t){if(t.default)return t.default;var e=t.type,r=Array.isArray(e)?e[0]:e;if(typeof r!="string")return r.enum[0];switch(r){case"boolean":return!1;case"string":return"";case"number":return 0;case"object":return{}}}function gbe(t){for(var e=0;e=i[0]&&t<=i[1])return r.name}return null}function $z(t){for(var e=0;e=u3[e]&&t<=u3[e+1])return!0;return!1}function Abe(t,e){jl[t]=e}function P7(t,e,r){if(!jl[e])throw new Error("Font metrics not found for font: "+e+".");var n=t.charCodeAt(0),i=jl[e][n];if(!i&&t[0]in lz&&(n=lz[t[0]].charCodeAt(0),i=jl[e][n]),!i&&r==="text"&&$z(n)&&(i=jl[e][77]),i)return{depth:i[0],height:i[1],italic:i[2],skew:i[3],width:i[4]}}function _be(t){var e;if(t>=5?e=0:t>=3?e=1:e=2,!h7[e]){var r=h7[e]={cssEmPerMu:Z4.quad[e]/18};for(var n in Z4)Z4.hasOwnProperty(n)&&(r[n]=Z4[n][e])}return h7[e]}function hz(t){if(t instanceof Ts)return t;throw new Error("Expected symbolNode but got "+String(t)+".")}function Nbe(t){if(t instanceof td)return t;throw new Error("Expected span but got "+String(t)+".")}function G(t,e,r,n,i,a){An[t][i]={font:e,group:r,replace:n},a&&n&&(An[t][n]=An[t][i])}function Nt(t){for(var{type:e,names:r,props:n,handler:i,htmlBuilder:a,mathmlBuilder:s}=t,l={type:e,numArgs:n.numArgs,argTypes:n.argTypes,allowedInArgument:!!n.allowedInArgument,allowedInText:!!n.allowedInText,allowedInMath:n.allowedInMath===void 0?!0:n.allowedInMath,numOptionalArgs:n.numOptionalArgs||0,infix:!!n.infix,primitive:!!n.primitive,handler:i},u=0;u0&&(a.push(a3(s,e)),s=[]),a.push(n[l]));s.length>0&&a.push(a3(s,e));var h;r?(h=a3(Pi(r,e,!0)),h.classes=["tag"],a.push(h)):i&&a.push(i);var f=lu(["katex-html"],a);if(f.setAttribute("aria-hidden","true"),h){var d=h.children[0];d.style.height=kt(f.height+f.depth),f.depth&&(d.style.verticalAlign=kt(-f.depth))}return f}function Qz(t){return new ed(t)}function gz(t,e,r,n,i){var a=ks(t,r),s;a.length===1&&a[0]instanceof ws&&Jt.contains(["mrow","mtable"],a[0].type)?s=a[0]:s=new dt.MathNode("mrow",a);var l=new dt.MathNode("annotation",[new dt.TextNode(e)]);l.setAttribute("encoding","application/x-tex");var u=new dt.MathNode("semantics",[s,l]),h=new dt.MathNode("math",[u]);h.setAttribute("xmlns","http://www.w3.org/1998/Math/MathML"),n&&h.setAttribute("display","block");var f=i?"katex":"katex-mathml";return Be.makeSpan([f],[h])}function xr(t,e){if(!t||t.type!==e)throw new Error("Expected node of type "+e+", but got "+(t?"node of type "+t.type:String(t)));return t}function z7(t){var e=w3(t);if(!e)throw new Error("Expected node of symbol group type, but got "+(t?"node of type "+t.type:String(t)));return e}function w3(t){return t&&(t.type==="atom"||Ibe.hasOwnProperty(t.type))?t:null}function tG(t,e){var r=Pi(t.body,e,!0);return u4e([t.mclass],r,e)}function rG(t,e){var r,n=ks(t.body,e);return t.mclass==="minner"?r=new dt.MathNode("mpadded",n):t.mclass==="mord"?t.isCharacterBox?(r=n[0],r.type="mi"):r=new dt.MathNode("mi",n):(t.isCharacterBox?(r=n[0],r.type="mo"):r=new dt.MathNode("mo",n),t.mclass==="mbin"?(r.attributes.lspace="0.22em",r.attributes.rspace="0.22em"):t.mclass==="mpunct"?(r.attributes.lspace="0em",r.attributes.rspace="0.17em"):t.mclass==="mopen"||t.mclass==="mclose"?(r.attributes.lspace="0em",r.attributes.rspace="0em"):t.mclass==="minner"&&(r.attributes.lspace="0.0556em",r.attributes.width="+0.1111em")),r}function d4e(t,e,r){var n=h4e[t];switch(n){case"\\\\cdrightarrow":case"\\\\cdleftarrow":return r.callFunction(n,[e[0]],[e[1]]);case"\\uparrow":case"\\downarrow":{var i=r.callFunction("\\\\cdleft",[e[0]],[]),a={type:"atom",text:n,mode:"math",family:"rel"},s=r.callFunction("\\Big",[a],[]),l=r.callFunction("\\\\cdright",[e[1]],[]),u={type:"ordgroup",mode:"math",body:[i,s,l]};return r.callFunction("\\\\cdparent",[u],[])}case"\\\\cdlongequal":return r.callFunction("\\\\cdlongequal",[],[]);case"\\Vert":{var h={type:"textord",text:"\\Vert",mode:"math"};return r.callFunction("\\Big",[h],[])}default:return{type:"textord",text:" ",mode:"math"}}}function p4e(t){var e=[];for(t.gullet.beginGroup(),t.gullet.macros.set("\\cr","\\\\\\relax"),t.gullet.beginGroup();;){e.push(t.parseExpression(!1,"\\\\")),t.gullet.endGroup(),t.gullet.beginGroup();var r=t.fetch().text;if(r==="&"||r==="\\\\")t.consume();else if(r==="\\end"){e[e.length-1].length===0&&e.pop();break}else throw new gt("Expected \\\\ or \\cr or \\end",t.nextToken)}for(var n=[],i=[n],a=0;a-1))if("<>AV".indexOf(h)>-1)for(var d=0;d<2;d++){for(var p=!0,m=u+1;mAV=|." after @',s[u]);var g=d4e(h,f,t),y={type:"styling",body:[g],mode:"math",style:"display"};n.push(y),l=yz()}a%2===0?n.push(l):n.shift(),n=[],i.push(n)}t.gullet.endGroup(),t.gullet.endGroup();var v=new Array(i[0].length).fill({type:"align",align:"c",pregap:.25,postgap:.25});return{type:"array",mode:"math",body:i,arraystretch:1,addJot:!0,rowGaps:[null],cols:v,colSeparationType:"CD",hLinesBeforeRow:new Array(i.length+1).fill([])}}function k3(t,e){var r=w3(t);if(r&&Jt.contains(A4e,r.text))return r;throw r?new gt("Invalid delimiter '"+r.text+"' after '"+e.funcName+"'",t):new gt("Invalid delimiter type '"+t.type+"'",t)}function bz(t){if(!t.body)throw new Error("Bug: The leftright ParseNode wasn't fully parsed.")}function Ql(t){for(var{type:e,names:r,props:n,handler:i,htmlBuilder:a,mathmlBuilder:s}=t,l={type:e,numArgs:n.numArgs||0,allowedInText:!1,numOptionalArgs:0,handler:i},u=0;u1||!f)&&y.pop(),x.length{"use strict";Xs=class t{static{o(this,"SourceLocation")}constructor(e,r,n){this.lexer=void 0,this.start=void 0,this.end=void 0,this.lexer=e,this.start=r,this.end=n}static range(e,r){return r?!e||!e.loc||!r.loc||e.loc.lexer!==r.loc.lexer?null:new t(e.loc.lexer,e.loc.start,r.loc.end):e&&e.loc}},So=class t{static{o(this,"Token")}constructor(e,r){this.text=void 0,this.loc=void 0,this.noexpand=void 0,this.treatAsRelax=void 0,this.text=e,this.loc=r}range(e,r){return new t(r,Xs.range(this,e))}},gt=class t{static{o(this,"ParseError")}constructor(e,r){this.name=void 0,this.position=void 0,this.length=void 0,this.rawMessage=void 0;var n="KaTeX parse error: "+e,i,a,s=r&&r.loc;if(s&&s.start<=s.end){var l=s.lexer.input;i=s.start,a=s.end,i===l.length?n+=" at end of input: ":n+=" at position "+(i+1)+": ";var u=l.slice(i,a).replace(/[^]/g,"$&\u0332"),h;i>15?h="\u2026"+l.slice(i-15,i):h=l.slice(0,i);var f;a+15":">","<":"<",'"':""","'":"'"},ibe=/[&><"']/g;o(abe,"escape");Fz=o(function t(e){return e.type==="ordgroup"||e.type==="color"?e.body.length===1?t(e.body[0]):e:e.type==="font"?t(e.body):e},"getBaseElem"),sbe=o(function(e){var r=Fz(e);return r.type==="mathord"||r.type==="textord"||r.type==="atom"},"isCharacterBox"),obe=o(function(e){if(!e)throw new Error("Expected non-null, but got "+String(e));return e},"assert"),lbe=o(function(e){var r=/^[\x00-\x20]*([^\\/#?]*?)(:|�*58|�*3a|&colon)/i.exec(e);return r?r[2]!==":"||!/^[a-zA-Z][a-zA-Z0-9+\-.]*$/.test(r[1])?null:r[1].toLowerCase():"_relative"},"protocolFromUrl"),Jt={contains:Jxe,deflt:ebe,escape:abe,hyphenate:rbe,getBaseElem:Fz,isCharacterBox:sbe,protocolFromUrl:lbe},c3={displayMode:{type:"boolean",description:"Render math in display mode, which puts the math in display style (so \\int and \\sum are large, for example), and centers the math on the page on its own line.",cli:"-d, --display-mode"},output:{type:{enum:["htmlAndMathml","html","mathml"]},description:"Determines the markup language of the output.",cli:"-F, --format "},leqno:{type:"boolean",description:"Render display math in leqno style (left-justified tags)."},fleqn:{type:"boolean",description:"Render display math flush left."},throwOnError:{type:"boolean",default:!0,cli:"-t, --no-throw-on-error",cliDescription:"Render errors (in the color given by --error-color) instead of throwing a ParseError exception when encountering an error."},errorColor:{type:"string",default:"#cc0000",cli:"-c, --error-color ",cliDescription:"A color string given in the format 'rgb' or 'rrggbb' (no #). This option determines the color of errors rendered by the -t option.",cliProcessor:o(t=>"#"+t,"cliProcessor")},macros:{type:"object",cli:"-m, --macro ",cliDescription:"Define custom macro of the form '\\foo:expansion' (use multiple -m arguments for multiple macros).",cliDefault:[],cliProcessor:o((t,e)=>(e.push(t),e),"cliProcessor")},minRuleThickness:{type:"number",description:"Specifies a minimum thickness, in ems, for fraction lines, `\\sqrt` top lines, `{array}` vertical lines, `\\hline`, `\\hdashline`, `\\underline`, `\\overline`, and the borders of `\\fbox`, `\\boxed`, and `\\fcolorbox`.",processor:o(t=>Math.max(0,t),"processor"),cli:"--min-rule-thickness ",cliProcessor:parseFloat},colorIsTextColor:{type:"boolean",description:"Makes \\color behave like LaTeX's 2-argument \\textcolor, instead of LaTeX's one-argument \\color mode change.",cli:"-b, --color-is-text-color"},strict:{type:[{enum:["warn","ignore","error"]},"boolean","function"],description:"Turn on strict / LaTeX faithfulness mode, which throws an error if the input uses features that are not supported by LaTeX.",cli:"-S, --strict",cliDefault:!1},trust:{type:["boolean","function"],description:"Trust the input, enabling all HTML features such as \\url.",cli:"-T, --trust"},maxSize:{type:"number",default:1/0,description:"If non-zero, all user-specified sizes, e.g. in \\rule{500em}{500em}, will be capped to maxSize ems. Otherwise, elements and spaces can be arbitrarily large",processor:o(t=>Math.max(0,t),"processor"),cli:"-s, --max-size ",cliProcessor:parseInt},maxExpand:{type:"number",default:1e3,description:"Limit the number of macro expansions to the specified number, to prevent e.g. infinite macro loops. If set to Infinity, the macro expander will try to fully expand as in LaTeX.",processor:o(t=>Math.max(0,t),"processor"),cli:"-e, --max-expand ",cliProcessor:o(t=>t==="Infinity"?1/0:parseInt(t),"cliProcessor")},globalGroup:{type:"boolean",cli:!1}};o(cbe,"getDefaultValue");zy=class{static{o(this,"Settings")}constructor(e){this.displayMode=void 0,this.output=void 0,this.leqno=void 0,this.fleqn=void 0,this.throwOnError=void 0,this.errorColor=void 0,this.macros=void 0,this.minRuleThickness=void 0,this.colorIsTextColor=void 0,this.strict=void 0,this.trust=void 0,this.maxSize=void 0,this.maxExpand=void 0,this.globalGroup=void 0,e=e||{};for(var r in c3)if(c3.hasOwnProperty(r)){var n=c3[r];this[r]=e[r]!==void 0?n.processor?n.processor(e[r]):e[r]:cbe(n)}}reportNonstrict(e,r,n){var i=this.strict;if(typeof i=="function"&&(i=i(e,r,n)),!(!i||i==="ignore")){if(i===!0||i==="error")throw new gt("LaTeX-incompatible input and strict mode is set to 'error': "+(r+" ["+e+"]"),n);i==="warn"?typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(r+" ["+e+"]")):typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+i+"': "+r+" ["+e+"]"))}}useStrictBehavior(e,r,n){var i=this.strict;if(typeof i=="function")try{i=i(e,r,n)}catch{i="error"}return!i||i==="ignore"?!1:i===!0||i==="error"?!0:i==="warn"?(typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(r+" ["+e+"]")),!1):(typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+i+"': "+r+" ["+e+"]")),!1)}isTrusted(e){if(e.url&&!e.protocol){var r=Jt.protocolFromUrl(e.url);if(r==null)return!1;e.protocol=r}var n=typeof this.trust=="function"?this.trust(e):this.trust;return!!n}},Yl=class{static{o(this,"Style")}constructor(e,r,n){this.id=void 0,this.size=void 0,this.cramped=void 0,this.id=e,this.size=r,this.cramped=n}sup(){return Xl[ube[this.id]]}sub(){return Xl[hbe[this.id]]}fracNum(){return Xl[fbe[this.id]]}fracDen(){return Xl[dbe[this.id]]}cramp(){return Xl[pbe[this.id]]}text(){return Xl[mbe[this.id]]}isTight(){return this.size>=2}},O7=0,h3=1,f0=2,su=3,Gy=4,Eo=5,d0=6,Qa=7,Xl=[new Yl(O7,0,!1),new Yl(h3,0,!0),new Yl(f0,1,!1),new Yl(su,1,!0),new Yl(Gy,2,!1),new Yl(Eo,2,!0),new Yl(d0,3,!1),new Yl(Qa,3,!0)],ube=[Gy,Eo,Gy,Eo,d0,Qa,d0,Qa],hbe=[Eo,Eo,Eo,Eo,Qa,Qa,Qa,Qa],fbe=[f0,su,Gy,Eo,d0,Qa,d0,Qa],dbe=[su,su,Eo,Eo,Qa,Qa,Qa,Qa],pbe=[h3,h3,su,su,Eo,Eo,Qa,Qa],mbe=[O7,h3,f0,su,f0,su,f0,su],tr={DISPLAY:Xl[O7],TEXT:Xl[f0],SCRIPT:Xl[Gy],SCRIPTSCRIPT:Xl[d0]},k7=[{name:"latin",blocks:[[256,591],[768,879]]},{name:"cyrillic",blocks:[[1024,1279]]},{name:"armenian",blocks:[[1328,1423]]},{name:"brahmic",blocks:[[2304,4255]]},{name:"georgian",blocks:[[4256,4351]]},{name:"cjk",blocks:[[12288,12543],[19968,40879],[65280,65376]]},{name:"hangul",blocks:[[44032,55215]]}];o(gbe,"scriptFromCodepoint");u3=[];k7.forEach(t=>t.blocks.forEach(e=>u3.push(...e)));o($z,"supportedCodepoint");h0=80,ybe=o(function(e,r){return"M95,"+(622+e+r)+` +c-2.7,0,-7.17,-2.7,-13.5,-8c-5.8,-5.3,-9.5,-10,-9.5,-14 +c0,-2,0.3,-3.3,1,-4c1.3,-2.7,23.83,-20.7,67.5,-54 +c44.2,-33.3,65.8,-50.3,66.5,-51c1.3,-1.3,3,-2,5,-2c4.7,0,8.7,3.3,12,10 +s173,378,173,378c0.7,0,35.3,-71,104,-213c68.7,-142,137.5,-285,206.5,-429 +c69,-144,104.5,-217.7,106.5,-221 +l`+e/2.075+" -"+e+` +c5.3,-9.3,12,-14,20,-14 +H400000v`+(40+e)+`H845.2724 +s-225.272,467,-225.272,467s-235,486,-235,486c-2.7,4.7,-9,7,-19,7 +c-6,0,-10,-1,-12,-3s-194,-422,-194,-422s-65,47,-65,47z +M`+(834+e)+" "+r+"h400000v"+(40+e)+"h-400000z"},"sqrtMain"),vbe=o(function(e,r){return"M263,"+(601+e+r)+`c0.7,0,18,39.7,52,119 +c34,79.3,68.167,158.7,102.5,238c34.3,79.3,51.8,119.3,52.5,120 +c340,-704.7,510.7,-1060.3,512,-1067 +l`+e/2.084+" -"+e+` +c4.7,-7.3,11,-11,19,-11 +H40000v`+(40+e)+`H1012.3 +s-271.3,567,-271.3,567c-38.7,80.7,-84,175,-136,283c-52,108,-89.167,185.3,-111.5,232 +c-22.3,46.7,-33.8,70.3,-34.5,71c-4.7,4.7,-12.3,7,-23,7s-12,-1,-12,-1 +s-109,-253,-109,-253c-72.7,-168,-109.3,-252,-110,-252c-10.7,8,-22,16.7,-34,26 +c-22,17.3,-33.3,26,-34,26s-26,-26,-26,-26s76,-59,76,-59s76,-60,76,-60z +M`+(1001+e)+" "+r+"h400000v"+(40+e)+"h-400000z"},"sqrtSize1"),xbe=o(function(e,r){return"M983 "+(10+e+r)+` +l`+e/3.13+" -"+e+` +c4,-6.7,10,-10,18,-10 H400000v`+(40+e)+` +H1013.1s-83.4,268,-264.1,840c-180.7,572,-277,876.3,-289,913c-4.7,4.7,-12.7,7,-24,7 +s-12,0,-12,0c-1.3,-3.3,-3.7,-11.7,-7,-25c-35.3,-125.3,-106.7,-373.3,-214,-744 +c-10,12,-21,25,-33,39s-32,39,-32,39c-6,-5.3,-15,-14,-27,-26s25,-30,25,-30 +c26.7,-32.7,52,-63,76,-91s52,-60,52,-60s208,722,208,722 +c56,-175.3,126.3,-397.3,211,-666c84.7,-268.7,153.8,-488.2,207.5,-658.5 +c53.7,-170.3,84.5,-266.8,92.5,-289.5z +M`+(1001+e)+" "+r+"h400000v"+(40+e)+"h-400000z"},"sqrtSize2"),bbe=o(function(e,r){return"M424,"+(2398+e+r)+` +c-1.3,-0.7,-38.5,-172,-111.5,-514c-73,-342,-109.8,-513.3,-110.5,-514 +c0,-2,-10.7,14.3,-32,49c-4.7,7.3,-9.8,15.7,-15.5,25c-5.7,9.3,-9.8,16,-12.5,20 +s-5,7,-5,7c-4,-3.3,-8.3,-7.7,-13,-13s-13,-13,-13,-13s76,-122,76,-122s77,-121,77,-121 +s209,968,209,968c0,-2,84.7,-361.7,254,-1079c169.3,-717.3,254.7,-1077.7,256,-1081 +l`+e/4.223+" -"+e+`c4,-6.7,10,-10,18,-10 H400000 +v`+(40+e)+`H1014.6 +s-87.3,378.7,-272.6,1166c-185.3,787.3,-279.3,1182.3,-282,1185 +c-2,6,-10,9,-24,9 +c-8,0,-12,-0.7,-12,-2z M`+(1001+e)+" "+r+` +h400000v`+(40+e)+"h-400000z"},"sqrtSize3"),wbe=o(function(e,r){return"M473,"+(2713+e+r)+` +c339.3,-1799.3,509.3,-2700,510,-2702 l`+e/5.298+" -"+e+` +c3.3,-7.3,9.3,-11,18,-11 H400000v`+(40+e)+`H1017.7 +s-90.5,478,-276.2,1466c-185.7,988,-279.5,1483,-281.5,1485c-2,6,-10,9,-24,9 +c-8,0,-12,-0.7,-12,-2c0,-1.3,-5.3,-32,-16,-92c-50.7,-293.3,-119.7,-693.3,-207,-1200 +c0,-1.3,-5.3,8.7,-16,30c-10.7,21.3,-21.3,42.7,-32,64s-16,33,-16,33s-26,-26,-26,-26 +s76,-153,76,-153s77,-151,77,-151c0.7,0.7,35.7,202,105,604c67.3,400.7,102,602.7,104, +606zM`+(1001+e)+" "+r+"h400000v"+(40+e)+"H1017.7z"},"sqrtSize4"),Tbe=o(function(e){var r=e/2;return"M400000 "+e+" H0 L"+r+" 0 l65 45 L145 "+(e-80)+" H400000z"},"phasePath"),kbe=o(function(e,r,n){var i=n-54-r-e;return"M702 "+(e+r)+"H400000"+(40+e)+` +H742v`+i+`l-4 4-4 4c-.667.7 -2 1.5-4 2.5s-4.167 1.833-6.5 2.5-5.5 1-9.5 1 +h-12l-28-84c-16.667-52-96.667 -294.333-240-727l-212 -643 -85 170 +c-4-3.333-8.333-7.667-13 -13l-13-13l77-155 77-156c66 199.333 139 419.667 +219 661 l218 661zM702 `+r+"H400000v"+(40+e)+"H742z"},"sqrtTall"),Ebe=o(function(e,r,n){r=1e3*r;var i="";switch(e){case"sqrtMain":i=ybe(r,h0);break;case"sqrtSize1":i=vbe(r,h0);break;case"sqrtSize2":i=xbe(r,h0);break;case"sqrtSize3":i=bbe(r,h0);break;case"sqrtSize4":i=wbe(r,h0);break;case"sqrtTall":i=kbe(r,h0,n)}return i},"sqrtPath"),Sbe=o(function(e,r){switch(e){case"\u239C":return"M291 0 H417 V"+r+" H291z M291 0 H417 V"+r+" H291z";case"\u2223":return"M145 0 H188 V"+r+" H145z M145 0 H188 V"+r+" H145z";case"\u2225":return"M145 0 H188 V"+r+" H145z M145 0 H188 V"+r+" H145z"+("M367 0 H410 V"+r+" H367z M367 0 H410 V"+r+" H367z");case"\u239F":return"M457 0 H583 V"+r+" H457z M457 0 H583 V"+r+" H457z";case"\u23A2":return"M319 0 H403 V"+r+" H319z M319 0 H403 V"+r+" H319z";case"\u23A5":return"M263 0 H347 V"+r+" H263z M263 0 H347 V"+r+" H263z";case"\u23AA":return"M384 0 H504 V"+r+" H384z M384 0 H504 V"+r+" H384z";case"\u23D0":return"M312 0 H355 V"+r+" H312z M312 0 H355 V"+r+" H312z";case"\u2016":return"M257 0 H300 V"+r+" H257z M257 0 H300 V"+r+" H257z"+("M478 0 H521 V"+r+" H478z M478 0 H521 V"+r+" H478z");default:return""}},"innerPath"),oz={doubleleftarrow:`M262 157 +l10-10c34-36 62.7-77 86-123 3.3-8 5-13.3 5-16 0-5.3-6.7-8-20-8-7.3 + 0-12.2.5-14.5 1.5-2.3 1-4.8 4.5-7.5 10.5-49.3 97.3-121.7 169.3-217 216-28 + 14-57.3 25-88 33-6.7 2-11 3.8-13 5.5-2 1.7-3 4.2-3 7.5s1 5.8 3 7.5 +c2 1.7 6.3 3.5 13 5.5 68 17.3 128.2 47.8 180.5 91.5 52.3 43.7 93.8 96.2 124.5 + 157.5 9.3 8 15.3 12.3 18 13h6c12-.7 18-4 18-10 0-2-1.7-7-5-15-23.3-46-52-87 +-86-123l-10-10h399738v-40H218c328 0 0 0 0 0l-10-8c-26.7-20-65.7-43-117-69 2.7 +-2 6-3.7 10-5 36.7-16 72.3-37.3 107-64l10-8h399782v-40z +m8 0v40h399730v-40zm0 194v40h399730v-40z`,doublerightarrow:`M399738 392l +-10 10c-34 36-62.7 77-86 123-3.3 8-5 13.3-5 16 0 5.3 6.7 8 20 8 7.3 0 12.2-.5 + 14.5-1.5 2.3-1 4.8-4.5 7.5-10.5 49.3-97.3 121.7-169.3 217-216 28-14 57.3-25 88 +-33 6.7-2 11-3.8 13-5.5 2-1.7 3-4.2 3-7.5s-1-5.8-3-7.5c-2-1.7-6.3-3.5-13-5.5-68 +-17.3-128.2-47.8-180.5-91.5-52.3-43.7-93.8-96.2-124.5-157.5-9.3-8-15.3-12.3-18 +-13h-6c-12 .7-18 4-18 10 0 2 1.7 7 5 15 23.3 46 52 87 86 123l10 10H0v40h399782 +c-328 0 0 0 0 0l10 8c26.7 20 65.7 43 117 69-2.7 2-6 3.7-10 5-36.7 16-72.3 37.3 +-107 64l-10 8H0v40zM0 157v40h399730v-40zm0 194v40h399730v-40z`,leftarrow:`M400000 241H110l3-3c68.7-52.7 113.7-120 + 135-202 4-14.7 6-23 6-25 0-7.3-7-11-21-11-8 0-13.2.8-15.5 2.5-2.3 1.7-4.2 5.8 +-5.5 12.5-1.3 4.7-2.7 10.3-4 17-12 48.7-34.8 92-68.5 130S65.3 228.3 18 247 +c-10 4-16 7.7-18 11 0 8.7 6 14.3 18 17 47.3 18.7 87.8 47 121.5 85S196 441.3 208 + 490c.7 2 1.3 5 2 9s1.2 6.7 1.5 8c.3 1.3 1 3.3 2 6s2.2 4.5 3.5 5.5c1.3 1 3.3 + 1.8 6 2.5s6 1 10 1c14 0 21-3.7 21-11 0-2-2-10.3-6-25-20-79.3-65-146.7-135-202 + l-3-3h399890zM100 241v40h399900v-40z`,leftbrace:`M6 548l-6-6v-35l6-11c56-104 135.3-181.3 238-232 57.3-28.7 117 +-45 179-50h399577v120H403c-43.3 7-81 15-113 26-100.7 33-179.7 91-237 174-2.7 + 5-6 9-10 13-.7 1-7.3 1-20 1H6z`,leftbraceunder:`M0 6l6-6h17c12.688 0 19.313.3 20 1 4 4 7.313 8.3 10 13 + 35.313 51.3 80.813 93.8 136.5 127.5 55.688 33.7 117.188 55.8 184.5 66.5.688 + 0 2 .3 4 1 18.688 2.7 76 4.3 172 5h399450v120H429l-6-1c-124.688-8-235-61.7 +-331-161C60.687 138.7 32.312 99.3 7 54L0 41V6z`,leftgroup:`M400000 80 +H435C64 80 168.3 229.4 21 260c-5.9 1.2-18 0-18 0-2 0-3-1-3-3v-38C76 61 257 0 + 435 0h399565z`,leftgroupunder:`M400000 262 +H435C64 262 168.3 112.6 21 82c-5.9-1.2-18 0-18 0-2 0-3 1-3 3v38c76 158 257 219 + 435 219h399565z`,leftharpoon:`M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3 +-3.3 10.2-9.5 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5 +-18.3 3-21-1.3-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7 +-196 228-6.7 4.7-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40z`,leftharpoonplus:`M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3-3.3 10.2-9.5 + 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5-18.3 3-21-1.3 +-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7-196 228-6.7 4.7 +-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40zM0 435v40h400000v-40z +m0 0v40h400000v-40z`,leftharpoondown:`M7 241c-4 4-6.333 8.667-7 14 0 5.333.667 9 2 11s5.333 + 5.333 12 10c90.667 54 156 130 196 228 3.333 10.667 6.333 16.333 9 17 2 .667 5 + 1 9 1h5c10.667 0 16.667-2 18-6 2-2.667 1-9.667-3-21-32-87.333-82.667-157.667 +-152-211l-3-3h399907v-40zM93 281 H400000 v-40L7 241z`,leftharpoondownplus:`M7 435c-4 4-6.3 8.7-7 14 0 5.3.7 9 2 11s5.3 5.3 12 + 10c90.7 54 156 130 196 228 3.3 10.7 6.3 16.3 9 17 2 .7 5 1 9 1h5c10.7 0 16.7 +-2 18-6 2-2.7 1-9.7-3-21-32-87.3-82.7-157.7-152-211l-3-3h399907v-40H7zm93 0 +v40h399900v-40zM0 241v40h399900v-40zm0 0v40h399900v-40z`,lefthook:`M400000 281 H103s-33-11.2-61-33.5S0 197.3 0 164s14.2-61.2 42.5 +-83.5C70.8 58.2 104 47 142 47 c16.7 0 25 6.7 25 20 0 12-8.7 18.7-26 20-40 3.3 +-68.7 15.7-86 37-10 12-15 25.3-15 40 0 22.7 9.8 40.7 29.5 54 19.7 13.3 43.5 21 + 71.5 23h399859zM103 281v-40h399897v40z`,leftlinesegment:`M40 281 V428 H0 V94 H40 V241 H400000 v40z +M40 281 V428 H0 V94 H40 V241 H400000 v40z`,leftmapsto:`M40 281 V448H0V74H40V241H400000v40z +M40 281 V448H0V74H40V241H400000v40z`,leftToFrom:`M0 147h400000v40H0zm0 214c68 40 115.7 95.7 143 167h22c15.3 0 23 +-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69-70-101l-7-8h399905v-40H95l7-8 +c28.7-32 52-65.7 70-101 10.7-23.3 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 265.3 + 68 321 0 361zm0-174v-40h399900v40zm100 154v40h399900v-40z`,longequal:`M0 50 h400000 v40H0z m0 194h40000v40H0z +M0 50 h400000 v40H0z m0 194h40000v40H0z`,midbrace:`M200428 334 +c-100.7-8.3-195.3-44-280-108-55.3-42-101.7-93-139-153l-9-14c-2.7 4-5.7 8.7-9 14 +-53.3 86.7-123.7 153-211 199-66.7 36-137.3 56.3-212 62H0V214h199568c178.3-11.7 + 311.7-78.3 403-201 6-8 9.7-12 11-12 .7-.7 6.7-1 18-1s17.3.3 18 1c1.3 0 5 4 11 + 12 44.7 59.3 101.3 106.3 170 141s145.3 54.3 229 60h199572v120z`,midbraceunder:`M199572 214 +c100.7 8.3 195.3 44 280 108 55.3 42 101.7 93 139 153l9 14c2.7-4 5.7-8.7 9-14 + 53.3-86.7 123.7-153 211-199 66.7-36 137.3-56.3 212-62h199568v120H200432c-178.3 + 11.7-311.7 78.3-403 201-6 8-9.7 12-11 12-.7.7-6.7 1-18 1s-17.3-.3-18-1c-1.3 0 +-5-4-11-12-44.7-59.3-101.3-106.3-170-141s-145.3-54.3-229-60H0V214z`,oiintSize1:`M512.6 71.6c272.6 0 320.3 106.8 320.3 178.2 0 70.8-47.7 177.6 +-320.3 177.6S193.1 320.6 193.1 249.8c0-71.4 46.9-178.2 319.5-178.2z +m368.1 178.2c0-86.4-60.9-215.4-368.1-215.4-306.4 0-367.3 129-367.3 215.4 0 85.8 +60.9 214.8 367.3 214.8 307.2 0 368.1-129 368.1-214.8z`,oiintSize2:`M757.8 100.1c384.7 0 451.1 137.6 451.1 230 0 91.3-66.4 228.8 +-451.1 228.8-386.3 0-452.7-137.5-452.7-228.8 0-92.4 66.4-230 452.7-230z +m502.4 230c0-111.2-82.4-277.2-502.4-277.2s-504 166-504 277.2 +c0 110 84 276 504 276s502.4-166 502.4-276z`,oiiintSize1:`M681.4 71.6c408.9 0 480.5 106.8 480.5 178.2 0 70.8-71.6 177.6 +-480.5 177.6S202.1 320.6 202.1 249.8c0-71.4 70.5-178.2 479.3-178.2z +m525.8 178.2c0-86.4-86.8-215.4-525.7-215.4-437.9 0-524.7 129-524.7 215.4 0 +85.8 86.8 214.8 524.7 214.8 438.9 0 525.7-129 525.7-214.8z`,oiiintSize2:`M1021.2 53c603.6 0 707.8 165.8 707.8 277.2 0 110-104.2 275.8 +-707.8 275.8-606 0-710.2-165.8-710.2-275.8C311 218.8 415.2 53 1021.2 53z +m770.4 277.1c0-131.2-126.4-327.6-770.5-327.6S248.4 198.9 248.4 330.1 +c0 130 128.8 326.4 772.7 326.4s770.5-196.4 770.5-326.4z`,rightarrow:`M0 241v40h399891c-47.3 35.3-84 78-110 128 +-16.7 32-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20 + 11 8 0 13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7 + 39-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85 +-40.5-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5 +-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67 + 151.7 139 205zm0 0v40h399900v-40z`,rightbrace:`M400000 542l +-6 6h-17c-12.7 0-19.3-.3-20-1-4-4-7.3-8.3-10-13-35.3-51.3-80.8-93.8-136.5-127.5 +s-117.2-55.8-184.5-66.5c-.7 0-2-.3-4-1-18.7-2.7-76-4.3-172-5H0V214h399571l6 1 +c124.7 8 235 61.7 331 161 31.3 33.3 59.7 72.7 85 118l7 13v35z`,rightbraceunder:`M399994 0l6 6v35l-6 11c-56 104-135.3 181.3-238 232-57.3 + 28.7-117 45-179 50H-300V214h399897c43.3-7 81-15 113-26 100.7-33 179.7-91 237 +-174 2.7-5 6-9 10-13 .7-1 7.3-1 20-1h17z`,rightgroup:`M0 80h399565c371 0 266.7 149.4 414 180 5.9 1.2 18 0 18 0 2 0 + 3-1 3-3v-38c-76-158-257-219-435-219H0z`,rightgroupunder:`M0 262h399565c371 0 266.7-149.4 414-180 5.9-1.2 18 0 18 + 0 2 0 3 1 3 3v38c-76 158-257 219-435 219H0z`,rightharpoon:`M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3 +-3.7-15.3-11-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2 +-10.7 0-16.7 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58 + 69.2 92 94.5zm0 0v40h399900v-40z`,rightharpoonplus:`M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3-3.7-15.3-11 +-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2-10.7 0-16.7 + 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58 69.2 92 94.5z +m0 0v40h399900v-40z m100 194v40h399900v-40zm0 0v40h399900v-40z`,rightharpoondown:`M399747 511c0 7.3 6.7 11 20 11 8 0 13-.8 15-2.5s4.7-6.8 + 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3 8.5-5.8 9.5 +-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3-64.7 57-92 95 +-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 241v40h399900v-40z`,rightharpoondownplus:`M399747 705c0 7.3 6.7 11 20 11 8 0 13-.8 + 15-2.5s4.7-6.8 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3 + 8.5-5.8 9.5-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3 +-64.7 57-92 95-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 435v40h399900v-40z +m0-194v40h400000v-40zm0 0v40h400000v-40z`,righthook:`M399859 241c-764 0 0 0 0 0 40-3.3 68.7-15.7 86-37 10-12 15-25.3 + 15-40 0-22.7-9.8-40.7-29.5-54-19.7-13.3-43.5-21-71.5-23-17.3-1.3-26-8-26-20 0 +-13.3 8.7-20 26-20 38 0 71 11.2 99 33.5 0 0 7 5.6 21 16.7 14 11.2 21 33.5 21 + 66.8s-14 61.2-42 83.5c-28 22.3-61 33.5-99 33.5L0 241z M0 281v-40h399859v40z`,rightlinesegment:`M399960 241 V94 h40 V428 h-40 V281 H0 v-40z +M399960 241 V94 h40 V428 h-40 V281 H0 v-40z`,rightToFrom:`M400000 167c-70.7-42-118-97.7-142-167h-23c-15.3 0-23 .3-23 + 1 0 1.3 5.3 13.7 16 37 18 35.3 41.3 69 70 101l7 8H0v40h399905l-7 8c-28.7 32 +-52 65.7-70 101-10.7 23.3-16 35.7-16 37 0 .7 7.7 1 23 1h23c24-69.3 71.3-125 142 +-167z M100 147v40h399900v-40zM0 341v40h399900v-40z`,twoheadleftarrow:`M0 167c68 40 + 115.7 95.7 143 167h22c15.3 0 23-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69 +-70-101l-7-8h125l9 7c50.7 39.3 85 86 103 140h46c0-4.7-6.3-18.7-19-42-18-35.3 +-40-67.3-66-96l-9-9h399716v-40H284l9-9c26-28.7 48-60.7 66-96 12.7-23.333 19 +-37.333 19-42h-46c-18 54-52.3 100.7-103 140l-9 7H95l7-8c28.7-32 52-65.7 70-101 + 10.7-23.333 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 71.3 68 127 0 167z`,twoheadrightarrow:`M400000 167 +c-68-40-115.7-95.7-143-167h-22c-15.3 0-23 .3-23 1 0 1.3 5.3 13.7 16 37 18 35.3 + 41.3 69 70 101l7 8h-125l-9-7c-50.7-39.3-85-86-103-140h-46c0 4.7 6.3 18.7 19 42 + 18 35.3 40 67.3 66 96l9 9H0v40h399716l-9 9c-26 28.7-48 60.7-66 96-12.7 23.333 +-19 37.333-19 42h46c18-54 52.3-100.7 103-140l9-7h125l-7 8c-28.7 32-52 65.7-70 + 101-10.7 23.333-16 35.7-16 37 0 .7 7.7 1 23 1h22c27.3-71.3 75-127 143-167z`,tilde1:`M200 55.538c-77 0-168 73.953-177 73.953-3 0-7 +-2.175-9-5.437L2 97c-1-2-2-4-2-6 0-4 2-7 5-9l20-12C116 12 171 0 207 0c86 0 + 114 68 191 68 78 0 168-68 177-68 4 0 7 2 9 5l12 19c1 2.175 2 4.35 2 6.525 0 + 4.35-2 7.613-5 9.788l-19 13.05c-92 63.077-116.937 75.308-183 76.128 +-68.267.847-113-73.952-191-73.952z`,tilde2:`M344 55.266c-142 0-300.638 81.316-311.5 86.418 +-8.01 3.762-22.5 10.91-23.5 5.562L1 120c-1-2-1-3-1-4 0-5 3-9 8-10l18.4-9C160.9 + 31.9 283 0 358 0c148 0 188 122 331 122s314-97 326-97c4 0 8 2 10 7l7 21.114 +c1 2.14 1 3.21 1 4.28 0 5.347-3 9.626-7 10.696l-22.3 12.622C852.6 158.372 751 + 181.476 676 181.476c-149 0-189-126.21-332-126.21z`,tilde3:`M786 59C457 59 32 175.242 13 175.242c-6 0-10-3.457 +-11-10.37L.15 138c-1-7 3-12 10-13l19.2-6.4C378.4 40.7 634.3 0 804.3 0c337 0 + 411.8 157 746.8 157 328 0 754-112 773-112 5 0 10 3 11 9l1 14.075c1 8.066-.697 + 16.595-6.697 17.492l-21.052 7.31c-367.9 98.146-609.15 122.696-778.15 122.696 + -338 0-409-156.573-744-156.573z`,tilde4:`M786 58C457 58 32 177.487 13 177.487c-6 0-10-3.345 +-11-10.035L.15 143c-1-7 3-12 10-13l22-6.7C381.2 35 637.15 0 807.15 0c337 0 409 + 177 744 177 328 0 754-127 773-127 5 0 10 3 11 9l1 14.794c1 7.805-3 13.38-9 + 14.495l-20.7 5.574c-366.85 99.79-607.3 139.372-776.3 139.372-338 0-409 + -175.236-744-175.236z`,vec:`M377 20c0-5.333 1.833-10 5.5-14S391 0 397 0c4.667 0 8.667 1.667 12 5 +3.333 2.667 6.667 9 10 19 6.667 24.667 20.333 43.667 41 57 7.333 4.667 11 +10.667 11 18 0 6-1 10-3 12s-6.667 5-14 9c-28.667 14.667-53.667 35.667-75 63 +-1.333 1.333-3.167 3.5-5.5 6.5s-4 4.833-5 5.5c-1 .667-2.5 1.333-4.5 2s-4.333 1 +-7 1c-4.667 0-9.167-1.833-13.5-5.5S337 184 337 178c0-12.667 15.667-32.333 47-59 +H213l-171-1c-8.667-6-13-12.333-13-19 0-4.667 4.333-11.333 13-20h359 +c-16-25.333-24-45-24-59z`,widehat1:`M529 0h5l519 115c5 1 9 5 9 10 0 1-1 2-1 3l-4 22 +c-1 5-5 9-11 9h-2L532 67 19 159h-2c-5 0-9-4-11-9l-5-22c-1-6 2-12 8-13z`,widehat2:`M1181 0h2l1171 176c6 0 10 5 10 11l-2 23c-1 6-5 10 +-11 10h-1L1182 67 15 220h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z`,widehat3:`M1181 0h2l1171 236c6 0 10 5 10 11l-2 23c-1 6-5 10 +-11 10h-1L1182 67 15 280h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z`,widehat4:`M1181 0h2l1171 296c6 0 10 5 10 11l-2 23c-1 6-5 10 +-11 10h-1L1182 67 15 340h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z`,widecheck1:`M529,159h5l519,-115c5,-1,9,-5,9,-10c0,-1,-1,-2,-1,-3l-4,-22c-1, +-5,-5,-9,-11,-9h-2l-512,92l-513,-92h-2c-5,0,-9,4,-11,9l-5,22c-1,6,2,12,8,13z`,widecheck2:`M1181,220h2l1171,-176c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10, +-11,-10h-1l-1168,153l-1167,-153h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z`,widecheck3:`M1181,280h2l1171,-236c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10, +-11,-10h-1l-1168,213l-1167,-213h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z`,widecheck4:`M1181,340h2l1171,-296c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10, +-11,-10h-1l-1168,273l-1167,-273h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z`,baraboveleftarrow:`M400000 620h-399890l3 -3c68.7 -52.7 113.7 -120 135 -202 +c4 -14.7 6 -23 6 -25c0 -7.3 -7 -11 -21 -11c-8 0 -13.2 0.8 -15.5 2.5 +c-2.3 1.7 -4.2 5.8 -5.5 12.5c-1.3 4.7 -2.7 10.3 -4 17c-12 48.7 -34.8 92 -68.5 130 +s-74.2 66.3 -121.5 85c-10 4 -16 7.7 -18 11c0 8.7 6 14.3 18 17c47.3 18.7 87.8 47 +121.5 85s56.5 81.3 68.5 130c0.7 2 1.3 5 2 9s1.2 6.7 1.5 8c0.3 1.3 1 3.3 2 6 +s2.2 4.5 3.5 5.5c1.3 1 3.3 1.8 6 2.5s6 1 10 1c14 0 21 -3.7 21 -11 +c0 -2 -2 -10.3 -6 -25c-20 -79.3 -65 -146.7 -135 -202l-3 -3h399890z +M100 620v40h399900v-40z M0 241v40h399900v-40zM0 241v40h399900v-40z`,rightarrowabovebar:`M0 241v40h399891c-47.3 35.3-84 78-110 128-16.7 32 +-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20 11 8 0 +13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7 39 +-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85-40.5 +-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5 +-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67 +151.7 139 205zm96 379h399894v40H0zm0 0h399904v40H0z`,baraboveshortleftharpoon:`M507,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11 +c1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17 +c2,0.7,5,1,9,1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21 +c-32,-87.3,-82.7,-157.7,-152,-211c0,0,-3,-3,-3,-3l399351,0l0,-40 +c-398570,0,-399437,0,-399437,0z M593 435 v40 H399500 v-40z +M0 281 v-40 H399908 v40z M0 281 v-40 H399908 v40z`,rightharpoonaboveshortbar:`M0,241 l0,40c399126,0,399993,0,399993,0 +c4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199, +-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6 +c-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z +M0 241 v40 H399908 v-40z M0 475 v-40 H399500 v40z M0 475 v-40 H399500 v40z`,shortbaraboveleftharpoon:`M7,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11 +c1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17c2,0.7,5,1,9, +1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21c-32,-87.3,-82.7,-157.7, +-152,-211c0,0,-3,-3,-3,-3l399907,0l0,-40c-399126,0,-399993,0,-399993,0z +M93 435 v40 H400000 v-40z M500 241 v40 H400000 v-40z M500 241 v40 H400000 v-40z`,shortrightharpoonabovebar:`M53,241l0,40c398570,0,399437,0,399437,0 +c4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199, +-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6 +c-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z +M500 241 v40 H399408 v-40z M500 435 v40 H400000 v-40z`},Cbe=o(function(e,r){switch(e){case"lbrack":return"M403 1759 V84 H666 V0 H319 V1759 v"+r+` v1759 h347 v-84 +H403z M403 1759 V0 H319 V1759 v`+r+" v1759 h84z";case"rbrack":return"M347 1759 V0 H0 V84 H263 V1759 v"+r+` v1759 H0 v84 H347z +M347 1759 V0 H263 V1759 v`+r+" v1759 h84z";case"vert":return"M145 15 v585 v"+r+` v585 c2.667,10,9.667,15,21,15 +c10,0,16.667,-5,20,-15 v-585 v`+-r+` v-585 c-2.667,-10,-9.667,-15,-21,-15 +c-10,0,-16.667,5,-20,15z M188 15 H145 v585 v`+r+" v585 h43z";case"doublevert":return"M145 15 v585 v"+r+` v585 c2.667,10,9.667,15,21,15 +c10,0,16.667,-5,20,-15 v-585 v`+-r+` v-585 c-2.667,-10,-9.667,-15,-21,-15 +c-10,0,-16.667,5,-20,15z M188 15 H145 v585 v`+r+` v585 h43z +M367 15 v585 v`+r+` v585 c2.667,10,9.667,15,21,15 +c10,0,16.667,-5,20,-15 v-585 v`+-r+` v-585 c-2.667,-10,-9.667,-15,-21,-15 +c-10,0,-16.667,5,-20,15z M410 15 H367 v585 v`+r+" v585 h43z";case"lfloor":return"M319 602 V0 H403 V602 v"+r+` v1715 h263 v84 H319z +MM319 602 V0 H403 V602 v`+r+" v1715 H319z";case"rfloor":return"M319 602 V0 H403 V602 v"+r+` v1799 H0 v-84 H319z +MM319 602 V0 H403 V602 v`+r+" v1715 H319z";case"lceil":return"M403 1759 V84 H666 V0 H319 V1759 v"+r+` v602 h84z +M403 1759 V0 H319 V1759 v`+r+" v602 h84z";case"rceil":return"M347 1759 V0 H0 V84 H263 V1759 v"+r+` v602 h84z +M347 1759 V0 h-84 V1759 v`+r+" v602 h84z";case"lparen":return`M863,9c0,-2,-2,-5,-6,-9c0,0,-17,0,-17,0c-12.7,0,-19.3,0.3,-20,1 +c-5.3,5.3,-10.3,11,-15,17c-242.7,294.7,-395.3,682,-458,1162c-21.3,163.3,-33.3,349, +-36,557 l0,`+(r+84)+`c0.2,6,0,26,0,60c2,159.3,10,310.7,24,454c53.3,528,210, +949.7,470,1265c4.7,6,9.7,11.7,15,17c0.7,0.7,7,1,19,1c0,0,18,0,18,0c4,-4,6,-7,6,-9 +c0,-2.7,-3.3,-8.7,-10,-18c-135.3,-192.7,-235.5,-414.3,-300.5,-665c-65,-250.7,-102.5, +-544.7,-112.5,-882c-2,-104,-3,-167,-3,-189 +l0,-`+(r+92)+`c0,-162.7,5.7,-314,17,-454c20.7,-272,63.7,-513,129,-723c65.3, +-210,155.3,-396.3,270,-559c6.7,-9.3,10,-15.3,10,-18z`;case"rparen":return`M76,0c-16.7,0,-25,3,-25,9c0,2,2,6.3,6,13c21.3,28.7,42.3,60.3, +63,95c96.7,156.7,172.8,332.5,228.5,527.5c55.7,195,92.8,416.5,111.5,664.5 +c11.3,139.3,17,290.7,17,454c0,28,1.7,43,3.3,45l0,`+(r+9)+` +c-3,4,-3.3,16.7,-3.3,38c0,162,-5.7,313.7,-17,455c-18.7,248,-55.8,469.3,-111.5,664 +c-55.7,194.7,-131.8,370.3,-228.5,527c-20.7,34.7,-41.7,66.3,-63,95c-2,3.3,-4,7,-6,11 +c0,7.3,5.7,11,17,11c0,0,11,0,11,0c9.3,0,14.3,-0.3,15,-1c5.3,-5.3,10.3,-11,15,-17 +c242.7,-294.7,395.3,-681.7,458,-1161c21.3,-164.7,33.3,-350.7,36,-558 +l0,-`+(r+144)+`c-2,-159.3,-10,-310.7,-24,-454c-53.3,-528,-210,-949.7, +-470,-1265c-4.7,-6,-9.7,-11.7,-15,-17c-0.7,-0.7,-6.7,-1,-18,-1z`;default:throw new Error("Unknown stretchy delimiter.")}},"tallDelim"),ed=class{static{o(this,"DocumentFragment")}constructor(e){this.children=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,this.children=e,this.classes=[],this.height=0,this.depth=0,this.maxFontSize=0,this.style={}}hasClass(e){return Jt.contains(this.classes,e)}toNode(){for(var e=document.createDocumentFragment(),r=0;rr.toText(),"toText");return this.children.map(e).join("")}},jl={"AMS-Regular":{32:[0,0,0,0,.25],65:[0,.68889,0,0,.72222],66:[0,.68889,0,0,.66667],67:[0,.68889,0,0,.72222],68:[0,.68889,0,0,.72222],69:[0,.68889,0,0,.66667],70:[0,.68889,0,0,.61111],71:[0,.68889,0,0,.77778],72:[0,.68889,0,0,.77778],73:[0,.68889,0,0,.38889],74:[.16667,.68889,0,0,.5],75:[0,.68889,0,0,.77778],76:[0,.68889,0,0,.66667],77:[0,.68889,0,0,.94445],78:[0,.68889,0,0,.72222],79:[.16667,.68889,0,0,.77778],80:[0,.68889,0,0,.61111],81:[.16667,.68889,0,0,.77778],82:[0,.68889,0,0,.72222],83:[0,.68889,0,0,.55556],84:[0,.68889,0,0,.66667],85:[0,.68889,0,0,.72222],86:[0,.68889,0,0,.72222],87:[0,.68889,0,0,1],88:[0,.68889,0,0,.72222],89:[0,.68889,0,0,.72222],90:[0,.68889,0,0,.66667],107:[0,.68889,0,0,.55556],160:[0,0,0,0,.25],165:[0,.675,.025,0,.75],174:[.15559,.69224,0,0,.94666],240:[0,.68889,0,0,.55556],295:[0,.68889,0,0,.54028],710:[0,.825,0,0,2.33334],732:[0,.9,0,0,2.33334],770:[0,.825,0,0,2.33334],771:[0,.9,0,0,2.33334],989:[.08167,.58167,0,0,.77778],1008:[0,.43056,.04028,0,.66667],8245:[0,.54986,0,0,.275],8463:[0,.68889,0,0,.54028],8487:[0,.68889,0,0,.72222],8498:[0,.68889,0,0,.55556],8502:[0,.68889,0,0,.66667],8503:[0,.68889,0,0,.44445],8504:[0,.68889,0,0,.66667],8513:[0,.68889,0,0,.63889],8592:[-.03598,.46402,0,0,.5],8594:[-.03598,.46402,0,0,.5],8602:[-.13313,.36687,0,0,1],8603:[-.13313,.36687,0,0,1],8606:[.01354,.52239,0,0,1],8608:[.01354,.52239,0,0,1],8610:[.01354,.52239,0,0,1.11111],8611:[.01354,.52239,0,0,1.11111],8619:[0,.54986,0,0,1],8620:[0,.54986,0,0,1],8621:[-.13313,.37788,0,0,1.38889],8622:[-.13313,.36687,0,0,1],8624:[0,.69224,0,0,.5],8625:[0,.69224,0,0,.5],8630:[0,.43056,0,0,1],8631:[0,.43056,0,0,1],8634:[.08198,.58198,0,0,.77778],8635:[.08198,.58198,0,0,.77778],8638:[.19444,.69224,0,0,.41667],8639:[.19444,.69224,0,0,.41667],8642:[.19444,.69224,0,0,.41667],8643:[.19444,.69224,0,0,.41667],8644:[.1808,.675,0,0,1],8646:[.1808,.675,0,0,1],8647:[.1808,.675,0,0,1],8648:[.19444,.69224,0,0,.83334],8649:[.1808,.675,0,0,1],8650:[.19444,.69224,0,0,.83334],8651:[.01354,.52239,0,0,1],8652:[.01354,.52239,0,0,1],8653:[-.13313,.36687,0,0,1],8654:[-.13313,.36687,0,0,1],8655:[-.13313,.36687,0,0,1],8666:[.13667,.63667,0,0,1],8667:[.13667,.63667,0,0,1],8669:[-.13313,.37788,0,0,1],8672:[-.064,.437,0,0,1.334],8674:[-.064,.437,0,0,1.334],8705:[0,.825,0,0,.5],8708:[0,.68889,0,0,.55556],8709:[.08167,.58167,0,0,.77778],8717:[0,.43056,0,0,.42917],8722:[-.03598,.46402,0,0,.5],8724:[.08198,.69224,0,0,.77778],8726:[.08167,.58167,0,0,.77778],8733:[0,.69224,0,0,.77778],8736:[0,.69224,0,0,.72222],8737:[0,.69224,0,0,.72222],8738:[.03517,.52239,0,0,.72222],8739:[.08167,.58167,0,0,.22222],8740:[.25142,.74111,0,0,.27778],8741:[.08167,.58167,0,0,.38889],8742:[.25142,.74111,0,0,.5],8756:[0,.69224,0,0,.66667],8757:[0,.69224,0,0,.66667],8764:[-.13313,.36687,0,0,.77778],8765:[-.13313,.37788,0,0,.77778],8769:[-.13313,.36687,0,0,.77778],8770:[-.03625,.46375,0,0,.77778],8774:[.30274,.79383,0,0,.77778],8776:[-.01688,.48312,0,0,.77778],8778:[.08167,.58167,0,0,.77778],8782:[.06062,.54986,0,0,.77778],8783:[.06062,.54986,0,0,.77778],8785:[.08198,.58198,0,0,.77778],8786:[.08198,.58198,0,0,.77778],8787:[.08198,.58198,0,0,.77778],8790:[0,.69224,0,0,.77778],8791:[.22958,.72958,0,0,.77778],8796:[.08198,.91667,0,0,.77778],8806:[.25583,.75583,0,0,.77778],8807:[.25583,.75583,0,0,.77778],8808:[.25142,.75726,0,0,.77778],8809:[.25142,.75726,0,0,.77778],8812:[.25583,.75583,0,0,.5],8814:[.20576,.70576,0,0,.77778],8815:[.20576,.70576,0,0,.77778],8816:[.30274,.79383,0,0,.77778],8817:[.30274,.79383,0,0,.77778],8818:[.22958,.72958,0,0,.77778],8819:[.22958,.72958,0,0,.77778],8822:[.1808,.675,0,0,.77778],8823:[.1808,.675,0,0,.77778],8828:[.13667,.63667,0,0,.77778],8829:[.13667,.63667,0,0,.77778],8830:[.22958,.72958,0,0,.77778],8831:[.22958,.72958,0,0,.77778],8832:[.20576,.70576,0,0,.77778],8833:[.20576,.70576,0,0,.77778],8840:[.30274,.79383,0,0,.77778],8841:[.30274,.79383,0,0,.77778],8842:[.13597,.63597,0,0,.77778],8843:[.13597,.63597,0,0,.77778],8847:[.03517,.54986,0,0,.77778],8848:[.03517,.54986,0,0,.77778],8858:[.08198,.58198,0,0,.77778],8859:[.08198,.58198,0,0,.77778],8861:[.08198,.58198,0,0,.77778],8862:[0,.675,0,0,.77778],8863:[0,.675,0,0,.77778],8864:[0,.675,0,0,.77778],8865:[0,.675,0,0,.77778],8872:[0,.69224,0,0,.61111],8873:[0,.69224,0,0,.72222],8874:[0,.69224,0,0,.88889],8876:[0,.68889,0,0,.61111],8877:[0,.68889,0,0,.61111],8878:[0,.68889,0,0,.72222],8879:[0,.68889,0,0,.72222],8882:[.03517,.54986,0,0,.77778],8883:[.03517,.54986,0,0,.77778],8884:[.13667,.63667,0,0,.77778],8885:[.13667,.63667,0,0,.77778],8888:[0,.54986,0,0,1.11111],8890:[.19444,.43056,0,0,.55556],8891:[.19444,.69224,0,0,.61111],8892:[.19444,.69224,0,0,.61111],8901:[0,.54986,0,0,.27778],8903:[.08167,.58167,0,0,.77778],8905:[.08167,.58167,0,0,.77778],8906:[.08167,.58167,0,0,.77778],8907:[0,.69224,0,0,.77778],8908:[0,.69224,0,0,.77778],8909:[-.03598,.46402,0,0,.77778],8910:[0,.54986,0,0,.76042],8911:[0,.54986,0,0,.76042],8912:[.03517,.54986,0,0,.77778],8913:[.03517,.54986,0,0,.77778],8914:[0,.54986,0,0,.66667],8915:[0,.54986,0,0,.66667],8916:[0,.69224,0,0,.66667],8918:[.0391,.5391,0,0,.77778],8919:[.0391,.5391,0,0,.77778],8920:[.03517,.54986,0,0,1.33334],8921:[.03517,.54986,0,0,1.33334],8922:[.38569,.88569,0,0,.77778],8923:[.38569,.88569,0,0,.77778],8926:[.13667,.63667,0,0,.77778],8927:[.13667,.63667,0,0,.77778],8928:[.30274,.79383,0,0,.77778],8929:[.30274,.79383,0,0,.77778],8934:[.23222,.74111,0,0,.77778],8935:[.23222,.74111,0,0,.77778],8936:[.23222,.74111,0,0,.77778],8937:[.23222,.74111,0,0,.77778],8938:[.20576,.70576,0,0,.77778],8939:[.20576,.70576,0,0,.77778],8940:[.30274,.79383,0,0,.77778],8941:[.30274,.79383,0,0,.77778],8994:[.19444,.69224,0,0,.77778],8995:[.19444,.69224,0,0,.77778],9416:[.15559,.69224,0,0,.90222],9484:[0,.69224,0,0,.5],9488:[0,.69224,0,0,.5],9492:[0,.37788,0,0,.5],9496:[0,.37788,0,0,.5],9585:[.19444,.68889,0,0,.88889],9586:[.19444,.74111,0,0,.88889],9632:[0,.675,0,0,.77778],9633:[0,.675,0,0,.77778],9650:[0,.54986,0,0,.72222],9651:[0,.54986,0,0,.72222],9654:[.03517,.54986,0,0,.77778],9660:[0,.54986,0,0,.72222],9661:[0,.54986,0,0,.72222],9664:[.03517,.54986,0,0,.77778],9674:[.11111,.69224,0,0,.66667],9733:[.19444,.69224,0,0,.94445],10003:[0,.69224,0,0,.83334],10016:[0,.69224,0,0,.83334],10731:[.11111,.69224,0,0,.66667],10846:[.19444,.75583,0,0,.61111],10877:[.13667,.63667,0,0,.77778],10878:[.13667,.63667,0,0,.77778],10885:[.25583,.75583,0,0,.77778],10886:[.25583,.75583,0,0,.77778],10887:[.13597,.63597,0,0,.77778],10888:[.13597,.63597,0,0,.77778],10889:[.26167,.75726,0,0,.77778],10890:[.26167,.75726,0,0,.77778],10891:[.48256,.98256,0,0,.77778],10892:[.48256,.98256,0,0,.77778],10901:[.13667,.63667,0,0,.77778],10902:[.13667,.63667,0,0,.77778],10933:[.25142,.75726,0,0,.77778],10934:[.25142,.75726,0,0,.77778],10935:[.26167,.75726,0,0,.77778],10936:[.26167,.75726,0,0,.77778],10937:[.26167,.75726,0,0,.77778],10938:[.26167,.75726,0,0,.77778],10949:[.25583,.75583,0,0,.77778],10950:[.25583,.75583,0,0,.77778],10955:[.28481,.79383,0,0,.77778],10956:[.28481,.79383,0,0,.77778],57350:[.08167,.58167,0,0,.22222],57351:[.08167,.58167,0,0,.38889],57352:[.08167,.58167,0,0,.77778],57353:[0,.43056,.04028,0,.66667],57356:[.25142,.75726,0,0,.77778],57357:[.25142,.75726,0,0,.77778],57358:[.41951,.91951,0,0,.77778],57359:[.30274,.79383,0,0,.77778],57360:[.30274,.79383,0,0,.77778],57361:[.41951,.91951,0,0,.77778],57366:[.25142,.75726,0,0,.77778],57367:[.25142,.75726,0,0,.77778],57368:[.25142,.75726,0,0,.77778],57369:[.25142,.75726,0,0,.77778],57370:[.13597,.63597,0,0,.77778],57371:[.13597,.63597,0,0,.77778]},"Caligraphic-Regular":{32:[0,0,0,0,.25],65:[0,.68333,0,.19445,.79847],66:[0,.68333,.03041,.13889,.65681],67:[0,.68333,.05834,.13889,.52653],68:[0,.68333,.02778,.08334,.77139],69:[0,.68333,.08944,.11111,.52778],70:[0,.68333,.09931,.11111,.71875],71:[.09722,.68333,.0593,.11111,.59487],72:[0,.68333,.00965,.11111,.84452],73:[0,.68333,.07382,0,.54452],74:[.09722,.68333,.18472,.16667,.67778],75:[0,.68333,.01445,.05556,.76195],76:[0,.68333,0,.13889,.68972],77:[0,.68333,0,.13889,1.2009],78:[0,.68333,.14736,.08334,.82049],79:[0,.68333,.02778,.11111,.79611],80:[0,.68333,.08222,.08334,.69556],81:[.09722,.68333,0,.11111,.81667],82:[0,.68333,0,.08334,.8475],83:[0,.68333,.075,.13889,.60556],84:[0,.68333,.25417,0,.54464],85:[0,.68333,.09931,.08334,.62583],86:[0,.68333,.08222,0,.61278],87:[0,.68333,.08222,.08334,.98778],88:[0,.68333,.14643,.13889,.7133],89:[.09722,.68333,.08222,.08334,.66834],90:[0,.68333,.07944,.13889,.72473],160:[0,0,0,0,.25]},"Fraktur-Regular":{32:[0,0,0,0,.25],33:[0,.69141,0,0,.29574],34:[0,.69141,0,0,.21471],38:[0,.69141,0,0,.73786],39:[0,.69141,0,0,.21201],40:[.24982,.74947,0,0,.38865],41:[.24982,.74947,0,0,.38865],42:[0,.62119,0,0,.27764],43:[.08319,.58283,0,0,.75623],44:[0,.10803,0,0,.27764],45:[.08319,.58283,0,0,.75623],46:[0,.10803,0,0,.27764],47:[.24982,.74947,0,0,.50181],48:[0,.47534,0,0,.50181],49:[0,.47534,0,0,.50181],50:[0,.47534,0,0,.50181],51:[.18906,.47534,0,0,.50181],52:[.18906,.47534,0,0,.50181],53:[.18906,.47534,0,0,.50181],54:[0,.69141,0,0,.50181],55:[.18906,.47534,0,0,.50181],56:[0,.69141,0,0,.50181],57:[.18906,.47534,0,0,.50181],58:[0,.47534,0,0,.21606],59:[.12604,.47534,0,0,.21606],61:[-.13099,.36866,0,0,.75623],63:[0,.69141,0,0,.36245],65:[0,.69141,0,0,.7176],66:[0,.69141,0,0,.88397],67:[0,.69141,0,0,.61254],68:[0,.69141,0,0,.83158],69:[0,.69141,0,0,.66278],70:[.12604,.69141,0,0,.61119],71:[0,.69141,0,0,.78539],72:[.06302,.69141,0,0,.7203],73:[0,.69141,0,0,.55448],74:[.12604,.69141,0,0,.55231],75:[0,.69141,0,0,.66845],76:[0,.69141,0,0,.66602],77:[0,.69141,0,0,1.04953],78:[0,.69141,0,0,.83212],79:[0,.69141,0,0,.82699],80:[.18906,.69141,0,0,.82753],81:[.03781,.69141,0,0,.82699],82:[0,.69141,0,0,.82807],83:[0,.69141,0,0,.82861],84:[0,.69141,0,0,.66899],85:[0,.69141,0,0,.64576],86:[0,.69141,0,0,.83131],87:[0,.69141,0,0,1.04602],88:[0,.69141,0,0,.71922],89:[.18906,.69141,0,0,.83293],90:[.12604,.69141,0,0,.60201],91:[.24982,.74947,0,0,.27764],93:[.24982,.74947,0,0,.27764],94:[0,.69141,0,0,.49965],97:[0,.47534,0,0,.50046],98:[0,.69141,0,0,.51315],99:[0,.47534,0,0,.38946],100:[0,.62119,0,0,.49857],101:[0,.47534,0,0,.40053],102:[.18906,.69141,0,0,.32626],103:[.18906,.47534,0,0,.5037],104:[.18906,.69141,0,0,.52126],105:[0,.69141,0,0,.27899],106:[0,.69141,0,0,.28088],107:[0,.69141,0,0,.38946],108:[0,.69141,0,0,.27953],109:[0,.47534,0,0,.76676],110:[0,.47534,0,0,.52666],111:[0,.47534,0,0,.48885],112:[.18906,.52396,0,0,.50046],113:[.18906,.47534,0,0,.48912],114:[0,.47534,0,0,.38919],115:[0,.47534,0,0,.44266],116:[0,.62119,0,0,.33301],117:[0,.47534,0,0,.5172],118:[0,.52396,0,0,.5118],119:[0,.52396,0,0,.77351],120:[.18906,.47534,0,0,.38865],121:[.18906,.47534,0,0,.49884],122:[.18906,.47534,0,0,.39054],160:[0,0,0,0,.25],8216:[0,.69141,0,0,.21471],8217:[0,.69141,0,0,.21471],58112:[0,.62119,0,0,.49749],58113:[0,.62119,0,0,.4983],58114:[.18906,.69141,0,0,.33328],58115:[.18906,.69141,0,0,.32923],58116:[.18906,.47534,0,0,.50343],58117:[0,.69141,0,0,.33301],58118:[0,.62119,0,0,.33409],58119:[0,.47534,0,0,.50073]},"Main-Bold":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.35],34:[0,.69444,0,0,.60278],35:[.19444,.69444,0,0,.95833],36:[.05556,.75,0,0,.575],37:[.05556,.75,0,0,.95833],38:[0,.69444,0,0,.89444],39:[0,.69444,0,0,.31944],40:[.25,.75,0,0,.44722],41:[.25,.75,0,0,.44722],42:[0,.75,0,0,.575],43:[.13333,.63333,0,0,.89444],44:[.19444,.15556,0,0,.31944],45:[0,.44444,0,0,.38333],46:[0,.15556,0,0,.31944],47:[.25,.75,0,0,.575],48:[0,.64444,0,0,.575],49:[0,.64444,0,0,.575],50:[0,.64444,0,0,.575],51:[0,.64444,0,0,.575],52:[0,.64444,0,0,.575],53:[0,.64444,0,0,.575],54:[0,.64444,0,0,.575],55:[0,.64444,0,0,.575],56:[0,.64444,0,0,.575],57:[0,.64444,0,0,.575],58:[0,.44444,0,0,.31944],59:[.19444,.44444,0,0,.31944],60:[.08556,.58556,0,0,.89444],61:[-.10889,.39111,0,0,.89444],62:[.08556,.58556,0,0,.89444],63:[0,.69444,0,0,.54305],64:[0,.69444,0,0,.89444],65:[0,.68611,0,0,.86944],66:[0,.68611,0,0,.81805],67:[0,.68611,0,0,.83055],68:[0,.68611,0,0,.88194],69:[0,.68611,0,0,.75555],70:[0,.68611,0,0,.72361],71:[0,.68611,0,0,.90416],72:[0,.68611,0,0,.9],73:[0,.68611,0,0,.43611],74:[0,.68611,0,0,.59444],75:[0,.68611,0,0,.90138],76:[0,.68611,0,0,.69166],77:[0,.68611,0,0,1.09166],78:[0,.68611,0,0,.9],79:[0,.68611,0,0,.86388],80:[0,.68611,0,0,.78611],81:[.19444,.68611,0,0,.86388],82:[0,.68611,0,0,.8625],83:[0,.68611,0,0,.63889],84:[0,.68611,0,0,.8],85:[0,.68611,0,0,.88472],86:[0,.68611,.01597,0,.86944],87:[0,.68611,.01597,0,1.18888],88:[0,.68611,0,0,.86944],89:[0,.68611,.02875,0,.86944],90:[0,.68611,0,0,.70277],91:[.25,.75,0,0,.31944],92:[.25,.75,0,0,.575],93:[.25,.75,0,0,.31944],94:[0,.69444,0,0,.575],95:[.31,.13444,.03194,0,.575],97:[0,.44444,0,0,.55902],98:[0,.69444,0,0,.63889],99:[0,.44444,0,0,.51111],100:[0,.69444,0,0,.63889],101:[0,.44444,0,0,.52708],102:[0,.69444,.10903,0,.35139],103:[.19444,.44444,.01597,0,.575],104:[0,.69444,0,0,.63889],105:[0,.69444,0,0,.31944],106:[.19444,.69444,0,0,.35139],107:[0,.69444,0,0,.60694],108:[0,.69444,0,0,.31944],109:[0,.44444,0,0,.95833],110:[0,.44444,0,0,.63889],111:[0,.44444,0,0,.575],112:[.19444,.44444,0,0,.63889],113:[.19444,.44444,0,0,.60694],114:[0,.44444,0,0,.47361],115:[0,.44444,0,0,.45361],116:[0,.63492,0,0,.44722],117:[0,.44444,0,0,.63889],118:[0,.44444,.01597,0,.60694],119:[0,.44444,.01597,0,.83055],120:[0,.44444,0,0,.60694],121:[.19444,.44444,.01597,0,.60694],122:[0,.44444,0,0,.51111],123:[.25,.75,0,0,.575],124:[.25,.75,0,0,.31944],125:[.25,.75,0,0,.575],126:[.35,.34444,0,0,.575],160:[0,0,0,0,.25],163:[0,.69444,0,0,.86853],168:[0,.69444,0,0,.575],172:[0,.44444,0,0,.76666],176:[0,.69444,0,0,.86944],177:[.13333,.63333,0,0,.89444],184:[.17014,0,0,0,.51111],198:[0,.68611,0,0,1.04166],215:[.13333,.63333,0,0,.89444],216:[.04861,.73472,0,0,.89444],223:[0,.69444,0,0,.59722],230:[0,.44444,0,0,.83055],247:[.13333,.63333,0,0,.89444],248:[.09722,.54167,0,0,.575],305:[0,.44444,0,0,.31944],338:[0,.68611,0,0,1.16944],339:[0,.44444,0,0,.89444],567:[.19444,.44444,0,0,.35139],710:[0,.69444,0,0,.575],711:[0,.63194,0,0,.575],713:[0,.59611,0,0,.575],714:[0,.69444,0,0,.575],715:[0,.69444,0,0,.575],728:[0,.69444,0,0,.575],729:[0,.69444,0,0,.31944],730:[0,.69444,0,0,.86944],732:[0,.69444,0,0,.575],733:[0,.69444,0,0,.575],915:[0,.68611,0,0,.69166],916:[0,.68611,0,0,.95833],920:[0,.68611,0,0,.89444],923:[0,.68611,0,0,.80555],926:[0,.68611,0,0,.76666],928:[0,.68611,0,0,.9],931:[0,.68611,0,0,.83055],933:[0,.68611,0,0,.89444],934:[0,.68611,0,0,.83055],936:[0,.68611,0,0,.89444],937:[0,.68611,0,0,.83055],8211:[0,.44444,.03194,0,.575],8212:[0,.44444,.03194,0,1.14999],8216:[0,.69444,0,0,.31944],8217:[0,.69444,0,0,.31944],8220:[0,.69444,0,0,.60278],8221:[0,.69444,0,0,.60278],8224:[.19444,.69444,0,0,.51111],8225:[.19444,.69444,0,0,.51111],8242:[0,.55556,0,0,.34444],8407:[0,.72444,.15486,0,.575],8463:[0,.69444,0,0,.66759],8465:[0,.69444,0,0,.83055],8467:[0,.69444,0,0,.47361],8472:[.19444,.44444,0,0,.74027],8476:[0,.69444,0,0,.83055],8501:[0,.69444,0,0,.70277],8592:[-.10889,.39111,0,0,1.14999],8593:[.19444,.69444,0,0,.575],8594:[-.10889,.39111,0,0,1.14999],8595:[.19444,.69444,0,0,.575],8596:[-.10889,.39111,0,0,1.14999],8597:[.25,.75,0,0,.575],8598:[.19444,.69444,0,0,1.14999],8599:[.19444,.69444,0,0,1.14999],8600:[.19444,.69444,0,0,1.14999],8601:[.19444,.69444,0,0,1.14999],8636:[-.10889,.39111,0,0,1.14999],8637:[-.10889,.39111,0,0,1.14999],8640:[-.10889,.39111,0,0,1.14999],8641:[-.10889,.39111,0,0,1.14999],8656:[-.10889,.39111,0,0,1.14999],8657:[.19444,.69444,0,0,.70277],8658:[-.10889,.39111,0,0,1.14999],8659:[.19444,.69444,0,0,.70277],8660:[-.10889,.39111,0,0,1.14999],8661:[.25,.75,0,0,.70277],8704:[0,.69444,0,0,.63889],8706:[0,.69444,.06389,0,.62847],8707:[0,.69444,0,0,.63889],8709:[.05556,.75,0,0,.575],8711:[0,.68611,0,0,.95833],8712:[.08556,.58556,0,0,.76666],8715:[.08556,.58556,0,0,.76666],8722:[.13333,.63333,0,0,.89444],8723:[.13333,.63333,0,0,.89444],8725:[.25,.75,0,0,.575],8726:[.25,.75,0,0,.575],8727:[-.02778,.47222,0,0,.575],8728:[-.02639,.47361,0,0,.575],8729:[-.02639,.47361,0,0,.575],8730:[.18,.82,0,0,.95833],8733:[0,.44444,0,0,.89444],8734:[0,.44444,0,0,1.14999],8736:[0,.69224,0,0,.72222],8739:[.25,.75,0,0,.31944],8741:[.25,.75,0,0,.575],8743:[0,.55556,0,0,.76666],8744:[0,.55556,0,0,.76666],8745:[0,.55556,0,0,.76666],8746:[0,.55556,0,0,.76666],8747:[.19444,.69444,.12778,0,.56875],8764:[-.10889,.39111,0,0,.89444],8768:[.19444,.69444,0,0,.31944],8771:[.00222,.50222,0,0,.89444],8773:[.027,.638,0,0,.894],8776:[.02444,.52444,0,0,.89444],8781:[.00222,.50222,0,0,.89444],8801:[.00222,.50222,0,0,.89444],8804:[.19667,.69667,0,0,.89444],8805:[.19667,.69667,0,0,.89444],8810:[.08556,.58556,0,0,1.14999],8811:[.08556,.58556,0,0,1.14999],8826:[.08556,.58556,0,0,.89444],8827:[.08556,.58556,0,0,.89444],8834:[.08556,.58556,0,0,.89444],8835:[.08556,.58556,0,0,.89444],8838:[.19667,.69667,0,0,.89444],8839:[.19667,.69667,0,0,.89444],8846:[0,.55556,0,0,.76666],8849:[.19667,.69667,0,0,.89444],8850:[.19667,.69667,0,0,.89444],8851:[0,.55556,0,0,.76666],8852:[0,.55556,0,0,.76666],8853:[.13333,.63333,0,0,.89444],8854:[.13333,.63333,0,0,.89444],8855:[.13333,.63333,0,0,.89444],8856:[.13333,.63333,0,0,.89444],8857:[.13333,.63333,0,0,.89444],8866:[0,.69444,0,0,.70277],8867:[0,.69444,0,0,.70277],8868:[0,.69444,0,0,.89444],8869:[0,.69444,0,0,.89444],8900:[-.02639,.47361,0,0,.575],8901:[-.02639,.47361,0,0,.31944],8902:[-.02778,.47222,0,0,.575],8968:[.25,.75,0,0,.51111],8969:[.25,.75,0,0,.51111],8970:[.25,.75,0,0,.51111],8971:[.25,.75,0,0,.51111],8994:[-.13889,.36111,0,0,1.14999],8995:[-.13889,.36111,0,0,1.14999],9651:[.19444,.69444,0,0,1.02222],9657:[-.02778,.47222,0,0,.575],9661:[.19444,.69444,0,0,1.02222],9667:[-.02778,.47222,0,0,.575],9711:[.19444,.69444,0,0,1.14999],9824:[.12963,.69444,0,0,.89444],9825:[.12963,.69444,0,0,.89444],9826:[.12963,.69444,0,0,.89444],9827:[.12963,.69444,0,0,.89444],9837:[0,.75,0,0,.44722],9838:[.19444,.69444,0,0,.44722],9839:[.19444,.69444,0,0,.44722],10216:[.25,.75,0,0,.44722],10217:[.25,.75,0,0,.44722],10815:[0,.68611,0,0,.9],10927:[.19667,.69667,0,0,.89444],10928:[.19667,.69667,0,0,.89444],57376:[.19444,.69444,0,0,0]},"Main-BoldItalic":{32:[0,0,0,0,.25],33:[0,.69444,.11417,0,.38611],34:[0,.69444,.07939,0,.62055],35:[.19444,.69444,.06833,0,.94444],37:[.05556,.75,.12861,0,.94444],38:[0,.69444,.08528,0,.88555],39:[0,.69444,.12945,0,.35555],40:[.25,.75,.15806,0,.47333],41:[.25,.75,.03306,0,.47333],42:[0,.75,.14333,0,.59111],43:[.10333,.60333,.03306,0,.88555],44:[.19444,.14722,0,0,.35555],45:[0,.44444,.02611,0,.41444],46:[0,.14722,0,0,.35555],47:[.25,.75,.15806,0,.59111],48:[0,.64444,.13167,0,.59111],49:[0,.64444,.13167,0,.59111],50:[0,.64444,.13167,0,.59111],51:[0,.64444,.13167,0,.59111],52:[.19444,.64444,.13167,0,.59111],53:[0,.64444,.13167,0,.59111],54:[0,.64444,.13167,0,.59111],55:[.19444,.64444,.13167,0,.59111],56:[0,.64444,.13167,0,.59111],57:[0,.64444,.13167,0,.59111],58:[0,.44444,.06695,0,.35555],59:[.19444,.44444,.06695,0,.35555],61:[-.10889,.39111,.06833,0,.88555],63:[0,.69444,.11472,0,.59111],64:[0,.69444,.09208,0,.88555],65:[0,.68611,0,0,.86555],66:[0,.68611,.0992,0,.81666],67:[0,.68611,.14208,0,.82666],68:[0,.68611,.09062,0,.87555],69:[0,.68611,.11431,0,.75666],70:[0,.68611,.12903,0,.72722],71:[0,.68611,.07347,0,.89527],72:[0,.68611,.17208,0,.8961],73:[0,.68611,.15681,0,.47166],74:[0,.68611,.145,0,.61055],75:[0,.68611,.14208,0,.89499],76:[0,.68611,0,0,.69777],77:[0,.68611,.17208,0,1.07277],78:[0,.68611,.17208,0,.8961],79:[0,.68611,.09062,0,.85499],80:[0,.68611,.0992,0,.78721],81:[.19444,.68611,.09062,0,.85499],82:[0,.68611,.02559,0,.85944],83:[0,.68611,.11264,0,.64999],84:[0,.68611,.12903,0,.7961],85:[0,.68611,.17208,0,.88083],86:[0,.68611,.18625,0,.86555],87:[0,.68611,.18625,0,1.15999],88:[0,.68611,.15681,0,.86555],89:[0,.68611,.19803,0,.86555],90:[0,.68611,.14208,0,.70888],91:[.25,.75,.1875,0,.35611],93:[.25,.75,.09972,0,.35611],94:[0,.69444,.06709,0,.59111],95:[.31,.13444,.09811,0,.59111],97:[0,.44444,.09426,0,.59111],98:[0,.69444,.07861,0,.53222],99:[0,.44444,.05222,0,.53222],100:[0,.69444,.10861,0,.59111],101:[0,.44444,.085,0,.53222],102:[.19444,.69444,.21778,0,.4],103:[.19444,.44444,.105,0,.53222],104:[0,.69444,.09426,0,.59111],105:[0,.69326,.11387,0,.35555],106:[.19444,.69326,.1672,0,.35555],107:[0,.69444,.11111,0,.53222],108:[0,.69444,.10861,0,.29666],109:[0,.44444,.09426,0,.94444],110:[0,.44444,.09426,0,.64999],111:[0,.44444,.07861,0,.59111],112:[.19444,.44444,.07861,0,.59111],113:[.19444,.44444,.105,0,.53222],114:[0,.44444,.11111,0,.50167],115:[0,.44444,.08167,0,.48694],116:[0,.63492,.09639,0,.385],117:[0,.44444,.09426,0,.62055],118:[0,.44444,.11111,0,.53222],119:[0,.44444,.11111,0,.76777],120:[0,.44444,.12583,0,.56055],121:[.19444,.44444,.105,0,.56166],122:[0,.44444,.13889,0,.49055],126:[.35,.34444,.11472,0,.59111],160:[0,0,0,0,.25],168:[0,.69444,.11473,0,.59111],176:[0,.69444,0,0,.94888],184:[.17014,0,0,0,.53222],198:[0,.68611,.11431,0,1.02277],216:[.04861,.73472,.09062,0,.88555],223:[.19444,.69444,.09736,0,.665],230:[0,.44444,.085,0,.82666],248:[.09722,.54167,.09458,0,.59111],305:[0,.44444,.09426,0,.35555],338:[0,.68611,.11431,0,1.14054],339:[0,.44444,.085,0,.82666],567:[.19444,.44444,.04611,0,.385],710:[0,.69444,.06709,0,.59111],711:[0,.63194,.08271,0,.59111],713:[0,.59444,.10444,0,.59111],714:[0,.69444,.08528,0,.59111],715:[0,.69444,0,0,.59111],728:[0,.69444,.10333,0,.59111],729:[0,.69444,.12945,0,.35555],730:[0,.69444,0,0,.94888],732:[0,.69444,.11472,0,.59111],733:[0,.69444,.11472,0,.59111],915:[0,.68611,.12903,0,.69777],916:[0,.68611,0,0,.94444],920:[0,.68611,.09062,0,.88555],923:[0,.68611,0,0,.80666],926:[0,.68611,.15092,0,.76777],928:[0,.68611,.17208,0,.8961],931:[0,.68611,.11431,0,.82666],933:[0,.68611,.10778,0,.88555],934:[0,.68611,.05632,0,.82666],936:[0,.68611,.10778,0,.88555],937:[0,.68611,.0992,0,.82666],8211:[0,.44444,.09811,0,.59111],8212:[0,.44444,.09811,0,1.18221],8216:[0,.69444,.12945,0,.35555],8217:[0,.69444,.12945,0,.35555],8220:[0,.69444,.16772,0,.62055],8221:[0,.69444,.07939,0,.62055]},"Main-Italic":{32:[0,0,0,0,.25],33:[0,.69444,.12417,0,.30667],34:[0,.69444,.06961,0,.51444],35:[.19444,.69444,.06616,0,.81777],37:[.05556,.75,.13639,0,.81777],38:[0,.69444,.09694,0,.76666],39:[0,.69444,.12417,0,.30667],40:[.25,.75,.16194,0,.40889],41:[.25,.75,.03694,0,.40889],42:[0,.75,.14917,0,.51111],43:[.05667,.56167,.03694,0,.76666],44:[.19444,.10556,0,0,.30667],45:[0,.43056,.02826,0,.35778],46:[0,.10556,0,0,.30667],47:[.25,.75,.16194,0,.51111],48:[0,.64444,.13556,0,.51111],49:[0,.64444,.13556,0,.51111],50:[0,.64444,.13556,0,.51111],51:[0,.64444,.13556,0,.51111],52:[.19444,.64444,.13556,0,.51111],53:[0,.64444,.13556,0,.51111],54:[0,.64444,.13556,0,.51111],55:[.19444,.64444,.13556,0,.51111],56:[0,.64444,.13556,0,.51111],57:[0,.64444,.13556,0,.51111],58:[0,.43056,.0582,0,.30667],59:[.19444,.43056,.0582,0,.30667],61:[-.13313,.36687,.06616,0,.76666],63:[0,.69444,.1225,0,.51111],64:[0,.69444,.09597,0,.76666],65:[0,.68333,0,0,.74333],66:[0,.68333,.10257,0,.70389],67:[0,.68333,.14528,0,.71555],68:[0,.68333,.09403,0,.755],69:[0,.68333,.12028,0,.67833],70:[0,.68333,.13305,0,.65277],71:[0,.68333,.08722,0,.77361],72:[0,.68333,.16389,0,.74333],73:[0,.68333,.15806,0,.38555],74:[0,.68333,.14028,0,.525],75:[0,.68333,.14528,0,.76888],76:[0,.68333,0,0,.62722],77:[0,.68333,.16389,0,.89666],78:[0,.68333,.16389,0,.74333],79:[0,.68333,.09403,0,.76666],80:[0,.68333,.10257,0,.67833],81:[.19444,.68333,.09403,0,.76666],82:[0,.68333,.03868,0,.72944],83:[0,.68333,.11972,0,.56222],84:[0,.68333,.13305,0,.71555],85:[0,.68333,.16389,0,.74333],86:[0,.68333,.18361,0,.74333],87:[0,.68333,.18361,0,.99888],88:[0,.68333,.15806,0,.74333],89:[0,.68333,.19383,0,.74333],90:[0,.68333,.14528,0,.61333],91:[.25,.75,.1875,0,.30667],93:[.25,.75,.10528,0,.30667],94:[0,.69444,.06646,0,.51111],95:[.31,.12056,.09208,0,.51111],97:[0,.43056,.07671,0,.51111],98:[0,.69444,.06312,0,.46],99:[0,.43056,.05653,0,.46],100:[0,.69444,.10333,0,.51111],101:[0,.43056,.07514,0,.46],102:[.19444,.69444,.21194,0,.30667],103:[.19444,.43056,.08847,0,.46],104:[0,.69444,.07671,0,.51111],105:[0,.65536,.1019,0,.30667],106:[.19444,.65536,.14467,0,.30667],107:[0,.69444,.10764,0,.46],108:[0,.69444,.10333,0,.25555],109:[0,.43056,.07671,0,.81777],110:[0,.43056,.07671,0,.56222],111:[0,.43056,.06312,0,.51111],112:[.19444,.43056,.06312,0,.51111],113:[.19444,.43056,.08847,0,.46],114:[0,.43056,.10764,0,.42166],115:[0,.43056,.08208,0,.40889],116:[0,.61508,.09486,0,.33222],117:[0,.43056,.07671,0,.53666],118:[0,.43056,.10764,0,.46],119:[0,.43056,.10764,0,.66444],120:[0,.43056,.12042,0,.46389],121:[.19444,.43056,.08847,0,.48555],122:[0,.43056,.12292,0,.40889],126:[.35,.31786,.11585,0,.51111],160:[0,0,0,0,.25],168:[0,.66786,.10474,0,.51111],176:[0,.69444,0,0,.83129],184:[.17014,0,0,0,.46],198:[0,.68333,.12028,0,.88277],216:[.04861,.73194,.09403,0,.76666],223:[.19444,.69444,.10514,0,.53666],230:[0,.43056,.07514,0,.71555],248:[.09722,.52778,.09194,0,.51111],338:[0,.68333,.12028,0,.98499],339:[0,.43056,.07514,0,.71555],710:[0,.69444,.06646,0,.51111],711:[0,.62847,.08295,0,.51111],713:[0,.56167,.10333,0,.51111],714:[0,.69444,.09694,0,.51111],715:[0,.69444,0,0,.51111],728:[0,.69444,.10806,0,.51111],729:[0,.66786,.11752,0,.30667],730:[0,.69444,0,0,.83129],732:[0,.66786,.11585,0,.51111],733:[0,.69444,.1225,0,.51111],915:[0,.68333,.13305,0,.62722],916:[0,.68333,0,0,.81777],920:[0,.68333,.09403,0,.76666],923:[0,.68333,0,0,.69222],926:[0,.68333,.15294,0,.66444],928:[0,.68333,.16389,0,.74333],931:[0,.68333,.12028,0,.71555],933:[0,.68333,.11111,0,.76666],934:[0,.68333,.05986,0,.71555],936:[0,.68333,.11111,0,.76666],937:[0,.68333,.10257,0,.71555],8211:[0,.43056,.09208,0,.51111],8212:[0,.43056,.09208,0,1.02222],8216:[0,.69444,.12417,0,.30667],8217:[0,.69444,.12417,0,.30667],8220:[0,.69444,.1685,0,.51444],8221:[0,.69444,.06961,0,.51444],8463:[0,.68889,0,0,.54028]},"Main-Regular":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.27778],34:[0,.69444,0,0,.5],35:[.19444,.69444,0,0,.83334],36:[.05556,.75,0,0,.5],37:[.05556,.75,0,0,.83334],38:[0,.69444,0,0,.77778],39:[0,.69444,0,0,.27778],40:[.25,.75,0,0,.38889],41:[.25,.75,0,0,.38889],42:[0,.75,0,0,.5],43:[.08333,.58333,0,0,.77778],44:[.19444,.10556,0,0,.27778],45:[0,.43056,0,0,.33333],46:[0,.10556,0,0,.27778],47:[.25,.75,0,0,.5],48:[0,.64444,0,0,.5],49:[0,.64444,0,0,.5],50:[0,.64444,0,0,.5],51:[0,.64444,0,0,.5],52:[0,.64444,0,0,.5],53:[0,.64444,0,0,.5],54:[0,.64444,0,0,.5],55:[0,.64444,0,0,.5],56:[0,.64444,0,0,.5],57:[0,.64444,0,0,.5],58:[0,.43056,0,0,.27778],59:[.19444,.43056,0,0,.27778],60:[.0391,.5391,0,0,.77778],61:[-.13313,.36687,0,0,.77778],62:[.0391,.5391,0,0,.77778],63:[0,.69444,0,0,.47222],64:[0,.69444,0,0,.77778],65:[0,.68333,0,0,.75],66:[0,.68333,0,0,.70834],67:[0,.68333,0,0,.72222],68:[0,.68333,0,0,.76389],69:[0,.68333,0,0,.68056],70:[0,.68333,0,0,.65278],71:[0,.68333,0,0,.78472],72:[0,.68333,0,0,.75],73:[0,.68333,0,0,.36111],74:[0,.68333,0,0,.51389],75:[0,.68333,0,0,.77778],76:[0,.68333,0,0,.625],77:[0,.68333,0,0,.91667],78:[0,.68333,0,0,.75],79:[0,.68333,0,0,.77778],80:[0,.68333,0,0,.68056],81:[.19444,.68333,0,0,.77778],82:[0,.68333,0,0,.73611],83:[0,.68333,0,0,.55556],84:[0,.68333,0,0,.72222],85:[0,.68333,0,0,.75],86:[0,.68333,.01389,0,.75],87:[0,.68333,.01389,0,1.02778],88:[0,.68333,0,0,.75],89:[0,.68333,.025,0,.75],90:[0,.68333,0,0,.61111],91:[.25,.75,0,0,.27778],92:[.25,.75,0,0,.5],93:[.25,.75,0,0,.27778],94:[0,.69444,0,0,.5],95:[.31,.12056,.02778,0,.5],97:[0,.43056,0,0,.5],98:[0,.69444,0,0,.55556],99:[0,.43056,0,0,.44445],100:[0,.69444,0,0,.55556],101:[0,.43056,0,0,.44445],102:[0,.69444,.07778,0,.30556],103:[.19444,.43056,.01389,0,.5],104:[0,.69444,0,0,.55556],105:[0,.66786,0,0,.27778],106:[.19444,.66786,0,0,.30556],107:[0,.69444,0,0,.52778],108:[0,.69444,0,0,.27778],109:[0,.43056,0,0,.83334],110:[0,.43056,0,0,.55556],111:[0,.43056,0,0,.5],112:[.19444,.43056,0,0,.55556],113:[.19444,.43056,0,0,.52778],114:[0,.43056,0,0,.39167],115:[0,.43056,0,0,.39445],116:[0,.61508,0,0,.38889],117:[0,.43056,0,0,.55556],118:[0,.43056,.01389,0,.52778],119:[0,.43056,.01389,0,.72222],120:[0,.43056,0,0,.52778],121:[.19444,.43056,.01389,0,.52778],122:[0,.43056,0,0,.44445],123:[.25,.75,0,0,.5],124:[.25,.75,0,0,.27778],125:[.25,.75,0,0,.5],126:[.35,.31786,0,0,.5],160:[0,0,0,0,.25],163:[0,.69444,0,0,.76909],167:[.19444,.69444,0,0,.44445],168:[0,.66786,0,0,.5],172:[0,.43056,0,0,.66667],176:[0,.69444,0,0,.75],177:[.08333,.58333,0,0,.77778],182:[.19444,.69444,0,0,.61111],184:[.17014,0,0,0,.44445],198:[0,.68333,0,0,.90278],215:[.08333,.58333,0,0,.77778],216:[.04861,.73194,0,0,.77778],223:[0,.69444,0,0,.5],230:[0,.43056,0,0,.72222],247:[.08333,.58333,0,0,.77778],248:[.09722,.52778,0,0,.5],305:[0,.43056,0,0,.27778],338:[0,.68333,0,0,1.01389],339:[0,.43056,0,0,.77778],567:[.19444,.43056,0,0,.30556],710:[0,.69444,0,0,.5],711:[0,.62847,0,0,.5],713:[0,.56778,0,0,.5],714:[0,.69444,0,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,0,0,.5],729:[0,.66786,0,0,.27778],730:[0,.69444,0,0,.75],732:[0,.66786,0,0,.5],733:[0,.69444,0,0,.5],915:[0,.68333,0,0,.625],916:[0,.68333,0,0,.83334],920:[0,.68333,0,0,.77778],923:[0,.68333,0,0,.69445],926:[0,.68333,0,0,.66667],928:[0,.68333,0,0,.75],931:[0,.68333,0,0,.72222],933:[0,.68333,0,0,.77778],934:[0,.68333,0,0,.72222],936:[0,.68333,0,0,.77778],937:[0,.68333,0,0,.72222],8211:[0,.43056,.02778,0,.5],8212:[0,.43056,.02778,0,1],8216:[0,.69444,0,0,.27778],8217:[0,.69444,0,0,.27778],8220:[0,.69444,0,0,.5],8221:[0,.69444,0,0,.5],8224:[.19444,.69444,0,0,.44445],8225:[.19444,.69444,0,0,.44445],8230:[0,.123,0,0,1.172],8242:[0,.55556,0,0,.275],8407:[0,.71444,.15382,0,.5],8463:[0,.68889,0,0,.54028],8465:[0,.69444,0,0,.72222],8467:[0,.69444,0,.11111,.41667],8472:[.19444,.43056,0,.11111,.63646],8476:[0,.69444,0,0,.72222],8501:[0,.69444,0,0,.61111],8592:[-.13313,.36687,0,0,1],8593:[.19444,.69444,0,0,.5],8594:[-.13313,.36687,0,0,1],8595:[.19444,.69444,0,0,.5],8596:[-.13313,.36687,0,0,1],8597:[.25,.75,0,0,.5],8598:[.19444,.69444,0,0,1],8599:[.19444,.69444,0,0,1],8600:[.19444,.69444,0,0,1],8601:[.19444,.69444,0,0,1],8614:[.011,.511,0,0,1],8617:[.011,.511,0,0,1.126],8618:[.011,.511,0,0,1.126],8636:[-.13313,.36687,0,0,1],8637:[-.13313,.36687,0,0,1],8640:[-.13313,.36687,0,0,1],8641:[-.13313,.36687,0,0,1],8652:[.011,.671,0,0,1],8656:[-.13313,.36687,0,0,1],8657:[.19444,.69444,0,0,.61111],8658:[-.13313,.36687,0,0,1],8659:[.19444,.69444,0,0,.61111],8660:[-.13313,.36687,0,0,1],8661:[.25,.75,0,0,.61111],8704:[0,.69444,0,0,.55556],8706:[0,.69444,.05556,.08334,.5309],8707:[0,.69444,0,0,.55556],8709:[.05556,.75,0,0,.5],8711:[0,.68333,0,0,.83334],8712:[.0391,.5391,0,0,.66667],8715:[.0391,.5391,0,0,.66667],8722:[.08333,.58333,0,0,.77778],8723:[.08333,.58333,0,0,.77778],8725:[.25,.75,0,0,.5],8726:[.25,.75,0,0,.5],8727:[-.03472,.46528,0,0,.5],8728:[-.05555,.44445,0,0,.5],8729:[-.05555,.44445,0,0,.5],8730:[.2,.8,0,0,.83334],8733:[0,.43056,0,0,.77778],8734:[0,.43056,0,0,1],8736:[0,.69224,0,0,.72222],8739:[.25,.75,0,0,.27778],8741:[.25,.75,0,0,.5],8743:[0,.55556,0,0,.66667],8744:[0,.55556,0,0,.66667],8745:[0,.55556,0,0,.66667],8746:[0,.55556,0,0,.66667],8747:[.19444,.69444,.11111,0,.41667],8764:[-.13313,.36687,0,0,.77778],8768:[.19444,.69444,0,0,.27778],8771:[-.03625,.46375,0,0,.77778],8773:[-.022,.589,0,0,.778],8776:[-.01688,.48312,0,0,.77778],8781:[-.03625,.46375,0,0,.77778],8784:[-.133,.673,0,0,.778],8801:[-.03625,.46375,0,0,.77778],8804:[.13597,.63597,0,0,.77778],8805:[.13597,.63597,0,0,.77778],8810:[.0391,.5391,0,0,1],8811:[.0391,.5391,0,0,1],8826:[.0391,.5391,0,0,.77778],8827:[.0391,.5391,0,0,.77778],8834:[.0391,.5391,0,0,.77778],8835:[.0391,.5391,0,0,.77778],8838:[.13597,.63597,0,0,.77778],8839:[.13597,.63597,0,0,.77778],8846:[0,.55556,0,0,.66667],8849:[.13597,.63597,0,0,.77778],8850:[.13597,.63597,0,0,.77778],8851:[0,.55556,0,0,.66667],8852:[0,.55556,0,0,.66667],8853:[.08333,.58333,0,0,.77778],8854:[.08333,.58333,0,0,.77778],8855:[.08333,.58333,0,0,.77778],8856:[.08333,.58333,0,0,.77778],8857:[.08333,.58333,0,0,.77778],8866:[0,.69444,0,0,.61111],8867:[0,.69444,0,0,.61111],8868:[0,.69444,0,0,.77778],8869:[0,.69444,0,0,.77778],8872:[.249,.75,0,0,.867],8900:[-.05555,.44445,0,0,.5],8901:[-.05555,.44445,0,0,.27778],8902:[-.03472,.46528,0,0,.5],8904:[.005,.505,0,0,.9],8942:[.03,.903,0,0,.278],8943:[-.19,.313,0,0,1.172],8945:[-.1,.823,0,0,1.282],8968:[.25,.75,0,0,.44445],8969:[.25,.75,0,0,.44445],8970:[.25,.75,0,0,.44445],8971:[.25,.75,0,0,.44445],8994:[-.14236,.35764,0,0,1],8995:[-.14236,.35764,0,0,1],9136:[.244,.744,0,0,.412],9137:[.244,.745,0,0,.412],9651:[.19444,.69444,0,0,.88889],9657:[-.03472,.46528,0,0,.5],9661:[.19444,.69444,0,0,.88889],9667:[-.03472,.46528,0,0,.5],9711:[.19444,.69444,0,0,1],9824:[.12963,.69444,0,0,.77778],9825:[.12963,.69444,0,0,.77778],9826:[.12963,.69444,0,0,.77778],9827:[.12963,.69444,0,0,.77778],9837:[0,.75,0,0,.38889],9838:[.19444,.69444,0,0,.38889],9839:[.19444,.69444,0,0,.38889],10216:[.25,.75,0,0,.38889],10217:[.25,.75,0,0,.38889],10222:[.244,.744,0,0,.412],10223:[.244,.745,0,0,.412],10229:[.011,.511,0,0,1.609],10230:[.011,.511,0,0,1.638],10231:[.011,.511,0,0,1.859],10232:[.024,.525,0,0,1.609],10233:[.024,.525,0,0,1.638],10234:[.024,.525,0,0,1.858],10236:[.011,.511,0,0,1.638],10815:[0,.68333,0,0,.75],10927:[.13597,.63597,0,0,.77778],10928:[.13597,.63597,0,0,.77778],57376:[.19444,.69444,0,0,0]},"Math-BoldItalic":{32:[0,0,0,0,.25],48:[0,.44444,0,0,.575],49:[0,.44444,0,0,.575],50:[0,.44444,0,0,.575],51:[.19444,.44444,0,0,.575],52:[.19444,.44444,0,0,.575],53:[.19444,.44444,0,0,.575],54:[0,.64444,0,0,.575],55:[.19444,.44444,0,0,.575],56:[0,.64444,0,0,.575],57:[.19444,.44444,0,0,.575],65:[0,.68611,0,0,.86944],66:[0,.68611,.04835,0,.8664],67:[0,.68611,.06979,0,.81694],68:[0,.68611,.03194,0,.93812],69:[0,.68611,.05451,0,.81007],70:[0,.68611,.15972,0,.68889],71:[0,.68611,0,0,.88673],72:[0,.68611,.08229,0,.98229],73:[0,.68611,.07778,0,.51111],74:[0,.68611,.10069,0,.63125],75:[0,.68611,.06979,0,.97118],76:[0,.68611,0,0,.75555],77:[0,.68611,.11424,0,1.14201],78:[0,.68611,.11424,0,.95034],79:[0,.68611,.03194,0,.83666],80:[0,.68611,.15972,0,.72309],81:[.19444,.68611,0,0,.86861],82:[0,.68611,.00421,0,.87235],83:[0,.68611,.05382,0,.69271],84:[0,.68611,.15972,0,.63663],85:[0,.68611,.11424,0,.80027],86:[0,.68611,.25555,0,.67778],87:[0,.68611,.15972,0,1.09305],88:[0,.68611,.07778,0,.94722],89:[0,.68611,.25555,0,.67458],90:[0,.68611,.06979,0,.77257],97:[0,.44444,0,0,.63287],98:[0,.69444,0,0,.52083],99:[0,.44444,0,0,.51342],100:[0,.69444,0,0,.60972],101:[0,.44444,0,0,.55361],102:[.19444,.69444,.11042,0,.56806],103:[.19444,.44444,.03704,0,.5449],104:[0,.69444,0,0,.66759],105:[0,.69326,0,0,.4048],106:[.19444,.69326,.0622,0,.47083],107:[0,.69444,.01852,0,.6037],108:[0,.69444,.0088,0,.34815],109:[0,.44444,0,0,1.0324],110:[0,.44444,0,0,.71296],111:[0,.44444,0,0,.58472],112:[.19444,.44444,0,0,.60092],113:[.19444,.44444,.03704,0,.54213],114:[0,.44444,.03194,0,.5287],115:[0,.44444,0,0,.53125],116:[0,.63492,0,0,.41528],117:[0,.44444,0,0,.68102],118:[0,.44444,.03704,0,.56666],119:[0,.44444,.02778,0,.83148],120:[0,.44444,0,0,.65903],121:[.19444,.44444,.03704,0,.59028],122:[0,.44444,.04213,0,.55509],160:[0,0,0,0,.25],915:[0,.68611,.15972,0,.65694],916:[0,.68611,0,0,.95833],920:[0,.68611,.03194,0,.86722],923:[0,.68611,0,0,.80555],926:[0,.68611,.07458,0,.84125],928:[0,.68611,.08229,0,.98229],931:[0,.68611,.05451,0,.88507],933:[0,.68611,.15972,0,.67083],934:[0,.68611,0,0,.76666],936:[0,.68611,.11653,0,.71402],937:[0,.68611,.04835,0,.8789],945:[0,.44444,0,0,.76064],946:[.19444,.69444,.03403,0,.65972],947:[.19444,.44444,.06389,0,.59003],948:[0,.69444,.03819,0,.52222],949:[0,.44444,0,0,.52882],950:[.19444,.69444,.06215,0,.50833],951:[.19444,.44444,.03704,0,.6],952:[0,.69444,.03194,0,.5618],953:[0,.44444,0,0,.41204],954:[0,.44444,0,0,.66759],955:[0,.69444,0,0,.67083],956:[.19444,.44444,0,0,.70787],957:[0,.44444,.06898,0,.57685],958:[.19444,.69444,.03021,0,.50833],959:[0,.44444,0,0,.58472],960:[0,.44444,.03704,0,.68241],961:[.19444,.44444,0,0,.6118],962:[.09722,.44444,.07917,0,.42361],963:[0,.44444,.03704,0,.68588],964:[0,.44444,.13472,0,.52083],965:[0,.44444,.03704,0,.63055],966:[.19444,.44444,0,0,.74722],967:[.19444,.44444,0,0,.71805],968:[.19444,.69444,.03704,0,.75833],969:[0,.44444,.03704,0,.71782],977:[0,.69444,0,0,.69155],981:[.19444,.69444,0,0,.7125],982:[0,.44444,.03194,0,.975],1009:[.19444,.44444,0,0,.6118],1013:[0,.44444,0,0,.48333],57649:[0,.44444,0,0,.39352],57911:[.19444,.44444,0,0,.43889]},"Math-Italic":{32:[0,0,0,0,.25],48:[0,.43056,0,0,.5],49:[0,.43056,0,0,.5],50:[0,.43056,0,0,.5],51:[.19444,.43056,0,0,.5],52:[.19444,.43056,0,0,.5],53:[.19444,.43056,0,0,.5],54:[0,.64444,0,0,.5],55:[.19444,.43056,0,0,.5],56:[0,.64444,0,0,.5],57:[.19444,.43056,0,0,.5],65:[0,.68333,0,.13889,.75],66:[0,.68333,.05017,.08334,.75851],67:[0,.68333,.07153,.08334,.71472],68:[0,.68333,.02778,.05556,.82792],69:[0,.68333,.05764,.08334,.7382],70:[0,.68333,.13889,.08334,.64306],71:[0,.68333,0,.08334,.78625],72:[0,.68333,.08125,.05556,.83125],73:[0,.68333,.07847,.11111,.43958],74:[0,.68333,.09618,.16667,.55451],75:[0,.68333,.07153,.05556,.84931],76:[0,.68333,0,.02778,.68056],77:[0,.68333,.10903,.08334,.97014],78:[0,.68333,.10903,.08334,.80347],79:[0,.68333,.02778,.08334,.76278],80:[0,.68333,.13889,.08334,.64201],81:[.19444,.68333,0,.08334,.79056],82:[0,.68333,.00773,.08334,.75929],83:[0,.68333,.05764,.08334,.6132],84:[0,.68333,.13889,.08334,.58438],85:[0,.68333,.10903,.02778,.68278],86:[0,.68333,.22222,0,.58333],87:[0,.68333,.13889,0,.94445],88:[0,.68333,.07847,.08334,.82847],89:[0,.68333,.22222,0,.58056],90:[0,.68333,.07153,.08334,.68264],97:[0,.43056,0,0,.52859],98:[0,.69444,0,0,.42917],99:[0,.43056,0,.05556,.43276],100:[0,.69444,0,.16667,.52049],101:[0,.43056,0,.05556,.46563],102:[.19444,.69444,.10764,.16667,.48959],103:[.19444,.43056,.03588,.02778,.47697],104:[0,.69444,0,0,.57616],105:[0,.65952,0,0,.34451],106:[.19444,.65952,.05724,0,.41181],107:[0,.69444,.03148,0,.5206],108:[0,.69444,.01968,.08334,.29838],109:[0,.43056,0,0,.87801],110:[0,.43056,0,0,.60023],111:[0,.43056,0,.05556,.48472],112:[.19444,.43056,0,.08334,.50313],113:[.19444,.43056,.03588,.08334,.44641],114:[0,.43056,.02778,.05556,.45116],115:[0,.43056,0,.05556,.46875],116:[0,.61508,0,.08334,.36111],117:[0,.43056,0,.02778,.57246],118:[0,.43056,.03588,.02778,.48472],119:[0,.43056,.02691,.08334,.71592],120:[0,.43056,0,.02778,.57153],121:[.19444,.43056,.03588,.05556,.49028],122:[0,.43056,.04398,.05556,.46505],160:[0,0,0,0,.25],915:[0,.68333,.13889,.08334,.61528],916:[0,.68333,0,.16667,.83334],920:[0,.68333,.02778,.08334,.76278],923:[0,.68333,0,.16667,.69445],926:[0,.68333,.07569,.08334,.74236],928:[0,.68333,.08125,.05556,.83125],931:[0,.68333,.05764,.08334,.77986],933:[0,.68333,.13889,.05556,.58333],934:[0,.68333,0,.08334,.66667],936:[0,.68333,.11,.05556,.61222],937:[0,.68333,.05017,.08334,.7724],945:[0,.43056,.0037,.02778,.6397],946:[.19444,.69444,.05278,.08334,.56563],947:[.19444,.43056,.05556,0,.51773],948:[0,.69444,.03785,.05556,.44444],949:[0,.43056,0,.08334,.46632],950:[.19444,.69444,.07378,.08334,.4375],951:[.19444,.43056,.03588,.05556,.49653],952:[0,.69444,.02778,.08334,.46944],953:[0,.43056,0,.05556,.35394],954:[0,.43056,0,0,.57616],955:[0,.69444,0,0,.58334],956:[.19444,.43056,0,.02778,.60255],957:[0,.43056,.06366,.02778,.49398],958:[.19444,.69444,.04601,.11111,.4375],959:[0,.43056,0,.05556,.48472],960:[0,.43056,.03588,0,.57003],961:[.19444,.43056,0,.08334,.51702],962:[.09722,.43056,.07986,.08334,.36285],963:[0,.43056,.03588,0,.57141],964:[0,.43056,.1132,.02778,.43715],965:[0,.43056,.03588,.02778,.54028],966:[.19444,.43056,0,.08334,.65417],967:[.19444,.43056,0,.05556,.62569],968:[.19444,.69444,.03588,.11111,.65139],969:[0,.43056,.03588,0,.62245],977:[0,.69444,0,.08334,.59144],981:[.19444,.69444,0,.08334,.59583],982:[0,.43056,.02778,0,.82813],1009:[.19444,.43056,0,.08334,.51702],1013:[0,.43056,0,.05556,.4059],57649:[0,.43056,0,.02778,.32246],57911:[.19444,.43056,0,.08334,.38403]},"SansSerif-Bold":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.36667],34:[0,.69444,0,0,.55834],35:[.19444,.69444,0,0,.91667],36:[.05556,.75,0,0,.55],37:[.05556,.75,0,0,1.02912],38:[0,.69444,0,0,.83056],39:[0,.69444,0,0,.30556],40:[.25,.75,0,0,.42778],41:[.25,.75,0,0,.42778],42:[0,.75,0,0,.55],43:[.11667,.61667,0,0,.85556],44:[.10556,.13056,0,0,.30556],45:[0,.45833,0,0,.36667],46:[0,.13056,0,0,.30556],47:[.25,.75,0,0,.55],48:[0,.69444,0,0,.55],49:[0,.69444,0,0,.55],50:[0,.69444,0,0,.55],51:[0,.69444,0,0,.55],52:[0,.69444,0,0,.55],53:[0,.69444,0,0,.55],54:[0,.69444,0,0,.55],55:[0,.69444,0,0,.55],56:[0,.69444,0,0,.55],57:[0,.69444,0,0,.55],58:[0,.45833,0,0,.30556],59:[.10556,.45833,0,0,.30556],61:[-.09375,.40625,0,0,.85556],63:[0,.69444,0,0,.51945],64:[0,.69444,0,0,.73334],65:[0,.69444,0,0,.73334],66:[0,.69444,0,0,.73334],67:[0,.69444,0,0,.70278],68:[0,.69444,0,0,.79445],69:[0,.69444,0,0,.64167],70:[0,.69444,0,0,.61111],71:[0,.69444,0,0,.73334],72:[0,.69444,0,0,.79445],73:[0,.69444,0,0,.33056],74:[0,.69444,0,0,.51945],75:[0,.69444,0,0,.76389],76:[0,.69444,0,0,.58056],77:[0,.69444,0,0,.97778],78:[0,.69444,0,0,.79445],79:[0,.69444,0,0,.79445],80:[0,.69444,0,0,.70278],81:[.10556,.69444,0,0,.79445],82:[0,.69444,0,0,.70278],83:[0,.69444,0,0,.61111],84:[0,.69444,0,0,.73334],85:[0,.69444,0,0,.76389],86:[0,.69444,.01528,0,.73334],87:[0,.69444,.01528,0,1.03889],88:[0,.69444,0,0,.73334],89:[0,.69444,.0275,0,.73334],90:[0,.69444,0,0,.67223],91:[.25,.75,0,0,.34306],93:[.25,.75,0,0,.34306],94:[0,.69444,0,0,.55],95:[.35,.10833,.03056,0,.55],97:[0,.45833,0,0,.525],98:[0,.69444,0,0,.56111],99:[0,.45833,0,0,.48889],100:[0,.69444,0,0,.56111],101:[0,.45833,0,0,.51111],102:[0,.69444,.07639,0,.33611],103:[.19444,.45833,.01528,0,.55],104:[0,.69444,0,0,.56111],105:[0,.69444,0,0,.25556],106:[.19444,.69444,0,0,.28611],107:[0,.69444,0,0,.53056],108:[0,.69444,0,0,.25556],109:[0,.45833,0,0,.86667],110:[0,.45833,0,0,.56111],111:[0,.45833,0,0,.55],112:[.19444,.45833,0,0,.56111],113:[.19444,.45833,0,0,.56111],114:[0,.45833,.01528,0,.37222],115:[0,.45833,0,0,.42167],116:[0,.58929,0,0,.40417],117:[0,.45833,0,0,.56111],118:[0,.45833,.01528,0,.5],119:[0,.45833,.01528,0,.74445],120:[0,.45833,0,0,.5],121:[.19444,.45833,.01528,0,.5],122:[0,.45833,0,0,.47639],126:[.35,.34444,0,0,.55],160:[0,0,0,0,.25],168:[0,.69444,0,0,.55],176:[0,.69444,0,0,.73334],180:[0,.69444,0,0,.55],184:[.17014,0,0,0,.48889],305:[0,.45833,0,0,.25556],567:[.19444,.45833,0,0,.28611],710:[0,.69444,0,0,.55],711:[0,.63542,0,0,.55],713:[0,.63778,0,0,.55],728:[0,.69444,0,0,.55],729:[0,.69444,0,0,.30556],730:[0,.69444,0,0,.73334],732:[0,.69444,0,0,.55],733:[0,.69444,0,0,.55],915:[0,.69444,0,0,.58056],916:[0,.69444,0,0,.91667],920:[0,.69444,0,0,.85556],923:[0,.69444,0,0,.67223],926:[0,.69444,0,0,.73334],928:[0,.69444,0,0,.79445],931:[0,.69444,0,0,.79445],933:[0,.69444,0,0,.85556],934:[0,.69444,0,0,.79445],936:[0,.69444,0,0,.85556],937:[0,.69444,0,0,.79445],8211:[0,.45833,.03056,0,.55],8212:[0,.45833,.03056,0,1.10001],8216:[0,.69444,0,0,.30556],8217:[0,.69444,0,0,.30556],8220:[0,.69444,0,0,.55834],8221:[0,.69444,0,0,.55834]},"SansSerif-Italic":{32:[0,0,0,0,.25],33:[0,.69444,.05733,0,.31945],34:[0,.69444,.00316,0,.5],35:[.19444,.69444,.05087,0,.83334],36:[.05556,.75,.11156,0,.5],37:[.05556,.75,.03126,0,.83334],38:[0,.69444,.03058,0,.75834],39:[0,.69444,.07816,0,.27778],40:[.25,.75,.13164,0,.38889],41:[.25,.75,.02536,0,.38889],42:[0,.75,.11775,0,.5],43:[.08333,.58333,.02536,0,.77778],44:[.125,.08333,0,0,.27778],45:[0,.44444,.01946,0,.33333],46:[0,.08333,0,0,.27778],47:[.25,.75,.13164,0,.5],48:[0,.65556,.11156,0,.5],49:[0,.65556,.11156,0,.5],50:[0,.65556,.11156,0,.5],51:[0,.65556,.11156,0,.5],52:[0,.65556,.11156,0,.5],53:[0,.65556,.11156,0,.5],54:[0,.65556,.11156,0,.5],55:[0,.65556,.11156,0,.5],56:[0,.65556,.11156,0,.5],57:[0,.65556,.11156,0,.5],58:[0,.44444,.02502,0,.27778],59:[.125,.44444,.02502,0,.27778],61:[-.13,.37,.05087,0,.77778],63:[0,.69444,.11809,0,.47222],64:[0,.69444,.07555,0,.66667],65:[0,.69444,0,0,.66667],66:[0,.69444,.08293,0,.66667],67:[0,.69444,.11983,0,.63889],68:[0,.69444,.07555,0,.72223],69:[0,.69444,.11983,0,.59722],70:[0,.69444,.13372,0,.56945],71:[0,.69444,.11983,0,.66667],72:[0,.69444,.08094,0,.70834],73:[0,.69444,.13372,0,.27778],74:[0,.69444,.08094,0,.47222],75:[0,.69444,.11983,0,.69445],76:[0,.69444,0,0,.54167],77:[0,.69444,.08094,0,.875],78:[0,.69444,.08094,0,.70834],79:[0,.69444,.07555,0,.73611],80:[0,.69444,.08293,0,.63889],81:[.125,.69444,.07555,0,.73611],82:[0,.69444,.08293,0,.64584],83:[0,.69444,.09205,0,.55556],84:[0,.69444,.13372,0,.68056],85:[0,.69444,.08094,0,.6875],86:[0,.69444,.1615,0,.66667],87:[0,.69444,.1615,0,.94445],88:[0,.69444,.13372,0,.66667],89:[0,.69444,.17261,0,.66667],90:[0,.69444,.11983,0,.61111],91:[.25,.75,.15942,0,.28889],93:[.25,.75,.08719,0,.28889],94:[0,.69444,.0799,0,.5],95:[.35,.09444,.08616,0,.5],97:[0,.44444,.00981,0,.48056],98:[0,.69444,.03057,0,.51667],99:[0,.44444,.08336,0,.44445],100:[0,.69444,.09483,0,.51667],101:[0,.44444,.06778,0,.44445],102:[0,.69444,.21705,0,.30556],103:[.19444,.44444,.10836,0,.5],104:[0,.69444,.01778,0,.51667],105:[0,.67937,.09718,0,.23889],106:[.19444,.67937,.09162,0,.26667],107:[0,.69444,.08336,0,.48889],108:[0,.69444,.09483,0,.23889],109:[0,.44444,.01778,0,.79445],110:[0,.44444,.01778,0,.51667],111:[0,.44444,.06613,0,.5],112:[.19444,.44444,.0389,0,.51667],113:[.19444,.44444,.04169,0,.51667],114:[0,.44444,.10836,0,.34167],115:[0,.44444,.0778,0,.38333],116:[0,.57143,.07225,0,.36111],117:[0,.44444,.04169,0,.51667],118:[0,.44444,.10836,0,.46111],119:[0,.44444,.10836,0,.68334],120:[0,.44444,.09169,0,.46111],121:[.19444,.44444,.10836,0,.46111],122:[0,.44444,.08752,0,.43472],126:[.35,.32659,.08826,0,.5],160:[0,0,0,0,.25],168:[0,.67937,.06385,0,.5],176:[0,.69444,0,0,.73752],184:[.17014,0,0,0,.44445],305:[0,.44444,.04169,0,.23889],567:[.19444,.44444,.04169,0,.26667],710:[0,.69444,.0799,0,.5],711:[0,.63194,.08432,0,.5],713:[0,.60889,.08776,0,.5],714:[0,.69444,.09205,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,.09483,0,.5],729:[0,.67937,.07774,0,.27778],730:[0,.69444,0,0,.73752],732:[0,.67659,.08826,0,.5],733:[0,.69444,.09205,0,.5],915:[0,.69444,.13372,0,.54167],916:[0,.69444,0,0,.83334],920:[0,.69444,.07555,0,.77778],923:[0,.69444,0,0,.61111],926:[0,.69444,.12816,0,.66667],928:[0,.69444,.08094,0,.70834],931:[0,.69444,.11983,0,.72222],933:[0,.69444,.09031,0,.77778],934:[0,.69444,.04603,0,.72222],936:[0,.69444,.09031,0,.77778],937:[0,.69444,.08293,0,.72222],8211:[0,.44444,.08616,0,.5],8212:[0,.44444,.08616,0,1],8216:[0,.69444,.07816,0,.27778],8217:[0,.69444,.07816,0,.27778],8220:[0,.69444,.14205,0,.5],8221:[0,.69444,.00316,0,.5]},"SansSerif-Regular":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.31945],34:[0,.69444,0,0,.5],35:[.19444,.69444,0,0,.83334],36:[.05556,.75,0,0,.5],37:[.05556,.75,0,0,.83334],38:[0,.69444,0,0,.75834],39:[0,.69444,0,0,.27778],40:[.25,.75,0,0,.38889],41:[.25,.75,0,0,.38889],42:[0,.75,0,0,.5],43:[.08333,.58333,0,0,.77778],44:[.125,.08333,0,0,.27778],45:[0,.44444,0,0,.33333],46:[0,.08333,0,0,.27778],47:[.25,.75,0,0,.5],48:[0,.65556,0,0,.5],49:[0,.65556,0,0,.5],50:[0,.65556,0,0,.5],51:[0,.65556,0,0,.5],52:[0,.65556,0,0,.5],53:[0,.65556,0,0,.5],54:[0,.65556,0,0,.5],55:[0,.65556,0,0,.5],56:[0,.65556,0,0,.5],57:[0,.65556,0,0,.5],58:[0,.44444,0,0,.27778],59:[.125,.44444,0,0,.27778],61:[-.13,.37,0,0,.77778],63:[0,.69444,0,0,.47222],64:[0,.69444,0,0,.66667],65:[0,.69444,0,0,.66667],66:[0,.69444,0,0,.66667],67:[0,.69444,0,0,.63889],68:[0,.69444,0,0,.72223],69:[0,.69444,0,0,.59722],70:[0,.69444,0,0,.56945],71:[0,.69444,0,0,.66667],72:[0,.69444,0,0,.70834],73:[0,.69444,0,0,.27778],74:[0,.69444,0,0,.47222],75:[0,.69444,0,0,.69445],76:[0,.69444,0,0,.54167],77:[0,.69444,0,0,.875],78:[0,.69444,0,0,.70834],79:[0,.69444,0,0,.73611],80:[0,.69444,0,0,.63889],81:[.125,.69444,0,0,.73611],82:[0,.69444,0,0,.64584],83:[0,.69444,0,0,.55556],84:[0,.69444,0,0,.68056],85:[0,.69444,0,0,.6875],86:[0,.69444,.01389,0,.66667],87:[0,.69444,.01389,0,.94445],88:[0,.69444,0,0,.66667],89:[0,.69444,.025,0,.66667],90:[0,.69444,0,0,.61111],91:[.25,.75,0,0,.28889],93:[.25,.75,0,0,.28889],94:[0,.69444,0,0,.5],95:[.35,.09444,.02778,0,.5],97:[0,.44444,0,0,.48056],98:[0,.69444,0,0,.51667],99:[0,.44444,0,0,.44445],100:[0,.69444,0,0,.51667],101:[0,.44444,0,0,.44445],102:[0,.69444,.06944,0,.30556],103:[.19444,.44444,.01389,0,.5],104:[0,.69444,0,0,.51667],105:[0,.67937,0,0,.23889],106:[.19444,.67937,0,0,.26667],107:[0,.69444,0,0,.48889],108:[0,.69444,0,0,.23889],109:[0,.44444,0,0,.79445],110:[0,.44444,0,0,.51667],111:[0,.44444,0,0,.5],112:[.19444,.44444,0,0,.51667],113:[.19444,.44444,0,0,.51667],114:[0,.44444,.01389,0,.34167],115:[0,.44444,0,0,.38333],116:[0,.57143,0,0,.36111],117:[0,.44444,0,0,.51667],118:[0,.44444,.01389,0,.46111],119:[0,.44444,.01389,0,.68334],120:[0,.44444,0,0,.46111],121:[.19444,.44444,.01389,0,.46111],122:[0,.44444,0,0,.43472],126:[.35,.32659,0,0,.5],160:[0,0,0,0,.25],168:[0,.67937,0,0,.5],176:[0,.69444,0,0,.66667],184:[.17014,0,0,0,.44445],305:[0,.44444,0,0,.23889],567:[.19444,.44444,0,0,.26667],710:[0,.69444,0,0,.5],711:[0,.63194,0,0,.5],713:[0,.60889,0,0,.5],714:[0,.69444,0,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,0,0,.5],729:[0,.67937,0,0,.27778],730:[0,.69444,0,0,.66667],732:[0,.67659,0,0,.5],733:[0,.69444,0,0,.5],915:[0,.69444,0,0,.54167],916:[0,.69444,0,0,.83334],920:[0,.69444,0,0,.77778],923:[0,.69444,0,0,.61111],926:[0,.69444,0,0,.66667],928:[0,.69444,0,0,.70834],931:[0,.69444,0,0,.72222],933:[0,.69444,0,0,.77778],934:[0,.69444,0,0,.72222],936:[0,.69444,0,0,.77778],937:[0,.69444,0,0,.72222],8211:[0,.44444,.02778,0,.5],8212:[0,.44444,.02778,0,1],8216:[0,.69444,0,0,.27778],8217:[0,.69444,0,0,.27778],8220:[0,.69444,0,0,.5],8221:[0,.69444,0,0,.5]},"Script-Regular":{32:[0,0,0,0,.25],65:[0,.7,.22925,0,.80253],66:[0,.7,.04087,0,.90757],67:[0,.7,.1689,0,.66619],68:[0,.7,.09371,0,.77443],69:[0,.7,.18583,0,.56162],70:[0,.7,.13634,0,.89544],71:[0,.7,.17322,0,.60961],72:[0,.7,.29694,0,.96919],73:[0,.7,.19189,0,.80907],74:[.27778,.7,.19189,0,1.05159],75:[0,.7,.31259,0,.91364],76:[0,.7,.19189,0,.87373],77:[0,.7,.15981,0,1.08031],78:[0,.7,.3525,0,.9015],79:[0,.7,.08078,0,.73787],80:[0,.7,.08078,0,1.01262],81:[0,.7,.03305,0,.88282],82:[0,.7,.06259,0,.85],83:[0,.7,.19189,0,.86767],84:[0,.7,.29087,0,.74697],85:[0,.7,.25815,0,.79996],86:[0,.7,.27523,0,.62204],87:[0,.7,.27523,0,.80532],88:[0,.7,.26006,0,.94445],89:[0,.7,.2939,0,.70961],90:[0,.7,.24037,0,.8212],160:[0,0,0,0,.25]},"Size1-Regular":{32:[0,0,0,0,.25],40:[.35001,.85,0,0,.45834],41:[.35001,.85,0,0,.45834],47:[.35001,.85,0,0,.57778],91:[.35001,.85,0,0,.41667],92:[.35001,.85,0,0,.57778],93:[.35001,.85,0,0,.41667],123:[.35001,.85,0,0,.58334],125:[.35001,.85,0,0,.58334],160:[0,0,0,0,.25],710:[0,.72222,0,0,.55556],732:[0,.72222,0,0,.55556],770:[0,.72222,0,0,.55556],771:[0,.72222,0,0,.55556],8214:[-99e-5,.601,0,0,.77778],8593:[1e-5,.6,0,0,.66667],8595:[1e-5,.6,0,0,.66667],8657:[1e-5,.6,0,0,.77778],8659:[1e-5,.6,0,0,.77778],8719:[.25001,.75,0,0,.94445],8720:[.25001,.75,0,0,.94445],8721:[.25001,.75,0,0,1.05556],8730:[.35001,.85,0,0,1],8739:[-.00599,.606,0,0,.33333],8741:[-.00599,.606,0,0,.55556],8747:[.30612,.805,.19445,0,.47222],8748:[.306,.805,.19445,0,.47222],8749:[.306,.805,.19445,0,.47222],8750:[.30612,.805,.19445,0,.47222],8896:[.25001,.75,0,0,.83334],8897:[.25001,.75,0,0,.83334],8898:[.25001,.75,0,0,.83334],8899:[.25001,.75,0,0,.83334],8968:[.35001,.85,0,0,.47222],8969:[.35001,.85,0,0,.47222],8970:[.35001,.85,0,0,.47222],8971:[.35001,.85,0,0,.47222],9168:[-99e-5,.601,0,0,.66667],10216:[.35001,.85,0,0,.47222],10217:[.35001,.85,0,0,.47222],10752:[.25001,.75,0,0,1.11111],10753:[.25001,.75,0,0,1.11111],10754:[.25001,.75,0,0,1.11111],10756:[.25001,.75,0,0,.83334],10758:[.25001,.75,0,0,.83334]},"Size2-Regular":{32:[0,0,0,0,.25],40:[.65002,1.15,0,0,.59722],41:[.65002,1.15,0,0,.59722],47:[.65002,1.15,0,0,.81111],91:[.65002,1.15,0,0,.47222],92:[.65002,1.15,0,0,.81111],93:[.65002,1.15,0,0,.47222],123:[.65002,1.15,0,0,.66667],125:[.65002,1.15,0,0,.66667],160:[0,0,0,0,.25],710:[0,.75,0,0,1],732:[0,.75,0,0,1],770:[0,.75,0,0,1],771:[0,.75,0,0,1],8719:[.55001,1.05,0,0,1.27778],8720:[.55001,1.05,0,0,1.27778],8721:[.55001,1.05,0,0,1.44445],8730:[.65002,1.15,0,0,1],8747:[.86225,1.36,.44445,0,.55556],8748:[.862,1.36,.44445,0,.55556],8749:[.862,1.36,.44445,0,.55556],8750:[.86225,1.36,.44445,0,.55556],8896:[.55001,1.05,0,0,1.11111],8897:[.55001,1.05,0,0,1.11111],8898:[.55001,1.05,0,0,1.11111],8899:[.55001,1.05,0,0,1.11111],8968:[.65002,1.15,0,0,.52778],8969:[.65002,1.15,0,0,.52778],8970:[.65002,1.15,0,0,.52778],8971:[.65002,1.15,0,0,.52778],10216:[.65002,1.15,0,0,.61111],10217:[.65002,1.15,0,0,.61111],10752:[.55001,1.05,0,0,1.51112],10753:[.55001,1.05,0,0,1.51112],10754:[.55001,1.05,0,0,1.51112],10756:[.55001,1.05,0,0,1.11111],10758:[.55001,1.05,0,0,1.11111]},"Size3-Regular":{32:[0,0,0,0,.25],40:[.95003,1.45,0,0,.73611],41:[.95003,1.45,0,0,.73611],47:[.95003,1.45,0,0,1.04445],91:[.95003,1.45,0,0,.52778],92:[.95003,1.45,0,0,1.04445],93:[.95003,1.45,0,0,.52778],123:[.95003,1.45,0,0,.75],125:[.95003,1.45,0,0,.75],160:[0,0,0,0,.25],710:[0,.75,0,0,1.44445],732:[0,.75,0,0,1.44445],770:[0,.75,0,0,1.44445],771:[0,.75,0,0,1.44445],8730:[.95003,1.45,0,0,1],8968:[.95003,1.45,0,0,.58334],8969:[.95003,1.45,0,0,.58334],8970:[.95003,1.45,0,0,.58334],8971:[.95003,1.45,0,0,.58334],10216:[.95003,1.45,0,0,.75],10217:[.95003,1.45,0,0,.75]},"Size4-Regular":{32:[0,0,0,0,.25],40:[1.25003,1.75,0,0,.79167],41:[1.25003,1.75,0,0,.79167],47:[1.25003,1.75,0,0,1.27778],91:[1.25003,1.75,0,0,.58334],92:[1.25003,1.75,0,0,1.27778],93:[1.25003,1.75,0,0,.58334],123:[1.25003,1.75,0,0,.80556],125:[1.25003,1.75,0,0,.80556],160:[0,0,0,0,.25],710:[0,.825,0,0,1.8889],732:[0,.825,0,0,1.8889],770:[0,.825,0,0,1.8889],771:[0,.825,0,0,1.8889],8730:[1.25003,1.75,0,0,1],8968:[1.25003,1.75,0,0,.63889],8969:[1.25003,1.75,0,0,.63889],8970:[1.25003,1.75,0,0,.63889],8971:[1.25003,1.75,0,0,.63889],9115:[.64502,1.155,0,0,.875],9116:[1e-5,.6,0,0,.875],9117:[.64502,1.155,0,0,.875],9118:[.64502,1.155,0,0,.875],9119:[1e-5,.6,0,0,.875],9120:[.64502,1.155,0,0,.875],9121:[.64502,1.155,0,0,.66667],9122:[-99e-5,.601,0,0,.66667],9123:[.64502,1.155,0,0,.66667],9124:[.64502,1.155,0,0,.66667],9125:[-99e-5,.601,0,0,.66667],9126:[.64502,1.155,0,0,.66667],9127:[1e-5,.9,0,0,.88889],9128:[.65002,1.15,0,0,.88889],9129:[.90001,0,0,0,.88889],9130:[0,.3,0,0,.88889],9131:[1e-5,.9,0,0,.88889],9132:[.65002,1.15,0,0,.88889],9133:[.90001,0,0,0,.88889],9143:[.88502,.915,0,0,1.05556],10216:[1.25003,1.75,0,0,.80556],10217:[1.25003,1.75,0,0,.80556],57344:[-.00499,.605,0,0,1.05556],57345:[-.00499,.605,0,0,1.05556],57680:[0,.12,0,0,.45],57681:[0,.12,0,0,.45],57682:[0,.12,0,0,.45],57683:[0,.12,0,0,.45]},"Typewriter-Regular":{32:[0,0,0,0,.525],33:[0,.61111,0,0,.525],34:[0,.61111,0,0,.525],35:[0,.61111,0,0,.525],36:[.08333,.69444,0,0,.525],37:[.08333,.69444,0,0,.525],38:[0,.61111,0,0,.525],39:[0,.61111,0,0,.525],40:[.08333,.69444,0,0,.525],41:[.08333,.69444,0,0,.525],42:[0,.52083,0,0,.525],43:[-.08056,.53055,0,0,.525],44:[.13889,.125,0,0,.525],45:[-.08056,.53055,0,0,.525],46:[0,.125,0,0,.525],47:[.08333,.69444,0,0,.525],48:[0,.61111,0,0,.525],49:[0,.61111,0,0,.525],50:[0,.61111,0,0,.525],51:[0,.61111,0,0,.525],52:[0,.61111,0,0,.525],53:[0,.61111,0,0,.525],54:[0,.61111,0,0,.525],55:[0,.61111,0,0,.525],56:[0,.61111,0,0,.525],57:[0,.61111,0,0,.525],58:[0,.43056,0,0,.525],59:[.13889,.43056,0,0,.525],60:[-.05556,.55556,0,0,.525],61:[-.19549,.41562,0,0,.525],62:[-.05556,.55556,0,0,.525],63:[0,.61111,0,0,.525],64:[0,.61111,0,0,.525],65:[0,.61111,0,0,.525],66:[0,.61111,0,0,.525],67:[0,.61111,0,0,.525],68:[0,.61111,0,0,.525],69:[0,.61111,0,0,.525],70:[0,.61111,0,0,.525],71:[0,.61111,0,0,.525],72:[0,.61111,0,0,.525],73:[0,.61111,0,0,.525],74:[0,.61111,0,0,.525],75:[0,.61111,0,0,.525],76:[0,.61111,0,0,.525],77:[0,.61111,0,0,.525],78:[0,.61111,0,0,.525],79:[0,.61111,0,0,.525],80:[0,.61111,0,0,.525],81:[.13889,.61111,0,0,.525],82:[0,.61111,0,0,.525],83:[0,.61111,0,0,.525],84:[0,.61111,0,0,.525],85:[0,.61111,0,0,.525],86:[0,.61111,0,0,.525],87:[0,.61111,0,0,.525],88:[0,.61111,0,0,.525],89:[0,.61111,0,0,.525],90:[0,.61111,0,0,.525],91:[.08333,.69444,0,0,.525],92:[.08333,.69444,0,0,.525],93:[.08333,.69444,0,0,.525],94:[0,.61111,0,0,.525],95:[.09514,0,0,0,.525],96:[0,.61111,0,0,.525],97:[0,.43056,0,0,.525],98:[0,.61111,0,0,.525],99:[0,.43056,0,0,.525],100:[0,.61111,0,0,.525],101:[0,.43056,0,0,.525],102:[0,.61111,0,0,.525],103:[.22222,.43056,0,0,.525],104:[0,.61111,0,0,.525],105:[0,.61111,0,0,.525],106:[.22222,.61111,0,0,.525],107:[0,.61111,0,0,.525],108:[0,.61111,0,0,.525],109:[0,.43056,0,0,.525],110:[0,.43056,0,0,.525],111:[0,.43056,0,0,.525],112:[.22222,.43056,0,0,.525],113:[.22222,.43056,0,0,.525],114:[0,.43056,0,0,.525],115:[0,.43056,0,0,.525],116:[0,.55358,0,0,.525],117:[0,.43056,0,0,.525],118:[0,.43056,0,0,.525],119:[0,.43056,0,0,.525],120:[0,.43056,0,0,.525],121:[.22222,.43056,0,0,.525],122:[0,.43056,0,0,.525],123:[.08333,.69444,0,0,.525],124:[.08333,.69444,0,0,.525],125:[.08333,.69444,0,0,.525],126:[0,.61111,0,0,.525],127:[0,.61111,0,0,.525],160:[0,0,0,0,.525],176:[0,.61111,0,0,.525],184:[.19445,0,0,0,.525],305:[0,.43056,0,0,.525],567:[.22222,.43056,0,0,.525],711:[0,.56597,0,0,.525],713:[0,.56555,0,0,.525],714:[0,.61111,0,0,.525],715:[0,.61111,0,0,.525],728:[0,.61111,0,0,.525],730:[0,.61111,0,0,.525],770:[0,.61111,0,0,.525],771:[0,.61111,0,0,.525],776:[0,.61111,0,0,.525],915:[0,.61111,0,0,.525],916:[0,.61111,0,0,.525],920:[0,.61111,0,0,.525],923:[0,.61111,0,0,.525],926:[0,.61111,0,0,.525],928:[0,.61111,0,0,.525],931:[0,.61111,0,0,.525],933:[0,.61111,0,0,.525],934:[0,.61111,0,0,.525],936:[0,.61111,0,0,.525],937:[0,.61111,0,0,.525],8216:[0,.61111,0,0,.525],8217:[0,.61111,0,0,.525],8242:[0,.61111,0,0,.525],9251:[.11111,.21944,0,0,.525]}},Z4={slant:[.25,.25,.25],space:[0,0,0],stretch:[0,0,0],shrink:[0,0,0],xHeight:[.431,.431,.431],quad:[1,1.171,1.472],extraSpace:[0,0,0],num1:[.677,.732,.925],num2:[.394,.384,.387],num3:[.444,.471,.504],denom1:[.686,.752,1.025],denom2:[.345,.344,.532],sup1:[.413,.503,.504],sup2:[.363,.431,.404],sup3:[.289,.286,.294],sub1:[.15,.143,.2],sub2:[.247,.286,.4],supDrop:[.386,.353,.494],subDrop:[.05,.071,.1],delim1:[2.39,1.7,1.98],delim2:[1.01,1.157,1.42],axisHeight:[.25,.25,.25],defaultRuleThickness:[.04,.049,.049],bigOpSpacing1:[.111,.111,.111],bigOpSpacing2:[.166,.166,.166],bigOpSpacing3:[.2,.2,.2],bigOpSpacing4:[.6,.611,.611],bigOpSpacing5:[.1,.143,.143],sqrtRuleThickness:[.04,.04,.04],ptPerEm:[10,10,10],doubleRuleSep:[.2,.2,.2],arrayRuleWidth:[.04,.04,.04],fboxsep:[.3,.3,.3],fboxrule:[.04,.04,.04]},lz={\u00C5:"A",\u00D0:"D",\u00DE:"o",\u00E5:"a",\u00F0:"d",\u00FE:"o",\u0410:"A",\u0411:"B",\u0412:"B",\u0413:"F",\u0414:"A",\u0415:"E",\u0416:"K",\u0417:"3",\u0418:"N",\u0419:"N",\u041A:"K",\u041B:"N",\u041C:"M",\u041D:"H",\u041E:"O",\u041F:"N",\u0420:"P",\u0421:"C",\u0422:"T",\u0423:"y",\u0424:"O",\u0425:"X",\u0426:"U",\u0427:"h",\u0428:"W",\u0429:"W",\u042A:"B",\u042B:"X",\u042C:"B",\u042D:"3",\u042E:"X",\u042F:"R",\u0430:"a",\u0431:"b",\u0432:"a",\u0433:"r",\u0434:"y",\u0435:"e",\u0436:"m",\u0437:"e",\u0438:"n",\u0439:"n",\u043A:"n",\u043B:"n",\u043C:"m",\u043D:"n",\u043E:"o",\u043F:"n",\u0440:"p",\u0441:"c",\u0442:"o",\u0443:"y",\u0444:"b",\u0445:"x",\u0446:"n",\u0447:"n",\u0448:"w",\u0449:"w",\u044A:"a",\u044B:"m",\u044C:"a",\u044D:"e",\u044E:"m",\u044F:"r"};o(Abe,"setFontMetrics");o(P7,"getCharacterMetrics");h7={};o(_be,"getGlobalMetrics");Dbe=[[1,1,1],[2,1,1],[3,1,1],[4,2,1],[5,2,1],[6,3,1],[7,4,2],[8,6,3],[9,7,6],[10,8,7],[11,10,9]],cz=[.5,.6,.7,.8,.9,1,1.2,1.44,1.728,2.074,2.488],uz=o(function(e,r){return r.size<2?e:Dbe[e-1][r.size-1]},"sizeAtStyle"),f3=class t{static{o(this,"Options")}constructor(e){this.style=void 0,this.color=void 0,this.size=void 0,this.textSize=void 0,this.phantom=void 0,this.font=void 0,this.fontFamily=void 0,this.fontWeight=void 0,this.fontShape=void 0,this.sizeMultiplier=void 0,this.maxSize=void 0,this.minRuleThickness=void 0,this._fontMetrics=void 0,this.style=e.style,this.color=e.color,this.size=e.size||t.BASESIZE,this.textSize=e.textSize||this.size,this.phantom=!!e.phantom,this.font=e.font||"",this.fontFamily=e.fontFamily||"",this.fontWeight=e.fontWeight||"",this.fontShape=e.fontShape||"",this.sizeMultiplier=cz[this.size-1],this.maxSize=e.maxSize,this.minRuleThickness=e.minRuleThickness,this._fontMetrics=void 0}extend(e){var r={style:this.style,size:this.size,textSize:this.textSize,color:this.color,phantom:this.phantom,font:this.font,fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontShape:this.fontShape,maxSize:this.maxSize,minRuleThickness:this.minRuleThickness};for(var n in e)e.hasOwnProperty(n)&&(r[n]=e[n]);return new t(r)}havingStyle(e){return this.style===e?this:this.extend({style:e,size:uz(this.textSize,e)})}havingCrampedStyle(){return this.havingStyle(this.style.cramp())}havingSize(e){return this.size===e&&this.textSize===e?this:this.extend({style:this.style.text(),size:e,textSize:e,sizeMultiplier:cz[e-1]})}havingBaseStyle(e){e=e||this.style.text();var r=uz(t.BASESIZE,e);return this.size===r&&this.textSize===t.BASESIZE&&this.style===e?this:this.extend({style:e,size:r})}havingBaseSizing(){var e;switch(this.style.id){case 4:case 5:e=3;break;case 6:case 7:e=1;break;default:e=6}return this.extend({style:this.style.text(),size:e})}withColor(e){return this.extend({color:e})}withPhantom(){return this.extend({phantom:!0})}withFont(e){return this.extend({font:e})}withTextFontFamily(e){return this.extend({fontFamily:e,font:""})}withTextFontWeight(e){return this.extend({fontWeight:e,font:""})}withTextFontShape(e){return this.extend({fontShape:e,font:""})}sizingClasses(e){return e.size!==this.size?["sizing","reset-size"+e.size,"size"+this.size]:[]}baseSizingClasses(){return this.size!==t.BASESIZE?["sizing","reset-size"+this.size,"size"+t.BASESIZE]:[]}fontMetrics(){return this._fontMetrics||(this._fontMetrics=_be(this.size)),this._fontMetrics}getColor(){return this.phantom?"transparent":this.color}};f3.BASESIZE=6;E7={pt:1,mm:7227/2540,cm:7227/254,in:72.27,bp:803/800,pc:12,dd:1238/1157,cc:14856/1157,nd:685/642,nc:1370/107,sp:1/65536,px:803/800},Lbe={ex:!0,em:!0,mu:!0},zz=o(function(e){return typeof e!="string"&&(e=e.unit),e in E7||e in Lbe||e==="ex"},"validUnit"),ti=o(function(e,r){var n;if(e.unit in E7)n=E7[e.unit]/r.fontMetrics().ptPerEm/r.sizeMultiplier;else if(e.unit==="mu")n=r.fontMetrics().cssEmPerMu;else{var i;if(r.style.isTight()?i=r.havingStyle(r.style.text()):i=r,e.unit==="ex")n=i.fontMetrics().xHeight;else if(e.unit==="em")n=i.fontMetrics().quad;else throw new gt("Invalid unit: '"+e.unit+"'");i!==r&&(n*=i.sizeMultiplier/r.sizeMultiplier)}return Math.min(e.number*n,r.maxSize)},"calculateSize"),kt=o(function(e){return+e.toFixed(4)+"em"},"makeEm"),fh=o(function(e){return e.filter(r=>r).join(" ")},"createClass"),Gz=o(function(e,r,n){if(this.classes=e||[],this.attributes={},this.height=0,this.depth=0,this.maxFontSize=0,this.style=n||{},r){r.style.isTight()&&this.classes.push("mtight");var i=r.getColor();i&&(this.style.color=i)}},"initNode"),Vz=o(function(e){var r=document.createElement(e);r.className=fh(this.classes);for(var n in this.style)this.style.hasOwnProperty(n)&&(r.style[n]=this.style[n]);for(var i in this.attributes)this.attributes.hasOwnProperty(i)&&r.setAttribute(i,this.attributes[i]);for(var a=0;a",r},"toMarkup"),td=class{static{o(this,"Span")}constructor(e,r,n,i){this.children=void 0,this.attributes=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.width=void 0,this.maxFontSize=void 0,this.style=void 0,Gz.call(this,e,n,i),this.children=r||[]}setAttribute(e,r){this.attributes[e]=r}hasClass(e){return Jt.contains(this.classes,e)}toNode(){return Vz.call(this,"span")}toMarkup(){return Uz.call(this,"span")}},Vy=class{static{o(this,"Anchor")}constructor(e,r,n,i){this.children=void 0,this.attributes=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,Gz.call(this,r,i),this.children=n||[],this.setAttribute("href",e)}setAttribute(e,r){this.attributes[e]=r}hasClass(e){return Jt.contains(this.classes,e)}toNode(){return Vz.call(this,"a")}toMarkup(){return Uz.call(this,"a")}},S7=class{static{o(this,"Img")}constructor(e,r,n){this.src=void 0,this.alt=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,this.alt=r,this.src=e,this.classes=["mord"],this.style=n}hasClass(e){return Jt.contains(this.classes,e)}toNode(){var e=document.createElement("img");e.src=this.src,e.alt=this.alt,e.className="mord";for(var r in this.style)this.style.hasOwnProperty(r)&&(e.style[r]=this.style[r]);return e}toMarkup(){var e=''+Jt.escape(this.alt)+'0&&(r=document.createElement("span"),r.style.marginRight=kt(this.italic)),this.classes.length>0&&(r=r||document.createElement("span"),r.className=fh(this.classes));for(var n in this.style)this.style.hasOwnProperty(n)&&(r=r||document.createElement("span"),r.style[n]=this.style[n]);return r?(r.appendChild(e),r):e}toMarkup(){var e=!1,r="0&&(n+="margin-right:"+this.italic+"em;");for(var i in this.style)this.style.hasOwnProperty(i)&&(n+=Jt.hyphenate(i)+":"+this.style[i]+";");n&&(e=!0,r+=' style="'+Jt.escape(n)+'"');var a=Jt.escape(this.text);return e?(r+=">",r+=a,r+="",r):a}},ll=class{static{o(this,"SvgNode")}constructor(e,r){this.children=void 0,this.attributes=void 0,this.children=e||[],this.attributes=r||{}}toNode(){var e="http://www.w3.org/2000/svg",r=document.createElementNS(e,"svg");for(var n in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,n)&&r.setAttribute(n,this.attributes[n]);for(var i=0;i':''}},Uy=class{static{o(this,"LineNode")}constructor(e){this.attributes=void 0,this.attributes=e||{}}toNode(){var e="http://www.w3.org/2000/svg",r=document.createElementNS(e,"line");for(var n in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,n)&&r.setAttribute(n,this.attributes[n]);return r}toMarkup(){var e="","\\gt",!0);G(U,ee,Ee,"\u2208","\\in",!0);G(U,ee,Ee,"\uE020","\\@not");G(U,ee,Ee,"\u2282","\\subset",!0);G(U,ee,Ee,"\u2283","\\supset",!0);G(U,ee,Ee,"\u2286","\\subseteq",!0);G(U,ee,Ee,"\u2287","\\supseteq",!0);G(U,ke,Ee,"\u2288","\\nsubseteq",!0);G(U,ke,Ee,"\u2289","\\nsupseteq",!0);G(U,ee,Ee,"\u22A8","\\models");G(U,ee,Ee,"\u2190","\\leftarrow",!0);G(U,ee,Ee,"\u2264","\\le");G(U,ee,Ee,"\u2264","\\leq",!0);G(U,ee,Ee,"<","\\lt",!0);G(U,ee,Ee,"\u2192","\\rightarrow",!0);G(U,ee,Ee,"\u2192","\\to");G(U,ke,Ee,"\u2271","\\ngeq",!0);G(U,ke,Ee,"\u2270","\\nleq",!0);G(U,ee,uu,"\xA0","\\ ");G(U,ee,uu,"\xA0","\\space");G(U,ee,uu,"\xA0","\\nobreakspace");G(it,ee,uu,"\xA0","\\ ");G(it,ee,uu,"\xA0"," ");G(it,ee,uu,"\xA0","\\space");G(it,ee,uu,"\xA0","\\nobreakspace");G(U,ee,uu,null,"\\nobreak");G(U,ee,uu,null,"\\allowbreak");G(U,ee,x3,",",",");G(U,ee,x3,";",";");G(U,ke,It,"\u22BC","\\barwedge",!0);G(U,ke,It,"\u22BB","\\veebar",!0);G(U,ee,It,"\u2299","\\odot",!0);G(U,ee,It,"\u2295","\\oplus",!0);G(U,ee,It,"\u2297","\\otimes",!0);G(U,ee,Le,"\u2202","\\partial",!0);G(U,ee,It,"\u2298","\\oslash",!0);G(U,ke,It,"\u229A","\\circledcirc",!0);G(U,ke,It,"\u22A1","\\boxdot",!0);G(U,ee,It,"\u25B3","\\bigtriangleup");G(U,ee,It,"\u25BD","\\bigtriangledown");G(U,ee,It,"\u2020","\\dagger");G(U,ee,It,"\u22C4","\\diamond");G(U,ee,It,"\u22C6","\\star");G(U,ee,It,"\u25C3","\\triangleleft");G(U,ee,It,"\u25B9","\\triangleright");G(U,ee,js,"{","\\{");G(it,ee,Le,"{","\\{");G(it,ee,Le,"{","\\textbraceleft");G(U,ee,Za,"}","\\}");G(it,ee,Le,"}","\\}");G(it,ee,Le,"}","\\textbraceright");G(U,ee,js,"{","\\lbrace");G(U,ee,Za,"}","\\rbrace");G(U,ee,js,"[","\\lbrack",!0);G(it,ee,Le,"[","\\lbrack",!0);G(U,ee,Za,"]","\\rbrack",!0);G(it,ee,Le,"]","\\rbrack",!0);G(U,ee,js,"(","\\lparen",!0);G(U,ee,Za,")","\\rparen",!0);G(it,ee,Le,"<","\\textless",!0);G(it,ee,Le,">","\\textgreater",!0);G(U,ee,js,"\u230A","\\lfloor",!0);G(U,ee,Za,"\u230B","\\rfloor",!0);G(U,ee,js,"\u2308","\\lceil",!0);G(U,ee,Za,"\u2309","\\rceil",!0);G(U,ee,Le,"\\","\\backslash");G(U,ee,Le,"\u2223","|");G(U,ee,Le,"\u2223","\\vert");G(it,ee,Le,"|","\\textbar",!0);G(U,ee,Le,"\u2225","\\|");G(U,ee,Le,"\u2225","\\Vert");G(it,ee,Le,"\u2225","\\textbardbl");G(it,ee,Le,"~","\\textasciitilde");G(it,ee,Le,"\\","\\textbackslash");G(it,ee,Le,"^","\\textasciicircum");G(U,ee,Ee,"\u2191","\\uparrow",!0);G(U,ee,Ee,"\u21D1","\\Uparrow",!0);G(U,ee,Ee,"\u2193","\\downarrow",!0);G(U,ee,Ee,"\u21D3","\\Downarrow",!0);G(U,ee,Ee,"\u2195","\\updownarrow",!0);G(U,ee,Ee,"\u21D5","\\Updownarrow",!0);G(U,ee,ki,"\u2210","\\coprod");G(U,ee,ki,"\u22C1","\\bigvee");G(U,ee,ki,"\u22C0","\\bigwedge");G(U,ee,ki,"\u2A04","\\biguplus");G(U,ee,ki,"\u22C2","\\bigcap");G(U,ee,ki,"\u22C3","\\bigcup");G(U,ee,ki,"\u222B","\\int");G(U,ee,ki,"\u222B","\\intop");G(U,ee,ki,"\u222C","\\iint");G(U,ee,ki,"\u222D","\\iiint");G(U,ee,ki,"\u220F","\\prod");G(U,ee,ki,"\u2211","\\sum");G(U,ee,ki,"\u2A02","\\bigotimes");G(U,ee,ki,"\u2A01","\\bigoplus");G(U,ee,ki,"\u2A00","\\bigodot");G(U,ee,ki,"\u222E","\\oint");G(U,ee,ki,"\u222F","\\oiint");G(U,ee,ki,"\u2230","\\oiiint");G(U,ee,ki,"\u2A06","\\bigsqcup");G(U,ee,ki,"\u222B","\\smallint");G(it,ee,p0,"\u2026","\\textellipsis");G(U,ee,p0,"\u2026","\\mathellipsis");G(it,ee,p0,"\u2026","\\ldots",!0);G(U,ee,p0,"\u2026","\\ldots",!0);G(U,ee,p0,"\u22EF","\\@cdots",!0);G(U,ee,p0,"\u22F1","\\ddots",!0);G(U,ee,Le,"\u22EE","\\varvdots");G(U,ee,Vn,"\u02CA","\\acute");G(U,ee,Vn,"\u02CB","\\grave");G(U,ee,Vn,"\xA8","\\ddot");G(U,ee,Vn,"~","\\tilde");G(U,ee,Vn,"\u02C9","\\bar");G(U,ee,Vn,"\u02D8","\\breve");G(U,ee,Vn,"\u02C7","\\check");G(U,ee,Vn,"^","\\hat");G(U,ee,Vn,"\u20D7","\\vec");G(U,ee,Vn,"\u02D9","\\dot");G(U,ee,Vn,"\u02DA","\\mathring");G(U,ee,er,"\uE131","\\@imath");G(U,ee,er,"\uE237","\\@jmath");G(U,ee,Le,"\u0131","\u0131");G(U,ee,Le,"\u0237","\u0237");G(it,ee,Le,"\u0131","\\i",!0);G(it,ee,Le,"\u0237","\\j",!0);G(it,ee,Le,"\xDF","\\ss",!0);G(it,ee,Le,"\xE6","\\ae",!0);G(it,ee,Le,"\u0153","\\oe",!0);G(it,ee,Le,"\xF8","\\o",!0);G(it,ee,Le,"\xC6","\\AE",!0);G(it,ee,Le,"\u0152","\\OE",!0);G(it,ee,Le,"\xD8","\\O",!0);G(it,ee,Vn,"\u02CA","\\'");G(it,ee,Vn,"\u02CB","\\`");G(it,ee,Vn,"\u02C6","\\^");G(it,ee,Vn,"\u02DC","\\~");G(it,ee,Vn,"\u02C9","\\=");G(it,ee,Vn,"\u02D8","\\u");G(it,ee,Vn,"\u02D9","\\.");G(it,ee,Vn,"\xB8","\\c");G(it,ee,Vn,"\u02DA","\\r");G(it,ee,Vn,"\u02C7","\\v");G(it,ee,Vn,"\xA8",'\\"');G(it,ee,Vn,"\u02DD","\\H");G(it,ee,Vn,"\u25EF","\\textcircled");Hz={"--":!0,"---":!0,"``":!0,"''":!0};G(it,ee,Le,"\u2013","--",!0);G(it,ee,Le,"\u2013","\\textendash");G(it,ee,Le,"\u2014","---",!0);G(it,ee,Le,"\u2014","\\textemdash");G(it,ee,Le,"\u2018","`",!0);G(it,ee,Le,"\u2018","\\textquoteleft");G(it,ee,Le,"\u2019","'",!0);G(it,ee,Le,"\u2019","\\textquoteright");G(it,ee,Le,"\u201C","``",!0);G(it,ee,Le,"\u201C","\\textquotedblleft");G(it,ee,Le,"\u201D","''",!0);G(it,ee,Le,"\u201D","\\textquotedblright");G(U,ee,Le,"\xB0","\\degree",!0);G(it,ee,Le,"\xB0","\\degree");G(it,ee,Le,"\xB0","\\textdegree",!0);G(U,ee,Le,"\xA3","\\pounds");G(U,ee,Le,"\xA3","\\mathsterling",!0);G(it,ee,Le,"\xA3","\\pounds");G(it,ee,Le,"\xA3","\\textsterling",!0);G(U,ke,Le,"\u2720","\\maltese");G(it,ke,Le,"\u2720","\\maltese");fz='0123456789/@."';for(J4=0;J40)return ol(a,h,i,r,s.concat(f));if(u){var d,p;if(u==="boldsymbol"){var m=Bbe(a,i,r,s,n);d=m.fontName,p=[m.fontClass]}else l?(d=Yz[u].fontName,p=[u]):(d=i3(u,r.fontWeight,r.fontShape),p=[u,r.fontWeight,r.fontShape]);if(b3(a,d,i).metrics)return ol(a,d,i,r,s.concat(p));if(Hz.hasOwnProperty(a)&&d.slice(0,10)==="Typewriter"){for(var g=[],y=0;y{if(fh(t.classes)!==fh(e.classes)||t.skew!==e.skew||t.maxFontSize!==e.maxFontSize)return!1;if(t.classes.length===1){var r=t.classes[0];if(r==="mbin"||r==="mord")return!1}for(var n in t.style)if(t.style.hasOwnProperty(n)&&t.style[n]!==e.style[n])return!1;for(var i in e.style)if(e.style.hasOwnProperty(i)&&t.style[i]!==e.style[i])return!1;return!0},"canCombine"),zbe=o(t=>{for(var e=0;er&&(r=s.height),s.depth>n&&(n=s.depth),s.maxFontSize>i&&(i=s.maxFontSize)}e.height=r,e.depth=n,e.maxFontSize=i},"sizeElementFromChildren"),bs=o(function(e,r,n,i){var a=new td(e,r,n,i);return B7(a),a},"makeSpan"),Wz=o((t,e,r,n)=>new td(t,e,r,n),"makeSvgSpan"),Gbe=o(function(e,r,n){var i=bs([e],[],r);return i.height=Math.max(n||r.fontMetrics().defaultRuleThickness,r.minRuleThickness),i.style.borderBottomWidth=kt(i.height),i.maxFontSize=1,i},"makeLineSpan"),Vbe=o(function(e,r,n,i){var a=new Vy(e,r,n,i);return B7(a),a},"makeAnchor"),qz=o(function(e){var r=new ed(e);return B7(r),r},"makeFragment"),Ube=o(function(e,r){return e instanceof ed?bs([],[e],r):e},"wrapFragment"),Hbe=o(function(e){if(e.positionType==="individualShift"){for(var r=e.children,n=[r[0]],i=-r[0].shift-r[0].elem.depth,a=i,s=1;s{var r=bs(["mspace"],[],e),n=ti(t,e);return r.style.marginRight=kt(n),r},"makeGlue"),i3=o(function(e,r,n){var i="";switch(e){case"amsrm":i="AMS";break;case"textrm":i="Main";break;case"textsf":i="SansSerif";break;case"texttt":i="Typewriter";break;default:i=e}var a;return r==="textbf"&&n==="textit"?a="BoldItalic":r==="textbf"?a="Bold":r==="textit"?a="Italic":a="Regular",i+"-"+a},"retrieveTextFontName"),Yz={mathbf:{variant:"bold",fontName:"Main-Bold"},mathrm:{variant:"normal",fontName:"Main-Regular"},textit:{variant:"italic",fontName:"Main-Italic"},mathit:{variant:"italic",fontName:"Main-Italic"},mathnormal:{variant:"italic",fontName:"Math-Italic"},mathbb:{variant:"double-struck",fontName:"AMS-Regular"},mathcal:{variant:"script",fontName:"Caligraphic-Regular"},mathfrak:{variant:"fraktur",fontName:"Fraktur-Regular"},mathscr:{variant:"script",fontName:"Script-Regular"},mathsf:{variant:"sans-serif",fontName:"SansSerif-Regular"},mathtt:{variant:"monospace",fontName:"Typewriter-Regular"}},Xz={vec:["vec",.471,.714],oiintSize1:["oiintSize1",.957,.499],oiintSize2:["oiintSize2",1.472,.659],oiiintSize1:["oiiintSize1",1.304,.499],oiiintSize2:["oiiintSize2",1.98,.659]},Ybe=o(function(e,r){var[n,i,a]=Xz[e],s=new Kl(n),l=new ll([s],{width:kt(i),height:kt(a),style:"width:"+kt(i),viewBox:"0 0 "+1e3*i+" "+1e3*a,preserveAspectRatio:"xMinYMin"}),u=Wz(["overlay"],[l],r);return u.height=a,u.style.height=kt(a),u.style.width=kt(i),u},"staticSvg"),Be={fontMap:Yz,makeSymbol:ol,mathsym:Pbe,makeSpan:bs,makeSvgSpan:Wz,makeLineSpan:Gbe,makeAnchor:Vbe,makeFragment:qz,wrapFragment:Ube,makeVList:Wbe,makeOrd:Fbe,makeGlue:qbe,staticSvg:Ybe,svgData:Xz,tryCombineChars:zbe},ei={number:3,unit:"mu"},Zf={number:4,unit:"mu"},au={number:5,unit:"mu"},Xbe={mord:{mop:ei,mbin:Zf,mrel:au,minner:ei},mop:{mord:ei,mop:ei,mrel:au,minner:ei},mbin:{mord:Zf,mop:Zf,mopen:Zf,minner:Zf},mrel:{mord:au,mop:au,mopen:au,minner:au},mopen:{},mclose:{mop:ei,mbin:Zf,mrel:au,minner:ei},mpunct:{mord:ei,mop:ei,mrel:au,mopen:ei,mclose:ei,mpunct:ei,minner:ei},minner:{mord:ei,mop:ei,mbin:Zf,mrel:au,mopen:ei,mpunct:ei,minner:ei}},jbe={mord:{mop:ei},mop:{mord:ei,mop:ei},mbin:{},mrel:{},mopen:{},mclose:{mop:ei},mpunct:{},minner:{mop:ei}},jz={},p3={},m3={};o(Nt,"defineFunction");o(rd,"defineFunctionBuilders");g3=o(function(e){return e.type==="ordgroup"&&e.body.length===1?e.body[0]:e},"normalizeArgument"),di=o(function(e){return e.type==="ordgroup"?e.body:[e]},"ordargument"),lu=Be.makeSpan,Kbe=["leftmost","mbin","mopen","mrel","mop","mpunct"],Qbe=["rightmost","mrel","mclose","mpunct"],Zbe={display:tr.DISPLAY,text:tr.TEXT,script:tr.SCRIPT,scriptscript:tr.SCRIPTSCRIPT},Jbe={mord:"mord",mop:"mop",mbin:"mbin",mrel:"mrel",mopen:"mopen",mclose:"mclose",mpunct:"mpunct",minner:"minner"},Pi=o(function(e,r,n,i){i===void 0&&(i=[null,null]);for(var a=[],s=0;s{var v=y.classes[0],x=g.classes[0];v==="mbin"&&Jt.contains(Qbe,x)?y.classes[0]="mord":x==="mbin"&&Jt.contains(Kbe,v)&&(g.classes[0]="mord")},{node:d},p,m),mz(a,(g,y)=>{var v=A7(y),x=A7(g),b=v&&x?g.hasClass("mtight")?jbe[v][x]:Xbe[v][x]:null;if(b)return Be.makeGlue(b,h)},{node:d},p,m),a},"buildExpression"),mz=o(function t(e,r,n,i,a){i&&e.push(i);for(var s=0;sp=>{e.splice(d+1,0,p),s++})(s)}i&&e.pop()},"traverseNonSpaceNodes"),Kz=o(function(e){return e instanceof ed||e instanceof Vy||e instanceof td&&e.hasClass("enclosing")?e:null},"checkPartialGroup"),e4e=o(function t(e,r){var n=Kz(e);if(n){var i=n.children;if(i.length){if(r==="right")return t(i[i.length-1],"right");if(r==="left")return t(i[0],"left")}}return e},"getOutermostNode"),A7=o(function(e,r){return e?(r&&(e=e4e(e,r)),Jbe[e.classes[0]]||null):null},"getTypeOfDomTree"),Hy=o(function(e,r){var n=["nulldelimiter"].concat(e.baseSizingClasses());return lu(r.concat(n))},"makeNullDelimiter"),Fr=o(function(e,r,n){if(!e)return lu();if(p3[e.type]){var i=p3[e.type](e,r);if(n&&r.size!==n.size){i=lu(r.sizingClasses(n),[i],r);var a=r.sizeMultiplier/n.sizeMultiplier;i.height*=a,i.depth*=a}return i}else throw new gt("Got group of unknown type: '"+e.type+"'")},"buildGroup");o(a3,"buildHTMLUnbreakable");o(_7,"buildHTML");o(Qz,"newDocumentFragment");ws=class{static{o(this,"MathNode")}constructor(e,r,n){this.type=void 0,this.attributes=void 0,this.children=void 0,this.classes=void 0,this.type=e,this.attributes={},this.children=r||[],this.classes=n||[]}setAttribute(e,r){this.attributes[e]=r}getAttribute(e){return this.attributes[e]}toNode(){var e=document.createElementNS("http://www.w3.org/1998/Math/MathML",this.type);for(var r in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,r)&&e.setAttribute(r,this.attributes[r]);this.classes.length>0&&(e.className=fh(this.classes));for(var n=0;n0&&(e+=' class ="'+Jt.escape(fh(this.classes))+'"'),e+=">";for(var n=0;n",e}toText(){return this.children.map(e=>e.toText()).join("")}},Jf=class{static{o(this,"TextNode")}constructor(e){this.text=void 0,this.text=e}toNode(){return document.createTextNode(this.text)}toMarkup(){return Jt.escape(this.toText())}toText(){return this.text}},D7=class{static{o(this,"SpaceNode")}constructor(e){this.width=void 0,this.character=void 0,this.width=e,e>=.05555&&e<=.05556?this.character="\u200A":e>=.1666&&e<=.1667?this.character="\u2009":e>=.2222&&e<=.2223?this.character="\u2005":e>=.2777&&e<=.2778?this.character="\u2005\u200A":e>=-.05556&&e<=-.05555?this.character="\u200A\u2063":e>=-.1667&&e<=-.1666?this.character="\u2009\u2063":e>=-.2223&&e<=-.2222?this.character="\u205F\u2063":e>=-.2778&&e<=-.2777?this.character="\u2005\u2063":this.character=null}toNode(){if(this.character)return document.createTextNode(this.character);var e=document.createElementNS("http://www.w3.org/1998/Math/MathML","mspace");return e.setAttribute("width",kt(this.width)),e}toMarkup(){return this.character?""+this.character+"":''}toText(){return this.character?this.character:" "}},dt={MathNode:ws,TextNode:Jf,SpaceNode:D7,newDocumentFragment:Qz},Co=o(function(e,r,n){return An[r][e]&&An[r][e].replace&&e.charCodeAt(0)!==55349&&!(Hz.hasOwnProperty(e)&&n&&(n.fontFamily&&n.fontFamily.slice(4,6)==="tt"||n.font&&n.font.slice(4,6)==="tt"))&&(e=An[r][e].replace),new dt.TextNode(e)},"makeText"),F7=o(function(e){return e.length===1?e[0]:new dt.MathNode("mrow",e)},"makeRow"),$7=o(function(e,r){if(r.fontFamily==="texttt")return"monospace";if(r.fontFamily==="textsf")return r.fontShape==="textit"&&r.fontWeight==="textbf"?"sans-serif-bold-italic":r.fontShape==="textit"?"sans-serif-italic":r.fontWeight==="textbf"?"bold-sans-serif":"sans-serif";if(r.fontShape==="textit"&&r.fontWeight==="textbf")return"bold-italic";if(r.fontShape==="textit")return"italic";if(r.fontWeight==="textbf")return"bold";var n=r.font;if(!n||n==="mathnormal")return null;var i=e.mode;if(n==="mathit")return"italic";if(n==="boldsymbol")return e.type==="textord"?"bold":"bold-italic";if(n==="mathbf")return"bold";if(n==="mathbb")return"double-struck";if(n==="mathfrak")return"fraktur";if(n==="mathscr"||n==="mathcal")return"script";if(n==="mathsf")return"sans-serif";if(n==="mathtt")return"monospace";var a=e.text;if(Jt.contains(["\\imath","\\jmath"],a))return null;An[i][a]&&An[i][a].replace&&(a=An[i][a].replace);var s=Be.fontMap[n].fontName;return P7(a,s,i)?Be.fontMap[n].variant:null},"getVariant"),ks=o(function(e,r,n){if(e.length===1){var i=yn(e[0],r);return n&&i instanceof ws&&i.type==="mo"&&(i.setAttribute("lspace","0em"),i.setAttribute("rspace","0em")),[i]}for(var a=[],s,l=0;l0&&(d.text=d.text.slice(0,1)+"\u0338"+d.text.slice(1),a.pop())}}}a.push(u),s=u}return a},"buildExpression"),dh=o(function(e,r,n){return F7(ks(e,r,n))},"buildExpressionRow"),yn=o(function(e,r){if(!e)return new dt.MathNode("mrow");if(m3[e.type]){var n=m3[e.type](e,r);return n}else throw new gt("Got group of unknown type: '"+e.type+"'")},"buildGroup");o(gz,"buildMathML");Zz=o(function(e){return new f3({style:e.displayMode?tr.DISPLAY:tr.TEXT,maxSize:e.maxSize,minRuleThickness:e.minRuleThickness})},"optionsFromSettings"),Jz=o(function(e,r){if(r.displayMode){var n=["katex-display"];r.leqno&&n.push("leqno"),r.fleqn&&n.push("fleqn"),e=Be.makeSpan(n,[e])}return e},"displayWrap"),t4e=o(function(e,r,n){var i=Zz(n),a;if(n.output==="mathml")return gz(e,r,i,n.displayMode,!0);if(n.output==="html"){var s=_7(e,i);a=Be.makeSpan(["katex"],[s])}else{var l=gz(e,r,i,n.displayMode,!1),u=_7(e,i);a=Be.makeSpan(["katex"],[l,u])}return Jz(a,n)},"buildTree"),r4e=o(function(e,r,n){var i=Zz(n),a=_7(e,i),s=Be.makeSpan(["katex"],[a]);return Jz(s,n)},"buildHTMLTree"),n4e={widehat:"^",widecheck:"\u02C7",widetilde:"~",utilde:"~",overleftarrow:"\u2190",underleftarrow:"\u2190",xleftarrow:"\u2190",overrightarrow:"\u2192",underrightarrow:"\u2192",xrightarrow:"\u2192",underbrace:"\u23DF",overbrace:"\u23DE",overgroup:"\u23E0",undergroup:"\u23E1",overleftrightarrow:"\u2194",underleftrightarrow:"\u2194",xleftrightarrow:"\u2194",Overrightarrow:"\u21D2",xRightarrow:"\u21D2",overleftharpoon:"\u21BC",xleftharpoonup:"\u21BC",overrightharpoon:"\u21C0",xrightharpoonup:"\u21C0",xLeftarrow:"\u21D0",xLeftrightarrow:"\u21D4",xhookleftarrow:"\u21A9",xhookrightarrow:"\u21AA",xmapsto:"\u21A6",xrightharpoondown:"\u21C1",xleftharpoondown:"\u21BD",xrightleftharpoons:"\u21CC",xleftrightharpoons:"\u21CB",xtwoheadleftarrow:"\u219E",xtwoheadrightarrow:"\u21A0",xlongequal:"=",xtofrom:"\u21C4",xrightleftarrows:"\u21C4",xrightequilibrium:"\u21CC",xleftequilibrium:"\u21CB","\\cdrightarrow":"\u2192","\\cdleftarrow":"\u2190","\\cdlongequal":"="},i4e=o(function(e){var r=new dt.MathNode("mo",[new dt.TextNode(n4e[e.replace(/^\\/,"")])]);return r.setAttribute("stretchy","true"),r},"mathMLnode"),a4e={overrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],overleftarrow:[["leftarrow"],.888,522,"xMinYMin"],underrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],underleftarrow:[["leftarrow"],.888,522,"xMinYMin"],xrightarrow:[["rightarrow"],1.469,522,"xMaxYMin"],"\\cdrightarrow":[["rightarrow"],3,522,"xMaxYMin"],xleftarrow:[["leftarrow"],1.469,522,"xMinYMin"],"\\cdleftarrow":[["leftarrow"],3,522,"xMinYMin"],Overrightarrow:[["doublerightarrow"],.888,560,"xMaxYMin"],xRightarrow:[["doublerightarrow"],1.526,560,"xMaxYMin"],xLeftarrow:[["doubleleftarrow"],1.526,560,"xMinYMin"],overleftharpoon:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoonup:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoondown:[["leftharpoondown"],.888,522,"xMinYMin"],overrightharpoon:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoonup:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoondown:[["rightharpoondown"],.888,522,"xMaxYMin"],xlongequal:[["longequal"],.888,334,"xMinYMin"],"\\cdlongequal":[["longequal"],3,334,"xMinYMin"],xtwoheadleftarrow:[["twoheadleftarrow"],.888,334,"xMinYMin"],xtwoheadrightarrow:[["twoheadrightarrow"],.888,334,"xMaxYMin"],overleftrightarrow:[["leftarrow","rightarrow"],.888,522],overbrace:[["leftbrace","midbrace","rightbrace"],1.6,548],underbrace:[["leftbraceunder","midbraceunder","rightbraceunder"],1.6,548],underleftrightarrow:[["leftarrow","rightarrow"],.888,522],xleftrightarrow:[["leftarrow","rightarrow"],1.75,522],xLeftrightarrow:[["doubleleftarrow","doublerightarrow"],1.75,560],xrightleftharpoons:[["leftharpoondownplus","rightharpoonplus"],1.75,716],xleftrightharpoons:[["leftharpoonplus","rightharpoondownplus"],1.75,716],xhookleftarrow:[["leftarrow","righthook"],1.08,522],xhookrightarrow:[["lefthook","rightarrow"],1.08,522],overlinesegment:[["leftlinesegment","rightlinesegment"],.888,522],underlinesegment:[["leftlinesegment","rightlinesegment"],.888,522],overgroup:[["leftgroup","rightgroup"],.888,342],undergroup:[["leftgroupunder","rightgroupunder"],.888,342],xmapsto:[["leftmapsto","rightarrow"],1.5,522],xtofrom:[["leftToFrom","rightToFrom"],1.75,528],xrightleftarrows:[["baraboveleftarrow","rightarrowabovebar"],1.75,901],xrightequilibrium:[["baraboveshortleftharpoon","rightharpoonaboveshortbar"],1.75,716],xleftequilibrium:[["shortbaraboveleftharpoon","shortrightharpoonabovebar"],1.75,716]},s4e=o(function(e){return e.type==="ordgroup"?e.body.length:1},"groupLength"),o4e=o(function(e,r){function n(){var l=4e5,u=e.label.slice(1);if(Jt.contains(["widehat","widecheck","widetilde","utilde"],u)){var h=e,f=s4e(h.base),d,p,m;if(f>5)u==="widehat"||u==="widecheck"?(d=420,l=2364,m=.42,p=u+"4"):(d=312,l=2340,m=.34,p="tilde4");else{var g=[1,1,2,2,3,3][f];u==="widehat"||u==="widecheck"?(l=[0,1062,2364,2364,2364][g],d=[0,239,300,360,420][g],m=[0,.24,.3,.3,.36,.42][g],p=u+g):(l=[0,600,1033,2339,2340][g],d=[0,260,286,306,312][g],m=[0,.26,.286,.3,.306,.34][g],p="tilde"+g)}var y=new Kl(p),v=new ll([y],{width:"100%",height:kt(m),viewBox:"0 0 "+l+" "+d,preserveAspectRatio:"none"});return{span:Be.makeSvgSpan([],[v],r),minWidth:0,height:m}}else{var x=[],b=a4e[u],[w,C,T]=b,E=T/1e3,A=w.length,S,_;if(A===1){var I=b[3];S=["hide-tail"],_=[I]}else if(A===2)S=["halfarrow-left","halfarrow-right"],_=["xMinYMin","xMaxYMin"];else if(A===3)S=["brace-left","brace-center","brace-right"],_=["xMinYMin","xMidYMin","xMaxYMin"];else throw new Error(`Correct katexImagesData or update code here to support + `+A+" children.");for(var D=0;D0&&(i.style.minWidth=kt(a)),i},"svgSpan"),l4e=o(function(e,r,n,i,a){var s,l=e.height+e.depth+n+i;if(/fbox|color|angl/.test(r)){if(s=Be.makeSpan(["stretchy",r],[],a),r==="fbox"){var u=a.color&&a.getColor();u&&(s.style.borderColor=u)}}else{var h=[];/^[bx]cancel$/.test(r)&&h.push(new Uy({x1:"0",y1:"0",x2:"100%",y2:"100%","stroke-width":"0.046em"})),/^x?cancel$/.test(r)&&h.push(new Uy({x1:"0",y1:"100%",x2:"100%",y2:"0","stroke-width":"0.046em"}));var f=new ll(h,{width:"100%",height:kt(l)});s=Be.makeSvgSpan([],[f],a)}return s.height=l,s.style.height=kt(l),s},"encloseSpan"),cu={encloseSpan:l4e,mathMLnode:i4e,svgSpan:o4e};o(xr,"assertNodeType");o(z7,"assertSymbolNodeType");o(w3,"checkSymbolNodeType");G7=o((t,e)=>{var r,n,i;t&&t.type==="supsub"?(n=xr(t.base,"accent"),r=n.base,t.base=r,i=Nbe(Fr(t,e)),t.base=n):(n=xr(t,"accent"),r=n.base);var a=Fr(r,e.havingCrampedStyle()),s=n.isShifty&&Jt.isCharacterBox(r),l=0;if(s){var u=Jt.getBaseElem(r),h=Fr(u,e.havingCrampedStyle());l=hz(h).skew}var f=n.label==="\\c",d=f?a.height+a.depth:Math.min(a.height,e.fontMetrics().xHeight),p;if(n.isStretchy)p=cu.svgSpan(n,e),p=Be.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"elem",elem:p,wrapperClasses:["svg-align"],wrapperStyle:l>0?{width:"calc(100% - "+kt(2*l)+")",marginLeft:kt(2*l)}:void 0}]},e);else{var m,g;n.label==="\\vec"?(m=Be.staticSvg("vec",e),g=Be.svgData.vec[1]):(m=Be.makeOrd({mode:n.mode,text:n.label},e,"textord"),m=hz(m),m.italic=0,g=m.width,f&&(d+=m.depth)),p=Be.makeSpan(["accent-body"],[m]);var y=n.label==="\\textcircled";y&&(p.classes.push("accent-full"),d=a.height);var v=l;y||(v-=g/2),p.style.left=kt(v),n.label==="\\textcircled"&&(p.style.top=".2em"),p=Be.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"kern",size:-d},{type:"elem",elem:p}]},e)}var x=Be.makeSpan(["mord","accent"],[p],e);return i?(i.children[0]=x,i.height=Math.max(x.height,i.height),i.classes[0]="mord",i):x},"htmlBuilder$a"),eG=o((t,e)=>{var r=t.isStretchy?cu.mathMLnode(t.label):new dt.MathNode("mo",[Co(t.label,t.mode)]),n=new dt.MathNode("mover",[yn(t.base,e),r]);return n.setAttribute("accent","true"),n},"mathmlBuilder$9"),c4e=new RegExp(["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring"].map(t=>"\\"+t).join("|"));Nt({type:"accent",names:["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring","\\widecheck","\\widehat","\\widetilde","\\overrightarrow","\\overleftarrow","\\Overrightarrow","\\overleftrightarrow","\\overgroup","\\overlinesegment","\\overleftharpoon","\\overrightharpoon"],props:{numArgs:1},handler:o((t,e)=>{var r=g3(e[0]),n=!c4e.test(t.funcName),i=!n||t.funcName==="\\widehat"||t.funcName==="\\widetilde"||t.funcName==="\\widecheck";return{type:"accent",mode:t.parser.mode,label:t.funcName,isStretchy:n,isShifty:i,base:r}},"handler"),htmlBuilder:G7,mathmlBuilder:eG});Nt({type:"accent",names:["\\'","\\`","\\^","\\~","\\=","\\u","\\.",'\\"',"\\c","\\r","\\H","\\v","\\textcircled"],props:{numArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["primitive"]},handler:o((t,e)=>{var r=e[0],n=t.parser.mode;return n==="math"&&(t.parser.settings.reportNonstrict("mathVsTextAccents","LaTeX's accent "+t.funcName+" works only in text mode"),n="text"),{type:"accent",mode:n,label:t.funcName,isStretchy:!1,isShifty:!0,base:r}},"handler"),htmlBuilder:G7,mathmlBuilder:eG});Nt({type:"accentUnder",names:["\\underleftarrow","\\underrightarrow","\\underleftrightarrow","\\undergroup","\\underlinesegment","\\utilde"],props:{numArgs:1},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0];return{type:"accentUnder",mode:r.mode,label:n,base:i}},"handler"),htmlBuilder:o((t,e)=>{var r=Fr(t.base,e),n=cu.svgSpan(t,e),i=t.label==="\\utilde"?.12:0,a=Be.makeVList({positionType:"top",positionData:r.height,children:[{type:"elem",elem:n,wrapperClasses:["svg-align"]},{type:"kern",size:i},{type:"elem",elem:r}]},e);return Be.makeSpan(["mord","accentunder"],[a],e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=cu.mathMLnode(t.label),n=new dt.MathNode("munder",[yn(t.base,e),r]);return n.setAttribute("accentunder","true"),n},"mathmlBuilder")});s3=o(t=>{var e=new dt.MathNode("mpadded",t?[t]:[]);return e.setAttribute("width","+0.6em"),e.setAttribute("lspace","0.3em"),e},"paddedNode");Nt({type:"xArrow",names:["\\xleftarrow","\\xrightarrow","\\xLeftarrow","\\xRightarrow","\\xleftrightarrow","\\xLeftrightarrow","\\xhookleftarrow","\\xhookrightarrow","\\xmapsto","\\xrightharpoondown","\\xrightharpoonup","\\xleftharpoondown","\\xleftharpoonup","\\xrightleftharpoons","\\xleftrightharpoons","\\xlongequal","\\xtwoheadrightarrow","\\xtwoheadleftarrow","\\xtofrom","\\xrightleftarrows","\\xrightequilibrium","\\xleftequilibrium","\\\\cdrightarrow","\\\\cdleftarrow","\\\\cdlongequal"],props:{numArgs:1,numOptionalArgs:1},handler(t,e,r){var{parser:n,funcName:i}=t;return{type:"xArrow",mode:n.mode,label:i,body:e[0],below:r[0]}},htmlBuilder(t,e){var r=e.style,n=e.havingStyle(r.sup()),i=Be.wrapFragment(Fr(t.body,n,e),e),a=t.label.slice(0,2)==="\\x"?"x":"cd";i.classes.push(a+"-arrow-pad");var s;t.below&&(n=e.havingStyle(r.sub()),s=Be.wrapFragment(Fr(t.below,n,e),e),s.classes.push(a+"-arrow-pad"));var l=cu.svgSpan(t,e),u=-e.fontMetrics().axisHeight+.5*l.height,h=-e.fontMetrics().axisHeight-.5*l.height-.111;(i.depth>.25||t.label==="\\xleftequilibrium")&&(h-=i.depth);var f;if(s){var d=-e.fontMetrics().axisHeight+s.height+.5*l.height+.111;f=Be.makeVList({positionType:"individualShift",children:[{type:"elem",elem:i,shift:h},{type:"elem",elem:l,shift:u},{type:"elem",elem:s,shift:d}]},e)}else f=Be.makeVList({positionType:"individualShift",children:[{type:"elem",elem:i,shift:h},{type:"elem",elem:l,shift:u}]},e);return f.children[0].children[0].children[1].classes.push("svg-align"),Be.makeSpan(["mrel","x-arrow"],[f],e)},mathmlBuilder(t,e){var r=cu.mathMLnode(t.label);r.setAttribute("minsize",t.label.charAt(0)==="x"?"1.75em":"3.0em");var n;if(t.body){var i=s3(yn(t.body,e));if(t.below){var a=s3(yn(t.below,e));n=new dt.MathNode("munderover",[r,a,i])}else n=new dt.MathNode("mover",[r,i])}else if(t.below){var s=s3(yn(t.below,e));n=new dt.MathNode("munder",[r,s])}else n=s3(),n=new dt.MathNode("mover",[r,n]);return n}});u4e=Be.makeSpan;o(tG,"htmlBuilder$9");o(rG,"mathmlBuilder$8");Nt({type:"mclass",names:["\\mathord","\\mathbin","\\mathrel","\\mathopen","\\mathclose","\\mathpunct","\\mathinner"],props:{numArgs:1,primitive:!0},handler(t,e){var{parser:r,funcName:n}=t,i=e[0];return{type:"mclass",mode:r.mode,mclass:"m"+n.slice(5),body:di(i),isCharacterBox:Jt.isCharacterBox(i)}},htmlBuilder:tG,mathmlBuilder:rG});T3=o(t=>{var e=t.type==="ordgroup"&&t.body.length?t.body[0]:t;return e.type==="atom"&&(e.family==="bin"||e.family==="rel")?"m"+e.family:"mord"},"binrelClass");Nt({type:"mclass",names:["\\@binrel"],props:{numArgs:2},handler(t,e){var{parser:r}=t;return{type:"mclass",mode:r.mode,mclass:T3(e[0]),body:di(e[1]),isCharacterBox:Jt.isCharacterBox(e[1])}}});Nt({type:"mclass",names:["\\stackrel","\\overset","\\underset"],props:{numArgs:2},handler(t,e){var{parser:r,funcName:n}=t,i=e[1],a=e[0],s;n!=="\\stackrel"?s=T3(i):s="mrel";var l={type:"op",mode:i.mode,limits:!0,alwaysHandleSupSub:!0,parentIsSupSub:!1,symbol:!1,suppressBaseShift:n!=="\\stackrel",body:di(i)},u={type:"supsub",mode:a.mode,base:l,sup:n==="\\underset"?null:a,sub:n==="\\underset"?a:null};return{type:"mclass",mode:r.mode,mclass:s,body:[u],isCharacterBox:Jt.isCharacterBox(u)}},htmlBuilder:tG,mathmlBuilder:rG});Nt({type:"pmb",names:["\\pmb"],props:{numArgs:1,allowedInText:!0},handler(t,e){var{parser:r}=t;return{type:"pmb",mode:r.mode,mclass:T3(e[0]),body:di(e[0])}},htmlBuilder(t,e){var r=Pi(t.body,e,!0),n=Be.makeSpan([t.mclass],r,e);return n.style.textShadow="0.02em 0.01em 0.04px",n},mathmlBuilder(t,e){var r=ks(t.body,e),n=new dt.MathNode("mstyle",r);return n.setAttribute("style","text-shadow: 0.02em 0.01em 0.04px"),n}});h4e={">":"\\\\cdrightarrow","<":"\\\\cdleftarrow","=":"\\\\cdlongequal",A:"\\uparrow",V:"\\downarrow","|":"\\Vert",".":"no arrow"},yz=o(()=>({type:"styling",body:[],mode:"math",style:"display"}),"newCell"),vz=o(t=>t.type==="textord"&&t.text==="@","isStartOfArrow"),f4e=o((t,e)=>(t.type==="mathord"||t.type==="atom")&&t.text===e,"isLabelEnd");o(d4e,"cdArrow");o(p4e,"parseCD");Nt({type:"cdlabel",names:["\\\\cdleft","\\\\cdright"],props:{numArgs:1},handler(t,e){var{parser:r,funcName:n}=t;return{type:"cdlabel",mode:r.mode,side:n.slice(4),label:e[0]}},htmlBuilder(t,e){var r=e.havingStyle(e.style.sup()),n=Be.wrapFragment(Fr(t.label,r,e),e);return n.classes.push("cd-label-"+t.side),n.style.bottom=kt(.8-n.depth),n.height=0,n.depth=0,n},mathmlBuilder(t,e){var r=new dt.MathNode("mrow",[yn(t.label,e)]);return r=new dt.MathNode("mpadded",[r]),r.setAttribute("width","0"),t.side==="left"&&r.setAttribute("lspace","-1width"),r.setAttribute("voffset","0.7em"),r=new dt.MathNode("mstyle",[r]),r.setAttribute("displaystyle","false"),r.setAttribute("scriptlevel","1"),r}});Nt({type:"cdlabelparent",names:["\\\\cdparent"],props:{numArgs:1},handler(t,e){var{parser:r}=t;return{type:"cdlabelparent",mode:r.mode,fragment:e[0]}},htmlBuilder(t,e){var r=Be.wrapFragment(Fr(t.fragment,e),e);return r.classes.push("cd-vert-arrow"),r},mathmlBuilder(t,e){return new dt.MathNode("mrow",[yn(t.fragment,e)])}});Nt({type:"textord",names:["\\@char"],props:{numArgs:1,allowedInText:!0},handler(t,e){for(var{parser:r}=t,n=xr(e[0],"ordgroup"),i=n.body,a="",s=0;s=1114111)throw new gt("\\@char with invalid code point "+a);return u<=65535?h=String.fromCharCode(u):(u-=65536,h=String.fromCharCode((u>>10)+55296,(u&1023)+56320)),{type:"textord",mode:r.mode,text:h}}});nG=o((t,e)=>{var r=Pi(t.body,e.withColor(t.color),!1);return Be.makeFragment(r)},"htmlBuilder$8"),iG=o((t,e)=>{var r=ks(t.body,e.withColor(t.color)),n=new dt.MathNode("mstyle",r);return n.setAttribute("mathcolor",t.color),n},"mathmlBuilder$7");Nt({type:"color",names:["\\textcolor"],props:{numArgs:2,allowedInText:!0,argTypes:["color","original"]},handler(t,e){var{parser:r}=t,n=xr(e[0],"color-token").color,i=e[1];return{type:"color",mode:r.mode,color:n,body:di(i)}},htmlBuilder:nG,mathmlBuilder:iG});Nt({type:"color",names:["\\color"],props:{numArgs:1,allowedInText:!0,argTypes:["color"]},handler(t,e){var{parser:r,breakOnTokenText:n}=t,i=xr(e[0],"color-token").color;r.gullet.macros.set("\\current@color",i);var a=r.parseExpression(!0,n);return{type:"color",mode:r.mode,color:i,body:a}},htmlBuilder:nG,mathmlBuilder:iG});Nt({type:"cr",names:["\\\\"],props:{numArgs:0,numOptionalArgs:0,allowedInText:!0},handler(t,e,r){var{parser:n}=t,i=n.gullet.future().text==="["?n.parseSizeGroup(!0):null,a=!n.settings.displayMode||!n.settings.useStrictBehavior("newLineInDisplayMode","In LaTeX, \\\\ or \\newline does nothing in display mode");return{type:"cr",mode:n.mode,newLine:a,size:i&&xr(i,"size").value}},htmlBuilder(t,e){var r=Be.makeSpan(["mspace"],[],e);return t.newLine&&(r.classes.push("newline"),t.size&&(r.style.marginTop=kt(ti(t.size,e)))),r},mathmlBuilder(t,e){var r=new dt.MathNode("mspace");return t.newLine&&(r.setAttribute("linebreak","newline"),t.size&&r.setAttribute("height",kt(ti(t.size,e)))),r}});L7={"\\global":"\\global","\\long":"\\\\globallong","\\\\globallong":"\\\\globallong","\\def":"\\gdef","\\gdef":"\\gdef","\\edef":"\\xdef","\\xdef":"\\xdef","\\let":"\\\\globallet","\\futurelet":"\\\\globalfuture"},aG=o(t=>{var e=t.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(e))throw new gt("Expected a control sequence",t);return e},"checkControlSequence"),m4e=o(t=>{var e=t.gullet.popToken();return e.text==="="&&(e=t.gullet.popToken(),e.text===" "&&(e=t.gullet.popToken())),e},"getRHS"),sG=o((t,e,r,n)=>{var i=t.gullet.macros.get(r.text);i==null&&(r.noexpand=!0,i={tokens:[r],numArgs:0,unexpandable:!t.gullet.isExpandable(r.text)}),t.gullet.macros.set(e,i,n)},"letCommand");Nt({type:"internal",names:["\\global","\\long","\\\\globallong"],props:{numArgs:0,allowedInText:!0},handler(t){var{parser:e,funcName:r}=t;e.consumeSpaces();var n=e.fetch();if(L7[n.text])return(r==="\\global"||r==="\\\\globallong")&&(n.text=L7[n.text]),xr(e.parseFunction(),"internal");throw new gt("Invalid token after macro prefix",n)}});Nt({type:"internal",names:["\\def","\\gdef","\\edef","\\xdef"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t){var{parser:e,funcName:r}=t,n=e.gullet.popToken(),i=n.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(i))throw new gt("Expected a control sequence",n);for(var a=0,s,l=[[]];e.gullet.future().text!=="{";)if(n=e.gullet.popToken(),n.text==="#"){if(e.gullet.future().text==="{"){s=e.gullet.future(),l[a].push("{");break}if(n=e.gullet.popToken(),!/^[1-9]$/.test(n.text))throw new gt('Invalid argument number "'+n.text+'"');if(parseInt(n.text)!==a+1)throw new gt('Argument number "'+n.text+'" out of order');a++,l.push([])}else{if(n.text==="EOF")throw new gt("Expected a macro definition");l[a].push(n.text)}var{tokens:u}=e.gullet.consumeArg();return s&&u.unshift(s),(r==="\\edef"||r==="\\xdef")&&(u=e.gullet.expandTokens(u),u.reverse()),e.gullet.macros.set(i,{tokens:u,numArgs:a,delimiters:l},r===L7[r]),{type:"internal",mode:e.mode}}});Nt({type:"internal",names:["\\let","\\\\globallet"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t){var{parser:e,funcName:r}=t,n=aG(e.gullet.popToken());e.gullet.consumeSpaces();var i=m4e(e);return sG(e,n,i,r==="\\\\globallet"),{type:"internal",mode:e.mode}}});Nt({type:"internal",names:["\\futurelet","\\\\globalfuture"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t){var{parser:e,funcName:r}=t,n=aG(e.gullet.popToken()),i=e.gullet.popToken(),a=e.gullet.popToken();return sG(e,n,a,r==="\\\\globalfuture"),e.gullet.pushToken(a),e.gullet.pushToken(i),{type:"internal",mode:e.mode}}});Fy=o(function(e,r,n){var i=An.math[e]&&An.math[e].replace,a=P7(i||e,r,n);if(!a)throw new Error("Unsupported symbol "+e+" and font size "+r+".");return a},"getMetrics"),V7=o(function(e,r,n,i){var a=n.havingBaseStyle(r),s=Be.makeSpan(i.concat(a.sizingClasses(n)),[e],n),l=a.sizeMultiplier/n.sizeMultiplier;return s.height*=l,s.depth*=l,s.maxFontSize=a.sizeMultiplier,s},"styleWrap"),oG=o(function(e,r,n){var i=r.havingBaseStyle(n),a=(1-r.sizeMultiplier/i.sizeMultiplier)*r.fontMetrics().axisHeight;e.classes.push("delimcenter"),e.style.top=kt(a),e.height-=a,e.depth+=a},"centerSpan"),g4e=o(function(e,r,n,i,a,s){var l=Be.makeSymbol(e,"Main-Regular",a,i),u=V7(l,r,i,s);return n&&oG(u,i,r),u},"makeSmallDelim"),y4e=o(function(e,r,n,i){return Be.makeSymbol(e,"Size"+r+"-Regular",n,i)},"mathrmSize"),lG=o(function(e,r,n,i,a,s){var l=y4e(e,r,a,i),u=V7(Be.makeSpan(["delimsizing","size"+r],[l],i),tr.TEXT,i,s);return n&&oG(u,i,tr.TEXT),u},"makeLargeDelim"),p7=o(function(e,r,n){var i;r==="Size1-Regular"?i="delim-size1":i="delim-size4";var a=Be.makeSpan(["delimsizinginner",i],[Be.makeSpan([],[Be.makeSymbol(e,r,n)])]);return{type:"elem",elem:a}},"makeGlyphSpan"),m7=o(function(e,r,n){var i=jl["Size4-Regular"][e.charCodeAt(0)]?jl["Size4-Regular"][e.charCodeAt(0)][4]:jl["Size1-Regular"][e.charCodeAt(0)][4],a=new Kl("inner",Sbe(e,Math.round(1e3*r))),s=new ll([a],{width:kt(i),height:kt(r),style:"width:"+kt(i),viewBox:"0 0 "+1e3*i+" "+Math.round(1e3*r),preserveAspectRatio:"xMinYMin"}),l=Be.makeSvgSpan([],[s],n);return l.height=r,l.style.height=kt(r),l.style.width=kt(i),{type:"elem",elem:l}},"makeInner"),R7=.008,o3={type:"kern",size:-1*R7},v4e=["|","\\lvert","\\rvert","\\vert"],x4e=["\\|","\\lVert","\\rVert","\\Vert"],cG=o(function(e,r,n,i,a,s){var l,u,h,f,d="",p=0;l=h=f=e,u=null;var m="Size1-Regular";e==="\\uparrow"?h=f="\u23D0":e==="\\Uparrow"?h=f="\u2016":e==="\\downarrow"?l=h="\u23D0":e==="\\Downarrow"?l=h="\u2016":e==="\\updownarrow"?(l="\\uparrow",h="\u23D0",f="\\downarrow"):e==="\\Updownarrow"?(l="\\Uparrow",h="\u2016",f="\\Downarrow"):Jt.contains(v4e,e)?(h="\u2223",d="vert",p=333):Jt.contains(x4e,e)?(h="\u2225",d="doublevert",p=556):e==="["||e==="\\lbrack"?(l="\u23A1",h="\u23A2",f="\u23A3",m="Size4-Regular",d="lbrack",p=667):e==="]"||e==="\\rbrack"?(l="\u23A4",h="\u23A5",f="\u23A6",m="Size4-Regular",d="rbrack",p=667):e==="\\lfloor"||e==="\u230A"?(h=l="\u23A2",f="\u23A3",m="Size4-Regular",d="lfloor",p=667):e==="\\lceil"||e==="\u2308"?(l="\u23A1",h=f="\u23A2",m="Size4-Regular",d="lceil",p=667):e==="\\rfloor"||e==="\u230B"?(h=l="\u23A5",f="\u23A6",m="Size4-Regular",d="rfloor",p=667):e==="\\rceil"||e==="\u2309"?(l="\u23A4",h=f="\u23A5",m="Size4-Regular",d="rceil",p=667):e==="("||e==="\\lparen"?(l="\u239B",h="\u239C",f="\u239D",m="Size4-Regular",d="lparen",p=875):e===")"||e==="\\rparen"?(l="\u239E",h="\u239F",f="\u23A0",m="Size4-Regular",d="rparen",p=875):e==="\\{"||e==="\\lbrace"?(l="\u23A7",u="\u23A8",f="\u23A9",h="\u23AA",m="Size4-Regular"):e==="\\}"||e==="\\rbrace"?(l="\u23AB",u="\u23AC",f="\u23AD",h="\u23AA",m="Size4-Regular"):e==="\\lgroup"||e==="\u27EE"?(l="\u23A7",f="\u23A9",h="\u23AA",m="Size4-Regular"):e==="\\rgroup"||e==="\u27EF"?(l="\u23AB",f="\u23AD",h="\u23AA",m="Size4-Regular"):e==="\\lmoustache"||e==="\u23B0"?(l="\u23A7",f="\u23AD",h="\u23AA",m="Size4-Regular"):(e==="\\rmoustache"||e==="\u23B1")&&(l="\u23AB",f="\u23A9",h="\u23AA",m="Size4-Regular");var g=Fy(l,m,a),y=g.height+g.depth,v=Fy(h,m,a),x=v.height+v.depth,b=Fy(f,m,a),w=b.height+b.depth,C=0,T=1;if(u!==null){var E=Fy(u,m,a);C=E.height+E.depth,T=2}var A=y+w+C,S=Math.max(0,Math.ceil((r-A)/(T*x))),_=A+S*T*x,I=i.fontMetrics().axisHeight;n&&(I*=i.sizeMultiplier);var D=_/2-I,k=[];if(d.length>0){var L=_-y-w,R=Math.round(_*1e3),O=Cbe(d,Math.round(L*1e3)),M=new Kl(d,O),B=(p/1e3).toFixed(3)+"em",F=(R/1e3).toFixed(3)+"em",P=new ll([M],{width:B,height:F,viewBox:"0 0 "+p+" "+R}),z=Be.makeSvgSpan([],[P],i);z.height=R/1e3,z.style.width=B,z.style.height=F,k.push({type:"elem",elem:z})}else{if(k.push(p7(f,m,a)),k.push(o3),u===null){var $=_-y-w+2*R7;k.push(m7(h,$,i))}else{var H=(_-y-w-C)/2+2*R7;k.push(m7(h,H,i)),k.push(o3),k.push(p7(u,m,a)),k.push(o3),k.push(m7(h,H,i))}k.push(o3),k.push(p7(l,m,a))}var Q=i.havingBaseStyle(tr.TEXT),j=Be.makeVList({positionType:"bottom",positionData:D,children:k},Q);return V7(Be.makeSpan(["delimsizing","mult"],[j],Q),tr.TEXT,i,s)},"makeStackedDelim"),g7=80,y7=.08,v7=o(function(e,r,n,i,a){var s=Ebe(e,i,n),l=new Kl(e,s),u=new ll([l],{width:"400em",height:kt(r),viewBox:"0 0 400000 "+n,preserveAspectRatio:"xMinYMin slice"});return Be.makeSvgSpan(["hide-tail"],[u],a)},"sqrtSvg"),b4e=o(function(e,r){var n=r.havingBaseSizing(),i=dG("\\surd",e*n.sizeMultiplier,fG,n),a=n.sizeMultiplier,s=Math.max(0,r.minRuleThickness-r.fontMetrics().sqrtRuleThickness),l,u=0,h=0,f=0,d;return i.type==="small"?(f=1e3+1e3*s+g7,e<1?a=1:e<1.4&&(a=.7),u=(1+s+y7)/a,h=(1+s)/a,l=v7("sqrtMain",u,f,s,r),l.style.minWidth="0.853em",d=.833/a):i.type==="large"?(f=(1e3+g7)*$y[i.size],h=($y[i.size]+s)/a,u=($y[i.size]+s+y7)/a,l=v7("sqrtSize"+i.size,u,f,s,r),l.style.minWidth="1.02em",d=1/a):(u=e+s+y7,h=e+s,f=Math.floor(1e3*e+s)+g7,l=v7("sqrtTall",u,f,s,r),l.style.minWidth="0.742em",d=1.056),l.height=h,l.style.height=kt(u),{span:l,advanceWidth:d,ruleWidth:(r.fontMetrics().sqrtRuleThickness+s)*a}},"makeSqrtImage"),uG=["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","\u230A","\u230B","\\lceil","\\rceil","\u2308","\u2309","\\surd"],w4e=["\\uparrow","\\downarrow","\\updownarrow","\\Uparrow","\\Downarrow","\\Updownarrow","|","\\|","\\vert","\\Vert","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","\u27EE","\u27EF","\\lmoustache","\\rmoustache","\u23B0","\u23B1"],hG=["<",">","\\langle","\\rangle","/","\\backslash","\\lt","\\gt"],$y=[0,1.2,1.8,2.4,3],T4e=o(function(e,r,n,i,a){if(e==="<"||e==="\\lt"||e==="\u27E8"?e="\\langle":(e===">"||e==="\\gt"||e==="\u27E9")&&(e="\\rangle"),Jt.contains(uG,e)||Jt.contains(hG,e))return lG(e,r,!1,n,i,a);if(Jt.contains(w4e,e))return cG(e,$y[r],!1,n,i,a);throw new gt("Illegal delimiter: '"+e+"'")},"makeSizedDelim"),k4e=[{type:"small",style:tr.SCRIPTSCRIPT},{type:"small",style:tr.SCRIPT},{type:"small",style:tr.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4}],E4e=[{type:"small",style:tr.SCRIPTSCRIPT},{type:"small",style:tr.SCRIPT},{type:"small",style:tr.TEXT},{type:"stack"}],fG=[{type:"small",style:tr.SCRIPTSCRIPT},{type:"small",style:tr.SCRIPT},{type:"small",style:tr.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4},{type:"stack"}],S4e=o(function(e){if(e.type==="small")return"Main-Regular";if(e.type==="large")return"Size"+e.size+"-Regular";if(e.type==="stack")return"Size4-Regular";throw new Error("Add support for delim type '"+e.type+"' here.")},"delimTypeToFont"),dG=o(function(e,r,n,i){for(var a=Math.min(2,3-i.style.size),s=a;sr)return n[s]}return n[n.length-1]},"traverseSequence"),pG=o(function(e,r,n,i,a,s){e==="<"||e==="\\lt"||e==="\u27E8"?e="\\langle":(e===">"||e==="\\gt"||e==="\u27E9")&&(e="\\rangle");var l;Jt.contains(hG,e)?l=k4e:Jt.contains(uG,e)?l=fG:l=E4e;var u=dG(e,r,l,i);return u.type==="small"?g4e(e,u.style,n,i,a,s):u.type==="large"?lG(e,u.size,n,i,a,s):cG(e,r,n,i,a,s)},"makeCustomSizedDelim"),C4e=o(function(e,r,n,i,a,s){var l=i.fontMetrics().axisHeight*i.sizeMultiplier,u=901,h=5/i.fontMetrics().ptPerEm,f=Math.max(r-l,n+l),d=Math.max(f/500*u,2*f-h);return pG(e,d,!0,i,a,s)},"makeLeftRightDelim"),ou={sqrtImage:b4e,sizedDelim:T4e,sizeToMaxHeight:$y,customSizedDelim:pG,leftRightDelim:C4e},xz={"\\bigl":{mclass:"mopen",size:1},"\\Bigl":{mclass:"mopen",size:2},"\\biggl":{mclass:"mopen",size:3},"\\Biggl":{mclass:"mopen",size:4},"\\bigr":{mclass:"mclose",size:1},"\\Bigr":{mclass:"mclose",size:2},"\\biggr":{mclass:"mclose",size:3},"\\Biggr":{mclass:"mclose",size:4},"\\bigm":{mclass:"mrel",size:1},"\\Bigm":{mclass:"mrel",size:2},"\\biggm":{mclass:"mrel",size:3},"\\Biggm":{mclass:"mrel",size:4},"\\big":{mclass:"mord",size:1},"\\Big":{mclass:"mord",size:2},"\\bigg":{mclass:"mord",size:3},"\\Bigg":{mclass:"mord",size:4}},A4e=["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","\u230A","\u230B","\\lceil","\\rceil","\u2308","\u2309","<",">","\\langle","\u27E8","\\rangle","\u27E9","\\lt","\\gt","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","\u27EE","\u27EF","\\lmoustache","\\rmoustache","\u23B0","\u23B1","/","\\backslash","|","\\vert","\\|","\\Vert","\\uparrow","\\Uparrow","\\downarrow","\\Downarrow","\\updownarrow","\\Updownarrow","."];o(k3,"checkDelimiter");Nt({type:"delimsizing",names:["\\bigl","\\Bigl","\\biggl","\\Biggl","\\bigr","\\Bigr","\\biggr","\\Biggr","\\bigm","\\Bigm","\\biggm","\\Biggm","\\big","\\Big","\\bigg","\\Bigg"],props:{numArgs:1,argTypes:["primitive"]},handler:o((t,e)=>{var r=k3(e[0],t);return{type:"delimsizing",mode:t.parser.mode,size:xz[t.funcName].size,mclass:xz[t.funcName].mclass,delim:r.text}},"handler"),htmlBuilder:o((t,e)=>t.delim==="."?Be.makeSpan([t.mclass]):ou.sizedDelim(t.delim,t.size,e,t.mode,[t.mclass]),"htmlBuilder"),mathmlBuilder:o(t=>{var e=[];t.delim!=="."&&e.push(Co(t.delim,t.mode));var r=new dt.MathNode("mo",e);t.mclass==="mopen"||t.mclass==="mclose"?r.setAttribute("fence","true"):r.setAttribute("fence","false"),r.setAttribute("stretchy","true");var n=kt(ou.sizeToMaxHeight[t.size]);return r.setAttribute("minsize",n),r.setAttribute("maxsize",n),r},"mathmlBuilder")});o(bz,"assertParsed");Nt({type:"leftright-right",names:["\\right"],props:{numArgs:1,primitive:!0},handler:o((t,e)=>{var r=t.parser.gullet.macros.get("\\current@color");if(r&&typeof r!="string")throw new gt("\\current@color set to non-string in \\right");return{type:"leftright-right",mode:t.parser.mode,delim:k3(e[0],t).text,color:r}},"handler")});Nt({type:"leftright",names:["\\left"],props:{numArgs:1,primitive:!0},handler:o((t,e)=>{var r=k3(e[0],t),n=t.parser;++n.leftrightDepth;var i=n.parseExpression(!1);--n.leftrightDepth,n.expect("\\right",!1);var a=xr(n.parseFunction(),"leftright-right");return{type:"leftright",mode:n.mode,body:i,left:r.text,right:a.delim,rightColor:a.color}},"handler"),htmlBuilder:o((t,e)=>{bz(t);for(var r=Pi(t.body,e,!0,["mopen","mclose"]),n=0,i=0,a=!1,s=0;s{bz(t);var r=ks(t.body,e);if(t.left!=="."){var n=new dt.MathNode("mo",[Co(t.left,t.mode)]);n.setAttribute("fence","true"),r.unshift(n)}if(t.right!=="."){var i=new dt.MathNode("mo",[Co(t.right,t.mode)]);i.setAttribute("fence","true"),t.rightColor&&i.setAttribute("mathcolor",t.rightColor),r.push(i)}return F7(r)},"mathmlBuilder")});Nt({type:"middle",names:["\\middle"],props:{numArgs:1,primitive:!0},handler:o((t,e)=>{var r=k3(e[0],t);if(!t.parser.leftrightDepth)throw new gt("\\middle without preceding \\left",r);return{type:"middle",mode:t.parser.mode,delim:r.text}},"handler"),htmlBuilder:o((t,e)=>{var r;if(t.delim===".")r=Hy(e,[]);else{r=ou.sizedDelim(t.delim,1,e,t.mode,[]);var n={delim:t.delim,options:e};r.isMiddle=n}return r},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=t.delim==="\\vert"||t.delim==="|"?Co("|","text"):Co(t.delim,t.mode),n=new dt.MathNode("mo",[r]);return n.setAttribute("fence","true"),n.setAttribute("lspace","0.05em"),n.setAttribute("rspace","0.05em"),n},"mathmlBuilder")});U7=o((t,e)=>{var r=Be.wrapFragment(Fr(t.body,e),e),n=t.label.slice(1),i=e.sizeMultiplier,a,s=0,l=Jt.isCharacterBox(t.body);if(n==="sout")a=Be.makeSpan(["stretchy","sout"]),a.height=e.fontMetrics().defaultRuleThickness/i,s=-.5*e.fontMetrics().xHeight;else if(n==="phase"){var u=ti({number:.6,unit:"pt"},e),h=ti({number:.35,unit:"ex"},e),f=e.havingBaseSizing();i=i/f.sizeMultiplier;var d=r.height+r.depth+u+h;r.style.paddingLeft=kt(d/2+u);var p=Math.floor(1e3*d*i),m=Tbe(p),g=new ll([new Kl("phase",m)],{width:"400em",height:kt(p/1e3),viewBox:"0 0 400000 "+p,preserveAspectRatio:"xMinYMin slice"});a=Be.makeSvgSpan(["hide-tail"],[g],e),a.style.height=kt(d),s=r.depth+u+h}else{/cancel/.test(n)?l||r.classes.push("cancel-pad"):n==="angl"?r.classes.push("anglpad"):r.classes.push("boxpad");var y=0,v=0,x=0;/box/.test(n)?(x=Math.max(e.fontMetrics().fboxrule,e.minRuleThickness),y=e.fontMetrics().fboxsep+(n==="colorbox"?0:x),v=y):n==="angl"?(x=Math.max(e.fontMetrics().defaultRuleThickness,e.minRuleThickness),y=4*x,v=Math.max(0,.25-r.depth)):(y=l?.2:0,v=y),a=cu.encloseSpan(r,n,y,v,e),/fbox|boxed|fcolorbox/.test(n)?(a.style.borderStyle="solid",a.style.borderWidth=kt(x)):n==="angl"&&x!==.049&&(a.style.borderTopWidth=kt(x),a.style.borderRightWidth=kt(x)),s=r.depth+v,t.backgroundColor&&(a.style.backgroundColor=t.backgroundColor,t.borderColor&&(a.style.borderColor=t.borderColor))}var b;if(t.backgroundColor)b=Be.makeVList({positionType:"individualShift",children:[{type:"elem",elem:a,shift:s},{type:"elem",elem:r,shift:0}]},e);else{var w=/cancel|phase/.test(n)?["svg-align"]:[];b=Be.makeVList({positionType:"individualShift",children:[{type:"elem",elem:r,shift:0},{type:"elem",elem:a,shift:s,wrapperClasses:w}]},e)}return/cancel/.test(n)&&(b.height=r.height,b.depth=r.depth),/cancel/.test(n)&&!l?Be.makeSpan(["mord","cancel-lap"],[b],e):Be.makeSpan(["mord"],[b],e)},"htmlBuilder$7"),H7=o((t,e)=>{var r=0,n=new dt.MathNode(t.label.indexOf("colorbox")>-1?"mpadded":"menclose",[yn(t.body,e)]);switch(t.label){case"\\cancel":n.setAttribute("notation","updiagonalstrike");break;case"\\bcancel":n.setAttribute("notation","downdiagonalstrike");break;case"\\phase":n.setAttribute("notation","phasorangle");break;case"\\sout":n.setAttribute("notation","horizontalstrike");break;case"\\fbox":n.setAttribute("notation","box");break;case"\\angl":n.setAttribute("notation","actuarial");break;case"\\fcolorbox":case"\\colorbox":if(r=e.fontMetrics().fboxsep*e.fontMetrics().ptPerEm,n.setAttribute("width","+"+2*r+"pt"),n.setAttribute("height","+"+2*r+"pt"),n.setAttribute("lspace",r+"pt"),n.setAttribute("voffset",r+"pt"),t.label==="\\fcolorbox"){var i=Math.max(e.fontMetrics().fboxrule,e.minRuleThickness);n.setAttribute("style","border: "+i+"em solid "+String(t.borderColor))}break;case"\\xcancel":n.setAttribute("notation","updiagonalstrike downdiagonalstrike");break}return t.backgroundColor&&n.setAttribute("mathbackground",t.backgroundColor),n},"mathmlBuilder$6");Nt({type:"enclose",names:["\\colorbox"],props:{numArgs:2,allowedInText:!0,argTypes:["color","text"]},handler(t,e,r){var{parser:n,funcName:i}=t,a=xr(e[0],"color-token").color,s=e[1];return{type:"enclose",mode:n.mode,label:i,backgroundColor:a,body:s}},htmlBuilder:U7,mathmlBuilder:H7});Nt({type:"enclose",names:["\\fcolorbox"],props:{numArgs:3,allowedInText:!0,argTypes:["color","color","text"]},handler(t,e,r){var{parser:n,funcName:i}=t,a=xr(e[0],"color-token").color,s=xr(e[1],"color-token").color,l=e[2];return{type:"enclose",mode:n.mode,label:i,backgroundColor:s,borderColor:a,body:l}},htmlBuilder:U7,mathmlBuilder:H7});Nt({type:"enclose",names:["\\fbox"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!0},handler(t,e){var{parser:r}=t;return{type:"enclose",mode:r.mode,label:"\\fbox",body:e[0]}}});Nt({type:"enclose",names:["\\cancel","\\bcancel","\\xcancel","\\sout","\\phase"],props:{numArgs:1},handler(t,e){var{parser:r,funcName:n}=t,i=e[0];return{type:"enclose",mode:r.mode,label:n,body:i}},htmlBuilder:U7,mathmlBuilder:H7});Nt({type:"enclose",names:["\\angl"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!1},handler(t,e){var{parser:r}=t;return{type:"enclose",mode:r.mode,label:"\\angl",body:e[0]}}});mG={};o(Ql,"defineEnvironment");gG={};o(fe,"defineMacro");o(wz,"getHLines");E3=o(t=>{var e=t.parser.settings;if(!e.displayMode)throw new gt("{"+t.envName+"} can be used only in display mode.")},"validateAmsEnvironmentContext");o(W7,"getAutoTag");o(ph,"parseArray");o(q7,"dCellStyle");Zl=o(function(e,r){var n,i,a=e.body.length,s=e.hLinesBeforeRow,l=0,u=new Array(a),h=[],f=Math.max(r.fontMetrics().arrayRuleWidth,r.minRuleThickness),d=1/r.fontMetrics().ptPerEm,p=5*d;if(e.colSeparationType&&e.colSeparationType==="small"){var m=r.havingStyle(tr.SCRIPT).sizeMultiplier;p=.2778*(m/r.sizeMultiplier)}var g=e.colSeparationType==="CD"?ti({number:3,unit:"ex"},r):12*d,y=3*d,v=e.arraystretch*g,x=.7*v,b=.3*v,w=0;function C(ae){for(var Oe=0;Oe0&&(w+=.25),h.push({pos:w,isDashed:ae[Oe]})}for(o(C,"setHLinePos"),C(s[0]),n=0;n0&&(D+=b,Aae))for(n=0;n=l)){var le=void 0;(i>0||e.hskipBeforeAndAfter)&&(le=Jt.deflt(H.pregap,p),le!==0&&(O=Be.makeSpan(["arraycolsep"],[]),O.style.width=kt(le),R.push(O)));var he=[];for(n=0;n0){for(var J=Be.makeLineSpan("hline",r,f),se=Be.makeLineSpan("hdashline",r,f),ue=[{type:"elem",elem:u,shift:0}];h.length>0;){var Z=h.pop(),Se=Z.pos-k;Z.isDashed?ue.push({type:"elem",elem:se,shift:Se}):ue.push({type:"elem",elem:J,shift:Se})}u=Be.makeVList({positionType:"individualShift",children:ue},r)}if(B.length===0)return Be.makeSpan(["mord"],[u],r);var ce=Be.makeVList({positionType:"individualShift",children:B},r);return ce=Be.makeSpan(["tag"],[ce],r),Be.makeFragment([u,ce])},"htmlBuilder"),_4e={c:"center ",l:"left ",r:"right "},Jl=o(function(e,r){for(var n=[],i=new dt.MathNode("mtd",[],["mtr-glue"]),a=new dt.MathNode("mtd",[],["mml-eqn-num"]),s=0;s0){var g=e.cols,y="",v=!1,x=0,b=g.length;g[0].type==="separator"&&(p+="top ",x=1),g[g.length-1].type==="separator"&&(p+="bottom ",b-=1);for(var w=x;w0?"left ":"",p+=S[S.length-1].length>0?"right ":"";for(var _=1;_-1?"alignat":"align",a=e.envName==="split",s=ph(e.parser,{cols:n,addJot:!0,autoTag:a?void 0:W7(e.envName),emptySingleRow:!0,colSeparationType:i,maxNumCols:a?2:void 0,leqno:e.parser.settings.leqno},"display"),l,u=0,h={type:"ordgroup",mode:e.mode,body:[]};if(r[0]&&r[0].type==="ordgroup"){for(var f="",d=0;d0&&m&&(v=1),n[g]={type:"align",align:y,pregap:v,postgap:0}}return s.colSeparationType=m?"align":"alignat",s},"alignedHandler");Ql({type:"array",names:["array","darray"],props:{numArgs:1},handler(t,e){var r=w3(e[0]),n=r?[e[0]]:xr(e[0],"ordgroup").body,i=n.map(function(s){var l=z7(s),u=l.text;if("lcr".indexOf(u)!==-1)return{type:"align",align:u};if(u==="|")return{type:"separator",separator:"|"};if(u===":")return{type:"separator",separator:":"};throw new gt("Unknown column alignment: "+u,s)}),a={cols:i,hskipBeforeAndAfter:!0,maxNumCols:i.length};return ph(t.parser,a,q7(t.envName))},htmlBuilder:Zl,mathmlBuilder:Jl});Ql({type:"array",names:["matrix","pmatrix","bmatrix","Bmatrix","vmatrix","Vmatrix","matrix*","pmatrix*","bmatrix*","Bmatrix*","vmatrix*","Vmatrix*"],props:{numArgs:0},handler(t){var e={matrix:null,pmatrix:["(",")"],bmatrix:["[","]"],Bmatrix:["\\{","\\}"],vmatrix:["|","|"],Vmatrix:["\\Vert","\\Vert"]}[t.envName.replace("*","")],r="c",n={hskipBeforeAndAfter:!1,cols:[{type:"align",align:r}]};if(t.envName.charAt(t.envName.length-1)==="*"){var i=t.parser;if(i.consumeSpaces(),i.fetch().text==="["){if(i.consume(),i.consumeSpaces(),r=i.fetch().text,"lcr".indexOf(r)===-1)throw new gt("Expected l or c or r",i.nextToken);i.consume(),i.consumeSpaces(),i.expect("]"),i.consume(),n.cols=[{type:"align",align:r}]}}var a=ph(t.parser,n,q7(t.envName)),s=Math.max(0,...a.body.map(l=>l.length));return a.cols=new Array(s).fill({type:"align",align:r}),e?{type:"leftright",mode:t.mode,body:[a],left:e[0],right:e[1],rightColor:void 0}:a},htmlBuilder:Zl,mathmlBuilder:Jl});Ql({type:"array",names:["smallmatrix"],props:{numArgs:0},handler(t){var e={arraystretch:.5},r=ph(t.parser,e,"script");return r.colSeparationType="small",r},htmlBuilder:Zl,mathmlBuilder:Jl});Ql({type:"array",names:["subarray"],props:{numArgs:1},handler(t,e){var r=w3(e[0]),n=r?[e[0]]:xr(e[0],"ordgroup").body,i=n.map(function(s){var l=z7(s),u=l.text;if("lc".indexOf(u)!==-1)return{type:"align",align:u};throw new gt("Unknown column alignment: "+u,s)});if(i.length>1)throw new gt("{subarray} can contain only one column");var a={cols:i,hskipBeforeAndAfter:!1,arraystretch:.5};if(a=ph(t.parser,a,"script"),a.body.length>0&&a.body[0].length>1)throw new gt("{subarray} can contain only one column");return a},htmlBuilder:Zl,mathmlBuilder:Jl});Ql({type:"array",names:["cases","dcases","rcases","drcases"],props:{numArgs:0},handler(t){var e={arraystretch:1.2,cols:[{type:"align",align:"l",pregap:0,postgap:1},{type:"align",align:"l",pregap:0,postgap:0}]},r=ph(t.parser,e,q7(t.envName));return{type:"leftright",mode:t.mode,body:[r],left:t.envName.indexOf("r")>-1?".":"\\{",right:t.envName.indexOf("r")>-1?"\\}":".",rightColor:void 0}},htmlBuilder:Zl,mathmlBuilder:Jl});Ql({type:"array",names:["align","align*","aligned","split"],props:{numArgs:0},handler:yG,htmlBuilder:Zl,mathmlBuilder:Jl});Ql({type:"array",names:["gathered","gather","gather*"],props:{numArgs:0},handler(t){Jt.contains(["gather","gather*"],t.envName)&&E3(t);var e={cols:[{type:"align",align:"c"}],addJot:!0,colSeparationType:"gather",autoTag:W7(t.envName),emptySingleRow:!0,leqno:t.parser.settings.leqno};return ph(t.parser,e,"display")},htmlBuilder:Zl,mathmlBuilder:Jl});Ql({type:"array",names:["alignat","alignat*","alignedat"],props:{numArgs:1},handler:yG,htmlBuilder:Zl,mathmlBuilder:Jl});Ql({type:"array",names:["equation","equation*"],props:{numArgs:0},handler(t){E3(t);var e={autoTag:W7(t.envName),emptySingleRow:!0,singleRow:!0,maxNumCols:1,leqno:t.parser.settings.leqno};return ph(t.parser,e,"display")},htmlBuilder:Zl,mathmlBuilder:Jl});Ql({type:"array",names:["CD"],props:{numArgs:0},handler(t){return E3(t),p4e(t.parser)},htmlBuilder:Zl,mathmlBuilder:Jl});fe("\\nonumber","\\gdef\\@eqnsw{0}");fe("\\notag","\\nonumber");Nt({type:"text",names:["\\hline","\\hdashline"],props:{numArgs:0,allowedInText:!0,allowedInMath:!0},handler(t,e){throw new gt(t.funcName+" valid only within array environment")}});Tz=mG;Nt({type:"environment",names:["\\begin","\\end"],props:{numArgs:1,argTypes:["text"]},handler(t,e){var{parser:r,funcName:n}=t,i=e[0];if(i.type!=="ordgroup")throw new gt("Invalid environment name",i);for(var a="",s=0;s{var r=t.font,n=e.withFont(r);return Fr(t.body,n)},"htmlBuilder$5"),xG=o((t,e)=>{var r=t.font,n=e.withFont(r);return yn(t.body,n)},"mathmlBuilder$4"),kz={"\\Bbb":"\\mathbb","\\bold":"\\mathbf","\\frak":"\\mathfrak","\\bm":"\\boldsymbol"};Nt({type:"font",names:["\\mathrm","\\mathit","\\mathbf","\\mathnormal","\\mathbb","\\mathcal","\\mathfrak","\\mathscr","\\mathsf","\\mathtt","\\Bbb","\\bold","\\frak"],props:{numArgs:1,allowedInArgument:!0},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=g3(e[0]),a=n;return a in kz&&(a=kz[a]),{type:"font",mode:r.mode,font:a.slice(1),body:i}},"handler"),htmlBuilder:vG,mathmlBuilder:xG});Nt({type:"mclass",names:["\\boldsymbol","\\bm"],props:{numArgs:1},handler:o((t,e)=>{var{parser:r}=t,n=e[0],i=Jt.isCharacterBox(n);return{type:"mclass",mode:r.mode,mclass:T3(n),body:[{type:"font",mode:r.mode,font:"boldsymbol",body:n}],isCharacterBox:i}},"handler")});Nt({type:"font",names:["\\rm","\\sf","\\tt","\\bf","\\it","\\cal"],props:{numArgs:0,allowedInText:!0},handler:o((t,e)=>{var{parser:r,funcName:n,breakOnTokenText:i}=t,{mode:a}=r,s=r.parseExpression(!0,i),l="math"+n.slice(1);return{type:"font",mode:a,font:l,body:{type:"ordgroup",mode:r.mode,body:s}}},"handler"),htmlBuilder:vG,mathmlBuilder:xG});bG=o((t,e)=>{var r=e;return t==="display"?r=r.id>=tr.SCRIPT.id?r.text():tr.DISPLAY:t==="text"&&r.size===tr.DISPLAY.size?r=tr.TEXT:t==="script"?r=tr.SCRIPT:t==="scriptscript"&&(r=tr.SCRIPTSCRIPT),r},"adjustStyle"),Y7=o((t,e)=>{var r=bG(t.size,e.style),n=r.fracNum(),i=r.fracDen(),a;a=e.havingStyle(n);var s=Fr(t.numer,a,e);if(t.continued){var l=8.5/e.fontMetrics().ptPerEm,u=3.5/e.fontMetrics().ptPerEm;s.height=s.height0?g=3*p:g=7*p,y=e.fontMetrics().denom1):(d>0?(m=e.fontMetrics().num2,g=p):(m=e.fontMetrics().num3,g=3*p),y=e.fontMetrics().denom2);var v;if(f){var b=e.fontMetrics().axisHeight;m-s.depth-(b+.5*d){var r=new dt.MathNode("mfrac",[yn(t.numer,e),yn(t.denom,e)]);if(!t.hasBarLine)r.setAttribute("linethickness","0px");else if(t.barSize){var n=ti(t.barSize,e);r.setAttribute("linethickness",kt(n))}var i=bG(t.size,e.style);if(i.size!==e.style.size){r=new dt.MathNode("mstyle",[r]);var a=i.size===tr.DISPLAY.size?"true":"false";r.setAttribute("displaystyle",a),r.setAttribute("scriptlevel","0")}if(t.leftDelim!=null||t.rightDelim!=null){var s=[];if(t.leftDelim!=null){var l=new dt.MathNode("mo",[new dt.TextNode(t.leftDelim.replace("\\",""))]);l.setAttribute("fence","true"),s.push(l)}if(s.push(r),t.rightDelim!=null){var u=new dt.MathNode("mo",[new dt.TextNode(t.rightDelim.replace("\\",""))]);u.setAttribute("fence","true"),s.push(u)}return F7(s)}return r},"mathmlBuilder$3");Nt({type:"genfrac",names:["\\dfrac","\\frac","\\tfrac","\\dbinom","\\binom","\\tbinom","\\\\atopfrac","\\\\bracefrac","\\\\brackfrac"],props:{numArgs:2,allowedInArgument:!0},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0],a=e[1],s,l=null,u=null,h="auto";switch(n){case"\\dfrac":case"\\frac":case"\\tfrac":s=!0;break;case"\\\\atopfrac":s=!1;break;case"\\dbinom":case"\\binom":case"\\tbinom":s=!1,l="(",u=")";break;case"\\\\bracefrac":s=!1,l="\\{",u="\\}";break;case"\\\\brackfrac":s=!1,l="[",u="]";break;default:throw new Error("Unrecognized genfrac command")}switch(n){case"\\dfrac":case"\\dbinom":h="display";break;case"\\tfrac":case"\\tbinom":h="text";break}return{type:"genfrac",mode:r.mode,continued:!1,numer:i,denom:a,hasBarLine:s,leftDelim:l,rightDelim:u,size:h,barSize:null}},"handler"),htmlBuilder:Y7,mathmlBuilder:X7});Nt({type:"genfrac",names:["\\cfrac"],props:{numArgs:2},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0],a=e[1];return{type:"genfrac",mode:r.mode,continued:!0,numer:i,denom:a,hasBarLine:!0,leftDelim:null,rightDelim:null,size:"display",barSize:null}},"handler")});Nt({type:"infix",names:["\\over","\\choose","\\atop","\\brace","\\brack"],props:{numArgs:0,infix:!0},handler(t){var{parser:e,funcName:r,token:n}=t,i;switch(r){case"\\over":i="\\frac";break;case"\\choose":i="\\binom";break;case"\\atop":i="\\\\atopfrac";break;case"\\brace":i="\\\\bracefrac";break;case"\\brack":i="\\\\brackfrac";break;default:throw new Error("Unrecognized infix genfrac command")}return{type:"infix",mode:e.mode,replaceWith:i,token:n}}});Ez=["display","text","script","scriptscript"],Sz=o(function(e){var r=null;return e.length>0&&(r=e,r=r==="."?null:r),r},"delimFromValue");Nt({type:"genfrac",names:["\\genfrac"],props:{numArgs:6,allowedInArgument:!0,argTypes:["math","math","size","text","math","math"]},handler(t,e){var{parser:r}=t,n=e[4],i=e[5],a=g3(e[0]),s=a.type==="atom"&&a.family==="open"?Sz(a.text):null,l=g3(e[1]),u=l.type==="atom"&&l.family==="close"?Sz(l.text):null,h=xr(e[2],"size"),f,d=null;h.isBlank?f=!0:(d=h.value,f=d.number>0);var p="auto",m=e[3];if(m.type==="ordgroup"){if(m.body.length>0){var g=xr(m.body[0],"textord");p=Ez[Number(g.text)]}}else m=xr(m,"textord"),p=Ez[Number(m.text)];return{type:"genfrac",mode:r.mode,numer:n,denom:i,continued:!1,hasBarLine:f,barSize:d,leftDelim:s,rightDelim:u,size:p}},htmlBuilder:Y7,mathmlBuilder:X7});Nt({type:"infix",names:["\\above"],props:{numArgs:1,argTypes:["size"],infix:!0},handler(t,e){var{parser:r,funcName:n,token:i}=t;return{type:"infix",mode:r.mode,replaceWith:"\\\\abovefrac",size:xr(e[0],"size").value,token:i}}});Nt({type:"genfrac",names:["\\\\abovefrac"],props:{numArgs:3,argTypes:["math","size","math"]},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0],a=obe(xr(e[1],"infix").size),s=e[2],l=a.number>0;return{type:"genfrac",mode:r.mode,numer:i,denom:s,continued:!1,hasBarLine:l,barSize:a,leftDelim:null,rightDelim:null,size:"auto"}},"handler"),htmlBuilder:Y7,mathmlBuilder:X7});wG=o((t,e)=>{var r=e.style,n,i;t.type==="supsub"?(n=t.sup?Fr(t.sup,e.havingStyle(r.sup()),e):Fr(t.sub,e.havingStyle(r.sub()),e),i=xr(t.base,"horizBrace")):i=xr(t,"horizBrace");var a=Fr(i.base,e.havingBaseStyle(tr.DISPLAY)),s=cu.svgSpan(i,e),l;if(i.isOver?(l=Be.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"kern",size:.1},{type:"elem",elem:s}]},e),l.children[0].children[0].children[1].classes.push("svg-align")):(l=Be.makeVList({positionType:"bottom",positionData:a.depth+.1+s.height,children:[{type:"elem",elem:s},{type:"kern",size:.1},{type:"elem",elem:a}]},e),l.children[0].children[0].children[0].classes.push("svg-align")),n){var u=Be.makeSpan(["mord",i.isOver?"mover":"munder"],[l],e);i.isOver?l=Be.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:u},{type:"kern",size:.2},{type:"elem",elem:n}]},e):l=Be.makeVList({positionType:"bottom",positionData:u.depth+.2+n.height+n.depth,children:[{type:"elem",elem:n},{type:"kern",size:.2},{type:"elem",elem:u}]},e)}return Be.makeSpan(["mord",i.isOver?"mover":"munder"],[l],e)},"htmlBuilder$3"),D4e=o((t,e)=>{var r=cu.mathMLnode(t.label);return new dt.MathNode(t.isOver?"mover":"munder",[yn(t.base,e),r])},"mathmlBuilder$2");Nt({type:"horizBrace",names:["\\overbrace","\\underbrace"],props:{numArgs:1},handler(t,e){var{parser:r,funcName:n}=t;return{type:"horizBrace",mode:r.mode,label:n,isOver:/^\\over/.test(n),base:e[0]}},htmlBuilder:wG,mathmlBuilder:D4e});Nt({type:"href",names:["\\href"],props:{numArgs:2,argTypes:["url","original"],allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[1],i=xr(e[0],"url").url;return r.settings.isTrusted({command:"\\href",url:i})?{type:"href",mode:r.mode,href:i,body:di(n)}:r.formatUnsupportedCmd("\\href")},"handler"),htmlBuilder:o((t,e)=>{var r=Pi(t.body,e,!1);return Be.makeAnchor(t.href,[],r,e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=dh(t.body,e);return r instanceof ws||(r=new ws("mrow",[r])),r.setAttribute("href",t.href),r},"mathmlBuilder")});Nt({type:"href",names:["\\url"],props:{numArgs:1,argTypes:["url"],allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=xr(e[0],"url").url;if(!r.settings.isTrusted({command:"\\url",url:n}))return r.formatUnsupportedCmd("\\url");for(var i=[],a=0;a{var{parser:r,funcName:n,token:i}=t,a=xr(e[0],"raw").string,s=e[1];r.settings.strict&&r.settings.reportNonstrict("htmlExtension","HTML extension is disabled on strict mode");var l,u={};switch(n){case"\\htmlClass":u.class=a,l={command:"\\htmlClass",class:a};break;case"\\htmlId":u.id=a,l={command:"\\htmlId",id:a};break;case"\\htmlStyle":u.style=a,l={command:"\\htmlStyle",style:a};break;case"\\htmlData":{for(var h=a.split(","),f=0;f{var r=Pi(t.body,e,!1),n=["enclosing"];t.attributes.class&&n.push(...t.attributes.class.trim().split(/\s+/));var i=Be.makeSpan(n,r,e);for(var a in t.attributes)a!=="class"&&t.attributes.hasOwnProperty(a)&&i.setAttribute(a,t.attributes[a]);return i},"htmlBuilder"),mathmlBuilder:o((t,e)=>dh(t.body,e),"mathmlBuilder")});Nt({type:"htmlmathml",names:["\\html@mathml"],props:{numArgs:2,allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t;return{type:"htmlmathml",mode:r.mode,html:di(e[0]),mathml:di(e[1])}},"handler"),htmlBuilder:o((t,e)=>{var r=Pi(t.html,e,!1);return Be.makeFragment(r)},"htmlBuilder"),mathmlBuilder:o((t,e)=>dh(t.mathml,e),"mathmlBuilder")});x7=o(function(e){if(/^[-+]? *(\d+(\.\d*)?|\.\d+)$/.test(e))return{number:+e,unit:"bp"};var r=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(e);if(!r)throw new gt("Invalid size: '"+e+"' in \\includegraphics");var n={number:+(r[1]+r[2]),unit:r[3]};if(!zz(n))throw new gt("Invalid unit: '"+n.unit+"' in \\includegraphics.");return n},"sizeData");Nt({type:"includegraphics",names:["\\includegraphics"],props:{numArgs:1,numOptionalArgs:1,argTypes:["raw","url"],allowedInText:!1},handler:o((t,e,r)=>{var{parser:n}=t,i={number:0,unit:"em"},a={number:.9,unit:"em"},s={number:0,unit:"em"},l="";if(r[0])for(var u=xr(r[0],"raw").string,h=u.split(","),f=0;f{var r=ti(t.height,e),n=0;t.totalheight.number>0&&(n=ti(t.totalheight,e)-r);var i=0;t.width.number>0&&(i=ti(t.width,e));var a={height:kt(r+n)};i>0&&(a.width=kt(i)),n>0&&(a.verticalAlign=kt(-n));var s=new S7(t.src,t.alt,a);return s.height=r,s.depth=n,s},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=new dt.MathNode("mglyph",[]);r.setAttribute("alt",t.alt);var n=ti(t.height,e),i=0;if(t.totalheight.number>0&&(i=ti(t.totalheight,e)-n,r.setAttribute("valign",kt(-i))),r.setAttribute("height",kt(n+i)),t.width.number>0){var a=ti(t.width,e);r.setAttribute("width",kt(a))}return r.setAttribute("src",t.src),r},"mathmlBuilder")});Nt({type:"kern",names:["\\kern","\\mkern","\\hskip","\\mskip"],props:{numArgs:1,argTypes:["size"],primitive:!0,allowedInText:!0},handler(t,e){var{parser:r,funcName:n}=t,i=xr(e[0],"size");if(r.settings.strict){var a=n[1]==="m",s=i.value.unit==="mu";a?(s||r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" supports only mu units, "+("not "+i.value.unit+" units")),r.mode!=="math"&&r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" works only in math mode")):s&&r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" doesn't support mu units")}return{type:"kern",mode:r.mode,dimension:i.value}},htmlBuilder(t,e){return Be.makeGlue(t.dimension,e)},mathmlBuilder(t,e){var r=ti(t.dimension,e);return new dt.SpaceNode(r)}});Nt({type:"lap",names:["\\mathllap","\\mathrlap","\\mathclap"],props:{numArgs:1,allowedInText:!0},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0];return{type:"lap",mode:r.mode,alignment:n.slice(5),body:i}},"handler"),htmlBuilder:o((t,e)=>{var r;t.alignment==="clap"?(r=Be.makeSpan([],[Fr(t.body,e)]),r=Be.makeSpan(["inner"],[r],e)):r=Be.makeSpan(["inner"],[Fr(t.body,e)]);var n=Be.makeSpan(["fix"],[]),i=Be.makeSpan([t.alignment],[r,n],e),a=Be.makeSpan(["strut"]);return a.style.height=kt(i.height+i.depth),i.depth&&(a.style.verticalAlign=kt(-i.depth)),i.children.unshift(a),i=Be.makeSpan(["thinbox"],[i],e),Be.makeSpan(["mord","vbox"],[i],e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=new dt.MathNode("mpadded",[yn(t.body,e)]);if(t.alignment!=="rlap"){var n=t.alignment==="llap"?"-1":"-0.5";r.setAttribute("lspace",n+"width")}return r.setAttribute("width","0px"),r},"mathmlBuilder")});Nt({type:"styling",names:["\\(","$"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(t,e){var{funcName:r,parser:n}=t,i=n.mode;n.switchMode("math");var a=r==="\\("?"\\)":"$",s=n.parseExpression(!1,a);return n.expect(a),n.switchMode(i),{type:"styling",mode:n.mode,style:"text",body:s}}});Nt({type:"text",names:["\\)","\\]"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(t,e){throw new gt("Mismatched "+t.funcName)}});Cz=o((t,e)=>{switch(e.style.size){case tr.DISPLAY.size:return t.display;case tr.TEXT.size:return t.text;case tr.SCRIPT.size:return t.script;case tr.SCRIPTSCRIPT.size:return t.scriptscript;default:return t.text}},"chooseMathStyle");Nt({type:"mathchoice",names:["\\mathchoice"],props:{numArgs:4,primitive:!0},handler:o((t,e)=>{var{parser:r}=t;return{type:"mathchoice",mode:r.mode,display:di(e[0]),text:di(e[1]),script:di(e[2]),scriptscript:di(e[3])}},"handler"),htmlBuilder:o((t,e)=>{var r=Cz(t,e),n=Pi(r,e,!1);return Be.makeFragment(n)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=Cz(t,e);return dh(r,e)},"mathmlBuilder")});TG=o((t,e,r,n,i,a,s)=>{t=Be.makeSpan([],[t]);var l=r&&Jt.isCharacterBox(r),u,h;if(e){var f=Fr(e,n.havingStyle(i.sup()),n);h={elem:f,kern:Math.max(n.fontMetrics().bigOpSpacing1,n.fontMetrics().bigOpSpacing3-f.depth)}}if(r){var d=Fr(r,n.havingStyle(i.sub()),n);u={elem:d,kern:Math.max(n.fontMetrics().bigOpSpacing2,n.fontMetrics().bigOpSpacing4-d.height)}}var p;if(h&&u){var m=n.fontMetrics().bigOpSpacing5+u.elem.height+u.elem.depth+u.kern+t.depth+s;p=Be.makeVList({positionType:"bottom",positionData:m,children:[{type:"kern",size:n.fontMetrics().bigOpSpacing5},{type:"elem",elem:u.elem,marginLeft:kt(-a)},{type:"kern",size:u.kern},{type:"elem",elem:t},{type:"kern",size:h.kern},{type:"elem",elem:h.elem,marginLeft:kt(a)},{type:"kern",size:n.fontMetrics().bigOpSpacing5}]},n)}else if(u){var g=t.height-s;p=Be.makeVList({positionType:"top",positionData:g,children:[{type:"kern",size:n.fontMetrics().bigOpSpacing5},{type:"elem",elem:u.elem,marginLeft:kt(-a)},{type:"kern",size:u.kern},{type:"elem",elem:t}]},n)}else if(h){var y=t.depth+s;p=Be.makeVList({positionType:"bottom",positionData:y,children:[{type:"elem",elem:t},{type:"kern",size:h.kern},{type:"elem",elem:h.elem,marginLeft:kt(a)},{type:"kern",size:n.fontMetrics().bigOpSpacing5}]},n)}else return t;var v=[p];if(u&&a!==0&&!l){var x=Be.makeSpan(["mspace"],[],n);x.style.marginRight=kt(a),v.unshift(x)}return Be.makeSpan(["mop","op-limits"],v,n)},"assembleSupSub"),kG=["\\smallint"],m0=o((t,e)=>{var r,n,i=!1,a;t.type==="supsub"?(r=t.sup,n=t.sub,a=xr(t.base,"op"),i=!0):a=xr(t,"op");var s=e.style,l=!1;s.size===tr.DISPLAY.size&&a.symbol&&!Jt.contains(kG,a.name)&&(l=!0);var u;if(a.symbol){var h=l?"Size2-Regular":"Size1-Regular",f="";if((a.name==="\\oiint"||a.name==="\\oiiint")&&(f=a.name.slice(1),a.name=f==="oiint"?"\\iint":"\\iiint"),u=Be.makeSymbol(a.name,h,"math",e,["mop","op-symbol",l?"large-op":"small-op"]),f.length>0){var d=u.italic,p=Be.staticSvg(f+"Size"+(l?"2":"1"),e);u=Be.makeVList({positionType:"individualShift",children:[{type:"elem",elem:u,shift:0},{type:"elem",elem:p,shift:l?.08:0}]},e),a.name="\\"+f,u.classes.unshift("mop"),u.italic=d}}else if(a.body){var m=Pi(a.body,e,!0);m.length===1&&m[0]instanceof Ts?(u=m[0],u.classes[0]="mop"):u=Be.makeSpan(["mop"],m,e)}else{for(var g=[],y=1;y{var r;if(t.symbol)r=new ws("mo",[Co(t.name,t.mode)]),Jt.contains(kG,t.name)&&r.setAttribute("largeop","false");else if(t.body)r=new ws("mo",ks(t.body,e));else{r=new ws("mi",[new Jf(t.name.slice(1))]);var n=new ws("mo",[Co("\u2061","text")]);t.parentIsSupSub?r=new ws("mrow",[r,n]):r=Qz([r,n])}return r},"mathmlBuilder$1"),L4e={"\u220F":"\\prod","\u2210":"\\coprod","\u2211":"\\sum","\u22C0":"\\bigwedge","\u22C1":"\\bigvee","\u22C2":"\\bigcap","\u22C3":"\\bigcup","\u2A00":"\\bigodot","\u2A01":"\\bigoplus","\u2A02":"\\bigotimes","\u2A04":"\\biguplus","\u2A06":"\\bigsqcup"};Nt({type:"op",names:["\\coprod","\\bigvee","\\bigwedge","\\biguplus","\\bigcap","\\bigcup","\\intop","\\prod","\\sum","\\bigotimes","\\bigoplus","\\bigodot","\\bigsqcup","\\smallint","\u220F","\u2210","\u2211","\u22C0","\u22C1","\u22C2","\u22C3","\u2A00","\u2A01","\u2A02","\u2A04","\u2A06"],props:{numArgs:0},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=n;return i.length===1&&(i=L4e[i]),{type:"op",mode:r.mode,limits:!0,parentIsSupSub:!1,symbol:!0,name:i}},"handler"),htmlBuilder:m0,mathmlBuilder:Wy});Nt({type:"op",names:["\\mathop"],props:{numArgs:1,primitive:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[0];return{type:"op",mode:r.mode,limits:!1,parentIsSupSub:!1,symbol:!1,body:di(n)}},"handler"),htmlBuilder:m0,mathmlBuilder:Wy});R4e={"\u222B":"\\int","\u222C":"\\iint","\u222D":"\\iiint","\u222E":"\\oint","\u222F":"\\oiint","\u2230":"\\oiiint"};Nt({type:"op",names:["\\arcsin","\\arccos","\\arctan","\\arctg","\\arcctg","\\arg","\\ch","\\cos","\\cosec","\\cosh","\\cot","\\cotg","\\coth","\\csc","\\ctg","\\cth","\\deg","\\dim","\\exp","\\hom","\\ker","\\lg","\\ln","\\log","\\sec","\\sin","\\sinh","\\sh","\\tan","\\tanh","\\tg","\\th"],props:{numArgs:0},handler(t){var{parser:e,funcName:r}=t;return{type:"op",mode:e.mode,limits:!1,parentIsSupSub:!1,symbol:!1,name:r}},htmlBuilder:m0,mathmlBuilder:Wy});Nt({type:"op",names:["\\det","\\gcd","\\inf","\\lim","\\max","\\min","\\Pr","\\sup"],props:{numArgs:0},handler(t){var{parser:e,funcName:r}=t;return{type:"op",mode:e.mode,limits:!0,parentIsSupSub:!1,symbol:!1,name:r}},htmlBuilder:m0,mathmlBuilder:Wy});Nt({type:"op",names:["\\int","\\iint","\\iiint","\\oint","\\oiint","\\oiiint","\u222B","\u222C","\u222D","\u222E","\u222F","\u2230"],props:{numArgs:0},handler(t){var{parser:e,funcName:r}=t,n=r;return n.length===1&&(n=R4e[n]),{type:"op",mode:e.mode,limits:!1,parentIsSupSub:!1,symbol:!0,name:n}},htmlBuilder:m0,mathmlBuilder:Wy});EG=o((t,e)=>{var r,n,i=!1,a;t.type==="supsub"?(r=t.sup,n=t.sub,a=xr(t.base,"operatorname"),i=!0):a=xr(t,"operatorname");var s;if(a.body.length>0){for(var l=a.body.map(d=>{var p=d.text;return typeof p=="string"?{type:"textord",mode:d.mode,text:p}:d}),u=Pi(l,e.withFont("mathrm"),!0),h=0;h{for(var r=ks(t.body,e.withFont("mathrm")),n=!0,i=0;if.toText()).join("");r=[new dt.TextNode(l)]}var u=new dt.MathNode("mi",r);u.setAttribute("mathvariant","normal");var h=new dt.MathNode("mo",[Co("\u2061","text")]);return t.parentIsSupSub?new dt.MathNode("mrow",[u,h]):dt.newDocumentFragment([u,h])},"mathmlBuilder");Nt({type:"operatorname",names:["\\operatorname@","\\operatornamewithlimits"],props:{numArgs:1},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0];return{type:"operatorname",mode:r.mode,body:di(i),alwaysHandleSupSub:n==="\\operatornamewithlimits",limits:!1,parentIsSupSub:!1}},"handler"),htmlBuilder:EG,mathmlBuilder:N4e});fe("\\operatorname","\\@ifstar\\operatornamewithlimits\\operatorname@");rd({type:"ordgroup",htmlBuilder(t,e){return t.semisimple?Be.makeFragment(Pi(t.body,e,!1)):Be.makeSpan(["mord"],Pi(t.body,e,!0),e)},mathmlBuilder(t,e){return dh(t.body,e,!0)}});Nt({type:"overline",names:["\\overline"],props:{numArgs:1},handler(t,e){var{parser:r}=t,n=e[0];return{type:"overline",mode:r.mode,body:n}},htmlBuilder(t,e){var r=Fr(t.body,e.havingCrampedStyle()),n=Be.makeLineSpan("overline-line",e),i=e.fontMetrics().defaultRuleThickness,a=Be.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:r},{type:"kern",size:3*i},{type:"elem",elem:n},{type:"kern",size:i}]},e);return Be.makeSpan(["mord","overline"],[a],e)},mathmlBuilder(t,e){var r=new dt.MathNode("mo",[new dt.TextNode("\u203E")]);r.setAttribute("stretchy","true");var n=new dt.MathNode("mover",[yn(t.body,e),r]);return n.setAttribute("accent","true"),n}});Nt({type:"phantom",names:["\\phantom"],props:{numArgs:1,allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[0];return{type:"phantom",mode:r.mode,body:di(n)}},"handler"),htmlBuilder:o((t,e)=>{var r=Pi(t.body,e.withPhantom(),!1);return Be.makeFragment(r)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=ks(t.body,e);return new dt.MathNode("mphantom",r)},"mathmlBuilder")});Nt({type:"hphantom",names:["\\hphantom"],props:{numArgs:1,allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[0];return{type:"hphantom",mode:r.mode,body:n}},"handler"),htmlBuilder:o((t,e)=>{var r=Be.makeSpan([],[Fr(t.body,e.withPhantom())]);if(r.height=0,r.depth=0,r.children)for(var n=0;n{var r=ks(di(t.body),e),n=new dt.MathNode("mphantom",r),i=new dt.MathNode("mpadded",[n]);return i.setAttribute("height","0px"),i.setAttribute("depth","0px"),i},"mathmlBuilder")});Nt({type:"vphantom",names:["\\vphantom"],props:{numArgs:1,allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[0];return{type:"vphantom",mode:r.mode,body:n}},"handler"),htmlBuilder:o((t,e)=>{var r=Be.makeSpan(["inner"],[Fr(t.body,e.withPhantom())]),n=Be.makeSpan(["fix"],[]);return Be.makeSpan(["mord","rlap"],[r,n],e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=ks(di(t.body),e),n=new dt.MathNode("mphantom",r),i=new dt.MathNode("mpadded",[n]);return i.setAttribute("width","0px"),i},"mathmlBuilder")});Nt({type:"raisebox",names:["\\raisebox"],props:{numArgs:2,argTypes:["size","hbox"],allowedInText:!0},handler(t,e){var{parser:r}=t,n=xr(e[0],"size").value,i=e[1];return{type:"raisebox",mode:r.mode,dy:n,body:i}},htmlBuilder(t,e){var r=Fr(t.body,e),n=ti(t.dy,e);return Be.makeVList({positionType:"shift",positionData:-n,children:[{type:"elem",elem:r}]},e)},mathmlBuilder(t,e){var r=new dt.MathNode("mpadded",[yn(t.body,e)]),n=t.dy.number+t.dy.unit;return r.setAttribute("voffset",n),r}});Nt({type:"internal",names:["\\relax"],props:{numArgs:0,allowedInText:!0},handler(t){var{parser:e}=t;return{type:"internal",mode:e.mode}}});Nt({type:"rule",names:["\\rule"],props:{numArgs:2,numOptionalArgs:1,argTypes:["size","size","size"]},handler(t,e,r){var{parser:n}=t,i=r[0],a=xr(e[0],"size"),s=xr(e[1],"size");return{type:"rule",mode:n.mode,shift:i&&xr(i,"size").value,width:a.value,height:s.value}},htmlBuilder(t,e){var r=Be.makeSpan(["mord","rule"],[],e),n=ti(t.width,e),i=ti(t.height,e),a=t.shift?ti(t.shift,e):0;return r.style.borderRightWidth=kt(n),r.style.borderTopWidth=kt(i),r.style.bottom=kt(a),r.width=n,r.height=i+a,r.depth=-a,r.maxFontSize=i*1.125*e.sizeMultiplier,r},mathmlBuilder(t,e){var r=ti(t.width,e),n=ti(t.height,e),i=t.shift?ti(t.shift,e):0,a=e.color&&e.getColor()||"black",s=new dt.MathNode("mspace");s.setAttribute("mathbackground",a),s.setAttribute("width",kt(r)),s.setAttribute("height",kt(n));var l=new dt.MathNode("mpadded",[s]);return i>=0?l.setAttribute("height",kt(i)):(l.setAttribute("height",kt(i)),l.setAttribute("depth",kt(-i))),l.setAttribute("voffset",kt(i)),l}});o(SG,"sizingGroup");Az=["\\tiny","\\sixptsize","\\scriptsize","\\footnotesize","\\small","\\normalsize","\\large","\\Large","\\LARGE","\\huge","\\Huge"],M4e=o((t,e)=>{var r=e.havingSize(t.size);return SG(t.body,r,e)},"htmlBuilder");Nt({type:"sizing",names:Az,props:{numArgs:0,allowedInText:!0},handler:o((t,e)=>{var{breakOnTokenText:r,funcName:n,parser:i}=t,a=i.parseExpression(!1,r);return{type:"sizing",mode:i.mode,size:Az.indexOf(n)+1,body:a}},"handler"),htmlBuilder:M4e,mathmlBuilder:o((t,e)=>{var r=e.havingSize(t.size),n=ks(t.body,r),i=new dt.MathNode("mstyle",n);return i.setAttribute("mathsize",kt(r.sizeMultiplier)),i},"mathmlBuilder")});Nt({type:"smash",names:["\\smash"],props:{numArgs:1,numOptionalArgs:1,allowedInText:!0},handler:o((t,e,r)=>{var{parser:n}=t,i=!1,a=!1,s=r[0]&&xr(r[0],"ordgroup");if(s)for(var l="",u=0;u{var r=Be.makeSpan([],[Fr(t.body,e)]);if(!t.smashHeight&&!t.smashDepth)return r;if(t.smashHeight&&(r.height=0,r.children))for(var n=0;n{var r=new dt.MathNode("mpadded",[yn(t.body,e)]);return t.smashHeight&&r.setAttribute("height","0px"),t.smashDepth&&r.setAttribute("depth","0px"),r},"mathmlBuilder")});Nt({type:"sqrt",names:["\\sqrt"],props:{numArgs:1,numOptionalArgs:1},handler(t,e,r){var{parser:n}=t,i=r[0],a=e[0];return{type:"sqrt",mode:n.mode,body:a,index:i}},htmlBuilder(t,e){var r=Fr(t.body,e.havingCrampedStyle());r.height===0&&(r.height=e.fontMetrics().xHeight),r=Be.wrapFragment(r,e);var n=e.fontMetrics(),i=n.defaultRuleThickness,a=i;e.style.idr.height+r.depth+s&&(s=(s+d-r.height-r.depth)/2);var p=u.height-r.height-s-h;r.style.paddingLeft=kt(f);var m=Be.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:r,wrapperClasses:["svg-align"]},{type:"kern",size:-(r.height+p)},{type:"elem",elem:u},{type:"kern",size:h}]},e);if(t.index){var g=e.havingStyle(tr.SCRIPTSCRIPT),y=Fr(t.index,g,e),v=.6*(m.height-m.depth),x=Be.makeVList({positionType:"shift",positionData:-v,children:[{type:"elem",elem:y}]},e),b=Be.makeSpan(["root"],[x]);return Be.makeSpan(["mord","sqrt"],[b,m],e)}else return Be.makeSpan(["mord","sqrt"],[m],e)},mathmlBuilder(t,e){var{body:r,index:n}=t;return n?new dt.MathNode("mroot",[yn(r,e),yn(n,e)]):new dt.MathNode("msqrt",[yn(r,e)])}});_z={display:tr.DISPLAY,text:tr.TEXT,script:tr.SCRIPT,scriptscript:tr.SCRIPTSCRIPT};Nt({type:"styling",names:["\\displaystyle","\\textstyle","\\scriptstyle","\\scriptscriptstyle"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t,e){var{breakOnTokenText:r,funcName:n,parser:i}=t,a=i.parseExpression(!0,r),s=n.slice(1,n.length-5);return{type:"styling",mode:i.mode,style:s,body:a}},htmlBuilder(t,e){var r=_z[t.style],n=e.havingStyle(r).withFont("");return SG(t.body,n,e)},mathmlBuilder(t,e){var r=_z[t.style],n=e.havingStyle(r),i=ks(t.body,n),a=new dt.MathNode("mstyle",i),s={display:["0","true"],text:["0","false"],script:["1","false"],scriptscript:["2","false"]},l=s[t.style];return a.setAttribute("scriptlevel",l[0]),a.setAttribute("displaystyle",l[1]),a}});I4e=o(function(e,r){var n=e.base;if(n)if(n.type==="op"){var i=n.limits&&(r.style.size===tr.DISPLAY.size||n.alwaysHandleSupSub);return i?m0:null}else if(n.type==="operatorname"){var a=n.alwaysHandleSupSub&&(r.style.size===tr.DISPLAY.size||n.limits);return a?EG:null}else{if(n.type==="accent")return Jt.isCharacterBox(n.base)?G7:null;if(n.type==="horizBrace"){var s=!e.sub;return s===n.isOver?wG:null}else return null}else return null},"htmlBuilderDelegate");rd({type:"supsub",htmlBuilder(t,e){var r=I4e(t,e);if(r)return r(t,e);var{base:n,sup:i,sub:a}=t,s=Fr(n,e),l,u,h=e.fontMetrics(),f=0,d=0,p=n&&Jt.isCharacterBox(n);if(i){var m=e.havingStyle(e.style.sup());l=Fr(i,m,e),p||(f=s.height-m.fontMetrics().supDrop*m.sizeMultiplier/e.sizeMultiplier)}if(a){var g=e.havingStyle(e.style.sub());u=Fr(a,g,e),p||(d=s.depth+g.fontMetrics().subDrop*g.sizeMultiplier/e.sizeMultiplier)}var y;e.style===tr.DISPLAY?y=h.sup1:e.style.cramped?y=h.sup3:y=h.sup2;var v=e.sizeMultiplier,x=kt(.5/h.ptPerEm/v),b=null;if(u){var w=t.base&&t.base.type==="op"&&t.base.name&&(t.base.name==="\\oiint"||t.base.name==="\\oiiint");(s instanceof Ts||w)&&(b=kt(-s.italic))}var C;if(l&&u){f=Math.max(f,y,l.depth+.25*h.xHeight),d=Math.max(d,h.sub2);var T=h.defaultRuleThickness,E=4*T;if(f-l.depth-(u.height-d)0&&(f+=A,d-=A)}var S=[{type:"elem",elem:u,shift:d,marginRight:x,marginLeft:b},{type:"elem",elem:l,shift:-f,marginRight:x}];C=Be.makeVList({positionType:"individualShift",children:S},e)}else if(u){d=Math.max(d,h.sub1,u.height-.8*h.xHeight);var _=[{type:"elem",elem:u,marginLeft:b,marginRight:x}];C=Be.makeVList({positionType:"shift",positionData:d,children:_},e)}else if(l)f=Math.max(f,y,l.depth+.25*h.xHeight),C=Be.makeVList({positionType:"shift",positionData:-f,children:[{type:"elem",elem:l,marginRight:x}]},e);else throw new Error("supsub must have either sup or sub.");var I=A7(s,"right")||"mord";return Be.makeSpan([I],[s,Be.makeSpan(["msupsub"],[C])],e)},mathmlBuilder(t,e){var r=!1,n,i;t.base&&t.base.type==="horizBrace"&&(i=!!t.sup,i===t.base.isOver&&(r=!0,n=t.base.isOver)),t.base&&(t.base.type==="op"||t.base.type==="operatorname")&&(t.base.parentIsSupSub=!0);var a=[yn(t.base,e)];t.sub&&a.push(yn(t.sub,e)),t.sup&&a.push(yn(t.sup,e));var s;if(r)s=n?"mover":"munder";else if(t.sub)if(t.sup){var h=t.base;h&&h.type==="op"&&h.limits&&e.style===tr.DISPLAY||h&&h.type==="operatorname"&&h.alwaysHandleSupSub&&(e.style===tr.DISPLAY||h.limits)?s="munderover":s="msubsup"}else{var u=t.base;u&&u.type==="op"&&u.limits&&(e.style===tr.DISPLAY||u.alwaysHandleSupSub)||u&&u.type==="operatorname"&&u.alwaysHandleSupSub&&(u.limits||e.style===tr.DISPLAY)?s="munder":s="msub"}else{var l=t.base;l&&l.type==="op"&&l.limits&&(e.style===tr.DISPLAY||l.alwaysHandleSupSub)||l&&l.type==="operatorname"&&l.alwaysHandleSupSub&&(l.limits||e.style===tr.DISPLAY)?s="mover":s="msup"}return new dt.MathNode(s,a)}});rd({type:"atom",htmlBuilder(t,e){return Be.mathsym(t.text,t.mode,e,["m"+t.family])},mathmlBuilder(t,e){var r=new dt.MathNode("mo",[Co(t.text,t.mode)]);if(t.family==="bin"){var n=$7(t,e);n==="bold-italic"&&r.setAttribute("mathvariant",n)}else t.family==="punct"?r.setAttribute("separator","true"):(t.family==="open"||t.family==="close")&&r.setAttribute("stretchy","false");return r}});CG={mi:"italic",mn:"normal",mtext:"normal"};rd({type:"mathord",htmlBuilder(t,e){return Be.makeOrd(t,e,"mathord")},mathmlBuilder(t,e){var r=new dt.MathNode("mi",[Co(t.text,t.mode,e)]),n=$7(t,e)||"italic";return n!==CG[r.type]&&r.setAttribute("mathvariant",n),r}});rd({type:"textord",htmlBuilder(t,e){return Be.makeOrd(t,e,"textord")},mathmlBuilder(t,e){var r=Co(t.text,t.mode,e),n=$7(t,e)||"normal",i;return t.mode==="text"?i=new dt.MathNode("mtext",[r]):/[0-9]/.test(t.text)?i=new dt.MathNode("mn",[r]):t.text==="\\prime"?i=new dt.MathNode("mo",[r]):i=new dt.MathNode("mi",[r]),n!==CG[i.type]&&i.setAttribute("mathvariant",n),i}});b7={"\\nobreak":"nobreak","\\allowbreak":"allowbreak"},w7={" ":{},"\\ ":{},"~":{className:"nobreak"},"\\space":{},"\\nobreakspace":{className:"nobreak"}};rd({type:"spacing",htmlBuilder(t,e){if(w7.hasOwnProperty(t.text)){var r=w7[t.text].className||"";if(t.mode==="text"){var n=Be.makeOrd(t,e,"textord");return n.classes.push(r),n}else return Be.makeSpan(["mspace",r],[Be.mathsym(t.text,t.mode,e)],e)}else{if(b7.hasOwnProperty(t.text))return Be.makeSpan(["mspace",b7[t.text]],[],e);throw new gt('Unknown type of space "'+t.text+'"')}},mathmlBuilder(t,e){var r;if(w7.hasOwnProperty(t.text))r=new dt.MathNode("mtext",[new dt.TextNode("\xA0")]);else{if(b7.hasOwnProperty(t.text))return new dt.MathNode("mspace");throw new gt('Unknown type of space "'+t.text+'"')}return r}});Dz=o(()=>{var t=new dt.MathNode("mtd",[]);return t.setAttribute("width","50%"),t},"pad");rd({type:"tag",mathmlBuilder(t,e){var r=new dt.MathNode("mtable",[new dt.MathNode("mtr",[Dz(),new dt.MathNode("mtd",[dh(t.body,e)]),Dz(),new dt.MathNode("mtd",[dh(t.tag,e)])])]);return r.setAttribute("width","100%"),r}});Lz={"\\text":void 0,"\\textrm":"textrm","\\textsf":"textsf","\\texttt":"texttt","\\textnormal":"textrm"},Rz={"\\textbf":"textbf","\\textmd":"textmd"},O4e={"\\textit":"textit","\\textup":"textup"},Nz=o((t,e)=>{var r=t.font;if(r){if(Lz[r])return e.withTextFontFamily(Lz[r]);if(Rz[r])return e.withTextFontWeight(Rz[r]);if(r==="\\emph")return e.fontShape==="textit"?e.withTextFontShape("textup"):e.withTextFontShape("textit")}else return e;return e.withTextFontShape(O4e[r])},"optionsWithFont");Nt({type:"text",names:["\\text","\\textrm","\\textsf","\\texttt","\\textnormal","\\textbf","\\textmd","\\textit","\\textup","\\emph"],props:{numArgs:1,argTypes:["text"],allowedInArgument:!0,allowedInText:!0},handler(t,e){var{parser:r,funcName:n}=t,i=e[0];return{type:"text",mode:r.mode,body:di(i),font:n}},htmlBuilder(t,e){var r=Nz(t,e),n=Pi(t.body,r,!0);return Be.makeSpan(["mord","text"],n,r)},mathmlBuilder(t,e){var r=Nz(t,e);return dh(t.body,r)}});Nt({type:"underline",names:["\\underline"],props:{numArgs:1,allowedInText:!0},handler(t,e){var{parser:r}=t;return{type:"underline",mode:r.mode,body:e[0]}},htmlBuilder(t,e){var r=Fr(t.body,e),n=Be.makeLineSpan("underline-line",e),i=e.fontMetrics().defaultRuleThickness,a=Be.makeVList({positionType:"top",positionData:r.height,children:[{type:"kern",size:i},{type:"elem",elem:n},{type:"kern",size:3*i},{type:"elem",elem:r}]},e);return Be.makeSpan(["mord","underline"],[a],e)},mathmlBuilder(t,e){var r=new dt.MathNode("mo",[new dt.TextNode("\u203E")]);r.setAttribute("stretchy","true");var n=new dt.MathNode("munder",[yn(t.body,e),r]);return n.setAttribute("accentunder","true"),n}});Nt({type:"vcenter",names:["\\vcenter"],props:{numArgs:1,argTypes:["original"],allowedInText:!1},handler(t,e){var{parser:r}=t;return{type:"vcenter",mode:r.mode,body:e[0]}},htmlBuilder(t,e){var r=Fr(t.body,e),n=e.fontMetrics().axisHeight,i=.5*(r.height-n-(r.depth+n));return Be.makeVList({positionType:"shift",positionData:i,children:[{type:"elem",elem:r}]},e)},mathmlBuilder(t,e){return new dt.MathNode("mpadded",[yn(t.body,e)],["vcenter"])}});Nt({type:"verb",names:["\\verb"],props:{numArgs:0,allowedInText:!0},handler(t,e,r){throw new gt("\\verb ended by end of line instead of matching delimiter")},htmlBuilder(t,e){for(var r=Mz(t),n=[],i=e.havingStyle(e.style.text()),a=0;at.body.replace(/ /g,t.star?"\u2423":"\xA0"),"makeVerb"),hh=jz,AG=`[ \r + ]`,P4e="\\\\[a-zA-Z@]+",B4e="\\\\[^\uD800-\uDFFF]",F4e="("+P4e+")"+AG+"*",$4e=`\\\\( +|[ \r ]+ +?)[ \r ]*`,N7="[\u0300-\u036F]",z4e=new RegExp(N7+"+$"),G4e="("+AG+"+)|"+($4e+"|")+"([!-\\[\\]-\u2027\u202A-\uD7FF\uF900-\uFFFF]"+(N7+"*")+"|[\uD800-\uDBFF][\uDC00-\uDFFF]"+(N7+"*")+"|\\\\verb\\*([^]).*?\\4|\\\\verb([^*a-zA-Z]).*?\\5"+("|"+F4e)+("|"+B4e+")"),y3=class{static{o(this,"Lexer")}constructor(e,r){this.input=void 0,this.settings=void 0,this.tokenRegex=void 0,this.catcodes=void 0,this.input=e,this.settings=r,this.tokenRegex=new RegExp(G4e,"g"),this.catcodes={"%":14,"~":13}}setCatcode(e,r){this.catcodes[e]=r}lex(){var e=this.input,r=this.tokenRegex.lastIndex;if(r===e.length)return new So("EOF",new Xs(this,r,r));var n=this.tokenRegex.exec(e);if(n===null||n.index!==r)throw new gt("Unexpected character: '"+e[r]+"'",new So(e[r],new Xs(this,r,r+1)));var i=n[6]||n[3]||(n[2]?"\\ ":" ");if(this.catcodes[i]===14){var a=e.indexOf(` +`,this.tokenRegex.lastIndex);return a===-1?(this.tokenRegex.lastIndex=e.length,this.settings.reportNonstrict("commentAtEnd","% comment has no terminating newline; LaTeX would fail because of commenting the end of math mode (e.g. $)")):this.tokenRegex.lastIndex=a+1,this.lex()}return new So(i,new Xs(this,r,this.tokenRegex.lastIndex))}},M7=class{static{o(this,"Namespace")}constructor(e,r){e===void 0&&(e={}),r===void 0&&(r={}),this.current=void 0,this.builtins=void 0,this.undefStack=void 0,this.current=r,this.builtins=e,this.undefStack=[]}beginGroup(){this.undefStack.push({})}endGroup(){if(this.undefStack.length===0)throw new gt("Unbalanced namespace destruction: attempt to pop global namespace; please report this as a bug");var e=this.undefStack.pop();for(var r in e)e.hasOwnProperty(r)&&(e[r]==null?delete this.current[r]:this.current[r]=e[r])}endGroups(){for(;this.undefStack.length>0;)this.endGroup()}has(e){return this.current.hasOwnProperty(e)||this.builtins.hasOwnProperty(e)}get(e){return this.current.hasOwnProperty(e)?this.current[e]:this.builtins[e]}set(e,r,n){if(n===void 0&&(n=!1),n){for(var i=0;i0&&(this.undefStack[this.undefStack.length-1][e]=r)}else{var a=this.undefStack[this.undefStack.length-1];a&&!a.hasOwnProperty(e)&&(a[e]=this.current[e])}r==null?delete this.current[e]:this.current[e]=r}},V4e=gG;fe("\\noexpand",function(t){var e=t.popToken();return t.isExpandable(e.text)&&(e.noexpand=!0,e.treatAsRelax=!0),{tokens:[e],numArgs:0}});fe("\\expandafter",function(t){var e=t.popToken();return t.expandOnce(!0),{tokens:[e],numArgs:0}});fe("\\@firstoftwo",function(t){var e=t.consumeArgs(2);return{tokens:e[0],numArgs:0}});fe("\\@secondoftwo",function(t){var e=t.consumeArgs(2);return{tokens:e[1],numArgs:0}});fe("\\@ifnextchar",function(t){var e=t.consumeArgs(3);t.consumeSpaces();var r=t.future();return e[0].length===1&&e[0][0].text===r.text?{tokens:e[1],numArgs:0}:{tokens:e[2],numArgs:0}});fe("\\@ifstar","\\@ifnextchar *{\\@firstoftwo{#1}}");fe("\\TextOrMath",function(t){var e=t.consumeArgs(2);return t.mode==="text"?{tokens:e[0],numArgs:0}:{tokens:e[1],numArgs:0}});Iz={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};fe("\\char",function(t){var e=t.popToken(),r,n="";if(e.text==="'")r=8,e=t.popToken();else if(e.text==='"')r=16,e=t.popToken();else if(e.text==="`")if(e=t.popToken(),e.text[0]==="\\")n=e.text.charCodeAt(1);else{if(e.text==="EOF")throw new gt("\\char` missing argument");n=e.text.charCodeAt(0)}else r=10;if(r){if(n=Iz[e.text],n==null||n>=r)throw new gt("Invalid base-"+r+" digit "+e.text);for(var i;(i=Iz[t.future().text])!=null&&i{var n=t.consumeArg().tokens;if(n.length!==1)throw new gt("\\newcommand's first argument must be a macro name");var i=n[0].text,a=t.isDefined(i);if(a&&!e)throw new gt("\\newcommand{"+i+"} attempting to redefine "+(i+"; use \\renewcommand"));if(!a&&!r)throw new gt("\\renewcommand{"+i+"} when command "+i+" does not yet exist; use \\newcommand");var s=0;if(n=t.consumeArg().tokens,n.length===1&&n[0].text==="["){for(var l="",u=t.expandNextToken();u.text!=="]"&&u.text!=="EOF";)l+=u.text,u=t.expandNextToken();if(!l.match(/^\s*[0-9]+\s*$/))throw new gt("Invalid number of arguments: "+l);s=parseInt(l),n=t.consumeArg().tokens}return t.macros.set(i,{tokens:n,numArgs:s}),""},"newcommand");fe("\\newcommand",t=>j7(t,!1,!0));fe("\\renewcommand",t=>j7(t,!0,!1));fe("\\providecommand",t=>j7(t,!0,!0));fe("\\message",t=>{var e=t.consumeArgs(1)[0];return console.log(e.reverse().map(r=>r.text).join("")),""});fe("\\errmessage",t=>{var e=t.consumeArgs(1)[0];return console.error(e.reverse().map(r=>r.text).join("")),""});fe("\\show",t=>{var e=t.popToken(),r=e.text;return console.log(e,t.macros.get(r),hh[r],An.math[r],An.text[r]),""});fe("\\bgroup","{");fe("\\egroup","}");fe("~","\\nobreakspace");fe("\\lq","`");fe("\\rq","'");fe("\\aa","\\r a");fe("\\AA","\\r A");fe("\\textcopyright","\\html@mathml{\\textcircled{c}}{\\char`\xA9}");fe("\\copyright","\\TextOrMath{\\textcopyright}{\\text{\\textcopyright}}");fe("\\textregistered","\\html@mathml{\\textcircled{\\scriptsize R}}{\\char`\xAE}");fe("\u212C","\\mathscr{B}");fe("\u2130","\\mathscr{E}");fe("\u2131","\\mathscr{F}");fe("\u210B","\\mathscr{H}");fe("\u2110","\\mathscr{I}");fe("\u2112","\\mathscr{L}");fe("\u2133","\\mathscr{M}");fe("\u211B","\\mathscr{R}");fe("\u212D","\\mathfrak{C}");fe("\u210C","\\mathfrak{H}");fe("\u2128","\\mathfrak{Z}");fe("\\Bbbk","\\Bbb{k}");fe("\xB7","\\cdotp");fe("\\llap","\\mathllap{\\textrm{#1}}");fe("\\rlap","\\mathrlap{\\textrm{#1}}");fe("\\clap","\\mathclap{\\textrm{#1}}");fe("\\mathstrut","\\vphantom{(}");fe("\\underbar","\\underline{\\text{#1}}");fe("\\not",'\\html@mathml{\\mathrel{\\mathrlap\\@not}}{\\char"338}');fe("\\neq","\\html@mathml{\\mathrel{\\not=}}{\\mathrel{\\char`\u2260}}");fe("\\ne","\\neq");fe("\u2260","\\neq");fe("\\notin","\\html@mathml{\\mathrel{{\\in}\\mathllap{/\\mskip1mu}}}{\\mathrel{\\char`\u2209}}");fe("\u2209","\\notin");fe("\u2258","\\html@mathml{\\mathrel{=\\kern{-1em}\\raisebox{0.4em}{$\\scriptsize\\frown$}}}{\\mathrel{\\char`\u2258}}");fe("\u2259","\\html@mathml{\\stackrel{\\tiny\\wedge}{=}}{\\mathrel{\\char`\u2258}}");fe("\u225A","\\html@mathml{\\stackrel{\\tiny\\vee}{=}}{\\mathrel{\\char`\u225A}}");fe("\u225B","\\html@mathml{\\stackrel{\\scriptsize\\star}{=}}{\\mathrel{\\char`\u225B}}");fe("\u225D","\\html@mathml{\\stackrel{\\tiny\\mathrm{def}}{=}}{\\mathrel{\\char`\u225D}}");fe("\u225E","\\html@mathml{\\stackrel{\\tiny\\mathrm{m}}{=}}{\\mathrel{\\char`\u225E}}");fe("\u225F","\\html@mathml{\\stackrel{\\tiny?}{=}}{\\mathrel{\\char`\u225F}}");fe("\u27C2","\\perp");fe("\u203C","\\mathclose{!\\mkern-0.8mu!}");fe("\u220C","\\notni");fe("\u231C","\\ulcorner");fe("\u231D","\\urcorner");fe("\u231E","\\llcorner");fe("\u231F","\\lrcorner");fe("\xA9","\\copyright");fe("\xAE","\\textregistered");fe("\uFE0F","\\textregistered");fe("\\ulcorner",'\\html@mathml{\\@ulcorner}{\\mathop{\\char"231c}}');fe("\\urcorner",'\\html@mathml{\\@urcorner}{\\mathop{\\char"231d}}');fe("\\llcorner",'\\html@mathml{\\@llcorner}{\\mathop{\\char"231e}}');fe("\\lrcorner",'\\html@mathml{\\@lrcorner}{\\mathop{\\char"231f}}');fe("\\vdots","\\mathord{\\varvdots\\rule{0pt}{15pt}}");fe("\u22EE","\\vdots");fe("\\varGamma","\\mathit{\\Gamma}");fe("\\varDelta","\\mathit{\\Delta}");fe("\\varTheta","\\mathit{\\Theta}");fe("\\varLambda","\\mathit{\\Lambda}");fe("\\varXi","\\mathit{\\Xi}");fe("\\varPi","\\mathit{\\Pi}");fe("\\varSigma","\\mathit{\\Sigma}");fe("\\varUpsilon","\\mathit{\\Upsilon}");fe("\\varPhi","\\mathit{\\Phi}");fe("\\varPsi","\\mathit{\\Psi}");fe("\\varOmega","\\mathit{\\Omega}");fe("\\substack","\\begin{subarray}{c}#1\\end{subarray}");fe("\\colon","\\nobreak\\mskip2mu\\mathpunct{}\\mathchoice{\\mkern-3mu}{\\mkern-3mu}{}{}{:}\\mskip6mu\\relax");fe("\\boxed","\\fbox{$\\displaystyle{#1}$}");fe("\\iff","\\DOTSB\\;\\Longleftrightarrow\\;");fe("\\implies","\\DOTSB\\;\\Longrightarrow\\;");fe("\\impliedby","\\DOTSB\\;\\Longleftarrow\\;");Oz={",":"\\dotsc","\\not":"\\dotsb","+":"\\dotsb","=":"\\dotsb","<":"\\dotsb",">":"\\dotsb","-":"\\dotsb","*":"\\dotsb",":":"\\dotsb","\\DOTSB":"\\dotsb","\\coprod":"\\dotsb","\\bigvee":"\\dotsb","\\bigwedge":"\\dotsb","\\biguplus":"\\dotsb","\\bigcap":"\\dotsb","\\bigcup":"\\dotsb","\\prod":"\\dotsb","\\sum":"\\dotsb","\\bigotimes":"\\dotsb","\\bigoplus":"\\dotsb","\\bigodot":"\\dotsb","\\bigsqcup":"\\dotsb","\\And":"\\dotsb","\\longrightarrow":"\\dotsb","\\Longrightarrow":"\\dotsb","\\longleftarrow":"\\dotsb","\\Longleftarrow":"\\dotsb","\\longleftrightarrow":"\\dotsb","\\Longleftrightarrow":"\\dotsb","\\mapsto":"\\dotsb","\\longmapsto":"\\dotsb","\\hookrightarrow":"\\dotsb","\\doteq":"\\dotsb","\\mathbin":"\\dotsb","\\mathrel":"\\dotsb","\\relbar":"\\dotsb","\\Relbar":"\\dotsb","\\xrightarrow":"\\dotsb","\\xleftarrow":"\\dotsb","\\DOTSI":"\\dotsi","\\int":"\\dotsi","\\oint":"\\dotsi","\\iint":"\\dotsi","\\iiint":"\\dotsi","\\iiiint":"\\dotsi","\\idotsint":"\\dotsi","\\DOTSX":"\\dotsx"};fe("\\dots",function(t){var e="\\dotso",r=t.expandAfterFuture().text;return r in Oz?e=Oz[r]:(r.slice(0,4)==="\\not"||r in An.math&&Jt.contains(["bin","rel"],An.math[r].group))&&(e="\\dotsb"),e});K7={")":!0,"]":!0,"\\rbrack":!0,"\\}":!0,"\\rbrace":!0,"\\rangle":!0,"\\rceil":!0,"\\rfloor":!0,"\\rgroup":!0,"\\rmoustache":!0,"\\right":!0,"\\bigr":!0,"\\biggr":!0,"\\Bigr":!0,"\\Biggr":!0,$:!0,";":!0,".":!0,",":!0};fe("\\dotso",function(t){var e=t.future().text;return e in K7?"\\ldots\\,":"\\ldots"});fe("\\dotsc",function(t){var e=t.future().text;return e in K7&&e!==","?"\\ldots\\,":"\\ldots"});fe("\\cdots",function(t){var e=t.future().text;return e in K7?"\\@cdots\\,":"\\@cdots"});fe("\\dotsb","\\cdots");fe("\\dotsm","\\cdots");fe("\\dotsi","\\!\\cdots");fe("\\dotsx","\\ldots\\,");fe("\\DOTSI","\\relax");fe("\\DOTSB","\\relax");fe("\\DOTSX","\\relax");fe("\\tmspace","\\TextOrMath{\\kern#1#3}{\\mskip#1#2}\\relax");fe("\\,","\\tmspace+{3mu}{.1667em}");fe("\\thinspace","\\,");fe("\\>","\\mskip{4mu}");fe("\\:","\\tmspace+{4mu}{.2222em}");fe("\\medspace","\\:");fe("\\;","\\tmspace+{5mu}{.2777em}");fe("\\thickspace","\\;");fe("\\!","\\tmspace-{3mu}{.1667em}");fe("\\negthinspace","\\!");fe("\\negmedspace","\\tmspace-{4mu}{.2222em}");fe("\\negthickspace","\\tmspace-{5mu}{.277em}");fe("\\enspace","\\kern.5em ");fe("\\enskip","\\hskip.5em\\relax");fe("\\quad","\\hskip1em\\relax");fe("\\qquad","\\hskip2em\\relax");fe("\\tag","\\@ifstar\\tag@literal\\tag@paren");fe("\\tag@paren","\\tag@literal{({#1})}");fe("\\tag@literal",t=>{if(t.macros.get("\\df@tag"))throw new gt("Multiple \\tag");return"\\gdef\\df@tag{\\text{#1}}"});fe("\\bmod","\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}\\mathbin{\\rm mod}\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}");fe("\\pod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern8mu}{\\mkern8mu}{\\mkern8mu}(#1)");fe("\\pmod","\\pod{{\\rm mod}\\mkern6mu#1}");fe("\\mod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern12mu}{\\mkern12mu}{\\mkern12mu}{\\rm mod}\\,\\,#1");fe("\\newline","\\\\\\relax");fe("\\TeX","\\textrm{\\html@mathml{T\\kern-.1667em\\raisebox{-.5ex}{E}\\kern-.125emX}{TeX}}");_G=kt(jl["Main-Regular"][84][1]-.7*jl["Main-Regular"][65][1]);fe("\\LaTeX","\\textrm{\\html@mathml{"+("L\\kern-.36em\\raisebox{"+_G+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{LaTeX}}");fe("\\KaTeX","\\textrm{\\html@mathml{"+("K\\kern-.17em\\raisebox{"+_G+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{KaTeX}}");fe("\\hspace","\\@ifstar\\@hspacer\\@hspace");fe("\\@hspace","\\hskip #1\\relax");fe("\\@hspacer","\\rule{0pt}{0pt}\\hskip #1\\relax");fe("\\ordinarycolon",":");fe("\\vcentcolon","\\mathrel{\\mathop\\ordinarycolon}");fe("\\dblcolon",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-.9mu}\\vcentcolon}}{\\mathop{\\char"2237}}');fe("\\coloneqq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2254}}');fe("\\Coloneqq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2237\\char"3d}}');fe("\\coloneq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"3a\\char"2212}}');fe("\\Coloneq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"2237\\char"2212}}');fe("\\eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2255}}');fe("\\Eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"3d\\char"2237}}');fe("\\eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2239}}');fe("\\Eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"2212\\char"2237}}');fe("\\colonapprox",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"3a\\char"2248}}');fe("\\Colonapprox",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"2237\\char"2248}}');fe("\\colonsim",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"3a\\char"223c}}');fe("\\Colonsim",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"2237\\char"223c}}');fe("\u2237","\\dblcolon");fe("\u2239","\\eqcolon");fe("\u2254","\\coloneqq");fe("\u2255","\\eqqcolon");fe("\u2A74","\\Coloneqq");fe("\\ratio","\\vcentcolon");fe("\\coloncolon","\\dblcolon");fe("\\colonequals","\\coloneqq");fe("\\coloncolonequals","\\Coloneqq");fe("\\equalscolon","\\eqqcolon");fe("\\equalscoloncolon","\\Eqqcolon");fe("\\colonminus","\\coloneq");fe("\\coloncolonminus","\\Coloneq");fe("\\minuscolon","\\eqcolon");fe("\\minuscoloncolon","\\Eqcolon");fe("\\coloncolonapprox","\\Colonapprox");fe("\\coloncolonsim","\\Colonsim");fe("\\simcolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\vcentcolon}");fe("\\simcoloncolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\dblcolon}");fe("\\approxcolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\vcentcolon}");fe("\\approxcoloncolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\dblcolon}");fe("\\notni","\\html@mathml{\\not\\ni}{\\mathrel{\\char`\u220C}}");fe("\\limsup","\\DOTSB\\operatorname*{lim\\,sup}");fe("\\liminf","\\DOTSB\\operatorname*{lim\\,inf}");fe("\\injlim","\\DOTSB\\operatorname*{inj\\,lim}");fe("\\projlim","\\DOTSB\\operatorname*{proj\\,lim}");fe("\\varlimsup","\\DOTSB\\operatorname*{\\overline{lim}}");fe("\\varliminf","\\DOTSB\\operatorname*{\\underline{lim}}");fe("\\varinjlim","\\DOTSB\\operatorname*{\\underrightarrow{lim}}");fe("\\varprojlim","\\DOTSB\\operatorname*{\\underleftarrow{lim}}");fe("\\gvertneqq","\\html@mathml{\\@gvertneqq}{\u2269}");fe("\\lvertneqq","\\html@mathml{\\@lvertneqq}{\u2268}");fe("\\ngeqq","\\html@mathml{\\@ngeqq}{\u2271}");fe("\\ngeqslant","\\html@mathml{\\@ngeqslant}{\u2271}");fe("\\nleqq","\\html@mathml{\\@nleqq}{\u2270}");fe("\\nleqslant","\\html@mathml{\\@nleqslant}{\u2270}");fe("\\nshortmid","\\html@mathml{\\@nshortmid}{\u2224}");fe("\\nshortparallel","\\html@mathml{\\@nshortparallel}{\u2226}");fe("\\nsubseteqq","\\html@mathml{\\@nsubseteqq}{\u2288}");fe("\\nsupseteqq","\\html@mathml{\\@nsupseteqq}{\u2289}");fe("\\varsubsetneq","\\html@mathml{\\@varsubsetneq}{\u228A}");fe("\\varsubsetneqq","\\html@mathml{\\@varsubsetneqq}{\u2ACB}");fe("\\varsupsetneq","\\html@mathml{\\@varsupsetneq}{\u228B}");fe("\\varsupsetneqq","\\html@mathml{\\@varsupsetneqq}{\u2ACC}");fe("\\imath","\\html@mathml{\\@imath}{\u0131}");fe("\\jmath","\\html@mathml{\\@jmath}{\u0237}");fe("\\llbracket","\\html@mathml{\\mathopen{[\\mkern-3.2mu[}}{\\mathopen{\\char`\u27E6}}");fe("\\rrbracket","\\html@mathml{\\mathclose{]\\mkern-3.2mu]}}{\\mathclose{\\char`\u27E7}}");fe("\u27E6","\\llbracket");fe("\u27E7","\\rrbracket");fe("\\lBrace","\\html@mathml{\\mathopen{\\{\\mkern-3.2mu[}}{\\mathopen{\\char`\u2983}}");fe("\\rBrace","\\html@mathml{\\mathclose{]\\mkern-3.2mu\\}}}{\\mathclose{\\char`\u2984}}");fe("\u2983","\\lBrace");fe("\u2984","\\rBrace");fe("\\minuso","\\mathbin{\\html@mathml{{\\mathrlap{\\mathchoice{\\kern{0.145em}}{\\kern{0.145em}}{\\kern{0.1015em}}{\\kern{0.0725em}}\\circ}{-}}}{\\char`\u29B5}}");fe("\u29B5","\\minuso");fe("\\darr","\\downarrow");fe("\\dArr","\\Downarrow");fe("\\Darr","\\Downarrow");fe("\\lang","\\langle");fe("\\rang","\\rangle");fe("\\uarr","\\uparrow");fe("\\uArr","\\Uparrow");fe("\\Uarr","\\Uparrow");fe("\\N","\\mathbb{N}");fe("\\R","\\mathbb{R}");fe("\\Z","\\mathbb{Z}");fe("\\alef","\\aleph");fe("\\alefsym","\\aleph");fe("\\Alpha","\\mathrm{A}");fe("\\Beta","\\mathrm{B}");fe("\\bull","\\bullet");fe("\\Chi","\\mathrm{X}");fe("\\clubs","\\clubsuit");fe("\\cnums","\\mathbb{C}");fe("\\Complex","\\mathbb{C}");fe("\\Dagger","\\ddagger");fe("\\diamonds","\\diamondsuit");fe("\\empty","\\emptyset");fe("\\Epsilon","\\mathrm{E}");fe("\\Eta","\\mathrm{H}");fe("\\exist","\\exists");fe("\\harr","\\leftrightarrow");fe("\\hArr","\\Leftrightarrow");fe("\\Harr","\\Leftrightarrow");fe("\\hearts","\\heartsuit");fe("\\image","\\Im");fe("\\infin","\\infty");fe("\\Iota","\\mathrm{I}");fe("\\isin","\\in");fe("\\Kappa","\\mathrm{K}");fe("\\larr","\\leftarrow");fe("\\lArr","\\Leftarrow");fe("\\Larr","\\Leftarrow");fe("\\lrarr","\\leftrightarrow");fe("\\lrArr","\\Leftrightarrow");fe("\\Lrarr","\\Leftrightarrow");fe("\\Mu","\\mathrm{M}");fe("\\natnums","\\mathbb{N}");fe("\\Nu","\\mathrm{N}");fe("\\Omicron","\\mathrm{O}");fe("\\plusmn","\\pm");fe("\\rarr","\\rightarrow");fe("\\rArr","\\Rightarrow");fe("\\Rarr","\\Rightarrow");fe("\\real","\\Re");fe("\\reals","\\mathbb{R}");fe("\\Reals","\\mathbb{R}");fe("\\Rho","\\mathrm{P}");fe("\\sdot","\\cdot");fe("\\sect","\\S");fe("\\spades","\\spadesuit");fe("\\sub","\\subset");fe("\\sube","\\subseteq");fe("\\supe","\\supseteq");fe("\\Tau","\\mathrm{T}");fe("\\thetasym","\\vartheta");fe("\\weierp","\\wp");fe("\\Zeta","\\mathrm{Z}");fe("\\argmin","\\DOTSB\\operatorname*{arg\\,min}");fe("\\argmax","\\DOTSB\\operatorname*{arg\\,max}");fe("\\plim","\\DOTSB\\mathop{\\operatorname{plim}}\\limits");fe("\\bra","\\mathinner{\\langle{#1}|}");fe("\\ket","\\mathinner{|{#1}\\rangle}");fe("\\braket","\\mathinner{\\langle{#1}\\rangle}");fe("\\Bra","\\left\\langle#1\\right|");fe("\\Ket","\\left|#1\\right\\rangle");DG=o(t=>e=>{var r=e.consumeArg().tokens,n=e.consumeArg().tokens,i=e.consumeArg().tokens,a=e.consumeArg().tokens,s=e.macros.get("|"),l=e.macros.get("\\|");e.macros.beginGroup();var u=o(d=>p=>{t&&(p.macros.set("|",s),i.length&&p.macros.set("\\|",l));var m=d;if(!d&&i.length){var g=p.future();g.text==="|"&&(p.popToken(),m=!0)}return{tokens:m?i:n,numArgs:0}},"midMacro");e.macros.set("|",u(!1)),i.length&&e.macros.set("\\|",u(!0));var h=e.consumeArg().tokens,f=e.expandTokens([...a,...h,...r]);return e.macros.endGroup(),{tokens:f.reverse(),numArgs:0}},"braketHelper");fe("\\bra@ket",DG(!1));fe("\\bra@set",DG(!0));fe("\\Braket","\\bra@ket{\\left\\langle}{\\,\\middle\\vert\\,}{\\,\\middle\\vert\\,}{\\right\\rangle}");fe("\\Set","\\bra@set{\\left\\{\\:}{\\;\\middle\\vert\\;}{\\;\\middle\\Vert\\;}{\\:\\right\\}}");fe("\\set","\\bra@set{\\{\\,}{\\mid}{}{\\,\\}}");fe("\\angln","{\\angl n}");fe("\\blue","\\textcolor{##6495ed}{#1}");fe("\\orange","\\textcolor{##ffa500}{#1}");fe("\\pink","\\textcolor{##ff00af}{#1}");fe("\\red","\\textcolor{##df0030}{#1}");fe("\\green","\\textcolor{##28ae7b}{#1}");fe("\\gray","\\textcolor{gray}{#1}");fe("\\purple","\\textcolor{##9d38bd}{#1}");fe("\\blueA","\\textcolor{##ccfaff}{#1}");fe("\\blueB","\\textcolor{##80f6ff}{#1}");fe("\\blueC","\\textcolor{##63d9ea}{#1}");fe("\\blueD","\\textcolor{##11accd}{#1}");fe("\\blueE","\\textcolor{##0c7f99}{#1}");fe("\\tealA","\\textcolor{##94fff5}{#1}");fe("\\tealB","\\textcolor{##26edd5}{#1}");fe("\\tealC","\\textcolor{##01d1c1}{#1}");fe("\\tealD","\\textcolor{##01a995}{#1}");fe("\\tealE","\\textcolor{##208170}{#1}");fe("\\greenA","\\textcolor{##b6ffb0}{#1}");fe("\\greenB","\\textcolor{##8af281}{#1}");fe("\\greenC","\\textcolor{##74cf70}{#1}");fe("\\greenD","\\textcolor{##1fab54}{#1}");fe("\\greenE","\\textcolor{##0d923f}{#1}");fe("\\goldA","\\textcolor{##ffd0a9}{#1}");fe("\\goldB","\\textcolor{##ffbb71}{#1}");fe("\\goldC","\\textcolor{##ff9c39}{#1}");fe("\\goldD","\\textcolor{##e07d10}{#1}");fe("\\goldE","\\textcolor{##a75a05}{#1}");fe("\\redA","\\textcolor{##fca9a9}{#1}");fe("\\redB","\\textcolor{##ff8482}{#1}");fe("\\redC","\\textcolor{##f9685d}{#1}");fe("\\redD","\\textcolor{##e84d39}{#1}");fe("\\redE","\\textcolor{##bc2612}{#1}");fe("\\maroonA","\\textcolor{##ffbde0}{#1}");fe("\\maroonB","\\textcolor{##ff92c6}{#1}");fe("\\maroonC","\\textcolor{##ed5fa6}{#1}");fe("\\maroonD","\\textcolor{##ca337c}{#1}");fe("\\maroonE","\\textcolor{##9e034e}{#1}");fe("\\purpleA","\\textcolor{##ddd7ff}{#1}");fe("\\purpleB","\\textcolor{##c6b9fc}{#1}");fe("\\purpleC","\\textcolor{##aa87ff}{#1}");fe("\\purpleD","\\textcolor{##7854ab}{#1}");fe("\\purpleE","\\textcolor{##543b78}{#1}");fe("\\mintA","\\textcolor{##f5f9e8}{#1}");fe("\\mintB","\\textcolor{##edf2df}{#1}");fe("\\mintC","\\textcolor{##e0e5cc}{#1}");fe("\\grayA","\\textcolor{##f6f7f7}{#1}");fe("\\grayB","\\textcolor{##f0f1f2}{#1}");fe("\\grayC","\\textcolor{##e3e5e6}{#1}");fe("\\grayD","\\textcolor{##d6d8da}{#1}");fe("\\grayE","\\textcolor{##babec2}{#1}");fe("\\grayF","\\textcolor{##888d93}{#1}");fe("\\grayG","\\textcolor{##626569}{#1}");fe("\\grayH","\\textcolor{##3b3e40}{#1}");fe("\\grayI","\\textcolor{##21242c}{#1}");fe("\\kaBlue","\\textcolor{##314453}{#1}");fe("\\kaGreen","\\textcolor{##71B307}{#1}");LG={"^":!0,_:!0,"\\limits":!0,"\\nolimits":!0},I7=class{static{o(this,"MacroExpander")}constructor(e,r,n){this.settings=void 0,this.expansionCount=void 0,this.lexer=void 0,this.macros=void 0,this.stack=void 0,this.mode=void 0,this.settings=r,this.expansionCount=0,this.feed(e),this.macros=new M7(V4e,r.macros),this.mode=n,this.stack=[]}feed(e){this.lexer=new y3(e,this.settings)}switchMode(e){this.mode=e}beginGroup(){this.macros.beginGroup()}endGroup(){this.macros.endGroup()}endGroups(){this.macros.endGroups()}future(){return this.stack.length===0&&this.pushToken(this.lexer.lex()),this.stack[this.stack.length-1]}popToken(){return this.future(),this.stack.pop()}pushToken(e){this.stack.push(e)}pushTokens(e){this.stack.push(...e)}scanArgument(e){var r,n,i;if(e){if(this.consumeSpaces(),this.future().text!=="[")return null;r=this.popToken(),{tokens:i,end:n}=this.consumeArg(["]"])}else({tokens:i,start:r,end:n}=this.consumeArg());return this.pushToken(new So("EOF",n.loc)),this.pushTokens(i),r.range(n,"")}consumeSpaces(){for(;;){var e=this.future();if(e.text===" ")this.stack.pop();else break}}consumeArg(e){var r=[],n=e&&e.length>0;n||this.consumeSpaces();var i=this.future(),a,s=0,l=0;do{if(a=this.popToken(),r.push(a),a.text==="{")++s;else if(a.text==="}"){if(--s,s===-1)throw new gt("Extra }",a)}else if(a.text==="EOF")throw new gt("Unexpected end of input in a macro argument, expected '"+(e&&n?e[l]:"}")+"'",a);if(e&&n)if((s===0||s===1&&e[l]==="{")&&a.text===e[l]){if(++l,l===e.length){r.splice(-l,l);break}}else l=0}while(s!==0||n);return i.text==="{"&&r[r.length-1].text==="}"&&(r.pop(),r.shift()),r.reverse(),{tokens:r,start:i,end:a}}consumeArgs(e,r){if(r){if(r.length!==e+1)throw new gt("The length of delimiters doesn't match the number of args!");for(var n=r[0],i=0;ithis.settings.maxExpand)throw new gt("Too many expansions: infinite loop or need to increase maxExpand setting")}expandOnce(e){var r=this.popToken(),n=r.text,i=r.noexpand?null:this._getExpansion(n);if(i==null||e&&i.unexpandable){if(e&&i==null&&n[0]==="\\"&&!this.isDefined(n))throw new gt("Undefined control sequence: "+n);return this.pushToken(r),!1}this.countExpansion(1);var a=i.tokens,s=this.consumeArgs(i.numArgs,i.delimiters);if(i.numArgs){a=a.slice();for(var l=a.length-1;l>=0;--l){var u=a[l];if(u.text==="#"){if(l===0)throw new gt("Incomplete placeholder at end of macro body",u);if(u=a[--l],u.text==="#")a.splice(l+1,1);else if(/^[1-9]$/.test(u.text))a.splice(l,2,...s[+u.text-1]);else throw new gt("Not a valid argument number",u)}}}return this.pushTokens(a),a.length}expandAfterFuture(){return this.expandOnce(),this.future()}expandNextToken(){for(;;)if(this.expandOnce()===!1){var e=this.stack.pop();return e.treatAsRelax&&(e.text="\\relax"),e}throw new Error}expandMacro(e){return this.macros.has(e)?this.expandTokens([new So(e)]):void 0}expandTokens(e){var r=[],n=this.stack.length;for(this.pushTokens(e);this.stack.length>n;)if(this.expandOnce(!0)===!1){var i=this.stack.pop();i.treatAsRelax&&(i.noexpand=!1,i.treatAsRelax=!1),r.push(i)}return this.countExpansion(r.length),r}expandMacroAsText(e){var r=this.expandMacro(e);return r&&r.map(n=>n.text).join("")}_getExpansion(e){var r=this.macros.get(e);if(r==null)return r;if(e.length===1){var n=this.lexer.catcodes[e];if(n!=null&&n!==13)return}var i=typeof r=="function"?r(this):r;if(typeof i=="string"){var a=0;if(i.indexOf("#")!==-1)for(var s=i.replace(/##/g,"");s.indexOf("#"+(a+1))!==-1;)++a;for(var l=new y3(i,this.settings),u=[],h=l.lex();h.text!=="EOF";)u.push(h),h=l.lex();u.reverse();var f={tokens:u,numArgs:a};return f}return i}isDefined(e){return this.macros.has(e)||hh.hasOwnProperty(e)||An.math.hasOwnProperty(e)||An.text.hasOwnProperty(e)||LG.hasOwnProperty(e)}isExpandable(e){var r=this.macros.get(e);return r!=null?typeof r=="string"||typeof r=="function"||!r.unexpandable:hh.hasOwnProperty(e)&&!hh[e].primitive}},Pz=/^[₊₋₌₍₎₀₁₂₃₄₅₆₇₈₉ₐₑₕᵢⱼₖₗₘₙₒₚᵣₛₜᵤᵥₓᵦᵧᵨᵩᵪ]/,l3=Object.freeze({"\u208A":"+","\u208B":"-","\u208C":"=","\u208D":"(","\u208E":")","\u2080":"0","\u2081":"1","\u2082":"2","\u2083":"3","\u2084":"4","\u2085":"5","\u2086":"6","\u2087":"7","\u2088":"8","\u2089":"9","\u2090":"a","\u2091":"e","\u2095":"h","\u1D62":"i","\u2C7C":"j","\u2096":"k","\u2097":"l","\u2098":"m","\u2099":"n","\u2092":"o","\u209A":"p","\u1D63":"r","\u209B":"s","\u209C":"t","\u1D64":"u","\u1D65":"v","\u2093":"x","\u1D66":"\u03B2","\u1D67":"\u03B3","\u1D68":"\u03C1","\u1D69":"\u03D5","\u1D6A":"\u03C7","\u207A":"+","\u207B":"-","\u207C":"=","\u207D":"(","\u207E":")","\u2070":"0","\xB9":"1","\xB2":"2","\xB3":"3","\u2074":"4","\u2075":"5","\u2076":"6","\u2077":"7","\u2078":"8","\u2079":"9","\u1D2C":"A","\u1D2E":"B","\u1D30":"D","\u1D31":"E","\u1D33":"G","\u1D34":"H","\u1D35":"I","\u1D36":"J","\u1D37":"K","\u1D38":"L","\u1D39":"M","\u1D3A":"N","\u1D3C":"O","\u1D3E":"P","\u1D3F":"R","\u1D40":"T","\u1D41":"U","\u2C7D":"V","\u1D42":"W","\u1D43":"a","\u1D47":"b","\u1D9C":"c","\u1D48":"d","\u1D49":"e","\u1DA0":"f","\u1D4D":"g",\u02B0:"h","\u2071":"i",\u02B2:"j","\u1D4F":"k",\u02E1:"l","\u1D50":"m",\u207F:"n","\u1D52":"o","\u1D56":"p",\u02B3:"r",\u02E2:"s","\u1D57":"t","\u1D58":"u","\u1D5B":"v",\u02B7:"w",\u02E3:"x",\u02B8:"y","\u1DBB":"z","\u1D5D":"\u03B2","\u1D5E":"\u03B3","\u1D5F":"\u03B4","\u1D60":"\u03D5","\u1D61":"\u03C7","\u1DBF":"\u03B8"}),T7={"\u0301":{text:"\\'",math:"\\acute"},"\u0300":{text:"\\`",math:"\\grave"},"\u0308":{text:'\\"',math:"\\ddot"},"\u0303":{text:"\\~",math:"\\tilde"},"\u0304":{text:"\\=",math:"\\bar"},"\u0306":{text:"\\u",math:"\\breve"},"\u030C":{text:"\\v",math:"\\check"},"\u0302":{text:"\\^",math:"\\hat"},"\u0307":{text:"\\.",math:"\\dot"},"\u030A":{text:"\\r",math:"\\mathring"},"\u030B":{text:"\\H"},"\u0327":{text:"\\c"}},Bz={\u00E1:"a\u0301",\u00E0:"a\u0300",\u00E4:"a\u0308",\u01DF:"a\u0308\u0304",\u00E3:"a\u0303",\u0101:"a\u0304",\u0103:"a\u0306",\u1EAF:"a\u0306\u0301",\u1EB1:"a\u0306\u0300",\u1EB5:"a\u0306\u0303",\u01CE:"a\u030C",\u00E2:"a\u0302",\u1EA5:"a\u0302\u0301",\u1EA7:"a\u0302\u0300",\u1EAB:"a\u0302\u0303",\u0227:"a\u0307",\u01E1:"a\u0307\u0304",\u00E5:"a\u030A",\u01FB:"a\u030A\u0301",\u1E03:"b\u0307",\u0107:"c\u0301",\u1E09:"c\u0327\u0301",\u010D:"c\u030C",\u0109:"c\u0302",\u010B:"c\u0307",\u00E7:"c\u0327",\u010F:"d\u030C",\u1E0B:"d\u0307",\u1E11:"d\u0327",\u00E9:"e\u0301",\u00E8:"e\u0300",\u00EB:"e\u0308",\u1EBD:"e\u0303",\u0113:"e\u0304",\u1E17:"e\u0304\u0301",\u1E15:"e\u0304\u0300",\u0115:"e\u0306",\u1E1D:"e\u0327\u0306",\u011B:"e\u030C",\u00EA:"e\u0302",\u1EBF:"e\u0302\u0301",\u1EC1:"e\u0302\u0300",\u1EC5:"e\u0302\u0303",\u0117:"e\u0307",\u0229:"e\u0327",\u1E1F:"f\u0307",\u01F5:"g\u0301",\u1E21:"g\u0304",\u011F:"g\u0306",\u01E7:"g\u030C",\u011D:"g\u0302",\u0121:"g\u0307",\u0123:"g\u0327",\u1E27:"h\u0308",\u021F:"h\u030C",\u0125:"h\u0302",\u1E23:"h\u0307",\u1E29:"h\u0327",\u00ED:"i\u0301",\u00EC:"i\u0300",\u00EF:"i\u0308",\u1E2F:"i\u0308\u0301",\u0129:"i\u0303",\u012B:"i\u0304",\u012D:"i\u0306",\u01D0:"i\u030C",\u00EE:"i\u0302",\u01F0:"j\u030C",\u0135:"j\u0302",\u1E31:"k\u0301",\u01E9:"k\u030C",\u0137:"k\u0327",\u013A:"l\u0301",\u013E:"l\u030C",\u013C:"l\u0327",\u1E3F:"m\u0301",\u1E41:"m\u0307",\u0144:"n\u0301",\u01F9:"n\u0300",\u00F1:"n\u0303",\u0148:"n\u030C",\u1E45:"n\u0307",\u0146:"n\u0327",\u00F3:"o\u0301",\u00F2:"o\u0300",\u00F6:"o\u0308",\u022B:"o\u0308\u0304",\u00F5:"o\u0303",\u1E4D:"o\u0303\u0301",\u1E4F:"o\u0303\u0308",\u022D:"o\u0303\u0304",\u014D:"o\u0304",\u1E53:"o\u0304\u0301",\u1E51:"o\u0304\u0300",\u014F:"o\u0306",\u01D2:"o\u030C",\u00F4:"o\u0302",\u1ED1:"o\u0302\u0301",\u1ED3:"o\u0302\u0300",\u1ED7:"o\u0302\u0303",\u022F:"o\u0307",\u0231:"o\u0307\u0304",\u0151:"o\u030B",\u1E55:"p\u0301",\u1E57:"p\u0307",\u0155:"r\u0301",\u0159:"r\u030C",\u1E59:"r\u0307",\u0157:"r\u0327",\u015B:"s\u0301",\u1E65:"s\u0301\u0307",\u0161:"s\u030C",\u1E67:"s\u030C\u0307",\u015D:"s\u0302",\u1E61:"s\u0307",\u015F:"s\u0327",\u1E97:"t\u0308",\u0165:"t\u030C",\u1E6B:"t\u0307",\u0163:"t\u0327",\u00FA:"u\u0301",\u00F9:"u\u0300",\u00FC:"u\u0308",\u01D8:"u\u0308\u0301",\u01DC:"u\u0308\u0300",\u01D6:"u\u0308\u0304",\u01DA:"u\u0308\u030C",\u0169:"u\u0303",\u1E79:"u\u0303\u0301",\u016B:"u\u0304",\u1E7B:"u\u0304\u0308",\u016D:"u\u0306",\u01D4:"u\u030C",\u00FB:"u\u0302",\u016F:"u\u030A",\u0171:"u\u030B",\u1E7D:"v\u0303",\u1E83:"w\u0301",\u1E81:"w\u0300",\u1E85:"w\u0308",\u0175:"w\u0302",\u1E87:"w\u0307",\u1E98:"w\u030A",\u1E8D:"x\u0308",\u1E8B:"x\u0307",\u00FD:"y\u0301",\u1EF3:"y\u0300",\u00FF:"y\u0308",\u1EF9:"y\u0303",\u0233:"y\u0304",\u0177:"y\u0302",\u1E8F:"y\u0307",\u1E99:"y\u030A",\u017A:"z\u0301",\u017E:"z\u030C",\u1E91:"z\u0302",\u017C:"z\u0307",\u00C1:"A\u0301",\u00C0:"A\u0300",\u00C4:"A\u0308",\u01DE:"A\u0308\u0304",\u00C3:"A\u0303",\u0100:"A\u0304",\u0102:"A\u0306",\u1EAE:"A\u0306\u0301",\u1EB0:"A\u0306\u0300",\u1EB4:"A\u0306\u0303",\u01CD:"A\u030C",\u00C2:"A\u0302",\u1EA4:"A\u0302\u0301",\u1EA6:"A\u0302\u0300",\u1EAA:"A\u0302\u0303",\u0226:"A\u0307",\u01E0:"A\u0307\u0304",\u00C5:"A\u030A",\u01FA:"A\u030A\u0301",\u1E02:"B\u0307",\u0106:"C\u0301",\u1E08:"C\u0327\u0301",\u010C:"C\u030C",\u0108:"C\u0302",\u010A:"C\u0307",\u00C7:"C\u0327",\u010E:"D\u030C",\u1E0A:"D\u0307",\u1E10:"D\u0327",\u00C9:"E\u0301",\u00C8:"E\u0300",\u00CB:"E\u0308",\u1EBC:"E\u0303",\u0112:"E\u0304",\u1E16:"E\u0304\u0301",\u1E14:"E\u0304\u0300",\u0114:"E\u0306",\u1E1C:"E\u0327\u0306",\u011A:"E\u030C",\u00CA:"E\u0302",\u1EBE:"E\u0302\u0301",\u1EC0:"E\u0302\u0300",\u1EC4:"E\u0302\u0303",\u0116:"E\u0307",\u0228:"E\u0327",\u1E1E:"F\u0307",\u01F4:"G\u0301",\u1E20:"G\u0304",\u011E:"G\u0306",\u01E6:"G\u030C",\u011C:"G\u0302",\u0120:"G\u0307",\u0122:"G\u0327",\u1E26:"H\u0308",\u021E:"H\u030C",\u0124:"H\u0302",\u1E22:"H\u0307",\u1E28:"H\u0327",\u00CD:"I\u0301",\u00CC:"I\u0300",\u00CF:"I\u0308",\u1E2E:"I\u0308\u0301",\u0128:"I\u0303",\u012A:"I\u0304",\u012C:"I\u0306",\u01CF:"I\u030C",\u00CE:"I\u0302",\u0130:"I\u0307",\u0134:"J\u0302",\u1E30:"K\u0301",\u01E8:"K\u030C",\u0136:"K\u0327",\u0139:"L\u0301",\u013D:"L\u030C",\u013B:"L\u0327",\u1E3E:"M\u0301",\u1E40:"M\u0307",\u0143:"N\u0301",\u01F8:"N\u0300",\u00D1:"N\u0303",\u0147:"N\u030C",\u1E44:"N\u0307",\u0145:"N\u0327",\u00D3:"O\u0301",\u00D2:"O\u0300",\u00D6:"O\u0308",\u022A:"O\u0308\u0304",\u00D5:"O\u0303",\u1E4C:"O\u0303\u0301",\u1E4E:"O\u0303\u0308",\u022C:"O\u0303\u0304",\u014C:"O\u0304",\u1E52:"O\u0304\u0301",\u1E50:"O\u0304\u0300",\u014E:"O\u0306",\u01D1:"O\u030C",\u00D4:"O\u0302",\u1ED0:"O\u0302\u0301",\u1ED2:"O\u0302\u0300",\u1ED6:"O\u0302\u0303",\u022E:"O\u0307",\u0230:"O\u0307\u0304",\u0150:"O\u030B",\u1E54:"P\u0301",\u1E56:"P\u0307",\u0154:"R\u0301",\u0158:"R\u030C",\u1E58:"R\u0307",\u0156:"R\u0327",\u015A:"S\u0301",\u1E64:"S\u0301\u0307",\u0160:"S\u030C",\u1E66:"S\u030C\u0307",\u015C:"S\u0302",\u1E60:"S\u0307",\u015E:"S\u0327",\u0164:"T\u030C",\u1E6A:"T\u0307",\u0162:"T\u0327",\u00DA:"U\u0301",\u00D9:"U\u0300",\u00DC:"U\u0308",\u01D7:"U\u0308\u0301",\u01DB:"U\u0308\u0300",\u01D5:"U\u0308\u0304",\u01D9:"U\u0308\u030C",\u0168:"U\u0303",\u1E78:"U\u0303\u0301",\u016A:"U\u0304",\u1E7A:"U\u0304\u0308",\u016C:"U\u0306",\u01D3:"U\u030C",\u00DB:"U\u0302",\u016E:"U\u030A",\u0170:"U\u030B",\u1E7C:"V\u0303",\u1E82:"W\u0301",\u1E80:"W\u0300",\u1E84:"W\u0308",\u0174:"W\u0302",\u1E86:"W\u0307",\u1E8C:"X\u0308",\u1E8A:"X\u0307",\u00DD:"Y\u0301",\u1EF2:"Y\u0300",\u0178:"Y\u0308",\u1EF8:"Y\u0303",\u0232:"Y\u0304",\u0176:"Y\u0302",\u1E8E:"Y\u0307",\u0179:"Z\u0301",\u017D:"Z\u030C",\u1E90:"Z\u0302",\u017B:"Z\u0307",\u03AC:"\u03B1\u0301",\u1F70:"\u03B1\u0300",\u1FB1:"\u03B1\u0304",\u1FB0:"\u03B1\u0306",\u03AD:"\u03B5\u0301",\u1F72:"\u03B5\u0300",\u03AE:"\u03B7\u0301",\u1F74:"\u03B7\u0300",\u03AF:"\u03B9\u0301",\u1F76:"\u03B9\u0300",\u03CA:"\u03B9\u0308",\u0390:"\u03B9\u0308\u0301",\u1FD2:"\u03B9\u0308\u0300",\u1FD1:"\u03B9\u0304",\u1FD0:"\u03B9\u0306",\u03CC:"\u03BF\u0301",\u1F78:"\u03BF\u0300",\u03CD:"\u03C5\u0301",\u1F7A:"\u03C5\u0300",\u03CB:"\u03C5\u0308",\u03B0:"\u03C5\u0308\u0301",\u1FE2:"\u03C5\u0308\u0300",\u1FE1:"\u03C5\u0304",\u1FE0:"\u03C5\u0306",\u03CE:"\u03C9\u0301",\u1F7C:"\u03C9\u0300",\u038E:"\u03A5\u0301",\u1FEA:"\u03A5\u0300",\u03AB:"\u03A5\u0308",\u1FE9:"\u03A5\u0304",\u1FE8:"\u03A5\u0306",\u038F:"\u03A9\u0301",\u1FFA:"\u03A9\u0300"},v3=class t{static{o(this,"Parser")}constructor(e,r){this.mode=void 0,this.gullet=void 0,this.settings=void 0,this.leftrightDepth=void 0,this.nextToken=void 0,this.mode="math",this.gullet=new I7(e,r,this.mode),this.settings=r,this.leftrightDepth=0}expect(e,r){if(r===void 0&&(r=!0),this.fetch().text!==e)throw new gt("Expected '"+e+"', got '"+this.fetch().text+"'",this.fetch());r&&this.consume()}consume(){this.nextToken=null}fetch(){return this.nextToken==null&&(this.nextToken=this.gullet.expandNextToken()),this.nextToken}switchMode(e){this.mode=e,this.gullet.switchMode(e)}parse(){this.settings.globalGroup||this.gullet.beginGroup(),this.settings.colorIsTextColor&&this.gullet.macros.set("\\color","\\textcolor");try{var e=this.parseExpression(!1);return this.expect("EOF"),this.settings.globalGroup||this.gullet.endGroup(),e}finally{this.gullet.endGroups()}}subparse(e){var r=this.nextToken;this.consume(),this.gullet.pushToken(new So("}")),this.gullet.pushTokens(e);var n=this.parseExpression(!1);return this.expect("}"),this.nextToken=r,n}parseExpression(e,r){for(var n=[];;){this.mode==="math"&&this.consumeSpaces();var i=this.fetch();if(t.endOfExpression.indexOf(i.text)!==-1||r&&i.text===r||e&&hh[i.text]&&hh[i.text].infix)break;var a=this.parseAtom(r);if(a){if(a.type==="internal")continue}else break;n.push(a)}return this.mode==="text"&&this.formLigatures(n),this.handleInfixNodes(n)}handleInfixNodes(e){for(var r=-1,n,i=0;i=0&&this.settings.reportNonstrict("unicodeTextInMathMode",'Latin-1/Unicode text character "'+r[0]+'" used in math mode',e);var l=An[this.mode][r].group,u=Xs.range(e),h;if(Mbe.hasOwnProperty(l)){var f=l;h={type:"atom",mode:this.mode,family:f,loc:u,text:r}}else h={type:l,mode:this.mode,loc:u,text:r};s=h}else if(r.charCodeAt(0)>=128)this.settings.strict&&($z(r.charCodeAt(0))?this.mode==="math"&&this.settings.reportNonstrict("unicodeTextInMathMode",'Unicode text character "'+r[0]+'" used in math mode',e):this.settings.reportNonstrict("unknownSymbol",'Unrecognized Unicode character "'+r[0]+'"'+(" ("+r.charCodeAt(0)+")"),e)),s={type:"textord",mode:"text",loc:Xs.range(e),text:r};else return null;if(this.consume(),a)for(var d=0;d{e instanceof Element&&e.tagName==="A"&&e.hasAttribute("target")&&e.setAttribute(t,e.getAttribute("target")??"")}),ch.addHook("afterSanitizeAttributes",e=>{e instanceof Element&&e.tagName==="A"&&e.hasAttribute(t)&&(e.setAttribute("target",e.getAttribute(t)??""),e.removeAttribute(t),e.getAttribute("target")==="_blank"&&e.setAttribute("rel","noopener"))})}var nd,Y4e,X4e,BG,OG,Tr,K4e,Q4e,Z4e,J4e,FG,e3e,fr,t3e,r3e,ec,J7,n3e,i3e,PG,eA,pi,id,mh,Ze,gr=N(()=>{"use strict";u7();nd=//gi,Y4e=o(t=>t?FG(t).replace(/\\n/g,"#br#").split("#br#"):[""],"getRows"),X4e=(()=>{let t=!1;return()=>{t||(j4e(),t=!0)}})();o(j4e,"setupDompurifyHooks");BG=o(t=>(X4e(),ch.sanitize(t)),"removeScript"),OG=o((t,e)=>{if(e.flowchart?.htmlLabels!==!1){let r=e.securityLevel;r==="antiscript"||r==="strict"?t=BG(t):r!=="loose"&&(t=FG(t),t=t.replace(//g,">"),t=t.replace(/=/g,"="),t=J4e(t))}return t},"sanitizeMore"),Tr=o((t,e)=>t&&(e.dompurifyConfig?t=ch.sanitize(OG(t,e),e.dompurifyConfig).toString():t=ch.sanitize(OG(t,e),{FORBID_TAGS:["style"]}).toString(),t),"sanitizeText"),K4e=o((t,e)=>typeof t=="string"?Tr(t,e):t.flat().map(r=>Tr(r,e)),"sanitizeTextOrArray"),Q4e=o(t=>nd.test(t),"hasBreaks"),Z4e=o(t=>t.split(nd),"splitBreaks"),J4e=o(t=>t.replace(/#br#/g,"
"),"placeholderToBreak"),FG=o(t=>t.replace(nd,"#br#"),"breakToPlaceholder"),e3e=o(t=>{let e="";return t&&(e=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,e=e.replaceAll(/\(/g,"\\("),e=e.replaceAll(/\)/g,"\\)")),e},"getUrl"),fr=o(t=>!(t===!1||["false","null","0"].includes(String(t).trim().toLowerCase())),"evaluate"),t3e=o(function(...t){let e=t.filter(r=>!isNaN(r));return Math.max(...e)},"getMax"),r3e=o(function(...t){let e=t.filter(r=>!isNaN(r));return Math.min(...e)},"getMin"),ec=o(function(t){let e=t.split(/(,)/),r=[];for(let n=0;n0&&n+1Math.max(0,t.split(e).length-1),"countOccurrence"),n3e=o((t,e)=>{let r=J7(t,"~"),n=J7(e,"~");return r===1&&n===1},"shouldCombineSets"),i3e=o(t=>{let e=J7(t,"~"),r=!1;if(e<=1)return t;e%2!==0&&t.startsWith("~")&&(t=t.substring(1),r=!0);let n=[...t],i=n.indexOf("~"),a=n.lastIndexOf("~");for(;i!==-1&&a!==-1&&i!==a;)n[i]="<",n[a]=">",i=n.indexOf("~"),a=n.lastIndexOf("~");return r&&n.unshift("~"),n.join("")},"processSet"),PG=o(()=>window.MathMLElement!==void 0,"isMathMLSupported"),eA=/\$\$(.*)\$\$/g,pi=o(t=>(t.match(eA)?.length??0)>0,"hasKatex"),id=o(async(t,e)=>{t=await mh(t,e);let r=document.createElement("div");r.innerHTML=t,r.id="katex-temp",r.style.visibility="hidden",r.style.position="absolute",r.style.top="0",document.querySelector("body")?.insertAdjacentElement("beforeend",r);let i={width:r.clientWidth,height:r.clientHeight};return r.remove(),i},"calculateMathMLDimensions"),mh=o(async(t,e)=>{if(!pi(t))return t;if(!(PG()||e.legacyMathML||e.forceLegacyMathML))return t.replace(eA,"MathML is unsupported in this environment.");let{default:r}=await Promise.resolve().then(()=>(IG(),MG)),n=e.forceLegacyMathML||!PG()&&e.legacyMathML?"htmlAndMathml":"mathml";return t.split(nd).map(i=>pi(i)?`
${i}
`:`
${i}
`).join("").replace(eA,(i,a)=>r.renderToString(a,{throwOnError:!0,displayMode:!0,output:n}).replace(/\n/g," ").replace(//g,""))},"renderKatex"),Ze={getRows:Y4e,sanitizeText:Tr,sanitizeTextOrArray:K4e,hasBreaks:Q4e,splitBreaks:Z4e,lineBreakRegex:nd,removeScript:BG,getUrl:e3e,evaluate:fr,getMax:t3e,getMin:r3e}});var a3e,s3e,vn,Ao,Ei=N(()=>{"use strict";vt();a3e=o(function(t,e){for(let r of e)t.attr(r[0],r[1])},"d3Attrs"),s3e=o(function(t,e,r){let n=new Map;return r?(n.set("width","100%"),n.set("style",`max-width: ${e}px;`)):(n.set("height",t),n.set("width",e)),n},"calculateSvgSizeAttrs"),vn=o(function(t,e,r,n){let i=s3e(e,r,n);a3e(t,i)},"configureSvgSize"),Ao=o(function(t,e,r,n){let i=e.node().getBBox(),a=i.width,s=i.height;Y.info(`SVG bounds: ${a}x${s}`,i);let l=0,u=0;Y.info(`Graph bounds: ${l}x${u}`,t),l=a+r*2,u=s+r*2,Y.info(`Calculated bounds: ${l}x${u}`),vn(e,u,l,n);let h=`${i.x-r} ${i.y-r} ${i.width+2*r} ${i.height+2*r}`;e.attr("viewBox",h)},"setupGraphViewbox")});var S3,o3e,$G,zG,tA=N(()=>{"use strict";vt();S3={},o3e=o((t,e,r)=>{let n="";return t in S3&&S3[t]?n=S3[t](r):Y.warn(`No theme found for ${t}`),` & { + font-family: ${r.fontFamily}; + font-size: ${r.fontSize}; + fill: ${r.textColor} + } + @keyframes edge-animation-frame { + from { + stroke-dashoffset: 0; + } + } + @keyframes dash { + to { + stroke-dashoffset: 0; + } + } + & .edge-animation-slow { + stroke-dasharray: 9,5 !important; + stroke-dashoffset: 900; + animation: dash 50s linear infinite; + stroke-linecap: round; + } + & .edge-animation-fast { + stroke-dasharray: 9,5 !important; + stroke-dashoffset: 900; + animation: dash 20s linear infinite; + stroke-linecap: round; + } + /* Classes common for multiple diagrams */ + + & .error-icon { + fill: ${r.errorBkgColor}; + } + & .error-text { + fill: ${r.errorTextColor}; + stroke: ${r.errorTextColor}; + } + + & .edge-thickness-normal { + stroke-width: 1px; + } + & .edge-thickness-thick { + stroke-width: 3.5px + } + & .edge-pattern-solid { + stroke-dasharray: 0; + } + & .edge-thickness-invisible { + stroke-width: 0; + fill: none; + } + & .edge-pattern-dashed{ + stroke-dasharray: 3; + } + .edge-pattern-dotted { + stroke-dasharray: 2; + } + + & .marker { + fill: ${r.lineColor}; + stroke: ${r.lineColor}; + } + & .marker.cross { + stroke: ${r.lineColor}; + } + + & svg { + font-family: ${r.fontFamily}; + font-size: ${r.fontSize}; + } + & p { + margin: 0 + } + + ${n} + + ${e} +`},"getStyles"),$G=o((t,e)=>{e!==void 0&&(S3[t]=e)},"addStylesForDiagram"),zG=o3e});var qy={};hr(qy,{clear:()=>Ar,getAccDescription:()=>Mr,getAccTitle:()=>Rr,getDiagramTitle:()=>Ir,setAccDescription:()=>Nr,setAccTitle:()=>Lr,setDiagramTitle:()=>$r});var rA,nA,iA,aA,Ar,Lr,Rr,Nr,Mr,$r,Ir,mi=N(()=>{"use strict";gr();ji();rA="",nA="",iA="",aA=o(t=>Tr(t,cr()),"sanitizeText"),Ar=o(()=>{rA="",iA="",nA=""},"clear"),Lr=o(t=>{rA=aA(t).replace(/^\s+/g,"")},"setAccTitle"),Rr=o(()=>rA,"getAccTitle"),Nr=o(t=>{iA=aA(t).replace(/\n\s+/g,` +`)},"setAccDescription"),Mr=o(()=>iA,"getAccDescription"),$r=o(t=>{nA=aA(t)},"setDiagramTitle"),Ir=o(()=>nA,"getDiagramTitle")});var GG,l3e,me,Yy,A3,Xy,oA,c3e,C3,ad,jy,sA,zt=N(()=>{"use strict";Xf();vt();ji();gr();Ei();tA();mi();GG=Y,l3e=wy,me=cr,Yy=X4,A3=lh,Xy=o(t=>Tr(t,me()),"sanitizeText"),oA=Ao,c3e=o(()=>qy,"getCommonDb"),C3={},ad=o((t,e,r)=>{C3[t]&&GG.warn(`Diagram with id ${t} already registered. Overwriting.`),C3[t]=e,r&&FC(t,r),$G(t,e.styles),e.injectUtils?.(GG,l3e,me,Xy,oA,c3e(),()=>{})},"registerDiagram"),jy=o(t=>{if(t in C3)return C3[t];throw new sA(t)},"getDiagram"),sA=class extends Error{static{o(this,"DiagramNotFoundError")}constructor(e){super(`Diagram ${e} not found.`)}}});var ul,gh,Ja,cl,tc,Ky,lA,cA,_3,D3,VG,u3e,h3e,f3e,d3e,p3e,m3e,g3e,y3e,v3e,x3e,b3e,w3e,T3e,k3e,E3e,S3e,C3e,UG,A3e,_3e,HG,D3e,L3e,R3e,N3e,yh,M3e,I3e,O3e,P3e,B3e,Qy,uA=N(()=>{"use strict";zt();gr();mi();ul=[],gh=[""],Ja="global",cl="",tc=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],Ky=[],lA="",cA=!1,_3=4,D3=2,u3e=o(function(){return VG},"getC4Type"),h3e=o(function(t){VG=Tr(t,me())},"setC4Type"),f3e=o(function(t,e,r,n,i,a,s,l,u){if(t==null||e===void 0||e===null||r===void 0||r===null||n===void 0||n===null)return;let h={},f=Ky.find(d=>d.from===e&&d.to===r);if(f?h=f:Ky.push(h),h.type=t,h.from=e,h.to=r,h.label={text:n},i==null)h.techn={text:""};else if(typeof i=="object"){let[d,p]=Object.entries(i)[0];h[d]={text:p}}else h.techn={text:i};if(a==null)h.descr={text:""};else if(typeof a=="object"){let[d,p]=Object.entries(a)[0];h[d]={text:p}}else h.descr={text:a};if(typeof s=="object"){let[d,p]=Object.entries(s)[0];h[d]=p}else h.sprite=s;if(typeof l=="object"){let[d,p]=Object.entries(l)[0];h[d]=p}else h.tags=l;if(typeof u=="object"){let[d,p]=Object.entries(u)[0];h[d]=p}else h.link=u;h.wrap=yh()},"addRel"),d3e=o(function(t,e,r,n,i,a,s){if(e===null||r===null)return;let l={},u=ul.find(h=>h.alias===e);if(u&&e===u.alias?l=u:(l.alias=e,ul.push(l)),r==null?l.label={text:""}:l.label={text:r},n==null)l.descr={text:""};else if(typeof n=="object"){let[h,f]=Object.entries(n)[0];l[h]={text:f}}else l.descr={text:n};if(typeof i=="object"){let[h,f]=Object.entries(i)[0];l[h]=f}else l.sprite=i;if(typeof a=="object"){let[h,f]=Object.entries(a)[0];l[h]=f}else l.tags=a;if(typeof s=="object"){let[h,f]=Object.entries(s)[0];l[h]=f}else l.link=s;l.typeC4Shape={text:t},l.parentBoundary=Ja,l.wrap=yh()},"addPersonOrSystem"),p3e=o(function(t,e,r,n,i,a,s,l){if(e===null||r===null)return;let u={},h=ul.find(f=>f.alias===e);if(h&&e===h.alias?u=h:(u.alias=e,ul.push(u)),r==null?u.label={text:""}:u.label={text:r},n==null)u.techn={text:""};else if(typeof n=="object"){let[f,d]=Object.entries(n)[0];u[f]={text:d}}else u.techn={text:n};if(i==null)u.descr={text:""};else if(typeof i=="object"){let[f,d]=Object.entries(i)[0];u[f]={text:d}}else u.descr={text:i};if(typeof a=="object"){let[f,d]=Object.entries(a)[0];u[f]=d}else u.sprite=a;if(typeof s=="object"){let[f,d]=Object.entries(s)[0];u[f]=d}else u.tags=s;if(typeof l=="object"){let[f,d]=Object.entries(l)[0];u[f]=d}else u.link=l;u.wrap=yh(),u.typeC4Shape={text:t},u.parentBoundary=Ja},"addContainer"),m3e=o(function(t,e,r,n,i,a,s,l){if(e===null||r===null)return;let u={},h=ul.find(f=>f.alias===e);if(h&&e===h.alias?u=h:(u.alias=e,ul.push(u)),r==null?u.label={text:""}:u.label={text:r},n==null)u.techn={text:""};else if(typeof n=="object"){let[f,d]=Object.entries(n)[0];u[f]={text:d}}else u.techn={text:n};if(i==null)u.descr={text:""};else if(typeof i=="object"){let[f,d]=Object.entries(i)[0];u[f]={text:d}}else u.descr={text:i};if(typeof a=="object"){let[f,d]=Object.entries(a)[0];u[f]=d}else u.sprite=a;if(typeof s=="object"){let[f,d]=Object.entries(s)[0];u[f]=d}else u.tags=s;if(typeof l=="object"){let[f,d]=Object.entries(l)[0];u[f]=d}else u.link=l;u.wrap=yh(),u.typeC4Shape={text:t},u.parentBoundary=Ja},"addComponent"),g3e=o(function(t,e,r,n,i){if(t===null||e===null)return;let a={},s=tc.find(l=>l.alias===t);if(s&&t===s.alias?a=s:(a.alias=t,tc.push(a)),e==null?a.label={text:""}:a.label={text:e},r==null)a.type={text:"system"};else if(typeof r=="object"){let[l,u]=Object.entries(r)[0];a[l]={text:u}}else a.type={text:r};if(typeof n=="object"){let[l,u]=Object.entries(n)[0];a[l]=u}else a.tags=n;if(typeof i=="object"){let[l,u]=Object.entries(i)[0];a[l]=u}else a.link=i;a.parentBoundary=Ja,a.wrap=yh(),cl=Ja,Ja=t,gh.push(cl)},"addPersonOrSystemBoundary"),y3e=o(function(t,e,r,n,i){if(t===null||e===null)return;let a={},s=tc.find(l=>l.alias===t);if(s&&t===s.alias?a=s:(a.alias=t,tc.push(a)),e==null?a.label={text:""}:a.label={text:e},r==null)a.type={text:"container"};else if(typeof r=="object"){let[l,u]=Object.entries(r)[0];a[l]={text:u}}else a.type={text:r};if(typeof n=="object"){let[l,u]=Object.entries(n)[0];a[l]=u}else a.tags=n;if(typeof i=="object"){let[l,u]=Object.entries(i)[0];a[l]=u}else a.link=i;a.parentBoundary=Ja,a.wrap=yh(),cl=Ja,Ja=t,gh.push(cl)},"addContainerBoundary"),v3e=o(function(t,e,r,n,i,a,s,l){if(e===null||r===null)return;let u={},h=tc.find(f=>f.alias===e);if(h&&e===h.alias?u=h:(u.alias=e,tc.push(u)),r==null?u.label={text:""}:u.label={text:r},n==null)u.type={text:"node"};else if(typeof n=="object"){let[f,d]=Object.entries(n)[0];u[f]={text:d}}else u.type={text:n};if(i==null)u.descr={text:""};else if(typeof i=="object"){let[f,d]=Object.entries(i)[0];u[f]={text:d}}else u.descr={text:i};if(typeof s=="object"){let[f,d]=Object.entries(s)[0];u[f]=d}else u.tags=s;if(typeof l=="object"){let[f,d]=Object.entries(l)[0];u[f]=d}else u.link=l;u.nodeType=t,u.parentBoundary=Ja,u.wrap=yh(),cl=Ja,Ja=e,gh.push(cl)},"addDeploymentNode"),x3e=o(function(){Ja=cl,gh.pop(),cl=gh.pop(),gh.push(cl)},"popBoundaryParseStack"),b3e=o(function(t,e,r,n,i,a,s,l,u,h,f){let d=ul.find(p=>p.alias===e);if(!(d===void 0&&(d=tc.find(p=>p.alias===e),d===void 0))){if(r!=null)if(typeof r=="object"){let[p,m]=Object.entries(r)[0];d[p]=m}else d.bgColor=r;if(n!=null)if(typeof n=="object"){let[p,m]=Object.entries(n)[0];d[p]=m}else d.fontColor=n;if(i!=null)if(typeof i=="object"){let[p,m]=Object.entries(i)[0];d[p]=m}else d.borderColor=i;if(a!=null)if(typeof a=="object"){let[p,m]=Object.entries(a)[0];d[p]=m}else d.shadowing=a;if(s!=null)if(typeof s=="object"){let[p,m]=Object.entries(s)[0];d[p]=m}else d.shape=s;if(l!=null)if(typeof l=="object"){let[p,m]=Object.entries(l)[0];d[p]=m}else d.sprite=l;if(u!=null)if(typeof u=="object"){let[p,m]=Object.entries(u)[0];d[p]=m}else d.techn=u;if(h!=null)if(typeof h=="object"){let[p,m]=Object.entries(h)[0];d[p]=m}else d.legendText=h;if(f!=null)if(typeof f=="object"){let[p,m]=Object.entries(f)[0];d[p]=m}else d.legendSprite=f}},"updateElStyle"),w3e=o(function(t,e,r,n,i,a,s){let l=Ky.find(u=>u.from===e&&u.to===r);if(l!==void 0){if(n!=null)if(typeof n=="object"){let[u,h]=Object.entries(n)[0];l[u]=h}else l.textColor=n;if(i!=null)if(typeof i=="object"){let[u,h]=Object.entries(i)[0];l[u]=h}else l.lineColor=i;if(a!=null)if(typeof a=="object"){let[u,h]=Object.entries(a)[0];l[u]=parseInt(h)}else l.offsetX=parseInt(a);if(s!=null)if(typeof s=="object"){let[u,h]=Object.entries(s)[0];l[u]=parseInt(h)}else l.offsetY=parseInt(s)}},"updateRelStyle"),T3e=o(function(t,e,r){let n=_3,i=D3;if(typeof e=="object"){let a=Object.values(e)[0];n=parseInt(a)}else n=parseInt(e);if(typeof r=="object"){let a=Object.values(r)[0];i=parseInt(a)}else i=parseInt(r);n>=1&&(_3=n),i>=1&&(D3=i)},"updateLayoutConfig"),k3e=o(function(){return _3},"getC4ShapeInRow"),E3e=o(function(){return D3},"getC4BoundaryInRow"),S3e=o(function(){return Ja},"getCurrentBoundaryParse"),C3e=o(function(){return cl},"getParentBoundaryParse"),UG=o(function(t){return t==null?ul:ul.filter(e=>e.parentBoundary===t)},"getC4ShapeArray"),A3e=o(function(t){return ul.find(e=>e.alias===t)},"getC4Shape"),_3e=o(function(t){return Object.keys(UG(t))},"getC4ShapeKeys"),HG=o(function(t){return t==null?tc:tc.filter(e=>e.parentBoundary===t)},"getBoundaries"),D3e=HG,L3e=o(function(){return Ky},"getRels"),R3e=o(function(){return lA},"getTitle"),N3e=o(function(t){cA=t},"setWrap"),yh=o(function(){return cA},"autoWrap"),M3e=o(function(){ul=[],tc=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],cl="",Ja="global",gh=[""],Ky=[],gh=[""],lA="",cA=!1,_3=4,D3=2},"clear"),I3e={SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25},O3e={FILLED:0,OPEN:1},P3e={LEFTOF:0,RIGHTOF:1,OVER:2},B3e=o(function(t){lA=Tr(t,me())},"setTitle"),Qy={addPersonOrSystem:d3e,addPersonOrSystemBoundary:g3e,addContainer:p3e,addContainerBoundary:y3e,addComponent:m3e,addDeploymentNode:v3e,popBoundaryParseStack:x3e,addRel:f3e,updateElStyle:b3e,updateRelStyle:w3e,updateLayoutConfig:T3e,autoWrap:yh,setWrap:N3e,getC4ShapeArray:UG,getC4Shape:A3e,getC4ShapeKeys:_3e,getBoundaries:HG,getBoundarys:D3e,getCurrentBoundaryParse:S3e,getParentBoundaryParse:C3e,getRels:L3e,getTitle:R3e,getC4Type:u3e,getC4ShapeInRow:k3e,getC4BoundaryInRow:E3e,setAccTitle:Lr,getAccTitle:Rr,getAccDescription:Mr,setAccDescription:Nr,getConfig:o(()=>me().c4,"getConfig"),clear:M3e,LINETYPE:I3e,ARROWTYPE:O3e,PLACEMENT:P3e,setTitle:B3e,setC4Type:h3e}});function sd(t,e){return t==null||e==null?NaN:te?1:t>=e?0:NaN}var hA=N(()=>{"use strict";o(sd,"ascending")});function fA(t,e){return t==null||e==null?NaN:et?1:e>=t?0:NaN}var WG=N(()=>{"use strict";o(fA,"descending")});function od(t){let e,r,n;t.length!==2?(e=sd,r=o((l,u)=>sd(t(l),u),"compare2"),n=o((l,u)=>t(l)-u,"delta")):(e=t===sd||t===fA?t:F3e,r=t,n=t);function i(l,u,h=0,f=l.length){if(h>>1;r(l[d],u)<0?h=d+1:f=d}while(h>>1;r(l[d],u)<=0?h=d+1:f=d}while(hh&&n(l[d-1],u)>-n(l[d],u)?d-1:d}return o(s,"center"),{left:i,center:s,right:a}}function F3e(){return 0}var dA=N(()=>{"use strict";hA();WG();o(od,"bisector");o(F3e,"zero")});function pA(t){return t===null?NaN:+t}var qG=N(()=>{"use strict";o(pA,"number")});var YG,XG,$3e,z3e,mA,jG=N(()=>{"use strict";hA();dA();qG();YG=od(sd),XG=YG.right,$3e=YG.left,z3e=od(pA).center,mA=XG});function KG({_intern:t,_key:e},r){let n=e(r);return t.has(n)?t.get(n):r}function G3e({_intern:t,_key:e},r){let n=e(r);return t.has(n)?t.get(n):(t.set(n,r),r)}function V3e({_intern:t,_key:e},r){let n=e(r);return t.has(n)&&(r=t.get(n),t.delete(n)),r}function U3e(t){return t!==null&&typeof t=="object"?t.valueOf():t}var g0,QG=N(()=>{"use strict";g0=class extends Map{static{o(this,"InternMap")}constructor(e,r=U3e){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:r}}),e!=null)for(let[n,i]of e)this.set(n,i)}get(e){return super.get(KG(this,e))}has(e){return super.has(KG(this,e))}set(e,r){return super.set(G3e(this,e),r)}delete(e){return super.delete(V3e(this,e))}};o(KG,"intern_get");o(G3e,"intern_set");o(V3e,"intern_delete");o(U3e,"keyof")});function L3(t,e,r){let n=(e-t)/Math.max(0,r),i=Math.floor(Math.log10(n)),a=n/Math.pow(10,i),s=a>=H3e?10:a>=W3e?5:a>=q3e?2:1,l,u,h;return i<0?(h=Math.pow(10,-i)/s,l=Math.round(t*h),u=Math.round(e*h),l/he&&--u,h=-h):(h=Math.pow(10,i)*s,l=Math.round(t/h),u=Math.round(e/h),l*he&&--u),u0))return[];if(t===e)return[t];let n=e=i))return[];let l=a-i+1,u=new Array(l);if(n)if(s<0)for(let h=0;h{"use strict";H3e=Math.sqrt(50),W3e=Math.sqrt(10),q3e=Math.sqrt(2);o(L3,"tickSpec");o(R3,"ticks");o(Zy,"tickIncrement");o(y0,"tickStep")});function N3(t,e){let r;if(e===void 0)for(let n of t)n!=null&&(r=n)&&(r=n);else{let n=-1;for(let i of t)(i=e(i,++n,t))!=null&&(r=i)&&(r=i)}return r}var JG=N(()=>{"use strict";o(N3,"max")});function M3(t,e){let r;if(e===void 0)for(let n of t)n!=null&&(r>n||r===void 0&&n>=n)&&(r=n);else{let n=-1;for(let i of t)(i=e(i,++n,t))!=null&&(r>i||r===void 0&&i>=i)&&(r=i)}return r}var eV=N(()=>{"use strict";o(M3,"min")});function I3(t,e,r){t=+t,e=+e,r=(i=arguments.length)<2?(e=t,t=0,1):i<3?1:+r;for(var n=-1,i=Math.max(0,Math.ceil((e-t)/r))|0,a=new Array(i);++n{"use strict";o(I3,"range")});var vh=N(()=>{"use strict";jG();dA();JG();eV();tV();ZG();QG()});function gA(t){return t}var rV=N(()=>{"use strict";o(gA,"default")});function Y3e(t){return"translate("+t+",0)"}function X3e(t){return"translate(0,"+t+")"}function j3e(t){return e=>+t(e)}function K3e(t,e){return e=Math.max(0,t.bandwidth()-e*2)/2,t.round()&&(e=Math.round(e)),r=>+t(r)+e}function Q3e(){return!this.__axis}function iV(t,e){var r=[],n=null,i=null,a=6,s=6,l=3,u=typeof window<"u"&&window.devicePixelRatio>1?0:.5,h=t===P3||t===O3?-1:1,f=t===O3||t===yA?"x":"y",d=t===P3||t===vA?Y3e:X3e;function p(m){var g=n??(e.ticks?e.ticks.apply(e,r):e.domain()),y=i??(e.tickFormat?e.tickFormat.apply(e,r):gA),v=Math.max(a,0)+l,x=e.range(),b=+x[0]+u,w=+x[x.length-1]+u,C=(e.bandwidth?K3e:j3e)(e.copy(),u),T=m.selection?m.selection():m,E=T.selectAll(".domain").data([null]),A=T.selectAll(".tick").data(g,e).order(),S=A.exit(),_=A.enter().append("g").attr("class","tick"),I=A.select("line"),D=A.select("text");E=E.merge(E.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),A=A.merge(_),I=I.merge(_.append("line").attr("stroke","currentColor").attr(f+"2",h*a)),D=D.merge(_.append("text").attr("fill","currentColor").attr(f,h*v).attr("dy",t===P3?"0em":t===vA?"0.71em":"0.32em")),m!==T&&(E=E.transition(m),A=A.transition(m),I=I.transition(m),D=D.transition(m),S=S.transition(m).attr("opacity",nV).attr("transform",function(k){return isFinite(k=C(k))?d(k+u):this.getAttribute("transform")}),_.attr("opacity",nV).attr("transform",function(k){var L=this.parentNode.__axis;return d((L&&isFinite(L=L(k))?L:C(k))+u)})),S.remove(),E.attr("d",t===O3||t===yA?s?"M"+h*s+","+b+"H"+u+"V"+w+"H"+h*s:"M"+u+","+b+"V"+w:s?"M"+b+","+h*s+"V"+u+"H"+w+"V"+h*s:"M"+b+","+u+"H"+w),A.attr("opacity",1).attr("transform",function(k){return d(C(k)+u)}),I.attr(f+"2",h*a),D.attr(f,h*v).text(y),T.filter(Q3e).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",t===yA?"start":t===O3?"end":"middle"),T.each(function(){this.__axis=C})}return o(p,"axis"),p.scale=function(m){return arguments.length?(e=m,p):e},p.ticks=function(){return r=Array.from(arguments),p},p.tickArguments=function(m){return arguments.length?(r=m==null?[]:Array.from(m),p):r.slice()},p.tickValues=function(m){return arguments.length?(n=m==null?null:Array.from(m),p):n&&n.slice()},p.tickFormat=function(m){return arguments.length?(i=m,p):i},p.tickSize=function(m){return arguments.length?(a=s=+m,p):a},p.tickSizeInner=function(m){return arguments.length?(a=+m,p):a},p.tickSizeOuter=function(m){return arguments.length?(s=+m,p):s},p.tickPadding=function(m){return arguments.length?(l=+m,p):l},p.offset=function(m){return arguments.length?(u=+m,p):u},p}function xA(t){return iV(P3,t)}function bA(t){return iV(vA,t)}var P3,yA,vA,O3,nV,aV=N(()=>{"use strict";rV();P3=1,yA=2,vA=3,O3=4,nV=1e-6;o(Y3e,"translateX");o(X3e,"translateY");o(j3e,"number");o(K3e,"center");o(Q3e,"entering");o(iV,"axis");o(xA,"axisTop");o(bA,"axisBottom")});var sV=N(()=>{"use strict";aV()});function lV(){for(var t=0,e=arguments.length,r={},n;t=0&&(n=r.slice(i+1),r=r.slice(0,i)),r&&!e.hasOwnProperty(r))throw new Error("unknown type: "+r);return{type:r,name:n}})}function e5e(t,e){for(var r=0,n=t.length,i;r{"use strict";Z3e={value:o(()=>{},"value")};o(lV,"dispatch");o(B3,"Dispatch");o(J3e,"parseTypenames");B3.prototype=lV.prototype={constructor:B3,on:o(function(t,e){var r=this._,n=J3e(t+"",r),i,a=-1,s=n.length;if(arguments.length<2){for(;++a0)for(var r=new Array(i),n=0,i,a;n{"use strict";cV()});var F3,kA,EA=N(()=>{"use strict";F3="http://www.w3.org/1999/xhtml",kA={svg:"http://www.w3.org/2000/svg",xhtml:F3,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"}});function rc(t){var e=t+="",r=e.indexOf(":");return r>=0&&(e=t.slice(0,r))!=="xmlns"&&(t=t.slice(r+1)),kA.hasOwnProperty(e)?{space:kA[e],local:t}:t}var $3=N(()=>{"use strict";EA();o(rc,"default")});function t5e(t){return function(){var e=this.ownerDocument,r=this.namespaceURI;return r===F3&&e.documentElement.namespaceURI===F3?e.createElement(t):e.createElementNS(r,t)}}function r5e(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function Jy(t){var e=rc(t);return(e.local?r5e:t5e)(e)}var SA=N(()=>{"use strict";$3();EA();o(t5e,"creatorInherit");o(r5e,"creatorFixed");o(Jy,"default")});function n5e(){}function xh(t){return t==null?n5e:function(){return this.querySelector(t)}}var z3=N(()=>{"use strict";o(n5e,"none");o(xh,"default")});function CA(t){typeof t!="function"&&(t=xh(t));for(var e=this._groups,r=e.length,n=new Array(r),i=0;i{"use strict";hl();z3();o(CA,"default")});function AA(t){return t==null?[]:Array.isArray(t)?t:Array.from(t)}var hV=N(()=>{"use strict";o(AA,"array")});function i5e(){return[]}function v0(t){return t==null?i5e:function(){return this.querySelectorAll(t)}}var _A=N(()=>{"use strict";o(i5e,"empty");o(v0,"default")});function a5e(t){return function(){return AA(t.apply(this,arguments))}}function DA(t){typeof t=="function"?t=a5e(t):t=v0(t);for(var e=this._groups,r=e.length,n=[],i=[],a=0;a{"use strict";hl();hV();_A();o(a5e,"arrayAll");o(DA,"default")});function x0(t){return function(){return this.matches(t)}}function G3(t){return function(e){return e.matches(t)}}var ev=N(()=>{"use strict";o(x0,"default");o(G3,"childMatcher")});function o5e(t){return function(){return s5e.call(this.children,t)}}function l5e(){return this.firstElementChild}function LA(t){return this.select(t==null?l5e:o5e(typeof t=="function"?t:G3(t)))}var s5e,dV=N(()=>{"use strict";ev();s5e=Array.prototype.find;o(o5e,"childFind");o(l5e,"childFirst");o(LA,"default")});function u5e(){return Array.from(this.children)}function h5e(t){return function(){return c5e.call(this.children,t)}}function RA(t){return this.selectAll(t==null?u5e:h5e(typeof t=="function"?t:G3(t)))}var c5e,pV=N(()=>{"use strict";ev();c5e=Array.prototype.filter;o(u5e,"children");o(h5e,"childrenFilter");o(RA,"default")});function NA(t){typeof t!="function"&&(t=x0(t));for(var e=this._groups,r=e.length,n=new Array(r),i=0;i{"use strict";hl();ev();o(NA,"default")});function tv(t){return new Array(t.length)}var MA=N(()=>{"use strict";o(tv,"default")});function IA(){return new oi(this._enter||this._groups.map(tv),this._parents)}function rv(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}var OA=N(()=>{"use strict";MA();hl();o(IA,"default");o(rv,"EnterNode");rv.prototype={constructor:rv,appendChild:o(function(t){return this._parent.insertBefore(t,this._next)},"appendChild"),insertBefore:o(function(t,e){return this._parent.insertBefore(t,e)},"insertBefore"),querySelector:o(function(t){return this._parent.querySelector(t)},"querySelector"),querySelectorAll:o(function(t){return this._parent.querySelectorAll(t)},"querySelectorAll")}});function PA(t){return function(){return t}}var gV=N(()=>{"use strict";o(PA,"default")});function f5e(t,e,r,n,i,a){for(var s=0,l,u=e.length,h=a.length;s=w&&(w=b+1);!(T=v[w])&&++w{"use strict";hl();OA();gV();o(f5e,"bindIndex");o(d5e,"bindKey");o(p5e,"datum");o(BA,"default");o(m5e,"arraylike")});function FA(){return new oi(this._exit||this._groups.map(tv),this._parents)}var vV=N(()=>{"use strict";MA();hl();o(FA,"default")});function $A(t,e,r){var n=this.enter(),i=this,a=this.exit();return typeof t=="function"?(n=t(n),n&&(n=n.selection())):n=n.append(t+""),e!=null&&(i=e(i),i&&(i=i.selection())),r==null?a.remove():r(a),n&&i?n.merge(i).order():i}var xV=N(()=>{"use strict";o($A,"default")});function zA(t){for(var e=t.selection?t.selection():t,r=this._groups,n=e._groups,i=r.length,a=n.length,s=Math.min(i,a),l=new Array(i),u=0;u{"use strict";hl();o(zA,"default")});function GA(){for(var t=this._groups,e=-1,r=t.length;++e=0;)(s=n[i])&&(a&&s.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(s,a),a=s);return this}var wV=N(()=>{"use strict";o(GA,"default")});function VA(t){t||(t=g5e);function e(d,p){return d&&p?t(d.__data__,p.__data__):!d-!p}o(e,"compareNode");for(var r=this._groups,n=r.length,i=new Array(n),a=0;ae?1:t>=e?0:NaN}var TV=N(()=>{"use strict";hl();o(VA,"default");o(g5e,"ascending")});function UA(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this}var kV=N(()=>{"use strict";o(UA,"default")});function HA(){return Array.from(this)}var EV=N(()=>{"use strict";o(HA,"default")});function WA(){for(var t=this._groups,e=0,r=t.length;e{"use strict";o(WA,"default")});function qA(){let t=0;for(let e of this)++t;return t}var CV=N(()=>{"use strict";o(qA,"default")});function YA(){return!this.node()}var AV=N(()=>{"use strict";o(YA,"default")});function XA(t){for(var e=this._groups,r=0,n=e.length;r{"use strict";o(XA,"default")});function y5e(t){return function(){this.removeAttribute(t)}}function v5e(t){return function(){this.removeAttributeNS(t.space,t.local)}}function x5e(t,e){return function(){this.setAttribute(t,e)}}function b5e(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function w5e(t,e){return function(){var r=e.apply(this,arguments);r==null?this.removeAttribute(t):this.setAttribute(t,r)}}function T5e(t,e){return function(){var r=e.apply(this,arguments);r==null?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,r)}}function jA(t,e){var r=rc(t);if(arguments.length<2){var n=this.node();return r.local?n.getAttributeNS(r.space,r.local):n.getAttribute(r)}return this.each((e==null?r.local?v5e:y5e:typeof e=="function"?r.local?T5e:w5e:r.local?b5e:x5e)(r,e))}var DV=N(()=>{"use strict";$3();o(y5e,"attrRemove");o(v5e,"attrRemoveNS");o(x5e,"attrConstant");o(b5e,"attrConstantNS");o(w5e,"attrFunction");o(T5e,"attrFunctionNS");o(jA,"default")});function nv(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}var KA=N(()=>{"use strict";o(nv,"default")});function k5e(t){return function(){this.style.removeProperty(t)}}function E5e(t,e,r){return function(){this.style.setProperty(t,e,r)}}function S5e(t,e,r){return function(){var n=e.apply(this,arguments);n==null?this.style.removeProperty(t):this.style.setProperty(t,n,r)}}function QA(t,e,r){return arguments.length>1?this.each((e==null?k5e:typeof e=="function"?S5e:E5e)(t,e,r??"")):bh(this.node(),t)}function bh(t,e){return t.style.getPropertyValue(e)||nv(t).getComputedStyle(t,null).getPropertyValue(e)}var ZA=N(()=>{"use strict";KA();o(k5e,"styleRemove");o(E5e,"styleConstant");o(S5e,"styleFunction");o(QA,"default");o(bh,"styleValue")});function C5e(t){return function(){delete this[t]}}function A5e(t,e){return function(){this[t]=e}}function _5e(t,e){return function(){var r=e.apply(this,arguments);r==null?delete this[t]:this[t]=r}}function JA(t,e){return arguments.length>1?this.each((e==null?C5e:typeof e=="function"?_5e:A5e)(t,e)):this.node()[t]}var LV=N(()=>{"use strict";o(C5e,"propertyRemove");o(A5e,"propertyConstant");o(_5e,"propertyFunction");o(JA,"default")});function RV(t){return t.trim().split(/^|\s+/)}function e8(t){return t.classList||new NV(t)}function NV(t){this._node=t,this._names=RV(t.getAttribute("class")||"")}function MV(t,e){for(var r=e8(t),n=-1,i=e.length;++n{"use strict";o(RV,"classArray");o(e8,"classList");o(NV,"ClassList");NV.prototype={add:o(function(t){var e=this._names.indexOf(t);e<0&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},"add"),remove:o(function(t){var e=this._names.indexOf(t);e>=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},"remove"),contains:o(function(t){return this._names.indexOf(t)>=0},"contains")};o(MV,"classedAdd");o(IV,"classedRemove");o(D5e,"classedTrue");o(L5e,"classedFalse");o(R5e,"classedFunction");o(t8,"default")});function N5e(){this.textContent=""}function M5e(t){return function(){this.textContent=t}}function I5e(t){return function(){var e=t.apply(this,arguments);this.textContent=e??""}}function r8(t){return arguments.length?this.each(t==null?N5e:(typeof t=="function"?I5e:M5e)(t)):this.node().textContent}var PV=N(()=>{"use strict";o(N5e,"textRemove");o(M5e,"textConstant");o(I5e,"textFunction");o(r8,"default")});function O5e(){this.innerHTML=""}function P5e(t){return function(){this.innerHTML=t}}function B5e(t){return function(){var e=t.apply(this,arguments);this.innerHTML=e??""}}function n8(t){return arguments.length?this.each(t==null?O5e:(typeof t=="function"?B5e:P5e)(t)):this.node().innerHTML}var BV=N(()=>{"use strict";o(O5e,"htmlRemove");o(P5e,"htmlConstant");o(B5e,"htmlFunction");o(n8,"default")});function F5e(){this.nextSibling&&this.parentNode.appendChild(this)}function i8(){return this.each(F5e)}var FV=N(()=>{"use strict";o(F5e,"raise");o(i8,"default")});function $5e(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function a8(){return this.each($5e)}var $V=N(()=>{"use strict";o($5e,"lower");o(a8,"default")});function s8(t){var e=typeof t=="function"?t:Jy(t);return this.select(function(){return this.appendChild(e.apply(this,arguments))})}var zV=N(()=>{"use strict";SA();o(s8,"default")});function z5e(){return null}function o8(t,e){var r=typeof t=="function"?t:Jy(t),n=e==null?z5e:typeof e=="function"?e:xh(e);return this.select(function(){return this.insertBefore(r.apply(this,arguments),n.apply(this,arguments)||null)})}var GV=N(()=>{"use strict";SA();z3();o(z5e,"constantNull");o(o8,"default")});function G5e(){var t=this.parentNode;t&&t.removeChild(this)}function l8(){return this.each(G5e)}var VV=N(()=>{"use strict";o(G5e,"remove");o(l8,"default")});function V5e(){var t=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function U5e(){var t=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function c8(t){return this.select(t?U5e:V5e)}var UV=N(()=>{"use strict";o(V5e,"selection_cloneShallow");o(U5e,"selection_cloneDeep");o(c8,"default")});function u8(t){return arguments.length?this.property("__data__",t):this.node().__data__}var HV=N(()=>{"use strict";o(u8,"default")});function H5e(t){return function(e){t.call(this,e,this.__data__)}}function W5e(t){return t.trim().split(/^|\s+/).map(function(e){var r="",n=e.indexOf(".");return n>=0&&(r=e.slice(n+1),e=e.slice(0,n)),{type:e,name:r}})}function q5e(t){return function(){var e=this.__on;if(e){for(var r=0,n=-1,i=e.length,a;r{"use strict";o(H5e,"contextListener");o(W5e,"parseTypenames");o(q5e,"onRemove");o(Y5e,"onAdd");o(h8,"default")});function qV(t,e,r){var n=nv(t),i=n.CustomEvent;typeof i=="function"?i=new i(e,r):(i=n.document.createEvent("Event"),r?(i.initEvent(e,r.bubbles,r.cancelable),i.detail=r.detail):i.initEvent(e,!1,!1)),t.dispatchEvent(i)}function X5e(t,e){return function(){return qV(this,t,e)}}function j5e(t,e){return function(){return qV(this,t,e.apply(this,arguments))}}function f8(t,e){return this.each((typeof e=="function"?j5e:X5e)(t,e))}var YV=N(()=>{"use strict";KA();o(qV,"dispatchEvent");o(X5e,"dispatchConstant");o(j5e,"dispatchFunction");o(f8,"default")});function*d8(){for(var t=this._groups,e=0,r=t.length;e{"use strict";o(d8,"default")});function oi(t,e){this._groups=t,this._parents=e}function jV(){return new oi([[document.documentElement]],p8)}function K5e(){return this}var p8,hu,hl=N(()=>{"use strict";uV();fV();dV();pV();mV();yV();OA();vV();xV();bV();wV();TV();kV();EV();SV();CV();AV();_V();DV();ZA();LV();OV();PV();BV();FV();$V();zV();GV();VV();UV();HV();WV();YV();XV();p8=[null];o(oi,"Selection");o(jV,"selection");o(K5e,"selection_selection");oi.prototype=jV.prototype={constructor:oi,select:CA,selectAll:DA,selectChild:LA,selectChildren:RA,filter:NA,data:BA,enter:IA,exit:FA,join:$A,merge:zA,selection:K5e,order:GA,sort:VA,call:UA,nodes:HA,node:WA,size:qA,empty:YA,each:XA,attr:jA,style:QA,property:JA,classed:t8,text:r8,html:n8,raise:i8,lower:a8,append:s8,insert:o8,remove:l8,clone:c8,datum:u8,on:h8,dispatch:f8,[Symbol.iterator]:d8};hu=jV});function Ge(t){return typeof t=="string"?new oi([[document.querySelector(t)]],[document.documentElement]):new oi([[t]],p8)}var KV=N(()=>{"use strict";hl();o(Ge,"default")});var fl=N(()=>{"use strict";ev();$3();KV();hl();z3();_A();ZA()});var QV=N(()=>{"use strict"});function wh(t,e,r){t.prototype=e.prototype=r,r.constructor=t}function b0(t,e){var r=Object.create(t.prototype);for(var n in e)r[n]=e[n];return r}var m8=N(()=>{"use strict";o(wh,"default");o(b0,"extend")});function Th(){}function JV(){return this.rgb().formatHex()}function iwe(){return this.rgb().formatHex8()}function awe(){return sU(this).formatHsl()}function eU(){return this.rgb().formatRgb()}function pl(t){var e,r;return t=(t+"").trim().toLowerCase(),(e=Q5e.exec(t))?(r=e[1].length,e=parseInt(e[1],16),r===6?tU(e):r===3?new ua(e>>8&15|e>>4&240,e>>4&15|e&240,(e&15)<<4|e&15,1):r===8?V3(e>>24&255,e>>16&255,e>>8&255,(e&255)/255):r===4?V3(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|e&240,((e&15)<<4|e&15)/255):null):(e=Z5e.exec(t))?new ua(e[1],e[2],e[3],1):(e=J5e.exec(t))?new ua(e[1]*255/100,e[2]*255/100,e[3]*255/100,1):(e=ewe.exec(t))?V3(e[1],e[2],e[3],e[4]):(e=twe.exec(t))?V3(e[1]*255/100,e[2]*255/100,e[3]*255/100,e[4]):(e=rwe.exec(t))?iU(e[1],e[2]/100,e[3]/100,1):(e=nwe.exec(t))?iU(e[1],e[2]/100,e[3]/100,e[4]):ZV.hasOwnProperty(t)?tU(ZV[t]):t==="transparent"?new ua(NaN,NaN,NaN,0):null}function tU(t){return new ua(t>>16&255,t>>8&255,t&255,1)}function V3(t,e,r,n){return n<=0&&(t=e=r=NaN),new ua(t,e,r,n)}function y8(t){return t instanceof Th||(t=pl(t)),t?(t=t.rgb(),new ua(t.r,t.g,t.b,t.opacity)):new ua}function T0(t,e,r,n){return arguments.length===1?y8(t):new ua(t,e,r,n??1)}function ua(t,e,r,n){this.r=+t,this.g=+e,this.b=+r,this.opacity=+n}function rU(){return`#${ld(this.r)}${ld(this.g)}${ld(this.b)}`}function swe(){return`#${ld(this.r)}${ld(this.g)}${ld(this.b)}${ld((isNaN(this.opacity)?1:this.opacity)*255)}`}function nU(){let t=W3(this.opacity);return`${t===1?"rgb(":"rgba("}${cd(this.r)}, ${cd(this.g)}, ${cd(this.b)}${t===1?")":`, ${t})`}`}function W3(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function cd(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function ld(t){return t=cd(t),(t<16?"0":"")+t.toString(16)}function iU(t,e,r,n){return n<=0?t=e=r=NaN:r<=0||r>=1?t=e=NaN:e<=0&&(t=NaN),new dl(t,e,r,n)}function sU(t){if(t instanceof dl)return new dl(t.h,t.s,t.l,t.opacity);if(t instanceof Th||(t=pl(t)),!t)return new dl;if(t instanceof dl)return t;t=t.rgb();var e=t.r/255,r=t.g/255,n=t.b/255,i=Math.min(e,r,n),a=Math.max(e,r,n),s=NaN,l=a-i,u=(a+i)/2;return l?(e===a?s=(r-n)/l+(r0&&u<1?0:s,new dl(s,l,u,t.opacity)}function oU(t,e,r,n){return arguments.length===1?sU(t):new dl(t,e,r,n??1)}function dl(t,e,r,n){this.h=+t,this.s=+e,this.l=+r,this.opacity=+n}function aU(t){return t=(t||0)%360,t<0?t+360:t}function U3(t){return Math.max(0,Math.min(1,t||0))}function g8(t,e,r){return(t<60?e+(r-e)*t/60:t<180?r:t<240?e+(r-e)*(240-t)/60:e)*255}var iv,H3,w0,av,nc,Q5e,Z5e,J5e,ewe,twe,rwe,nwe,ZV,v8=N(()=>{"use strict";m8();o(Th,"Color");iv=.7,H3=1/iv,w0="\\s*([+-]?\\d+)\\s*",av="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",nc="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",Q5e=/^#([0-9a-f]{3,8})$/,Z5e=new RegExp(`^rgb\\(${w0},${w0},${w0}\\)$`),J5e=new RegExp(`^rgb\\(${nc},${nc},${nc}\\)$`),ewe=new RegExp(`^rgba\\(${w0},${w0},${w0},${av}\\)$`),twe=new RegExp(`^rgba\\(${nc},${nc},${nc},${av}\\)$`),rwe=new RegExp(`^hsl\\(${av},${nc},${nc}\\)$`),nwe=new RegExp(`^hsla\\(${av},${nc},${nc},${av}\\)$`),ZV={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};wh(Th,pl,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:JV,formatHex:JV,formatHex8:iwe,formatHsl:awe,formatRgb:eU,toString:eU});o(JV,"color_formatHex");o(iwe,"color_formatHex8");o(awe,"color_formatHsl");o(eU,"color_formatRgb");o(pl,"color");o(tU,"rgbn");o(V3,"rgba");o(y8,"rgbConvert");o(T0,"rgb");o(ua,"Rgb");wh(ua,T0,b0(Th,{brighter(t){return t=t==null?H3:Math.pow(H3,t),new ua(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=t==null?iv:Math.pow(iv,t),new ua(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new ua(cd(this.r),cd(this.g),cd(this.b),W3(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:rU,formatHex:rU,formatHex8:swe,formatRgb:nU,toString:nU}));o(rU,"rgb_formatHex");o(swe,"rgb_formatHex8");o(nU,"rgb_formatRgb");o(W3,"clampa");o(cd,"clampi");o(ld,"hex");o(iU,"hsla");o(sU,"hslConvert");o(oU,"hsl");o(dl,"Hsl");wh(dl,oU,b0(Th,{brighter(t){return t=t==null?H3:Math.pow(H3,t),new dl(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?iv:Math.pow(iv,t),new dl(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+(this.h<0)*360,e=isNaN(t)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*e,i=2*r-n;return new ua(g8(t>=240?t-240:t+120,i,n),g8(t,i,n),g8(t<120?t+240:t-120,i,n),this.opacity)},clamp(){return new dl(aU(this.h),U3(this.s),U3(this.l),W3(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let t=W3(this.opacity);return`${t===1?"hsl(":"hsla("}${aU(this.h)}, ${U3(this.s)*100}%, ${U3(this.l)*100}%${t===1?")":`, ${t})`}`}}));o(aU,"clamph");o(U3,"clampt");o(g8,"hsl2rgb")});var lU,cU,uU=N(()=>{"use strict";lU=Math.PI/180,cU=180/Math.PI});function gU(t){if(t instanceof ic)return new ic(t.l,t.a,t.b,t.opacity);if(t instanceof fu)return yU(t);t instanceof ua||(t=y8(t));var e=T8(t.r),r=T8(t.g),n=T8(t.b),i=x8((.2225045*e+.7168786*r+.0606169*n)/fU),a,s;return e===r&&r===n?a=s=i:(a=x8((.4360747*e+.3850649*r+.1430804*n)/hU),s=x8((.0139322*e+.0971045*r+.7141733*n)/dU)),new ic(116*i-16,500*(a-i),200*(i-s),t.opacity)}function k8(t,e,r,n){return arguments.length===1?gU(t):new ic(t,e,r,n??1)}function ic(t,e,r,n){this.l=+t,this.a=+e,this.b=+r,this.opacity=+n}function x8(t){return t>owe?Math.pow(t,1/3):t/mU+pU}function b8(t){return t>k0?t*t*t:mU*(t-pU)}function w8(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function T8(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function lwe(t){if(t instanceof fu)return new fu(t.h,t.c,t.l,t.opacity);if(t instanceof ic||(t=gU(t)),t.a===0&&t.b===0)return new fu(NaN,0{"use strict";m8();v8();uU();q3=18,hU=.96422,fU=1,dU=.82521,pU=4/29,k0=6/29,mU=3*k0*k0,owe=k0*k0*k0;o(gU,"labConvert");o(k8,"lab");o(ic,"Lab");wh(ic,k8,b0(Th,{brighter(t){return new ic(this.l+q3*(t??1),this.a,this.b,this.opacity)},darker(t){return new ic(this.l-q3*(t??1),this.a,this.b,this.opacity)},rgb(){var t=(this.l+16)/116,e=isNaN(this.a)?t:t+this.a/500,r=isNaN(this.b)?t:t-this.b/200;return e=hU*b8(e),t=fU*b8(t),r=dU*b8(r),new ua(w8(3.1338561*e-1.6168667*t-.4906146*r),w8(-.9787684*e+1.9161415*t+.033454*r),w8(.0719453*e-.2289914*t+1.4052427*r),this.opacity)}}));o(x8,"xyz2lab");o(b8,"lab2xyz");o(w8,"lrgb2rgb");o(T8,"rgb2lrgb");o(lwe,"hclConvert");o(sv,"hcl");o(fu,"Hcl");o(yU,"hcl2lab");wh(fu,sv,b0(Th,{brighter(t){return new fu(this.h,this.c,this.l+q3*(t??1),this.opacity)},darker(t){return new fu(this.h,this.c,this.l-q3*(t??1),this.opacity)},rgb(){return yU(this).rgb()}}))});var E0=N(()=>{"use strict";v8();vU()});function E8(t,e,r,n,i){var a=t*t,s=a*t;return((1-3*t+3*a-s)*e+(4-6*a+3*s)*r+(1+3*t+3*a-3*s)*n+s*i)/6}function S8(t){var e=t.length-1;return function(r){var n=r<=0?r=0:r>=1?(r=1,e-1):Math.floor(r*e),i=t[n],a=t[n+1],s=n>0?t[n-1]:2*i-a,l=n{"use strict";o(E8,"basis");o(S8,"default")});function A8(t){var e=t.length;return function(r){var n=Math.floor(((r%=1)<0?++r:r)*e),i=t[(n+e-1)%e],a=t[n%e],s=t[(n+1)%e],l=t[(n+2)%e];return E8((r-n/e)*e,i,a,s,l)}}var xU=N(()=>{"use strict";C8();o(A8,"default")});var S0,_8=N(()=>{"use strict";S0=o(t=>()=>t,"default")});function bU(t,e){return function(r){return t+r*e}}function cwe(t,e,r){return t=Math.pow(t,r),e=Math.pow(e,r)-t,r=1/r,function(n){return Math.pow(t+n*e,r)}}function wU(t,e){var r=e-t;return r?bU(t,r>180||r<-180?r-360*Math.round(r/360):r):S0(isNaN(t)?e:t)}function TU(t){return(t=+t)==1?du:function(e,r){return r-e?cwe(e,r,t):S0(isNaN(e)?r:e)}}function du(t,e){var r=e-t;return r?bU(t,r):S0(isNaN(t)?e:t)}var D8=N(()=>{"use strict";_8();o(bU,"linear");o(cwe,"exponential");o(wU,"hue");o(TU,"gamma");o(du,"nogamma")});function kU(t){return function(e){var r=e.length,n=new Array(r),i=new Array(r),a=new Array(r),s,l;for(s=0;s{"use strict";E0();C8();xU();D8();ud=o(function t(e){var r=TU(e);function n(i,a){var s=r((i=T0(i)).r,(a=T0(a)).r),l=r(i.g,a.g),u=r(i.b,a.b),h=du(i.opacity,a.opacity);return function(f){return i.r=s(f),i.g=l(f),i.b=u(f),i.opacity=h(f),i+""}}return o(n,"rgb"),n.gamma=t,n},"rgbGamma")(1);o(kU,"rgbSpline");uwe=kU(S8),hwe=kU(A8)});function R8(t,e){e||(e=[]);var r=t?Math.min(e.length,t.length):0,n=e.slice(),i;return function(a){for(i=0;i{"use strict";o(R8,"default");o(EU,"isNumberArray")});function CU(t,e){var r=e?e.length:0,n=t?Math.min(r,t.length):0,i=new Array(n),a=new Array(r),s;for(s=0;s{"use strict";Y3();o(CU,"genericArray")});function N8(t,e){var r=new Date;return t=+t,e=+e,function(n){return r.setTime(t*(1-n)+e*n),r}}var _U=N(()=>{"use strict";o(N8,"default")});function Ki(t,e){return t=+t,e=+e,function(r){return t*(1-r)+e*r}}var ov=N(()=>{"use strict";o(Ki,"default")});function M8(t,e){var r={},n={},i;(t===null||typeof t!="object")&&(t={}),(e===null||typeof e!="object")&&(e={});for(i in e)i in t?r[i]=kh(t[i],e[i]):n[i]=e[i];return function(a){for(i in r)n[i]=r[i](a);return n}}var DU=N(()=>{"use strict";Y3();o(M8,"default")});function fwe(t){return function(){return t}}function dwe(t){return function(e){return t(e)+""}}function C0(t,e){var r=O8.lastIndex=I8.lastIndex=0,n,i,a,s=-1,l=[],u=[];for(t=t+"",e=e+"";(n=O8.exec(t))&&(i=I8.exec(e));)(a=i.index)>r&&(a=e.slice(r,a),l[s]?l[s]+=a:l[++s]=a),(n=n[0])===(i=i[0])?l[s]?l[s]+=i:l[++s]=i:(l[++s]=null,u.push({i:s,x:Ki(n,i)})),r=I8.lastIndex;return r{"use strict";ov();O8=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,I8=new RegExp(O8.source,"g");o(fwe,"zero");o(dwe,"one");o(C0,"default")});function kh(t,e){var r=typeof e,n;return e==null||r==="boolean"?S0(e):(r==="number"?Ki:r==="string"?(n=pl(e))?(e=n,ud):C0:e instanceof pl?ud:e instanceof Date?N8:EU(e)?R8:Array.isArray(e)?CU:typeof e.valueOf!="function"&&typeof e.toString!="function"||isNaN(e)?M8:Ki)(t,e)}var Y3=N(()=>{"use strict";E0();L8();AU();_U();ov();DU();P8();_8();SU();o(kh,"default")});function X3(t,e){return t=+t,e=+e,function(r){return Math.round(t*(1-r)+e*r)}}var LU=N(()=>{"use strict";o(X3,"default")});function K3(t,e,r,n,i,a){var s,l,u;return(s=Math.sqrt(t*t+e*e))&&(t/=s,e/=s),(u=t*r+e*n)&&(r-=t*u,n-=e*u),(l=Math.sqrt(r*r+n*n))&&(r/=l,n/=l,u/=l),t*n{"use strict";RU=180/Math.PI,j3={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};o(K3,"default")});function MU(t){let e=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(t+"");return e.isIdentity?j3:K3(e.a,e.b,e.c,e.d,e.e,e.f)}function IU(t){return t==null?j3:(Q3||(Q3=document.createElementNS("http://www.w3.org/2000/svg","g")),Q3.setAttribute("transform",t),(t=Q3.transform.baseVal.consolidate())?(t=t.matrix,K3(t.a,t.b,t.c,t.d,t.e,t.f)):j3)}var Q3,OU=N(()=>{"use strict";NU();o(MU,"parseCss");o(IU,"parseSvg")});function PU(t,e,r,n){function i(h){return h.length?h.pop()+" ":""}o(i,"pop");function a(h,f,d,p,m,g){if(h!==d||f!==p){var y=m.push("translate(",null,e,null,r);g.push({i:y-4,x:Ki(h,d)},{i:y-2,x:Ki(f,p)})}else(d||p)&&m.push("translate("+d+e+p+r)}o(a,"translate");function s(h,f,d,p){h!==f?(h-f>180?f+=360:f-h>180&&(h+=360),p.push({i:d.push(i(d)+"rotate(",null,n)-2,x:Ki(h,f)})):f&&d.push(i(d)+"rotate("+f+n)}o(s,"rotate");function l(h,f,d,p){h!==f?p.push({i:d.push(i(d)+"skewX(",null,n)-2,x:Ki(h,f)}):f&&d.push(i(d)+"skewX("+f+n)}o(l,"skewX");function u(h,f,d,p,m,g){if(h!==d||f!==p){var y=m.push(i(m)+"scale(",null,",",null,")");g.push({i:y-4,x:Ki(h,d)},{i:y-2,x:Ki(f,p)})}else(d!==1||p!==1)&&m.push(i(m)+"scale("+d+","+p+")")}return o(u,"scale"),function(h,f){var d=[],p=[];return h=t(h),f=t(f),a(h.translateX,h.translateY,f.translateX,f.translateY,d,p),s(h.rotate,f.rotate,d,p),l(h.skewX,f.skewX,d,p),u(h.scaleX,h.scaleY,f.scaleX,f.scaleY,d,p),h=f=null,function(m){for(var g=-1,y=p.length,v;++g{"use strict";ov();OU();o(PU,"interpolateTransform");B8=PU(MU,"px, ","px)","deg)"),F8=PU(IU,", ",")",")")});function FU(t){return function(e,r){var n=t((e=sv(e)).h,(r=sv(r)).h),i=du(e.c,r.c),a=du(e.l,r.l),s=du(e.opacity,r.opacity);return function(l){return e.h=n(l),e.c=i(l),e.l=a(l),e.opacity=s(l),e+""}}}var $8,pwe,$U=N(()=>{"use strict";E0();D8();o(FU,"hcl");$8=FU(wU),pwe=FU(du)});var A0=N(()=>{"use strict";Y3();ov();LU();P8();BU();L8();$U()});function dv(){return hd||(VU(mwe),hd=hv.now()+e5)}function mwe(){hd=0}function fv(){this._call=this._time=this._next=null}function t5(t,e,r){var n=new fv;return n.restart(t,e,r),n}function UU(){dv(),++_0;for(var t=Z3,e;t;)(e=hd-t._time)>=0&&t._call.call(void 0,e),t=t._next;--_0}function zU(){hd=(J3=hv.now())+e5,_0=cv=0;try{UU()}finally{_0=0,ywe(),hd=0}}function gwe(){var t=hv.now(),e=t-J3;e>GU&&(e5-=e,J3=t)}function ywe(){for(var t,e=Z3,r,n=1/0;e;)e._call?(n>e._time&&(n=e._time),t=e,e=e._next):(r=e._next,e._next=null,e=t?t._next=r:Z3=r);uv=t,z8(n)}function z8(t){if(!_0){cv&&(cv=clearTimeout(cv));var e=t-hd;e>24?(t<1/0&&(cv=setTimeout(zU,t-hv.now()-e5)),lv&&(lv=clearInterval(lv))):(lv||(J3=hv.now(),lv=setInterval(gwe,GU)),_0=1,VU(zU))}}var _0,cv,lv,GU,Z3,uv,J3,hd,e5,hv,VU,G8=N(()=>{"use strict";_0=0,cv=0,lv=0,GU=1e3,J3=0,hd=0,e5=0,hv=typeof performance=="object"&&performance.now?performance:Date,VU=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};o(dv,"now");o(mwe,"clearNow");o(fv,"Timer");fv.prototype=t5.prototype={constructor:fv,restart:o(function(t,e,r){if(typeof t!="function")throw new TypeError("callback is not a function");r=(r==null?dv():+r)+(e==null?0:+e),!this._next&&uv!==this&&(uv?uv._next=this:Z3=this,uv=this),this._call=t,this._time=r,z8()},"restart"),stop:o(function(){this._call&&(this._call=null,this._time=1/0,z8())},"stop")};o(t5,"timer");o(UU,"timerFlush");o(zU,"wake");o(gwe,"poke");o(ywe,"nap");o(z8,"sleep")});function pv(t,e,r){var n=new fv;return e=e==null?0:+e,n.restart(i=>{n.stop(),t(i+e)},e,r),n}var HU=N(()=>{"use strict";G8();o(pv,"default")});var r5=N(()=>{"use strict";G8();HU()});function pu(t,e,r,n,i,a){var s=t.__transition;if(!s)t.__transition={};else if(r in s)return;bwe(t,r,{name:e,index:n,group:i,on:vwe,tween:xwe,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:YU})}function gv(t,e){var r=Bi(t,e);if(r.state>YU)throw new Error("too late; already scheduled");return r}function ha(t,e){var r=Bi(t,e);if(r.state>n5)throw new Error("too late; already running");return r}function Bi(t,e){var r=t.__transition;if(!r||!(r=r[e]))throw new Error("transition not found");return r}function bwe(t,e,r){var n=t.__transition,i;n[e]=r,r.timer=t5(a,0,r.time);function a(h){r.state=WU,r.timer.restart(s,r.delay,r.time),r.delay<=h&&s(h-r.delay)}o(a,"schedule");function s(h){var f,d,p,m;if(r.state!==WU)return u();for(f in n)if(m=n[f],m.name===r.name){if(m.state===n5)return pv(s);m.state===qU?(m.state=mv,m.timer.stop(),m.on.call("interrupt",t,t.__data__,m.index,m.group),delete n[f]):+f{"use strict";TA();r5();vwe=wA("start","end","cancel","interrupt"),xwe=[],YU=0,WU=1,i5=2,n5=3,qU=4,a5=5,mv=6;o(pu,"default");o(gv,"init");o(ha,"set");o(Bi,"get");o(bwe,"create")});function yv(t,e){var r=t.__transition,n,i,a=!0,s;if(r){e=e==null?null:e+"";for(s in r){if((n=r[s]).name!==e){a=!1;continue}i=n.state>i5&&n.state{"use strict";Es();o(yv,"default")});function V8(t){return this.each(function(){yv(this,t)})}var jU=N(()=>{"use strict";XU();o(V8,"default")});function wwe(t,e){var r,n;return function(){var i=ha(this,t),a=i.tween;if(a!==r){n=r=a;for(var s=0,l=n.length;s{"use strict";Es();o(wwe,"tweenRemove");o(Twe,"tweenFunction");o(U8,"default");o(D0,"tweenValue")});function xv(t,e){var r;return(typeof e=="number"?Ki:e instanceof pl?ud:(r=pl(e))?(e=r,ud):C0)(t,e)}var H8=N(()=>{"use strict";E0();A0();o(xv,"default")});function kwe(t){return function(){this.removeAttribute(t)}}function Ewe(t){return function(){this.removeAttributeNS(t.space,t.local)}}function Swe(t,e,r){var n,i=r+"",a;return function(){var s=this.getAttribute(t);return s===i?null:s===n?a:a=e(n=s,r)}}function Cwe(t,e,r){var n,i=r+"",a;return function(){var s=this.getAttributeNS(t.space,t.local);return s===i?null:s===n?a:a=e(n=s,r)}}function Awe(t,e,r){var n,i,a;return function(){var s,l=r(this),u;return l==null?void this.removeAttribute(t):(s=this.getAttribute(t),u=l+"",s===u?null:s===n&&u===i?a:(i=u,a=e(n=s,l)))}}function _we(t,e,r){var n,i,a;return function(){var s,l=r(this),u;return l==null?void this.removeAttributeNS(t.space,t.local):(s=this.getAttributeNS(t.space,t.local),u=l+"",s===u?null:s===n&&u===i?a:(i=u,a=e(n=s,l)))}}function W8(t,e){var r=rc(t),n=r==="transform"?F8:xv;return this.attrTween(t,typeof e=="function"?(r.local?_we:Awe)(r,n,D0(this,"attr."+t,e)):e==null?(r.local?Ewe:kwe)(r):(r.local?Cwe:Swe)(r,n,e))}var KU=N(()=>{"use strict";A0();fl();vv();H8();o(kwe,"attrRemove");o(Ewe,"attrRemoveNS");o(Swe,"attrConstant");o(Cwe,"attrConstantNS");o(Awe,"attrFunction");o(_we,"attrFunctionNS");o(W8,"default")});function Dwe(t,e){return function(r){this.setAttribute(t,e.call(this,r))}}function Lwe(t,e){return function(r){this.setAttributeNS(t.space,t.local,e.call(this,r))}}function Rwe(t,e){var r,n;function i(){var a=e.apply(this,arguments);return a!==n&&(r=(n=a)&&Lwe(t,a)),r}return o(i,"tween"),i._value=e,i}function Nwe(t,e){var r,n;function i(){var a=e.apply(this,arguments);return a!==n&&(r=(n=a)&&Dwe(t,a)),r}return o(i,"tween"),i._value=e,i}function q8(t,e){var r="attr."+t;if(arguments.length<2)return(r=this.tween(r))&&r._value;if(e==null)return this.tween(r,null);if(typeof e!="function")throw new Error;var n=rc(t);return this.tween(r,(n.local?Rwe:Nwe)(n,e))}var QU=N(()=>{"use strict";fl();o(Dwe,"attrInterpolate");o(Lwe,"attrInterpolateNS");o(Rwe,"attrTweenNS");o(Nwe,"attrTween");o(q8,"default")});function Mwe(t,e){return function(){gv(this,t).delay=+e.apply(this,arguments)}}function Iwe(t,e){return e=+e,function(){gv(this,t).delay=e}}function Y8(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?Mwe:Iwe)(e,t)):Bi(this.node(),e).delay}var ZU=N(()=>{"use strict";Es();o(Mwe,"delayFunction");o(Iwe,"delayConstant");o(Y8,"default")});function Owe(t,e){return function(){ha(this,t).duration=+e.apply(this,arguments)}}function Pwe(t,e){return e=+e,function(){ha(this,t).duration=e}}function X8(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?Owe:Pwe)(e,t)):Bi(this.node(),e).duration}var JU=N(()=>{"use strict";Es();o(Owe,"durationFunction");o(Pwe,"durationConstant");o(X8,"default")});function Bwe(t,e){if(typeof e!="function")throw new Error;return function(){ha(this,t).ease=e}}function j8(t){var e=this._id;return arguments.length?this.each(Bwe(e,t)):Bi(this.node(),e).ease}var eH=N(()=>{"use strict";Es();o(Bwe,"easeConstant");o(j8,"default")});function Fwe(t,e){return function(){var r=e.apply(this,arguments);if(typeof r!="function")throw new Error;ha(this,t).ease=r}}function K8(t){if(typeof t!="function")throw new Error;return this.each(Fwe(this._id,t))}var tH=N(()=>{"use strict";Es();o(Fwe,"easeVarying");o(K8,"default")});function Q8(t){typeof t!="function"&&(t=x0(t));for(var e=this._groups,r=e.length,n=new Array(r),i=0;i{"use strict";fl();fd();o(Q8,"default")});function Z8(t){if(t._id!==this._id)throw new Error;for(var e=this._groups,r=t._groups,n=e.length,i=r.length,a=Math.min(n,i),s=new Array(n),l=0;l{"use strict";fd();o(Z8,"default")});function $we(t){return(t+"").trim().split(/^|\s+/).every(function(e){var r=e.indexOf(".");return r>=0&&(e=e.slice(0,r)),!e||e==="start"})}function zwe(t,e,r){var n,i,a=$we(e)?gv:ha;return function(){var s=a(this,t),l=s.on;l!==n&&(i=(n=l).copy()).on(e,r),s.on=i}}function J8(t,e){var r=this._id;return arguments.length<2?Bi(this.node(),r).on.on(t):this.each(zwe(r,t,e))}var iH=N(()=>{"use strict";Es();o($we,"start");o(zwe,"onFunction");o(J8,"default")});function Gwe(t){return function(){var e=this.parentNode;for(var r in this.__transition)if(+r!==t)return;e&&e.removeChild(this)}}function e_(){return this.on("end.remove",Gwe(this._id))}var aH=N(()=>{"use strict";o(Gwe,"removeFunction");o(e_,"default")});function t_(t){var e=this._name,r=this._id;typeof t!="function"&&(t=xh(t));for(var n=this._groups,i=n.length,a=new Array(i),s=0;s{"use strict";fl();fd();Es();o(t_,"default")});function r_(t){var e=this._name,r=this._id;typeof t!="function"&&(t=v0(t));for(var n=this._groups,i=n.length,a=[],s=[],l=0;l{"use strict";fl();fd();Es();o(r_,"default")});function n_(){return new Vwe(this._groups,this._parents)}var Vwe,lH=N(()=>{"use strict";fl();Vwe=hu.prototype.constructor;o(n_,"default")});function Uwe(t,e){var r,n,i;return function(){var a=bh(this,t),s=(this.style.removeProperty(t),bh(this,t));return a===s?null:a===r&&s===n?i:i=e(r=a,n=s)}}function cH(t){return function(){this.style.removeProperty(t)}}function Hwe(t,e,r){var n,i=r+"",a;return function(){var s=bh(this,t);return s===i?null:s===n?a:a=e(n=s,r)}}function Wwe(t,e,r){var n,i,a;return function(){var s=bh(this,t),l=r(this),u=l+"";return l==null&&(u=l=(this.style.removeProperty(t),bh(this,t))),s===u?null:s===n&&u===i?a:(i=u,a=e(n=s,l))}}function qwe(t,e){var r,n,i,a="style."+e,s="end."+a,l;return function(){var u=ha(this,t),h=u.on,f=u.value[a]==null?l||(l=cH(e)):void 0;(h!==r||i!==f)&&(n=(r=h).copy()).on(s,i=f),u.on=n}}function i_(t,e,r){var n=(t+="")=="transform"?B8:xv;return e==null?this.styleTween(t,Uwe(t,n)).on("end.style."+t,cH(t)):typeof e=="function"?this.styleTween(t,Wwe(t,n,D0(this,"style."+t,e))).each(qwe(this._id,t)):this.styleTween(t,Hwe(t,n,e),r).on("end.style."+t,null)}var uH=N(()=>{"use strict";A0();fl();Es();vv();H8();o(Uwe,"styleNull");o(cH,"styleRemove");o(Hwe,"styleConstant");o(Wwe,"styleFunction");o(qwe,"styleMaybeRemove");o(i_,"default")});function Ywe(t,e,r){return function(n){this.style.setProperty(t,e.call(this,n),r)}}function Xwe(t,e,r){var n,i;function a(){var s=e.apply(this,arguments);return s!==i&&(n=(i=s)&&Ywe(t,s,r)),n}return o(a,"tween"),a._value=e,a}function a_(t,e,r){var n="style."+(t+="");if(arguments.length<2)return(n=this.tween(n))&&n._value;if(e==null)return this.tween(n,null);if(typeof e!="function")throw new Error;return this.tween(n,Xwe(t,e,r??""))}var hH=N(()=>{"use strict";o(Ywe,"styleInterpolate");o(Xwe,"styleTween");o(a_,"default")});function jwe(t){return function(){this.textContent=t}}function Kwe(t){return function(){var e=t(this);this.textContent=e??""}}function s_(t){return this.tween("text",typeof t=="function"?Kwe(D0(this,"text",t)):jwe(t==null?"":t+""))}var fH=N(()=>{"use strict";vv();o(jwe,"textConstant");o(Kwe,"textFunction");o(s_,"default")});function Qwe(t){return function(e){this.textContent=t.call(this,e)}}function Zwe(t){var e,r;function n(){var i=t.apply(this,arguments);return i!==r&&(e=(r=i)&&Qwe(i)),e}return o(n,"tween"),n._value=t,n}function o_(t){var e="text";if(arguments.length<1)return(e=this.tween(e))&&e._value;if(t==null)return this.tween(e,null);if(typeof t!="function")throw new Error;return this.tween(e,Zwe(t))}var dH=N(()=>{"use strict";o(Qwe,"textInterpolate");o(Zwe,"textTween");o(o_,"default")});function l_(){for(var t=this._name,e=this._id,r=s5(),n=this._groups,i=n.length,a=0;a{"use strict";fd();Es();o(l_,"default")});function c_(){var t,e,r=this,n=r._id,i=r.size();return new Promise(function(a,s){var l={value:s},u={value:o(function(){--i===0&&a()},"value")};r.each(function(){var h=ha(this,n),f=h.on;f!==t&&(e=(t=f).copy(),e._.cancel.push(l),e._.interrupt.push(l),e._.end.push(u)),h.on=e}),i===0&&a()})}var mH=N(()=>{"use strict";Es();o(c_,"default")});function es(t,e,r,n){this._groups=t,this._parents=e,this._name=r,this._id=n}function gH(t){return hu().transition(t)}function s5(){return++Jwe}var Jwe,mu,fd=N(()=>{"use strict";fl();KU();QU();ZU();JU();eH();tH();rH();nH();iH();aH();sH();oH();lH();uH();hH();fH();dH();pH();vv();mH();Jwe=0;o(es,"Transition");o(gH,"transition");o(s5,"newId");mu=hu.prototype;es.prototype=gH.prototype={constructor:es,select:t_,selectAll:r_,selectChild:mu.selectChild,selectChildren:mu.selectChildren,filter:Q8,merge:Z8,selection:n_,transition:l_,call:mu.call,nodes:mu.nodes,node:mu.node,size:mu.size,empty:mu.empty,each:mu.each,on:J8,attr:W8,attrTween:q8,style:i_,styleTween:a_,text:s_,textTween:o_,remove:e_,tween:U8,delay:Y8,duration:X8,ease:j8,easeVarying:K8,end:c_,[Symbol.iterator]:mu[Symbol.iterator]}});function o5(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}var yH=N(()=>{"use strict";o(o5,"cubicInOut")});var u_=N(()=>{"use strict";yH()});function tTe(t,e){for(var r;!(r=t.__transition)||!(r=r[e]);)if(!(t=t.parentNode))throw new Error(`transition ${e} not found`);return r}function h_(t){var e,r;t instanceof es?(e=t._id,t=t._name):(e=s5(),(r=eTe).time=dv(),t=t==null?null:t+"");for(var n=this._groups,i=n.length,a=0;a{"use strict";fd();Es();u_();r5();eTe={time:null,delay:0,duration:250,ease:o5};o(tTe,"inherit");o(h_,"default")});var xH=N(()=>{"use strict";fl();jU();vH();hu.prototype.interrupt=V8;hu.prototype.transition=h_});var l5=N(()=>{"use strict";xH()});var bH=N(()=>{"use strict"});var wH=N(()=>{"use strict"});var TH=N(()=>{"use strict"});function kH(t){return[+t[0],+t[1]]}function rTe(t){return[kH(t[0]),kH(t[1])]}function f_(t){return{type:t}}var Z0t,J0t,emt,tmt,rmt,nmt,EH=N(()=>{"use strict";l5();bH();wH();TH();({abs:Z0t,max:J0t,min:emt}=Math);o(kH,"number1");o(rTe,"number2");tmt={name:"x",handles:["w","e"].map(f_),input:o(function(t,e){return t==null?null:[[+t[0],e[0][1]],[+t[1],e[1][1]]]},"input"),output:o(function(t){return t&&[t[0][0],t[1][0]]},"output")},rmt={name:"y",handles:["n","s"].map(f_),input:o(function(t,e){return t==null?null:[[e[0][0],+t[0]],[e[1][0],+t[1]]]},"input"),output:o(function(t){return t&&[t[0][1],t[1][1]]},"output")},nmt={name:"xy",handles:["n","w","e","s","nw","ne","sw","se"].map(f_),input:o(function(t){return t==null?null:rTe(t)},"input"),output:o(function(t){return t},"output")};o(f_,"type")});var SH=N(()=>{"use strict";EH()});function CH(t){this._+=t[0];for(let e=1,r=t.length;e=0))throw new Error(`invalid digits: ${t}`);if(e>15)return CH;let r=10**e;return function(n){this._+=n[0];for(let i=1,a=n.length;i{"use strict";d_=Math.PI,p_=2*d_,dd=1e-6,nTe=p_-dd;o(CH,"append");o(iTe,"appendRound");pd=class{static{o(this,"Path")}constructor(e){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=e==null?CH:iTe(e)}moveTo(e,r){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+r}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(e,r){this._append`L${this._x1=+e},${this._y1=+r}`}quadraticCurveTo(e,r,n,i){this._append`Q${+e},${+r},${this._x1=+n},${this._y1=+i}`}bezierCurveTo(e,r,n,i,a,s){this._append`C${+e},${+r},${+n},${+i},${this._x1=+a},${this._y1=+s}`}arcTo(e,r,n,i,a){if(e=+e,r=+r,n=+n,i=+i,a=+a,a<0)throw new Error(`negative radius: ${a}`);let s=this._x1,l=this._y1,u=n-e,h=i-r,f=s-e,d=l-r,p=f*f+d*d;if(this._x1===null)this._append`M${this._x1=e},${this._y1=r}`;else if(p>dd)if(!(Math.abs(d*u-h*f)>dd)||!a)this._append`L${this._x1=e},${this._y1=r}`;else{let m=n-s,g=i-l,y=u*u+h*h,v=m*m+g*g,x=Math.sqrt(y),b=Math.sqrt(p),w=a*Math.tan((d_-Math.acos((y+p-v)/(2*x*b)))/2),C=w/b,T=w/x;Math.abs(C-1)>dd&&this._append`L${e+C*f},${r+C*d}`,this._append`A${a},${a},0,0,${+(d*m>f*g)},${this._x1=e+T*u},${this._y1=r+T*h}`}}arc(e,r,n,i,a,s){if(e=+e,r=+r,n=+n,s=!!s,n<0)throw new Error(`negative radius: ${n}`);let l=n*Math.cos(i),u=n*Math.sin(i),h=e+l,f=r+u,d=1^s,p=s?i-a:a-i;this._x1===null?this._append`M${h},${f}`:(Math.abs(this._x1-h)>dd||Math.abs(this._y1-f)>dd)&&this._append`L${h},${f}`,n&&(p<0&&(p=p%p_+p_),p>nTe?this._append`A${n},${n},0,1,${d},${e-l},${r-u}A${n},${n},0,1,${d},${this._x1=h},${this._y1=f}`:p>dd&&this._append`A${n},${n},0,${+(p>=d_)},${d},${this._x1=e+n*Math.cos(a)},${this._y1=r+n*Math.sin(a)}`)}rect(e,r,n,i){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+r}h${n=+n}v${+i}h${-n}Z`}toString(){return this._}};o(AH,"path");AH.prototype=pd.prototype});var m_=N(()=>{"use strict";_H()});var DH=N(()=>{"use strict"});var LH=N(()=>{"use strict"});var RH=N(()=>{"use strict"});var NH=N(()=>{"use strict"});var MH=N(()=>{"use strict"});var IH=N(()=>{"use strict"});var OH=N(()=>{"use strict"});function g_(t){return Math.abs(t=Math.round(t))>=1e21?t.toLocaleString("en").replace(/,/g,""):t.toString(10)}function md(t,e){if((r=(t=e?t.toExponential(e-1):t.toExponential()).indexOf("e"))<0)return null;var r,n=t.slice(0,r);return[n.length>1?n[0]+n.slice(2):n,+t.slice(r+1)]}var bv=N(()=>{"use strict";o(g_,"default");o(md,"formatDecimalParts")});function ml(t){return t=md(Math.abs(t)),t?t[1]:NaN}var wv=N(()=>{"use strict";bv();o(ml,"default")});function y_(t,e){return function(r,n){for(var i=r.length,a=[],s=0,l=t[0],u=0;i>0&&l>0&&(u+l+1>n&&(l=Math.max(1,n-u)),a.push(r.substring(i-=l,i+l)),!((u+=l+1)>n));)l=t[s=(s+1)%t.length];return a.reverse().join(e)}}var PH=N(()=>{"use strict";o(y_,"default")});function v_(t){return function(e){return e.replace(/[0-9]/g,function(r){return t[+r]})}}var BH=N(()=>{"use strict";o(v_,"default")});function Eh(t){if(!(e=aTe.exec(t)))throw new Error("invalid format: "+t);var e;return new c5({fill:e[1],align:e[2],sign:e[3],symbol:e[4],zero:e[5],width:e[6],comma:e[7],precision:e[8]&&e[8].slice(1),trim:e[9],type:e[10]})}function c5(t){this.fill=t.fill===void 0?" ":t.fill+"",this.align=t.align===void 0?">":t.align+"",this.sign=t.sign===void 0?"-":t.sign+"",this.symbol=t.symbol===void 0?"":t.symbol+"",this.zero=!!t.zero,this.width=t.width===void 0?void 0:+t.width,this.comma=!!t.comma,this.precision=t.precision===void 0?void 0:+t.precision,this.trim=!!t.trim,this.type=t.type===void 0?"":t.type+""}var aTe,x_=N(()=>{"use strict";aTe=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;o(Eh,"formatSpecifier");Eh.prototype=c5.prototype;o(c5,"FormatSpecifier");c5.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type}});function b_(t){e:for(var e=t.length,r=1,n=-1,i;r0&&(n=0);break}return n>0?t.slice(0,n)+t.slice(i+1):t}var FH=N(()=>{"use strict";o(b_,"default")});function T_(t,e){var r=md(t,e);if(!r)return t+"";var n=r[0],i=r[1],a=i-(w_=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,s=n.length;return a===s?n:a>s?n+new Array(a-s+1).join("0"):a>0?n.slice(0,a)+"."+n.slice(a):"0."+new Array(1-a).join("0")+md(t,Math.max(0,e+a-1))[0]}var w_,k_=N(()=>{"use strict";bv();o(T_,"default")});function u5(t,e){var r=md(t,e);if(!r)return t+"";var n=r[0],i=r[1];return i<0?"0."+new Array(-i).join("0")+n:n.length>i+1?n.slice(0,i+1)+"."+n.slice(i+1):n+new Array(i-n.length+2).join("0")}var $H=N(()=>{"use strict";bv();o(u5,"default")});var E_,zH=N(()=>{"use strict";bv();k_();$H();E_={"%":o((t,e)=>(t*100).toFixed(e),"%"),b:o(t=>Math.round(t).toString(2),"b"),c:o(t=>t+"","c"),d:g_,e:o((t,e)=>t.toExponential(e),"e"),f:o((t,e)=>t.toFixed(e),"f"),g:o((t,e)=>t.toPrecision(e),"g"),o:o(t=>Math.round(t).toString(8),"o"),p:o((t,e)=>u5(t*100,e),"p"),r:u5,s:T_,X:o(t=>Math.round(t).toString(16).toUpperCase(),"X"),x:o(t=>Math.round(t).toString(16),"x")}});function h5(t){return t}var GH=N(()=>{"use strict";o(h5,"default")});function S_(t){var e=t.grouping===void 0||t.thousands===void 0?h5:y_(VH.call(t.grouping,Number),t.thousands+""),r=t.currency===void 0?"":t.currency[0]+"",n=t.currency===void 0?"":t.currency[1]+"",i=t.decimal===void 0?".":t.decimal+"",a=t.numerals===void 0?h5:v_(VH.call(t.numerals,String)),s=t.percent===void 0?"%":t.percent+"",l=t.minus===void 0?"\u2212":t.minus+"",u=t.nan===void 0?"NaN":t.nan+"";function h(d){d=Eh(d);var p=d.fill,m=d.align,g=d.sign,y=d.symbol,v=d.zero,x=d.width,b=d.comma,w=d.precision,C=d.trim,T=d.type;T==="n"?(b=!0,T="g"):E_[T]||(w===void 0&&(w=12),C=!0,T="g"),(v||p==="0"&&m==="=")&&(v=!0,p="0",m="=");var E=y==="$"?r:y==="#"&&/[boxX]/.test(T)?"0"+T.toLowerCase():"",A=y==="$"?n:/[%p]/.test(T)?s:"",S=E_[T],_=/[defgprs%]/.test(T);w=w===void 0?6:/[gprs]/.test(T)?Math.max(1,Math.min(21,w)):Math.max(0,Math.min(20,w));function I(D){var k=E,L=A,R,O,M;if(T==="c")L=S(D)+L,D="";else{D=+D;var B=D<0||1/D<0;if(D=isNaN(D)?u:S(Math.abs(D),w),C&&(D=b_(D)),B&&+D==0&&g!=="+"&&(B=!1),k=(B?g==="("?g:l:g==="-"||g==="("?"":g)+k,L=(T==="s"?UH[8+w_/3]:"")+L+(B&&g==="("?")":""),_){for(R=-1,O=D.length;++RM||M>57){L=(M===46?i+D.slice(R+1):D.slice(R))+L,D=D.slice(0,R);break}}}b&&!v&&(D=e(D,1/0));var F=k.length+D.length+L.length,P=F>1)+k+D+L+P.slice(F);break;default:D=P+k+D+L;break}return a(D)}return o(I,"format"),I.toString=function(){return d+""},I}o(h,"newFormat");function f(d,p){var m=h((d=Eh(d),d.type="f",d)),g=Math.max(-8,Math.min(8,Math.floor(ml(p)/3)))*3,y=Math.pow(10,-g),v=UH[8+g/3];return function(x){return m(y*x)+v}}return o(f,"formatPrefix"),{format:h,formatPrefix:f}}var VH,UH,HH=N(()=>{"use strict";wv();PH();BH();x_();FH();zH();k_();GH();VH=Array.prototype.map,UH=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];o(S_,"default")});function C_(t){return f5=S_(t),d5=f5.format,p5=f5.formatPrefix,f5}var f5,d5,p5,WH=N(()=>{"use strict";HH();C_({thousands:",",grouping:[3],currency:["$",""]});o(C_,"defaultLocale")});function m5(t){return Math.max(0,-ml(Math.abs(t)))}var qH=N(()=>{"use strict";wv();o(m5,"default")});function g5(t,e){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(ml(e)/3)))*3-ml(Math.abs(t)))}var YH=N(()=>{"use strict";wv();o(g5,"default")});function y5(t,e){return t=Math.abs(t),e=Math.abs(e)-t,Math.max(0,ml(e)-ml(t))+1}var XH=N(()=>{"use strict";wv();o(y5,"default")});var A_=N(()=>{"use strict";WH();x_();qH();YH();XH()});var jH=N(()=>{"use strict"});var KH=N(()=>{"use strict"});var QH=N(()=>{"use strict"});var ZH=N(()=>{"use strict"});function Sh(t,e){switch(arguments.length){case 0:break;case 1:this.range(t);break;default:this.range(e).domain(t);break}return this}var Tv=N(()=>{"use strict";o(Sh,"initRange")});function gu(){var t=new g0,e=[],r=[],n=__;function i(a){let s=t.get(a);if(s===void 0){if(n!==__)return n;t.set(a,s=e.push(a)-1)}return r[s%r.length]}return o(i,"scale"),i.domain=function(a){if(!arguments.length)return e.slice();e=[],t=new g0;for(let s of a)t.has(s)||t.set(s,e.push(s)-1);return i},i.range=function(a){return arguments.length?(r=Array.from(a),i):r.slice()},i.unknown=function(a){return arguments.length?(n=a,i):n},i.copy=function(){return gu(e,r).unknown(n)},Sh.apply(i,arguments),i}var __,D_=N(()=>{"use strict";vh();Tv();__=Symbol("implicit");o(gu,"ordinal")});function L0(){var t=gu().unknown(void 0),e=t.domain,r=t.range,n=0,i=1,a,s,l=!1,u=0,h=0,f=.5;delete t.unknown;function d(){var p=e().length,m=i{"use strict";vh();Tv();D_();o(L0,"band")});function L_(t){return function(){return t}}var eW=N(()=>{"use strict";o(L_,"constants")});function R_(t){return+t}var tW=N(()=>{"use strict";o(R_,"number")});function R0(t){return t}function N_(t,e){return(e-=t=+t)?function(r){return(r-t)/e}:L_(isNaN(e)?NaN:.5)}function sTe(t,e){var r;return t>e&&(r=t,t=e,e=r),function(n){return Math.max(t,Math.min(e,n))}}function oTe(t,e,r){var n=t[0],i=t[1],a=e[0],s=e[1];return i2?lTe:oTe,u=h=null,d}o(f,"rescale");function d(p){return p==null||isNaN(p=+p)?a:(u||(u=l(t.map(n),e,r)))(n(s(p)))}return o(d,"scale"),d.invert=function(p){return s(i((h||(h=l(e,t.map(n),Ki)))(p)))},d.domain=function(p){return arguments.length?(t=Array.from(p,R_),f()):t.slice()},d.range=function(p){return arguments.length?(e=Array.from(p),f()):e.slice()},d.rangeRound=function(p){return e=Array.from(p),r=X3,f()},d.clamp=function(p){return arguments.length?(s=p?!0:R0,f()):s!==R0},d.interpolate=function(p){return arguments.length?(r=p,f()):r},d.unknown=function(p){return arguments.length?(a=p,d):a},function(p,m){return n=p,i=m,f()}}function kv(){return cTe()(R0,R0)}var rW,M_=N(()=>{"use strict";vh();A0();eW();tW();rW=[0,1];o(R0,"identity");o(N_,"normalize");o(sTe,"clamper");o(oTe,"bimap");o(lTe,"polymap");o(v5,"copy");o(cTe,"transformer");o(kv,"continuous")});function I_(t,e,r,n){var i=y0(t,e,r),a;switch(n=Eh(n??",f"),n.type){case"s":{var s=Math.max(Math.abs(t),Math.abs(e));return n.precision==null&&!isNaN(a=g5(i,s))&&(n.precision=a),p5(n,s)}case"":case"e":case"g":case"p":case"r":{n.precision==null&&!isNaN(a=y5(i,Math.max(Math.abs(t),Math.abs(e))))&&(n.precision=a-(n.type==="e"));break}case"f":case"%":{n.precision==null&&!isNaN(a=m5(i))&&(n.precision=a-(n.type==="%")*2);break}}return d5(n)}var nW=N(()=>{"use strict";vh();A_();o(I_,"tickFormat")});function uTe(t){var e=t.domain;return t.ticks=function(r){var n=e();return R3(n[0],n[n.length-1],r??10)},t.tickFormat=function(r,n){var i=e();return I_(i[0],i[i.length-1],r??10,n)},t.nice=function(r){r==null&&(r=10);var n=e(),i=0,a=n.length-1,s=n[i],l=n[a],u,h,f=10;for(l0;){if(h=Zy(s,l,r),h===u)return n[i]=s,n[a]=l,e(n);if(h>0)s=Math.floor(s/h)*h,l=Math.ceil(l/h)*h;else if(h<0)s=Math.ceil(s*h)/h,l=Math.floor(l*h)/h;else break;u=h}return t},t}function gl(){var t=kv();return t.copy=function(){return v5(t,gl())},Sh.apply(t,arguments),uTe(t)}var iW=N(()=>{"use strict";vh();M_();Tv();nW();o(uTe,"linearish");o(gl,"linear")});function O_(t,e){t=t.slice();var r=0,n=t.length-1,i=t[r],a=t[n],s;return a{"use strict";o(O_,"nice")});function xn(t,e,r,n){function i(a){return t(a=arguments.length===0?new Date:new Date(+a)),a}return o(i,"interval"),i.floor=a=>(t(a=new Date(+a)),a),i.ceil=a=>(t(a=new Date(a-1)),e(a,1),t(a),a),i.round=a=>{let s=i(a),l=i.ceil(a);return a-s(e(a=new Date(+a),s==null?1:Math.floor(s)),a),i.range=(a,s,l)=>{let u=[];if(a=i.ceil(a),l=l==null?1:Math.floor(l),!(a0))return u;let h;do u.push(h=new Date(+a)),e(a,l),t(a);while(hxn(s=>{if(s>=s)for(;t(s),!a(s);)s.setTime(s-1)},(s,l)=>{if(s>=s)if(l<0)for(;++l<=0;)for(;e(s,-1),!a(s););else for(;--l>=0;)for(;e(s,1),!a(s););}),r&&(i.count=(a,s)=>(P_.setTime(+a),B_.setTime(+s),t(P_),t(B_),Math.floor(r(P_,B_))),i.every=a=>(a=Math.floor(a),!isFinite(a)||!(a>0)?null:a>1?i.filter(n?s=>n(s)%a===0:s=>i.count(0,s)%a===0):i)),i}var P_,B_,yu=N(()=>{"use strict";P_=new Date,B_=new Date;o(xn,"timeInterval")});var ac,sW,F_=N(()=>{"use strict";yu();ac=xn(()=>{},(t,e)=>{t.setTime(+t+e)},(t,e)=>e-t);ac.every=t=>(t=Math.floor(t),!isFinite(t)||!(t>0)?null:t>1?xn(e=>{e.setTime(Math.floor(e/t)*t)},(e,r)=>{e.setTime(+e+r*t)},(e,r)=>(r-e)/t):ac);sW=ac.range});var Ks,oW,$_=N(()=>{"use strict";yu();Ks=xn(t=>{t.setTime(t-t.getMilliseconds())},(t,e)=>{t.setTime(+t+e*1e3)},(t,e)=>(e-t)/1e3,t=>t.getUTCSeconds()),oW=Ks.range});var vu,hTe,x5,fTe,z_=N(()=>{"use strict";yu();vu=xn(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*1e3)},(t,e)=>{t.setTime(+t+e*6e4)},(t,e)=>(e-t)/6e4,t=>t.getMinutes()),hTe=vu.range,x5=xn(t=>{t.setUTCSeconds(0,0)},(t,e)=>{t.setTime(+t+e*6e4)},(t,e)=>(e-t)/6e4,t=>t.getUTCMinutes()),fTe=x5.range});var xu,dTe,b5,pTe,G_=N(()=>{"use strict";yu();xu=xn(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*1e3-t.getMinutes()*6e4)},(t,e)=>{t.setTime(+t+e*36e5)},(t,e)=>(e-t)/36e5,t=>t.getHours()),dTe=xu.range,b5=xn(t=>{t.setUTCMinutes(0,0,0)},(t,e)=>{t.setTime(+t+e*36e5)},(t,e)=>(e-t)/36e5,t=>t.getUTCHours()),pTe=b5.range});var _o,mTe,Sv,gTe,w5,yTe,V_=N(()=>{"use strict";yu();_o=xn(t=>t.setHours(0,0,0,0),(t,e)=>t.setDate(t.getDate()+e),(t,e)=>(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*6e4)/864e5,t=>t.getDate()-1),mTe=_o.range,Sv=xn(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/864e5,t=>t.getUTCDate()-1),gTe=Sv.range,w5=xn(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/864e5,t=>Math.floor(t/864e5)),yTe=w5.range});function vd(t){return xn(e=>{e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)},(e,r)=>{e.setDate(e.getDate()+r*7)},(e,r)=>(r-e-(r.getTimezoneOffset()-e.getTimezoneOffset())*6e4)/6048e5)}function xd(t){return xn(e=>{e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)},(e,r)=>{e.setUTCDate(e.getUTCDate()+r*7)},(e,r)=>(r-e)/6048e5)}var yl,Ch,T5,k5,oc,E5,S5,cW,vTe,xTe,bTe,wTe,TTe,kTe,bd,N0,uW,hW,Ah,fW,dW,pW,ETe,STe,CTe,ATe,_Te,DTe,U_=N(()=>{"use strict";yu();o(vd,"timeWeekday");yl=vd(0),Ch=vd(1),T5=vd(2),k5=vd(3),oc=vd(4),E5=vd(5),S5=vd(6),cW=yl.range,vTe=Ch.range,xTe=T5.range,bTe=k5.range,wTe=oc.range,TTe=E5.range,kTe=S5.range;o(xd,"utcWeekday");bd=xd(0),N0=xd(1),uW=xd(2),hW=xd(3),Ah=xd(4),fW=xd(5),dW=xd(6),pW=bd.range,ETe=N0.range,STe=uW.range,CTe=hW.range,ATe=Ah.range,_Te=fW.range,DTe=dW.range});var bu,LTe,C5,RTe,H_=N(()=>{"use strict";yu();bu=xn(t=>{t.setDate(1),t.setHours(0,0,0,0)},(t,e)=>{t.setMonth(t.getMonth()+e)},(t,e)=>e.getMonth()-t.getMonth()+(e.getFullYear()-t.getFullYear())*12,t=>t.getMonth()),LTe=bu.range,C5=xn(t=>{t.setUTCDate(1),t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCMonth(t.getUTCMonth()+e)},(t,e)=>e.getUTCMonth()-t.getUTCMonth()+(e.getUTCFullYear()-t.getUTCFullYear())*12,t=>t.getUTCMonth()),RTe=C5.range});var Qs,NTe,vl,MTe,W_=N(()=>{"use strict";yu();Qs=xn(t=>{t.setMonth(0,1),t.setHours(0,0,0,0)},(t,e)=>{t.setFullYear(t.getFullYear()+e)},(t,e)=>e.getFullYear()-t.getFullYear(),t=>t.getFullYear());Qs.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:xn(e=>{e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)},(e,r)=>{e.setFullYear(e.getFullYear()+r*t)});NTe=Qs.range,vl=xn(t=>{t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCFullYear(t.getUTCFullYear()+e)},(t,e)=>e.getUTCFullYear()-t.getUTCFullYear(),t=>t.getUTCFullYear());vl.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:xn(e=>{e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,r)=>{e.setUTCFullYear(e.getUTCFullYear()+r*t)});MTe=vl.range});function gW(t,e,r,n,i,a){let s=[[Ks,1,1e3],[Ks,5,5*1e3],[Ks,15,15*1e3],[Ks,30,30*1e3],[a,1,6e4],[a,5,5*6e4],[a,15,15*6e4],[a,30,30*6e4],[i,1,36e5],[i,3,3*36e5],[i,6,6*36e5],[i,12,12*36e5],[n,1,864e5],[n,2,2*864e5],[r,1,6048e5],[e,1,2592e6],[e,3,3*2592e6],[t,1,31536e6]];function l(h,f,d){let p=fv).right(s,p);if(m===s.length)return t.every(y0(h/31536e6,f/31536e6,d));if(m===0)return ac.every(Math.max(y0(h,f,d),1));let[g,y]=s[p/s[m-1][2]{"use strict";vh();F_();$_();z_();G_();V_();U_();H_();W_();o(gW,"ticker");[OTe,PTe]=gW(vl,C5,bd,w5,b5,x5),[q_,Y_]=gW(Qs,bu,yl,_o,xu,vu)});var A5=N(()=>{"use strict";F_();$_();z_();G_();V_();U_();H_();W_();yW()});function X_(t){if(0<=t.y&&t.y<100){var e=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return e.setFullYear(t.y),e}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function j_(t){if(0<=t.y&&t.y<100){var e=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return e.setUTCFullYear(t.y),e}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function Cv(t,e,r){return{y:t,m:e,d:r,H:0,M:0,S:0,L:0}}function K_(t){var e=t.dateTime,r=t.date,n=t.time,i=t.periods,a=t.days,s=t.shortDays,l=t.months,u=t.shortMonths,h=Av(i),f=_v(i),d=Av(a),p=_v(a),m=Av(s),g=_v(s),y=Av(l),v=_v(l),x=Av(u),b=_v(u),w={a:B,A:F,b:P,B:z,c:null,d:kW,e:kW,f:ake,g:mke,G:yke,H:rke,I:nke,j:ike,L:_W,m:ske,M:oke,p:$,q:H,Q:CW,s:AW,S:lke,u:cke,U:uke,V:hke,w:fke,W:dke,x:null,X:null,y:pke,Y:gke,Z:vke,"%":SW},C={a:Q,A:j,b:ie,B:ne,c:null,d:EW,e:EW,f:Tke,g:Nke,G:Ike,H:xke,I:bke,j:wke,L:LW,m:kke,M:Eke,p:le,q:he,Q:CW,s:AW,S:Ske,u:Cke,U:Ake,V:_ke,w:Dke,W:Lke,x:null,X:null,y:Rke,Y:Mke,Z:Oke,"%":SW},T={a:I,A:D,b:k,B:L,c:R,d:wW,e:wW,f:ZTe,g:bW,G:xW,H:TW,I:TW,j:XTe,L:QTe,m:YTe,M:jTe,p:_,q:qTe,Q:eke,s:tke,S:KTe,u:GTe,U:VTe,V:UTe,w:zTe,W:HTe,x:O,X:M,y:bW,Y:xW,Z:WTe,"%":JTe};w.x=E(r,w),w.X=E(n,w),w.c=E(e,w),C.x=E(r,C),C.X=E(n,C),C.c=E(e,C);function E(K,X){return function(te){var J=[],se=-1,ue=0,Z=K.length,Se,ce,ae;for(te instanceof Date||(te=new Date(+te));++se53)return null;"w"in J||(J.w=1),"Z"in J?(ue=j_(Cv(J.y,0,1)),Z=ue.getUTCDay(),ue=Z>4||Z===0?N0.ceil(ue):N0(ue),ue=Sv.offset(ue,(J.V-1)*7),J.y=ue.getUTCFullYear(),J.m=ue.getUTCMonth(),J.d=ue.getUTCDate()+(J.w+6)%7):(ue=X_(Cv(J.y,0,1)),Z=ue.getDay(),ue=Z>4||Z===0?Ch.ceil(ue):Ch(ue),ue=_o.offset(ue,(J.V-1)*7),J.y=ue.getFullYear(),J.m=ue.getMonth(),J.d=ue.getDate()+(J.w+6)%7)}else("W"in J||"U"in J)&&("w"in J||(J.w="u"in J?J.u%7:"W"in J?1:0),Z="Z"in J?j_(Cv(J.y,0,1)).getUTCDay():X_(Cv(J.y,0,1)).getDay(),J.m=0,J.d="W"in J?(J.w+6)%7+J.W*7-(Z+5)%7:J.w+J.U*7-(Z+6)%7);return"Z"in J?(J.H+=J.Z/100|0,J.M+=J.Z%100,j_(J)):X_(J)}}o(A,"newParse");function S(K,X,te,J){for(var se=0,ue=X.length,Z=te.length,Se,ce;se=Z)return-1;if(Se=X.charCodeAt(se++),Se===37){if(Se=X.charAt(se++),ce=T[Se in vW?X.charAt(se++):Se],!ce||(J=ce(K,te,J))<0)return-1}else if(Se!=te.charCodeAt(J++))return-1}return J}o(S,"parseSpecifier");function _(K,X,te){var J=h.exec(X.slice(te));return J?(K.p=f.get(J[0].toLowerCase()),te+J[0].length):-1}o(_,"parsePeriod");function I(K,X,te){var J=m.exec(X.slice(te));return J?(K.w=g.get(J[0].toLowerCase()),te+J[0].length):-1}o(I,"parseShortWeekday");function D(K,X,te){var J=d.exec(X.slice(te));return J?(K.w=p.get(J[0].toLowerCase()),te+J[0].length):-1}o(D,"parseWeekday");function k(K,X,te){var J=x.exec(X.slice(te));return J?(K.m=b.get(J[0].toLowerCase()),te+J[0].length):-1}o(k,"parseShortMonth");function L(K,X,te){var J=y.exec(X.slice(te));return J?(K.m=v.get(J[0].toLowerCase()),te+J[0].length):-1}o(L,"parseMonth");function R(K,X,te){return S(K,e,X,te)}o(R,"parseLocaleDateTime");function O(K,X,te){return S(K,r,X,te)}o(O,"parseLocaleDate");function M(K,X,te){return S(K,n,X,te)}o(M,"parseLocaleTime");function B(K){return s[K.getDay()]}o(B,"formatShortWeekday");function F(K){return a[K.getDay()]}o(F,"formatWeekday");function P(K){return u[K.getMonth()]}o(P,"formatShortMonth");function z(K){return l[K.getMonth()]}o(z,"formatMonth");function $(K){return i[+(K.getHours()>=12)]}o($,"formatPeriod");function H(K){return 1+~~(K.getMonth()/3)}o(H,"formatQuarter");function Q(K){return s[K.getUTCDay()]}o(Q,"formatUTCShortWeekday");function j(K){return a[K.getUTCDay()]}o(j,"formatUTCWeekday");function ie(K){return u[K.getUTCMonth()]}o(ie,"formatUTCShortMonth");function ne(K){return l[K.getUTCMonth()]}o(ne,"formatUTCMonth");function le(K){return i[+(K.getUTCHours()>=12)]}o(le,"formatUTCPeriod");function he(K){return 1+~~(K.getUTCMonth()/3)}return o(he,"formatUTCQuarter"),{format:o(function(K){var X=E(K+="",w);return X.toString=function(){return K},X},"format"),parse:o(function(K){var X=A(K+="",!1);return X.toString=function(){return K},X},"parse"),utcFormat:o(function(K){var X=E(K+="",C);return X.toString=function(){return K},X},"utcFormat"),utcParse:o(function(K){var X=A(K+="",!0);return X.toString=function(){return K},X},"utcParse")}}function Wr(t,e,r){var n=t<0?"-":"",i=(n?-t:t)+"",a=i.length;return n+(a[e.toLowerCase(),r]))}function zTe(t,e,r){var n=Qi.exec(e.slice(r,r+1));return n?(t.w=+n[0],r+n[0].length):-1}function GTe(t,e,r){var n=Qi.exec(e.slice(r,r+1));return n?(t.u=+n[0],r+n[0].length):-1}function VTe(t,e,r){var n=Qi.exec(e.slice(r,r+2));return n?(t.U=+n[0],r+n[0].length):-1}function UTe(t,e,r){var n=Qi.exec(e.slice(r,r+2));return n?(t.V=+n[0],r+n[0].length):-1}function HTe(t,e,r){var n=Qi.exec(e.slice(r,r+2));return n?(t.W=+n[0],r+n[0].length):-1}function xW(t,e,r){var n=Qi.exec(e.slice(r,r+4));return n?(t.y=+n[0],r+n[0].length):-1}function bW(t,e,r){var n=Qi.exec(e.slice(r,r+2));return n?(t.y=+n[0]+(+n[0]>68?1900:2e3),r+n[0].length):-1}function WTe(t,e,r){var n=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(r,r+6));return n?(t.Z=n[1]?0:-(n[2]+(n[3]||"00")),r+n[0].length):-1}function qTe(t,e,r){var n=Qi.exec(e.slice(r,r+1));return n?(t.q=n[0]*3-3,r+n[0].length):-1}function YTe(t,e,r){var n=Qi.exec(e.slice(r,r+2));return n?(t.m=n[0]-1,r+n[0].length):-1}function wW(t,e,r){var n=Qi.exec(e.slice(r,r+2));return n?(t.d=+n[0],r+n[0].length):-1}function XTe(t,e,r){var n=Qi.exec(e.slice(r,r+3));return n?(t.m=0,t.d=+n[0],r+n[0].length):-1}function TW(t,e,r){var n=Qi.exec(e.slice(r,r+2));return n?(t.H=+n[0],r+n[0].length):-1}function jTe(t,e,r){var n=Qi.exec(e.slice(r,r+2));return n?(t.M=+n[0],r+n[0].length):-1}function KTe(t,e,r){var n=Qi.exec(e.slice(r,r+2));return n?(t.S=+n[0],r+n[0].length):-1}function QTe(t,e,r){var n=Qi.exec(e.slice(r,r+3));return n?(t.L=+n[0],r+n[0].length):-1}function ZTe(t,e,r){var n=Qi.exec(e.slice(r,r+6));return n?(t.L=Math.floor(n[0]/1e3),r+n[0].length):-1}function JTe(t,e,r){var n=BTe.exec(e.slice(r,r+1));return n?r+n[0].length:-1}function eke(t,e,r){var n=Qi.exec(e.slice(r));return n?(t.Q=+n[0],r+n[0].length):-1}function tke(t,e,r){var n=Qi.exec(e.slice(r));return n?(t.s=+n[0],r+n[0].length):-1}function kW(t,e){return Wr(t.getDate(),e,2)}function rke(t,e){return Wr(t.getHours(),e,2)}function nke(t,e){return Wr(t.getHours()%12||12,e,2)}function ike(t,e){return Wr(1+_o.count(Qs(t),t),e,3)}function _W(t,e){return Wr(t.getMilliseconds(),e,3)}function ake(t,e){return _W(t,e)+"000"}function ske(t,e){return Wr(t.getMonth()+1,e,2)}function oke(t,e){return Wr(t.getMinutes(),e,2)}function lke(t,e){return Wr(t.getSeconds(),e,2)}function cke(t){var e=t.getDay();return e===0?7:e}function uke(t,e){return Wr(yl.count(Qs(t)-1,t),e,2)}function DW(t){var e=t.getDay();return e>=4||e===0?oc(t):oc.ceil(t)}function hke(t,e){return t=DW(t),Wr(oc.count(Qs(t),t)+(Qs(t).getDay()===4),e,2)}function fke(t){return t.getDay()}function dke(t,e){return Wr(Ch.count(Qs(t)-1,t),e,2)}function pke(t,e){return Wr(t.getFullYear()%100,e,2)}function mke(t,e){return t=DW(t),Wr(t.getFullYear()%100,e,2)}function gke(t,e){return Wr(t.getFullYear()%1e4,e,4)}function yke(t,e){var r=t.getDay();return t=r>=4||r===0?oc(t):oc.ceil(t),Wr(t.getFullYear()%1e4,e,4)}function vke(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+Wr(e/60|0,"0",2)+Wr(e%60,"0",2)}function EW(t,e){return Wr(t.getUTCDate(),e,2)}function xke(t,e){return Wr(t.getUTCHours(),e,2)}function bke(t,e){return Wr(t.getUTCHours()%12||12,e,2)}function wke(t,e){return Wr(1+Sv.count(vl(t),t),e,3)}function LW(t,e){return Wr(t.getUTCMilliseconds(),e,3)}function Tke(t,e){return LW(t,e)+"000"}function kke(t,e){return Wr(t.getUTCMonth()+1,e,2)}function Eke(t,e){return Wr(t.getUTCMinutes(),e,2)}function Ske(t,e){return Wr(t.getUTCSeconds(),e,2)}function Cke(t){var e=t.getUTCDay();return e===0?7:e}function Ake(t,e){return Wr(bd.count(vl(t)-1,t),e,2)}function RW(t){var e=t.getUTCDay();return e>=4||e===0?Ah(t):Ah.ceil(t)}function _ke(t,e){return t=RW(t),Wr(Ah.count(vl(t),t)+(vl(t).getUTCDay()===4),e,2)}function Dke(t){return t.getUTCDay()}function Lke(t,e){return Wr(N0.count(vl(t)-1,t),e,2)}function Rke(t,e){return Wr(t.getUTCFullYear()%100,e,2)}function Nke(t,e){return t=RW(t),Wr(t.getUTCFullYear()%100,e,2)}function Mke(t,e){return Wr(t.getUTCFullYear()%1e4,e,4)}function Ike(t,e){var r=t.getUTCDay();return t=r>=4||r===0?Ah(t):Ah.ceil(t),Wr(t.getUTCFullYear()%1e4,e,4)}function Oke(){return"+0000"}function SW(){return"%"}function CW(t){return+t}function AW(t){return Math.floor(+t/1e3)}var vW,Qi,BTe,FTe,NW=N(()=>{"use strict";A5();o(X_,"localDate");o(j_,"utcDate");o(Cv,"newDate");o(K_,"formatLocale");vW={"-":"",_:" ",0:"0"},Qi=/^\s*\d+/,BTe=/^%/,FTe=/[\\^$*+?|[\]().{}]/g;o(Wr,"pad");o($Te,"requote");o(Av,"formatRe");o(_v,"formatLookup");o(zTe,"parseWeekdayNumberSunday");o(GTe,"parseWeekdayNumberMonday");o(VTe,"parseWeekNumberSunday");o(UTe,"parseWeekNumberISO");o(HTe,"parseWeekNumberMonday");o(xW,"parseFullYear");o(bW,"parseYear");o(WTe,"parseZone");o(qTe,"parseQuarter");o(YTe,"parseMonthNumber");o(wW,"parseDayOfMonth");o(XTe,"parseDayOfYear");o(TW,"parseHour24");o(jTe,"parseMinutes");o(KTe,"parseSeconds");o(QTe,"parseMilliseconds");o(ZTe,"parseMicroseconds");o(JTe,"parseLiteralPercent");o(eke,"parseUnixTimestamp");o(tke,"parseUnixTimestampSeconds");o(kW,"formatDayOfMonth");o(rke,"formatHour24");o(nke,"formatHour12");o(ike,"formatDayOfYear");o(_W,"formatMilliseconds");o(ake,"formatMicroseconds");o(ske,"formatMonthNumber");o(oke,"formatMinutes");o(lke,"formatSeconds");o(cke,"formatWeekdayNumberMonday");o(uke,"formatWeekNumberSunday");o(DW,"dISO");o(hke,"formatWeekNumberISO");o(fke,"formatWeekdayNumberSunday");o(dke,"formatWeekNumberMonday");o(pke,"formatYear");o(mke,"formatYearISO");o(gke,"formatFullYear");o(yke,"formatFullYearISO");o(vke,"formatZone");o(EW,"formatUTCDayOfMonth");o(xke,"formatUTCHour24");o(bke,"formatUTCHour12");o(wke,"formatUTCDayOfYear");o(LW,"formatUTCMilliseconds");o(Tke,"formatUTCMicroseconds");o(kke,"formatUTCMonthNumber");o(Eke,"formatUTCMinutes");o(Ske,"formatUTCSeconds");o(Cke,"formatUTCWeekdayNumberMonday");o(Ake,"formatUTCWeekNumberSunday");o(RW,"UTCdISO");o(_ke,"formatUTCWeekNumberISO");o(Dke,"formatUTCWeekdayNumberSunday");o(Lke,"formatUTCWeekNumberMonday");o(Rke,"formatUTCYear");o(Nke,"formatUTCYearISO");o(Mke,"formatUTCFullYear");o(Ike,"formatUTCFullYearISO");o(Oke,"formatUTCZone");o(SW,"formatLiteralPercent");o(CW,"formatUnixTimestamp");o(AW,"formatUnixTimestampSeconds")});function Q_(t){return M0=K_(t),wd=M0.format,MW=M0.parse,IW=M0.utcFormat,OW=M0.utcParse,M0}var M0,wd,MW,IW,OW,PW=N(()=>{"use strict";NW();Q_({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});o(Q_,"defaultLocale")});var Z_=N(()=>{"use strict";PW()});function Pke(t){return new Date(t)}function Bke(t){return t instanceof Date?+t:+new Date(+t)}function BW(t,e,r,n,i,a,s,l,u,h){var f=kv(),d=f.invert,p=f.domain,m=h(".%L"),g=h(":%S"),y=h("%I:%M"),v=h("%I %p"),x=h("%a %d"),b=h("%b %d"),w=h("%B"),C=h("%Y");function T(E){return(u(E){"use strict";A5();Z_();M_();Tv();aW();o(Pke,"date");o(Bke,"number");o(BW,"calendar");o(_5,"time")});var $W=N(()=>{"use strict";JH();iW();D_();FW()});function J_(t){for(var e=t.length/6|0,r=new Array(e),n=0;n{"use strict";o(J_,"default")});var e9,GW=N(()=>{"use strict";zW();e9=J_("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab")});var VW=N(()=>{"use strict";GW()});function Bn(t){return o(function(){return t},"constant")}var D5=N(()=>{"use strict";o(Bn,"default")});function HW(t){return t>1?0:t<-1?I0:Math.acos(t)}function r9(t){return t>=1?Dv:t<=-1?-Dv:Math.asin(t)}var t9,fa,_h,UW,L5,xl,Td,Zi,I0,Dv,O0,R5=N(()=>{"use strict";t9=Math.abs,fa=Math.atan2,_h=Math.cos,UW=Math.max,L5=Math.min,xl=Math.sin,Td=Math.sqrt,Zi=1e-12,I0=Math.PI,Dv=I0/2,O0=2*I0;o(HW,"acos");o(r9,"asin")});function N5(t){let e=3;return t.digits=function(r){if(!arguments.length)return e;if(r==null)e=null;else{let n=Math.floor(r);if(!(n>=0))throw new RangeError(`invalid digits: ${r}`);e=n}return t},()=>new pd(e)}var n9=N(()=>{"use strict";m_();o(N5,"withPath")});function Fke(t){return t.innerRadius}function $ke(t){return t.outerRadius}function zke(t){return t.startAngle}function Gke(t){return t.endAngle}function Vke(t){return t&&t.padAngle}function Uke(t,e,r,n,i,a,s,l){var u=r-t,h=n-e,f=s-i,d=l-a,p=d*u-f*h;if(!(p*pR*R+O*O&&(S=I,_=D),{cx:S,cy:_,x01:-f,y01:-d,x11:S*(i/T-1),y11:_*(i/T-1)}}function bl(){var t=Fke,e=$ke,r=Bn(0),n=null,i=zke,a=Gke,s=Vke,l=null,u=N5(h);function h(){var f,d,p=+t.apply(this,arguments),m=+e.apply(this,arguments),g=i.apply(this,arguments)-Dv,y=a.apply(this,arguments)-Dv,v=t9(y-g),x=y>g;if(l||(l=f=u()),mZi))l.moveTo(0,0);else if(v>O0-Zi)l.moveTo(m*_h(g),m*xl(g)),l.arc(0,0,m,g,y,!x),p>Zi&&(l.moveTo(p*_h(y),p*xl(y)),l.arc(0,0,p,y,g,x));else{var b=g,w=y,C=g,T=y,E=v,A=v,S=s.apply(this,arguments)/2,_=S>Zi&&(n?+n.apply(this,arguments):Td(p*p+m*m)),I=L5(t9(m-p)/2,+r.apply(this,arguments)),D=I,k=I,L,R;if(_>Zi){var O=r9(_/p*xl(S)),M=r9(_/m*xl(S));(E-=O*2)>Zi?(O*=x?1:-1,C+=O,T-=O):(E=0,C=T=(g+y)/2),(A-=M*2)>Zi?(M*=x?1:-1,b+=M,w-=M):(A=0,b=w=(g+y)/2)}var B=m*_h(b),F=m*xl(b),P=p*_h(T),z=p*xl(T);if(I>Zi){var $=m*_h(w),H=m*xl(w),Q=p*_h(C),j=p*xl(C),ie;if(vZi?k>Zi?(L=M5(Q,j,B,F,m,k,x),R=M5($,H,P,z,m,k,x),l.moveTo(L.cx+L.x01,L.cy+L.y01),kZi)||!(E>Zi)?l.lineTo(P,z):D>Zi?(L=M5(P,z,$,H,p,-D,x),R=M5(B,F,Q,j,p,-D,x),l.lineTo(L.cx+L.x01,L.cy+L.y01),D{"use strict";D5();R5();n9();o(Fke,"arcInnerRadius");o($ke,"arcOuterRadius");o(zke,"arcStartAngle");o(Gke,"arcEndAngle");o(Vke,"arcPadAngle");o(Uke,"intersect");o(M5,"cornerTangents");o(bl,"default")});function Lv(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}var Nyt,i9=N(()=>{"use strict";Nyt=Array.prototype.slice;o(Lv,"default")});function qW(t){this._context=t}function wu(t){return new qW(t)}var a9=N(()=>{"use strict";o(qW,"Linear");qW.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._point=0},"lineStart"),lineEnd:o(function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:this._context.lineTo(t,e);break}},"point")};o(wu,"default")});function YW(t){return t[0]}function XW(t){return t[1]}var jW=N(()=>{"use strict";o(YW,"x");o(XW,"y")});function wl(t,e){var r=Bn(!0),n=null,i=wu,a=null,s=N5(l);t=typeof t=="function"?t:t===void 0?YW:Bn(t),e=typeof e=="function"?e:e===void 0?XW:Bn(e);function l(u){var h,f=(u=Lv(u)).length,d,p=!1,m;for(n==null&&(a=i(m=s())),h=0;h<=f;++h)!(h{"use strict";i9();D5();a9();n9();jW();o(wl,"default")});function s9(t,e){return et?1:e>=t?0:NaN}var QW=N(()=>{"use strict";o(s9,"default")});function o9(t){return t}var ZW=N(()=>{"use strict";o(o9,"default")});function I5(){var t=o9,e=s9,r=null,n=Bn(0),i=Bn(O0),a=Bn(0);function s(l){var u,h=(l=Lv(l)).length,f,d,p=0,m=new Array(h),g=new Array(h),y=+n.apply(this,arguments),v=Math.min(O0,Math.max(-O0,i.apply(this,arguments)-y)),x,b=Math.min(Math.abs(v)/h,a.apply(this,arguments)),w=b*(v<0?-1:1),C;for(u=0;u0&&(p+=C);for(e!=null?m.sort(function(T,E){return e(g[T],g[E])}):r!=null&&m.sort(function(T,E){return r(l[T],l[E])}),u=0,d=p?(v-h*w)/p:0;u0?C*d:0)+w,g[f]={data:l[f],index:u,value:C,startAngle:y,endAngle:x,padAngle:b};return g}return o(s,"pie"),s.value=function(l){return arguments.length?(t=typeof l=="function"?l:Bn(+l),s):t},s.sortValues=function(l){return arguments.length?(e=l,r=null,s):e},s.sort=function(l){return arguments.length?(r=l,e=null,s):r},s.startAngle=function(l){return arguments.length?(n=typeof l=="function"?l:Bn(+l),s):n},s.endAngle=function(l){return arguments.length?(i=typeof l=="function"?l:Bn(+l),s):i},s.padAngle=function(l){return arguments.length?(a=typeof l=="function"?l:Bn(+l),s):a},s}var JW=N(()=>{"use strict";i9();D5();QW();ZW();R5();o(I5,"default")});function Rv(t){return new O5(t,!0)}function Nv(t){return new O5(t,!1)}var O5,eq=N(()=>{"use strict";O5=class{static{o(this,"Bump")}constructor(e,r){this._context=e,this._x=r}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(e,r){switch(e=+e,r=+r,this._point){case 0:{this._point=1,this._line?this._context.lineTo(e,r):this._context.moveTo(e,r);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+e)/2,this._y0,this._x0,r,e,r):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+r)/2,e,this._y0,e,r);break}}this._x0=e,this._y0=r}};o(Rv,"bumpX");o(Nv,"bumpY")});function Zs(){}var Mv=N(()=>{"use strict";o(Zs,"default")});function P0(t,e,r){t._context.bezierCurveTo((2*t._x0+t._x1)/3,(2*t._y0+t._y1)/3,(t._x0+2*t._x1)/3,(t._y0+2*t._y1)/3,(t._x0+4*t._x1+e)/6,(t._y0+4*t._y1+r)/6)}function Iv(t){this._context=t}function Do(t){return new Iv(t)}var Ov=N(()=>{"use strict";o(P0,"point");o(Iv,"Basis");Iv.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 3:P0(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:P0(this,t,e);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e},"point")};o(Do,"default")});function tq(t){this._context=t}function P5(t){return new tq(t)}var rq=N(()=>{"use strict";Mv();Ov();o(tq,"BasisClosed");tq.prototype={areaStart:Zs,areaEnd:Zs,lineStart:o(function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x2=t,this._y2=e;break;case 1:this._point=2,this._x3=t,this._y3=e;break;case 2:this._point=3,this._x4=t,this._y4=e,this._context.moveTo((this._x0+4*this._x1+t)/6,(this._y0+4*this._y1+e)/6);break;default:P0(this,t,e);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e},"point")};o(P5,"default")});function nq(t){this._context=t}function B5(t){return new nq(t)}var iq=N(()=>{"use strict";Ov();o(nq,"BasisOpen");nq.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},"lineStart"),lineEnd:o(function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var r=(this._x0+4*this._x1+t)/6,n=(this._y0+4*this._y1+e)/6;this._line?this._context.lineTo(r,n):this._context.moveTo(r,n);break;case 3:this._point=4;default:P0(this,t,e);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e},"point")};o(B5,"default")});function aq(t,e){this._basis=new Iv(t),this._beta=e}var l9,sq=N(()=>{"use strict";Ov();o(aq,"Bundle");aq.prototype={lineStart:o(function(){this._x=[],this._y=[],this._basis.lineStart()},"lineStart"),lineEnd:o(function(){var t=this._x,e=this._y,r=t.length-1;if(r>0)for(var n=t[0],i=e[0],a=t[r]-n,s=e[r]-i,l=-1,u;++l<=r;)u=l/r,this._basis.point(this._beta*t[l]+(1-this._beta)*(n+u*a),this._beta*e[l]+(1-this._beta)*(i+u*s));this._x=this._y=null,this._basis.lineEnd()},"lineEnd"),point:o(function(t,e){this._x.push(+t),this._y.push(+e)},"point")};l9=o(function t(e){function r(n){return e===1?new Iv(n):new aq(n,e)}return o(r,"bundle"),r.beta=function(n){return t(+n)},r},"custom")(.85)});function B0(t,e,r){t._context.bezierCurveTo(t._x1+t._k*(t._x2-t._x0),t._y1+t._k*(t._y2-t._y0),t._x2+t._k*(t._x1-e),t._y2+t._k*(t._y1-r),t._x2,t._y2)}function F5(t,e){this._context=t,this._k=(1-e)/6}var Pv,Bv=N(()=>{"use strict";o(B0,"point");o(F5,"Cardinal");F5.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:B0(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2,this._x1=t,this._y1=e;break;case 2:this._point=3;default:B0(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};Pv=o(function t(e){function r(n){return new F5(n,e)}return o(r,"cardinal"),r.tension=function(n){return t(+n)},r},"custom")(0)});function $5(t,e){this._context=t,this._k=(1-e)/6}var c9,u9=N(()=>{"use strict";Mv();Bv();o($5,"CardinalClosed");$5.prototype={areaStart:Zs,areaEnd:Zs,lineStart:o(function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:B0(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};c9=o(function t(e){function r(n){return new $5(n,e)}return o(r,"cardinal"),r.tension=function(n){return t(+n)},r},"custom")(0)});function z5(t,e){this._context=t,this._k=(1-e)/6}var h9,f9=N(()=>{"use strict";Bv();o(z5,"CardinalOpen");z5.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},"lineStart"),lineEnd:o(function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:B0(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};h9=o(function t(e){function r(n){return new z5(n,e)}return o(r,"cardinal"),r.tension=function(n){return t(+n)},r},"custom")(0)});function Fv(t,e,r){var n=t._x1,i=t._y1,a=t._x2,s=t._y2;if(t._l01_a>Zi){var l=2*t._l01_2a+3*t._l01_a*t._l12_a+t._l12_2a,u=3*t._l01_a*(t._l01_a+t._l12_a);n=(n*l-t._x0*t._l12_2a+t._x2*t._l01_2a)/u,i=(i*l-t._y0*t._l12_2a+t._y2*t._l01_2a)/u}if(t._l23_a>Zi){var h=2*t._l23_2a+3*t._l23_a*t._l12_a+t._l12_2a,f=3*t._l23_a*(t._l23_a+t._l12_a);a=(a*h+t._x1*t._l23_2a-e*t._l12_2a)/f,s=(s*h+t._y1*t._l23_2a-r*t._l12_2a)/f}t._context.bezierCurveTo(n,i,a,s,t._x2,t._y2)}function oq(t,e){this._context=t,this._alpha=e}var $v,G5=N(()=>{"use strict";R5();Bv();o(Fv,"point");o(oq,"CatmullRom");oq.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3;default:Fv(this,t,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};$v=o(function t(e){function r(n){return e?new oq(n,e):new F5(n,0)}return o(r,"catmullRom"),r.alpha=function(n){return t(+n)},r},"custom")(.5)});function lq(t,e){this._context=t,this._alpha=e}var d9,cq=N(()=>{"use strict";u9();Mv();G5();o(lq,"CatmullRomClosed");lq.prototype={areaStart:Zs,areaEnd:Zs,lineStart:o(function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},"lineEnd"),point:o(function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:Fv(this,t,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};d9=o(function t(e){function r(n){return e?new lq(n,e):new $5(n,0)}return o(r,"catmullRom"),r.alpha=function(n){return t(+n)},r},"custom")(.5)});function uq(t,e){this._context=t,this._alpha=e}var p9,hq=N(()=>{"use strict";f9();G5();o(uq,"CatmullRomOpen");uq.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},"lineStart"),lineEnd:o(function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Fv(this,t,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};p9=o(function t(e){function r(n){return e?new uq(n,e):new z5(n,0)}return o(r,"catmullRom"),r.alpha=function(n){return t(+n)},r},"custom")(.5)});function fq(t){this._context=t}function V5(t){return new fq(t)}var dq=N(()=>{"use strict";Mv();o(fq,"LinearClosed");fq.prototype={areaStart:Zs,areaEnd:Zs,lineStart:o(function(){this._point=0},"lineStart"),lineEnd:o(function(){this._point&&this._context.closePath()},"lineEnd"),point:o(function(t,e){t=+t,e=+e,this._point?this._context.lineTo(t,e):(this._point=1,this._context.moveTo(t,e))},"point")};o(V5,"default")});function pq(t){return t<0?-1:1}function mq(t,e,r){var n=t._x1-t._x0,i=e-t._x1,a=(t._y1-t._y0)/(n||i<0&&-0),s=(r-t._y1)/(i||n<0&&-0),l=(a*i+s*n)/(n+i);return(pq(a)+pq(s))*Math.min(Math.abs(a),Math.abs(s),.5*Math.abs(l))||0}function gq(t,e){var r=t._x1-t._x0;return r?(3*(t._y1-t._y0)/r-e)/2:e}function m9(t,e,r){var n=t._x0,i=t._y0,a=t._x1,s=t._y1,l=(a-n)/3;t._context.bezierCurveTo(n+l,i+l*e,a-l,s-l*r,a,s)}function U5(t){this._context=t}function yq(t){this._context=new vq(t)}function vq(t){this._context=t}function zv(t){return new U5(t)}function Gv(t){return new yq(t)}var xq=N(()=>{"use strict";o(pq,"sign");o(mq,"slope3");o(gq,"slope2");o(m9,"point");o(U5,"MonotoneX");U5.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:m9(this,this._t0,gq(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){var r=NaN;if(t=+t,e=+e,!(t===this._x1&&e===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,m9(this,gq(this,r=mq(this,t,e)),r);break;default:m9(this,this._t0,r=mq(this,t,e));break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e,this._t0=r}},"point")};o(yq,"MonotoneY");(yq.prototype=Object.create(U5.prototype)).point=function(t,e){U5.prototype.point.call(this,e,t)};o(vq,"ReflectContext");vq.prototype={moveTo:o(function(t,e){this._context.moveTo(e,t)},"moveTo"),closePath:o(function(){this._context.closePath()},"closePath"),lineTo:o(function(t,e){this._context.lineTo(e,t)},"lineTo"),bezierCurveTo:o(function(t,e,r,n,i,a){this._context.bezierCurveTo(e,t,n,r,a,i)},"bezierCurveTo")};o(zv,"monotoneX");o(Gv,"monotoneY")});function wq(t){this._context=t}function bq(t){var e,r=t.length-1,n,i=new Array(r),a=new Array(r),s=new Array(r);for(i[0]=0,a[0]=2,s[0]=t[0]+2*t[1],e=1;e=0;--e)i[e]=(s[e]-i[e+1])/a[e];for(a[r-1]=(t[r]+i[r-1])/2,e=0;e{"use strict";o(wq,"Natural");wq.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x=[],this._y=[]},"lineStart"),lineEnd:o(function(){var t=this._x,e=this._y,r=t.length;if(r)if(this._line?this._context.lineTo(t[0],e[0]):this._context.moveTo(t[0],e[0]),r===2)this._context.lineTo(t[1],e[1]);else for(var n=bq(t),i=bq(e),a=0,s=1;s{"use strict";o(H5,"Step");H5.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x=this._y=NaN,this._point=0},"lineStart"),lineEnd:o(function(){0=0&&(this._t=1-this._t,this._line=1-this._line)},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,e),this._context.lineTo(t,e);else{var r=this._x*(1-this._t)+t*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,e)}break}}this._x=t,this._y=e},"point")};o($0,"default");o(Vv,"stepBefore");o(Uv,"stepAfter")});var Eq=N(()=>{"use strict";WW();KW();JW();rq();iq();Ov();eq();sq();u9();f9();Bv();cq();hq();G5();dq();a9();xq();Tq();kq()});var Sq=N(()=>{"use strict"});var Cq=N(()=>{"use strict"});function Dh(t,e,r){this.k=t,this.x=e,this.y=r}function y9(t){for(;!t.__zoom;)if(!(t=t.parentNode))return g9;return t.__zoom}var g9,v9=N(()=>{"use strict";o(Dh,"Transform");Dh.prototype={constructor:Dh,scale:o(function(t){return t===1?this:new Dh(this.k*t,this.x,this.y)},"scale"),translate:o(function(t,e){return t===0&e===0?this:new Dh(this.k,this.x+this.k*t,this.y+this.k*e)},"translate"),apply:o(function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},"apply"),applyX:o(function(t){return t*this.k+this.x},"applyX"),applyY:o(function(t){return t*this.k+this.y},"applyY"),invert:o(function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},"invert"),invertX:o(function(t){return(t-this.x)/this.k},"invertX"),invertY:o(function(t){return(t-this.y)/this.k},"invertY"),rescaleX:o(function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},"rescaleX"),rescaleY:o(function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},"rescaleY"),toString:o(function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"},"toString")};g9=new Dh(1,0,0);y9.prototype=Dh.prototype;o(y9,"transform")});var Aq=N(()=>{"use strict"});var _q=N(()=>{"use strict";l5();Sq();Cq();v9();Aq()});var Dq=N(()=>{"use strict";_q();v9()});var dr=N(()=>{"use strict";vh();sV();SH();DH();E0();LH();RH();TA();QV();NH();u_();MH();OH();A_();jH();KH();A0();m_();QH();IH();ZH();$W();VW();fl();Eq();A5();Z_();r5();l5();Dq()});var Lq=Mi(Ji=>{"use strict";Object.defineProperty(Ji,"__esModule",{value:!0});Ji.BLANK_URL=Ji.relativeFirstCharacters=Ji.whitespaceEscapeCharsRegex=Ji.urlSchemeRegex=Ji.ctrlCharactersRegex=Ji.htmlCtrlEntityRegex=Ji.htmlEntitiesRegex=Ji.invalidProtocolRegex=void 0;Ji.invalidProtocolRegex=/^([^\w]*)(javascript|data|vbscript)/im;Ji.htmlEntitiesRegex=/&#(\w+)(^\w|;)?/g;Ji.htmlCtrlEntityRegex=/&(newline|tab);/gi;Ji.ctrlCharactersRegex=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim;Ji.urlSchemeRegex=/^.+(:|:)/gim;Ji.whitespaceEscapeCharsRegex=/(\\|%5[cC])((%(6[eE]|72|74))|[nrt])/g;Ji.relativeFirstCharacters=[".","/"];Ji.BLANK_URL="about:blank"});var z0=Mi(W5=>{"use strict";Object.defineProperty(W5,"__esModule",{value:!0});W5.sanitizeUrl=void 0;var Aa=Lq();function Hke(t){return Aa.relativeFirstCharacters.indexOf(t[0])>-1}o(Hke,"isRelativeUrlWithoutProtocol");function Wke(t){var e=t.replace(Aa.ctrlCharactersRegex,"");return e.replace(Aa.htmlEntitiesRegex,function(r,n){return String.fromCharCode(n)})}o(Wke,"decodeHtmlCharacters");function qke(t){return URL.canParse(t)}o(qke,"isValidUrl");function Rq(t){try{return decodeURIComponent(t)}catch{return t}}o(Rq,"decodeURI");function Yke(t){if(!t)return Aa.BLANK_URL;var e,r=Rq(t.trim());do r=Wke(r).replace(Aa.htmlCtrlEntityRegex,"").replace(Aa.ctrlCharactersRegex,"").replace(Aa.whitespaceEscapeCharsRegex,"").trim(),r=Rq(r),e=r.match(Aa.ctrlCharactersRegex)||r.match(Aa.htmlEntitiesRegex)||r.match(Aa.htmlCtrlEntityRegex)||r.match(Aa.whitespaceEscapeCharsRegex);while(e&&e.length>0);var n=r;if(!n)return Aa.BLANK_URL;if(Hke(n))return n;var i=n.trimStart(),a=i.match(Aa.urlSchemeRegex);if(!a)return n;var s=a[0].toLowerCase().trim();if(Aa.invalidProtocolRegex.test(s))return Aa.BLANK_URL;var l=i.replace(/\\/g,"/");if(s==="mailto:"||s.includes("://"))return l;if(s==="http:"||s==="https:"){if(!qke(l))return Aa.BLANK_URL;var u=new URL(l);return u.protocol=u.protocol.toLowerCase(),u.hostname=u.hostname.toLowerCase(),u.toString()}return l}o(Yke,"sanitizeUrl");W5.sanitizeUrl=Yke});var x9,kd,q5,Nq,Mq,Iq,Tl,Hv,Wv=N(()=>{"use strict";x9=Sa(z0(),1);gr();kd=o((t,e)=>{let r=t.append("rect");if(r.attr("x",e.x),r.attr("y",e.y),r.attr("fill",e.fill),r.attr("stroke",e.stroke),r.attr("width",e.width),r.attr("height",e.height),e.name&&r.attr("name",e.name),e.rx&&r.attr("rx",e.rx),e.ry&&r.attr("ry",e.ry),e.attrs!==void 0)for(let n in e.attrs)r.attr(n,e.attrs[n]);return e.class&&r.attr("class",e.class),r},"drawRect"),q5=o((t,e)=>{let r={x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,stroke:e.stroke,class:"rect"};kd(t,r).lower()},"drawBackgroundRect"),Nq=o((t,e)=>{let r=e.text.replace(nd," "),n=t.append("text");n.attr("x",e.x),n.attr("y",e.y),n.attr("class","legend"),n.style("text-anchor",e.anchor),e.class&&n.attr("class",e.class);let i=n.append("tspan");return i.attr("x",e.x+e.textMargin*2),i.text(r),n},"drawText"),Mq=o((t,e,r,n)=>{let i=t.append("image");i.attr("x",e),i.attr("y",r);let a=(0,x9.sanitizeUrl)(n);i.attr("xlink:href",a)},"drawImage"),Iq=o((t,e,r,n)=>{let i=t.append("use");i.attr("x",e),i.attr("y",r);let a=(0,x9.sanitizeUrl)(n);i.attr("xlink:href",`#${a}`)},"drawEmbeddedImage"),Tl=o(()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),"getNoteRect"),Hv=o(()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),"getTextObj")});var Oq,b9,Pq,Xke,jke,Kke,Qke,Zke,Jke,eEe,tEe,rEe,nEe,iEe,aEe,Tu,kl,Bq=N(()=>{"use strict";gr();Wv();Oq=Sa(z0(),1),b9=o(function(t,e){return kd(t,e)},"drawRect"),Pq=o(function(t,e,r,n,i,a){let s=t.append("image");s.attr("width",e),s.attr("height",r),s.attr("x",n),s.attr("y",i);let l=a.startsWith("data:image/png;base64")?a:(0,Oq.sanitizeUrl)(a);s.attr("xlink:href",l)},"drawImage"),Xke=o((t,e,r)=>{let n=t.append("g"),i=0;for(let a of e){let s=a.textColor?a.textColor:"#444444",l=a.lineColor?a.lineColor:"#444444",u=a.offsetX?parseInt(a.offsetX):0,h=a.offsetY?parseInt(a.offsetY):0,f="";if(i===0){let p=n.append("line");p.attr("x1",a.startPoint.x),p.attr("y1",a.startPoint.y),p.attr("x2",a.endPoint.x),p.attr("y2",a.endPoint.y),p.attr("stroke-width","1"),p.attr("stroke",l),p.style("fill","none"),a.type!=="rel_b"&&p.attr("marker-end","url("+f+"#arrowhead)"),(a.type==="birel"||a.type==="rel_b")&&p.attr("marker-start","url("+f+"#arrowend)"),i=-1}else{let p=n.append("path");p.attr("fill","none").attr("stroke-width","1").attr("stroke",l).attr("d","Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx",a.startPoint.x).replaceAll("starty",a.startPoint.y).replaceAll("controlx",a.startPoint.x+(a.endPoint.x-a.startPoint.x)/2-(a.endPoint.x-a.startPoint.x)/4).replaceAll("controly",a.startPoint.y+(a.endPoint.y-a.startPoint.y)/2).replaceAll("stopx",a.endPoint.x).replaceAll("stopy",a.endPoint.y)),a.type!=="rel_b"&&p.attr("marker-end","url("+f+"#arrowhead)"),(a.type==="birel"||a.type==="rel_b")&&p.attr("marker-start","url("+f+"#arrowend)")}let d=r.messageFont();Tu(r)(a.label.text,n,Math.min(a.startPoint.x,a.endPoint.x)+Math.abs(a.endPoint.x-a.startPoint.x)/2+u,Math.min(a.startPoint.y,a.endPoint.y)+Math.abs(a.endPoint.y-a.startPoint.y)/2+h,a.label.width,a.label.height,{fill:s},d),a.techn&&a.techn.text!==""&&(d=r.messageFont(),Tu(r)("["+a.techn.text+"]",n,Math.min(a.startPoint.x,a.endPoint.x)+Math.abs(a.endPoint.x-a.startPoint.x)/2+u,Math.min(a.startPoint.y,a.endPoint.y)+Math.abs(a.endPoint.y-a.startPoint.y)/2+r.messageFontSize+5+h,Math.max(a.label.width,a.techn.width),a.techn.height,{fill:s,"font-style":"italic"},d))}},"drawRels"),jke=o(function(t,e,r){let n=t.append("g"),i=e.bgColor?e.bgColor:"none",a=e.borderColor?e.borderColor:"#444444",s=e.fontColor?e.fontColor:"black",l={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};e.nodeType&&(l={"stroke-width":1});let u={x:e.x,y:e.y,fill:i,stroke:a,width:e.width,height:e.height,rx:2.5,ry:2.5,attrs:l};b9(n,u);let h=r.boundaryFont();h.fontWeight="bold",h.fontSize=h.fontSize+2,h.fontColor=s,Tu(r)(e.label.text,n,e.x,e.y+e.label.Y,e.width,e.height,{fill:"#444444"},h),e.type&&e.type.text!==""&&(h=r.boundaryFont(),h.fontColor=s,Tu(r)(e.type.text,n,e.x,e.y+e.type.Y,e.width,e.height,{fill:"#444444"},h)),e.descr&&e.descr.text!==""&&(h=r.boundaryFont(),h.fontSize=h.fontSize-2,h.fontColor=s,Tu(r)(e.descr.text,n,e.x,e.y+e.descr.Y,e.width,e.height,{fill:"#444444"},h))},"drawBoundary"),Kke=o(function(t,e,r){let n=e.bgColor?e.bgColor:r[e.typeC4Shape.text+"_bg_color"],i=e.borderColor?e.borderColor:r[e.typeC4Shape.text+"_border_color"],a=e.fontColor?e.fontColor:"#FFFFFF",s="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";switch(e.typeC4Shape.text){case"person":s="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";break;case"external_person":s="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAB6ElEQVR4Xu2YLY+EMBCG9+dWr0aj0Wg0Go1Go0+j8Xdv2uTCvv1gpt0ebHKPuhDaeW4605Z9mJvx4AdXUyTUdd08z+u6flmWZRnHsWkafk9DptAwDPu+f0eAYtu2PEaGWuj5fCIZrBAC2eLBAnRCsEkkxmeaJp7iDJ2QMDdHsLg8SxKFEJaAo8lAXnmuOFIhTMpxxKATebo4UiFknuNo4OniSIXQyRxEA3YsnjGCVEjVXD7yLUAqxBGUyPv/Y4W2beMgGuS7kVQIBycH0fD+oi5pezQETxdHKmQKGk1eQEYldK+jw5GxPfZ9z7Mk0Qnhf1W1m3w//EUn5BDmSZsbR44QQLBEqrBHqOrmSKaQAxdnLArCrxZcM7A7ZKs4ioRq8LFC+NpC3WCBJsvpVw5edm9iEXFuyNfxXAgSwfrFQ1c0iNda8AdejvUgnktOtJQQxmcfFzGglc5WVCj7oDgFqU18boeFSs52CUh8LE8BIVQDT1ABrB0HtgSEYlX5doJnCwv9TXocKCaKbnwhdDKPq4lf3SwU3HLq4V/+WYhHVMa/3b4IlfyikAduCkcBc7mQ3/z/Qq/cTuikhkzB12Ae/mcJC9U+Vo8Ej1gWAtgbeGgFsAMHr50BIWOLCbezvhpBFUdY6EJuJ/QDW0XoMX60zZ0AAAAASUVORK5CYII=";break}let l=t.append("g");l.attr("class","person-man");let u=Tl();switch(e.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":u.x=e.x,u.y=e.y,u.fill=n,u.width=e.width,u.height=e.height,u.stroke=i,u.rx=2.5,u.ry=2.5,u.attrs={"stroke-width":.5},b9(l,u);break;case"system_db":case"external_system_db":case"container_db":case"external_container_db":case"component_db":case"external_component_db":l.append("path").attr("fill",n).attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startyc0,-10 half,-10 half,-10c0,0 half,0 half,10l0,heightc0,10 -half,10 -half,10c0,0 -half,0 -half,-10l0,-height".replaceAll("startx",e.x).replaceAll("starty",e.y).replaceAll("half",e.width/2).replaceAll("height",e.height)),l.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startyc0,10 half,10 half,10c0,0 half,0 half,-10".replaceAll("startx",e.x).replaceAll("starty",e.y).replaceAll("half",e.width/2));break;case"system_queue":case"external_system_queue":case"container_queue":case"external_container_queue":case"component_queue":case"external_component_queue":l.append("path").attr("fill",n).attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startylwidth,0c5,0 5,half 5,halfc0,0 0,half -5,halfl-width,0c-5,0 -5,-half -5,-halfc0,0 0,-half 5,-half".replaceAll("startx",e.x).replaceAll("starty",e.y).replaceAll("width",e.width).replaceAll("half",e.height/2)),l.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startyc-5,0 -5,half -5,halfc0,half 5,half 5,half".replaceAll("startx",e.x+e.width).replaceAll("starty",e.y).replaceAll("half",e.height/2));break}let h=aEe(r,e.typeC4Shape.text);switch(l.append("text").attr("fill",a).attr("font-family",h.fontFamily).attr("font-size",h.fontSize-2).attr("font-style","italic").attr("lengthAdjust","spacing").attr("textLength",e.typeC4Shape.width).attr("x",e.x+e.width/2-e.typeC4Shape.width/2).attr("y",e.y+e.typeC4Shape.Y).text("<<"+e.typeC4Shape.text+">>"),e.typeC4Shape.text){case"person":case"external_person":Pq(l,48,48,e.x+e.width/2-24,e.y+e.image.Y,s);break}let f=r[e.typeC4Shape.text+"Font"]();return f.fontWeight="bold",f.fontSize=f.fontSize+2,f.fontColor=a,Tu(r)(e.label.text,l,e.x,e.y+e.label.Y,e.width,e.height,{fill:a},f),f=r[e.typeC4Shape.text+"Font"](),f.fontColor=a,e.techn&&e.techn?.text!==""?Tu(r)(e.techn.text,l,e.x,e.y+e.techn.Y,e.width,e.height,{fill:a,"font-style":"italic"},f):e.type&&e.type.text!==""&&Tu(r)(e.type.text,l,e.x,e.y+e.type.Y,e.width,e.height,{fill:a,"font-style":"italic"},f),e.descr&&e.descr.text!==""&&(f=r.personFont(),f.fontColor=a,Tu(r)(e.descr.text,l,e.x,e.y+e.descr.Y,e.width,e.height,{fill:a},f)),e.height},"drawC4Shape"),Qke=o(function(t){t.append("defs").append("symbol").attr("id","database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")},"insertDatabaseIcon"),Zke=o(function(t){t.append("defs").append("symbol").attr("id","computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")},"insertComputerIcon"),Jke=o(function(t){t.append("defs").append("symbol").attr("id","clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")},"insertClockIcon"),eEe=o(function(t){t.append("defs").append("marker").attr("id","arrowhead").attr("refX",9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z")},"insertArrowHead"),tEe=o(function(t){t.append("defs").append("marker").attr("id","arrowend").attr("refX",1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z")},"insertArrowEnd"),rEe=o(function(t){t.append("defs").append("marker").attr("id","filled-head").attr("refX",18).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"insertArrowFilledHead"),nEe=o(function(t){t.append("defs").append("marker").attr("id","sequencenumber").attr("refX",15).attr("refY",15).attr("markerWidth",60).attr("markerHeight",40).attr("orient","auto").append("circle").attr("cx",15).attr("cy",15).attr("r",6)},"insertDynamicNumber"),iEe=o(function(t){let r=t.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);r.append("path").attr("fill","black").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 9,2 V 6 L16,4 Z"),r.append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 0,1 L 6,7 M 6,1 L 0,7")},"insertArrowCrossHead"),aEe=o((t,e)=>({fontFamily:t[e+"FontFamily"],fontSize:t[e+"FontSize"],fontWeight:t[e+"FontWeight"]}),"getC4ShapeFont"),Tu=function(){function t(i,a,s,l,u,h,f){let d=a.append("text").attr("x",s+u/2).attr("y",l+h/2+5).style("text-anchor","middle").text(i);n(d,f)}o(t,"byText");function e(i,a,s,l,u,h,f,d){let{fontSize:p,fontFamily:m,fontWeight:g}=d,y=i.split(Ze.lineBreakRegex);for(let v=0;v{"use strict";sEe=typeof global=="object"&&global&&global.Object===Object&&global,X5=sEe});var oEe,lEe,li,Lo=N(()=>{"use strict";w9();oEe=typeof self=="object"&&self&&self.Object===Object&&self,lEe=X5||oEe||Function("return this")(),li=lEe});var cEe,ea,Ed=N(()=>{"use strict";Lo();cEe=li.Symbol,ea=cEe});function fEe(t){var e=uEe.call(t,qv),r=t[qv];try{t[qv]=void 0;var n=!0}catch{}var i=hEe.call(t);return n&&(e?t[qv]=r:delete t[qv]),i}var Fq,uEe,hEe,qv,$q,zq=N(()=>{"use strict";Ed();Fq=Object.prototype,uEe=Fq.hasOwnProperty,hEe=Fq.toString,qv=ea?ea.toStringTag:void 0;o(fEe,"getRawTag");$q=fEe});function mEe(t){return pEe.call(t)}var dEe,pEe,Gq,Vq=N(()=>{"use strict";dEe=Object.prototype,pEe=dEe.toString;o(mEe,"objectToString");Gq=mEe});function vEe(t){return t==null?t===void 0?yEe:gEe:Uq&&Uq in Object(t)?$q(t):Gq(t)}var gEe,yEe,Uq,da,ku=N(()=>{"use strict";Ed();zq();Vq();gEe="[object Null]",yEe="[object Undefined]",Uq=ea?ea.toStringTag:void 0;o(vEe,"baseGetTag");da=vEe});function xEe(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}var bn,Js=N(()=>{"use strict";o(xEe,"isObject");bn=xEe});function EEe(t){if(!bn(t))return!1;var e=da(t);return e==wEe||e==TEe||e==bEe||e==kEe}var bEe,wEe,TEe,kEe,Si,Yv=N(()=>{"use strict";ku();Js();bEe="[object AsyncFunction]",wEe="[object Function]",TEe="[object GeneratorFunction]",kEe="[object Proxy]";o(EEe,"isFunction");Si=EEe});var SEe,j5,Hq=N(()=>{"use strict";Lo();SEe=li["__core-js_shared__"],j5=SEe});function CEe(t){return!!Wq&&Wq in t}var Wq,qq,Yq=N(()=>{"use strict";Hq();Wq=function(){var t=/[^.]+$/.exec(j5&&j5.keys&&j5.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();o(CEe,"isMasked");qq=CEe});function DEe(t){if(t!=null){try{return _Ee.call(t)}catch{}try{return t+""}catch{}}return""}var AEe,_Ee,Eu,T9=N(()=>{"use strict";AEe=Function.prototype,_Ee=AEe.toString;o(DEe,"toSource");Eu=DEe});function BEe(t){if(!bn(t)||qq(t))return!1;var e=Si(t)?PEe:REe;return e.test(Eu(t))}var LEe,REe,NEe,MEe,IEe,OEe,PEe,Xq,jq=N(()=>{"use strict";Yv();Yq();Js();T9();LEe=/[\\^$.*+?()[\]{}|]/g,REe=/^\[object .+?Constructor\]$/,NEe=Function.prototype,MEe=Object.prototype,IEe=NEe.toString,OEe=MEe.hasOwnProperty,PEe=RegExp("^"+IEe.call(OEe).replace(LEe,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");o(BEe,"baseIsNative");Xq=BEe});function FEe(t,e){return t?.[e]}var Kq,Qq=N(()=>{"use strict";o(FEe,"getValue");Kq=FEe});function $Ee(t,e){var r=Kq(t,e);return Xq(r)?r:void 0}var Ss,Lh=N(()=>{"use strict";jq();Qq();o($Ee,"getNative");Ss=$Ee});var zEe,Su,Xv=N(()=>{"use strict";Lh();zEe=Ss(Object,"create"),Su=zEe});function GEe(){this.__data__=Su?Su(null):{},this.size=0}var Zq,Jq=N(()=>{"use strict";Xv();o(GEe,"hashClear");Zq=GEe});function VEe(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}var eY,tY=N(()=>{"use strict";o(VEe,"hashDelete");eY=VEe});function qEe(t){var e=this.__data__;if(Su){var r=e[t];return r===UEe?void 0:r}return WEe.call(e,t)?e[t]:void 0}var UEe,HEe,WEe,rY,nY=N(()=>{"use strict";Xv();UEe="__lodash_hash_undefined__",HEe=Object.prototype,WEe=HEe.hasOwnProperty;o(qEe,"hashGet");rY=qEe});function jEe(t){var e=this.__data__;return Su?e[t]!==void 0:XEe.call(e,t)}var YEe,XEe,iY,aY=N(()=>{"use strict";Xv();YEe=Object.prototype,XEe=YEe.hasOwnProperty;o(jEe,"hashHas");iY=jEe});function QEe(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=Su&&e===void 0?KEe:e,this}var KEe,sY,oY=N(()=>{"use strict";Xv();KEe="__lodash_hash_undefined__";o(QEe,"hashSet");sY=QEe});function G0(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{"use strict";Jq();tY();nY();aY();oY();o(G0,"Hash");G0.prototype.clear=Zq;G0.prototype.delete=eY;G0.prototype.get=rY;G0.prototype.has=iY;G0.prototype.set=sY;k9=G0});function ZEe(){this.__data__=[],this.size=0}var cY,uY=N(()=>{"use strict";o(ZEe,"listCacheClear");cY=ZEe});function JEe(t,e){return t===e||t!==t&&e!==e}var Ro,Sd=N(()=>{"use strict";o(JEe,"eq");Ro=JEe});function e6e(t,e){for(var r=t.length;r--;)if(Ro(t[r][0],e))return r;return-1}var Rh,jv=N(()=>{"use strict";Sd();o(e6e,"assocIndexOf");Rh=e6e});function n6e(t){var e=this.__data__,r=Rh(e,t);if(r<0)return!1;var n=e.length-1;return r==n?e.pop():r6e.call(e,r,1),--this.size,!0}var t6e,r6e,hY,fY=N(()=>{"use strict";jv();t6e=Array.prototype,r6e=t6e.splice;o(n6e,"listCacheDelete");hY=n6e});function i6e(t){var e=this.__data__,r=Rh(e,t);return r<0?void 0:e[r][1]}var dY,pY=N(()=>{"use strict";jv();o(i6e,"listCacheGet");dY=i6e});function a6e(t){return Rh(this.__data__,t)>-1}var mY,gY=N(()=>{"use strict";jv();o(a6e,"listCacheHas");mY=a6e});function s6e(t,e){var r=this.__data__,n=Rh(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this}var yY,vY=N(()=>{"use strict";jv();o(s6e,"listCacheSet");yY=s6e});function V0(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{"use strict";uY();fY();pY();gY();vY();o(V0,"ListCache");V0.prototype.clear=cY;V0.prototype.delete=hY;V0.prototype.get=dY;V0.prototype.has=mY;V0.prototype.set=yY;Nh=V0});var o6e,Mh,K5=N(()=>{"use strict";Lh();Lo();o6e=Ss(li,"Map"),Mh=o6e});function l6e(){this.size=0,this.__data__={hash:new k9,map:new(Mh||Nh),string:new k9}}var xY,bY=N(()=>{"use strict";lY();Kv();K5();o(l6e,"mapCacheClear");xY=l6e});function c6e(t){var e=typeof t;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?t!=="__proto__":t===null}var wY,TY=N(()=>{"use strict";o(c6e,"isKeyable");wY=c6e});function u6e(t,e){var r=t.__data__;return wY(e)?r[typeof e=="string"?"string":"hash"]:r.map}var Ih,Qv=N(()=>{"use strict";TY();o(u6e,"getMapData");Ih=u6e});function h6e(t){var e=Ih(this,t).delete(t);return this.size-=e?1:0,e}var kY,EY=N(()=>{"use strict";Qv();o(h6e,"mapCacheDelete");kY=h6e});function f6e(t){return Ih(this,t).get(t)}var SY,CY=N(()=>{"use strict";Qv();o(f6e,"mapCacheGet");SY=f6e});function d6e(t){return Ih(this,t).has(t)}var AY,_Y=N(()=>{"use strict";Qv();o(d6e,"mapCacheHas");AY=d6e});function p6e(t,e){var r=Ih(this,t),n=r.size;return r.set(t,e),this.size+=r.size==n?0:1,this}var DY,LY=N(()=>{"use strict";Qv();o(p6e,"mapCacheSet");DY=p6e});function U0(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{"use strict";bY();EY();CY();_Y();LY();o(U0,"MapCache");U0.prototype.clear=xY;U0.prototype.delete=kY;U0.prototype.get=SY;U0.prototype.has=AY;U0.prototype.set=DY;Cd=U0});function E9(t,e){if(typeof t!="function"||e!=null&&typeof e!="function")throw new TypeError(m6e);var r=o(function(){var n=arguments,i=e?e.apply(this,n):n[0],a=r.cache;if(a.has(i))return a.get(i);var s=t.apply(this,n);return r.cache=a.set(i,s)||a,s},"memoized");return r.cache=new(E9.Cache||Cd),r}var m6e,H0,S9=N(()=>{"use strict";Q5();m6e="Expected a function";o(E9,"memoize");E9.Cache=Cd;H0=E9});function g6e(){this.__data__=new Nh,this.size=0}var RY,NY=N(()=>{"use strict";Kv();o(g6e,"stackClear");RY=g6e});function y6e(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r}var MY,IY=N(()=>{"use strict";o(y6e,"stackDelete");MY=y6e});function v6e(t){return this.__data__.get(t)}var OY,PY=N(()=>{"use strict";o(v6e,"stackGet");OY=v6e});function x6e(t){return this.__data__.has(t)}var BY,FY=N(()=>{"use strict";o(x6e,"stackHas");BY=x6e});function w6e(t,e){var r=this.__data__;if(r instanceof Nh){var n=r.__data__;if(!Mh||n.length{"use strict";Kv();K5();Q5();b6e=200;o(w6e,"stackSet");$Y=w6e});function W0(t){var e=this.__data__=new Nh(t);this.size=e.size}var lc,Zv=N(()=>{"use strict";Kv();NY();IY();PY();FY();zY();o(W0,"Stack");W0.prototype.clear=RY;W0.prototype.delete=MY;W0.prototype.get=OY;W0.prototype.has=BY;W0.prototype.set=$Y;lc=W0});var T6e,q0,C9=N(()=>{"use strict";Lh();T6e=function(){try{var t=Ss(Object,"defineProperty");return t({},"",{}),t}catch{}}(),q0=T6e});function k6e(t,e,r){e=="__proto__"&&q0?q0(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}var cc,Y0=N(()=>{"use strict";C9();o(k6e,"baseAssignValue");cc=k6e});function E6e(t,e,r){(r!==void 0&&!Ro(t[e],r)||r===void 0&&!(e in t))&&cc(t,e,r)}var Jv,A9=N(()=>{"use strict";Y0();Sd();o(E6e,"assignMergeValue");Jv=E6e});function S6e(t){return function(e,r,n){for(var i=-1,a=Object(e),s=n(e),l=s.length;l--;){var u=s[t?l:++i];if(r(a[u],u,a)===!1)break}return e}}var GY,VY=N(()=>{"use strict";o(S6e,"createBaseFor");GY=S6e});var C6e,X0,Z5=N(()=>{"use strict";VY();C6e=GY(),X0=C6e});function _6e(t,e){if(e)return t.slice();var r=t.length,n=WY?WY(r):new t.constructor(r);return t.copy(n),n}var qY,UY,A6e,HY,WY,J5,_9=N(()=>{"use strict";Lo();qY=typeof exports=="object"&&exports&&!exports.nodeType&&exports,UY=qY&&typeof module=="object"&&module&&!module.nodeType&&module,A6e=UY&&UY.exports===qY,HY=A6e?li.Buffer:void 0,WY=HY?HY.allocUnsafe:void 0;o(_6e,"cloneBuffer");J5=_6e});var D6e,j0,D9=N(()=>{"use strict";Lo();D6e=li.Uint8Array,j0=D6e});function L6e(t){var e=new t.constructor(t.byteLength);return new j0(e).set(new j0(t)),e}var K0,ew=N(()=>{"use strict";D9();o(L6e,"cloneArrayBuffer");K0=L6e});function R6e(t,e){var r=e?K0(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}var tw,L9=N(()=>{"use strict";ew();o(R6e,"cloneTypedArray");tw=R6e});function N6e(t,e){var r=-1,n=t.length;for(e||(e=Array(n));++r{"use strict";o(N6e,"copyArray");rw=N6e});var YY,M6e,XY,jY=N(()=>{"use strict";Js();YY=Object.create,M6e=function(){function t(){}return o(t,"object"),function(e){if(!bn(e))return{};if(YY)return YY(e);t.prototype=e;var r=new t;return t.prototype=void 0,r}}(),XY=M6e});function I6e(t,e){return function(r){return t(e(r))}}var nw,N9=N(()=>{"use strict";o(I6e,"overArg");nw=I6e});var O6e,Q0,iw=N(()=>{"use strict";N9();O6e=nw(Object.getPrototypeOf,Object),Q0=O6e});function B6e(t){var e=t&&t.constructor,r=typeof e=="function"&&e.prototype||P6e;return t===r}var P6e,uc,Z0=N(()=>{"use strict";P6e=Object.prototype;o(B6e,"isPrototype");uc=B6e});function F6e(t){return typeof t.constructor=="function"&&!uc(t)?XY(Q0(t)):{}}var aw,M9=N(()=>{"use strict";jY();iw();Z0();o(F6e,"initCloneObject");aw=F6e});function $6e(t){return t!=null&&typeof t=="object"}var ri,No=N(()=>{"use strict";o($6e,"isObjectLike");ri=$6e});function G6e(t){return ri(t)&&da(t)==z6e}var z6e,I9,KY=N(()=>{"use strict";ku();No();z6e="[object Arguments]";o(G6e,"baseIsArguments");I9=G6e});var QY,V6e,U6e,H6e,El,J0=N(()=>{"use strict";KY();No();QY=Object.prototype,V6e=QY.hasOwnProperty,U6e=QY.propertyIsEnumerable,H6e=I9(function(){return arguments}())?I9:function(t){return ri(t)&&V6e.call(t,"callee")&&!U6e.call(t,"callee")},El=H6e});var W6e,Pt,Un=N(()=>{"use strict";W6e=Array.isArray,Pt=W6e});function Y6e(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=q6e}var q6e,em,sw=N(()=>{"use strict";q6e=9007199254740991;o(Y6e,"isLength");em=Y6e});function X6e(t){return t!=null&&em(t.length)&&!Si(t)}var ci,Mo=N(()=>{"use strict";Yv();sw();o(X6e,"isArrayLike");ci=X6e});function j6e(t){return ri(t)&&ci(t)}var Ad,ow=N(()=>{"use strict";Mo();No();o(j6e,"isArrayLikeObject");Ad=j6e});function K6e(){return!1}var ZY,JY=N(()=>{"use strict";o(K6e,"stubFalse");ZY=K6e});var rX,eX,Q6e,tX,Z6e,J6e,Sl,tm=N(()=>{"use strict";Lo();JY();rX=typeof exports=="object"&&exports&&!exports.nodeType&&exports,eX=rX&&typeof module=="object"&&module&&!module.nodeType&&module,Q6e=eX&&eX.exports===rX,tX=Q6e?li.Buffer:void 0,Z6e=tX?tX.isBuffer:void 0,J6e=Z6e||ZY,Sl=J6e});function aSe(t){if(!ri(t)||da(t)!=eSe)return!1;var e=Q0(t);if(e===null)return!0;var r=nSe.call(e,"constructor")&&e.constructor;return typeof r=="function"&&r instanceof r&&nX.call(r)==iSe}var eSe,tSe,rSe,nX,nSe,iSe,iX,aX=N(()=>{"use strict";ku();iw();No();eSe="[object Object]",tSe=Function.prototype,rSe=Object.prototype,nX=tSe.toString,nSe=rSe.hasOwnProperty,iSe=nX.call(Object);o(aSe,"isPlainObject");iX=aSe});function LSe(t){return ri(t)&&em(t.length)&&!!Fn[da(t)]}var sSe,oSe,lSe,cSe,uSe,hSe,fSe,dSe,pSe,mSe,gSe,ySe,vSe,xSe,bSe,wSe,TSe,kSe,ESe,SSe,CSe,ASe,_Se,DSe,Fn,sX,oX=N(()=>{"use strict";ku();sw();No();sSe="[object Arguments]",oSe="[object Array]",lSe="[object Boolean]",cSe="[object Date]",uSe="[object Error]",hSe="[object Function]",fSe="[object Map]",dSe="[object Number]",pSe="[object Object]",mSe="[object RegExp]",gSe="[object Set]",ySe="[object String]",vSe="[object WeakMap]",xSe="[object ArrayBuffer]",bSe="[object DataView]",wSe="[object Float32Array]",TSe="[object Float64Array]",kSe="[object Int8Array]",ESe="[object Int16Array]",SSe="[object Int32Array]",CSe="[object Uint8Array]",ASe="[object Uint8ClampedArray]",_Se="[object Uint16Array]",DSe="[object Uint32Array]",Fn={};Fn[wSe]=Fn[TSe]=Fn[kSe]=Fn[ESe]=Fn[SSe]=Fn[CSe]=Fn[ASe]=Fn[_Se]=Fn[DSe]=!0;Fn[sSe]=Fn[oSe]=Fn[xSe]=Fn[lSe]=Fn[bSe]=Fn[cSe]=Fn[uSe]=Fn[hSe]=Fn[fSe]=Fn[dSe]=Fn[pSe]=Fn[mSe]=Fn[gSe]=Fn[ySe]=Fn[vSe]=!1;o(LSe,"baseIsTypedArray");sX=LSe});function RSe(t){return function(e){return t(e)}}var Io,_d=N(()=>{"use strict";o(RSe,"baseUnary");Io=RSe});var lX,e2,NSe,O9,MSe,Oo,t2=N(()=>{"use strict";w9();lX=typeof exports=="object"&&exports&&!exports.nodeType&&exports,e2=lX&&typeof module=="object"&&module&&!module.nodeType&&module,NSe=e2&&e2.exports===lX,O9=NSe&&X5.process,MSe=function(){try{var t=e2&&e2.require&&e2.require("util").types;return t||O9&&O9.binding&&O9.binding("util")}catch{}}(),Oo=MSe});var cX,ISe,Oh,r2=N(()=>{"use strict";oX();_d();t2();cX=Oo&&Oo.isTypedArray,ISe=cX?Io(cX):sX,Oh=ISe});function OSe(t,e){if(!(e==="constructor"&&typeof t[e]=="function")&&e!="__proto__")return t[e]}var n2,P9=N(()=>{"use strict";o(OSe,"safeGet");n2=OSe});function FSe(t,e,r){var n=t[e];(!(BSe.call(t,e)&&Ro(n,r))||r===void 0&&!(e in t))&&cc(t,e,r)}var PSe,BSe,hc,rm=N(()=>{"use strict";Y0();Sd();PSe=Object.prototype,BSe=PSe.hasOwnProperty;o(FSe,"assignValue");hc=FSe});function $Se(t,e,r,n){var i=!r;r||(r={});for(var a=-1,s=e.length;++a{"use strict";rm();Y0();o($Se,"copyObject");Po=$Se});function zSe(t,e){for(var r=-1,n=Array(t);++r{"use strict";o(zSe,"baseTimes");uX=zSe});function USe(t,e){var r=typeof t;return e=e??GSe,!!e&&(r=="number"||r!="symbol"&&VSe.test(t))&&t>-1&&t%1==0&&t{"use strict";GSe=9007199254740991,VSe=/^(?:0|[1-9]\d*)$/;o(USe,"isIndex");Ph=USe});function qSe(t,e){var r=Pt(t),n=!r&&El(t),i=!r&&!n&&Sl(t),a=!r&&!n&&!i&&Oh(t),s=r||n||i||a,l=s?uX(t.length,String):[],u=l.length;for(var h in t)(e||WSe.call(t,h))&&!(s&&(h=="length"||i&&(h=="offset"||h=="parent")||a&&(h=="buffer"||h=="byteLength"||h=="byteOffset")||Ph(h,u)))&&l.push(h);return l}var HSe,WSe,lw,B9=N(()=>{"use strict";hX();J0();Un();tm();i2();r2();HSe=Object.prototype,WSe=HSe.hasOwnProperty;o(qSe,"arrayLikeKeys");lw=qSe});function YSe(t){var e=[];if(t!=null)for(var r in Object(t))e.push(r);return e}var fX,dX=N(()=>{"use strict";o(YSe,"nativeKeysIn");fX=YSe});function KSe(t){if(!bn(t))return fX(t);var e=uc(t),r=[];for(var n in t)n=="constructor"&&(e||!jSe.call(t,n))||r.push(n);return r}var XSe,jSe,pX,mX=N(()=>{"use strict";Js();Z0();dX();XSe=Object.prototype,jSe=XSe.hasOwnProperty;o(KSe,"baseKeysIn");pX=KSe});function QSe(t){return ci(t)?lw(t,!0):pX(t)}var Cs,Bh=N(()=>{"use strict";B9();mX();Mo();o(QSe,"keysIn");Cs=QSe});function ZSe(t){return Po(t,Cs(t))}var gX,yX=N(()=>{"use strict";Dd();Bh();o(ZSe,"toPlainObject");gX=ZSe});function JSe(t,e,r,n,i,a,s){var l=n2(t,r),u=n2(e,r),h=s.get(u);if(h){Jv(t,r,h);return}var f=a?a(l,u,r+"",t,e,s):void 0,d=f===void 0;if(d){var p=Pt(u),m=!p&&Sl(u),g=!p&&!m&&Oh(u);f=u,p||m||g?Pt(l)?f=l:Ad(l)?f=rw(l):m?(d=!1,f=J5(u,!0)):g?(d=!1,f=tw(u,!0)):f=[]:iX(u)||El(u)?(f=l,El(l)?f=gX(l):(!bn(l)||Si(l))&&(f=aw(u))):d=!1}d&&(s.set(u,f),i(f,u,n,a,s),s.delete(u)),Jv(t,r,f)}var vX,xX=N(()=>{"use strict";A9();_9();L9();R9();M9();J0();Un();ow();tm();Yv();Js();aX();r2();P9();yX();o(JSe,"baseMergeDeep");vX=JSe});function bX(t,e,r,n,i){t!==e&&X0(e,function(a,s){if(i||(i=new lc),bn(a))vX(t,e,s,r,bX,n,i);else{var l=n?n(n2(t,s),a,s+"",t,e,i):void 0;l===void 0&&(l=a),Jv(t,s,l)}},Cs)}var wX,TX=N(()=>{"use strict";Zv();A9();Z5();xX();Js();Bh();P9();o(bX,"baseMerge");wX=bX});function eCe(t){return t}var ta,Cu=N(()=>{"use strict";o(eCe,"identity");ta=eCe});function tCe(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}var kX,EX=N(()=>{"use strict";o(tCe,"apply");kX=tCe});function rCe(t,e,r){return e=SX(e===void 0?t.length-1:e,0),function(){for(var n=arguments,i=-1,a=SX(n.length-e,0),s=Array(a);++i{"use strict";EX();SX=Math.max;o(rCe,"overRest");cw=rCe});function nCe(t){return function(){return t}}var As,$9=N(()=>{"use strict";o(nCe,"constant");As=nCe});var iCe,CX,AX=N(()=>{"use strict";$9();C9();Cu();iCe=q0?function(t,e){return q0(t,"toString",{configurable:!0,enumerable:!1,value:As(e),writable:!0})}:ta,CX=iCe});function lCe(t){var e=0,r=0;return function(){var n=oCe(),i=sCe-(n-r);if(r=n,i>0){if(++e>=aCe)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}var aCe,sCe,oCe,_X,DX=N(()=>{"use strict";aCe=800,sCe=16,oCe=Date.now;o(lCe,"shortOut");_X=lCe});var cCe,uw,z9=N(()=>{"use strict";AX();DX();cCe=_X(CX),uw=cCe});function uCe(t,e){return uw(cw(t,e,ta),t+"")}var fc,nm=N(()=>{"use strict";Cu();F9();z9();o(uCe,"baseRest");fc=uCe});function hCe(t,e,r){if(!bn(r))return!1;var n=typeof e;return(n=="number"?ci(r)&&Ph(e,r.length):n=="string"&&e in r)?Ro(r[e],t):!1}var eo,Ld=N(()=>{"use strict";Sd();Mo();i2();Js();o(hCe,"isIterateeCall");eo=hCe});function fCe(t){return fc(function(e,r){var n=-1,i=r.length,a=i>1?r[i-1]:void 0,s=i>2?r[2]:void 0;for(a=t.length>3&&typeof a=="function"?(i--,a):void 0,s&&eo(r[0],r[1],s)&&(a=i<3?void 0:a,i=1),e=Object(e);++n{"use strict";nm();Ld();o(fCe,"createAssigner");hw=fCe});var dCe,Fh,V9=N(()=>{"use strict";TX();G9();dCe=hw(function(t,e,r){wX(t,e,r)}),Fh=dCe});function W9(t,e){if(!t)return e;let r=`curve${t.charAt(0).toUpperCase()+t.slice(1)}`;return pCe[r]??e}function vCe(t,e){let r=t.trim();if(r)return e.securityLevel!=="loose"?(0,NX.sanitizeUrl)(r):r}function OX(t,e){return!t||!e?0:Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function bCe(t){let e,r=0;t.forEach(i=>{r+=OX(i,e),e=i});let n=r/2;return q9(t,n)}function wCe(t){return t.length===1?t[0]:bCe(t)}function kCe(t,e,r){let n=structuredClone(r);Y.info("our points",n),e!=="start_left"&&e!=="start_right"&&n.reverse();let i=25+t,a=q9(n,i),s=10+t*.5,l=Math.atan2(n[0].y-a.y,n[0].x-a.x),u={x:0,y:0};return e==="start_left"?(u.x=Math.sin(l+Math.PI)*s+(n[0].x+a.x)/2,u.y=-Math.cos(l+Math.PI)*s+(n[0].y+a.y)/2):e==="end_right"?(u.x=Math.sin(l-Math.PI)*s+(n[0].x+a.x)/2-5,u.y=-Math.cos(l-Math.PI)*s+(n[0].y+a.y)/2-5):e==="end_left"?(u.x=Math.sin(l)*s+(n[0].x+a.x)/2-5,u.y=-Math.cos(l)*s+(n[0].y+a.y)/2-5):(u.x=Math.sin(l)*s+(n[0].x+a.x)/2,u.y=-Math.cos(l)*s+(n[0].y+a.y)/2),u}function Y9(t){let e="",r="";for(let n of t)n!==void 0&&(n.startsWith("color:")||n.startsWith("text-align:")?r=r+n+";":e=e+n+";");return{style:e,labelStyle:r}}function ECe(t){let e="",r="0123456789abcdef",n=r.length;for(let i=0;i{"use strict";NX=Sa(z0(),1);dr();gr();e7();vt();Xf();s0();S9();V9();$4();H9="\u200B",pCe={curveBasis:Do,curveBasisClosed:P5,curveBasisOpen:B5,curveBumpX:Rv,curveBumpY:Nv,curveBundle:l9,curveCardinalClosed:c9,curveCardinalOpen:h9,curveCardinal:Pv,curveCatmullRomClosed:d9,curveCatmullRomOpen:p9,curveCatmullRom:$v,curveLinear:wu,curveLinearClosed:V5,curveMonotoneX:zv,curveMonotoneY:Gv,curveNatural:F0,curveStep:$0,curveStepAfter:Uv,curveStepBefore:Vv},mCe=/\s*(?:(\w+)(?=:):|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,gCe=o(function(t,e){let r=MX(t,/(?:init\b)|(?:initialize\b)/),n={};if(Array.isArray(r)){let s=r.map(l=>l.args);l0(s),n=Gn(n,[...s])}else n=r.args;if(!n)return;let i=a0(t,e),a="config";return n[a]!==void 0&&(i==="flowchart-v2"&&(i="flowchart"),n[i]=n[a],delete n[a]),n},"detectInit"),MX=o(function(t,e=null){try{let r=new RegExp(`[%]{2}(?![{]${mCe.source})(?=[}][%]{2}).* +`,"ig");t=t.trim().replace(r,"").replace(/'/gm,'"'),Y.debug(`Detecting diagram directive${e!==null?" type:"+e:""} based on the text:${t}`);let n,i=[];for(;(n=qf.exec(t))!==null;)if(n.index===qf.lastIndex&&qf.lastIndex++,n&&!e||e&&n[1]?.match(e)||e&&n[2]?.match(e)){let a=n[1]?n[1]:n[2],s=n[3]?n[3].trim():n[4]?JSON.parse(n[4].trim()):null;i.push({type:a,args:s})}return i.length===0?{type:t,args:null}:i.length===1?i[0]:i}catch(r){return Y.error(`ERROR: ${r.message} - Unable to parse directive type: '${e}' based on the text: '${t}'`),{type:void 0,args:null}}},"detectDirective"),IX=o(function(t){return t.replace(qf,"")},"removeDirectives"),yCe=o(function(t,e){for(let[r,n]of e.entries())if(n.match(t))return r;return-1},"isSubstringInArray");o(W9,"interpolateToCurve");o(vCe,"formatUrl");xCe=o((t,...e)=>{let r=t.split("."),n=r.length-1,i=r[n],a=window;for(let s=0;s{let r=Math.pow(10,e);return Math.round(t*r)/r},"roundNumber"),q9=o((t,e)=>{let r,n=e;for(let i of t){if(r){let a=OX(i,r);if(a===0)return r;if(a=1)return{x:i.x,y:i.y};if(s>0&&s<1)return{x:LX((1-s)*r.x+s*i.x,5),y:LX((1-s)*r.y+s*i.y,5)}}}r=i}throw new Error("Could not find a suitable point for the given distance")},"calculatePoint"),TCe=o((t,e,r)=>{Y.info(`our points ${JSON.stringify(e)}`),e[0]!==r&&(e=e.reverse());let i=q9(e,25),a=t?10:5,s=Math.atan2(e[0].y-i.y,e[0].x-i.x),l={x:0,y:0};return l.x=Math.sin(s)*a+(e[0].x+i.x)/2,l.y=-Math.cos(s)*a+(e[0].y+i.y)/2,l},"calcCardinalityPosition");o(kCe,"calcTerminalLabelPosition");o(Y9,"getStylesFromArray");RX=0,X9=o(()=>(RX++,"id-"+Math.random().toString(36).substr(2,12)+"-"+RX),"generateId");o(ECe,"makeRandomHex");j9=o(t=>ECe(t.length),"random"),SCe=o(function(){return{x:0,y:0,fill:void 0,anchor:"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0,valign:void 0,text:""}},"getTextObj"),CCe=o(function(t,e){let r=e.text.replace(Ze.lineBreakRegex," "),[,n]=Bo(e.fontSize),i=t.append("text");i.attr("x",e.x),i.attr("y",e.y),i.style("text-anchor",e.anchor),i.style("font-family",e.fontFamily),i.style("font-size",n),i.style("font-weight",e.fontWeight),i.attr("fill",e.fill),e.class!==void 0&&i.attr("class",e.class);let a=i.append("tspan");return a.attr("x",e.x+e.textMargin*2),a.attr("fill",e.fill),a.text(r),i},"drawSimpleText"),K9=H0((t,e,r)=>{if(!t||(r=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"
"},r),Ze.lineBreakRegex.test(t)))return t;let n=t.split(" ").filter(Boolean),i=[],a="";return n.forEach((s,l)=>{let u=ra(`${s} `,r),h=ra(a,r);if(u>e){let{hyphenatedStrings:p,remainingWord:m}=ACe(s,e,"-",r);i.push(a,...p),a=m}else h+u>=e?(i.push(a),a=s):a=[a,s].filter(Boolean).join(" ");l+1===n.length&&i.push(a)}),i.filter(s=>s!=="").join(r.joinWith)},(t,e,r)=>`${t}${e}${r.fontSize}${r.fontWeight}${r.fontFamily}${r.joinWith}`),ACe=H0((t,e,r="-",n)=>{n=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},n);let i=[...t],a=[],s="";return i.forEach((l,u)=>{let h=`${s}${l}`;if(ra(h,n)>=e){let d=u+1,p=i.length===d,m=`${h}${r}`;a.push(p?h:m),s=""}else s=h}),{hyphenatedStrings:a,remainingWord:s}},(t,e,r="-",n)=>`${t}${e}${r}${n.fontSize}${n.fontWeight}${n.fontFamily}`);o(dw,"calculateTextHeight");o(ra,"calculateTextWidth");Q9=H0((t,e)=>{let{fontSize:r=12,fontFamily:n="Arial",fontWeight:i=400}=e;if(!t)return{width:0,height:0};let[,a]=Bo(r),s=["sans-serif",n],l=t.split(Ze.lineBreakRegex),u=[],h=Ge("body");if(!h.remove)return{width:0,height:0,lineHeight:0};let f=h.append("svg");for(let p of s){let m=0,g={width:0,height:0,lineHeight:0};for(let y of l){let v=SCe();v.text=y||H9;let x=CCe(f,v).style("font-size",a).style("font-weight",i).style("font-family",p),b=(x._groups||x)[0][0].getBBox();if(b.width===0&&b.height===0)throw new Error("svg element not in render tree");g.width=Math.round(Math.max(g.width,b.width)),m=Math.round(b.height),g.height+=m,g.lineHeight=Math.round(Math.max(g.lineHeight,m))}u.push(g)}f.remove();let d=isNaN(u[1].height)||isNaN(u[1].width)||isNaN(u[1].lineHeight)||u[0].height>u[1].height&&u[0].width>u[1].width&&u[0].lineHeight>u[1].lineHeight?0:1;return u[d]},(t,e)=>`${t}${e.fontSize}${e.fontWeight}${e.fontFamily}`),U9=class{constructor(e=!1,r){this.count=0;this.count=r?r.length:0,this.next=e?()=>this.count++:()=>Date.now()}static{o(this,"InitIDGenerator")}},_Ce=o(function(t){return fw=fw||document.createElement("div"),t=escape(t).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),fw.innerHTML=t,unescape(fw.textContent)},"entityDecode");o(Z9,"isDetailedError");DCe=o((t,e,r,n)=>{if(!n)return;let i=t.node()?.getBBox();i&&t.append("text").text(n).attr("text-anchor","middle").attr("x",i.x+i.width/2).attr("y",-r).attr("class",e)},"insertTitle"),Bo=o(t=>{if(typeof t=="number")return[t,t+"px"];let e=parseInt(t??"",10);return Number.isNaN(e)?[void 0,void 0]:t===String(e)?[e,t+"px"]:[e,t]},"parseFontSize");o(Fi,"cleanAndMerge");Gt={assignWithDepth:Gn,wrapLabel:K9,calculateTextHeight:dw,calculateTextWidth:ra,calculateTextDimensions:Q9,cleanAndMerge:Fi,detectInit:gCe,detectDirective:MX,isSubstringInArray:yCe,interpolateToCurve:W9,calcLabelPosition:wCe,calcCardinalityPosition:TCe,calcTerminalLabelPosition:kCe,formatUrl:vCe,getStylesFromArray:Y9,generateId:X9,random:j9,runFunc:xCe,entityDecode:_Ce,insertTitle:DCe,parseFontSize:Bo,InitIDGenerator:U9},PX=o(function(t){let e=t;return e=e.replace(/style.*:\S*#.*;/g,function(r){return r.substring(0,r.length-1)}),e=e.replace(/classDef.*:\S*#.*;/g,function(r){return r.substring(0,r.length-1)}),e=e.replace(/#\w+;/g,function(r){let n=r.substring(1,r.length-1);return/^\+?\d+$/.test(n)?"\uFB02\xB0\xB0"+n+"\xB6\xDF":"\uFB02\xB0"+n+"\xB6\xDF"}),e},"encodeEntities"),na=o(function(t){return t.replace(/fl°°/g,"&#").replace(/fl°/g,"&").replace(/¶ß/g,";")},"decodeEntities"),$h=o((t,e,{counter:r=0,prefix:n,suffix:i},a)=>a||`${n?`${n}_`:""}${t}_${e}_${r}${i?`_${i}`:""}`,"getEdgeId");o($n,"handleUndefinedAttr")});function Cl(t,e,r,n,i){if(!e[t].width)if(r)e[t].text=K9(e[t].text,i,n),e[t].textLines=e[t].text.split(Ze.lineBreakRegex).length,e[t].width=i,e[t].height=dw(e[t].text,n);else{let a=e[t].text.split(Ze.lineBreakRegex);e[t].textLines=a.length;let s=0;e[t].height=0,e[t].width=0;for(let l of a)e[t].width=Math.max(ra(l,n),e[t].width),s=dw(l,n),e[t].height=e[t].height+s}}function GX(t,e,r,n,i){let a=new yw(i);a.data.widthLimit=r.data.widthLimit/Math.min(J9,n.length);for(let[s,l]of n.entries()){let u=0;l.image={width:0,height:0,Y:0},l.sprite&&(l.image.width=48,l.image.height=48,l.image.Y=u,u=l.image.Y+l.image.height);let h=l.wrap&&Vt.wrap,f=pw(Vt);if(f.fontSize=f.fontSize+2,f.fontWeight="bold",Cl("label",l,h,f,a.data.widthLimit),l.label.Y=u+8,u=l.label.Y+l.label.height,l.type&&l.type.text!==""){l.type.text="["+l.type.text+"]";let g=pw(Vt);Cl("type",l,h,g,a.data.widthLimit),l.type.Y=u+5,u=l.type.Y+l.type.height}if(l.descr&&l.descr.text!==""){let g=pw(Vt);g.fontSize=g.fontSize-2,Cl("descr",l,h,g,a.data.widthLimit),l.descr.Y=u+20,u=l.descr.Y+l.descr.height}if(s==0||s%J9===0){let g=r.data.startx+Vt.diagramMarginX,y=r.data.stopy+Vt.diagramMarginY+u;a.setData(g,g,y,y)}else{let g=a.data.stopx!==a.data.startx?a.data.stopx+Vt.diagramMarginX:a.data.startx,y=a.data.starty;a.setData(g,g,y,y)}a.name=l.alias;let d=i.db.getC4ShapeArray(l.alias),p=i.db.getC4ShapeKeys(l.alias);p.length>0&&zX(a,t,d,p),e=l.alias;let m=i.db.getBoundarys(e);m.length>0&&GX(t,e,a,m,i),l.alias!=="global"&&$X(t,l,a),r.data.stopy=Math.max(a.data.stopy+Vt.c4ShapeMargin,r.data.stopy),r.data.stopx=Math.max(a.data.stopx+Vt.c4ShapeMargin,r.data.stopx),mw=Math.max(mw,r.data.stopx),gw=Math.max(gw,r.data.stopy)}}var mw,gw,FX,J9,Vt,yw,eD,a2,pw,LCe,$X,zX,_s,BX,RCe,NCe,MCe,tD,VX=N(()=>{"use strict";dr();Bq();vt();$C();gr();uA();zt();s0();ir();Ei();mw=0,gw=0,FX=4,J9=2;Ty.yy=Qy;Vt={},yw=class{static{o(this,"Bounds")}constructor(e){this.name="",this.data={},this.data.startx=void 0,this.data.stopx=void 0,this.data.starty=void 0,this.data.stopy=void 0,this.data.widthLimit=void 0,this.nextData={},this.nextData.startx=void 0,this.nextData.stopx=void 0,this.nextData.starty=void 0,this.nextData.stopy=void 0,this.nextData.cnt=0,eD(e.db.getConfig())}setData(e,r,n,i){this.nextData.startx=this.data.startx=e,this.nextData.stopx=this.data.stopx=r,this.nextData.starty=this.data.starty=n,this.nextData.stopy=this.data.stopy=i}updateVal(e,r,n,i){e[r]===void 0?e[r]=n:e[r]=i(n,e[r])}insert(e){this.nextData.cnt=this.nextData.cnt+1;let r=this.nextData.startx===this.nextData.stopx?this.nextData.stopx+e.margin:this.nextData.stopx+e.margin*2,n=r+e.width,i=this.nextData.starty+e.margin*2,a=i+e.height;(r>=this.data.widthLimit||n>=this.data.widthLimit||this.nextData.cnt>FX)&&(r=this.nextData.startx+e.margin+Vt.nextLinePaddingX,i=this.nextData.stopy+e.margin*2,this.nextData.stopx=n=r+e.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=a=i+e.height,this.nextData.cnt=1),e.x=r,e.y=i,this.updateVal(this.data,"startx",r,Math.min),this.updateVal(this.data,"starty",i,Math.min),this.updateVal(this.data,"stopx",n,Math.max),this.updateVal(this.data,"stopy",a,Math.max),this.updateVal(this.nextData,"startx",r,Math.min),this.updateVal(this.nextData,"starty",i,Math.min),this.updateVal(this.nextData,"stopx",n,Math.max),this.updateVal(this.nextData,"stopy",a,Math.max)}init(e){this.name="",this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,widthLimit:void 0},this.nextData={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,cnt:0},eD(e.db.getConfig())}bumpLastMargin(e){this.data.stopx+=e,this.data.stopy+=e}},eD=o(function(t){Gn(Vt,t),t.fontFamily&&(Vt.personFontFamily=Vt.systemFontFamily=Vt.messageFontFamily=t.fontFamily),t.fontSize&&(Vt.personFontSize=Vt.systemFontSize=Vt.messageFontSize=t.fontSize),t.fontWeight&&(Vt.personFontWeight=Vt.systemFontWeight=Vt.messageFontWeight=t.fontWeight)},"setConf"),a2=o((t,e)=>({fontFamily:t[e+"FontFamily"],fontSize:t[e+"FontSize"],fontWeight:t[e+"FontWeight"]}),"c4ShapeFont"),pw=o(t=>({fontFamily:t.boundaryFontFamily,fontSize:t.boundaryFontSize,fontWeight:t.boundaryFontWeight}),"boundaryFont"),LCe=o(t=>({fontFamily:t.messageFontFamily,fontSize:t.messageFontSize,fontWeight:t.messageFontWeight}),"messageFont");o(Cl,"calcC4ShapeTextWH");$X=o(function(t,e,r){e.x=r.data.startx,e.y=r.data.starty,e.width=r.data.stopx-r.data.startx,e.height=r.data.stopy-r.data.starty,e.label.y=Vt.c4ShapeMargin-35;let n=e.wrap&&Vt.wrap,i=pw(Vt);i.fontSize=i.fontSize+2,i.fontWeight="bold";let a=ra(e.label.text,i);Cl("label",e,n,i,a),kl.drawBoundary(t,e,Vt)},"drawBoundary"),zX=o(function(t,e,r,n){let i=0;for(let a of n){i=0;let s=r[a],l=a2(Vt,s.typeC4Shape.text);switch(l.fontSize=l.fontSize-2,s.typeC4Shape.width=ra("\xAB"+s.typeC4Shape.text+"\xBB",l),s.typeC4Shape.height=l.fontSize+2,s.typeC4Shape.Y=Vt.c4ShapePadding,i=s.typeC4Shape.Y+s.typeC4Shape.height-4,s.image={width:0,height:0,Y:0},s.typeC4Shape.text){case"person":case"external_person":s.image.width=48,s.image.height=48,s.image.Y=i,i=s.image.Y+s.image.height;break}s.sprite&&(s.image.width=48,s.image.height=48,s.image.Y=i,i=s.image.Y+s.image.height);let u=s.wrap&&Vt.wrap,h=Vt.width-Vt.c4ShapePadding*2,f=a2(Vt,s.typeC4Shape.text);if(f.fontSize=f.fontSize+2,f.fontWeight="bold",Cl("label",s,u,f,h),s.label.Y=i+8,i=s.label.Y+s.label.height,s.type&&s.type.text!==""){s.type.text="["+s.type.text+"]";let m=a2(Vt,s.typeC4Shape.text);Cl("type",s,u,m,h),s.type.Y=i+5,i=s.type.Y+s.type.height}else if(s.techn&&s.techn.text!==""){s.techn.text="["+s.techn.text+"]";let m=a2(Vt,s.techn.text);Cl("techn",s,u,m,h),s.techn.Y=i+5,i=s.techn.Y+s.techn.height}let d=i,p=s.label.width;if(s.descr&&s.descr.text!==""){let m=a2(Vt,s.typeC4Shape.text);Cl("descr",s,u,m,h),s.descr.Y=i+20,i=s.descr.Y+s.descr.height,p=Math.max(s.label.width,s.descr.width),d=i-s.descr.textLines*5}p=p+Vt.c4ShapePadding,s.width=Math.max(s.width||Vt.width,p,Vt.width),s.height=Math.max(s.height||Vt.height,d,Vt.height),s.margin=s.margin||Vt.c4ShapeMargin,t.insert(s),kl.drawC4Shape(e,s,Vt)}t.bumpLastMargin(Vt.c4ShapeMargin)},"drawC4ShapeArray"),_s=class{static{o(this,"Point")}constructor(e,r){this.x=e,this.y=r}},BX=o(function(t,e){let r=t.x,n=t.y,i=e.x,a=e.y,s=r+t.width/2,l=n+t.height/2,u=Math.abs(r-i),h=Math.abs(n-a),f=h/u,d=t.height/t.width,p=null;return n==a&&ri?p=new _s(r,l):r==i&&na&&(p=new _s(s,n)),r>i&&n=f?p=new _s(r,l+f*t.width/2):p=new _s(s-u/h*t.height/2,n+t.height):r=f?p=new _s(r+t.width,l+f*t.width/2):p=new _s(s+u/h*t.height/2,n+t.height):ra?d>=f?p=new _s(r+t.width,l-f*t.width/2):p=new _s(s+t.height/2*u/h,n):r>i&&n>a&&(d>=f?p=new _s(r,l-t.width/2*f):p=new _s(s-t.height/2*u/h,n)),p},"getIntersectPoint"),RCe=o(function(t,e){let r={x:0,y:0};r.x=e.x+e.width/2,r.y=e.y+e.height/2;let n=BX(t,r);r.x=t.x+t.width/2,r.y=t.y+t.height/2;let i=BX(e,r);return{startPoint:n,endPoint:i}},"getIntersectPoints"),NCe=o(function(t,e,r,n){let i=0;for(let a of e){i=i+1;let s=a.wrap&&Vt.wrap,l=LCe(Vt);n.db.getC4Type()==="C4Dynamic"&&(a.label.text=i+": "+a.label.text);let h=ra(a.label.text,l);Cl("label",a,s,l,h),a.techn&&a.techn.text!==""&&(h=ra(a.techn.text,l),Cl("techn",a,s,l,h)),a.descr&&a.descr.text!==""&&(h=ra(a.descr.text,l),Cl("descr",a,s,l,h));let f=r(a.from),d=r(a.to),p=RCe(f,d);a.startPoint=p.startPoint,a.endPoint=p.endPoint}kl.drawRels(t,e,Vt)},"drawRels");o(GX,"drawInsideBoundary");MCe=o(function(t,e,r,n){Vt=me().c4;let i=me().securityLevel,a;i==="sandbox"&&(a=Ge("#i"+e));let s=i==="sandbox"?Ge(a.nodes()[0].contentDocument.body):Ge("body"),l=n.db;n.db.setWrap(Vt.wrap),FX=l.getC4ShapeInRow(),J9=l.getC4BoundaryInRow(),Y.debug(`C:${JSON.stringify(Vt,null,2)}`);let u=i==="sandbox"?s.select(`[id="${e}"]`):Ge(`[id="${e}"]`);kl.insertComputerIcon(u),kl.insertDatabaseIcon(u),kl.insertClockIcon(u);let h=new yw(n);h.setData(Vt.diagramMarginX,Vt.diagramMarginX,Vt.diagramMarginY,Vt.diagramMarginY),h.data.widthLimit=screen.availWidth,mw=Vt.diagramMarginX,gw=Vt.diagramMarginY;let f=n.db.getTitle(),d=n.db.getBoundarys("");GX(u,"",h,d,n),kl.insertArrowHead(u),kl.insertArrowEnd(u),kl.insertArrowCrossHead(u),kl.insertArrowFilledHead(u),NCe(u,n.db.getRels(),n.db.getC4Shape,n),h.data.stopx=mw,h.data.stopy=gw;let p=h.data,g=p.stopy-p.starty+2*Vt.diagramMarginY,v=p.stopx-p.startx+2*Vt.diagramMarginX;f&&u.append("text").text(f).attr("x",(p.stopx-p.startx)/2-4*Vt.diagramMarginX).attr("y",p.starty+Vt.diagramMarginY),vn(u,g,v,Vt.useMaxWidth);let x=f?60:0;u.attr("viewBox",p.startx-Vt.diagramMarginX+" -"+(Vt.diagramMarginY+x)+" "+v+" "+(g+x)),Y.debug("models:",p)},"draw"),tD={drawPersonOrSystemArray:zX,drawBoundary:$X,setConf:eD,draw:MCe}});var ICe,UX,HX=N(()=>{"use strict";ICe=o(t=>`.person { + stroke: ${t.personBorder}; + fill: ${t.personBkg}; + } +`,"getStyles"),UX=ICe});var WX={};hr(WX,{diagram:()=>OCe});var OCe,qX=N(()=>{"use strict";$C();uA();VX();HX();OCe={parser:JF,db:Qy,renderer:tD,styles:UX,init:o(({c4:t,wrap:e})=>{tD.setConf(t),Qy.setWrap(e)},"init")}});function uj(t){return typeof t>"u"||t===null}function $Ce(t){return typeof t=="object"&&t!==null}function zCe(t){return Array.isArray(t)?t:uj(t)?[]:[t]}function GCe(t,e){var r,n,i,a;if(e)for(a=Object.keys(e),r=0,n=a.length;rl&&(a=" ... ",e=n-l+a.length),r-n>l&&(s=" ...",r=n+l-s.length),{str:a+t.slice(e,r).replace(/\t/g,"\u2192")+s,pos:n-e+a.length}}function nD(t,e){return $i.repeat(" ",e-t.length)+t}function KCe(t,e){if(e=Object.create(e||null),!t.buffer)return null;e.maxLength||(e.maxLength=79),typeof e.indent!="number"&&(e.indent=1),typeof e.linesBefore!="number"&&(e.linesBefore=3),typeof e.linesAfter!="number"&&(e.linesAfter=2);for(var r=/\r?\n|\r|\0/g,n=[0],i=[],a,s=-1;a=r.exec(t.buffer);)i.push(a.index),n.push(a.index+a[0].length),t.position<=a.index&&s<0&&(s=n.length-2);s<0&&(s=n.length-1);var l="",u,h,f=Math.min(t.line+e.linesAfter,i.length).toString().length,d=e.maxLength-(e.indent+f+3);for(u=1;u<=e.linesBefore&&!(s-u<0);u++)h=rD(t.buffer,n[s-u],i[s-u],t.position-(n[s]-n[s-u]),d),l=$i.repeat(" ",e.indent)+nD((t.line-u+1).toString(),f)+" | "+h.str+` +`+l;for(h=rD(t.buffer,n[s],i[s],t.position,d),l+=$i.repeat(" ",e.indent)+nD((t.line+1).toString(),f)+" | "+h.str+` +`,l+=$i.repeat("-",e.indent+f+3+h.pos)+`^ +`,u=1;u<=e.linesAfter&&!(s+u>=i.length);u++)h=rD(t.buffer,n[s+u],i[s+u],t.position-(n[s]-n[s+u]),d),l+=$i.repeat(" ",e.indent)+nD((t.line+u+1).toString(),f)+" | "+h.str+` +`;return l.replace(/\n$/,"")}function e7e(t){var e={};return t!==null&&Object.keys(t).forEach(function(r){t[r].forEach(function(n){e[String(n)]=r})}),e}function t7e(t,e){if(e=e||{},Object.keys(e).forEach(function(r){if(ZCe.indexOf(r)===-1)throw new Ds('Unknown option "'+r+'" is met in definition of "'+t+'" YAML type.')}),this.options=e,this.tag=t,this.kind=e.kind||null,this.resolve=e.resolve||function(){return!0},this.construct=e.construct||function(r){return r},this.instanceOf=e.instanceOf||null,this.predicate=e.predicate||null,this.represent=e.represent||null,this.representName=e.representName||null,this.defaultStyle=e.defaultStyle||null,this.multi=e.multi||!1,this.styleAliases=e7e(e.styleAliases||null),JCe.indexOf(this.kind)===-1)throw new Ds('Unknown kind "'+this.kind+'" is specified for "'+t+'" YAML type.')}function jX(t,e){var r=[];return t[e].forEach(function(n){var i=r.length;r.forEach(function(a,s){a.tag===n.tag&&a.kind===n.kind&&a.multi===n.multi&&(i=s)}),r[i]=n}),r}function r7e(){var t={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},e,r;function n(i){i.multi?(t.multi[i.kind].push(i),t.multi.fallback.push(i)):t[i.kind][i.tag]=t.fallback[i.tag]=i}for(o(n,"collectType"),e=0,r=arguments.length;e=0&&(e=e.slice(1)),e===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:e===".nan"?NaN:r*parseFloat(e,10)}function A7e(t,e){var r;if(isNaN(t))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===t)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===t)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if($i.isNegativeZero(t))return"-0.0";return r=t.toString(10),C7e.test(r)?r.replace("e",".e"):r}function _7e(t){return Object.prototype.toString.call(t)==="[object Number]"&&(t%1!==0||$i.isNegativeZero(t))}function R7e(t){return t===null?!1:dj.exec(t)!==null||pj.exec(t)!==null}function N7e(t){var e,r,n,i,a,s,l,u=0,h=null,f,d,p;if(e=dj.exec(t),e===null&&(e=pj.exec(t)),e===null)throw new Error("Date resolve error");if(r=+e[1],n=+e[2]-1,i=+e[3],!e[4])return new Date(Date.UTC(r,n,i));if(a=+e[4],s=+e[5],l=+e[6],e[7]){for(u=e[7].slice(0,3);u.length<3;)u+="0";u=+u}return e[9]&&(f=+e[10],d=+(e[11]||0),h=(f*60+d)*6e4,e[9]==="-"&&(h=-h)),p=new Date(Date.UTC(r,n,i,a,s,l,u)),h&&p.setTime(p.getTime()-h),p}function M7e(t){return t.toISOString()}function O7e(t){return t==="<<"||t===null}function B7e(t){if(t===null)return!1;var e,r,n=0,i=t.length,a=uD;for(r=0;r64)){if(e<0)return!1;n+=6}return n%8===0}function F7e(t){var e,r,n=t.replace(/[\r\n=]/g,""),i=n.length,a=uD,s=0,l=[];for(e=0;e>16&255),l.push(s>>8&255),l.push(s&255)),s=s<<6|a.indexOf(n.charAt(e));return r=i%4*6,r===0?(l.push(s>>16&255),l.push(s>>8&255),l.push(s&255)):r===18?(l.push(s>>10&255),l.push(s>>2&255)):r===12&&l.push(s>>4&255),new Uint8Array(l)}function $7e(t){var e="",r=0,n,i,a=t.length,s=uD;for(n=0;n>18&63],e+=s[r>>12&63],e+=s[r>>6&63],e+=s[r&63]),r=(r<<8)+t[n];return i=a%3,i===0?(e+=s[r>>18&63],e+=s[r>>12&63],e+=s[r>>6&63],e+=s[r&63]):i===2?(e+=s[r>>10&63],e+=s[r>>4&63],e+=s[r<<2&63],e+=s[64]):i===1&&(e+=s[r>>2&63],e+=s[r<<4&63],e+=s[64],e+=s[64]),e}function z7e(t){return Object.prototype.toString.call(t)==="[object Uint8Array]"}function H7e(t){if(t===null)return!0;var e=[],r,n,i,a,s,l=t;for(r=0,n=l.length;r>10)+55296,(t-65536&1023)+56320)}function cAe(t,e){this.input=t,this.filename=e.filename||null,this.schema=e.schema||mj,this.onWarning=e.onWarning||null,this.legacy=e.legacy||!1,this.json=e.json||!1,this.listener=e.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=t.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function Tj(t,e){var r={name:t.filename,buffer:t.input.slice(0,-1),position:t.position,line:t.line,column:t.position-t.lineStart};return r.snippet=QCe(r),new Ds(e,r)}function Qt(t,e){throw Tj(t,e)}function bw(t,e){t.onWarning&&t.onWarning.call(null,Tj(t,e))}function zh(t,e,r,n){var i,a,s,l;if(e1&&(t.result+=$i.repeat(` +`,e-1))}function uAe(t,e,r){var n,i,a,s,l,u,h,f,d=t.kind,p=t.result,m;if(m=t.input.charCodeAt(t.position),Ls(m)||am(m)||m===35||m===38||m===42||m===33||m===124||m===62||m===39||m===34||m===37||m===64||m===96||(m===63||m===45)&&(i=t.input.charCodeAt(t.position+1),Ls(i)||r&&am(i)))return!1;for(t.kind="scalar",t.result="",a=s=t.position,l=!1;m!==0;){if(m===58){if(i=t.input.charCodeAt(t.position+1),Ls(i)||r&&am(i))break}else if(m===35){if(n=t.input.charCodeAt(t.position-1),Ls(n))break}else{if(t.position===t.lineStart&&kw(t)||r&&am(m))break;if(dc(m))if(u=t.line,h=t.lineStart,f=t.lineIndent,Ci(t,!1,-1),t.lineIndent>=e){l=!0,m=t.input.charCodeAt(t.position);continue}else{t.position=s,t.line=u,t.lineStart=h,t.lineIndent=f;break}}l&&(zh(t,a,s,!1),fD(t,t.line-u),a=s=t.position,l=!1),Nd(m)||(s=t.position+1),m=t.input.charCodeAt(++t.position)}return zh(t,a,s,!1),t.result?!0:(t.kind=d,t.result=p,!1)}function hAe(t,e){var r,n,i;if(r=t.input.charCodeAt(t.position),r!==39)return!1;for(t.kind="scalar",t.result="",t.position++,n=i=t.position;(r=t.input.charCodeAt(t.position))!==0;)if(r===39)if(zh(t,n,t.position,!0),r=t.input.charCodeAt(++t.position),r===39)n=t.position,t.position++,i=t.position;else return!0;else dc(r)?(zh(t,n,i,!0),fD(t,Ci(t,!1,e)),n=i=t.position):t.position===t.lineStart&&kw(t)?Qt(t,"unexpected end of the document within a single quoted scalar"):(t.position++,i=t.position);Qt(t,"unexpected end of the stream within a single quoted scalar")}function fAe(t,e){var r,n,i,a,s,l;if(l=t.input.charCodeAt(t.position),l!==34)return!1;for(t.kind="scalar",t.result="",t.position++,r=n=t.position;(l=t.input.charCodeAt(t.position))!==0;){if(l===34)return zh(t,r,t.position,!0),t.position++,!0;if(l===92){if(zh(t,r,t.position,!0),l=t.input.charCodeAt(++t.position),dc(l))Ci(t,!1,e);else if(l<256&&bj[l])t.result+=wj[l],t.position++;else if((s=sAe(l))>0){for(i=s,a=0;i>0;i--)l=t.input.charCodeAt(++t.position),(s=aAe(l))>=0?a=(a<<4)+s:Qt(t,"expected hexadecimal character");t.result+=lAe(a),t.position++}else Qt(t,"unknown escape sequence");r=n=t.position}else dc(l)?(zh(t,r,n,!0),fD(t,Ci(t,!1,e)),r=n=t.position):t.position===t.lineStart&&kw(t)?Qt(t,"unexpected end of the document within a double quoted scalar"):(t.position++,n=t.position)}Qt(t,"unexpected end of the stream within a double quoted scalar")}function dAe(t,e){var r=!0,n,i,a,s=t.tag,l,u=t.anchor,h,f,d,p,m,g=Object.create(null),y,v,x,b;if(b=t.input.charCodeAt(t.position),b===91)f=93,m=!1,l=[];else if(b===123)f=125,m=!0,l={};else return!1;for(t.anchor!==null&&(t.anchorMap[t.anchor]=l),b=t.input.charCodeAt(++t.position);b!==0;){if(Ci(t,!0,e),b=t.input.charCodeAt(t.position),b===f)return t.position++,t.tag=s,t.anchor=u,t.kind=m?"mapping":"sequence",t.result=l,!0;r?b===44&&Qt(t,"expected the node content, but found ','"):Qt(t,"missed comma between flow collection entries"),v=y=x=null,d=p=!1,b===63&&(h=t.input.charCodeAt(t.position+1),Ls(h)&&(d=p=!0,t.position++,Ci(t,!0,e))),n=t.line,i=t.lineStart,a=t.position,om(t,e,vw,!1,!0),v=t.tag,y=t.result,Ci(t,!0,e),b=t.input.charCodeAt(t.position),(p||t.line===n)&&b===58&&(d=!0,b=t.input.charCodeAt(++t.position),Ci(t,!0,e),om(t,e,vw,!1,!0),x=t.result),m?sm(t,l,g,v,y,x,n,i,a):d?l.push(sm(t,null,g,v,y,x,n,i,a)):l.push(y),Ci(t,!0,e),b=t.input.charCodeAt(t.position),b===44?(r=!0,b=t.input.charCodeAt(++t.position)):r=!1}Qt(t,"unexpected end of the stream within a flow collection")}function pAe(t,e){var r,n,i=iD,a=!1,s=!1,l=e,u=0,h=!1,f,d;if(d=t.input.charCodeAt(t.position),d===124)n=!1;else if(d===62)n=!0;else return!1;for(t.kind="scalar",t.result="";d!==0;)if(d=t.input.charCodeAt(++t.position),d===43||d===45)iD===i?i=d===43?KX:tAe:Qt(t,"repeat of a chomping mode identifier");else if((f=oAe(d))>=0)f===0?Qt(t,"bad explicit indentation width of a block scalar; it cannot be less than one"):s?Qt(t,"repeat of an indentation width identifier"):(l=e+f-1,s=!0);else break;if(Nd(d)){do d=t.input.charCodeAt(++t.position);while(Nd(d));if(d===35)do d=t.input.charCodeAt(++t.position);while(!dc(d)&&d!==0)}for(;d!==0;){for(hD(t),t.lineIndent=0,d=t.input.charCodeAt(t.position);(!s||t.lineIndentl&&(l=t.lineIndent),dc(d)){u++;continue}if(t.lineIndente)&&u!==0)Qt(t,"bad indentation of a sequence entry");else if(t.lineIndente)&&(v&&(s=t.line,l=t.lineStart,u=t.position),om(t,e,xw,!0,i)&&(v?g=t.result:y=t.result),v||(sm(t,d,p,m,g,y,s,l,u),m=g=y=null),Ci(t,!0,-1),b=t.input.charCodeAt(t.position)),(t.line===a||t.lineIndent>e)&&b!==0)Qt(t,"bad indentation of a mapping entry");else if(t.lineIndente?u=1:t.lineIndent===e?u=0:t.lineIndente?u=1:t.lineIndent===e?u=0:t.lineIndent tag; it should be "scalar", not "'+t.kind+'"'),d=0,p=t.implicitTypes.length;d"),t.result!==null&&g.kind!==t.kind&&Qt(t,"unacceptable node kind for !<"+t.tag+'> tag; it should be "'+g.kind+'", not "'+t.kind+'"'),g.resolve(t.result,t.tag)?(t.result=g.construct(t.result,t.tag),t.anchor!==null&&(t.anchorMap[t.anchor]=t.result)):Qt(t,"cannot resolve a node with !<"+t.tag+"> explicit tag")}return t.listener!==null&&t.listener("close",t),t.tag!==null||t.anchor!==null||f}function xAe(t){var e=t.position,r,n,i,a=!1,s;for(t.version=null,t.checkLineBreaks=t.legacy,t.tagMap=Object.create(null),t.anchorMap=Object.create(null);(s=t.input.charCodeAt(t.position))!==0&&(Ci(t,!0,-1),s=t.input.charCodeAt(t.position),!(t.lineIndent>0||s!==37));){for(a=!0,s=t.input.charCodeAt(++t.position),r=t.position;s!==0&&!Ls(s);)s=t.input.charCodeAt(++t.position);for(n=t.input.slice(r,t.position),i=[],n.length<1&&Qt(t,"directive name must not be less than one character in length");s!==0;){for(;Nd(s);)s=t.input.charCodeAt(++t.position);if(s===35){do s=t.input.charCodeAt(++t.position);while(s!==0&&!dc(s));break}if(dc(s))break;for(r=t.position;s!==0&&!Ls(s);)s=t.input.charCodeAt(++t.position);i.push(t.input.slice(r,t.position))}s!==0&&hD(t),Gh.call(JX,n)?JX[n](t,n,i):bw(t,'unknown document directive "'+n+'"')}if(Ci(t,!0,-1),t.lineIndent===0&&t.input.charCodeAt(t.position)===45&&t.input.charCodeAt(t.position+1)===45&&t.input.charCodeAt(t.position+2)===45?(t.position+=3,Ci(t,!0,-1)):a&&Qt(t,"directives end mark is expected"),om(t,t.lineIndent-1,xw,!1,!0),Ci(t,!0,-1),t.checkLineBreaks&&nAe.test(t.input.slice(e,t.position))&&bw(t,"non-ASCII line breaks are interpreted as content"),t.documents.push(t.result),t.position===t.lineStart&&kw(t)){t.input.charCodeAt(t.position)===46&&(t.position+=3,Ci(t,!0,-1));return}if(t.position"u"&&(r=e,e=null);var n=kj(t,r);if(typeof e!="function")return n;for(var i=0,a=n.length;i=55296&&r<=56319&&e+1=56320&&n<=57343)?(r-55296)*1024+n-56320+65536:r}function Nj(t){var e=/^\n* /;return e.test(t)}function jAe(t,e,r,n,i,a,s,l){var u,h=0,f=null,d=!1,p=!1,m=n!==-1,g=-1,y=YAe(s2(t,0))&&XAe(s2(t,t.length-1));if(e||s)for(u=0;u=65536?u+=2:u++){if(h=s2(t,u),!u2(h))return im;y=y&&ij(h,f,l),f=h}else{for(u=0;u=65536?u+=2:u++){if(h=s2(t,u),h===l2)d=!0,m&&(p=p||u-g-1>n&&t[g+1]!==" ",g=u);else if(!u2(h))return im;y=y&&ij(h,f,l),f=h}p=p||m&&u-g-1>n&&t[g+1]!==" "}return!d&&!p?y&&!s&&!i(t)?Mj:a===c2?im:lD:r>9&&Nj(t)?im:s?a===c2?im:lD:p?Oj:Ij}function KAe(t,e,r,n,i){t.dump=function(){if(e.length===0)return t.quotingType===c2?'""':"''";if(!t.noCompatMode&&(zAe.indexOf(e)!==-1||GAe.test(e)))return t.quotingType===c2?'"'+e+'"':"'"+e+"'";var a=t.indent*Math.max(1,r),s=t.lineWidth===-1?-1:Math.max(Math.min(t.lineWidth,40),t.lineWidth-a),l=n||t.flowLevel>-1&&r>=t.flowLevel;function u(h){return qAe(t,h)}switch(o(u,"testAmbiguity"),jAe(e,l,t.indent,s,u,t.quotingType,t.forceQuotes&&!n,i)){case Mj:return e;case lD:return"'"+e.replace(/'/g,"''")+"'";case Ij:return"|"+aj(e,t.indent)+sj(rj(e,a));case Oj:return">"+aj(e,t.indent)+sj(rj(QAe(e,s),a));case im:return'"'+ZAe(e)+'"';default:throw new Ds("impossible error: invalid scalar style")}}()}function aj(t,e){var r=Nj(t)?String(e):"",n=t[t.length-1]===` +`,i=n&&(t[t.length-2]===` +`||t===` +`),a=i?"+":n?"":"-";return r+a+` +`}function sj(t){return t[t.length-1]===` +`?t.slice(0,-1):t}function QAe(t,e){for(var r=/(\n+)([^\n]*)/g,n=function(){var h=t.indexOf(` +`);return h=h!==-1?h:t.length,r.lastIndex=h,oj(t.slice(0,h),e)}(),i=t[0]===` +`||t[0]===" ",a,s;s=r.exec(t);){var l=s[1],u=s[2];a=u[0]===" ",n+=l+(!i&&!a&&u!==""?` +`:"")+oj(u,e),i=a}return n}function oj(t,e){if(t===""||t[0]===" ")return t;for(var r=/ [^ ]/g,n,i=0,a,s=0,l=0,u="";n=r.exec(t);)l=n.index,l-i>e&&(a=s>i?s:l,u+=` +`+t.slice(i,a),i=a+1),s=l;return u+=` +`,t.length-i>e&&s>i?u+=t.slice(i,s)+` +`+t.slice(s+1):u+=t.slice(i),u.slice(1)}function ZAe(t){for(var e="",r=0,n,i=0;i=65536?i+=2:i++)r=s2(t,i),n=Da[r],!n&&u2(r)?(e+=t[i],r>=65536&&(e+=t[i+1])):e+=n||UAe(r);return e}function JAe(t,e,r){var n="",i=t.tag,a,s,l;for(a=0,s=r.length;a"u"&&Au(t,e,null,!1,!1))&&(n!==""&&(n+=","+(t.condenseFlow?"":" ")),n+=t.dump);t.tag=i,t.dump="["+n+"]"}function lj(t,e,r,n){var i="",a=t.tag,s,l,u;for(s=0,l=r.length;s"u"&&Au(t,e+1,null,!0,!0,!1,!0))&&((!n||i!=="")&&(i+=oD(t,e)),t.dump&&l2===t.dump.charCodeAt(0)?i+="-":i+="- ",i+=t.dump);t.tag=a,t.dump=i||"[]"}function e8e(t,e,r){var n="",i=t.tag,a=Object.keys(r),s,l,u,h,f;for(s=0,l=a.length;s1024&&(f+="? "),f+=t.dump+(t.condenseFlow?'"':"")+":"+(t.condenseFlow?"":" "),Au(t,e,h,!1,!1)&&(f+=t.dump,n+=f));t.tag=i,t.dump="{"+n+"}"}function t8e(t,e,r,n){var i="",a=t.tag,s=Object.keys(r),l,u,h,f,d,p;if(t.sortKeys===!0)s.sort();else if(typeof t.sortKeys=="function")s.sort(t.sortKeys);else if(t.sortKeys)throw new Ds("sortKeys must be a boolean or a function");for(l=0,u=s.length;l1024,d&&(t.dump&&l2===t.dump.charCodeAt(0)?p+="?":p+="? "),p+=t.dump,d&&(p+=oD(t,e)),Au(t,e+1,f,!0,d)&&(t.dump&&l2===t.dump.charCodeAt(0)?p+=":":p+=": ",p+=t.dump,i+=p));t.tag=a,t.dump=i||"{}"}function cj(t,e,r){var n,i,a,s,l,u;for(i=r?t.explicitTypes:t.implicitTypes,a=0,s=i.length;a tag resolver accepts not "'+u+'" style');t.dump=n}return!0}return!1}function Au(t,e,r,n,i,a,s){t.tag=null,t.dump=r,cj(t,r,!1)||cj(t,r,!0);var l=Sj.call(t.dump),u=n,h;n&&(n=t.flowLevel<0||t.flowLevel>e);var f=l==="[object Object]"||l==="[object Array]",d,p;if(f&&(d=t.duplicates.indexOf(r),p=d!==-1),(t.tag!==null&&t.tag!=="?"||p||t.indent!==2&&e>0)&&(i=!1),p&&t.usedDuplicates[d])t.dump="*ref_"+d;else{if(f&&p&&!t.usedDuplicates[d]&&(t.usedDuplicates[d]=!0),l==="[object Object]")n&&Object.keys(t.dump).length!==0?(t8e(t,e,t.dump,i),p&&(t.dump="&ref_"+d+t.dump)):(e8e(t,e,t.dump),p&&(t.dump="&ref_"+d+" "+t.dump));else if(l==="[object Array]")n&&t.dump.length!==0?(t.noArrayIndent&&!s&&e>0?lj(t,e-1,t.dump,i):lj(t,e,t.dump,i),p&&(t.dump="&ref_"+d+t.dump)):(JAe(t,e,t.dump),p&&(t.dump="&ref_"+d+" "+t.dump));else if(l==="[object String]")t.tag!=="?"&&KAe(t,t.dump,e,a,u);else{if(l==="[object Undefined]")return!1;if(t.skipInvalid)return!1;throw new Ds("unacceptable kind of an object to dump "+l)}t.tag!==null&&t.tag!=="?"&&(h=encodeURI(t.tag[0]==="!"?t.tag.slice(1):t.tag).replace(/!/g,"%21"),t.tag[0]==="!"?h="!"+h:h.slice(0,18)==="tag:yaml.org,2002:"?h="!!"+h.slice(18):h="!<"+h+">",t.dump=h+" "+t.dump)}return!0}function r8e(t,e){var r=[],n=[],i,a;for(cD(t,r,n),i=0,a=n.length;i{"use strict";o(uj,"isNothing");o($Ce,"isObject");o(zCe,"toArray");o(GCe,"extend");o(VCe,"repeat");o(UCe,"isNegativeZero");HCe=uj,WCe=$Ce,qCe=zCe,YCe=VCe,XCe=UCe,jCe=GCe,$i={isNothing:HCe,isObject:WCe,toArray:qCe,repeat:YCe,isNegativeZero:XCe,extend:jCe};o(hj,"formatError");o(o2,"YAMLException$1");o2.prototype=Object.create(Error.prototype);o2.prototype.constructor=o2;o2.prototype.toString=o(function(e){return this.name+": "+hj(this,e)},"toString");Ds=o2;o(rD,"getLine");o(nD,"padStart");o(KCe,"makeSnippet");QCe=KCe,ZCe=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],JCe=["scalar","sequence","mapping"];o(e7e,"compileStyleAliases");o(t7e,"Type$1");_a=t7e;o(jX,"compileList");o(r7e,"compileMap");o(aD,"Schema$1");aD.prototype.extend=o(function(e){var r=[],n=[];if(e instanceof _a)n.push(e);else if(Array.isArray(e))n=n.concat(e);else if(e&&(Array.isArray(e.implicit)||Array.isArray(e.explicit)))e.implicit&&(r=r.concat(e.implicit)),e.explicit&&(n=n.concat(e.explicit));else throw new Ds("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");r.forEach(function(a){if(!(a instanceof _a))throw new Ds("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(a.loadKind&&a.loadKind!=="scalar")throw new Ds("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(a.multi)throw new Ds("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),n.forEach(function(a){if(!(a instanceof _a))throw new Ds("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(aD.prototype);return i.implicit=(this.implicit||[]).concat(r),i.explicit=(this.explicit||[]).concat(n),i.compiledImplicit=jX(i,"implicit"),i.compiledExplicit=jX(i,"explicit"),i.compiledTypeMap=r7e(i.compiledImplicit,i.compiledExplicit),i},"extend");n7e=aD,i7e=new _a("tag:yaml.org,2002:str",{kind:"scalar",construct:o(function(t){return t!==null?t:""},"construct")}),a7e=new _a("tag:yaml.org,2002:seq",{kind:"sequence",construct:o(function(t){return t!==null?t:[]},"construct")}),s7e=new _a("tag:yaml.org,2002:map",{kind:"mapping",construct:o(function(t){return t!==null?t:{}},"construct")}),o7e=new n7e({explicit:[i7e,a7e,s7e]});o(l7e,"resolveYamlNull");o(c7e,"constructYamlNull");o(u7e,"isNull");h7e=new _a("tag:yaml.org,2002:null",{kind:"scalar",resolve:l7e,construct:c7e,predicate:u7e,represent:{canonical:o(function(){return"~"},"canonical"),lowercase:o(function(){return"null"},"lowercase"),uppercase:o(function(){return"NULL"},"uppercase"),camelcase:o(function(){return"Null"},"camelcase"),empty:o(function(){return""},"empty")},defaultStyle:"lowercase"});o(f7e,"resolveYamlBoolean");o(d7e,"constructYamlBoolean");o(p7e,"isBoolean");m7e=new _a("tag:yaml.org,2002:bool",{kind:"scalar",resolve:f7e,construct:d7e,predicate:p7e,represent:{lowercase:o(function(t){return t?"true":"false"},"lowercase"),uppercase:o(function(t){return t?"TRUE":"FALSE"},"uppercase"),camelcase:o(function(t){return t?"True":"False"},"camelcase")},defaultStyle:"lowercase"});o(g7e,"isHexCode");o(y7e,"isOctCode");o(v7e,"isDecCode");o(x7e,"resolveYamlInteger");o(b7e,"constructYamlInteger");o(w7e,"isInteger");T7e=new _a("tag:yaml.org,2002:int",{kind:"scalar",resolve:x7e,construct:b7e,predicate:w7e,represent:{binary:o(function(t){return t>=0?"0b"+t.toString(2):"-0b"+t.toString(2).slice(1)},"binary"),octal:o(function(t){return t>=0?"0o"+t.toString(8):"-0o"+t.toString(8).slice(1)},"octal"),decimal:o(function(t){return t.toString(10)},"decimal"),hexadecimal:o(function(t){return t>=0?"0x"+t.toString(16).toUpperCase():"-0x"+t.toString(16).toUpperCase().slice(1)},"hexadecimal")},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),k7e=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");o(E7e,"resolveYamlFloat");o(S7e,"constructYamlFloat");C7e=/^[-+]?[0-9]+e/;o(A7e,"representYamlFloat");o(_7e,"isFloat");D7e=new _a("tag:yaml.org,2002:float",{kind:"scalar",resolve:E7e,construct:S7e,predicate:_7e,represent:A7e,defaultStyle:"lowercase"}),fj=o7e.extend({implicit:[h7e,m7e,T7e,D7e]}),L7e=fj,dj=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),pj=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");o(R7e,"resolveYamlTimestamp");o(N7e,"constructYamlTimestamp");o(M7e,"representYamlTimestamp");I7e=new _a("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:R7e,construct:N7e,instanceOf:Date,represent:M7e});o(O7e,"resolveYamlMerge");P7e=new _a("tag:yaml.org,2002:merge",{kind:"scalar",resolve:O7e}),uD=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= +\r`;o(B7e,"resolveYamlBinary");o(F7e,"constructYamlBinary");o($7e,"representYamlBinary");o(z7e,"isBinary");G7e=new _a("tag:yaml.org,2002:binary",{kind:"scalar",resolve:B7e,construct:F7e,predicate:z7e,represent:$7e}),V7e=Object.prototype.hasOwnProperty,U7e=Object.prototype.toString;o(H7e,"resolveYamlOmap");o(W7e,"constructYamlOmap");q7e=new _a("tag:yaml.org,2002:omap",{kind:"sequence",resolve:H7e,construct:W7e}),Y7e=Object.prototype.toString;o(X7e,"resolveYamlPairs");o(j7e,"constructYamlPairs");K7e=new _a("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:X7e,construct:j7e}),Q7e=Object.prototype.hasOwnProperty;o(Z7e,"resolveYamlSet");o(J7e,"constructYamlSet");eAe=new _a("tag:yaml.org,2002:set",{kind:"mapping",resolve:Z7e,construct:J7e}),mj=L7e.extend({implicit:[I7e,P7e],explicit:[G7e,q7e,K7e,eAe]}),Gh=Object.prototype.hasOwnProperty,vw=1,gj=2,yj=3,xw=4,iD=1,tAe=2,KX=3,rAe=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,nAe=/[\x85\u2028\u2029]/,iAe=/[,\[\]\{\}]/,vj=/^(?:!|!!|![a-z\-]+!)$/i,xj=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;o(QX,"_class");o(dc,"is_EOL");o(Nd,"is_WHITE_SPACE");o(Ls,"is_WS_OR_EOL");o(am,"is_FLOW_INDICATOR");o(aAe,"fromHexCode");o(sAe,"escapedHexLen");o(oAe,"fromDecimalCode");o(ZX,"simpleEscapeSequence");o(lAe,"charFromCodepoint");bj=new Array(256),wj=new Array(256);for(Rd=0;Rd<256;Rd++)bj[Rd]=ZX(Rd)?1:0,wj[Rd]=ZX(Rd);o(cAe,"State$1");o(Tj,"generateError");o(Qt,"throwError");o(bw,"throwWarning");JX={YAML:o(function(e,r,n){var i,a,s;e.version!==null&&Qt(e,"duplication of %YAML directive"),n.length!==1&&Qt(e,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(n[0]),i===null&&Qt(e,"ill-formed argument of the YAML directive"),a=parseInt(i[1],10),s=parseInt(i[2],10),a!==1&&Qt(e,"unacceptable YAML version of the document"),e.version=n[0],e.checkLineBreaks=s<2,s!==1&&s!==2&&bw(e,"unsupported YAML version of the document")},"handleYamlDirective"),TAG:o(function(e,r,n){var i,a;n.length!==2&&Qt(e,"TAG directive accepts exactly two arguments"),i=n[0],a=n[1],vj.test(i)||Qt(e,"ill-formed tag handle (first argument) of the TAG directive"),Gh.call(e.tagMap,i)&&Qt(e,'there is a previously declared suffix for "'+i+'" tag handle'),xj.test(a)||Qt(e,"ill-formed tag prefix (second argument) of the TAG directive");try{a=decodeURIComponent(a)}catch{Qt(e,"tag prefix is malformed: "+a)}e.tagMap[i]=a},"handleTagDirective")};o(zh,"captureSegment");o(ej,"mergeMappings");o(sm,"storeMappingPair");o(hD,"readLineBreak");o(Ci,"skipSeparationSpace");o(kw,"testDocumentSeparator");o(fD,"writeFoldedLines");o(uAe,"readPlainScalar");o(hAe,"readSingleQuotedScalar");o(fAe,"readDoubleQuotedScalar");o(dAe,"readFlowCollection");o(pAe,"readBlockScalar");o(tj,"readBlockSequence");o(mAe,"readBlockMapping");o(gAe,"readTagProperty");o(yAe,"readAnchorProperty");o(vAe,"readAlias");o(om,"composeNode");o(xAe,"readDocument");o(kj,"loadDocuments");o(bAe,"loadAll$1");o(wAe,"load$1");TAe=bAe,kAe=wAe,Ej={loadAll:TAe,load:kAe},Sj=Object.prototype.toString,Cj=Object.prototype.hasOwnProperty,dD=65279,EAe=9,l2=10,SAe=13,CAe=32,AAe=33,_Ae=34,sD=35,DAe=37,LAe=38,RAe=39,NAe=42,Aj=44,MAe=45,ww=58,IAe=61,OAe=62,PAe=63,BAe=64,_j=91,Dj=93,FAe=96,Lj=123,$Ae=124,Rj=125,Da={};Da[0]="\\0";Da[7]="\\a";Da[8]="\\b";Da[9]="\\t";Da[10]="\\n";Da[11]="\\v";Da[12]="\\f";Da[13]="\\r";Da[27]="\\e";Da[34]='\\"';Da[92]="\\\\";Da[133]="\\N";Da[160]="\\_";Da[8232]="\\L";Da[8233]="\\P";zAe=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],GAe=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;o(VAe,"compileStyleMap");o(UAe,"encodeHex");HAe=1,c2=2;o(WAe,"State");o(rj,"indentString");o(oD,"generateNextLine");o(qAe,"testImplicitResolving");o(Tw,"isWhitespace");o(u2,"isPrintable");o(nj,"isNsCharOrWhitespace");o(ij,"isPlainSafe");o(YAe,"isPlainSafeFirst");o(XAe,"isPlainSafeLast");o(s2,"codePointAt");o(Nj,"needIndentIndicator");Mj=1,lD=2,Ij=3,Oj=4,im=5;o(jAe,"chooseScalarStyle");o(KAe,"writeScalar");o(aj,"blockHeader");o(sj,"dropEndingNewline");o(QAe,"foldString");o(oj,"foldLine");o(ZAe,"escapeString");o(JAe,"writeFlowSequence");o(lj,"writeBlockSequence");o(e8e,"writeFlowMapping");o(t8e,"writeBlockMapping");o(cj,"detectType");o(Au,"writeNode");o(r8e,"getDuplicateReferences");o(cD,"inspectNode");o(n8e,"dump$1");i8e=n8e,a8e={dump:i8e};o(pD,"renamed");lm=fj,cm=Ej.load,okt=Ej.loadAll,lkt=a8e.dump,ckt=pD("safeLoad","load"),ukt=pD("safeLoadAll","loadAll"),hkt=pD("safeDump","dump")});function vD(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}function Gj(t){Id=t}function nn(t,e=""){let r=typeof t=="string"?t:t.source,n={replace:o((i,a)=>{let s=typeof a=="string"?a:a.source;return s=s.replace(ts.caret,"$1"),r=r.replace(i,s),n},"replace"),getRegex:o(()=>new RegExp(r,e),"getRegex")};return n}function pc(t,e){if(e){if(ts.escapeTest.test(t))return t.replace(ts.escapeReplace,Bj)}else if(ts.escapeTestNoEncode.test(t))return t.replace(ts.escapeReplaceNoEncode,Bj);return t}function Fj(t){try{t=encodeURI(t).replace(ts.percentDecode,"%")}catch{return null}return t}function $j(t,e){let r=t.replace(ts.findPipe,(a,s,l)=>{let u=!1,h=s;for(;--h>=0&&l[h]==="\\";)u=!u;return u?"|":" |"}),n=r.split(ts.splitPipe),i=0;if(n[0].trim()||n.shift(),n.length>0&&!n.at(-1)?.trim()&&n.pop(),e)if(n.length>e)n.splice(e);else for(;n.length{let s=a.match(r.other.beginningSpace);if(s===null)return a;let[l]=s;return l.length>=i.length?a.slice(i.length):a}).join(` +`)}function Jr(t,e){return Md.parse(t,e)}var Id,d2,ts,s8e,o8e,l8e,m2,c8e,xD,Vj,Uj,u8e,bD,h8e,wD,f8e,d8e,Aw,TD,p8e,Hj,m8e,kD,Pj,g8e,y8e,v8e,x8e,Wj,b8e,_w,ED,qj,w8e,Yj,T8e,k8e,E8e,Xj,S8e,C8e,jj,A8e,_8e,D8e,L8e,R8e,N8e,M8e,Cw,I8e,Kj,Qj,O8e,SD,P8e,gD,B8e,Sw,h2,F8e,Bj,hm,Al,fm,p2,_l,um,yD,Md,dkt,pkt,mkt,gkt,ykt,vkt,xkt,Zj=N(()=>{"use strict";o(vD,"_getDefaults");Id=vD();o(Gj,"changeDefaults");d2={exec:o(()=>null,"exec")};o(nn,"edit");ts={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] /,listReplaceTask:/^\[[ xX]\] +/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:o(t=>new RegExp(`^( {0,3}${t})((?:[ ][^\\n]*)?(?:\\n|$))`),"listItemRegex"),nextBulletRegex:o(t=>new RegExp(`^ {0,${Math.min(3,t-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),"nextBulletRegex"),hrRegex:o(t=>new RegExp(`^ {0,${Math.min(3,t-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),"hrRegex"),fencesBeginRegex:o(t=>new RegExp(`^ {0,${Math.min(3,t-1)}}(?:\`\`\`|~~~)`),"fencesBeginRegex"),headingBeginRegex:o(t=>new RegExp(`^ {0,${Math.min(3,t-1)}}#`),"headingBeginRegex"),htmlBeginRegex:o(t=>new RegExp(`^ {0,${Math.min(3,t-1)}}<(?:[a-z].*>|!--)`,"i"),"htmlBeginRegex")},s8e=/^(?:[ \t]*(?:\n|$))+/,o8e=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,l8e=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,m2=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,c8e=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,xD=/(?:[*+-]|\d{1,9}[.)])/,Vj=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,Uj=nn(Vj).replace(/bull/g,xD).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),u8e=nn(Vj).replace(/bull/g,xD).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),bD=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,h8e=/^[^\n]+/,wD=/(?!\s*\])(?:\\.|[^\[\]\\])+/,f8e=nn(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",wD).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),d8e=nn(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,xD).getRegex(),Aw="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",TD=/|$))/,p8e=nn("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",TD).replace("tag",Aw).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),Hj=nn(bD).replace("hr",m2).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",Aw).getRegex(),m8e=nn(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",Hj).getRegex(),kD={blockquote:m8e,code:o8e,def:f8e,fences:l8e,heading:c8e,hr:m2,html:p8e,lheading:Uj,list:d8e,newline:s8e,paragraph:Hj,table:d2,text:h8e},Pj=nn("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",m2).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",Aw).getRegex(),g8e={...kD,lheading:u8e,table:Pj,paragraph:nn(bD).replace("hr",m2).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",Pj).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",Aw).getRegex()},y8e={...kD,html:nn(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",TD).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:d2,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:nn(bD).replace("hr",m2).replace("heading",` *#{1,6} *[^ +]`).replace("lheading",Uj).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},v8e=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,x8e=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Wj=/^( {2,}|\\)\n(?!\s*$)/,b8e=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\]*?>/g,Xj=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,S8e=nn(Xj,"u").replace(/punct/g,_w).getRegex(),C8e=nn(Xj,"u").replace(/punct/g,Yj).getRegex(),jj="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",A8e=nn(jj,"gu").replace(/notPunctSpace/g,qj).replace(/punctSpace/g,ED).replace(/punct/g,_w).getRegex(),_8e=nn(jj,"gu").replace(/notPunctSpace/g,k8e).replace(/punctSpace/g,T8e).replace(/punct/g,Yj).getRegex(),D8e=nn("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,qj).replace(/punctSpace/g,ED).replace(/punct/g,_w).getRegex(),L8e=nn(/\\(punct)/,"gu").replace(/punct/g,_w).getRegex(),R8e=nn(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),N8e=nn(TD).replace("(?:-->|$)","-->").getRegex(),M8e=nn("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",N8e).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Cw=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,I8e=nn(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",Cw).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Kj=nn(/^!?\[(label)\]\[(ref)\]/).replace("label",Cw).replace("ref",wD).getRegex(),Qj=nn(/^!?\[(ref)\](?:\[\])?/).replace("ref",wD).getRegex(),O8e=nn("reflink|nolink(?!\\()","g").replace("reflink",Kj).replace("nolink",Qj).getRegex(),SD={_backpedal:d2,anyPunctuation:L8e,autolink:R8e,blockSkip:E8e,br:Wj,code:x8e,del:d2,emStrongLDelim:S8e,emStrongRDelimAst:A8e,emStrongRDelimUnd:D8e,escape:v8e,link:I8e,nolink:Qj,punctuation:w8e,reflink:Kj,reflinkSearch:O8e,tag:M8e,text:b8e,url:d2},P8e={...SD,link:nn(/^!?\[(label)\]\((.*?)\)/).replace("label",Cw).getRegex(),reflink:nn(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Cw).getRegex()},gD={...SD,emStrongRDelimAst:_8e,emStrongLDelim:C8e,url:nn(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\.|[^\\])*?(?:\\.|[^\s~\\]))\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\":">",'"':""","'":"'"},Bj=o(t=>F8e[t],"getEscapeReplacement");o(pc,"escape");o(Fj,"cleanUrl");o($j,"splitCells");o(f2,"rtrim");o($8e,"findClosingBracket");o(zj,"outputLink");o(z8e,"indentCodeCompensation");hm=class{static{o(this,"_Tokenizer")}options;rules;lexer;constructor(e){this.options=e||Id}space(e){let r=this.rules.block.newline.exec(e);if(r&&r[0].length>0)return{type:"space",raw:r[0]}}code(e){let r=this.rules.block.code.exec(e);if(r){let n=r[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:r[0],codeBlockStyle:"indented",text:this.options.pedantic?n:f2(n,` +`)}}}fences(e){let r=this.rules.block.fences.exec(e);if(r){let n=r[0],i=z8e(n,r[3]||"",this.rules);return{type:"code",raw:n,lang:r[2]?r[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):r[2],text:i}}}heading(e){let r=this.rules.block.heading.exec(e);if(r){let n=r[2].trim();if(this.rules.other.endingHash.test(n)){let i=f2(n,"#");(this.options.pedantic||!i||this.rules.other.endingSpaceChar.test(i))&&(n=i.trim())}return{type:"heading",raw:r[0],depth:r[1].length,text:n,tokens:this.lexer.inline(n)}}}hr(e){let r=this.rules.block.hr.exec(e);if(r)return{type:"hr",raw:f2(r[0],` +`)}}blockquote(e){let r=this.rules.block.blockquote.exec(e);if(r){let n=f2(r[0],` +`).split(` +`),i="",a="",s=[];for(;n.length>0;){let l=!1,u=[],h;for(h=0;h1,a={type:"list",raw:"",ordered:i,start:i?+n.slice(0,-1):"",loose:!1,items:[]};n=i?`\\d{1,9}\\${n.slice(-1)}`:`\\${n}`,this.options.pedantic&&(n=i?n:"[*+-]");let s=this.rules.other.listItemRegex(n),l=!1;for(;e;){let h=!1,f="",d="";if(!(r=s.exec(e))||this.rules.block.hr.test(e))break;f=r[0],e=e.substring(f.length);let p=r[2].split(` +`,1)[0].replace(this.rules.other.listReplaceTabs,b=>" ".repeat(3*b.length)),m=e.split(` +`,1)[0],g=!p.trim(),y=0;if(this.options.pedantic?(y=2,d=p.trimStart()):g?y=r[1].length+1:(y=r[2].search(this.rules.other.nonSpaceChar),y=y>4?1:y,d=p.slice(y),y+=r[1].length),g&&this.rules.other.blankLine.test(m)&&(f+=m+` +`,e=e.substring(m.length+1),h=!0),!h){let b=this.rules.other.nextBulletRegex(y),w=this.rules.other.hrRegex(y),C=this.rules.other.fencesBeginRegex(y),T=this.rules.other.headingBeginRegex(y),E=this.rules.other.htmlBeginRegex(y);for(;e;){let A=e.split(` +`,1)[0],S;if(m=A,this.options.pedantic?(m=m.replace(this.rules.other.listReplaceNesting," "),S=m):S=m.replace(this.rules.other.tabCharGlobal," "),C.test(m)||T.test(m)||E.test(m)||b.test(m)||w.test(m))break;if(S.search(this.rules.other.nonSpaceChar)>=y||!m.trim())d+=` +`+S.slice(y);else{if(g||p.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||C.test(p)||T.test(p)||w.test(p))break;d+=` +`+m}!g&&!m.trim()&&(g=!0),f+=A+` +`,e=e.substring(A.length+1),p=S.slice(y)}}a.loose||(l?a.loose=!0:this.rules.other.doubleBlankLine.test(f)&&(l=!0));let v=null,x;this.options.gfm&&(v=this.rules.other.listIsTask.exec(d),v&&(x=v[0]!=="[ ] ",d=d.replace(this.rules.other.listReplaceTask,""))),a.items.push({type:"list_item",raw:f,task:!!v,checked:x,loose:!1,text:d,tokens:[]}),a.raw+=f}let u=a.items.at(-1);if(u)u.raw=u.raw.trimEnd(),u.text=u.text.trimEnd();else return;a.raw=a.raw.trimEnd();for(let h=0;hp.type==="space"),d=f.length>0&&f.some(p=>this.rules.other.anyLine.test(p.raw));a.loose=d}if(a.loose)for(let h=0;h({text:u,tokens:this.lexer.inline(u),header:!1,align:s.align[h]})));return s}}lheading(e){let r=this.rules.block.lheading.exec(e);if(r)return{type:"heading",raw:r[0],depth:r[2].charAt(0)==="="?1:2,text:r[1],tokens:this.lexer.inline(r[1])}}paragraph(e){let r=this.rules.block.paragraph.exec(e);if(r){let n=r[1].charAt(r[1].length-1)===` +`?r[1].slice(0,-1):r[1];return{type:"paragraph",raw:r[0],text:n,tokens:this.lexer.inline(n)}}}text(e){let r=this.rules.block.text.exec(e);if(r)return{type:"text",raw:r[0],text:r[0],tokens:this.lexer.inline(r[0])}}escape(e){let r=this.rules.inline.escape.exec(e);if(r)return{type:"escape",raw:r[0],text:r[1]}}tag(e){let r=this.rules.inline.tag.exec(e);if(r)return!this.lexer.state.inLink&&this.rules.other.startATag.test(r[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(r[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(r[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(r[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:r[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:r[0]}}link(e){let r=this.rules.inline.link.exec(e);if(r){let n=r[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(n)){if(!this.rules.other.endAngleBracket.test(n))return;let s=f2(n.slice(0,-1),"\\");if((n.length-s.length)%2===0)return}else{let s=$8e(r[2],"()");if(s>-1){let u=(r[0].indexOf("!")===0?5:4)+r[1].length+s;r[2]=r[2].substring(0,s),r[0]=r[0].substring(0,u).trim(),r[3]=""}}let i=r[2],a="";if(this.options.pedantic){let s=this.rules.other.pedanticHrefTitle.exec(i);s&&(i=s[1],a=s[3])}else a=r[3]?r[3].slice(1,-1):"";return i=i.trim(),this.rules.other.startAngleBracket.test(i)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(n)?i=i.slice(1):i=i.slice(1,-1)),zj(r,{href:i&&i.replace(this.rules.inline.anyPunctuation,"$1"),title:a&&a.replace(this.rules.inline.anyPunctuation,"$1")},r[0],this.lexer,this.rules)}}reflink(e,r){let n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){let i=(n[2]||n[1]).replace(this.rules.other.multipleSpaceGlobal," "),a=r[i.toLowerCase()];if(!a){let s=n[0].charAt(0);return{type:"text",raw:s,text:s}}return zj(n,a,n[0],this.lexer,this.rules)}}emStrong(e,r,n=""){let i=this.rules.inline.emStrongLDelim.exec(e);if(!i||i[3]&&n.match(this.rules.other.unicodeAlphaNumeric))return;if(!(i[1]||i[2]||"")||!n||this.rules.inline.punctuation.exec(n)){let s=[...i[0]].length-1,l,u,h=s,f=0,d=i[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(d.lastIndex=0,r=r.slice(-1*e.length+s);(i=d.exec(r))!=null;){if(l=i[1]||i[2]||i[3]||i[4]||i[5]||i[6],!l)continue;if(u=[...l].length,i[3]||i[4]){h+=u;continue}else if((i[5]||i[6])&&s%3&&!((s+u)%3)){f+=u;continue}if(h-=u,h>0)continue;u=Math.min(u,u+h+f);let p=[...i[0]][0].length,m=e.slice(0,s+i.index+p+u);if(Math.min(s,u)%2){let y=m.slice(1,-1);return{type:"em",raw:m,text:y,tokens:this.lexer.inlineTokens(y)}}let g=m.slice(2,-2);return{type:"strong",raw:m,text:g,tokens:this.lexer.inlineTokens(g)}}}}codespan(e){let r=this.rules.inline.code.exec(e);if(r){let n=r[2].replace(this.rules.other.newLineCharGlobal," "),i=this.rules.other.nonSpaceChar.test(n),a=this.rules.other.startingSpaceChar.test(n)&&this.rules.other.endingSpaceChar.test(n);return i&&a&&(n=n.substring(1,n.length-1)),{type:"codespan",raw:r[0],text:n}}}br(e){let r=this.rules.inline.br.exec(e);if(r)return{type:"br",raw:r[0]}}del(e){let r=this.rules.inline.del.exec(e);if(r)return{type:"del",raw:r[0],text:r[2],tokens:this.lexer.inlineTokens(r[2])}}autolink(e){let r=this.rules.inline.autolink.exec(e);if(r){let n,i;return r[2]==="@"?(n=r[1],i="mailto:"+n):(n=r[1],i=n),{type:"link",raw:r[0],text:n,href:i,tokens:[{type:"text",raw:n,text:n}]}}}url(e){let r;if(r=this.rules.inline.url.exec(e)){let n,i;if(r[2]==="@")n=r[0],i="mailto:"+n;else{let a;do a=r[0],r[0]=this.rules.inline._backpedal.exec(r[0])?.[0]??"";while(a!==r[0]);n=r[0],r[1]==="www."?i="http://"+r[0]:i=r[0]}return{type:"link",raw:r[0],text:n,href:i,tokens:[{type:"text",raw:n,text:n}]}}}inlineText(e){let r=this.rules.inline.text.exec(e);if(r){let n=this.lexer.state.inRawBlock;return{type:"text",raw:r[0],text:r[0],escaped:n}}}},Al=class t{static{o(this,"_Lexer")}tokens;options;state;tokenizer;inlineQueue;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||Id,this.options.tokenizer=this.options.tokenizer||new hm,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let r={other:ts,block:Sw.normal,inline:h2.normal};this.options.pedantic?(r.block=Sw.pedantic,r.inline=h2.pedantic):this.options.gfm&&(r.block=Sw.gfm,this.options.breaks?r.inline=h2.breaks:r.inline=h2.gfm),this.tokenizer.rules=r}static get rules(){return{block:Sw,inline:h2}}static lex(e,r){return new t(r).lex(e)}static lexInline(e,r){return new t(r).inlineTokens(e)}lex(e){e=e.replace(ts.carriageReturn,` +`),this.blockTokens(e,this.tokens);for(let r=0;r(i=s.call({lexer:this},e,r))?(e=e.substring(i.raw.length),r.push(i),!0):!1))continue;if(i=this.tokenizer.space(e)){e=e.substring(i.raw.length);let s=r.at(-1);i.raw.length===1&&s!==void 0?s.raw+=` +`:r.push(i);continue}if(i=this.tokenizer.code(e)){e=e.substring(i.raw.length);let s=r.at(-1);s?.type==="paragraph"||s?.type==="text"?(s.raw+=` +`+i.raw,s.text+=` +`+i.text,this.inlineQueue.at(-1).src=s.text):r.push(i);continue}if(i=this.tokenizer.fences(e)){e=e.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.heading(e)){e=e.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.hr(e)){e=e.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.blockquote(e)){e=e.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.list(e)){e=e.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.html(e)){e=e.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.def(e)){e=e.substring(i.raw.length);let s=r.at(-1);s?.type==="paragraph"||s?.type==="text"?(s.raw+=` +`+i.raw,s.text+=` +`+i.raw,this.inlineQueue.at(-1).src=s.text):this.tokens.links[i.tag]||(this.tokens.links[i.tag]={href:i.href,title:i.title});continue}if(i=this.tokenizer.table(e)){e=e.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.lheading(e)){e=e.substring(i.raw.length),r.push(i);continue}let a=e;if(this.options.extensions?.startBlock){let s=1/0,l=e.slice(1),u;this.options.extensions.startBlock.forEach(h=>{u=h.call({lexer:this},l),typeof u=="number"&&u>=0&&(s=Math.min(s,u))}),s<1/0&&s>=0&&(a=e.substring(0,s+1))}if(this.state.top&&(i=this.tokenizer.paragraph(a))){let s=r.at(-1);n&&s?.type==="paragraph"?(s.raw+=` +`+i.raw,s.text+=` +`+i.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=s.text):r.push(i),n=a.length!==e.length,e=e.substring(i.raw.length);continue}if(i=this.tokenizer.text(e)){e=e.substring(i.raw.length);let s=r.at(-1);s?.type==="text"?(s.raw+=` +`+i.raw,s.text+=` +`+i.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=s.text):r.push(i);continue}if(e){let s="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(s);break}else throw new Error(s)}}return this.state.top=!0,r}inline(e,r=[]){return this.inlineQueue.push({src:e,tokens:r}),r}inlineTokens(e,r=[]){let n=e,i=null;if(this.tokens.links){let l=Object.keys(this.tokens.links);if(l.length>0)for(;(i=this.tokenizer.rules.inline.reflinkSearch.exec(n))!=null;)l.includes(i[0].slice(i[0].lastIndexOf("[")+1,-1))&&(n=n.slice(0,i.index)+"["+"a".repeat(i[0].length-2)+"]"+n.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(i=this.tokenizer.rules.inline.blockSkip.exec(n))!=null;)n=n.slice(0,i.index)+"["+"a".repeat(i[0].length-2)+"]"+n.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(i=this.tokenizer.rules.inline.anyPunctuation.exec(n))!=null;)n=n.slice(0,i.index)+"++"+n.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let a=!1,s="";for(;e;){a||(s=""),a=!1;let l;if(this.options.extensions?.inline?.some(h=>(l=h.call({lexer:this},e,r))?(e=e.substring(l.raw.length),r.push(l),!0):!1))continue;if(l=this.tokenizer.escape(e)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.tag(e)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.link(e)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(l.raw.length);let h=r.at(-1);l.type==="text"&&h?.type==="text"?(h.raw+=l.raw,h.text+=l.text):r.push(l);continue}if(l=this.tokenizer.emStrong(e,n,s)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.codespan(e)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.br(e)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.del(e)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.autolink(e)){e=e.substring(l.raw.length),r.push(l);continue}if(!this.state.inLink&&(l=this.tokenizer.url(e))){e=e.substring(l.raw.length),r.push(l);continue}let u=e;if(this.options.extensions?.startInline){let h=1/0,f=e.slice(1),d;this.options.extensions.startInline.forEach(p=>{d=p.call({lexer:this},f),typeof d=="number"&&d>=0&&(h=Math.min(h,d))}),h<1/0&&h>=0&&(u=e.substring(0,h+1))}if(l=this.tokenizer.inlineText(u)){e=e.substring(l.raw.length),l.raw.slice(-1)!=="_"&&(s=l.raw.slice(-1)),a=!0;let h=r.at(-1);h?.type==="text"?(h.raw+=l.raw,h.text+=l.text):r.push(l);continue}if(e){let h="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(h);break}else throw new Error(h)}}return r}},fm=class{static{o(this,"_Renderer")}options;parser;constructor(e){this.options=e||Id}space(e){return""}code({text:e,lang:r,escaped:n}){let i=(r||"").match(ts.notSpaceStart)?.[0],a=e.replace(ts.endingNewline,"")+` +`;return i?'
'+(n?a:pc(a,!0))+`
+`:"
"+(n?a:pc(a,!0))+`
+`}blockquote({tokens:e}){return`
+${this.parser.parse(e)}
+`}html({text:e}){return e}heading({tokens:e,depth:r}){return`${this.parser.parseInline(e)} +`}hr(e){return`
+`}list(e){let r=e.ordered,n=e.start,i="";for(let l=0;l +`+i+" +`}listitem(e){let r="";if(e.task){let n=this.checkbox({checked:!!e.checked});e.loose?e.tokens[0]?.type==="paragraph"?(e.tokens[0].text=n+" "+e.tokens[0].text,e.tokens[0].tokens&&e.tokens[0].tokens.length>0&&e.tokens[0].tokens[0].type==="text"&&(e.tokens[0].tokens[0].text=n+" "+pc(e.tokens[0].tokens[0].text),e.tokens[0].tokens[0].escaped=!0)):e.tokens.unshift({type:"text",raw:n+" ",text:n+" ",escaped:!0}):r+=n+" "}return r+=this.parser.parse(e.tokens,!!e.loose),`
  • ${r}
  • +`}checkbox({checked:e}){return"'}paragraph({tokens:e}){return`

    ${this.parser.parseInline(e)}

    +`}table(e){let r="",n="";for(let a=0;a${i}`),` + +`+r+` +`+i+`
    +`}tablerow({text:e}){return` +${e} +`}tablecell(e){let r=this.parser.parseInline(e.tokens),n=e.header?"th":"td";return(e.align?`<${n} align="${e.align}">`:`<${n}>`)+r+` +`}strong({tokens:e}){return`${this.parser.parseInline(e)}`}em({tokens:e}){return`${this.parser.parseInline(e)}`}codespan({text:e}){return`${pc(e,!0)}`}br(e){return"
    "}del({tokens:e}){return`${this.parser.parseInline(e)}`}link({href:e,title:r,tokens:n}){let i=this.parser.parseInline(n),a=Fj(e);if(a===null)return i;e=a;let s='
    ",s}image({href:e,title:r,text:n}){let i=Fj(e);if(i===null)return pc(n);e=i;let a=`${n}{let l=a[s].flat(1/0);n=n.concat(this.walkTokens(l,r))}):a.tokens&&(n=n.concat(this.walkTokens(a.tokens,r)))}}return n}use(...e){let r=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(n=>{let i={...n};if(i.async=this.defaults.async||i.async||!1,n.extensions&&(n.extensions.forEach(a=>{if(!a.name)throw new Error("extension name required");if("renderer"in a){let s=r.renderers[a.name];s?r.renderers[a.name]=function(...l){let u=a.renderer.apply(this,l);return u===!1&&(u=s.apply(this,l)),u}:r.renderers[a.name]=a.renderer}if("tokenizer"in a){if(!a.level||a.level!=="block"&&a.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let s=r[a.level];s?s.unshift(a.tokenizer):r[a.level]=[a.tokenizer],a.start&&(a.level==="block"?r.startBlock?r.startBlock.push(a.start):r.startBlock=[a.start]:a.level==="inline"&&(r.startInline?r.startInline.push(a.start):r.startInline=[a.start]))}"childTokens"in a&&a.childTokens&&(r.childTokens[a.name]=a.childTokens)}),i.extensions=r),n.renderer){let a=this.defaults.renderer||new fm(this.defaults);for(let s in n.renderer){if(!(s in a))throw new Error(`renderer '${s}' does not exist`);if(["options","parser"].includes(s))continue;let l=s,u=n.renderer[l],h=a[l];a[l]=(...f)=>{let d=u.apply(a,f);return d===!1&&(d=h.apply(a,f)),d||""}}i.renderer=a}if(n.tokenizer){let a=this.defaults.tokenizer||new hm(this.defaults);for(let s in n.tokenizer){if(!(s in a))throw new Error(`tokenizer '${s}' does not exist`);if(["options","rules","lexer"].includes(s))continue;let l=s,u=n.tokenizer[l],h=a[l];a[l]=(...f)=>{let d=u.apply(a,f);return d===!1&&(d=h.apply(a,f)),d}}i.tokenizer=a}if(n.hooks){let a=this.defaults.hooks||new um;for(let s in n.hooks){if(!(s in a))throw new Error(`hook '${s}' does not exist`);if(["options","block"].includes(s))continue;let l=s,u=n.hooks[l],h=a[l];um.passThroughHooks.has(s)?a[l]=f=>{if(this.defaults.async)return Promise.resolve(u.call(a,f)).then(p=>h.call(a,p));let d=u.call(a,f);return h.call(a,d)}:a[l]=(...f)=>{let d=u.apply(a,f);return d===!1&&(d=h.apply(a,f)),d}}i.hooks=a}if(n.walkTokens){let a=this.defaults.walkTokens,s=n.walkTokens;i.walkTokens=function(l){let u=[];return u.push(s.call(this,l)),a&&(u=u.concat(a.call(this,l))),u}}this.defaults={...this.defaults,...i}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,r){return Al.lex(e,r??this.defaults)}parser(e,r){return _l.parse(e,r??this.defaults)}parseMarkdown(e){return o((n,i)=>{let a={...i},s={...this.defaults,...a},l=this.onError(!!s.silent,!!s.async);if(this.defaults.async===!0&&a.async===!1)return l(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof n>"u"||n===null)return l(new Error("marked(): input parameter is undefined or null"));if(typeof n!="string")return l(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(n)+", string expected"));s.hooks&&(s.hooks.options=s,s.hooks.block=e);let u=s.hooks?s.hooks.provideLexer():e?Al.lex:Al.lexInline,h=s.hooks?s.hooks.provideParser():e?_l.parse:_l.parseInline;if(s.async)return Promise.resolve(s.hooks?s.hooks.preprocess(n):n).then(f=>u(f,s)).then(f=>s.hooks?s.hooks.processAllTokens(f):f).then(f=>s.walkTokens?Promise.all(this.walkTokens(f,s.walkTokens)).then(()=>f):f).then(f=>h(f,s)).then(f=>s.hooks?s.hooks.postprocess(f):f).catch(l);try{s.hooks&&(n=s.hooks.preprocess(n));let f=u(n,s);s.hooks&&(f=s.hooks.processAllTokens(f)),s.walkTokens&&this.walkTokens(f,s.walkTokens);let d=h(f,s);return s.hooks&&(d=s.hooks.postprocess(d)),d}catch(f){return l(f)}},"parse")}onError(e,r){return n=>{if(n.message+=` +Please report this to https://github.com/markedjs/marked.`,e){let i="

    An error occurred:

    "+pc(n.message+"",!0)+"
    ";return r?Promise.resolve(i):i}if(r)return Promise.reject(n);throw n}}},Md=new yD;o(Jr,"marked");Jr.options=Jr.setOptions=function(t){return Md.setOptions(t),Jr.defaults=Md.defaults,Gj(Jr.defaults),Jr};Jr.getDefaults=vD;Jr.defaults=Id;Jr.use=function(...t){return Md.use(...t),Jr.defaults=Md.defaults,Gj(Jr.defaults),Jr};Jr.walkTokens=function(t,e){return Md.walkTokens(t,e)};Jr.parseInline=Md.parseInline;Jr.Parser=_l;Jr.parser=_l.parse;Jr.Renderer=fm;Jr.TextRenderer=p2;Jr.Lexer=Al;Jr.lexer=Al.lex;Jr.Tokenizer=hm;Jr.Hooks=um;Jr.parse=Jr;dkt=Jr.options,pkt=Jr.setOptions,mkt=Jr.use,gkt=Jr.walkTokens,ykt=Jr.parseInline,vkt=_l.parse,xkt=Al.lex});function G8e(t,{markdownAutoWrap:e}){let n=t.replace(//g,` +`).replace(/\n{2,}/g,` +`),i=B4(n);return e===!1?i.replace(/ /g," "):i}function Jj(t,e={}){let r=G8e(t,e),n=Jr.lexer(r),i=[[]],a=0;function s(l,u="normal"){l.type==="text"?l.text.split(` +`).forEach((f,d)=>{d!==0&&(a++,i.push([])),f.split(" ").forEach(p=>{p=p.replace(/'/g,"'"),p&&i[a].push({content:p,type:u})})}):l.type==="strong"||l.type==="em"?l.tokens.forEach(h=>{s(h,l.type)}):l.type==="html"&&i[a].push({content:l.text,type:"normal"})}return o(s,"processNode"),n.forEach(l=>{l.type==="paragraph"?l.tokens?.forEach(u=>{s(u)}):l.type==="html"&&i[a].push({content:l.text,type:"normal"})}),i}function eK(t,{markdownAutoWrap:e}={}){let r=Jr.lexer(t);function n(i){return i.type==="text"?e===!1?i.text.replace(/\n */g,"
    ").replace(/ /g," "):i.text.replace(/\n */g,"
    "):i.type==="strong"?`${i.tokens?.map(n).join("")}`:i.type==="em"?`${i.tokens?.map(n).join("")}`:i.type==="paragraph"?`

    ${i.tokens?.map(n).join("")}

    `:i.type==="space"?"":i.type==="html"?`${i.text}`:i.type==="escape"?i.text:`Unsupported markdown: ${i.type}`}return o(n,"output"),r.map(n).join("")}var tK=N(()=>{"use strict";Zj();PC();o(G8e,"preprocessMarkdown");o(Jj,"markdownToLines");o(eK,"markdownToHTML")});function V8e(t){return Intl.Segmenter?[...new Intl.Segmenter().segment(t)].map(e=>e.segment):[...t]}function U8e(t,e){let r=V8e(e.content);return rK(t,[],r,e.type)}function rK(t,e,r,n){if(r.length===0)return[{content:e.join(""),type:n},{content:"",type:n}];let[i,...a]=r,s=[...e,i];return t([{content:s.join(""),type:n}])?rK(t,s,a,n):(e.length===0&&i&&(e.push(i),r.shift()),[{content:e.join(""),type:n},{content:r.join(""),type:n}])}function nK(t,e){if(t.some(({content:r})=>r.includes(` +`)))throw new Error("splitLineToFitWidth does not support newlines in the line");return CD(t,e)}function CD(t,e,r=[],n=[]){if(t.length===0)return n.length>0&&r.push(n),r.length>0?r:[];let i="";t[0].content===" "&&(i=" ",t.shift());let a=t.shift()??{content:" ",type:"normal"},s=[...n];if(i!==""&&s.push({content:i,type:"normal"}),s.push(a),e(s))return CD(t,e,r,s);if(n.length>0)r.push(n),t.unshift(a);else if(a.content){let[l,u]=U8e(e,a);r.push([l]),u.content&&t.unshift(u)}return CD(t,e,r)}var iK=N(()=>{"use strict";o(V8e,"splitTextToChars");o(U8e,"splitWordToFitWidth");o(rK,"splitWordToFitWidthRecursion");o(nK,"splitLineToFitWidth");o(CD,"splitLineToFitWidthRecursion")});function aK(t,e){e&&t.attr("style",e)}async function H8e(t,e,r,n,i=!1){let a=t.append("foreignObject");a.attr("width",`${10*r}px`),a.attr("height",`${10*r}px`);let s=a.append("xhtml:div"),l=e.label;e.label&&pi(e.label)&&(l=await mh(e.label.replace(Ze.lineBreakRegex,` +`),me()));let u=e.isNode?"nodeLabel":"edgeLabel",h=s.append("span");h.html(l),aK(h,e.labelStyle),h.attr("class",`${u} ${n}`),aK(s,e.labelStyle),s.style("display","table-cell"),s.style("white-space","nowrap"),s.style("line-height","1.5"),s.style("max-width",r+"px"),s.style("text-align","center"),s.attr("xmlns","http://www.w3.org/1999/xhtml"),i&&s.attr("class","labelBkg");let f=s.node().getBoundingClientRect();return f.width===r&&(s.style("display","table"),s.style("white-space","break-spaces"),s.style("width",r+"px"),f=s.node().getBoundingClientRect()),a.node()}function AD(t,e,r){return t.append("tspan").attr("class","text-outer-tspan").attr("x",0).attr("y",e*r-.1+"em").attr("dy",r+"em")}function W8e(t,e,r){let n=t.append("text"),i=AD(n,1,e);_D(i,r);let a=i.node().getComputedTextLength();return n.remove(),a}function sK(t,e,r){let n=t.append("text"),i=AD(n,1,e);_D(i,[{content:r,type:"normal"}]);let a=i.node()?.getBoundingClientRect();return a&&n.remove(),a}function q8e(t,e,r,n=!1){let a=e.append("g"),s=a.insert("rect").attr("class","background").attr("style","stroke: none"),l=a.append("text").attr("y","-10.1"),u=0;for(let h of r){let f=o(p=>W8e(a,1.1,p)<=t,"checkWidth"),d=f(h)?[h]:nK(h,f);for(let p of d){let m=AD(l,u,1.1);_D(m,p),u++}}if(n){let h=l.node().getBBox(),f=2;return s.attr("x",h.x-f).attr("y",h.y-f).attr("width",h.width+2*f).attr("height",h.height+2*f),a.node()}else return l.node()}function _D(t,e){t.text(""),e.forEach((r,n)=>{let i=t.append("tspan").attr("font-style",r.type==="em"?"italic":"normal").attr("class","text-inner-tspan").attr("font-weight",r.type==="strong"?"bold":"normal");n===0?i.text(r.content):i.text(" "+r.content)})}function DD(t){return t.replace(/fa[bklrs]?:fa-[\w-]+/g,e=>``)}var Hn,to=N(()=>{"use strict";zt();gr();dr();vt();tK();ir();iK();o(aK,"applyStyle");o(H8e,"addHtmlSpan");o(AD,"createTspan");o(W8e,"computeWidthOfText");o(sK,"computeDimensionOfText");o(q8e,"createFormattedText");o(_D,"updateTextContentAndStyles");o(DD,"replaceIconSubstring");Hn=o(async(t,e="",{style:r="",isTitle:n=!1,classes:i="",useHtmlLabels:a=!0,isNode:s=!0,width:l=200,addSvgBackground:u=!1}={},h)=>{if(Y.debug("XYZ createText",e,r,n,i,a,s,"addSvgBackground: ",u),a){let f=eK(e,h),d=DD(na(f)),p=e.replace(/\\\\/g,"\\"),m={isNode:s,label:pi(e)?p:d,labelStyle:r.replace("fill:","color:")};return await H8e(t,m,l,i,u)}else{let f=e.replace(//g,"
    "),d=Jj(f.replace("
    ","
    "),h),p=q8e(l,t,d,e?u:!1);if(s){/stroke:/.exec(r)&&(r=r.replace("stroke:","lineColor:"));let m=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");Ge(p).attr("style",m)}else{let m=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/background:/g,"fill:");Ge(p).select("rect").attr("style",m.replace(/background:/g,"fill:"));let g=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");Ge(p).select("text").attr("style",g)}return p}},"createText")});function Xt(t){let e=t.map((r,n)=>`${n===0?"M":"L"}${r.x},${r.y}`);return e.push("Z"),e.join(" ")}function Fo(t,e,r,n,i,a){let s=[],u=r-t,h=n-e,f=u/a,d=2*Math.PI/f,p=e+h/2;for(let m=0;m<=50;m++){let g=m/50,y=t+g*u,v=p+i*Math.sin(d*(y-t));s.push({x:y,y:v})}return s}function Lw(t,e,r,n,i,a){let s=[],l=i*Math.PI/180,f=(a*Math.PI/180-l)/(n-1);for(let d=0;d{"use strict";to();zt();dr();Ya();gr();ir();pt=o(async(t,e,r)=>{let n,i=e.useHtmlLabels||fr(me()?.htmlLabels);r?n=r:n="node default";let a=t.insert("g").attr("class",n).attr("id",e.domId||e.id),s=a.insert("g").attr("class","label").attr("style",$n(e.labelStyle)),l;e.label===void 0?l="":l=typeof e.label=="string"?e.label:e.label[0];let u=await Hn(s,Tr(na(l),me()),{useHtmlLabels:i,width:e.width||me().flowchart?.wrappingWidth,cssClasses:"markdown-node-label",style:e.labelStyle,addSvgBackground:!!e.icon||!!e.img}),h=u.getBBox(),f=(e?.padding??0)/2;if(i){let d=u.children[0],p=Ge(u),m=d.getElementsByTagName("img");if(m){let g=l.replace(/]*>/g,"").trim()==="";await Promise.all([...m].map(y=>new Promise(v=>{function x(){if(y.style.display="flex",y.style.flexDirection="column",g){let b=me().fontSize?me().fontSize:window.getComputedStyle(document.body).fontSize,w=5,[C=or.fontSize]=Bo(b),T=C*w+"px";y.style.minWidth=T,y.style.maxWidth=T}else y.style.width="100%";v(y)}o(x,"setupImage"),setTimeout(()=>{y.complete&&x()}),y.addEventListener("error",x),y.addEventListener("load",x)})))}h=d.getBoundingClientRect(),p.attr("width",h.width),p.attr("height",h.height)}return i?s.attr("transform","translate("+-h.width/2+", "+-h.height/2+")"):s.attr("transform","translate(0, "+-h.height/2+")"),e.centerLabel&&s.attr("transform","translate("+-h.width/2+", "+-h.height/2+")"),s.insert("rect",":first-child"),{shapeSvg:a,bbox:h,halfPadding:f,label:s}},"labelHelper"),Dw=o(async(t,e,r)=>{let n=r.useHtmlLabels||fr(me()?.flowchart?.htmlLabels),i=t.insert("g").attr("class","label").attr("style",r.labelStyle||""),a=await Hn(i,Tr(na(e),me()),{useHtmlLabels:n,width:r.width||me()?.flowchart?.wrappingWidth,style:r.labelStyle,addSvgBackground:!!r.icon||!!r.img}),s=a.getBBox(),l=r.padding/2;if(fr(me()?.flowchart?.htmlLabels)){let u=a.children[0],h=Ge(a);s=u.getBoundingClientRect(),h.attr("width",s.width),h.attr("height",s.height)}return n?i.attr("transform","translate("+-s.width/2+", "+-s.height/2+")"):i.attr("transform","translate(0, "+-s.height/2+")"),r.centerLabel&&i.attr("transform","translate("+-s.width/2+", "+-s.height/2+")"),i.insert("rect",":first-child"),{shapeSvg:t,bbox:s,halfPadding:l,label:i}},"insertLabel"),je=o((t,e)=>{let r=e.node().getBBox();t.width=r.width,t.height=r.height},"updateNodeBounds"),ht=o((t,e)=>(t.look==="handDrawn"?"rough-node":"node")+" "+t.cssClasses+" "+(e||""),"getNodeClasses");o(Xt,"createPathFromPoints");o(Fo,"generateFullSineWavePoints");o(Lw,"generateCirclePoints")});function Y8e(t,e){return t.intersect(e)}var oK,lK=N(()=>{"use strict";o(Y8e,"intersectNode");oK=Y8e});function X8e(t,e,r,n){var i=t.x,a=t.y,s=i-n.x,l=a-n.y,u=Math.sqrt(e*e*l*l+r*r*s*s),h=Math.abs(e*r*s/u);n.x{"use strict";o(X8e,"intersectEllipse");Rw=X8e});function j8e(t,e,r){return Rw(t,e,e,r)}var cK,uK=N(()=>{"use strict";LD();o(j8e,"intersectCircle");cK=j8e});function K8e(t,e,r,n){var i,a,s,l,u,h,f,d,p,m,g,y,v,x,b;if(i=e.y-t.y,s=t.x-e.x,u=e.x*t.y-t.x*e.y,p=i*r.x+s*r.y+u,m=i*n.x+s*n.y+u,!(p!==0&&m!==0&&hK(p,m))&&(a=n.y-r.y,l=r.x-n.x,h=n.x*r.y-r.x*n.y,f=a*t.x+l*t.y+h,d=a*e.x+l*e.y+h,!(f!==0&&d!==0&&hK(f,d))&&(g=i*l-a*s,g!==0)))return y=Math.abs(g/2),v=s*h-l*u,x=v<0?(v-y)/g:(v+y)/g,v=a*u-i*h,b=v<0?(v-y)/g:(v+y)/g,{x,y:b}}function hK(t,e){return t*e>0}var fK,dK=N(()=>{"use strict";o(K8e,"intersectLine");o(hK,"sameSign");fK=K8e});function Q8e(t,e,r){let n=t.x,i=t.y,a=[],s=Number.POSITIVE_INFINITY,l=Number.POSITIVE_INFINITY;typeof e.forEach=="function"?e.forEach(function(f){s=Math.min(s,f.x),l=Math.min(l,f.y)}):(s=Math.min(s,e.x),l=Math.min(l,e.y));let u=n-t.width/2-s,h=i-t.height/2-l;for(let f=0;f1&&a.sort(function(f,d){let p=f.x-r.x,m=f.y-r.y,g=Math.sqrt(p*p+m*m),y=d.x-r.x,v=d.y-r.y,x=Math.sqrt(y*y+v*v);return g{"use strict";dK();o(Q8e,"intersectPolygon");pK=Q8e});var Z8e,Vh,RD=N(()=>{"use strict";Z8e=o((t,e)=>{var r=t.x,n=t.y,i=e.x-r,a=e.y-n,s=t.width/2,l=t.height/2,u,h;return Math.abs(a)*s>Math.abs(i)*l?(a<0&&(l=-l),u=a===0?0:l*i/a,h=l):(i<0&&(s=-s),u=s,h=i===0?0:s*a/i),{x:r+u,y:n+h}},"intersectRect"),Vh=Z8e});var Ye,Ht=N(()=>{"use strict";lK();uK();LD();mK();RD();Ye={node:oK,circle:cK,ellipse:Rw,polygon:pK,rect:Vh}});var gK,mc,J8e,ND,Qe,Ke,Ut=N(()=>{"use strict";zt();gK=o(t=>{let{handDrawnSeed:e}=me();return{fill:t,hachureAngle:120,hachureGap:4,fillWeight:2,roughness:.7,stroke:t,seed:e}},"solidStateFill"),mc=o(t=>{let e=J8e([...t.cssCompiledStyles||[],...t.cssStyles||[]]);return{stylesMap:e,stylesArray:[...e]}},"compileStyles"),J8e=o(t=>{let e=new Map;return t.forEach(r=>{let[n,i]=r.split(":");e.set(n.trim(),i?.trim())}),e},"styles2Map"),ND=o(t=>t==="color"||t==="font-size"||t==="font-family"||t==="font-weight"||t==="font-style"||t==="text-decoration"||t==="text-align"||t==="text-transform"||t==="line-height"||t==="letter-spacing"||t==="word-spacing"||t==="text-shadow"||t==="text-overflow"||t==="white-space"||t==="word-wrap"||t==="word-break"||t==="overflow-wrap"||t==="hyphens","isLabelStyle"),Qe=o(t=>{let{stylesArray:e}=mc(t),r=[],n=[],i=[],a=[];return e.forEach(s=>{let l=s[0];ND(l)?r.push(s.join(":")+" !important"):(n.push(s.join(":")+" !important"),l.includes("stroke")&&i.push(s.join(":")+" !important"),l==="fill"&&a.push(s.join(":")+" !important"))}),{labelStyles:r.join(";"),nodeStyles:n.join(";"),stylesArray:e,borderStyles:i,backgroundStyles:a}},"styles2String"),Ke=o((t,e)=>{let{themeVariables:r,handDrawnSeed:n}=me(),{nodeBorder:i,mainBkg:a}=r,{stylesMap:s}=mc(t);return Object.assign({roughness:.7,fill:s.get("fill")||a,fillStyle:"hachure",fillWeight:4,hachureGap:5.2,stroke:s.get("stroke")||i,seed:n,strokeWidth:s.get("stroke-width")?.replace("px","")||1.3,fillLineDash:[0,0]},e)},"userNodeOverrides")});function MD(t,e,r){if(t&&t.length){let[n,i]=e,a=Math.PI/180*r,s=Math.cos(a),l=Math.sin(a);for(let u of t){let[h,f]=u;u[0]=(h-n)*s-(f-i)*l+n,u[1]=(h-n)*l+(f-i)*s+i}}}function e_e(t,e){return t[0]===e[0]&&t[1]===e[1]}function t_e(t,e,r,n=1){let i=r,a=Math.max(e,.1),s=t[0]&&t[0][0]&&typeof t[0][0]=="number"?[t]:t,l=[0,0];if(i)for(let h of s)MD(h,l,i);let u=function(h,f,d){let p=[];for(let b of h){let w=[...b];e_e(w[0],w[w.length-1])||w.push([w[0][0],w[0][1]]),w.length>2&&p.push(w)}let m=[];f=Math.max(f,.1);let g=[];for(let b of p)for(let w=0;wb.yminw.ymin?1:b.xw.x?1:b.ymax===w.ymax?0:(b.ymax-w.ymax)/Math.abs(b.ymax-w.ymax)),!g.length)return m;let y=[],v=g[0].ymin,x=0;for(;y.length||g.length;){if(g.length){let b=-1;for(let w=0;wv);w++)b=w;g.splice(0,b+1).forEach(w=>{y.push({s:v,edge:w})})}if(y=y.filter(b=>!(b.edge.ymax<=v)),y.sort((b,w)=>b.edge.x===w.edge.x?0:(b.edge.x-w.edge.x)/Math.abs(b.edge.x-w.edge.x)),(d!==1||x%f==0)&&y.length>1)for(let b=0;b=y.length)break;let C=y[b].edge,T=y[w].edge;m.push([[Math.round(C.x),v],[Math.round(T.x),v]])}v+=d,y.forEach(b=>{b.edge.x=b.edge.x+d*b.edge.islope}),x++}return m}(s,a,n);if(i){for(let h of s)MD(h,l,-i);(function(h,f,d){let p=[];h.forEach(m=>p.push(...m)),MD(p,f,d)})(u,l,-i)}return u}function x2(t,e){var r;let n=e.hachureAngle+90,i=e.hachureGap;i<0&&(i=4*e.strokeWidth),i=Math.round(Math.max(i,.1));let a=1;return e.roughness>=1&&(((r=e.randomizer)===null||r===void 0?void 0:r.next())||Math.random())>.7&&(a=i),t_e(t,i,n,a||1)}function zw(t){let e=t[0],r=t[1];return Math.sqrt(Math.pow(e[0]-r[0],2)+Math.pow(e[1]-r[1],2))}function OD(t,e){return t.type===e}function jD(t){let e=[],r=function(s){let l=new Array;for(;s!=="";)if(s.match(/^([ \t\r\n,]+)/))s=s.substr(RegExp.$1.length);else if(s.match(/^([aAcChHlLmMqQsStTvVzZ])/))l[l.length]={type:r_e,text:RegExp.$1},s=s.substr(RegExp.$1.length);else{if(!s.match(/^(([-+]?[0-9]+(\.[0-9]*)?|[-+]?\.[0-9]+)([eE][-+]?[0-9]+)?)/))return[];l[l.length]={type:ID,text:`${parseFloat(RegExp.$1)}`},s=s.substr(RegExp.$1.length)}return l[l.length]={type:yK,text:""},l}(t),n="BOD",i=0,a=r[i];for(;!OD(a,yK);){let s=0,l=[];if(n==="BOD"){if(a.text!=="M"&&a.text!=="m")return jD("M0,0"+t);i++,s=Nw[a.text],n=a.text}else OD(a,ID)?s=Nw[n]:(i++,s=Nw[a.text],n=a.text);if(!(i+sf%2?h+r:h+e);a.push({key:"C",data:u}),e=u[4],r=u[5];break}case"Q":a.push({key:"Q",data:[...l]}),e=l[2],r=l[3];break;case"q":{let u=l.map((h,f)=>f%2?h+r:h+e);a.push({key:"Q",data:u}),e=u[2],r=u[3];break}case"A":a.push({key:"A",data:[...l]}),e=l[5],r=l[6];break;case"a":e+=l[5],r+=l[6],a.push({key:"A",data:[l[0],l[1],l[2],l[3],l[4],e,r]});break;case"H":a.push({key:"H",data:[...l]}),e=l[0];break;case"h":e+=l[0],a.push({key:"H",data:[e]});break;case"V":a.push({key:"V",data:[...l]}),r=l[0];break;case"v":r+=l[0],a.push({key:"V",data:[r]});break;case"S":a.push({key:"S",data:[...l]}),e=l[2],r=l[3];break;case"s":{let u=l.map((h,f)=>f%2?h+r:h+e);a.push({key:"S",data:u}),e=u[2],r=u[3];break}case"T":a.push({key:"T",data:[...l]}),e=l[0],r=l[1];break;case"t":e+=l[0],r+=l[1],a.push({key:"T",data:[e,r]});break;case"Z":case"z":a.push({key:"Z",data:[]}),e=n,r=i}return a}function CK(t){let e=[],r="",n=0,i=0,a=0,s=0,l=0,u=0;for(let{key:h,data:f}of t){switch(h){case"M":e.push({key:"M",data:[...f]}),[n,i]=f,[a,s]=f;break;case"C":e.push({key:"C",data:[...f]}),n=f[4],i=f[5],l=f[2],u=f[3];break;case"L":e.push({key:"L",data:[...f]}),[n,i]=f;break;case"H":n=f[0],e.push({key:"L",data:[n,i]});break;case"V":i=f[0],e.push({key:"L",data:[n,i]});break;case"S":{let d=0,p=0;r==="C"||r==="S"?(d=n+(n-l),p=i+(i-u)):(d=n,p=i),e.push({key:"C",data:[d,p,...f]}),l=f[0],u=f[1],n=f[2],i=f[3];break}case"T":{let[d,p]=f,m=0,g=0;r==="Q"||r==="T"?(m=n+(n-l),g=i+(i-u)):(m=n,g=i);let y=n+2*(m-n)/3,v=i+2*(g-i)/3,x=d+2*(m-d)/3,b=p+2*(g-p)/3;e.push({key:"C",data:[y,v,x,b,d,p]}),l=m,u=g,n=d,i=p;break}case"Q":{let[d,p,m,g]=f,y=n+2*(d-n)/3,v=i+2*(p-i)/3,x=m+2*(d-m)/3,b=g+2*(p-g)/3;e.push({key:"C",data:[y,v,x,b,m,g]}),l=d,u=p,n=m,i=g;break}case"A":{let d=Math.abs(f[0]),p=Math.abs(f[1]),m=f[2],g=f[3],y=f[4],v=f[5],x=f[6];d===0||p===0?(e.push({key:"C",data:[n,i,v,x,v,x]}),n=v,i=x):(n!==v||i!==x)&&(AK(n,i,v,x,d,p,m,g,y).forEach(function(b){e.push({key:"C",data:b})}),n=v,i=x);break}case"Z":e.push({key:"Z",data:[]}),n=a,i=s}r=h}return e}function g2(t,e,r){return[t*Math.cos(r)-e*Math.sin(r),t*Math.sin(r)+e*Math.cos(r)]}function AK(t,e,r,n,i,a,s,l,u,h){let f=(d=s,Math.PI*d/180);var d;let p=[],m=0,g=0,y=0,v=0;if(h)[m,g,y,v]=h;else{[t,e]=g2(t,e,-f),[r,n]=g2(r,n,-f);let L=(t-r)/2,R=(e-n)/2,O=L*L/(i*i)+R*R/(a*a);O>1&&(O=Math.sqrt(O),i*=O,a*=O);let M=i*i,B=a*a,F=M*B-M*R*R-B*L*L,P=M*R*R+B*L*L,z=(l===u?-1:1)*Math.sqrt(Math.abs(F/P));y=z*i*R/a+(t+r)/2,v=z*-a*L/i+(e+n)/2,m=Math.asin(parseFloat(((e-v)/a).toFixed(9))),g=Math.asin(parseFloat(((n-v)/a).toFixed(9))),tg&&(m-=2*Math.PI),!u&&g>m&&(g-=2*Math.PI)}let x=g-m;if(Math.abs(x)>120*Math.PI/180){let L=g,R=r,O=n;g=u&&g>m?m+120*Math.PI/180*1:m+120*Math.PI/180*-1,p=AK(r=y+i*Math.cos(g),n=v+a*Math.sin(g),R,O,i,a,s,0,u,[g,L,y,v])}x=g-m;let b=Math.cos(m),w=Math.sin(m),C=Math.cos(g),T=Math.sin(g),E=Math.tan(x/4),A=4/3*i*E,S=4/3*a*E,_=[t,e],I=[t+A*w,e-S*b],D=[r+A*T,n-S*C],k=[r,n];if(I[0]=2*_[0]-I[0],I[1]=2*_[1]-I[1],h)return[I,D,k].concat(p);{p=[I,D,k].concat(p);let L=[];for(let R=0;R2){let i=[];for(let a=0;a2*Math.PI&&(m=0,g=2*Math.PI);let y=2*Math.PI/u.curveStepCount,v=Math.min(y/2,(g-m)/2),x=kK(v,h,f,d,p,m,g,1,u);if(!u.disableMultiStroke){let b=kK(v,h,f,d,p,m,g,1.5,u);x.push(...b)}return s&&(l?x.push(...Uh(h,f,h+d*Math.cos(m),f+p*Math.sin(m),u),...Uh(h,f,h+d*Math.cos(g),f+p*Math.sin(g),u)):x.push({op:"lineTo",data:[h,f]},{op:"lineTo",data:[h+d*Math.cos(m),f+p*Math.sin(m)]})),{type:"path",ops:x}}function bK(t,e){let r=CK(SK(jD(t))),n=[],i=[0,0],a=[0,0];for(let{key:s,data:l}of r)switch(s){case"M":a=[l[0],l[1]],i=[l[0],l[1]];break;case"L":n.push(...Uh(a[0],a[1],l[0],l[1],e)),a=[l[0],l[1]];break;case"C":{let[u,h,f,d,p,m]=l;n.push(...a_e(u,h,f,d,p,m,a,e)),a=[p,m];break}case"Z":n.push(...Uh(a[0],a[1],i[0],i[1],e)),a=[i[0],i[1]]}return{type:"path",ops:n}}function PD(t,e){let r=[];for(let n of t)if(n.length){let i=e.maxRandomnessOffset||0,a=n.length;if(a>2){r.push({op:"move",data:[n[0][0]+nr(i,e),n[0][1]+nr(i,e)]});for(let s=1;s500?.4:-.0016668*u+1.233334;let f=i.maxRandomnessOffset||0;f*f*100>l&&(f=u/10);let d=f/2,p=.2+.2*LK(i),m=i.bowing*i.maxRandomnessOffset*(n-e)/200,g=i.bowing*i.maxRandomnessOffset*(t-r)/200;m=nr(m,i,h),g=nr(g,i,h);let y=[],v=o(()=>nr(d,i,h),"M"),x=o(()=>nr(f,i,h),"k"),b=i.preserveVertices;return a&&(s?y.push({op:"move",data:[t+(b?0:v()),e+(b?0:v())]}):y.push({op:"move",data:[t+(b?0:nr(f,i,h)),e+(b?0:nr(f,i,h))]})),s?y.push({op:"bcurveTo",data:[m+t+(r-t)*p+v(),g+e+(n-e)*p+v(),m+t+2*(r-t)*p+v(),g+e+2*(n-e)*p+v(),r+(b?0:v()),n+(b?0:v())]}):y.push({op:"bcurveTo",data:[m+t+(r-t)*p+x(),g+e+(n-e)*p+x(),m+t+2*(r-t)*p+x(),g+e+2*(n-e)*p+x(),r+(b?0:x()),n+(b?0:x())]}),y}function Mw(t,e,r){if(!t.length)return[];let n=[];n.push([t[0][0]+nr(e,r),t[0][1]+nr(e,r)]),n.push([t[0][0]+nr(e,r),t[0][1]+nr(e,r)]);for(let i=1;i3){let a=[],s=1-r.curveTightness;i.push({op:"move",data:[t[1][0],t[1][1]]});for(let l=1;l+21&&i.push(l)):i.push(l),i.push(t[e+3])}else{let u=t[e+0],h=t[e+1],f=t[e+2],d=t[e+3],p=Od(u,h,.5),m=Od(h,f,.5),g=Od(f,d,.5),y=Od(p,m,.5),v=Od(m,g,.5),x=Od(y,v,.5);qD([u,p,y,x],0,r,i),qD([x,v,g,d],0,r,i)}var a,s;return i}function o_e(t,e){return $w(t,0,t.length,e)}function $w(t,e,r,n,i){let a=i||[],s=t[e],l=t[r-1],u=0,h=1;for(let f=e+1;fu&&(u=d,h=f)}return Math.sqrt(u)>n?($w(t,e,h+1,n,a),$w(t,h,r,n,a)):(a.length||a.push(s),a.push(l)),a}function BD(t,e=.15,r){let n=[],i=(t.length-1)/3;for(let a=0;a0?$w(n,0,n.length,r):n}var v2,FD,$D,zD,GD,VD,Rs,UD,r_e,ID,yK,Nw,n_e,ro,pm,YD,Iw,XD,Xe,Wt=N(()=>{"use strict";o(MD,"t");o(e_e,"e");o(t_e,"s");o(x2,"n");v2=class{static{o(this,"o")}constructor(e){this.helper=e}fillPolygons(e,r){return this._fillPolygons(e,r)}_fillPolygons(e,r){let n=x2(e,r);return{type:"fillSketch",ops:this.renderLines(n,r)}}renderLines(e,r){let n=[];for(let i of e)n.push(...this.helper.doubleLineOps(i[0][0],i[0][1],i[1][0],i[1][1],r));return n}};o(zw,"a");FD=class extends v2{static{o(this,"h")}fillPolygons(e,r){let n=r.hachureGap;n<0&&(n=4*r.strokeWidth),n=Math.max(n,.1);let i=x2(e,Object.assign({},r,{hachureGap:n})),a=Math.PI/180*r.hachureAngle,s=[],l=.5*n*Math.cos(a),u=.5*n*Math.sin(a);for(let[h,f]of i)zw([h,f])&&s.push([[h[0]-l,h[1]+u],[...f]],[[h[0]+l,h[1]-u],[...f]]);return{type:"fillSketch",ops:this.renderLines(s,r)}}},$D=class extends v2{static{o(this,"r")}fillPolygons(e,r){let n=this._fillPolygons(e,r),i=Object.assign({},r,{hachureAngle:r.hachureAngle+90}),a=this._fillPolygons(e,i);return n.ops=n.ops.concat(a.ops),n}},zD=class{static{o(this,"i")}constructor(e){this.helper=e}fillPolygons(e,r){let n=x2(e,r=Object.assign({},r,{hachureAngle:0}));return this.dotsOnLines(n,r)}dotsOnLines(e,r){let n=[],i=r.hachureGap;i<0&&(i=4*r.strokeWidth),i=Math.max(i,.1);let a=r.fillWeight;a<0&&(a=r.strokeWidth/2);let s=i/4;for(let l of e){let u=zw(l),h=u/i,f=Math.ceil(h)-1,d=u-f*i,p=(l[0][0]+l[1][0])/2-i/4,m=Math.min(l[0][1],l[1][1]);for(let g=0;g{let l=zw(s),u=Math.floor(l/(n+i)),h=(l+i-u*(n+i))/2,f=s[0],d=s[1];f[0]>d[0]&&(f=s[1],d=s[0]);let p=Math.atan((d[1]-f[1])/(d[0]-f[0]));for(let m=0;m{let s=zw(a),l=Math.round(s/(2*r)),u=a[0],h=a[1];u[0]>h[0]&&(u=a[1],h=a[0]);let f=Math.atan((h[1]-u[1])/(h[0]-u[0]));for(let d=0;d2*Math.PI&&(A=0,S=2*Math.PI);let _=(S-A)/b.curveStepCount,I=[];for(let D=A;D<=S;D+=_)I.push([w+T*Math.cos(D),C+E*Math.sin(D)]);return I.push([w+T*Math.cos(S),C+E*Math.sin(S)]),I.push([w,C]),dm([I],b)}(e,r,n,i,a,s,h));return h.stroke!==ro&&f.push(d),this._d("arc",f,h)}curve(e,r){let n=this._o(r),i=[],a=vK(e,n);if(n.fill&&n.fill!==ro)if(n.fillStyle==="solid"){let s=vK(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(s.ops)})}else{let s=[],l=e;if(l.length){let u=typeof l[0][0]=="number"?[l]:l;for(let h of u)h.length<3?s.push(...h):h.length===3?s.push(...BD(EK([h[0],h[0],h[1],h[2]]),10,(1+n.roughness)/2)):s.push(...BD(EK(h),10,(1+n.roughness)/2))}s.length&&i.push(dm([s],n))}return n.stroke!==ro&&i.push(a),this._d("curve",i,n)}polygon(e,r){let n=this._o(r),i=[],a=Ow(e,!0,n);return n.fill&&(n.fillStyle==="solid"?i.push(PD([e],n)):i.push(dm([e],n))),n.stroke!==ro&&i.push(a),this._d("polygon",i,n)}path(e,r){let n=this._o(r),i=[];if(!e)return this._d("path",i,n);e=(e||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");let a=n.fill&&n.fill!=="transparent"&&n.fill!==ro,s=n.stroke!==ro,l=!!(n.simplification&&n.simplification<1),u=function(f,d,p){let m=CK(SK(jD(f))),g=[],y=[],v=[0,0],x=[],b=o(()=>{x.length>=4&&y.push(...BD(x,d)),x=[]},"i"),w=o(()=>{b(),y.length&&(g.push(y),y=[])},"c");for(let{key:T,data:E}of m)switch(T){case"M":w(),v=[E[0],E[1]],y.push(v);break;case"L":b(),y.push([E[0],E[1]]);break;case"C":if(!x.length){let A=y.length?y[y.length-1]:v;x.push([A[0],A[1]])}x.push([E[0],E[1]]),x.push([E[2],E[3]]),x.push([E[4],E[5]]);break;case"Z":b(),y.push([v[0],v[1]])}if(w(),!p)return g;let C=[];for(let T of g){let E=o_e(T,p);E.length&&C.push(E)}return C}(e,1,l?4-4*(n.simplification||1):(1+n.roughness)/2),h=bK(e,n);if(a)if(n.fillStyle==="solid")if(u.length===1){let f=bK(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(f.ops)})}else i.push(PD(u,n));else i.push(dm(u,n));return s&&(l?u.forEach(f=>{i.push(Ow(f,!1,n))}):i.push(h)),this._d("path",i,n)}opsToPath(e,r){let n="";for(let i of e.ops){let a=typeof r=="number"&&r>=0?i.data.map(s=>+s.toFixed(r)):i.data;switch(i.op){case"move":n+=`M${a[0]} ${a[1]} `;break;case"bcurveTo":n+=`C${a[0]} ${a[1]}, ${a[2]} ${a[3]}, ${a[4]} ${a[5]} `;break;case"lineTo":n+=`L${a[0]} ${a[1]} `}}return n.trim()}toPaths(e){let r=e.sets||[],n=e.options||this.defaultOptions,i=[];for(let a of r){let s=null;switch(a.type){case"path":s={d:this.opsToPath(a),stroke:n.stroke,strokeWidth:n.strokeWidth,fill:ro};break;case"fillPath":s={d:this.opsToPath(a),stroke:ro,strokeWidth:0,fill:n.fill||ro};break;case"fillSketch":s=this.fillSketch(a,n)}s&&i.push(s)}return i}fillSketch(e,r){let n=r.fillWeight;return n<0&&(n=r.strokeWidth/2),{d:this.opsToPath(e),stroke:r.fill||ro,strokeWidth:n,fill:ro}}_mergedShape(e){return e.filter((r,n)=>n===0||r.op!=="move")}},YD=class{static{o(this,"st")}constructor(e,r){this.canvas=e,this.ctx=this.canvas.getContext("2d"),this.gen=new pm(r)}draw(e){let r=e.sets||[],n=e.options||this.getDefaultOptions(),i=this.ctx,a=e.options.fixedDecimalPlaceDigits;for(let s of r)switch(s.type){case"path":i.save(),i.strokeStyle=n.stroke==="none"?"transparent":n.stroke,i.lineWidth=n.strokeWidth,n.strokeLineDash&&i.setLineDash(n.strokeLineDash),n.strokeLineDashOffset&&(i.lineDashOffset=n.strokeLineDashOffset),this._drawToContext(i,s,a),i.restore();break;case"fillPath":{i.save(),i.fillStyle=n.fill||"";let l=e.shape==="curve"||e.shape==="polygon"||e.shape==="path"?"evenodd":"nonzero";this._drawToContext(i,s,a,l),i.restore();break}case"fillSketch":this.fillSketch(i,s,n)}}fillSketch(e,r,n){let i=n.fillWeight;i<0&&(i=n.strokeWidth/2),e.save(),n.fillLineDash&&e.setLineDash(n.fillLineDash),n.fillLineDashOffset&&(e.lineDashOffset=n.fillLineDashOffset),e.strokeStyle=n.fill||"",e.lineWidth=i,this._drawToContext(e,r,n.fixedDecimalPlaceDigits),e.restore()}_drawToContext(e,r,n,i="nonzero"){e.beginPath();for(let a of r.ops){let s=typeof n=="number"&&n>=0?a.data.map(l=>+l.toFixed(n)):a.data;switch(a.op){case"move":e.moveTo(s[0],s[1]);break;case"bcurveTo":e.bezierCurveTo(s[0],s[1],s[2],s[3],s[4],s[5]);break;case"lineTo":e.lineTo(s[0],s[1])}}r.type==="fillPath"?e.fill(i):e.stroke()}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}line(e,r,n,i,a){let s=this.gen.line(e,r,n,i,a);return this.draw(s),s}rectangle(e,r,n,i,a){let s=this.gen.rectangle(e,r,n,i,a);return this.draw(s),s}ellipse(e,r,n,i,a){let s=this.gen.ellipse(e,r,n,i,a);return this.draw(s),s}circle(e,r,n,i){let a=this.gen.circle(e,r,n,i);return this.draw(a),a}linearPath(e,r){let n=this.gen.linearPath(e,r);return this.draw(n),n}polygon(e,r){let n=this.gen.polygon(e,r);return this.draw(n),n}arc(e,r,n,i,a,s,l=!1,u){let h=this.gen.arc(e,r,n,i,a,s,l,u);return this.draw(h),h}curve(e,r){let n=this.gen.curve(e,r);return this.draw(n),n}path(e,r){let n=this.gen.path(e,r);return this.draw(n),n}},Iw="http://www.w3.org/2000/svg",XD=class{static{o(this,"ot")}constructor(e,r){this.svg=e,this.gen=new pm(r)}draw(e){let r=e.sets||[],n=e.options||this.getDefaultOptions(),i=this.svg.ownerDocument||window.document,a=i.createElementNS(Iw,"g"),s=e.options.fixedDecimalPlaceDigits;for(let l of r){let u=null;switch(l.type){case"path":u=i.createElementNS(Iw,"path"),u.setAttribute("d",this.opsToPath(l,s)),u.setAttribute("stroke",n.stroke),u.setAttribute("stroke-width",n.strokeWidth+""),u.setAttribute("fill","none"),n.strokeLineDash&&u.setAttribute("stroke-dasharray",n.strokeLineDash.join(" ").trim()),n.strokeLineDashOffset&&u.setAttribute("stroke-dashoffset",`${n.strokeLineDashOffset}`);break;case"fillPath":u=i.createElementNS(Iw,"path"),u.setAttribute("d",this.opsToPath(l,s)),u.setAttribute("stroke","none"),u.setAttribute("stroke-width","0"),u.setAttribute("fill",n.fill||""),e.shape!=="curve"&&e.shape!=="polygon"||u.setAttribute("fill-rule","evenodd");break;case"fillSketch":u=this.fillSketch(i,l,n)}u&&a.appendChild(u)}return a}fillSketch(e,r,n){let i=n.fillWeight;i<0&&(i=n.strokeWidth/2);let a=e.createElementNS(Iw,"path");return a.setAttribute("d",this.opsToPath(r,n.fixedDecimalPlaceDigits)),a.setAttribute("stroke",n.fill||""),a.setAttribute("stroke-width",i+""),a.setAttribute("fill","none"),n.fillLineDash&&a.setAttribute("stroke-dasharray",n.fillLineDash.join(" ").trim()),n.fillLineDashOffset&&a.setAttribute("stroke-dashoffset",`${n.fillLineDashOffset}`),a}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}opsToPath(e,r){return this.gen.opsToPath(e,r)}line(e,r,n,i,a){let s=this.gen.line(e,r,n,i,a);return this.draw(s)}rectangle(e,r,n,i,a){let s=this.gen.rectangle(e,r,n,i,a);return this.draw(s)}ellipse(e,r,n,i,a){let s=this.gen.ellipse(e,r,n,i,a);return this.draw(s)}circle(e,r,n,i){let a=this.gen.circle(e,r,n,i);return this.draw(a)}linearPath(e,r){let n=this.gen.linearPath(e,r);return this.draw(n)}polygon(e,r){let n=this.gen.polygon(e,r);return this.draw(n)}arc(e,r,n,i,a,s,l=!1,u){let h=this.gen.arc(e,r,n,i,a,s,l,u);return this.draw(h)}curve(e,r){let n=this.gen.curve(e,r);return this.draw(n)}path(e,r){let n=this.gen.path(e,r);return this.draw(n)}},Xe={canvas:o((t,e)=>new YD(t,e),"canvas"),svg:o((t,e)=>new XD(t,e),"svg"),generator:o(t=>new pm(t),"generator"),newSeed:o(()=>pm.newSeed(),"newSeed")}});function RK(t,e){let{labelStyles:r}=Qe(e);e.labelStyle=r;let n=ht(e),i=n;n||(i="anchor");let a=t.insert("g").attr("class",i).attr("id",e.domId||e.id),s=1,{cssStyles:l}=e,u=Xe.svg(a),h=Ke(e,{fill:"black",stroke:"none",fillStyle:"solid"});e.look!=="handDrawn"&&(h.roughness=0);let f=u.circle(0,0,s*2,h),d=a.insert(()=>f,":first-child");return d.attr("class","anchor").attr("style",$n(l)),je(e,d),e.intersect=function(p){return Y.info("Circle intersect",e,s,p),Ye.circle(e,s,p)},a}var NK=N(()=>{"use strict";vt();Ft();Ht();Ut();Wt();ir();o(RK,"anchor")});function MK(t,e,r,n,i,a,s){let u=(t+r)/2,h=(e+n)/2,f=Math.atan2(n-e,r-t),d=(r-t)/2,p=(n-e)/2,m=d/i,g=p/a,y=Math.sqrt(m**2+g**2);if(y>1)throw new Error("The given radii are too small to create an arc between the points.");let v=Math.sqrt(1-y**2),x=u+v*a*Math.sin(f)*(s?-1:1),b=h-v*i*Math.cos(f)*(s?-1:1),w=Math.atan2((e-b)/a,(t-x)/i),T=Math.atan2((n-b)/a,(r-x)/i)-w;s&&T<0&&(T+=2*Math.PI),!s&&T>0&&(T-=2*Math.PI);let E=[];for(let A=0;A<20;A++){let S=A/19,_=w+S*T,I=x+i*Math.cos(_),D=b+a*Math.sin(_);E.push({x:I,y:D})}return E}async function IK(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await pt(t,e,ht(e)),s=a.width+e.padding+20,l=a.height+e.padding,u=l/2,h=u/(2.5+l/50),{cssStyles:f}=e,d=[{x:s/2,y:-l/2},{x:-s/2,y:-l/2},...MK(-s/2,-l/2,-s/2,l/2,h,u,!1),{x:s/2,y:l/2},...MK(s/2,l/2,s/2,-l/2,h,u,!0)],p=Xe.svg(i),m=Ke(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=Xt(d),y=p.path(g,m),v=i.insert(()=>y,":first-child");return v.attr("class","basic label-container"),f&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",f),n&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",n),v.attr("transform",`translate(${h/2}, 0)`),je(e,v),e.intersect=function(x){return Ye.polygon(e,d,x)},i}var OK=N(()=>{"use strict";Ft();Ht();Ut();Wt();o(MK,"generateArcPoints");o(IK,"bowTieRect")});function La(t,e,r,n){return t.insert("polygon",":first-child").attr("points",n.map(function(i){return i.x+","+i.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-e/2+","+r/2+")")}var _u=N(()=>{"use strict";o(La,"insertPolygonShape")});async function PK(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await pt(t,e,ht(e)),s=a.height+e.padding,l=12,u=a.width+e.padding+l,h=0,f=u,d=-s,p=0,m=[{x:h+l,y:d},{x:f,y:d},{x:f,y:p},{x:h,y:p},{x:h,y:d+l},{x:h+l,y:d}],g,{cssStyles:y}=e;if(e.look==="handDrawn"){let v=Xe.svg(i),x=Ke(e,{}),b=Xt(m),w=v.path(b,x);g=i.insert(()=>w,":first-child").attr("transform",`translate(${-u/2}, ${s/2})`),y&&g.attr("style",y)}else g=La(i,u,s,m);return n&&g.attr("style",n),je(e,g),e.intersect=function(v){return Ye.polygon(e,m,v)},i}var BK=N(()=>{"use strict";Ft();Ht();Ut();Wt();_u();Ft();o(PK,"card")});function FK(t,e){let{nodeStyles:r}=Qe(e);e.label="";let n=t.insert("g").attr("class",ht(e)).attr("id",e.domId??e.id),{cssStyles:i}=e,a=Math.max(28,e.width??0),s=[{x:0,y:a/2},{x:a/2,y:0},{x:0,y:-a/2},{x:-a/2,y:0}],l=Xe.svg(n),u=Ke(e,{});e.look!=="handDrawn"&&(u.roughness=0,u.fillStyle="solid");let h=Xt(s),f=l.path(h,u),d=n.insert(()=>f,":first-child");return i&&e.look!=="handDrawn"&&d.selectAll("path").attr("style",i),r&&e.look!=="handDrawn"&&d.selectAll("path").attr("style",r),e.width=28,e.height=28,e.intersect=function(p){return Ye.polygon(e,s,p)},n}var $K=N(()=>{"use strict";Ht();Wt();Ut();Ft();o(FK,"choice")});async function zK(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,halfPadding:s}=await pt(t,e,ht(e)),l=a.width/2+s,u,{cssStyles:h}=e;if(e.look==="handDrawn"){let f=Xe.svg(i),d=Ke(e,{}),p=f.circle(0,0,l*2,d);u=i.insert(()=>p,":first-child"),u.attr("class","basic label-container").attr("style",$n(h))}else u=i.insert("circle",":first-child").attr("class","basic label-container").attr("style",n).attr("r",l).attr("cx",0).attr("cy",0);return je(e,u),e.intersect=function(f){return Y.info("Circle intersect",e,l,f),Ye.circle(e,l,f)},i}var GK=N(()=>{"use strict";vt();Ft();Ht();Ut();Wt();ir();o(zK,"circle")});function l_e(t){let e=Math.cos(Math.PI/4),r=Math.sin(Math.PI/4),n=t*2,i={x:n/2*e,y:n/2*r},a={x:-(n/2)*e,y:n/2*r},s={x:-(n/2)*e,y:-(n/2)*r},l={x:n/2*e,y:-(n/2)*r};return`M ${a.x},${a.y} L ${l.x},${l.y} + M ${i.x},${i.y} L ${s.x},${s.y}`}function VK(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r,e.label="";let i=t.insert("g").attr("class",ht(e)).attr("id",e.domId??e.id),a=Math.max(30,e?.width??0),{cssStyles:s}=e,l=Xe.svg(i),u=Ke(e,{});e.look!=="handDrawn"&&(u.roughness=0,u.fillStyle="solid");let h=l.circle(0,0,a*2,u),f=l_e(a),d=l.path(f,u),p=i.insert(()=>h,":first-child");return p.insert(()=>d),s&&e.look!=="handDrawn"&&p.selectAll("path").attr("style",s),n&&e.look!=="handDrawn"&&p.selectAll("path").attr("style",n),je(e,p),e.intersect=function(m){return Y.info("crossedCircle intersect",e,{radius:a,point:m}),Ye.circle(e,a,m)},i}var UK=N(()=>{"use strict";vt();Ft();Ut();Wt();Ht();o(l_e,"createLine");o(VK,"crossedCircle")});function Hh(t,e,r,n=100,i=0,a=180){let s=[],l=i*Math.PI/180,f=(a*Math.PI/180-l)/(n-1);for(let d=0;dw,":first-child").attr("stroke-opacity",0),C.insert(()=>x,":first-child"),C.attr("class","text"),f&&e.look!=="handDrawn"&&C.selectAll("path").attr("style",f),n&&e.look!=="handDrawn"&&C.selectAll("path").attr("style",n),C.attr("transform",`translate(${h}, 0)`),s.attr("transform",`translate(${-l/2+h-(a.x-(a.left??0))},${-u/2+(e.padding??0)/2-(a.y-(a.top??0))})`),je(e,C),e.intersect=function(T){return Ye.polygon(e,p,T)},i}var WK=N(()=>{"use strict";Ft();Ht();Ut();Wt();o(Hh,"generateCirclePoints");o(HK,"curlyBraceLeft")});function Wh(t,e,r,n=100,i=0,a=180){let s=[],l=i*Math.PI/180,f=(a*Math.PI/180-l)/(n-1);for(let d=0;dw,":first-child").attr("stroke-opacity",0),C.insert(()=>x,":first-child"),C.attr("class","text"),f&&e.look!=="handDrawn"&&C.selectAll("path").attr("style",f),n&&e.look!=="handDrawn"&&C.selectAll("path").attr("style",n),C.attr("transform",`translate(${-h}, 0)`),s.attr("transform",`translate(${-l/2+(e.padding??0)/2-(a.x-(a.left??0))},${-u/2+(e.padding??0)/2-(a.y-(a.top??0))})`),je(e,C),e.intersect=function(T){return Ye.polygon(e,p,T)},i}var YK=N(()=>{"use strict";Ft();Ht();Ut();Wt();o(Wh,"generateCirclePoints");o(qK,"curlyBraceRight")});function Ra(t,e,r,n=100,i=0,a=180){let s=[],l=i*Math.PI/180,f=(a*Math.PI/180-l)/(n-1);for(let d=0;dA,":first-child").attr("stroke-opacity",0),S.insert(()=>b,":first-child"),S.insert(()=>T,":first-child"),S.attr("class","text"),f&&e.look!=="handDrawn"&&S.selectAll("path").attr("style",f),n&&e.look!=="handDrawn"&&S.selectAll("path").attr("style",n),S.attr("transform",`translate(${h-h/4}, 0)`),s.attr("transform",`translate(${-l/2+(e.padding??0)/2-(a.x-(a.left??0))},${-u/2+(e.padding??0)/2-(a.y-(a.top??0))})`),je(e,S),e.intersect=function(_){return Ye.polygon(e,m,_)},i}var jK=N(()=>{"use strict";Ft();Ht();Ut();Wt();o(Ra,"generateCirclePoints");o(XK,"curlyBraces")});async function KK(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await pt(t,e,ht(e)),s=80,l=20,u=Math.max(s,(a.width+(e.padding??0)*2)*1.25,e?.width??0),h=Math.max(l,a.height+(e.padding??0)*2,e?.height??0),f=h/2,{cssStyles:d}=e,p=Xe.svg(i),m=Ke(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=u,y=h,v=g-f,x=y/4,b=[{x:v,y:0},{x,y:0},{x:0,y:y/2},{x,y},{x:v,y},...Lw(-v,-y/2,f,50,270,90)],w=Xt(b),C=p.path(w,m),T=i.insert(()=>C,":first-child");return T.attr("class","basic label-container"),d&&e.look!=="handDrawn"&&T.selectChildren("path").attr("style",d),n&&e.look!=="handDrawn"&&T.selectChildren("path").attr("style",n),T.attr("transform",`translate(${-u/2}, ${-h/2})`),je(e,T),e.intersect=function(E){return Ye.polygon(e,b,E)},i}var QK=N(()=>{"use strict";Ft();Ht();Ut();Wt();o(KK,"curvedTrapezoid")});async function ZK(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await pt(t,e,ht(e)),l=Math.max(a.width+e.padding,e.width??0),u=l/2,h=u/(2.5+l/50),f=Math.max(a.height+h+e.padding,e.height??0),d,{cssStyles:p}=e;if(e.look==="handDrawn"){let m=Xe.svg(i),g=u_e(0,0,l,f,u,h),y=h_e(0,h,l,f,u,h),v=m.path(g,Ke(e,{})),x=m.path(y,Ke(e,{fill:"none"}));d=i.insert(()=>x,":first-child"),d=i.insert(()=>v,":first-child"),d.attr("class","basic label-container"),p&&d.attr("style",p)}else{let m=c_e(0,0,l,f,u,h);d=i.insert("path",":first-child").attr("d",m).attr("class","basic label-container").attr("style",$n(p)).attr("style",n)}return d.attr("label-offset-y",h),d.attr("transform",`translate(${-l/2}, ${-(f/2+h)})`),je(e,d),s.attr("transform",`translate(${-(a.width/2)-(a.x-(a.left??0))}, ${-(a.height/2)+(e.padding??0)/1.5-(a.y-(a.top??0))})`),e.intersect=function(m){let g=Ye.rect(e,m),y=g.x-(e.x??0);if(u!=0&&(Math.abs(y)<(e.width??0)/2||Math.abs(y)==(e.width??0)/2&&Math.abs(g.y-(e.y??0))>(e.height??0)/2-h)){let v=h*h*(1-y*y/(u*u));v>0&&(v=Math.sqrt(v)),v=h-v,m.y-(e.y??0)>0&&(v=-v),g.y+=v}return g},i}var c_e,u_e,h_e,JK=N(()=>{"use strict";Ft();Ht();Ut();Wt();ir();c_e=o((t,e,r,n,i,a)=>[`M${t},${e+a}`,`a${i},${a} 0,0,0 ${r},0`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`].join(" "),"createCylinderPathD"),u_e=o((t,e,r,n,i,a)=>[`M${t},${e+a}`,`M${t+r},${e+a}`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`].join(" "),"createOuterCylinderPathD"),h_e=o((t,e,r,n,i,a)=>[`M${t-r/2},${-n/2}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createInnerCylinderPathD");o(ZK,"cylinder")});async function eQ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await pt(t,e,ht(e)),l=a.width+e.padding,u=a.height+e.padding,h=u*.2,f=-l/2,d=-u/2-h/2,{cssStyles:p}=e,m=Xe.svg(i),g=Ke(e,{});e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=[{x:f,y:d+h},{x:-f,y:d+h},{x:-f,y:-d},{x:f,y:-d},{x:f,y:d},{x:-f,y:d},{x:-f,y:d+h}],v=m.polygon(y.map(b=>[b.x,b.y]),g),x=i.insert(()=>v,":first-child");return x.attr("class","basic label-container"),p&&e.look!=="handDrawn"&&x.selectAll("path").attr("style",p),n&&e.look!=="handDrawn"&&x.selectAll("path").attr("style",n),s.attr("transform",`translate(${f+(e.padding??0)/2-(a.x-(a.left??0))}, ${d+h+(e.padding??0)/2-(a.y-(a.top??0))})`),je(e,x),e.intersect=function(b){return Ye.rect(e,b)},i}var tQ=N(()=>{"use strict";Ft();Ht();Ut();Wt();o(eQ,"dividedRectangle")});async function rQ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,halfPadding:s}=await pt(t,e,ht(e)),u=a.width/2+s+5,h=a.width/2+s,f,{cssStyles:d}=e;if(e.look==="handDrawn"){let p=Xe.svg(i),m=Ke(e,{roughness:.2,strokeWidth:2.5}),g=Ke(e,{roughness:.2,strokeWidth:1.5}),y=p.circle(0,0,u*2,m),v=p.circle(0,0,h*2,g);f=i.insert("g",":first-child"),f.attr("class",$n(e.cssClasses)).attr("style",$n(d)),f.node()?.appendChild(y),f.node()?.appendChild(v)}else{f=i.insert("g",":first-child");let p=f.insert("circle",":first-child"),m=f.insert("circle");f.attr("class","basic label-container").attr("style",n),p.attr("class","outer-circle").attr("style",n).attr("r",u).attr("cx",0).attr("cy",0),m.attr("class","inner-circle").attr("style",n).attr("r",h).attr("cx",0).attr("cy",0)}return je(e,f),e.intersect=function(p){return Y.info("DoubleCircle intersect",e,u,p),Ye.circle(e,u,p)},i}var nQ=N(()=>{"use strict";vt();Ft();Ht();Ut();Wt();ir();o(rQ,"doublecircle")});function iQ(t,e,{config:{themeVariables:r}}){let{labelStyles:n,nodeStyles:i}=Qe(e);e.label="",e.labelStyle=n;let a=t.insert("g").attr("class",ht(e)).attr("id",e.domId??e.id),s=7,{cssStyles:l}=e,u=Xe.svg(a),{nodeBorder:h}=r,f=Ke(e,{fillStyle:"solid"});e.look!=="handDrawn"&&(f.roughness=0);let d=u.circle(0,0,s*2,f),p=a.insert(()=>d,":first-child");return p.selectAll("path").attr("style",`fill: ${h} !important;`),l&&l.length>0&&e.look!=="handDrawn"&&p.selectAll("path").attr("style",l),i&&e.look!=="handDrawn"&&p.selectAll("path").attr("style",i),je(e,p),e.intersect=function(m){return Y.info("filledCircle intersect",e,{radius:s,point:m}),Ye.circle(e,s,m)},a}var aQ=N(()=>{"use strict";Wt();vt();Ht();Ut();Ft();o(iQ,"filledCircle")});async function sQ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await pt(t,e,ht(e)),l=a.width+(e.padding??0),u=l+a.height,h=l+a.height,f=[{x:0,y:-u},{x:h,y:-u},{x:h/2,y:0}],{cssStyles:d}=e,p=Xe.svg(i),m=Ke(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=Xt(f),y=p.path(g,m),v=i.insert(()=>y,":first-child").attr("transform",`translate(${-u/2}, ${u/2})`);return d&&e.look!=="handDrawn"&&v.selectChildren("path").attr("style",d),n&&e.look!=="handDrawn"&&v.selectChildren("path").attr("style",n),e.width=l,e.height=u,je(e,v),s.attr("transform",`translate(${-a.width/2-(a.x-(a.left??0))}, ${-u/2+(e.padding??0)/2+(a.y-(a.top??0))})`),e.intersect=function(x){return Y.info("Triangle intersect",e,f,x),Ye.polygon(e,f,x)},i}var oQ=N(()=>{"use strict";vt();Ft();Ht();Ut();Wt();Ft();o(sQ,"flippedTriangle")});function lQ(t,e,{dir:r,config:{state:n,themeVariables:i}}){let{nodeStyles:a}=Qe(e);e.label="";let s=t.insert("g").attr("class",ht(e)).attr("id",e.domId??e.id),{cssStyles:l}=e,u=Math.max(70,e?.width??0),h=Math.max(10,e?.height??0);r==="LR"&&(u=Math.max(10,e?.width??0),h=Math.max(70,e?.height??0));let f=-1*u/2,d=-1*h/2,p=Xe.svg(s),m=Ke(e,{stroke:i.lineColor,fill:i.lineColor});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=p.rectangle(f,d,u,h,m),y=s.insert(()=>g,":first-child");l&&e.look!=="handDrawn"&&y.selectAll("path").attr("style",l),a&&e.look!=="handDrawn"&&y.selectAll("path").attr("style",a),je(e,y);let v=n?.padding??0;return e.width&&e.height&&(e.width+=v/2||0,e.height+=v/2||0),e.intersect=function(x){return Ye.rect(e,x)},s}var cQ=N(()=>{"use strict";Wt();Ht();Ut();Ft();o(lQ,"forkJoin")});async function uQ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let i=80,a=50,{shapeSvg:s,bbox:l}=await pt(t,e,ht(e)),u=Math.max(i,l.width+(e.padding??0)*2,e?.width??0),h=Math.max(a,l.height+(e.padding??0)*2,e?.height??0),f=h/2,{cssStyles:d}=e,p=Xe.svg(s),m=Ke(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=[{x:-u/2,y:-h/2},{x:u/2-f,y:-h/2},...Lw(-u/2+f,0,f,50,90,270),{x:u/2-f,y:h/2},{x:-u/2,y:h/2}],y=Xt(g),v=p.path(y,m),x=s.insert(()=>v,":first-child");return x.attr("class","basic label-container"),d&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",d),n&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",n),je(e,x),e.intersect=function(b){return Y.info("Pill intersect",e,{radius:f,point:b}),Ye.polygon(e,g,b)},s}var hQ=N(()=>{"use strict";vt();Ft();Ht();Ut();Wt();o(uQ,"halfRoundedRectangle")});async function fQ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await pt(t,e,ht(e)),s=4,l=a.height+e.padding,u=l/s,h=a.width+2*u+e.padding,f=[{x:u,y:0},{x:h-u,y:0},{x:h,y:-l/2},{x:h-u,y:-l},{x:u,y:-l},{x:0,y:-l/2}],d,{cssStyles:p}=e;if(e.look==="handDrawn"){let m=Xe.svg(i),g=Ke(e,{}),y=f_e(0,0,h,l,u),v=m.path(y,g);d=i.insert(()=>v,":first-child").attr("transform",`translate(${-h/2}, ${l/2})`),p&&d.attr("style",p)}else d=La(i,h,l,f);return n&&d.attr("style",n),e.width=h,e.height=l,je(e,d),e.intersect=function(m){return Ye.polygon(e,f,m)},i}var f_e,dQ=N(()=>{"use strict";Ft();Ht();Ut();Wt();_u();f_e=o((t,e,r,n,i)=>[`M${t+i},${e}`,`L${t+r-i},${e}`,`L${t+r},${e-n/2}`,`L${t+r-i},${e-n}`,`L${t+i},${e-n}`,`L${t},${e-n/2}`,"Z"].join(" "),"createHexagonPathD");o(fQ,"hexagon")});async function pQ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.label="",e.labelStyle=r;let{shapeSvg:i}=await pt(t,e,ht(e)),a=Math.max(30,e?.width??0),s=Math.max(30,e?.height??0),{cssStyles:l}=e,u=Xe.svg(i),h=Ke(e,{});e.look!=="handDrawn"&&(h.roughness=0,h.fillStyle="solid");let f=[{x:0,y:0},{x:a,y:0},{x:0,y:s},{x:a,y:s}],d=Xt(f),p=u.path(d,h),m=i.insert(()=>p,":first-child");return m.attr("class","basic label-container"),l&&e.look!=="handDrawn"&&m.selectChildren("path").attr("style",l),n&&e.look!=="handDrawn"&&m.selectChildren("path").attr("style",n),m.attr("transform",`translate(${-a/2}, ${-s/2})`),je(e,m),e.intersect=function(g){return Y.info("Pill intersect",e,{points:f}),Ye.polygon(e,f,g)},i}var mQ=N(()=>{"use strict";vt();Ft();Ht();Ut();Wt();o(pQ,"hourglass")});async function gQ(t,e,{config:{themeVariables:r,flowchart:n}}){let{labelStyles:i}=Qe(e);e.labelStyle=i;let a=e.assetHeight??48,s=e.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;e.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,label:d}=await pt(t,e,"icon-shape default"),p=e.pos==="t",m=l,g=l,{nodeBorder:y}=r,{stylesMap:v}=mc(e),x=-g/2,b=-m/2,w=e.label?8:0,C=Xe.svg(h),T=Ke(e,{stroke:"none",fill:"none"});e.look!=="handDrawn"&&(T.roughness=0,T.fillStyle="solid");let E=C.rectangle(x,b,g,m,T),A=Math.max(g,f.width),S=m+f.height+w,_=C.rectangle(-A/2,-S/2,A,S,{...T,fill:"transparent",stroke:"none"}),I=h.insert(()=>E,":first-child"),D=h.insert(()=>_);if(e.icon){let k=h.append("g");k.html(`${await wo(e.icon,{height:l,width:l,fallbackPrefix:""})}`);let L=k.node().getBBox(),R=L.width,O=L.height,M=L.x,B=L.y;k.attr("transform",`translate(${-R/2-M},${p?f.height/2+w/2-O/2-B:-f.height/2-w/2-O/2-B})`),k.attr("style",`color: ${v.get("stroke")??y};`)}return d.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${p?-S/2:S/2-f.height})`),I.attr("transform",`translate(0,${p?f.height/2+w/2:-f.height/2-w/2})`),je(e,D),e.intersect=function(k){if(Y.info("iconSquare intersect",e,k),!e.label)return Ye.rect(e,k);let L=e.x??0,R=e.y??0,O=e.height??0,M=[];return p?M=[{x:L-f.width/2,y:R-O/2},{x:L+f.width/2,y:R-O/2},{x:L+f.width/2,y:R-O/2+f.height+w},{x:L+g/2,y:R-O/2+f.height+w},{x:L+g/2,y:R+O/2},{x:L-g/2,y:R+O/2},{x:L-g/2,y:R-O/2+f.height+w},{x:L-f.width/2,y:R-O/2+f.height+w}]:M=[{x:L-g/2,y:R-O/2},{x:L+g/2,y:R-O/2},{x:L+g/2,y:R-O/2+m},{x:L+f.width/2,y:R-O/2+m},{x:L+f.width/2/2,y:R+O/2},{x:L-f.width/2,y:R+O/2},{x:L-f.width/2,y:R-O/2+m},{x:L-g/2,y:R-O/2+m}],Ye.polygon(e,M,k)},h}var yQ=N(()=>{"use strict";Wt();vt();tu();Ht();Ut();Ft();o(gQ,"icon")});async function vQ(t,e,{config:{themeVariables:r,flowchart:n}}){let{labelStyles:i}=Qe(e);e.labelStyle=i;let a=e.assetHeight??48,s=e.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;e.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,label:d}=await pt(t,e,"icon-shape default"),p=20,m=e.label?8:0,g=e.pos==="t",{nodeBorder:y,mainBkg:v}=r,{stylesMap:x}=mc(e),b=Xe.svg(h),w=Ke(e,{});e.look!=="handDrawn"&&(w.roughness=0,w.fillStyle="solid");let C=x.get("fill");w.stroke=C??v;let T=h.append("g");e.icon&&T.html(`${await wo(e.icon,{height:l,width:l,fallbackPrefix:""})}`);let E=T.node().getBBox(),A=E.width,S=E.height,_=E.x,I=E.y,D=Math.max(A,S)*Math.SQRT2+p*2,k=b.circle(0,0,D,w),L=Math.max(D,f.width),R=D+f.height+m,O=b.rectangle(-L/2,-R/2,L,R,{...w,fill:"transparent",stroke:"none"}),M=h.insert(()=>k,":first-child"),B=h.insert(()=>O);return T.attr("transform",`translate(${-A/2-_},${g?f.height/2+m/2-S/2-I:-f.height/2-m/2-S/2-I})`),T.attr("style",`color: ${x.get("stroke")??y};`),d.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${g?-R/2:R/2-f.height})`),M.attr("transform",`translate(0,${g?f.height/2+m/2:-f.height/2-m/2})`),je(e,B),e.intersect=function(F){return Y.info("iconSquare intersect",e,F),Ye.rect(e,F)},h}var xQ=N(()=>{"use strict";Wt();vt();tu();Ht();Ut();Ft();o(vQ,"iconCircle")});var Na,qh=N(()=>{"use strict";Na=o((t,e,r,n,i)=>["M",t+i,e,"H",t+r-i,"A",i,i,0,0,1,t+r,e+i,"V",e+n-i,"A",i,i,0,0,1,t+r-i,e+n,"H",t+i,"A",i,i,0,0,1,t,e+n-i,"V",e+i,"A",i,i,0,0,1,t+i,e,"Z"].join(" "),"createRoundedRectPathD")});async function bQ(t,e,{config:{themeVariables:r,flowchart:n}}){let{labelStyles:i}=Qe(e);e.labelStyle=i;let a=e.assetHeight??48,s=e.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;e.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,halfPadding:d,label:p}=await pt(t,e,"icon-shape default"),m=e.pos==="t",g=l+d*2,y=l+d*2,{nodeBorder:v,mainBkg:x}=r,{stylesMap:b}=mc(e),w=-y/2,C=-g/2,T=e.label?8:0,E=Xe.svg(h),A=Ke(e,{});e.look!=="handDrawn"&&(A.roughness=0,A.fillStyle="solid");let S=b.get("fill");A.stroke=S??x;let _=E.path(Na(w,C,y,g,5),A),I=Math.max(y,f.width),D=g+f.height+T,k=E.rectangle(-I/2,-D/2,I,D,{...A,fill:"transparent",stroke:"none"}),L=h.insert(()=>_,":first-child").attr("class","icon-shape2"),R=h.insert(()=>k);if(e.icon){let O=h.append("g");O.html(`${await wo(e.icon,{height:l,width:l,fallbackPrefix:""})}`);let M=O.node().getBBox(),B=M.width,F=M.height,P=M.x,z=M.y;O.attr("transform",`translate(${-B/2-P},${m?f.height/2+T/2-F/2-z:-f.height/2-T/2-F/2-z})`),O.attr("style",`color: ${b.get("stroke")??v};`)}return p.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${m?-D/2:D/2-f.height})`),L.attr("transform",`translate(0,${m?f.height/2+T/2:-f.height/2-T/2})`),je(e,R),e.intersect=function(O){if(Y.info("iconSquare intersect",e,O),!e.label)return Ye.rect(e,O);let M=e.x??0,B=e.y??0,F=e.height??0,P=[];return m?P=[{x:M-f.width/2,y:B-F/2},{x:M+f.width/2,y:B-F/2},{x:M+f.width/2,y:B-F/2+f.height+T},{x:M+y/2,y:B-F/2+f.height+T},{x:M+y/2,y:B+F/2},{x:M-y/2,y:B+F/2},{x:M-y/2,y:B-F/2+f.height+T},{x:M-f.width/2,y:B-F/2+f.height+T}]:P=[{x:M-y/2,y:B-F/2},{x:M+y/2,y:B-F/2},{x:M+y/2,y:B-F/2+g},{x:M+f.width/2,y:B-F/2+g},{x:M+f.width/2/2,y:B+F/2},{x:M-f.width/2,y:B+F/2},{x:M-f.width/2,y:B-F/2+g},{x:M-y/2,y:B-F/2+g}],Ye.polygon(e,P,O)},h}var wQ=N(()=>{"use strict";Wt();vt();tu();Ht();Ut();qh();Ft();o(bQ,"iconRounded")});async function TQ(t,e,{config:{themeVariables:r,flowchart:n}}){let{labelStyles:i}=Qe(e);e.labelStyle=i;let a=e.assetHeight??48,s=e.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;e.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,halfPadding:d,label:p}=await pt(t,e,"icon-shape default"),m=e.pos==="t",g=l+d*2,y=l+d*2,{nodeBorder:v,mainBkg:x}=r,{stylesMap:b}=mc(e),w=-y/2,C=-g/2,T=e.label?8:0,E=Xe.svg(h),A=Ke(e,{});e.look!=="handDrawn"&&(A.roughness=0,A.fillStyle="solid");let S=b.get("fill");A.stroke=S??x;let _=E.path(Na(w,C,y,g,.1),A),I=Math.max(y,f.width),D=g+f.height+T,k=E.rectangle(-I/2,-D/2,I,D,{...A,fill:"transparent",stroke:"none"}),L=h.insert(()=>_,":first-child"),R=h.insert(()=>k);if(e.icon){let O=h.append("g");O.html(`${await wo(e.icon,{height:l,width:l,fallbackPrefix:""})}`);let M=O.node().getBBox(),B=M.width,F=M.height,P=M.x,z=M.y;O.attr("transform",`translate(${-B/2-P},${m?f.height/2+T/2-F/2-z:-f.height/2-T/2-F/2-z})`),O.attr("style",`color: ${b.get("stroke")??v};`)}return p.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${m?-D/2:D/2-f.height})`),L.attr("transform",`translate(0,${m?f.height/2+T/2:-f.height/2-T/2})`),je(e,R),e.intersect=function(O){if(Y.info("iconSquare intersect",e,O),!e.label)return Ye.rect(e,O);let M=e.x??0,B=e.y??0,F=e.height??0,P=[];return m?P=[{x:M-f.width/2,y:B-F/2},{x:M+f.width/2,y:B-F/2},{x:M+f.width/2,y:B-F/2+f.height+T},{x:M+y/2,y:B-F/2+f.height+T},{x:M+y/2,y:B+F/2},{x:M-y/2,y:B+F/2},{x:M-y/2,y:B-F/2+f.height+T},{x:M-f.width/2,y:B-F/2+f.height+T}]:P=[{x:M-y/2,y:B-F/2},{x:M+y/2,y:B-F/2},{x:M+y/2,y:B-F/2+g},{x:M+f.width/2,y:B-F/2+g},{x:M+f.width/2/2,y:B+F/2},{x:M-f.width/2,y:B+F/2},{x:M-f.width/2,y:B-F/2+g},{x:M-y/2,y:B-F/2+g}],Ye.polygon(e,P,O)},h}var kQ=N(()=>{"use strict";Wt();vt();tu();Ht();qh();Ut();Ft();o(TQ,"iconSquare")});async function EQ(t,e,{config:{flowchart:r}}){let n=new Image;n.src=e?.img??"",await n.decode();let i=Number(n.naturalWidth.toString().replace("px","")),a=Number(n.naturalHeight.toString().replace("px",""));e.imageAspectRatio=i/a;let{labelStyles:s}=Qe(e);e.labelStyle=s;let l=r?.wrappingWidth;e.defaultWidth=r?.wrappingWidth;let u=Math.max(e.label?l??0:0,e?.assetWidth??i),h=e.constraint==="on"&&e?.assetHeight?e.assetHeight*e.imageAspectRatio:u,f=e.constraint==="on"?h/e.imageAspectRatio:e?.assetHeight??a;e.width=Math.max(h,l??0);let{shapeSvg:d,bbox:p,label:m}=await pt(t,e,"image-shape default"),g=e.pos==="t",y=-h/2,v=-f/2,x=e.label?8:0,b=Xe.svg(d),w=Ke(e,{});e.look!=="handDrawn"&&(w.roughness=0,w.fillStyle="solid");let C=b.rectangle(y,v,h,f,w),T=Math.max(h,p.width),E=f+p.height+x,A=b.rectangle(-T/2,-E/2,T,E,{...w,fill:"none",stroke:"none"}),S=d.insert(()=>C,":first-child"),_=d.insert(()=>A);if(e.img){let I=d.append("image");I.attr("href",e.img),I.attr("width",h),I.attr("height",f),I.attr("preserveAspectRatio","none"),I.attr("transform",`translate(${-h/2},${g?E/2-f:-E/2})`)}return m.attr("transform",`translate(${-p.width/2-(p.x-(p.left??0))},${g?-f/2-p.height/2-x/2:f/2-p.height/2+x/2})`),S.attr("transform",`translate(0,${g?p.height/2+x/2:-p.height/2-x/2})`),je(e,_),e.intersect=function(I){if(Y.info("iconSquare intersect",e,I),!e.label)return Ye.rect(e,I);let D=e.x??0,k=e.y??0,L=e.height??0,R=[];return g?R=[{x:D-p.width/2,y:k-L/2},{x:D+p.width/2,y:k-L/2},{x:D+p.width/2,y:k-L/2+p.height+x},{x:D+h/2,y:k-L/2+p.height+x},{x:D+h/2,y:k+L/2},{x:D-h/2,y:k+L/2},{x:D-h/2,y:k-L/2+p.height+x},{x:D-p.width/2,y:k-L/2+p.height+x}]:R=[{x:D-h/2,y:k-L/2},{x:D+h/2,y:k-L/2},{x:D+h/2,y:k-L/2+f},{x:D+p.width/2,y:k-L/2+f},{x:D+p.width/2/2,y:k+L/2},{x:D-p.width/2,y:k+L/2},{x:D-p.width/2,y:k-L/2+f},{x:D-h/2,y:k-L/2+f}],Ye.polygon(e,R,I)},d}var SQ=N(()=>{"use strict";Wt();vt();Ht();Ut();Ft();o(EQ,"imageSquare")});async function CQ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await pt(t,e,ht(e)),s=Math.max(a.width+(e.padding??0)*2,e?.width??0),l=Math.max(a.height+(e.padding??0)*2,e?.height??0),u=[{x:0,y:0},{x:s,y:0},{x:s+3*l/6,y:-l},{x:-3*l/6,y:-l}],h,{cssStyles:f}=e;if(e.look==="handDrawn"){let d=Xe.svg(i),p=Ke(e,{}),m=Xt(u),g=d.path(m,p);h=i.insert(()=>g,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),f&&h.attr("style",f)}else h=La(i,s,l,u);return n&&h.attr("style",n),e.width=s,e.height=l,je(e,h),e.intersect=function(d){return Ye.polygon(e,u,d)},i}var AQ=N(()=>{"use strict";Ft();Ht();Ut();Wt();_u();o(CQ,"inv_trapezoid")});async function Du(t,e,r){let{labelStyles:n,nodeStyles:i}=Qe(e);e.labelStyle=n;let{shapeSvg:a,bbox:s}=await pt(t,e,ht(e)),l=Math.max(s.width+r.labelPaddingX*2,e?.width||0),u=Math.max(s.height+r.labelPaddingY*2,e?.height||0),h=-l/2,f=-u/2,d,{rx:p,ry:m}=e,{cssStyles:g}=e;if(r?.rx&&r.ry&&(p=r.rx,m=r.ry),e.look==="handDrawn"){let y=Xe.svg(a),v=Ke(e,{}),x=p||m?y.path(Na(h,f,l,u,p||0),v):y.rectangle(h,f,l,u,v);d=a.insert(()=>x,":first-child"),d.attr("class","basic label-container").attr("style",$n(g))}else d=a.insert("rect",":first-child"),d.attr("class","basic label-container").attr("style",i).attr("rx",$n(p)).attr("ry",$n(m)).attr("x",h).attr("y",f).attr("width",l).attr("height",u);return je(e,d),e.intersect=function(y){return Ye.rect(e,y)},a}var mm=N(()=>{"use strict";Ft();Ht();qh();Ut();Wt();ir();o(Du,"drawRect")});async function _Q(t,e){let{shapeSvg:r,bbox:n,label:i}=await pt(t,e,"label"),a=r.insert("rect",":first-child");return a.attr("width",.1).attr("height",.1),r.attr("class","label edgeLabel"),i.attr("transform",`translate(${-(n.width/2)-(n.x-(n.left??0))}, ${-(n.height/2)-(n.y-(n.top??0))})`),je(e,a),e.intersect=function(u){return Ye.rect(e,u)},r}var DQ=N(()=>{"use strict";mm();Ft();Ht();o(_Q,"labelRect")});async function LQ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await pt(t,e,ht(e)),s=Math.max(a.width+(e.padding??0),e?.width??0),l=Math.max(a.height+(e.padding??0),e?.height??0),u=[{x:0,y:0},{x:s+3*l/6,y:0},{x:s,y:-l},{x:-(3*l)/6,y:-l}],h,{cssStyles:f}=e;if(e.look==="handDrawn"){let d=Xe.svg(i),p=Ke(e,{}),m=Xt(u),g=d.path(m,p);h=i.insert(()=>g,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),f&&h.attr("style",f)}else h=La(i,s,l,u);return n&&h.attr("style",n),e.width=s,e.height=l,je(e,h),e.intersect=function(d){return Ye.polygon(e,u,d)},i}var RQ=N(()=>{"use strict";Ft();Ht();Ut();Wt();_u();o(LQ,"lean_left")});async function NQ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await pt(t,e,ht(e)),s=Math.max(a.width+(e.padding??0),e?.width??0),l=Math.max(a.height+(e.padding??0),e?.height??0),u=[{x:-3*l/6,y:0},{x:s,y:0},{x:s+3*l/6,y:-l},{x:0,y:-l}],h,{cssStyles:f}=e;if(e.look==="handDrawn"){let d=Xe.svg(i),p=Ke(e,{}),m=Xt(u),g=d.path(m,p);h=i.insert(()=>g,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),f&&h.attr("style",f)}else h=La(i,s,l,u);return n&&h.attr("style",n),e.width=s,e.height=l,je(e,h),e.intersect=function(d){return Ye.polygon(e,u,d)},i}var MQ=N(()=>{"use strict";Ft();Ht();Ut();Wt();_u();o(NQ,"lean_right")});function IQ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.label="",e.labelStyle=r;let i=t.insert("g").attr("class",ht(e)).attr("id",e.domId??e.id),{cssStyles:a}=e,s=Math.max(35,e?.width??0),l=Math.max(35,e?.height??0),u=7,h=[{x:s,y:0},{x:0,y:l+u/2},{x:s-2*u,y:l+u/2},{x:0,y:2*l},{x:s,y:l-u/2},{x:2*u,y:l-u/2}],f=Xe.svg(i),d=Ke(e,{});e.look!=="handDrawn"&&(d.roughness=0,d.fillStyle="solid");let p=Xt(h),m=f.path(p,d),g=i.insert(()=>m,":first-child");return a&&e.look!=="handDrawn"&&g.selectAll("path").attr("style",a),n&&e.look!=="handDrawn"&&g.selectAll("path").attr("style",n),g.attr("transform",`translate(-${s/2},${-l})`),je(e,g),e.intersect=function(y){return Y.info("lightningBolt intersect",e,y),Ye.polygon(e,h,y)},i}var OQ=N(()=>{"use strict";vt();Ft();Ut();Wt();Ht();Ft();o(IQ,"lightningBolt")});async function PQ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await pt(t,e,ht(e)),l=Math.max(a.width+(e.padding??0),e.width??0),u=l/2,h=u/(2.5+l/50),f=Math.max(a.height+h+(e.padding??0),e.height??0),d=f*.1,p,{cssStyles:m}=e;if(e.look==="handDrawn"){let g=Xe.svg(i),y=p_e(0,0,l,f,u,h,d),v=m_e(0,h,l,f,u,h),x=Ke(e,{}),b=g.path(y,x),w=g.path(v,x);i.insert(()=>w,":first-child").attr("class","line"),p=i.insert(()=>b,":first-child"),p.attr("class","basic label-container"),m&&p.attr("style",m)}else{let g=d_e(0,0,l,f,u,h,d);p=i.insert("path",":first-child").attr("d",g).attr("class","basic label-container").attr("style",$n(m)).attr("style",n)}return p.attr("label-offset-y",h),p.attr("transform",`translate(${-l/2}, ${-(f/2+h)})`),je(e,p),s.attr("transform",`translate(${-(a.width/2)-(a.x-(a.left??0))}, ${-(a.height/2)+h-(a.y-(a.top??0))})`),e.intersect=function(g){let y=Ye.rect(e,g),v=y.x-(e.x??0);if(u!=0&&(Math.abs(v)<(e.width??0)/2||Math.abs(v)==(e.width??0)/2&&Math.abs(y.y-(e.y??0))>(e.height??0)/2-h)){let x=h*h*(1-v*v/(u*u));x>0&&(x=Math.sqrt(x)),x=h-x,g.y-(e.y??0)>0&&(x=-x),y.y+=x}return y},i}var d_e,p_e,m_e,BQ=N(()=>{"use strict";Ft();Ht();Ut();Wt();ir();d_e=o((t,e,r,n,i,a,s)=>[`M${t},${e+a}`,`a${i},${a} 0,0,0 ${r},0`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`,`M${t},${e+a+s}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createCylinderPathD"),p_e=o((t,e,r,n,i,a,s)=>[`M${t},${e+a}`,`M${t+r},${e+a}`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`,`M${t},${e+a+s}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createOuterCylinderPathD"),m_e=o((t,e,r,n,i,a)=>[`M${t-r/2},${-n/2}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createInnerCylinderPathD");o(PQ,"linedCylinder")});async function FQ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await pt(t,e,ht(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=u/4,f=u+h,{cssStyles:d}=e,p=Xe.svg(i),m=Ke(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=[{x:-l/2-l/2*.1,y:-f/2},{x:-l/2-l/2*.1,y:f/2},...Fo(-l/2-l/2*.1,f/2,l/2+l/2*.1,f/2,h,.8),{x:l/2+l/2*.1,y:-f/2},{x:-l/2-l/2*.1,y:-f/2},{x:-l/2,y:-f/2},{x:-l/2,y:f/2*1.1},{x:-l/2,y:-f/2}],y=p.polygon(g.map(x=>[x.x,x.y]),m),v=i.insert(()=>y,":first-child");return v.attr("class","basic label-container"),d&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",d),n&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",n),v.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-l/2+(e.padding??0)+l/2*.1/2-(a.x-(a.left??0))},${-u/2+(e.padding??0)-h/2-(a.y-(a.top??0))})`),je(e,v),e.intersect=function(x){return Ye.polygon(e,g,x)},i}var $Q=N(()=>{"use strict";Ft();Ht();Wt();Ut();o(FQ,"linedWaveEdgedRect")});async function zQ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await pt(t,e,ht(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=5,f=-l/2,d=-u/2,{cssStyles:p}=e,m=Xe.svg(i),g=Ke(e,{}),y=[{x:f-h,y:d+h},{x:f-h,y:d+u+h},{x:f+l-h,y:d+u+h},{x:f+l-h,y:d+u},{x:f+l,y:d+u},{x:f+l,y:d+u-h},{x:f+l+h,y:d+u-h},{x:f+l+h,y:d-h},{x:f+h,y:d-h},{x:f+h,y:d},{x:f,y:d},{x:f,y:d+h}],v=[{x:f,y:d+h},{x:f+l-h,y:d+h},{x:f+l-h,y:d+u},{x:f+l,y:d+u},{x:f+l,y:d},{x:f,y:d}];e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let x=Xt(y),b=m.path(x,g),w=Xt(v),C=m.path(w,{...g,fill:"none"}),T=i.insert(()=>C,":first-child");return T.insert(()=>b,":first-child"),T.attr("class","basic label-container"),p&&e.look!=="handDrawn"&&T.selectAll("path").attr("style",p),n&&e.look!=="handDrawn"&&T.selectAll("path").attr("style",n),s.attr("transform",`translate(${-(a.width/2)-h-(a.x-(a.left??0))}, ${-(a.height/2)+h-(a.y-(a.top??0))})`),je(e,T),e.intersect=function(E){return Ye.polygon(e,y,E)},i}var GQ=N(()=>{"use strict";Ft();Ut();Wt();Ht();o(zQ,"multiRect")});async function VQ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await pt(t,e,ht(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=u/4,f=u+h,d=-l/2,p=-f/2,m=5,{cssStyles:g}=e,y=Fo(d-m,p+f+m,d+l-m,p+f+m,h,.8),v=y?.[y.length-1],x=[{x:d-m,y:p+m},{x:d-m,y:p+f+m},...y,{x:d+l-m,y:v.y-m},{x:d+l,y:v.y-m},{x:d+l,y:v.y-2*m},{x:d+l+m,y:v.y-2*m},{x:d+l+m,y:p-m},{x:d+m,y:p-m},{x:d+m,y:p},{x:d,y:p},{x:d,y:p+m}],b=[{x:d,y:p+m},{x:d+l-m,y:p+m},{x:d+l-m,y:v.y-m},{x:d+l,y:v.y-m},{x:d+l,y:p},{x:d,y:p}],w=Xe.svg(i),C=Ke(e,{});e.look!=="handDrawn"&&(C.roughness=0,C.fillStyle="solid");let T=Xt(x),E=w.path(T,C),A=Xt(b),S=w.path(A,C),_=i.insert(()=>E,":first-child");return _.insert(()=>S),_.attr("class","basic label-container"),g&&e.look!=="handDrawn"&&_.selectAll("path").attr("style",g),n&&e.look!=="handDrawn"&&_.selectAll("path").attr("style",n),_.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-(a.width/2)-m-(a.x-(a.left??0))}, ${-(a.height/2)+m-h/2-(a.y-(a.top??0))})`),je(e,_),e.intersect=function(I){return Ye.polygon(e,x,I)},i}var UQ=N(()=>{"use strict";Ft();Ht();Wt();Ut();o(VQ,"multiWaveEdgedRectangle")});async function HQ(t,e,{config:{themeVariables:r}}){let{labelStyles:n,nodeStyles:i}=Qe(e);e.labelStyle=n,e.useHtmlLabels||cr().flowchart?.htmlLabels!==!1||(e.centerLabel=!0);let{shapeSvg:s,bbox:l}=await pt(t,e,ht(e)),u=Math.max(l.width+(e.padding??0)*2,e?.width??0),h=Math.max(l.height+(e.padding??0)*2,e?.height??0),f=-u/2,d=-h/2,{cssStyles:p}=e,m=Xe.svg(s),g=Ke(e,{fill:r.noteBkgColor,stroke:r.noteBorderColor});e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=m.rectangle(f,d,u,h,g),v=s.insert(()=>y,":first-child");return v.attr("class","basic label-container"),p&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",p),i&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",i),je(e,v),e.intersect=function(x){return Ye.rect(e,x)},s}var WQ=N(()=>{"use strict";Wt();Ht();Ut();Ft();ji();o(HQ,"note")});async function qQ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await pt(t,e,ht(e)),s=a.width+e.padding,l=a.height+e.padding,u=s+l,h=[{x:u/2,y:0},{x:u,y:-u/2},{x:u/2,y:-u},{x:0,y:-u/2}],f,{cssStyles:d}=e;if(e.look==="handDrawn"){let p=Xe.svg(i),m=Ke(e,{}),g=g_e(0,0,u),y=p.path(g,m);f=i.insert(()=>y,":first-child").attr("transform",`translate(${-u/2}, ${u/2})`),d&&f.attr("style",d)}else f=La(i,u,u,h);return n&&f.attr("style",n),je(e,f),e.intersect=function(p){return Y.debug(`APA12 Intersect called SPLIT +point:`,p,` +node: +`,e,` +res:`,Ye.polygon(e,h,p)),Ye.polygon(e,h,p)},i}var g_e,YQ=N(()=>{"use strict";vt();Ft();Ht();Ut();Wt();_u();g_e=o((t,e,r)=>[`M${t+r/2},${e}`,`L${t+r},${e-r/2}`,`L${t+r/2},${e-r}`,`L${t},${e-r/2}`,"Z"].join(" "),"createDecisionBoxPathD");o(qQ,"question")});async function XQ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await pt(t,e,ht(e)),l=Math.max(a.width+(e.padding??0),e?.width??0),u=Math.max(a.height+(e.padding??0),e?.height??0),h=-l/2,f=-u/2,d=f/2,p=[{x:h+d,y:f},{x:h,y:0},{x:h+d,y:-f},{x:-h,y:-f},{x:-h,y:f}],{cssStyles:m}=e,g=Xe.svg(i),y=Ke(e,{});e.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let v=Xt(p),x=g.path(v,y),b=i.insert(()=>x,":first-child");return b.attr("class","basic label-container"),m&&e.look!=="handDrawn"&&b.selectAll("path").attr("style",m),n&&e.look!=="handDrawn"&&b.selectAll("path").attr("style",n),b.attr("transform",`translate(${-d/2},0)`),s.attr("transform",`translate(${-d/2-a.width/2-(a.x-(a.left??0))}, ${-(a.height/2)-(a.y-(a.top??0))})`),je(e,b),e.intersect=function(w){return Ye.polygon(e,p,w)},i}var jQ=N(()=>{"use strict";Ft();Ht();Ut();Wt();o(XQ,"rect_left_inv_arrow")});function y_e(t,e){e&&t.attr("style",e)}async function v_e(t){let e=Ge(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),r=e.append("xhtml:div"),n=t.label;t.label&&pi(t.label)&&(n=await mh(t.label.replace(Ze.lineBreakRegex,` +`),me()));let i=t.isNode?"nodeLabel":"edgeLabel";return r.html('"+n+""),y_e(r,t.labelStyle),r.style("display","inline-block"),r.style("padding-right","1px"),r.style("white-space","nowrap"),r.attr("xmlns","http://www.w3.org/1999/xhtml"),e.node()}var x_e,gc,Gw=N(()=>{"use strict";dr();vt();zt();gr();ir();o(y_e,"applyStyle");o(v_e,"addHtmlLabel");x_e=o(async(t,e,r,n)=>{let i=t||"";if(typeof i=="object"&&(i=i[0]),fr(me().flowchart.htmlLabels)){i=i.replace(/\\n|\n/g,"
    "),Y.info("vertexText"+i);let a={isNode:n,label:na(i).replace(/fa[blrs]?:fa-[\w-]+/g,l=>``),labelStyle:e&&e.replace("fill:","color:")};return await v_e(a)}else{let a=document.createElementNS("http://www.w3.org/2000/svg","text");a.setAttribute("style",e.replace("color:","fill:"));let s=[];typeof i=="string"?s=i.split(/\\n|\n|/gi):Array.isArray(i)?s=i:s=[];for(let l of s){let u=document.createElementNS("http://www.w3.org/2000/svg","tspan");u.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),u.setAttribute("dy","1em"),u.setAttribute("x","0"),r?u.setAttribute("class","title-row"):u.setAttribute("class","row"),u.textContent=l.trim(),a.appendChild(u)}return a}},"createLabel"),gc=x_e});async function KQ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let i;e.cssClasses?i="node "+e.cssClasses:i="node default";let a=t.insert("g").attr("class",i).attr("id",e.domId||e.id),s=a.insert("g"),l=a.insert("g").attr("class","label").attr("style",n),u=e.description,h=e.label,f=l.node().appendChild(await gc(h,e.labelStyle,!0,!0)),d={width:0,height:0};if(fr(me()?.flowchart?.htmlLabels)){let S=f.children[0],_=Ge(f);d=S.getBoundingClientRect(),_.attr("width",d.width),_.attr("height",d.height)}Y.info("Text 2",u);let p=u||[],m=f.getBBox(),g=l.node().appendChild(await gc(p.join?p.join("
    "):p,e.labelStyle,!0,!0)),y=g.children[0],v=Ge(g);d=y.getBoundingClientRect(),v.attr("width",d.width),v.attr("height",d.height);let x=(e.padding||0)/2;Ge(g).attr("transform","translate( "+(d.width>m.width?0:(m.width-d.width)/2)+", "+(m.height+x+5)+")"),Ge(f).attr("transform","translate( "+(d.width(Y.debug("Rough node insert CXC",I),D),":first-child"),E=a.insert(()=>(Y.debug("Rough node insert CXC",I),I),":first-child")}else E=s.insert("rect",":first-child"),A=s.insert("line"),E.attr("class","outer title-state").attr("style",n).attr("x",-d.width/2-x).attr("y",-d.height/2-x).attr("width",d.width+(e.padding||0)).attr("height",d.height+(e.padding||0)),A.attr("class","divider").attr("x1",-d.width/2-x).attr("x2",d.width/2+x).attr("y1",-d.height/2-x+m.height+x).attr("y2",-d.height/2-x+m.height+x);return je(e,E),e.intersect=function(S){return Ye.rect(e,S)},a}var QQ=N(()=>{"use strict";dr();gr();Ft();Gw();Ht();Ut();Wt();zt();qh();vt();o(KQ,"rectWithTitle")});async function ZQ(t,e){let r={rx:5,ry:5,classes:"",labelPaddingX:(e?.padding||0)*1,labelPaddingY:(e?.padding||0)*1};return Du(t,e,r)}var JQ=N(()=>{"use strict";mm();o(ZQ,"roundedRect")});async function eZ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await pt(t,e,ht(e)),l=e?.padding??0,u=Math.max(a.width+(e.padding??0)*2,e?.width??0),h=Math.max(a.height+(e.padding??0)*2,e?.height??0),f=-a.width/2-l,d=-a.height/2-l,{cssStyles:p}=e,m=Xe.svg(i),g=Ke(e,{});e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=[{x:f,y:d},{x:f+u+8,y:d},{x:f+u+8,y:d+h},{x:f-8,y:d+h},{x:f-8,y:d},{x:f,y:d},{x:f,y:d+h}],v=m.polygon(y.map(b=>[b.x,b.y]),g),x=i.insert(()=>v,":first-child");return x.attr("class","basic label-container").attr("style",$n(p)),n&&e.look!=="handDrawn"&&x.selectAll("path").attr("style",n),p&&e.look!=="handDrawn"&&x.selectAll("path").attr("style",n),s.attr("transform",`translate(${-u/2+4+(e.padding??0)-(a.x-(a.left??0))},${-h/2+(e.padding??0)-(a.y-(a.top??0))})`),je(e,x),e.intersect=function(b){return Ye.rect(e,b)},i}var tZ=N(()=>{"use strict";Ft();Ht();Ut();Wt();ir();o(eZ,"shadedProcess")});async function rZ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await pt(t,e,ht(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=-l/2,f=-u/2,{cssStyles:d}=e,p=Xe.svg(i),m=Ke(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=[{x:h,y:f},{x:h,y:f+u},{x:h+l,y:f+u},{x:h+l,y:f-u/2}],y=Xt(g),v=p.path(y,m),x=i.insert(()=>v,":first-child");return x.attr("class","basic label-container"),d&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",d),n&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",n),x.attr("transform",`translate(0, ${u/4})`),s.attr("transform",`translate(${-l/2+(e.padding??0)-(a.x-(a.left??0))}, ${-u/4+(e.padding??0)-(a.y-(a.top??0))})`),je(e,x),e.intersect=function(b){return Ye.polygon(e,g,b)},i}var nZ=N(()=>{"use strict";Ft();Ht();Ut();Wt();o(rZ,"slopedRect")});async function iZ(t,e){let r={rx:0,ry:0,classes:"",labelPaddingX:(e?.padding||0)*2,labelPaddingY:(e?.padding||0)*1};return Du(t,e,r)}var aZ=N(()=>{"use strict";mm();o(iZ,"squareRect")});async function sZ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await pt(t,e,ht(e)),s=a.height+e.padding,l=a.width+s/4+e.padding,u,{cssStyles:h}=e;if(e.look==="handDrawn"){let f=Xe.svg(i),d=Ke(e,{}),p=Na(-l/2,-s/2,l,s,s/2),m=f.path(p,d);u=i.insert(()=>m,":first-child"),u.attr("class","basic label-container").attr("style",$n(h))}else u=i.insert("rect",":first-child"),u.attr("class","basic label-container").attr("style",n).attr("rx",s/2).attr("ry",s/2).attr("x",-l/2).attr("y",-s/2).attr("width",l).attr("height",s);return je(e,u),e.intersect=function(f){return Ye.rect(e,f)},i}var oZ=N(()=>{"use strict";Ft();Ht();Ut();Wt();qh();ir();o(sZ,"stadium")});async function lZ(t,e){return Du(t,e,{rx:5,ry:5,classes:"flowchart-node"})}var cZ=N(()=>{"use strict";mm();o(lZ,"state")});function uZ(t,e,{config:{themeVariables:r}}){let{labelStyles:n,nodeStyles:i}=Qe(e);e.labelStyle=n;let{cssStyles:a}=e,{lineColor:s,stateBorder:l,nodeBorder:u}=r,h=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),f=Xe.svg(h),d=Ke(e,{});e.look!=="handDrawn"&&(d.roughness=0,d.fillStyle="solid");let p=f.circle(0,0,14,{...d,stroke:s,strokeWidth:2}),m=l??u,g=f.circle(0,0,5,{...d,fill:m,stroke:m,strokeWidth:2,fillStyle:"solid"}),y=h.insert(()=>p,":first-child");return y.insert(()=>g),a&&y.selectAll("path").attr("style",a),i&&y.selectAll("path").attr("style",i),je(e,y),e.intersect=function(v){return Ye.circle(e,7,v)},h}var hZ=N(()=>{"use strict";Wt();Ht();Ut();Ft();o(uZ,"stateEnd")});function fZ(t,e,{config:{themeVariables:r}}){let{lineColor:n}=r,i=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),a;if(e.look==="handDrawn"){let l=Xe.svg(i).circle(0,0,14,gK(n));a=i.insert(()=>l),a.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14)}else a=i.insert("circle",":first-child"),a.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14);return je(e,a),e.intersect=function(s){return Ye.circle(e,7,s)},i}var dZ=N(()=>{"use strict";Wt();Ht();Ut();Ft();o(fZ,"stateStart")});async function pZ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await pt(t,e,ht(e)),s=(e?.padding||0)/2,l=a.width+e.padding,u=a.height+e.padding,h=-a.width/2-s,f=-a.height/2-s,d=[{x:0,y:0},{x:l,y:0},{x:l,y:-u},{x:0,y:-u},{x:0,y:0},{x:-8,y:0},{x:l+8,y:0},{x:l+8,y:-u},{x:-8,y:-u},{x:-8,y:0}];if(e.look==="handDrawn"){let p=Xe.svg(i),m=Ke(e,{}),g=p.rectangle(h-8,f,l+16,u,m),y=p.line(h,f,h,f+u,m),v=p.line(h+l,f,h+l,f+u,m);i.insert(()=>y,":first-child"),i.insert(()=>v,":first-child");let x=i.insert(()=>g,":first-child"),{cssStyles:b}=e;x.attr("class","basic label-container").attr("style",$n(b)),je(e,x)}else{let p=La(i,l,u,d);n&&p.attr("style",n),je(e,p)}return e.intersect=function(p){return Ye.polygon(e,d,p)},i}var mZ=N(()=>{"use strict";Ft();Ht();Ut();Wt();_u();ir();o(pZ,"subroutine")});async function gZ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await pt(t,e,ht(e)),s=Math.max(a.width+(e.padding??0)*2,e?.width??0),l=Math.max(a.height+(e.padding??0)*2,e?.height??0),u=-s/2,h=-l/2,f=.2*l,d=.2*l,{cssStyles:p}=e,m=Xe.svg(i),g=Ke(e,{}),y=[{x:u-f/2,y:h},{x:u+s+f/2,y:h},{x:u+s+f/2,y:h+l},{x:u-f/2,y:h+l}],v=[{x:u+s-f/2,y:h+l},{x:u+s+f/2,y:h+l},{x:u+s+f/2,y:h+l-d}];e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let x=Xt(y),b=m.path(x,g),w=Xt(v),C=m.path(w,{...g,fillStyle:"solid"}),T=i.insert(()=>C,":first-child");return T.insert(()=>b,":first-child"),T.attr("class","basic label-container"),p&&e.look!=="handDrawn"&&T.selectAll("path").attr("style",p),n&&e.look!=="handDrawn"&&T.selectAll("path").attr("style",n),je(e,T),e.intersect=function(E){return Ye.polygon(e,y,E)},i}var yZ=N(()=>{"use strict";Ft();Ut();Wt();Ht();o(gZ,"taggedRect")});async function vZ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await pt(t,e,ht(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=u/4,f=.2*l,d=.2*u,p=u+h,{cssStyles:m}=e,g=Xe.svg(i),y=Ke(e,{});e.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let v=[{x:-l/2-l/2*.1,y:p/2},...Fo(-l/2-l/2*.1,p/2,l/2+l/2*.1,p/2,h,.8),{x:l/2+l/2*.1,y:-p/2},{x:-l/2-l/2*.1,y:-p/2}],x=-l/2+l/2*.1,b=-p/2-d*.4,w=[{x:x+l-f,y:(b+u)*1.4},{x:x+l,y:b+u-d},{x:x+l,y:(b+u)*.9},...Fo(x+l,(b+u)*1.3,x+l-f,(b+u)*1.5,-u*.03,.5)],C=Xt(v),T=g.path(C,y),E=Xt(w),A=g.path(E,{...y,fillStyle:"solid"}),S=i.insert(()=>A,":first-child");return S.insert(()=>T,":first-child"),S.attr("class","basic label-container"),m&&e.look!=="handDrawn"&&S.selectAll("path").attr("style",m),n&&e.look!=="handDrawn"&&S.selectAll("path").attr("style",n),S.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-l/2+(e.padding??0)-(a.x-(a.left??0))},${-u/2+(e.padding??0)-h/2-(a.y-(a.top??0))})`),je(e,S),e.intersect=function(_){return Ye.polygon(e,v,_)},i}var xZ=N(()=>{"use strict";Ft();Ht();Wt();Ut();o(vZ,"taggedWaveEdgedRectangle")});async function bZ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await pt(t,e,ht(e)),s=Math.max(a.width+e.padding,e?.width||0),l=Math.max(a.height+e.padding,e?.height||0),u=-s/2,h=-l/2,f=i.insert("rect",":first-child");return f.attr("class","text").attr("style",n).attr("rx",0).attr("ry",0).attr("x",u).attr("y",h).attr("width",s).attr("height",l),je(e,f),e.intersect=function(d){return Ye.rect(e,d)},i}var wZ=N(()=>{"use strict";Ft();Ht();Ut();o(bZ,"text")});async function TZ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s,halfPadding:l}=await pt(t,e,ht(e)),u=e.look==="neo"?l*2:l,h=a.height+u,f=h/2,d=f/(2.5+h/50),p=a.width+d+u,{cssStyles:m}=e,g;if(e.look==="handDrawn"){let y=Xe.svg(i),v=w_e(0,0,p,h,d,f),x=T_e(0,0,p,h,d,f),b=y.path(v,Ke(e,{})),w=y.path(x,Ke(e,{fill:"none"}));g=i.insert(()=>w,":first-child"),g=i.insert(()=>b,":first-child"),g.attr("class","basic label-container"),m&&g.attr("style",m)}else{let y=b_e(0,0,p,h,d,f);g=i.insert("path",":first-child").attr("d",y).attr("class","basic label-container").attr("style",$n(m)).attr("style",n),g.attr("class","basic label-container"),m&&g.selectAll("path").attr("style",m),n&&g.selectAll("path").attr("style",n)}return g.attr("label-offset-x",d),g.attr("transform",`translate(${-p/2}, ${h/2} )`),s.attr("transform",`translate(${-(a.width/2)-d-(a.x-(a.left??0))}, ${-(a.height/2)-(a.y-(a.top??0))})`),je(e,g),e.intersect=function(y){let v=Ye.rect(e,y),x=v.y-(e.y??0);if(f!=0&&(Math.abs(x)<(e.height??0)/2||Math.abs(x)==(e.height??0)/2&&Math.abs(v.x-(e.x??0))>(e.width??0)/2-d)){let b=d*d*(1-x*x/(f*f));b!=0&&(b=Math.sqrt(Math.abs(b))),b=d-b,y.x-(e.x??0)>0&&(b=-b),v.x+=b}return v},i}var b_e,w_e,T_e,kZ=N(()=>{"use strict";Ft();Ut();Wt();Ht();ir();b_e=o((t,e,r,n,i,a)=>`M${t},${e} + a${i},${a} 0,0,1 0,${-n} + l${r},0 + a${i},${a} 0,0,1 0,${n} + M${r},${-n} + a${i},${a} 0,0,0 0,${n} + l${-r},0`,"createCylinderPathD"),w_e=o((t,e,r,n,i,a)=>[`M${t},${e}`,`M${t+r},${e}`,`a${i},${a} 0,0,0 0,${-n}`,`l${-r},0`,`a${i},${a} 0,0,0 0,${n}`,`l${r},0`].join(" "),"createOuterCylinderPathD"),T_e=o((t,e,r,n,i,a)=>[`M${t+r/2},${-n/2}`,`a${i},${a} 0,0,0 0,${n}`].join(" "),"createInnerCylinderPathD");o(TZ,"tiltedCylinder")});async function EZ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await pt(t,e,ht(e)),s=a.width+e.padding,l=a.height+e.padding,u=[{x:-3*l/6,y:0},{x:s+3*l/6,y:0},{x:s,y:-l},{x:0,y:-l}],h,{cssStyles:f}=e;if(e.look==="handDrawn"){let d=Xe.svg(i),p=Ke(e,{}),m=Xt(u),g=d.path(m,p);h=i.insert(()=>g,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),f&&h.attr("style",f)}else h=La(i,s,l,u);return n&&h.attr("style",n),e.width=s,e.height=l,je(e,h),e.intersect=function(d){return Ye.polygon(e,u,d)},i}var SZ=N(()=>{"use strict";Ft();Ht();Ut();Wt();_u();o(EZ,"trapezoid")});async function CZ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await pt(t,e,ht(e)),s=60,l=20,u=Math.max(s,a.width+(e.padding??0)*2,e?.width??0),h=Math.max(l,a.height+(e.padding??0)*2,e?.height??0),{cssStyles:f}=e,d=Xe.svg(i),p=Ke(e,{});e.look!=="handDrawn"&&(p.roughness=0,p.fillStyle="solid");let m=[{x:-u/2*.8,y:-h/2},{x:u/2*.8,y:-h/2},{x:u/2,y:-h/2*.6},{x:u/2,y:h/2},{x:-u/2,y:h/2},{x:-u/2,y:-h/2*.6}],g=Xt(m),y=d.path(g,p),v=i.insert(()=>y,":first-child");return v.attr("class","basic label-container"),f&&e.look!=="handDrawn"&&v.selectChildren("path").attr("style",f),n&&e.look!=="handDrawn"&&v.selectChildren("path").attr("style",n),je(e,v),e.intersect=function(x){return Ye.polygon(e,m,x)},i}var AZ=N(()=>{"use strict";Ft();Ht();Ut();Wt();o(CZ,"trapezoidalPentagon")});async function _Z(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await pt(t,e,ht(e)),l=fr(me().flowchart?.htmlLabels),u=a.width+(e.padding??0),h=u+a.height,f=u+a.height,d=[{x:0,y:0},{x:f,y:0},{x:f/2,y:-h}],{cssStyles:p}=e,m=Xe.svg(i),g=Ke(e,{});e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=Xt(d),v=m.path(y,g),x=i.insert(()=>v,":first-child").attr("transform",`translate(${-h/2}, ${h/2})`);return p&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",p),n&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",n),e.width=u,e.height=h,je(e,x),s.attr("transform",`translate(${-a.width/2-(a.x-(a.left??0))}, ${h/2-(a.height+(e.padding??0)/(l?2:1)-(a.y-(a.top??0)))})`),e.intersect=function(b){return Y.info("Triangle intersect",e,d,b),Ye.polygon(e,d,b)},i}var DZ=N(()=>{"use strict";vt();Ft();Ht();Ut();Wt();Ft();gr();zt();o(_Z,"triangle")});async function LZ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await pt(t,e,ht(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=u/8,f=u+h,{cssStyles:d}=e,m=70-l,g=m>0?m/2:0,y=Xe.svg(i),v=Ke(e,{});e.look!=="handDrawn"&&(v.roughness=0,v.fillStyle="solid");let x=[{x:-l/2-g,y:f/2},...Fo(-l/2-g,f/2,l/2+g,f/2,h,.8),{x:l/2+g,y:-f/2},{x:-l/2-g,y:-f/2}],b=Xt(x),w=y.path(b,v),C=i.insert(()=>w,":first-child");return C.attr("class","basic label-container"),d&&e.look!=="handDrawn"&&C.selectAll("path").attr("style",d),n&&e.look!=="handDrawn"&&C.selectAll("path").attr("style",n),C.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-l/2+(e.padding??0)-(a.x-(a.left??0))},${-u/2+(e.padding??0)-h-(a.y-(a.top??0))})`),je(e,C),e.intersect=function(T){return Ye.polygon(e,x,T)},i}var RZ=N(()=>{"use strict";Ft();Ht();Wt();Ut();o(LZ,"waveEdgedRectangle")});async function NZ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await pt(t,e,ht(e)),s=100,l=50,u=Math.max(a.width+(e.padding??0)*2,e?.width??0),h=Math.max(a.height+(e.padding??0)*2,e?.height??0),f=u/h,d=u,p=h;d>p*f?p=d/f:d=p*f,d=Math.max(d,s),p=Math.max(p,l);let m=Math.min(p*.2,p/4),g=p+m*2,{cssStyles:y}=e,v=Xe.svg(i),x=Ke(e,{});e.look!=="handDrawn"&&(x.roughness=0,x.fillStyle="solid");let b=[{x:-d/2,y:g/2},...Fo(-d/2,g/2,d/2,g/2,m,1),{x:d/2,y:-g/2},...Fo(d/2,-g/2,-d/2,-g/2,m,-1)],w=Xt(b),C=v.path(w,x),T=i.insert(()=>C,":first-child");return T.attr("class","basic label-container"),y&&e.look!=="handDrawn"&&T.selectAll("path").attr("style",y),n&&e.look!=="handDrawn"&&T.selectAll("path").attr("style",n),je(e,T),e.intersect=function(E){return Ye.polygon(e,b,E)},i}var MZ=N(()=>{"use strict";Ft();Ht();Ut();Wt();o(NZ,"waveRectangle")});async function IZ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await pt(t,e,ht(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=5,f=-l/2,d=-u/2,{cssStyles:p}=e,m=Xe.svg(i),g=Ke(e,{}),y=[{x:f-h,y:d-h},{x:f-h,y:d+u},{x:f+l,y:d+u},{x:f+l,y:d-h}],v=`M${f-h},${d-h} L${f+l},${d-h} L${f+l},${d+u} L${f-h},${d+u} L${f-h},${d-h} + M${f-h},${d} L${f+l},${d} + M${f},${d-h} L${f},${d+u}`;e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let x=m.path(v,g),b=i.insert(()=>x,":first-child");return b.attr("transform",`translate(${h/2}, ${h/2})`),b.attr("class","basic label-container"),p&&e.look!=="handDrawn"&&b.selectAll("path").attr("style",p),n&&e.look!=="handDrawn"&&b.selectAll("path").attr("style",n),s.attr("transform",`translate(${-(a.width/2)+h/2-(a.x-(a.left??0))}, ${-(a.height/2)+h/2-(a.y-(a.top??0))})`),je(e,b),e.intersect=function(w){return Ye.polygon(e,y,w)},i}var OZ=N(()=>{"use strict";Ft();Ut();Wt();Ht();o(IZ,"windowPane")});async function KD(t,e){let r=e;if(r.alias&&(e.label=r.alias),e.look==="handDrawn"){let{themeVariables:P}=cr(),{background:z}=P,$={...e,id:e.id+"-background",look:"default",cssStyles:["stroke: none",`fill: ${z}`]};await KD(t,$)}let n=cr();e.useHtmlLabels=n.htmlLabels;let i=n.er?.diagramPadding??10,a=n.er?.entityPadding??6,{cssStyles:s}=e,{labelStyles:l}=Qe(e);if(r.attributes.length===0&&e.label){let P={rx:0,ry:0,labelPaddingX:i,labelPaddingY:i*1.5,classes:""};ra(e.label,n)+P.labelPaddingX*20){let P=f.width+i*2-(m+g+y+v);m+=P/w,g+=P/w,y>0&&(y+=P/w),v>0&&(v+=P/w)}let T=m+g+y+v,E=Xe.svg(h),A=Ke(e,{});e.look!=="handDrawn"&&(A.roughness=0,A.fillStyle="solid");let S=Math.max(C.width+i*2,e?.width||0,T),_=Math.max(C.height+(p[0]||d)+a,e?.height||0),I=-S/2,D=-_/2;h.selectAll("g:not(:first-child)").each((P,z,$)=>{let H=Ge($[z]),Q=H.attr("transform"),j=0,ie=0;if(Q){let le=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(Q);le&&(j=parseFloat(le[1]),ie=parseFloat(le[2]),H.attr("class").includes("attribute-name")?j+=m:H.attr("class").includes("attribute-keys")?j+=m+g:H.attr("class").includes("attribute-comment")&&(j+=m+g+y))}H.attr("transform",`translate(${I+i/2+j}, ${ie+D+f.height+a/2})`)}),h.select(".name").attr("transform","translate("+-f.width/2+", "+(D+a/2)+")");let k=E.rectangle(I,D,S,_,A),L=h.insert(()=>k,":first-child").attr("style",s.join("")),{themeVariables:R}=cr(),{rowEven:O,rowOdd:M,nodeBorder:B}=R;p.push(0);for(let[P,z]of p.entries()){if(P===0&&p.length>1)continue;let $=P%2===0&&z!==0,H=E.rectangle(I,f.height+D+z,S,f.height,{...A,fill:$?O:M,stroke:B});h.insert(()=>H,"g.label").attr("style",s.join("")).attr("class",`row-rect-${P%2===0?"even":"odd"}`)}let F=E.line(I,f.height+D,S+I,f.height+D,A);h.insert(()=>F).attr("class","divider"),F=E.line(m+I,f.height+D,m+I,_+D,A),h.insert(()=>F).attr("class","divider"),x&&(F=E.line(m+g+I,f.height+D,m+g+I,_+D,A),h.insert(()=>F).attr("class","divider")),b&&(F=E.line(m+g+y+I,f.height+D,m+g+y+I,_+D,A),h.insert(()=>F).attr("class","divider"));for(let P of p)F=E.line(I,f.height+D+P,S+I,f.height+D+P,A),h.insert(()=>F).attr("class","divider");return je(e,L),e.intersect=function(P){return Ye.rect(e,P)},h}async function b2(t,e,r,n=0,i=0,a=[],s=""){let l=t.insert("g").attr("class",`label ${a.join(" ")}`).attr("transform",`translate(${n}, ${i})`).attr("style",s);e!==ec(e)&&(e=ec(e),e=e.replaceAll("<","<").replaceAll(">",">"));let u=l.node().appendChild(await Hn(l,e,{width:ra(e,r)+100,style:s,useHtmlLabels:r.htmlLabels},r));if(e.includes("<")||e.includes(">")){let f=u.children[0];for(f.textContent=f.textContent.replaceAll("<","<").replaceAll(">",">");f.childNodes[0];)f=f.childNodes[0],f.textContent=f.textContent.replaceAll("<","<").replaceAll(">",">")}let h=u.getBBox();if(fr(r.htmlLabels)){let f=u.children[0];f.style.textAlign="start";let d=Ge(u);h=f.getBoundingClientRect(),d.attr("width",h.width),d.attr("height",h.height)}return h}var PZ=N(()=>{"use strict";Ft();Ht();Ut();Wt();mm();ji();to();gr();dr();ir();o(KD,"erBox");o(b2,"addText")});async function BZ(t,e,r,n,i=r.class.padding??12){let a=n?0:3,s=t.insert("g").attr("class",ht(e)).attr("id",e.domId||e.id),l=null,u=null,h=null,f=null,d=0,p=0,m=0;if(l=s.insert("g").attr("class","annotation-group text"),e.annotations.length>0){let b=e.annotations[0];await Vw(l,{text:`\xAB${b}\xBB`},0),d=l.node().getBBox().height}u=s.insert("g").attr("class","label-group text"),await Vw(u,e,0,["font-weight: bolder"]);let g=u.node().getBBox();p=g.height,h=s.insert("g").attr("class","members-group text");let y=0;for(let b of e.members){let w=await Vw(h,b,y,[b.parseClassifier()]);y+=w+a}m=h.node().getBBox().height,m<=0&&(m=i/2),f=s.insert("g").attr("class","methods-group text");let v=0;for(let b of e.methods){let w=await Vw(f,b,v,[b.parseClassifier()]);v+=w+a}let x=s.node().getBBox();if(l!==null){let b=l.node().getBBox();l.attr("transform",`translate(${-b.width/2})`)}return u.attr("transform",`translate(${-g.width/2}, ${d})`),x=s.node().getBBox(),h.attr("transform",`translate(0, ${d+p+i*2})`),x=s.node().getBBox(),f.attr("transform",`translate(0, ${d+p+(m?m+i*4:i*2)})`),x=s.node().getBBox(),{shapeSvg:s,bbox:x}}async function Vw(t,e,r,n=[]){let i=t.insert("g").attr("class","label").attr("style",n.join("; ")),a=cr(),s="useHtmlLabels"in e?e.useHtmlLabels:fr(a.htmlLabels)??!0,l="";"text"in e?l=e.text:l=e.label,!s&&l.startsWith("\\")&&(l=l.substring(1)),pi(l)&&(s=!0);let u=await Hn(i,Xy(na(l)),{width:ra(l,a)+50,classes:"markdown-node-label",useHtmlLabels:s},a),h,f=1;if(s){let d=u.children[0],p=Ge(u);f=d.innerHTML.split("
    ").length,d.innerHTML.includes("")&&(f+=d.innerHTML.split("").length-1);let m=d.getElementsByTagName("img");if(m){let g=l.replace(/]*>/g,"").trim()==="";await Promise.all([...m].map(y=>new Promise(v=>{function x(){if(y.style.display="flex",y.style.flexDirection="column",g){let b=a.fontSize?.toString()??window.getComputedStyle(document.body).fontSize,C=parseInt(b,10)*5+"px";y.style.minWidth=C,y.style.maxWidth=C}else y.style.width="100%";v(y)}o(x,"setupImage"),setTimeout(()=>{y.complete&&x()}),y.addEventListener("error",x),y.addEventListener("load",x)})))}h=d.getBoundingClientRect(),p.attr("width",h.width),p.attr("height",h.height)}else{n.includes("font-weight: bolder")&&Ge(u).selectAll("tspan").attr("font-weight",""),f=u.children.length;let d=u.children[0];(u.textContent===""||u.textContent.includes(">"))&&(d.textContent=l[0]+l.substring(1).replaceAll(">",">").replaceAll("<","<").trim(),l[1]===" "&&(d.textContent=d.textContent[0]+" "+d.textContent.substring(1))),d.textContent==="undefined"&&(d.textContent=""),h=u.getBBox()}return i.attr("transform","translate(0,"+(-h.height/(2*f)+r)+")"),h.height}var FZ=N(()=>{"use strict";dr();ji();Ft();ir();zt();to();gr();o(BZ,"textHelper");o(Vw,"addText")});async function $Z(t,e){let r=me(),n=r.class.padding??12,i=n,a=e.useHtmlLabels??fr(r.htmlLabels)??!0,s=e;s.annotations=s.annotations??[],s.members=s.members??[],s.methods=s.methods??[];let{shapeSvg:l,bbox:u}=await BZ(t,e,r,a,i),{labelStyles:h,nodeStyles:f}=Qe(e);e.labelStyle=h,e.cssStyles=s.styles||"";let d=s.styles?.join(";")||f||"";e.cssStyles||(e.cssStyles=d.replaceAll("!important","").split(";"));let p=s.members.length===0&&s.methods.length===0&&!r.class?.hideEmptyMembersBox,m=Xe.svg(l),g=Ke(e,{});e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=u.width,v=u.height;s.members.length===0&&s.methods.length===0?v+=i:s.members.length>0&&s.methods.length===0&&(v+=i*2);let x=-y/2,b=-v/2,w=m.rectangle(x-n,b-n-(p?n:s.members.length===0&&s.methods.length===0?-n/2:0),y+2*n,v+2*n+(p?n*2:s.members.length===0&&s.methods.length===0?-n:0),g),C=l.insert(()=>w,":first-child");C.attr("class","basic label-container");let T=C.node().getBBox();l.selectAll(".text").each((_,I,D)=>{let k=Ge(D[I]),L=k.attr("transform"),R=0;if(L){let F=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(L);F&&(R=parseFloat(F[2]))}let O=R+b+n-(p?n:s.members.length===0&&s.methods.length===0?-n/2:0);a||(O-=4);let M=x;(k.attr("class").includes("label-group")||k.attr("class").includes("annotation-group"))&&(M=-k.node()?.getBBox().width/2||0,l.selectAll("text").each(function(B,F,P){window.getComputedStyle(P[F]).textAnchor==="middle"&&(M=0)})),k.attr("transform",`translate(${M}, ${O})`)});let E=l.select(".annotation-group").node().getBBox().height-(p?n/2:0)||0,A=l.select(".label-group").node().getBBox().height-(p?n/2:0)||0,S=l.select(".members-group").node().getBBox().height-(p?n/2:0)||0;if(s.members.length>0||s.methods.length>0||p){let _=m.line(T.x,E+A+b+n,T.x+T.width,E+A+b+n,g);l.insert(()=>_).attr("class","divider").attr("style",d)}if(p||s.members.length>0||s.methods.length>0){let _=m.line(T.x,E+A+S+b+i*2+n,T.x+T.width,E+A+S+b+n+i*2,g);l.insert(()=>_).attr("class","divider").attr("style",d)}if(s.look!=="handDrawn"&&l.selectAll("path").attr("style",d),C.select(":nth-child(2)").attr("style",d),l.selectAll(".divider").select("path").attr("style",d),e.labelStyle?l.selectAll("span").attr("style",e.labelStyle):l.selectAll("span").attr("style",d),!a){let _=RegExp(/color\s*:\s*([^;]*)/),I=_.exec(d);if(I){let D=I[0].replace("color","fill");l.selectAll("tspan").attr("style",D)}else if(h){let D=_.exec(h);if(D){let k=D[0].replace("color","fill");l.selectAll("tspan").attr("style",k)}}}return je(e,C),e.intersect=function(_){return Ye.rect(e,_)},l}var zZ=N(()=>{"use strict";Ft();zt();dr();Wt();Ut();Ht();FZ();gr();o($Z,"classBox")});async function GZ(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let i=e,a=e,s=20,l=20,u="verifyMethod"in e,h=ht(e),f=t.insert("g").attr("class",h).attr("id",e.domId??e.id),d;u?d=await Lu(f,`<<${i.type}>>`,0,e.labelStyle):d=await Lu(f,"<<Element>>",0,e.labelStyle);let p=d,m=await Lu(f,i.name,p,e.labelStyle+"; font-weight: bold;");if(p+=m+l,u){let E=await Lu(f,`${i.requirementId?`Id: ${i.requirementId}`:""}`,p,e.labelStyle);p+=E;let A=await Lu(f,`${i.text?`Text: ${i.text}`:""}`,p,e.labelStyle);p+=A;let S=await Lu(f,`${i.risk?`Risk: ${i.risk}`:""}`,p,e.labelStyle);p+=S,await Lu(f,`${i.verifyMethod?`Verification: ${i.verifyMethod}`:""}`,p,e.labelStyle)}else{let E=await Lu(f,`${a.type?`Type: ${a.type}`:""}`,p,e.labelStyle);p+=E,await Lu(f,`${a.docRef?`Doc Ref: ${a.docRef}`:""}`,p,e.labelStyle)}let g=(f.node()?.getBBox().width??200)+s,y=(f.node()?.getBBox().height??200)+s,v=-g/2,x=-y/2,b=Xe.svg(f),w=Ke(e,{});e.look!=="handDrawn"&&(w.roughness=0,w.fillStyle="solid");let C=b.rectangle(v,x,g,y,w),T=f.insert(()=>C,":first-child");if(T.attr("class","basic label-container").attr("style",n),f.selectAll(".label").each((E,A,S)=>{let _=Ge(S[A]),I=_.attr("transform"),D=0,k=0;if(I){let M=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(I);M&&(D=parseFloat(M[1]),k=parseFloat(M[2]))}let L=k-y/2,R=v+s/2;(A===0||A===1)&&(R=D),_.attr("transform",`translate(${R}, ${L+s})`)}),p>d+m+l){let E=b.line(v,x+d+m+l,v+g,x+d+m+l,w);f.insert(()=>E).attr("style",n)}return je(e,T),e.intersect=function(E){return Ye.rect(e,E)},f}async function Lu(t,e,r,n=""){if(e==="")return 0;let i=t.insert("g").attr("class","label").attr("style",n),a=me(),s=a.htmlLabels??!0,l=await Hn(i,Xy(na(e)),{width:ra(e,a)+50,classes:"markdown-node-label",useHtmlLabels:s,style:n},a),u;if(s){let h=l.children[0],f=Ge(l);u=h.getBoundingClientRect(),f.attr("width",u.width),f.attr("height",u.height)}else{let h=l.children[0];for(let f of h.children)f.textContent=f.textContent.replaceAll(">",">").replaceAll("<","<"),n&&f.setAttribute("style",n);u=l.getBBox(),u.height+=6}return i.attr("transform",`translate(${-u.width/2},${-u.height/2+r})`),u.height}var VZ=N(()=>{"use strict";Ft();Ht();Ut();Wt();ir();zt();to();dr();o(GZ,"requirementBox");o(Lu,"addText")});async function UZ(t,e,{config:r}){let{labelStyles:n,nodeStyles:i}=Qe(e);e.labelStyle=n||"";let a=10,s=e.width;e.width=(e.width??200)-10;let{shapeSvg:l,bbox:u,label:h}=await pt(t,e,ht(e)),f=e.padding||10,d="",p;"ticket"in e&&e.ticket&&r?.kanban?.ticketBaseUrl&&(d=r?.kanban?.ticketBaseUrl.replace("#TICKET#",e.ticket),p=l.insert("svg:a",":first-child").attr("class","kanban-ticket-link").attr("xlink:href",d).attr("target","_blank"));let m={useHtmlLabels:e.useHtmlLabels,labelStyle:e.labelStyle||"",width:e.width,img:e.img,padding:e.padding||8,centerLabel:!1},g,y;p?{label:g,bbox:y}=await Dw(p,"ticket"in e&&e.ticket||"",m):{label:g,bbox:y}=await Dw(l,"ticket"in e&&e.ticket||"",m);let{label:v,bbox:x}=await Dw(l,"assigned"in e&&e.assigned||"",m);e.width=s;let b=10,w=e?.width||0,C=Math.max(y.height,x.height)/2,T=Math.max(u.height+b*2,e?.height||0)+C,E=-w/2,A=-T/2;h.attr("transform","translate("+(f-w/2)+", "+(-C-u.height/2)+")"),g.attr("transform","translate("+(f-w/2)+", "+(-C+u.height/2)+")"),v.attr("transform","translate("+(f+w/2-x.width-2*a)+", "+(-C+u.height/2)+")");let S,{rx:_,ry:I}=e,{cssStyles:D}=e;if(e.look==="handDrawn"){let k=Xe.svg(l),L=Ke(e,{}),R=_||I?k.path(Na(E,A,w,T,_||0),L):k.rectangle(E,A,w,T,L);S=l.insert(()=>R,":first-child"),S.attr("class","basic label-container").attr("style",D||null)}else{S=l.insert("rect",":first-child"),S.attr("class","basic label-container __APA__").attr("style",i).attr("rx",_??5).attr("ry",I??5).attr("x",E).attr("y",A).attr("width",w).attr("height",T);let k="priority"in e&&e.priority;if(k){let L=l.append("line"),R=E+2,O=A+Math.floor((_??0)/2),M=A+T-Math.floor((_??0)/2);L.attr("x1",R).attr("y1",O).attr("x2",R).attr("y2",M).attr("stroke-width","4").attr("stroke",k_e(k))}}return je(e,S),e.height=T,e.intersect=function(k){return Ye.rect(e,k)},l}var k_e,HZ=N(()=>{"use strict";Ft();Ht();qh();Ut();Wt();k_e=o(t=>{switch(t){case"Very High":return"red";case"High":return"orange";case"Medium":return null;case"Low":return"blue";case"Very Low":return"lightblue"}},"colorFromPriority");o(UZ,"kanbanItem")});function WZ(t){return t in QD}var E_e,S_e,QD,ZD=N(()=>{"use strict";NK();OK();BK();$K();GK();UK();WK();YK();jK();QK();JK();tQ();nQ();aQ();oQ();cQ();hQ();dQ();mQ();yQ();xQ();wQ();kQ();SQ();AQ();DQ();RQ();MQ();OQ();BQ();$Q();GQ();UQ();WQ();YQ();jQ();QQ();JQ();tZ();nZ();aZ();oZ();cZ();hZ();dZ();mZ();yZ();xZ();wZ();kZ();SZ();AZ();DZ();RZ();MZ();OZ();PZ();zZ();VZ();HZ();E_e=[{semanticName:"Process",name:"Rectangle",shortName:"rect",description:"Standard process shape",aliases:["proc","process","rectangle"],internalAliases:["squareRect"],handler:iZ},{semanticName:"Event",name:"Rounded Rectangle",shortName:"rounded",description:"Represents an event",aliases:["event"],internalAliases:["roundedRect"],handler:ZQ},{semanticName:"Terminal Point",name:"Stadium",shortName:"stadium",description:"Terminal point",aliases:["terminal","pill"],handler:sZ},{semanticName:"Subprocess",name:"Framed Rectangle",shortName:"fr-rect",description:"Subprocess",aliases:["subprocess","subproc","framed-rectangle","subroutine"],handler:pZ},{semanticName:"Database",name:"Cylinder",shortName:"cyl",description:"Database storage",aliases:["db","database","cylinder"],handler:ZK},{semanticName:"Start",name:"Circle",shortName:"circle",description:"Starting point",aliases:["circ"],handler:zK},{semanticName:"Decision",name:"Diamond",shortName:"diam",description:"Decision-making step",aliases:["decision","diamond","question"],handler:qQ},{semanticName:"Prepare Conditional",name:"Hexagon",shortName:"hex",description:"Preparation or condition step",aliases:["hexagon","prepare"],handler:fQ},{semanticName:"Data Input/Output",name:"Lean Right",shortName:"lean-r",description:"Represents input or output",aliases:["lean-right","in-out"],internalAliases:["lean_right"],handler:NQ},{semanticName:"Data Input/Output",name:"Lean Left",shortName:"lean-l",description:"Represents output or input",aliases:["lean-left","out-in"],internalAliases:["lean_left"],handler:LQ},{semanticName:"Priority Action",name:"Trapezoid Base Bottom",shortName:"trap-b",description:"Priority action",aliases:["priority","trapezoid-bottom","trapezoid"],handler:EZ},{semanticName:"Manual Operation",name:"Trapezoid Base Top",shortName:"trap-t",description:"Represents a manual task",aliases:["manual","trapezoid-top","inv-trapezoid"],internalAliases:["inv_trapezoid"],handler:CQ},{semanticName:"Stop",name:"Double Circle",shortName:"dbl-circ",description:"Represents a stop point",aliases:["double-circle"],internalAliases:["doublecircle"],handler:rQ},{semanticName:"Text Block",name:"Text Block",shortName:"text",description:"Text block",handler:bZ},{semanticName:"Card",name:"Notched Rectangle",shortName:"notch-rect",description:"Represents a card",aliases:["card","notched-rectangle"],handler:PK},{semanticName:"Lined/Shaded Process",name:"Lined Rectangle",shortName:"lin-rect",description:"Lined process shape",aliases:["lined-rectangle","lined-process","lin-proc","shaded-process"],handler:eZ},{semanticName:"Start",name:"Small Circle",shortName:"sm-circ",description:"Small starting point",aliases:["start","small-circle"],internalAliases:["stateStart"],handler:fZ},{semanticName:"Stop",name:"Framed Circle",shortName:"fr-circ",description:"Stop point",aliases:["stop","framed-circle"],internalAliases:["stateEnd"],handler:uZ},{semanticName:"Fork/Join",name:"Filled Rectangle",shortName:"fork",description:"Fork or join in process flow",aliases:["join"],internalAliases:["forkJoin"],handler:lQ},{semanticName:"Collate",name:"Hourglass",shortName:"hourglass",description:"Represents a collate operation",aliases:["hourglass","collate"],handler:pQ},{semanticName:"Comment",name:"Curly Brace",shortName:"brace",description:"Adds a comment",aliases:["comment","brace-l"],handler:HK},{semanticName:"Comment Right",name:"Curly Brace",shortName:"brace-r",description:"Adds a comment",handler:qK},{semanticName:"Comment with braces on both sides",name:"Curly Braces",shortName:"braces",description:"Adds a comment",handler:XK},{semanticName:"Com Link",name:"Lightning Bolt",shortName:"bolt",description:"Communication link",aliases:["com-link","lightning-bolt"],handler:IQ},{semanticName:"Document",name:"Document",shortName:"doc",description:"Represents a document",aliases:["doc","document"],handler:LZ},{semanticName:"Delay",name:"Half-Rounded Rectangle",shortName:"delay",description:"Represents a delay",aliases:["half-rounded-rectangle"],handler:uQ},{semanticName:"Direct Access Storage",name:"Horizontal Cylinder",shortName:"h-cyl",description:"Direct access storage",aliases:["das","horizontal-cylinder"],handler:TZ},{semanticName:"Disk Storage",name:"Lined Cylinder",shortName:"lin-cyl",description:"Disk storage",aliases:["disk","lined-cylinder"],handler:PQ},{semanticName:"Display",name:"Curved Trapezoid",shortName:"curv-trap",description:"Represents a display",aliases:["curved-trapezoid","display"],handler:KK},{semanticName:"Divided Process",name:"Divided Rectangle",shortName:"div-rect",description:"Divided process shape",aliases:["div-proc","divided-rectangle","divided-process"],handler:eQ},{semanticName:"Extract",name:"Triangle",shortName:"tri",description:"Extraction process",aliases:["extract","triangle"],handler:_Z},{semanticName:"Internal Storage",name:"Window Pane",shortName:"win-pane",description:"Internal storage",aliases:["internal-storage","window-pane"],handler:IZ},{semanticName:"Junction",name:"Filled Circle",shortName:"f-circ",description:"Junction point",aliases:["junction","filled-circle"],handler:iQ},{semanticName:"Loop Limit",name:"Trapezoidal Pentagon",shortName:"notch-pent",description:"Loop limit step",aliases:["loop-limit","notched-pentagon"],handler:CZ},{semanticName:"Manual File",name:"Flipped Triangle",shortName:"flip-tri",description:"Manual file operation",aliases:["manual-file","flipped-triangle"],handler:sQ},{semanticName:"Manual Input",name:"Sloped Rectangle",shortName:"sl-rect",description:"Manual input step",aliases:["manual-input","sloped-rectangle"],handler:rZ},{semanticName:"Multi-Document",name:"Stacked Document",shortName:"docs",description:"Multiple documents",aliases:["documents","st-doc","stacked-document"],handler:VQ},{semanticName:"Multi-Process",name:"Stacked Rectangle",shortName:"st-rect",description:"Multiple processes",aliases:["procs","processes","stacked-rectangle"],handler:zQ},{semanticName:"Stored Data",name:"Bow Tie Rectangle",shortName:"bow-rect",description:"Stored data",aliases:["stored-data","bow-tie-rectangle"],handler:IK},{semanticName:"Summary",name:"Crossed Circle",shortName:"cross-circ",description:"Summary",aliases:["summary","crossed-circle"],handler:VK},{semanticName:"Tagged Document",name:"Tagged Document",shortName:"tag-doc",description:"Tagged document",aliases:["tag-doc","tagged-document"],handler:vZ},{semanticName:"Tagged Process",name:"Tagged Rectangle",shortName:"tag-rect",description:"Tagged process",aliases:["tagged-rectangle","tag-proc","tagged-process"],handler:gZ},{semanticName:"Paper Tape",name:"Flag",shortName:"flag",description:"Paper tape",aliases:["paper-tape"],handler:NZ},{semanticName:"Odd",name:"Odd",shortName:"odd",description:"Odd shape",internalAliases:["rect_left_inv_arrow"],handler:XQ},{semanticName:"Lined Document",name:"Lined Document",shortName:"lin-doc",description:"Lined document",aliases:["lined-document"],handler:FQ}],S_e=o(()=>{let e=[...Object.entries({state:lZ,choice:FK,note:HQ,rectWithTitle:KQ,labelRect:_Q,iconSquare:TQ,iconCircle:vQ,icon:gQ,iconRounded:bQ,imageSquare:EQ,anchor:RK,kanbanItem:UZ,classBox:$Z,erBox:KD,requirementBox:GZ}),...E_e.flatMap(r=>[r.shortName,..."aliases"in r?r.aliases:[],..."internalAliases"in r?r.internalAliases:[]].map(i=>[i,r.handler]))];return Object.fromEntries(e)},"generateShapeMap"),QD=S_e();o(WZ,"isValidShape")});var C_e,Uw,qZ=N(()=>{"use strict";dr();Ew();zt();vt();ZD();ir();gr();mi();C_e="flowchart-",Uw=class{constructor(){this.vertexCounter=0;this.config=me();this.vertices=new Map;this.edges=[];this.classes=new Map;this.subGraphs=[];this.subGraphLookup=new Map;this.tooltips=new Map;this.subCount=0;this.firstGraphFlag=!0;this.secCount=-1;this.posCrossRef=[];this.funs=[];this.setAccTitle=Lr;this.setAccDescription=Nr;this.setDiagramTitle=$r;this.getAccTitle=Rr;this.getAccDescription=Mr;this.getDiagramTitle=Ir;this.funs.push(this.setupToolTips.bind(this)),this.addVertex=this.addVertex.bind(this),this.firstGraph=this.firstGraph.bind(this),this.setDirection=this.setDirection.bind(this),this.addSubGraph=this.addSubGraph.bind(this),this.addLink=this.addLink.bind(this),this.setLink=this.setLink.bind(this),this.updateLink=this.updateLink.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.destructLink=this.destructLink.bind(this),this.setClickEvent=this.setClickEvent.bind(this),this.setTooltip=this.setTooltip.bind(this),this.updateLinkInterpolate=this.updateLinkInterpolate.bind(this),this.setClickFun=this.setClickFun.bind(this),this.bindFunctions=this.bindFunctions.bind(this),this.lex={firstGraph:this.firstGraph.bind(this)},this.clear(),this.setGen("gen-2")}static{o(this,"FlowDB")}sanitizeText(e){return Ze.sanitizeText(e,this.config)}lookUpDomId(e){for(let r of this.vertices.values())if(r.id===e)return r.domId;return e}addVertex(e,r,n,i,a,s,l={},u){if(!e||e.trim().length===0)return;let h;if(u!==void 0){let m;u.includes(` +`)?m=u+` +`:m=`{ +`+u+` +}`,h=cm(m,{schema:lm})}let f=this.edges.find(m=>m.id===e);if(f){let m=h;m?.animate!==void 0&&(f.animate=m.animate),m?.animation!==void 0&&(f.animation=m.animation);return}let d,p=this.vertices.get(e);if(p===void 0&&(p={id:e,labelType:"text",domId:C_e+e+"-"+this.vertexCounter,styles:[],classes:[]},this.vertices.set(e,p)),this.vertexCounter++,r!==void 0?(this.config=me(),d=this.sanitizeText(r.text.trim()),p.labelType=r.type,d.startsWith('"')&&d.endsWith('"')&&(d=d.substring(1,d.length-1)),p.text=d):p.text===void 0&&(p.text=e),n!==void 0&&(p.type=n),i?.forEach(m=>{p.styles.push(m)}),a?.forEach(m=>{p.classes.push(m)}),s!==void 0&&(p.dir=s),p.props===void 0?p.props=l:l!==void 0&&Object.assign(p.props,l),h!==void 0){if(h.shape){if(h.shape!==h.shape.toLowerCase()||h.shape.includes("_"))throw new Error(`No such shape: ${h.shape}. Shape names should be lowercase.`);if(!WZ(h.shape))throw new Error(`No such shape: ${h.shape}.`);p.type=h?.shape}h?.label&&(p.text=h?.label),h?.icon&&(p.icon=h?.icon,!h.label?.trim()&&p.text===e&&(p.text="")),h?.form&&(p.form=h?.form),h?.pos&&(p.pos=h?.pos),h?.img&&(p.img=h?.img,!h.label?.trim()&&p.text===e&&(p.text="")),h?.constraint&&(p.constraint=h.constraint),h.w&&(p.assetWidth=Number(h.w)),h.h&&(p.assetHeight=Number(h.h))}}addSingleLink(e,r,n,i){let l={start:e,end:r,type:void 0,text:"",labelType:"text",classes:[],isUserDefinedId:!1,interpolate:this.edges.defaultInterpolate};Y.info("abc78 Got edge...",l);let u=n.text;if(u!==void 0&&(l.text=this.sanitizeText(u.text.trim()),l.text.startsWith('"')&&l.text.endsWith('"')&&(l.text=l.text.substring(1,l.text.length-1)),l.labelType=u.type),n!==void 0&&(l.type=n.type,l.stroke=n.stroke,l.length=n.length>10?10:n.length),i&&!this.edges.some(h=>h.id===i))l.id=i,l.isUserDefinedId=!0;else{let h=this.edges.filter(f=>f.start===l.start&&f.end===l.end);h.length===0?l.id=$h(l.start,l.end,{counter:0,prefix:"L"}):l.id=$h(l.start,l.end,{counter:h.length+1,prefix:"L"})}if(this.edges.length<(this.config.maxEdges??500))Y.info("Pushing edge..."),this.edges.push(l);else throw new Error(`Edge limit exceeded. ${this.edges.length} edges found, but the limit is ${this.config.maxEdges}. + +Initialize mermaid with maxEdges set to a higher number to allow more edges. +You cannot set this config via configuration inside the diagram as it is a secure config. +You have to call mermaid.initialize.`)}isLinkData(e){return e!==null&&typeof e=="object"&&"id"in e&&typeof e.id=="string"}addLink(e,r,n){let i=this.isLinkData(n)?n.id.replace("@",""):void 0;Y.info("addLink",e,r,i);for(let a of e)for(let s of r){let l=a===e[e.length-1],u=s===r[0];l&&u?this.addSingleLink(a,s,n,i):this.addSingleLink(a,s,n,void 0)}}updateLinkInterpolate(e,r){e.forEach(n=>{n==="default"?this.edges.defaultInterpolate=r:this.edges[n].interpolate=r})}updateLink(e,r){e.forEach(n=>{if(typeof n=="number"&&n>=this.edges.length)throw new Error(`The index ${n} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${this.edges.length-1}. (Help: Ensure that the index is within the range of existing edges.)`);n==="default"?this.edges.defaultStyle=r:(this.edges[n].style=r,(this.edges[n]?.style?.length??0)>0&&!this.edges[n]?.style?.some(i=>i?.startsWith("fill"))&&this.edges[n]?.style?.push("fill:none"))})}addClass(e,r){let n=r.join().replace(/\\,/g,"\xA7\xA7\xA7").replace(/,/g,";").replace(/§§§/g,",").split(";");e.split(",").forEach(i=>{let a=this.classes.get(i);a===void 0&&(a={id:i,styles:[],textStyles:[]},this.classes.set(i,a)),n?.forEach(s=>{if(/color/.exec(s)){let l=s.replace("fill","bgFill");a.textStyles.push(l)}a.styles.push(s)})})}setDirection(e){this.direction=e,/.*/.exec(this.direction)&&(this.direction="LR"),/.*v/.exec(this.direction)&&(this.direction="TB"),this.direction==="TD"&&(this.direction="TB")}setClass(e,r){for(let n of e.split(",")){let i=this.vertices.get(n);i&&i.classes.push(r);let a=this.edges.find(l=>l.id===n);a&&a.classes.push(r);let s=this.subGraphLookup.get(n);s&&s.classes.push(r)}}setTooltip(e,r){if(r!==void 0){r=this.sanitizeText(r);for(let n of e.split(","))this.tooltips.set(this.version==="gen-1"?this.lookUpDomId(n):n,r)}}setClickFun(e,r,n){let i=this.lookUpDomId(e);if(me().securityLevel!=="loose"||r===void 0)return;let a=[];if(typeof n=="string"){a=n.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let l=0;l{let l=document.querySelector(`[id="${i}"]`);l!==null&&l.addEventListener("click",()=>{Gt.runFunc(r,...a)},!1)}))}setLink(e,r,n){e.split(",").forEach(i=>{let a=this.vertices.get(i);a!==void 0&&(a.link=Gt.formatUrl(r,this.config),a.linkTarget=n)}),this.setClass(e,"clickable")}getTooltip(e){return this.tooltips.get(e)}setClickEvent(e,r,n){e.split(",").forEach(i=>{this.setClickFun(i,r,n)}),this.setClass(e,"clickable")}bindFunctions(e){this.funs.forEach(r=>{r(e)})}getDirection(){return this.direction?.trim()}getVertices(){return this.vertices}getEdges(){return this.edges}getClasses(){return this.classes}setupToolTips(e){let r=Ge(".mermaidTooltip");(r._groups||r)[0][0]===null&&(r=Ge("body").append("div").attr("class","mermaidTooltip").style("opacity",0)),Ge(e).select("svg").selectAll("g.node").on("mouseover",a=>{let s=Ge(a.currentTarget);if(s.attr("title")===null)return;let u=a.currentTarget?.getBoundingClientRect();r.transition().duration(200).style("opacity",".9"),r.text(s.attr("title")).style("left",window.scrollX+u.left+(u.right-u.left)/2+"px").style("top",window.scrollY+u.bottom+"px"),r.html(r.html().replace(/<br\/>/g,"
    ")),s.classed("hover",!0)}).on("mouseout",a=>{r.transition().duration(500).style("opacity",0),Ge(a.currentTarget).classed("hover",!1)})}clear(e="gen-2"){this.vertices=new Map,this.classes=new Map,this.edges=[],this.funs=[this.setupToolTips.bind(this)],this.subGraphs=[],this.subGraphLookup=new Map,this.subCount=0,this.tooltips=new Map,this.firstGraphFlag=!0,this.version=e,this.config=me(),Ar()}setGen(e){this.version=e||"gen-2"}defaultStyle(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"}addSubGraph(e,r,n){let i=e.text.trim(),a=n.text;e===n&&/\s/.exec(n.text)&&(i=void 0);let s=o(f=>{let d={boolean:{},number:{},string:{}},p=[],m;return{nodeList:f.filter(function(y){let v=typeof y;return y.stmt&&y.stmt==="dir"?(m=y.value,!1):y.trim()===""?!1:v in d?d[v].hasOwnProperty(y)?!1:d[v][y]=!0:p.includes(y)?!1:p.push(y)}),dir:m}},"uniq"),{nodeList:l,dir:u}=s(r.flat());if(this.version==="gen-1")for(let f=0;f2e3)return{result:!1,count:0};if(this.posCrossRef[this.secCount]=r,this.subGraphs[r].id===e)return{result:!0,count:0};let i=0,a=1;for(;i=0){let l=this.indexNodes2(e,s);if(l.result)return{result:!0,count:a+l.count};a=a+l.count}i=i+1}return{result:!1,count:a}}getDepthFirstPos(e){return this.posCrossRef[e]}indexNodes(){this.secCount=-1,this.subGraphs.length>0&&this.indexNodes2("none",this.subGraphs.length-1)}getSubGraphs(){return this.subGraphs}firstGraph(){return this.firstGraphFlag?(this.firstGraphFlag=!1,!0):!1}destructStartLink(e){let r=e.trim(),n="arrow_open";switch(r[0]){case"<":n="arrow_point",r=r.slice(1);break;case"x":n="arrow_cross",r=r.slice(1);break;case"o":n="arrow_circle",r=r.slice(1);break}let i="normal";return r.includes("=")&&(i="thick"),r.includes(".")&&(i="dotted"),{type:n,stroke:i}}countChar(e,r){let n=r.length,i=0;for(let a=0;a":i="arrow_point",r.startsWith("<")&&(i="double_"+i,n=n.slice(1));break;case"o":i="arrow_circle",r.startsWith("o")&&(i="double_"+i,n=n.slice(1));break}let a="normal",s=n.length-1;n.startsWith("=")&&(a="thick"),n.startsWith("~")&&(a="invisible");let l=this.countChar(".",n);return l&&(a="dotted",s=l),{type:i,stroke:a,length:s}}destructLink(e,r){let n=this.destructEndLink(e),i;if(r){if(i=this.destructStartLink(r),i.stroke!==n.stroke)return{type:"INVALID",stroke:"INVALID"};if(i.type==="arrow_open")i.type=n.type;else{if(i.type!==n.type)return{type:"INVALID",stroke:"INVALID"};i.type="double_"+i.type}return i.type==="double_arrow"&&(i.type="double_arrow_point"),i.length=n.length,i}return n}exists(e,r){for(let n of e)if(n.nodes.includes(r))return!0;return!1}makeUniq(e,r){let n=[];return e.nodes.forEach((i,a)=>{this.exists(r,i)||n.push(e.nodes[a])}),{nodes:n}}getTypeFromVertex(e){if(e.img)return"imageSquare";if(e.icon)return e.form==="circle"?"iconCircle":e.form==="square"?"iconSquare":e.form==="rounded"?"iconRounded":"icon";switch(e.type){case"square":case void 0:return"squareRect";case"round":return"roundedRect";case"ellipse":return"ellipse";default:return e.type}}findNode(e,r){return e.find(n=>n.id===r)}destructEdgeType(e){let r="none",n="arrow_point";switch(e){case"arrow_point":case"arrow_circle":case"arrow_cross":n=e;break;case"double_arrow_point":case"double_arrow_circle":case"double_arrow_cross":r=e.replace("double_",""),n=r;break}return{arrowTypeStart:r,arrowTypeEnd:n}}addNodeFromVertex(e,r,n,i,a,s){let l=n.get(e.id),u=i.get(e.id)??!1,h=this.findNode(r,e.id);if(h)h.cssStyles=e.styles,h.cssCompiledStyles=this.getCompiledStyles(e.classes),h.cssClasses=e.classes.join(" ");else{let f={id:e.id,label:e.text,labelStyle:"",parentId:l,padding:a.flowchart?.padding||8,cssStyles:e.styles,cssCompiledStyles:this.getCompiledStyles(["default","node",...e.classes]),cssClasses:"default "+e.classes.join(" "),dir:e.dir,domId:e.domId,look:s,link:e.link,linkTarget:e.linkTarget,tooltip:this.getTooltip(e.id),icon:e.icon,pos:e.pos,img:e.img,assetWidth:e.assetWidth,assetHeight:e.assetHeight,constraint:e.constraint};u?r.push({...f,isGroup:!0,shape:"rect"}):r.push({...f,isGroup:!1,shape:this.getTypeFromVertex(e)})}}getCompiledStyles(e){let r=[];for(let n of e){let i=this.classes.get(n);i?.styles&&(r=[...r,...i.styles??[]].map(a=>a.trim())),i?.textStyles&&(r=[...r,...i.textStyles??[]].map(a=>a.trim()))}return r}getData(){let e=me(),r=[],n=[],i=this.getSubGraphs(),a=new Map,s=new Map;for(let h=i.length-1;h>=0;h--){let f=i[h];f.nodes.length>0&&s.set(f.id,!0);for(let d of f.nodes)a.set(d,f.id)}for(let h=i.length-1;h>=0;h--){let f=i[h];r.push({id:f.id,label:f.title,labelStyle:"",parentId:a.get(f.id),padding:8,cssCompiledStyles:this.getCompiledStyles(f.classes),cssClasses:f.classes.join(" "),shape:"rect",dir:f.dir,isGroup:!0,look:e.look})}this.getVertices().forEach(h=>{this.addNodeFromVertex(h,r,a,s,e,e.look||"classic")});let u=this.getEdges();return u.forEach((h,f)=>{let{arrowTypeStart:d,arrowTypeEnd:p}=this.destructEdgeType(h.type),m=[...u.defaultStyle??[]];h.style&&m.push(...h.style);let g={id:$h(h.start,h.end,{counter:f,prefix:"L"},h.id),isUserDefinedId:h.isUserDefinedId,start:h.start,end:h.end,type:h.type??"normal",label:h.text,labelpos:"c",thickness:h.stroke,minlen:h.length,classes:h?.stroke==="invisible"?"":"edge-thickness-normal edge-pattern-solid flowchart-link",arrowTypeStart:h?.stroke==="invisible"||h?.type==="arrow_open"?"none":d,arrowTypeEnd:h?.stroke==="invisible"||h?.type==="arrow_open"?"none":p,arrowheadStyle:"fill: #333",cssCompiledStyles:this.getCompiledStyles(h.classes),labelStyle:m,style:m,pattern:h.stroke,look:e.look,animate:h.animate,animation:h.animation,curve:h.interpolate||this.edges.defaultInterpolate||e.flowchart?.curve};n.push(g)}),{nodes:r,edges:n,other:{},config:e}}defaultConfig(){return A3.flowchart}}});var yc,gm=N(()=>{"use strict";dr();yc=o((t,e)=>{let r;return e==="sandbox"&&(r=Ge("#i"+t)),(e==="sandbox"?Ge(r.nodes()[0].contentDocument.body):Ge("body")).select(`[id="${t}"]`)},"getDiagramElement")});var Ru,w2=N(()=>{"use strict";Ru=o(({flowchart:t})=>{let e=t?.subGraphTitleMargin?.top??0,r=t?.subGraphTitleMargin?.bottom??0,n=e+r;return{subGraphTitleTopMargin:e,subGraphTitleBottomMargin:r,subGraphTitleTotalMargin:n}},"getSubGraphTitleMargins")});var YZ,A_e,__e,D_e,L_e,R_e,N_e,XZ,ym,jZ,Hw=N(()=>{"use strict";zt();gr();vt();w2();dr();Wt();to();RD();Gw();qh();Ut();YZ=o(async(t,e)=>{Y.info("Creating subgraph rect for ",e.id,e);let r=me(),{themeVariables:n,handDrawnSeed:i}=r,{clusterBkg:a,clusterBorder:s}=n,{labelStyles:l,nodeStyles:u,borderStyles:h,backgroundStyles:f}=Qe(e),d=t.insert("g").attr("class","cluster "+e.cssClasses).attr("id",e.id).attr("data-look",e.look),p=fr(r.flowchart.htmlLabels),m=d.insert("g").attr("class","cluster-label "),g=await Hn(m,e.label,{style:e.labelStyle,useHtmlLabels:p,isNode:!0}),y=g.getBBox();if(fr(r.flowchart.htmlLabels)){let A=g.children[0],S=Ge(g);y=A.getBoundingClientRect(),S.attr("width",y.width),S.attr("height",y.height)}let v=e.width<=y.width+e.padding?y.width+e.padding:e.width;e.width<=y.width+e.padding?e.diff=(v-e.width)/2-e.padding:e.diff=-e.padding;let x=e.height,b=e.x-v/2,w=e.y-x/2;Y.trace("Data ",e,JSON.stringify(e));let C;if(e.look==="handDrawn"){let A=Xe.svg(d),S=Ke(e,{roughness:.7,fill:a,stroke:s,fillWeight:3,seed:i}),_=A.path(Na(b,w,v,x,0),S);C=d.insert(()=>(Y.debug("Rough node insert CXC",_),_),":first-child"),C.select("path:nth-child(2)").attr("style",h.join(";")),C.select("path").attr("style",f.join(";").replace("fill","stroke"))}else C=d.insert("rect",":first-child"),C.attr("style",u).attr("rx",e.rx).attr("ry",e.ry).attr("x",b).attr("y",w).attr("width",v).attr("height",x);let{subGraphTitleTopMargin:T}=Ru(r);if(m.attr("transform",`translate(${e.x-y.width/2}, ${e.y-e.height/2+T})`),l){let A=m.select("span");A&&A.attr("style",l)}let E=C.node().getBBox();return e.offsetX=0,e.width=E.width,e.height=E.height,e.offsetY=y.height-e.padding/2,e.intersect=function(A){return Vh(e,A)},{cluster:d,labelBBox:y}},"rect"),A_e=o((t,e)=>{let r=t.insert("g").attr("class","note-cluster").attr("id",e.id),n=r.insert("rect",":first-child"),i=0*e.padding,a=i/2;n.attr("rx",e.rx).attr("ry",e.ry).attr("x",e.x-e.width/2-a).attr("y",e.y-e.height/2-a).attr("width",e.width+i).attr("height",e.height+i).attr("fill","none");let s=n.node().getBBox();return e.width=s.width,e.height=s.height,e.intersect=function(l){return Vh(e,l)},{cluster:r,labelBBox:{width:0,height:0}}},"noteGroup"),__e=o(async(t,e)=>{let r=me(),{themeVariables:n,handDrawnSeed:i}=r,{altBackground:a,compositeBackground:s,compositeTitleBackground:l,nodeBorder:u}=n,h=t.insert("g").attr("class",e.cssClasses).attr("id",e.id).attr("data-id",e.id).attr("data-look",e.look),f=h.insert("g",":first-child"),d=h.insert("g").attr("class","cluster-label"),p=h.append("rect"),m=d.node().appendChild(await gc(e.label,e.labelStyle,void 0,!0)),g=m.getBBox();if(fr(r.flowchart.htmlLabels)){let _=m.children[0],I=Ge(m);g=_.getBoundingClientRect(),I.attr("width",g.width),I.attr("height",g.height)}let y=0*e.padding,v=y/2,x=(e.width<=g.width+e.padding?g.width+e.padding:e.width)+y;e.width<=g.width+e.padding?e.diff=(x-e.width)/2-e.padding:e.diff=-e.padding;let b=e.height+y,w=e.height+y-g.height-6,C=e.x-x/2,T=e.y-b/2;e.width=x;let E=e.y-e.height/2-v+g.height+2,A;if(e.look==="handDrawn"){let _=e.cssClasses.includes("statediagram-cluster-alt"),I=Xe.svg(h),D=e.rx||e.ry?I.path(Na(C,T,x,b,10),{roughness:.7,fill:l,fillStyle:"solid",stroke:u,seed:i}):I.rectangle(C,T,x,b,{seed:i});A=h.insert(()=>D,":first-child");let k=I.rectangle(C,E,x,w,{fill:_?a:s,fillStyle:_?"hachure":"solid",stroke:u,seed:i});A=h.insert(()=>D,":first-child"),p=h.insert(()=>k)}else A=f.insert("rect",":first-child"),A.attr("class","outer").attr("x",C).attr("y",T).attr("width",x).attr("height",b).attr("data-look",e.look),p.attr("class","inner").attr("x",C).attr("y",E).attr("width",x).attr("height",w);d.attr("transform",`translate(${e.x-g.width/2}, ${T+1-(fr(r.flowchart.htmlLabels)?0:3)})`);let S=A.node().getBBox();return e.height=S.height,e.offsetX=0,e.offsetY=g.height-e.padding/2,e.labelBBox=g,e.intersect=function(_){return Vh(e,_)},{cluster:h,labelBBox:g}},"roundedWithTitle"),D_e=o(async(t,e)=>{Y.info("Creating subgraph rect for ",e.id,e);let r=me(),{themeVariables:n,handDrawnSeed:i}=r,{clusterBkg:a,clusterBorder:s}=n,{labelStyles:l,nodeStyles:u,borderStyles:h,backgroundStyles:f}=Qe(e),d=t.insert("g").attr("class","cluster "+e.cssClasses).attr("id",e.id).attr("data-look",e.look),p=fr(r.flowchart.htmlLabels),m=d.insert("g").attr("class","cluster-label "),g=await Hn(m,e.label,{style:e.labelStyle,useHtmlLabels:p,isNode:!0,width:e.width}),y=g.getBBox();if(fr(r.flowchart.htmlLabels)){let A=g.children[0],S=Ge(g);y=A.getBoundingClientRect(),S.attr("width",y.width),S.attr("height",y.height)}let v=e.width<=y.width+e.padding?y.width+e.padding:e.width;e.width<=y.width+e.padding?e.diff=(v-e.width)/2-e.padding:e.diff=-e.padding;let x=e.height,b=e.x-v/2,w=e.y-x/2;Y.trace("Data ",e,JSON.stringify(e));let C;if(e.look==="handDrawn"){let A=Xe.svg(d),S=Ke(e,{roughness:.7,fill:a,stroke:s,fillWeight:4,seed:i}),_=A.path(Na(b,w,v,x,e.rx),S);C=d.insert(()=>(Y.debug("Rough node insert CXC",_),_),":first-child"),C.select("path:nth-child(2)").attr("style",h.join(";")),C.select("path").attr("style",f.join(";").replace("fill","stroke"))}else C=d.insert("rect",":first-child"),C.attr("style",u).attr("rx",e.rx).attr("ry",e.ry).attr("x",b).attr("y",w).attr("width",v).attr("height",x);let{subGraphTitleTopMargin:T}=Ru(r);if(m.attr("transform",`translate(${e.x-y.width/2}, ${e.y-e.height/2+T})`),l){let A=m.select("span");A&&A.attr("style",l)}let E=C.node().getBBox();return e.offsetX=0,e.width=E.width,e.height=E.height,e.offsetY=y.height-e.padding/2,e.intersect=function(A){return Vh(e,A)},{cluster:d,labelBBox:y}},"kanbanSection"),L_e=o((t,e)=>{let r=me(),{themeVariables:n,handDrawnSeed:i}=r,{nodeBorder:a}=n,s=t.insert("g").attr("class",e.cssClasses).attr("id",e.id).attr("data-look",e.look),l=s.insert("g",":first-child"),u=0*e.padding,h=e.width+u;e.diff=-e.padding;let f=e.height+u,d=e.x-h/2,p=e.y-f/2;e.width=h;let m;if(e.look==="handDrawn"){let v=Xe.svg(s).rectangle(d,p,h,f,{fill:"lightgrey",roughness:.5,strokeLineDash:[5],stroke:a,seed:i});m=s.insert(()=>v,":first-child")}else m=l.insert("rect",":first-child"),m.attr("class","divider").attr("x",d).attr("y",p).attr("width",h).attr("height",f).attr("data-look",e.look);let g=m.node().getBBox();return e.height=g.height,e.offsetX=0,e.offsetY=0,e.intersect=function(y){return Vh(e,y)},{cluster:s,labelBBox:{}}},"divider"),R_e=YZ,N_e={rect:YZ,squareRect:R_e,roundedWithTitle:__e,noteGroup:A_e,divider:L_e,kanbanSection:D_e},XZ=new Map,ym=o(async(t,e)=>{let r=e.shape||"rect",n=await N_e[r](t,e);return XZ.set(e.id,n),n},"insertCluster"),jZ=o(()=>{XZ=new Map},"clear")});function Ww(t,e){if(t===void 0||e===void 0)return{angle:0,deltaX:0,deltaY:0};t=Wn(t),e=Wn(e);let[r,n]=[t.x,t.y],[i,a]=[e.x,e.y],s=i-r,l=a-n;return{angle:Math.atan(l/s),deltaX:s,deltaY:l}}var $o,Wn,qw,JD=N(()=>{"use strict";$o={aggregation:18,extension:18,composition:18,dependency:6,lollipop:13.5,arrow_point:4};o(Ww,"calculateDeltaAndAngle");Wn=o(t=>Array.isArray(t)?{x:t[0],y:t[1]}:t,"pointTransformer"),qw=o(t=>({x:o(function(e,r,n){let i=0,a=Wn(n[0]).x=0?1:-1)}else if(r===n.length-1&&Object.hasOwn($o,t.arrowTypeEnd)){let{angle:m,deltaX:g}=Ww(n[n.length-1],n[n.length-2]);i=$o[t.arrowTypeEnd]*Math.cos(m)*(g>=0?1:-1)}let s=Math.abs(Wn(e).x-Wn(n[n.length-1]).x),l=Math.abs(Wn(e).y-Wn(n[n.length-1]).y),u=Math.abs(Wn(e).x-Wn(n[0]).x),h=Math.abs(Wn(e).y-Wn(n[0]).y),f=$o[t.arrowTypeStart],d=$o[t.arrowTypeEnd],p=1;if(s0&&l0&&h=0?1:-1)}else if(r===n.length-1&&Object.hasOwn($o,t.arrowTypeEnd)){let{angle:m,deltaY:g}=Ww(n[n.length-1],n[n.length-2]);i=$o[t.arrowTypeEnd]*Math.abs(Math.sin(m))*(g>=0?1:-1)}let s=Math.abs(Wn(e).y-Wn(n[n.length-1]).y),l=Math.abs(Wn(e).x-Wn(n[n.length-1]).x),u=Math.abs(Wn(e).y-Wn(n[0]).y),h=Math.abs(Wn(e).x-Wn(n[0]).x),f=$o[t.arrowTypeStart],d=$o[t.arrowTypeEnd],p=1;if(s0&&l0&&h{"use strict";vt();QZ=o((t,e,r,n,i,a)=>{e.arrowTypeStart&&KZ(t,"start",e.arrowTypeStart,r,n,i,a),e.arrowTypeEnd&&KZ(t,"end",e.arrowTypeEnd,r,n,i,a)},"addEdgeMarkers"),M_e={arrow_cross:{type:"cross",fill:!1},arrow_point:{type:"point",fill:!0},arrow_barb:{type:"barb",fill:!0},arrow_circle:{type:"circle",fill:!1},aggregation:{type:"aggregation",fill:!1},extension:{type:"extension",fill:!1},composition:{type:"composition",fill:!0},dependency:{type:"dependency",fill:!0},lollipop:{type:"lollipop",fill:!1},only_one:{type:"onlyOne",fill:!1},zero_or_one:{type:"zeroOrOne",fill:!1},one_or_more:{type:"oneOrMore",fill:!1},zero_or_more:{type:"zeroOrMore",fill:!1},requirement_arrow:{type:"requirement_arrow",fill:!1},requirement_contains:{type:"requirement_contains",fill:!1}},KZ=o((t,e,r,n,i,a,s)=>{let l=M_e[r];if(!l){Y.warn(`Unknown arrow type: ${r}`);return}let u=l.type,f=`${i}_${a}-${u}${e==="start"?"Start":"End"}`;if(s&&s.trim()!==""){let d=s.replace(/[^\dA-Za-z]/g,"_"),p=`${f}_${d}`;if(!document.getElementById(p)){let m=document.getElementById(f);if(m){let g=m.cloneNode(!0);g.id=p,g.querySelectorAll("path, circle, line").forEach(v=>{v.setAttribute("stroke",s),l.fill&&v.setAttribute("fill",s)}),m.parentNode?.appendChild(g)}}t.attr(`marker-${e}`,`url(${n}#${p})`)}else t.attr(`marker-${e}`,`url(${n}#${f})`)},"addEdgeMarker")});function Yw(t,e){me().flowchart.htmlLabels&&t&&(t.style.width=e.length*9+"px",t.style.height="12px")}function P_e(t){let e=[],r=[];for(let n=1;n5&&Math.abs(a.y-i.y)>5||i.y===a.y&&a.x===s.x&&Math.abs(a.x-i.x)>5&&Math.abs(a.y-s.y)>5)&&(e.push(a),r.push(n))}return{cornerPoints:e,cornerPointPositions:r}}var Xw,pa,tJ,T2,jw,Kw,I_e,O_e,JZ,eJ,B_e,Qw,eL=N(()=>{"use strict";zt();gr();vt();to();ir();JD();w2();dr();Wt();Gw();ZZ();Ut();Xw=new Map,pa=new Map,tJ=o(()=>{Xw.clear(),pa.clear()},"clear"),T2=o(t=>t?t.reduce((r,n)=>r+";"+n,""):"","getLabelStyles"),jw=o(async(t,e)=>{let r=fr(me().flowchart.htmlLabels),n=await Hn(t,e.label,{style:T2(e.labelStyle),useHtmlLabels:r,addSvgBackground:!0,isNode:!1});Y.info("abc82",e,e.labelType);let i=t.insert("g").attr("class","edgeLabel"),a=i.insert("g").attr("class","label");a.node().appendChild(n);let s=n.getBBox();if(r){let u=n.children[0],h=Ge(n);s=u.getBoundingClientRect(),h.attr("width",s.width),h.attr("height",s.height)}a.attr("transform","translate("+-s.width/2+", "+-s.height/2+")"),Xw.set(e.id,i),e.width=s.width,e.height=s.height;let l;if(e.startLabelLeft){let u=await gc(e.startLabelLeft,T2(e.labelStyle)),h=t.insert("g").attr("class","edgeTerminals"),f=h.insert("g").attr("class","inner");l=f.node().appendChild(u);let d=u.getBBox();f.attr("transform","translate("+-d.width/2+", "+-d.height/2+")"),pa.get(e.id)||pa.set(e.id,{}),pa.get(e.id).startLeft=h,Yw(l,e.startLabelLeft)}if(e.startLabelRight){let u=await gc(e.startLabelRight,T2(e.labelStyle)),h=t.insert("g").attr("class","edgeTerminals"),f=h.insert("g").attr("class","inner");l=h.node().appendChild(u),f.node().appendChild(u);let d=u.getBBox();f.attr("transform","translate("+-d.width/2+", "+-d.height/2+")"),pa.get(e.id)||pa.set(e.id,{}),pa.get(e.id).startRight=h,Yw(l,e.startLabelRight)}if(e.endLabelLeft){let u=await gc(e.endLabelLeft,T2(e.labelStyle)),h=t.insert("g").attr("class","edgeTerminals"),f=h.insert("g").attr("class","inner");l=f.node().appendChild(u);let d=u.getBBox();f.attr("transform","translate("+-d.width/2+", "+-d.height/2+")"),h.node().appendChild(u),pa.get(e.id)||pa.set(e.id,{}),pa.get(e.id).endLeft=h,Yw(l,e.endLabelLeft)}if(e.endLabelRight){let u=await gc(e.endLabelRight,T2(e.labelStyle)),h=t.insert("g").attr("class","edgeTerminals"),f=h.insert("g").attr("class","inner");l=f.node().appendChild(u);let d=u.getBBox();f.attr("transform","translate("+-d.width/2+", "+-d.height/2+")"),h.node().appendChild(u),pa.get(e.id)||pa.set(e.id,{}),pa.get(e.id).endRight=h,Yw(l,e.endLabelRight)}return n},"insertEdgeLabel");o(Yw,"setTerminalWidth");Kw=o((t,e)=>{Y.debug("Moving label abc88 ",t.id,t.label,Xw.get(t.id),e);let r=e.updatedPath?e.updatedPath:e.originalPath,n=me(),{subGraphTitleTotalMargin:i}=Ru(n);if(t.label){let a=Xw.get(t.id),s=t.x,l=t.y;if(r){let u=Gt.calcLabelPosition(r);Y.debug("Moving label "+t.label+" from (",s,",",l,") to (",u.x,",",u.y,") abc88"),e.updatedPath&&(s=u.x,l=u.y)}a.attr("transform",`translate(${s}, ${l+i/2})`)}if(t.startLabelLeft){let a=pa.get(t.id).startLeft,s=t.x,l=t.y;if(r){let u=Gt.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.startLabelRight){let a=pa.get(t.id).startRight,s=t.x,l=t.y;if(r){let u=Gt.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.endLabelLeft){let a=pa.get(t.id).endLeft,s=t.x,l=t.y;if(r){let u=Gt.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.endLabelRight){let a=pa.get(t.id).endRight,s=t.x,l=t.y;if(r){let u=Gt.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}},"positionEdgeLabel"),I_e=o((t,e)=>{let r=t.x,n=t.y,i=Math.abs(e.x-r),a=Math.abs(e.y-n),s=t.width/2,l=t.height/2;return i>=s||a>=l},"outsideNode"),O_e=o((t,e,r)=>{Y.debug(`intersection calc abc89: + outsidePoint: ${JSON.stringify(e)} + insidePoint : ${JSON.stringify(r)} + node : x:${t.x} y:${t.y} w:${t.width} h:${t.height}`);let n=t.x,i=t.y,a=Math.abs(n-r.x),s=t.width/2,l=r.xMath.abs(n-e.x)*u){let d=r.y{Y.warn("abc88 cutPathAtIntersect",t,e);let r=[],n=t[0],i=!1;return t.forEach(a=>{if(Y.info("abc88 checking point",a,e),!I_e(e,a)&&!i){let s=O_e(e,n,a);Y.debug("abc88 inside",a,n,s),Y.debug("abc88 intersection",s,e);let l=!1;r.forEach(u=>{l=l||u.x===s.x&&u.y===s.y}),r.some(u=>u.x===s.x&&u.y===s.y)?Y.warn("abc88 no intersect",s,r):r.push(s),i=!0}else Y.warn("abc88 outside",a,n),n=a,i||r.push(a)}),Y.debug("returning points",r),r},"cutPathAtIntersect");o(P_e,"extractCornerPoints");eJ=o(function(t,e,r){let n=e.x-t.x,i=e.y-t.y,a=Math.sqrt(n*n+i*i),s=r/a;return{x:e.x-s*n,y:e.y-s*i}},"findAdjacentPoint"),B_e=o(function(t){let{cornerPointPositions:e}=P_e(t),r=[];for(let n=0;n10&&Math.abs(a.y-i.y)>=10){Y.debug("Corner point fixing",Math.abs(a.x-i.x),Math.abs(a.y-i.y));let m=5;s.x===l.x?p={x:h<0?l.x-m+d:l.x+m-d,y:f<0?l.y-d:l.y+d}:p={x:h<0?l.x-d:l.x+d,y:f<0?l.y-m+d:l.y+m-d}}else Y.debug("Corner point skipping fixing",Math.abs(a.x-i.x),Math.abs(a.y-i.y));r.push(p,u)}else r.push(t[n]);return r},"fixCorners"),Qw=o(function(t,e,r,n,i,a,s){let{handDrawnSeed:l}=me(),u=e.points,h=!1,f=i;var d=a;let p=[];for(let _ in e.cssCompiledStyles)ND(_)||p.push(e.cssCompiledStyles[_]);d.intersect&&f.intersect&&(u=u.slice(1,e.points.length-1),u.unshift(f.intersect(u[0])),Y.debug("Last point APA12",e.start,"-->",e.end,u[u.length-1],d,d.intersect(u[u.length-1])),u.push(d.intersect(u[u.length-1]))),e.toCluster&&(Y.info("to cluster abc88",r.get(e.toCluster)),u=JZ(e.points,r.get(e.toCluster).node),h=!0),e.fromCluster&&(Y.debug("from cluster abc88",r.get(e.fromCluster),JSON.stringify(u,null,2)),u=JZ(u.reverse(),r.get(e.fromCluster).node).reverse(),h=!0);let m=u.filter(_=>!Number.isNaN(_.y));m=B_e(m);let g=Do;switch(g=wu,e.curve){case"linear":g=wu;break;case"basis":g=Do;break;case"cardinal":g=Pv;break;case"bumpX":g=Rv;break;case"bumpY":g=Nv;break;case"catmullRom":g=$v;break;case"monotoneX":g=zv;break;case"monotoneY":g=Gv;break;case"natural":g=F0;break;case"step":g=$0;break;case"stepAfter":g=Uv;break;case"stepBefore":g=Vv;break;default:g=Do}let{x:y,y:v}=qw(e),x=wl().x(y).y(v).curve(g),b;switch(e.thickness){case"normal":b="edge-thickness-normal";break;case"thick":b="edge-thickness-thick";break;case"invisible":b="edge-thickness-invisible";break;default:b="edge-thickness-normal"}switch(e.pattern){case"solid":b+=" edge-pattern-solid";break;case"dotted":b+=" edge-pattern-dotted";break;case"dashed":b+=" edge-pattern-dashed";break;default:b+=" edge-pattern-solid"}let w,C=x(m),T=Array.isArray(e.style)?e.style:[e.style],E=T.find(_=>_?.startsWith("stroke:"));if(e.look==="handDrawn"){let _=Xe.svg(t);Object.assign([],m);let I=_.path(C,{roughness:.3,seed:l});b+=" transition",w=Ge(I).select("path").attr("id",e.id).attr("class"," "+b+(e.classes?" "+e.classes:"")).attr("style",T?T.reduce((k,L)=>k+";"+L,""):"");let D=w.attr("d");w.attr("d",D),t.node().appendChild(w.node())}else{let _=p.join(";"),I=T?T.reduce((L,R)=>L+R+";",""):"",D="";e.animate&&(D=" edge-animation-fast"),e.animation&&(D=" edge-animation-"+e.animation);let k=_?_+";"+I+";":I;w=t.append("path").attr("d",C).attr("id",e.id).attr("class"," "+b+(e.classes?" "+e.classes:"")+(D??"")).attr("style",k),E=k.match(/stroke:([^;]+)/)?.[1]}let A="";(me().flowchart.arrowMarkerAbsolute||me().state.arrowMarkerAbsolute)&&(A=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,A=A.replace(/\(/g,"\\(").replace(/\)/g,"\\)")),Y.info("arrowTypeStart",e.arrowTypeStart),Y.info("arrowTypeEnd",e.arrowTypeEnd),QZ(w,e,A,s,n,E);let S={};return h&&(S.updatedPath=u),S.originalPath=e.points,S},"insertEdge")});var F_e,$_e,z_e,G_e,V_e,U_e,H_e,W_e,q_e,Y_e,X_e,j_e,K_e,Q_e,Z_e,J_e,e9e,Zw,tL=N(()=>{"use strict";vt();F_e=o((t,e,r,n)=>{e.forEach(i=>{e9e[i](t,r,n)})},"insertMarkers"),$_e=o((t,e,r)=>{Y.trace("Making markers for ",r),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionStart").attr("class","marker extension "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionEnd").attr("class","marker extension "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},"extension"),z_e=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionStart").attr("class","marker composition "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionEnd").attr("class","marker composition "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"composition"),G_e=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationStart").attr("class","marker aggregation "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationEnd").attr("class","marker aggregation "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"aggregation"),V_e=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyStart").attr("class","marker dependency "+e).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyEnd").attr("class","marker dependency "+e).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"dependency"),U_e=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopStart").attr("class","marker lollipop "+e).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopEnd").attr("class","marker lollipop "+e).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},"lollipop"),H_e=o((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-pointEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-pointStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"point"),W_e=o((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-circleEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-circleStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"circle"),q_e=o((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-crossEnd").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-crossStart").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},"cross"),Y_e=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","userSpaceOnUse").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"barb"),X_e=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-onlyOneStart").attr("class","marker onlyOne "+e).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("d","M9,0 L9,18 M15,0 L15,18"),t.append("defs").append("marker").attr("id",r+"_"+e+"-onlyOneEnd").attr("class","marker onlyOne "+e).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("d","M3,0 L3,18 M9,0 L9,18")},"only_one"),j_e=o((t,e,r)=>{let n=t.append("defs").append("marker").attr("id",r+"_"+e+"-zeroOrOneStart").attr("class","marker zeroOrOne "+e).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto");n.append("circle").attr("fill","white").attr("cx",21).attr("cy",9).attr("r",6),n.append("path").attr("d","M9,0 L9,18");let i=t.append("defs").append("marker").attr("id",r+"_"+e+"-zeroOrOneEnd").attr("class","marker zeroOrOne "+e).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto");i.append("circle").attr("fill","white").attr("cx",9).attr("cy",9).attr("r",6),i.append("path").attr("d","M21,0 L21,18")},"zero_or_one"),K_e=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-oneOrMoreStart").attr("class","marker oneOrMore "+e).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27"),t.append("defs").append("marker").attr("id",r+"_"+e+"-oneOrMoreEnd").attr("class","marker oneOrMore "+e).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18")},"one_or_more"),Q_e=o((t,e,r)=>{let n=t.append("defs").append("marker").attr("id",r+"_"+e+"-zeroOrMoreStart").attr("class","marker zeroOrMore "+e).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto");n.append("circle").attr("fill","white").attr("cx",48).attr("cy",18).attr("r",6),n.append("path").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18");let i=t.append("defs").append("marker").attr("id",r+"_"+e+"-zeroOrMoreEnd").attr("class","marker zeroOrMore "+e).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto");i.append("circle").attr("fill","white").attr("cx",9).attr("cy",18).attr("r",6),i.append("path").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18")},"zero_or_more"),Z_e=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-requirement_arrowEnd").attr("refX",20).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").append("path").attr("d",`M0,0 + L20,10 + M20,10 + L0,20`)},"requirement_arrow"),J_e=o((t,e,r)=>{let n=t.append("defs").append("marker").attr("id",r+"_"+e+"-requirement_containsStart").attr("refX",0).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").append("g");n.append("circle").attr("cx",10).attr("cy",10).attr("r",9).attr("fill","none"),n.append("line").attr("x1",1).attr("x2",19).attr("y1",10).attr("y2",10),n.append("line").attr("y1",1).attr("y2",19).attr("x1",10).attr("x2",10)},"requirement_contains"),e9e={extension:$_e,composition:z_e,aggregation:G_e,dependency:V_e,lollipop:U_e,point:H_e,circle:W_e,cross:q_e,barb:Y_e,only_one:X_e,zero_or_one:j_e,one_or_more:K_e,zero_or_more:Q_e,requirement_arrow:Z_e,requirement_contains:J_e},Zw=F_e});async function vm(t,e,r){let n,i;e.shape==="rect"&&(e.rx&&e.ry?e.shape="roundedRect":e.shape="squareRect");let a=e.shape?QD[e.shape]:void 0;if(!a)throw new Error(`No such shape: ${e.shape}. Please check your syntax.`);if(e.link){let s;r.config.securityLevel==="sandbox"?s="_top":e.linkTarget&&(s=e.linkTarget||"_blank"),n=t.insert("svg:a").attr("xlink:href",e.link).attr("target",s??null),i=await a(n,e,r)}else i=await a(t,e,r),n=i;return e.tooltip&&i.attr("title",e.tooltip),Jw.set(e.id,n),e.haveCallback&&n.attr("class",n.attr("class")+" clickable"),n}var Jw,rJ,nJ,k2,eT=N(()=>{"use strict";vt();ZD();Jw=new Map;o(vm,"insertNode");rJ=o((t,e)=>{Jw.set(e.id,t)},"setNodeElem"),nJ=o(()=>{Jw.clear()},"clear"),k2=o(t=>{let e=Jw.get(t.id);Y.trace("Transforming node",t.diff,t,"translate("+(t.x-t.width/2-5)+", "+t.width/2+")");let r=8,n=t.diff||0;return t.clusterNode?e.attr("transform","translate("+(t.x+n-t.width/2)+", "+(t.y-t.height/2-r)+")"):e.attr("transform","translate("+t.x+", "+t.y+")"),n},"positionNode")});var iJ,aJ=N(()=>{"use strict";ji();gr();vt();Hw();eL();tL();eT();Ft();ir();iJ={common:Ze,getConfig:cr,insertCluster:ym,insertEdge:Qw,insertEdgeLabel:jw,insertMarkers:Zw,insertNode:vm,interpolateToCurve:W9,labelHelper:pt,log:Y,positionEdgeLabel:Kw}});function r9e(t){return typeof t=="symbol"||ri(t)&&da(t)==t9e}var t9e,no,Pd=N(()=>{"use strict";ku();No();t9e="[object Symbol]";o(r9e,"isSymbol");no=r9e});function n9e(t,e){for(var r=-1,n=t==null?0:t.length,i=Array(n);++r{"use strict";o(n9e,"arrayMap");Ns=n9e});function lJ(t){if(typeof t=="string")return t;if(Pt(t))return Ns(t,lJ)+"";if(no(t))return oJ?oJ.call(t):"";var e=t+"";return e=="0"&&1/t==-i9e?"-0":e}var i9e,sJ,oJ,cJ,uJ=N(()=>{"use strict";Ed();Bd();Un();Pd();i9e=1/0,sJ=ea?ea.prototype:void 0,oJ=sJ?sJ.toString:void 0;o(lJ,"baseToString");cJ=lJ});function s9e(t){for(var e=t.length;e--&&a9e.test(t.charAt(e)););return e}var a9e,hJ,fJ=N(()=>{"use strict";a9e=/\s/;o(s9e,"trimmedEndIndex");hJ=s9e});function l9e(t){return t&&t.slice(0,hJ(t)+1).replace(o9e,"")}var o9e,dJ,pJ=N(()=>{"use strict";fJ();o9e=/^\s+/;o(l9e,"baseTrim");dJ=l9e});function d9e(t){if(typeof t=="number")return t;if(no(t))return mJ;if(bn(t)){var e=typeof t.valueOf=="function"?t.valueOf():t;t=bn(e)?e+"":e}if(typeof t!="string")return t===0?t:+t;t=dJ(t);var r=u9e.test(t);return r||h9e.test(t)?f9e(t.slice(2),r?2:8):c9e.test(t)?mJ:+t}var mJ,c9e,u9e,h9e,f9e,gJ,yJ=N(()=>{"use strict";pJ();Js();Pd();mJ=NaN,c9e=/^[-+]0x[0-9a-f]+$/i,u9e=/^0b[01]+$/i,h9e=/^0o[0-7]+$/i,f9e=parseInt;o(d9e,"toNumber");gJ=d9e});function m9e(t){if(!t)return t===0?t:0;if(t=gJ(t),t===vJ||t===-vJ){var e=t<0?-1:1;return e*p9e}return t===t?t:0}var vJ,p9e,xm,rL=N(()=>{"use strict";yJ();vJ=1/0,p9e=17976931348623157e292;o(m9e,"toFinite");xm=m9e});function g9e(t){var e=xm(t),r=e%1;return e===e?r?e-r:e:0}var vc,bm=N(()=>{"use strict";rL();o(g9e,"toInteger");vc=g9e});var y9e,tT,xJ=N(()=>{"use strict";Lh();Lo();y9e=Ss(li,"WeakMap"),tT=y9e});function v9e(){}var ni,nL=N(()=>{"use strict";o(v9e,"noop");ni=v9e});function x9e(t,e){for(var r=-1,n=t==null?0:t.length;++r{"use strict";o(x9e,"arrayEach");rT=x9e});function b9e(t,e,r,n){for(var i=t.length,a=r+(n?1:-1);n?a--:++a{"use strict";o(b9e,"baseFindIndex");nT=b9e});function w9e(t){return t!==t}var bJ,wJ=N(()=>{"use strict";o(w9e,"baseIsNaN");bJ=w9e});function T9e(t,e,r){for(var n=r-1,i=t.length;++n{"use strict";o(T9e,"strictIndexOf");TJ=T9e});function k9e(t,e,r){return e===e?TJ(t,e,r):nT(t,bJ,r)}var wm,iT=N(()=>{"use strict";aL();wJ();kJ();o(k9e,"baseIndexOf");wm=k9e});function E9e(t,e){var r=t==null?0:t.length;return!!r&&wm(t,e,0)>-1}var aT,sL=N(()=>{"use strict";iT();o(E9e,"arrayIncludes");aT=E9e});var S9e,EJ,SJ=N(()=>{"use strict";N9();S9e=nw(Object.keys,Object),EJ=S9e});function _9e(t){if(!uc(t))return EJ(t);var e=[];for(var r in Object(t))A9e.call(t,r)&&r!="constructor"&&e.push(r);return e}var C9e,A9e,Tm,sT=N(()=>{"use strict";Z0();SJ();C9e=Object.prototype,A9e=C9e.hasOwnProperty;o(_9e,"baseKeys");Tm=_9e});function D9e(t){return ci(t)?lw(t):Tm(t)}var zr,xc=N(()=>{"use strict";B9();sT();Mo();o(D9e,"keys");zr=D9e});var L9e,R9e,N9e,ma,CJ=N(()=>{"use strict";rm();Dd();G9();Mo();Z0();xc();L9e=Object.prototype,R9e=L9e.hasOwnProperty,N9e=hw(function(t,e){if(uc(e)||ci(e)){Po(e,zr(e),t);return}for(var r in e)R9e.call(e,r)&&hc(t,r,e[r])}),ma=N9e});function O9e(t,e){if(Pt(t))return!1;var r=typeof t;return r=="number"||r=="symbol"||r=="boolean"||t==null||no(t)?!0:I9e.test(t)||!M9e.test(t)||e!=null&&t in Object(e)}var M9e,I9e,km,oT=N(()=>{"use strict";Un();Pd();M9e=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,I9e=/^\w*$/;o(O9e,"isKey");km=O9e});function B9e(t){var e=H0(t,function(n){return r.size===P9e&&r.clear(),n}),r=e.cache;return e}var P9e,AJ,_J=N(()=>{"use strict";S9();P9e=500;o(B9e,"memoizeCapped");AJ=B9e});var F9e,$9e,z9e,DJ,LJ=N(()=>{"use strict";_J();F9e=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,$9e=/\\(\\)?/g,z9e=AJ(function(t){var e=[];return t.charCodeAt(0)===46&&e.push(""),t.replace(F9e,function(r,n,i,a){e.push(i?a.replace($9e,"$1"):n||r)}),e}),DJ=z9e});function G9e(t){return t==null?"":cJ(t)}var lT,oL=N(()=>{"use strict";uJ();o(G9e,"toString");lT=G9e});function V9e(t,e){return Pt(t)?t:km(t,e)?[t]:DJ(lT(t))}var Yh,E2=N(()=>{"use strict";Un();oT();LJ();oL();o(V9e,"castPath");Yh=V9e});function H9e(t){if(typeof t=="string"||no(t))return t;var e=t+"";return e=="0"&&1/t==-U9e?"-0":e}var U9e,bc,Em=N(()=>{"use strict";Pd();U9e=1/0;o(H9e,"toKey");bc=H9e});function W9e(t,e){e=Yh(e,t);for(var r=0,n=e.length;t!=null&&r{"use strict";E2();Em();o(W9e,"baseGet");Xh=W9e});function q9e(t,e,r){var n=t==null?void 0:Xh(t,e);return n===void 0?r:n}var RJ,NJ=N(()=>{"use strict";S2();o(q9e,"get");RJ=q9e});function Y9e(t,e){for(var r=-1,n=e.length,i=t.length;++r{"use strict";o(Y9e,"arrayPush");Sm=Y9e});function X9e(t){return Pt(t)||El(t)||!!(MJ&&t&&t[MJ])}var MJ,IJ,OJ=N(()=>{"use strict";Ed();J0();Un();MJ=ea?ea.isConcatSpreadable:void 0;o(X9e,"isFlattenable");IJ=X9e});function PJ(t,e,r,n,i){var a=-1,s=t.length;for(r||(r=IJ),i||(i=[]);++a0&&r(l)?e>1?PJ(l,e-1,r,n,i):Sm(i,l):n||(i[i.length]=l)}return i}var wc,Cm=N(()=>{"use strict";cT();OJ();o(PJ,"baseFlatten");wc=PJ});function j9e(t){var e=t==null?0:t.length;return e?wc(t,1):[]}var qr,uT=N(()=>{"use strict";Cm();o(j9e,"flatten");qr=j9e});function K9e(t){return uw(cw(t,void 0,qr),t+"")}var BJ,FJ=N(()=>{"use strict";uT();F9();z9();o(K9e,"flatRest");BJ=K9e});function Q9e(t,e,r){var n=-1,i=t.length;e<0&&(e=-e>i?0:i+e),r=r>i?i:r,r<0&&(r+=i),i=e>r?0:r-e>>>0,e>>>=0;for(var a=Array(i);++n{"use strict";o(Q9e,"baseSlice");hT=Q9e});function sDe(t){return aDe.test(t)}var Z9e,J9e,eDe,tDe,rDe,nDe,iDe,aDe,$J,zJ=N(()=>{"use strict";Z9e="\\ud800-\\udfff",J9e="\\u0300-\\u036f",eDe="\\ufe20-\\ufe2f",tDe="\\u20d0-\\u20ff",rDe=J9e+eDe+tDe,nDe="\\ufe0e\\ufe0f",iDe="\\u200d",aDe=RegExp("["+iDe+Z9e+rDe+nDe+"]");o(sDe,"hasUnicode");$J=sDe});function oDe(t,e,r,n){var i=-1,a=t==null?0:t.length;for(n&&a&&(r=t[++i]);++i{"use strict";o(oDe,"arrayReduce");GJ=oDe});function lDe(t,e){return t&&Po(e,zr(e),t)}var UJ,HJ=N(()=>{"use strict";Dd();xc();o(lDe,"baseAssign");UJ=lDe});function cDe(t,e){return t&&Po(e,Cs(e),t)}var WJ,qJ=N(()=>{"use strict";Dd();Bh();o(cDe,"baseAssignIn");WJ=cDe});function uDe(t,e){for(var r=-1,n=t==null?0:t.length,i=0,a=[];++r{"use strict";o(uDe,"arrayFilter");Am=uDe});function hDe(){return[]}var dT,cL=N(()=>{"use strict";o(hDe,"stubArray");dT=hDe});var fDe,dDe,YJ,pDe,_m,pT=N(()=>{"use strict";fT();cL();fDe=Object.prototype,dDe=fDe.propertyIsEnumerable,YJ=Object.getOwnPropertySymbols,pDe=YJ?function(t){return t==null?[]:(t=Object(t),Am(YJ(t),function(e){return dDe.call(t,e)}))}:dT,_m=pDe});function mDe(t,e){return Po(t,_m(t),e)}var XJ,jJ=N(()=>{"use strict";Dd();pT();o(mDe,"copySymbols");XJ=mDe});var gDe,yDe,mT,uL=N(()=>{"use strict";cT();iw();pT();cL();gDe=Object.getOwnPropertySymbols,yDe=gDe?function(t){for(var e=[];t;)Sm(e,_m(t)),t=Q0(t);return e}:dT,mT=yDe});function vDe(t,e){return Po(t,mT(t),e)}var KJ,QJ=N(()=>{"use strict";Dd();uL();o(vDe,"copySymbolsIn");KJ=vDe});function xDe(t,e,r){var n=e(t);return Pt(t)?n:Sm(n,r(t))}var gT,hL=N(()=>{"use strict";cT();Un();o(xDe,"baseGetAllKeys");gT=xDe});function bDe(t){return gT(t,zr,_m)}var C2,fL=N(()=>{"use strict";hL();pT();xc();o(bDe,"getAllKeys");C2=bDe});function wDe(t){return gT(t,Cs,mT)}var yT,dL=N(()=>{"use strict";hL();uL();Bh();o(wDe,"getAllKeysIn");yT=wDe});var TDe,vT,ZJ=N(()=>{"use strict";Lh();Lo();TDe=Ss(li,"DataView"),vT=TDe});var kDe,xT,JJ=N(()=>{"use strict";Lh();Lo();kDe=Ss(li,"Promise"),xT=kDe});var EDe,jh,pL=N(()=>{"use strict";Lh();Lo();EDe=Ss(li,"Set"),jh=EDe});var eee,SDe,tee,ree,nee,iee,CDe,ADe,_De,DDe,LDe,Fd,io,$d=N(()=>{"use strict";ZJ();K5();JJ();pL();xJ();ku();T9();eee="[object Map]",SDe="[object Object]",tee="[object Promise]",ree="[object Set]",nee="[object WeakMap]",iee="[object DataView]",CDe=Eu(vT),ADe=Eu(Mh),_De=Eu(xT),DDe=Eu(jh),LDe=Eu(tT),Fd=da;(vT&&Fd(new vT(new ArrayBuffer(1)))!=iee||Mh&&Fd(new Mh)!=eee||xT&&Fd(xT.resolve())!=tee||jh&&Fd(new jh)!=ree||tT&&Fd(new tT)!=nee)&&(Fd=o(function(t){var e=da(t),r=e==SDe?t.constructor:void 0,n=r?Eu(r):"";if(n)switch(n){case CDe:return iee;case ADe:return eee;case _De:return tee;case DDe:return ree;case LDe:return nee}return e},"getTag"));io=Fd});function MDe(t){var e=t.length,r=new t.constructor(e);return e&&typeof t[0]=="string"&&NDe.call(t,"index")&&(r.index=t.index,r.input=t.input),r}var RDe,NDe,aee,see=N(()=>{"use strict";RDe=Object.prototype,NDe=RDe.hasOwnProperty;o(MDe,"initCloneArray");aee=MDe});function IDe(t,e){var r=e?K0(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}var oee,lee=N(()=>{"use strict";ew();o(IDe,"cloneDataView");oee=IDe});function PDe(t){var e=new t.constructor(t.source,ODe.exec(t));return e.lastIndex=t.lastIndex,e}var ODe,cee,uee=N(()=>{"use strict";ODe=/\w*$/;o(PDe,"cloneRegExp");cee=PDe});function BDe(t){return fee?Object(fee.call(t)):{}}var hee,fee,dee,pee=N(()=>{"use strict";Ed();hee=ea?ea.prototype:void 0,fee=hee?hee.valueOf:void 0;o(BDe,"cloneSymbol");dee=BDe});function nLe(t,e,r){var n=t.constructor;switch(e){case qDe:return K0(t);case FDe:case $De:return new n(+t);case YDe:return oee(t,r);case XDe:case jDe:case KDe:case QDe:case ZDe:case JDe:case eLe:case tLe:case rLe:return tw(t,r);case zDe:return new n;case GDe:case HDe:return new n(t);case VDe:return cee(t);case UDe:return new n;case WDe:return dee(t)}}var FDe,$De,zDe,GDe,VDe,UDe,HDe,WDe,qDe,YDe,XDe,jDe,KDe,QDe,ZDe,JDe,eLe,tLe,rLe,mee,gee=N(()=>{"use strict";ew();lee();uee();pee();L9();FDe="[object Boolean]",$De="[object Date]",zDe="[object Map]",GDe="[object Number]",VDe="[object RegExp]",UDe="[object Set]",HDe="[object String]",WDe="[object Symbol]",qDe="[object ArrayBuffer]",YDe="[object DataView]",XDe="[object Float32Array]",jDe="[object Float64Array]",KDe="[object Int8Array]",QDe="[object Int16Array]",ZDe="[object Int32Array]",JDe="[object Uint8Array]",eLe="[object Uint8ClampedArray]",tLe="[object Uint16Array]",rLe="[object Uint32Array]";o(nLe,"initCloneByTag");mee=nLe});function aLe(t){return ri(t)&&io(t)==iLe}var iLe,yee,vee=N(()=>{"use strict";$d();No();iLe="[object Map]";o(aLe,"baseIsMap");yee=aLe});var xee,sLe,bee,wee=N(()=>{"use strict";vee();_d();t2();xee=Oo&&Oo.isMap,sLe=xee?Io(xee):yee,bee=sLe});function lLe(t){return ri(t)&&io(t)==oLe}var oLe,Tee,kee=N(()=>{"use strict";$d();No();oLe="[object Set]";o(lLe,"baseIsSet");Tee=lLe});var Eee,cLe,See,Cee=N(()=>{"use strict";kee();_d();t2();Eee=Oo&&Oo.isSet,cLe=Eee?Io(Eee):Tee,See=cLe});function bT(t,e,r,n,i,a){var s,l=e&uLe,u=e&hLe,h=e&fLe;if(r&&(s=i?r(t,n,i,a):r(t)),s!==void 0)return s;if(!bn(t))return t;var f=Pt(t);if(f){if(s=aee(t),!l)return rw(t,s)}else{var d=io(t),p=d==_ee||d==yLe;if(Sl(t))return J5(t,l);if(d==Dee||d==Aee||p&&!i){if(s=u||p?{}:aw(t),!l)return u?KJ(t,WJ(s,t)):XJ(t,UJ(s,t))}else{if(!_n[d])return i?t:{};s=mee(t,d,l)}}a||(a=new lc);var m=a.get(t);if(m)return m;a.set(t,s),See(t)?t.forEach(function(v){s.add(bT(v,e,r,v,t,a))}):bee(t)&&t.forEach(function(v,x){s.set(x,bT(v,e,r,x,t,a))});var g=h?u?yT:C2:u?Cs:zr,y=f?void 0:g(t);return rT(y||t,function(v,x){y&&(x=v,v=t[x]),hc(s,x,bT(v,e,r,x,t,a))}),s}var uLe,hLe,fLe,Aee,dLe,pLe,mLe,gLe,_ee,yLe,vLe,xLe,Dee,bLe,wLe,TLe,kLe,ELe,SLe,CLe,ALe,_Le,DLe,LLe,RLe,NLe,MLe,ILe,OLe,_n,wT,mL=N(()=>{"use strict";Zv();iL();rm();HJ();qJ();_9();R9();jJ();QJ();fL();dL();$d();see();gee();M9();Un();tm();wee();Js();Cee();xc();Bh();uLe=1,hLe=2,fLe=4,Aee="[object Arguments]",dLe="[object Array]",pLe="[object Boolean]",mLe="[object Date]",gLe="[object Error]",_ee="[object Function]",yLe="[object GeneratorFunction]",vLe="[object Map]",xLe="[object Number]",Dee="[object Object]",bLe="[object RegExp]",wLe="[object Set]",TLe="[object String]",kLe="[object Symbol]",ELe="[object WeakMap]",SLe="[object ArrayBuffer]",CLe="[object DataView]",ALe="[object Float32Array]",_Le="[object Float64Array]",DLe="[object Int8Array]",LLe="[object Int16Array]",RLe="[object Int32Array]",NLe="[object Uint8Array]",MLe="[object Uint8ClampedArray]",ILe="[object Uint16Array]",OLe="[object Uint32Array]",_n={};_n[Aee]=_n[dLe]=_n[SLe]=_n[CLe]=_n[pLe]=_n[mLe]=_n[ALe]=_n[_Le]=_n[DLe]=_n[LLe]=_n[RLe]=_n[vLe]=_n[xLe]=_n[Dee]=_n[bLe]=_n[wLe]=_n[TLe]=_n[kLe]=_n[NLe]=_n[MLe]=_n[ILe]=_n[OLe]=!0;_n[gLe]=_n[_ee]=_n[ELe]=!1;o(bT,"baseClone");wT=bT});function BLe(t){return wT(t,PLe)}var PLe,an,gL=N(()=>{"use strict";mL();PLe=4;o(BLe,"clone");an=BLe});function zLe(t){return wT(t,FLe|$Le)}var FLe,$Le,yL,Lee=N(()=>{"use strict";mL();FLe=1,$Le=4;o(zLe,"cloneDeep");yL=zLe});function GLe(t){for(var e=-1,r=t==null?0:t.length,n=0,i=[];++e{"use strict";o(GLe,"compact");Tc=GLe});function ULe(t){return this.__data__.set(t,VLe),this}var VLe,Nee,Mee=N(()=>{"use strict";VLe="__lodash_hash_undefined__";o(ULe,"setCacheAdd");Nee=ULe});function HLe(t){return this.__data__.has(t)}var Iee,Oee=N(()=>{"use strict";o(HLe,"setCacheHas");Iee=HLe});function TT(t){var e=-1,r=t==null?0:t.length;for(this.__data__=new Cd;++e{"use strict";Q5();Mee();Oee();o(TT,"SetCache");TT.prototype.add=TT.prototype.push=Nee;TT.prototype.has=Iee;Dm=TT});function WLe(t,e){for(var r=-1,n=t==null?0:t.length;++r{"use strict";o(WLe,"arraySome");ET=WLe});function qLe(t,e){return t.has(e)}var Lm,ST=N(()=>{"use strict";o(qLe,"cacheHas");Lm=qLe});function jLe(t,e,r,n,i,a){var s=r&YLe,l=t.length,u=e.length;if(l!=u&&!(s&&u>l))return!1;var h=a.get(t),f=a.get(e);if(h&&f)return h==e&&f==t;var d=-1,p=!0,m=r&XLe?new Dm:void 0;for(a.set(t,e),a.set(e,t);++d{"use strict";kT();vL();ST();YLe=1,XLe=2;o(jLe,"equalArrays");CT=jLe});function KLe(t){var e=-1,r=Array(t.size);return t.forEach(function(n,i){r[++e]=[i,n]}),r}var Pee,Bee=N(()=>{"use strict";o(KLe,"mapToArray");Pee=KLe});function QLe(t){var e=-1,r=Array(t.size);return t.forEach(function(n){r[++e]=n}),r}var Rm,AT=N(()=>{"use strict";o(QLe,"setToArray");Rm=QLe});function hRe(t,e,r,n,i,a,s){switch(r){case uRe:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case cRe:return!(t.byteLength!=e.byteLength||!a(new j0(t),new j0(e)));case eRe:case tRe:case iRe:return Ro(+t,+e);case rRe:return t.name==e.name&&t.message==e.message;case aRe:case oRe:return t==e+"";case nRe:var l=Pee;case sRe:var u=n&ZLe;if(l||(l=Rm),t.size!=e.size&&!u)return!1;var h=s.get(t);if(h)return h==e;n|=JLe,s.set(t,e);var f=CT(l(t),l(e),n,i,a,s);return s.delete(t),f;case lRe:if(bL)return bL.call(t)==bL.call(e)}return!1}var ZLe,JLe,eRe,tRe,rRe,nRe,iRe,aRe,sRe,oRe,lRe,cRe,uRe,Fee,bL,$ee,zee=N(()=>{"use strict";Ed();D9();Sd();xL();Bee();AT();ZLe=1,JLe=2,eRe="[object Boolean]",tRe="[object Date]",rRe="[object Error]",nRe="[object Map]",iRe="[object Number]",aRe="[object RegExp]",sRe="[object Set]",oRe="[object String]",lRe="[object Symbol]",cRe="[object ArrayBuffer]",uRe="[object DataView]",Fee=ea?ea.prototype:void 0,bL=Fee?Fee.valueOf:void 0;o(hRe,"equalByTag");$ee=hRe});function mRe(t,e,r,n,i,a){var s=r&fRe,l=C2(t),u=l.length,h=C2(e),f=h.length;if(u!=f&&!s)return!1;for(var d=u;d--;){var p=l[d];if(!(s?p in e:pRe.call(e,p)))return!1}var m=a.get(t),g=a.get(e);if(m&&g)return m==e&&g==t;var y=!0;a.set(t,e),a.set(e,t);for(var v=s;++d{"use strict";fL();fRe=1,dRe=Object.prototype,pRe=dRe.hasOwnProperty;o(mRe,"equalObjects");Gee=mRe});function vRe(t,e,r,n,i,a){var s=Pt(t),l=Pt(e),u=s?Hee:io(t),h=l?Hee:io(e);u=u==Uee?_T:u,h=h==Uee?_T:h;var f=u==_T,d=h==_T,p=u==h;if(p&&Sl(t)){if(!Sl(e))return!1;s=!0,f=!1}if(p&&!f)return a||(a=new lc),s||Oh(t)?CT(t,e,r,n,i,a):$ee(t,e,u,r,n,i,a);if(!(r&gRe)){var m=f&&Wee.call(t,"__wrapped__"),g=d&&Wee.call(e,"__wrapped__");if(m||g){var y=m?t.value():t,v=g?e.value():e;return a||(a=new lc),i(y,v,r,n,a)}}return p?(a||(a=new lc),Gee(t,e,r,n,i,a)):!1}var gRe,Uee,Hee,_T,yRe,Wee,qee,Yee=N(()=>{"use strict";Zv();xL();zee();Vee();$d();Un();tm();r2();gRe=1,Uee="[object Arguments]",Hee="[object Array]",_T="[object Object]",yRe=Object.prototype,Wee=yRe.hasOwnProperty;o(vRe,"baseIsEqualDeep");qee=vRe});function Xee(t,e,r,n,i){return t===e?!0:t==null||e==null||!ri(t)&&!ri(e)?t!==t&&e!==e:qee(t,e,r,n,Xee,i)}var DT,wL=N(()=>{"use strict";Yee();No();o(Xee,"baseIsEqual");DT=Xee});function wRe(t,e,r,n){var i=r.length,a=i,s=!n;if(t==null)return!a;for(t=Object(t);i--;){var l=r[i];if(s&&l[2]?l[1]!==t[l[0]]:!(l[0]in t))return!1}for(;++i{"use strict";Zv();wL();xRe=1,bRe=2;o(wRe,"baseIsMatch");jee=wRe});function TRe(t){return t===t&&!bn(t)}var LT,TL=N(()=>{"use strict";Js();o(TRe,"isStrictComparable");LT=TRe});function kRe(t){for(var e=zr(t),r=e.length;r--;){var n=e[r],i=t[n];e[r]=[n,i,LT(i)]}return e}var Qee,Zee=N(()=>{"use strict";TL();xc();o(kRe,"getMatchData");Qee=kRe});function ERe(t,e){return function(r){return r==null?!1:r[t]===e&&(e!==void 0||t in Object(r))}}var RT,kL=N(()=>{"use strict";o(ERe,"matchesStrictComparable");RT=ERe});function SRe(t){var e=Qee(t);return e.length==1&&e[0][2]?RT(e[0][0],e[0][1]):function(r){return r===t||jee(r,t,e)}}var Jee,ete=N(()=>{"use strict";Kee();Zee();kL();o(SRe,"baseMatches");Jee=SRe});function CRe(t,e){return t!=null&&e in Object(t)}var tte,rte=N(()=>{"use strict";o(CRe,"baseHasIn");tte=CRe});function ARe(t,e,r){e=Yh(e,t);for(var n=-1,i=e.length,a=!1;++n{"use strict";E2();J0();Un();i2();sw();Em();o(ARe,"hasPath");NT=ARe});function _Re(t,e){return t!=null&&NT(t,e,tte)}var MT,SL=N(()=>{"use strict";rte();EL();o(_Re,"hasIn");MT=_Re});function RRe(t,e){return km(t)&<(e)?RT(bc(t),e):function(r){var n=RJ(r,t);return n===void 0&&n===e?MT(r,t):DT(e,n,DRe|LRe)}}var DRe,LRe,nte,ite=N(()=>{"use strict";wL();NJ();SL();oT();TL();kL();Em();DRe=1,LRe=2;o(RRe,"baseMatchesProperty");nte=RRe});function NRe(t){return function(e){return e?.[t]}}var IT,CL=N(()=>{"use strict";o(NRe,"baseProperty");IT=NRe});function MRe(t){return function(e){return Xh(e,t)}}var ate,ste=N(()=>{"use strict";S2();o(MRe,"basePropertyDeep");ate=MRe});function IRe(t){return km(t)?IT(bc(t)):ate(t)}var ote,lte=N(()=>{"use strict";CL();ste();oT();Em();o(IRe,"property");ote=IRe});function ORe(t){return typeof t=="function"?t:t==null?ta:typeof t=="object"?Pt(t)?nte(t[0],t[1]):Jee(t):ote(t)}var pn,rs=N(()=>{"use strict";ete();ite();Cu();Un();lte();o(ORe,"baseIteratee");pn=ORe});function PRe(t,e,r,n){for(var i=-1,a=t==null?0:t.length;++i{"use strict";o(PRe,"arrayAggregator");cte=PRe});function BRe(t,e){return t&&X0(t,e,zr)}var Nm,OT=N(()=>{"use strict";Z5();xc();o(BRe,"baseForOwn");Nm=BRe});function FRe(t,e){return function(r,n){if(r==null)return r;if(!ci(r))return t(r,n);for(var i=r.length,a=e?i:-1,s=Object(r);(e?a--:++a{"use strict";Mo();o(FRe,"createBaseEach");hte=FRe});var $Re,Ms,Kh=N(()=>{"use strict";OT();fte();$Re=hte(Nm),Ms=$Re});function zRe(t,e,r,n){return Ms(t,function(i,a,s){e(n,i,r(i),s)}),n}var dte,pte=N(()=>{"use strict";Kh();o(zRe,"baseAggregator");dte=zRe});function GRe(t,e){return function(r,n){var i=Pt(r)?cte:dte,a=e?e():{};return i(r,t,pn(n,2),a)}}var mte,gte=N(()=>{"use strict";ute();pte();rs();Un();o(GRe,"createAggregator");mte=GRe});var VRe,PT,yte=N(()=>{"use strict";Lo();VRe=o(function(){return li.Date.now()},"now"),PT=VRe});var vte,URe,HRe,Qh,xte=N(()=>{"use strict";nm();Sd();Ld();Bh();vte=Object.prototype,URe=vte.hasOwnProperty,HRe=fc(function(t,e){t=Object(t);var r=-1,n=e.length,i=n>2?e[2]:void 0;for(i&&eo(e[0],e[1],i)&&(n=1);++r{"use strict";o(WRe,"arrayIncludesWith");BT=WRe});function YRe(t,e,r,n){var i=-1,a=aT,s=!0,l=t.length,u=[],h=e.length;if(!l)return u;r&&(e=Ns(e,Io(r))),n?(a=BT,s=!1):e.length>=qRe&&(a=Lm,s=!1,e=new Dm(e));e:for(;++i{"use strict";kT();sL();AL();Bd();_d();ST();qRe=200;o(YRe,"baseDifference");bte=YRe});var XRe,Zh,Tte=N(()=>{"use strict";wte();Cm();nm();ow();XRe=fc(function(t,e){return Ad(t)?bte(t,wc(e,1,Ad,!0)):[]}),Zh=XRe});function jRe(t){var e=t==null?0:t.length;return e?t[e-1]:void 0}var ga,kte=N(()=>{"use strict";o(jRe,"last");ga=jRe});function KRe(t,e,r){var n=t==null?0:t.length;return n?(e=r||e===void 0?1:vc(e),hT(t,e<0?0:e,n)):[]}var gi,Ete=N(()=>{"use strict";lL();bm();o(KRe,"drop");gi=KRe});function QRe(t,e,r){var n=t==null?0:t.length;return n?(e=r||e===void 0?1:vc(e),e=n-e,hT(t,0,e<0?0:e)):[]}var Nu,Ste=N(()=>{"use strict";lL();bm();o(QRe,"dropRight");Nu=QRe});function ZRe(t){return typeof t=="function"?t:ta}var Mm,FT=N(()=>{"use strict";Cu();o(ZRe,"castFunction");Mm=ZRe});function JRe(t,e){var r=Pt(t)?rT:Ms;return r(t,Mm(e))}var Ae,$T=N(()=>{"use strict";iL();Kh();FT();Un();o(JRe,"forEach");Ae=JRe});var Cte=N(()=>{"use strict";$T()});function eNe(t,e){for(var r=-1,n=t==null?0:t.length;++r{"use strict";o(eNe,"arrayEvery");Ate=eNe});function tNe(t,e){var r=!0;return Ms(t,function(n,i,a){return r=!!e(n,i,a),r}),r}var Dte,Lte=N(()=>{"use strict";Kh();o(tNe,"baseEvery");Dte=tNe});function rNe(t,e,r){var n=Pt(t)?Ate:Dte;return r&&eo(t,e,r)&&(e=void 0),n(t,pn(e,3))}var Ma,Rte=N(()=>{"use strict";_te();Lte();rs();Un();Ld();o(rNe,"every");Ma=rNe});function nNe(t,e){var r=[];return Ms(t,function(n,i,a){e(n,i,a)&&r.push(n)}),r}var zT,_L=N(()=>{"use strict";Kh();o(nNe,"baseFilter");zT=nNe});function iNe(t,e){var r=Pt(t)?Am:zT;return r(t,pn(e,3))}var Yr,DL=N(()=>{"use strict";fT();_L();rs();Un();o(iNe,"filter");Yr=iNe});function aNe(t){return function(e,r,n){var i=Object(e);if(!ci(e)){var a=pn(r,3);e=zr(e),r=o(function(l){return a(i[l],l,i)},"predicate")}var s=t(e,r,n);return s>-1?i[a?e[s]:s]:void 0}}var Nte,Mte=N(()=>{"use strict";rs();Mo();xc();o(aNe,"createFind");Nte=aNe});function oNe(t,e,r){var n=t==null?0:t.length;if(!n)return-1;var i=r==null?0:vc(r);return i<0&&(i=sNe(n+i,0)),nT(t,pn(e,3),i)}var sNe,Ite,Ote=N(()=>{"use strict";aL();rs();bm();sNe=Math.max;o(oNe,"findIndex");Ite=oNe});var lNe,ns,Pte=N(()=>{"use strict";Mte();Ote();lNe=Nte(Ite),ns=lNe});function cNe(t){return t&&t.length?t[0]:void 0}var ia,Bte=N(()=>{"use strict";o(cNe,"head");ia=cNe});var Fte=N(()=>{"use strict";Bte()});function uNe(t,e){var r=-1,n=ci(t)?Array(t.length):[];return Ms(t,function(i,a,s){n[++r]=e(i,a,s)}),n}var GT,LL=N(()=>{"use strict";Kh();Mo();o(uNe,"baseMap");GT=uNe});function hNe(t,e){var r=Pt(t)?Ns:GT;return r(t,pn(e,3))}var Je,Im=N(()=>{"use strict";Bd();rs();LL();Un();o(hNe,"map");Je=hNe});function fNe(t,e){return wc(Je(t,e),1)}var ya,RL=N(()=>{"use strict";Cm();Im();o(fNe,"flatMap");ya=fNe});function dNe(t,e){return t==null?t:X0(t,Mm(e),Cs)}var NL,$te=N(()=>{"use strict";Z5();FT();Bh();o(dNe,"forIn");NL=dNe});function pNe(t,e){return t&&Nm(t,Mm(e))}var ML,zte=N(()=>{"use strict";OT();FT();o(pNe,"forOwn");ML=pNe});var mNe,gNe,yNe,IL,Gte=N(()=>{"use strict";Y0();gte();mNe=Object.prototype,gNe=mNe.hasOwnProperty,yNe=mte(function(t,e,r){gNe.call(t,r)?t[r].push(e):cc(t,r,[e])}),IL=yNe});function vNe(t,e){return t>e}var Vte,Ute=N(()=>{"use strict";o(vNe,"baseGt");Vte=vNe});function wNe(t,e){return t!=null&&bNe.call(t,e)}var xNe,bNe,Hte,Wte=N(()=>{"use strict";xNe=Object.prototype,bNe=xNe.hasOwnProperty;o(wNe,"baseHas");Hte=wNe});function TNe(t,e){return t!=null&&NT(t,e,Hte)}var Bt,qte=N(()=>{"use strict";Wte();EL();o(TNe,"has");Bt=TNe});function ENe(t){return typeof t=="string"||!Pt(t)&&ri(t)&&da(t)==kNe}var kNe,yi,VT=N(()=>{"use strict";ku();Un();No();kNe="[object String]";o(ENe,"isString");yi=ENe});function SNe(t,e){return Ns(e,function(r){return t[r]})}var Yte,Xte=N(()=>{"use strict";Bd();o(SNe,"baseValues");Yte=SNe});function CNe(t){return t==null?[]:Yte(t,zr(t))}var br,OL=N(()=>{"use strict";Xte();xc();o(CNe,"values");br=CNe});function _Ne(t,e,r,n){t=ci(t)?t:br(t),r=r&&!n?vc(r):0;var i=t.length;return r<0&&(r=ANe(i+r,0)),yi(t)?r<=i&&t.indexOf(e,r)>-1:!!i&&wm(t,e,r)>-1}var ANe,qn,jte=N(()=>{"use strict";iT();Mo();VT();bm();OL();ANe=Math.max;o(_Ne,"includes");qn=_Ne});function LNe(t,e,r){var n=t==null?0:t.length;if(!n)return-1;var i=r==null?0:vc(r);return i<0&&(i=DNe(n+i,0)),wm(t,e,i)}var DNe,UT,Kte=N(()=>{"use strict";iT();bm();DNe=Math.max;o(LNe,"indexOf");UT=LNe});function ONe(t){if(t==null)return!0;if(ci(t)&&(Pt(t)||typeof t=="string"||typeof t.splice=="function"||Sl(t)||Oh(t)||El(t)))return!t.length;var e=io(t);if(e==RNe||e==NNe)return!t.size;if(uc(t))return!Tm(t).length;for(var r in t)if(INe.call(t,r))return!1;return!0}var RNe,NNe,MNe,INe,ur,HT=N(()=>{"use strict";sT();$d();J0();Un();Mo();tm();Z0();r2();RNe="[object Map]",NNe="[object Set]",MNe=Object.prototype,INe=MNe.hasOwnProperty;o(ONe,"isEmpty");ur=ONe});function BNe(t){return ri(t)&&da(t)==PNe}var PNe,Qte,Zte=N(()=>{"use strict";ku();No();PNe="[object RegExp]";o(BNe,"baseIsRegExp");Qte=BNe});var Jte,FNe,zo,ere=N(()=>{"use strict";Zte();_d();t2();Jte=Oo&&Oo.isRegExp,FNe=Jte?Io(Jte):Qte,zo=FNe});function $Ne(t){return t===void 0}var pr,tre=N(()=>{"use strict";o($Ne,"isUndefined");pr=$Ne});function zNe(t,e){return t{"use strict";o(zNe,"baseLt");WT=zNe});function GNe(t,e){var r={};return e=pn(e,3),Nm(t,function(n,i,a){cc(r,i,e(n,i,a))}),r}var zd,rre=N(()=>{"use strict";Y0();OT();rs();o(GNe,"mapValues");zd=GNe});function VNe(t,e,r){for(var n=-1,i=t.length;++n{"use strict";Pd();o(VNe,"baseExtremum");Om=VNe});function UNe(t){return t&&t.length?Om(t,ta,Vte):void 0}var Is,nre=N(()=>{"use strict";qT();Ute();Cu();o(UNe,"max");Is=UNe});function HNe(t){return t&&t.length?Om(t,ta,WT):void 0}var Dl,BL=N(()=>{"use strict";qT();PL();Cu();o(HNe,"min");Dl=HNe});function WNe(t,e){return t&&t.length?Om(t,pn(e,2),WT):void 0}var Gd,ire=N(()=>{"use strict";qT();rs();PL();o(WNe,"minBy");Gd=WNe});function YNe(t){if(typeof t!="function")throw new TypeError(qNe);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}var qNe,are,sre=N(()=>{"use strict";qNe="Expected a function";o(YNe,"negate");are=YNe});function XNe(t,e,r,n){if(!bn(t))return t;e=Yh(e,t);for(var i=-1,a=e.length,s=a-1,l=t;l!=null&&++i{"use strict";rm();E2();i2();Js();Em();o(XNe,"baseSet");ore=XNe});function jNe(t,e,r){for(var n=-1,i=e.length,a={};++n{"use strict";S2();lre();E2();o(jNe,"basePickBy");YT=jNe});function KNe(t,e){if(t==null)return{};var r=Ns(yT(t),function(n){return[n]});return e=pn(e),YT(t,r,function(n,i){return e(n,i[0])})}var Os,cre=N(()=>{"use strict";Bd();rs();FL();dL();o(KNe,"pickBy");Os=KNe});function QNe(t,e){var r=t.length;for(t.sort(e);r--;)t[r]=t[r].value;return t}var ure,hre=N(()=>{"use strict";o(QNe,"baseSortBy");ure=QNe});function ZNe(t,e){if(t!==e){var r=t!==void 0,n=t===null,i=t===t,a=no(t),s=e!==void 0,l=e===null,u=e===e,h=no(e);if(!l&&!h&&!a&&t>e||a&&s&&u&&!l&&!h||n&&s&&u||!r&&u||!i)return 1;if(!n&&!a&&!h&&t{"use strict";Pd();o(ZNe,"compareAscending");fre=ZNe});function JNe(t,e,r){for(var n=-1,i=t.criteria,a=e.criteria,s=i.length,l=r.length;++n=l)return u;var h=r[n];return u*(h=="desc"?-1:1)}}return t.index-e.index}var pre,mre=N(()=>{"use strict";dre();o(JNe,"compareMultiple");pre=JNe});function eMe(t,e,r){e.length?e=Ns(e,function(a){return Pt(a)?function(s){return Xh(s,a.length===1?a[0]:a)}:a}):e=[ta];var n=-1;e=Ns(e,Io(pn));var i=GT(t,function(a,s,l){var u=Ns(e,function(h){return h(a)});return{criteria:u,index:++n,value:a}});return ure(i,function(a,s){return pre(a,s,r)})}var gre,yre=N(()=>{"use strict";Bd();S2();rs();LL();hre();_d();mre();Cu();Un();o(eMe,"baseOrderBy");gre=eMe});var tMe,vre,xre=N(()=>{"use strict";CL();tMe=IT("length"),vre=tMe});function dMe(t){for(var e=bre.lastIndex=0;bre.test(t);)++e;return e}var wre,rMe,nMe,iMe,aMe,sMe,oMe,$L,zL,lMe,Tre,kre,Ere,cMe,Sre,Cre,uMe,hMe,fMe,bre,Are,_re=N(()=>{"use strict";wre="\\ud800-\\udfff",rMe="\\u0300-\\u036f",nMe="\\ufe20-\\ufe2f",iMe="\\u20d0-\\u20ff",aMe=rMe+nMe+iMe,sMe="\\ufe0e\\ufe0f",oMe="["+wre+"]",$L="["+aMe+"]",zL="\\ud83c[\\udffb-\\udfff]",lMe="(?:"+$L+"|"+zL+")",Tre="[^"+wre+"]",kre="(?:\\ud83c[\\udde6-\\uddff]){2}",Ere="[\\ud800-\\udbff][\\udc00-\\udfff]",cMe="\\u200d",Sre=lMe+"?",Cre="["+sMe+"]?",uMe="(?:"+cMe+"(?:"+[Tre,kre,Ere].join("|")+")"+Cre+Sre+")*",hMe=Cre+Sre+uMe,fMe="(?:"+[Tre+$L+"?",$L,kre,Ere,oMe].join("|")+")",bre=RegExp(zL+"(?="+zL+")|"+fMe+hMe,"g");o(dMe,"unicodeSize");Are=dMe});function pMe(t){return $J(t)?Are(t):vre(t)}var Dre,Lre=N(()=>{"use strict";xre();zJ();_re();o(pMe,"stringSize");Dre=pMe});function mMe(t,e){return YT(t,e,function(r,n){return MT(t,n)})}var Rre,Nre=N(()=>{"use strict";FL();SL();o(mMe,"basePick");Rre=mMe});var gMe,Vd,Mre=N(()=>{"use strict";Nre();FJ();gMe=BJ(function(t,e){return t==null?{}:Rre(t,e)}),Vd=gMe});function xMe(t,e,r,n){for(var i=-1,a=vMe(yMe((e-t)/(r||1)),0),s=Array(a);a--;)s[n?a:++i]=t,t+=r;return s}var yMe,vMe,Ire,Ore=N(()=>{"use strict";yMe=Math.ceil,vMe=Math.max;o(xMe,"baseRange");Ire=xMe});function bMe(t){return function(e,r,n){return n&&typeof n!="number"&&eo(e,r,n)&&(r=n=void 0),e=xm(e),r===void 0?(r=e,e=0):r=xm(r),n=n===void 0?e{"use strict";Ore();Ld();rL();o(bMe,"createRange");Pre=bMe});var wMe,Go,Fre=N(()=>{"use strict";Bre();wMe=Pre(),Go=wMe});function TMe(t,e,r,n,i){return i(t,function(a,s,l){r=n?(n=!1,a):e(r,a,s,l)}),r}var $re,zre=N(()=>{"use strict";o(TMe,"baseReduce");$re=TMe});function kMe(t,e,r){var n=Pt(t)?GJ:$re,i=arguments.length<3;return n(t,pn(e,4),r,i,Ms)}var Xr,GL=N(()=>{"use strict";VJ();Kh();rs();zre();Un();o(kMe,"reduce");Xr=kMe});function EMe(t,e){var r=Pt(t)?Am:zT;return r(t,are(pn(e,3)))}var Jh,Gre=N(()=>{"use strict";fT();_L();rs();Un();sre();o(EMe,"reject");Jh=EMe});function AMe(t){if(t==null)return 0;if(ci(t))return yi(t)?Dre(t):t.length;var e=io(t);return e==SMe||e==CMe?t.size:Tm(t).length}var SMe,CMe,VL,Vre=N(()=>{"use strict";sT();$d();Mo();VT();Lre();SMe="[object Map]",CMe="[object Set]";o(AMe,"size");VL=AMe});function _Me(t,e){var r;return Ms(t,function(n,i,a){return r=e(n,i,a),!r}),!!r}var Ure,Hre=N(()=>{"use strict";Kh();o(_Me,"baseSome");Ure=_Me});function DMe(t,e,r){var n=Pt(t)?ET:Ure;return r&&eo(t,e,r)&&(e=void 0),n(t,pn(e,3))}var A2,Wre=N(()=>{"use strict";vL();rs();Hre();Un();Ld();o(DMe,"some");A2=DMe});var LMe,kc,qre=N(()=>{"use strict";Cm();yre();nm();Ld();LMe=fc(function(t,e){if(t==null)return[];var r=e.length;return r>1&&eo(t,e[0],e[1])?e=[]:r>2&&eo(e[0],e[1],e[2])&&(e=[e[0]]),gre(t,wc(e,1),[])}),kc=LMe});var RMe,NMe,Yre,Xre=N(()=>{"use strict";pL();nL();AT();RMe=1/0,NMe=jh&&1/Rm(new jh([,-0]))[1]==RMe?function(t){return new jh(t)}:ni,Yre=NMe});function IMe(t,e,r){var n=-1,i=aT,a=t.length,s=!0,l=[],u=l;if(r)s=!1,i=BT;else if(a>=MMe){var h=e?null:Yre(t);if(h)return Rm(h);s=!1,i=Lm,u=new Dm}else u=e?[]:l;e:for(;++n{"use strict";kT();sL();AL();ST();Xre();AT();MMe=200;o(IMe,"baseUniq");Pm=IMe});var OMe,UL,jre=N(()=>{"use strict";Cm();nm();XT();ow();OMe=fc(function(t){return Pm(wc(t,1,Ad,!0))}),UL=OMe});function PMe(t){return t&&t.length?Pm(t):[]}var Bm,Kre=N(()=>{"use strict";XT();o(PMe,"uniq");Bm=PMe});function BMe(t,e){return t&&t.length?Pm(t,pn(e,2)):[]}var Qre,Zre=N(()=>{"use strict";rs();XT();o(BMe,"uniqBy");Qre=BMe});function $Me(t){var e=++FMe;return lT(t)+e}var FMe,Ud,Jre=N(()=>{"use strict";oL();FMe=0;o($Me,"uniqueId");Ud=$Me});function zMe(t,e,r){for(var n=-1,i=t.length,a=e.length,s={};++n{"use strict";o(zMe,"baseZipObject");ene=zMe});function GMe(t,e){return ene(t||[],e||[],hc)}var jT,rne=N(()=>{"use strict";rm();tne();o(GMe,"zipObject");jT=GMe});var qt=N(()=>{"use strict";CJ();gL();Lee();Ree();$9();xte();Tte();Ete();Ste();Cte();Rte();DL();Pte();Fte();RL();uT();$T();$te();zte();Gte();qte();Cu();jte();Kte();Un();HT();Yv();Js();ere();VT();tre();xc();kte();Im();rre();nre();V9();BL();ire();nL();yte();Mre();cre();Fre();GL();Gre();Vre();Wre();qre();jre();Kre();Jre();OL();rne();});function ine(t,e){t[e]?t[e]++:t[e]=1}function ane(t,e){--t[e]||delete t[e]}function _2(t,e,r,n){var i=""+e,a=""+r;if(!t&&i>a){var s=i;i=a,a=s}return i+nne+a+nne+(pr(n)?VMe:n)}function UMe(t,e,r,n){var i=""+e,a=""+r;if(!t&&i>a){var s=i;i=a,a=s}var l={v:i,w:a};return n&&(l.name=n),l}function HL(t,e){return _2(t,e.v,e.w,e.name)}var VMe,Hd,nne,sn,KT=N(()=>{"use strict";qt();VMe="\0",Hd="\0",nne="",sn=class{static{o(this,"Graph")}constructor(e={}){this._isDirected=Object.prototype.hasOwnProperty.call(e,"directed")?e.directed:!0,this._isMultigraph=Object.prototype.hasOwnProperty.call(e,"multigraph")?e.multigraph:!1,this._isCompound=Object.prototype.hasOwnProperty.call(e,"compound")?e.compound:!1,this._label=void 0,this._defaultNodeLabelFn=As(void 0),this._defaultEdgeLabelFn=As(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[Hd]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(e){return this._label=e,this}graph(){return this._label}setDefaultNodeLabel(e){return Si(e)||(e=As(e)),this._defaultNodeLabelFn=e,this}nodeCount(){return this._nodeCount}nodes(){return zr(this._nodes)}sources(){var e=this;return Yr(this.nodes(),function(r){return ur(e._in[r])})}sinks(){var e=this;return Yr(this.nodes(),function(r){return ur(e._out[r])})}setNodes(e,r){var n=arguments,i=this;return Ae(e,function(a){n.length>1?i.setNode(a,r):i.setNode(a)}),this}setNode(e,r){return Object.prototype.hasOwnProperty.call(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=r),this):(this._nodes[e]=arguments.length>1?r:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=Hd,this._children[e]={},this._children[Hd][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)}node(e){return this._nodes[e]}hasNode(e){return Object.prototype.hasOwnProperty.call(this._nodes,e)}removeNode(e){if(Object.prototype.hasOwnProperty.call(this._nodes,e)){var r=o(n=>this.removeEdge(this._edgeObjs[n]),"removeEdge");delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],Ae(this.children(e),n=>{this.setParent(n)}),delete this._children[e]),Ae(zr(this._in[e]),r),delete this._in[e],delete this._preds[e],Ae(zr(this._out[e]),r),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this}setParent(e,r){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(pr(r))r=Hd;else{r+="";for(var n=r;!pr(n);n=this.parent(n))if(n===e)throw new Error("Setting "+r+" as parent of "+e+" would create a cycle");this.setNode(r)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=r,this._children[r][e]=!0,this}_removeFromParentsChildList(e){delete this._children[this._parent[e]][e]}parent(e){if(this._isCompound){var r=this._parent[e];if(r!==Hd)return r}}children(e){if(pr(e)&&(e=Hd),this._isCompound){var r=this._children[e];if(r)return zr(r)}else{if(e===Hd)return this.nodes();if(this.hasNode(e))return[]}}predecessors(e){var r=this._preds[e];if(r)return zr(r)}successors(e){var r=this._sucs[e];if(r)return zr(r)}neighbors(e){var r=this.predecessors(e);if(r)return UL(r,this.successors(e))}isLeaf(e){var r;return this.isDirected()?r=this.successors(e):r=this.neighbors(e),r.length===0}filterNodes(e){var r=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});r.setGraph(this.graph());var n=this;Ae(this._nodes,function(s,l){e(l)&&r.setNode(l,s)}),Ae(this._edgeObjs,function(s){r.hasNode(s.v)&&r.hasNode(s.w)&&r.setEdge(s,n.edge(s))});var i={};function a(s){var l=n.parent(s);return l===void 0||r.hasNode(l)?(i[s]=l,l):l in i?i[l]:a(l)}return o(a,"findParent"),this._isCompound&&Ae(r.nodes(),function(s){r.setParent(s,a(s))}),r}setDefaultEdgeLabel(e){return Si(e)||(e=As(e)),this._defaultEdgeLabelFn=e,this}edgeCount(){return this._edgeCount}edges(){return br(this._edgeObjs)}setPath(e,r){var n=this,i=arguments;return Xr(e,function(a,s){return i.length>1?n.setEdge(a,s,r):n.setEdge(a,s),s}),this}setEdge(){var e,r,n,i,a=!1,s=arguments[0];typeof s=="object"&&s!==null&&"v"in s?(e=s.v,r=s.w,n=s.name,arguments.length===2&&(i=arguments[1],a=!0)):(e=s,r=arguments[1],n=arguments[3],arguments.length>2&&(i=arguments[2],a=!0)),e=""+e,r=""+r,pr(n)||(n=""+n);var l=_2(this._isDirected,e,r,n);if(Object.prototype.hasOwnProperty.call(this._edgeLabels,l))return a&&(this._edgeLabels[l]=i),this;if(!pr(n)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(r),this._edgeLabels[l]=a?i:this._defaultEdgeLabelFn(e,r,n);var u=UMe(this._isDirected,e,r,n);return e=u.v,r=u.w,Object.freeze(u),this._edgeObjs[l]=u,ine(this._preds[r],e),ine(this._sucs[e],r),this._in[r][l]=u,this._out[e][l]=u,this._edgeCount++,this}edge(e,r,n){var i=arguments.length===1?HL(this._isDirected,arguments[0]):_2(this._isDirected,e,r,n);return this._edgeLabels[i]}hasEdge(e,r,n){var i=arguments.length===1?HL(this._isDirected,arguments[0]):_2(this._isDirected,e,r,n);return Object.prototype.hasOwnProperty.call(this._edgeLabels,i)}removeEdge(e,r,n){var i=arguments.length===1?HL(this._isDirected,arguments[0]):_2(this._isDirected,e,r,n),a=this._edgeObjs[i];return a&&(e=a.v,r=a.w,delete this._edgeLabels[i],delete this._edgeObjs[i],ane(this._preds[r],e),ane(this._sucs[e],r),delete this._in[r][i],delete this._out[e][i],this._edgeCount--),this}inEdges(e,r){var n=this._in[e];if(n){var i=br(n);return r?Yr(i,function(a){return a.v===r}):i}}outEdges(e,r){var n=this._out[e];if(n){var i=br(n);return r?Yr(i,function(a){return a.w===r}):i}}nodeEdges(e,r){var n=this.inEdges(e,r);if(n)return n.concat(this.outEdges(e,r))}};sn.prototype._nodeCount=0;sn.prototype._edgeCount=0;o(ine,"incrementOrInitEntry");o(ane,"decrementOrRemoveEntry");o(_2,"edgeArgsToId");o(UMe,"edgeArgsToObj");o(HL,"edgeObjToId")});var Vo=N(()=>{"use strict";KT()});function sne(t){t._prev._next=t._next,t._next._prev=t._prev,delete t._next,delete t._prev}function HMe(t,e){if(t!=="_next"&&t!=="_prev")return e}var ZT,one=N(()=>{"use strict";ZT=class{static{o(this,"List")}constructor(){var e={};e._next=e._prev=e,this._sentinel=e}dequeue(){var e=this._sentinel,r=e._prev;if(r!==e)return sne(r),r}enqueue(e){var r=this._sentinel;e._prev&&e._next&&sne(e),e._next=r._next,r._next._prev=e,r._next=e,e._prev=r}toString(){for(var e=[],r=this._sentinel,n=r._prev;n!==r;)e.push(JSON.stringify(n,HMe)),n=n._prev;return"["+e.join(", ")+"]"}};o(sne,"unlink");o(HMe,"filterOutLinks")});function lne(t,e){if(t.nodeCount()<=1)return[];var r=YMe(t,e||WMe),n=qMe(r.graph,r.buckets,r.zeroIdx);return qr(Je(n,function(i){return t.outEdges(i.v,i.w)}))}function qMe(t,e,r){for(var n=[],i=e[e.length-1],a=e[0],s;t.nodeCount();){for(;s=a.dequeue();)WL(t,e,r,s);for(;s=i.dequeue();)WL(t,e,r,s);if(t.nodeCount()){for(var l=e.length-2;l>0;--l)if(s=e[l].dequeue(),s){n=n.concat(WL(t,e,r,s,!0));break}}}return n}function WL(t,e,r,n,i){var a=i?[]:void 0;return Ae(t.inEdges(n.v),function(s){var l=t.edge(s),u=t.node(s.v);i&&a.push({v:s.v,w:s.w}),u.out-=l,qL(e,r,u)}),Ae(t.outEdges(n.v),function(s){var l=t.edge(s),u=s.w,h=t.node(u);h.in-=l,qL(e,r,h)}),t.removeNode(n.v),a}function YMe(t,e){var r=new sn,n=0,i=0;Ae(t.nodes(),function(l){r.setNode(l,{v:l,in:0,out:0})}),Ae(t.edges(),function(l){var u=r.edge(l.v,l.w)||0,h=e(l),f=u+h;r.setEdge(l.v,l.w,f),i=Math.max(i,r.node(l.v).out+=h),n=Math.max(n,r.node(l.w).in+=h)});var a=Go(i+n+3).map(function(){return new ZT}),s=n+1;return Ae(r.nodes(),function(l){qL(a,s,r.node(l))}),{graph:r,buckets:a,zeroIdx:s}}function qL(t,e,r){r.out?r.in?t[r.out-r.in+e].enqueue(r):t[t.length-1].enqueue(r):t[0].enqueue(r)}var WMe,cne=N(()=>{"use strict";qt();Vo();one();WMe=As(1);o(lne,"greedyFAS");o(qMe,"doGreedyFAS");o(WL,"removeNode");o(YMe,"buildState");o(qL,"assignBucket")});function une(t){var e=t.graph().acyclicer==="greedy"?lne(t,r(t)):XMe(t);Ae(e,function(n){var i=t.edge(n);t.removeEdge(n),i.forwardName=n.name,i.reversed=!0,t.setEdge(n.w,n.v,i,Ud("rev"))});function r(n){return function(i){return n.edge(i).weight}}o(r,"weightFn")}function XMe(t){var e=[],r={},n={};function i(a){Object.prototype.hasOwnProperty.call(n,a)||(n[a]=!0,r[a]=!0,Ae(t.outEdges(a),function(s){Object.prototype.hasOwnProperty.call(r,s.w)?e.push(s):i(s.w)}),delete r[a])}return o(i,"dfs"),Ae(t.nodes(),i),e}function hne(t){Ae(t.edges(),function(e){var r=t.edge(e);if(r.reversed){t.removeEdge(e);var n=r.forwardName;delete r.reversed,delete r.forwardName,t.setEdge(e.w,e.v,r,n)}})}var YL=N(()=>{"use strict";qt();cne();o(une,"run");o(XMe,"dfsFAS");o(hne,"undo")});function Ec(t,e,r,n){var i;do i=Ud(n);while(t.hasNode(i));return r.dummy=e,t.setNode(i,r),i}function dne(t){var e=new sn().setGraph(t.graph());return Ae(t.nodes(),function(r){e.setNode(r,t.node(r))}),Ae(t.edges(),function(r){var n=e.edge(r.v,r.w)||{weight:0,minlen:1},i=t.edge(r);e.setEdge(r.v,r.w,{weight:n.weight+i.weight,minlen:Math.max(n.minlen,i.minlen)})}),e}function JT(t){var e=new sn({multigraph:t.isMultigraph()}).setGraph(t.graph());return Ae(t.nodes(),function(r){t.children(r).length||e.setNode(r,t.node(r))}),Ae(t.edges(),function(r){e.setEdge(r,t.edge(r))}),e}function XL(t,e){var r=t.x,n=t.y,i=e.x-r,a=e.y-n,s=t.width/2,l=t.height/2;if(!i&&!a)throw new Error("Not possible to find intersection inside of the rectangle");var u,h;return Math.abs(a)*s>Math.abs(i)*l?(a<0&&(l=-l),u=l*i/a,h=l):(i<0&&(s=-s),u=s,h=s*a/i),{x:r+u,y:n+h}}function ef(t){var e=Je(Go(KL(t)+1),function(){return[]});return Ae(t.nodes(),function(r){var n=t.node(r),i=n.rank;pr(i)||(e[i][n.order]=r)}),e}function pne(t){var e=Dl(Je(t.nodes(),function(r){return t.node(r).rank}));Ae(t.nodes(),function(r){var n=t.node(r);Bt(n,"rank")&&(n.rank-=e)})}function mne(t){var e=Dl(Je(t.nodes(),function(a){return t.node(a).rank})),r=[];Ae(t.nodes(),function(a){var s=t.node(a).rank-e;r[s]||(r[s]=[]),r[s].push(a)});var n=0,i=t.graph().nodeRankFactor;Ae(r,function(a,s){pr(a)&&s%i!==0?--n:n&&Ae(a,function(l){t.node(l).rank+=n})})}function jL(t,e,r,n){var i={width:0,height:0};return arguments.length>=4&&(i.rank=r,i.order=n),Ec(t,"border",i,e)}function KL(t){return Is(Je(t.nodes(),function(e){var r=t.node(e).rank;if(!pr(r))return r}))}function gne(t,e){var r={lhs:[],rhs:[]};return Ae(t,function(n){e(n)?r.lhs.push(n):r.rhs.push(n)}),r}function yne(t,e){var r=PT();try{return e()}finally{console.log(t+" time: "+(PT()-r)+"ms")}}function vne(t,e){return e()}var Sc=N(()=>{"use strict";qt();Vo();o(Ec,"addDummyNode");o(dne,"simplify");o(JT,"asNonCompoundGraph");o(XL,"intersectRect");o(ef,"buildLayerMatrix");o(pne,"normalizeRanks");o(mne,"removeEmptyRanks");o(jL,"addBorderNode");o(KL,"maxRank");o(gne,"partition");o(yne,"time");o(vne,"notime")});function bne(t){function e(r){var n=t.children(r),i=t.node(r);if(n.length&&Ae(n,e),Object.prototype.hasOwnProperty.call(i,"minRank")){i.borderLeft=[],i.borderRight=[];for(var a=i.minRank,s=i.maxRank+1;a{"use strict";qt();Sc();o(bne,"addBorderSegments");o(xne,"addBorderNode")});function kne(t){var e=t.graph().rankdir.toLowerCase();(e==="lr"||e==="rl")&&Sne(t)}function Ene(t){var e=t.graph().rankdir.toLowerCase();(e==="bt"||e==="rl")&&jMe(t),(e==="lr"||e==="rl")&&(KMe(t),Sne(t))}function Sne(t){Ae(t.nodes(),function(e){Tne(t.node(e))}),Ae(t.edges(),function(e){Tne(t.edge(e))})}function Tne(t){var e=t.width;t.width=t.height,t.height=e}function jMe(t){Ae(t.nodes(),function(e){QL(t.node(e))}),Ae(t.edges(),function(e){var r=t.edge(e);Ae(r.points,QL),Object.prototype.hasOwnProperty.call(r,"y")&&QL(r)})}function QL(t){t.y=-t.y}function KMe(t){Ae(t.nodes(),function(e){ZL(t.node(e))}),Ae(t.edges(),function(e){var r=t.edge(e);Ae(r.points,ZL),Object.prototype.hasOwnProperty.call(r,"x")&&ZL(r)})}function ZL(t){var e=t.x;t.x=t.y,t.y=e}var Cne=N(()=>{"use strict";qt();o(kne,"adjust");o(Ene,"undo");o(Sne,"swapWidthHeight");o(Tne,"swapWidthHeightOne");o(jMe,"reverseY");o(QL,"reverseYOne");o(KMe,"swapXY");o(ZL,"swapXYOne")});function Ane(t){t.graph().dummyChains=[],Ae(t.edges(),function(e){ZMe(t,e)})}function ZMe(t,e){var r=e.v,n=t.node(r).rank,i=e.w,a=t.node(i).rank,s=e.name,l=t.edge(e),u=l.labelRank;if(a!==n+1){t.removeEdge(e);var h=void 0,f,d;for(d=0,++n;n{"use strict";qt();Sc();o(Ane,"run");o(ZMe,"normalizeEdge");o(_ne,"undo")});function D2(t){var e={};function r(n){var i=t.node(n);if(Object.prototype.hasOwnProperty.call(e,n))return i.rank;e[n]=!0;var a=Dl(Je(t.outEdges(n),function(s){return r(s.w)-t.edge(s).minlen}));return(a===Number.POSITIVE_INFINITY||a===void 0||a===null)&&(a=0),i.rank=a}o(r,"dfs"),Ae(t.sources(),r)}function Wd(t,e){return t.node(e.w).rank-t.node(e.v).rank-t.edge(e).minlen}var ek=N(()=>{"use strict";qt();o(D2,"longestPath");o(Wd,"slack")});function tk(t){var e=new sn({directed:!1}),r=t.nodes()[0],n=t.nodeCount();e.setNode(r,{});for(var i,a;JMe(e,t){"use strict";qt();Vo();ek();o(tk,"feasibleTree");o(JMe,"tightTree");o(eIe,"findMinSlackEdge");o(tIe,"shiftRanks")});var Lne=N(()=>{"use strict"});var tR=N(()=>{"use strict"});var cWt,rR=N(()=>{"use strict";qt();tR();cWt=As(1)});var Rne=N(()=>{"use strict";rR()});var nR=N(()=>{"use strict"});var Nne=N(()=>{"use strict";nR()});var bWt,Mne=N(()=>{"use strict";qt();bWt=As(1)});function iR(t){var e={},r={},n=[];function i(a){if(Object.prototype.hasOwnProperty.call(r,a))throw new L2;Object.prototype.hasOwnProperty.call(e,a)||(r[a]=!0,e[a]=!0,Ae(t.predecessors(a),i),delete r[a],n.push(a))}if(o(i,"visit"),Ae(t.sinks(),i),VL(e)!==t.nodeCount())throw new L2;return n}function L2(){}var aR=N(()=>{"use strict";qt();iR.CycleException=L2;o(iR,"topsort");o(L2,"CycleException");L2.prototype=new Error});var Ine=N(()=>{"use strict";aR()});function rk(t,e,r){Pt(e)||(e=[e]);var n=(t.isDirected()?t.successors:t.neighbors).bind(t),i=[],a={};return Ae(e,function(s){if(!t.hasNode(s))throw new Error("Graph does not have node: "+s);One(t,s,r==="post",a,n,i)}),i}function One(t,e,r,n,i,a){Object.prototype.hasOwnProperty.call(n,e)||(n[e]=!0,r||a.push(e),Ae(i(e),function(s){One(t,s,r,n,i,a)}),r&&a.push(e))}var sR=N(()=>{"use strict";qt();o(rk,"dfs");o(One,"doDfs")});function oR(t,e){return rk(t,e,"post")}var Pne=N(()=>{"use strict";sR();o(oR,"postorder")});function lR(t,e){return rk(t,e,"pre")}var Bne=N(()=>{"use strict";sR();o(lR,"preorder")});var Fne=N(()=>{"use strict";tR();KT()});var $ne=N(()=>{"use strict";Lne();rR();Rne();Nne();Mne();Ine();Pne();Bne();Fne();nR();aR()});function rf(t){t=dne(t),D2(t);var e=tk(t);uR(e),cR(e,t);for(var r,n;r=Une(e);)n=Hne(e,t,r),Wne(e,t,r,n)}function cR(t,e){var r=oR(t,t.nodes());r=r.slice(0,r.length-1),Ae(r,function(n){sIe(t,e,n)})}function sIe(t,e,r){var n=t.node(r),i=n.parent;t.edge(r,i).cutvalue=Gne(t,e,r)}function Gne(t,e,r){var n=t.node(r),i=n.parent,a=!0,s=e.edge(r,i),l=0;return s||(a=!1,s=e.edge(i,r)),l=s.weight,Ae(e.nodeEdges(r),function(u){var h=u.v===r,f=h?u.w:u.v;if(f!==i){var d=h===a,p=e.edge(u).weight;if(l+=d?p:-p,lIe(t,r,f)){var m=t.edge(r,f).cutvalue;l+=d?-m:m}}}),l}function uR(t,e){arguments.length<2&&(e=t.nodes()[0]),Vne(t,{},1,e)}function Vne(t,e,r,n,i){var a=r,s=t.node(n);return e[n]=!0,Ae(t.neighbors(n),function(l){Object.prototype.hasOwnProperty.call(e,l)||(r=Vne(t,e,r,l,n))}),s.low=a,s.lim=r++,i?s.parent=i:delete s.parent,r}function Une(t){return ns(t.edges(),function(e){return t.edge(e).cutvalue<0})}function Hne(t,e,r){var n=r.v,i=r.w;e.hasEdge(n,i)||(n=r.w,i=r.v);var a=t.node(n),s=t.node(i),l=a,u=!1;a.lim>s.lim&&(l=s,u=!0);var h=Yr(e.edges(),function(f){return u===zne(t,t.node(f.v),l)&&u!==zne(t,t.node(f.w),l)});return Gd(h,function(f){return Wd(e,f)})}function Wne(t,e,r,n){var i=r.v,a=r.w;t.removeEdge(i,a),t.setEdge(n.v,n.w,{}),uR(t),cR(t,e),oIe(t,e)}function oIe(t,e){var r=ns(t.nodes(),function(i){return!e.node(i).parent}),n=lR(t,r);n=n.slice(1),Ae(n,function(i){var a=t.node(i).parent,s=e.edge(i,a),l=!1;s||(s=e.edge(a,i),l=!0),e.node(i).rank=e.node(a).rank+(l?s.minlen:-s.minlen)})}function lIe(t,e,r){return t.hasEdge(e,r)}function zne(t,e,r){return r.low<=e.lim&&e.lim<=r.lim}var qne=N(()=>{"use strict";qt();$ne();Sc();eR();ek();rf.initLowLimValues=uR;rf.initCutValues=cR;rf.calcCutValue=Gne;rf.leaveEdge=Une;rf.enterEdge=Hne;rf.exchangeEdges=Wne;o(rf,"networkSimplex");o(cR,"initCutValues");o(sIe,"assignCutValue");o(Gne,"calcCutValue");o(uR,"initLowLimValues");o(Vne,"dfsAssignLowLim");o(Une,"leaveEdge");o(Hne,"enterEdge");o(Wne,"exchangeEdges");o(oIe,"updateRanks");o(lIe,"isTreeEdge");o(zne,"isDescendant")});function hR(t){switch(t.graph().ranker){case"network-simplex":Yne(t);break;case"tight-tree":uIe(t);break;case"longest-path":cIe(t);break;default:Yne(t)}}function uIe(t){D2(t),tk(t)}function Yne(t){rf(t)}var cIe,fR=N(()=>{"use strict";eR();qne();ek();o(hR,"rank");cIe=D2;o(uIe,"tightTreeRanker");o(Yne,"networkSimplexRanker")});function Xne(t){var e=Ec(t,"root",{},"_root"),r=hIe(t),n=Is(br(r))-1,i=2*n+1;t.graph().nestingRoot=e,Ae(t.edges(),function(s){t.edge(s).minlen*=i});var a=fIe(t)+1;Ae(t.children(),function(s){jne(t,e,i,a,n,r,s)}),t.graph().nodeRankFactor=i}function jne(t,e,r,n,i,a,s){var l=t.children(s);if(!l.length){s!==e&&t.setEdge(e,s,{weight:0,minlen:r});return}var u=jL(t,"_bt"),h=jL(t,"_bb"),f=t.node(s);t.setParent(u,s),f.borderTop=u,t.setParent(h,s),f.borderBottom=h,Ae(l,function(d){jne(t,e,r,n,i,a,d);var p=t.node(d),m=p.borderTop?p.borderTop:d,g=p.borderBottom?p.borderBottom:d,y=p.borderTop?n:2*n,v=m!==g?1:i-a[s]+1;t.setEdge(u,m,{weight:y,minlen:v,nestingEdge:!0}),t.setEdge(g,h,{weight:y,minlen:v,nestingEdge:!0})}),t.parent(s)||t.setEdge(e,u,{weight:0,minlen:i+a[s]})}function hIe(t){var e={};function r(n,i){var a=t.children(n);a&&a.length&&Ae(a,function(s){r(s,i+1)}),e[n]=i}return o(r,"dfs"),Ae(t.children(),function(n){r(n,1)}),e}function fIe(t){return Xr(t.edges(),function(e,r){return e+t.edge(r).weight},0)}function Kne(t){var e=t.graph();t.removeNode(e.nestingRoot),delete e.nestingRoot,Ae(t.edges(),function(r){var n=t.edge(r);n.nestingEdge&&t.removeEdge(r)})}var Qne=N(()=>{"use strict";qt();Sc();o(Xne,"run");o(jne,"dfs");o(hIe,"treeDepths");o(fIe,"sumWeights");o(Kne,"cleanup")});function Zne(t,e,r){var n={},i;Ae(r,function(a){for(var s=t.parent(a),l,u;s;){if(l=t.parent(s),l?(u=n[l],n[l]=s):(u=i,i=s),u&&u!==s){e.setEdge(u,s);return}s=l}})}var Jne=N(()=>{"use strict";qt();o(Zne,"addSubgraphConstraints")});function eie(t,e,r){var n=pIe(t),i=new sn({compound:!0}).setGraph({root:n}).setDefaultNodeLabel(function(a){return t.node(a)});return Ae(t.nodes(),function(a){var s=t.node(a),l=t.parent(a);(s.rank===e||s.minRank<=e&&e<=s.maxRank)&&(i.setNode(a),i.setParent(a,l||n),Ae(t[r](a),function(u){var h=u.v===a?u.w:u.v,f=i.edge(h,a),d=pr(f)?0:f.weight;i.setEdge(h,a,{weight:t.edge(u).weight+d})}),Object.prototype.hasOwnProperty.call(s,"minRank")&&i.setNode(a,{borderLeft:s.borderLeft[e],borderRight:s.borderRight[e]}))}),i}function pIe(t){for(var e;t.hasNode(e=Ud("_root")););return e}var tie=N(()=>{"use strict";qt();Vo();o(eie,"buildLayerGraph");o(pIe,"createRootNode")});function rie(t,e){for(var r=0,n=1;n0;)f%2&&(d+=l[f+1]),f=f-1>>1,l[f]+=h.weight;u+=h.weight*d})),u}var nie=N(()=>{"use strict";qt();o(rie,"crossCount");o(mIe,"twoLayerCrossCount")});function iie(t){var e={},r=Yr(t.nodes(),function(l){return!t.children(l).length}),n=Is(Je(r,function(l){return t.node(l).rank})),i=Je(Go(n+1),function(){return[]});function a(l){if(!Bt(e,l)){e[l]=!0;var u=t.node(l);i[u.rank].push(l),Ae(t.successors(l),a)}}o(a,"dfs");var s=kc(r,function(l){return t.node(l).rank});return Ae(s,a),i}var aie=N(()=>{"use strict";qt();o(iie,"initOrder")});function sie(t,e){return Je(e,function(r){var n=t.inEdges(r);if(n.length){var i=Xr(n,function(a,s){var l=t.edge(s),u=t.node(s.v);return{sum:a.sum+l.weight*u.order,weight:a.weight+l.weight}},{sum:0,weight:0});return{v:r,barycenter:i.sum/i.weight,weight:i.weight}}else return{v:r}})}var oie=N(()=>{"use strict";qt();o(sie,"barycenter")});function lie(t,e){var r={};Ae(t,function(i,a){var s=r[i.v]={indegree:0,in:[],out:[],vs:[i.v],i:a};pr(i.barycenter)||(s.barycenter=i.barycenter,s.weight=i.weight)}),Ae(e.edges(),function(i){var a=r[i.v],s=r[i.w];!pr(a)&&!pr(s)&&(s.indegree++,a.out.push(r[i.w]))});var n=Yr(r,function(i){return!i.indegree});return gIe(n)}function gIe(t){var e=[];function r(a){return function(s){s.merged||(pr(s.barycenter)||pr(a.barycenter)||s.barycenter>=a.barycenter)&&yIe(a,s)}}o(r,"handleIn");function n(a){return function(s){s.in.push(a),--s.indegree===0&&t.push(s)}}for(o(n,"handleOut");t.length;){var i=t.pop();e.push(i),Ae(i.in.reverse(),r(i)),Ae(i.out,n(i))}return Je(Yr(e,function(a){return!a.merged}),function(a){return Vd(a,["vs","i","barycenter","weight"])})}function yIe(t,e){var r=0,n=0;t.weight&&(r+=t.barycenter*t.weight,n+=t.weight),e.weight&&(r+=e.barycenter*e.weight,n+=e.weight),t.vs=e.vs.concat(t.vs),t.barycenter=r/n,t.weight=n,t.i=Math.min(e.i,t.i),e.merged=!0}var cie=N(()=>{"use strict";qt();o(lie,"resolveConflicts");o(gIe,"doResolveConflicts");o(yIe,"mergeEntries")});function hie(t,e){var r=gne(t,function(f){return Object.prototype.hasOwnProperty.call(f,"barycenter")}),n=r.lhs,i=kc(r.rhs,function(f){return-f.i}),a=[],s=0,l=0,u=0;n.sort(vIe(!!e)),u=uie(a,i,u),Ae(n,function(f){u+=f.vs.length,a.push(f.vs),s+=f.barycenter*f.weight,l+=f.weight,u=uie(a,i,u)});var h={vs:qr(a)};return l&&(h.barycenter=s/l,h.weight=l),h}function uie(t,e,r){for(var n;e.length&&(n=ga(e)).i<=r;)e.pop(),t.push(n.vs),r++;return r}function vIe(t){return function(e,r){return e.barycenterr.barycenter?1:t?r.i-e.i:e.i-r.i}}var fie=N(()=>{"use strict";qt();Sc();o(hie,"sort");o(uie,"consumeUnsortable");o(vIe,"compareWithBias")});function dR(t,e,r,n){var i=t.children(e),a=t.node(e),s=a?a.borderLeft:void 0,l=a?a.borderRight:void 0,u={};s&&(i=Yr(i,function(g){return g!==s&&g!==l}));var h=sie(t,i);Ae(h,function(g){if(t.children(g.v).length){var y=dR(t,g.v,r,n);u[g.v]=y,Object.prototype.hasOwnProperty.call(y,"barycenter")&&bIe(g,y)}});var f=lie(h,r);xIe(f,u);var d=hie(f,n);if(s&&(d.vs=qr([s,d.vs,l]),t.predecessors(s).length)){var p=t.node(t.predecessors(s)[0]),m=t.node(t.predecessors(l)[0]);Object.prototype.hasOwnProperty.call(d,"barycenter")||(d.barycenter=0,d.weight=0),d.barycenter=(d.barycenter*d.weight+p.order+m.order)/(d.weight+2),d.weight+=2}return d}function xIe(t,e){Ae(t,function(r){r.vs=qr(r.vs.map(function(n){return e[n]?e[n].vs:n}))})}function bIe(t,e){pr(t.barycenter)?(t.barycenter=e.barycenter,t.weight=e.weight):(t.barycenter=(t.barycenter*t.weight+e.barycenter*e.weight)/(t.weight+e.weight),t.weight+=e.weight)}var die=N(()=>{"use strict";qt();oie();cie();fie();o(dR,"sortSubgraph");o(xIe,"expandSubgraphs");o(bIe,"mergeBarycenters")});function gie(t){var e=KL(t),r=pie(t,Go(1,e+1),"inEdges"),n=pie(t,Go(e-1,-1,-1),"outEdges"),i=iie(t);mie(t,i);for(var a=Number.POSITIVE_INFINITY,s,l=0,u=0;u<4;++l,++u){wIe(l%2?r:n,l%4>=2),i=ef(t);var h=rie(t,i);h{"use strict";qt();Vo();Sc();Jne();tie();nie();aie();die();o(gie,"order");o(pie,"buildLayerGraphs");o(wIe,"sweepLayerGraphs");o(mie,"assignOrder")});function vie(t){var e=kIe(t);Ae(t.graph().dummyChains,function(r){for(var n=t.node(r),i=n.edgeObj,a=TIe(t,e,i.v,i.w),s=a.path,l=a.lca,u=0,h=s[u],f=!0;r!==i.w;){if(n=t.node(r),f){for(;(h=s[u])!==l&&t.node(h).maxRanks||l>e[u].lim));for(h=u,u=n;(u=t.parent(u))!==h;)a.push(u);return{path:i.concat(a.reverse()),lca:h}}function kIe(t){var e={},r=0;function n(i){var a=r;Ae(t.children(i),n),e[i]={low:a,lim:r++}}return o(n,"dfs"),Ae(t.children(),n),e}var xie=N(()=>{"use strict";qt();o(vie,"parentDummyChains");o(TIe,"findPath");o(kIe,"postorder")});function EIe(t,e){var r={};function n(i,a){var s=0,l=0,u=i.length,h=ga(a);return Ae(a,function(f,d){var p=CIe(t,f),m=p?t.node(p).order:u;(p||f===h)&&(Ae(a.slice(l,d+1),function(g){Ae(t.predecessors(g),function(y){var v=t.node(y),x=v.order;(xh)&&bie(r,p,f)})})}o(n,"scan");function i(a,s){var l=-1,u,h=0;return Ae(s,function(f,d){if(t.node(f).dummy==="border"){var p=t.predecessors(f);p.length&&(u=t.node(p[0]).order,n(s,h,d,l,u),h=d,l=u)}n(s,h,s.length,u,a.length)}),s}return o(i,"visitLayer"),Xr(e,i),r}function CIe(t,e){if(t.node(e).dummy)return ns(t.predecessors(e),function(r){return t.node(r).dummy})}function bie(t,e,r){if(e>r){var n=e;e=r,r=n}var i=t[e];i||(t[e]=i={}),i[r]=!0}function AIe(t,e,r){if(e>r){var n=e;e=r,r=n}return!!t[e]&&Object.prototype.hasOwnProperty.call(t[e],r)}function _Ie(t,e,r,n){var i={},a={},s={};return Ae(e,function(l){Ae(l,function(u,h){i[u]=u,a[u]=u,s[u]=h})}),Ae(e,function(l){var u=-1;Ae(l,function(h){var f=n(h);if(f.length){f=kc(f,function(y){return s[y]});for(var d=(f.length-1)/2,p=Math.floor(d),m=Math.ceil(d);p<=m;++p){var g=f[p];a[h]===h&&u{"use strict";qt();Vo();Sc();o(EIe,"findType1Conflicts");o(SIe,"findType2Conflicts");o(CIe,"findOtherInnerSegmentNode");o(bie,"addConflict");o(AIe,"hasConflict");o(_Ie,"verticalAlignment");o(DIe,"horizontalCompaction");o(LIe,"buildBlockGraph");o(RIe,"findSmallestWidthAlignment");o(NIe,"alignCoordinates");o(MIe,"balance");o(wie,"positionX");o(IIe,"sep");o(OIe,"width")});function kie(t){t=JT(t),PIe(t),ML(wie(t),function(e,r){t.node(r).x=e})}function PIe(t){var e=ef(t),r=t.graph().ranksep,n=0;Ae(e,function(i){var a=Is(Je(i,function(s){return t.node(s).height}));Ae(i,function(s){t.node(s).y=n+a/2}),n+=a+r})}var Eie=N(()=>{"use strict";qt();Sc();Tie();o(kie,"position");o(PIe,"positionY")});function R2(t,e){var r=e&&e.debugTiming?yne:vne;r("layout",()=>{var n=r(" buildLayoutGraph",()=>YIe(t));r(" runLayout",()=>BIe(n,r)),r(" updateInputGraph",()=>FIe(t,n))})}function BIe(t,e){e(" makeSpaceForEdgeLabels",()=>XIe(t)),e(" removeSelfEdges",()=>nOe(t)),e(" acyclic",()=>une(t)),e(" nestingGraph.run",()=>Xne(t)),e(" rank",()=>hR(JT(t))),e(" injectEdgeLabelProxies",()=>jIe(t)),e(" removeEmptyRanks",()=>mne(t)),e(" nestingGraph.cleanup",()=>Kne(t)),e(" normalizeRanks",()=>pne(t)),e(" assignRankMinMax",()=>KIe(t)),e(" removeEdgeLabelProxies",()=>QIe(t)),e(" normalize.run",()=>Ane(t)),e(" parentDummyChains",()=>vie(t)),e(" addBorderSegments",()=>bne(t)),e(" order",()=>gie(t)),e(" insertSelfEdges",()=>iOe(t)),e(" adjustCoordinateSystem",()=>kne(t)),e(" position",()=>kie(t)),e(" positionSelfEdges",()=>aOe(t)),e(" removeBorderNodes",()=>rOe(t)),e(" normalize.undo",()=>_ne(t)),e(" fixupEdgeLabelCoords",()=>eOe(t)),e(" undoCoordinateSystem",()=>Ene(t)),e(" translateGraph",()=>ZIe(t)),e(" assignNodeIntersects",()=>JIe(t)),e(" reversePoints",()=>tOe(t)),e(" acyclic.undo",()=>hne(t))}function FIe(t,e){Ae(t.nodes(),function(r){var n=t.node(r),i=e.node(r);n&&(n.x=i.x,n.y=i.y,e.children(r).length&&(n.width=i.width,n.height=i.height))}),Ae(t.edges(),function(r){var n=t.edge(r),i=e.edge(r);n.points=i.points,Object.prototype.hasOwnProperty.call(i,"x")&&(n.x=i.x,n.y=i.y)}),t.graph().width=e.graph().width,t.graph().height=e.graph().height}function YIe(t){var e=new sn({multigraph:!0,compound:!0}),r=mR(t.graph());return e.setGraph(Fh({},zIe,pR(r,$Ie),Vd(r,GIe))),Ae(t.nodes(),function(n){var i=mR(t.node(n));e.setNode(n,Qh(pR(i,VIe),UIe)),e.setParent(n,t.parent(n))}),Ae(t.edges(),function(n){var i=mR(t.edge(n));e.setEdge(n,Fh({},WIe,pR(i,HIe),Vd(i,qIe)))}),e}function XIe(t){var e=t.graph();e.ranksep/=2,Ae(t.edges(),function(r){var n=t.edge(r);n.minlen*=2,n.labelpos.toLowerCase()!=="c"&&(e.rankdir==="TB"||e.rankdir==="BT"?n.width+=n.labeloffset:n.height+=n.labeloffset)})}function jIe(t){Ae(t.edges(),function(e){var r=t.edge(e);if(r.width&&r.height){var n=t.node(e.v),i=t.node(e.w),a={rank:(i.rank-n.rank)/2+n.rank,e};Ec(t,"edge-proxy",a,"_ep")}})}function KIe(t){var e=0;Ae(t.nodes(),function(r){var n=t.node(r);n.borderTop&&(n.minRank=t.node(n.borderTop).rank,n.maxRank=t.node(n.borderBottom).rank,e=Is(e,n.maxRank))}),t.graph().maxRank=e}function QIe(t){Ae(t.nodes(),function(e){var r=t.node(e);r.dummy==="edge-proxy"&&(t.edge(r.e).labelRank=r.rank,t.removeNode(e))})}function ZIe(t){var e=Number.POSITIVE_INFINITY,r=0,n=Number.POSITIVE_INFINITY,i=0,a=t.graph(),s=a.marginx||0,l=a.marginy||0;function u(h){var f=h.x,d=h.y,p=h.width,m=h.height;e=Math.min(e,f-p/2),r=Math.max(r,f+p/2),n=Math.min(n,d-m/2),i=Math.max(i,d+m/2)}o(u,"getExtremes"),Ae(t.nodes(),function(h){u(t.node(h))}),Ae(t.edges(),function(h){var f=t.edge(h);Object.prototype.hasOwnProperty.call(f,"x")&&u(f)}),e-=s,n-=l,Ae(t.nodes(),function(h){var f=t.node(h);f.x-=e,f.y-=n}),Ae(t.edges(),function(h){var f=t.edge(h);Ae(f.points,function(d){d.x-=e,d.y-=n}),Object.prototype.hasOwnProperty.call(f,"x")&&(f.x-=e),Object.prototype.hasOwnProperty.call(f,"y")&&(f.y-=n)}),a.width=r-e+s,a.height=i-n+l}function JIe(t){Ae(t.edges(),function(e){var r=t.edge(e),n=t.node(e.v),i=t.node(e.w),a,s;r.points?(a=r.points[0],s=r.points[r.points.length-1]):(r.points=[],a=i,s=n),r.points.unshift(XL(n,a)),r.points.push(XL(i,s))})}function eOe(t){Ae(t.edges(),function(e){var r=t.edge(e);if(Object.prototype.hasOwnProperty.call(r,"x"))switch((r.labelpos==="l"||r.labelpos==="r")&&(r.width-=r.labeloffset),r.labelpos){case"l":r.x-=r.width/2+r.labeloffset;break;case"r":r.x+=r.width/2+r.labeloffset;break}})}function tOe(t){Ae(t.edges(),function(e){var r=t.edge(e);r.reversed&&r.points.reverse()})}function rOe(t){Ae(t.nodes(),function(e){if(t.children(e).length){var r=t.node(e),n=t.node(r.borderTop),i=t.node(r.borderBottom),a=t.node(ga(r.borderLeft)),s=t.node(ga(r.borderRight));r.width=Math.abs(s.x-a.x),r.height=Math.abs(i.y-n.y),r.x=a.x+r.width/2,r.y=n.y+r.height/2}}),Ae(t.nodes(),function(e){t.node(e).dummy==="border"&&t.removeNode(e)})}function nOe(t){Ae(t.edges(),function(e){if(e.v===e.w){var r=t.node(e.v);r.selfEdges||(r.selfEdges=[]),r.selfEdges.push({e,label:t.edge(e)}),t.removeEdge(e)}})}function iOe(t){var e=ef(t);Ae(e,function(r){var n=0;Ae(r,function(i,a){var s=t.node(i);s.order=a+n,Ae(s.selfEdges,function(l){Ec(t,"selfedge",{width:l.label.width,height:l.label.height,rank:s.rank,order:a+ ++n,e:l.e,label:l.label},"_se")}),delete s.selfEdges})})}function aOe(t){Ae(t.nodes(),function(e){var r=t.node(e);if(r.dummy==="selfedge"){var n=t.node(r.e.v),i=n.x+n.width/2,a=n.y,s=r.x-i,l=n.height/2;t.setEdge(r.e,r.label),t.removeNode(e),r.label.points=[{x:i+2*s/3,y:a-l},{x:i+5*s/6,y:a-l},{x:i+s,y:a},{x:i+5*s/6,y:a+l},{x:i+2*s/3,y:a+l}],r.label.x=r.x,r.label.y=r.y}})}function pR(t,e){return zd(Vd(t,e),Number)}function mR(t){var e={};return Ae(t,function(r,n){e[n.toLowerCase()]=r}),e}var $Ie,zIe,GIe,VIe,UIe,HIe,WIe,qIe,Sie=N(()=>{"use strict";qt();Vo();wne();Cne();YL();JL();fR();Qne();yie();xie();Eie();Sc();o(R2,"layout");o(BIe,"runLayout");o(FIe,"updateInputGraph");$Ie=["nodesep","edgesep","ranksep","marginx","marginy"],zIe={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},GIe=["acyclicer","ranker","rankdir","align"],VIe=["width","height"],UIe={width:0,height:0},HIe=["minlen","weight","width","height","labeloffset"],WIe={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},qIe=["labelpos"];o(YIe,"buildLayoutGraph");o(XIe,"makeSpaceForEdgeLabels");o(jIe,"injectEdgeLabelProxies");o(KIe,"assignRankMinMax");o(QIe,"removeEdgeLabelProxies");o(ZIe,"translateGraph");o(JIe,"assignNodeIntersects");o(eOe,"fixupEdgeLabelCoords");o(tOe,"reversePointsForReversedEdges");o(rOe,"removeBorderNodes");o(nOe,"removeSelfEdges");o(iOe,"insertSelfEdges");o(aOe,"positionSelfEdges");o(pR,"selectNumberAttrs");o(mR,"canonicalize")});var gR=N(()=>{"use strict";YL();Sie();JL();fR()});function Uo(t){var e={options:{directed:t.isDirected(),multigraph:t.isMultigraph(),compound:t.isCompound()},nodes:sOe(t),edges:oOe(t)};return pr(t.graph())||(e.value=an(t.graph())),e}function sOe(t){return Je(t.nodes(),function(e){var r=t.node(e),n=t.parent(e),i={v:e};return pr(r)||(i.value=r),pr(n)||(i.parent=n),i})}function oOe(t){return Je(t.edges(),function(e){var r=t.edge(e),n={v:e.v,w:e.w};return pr(e.name)||(n.name=e.name),pr(r)||(n.value=r),n})}var yR=N(()=>{"use strict";qt();KT();o(Uo,"write");o(sOe,"writeNodes");o(oOe,"writeEdges")});var wr,qd,_ie,Die,nk,lOe,Lie,Rie,cOe,Fm,Aie,Nie,Mie,Iie,Oie,Pie=N(()=>{"use strict";vt();Vo();yR();wr=new Map,qd=new Map,_ie=new Map,Die=o(()=>{qd.clear(),_ie.clear(),wr.clear()},"clear"),nk=o((t,e)=>{let r=qd.get(e)||[];return Y.trace("In isDescendant",e," ",t," = ",r.includes(t)),r.includes(t)},"isDescendant"),lOe=o((t,e)=>{let r=qd.get(e)||[];return Y.info("Descendants of ",e," is ",r),Y.info("Edge is ",t),t.v===e||t.w===e?!1:r?r.includes(t.v)||nk(t.v,e)||nk(t.w,e)||r.includes(t.w):(Y.debug("Tilt, ",e,",not in descendants"),!1)},"edgeInCluster"),Lie=o((t,e,r,n)=>{Y.warn("Copying children of ",t,"root",n,"data",e.node(t),n);let i=e.children(t)||[];t!==n&&i.push(t),Y.warn("Copying (nodes) clusterId",t,"nodes",i),i.forEach(a=>{if(e.children(a).length>0)Lie(a,e,r,n);else{let s=e.node(a);Y.info("cp ",a," to ",n," with parent ",t),r.setNode(a,s),n!==e.parent(a)&&(Y.warn("Setting parent",a,e.parent(a)),r.setParent(a,e.parent(a))),t!==n&&a!==t?(Y.debug("Setting parent",a,t),r.setParent(a,t)):(Y.info("In copy ",t,"root",n,"data",e.node(t),n),Y.debug("Not Setting parent for node=",a,"cluster!==rootId",t!==n,"node!==clusterId",a!==t));let l=e.edges(a);Y.debug("Copying Edges",l),l.forEach(u=>{Y.info("Edge",u);let h=e.edge(u.v,u.w,u.name);Y.info("Edge data",h,n);try{lOe(u,n)?(Y.info("Copying as ",u.v,u.w,h,u.name),r.setEdge(u.v,u.w,h,u.name),Y.info("newGraph edges ",r.edges(),r.edge(r.edges()[0]))):Y.info("Skipping copy of edge ",u.v,"-->",u.w," rootId: ",n," clusterId:",t)}catch(f){Y.error(f)}})}Y.debug("Removing node",a),e.removeNode(a)})},"copy"),Rie=o((t,e)=>{let r=e.children(t),n=[...r];for(let i of r)_ie.set(i,t),n=[...n,...Rie(i,e)];return n},"extractDescendants"),cOe=o((t,e,r)=>{let n=t.edges().filter(u=>u.v===e||u.w===e),i=t.edges().filter(u=>u.v===r||u.w===r),a=n.map(u=>({v:u.v===e?r:u.v,w:u.w===e?e:u.w})),s=i.map(u=>({v:u.v,w:u.w}));return a.filter(u=>s.some(h=>u.v===h.v&&u.w===h.w))},"findCommonEdges"),Fm=o((t,e,r)=>{let n=e.children(t);if(Y.trace("Searching children of id ",t,n),n.length<1)return t;let i;for(let a of n){let s=Fm(a,e,r),l=cOe(e,r,s);if(s)if(l.length>0)i=s;else return s}return i},"findNonClusterChild"),Aie=o(t=>!wr.has(t)||!wr.get(t).externalConnections?t:wr.has(t)?wr.get(t).id:t,"getAnchorId"),Nie=o((t,e)=>{if(!t||e>10){Y.debug("Opting out, no graph ");return}else Y.debug("Opting in, graph ");t.nodes().forEach(function(r){t.children(r).length>0&&(Y.warn("Cluster identified",r," Replacement id in edges: ",Fm(r,t,r)),qd.set(r,Rie(r,t)),wr.set(r,{id:Fm(r,t,r),clusterData:t.node(r)}))}),t.nodes().forEach(function(r){let n=t.children(r),i=t.edges();n.length>0?(Y.debug("Cluster identified",r,qd),i.forEach(a=>{let s=nk(a.v,r),l=nk(a.w,r);s^l&&(Y.warn("Edge: ",a," leaves cluster ",r),Y.warn("Descendants of XXX ",r,": ",qd.get(r)),wr.get(r).externalConnections=!0)})):Y.debug("Not a cluster ",r,qd)});for(let r of wr.keys()){let n=wr.get(r).id,i=t.parent(n);i!==r&&wr.has(i)&&!wr.get(i).externalConnections&&(wr.get(r).id=i)}t.edges().forEach(function(r){let n=t.edge(r);Y.warn("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(r)),Y.warn("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(t.edge(r)));let i=r.v,a=r.w;if(Y.warn("Fix XXX",wr,"ids:",r.v,r.w,"Translating: ",wr.get(r.v)," --- ",wr.get(r.w)),wr.get(r.v)||wr.get(r.w)){if(Y.warn("Fixing and trying - removing XXX",r.v,r.w,r.name),i=Aie(r.v),a=Aie(r.w),t.removeEdge(r.v,r.w,r.name),i!==r.v){let s=t.parent(i);wr.get(s).externalConnections=!0,n.fromCluster=r.v}if(a!==r.w){let s=t.parent(a);wr.get(s).externalConnections=!0,n.toCluster=r.w}Y.warn("Fix Replacing with XXX",i,a,r.name),t.setEdge(i,a,n,r.name)}}),Y.warn("Adjusted Graph",Uo(t)),Mie(t,0),Y.trace(wr)},"adjustClustersAndEdges"),Mie=o((t,e)=>{if(Y.warn("extractor - ",e,Uo(t),t.children("D")),e>10){Y.error("Bailing out");return}let r=t.nodes(),n=!1;for(let i of r){let a=t.children(i);n=n||a.length>0}if(!n){Y.debug("Done, no node has children",t.nodes());return}Y.debug("Nodes = ",r,e);for(let i of r)if(Y.debug("Extracting node",i,wr,wr.has(i)&&!wr.get(i).externalConnections,!t.parent(i),t.node(i),t.children("D")," Depth ",e),!wr.has(i))Y.debug("Not a cluster",i,e);else if(!wr.get(i).externalConnections&&t.children(i)&&t.children(i).length>0){Y.warn("Cluster without external connections, without a parent and with children",i,e);let s=t.graph().rankdir==="TB"?"LR":"TB";wr.get(i)?.clusterData?.dir&&(s=wr.get(i).clusterData.dir,Y.warn("Fixing dir",wr.get(i).clusterData.dir,s));let l=new sn({multigraph:!0,compound:!0}).setGraph({rankdir:s,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});Y.warn("Old graph before copy",Uo(t)),Lie(i,t,l,i),t.setNode(i,{clusterNode:!0,id:i,clusterData:wr.get(i).clusterData,label:wr.get(i).label,graph:l}),Y.warn("New graph after copy node: (",i,")",Uo(l)),Y.debug("Old graph after copy",Uo(t))}else Y.warn("Cluster ** ",i," **not meeting the criteria !externalConnections:",!wr.get(i).externalConnections," no parent: ",!t.parent(i)," children ",t.children(i)&&t.children(i).length>0,t.children("D"),e),Y.debug(wr);r=t.nodes(),Y.warn("New list of nodes",r);for(let i of r){let a=t.node(i);Y.warn(" Now next level",i,a),a?.clusterNode&&Mie(a.graph,e+1)}},"extractor"),Iie=o((t,e)=>{if(e.length===0)return[];let r=Object.assign([],e);return e.forEach(n=>{let i=t.children(n),a=Iie(t,i);r=[...r,...a]}),r},"sorter"),Oie=o(t=>Iie(t,t.children()),"sortNodesByHierarchy")});var Fie={};hr(Fie,{render:()=>uOe});var Bie,uOe,$ie=N(()=>{"use strict";gR();yR();Vo();tL();Ft();Pie();eT();Hw();eL();vt();w2();zt();Bie=o(async(t,e,r,n,i,a)=>{Y.warn("Graph in recursive render:XAX",Uo(e),i);let s=e.graph().rankdir;Y.trace("Dir in recursive render - dir:",s);let l=t.insert("g").attr("class","root");e.nodes()?Y.info("Recursive render XXX",e.nodes()):Y.info("No nodes found for",e),e.edges().length>0&&Y.info("Recursive edges",e.edge(e.edges()[0]));let u=l.insert("g").attr("class","clusters"),h=l.insert("g").attr("class","edgePaths"),f=l.insert("g").attr("class","edgeLabels"),d=l.insert("g").attr("class","nodes");await Promise.all(e.nodes().map(async function(y){let v=e.node(y);if(i!==void 0){let x=JSON.parse(JSON.stringify(i.clusterData));Y.trace(`Setting data for parent cluster XXX + Node.id = `,y,` + data=`,x.height,` +Parent cluster`,i.height),e.setNode(i.id,x),e.parent(y)||(Y.trace("Setting parent",y,i.id),e.setParent(y,i.id,x))}if(Y.info("(Insert) Node XXX"+y+": "+JSON.stringify(e.node(y))),v?.clusterNode){Y.info("Cluster identified XBX",y,v.width,e.node(y));let{ranksep:x,nodesep:b}=e.graph();v.graph.setGraph({...v.graph.graph(),ranksep:x+25,nodesep:b});let w=await Bie(d,v.graph,r,n,e.node(y),a),C=w.elem;je(v,C),v.diff=w.diff||0,Y.info("New compound node after recursive render XAX",y,"width",v.width,"height",v.height),rJ(C,v)}else e.children(y).length>0?(Y.trace("Cluster - the non recursive path XBX",y,v.id,v,v.width,"Graph:",e),Y.trace(Fm(v.id,e)),wr.set(v.id,{id:Fm(v.id,e),node:v})):(Y.trace("Node - the non recursive path XAX",y,d,e.node(y),s),await vm(d,e.node(y),{config:a,dir:s}))})),await o(async()=>{let y=e.edges().map(async function(v){let x=e.edge(v.v,v.w,v.name);Y.info("Edge "+v.v+" -> "+v.w+": "+JSON.stringify(v)),Y.info("Edge "+v.v+" -> "+v.w+": ",v," ",JSON.stringify(e.edge(v))),Y.info("Fix",wr,"ids:",v.v,v.w,"Translating: ",wr.get(v.v),wr.get(v.w)),await jw(f,x)});await Promise.all(y)},"processEdges")(),Y.info("Graph before layout:",JSON.stringify(Uo(e))),Y.info("############################################# XXX"),Y.info("### Layout ### XXX"),Y.info("############################################# XXX"),R2(e),Y.info("Graph after layout:",JSON.stringify(Uo(e)));let m=0,{subGraphTitleTotalMargin:g}=Ru(a);return await Promise.all(Oie(e).map(async function(y){let v=e.node(y);if(Y.info("Position XBX => "+y+": ("+v.x,","+v.y,") width: ",v.width," height: ",v.height),v?.clusterNode)v.y+=g,Y.info("A tainted cluster node XBX1",y,v.id,v.width,v.height,v.x,v.y,e.parent(y)),wr.get(v.id).node=v,k2(v);else if(e.children(y).length>0){Y.info("A pure cluster node XBX1",y,v.id,v.x,v.y,v.width,v.height,e.parent(y)),v.height+=g,e.node(v.parentId);let x=v?.padding/2||0,b=v?.labelBBox?.height||0,w=b-x||0;Y.debug("OffsetY",w,"labelHeight",b,"halfPadding",x),await ym(u,v),wr.get(v.id).node=v}else{let x=e.node(v.parentId);v.y+=g/2,Y.info("A regular node XBX1 - using the padding",v.id,"parent",v.parentId,v.width,v.height,v.x,v.y,"offsetY",v.offsetY,"parent",x,x?.offsetY,v),k2(v)}})),e.edges().forEach(function(y){let v=e.edge(y);Y.info("Edge "+y.v+" -> "+y.w+": "+JSON.stringify(v),v),v.points.forEach(C=>C.y+=g/2);let x=e.node(y.v);var b=e.node(y.w);let w=Qw(h,v,wr,r,x,b,n);Kw(v,w)}),e.nodes().forEach(function(y){let v=e.node(y);Y.info(y,v.type,v.diff),v.isGroup&&(m=v.diff)}),Y.warn("Returning from recursive render XAX",l,m),{elem:l,diff:m}},"recursiveRender"),uOe=o(async(t,e)=>{let r=new sn({multigraph:!0,compound:!0}).setGraph({rankdir:t.direction,nodesep:t.config?.nodeSpacing||t.config?.flowchart?.nodeSpacing||t.nodeSpacing,ranksep:t.config?.rankSpacing||t.config?.flowchart?.rankSpacing||t.rankSpacing,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),n=e.select("g");Zw(n,t.markers,t.type,t.diagramId),nJ(),tJ(),jZ(),Die(),t.nodes.forEach(a=>{r.setNode(a.id,{...a}),a.parentId&&r.setParent(a.id,a.parentId)}),Y.debug("Edges:",t.edges),t.edges.forEach(a=>{if(a.start===a.end){let s=a.start,l=s+"---"+s+"---1",u=s+"---"+s+"---2",h=r.node(s);r.setNode(l,{domId:l,id:l,parentId:h.parentId,labelStyle:"",label:"",padding:0,shape:"labelRect",style:"",width:10,height:10}),r.setParent(l,h.parentId),r.setNode(u,{domId:u,id:u,parentId:h.parentId,labelStyle:"",padding:0,shape:"labelRect",label:"",style:"",width:10,height:10}),r.setParent(u,h.parentId);let f=structuredClone(a),d=structuredClone(a),p=structuredClone(a);f.label="",f.arrowTypeEnd="none",f.id=s+"-cyclic-special-1",d.arrowTypeStart="none",d.arrowTypeEnd="none",d.id=s+"-cyclic-special-mid",p.label="",h.isGroup&&(f.fromCluster=s,p.toCluster=s),p.id=s+"-cyclic-special-2",p.arrowTypeStart="none",r.setEdge(s,l,f,s+"-cyclic-special-0"),r.setEdge(l,u,d,s+"-cyclic-special-1"),r.setEdge(u,s,p,s+"-cyc{"use strict";aJ();vt();N2={},vR=o(t=>{for(let e of t)N2[e.name]=e},"registerLayoutLoaders"),hOe=o(()=>{vR([{name:"dagre",loader:o(async()=>await Promise.resolve().then(()=>($ie(),Fie)),"loader")}])},"registerDefaultLayoutLoaders");hOe();Cc=o(async(t,e)=>{if(!(t.layoutAlgorithm in N2))throw new Error(`Unknown layout algorithm: ${t.layoutAlgorithm}`);let r=N2[t.layoutAlgorithm];return(await r.loader()).render(t,e,iJ,{algorithm:r.algorithm})},"render"),nf=o((t="",{fallback:e="dagre"}={})=>{if(t in N2)return t;if(e in N2)return Y.warn(`Layout algorithm ${t} is not registered. Using ${e} as fallback.`),e;throw new Error(`Both layout algorithms ${t} and ${e} are not registered.`)},"getRegisteredLayoutAlgorithm")});var Ac,fOe,dOe,$m=N(()=>{"use strict";Ei();vt();Ac=o((t,e,r,n)=>{t.attr("class",r);let{width:i,height:a,x:s,y:l}=fOe(t,e);vn(t,a,i,n);let u=dOe(s,l,i,a,e);t.attr("viewBox",u),Y.debug(`viewBox configured: ${u} with padding: ${e}`)},"setupViewPortForSVG"),fOe=o((t,e)=>{let r=t.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:r.width+e*2,height:r.height+e*2,x:r.x,y:r.y}},"calculateDimensionsWithPadding"),dOe=o((t,e,r,n,i)=>`${t-i} ${e-i} ${r} ${n}`,"createViewBox")});var pOe,mOe,zie,Gie=N(()=>{"use strict";dr();zt();vt();gm();Yd();$m();ir();pOe=o(function(t,e){return e.db.getClasses()},"getClasses"),mOe=o(async function(t,e,r,n){Y.info("REF0:"),Y.info("Drawing state diagram (v2)",e);let{securityLevel:i,flowchart:a,layout:s}=me(),l;i==="sandbox"&&(l=Ge("#i"+e));let u=i==="sandbox"?l.nodes()[0].contentDocument:document;Y.debug("Before getData: ");let h=n.db.getData();Y.debug("Data: ",h);let f=yc(e,i),d=n.db.getDirection();h.type=n.type,h.layoutAlgorithm=nf(s),h.layoutAlgorithm==="dagre"&&s==="elk"&&Y.warn("flowchart-elk was moved to an external package in Mermaid v11. Please refer [release notes](https://github.com/mermaid-js/mermaid/releases/tag/v11.0.0) for more details. This diagram will be rendered using `dagre` layout as a fallback."),h.direction=d,h.nodeSpacing=a?.nodeSpacing||50,h.rankSpacing=a?.rankSpacing||50,h.markers=["point","circle","cross"],h.diagramId=e,Y.debug("REF1:",h),await Cc(h,f);let p=h.config.flowchart?.diagramPadding??8;Gt.insertTitle(f,"flowchartTitleText",a?.titleTopMargin||0,n.db.getDiagramTitle()),Ac(f,p,"flowchart",a?.useMaxWidth||!1);for(let m of h.nodes){let g=Ge(`#${e} [id="${m.id}"]`);if(!g||!m.link)continue;let y=u.createElementNS("http://www.w3.org/2000/svg","a");y.setAttributeNS("http://www.w3.org/2000/svg","class",m.cssClasses),y.setAttributeNS("http://www.w3.org/2000/svg","rel","noopener"),i==="sandbox"?y.setAttributeNS("http://www.w3.org/2000/svg","target","_top"):m.linkTarget&&y.setAttributeNS("http://www.w3.org/2000/svg","target",m.linkTarget);let v=g.insert(function(){return y},":first-child"),x=g.select(".label-container");x&&v.append(function(){return x.node()});let b=g.select(".label");b&&v.append(function(){return b.node()})}},"draw"),zie={getClasses:pOe,draw:mOe}});var xR,bR,Vie=N(()=>{"use strict";xR=function(){var t=o(function(Hr,et,mt,Kt){for(mt=mt||{},Kt=Hr.length;Kt--;mt[Hr[Kt]]=et);return mt},"o"),e=[1,4],r=[1,3],n=[1,5],i=[1,8,9,10,11,27,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124],a=[2,2],s=[1,13],l=[1,14],u=[1,15],h=[1,16],f=[1,23],d=[1,25],p=[1,26],m=[1,27],g=[1,49],y=[1,48],v=[1,29],x=[1,30],b=[1,31],w=[1,32],C=[1,33],T=[1,44],E=[1,46],A=[1,42],S=[1,47],_=[1,43],I=[1,50],D=[1,45],k=[1,51],L=[1,52],R=[1,34],O=[1,35],M=[1,36],B=[1,37],F=[1,57],P=[1,8,9,10,11,27,32,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124],z=[1,61],$=[1,60],H=[1,62],Q=[8,9,11,75,77,78],j=[1,78],ie=[1,91],ne=[1,96],le=[1,95],he=[1,92],K=[1,88],X=[1,94],te=[1,90],J=[1,97],se=[1,93],ue=[1,98],Z=[1,89],Se=[8,9,10,11,40,75,77,78],ce=[8,9,10,11,40,46,75,77,78],ae=[8,9,10,11,29,40,44,46,48,50,52,54,56,58,60,63,65,67,68,70,75,77,78,89,102,105,106,109,111,114,115,116],Oe=[8,9,11,44,60,75,77,78,89,102,105,106,109,111,114,115,116],ge=[44,60,89,102,105,106,109,111,114,115,116],ze=[1,121],He=[1,122],$e=[1,124],Re=[1,123],Ie=[44,60,62,74,89,102,105,106,109,111,114,115,116],be=[1,133],W=[1,147],de=[1,148],re=[1,149],oe=[1,150],V=[1,135],xe=[1,137],q=[1,141],pe=[1,142],ve=[1,143],Pe=[1,144],_e=[1,145],we=[1,146],Ve=[1,151],De=[1,152],qe=[1,131],at=[1,132],Rt=[1,139],st=[1,134],Ue=[1,138],ct=[1,136],We=[8,9,10,11,27,32,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124],ot=[1,154],Yt=[1,156],bt=[8,9,11],Mt=[8,9,10,11,14,44,60,89,105,106,109,111,114,115,116],xt=[1,176],ut=[1,172],Et=[1,173],ft=[1,177],yt=[1,174],nt=[1,175],dn=[77,116,119],Tt=[8,9,10,11,12,14,27,29,32,44,60,75,84,85,86,87,88,89,90,105,109,111,114,115,116],On=[10,106],tn=[31,49,51,53,55,57,62,64,66,67,69,71,116,117,118],_r=[1,247],Dr=[1,245],Pn=[1,249],At=[1,243],Ce=[1,244],tt=[1,246],St=[1,248],mr=[1,250],rn=[1,268],gn=[8,9,11,106],Zr=[8,9,10,11,60,84,105,106,109,110,111,112],Ni={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,graphConfig:4,document:5,line:6,statement:7,SEMI:8,NEWLINE:9,SPACE:10,EOF:11,GRAPH:12,NODIR:13,DIR:14,FirstStmtSeparator:15,ending:16,endToken:17,spaceList:18,spaceListNewline:19,vertexStatement:20,separator:21,styleStatement:22,linkStyleStatement:23,classDefStatement:24,classStatement:25,clickStatement:26,subgraph:27,textNoTags:28,SQS:29,text:30,SQE:31,end:32,direction:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,shapeData:39,SHAPE_DATA:40,link:41,node:42,styledVertex:43,AMP:44,vertex:45,STYLE_SEPARATOR:46,idString:47,DOUBLECIRCLESTART:48,DOUBLECIRCLEEND:49,PS:50,PE:51,"(-":52,"-)":53,STADIUMSTART:54,STADIUMEND:55,SUBROUTINESTART:56,SUBROUTINEEND:57,VERTEX_WITH_PROPS_START:58,"NODE_STRING[field]":59,COLON:60,"NODE_STRING[value]":61,PIPE:62,CYLINDERSTART:63,CYLINDEREND:64,DIAMOND_START:65,DIAMOND_STOP:66,TAGEND:67,TRAPSTART:68,TRAPEND:69,INVTRAPSTART:70,INVTRAPEND:71,linkStatement:72,arrowText:73,TESTSTR:74,START_LINK:75,edgeText:76,LINK:77,LINK_ID:78,edgeTextToken:79,STR:80,MD_STR:81,textToken:82,keywords:83,STYLE:84,LINKSTYLE:85,CLASSDEF:86,CLASS:87,CLICK:88,DOWN:89,UP:90,textNoTagsToken:91,stylesOpt:92,"idString[vertex]":93,"idString[class]":94,CALLBACKNAME:95,CALLBACKARGS:96,HREF:97,LINK_TARGET:98,"STR[link]":99,"STR[tooltip]":100,alphaNum:101,DEFAULT:102,numList:103,INTERPOLATE:104,NUM:105,COMMA:106,style:107,styleComponent:108,NODE_STRING:109,UNIT:110,BRKT:111,PCT:112,idStringToken:113,MINUS:114,MULT:115,UNICODE_TEXT:116,TEXT:117,TAGSTART:118,EDGE_TEXT:119,alphaNumToken:120,direction_tb:121,direction_bt:122,direction_rl:123,direction_lr:124,$accept:0,$end:1},terminals_:{2:"error",8:"SEMI",9:"NEWLINE",10:"SPACE",11:"EOF",12:"GRAPH",13:"NODIR",14:"DIR",27:"subgraph",29:"SQS",31:"SQE",32:"end",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",40:"SHAPE_DATA",44:"AMP",46:"STYLE_SEPARATOR",48:"DOUBLECIRCLESTART",49:"DOUBLECIRCLEEND",50:"PS",51:"PE",52:"(-",53:"-)",54:"STADIUMSTART",55:"STADIUMEND",56:"SUBROUTINESTART",57:"SUBROUTINEEND",58:"VERTEX_WITH_PROPS_START",59:"NODE_STRING[field]",60:"COLON",61:"NODE_STRING[value]",62:"PIPE",63:"CYLINDERSTART",64:"CYLINDEREND",65:"DIAMOND_START",66:"DIAMOND_STOP",67:"TAGEND",68:"TRAPSTART",69:"TRAPEND",70:"INVTRAPSTART",71:"INVTRAPEND",74:"TESTSTR",75:"START_LINK",77:"LINK",78:"LINK_ID",80:"STR",81:"MD_STR",84:"STYLE",85:"LINKSTYLE",86:"CLASSDEF",87:"CLASS",88:"CLICK",89:"DOWN",90:"UP",93:"idString[vertex]",94:"idString[class]",95:"CALLBACKNAME",96:"CALLBACKARGS",97:"HREF",98:"LINK_TARGET",99:"STR[link]",100:"STR[tooltip]",102:"DEFAULT",104:"INTERPOLATE",105:"NUM",106:"COMMA",109:"NODE_STRING",110:"UNIT",111:"BRKT",112:"PCT",114:"MINUS",115:"MULT",116:"UNICODE_TEXT",117:"TEXT",118:"TAGSTART",119:"EDGE_TEXT",121:"direction_tb",122:"direction_bt",123:"direction_rl",124:"direction_lr"},productions_:[0,[3,2],[5,0],[5,2],[6,1],[6,1],[6,1],[6,1],[6,1],[4,2],[4,2],[4,2],[4,3],[16,2],[16,1],[17,1],[17,1],[17,1],[15,1],[15,1],[15,2],[19,2],[19,2],[19,1],[19,1],[18,2],[18,1],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,9],[7,6],[7,4],[7,1],[7,2],[7,2],[7,1],[21,1],[21,1],[21,1],[39,2],[39,1],[20,4],[20,3],[20,4],[20,2],[20,2],[20,1],[42,1],[42,6],[42,5],[43,1],[43,3],[45,4],[45,4],[45,6],[45,4],[45,4],[45,4],[45,8],[45,4],[45,4],[45,4],[45,6],[45,4],[45,4],[45,4],[45,4],[45,4],[45,1],[41,2],[41,3],[41,3],[41,1],[41,3],[41,4],[76,1],[76,2],[76,1],[76,1],[72,1],[72,2],[73,3],[30,1],[30,2],[30,1],[30,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[28,1],[28,2],[28,1],[28,1],[24,5],[25,5],[26,2],[26,4],[26,3],[26,5],[26,3],[26,5],[26,5],[26,7],[26,2],[26,4],[26,2],[26,4],[26,4],[26,6],[22,5],[23,5],[23,5],[23,9],[23,9],[23,7],[23,7],[103,1],[103,3],[92,1],[92,3],[107,1],[107,2],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[82,1],[82,1],[82,1],[82,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[79,1],[79,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[47,1],[47,2],[101,1],[101,2],[33,1],[33,1],[33,1],[33,1]],performAction:o(function(et,mt,Kt,lt,Cn,ye,Vf){var Te=ye.length-1;switch(Cn){case 2:this.$=[];break;case 3:(!Array.isArray(ye[Te])||ye[Te].length>0)&&ye[Te-1].push(ye[Te]),this.$=ye[Te-1];break;case 4:case 183:this.$=ye[Te];break;case 11:lt.setDirection("TB"),this.$="TB";break;case 12:lt.setDirection(ye[Te-1]),this.$=ye[Te-1];break;case 27:this.$=ye[Te-1].nodes;break;case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 33:this.$=lt.addSubGraph(ye[Te-6],ye[Te-1],ye[Te-4]);break;case 34:this.$=lt.addSubGraph(ye[Te-3],ye[Te-1],ye[Te-3]);break;case 35:this.$=lt.addSubGraph(void 0,ye[Te-1],void 0);break;case 37:this.$=ye[Te].trim(),lt.setAccTitle(this.$);break;case 38:case 39:this.$=ye[Te].trim(),lt.setAccDescription(this.$);break;case 43:this.$=ye[Te-1]+ye[Te];break;case 44:this.$=ye[Te];break;case 45:lt.addVertex(ye[Te-1][ye[Te-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,ye[Te]),lt.addLink(ye[Te-3].stmt,ye[Te-1],ye[Te-2]),this.$={stmt:ye[Te-1],nodes:ye[Te-1].concat(ye[Te-3].nodes)};break;case 46:lt.addLink(ye[Te-2].stmt,ye[Te],ye[Te-1]),this.$={stmt:ye[Te],nodes:ye[Te].concat(ye[Te-2].nodes)};break;case 47:lt.addLink(ye[Te-3].stmt,ye[Te-1],ye[Te-2]),this.$={stmt:ye[Te-1],nodes:ye[Te-1].concat(ye[Te-3].nodes)};break;case 48:this.$={stmt:ye[Te-1],nodes:ye[Te-1]};break;case 49:lt.addVertex(ye[Te-1][ye[Te-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,ye[Te]),this.$={stmt:ye[Te-1],nodes:ye[Te-1],shapeData:ye[Te]};break;case 50:this.$={stmt:ye[Te],nodes:ye[Te]};break;case 51:this.$=[ye[Te]];break;case 52:lt.addVertex(ye[Te-5][ye[Te-5].length-1],void 0,void 0,void 0,void 0,void 0,void 0,ye[Te-4]),this.$=ye[Te-5].concat(ye[Te]);break;case 53:this.$=ye[Te-4].concat(ye[Te]);break;case 54:this.$=ye[Te];break;case 55:this.$=ye[Te-2],lt.setClass(ye[Te-2],ye[Te]);break;case 56:this.$=ye[Te-3],lt.addVertex(ye[Te-3],ye[Te-1],"square");break;case 57:this.$=ye[Te-3],lt.addVertex(ye[Te-3],ye[Te-1],"doublecircle");break;case 58:this.$=ye[Te-5],lt.addVertex(ye[Te-5],ye[Te-2],"circle");break;case 59:this.$=ye[Te-3],lt.addVertex(ye[Te-3],ye[Te-1],"ellipse");break;case 60:this.$=ye[Te-3],lt.addVertex(ye[Te-3],ye[Te-1],"stadium");break;case 61:this.$=ye[Te-3],lt.addVertex(ye[Te-3],ye[Te-1],"subroutine");break;case 62:this.$=ye[Te-7],lt.addVertex(ye[Te-7],ye[Te-1],"rect",void 0,void 0,void 0,Object.fromEntries([[ye[Te-5],ye[Te-3]]]));break;case 63:this.$=ye[Te-3],lt.addVertex(ye[Te-3],ye[Te-1],"cylinder");break;case 64:this.$=ye[Te-3],lt.addVertex(ye[Te-3],ye[Te-1],"round");break;case 65:this.$=ye[Te-3],lt.addVertex(ye[Te-3],ye[Te-1],"diamond");break;case 66:this.$=ye[Te-5],lt.addVertex(ye[Te-5],ye[Te-2],"hexagon");break;case 67:this.$=ye[Te-3],lt.addVertex(ye[Te-3],ye[Te-1],"odd");break;case 68:this.$=ye[Te-3],lt.addVertex(ye[Te-3],ye[Te-1],"trapezoid");break;case 69:this.$=ye[Te-3],lt.addVertex(ye[Te-3],ye[Te-1],"inv_trapezoid");break;case 70:this.$=ye[Te-3],lt.addVertex(ye[Te-3],ye[Te-1],"lean_right");break;case 71:this.$=ye[Te-3],lt.addVertex(ye[Te-3],ye[Te-1],"lean_left");break;case 72:this.$=ye[Te],lt.addVertex(ye[Te]);break;case 73:ye[Te-1].text=ye[Te],this.$=ye[Te-1];break;case 74:case 75:ye[Te-2].text=ye[Te-1],this.$=ye[Te-2];break;case 76:this.$=ye[Te];break;case 77:var wi=lt.destructLink(ye[Te],ye[Te-2]);this.$={type:wi.type,stroke:wi.stroke,length:wi.length,text:ye[Te-1]};break;case 78:var wi=lt.destructLink(ye[Te],ye[Te-2]);this.$={type:wi.type,stroke:wi.stroke,length:wi.length,text:ye[Te-1],id:ye[Te-3]};break;case 79:this.$={text:ye[Te],type:"text"};break;case 80:this.$={text:ye[Te-1].text+""+ye[Te],type:ye[Te-1].type};break;case 81:this.$={text:ye[Te],type:"string"};break;case 82:this.$={text:ye[Te],type:"markdown"};break;case 83:var wi=lt.destructLink(ye[Te]);this.$={type:wi.type,stroke:wi.stroke,length:wi.length};break;case 84:var wi=lt.destructLink(ye[Te]);this.$={type:wi.type,stroke:wi.stroke,length:wi.length,id:ye[Te-1]};break;case 85:this.$=ye[Te-1];break;case 86:this.$={text:ye[Te],type:"text"};break;case 87:this.$={text:ye[Te-1].text+""+ye[Te],type:ye[Te-1].type};break;case 88:this.$={text:ye[Te],type:"string"};break;case 89:case 104:this.$={text:ye[Te],type:"markdown"};break;case 101:this.$={text:ye[Te],type:"text"};break;case 102:this.$={text:ye[Te-1].text+""+ye[Te],type:ye[Te-1].type};break;case 103:this.$={text:ye[Te],type:"text"};break;case 105:this.$=ye[Te-4],lt.addClass(ye[Te-2],ye[Te]);break;case 106:this.$=ye[Te-4],lt.setClass(ye[Te-2],ye[Te]);break;case 107:case 115:this.$=ye[Te-1],lt.setClickEvent(ye[Te-1],ye[Te]);break;case 108:case 116:this.$=ye[Te-3],lt.setClickEvent(ye[Te-3],ye[Te-2]),lt.setTooltip(ye[Te-3],ye[Te]);break;case 109:this.$=ye[Te-2],lt.setClickEvent(ye[Te-2],ye[Te-1],ye[Te]);break;case 110:this.$=ye[Te-4],lt.setClickEvent(ye[Te-4],ye[Te-3],ye[Te-2]),lt.setTooltip(ye[Te-4],ye[Te]);break;case 111:this.$=ye[Te-2],lt.setLink(ye[Te-2],ye[Te]);break;case 112:this.$=ye[Te-4],lt.setLink(ye[Te-4],ye[Te-2]),lt.setTooltip(ye[Te-4],ye[Te]);break;case 113:this.$=ye[Te-4],lt.setLink(ye[Te-4],ye[Te-2],ye[Te]);break;case 114:this.$=ye[Te-6],lt.setLink(ye[Te-6],ye[Te-4],ye[Te]),lt.setTooltip(ye[Te-6],ye[Te-2]);break;case 117:this.$=ye[Te-1],lt.setLink(ye[Te-1],ye[Te]);break;case 118:this.$=ye[Te-3],lt.setLink(ye[Te-3],ye[Te-2]),lt.setTooltip(ye[Te-3],ye[Te]);break;case 119:this.$=ye[Te-3],lt.setLink(ye[Te-3],ye[Te-2],ye[Te]);break;case 120:this.$=ye[Te-5],lt.setLink(ye[Te-5],ye[Te-4],ye[Te]),lt.setTooltip(ye[Te-5],ye[Te-2]);break;case 121:this.$=ye[Te-4],lt.addVertex(ye[Te-2],void 0,void 0,ye[Te]);break;case 122:this.$=ye[Te-4],lt.updateLink([ye[Te-2]],ye[Te]);break;case 123:this.$=ye[Te-4],lt.updateLink(ye[Te-2],ye[Te]);break;case 124:this.$=ye[Te-8],lt.updateLinkInterpolate([ye[Te-6]],ye[Te-2]),lt.updateLink([ye[Te-6]],ye[Te]);break;case 125:this.$=ye[Te-8],lt.updateLinkInterpolate(ye[Te-6],ye[Te-2]),lt.updateLink(ye[Te-6],ye[Te]);break;case 126:this.$=ye[Te-6],lt.updateLinkInterpolate([ye[Te-4]],ye[Te]);break;case 127:this.$=ye[Te-6],lt.updateLinkInterpolate(ye[Te-4],ye[Te]);break;case 128:case 130:this.$=[ye[Te]];break;case 129:case 131:ye[Te-2].push(ye[Te]),this.$=ye[Te-2];break;case 133:this.$=ye[Te-1]+ye[Te];break;case 181:this.$=ye[Te];break;case 182:this.$=ye[Te-1]+""+ye[Te];break;case 184:this.$=ye[Te-1]+""+ye[Te];break;case 185:this.$={stmt:"dir",value:"TB"};break;case 186:this.$={stmt:"dir",value:"BT"};break;case 187:this.$={stmt:"dir",value:"RL"};break;case 188:this.$={stmt:"dir",value:"LR"};break}},"anonymous"),table:[{3:1,4:2,9:e,10:r,12:n},{1:[3]},t(i,a,{5:6}),{4:7,9:e,10:r,12:n},{4:8,9:e,10:r,12:n},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:s,9:l,10:u,11:h,20:17,22:18,23:19,24:20,25:21,26:22,27:f,33:24,34:d,36:p,38:m,42:28,43:38,44:g,45:39,47:40,60:y,84:v,85:x,86:b,87:w,88:C,89:T,102:E,105:A,106:S,109:_,111:I,113:41,114:D,115:k,116:L,121:R,122:O,123:M,124:B},t(i,[2,9]),t(i,[2,10]),t(i,[2,11]),{8:[1,54],9:[1,55],10:F,15:53,18:56},t(P,[2,3]),t(P,[2,4]),t(P,[2,5]),t(P,[2,6]),t(P,[2,7]),t(P,[2,8]),{8:z,9:$,11:H,21:58,41:59,72:63,75:[1,64],77:[1,66],78:[1,65]},{8:z,9:$,11:H,21:67},{8:z,9:$,11:H,21:68},{8:z,9:$,11:H,21:69},{8:z,9:$,11:H,21:70},{8:z,9:$,11:H,21:71},{8:z,9:$,10:[1,72],11:H,21:73},t(P,[2,36]),{35:[1,74]},{37:[1,75]},t(P,[2,39]),t(Q,[2,50],{18:76,39:77,10:F,40:j}),{10:[1,79]},{10:[1,80]},{10:[1,81]},{10:[1,82]},{14:ie,44:ne,60:le,80:[1,86],89:he,95:[1,83],97:[1,84],101:85,105:K,106:X,109:te,111:J,114:se,115:ue,116:Z,120:87},t(P,[2,185]),t(P,[2,186]),t(P,[2,187]),t(P,[2,188]),t(Se,[2,51]),t(Se,[2,54],{46:[1,99]}),t(ce,[2,72],{113:112,29:[1,100],44:g,48:[1,101],50:[1,102],52:[1,103],54:[1,104],56:[1,105],58:[1,106],60:y,63:[1,107],65:[1,108],67:[1,109],68:[1,110],70:[1,111],89:T,102:E,105:A,106:S,109:_,111:I,114:D,115:k,116:L}),t(ae,[2,181]),t(ae,[2,142]),t(ae,[2,143]),t(ae,[2,144]),t(ae,[2,145]),t(ae,[2,146]),t(ae,[2,147]),t(ae,[2,148]),t(ae,[2,149]),t(ae,[2,150]),t(ae,[2,151]),t(ae,[2,152]),t(i,[2,12]),t(i,[2,18]),t(i,[2,19]),{9:[1,113]},t(Oe,[2,26],{18:114,10:F}),t(P,[2,27]),{42:115,43:38,44:g,45:39,47:40,60:y,89:T,102:E,105:A,106:S,109:_,111:I,113:41,114:D,115:k,116:L},t(P,[2,40]),t(P,[2,41]),t(P,[2,42]),t(ge,[2,76],{73:116,62:[1,118],74:[1,117]}),{76:119,79:120,80:ze,81:He,116:$e,119:Re},{75:[1,125],77:[1,126]},t(Ie,[2,83]),t(P,[2,28]),t(P,[2,29]),t(P,[2,30]),t(P,[2,31]),t(P,[2,32]),{10:be,12:W,14:de,27:re,28:127,32:oe,44:V,60:xe,75:q,80:[1,129],81:[1,130],83:140,84:pe,85:ve,86:Pe,87:_e,88:we,89:Ve,90:De,91:128,105:qe,109:at,111:Rt,114:st,115:Ue,116:ct},t(We,a,{5:153}),t(P,[2,37]),t(P,[2,38]),t(Q,[2,48],{44:ot}),t(Q,[2,49],{18:155,10:F,40:Yt}),t(Se,[2,44]),{44:g,47:157,60:y,89:T,102:E,105:A,106:S,109:_,111:I,113:41,114:D,115:k,116:L},{102:[1,158],103:159,105:[1,160]},{44:g,47:161,60:y,89:T,102:E,105:A,106:S,109:_,111:I,113:41,114:D,115:k,116:L},{44:g,47:162,60:y,89:T,102:E,105:A,106:S,109:_,111:I,113:41,114:D,115:k,116:L},t(bt,[2,107],{10:[1,163],96:[1,164]}),{80:[1,165]},t(bt,[2,115],{120:167,10:[1,166],14:ie,44:ne,60:le,89:he,105:K,106:X,109:te,111:J,114:se,115:ue,116:Z}),t(bt,[2,117],{10:[1,168]}),t(Mt,[2,183]),t(Mt,[2,170]),t(Mt,[2,171]),t(Mt,[2,172]),t(Mt,[2,173]),t(Mt,[2,174]),t(Mt,[2,175]),t(Mt,[2,176]),t(Mt,[2,177]),t(Mt,[2,178]),t(Mt,[2,179]),t(Mt,[2,180]),{44:g,47:169,60:y,89:T,102:E,105:A,106:S,109:_,111:I,113:41,114:D,115:k,116:L},{30:170,67:xt,80:ut,81:Et,82:171,116:ft,117:yt,118:nt},{30:178,67:xt,80:ut,81:Et,82:171,116:ft,117:yt,118:nt},{30:180,50:[1,179],67:xt,80:ut,81:Et,82:171,116:ft,117:yt,118:nt},{30:181,67:xt,80:ut,81:Et,82:171,116:ft,117:yt,118:nt},{30:182,67:xt,80:ut,81:Et,82:171,116:ft,117:yt,118:nt},{30:183,67:xt,80:ut,81:Et,82:171,116:ft,117:yt,118:nt},{109:[1,184]},{30:185,67:xt,80:ut,81:Et,82:171,116:ft,117:yt,118:nt},{30:186,65:[1,187],67:xt,80:ut,81:Et,82:171,116:ft,117:yt,118:nt},{30:188,67:xt,80:ut,81:Et,82:171,116:ft,117:yt,118:nt},{30:189,67:xt,80:ut,81:Et,82:171,116:ft,117:yt,118:nt},{30:190,67:xt,80:ut,81:Et,82:171,116:ft,117:yt,118:nt},t(ae,[2,182]),t(i,[2,20]),t(Oe,[2,25]),t(Q,[2,46],{39:191,18:192,10:F,40:j}),t(ge,[2,73],{10:[1,193]}),{10:[1,194]},{30:195,67:xt,80:ut,81:Et,82:171,116:ft,117:yt,118:nt},{77:[1,196],79:197,116:$e,119:Re},t(dn,[2,79]),t(dn,[2,81]),t(dn,[2,82]),t(dn,[2,168]),t(dn,[2,169]),{76:198,79:120,80:ze,81:He,116:$e,119:Re},t(Ie,[2,84]),{8:z,9:$,10:be,11:H,12:W,14:de,21:200,27:re,29:[1,199],32:oe,44:V,60:xe,75:q,83:140,84:pe,85:ve,86:Pe,87:_e,88:we,89:Ve,90:De,91:201,105:qe,109:at,111:Rt,114:st,115:Ue,116:ct},t(Tt,[2,101]),t(Tt,[2,103]),t(Tt,[2,104]),t(Tt,[2,157]),t(Tt,[2,158]),t(Tt,[2,159]),t(Tt,[2,160]),t(Tt,[2,161]),t(Tt,[2,162]),t(Tt,[2,163]),t(Tt,[2,164]),t(Tt,[2,165]),t(Tt,[2,166]),t(Tt,[2,167]),t(Tt,[2,90]),t(Tt,[2,91]),t(Tt,[2,92]),t(Tt,[2,93]),t(Tt,[2,94]),t(Tt,[2,95]),t(Tt,[2,96]),t(Tt,[2,97]),t(Tt,[2,98]),t(Tt,[2,99]),t(Tt,[2,100]),{6:11,7:12,8:s,9:l,10:u,11:h,20:17,22:18,23:19,24:20,25:21,26:22,27:f,32:[1,202],33:24,34:d,36:p,38:m,42:28,43:38,44:g,45:39,47:40,60:y,84:v,85:x,86:b,87:w,88:C,89:T,102:E,105:A,106:S,109:_,111:I,113:41,114:D,115:k,116:L,121:R,122:O,123:M,124:B},{10:F,18:203},{44:[1,204]},t(Se,[2,43]),{10:[1,205],44:g,60:y,89:T,102:E,105:A,106:S,109:_,111:I,113:112,114:D,115:k,116:L},{10:[1,206]},{10:[1,207],106:[1,208]},t(On,[2,128]),{10:[1,209],44:g,60:y,89:T,102:E,105:A,106:S,109:_,111:I,113:112,114:D,115:k,116:L},{10:[1,210],44:g,60:y,89:T,102:E,105:A,106:S,109:_,111:I,113:112,114:D,115:k,116:L},{80:[1,211]},t(bt,[2,109],{10:[1,212]}),t(bt,[2,111],{10:[1,213]}),{80:[1,214]},t(Mt,[2,184]),{80:[1,215],98:[1,216]},t(Se,[2,55],{113:112,44:g,60:y,89:T,102:E,105:A,106:S,109:_,111:I,114:D,115:k,116:L}),{31:[1,217],67:xt,82:218,116:ft,117:yt,118:nt},t(tn,[2,86]),t(tn,[2,88]),t(tn,[2,89]),t(tn,[2,153]),t(tn,[2,154]),t(tn,[2,155]),t(tn,[2,156]),{49:[1,219],67:xt,82:218,116:ft,117:yt,118:nt},{30:220,67:xt,80:ut,81:Et,82:171,116:ft,117:yt,118:nt},{51:[1,221],67:xt,82:218,116:ft,117:yt,118:nt},{53:[1,222],67:xt,82:218,116:ft,117:yt,118:nt},{55:[1,223],67:xt,82:218,116:ft,117:yt,118:nt},{57:[1,224],67:xt,82:218,116:ft,117:yt,118:nt},{60:[1,225]},{64:[1,226],67:xt,82:218,116:ft,117:yt,118:nt},{66:[1,227],67:xt,82:218,116:ft,117:yt,118:nt},{30:228,67:xt,80:ut,81:Et,82:171,116:ft,117:yt,118:nt},{31:[1,229],67:xt,82:218,116:ft,117:yt,118:nt},{67:xt,69:[1,230],71:[1,231],82:218,116:ft,117:yt,118:nt},{67:xt,69:[1,233],71:[1,232],82:218,116:ft,117:yt,118:nt},t(Q,[2,45],{18:155,10:F,40:Yt}),t(Q,[2,47],{44:ot}),t(ge,[2,75]),t(ge,[2,74]),{62:[1,234],67:xt,82:218,116:ft,117:yt,118:nt},t(ge,[2,77]),t(dn,[2,80]),{77:[1,235],79:197,116:$e,119:Re},{30:236,67:xt,80:ut,81:Et,82:171,116:ft,117:yt,118:nt},t(We,a,{5:237}),t(Tt,[2,102]),t(P,[2,35]),{43:238,44:g,45:39,47:40,60:y,89:T,102:E,105:A,106:S,109:_,111:I,113:41,114:D,115:k,116:L},{10:F,18:239},{10:_r,60:Dr,84:Pn,92:240,105:At,107:241,108:242,109:Ce,110:tt,111:St,112:mr},{10:_r,60:Dr,84:Pn,92:251,104:[1,252],105:At,107:241,108:242,109:Ce,110:tt,111:St,112:mr},{10:_r,60:Dr,84:Pn,92:253,104:[1,254],105:At,107:241,108:242,109:Ce,110:tt,111:St,112:mr},{105:[1,255]},{10:_r,60:Dr,84:Pn,92:256,105:At,107:241,108:242,109:Ce,110:tt,111:St,112:mr},{44:g,47:257,60:y,89:T,102:E,105:A,106:S,109:_,111:I,113:41,114:D,115:k,116:L},t(bt,[2,108]),{80:[1,258]},{80:[1,259],98:[1,260]},t(bt,[2,116]),t(bt,[2,118],{10:[1,261]}),t(bt,[2,119]),t(ce,[2,56]),t(tn,[2,87]),t(ce,[2,57]),{51:[1,262],67:xt,82:218,116:ft,117:yt,118:nt},t(ce,[2,64]),t(ce,[2,59]),t(ce,[2,60]),t(ce,[2,61]),{109:[1,263]},t(ce,[2,63]),t(ce,[2,65]),{66:[1,264],67:xt,82:218,116:ft,117:yt,118:nt},t(ce,[2,67]),t(ce,[2,68]),t(ce,[2,70]),t(ce,[2,69]),t(ce,[2,71]),t([10,44,60,89,102,105,106,109,111,114,115,116],[2,85]),t(ge,[2,78]),{31:[1,265],67:xt,82:218,116:ft,117:yt,118:nt},{6:11,7:12,8:s,9:l,10:u,11:h,20:17,22:18,23:19,24:20,25:21,26:22,27:f,32:[1,266],33:24,34:d,36:p,38:m,42:28,43:38,44:g,45:39,47:40,60:y,84:v,85:x,86:b,87:w,88:C,89:T,102:E,105:A,106:S,109:_,111:I,113:41,114:D,115:k,116:L,121:R,122:O,123:M,124:B},t(Se,[2,53]),{43:267,44:g,45:39,47:40,60:y,89:T,102:E,105:A,106:S,109:_,111:I,113:41,114:D,115:k,116:L},t(bt,[2,121],{106:rn}),t(gn,[2,130],{108:269,10:_r,60:Dr,84:Pn,105:At,109:Ce,110:tt,111:St,112:mr}),t(Zr,[2,132]),t(Zr,[2,134]),t(Zr,[2,135]),t(Zr,[2,136]),t(Zr,[2,137]),t(Zr,[2,138]),t(Zr,[2,139]),t(Zr,[2,140]),t(Zr,[2,141]),t(bt,[2,122],{106:rn}),{10:[1,270]},t(bt,[2,123],{106:rn}),{10:[1,271]},t(On,[2,129]),t(bt,[2,105],{106:rn}),t(bt,[2,106],{113:112,44:g,60:y,89:T,102:E,105:A,106:S,109:_,111:I,114:D,115:k,116:L}),t(bt,[2,110]),t(bt,[2,112],{10:[1,272]}),t(bt,[2,113]),{98:[1,273]},{51:[1,274]},{62:[1,275]},{66:[1,276]},{8:z,9:$,11:H,21:277},t(P,[2,34]),t(Se,[2,52]),{10:_r,60:Dr,84:Pn,105:At,107:278,108:242,109:Ce,110:tt,111:St,112:mr},t(Zr,[2,133]),{14:ie,44:ne,60:le,89:he,101:279,105:K,106:X,109:te,111:J,114:se,115:ue,116:Z,120:87},{14:ie,44:ne,60:le,89:he,101:280,105:K,106:X,109:te,111:J,114:se,115:ue,116:Z,120:87},{98:[1,281]},t(bt,[2,120]),t(ce,[2,58]),{30:282,67:xt,80:ut,81:Et,82:171,116:ft,117:yt,118:nt},t(ce,[2,66]),t(We,a,{5:283}),t(gn,[2,131],{108:269,10:_r,60:Dr,84:Pn,105:At,109:Ce,110:tt,111:St,112:mr}),t(bt,[2,126],{120:167,10:[1,284],14:ie,44:ne,60:le,89:he,105:K,106:X,109:te,111:J,114:se,115:ue,116:Z}),t(bt,[2,127],{120:167,10:[1,285],14:ie,44:ne,60:le,89:he,105:K,106:X,109:te,111:J,114:se,115:ue,116:Z}),t(bt,[2,114]),{31:[1,286],67:xt,82:218,116:ft,117:yt,118:nt},{6:11,7:12,8:s,9:l,10:u,11:h,20:17,22:18,23:19,24:20,25:21,26:22,27:f,32:[1,287],33:24,34:d,36:p,38:m,42:28,43:38,44:g,45:39,47:40,60:y,84:v,85:x,86:b,87:w,88:C,89:T,102:E,105:A,106:S,109:_,111:I,113:41,114:D,115:k,116:L,121:R,122:O,123:M,124:B},{10:_r,60:Dr,84:Pn,92:288,105:At,107:241,108:242,109:Ce,110:tt,111:St,112:mr},{10:_r,60:Dr,84:Pn,92:289,105:At,107:241,108:242,109:Ce,110:tt,111:St,112:mr},t(ce,[2,62]),t(P,[2,33]),t(bt,[2,124],{106:rn}),t(bt,[2,125],{106:rn})],defaultActions:{},parseError:o(function(et,mt){if(mt.recoverable)this.trace(et);else{var Kt=new Error(et);throw Kt.hash=mt,Kt}},"parseError"),parse:o(function(et){var mt=this,Kt=[0],lt=[],Cn=[null],ye=[],Vf=this.table,Te="",wi=0,TF=0,kF=0,M2e=2,EF=1,I2e=ye.slice.call(arguments,1),Xi=Object.create(this.lexer),Uf={yy:{}};for(var xC in this.yy)Object.prototype.hasOwnProperty.call(this.yy,xC)&&(Uf.yy[xC]=this.yy[xC]);Xi.setInput(et,Uf.yy),Uf.yy.lexer=Xi,Uf.yy.parser=this,typeof Xi.yylloc>"u"&&(Xi.yylloc={});var bC=Xi.yylloc;ye.push(bC);var O2e=Xi.options&&Xi.options.ranges;typeof Uf.yy.parseError=="function"?this.parseError=Uf.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function wnt(Ws){Kt.length=Kt.length-2*Ws,Cn.length=Cn.length-Ws,ye.length=ye.length-Ws}o(wnt,"popStack");function P2e(){var Ws;return Ws=lt.pop()||Xi.lex()||EF,typeof Ws!="number"&&(Ws instanceof Array&&(lt=Ws,Ws=lt.pop()),Ws=mt.symbols_[Ws]||Ws),Ws}o(P2e,"lex");for(var Wa,wC,Hf,xo,Tnt,TC,Jp={},_4,Jc,SF,D4;;){if(Hf=Kt[Kt.length-1],this.defaultActions[Hf]?xo=this.defaultActions[Hf]:((Wa===null||typeof Wa>"u")&&(Wa=P2e()),xo=Vf[Hf]&&Vf[Hf][Wa]),typeof xo>"u"||!xo.length||!xo[0]){var kC="";D4=[];for(_4 in Vf[Hf])this.terminals_[_4]&&_4>M2e&&D4.push("'"+this.terminals_[_4]+"'");Xi.showPosition?kC="Parse error on line "+(wi+1)+`: +`+Xi.showPosition()+` +Expecting `+D4.join(", ")+", got '"+(this.terminals_[Wa]||Wa)+"'":kC="Parse error on line "+(wi+1)+": Unexpected "+(Wa==EF?"end of input":"'"+(this.terminals_[Wa]||Wa)+"'"),this.parseError(kC,{text:Xi.match,token:this.terminals_[Wa]||Wa,line:Xi.yylineno,loc:bC,expected:D4})}if(xo[0]instanceof Array&&xo.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Hf+", token: "+Wa);switch(xo[0]){case 1:Kt.push(Wa),Cn.push(Xi.yytext),ye.push(Xi.yylloc),Kt.push(xo[1]),Wa=null,wC?(Wa=wC,wC=null):(TF=Xi.yyleng,Te=Xi.yytext,wi=Xi.yylineno,bC=Xi.yylloc,kF>0&&kF--);break;case 2:if(Jc=this.productions_[xo[1]][1],Jp.$=Cn[Cn.length-Jc],Jp._$={first_line:ye[ye.length-(Jc||1)].first_line,last_line:ye[ye.length-1].last_line,first_column:ye[ye.length-(Jc||1)].first_column,last_column:ye[ye.length-1].last_column},O2e&&(Jp._$.range=[ye[ye.length-(Jc||1)].range[0],ye[ye.length-1].range[1]]),TC=this.performAction.apply(Jp,[Te,TF,wi,Uf.yy,xo[1],Cn,ye].concat(I2e)),typeof TC<"u")return TC;Jc&&(Kt=Kt.slice(0,-1*Jc*2),Cn=Cn.slice(0,-1*Jc),ye=ye.slice(0,-1*Jc)),Kt.push(this.productions_[xo[1]][0]),Cn.push(Jp.$),ye.push(Jp._$),SF=Vf[Kt[Kt.length-2]][Kt[Kt.length-1]],Kt.push(SF);break;case 3:return!0}}return!0},"parse")},Zn=function(){var Hr={EOF:1,parseError:o(function(mt,Kt){if(this.yy.parser)this.yy.parser.parseError(mt,Kt);else throw new Error(mt)},"parseError"),setInput:o(function(et,mt){return this.yy=mt||this.yy||{},this._input=et,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var et=this._input[0];this.yytext+=et,this.yyleng++,this.offset++,this.match+=et,this.matched+=et;var mt=et.match(/(?:\r\n?|\n).*/g);return mt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),et},"input"),unput:o(function(et){var mt=et.length,Kt=et.split(/(?:\r\n?|\n)/g);this._input=et+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-mt),this.offset-=mt;var lt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Kt.length-1&&(this.yylineno-=Kt.length-1);var Cn=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Kt?(Kt.length===lt.length?this.yylloc.first_column:0)+lt[lt.length-Kt.length].length-Kt[0].length:this.yylloc.first_column-mt},this.options.ranges&&(this.yylloc.range=[Cn[0],Cn[0]+this.yyleng-mt]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(et){this.unput(this.match.slice(et))},"less"),pastInput:o(function(){var et=this.matched.substr(0,this.matched.length-this.match.length);return(et.length>20?"...":"")+et.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var et=this.match;return et.length<20&&(et+=this._input.substr(0,20-et.length)),(et.substr(0,20)+(et.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var et=this.pastInput(),mt=new Array(et.length+1).join("-");return et+this.upcomingInput()+` +`+mt+"^"},"showPosition"),test_match:o(function(et,mt){var Kt,lt,Cn;if(this.options.backtrack_lexer&&(Cn={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Cn.yylloc.range=this.yylloc.range.slice(0))),lt=et[0].match(/(?:\r\n?|\n).*/g),lt&&(this.yylineno+=lt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:lt?lt[lt.length-1].length-lt[lt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+et[0].length},this.yytext+=et[0],this.match+=et[0],this.matches=et,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(et[0].length),this.matched+=et[0],Kt=this.performAction.call(this,this.yy,this,mt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Kt)return Kt;if(this._backtrack){for(var ye in Cn)this[ye]=Cn[ye];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var et,mt,Kt,lt;this._more||(this.yytext="",this.match="");for(var Cn=this._currentRules(),ye=0;yemt[0].length)){if(mt=Kt,lt=ye,this.options.backtrack_lexer){if(et=this.test_match(Kt,Cn[ye]),et!==!1)return et;if(this._backtrack){mt=!1;continue}else return!1}else if(!this.options.flex)break}return mt?(et=this.test_match(mt,Cn[lt]),et!==!1?et:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var mt=this.next();return mt||this.lex()},"lex"),begin:o(function(mt){this.conditionStack.push(mt)},"begin"),popState:o(function(){var mt=this.conditionStack.length-1;return mt>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(mt){return mt=this.conditionStack.length-1-Math.abs(mt||0),mt>=0?this.conditionStack[mt]:"INITIAL"},"topState"),pushState:o(function(mt){this.begin(mt)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(mt,Kt,lt,Cn){var ye=Cn;switch(lt){case 0:return this.begin("acc_title"),34;break;case 1:return this.popState(),"acc_title_value";break;case 2:return this.begin("acc_descr"),36;break;case 3:return this.popState(),"acc_descr_value";break;case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return this.pushState("shapeData"),Kt.yytext="",40;break;case 8:return this.pushState("shapeDataStr"),40;break;case 9:return this.popState(),40;break;case 10:let Vf=/\n\s*/g;return Kt.yytext=Kt.yytext.replace(Vf,"
    "),40;break;case 11:return 40;case 12:this.popState();break;case 13:this.begin("callbackname");break;case 14:this.popState();break;case 15:this.popState(),this.begin("callbackargs");break;case 16:return 95;case 17:this.popState();break;case 18:return 96;case 19:return"MD_STR";case 20:this.popState();break;case 21:this.begin("md_string");break;case 22:return"STR";case 23:this.popState();break;case 24:this.pushState("string");break;case 25:return 84;case 26:return 102;case 27:return 85;case 28:return 104;case 29:return 86;case 30:return 87;case 31:return 97;case 32:this.begin("click");break;case 33:this.popState();break;case 34:return 88;case 35:return mt.lex.firstGraph()&&this.begin("dir"),12;break;case 36:return mt.lex.firstGraph()&&this.begin("dir"),12;break;case 37:return mt.lex.firstGraph()&&this.begin("dir"),12;break;case 38:return 27;case 39:return 32;case 40:return 98;case 41:return 98;case 42:return 98;case 43:return 98;case 44:return this.popState(),13;break;case 45:return this.popState(),14;break;case 46:return this.popState(),14;break;case 47:return this.popState(),14;break;case 48:return this.popState(),14;break;case 49:return this.popState(),14;break;case 50:return this.popState(),14;break;case 51:return this.popState(),14;break;case 52:return this.popState(),14;break;case 53:return this.popState(),14;break;case 54:return this.popState(),14;break;case 55:return 121;case 56:return 122;case 57:return 123;case 58:return 124;case 59:return 78;case 60:return 105;case 61:return 111;case 62:return 46;case 63:return 60;case 64:return 44;case 65:return 8;case 66:return 106;case 67:return 115;case 68:return this.popState(),77;break;case 69:return this.pushState("edgeText"),75;break;case 70:return 119;case 71:return this.popState(),77;break;case 72:return this.pushState("thickEdgeText"),75;break;case 73:return 119;case 74:return this.popState(),77;break;case 75:return this.pushState("dottedEdgeText"),75;break;case 76:return 119;case 77:return 77;case 78:return this.popState(),53;break;case 79:return"TEXT";case 80:return this.pushState("ellipseText"),52;break;case 81:return this.popState(),55;break;case 82:return this.pushState("text"),54;break;case 83:return this.popState(),57;break;case 84:return this.pushState("text"),56;break;case 85:return 58;case 86:return this.pushState("text"),67;break;case 87:return this.popState(),64;break;case 88:return this.pushState("text"),63;break;case 89:return this.popState(),49;break;case 90:return this.pushState("text"),48;break;case 91:return this.popState(),69;break;case 92:return this.popState(),71;break;case 93:return 117;case 94:return this.pushState("trapText"),68;break;case 95:return this.pushState("trapText"),70;break;case 96:return 118;case 97:return 67;case 98:return 90;case 99:return"SEP";case 100:return 89;case 101:return 115;case 102:return 111;case 103:return 44;case 104:return 109;case 105:return 114;case 106:return 116;case 107:return this.popState(),62;break;case 108:return this.pushState("text"),62;break;case 109:return this.popState(),51;break;case 110:return this.pushState("text"),50;break;case 111:return this.popState(),31;break;case 112:return this.pushState("text"),29;break;case 113:return this.popState(),66;break;case 114:return this.pushState("text"),65;break;case 115:return"TEXT";case 116:return"QUOTE";case 117:return 9;case 118:return 10;case 119:return 11}},"anonymous"),rules:[/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:@\{)/,/^(?:["])/,/^(?:["])/,/^(?:[^\"]+)/,/^(?:[^}^"]+)/,/^(?:\})/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["][`])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:["])/,/^(?:style\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:href[\s])/,/^(?:click[\s]+)/,/^(?:[\s\n])/,/^(?:[^\s\n]*)/,/^(?:flowchart-elk\b)/,/^(?:graph\b)/,/^(?:flowchart\b)/,/^(?:subgraph\b)/,/^(?:end\b\s*)/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:(\r?\n)*\s*\n)/,/^(?:\s*LR\b)/,/^(?:\s*RL\b)/,/^(?:\s*TB\b)/,/^(?:\s*BT\b)/,/^(?:\s*TD\b)/,/^(?:\s*BR\b)/,/^(?:\s*<)/,/^(?:\s*>)/,/^(?:\s*\^)/,/^(?:\s*v\b)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:[^\s\"]+@(?=[^\{\"]))/,/^(?:[0-9]+)/,/^(?:#)/,/^(?::::)/,/^(?::)/,/^(?:&)/,/^(?:;)/,/^(?:,)/,/^(?:\*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:[^-]|-(?!-)+)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:[^=]|=(?!))/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:[^\.]|\.(?!))/,/^(?:\s*~~[\~]+\s*)/,/^(?:[-/\)][\)])/,/^(?:[^\(\)\[\]\{\}]|!\)+)/,/^(?:\(-)/,/^(?:\]\))/,/^(?:\(\[)/,/^(?:\]\])/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:>)/,/^(?:\)\])/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\(\(\()/,/^(?:[\\(?=\])][\]])/,/^(?:\/(?=\])\])/,/^(?:\/(?!\])|\\(?!\])|[^\\\[\]\(\)\{\}\/]+)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:\\\|)/,/^(?:v\b)/,/^(?:\*)/,/^(?:#)/,/^(?:&)/,/^(?:([A-Za-z0-9!"\#$%&'*+\.`?\\_\/]|-(?=[^\>\-\.])|(?!))+)/,/^(?:-)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\|)/,/^(?:\|)/,/^(?:\))/,/^(?:\()/,/^(?:\])/,/^(?:\[)/,/^(?:(\}))/,/^(?:\{)/,/^(?:[^\[\]\(\)\{\}\|\"]+)/,/^(?:")/,/^(?:(\r?\n)+)/,/^(?:\s)/,/^(?:$)/],conditions:{shapeDataEndBracket:{rules:[21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},shapeDataStr:{rules:[9,10,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},shapeData:{rules:[8,11,12,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},callbackargs:{rules:[17,18,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},callbackname:{rules:[14,15,16,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},href:{rules:[21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},click:{rules:[21,24,33,34,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},dottedEdgeText:{rules:[21,24,74,76,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},thickEdgeText:{rules:[21,24,71,73,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},edgeText:{rules:[21,24,68,70,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},trapText:{rules:[21,24,77,80,82,84,88,90,91,92,93,94,95,108,110,112,114],inclusive:!1},ellipseText:{rules:[21,24,77,78,79,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},text:{rules:[21,24,77,80,81,82,83,84,87,88,89,90,94,95,107,108,109,110,111,112,113,114,115],inclusive:!1},vertex:{rules:[21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},dir:{rules:[21,24,44,45,46,47,48,49,50,51,52,53,54,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},acc_descr_multiline:{rules:[5,6,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},acc_descr:{rules:[3,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},acc_title:{rules:[1,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},md_string:{rules:[19,20,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},string:{rules:[21,22,23,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},INITIAL:{rules:[0,2,4,7,13,21,24,25,26,27,28,29,30,31,32,35,36,37,38,39,40,41,42,43,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,71,72,74,75,77,80,82,84,85,86,88,90,94,95,96,97,98,99,100,101,102,103,104,105,106,108,110,112,114,116,117,118,119],inclusive:!0}}};return Hr}();Ni.lexer=Zn;function Sn(){this.yy={}}return o(Sn,"Parser"),Sn.prototype=Ni,Ni.Parser=Sn,new Sn}();xR.parser=xR;bR=xR});var Uie,Hie,Wie=N(()=>{"use strict";Vie();Uie=Object.assign({},bR);Uie.parse=t=>{let e=t.replace(/}\s*\n/g,`} +`);return bR.parse(e)};Hie=Uie});var gOe,yOe,qie,Yie=N(()=>{"use strict";Ys();gOe=o((t,e)=>{let r=Kf,n=r(t,"r"),i=r(t,"g"),a=r(t,"b");return qa(n,i,a,e)},"fade"),yOe=o(t=>`.label { + font-family: ${t.fontFamily}; + color: ${t.nodeTextColor||t.textColor}; + } + .cluster-label text { + fill: ${t.titleColor}; + } + .cluster-label span { + color: ${t.titleColor}; + } + .cluster-label span p { + background-color: transparent; + } + + .label text,span { + fill: ${t.nodeTextColor||t.textColor}; + color: ${t.nodeTextColor||t.textColor}; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${t.mainBkg}; + stroke: ${t.nodeBorder}; + stroke-width: 1px; + } + .rough-node .label text , .node .label text, .image-shape .label, .icon-shape .label { + text-anchor: middle; + } + // .flowchart-label .text-outer-tspan { + // text-anchor: middle; + // } + // .flowchart-label .text-inner-tspan { + // text-anchor: start; + // } + + .node .katex path { + fill: #000; + stroke: #000; + stroke-width: 1px; + } + + .rough-node .label,.node .label, .image-shape .label, .icon-shape .label { + text-align: center; + } + .node.clickable { + cursor: pointer; + } + + + .root .anchor path { + fill: ${t.lineColor} !important; + stroke-width: 0; + stroke: ${t.lineColor}; + } + + .arrowheadPath { + fill: ${t.arrowheadColor}; + } + + .edgePath .path { + stroke: ${t.lineColor}; + stroke-width: 2.0px; + } + + .flowchart-link { + stroke: ${t.lineColor}; + fill: none; + } + + .edgeLabel { + background-color: ${t.edgeLabelBackground}; + p { + background-color: ${t.edgeLabelBackground}; + } + rect { + opacity: 0.5; + background-color: ${t.edgeLabelBackground}; + fill: ${t.edgeLabelBackground}; + } + text-align: center; + } + + /* For html labels only */ + .labelBkg { + background-color: ${gOe(t.edgeLabelBackground,.5)}; + // background-color: + } + + .cluster rect { + fill: ${t.clusterBkg}; + stroke: ${t.clusterBorder}; + stroke-width: 1px; + } + + .cluster text { + fill: ${t.titleColor}; + } + + .cluster span { + color: ${t.titleColor}; + } + /* .cluster div { + color: ${t.titleColor}; + } */ + + div.mermaidTooltip { + position: absolute; + text-align: center; + max-width: 200px; + padding: 2px; + font-family: ${t.fontFamily}; + font-size: 12px; + background: ${t.tertiaryColor}; + border: 1px solid ${t.border2}; + border-radius: 2px; + pointer-events: none; + z-index: 100; + } + + .flowchartTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${t.textColor}; + } + + rect.text { + fill: none; + stroke-width: 0; + } + + .icon-shape, .image-shape { + background-color: ${t.edgeLabelBackground}; + p { + background-color: ${t.edgeLabelBackground}; + padding: 2px; + } + rect { + opacity: 0.5; + background-color: ${t.edgeLabelBackground}; + fill: ${t.edgeLabelBackground}; + } + text-align: center; + } +`,"getStyles"),qie=yOe});var ik={};hr(ik,{diagram:()=>vOe});var vOe,ak=N(()=>{"use strict";zt();qZ();Gie();Wie();Yie();vOe={parser:Hie,get db(){return new Uw},renderer:zie,styles:qie,init:o(t=>{t.flowchart||(t.flowchart={}),t.layout&&Yy({layout:t.layout}),t.flowchart.arrowMarkerAbsolute=t.arrowMarkerAbsolute,Yy({flowchart:{arrowMarkerAbsolute:t.arrowMarkerAbsolute}})},"init")}});var wR,Zie,Jie=N(()=>{"use strict";wR=function(){var t=o(function(J,se,ue,Z){for(ue=ue||{},Z=J.length;Z--;ue[J[Z]]=se);return ue},"o"),e=[6,8,10,22,24,26,28,33,34,35,36,37,40,43,44,50],r=[1,10],n=[1,11],i=[1,12],a=[1,13],s=[1,20],l=[1,21],u=[1,22],h=[1,23],f=[1,24],d=[1,19],p=[1,25],m=[1,26],g=[1,18],y=[1,33],v=[1,34],x=[1,35],b=[1,36],w=[1,37],C=[6,8,10,13,15,17,20,21,22,24,26,28,33,34,35,36,37,40,43,44,50,63,64,65,66,67],T=[1,42],E=[1,43],A=[1,52],S=[40,50,68,69],_=[1,63],I=[1,61],D=[1,58],k=[1,62],L=[1,64],R=[6,8,10,13,17,22,24,26,28,33,34,35,36,37,40,41,42,43,44,48,49,50,63,64,65,66,67],O=[63,64,65,66,67],M=[1,81],B=[1,80],F=[1,78],P=[1,79],z=[6,10,42,47],$=[6,10,13,41,42,47,48,49],H=[1,89],Q=[1,88],j=[1,87],ie=[19,56],ne=[1,98],le=[1,97],he=[19,56,58,60],K={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,entityName:11,relSpec:12,COLON:13,role:14,STYLE_SEPARATOR:15,idList:16,BLOCK_START:17,attributes:18,BLOCK_STOP:19,SQS:20,SQE:21,title:22,title_value:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,direction:29,classDefStatement:30,classStatement:31,styleStatement:32,direction_tb:33,direction_bt:34,direction_rl:35,direction_lr:36,CLASSDEF:37,stylesOpt:38,separator:39,UNICODE_TEXT:40,STYLE_TEXT:41,COMMA:42,CLASS:43,STYLE:44,style:45,styleComponent:46,SEMI:47,NUM:48,BRKT:49,ENTITY_NAME:50,attribute:51,attributeType:52,attributeName:53,attributeKeyTypeList:54,attributeComment:55,ATTRIBUTE_WORD:56,attributeKeyType:57,",":58,ATTRIBUTE_KEY:59,COMMENT:60,cardinality:61,relType:62,ZERO_OR_ONE:63,ZERO_OR_MORE:64,ONE_OR_MORE:65,ONLY_ONE:66,MD_PARENT:67,NON_IDENTIFYING:68,IDENTIFYING:69,WORD:70,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",8:"SPACE",10:"NEWLINE",13:"COLON",15:"STYLE_SEPARATOR",17:"BLOCK_START",19:"BLOCK_STOP",20:"SQS",21:"SQE",22:"title",23:"title_value",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"direction_tb",34:"direction_bt",35:"direction_rl",36:"direction_lr",37:"CLASSDEF",40:"UNICODE_TEXT",41:"STYLE_TEXT",42:"COMMA",43:"CLASS",44:"STYLE",47:"SEMI",48:"NUM",49:"BRKT",50:"ENTITY_NAME",56:"ATTRIBUTE_WORD",58:",",59:"ATTRIBUTE_KEY",60:"COMMENT",63:"ZERO_OR_ONE",64:"ZERO_OR_MORE",65:"ONE_OR_MORE",66:"ONLY_ONE",67:"MD_PARENT",68:"NON_IDENTIFYING",69:"IDENTIFYING",70:"WORD"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,5],[9,9],[9,7],[9,7],[9,4],[9,6],[9,3],[9,5],[9,1],[9,3],[9,7],[9,9],[9,6],[9,8],[9,4],[9,6],[9,2],[9,2],[9,2],[9,1],[9,1],[9,1],[9,1],[9,1],[29,1],[29,1],[29,1],[29,1],[30,4],[16,1],[16,1],[16,3],[16,3],[31,3],[32,4],[38,1],[38,3],[45,1],[45,2],[39,1],[39,1],[39,1],[46,1],[46,1],[46,1],[46,1],[11,1],[11,1],[18,1],[18,2],[51,2],[51,3],[51,3],[51,4],[52,1],[53,1],[54,1],[54,3],[57,1],[55,1],[12,3],[61,1],[61,1],[61,1],[61,1],[61,1],[62,1],[62,1],[14,1],[14,1],[14,1]],performAction:o(function(se,ue,Z,Se,ce,ae,Oe){var ge=ae.length-1;switch(ce){case 1:break;case 2:this.$=[];break;case 3:ae[ge-1].push(ae[ge]),this.$=ae[ge-1];break;case 4:case 5:this.$=ae[ge];break;case 6:case 7:this.$=[];break;case 8:Se.addEntity(ae[ge-4]),Se.addEntity(ae[ge-2]),Se.addRelationship(ae[ge-4],ae[ge],ae[ge-2],ae[ge-3]);break;case 9:Se.addEntity(ae[ge-8]),Se.addEntity(ae[ge-4]),Se.addRelationship(ae[ge-8],ae[ge],ae[ge-4],ae[ge-5]),Se.setClass([ae[ge-8]],ae[ge-6]),Se.setClass([ae[ge-4]],ae[ge-2]);break;case 10:Se.addEntity(ae[ge-6]),Se.addEntity(ae[ge-2]),Se.addRelationship(ae[ge-6],ae[ge],ae[ge-2],ae[ge-3]),Se.setClass([ae[ge-6]],ae[ge-4]);break;case 11:Se.addEntity(ae[ge-6]),Se.addEntity(ae[ge-4]),Se.addRelationship(ae[ge-6],ae[ge],ae[ge-4],ae[ge-5]),Se.setClass([ae[ge-4]],ae[ge-2]);break;case 12:Se.addEntity(ae[ge-3]),Se.addAttributes(ae[ge-3],ae[ge-1]);break;case 13:Se.addEntity(ae[ge-5]),Se.addAttributes(ae[ge-5],ae[ge-1]),Se.setClass([ae[ge-5]],ae[ge-3]);break;case 14:Se.addEntity(ae[ge-2]);break;case 15:Se.addEntity(ae[ge-4]),Se.setClass([ae[ge-4]],ae[ge-2]);break;case 16:Se.addEntity(ae[ge]);break;case 17:Se.addEntity(ae[ge-2]),Se.setClass([ae[ge-2]],ae[ge]);break;case 18:Se.addEntity(ae[ge-6],ae[ge-4]),Se.addAttributes(ae[ge-6],ae[ge-1]);break;case 19:Se.addEntity(ae[ge-8],ae[ge-6]),Se.addAttributes(ae[ge-8],ae[ge-1]),Se.setClass([ae[ge-8]],ae[ge-3]);break;case 20:Se.addEntity(ae[ge-5],ae[ge-3]);break;case 21:Se.addEntity(ae[ge-7],ae[ge-5]),Se.setClass([ae[ge-7]],ae[ge-2]);break;case 22:Se.addEntity(ae[ge-3],ae[ge-1]);break;case 23:Se.addEntity(ae[ge-5],ae[ge-3]),Se.setClass([ae[ge-5]],ae[ge]);break;case 24:case 25:this.$=ae[ge].trim(),Se.setAccTitle(this.$);break;case 26:case 27:this.$=ae[ge].trim(),Se.setAccDescription(this.$);break;case 32:Se.setDirection("TB");break;case 33:Se.setDirection("BT");break;case 34:Se.setDirection("RL");break;case 35:Se.setDirection("LR");break;case 36:this.$=ae[ge-3],Se.addClass(ae[ge-2],ae[ge-1]);break;case 37:case 38:case 56:case 64:this.$=[ae[ge]];break;case 39:case 40:this.$=ae[ge-2].concat([ae[ge]]);break;case 41:this.$=ae[ge-2],Se.setClass(ae[ge-1],ae[ge]);break;case 42:this.$=ae[ge-3],Se.addCssStyles(ae[ge-2],ae[ge-1]);break;case 43:this.$=[ae[ge]];break;case 44:ae[ge-2].push(ae[ge]),this.$=ae[ge-2];break;case 46:this.$=ae[ge-1]+ae[ge];break;case 54:case 76:case 77:this.$=ae[ge].replace(/"/g,"");break;case 55:case 78:this.$=ae[ge];break;case 57:ae[ge].push(ae[ge-1]),this.$=ae[ge];break;case 58:this.$={type:ae[ge-1],name:ae[ge]};break;case 59:this.$={type:ae[ge-2],name:ae[ge-1],keys:ae[ge]};break;case 60:this.$={type:ae[ge-2],name:ae[ge-1],comment:ae[ge]};break;case 61:this.$={type:ae[ge-3],name:ae[ge-2],keys:ae[ge-1],comment:ae[ge]};break;case 62:case 63:case 66:this.$=ae[ge];break;case 65:ae[ge-2].push(ae[ge]),this.$=ae[ge-2];break;case 67:this.$=ae[ge].replace(/"/g,"");break;case 68:this.$={cardA:ae[ge],relType:ae[ge-1],cardB:ae[ge-2]};break;case 69:this.$=Se.Cardinality.ZERO_OR_ONE;break;case 70:this.$=Se.Cardinality.ZERO_OR_MORE;break;case 71:this.$=Se.Cardinality.ONE_OR_MORE;break;case 72:this.$=Se.Cardinality.ONLY_ONE;break;case 73:this.$=Se.Cardinality.MD_PARENT;break;case 74:this.$=Se.Identification.NON_IDENTIFYING;break;case 75:this.$=Se.Identification.IDENTIFYING;break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:9,22:r,24:n,26:i,28:a,29:14,30:15,31:16,32:17,33:s,34:l,35:u,36:h,37:f,40:d,43:p,44:m,50:g},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:27,11:9,22:r,24:n,26:i,28:a,29:14,30:15,31:16,32:17,33:s,34:l,35:u,36:h,37:f,40:d,43:p,44:m,50:g},t(e,[2,5]),t(e,[2,6]),t(e,[2,16],{12:28,61:32,15:[1,29],17:[1,30],20:[1,31],63:y,64:v,65:x,66:b,67:w}),{23:[1,38]},{25:[1,39]},{27:[1,40]},t(e,[2,27]),t(e,[2,28]),t(e,[2,29]),t(e,[2,30]),t(e,[2,31]),t(C,[2,54]),t(C,[2,55]),t(e,[2,32]),t(e,[2,33]),t(e,[2,34]),t(e,[2,35]),{16:41,40:T,41:E},{16:44,40:T,41:E},{16:45,40:T,41:E},t(e,[2,4]),{11:46,40:d,50:g},{16:47,40:T,41:E},{18:48,19:[1,49],51:50,52:51,56:A},{11:53,40:d,50:g},{62:54,68:[1,55],69:[1,56]},t(S,[2,69]),t(S,[2,70]),t(S,[2,71]),t(S,[2,72]),t(S,[2,73]),t(e,[2,24]),t(e,[2,25]),t(e,[2,26]),{13:_,38:57,41:I,42:D,45:59,46:60,48:k,49:L},t(R,[2,37]),t(R,[2,38]),{16:65,40:T,41:E,42:D},{13:_,38:66,41:I,42:D,45:59,46:60,48:k,49:L},{13:[1,67],15:[1,68]},t(e,[2,17],{61:32,12:69,17:[1,70],42:D,63:y,64:v,65:x,66:b,67:w}),{19:[1,71]},t(e,[2,14]),{18:72,19:[2,56],51:50,52:51,56:A},{53:73,56:[1,74]},{56:[2,62]},{21:[1,75]},{61:76,63:y,64:v,65:x,66:b,67:w},t(O,[2,74]),t(O,[2,75]),{6:M,10:B,39:77,42:F,47:P},{40:[1,82],41:[1,83]},t(z,[2,43],{46:84,13:_,41:I,48:k,49:L}),t($,[2,45]),t($,[2,50]),t($,[2,51]),t($,[2,52]),t($,[2,53]),t(e,[2,41],{42:D}),{6:M,10:B,39:85,42:F,47:P},{14:86,40:H,50:Q,70:j},{16:90,40:T,41:E},{11:91,40:d,50:g},{18:92,19:[1,93],51:50,52:51,56:A},t(e,[2,12]),{19:[2,57]},t(ie,[2,58],{54:94,55:95,57:96,59:ne,60:le}),t([19,56,59,60],[2,63]),t(e,[2,22],{15:[1,100],17:[1,99]}),t([40,50],[2,68]),t(e,[2,36]),{13:_,41:I,45:101,46:60,48:k,49:L},t(e,[2,47]),t(e,[2,48]),t(e,[2,49]),t(R,[2,39]),t(R,[2,40]),t($,[2,46]),t(e,[2,42]),t(e,[2,8]),t(e,[2,76]),t(e,[2,77]),t(e,[2,78]),{13:[1,102],42:D},{13:[1,104],15:[1,103]},{19:[1,105]},t(e,[2,15]),t(ie,[2,59],{55:106,58:[1,107],60:le}),t(ie,[2,60]),t(he,[2,64]),t(ie,[2,67]),t(he,[2,66]),{18:108,19:[1,109],51:50,52:51,56:A},{16:110,40:T,41:E},t(z,[2,44],{46:84,13:_,41:I,48:k,49:L}),{14:111,40:H,50:Q,70:j},{16:112,40:T,41:E},{14:113,40:H,50:Q,70:j},t(e,[2,13]),t(ie,[2,61]),{57:114,59:ne},{19:[1,115]},t(e,[2,20]),t(e,[2,23],{17:[1,116],42:D}),t(e,[2,11]),{13:[1,117],42:D},t(e,[2,10]),t(he,[2,65]),t(e,[2,18]),{18:118,19:[1,119],51:50,52:51,56:A},{14:120,40:H,50:Q,70:j},{19:[1,121]},t(e,[2,21]),t(e,[2,9]),t(e,[2,19])],defaultActions:{52:[2,62],72:[2,57]},parseError:o(function(se,ue){if(ue.recoverable)this.trace(se);else{var Z=new Error(se);throw Z.hash=ue,Z}},"parseError"),parse:o(function(se){var ue=this,Z=[0],Se=[],ce=[null],ae=[],Oe=this.table,ge="",ze=0,He=0,$e=0,Re=2,Ie=1,be=ae.slice.call(arguments,1),W=Object.create(this.lexer),de={yy:{}};for(var re in this.yy)Object.prototype.hasOwnProperty.call(this.yy,re)&&(de.yy[re]=this.yy[re]);W.setInput(se,de.yy),de.yy.lexer=W,de.yy.parser=this,typeof W.yylloc>"u"&&(W.yylloc={});var oe=W.yylloc;ae.push(oe);var V=W.options&&W.options.ranges;typeof de.yy.parseError=="function"?this.parseError=de.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function xe(ct){Z.length=Z.length-2*ct,ce.length=ce.length-ct,ae.length=ae.length-ct}o(xe,"popStack");function q(){var ct;return ct=Se.pop()||W.lex()||Ie,typeof ct!="number"&&(ct instanceof Array&&(Se=ct,ct=Se.pop()),ct=ue.symbols_[ct]||ct),ct}o(q,"lex");for(var pe,ve,Pe,_e,we,Ve,De={},qe,at,Rt,st;;){if(Pe=Z[Z.length-1],this.defaultActions[Pe]?_e=this.defaultActions[Pe]:((pe===null||typeof pe>"u")&&(pe=q()),_e=Oe[Pe]&&Oe[Pe][pe]),typeof _e>"u"||!_e.length||!_e[0]){var Ue="";st=[];for(qe in Oe[Pe])this.terminals_[qe]&&qe>Re&&st.push("'"+this.terminals_[qe]+"'");W.showPosition?Ue="Parse error on line "+(ze+1)+`: +`+W.showPosition()+` +Expecting `+st.join(", ")+", got '"+(this.terminals_[pe]||pe)+"'":Ue="Parse error on line "+(ze+1)+": Unexpected "+(pe==Ie?"end of input":"'"+(this.terminals_[pe]||pe)+"'"),this.parseError(Ue,{text:W.match,token:this.terminals_[pe]||pe,line:W.yylineno,loc:oe,expected:st})}if(_e[0]instanceof Array&&_e.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Pe+", token: "+pe);switch(_e[0]){case 1:Z.push(pe),ce.push(W.yytext),ae.push(W.yylloc),Z.push(_e[1]),pe=null,ve?(pe=ve,ve=null):(He=W.yyleng,ge=W.yytext,ze=W.yylineno,oe=W.yylloc,$e>0&&$e--);break;case 2:if(at=this.productions_[_e[1]][1],De.$=ce[ce.length-at],De._$={first_line:ae[ae.length-(at||1)].first_line,last_line:ae[ae.length-1].last_line,first_column:ae[ae.length-(at||1)].first_column,last_column:ae[ae.length-1].last_column},V&&(De._$.range=[ae[ae.length-(at||1)].range[0],ae[ae.length-1].range[1]]),Ve=this.performAction.apply(De,[ge,He,ze,de.yy,_e[1],ce,ae].concat(be)),typeof Ve<"u")return Ve;at&&(Z=Z.slice(0,-1*at*2),ce=ce.slice(0,-1*at),ae=ae.slice(0,-1*at)),Z.push(this.productions_[_e[1]][0]),ce.push(De.$),ae.push(De._$),Rt=Oe[Z[Z.length-2]][Z[Z.length-1]],Z.push(Rt);break;case 3:return!0}}return!0},"parse")},X=function(){var J={EOF:1,parseError:o(function(ue,Z){if(this.yy.parser)this.yy.parser.parseError(ue,Z);else throw new Error(ue)},"parseError"),setInput:o(function(se,ue){return this.yy=ue||this.yy||{},this._input=se,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var se=this._input[0];this.yytext+=se,this.yyleng++,this.offset++,this.match+=se,this.matched+=se;var ue=se.match(/(?:\r\n?|\n).*/g);return ue?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),se},"input"),unput:o(function(se){var ue=se.length,Z=se.split(/(?:\r\n?|\n)/g);this._input=se+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-ue),this.offset-=ue;var Se=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Z.length-1&&(this.yylineno-=Z.length-1);var ce=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Z?(Z.length===Se.length?this.yylloc.first_column:0)+Se[Se.length-Z.length].length-Z[0].length:this.yylloc.first_column-ue},this.options.ranges&&(this.yylloc.range=[ce[0],ce[0]+this.yyleng-ue]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(se){this.unput(this.match.slice(se))},"less"),pastInput:o(function(){var se=this.matched.substr(0,this.matched.length-this.match.length);return(se.length>20?"...":"")+se.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var se=this.match;return se.length<20&&(se+=this._input.substr(0,20-se.length)),(se.substr(0,20)+(se.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var se=this.pastInput(),ue=new Array(se.length+1).join("-");return se+this.upcomingInput()+` +`+ue+"^"},"showPosition"),test_match:o(function(se,ue){var Z,Se,ce;if(this.options.backtrack_lexer&&(ce={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(ce.yylloc.range=this.yylloc.range.slice(0))),Se=se[0].match(/(?:\r\n?|\n).*/g),Se&&(this.yylineno+=Se.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Se?Se[Se.length-1].length-Se[Se.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+se[0].length},this.yytext+=se[0],this.match+=se[0],this.matches=se,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(se[0].length),this.matched+=se[0],Z=this.performAction.call(this,this.yy,this,ue,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Z)return Z;if(this._backtrack){for(var ae in ce)this[ae]=ce[ae];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var se,ue,Z,Se;this._more||(this.yytext="",this.match="");for(var ce=this._currentRules(),ae=0;aeue[0].length)){if(ue=Z,Se=ae,this.options.backtrack_lexer){if(se=this.test_match(Z,ce[ae]),se!==!1)return se;if(this._backtrack){ue=!1;continue}else return!1}else if(!this.options.flex)break}return ue?(se=this.test_match(ue,ce[Se]),se!==!1?se:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var ue=this.next();return ue||this.lex()},"lex"),begin:o(function(ue){this.conditionStack.push(ue)},"begin"),popState:o(function(){var ue=this.conditionStack.length-1;return ue>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(ue){return ue=this.conditionStack.length-1-Math.abs(ue||0),ue>=0?this.conditionStack[ue]:"INITIAL"},"topState"),pushState:o(function(ue){this.begin(ue)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(ue,Z,Se,ce){var ae=ce;switch(Se){case 0:return this.begin("acc_title"),24;break;case 1:return this.popState(),"acc_title_value";break;case 2:return this.begin("acc_descr"),26;break;case 3:return this.popState(),"acc_descr_value";break;case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return 33;case 8:return 34;case 9:return 35;case 10:return 36;case 11:return 10;case 12:break;case 13:return 8;case 14:return 50;case 15:return 70;case 16:return 4;case 17:return this.begin("block"),17;break;case 18:return 49;case 19:return 49;case 20:return 42;case 21:return 15;case 22:return 13;case 23:break;case 24:return 59;case 25:return 56;case 26:return 56;case 27:return 60;case 28:break;case 29:return this.popState(),19;break;case 30:return Z.yytext[0];case 31:return 20;case 32:return 21;case 33:return this.begin("style"),44;break;case 34:return this.popState(),10;break;case 35:break;case 36:return 13;case 37:return 42;case 38:return 49;case 39:return this.begin("style"),37;break;case 40:return 43;case 41:return 63;case 42:return 65;case 43:return 65;case 44:return 65;case 45:return 63;case 46:return 63;case 47:return 64;case 48:return 64;case 49:return 64;case 50:return 64;case 51:return 64;case 52:return 65;case 53:return 64;case 54:return 65;case 55:return 66;case 56:return 66;case 57:return 66;case 58:return 66;case 59:return 63;case 60:return 64;case 61:return 65;case 62:return 67;case 63:return 68;case 64:return 69;case 65:return 69;case 66:return 68;case 67:return 68;case 68:return 68;case 69:return 41;case 70:return 47;case 71:return 40;case 72:return 48;case 73:return Z.yytext[0];case 74:return 6}},"anonymous"),rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:[\s]+)/i,/^(?:"[^"%\r\n\v\b\\]+")/i,/^(?:"[^"]*")/i,/^(?:erDiagram\b)/i,/^(?:\{)/i,/^(?:#)/i,/^(?:#)/i,/^(?:,)/i,/^(?::::)/i,/^(?::)/i,/^(?:\s+)/i,/^(?:\b((?:PK)|(?:FK)|(?:UK))\b)/i,/^(?:([^\s]*)[~].*[~]([^\s]*))/i,/^(?:([\*A-Za-z_\u00C0-\uFFFF][A-Za-z0-9\-\_\[\]\(\)\u00C0-\uFFFF\*]*))/i,/^(?:"[^"]*")/i,/^(?:[\n]+)/i,/^(?:\})/i,/^(?:.)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:style\b)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?::)/i,/^(?:,)/i,/^(?:#)/i,/^(?:classDef\b)/i,/^(?:class\b)/i,/^(?:one or zero\b)/i,/^(?:one or more\b)/i,/^(?:one or many\b)/i,/^(?:1\+)/i,/^(?:\|o\b)/i,/^(?:zero or one\b)/i,/^(?:zero or more\b)/i,/^(?:zero or many\b)/i,/^(?:0\+)/i,/^(?:\}o\b)/i,/^(?:many\(0\))/i,/^(?:many\(1\))/i,/^(?:many\b)/i,/^(?:\}\|)/i,/^(?:one\b)/i,/^(?:only one\b)/i,/^(?:1\b)/i,/^(?:\|\|)/i,/^(?:o\|)/i,/^(?:o\{)/i,/^(?:\|\{)/i,/^(?:\s*u\b)/i,/^(?:\.\.)/i,/^(?:--)/i,/^(?:to\b)/i,/^(?:optionally to\b)/i,/^(?:\.-)/i,/^(?:-\.)/i,/^(?:([^\x00-\x7F]|\w|-|\*)+)/i,/^(?:;)/i,/^(?:([^\x00-\x7F]|\w|-|\*)+)/i,/^(?:[0-9])/i,/^(?:.)/i,/^(?:$)/i],conditions:{style:{rules:[34,35,36,37,38,69,70],inclusive:!1},acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},block:{rules:[23,24,25,26,27,28,29,30],inclusive:!1},INITIAL:{rules:[0,2,4,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,31,32,33,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,71,72,73,74],inclusive:!0}}};return J}();K.lexer=X;function te(){this.yy={}}return o(te,"Parser"),te.prototype=K,K.Parser=te,new te}();wR.parser=wR;Zie=wR});var sk,eae=N(()=>{"use strict";vt();zt();mi();ir();sk=class{constructor(){this.entities=new Map;this.relationships=[];this.classes=new Map;this.direction="TB";this.Cardinality={ZERO_OR_ONE:"ZERO_OR_ONE",ZERO_OR_MORE:"ZERO_OR_MORE",ONE_OR_MORE:"ONE_OR_MORE",ONLY_ONE:"ONLY_ONE",MD_PARENT:"MD_PARENT"};this.Identification={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"};this.setAccTitle=Lr;this.getAccTitle=Rr;this.setAccDescription=Nr;this.getAccDescription=Mr;this.setDiagramTitle=$r;this.getDiagramTitle=Ir;this.getConfig=o(()=>me().er,"getConfig");this.clear(),this.addEntity=this.addEntity.bind(this),this.addAttributes=this.addAttributes.bind(this),this.addRelationship=this.addRelationship.bind(this),this.setDirection=this.setDirection.bind(this),this.addCssStyles=this.addCssStyles.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.setAccTitle=this.setAccTitle.bind(this),this.setAccDescription=this.setAccDescription.bind(this)}static{o(this,"ErDB")}addEntity(e,r=""){return this.entities.has(e)?!this.entities.get(e)?.alias&&r&&(this.entities.get(e).alias=r,Y.info(`Add alias '${r}' to entity '${e}'`)):(this.entities.set(e,{id:`entity-${e}-${this.entities.size}`,label:e,attributes:[],alias:r,shape:"erBox",look:me().look??"default",cssClasses:"default",cssStyles:[]}),Y.info("Added new entity :",e)),this.entities.get(e)}getEntity(e){return this.entities.get(e)}getEntities(){return this.entities}getClasses(){return this.classes}addAttributes(e,r){let n=this.addEntity(e),i;for(i=r.length-1;i>=0;i--)r[i].keys||(r[i].keys=[]),r[i].comment||(r[i].comment=""),n.attributes.push(r[i]),Y.debug("Added attribute ",r[i].name)}addRelationship(e,r,n,i){let a=this.entities.get(e),s=this.entities.get(n);if(!a||!s)return;let l={entityA:a.id,roleA:r,entityB:s.id,relSpec:i};this.relationships.push(l),Y.debug("Added new relationship :",l)}getRelationships(){return this.relationships}getDirection(){return this.direction}setDirection(e){this.direction=e}getCompiledStyles(e){let r=[];for(let n of e){let i=this.classes.get(n);i?.styles&&(r=[...r,...i.styles??[]].map(a=>a.trim())),i?.textStyles&&(r=[...r,...i.textStyles??[]].map(a=>a.trim()))}return r}addCssStyles(e,r){for(let n of e){let i=this.entities.get(n);if(!r||!i)return;for(let a of r)i.cssStyles.push(a)}}addClass(e,r){e.forEach(n=>{let i=this.classes.get(n);i===void 0&&(i={id:n,styles:[],textStyles:[]},this.classes.set(n,i)),r&&r.forEach(function(a){if(/color/.exec(a)){let s=a.replace("fill","bgFill");i.textStyles.push(s)}i.styles.push(a)})})}setClass(e,r){for(let n of e){let i=this.entities.get(n);if(i)for(let a of r)i.cssClasses+=" "+a}}clear(){this.entities=new Map,this.classes=new Map,this.relationships=[],Ar()}getData(){let e=[],r=[],n=me();for(let a of this.entities.keys()){let s=this.entities.get(a);s&&(s.cssCompiledStyles=this.getCompiledStyles(s.cssClasses.split(" ")),e.push(s))}let i=0;for(let a of this.relationships){let s={id:$h(a.entityA,a.entityB,{prefix:"id",counter:i++}),type:"normal",curve:"basis",start:a.entityA,end:a.entityB,label:a.roleA,labelpos:"c",thickness:"normal",classes:"relationshipLine",arrowTypeStart:a.relSpec.cardB.toLowerCase(),arrowTypeEnd:a.relSpec.cardA.toLowerCase(),pattern:a.relSpec.relType=="IDENTIFYING"?"solid":"dashed",look:n.look};r.push(s)}return{nodes:e,edges:r,other:{},config:n,direction:"TB"}}}});var TR={};hr(TR,{draw:()=>SOe});var SOe,tae=N(()=>{"use strict";zt();vt();gm();Yd();$m();ir();dr();SOe=o(async function(t,e,r,n){Y.info("REF0:"),Y.info("Drawing er diagram (unified)",e);let{securityLevel:i,er:a,layout:s}=me(),l=n.db.getData(),u=yc(e,i);l.type=n.type,l.layoutAlgorithm=nf(s),l.config.flowchart.nodeSpacing=a?.nodeSpacing||140,l.config.flowchart.rankSpacing=a?.rankSpacing||80,l.direction=n.db.getDirection(),l.markers=["only_one","zero_or_one","one_or_more","zero_or_more"],l.diagramId=e,await Cc(l,u),l.layoutAlgorithm==="elk"&&u.select(".edges").lower();let h=u.selectAll('[id*="-background"]');Array.from(h).length>0&&h.each(function(){let d=Ge(this),m=d.attr("id").replace("-background",""),g=u.select(`#${CSS.escape(m)}`);if(!g.empty()){let y=g.attr("transform");d.attr("transform",y)}});let f=8;Gt.insertTitle(u,"erDiagramTitleText",a?.titleTopMargin??25,n.db.getDiagramTitle()),Ac(u,f,"erDiagram",a?.useMaxWidth??!0)},"draw")});var COe,AOe,rae,nae=N(()=>{"use strict";Ys();COe=o((t,e)=>{let r=Kf,n=r(t,"r"),i=r(t,"g"),a=r(t,"b");return qa(n,i,a,e)},"fade"),AOe=o(t=>` + .entityBox { + fill: ${t.mainBkg}; + stroke: ${t.nodeBorder}; + } + + .relationshipLabelBox { + fill: ${t.tertiaryColor}; + opacity: 0.7; + background-color: ${t.tertiaryColor}; + rect { + opacity: 0.5; + } + } + + .labelBkg { + background-color: ${COe(t.tertiaryColor,.5)}; + } + + .edgeLabel .label { + fill: ${t.nodeBorder}; + font-size: 14px; + } + + .label { + font-family: ${t.fontFamily}; + color: ${t.nodeTextColor||t.textColor}; + } + + .edge-pattern-dashed { + stroke-dasharray: 8,8; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon + { + fill: ${t.mainBkg}; + stroke: ${t.nodeBorder}; + stroke-width: 1px; + } + + .relationshipLine { + stroke: ${t.lineColor}; + stroke-width: 1; + fill: none; + } + + .marker { + fill: none !important; + stroke: ${t.lineColor} !important; + stroke-width: 1; + } +`,"getStyles"),rae=AOe});var iae={};hr(iae,{diagram:()=>_Oe});var _Oe,aae=N(()=>{"use strict";Jie();eae();tae();nae();_Oe={parser:Zie,get db(){return new sk},renderer:TR,styles:rae}});function ii(t){return typeof t=="object"&&t!==null&&typeof t.$type=="string"}function va(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"}function kR(t){return typeof t=="object"&&t!==null&&typeof t.name=="string"&&typeof t.type=="string"&&typeof t.path=="string"}function jd(t){return typeof t=="object"&&t!==null&&ii(t.container)&&va(t.reference)&&typeof t.message=="string"}function Ll(t){return typeof t=="object"&&t!==null&&Array.isArray(t.content)}function af(t){return typeof t=="object"&&t!==null&&typeof t.tokenType=="object"}function M2(t){return Ll(t)&&typeof t.fullText=="string"}var Xd,Rl=N(()=>{"use strict";o(ii,"isAstNode");o(va,"isReference");o(kR,"isAstNodeDescription");o(jd,"isLinkingError");Xd=class{static{o(this,"AbstractAstReflection")}constructor(){this.subtypes={},this.allSubtypes={}}isInstance(e,r){return ii(e)&&this.isSubtype(e.$type,r)}isSubtype(e,r){if(e===r)return!0;let n=this.subtypes[e];n||(n=this.subtypes[e]={});let i=n[r];if(i!==void 0)return i;{let a=this.computeIsSubtype(e,r);return n[r]=a,a}}getAllSubTypes(e){let r=this.allSubtypes[e];if(r)return r;{let n=this.getAllTypes(),i=[];for(let a of n)this.isSubtype(a,e)&&i.push(a);return this.allSubtypes[e]=i,i}}};o(Ll,"isCompositeCstNode");o(af,"isLeafCstNode");o(M2,"isRootCstNode")});function NOe(t){return typeof t=="string"?t:typeof t>"u"?"undefined":typeof t.toString=="function"?t.toString():Object.prototype.toString.call(t)}function ok(t){return!!t&&typeof t[Symbol.iterator]=="function"}function en(...t){if(t.length===1){let e=t[0];if(e instanceof ao)return e;if(ok(e))return new ao(()=>e[Symbol.iterator](),r=>r.next());if(typeof e.length=="number")return new ao(()=>({index:0}),r=>r.index1?new ao(()=>({collIndex:0,arrIndex:0}),e=>{do{if(e.iterator){let r=e.iterator.next();if(!r.done)return r;e.iterator=void 0}if(e.array){if(e.arrIndex{"use strict";ao=class t{static{o(this,"StreamImpl")}constructor(e,r){this.startFn=e,this.nextFn=r}iterator(){let e={state:this.startFn(),next:o(()=>this.nextFn(e.state),"next"),[Symbol.iterator]:()=>e};return e}[Symbol.iterator](){return this.iterator()}isEmpty(){return!!this.iterator().next().done}count(){let e=this.iterator(),r=0,n=e.next();for(;!n.done;)r++,n=e.next();return r}toArray(){let e=[],r=this.iterator(),n;do n=r.next(),n.value!==void 0&&e.push(n.value);while(!n.done);return e}toSet(){return new Set(this)}toMap(e,r){let n=this.map(i=>[e?e(i):i,r?r(i):i]);return new Map(n)}toString(){return this.join()}concat(e){return new t(()=>({first:this.startFn(),firstDone:!1,iterator:e[Symbol.iterator]()}),r=>{let n;if(!r.firstDone){do if(n=this.nextFn(r.first),!n.done)return n;while(!n.done);r.firstDone=!0}do if(n=r.iterator.next(),!n.done)return n;while(!n.done);return Ia})}join(e=","){let r=this.iterator(),n="",i,a=!1;do i=r.next(),i.done||(a&&(n+=e),n+=NOe(i.value)),a=!0;while(!i.done);return n}indexOf(e,r=0){let n=this.iterator(),i=0,a=n.next();for(;!a.done;){if(i>=r&&a.value===e)return i;a=n.next(),i++}return-1}every(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(!e(n.value))return!1;n=r.next()}return!0}some(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(e(n.value))return!0;n=r.next()}return!1}forEach(e){let r=this.iterator(),n=0,i=r.next();for(;!i.done;)e(i.value,n),i=r.next(),n++}map(e){return new t(this.startFn,r=>{let{done:n,value:i}=this.nextFn(r);return n?Ia:{done:!1,value:e(i)}})}filter(e){return new t(this.startFn,r=>{let n;do if(n=this.nextFn(r),!n.done&&e(n.value))return n;while(!n.done);return Ia})}nonNullable(){return this.filter(e=>e!=null)}reduce(e,r){let n=this.iterator(),i=r,a=n.next();for(;!a.done;)i===void 0?i=a.value:i=e(i,a.value),a=n.next();return i}reduceRight(e,r){return this.recursiveReduce(this.iterator(),e,r)}recursiveReduce(e,r,n){let i=e.next();if(i.done)return n;let a=this.recursiveReduce(e,r,n);return a===void 0?i.value:r(a,i.value)}find(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(e(n.value))return n.value;n=r.next()}}findIndex(e){let r=this.iterator(),n=0,i=r.next();for(;!i.done;){if(e(i.value))return n;i=r.next(),n++}return-1}includes(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(n.value===e)return!0;n=r.next()}return!1}flatMap(e){return new t(()=>({this:this.startFn()}),r=>{do{if(r.iterator){let a=r.iterator.next();if(a.done)r.iterator=void 0;else return a}let{done:n,value:i}=this.nextFn(r.this);if(!n){let a=e(i);if(ok(a))r.iterator=a[Symbol.iterator]();else return{done:!1,value:a}}}while(r.iterator);return Ia})}flat(e){if(e===void 0&&(e=1),e<=0)return this;let r=e>1?this.flat(e-1):this;return new t(()=>({this:r.startFn()}),n=>{do{if(n.iterator){let s=n.iterator.next();if(s.done)n.iterator=void 0;else return s}let{done:i,value:a}=r.nextFn(n.this);if(!i)if(ok(a))n.iterator=a[Symbol.iterator]();else return{done:!1,value:a}}while(n.iterator);return Ia})}head(){let r=this.iterator().next();if(!r.done)return r.value}tail(e=1){return new t(()=>{let r=this.startFn();for(let n=0;n({size:0,state:this.startFn()}),r=>(r.size++,r.size>e?Ia:this.nextFn(r.state)))}distinct(e){return new t(()=>({set:new Set,internalState:this.startFn()}),r=>{let n;do if(n=this.nextFn(r.internalState),!n.done){let i=e?e(n.value):n.value;if(!r.set.has(i))return r.set.add(i),n}while(!n.done);return Ia})}exclude(e,r){let n=new Set;for(let i of e){let a=r?r(i):i;n.add(a)}return this.filter(i=>{let a=r?r(i):i;return!n.has(a)})}};o(NOe,"toString");o(ok,"isIterable");I2=new ao(()=>{},()=>Ia),Ia=Object.freeze({done:!0,value:void 0});o(en,"stream");_c=class extends ao{static{o(this,"TreeStreamImpl")}constructor(e,r,n){super(()=>({iterators:n?.includeRoot?[[e][Symbol.iterator]()]:[r(e)[Symbol.iterator]()],pruned:!1}),i=>{for(i.pruned&&(i.iterators.pop(),i.pruned=!1);i.iterators.length>0;){let s=i.iterators[i.iterators.length-1].next();if(s.done)i.iterators.pop();else return i.iterators.push(r(s.value)[Symbol.iterator]()),s}return Ia})}iterator(){let e={state:this.startFn(),next:o(()=>this.nextFn(e.state),"next"),prune:o(()=>{e.state.pruned=!0},"prune"),[Symbol.iterator]:()=>e};return e}};(function(t){function e(a){return a.reduce((s,l)=>s+l,0)}o(e,"sum"),t.sum=e;function r(a){return a.reduce((s,l)=>s*l,0)}o(r,"product"),t.product=r;function n(a){return a.reduce((s,l)=>Math.min(s,l))}o(n,"min"),t.min=n;function i(a){return a.reduce((s,l)=>Math.max(s,l))}o(i,"max"),t.max=i})(zm||(zm={}))});var ck={};hr(ck,{DefaultNameRegexp:()=>lk,RangeComparison:()=>Dc,compareRange:()=>cae,findCommentNode:()=>AR,findDeclarationNodeAtOffset:()=>IOe,findLeafNodeAtOffset:()=>_R,findLeafNodeBeforeOffset:()=>uae,flattenCst:()=>MOe,getInteriorNodes:()=>BOe,getNextNode:()=>OOe,getPreviousNode:()=>fae,getStartlineNode:()=>POe,inRange:()=>CR,isChildNode:()=>SR,isCommentNode:()=>ER,streamCst:()=>Kd,toDocumentSegment:()=>Qd,tokenToRange:()=>Gm});function Kd(t){return new _c(t,e=>Ll(e)?e.content:[],{includeRoot:!0})}function MOe(t){return Kd(t).filter(af)}function SR(t,e){for(;t.container;)if(t=t.container,t===e)return!0;return!1}function Gm(t){return{start:{character:t.startColumn-1,line:t.startLine-1},end:{character:t.endColumn,line:t.endLine-1}}}function Qd(t){if(!t)return;let{offset:e,end:r,range:n}=t;return{range:n,offset:e,end:r,length:r-e}}function cae(t,e){if(t.end.linee.end.line||t.start.line===e.end.line&&t.start.character>=e.end.character)return Dc.After;let r=t.start.line>e.start.line||t.start.line===e.start.line&&t.start.character>=e.start.character,n=t.end.lineDc.After}function IOe(t,e,r=lk){if(t){if(e>0){let n=e-t.offset,i=t.text.charAt(n);r.test(i)||e--}return _R(t,e)}}function AR(t,e){if(t){let r=fae(t,!0);if(r&&ER(r,e))return r;if(M2(t)){let n=t.content.findIndex(i=>!i.hidden);for(let i=n-1;i>=0;i--){let a=t.content[i];if(ER(a,e))return a}}}}function ER(t,e){return af(t)&&e.includes(t.tokenType.name)}function _R(t,e){if(af(t))return t;if(Ll(t)){let r=hae(t,e,!1);if(r)return _R(r,e)}}function uae(t,e){if(af(t))return t;if(Ll(t)){let r=hae(t,e,!0);if(r)return uae(r,e)}}function hae(t,e,r){let n=0,i=t.content.length-1,a;for(;n<=i;){let s=Math.floor((n+i)/2),l=t.content[s];if(l.offset<=e&&l.end>e)return l;l.end<=e?(a=r?l:void 0,n=s+1):i=s-1}return a}function fae(t,e=!0){for(;t.container;){let r=t.container,n=r.content.indexOf(t);for(;n>0;){n--;let i=r.content[n];if(e||!i.hidden)return i}t=r}}function OOe(t,e=!0){for(;t.container;){let r=t.container,n=r.content.indexOf(t),i=r.content.length-1;for(;n{"use strict";Rl();Ps();o(Kd,"streamCst");o(MOe,"flattenCst");o(SR,"isChildNode");o(Gm,"tokenToRange");o(Qd,"toDocumentSegment");(function(t){t[t.Before=0]="Before",t[t.After=1]="After",t[t.OverlapFront=2]="OverlapFront",t[t.OverlapBack=3]="OverlapBack",t[t.Inside=4]="Inside",t[t.Outside=5]="Outside"})(Dc||(Dc={}));o(cae,"compareRange");o(CR,"inRange");lk=/^[\w\p{L}]$/u;o(IOe,"findDeclarationNodeAtOffset");o(AR,"findCommentNode");o(ER,"isCommentNode");o(_R,"findLeafNodeAtOffset");o(uae,"findLeafNodeBeforeOffset");o(hae,"binarySearch");o(fae,"getPreviousNode");o(OOe,"getNextNode");o(POe,"getStartlineNode");o(BOe,"getInteriorNodes");o(FOe,"getCommonParent");o(lae,"getParentChain")});function Lc(t){throw new Error("Error! The input value was not handled.")}var Zd,uk=N(()=>{"use strict";Zd=class extends Error{static{o(this,"ErrorWithLocation")}constructor(e,r){super(e?`${r} at ${e.range.start.line}:${e.range.start.character}`:r)}};o(Lc,"assertUnreachable")});var U2={};hr(U2,{AbstractElement:()=>Hm,AbstractRule:()=>Vm,AbstractType:()=>Um,Action:()=>cg,Alternatives:()=>ug,ArrayLiteral:()=>Wm,ArrayType:()=>qm,Assignment:()=>hg,BooleanLiteral:()=>Ym,CharacterRange:()=>fg,Condition:()=>O2,Conjunction:()=>Xm,CrossReference:()=>dg,Disjunction:()=>jm,EndOfFile:()=>pg,Grammar:()=>Km,GrammarImport:()=>B2,Group:()=>mg,InferredType:()=>Qm,Interface:()=>Zm,Keyword:()=>gg,LangiumGrammarAstReflection:()=>Cg,LangiumGrammarTerminals:()=>$Oe,NamedArgument:()=>F2,NegatedToken:()=>yg,Negation:()=>Jm,NumberLiteral:()=>eg,Parameter:()=>tg,ParameterReference:()=>rg,ParserRule:()=>ng,ReferenceType:()=>ig,RegexToken:()=>vg,ReturnType:()=>$2,RuleCall:()=>xg,SimpleType:()=>ag,StringLiteral:()=>sg,TerminalAlternatives:()=>bg,TerminalGroup:()=>wg,TerminalRule:()=>Jd,TerminalRuleCall:()=>Tg,Type:()=>og,TypeAttribute:()=>z2,TypeDefinition:()=>hk,UnionType:()=>lg,UnorderedGroup:()=>kg,UntilToken:()=>Eg,ValueLiteral:()=>P2,Wildcard:()=>Sg,isAbstractElement:()=>G2,isAbstractRule:()=>zOe,isAbstractType:()=>GOe,isAction:()=>Mu,isAlternatives:()=>mk,isArrayLiteral:()=>qOe,isArrayType:()=>DR,isAssignment:()=>Ml,isBooleanLiteral:()=>LR,isCharacterRange:()=>FR,isCondition:()=>VOe,isConjunction:()=>RR,isCrossReference:()=>ep,isDisjunction:()=>NR,isEndOfFile:()=>$R,isFeatureName:()=>UOe,isGrammar:()=>YOe,isGrammarImport:()=>XOe,isGroup:()=>sf,isInferredType:()=>fk,isInterface:()=>dk,isKeyword:()=>Ho,isNamedArgument:()=>jOe,isNegatedToken:()=>zR,isNegation:()=>MR,isNumberLiteral:()=>KOe,isParameter:()=>QOe,isParameterReference:()=>IR,isParserRule:()=>Oa,isPrimitiveType:()=>dae,isReferenceType:()=>OR,isRegexToken:()=>GR,isReturnType:()=>PR,isRuleCall:()=>Il,isSimpleType:()=>pk,isStringLiteral:()=>ZOe,isTerminalAlternatives:()=>VR,isTerminalGroup:()=>UR,isTerminalRule:()=>so,isTerminalRuleCall:()=>gk,isType:()=>V2,isTypeAttribute:()=>JOe,isTypeDefinition:()=>HOe,isUnionType:()=>BR,isUnorderedGroup:()=>yk,isUntilToken:()=>HR,isValueLiteral:()=>WOe,isWildcard:()=>WR,reflection:()=>lr});function zOe(t){return lr.isInstance(t,Vm)}function GOe(t){return lr.isInstance(t,Um)}function VOe(t){return lr.isInstance(t,O2)}function UOe(t){return dae(t)||t==="current"||t==="entry"||t==="extends"||t==="false"||t==="fragment"||t==="grammar"||t==="hidden"||t==="import"||t==="interface"||t==="returns"||t==="terminal"||t==="true"||t==="type"||t==="infer"||t==="infers"||t==="with"||typeof t=="string"&&/\^?[_a-zA-Z][\w_]*/.test(t)}function dae(t){return t==="string"||t==="number"||t==="boolean"||t==="Date"||t==="bigint"}function HOe(t){return lr.isInstance(t,hk)}function WOe(t){return lr.isInstance(t,P2)}function G2(t){return lr.isInstance(t,Hm)}function qOe(t){return lr.isInstance(t,Wm)}function DR(t){return lr.isInstance(t,qm)}function LR(t){return lr.isInstance(t,Ym)}function RR(t){return lr.isInstance(t,Xm)}function NR(t){return lr.isInstance(t,jm)}function YOe(t){return lr.isInstance(t,Km)}function XOe(t){return lr.isInstance(t,B2)}function fk(t){return lr.isInstance(t,Qm)}function dk(t){return lr.isInstance(t,Zm)}function jOe(t){return lr.isInstance(t,F2)}function MR(t){return lr.isInstance(t,Jm)}function KOe(t){return lr.isInstance(t,eg)}function QOe(t){return lr.isInstance(t,tg)}function IR(t){return lr.isInstance(t,rg)}function Oa(t){return lr.isInstance(t,ng)}function OR(t){return lr.isInstance(t,ig)}function PR(t){return lr.isInstance(t,$2)}function pk(t){return lr.isInstance(t,ag)}function ZOe(t){return lr.isInstance(t,sg)}function so(t){return lr.isInstance(t,Jd)}function V2(t){return lr.isInstance(t,og)}function JOe(t){return lr.isInstance(t,z2)}function BR(t){return lr.isInstance(t,lg)}function Mu(t){return lr.isInstance(t,cg)}function mk(t){return lr.isInstance(t,ug)}function Ml(t){return lr.isInstance(t,hg)}function FR(t){return lr.isInstance(t,fg)}function ep(t){return lr.isInstance(t,dg)}function $R(t){return lr.isInstance(t,pg)}function sf(t){return lr.isInstance(t,mg)}function Ho(t){return lr.isInstance(t,gg)}function zR(t){return lr.isInstance(t,yg)}function GR(t){return lr.isInstance(t,vg)}function Il(t){return lr.isInstance(t,xg)}function VR(t){return lr.isInstance(t,bg)}function UR(t){return lr.isInstance(t,wg)}function gk(t){return lr.isInstance(t,Tg)}function yk(t){return lr.isInstance(t,kg)}function HR(t){return lr.isInstance(t,Eg)}function WR(t){return lr.isInstance(t,Sg)}var $Oe,Vm,Um,O2,hk,P2,Hm,Wm,qm,Ym,Xm,jm,Km,B2,Qm,Zm,F2,Jm,eg,tg,rg,ng,ig,$2,ag,sg,Jd,og,z2,lg,cg,ug,hg,fg,dg,pg,mg,gg,yg,vg,xg,bg,wg,Tg,kg,Eg,Sg,Cg,lr,Rc=N(()=>{"use strict";Rl();$Oe={ID:/\^?[_a-zA-Z][\w_]*/,STRING:/"(\\.|[^"\\])*"|'(\\.|[^'\\])*'/,NUMBER:/NaN|-?((\d*\.\d+|\d+)([Ee][+-]?\d+)?|Infinity)/,RegexLiteral:/\/(?![*+?])(?:[^\r\n\[/\\]|\\.|\[(?:[^\r\n\]\\]|\\.)*\])+\/[a-z]*/,WS:/\s+/,ML_COMMENT:/\/\*[\s\S]*?\*\//,SL_COMMENT:/\/\/[^\n\r]*/},Vm="AbstractRule";o(zOe,"isAbstractRule");Um="AbstractType";o(GOe,"isAbstractType");O2="Condition";o(VOe,"isCondition");o(UOe,"isFeatureName");o(dae,"isPrimitiveType");hk="TypeDefinition";o(HOe,"isTypeDefinition");P2="ValueLiteral";o(WOe,"isValueLiteral");Hm="AbstractElement";o(G2,"isAbstractElement");Wm="ArrayLiteral";o(qOe,"isArrayLiteral");qm="ArrayType";o(DR,"isArrayType");Ym="BooleanLiteral";o(LR,"isBooleanLiteral");Xm="Conjunction";o(RR,"isConjunction");jm="Disjunction";o(NR,"isDisjunction");Km="Grammar";o(YOe,"isGrammar");B2="GrammarImport";o(XOe,"isGrammarImport");Qm="InferredType";o(fk,"isInferredType");Zm="Interface";o(dk,"isInterface");F2="NamedArgument";o(jOe,"isNamedArgument");Jm="Negation";o(MR,"isNegation");eg="NumberLiteral";o(KOe,"isNumberLiteral");tg="Parameter";o(QOe,"isParameter");rg="ParameterReference";o(IR,"isParameterReference");ng="ParserRule";o(Oa,"isParserRule");ig="ReferenceType";o(OR,"isReferenceType");$2="ReturnType";o(PR,"isReturnType");ag="SimpleType";o(pk,"isSimpleType");sg="StringLiteral";o(ZOe,"isStringLiteral");Jd="TerminalRule";o(so,"isTerminalRule");og="Type";o(V2,"isType");z2="TypeAttribute";o(JOe,"isTypeAttribute");lg="UnionType";o(BR,"isUnionType");cg="Action";o(Mu,"isAction");ug="Alternatives";o(mk,"isAlternatives");hg="Assignment";o(Ml,"isAssignment");fg="CharacterRange";o(FR,"isCharacterRange");dg="CrossReference";o(ep,"isCrossReference");pg="EndOfFile";o($R,"isEndOfFile");mg="Group";o(sf,"isGroup");gg="Keyword";o(Ho,"isKeyword");yg="NegatedToken";o(zR,"isNegatedToken");vg="RegexToken";o(GR,"isRegexToken");xg="RuleCall";o(Il,"isRuleCall");bg="TerminalAlternatives";o(VR,"isTerminalAlternatives");wg="TerminalGroup";o(UR,"isTerminalGroup");Tg="TerminalRuleCall";o(gk,"isTerminalRuleCall");kg="UnorderedGroup";o(yk,"isUnorderedGroup");Eg="UntilToken";o(HR,"isUntilToken");Sg="Wildcard";o(WR,"isWildcard");Cg=class extends Xd{static{o(this,"LangiumGrammarAstReflection")}getAllTypes(){return[Hm,Vm,Um,cg,ug,Wm,qm,hg,Ym,fg,O2,Xm,dg,jm,pg,Km,B2,mg,Qm,Zm,gg,F2,yg,Jm,eg,tg,rg,ng,ig,vg,$2,xg,ag,sg,bg,wg,Jd,Tg,og,z2,hk,lg,kg,Eg,P2,Sg]}computeIsSubtype(e,r){switch(e){case cg:case ug:case hg:case fg:case dg:case pg:case mg:case gg:case yg:case vg:case xg:case bg:case wg:case Tg:case kg:case Eg:case Sg:return this.isSubtype(Hm,r);case Wm:case eg:case sg:return this.isSubtype(P2,r);case qm:case ig:case ag:case lg:return this.isSubtype(hk,r);case Ym:return this.isSubtype(O2,r)||this.isSubtype(P2,r);case Xm:case jm:case Jm:case rg:return this.isSubtype(O2,r);case Qm:case Zm:case og:return this.isSubtype(Um,r);case ng:return this.isSubtype(Vm,r)||this.isSubtype(Um,r);case Jd:return this.isSubtype(Vm,r);default:return!1}}getReferenceType(e){let r=`${e.container.$type}:${e.property}`;switch(r){case"Action:type":case"CrossReference:type":case"Interface:superTypes":case"ParserRule:returnType":case"SimpleType:typeRef":return Um;case"Grammar:hiddenTokens":case"ParserRule:hiddenTokens":case"RuleCall:rule":return Vm;case"Grammar:usedGrammars":return Km;case"NamedArgument:parameter":case"ParameterReference:parameter":return tg;case"TerminalRuleCall:rule":return Jd;default:throw new Error(`${r} is not a valid reference id.`)}}getTypeMetaData(e){switch(e){case Hm:return{name:Hm,properties:[{name:"cardinality"},{name:"lookahead"}]};case Wm:return{name:Wm,properties:[{name:"elements",defaultValue:[]}]};case qm:return{name:qm,properties:[{name:"elementType"}]};case Ym:return{name:Ym,properties:[{name:"true",defaultValue:!1}]};case Xm:return{name:Xm,properties:[{name:"left"},{name:"right"}]};case jm:return{name:jm,properties:[{name:"left"},{name:"right"}]};case Km:return{name:Km,properties:[{name:"definesHiddenTokens",defaultValue:!1},{name:"hiddenTokens",defaultValue:[]},{name:"imports",defaultValue:[]},{name:"interfaces",defaultValue:[]},{name:"isDeclared",defaultValue:!1},{name:"name"},{name:"rules",defaultValue:[]},{name:"types",defaultValue:[]},{name:"usedGrammars",defaultValue:[]}]};case B2:return{name:B2,properties:[{name:"path"}]};case Qm:return{name:Qm,properties:[{name:"name"}]};case Zm:return{name:Zm,properties:[{name:"attributes",defaultValue:[]},{name:"name"},{name:"superTypes",defaultValue:[]}]};case F2:return{name:F2,properties:[{name:"calledByName",defaultValue:!1},{name:"parameter"},{name:"value"}]};case Jm:return{name:Jm,properties:[{name:"value"}]};case eg:return{name:eg,properties:[{name:"value"}]};case tg:return{name:tg,properties:[{name:"name"}]};case rg:return{name:rg,properties:[{name:"parameter"}]};case ng:return{name:ng,properties:[{name:"dataType"},{name:"definesHiddenTokens",defaultValue:!1},{name:"definition"},{name:"entry",defaultValue:!1},{name:"fragment",defaultValue:!1},{name:"hiddenTokens",defaultValue:[]},{name:"inferredType"},{name:"name"},{name:"parameters",defaultValue:[]},{name:"returnType"},{name:"wildcard",defaultValue:!1}]};case ig:return{name:ig,properties:[{name:"referenceType"}]};case $2:return{name:$2,properties:[{name:"name"}]};case ag:return{name:ag,properties:[{name:"primitiveType"},{name:"stringType"},{name:"typeRef"}]};case sg:return{name:sg,properties:[{name:"value"}]};case Jd:return{name:Jd,properties:[{name:"definition"},{name:"fragment",defaultValue:!1},{name:"hidden",defaultValue:!1},{name:"name"},{name:"type"}]};case og:return{name:og,properties:[{name:"name"},{name:"type"}]};case z2:return{name:z2,properties:[{name:"defaultValue"},{name:"isOptional",defaultValue:!1},{name:"name"},{name:"type"}]};case lg:return{name:lg,properties:[{name:"types",defaultValue:[]}]};case cg:return{name:cg,properties:[{name:"cardinality"},{name:"feature"},{name:"inferredType"},{name:"lookahead"},{name:"operator"},{name:"type"}]};case ug:return{name:ug,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case hg:return{name:hg,properties:[{name:"cardinality"},{name:"feature"},{name:"lookahead"},{name:"operator"},{name:"terminal"}]};case fg:return{name:fg,properties:[{name:"cardinality"},{name:"left"},{name:"lookahead"},{name:"right"}]};case dg:return{name:dg,properties:[{name:"cardinality"},{name:"deprecatedSyntax",defaultValue:!1},{name:"lookahead"},{name:"terminal"},{name:"type"}]};case pg:return{name:pg,properties:[{name:"cardinality"},{name:"lookahead"}]};case mg:return{name:mg,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"guardCondition"},{name:"lookahead"}]};case gg:return{name:gg,properties:[{name:"cardinality"},{name:"lookahead"},{name:"value"}]};case yg:return{name:yg,properties:[{name:"cardinality"},{name:"lookahead"},{name:"terminal"}]};case vg:return{name:vg,properties:[{name:"cardinality"},{name:"lookahead"},{name:"regex"}]};case xg:return{name:xg,properties:[{name:"arguments",defaultValue:[]},{name:"cardinality"},{name:"lookahead"},{name:"rule"}]};case bg:return{name:bg,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case wg:return{name:wg,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case Tg:return{name:Tg,properties:[{name:"cardinality"},{name:"lookahead"},{name:"rule"}]};case kg:return{name:kg,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case Eg:return{name:Eg,properties:[{name:"cardinality"},{name:"lookahead"},{name:"terminal"}]};case Sg:return{name:Sg,properties:[{name:"cardinality"},{name:"lookahead"}]};default:return{name:e,properties:[]}}}},lr=new Cg});var xk={};hr(xk,{assignMandatoryProperties:()=>XR,copyAstNode:()=>YR,findLocalReferences:()=>tPe,findRootNode:()=>H2,getContainerOfType:()=>tp,getDocument:()=>Pa,hasContainerOfType:()=>ePe,linkContentToContainer:()=>vk,streamAllContents:()=>Nc,streamAst:()=>Wo,streamContents:()=>W2,streamReferences:()=>Ag});function vk(t){for(let[e,r]of Object.entries(t))e.startsWith("$")||(Array.isArray(r)?r.forEach((n,i)=>{ii(n)&&(n.$container=t,n.$containerProperty=e,n.$containerIndex=i)}):ii(r)&&(r.$container=t,r.$containerProperty=e))}function tp(t,e){let r=t;for(;r;){if(e(r))return r;r=r.$container}}function ePe(t,e){let r=t;for(;r;){if(e(r))return!0;r=r.$container}return!1}function Pa(t){let r=H2(t).$document;if(!r)throw new Error("AST node has no document.");return r}function H2(t){for(;t.$container;)t=t.$container;return t}function W2(t,e){if(!t)throw new Error("Node must be an AstNode.");let r=e?.range;return new ao(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),n=>{for(;n.keyIndexW2(r,e))}function Wo(t,e){if(t){if(e?.range&&!qR(t,e.range))return new _c(t,()=>[])}else throw new Error("Root node must be an AstNode.");return new _c(t,r=>W2(r,e),{includeRoot:!0})}function qR(t,e){var r;if(!e)return!0;let n=(r=t.$cstNode)===null||r===void 0?void 0:r.range;return n?CR(n,e):!1}function Ag(t){return new ao(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),e=>{for(;e.keyIndex{Ag(n).forEach(i=>{i.reference.ref===t&&r.push(i.reference)})}),en(r)}function XR(t,e){let r=t.getTypeMetaData(e.$type),n=e;for(let i of r.properties)i.defaultValue!==void 0&&n[i.name]===void 0&&(n[i.name]=pae(i.defaultValue))}function pae(t){return Array.isArray(t)?[...t.map(pae)]:t}function YR(t,e){let r={$type:t.$type};for(let[n,i]of Object.entries(t))if(!n.startsWith("$"))if(ii(i))r[n]=YR(i,e);else if(va(i))r[n]=e(r,n,i.$refNode,i.$refText);else if(Array.isArray(i)){let a=[];for(let s of i)ii(s)?a.push(YR(s,e)):va(s)?a.push(e(r,n,s.$refNode,s.$refText)):a.push(s);r[n]=a}else r[n]=i;return vk(r),r}var is=N(()=>{"use strict";Rl();Ps();Nl();o(vk,"linkContentToContainer");o(tp,"getContainerOfType");o(ePe,"hasContainerOfType");o(Pa,"getDocument");o(H2,"findRootNode");o(W2,"streamContents");o(Nc,"streamAllContents");o(Wo,"streamAst");o(qR,"isAstNodeInRange");o(Ag,"streamReferences");o(tPe,"findLocalReferences");o(XR,"assignMandatoryProperties");o(pae,"copyDefaultValue");o(YR,"copyAstNode")});function ar(t){return t.charCodeAt(0)}function bk(t,e){Array.isArray(t)?t.forEach(function(r){e.push(r)}):e.push(t)}function _g(t,e){if(t[e]===!0)throw"duplicate flag "+e;let r=t[e];t[e]=!0}function rp(t){if(t===void 0)throw Error("Internal Error - Should never get here!");return!0}function q2(){throw Error("Internal Error - Should never get here!")}function jR(t){return t.type==="Character"}var KR=N(()=>{"use strict";o(ar,"cc");o(bk,"insertToSet");o(_g,"addFlag");o(rp,"ASSERT_EXISTS");o(q2,"ASSERT_NEVER_REACH_HERE");o(jR,"isCharacter")});var Y2,X2,QR,mae=N(()=>{"use strict";KR();Y2=[];for(let t=ar("0");t<=ar("9");t++)Y2.push(t);X2=[ar("_")].concat(Y2);for(let t=ar("a");t<=ar("z");t++)X2.push(t);for(let t=ar("A");t<=ar("Z");t++)X2.push(t);QR=[ar(" "),ar("\f"),ar(` +`),ar("\r"),ar(" "),ar("\v"),ar(" "),ar("\xA0"),ar("\u1680"),ar("\u2000"),ar("\u2001"),ar("\u2002"),ar("\u2003"),ar("\u2004"),ar("\u2005"),ar("\u2006"),ar("\u2007"),ar("\u2008"),ar("\u2009"),ar("\u200A"),ar("\u2028"),ar("\u2029"),ar("\u202F"),ar("\u205F"),ar("\u3000"),ar("\uFEFF")]});var rPe,wk,nPe,np,gae=N(()=>{"use strict";KR();mae();rPe=/[0-9a-fA-F]/,wk=/[0-9]/,nPe=/[1-9]/,np=class{static{o(this,"RegExpParser")}constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(e){this.idx=e.idx,this.input=e.input,this.groupIdx=e.groupIdx}pattern(e){this.idx=0,this.input=e,this.groupIdx=0,this.consumeChar("/");let r=this.disjunction();this.consumeChar("/");let n={type:"Flags",loc:{begin:this.idx,end:e.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case"g":_g(n,"global");break;case"i":_g(n,"ignoreCase");break;case"m":_g(n,"multiLine");break;case"u":_g(n,"unicode");break;case"y":_g(n,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:n,value:r,loc:this.loc(0)}}disjunction(){let e=[],r=this.idx;for(e.push(this.alternative());this.peekChar()==="|";)this.consumeChar("|"),e.push(this.alternative());return{type:"Disjunction",value:e,loc:this.loc(r)}}alternative(){let e=[],r=this.idx;for(;this.isTerm();)e.push(this.term());return{type:"Alternative",value:e,loc:this.loc(r)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){let e=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(e)};case"$":return{type:"EndAnchor",loc:this.loc(e)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(e)};case"B":return{type:"NonWordBoundary",loc:this.loc(e)}}throw Error("Invalid Assertion Escape");case"(":this.consumeChar("?");let r;switch(this.popChar()){case"=":r="Lookahead";break;case"!":r="NegativeLookahead";break}rp(r);let n=this.disjunction();return this.consumeChar(")"),{type:r,value:n,loc:this.loc(e)}}return q2()}quantifier(e=!1){let r,n=this.idx;switch(this.popChar()){case"*":r={atLeast:0,atMost:1/0};break;case"+":r={atLeast:1,atMost:1/0};break;case"?":r={atLeast:0,atMost:1};break;case"{":let i=this.integerIncludingZero();switch(this.popChar()){case"}":r={atLeast:i,atMost:i};break;case",":let a;this.isDigit()?(a=this.integerIncludingZero(),r={atLeast:i,atMost:a}):r={atLeast:i,atMost:1/0},this.consumeChar("}");break}if(e===!0&&r===void 0)return;rp(r);break}if(!(e===!0&&r===void 0)&&rp(r))return this.peekChar(0)==="?"?(this.consumeChar("?"),r.greedy=!1):r.greedy=!0,r.type="Quantifier",r.loc=this.loc(n),r}atom(){let e,r=this.idx;switch(this.peekChar()){case".":e=this.dotAll();break;case"\\":e=this.atomEscape();break;case"[":e=this.characterClass();break;case"(":e=this.group();break}return e===void 0&&this.isPatternCharacter()&&(e=this.patternCharacter()),rp(e)?(e.loc=this.loc(r),this.isQuantifier()&&(e.quantifier=this.quantifier()),e):q2()}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[ar(` +`),ar("\r"),ar("\u2028"),ar("\u2029")]}}atomEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}decimalEscapeAtom(){return{type:"GroupBackReference",value:this.positiveInteger()}}characterClassEscape(){let e,r=!1;switch(this.popChar()){case"d":e=Y2;break;case"D":e=Y2,r=!0;break;case"s":e=QR;break;case"S":e=QR,r=!0;break;case"w":e=X2;break;case"W":e=X2,r=!0;break}return rp(e)?{type:"Set",value:e,complement:r}:q2()}controlEscapeAtom(){let e;switch(this.popChar()){case"f":e=ar("\f");break;case"n":e=ar(` +`);break;case"r":e=ar("\r");break;case"t":e=ar(" ");break;case"v":e=ar("\v");break}return rp(e)?{type:"Character",value:e}:q2()}controlLetterEscapeAtom(){this.consumeChar("c");let e=this.popChar();if(/[a-zA-Z]/.test(e)===!1)throw Error("Invalid ");return{type:"Character",value:e.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:ar("\0")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){let e=this.popChar();return{type:"Character",value:ar(e)}}classPatternCharacterAtom(){switch(this.peekChar()){case` +`:case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:let e=this.popChar();return{type:"Character",value:ar(e)}}}characterClass(){let e=[],r=!1;for(this.consumeChar("["),this.peekChar(0)==="^"&&(this.consumeChar("^"),r=!0);this.isClassAtom();){let n=this.classAtom(),i=n.type==="Character";if(jR(n)&&this.isRangeDash()){this.consumeChar("-");let a=this.classAtom(),s=a.type==="Character";if(jR(a)){if(a.value=this.input.length)throw Error("Unexpected end of input");this.idx++}loc(e){return{begin:e,end:this.idx}}}});var Mc,yae=N(()=>{"use strict";Mc=class{static{o(this,"BaseRegExpVisitor")}visitChildren(e){for(let r in e){let n=e[r];e.hasOwnProperty(r)&&(n.type!==void 0?this.visit(n):Array.isArray(n)&&n.forEach(i=>{this.visit(i)},this))}}visit(e){switch(e.type){case"Pattern":this.visitPattern(e);break;case"Flags":this.visitFlags(e);break;case"Disjunction":this.visitDisjunction(e);break;case"Alternative":this.visitAlternative(e);break;case"StartAnchor":this.visitStartAnchor(e);break;case"EndAnchor":this.visitEndAnchor(e);break;case"WordBoundary":this.visitWordBoundary(e);break;case"NonWordBoundary":this.visitNonWordBoundary(e);break;case"Lookahead":this.visitLookahead(e);break;case"NegativeLookahead":this.visitNegativeLookahead(e);break;case"Character":this.visitCharacter(e);break;case"Set":this.visitSet(e);break;case"Group":this.visitGroup(e);break;case"GroupBackReference":this.visitGroupBackReference(e);break;case"Quantifier":this.visitQuantifier(e);break}this.visitChildren(e)}visitPattern(e){}visitFlags(e){}visitDisjunction(e){}visitAlternative(e){}visitStartAnchor(e){}visitEndAnchor(e){}visitWordBoundary(e){}visitNonWordBoundary(e){}visitLookahead(e){}visitNegativeLookahead(e){}visitCharacter(e){}visitSet(e){}visitGroup(e){}visitGroupBackReference(e){}visitQuantifier(e){}}});var j2=N(()=>{"use strict";gae();yae()});var Tk={};hr(Tk,{NEWLINE_REGEXP:()=>JR,escapeRegExp:()=>ap,getCaseInsensitivePattern:()=>tN,getTerminalParts:()=>iPe,isMultilineComment:()=>eN,isWhitespace:()=>Dg,partialMatches:()=>rN,partialRegExp:()=>bae,whitespaceCharacters:()=>xae});function iPe(t){try{typeof t!="string"&&(t=t.source),t=`/${t}/`;let e=vae.pattern(t),r=[];for(let n of e.value.value)ip.reset(t),ip.visit(n),r.push({start:ip.startRegexp,end:ip.endRegex});return r}catch{return[]}}function eN(t){try{return typeof t=="string"&&(t=new RegExp(t)),t=t.toString(),ip.reset(t),ip.visit(vae.pattern(t)),ip.multiline}catch{return!1}}function Dg(t){let e=typeof t=="string"?new RegExp(t):t;return xae.some(r=>e.test(r))}function ap(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function tN(t){return Array.prototype.map.call(t,e=>/\w/.test(e)?`[${e.toLowerCase()}${e.toUpperCase()}]`:ap(e)).join("")}function rN(t,e){let r=bae(t),n=e.match(r);return!!n&&n[0].length>0}function bae(t){typeof t=="string"&&(t=new RegExp(t));let e=t,r=t.source,n=0;function i(){let a="",s;function l(h){a+=r.substr(n,h),n+=h}o(l,"appendRaw");function u(h){a+="(?:"+r.substr(n,h)+"|$)",n+=h}for(o(u,"appendOptional");n",n)-n+1);break;default:u(2);break}break;case"[":s=/\[(?:\\.|.)*?\]/g,s.lastIndex=n,s=s.exec(r)||[],u(s[0].length);break;case"|":case"^":case"$":case"*":case"+":case"?":l(1);break;case"{":s=/\{\d+,?\d*\}/g,s.lastIndex=n,s=s.exec(r),s?l(s[0].length):u(1);break;case"(":if(r[n+1]==="?")switch(r[n+2]){case":":a+="(?:",n+=3,a+=i()+"|$)";break;case"=":a+="(?=",n+=3,a+=i()+")";break;case"!":s=n,n+=3,i(),a+=r.substr(s,n-s);break;case"<":switch(r[n+3]){case"=":case"!":s=n,n+=4,i(),a+=r.substr(s,n-s);break;default:l(r.indexOf(">",n)-n+1),a+=i()+"|$)";break}break}else l(1),a+=i()+"|$)";break;case")":return++n,a;default:u(1);break}return a}return o(i,"process"),new RegExp(i(),t.flags)}var JR,vae,ZR,ip,xae,Lg=N(()=>{"use strict";j2();JR=/\r?\n/gm,vae=new np,ZR=class extends Mc{static{o(this,"TerminalRegExpVisitor")}constructor(){super(...arguments),this.isStarting=!0,this.endRegexpStack=[],this.multiline=!1}get endRegex(){return this.endRegexpStack.join("")}reset(e){this.multiline=!1,this.regex=e,this.startRegexp="",this.isStarting=!0,this.endRegexpStack=[]}visitGroup(e){e.quantifier&&(this.isStarting=!1,this.endRegexpStack=[])}visitCharacter(e){let r=String.fromCharCode(e.value);if(!this.multiline&&r===` +`&&(this.multiline=!0),e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let n=ap(r);this.endRegexpStack.push(n),this.isStarting&&(this.startRegexp+=n)}}visitSet(e){if(!this.multiline){let r=this.regex.substring(e.loc.begin,e.loc.end),n=new RegExp(r);this.multiline=!!` +`.match(n)}if(e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let r=this.regex.substring(e.loc.begin,e.loc.end);this.endRegexpStack.push(r),this.isStarting&&(this.startRegexp+=r)}}visitChildren(e){e.type==="Group"&&e.quantifier||super.visitChildren(e)}},ip=new ZR;o(iPe,"getTerminalParts");o(eN,"isMultilineComment");xae=`\f +\r \v \xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF`.split("");o(Dg,"isWhitespace");o(ap,"escapeRegExp");o(tN,"getCaseInsensitivePattern");o(rN,"partialMatches");o(bae,"partialRegExp")});var Ek={};hr(Ek,{findAssignment:()=>hN,findNameAssignment:()=>kk,findNodeForKeyword:()=>cN,findNodeForProperty:()=>Q2,findNodesForKeyword:()=>aPe,findNodesForKeywordInternal:()=>uN,findNodesForProperty:()=>oN,getActionAtElement:()=>Sae,getActionType:()=>Aae,getAllReachableRules:()=>K2,getCrossReferenceTerminal:()=>aN,getEntryRule:()=>wae,getExplicitRuleType:()=>Rg,getHiddenRules:()=>Tae,getRuleType:()=>fN,getRuleTypeName:()=>uPe,getTypeName:()=>J2,isArrayCardinality:()=>oPe,isArrayOperator:()=>lPe,isCommentTerminal:()=>sN,isDataType:()=>cPe,isDataTypeRule:()=>Z2,isOptionalCardinality:()=>sPe,terminalRegex:()=>Ng});function wae(t){return t.rules.find(e=>Oa(e)&&e.entry)}function Tae(t){return t.rules.filter(e=>so(e)&&e.hidden)}function K2(t,e){let r=new Set,n=wae(t);if(!n)return new Set(t.rules);let i=[n].concat(Tae(t));for(let s of i)kae(s,r,e);let a=new Set;for(let s of t.rules)(r.has(s.name)||so(s)&&s.hidden)&&a.add(s);return a}function kae(t,e,r){e.add(t.name),Nc(t).forEach(n=>{if(Il(n)||r&&gk(n)){let i=n.rule.ref;i&&!e.has(i.name)&&kae(i,e,r)}})}function aN(t){if(t.terminal)return t.terminal;if(t.type.ref){let e=kk(t.type.ref);return e?.terminal}}function sN(t){return t.hidden&&!Dg(Ng(t))}function oN(t,e){return!t||!e?[]:lN(t,e,t.astNode,!0)}function Q2(t,e,r){if(!t||!e)return;let n=lN(t,e,t.astNode,!0);if(n.length!==0)return r!==void 0?r=Math.max(0,Math.min(r,n.length-1)):r=0,n[r]}function lN(t,e,r,n){if(!n){let i=tp(t.grammarSource,Ml);if(i&&i.feature===e)return[t]}return Ll(t)&&t.astNode===r?t.content.flatMap(i=>lN(i,e,r,!1)):[]}function aPe(t,e){return t?uN(t,e,t?.astNode):[]}function cN(t,e,r){if(!t)return;let n=uN(t,e,t?.astNode);if(n.length!==0)return r!==void 0?r=Math.max(0,Math.min(r,n.length-1)):r=0,n[r]}function uN(t,e,r){if(t.astNode!==r)return[];if(Ho(t.grammarSource)&&t.grammarSource.value===e)return[t];let n=Kd(t).iterator(),i,a=[];do if(i=n.next(),!i.done){let s=i.value;s.astNode===r?Ho(s.grammarSource)&&s.grammarSource.value===e&&a.push(s):n.prune()}while(!i.done);return a}function hN(t){var e;let r=t.astNode;for(;r===((e=t.container)===null||e===void 0?void 0:e.astNode);){let n=tp(t.grammarSource,Ml);if(n)return n;t=t.container}}function kk(t){let e=t;return fk(e)&&(Mu(e.$container)?e=e.$container.$container:Oa(e.$container)?e=e.$container:Lc(e.$container)),Eae(t,e,new Map)}function Eae(t,e,r){var n;function i(a,s){let l;return tp(a,Ml)||(l=Eae(s,s,r)),r.set(t,l),l}if(o(i,"go"),r.has(t))return r.get(t);r.set(t,void 0);for(let a of Nc(e)){if(Ml(a)&&a.feature.toLowerCase()==="name")return r.set(t,a),a;if(Il(a)&&Oa(a.rule.ref))return i(a,a.rule.ref);if(pk(a)&&(!((n=a.typeRef)===null||n===void 0)&&n.ref))return i(a,a.typeRef.ref)}}function Sae(t){let e=t.$container;if(sf(e)){let r=e.elements,n=r.indexOf(t);for(let i=n-1;i>=0;i--){let a=r[i];if(Mu(a))return a;{let s=Nc(r[i]).find(Mu);if(s)return s}}}if(G2(e))return Sae(e)}function sPe(t,e){return t==="?"||t==="*"||sf(e)&&!!e.guardCondition}function oPe(t){return t==="*"||t==="+"}function lPe(t){return t==="+="}function Z2(t){return Cae(t,new Set)}function Cae(t,e){if(e.has(t))return!0;e.add(t);for(let r of Nc(t))if(Il(r)){if(!r.rule.ref||Oa(r.rule.ref)&&!Cae(r.rule.ref,e))return!1}else{if(Ml(r))return!1;if(Mu(r))return!1}return!!t.definition}function cPe(t){return iN(t.type,new Set)}function iN(t,e){if(e.has(t))return!0;if(e.add(t),DR(t))return!1;if(OR(t))return!1;if(BR(t))return t.types.every(r=>iN(r,e));if(pk(t)){if(t.primitiveType!==void 0)return!0;if(t.stringType!==void 0)return!0;if(t.typeRef!==void 0){let r=t.typeRef.ref;return V2(r)?iN(r.type,e):!1}else return!1}else return!1}function Rg(t){if(t.inferredType)return t.inferredType.name;if(t.dataType)return t.dataType;if(t.returnType){let e=t.returnType.ref;if(e){if(Oa(e))return e.name;if(dk(e)||V2(e))return e.name}}}function J2(t){var e;if(Oa(t))return Z2(t)?t.name:(e=Rg(t))!==null&&e!==void 0?e:t.name;if(dk(t)||V2(t)||PR(t))return t.name;if(Mu(t)){let r=Aae(t);if(r)return r}else if(fk(t))return t.name;throw new Error("Cannot get name of Unknown Type")}function Aae(t){var e;if(t.inferredType)return t.inferredType.name;if(!((e=t.type)===null||e===void 0)&&e.ref)return J2(t.type.ref)}function uPe(t){var e,r,n;return so(t)?(r=(e=t.type)===null||e===void 0?void 0:e.name)!==null&&r!==void 0?r:"string":Z2(t)?t.name:(n=Rg(t))!==null&&n!==void 0?n:t.name}function fN(t){var e,r,n;return so(t)?(r=(e=t.type)===null||e===void 0?void 0:e.name)!==null&&r!==void 0?r:"string":(n=Rg(t))!==null&&n!==void 0?n:t.name}function Ng(t){let e={s:!1,i:!1,u:!1},r=Mg(t.definition,e),n=Object.entries(e).filter(([,i])=>i).map(([i])=>i).join("");return new RegExp(r,n)}function Mg(t,e){if(VR(t))return hPe(t);if(UR(t))return fPe(t);if(FR(t))return mPe(t);if(gk(t)){let r=t.rule.ref;if(!r)throw new Error("Missing rule reference.");return Iu(Mg(r.definition),{cardinality:t.cardinality,lookahead:t.lookahead})}else{if(zR(t))return pPe(t);if(HR(t))return dPe(t);if(GR(t)){let r=t.regex.lastIndexOf("/"),n=t.regex.substring(1,r),i=t.regex.substring(r+1);return e&&(e.i=i.includes("i"),e.s=i.includes("s"),e.u=i.includes("u")),Iu(n,{cardinality:t.cardinality,lookahead:t.lookahead,wrap:!1})}else{if(WR(t))return Iu(dN,{cardinality:t.cardinality,lookahead:t.lookahead});throw new Error(`Invalid terminal element: ${t?.$type}`)}}}function hPe(t){return Iu(t.elements.map(e=>Mg(e)).join("|"),{cardinality:t.cardinality,lookahead:t.lookahead})}function fPe(t){return Iu(t.elements.map(e=>Mg(e)).join(""),{cardinality:t.cardinality,lookahead:t.lookahead})}function dPe(t){return Iu(`${dN}*?${Mg(t.terminal)}`,{cardinality:t.cardinality,lookahead:t.lookahead})}function pPe(t){return Iu(`(?!${Mg(t.terminal)})${dN}*?`,{cardinality:t.cardinality,lookahead:t.lookahead})}function mPe(t){return t.right?Iu(`[${nN(t.left)}-${nN(t.right)}]`,{cardinality:t.cardinality,lookahead:t.lookahead,wrap:!1}):Iu(nN(t.left),{cardinality:t.cardinality,lookahead:t.lookahead,wrap:!1})}function nN(t){return ap(t.value)}function Iu(t,e){var r;return(e.wrap!==!1||e.lookahead)&&(t=`(${(r=e.lookahead)!==null&&r!==void 0?r:""}${t})`),e.cardinality?`${t}${e.cardinality}`:t}var dN,Ol=N(()=>{"use strict";uk();Rc();Rl();is();Nl();Lg();o(wae,"getEntryRule");o(Tae,"getHiddenRules");o(K2,"getAllReachableRules");o(kae,"ruleDfs");o(aN,"getCrossReferenceTerminal");o(sN,"isCommentTerminal");o(oN,"findNodesForProperty");o(Q2,"findNodeForProperty");o(lN,"findNodesForPropertyInternal");o(aPe,"findNodesForKeyword");o(cN,"findNodeForKeyword");o(uN,"findNodesForKeywordInternal");o(hN,"findAssignment");o(kk,"findNameAssignment");o(Eae,"findNameAssignmentInternal");o(Sae,"getActionAtElement");o(sPe,"isOptionalCardinality");o(oPe,"isArrayCardinality");o(lPe,"isArrayOperator");o(Z2,"isDataTypeRule");o(Cae,"isDataTypeRuleInternal");o(cPe,"isDataType");o(iN,"isDataTypeInternal");o(Rg,"getExplicitRuleType");o(J2,"getTypeName");o(Aae,"getActionType");o(uPe,"getRuleTypeName");o(fN,"getRuleType");o(Ng,"terminalRegex");dN=/[\s\S]/.source;o(Mg,"abstractElementToRegex");o(hPe,"terminalAlternativesToRegex");o(fPe,"terminalGroupToRegex");o(dPe,"untilTokenToRegex");o(pPe,"negateTokenToRegex");o(mPe,"characterRangeToRegex");o(nN,"keywordToRegex");o(Iu,"withCardinality")});function pN(t){let e=[],r=t.Grammar;for(let n of r.rules)so(n)&&sN(n)&&eN(Ng(n))&&e.push(n.name);return{multilineCommentRules:e,nameRegexp:lk}}var mN=N(()=>{"use strict";Nl();Ol();Lg();Rc();o(pN,"createGrammarConfig")});var gN=N(()=>{"use strict"});function Ig(t){console&&console.error&&console.error(`Error: ${t}`)}function ex(t){console&&console.warn&&console.warn(`Warning: ${t}`)}var _ae=N(()=>{"use strict";o(Ig,"PRINT_ERROR");o(ex,"PRINT_WARNING")});function tx(t){let e=new Date().getTime(),r=t();return{time:new Date().getTime()-e,value:r}}var Dae=N(()=>{"use strict";o(tx,"timer")});function rx(t){function e(){}o(e,"FakeConstructor"),e.prototype=t;let r=new e;function n(){return typeof r.bar}return o(n,"fakeAccess"),n(),n(),t;(0,eval)(t)}var Lae=N(()=>{"use strict";o(rx,"toFastProperties")});var Og=N(()=>{"use strict";_ae();Dae();Lae()});function gPe(t){return yPe(t)?t.LABEL:t.name}function yPe(t){return yi(t.LABEL)&&t.LABEL!==""}function Sk(t){return Je(t,Pg)}function Pg(t){function e(r){return Je(r,Pg)}if(o(e,"convertDefinition"),t instanceof on){let r={type:"NonTerminal",name:t.nonTerminalName,idx:t.idx};return yi(t.label)&&(r.label=t.label),r}else{if(t instanceof Dn)return{type:"Alternative",definition:e(t.definition)};if(t instanceof ln)return{type:"Option",idx:t.idx,definition:e(t.definition)};if(t instanceof Ln)return{type:"RepetitionMandatory",idx:t.idx,definition:e(t.definition)};if(t instanceof Rn)return{type:"RepetitionMandatoryWithSeparator",idx:t.idx,separator:Pg(new kr({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof wn)return{type:"RepetitionWithSeparator",idx:t.idx,separator:Pg(new kr({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof Or)return{type:"Repetition",idx:t.idx,definition:e(t.definition)};if(t instanceof Tn)return{type:"Alternation",idx:t.idx,definition:e(t.definition)};if(t instanceof kr){let r={type:"Terminal",name:t.terminalType.name,label:gPe(t.terminalType),idx:t.idx};yi(t.label)&&(r.terminalLabel=t.label);let n=t.terminalType.PATTERN;return t.terminalType.PATTERN&&(r.pattern=zo(n)?n.source:n),r}else{if(t instanceof as)return{type:"Rule",name:t.name,orgText:t.orgText,definition:e(t.definition)};throw Error("non exhaustive match")}}}var oo,on,as,Dn,ln,Ln,Rn,Or,wn,Tn,kr,Ck=N(()=>{"use strict";qt();o(gPe,"tokenLabel");o(yPe,"hasTokenLabel");oo=class{static{o(this,"AbstractProduction")}get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){this._definition=e}accept(e){e.visit(this),Ae(this.definition,r=>{r.accept(e)})}},on=class extends oo{static{o(this,"NonTerminal")}constructor(e){super([]),this.idx=1,ma(this,Os(e,r=>r!==void 0))}set definition(e){}get definition(){return this.referencedRule!==void 0?this.referencedRule.definition:[]}accept(e){e.visit(this)}},as=class extends oo{static{o(this,"Rule")}constructor(e){super(e.definition),this.orgText="",ma(this,Os(e,r=>r!==void 0))}},Dn=class extends oo{static{o(this,"Alternative")}constructor(e){super(e.definition),this.ignoreAmbiguities=!1,ma(this,Os(e,r=>r!==void 0))}},ln=class extends oo{static{o(this,"Option")}constructor(e){super(e.definition),this.idx=1,ma(this,Os(e,r=>r!==void 0))}},Ln=class extends oo{static{o(this,"RepetitionMandatory")}constructor(e){super(e.definition),this.idx=1,ma(this,Os(e,r=>r!==void 0))}},Rn=class extends oo{static{o(this,"RepetitionMandatoryWithSeparator")}constructor(e){super(e.definition),this.idx=1,ma(this,Os(e,r=>r!==void 0))}},Or=class extends oo{static{o(this,"Repetition")}constructor(e){super(e.definition),this.idx=1,ma(this,Os(e,r=>r!==void 0))}},wn=class extends oo{static{o(this,"RepetitionWithSeparator")}constructor(e){super(e.definition),this.idx=1,ma(this,Os(e,r=>r!==void 0))}},Tn=class extends oo{static{o(this,"Alternation")}get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){super(e.definition),this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,ma(this,Os(e,r=>r!==void 0))}},kr=class{static{o(this,"Terminal")}constructor(e){this.idx=1,ma(this,Os(e,r=>r!==void 0))}accept(e){e.visit(this)}};o(Sk,"serializeGrammar");o(Pg,"serializeProduction")});var ss,Rae=N(()=>{"use strict";Ck();ss=class{static{o(this,"GAstVisitor")}visit(e){let r=e;switch(r.constructor){case on:return this.visitNonTerminal(r);case Dn:return this.visitAlternative(r);case ln:return this.visitOption(r);case Ln:return this.visitRepetitionMandatory(r);case Rn:return this.visitRepetitionMandatoryWithSeparator(r);case wn:return this.visitRepetitionWithSeparator(r);case Or:return this.visitRepetition(r);case Tn:return this.visitAlternation(r);case kr:return this.visitTerminal(r);case as:return this.visitRule(r);default:throw Error("non exhaustive match")}}visitNonTerminal(e){}visitAlternative(e){}visitOption(e){}visitRepetition(e){}visitRepetitionMandatory(e){}visitRepetitionMandatoryWithSeparator(e){}visitRepetitionWithSeparator(e){}visitAlternation(e){}visitTerminal(e){}visitRule(e){}}});function yN(t){return t instanceof Dn||t instanceof ln||t instanceof Or||t instanceof Ln||t instanceof Rn||t instanceof wn||t instanceof kr||t instanceof as}function sp(t,e=[]){return t instanceof ln||t instanceof Or||t instanceof wn?!0:t instanceof Tn?A2(t.definition,n=>sp(n,e)):t instanceof on&&qn(e,t)?!1:t instanceof oo?(t instanceof on&&e.push(t),Ma(t.definition,n=>sp(n,e))):!1}function vN(t){return t instanceof Tn}function Bs(t){if(t instanceof on)return"SUBRULE";if(t instanceof ln)return"OPTION";if(t instanceof Tn)return"OR";if(t instanceof Ln)return"AT_LEAST_ONE";if(t instanceof Rn)return"AT_LEAST_ONE_SEP";if(t instanceof wn)return"MANY_SEP";if(t instanceof Or)return"MANY";if(t instanceof kr)return"CONSUME";throw Error("non exhaustive match")}var Nae=N(()=>{"use strict";qt();Ck();o(yN,"isSequenceProd");o(sp,"isOptionalProd");o(vN,"isBranchingProd");o(Bs,"getProductionDslName")});var os=N(()=>{"use strict";Ck();Rae();Nae()});function Mae(t,e,r){return[new ln({definition:[new kr({terminalType:t.separator})].concat(t.definition)})].concat(e,r)}var Ou,Ak=N(()=>{"use strict";qt();os();Ou=class{static{o(this,"RestWalker")}walk(e,r=[]){Ae(e.definition,(n,i)=>{let a=gi(e.definition,i+1);if(n instanceof on)this.walkProdRef(n,a,r);else if(n instanceof kr)this.walkTerminal(n,a,r);else if(n instanceof Dn)this.walkFlat(n,a,r);else if(n instanceof ln)this.walkOption(n,a,r);else if(n instanceof Ln)this.walkAtLeastOne(n,a,r);else if(n instanceof Rn)this.walkAtLeastOneSep(n,a,r);else if(n instanceof wn)this.walkManySep(n,a,r);else if(n instanceof Or)this.walkMany(n,a,r);else if(n instanceof Tn)this.walkOr(n,a,r);else throw Error("non exhaustive match")})}walkTerminal(e,r,n){}walkProdRef(e,r,n){}walkFlat(e,r,n){let i=r.concat(n);this.walk(e,i)}walkOption(e,r,n){let i=r.concat(n);this.walk(e,i)}walkAtLeastOne(e,r,n){let i=[new ln({definition:e.definition})].concat(r,n);this.walk(e,i)}walkAtLeastOneSep(e,r,n){let i=Mae(e,r,n);this.walk(e,i)}walkMany(e,r,n){let i=[new ln({definition:e.definition})].concat(r,n);this.walk(e,i)}walkManySep(e,r,n){let i=Mae(e,r,n);this.walk(e,i)}walkOr(e,r,n){let i=r.concat(n);Ae(e.definition,a=>{let s=new Dn({definition:[a]});this.walk(s,i)})}};o(Mae,"restForRepetitionWithSeparator")});function op(t){if(t instanceof on)return op(t.referencedRule);if(t instanceof kr)return bPe(t);if(yN(t))return vPe(t);if(vN(t))return xPe(t);throw Error("non exhaustive match")}function vPe(t){let e=[],r=t.definition,n=0,i=r.length>n,a,s=!0;for(;i&&s;)a=r[n],s=sp(a),e=e.concat(op(a)),n=n+1,i=r.length>n;return Bm(e)}function xPe(t){let e=Je(t.definition,r=>op(r));return Bm(qr(e))}function bPe(t){return[t.terminalType]}var xN=N(()=>{"use strict";qt();os();o(op,"first");o(vPe,"firstForSequence");o(xPe,"firstForBranching");o(bPe,"firstForTerminal")});var _k,bN=N(()=>{"use strict";_k="_~IN~_"});function Iae(t){let e={};return Ae(t,r=>{let n=new wN(r).startWalking();ma(e,n)}),e}function wPe(t,e){return t.name+e+_k}var wN,Oae=N(()=>{"use strict";Ak();xN();qt();bN();os();wN=class extends Ou{static{o(this,"ResyncFollowsWalker")}constructor(e){super(),this.topProd=e,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(e,r,n){}walkProdRef(e,r,n){let i=wPe(e.referencedRule,e.idx)+this.topProd.name,a=r.concat(n),s=new Dn({definition:a}),l=op(s);this.follows[i]=l}};o(Iae,"computeAllProdsFollows");o(wPe,"buildBetweenProdsFollowPrefix")});function Bg(t){let e=t.toString();if(Dk.hasOwnProperty(e))return Dk[e];{let r=TPe.pattern(e);return Dk[e]=r,r}}function Pae(){Dk={}}var Dk,TPe,Lk=N(()=>{"use strict";j2();Dk={},TPe=new np;o(Bg,"getRegExpAst");o(Pae,"clearRegExpParserCache")});function $ae(t,e=!1){try{let r=Bg(t);return TN(r.value,{},r.flags.ignoreCase)}catch(r){if(r.message===Fae)e&&ex(`${nx} Unable to optimize: < ${t.toString()} > + Complement Sets cannot be automatically optimized. + This will disable the lexer's first char optimizations. + See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#COMPLEMENT for details.`);else{let n="";e&&(n=` + This will disable the lexer's first char optimizations. + See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details.`),Ig(`${nx} + Failed parsing: < ${t.toString()} > + Using the @chevrotain/regexp-to-ast library + Please open an issue at: https://github.com/chevrotain/chevrotain/issues`+n)}}return[]}function TN(t,e,r){switch(t.type){case"Disjunction":for(let i=0;i{if(typeof u=="number")Rk(u,e,r);else{let h=u;if(r===!0)for(let f=h.from;f<=h.to;f++)Rk(f,e,r);else{for(let f=h.from;f<=h.to&&f=Fg){let f=h.from>=Fg?h.from:Fg,d=h.to,p=Ic(f),m=Ic(d);for(let g=p;g<=m;g++)e[g]=g}}}});break;case"Group":TN(s.value,e,r);break;default:throw Error("Non Exhaustive Match")}let l=s.quantifier!==void 0&&s.quantifier.atLeast===0;if(s.type==="Group"&&kN(s)===!1||s.type!=="Group"&&l===!1)break}break;default:throw Error("non exhaustive match!")}return br(e)}function Rk(t,e,r){let n=Ic(t);e[n]=n,r===!0&&kPe(t,e)}function kPe(t,e){let r=String.fromCharCode(t),n=r.toUpperCase();if(n!==r){let i=Ic(n.charCodeAt(0));e[i]=i}else{let i=r.toLowerCase();if(i!==r){let a=Ic(i.charCodeAt(0));e[a]=a}}}function Bae(t,e){return ns(t.value,r=>{if(typeof r=="number")return qn(e,r);{let n=r;return ns(e,i=>n.from<=i&&i<=n.to)!==void 0}})}function kN(t){let e=t.quantifier;return e&&e.atLeast===0?!0:t.value?Pt(t.value)?Ma(t.value,kN):kN(t.value):!1}function Nk(t,e){if(e instanceof RegExp){let r=Bg(e),n=new EN(t);return n.visit(r),n.found}else return ns(e,r=>qn(t,r.charCodeAt(0)))!==void 0}var Fae,nx,EN,zae=N(()=>{"use strict";j2();qt();Og();Lk();SN();Fae="Complement Sets are not supported for first char optimization",nx=`Unable to use "first char" lexer optimizations: +`;o($ae,"getOptimizedStartCodesIndices");o(TN,"firstCharOptimizedIndices");o(Rk,"addOptimizedIdxToResult");o(kPe,"handleIgnoreCase");o(Bae,"findCode");o(kN,"isWholeOptional");EN=class extends Mc{static{o(this,"CharCodeFinder")}constructor(e){super(),this.targetCharCodes=e,this.found=!1}visitChildren(e){if(this.found!==!0){switch(e.type){case"Lookahead":this.visitLookahead(e);return;case"NegativeLookahead":this.visitNegativeLookahead(e);return}super.visitChildren(e)}}visitCharacter(e){qn(this.targetCharCodes,e.value)&&(this.found=!0)}visitSet(e){e.complement?Bae(e,this.targetCharCodes)===void 0&&(this.found=!0):Bae(e,this.targetCharCodes)!==void 0&&(this.found=!0)}};o(Nk,"canMatchCharCode")});function Uae(t,e){e=Qh(e,{useSticky:AN,debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r",` +`],tracer:o((b,w)=>w(),"tracer")});let r=e.tracer;r("initCharCodeToOptimizedIndexMap",()=>{GPe()});let n;r("Reject Lexer.NA",()=>{n=Jh(t,b=>b[lp]===Xn.NA)});let i=!1,a;r("Transform Patterns",()=>{i=!1,a=Je(n,b=>{let w=b[lp];if(zo(w)){let C=w.source;return C.length===1&&C!=="^"&&C!=="$"&&C!=="."&&!w.ignoreCase?C:C.length===2&&C[0]==="\\"&&!qn(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],C[1])?C[1]:e.useSticky?Vae(w):Gae(w)}else{if(Si(w))return i=!0,{exec:w};if(typeof w=="object")return i=!0,w;if(typeof w=="string"){if(w.length===1)return w;{let C=w.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),T=new RegExp(C);return e.useSticky?Vae(T):Gae(T)}}else throw Error("non exhaustive match")}})});let s,l,u,h,f;r("misc mapping",()=>{s=Je(n,b=>b.tokenTypeIdx),l=Je(n,b=>{let w=b.GROUP;if(w!==Xn.SKIPPED){if(yi(w))return w;if(pr(w))return!1;throw Error("non exhaustive match")}}),u=Je(n,b=>{let w=b.LONGER_ALT;if(w)return Pt(w)?Je(w,T=>UT(n,T)):[UT(n,w)]}),h=Je(n,b=>b.PUSH_MODE),f=Je(n,b=>Bt(b,"POP_MODE"))});let d;r("Line Terminator Handling",()=>{let b=Qae(e.lineTerminatorCharacters);d=Je(n,w=>!1),e.positionTracking!=="onlyOffset"&&(d=Je(n,w=>Bt(w,"LINE_BREAKS")?!!w.LINE_BREAKS:Kae(w,b)===!1&&Nk(b,w.PATTERN)))});let p,m,g,y;r("Misc Mapping #2",()=>{p=Je(n,Xae),m=Je(a,$Pe),g=Xr(n,(b,w)=>{let C=w.GROUP;return yi(C)&&C!==Xn.SKIPPED&&(b[C]=[]),b},{}),y=Je(a,(b,w)=>({pattern:a[w],longerAlt:u[w],canLineTerminator:d[w],isCustom:p[w],short:m[w],group:l[w],push:h[w],pop:f[w],tokenTypeIdx:s[w],tokenType:n[w]}))});let v=!0,x=[];return e.safeMode||r("First Char Optimization",()=>{x=Xr(n,(b,w,C)=>{if(typeof w.PATTERN=="string"){let T=w.PATTERN.charCodeAt(0),E=Ic(T);CN(b,E,y[C])}else if(Pt(w.START_CHARS_HINT)){let T;Ae(w.START_CHARS_HINT,E=>{let A=typeof E=="string"?E.charCodeAt(0):E,S=Ic(A);T!==S&&(T=S,CN(b,S,y[C]))})}else if(zo(w.PATTERN))if(w.PATTERN.unicode)v=!1,e.ensureOptimizations&&Ig(`${nx} Unable to analyze < ${w.PATTERN.toString()} > pattern. + The regexp unicode flag is not currently supported by the regexp-to-ast library. + This will disable the lexer's first char optimizations. + For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE`);else{let T=$ae(w.PATTERN,e.ensureOptimizations);ur(T)&&(v=!1),Ae(T,E=>{CN(b,E,y[C])})}else e.ensureOptimizations&&Ig(`${nx} TokenType: <${w.name}> is using a custom token pattern without providing parameter. + This will disable the lexer's first char optimizations. + For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`),v=!1;return b},[])}),{emptyGroups:g,patternIdxToConfig:y,charCodeToPatternIdxToConfig:x,hasCustom:i,canBeOptimized:v}}function Hae(t,e){let r=[],n=SPe(t);r=r.concat(n.errors);let i=CPe(n.valid),a=i.valid;return r=r.concat(i.errors),r=r.concat(EPe(a)),r=r.concat(IPe(a)),r=r.concat(OPe(a,e)),r=r.concat(PPe(a)),r}function EPe(t){let e=[],r=Yr(t,n=>zo(n[lp]));return e=e.concat(_Pe(r)),e=e.concat(RPe(r)),e=e.concat(NPe(r)),e=e.concat(MPe(r)),e=e.concat(DPe(r)),e}function SPe(t){let e=Yr(t,i=>!Bt(i,lp)),r=Je(e,i=>({message:"Token Type: ->"+i.name+"<- missing static 'PATTERN' property",type:Yn.MISSING_PATTERN,tokenTypes:[i]})),n=Zh(t,e);return{errors:r,valid:n}}function CPe(t){let e=Yr(t,i=>{let a=i[lp];return!zo(a)&&!Si(a)&&!Bt(a,"exec")&&!yi(a)}),r=Je(e,i=>({message:"Token Type: ->"+i.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:Yn.INVALID_PATTERN,tokenTypes:[i]})),n=Zh(t,e);return{errors:r,valid:n}}function _Pe(t){class e extends Mc{static{o(this,"EndAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitEndAnchor(a){this.found=!0}}let r=Yr(t,i=>{let a=i.PATTERN;try{let s=Bg(a),l=new e;return l.visit(s),l.found}catch{return APe.test(a.source)}});return Je(r,i=>({message:`Unexpected RegExp Anchor Error: + Token Type: ->`+i.name+`<- static 'PATTERN' cannot contain end of input anchor '$' + See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:Yn.EOI_ANCHOR_FOUND,tokenTypes:[i]}))}function DPe(t){let e=Yr(t,n=>n.PATTERN.test(""));return Je(e,n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' must not match an empty string",type:Yn.EMPTY_MATCH_PATTERN,tokenTypes:[n]}))}function RPe(t){class e extends Mc{static{o(this,"StartAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitStartAnchor(a){this.found=!0}}let r=Yr(t,i=>{let a=i.PATTERN;try{let s=Bg(a),l=new e;return l.visit(s),l.found}catch{return LPe.test(a.source)}});return Je(r,i=>({message:`Unexpected RegExp Anchor Error: + Token Type: ->`+i.name+`<- static 'PATTERN' cannot contain start of input anchor '^' + See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:Yn.SOI_ANCHOR_FOUND,tokenTypes:[i]}))}function NPe(t){let e=Yr(t,n=>{let i=n[lp];return i instanceof RegExp&&(i.multiline||i.global)});return Je(e,n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:Yn.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[n]}))}function MPe(t){let e=[],r=Je(t,a=>Xr(t,(s,l)=>(a.PATTERN.source===l.PATTERN.source&&!qn(e,l)&&l.PATTERN!==Xn.NA&&(e.push(l),s.push(l)),s),[]));r=Tc(r);let n=Yr(r,a=>a.length>1);return Je(n,a=>{let s=Je(a,u=>u.name);return{message:`The same RegExp pattern ->${ia(a).PATTERN}<-has been used in all of the following Token Types: ${s.join(", ")} <-`,type:Yn.DUPLICATE_PATTERNS_FOUND,tokenTypes:a}})}function IPe(t){let e=Yr(t,n=>{if(!Bt(n,"GROUP"))return!1;let i=n.GROUP;return i!==Xn.SKIPPED&&i!==Xn.NA&&!yi(i)});return Je(e,n=>({message:"Token Type: ->"+n.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:Yn.INVALID_GROUP_TYPE_FOUND,tokenTypes:[n]}))}function OPe(t,e){let r=Yr(t,i=>i.PUSH_MODE!==void 0&&!qn(e,i.PUSH_MODE));return Je(r,i=>({message:`Token Type: ->${i.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${i.PUSH_MODE}<-which does not exist`,type:Yn.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[i]}))}function PPe(t){let e=[],r=Xr(t,(n,i,a)=>{let s=i.PATTERN;return s===Xn.NA||(yi(s)?n.push({str:s,idx:a,tokenType:i}):zo(s)&&FPe(s)&&n.push({str:s.source,idx:a,tokenType:i})),n},[]);return Ae(t,(n,i)=>{Ae(r,({str:a,idx:s,tokenType:l})=>{if(i${l.name}<- can never be matched. +Because it appears AFTER the Token Type ->${n.name}<-in the lexer's definition. +See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;e.push({message:u,type:Yn.UNREACHABLE_PATTERN,tokenTypes:[n,l]})}})}),e}function BPe(t,e){if(zo(e)){let r=e.exec(t);return r!==null&&r.index===0}else{if(Si(e))return e(t,0,[],{});if(Bt(e,"exec"))return e.exec(t,0,[],{});if(typeof e=="string")return e===t;throw Error("non exhaustive match")}}function FPe(t){return ns([".","\\","[","]","|","^","$","(",")","?","*","+","{"],r=>t.source.indexOf(r)!==-1)===void 0}function Gae(t){let e=t.ignoreCase?"i":"";return new RegExp(`^(?:${t.source})`,e)}function Vae(t){let e=t.ignoreCase?"iy":"y";return new RegExp(`${t.source}`,e)}function Wae(t,e,r){let n=[];return Bt(t,$g)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+$g+`> property in its definition +`,type:Yn.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),Bt(t,Mk)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+Mk+`> property in its definition +`,type:Yn.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),Bt(t,Mk)&&Bt(t,$g)&&!Bt(t.modes,t.defaultMode)&&n.push({message:`A MultiMode Lexer cannot be initialized with a ${$g}: <${t.defaultMode}>which does not exist +`,type:Yn.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),Bt(t,Mk)&&Ae(t.modes,(i,a)=>{Ae(i,(s,l)=>{if(pr(s))n.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${a}> at index: <${l}> +`,type:Yn.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED});else if(Bt(s,"LONGER_ALT")){let u=Pt(s.LONGER_ALT)?s.LONGER_ALT:[s.LONGER_ALT];Ae(u,h=>{!pr(h)&&!qn(i,h)&&n.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${h.name}> on token <${s.name}> outside of mode <${a}> +`,type:Yn.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})})}})}),n}function qae(t,e,r){let n=[],i=!1,a=Tc(qr(br(t.modes))),s=Jh(a,u=>u[lp]===Xn.NA),l=Qae(r);return e&&Ae(s,u=>{let h=Kae(u,l);if(h!==!1){let d={message:zPe(u,h),type:h.issue,tokenType:u};n.push(d)}else Bt(u,"LINE_BREAKS")?u.LINE_BREAKS===!0&&(i=!0):Nk(l,u.PATTERN)&&(i=!0)}),e&&!i&&n.push({message:`Warning: No LINE_BREAKS Found. + This Lexer has been defined to track line and column information, + But none of the Token Types can be identified as matching a line terminator. + See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#LINE_BREAKS + for details.`,type:Yn.NO_LINE_BREAKS_FLAGS}),n}function Yae(t){let e={},r=zr(t);return Ae(r,n=>{let i=t[n];if(Pt(i))e[n]=[];else throw Error("non exhaustive match")}),e}function Xae(t){let e=t.PATTERN;if(zo(e))return!1;if(Si(e))return!0;if(Bt(e,"exec"))return!0;if(yi(e))return!1;throw Error("non exhaustive match")}function $Pe(t){return yi(t)&&t.length===1?t.charCodeAt(0):!1}function Kae(t,e){if(Bt(t,"LINE_BREAKS"))return!1;if(zo(t.PATTERN)){try{Nk(e,t.PATTERN)}catch(r){return{issue:Yn.IDENTIFY_TERMINATOR,errMsg:r.message}}return!1}else{if(yi(t.PATTERN))return!1;if(Xae(t))return{issue:Yn.CUSTOM_LINE_BREAK};throw Error("non exhaustive match")}}function zPe(t,e){if(e.issue===Yn.IDENTIFY_TERMINATOR)return`Warning: unable to identify line terminator usage in pattern. + The problem is in the <${t.name}> Token Type + Root cause: ${e.errMsg}. + For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;if(e.issue===Yn.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the option. + The problem is in the <${t.name}> Token Type + For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK`;throw Error("non exhaustive match")}function Qae(t){return Je(t,r=>yi(r)?r.charCodeAt(0):r)}function CN(t,e,r){t[e]===void 0?t[e]=[r]:t[e].push(r)}function Ic(t){return t255?255+~~(t/255):t}}var lp,$g,Mk,AN,APe,LPe,jae,Fg,Ik,SN=N(()=>{"use strict";j2();ix();qt();Og();zae();Lk();lp="PATTERN",$g="defaultMode",Mk="modes",AN=typeof new RegExp("(?:)").sticky=="boolean";o(Uae,"analyzeTokenTypes");o(Hae,"validatePatterns");o(EPe,"validateRegExpPattern");o(SPe,"findMissingPatterns");o(CPe,"findInvalidPatterns");APe=/[^\\][$]/;o(_Pe,"findEndOfInputAnchor");o(DPe,"findEmptyMatchRegExps");LPe=/[^\\[][\^]|^\^/;o(RPe,"findStartOfInputAnchor");o(NPe,"findUnsupportedFlags");o(MPe,"findDuplicatePatterns");o(IPe,"findInvalidGroupType");o(OPe,"findModesThatDoNotExist");o(PPe,"findUnreachablePatterns");o(BPe,"testTokenType");o(FPe,"noMetaChar");o(Gae,"addStartOfInput");o(Vae,"addStickyFlag");o(Wae,"performRuntimeChecks");o(qae,"performWarningRuntimeChecks");o(Yae,"cloneEmptyGroups");o(Xae,"isCustomPattern");o($Pe,"isShortPattern");jae={test:o(function(t){let e=t.length;for(let r=this.lastIndex;r{r.isParent=r.categoryMatches.length>0})}function VPe(t){let e=an(t),r=t,n=!0;for(;n;){r=Tc(qr(Je(r,a=>a.CATEGORIES)));let i=Zh(r,e);e=e.concat(i),ur(i)?n=!1:r=i}return e}function UPe(t){Ae(t,e=>{_N(e)||(ese[Zae]=e,e.tokenTypeIdx=Zae++),Jae(e)&&!Pt(e.CATEGORIES)&&(e.CATEGORIES=[e.CATEGORIES]),Jae(e)||(e.CATEGORIES=[]),qPe(e)||(e.categoryMatches=[]),YPe(e)||(e.categoryMatchesMap={})})}function HPe(t){Ae(t,e=>{e.categoryMatches=[],Ae(e.categoryMatchesMap,(r,n)=>{e.categoryMatches.push(ese[n].tokenTypeIdx)})})}function WPe(t){Ae(t,e=>{tse([],e)})}function tse(t,e){Ae(t,r=>{e.categoryMatchesMap[r.tokenTypeIdx]=!0}),Ae(e.CATEGORIES,r=>{let n=t.concat(e);qn(n,r)||tse(n,r)})}function _N(t){return Bt(t,"tokenTypeIdx")}function Jae(t){return Bt(t,"CATEGORIES")}function qPe(t){return Bt(t,"categoryMatches")}function YPe(t){return Bt(t,"categoryMatchesMap")}function rse(t){return Bt(t,"tokenTypeIdx")}var Zae,ese,cp=N(()=>{"use strict";qt();o(Pu,"tokenStructuredMatcher");o(zg,"tokenStructuredMatcherNoCategories");Zae=1,ese={};o(Bu,"augmentTokenTypes");o(VPe,"expandCategories");o(UPe,"assignTokenDefaultProps");o(HPe,"assignCategoriesTokensProp");o(WPe,"assignCategoriesMapProp");o(tse,"singleAssignCategoriesToksMap");o(_N,"hasShortKeyProperty");o(Jae,"hasCategoriesProperty");o(qPe,"hasExtendingTokensTypesProperty");o(YPe,"hasExtendingTokensTypesMapProperty");o(rse,"isTokenType")});var Gg,DN=N(()=>{"use strict";Gg={buildUnableToPopLexerModeMessage(t){return`Unable to pop Lexer Mode after encountering Token ->${t.image}<- The Mode Stack is empty`},buildUnexpectedCharactersMessage(t,e,r,n,i){return`unexpected character: ->${t.charAt(e)}<- at offset: ${e}, skipped ${r} characters.`}}});var Yn,ax,Xn,ix=N(()=>{"use strict";SN();qt();Og();cp();DN();Lk();(function(t){t[t.MISSING_PATTERN=0]="MISSING_PATTERN",t[t.INVALID_PATTERN=1]="INVALID_PATTERN",t[t.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",t[t.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",t[t.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",t[t.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",t[t.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",t[t.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",t[t.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",t[t.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",t[t.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",t[t.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",t[t.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",t[t.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",t[t.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",t[t.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",t[t.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK",t[t.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]="MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE"})(Yn||(Yn={}));ax={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:[` +`,"\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:Gg,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(ax);Xn=class{static{o(this,"Lexer")}constructor(e,r=ax){if(this.lexerDefinition=e,this.lexerDefinitionErrors=[],this.lexerDefinitionWarning=[],this.patternIdxToConfig={},this.charCodeToPatternIdxToConfig={},this.modes=[],this.emptyGroups={},this.trackStartLines=!0,this.trackEndLines=!0,this.hasCustom=!1,this.canModeBeOptimized={},this.TRACE_INIT=(i,a)=>{if(this.traceInitPerf===!0){this.traceInitIndent++;let s=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent <${i}>`);let{time:l,value:u}=tx(a),h=l>10?console.warn:console.log;return this.traceInitIndent time: ${l}ms`),this.traceInitIndent--,u}else return a()},typeof r=="boolean")throw Error(`The second argument to the Lexer constructor is now an ILexerConfig Object. +a boolean 2nd argument is no longer supported`);this.config=ma({},ax,r);let n=this.config.traceInitPerf;n===!0?(this.traceInitMaxIdent=1/0,this.traceInitPerf=!0):typeof n=="number"&&(this.traceInitMaxIdent=n,this.traceInitPerf=!0),this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",()=>{let i,a=!0;this.TRACE_INIT("Lexer Config handling",()=>{if(this.config.lineTerminatorsPattern===ax.lineTerminatorsPattern)this.config.lineTerminatorsPattern=jae;else if(this.config.lineTerminatorCharacters===ax.lineTerminatorCharacters)throw Error(`Error: Missing property on the Lexer config. + For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS`);if(r.safeMode&&r.ensureOptimizations)throw Error('"safeMode" and "ensureOptimizations" flags are mutually exclusive.');this.trackStartLines=/full|onlyStart/i.test(this.config.positionTracking),this.trackEndLines=/full/i.test(this.config.positionTracking),Pt(e)?i={modes:{defaultMode:an(e)},defaultMode:$g}:(a=!1,i=an(e))}),this.config.skipValidations===!1&&(this.TRACE_INIT("performRuntimeChecks",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(Wae(i,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT("performWarningRuntimeChecks",()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(qae(i,this.trackStartLines,this.config.lineTerminatorCharacters))})),i.modes=i.modes?i.modes:{},Ae(i.modes,(l,u)=>{i.modes[u]=Jh(l,h=>pr(h))});let s=zr(i.modes);if(Ae(i.modes,(l,u)=>{this.TRACE_INIT(`Mode: <${u}> processing`,()=>{if(this.modes.push(u),this.config.skipValidations===!1&&this.TRACE_INIT("validatePatterns",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(Hae(l,s))}),ur(this.lexerDefinitionErrors)){Bu(l);let h;this.TRACE_INIT("analyzeTokenTypes",()=>{h=Uae(l,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:r.positionTracking,ensureOptimizations:r.ensureOptimizations,safeMode:r.safeMode,tracer:this.TRACE_INIT})}),this.patternIdxToConfig[u]=h.patternIdxToConfig,this.charCodeToPatternIdxToConfig[u]=h.charCodeToPatternIdxToConfig,this.emptyGroups=ma({},this.emptyGroups,h.emptyGroups),this.hasCustom=h.hasCustom||this.hasCustom,this.canModeBeOptimized[u]=h.canBeOptimized}})}),this.defaultMode=i.defaultMode,!ur(this.lexerDefinitionErrors)&&!this.config.deferDefinitionErrorsHandling){let u=Je(this.lexerDefinitionErrors,h=>h.message).join(`----------------------- +`);throw new Error(`Errors detected in definition of Lexer: +`+u)}Ae(this.lexerDefinitionWarning,l=>{ex(l.message)}),this.TRACE_INIT("Choosing sub-methods implementations",()=>{if(AN?(this.chopInput=ta,this.match=this.matchWithTest):(this.updateLastIndex=ni,this.match=this.matchWithExec),a&&(this.handleModes=ni),this.trackStartLines===!1&&(this.computeNewColumn=ta),this.trackEndLines===!1&&(this.updateTokenEndLineColumnLocation=ni),/full/i.test(this.config.positionTracking))this.createTokenInstance=this.createFullToken;else if(/onlyStart/i.test(this.config.positionTracking))this.createTokenInstance=this.createStartOnlyToken;else if(/onlyOffset/i.test(this.config.positionTracking))this.createTokenInstance=this.createOffsetOnlyToken;else throw Error(`Invalid config option: "${this.config.positionTracking}"`);this.hasCustom?(this.addToken=this.addTokenUsingPush,this.handlePayload=this.handlePayloadWithCustom):(this.addToken=this.addTokenUsingMemberAccess,this.handlePayload=this.handlePayloadNoCustom)}),this.TRACE_INIT("Failed Optimization Warnings",()=>{let l=Xr(this.canModeBeOptimized,(u,h,f)=>(h===!1&&u.push(f),u),[]);if(r.ensureOptimizations&&!ur(l))throw Error(`Lexer Modes: < ${l.join(", ")} > cannot be optimized. + Disable the "ensureOptimizations" lexer config flag to silently ignore this and run the lexer in an un-optimized mode. + Or inspect the console log for details on how to resolve these issues.`)}),this.TRACE_INIT("clearRegExpParserCache",()=>{Pae()}),this.TRACE_INIT("toFastProperties",()=>{rx(this)})})}tokenize(e,r=this.defaultMode){if(!ur(this.lexerDefinitionErrors)){let i=Je(this.lexerDefinitionErrors,a=>a.message).join(`----------------------- +`);throw new Error(`Unable to Tokenize because Errors detected in definition of Lexer: +`+i)}return this.tokenizeInternal(e,r)}tokenizeInternal(e,r){let n,i,a,s,l,u,h,f,d,p,m,g,y,v,x,b,w=e,C=w.length,T=0,E=0,A=this.hasCustom?0:Math.floor(e.length/10),S=new Array(A),_=[],I=this.trackStartLines?1:void 0,D=this.trackStartLines?1:void 0,k=Yae(this.emptyGroups),L=this.trackStartLines,R=this.config.lineTerminatorsPattern,O=0,M=[],B=[],F=[],P=[];Object.freeze(P);let z;function $(){return M}o($,"getPossiblePatternsSlow");function H(le){let he=Ic(le),K=B[he];return K===void 0?P:K}o(H,"getPossiblePatternsOptimized");let Q=o(le=>{if(F.length===1&&le.tokenType.PUSH_MODE===void 0){let he=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(le);_.push({offset:le.startOffset,line:le.startLine,column:le.startColumn,length:le.image.length,message:he})}else{F.pop();let he=ga(F);M=this.patternIdxToConfig[he],B=this.charCodeToPatternIdxToConfig[he],O=M.length;let K=this.canModeBeOptimized[he]&&this.config.safeMode===!1;B&&K?z=H:z=$}},"pop_mode");function j(le){F.push(le),B=this.charCodeToPatternIdxToConfig[le],M=this.patternIdxToConfig[le],O=M.length,O=M.length;let he=this.canModeBeOptimized[le]&&this.config.safeMode===!1;B&&he?z=H:z=$}o(j,"push_mode"),j.call(this,r);let ie,ne=this.config.recoveryEnabled;for(;Tu.length){u=s,h=f,ie=se;break}}}break}}if(u!==null){if(d=u.length,p=ie.group,p!==void 0&&(m=ie.tokenTypeIdx,g=this.createTokenInstance(u,T,m,ie.tokenType,I,D,d),this.handlePayload(g,h),p===!1?E=this.addToken(S,E,g):k[p].push(g)),e=this.chopInput(e,d),T=T+d,D=this.computeNewColumn(D,d),L===!0&&ie.canLineTerminator===!0){let X=0,te,J;R.lastIndex=0;do te=R.test(u),te===!0&&(J=R.lastIndex-1,X++);while(te===!0);X!==0&&(I=I+X,D=d-J,this.updateTokenEndLineColumnLocation(g,p,J,X,I,D,d))}this.handleModes(ie,Q,j,g)}else{let X=T,te=I,J=D,se=ne===!1;for(;se===!1&&T{"use strict";qt();ix();cp();o(Fu,"tokenLabel");o(LN,"hasTokenLabel");XPe="parent",nse="categories",ise="label",ase="group",sse="push_mode",ose="pop_mode",lse="longer_alt",cse="line_breaks",use="start_chars_hint";o(of,"createToken");o(jPe,"createTokenInternal");lo=of({name:"EOF",pattern:Xn.NA});Bu([lo]);o($u,"createTokenInstance");o(sx,"tokenMatcher")});var zu,hse,Pl,Vg=N(()=>{"use strict";up();qt();os();zu={buildMismatchTokenMessage({expected:t,actual:e,previous:r,ruleName:n}){return`Expecting ${LN(t)?`--> ${Fu(t)} <--`:`token of type --> ${t.name} <--`} but found --> '${e.image}' <--`},buildNotAllInputParsedMessage({firstRedundant:t,ruleName:e}){return"Redundant input, expecting EOF but found: "+t.image},buildNoViableAltMessage({expectedPathsPerAlt:t,actual:e,previous:r,customUserDescription:n,ruleName:i}){let a="Expecting: ",l=` +but found: '`+ia(e).image+"'";if(n)return a+n+l;{let u=Xr(t,(p,m)=>p.concat(m),[]),h=Je(u,p=>`[${Je(p,m=>Fu(m)).join(", ")}]`),d=`one of these possible Token sequences: +${Je(h,(p,m)=>` ${m+1}. ${p}`).join(` +`)}`;return a+d+l}},buildEarlyExitMessage({expectedIterationPaths:t,actual:e,customUserDescription:r,ruleName:n}){let i="Expecting: ",s=` +but found: '`+ia(e).image+"'";if(r)return i+r+s;{let u=`expecting at least one iteration which starts with one of these possible Token sequences:: + <${Je(t,h=>`[${Je(h,f=>Fu(f)).join(",")}]`).join(" ,")}>`;return i+u+s}}};Object.freeze(zu);hse={buildRuleNotFoundError(t,e){return"Invalid grammar, reference to a rule which is not defined: ->"+e.nonTerminalName+`<- +inside top level rule: ->`+t.name+"<-"}},Pl={buildDuplicateFoundError(t,e){function r(f){return f instanceof kr?f.terminalType.name:f instanceof on?f.nonTerminalName:""}o(r,"getExtraProductionArgument");let n=t.name,i=ia(e),a=i.idx,s=Bs(i),l=r(i),u=a>0,h=`->${s}${u?a:""}<- ${l?`with argument: ->${l}<-`:""} + appears more than once (${e.length} times) in the top level rule: ->${n}<-. + For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES + `;return h=h.replace(/[ \t]+/g," "),h=h.replace(/\s\s+/g,` +`),h},buildNamespaceConflictError(t){return`Namespace conflict found in grammar. +The grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <${t.name}>. +To resolve this make sure each Terminal and Non-Terminal names are unique +This is easy to accomplish by using the convention that Terminal names start with an uppercase letter +and Non-Terminal names start with a lower case letter.`},buildAlternationPrefixAmbiguityError(t){let e=Je(t.prefixPath,i=>Fu(i)).join(", "),r=t.alternation.idx===0?"":t.alternation.idx;return`Ambiguous alternatives: <${t.ambiguityIndices.join(" ,")}> due to common lookahead prefix +in inside <${t.topLevelRule.name}> Rule, +<${e}> may appears as a prefix path in all these alternatives. +See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#COMMON_PREFIX +For Further details.`},buildAlternationAmbiguityError(t){let e=Je(t.prefixPath,i=>Fu(i)).join(", "),r=t.alternation.idx===0?"":t.alternation.idx,n=`Ambiguous Alternatives Detected: <${t.ambiguityIndices.join(" ,")}> in inside <${t.topLevelRule.name}> Rule, +<${e}> may appears as a prefix path in all these alternatives. +`;return n=n+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES +For Further details.`,n},buildEmptyRepetitionError(t){let e=Bs(t.repetition);return t.repetition.idx!==0&&(e+=t.repetition.idx),`The repetition <${e}> within Rule <${t.topLevelRule.name}> can never consume any tokens. +This could lead to an infinite loop.`},buildTokenNameError(t){return"deprecated"},buildEmptyAlternationError(t){return`Ambiguous empty alternative: <${t.emptyChoiceIdx+1}> in inside <${t.topLevelRule.name}> Rule. +Only the last alternative may be an empty alternative.`},buildTooManyAlternativesError(t){return`An Alternation cannot have more than 256 alternatives: + inside <${t.topLevelRule.name}> Rule. + has ${t.alternation.definition.length+1} alternatives.`},buildLeftRecursionError(t){let e=t.topLevelRule.name,r=Je(t.leftRecursionPath,a=>a.name),n=`${e} --> ${r.concat([e]).join(" --> ")}`;return`Left Recursion found in grammar. +rule: <${e}> can be invoked from itself (directly or indirectly) +without consuming any Tokens. The grammar path that causes this is: + ${n} + To fix this refactor your grammar to remove the left recursion. +see: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError(t){return"deprecated"},buildDuplicateRuleNameError(t){let e;return t.topLevelRule instanceof as?e=t.topLevelRule.name:e=t.topLevelRule,`Duplicate definition, rule: ->${e}<- is already defined in the grammar: ->${t.grammarName}<-`}}});function fse(t,e){let r=new RN(t,e);return r.resolveRefs(),r.errors}var RN,dse=N(()=>{"use strict";Fs();qt();os();o(fse,"resolveGrammar");RN=class extends ss{static{o(this,"GastRefResolverVisitor")}constructor(e,r){super(),this.nameToTopRule=e,this.errMsgProvider=r,this.errors=[]}resolveRefs(){Ae(br(this.nameToTopRule),e=>{this.currTopLevel=e,e.accept(this)})}visitNonTerminal(e){let r=this.nameToTopRule[e.nonTerminalName];if(r)e.referencedRule=r;else{let n=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,e);this.errors.push({message:n,type:zi.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:e.nonTerminalName})}}}});function Fk(t,e,r=[]){r=an(r);let n=[],i=0;function a(l){return l.concat(gi(t,i+1))}o(a,"remainingPathWith");function s(l){let u=Fk(a(l),e,r);return n.concat(u)}for(o(s,"getAlternativesForProd");r.length{ur(u.definition)===!1&&(n=s(u.definition))}),n;if(l instanceof kr)r.push(l.terminalType);else throw Error("non exhaustive match")}i++}return n.push({partialPath:r,suffixDef:gi(t,i)}),n}function $k(t,e,r,n){let i="EXIT_NONE_TERMINAL",a=[i],s="EXIT_ALTERNATIVE",l=!1,u=e.length,h=u-n-1,f=[],d=[];for(d.push({idx:-1,def:t,ruleStack:[],occurrenceStack:[]});!ur(d);){let p=d.pop();if(p===s){l&&ga(d).idx<=h&&d.pop();continue}let m=p.def,g=p.idx,y=p.ruleStack,v=p.occurrenceStack;if(ur(m))continue;let x=m[0];if(x===i){let b={idx:g,def:gi(m),ruleStack:Nu(y),occurrenceStack:Nu(v)};d.push(b)}else if(x instanceof kr)if(g=0;b--){let w=x.definition[b],C={idx:g,def:w.definition.concat(gi(m)),ruleStack:y,occurrenceStack:v};d.push(C),d.push(s)}else if(x instanceof Dn)d.push({idx:g,def:x.definition.concat(gi(m)),ruleStack:y,occurrenceStack:v});else if(x instanceof as)d.push(KPe(x,g,y,v));else throw Error("non exhaustive match")}return f}function KPe(t,e,r,n){let i=an(r);i.push(t.name);let a=an(n);return a.push(1),{idx:e,def:t.definition,ruleStack:i,occurrenceStack:a}}var NN,Ok,Ug,Pk,ox,Bk,lx,cx=N(()=>{"use strict";qt();xN();Ak();os();NN=class extends Ou{static{o(this,"AbstractNextPossibleTokensWalker")}constructor(e,r){super(),this.topProd=e,this.path=r,this.possibleTokTypes=[],this.nextProductionName="",this.nextProductionOccurrence=0,this.found=!1,this.isAtEndOfPath=!1}startWalking(){if(this.found=!1,this.path.ruleStack[0]!==this.topProd.name)throw Error("The path does not start with the walker's top Rule!");return this.ruleStack=an(this.path.ruleStack).reverse(),this.occurrenceStack=an(this.path.occurrenceStack).reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes}walk(e,r=[]){this.found||super.walk(e,r)}walkProdRef(e,r,n){if(e.referencedRule.name===this.nextProductionName&&e.idx===this.nextProductionOccurrence){let i=r.concat(n);this.updateExpectedNext(),this.walk(e.referencedRule,i)}}updateExpectedNext(){ur(this.ruleStack)?(this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0):(this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop())}},Ok=class extends NN{static{o(this,"NextAfterTokenWalker")}constructor(e,r){super(e,r),this.path=r,this.nextTerminalName="",this.nextTerminalOccurrence=0,this.nextTerminalName=this.path.lastTok.name,this.nextTerminalOccurrence=this.path.lastTokOccurrence}walkTerminal(e,r,n){if(this.isAtEndOfPath&&e.terminalType.name===this.nextTerminalName&&e.idx===this.nextTerminalOccurrence&&!this.found){let i=r.concat(n),a=new Dn({definition:i});this.possibleTokTypes=op(a),this.found=!0}}},Ug=class extends Ou{static{o(this,"AbstractNextTerminalAfterProductionWalker")}constructor(e,r){super(),this.topRule=e,this.occurrence=r,this.result={token:void 0,occurrence:void 0,isEndOfRule:void 0}}startWalking(){return this.walk(this.topRule),this.result}},Pk=class extends Ug{static{o(this,"NextTerminalAfterManyWalker")}walkMany(e,r,n){if(e.idx===this.occurrence){let i=ia(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof kr&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkMany(e,r,n)}},ox=class extends Ug{static{o(this,"NextTerminalAfterManySepWalker")}walkManySep(e,r,n){if(e.idx===this.occurrence){let i=ia(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof kr&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkManySep(e,r,n)}},Bk=class extends Ug{static{o(this,"NextTerminalAfterAtLeastOneWalker")}walkAtLeastOne(e,r,n){if(e.idx===this.occurrence){let i=ia(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof kr&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOne(e,r,n)}},lx=class extends Ug{static{o(this,"NextTerminalAfterAtLeastOneSepWalker")}walkAtLeastOneSep(e,r,n){if(e.idx===this.occurrence){let i=ia(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof kr&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOneSep(e,r,n)}};o(Fk,"possiblePathsFrom");o($k,"nextPossibleTokensAfter");o(KPe,"expandTopLevelRule")});function ux(t){if(t instanceof ln||t==="Option")return jn.OPTION;if(t instanceof Or||t==="Repetition")return jn.REPETITION;if(t instanceof Ln||t==="RepetitionMandatory")return jn.REPETITION_MANDATORY;if(t instanceof Rn||t==="RepetitionMandatoryWithSeparator")return jn.REPETITION_MANDATORY_WITH_SEPARATOR;if(t instanceof wn||t==="RepetitionWithSeparator")return jn.REPETITION_WITH_SEPARATOR;if(t instanceof Tn||t==="Alternation")return jn.ALTERNATION;throw Error("non exhaustive match")}function Gk(t){let{occurrence:e,rule:r,prodType:n,maxLookahead:i}=t,a=ux(n);return a===jn.ALTERNATION?Hg(e,r,i):Wg(e,r,a,i)}function mse(t,e,r,n,i,a){let s=Hg(t,e,r),l=wse(s)?zg:Pu;return a(s,n,l,i)}function gse(t,e,r,n,i,a){let s=Wg(t,e,i,r),l=wse(s)?zg:Pu;return a(s[0],l,n)}function yse(t,e,r,n){let i=t.length,a=Ma(t,s=>Ma(s,l=>l.length===1));if(e)return function(s){let l=Je(s,u=>u.GATE);for(let u=0;uqr(u)),l=Xr(s,(u,h,f)=>(Ae(h,d=>{Bt(u,d.tokenTypeIdx)||(u[d.tokenTypeIdx]=f),Ae(d.categoryMatches,p=>{Bt(u,p)||(u[p]=f)})}),u),{});return function(){let u=this.LA(1);return l[u.tokenTypeIdx]}}else return function(){for(let s=0;sa.length===1),i=t.length;if(n&&!r){let a=qr(t);if(a.length===1&&ur(a[0].categoryMatches)){let l=a[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===l}}else{let s=Xr(a,(l,u,h)=>(l[u.tokenTypeIdx]=!0,Ae(u.categoryMatches,f=>{l[f]=!0}),l),[]);return function(){let l=this.LA(1);return s[l.tokenTypeIdx]===!0}}}else return function(){e:for(let a=0;aFk([s],1)),n=pse(r.length),i=Je(r,s=>{let l={};return Ae(s,u=>{let h=MN(u.partialPath);Ae(h,f=>{l[f]=!0})}),l}),a=r;for(let s=1;s<=e;s++){let l=a;a=pse(l.length);for(let u=0;u{let x=MN(v.partialPath);Ae(x,b=>{i[u][b]=!0})})}}}}return n}function Hg(t,e,r,n){let i=new zk(t,jn.ALTERNATION,n);return e.accept(i),xse(i.result,r)}function Wg(t,e,r,n){let i=new zk(t,r);e.accept(i);let a=i.result,l=new IN(e,t,r).startWalking(),u=new Dn({definition:a}),h=new Dn({definition:l});return xse([u,h],n)}function Vk(t,e){e:for(let r=0;r{let i=e[n];return r===i||i.categoryMatchesMap[r.tokenTypeIdx]})}function wse(t){return Ma(t,e=>Ma(e,r=>Ma(r,n=>ur(n.categoryMatches))))}var jn,IN,zk,qg=N(()=>{"use strict";qt();cx();Ak();cp();os();(function(t){t[t.OPTION=0]="OPTION",t[t.REPETITION=1]="REPETITION",t[t.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",t[t.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",t[t.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",t[t.ALTERNATION=5]="ALTERNATION"})(jn||(jn={}));o(ux,"getProdType");o(Gk,"getLookaheadPaths");o(mse,"buildLookaheadFuncForOr");o(gse,"buildLookaheadFuncForOptionalProd");o(yse,"buildAlternativesLookAheadFunc");o(vse,"buildSingleAlternativeLookaheadFunction");IN=class extends Ou{static{o(this,"RestDefinitionFinderWalker")}constructor(e,r,n){super(),this.topProd=e,this.targetOccurrence=r,this.targetProdType=n}startWalking(){return this.walk(this.topProd),this.restDef}checkIsTarget(e,r,n,i){return e.idx===this.targetOccurrence&&this.targetProdType===r?(this.restDef=n.concat(i),!0):!1}walkOption(e,r,n){this.checkIsTarget(e,jn.OPTION,r,n)||super.walkOption(e,r,n)}walkAtLeastOne(e,r,n){this.checkIsTarget(e,jn.REPETITION_MANDATORY,r,n)||super.walkOption(e,r,n)}walkAtLeastOneSep(e,r,n){this.checkIsTarget(e,jn.REPETITION_MANDATORY_WITH_SEPARATOR,r,n)||super.walkOption(e,r,n)}walkMany(e,r,n){this.checkIsTarget(e,jn.REPETITION,r,n)||super.walkOption(e,r,n)}walkManySep(e,r,n){this.checkIsTarget(e,jn.REPETITION_WITH_SEPARATOR,r,n)||super.walkOption(e,r,n)}},zk=class extends ss{static{o(this,"InsideDefinitionFinderVisitor")}constructor(e,r,n){super(),this.targetOccurrence=e,this.targetProdType=r,this.targetRef=n,this.result=[]}checkIsTarget(e,r){e.idx===this.targetOccurrence&&this.targetProdType===r&&(this.targetRef===void 0||e===this.targetRef)&&(this.result=e.definition)}visitOption(e){this.checkIsTarget(e,jn.OPTION)}visitRepetition(e){this.checkIsTarget(e,jn.REPETITION)}visitRepetitionMandatory(e){this.checkIsTarget(e,jn.REPETITION_MANDATORY)}visitRepetitionMandatoryWithSeparator(e){this.checkIsTarget(e,jn.REPETITION_MANDATORY_WITH_SEPARATOR)}visitRepetitionWithSeparator(e){this.checkIsTarget(e,jn.REPETITION_WITH_SEPARATOR)}visitAlternation(e){this.checkIsTarget(e,jn.ALTERNATION)}};o(pse,"initializeArrayOfArrays");o(MN,"pathToHashKeys");o(QPe,"isUniquePrefixHash");o(xse,"lookAheadSequenceFromAlternatives");o(Hg,"getLookaheadPathsForOr");o(Wg,"getLookaheadPathsForOptionalProd");o(Vk,"containsPath");o(bse,"isStrictPrefixOfPath");o(wse,"areTokenCategoriesNotUsed")});function Tse(t){let e=t.lookaheadStrategy.validate({rules:t.rules,tokenTypes:t.tokenTypes,grammarName:t.grammarName});return Je(e,r=>Object.assign({type:zi.CUSTOM_LOOKAHEAD_VALIDATION},r))}function kse(t,e,r,n){let i=ya(t,u=>ZPe(u,r)),a=iBe(t,e,r),s=ya(t,u=>tBe(u,r)),l=ya(t,u=>eBe(u,t,n,r));return i.concat(a,s,l)}function ZPe(t,e){let r=new ON;t.accept(r);let n=r.allProductions,i=IL(n,JPe),a=Os(i,l=>l.length>1);return Je(br(a),l=>{let u=ia(l),h=e.buildDuplicateFoundError(t,l),f=Bs(u),d={message:h,type:zi.DUPLICATE_PRODUCTIONS,ruleName:t.name,dslName:f,occurrence:u.idx},p=Ese(u);return p&&(d.parameter=p),d})}function JPe(t){return`${Bs(t)}_#_${t.idx}_#_${Ese(t)}`}function Ese(t){return t instanceof kr?t.terminalType.name:t instanceof on?t.nonTerminalName:""}function eBe(t,e,r,n){let i=[];if(Xr(e,(s,l)=>l.name===t.name?s+1:s,0)>1){let s=n.buildDuplicateRuleNameError({topLevelRule:t,grammarName:r});i.push({message:s,type:zi.DUPLICATE_RULE_NAME,ruleName:t.name})}return i}function Sse(t,e,r){let n=[],i;return qn(e,t)||(i=`Invalid rule override, rule: ->${t}<- cannot be overridden in the grammar: ->${r}<-as it is not defined in any of the super grammars `,n.push({message:i,type:zi.INVALID_RULE_OVERRIDE,ruleName:t})),n}function BN(t,e,r,n=[]){let i=[],a=Uk(e.definition);if(ur(a))return[];{let s=t.name;qn(a,t)&&i.push({message:r.buildLeftRecursionError({topLevelRule:t,leftRecursionPath:n}),type:zi.LEFT_RECURSION,ruleName:s});let u=Zh(a,n.concat([t])),h=ya(u,f=>{let d=an(n);return d.push(f),BN(t,f,r,d)});return i.concat(h)}}function Uk(t){let e=[];if(ur(t))return e;let r=ia(t);if(r instanceof on)e.push(r.referencedRule);else if(r instanceof Dn||r instanceof ln||r instanceof Ln||r instanceof Rn||r instanceof wn||r instanceof Or)e=e.concat(Uk(r.definition));else if(r instanceof Tn)e=qr(Je(r.definition,a=>Uk(a.definition)));else if(!(r instanceof kr))throw Error("non exhaustive match");let n=sp(r),i=t.length>1;if(n&&i){let a=gi(t);return e.concat(Uk(a))}else return e}function Cse(t,e){let r=new hx;t.accept(r);let n=r.alternations;return ya(n,a=>{let s=Nu(a.definition);return ya(s,(l,u)=>{let h=$k([l],[],Pu,1);return ur(h)?[{message:e.buildEmptyAlternationError({topLevelRule:t,alternation:a,emptyChoiceIdx:u}),type:zi.NONE_LAST_EMPTY_ALT,ruleName:t.name,occurrence:a.idx,alternative:u+1}]:[]})})}function Ase(t,e,r){let n=new hx;t.accept(n);let i=n.alternations;return i=Jh(i,s=>s.ignoreAmbiguities===!0),ya(i,s=>{let l=s.idx,u=s.maxLookahead||e,h=Hg(l,t,u,s),f=rBe(h,s,t,r),d=nBe(h,s,t,r);return f.concat(d)})}function tBe(t,e){let r=new hx;t.accept(r);let n=r.alternations;return ya(n,a=>a.definition.length>255?[{message:e.buildTooManyAlternativesError({topLevelRule:t,alternation:a}),type:zi.TOO_MANY_ALTS,ruleName:t.name,occurrence:a.idx}]:[])}function _se(t,e,r){let n=[];return Ae(t,i=>{let a=new PN;i.accept(a);let s=a.allProductions;Ae(s,l=>{let u=ux(l),h=l.maxLookahead||e,f=l.idx,p=Wg(f,i,u,h)[0];if(ur(qr(p))){let m=r.buildEmptyRepetitionError({topLevelRule:i,repetition:l});n.push({message:m,type:zi.NO_NON_EMPTY_LOOKAHEAD,ruleName:i.name})}})}),n}function rBe(t,e,r,n){let i=[],a=Xr(t,(l,u,h)=>(e.definition[h].ignoreAmbiguities===!0||Ae(u,f=>{let d=[h];Ae(t,(p,m)=>{h!==m&&Vk(p,f)&&e.definition[m].ignoreAmbiguities!==!0&&d.push(m)}),d.length>1&&!Vk(i,f)&&(i.push(f),l.push({alts:d,path:f}))}),l),[]);return Je(a,l=>{let u=Je(l.alts,f=>f+1);return{message:n.buildAlternationAmbiguityError({topLevelRule:r,alternation:e,ambiguityIndices:u,prefixPath:l.path}),type:zi.AMBIGUOUS_ALTS,ruleName:r.name,occurrence:e.idx,alternatives:l.alts}})}function nBe(t,e,r,n){let i=Xr(t,(s,l,u)=>{let h=Je(l,f=>({idx:u,path:f}));return s.concat(h)},[]);return Tc(ya(i,s=>{if(e.definition[s.idx].ignoreAmbiguities===!0)return[];let u=s.idx,h=s.path,f=Yr(i,p=>e.definition[p.idx].ignoreAmbiguities!==!0&&p.idx{let m=[p.idx+1,u+1],g=e.idx===0?"":e.idx;return{message:n.buildAlternationPrefixAmbiguityError({topLevelRule:r,alternation:e,ambiguityIndices:m,prefixPath:p.path}),type:zi.AMBIGUOUS_PREFIX_ALTS,ruleName:r.name,occurrence:g,alternatives:m}})}))}function iBe(t,e,r){let n=[],i=Je(e,a=>a.name);return Ae(t,a=>{let s=a.name;if(qn(i,s)){let l=r.buildNamespaceConflictError(a);n.push({message:l,type:zi.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:s})}}),n}var ON,hx,PN,fx=N(()=>{"use strict";qt();Fs();os();qg();cx();cp();o(Tse,"validateLookahead");o(kse,"validateGrammar");o(ZPe,"validateDuplicateProductions");o(JPe,"identifyProductionForDuplicates");o(Ese,"getExtraProductionArgument");ON=class extends ss{static{o(this,"OccurrenceValidationCollector")}constructor(){super(...arguments),this.allProductions=[]}visitNonTerminal(e){this.allProductions.push(e)}visitOption(e){this.allProductions.push(e)}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}visitAlternation(e){this.allProductions.push(e)}visitTerminal(e){this.allProductions.push(e)}};o(eBe,"validateRuleDoesNotAlreadyExist");o(Sse,"validateRuleIsOverridden");o(BN,"validateNoLeftRecursion");o(Uk,"getFirstNoneTerminal");hx=class extends ss{static{o(this,"OrCollector")}constructor(){super(...arguments),this.alternations=[]}visitAlternation(e){this.alternations.push(e)}};o(Cse,"validateEmptyOrAlternative");o(Ase,"validateAmbiguousAlternationAlternatives");PN=class extends ss{static{o(this,"RepetitionCollector")}constructor(){super(...arguments),this.allProductions=[]}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}};o(tBe,"validateTooManyAlts");o(_se,"validateSomeNonEmptyLookaheadPath");o(rBe,"checkAlternativesAmbiguities");o(nBe,"checkPrefixAlternativesAmbiguities");o(iBe,"checkTerminalAndNoneTerminalsNameSpace")});function Dse(t){let e=Qh(t,{errMsgProvider:hse}),r={};return Ae(t.rules,n=>{r[n.name]=n}),fse(r,e.errMsgProvider)}function Lse(t){return t=Qh(t,{errMsgProvider:Pl}),kse(t.rules,t.tokenTypes,t.errMsgProvider,t.grammarName)}var Rse=N(()=>{"use strict";qt();dse();fx();Vg();o(Dse,"resolveGrammar");o(Lse,"validateGrammar")});function lf(t){return qn(Pse,t.name)}var Nse,Mse,Ise,Ose,Pse,Yg,hp,dx,px,mx,Xg=N(()=>{"use strict";qt();Nse="MismatchedTokenException",Mse="NoViableAltException",Ise="EarlyExitException",Ose="NotAllInputParsedException",Pse=[Nse,Mse,Ise,Ose];Object.freeze(Pse);o(lf,"isRecognitionException");Yg=class extends Error{static{o(this,"RecognitionException")}constructor(e,r){super(e),this.token=r,this.resyncedTokens=[],Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},hp=class extends Yg{static{o(this,"MismatchedTokenException")}constructor(e,r,n){super(e,r),this.previousToken=n,this.name=Nse}},dx=class extends Yg{static{o(this,"NoViableAltException")}constructor(e,r,n){super(e,r),this.previousToken=n,this.name=Mse}},px=class extends Yg{static{o(this,"NotAllInputParsedException")}constructor(e,r){super(e,r),this.name=Ose}},mx=class extends Yg{static{o(this,"EarlyExitException")}constructor(e,r,n){super(e,r),this.previousToken=n,this.name=Ise}}});function aBe(t,e,r,n,i,a,s){let l=this.getKeyForAutomaticLookahead(n,i),u=this.firstAfterRepMap[l];if(u===void 0){let p=this.getCurrRuleFullName(),m=this.getGAstProductions()[p];u=new a(m,i).startWalking(),this.firstAfterRepMap[l]=u}let h=u.token,f=u.occurrence,d=u.isEndOfRule;this.RULE_STACK.length===1&&d&&h===void 0&&(h=lo,f=1),!(h===void 0||f===void 0)&&this.shouldInRepetitionRecoveryBeTried(h,f,s)&&this.tryInRepetitionRecovery(t,e,r,h)}var FN,zN,$N,Hk,GN=N(()=>{"use strict";up();qt();Xg();bN();Fs();FN={},zN="InRuleRecoveryException",$N=class extends Error{static{o(this,"InRuleRecoveryException")}constructor(e){super(e),this.name=zN}},Hk=class{static{o(this,"Recoverable")}initRecoverable(e){this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=Bt(e,"recoveryEnabled")?e.recoveryEnabled:ls.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=aBe)}getTokenToInsert(e){let r=$u(e,"",NaN,NaN,NaN,NaN,NaN,NaN);return r.isInsertedInRecovery=!0,r}canTokenTypeBeInsertedInRecovery(e){return!0}canTokenTypeBeDeletedInRecovery(e){return!0}tryInRepetitionRecovery(e,r,n,i){let a=this.findReSyncTokenType(),s=this.exportLexerState(),l=[],u=!1,h=this.LA(1),f=this.LA(1),d=o(()=>{let p=this.LA(0),m=this.errorMessageProvider.buildMismatchTokenMessage({expected:i,actual:h,previous:p,ruleName:this.getCurrRuleFullName()}),g=new hp(m,h,this.LA(0));g.resyncedTokens=Nu(l),this.SAVE_ERROR(g)},"generateErrorMessage");for(;!u;)if(this.tokenMatcher(f,i)){d();return}else if(n.call(this)){d(),e.apply(this,r);return}else this.tokenMatcher(f,a)?u=!0:(f=this.SKIP_TOKEN(),this.addToResyncTokens(f,l));this.importLexerState(s)}shouldInRepetitionRecoveryBeTried(e,r,n){return!(n===!1||this.tokenMatcher(this.LA(1),e)||this.isBackTracking()||this.canPerformInRuleRecovery(e,this.getFollowsForInRuleRecovery(e,r)))}getFollowsForInRuleRecovery(e,r){let n=this.getCurrentGrammarPath(e,r);return this.getNextPossibleTokenTypes(n)}tryInRuleRecovery(e,r){if(this.canRecoverWithSingleTokenInsertion(e,r))return this.getTokenToInsert(e);if(this.canRecoverWithSingleTokenDeletion(e)){let n=this.SKIP_TOKEN();return this.consumeToken(),n}throw new $N("sad sad panda")}canPerformInRuleRecovery(e,r){return this.canRecoverWithSingleTokenInsertion(e,r)||this.canRecoverWithSingleTokenDeletion(e)}canRecoverWithSingleTokenInsertion(e,r){if(!this.canTokenTypeBeInsertedInRecovery(e)||ur(r))return!1;let n=this.LA(1);return ns(r,a=>this.tokenMatcher(n,a))!==void 0}canRecoverWithSingleTokenDeletion(e){return this.canTokenTypeBeDeletedInRecovery(e)?this.tokenMatcher(this.LA(2),e):!1}isInCurrentRuleReSyncSet(e){let r=this.getCurrFollowKey(),n=this.getFollowSetFromFollowKey(r);return qn(n,e)}findReSyncTokenType(){let e=this.flattenFollowSet(),r=this.LA(1),n=2;for(;;){let i=ns(e,a=>sx(r,a));if(i!==void 0)return i;r=this.LA(n),n++}}getCurrFollowKey(){if(this.RULE_STACK.length===1)return FN;let e=this.getLastExplicitRuleShortName(),r=this.getLastExplicitRuleOccurrenceIndex(),n=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(e),idxInCallingRule:r,inRule:this.shortRuleNameToFullName(n)}}buildFullFollowKeyStack(){let e=this.RULE_STACK,r=this.RULE_OCCURRENCE_STACK;return Je(e,(n,i)=>i===0?FN:{ruleName:this.shortRuleNameToFullName(n),idxInCallingRule:r[i],inRule:this.shortRuleNameToFullName(e[i-1])})}flattenFollowSet(){let e=Je(this.buildFullFollowKeyStack(),r=>this.getFollowSetFromFollowKey(r));return qr(e)}getFollowSetFromFollowKey(e){if(e===FN)return[lo];let r=e.ruleName+e.idxInCallingRule+_k+e.inRule;return this.resyncFollows[r]}addToResyncTokens(e,r){return this.tokenMatcher(e,lo)||r.push(e),r}reSyncTo(e){let r=[],n=this.LA(1);for(;this.tokenMatcher(n,e)===!1;)n=this.SKIP_TOKEN(),this.addToResyncTokens(n,r);return Nu(r)}attemptInRepetitionRecovery(e,r,n,i,a,s,l){}getCurrentGrammarPath(e,r){let n=this.getHumanReadableRuleStack(),i=an(this.RULE_OCCURRENCE_STACK);return{ruleStack:n,occurrenceStack:i,lastTok:e,lastTokOccurrence:r}}getHumanReadableRuleStack(){return Je(this.RULE_STACK,e=>this.shortRuleNameToFullName(e))}};o(aBe,"attemptInRepetitionRecovery")});function Wk(t,e,r){return r|e|t}var qk=N(()=>{"use strict";o(Wk,"getKeyForAutomaticLookahead")});var Gu,VN=N(()=>{"use strict";qt();Vg();Fs();fx();qg();Gu=class{static{o(this,"LLkLookaheadStrategy")}constructor(e){var r;this.maxLookahead=(r=e?.maxLookahead)!==null&&r!==void 0?r:ls.maxLookahead}validate(e){let r=this.validateNoLeftRecursion(e.rules);if(ur(r)){let n=this.validateEmptyOrAlternatives(e.rules),i=this.validateAmbiguousAlternationAlternatives(e.rules,this.maxLookahead),a=this.validateSomeNonEmptyLookaheadPath(e.rules,this.maxLookahead);return[...r,...n,...i,...a]}return r}validateNoLeftRecursion(e){return ya(e,r=>BN(r,r,Pl))}validateEmptyOrAlternatives(e){return ya(e,r=>Cse(r,Pl))}validateAmbiguousAlternationAlternatives(e,r){return ya(e,n=>Ase(n,r,Pl))}validateSomeNonEmptyLookaheadPath(e,r){return _se(e,r,Pl)}buildLookaheadForAlternation(e){return mse(e.prodOccurrence,e.rule,e.maxLookahead,e.hasPredicates,e.dynamicTokensEnabled,yse)}buildLookaheadForOptional(e){return gse(e.prodOccurrence,e.rule,e.maxLookahead,e.dynamicTokensEnabled,ux(e.prodType),vse)}}});function sBe(t){Yk.reset(),t.accept(Yk);let e=Yk.dslMethods;return Yk.reset(),e}var Xk,UN,Yk,Bse=N(()=>{"use strict";qt();Fs();qk();os();VN();Xk=class{static{o(this,"LooksAhead")}initLooksAhead(e){this.dynamicTokensEnabled=Bt(e,"dynamicTokensEnabled")?e.dynamicTokensEnabled:ls.dynamicTokensEnabled,this.maxLookahead=Bt(e,"maxLookahead")?e.maxLookahead:ls.maxLookahead,this.lookaheadStrategy=Bt(e,"lookaheadStrategy")?e.lookaheadStrategy:new Gu({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=new Map}preComputeLookaheadFunctions(e){Ae(e,r=>{this.TRACE_INIT(`${r.name} Rule Lookahead`,()=>{let{alternation:n,repetition:i,option:a,repetitionMandatory:s,repetitionMandatoryWithSeparator:l,repetitionWithSeparator:u}=sBe(r);Ae(n,h=>{let f=h.idx===0?"":h.idx;this.TRACE_INIT(`${Bs(h)}${f}`,()=>{let d=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:h.idx,rule:r,maxLookahead:h.maxLookahead||this.maxLookahead,hasPredicates:h.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled}),p=Wk(this.fullRuleNameToShort[r.name],256,h.idx);this.setLaFuncCache(p,d)})}),Ae(i,h=>{this.computeLookaheadFunc(r,h.idx,768,"Repetition",h.maxLookahead,Bs(h))}),Ae(a,h=>{this.computeLookaheadFunc(r,h.idx,512,"Option",h.maxLookahead,Bs(h))}),Ae(s,h=>{this.computeLookaheadFunc(r,h.idx,1024,"RepetitionMandatory",h.maxLookahead,Bs(h))}),Ae(l,h=>{this.computeLookaheadFunc(r,h.idx,1536,"RepetitionMandatoryWithSeparator",h.maxLookahead,Bs(h))}),Ae(u,h=>{this.computeLookaheadFunc(r,h.idx,1280,"RepetitionWithSeparator",h.maxLookahead,Bs(h))})})})}computeLookaheadFunc(e,r,n,i,a,s){this.TRACE_INIT(`${s}${r===0?"":r}`,()=>{let l=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:r,rule:e,maxLookahead:a||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:i}),u=Wk(this.fullRuleNameToShort[e.name],n,r);this.setLaFuncCache(u,l)})}getKeyForAutomaticLookahead(e,r){let n=this.getLastExplicitRuleShortName();return Wk(n,e,r)}getLaFuncFromCache(e){return this.lookAheadFuncsCache.get(e)}setLaFuncCache(e,r){this.lookAheadFuncsCache.set(e,r)}},UN=class extends ss{static{o(this,"DslMethodsCollectorVisitor")}constructor(){super(...arguments),this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}reset(){this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}visitOption(e){this.dslMethods.option.push(e)}visitRepetitionWithSeparator(e){this.dslMethods.repetitionWithSeparator.push(e)}visitRepetitionMandatory(e){this.dslMethods.repetitionMandatory.push(e)}visitRepetitionMandatoryWithSeparator(e){this.dslMethods.repetitionMandatoryWithSeparator.push(e)}visitRepetition(e){this.dslMethods.repetition.push(e)}visitAlternation(e){this.dslMethods.alternation.push(e)}},Yk=new UN;o(sBe,"collectMethods")});function qN(t,e){isNaN(t.startOffset)===!0?(t.startOffset=e.startOffset,t.endOffset=e.endOffset):t.endOffset{"use strict";o(qN,"setNodeLocationOnlyOffset");o(YN,"setNodeLocationFull");o(Fse,"addTerminalToCst");o($se,"addNoneTerminalToCst")});function XN(t,e){Object.defineProperty(t,oBe,{enumerable:!1,configurable:!0,writable:!1,value:e})}var oBe,Gse=N(()=>{"use strict";oBe="name";o(XN,"defineNameProp")});function lBe(t,e){let r=zr(t),n=r.length;for(let i=0;is.msg);throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>: + ${a.join(` + +`).replace(/\n/g,` + `)}`)}},"validateVisitor")};return r.prototype=n,r.prototype.constructor=r,r._RULE_NAMES=e,r}function Use(t,e,r){let n=o(function(){},"derivedConstructor");XN(n,t+"BaseSemanticsWithDefaults");let i=Object.create(r.prototype);return Ae(e,a=>{i[a]=lBe}),n.prototype=i,n.prototype.constructor=n,n}function cBe(t,e){return uBe(t,e)}function uBe(t,e){let r=Yr(e,i=>Si(t[i])===!1),n=Je(r,i=>({msg:`Missing visitor method: <${i}> on ${t.constructor.name} CST Visitor.`,type:jN.MISSING_METHOD,methodName:i}));return Tc(n)}var jN,Hse=N(()=>{"use strict";qt();Gse();o(lBe,"defaultVisit");o(Vse,"createBaseSemanticVisitorConstructor");o(Use,"createBaseVisitorConstructorWithDefaults");(function(t){t[t.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",t[t.MISSING_METHOD=1]="MISSING_METHOD"})(jN||(jN={}));o(cBe,"validateVisitor");o(uBe,"validateMissingCstMethods")});var Zk,Wse=N(()=>{"use strict";zse();qt();Hse();Fs();Zk=class{static{o(this,"TreeBuilder")}initTreeBuilder(e){if(this.CST_STACK=[],this.outputCst=e.outputCst,this.nodeLocationTracking=Bt(e,"nodeLocationTracking")?e.nodeLocationTracking:ls.nodeLocationTracking,!this.outputCst)this.cstInvocationStateUpdate=ni,this.cstFinallyStateUpdate=ni,this.cstPostTerminal=ni,this.cstPostNonTerminal=ni,this.cstPostRule=ni;else if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=YN,this.setNodeLocationFromNode=YN,this.cstPostRule=ni,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=ni,this.setNodeLocationFromNode=ni,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=qN,this.setNodeLocationFromNode=qN,this.cstPostRule=ni,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=ni,this.setNodeLocationFromNode=ni,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=ni,this.setNodeLocationFromNode=ni,this.cstPostRule=ni,this.setInitialNodeLocation=ni;else throw Error(`Invalid config option: "${e.nodeLocationTracking}"`)}setInitialNodeLocationOnlyOffsetRecovery(e){e.location={startOffset:NaN,endOffset:NaN}}setInitialNodeLocationOnlyOffsetRegular(e){e.location={startOffset:this.LA(1).startOffset,endOffset:NaN}}setInitialNodeLocationFullRecovery(e){e.location={startOffset:NaN,startLine:NaN,startColumn:NaN,endOffset:NaN,endLine:NaN,endColumn:NaN}}setInitialNodeLocationFullRegular(e){let r=this.LA(1);e.location={startOffset:r.startOffset,startLine:r.startLine,startColumn:r.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}}cstInvocationStateUpdate(e){let r={name:e,children:Object.create(null)};this.setInitialNodeLocation(r),this.CST_STACK.push(r)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(e){let r=this.LA(0),n=e.location;n.startOffset<=r.startOffset?(n.endOffset=r.endOffset,n.endLine=r.endLine,n.endColumn=r.endColumn):(n.startOffset=NaN,n.startLine=NaN,n.startColumn=NaN)}cstPostRuleOnlyOffset(e){let r=this.LA(0),n=e.location;n.startOffset<=r.startOffset?n.endOffset=r.endOffset:n.startOffset=NaN}cstPostTerminal(e,r){let n=this.CST_STACK[this.CST_STACK.length-1];Fse(n,r,e),this.setNodeLocationFromToken(n.location,r)}cstPostNonTerminal(e,r){let n=this.CST_STACK[this.CST_STACK.length-1];$se(n,r,e),this.setNodeLocationFromNode(n.location,e.location)}getBaseCstVisitorConstructor(){if(pr(this.baseCstVisitorConstructor)){let e=Vse(this.className,zr(this.gastProductionsCache));return this.baseCstVisitorConstructor=e,e}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if(pr(this.baseCstVisitorWithDefaultsConstructor)){let e=Use(this.className,zr(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=e,e}return this.baseCstVisitorWithDefaultsConstructor}getLastExplicitRuleShortName(){let e=this.RULE_STACK;return e[e.length-1]}getPreviousExplicitRuleShortName(){let e=this.RULE_STACK;return e[e.length-2]}getLastExplicitRuleOccurrenceIndex(){let e=this.RULE_OCCURRENCE_STACK;return e[e.length-1]}}});var Jk,qse=N(()=>{"use strict";Fs();Jk=class{static{o(this,"LexerAdapter")}initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(e){if(this.selfAnalysisDone!==!0)throw Error("Missing invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=e,this.tokVectorLength=e.length}get input(){return this.tokVector}SKIP_TOKEN(){return this.currIdx<=this.tokVector.length-2?(this.consumeToken(),this.LA(1)):jg}LA(e){let r=this.currIdx+e;return r<0||this.tokVectorLength<=r?jg:this.tokVector[r]}consumeToken(){this.currIdx++}exportLexerState(){return this.currIdx}importLexerState(e){this.currIdx=e}resetLexerState(){this.currIdx=-1}moveToTerminatedState(){this.currIdx=this.tokVector.length-1}getLexerPosition(){return this.exportLexerState()}}});var eE,Yse=N(()=>{"use strict";qt();Xg();Fs();Vg();fx();os();eE=class{static{o(this,"RecognizerApi")}ACTION(e){return e.call(this)}consume(e,r,n){return this.consumeInternal(r,e,n)}subrule(e,r,n){return this.subruleInternal(r,e,n)}option(e,r){return this.optionInternal(r,e)}or(e,r){return this.orInternal(r,e)}many(e,r){return this.manyInternal(e,r)}atLeastOne(e,r){return this.atLeastOneInternal(e,r)}CONSUME(e,r){return this.consumeInternal(e,0,r)}CONSUME1(e,r){return this.consumeInternal(e,1,r)}CONSUME2(e,r){return this.consumeInternal(e,2,r)}CONSUME3(e,r){return this.consumeInternal(e,3,r)}CONSUME4(e,r){return this.consumeInternal(e,4,r)}CONSUME5(e,r){return this.consumeInternal(e,5,r)}CONSUME6(e,r){return this.consumeInternal(e,6,r)}CONSUME7(e,r){return this.consumeInternal(e,7,r)}CONSUME8(e,r){return this.consumeInternal(e,8,r)}CONSUME9(e,r){return this.consumeInternal(e,9,r)}SUBRULE(e,r){return this.subruleInternal(e,0,r)}SUBRULE1(e,r){return this.subruleInternal(e,1,r)}SUBRULE2(e,r){return this.subruleInternal(e,2,r)}SUBRULE3(e,r){return this.subruleInternal(e,3,r)}SUBRULE4(e,r){return this.subruleInternal(e,4,r)}SUBRULE5(e,r){return this.subruleInternal(e,5,r)}SUBRULE6(e,r){return this.subruleInternal(e,6,r)}SUBRULE7(e,r){return this.subruleInternal(e,7,r)}SUBRULE8(e,r){return this.subruleInternal(e,8,r)}SUBRULE9(e,r){return this.subruleInternal(e,9,r)}OPTION(e){return this.optionInternal(e,0)}OPTION1(e){return this.optionInternal(e,1)}OPTION2(e){return this.optionInternal(e,2)}OPTION3(e){return this.optionInternal(e,3)}OPTION4(e){return this.optionInternal(e,4)}OPTION5(e){return this.optionInternal(e,5)}OPTION6(e){return this.optionInternal(e,6)}OPTION7(e){return this.optionInternal(e,7)}OPTION8(e){return this.optionInternal(e,8)}OPTION9(e){return this.optionInternal(e,9)}OR(e){return this.orInternal(e,0)}OR1(e){return this.orInternal(e,1)}OR2(e){return this.orInternal(e,2)}OR3(e){return this.orInternal(e,3)}OR4(e){return this.orInternal(e,4)}OR5(e){return this.orInternal(e,5)}OR6(e){return this.orInternal(e,6)}OR7(e){return this.orInternal(e,7)}OR8(e){return this.orInternal(e,8)}OR9(e){return this.orInternal(e,9)}MANY(e){this.manyInternal(0,e)}MANY1(e){this.manyInternal(1,e)}MANY2(e){this.manyInternal(2,e)}MANY3(e){this.manyInternal(3,e)}MANY4(e){this.manyInternal(4,e)}MANY5(e){this.manyInternal(5,e)}MANY6(e){this.manyInternal(6,e)}MANY7(e){this.manyInternal(7,e)}MANY8(e){this.manyInternal(8,e)}MANY9(e){this.manyInternal(9,e)}MANY_SEP(e){this.manySepFirstInternal(0,e)}MANY_SEP1(e){this.manySepFirstInternal(1,e)}MANY_SEP2(e){this.manySepFirstInternal(2,e)}MANY_SEP3(e){this.manySepFirstInternal(3,e)}MANY_SEP4(e){this.manySepFirstInternal(4,e)}MANY_SEP5(e){this.manySepFirstInternal(5,e)}MANY_SEP6(e){this.manySepFirstInternal(6,e)}MANY_SEP7(e){this.manySepFirstInternal(7,e)}MANY_SEP8(e){this.manySepFirstInternal(8,e)}MANY_SEP9(e){this.manySepFirstInternal(9,e)}AT_LEAST_ONE(e){this.atLeastOneInternal(0,e)}AT_LEAST_ONE1(e){return this.atLeastOneInternal(1,e)}AT_LEAST_ONE2(e){this.atLeastOneInternal(2,e)}AT_LEAST_ONE3(e){this.atLeastOneInternal(3,e)}AT_LEAST_ONE4(e){this.atLeastOneInternal(4,e)}AT_LEAST_ONE5(e){this.atLeastOneInternal(5,e)}AT_LEAST_ONE6(e){this.atLeastOneInternal(6,e)}AT_LEAST_ONE7(e){this.atLeastOneInternal(7,e)}AT_LEAST_ONE8(e){this.atLeastOneInternal(8,e)}AT_LEAST_ONE9(e){this.atLeastOneInternal(9,e)}AT_LEAST_ONE_SEP(e){this.atLeastOneSepFirstInternal(0,e)}AT_LEAST_ONE_SEP1(e){this.atLeastOneSepFirstInternal(1,e)}AT_LEAST_ONE_SEP2(e){this.atLeastOneSepFirstInternal(2,e)}AT_LEAST_ONE_SEP3(e){this.atLeastOneSepFirstInternal(3,e)}AT_LEAST_ONE_SEP4(e){this.atLeastOneSepFirstInternal(4,e)}AT_LEAST_ONE_SEP5(e){this.atLeastOneSepFirstInternal(5,e)}AT_LEAST_ONE_SEP6(e){this.atLeastOneSepFirstInternal(6,e)}AT_LEAST_ONE_SEP7(e){this.atLeastOneSepFirstInternal(7,e)}AT_LEAST_ONE_SEP8(e){this.atLeastOneSepFirstInternal(8,e)}AT_LEAST_ONE_SEP9(e){this.atLeastOneSepFirstInternal(9,e)}RULE(e,r,n=Kg){if(qn(this.definedRulesNames,e)){let s={message:Pl.buildDuplicateRuleNameError({topLevelRule:e,grammarName:this.className}),type:zi.DUPLICATE_RULE_NAME,ruleName:e};this.definitionErrors.push(s)}this.definedRulesNames.push(e);let i=this.defineRule(e,r,n);return this[e]=i,i}OVERRIDE_RULE(e,r,n=Kg){let i=Sse(e,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(i);let a=this.defineRule(e,r,n);return this[e]=a,a}BACKTRACK(e,r){return function(){this.isBackTrackingStack.push(1);let n=this.saveRecogState();try{return e.apply(this,r),!0}catch(i){if(lf(i))return!1;throw i}finally{this.reloadRecogState(n),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return Sk(br(this.gastProductionsCache))}}});var tE,Xse=N(()=>{"use strict";qt();qk();Xg();qg();cx();Fs();GN();up();cp();tE=class{static{o(this,"RecognizerEngine")}initRecognizerEngine(e,r){if(this.className=this.constructor.name,this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=zg,this.subruleIdx=0,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},Bt(r,"serializedGrammar"))throw Error(`The Parser's configuration can no longer contain a property. + See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0 + For Further details.`);if(Pt(e)){if(ur(e))throw Error(`A Token Vocabulary cannot be empty. + Note that the first argument for the parser constructor + is no longer a Token vector (since v4.0).`);if(typeof e[0].startOffset=="number")throw Error(`The Parser constructor no longer accepts a token vector as the first argument. + See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_4-0-0 + For Further details.`)}if(Pt(e))this.tokensMap=Xr(e,(a,s)=>(a[s.name]=s,a),{});else if(Bt(e,"modes")&&Ma(qr(br(e.modes)),rse)){let a=qr(br(e.modes)),s=Bm(a);this.tokensMap=Xr(s,(l,u)=>(l[u.name]=u,l),{})}else if(bn(e))this.tokensMap=an(e);else throw new Error(" argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap.EOF=lo;let n=Bt(e,"modes")?qr(br(e.modes)):br(e),i=Ma(n,a=>ur(a.categoryMatches));this.tokenMatcher=i?zg:Pu,Bu(br(this.tokensMap))}defineRule(e,r,n){if(this.selfAnalysisDone)throw Error(`Grammar rule <${e}> may not be defined after the 'performSelfAnalysis' method has been called' +Make sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);let i=Bt(n,"resyncEnabled")?n.resyncEnabled:Kg.resyncEnabled,a=Bt(n,"recoveryValueFunc")?n.recoveryValueFunc:Kg.recoveryValueFunc,s=this.ruleShortNameIdx<<12;this.ruleShortNameIdx++,this.shortRuleNameToFull[s]=e,this.fullRuleNameToShort[e]=s;let l;return this.outputCst===!0?l=o(function(...f){try{this.ruleInvocationStateUpdate(s,e,this.subruleIdx),r.apply(this,f);let d=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(d),d}catch(d){return this.invokeRuleCatch(d,i,a)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTry"):l=o(function(...f){try{return this.ruleInvocationStateUpdate(s,e,this.subruleIdx),r.apply(this,f)}catch(d){return this.invokeRuleCatch(d,i,a)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTryCst"),Object.assign(l,{ruleName:e,originalGrammarAction:r})}invokeRuleCatch(e,r,n){let i=this.RULE_STACK.length===1,a=r&&!this.isBackTracking()&&this.recoveryEnabled;if(lf(e)){let s=e;if(a){let l=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(l))if(s.resyncedTokens=this.reSyncTo(l),this.outputCst){let u=this.CST_STACK[this.CST_STACK.length-1];return u.recoveredNode=!0,u}else return n(e);else{if(this.outputCst){let u=this.CST_STACK[this.CST_STACK.length-1];u.recoveredNode=!0,s.partialCstResult=u}throw s}}else{if(i)return this.moveToTerminatedState(),n(e);throw s}}else throw e}optionInternal(e,r){let n=this.getKeyForAutomaticLookahead(512,r);return this.optionInternalLogic(e,r,n)}optionInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),a;if(typeof e!="function"){a=e.DEF;let s=e.GATE;if(s!==void 0){let l=i;i=o(()=>s.call(this)&&l.call(this),"lookAheadFunc")}}else a=e;if(i.call(this)===!0)return a.call(this)}atLeastOneInternal(e,r){let n=this.getKeyForAutomaticLookahead(1024,e);return this.atLeastOneInternalLogic(e,r,n)}atLeastOneInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),a;if(typeof r!="function"){a=r.DEF;let s=r.GATE;if(s!==void 0){let l=i;i=o(()=>s.call(this)&&l.call(this),"lookAheadFunc")}}else a=r;if(i.call(this)===!0){let s=this.doSingleRepetition(a);for(;i.call(this)===!0&&s===!0;)s=this.doSingleRepetition(a)}else throw this.raiseEarlyExitException(e,jn.REPETITION_MANDATORY,r.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[e,r],i,1024,e,Bk)}atLeastOneSepFirstInternal(e,r){let n=this.getKeyForAutomaticLookahead(1536,e);this.atLeastOneSepFirstInternalLogic(e,r,n)}atLeastOneSepFirstInternalLogic(e,r,n){let i=r.DEF,a=r.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){i.call(this);let l=o(()=>this.tokenMatcher(this.LA(1),a),"separatorLookAheadFunc");for(;this.tokenMatcher(this.LA(1),a)===!0;)this.CONSUME(a),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,a,l,i,lx],l,1536,e,lx)}else throw this.raiseEarlyExitException(e,jn.REPETITION_MANDATORY_WITH_SEPARATOR,r.ERR_MSG)}manyInternal(e,r){let n=this.getKeyForAutomaticLookahead(768,e);return this.manyInternalLogic(e,r,n)}manyInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),a;if(typeof r!="function"){a=r.DEF;let l=r.GATE;if(l!==void 0){let u=i;i=o(()=>l.call(this)&&u.call(this),"lookaheadFunction")}}else a=r;let s=!0;for(;i.call(this)===!0&&s===!0;)s=this.doSingleRepetition(a);this.attemptInRepetitionRecovery(this.manyInternal,[e,r],i,768,e,Pk,s)}manySepFirstInternal(e,r){let n=this.getKeyForAutomaticLookahead(1280,e);this.manySepFirstInternalLogic(e,r,n)}manySepFirstInternalLogic(e,r,n){let i=r.DEF,a=r.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){i.call(this);let l=o(()=>this.tokenMatcher(this.LA(1),a),"separatorLookAheadFunc");for(;this.tokenMatcher(this.LA(1),a)===!0;)this.CONSUME(a),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,a,l,i,ox],l,1280,e,ox)}}repetitionSepSecondInternal(e,r,n,i,a){for(;n();)this.CONSUME(r),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,r,n,i,a],n,1536,e,a)}doSingleRepetition(e){let r=this.getLexerPosition();return e.call(this),this.getLexerPosition()>r}orInternal(e,r){let n=this.getKeyForAutomaticLookahead(256,r),i=Pt(e)?e:e.DEF,s=this.getLaFuncFromCache(n).call(this,i);if(s!==void 0)return i[s].ALT.call(this);this.raiseNoAltException(r,e.ERR_MSG)}ruleFinallyStateUpdate(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),this.RULE_STACK.length===0&&this.isAtEndOfInput()===!1){let e=this.LA(1),r=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:e,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new px(r,e))}}subruleInternal(e,r,n){let i;try{let a=n!==void 0?n.ARGS:void 0;return this.subruleIdx=r,i=e.apply(this,a),this.cstPostNonTerminal(i,n!==void 0&&n.LABEL!==void 0?n.LABEL:e.ruleName),i}catch(a){throw this.subruleInternalError(a,n,e.ruleName)}}subruleInternalError(e,r,n){throw lf(e)&&e.partialCstResult!==void 0&&(this.cstPostNonTerminal(e.partialCstResult,r!==void 0&&r.LABEL!==void 0?r.LABEL:n),delete e.partialCstResult),e}consumeInternal(e,r,n){let i;try{let a=this.LA(1);this.tokenMatcher(a,e)===!0?(this.consumeToken(),i=a):this.consumeInternalError(e,a,n)}catch(a){i=this.consumeInternalRecovery(e,r,a)}return this.cstPostTerminal(n!==void 0&&n.LABEL!==void 0?n.LABEL:e.name,i),i}consumeInternalError(e,r,n){let i,a=this.LA(0);throw n!==void 0&&n.ERR_MSG?i=n.ERR_MSG:i=this.errorMessageProvider.buildMismatchTokenMessage({expected:e,actual:r,previous:a,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new hp(i,r,a))}consumeInternalRecovery(e,r,n){if(this.recoveryEnabled&&n.name==="MismatchedTokenException"&&!this.isBackTracking()){let i=this.getFollowsForInRuleRecovery(e,r);try{return this.tryInRuleRecovery(e,i)}catch(a){throw a.name===zN?n:a}}else throw n}saveRecogState(){let e=this.errors,r=an(this.RULE_STACK);return{errors:e,lexerState:this.exportLexerState(),RULE_STACK:r,CST_STACK:this.CST_STACK}}reloadRecogState(e){this.errors=e.errors,this.importLexerState(e.lexerState),this.RULE_STACK=e.RULE_STACK}ruleInvocationStateUpdate(e,r,n){this.RULE_OCCURRENCE_STACK.push(n),this.RULE_STACK.push(e),this.cstInvocationStateUpdate(r)}isBackTracking(){return this.isBackTrackingStack.length!==0}getCurrRuleFullName(){let e=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[e]}shortRuleNameToFullName(e){return this.shortRuleNameToFull[e]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),lo)}reset(){this.resetLexerState(),this.subruleIdx=0,this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]}}});var rE,jse=N(()=>{"use strict";Xg();qt();qg();Fs();rE=class{static{o(this,"ErrorHandler")}initErrorHandler(e){this._errors=[],this.errorMessageProvider=Bt(e,"errorMessageProvider")?e.errorMessageProvider:ls.errorMessageProvider}SAVE_ERROR(e){if(lf(e))return e.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:an(this.RULE_OCCURRENCE_STACK)},this._errors.push(e),e;throw Error("Trying to save an Error which is not a RecognitionException")}get errors(){return an(this._errors)}set errors(e){this._errors=e}raiseEarlyExitException(e,r,n){let i=this.getCurrRuleFullName(),a=this.getGAstProductions()[i],l=Wg(e,a,r,this.maxLookahead)[0],u=[];for(let f=1;f<=this.maxLookahead;f++)u.push(this.LA(f));let h=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:l,actual:u,previous:this.LA(0),customUserDescription:n,ruleName:i});throw this.SAVE_ERROR(new mx(h,this.LA(1),this.LA(0)))}raiseNoAltException(e,r){let n=this.getCurrRuleFullName(),i=this.getGAstProductions()[n],a=Hg(e,i,this.maxLookahead),s=[];for(let h=1;h<=this.maxLookahead;h++)s.push(this.LA(h));let l=this.LA(0),u=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:a,actual:s,previous:l,customUserDescription:r,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new dx(u,this.LA(1),l))}}});var nE,Kse=N(()=>{"use strict";cx();qt();nE=class{static{o(this,"ContentAssist")}initContentAssist(){}computeContentAssist(e,r){let n=this.gastProductionsCache[e];if(pr(n))throw Error(`Rule ->${e}<- does not exist in this grammar.`);return $k([n],r,this.tokenMatcher,this.maxLookahead)}getNextPossibleTokenTypes(e){let r=ia(e.ruleStack),i=this.getGAstProductions()[r];return new Ok(i,e).startWalking()}}});function yx(t,e,r,n=!1){aE(r);let i=ga(this.recordingProdStack),a=Si(e)?e:e.DEF,s=new t({definition:[],idx:r});return n&&(s.separator=e.SEP),Bt(e,"MAX_LOOKAHEAD")&&(s.maxLookahead=e.MAX_LOOKAHEAD),this.recordingProdStack.push(s),a.call(this),i.definition.push(s),this.recordingProdStack.pop(),sE}function dBe(t,e){aE(e);let r=ga(this.recordingProdStack),n=Pt(t)===!1,i=n===!1?t:t.DEF,a=new Tn({definition:[],idx:e,ignoreAmbiguities:n&&t.IGNORE_AMBIGUITIES===!0});Bt(t,"MAX_LOOKAHEAD")&&(a.maxLookahead=t.MAX_LOOKAHEAD);let s=A2(i,l=>Si(l.GATE));return a.hasPredicates=s,r.definition.push(a),Ae(i,l=>{let u=new Dn({definition:[]});a.definition.push(u),Bt(l,"IGNORE_AMBIGUITIES")?u.ignoreAmbiguities=l.IGNORE_AMBIGUITIES:Bt(l,"GATE")&&(u.ignoreAmbiguities=!0),this.recordingProdStack.push(u),l.ALT.call(this),this.recordingProdStack.pop()}),sE}function Jse(t){return t===0?"":`${t}`}function aE(t){if(t<0||t>Zse){let e=new Error(`Invalid DSL Method idx value: <${t}> + Idx value must be a none negative value smaller than ${Zse+1}`);throw e.KNOWN_RECORDER_ERROR=!0,e}}var sE,Qse,Zse,eoe,toe,fBe,iE,roe=N(()=>{"use strict";qt();os();ix();cp();up();Fs();qk();sE={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(sE);Qse=!0,Zse=Math.pow(2,8)-1,eoe=of({name:"RECORDING_PHASE_TOKEN",pattern:Xn.NA});Bu([eoe]);toe=$u(eoe,`This IToken indicates the Parser is in Recording Phase + See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,-1,-1,-1,-1,-1,-1);Object.freeze(toe);fBe={name:`This CSTNode indicates the Parser is in Recording Phase + See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,children:{}},iE=class{static{o(this,"GastRecorder")}initGastRecorder(e){this.recordingProdStack=[],this.RECORDING_PHASE=!1}enableRecording(){this.RECORDING_PHASE=!0,this.TRACE_INIT("Enable Recording",()=>{for(let e=0;e<10;e++){let r=e>0?e:"";this[`CONSUME${r}`]=function(n,i){return this.consumeInternalRecord(n,e,i)},this[`SUBRULE${r}`]=function(n,i){return this.subruleInternalRecord(n,e,i)},this[`OPTION${r}`]=function(n){return this.optionInternalRecord(n,e)},this[`OR${r}`]=function(n){return this.orInternalRecord(n,e)},this[`MANY${r}`]=function(n){this.manyInternalRecord(e,n)},this[`MANY_SEP${r}`]=function(n){this.manySepFirstInternalRecord(e,n)},this[`AT_LEAST_ONE${r}`]=function(n){this.atLeastOneInternalRecord(e,n)},this[`AT_LEAST_ONE_SEP${r}`]=function(n){this.atLeastOneSepFirstInternalRecord(e,n)}}this.consume=function(e,r,n){return this.consumeInternalRecord(r,e,n)},this.subrule=function(e,r,n){return this.subruleInternalRecord(r,e,n)},this.option=function(e,r){return this.optionInternalRecord(r,e)},this.or=function(e,r){return this.orInternalRecord(r,e)},this.many=function(e,r){this.manyInternalRecord(e,r)},this.atLeastOne=function(e,r){this.atLeastOneInternalRecord(e,r)},this.ACTION=this.ACTION_RECORD,this.BACKTRACK=this.BACKTRACK_RECORD,this.LA=this.LA_RECORD})}disableRecording(){this.RECORDING_PHASE=!1,this.TRACE_INIT("Deleting Recording methods",()=>{let e=this;for(let r=0;r<10;r++){let n=r>0?r:"";delete e[`CONSUME${n}`],delete e[`SUBRULE${n}`],delete e[`OPTION${n}`],delete e[`OR${n}`],delete e[`MANY${n}`],delete e[`MANY_SEP${n}`],delete e[`AT_LEAST_ONE${n}`],delete e[`AT_LEAST_ONE_SEP${n}`]}delete e.consume,delete e.subrule,delete e.option,delete e.or,delete e.many,delete e.atLeastOne,delete e.ACTION,delete e.BACKTRACK,delete e.LA})}ACTION_RECORD(e){}BACKTRACK_RECORD(e,r){return()=>!0}LA_RECORD(e){return jg}topLevelRuleRecord(e,r){try{let n=new as({definition:[],name:e});return n.name=e,this.recordingProdStack.push(n),r.call(this),this.recordingProdStack.pop(),n}catch(n){if(n.KNOWN_RECORDER_ERROR!==!0)try{n.message=n.message+` + This error was thrown during the "grammar recording phase" For more info see: + https://chevrotain.io/docs/guide/internals.html#grammar-recording`}catch{throw n}throw n}}optionInternalRecord(e,r){return yx.call(this,ln,e,r)}atLeastOneInternalRecord(e,r){yx.call(this,Ln,r,e)}atLeastOneSepFirstInternalRecord(e,r){yx.call(this,Rn,r,e,Qse)}manyInternalRecord(e,r){yx.call(this,Or,r,e)}manySepFirstInternalRecord(e,r){yx.call(this,wn,r,e,Qse)}orInternalRecord(e,r){return dBe.call(this,e,r)}subruleInternalRecord(e,r,n){if(aE(r),!e||Bt(e,"ruleName")===!1){let l=new Error(` argument is invalid expecting a Parser method reference but got: <${JSON.stringify(e)}> + inside top level rule: <${this.recordingProdStack[0].name}>`);throw l.KNOWN_RECORDER_ERROR=!0,l}let i=ga(this.recordingProdStack),a=e.ruleName,s=new on({idx:r,nonTerminalName:a,label:n?.LABEL,referencedRule:void 0});return i.definition.push(s),this.outputCst?fBe:sE}consumeInternalRecord(e,r,n){if(aE(r),!_N(e)){let s=new Error(` argument is invalid expecting a TokenType reference but got: <${JSON.stringify(e)}> + inside top level rule: <${this.recordingProdStack[0].name}>`);throw s.KNOWN_RECORDER_ERROR=!0,s}let i=ga(this.recordingProdStack),a=new kr({idx:r,terminalType:e,label:n?.LABEL});return i.definition.push(a),toe}};o(yx,"recordProd");o(dBe,"recordOrProd");o(Jse,"getIdxSuffix");o(aE,"assertMethodIdxIsValid")});var oE,noe=N(()=>{"use strict";qt();Og();Fs();oE=class{static{o(this,"PerformanceTracer")}initPerformanceTracer(e){if(Bt(e,"traceInitPerf")){let r=e.traceInitPerf,n=typeof r=="number";this.traceInitMaxIdent=n?r:1/0,this.traceInitPerf=n?r>0:r}else this.traceInitMaxIdent=0,this.traceInitPerf=ls.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(e,r){if(this.traceInitPerf===!0){this.traceInitIndent++;let n=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent <${e}>`);let{time:i,value:a}=tx(r),s=i>10?console.warn:console.log;return this.traceInitIndent time: ${i}ms`),this.traceInitIndent--,a}else return r()}}});function ioe(t,e){e.forEach(r=>{let n=r.prototype;Object.getOwnPropertyNames(n).forEach(i=>{if(i==="constructor")return;let a=Object.getOwnPropertyDescriptor(n,i);a&&(a.get||a.set)?Object.defineProperty(t.prototype,i,a):t.prototype[i]=r.prototype[i]})})}var aoe=N(()=>{"use strict";o(ioe,"applyMixins")});function lE(t=void 0){return function(){return t}}var jg,ls,Kg,zi,vx,xx,Fs=N(()=>{"use strict";qt();Og();Oae();up();Vg();Rse();GN();Bse();Wse();qse();Yse();Xse();jse();Kse();roe();noe();aoe();fx();jg=$u(lo,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(jg);ls=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:zu,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),Kg=Object.freeze({recoveryValueFunc:o(()=>{},"recoveryValueFunc"),resyncEnabled:!0});(function(t){t[t.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",t[t.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",t[t.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",t[t.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",t[t.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",t[t.LEFT_RECURSION=5]="LEFT_RECURSION",t[t.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",t[t.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",t[t.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",t[t.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",t[t.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",t[t.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",t[t.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",t[t.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION"})(zi||(zi={}));o(lE,"EMPTY_ALT");vx=class t{static{o(this,"Parser")}static performSelfAnalysis(e){throw Error("The **static** `performSelfAnalysis` method has been deprecated. \nUse the **instance** method with the same name instead.")}performSelfAnalysis(){this.TRACE_INIT("performSelfAnalysis",()=>{let e;this.selfAnalysisDone=!0;let r=this.className;this.TRACE_INIT("toFastProps",()=>{rx(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),Ae(this.definedRulesNames,i=>{let s=this[i].originalGrammarAction,l;this.TRACE_INIT(`${i} Rule`,()=>{l=this.topLevelRuleRecord(i,s)}),this.gastProductionsCache[i]=l})}finally{this.disableRecording()}});let n=[];if(this.TRACE_INIT("Grammar Resolving",()=>{n=Dse({rules:br(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(n)}),this.TRACE_INIT("Grammar Validations",()=>{if(ur(n)&&this.skipValidations===!1){let i=Lse({rules:br(this.gastProductionsCache),tokenTypes:br(this.tokensMap),errMsgProvider:Pl,grammarName:r}),a=Tse({lookaheadStrategy:this.lookaheadStrategy,rules:br(this.gastProductionsCache),tokenTypes:br(this.tokensMap),grammarName:r});this.definitionErrors=this.definitionErrors.concat(i,a)}}),ur(this.definitionErrors)&&(this.recoveryEnabled&&this.TRACE_INIT("computeAllProdsFollows",()=>{let i=Iae(br(this.gastProductionsCache));this.resyncFollows=i}),this.TRACE_INIT("ComputeLookaheadFunctions",()=>{var i,a;(a=(i=this.lookaheadStrategy).initialize)===null||a===void 0||a.call(i,{rules:br(this.gastProductionsCache)}),this.preComputeLookaheadFunctions(br(this.gastProductionsCache))})),!t.DEFER_DEFINITION_ERRORS_HANDLING&&!ur(this.definitionErrors))throw e=Je(this.definitionErrors,i=>i.message),new Error(`Parser Definition Errors detected: + ${e.join(` +------------------------------- +`)}`)})}constructor(e,r){this.definitionErrors=[],this.selfAnalysisDone=!1;let n=this;if(n.initErrorHandler(r),n.initLexerAdapter(),n.initLooksAhead(r),n.initRecognizerEngine(e,r),n.initRecoverable(r),n.initTreeBuilder(r),n.initContentAssist(),n.initGastRecorder(r),n.initPerformanceTracer(r),Bt(r,"ignoredIssues"))throw new Error(`The IParserConfig property has been deprecated. + Please use the flag on the relevant DSL method instead. + See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES + For further details.`);this.skipValidations=Bt(r,"skipValidations")?r.skipValidations:ls.skipValidations}};vx.DEFER_DEFINITION_ERRORS_HANDLING=!1;ioe(vx,[Hk,Xk,Zk,Jk,tE,eE,rE,nE,iE,oE]);xx=class extends vx{static{o(this,"EmbeddedActionsParser")}constructor(e,r=ls){let n=an(r);n.outputCst=!1,super(e,n)}}});var soe=N(()=>{"use strict";os()});var ooe=N(()=>{"use strict"});var loe=N(()=>{"use strict";soe();ooe()});var coe=N(()=>{"use strict";gN()});var cf=N(()=>{"use strict";gN();Fs();ix();up();qg();VN();Vg();Xg();DN();os();os();loe();coe()});function fp(t,e,r){return`${t.name}_${e}_${r}`}function doe(t){let e={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};bBe(e,t);let r=t.length;for(let n=0;npoe(t,e,s));return e1(t,e,n,r,...i)}function CBe(t,e,r){let n=aa(t,e,r,{type:uf});hf(t,n);let i=e1(t,e,n,r,dp(t,e,r));return ABe(t,e,r,i)}function dp(t,e,r){let n=Yr(Je(r.definition,i=>poe(t,e,i)),i=>i!==void 0);return n.length===1?n[0]:n.length===0?void 0:DBe(t,n)}function moe(t,e,r,n,i){let a=n.left,s=n.right,l=aa(t,e,r,{type:xBe});hf(t,l);let u=aa(t,e,r,{type:foe});return a.loopback=l,u.loopback=l,t.decisionMap[fp(e,i?"RepetitionMandatoryWithSeparator":"RepetitionMandatory",r.idx)]=l,Ai(s,l),i===void 0?(Ai(l,a),Ai(l,u)):(Ai(l,u),Ai(l,i.left),Ai(i.right,a)),{left:a,right:u}}function goe(t,e,r,n,i){let a=n.left,s=n.right,l=aa(t,e,r,{type:vBe});hf(t,l);let u=aa(t,e,r,{type:foe}),h=aa(t,e,r,{type:yBe});return l.loopback=h,u.loopback=h,Ai(l,a),Ai(l,u),Ai(s,h),i!==void 0?(Ai(h,u),Ai(h,i.left),Ai(i.right,a)):Ai(h,l),t.decisionMap[fp(e,i?"RepetitionWithSeparator":"Repetition",r.idx)]=l,{left:l,right:u}}function ABe(t,e,r,n){let i=n.left,a=n.right;return Ai(i,a),t.decisionMap[fp(e,"Option",r.idx)]=i,n}function hf(t,e){return t.decisionStates.push(e),e.decision=t.decisionStates.length-1,e.decision}function e1(t,e,r,n,...i){let a=aa(t,e,n,{type:gBe,start:r});r.end=a;for(let l of i)l!==void 0?(Ai(r,l.left),Ai(l.right,a)):Ai(r,a);let s={left:r,right:a};return t.decisionMap[fp(e,_Be(n),n.idx)]=r,s}function _Be(t){if(t instanceof Tn)return"Alternation";if(t instanceof ln)return"Option";if(t instanceof Or)return"Repetition";if(t instanceof wn)return"RepetitionWithSeparator";if(t instanceof Ln)return"RepetitionMandatory";if(t instanceof Rn)return"RepetitionMandatoryWithSeparator";throw new Error("Invalid production type encountered")}function DBe(t,e){let r=e.length;for(let a=0;a{"use strict";Im();DL();cf();o(fp,"buildATNKey");uf=1,mBe=2,uoe=4,hoe=5,Jg=7,gBe=8,yBe=9,vBe=10,xBe=11,foe=12,bx=class{static{o(this,"AbstractTransition")}constructor(e){this.target=e}isEpsilon(){return!1}},Qg=class extends bx{static{o(this,"AtomTransition")}constructor(e,r){super(e),this.tokenType=r}},wx=class extends bx{static{o(this,"EpsilonTransition")}constructor(e){super(e)}isEpsilon(){return!0}},Zg=class extends bx{static{o(this,"RuleTransition")}constructor(e,r,n){super(e),this.rule=r,this.followState=n}isEpsilon(){return!0}};o(doe,"createATN");o(bBe,"createRuleStartAndStopATNStates");o(poe,"atom");o(wBe,"repetition");o(TBe,"repetitionSep");o(kBe,"repetitionMandatory");o(EBe,"repetitionMandatorySep");o(SBe,"alternation");o(CBe,"option");o(dp,"block");o(moe,"plus");o(goe,"star");o(ABe,"optional");o(hf,"defineDecisionState");o(e1,"makeAlts");o(_Be,"getProdType");o(DBe,"makeBlock");o(QN,"tokenRef");o(LBe,"ruleRef");o(RBe,"buildRuleHandle");o(Ai,"epsilon");o(aa,"newState");o(ZN,"addTransition");o(NBe,"removeState")});function JN(t,e=!0){return`${e?`a${t.alt}`:""}s${t.state.stateNumber}:${t.stack.map(r=>r.stateNumber.toString()).join("_")}`}var Tx,t1,voe=N(()=>{"use strict";Im();Tx={},t1=class{static{o(this,"ATNConfigSet")}constructor(){this.map={},this.configs=[]}get size(){return this.configs.length}finalize(){this.map={}}add(e){let r=JN(e);r in this.map||(this.map[r]=this.configs.length,this.configs.push(e))}get elements(){return this.configs}get alts(){return Je(this.configs,e=>e.alt)}get key(){let e="";for(let r in this.map)e+=r+":";return e}};o(JN,"getATNConfigKey")});function MBe(t,e){let r={};return n=>{let i=n.toString(),a=r[i];return a!==void 0||(a={atnStartState:t,decision:e,states:{}},r[i]=a),a}}function boe(t,e=!0){let r=new Set;for(let n of t){let i=new Set;for(let a of n){if(a===void 0){if(e)break;return!1}let s=[a.tokenTypeIdx].concat(a.categoryMatches);for(let l of s)if(r.has(l)){if(!i.has(l))return!1}else r.add(l),i.add(l)}}return!0}function IBe(t){let e=t.decisionStates.length,r=Array(e);for(let n=0;nFu(i)).join(", "),r=t.production.idx===0?"":t.production.idx,n=`Ambiguous Alternatives Detected: <${t.ambiguityIndices.join(", ")}> in <${$Be(t.production)}${r}> inside <${t.topLevelRule.name}> Rule, +<${e}> may appears as a prefix path in all these alternatives. +`;return n=n+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES +For Further details.`,n}function $Be(t){if(t instanceof on)return"SUBRULE";if(t instanceof ln)return"OPTION";if(t instanceof Tn)return"OR";if(t instanceof Ln)return"AT_LEAST_ONE";if(t instanceof Rn)return"AT_LEAST_ONE_SEP";if(t instanceof wn)return"MANY_SEP";if(t instanceof Or)return"MANY";if(t instanceof kr)return"CONSUME";throw Error("non exhaustive match")}function zBe(t,e,r){let n=ya(e.configs.elements,a=>a.state.transitions),i=Qre(n.filter(a=>a instanceof Qg).map(a=>a.tokenType),a=>a.tokenTypeIdx);return{actualToken:r,possibleTokenTypes:i,tokenPath:t}}function GBe(t,e){return t.edges[e.tokenTypeIdx]}function VBe(t,e,r){let n=new t1,i=[];for(let s of t.elements){if(r.is(s.alt)===!1)continue;if(s.state.type===Jg){i.push(s);continue}let l=s.state.transitions.length;for(let u=0;u0&&!YBe(a))for(let s of i)a.add(s);return a}function UBe(t,e){if(t instanceof Qg&&sx(e,t.tokenType))return t.target}function HBe(t,e){let r;for(let n of t.elements)if(e.is(n.alt)===!0){if(r===void 0)r=n.alt;else if(r!==n.alt)return}return r}function Toe(t){return{configs:t,edges:{},isAcceptState:!1,prediction:-1}}function woe(t,e,r,n){return n=koe(t,n),e.edges[r.tokenTypeIdx]=n,n}function koe(t,e){if(e===Tx)return e;let r=e.configs.key,n=t.states[r];return n!==void 0?n:(e.configs.finalize(),t.states[r]=e,e)}function WBe(t){let e=new t1,r=t.transitions.length;for(let n=0;n0){let i=[...t.stack],s={state:i.pop(),alt:t.alt,stack:i};uE(s,e)}else e.add(t);return}r.epsilonOnlyTransitions||e.add(t);let n=r.transitions.length;for(let i=0;i1)return!0;return!1}function ZBe(t){for(let e of Array.from(t.values()))if(Object.keys(e).length===1)return!0;return!1}var cE,xoe,kx,Eoe=N(()=>{"use strict";cf();yoe();voe();BL();RL();Zre();Im();uT();$T();HT();GL();o(MBe,"createDFACache");cE=class{static{o(this,"PredicateSet")}constructor(){this.predicates=[]}is(e){return e>=this.predicates.length||this.predicates[e]}set(e,r){this.predicates[e]=r}toString(){let e="",r=this.predicates.length;for(let n=0;nconsole.log(n)}initialize(e){this.atn=doe(e.rules),this.dfas=IBe(this.atn)}validateAmbiguousAlternationAlternatives(){return[]}validateEmptyOrAlternatives(){return[]}buildLookaheadForAlternation(e){let{prodOccurrence:r,rule:n,hasPredicates:i,dynamicTokensEnabled:a}=e,s=this.dfas,l=this.logging,u=fp(n,"Alternation",r),f=this.atn.decisionMap[u].decision,d=Je(Gk({maxLookahead:1,occurrence:r,prodType:"Alternation",rule:n}),p=>Je(p,m=>m[0]));if(boe(d,!1)&&!a){let p=Xr(d,(m,g,y)=>(Ae(g,v=>{v&&(m[v.tokenTypeIdx]=y,Ae(v.categoryMatches,x=>{m[x]=y}))}),m),{});return i?function(m){var g;let y=this.LA(1),v=p[y.tokenTypeIdx];if(m!==void 0&&v!==void 0){let x=(g=m[v])===null||g===void 0?void 0:g.GATE;if(x!==void 0&&x.call(this)===!1)return}return v}:function(){let m=this.LA(1);return p[m.tokenTypeIdx]}}else return i?function(p){let m=new cE,g=p===void 0?0:p.length;for(let v=0;vJe(p,m=>m[0]));if(boe(d)&&d[0][0]&&!a){let p=d[0],m=qr(p);if(m.length===1&&ur(m[0].categoryMatches)){let y=m[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===y}}else{let g=Xr(m,(y,v)=>(v!==void 0&&(y[v.tokenTypeIdx]=!0,Ae(v.categoryMatches,x=>{y[x]=!0})),y),{});return function(){let y=this.LA(1);return g[y.tokenTypeIdx]===!0}}}return function(){let p=eM.call(this,s,f,xoe,l);return typeof p=="object"?!1:p===0}}};o(boe,"isLL1Sequence");o(IBe,"initATNSimulator");o(eM,"adaptivePredict");o(OBe,"performLookahead");o(PBe,"computeLookaheadTarget");o(BBe,"reportLookaheadAmbiguity");o(FBe,"buildAmbiguityError");o($Be,"getProductionDslName");o(zBe,"buildAdaptivePredictError");o(GBe,"getExistingTargetState");o(VBe,"computeReachSet");o(UBe,"getReachableTarget");o(HBe,"getUniqueAlt");o(Toe,"newDFAState");o(woe,"addDFAEdge");o(koe,"addDFAState");o(WBe,"computeStartState");o(uE,"closure");o(qBe,"getEpsilonTarget");o(YBe,"hasConfigInRuleStopState");o(XBe,"allConfigsInRuleStopStates");o(jBe,"hasConflictTerminatingPrediction");o(KBe,"getConflictingAltSets");o(QBe,"hasConflictingAltSet");o(ZBe,"hasStateAssociatedWithOneAlt")});var Soe=N(()=>{"use strict";Eoe()});var Coe,tM,Aoe,hE,jr,Pr,fE,_oe,rM,Doe,Loe,Roe,Noe,nM,Moe,Ioe,Ooe,dE,r1,n1,iM,i1,Poe,aM,sM,oM,lM,cM,Boe,Foe,uM,$oe,hM,Ex,zoe,Goe,Voe,Uoe,Hoe,Woe,qoe,Yoe,pE,Xoe,joe,Koe,Qoe,Zoe,Joe,ele,tle,rle,nle,ile,mE,ale,sle,ole,lle,cle,ule,hle,fle,dle,ple,mle,gle,yle,fM,dM,vle,xle,ble,wle,Tle,kle,Ele,Sle,Cle,pM,Fe,mM=N(()=>{"use strict";(function(t){function e(r){return typeof r=="string"}o(e,"is"),t.is=e})(Coe||(Coe={}));(function(t){function e(r){return typeof r=="string"}o(e,"is"),t.is=e})(tM||(tM={}));(function(t){t.MIN_VALUE=-2147483648,t.MAX_VALUE=2147483647;function e(r){return typeof r=="number"&&t.MIN_VALUE<=r&&r<=t.MAX_VALUE}o(e,"is"),t.is=e})(Aoe||(Aoe={}));(function(t){t.MIN_VALUE=0,t.MAX_VALUE=2147483647;function e(r){return typeof r=="number"&&t.MIN_VALUE<=r&&r<=t.MAX_VALUE}o(e,"is"),t.is=e})(hE||(hE={}));(function(t){function e(n,i){return n===Number.MAX_VALUE&&(n=hE.MAX_VALUE),i===Number.MAX_VALUE&&(i=hE.MAX_VALUE),{line:n,character:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Fe.objectLiteral(i)&&Fe.uinteger(i.line)&&Fe.uinteger(i.character)}o(r,"is"),t.is=r})(jr||(jr={}));(function(t){function e(n,i,a,s){if(Fe.uinteger(n)&&Fe.uinteger(i)&&Fe.uinteger(a)&&Fe.uinteger(s))return{start:jr.create(n,i),end:jr.create(a,s)};if(jr.is(n)&&jr.is(i))return{start:n,end:i};throw new Error(`Range#create called with invalid arguments[${n}, ${i}, ${a}, ${s}]`)}o(e,"create"),t.create=e;function r(n){let i=n;return Fe.objectLiteral(i)&&jr.is(i.start)&&jr.is(i.end)}o(r,"is"),t.is=r})(Pr||(Pr={}));(function(t){function e(n,i){return{uri:n,range:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Fe.objectLiteral(i)&&Pr.is(i.range)&&(Fe.string(i.uri)||Fe.undefined(i.uri))}o(r,"is"),t.is=r})(fE||(fE={}));(function(t){function e(n,i,a,s){return{targetUri:n,targetRange:i,targetSelectionRange:a,originSelectionRange:s}}o(e,"create"),t.create=e;function r(n){let i=n;return Fe.objectLiteral(i)&&Pr.is(i.targetRange)&&Fe.string(i.targetUri)&&Pr.is(i.targetSelectionRange)&&(Pr.is(i.originSelectionRange)||Fe.undefined(i.originSelectionRange))}o(r,"is"),t.is=r})(_oe||(_oe={}));(function(t){function e(n,i,a,s){return{red:n,green:i,blue:a,alpha:s}}o(e,"create"),t.create=e;function r(n){let i=n;return Fe.objectLiteral(i)&&Fe.numberRange(i.red,0,1)&&Fe.numberRange(i.green,0,1)&&Fe.numberRange(i.blue,0,1)&&Fe.numberRange(i.alpha,0,1)}o(r,"is"),t.is=r})(rM||(rM={}));(function(t){function e(n,i){return{range:n,color:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Fe.objectLiteral(i)&&Pr.is(i.range)&&rM.is(i.color)}o(r,"is"),t.is=r})(Doe||(Doe={}));(function(t){function e(n,i,a){return{label:n,textEdit:i,additionalTextEdits:a}}o(e,"create"),t.create=e;function r(n){let i=n;return Fe.objectLiteral(i)&&Fe.string(i.label)&&(Fe.undefined(i.textEdit)||n1.is(i))&&(Fe.undefined(i.additionalTextEdits)||Fe.typedArray(i.additionalTextEdits,n1.is))}o(r,"is"),t.is=r})(Loe||(Loe={}));(function(t){t.Comment="comment",t.Imports="imports",t.Region="region"})(Roe||(Roe={}));(function(t){function e(n,i,a,s,l,u){let h={startLine:n,endLine:i};return Fe.defined(a)&&(h.startCharacter=a),Fe.defined(s)&&(h.endCharacter=s),Fe.defined(l)&&(h.kind=l),Fe.defined(u)&&(h.collapsedText=u),h}o(e,"create"),t.create=e;function r(n){let i=n;return Fe.objectLiteral(i)&&Fe.uinteger(i.startLine)&&Fe.uinteger(i.startLine)&&(Fe.undefined(i.startCharacter)||Fe.uinteger(i.startCharacter))&&(Fe.undefined(i.endCharacter)||Fe.uinteger(i.endCharacter))&&(Fe.undefined(i.kind)||Fe.string(i.kind))}o(r,"is"),t.is=r})(Noe||(Noe={}));(function(t){function e(n,i){return{location:n,message:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Fe.defined(i)&&fE.is(i.location)&&Fe.string(i.message)}o(r,"is"),t.is=r})(nM||(nM={}));(function(t){t.Error=1,t.Warning=2,t.Information=3,t.Hint=4})(Moe||(Moe={}));(function(t){t.Unnecessary=1,t.Deprecated=2})(Ioe||(Ioe={}));(function(t){function e(r){let n=r;return Fe.objectLiteral(n)&&Fe.string(n.href)}o(e,"is"),t.is=e})(Ooe||(Ooe={}));(function(t){function e(n,i,a,s,l,u){let h={range:n,message:i};return Fe.defined(a)&&(h.severity=a),Fe.defined(s)&&(h.code=s),Fe.defined(l)&&(h.source=l),Fe.defined(u)&&(h.relatedInformation=u),h}o(e,"create"),t.create=e;function r(n){var i;let a=n;return Fe.defined(a)&&Pr.is(a.range)&&Fe.string(a.message)&&(Fe.number(a.severity)||Fe.undefined(a.severity))&&(Fe.integer(a.code)||Fe.string(a.code)||Fe.undefined(a.code))&&(Fe.undefined(a.codeDescription)||Fe.string((i=a.codeDescription)===null||i===void 0?void 0:i.href))&&(Fe.string(a.source)||Fe.undefined(a.source))&&(Fe.undefined(a.relatedInformation)||Fe.typedArray(a.relatedInformation,nM.is))}o(r,"is"),t.is=r})(dE||(dE={}));(function(t){function e(n,i,...a){let s={title:n,command:i};return Fe.defined(a)&&a.length>0&&(s.arguments=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return Fe.defined(i)&&Fe.string(i.title)&&Fe.string(i.command)}o(r,"is"),t.is=r})(r1||(r1={}));(function(t){function e(a,s){return{range:a,newText:s}}o(e,"replace"),t.replace=e;function r(a,s){return{range:{start:a,end:a},newText:s}}o(r,"insert"),t.insert=r;function n(a){return{range:a,newText:""}}o(n,"del"),t.del=n;function i(a){let s=a;return Fe.objectLiteral(s)&&Fe.string(s.newText)&&Pr.is(s.range)}o(i,"is"),t.is=i})(n1||(n1={}));(function(t){function e(n,i,a){let s={label:n};return i!==void 0&&(s.needsConfirmation=i),a!==void 0&&(s.description=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return Fe.objectLiteral(i)&&Fe.string(i.label)&&(Fe.boolean(i.needsConfirmation)||i.needsConfirmation===void 0)&&(Fe.string(i.description)||i.description===void 0)}o(r,"is"),t.is=r})(iM||(iM={}));(function(t){function e(r){let n=r;return Fe.string(n)}o(e,"is"),t.is=e})(i1||(i1={}));(function(t){function e(a,s,l){return{range:a,newText:s,annotationId:l}}o(e,"replace"),t.replace=e;function r(a,s,l){return{range:{start:a,end:a},newText:s,annotationId:l}}o(r,"insert"),t.insert=r;function n(a,s){return{range:a,newText:"",annotationId:s}}o(n,"del"),t.del=n;function i(a){let s=a;return n1.is(s)&&(iM.is(s.annotationId)||i1.is(s.annotationId))}o(i,"is"),t.is=i})(Poe||(Poe={}));(function(t){function e(n,i){return{textDocument:n,edits:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Fe.defined(i)&&uM.is(i.textDocument)&&Array.isArray(i.edits)}o(r,"is"),t.is=r})(aM||(aM={}));(function(t){function e(n,i,a){let s={kind:"create",uri:n};return i!==void 0&&(i.overwrite!==void 0||i.ignoreIfExists!==void 0)&&(s.options=i),a!==void 0&&(s.annotationId=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return i&&i.kind==="create"&&Fe.string(i.uri)&&(i.options===void 0||(i.options.overwrite===void 0||Fe.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||Fe.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||i1.is(i.annotationId))}o(r,"is"),t.is=r})(sM||(sM={}));(function(t){function e(n,i,a,s){let l={kind:"rename",oldUri:n,newUri:i};return a!==void 0&&(a.overwrite!==void 0||a.ignoreIfExists!==void 0)&&(l.options=a),s!==void 0&&(l.annotationId=s),l}o(e,"create"),t.create=e;function r(n){let i=n;return i&&i.kind==="rename"&&Fe.string(i.oldUri)&&Fe.string(i.newUri)&&(i.options===void 0||(i.options.overwrite===void 0||Fe.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||Fe.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||i1.is(i.annotationId))}o(r,"is"),t.is=r})(oM||(oM={}));(function(t){function e(n,i,a){let s={kind:"delete",uri:n};return i!==void 0&&(i.recursive!==void 0||i.ignoreIfNotExists!==void 0)&&(s.options=i),a!==void 0&&(s.annotationId=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return i&&i.kind==="delete"&&Fe.string(i.uri)&&(i.options===void 0||(i.options.recursive===void 0||Fe.boolean(i.options.recursive))&&(i.options.ignoreIfNotExists===void 0||Fe.boolean(i.options.ignoreIfNotExists)))&&(i.annotationId===void 0||i1.is(i.annotationId))}o(r,"is"),t.is=r})(lM||(lM={}));(function(t){function e(r){let n=r;return n&&(n.changes!==void 0||n.documentChanges!==void 0)&&(n.documentChanges===void 0||n.documentChanges.every(i=>Fe.string(i.kind)?sM.is(i)||oM.is(i)||lM.is(i):aM.is(i)))}o(e,"is"),t.is=e})(cM||(cM={}));(function(t){function e(n){return{uri:n}}o(e,"create"),t.create=e;function r(n){let i=n;return Fe.defined(i)&&Fe.string(i.uri)}o(r,"is"),t.is=r})(Boe||(Boe={}));(function(t){function e(n,i){return{uri:n,version:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Fe.defined(i)&&Fe.string(i.uri)&&Fe.integer(i.version)}o(r,"is"),t.is=r})(Foe||(Foe={}));(function(t){function e(n,i){return{uri:n,version:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Fe.defined(i)&&Fe.string(i.uri)&&(i.version===null||Fe.integer(i.version))}o(r,"is"),t.is=r})(uM||(uM={}));(function(t){function e(n,i,a,s){return{uri:n,languageId:i,version:a,text:s}}o(e,"create"),t.create=e;function r(n){let i=n;return Fe.defined(i)&&Fe.string(i.uri)&&Fe.string(i.languageId)&&Fe.integer(i.version)&&Fe.string(i.text)}o(r,"is"),t.is=r})($oe||($oe={}));(function(t){t.PlainText="plaintext",t.Markdown="markdown";function e(r){let n=r;return n===t.PlainText||n===t.Markdown}o(e,"is"),t.is=e})(hM||(hM={}));(function(t){function e(r){let n=r;return Fe.objectLiteral(r)&&hM.is(n.kind)&&Fe.string(n.value)}o(e,"is"),t.is=e})(Ex||(Ex={}));(function(t){t.Text=1,t.Method=2,t.Function=3,t.Constructor=4,t.Field=5,t.Variable=6,t.Class=7,t.Interface=8,t.Module=9,t.Property=10,t.Unit=11,t.Value=12,t.Enum=13,t.Keyword=14,t.Snippet=15,t.Color=16,t.File=17,t.Reference=18,t.Folder=19,t.EnumMember=20,t.Constant=21,t.Struct=22,t.Event=23,t.Operator=24,t.TypeParameter=25})(zoe||(zoe={}));(function(t){t.PlainText=1,t.Snippet=2})(Goe||(Goe={}));(function(t){t.Deprecated=1})(Voe||(Voe={}));(function(t){function e(n,i,a){return{newText:n,insert:i,replace:a}}o(e,"create"),t.create=e;function r(n){let i=n;return i&&Fe.string(i.newText)&&Pr.is(i.insert)&&Pr.is(i.replace)}o(r,"is"),t.is=r})(Uoe||(Uoe={}));(function(t){t.asIs=1,t.adjustIndentation=2})(Hoe||(Hoe={}));(function(t){function e(r){let n=r;return n&&(Fe.string(n.detail)||n.detail===void 0)&&(Fe.string(n.description)||n.description===void 0)}o(e,"is"),t.is=e})(Woe||(Woe={}));(function(t){function e(r){return{label:r}}o(e,"create"),t.create=e})(qoe||(qoe={}));(function(t){function e(r,n){return{items:r||[],isIncomplete:!!n}}o(e,"create"),t.create=e})(Yoe||(Yoe={}));(function(t){function e(n){return n.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}o(e,"fromPlainText"),t.fromPlainText=e;function r(n){let i=n;return Fe.string(i)||Fe.objectLiteral(i)&&Fe.string(i.language)&&Fe.string(i.value)}o(r,"is"),t.is=r})(pE||(pE={}));(function(t){function e(r){let n=r;return!!n&&Fe.objectLiteral(n)&&(Ex.is(n.contents)||pE.is(n.contents)||Fe.typedArray(n.contents,pE.is))&&(r.range===void 0||Pr.is(r.range))}o(e,"is"),t.is=e})(Xoe||(Xoe={}));(function(t){function e(r,n){return n?{label:r,documentation:n}:{label:r}}o(e,"create"),t.create=e})(joe||(joe={}));(function(t){function e(r,n,...i){let a={label:r};return Fe.defined(n)&&(a.documentation=n),Fe.defined(i)?a.parameters=i:a.parameters=[],a}o(e,"create"),t.create=e})(Koe||(Koe={}));(function(t){t.Text=1,t.Read=2,t.Write=3})(Qoe||(Qoe={}));(function(t){function e(r,n){let i={range:r};return Fe.number(n)&&(i.kind=n),i}o(e,"create"),t.create=e})(Zoe||(Zoe={}));(function(t){t.File=1,t.Module=2,t.Namespace=3,t.Package=4,t.Class=5,t.Method=6,t.Property=7,t.Field=8,t.Constructor=9,t.Enum=10,t.Interface=11,t.Function=12,t.Variable=13,t.Constant=14,t.String=15,t.Number=16,t.Boolean=17,t.Array=18,t.Object=19,t.Key=20,t.Null=21,t.EnumMember=22,t.Struct=23,t.Event=24,t.Operator=25,t.TypeParameter=26})(Joe||(Joe={}));(function(t){t.Deprecated=1})(ele||(ele={}));(function(t){function e(r,n,i,a,s){let l={name:r,kind:n,location:{uri:a,range:i}};return s&&(l.containerName=s),l}o(e,"create"),t.create=e})(tle||(tle={}));(function(t){function e(r,n,i,a){return a!==void 0?{name:r,kind:n,location:{uri:i,range:a}}:{name:r,kind:n,location:{uri:i}}}o(e,"create"),t.create=e})(rle||(rle={}));(function(t){function e(n,i,a,s,l,u){let h={name:n,detail:i,kind:a,range:s,selectionRange:l};return u!==void 0&&(h.children=u),h}o(e,"create"),t.create=e;function r(n){let i=n;return i&&Fe.string(i.name)&&Fe.number(i.kind)&&Pr.is(i.range)&&Pr.is(i.selectionRange)&&(i.detail===void 0||Fe.string(i.detail))&&(i.deprecated===void 0||Fe.boolean(i.deprecated))&&(i.children===void 0||Array.isArray(i.children))&&(i.tags===void 0||Array.isArray(i.tags))}o(r,"is"),t.is=r})(nle||(nle={}));(function(t){t.Empty="",t.QuickFix="quickfix",t.Refactor="refactor",t.RefactorExtract="refactor.extract",t.RefactorInline="refactor.inline",t.RefactorRewrite="refactor.rewrite",t.Source="source",t.SourceOrganizeImports="source.organizeImports",t.SourceFixAll="source.fixAll"})(ile||(ile={}));(function(t){t.Invoked=1,t.Automatic=2})(mE||(mE={}));(function(t){function e(n,i,a){let s={diagnostics:n};return i!=null&&(s.only=i),a!=null&&(s.triggerKind=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return Fe.defined(i)&&Fe.typedArray(i.diagnostics,dE.is)&&(i.only===void 0||Fe.typedArray(i.only,Fe.string))&&(i.triggerKind===void 0||i.triggerKind===mE.Invoked||i.triggerKind===mE.Automatic)}o(r,"is"),t.is=r})(ale||(ale={}));(function(t){function e(n,i,a){let s={title:n},l=!0;return typeof i=="string"?(l=!1,s.kind=i):r1.is(i)?s.command=i:s.edit=i,l&&a!==void 0&&(s.kind=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return i&&Fe.string(i.title)&&(i.diagnostics===void 0||Fe.typedArray(i.diagnostics,dE.is))&&(i.kind===void 0||Fe.string(i.kind))&&(i.edit!==void 0||i.command!==void 0)&&(i.command===void 0||r1.is(i.command))&&(i.isPreferred===void 0||Fe.boolean(i.isPreferred))&&(i.edit===void 0||cM.is(i.edit))}o(r,"is"),t.is=r})(sle||(sle={}));(function(t){function e(n,i){let a={range:n};return Fe.defined(i)&&(a.data=i),a}o(e,"create"),t.create=e;function r(n){let i=n;return Fe.defined(i)&&Pr.is(i.range)&&(Fe.undefined(i.command)||r1.is(i.command))}o(r,"is"),t.is=r})(ole||(ole={}));(function(t){function e(n,i){return{tabSize:n,insertSpaces:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Fe.defined(i)&&Fe.uinteger(i.tabSize)&&Fe.boolean(i.insertSpaces)}o(r,"is"),t.is=r})(lle||(lle={}));(function(t){function e(n,i,a){return{range:n,target:i,data:a}}o(e,"create"),t.create=e;function r(n){let i=n;return Fe.defined(i)&&Pr.is(i.range)&&(Fe.undefined(i.target)||Fe.string(i.target))}o(r,"is"),t.is=r})(cle||(cle={}));(function(t){function e(n,i){return{range:n,parent:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Fe.objectLiteral(i)&&Pr.is(i.range)&&(i.parent===void 0||t.is(i.parent))}o(r,"is"),t.is=r})(ule||(ule={}));(function(t){t.namespace="namespace",t.type="type",t.class="class",t.enum="enum",t.interface="interface",t.struct="struct",t.typeParameter="typeParameter",t.parameter="parameter",t.variable="variable",t.property="property",t.enumMember="enumMember",t.event="event",t.function="function",t.method="method",t.macro="macro",t.keyword="keyword",t.modifier="modifier",t.comment="comment",t.string="string",t.number="number",t.regexp="regexp",t.operator="operator",t.decorator="decorator"})(hle||(hle={}));(function(t){t.declaration="declaration",t.definition="definition",t.readonly="readonly",t.static="static",t.deprecated="deprecated",t.abstract="abstract",t.async="async",t.modification="modification",t.documentation="documentation",t.defaultLibrary="defaultLibrary"})(fle||(fle={}));(function(t){function e(r){let n=r;return Fe.objectLiteral(n)&&(n.resultId===void 0||typeof n.resultId=="string")&&Array.isArray(n.data)&&(n.data.length===0||typeof n.data[0]=="number")}o(e,"is"),t.is=e})(dle||(dle={}));(function(t){function e(n,i){return{range:n,text:i}}o(e,"create"),t.create=e;function r(n){let i=n;return i!=null&&Pr.is(i.range)&&Fe.string(i.text)}o(r,"is"),t.is=r})(ple||(ple={}));(function(t){function e(n,i,a){return{range:n,variableName:i,caseSensitiveLookup:a}}o(e,"create"),t.create=e;function r(n){let i=n;return i!=null&&Pr.is(i.range)&&Fe.boolean(i.caseSensitiveLookup)&&(Fe.string(i.variableName)||i.variableName===void 0)}o(r,"is"),t.is=r})(mle||(mle={}));(function(t){function e(n,i){return{range:n,expression:i}}o(e,"create"),t.create=e;function r(n){let i=n;return i!=null&&Pr.is(i.range)&&(Fe.string(i.expression)||i.expression===void 0)}o(r,"is"),t.is=r})(gle||(gle={}));(function(t){function e(n,i){return{frameId:n,stoppedLocation:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Fe.defined(i)&&Pr.is(n.stoppedLocation)}o(r,"is"),t.is=r})(yle||(yle={}));(function(t){t.Type=1,t.Parameter=2;function e(r){return r===1||r===2}o(e,"is"),t.is=e})(fM||(fM={}));(function(t){function e(n){return{value:n}}o(e,"create"),t.create=e;function r(n){let i=n;return Fe.objectLiteral(i)&&(i.tooltip===void 0||Fe.string(i.tooltip)||Ex.is(i.tooltip))&&(i.location===void 0||fE.is(i.location))&&(i.command===void 0||r1.is(i.command))}o(r,"is"),t.is=r})(dM||(dM={}));(function(t){function e(n,i,a){let s={position:n,label:i};return a!==void 0&&(s.kind=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return Fe.objectLiteral(i)&&jr.is(i.position)&&(Fe.string(i.label)||Fe.typedArray(i.label,dM.is))&&(i.kind===void 0||fM.is(i.kind))&&i.textEdits===void 0||Fe.typedArray(i.textEdits,n1.is)&&(i.tooltip===void 0||Fe.string(i.tooltip)||Ex.is(i.tooltip))&&(i.paddingLeft===void 0||Fe.boolean(i.paddingLeft))&&(i.paddingRight===void 0||Fe.boolean(i.paddingRight))}o(r,"is"),t.is=r})(vle||(vle={}));(function(t){function e(r){return{kind:"snippet",value:r}}o(e,"createSnippet"),t.createSnippet=e})(xle||(xle={}));(function(t){function e(r,n,i,a){return{insertText:r,filterText:n,range:i,command:a}}o(e,"create"),t.create=e})(ble||(ble={}));(function(t){function e(r){return{items:r}}o(e,"create"),t.create=e})(wle||(wle={}));(function(t){t.Invoked=0,t.Automatic=1})(Tle||(Tle={}));(function(t){function e(r,n){return{range:r,text:n}}o(e,"create"),t.create=e})(kle||(kle={}));(function(t){function e(r,n){return{triggerKind:r,selectedCompletionInfo:n}}o(e,"create"),t.create=e})(Ele||(Ele={}));(function(t){function e(r){let n=r;return Fe.objectLiteral(n)&&tM.is(n.uri)&&Fe.string(n.name)}o(e,"is"),t.is=e})(Sle||(Sle={}));(function(t){function e(a,s,l,u){return new pM(a,s,l,u)}o(e,"create"),t.create=e;function r(a){let s=a;return!!(Fe.defined(s)&&Fe.string(s.uri)&&(Fe.undefined(s.languageId)||Fe.string(s.languageId))&&Fe.uinteger(s.lineCount)&&Fe.func(s.getText)&&Fe.func(s.positionAt)&&Fe.func(s.offsetAt))}o(r,"is"),t.is=r;function n(a,s){let l=a.getText(),u=i(s,(f,d)=>{let p=f.range.start.line-d.range.start.line;return p===0?f.range.start.character-d.range.start.character:p}),h=l.length;for(let f=u.length-1;f>=0;f--){let d=u[f],p=a.offsetAt(d.range.start),m=a.offsetAt(d.range.end);if(m<=h)l=l.substring(0,p)+d.newText+l.substring(m,l.length);else throw new Error("Overlapping edit");h=p}return l}o(n,"applyEdits"),t.applyEdits=n;function i(a,s){if(a.length<=1)return a;let l=a.length/2|0,u=a.slice(0,l),h=a.slice(l);i(u,s),i(h,s);let f=0,d=0,p=0;for(;f0&&e.push(r.length),this._lineOffsets=e}return this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let r=this.getLineOffsets(),n=0,i=r.length;if(i===0)return jr.create(0,e);for(;ne?i=s:n=s+1}let a=n-1;return jr.create(a,e-r[a])}offsetAt(e){let r=this.getLineOffsets();if(e.line>=r.length)return this._content.length;if(e.line<0)return 0;let n=r[e.line],i=e.line+1"u"}o(n,"undefined"),t.undefined=n;function i(m){return m===!0||m===!1}o(i,"boolean"),t.boolean=i;function a(m){return e.call(m)==="[object String]"}o(a,"string"),t.string=a;function s(m){return e.call(m)==="[object Number]"}o(s,"number"),t.number=s;function l(m,g,y){return e.call(m)==="[object Number]"&&g<=m&&m<=y}o(l,"numberRange"),t.numberRange=l;function u(m){return e.call(m)==="[object Number]"&&-2147483648<=m&&m<=2147483647}o(u,"integer"),t.integer=u;function h(m){return e.call(m)==="[object Number]"&&0<=m&&m<=2147483647}o(h,"uinteger"),t.uinteger=h;function f(m){return e.call(m)==="[object Function]"}o(f,"func"),t.func=f;function d(m){return m!==null&&typeof m=="object"}o(d,"objectLiteral"),t.objectLiteral=d;function p(m,g){return Array.isArray(m)&&m.every(g)}o(p,"typedArray"),t.typedArray=p})(Fe||(Fe={}))});var Sx,Cx,pp,mp,gM,a1,gE=N(()=>{"use strict";mM();Nl();Sx=class{static{o(this,"CstNodeBuilder")}constructor(){this.nodeStack=[]}get current(){var e;return(e=this.nodeStack[this.nodeStack.length-1])!==null&&e!==void 0?e:this.rootNode}buildRootNode(e){return this.rootNode=new a1(e),this.rootNode.root=this.rootNode,this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(e){let r=new mp;return r.grammarSource=e,r.root=this.rootNode,this.current.content.push(r),this.nodeStack.push(r),r}buildLeafNode(e,r){let n=new pp(e.startOffset,e.image.length,Gm(e),e.tokenType,!r);return n.grammarSource=r,n.root=this.rootNode,this.current.content.push(n),n}removeNode(e){let r=e.container;if(r){let n=r.content.indexOf(e);n>=0&&r.content.splice(n,1)}}addHiddenNodes(e){let r=[];for(let a of e){let s=new pp(a.startOffset,a.image.length,Gm(a),a.tokenType,!0);s.root=this.rootNode,r.push(s)}let n=this.current,i=!1;if(n.content.length>0){n.content.push(...r);return}for(;n.container;){let a=n.container.content.indexOf(n);if(a>0){n.container.content.splice(a,0,...r),i=!0;break}n=n.container}i||this.rootNode.content.unshift(...r)}construct(e){let r=this.current;typeof e.$type=="string"&&(this.current.astNode=e),e.$cstNode=r;let n=this.nodeStack.pop();n?.content.length===0&&this.removeNode(n)}},Cx=class{static{o(this,"AbstractCstNode")}get parent(){return this.container}get feature(){return this.grammarSource}get hidden(){return!1}get astNode(){var e,r;let n=typeof((e=this._astNode)===null||e===void 0?void 0:e.$type)=="string"?this._astNode:(r=this.container)===null||r===void 0?void 0:r.astNode;if(!n)throw new Error("This node has no associated AST element");return n}set astNode(e){this._astNode=e}get element(){return this.astNode}get text(){return this.root.fullText.substring(this.offset,this.end)}},pp=class extends Cx{static{o(this,"LeafCstNodeImpl")}get offset(){return this._offset}get length(){return this._length}get end(){return this._offset+this._length}get hidden(){return this._hidden}get tokenType(){return this._tokenType}get range(){return this._range}constructor(e,r,n,i,a=!1){super(),this._hidden=a,this._offset=e,this._tokenType=i,this._length=r,this._range=n}},mp=class extends Cx{static{o(this,"CompositeCstNodeImpl")}constructor(){super(...arguments),this.content=new gM(this)}get children(){return this.content}get offset(){var e,r;return(r=(e=this.firstNonHiddenNode)===null||e===void 0?void 0:e.offset)!==null&&r!==void 0?r:0}get length(){return this.end-this.offset}get end(){var e,r;return(r=(e=this.lastNonHiddenNode)===null||e===void 0?void 0:e.end)!==null&&r!==void 0?r:0}get range(){let e=this.firstNonHiddenNode,r=this.lastNonHiddenNode;if(e&&r){if(this._rangeCache===void 0){let{range:n}=e,{range:i}=r;this._rangeCache={start:n.start,end:i.end.line=0;e--){let r=this.content[e];if(!r.hidden)return r}return this.content[this.content.length-1]}},gM=class t extends Array{static{o(this,"CstNodeContainer")}constructor(e){super(),this.parent=e,Object.setPrototypeOf(this,t.prototype)}push(...e){return this.addParents(e),super.push(...e)}unshift(...e){return this.addParents(e),super.unshift(...e)}splice(e,r,...n){return this.addParents(n),super.splice(e,r,...n)}addParents(e){for(let r of e)r.container=this.parent}},a1=class extends mp{static{o(this,"RootCstNodeImpl")}get text(){return this._text.substring(this.offset,this.end)}get fullText(){return this._text}constructor(e){super(),this._text="",this._text=e??""}}});function yM(t){return t.$type===yE}var yE,Ale,_le,Ax,_x,vE,s1,Dx,JBe,vM,Lx=N(()=>{"use strict";cf();Soe();Rc();Ol();is();gE();yE=Symbol("Datatype");o(yM,"isDataTypeNode");Ale="\u200B",_le=o(t=>t.endsWith(Ale)?t:t+Ale,"withRuleSuffix"),Ax=class{static{o(this,"AbstractLangiumParser")}constructor(e){this._unorderedGroups=new Map,this.allRules=new Map,this.lexer=e.parser.Lexer;let r=this.lexer.definition,n=e.LanguageMetaData.mode==="production";this.wrapper=new vM(r,Object.assign(Object.assign({},e.parser.ParserConfig),{skipValidations:n,errorMessageProvider:e.parser.ParserErrorMessageProvider}))}alternatives(e,r){this.wrapper.wrapOr(e,r)}optional(e,r){this.wrapper.wrapOption(e,r)}many(e,r){this.wrapper.wrapMany(e,r)}atLeastOne(e,r){this.wrapper.wrapAtLeastOne(e,r)}getRule(e){return this.allRules.get(e)}isRecording(){return this.wrapper.IS_RECORDING}get unorderedGroups(){return this._unorderedGroups}getRuleStack(){return this.wrapper.RULE_STACK}finalize(){this.wrapper.wrapSelfAnalysis()}},_x=class extends Ax{static{o(this,"LangiumParser")}get current(){return this.stack[this.stack.length-1]}constructor(e){super(e),this.nodeBuilder=new Sx,this.stack=[],this.assignmentMap=new Map,this.linker=e.references.Linker,this.converter=e.parser.ValueConverter,this.astReflection=e.shared.AstReflection}rule(e,r){let n=this.computeRuleType(e),i=this.wrapper.DEFINE_RULE(_le(e.name),this.startImplementation(n,r).bind(this));return this.allRules.set(e.name,i),e.entry&&(this.mainRule=i),i}computeRuleType(e){if(!e.fragment){if(Z2(e))return yE;{let r=Rg(e);return r??e.name}}}parse(e,r={}){this.nodeBuilder.buildRootNode(e);let n=this.lexerResult=this.lexer.tokenize(e);this.wrapper.input=n.tokens;let i=r.rule?this.allRules.get(r.rule):this.mainRule;if(!i)throw new Error(r.rule?`No rule found with name '${r.rule}'`:"No main rule available.");let a=i.call(this.wrapper,{});return this.nodeBuilder.addHiddenNodes(n.hidden),this.unorderedGroups.clear(),this.lexerResult=void 0,{value:a,lexerErrors:n.errors,lexerReport:n.report,parserErrors:this.wrapper.errors}}startImplementation(e,r){return n=>{let i=!this.isRecording()&&e!==void 0;if(i){let s={$type:e};this.stack.push(s),e===yE&&(s.value="")}let a;try{a=r(n)}catch{a=void 0}return a===void 0&&i&&(a=this.construct()),a}}extractHiddenTokens(e){let r=this.lexerResult.hidden;if(!r.length)return[];let n=e.startOffset;for(let i=0;in)return r.splice(0,i);return r.splice(0,r.length)}consume(e,r,n){let i=this.wrapper.wrapConsume(e,r);if(!this.isRecording()&&this.isValidToken(i)){let a=this.extractHiddenTokens(i);this.nodeBuilder.addHiddenNodes(a);let s=this.nodeBuilder.buildLeafNode(i,n),{assignment:l,isCrossRef:u}=this.getAssignment(n),h=this.current;if(l){let f=Ho(n)?i.image:this.converter.convert(i.image,s);this.assign(l.operator,l.feature,f,s,u)}else if(yM(h)){let f=i.image;Ho(n)||(f=this.converter.convert(f,s).toString()),h.value+=f}}}isValidToken(e){return!e.isInsertedInRecovery&&!isNaN(e.startOffset)&&typeof e.endOffset=="number"&&!isNaN(e.endOffset)}subrule(e,r,n,i,a){let s;!this.isRecording()&&!n&&(s=this.nodeBuilder.buildCompositeNode(i));let l=this.wrapper.wrapSubrule(e,r,a);!this.isRecording()&&s&&s.length>0&&this.performSubruleAssignment(l,i,s)}performSubruleAssignment(e,r,n){let{assignment:i,isCrossRef:a}=this.getAssignment(r);if(i)this.assign(i.operator,i.feature,e,n,a);else if(!i){let s=this.current;if(yM(s))s.value+=e.toString();else if(typeof e=="object"&&e){let u=this.assignWithoutOverride(e,s);this.stack.pop(),this.stack.push(u)}}}action(e,r){if(!this.isRecording()){let n=this.current;if(r.feature&&r.operator){n=this.construct(),this.nodeBuilder.removeNode(n.$cstNode),this.nodeBuilder.buildCompositeNode(r).content.push(n.$cstNode);let a={$type:e};this.stack.push(a),this.assign(r.operator,r.feature,n,n.$cstNode,!1)}else n.$type=e}}construct(){if(this.isRecording())return;let e=this.current;return vk(e),this.nodeBuilder.construct(e),this.stack.pop(),yM(e)?this.converter.convert(e.value,e.$cstNode):(XR(this.astReflection,e),e)}getAssignment(e){if(!this.assignmentMap.has(e)){let r=tp(e,Ml);this.assignmentMap.set(e,{assignment:r,isCrossRef:r?ep(r.terminal):!1})}return this.assignmentMap.get(e)}assign(e,r,n,i,a){let s=this.current,l;switch(a&&typeof n=="string"?l=this.linker.buildReference(s,r,i,n):l=n,e){case"=":{s[r]=l;break}case"?=":{s[r]=!0;break}case"+=":Array.isArray(s[r])||(s[r]=[]),s[r].push(l)}}assignWithoutOverride(e,r){for(let[i,a]of Object.entries(r)){let s=e[i];s===void 0?e[i]=a:Array.isArray(s)&&Array.isArray(a)&&(a.push(...s),e[i]=a)}let n=e.$cstNode;return n&&(n.astNode=void 0,e.$cstNode=void 0),e}get definitionErrors(){return this.wrapper.definitionErrors}},vE=class{static{o(this,"AbstractParserErrorMessageProvider")}buildMismatchTokenMessage(e){return zu.buildMismatchTokenMessage(e)}buildNotAllInputParsedMessage(e){return zu.buildNotAllInputParsedMessage(e)}buildNoViableAltMessage(e){return zu.buildNoViableAltMessage(e)}buildEarlyExitMessage(e){return zu.buildEarlyExitMessage(e)}},s1=class extends vE{static{o(this,"LangiumParserErrorMessageProvider")}buildMismatchTokenMessage({expected:e,actual:r}){return`Expecting ${e.LABEL?"`"+e.LABEL+"`":e.name.endsWith(":KW")?`keyword '${e.name.substring(0,e.name.length-3)}'`:`token of type '${e.name}'`} but found \`${r.image}\`.`}buildNotAllInputParsedMessage({firstRedundant:e}){return`Expecting end of file but found \`${e.image}\`.`}},Dx=class extends Ax{static{o(this,"LangiumCompletionParser")}constructor(){super(...arguments),this.tokens=[],this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}action(){}construct(){}parse(e){this.resetState();let r=this.lexer.tokenize(e,{mode:"partial"});return this.tokens=r.tokens,this.wrapper.input=[...this.tokens],this.mainRule.call(this.wrapper,{}),this.unorderedGroups.clear(),{tokens:this.tokens,elementStack:[...this.lastElementStack],tokenIndex:this.nextTokenIndex}}rule(e,r){let n=this.wrapper.DEFINE_RULE(_le(e.name),this.startImplementation(r).bind(this));return this.allRules.set(e.name,n),e.entry&&(this.mainRule=n),n}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(e){return r=>{let n=this.keepStackSize();try{e(r)}finally{this.resetStackSize(n)}}}removeUnexpectedElements(){this.elementStack.splice(this.stackSize)}keepStackSize(){let e=this.elementStack.length;return this.stackSize=e,e}resetStackSize(e){this.removeUnexpectedElements(),this.stackSize=e}consume(e,r,n){this.wrapper.wrapConsume(e,r),this.isRecording()||(this.lastElementStack=[...this.elementStack,n],this.nextTokenIndex=this.currIdx+1)}subrule(e,r,n,i,a){this.before(i),this.wrapper.wrapSubrule(e,r,a),this.after(i)}before(e){this.isRecording()||this.elementStack.push(e)}after(e){if(!this.isRecording()){let r=this.elementStack.lastIndexOf(e);r>=0&&this.elementStack.splice(r)}}get currIdx(){return this.wrapper.currIdx}},JBe={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new s1},vM=class extends xx{static{o(this,"ChevrotainWrapper")}constructor(e,r){let n=r&&"maxLookahead"in r;super(e,Object.assign(Object.assign(Object.assign({},JBe),{lookaheadStrategy:n?new Gu({maxLookahead:r.maxLookahead}):new kx({logging:r.skipValidations?()=>{}:void 0})}),r))}get IS_RECORDING(){return this.RECORDING_PHASE}DEFINE_RULE(e,r){return this.RULE(e,r)}wrapSelfAnalysis(){this.performSelfAnalysis()}wrapConsume(e,r){return this.consume(e,r)}wrapSubrule(e,r,n){return this.subrule(e,r,{ARGS:[n]})}wrapOr(e,r){this.or(e,r)}wrapOption(e,r){this.option(e,r)}wrapMany(e,r){this.many(e,r)}wrapAtLeastOne(e,r){this.atLeastOne(e,r)}}});function Rx(t,e,r){return eFe({parser:e,tokens:r,ruleNames:new Map},t),e}function eFe(t,e){let r=K2(e,!1),n=en(e.rules).filter(Oa).filter(i=>r.has(i));for(let i of n){let a=Object.assign(Object.assign({},t),{consume:1,optional:1,subrule:1,many:1,or:1});t.parser.rule(i,gp(a,i.definition))}}function gp(t,e,r=!1){let n;if(Ho(e))n=oFe(t,e);else if(Mu(e))n=tFe(t,e);else if(Ml(e))n=gp(t,e.terminal);else if(ep(e))n=Dle(t,e);else if(Il(e))n=rFe(t,e);else if(mk(e))n=iFe(t,e);else if(yk(e))n=aFe(t,e);else if(sf(e))n=sFe(t,e);else if($R(e)){let i=t.consume++;n=o(()=>t.parser.consume(i,lo,e),"method")}else throw new Zd(e.$cstNode,`Unexpected element type: ${e.$type}`);return Lle(t,r?void 0:xE(e),n,e.cardinality)}function tFe(t,e){let r=J2(e);return()=>t.parser.action(r,e)}function rFe(t,e){let r=e.rule.ref;if(Oa(r)){let n=t.subrule++,i=r.fragment,a=e.arguments.length>0?nFe(r,e.arguments):()=>({});return s=>t.parser.subrule(n,Rle(t,r),i,e,a(s))}else if(so(r)){let n=t.consume++,i=xM(t,r.name);return()=>t.parser.consume(n,i,e)}else if(r)Lc(r);else throw new Zd(e.$cstNode,`Undefined rule: ${e.rule.$refText}`)}function nFe(t,e){let r=e.map(n=>Vu(n.value));return n=>{let i={};for(let a=0;ae(n)||r(n)}else if(RR(t)){let e=Vu(t.left),r=Vu(t.right);return n=>e(n)&&r(n)}else if(MR(t)){let e=Vu(t.value);return r=>!e(r)}else if(IR(t)){let e=t.parameter.ref.name;return r=>r!==void 0&&r[e]===!0}else if(LR(t)){let e=!!t.true;return()=>e}Lc(t)}function iFe(t,e){if(e.elements.length===1)return gp(t,e.elements[0]);{let r=[];for(let i of e.elements){let a={ALT:gp(t,i,!0)},s=xE(i);s&&(a.GATE=Vu(s)),r.push(a)}let n=t.or++;return i=>t.parser.alternatives(n,r.map(a=>{let s={ALT:o(()=>a.ALT(i),"ALT")},l=a.GATE;return l&&(s.GATE=()=>l(i)),s}))}}function aFe(t,e){if(e.elements.length===1)return gp(t,e.elements[0]);let r=[];for(let l of e.elements){let u={ALT:gp(t,l,!0)},h=xE(l);h&&(u.GATE=Vu(h)),r.push(u)}let n=t.or++,i=o((l,u)=>{let h=u.getRuleStack().join("-");return`uGroup_${l}_${h}`},"idFunc"),a=o(l=>t.parser.alternatives(n,r.map((u,h)=>{let f={ALT:o(()=>!0,"ALT")},d=t.parser;f.ALT=()=>{if(u.ALT(l),!d.isRecording()){let m=i(n,d);d.unorderedGroups.get(m)||d.unorderedGroups.set(m,[]);let g=d.unorderedGroups.get(m);typeof g?.[h]>"u"&&(g[h]=!0)}};let p=u.GATE;return p?f.GATE=()=>p(l):f.GATE=()=>{let m=d.unorderedGroups.get(i(n,d));return!m?.[h]},f})),"alternatives"),s=Lle(t,xE(e),a,"*");return l=>{s(l),t.parser.isRecording()||t.parser.unorderedGroups.delete(i(n,t.parser))}}function sFe(t,e){let r=e.elements.map(n=>gp(t,n));return n=>r.forEach(i=>i(n))}function xE(t){if(sf(t))return t.guardCondition}function Dle(t,e,r=e.terminal){if(r)if(Il(r)&&Oa(r.rule.ref)){let n=r.rule.ref,i=t.subrule++;return a=>t.parser.subrule(i,Rle(t,n),!1,e,a)}else if(Il(r)&&so(r.rule.ref)){let n=t.consume++,i=xM(t,r.rule.ref.name);return()=>t.parser.consume(n,i,e)}else if(Ho(r)){let n=t.consume++,i=xM(t,r.value);return()=>t.parser.consume(n,i,e)}else throw new Error("Could not build cross reference parser");else{if(!e.type.ref)throw new Error("Could not resolve reference to type: "+e.type.$refText);let n=kk(e.type.ref),i=n?.terminal;if(!i)throw new Error("Could not find name assignment for type: "+J2(e.type.ref));return Dle(t,e,i)}}function oFe(t,e){let r=t.consume++,n=t.tokens[e.value];if(!n)throw new Error("Could not find token for keyword: "+e.value);return()=>t.parser.consume(r,n,e)}function Lle(t,e,r,n){let i=e&&Vu(e);if(!n)if(i){let a=t.or++;return s=>t.parser.alternatives(a,[{ALT:o(()=>r(s),"ALT"),GATE:o(()=>i(s),"GATE")},{ALT:lE(),GATE:o(()=>!i(s),"GATE")}])}else return r;if(n==="*"){let a=t.many++;return s=>t.parser.many(a,{DEF:o(()=>r(s),"DEF"),GATE:i?()=>i(s):void 0})}else if(n==="+"){let a=t.many++;if(i){let s=t.or++;return l=>t.parser.alternatives(s,[{ALT:o(()=>t.parser.atLeastOne(a,{DEF:o(()=>r(l),"DEF")}),"ALT"),GATE:o(()=>i(l),"GATE")},{ALT:lE(),GATE:o(()=>!i(l),"GATE")}])}else return s=>t.parser.atLeastOne(a,{DEF:o(()=>r(s),"DEF")})}else if(n==="?"){let a=t.optional++;return s=>t.parser.optional(a,{DEF:o(()=>r(s),"DEF"),GATE:i?()=>i(s):void 0})}else Lc(n)}function Rle(t,e){let r=lFe(t,e),n=t.parser.getRule(r);if(!n)throw new Error(`Rule "${r}" not found."`);return n}function lFe(t,e){if(Oa(e))return e.name;if(t.ruleNames.has(e))return t.ruleNames.get(e);{let r=e,n=r.$container,i=e.$type;for(;!Oa(n);)(sf(n)||mk(n)||yk(n))&&(i=n.elements.indexOf(r).toString()+":"+i),r=n,n=n.$container;return i=n.name+":"+i,t.ruleNames.set(e,i),i}}function xM(t,e){let r=t.tokens[e];if(!r)throw new Error(`Token "${e}" not found."`);return r}var bE=N(()=>{"use strict";cf();Rc();uk();Ps();Ol();o(Rx,"createParser");o(eFe,"buildRules");o(gp,"buildElement");o(tFe,"buildAction");o(rFe,"buildRuleCall");o(nFe,"buildRuleCallPredicate");o(Vu,"buildPredicate");o(iFe,"buildAlternatives");o(aFe,"buildUnorderedGroup");o(sFe,"buildGroup");o(xE,"getGuardCondition");o(Dle,"buildCrossReference");o(oFe,"buildKeyword");o(Lle,"wrap");o(Rle,"getRule");o(lFe,"getRuleName");o(xM,"getToken")});function bM(t){let e=t.Grammar,r=t.parser.Lexer,n=new Dx(t);return Rx(e,n,r.definition),n.finalize(),n}var wM=N(()=>{"use strict";Lx();bE();o(bM,"createCompletionParser")});function TM(t){let e=Nle(t);return e.finalize(),e}function Nle(t){let e=t.Grammar,r=t.parser.Lexer,n=new _x(t);return Rx(e,n,r.definition)}var kM=N(()=>{"use strict";Lx();bE();o(TM,"createLangiumParser");o(Nle,"prepareLangiumParser")});var Uu,wE=N(()=>{"use strict";cf();Rc();is();Ol();Lg();Ps();Uu=class{static{o(this,"DefaultTokenBuilder")}constructor(){this.diagnostics=[]}buildTokens(e,r){let n=en(K2(e,!1)),i=this.buildTerminalTokens(n),a=this.buildKeywordTokens(n,i,r);return i.forEach(s=>{let l=s.PATTERN;typeof l=="object"&&l&&"test"in l&&Dg(l)?a.unshift(s):a.push(s)}),a}flushLexingReport(e){return{diagnostics:this.popDiagnostics()}}popDiagnostics(){let e=[...this.diagnostics];return this.diagnostics=[],e}buildTerminalTokens(e){return e.filter(so).filter(r=>!r.fragment).map(r=>this.buildTerminalToken(r)).toArray()}buildTerminalToken(e){let r=Ng(e),n=this.requiresCustomPattern(r)?this.regexPatternFunction(r):r,i={name:e.name,PATTERN:n};return typeof n=="function"&&(i.LINE_BREAKS=!0),e.hidden&&(i.GROUP=Dg(r)?Xn.SKIPPED:"hidden"),i}requiresCustomPattern(e){return e.flags.includes("u")||e.flags.includes("s")?!0:!!(e.source.includes("?<=")||e.source.includes("?(r.lastIndex=i,r.exec(n))}buildKeywordTokens(e,r,n){return e.filter(Oa).flatMap(i=>Nc(i).filter(Ho)).distinct(i=>i.value).toArray().sort((i,a)=>a.value.length-i.value.length).map(i=>this.buildKeywordToken(i,r,!!n?.caseInsensitive))}buildKeywordToken(e,r,n){let i=this.buildKeywordPattern(e,n),a={name:e.value,PATTERN:i,LONGER_ALT:this.findLongerAlt(e,r)};return typeof i=="function"&&(a.LINE_BREAKS=!0),a}buildKeywordPattern(e,r){return r?new RegExp(tN(e.value)):e.value}findLongerAlt(e,r){return r.reduce((n,i)=>{let a=i?.PATTERN;return a?.source&&rN("^"+a.source+"$",e.value)&&n.push(i),n},[])}}});var yp,Oc,EM=N(()=>{"use strict";Rc();Ol();yp=class{static{o(this,"DefaultValueConverter")}convert(e,r){let n=r.grammarSource;if(ep(n)&&(n=aN(n)),Il(n)){let i=n.rule.ref;if(!i)throw new Error("This cst node was not parsed by a rule.");return this.runConverter(i,e,r)}return e}runConverter(e,r,n){var i;switch(e.name.toUpperCase()){case"INT":return Oc.convertInt(r);case"STRING":return Oc.convertString(r);case"ID":return Oc.convertID(r)}switch((i=fN(e))===null||i===void 0?void 0:i.toLowerCase()){case"number":return Oc.convertNumber(r);case"boolean":return Oc.convertBoolean(r);case"bigint":return Oc.convertBigint(r);case"date":return Oc.convertDate(r);default:return r}}};(function(t){function e(h){let f="";for(let d=1;d{"use strict";Object.defineProperty(AM,"__esModule",{value:!0});var SM;function CM(){if(SM===void 0)throw new Error("No runtime abstraction layer installed");return SM}o(CM,"RAL");(function(t){function e(r){if(r===void 0)throw new Error("No runtime abstraction layer provided");SM=r}o(e,"install"),t.install=e})(CM||(CM={}));AM.default=CM});var Ole=Mi(Ba=>{"use strict";Object.defineProperty(Ba,"__esModule",{value:!0});Ba.stringArray=Ba.array=Ba.func=Ba.error=Ba.number=Ba.string=Ba.boolean=void 0;function cFe(t){return t===!0||t===!1}o(cFe,"boolean");Ba.boolean=cFe;function Mle(t){return typeof t=="string"||t instanceof String}o(Mle,"string");Ba.string=Mle;function uFe(t){return typeof t=="number"||t instanceof Number}o(uFe,"number");Ba.number=uFe;function hFe(t){return t instanceof Error}o(hFe,"error");Ba.error=hFe;function fFe(t){return typeof t=="function"}o(fFe,"func");Ba.func=fFe;function Ile(t){return Array.isArray(t)}o(Ile,"array");Ba.array=Ile;function dFe(t){return Ile(t)&&t.every(e=>Mle(e))}o(dFe,"stringArray");Ba.stringArray=dFe});var LM=Mi(o1=>{"use strict";Object.defineProperty(o1,"__esModule",{value:!0});o1.Emitter=o1.Event=void 0;var pFe=_M(),Ple;(function(t){let e={dispose(){}};t.None=function(){return e}})(Ple||(o1.Event=Ple={}));var DM=class{static{o(this,"CallbackList")}add(e,r=null,n){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(e),this._contexts.push(r),Array.isArray(n)&&n.push({dispose:o(()=>this.remove(e,r),"dispose")})}remove(e,r=null){if(!this._callbacks)return;let n=!1;for(let i=0,a=this._callbacks.length;i{this._callbacks||(this._callbacks=new DM),this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(e,r);let i={dispose:o(()=>{this._callbacks&&(this._callbacks.remove(e,r),i.dispose=t._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty()&&this._options.onLastListenerRemove(this))},"dispose")};return Array.isArray(n)&&n.push(i),i}),this._event}fire(e){this._callbacks&&this._callbacks.invoke.call(this._callbacks,e)}dispose(){this._callbacks&&(this._callbacks.dispose(),this._callbacks=void 0)}};o1.Emitter=TE;TE._noop=function(){}});var Ble=Mi(l1=>{"use strict";Object.defineProperty(l1,"__esModule",{value:!0});l1.CancellationTokenSource=l1.CancellationToken=void 0;var mFe=_M(),gFe=Ole(),RM=LM(),kE;(function(t){t.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:RM.Event.None}),t.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:RM.Event.None});function e(r){let n=r;return n&&(n===t.None||n===t.Cancelled||gFe.boolean(n.isCancellationRequested)&&!!n.onCancellationRequested)}o(e,"is"),t.is=e})(kE||(l1.CancellationToken=kE={}));var yFe=Object.freeze(function(t,e){let r=(0,mFe.default)().timer.setTimeout(t.bind(e),0);return{dispose(){r.dispose()}}}),EE=class{static{o(this,"MutableToken")}constructor(){this._isCancelled=!1}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?yFe:(this._emitter||(this._emitter=new RM.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}},NM=class{static{o(this,"CancellationTokenSource")}get token(){return this._token||(this._token=new EE),this._token}cancel(){this._token?this._token.cancel():this._token=kE.Cancelled}dispose(){this._token?this._token instanceof EE&&this._token.dispose():this._token=kE.None}};l1.CancellationTokenSource=NM});var yr={};var qo=N(()=>{"use strict";Sr(yr,Sa(Ble(),1))});function MM(){return new Promise(t=>{typeof setImmediate>"u"?setTimeout(t,0):setImmediate(t)})}function CE(){return SE=performance.now(),new yr.CancellationTokenSource}function $le(t){Fle=t}function Bc(t){return t===Pc}async function xi(t){if(t===yr.CancellationToken.None)return;let e=performance.now();if(e-SE>=Fle&&(SE=e,await MM(),SE=performance.now()),t.isCancellationRequested)throw Pc}var SE,Fle,Pc,cs,Yo=N(()=>{"use strict";qo();o(MM,"delayNextTick");SE=0,Fle=10;o(CE,"startCancelableOperation");o($le,"setInterruptionPeriod");Pc=Symbol("OperationCancelled");o(Bc,"isOperationCancelled");o(xi,"interruptAndCheck");cs=class{static{o(this,"Deferred")}constructor(){this.promise=new Promise((e,r)=>{this.resolve=n=>(e(n),this),this.reject=n=>(r(n),this)})}}});function IM(t,e){if(t.length<=1)return t;let r=t.length/2|0,n=t.slice(0,r),i=t.slice(r);IM(n,e),IM(i,e);let a=0,s=0,l=0;for(;ar.line||e.line===r.line&&e.character>r.character?{start:r,end:e}:t}function vFe(t){let e=Vle(t.range);return e!==t.range?{newText:t.newText,range:e}:t}var AE,c1,Ule=N(()=>{"use strict";AE=class t{static{o(this,"FullTextDocument")}constructor(e,r,n,i){this._uri=e,this._languageId=r,this._version=n,this._content=i,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let r=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(r,n)}return this._content}update(e,r){for(let n of e)if(t.isIncremental(n)){let i=Vle(n.range),a=this.offsetAt(i.start),s=this.offsetAt(i.end);this._content=this._content.substring(0,a)+n.text+this._content.substring(s,this._content.length);let l=Math.max(i.start.line,0),u=Math.max(i.end.line,0),h=this._lineOffsets,f=zle(n.text,!1,a);if(u-l===f.length)for(let p=0,m=f.length;pe?i=s:n=s+1}let a=n-1;return e=this.ensureBeforeEOL(e,r[a]),{line:a,character:e-r[a]}}offsetAt(e){let r=this.getLineOffsets();if(e.line>=r.length)return this._content.length;if(e.line<0)return 0;let n=r[e.line];if(e.character<=0)return n;let i=e.line+1r&&Gle(this._content.charCodeAt(e-1));)e--;return e}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){let r=e;return r!=null&&typeof r.text=="string"&&r.range!==void 0&&(r.rangeLength===void 0||typeof r.rangeLength=="number")}static isFull(e){let r=e;return r!=null&&typeof r.text=="string"&&r.range===void 0&&r.rangeLength===void 0}};(function(t){function e(i,a,s,l){return new AE(i,a,s,l)}o(e,"create"),t.create=e;function r(i,a,s){if(i instanceof AE)return i.update(a,s),i;throw new Error("TextDocument.update: document must be created by TextDocument.create")}o(r,"update"),t.update=r;function n(i,a){let s=i.getText(),l=IM(a.map(vFe),(f,d)=>{let p=f.range.start.line-d.range.start.line;return p===0?f.range.start.character-d.range.start.character:p}),u=0,h=[];for(let f of l){let d=i.offsetAt(f.range.start);if(du&&h.push(s.substring(u,d)),f.newText.length&&h.push(f.newText),u=i.offsetAt(f.range.end)}return h.push(s.substr(u)),h.join("")}o(n,"applyEdits"),t.applyEdits=n})(c1||(c1={}));o(IM,"mergeSort");o(zle,"computeLineOffsets");o(Gle,"isEOL");o(Vle,"getWellformedRange");o(vFe,"getWellformedEdit")});var Hle,us,u1,OM=N(()=>{"use strict";(()=>{"use strict";var t={470:i=>{function a(u){if(typeof u!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(u))}o(a,"e");function s(u,h){for(var f,d="",p=0,m=-1,g=0,y=0;y<=u.length;++y){if(y2){var v=d.lastIndexOf("/");if(v!==d.length-1){v===-1?(d="",p=0):p=(d=d.slice(0,v)).length-1-d.lastIndexOf("/"),m=y,g=0;continue}}else if(d.length===2||d.length===1){d="",p=0,m=y,g=0;continue}}h&&(d.length>0?d+="/..":d="..",p=2)}else d.length>0?d+="/"+u.slice(m+1,y):d=u.slice(m+1,y),p=y-m-1;m=y,g=0}else f===46&&g!==-1?++g:g=-1}return d}o(s,"r");var l={resolve:o(function(){for(var u,h="",f=!1,d=arguments.length-1;d>=-1&&!f;d--){var p;d>=0?p=arguments[d]:(u===void 0&&(u=process.cwd()),p=u),a(p),p.length!==0&&(h=p+"/"+h,f=p.charCodeAt(0)===47)}return h=s(h,!f),f?h.length>0?"/"+h:"/":h.length>0?h:"."},"resolve"),normalize:o(function(u){if(a(u),u.length===0)return".";var h=u.charCodeAt(0)===47,f=u.charCodeAt(u.length-1)===47;return(u=s(u,!h)).length!==0||h||(u="."),u.length>0&&f&&(u+="/"),h?"/"+u:u},"normalize"),isAbsolute:o(function(u){return a(u),u.length>0&&u.charCodeAt(0)===47},"isAbsolute"),join:o(function(){if(arguments.length===0)return".";for(var u,h=0;h0&&(u===void 0?u=f:u+="/"+f)}return u===void 0?".":l.normalize(u)},"join"),relative:o(function(u,h){if(a(u),a(h),u===h||(u=l.resolve(u))===(h=l.resolve(h)))return"";for(var f=1;fy){if(h.charCodeAt(m+x)===47)return h.slice(m+x+1);if(x===0)return h.slice(m+x)}else p>y&&(u.charCodeAt(f+x)===47?v=x:x===0&&(v=0));break}var b=u.charCodeAt(f+x);if(b!==h.charCodeAt(m+x))break;b===47&&(v=x)}var w="";for(x=f+v+1;x<=d;++x)x!==d&&u.charCodeAt(x)!==47||(w.length===0?w+="..":w+="/..");return w.length>0?w+h.slice(m+v):(m+=v,h.charCodeAt(m)===47&&++m,h.slice(m))},"relative"),_makeLong:o(function(u){return u},"_makeLong"),dirname:o(function(u){if(a(u),u.length===0)return".";for(var h=u.charCodeAt(0),f=h===47,d=-1,p=!0,m=u.length-1;m>=1;--m)if((h=u.charCodeAt(m))===47){if(!p){d=m;break}}else p=!1;return d===-1?f?"/":".":f&&d===1?"//":u.slice(0,d)},"dirname"),basename:o(function(u,h){if(h!==void 0&&typeof h!="string")throw new TypeError('"ext" argument must be a string');a(u);var f,d=0,p=-1,m=!0;if(h!==void 0&&h.length>0&&h.length<=u.length){if(h.length===u.length&&h===u)return"";var g=h.length-1,y=-1;for(f=u.length-1;f>=0;--f){var v=u.charCodeAt(f);if(v===47){if(!m){d=f+1;break}}else y===-1&&(m=!1,y=f+1),g>=0&&(v===h.charCodeAt(g)?--g==-1&&(p=f):(g=-1,p=y))}return d===p?p=y:p===-1&&(p=u.length),u.slice(d,p)}for(f=u.length-1;f>=0;--f)if(u.charCodeAt(f)===47){if(!m){d=f+1;break}}else p===-1&&(m=!1,p=f+1);return p===-1?"":u.slice(d,p)},"basename"),extname:o(function(u){a(u);for(var h=-1,f=0,d=-1,p=!0,m=0,g=u.length-1;g>=0;--g){var y=u.charCodeAt(g);if(y!==47)d===-1&&(p=!1,d=g+1),y===46?h===-1?h=g:m!==1&&(m=1):h!==-1&&(m=-1);else if(!p){f=g+1;break}}return h===-1||d===-1||m===0||m===1&&h===d-1&&h===f+1?"":u.slice(h,d)},"extname"),format:o(function(u){if(u===null||typeof u!="object")throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof u);return function(h,f){var d=f.dir||f.root,p=f.base||(f.name||"")+(f.ext||"");return d?d===f.root?d+p:d+"/"+p:p}(0,u)},"format"),parse:o(function(u){a(u);var h={root:"",dir:"",base:"",ext:"",name:""};if(u.length===0)return h;var f,d=u.charCodeAt(0),p=d===47;p?(h.root="/",f=1):f=0;for(var m=-1,g=0,y=-1,v=!0,x=u.length-1,b=0;x>=f;--x)if((d=u.charCodeAt(x))!==47)y===-1&&(v=!1,y=x+1),d===46?m===-1?m=x:b!==1&&(b=1):m!==-1&&(b=-1);else if(!v){g=x+1;break}return m===-1||y===-1||b===0||b===1&&m===y-1&&m===g+1?y!==-1&&(h.base=h.name=g===0&&p?u.slice(1,y):u.slice(g,y)):(g===0&&p?(h.name=u.slice(1,m),h.base=u.slice(1,y)):(h.name=u.slice(g,m),h.base=u.slice(g,y)),h.ext=u.slice(m,y)),g>0?h.dir=u.slice(0,g-1):p&&(h.dir="/"),h},"parse"),sep:"/",delimiter:":",win32:null,posix:null};l.posix=l,i.exports=l}},e={};function r(i){var a=e[i];if(a!==void 0)return a.exports;var s=e[i]={exports:{}};return t[i](s,s.exports,r),s.exports}o(r,"r"),r.d=(i,a)=>{for(var s in a)r.o(a,s)&&!r.o(i,s)&&Object.defineProperty(i,s,{enumerable:!0,get:a[s]})},r.o=(i,a)=>Object.prototype.hasOwnProperty.call(i,a),r.r=i=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(i,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(i,"__esModule",{value:!0})};var n={};(()=>{let i;r.r(n),r.d(n,{URI:o(()=>p,"URI"),Utils:o(()=>I,"Utils")}),typeof process=="object"?i=process.platform==="win32":typeof navigator=="object"&&(i=navigator.userAgent.indexOf("Windows")>=0);let a=/^\w[\w\d+.-]*$/,s=/^\//,l=/^\/\//;function u(D,k){if(!D.scheme&&k)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${D.authority}", path: "${D.path}", query: "${D.query}", fragment: "${D.fragment}"}`);if(D.scheme&&!a.test(D.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(D.path){if(D.authority){if(!s.test(D.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(l.test(D.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}o(u,"s");let h="",f="/",d=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class p{static{o(this,"f")}static isUri(k){return k instanceof p||!!k&&typeof k.authority=="string"&&typeof k.fragment=="string"&&typeof k.path=="string"&&typeof k.query=="string"&&typeof k.scheme=="string"&&typeof k.fsPath=="string"&&typeof k.with=="function"&&typeof k.toString=="function"}scheme;authority;path;query;fragment;constructor(k,L,R,O,M,B=!1){typeof k=="object"?(this.scheme=k.scheme||h,this.authority=k.authority||h,this.path=k.path||h,this.query=k.query||h,this.fragment=k.fragment||h):(this.scheme=function(F,P){return F||P?F:"file"}(k,B),this.authority=L||h,this.path=function(F,P){switch(F){case"https":case"http":case"file":P?P[0]!==f&&(P=f+P):P=f}return P}(this.scheme,R||h),this.query=O||h,this.fragment=M||h,u(this,B))}get fsPath(){return b(this,!1)}with(k){if(!k)return this;let{scheme:L,authority:R,path:O,query:M,fragment:B}=k;return L===void 0?L=this.scheme:L===null&&(L=h),R===void 0?R=this.authority:R===null&&(R=h),O===void 0?O=this.path:O===null&&(O=h),M===void 0?M=this.query:M===null&&(M=h),B===void 0?B=this.fragment:B===null&&(B=h),L===this.scheme&&R===this.authority&&O===this.path&&M===this.query&&B===this.fragment?this:new g(L,R,O,M,B)}static parse(k,L=!1){let R=d.exec(k);return R?new g(R[2]||h,E(R[4]||h),E(R[5]||h),E(R[7]||h),E(R[9]||h),L):new g(h,h,h,h,h)}static file(k){let L=h;if(i&&(k=k.replace(/\\/g,f)),k[0]===f&&k[1]===f){let R=k.indexOf(f,2);R===-1?(L=k.substring(2),k=f):(L=k.substring(2,R),k=k.substring(R)||f)}return new g("file",L,k,h,h)}static from(k){let L=new g(k.scheme,k.authority,k.path,k.query,k.fragment);return u(L,!0),L}toString(k=!1){return w(this,k)}toJSON(){return this}static revive(k){if(k){if(k instanceof p)return k;{let L=new g(k);return L._formatted=k.external,L._fsPath=k._sep===m?k.fsPath:null,L}}return k}}let m=i?1:void 0;class g extends p{static{o(this,"l")}_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=b(this,!1)),this._fsPath}toString(k=!1){return k?w(this,!0):(this._formatted||(this._formatted=w(this,!1)),this._formatted)}toJSON(){let k={$mid:1};return this._fsPath&&(k.fsPath=this._fsPath,k._sep=m),this._formatted&&(k.external=this._formatted),this.path&&(k.path=this.path),this.scheme&&(k.scheme=this.scheme),this.authority&&(k.authority=this.authority),this.query&&(k.query=this.query),this.fragment&&(k.fragment=this.fragment),k}}let y={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function v(D,k,L){let R,O=-1;for(let M=0;M=97&&B<=122||B>=65&&B<=90||B>=48&&B<=57||B===45||B===46||B===95||B===126||k&&B===47||L&&B===91||L&&B===93||L&&B===58)O!==-1&&(R+=encodeURIComponent(D.substring(O,M)),O=-1),R!==void 0&&(R+=D.charAt(M));else{R===void 0&&(R=D.substr(0,M));let F=y[B];F!==void 0?(O!==-1&&(R+=encodeURIComponent(D.substring(O,M)),O=-1),R+=F):O===-1&&(O=M)}}return O!==-1&&(R+=encodeURIComponent(D.substring(O))),R!==void 0?R:D}o(v,"d");function x(D){let k;for(let L=0;L1&&D.scheme==="file"?`//${D.authority}${D.path}`:D.path.charCodeAt(0)===47&&(D.path.charCodeAt(1)>=65&&D.path.charCodeAt(1)<=90||D.path.charCodeAt(1)>=97&&D.path.charCodeAt(1)<=122)&&D.path.charCodeAt(2)===58?k?D.path.substr(1):D.path[1].toLowerCase()+D.path.substr(2):D.path,i&&(L=L.replace(/\//g,"\\")),L}o(b,"m");function w(D,k){let L=k?x:v,R="",{scheme:O,authority:M,path:B,query:F,fragment:P}=D;if(O&&(R+=O,R+=":"),(M||O==="file")&&(R+=f,R+=f),M){let z=M.indexOf("@");if(z!==-1){let $=M.substr(0,z);M=M.substr(z+1),z=$.lastIndexOf(":"),z===-1?R+=L($,!1,!1):(R+=L($.substr(0,z),!1,!1),R+=":",R+=L($.substr(z+1),!1,!0)),R+="@"}M=M.toLowerCase(),z=M.lastIndexOf(":"),z===-1?R+=L(M,!1,!0):(R+=L(M.substr(0,z),!1,!0),R+=M.substr(z))}if(B){if(B.length>=3&&B.charCodeAt(0)===47&&B.charCodeAt(2)===58){let z=B.charCodeAt(1);z>=65&&z<=90&&(B=`/${String.fromCharCode(z+32)}:${B.substr(3)}`)}else if(B.length>=2&&B.charCodeAt(1)===58){let z=B.charCodeAt(0);z>=65&&z<=90&&(B=`${String.fromCharCode(z+32)}:${B.substr(2)}`)}R+=L(B,!0,!1)}return F&&(R+="?",R+=L(F,!1,!1)),P&&(R+="#",R+=k?P:v(P,!1,!1)),R}o(w,"y");function C(D){try{return decodeURIComponent(D)}catch{return D.length>3?D.substr(0,3)+C(D.substr(3)):D}}o(C,"v");let T=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function E(D){return D.match(T)?D.replace(T,k=>C(k)):D}o(E,"C");var A=r(470);let S=A.posix||A,_="/";var I;(function(D){D.joinPath=function(k,...L){return k.with({path:S.join(k.path,...L)})},D.resolvePath=function(k,...L){let R=k.path,O=!1;R[0]!==_&&(R=_+R,O=!0);let M=S.resolve(R,...L);return O&&M[0]===_&&!k.authority&&(M=M.substring(1)),k.with({path:M})},D.dirname=function(k){if(k.path.length===0||k.path===_)return k;let L=S.dirname(k.path);return L.length===1&&L.charCodeAt(0)===46&&(L=""),k.with({path:L})},D.basename=function(k){return S.basename(k.path)},D.extname=function(k){return S.extname(k.path)}})(I||(I={}))})(),Hle=n})();({URI:us,Utils:u1}=Hle)});var hs,Fc=N(()=>{"use strict";OM();(function(t){t.basename=u1.basename,t.dirname=u1.dirname,t.extname=u1.extname,t.joinPath=u1.joinPath,t.resolvePath=u1.resolvePath;function e(i,a){return i?.toString()===a?.toString()}o(e,"equals"),t.equals=e;function r(i,a){let s=typeof i=="string"?i:i.path,l=typeof a=="string"?a:a.path,u=s.split("/").filter(m=>m.length>0),h=l.split("/").filter(m=>m.length>0),f=0;for(;f{"use strict";Ule();h1();qo();Ps();Fc();(function(t){t[t.Changed=0]="Changed",t[t.Parsed=1]="Parsed",t[t.IndexedContent=2]="IndexedContent",t[t.ComputedScopes=3]="ComputedScopes",t[t.Linked=4]="Linked",t[t.IndexedReferences=5]="IndexedReferences",t[t.Validated=6]="Validated"})(kn||(kn={}));Nx=class{static{o(this,"DefaultLangiumDocumentFactory")}constructor(e){this.serviceRegistry=e.ServiceRegistry,this.textDocuments=e.workspace.TextDocuments,this.fileSystemProvider=e.workspace.FileSystemProvider}async fromUri(e,r=yr.CancellationToken.None){let n=await this.fileSystemProvider.readFile(e);return this.createAsync(e,n,r)}fromTextDocument(e,r,n){return r=r??us.parse(e.uri),yr.CancellationToken.is(n)?this.createAsync(r,e,n):this.create(r,e,n)}fromString(e,r,n){return yr.CancellationToken.is(n)?this.createAsync(r,e,n):this.create(r,e,n)}fromModel(e,r){return this.create(r,{$model:e})}create(e,r,n){if(typeof r=="string"){let i=this.parse(e,r,n);return this.createLangiumDocument(i,e,void 0,r)}else if("$model"in r){let i={value:r.$model,parserErrors:[],lexerErrors:[]};return this.createLangiumDocument(i,e)}else{let i=this.parse(e,r.getText(),n);return this.createLangiumDocument(i,e,r)}}async createAsync(e,r,n){if(typeof r=="string"){let i=await this.parseAsync(e,r,n);return this.createLangiumDocument(i,e,void 0,r)}else{let i=await this.parseAsync(e,r.getText(),n);return this.createLangiumDocument(i,e,r)}}createLangiumDocument(e,r,n,i){let a;if(n)a={parseResult:e,uri:r,state:kn.Parsed,references:[],textDocument:n};else{let s=this.createTextDocumentGetter(r,i);a={parseResult:e,uri:r,state:kn.Parsed,references:[],get textDocument(){return s()}}}return e.value.$document=a,a}async update(e,r){var n,i;let a=(n=e.parseResult.value.$cstNode)===null||n===void 0?void 0:n.root.fullText,s=(i=this.textDocuments)===null||i===void 0?void 0:i.get(e.uri.toString()),l=s?s.getText():await this.fileSystemProvider.readFile(e.uri);if(s)Object.defineProperty(e,"textDocument",{value:s});else{let u=this.createTextDocumentGetter(e.uri,l);Object.defineProperty(e,"textDocument",{get:u})}return a!==l&&(e.parseResult=await this.parseAsync(e.uri,l,r),e.parseResult.value.$document=e),e.state=kn.Parsed,e}parse(e,r,n){return this.serviceRegistry.getServices(e).parser.LangiumParser.parse(r,n)}parseAsync(e,r,n){return this.serviceRegistry.getServices(e).parser.AsyncParser.parse(r,n)}createTextDocumentGetter(e,r){let n=this.serviceRegistry,i;return()=>i??(i=c1.create(e.toString(),n.getServices(e).LanguageMetaData.languageId,0,r??""))}},Mx=class{static{o(this,"DefaultLangiumDocuments")}constructor(e){this.documentMap=new Map,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.serviceRegistry=e.ServiceRegistry}get all(){return en(this.documentMap.values())}addDocument(e){let r=e.uri.toString();if(this.documentMap.has(r))throw new Error(`A document with the URI '${r}' is already present.`);this.documentMap.set(r,e)}getDocument(e){let r=e.toString();return this.documentMap.get(r)}async getOrCreateDocument(e,r){let n=this.getDocument(e);return n||(n=await this.langiumDocumentFactory.fromUri(e,r),this.addDocument(n),n)}createDocument(e,r,n){if(n)return this.langiumDocumentFactory.fromString(r,e,n).then(i=>(this.addDocument(i),i));{let i=this.langiumDocumentFactory.fromString(r,e);return this.addDocument(i),i}}hasDocument(e){return this.documentMap.has(e.toString())}invalidateDocument(e){let r=e.toString(),n=this.documentMap.get(r);return n&&(this.serviceRegistry.getServices(e).references.Linker.unlink(n),n.state=kn.Changed,n.precomputedScopes=void 0,n.diagnostics=void 0),n}deleteDocument(e){let r=e.toString(),n=this.documentMap.get(r);return n&&(n.state=kn.Changed,this.documentMap.delete(r)),n}}});var PM,Ix,BM=N(()=>{"use strict";qo();Rl();is();Yo();h1();PM=Symbol("ref_resolving"),Ix=class{static{o(this,"DefaultLinker")}constructor(e){this.reflection=e.shared.AstReflection,this.langiumDocuments=()=>e.shared.workspace.LangiumDocuments,this.scopeProvider=e.references.ScopeProvider,this.astNodeLocator=e.workspace.AstNodeLocator}async link(e,r=yr.CancellationToken.None){for(let n of Wo(e.parseResult.value))await xi(r),Ag(n).forEach(i=>this.doLink(i,e))}doLink(e,r){var n;let i=e.reference;if(i._ref===void 0){i._ref=PM;try{let a=this.getCandidate(e);if(jd(a))i._ref=a;else if(i._nodeDescription=a,this.langiumDocuments().hasDocument(a.documentUri)){let s=this.loadAstNode(a);i._ref=s??this.createLinkingError(e,a)}else i._ref=void 0}catch(a){console.error(`An error occurred while resolving reference to '${i.$refText}':`,a);let s=(n=a.message)!==null&&n!==void 0?n:String(a);i._ref=Object.assign(Object.assign({},e),{message:`An error occurred while resolving reference to '${i.$refText}': ${s}`})}r.references.push(i)}}unlink(e){for(let r of e.references)delete r._ref,delete r._nodeDescription;e.references=[]}getCandidate(e){let n=this.scopeProvider.getScope(e).getElement(e.reference.$refText);return n??this.createLinkingError(e)}buildReference(e,r,n,i){let a=this,s={$refNode:n,$refText:i,get ref(){var l;if(ii(this._ref))return this._ref;if(kR(this._nodeDescription)){let u=a.loadAstNode(this._nodeDescription);this._ref=u??a.createLinkingError({reference:s,container:e,property:r},this._nodeDescription)}else if(this._ref===void 0){this._ref=PM;let u=H2(e).$document,h=a.getLinkedNode({reference:s,container:e,property:r});if(h.error&&u&&u.state{"use strict";Ol();o(Wle,"isNamed");Ox=class{static{o(this,"DefaultNameProvider")}getName(e){if(Wle(e))return e.name}getNameNode(e){return Q2(e.$cstNode,"name")}}});var Px,$M=N(()=>{"use strict";Ol();Rl();is();Nl();Ps();Fc();Px=class{static{o(this,"DefaultReferences")}constructor(e){this.nameProvider=e.references.NameProvider,this.index=e.shared.workspace.IndexManager,this.nodeLocator=e.workspace.AstNodeLocator}findDeclaration(e){if(e){let r=hN(e),n=e.astNode;if(r&&n){let i=n[r.feature];if(va(i))return i.ref;if(Array.isArray(i)){for(let a of i)if(va(a)&&a.$refNode&&a.$refNode.offset<=e.offset&&a.$refNode.end>=e.end)return a.ref}}if(n){let i=this.nameProvider.getNameNode(n);if(i&&(i===e||SR(e,i)))return n}}}findDeclarationNode(e){let r=this.findDeclaration(e);if(r?.$cstNode){let n=this.nameProvider.getNameNode(r);return n??r.$cstNode}}findReferences(e,r){let n=[];if(r.includeDeclaration){let a=this.getReferenceToSelf(e);a&&n.push(a)}let i=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e));return r.documentUri&&(i=i.filter(a=>hs.equals(a.sourceUri,r.documentUri))),n.push(...i),en(n)}getReferenceToSelf(e){let r=this.nameProvider.getNameNode(e);if(r){let n=Pa(e),i=this.nodeLocator.getAstNodePath(e);return{sourceUri:n.uri,sourcePath:i,targetUri:n.uri,targetPath:i,segment:Qd(r),local:!0}}}}});var Bl,vp,f1=N(()=>{"use strict";Ps();Bl=class{static{o(this,"MultiMap")}constructor(e){if(this.map=new Map,e)for(let[r,n]of e)this.add(r,n)}get size(){return zm.sum(en(this.map.values()).map(e=>e.length))}clear(){this.map.clear()}delete(e,r){if(r===void 0)return this.map.delete(e);{let n=this.map.get(e);if(n){let i=n.indexOf(r);if(i>=0)return n.length===1?this.map.delete(e):n.splice(i,1),!0}return!1}}get(e){var r;return(r=this.map.get(e))!==null&&r!==void 0?r:[]}has(e,r){if(r===void 0)return this.map.has(e);{let n=this.map.get(e);return n?n.indexOf(r)>=0:!1}}add(e,r){return this.map.has(e)?this.map.get(e).push(r):this.map.set(e,[r]),this}addAll(e,r){return this.map.has(e)?this.map.get(e).push(...r):this.map.set(e,Array.from(r)),this}forEach(e){this.map.forEach((r,n)=>r.forEach(i=>e(i,n,this)))}[Symbol.iterator](){return this.entries().iterator()}entries(){return en(this.map.entries()).flatMap(([e,r])=>r.map(n=>[e,n]))}keys(){return en(this.map.keys())}values(){return en(this.map.values()).flat()}entriesGroupedByKey(){return en(this.map.entries())}},vp=class{static{o(this,"BiMap")}get size(){return this.map.size}constructor(e){if(this.map=new Map,this.inverse=new Map,e)for(let[r,n]of e)this.set(r,n)}clear(){this.map.clear(),this.inverse.clear()}set(e,r){return this.map.set(e,r),this.inverse.set(r,e),this}get(e){return this.map.get(e)}getKey(e){return this.inverse.get(e)}delete(e){let r=this.map.get(e);return r!==void 0?(this.map.delete(e),this.inverse.delete(r),!0):!1}}});var Bx,zM=N(()=>{"use strict";qo();is();f1();Yo();Bx=class{static{o(this,"DefaultScopeComputation")}constructor(e){this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider}async computeExports(e,r=yr.CancellationToken.None){return this.computeExportsForNode(e.parseResult.value,e,void 0,r)}async computeExportsForNode(e,r,n=W2,i=yr.CancellationToken.None){let a=[];this.exportNode(e,a,r);for(let s of n(e))await xi(i),this.exportNode(s,a,r);return a}exportNode(e,r,n){let i=this.nameProvider.getName(e);i&&r.push(this.descriptions.createDescription(e,i,n))}async computeLocalScopes(e,r=yr.CancellationToken.None){let n=e.parseResult.value,i=new Bl;for(let a of Nc(n))await xi(r),this.processNode(a,e,i);return i}processNode(e,r,n){let i=e.$container;if(i){let a=this.nameProvider.getName(e);a&&n.add(i,this.descriptions.createDescription(e,a,r))}}}});var d1,Fx,xFe,GM=N(()=>{"use strict";Ps();d1=class{static{o(this,"StreamScope")}constructor(e,r,n){var i;this.elements=e,this.outerScope=r,this.caseInsensitive=(i=n?.caseInsensitive)!==null&&i!==void 0?i:!1}getAllElements(){return this.outerScope?this.elements.concat(this.outerScope.getAllElements()):this.elements}getElement(e){let r=this.caseInsensitive?this.elements.find(n=>n.name.toLowerCase()===e.toLowerCase()):this.elements.find(n=>n.name===e);if(r)return r;if(this.outerScope)return this.outerScope.getElement(e)}},Fx=class{static{o(this,"MapScope")}constructor(e,r,n){var i;this.elements=new Map,this.caseInsensitive=(i=n?.caseInsensitive)!==null&&i!==void 0?i:!1;for(let a of e){let s=this.caseInsensitive?a.name.toLowerCase():a.name;this.elements.set(s,a)}this.outerScope=r}getElement(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.elements.get(r);if(n)return n;if(this.outerScope)return this.outerScope.getElement(e)}getAllElements(){let e=en(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}},xFe={getElement(){},getAllElements(){return I2}}});var p1,$x,xp,_E,m1,DE=N(()=>{"use strict";p1=class{static{o(this,"DisposableCache")}constructor(){this.toDispose=[],this.isDisposed=!1}onDispose(e){this.toDispose.push(e)}dispose(){this.throwIfDisposed(),this.clear(),this.isDisposed=!0,this.toDispose.forEach(e=>e.dispose())}throwIfDisposed(){if(this.isDisposed)throw new Error("This cache has already been disposed")}},$x=class extends p1{static{o(this,"SimpleCache")}constructor(){super(...arguments),this.cache=new Map}has(e){return this.throwIfDisposed(),this.cache.has(e)}set(e,r){this.throwIfDisposed(),this.cache.set(e,r)}get(e,r){if(this.throwIfDisposed(),this.cache.has(e))return this.cache.get(e);if(r){let n=r();return this.cache.set(e,n),n}else return}delete(e){return this.throwIfDisposed(),this.cache.delete(e)}clear(){this.throwIfDisposed(),this.cache.clear()}},xp=class extends p1{static{o(this,"ContextCache")}constructor(e){super(),this.cache=new Map,this.converter=e??(r=>r)}has(e,r){return this.throwIfDisposed(),this.cacheForContext(e).has(r)}set(e,r,n){this.throwIfDisposed(),this.cacheForContext(e).set(r,n)}get(e,r,n){this.throwIfDisposed();let i=this.cacheForContext(e);if(i.has(r))return i.get(r);if(n){let a=n();return i.set(r,a),a}else return}delete(e,r){return this.throwIfDisposed(),this.cacheForContext(e).delete(r)}clear(e){if(this.throwIfDisposed(),e){let r=this.converter(e);this.cache.delete(r)}else this.cache.clear()}cacheForContext(e){let r=this.converter(e),n=this.cache.get(r);return n||(n=new Map,this.cache.set(r,n)),n}},_E=class extends xp{static{o(this,"DocumentCache")}constructor(e,r){super(n=>n.toString()),r?(this.toDispose.push(e.workspace.DocumentBuilder.onDocumentPhase(r,n=>{this.clear(n.uri.toString())})),this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((n,i)=>{for(let a of i)this.clear(a)}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((n,i)=>{let a=n.concat(i);for(let s of a)this.clear(s)}))}},m1=class extends $x{static{o(this,"WorkspaceCache")}constructor(e,r){super(),r?(this.toDispose.push(e.workspace.DocumentBuilder.onBuildPhase(r,()=>{this.clear()})),this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((n,i)=>{i.length>0&&this.clear()}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate(()=>{this.clear()}))}}});var zx,VM=N(()=>{"use strict";GM();is();Ps();DE();zx=class{static{o(this,"DefaultScopeProvider")}constructor(e){this.reflection=e.shared.AstReflection,this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider,this.indexManager=e.shared.workspace.IndexManager,this.globalScopeCache=new m1(e.shared)}getScope(e){let r=[],n=this.reflection.getReferenceType(e),i=Pa(e.container).precomputedScopes;if(i){let s=e.container;do{let l=i.get(s);l.length>0&&r.push(en(l).filter(u=>this.reflection.isSubtype(u.type,n))),s=s.$container}while(s)}let a=this.getGlobalScope(n,e);for(let s=r.length-1;s>=0;s--)a=this.createScope(r[s],a);return a}createScope(e,r,n){return new d1(en(e),r,n)}createScopeForNodes(e,r,n){let i=en(e).map(a=>{let s=this.nameProvider.getName(a);if(s)return this.descriptions.createDescription(a,s)}).nonNullable();return new d1(i,r,n)}getGlobalScope(e,r){return this.globalScopeCache.get(e,()=>new Fx(this.indexManager.allElements(e)))}}});function UM(t){return typeof t.$comment=="string"}function qle(t){return typeof t=="object"&&!!t&&("$ref"in t||"$error"in t)}var Gx,LE=N(()=>{"use strict";OM();Rl();is();Ol();o(UM,"isAstNodeWithComment");o(qle,"isIntermediateReference");Gx=class{static{o(this,"DefaultJsonSerializer")}constructor(e){this.ignoreProperties=new Set(["$container","$containerProperty","$containerIndex","$document","$cstNode"]),this.langiumDocuments=e.shared.workspace.LangiumDocuments,this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider,this.commentProvider=e.documentation.CommentProvider}serialize(e,r){let n=r??{},i=r?.replacer,a=o((l,u)=>this.replacer(l,u,n),"defaultReplacer"),s=i?(l,u)=>i(l,u,a):a;try{return this.currentDocument=Pa(e),JSON.stringify(e,s,r?.space)}finally{this.currentDocument=void 0}}deserialize(e,r){let n=r??{},i=JSON.parse(e);return this.linkNode(i,i,n),i}replacer(e,r,{refText:n,sourceText:i,textRegions:a,comments:s,uriConverter:l}){var u,h,f,d;if(!this.ignoreProperties.has(e))if(va(r)){let p=r.ref,m=n?r.$refText:void 0;if(p){let g=Pa(p),y="";this.currentDocument&&this.currentDocument!==g&&(l?y=l(g.uri,r):y=g.uri.toString());let v=this.astNodeLocator.getAstNodePath(p);return{$ref:`${y}#${v}`,$refText:m}}else return{$error:(h=(u=r.error)===null||u===void 0?void 0:u.message)!==null&&h!==void 0?h:"Could not resolve reference",$refText:m}}else if(ii(r)){let p;if(a&&(p=this.addAstNodeRegionWithAssignmentsTo(Object.assign({},r)),(!e||r.$document)&&p?.$textRegion&&(p.$textRegion.documentURI=(f=this.currentDocument)===null||f===void 0?void 0:f.uri.toString())),i&&!e&&(p??(p=Object.assign({},r)),p.$sourceText=(d=r.$cstNode)===null||d===void 0?void 0:d.text),s){p??(p=Object.assign({},r));let m=this.commentProvider.getComment(r);m&&(p.$comment=m.replace(/\r/g,""))}return p??r}else return r}addAstNodeRegionWithAssignmentsTo(e){let r=o(n=>({offset:n.offset,end:n.end,length:n.length,range:n.range}),"createDocumentSegment");if(e.$cstNode){let n=e.$textRegion=r(e.$cstNode),i=n.assignments={};return Object.keys(e).filter(a=>!a.startsWith("$")).forEach(a=>{let s=oN(e.$cstNode,a).map(r);s.length!==0&&(i[a]=s)}),e}}linkNode(e,r,n,i,a,s){for(let[u,h]of Object.entries(e))if(Array.isArray(h))for(let f=0;f{"use strict";Fc();Vx=class{static{o(this,"DefaultServiceRegistry")}get map(){return this.fileExtensionMap}constructor(e){this.languageIdMap=new Map,this.fileExtensionMap=new Map,this.textDocuments=e?.workspace.TextDocuments}register(e){let r=e.LanguageMetaData;for(let n of r.fileExtensions)this.fileExtensionMap.has(n)&&console.warn(`The file extension ${n} is used by multiple languages. It is now assigned to '${r.languageId}'.`),this.fileExtensionMap.set(n,e);this.languageIdMap.set(r.languageId,e),this.languageIdMap.size===1?this.singleton=e:this.singleton=void 0}getServices(e){var r,n;if(this.singleton!==void 0)return this.singleton;if(this.languageIdMap.size===0)throw new Error("The service registry is empty. Use `register` to register the services of a language.");let i=(n=(r=this.textDocuments)===null||r===void 0?void 0:r.get(e))===null||n===void 0?void 0:n.languageId;if(i!==void 0){let l=this.languageIdMap.get(i);if(l)return l}let a=hs.extname(e),s=this.fileExtensionMap.get(a);if(!s)throw i?new Error(`The service registry contains no services for the extension '${a}' for language '${i}'.`):new Error(`The service registry contains no services for the extension '${a}'.`);return s}hasServices(e){try{return this.getServices(e),!0}catch{return!1}}get all(){return Array.from(this.languageIdMap.values())}}});function bp(t){return{code:t}}var g1,Ux,Hx=N(()=>{"use strict";Xo();f1();Yo();Ps();o(bp,"diagnosticData");(function(t){t.all=["fast","slow","built-in"]})(g1||(g1={}));Ux=class{static{o(this,"ValidationRegistry")}constructor(e){this.entries=new Bl,this.entriesBefore=[],this.entriesAfter=[],this.reflection=e.shared.AstReflection}register(e,r=this,n="fast"){if(n==="built-in")throw new Error("The 'built-in' category is reserved for lexer, parser, and linker errors.");for(let[i,a]of Object.entries(e)){let s=a;if(Array.isArray(s))for(let l of s){let u={check:this.wrapValidationException(l,r),category:n};this.addEntry(i,u)}else if(typeof s=="function"){let l={check:this.wrapValidationException(s,r),category:n};this.addEntry(i,l)}else Lc(s)}}wrapValidationException(e,r){return async(n,i,a)=>{await this.handleException(()=>e.call(r,n,i,a),"An error occurred during validation",i,n)}}async handleException(e,r,n,i){try{await e()}catch(a){if(Bc(a))throw a;console.error(`${r}:`,a),a instanceof Error&&a.stack&&console.error(a.stack);let s=a instanceof Error?a.message:String(a);n("error",`${r}: ${s}`,{node:i})}}addEntry(e,r){if(e==="AstNode"){this.entries.add("AstNode",r);return}for(let n of this.reflection.getAllSubTypes(e))this.entries.add(n,r)}getChecks(e,r){let n=en(this.entries.get(e)).concat(this.entries.get("AstNode"));return r&&(n=n.filter(i=>r.includes(i.category))),n.map(i=>i.check)}registerBeforeDocument(e,r=this){this.entriesBefore.push(this.wrapPreparationException(e,"An error occurred during set-up of the validation",r))}registerAfterDocument(e,r=this){this.entriesAfter.push(this.wrapPreparationException(e,"An error occurred during tear-down of the validation",r))}wrapPreparationException(e,r,n){return async(i,a,s,l)=>{await this.handleException(()=>e.call(n,i,a,s,l),r,a,i)}}get checksBefore(){return this.entriesBefore}get checksAfter(){return this.entriesAfter}}});function Yle(t){if(t.range)return t.range;let e;return typeof t.property=="string"?e=Q2(t.node.$cstNode,t.property,t.index):typeof t.keyword=="string"&&(e=cN(t.node.$cstNode,t.keyword,t.index)),e??(e=t.node.$cstNode),e?e.range:{start:{line:0,character:0},end:{line:0,character:0}}}function RE(t){switch(t){case"error":return 1;case"warning":return 2;case"info":return 3;case"hint":return 4;default:throw new Error("Invalid diagnostic severity: "+t)}}function Xle(t){switch(t){case"error":return bp(jo.LexingError);case"warning":return bp(jo.LexingWarning);case"info":return bp(jo.LexingInfo);case"hint":return bp(jo.LexingHint);default:throw new Error("Invalid diagnostic severity: "+t)}}var Wx,jo,WM=N(()=>{"use strict";qo();Ol();is();Nl();Yo();Hx();Wx=class{static{o(this,"DefaultDocumentValidator")}constructor(e){this.validationRegistry=e.validation.ValidationRegistry,this.metadata=e.LanguageMetaData}async validateDocument(e,r={},n=yr.CancellationToken.None){let i=e.parseResult,a=[];if(await xi(n),(!r.categories||r.categories.includes("built-in"))&&(this.processLexingErrors(i,a,r),r.stopAfterLexingErrors&&a.some(s=>{var l;return((l=s.data)===null||l===void 0?void 0:l.code)===jo.LexingError})||(this.processParsingErrors(i,a,r),r.stopAfterParsingErrors&&a.some(s=>{var l;return((l=s.data)===null||l===void 0?void 0:l.code)===jo.ParsingError}))||(this.processLinkingErrors(e,a,r),r.stopAfterLinkingErrors&&a.some(s=>{var l;return((l=s.data)===null||l===void 0?void 0:l.code)===jo.LinkingError}))))return a;try{a.push(...await this.validateAst(i.value,r,n))}catch(s){if(Bc(s))throw s;console.error("An error occurred during validation:",s)}return await xi(n),a}processLexingErrors(e,r,n){var i,a,s;let l=[...e.lexerErrors,...(a=(i=e.lexerReport)===null||i===void 0?void 0:i.diagnostics)!==null&&a!==void 0?a:[]];for(let u of l){let h=(s=u.severity)!==null&&s!==void 0?s:"error",f={severity:RE(h),range:{start:{line:u.line-1,character:u.column-1},end:{line:u.line-1,character:u.column+u.length-1}},message:u.message,data:Xle(h),source:this.getSource()};r.push(f)}}processParsingErrors(e,r,n){for(let i of e.parserErrors){let a;if(isNaN(i.token.startOffset)){if("previousToken"in i){let s=i.previousToken;if(isNaN(s.startOffset)){let l={line:0,character:0};a={start:l,end:l}}else{let l={line:s.endLine-1,character:s.endColumn};a={start:l,end:l}}}}else a=Gm(i.token);if(a){let s={severity:RE("error"),range:a,message:i.message,data:bp(jo.ParsingError),source:this.getSource()};r.push(s)}}}processLinkingErrors(e,r,n){for(let i of e.references){let a=i.error;if(a){let s={node:a.container,property:a.property,index:a.index,data:{code:jo.LinkingError,containerType:a.container.$type,property:a.property,refText:a.reference.$refText}};r.push(this.toDiagnostic("error",a.message,s))}}}async validateAst(e,r,n=yr.CancellationToken.None){let i=[],a=o((s,l,u)=>{i.push(this.toDiagnostic(s,l,u))},"acceptor");return await this.validateAstBefore(e,r,a,n),await this.validateAstNodes(e,r,a,n),await this.validateAstAfter(e,r,a,n),i}async validateAstBefore(e,r,n,i=yr.CancellationToken.None){var a;let s=this.validationRegistry.checksBefore;for(let l of s)await xi(i),await l(e,n,(a=r.categories)!==null&&a!==void 0?a:[],i)}async validateAstNodes(e,r,n,i=yr.CancellationToken.None){await Promise.all(Wo(e).map(async a=>{await xi(i);let s=this.validationRegistry.getChecks(a.$type,r.categories);for(let l of s)await l(a,n,i)}))}async validateAstAfter(e,r,n,i=yr.CancellationToken.None){var a;let s=this.validationRegistry.checksAfter;for(let l of s)await xi(i),await l(e,n,(a=r.categories)!==null&&a!==void 0?a:[],i)}toDiagnostic(e,r,n){return{message:r,range:Yle(n),severity:RE(e),code:n.code,codeDescription:n.codeDescription,tags:n.tags,relatedInformation:n.relatedInformation,data:n.data,source:this.getSource()}}getSource(){return this.metadata.languageId}};o(Yle,"getDiagnosticRange");o(RE,"toDiagnosticSeverity");o(Xle,"toDiagnosticData");(function(t){t.LexingError="lexing-error",t.LexingWarning="lexing-warning",t.LexingInfo="lexing-info",t.LexingHint="lexing-hint",t.ParsingError="parsing-error",t.LinkingError="linking-error"})(jo||(jo={}))});var qx,Yx,qM=N(()=>{"use strict";qo();Rl();is();Nl();Yo();Fc();qx=class{static{o(this,"DefaultAstNodeDescriptionProvider")}constructor(e){this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider}createDescription(e,r,n){let i=n??Pa(e);r??(r=this.nameProvider.getName(e));let a=this.astNodeLocator.getAstNodePath(e);if(!r)throw new Error(`Node at path ${a} has no name.`);let s,l=o(()=>{var u;return s??(s=Qd((u=this.nameProvider.getNameNode(e))!==null&&u!==void 0?u:e.$cstNode))},"nameSegmentGetter");return{node:e,name:r,get nameSegment(){return l()},selectionSegment:Qd(e.$cstNode),type:e.$type,documentUri:i.uri,path:a}}},Yx=class{static{o(this,"DefaultReferenceDescriptionProvider")}constructor(e){this.nodeLocator=e.workspace.AstNodeLocator}async createDescriptions(e,r=yr.CancellationToken.None){let n=[],i=e.parseResult.value;for(let a of Wo(i))await xi(r),Ag(a).filter(s=>!jd(s)).forEach(s=>{let l=this.createDescription(s);l&&n.push(l)});return n}createDescription(e){let r=e.reference.$nodeDescription,n=e.reference.$refNode;if(!r||!n)return;let i=Pa(e.container).uri;return{sourceUri:i,sourcePath:this.nodeLocator.getAstNodePath(e.container),targetUri:r.documentUri,targetPath:r.path,segment:Qd(n),local:hs.equals(r.documentUri,i)}}}});var Xx,YM=N(()=>{"use strict";Xx=class{static{o(this,"DefaultAstNodeLocator")}constructor(){this.segmentSeparator="/",this.indexSeparator="@"}getAstNodePath(e){if(e.$container){let r=this.getAstNodePath(e.$container),n=this.getPathSegment(e);return r+this.segmentSeparator+n}return""}getPathSegment({$containerProperty:e,$containerIndex:r}){if(!e)throw new Error("Missing '$containerProperty' in AST node.");return r!==void 0?e+this.indexSeparator+r:e}getAstNode(e,r){return r.split(this.segmentSeparator).reduce((i,a)=>{if(!i||a.length===0)return i;let s=a.indexOf(this.indexSeparator);if(s>0){let l=a.substring(0,s),u=parseInt(a.substring(s+1)),h=i[l];return h?.[u]}return i[a]},e)}}});var Kn={};var NE=N(()=>{"use strict";Sr(Kn,Sa(LM(),1))});var jx,XM=N(()=>{"use strict";NE();Yo();jx=class{static{o(this,"DefaultConfigurationProvider")}constructor(e){this._ready=new cs,this.settings={},this.workspaceConfig=!1,this.onConfigurationSectionUpdateEmitter=new Kn.Emitter,this.serviceRegistry=e.ServiceRegistry}get ready(){return this._ready.promise}initialize(e){var r,n;this.workspaceConfig=(n=(r=e.capabilities.workspace)===null||r===void 0?void 0:r.configuration)!==null&&n!==void 0?n:!1}async initialized(e){if(this.workspaceConfig){if(e.register){let r=this.serviceRegistry.all;e.register({section:r.map(n=>this.toSectionName(n.LanguageMetaData.languageId))})}if(e.fetchConfiguration){let r=this.serviceRegistry.all.map(i=>({section:this.toSectionName(i.LanguageMetaData.languageId)})),n=await e.fetchConfiguration(r);r.forEach((i,a)=>{this.updateSectionConfiguration(i.section,n[a])})}}this._ready.resolve()}updateConfiguration(e){e.settings&&Object.keys(e.settings).forEach(r=>{let n=e.settings[r];this.updateSectionConfiguration(r,n),this.onConfigurationSectionUpdateEmitter.fire({section:r,configuration:n})})}updateSectionConfiguration(e,r){this.settings[e]=r}async getConfiguration(e,r){await this.ready;let n=this.toSectionName(e);if(this.settings[n])return this.settings[n][r]}toSectionName(e){return`${e}`}get onConfigurationSectionUpdate(){return this.onConfigurationSectionUpdateEmitter.event}}});var ff,jM=N(()=>{"use strict";(function(t){function e(r){return{dispose:o(async()=>await r(),"dispose")}}o(e,"create"),t.create=e})(ff||(ff={}))});var Kx,KM=N(()=>{"use strict";qo();jM();f1();Yo();Ps();Hx();h1();Kx=class{static{o(this,"DefaultDocumentBuilder")}constructor(e){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new Bl,this.documentPhaseListeners=new Bl,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=kn.Changed,this.langiumDocuments=e.workspace.LangiumDocuments,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.textDocuments=e.workspace.TextDocuments,this.indexManager=e.workspace.IndexManager,this.serviceRegistry=e.ServiceRegistry}async build(e,r={},n=yr.CancellationToken.None){var i,a;for(let s of e){let l=s.uri.toString();if(s.state===kn.Validated){if(typeof r.validation=="boolean"&&r.validation)s.state=kn.IndexedReferences,s.diagnostics=void 0,this.buildState.delete(l);else if(typeof r.validation=="object"){let u=this.buildState.get(l),h=(i=u?.result)===null||i===void 0?void 0:i.validationChecks;if(h){let d=((a=r.validation.categories)!==null&&a!==void 0?a:g1.all).filter(p=>!h.includes(p));d.length>0&&(this.buildState.set(l,{completed:!1,options:{validation:Object.assign(Object.assign({},r.validation),{categories:d})},result:u.result}),s.state=kn.IndexedReferences)}}}else this.buildState.delete(l)}this.currentState=kn.Changed,await this.emitUpdate(e.map(s=>s.uri),[]),await this.buildDocuments(e,r,n)}async update(e,r,n=yr.CancellationToken.None){this.currentState=kn.Changed;for(let s of r)this.langiumDocuments.deleteDocument(s),this.buildState.delete(s.toString()),this.indexManager.remove(s);for(let s of e){if(!this.langiumDocuments.invalidateDocument(s)){let u=this.langiumDocumentFactory.fromModel({$type:"INVALID"},s);u.state=kn.Changed,this.langiumDocuments.addDocument(u)}this.buildState.delete(s.toString())}let i=en(e).concat(r).map(s=>s.toString()).toSet();this.langiumDocuments.all.filter(s=>!i.has(s.uri.toString())&&this.shouldRelink(s,i)).forEach(s=>{this.serviceRegistry.getServices(s.uri).references.Linker.unlink(s),s.state=Math.min(s.state,kn.ComputedScopes),s.diagnostics=void 0}),await this.emitUpdate(e,r),await xi(n);let a=this.sortDocuments(this.langiumDocuments.all.filter(s=>{var l;return s.staten(e,r)))}sortDocuments(e){let r=0,n=e.length-1;for(;r=0&&!this.hasTextDocument(e[n]);)n--;rn.error!==void 0)?!0:this.indexManager.isAffected(e,r)}onUpdate(e){return this.updateListeners.push(e),ff.create(()=>{let r=this.updateListeners.indexOf(e);r>=0&&this.updateListeners.splice(r,1)})}async buildDocuments(e,r,n){this.prepareBuild(e,r),await this.runCancelable(e,kn.Parsed,n,a=>this.langiumDocumentFactory.update(a,n)),await this.runCancelable(e,kn.IndexedContent,n,a=>this.indexManager.updateContent(a,n)),await this.runCancelable(e,kn.ComputedScopes,n,async a=>{let s=this.serviceRegistry.getServices(a.uri).references.ScopeComputation;a.precomputedScopes=await s.computeLocalScopes(a,n)}),await this.runCancelable(e,kn.Linked,n,a=>this.serviceRegistry.getServices(a.uri).references.Linker.link(a,n)),await this.runCancelable(e,kn.IndexedReferences,n,a=>this.indexManager.updateReferences(a,n));let i=e.filter(a=>this.shouldValidate(a));await this.runCancelable(i,kn.Validated,n,a=>this.validate(a,n));for(let a of e){let s=this.buildState.get(a.uri.toString());s&&(s.completed=!0)}}prepareBuild(e,r){for(let n of e){let i=n.uri.toString(),a=this.buildState.get(i);(!a||a.completed)&&this.buildState.set(i,{completed:!1,options:r,result:a?.result})}}async runCancelable(e,r,n,i){let a=e.filter(l=>l.statel.state===r);await this.notifyBuildPhase(s,r,n),this.currentState=r}onBuildPhase(e,r){return this.buildPhaseListeners.add(e,r),ff.create(()=>{this.buildPhaseListeners.delete(e,r)})}onDocumentPhase(e,r){return this.documentPhaseListeners.add(e,r),ff.create(()=>{this.documentPhaseListeners.delete(e,r)})}waitUntil(e,r,n){let i;if(r&&"path"in r?i=r:n=r,n??(n=yr.CancellationToken.None),i){let a=this.langiumDocuments.getDocument(i);if(a&&a.state>e)return Promise.resolve(i)}return this.currentState>=e?Promise.resolve(void 0):n.isCancellationRequested?Promise.reject(Pc):new Promise((a,s)=>{let l=this.onBuildPhase(e,()=>{if(l.dispose(),u.dispose(),i){let h=this.langiumDocuments.getDocument(i);a(h?.uri)}else a(void 0)}),u=n.onCancellationRequested(()=>{l.dispose(),u.dispose(),s(Pc)})})}async notifyDocumentPhase(e,r,n){let a=this.documentPhaseListeners.get(r).slice();for(let s of a)try{await s(e,n)}catch(l){if(!Bc(l))throw l}}async notifyBuildPhase(e,r,n){if(e.length===0)return;let a=this.buildPhaseListeners.get(r).slice();for(let s of a)await xi(n),await s(e,n)}shouldValidate(e){return!!this.getBuildOptions(e).validation}async validate(e,r){var n,i;let a=this.serviceRegistry.getServices(e.uri).validation.DocumentValidator,s=this.getBuildOptions(e).validation,l=typeof s=="object"?s:void 0,u=await a.validateDocument(e,l,r);e.diagnostics?e.diagnostics.push(...u):e.diagnostics=u;let h=this.buildState.get(e.uri.toString());if(h){(n=h.result)!==null&&n!==void 0||(h.result={});let f=(i=l?.categories)!==null&&i!==void 0?i:g1.all;h.result.validationChecks?h.result.validationChecks.push(...f):h.result.validationChecks=[...f]}}getBuildOptions(e){var r,n;return(n=(r=this.buildState.get(e.uri.toString()))===null||r===void 0?void 0:r.options)!==null&&n!==void 0?n:{}}}});var Qx,QM=N(()=>{"use strict";is();DE();qo();Ps();Fc();Qx=class{static{o(this,"DefaultIndexManager")}constructor(e){this.symbolIndex=new Map,this.symbolByTypeIndex=new xp,this.referenceIndex=new Map,this.documents=e.workspace.LangiumDocuments,this.serviceRegistry=e.ServiceRegistry,this.astReflection=e.AstReflection}findAllReferences(e,r){let n=Pa(e).uri,i=[];return this.referenceIndex.forEach(a=>{a.forEach(s=>{hs.equals(s.targetUri,n)&&s.targetPath===r&&i.push(s)})}),en(i)}allElements(e,r){let n=en(this.symbolIndex.keys());return r&&(n=n.filter(i=>!r||r.has(i))),n.map(i=>this.getFileDescriptions(i,e)).flat()}getFileDescriptions(e,r){var n;return r?this.symbolByTypeIndex.get(e,r,()=>{var a;return((a=this.symbolIndex.get(e))!==null&&a!==void 0?a:[]).filter(l=>this.astReflection.isSubtype(l.type,r))}):(n=this.symbolIndex.get(e))!==null&&n!==void 0?n:[]}remove(e){let r=e.toString();this.symbolIndex.delete(r),this.symbolByTypeIndex.clear(r),this.referenceIndex.delete(r)}async updateContent(e,r=yr.CancellationToken.None){let i=await this.serviceRegistry.getServices(e.uri).references.ScopeComputation.computeExports(e,r),a=e.uri.toString();this.symbolIndex.set(a,i),this.symbolByTypeIndex.clear(a)}async updateReferences(e,r=yr.CancellationToken.None){let i=await this.serviceRegistry.getServices(e.uri).workspace.ReferenceDescriptionProvider.createDescriptions(e,r);this.referenceIndex.set(e.uri.toString(),i)}isAffected(e,r){let n=this.referenceIndex.get(e.uri.toString());return n?n.some(i=>!i.local&&r.has(i.targetUri.toString())):!1}}});var Zx,ZM=N(()=>{"use strict";qo();Yo();Fc();Zx=class{static{o(this,"DefaultWorkspaceManager")}constructor(e){this.initialBuildOptions={},this._ready=new cs,this.serviceRegistry=e.ServiceRegistry,this.langiumDocuments=e.workspace.LangiumDocuments,this.documentBuilder=e.workspace.DocumentBuilder,this.fileSystemProvider=e.workspace.FileSystemProvider,this.mutex=e.workspace.WorkspaceLock}get ready(){return this._ready.promise}get workspaceFolders(){return this.folders}initialize(e){var r;this.folders=(r=e.workspaceFolders)!==null&&r!==void 0?r:void 0}initialized(e){return this.mutex.write(r=>{var n;return this.initializeWorkspace((n=this.folders)!==null&&n!==void 0?n:[],r)})}async initializeWorkspace(e,r=yr.CancellationToken.None){let n=await this.performStartup(e);await xi(r),await this.documentBuilder.build(n,this.initialBuildOptions,r)}async performStartup(e){let r=this.serviceRegistry.all.flatMap(a=>a.LanguageMetaData.fileExtensions),n=[],i=o(a=>{n.push(a),this.langiumDocuments.hasDocument(a.uri)||this.langiumDocuments.addDocument(a)},"collector");return await this.loadAdditionalDocuments(e,i),await Promise.all(e.map(a=>[a,this.getRootFolder(a)]).map(async a=>this.traverseFolder(...a,r,i))),this._ready.resolve(),n}loadAdditionalDocuments(e,r){return Promise.resolve()}getRootFolder(e){return us.parse(e.uri)}async traverseFolder(e,r,n,i){let a=await this.fileSystemProvider.readDirectory(r);await Promise.all(a.map(async s=>{if(this.includeEntry(e,s,n)){if(s.isDirectory)await this.traverseFolder(e,s.uri,n,i);else if(s.isFile){let l=await this.langiumDocuments.getOrCreateDocument(s.uri);i(l)}}}))}includeEntry(e,r,n){let i=hs.basename(r.uri);if(i.startsWith("."))return!1;if(r.isDirectory)return i!=="node_modules"&&i!=="out";if(r.isFile){let a=hs.extname(r.uri);return n.includes(a)}return!1}}});function IE(t){return Array.isArray(t)&&(t.length===0||"name"in t[0])}function eI(t){return t&&"modes"in t&&"defaultMode"in t}function JM(t){return!IE(t)&&!eI(t)}var Jx,ME,wp,OE=N(()=>{"use strict";cf();Jx=class{static{o(this,"DefaultLexerErrorMessageProvider")}buildUnexpectedCharactersMessage(e,r,n,i,a){return Gg.buildUnexpectedCharactersMessage(e,r,n,i,a)}buildUnableToPopLexerModeMessage(e){return Gg.buildUnableToPopLexerModeMessage(e)}},ME={mode:"full"},wp=class{static{o(this,"DefaultLexer")}constructor(e){this.errorMessageProvider=e.parser.LexerErrorMessageProvider,this.tokenBuilder=e.parser.TokenBuilder;let r=this.tokenBuilder.buildTokens(e.Grammar,{caseInsensitive:e.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(r);let n=JM(r)?Object.values(r):r,i=e.LanguageMetaData.mode==="production";this.chevrotainLexer=new Xn(n,{positionTracking:"full",skipValidations:i,errorMessageProvider:this.errorMessageProvider})}get definition(){return this.tokenTypes}tokenize(e,r=ME){var n,i,a;let s=this.chevrotainLexer.tokenize(e);return{tokens:s.tokens,errors:s.errors,hidden:(n=s.groups.hidden)!==null&&n!==void 0?n:[],report:(a=(i=this.tokenBuilder).flushLexingReport)===null||a===void 0?void 0:a.call(i,e)}}toTokenTypeDictionary(e){if(JM(e))return e;let r=eI(e)?Object.values(e.modes).flat():e,n={};return r.forEach(i=>n[i.name]=i),n}};o(IE,"isTokenTypeArray");o(eI,"isIMultiModeLexerDefinition");o(JM,"isTokenTypeDictionary")});function nI(t,e,r){let n,i;typeof t=="string"?(i=e,n=r):(i=t.range.start,n=e),i||(i=jr.create(0,0));let a=Qle(t),s=aI(n),l=wFe({lines:a,position:i,options:s});return CFe({index:0,tokens:l,position:i})}function iI(t,e){let r=aI(e),n=Qle(t);if(n.length===0)return!1;let i=n[0],a=n[n.length-1],s=r.start,l=r.end;return!!s?.exec(i)&&!!l?.exec(a)}function Qle(t){let e="";return typeof t=="string"?e=t:e=t.text,e.split(JR)}function wFe(t){var e,r,n;let i=[],a=t.position.line,s=t.position.character;for(let l=0;l=f.length){if(i.length>0){let m=jr.create(a,s);i.push({type:"break",content:"",range:Pr.create(m,m)})}}else{jle.lastIndex=d;let m=jle.exec(f);if(m){let g=m[0],y=m[1],v=jr.create(a,s+d),x=jr.create(a,s+d+g.length);i.push({type:"tag",content:y,range:Pr.create(v,x)}),d+=g.length,d=rI(f,d)}if(d0&&i[i.length-1].type==="break"?i.slice(0,-1):i}function TFe(t,e,r,n){let i=[];if(t.length===0){let a=jr.create(r,n),s=jr.create(r,n+e.length);i.push({type:"text",content:e,range:Pr.create(a,s)})}else{let a=0;for(let l of t){let u=l.index,h=e.substring(a,u);h.length>0&&i.push({type:"text",content:e.substring(a,u),range:Pr.create(jr.create(r,a+n),jr.create(r,u+n))});let f=h.length+1,d=l[1];if(i.push({type:"inline-tag",content:d,range:Pr.create(jr.create(r,a+f+n),jr.create(r,a+f+d.length+n))}),f+=d.length,l.length===4){f+=l[2].length;let p=l[3];i.push({type:"text",content:p,range:Pr.create(jr.create(r,a+f+n),jr.create(r,a+f+p.length+n))})}else i.push({type:"text",content:"",range:Pr.create(jr.create(r,a+f+n),jr.create(r,a+f+n))});a=u+l[0].length}let s=e.substring(a);s.length>0&&i.push({type:"text",content:s,range:Pr.create(jr.create(r,a+n),jr.create(r,a+n+s.length))})}return i}function rI(t,e){let r=t.substring(e).match(kFe);return r?e+r.index:t.length}function SFe(t){let e=t.match(EFe);if(e&&typeof e.index=="number")return e.index}function CFe(t){var e,r,n,i;let a=jr.create(t.position.line,t.position.character);if(t.tokens.length===0)return new PE([],Pr.create(a,a));let s=[];for(;t.index0){let u=rI(e,a);s=e.substring(u),e=e.substring(0,a)}return(t==="linkcode"||t==="link"&&r.link==="code")&&(s=`\`${s}\``),(i=(n=r.renderLink)===null||n===void 0?void 0:n.call(r,e,s))!==null&&i!==void 0?i:RFe(e,s)}}function RFe(t,e){try{return us.parse(t,!0),`[${e}](${t})`}catch{return t}}function Kle(t){return t.endsWith(` +`)?` +`:` + +`}var jle,bFe,kFe,EFe,PE,eb,tb,BE,sI=N(()=>{"use strict";mM();Lg();Fc();o(nI,"parseJSDoc");o(iI,"isJSDoc");o(Qle,"getLines");jle=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,bFe=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;o(wFe,"tokenize");o(TFe,"buildInlineTokens");kFe=/\S/,EFe=/\s*$/;o(rI,"skipWhitespace");o(SFe,"lastCharacter");o(CFe,"parseJSDocComment");o(AFe,"parseJSDocElement");o(_Fe,"appendEmptyLine");o(Zle,"parseJSDocText");o(DFe,"parseJSDocInline");o(Jle,"parseJSDocTag");o(ece,"parseJSDocLine");o(aI,"normalizeOptions");o(tI,"normalizeOption");PE=class{static{o(this,"JSDocCommentImpl")}constructor(e,r){this.elements=e,this.range=r}getTag(e){return this.getAllTags().find(r=>r.name===e)}getTags(e){return this.getAllTags().filter(r=>r.name===e)}getAllTags(){return this.elements.filter(e=>"name"in e)}toString(){let e="";for(let r of this.elements)if(e.length===0)e=r.toString();else{let n=r.toString();e+=Kle(e)+n}return e.trim()}toMarkdown(e){let r="";for(let n of this.elements)if(r.length===0)r=n.toMarkdown(e);else{let i=n.toMarkdown(e);r+=Kle(r)+i}return r.trim()}},eb=class{static{o(this,"JSDocTagImpl")}constructor(e,r,n,i){this.name=e,this.content=r,this.inline=n,this.range=i}toString(){let e=`@${this.name}`,r=this.content.toString();return this.content.inlines.length===1?e=`${e} ${r}`:this.content.inlines.length>1&&(e=`${e} +${r}`),this.inline?`{${e}}`:e}toMarkdown(e){var r,n;return(n=(r=e?.renderTag)===null||r===void 0?void 0:r.call(e,this))!==null&&n!==void 0?n:this.toMarkdownDefault(e)}toMarkdownDefault(e){let r=this.content.toMarkdown(e);if(this.inline){let a=LFe(this.name,r,e??{});if(typeof a=="string")return a}let n="";e?.tag==="italic"||e?.tag===void 0?n="*":e?.tag==="bold"?n="**":e?.tag==="bold-italic"&&(n="***");let i=`${n}@${this.name}${n}`;return this.content.inlines.length===1?i=`${i} \u2014 ${r}`:this.content.inlines.length>1&&(i=`${i} +${r}`),this.inline?`{${i}}`:i}};o(LFe,"renderInlineTag");o(RFe,"renderLinkDefault");tb=class{static{o(this,"JSDocTextImpl")}constructor(e,r){this.inlines=e,this.range=r}toString(){let e="";for(let r=0;rn.range.start.line&&(e+=` +`)}return e}toMarkdown(e){let r="";for(let n=0;ni.range.start.line&&(r+=` +`)}return r}},BE=class{static{o(this,"JSDocLineImpl")}constructor(e,r){this.text=e,this.range=r}toString(){return this.text}toMarkdown(){return this.text}};o(Kle,"fillNewlines")});var rb,oI=N(()=>{"use strict";is();sI();rb=class{static{o(this,"JSDocDocumentationProvider")}constructor(e){this.indexManager=e.shared.workspace.IndexManager,this.commentProvider=e.documentation.CommentProvider}getDocumentation(e){let r=this.commentProvider.getComment(e);if(r&&iI(r))return nI(r).toMarkdown({renderLink:o((i,a)=>this.documentationLinkRenderer(e,i,a),"renderLink"),renderTag:o(i=>this.documentationTagRenderer(e,i),"renderTag")})}documentationLinkRenderer(e,r,n){var i;let a=(i=this.findNameInPrecomputedScopes(e,r))!==null&&i!==void 0?i:this.findNameInGlobalScope(e,r);if(a&&a.nameSegment){let s=a.nameSegment.range.start.line+1,l=a.nameSegment.range.start.character+1,u=a.documentUri.with({fragment:`L${s},${l}`});return`[${n}](${u.toString()})`}else return}documentationTagRenderer(e,r){}findNameInPrecomputedScopes(e,r){let i=Pa(e).precomputedScopes;if(!i)return;let a=e;do{let l=i.get(a).find(u=>u.name===r);if(l)return l;a=a.$container}while(a)}findNameInGlobalScope(e,r){return this.indexManager.allElements().find(i=>i.name===r)}}});var nb,lI=N(()=>{"use strict";LE();Nl();nb=class{static{o(this,"DefaultCommentProvider")}constructor(e){this.grammarConfig=()=>e.parser.GrammarConfig}getComment(e){var r;return UM(e)?e.$comment:(r=AR(e.$cstNode,this.grammarConfig().multilineCommentRules))===null||r===void 0?void 0:r.text}}});var ib,cI,uI,hI=N(()=>{"use strict";Yo();NE();ib=class{static{o(this,"DefaultAsyncParser")}constructor(e){this.syncParser=e.parser.LangiumParser}parse(e,r){return Promise.resolve(this.syncParser.parse(e))}},cI=class{static{o(this,"AbstractThreadedAsyncParser")}constructor(e){this.threadCount=8,this.terminationDelay=200,this.workerPool=[],this.queue=[],this.hydrator=e.serializer.Hydrator}initializeWorkers(){for(;this.workerPool.length{if(this.queue.length>0){let r=this.queue.shift();r&&(e.lock(),r.resolve(e))}}),this.workerPool.push(e)}}async parse(e,r){let n=await this.acquireParserWorker(r),i=new cs,a,s=r.onCancellationRequested(()=>{a=setTimeout(()=>{this.terminateWorker(n)},this.terminationDelay)});return n.parse(e).then(l=>{let u=this.hydrator.hydrate(l);i.resolve(u)}).catch(l=>{i.reject(l)}).finally(()=>{s.dispose(),clearTimeout(a)}),i.promise}terminateWorker(e){e.terminate();let r=this.workerPool.indexOf(e);r>=0&&this.workerPool.splice(r,1)}async acquireParserWorker(e){this.initializeWorkers();for(let n of this.workerPool)if(n.ready)return n.lock(),n;let r=new cs;return e.onCancellationRequested(()=>{let n=this.queue.indexOf(r);n>=0&&this.queue.splice(n,1),r.reject(Pc)}),this.queue.push(r),r.promise}},uI=class{static{o(this,"ParserWorker")}get ready(){return this._ready}get onReady(){return this.onReadyEmitter.event}constructor(e,r,n,i){this.onReadyEmitter=new Kn.Emitter,this.deferred=new cs,this._ready=!0,this._parsing=!1,this.sendMessage=e,this._terminate=i,r(a=>{let s=a;this.deferred.resolve(s),this.unlock()}),n(a=>{this.deferred.reject(a),this.unlock()})}terminate(){this.deferred.reject(Pc),this._terminate()}lock(){this._ready=!1}unlock(){this._parsing=!1,this._ready=!0,this.onReadyEmitter.fire()}parse(e){if(this._parsing)throw new Error("Parser worker is busy");return this._parsing=!0,this.deferred=new cs,this.sendMessage(e),this.deferred.promise}}});var ab,fI=N(()=>{"use strict";qo();Yo();ab=class{static{o(this,"DefaultWorkspaceLock")}constructor(){this.previousTokenSource=new yr.CancellationTokenSource,this.writeQueue=[],this.readQueue=[],this.done=!0}write(e){this.cancelWrite();let r=CE();return this.previousTokenSource=r,this.enqueue(this.writeQueue,e,r.token)}read(e){return this.enqueue(this.readQueue,e)}enqueue(e,r,n=yr.CancellationToken.None){let i=new cs,a={action:r,deferred:i,cancellationToken:n};return e.push(a),this.performNextOperation(),i.promise}async performNextOperation(){if(!this.done)return;let e=[];if(this.writeQueue.length>0)e.push(this.writeQueue.shift());else if(this.readQueue.length>0)e.push(...this.readQueue.splice(0,this.readQueue.length));else return;this.done=!1,await Promise.all(e.map(async({action:r,deferred:n,cancellationToken:i})=>{try{let a=await Promise.resolve().then(()=>r(i));n.resolve(a)}catch(a){Bc(a)?n.resolve(void 0):n.reject(a)}})),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}}});var sb,dI=N(()=>{"use strict";gE();Rc();Rl();is();f1();Nl();sb=class{static{o(this,"DefaultHydrator")}constructor(e){this.grammarElementIdMap=new vp,this.tokenTypeIdMap=new vp,this.grammar=e.Grammar,this.lexer=e.parser.Lexer,this.linker=e.references.Linker}dehydrate(e){return{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport?this.dehydrateLexerReport(e.lexerReport):void 0,parserErrors:e.parserErrors.map(r=>Object.assign(Object.assign({},r),{message:r.message})),value:this.dehydrateAstNode(e.value,this.createDehyrationContext(e.value))}}dehydrateLexerReport(e){return e}createDehyrationContext(e){let r=new Map,n=new Map;for(let i of Wo(e))r.set(i,{});if(e.$cstNode)for(let i of Kd(e.$cstNode))n.set(i,{});return{astNodes:r,cstNodes:n}}dehydrateAstNode(e,r){let n=r.astNodes.get(e);n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,e.$cstNode!==void 0&&(n.$cstNode=this.dehydrateCstNode(e.$cstNode,r));for(let[i,a]of Object.entries(e))if(!i.startsWith("$"))if(Array.isArray(a)){let s=[];n[i]=s;for(let l of a)ii(l)?s.push(this.dehydrateAstNode(l,r)):va(l)?s.push(this.dehydrateReference(l,r)):s.push(l)}else ii(a)?n[i]=this.dehydrateAstNode(a,r):va(a)?n[i]=this.dehydrateReference(a,r):a!==void 0&&(n[i]=a);return n}dehydrateReference(e,r){let n={};return n.$refText=e.$refText,e.$refNode&&(n.$refNode=r.cstNodes.get(e.$refNode)),n}dehydrateCstNode(e,r){let n=r.cstNodes.get(e);return M2(e)?n.fullText=e.fullText:n.grammarSource=this.getGrammarElementId(e.grammarSource),n.hidden=e.hidden,n.astNode=r.astNodes.get(e.astNode),Ll(e)?n.content=e.content.map(i=>this.dehydrateCstNode(i,r)):af(e)&&(n.tokenType=e.tokenType.name,n.offset=e.offset,n.length=e.length,n.startLine=e.range.start.line,n.startColumn=e.range.start.character,n.endLine=e.range.end.line,n.endColumn=e.range.end.character),n}hydrate(e){let r=e.value,n=this.createHydrationContext(r);return"$cstNode"in r&&this.hydrateCstNode(r.$cstNode,n),{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport,parserErrors:e.parserErrors,value:this.hydrateAstNode(r,n)}}createHydrationContext(e){let r=new Map,n=new Map;for(let a of Wo(e))r.set(a,{});let i;if(e.$cstNode)for(let a of Kd(e.$cstNode)){let s;"fullText"in a?(s=new a1(a.fullText),i=s):"content"in a?s=new mp:"tokenType"in a&&(s=this.hydrateCstLeafNode(a)),s&&(n.set(a,s),s.root=i)}return{astNodes:r,cstNodes:n}}hydrateAstNode(e,r){let n=r.astNodes.get(e);n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,e.$cstNode&&(n.$cstNode=r.cstNodes.get(e.$cstNode));for(let[i,a]of Object.entries(e))if(!i.startsWith("$"))if(Array.isArray(a)){let s=[];n[i]=s;for(let l of a)ii(l)?s.push(this.setParent(this.hydrateAstNode(l,r),n)):va(l)?s.push(this.hydrateReference(l,n,i,r)):s.push(l)}else ii(a)?n[i]=this.setParent(this.hydrateAstNode(a,r),n):va(a)?n[i]=this.hydrateReference(a,n,i,r):a!==void 0&&(n[i]=a);return n}setParent(e,r){return e.$container=r,e}hydrateReference(e,r,n,i){return this.linker.buildReference(r,n,i.cstNodes.get(e.$refNode),e.$refText)}hydrateCstNode(e,r,n=0){let i=r.cstNodes.get(e);if(typeof e.grammarSource=="number"&&(i.grammarSource=this.getGrammarElement(e.grammarSource)),i.astNode=r.astNodes.get(e.astNode),Ll(i))for(let a of e.content){let s=this.hydrateCstNode(a,r,n++);i.content.push(s)}return i}hydrateCstLeafNode(e){let r=this.getTokenType(e.tokenType),n=e.offset,i=e.length,a=e.startLine,s=e.startColumn,l=e.endLine,u=e.endColumn,h=e.hidden;return new pp(n,i,{start:{line:a,character:s},end:{line:l,character:u}},r,h)}getTokenType(e){return this.lexer.definition[e]}getGrammarElementId(e){if(e)return this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap(),this.grammarElementIdMap.get(e)}getGrammarElement(e){return this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap(),this.grammarElementIdMap.getKey(e)}createGrammarElementIdMap(){let e=0;for(let r of Wo(this.grammar))G2(r)&&this.grammarElementIdMap.set(r,e++)}}});function fs(t){return{documentation:{CommentProvider:o(e=>new nb(e),"CommentProvider"),DocumentationProvider:o(e=>new rb(e),"DocumentationProvider")},parser:{AsyncParser:o(e=>new ib(e),"AsyncParser"),GrammarConfig:o(e=>pN(e),"GrammarConfig"),LangiumParser:o(e=>TM(e),"LangiumParser"),CompletionParser:o(e=>bM(e),"CompletionParser"),ValueConverter:o(()=>new yp,"ValueConverter"),TokenBuilder:o(()=>new Uu,"TokenBuilder"),Lexer:o(e=>new wp(e),"Lexer"),ParserErrorMessageProvider:o(()=>new s1,"ParserErrorMessageProvider"),LexerErrorMessageProvider:o(()=>new Jx,"LexerErrorMessageProvider")},workspace:{AstNodeLocator:o(()=>new Xx,"AstNodeLocator"),AstNodeDescriptionProvider:o(e=>new qx(e),"AstNodeDescriptionProvider"),ReferenceDescriptionProvider:o(e=>new Yx(e),"ReferenceDescriptionProvider")},references:{Linker:o(e=>new Ix(e),"Linker"),NameProvider:o(()=>new Ox,"NameProvider"),ScopeProvider:o(e=>new zx(e),"ScopeProvider"),ScopeComputation:o(e=>new Bx(e),"ScopeComputation"),References:o(e=>new Px(e),"References")},serializer:{Hydrator:o(e=>new sb(e),"Hydrator"),JsonSerializer:o(e=>new Gx(e),"JsonSerializer")},validation:{DocumentValidator:o(e=>new Wx(e),"DocumentValidator"),ValidationRegistry:o(e=>new Ux(e),"ValidationRegistry")},shared:o(()=>t.shared,"shared")}}function ds(t){return{ServiceRegistry:o(e=>new Vx(e),"ServiceRegistry"),workspace:{LangiumDocuments:o(e=>new Mx(e),"LangiumDocuments"),LangiumDocumentFactory:o(e=>new Nx(e),"LangiumDocumentFactory"),DocumentBuilder:o(e=>new Kx(e),"DocumentBuilder"),IndexManager:o(e=>new Qx(e),"IndexManager"),WorkspaceManager:o(e=>new Zx(e),"WorkspaceManager"),FileSystemProvider:o(e=>t.fileSystemProvider(e),"FileSystemProvider"),WorkspaceLock:o(()=>new ab,"WorkspaceLock"),ConfigurationProvider:o(e=>new jx(e),"ConfigurationProvider")}}}var pI=N(()=>{"use strict";mN();wM();kM();wE();EM();BM();FM();$M();zM();VM();LE();HM();WM();Hx();qM();YM();XM();KM();h1();QM();ZM();OE();oI();lI();Lx();hI();fI();dI();o(fs,"createDefaultCoreModule");o(ds,"createDefaultSharedCoreModule")});function ui(t,e,r,n,i,a,s,l,u){let h=[t,e,r,n,i,a,s,l,u].reduce(FE,{});return ace(h)}function ice(t){if(t&&t[nce])for(let e of Object.values(t))ice(e);return t}function ace(t,e){let r=new Proxy({},{deleteProperty:o(()=>!1,"deleteProperty"),set:o(()=>{throw new Error("Cannot set property on injected service container")},"set"),get:o((n,i)=>i===nce?!0:rce(n,i,t,e||r),"get"),getOwnPropertyDescriptor:o((n,i)=>(rce(n,i,t,e||r),Object.getOwnPropertyDescriptor(n,i)),"getOwnPropertyDescriptor"),has:o((n,i)=>i in t,"has"),ownKeys:o(()=>[...Object.getOwnPropertyNames(t)],"ownKeys")});return r}function rce(t,e,r,n){if(e in t){if(t[e]instanceof Error)throw new Error("Construction failure. Please make sure that your dependencies are constructable.",{cause:t[e]});if(t[e]===tce)throw new Error('Cycle detected. Please make "'+String(e)+'" lazy. Visit https://langium.org/docs/reference/configuration-services/#resolving-cyclic-dependencies');return t[e]}else if(e in r){let i=r[e];t[e]=tce;try{t[e]=typeof i=="function"?i(n):ace(i,n)}catch(a){throw t[e]=a instanceof Error?a:void 0,a}return t[e]}else return}function FE(t,e){if(e){for(let[r,n]of Object.entries(e))if(n!==void 0){let i=t[r];i!==null&&n!==null&&typeof i=="object"&&typeof n=="object"?t[r]=FE(i,n):t[r]=n}}return t}var mI,nce,tce,gI=N(()=>{"use strict";(function(t){t.merge=(e,r)=>FE(FE({},e),r)})(mI||(mI={}));o(ui,"inject");nce=Symbol("isProxy");o(ice,"eagerLoad");o(ace,"_inject");tce=Symbol();o(rce,"_resolve");o(FE,"_merge")});var sce=N(()=>{"use strict"});var oce=N(()=>{"use strict";lI();oI();sI()});var lce=N(()=>{"use strict"});var cce=N(()=>{"use strict";mN();lce()});var yI,Tp,$E,vI,uce=N(()=>{"use strict";cf();wE();OE();yI={indentTokenName:"INDENT",dedentTokenName:"DEDENT",whitespaceTokenName:"WS",ignoreIndentationDelimiters:[]};(function(t){t.REGULAR="indentation-sensitive",t.IGNORE_INDENTATION="ignore-indentation"})(Tp||(Tp={}));$E=class extends Uu{static{o(this,"IndentationAwareTokenBuilder")}constructor(e=yI){super(),this.indentationStack=[0],this.whitespaceRegExp=/[ \t]+/y,this.options=Object.assign(Object.assign({},yI),e),this.indentTokenType=of({name:this.options.indentTokenName,pattern:this.indentMatcher.bind(this),line_breaks:!1}),this.dedentTokenType=of({name:this.options.dedentTokenName,pattern:this.dedentMatcher.bind(this),line_breaks:!1})}buildTokens(e,r){let n=super.buildTokens(e,r);if(!IE(n))throw new Error("Invalid tokens built by default builder");let{indentTokenName:i,dedentTokenName:a,whitespaceTokenName:s,ignoreIndentationDelimiters:l}=this.options,u,h,f,d=[];for(let p of n){for(let[m,g]of l)p.name===m?p.PUSH_MODE=Tp.IGNORE_INDENTATION:p.name===g&&(p.POP_MODE=!0);p.name===a?u=p:p.name===i?h=p:p.name===s?f=p:d.push(p)}if(!u||!h||!f)throw new Error("Some indentation/whitespace tokens not found!");return l.length>0?{modes:{[Tp.REGULAR]:[u,h,...d,f],[Tp.IGNORE_INDENTATION]:[...d,f]},defaultMode:Tp.REGULAR}:[u,h,f,...d]}flushLexingReport(e){let r=super.flushLexingReport(e);return Object.assign(Object.assign({},r),{remainingDedents:this.flushRemainingDedents(e)})}isStartOfLine(e,r){return r===0||`\r +`.includes(e[r-1])}matchWhitespace(e,r,n,i){var a;this.whitespaceRegExp.lastIndex=r;let s=this.whitespaceRegExp.exec(e);return{currIndentLevel:(a=s?.[0].length)!==null&&a!==void 0?a:0,prevIndentLevel:this.indentationStack.at(-1),match:s}}createIndentationTokenInstance(e,r,n,i){let a=this.getLineNumber(r,i);return $u(e,n,i,i+n.length,a,a,1,n.length)}getLineNumber(e,r){return e.substring(0,r).split(/\r\n|\r|\n/).length}indentMatcher(e,r,n,i){if(!this.isStartOfLine(e,r))return null;let{currIndentLevel:a,prevIndentLevel:s,match:l}=this.matchWhitespace(e,r,n,i);return a<=s?null:(this.indentationStack.push(a),l)}dedentMatcher(e,r,n,i){var a,s,l,u;if(!this.isStartOfLine(e,r))return null;let{currIndentLevel:h,prevIndentLevel:f,match:d}=this.matchWhitespace(e,r,n,i);if(h>=f)return null;let p=this.indentationStack.lastIndexOf(h);if(p===-1)return this.diagnostics.push({severity:"error",message:`Invalid dedent level ${h} at offset: ${r}. Current indentation stack: ${this.indentationStack}`,offset:r,length:(s=(a=d?.[0])===null||a===void 0?void 0:a.length)!==null&&s!==void 0?s:0,line:this.getLineNumber(e,r),column:1}),null;let m=this.indentationStack.length-p-1,g=(u=(l=e.substring(0,r).match(/[\r\n]+$/))===null||l===void 0?void 0:l[0].length)!==null&&u!==void 0?u:1;for(let y=0;y1;)r.push(this.createIndentationTokenInstance(this.dedentTokenType,e,"",e.length)),this.indentationStack.pop();return this.indentationStack=[0],r}},vI=class extends wp{static{o(this,"IndentationAwareLexer")}constructor(e){if(super(e),e.parser.TokenBuilder instanceof $E)this.indentationTokenBuilder=e.parser.TokenBuilder;else throw new Error("IndentationAwareLexer requires an accompanying IndentationAwareTokenBuilder")}tokenize(e,r=ME){let n=super.tokenize(e),i=n.report;r?.mode==="full"&&n.tokens.push(...i.remainingDedents),i.remainingDedents=[];let{indentTokenType:a,dedentTokenType:s}=this.indentationTokenBuilder,l=a.tokenTypeIdx,u=s.tokenTypeIdx,h=[],f=n.tokens.length-1;for(let d=0;d=0&&h.push(n.tokens[f]),n.tokens=h,n}}});var hce=N(()=>{"use strict"});var fce=N(()=>{"use strict";hI();wM();gE();uce();kM();Lx();OE();bE();hce();wE();EM()});var dce=N(()=>{"use strict";BM();FM();$M();GM();zM();VM()});var pce=N(()=>{"use strict";dI();LE()});var zE,ps,xI=N(()=>{"use strict";zE=class{static{o(this,"EmptyFileSystemProvider")}readFile(){throw new Error("No file system is available.")}async readDirectory(){return[]}},ps={fileSystemProvider:o(()=>new zE,"fileSystemProvider")}});function IFe(){let t=ui(ds(ps),MFe),e=ui(fs({shared:t}),NFe);return t.ServiceRegistry.register(e),e}function Hu(t){var e;let r=IFe(),n=r.serializer.JsonSerializer.deserialize(t);return r.shared.workspace.LangiumDocumentFactory.fromModel(n,us.parse(`memory://${(e=n.name)!==null&&e!==void 0?e:"grammar"}.langium`)),n}var NFe,MFe,mce=N(()=>{"use strict";pI();gI();Rc();xI();Fc();NFe={Grammar:o(()=>{},"Grammar"),LanguageMetaData:o(()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"}),"LanguageMetaData")},MFe={AstReflection:o(()=>new Cg,"AstReflection")};o(IFe,"createMinimalGrammarServices");o(Hu,"loadGrammarFromJson")});var Gr={};hr(Gr,{AstUtils:()=>xk,BiMap:()=>vp,Cancellation:()=>yr,ContextCache:()=>xp,CstUtils:()=>ck,DONE_RESULT:()=>Ia,Deferred:()=>cs,Disposable:()=>ff,DisposableCache:()=>p1,DocumentCache:()=>_E,EMPTY_STREAM:()=>I2,ErrorWithLocation:()=>Zd,GrammarUtils:()=>Ek,MultiMap:()=>Bl,OperationCancelled:()=>Pc,Reduction:()=>zm,RegExpUtils:()=>Tk,SimpleCache:()=>$x,StreamImpl:()=>ao,TreeStreamImpl:()=>_c,URI:()=>us,UriUtils:()=>hs,WorkspaceCache:()=>m1,assertUnreachable:()=>Lc,delayNextTick:()=>MM,interruptAndCheck:()=>xi,isOperationCancelled:()=>Bc,loadGrammarFromJson:()=>Hu,setInterruptionPeriod:()=>$le,startCancelableOperation:()=>CE,stream:()=>en});var gce=N(()=>{"use strict";DE();NE();Sr(Gr,Kn);f1();jM();uk();mce();Yo();Ps();Fc();is();qo();Nl();Ol();Lg()});var yce=N(()=>{"use strict";WM();Hx()});var vce=N(()=>{"use strict";qM();YM();XM();KM();h1();xI();QM();fI();ZM()});var xa={};hr(xa,{AbstractAstReflection:()=>Xd,AbstractCstNode:()=>Cx,AbstractLangiumParser:()=>Ax,AbstractParserErrorMessageProvider:()=>vE,AbstractThreadedAsyncParser:()=>cI,AstUtils:()=>xk,BiMap:()=>vp,Cancellation:()=>yr,CompositeCstNodeImpl:()=>mp,ContextCache:()=>xp,CstNodeBuilder:()=>Sx,CstUtils:()=>ck,DEFAULT_TOKENIZE_OPTIONS:()=>ME,DONE_RESULT:()=>Ia,DatatypeSymbol:()=>yE,DefaultAstNodeDescriptionProvider:()=>qx,DefaultAstNodeLocator:()=>Xx,DefaultAsyncParser:()=>ib,DefaultCommentProvider:()=>nb,DefaultConfigurationProvider:()=>jx,DefaultDocumentBuilder:()=>Kx,DefaultDocumentValidator:()=>Wx,DefaultHydrator:()=>sb,DefaultIndexManager:()=>Qx,DefaultJsonSerializer:()=>Gx,DefaultLangiumDocumentFactory:()=>Nx,DefaultLangiumDocuments:()=>Mx,DefaultLexer:()=>wp,DefaultLexerErrorMessageProvider:()=>Jx,DefaultLinker:()=>Ix,DefaultNameProvider:()=>Ox,DefaultReferenceDescriptionProvider:()=>Yx,DefaultReferences:()=>Px,DefaultScopeComputation:()=>Bx,DefaultScopeProvider:()=>zx,DefaultServiceRegistry:()=>Vx,DefaultTokenBuilder:()=>Uu,DefaultValueConverter:()=>yp,DefaultWorkspaceLock:()=>ab,DefaultWorkspaceManager:()=>Zx,Deferred:()=>cs,Disposable:()=>ff,DisposableCache:()=>p1,DocumentCache:()=>_E,DocumentState:()=>kn,DocumentValidator:()=>jo,EMPTY_SCOPE:()=>xFe,EMPTY_STREAM:()=>I2,EmptyFileSystem:()=>ps,EmptyFileSystemProvider:()=>zE,ErrorWithLocation:()=>Zd,GrammarAST:()=>U2,GrammarUtils:()=>Ek,IndentationAwareLexer:()=>vI,IndentationAwareTokenBuilder:()=>$E,JSDocDocumentationProvider:()=>rb,LangiumCompletionParser:()=>Dx,LangiumParser:()=>_x,LangiumParserErrorMessageProvider:()=>s1,LeafCstNodeImpl:()=>pp,LexingMode:()=>Tp,MapScope:()=>Fx,Module:()=>mI,MultiMap:()=>Bl,OperationCancelled:()=>Pc,ParserWorker:()=>uI,Reduction:()=>zm,RegExpUtils:()=>Tk,RootCstNodeImpl:()=>a1,SimpleCache:()=>$x,StreamImpl:()=>ao,StreamScope:()=>d1,TextDocument:()=>c1,TreeStreamImpl:()=>_c,URI:()=>us,UriUtils:()=>hs,ValidationCategory:()=>g1,ValidationRegistry:()=>Ux,ValueConverter:()=>Oc,WorkspaceCache:()=>m1,assertUnreachable:()=>Lc,createCompletionParser:()=>bM,createDefaultCoreModule:()=>fs,createDefaultSharedCoreModule:()=>ds,createGrammarConfig:()=>pN,createLangiumParser:()=>TM,createParser:()=>Rx,delayNextTick:()=>MM,diagnosticData:()=>bp,eagerLoad:()=>ice,getDiagnosticRange:()=>Yle,indentationBuilderDefaultOptions:()=>yI,inject:()=>ui,interruptAndCheck:()=>xi,isAstNode:()=>ii,isAstNodeDescription:()=>kR,isAstNodeWithComment:()=>UM,isCompositeCstNode:()=>Ll,isIMultiModeLexerDefinition:()=>eI,isJSDoc:()=>iI,isLeafCstNode:()=>af,isLinkingError:()=>jd,isNamed:()=>Wle,isOperationCancelled:()=>Bc,isReference:()=>va,isRootCstNode:()=>M2,isTokenTypeArray:()=>IE,isTokenTypeDictionary:()=>JM,loadGrammarFromJson:()=>Hu,parseJSDoc:()=>nI,prepareLangiumParser:()=>Nle,setInterruptionPeriod:()=>$le,startCancelableOperation:()=>CE,stream:()=>en,toDiagnosticData:()=>Xle,toDiagnosticSeverity:()=>RE});var Xo=N(()=>{"use strict";pI();gI();HM();sce();Rl();oce();cce();fce();dce();pce();gce();Sr(xa,Gr);yce();vce();Rc()});function Sce(t){return Fl.isInstance(t,ob)}function Cce(t){return Fl.isInstance(t,y1)}function Ace(t){return Fl.isInstance(t,v1)}function _ce(t){return Fl.isInstance(t,WE)}function Dce(t){return Fl.isInstance(t,x1)}function Lce(t){return Fl.isInstance(t,lb)}function Rce(t){return Fl.isInstance(t,b1)}function Nce(t){return Fl.isInstance(t,cb)}function Mce(t){return Fl.isInstance(t,ub)}function Ice(t){return Fl.isInstance(t,hb)}function Oce(t){return Fl.isInstance(t,fb)}var OFe,Lt,AI,ob,GE,y1,VE,UE,v1,WE,bI,wI,TI,x1,kI,lb,EI,b1,SI,cb,ub,hb,fb,qE,CI,HE,Pce,Fl,xce,PFe,bce,BFe,wce,FFe,Tce,$Fe,kce,zFe,Ece,GFe,VFe,UFe,HFe,WFe,qFe,YFe,co,_I,DI,LI,RI,NI,MI,XFe,jFe,KFe,QFe,w1,Wu,$s,ZFe,zs=N(()=>{"use strict";Xo();Xo();Xo();Xo();OFe=Object.defineProperty,Lt=o((t,e)=>OFe(t,"name",{value:e,configurable:!0}),"__name"),AI="Statement",ob="Architecture";o(Sce,"isArchitecture");Lt(Sce,"isArchitecture");GE="Axis",y1="Branch";o(Cce,"isBranch");Lt(Cce,"isBranch");VE="Checkout",UE="CherryPicking",v1="Commit";o(Ace,"isCommit");Lt(Ace,"isCommit");WE="Common";o(_ce,"isCommon");Lt(_ce,"isCommon");bI="Curve",wI="Edge",TI="Entry",x1="GitGraph";o(Dce,"isGitGraph");Lt(Dce,"isGitGraph");kI="Group",lb="Info";o(Lce,"isInfo");Lt(Lce,"isInfo");EI="Junction",b1="Merge";o(Rce,"isMerge");Lt(Rce,"isMerge");SI="Option",cb="Packet";o(Nce,"isPacket");Lt(Nce,"isPacket");ub="PacketBlock";o(Mce,"isPacketBlock");Lt(Mce,"isPacketBlock");hb="Pie";o(Ice,"isPie");Lt(Ice,"isPie");fb="PieSection";o(Oce,"isPieSection");Lt(Oce,"isPieSection");qE="Radar",CI="Service",HE="Direction",Pce=class extends Xd{static{o(this,"MermaidAstReflection")}static{Lt(this,"MermaidAstReflection")}getAllTypes(){return[ob,GE,y1,VE,UE,v1,WE,bI,HE,wI,TI,x1,kI,lb,EI,b1,SI,cb,ub,hb,fb,qE,CI,AI]}computeIsSubtype(t,e){switch(t){case y1:case VE:case UE:case v1:case b1:return this.isSubtype(AI,e);case HE:return this.isSubtype(x1,e);default:return!1}}getReferenceType(t){let e=`${t.container.$type}:${t.property}`;switch(e){case"Entry:axis":return GE;default:throw new Error(`${e} is not a valid reference id.`)}}getTypeMetaData(t){switch(t){case ob:return{name:ob,properties:[{name:"accDescr"},{name:"accTitle"},{name:"edges",defaultValue:[]},{name:"groups",defaultValue:[]},{name:"junctions",defaultValue:[]},{name:"services",defaultValue:[]},{name:"title"}]};case GE:return{name:GE,properties:[{name:"label"},{name:"name"}]};case y1:return{name:y1,properties:[{name:"name"},{name:"order"}]};case VE:return{name:VE,properties:[{name:"branch"}]};case UE:return{name:UE,properties:[{name:"id"},{name:"parent"},{name:"tags",defaultValue:[]}]};case v1:return{name:v1,properties:[{name:"id"},{name:"message"},{name:"tags",defaultValue:[]},{name:"type"}]};case WE:return{name:WE,properties:[{name:"accDescr"},{name:"accTitle"},{name:"title"}]};case bI:return{name:bI,properties:[{name:"entries",defaultValue:[]},{name:"label"},{name:"name"}]};case wI:return{name:wI,properties:[{name:"lhsDir"},{name:"lhsGroup",defaultValue:!1},{name:"lhsId"},{name:"lhsInto",defaultValue:!1},{name:"rhsDir"},{name:"rhsGroup",defaultValue:!1},{name:"rhsId"},{name:"rhsInto",defaultValue:!1},{name:"title"}]};case TI:return{name:TI,properties:[{name:"axis"},{name:"value"}]};case x1:return{name:x1,properties:[{name:"accDescr"},{name:"accTitle"},{name:"statements",defaultValue:[]},{name:"title"}]};case kI:return{name:kI,properties:[{name:"icon"},{name:"id"},{name:"in"},{name:"title"}]};case lb:return{name:lb,properties:[{name:"accDescr"},{name:"accTitle"},{name:"title"}]};case EI:return{name:EI,properties:[{name:"id"},{name:"in"}]};case b1:return{name:b1,properties:[{name:"branch"},{name:"id"},{name:"tags",defaultValue:[]},{name:"type"}]};case SI:return{name:SI,properties:[{name:"name"},{name:"value",defaultValue:!1}]};case cb:return{name:cb,properties:[{name:"accDescr"},{name:"accTitle"},{name:"blocks",defaultValue:[]},{name:"title"}]};case ub:return{name:ub,properties:[{name:"end"},{name:"label"},{name:"start"}]};case hb:return{name:hb,properties:[{name:"accDescr"},{name:"accTitle"},{name:"sections",defaultValue:[]},{name:"showData",defaultValue:!1},{name:"title"}]};case fb:return{name:fb,properties:[{name:"label"},{name:"value"}]};case qE:return{name:qE,properties:[{name:"accDescr"},{name:"accTitle"},{name:"axes",defaultValue:[]},{name:"curves",defaultValue:[]},{name:"options",defaultValue:[]},{name:"title"}]};case CI:return{name:CI,properties:[{name:"icon"},{name:"iconText"},{name:"id"},{name:"in"},{name:"title"}]};case HE:return{name:HE,properties:[{name:"accDescr"},{name:"accTitle"},{name:"dir"},{name:"statements",defaultValue:[]},{name:"title"}]};default:return{name:t,properties:[]}}}},Fl=new Pce,PFe=Lt(()=>xce??(xce=Hu('{"$type":"Grammar","isDeclared":true,"name":"Info","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Info","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"info"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"showInfo"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"*"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[{"$type":"Interface","name":"Common","attributes":[{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"types":[],"usedGrammars":[]}')),"InfoGrammar"),BFe=Lt(()=>bce??(bce=Hu(`{"$type":"Grammar","isDeclared":true,"name":"Packet","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Packet","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"packet-beta"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"blocks","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"+"},{"$type":"Assignment","feature":"blocks","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},"cardinality":"+"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"}]}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"PacketBlock","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"start","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"end","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"?"},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|'[^']*'/"},"fragment":false,"hidden":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[{"$type":"Interface","name":"Common","attributes":[{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"types":[],"usedGrammars":[]}`)),"PacketGrammar"),FFe=Lt(()=>wce??(wce=Hu('{"$type":"Grammar","isDeclared":true,"name":"Pie","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Pie","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"pie"},{"$type":"Assignment","feature":"showData","operator":"?=","terminal":{"$type":"Keyword","value":"showData"},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"sections","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"+"},{"$type":"Assignment","feature":"sections","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},"cardinality":"+"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"}]}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"PieSection","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"PIE_SECTION_LABEL","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]+\\"/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"PIE_SECTION_VALUE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/(0|[1-9][0-9]*)(\\\\.[0-9]+)?/"},"fragment":false,"hidden":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[{"$type":"Interface","name":"Common","attributes":[{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"types":[],"usedGrammars":[]}')),"PieGrammar"),$Fe=Lt(()=>Tce??(Tce=Hu('{"$type":"Grammar","isDeclared":true,"name":"Architecture","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Architecture","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"architecture-beta"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"*"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[],"cardinality":"*"}]}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"groups","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"services","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"junctions","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"edges","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"LeftPort","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"lhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"RightPort","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"rhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Keyword","value":":"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"Arrow","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Assignment","feature":"lhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"--"},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Keyword","value":"-"}]}]},{"$type":"Assignment","feature":"rhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Group","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"group"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Service","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"service"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"iconText","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Junction","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"junction"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Edge","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"lhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Assignment","feature":"lhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"rhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Assignment","feature":"rhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"ARROW_DIRECTION","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"L"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"R"}}]},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"T"}}]},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"B"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_ID","definition":{"$type":"RegexToken","regex":"/[\\\\w]+/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_TEXT_ICON","definition":{"$type":"RegexToken","regex":"/\\\\(\\"[^\\"]+\\"\\\\)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_ICON","definition":{"$type":"RegexToken","regex":"/\\\\([\\\\w-:]+\\\\)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_TITLE","definition":{"$type":"RegexToken","regex":"/\\\\[[\\\\w ]+\\\\]/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_GROUP","definition":{"$type":"RegexToken","regex":"/\\\\{group\\\\}/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_INTO","definition":{"$type":"RegexToken","regex":"/<|>/"},"fragment":false,"hidden":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[{"$type":"Interface","name":"Common","attributes":[{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"types":[],"usedGrammars":[]}')),"ArchitectureGrammar"),zFe=Lt(()=>kce??(kce=Hu(`{"$type":"Grammar","isDeclared":true,"name":"GitGraph","interfaces":[{"$type":"Interface","name":"Common","attributes":[{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"rules":[{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false},{"$type":"ParserRule","entry":true,"name":"GitGraph","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Keyword","value":":"}]},{"$type":"Keyword","value":"gitGraph:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},{"$type":"Keyword","value":":"}]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]},{"$type":"Assignment","feature":"statements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}],"cardinality":"*"}]}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Direction","definition":{"$type":"Assignment","feature":"dir","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"LR"},{"$type":"Keyword","value":"TB"},{"$type":"Keyword","value":"BT"}]}},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Commit","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"commit"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"msg:","cardinality":"?"},{"$type":"Assignment","feature":"message","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Branch","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"branch"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"order:"},{"$type":"Assignment","feature":"order","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Merge","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"merge"},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]}},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Checkout","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"checkout"},{"$type":"Keyword","value":"switch"}]},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"CherryPicking","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"cherry-pick"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"parent:"},{"$type":"Assignment","feature":"parent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+(?=\\\\s)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\w([-\\\\./\\\\w]*[-\\\\w])?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|'[^']*'/"},"fragment":false,"hidden":false}],"definesHiddenTokens":false,"hiddenTokens":[],"imports":[],"types":[],"usedGrammars":[]}`)),"GitGraphGrammar"),GFe=Lt(()=>Ece??(Ece=Hu(`{"$type":"Grammar","isDeclared":true,"name":"Radar","interfaces":[{"$type":"Interface","name":"Common","attributes":[{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]},{"$type":"Interface","name":"Entry","attributes":[{"$type":"TypeAttribute","name":"axis","isOptional":true,"type":{"$type":"ReferenceType","referenceType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@12"}}}},{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}],"superTypes":[]}],"rules":[{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false},{"$type":"ParserRule","entry":true,"name":"Radar","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":"radar-beta:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":":"}]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]},{"$type":"Group","elements":[{"$type":"Keyword","value":"axis"},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"curve"},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"Label","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Axis","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[],"cardinality":"?"}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Curve","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[],"cardinality":"?"},{"$type":"Keyword","value":"{"},{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},{"$type":"Keyword","value":"}"}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"Entries","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"*"}]}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"DetailedEntry","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"axis","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@12"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"deprecatedSyntax":false}},{"$type":"Keyword","value":":","cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"NumberEntry","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Option","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"showLegend"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"ticks"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"max"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"min"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"graticule"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/(0|[1-9][0-9]*)(\\\\.[0-9]+)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"GRATICULE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"circle"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"polygon"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[a-zA-Z_][a-zA-Z0-9\\\\-_]*/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|'[^']*'/"},"fragment":false,"hidden":false}],"definesHiddenTokens":false,"hiddenTokens":[],"imports":[],"types":[],"usedGrammars":[]}`)),"RadarGrammar"),VFe={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},UFe={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},HFe={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},WFe={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},qFe={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},YFe={languageId:"radar",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},co={AstReflection:Lt(()=>new Pce,"AstReflection")},_I={Grammar:Lt(()=>PFe(),"Grammar"),LanguageMetaData:Lt(()=>VFe,"LanguageMetaData"),parser:{}},DI={Grammar:Lt(()=>BFe(),"Grammar"),LanguageMetaData:Lt(()=>UFe,"LanguageMetaData"),parser:{}},LI={Grammar:Lt(()=>FFe(),"Grammar"),LanguageMetaData:Lt(()=>HFe,"LanguageMetaData"),parser:{}},RI={Grammar:Lt(()=>$Fe(),"Grammar"),LanguageMetaData:Lt(()=>WFe,"LanguageMetaData"),parser:{}},NI={Grammar:Lt(()=>zFe(),"Grammar"),LanguageMetaData:Lt(()=>qFe,"LanguageMetaData"),parser:{}},MI={Grammar:Lt(()=>GFe(),"Grammar"),LanguageMetaData:Lt(()=>YFe,"LanguageMetaData"),parser:{}},XFe=/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,jFe=/accTitle[\t ]*:([^\n\r]*)/,KFe=/title([\t ][^\n\r]*|)/,QFe={ACC_DESCR:XFe,ACC_TITLE:jFe,TITLE:KFe},w1=class extends yp{static{o(this,"AbstractMermaidValueConverter")}static{Lt(this,"AbstractMermaidValueConverter")}runConverter(t,e,r){let n=this.runCommonConverter(t,e,r);return n===void 0&&(n=this.runCustomConverter(t,e,r)),n===void 0?super.runConverter(t,e,r):n}runCommonConverter(t,e,r){let n=QFe[t.name];if(n===void 0)return;let i=n.exec(e);if(i!==null){if(i[1]!==void 0)return i[1].trim().replace(/[\t ]{2,}/gm," ");if(i[2]!==void 0)return i[2].replace(/^\s*/gm,"").replace(/\s+$/gm,"").replace(/[\t ]{2,}/gm," ").replace(/[\n\r]{2,}/gm,` +`)}}},Wu=class extends w1{static{o(this,"CommonValueConverter")}static{Lt(this,"CommonValueConverter")}runCustomConverter(t,e,r){}},$s=class extends Uu{static{o(this,"AbstractMermaidTokenBuilder")}static{Lt(this,"AbstractMermaidTokenBuilder")}constructor(t){super(),this.keywords=new Set(t)}buildKeywordTokens(t,e,r){let n=super.buildKeywordTokens(t,e,r);return n.forEach(i=>{this.keywords.has(i.name)&&i.PATTERN!==void 0&&(i.PATTERN=new RegExp(i.PATTERN.toString()+"(?:(?=%%)|(?!\\S))"))}),n}},ZFe=class extends $s{static{o(this,"CommonTokenBuilder")}static{Lt(this,"CommonTokenBuilder")}}});function XE(t=ps){let e=ui(ds(t),co),r=ui(fs({shared:e}),NI,YE);return e.ServiceRegistry.register(r),{shared:e,GitGraph:r}}var JFe,YE,II=N(()=>{"use strict";zs();Xo();JFe=class extends $s{static{o(this,"GitGraphTokenBuilder")}static{Lt(this,"GitGraphTokenBuilder")}constructor(){super(["gitGraph"])}},YE={parser:{TokenBuilder:Lt(()=>new JFe,"TokenBuilder"),ValueConverter:Lt(()=>new Wu,"ValueConverter")}};o(XE,"createGitGraphServices");Lt(XE,"createGitGraphServices")});function KE(t=ps){let e=ui(ds(t),co),r=ui(fs({shared:e}),_I,jE);return e.ServiceRegistry.register(r),{shared:e,Info:r}}var e$e,jE,OI=N(()=>{"use strict";zs();Xo();e$e=class extends $s{static{o(this,"InfoTokenBuilder")}static{Lt(this,"InfoTokenBuilder")}constructor(){super(["info","showInfo"])}},jE={parser:{TokenBuilder:Lt(()=>new e$e,"TokenBuilder"),ValueConverter:Lt(()=>new Wu,"ValueConverter")}};o(KE,"createInfoServices");Lt(KE,"createInfoServices")});function ZE(t=ps){let e=ui(ds(t),co),r=ui(fs({shared:e}),DI,QE);return e.ServiceRegistry.register(r),{shared:e,Packet:r}}var t$e,QE,PI=N(()=>{"use strict";zs();Xo();t$e=class extends $s{static{o(this,"PacketTokenBuilder")}static{Lt(this,"PacketTokenBuilder")}constructor(){super(["packet-beta"])}},QE={parser:{TokenBuilder:Lt(()=>new t$e,"TokenBuilder"),ValueConverter:Lt(()=>new Wu,"ValueConverter")}};o(ZE,"createPacketServices");Lt(ZE,"createPacketServices")});function e6(t=ps){let e=ui(ds(t),co),r=ui(fs({shared:e}),LI,JE);return e.ServiceRegistry.register(r),{shared:e,Pie:r}}var r$e,n$e,JE,BI=N(()=>{"use strict";zs();Xo();r$e=class extends $s{static{o(this,"PieTokenBuilder")}static{Lt(this,"PieTokenBuilder")}constructor(){super(["pie","showData"])}},n$e=class extends w1{static{o(this,"PieValueConverter")}static{Lt(this,"PieValueConverter")}runCustomConverter(t,e,r){if(t.name==="PIE_SECTION_LABEL")return e.replace(/"/g,"").trim()}},JE={parser:{TokenBuilder:Lt(()=>new r$e,"TokenBuilder"),ValueConverter:Lt(()=>new n$e,"ValueConverter")}};o(e6,"createPieServices");Lt(e6,"createPieServices")});function r6(t=ps){let e=ui(ds(t),co),r=ui(fs({shared:e}),RI,t6);return e.ServiceRegistry.register(r),{shared:e,Architecture:r}}var i$e,a$e,t6,FI=N(()=>{"use strict";zs();Xo();i$e=class extends $s{static{o(this,"ArchitectureTokenBuilder")}static{Lt(this,"ArchitectureTokenBuilder")}constructor(){super(["architecture"])}},a$e=class extends w1{static{o(this,"ArchitectureValueConverter")}static{Lt(this,"ArchitectureValueConverter")}runCustomConverter(t,e,r){if(t.name==="ARCH_ICON")return e.replace(/[()]/g,"").trim();if(t.name==="ARCH_TEXT_ICON")return e.replace(/["()]/g,"");if(t.name==="ARCH_TITLE")return e.replace(/[[\]]/g,"").trim()}},t6={parser:{TokenBuilder:Lt(()=>new i$e,"TokenBuilder"),ValueConverter:Lt(()=>new a$e,"ValueConverter")}};o(r6,"createArchitectureServices");Lt(r6,"createArchitectureServices")});function i6(t=ps){let e=ui(ds(t),co),r=ui(fs({shared:e}),MI,n6);return e.ServiceRegistry.register(r),{shared:e,Radar:r}}var s$e,n6,$I=N(()=>{"use strict";zs();Xo();s$e=class extends $s{static{o(this,"RadarTokenBuilder")}static{Lt(this,"RadarTokenBuilder")}constructor(){super(["radar-beta"])}},n6={parser:{TokenBuilder:Lt(()=>new s$e,"TokenBuilder"),ValueConverter:Lt(()=>new Wu,"ValueConverter")}};o(i6,"createRadarServices");Lt(i6,"createRadarServices")});var Bce={};hr(Bce,{InfoModule:()=>jE,createInfoServices:()=>KE});var Fce=N(()=>{"use strict";OI();zs()});var $ce={};hr($ce,{PacketModule:()=>QE,createPacketServices:()=>ZE});var zce=N(()=>{"use strict";PI();zs()});var Gce={};hr(Gce,{PieModule:()=>JE,createPieServices:()=>e6});var Vce=N(()=>{"use strict";BI();zs()});var Uce={};hr(Uce,{ArchitectureModule:()=>t6,createArchitectureServices:()=>r6});var Hce=N(()=>{"use strict";FI();zs()});var Wce={};hr(Wce,{GitGraphModule:()=>YE,createGitGraphServices:()=>XE});var qce=N(()=>{"use strict";II();zs()});var Yce={};hr(Yce,{RadarModule:()=>n6,createRadarServices:()=>i6});var Xce=N(()=>{"use strict";$I();zs()});async function uo(t,e){let r=o$e[t];if(!r)throw new Error(`Unknown diagram type: ${t}`);df[t]||await r();let i=df[t].parse(e);if(i.lexerErrors.length>0||i.parserErrors.length>0)throw new l$e(i);return i.value}var df,o$e,l$e,kp=N(()=>{"use strict";II();OI();PI();BI();FI();$I();zs();df={},o$e={info:Lt(async()=>{let{createInfoServices:t}=await Promise.resolve().then(()=>(Fce(),Bce)),e=t().Info.parser.LangiumParser;df.info=e},"info"),packet:Lt(async()=>{let{createPacketServices:t}=await Promise.resolve().then(()=>(zce(),$ce)),e=t().Packet.parser.LangiumParser;df.packet=e},"packet"),pie:Lt(async()=>{let{createPieServices:t}=await Promise.resolve().then(()=>(Vce(),Gce)),e=t().Pie.parser.LangiumParser;df.pie=e},"pie"),architecture:Lt(async()=>{let{createArchitectureServices:t}=await Promise.resolve().then(()=>(Hce(),Uce)),e=t().Architecture.parser.LangiumParser;df.architecture=e},"architecture"),gitGraph:Lt(async()=>{let{createGitGraphServices:t}=await Promise.resolve().then(()=>(qce(),Wce)),e=t().GitGraph.parser.LangiumParser;df.gitGraph=e},"gitGraph"),radar:Lt(async()=>{let{createRadarServices:t}=await Promise.resolve().then(()=>(Xce(),Yce)),e=t().Radar.parser.LangiumParser;df.radar=e},"radar")};o(uo,"parse");Lt(uo,"parse");l$e=class extends Error{static{o(this,"MermaidParseError")}constructor(t){let e=t.lexerErrors.map(n=>n.message).join(` +`),r=t.parserErrors.map(n=>n.message).join(` +`);super(`Parsing failed: ${e} ${r}`),this.result=t}static{Lt(this,"MermaidParseError")}}});function $c(t,e){t.accDescr&&e.setAccDescription?.(t.accDescr),t.accTitle&&e.setAccTitle?.(t.accTitle),t.title&&e.setDiagramTitle?.(t.title)}var T1=N(()=>{"use strict";o($c,"populateCommonDb")});var Kr,a6=N(()=>{"use strict";Kr={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4}});var pf,s6=N(()=>{"use strict";pf=class{constructor(e){this.init=e;this.records=this.init()}static{o(this,"ImperativeState")}reset(){this.records=this.init()}}});function zI(){return j9({length:7})}function u$e(t,e){let r=Object.create(null);return t.reduce((n,i)=>{let a=e(i);return r[a]||(r[a]=!0,n.push(i)),n},[])}function jce(t,e,r){let n=t.indexOf(e);n===-1?t.push(r):t.splice(n,1,r)}function Qce(t){let e=t.reduce((i,a)=>i.seq>a.seq?i:a,t[0]),r="";t.forEach(function(i){i===e?r+=" *":r+=" |"});let n=[r,e.id,e.seq];for(let i in _t.records.branches)_t.records.branches.get(i)===e.id&&n.push(i);if(Y.debug(n.join(" ")),e.parents&&e.parents.length==2&&e.parents[0]&&e.parents[1]){let i=_t.records.commits.get(e.parents[0]);jce(t,e,i),e.parents[1]&&t.push(_t.records.commits.get(e.parents[1]))}else{if(e.parents.length==0)return;if(e.parents[0]){let i=_t.records.commits.get(e.parents[0]);jce(t,e,i)}}t=u$e(t,i=>i.id),Qce(t)}var c$e,Ep,_t,h$e,f$e,d$e,p$e,m$e,g$e,y$e,Kce,v$e,x$e,b$e,w$e,T$e,Zce,k$e,E$e,S$e,o6,GI=N(()=>{"use strict";vt();ir();ji();gr();mi();a6();s6();Ya();c$e=or.gitGraph,Ep=o(()=>Fi({...c$e,...cr().gitGraph}),"getConfig"),_t=new pf(()=>{let t=Ep(),e=t.mainBranchName,r=t.mainBranchOrder;return{mainBranchName:e,commits:new Map,head:null,branchConfig:new Map([[e,{name:e,order:r}]]),branches:new Map([[e,null]]),currBranch:e,direction:"LR",seq:0,options:{}}});o(zI,"getID");o(u$e,"uniqBy");h$e=o(function(t){_t.records.direction=t},"setDirection"),f$e=o(function(t){Y.debug("options str",t),t=t?.trim(),t=t||"{}";try{_t.records.options=JSON.parse(t)}catch(e){Y.error("error while parsing gitGraph options",e.message)}},"setOptions"),d$e=o(function(){return _t.records.options},"getOptions"),p$e=o(function(t){let e=t.msg,r=t.id,n=t.type,i=t.tags;Y.info("commit",e,r,n,i),Y.debug("Entering commit:",e,r,n,i);let a=Ep();r=Ze.sanitizeText(r,a),e=Ze.sanitizeText(e,a),i=i?.map(l=>Ze.sanitizeText(l,a));let s={id:r||_t.records.seq+"-"+zI(),message:e,seq:_t.records.seq++,type:n??Kr.NORMAL,tags:i??[],parents:_t.records.head==null?[]:[_t.records.head.id],branch:_t.records.currBranch};_t.records.head=s,Y.info("main branch",a.mainBranchName),_t.records.commits.set(s.id,s),_t.records.branches.set(_t.records.currBranch,s.id),Y.debug("in pushCommit "+s.id)},"commit"),m$e=o(function(t){let e=t.name,r=t.order;if(e=Ze.sanitizeText(e,Ep()),_t.records.branches.has(e))throw new Error(`Trying to create an existing branch. (Help: Either use a new name if you want create a new branch or try using "checkout ${e}")`);_t.records.branches.set(e,_t.records.head!=null?_t.records.head.id:null),_t.records.branchConfig.set(e,{name:e,order:r}),Kce(e),Y.debug("in createBranch")},"branch"),g$e=o(t=>{let e=t.branch,r=t.id,n=t.type,i=t.tags,a=Ep();e=Ze.sanitizeText(e,a),r&&(r=Ze.sanitizeText(r,a));let s=_t.records.branches.get(_t.records.currBranch),l=_t.records.branches.get(e),u=s?_t.records.commits.get(s):void 0,h=l?_t.records.commits.get(l):void 0;if(u&&h&&u.branch===e)throw new Error(`Cannot merge branch '${e}' into itself.`);if(_t.records.currBranch===e){let p=new Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["branch abc"]},p}if(u===void 0||!u){let p=new Error(`Incorrect usage of "merge". Current branch (${_t.records.currBranch})has no commits`);throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["commit"]},p}if(!_t.records.branches.has(e)){let p=new Error('Incorrect usage of "merge". Branch to be merged ('+e+") does not exist");throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:[`branch ${e}`]},p}if(h===void 0||!h){let p=new Error('Incorrect usage of "merge". Branch to be merged ('+e+") has no commits");throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:['"commit"']},p}if(u===h){let p=new Error('Incorrect usage of "merge". Both branches have same head');throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["branch abc"]},p}if(r&&_t.records.commits.has(r)){let p=new Error('Incorrect usage of "merge". Commit with id:'+r+" already exists, use different custom Id");throw p.hash={text:`merge ${e} ${r} ${n} ${i?.join(" ")}`,token:`merge ${e} ${r} ${n} ${i?.join(" ")}`,expected:[`merge ${e} ${r}_UNIQUE ${n} ${i?.join(" ")}`]},p}let f=l||"",d={id:r||`${_t.records.seq}-${zI()}`,message:`merged branch ${e} into ${_t.records.currBranch}`,seq:_t.records.seq++,parents:_t.records.head==null?[]:[_t.records.head.id,f],branch:_t.records.currBranch,type:Kr.MERGE,customType:n,customId:!!r,tags:i??[]};_t.records.head=d,_t.records.commits.set(d.id,d),_t.records.branches.set(_t.records.currBranch,d.id),Y.debug(_t.records.branches),Y.debug("in mergeBranch")},"merge"),y$e=o(function(t){let e=t.id,r=t.targetId,n=t.tags,i=t.parent;Y.debug("Entering cherryPick:",e,r,n);let a=Ep();if(e=Ze.sanitizeText(e,a),r=Ze.sanitizeText(r,a),n=n?.map(u=>Ze.sanitizeText(u,a)),i=Ze.sanitizeText(i,a),!e||!_t.records.commits.has(e)){let u=new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw u.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},u}let s=_t.records.commits.get(e);if(s===void 0||!s)throw new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');if(i&&!(Array.isArray(s.parents)&&s.parents.includes(i)))throw new Error("Invalid operation: The specified parent commit is not an immediate parent of the cherry-picked commit.");let l=s.branch;if(s.type===Kr.MERGE&&!i)throw new Error("Incorrect usage of cherry-pick: If the source commit is a merge commit, an immediate parent commit must be specified.");if(!r||!_t.records.commits.has(r)){if(l===_t.records.currBranch){let d=new Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw d.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},d}let u=_t.records.branches.get(_t.records.currBranch);if(u===void 0||!u){let d=new Error(`Incorrect usage of "cherry-pick". Current branch (${_t.records.currBranch})has no commits`);throw d.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},d}let h=_t.records.commits.get(u);if(h===void 0||!h){let d=new Error(`Incorrect usage of "cherry-pick". Current branch (${_t.records.currBranch})has no commits`);throw d.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},d}let f={id:_t.records.seq+"-"+zI(),message:`cherry-picked ${s?.message} into ${_t.records.currBranch}`,seq:_t.records.seq++,parents:_t.records.head==null?[]:[_t.records.head.id,s.id],branch:_t.records.currBranch,type:Kr.CHERRY_PICK,tags:n?n.filter(Boolean):[`cherry-pick:${s.id}${s.type===Kr.MERGE?`|parent:${i}`:""}`]};_t.records.head=f,_t.records.commits.set(f.id,f),_t.records.branches.set(_t.records.currBranch,f.id),Y.debug(_t.records.branches),Y.debug("in cherryPick")}},"cherryPick"),Kce=o(function(t){if(t=Ze.sanitizeText(t,Ep()),_t.records.branches.has(t)){_t.records.currBranch=t;let e=_t.records.branches.get(_t.records.currBranch);e===void 0||!e?_t.records.head=null:_t.records.head=_t.records.commits.get(e)??null}else{let e=new Error(`Trying to checkout branch which is not yet created. (Help try using "branch ${t}")`);throw e.hash={text:`checkout ${t}`,token:`checkout ${t}`,expected:[`branch ${t}`]},e}},"checkout");o(jce,"upsert");o(Qce,"prettyPrintCommitHistory");v$e=o(function(){Y.debug(_t.records.commits);let t=Zce()[0];Qce([t])},"prettyPrint"),x$e=o(function(){_t.reset(),Ar()},"clear"),b$e=o(function(){return[..._t.records.branchConfig.values()].map((e,r)=>e.order!==null&&e.order!==void 0?e:{...e,order:parseFloat(`0.${r}`)}).sort((e,r)=>(e.order??0)-(r.order??0)).map(({name:e})=>({name:e}))},"getBranchesAsObjArray"),w$e=o(function(){return _t.records.branches},"getBranches"),T$e=o(function(){return _t.records.commits},"getCommits"),Zce=o(function(){let t=[..._t.records.commits.values()];return t.forEach(function(e){Y.debug(e.id)}),t.sort((e,r)=>e.seq-r.seq),t},"getCommitsArray"),k$e=o(function(){return _t.records.currBranch},"getCurrentBranch"),E$e=o(function(){return _t.records.direction},"getDirection"),S$e=o(function(){return _t.records.head},"getHead"),o6={commitType:Kr,getConfig:Ep,setDirection:h$e,setOptions:f$e,getOptions:d$e,commit:p$e,branch:m$e,merge:g$e,cherryPick:y$e,checkout:Kce,prettyPrint:v$e,clear:x$e,getBranchesAsObjArray:b$e,getBranches:w$e,getCommits:T$e,getCommitsArray:Zce,getCurrentBranch:k$e,getDirection:E$e,getHead:S$e,setAccTitle:Lr,getAccTitle:Rr,getAccDescription:Mr,setAccDescription:Nr,setDiagramTitle:$r,getDiagramTitle:Ir}});var C$e,A$e,_$e,D$e,L$e,R$e,N$e,Jce,eue=N(()=>{"use strict";kp();vt();T1();GI();a6();C$e=o((t,e)=>{$c(t,e),t.dir&&e.setDirection(t.dir);for(let r of t.statements)A$e(r,e)},"populate"),A$e=o((t,e)=>{let n={Commit:o(i=>e.commit(_$e(i)),"Commit"),Branch:o(i=>e.branch(D$e(i)),"Branch"),Merge:o(i=>e.merge(L$e(i)),"Merge"),Checkout:o(i=>e.checkout(R$e(i)),"Checkout"),CherryPicking:o(i=>e.cherryPick(N$e(i)),"CherryPicking")}[t.$type];n?n(t):Y.error(`Unknown statement type: ${t.$type}`)},"parseStatement"),_$e=o(t=>({id:t.id,msg:t.message??"",type:t.type!==void 0?Kr[t.type]:Kr.NORMAL,tags:t.tags??void 0}),"parseCommit"),D$e=o(t=>({name:t.name,order:t.order??0}),"parseBranch"),L$e=o(t=>({branch:t.branch,id:t.id??"",type:t.type!==void 0?Kr[t.type]:void 0,tags:t.tags??void 0}),"parseMerge"),R$e=o(t=>t.branch,"parseCheckout"),N$e=o(t=>({id:t.id,targetId:"",tags:t.tags?.length===0?void 0:t.tags,parent:t.parent}),"parseCherryPicking"),Jce={parse:o(async t=>{let e=await uo("gitGraph",t);Y.debug(e),C$e(e,o6)},"parse")}});var M$e,Ko,gf,yf,zc,qu,Sp,Gs,Vs,l6,db,c6,mf,Br,I$e,rue,nue,O$e,P$e,B$e,F$e,$$e,z$e,G$e,V$e,U$e,H$e,W$e,q$e,tue,Y$e,pb,X$e,j$e,K$e,Q$e,Z$e,iue,aue=N(()=>{"use strict";dr();zt();vt();ir();a6();M$e=me(),Ko=M$e?.gitGraph,gf=10,yf=40,zc=4,qu=2,Sp=8,Gs=new Map,Vs=new Map,l6=30,db=new Map,c6=[],mf=0,Br="LR",I$e=o(()=>{Gs.clear(),Vs.clear(),db.clear(),mf=0,c6=[],Br="LR"},"clear"),rue=o(t=>{let e=document.createElementNS("http://www.w3.org/2000/svg","text");return(typeof t=="string"?t.split(/\\n|\n|/gi):t).forEach(n=>{let i=document.createElementNS("http://www.w3.org/2000/svg","tspan");i.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),i.setAttribute("dy","1em"),i.setAttribute("x","0"),i.setAttribute("class","row"),i.textContent=n.trim(),e.appendChild(i)}),e},"drawText"),nue=o(t=>{let e,r,n;return Br==="BT"?(r=o((i,a)=>i<=a,"comparisonFunc"),n=1/0):(r=o((i,a)=>i>=a,"comparisonFunc"),n=0),t.forEach(i=>{let a=Br==="TB"||Br=="BT"?Vs.get(i)?.y:Vs.get(i)?.x;a!==void 0&&r(a,n)&&(e=i,n=a)}),e},"findClosestParent"),O$e=o(t=>{let e="",r=1/0;return t.forEach(n=>{let i=Vs.get(n).y;i<=r&&(e=n,r=i)}),e||void 0},"findClosestParentBT"),P$e=o((t,e,r)=>{let n=r,i=r,a=[];t.forEach(s=>{let l=e.get(s);if(!l)throw new Error(`Commit not found for key ${s}`);l.parents.length?(n=F$e(l),i=Math.max(n,i)):a.push(l),$$e(l,n)}),n=i,a.forEach(s=>{z$e(s,n,r)}),t.forEach(s=>{let l=e.get(s);if(l?.parents.length){let u=O$e(l.parents);n=Vs.get(u).y-yf,n<=i&&(i=n);let h=Gs.get(l.branch).pos,f=n-gf;Vs.set(l.id,{x:h,y:f})}})},"setParallelBTPos"),B$e=o(t=>{let e=nue(t.parents.filter(n=>n!==null));if(!e)throw new Error(`Closest parent not found for commit ${t.id}`);let r=Vs.get(e)?.y;if(r===void 0)throw new Error(`Closest parent position not found for commit ${t.id}`);return r},"findClosestParentPos"),F$e=o(t=>B$e(t)+yf,"calculateCommitPosition"),$$e=o((t,e)=>{let r=Gs.get(t.branch);if(!r)throw new Error(`Branch not found for commit ${t.id}`);let n=r.pos,i=e+gf;return Vs.set(t.id,{x:n,y:i}),{x:n,y:i}},"setCommitPosition"),z$e=o((t,e,r)=>{let n=Gs.get(t.branch);if(!n)throw new Error(`Branch not found for commit ${t.id}`);let i=e+r,a=n.pos;Vs.set(t.id,{x:a,y:i})},"setRootPosition"),G$e=o((t,e,r,n,i,a)=>{if(a===Kr.HIGHLIGHT)t.append("rect").attr("x",r.x-10).attr("y",r.y-10).attr("width",20).attr("height",20).attr("class",`commit ${e.id} commit-highlight${i%Sp} ${n}-outer`),t.append("rect").attr("x",r.x-6).attr("y",r.y-6).attr("width",12).attr("height",12).attr("class",`commit ${e.id} commit${i%Sp} ${n}-inner`);else if(a===Kr.CHERRY_PICK)t.append("circle").attr("cx",r.x).attr("cy",r.y).attr("r",10).attr("class",`commit ${e.id} ${n}`),t.append("circle").attr("cx",r.x-3).attr("cy",r.y+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${e.id} ${n}`),t.append("circle").attr("cx",r.x+3).attr("cy",r.y+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${e.id} ${n}`),t.append("line").attr("x1",r.x+3).attr("y1",r.y+1).attr("x2",r.x).attr("y2",r.y-5).attr("stroke","#fff").attr("class",`commit ${e.id} ${n}`),t.append("line").attr("x1",r.x-3).attr("y1",r.y+1).attr("x2",r.x).attr("y2",r.y-5).attr("stroke","#fff").attr("class",`commit ${e.id} ${n}`);else{let s=t.append("circle");if(s.attr("cx",r.x),s.attr("cy",r.y),s.attr("r",e.type===Kr.MERGE?9:10),s.attr("class",`commit ${e.id} commit${i%Sp}`),a===Kr.MERGE){let l=t.append("circle");l.attr("cx",r.x),l.attr("cy",r.y),l.attr("r",6),l.attr("class",`commit ${n} ${e.id} commit${i%Sp}`)}a===Kr.REVERSE&&t.append("path").attr("d",`M ${r.x-5},${r.y-5}L${r.x+5},${r.y+5}M${r.x-5},${r.y+5}L${r.x+5},${r.y-5}`).attr("class",`commit ${n} ${e.id} commit${i%Sp}`)}},"drawCommitBullet"),V$e=o((t,e,r,n)=>{if(e.type!==Kr.CHERRY_PICK&&(e.customId&&e.type===Kr.MERGE||e.type!==Kr.MERGE)&&Ko?.showCommitLabel){let i=t.append("g"),a=i.insert("rect").attr("class","commit-label-bkg"),s=i.append("text").attr("x",n).attr("y",r.y+25).attr("class","commit-label").text(e.id),l=s.node()?.getBBox();if(l&&(a.attr("x",r.posWithOffset-l.width/2-qu).attr("y",r.y+13.5).attr("width",l.width+2*qu).attr("height",l.height+2*qu),Br==="TB"||Br==="BT"?(a.attr("x",r.x-(l.width+4*zc+5)).attr("y",r.y-12),s.attr("x",r.x-(l.width+4*zc)).attr("y",r.y+l.height-12)):s.attr("x",r.posWithOffset-l.width/2),Ko.rotateCommitLabel))if(Br==="TB"||Br==="BT")s.attr("transform","rotate(-45, "+r.x+", "+r.y+")"),a.attr("transform","rotate(-45, "+r.x+", "+r.y+")");else{let u=-7.5-(l.width+10)/25*9.5,h=10+l.width/25*8.5;i.attr("transform","translate("+u+", "+h+") rotate(-45, "+n+", "+r.y+")")}}},"drawCommitLabel"),U$e=o((t,e,r,n)=>{if(e.tags.length>0){let i=0,a=0,s=0,l=[];for(let u of e.tags.reverse()){let h=t.insert("polygon"),f=t.append("circle"),d=t.append("text").attr("y",r.y-16-i).attr("class","tag-label").text(u),p=d.node()?.getBBox();if(!p)throw new Error("Tag bbox not found");a=Math.max(a,p.width),s=Math.max(s,p.height),d.attr("x",r.posWithOffset-p.width/2),l.push({tag:d,hole:f,rect:h,yOffset:i}),i+=20}for(let{tag:u,hole:h,rect:f,yOffset:d}of l){let p=s/2,m=r.y-19.2-d;if(f.attr("class","tag-label-bkg").attr("points",` + ${n-a/2-zc/2},${m+qu} + ${n-a/2-zc/2},${m-qu} + ${r.posWithOffset-a/2-zc},${m-p-qu} + ${r.posWithOffset+a/2+zc},${m-p-qu} + ${r.posWithOffset+a/2+zc},${m+p+qu} + ${r.posWithOffset-a/2-zc},${m+p+qu}`),h.attr("cy",m).attr("cx",n-a/2+zc/2).attr("r",1.5).attr("class","tag-hole"),Br==="TB"||Br==="BT"){let g=n+d;f.attr("class","tag-label-bkg").attr("points",` + ${r.x},${g+2} + ${r.x},${g-2} + ${r.x+gf},${g-p-2} + ${r.x+gf+a+4},${g-p-2} + ${r.x+gf+a+4},${g+p+2} + ${r.x+gf},${g+p+2}`).attr("transform","translate(12,12) rotate(45, "+r.x+","+n+")"),h.attr("cx",r.x+zc/2).attr("cy",g).attr("transform","translate(12,12) rotate(45, "+r.x+","+n+")"),u.attr("x",r.x+5).attr("y",g+3).attr("transform","translate(14,14) rotate(45, "+r.x+","+n+")")}}}},"drawCommitTags"),H$e=o(t=>{switch(t.customType??t.type){case Kr.NORMAL:return"commit-normal";case Kr.REVERSE:return"commit-reverse";case Kr.HIGHLIGHT:return"commit-highlight";case Kr.MERGE:return"commit-merge";case Kr.CHERRY_PICK:return"commit-cherry-pick";default:return"commit-normal"}},"getCommitClassType"),W$e=o((t,e,r,n)=>{let i={x:0,y:0};if(t.parents.length>0){let a=nue(t.parents);if(a){let s=n.get(a)??i;return e==="TB"?s.y+yf:e==="BT"?(n.get(t.id)??i).y-yf:s.x+yf}}else return e==="TB"?l6:e==="BT"?(n.get(t.id)??i).y-yf:0;return 0},"calculatePosition"),q$e=o((t,e,r)=>{let n=Br==="BT"&&r?e:e+gf,i=Br==="TB"||Br==="BT"?n:Gs.get(t.branch)?.pos,a=Br==="TB"||Br==="BT"?Gs.get(t.branch)?.pos:n;if(a===void 0||i===void 0)throw new Error(`Position were undefined for commit ${t.id}`);return{x:a,y:i,posWithOffset:n}},"getCommitPosition"),tue=o((t,e,r)=>{if(!Ko)throw new Error("GitGraph config not found");let n=t.append("g").attr("class","commit-bullets"),i=t.append("g").attr("class","commit-labels"),a=Br==="TB"||Br==="BT"?l6:0,s=[...e.keys()],l=Ko?.parallelCommits??!1,u=o((f,d)=>{let p=e.get(f)?.seq,m=e.get(d)?.seq;return p!==void 0&&m!==void 0?p-m:0},"sortKeys"),h=s.sort(u);Br==="BT"&&(l&&P$e(h,e,a),h=h.reverse()),h.forEach(f=>{let d=e.get(f);if(!d)throw new Error(`Commit not found for key ${f}`);l&&(a=W$e(d,Br,a,Vs));let p=q$e(d,a,l);if(r){let m=H$e(d),g=d.customType??d.type,y=Gs.get(d.branch)?.index??0;G$e(n,d,p,m,y,g),V$e(i,d,p,a),U$e(i,d,p,a)}Br==="TB"||Br==="BT"?Vs.set(d.id,{x:p.x,y:p.posWithOffset}):Vs.set(d.id,{x:p.posWithOffset,y:p.y}),a=Br==="BT"&&l?a+yf:a+yf+gf,a>mf&&(mf=a)})},"drawCommits"),Y$e=o((t,e,r,n,i)=>{let s=(Br==="TB"||Br==="BT"?r.xh.branch===s,"isOnBranchToGetCurve"),u=o(h=>h.seq>t.seq&&h.sequ(h)&&l(h))},"shouldRerouteArrow"),pb=o((t,e,r=0)=>{let n=t+Math.abs(t-e)/2;if(r>5)return n;if(c6.every(s=>Math.abs(s-n)>=10))return c6.push(n),n;let a=Math.abs(t-e);return pb(t,e-a/5,r+1)},"findLane"),X$e=o((t,e,r,n)=>{let i=Vs.get(e.id),a=Vs.get(r.id);if(i===void 0||a===void 0)throw new Error(`Commit positions not found for commits ${e.id} and ${r.id}`);let s=Y$e(e,r,i,a,n),l="",u="",h=0,f=0,d=Gs.get(r.branch)?.index;r.type===Kr.MERGE&&e.id!==r.parents[0]&&(d=Gs.get(e.branch)?.index);let p;if(s){l="A 10 10, 0, 0, 0,",u="A 10 10, 0, 0, 1,",h=10,f=10;let m=i.ya.x&&(l="A 20 20, 0, 0, 0,",u="A 20 20, 0, 0, 1,",h=20,f=20,r.type===Kr.MERGE&&e.id!==r.parents[0]?p=`M ${i.x} ${i.y} L ${i.x} ${a.y-h} ${u} ${i.x-f} ${a.y} L ${a.x} ${a.y}`:p=`M ${i.x} ${i.y} L ${a.x+h} ${i.y} ${l} ${a.x} ${i.y+f} L ${a.x} ${a.y}`),i.x===a.x&&(p=`M ${i.x} ${i.y} L ${a.x} ${a.y}`)):Br==="BT"?(i.xa.x&&(l="A 20 20, 0, 0, 0,",u="A 20 20, 0, 0, 1,",h=20,f=20,r.type===Kr.MERGE&&e.id!==r.parents[0]?p=`M ${i.x} ${i.y} L ${i.x} ${a.y+h} ${l} ${i.x-f} ${a.y} L ${a.x} ${a.y}`:p=`M ${i.x} ${i.y} L ${a.x-h} ${i.y} ${l} ${a.x} ${i.y-f} L ${a.x} ${a.y}`),i.x===a.x&&(p=`M ${i.x} ${i.y} L ${a.x} ${a.y}`)):(i.ya.y&&(r.type===Kr.MERGE&&e.id!==r.parents[0]?p=`M ${i.x} ${i.y} L ${a.x-h} ${i.y} ${l} ${a.x} ${i.y-f} L ${a.x} ${a.y}`:p=`M ${i.x} ${i.y} L ${i.x} ${a.y+h} ${u} ${i.x+f} ${a.y} L ${a.x} ${a.y}`),i.y===a.y&&(p=`M ${i.x} ${i.y} L ${a.x} ${a.y}`));if(p===void 0)throw new Error("Line definition not found");t.append("path").attr("d",p).attr("class","arrow arrow"+d%Sp)},"drawArrow"),j$e=o((t,e)=>{let r=t.append("g").attr("class","commit-arrows");[...e.keys()].forEach(n=>{let i=e.get(n);i.parents&&i.parents.length>0&&i.parents.forEach(a=>{X$e(r,e.get(a),i,e)})})},"drawArrows"),K$e=o((t,e)=>{let r=t.append("g");e.forEach((n,i)=>{let a=i%Sp,s=Gs.get(n.name)?.pos;if(s===void 0)throw new Error(`Position not found for branch ${n.name}`);let l=r.append("line");l.attr("x1",0),l.attr("y1",s),l.attr("x2",mf),l.attr("y2",s),l.attr("class","branch branch"+a),Br==="TB"?(l.attr("y1",l6),l.attr("x1",s),l.attr("y2",mf),l.attr("x2",s)):Br==="BT"&&(l.attr("y1",mf),l.attr("x1",s),l.attr("y2",l6),l.attr("x2",s)),c6.push(s);let u=n.name,h=rue(u),f=r.insert("rect"),p=r.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+a);p.node().appendChild(h);let m=h.getBBox();f.attr("class","branchLabelBkg label"+a).attr("rx",4).attr("ry",4).attr("x",-m.width-4-(Ko?.rotateCommitLabel===!0?30:0)).attr("y",-m.height/2+8).attr("width",m.width+18).attr("height",m.height+4),p.attr("transform","translate("+(-m.width-14-(Ko?.rotateCommitLabel===!0?30:0))+", "+(s-m.height/2-1)+")"),Br==="TB"?(f.attr("x",s-m.width/2-10).attr("y",0),p.attr("transform","translate("+(s-m.width/2-5)+", 0)")):Br==="BT"?(f.attr("x",s-m.width/2-10).attr("y",mf),p.attr("transform","translate("+(s-m.width/2-5)+", "+mf+")")):f.attr("transform","translate(-19, "+(s-m.height/2)+")")})},"drawBranches"),Q$e=o(function(t,e,r,n,i){return Gs.set(t,{pos:e,index:r}),e+=50+(i?40:0)+(Br==="TB"||Br==="BT"?n.width/2:0),e},"setBranchPosition"),Z$e=o(function(t,e,r,n){if(I$e(),Y.debug("in gitgraph renderer",t+` +`,"id:",e,r),!Ko)throw new Error("GitGraph config not found");let i=Ko.rotateCommitLabel??!1,a=n.db;db=a.getCommits();let s=a.getBranchesAsObjArray();Br=a.getDirection();let l=Ge(`[id="${e}"]`),u=0;s.forEach((h,f)=>{let d=rue(h.name),p=l.append("g"),m=p.insert("g").attr("class","branchLabel"),g=m.insert("g").attr("class","label branch-label");g.node()?.appendChild(d);let y=d.getBBox();u=Q$e(h.name,u,f,y,i),g.remove(),m.remove(),p.remove()}),tue(l,db,!1),Ko.showBranches&&K$e(l,s),j$e(l,db),tue(l,db,!0),Gt.insertTitle(l,"gitTitleText",Ko.titleTopMargin??0,a.getDiagramTitle()),oA(void 0,l,Ko.diagramPadding,Ko.useMaxWidth)},"draw"),iue={draw:Z$e}});var J$e,sue,oue=N(()=>{"use strict";J$e=o(t=>` + .commit-id, + .commit-msg, + .branch-label { + fill: lightgrey; + color: lightgrey; + font-family: 'trebuchet ms', verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + } + ${[0,1,2,3,4,5,6,7].map(e=>` + .branch-label${e} { fill: ${t["gitBranchLabel"+e]}; } + .commit${e} { stroke: ${t["git"+e]}; fill: ${t["git"+e]}; } + .commit-highlight${e} { stroke: ${t["gitInv"+e]}; fill: ${t["gitInv"+e]}; } + .label${e} { fill: ${t["git"+e]}; } + .arrow${e} { stroke: ${t["git"+e]}; } + `).join(` +`)} + + .branch { + stroke-width: 1; + stroke: ${t.lineColor}; + stroke-dasharray: 2; + } + .commit-label { font-size: ${t.commitLabelFontSize}; fill: ${t.commitLabelColor};} + .commit-label-bkg { font-size: ${t.commitLabelFontSize}; fill: ${t.commitLabelBackground}; opacity: 0.5; } + .tag-label { font-size: ${t.tagLabelFontSize}; fill: ${t.tagLabelColor};} + .tag-label-bkg { fill: ${t.tagLabelBackground}; stroke: ${t.tagLabelBorder}; } + .tag-hole { fill: ${t.textColor}; } + + .commit-merge { + stroke: ${t.primaryColor}; + fill: ${t.primaryColor}; + } + .commit-reverse { + stroke: ${t.primaryColor}; + fill: ${t.primaryColor}; + stroke-width: 3; + } + .commit-highlight-outer { + } + .commit-highlight-inner { + stroke: ${t.primaryColor}; + fill: ${t.primaryColor}; + } + + .arrow { stroke-width: 8; stroke-linecap: round; fill: none} + .gitTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${t.textColor}; + } +`,"getStyles"),sue=J$e});var lue={};hr(lue,{diagram:()=>eze});var eze,cue=N(()=>{"use strict";eue();GI();aue();oue();eze={parser:Jce,db:o6,renderer:iue,styles:sue}});var VI,fue,due=N(()=>{"use strict";VI=function(){var t=o(function(L,R,O,M){for(O=O||{},M=L.length;M--;O[L[M]]=R);return O},"o"),e=[6,8,10,12,13,14,15,16,17,18,20,21,22,23,24,25,26,27,28,29,30,31,33,35,36,38,40],r=[1,26],n=[1,27],i=[1,28],a=[1,29],s=[1,30],l=[1,31],u=[1,32],h=[1,33],f=[1,34],d=[1,9],p=[1,10],m=[1,11],g=[1,12],y=[1,13],v=[1,14],x=[1,15],b=[1,16],w=[1,19],C=[1,20],T=[1,21],E=[1,22],A=[1,23],S=[1,25],_=[1,35],I={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,gantt:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NL:10,weekday:11,weekday_monday:12,weekday_tuesday:13,weekday_wednesday:14,weekday_thursday:15,weekday_friday:16,weekday_saturday:17,weekday_sunday:18,weekend:19,weekend_friday:20,weekend_saturday:21,dateFormat:22,inclusiveEndDates:23,topAxis:24,axisFormat:25,tickInterval:26,excludes:27,includes:28,todayMarker:29,title:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,section:36,clickStatement:37,taskTxt:38,taskData:39,click:40,callbackname:41,callbackargs:42,href:43,clickStatementDebug:44,$accept:0,$end:1},terminals_:{2:"error",4:"gantt",6:"EOF",8:"SPACE",10:"NL",12:"weekday_monday",13:"weekday_tuesday",14:"weekday_wednesday",15:"weekday_thursday",16:"weekday_friday",17:"weekday_saturday",18:"weekday_sunday",20:"weekend_friday",21:"weekend_saturday",22:"dateFormat",23:"inclusiveEndDates",24:"topAxis",25:"axisFormat",26:"tickInterval",27:"excludes",28:"includes",29:"todayMarker",30:"title",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",36:"section",38:"taskTxt",39:"taskData",40:"click",41:"callbackname",42:"callbackargs",43:"href"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[19,1],[19,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,2],[37,2],[37,3],[37,3],[37,4],[37,3],[37,4],[37,2],[44,2],[44,3],[44,3],[44,4],[44,3],[44,4],[44,2]],performAction:o(function(R,O,M,B,F,P,z){var $=P.length-1;switch(F){case 1:return P[$-1];case 2:this.$=[];break;case 3:P[$-1].push(P[$]),this.$=P[$-1];break;case 4:case 5:this.$=P[$];break;case 6:case 7:this.$=[];break;case 8:B.setWeekday("monday");break;case 9:B.setWeekday("tuesday");break;case 10:B.setWeekday("wednesday");break;case 11:B.setWeekday("thursday");break;case 12:B.setWeekday("friday");break;case 13:B.setWeekday("saturday");break;case 14:B.setWeekday("sunday");break;case 15:B.setWeekend("friday");break;case 16:B.setWeekend("saturday");break;case 17:B.setDateFormat(P[$].substr(11)),this.$=P[$].substr(11);break;case 18:B.enableInclusiveEndDates(),this.$=P[$].substr(18);break;case 19:B.TopAxis(),this.$=P[$].substr(8);break;case 20:B.setAxisFormat(P[$].substr(11)),this.$=P[$].substr(11);break;case 21:B.setTickInterval(P[$].substr(13)),this.$=P[$].substr(13);break;case 22:B.setExcludes(P[$].substr(9)),this.$=P[$].substr(9);break;case 23:B.setIncludes(P[$].substr(9)),this.$=P[$].substr(9);break;case 24:B.setTodayMarker(P[$].substr(12)),this.$=P[$].substr(12);break;case 27:B.setDiagramTitle(P[$].substr(6)),this.$=P[$].substr(6);break;case 28:this.$=P[$].trim(),B.setAccTitle(this.$);break;case 29:case 30:this.$=P[$].trim(),B.setAccDescription(this.$);break;case 31:B.addSection(P[$].substr(8)),this.$=P[$].substr(8);break;case 33:B.addTask(P[$-1],P[$]),this.$="task";break;case 34:this.$=P[$-1],B.setClickEvent(P[$-1],P[$],null);break;case 35:this.$=P[$-2],B.setClickEvent(P[$-2],P[$-1],P[$]);break;case 36:this.$=P[$-2],B.setClickEvent(P[$-2],P[$-1],null),B.setLink(P[$-2],P[$]);break;case 37:this.$=P[$-3],B.setClickEvent(P[$-3],P[$-2],P[$-1]),B.setLink(P[$-3],P[$]);break;case 38:this.$=P[$-2],B.setClickEvent(P[$-2],P[$],null),B.setLink(P[$-2],P[$-1]);break;case 39:this.$=P[$-3],B.setClickEvent(P[$-3],P[$-1],P[$]),B.setLink(P[$-3],P[$-2]);break;case 40:this.$=P[$-1],B.setLink(P[$-1],P[$]);break;case 41:case 47:this.$=P[$-1]+" "+P[$];break;case 42:case 43:case 45:this.$=P[$-2]+" "+P[$-1]+" "+P[$];break;case 44:case 46:this.$=P[$-3]+" "+P[$-2]+" "+P[$-1]+" "+P[$];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:17,12:r,13:n,14:i,15:a,16:s,17:l,18:u,19:18,20:h,21:f,22:d,23:p,24:m,25:g,26:y,27:v,28:x,29:b,30:w,31:C,33:T,35:E,36:A,37:24,38:S,40:_},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:36,11:17,12:r,13:n,14:i,15:a,16:s,17:l,18:u,19:18,20:h,21:f,22:d,23:p,24:m,25:g,26:y,27:v,28:x,29:b,30:w,31:C,33:T,35:E,36:A,37:24,38:S,40:_},t(e,[2,5]),t(e,[2,6]),t(e,[2,17]),t(e,[2,18]),t(e,[2,19]),t(e,[2,20]),t(e,[2,21]),t(e,[2,22]),t(e,[2,23]),t(e,[2,24]),t(e,[2,25]),t(e,[2,26]),t(e,[2,27]),{32:[1,37]},{34:[1,38]},t(e,[2,30]),t(e,[2,31]),t(e,[2,32]),{39:[1,39]},t(e,[2,8]),t(e,[2,9]),t(e,[2,10]),t(e,[2,11]),t(e,[2,12]),t(e,[2,13]),t(e,[2,14]),t(e,[2,15]),t(e,[2,16]),{41:[1,40],43:[1,41]},t(e,[2,4]),t(e,[2,28]),t(e,[2,29]),t(e,[2,33]),t(e,[2,34],{42:[1,42],43:[1,43]}),t(e,[2,40],{41:[1,44]}),t(e,[2,35],{43:[1,45]}),t(e,[2,36]),t(e,[2,38],{42:[1,46]}),t(e,[2,37]),t(e,[2,39])],defaultActions:{},parseError:o(function(R,O){if(O.recoverable)this.trace(R);else{var M=new Error(R);throw M.hash=O,M}},"parseError"),parse:o(function(R){var O=this,M=[0],B=[],F=[null],P=[],z=this.table,$="",H=0,Q=0,j=0,ie=2,ne=1,le=P.slice.call(arguments,1),he=Object.create(this.lexer),K={yy:{}};for(var X in this.yy)Object.prototype.hasOwnProperty.call(this.yy,X)&&(K.yy[X]=this.yy[X]);he.setInput(R,K.yy),K.yy.lexer=he,K.yy.parser=this,typeof he.yylloc>"u"&&(he.yylloc={});var te=he.yylloc;P.push(te);var J=he.options&&he.options.ranges;typeof K.yy.parseError=="function"?this.parseError=K.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function se(W){M.length=M.length-2*W,F.length=F.length-W,P.length=P.length-W}o(se,"popStack");function ue(){var W;return W=B.pop()||he.lex()||ne,typeof W!="number"&&(W instanceof Array&&(B=W,W=B.pop()),W=O.symbols_[W]||W),W}o(ue,"lex");for(var Z,Se,ce,ae,Oe,ge,ze={},He,$e,Re,Ie;;){if(ce=M[M.length-1],this.defaultActions[ce]?ae=this.defaultActions[ce]:((Z===null||typeof Z>"u")&&(Z=ue()),ae=z[ce]&&z[ce][Z]),typeof ae>"u"||!ae.length||!ae[0]){var be="";Ie=[];for(He in z[ce])this.terminals_[He]&&He>ie&&Ie.push("'"+this.terminals_[He]+"'");he.showPosition?be="Parse error on line "+(H+1)+`: +`+he.showPosition()+` +Expecting `+Ie.join(", ")+", got '"+(this.terminals_[Z]||Z)+"'":be="Parse error on line "+(H+1)+": Unexpected "+(Z==ne?"end of input":"'"+(this.terminals_[Z]||Z)+"'"),this.parseError(be,{text:he.match,token:this.terminals_[Z]||Z,line:he.yylineno,loc:te,expected:Ie})}if(ae[0]instanceof Array&&ae.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ce+", token: "+Z);switch(ae[0]){case 1:M.push(Z),F.push(he.yytext),P.push(he.yylloc),M.push(ae[1]),Z=null,Se?(Z=Se,Se=null):(Q=he.yyleng,$=he.yytext,H=he.yylineno,te=he.yylloc,j>0&&j--);break;case 2:if($e=this.productions_[ae[1]][1],ze.$=F[F.length-$e],ze._$={first_line:P[P.length-($e||1)].first_line,last_line:P[P.length-1].last_line,first_column:P[P.length-($e||1)].first_column,last_column:P[P.length-1].last_column},J&&(ze._$.range=[P[P.length-($e||1)].range[0],P[P.length-1].range[1]]),ge=this.performAction.apply(ze,[$,Q,H,K.yy,ae[1],F,P].concat(le)),typeof ge<"u")return ge;$e&&(M=M.slice(0,-1*$e*2),F=F.slice(0,-1*$e),P=P.slice(0,-1*$e)),M.push(this.productions_[ae[1]][0]),F.push(ze.$),P.push(ze._$),Re=z[M[M.length-2]][M[M.length-1]],M.push(Re);break;case 3:return!0}}return!0},"parse")},D=function(){var L={EOF:1,parseError:o(function(O,M){if(this.yy.parser)this.yy.parser.parseError(O,M);else throw new Error(O)},"parseError"),setInput:o(function(R,O){return this.yy=O||this.yy||{},this._input=R,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var R=this._input[0];this.yytext+=R,this.yyleng++,this.offset++,this.match+=R,this.matched+=R;var O=R.match(/(?:\r\n?|\n).*/g);return O?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),R},"input"),unput:o(function(R){var O=R.length,M=R.split(/(?:\r\n?|\n)/g);this._input=R+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-O),this.offset-=O;var B=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),M.length-1&&(this.yylineno-=M.length-1);var F=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:M?(M.length===B.length?this.yylloc.first_column:0)+B[B.length-M.length].length-M[0].length:this.yylloc.first_column-O},this.options.ranges&&(this.yylloc.range=[F[0],F[0]+this.yyleng-O]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(R){this.unput(this.match.slice(R))},"less"),pastInput:o(function(){var R=this.matched.substr(0,this.matched.length-this.match.length);return(R.length>20?"...":"")+R.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var R=this.match;return R.length<20&&(R+=this._input.substr(0,20-R.length)),(R.substr(0,20)+(R.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var R=this.pastInput(),O=new Array(R.length+1).join("-");return R+this.upcomingInput()+` +`+O+"^"},"showPosition"),test_match:o(function(R,O){var M,B,F;if(this.options.backtrack_lexer&&(F={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(F.yylloc.range=this.yylloc.range.slice(0))),B=R[0].match(/(?:\r\n?|\n).*/g),B&&(this.yylineno+=B.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:B?B[B.length-1].length-B[B.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+R[0].length},this.yytext+=R[0],this.match+=R[0],this.matches=R,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(R[0].length),this.matched+=R[0],M=this.performAction.call(this,this.yy,this,O,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),M)return M;if(this._backtrack){for(var P in F)this[P]=F[P];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var R,O,M,B;this._more||(this.yytext="",this.match="");for(var F=this._currentRules(),P=0;PO[0].length)){if(O=M,B=P,this.options.backtrack_lexer){if(R=this.test_match(M,F[P]),R!==!1)return R;if(this._backtrack){O=!1;continue}else return!1}else if(!this.options.flex)break}return O?(R=this.test_match(O,F[B]),R!==!1?R:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var O=this.next();return O||this.lex()},"lex"),begin:o(function(O){this.conditionStack.push(O)},"begin"),popState:o(function(){var O=this.conditionStack.length-1;return O>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(O){return O=this.conditionStack.length-1-Math.abs(O||0),O>=0?this.conditionStack[O]:"INITIAL"},"topState"),pushState:o(function(O){this.begin(O)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(O,M,B,F){var P=F;switch(B){case 0:return this.begin("open_directive"),"open_directive";break;case 1:return this.begin("acc_title"),31;break;case 2:return this.popState(),"acc_title_value";break;case 3:return this.begin("acc_descr"),33;break;case 4:return this.popState(),"acc_descr_value";break;case 5:this.begin("acc_descr_multiline");break;case 6:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:break;case 9:break;case 10:break;case 11:return 10;case 12:break;case 13:break;case 14:this.begin("href");break;case 15:this.popState();break;case 16:return 43;case 17:this.begin("callbackname");break;case 18:this.popState();break;case 19:this.popState(),this.begin("callbackargs");break;case 20:return 41;case 21:this.popState();break;case 22:return 42;case 23:this.begin("click");break;case 24:this.popState();break;case 25:return 40;case 26:return 4;case 27:return 22;case 28:return 23;case 29:return 24;case 30:return 25;case 31:return 26;case 32:return 28;case 33:return 27;case 34:return 29;case 35:return 12;case 36:return 13;case 37:return 14;case 38:return 15;case 39:return 16;case 40:return 17;case 41:return 18;case 42:return 20;case 43:return 21;case 44:return"date";case 45:return 30;case 46:return"accDescription";case 47:return 36;case 48:return 38;case 49:return 39;case 50:return":";case 51:return 6;case 52:return"INVALID"}},"anonymous"),rules:[/^(?:%%\{)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%(?!\{)*[^\n]*)/i,/^(?:[^\}]%%*[^\n]*)/i,/^(?:%%*[^\n]*[\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:%[^\n]*)/i,/^(?:href[\s]+["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:call[\s]+)/i,/^(?:\([\s]*\))/i,/^(?:\()/i,/^(?:[^(]*)/i,/^(?:\))/i,/^(?:[^)]*)/i,/^(?:click[\s]+)/i,/^(?:[\s\n])/i,/^(?:[^\s\n]*)/i,/^(?:gantt\b)/i,/^(?:dateFormat\s[^#\n;]+)/i,/^(?:inclusiveEndDates\b)/i,/^(?:topAxis\b)/i,/^(?:axisFormat\s[^#\n;]+)/i,/^(?:tickInterval\s[^#\n;]+)/i,/^(?:includes\s[^#\n;]+)/i,/^(?:excludes\s[^#\n;]+)/i,/^(?:todayMarker\s[^\n;]+)/i,/^(?:weekday\s+monday\b)/i,/^(?:weekday\s+tuesday\b)/i,/^(?:weekday\s+wednesday\b)/i,/^(?:weekday\s+thursday\b)/i,/^(?:weekday\s+friday\b)/i,/^(?:weekday\s+saturday\b)/i,/^(?:weekday\s+sunday\b)/i,/^(?:weekend\s+friday\b)/i,/^(?:weekend\s+saturday\b)/i,/^(?:\d\d\d\d-\d\d-\d\d\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accDescription\s[^#\n;]+)/i,/^(?:section\s[^\n]+)/i,/^(?:[^:\n]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[6,7],inclusive:!1},acc_descr:{rules:[4],inclusive:!1},acc_title:{rules:[2],inclusive:!1},callbackargs:{rules:[21,22],inclusive:!1},callbackname:{rules:[18,19,20],inclusive:!1},href:{rules:[15,16],inclusive:!1},click:{rules:[24,25],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,17,23,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52],inclusive:!0}}};return L}();I.lexer=D;function k(){this.yy={}}return o(k,"Parser"),k.prototype=I,I.Parser=k,new k}();VI.parser=VI;fue=VI});var pue=Mi((UI,HI)=>{"use strict";(function(t,e){typeof UI=="object"&&typeof HI<"u"?HI.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_isoWeek=e()})(UI,function(){"use strict";var t="day";return function(e,r,n){var i=o(function(l){return l.add(4-l.isoWeekday(),t)},"a"),a=r.prototype;a.isoWeekYear=function(){return i(this).year()},a.isoWeek=function(l){if(!this.$utils().u(l))return this.add(7*(l-this.isoWeek()),t);var u,h,f,d,p=i(this),m=(u=this.isoWeekYear(),h=this.$u,f=(h?n.utc:n)().year(u).startOf("year"),d=4-f.isoWeekday(),f.isoWeekday()>4&&(d+=7),f.add(d,t));return p.diff(m,"week")+1},a.isoWeekday=function(l){return this.$utils().u(l)?this.day()||7:this.day(this.day()%7?l:l-7)};var s=a.startOf;a.startOf=function(l,u){var h=this.$utils(),f=!!h.u(u)||u;return h.p(l)==="isoweek"?f?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):s.bind(this)(l,u)}}})});var mue=Mi((WI,qI)=>{"use strict";(function(t,e){typeof WI=="object"&&typeof qI<"u"?qI.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_customParseFormat=e()})(WI,function(){"use strict";var t={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},e=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,r=/\d/,n=/\d\d/,i=/\d\d?/,a=/\d*[^-_:/,()\s\d]+/,s={},l=o(function(g){return(g=+g)+(g>68?1900:2e3)},"a"),u=o(function(g){return function(y){this[g]=+y}},"f"),h=[/[+-]\d\d:?(\d\d)?|Z/,function(g){(this.zone||(this.zone={})).offset=function(y){if(!y||y==="Z")return 0;var v=y.match(/([+-]|\d\d)/g),x=60*v[1]+(+v[2]||0);return x===0?0:v[0]==="+"?-x:x}(g)}],f=o(function(g){var y=s[g];return y&&(y.indexOf?y:y.s.concat(y.f))},"u"),d=o(function(g,y){var v,x=s.meridiem;if(x){for(var b=1;b<=24;b+=1)if(g.indexOf(x(b,0,y))>-1){v=b>12;break}}else v=g===(y?"pm":"PM");return v},"d"),p={A:[a,function(g){this.afternoon=d(g,!1)}],a:[a,function(g){this.afternoon=d(g,!0)}],Q:[r,function(g){this.month=3*(g-1)+1}],S:[r,function(g){this.milliseconds=100*+g}],SS:[n,function(g){this.milliseconds=10*+g}],SSS:[/\d{3}/,function(g){this.milliseconds=+g}],s:[i,u("seconds")],ss:[i,u("seconds")],m:[i,u("minutes")],mm:[i,u("minutes")],H:[i,u("hours")],h:[i,u("hours")],HH:[i,u("hours")],hh:[i,u("hours")],D:[i,u("day")],DD:[n,u("day")],Do:[a,function(g){var y=s.ordinal,v=g.match(/\d+/);if(this.day=v[0],y)for(var x=1;x<=31;x+=1)y(x).replace(/\[|\]/g,"")===g&&(this.day=x)}],w:[i,u("week")],ww:[n,u("week")],M:[i,u("month")],MM:[n,u("month")],MMM:[a,function(g){var y=f("months"),v=(f("monthsShort")||y.map(function(x){return x.slice(0,3)})).indexOf(g)+1;if(v<1)throw new Error;this.month=v%12||v}],MMMM:[a,function(g){var y=f("months").indexOf(g)+1;if(y<1)throw new Error;this.month=y%12||y}],Y:[/[+-]?\d+/,u("year")],YY:[n,function(g){this.year=l(g)}],YYYY:[/\d{4}/,u("year")],Z:h,ZZ:h};function m(g){var y,v;y=g,v=s&&s.formats;for(var x=(g=y.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(S,_,I){var D=I&&I.toUpperCase();return _||v[I]||t[I]||v[D].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(k,L,R){return L||R.slice(1)})})).match(e),b=x.length,w=0;w-1)return new Date((M==="X"?1e3:1)*O);var P=m(M)(O),z=P.year,$=P.month,H=P.day,Q=P.hours,j=P.minutes,ie=P.seconds,ne=P.milliseconds,le=P.zone,he=P.week,K=new Date,X=H||(z||$?1:K.getDate()),te=z||K.getFullYear(),J=0;z&&!$||(J=$>0?$-1:K.getMonth());var se,ue=Q||0,Z=j||0,Se=ie||0,ce=ne||0;return le?new Date(Date.UTC(te,J,X,ue,Z,Se,ce+60*le.offset*1e3)):B?new Date(Date.UTC(te,J,X,ue,Z,Se,ce)):(se=new Date(te,J,X,ue,Z,Se,ce),he&&(se=F(se).week(he).toDate()),se)}catch{return new Date("")}}(C,A,T,v),this.init(),D&&D!==!0&&(this.$L=this.locale(D).$L),I&&C!=this.format(A)&&(this.$d=new Date("")),s={}}else if(A instanceof Array)for(var k=A.length,L=1;L<=k;L+=1){E[1]=A[L-1];var R=v.apply(this,E);if(R.isValid()){this.$d=R.$d,this.$L=R.$L,this.init();break}L===k&&(this.$d=new Date(""))}else b.call(this,w)}}})});var gue=Mi((YI,XI)=>{"use strict";(function(t,e){typeof YI=="object"&&typeof XI<"u"?XI.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_advancedFormat=e()})(YI,function(){"use strict";return function(t,e){var r=e.prototype,n=r.format;r.format=function(i){var a=this,s=this.$locale();if(!this.isValid())return n.bind(this)(i);var l=this.$utils(),u=(i||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,function(h){switch(h){case"Q":return Math.ceil((a.$M+1)/3);case"Do":return s.ordinal(a.$D);case"gggg":return a.weekYear();case"GGGG":return a.isoWeekYear();case"wo":return s.ordinal(a.week(),"W");case"w":case"ww":return l.s(a.week(),h==="w"?1:2,"0");case"W":case"WW":return l.s(a.isoWeek(),h==="W"?1:2,"0");case"k":case"kk":return l.s(String(a.$H===0?24:a.$H),h==="k"?1:2,"0");case"X":return Math.floor(a.$d.getTime()/1e3);case"x":return a.$d.getTime();case"z":return"["+a.offsetName()+"]";case"zzz":return"["+a.offsetName("long")+"]";default:return h}});return n.bind(this)(u)}}})});function Nue(t,e,r){let n=!0;for(;n;)n=!1,r.forEach(function(i){let a="^\\s*"+i+"\\s*$",s=new RegExp(a);t[0].match(s)&&(e[i]=!0,t.shift(1),n=!0)})}var xue,ho,bue,wue,Tue,yue,Gc,ZI,JI,eO,mb,gb,tO,rO,f6,E1,nO,kue,iO,yb,aO,sO,d6,jI,ize,aze,sze,oze,lze,cze,uze,hze,fze,dze,pze,mze,gze,yze,vze,xze,bze,wze,Tze,kze,Eze,Sze,Cze,Eue,Aze,_ze,Dze,Sue,Lze,KI,Cue,Aue,u6,k1,Rze,Nze,QI,h6,Gi,_ue,Mze,Cp,Ize,vue,Oze,Due,Pze,Lue,Bze,Fze,Rue,Mue=N(()=>{"use strict";xue=Sa(z0(),1),ho=Sa(R4(),1),bue=Sa(pue(),1),wue=Sa(mue(),1),Tue=Sa(gue(),1);vt();zt();ir();mi();ho.default.extend(bue.default);ho.default.extend(wue.default);ho.default.extend(Tue.default);yue={friday:5,saturday:6},Gc="",ZI="",eO="",mb=[],gb=[],tO=new Map,rO=[],f6=[],E1="",nO="",kue=["active","done","crit","milestone"],iO=[],yb=!1,aO=!1,sO="sunday",d6="saturday",jI=0,ize=o(function(){rO=[],f6=[],E1="",iO=[],u6=0,QI=void 0,h6=void 0,Gi=[],Gc="",ZI="",nO="",JI=void 0,eO="",mb=[],gb=[],yb=!1,aO=!1,jI=0,tO=new Map,Ar(),sO="sunday",d6="saturday"},"clear"),aze=o(function(t){ZI=t},"setAxisFormat"),sze=o(function(){return ZI},"getAxisFormat"),oze=o(function(t){JI=t},"setTickInterval"),lze=o(function(){return JI},"getTickInterval"),cze=o(function(t){eO=t},"setTodayMarker"),uze=o(function(){return eO},"getTodayMarker"),hze=o(function(t){Gc=t},"setDateFormat"),fze=o(function(){yb=!0},"enableInclusiveEndDates"),dze=o(function(){return yb},"endDatesAreInclusive"),pze=o(function(){aO=!0},"enableTopAxis"),mze=o(function(){return aO},"topAxisEnabled"),gze=o(function(t){nO=t},"setDisplayMode"),yze=o(function(){return nO},"getDisplayMode"),vze=o(function(){return Gc},"getDateFormat"),xze=o(function(t){mb=t.toLowerCase().split(/[\s,]+/)},"setIncludes"),bze=o(function(){return mb},"getIncludes"),wze=o(function(t){gb=t.toLowerCase().split(/[\s,]+/)},"setExcludes"),Tze=o(function(){return gb},"getExcludes"),kze=o(function(){return tO},"getLinks"),Eze=o(function(t){E1=t,rO.push(t)},"addSection"),Sze=o(function(){return rO},"getSections"),Cze=o(function(){let t=vue(),e=10,r=0;for(;!t&&r[\d\w- ]+)/.exec(r);if(i!==null){let s=null;for(let u of i.groups.ids.split(" ")){let h=Cp(u);h!==void 0&&(!s||h.endTime>s.endTime)&&(s=h)}if(s)return s.endTime;let l=new Date;return l.setHours(0,0,0,0),l}let a=(0,ho.default)(r,e.trim(),!0);if(a.isValid())return a.toDate();{Y.debug("Invalid date:"+r),Y.debug("With date format:"+e.trim());let s=new Date(r);if(s===void 0||isNaN(s.getTime())||s.getFullYear()<-1e4||s.getFullYear()>1e4)throw new Error("Invalid date:"+r);return s}},"getStartDate"),Cue=o(function(t){let e=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(t.trim());return e!==null?[Number.parseFloat(e[1]),e[2]]:[NaN,"ms"]},"parseDuration"),Aue=o(function(t,e,r,n=!1){r=r.trim();let a=/^until\s+(?[\d\w- ]+)/.exec(r);if(a!==null){let f=null;for(let p of a.groups.ids.split(" ")){let m=Cp(p);m!==void 0&&(!f||m.startTime{window.open(r,"_self")}),tO.set(n,r))}),Due(t,"clickable")},"setLink"),Due=o(function(t,e){t.split(",").forEach(function(r){let n=Cp(r);n!==void 0&&n.classes.push(e)})},"setClass"),Pze=o(function(t,e,r){if(me().securityLevel!=="loose"||e===void 0)return;let n=[];if(typeof r=="string"){n=r.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let a=0;a{Gt.runFunc(e,...n)})},"setClickFun"),Lue=o(function(t,e){iO.push(function(){let r=document.querySelector(`[id="${t}"]`);r!==null&&r.addEventListener("click",function(){e()})},function(){let r=document.querySelector(`[id="${t}-text"]`);r!==null&&r.addEventListener("click",function(){e()})})},"pushFun"),Bze=o(function(t,e,r){t.split(",").forEach(function(n){Pze(n,e,r)}),Due(t,"clickable")},"setClickEvent"),Fze=o(function(t){iO.forEach(function(e){e(t)})},"bindFunctions"),Rue={getConfig:o(()=>me().gantt,"getConfig"),clear:ize,setDateFormat:hze,getDateFormat:vze,enableInclusiveEndDates:fze,endDatesAreInclusive:dze,enableTopAxis:pze,topAxisEnabled:mze,setAxisFormat:aze,getAxisFormat:sze,setTickInterval:oze,getTickInterval:lze,setTodayMarker:cze,getTodayMarker:uze,setAccTitle:Lr,getAccTitle:Rr,setDiagramTitle:$r,getDiagramTitle:Ir,setDisplayMode:gze,getDisplayMode:yze,setAccDescription:Nr,getAccDescription:Mr,addSection:Eze,getSections:Sze,getTasks:Cze,addTask:Mze,findTaskById:Cp,addTaskOrg:Ize,setIncludes:xze,getIncludes:bze,setExcludes:wze,getExcludes:Tze,setClickEvent:Bze,setLink:Oze,getLinks:kze,bindFunctions:Fze,parseDuration:Cue,isInvalidDate:Eue,setWeekday:Aze,getWeekday:_ze,setWeekend:Dze};o(Nue,"getTaskTags")});var p6,$ze,Iue,zze,Yu,Gze,Oue,Pue=N(()=>{"use strict";p6=Sa(R4(),1);vt();dr();gr();zt();Ei();$ze=o(function(){Y.debug("Something is calling, setConf, remove the call")},"setConf"),Iue={monday:Ch,tuesday:T5,wednesday:k5,thursday:oc,friday:E5,saturday:S5,sunday:yl},zze=o((t,e)=>{let r=[...t].map(()=>-1/0),n=[...t].sort((a,s)=>a.startTime-s.startTime||a.order-s.order),i=0;for(let a of n)for(let s=0;s=r[s]){r[s]=a.endTime,a.order=s+e,s>i&&(i=s);break}return i},"getMaxIntersections"),Gze=o(function(t,e,r,n){let i=me().gantt,a=me().securityLevel,s;a==="sandbox"&&(s=Ge("#i"+e));let l=a==="sandbox"?Ge(s.nodes()[0].contentDocument.body):Ge("body"),u=a==="sandbox"?s.nodes()[0].contentDocument:document,h=u.getElementById(e);Yu=h.parentElement.offsetWidth,Yu===void 0&&(Yu=1200),i.useWidth!==void 0&&(Yu=i.useWidth);let f=n.db.getTasks(),d=[];for(let S of f)d.push(S.type);d=A(d);let p={},m=2*i.topPadding;if(n.db.getDisplayMode()==="compact"||i.displayMode==="compact"){let S={};for(let I of f)S[I.section]===void 0?S[I.section]=[I]:S[I.section].push(I);let _=0;for(let I of Object.keys(S)){let D=zze(S[I],_)+1;_+=D,m+=D*(i.barHeight+i.barGap),p[I]=D}}else{m+=f.length*(i.barHeight+i.barGap);for(let S of d)p[S]=f.filter(_=>_.type===S).length}h.setAttribute("viewBox","0 0 "+Yu+" "+m);let g=l.select(`[id="${e}"]`),y=_5().domain([M3(f,function(S){return S.startTime}),N3(f,function(S){return S.endTime})]).rangeRound([0,Yu-i.leftPadding-i.rightPadding]);function v(S,_){let I=S.startTime,D=_.startTime,k=0;return I>D?k=1:Iz.order))].map(z=>S.find($=>$.order===z));g.append("g").selectAll("rect").data(M).enter().append("rect").attr("x",0).attr("y",function(z,$){return $=z.order,$*_+I-2}).attr("width",function(){return R-i.rightPadding/2}).attr("height",_).attr("class",function(z){for(let[$,H]of d.entries())if(z.type===H)return"section section"+$%i.numberSectionStyles;return"section section0"});let B=g.append("g").selectAll("rect").data(S).enter(),F=n.db.getLinks();if(B.append("rect").attr("id",function(z){return z.id}).attr("rx",3).attr("ry",3).attr("x",function(z){return z.milestone?y(z.startTime)+D+.5*(y(z.endTime)-y(z.startTime))-.5*k:y(z.startTime)+D}).attr("y",function(z,$){return $=z.order,$*_+I}).attr("width",function(z){return z.milestone?k:y(z.renderEndTime||z.endTime)-y(z.startTime)}).attr("height",k).attr("transform-origin",function(z,$){return $=z.order,(y(z.startTime)+D+.5*(y(z.endTime)-y(z.startTime))).toString()+"px "+($*_+I+.5*k).toString()+"px"}).attr("class",function(z){let $="task",H="";z.classes.length>0&&(H=z.classes.join(" "));let Q=0;for(let[ie,ne]of d.entries())z.type===ne&&(Q=ie%i.numberSectionStyles);let j="";return z.active?z.crit?j+=" activeCrit":j=" active":z.done?z.crit?j=" doneCrit":j=" done":z.crit&&(j+=" crit"),j.length===0&&(j=" task"),z.milestone&&(j=" milestone "+j),j+=Q,j+=" "+H,$+j}),B.append("text").attr("id",function(z){return z.id+"-text"}).text(function(z){return z.task}).attr("font-size",i.fontSize).attr("x",function(z){let $=y(z.startTime),H=y(z.renderEndTime||z.endTime);z.milestone&&($+=.5*(y(z.endTime)-y(z.startTime))-.5*k),z.milestone&&(H=$+k);let Q=this.getBBox().width;return Q>H-$?H+Q+1.5*i.leftPadding>R?$+D-5:H+D+5:(H-$)/2+$+D}).attr("y",function(z,$){return $=z.order,$*_+i.barHeight/2+(i.fontSize/2-2)+I}).attr("text-height",k).attr("class",function(z){let $=y(z.startTime),H=y(z.endTime);z.milestone&&(H=$+k);let Q=this.getBBox().width,j="";z.classes.length>0&&(j=z.classes.join(" "));let ie=0;for(let[le,he]of d.entries())z.type===he&&(ie=le%i.numberSectionStyles);let ne="";return z.active&&(z.crit?ne="activeCritText"+ie:ne="activeText"+ie),z.done?z.crit?ne=ne+" doneCritText"+ie:ne=ne+" doneText"+ie:z.crit&&(ne=ne+" critText"+ie),z.milestone&&(ne+=" milestoneText"),Q>H-$?H+Q+1.5*i.leftPadding>R?j+" taskTextOutsideLeft taskTextOutside"+ie+" "+ne:j+" taskTextOutsideRight taskTextOutside"+ie+" "+ne+" width-"+Q:j+" taskText taskText"+ie+" "+ne+" width-"+Q}),me().securityLevel==="sandbox"){let z;z=Ge("#i"+e);let $=z.nodes()[0].contentDocument;B.filter(function(H){return F.has(H.id)}).each(function(H){var Q=$.querySelector("#"+H.id),j=$.querySelector("#"+H.id+"-text");let ie=Q.parentNode;var ne=$.createElement("a");ne.setAttribute("xlink:href",F.get(H.id)),ne.setAttribute("target","_top"),ie.appendChild(ne),ne.appendChild(Q),ne.appendChild(j)})}}o(b,"drawRects");function w(S,_,I,D,k,L,R,O){if(R.length===0&&O.length===0)return;let M,B;for(let{startTime:Q,endTime:j}of L)(M===void 0||QB)&&(B=j);if(!M||!B)return;if((0,p6.default)(B).diff((0,p6.default)(M),"year")>5){Y.warn("The difference between the min and max time is more than 5 years. This will cause performance issues. Skipping drawing exclude days.");return}let F=n.db.getDateFormat(),P=[],z=null,$=(0,p6.default)(M);for(;$.valueOf()<=B;)n.db.isInvalidDate($,F,R,O)?z?z.end=$:z={start:$,end:$}:z&&(P.push(z),z=null),$=$.add(1,"d");g.append("g").selectAll("rect").data(P).enter().append("rect").attr("id",function(Q){return"exclude-"+Q.start.format("YYYY-MM-DD")}).attr("x",function(Q){return y(Q.start)+I}).attr("y",i.gridLineStartPadding).attr("width",function(Q){let j=Q.end.add(1,"day");return y(j)-y(Q.start)}).attr("height",k-_-i.gridLineStartPadding).attr("transform-origin",function(Q,j){return(y(Q.start)+I+.5*(y(Q.end)-y(Q.start))).toString()+"px "+(j*S+.5*k).toString()+"px"}).attr("class","exclude-range")}o(w,"drawExcludeDays");function C(S,_,I,D){let k=bA(y).tickSize(-D+_+i.gridLineStartPadding).tickFormat(wd(n.db.getAxisFormat()||i.axisFormat||"%Y-%m-%d")),R=/^([1-9]\d*)(millisecond|second|minute|hour|day|week|month)$/.exec(n.db.getTickInterval()||i.tickInterval);if(R!==null){let O=R[1],M=R[2],B=n.db.getWeekday()||i.weekday;switch(M){case"millisecond":k.ticks(ac.every(O));break;case"second":k.ticks(Ks.every(O));break;case"minute":k.ticks(vu.every(O));break;case"hour":k.ticks(xu.every(O));break;case"day":k.ticks(_o.every(O));break;case"week":k.ticks(Iue[B].every(O));break;case"month":k.ticks(bu.every(O));break}}if(g.append("g").attr("class","grid").attr("transform","translate("+S+", "+(D-50)+")").call(k).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10).attr("dy","1em"),n.db.topAxisEnabled()||i.topAxis){let O=xA(y).tickSize(-D+_+i.gridLineStartPadding).tickFormat(wd(n.db.getAxisFormat()||i.axisFormat||"%Y-%m-%d"));if(R!==null){let M=R[1],B=R[2],F=n.db.getWeekday()||i.weekday;switch(B){case"millisecond":O.ticks(ac.every(M));break;case"second":O.ticks(Ks.every(M));break;case"minute":O.ticks(vu.every(M));break;case"hour":O.ticks(xu.every(M));break;case"day":O.ticks(_o.every(M));break;case"week":O.ticks(Iue[F].every(M));break;case"month":O.ticks(bu.every(M));break}}g.append("g").attr("class","grid").attr("transform","translate("+S+", "+_+")").call(O).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}o(C,"makeGrid");function T(S,_){let I=0,D=Object.keys(p).map(k=>[k,p[k]]);g.append("g").selectAll("text").data(D).enter().append(function(k){let L=k[0].split(Ze.lineBreakRegex),R=-(L.length-1)/2,O=u.createElementNS("http://www.w3.org/2000/svg","text");O.setAttribute("dy",R+"em");for(let[M,B]of L.entries()){let F=u.createElementNS("http://www.w3.org/2000/svg","tspan");F.setAttribute("alignment-baseline","central"),F.setAttribute("x","10"),M>0&&F.setAttribute("dy","1em"),F.textContent=B,O.appendChild(F)}return O}).attr("x",10).attr("y",function(k,L){if(L>0)for(let R=0;R{"use strict";Vze=o(t=>` + .mermaid-main-font { + font-family: ${t.fontFamily}; + } + + .exclude-range { + fill: ${t.excludeBkgColor}; + } + + .section { + stroke: none; + opacity: 0.2; + } + + .section0 { + fill: ${t.sectionBkgColor}; + } + + .section2 { + fill: ${t.sectionBkgColor2}; + } + + .section1, + .section3 { + fill: ${t.altSectionBkgColor}; + opacity: 0.2; + } + + .sectionTitle0 { + fill: ${t.titleColor}; + } + + .sectionTitle1 { + fill: ${t.titleColor}; + } + + .sectionTitle2 { + fill: ${t.titleColor}; + } + + .sectionTitle3 { + fill: ${t.titleColor}; + } + + .sectionTitle { + text-anchor: start; + font-family: ${t.fontFamily}; + } + + + /* Grid and axis */ + + .grid .tick { + stroke: ${t.gridColor}; + opacity: 0.8; + shape-rendering: crispEdges; + } + + .grid .tick text { + font-family: ${t.fontFamily}; + fill: ${t.textColor}; + } + + .grid path { + stroke-width: 0; + } + + + /* Today line */ + + .today { + fill: none; + stroke: ${t.todayLineColor}; + stroke-width: 2px; + } + + + /* Task styling */ + + /* Default task */ + + .task { + stroke-width: 2; + } + + .taskText { + text-anchor: middle; + font-family: ${t.fontFamily}; + } + + .taskTextOutsideRight { + fill: ${t.taskTextDarkColor}; + text-anchor: start; + font-family: ${t.fontFamily}; + } + + .taskTextOutsideLeft { + fill: ${t.taskTextDarkColor}; + text-anchor: end; + } + + + /* Special case clickable */ + + .task.clickable { + cursor: pointer; + } + + .taskText.clickable { + cursor: pointer; + fill: ${t.taskTextClickableColor} !important; + font-weight: bold; + } + + .taskTextOutsideLeft.clickable { + cursor: pointer; + fill: ${t.taskTextClickableColor} !important; + font-weight: bold; + } + + .taskTextOutsideRight.clickable { + cursor: pointer; + fill: ${t.taskTextClickableColor} !important; + font-weight: bold; + } + + + /* Specific task settings for the sections*/ + + .taskText0, + .taskText1, + .taskText2, + .taskText3 { + fill: ${t.taskTextColor}; + } + + .task0, + .task1, + .task2, + .task3 { + fill: ${t.taskBkgColor}; + stroke: ${t.taskBorderColor}; + } + + .taskTextOutside0, + .taskTextOutside2 + { + fill: ${t.taskTextOutsideColor}; + } + + .taskTextOutside1, + .taskTextOutside3 { + fill: ${t.taskTextOutsideColor}; + } + + + /* Active task */ + + .active0, + .active1, + .active2, + .active3 { + fill: ${t.activeTaskBkgColor}; + stroke: ${t.activeTaskBorderColor}; + } + + .activeText0, + .activeText1, + .activeText2, + .activeText3 { + fill: ${t.taskTextDarkColor} !important; + } + + + /* Completed task */ + + .done0, + .done1, + .done2, + .done3 { + stroke: ${t.doneTaskBorderColor}; + fill: ${t.doneTaskBkgColor}; + stroke-width: 2; + } + + .doneText0, + .doneText1, + .doneText2, + .doneText3 { + fill: ${t.taskTextDarkColor} !important; + } + + + /* Tasks on the critical line */ + + .crit0, + .crit1, + .crit2, + .crit3 { + stroke: ${t.critBorderColor}; + fill: ${t.critBkgColor}; + stroke-width: 2; + } + + .activeCrit0, + .activeCrit1, + .activeCrit2, + .activeCrit3 { + stroke: ${t.critBorderColor}; + fill: ${t.activeTaskBkgColor}; + stroke-width: 2; + } + + .doneCrit0, + .doneCrit1, + .doneCrit2, + .doneCrit3 { + stroke: ${t.critBorderColor}; + fill: ${t.doneTaskBkgColor}; + stroke-width: 2; + cursor: pointer; + shape-rendering: crispEdges; + } + + .milestone { + transform: rotate(45deg) scale(0.8,0.8); + } + + .milestoneText { + font-style: italic; + } + .doneCritText0, + .doneCritText1, + .doneCritText2, + .doneCritText3 { + fill: ${t.taskTextDarkColor} !important; + } + + .activeCritText0, + .activeCritText1, + .activeCritText2, + .activeCritText3 { + fill: ${t.taskTextDarkColor} !important; + } + + .titleText { + text-anchor: middle; + font-size: 18px; + fill: ${t.titleColor||t.textColor}; + font-family: ${t.fontFamily}; + } +`,"getStyles"),Bue=Vze});var $ue={};hr($ue,{diagram:()=>Uze});var Uze,zue=N(()=>{"use strict";due();Mue();Pue();Fue();Uze={parser:fue,db:Rue,renderer:Oue,styles:Bue}});var Uue,Hue=N(()=>{"use strict";kp();vt();Uue={parse:o(async t=>{let e=await uo("info",t);Y.debug(e)},"parse")}});var vb,oO=N(()=>{vb={name:"mermaid",version:"11.6.0",description:"Markdown-ish syntax for generating flowcharts, mindmaps, sequence diagrams, class diagrams, gantt charts, git graphs and more.",type:"module",module:"./dist/mermaid.core.mjs",types:"./dist/mermaid.d.ts",exports:{".":{types:"./dist/mermaid.d.ts",import:"./dist/mermaid.core.mjs",default:"./dist/mermaid.core.mjs"},"./*":"./*"},keywords:["diagram","markdown","flowchart","sequence diagram","gantt","class diagram","git graph","mindmap","packet diagram","c4 diagram","er diagram","pie chart","pie diagram","quadrant chart","requirement diagram","graph"],scripts:{clean:"rimraf dist",dev:"pnpm -w dev","docs:code":"typedoc src/defaultConfig.ts src/config.ts src/mermaid.ts && prettier --write ./src/docs/config/setup","docs:build":"rimraf ../../docs && pnpm docs:code && pnpm docs:spellcheck && tsx scripts/docs.cli.mts","docs:verify":"pnpm docs:code && pnpm docs:spellcheck && tsx scripts/docs.cli.mts --verify","docs:pre:vitepress":"pnpm --filter ./src/docs prefetch && rimraf src/vitepress && pnpm docs:code && tsx scripts/docs.cli.mts --vitepress && pnpm --filter ./src/vitepress install --no-frozen-lockfile --ignore-scripts","docs:build:vitepress":"pnpm docs:pre:vitepress && (cd src/vitepress && pnpm run build) && cpy --flat src/docs/landing/ ./src/vitepress/.vitepress/dist/landing","docs:dev":'pnpm docs:pre:vitepress && concurrently "pnpm --filter ./src/vitepress dev" "tsx scripts/docs.cli.mts --watch --vitepress"',"docs:dev:docker":'pnpm docs:pre:vitepress && concurrently "pnpm --filter ./src/vitepress dev:docker" "tsx scripts/docs.cli.mts --watch --vitepress"',"docs:serve":"pnpm docs:build:vitepress && vitepress serve src/vitepress","docs:spellcheck":'cspell "src/docs/**/*.md"',"docs:release-version":"tsx scripts/update-release-version.mts","docs:verify-version":"tsx scripts/update-release-version.mts --verify","types:build-config":"tsx scripts/create-types-from-json-schema.mts","types:verify-config":"tsx scripts/create-types-from-json-schema.mts --verify",checkCircle:"npx madge --circular ./src",prepublishOnly:"pnpm docs:verify-version"},repository:{type:"git",url:"https://github.com/mermaid-js/mermaid"},author:"Knut Sveidqvist",license:"MIT",standard:{ignore:["**/parser/*.js","dist/**/*.js","cypress/**/*.js"],globals:["page"]},dependencies:{"@braintree/sanitize-url":"^7.0.4","@iconify/utils":"^2.1.33","@mermaid-js/parser":"workspace:^","@types/d3":"^7.4.3",cytoscape:"^3.29.3","cytoscape-cose-bilkent":"^4.1.0","cytoscape-fcose":"^2.2.0",d3:"^7.9.0","d3-sankey":"^0.12.3","dagre-d3-es":"7.0.11",dayjs:"^1.11.13",dompurify:"^3.2.4",katex:"^0.16.9",khroma:"^2.1.0","lodash-es":"^4.17.21",marked:"^15.0.7",roughjs:"^4.6.6",stylis:"^4.3.6","ts-dedent":"^2.2.0",uuid:"^11.1.0"},devDependencies:{"@adobe/jsonschema2md":"^8.0.2","@iconify/types":"^2.0.0","@types/cytoscape":"^3.21.9","@types/cytoscape-fcose":"^2.2.4","@types/d3-sankey":"^0.12.4","@types/d3-scale":"^4.0.9","@types/d3-scale-chromatic":"^3.1.0","@types/d3-selection":"^3.0.11","@types/d3-shape":"^3.1.7","@types/jsdom":"^21.1.7","@types/katex":"^0.16.7","@types/lodash-es":"^4.17.12","@types/micromatch":"^4.0.9","@types/stylis":"^4.2.7","@types/uuid":"^10.0.0",ajv:"^8.17.1",chokidar:"^4.0.3",concurrently:"^9.1.2","csstree-validator":"^4.0.1",globby:"^14.0.2",jison:"^0.4.18","js-base64":"^3.7.7",jsdom:"^26.0.0","json-schema-to-typescript":"^15.0.4",micromatch:"^4.0.8","path-browserify":"^1.0.1",prettier:"^3.5.2",remark:"^15.0.1","remark-frontmatter":"^5.0.0","remark-gfm":"^4.0.1",rimraf:"^6.0.1","start-server-and-test":"^2.0.10","type-fest":"^4.35.0",typedoc:"^0.27.8","typedoc-plugin-markdown":"^4.4.2",typescript:"~5.7.3","unist-util-flatmap":"^1.0.0","unist-util-visit":"^5.0.0",vitepress:"^1.0.2","vitepress-plugin-search":"1.0.4-alpha.22"},files:["dist/","README.md"],publishConfig:{access:"public"}}});var Xze,jze,Wue,que=N(()=>{"use strict";oO();Xze={version:vb.version},jze=o(()=>Xze.version,"getVersion"),Wue={getVersion:jze}});var sa,Vc=N(()=>{"use strict";dr();zt();sa=o(t=>{let{securityLevel:e}=me(),r=Ge("body");if(e==="sandbox"){let a=Ge(`#i${t}`).node()?.contentDocument??document;r=Ge(a.body)}return r.select(`#${t}`)},"selectSvgElement")});var Kze,Yue,Xue=N(()=>{"use strict";vt();Vc();Ei();Kze=o((t,e,r)=>{Y.debug(`rendering info diagram +`+t);let n=sa(e);vn(n,100,400,!0),n.append("g").append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size",32).style("text-anchor","middle").text(`v${r}`)},"draw"),Yue={draw:Kze}});var jue={};hr(jue,{diagram:()=>Qze});var Qze,Kue=N(()=>{"use strict";Hue();que();Xue();Qze={parser:Uue,db:Wue,renderer:Yue}});var Jue,lO,m6,cO,eGe,tGe,rGe,nGe,iGe,aGe,sGe,g6,uO=N(()=>{"use strict";vt();mi();Ya();Jue=or.pie,lO={sections:new Map,showData:!1,config:Jue},m6=lO.sections,cO=lO.showData,eGe=structuredClone(Jue),tGe=o(()=>structuredClone(eGe),"getConfig"),rGe=o(()=>{m6=new Map,cO=lO.showData,Ar()},"clear"),nGe=o(({label:t,value:e})=>{m6.has(t)||(m6.set(t,e),Y.debug(`added new section: ${t}, with value: ${e}`))},"addSection"),iGe=o(()=>m6,"getSections"),aGe=o(t=>{cO=t},"setShowData"),sGe=o(()=>cO,"getShowData"),g6={getConfig:tGe,clear:rGe,setDiagramTitle:$r,getDiagramTitle:Ir,setAccTitle:Lr,getAccTitle:Rr,setAccDescription:Nr,getAccDescription:Mr,addSection:nGe,getSections:iGe,setShowData:aGe,getShowData:sGe}});var oGe,ehe,the=N(()=>{"use strict";kp();vt();T1();uO();oGe=o((t,e)=>{$c(t,e),e.setShowData(t.showData),t.sections.map(e.addSection)},"populateDb"),ehe={parse:o(async t=>{let e=await uo("pie",t);Y.debug(e),oGe(e,g6)},"parse")}});var lGe,rhe,nhe=N(()=>{"use strict";lGe=o(t=>` + .pieCircle{ + stroke: ${t.pieStrokeColor}; + stroke-width : ${t.pieStrokeWidth}; + opacity : ${t.pieOpacity}; + } + .pieOuterCircle{ + stroke: ${t.pieOuterStrokeColor}; + stroke-width: ${t.pieOuterStrokeWidth}; + fill: none; + } + .pieTitleText { + text-anchor: middle; + font-size: ${t.pieTitleTextSize}; + fill: ${t.pieTitleTextColor}; + font-family: ${t.fontFamily}; + } + .slice { + font-family: ${t.fontFamily}; + fill: ${t.pieSectionTextColor}; + font-size:${t.pieSectionTextSize}; + // fill: white; + } + .legend text { + fill: ${t.pieLegendTextColor}; + font-family: ${t.fontFamily}; + font-size: ${t.pieLegendTextSize}; + } +`,"getStyles"),rhe=lGe});var cGe,uGe,ihe,ahe=N(()=>{"use strict";dr();zt();vt();Vc();Ei();ir();cGe=o(t=>{let e=[...t.entries()].map(n=>({label:n[0],value:n[1]})).sort((n,i)=>i.value-n.value);return I5().value(n=>n.value)(e)},"createPieArcs"),uGe=o((t,e,r,n)=>{Y.debug(`rendering pie chart +`+t);let i=n.db,a=me(),s=Fi(i.getConfig(),a.pie),l=40,u=18,h=4,f=450,d=f,p=sa(e),m=p.append("g");m.attr("transform","translate("+d/2+","+f/2+")");let{themeVariables:g}=a,[y]=Bo(g.pieOuterStrokeWidth);y??=2;let v=s.textPosition,x=Math.min(d,f)/2-l,b=bl().innerRadius(0).outerRadius(x),w=bl().innerRadius(x*v).outerRadius(x*v);m.append("circle").attr("cx",0).attr("cy",0).attr("r",x+y/2).attr("class","pieOuterCircle");let C=i.getSections(),T=cGe(C),E=[g.pie1,g.pie2,g.pie3,g.pie4,g.pie5,g.pie6,g.pie7,g.pie8,g.pie9,g.pie10,g.pie11,g.pie12],A=gu(E);m.selectAll("mySlices").data(T).enter().append("path").attr("d",b).attr("fill",k=>A(k.data.label)).attr("class","pieCircle");let S=0;C.forEach(k=>{S+=k}),m.selectAll("mySlices").data(T).enter().append("text").text(k=>(k.data.value/S*100).toFixed(0)+"%").attr("transform",k=>"translate("+w.centroid(k)+")").style("text-anchor","middle").attr("class","slice"),m.append("text").text(i.getDiagramTitle()).attr("x",0).attr("y",-(f-50)/2).attr("class","pieTitleText");let _=m.selectAll(".legend").data(A.domain()).enter().append("g").attr("class","legend").attr("transform",(k,L)=>{let R=u+h,O=R*A.domain().length/2,M=12*u,B=L*R-O;return"translate("+M+","+B+")"});_.append("rect").attr("width",u).attr("height",u).style("fill",A).style("stroke",A),_.data(T).append("text").attr("x",u+h).attr("y",u-h).text(k=>{let{label:L,value:R}=k.data;return i.getShowData()?`${L} [${R}]`:L});let I=Math.max(..._.selectAll("text").nodes().map(k=>k?.getBoundingClientRect().width??0)),D=d+l+u+h+I;p.attr("viewBox",`0 0 ${D} ${f}`),vn(p,f,D,s.useMaxWidth)},"draw"),ihe={draw:uGe}});var she={};hr(she,{diagram:()=>hGe});var hGe,ohe=N(()=>{"use strict";the();uO();nhe();ahe();hGe={parser:ehe,db:g6,renderer:ihe,styles:rhe}});var hO,uhe,hhe=N(()=>{"use strict";hO=function(){var t=o(function(xe,q,pe,ve){for(pe=pe||{},ve=xe.length;ve--;pe[xe[ve]]=q);return pe},"o"),e=[1,3],r=[1,4],n=[1,5],i=[1,6],a=[1,7],s=[1,4,5,10,12,13,14,18,25,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],l=[1,4,5,10,12,13,14,18,25,28,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],u=[55,56,57],h=[2,36],f=[1,37],d=[1,36],p=[1,38],m=[1,35],g=[1,43],y=[1,41],v=[1,14],x=[1,23],b=[1,18],w=[1,19],C=[1,20],T=[1,21],E=[1,22],A=[1,24],S=[1,25],_=[1,26],I=[1,27],D=[1,28],k=[1,29],L=[1,32],R=[1,33],O=[1,34],M=[1,39],B=[1,40],F=[1,42],P=[1,44],z=[1,62],$=[1,61],H=[4,5,8,10,12,13,14,18,44,47,49,55,56,57,63,64,65,66,67],Q=[1,65],j=[1,66],ie=[1,67],ne=[1,68],le=[1,69],he=[1,70],K=[1,71],X=[1,72],te=[1,73],J=[1,74],se=[1,75],ue=[1,76],Z=[4,5,6,7,8,9,10,11,12,13,14,15,18],Se=[1,90],ce=[1,91],ae=[1,92],Oe=[1,99],ge=[1,93],ze=[1,96],He=[1,94],$e=[1,95],Re=[1,97],Ie=[1,98],be=[1,102],W=[10,55,56,57],de=[4,5,6,8,10,11,13,17,18,19,20,55,56,57],re={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,idStringToken:3,ALPHA:4,NUM:5,NODE_STRING:6,DOWN:7,MINUS:8,DEFAULT:9,COMMA:10,COLON:11,AMP:12,BRKT:13,MULT:14,UNICODE_TEXT:15,styleComponent:16,UNIT:17,SPACE:18,STYLE:19,PCT:20,idString:21,style:22,stylesOpt:23,classDefStatement:24,CLASSDEF:25,start:26,eol:27,QUADRANT:28,document:29,line:30,statement:31,axisDetails:32,quadrantDetails:33,points:34,title:35,title_value:36,acc_title:37,acc_title_value:38,acc_descr:39,acc_descr_value:40,acc_descr_multiline_value:41,section:42,text:43,point_start:44,point_x:45,point_y:46,class_name:47,"X-AXIS":48,"AXIS-TEXT-DELIMITER":49,"Y-AXIS":50,QUADRANT_1:51,QUADRANT_2:52,QUADRANT_3:53,QUADRANT_4:54,NEWLINE:55,SEMI:56,EOF:57,alphaNumToken:58,textNoTagsToken:59,STR:60,MD_STR:61,alphaNum:62,PUNCTUATION:63,PLUS:64,EQUALS:65,DOT:66,UNDERSCORE:67,$accept:0,$end:1},terminals_:{2:"error",4:"ALPHA",5:"NUM",6:"NODE_STRING",7:"DOWN",8:"MINUS",9:"DEFAULT",10:"COMMA",11:"COLON",12:"AMP",13:"BRKT",14:"MULT",15:"UNICODE_TEXT",17:"UNIT",18:"SPACE",19:"STYLE",20:"PCT",25:"CLASSDEF",28:"QUADRANT",35:"title",36:"title_value",37:"acc_title",38:"acc_title_value",39:"acc_descr",40:"acc_descr_value",41:"acc_descr_multiline_value",42:"section",44:"point_start",45:"point_x",46:"point_y",47:"class_name",48:"X-AXIS",49:"AXIS-TEXT-DELIMITER",50:"Y-AXIS",51:"QUADRANT_1",52:"QUADRANT_2",53:"QUADRANT_3",54:"QUADRANT_4",55:"NEWLINE",56:"SEMI",57:"EOF",60:"STR",61:"MD_STR",63:"PUNCTUATION",64:"PLUS",65:"EQUALS",66:"DOT",67:"UNDERSCORE"},productions_:[0,[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[21,1],[21,2],[22,1],[22,2],[23,1],[23,3],[24,5],[26,2],[26,2],[26,2],[29,0],[29,2],[30,2],[31,0],[31,1],[31,2],[31,1],[31,1],[31,1],[31,2],[31,2],[31,2],[31,1],[31,1],[34,4],[34,5],[34,5],[34,6],[32,4],[32,3],[32,2],[32,4],[32,3],[32,2],[33,2],[33,2],[33,2],[33,2],[27,1],[27,1],[27,1],[43,1],[43,2],[43,1],[43,1],[62,1],[62,2],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[59,1],[59,1],[59,1]],performAction:o(function(q,pe,ve,Pe,_e,we,Ve){var De=we.length-1;switch(_e){case 23:this.$=we[De];break;case 24:this.$=we[De-1]+""+we[De];break;case 26:this.$=we[De-1]+we[De];break;case 27:this.$=[we[De].trim()];break;case 28:we[De-2].push(we[De].trim()),this.$=we[De-2];break;case 29:this.$=we[De-4],Pe.addClass(we[De-2],we[De]);break;case 37:this.$=[];break;case 42:this.$=we[De].trim(),Pe.setDiagramTitle(this.$);break;case 43:this.$=we[De].trim(),Pe.setAccTitle(this.$);break;case 44:case 45:this.$=we[De].trim(),Pe.setAccDescription(this.$);break;case 46:Pe.addSection(we[De].substr(8)),this.$=we[De].substr(8);break;case 47:Pe.addPoint(we[De-3],"",we[De-1],we[De],[]);break;case 48:Pe.addPoint(we[De-4],we[De-3],we[De-1],we[De],[]);break;case 49:Pe.addPoint(we[De-4],"",we[De-2],we[De-1],we[De]);break;case 50:Pe.addPoint(we[De-5],we[De-4],we[De-2],we[De-1],we[De]);break;case 51:Pe.setXAxisLeftText(we[De-2]),Pe.setXAxisRightText(we[De]);break;case 52:we[De-1].text+=" \u27F6 ",Pe.setXAxisLeftText(we[De-1]);break;case 53:Pe.setXAxisLeftText(we[De]);break;case 54:Pe.setYAxisBottomText(we[De-2]),Pe.setYAxisTopText(we[De]);break;case 55:we[De-1].text+=" \u27F6 ",Pe.setYAxisBottomText(we[De-1]);break;case 56:Pe.setYAxisBottomText(we[De]);break;case 57:Pe.setQuadrant1Text(we[De]);break;case 58:Pe.setQuadrant2Text(we[De]);break;case 59:Pe.setQuadrant3Text(we[De]);break;case 60:Pe.setQuadrant4Text(we[De]);break;case 64:this.$={text:we[De],type:"text"};break;case 65:this.$={text:we[De-1].text+""+we[De],type:we[De-1].type};break;case 66:this.$={text:we[De],type:"text"};break;case 67:this.$={text:we[De],type:"markdown"};break;case 68:this.$=we[De];break;case 69:this.$=we[De-1]+""+we[De];break}},"anonymous"),table:[{18:e,26:1,27:2,28:r,55:n,56:i,57:a},{1:[3]},{18:e,26:8,27:2,28:r,55:n,56:i,57:a},{18:e,26:9,27:2,28:r,55:n,56:i,57:a},t(s,[2,33],{29:10}),t(l,[2,61]),t(l,[2,62]),t(l,[2,63]),{1:[2,30]},{1:[2,31]},t(u,h,{30:11,31:12,24:13,32:15,33:16,34:17,43:30,58:31,1:[2,32],4:f,5:d,10:p,12:m,13:g,14:y,18:v,25:x,35:b,37:w,39:C,41:T,42:E,48:A,50:S,51:_,52:I,53:D,54:k,60:L,61:R,63:O,64:M,65:B,66:F,67:P}),t(s,[2,34]),{27:45,55:n,56:i,57:a},t(u,[2,37]),t(u,h,{24:13,32:15,33:16,34:17,43:30,58:31,31:46,4:f,5:d,10:p,12:m,13:g,14:y,18:v,25:x,35:b,37:w,39:C,41:T,42:E,48:A,50:S,51:_,52:I,53:D,54:k,60:L,61:R,63:O,64:M,65:B,66:F,67:P}),t(u,[2,39]),t(u,[2,40]),t(u,[2,41]),{36:[1,47]},{38:[1,48]},{40:[1,49]},t(u,[2,45]),t(u,[2,46]),{18:[1,50]},{4:f,5:d,10:p,12:m,13:g,14:y,43:51,58:31,60:L,61:R,63:O,64:M,65:B,66:F,67:P},{4:f,5:d,10:p,12:m,13:g,14:y,43:52,58:31,60:L,61:R,63:O,64:M,65:B,66:F,67:P},{4:f,5:d,10:p,12:m,13:g,14:y,43:53,58:31,60:L,61:R,63:O,64:M,65:B,66:F,67:P},{4:f,5:d,10:p,12:m,13:g,14:y,43:54,58:31,60:L,61:R,63:O,64:M,65:B,66:F,67:P},{4:f,5:d,10:p,12:m,13:g,14:y,43:55,58:31,60:L,61:R,63:O,64:M,65:B,66:F,67:P},{4:f,5:d,10:p,12:m,13:g,14:y,43:56,58:31,60:L,61:R,63:O,64:M,65:B,66:F,67:P},{4:f,5:d,8:z,10:p,12:m,13:g,14:y,18:$,44:[1,57],47:[1,58],58:60,59:59,63:O,64:M,65:B,66:F,67:P},t(H,[2,64]),t(H,[2,66]),t(H,[2,67]),t(H,[2,70]),t(H,[2,71]),t(H,[2,72]),t(H,[2,73]),t(H,[2,74]),t(H,[2,75]),t(H,[2,76]),t(H,[2,77]),t(H,[2,78]),t(H,[2,79]),t(H,[2,80]),t(s,[2,35]),t(u,[2,38]),t(u,[2,42]),t(u,[2,43]),t(u,[2,44]),{3:64,4:Q,5:j,6:ie,7:ne,8:le,9:he,10:K,11:X,12:te,13:J,14:se,15:ue,21:63},t(u,[2,53],{59:59,58:60,4:f,5:d,8:z,10:p,12:m,13:g,14:y,18:$,49:[1,77],63:O,64:M,65:B,66:F,67:P}),t(u,[2,56],{59:59,58:60,4:f,5:d,8:z,10:p,12:m,13:g,14:y,18:$,49:[1,78],63:O,64:M,65:B,66:F,67:P}),t(u,[2,57],{59:59,58:60,4:f,5:d,8:z,10:p,12:m,13:g,14:y,18:$,63:O,64:M,65:B,66:F,67:P}),t(u,[2,58],{59:59,58:60,4:f,5:d,8:z,10:p,12:m,13:g,14:y,18:$,63:O,64:M,65:B,66:F,67:P}),t(u,[2,59],{59:59,58:60,4:f,5:d,8:z,10:p,12:m,13:g,14:y,18:$,63:O,64:M,65:B,66:F,67:P}),t(u,[2,60],{59:59,58:60,4:f,5:d,8:z,10:p,12:m,13:g,14:y,18:$,63:O,64:M,65:B,66:F,67:P}),{45:[1,79]},{44:[1,80]},t(H,[2,65]),t(H,[2,81]),t(H,[2,82]),t(H,[2,83]),{3:82,4:Q,5:j,6:ie,7:ne,8:le,9:he,10:K,11:X,12:te,13:J,14:se,15:ue,18:[1,81]},t(Z,[2,23]),t(Z,[2,1]),t(Z,[2,2]),t(Z,[2,3]),t(Z,[2,4]),t(Z,[2,5]),t(Z,[2,6]),t(Z,[2,7]),t(Z,[2,8]),t(Z,[2,9]),t(Z,[2,10]),t(Z,[2,11]),t(Z,[2,12]),t(u,[2,52],{58:31,43:83,4:f,5:d,10:p,12:m,13:g,14:y,60:L,61:R,63:O,64:M,65:B,66:F,67:P}),t(u,[2,55],{58:31,43:84,4:f,5:d,10:p,12:m,13:g,14:y,60:L,61:R,63:O,64:M,65:B,66:F,67:P}),{46:[1,85]},{45:[1,86]},{4:Se,5:ce,6:ae,8:Oe,11:ge,13:ze,16:89,17:He,18:$e,19:Re,20:Ie,22:88,23:87},t(Z,[2,24]),t(u,[2,51],{59:59,58:60,4:f,5:d,8:z,10:p,12:m,13:g,14:y,18:$,63:O,64:M,65:B,66:F,67:P}),t(u,[2,54],{59:59,58:60,4:f,5:d,8:z,10:p,12:m,13:g,14:y,18:$,63:O,64:M,65:B,66:F,67:P}),t(u,[2,47],{22:88,16:89,23:100,4:Se,5:ce,6:ae,8:Oe,11:ge,13:ze,17:He,18:$e,19:Re,20:Ie}),{46:[1,101]},t(u,[2,29],{10:be}),t(W,[2,27],{16:103,4:Se,5:ce,6:ae,8:Oe,11:ge,13:ze,17:He,18:$e,19:Re,20:Ie}),t(de,[2,25]),t(de,[2,13]),t(de,[2,14]),t(de,[2,15]),t(de,[2,16]),t(de,[2,17]),t(de,[2,18]),t(de,[2,19]),t(de,[2,20]),t(de,[2,21]),t(de,[2,22]),t(u,[2,49],{10:be}),t(u,[2,48],{22:88,16:89,23:104,4:Se,5:ce,6:ae,8:Oe,11:ge,13:ze,17:He,18:$e,19:Re,20:Ie}),{4:Se,5:ce,6:ae,8:Oe,11:ge,13:ze,16:89,17:He,18:$e,19:Re,20:Ie,22:105},t(de,[2,26]),t(u,[2,50],{10:be}),t(W,[2,28],{16:103,4:Se,5:ce,6:ae,8:Oe,11:ge,13:ze,17:He,18:$e,19:Re,20:Ie})],defaultActions:{8:[2,30],9:[2,31]},parseError:o(function(q,pe){if(pe.recoverable)this.trace(q);else{var ve=new Error(q);throw ve.hash=pe,ve}},"parseError"),parse:o(function(q){var pe=this,ve=[0],Pe=[],_e=[null],we=[],Ve=this.table,De="",qe=0,at=0,Rt=0,st=2,Ue=1,ct=we.slice.call(arguments,1),We=Object.create(this.lexer),ot={yy:{}};for(var Yt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Yt)&&(ot.yy[Yt]=this.yy[Yt]);We.setInput(q,ot.yy),ot.yy.lexer=We,ot.yy.parser=this,typeof We.yylloc>"u"&&(We.yylloc={});var bt=We.yylloc;we.push(bt);var Mt=We.options&&We.options.ranges;typeof ot.yy.parseError=="function"?this.parseError=ot.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function xt(Ce){ve.length=ve.length-2*Ce,_e.length=_e.length-Ce,we.length=we.length-Ce}o(xt,"popStack");function ut(){var Ce;return Ce=Pe.pop()||We.lex()||Ue,typeof Ce!="number"&&(Ce instanceof Array&&(Pe=Ce,Ce=Pe.pop()),Ce=pe.symbols_[Ce]||Ce),Ce}o(ut,"lex");for(var Et,ft,yt,nt,dn,Tt,On={},tn,_r,Dr,Pn;;){if(yt=ve[ve.length-1],this.defaultActions[yt]?nt=this.defaultActions[yt]:((Et===null||typeof Et>"u")&&(Et=ut()),nt=Ve[yt]&&Ve[yt][Et]),typeof nt>"u"||!nt.length||!nt[0]){var At="";Pn=[];for(tn in Ve[yt])this.terminals_[tn]&&tn>st&&Pn.push("'"+this.terminals_[tn]+"'");We.showPosition?At="Parse error on line "+(qe+1)+`: +`+We.showPosition()+` +Expecting `+Pn.join(", ")+", got '"+(this.terminals_[Et]||Et)+"'":At="Parse error on line "+(qe+1)+": Unexpected "+(Et==Ue?"end of input":"'"+(this.terminals_[Et]||Et)+"'"),this.parseError(At,{text:We.match,token:this.terminals_[Et]||Et,line:We.yylineno,loc:bt,expected:Pn})}if(nt[0]instanceof Array&&nt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+yt+", token: "+Et);switch(nt[0]){case 1:ve.push(Et),_e.push(We.yytext),we.push(We.yylloc),ve.push(nt[1]),Et=null,ft?(Et=ft,ft=null):(at=We.yyleng,De=We.yytext,qe=We.yylineno,bt=We.yylloc,Rt>0&&Rt--);break;case 2:if(_r=this.productions_[nt[1]][1],On.$=_e[_e.length-_r],On._$={first_line:we[we.length-(_r||1)].first_line,last_line:we[we.length-1].last_line,first_column:we[we.length-(_r||1)].first_column,last_column:we[we.length-1].last_column},Mt&&(On._$.range=[we[we.length-(_r||1)].range[0],we[we.length-1].range[1]]),Tt=this.performAction.apply(On,[De,at,qe,ot.yy,nt[1],_e,we].concat(ct)),typeof Tt<"u")return Tt;_r&&(ve=ve.slice(0,-1*_r*2),_e=_e.slice(0,-1*_r),we=we.slice(0,-1*_r)),ve.push(this.productions_[nt[1]][0]),_e.push(On.$),we.push(On._$),Dr=Ve[ve[ve.length-2]][ve[ve.length-1]],ve.push(Dr);break;case 3:return!0}}return!0},"parse")},oe=function(){var xe={EOF:1,parseError:o(function(pe,ve){if(this.yy.parser)this.yy.parser.parseError(pe,ve);else throw new Error(pe)},"parseError"),setInput:o(function(q,pe){return this.yy=pe||this.yy||{},this._input=q,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var q=this._input[0];this.yytext+=q,this.yyleng++,this.offset++,this.match+=q,this.matched+=q;var pe=q.match(/(?:\r\n?|\n).*/g);return pe?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),q},"input"),unput:o(function(q){var pe=q.length,ve=q.split(/(?:\r\n?|\n)/g);this._input=q+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-pe),this.offset-=pe;var Pe=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),ve.length-1&&(this.yylineno-=ve.length-1);var _e=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:ve?(ve.length===Pe.length?this.yylloc.first_column:0)+Pe[Pe.length-ve.length].length-ve[0].length:this.yylloc.first_column-pe},this.options.ranges&&(this.yylloc.range=[_e[0],_e[0]+this.yyleng-pe]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(q){this.unput(this.match.slice(q))},"less"),pastInput:o(function(){var q=this.matched.substr(0,this.matched.length-this.match.length);return(q.length>20?"...":"")+q.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var q=this.match;return q.length<20&&(q+=this._input.substr(0,20-q.length)),(q.substr(0,20)+(q.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var q=this.pastInput(),pe=new Array(q.length+1).join("-");return q+this.upcomingInput()+` +`+pe+"^"},"showPosition"),test_match:o(function(q,pe){var ve,Pe,_e;if(this.options.backtrack_lexer&&(_e={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(_e.yylloc.range=this.yylloc.range.slice(0))),Pe=q[0].match(/(?:\r\n?|\n).*/g),Pe&&(this.yylineno+=Pe.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Pe?Pe[Pe.length-1].length-Pe[Pe.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+q[0].length},this.yytext+=q[0],this.match+=q[0],this.matches=q,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(q[0].length),this.matched+=q[0],ve=this.performAction.call(this,this.yy,this,pe,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ve)return ve;if(this._backtrack){for(var we in _e)this[we]=_e[we];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var q,pe,ve,Pe;this._more||(this.yytext="",this.match="");for(var _e=this._currentRules(),we=0;we<_e.length;we++)if(ve=this._input.match(this.rules[_e[we]]),ve&&(!pe||ve[0].length>pe[0].length)){if(pe=ve,Pe=we,this.options.backtrack_lexer){if(q=this.test_match(ve,_e[we]),q!==!1)return q;if(this._backtrack){pe=!1;continue}else return!1}else if(!this.options.flex)break}return pe?(q=this.test_match(pe,_e[Pe]),q!==!1?q:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var pe=this.next();return pe||this.lex()},"lex"),begin:o(function(pe){this.conditionStack.push(pe)},"begin"),popState:o(function(){var pe=this.conditionStack.length-1;return pe>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(pe){return pe=this.conditionStack.length-1-Math.abs(pe||0),pe>=0?this.conditionStack[pe]:"INITIAL"},"topState"),pushState:o(function(pe){this.begin(pe)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(pe,ve,Pe,_e){var we=_e;switch(Pe){case 0:break;case 1:break;case 2:return 55;case 3:break;case 4:return this.begin("title"),35;break;case 5:return this.popState(),"title_value";break;case 6:return this.begin("acc_title"),37;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),39;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 48;case 14:return 50;case 15:return 49;case 16:return 51;case 17:return 52;case 18:return 53;case 19:return 54;case 20:return 25;case 21:this.begin("md_string");break;case 22:return"MD_STR";case 23:this.popState();break;case 24:this.begin("string");break;case 25:this.popState();break;case 26:return"STR";case 27:this.begin("class_name");break;case 28:return this.popState(),47;break;case 29:return this.begin("point_start"),44;break;case 30:return this.begin("point_x"),45;break;case 31:this.popState();break;case 32:this.popState(),this.begin("point_y");break;case 33:return this.popState(),46;break;case 34:return 28;case 35:return 4;case 36:return 11;case 37:return 64;case 38:return 10;case 39:return 65;case 40:return 65;case 41:return 14;case 42:return 13;case 43:return 67;case 44:return 66;case 45:return 12;case 46:return 8;case 47:return 5;case 48:return 18;case 49:return 56;case 50:return 63;case 51:return 57}},"anonymous"),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?: *x-axis *)/i,/^(?: *y-axis *)/i,/^(?: *--+> *)/i,/^(?: *quadrant-1 *)/i,/^(?: *quadrant-2 *)/i,/^(?: *quadrant-3 *)/i,/^(?: *quadrant-4 *)/i,/^(?:classDef\b)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?::::)/i,/^(?:^\w+)/i,/^(?:\s*:\s*\[\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?:\s*\] *)/i,/^(?:\s*,\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?: *quadrantChart *)/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s)/i,/^(?:;)/i,/^(?:[!"#$%&'*+,-.`?\\_/])/i,/^(?:$)/i],conditions:{class_name:{rules:[28],inclusive:!1},point_y:{rules:[33],inclusive:!1},point_x:{rules:[32],inclusive:!1},point_start:{rules:[30,31],inclusive:!1},acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},title:{rules:[5],inclusive:!1},md_string:{rules:[22,23],inclusive:!1},string:{rules:[25,26],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,6,8,10,13,14,15,16,17,18,19,20,21,24,27,29,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51],inclusive:!0}}};return xe}();re.lexer=oe;function V(){this.yy={}}return o(V,"Parser"),V.prototype=re,re.Parser=V,new V}();hO.parser=hO;uhe=hO});var ms,y6,fhe=N(()=>{"use strict";dr();Ya();vt();_y();ms=oh(),y6=class{constructor(){this.classes=new Map;this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData()}static{o(this,"QuadrantBuilder")}getDefaultData(){return{titleText:"",quadrant1Text:"",quadrant2Text:"",quadrant3Text:"",quadrant4Text:"",xAxisLeftText:"",xAxisRightText:"",yAxisBottomText:"",yAxisTopText:"",points:[]}}getDefaultConfig(){return{showXAxis:!0,showYAxis:!0,showTitle:!0,chartHeight:or.quadrantChart?.chartWidth||500,chartWidth:or.quadrantChart?.chartHeight||500,titlePadding:or.quadrantChart?.titlePadding||10,titleFontSize:or.quadrantChart?.titleFontSize||20,quadrantPadding:or.quadrantChart?.quadrantPadding||5,xAxisLabelPadding:or.quadrantChart?.xAxisLabelPadding||5,yAxisLabelPadding:or.quadrantChart?.yAxisLabelPadding||5,xAxisLabelFontSize:or.quadrantChart?.xAxisLabelFontSize||16,yAxisLabelFontSize:or.quadrantChart?.yAxisLabelFontSize||16,quadrantLabelFontSize:or.quadrantChart?.quadrantLabelFontSize||16,quadrantTextTopPadding:or.quadrantChart?.quadrantTextTopPadding||5,pointTextPadding:or.quadrantChart?.pointTextPadding||5,pointLabelFontSize:or.quadrantChart?.pointLabelFontSize||12,pointRadius:or.quadrantChart?.pointRadius||5,xAxisPosition:or.quadrantChart?.xAxisPosition||"top",yAxisPosition:or.quadrantChart?.yAxisPosition||"left",quadrantInternalBorderStrokeWidth:or.quadrantChart?.quadrantInternalBorderStrokeWidth||1,quadrantExternalBorderStrokeWidth:or.quadrantChart?.quadrantExternalBorderStrokeWidth||2}}getDefaultThemeConfig(){return{quadrant1Fill:ms.quadrant1Fill,quadrant2Fill:ms.quadrant2Fill,quadrant3Fill:ms.quadrant3Fill,quadrant4Fill:ms.quadrant4Fill,quadrant1TextFill:ms.quadrant1TextFill,quadrant2TextFill:ms.quadrant2TextFill,quadrant3TextFill:ms.quadrant3TextFill,quadrant4TextFill:ms.quadrant4TextFill,quadrantPointFill:ms.quadrantPointFill,quadrantPointTextFill:ms.quadrantPointTextFill,quadrantXAxisTextFill:ms.quadrantXAxisTextFill,quadrantYAxisTextFill:ms.quadrantYAxisTextFill,quadrantTitleFill:ms.quadrantTitleFill,quadrantInternalBorderStrokeFill:ms.quadrantInternalBorderStrokeFill,quadrantExternalBorderStrokeFill:ms.quadrantExternalBorderStrokeFill}}clear(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData(),this.classes=new Map,Y.info("clear called")}setData(e){this.data={...this.data,...e}}addPoints(e){this.data.points=[...e,...this.data.points]}addClass(e,r){this.classes.set(e,r)}setConfig(e){Y.trace("setConfig called with: ",e),this.config={...this.config,...e}}setThemeConfig(e){Y.trace("setThemeConfig called with: ",e),this.themeConfig={...this.themeConfig,...e}}calculateSpace(e,r,n,i){let a=this.config.xAxisLabelPadding*2+this.config.xAxisLabelFontSize,s={top:e==="top"&&r?a:0,bottom:e==="bottom"&&r?a:0},l=this.config.yAxisLabelPadding*2+this.config.yAxisLabelFontSize,u={left:this.config.yAxisPosition==="left"&&n?l:0,right:this.config.yAxisPosition==="right"&&n?l:0},h=this.config.titleFontSize+this.config.titlePadding*2,f={top:i?h:0},d=this.config.quadrantPadding+u.left,p=this.config.quadrantPadding+s.top+f.top,m=this.config.chartWidth-this.config.quadrantPadding*2-u.left-u.right,g=this.config.chartHeight-this.config.quadrantPadding*2-s.top-s.bottom-f.top,y=m/2,v=g/2;return{xAxisSpace:s,yAxisSpace:u,titleSpace:f,quadrantSpace:{quadrantLeft:d,quadrantTop:p,quadrantWidth:m,quadrantHalfWidth:y,quadrantHeight:g,quadrantHalfHeight:v}}}getAxisLabels(e,r,n,i){let{quadrantSpace:a,titleSpace:s}=i,{quadrantHalfHeight:l,quadrantHeight:u,quadrantLeft:h,quadrantHalfWidth:f,quadrantTop:d,quadrantWidth:p}=a,m=!!this.data.xAxisRightText,g=!!this.data.yAxisTopText,y=[];return this.data.xAxisLeftText&&r&&y.push({text:this.data.xAxisLeftText,fill:this.themeConfig.quadrantXAxisTextFill,x:h+(m?f/2:0),y:e==="top"?this.config.xAxisLabelPadding+s.top:this.config.xAxisLabelPadding+d+u+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:m?"center":"left",horizontalPos:"top",rotation:0}),this.data.xAxisRightText&&r&&y.push({text:this.data.xAxisRightText,fill:this.themeConfig.quadrantXAxisTextFill,x:h+f+(m?f/2:0),y:e==="top"?this.config.xAxisLabelPadding+s.top:this.config.xAxisLabelPadding+d+u+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:m?"center":"left",horizontalPos:"top",rotation:0}),this.data.yAxisBottomText&&n&&y.push({text:this.data.yAxisBottomText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+h+p+this.config.quadrantPadding,y:d+u-(g?l/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:g?"center":"left",horizontalPos:"top",rotation:-90}),this.data.yAxisTopText&&n&&y.push({text:this.data.yAxisTopText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+h+p+this.config.quadrantPadding,y:d+l-(g?l/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:g?"center":"left",horizontalPos:"top",rotation:-90}),y}getQuadrants(e){let{quadrantSpace:r}=e,{quadrantHalfHeight:n,quadrantLeft:i,quadrantHalfWidth:a,quadrantTop:s}=r,l=[{text:{text:this.data.quadrant1Text,fill:this.themeConfig.quadrant1TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:i+a,y:s,width:a,height:n,fill:this.themeConfig.quadrant1Fill},{text:{text:this.data.quadrant2Text,fill:this.themeConfig.quadrant2TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:i,y:s,width:a,height:n,fill:this.themeConfig.quadrant2Fill},{text:{text:this.data.quadrant3Text,fill:this.themeConfig.quadrant3TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:i,y:s+n,width:a,height:n,fill:this.themeConfig.quadrant3Fill},{text:{text:this.data.quadrant4Text,fill:this.themeConfig.quadrant4TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:i+a,y:s+n,width:a,height:n,fill:this.themeConfig.quadrant4Fill}];for(let u of l)u.text.x=u.x+u.width/2,this.data.points.length===0?(u.text.y=u.y+u.height/2,u.text.horizontalPos="middle"):(u.text.y=u.y+this.config.quadrantTextTopPadding,u.text.horizontalPos="top");return l}getQuadrantPoints(e){let{quadrantSpace:r}=e,{quadrantHeight:n,quadrantLeft:i,quadrantTop:a,quadrantWidth:s}=r,l=gl().domain([0,1]).range([i,s+i]),u=gl().domain([0,1]).range([n+a,a]);return this.data.points.map(f=>{let d=this.classes.get(f.className);return d&&(f={...d,...f}),{x:l(f.x),y:u(f.y),fill:f.color??this.themeConfig.quadrantPointFill,radius:f.radius??this.config.pointRadius,text:{text:f.text,fill:this.themeConfig.quadrantPointTextFill,x:l(f.x),y:u(f.y)+this.config.pointTextPadding,verticalPos:"center",horizontalPos:"top",fontSize:this.config.pointLabelFontSize,rotation:0},strokeColor:f.strokeColor??this.themeConfig.quadrantPointFill,strokeWidth:f.strokeWidth??"0px"}})}getBorders(e){let r=this.config.quadrantExternalBorderStrokeWidth/2,{quadrantSpace:n}=e,{quadrantHalfHeight:i,quadrantHeight:a,quadrantLeft:s,quadrantHalfWidth:l,quadrantTop:u,quadrantWidth:h}=n;return[{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s-r,y1:u,x2:s+h+r,y2:u},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s+h,y1:u+r,x2:s+h,y2:u+a-r},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s-r,y1:u+a,x2:s+h+r,y2:u+a},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s,y1:u+r,x2:s,y2:u+a-r},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:s+l,y1:u+r,x2:s+l,y2:u+a-r},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:s+r,y1:u+i,x2:s+h-r,y2:u+i}]}getTitle(e){if(e)return{text:this.data.titleText,fill:this.themeConfig.quadrantTitleFill,fontSize:this.config.titleFontSize,horizontalPos:"top",verticalPos:"center",rotation:0,y:this.config.titlePadding,x:this.config.chartWidth/2}}build(){let e=this.config.showXAxis&&!!(this.data.xAxisLeftText||this.data.xAxisRightText),r=this.config.showYAxis&&!!(this.data.yAxisTopText||this.data.yAxisBottomText),n=this.config.showTitle&&!!this.data.titleText,i=this.data.points.length>0?"bottom":this.config.xAxisPosition,a=this.calculateSpace(i,e,r,n);return{points:this.getQuadrantPoints(a),quadrants:this.getQuadrants(a),axisLabels:this.getAxisLabels(i,e,r,a),borderLines:this.getBorders(a),title:this.getTitle(n)}}}});function fO(t){return!/^#?([\dA-Fa-f]{6}|[\dA-Fa-f]{3})$/.test(t)}function dhe(t){return!/^\d+$/.test(t)}function phe(t){return!/^\d+px$/.test(t)}var Ap,mhe=N(()=>{"use strict";Ap=class extends Error{static{o(this,"InvalidStyleError")}constructor(e,r,n){super(`value for ${e} ${r} is invalid, please use a valid ${n}`),this.name="InvalidStyleError"}};o(fO,"validateHexCode");o(dhe,"validateNumber");o(phe,"validateSizeInPixels")});function Xu(t){return Tr(t.trim(),pGe)}function mGe(t){ba.setData({quadrant1Text:Xu(t.text)})}function gGe(t){ba.setData({quadrant2Text:Xu(t.text)})}function yGe(t){ba.setData({quadrant3Text:Xu(t.text)})}function vGe(t){ba.setData({quadrant4Text:Xu(t.text)})}function xGe(t){ba.setData({xAxisLeftText:Xu(t.text)})}function bGe(t){ba.setData({xAxisRightText:Xu(t.text)})}function wGe(t){ba.setData({yAxisTopText:Xu(t.text)})}function TGe(t){ba.setData({yAxisBottomText:Xu(t.text)})}function dO(t){let e={};for(let r of t){let[n,i]=r.trim().split(/\s*:\s*/);if(n==="radius"){if(dhe(i))throw new Ap(n,i,"number");e.radius=parseInt(i)}else if(n==="color"){if(fO(i))throw new Ap(n,i,"hex code");e.color=i}else if(n==="stroke-color"){if(fO(i))throw new Ap(n,i,"hex code");e.strokeColor=i}else if(n==="stroke-width"){if(phe(i))throw new Ap(n,i,"number of pixels (eg. 10px)");e.strokeWidth=i}else throw new Error(`style named ${n} is not supported.`)}return e}function kGe(t,e,r,n,i){let a=dO(i);ba.addPoints([{x:r,y:n,text:Xu(t.text),className:e,...a}])}function EGe(t,e){ba.addClass(t,dO(e))}function SGe(t){ba.setConfig({chartWidth:t})}function CGe(t){ba.setConfig({chartHeight:t})}function AGe(){let t=me(),{themeVariables:e,quadrantChart:r}=t;return r&&ba.setConfig(r),ba.setThemeConfig({quadrant1Fill:e.quadrant1Fill,quadrant2Fill:e.quadrant2Fill,quadrant3Fill:e.quadrant3Fill,quadrant4Fill:e.quadrant4Fill,quadrant1TextFill:e.quadrant1TextFill,quadrant2TextFill:e.quadrant2TextFill,quadrant3TextFill:e.quadrant3TextFill,quadrant4TextFill:e.quadrant4TextFill,quadrantPointFill:e.quadrantPointFill,quadrantPointTextFill:e.quadrantPointTextFill,quadrantXAxisTextFill:e.quadrantXAxisTextFill,quadrantYAxisTextFill:e.quadrantYAxisTextFill,quadrantExternalBorderStrokeFill:e.quadrantExternalBorderStrokeFill,quadrantInternalBorderStrokeFill:e.quadrantInternalBorderStrokeFill,quadrantTitleFill:e.quadrantTitleFill}),ba.setData({titleText:Ir()}),ba.build()}var pGe,ba,_Ge,ghe,yhe=N(()=>{"use strict";zt();gr();mi();fhe();mhe();pGe=me();o(Xu,"textSanitizer");ba=new y6;o(mGe,"setQuadrant1Text");o(gGe,"setQuadrant2Text");o(yGe,"setQuadrant3Text");o(vGe,"setQuadrant4Text");o(xGe,"setXAxisLeftText");o(bGe,"setXAxisRightText");o(wGe,"setYAxisTopText");o(TGe,"setYAxisBottomText");o(dO,"parseStyles");o(kGe,"addPoint");o(EGe,"addClass");o(SGe,"setWidth");o(CGe,"setHeight");o(AGe,"getQuadrantData");_Ge=o(function(){ba.clear(),Ar()},"clear"),ghe={setWidth:SGe,setHeight:CGe,setQuadrant1Text:mGe,setQuadrant2Text:gGe,setQuadrant3Text:yGe,setQuadrant4Text:vGe,setXAxisLeftText:xGe,setXAxisRightText:bGe,setYAxisTopText:wGe,setYAxisBottomText:TGe,parseStyles:dO,addPoint:kGe,addClass:EGe,getQuadrantData:AGe,clear:_Ge,setAccTitle:Lr,getAccTitle:Rr,setDiagramTitle:$r,getDiagramTitle:Ir,getAccDescription:Mr,setAccDescription:Nr}});var DGe,vhe,xhe=N(()=>{"use strict";dr();zt();vt();Ei();DGe=o((t,e,r,n)=>{function i(S){return S==="top"?"hanging":"middle"}o(i,"getDominantBaseLine");function a(S){return S==="left"?"start":"middle"}o(a,"getTextAnchor");function s(S){return`translate(${S.x}, ${S.y}) rotate(${S.rotation||0})`}o(s,"getTransformation");let l=me();Y.debug(`Rendering quadrant chart +`+t);let u=l.securityLevel,h;u==="sandbox"&&(h=Ge("#i"+e));let d=(u==="sandbox"?Ge(h.nodes()[0].contentDocument.body):Ge("body")).select(`[id="${e}"]`),p=d.append("g").attr("class","main"),m=l.quadrantChart?.chartWidth??500,g=l.quadrantChart?.chartHeight??500;vn(d,g,m,l.quadrantChart?.useMaxWidth??!0),d.attr("viewBox","0 0 "+m+" "+g),n.db.setHeight(g),n.db.setWidth(m);let y=n.db.getQuadrantData(),v=p.append("g").attr("class","quadrants"),x=p.append("g").attr("class","border"),b=p.append("g").attr("class","data-points"),w=p.append("g").attr("class","labels"),C=p.append("g").attr("class","title");y.title&&C.append("text").attr("x",0).attr("y",0).attr("fill",y.title.fill).attr("font-size",y.title.fontSize).attr("dominant-baseline",i(y.title.horizontalPos)).attr("text-anchor",a(y.title.verticalPos)).attr("transform",s(y.title)).text(y.title.text),y.borderLines&&x.selectAll("line").data(y.borderLines).enter().append("line").attr("x1",S=>S.x1).attr("y1",S=>S.y1).attr("x2",S=>S.x2).attr("y2",S=>S.y2).style("stroke",S=>S.strokeFill).style("stroke-width",S=>S.strokeWidth);let T=v.selectAll("g.quadrant").data(y.quadrants).enter().append("g").attr("class","quadrant");T.append("rect").attr("x",S=>S.x).attr("y",S=>S.y).attr("width",S=>S.width).attr("height",S=>S.height).attr("fill",S=>S.fill),T.append("text").attr("x",0).attr("y",0).attr("fill",S=>S.text.fill).attr("font-size",S=>S.text.fontSize).attr("dominant-baseline",S=>i(S.text.horizontalPos)).attr("text-anchor",S=>a(S.text.verticalPos)).attr("transform",S=>s(S.text)).text(S=>S.text.text),w.selectAll("g.label").data(y.axisLabels).enter().append("g").attr("class","label").append("text").attr("x",0).attr("y",0).text(S=>S.text).attr("fill",S=>S.fill).attr("font-size",S=>S.fontSize).attr("dominant-baseline",S=>i(S.horizontalPos)).attr("text-anchor",S=>a(S.verticalPos)).attr("transform",S=>s(S));let A=b.selectAll("g.data-point").data(y.points).enter().append("g").attr("class","data-point");A.append("circle").attr("cx",S=>S.x).attr("cy",S=>S.y).attr("r",S=>S.radius).attr("fill",S=>S.fill).attr("stroke",S=>S.strokeColor).attr("stroke-width",S=>S.strokeWidth),A.append("text").attr("x",0).attr("y",0).text(S=>S.text.text).attr("fill",S=>S.text.fill).attr("font-size",S=>S.text.fontSize).attr("dominant-baseline",S=>i(S.text.horizontalPos)).attr("text-anchor",S=>a(S.text.verticalPos)).attr("transform",S=>s(S.text))},"draw"),vhe={draw:DGe}});var bhe={};hr(bhe,{diagram:()=>LGe});var LGe,whe=N(()=>{"use strict";hhe();yhe();xhe();LGe={parser:uhe,db:ghe,renderer:vhe,styles:o(()=>"","styles")}});var pO,Ehe,She=N(()=>{"use strict";pO=function(){var t=o(function(O,M,B,F){for(B=B||{},F=O.length;F--;B[O[F]]=M);return B},"o"),e=[1,10,12,14,16,18,19,21,23],r=[2,6],n=[1,3],i=[1,5],a=[1,6],s=[1,7],l=[1,5,10,12,14,16,18,19,21,23,34,35,36],u=[1,25],h=[1,26],f=[1,28],d=[1,29],p=[1,30],m=[1,31],g=[1,32],y=[1,33],v=[1,34],x=[1,35],b=[1,36],w=[1,37],C=[1,43],T=[1,42],E=[1,47],A=[1,50],S=[1,10,12,14,16,18,19,21,23,34,35,36],_=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36],I=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36,41,42,43,44,45,46,47,48,49,50],D=[1,64],k={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,commaSeparatedNumbers:25,SQUARE_BRACES_END:26,NUMBER_WITH_DECIMAL:27,COMMA:28,xAxisData:29,bandData:30,ARROW_DELIMITER:31,commaSeparatedTexts:32,yAxisData:33,NEWLINE:34,SEMI:35,EOF:36,alphaNum:37,STR:38,MD_STR:39,alphaNumToken:40,AMP:41,NUM:42,ALPHA:43,PLUS:44,EQUALS:45,MULT:46,DOT:47,BRKT:48,MINUS:49,UNDERSCORE:50,$accept:0,$end:1},terminals_:{2:"error",5:"XYCHART",8:"CHART_ORIENTATION",10:"title",12:"X_AXIS",14:"Y_AXIS",16:"LINE",18:"BAR",19:"acc_title",20:"acc_title_value",21:"acc_descr",22:"acc_descr_value",23:"acc_descr_multiline_value",24:"SQUARE_BRACES_START",26:"SQUARE_BRACES_END",27:"NUMBER_WITH_DECIMAL",28:"COMMA",31:"ARROW_DELIMITER",34:"NEWLINE",35:"SEMI",36:"EOF",38:"STR",39:"MD_STR",41:"AMP",42:"NUM",43:"ALPHA",44:"PLUS",45:"EQUALS",46:"MULT",47:"DOT",48:"BRKT",49:"MINUS",50:"UNDERSCORE"},productions_:[0,[3,2],[3,3],[3,2],[3,1],[6,1],[7,0],[7,2],[9,2],[9,2],[9,2],[9,2],[9,2],[9,3],[9,2],[9,3],[9,2],[9,2],[9,1],[17,3],[25,3],[25,1],[13,1],[13,2],[13,1],[29,1],[29,3],[30,3],[32,3],[32,1],[15,1],[15,2],[15,1],[33,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[37,1],[37,2],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1]],performAction:o(function(M,B,F,P,z,$,H){var Q=$.length-1;switch(z){case 5:P.setOrientation($[Q]);break;case 9:P.setDiagramTitle($[Q].text.trim());break;case 12:P.setLineData({text:"",type:"text"},$[Q]);break;case 13:P.setLineData($[Q-1],$[Q]);break;case 14:P.setBarData({text:"",type:"text"},$[Q]);break;case 15:P.setBarData($[Q-1],$[Q]);break;case 16:this.$=$[Q].trim(),P.setAccTitle(this.$);break;case 17:case 18:this.$=$[Q].trim(),P.setAccDescription(this.$);break;case 19:this.$=$[Q-1];break;case 20:this.$=[Number($[Q-2]),...$[Q]];break;case 21:this.$=[Number($[Q])];break;case 22:P.setXAxisTitle($[Q]);break;case 23:P.setXAxisTitle($[Q-1]);break;case 24:P.setXAxisTitle({type:"text",text:""});break;case 25:P.setXAxisBand($[Q]);break;case 26:P.setXAxisRangeData(Number($[Q-2]),Number($[Q]));break;case 27:this.$=$[Q-1];break;case 28:this.$=[$[Q-2],...$[Q]];break;case 29:this.$=[$[Q]];break;case 30:P.setYAxisTitle($[Q]);break;case 31:P.setYAxisTitle($[Q-1]);break;case 32:P.setYAxisTitle({type:"text",text:""});break;case 33:P.setYAxisRangeData(Number($[Q-2]),Number($[Q]));break;case 37:this.$={text:$[Q],type:"text"};break;case 38:this.$={text:$[Q],type:"text"};break;case 39:this.$={text:$[Q],type:"markdown"};break;case 40:this.$=$[Q];break;case 41:this.$=$[Q-1]+""+$[Q];break}},"anonymous"),table:[t(e,r,{3:1,4:2,7:4,5:n,34:i,35:a,36:s}),{1:[3]},t(e,r,{4:2,7:4,3:8,5:n,34:i,35:a,36:s}),t(e,r,{4:2,7:4,6:9,3:10,5:n,8:[1,11],34:i,35:a,36:s}),{1:[2,4],9:12,10:[1,13],12:[1,14],14:[1,15],16:[1,16],18:[1,17],19:[1,18],21:[1,19],23:[1,20]},t(l,[2,34]),t(l,[2,35]),t(l,[2,36]),{1:[2,1]},t(e,r,{4:2,7:4,3:21,5:n,34:i,35:a,36:s}),{1:[2,3]},t(l,[2,5]),t(e,[2,7],{4:22,34:i,35:a,36:s}),{11:23,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w},{11:39,13:38,24:C,27:T,29:40,30:41,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w},{11:45,15:44,27:E,33:46,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w},{11:49,17:48,24:A,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w},{11:52,17:51,24:A,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w},{20:[1,53]},{22:[1,54]},t(S,[2,18]),{1:[2,2]},t(S,[2,8]),t(S,[2,9]),t(_,[2,37],{40:55,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w}),t(_,[2,38]),t(_,[2,39]),t(I,[2,40]),t(I,[2,42]),t(I,[2,43]),t(I,[2,44]),t(I,[2,45]),t(I,[2,46]),t(I,[2,47]),t(I,[2,48]),t(I,[2,49]),t(I,[2,50]),t(I,[2,51]),t(S,[2,10]),t(S,[2,22],{30:41,29:56,24:C,27:T}),t(S,[2,24]),t(S,[2,25]),{31:[1,57]},{11:59,32:58,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w},t(S,[2,11]),t(S,[2,30],{33:60,27:E}),t(S,[2,32]),{31:[1,61]},t(S,[2,12]),{17:62,24:A},{25:63,27:D},t(S,[2,14]),{17:65,24:A},t(S,[2,16]),t(S,[2,17]),t(I,[2,41]),t(S,[2,23]),{27:[1,66]},{26:[1,67]},{26:[2,29],28:[1,68]},t(S,[2,31]),{27:[1,69]},t(S,[2,13]),{26:[1,70]},{26:[2,21],28:[1,71]},t(S,[2,15]),t(S,[2,26]),t(S,[2,27]),{11:59,32:72,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w},t(S,[2,33]),t(S,[2,19]),{25:73,27:D},{26:[2,28]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],72:[2,28],73:[2,20]},parseError:o(function(M,B){if(B.recoverable)this.trace(M);else{var F=new Error(M);throw F.hash=B,F}},"parseError"),parse:o(function(M){var B=this,F=[0],P=[],z=[null],$=[],H=this.table,Q="",j=0,ie=0,ne=0,le=2,he=1,K=$.slice.call(arguments,1),X=Object.create(this.lexer),te={yy:{}};for(var J in this.yy)Object.prototype.hasOwnProperty.call(this.yy,J)&&(te.yy[J]=this.yy[J]);X.setInput(M,te.yy),te.yy.lexer=X,te.yy.parser=this,typeof X.yylloc>"u"&&(X.yylloc={});var se=X.yylloc;$.push(se);var ue=X.options&&X.options.ranges;typeof te.yy.parseError=="function"?this.parseError=te.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Z(re){F.length=F.length-2*re,z.length=z.length-re,$.length=$.length-re}o(Z,"popStack");function Se(){var re;return re=P.pop()||X.lex()||he,typeof re!="number"&&(re instanceof Array&&(P=re,re=P.pop()),re=B.symbols_[re]||re),re}o(Se,"lex");for(var ce,ae,Oe,ge,ze,He,$e={},Re,Ie,be,W;;){if(Oe=F[F.length-1],this.defaultActions[Oe]?ge=this.defaultActions[Oe]:((ce===null||typeof ce>"u")&&(ce=Se()),ge=H[Oe]&&H[Oe][ce]),typeof ge>"u"||!ge.length||!ge[0]){var de="";W=[];for(Re in H[Oe])this.terminals_[Re]&&Re>le&&W.push("'"+this.terminals_[Re]+"'");X.showPosition?de="Parse error on line "+(j+1)+`: +`+X.showPosition()+` +Expecting `+W.join(", ")+", got '"+(this.terminals_[ce]||ce)+"'":de="Parse error on line "+(j+1)+": Unexpected "+(ce==he?"end of input":"'"+(this.terminals_[ce]||ce)+"'"),this.parseError(de,{text:X.match,token:this.terminals_[ce]||ce,line:X.yylineno,loc:se,expected:W})}if(ge[0]instanceof Array&&ge.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Oe+", token: "+ce);switch(ge[0]){case 1:F.push(ce),z.push(X.yytext),$.push(X.yylloc),F.push(ge[1]),ce=null,ae?(ce=ae,ae=null):(ie=X.yyleng,Q=X.yytext,j=X.yylineno,se=X.yylloc,ne>0&&ne--);break;case 2:if(Ie=this.productions_[ge[1]][1],$e.$=z[z.length-Ie],$e._$={first_line:$[$.length-(Ie||1)].first_line,last_line:$[$.length-1].last_line,first_column:$[$.length-(Ie||1)].first_column,last_column:$[$.length-1].last_column},ue&&($e._$.range=[$[$.length-(Ie||1)].range[0],$[$.length-1].range[1]]),He=this.performAction.apply($e,[Q,ie,j,te.yy,ge[1],z,$].concat(K)),typeof He<"u")return He;Ie&&(F=F.slice(0,-1*Ie*2),z=z.slice(0,-1*Ie),$=$.slice(0,-1*Ie)),F.push(this.productions_[ge[1]][0]),z.push($e.$),$.push($e._$),be=H[F[F.length-2]][F[F.length-1]],F.push(be);break;case 3:return!0}}return!0},"parse")},L=function(){var O={EOF:1,parseError:o(function(B,F){if(this.yy.parser)this.yy.parser.parseError(B,F);else throw new Error(B)},"parseError"),setInput:o(function(M,B){return this.yy=B||this.yy||{},this._input=M,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var M=this._input[0];this.yytext+=M,this.yyleng++,this.offset++,this.match+=M,this.matched+=M;var B=M.match(/(?:\r\n?|\n).*/g);return B?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),M},"input"),unput:o(function(M){var B=M.length,F=M.split(/(?:\r\n?|\n)/g);this._input=M+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-B),this.offset-=B;var P=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),F.length-1&&(this.yylineno-=F.length-1);var z=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:F?(F.length===P.length?this.yylloc.first_column:0)+P[P.length-F.length].length-F[0].length:this.yylloc.first_column-B},this.options.ranges&&(this.yylloc.range=[z[0],z[0]+this.yyleng-B]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(M){this.unput(this.match.slice(M))},"less"),pastInput:o(function(){var M=this.matched.substr(0,this.matched.length-this.match.length);return(M.length>20?"...":"")+M.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var M=this.match;return M.length<20&&(M+=this._input.substr(0,20-M.length)),(M.substr(0,20)+(M.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var M=this.pastInput(),B=new Array(M.length+1).join("-");return M+this.upcomingInput()+` +`+B+"^"},"showPosition"),test_match:o(function(M,B){var F,P,z;if(this.options.backtrack_lexer&&(z={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(z.yylloc.range=this.yylloc.range.slice(0))),P=M[0].match(/(?:\r\n?|\n).*/g),P&&(this.yylineno+=P.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:P?P[P.length-1].length-P[P.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+M[0].length},this.yytext+=M[0],this.match+=M[0],this.matches=M,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(M[0].length),this.matched+=M[0],F=this.performAction.call(this,this.yy,this,B,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),F)return F;if(this._backtrack){for(var $ in z)this[$]=z[$];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var M,B,F,P;this._more||(this.yytext="",this.match="");for(var z=this._currentRules(),$=0;$B[0].length)){if(B=F,P=$,this.options.backtrack_lexer){if(M=this.test_match(F,z[$]),M!==!1)return M;if(this._backtrack){B=!1;continue}else return!1}else if(!this.options.flex)break}return B?(M=this.test_match(B,z[P]),M!==!1?M:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var B=this.next();return B||this.lex()},"lex"),begin:o(function(B){this.conditionStack.push(B)},"begin"),popState:o(function(){var B=this.conditionStack.length-1;return B>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(B){return B=this.conditionStack.length-1-Math.abs(B||0),B>=0?this.conditionStack[B]:"INITIAL"},"topState"),pushState:o(function(B){this.begin(B)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(B,F,P,z){var $=z;switch(P){case 0:break;case 1:break;case 2:return this.popState(),34;break;case 3:return this.popState(),34;break;case 4:return 34;case 5:break;case 6:return 10;case 7:return this.pushState("acc_title"),19;break;case 8:return this.popState(),"acc_title_value";break;case 9:return this.pushState("acc_descr"),21;break;case 10:return this.popState(),"acc_descr_value";break;case 11:this.pushState("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 5;case 15:return 8;case 16:return this.pushState("axis_data"),"X_AXIS";break;case 17:return this.pushState("axis_data"),"Y_AXIS";break;case 18:return this.pushState("axis_band_data"),24;break;case 19:return 31;case 20:return this.pushState("data"),16;break;case 21:return this.pushState("data"),18;break;case 22:return this.pushState("data_inner"),24;break;case 23:return 27;case 24:return this.popState(),26;break;case 25:this.popState();break;case 26:this.pushState("string");break;case 27:this.popState();break;case 28:return"STR";case 29:return 24;case 30:return 26;case 31:return 43;case 32:return"COLON";case 33:return 44;case 34:return 28;case 35:return 45;case 36:return 46;case 37:return 48;case 38:return 50;case 39:return 47;case 40:return 41;case 41:return 49;case 42:return 42;case 43:break;case 44:return 35;case 45:return 36}},"anonymous"),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:(\r?\n))/i,/^(?:(\r?\n))/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:\{)/i,/^(?:[^\}]*)/i,/^(?:xychart-beta\b)/i,/^(?:(?:vertical|horizontal))/i,/^(?:x-axis\b)/i,/^(?:y-axis\b)/i,/^(?:\[)/i,/^(?:-->)/i,/^(?:line\b)/i,/^(?:bar\b)/i,/^(?:\[)/i,/^(?:[+-]?(?:\d+(?:\.\d+)?|\.\d+))/i,/^(?:\])/i,/^(?:(?:`\) \{ this\.pushState\(md_string\); \}\n\(\?:\(\?!`"\)\.\)\+ \{ return MD_STR; \}\n\(\?:`))/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s+)/i,/^(?:;)/i,/^(?:$)/i],conditions:{data_inner:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,20,21,23,24,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},data:{rules:[0,1,3,4,5,6,7,9,11,14,15,16,17,20,21,22,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},axis_band_data:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,20,21,24,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},axis_data:{rules:[0,1,2,4,5,6,7,9,11,14,15,16,17,18,19,20,21,23,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},title:{rules:[],inclusive:!1},md_string:{rules:[],inclusive:!1},string:{rules:[27,28],inclusive:!1},INITIAL:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,20,21,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0}}};return O}();k.lexer=L;function R(){this.yy={}}return o(R,"Parser"),R.prototype=k,k.Parser=R,new R}();pO.parser=pO;Ehe=pO});function mO(t){return t.type==="bar"}function v6(t){return t.type==="band"}function S1(t){return t.type==="linear"}var x6=N(()=>{"use strict";o(mO,"isBarPlot");o(v6,"isBandAxisData");o(S1,"isLinearAxisData")});var C1,gO=N(()=>{"use strict";to();C1=class{constructor(e){this.parentGroup=e}static{o(this,"TextDimensionCalculatorWithFont")}getMaxDimension(e,r){if(!this.parentGroup)return{width:e.reduce((a,s)=>Math.max(s.length,a),0)*r,height:r};let n={width:0,height:0},i=this.parentGroup.append("g").attr("visibility","hidden").attr("font-size",r);for(let a of e){let s=sK(i,1,a),l=s?s.width:a.length*r,u=s?s.height:r;n.width=Math.max(n.width,l),n.height=Math.max(n.height,u)}return i.remove(),n}}});var A1,yO=N(()=>{"use strict";A1=class{constructor(e,r,n,i){this.axisConfig=e;this.title=r;this.textDimensionCalculator=n;this.axisThemeConfig=i;this.boundingRect={x:0,y:0,width:0,height:0};this.axisPosition="left";this.showTitle=!1;this.showLabel=!1;this.showTick=!1;this.showAxisLine=!1;this.outerPadding=0;this.titleTextHeight=0;this.labelTextHeight=0;this.range=[0,10],this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition="left"}static{o(this,"BaseAxis")}setRange(e){this.range=e,this.axisPosition==="left"||this.axisPosition==="right"?this.boundingRect.height=e[1]-e[0]:this.boundingRect.width=e[1]-e[0],this.recalculateScale()}getRange(){return[this.range[0]+this.outerPadding,this.range[1]-this.outerPadding]}setAxisPosition(e){this.axisPosition=e,this.setRange(this.range)}getTickDistance(){let e=this.getRange();return Math.abs(e[0]-e[1])/this.getTickValues().length}getAxisOuterPadding(){return this.outerPadding}getLabelDimension(){return this.textDimensionCalculator.getMaxDimension(this.getTickValues().map(e=>e.toString()),this.axisConfig.labelFontSize)}recalculateOuterPaddingToDrawBar(){.7*this.getTickDistance()>this.outerPadding*2&&(this.outerPadding=Math.floor(.7*this.getTickDistance()/2)),this.recalculateScale()}calculateSpaceIfDrawnHorizontally(e){let r=e.height;if(this.axisConfig.showAxisLine&&r>this.axisConfig.axisLineWidth&&(r-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){let n=this.getLabelDimension(),i=.2*e.width;this.outerPadding=Math.min(n.width/2,i);let a=n.height+this.axisConfig.labelPadding*2;this.labelTextHeight=n.height,a<=r&&(r-=a,this.showLabel=!0)}if(this.axisConfig.showTick&&r>=this.axisConfig.tickLength&&(this.showTick=!0,r-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){let n=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),i=n.height+this.axisConfig.titlePadding*2;this.titleTextHeight=n.height,i<=r&&(r-=i,this.showTitle=!0)}this.boundingRect.width=e.width,this.boundingRect.height=e.height-r}calculateSpaceIfDrawnVertical(e){let r=e.width;if(this.axisConfig.showAxisLine&&r>this.axisConfig.axisLineWidth&&(r-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){let n=this.getLabelDimension(),i=.2*e.height;this.outerPadding=Math.min(n.height/2,i);let a=n.width+this.axisConfig.labelPadding*2;a<=r&&(r-=a,this.showLabel=!0)}if(this.axisConfig.showTick&&r>=this.axisConfig.tickLength&&(this.showTick=!0,r-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){let n=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),i=n.height+this.axisConfig.titlePadding*2;this.titleTextHeight=n.height,i<=r&&(r-=i,this.showTitle=!0)}this.boundingRect.width=e.width-r,this.boundingRect.height=e.height}calculateSpace(e){return this.axisPosition==="left"||this.axisPosition==="right"?this.calculateSpaceIfDrawnVertical(e):this.calculateSpaceIfDrawnHorizontally(e),this.recalculateScale(),{width:this.boundingRect.width,height:this.boundingRect.height}}setBoundingBoxXY(e){this.boundingRect.x=e.x,this.boundingRect.y=e.y}getDrawableElementsForLeftAxis(){let e=[];if(this.showAxisLine){let r=this.boundingRect.x+this.boundingRect.width-this.axisConfig.axisLineWidth/2;e.push({type:"path",groupTexts:["left-axis","axisl-line"],data:[{path:`M ${r},${this.boundingRect.y} L ${r},${this.boundingRect.y+this.boundingRect.height} `,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&e.push({type:"text",groupTexts:["left-axis","label"],data:this.getTickValues().map(r=>({text:r.toString(),x:this.boundingRect.x+this.boundingRect.width-(this.showLabel?this.axisConfig.labelPadding:0)-(this.showTick?this.axisConfig.tickLength:0)-(this.showAxisLine?this.axisConfig.axisLineWidth:0),y:this.getScaleValue(r),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"middle",horizontalPos:"right"}))}),this.showTick){let r=this.boundingRect.x+this.boundingRect.width-(this.showAxisLine?this.axisConfig.axisLineWidth:0);e.push({type:"path",groupTexts:["left-axis","ticks"],data:this.getTickValues().map(n=>({path:`M ${r},${this.getScaleValue(n)} L ${r-this.axisConfig.tickLength},${this.getScaleValue(n)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&e.push({type:"text",groupTexts:["left-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.axisConfig.titlePadding,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:270,verticalPos:"top",horizontalPos:"center"}]}),e}getDrawableElementsForBottomAxis(){let e=[];if(this.showAxisLine){let r=this.boundingRect.y+this.axisConfig.axisLineWidth/2;e.push({type:"path",groupTexts:["bottom-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${r} L ${this.boundingRect.x+this.boundingRect.width},${r}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&e.push({type:"text",groupTexts:["bottom-axis","label"],data:this.getTickValues().map(r=>({text:r.toString(),x:this.getScaleValue(r),y:this.boundingRect.y+this.axisConfig.labelPadding+(this.showTick?this.axisConfig.tickLength:0)+(this.showAxisLine?this.axisConfig.axisLineWidth:0),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}))}),this.showTick){let r=this.boundingRect.y+(this.showAxisLine?this.axisConfig.axisLineWidth:0);e.push({type:"path",groupTexts:["bottom-axis","ticks"],data:this.getTickValues().map(n=>({path:`M ${this.getScaleValue(n)},${r} L ${this.getScaleValue(n)},${r+this.axisConfig.tickLength}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&e.push({type:"text",groupTexts:["bottom-axis","title"],data:[{text:this.title,x:this.range[0]+(this.range[1]-this.range[0])/2,y:this.boundingRect.y+this.boundingRect.height-this.axisConfig.titlePadding-this.titleTextHeight,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]}),e}getDrawableElementsForTopAxis(){let e=[];if(this.showAxisLine){let r=this.boundingRect.y+this.boundingRect.height-this.axisConfig.axisLineWidth/2;e.push({type:"path",groupTexts:["top-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${r} L ${this.boundingRect.x+this.boundingRect.width},${r}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&e.push({type:"text",groupTexts:["top-axis","label"],data:this.getTickValues().map(r=>({text:r.toString(),x:this.getScaleValue(r),y:this.boundingRect.y+(this.showTitle?this.titleTextHeight+this.axisConfig.titlePadding*2:0)+this.axisConfig.labelPadding,fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}))}),this.showTick){let r=this.boundingRect.y;e.push({type:"path",groupTexts:["top-axis","ticks"],data:this.getTickValues().map(n=>({path:`M ${this.getScaleValue(n)},${r+this.boundingRect.height-(this.showAxisLine?this.axisConfig.axisLineWidth:0)} L ${this.getScaleValue(n)},${r+this.boundingRect.height-this.axisConfig.tickLength-(this.showAxisLine?this.axisConfig.axisLineWidth:0)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&e.push({type:"text",groupTexts:["top-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.axisConfig.titlePadding,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]}),e}getDrawableElements(){if(this.axisPosition==="left")return this.getDrawableElementsForLeftAxis();if(this.axisPosition==="right")throw Error("Drawing of right axis is not implemented");return this.axisPosition==="bottom"?this.getDrawableElementsForBottomAxis():this.axisPosition==="top"?this.getDrawableElementsForTopAxis():[]}}});var b6,Che=N(()=>{"use strict";dr();vt();yO();b6=class extends A1{static{o(this,"BandAxis")}constructor(e,r,n,i,a){super(e,i,a,r),this.categories=n,this.scale=L0().domain(this.categories).range(this.getRange())}setRange(e){super.setRange(e)}recalculateScale(){this.scale=L0().domain(this.categories).range(this.getRange()).paddingInner(1).paddingOuter(0).align(.5),Y.trace("BandAxis axis final categories, range: ",this.categories,this.getRange())}getTickValues(){return this.categories}getScaleValue(e){return this.scale(e)??this.getRange()[0]}}});var w6,Ahe=N(()=>{"use strict";dr();yO();w6=class extends A1{static{o(this,"LinearAxis")}constructor(e,r,n,i,a){super(e,i,a,r),this.domain=n,this.scale=gl().domain(this.domain).range(this.getRange())}getTickValues(){return this.scale.ticks()}recalculateScale(){let e=[...this.domain];this.axisPosition==="left"&&e.reverse(),this.scale=gl().domain(e).range(this.getRange())}getScaleValue(e){return this.scale(e)}}});function vO(t,e,r,n){let i=new C1(n);return v6(t)?new b6(e,r,t.categories,t.title,i):new w6(e,r,[t.min,t.max],t.title,i)}var _he=N(()=>{"use strict";x6();gO();Che();Ahe();o(vO,"getAxis")});function Dhe(t,e,r,n){let i=new C1(n);return new xO(i,t,e,r)}var xO,Lhe=N(()=>{"use strict";gO();xO=class{constructor(e,r,n,i){this.textDimensionCalculator=e;this.chartConfig=r;this.chartData=n;this.chartThemeConfig=i;this.boundingRect={x:0,y:0,width:0,height:0},this.showChartTitle=!1}static{o(this,"ChartTitle")}setBoundingBoxXY(e){this.boundingRect.x=e.x,this.boundingRect.y=e.y}calculateSpace(e){let r=this.textDimensionCalculator.getMaxDimension([this.chartData.title],this.chartConfig.titleFontSize),n=Math.max(r.width,e.width),i=r.height+2*this.chartConfig.titlePadding;return r.width<=n&&r.height<=i&&this.chartConfig.showTitle&&this.chartData.title&&(this.boundingRect.width=n,this.boundingRect.height=i,this.showChartTitle=!0),{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){let e=[];return this.showChartTitle&&e.push({groupTexts:["chart-title"],type:"text",data:[{fontSize:this.chartConfig.titleFontSize,text:this.chartData.title,verticalPos:"middle",horizontalPos:"center",x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.chartThemeConfig.titleColor,rotation:0}]}),e}};o(Dhe,"getChartTitleComponent")});var T6,Rhe=N(()=>{"use strict";dr();T6=class{constructor(e,r,n,i,a){this.plotData=e;this.xAxis=r;this.yAxis=n;this.orientation=i;this.plotIndex=a}static{o(this,"LinePlot")}getDrawableElement(){let e=this.plotData.data.map(n=>[this.xAxis.getScaleValue(n[0]),this.yAxis.getScaleValue(n[1])]),r;return this.orientation==="horizontal"?r=wl().y(n=>n[0]).x(n=>n[1])(e):r=wl().x(n=>n[0]).y(n=>n[1])(e),r?[{groupTexts:["plot",`line-plot-${this.plotIndex}`],type:"path",data:[{path:r,strokeFill:this.plotData.strokeFill,strokeWidth:this.plotData.strokeWidth}]}]:[]}}});var k6,Nhe=N(()=>{"use strict";k6=class{constructor(e,r,n,i,a,s){this.barData=e;this.boundingRect=r;this.xAxis=n;this.yAxis=i;this.orientation=a;this.plotIndex=s}static{o(this,"BarPlot")}getDrawableElement(){let e=this.barData.data.map(a=>[this.xAxis.getScaleValue(a[0]),this.yAxis.getScaleValue(a[1])]),n=Math.min(this.xAxis.getAxisOuterPadding()*2,this.xAxis.getTickDistance())*(1-.05),i=n/2;return this.orientation==="horizontal"?[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:e.map(a=>({x:this.boundingRect.x,y:a[0]-i,height:n,width:a[1]-this.boundingRect.x,fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]:[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:e.map(a=>({x:a[0]-i,y:a[1],width:n,height:this.boundingRect.y+this.boundingRect.height-a[1],fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]}}});function Mhe(t,e,r){return new bO(t,e,r)}var bO,Ihe=N(()=>{"use strict";Rhe();Nhe();bO=class{constructor(e,r,n){this.chartConfig=e;this.chartData=r;this.chartThemeConfig=n;this.boundingRect={x:0,y:0,width:0,height:0}}static{o(this,"BasePlot")}setAxes(e,r){this.xAxis=e,this.yAxis=r}setBoundingBoxXY(e){this.boundingRect.x=e.x,this.boundingRect.y=e.y}calculateSpace(e){return this.boundingRect.width=e.width,this.boundingRect.height=e.height,{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){if(!(this.xAxis&&this.yAxis))throw Error("Axes must be passed to render Plots");let e=[];for(let[r,n]of this.chartData.plots.entries())switch(n.type){case"line":{let i=new T6(n,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,r);e.push(...i.getDrawableElement())}break;case"bar":{let i=new k6(n,this.boundingRect,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,r);e.push(...i.getDrawableElement())}break}return e}};o(Mhe,"getPlotComponent")});var E6,Ohe=N(()=>{"use strict";_he();Lhe();Ihe();x6();E6=class{constructor(e,r,n,i){this.chartConfig=e;this.chartData=r;this.componentStore={title:Dhe(e,r,n,i),plot:Mhe(e,r,n),xAxis:vO(r.xAxis,e.xAxis,{titleColor:n.xAxisTitleColor,labelColor:n.xAxisLabelColor,tickColor:n.xAxisTickColor,axisLineColor:n.xAxisLineColor},i),yAxis:vO(r.yAxis,e.yAxis,{titleColor:n.yAxisTitleColor,labelColor:n.yAxisLabelColor,tickColor:n.yAxisTickColor,axisLineColor:n.yAxisLineColor},i)}}static{o(this,"Orchestrator")}calculateVerticalSpace(){let e=this.chartConfig.width,r=this.chartConfig.height,n=0,i=0,a=Math.floor(e*this.chartConfig.plotReservedSpacePercent/100),s=Math.floor(r*this.chartConfig.plotReservedSpacePercent/100),l=this.componentStore.plot.calculateSpace({width:a,height:s});e-=l.width,r-=l.height,l=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:r}),i=l.height,r-=l.height,this.componentStore.xAxis.setAxisPosition("bottom"),l=this.componentStore.xAxis.calculateSpace({width:e,height:r}),r-=l.height,this.componentStore.yAxis.setAxisPosition("left"),l=this.componentStore.yAxis.calculateSpace({width:e,height:r}),n=l.width,e-=l.width,e>0&&(a+=e,e=0),r>0&&(s+=r,r=0),this.componentStore.plot.calculateSpace({width:a,height:s}),this.componentStore.plot.setBoundingBoxXY({x:n,y:i}),this.componentStore.xAxis.setRange([n,n+a]),this.componentStore.xAxis.setBoundingBoxXY({x:n,y:i+s}),this.componentStore.yAxis.setRange([i,i+s]),this.componentStore.yAxis.setBoundingBoxXY({x:0,y:i}),this.chartData.plots.some(u=>mO(u))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateHorizontalSpace(){let e=this.chartConfig.width,r=this.chartConfig.height,n=0,i=0,a=0,s=Math.floor(e*this.chartConfig.plotReservedSpacePercent/100),l=Math.floor(r*this.chartConfig.plotReservedSpacePercent/100),u=this.componentStore.plot.calculateSpace({width:s,height:l});e-=u.width,r-=u.height,u=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:r}),n=u.height,r-=u.height,this.componentStore.xAxis.setAxisPosition("left"),u=this.componentStore.xAxis.calculateSpace({width:e,height:r}),e-=u.width,i=u.width,this.componentStore.yAxis.setAxisPosition("top"),u=this.componentStore.yAxis.calculateSpace({width:e,height:r}),r-=u.height,a=n+u.height,e>0&&(s+=e,e=0),r>0&&(l+=r,r=0),this.componentStore.plot.calculateSpace({width:s,height:l}),this.componentStore.plot.setBoundingBoxXY({x:i,y:a}),this.componentStore.yAxis.setRange([i,i+s]),this.componentStore.yAxis.setBoundingBoxXY({x:i,y:n}),this.componentStore.xAxis.setRange([a,a+l]),this.componentStore.xAxis.setBoundingBoxXY({x:0,y:a}),this.chartData.plots.some(h=>mO(h))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateSpace(){this.chartConfig.chartOrientation==="horizontal"?this.calculateHorizontalSpace():this.calculateVerticalSpace()}getDrawableElement(){this.calculateSpace();let e=[];this.componentStore.plot.setAxes(this.componentStore.xAxis,this.componentStore.yAxis);for(let r of Object.values(this.componentStore))e.push(...r.getDrawableElements());return e}}});var S6,Phe=N(()=>{"use strict";Ohe();S6=class{static{o(this,"XYChartBuilder")}static build(e,r,n,i){return new E6(e,r,n,i).getDrawableElement()}}});function Fhe(){let t=oh(),e=cr();return Fi(t.xyChart,e.themeVariables.xyChart)}function $he(){let t=cr();return Fi(or.xyChart,t.xyChart)}function zhe(){return{yAxis:{type:"linear",title:"",min:1/0,max:-1/0},xAxis:{type:"band",title:"",categories:[]},title:"",plots:[]}}function kO(t){let e=cr();return Tr(t.trim(),e)}function IGe(t){Bhe=t}function OGe(t){t==="horizontal"?bb.chartOrientation="horizontal":bb.chartOrientation="vertical"}function PGe(t){fn.xAxis.title=kO(t.text)}function Ghe(t,e){fn.xAxis={type:"linear",title:fn.xAxis.title,min:t,max:e},C6=!0}function BGe(t){fn.xAxis={type:"band",title:fn.xAxis.title,categories:t.map(e=>kO(e.text))},C6=!0}function FGe(t){fn.yAxis.title=kO(t.text)}function $Ge(t,e){fn.yAxis={type:"linear",title:fn.yAxis.title,min:t,max:e},TO=!0}function zGe(t){let e=Math.min(...t),r=Math.max(...t),n=S1(fn.yAxis)?fn.yAxis.min:1/0,i=S1(fn.yAxis)?fn.yAxis.max:-1/0;fn.yAxis={type:"linear",title:fn.yAxis.title,min:Math.min(n,e),max:Math.max(i,r)}}function Vhe(t){let e=[];if(t.length===0)return e;if(!C6){let r=S1(fn.xAxis)?fn.xAxis.min:1/0,n=S1(fn.xAxis)?fn.xAxis.max:-1/0;Ghe(Math.min(r,1),Math.max(n,t.length))}if(TO||zGe(t),v6(fn.xAxis)&&(e=fn.xAxis.categories.map((r,n)=>[r,t[n]])),S1(fn.xAxis)){let r=fn.xAxis.min,n=fn.xAxis.max,i=(n-r)/(t.length-1),a=[];for(let s=r;s<=n;s+=i)a.push(`${s}`);e=a.map((s,l)=>[s,t[l]])}return e}function Uhe(t){return wO[t===0?0:t%wO.length]}function GGe(t,e){let r=Vhe(e);fn.plots.push({type:"line",strokeFill:Uhe(xb),strokeWidth:2,data:r}),xb++}function VGe(t,e){let r=Vhe(e);fn.plots.push({type:"bar",fill:Uhe(xb),data:r}),xb++}function UGe(){if(fn.plots.length===0)throw Error("No Plot to render, please provide a plot with some data");return fn.title=Ir(),S6.build(bb,fn,wb,Bhe)}function HGe(){return wb}function WGe(){return bb}var xb,Bhe,bb,wb,fn,wO,C6,TO,qGe,Hhe,Whe=N(()=>{"use strict";ji();Ya();_y();ir();gr();mi();Phe();x6();xb=0,bb=$he(),wb=Fhe(),fn=zhe(),wO=wb.plotColorPalette.split(",").map(t=>t.trim()),C6=!1,TO=!1;o(Fhe,"getChartDefaultThemeConfig");o($he,"getChartDefaultConfig");o(zhe,"getChartDefaultData");o(kO,"textSanitizer");o(IGe,"setTmpSVGG");o(OGe,"setOrientation");o(PGe,"setXAxisTitle");o(Ghe,"setXAxisRangeData");o(BGe,"setXAxisBand");o(FGe,"setYAxisTitle");o($Ge,"setYAxisRangeData");o(zGe,"setYAxisRangeFromPlotData");o(Vhe,"transformDataWithoutCategory");o(Uhe,"getPlotColorFromPalette");o(GGe,"setLineData");o(VGe,"setBarData");o(UGe,"getDrawableElem");o(HGe,"getChartThemeConfig");o(WGe,"getChartConfig");qGe=o(function(){Ar(),xb=0,bb=$he(),fn=zhe(),wb=Fhe(),wO=wb.plotColorPalette.split(",").map(t=>t.trim()),C6=!1,TO=!1},"clear"),Hhe={getDrawableElem:UGe,clear:qGe,setAccTitle:Lr,getAccTitle:Rr,setDiagramTitle:$r,getDiagramTitle:Ir,getAccDescription:Mr,setAccDescription:Nr,setOrientation:OGe,setXAxisTitle:PGe,setXAxisRangeData:Ghe,setXAxisBand:BGe,setYAxisTitle:FGe,setYAxisRangeData:$Ge,setLineData:GGe,setBarData:VGe,setTmpSVGG:IGe,getChartThemeConfig:HGe,getChartConfig:WGe}});var YGe,qhe,Yhe=N(()=>{"use strict";vt();Vc();Ei();YGe=o((t,e,r,n)=>{let i=n.db,a=i.getChartThemeConfig(),s=i.getChartConfig();function l(v){return v==="top"?"text-before-edge":"middle"}o(l,"getDominantBaseLine");function u(v){return v==="left"?"start":v==="right"?"end":"middle"}o(u,"getTextAnchor");function h(v){return`translate(${v.x}, ${v.y}) rotate(${v.rotation||0})`}o(h,"getTextTransformation"),Y.debug(`Rendering xychart chart +`+t);let f=sa(e),d=f.append("g").attr("class","main"),p=d.append("rect").attr("width",s.width).attr("height",s.height).attr("class","background");vn(f,s.height,s.width,!0),f.attr("viewBox",`0 0 ${s.width} ${s.height}`),p.attr("fill",a.backgroundColor),i.setTmpSVGG(f.append("g").attr("class","mermaid-tmp-group"));let m=i.getDrawableElem(),g={};function y(v){let x=d,b="";for(let[w]of v.entries()){let C=d;w>0&&g[b]&&(C=g[b]),b+=v[w],x=g[b],x||(x=g[b]=C.append("g").attr("class",v[w]))}return x}o(y,"getGroup");for(let v of m){if(v.data.length===0)continue;let x=y(v.groupTexts);switch(v.type){case"rect":x.selectAll("rect").data(v.data).enter().append("rect").attr("x",b=>b.x).attr("y",b=>b.y).attr("width",b=>b.width).attr("height",b=>b.height).attr("fill",b=>b.fill).attr("stroke",b=>b.strokeFill).attr("stroke-width",b=>b.strokeWidth);break;case"text":x.selectAll("text").data(v.data).enter().append("text").attr("x",0).attr("y",0).attr("fill",b=>b.fill).attr("font-size",b=>b.fontSize).attr("dominant-baseline",b=>l(b.verticalPos)).attr("text-anchor",b=>u(b.horizontalPos)).attr("transform",b=>h(b)).text(b=>b.text);break;case"path":x.selectAll("path").data(v.data).enter().append("path").attr("d",b=>b.path).attr("fill",b=>b.fill?b.fill:"none").attr("stroke",b=>b.strokeFill).attr("stroke-width",b=>b.strokeWidth);break}}},"draw"),qhe={draw:YGe}});var Xhe={};hr(Xhe,{diagram:()=>XGe});var XGe,jhe=N(()=>{"use strict";She();Whe();Yhe();XGe={parser:Ehe,db:Hhe,renderer:qhe}});var EO,Zhe,Jhe=N(()=>{"use strict";EO=function(){var t=o(function(re,oe,V,xe){for(V=V||{},xe=re.length;xe--;V[re[xe]]=oe);return V},"o"),e=[1,3],r=[1,4],n=[1,5],i=[1,6],a=[5,6,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],s=[1,22],l=[2,7],u=[1,26],h=[1,27],f=[1,28],d=[1,29],p=[1,33],m=[1,34],g=[1,35],y=[1,36],v=[1,37],x=[1,38],b=[1,24],w=[1,31],C=[1,32],T=[1,30],E=[1,39],A=[1,40],S=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],_=[1,61],I=[89,90],D=[5,8,9,11,13,21,22,23,24,27,29,41,42,43,44,45,46,54,61,63,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],k=[27,29],L=[1,70],R=[1,71],O=[1,72],M=[1,73],B=[1,74],F=[1,75],P=[1,76],z=[1,83],$=[1,80],H=[1,84],Q=[1,85],j=[1,86],ie=[1,87],ne=[1,88],le=[1,89],he=[1,90],K=[1,91],X=[1,92],te=[5,8,9,11,13,21,22,23,24,27,41,42,43,44,45,46,54,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],J=[63,64],se=[1,101],ue=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,76,77,89,90],Z=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],Se=[1,110],ce=[1,106],ae=[1,107],Oe=[1,108],ge=[1,109],ze=[1,111],He=[1,116],$e=[1,117],Re=[1,114],Ie=[1,115],be={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,acc_title:9,acc_title_value:10,acc_descr:11,acc_descr_value:12,acc_descr_multiline_value:13,requirementDef:14,elementDef:15,relationshipDef:16,direction:17,styleStatement:18,classDefStatement:19,classStatement:20,direction_tb:21,direction_bt:22,direction_rl:23,direction_lr:24,requirementType:25,requirementName:26,STRUCT_START:27,requirementBody:28,STYLE_SEPARATOR:29,idList:30,ID:31,COLONSEP:32,id:33,TEXT:34,text:35,RISK:36,riskLevel:37,VERIFYMTHD:38,verifyType:39,STRUCT_STOP:40,REQUIREMENT:41,FUNCTIONAL_REQUIREMENT:42,INTERFACE_REQUIREMENT:43,PERFORMANCE_REQUIREMENT:44,PHYSICAL_REQUIREMENT:45,DESIGN_CONSTRAINT:46,LOW_RISK:47,MED_RISK:48,HIGH_RISK:49,VERIFY_ANALYSIS:50,VERIFY_DEMONSTRATION:51,VERIFY_INSPECTION:52,VERIFY_TEST:53,ELEMENT:54,elementName:55,elementBody:56,TYPE:57,type:58,DOCREF:59,ref:60,END_ARROW_L:61,relationship:62,LINE:63,END_ARROW_R:64,CONTAINS:65,COPIES:66,DERIVES:67,SATISFIES:68,VERIFIES:69,REFINES:70,TRACES:71,CLASSDEF:72,stylesOpt:73,CLASS:74,ALPHA:75,COMMA:76,STYLE:77,style:78,styleComponent:79,NUM:80,COLON:81,UNIT:82,SPACE:83,BRKT:84,PCT:85,MINUS:86,LABEL:87,SEMICOLON:88,unqString:89,qString:90,$accept:0,$end:1},terminals_:{2:"error",5:"NEWLINE",6:"RD",8:"EOF",9:"acc_title",10:"acc_title_value",11:"acc_descr",12:"acc_descr_value",13:"acc_descr_multiline_value",21:"direction_tb",22:"direction_bt",23:"direction_rl",24:"direction_lr",27:"STRUCT_START",29:"STYLE_SEPARATOR",31:"ID",32:"COLONSEP",34:"TEXT",36:"RISK",38:"VERIFYMTHD",40:"STRUCT_STOP",41:"REQUIREMENT",42:"FUNCTIONAL_REQUIREMENT",43:"INTERFACE_REQUIREMENT",44:"PERFORMANCE_REQUIREMENT",45:"PHYSICAL_REQUIREMENT",46:"DESIGN_CONSTRAINT",47:"LOW_RISK",48:"MED_RISK",49:"HIGH_RISK",50:"VERIFY_ANALYSIS",51:"VERIFY_DEMONSTRATION",52:"VERIFY_INSPECTION",53:"VERIFY_TEST",54:"ELEMENT",57:"TYPE",59:"DOCREF",61:"END_ARROW_L",63:"LINE",64:"END_ARROW_R",65:"CONTAINS",66:"COPIES",67:"DERIVES",68:"SATISFIES",69:"VERIFIES",70:"REFINES",71:"TRACES",72:"CLASSDEF",74:"CLASS",75:"ALPHA",76:"COMMA",77:"STYLE",80:"NUM",81:"COLON",82:"UNIT",83:"SPACE",84:"BRKT",85:"PCT",86:"MINUS",87:"LABEL",88:"SEMICOLON",89:"unqString",90:"qString"},productions_:[0,[3,3],[3,2],[3,4],[4,2],[4,2],[4,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[17,1],[17,1],[17,1],[17,1],[14,5],[14,7],[28,5],[28,5],[28,5],[28,5],[28,2],[28,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[37,1],[37,1],[37,1],[39,1],[39,1],[39,1],[39,1],[15,5],[15,7],[56,5],[56,5],[56,2],[56,1],[16,5],[16,5],[62,1],[62,1],[62,1],[62,1],[62,1],[62,1],[62,1],[19,3],[20,3],[20,3],[30,1],[30,3],[30,1],[30,3],[18,3],[73,1],[73,3],[78,1],[78,2],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[26,1],[26,1],[33,1],[33,1],[35,1],[35,1],[55,1],[55,1],[58,1],[58,1],[60,1],[60,1]],performAction:o(function(oe,V,xe,q,pe,ve,Pe){var _e=ve.length-1;switch(pe){case 4:this.$=ve[_e].trim(),q.setAccTitle(this.$);break;case 5:case 6:this.$=ve[_e].trim(),q.setAccDescription(this.$);break;case 7:this.$=[];break;case 17:q.setDirection("TB");break;case 18:q.setDirection("BT");break;case 19:q.setDirection("RL");break;case 20:q.setDirection("LR");break;case 21:q.addRequirement(ve[_e-3],ve[_e-4]);break;case 22:q.addRequirement(ve[_e-5],ve[_e-6]),q.setClass([ve[_e-5]],ve[_e-3]);break;case 23:q.setNewReqId(ve[_e-2]);break;case 24:q.setNewReqText(ve[_e-2]);break;case 25:q.setNewReqRisk(ve[_e-2]);break;case 26:q.setNewReqVerifyMethod(ve[_e-2]);break;case 29:this.$=q.RequirementType.REQUIREMENT;break;case 30:this.$=q.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 31:this.$=q.RequirementType.INTERFACE_REQUIREMENT;break;case 32:this.$=q.RequirementType.PERFORMANCE_REQUIREMENT;break;case 33:this.$=q.RequirementType.PHYSICAL_REQUIREMENT;break;case 34:this.$=q.RequirementType.DESIGN_CONSTRAINT;break;case 35:this.$=q.RiskLevel.LOW_RISK;break;case 36:this.$=q.RiskLevel.MED_RISK;break;case 37:this.$=q.RiskLevel.HIGH_RISK;break;case 38:this.$=q.VerifyType.VERIFY_ANALYSIS;break;case 39:this.$=q.VerifyType.VERIFY_DEMONSTRATION;break;case 40:this.$=q.VerifyType.VERIFY_INSPECTION;break;case 41:this.$=q.VerifyType.VERIFY_TEST;break;case 42:q.addElement(ve[_e-3]);break;case 43:q.addElement(ve[_e-5]),q.setClass([ve[_e-5]],ve[_e-3]);break;case 44:q.setNewElementType(ve[_e-2]);break;case 45:q.setNewElementDocRef(ve[_e-2]);break;case 48:q.addRelationship(ve[_e-2],ve[_e],ve[_e-4]);break;case 49:q.addRelationship(ve[_e-2],ve[_e-4],ve[_e]);break;case 50:this.$=q.Relationships.CONTAINS;break;case 51:this.$=q.Relationships.COPIES;break;case 52:this.$=q.Relationships.DERIVES;break;case 53:this.$=q.Relationships.SATISFIES;break;case 54:this.$=q.Relationships.VERIFIES;break;case 55:this.$=q.Relationships.REFINES;break;case 56:this.$=q.Relationships.TRACES;break;case 57:this.$=ve[_e-2],q.defineClass(ve[_e-1],ve[_e]);break;case 58:q.setClass(ve[_e-1],ve[_e]);break;case 59:q.setClass([ve[_e-2]],ve[_e]);break;case 60:case 62:this.$=[ve[_e]];break;case 61:case 63:this.$=ve[_e-2].concat([ve[_e]]);break;case 64:this.$=ve[_e-2],q.setCssStyle(ve[_e-1],ve[_e]);break;case 65:this.$=[ve[_e]];break;case 66:ve[_e-2].push(ve[_e]),this.$=ve[_e-2];break;case 68:this.$=ve[_e-1]+ve[_e];break}},"anonymous"),table:[{3:1,4:2,6:e,9:r,11:n,13:i},{1:[3]},{3:8,4:2,5:[1,7],6:e,9:r,11:n,13:i},{5:[1,9]},{10:[1,10]},{12:[1,11]},t(a,[2,6]),{3:12,4:2,6:e,9:r,11:n,13:i},{1:[2,2]},{4:17,5:s,7:13,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:w,74:C,77:T,89:E,90:A},t(a,[2,4]),t(a,[2,5]),{1:[2,1]},{8:[1,41]},{4:17,5:s,7:42,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:w,74:C,77:T,89:E,90:A},{4:17,5:s,7:43,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:w,74:C,77:T,89:E,90:A},{4:17,5:s,7:44,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:w,74:C,77:T,89:E,90:A},{4:17,5:s,7:45,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:w,74:C,77:T,89:E,90:A},{4:17,5:s,7:46,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:w,74:C,77:T,89:E,90:A},{4:17,5:s,7:47,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:w,74:C,77:T,89:E,90:A},{4:17,5:s,7:48,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:w,74:C,77:T,89:E,90:A},{4:17,5:s,7:49,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:w,74:C,77:T,89:E,90:A},{4:17,5:s,7:50,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:w,74:C,77:T,89:E,90:A},{26:51,89:[1,52],90:[1,53]},{55:54,89:[1,55],90:[1,56]},{29:[1,59],61:[1,57],63:[1,58]},t(S,[2,17]),t(S,[2,18]),t(S,[2,19]),t(S,[2,20]),{30:60,33:62,75:_,89:E,90:A},{30:63,33:62,75:_,89:E,90:A},{30:64,33:62,75:_,89:E,90:A},t(I,[2,29]),t(I,[2,30]),t(I,[2,31]),t(I,[2,32]),t(I,[2,33]),t(I,[2,34]),t(D,[2,81]),t(D,[2,82]),{1:[2,3]},{8:[2,8]},{8:[2,9]},{8:[2,10]},{8:[2,11]},{8:[2,12]},{8:[2,13]},{8:[2,14]},{8:[2,15]},{8:[2,16]},{27:[1,65],29:[1,66]},t(k,[2,79]),t(k,[2,80]),{27:[1,67],29:[1,68]},t(k,[2,85]),t(k,[2,86]),{62:69,65:L,66:R,67:O,68:M,69:B,70:F,71:P},{62:77,65:L,66:R,67:O,68:M,69:B,70:F,71:P},{30:78,33:62,75:_,89:E,90:A},{73:79,75:z,76:$,78:81,79:82,80:H,81:Q,82:j,83:ie,84:ne,85:le,86:he,87:K,88:X},t(te,[2,60]),t(te,[2,62]),{73:93,75:z,76:$,78:81,79:82,80:H,81:Q,82:j,83:ie,84:ne,85:le,86:he,87:K,88:X},{30:94,33:62,75:_,76:$,89:E,90:A},{5:[1,95]},{30:96,33:62,75:_,89:E,90:A},{5:[1,97]},{30:98,33:62,75:_,89:E,90:A},{63:[1,99]},t(J,[2,50]),t(J,[2,51]),t(J,[2,52]),t(J,[2,53]),t(J,[2,54]),t(J,[2,55]),t(J,[2,56]),{64:[1,100]},t(S,[2,59],{76:$}),t(S,[2,64],{76:se}),{33:103,75:[1,102],89:E,90:A},t(ue,[2,65],{79:104,75:z,80:H,81:Q,82:j,83:ie,84:ne,85:le,86:he,87:K,88:X}),t(Z,[2,67]),t(Z,[2,69]),t(Z,[2,70]),t(Z,[2,71]),t(Z,[2,72]),t(Z,[2,73]),t(Z,[2,74]),t(Z,[2,75]),t(Z,[2,76]),t(Z,[2,77]),t(Z,[2,78]),t(S,[2,57],{76:se}),t(S,[2,58],{76:$}),{5:Se,28:105,31:ce,34:ae,36:Oe,38:ge,40:ze},{27:[1,112],76:$},{5:He,40:$e,56:113,57:Re,59:Ie},{27:[1,118],76:$},{33:119,89:E,90:A},{33:120,89:E,90:A},{75:z,78:121,79:82,80:H,81:Q,82:j,83:ie,84:ne,85:le,86:he,87:K,88:X},t(te,[2,61]),t(te,[2,63]),t(Z,[2,68]),t(S,[2,21]),{32:[1,122]},{32:[1,123]},{32:[1,124]},{32:[1,125]},{5:Se,28:126,31:ce,34:ae,36:Oe,38:ge,40:ze},t(S,[2,28]),{5:[1,127]},t(S,[2,42]),{32:[1,128]},{32:[1,129]},{5:He,40:$e,56:130,57:Re,59:Ie},t(S,[2,47]),{5:[1,131]},t(S,[2,48]),t(S,[2,49]),t(ue,[2,66],{79:104,75:z,80:H,81:Q,82:j,83:ie,84:ne,85:le,86:he,87:K,88:X}),{33:132,89:E,90:A},{35:133,89:[1,134],90:[1,135]},{37:136,47:[1,137],48:[1,138],49:[1,139]},{39:140,50:[1,141],51:[1,142],52:[1,143],53:[1,144]},t(S,[2,27]),{5:Se,28:145,31:ce,34:ae,36:Oe,38:ge,40:ze},{58:146,89:[1,147],90:[1,148]},{60:149,89:[1,150],90:[1,151]},t(S,[2,46]),{5:He,40:$e,56:152,57:Re,59:Ie},{5:[1,153]},{5:[1,154]},{5:[2,83]},{5:[2,84]},{5:[1,155]},{5:[2,35]},{5:[2,36]},{5:[2,37]},{5:[1,156]},{5:[2,38]},{5:[2,39]},{5:[2,40]},{5:[2,41]},t(S,[2,22]),{5:[1,157]},{5:[2,87]},{5:[2,88]},{5:[1,158]},{5:[2,89]},{5:[2,90]},t(S,[2,43]),{5:Se,28:159,31:ce,34:ae,36:Oe,38:ge,40:ze},{5:Se,28:160,31:ce,34:ae,36:Oe,38:ge,40:ze},{5:Se,28:161,31:ce,34:ae,36:Oe,38:ge,40:ze},{5:Se,28:162,31:ce,34:ae,36:Oe,38:ge,40:ze},{5:He,40:$e,56:163,57:Re,59:Ie},{5:He,40:$e,56:164,57:Re,59:Ie},t(S,[2,23]),t(S,[2,24]),t(S,[2,25]),t(S,[2,26]),t(S,[2,44]),t(S,[2,45])],defaultActions:{8:[2,2],12:[2,1],41:[2,3],42:[2,8],43:[2,9],44:[2,10],45:[2,11],46:[2,12],47:[2,13],48:[2,14],49:[2,15],50:[2,16],134:[2,83],135:[2,84],137:[2,35],138:[2,36],139:[2,37],141:[2,38],142:[2,39],143:[2,40],144:[2,41],147:[2,87],148:[2,88],150:[2,89],151:[2,90]},parseError:o(function(oe,V){if(V.recoverable)this.trace(oe);else{var xe=new Error(oe);throw xe.hash=V,xe}},"parseError"),parse:o(function(oe){var V=this,xe=[0],q=[],pe=[null],ve=[],Pe=this.table,_e="",we=0,Ve=0,De=0,qe=2,at=1,Rt=ve.slice.call(arguments,1),st=Object.create(this.lexer),Ue={yy:{}};for(var ct in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ct)&&(Ue.yy[ct]=this.yy[ct]);st.setInput(oe,Ue.yy),Ue.yy.lexer=st,Ue.yy.parser=this,typeof st.yylloc>"u"&&(st.yylloc={});var We=st.yylloc;ve.push(We);var ot=st.options&&st.options.ranges;typeof Ue.yy.parseError=="function"?this.parseError=Ue.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Yt(Dr){xe.length=xe.length-2*Dr,pe.length=pe.length-Dr,ve.length=ve.length-Dr}o(Yt,"popStack");function bt(){var Dr;return Dr=q.pop()||st.lex()||at,typeof Dr!="number"&&(Dr instanceof Array&&(q=Dr,Dr=q.pop()),Dr=V.symbols_[Dr]||Dr),Dr}o(bt,"lex");for(var Mt,xt,ut,Et,ft,yt,nt={},dn,Tt,On,tn;;){if(ut=xe[xe.length-1],this.defaultActions[ut]?Et=this.defaultActions[ut]:((Mt===null||typeof Mt>"u")&&(Mt=bt()),Et=Pe[ut]&&Pe[ut][Mt]),typeof Et>"u"||!Et.length||!Et[0]){var _r="";tn=[];for(dn in Pe[ut])this.terminals_[dn]&&dn>qe&&tn.push("'"+this.terminals_[dn]+"'");st.showPosition?_r="Parse error on line "+(we+1)+`: +`+st.showPosition()+` +Expecting `+tn.join(", ")+", got '"+(this.terminals_[Mt]||Mt)+"'":_r="Parse error on line "+(we+1)+": Unexpected "+(Mt==at?"end of input":"'"+(this.terminals_[Mt]||Mt)+"'"),this.parseError(_r,{text:st.match,token:this.terminals_[Mt]||Mt,line:st.yylineno,loc:We,expected:tn})}if(Et[0]instanceof Array&&Et.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ut+", token: "+Mt);switch(Et[0]){case 1:xe.push(Mt),pe.push(st.yytext),ve.push(st.yylloc),xe.push(Et[1]),Mt=null,xt?(Mt=xt,xt=null):(Ve=st.yyleng,_e=st.yytext,we=st.yylineno,We=st.yylloc,De>0&&De--);break;case 2:if(Tt=this.productions_[Et[1]][1],nt.$=pe[pe.length-Tt],nt._$={first_line:ve[ve.length-(Tt||1)].first_line,last_line:ve[ve.length-1].last_line,first_column:ve[ve.length-(Tt||1)].first_column,last_column:ve[ve.length-1].last_column},ot&&(nt._$.range=[ve[ve.length-(Tt||1)].range[0],ve[ve.length-1].range[1]]),yt=this.performAction.apply(nt,[_e,Ve,we,Ue.yy,Et[1],pe,ve].concat(Rt)),typeof yt<"u")return yt;Tt&&(xe=xe.slice(0,-1*Tt*2),pe=pe.slice(0,-1*Tt),ve=ve.slice(0,-1*Tt)),xe.push(this.productions_[Et[1]][0]),pe.push(nt.$),ve.push(nt._$),On=Pe[xe[xe.length-2]][xe[xe.length-1]],xe.push(On);break;case 3:return!0}}return!0},"parse")},W=function(){var re={EOF:1,parseError:o(function(V,xe){if(this.yy.parser)this.yy.parser.parseError(V,xe);else throw new Error(V)},"parseError"),setInput:o(function(oe,V){return this.yy=V||this.yy||{},this._input=oe,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var oe=this._input[0];this.yytext+=oe,this.yyleng++,this.offset++,this.match+=oe,this.matched+=oe;var V=oe.match(/(?:\r\n?|\n).*/g);return V?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),oe},"input"),unput:o(function(oe){var V=oe.length,xe=oe.split(/(?:\r\n?|\n)/g);this._input=oe+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-V),this.offset-=V;var q=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),xe.length-1&&(this.yylineno-=xe.length-1);var pe=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:xe?(xe.length===q.length?this.yylloc.first_column:0)+q[q.length-xe.length].length-xe[0].length:this.yylloc.first_column-V},this.options.ranges&&(this.yylloc.range=[pe[0],pe[0]+this.yyleng-V]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(oe){this.unput(this.match.slice(oe))},"less"),pastInput:o(function(){var oe=this.matched.substr(0,this.matched.length-this.match.length);return(oe.length>20?"...":"")+oe.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var oe=this.match;return oe.length<20&&(oe+=this._input.substr(0,20-oe.length)),(oe.substr(0,20)+(oe.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var oe=this.pastInput(),V=new Array(oe.length+1).join("-");return oe+this.upcomingInput()+` +`+V+"^"},"showPosition"),test_match:o(function(oe,V){var xe,q,pe;if(this.options.backtrack_lexer&&(pe={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(pe.yylloc.range=this.yylloc.range.slice(0))),q=oe[0].match(/(?:\r\n?|\n).*/g),q&&(this.yylineno+=q.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:q?q[q.length-1].length-q[q.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+oe[0].length},this.yytext+=oe[0],this.match+=oe[0],this.matches=oe,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(oe[0].length),this.matched+=oe[0],xe=this.performAction.call(this,this.yy,this,V,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),xe)return xe;if(this._backtrack){for(var ve in pe)this[ve]=pe[ve];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var oe,V,xe,q;this._more||(this.yytext="",this.match="");for(var pe=this._currentRules(),ve=0;veV[0].length)){if(V=xe,q=ve,this.options.backtrack_lexer){if(oe=this.test_match(xe,pe[ve]),oe!==!1)return oe;if(this._backtrack){V=!1;continue}else return!1}else if(!this.options.flex)break}return V?(oe=this.test_match(V,pe[q]),oe!==!1?oe:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var V=this.next();return V||this.lex()},"lex"),begin:o(function(V){this.conditionStack.push(V)},"begin"),popState:o(function(){var V=this.conditionStack.length-1;return V>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(V){return V=this.conditionStack.length-1-Math.abs(V||0),V>=0?this.conditionStack[V]:"INITIAL"},"topState"),pushState:o(function(V){this.begin(V)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(V,xe,q,pe){var ve=pe;switch(q){case 0:return"title";case 1:return this.begin("acc_title"),9;break;case 2:return this.popState(),"acc_title_value";break;case 3:return this.begin("acc_descr"),11;break;case 4:return this.popState(),"acc_descr_value";break;case 5:this.begin("acc_descr_multiline");break;case 6:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:return 21;case 9:return 22;case 10:return 23;case 11:return 24;case 12:return 5;case 13:break;case 14:break;case 15:break;case 16:return 8;case 17:return 6;case 18:return 27;case 19:return 40;case 20:return 29;case 21:return 32;case 22:return 31;case 23:return 34;case 24:return 36;case 25:return 38;case 26:return 41;case 27:return 42;case 28:return 43;case 29:return 44;case 30:return 45;case 31:return 46;case 32:return 47;case 33:return 48;case 34:return 49;case 35:return 50;case 36:return 51;case 37:return 52;case 38:return 53;case 39:return 54;case 40:return 65;case 41:return 66;case 42:return 67;case 43:return 68;case 44:return 69;case 45:return 70;case 46:return 71;case 47:return 57;case 48:return 59;case 49:return this.begin("style"),77;break;case 50:return 75;case 51:return 81;case 52:return 88;case 53:return"PERCENT";case 54:return 86;case 55:return 84;case 56:break;case 57:this.begin("string");break;case 58:this.popState();break;case 59:return this.begin("style"),72;break;case 60:return this.begin("style"),74;break;case 61:return 61;case 62:return 64;case 63:return 63;case 64:this.begin("string");break;case 65:this.popState();break;case 66:return"qString";case 67:return xe.yytext=xe.yytext.trim(),89;break;case 68:return 75;case 69:return 80;case 70:return 76}},"anonymous"),rules:[/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:(\r?\n)+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:$)/i,/^(?:requirementDiagram\b)/i,/^(?:\{)/i,/^(?:\})/i,/^(?::{3})/i,/^(?::)/i,/^(?:id\b)/i,/^(?:text\b)/i,/^(?:risk\b)/i,/^(?:verifyMethod\b)/i,/^(?:requirement\b)/i,/^(?:functionalRequirement\b)/i,/^(?:interfaceRequirement\b)/i,/^(?:performanceRequirement\b)/i,/^(?:physicalRequirement\b)/i,/^(?:designConstraint\b)/i,/^(?:low\b)/i,/^(?:medium\b)/i,/^(?:high\b)/i,/^(?:analysis\b)/i,/^(?:demonstration\b)/i,/^(?:inspection\b)/i,/^(?:test\b)/i,/^(?:element\b)/i,/^(?:contains\b)/i,/^(?:copies\b)/i,/^(?:derives\b)/i,/^(?:satisfies\b)/i,/^(?:verifies\b)/i,/^(?:refines\b)/i,/^(?:traces\b)/i,/^(?:type\b)/i,/^(?:docref\b)/i,/^(?:style\b)/i,/^(?:\w+)/i,/^(?::)/i,/^(?:;)/i,/^(?:%)/i,/^(?:-)/i,/^(?:#)/i,/^(?: )/i,/^(?:["])/i,/^(?:\n)/i,/^(?:classDef\b)/i,/^(?:class\b)/i,/^(?:<-)/i,/^(?:->)/i,/^(?:-)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[\w][^:,\r\n\{\<\>\-\=]*)/i,/^(?:\w+)/i,/^(?:[0-9]+)/i,/^(?:,)/i],conditions:{acc_descr_multiline:{rules:[6,7,68,69,70],inclusive:!1},acc_descr:{rules:[4,68,69,70],inclusive:!1},acc_title:{rules:[2,68,69,70],inclusive:!1},style:{rules:[50,51,52,53,54,55,56,57,58,68,69,70],inclusive:!1},unqString:{rules:[68,69,70],inclusive:!1},token:{rules:[68,69,70],inclusive:!1},string:{rules:[65,66,68,69,70],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,59,60,61,62,63,64,67,68,69,70],inclusive:!0}}};return re}();be.lexer=W;function de(){this.yy={}}return o(de,"Parser"),de.prototype=be,be.Parser=de,new de}();EO.parser=EO;Zhe=EO});var A6,efe=N(()=>{"use strict";zt();vt();mi();A6=class{constructor(){this.relations=[];this.latestRequirement=this.getInitialRequirement();this.requirements=new Map;this.latestElement=this.getInitialElement();this.elements=new Map;this.classes=new Map;this.direction="TB";this.RequirementType={REQUIREMENT:"Requirement",FUNCTIONAL_REQUIREMENT:"Functional Requirement",INTERFACE_REQUIREMENT:"Interface Requirement",PERFORMANCE_REQUIREMENT:"Performance Requirement",PHYSICAL_REQUIREMENT:"Physical Requirement",DESIGN_CONSTRAINT:"Design Constraint"};this.RiskLevel={LOW_RISK:"Low",MED_RISK:"Medium",HIGH_RISK:"High"};this.VerifyType={VERIFY_ANALYSIS:"Analysis",VERIFY_DEMONSTRATION:"Demonstration",VERIFY_INSPECTION:"Inspection",VERIFY_TEST:"Test"};this.Relationships={CONTAINS:"contains",COPIES:"copies",DERIVES:"derives",SATISFIES:"satisfies",VERIFIES:"verifies",REFINES:"refines",TRACES:"traces"};this.setAccTitle=Lr;this.getAccTitle=Rr;this.setAccDescription=Nr;this.getAccDescription=Mr;this.setDiagramTitle=$r;this.getDiagramTitle=Ir;this.getConfig=o(()=>me().requirement,"getConfig");this.clear(),this.setDirection=this.setDirection.bind(this),this.addRequirement=this.addRequirement.bind(this),this.setNewReqId=this.setNewReqId.bind(this),this.setNewReqRisk=this.setNewReqRisk.bind(this),this.setNewReqText=this.setNewReqText.bind(this),this.setNewReqVerifyMethod=this.setNewReqVerifyMethod.bind(this),this.addElement=this.addElement.bind(this),this.setNewElementType=this.setNewElementType.bind(this),this.setNewElementDocRef=this.setNewElementDocRef.bind(this),this.addRelationship=this.addRelationship.bind(this),this.setCssStyle=this.setCssStyle.bind(this),this.setClass=this.setClass.bind(this),this.defineClass=this.defineClass.bind(this),this.setAccTitle=this.setAccTitle.bind(this),this.setAccDescription=this.setAccDescription.bind(this)}static{o(this,"RequirementDB")}getDirection(){return this.direction}setDirection(e){this.direction=e}resetLatestRequirement(){this.latestRequirement=this.getInitialRequirement()}resetLatestElement(){this.latestElement=this.getInitialElement()}getInitialRequirement(){return{requirementId:"",text:"",risk:"",verifyMethod:"",name:"",type:"",cssStyles:[],classes:["default"]}}getInitialElement(){return{name:"",type:"",docRef:"",cssStyles:[],classes:["default"]}}addRequirement(e,r){return this.requirements.has(e)||this.requirements.set(e,{name:e,type:r,requirementId:this.latestRequirement.requirementId,text:this.latestRequirement.text,risk:this.latestRequirement.risk,verifyMethod:this.latestRequirement.verifyMethod,cssStyles:[],classes:["default"]}),this.resetLatestRequirement(),this.requirements.get(e)}getRequirements(){return this.requirements}setNewReqId(e){this.latestRequirement!==void 0&&(this.latestRequirement.requirementId=e)}setNewReqText(e){this.latestRequirement!==void 0&&(this.latestRequirement.text=e)}setNewReqRisk(e){this.latestRequirement!==void 0&&(this.latestRequirement.risk=e)}setNewReqVerifyMethod(e){this.latestRequirement!==void 0&&(this.latestRequirement.verifyMethod=e)}addElement(e){return this.elements.has(e)||(this.elements.set(e,{name:e,type:this.latestElement.type,docRef:this.latestElement.docRef,cssStyles:[],classes:["default"]}),Y.info("Added new element: ",e)),this.resetLatestElement(),this.elements.get(e)}getElements(){return this.elements}setNewElementType(e){this.latestElement!==void 0&&(this.latestElement.type=e)}setNewElementDocRef(e){this.latestElement!==void 0&&(this.latestElement.docRef=e)}addRelationship(e,r,n){this.relations.push({type:e,src:r,dst:n})}getRelationships(){return this.relations}clear(){this.relations=[],this.resetLatestRequirement(),this.requirements=new Map,this.resetLatestElement(),this.elements=new Map,this.classes=new Map,Ar()}setCssStyle(e,r){for(let n of e){let i=this.requirements.get(n)??this.elements.get(n);if(!r||!i)return;for(let a of r)a.includes(",")?i.cssStyles.push(...a.split(",")):i.cssStyles.push(a)}}setClass(e,r){for(let n of e){let i=this.requirements.get(n)??this.elements.get(n);if(i)for(let a of r){i.classes.push(a);let s=this.classes.get(a)?.styles;s&&i.cssStyles.push(...s)}}}defineClass(e,r){for(let n of e){let i=this.classes.get(n);i===void 0&&(i={id:n,styles:[],textStyles:[]},this.classes.set(n,i)),r&&r.forEach(function(a){if(/color/.exec(a)){let s=a.replace("fill","bgFill");i.textStyles.push(s)}i.styles.push(a)}),this.requirements.forEach(a=>{a.classes.includes(n)&&a.cssStyles.push(...r.flatMap(s=>s.split(",")))}),this.elements.forEach(a=>{a.classes.includes(n)&&a.cssStyles.push(...r.flatMap(s=>s.split(",")))})}}getClasses(){return this.classes}getData(){let e=me(),r=[],n=[];for(let i of this.requirements.values()){let a=i;a.id=i.name,a.cssStyles=i.cssStyles,a.cssClasses=i.classes.join(" "),a.shape="requirementBox",a.look=e.look,r.push(a)}for(let i of this.elements.values()){let a=i;a.shape="requirementBox",a.look=e.look,a.id=i.name,a.cssStyles=i.cssStyles,a.cssClasses=i.classes.join(" "),r.push(a)}for(let i of this.relations){let a=0,s=i.type===this.Relationships.CONTAINS,l={id:`${i.src}-${i.dst}-${a}`,start:this.requirements.get(i.src)?.name??this.elements.get(i.src)?.name,end:this.requirements.get(i.dst)?.name??this.elements.get(i.dst)?.name,label:`<<${i.type}>>`,classes:"relationshipLine",style:["fill:none",s?"":"stroke-dasharray: 10,7"],labelpos:"c",thickness:"normal",type:"normal",pattern:s?"normal":"dashed",arrowTypeStart:s?"requirement_contains":"",arrowTypeEnd:s?"":"requirement_arrow",look:e.look};n.push(l),a++}return{nodes:r,edges:n,other:{},config:e,direction:this.getDirection()}}}});var ZGe,tfe,rfe=N(()=>{"use strict";ZGe=o(t=>` + + marker { + fill: ${t.relationColor}; + stroke: ${t.relationColor}; + } + + marker.cross { + stroke: ${t.lineColor}; + } + + svg { + font-family: ${t.fontFamily}; + font-size: ${t.fontSize}; + } + + .reqBox { + fill: ${t.requirementBackground}; + fill-opacity: 1.0; + stroke: ${t.requirementBorderColor}; + stroke-width: ${t.requirementBorderSize}; + } + + .reqTitle, .reqLabel{ + fill: ${t.requirementTextColor}; + } + .reqLabelBox { + fill: ${t.relationLabelBackground}; + fill-opacity: 1.0; + } + + .req-title-line { + stroke: ${t.requirementBorderColor}; + stroke-width: ${t.requirementBorderSize}; + } + .relationshipLine { + stroke: ${t.relationColor}; + stroke-width: 1; + } + .relationshipLabel { + fill: ${t.relationLabelColor}; + } + .divider { + stroke: ${t.nodeBorder}; + stroke-width: 1; + } + .label { + font-family: ${t.fontFamily}; + color: ${t.nodeTextColor||t.textColor}; + } + .label text,span { + fill: ${t.nodeTextColor||t.textColor}; + color: ${t.nodeTextColor||t.textColor}; + } + .labelBkg { + background-color: ${t.edgeLabelBackground}; + } + +`,"getStyles"),tfe=ZGe});var SO={};hr(SO,{draw:()=>JGe});var JGe,nfe=N(()=>{"use strict";zt();vt();gm();Yd();$m();ir();JGe=o(async function(t,e,r,n){Y.info("REF0:"),Y.info("Drawing requirement diagram (unified)",e);let{securityLevel:i,state:a,layout:s}=me(),l=n.db.getData(),u=yc(e,i);l.type=n.type,l.layoutAlgorithm=nf(s),l.nodeSpacing=a?.nodeSpacing??50,l.rankSpacing=a?.rankSpacing??50,l.markers=["requirement_contains","requirement_arrow"],l.diagramId=e,await Cc(l,u);let h=8;Gt.insertTitle(u,"requirementDiagramTitleText",a?.titleTopMargin??25,n.db.getDiagramTitle()),Ac(u,h,"requirementDiagram",a?.useMaxWidth??!0)},"draw")});var ife={};hr(ife,{diagram:()=>eVe});var eVe,afe=N(()=>{"use strict";Jhe();efe();rfe();nfe();eVe={parser:Zhe,get db(){return new A6},renderer:SO,styles:tfe}});var CO,lfe,cfe=N(()=>{"use strict";CO=function(){var t=o(function(K,X,te,J){for(te=te||{},J=K.length;J--;te[K[J]]=X);return te},"o"),e=[1,2],r=[1,3],n=[1,4],i=[2,4],a=[1,9],s=[1,11],l=[1,13],u=[1,14],h=[1,16],f=[1,17],d=[1,18],p=[1,24],m=[1,25],g=[1,26],y=[1,27],v=[1,28],x=[1,29],b=[1,30],w=[1,31],C=[1,32],T=[1,33],E=[1,34],A=[1,35],S=[1,36],_=[1,37],I=[1,38],D=[1,39],k=[1,41],L=[1,42],R=[1,43],O=[1,44],M=[1,45],B=[1,46],F=[1,4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,47,48,49,50,52,53,54,59,60,61,62,70],P=[4,5,16,50,52,53],z=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,50,52,53,54,59,60,61,62,70],$=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,49,50,52,53,54,59,60,61,62,70],H=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,48,50,52,53,54,59,60,61,62,70],Q=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,47,50,52,53,54,59,60,61,62,70],j=[68,69,70],ie=[1,122],ne={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NEWLINE:5,SD:6,document:7,line:8,statement:9,box_section:10,box_line:11,participant_statement:12,create:13,box:14,restOfLine:15,end:16,signal:17,autonumber:18,NUM:19,off:20,activate:21,actor:22,deactivate:23,note_statement:24,links_statement:25,link_statement:26,properties_statement:27,details_statement:28,title:29,legacy_title:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,loop:36,rect:37,opt:38,alt:39,else_sections:40,par:41,par_sections:42,par_over:43,critical:44,option_sections:45,break:46,option:47,and:48,else:49,participant:50,AS:51,participant_actor:52,destroy:53,note:54,placement:55,text2:56,over:57,actor_pair:58,links:59,link:60,properties:61,details:62,spaceList:63,",":64,left_of:65,right_of:66,signaltype:67,"+":68,"-":69,ACTOR:70,SOLID_OPEN_ARROW:71,DOTTED_OPEN_ARROW:72,SOLID_ARROW:73,BIDIRECTIONAL_SOLID_ARROW:74,DOTTED_ARROW:75,BIDIRECTIONAL_DOTTED_ARROW:76,SOLID_CROSS:77,DOTTED_CROSS:78,SOLID_POINT:79,DOTTED_POINT:80,TXT:81,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NEWLINE",6:"SD",13:"create",14:"box",15:"restOfLine",16:"end",18:"autonumber",19:"NUM",20:"off",21:"activate",23:"deactivate",29:"title",30:"legacy_title",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",36:"loop",37:"rect",38:"opt",39:"alt",41:"par",43:"par_over",44:"critical",46:"break",47:"option",48:"and",49:"else",50:"participant",51:"AS",52:"participant_actor",53:"destroy",54:"note",57:"over",59:"links",60:"link",61:"properties",62:"details",64:",",65:"left_of",66:"right_of",68:"+",69:"-",70:"ACTOR",71:"SOLID_OPEN_ARROW",72:"DOTTED_OPEN_ARROW",73:"SOLID_ARROW",74:"BIDIRECTIONAL_SOLID_ARROW",75:"DOTTED_ARROW",76:"BIDIRECTIONAL_DOTTED_ARROW",77:"SOLID_CROSS",78:"DOTTED_CROSS",79:"SOLID_POINT",80:"DOTTED_POINT",81:"TXT"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[10,0],[10,2],[11,2],[11,1],[11,1],[9,1],[9,2],[9,4],[9,2],[9,4],[9,3],[9,3],[9,2],[9,3],[9,3],[9,2],[9,2],[9,2],[9,2],[9,2],[9,1],[9,1],[9,2],[9,2],[9,1],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[45,1],[45,4],[42,1],[42,4],[40,1],[40,4],[12,5],[12,3],[12,5],[12,3],[12,3],[24,4],[24,4],[25,3],[26,3],[27,3],[28,3],[63,2],[63,1],[58,3],[58,1],[55,1],[55,1],[17,5],[17,5],[17,4],[22,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[56,1]],performAction:o(function(X,te,J,se,ue,Z,Se){var ce=Z.length-1;switch(ue){case 3:return se.apply(Z[ce]),Z[ce];break;case 4:case 9:this.$=[];break;case 5:case 10:Z[ce-1].push(Z[ce]),this.$=Z[ce-1];break;case 6:case 7:case 11:case 12:this.$=Z[ce];break;case 8:case 13:this.$=[];break;case 15:Z[ce].type="createParticipant",this.$=Z[ce];break;case 16:Z[ce-1].unshift({type:"boxStart",boxData:se.parseBoxData(Z[ce-2])}),Z[ce-1].push({type:"boxEnd",boxText:Z[ce-2]}),this.$=Z[ce-1];break;case 18:this.$={type:"sequenceIndex",sequenceIndex:Number(Z[ce-2]),sequenceIndexStep:Number(Z[ce-1]),sequenceVisible:!0,signalType:se.LINETYPE.AUTONUMBER};break;case 19:this.$={type:"sequenceIndex",sequenceIndex:Number(Z[ce-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:se.LINETYPE.AUTONUMBER};break;case 20:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:se.LINETYPE.AUTONUMBER};break;case 21:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:se.LINETYPE.AUTONUMBER};break;case 22:this.$={type:"activeStart",signalType:se.LINETYPE.ACTIVE_START,actor:Z[ce-1].actor};break;case 23:this.$={type:"activeEnd",signalType:se.LINETYPE.ACTIVE_END,actor:Z[ce-1].actor};break;case 29:se.setDiagramTitle(Z[ce].substring(6)),this.$=Z[ce].substring(6);break;case 30:se.setDiagramTitle(Z[ce].substring(7)),this.$=Z[ce].substring(7);break;case 31:this.$=Z[ce].trim(),se.setAccTitle(this.$);break;case 32:case 33:this.$=Z[ce].trim(),se.setAccDescription(this.$);break;case 34:Z[ce-1].unshift({type:"loopStart",loopText:se.parseMessage(Z[ce-2]),signalType:se.LINETYPE.LOOP_START}),Z[ce-1].push({type:"loopEnd",loopText:Z[ce-2],signalType:se.LINETYPE.LOOP_END}),this.$=Z[ce-1];break;case 35:Z[ce-1].unshift({type:"rectStart",color:se.parseMessage(Z[ce-2]),signalType:se.LINETYPE.RECT_START}),Z[ce-1].push({type:"rectEnd",color:se.parseMessage(Z[ce-2]),signalType:se.LINETYPE.RECT_END}),this.$=Z[ce-1];break;case 36:Z[ce-1].unshift({type:"optStart",optText:se.parseMessage(Z[ce-2]),signalType:se.LINETYPE.OPT_START}),Z[ce-1].push({type:"optEnd",optText:se.parseMessage(Z[ce-2]),signalType:se.LINETYPE.OPT_END}),this.$=Z[ce-1];break;case 37:Z[ce-1].unshift({type:"altStart",altText:se.parseMessage(Z[ce-2]),signalType:se.LINETYPE.ALT_START}),Z[ce-1].push({type:"altEnd",signalType:se.LINETYPE.ALT_END}),this.$=Z[ce-1];break;case 38:Z[ce-1].unshift({type:"parStart",parText:se.parseMessage(Z[ce-2]),signalType:se.LINETYPE.PAR_START}),Z[ce-1].push({type:"parEnd",signalType:se.LINETYPE.PAR_END}),this.$=Z[ce-1];break;case 39:Z[ce-1].unshift({type:"parStart",parText:se.parseMessage(Z[ce-2]),signalType:se.LINETYPE.PAR_OVER_START}),Z[ce-1].push({type:"parEnd",signalType:se.LINETYPE.PAR_END}),this.$=Z[ce-1];break;case 40:Z[ce-1].unshift({type:"criticalStart",criticalText:se.parseMessage(Z[ce-2]),signalType:se.LINETYPE.CRITICAL_START}),Z[ce-1].push({type:"criticalEnd",signalType:se.LINETYPE.CRITICAL_END}),this.$=Z[ce-1];break;case 41:Z[ce-1].unshift({type:"breakStart",breakText:se.parseMessage(Z[ce-2]),signalType:se.LINETYPE.BREAK_START}),Z[ce-1].push({type:"breakEnd",optText:se.parseMessage(Z[ce-2]),signalType:se.LINETYPE.BREAK_END}),this.$=Z[ce-1];break;case 43:this.$=Z[ce-3].concat([{type:"option",optionText:se.parseMessage(Z[ce-1]),signalType:se.LINETYPE.CRITICAL_OPTION},Z[ce]]);break;case 45:this.$=Z[ce-3].concat([{type:"and",parText:se.parseMessage(Z[ce-1]),signalType:se.LINETYPE.PAR_AND},Z[ce]]);break;case 47:this.$=Z[ce-3].concat([{type:"else",altText:se.parseMessage(Z[ce-1]),signalType:se.LINETYPE.ALT_ELSE},Z[ce]]);break;case 48:Z[ce-3].draw="participant",Z[ce-3].type="addParticipant",Z[ce-3].description=se.parseMessage(Z[ce-1]),this.$=Z[ce-3];break;case 49:Z[ce-1].draw="participant",Z[ce-1].type="addParticipant",this.$=Z[ce-1];break;case 50:Z[ce-3].draw="actor",Z[ce-3].type="addParticipant",Z[ce-3].description=se.parseMessage(Z[ce-1]),this.$=Z[ce-3];break;case 51:Z[ce-1].draw="actor",Z[ce-1].type="addParticipant",this.$=Z[ce-1];break;case 52:Z[ce-1].type="destroyParticipant",this.$=Z[ce-1];break;case 53:this.$=[Z[ce-1],{type:"addNote",placement:Z[ce-2],actor:Z[ce-1].actor,text:Z[ce]}];break;case 54:Z[ce-2]=[].concat(Z[ce-1],Z[ce-1]).slice(0,2),Z[ce-2][0]=Z[ce-2][0].actor,Z[ce-2][1]=Z[ce-2][1].actor,this.$=[Z[ce-1],{type:"addNote",placement:se.PLACEMENT.OVER,actor:Z[ce-2].slice(0,2),text:Z[ce]}];break;case 55:this.$=[Z[ce-1],{type:"addLinks",actor:Z[ce-1].actor,text:Z[ce]}];break;case 56:this.$=[Z[ce-1],{type:"addALink",actor:Z[ce-1].actor,text:Z[ce]}];break;case 57:this.$=[Z[ce-1],{type:"addProperties",actor:Z[ce-1].actor,text:Z[ce]}];break;case 58:this.$=[Z[ce-1],{type:"addDetails",actor:Z[ce-1].actor,text:Z[ce]}];break;case 61:this.$=[Z[ce-2],Z[ce]];break;case 62:this.$=Z[ce];break;case 63:this.$=se.PLACEMENT.LEFTOF;break;case 64:this.$=se.PLACEMENT.RIGHTOF;break;case 65:this.$=[Z[ce-4],Z[ce-1],{type:"addMessage",from:Z[ce-4].actor,to:Z[ce-1].actor,signalType:Z[ce-3],msg:Z[ce],activate:!0},{type:"activeStart",signalType:se.LINETYPE.ACTIVE_START,actor:Z[ce-1].actor}];break;case 66:this.$=[Z[ce-4],Z[ce-1],{type:"addMessage",from:Z[ce-4].actor,to:Z[ce-1].actor,signalType:Z[ce-3],msg:Z[ce]},{type:"activeEnd",signalType:se.LINETYPE.ACTIVE_END,actor:Z[ce-4].actor}];break;case 67:this.$=[Z[ce-3],Z[ce-1],{type:"addMessage",from:Z[ce-3].actor,to:Z[ce-1].actor,signalType:Z[ce-2],msg:Z[ce]}];break;case 68:this.$={type:"addParticipant",actor:Z[ce]};break;case 69:this.$=se.LINETYPE.SOLID_OPEN;break;case 70:this.$=se.LINETYPE.DOTTED_OPEN;break;case 71:this.$=se.LINETYPE.SOLID;break;case 72:this.$=se.LINETYPE.BIDIRECTIONAL_SOLID;break;case 73:this.$=se.LINETYPE.DOTTED;break;case 74:this.$=se.LINETYPE.BIDIRECTIONAL_DOTTED;break;case 75:this.$=se.LINETYPE.SOLID_CROSS;break;case 76:this.$=se.LINETYPE.DOTTED_CROSS;break;case 77:this.$=se.LINETYPE.SOLID_POINT;break;case 78:this.$=se.LINETYPE.DOTTED_POINT;break;case 79:this.$=se.parseMessage(Z[ce].trim().substring(1));break}},"anonymous"),table:[{3:1,4:e,5:r,6:n},{1:[3]},{3:5,4:e,5:r,6:n},{3:6,4:e,5:r,6:n},t([1,4,5,13,14,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,50,52,53,54,59,60,61,62,70],i,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:a,5:s,8:8,9:10,12:12,13:l,14:u,17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:C,41:T,43:E,44:A,46:S,50:_,52:I,53:D,54:k,59:L,60:R,61:O,62:M,70:B},t(F,[2,5]),{9:47,12:12,13:l,14:u,17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:C,41:T,43:E,44:A,46:S,50:_,52:I,53:D,54:k,59:L,60:R,61:O,62:M,70:B},t(F,[2,7]),t(F,[2,8]),t(F,[2,14]),{12:48,50:_,52:I,53:D},{15:[1,49]},{5:[1,50]},{5:[1,53],19:[1,51],20:[1,52]},{22:54,70:B},{22:55,70:B},{5:[1,56]},{5:[1,57]},{5:[1,58]},{5:[1,59]},{5:[1,60]},t(F,[2,29]),t(F,[2,30]),{32:[1,61]},{34:[1,62]},t(F,[2,33]),{15:[1,63]},{15:[1,64]},{15:[1,65]},{15:[1,66]},{15:[1,67]},{15:[1,68]},{15:[1,69]},{15:[1,70]},{22:71,70:B},{22:72,70:B},{22:73,70:B},{67:74,71:[1,75],72:[1,76],73:[1,77],74:[1,78],75:[1,79],76:[1,80],77:[1,81],78:[1,82],79:[1,83],80:[1,84]},{55:85,57:[1,86],65:[1,87],66:[1,88]},{22:89,70:B},{22:90,70:B},{22:91,70:B},{22:92,70:B},t([5,51,64,71,72,73,74,75,76,77,78,79,80,81],[2,68]),t(F,[2,6]),t(F,[2,15]),t(P,[2,9],{10:93}),t(F,[2,17]),{5:[1,95],19:[1,94]},{5:[1,96]},t(F,[2,21]),{5:[1,97]},{5:[1,98]},t(F,[2,24]),t(F,[2,25]),t(F,[2,26]),t(F,[2,27]),t(F,[2,28]),t(F,[2,31]),t(F,[2,32]),t(z,i,{7:99}),t(z,i,{7:100}),t(z,i,{7:101}),t($,i,{40:102,7:103}),t(H,i,{42:104,7:105}),t(H,i,{7:105,42:106}),t(Q,i,{45:107,7:108}),t(z,i,{7:109}),{5:[1,111],51:[1,110]},{5:[1,113],51:[1,112]},{5:[1,114]},{22:117,68:[1,115],69:[1,116],70:B},t(j,[2,69]),t(j,[2,70]),t(j,[2,71]),t(j,[2,72]),t(j,[2,73]),t(j,[2,74]),t(j,[2,75]),t(j,[2,76]),t(j,[2,77]),t(j,[2,78]),{22:118,70:B},{22:120,58:119,70:B},{70:[2,63]},{70:[2,64]},{56:121,81:ie},{56:123,81:ie},{56:124,81:ie},{56:125,81:ie},{4:[1,128],5:[1,130],11:127,12:129,16:[1,126],50:_,52:I,53:D},{5:[1,131]},t(F,[2,19]),t(F,[2,20]),t(F,[2,22]),t(F,[2,23]),{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[1,132],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:C,41:T,43:E,44:A,46:S,50:_,52:I,53:D,54:k,59:L,60:R,61:O,62:M,70:B},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[1,133],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:C,41:T,43:E,44:A,46:S,50:_,52:I,53:D,54:k,59:L,60:R,61:O,62:M,70:B},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[1,134],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:C,41:T,43:E,44:A,46:S,50:_,52:I,53:D,54:k,59:L,60:R,61:O,62:M,70:B},{16:[1,135]},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[2,46],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:C,41:T,43:E,44:A,46:S,49:[1,136],50:_,52:I,53:D,54:k,59:L,60:R,61:O,62:M,70:B},{16:[1,137]},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[2,44],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:C,41:T,43:E,44:A,46:S,48:[1,138],50:_,52:I,53:D,54:k,59:L,60:R,61:O,62:M,70:B},{16:[1,139]},{16:[1,140]},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[2,42],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:C,41:T,43:E,44:A,46:S,47:[1,141],50:_,52:I,53:D,54:k,59:L,60:R,61:O,62:M,70:B},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[1,142],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:C,41:T,43:E,44:A,46:S,50:_,52:I,53:D,54:k,59:L,60:R,61:O,62:M,70:B},{15:[1,143]},t(F,[2,49]),{15:[1,144]},t(F,[2,51]),t(F,[2,52]),{22:145,70:B},{22:146,70:B},{56:147,81:ie},{56:148,81:ie},{56:149,81:ie},{64:[1,150],81:[2,62]},{5:[2,55]},{5:[2,79]},{5:[2,56]},{5:[2,57]},{5:[2,58]},t(F,[2,16]),t(P,[2,10]),{12:151,50:_,52:I,53:D},t(P,[2,12]),t(P,[2,13]),t(F,[2,18]),t(F,[2,34]),t(F,[2,35]),t(F,[2,36]),t(F,[2,37]),{15:[1,152]},t(F,[2,38]),{15:[1,153]},t(F,[2,39]),t(F,[2,40]),{15:[1,154]},t(F,[2,41]),{5:[1,155]},{5:[1,156]},{56:157,81:ie},{56:158,81:ie},{5:[2,67]},{5:[2,53]},{5:[2,54]},{22:159,70:B},t(P,[2,11]),t($,i,{7:103,40:160}),t(H,i,{7:105,42:161}),t(Q,i,{7:108,45:162}),t(F,[2,48]),t(F,[2,50]),{5:[2,65]},{5:[2,66]},{81:[2,61]},{16:[2,47]},{16:[2,45]},{16:[2,43]}],defaultActions:{5:[2,1],6:[2,2],87:[2,63],88:[2,64],121:[2,55],122:[2,79],123:[2,56],124:[2,57],125:[2,58],147:[2,67],148:[2,53],149:[2,54],157:[2,65],158:[2,66],159:[2,61],160:[2,47],161:[2,45],162:[2,43]},parseError:o(function(X,te){if(te.recoverable)this.trace(X);else{var J=new Error(X);throw J.hash=te,J}},"parseError"),parse:o(function(X){var te=this,J=[0],se=[],ue=[null],Z=[],Se=this.table,ce="",ae=0,Oe=0,ge=0,ze=2,He=1,$e=Z.slice.call(arguments,1),Re=Object.create(this.lexer),Ie={yy:{}};for(var be in this.yy)Object.prototype.hasOwnProperty.call(this.yy,be)&&(Ie.yy[be]=this.yy[be]);Re.setInput(X,Ie.yy),Ie.yy.lexer=Re,Ie.yy.parser=this,typeof Re.yylloc>"u"&&(Re.yylloc={});var W=Re.yylloc;Z.push(W);var de=Re.options&&Re.options.ranges;typeof Ie.yy.parseError=="function"?this.parseError=Ie.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function re(Rt){J.length=J.length-2*Rt,ue.length=ue.length-Rt,Z.length=Z.length-Rt}o(re,"popStack");function oe(){var Rt;return Rt=se.pop()||Re.lex()||He,typeof Rt!="number"&&(Rt instanceof Array&&(se=Rt,Rt=se.pop()),Rt=te.symbols_[Rt]||Rt),Rt}o(oe,"lex");for(var V,xe,q,pe,ve,Pe,_e={},we,Ve,De,qe;;){if(q=J[J.length-1],this.defaultActions[q]?pe=this.defaultActions[q]:((V===null||typeof V>"u")&&(V=oe()),pe=Se[q]&&Se[q][V]),typeof pe>"u"||!pe.length||!pe[0]){var at="";qe=[];for(we in Se[q])this.terminals_[we]&&we>ze&&qe.push("'"+this.terminals_[we]+"'");Re.showPosition?at="Parse error on line "+(ae+1)+`: +`+Re.showPosition()+` +Expecting `+qe.join(", ")+", got '"+(this.terminals_[V]||V)+"'":at="Parse error on line "+(ae+1)+": Unexpected "+(V==He?"end of input":"'"+(this.terminals_[V]||V)+"'"),this.parseError(at,{text:Re.match,token:this.terminals_[V]||V,line:Re.yylineno,loc:W,expected:qe})}if(pe[0]instanceof Array&&pe.length>1)throw new Error("Parse Error: multiple actions possible at state: "+q+", token: "+V);switch(pe[0]){case 1:J.push(V),ue.push(Re.yytext),Z.push(Re.yylloc),J.push(pe[1]),V=null,xe?(V=xe,xe=null):(Oe=Re.yyleng,ce=Re.yytext,ae=Re.yylineno,W=Re.yylloc,ge>0&&ge--);break;case 2:if(Ve=this.productions_[pe[1]][1],_e.$=ue[ue.length-Ve],_e._$={first_line:Z[Z.length-(Ve||1)].first_line,last_line:Z[Z.length-1].last_line,first_column:Z[Z.length-(Ve||1)].first_column,last_column:Z[Z.length-1].last_column},de&&(_e._$.range=[Z[Z.length-(Ve||1)].range[0],Z[Z.length-1].range[1]]),Pe=this.performAction.apply(_e,[ce,Oe,ae,Ie.yy,pe[1],ue,Z].concat($e)),typeof Pe<"u")return Pe;Ve&&(J=J.slice(0,-1*Ve*2),ue=ue.slice(0,-1*Ve),Z=Z.slice(0,-1*Ve)),J.push(this.productions_[pe[1]][0]),ue.push(_e.$),Z.push(_e._$),De=Se[J[J.length-2]][J[J.length-1]],J.push(De);break;case 3:return!0}}return!0},"parse")},le=function(){var K={EOF:1,parseError:o(function(te,J){if(this.yy.parser)this.yy.parser.parseError(te,J);else throw new Error(te)},"parseError"),setInput:o(function(X,te){return this.yy=te||this.yy||{},this._input=X,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var X=this._input[0];this.yytext+=X,this.yyleng++,this.offset++,this.match+=X,this.matched+=X;var te=X.match(/(?:\r\n?|\n).*/g);return te?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),X},"input"),unput:o(function(X){var te=X.length,J=X.split(/(?:\r\n?|\n)/g);this._input=X+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-te),this.offset-=te;var se=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),J.length-1&&(this.yylineno-=J.length-1);var ue=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:J?(J.length===se.length?this.yylloc.first_column:0)+se[se.length-J.length].length-J[0].length:this.yylloc.first_column-te},this.options.ranges&&(this.yylloc.range=[ue[0],ue[0]+this.yyleng-te]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(X){this.unput(this.match.slice(X))},"less"),pastInput:o(function(){var X=this.matched.substr(0,this.matched.length-this.match.length);return(X.length>20?"...":"")+X.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var X=this.match;return X.length<20&&(X+=this._input.substr(0,20-X.length)),(X.substr(0,20)+(X.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var X=this.pastInput(),te=new Array(X.length+1).join("-");return X+this.upcomingInput()+` +`+te+"^"},"showPosition"),test_match:o(function(X,te){var J,se,ue;if(this.options.backtrack_lexer&&(ue={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(ue.yylloc.range=this.yylloc.range.slice(0))),se=X[0].match(/(?:\r\n?|\n).*/g),se&&(this.yylineno+=se.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:se?se[se.length-1].length-se[se.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+X[0].length},this.yytext+=X[0],this.match+=X[0],this.matches=X,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(X[0].length),this.matched+=X[0],J=this.performAction.call(this,this.yy,this,te,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),J)return J;if(this._backtrack){for(var Z in ue)this[Z]=ue[Z];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var X,te,J,se;this._more||(this.yytext="",this.match="");for(var ue=this._currentRules(),Z=0;Zte[0].length)){if(te=J,se=Z,this.options.backtrack_lexer){if(X=this.test_match(J,ue[Z]),X!==!1)return X;if(this._backtrack){te=!1;continue}else return!1}else if(!this.options.flex)break}return te?(X=this.test_match(te,ue[se]),X!==!1?X:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var te=this.next();return te||this.lex()},"lex"),begin:o(function(te){this.conditionStack.push(te)},"begin"),popState:o(function(){var te=this.conditionStack.length-1;return te>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(te){return te=this.conditionStack.length-1-Math.abs(te||0),te>=0?this.conditionStack[te]:"INITIAL"},"topState"),pushState:o(function(te){this.begin(te)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(te,J,se,ue){var Z=ue;switch(se){case 0:return 5;case 1:break;case 2:break;case 3:break;case 4:break;case 5:break;case 6:return 19;case 7:return this.begin("LINE"),14;break;case 8:return this.begin("ID"),50;break;case 9:return this.begin("ID"),52;break;case 10:return 13;case 11:return this.begin("ID"),53;break;case 12:return J.yytext=J.yytext.trim(),this.begin("ALIAS"),70;break;case 13:return this.popState(),this.popState(),this.begin("LINE"),51;break;case 14:return this.popState(),this.popState(),5;break;case 15:return this.begin("LINE"),36;break;case 16:return this.begin("LINE"),37;break;case 17:return this.begin("LINE"),38;break;case 18:return this.begin("LINE"),39;break;case 19:return this.begin("LINE"),49;break;case 20:return this.begin("LINE"),41;break;case 21:return this.begin("LINE"),43;break;case 22:return this.begin("LINE"),48;break;case 23:return this.begin("LINE"),44;break;case 24:return this.begin("LINE"),47;break;case 25:return this.begin("LINE"),46;break;case 26:return this.popState(),15;break;case 27:return 16;case 28:return 65;case 29:return 66;case 30:return 59;case 31:return 60;case 32:return 61;case 33:return 62;case 34:return 57;case 35:return 54;case 36:return this.begin("ID"),21;break;case 37:return this.begin("ID"),23;break;case 38:return 29;case 39:return 30;case 40:return this.begin("acc_title"),31;break;case 41:return this.popState(),"acc_title_value";break;case 42:return this.begin("acc_descr"),33;break;case 43:return this.popState(),"acc_descr_value";break;case 44:this.begin("acc_descr_multiline");break;case 45:this.popState();break;case 46:return"acc_descr_multiline_value";case 47:return 6;case 48:return 18;case 49:return 20;case 50:return 64;case 51:return 5;case 52:return J.yytext=J.yytext.trim(),70;break;case 53:return 73;case 54:return 74;case 55:return 75;case 56:return 76;case 57:return 71;case 58:return 72;case 59:return 77;case 60:return 78;case 61:return 79;case 62:return 80;case 63:return 81;case 64:return 68;case 65:return 69;case 66:return 5;case 67:return"INVALID"}},"anonymous"),rules:[/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[0-9]+(?=[ \n]+))/i,/^(?:box\b)/i,/^(?:participant\b)/i,/^(?:actor\b)/i,/^(?:create\b)/i,/^(?:destroy\b)/i,/^(?:[^\<->\->:\n,;]+?([\-]*[^\<->\->:\n,;]+?)*?(?=((?!\n)\s)+as(?!\n)\s|[#\n;]|$))/i,/^(?:as\b)/i,/^(?:(?:))/i,/^(?:loop\b)/i,/^(?:rect\b)/i,/^(?:opt\b)/i,/^(?:alt\b)/i,/^(?:else\b)/i,/^(?:par\b)/i,/^(?:par_over\b)/i,/^(?:and\b)/i,/^(?:critical\b)/i,/^(?:option\b)/i,/^(?:break\b)/i,/^(?:(?:[:]?(?:no)?wrap)?[^#\n;]*)/i,/^(?:end\b)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:links\b)/i,/^(?:link\b)/i,/^(?:properties\b)/i,/^(?:details\b)/i,/^(?:over\b)/i,/^(?:note\b)/i,/^(?:activate\b)/i,/^(?:deactivate\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:title:\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:sequenceDiagram\b)/i,/^(?:autonumber\b)/i,/^(?:off\b)/i,/^(?:,)/i,/^(?:;)/i,/^(?:[^\+\<->\->:\n,;]+((?!(-x|--x|-\)|--\)))[\-]*[^\+\<->\->:\n,;]+)*)/i,/^(?:->>)/i,/^(?:<<->>)/i,/^(?:-->>)/i,/^(?:<<-->>)/i,/^(?:->)/i,/^(?:-->)/i,/^(?:-[x])/i,/^(?:--[x])/i,/^(?:-[\)])/i,/^(?:--[\)])/i,/^(?::(?:(?:no)?wrap)?[^#\n;]+)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[45,46],inclusive:!1},acc_descr:{rules:[43],inclusive:!1},acc_title:{rules:[41],inclusive:!1},ID:{rules:[2,3,12],inclusive:!1},ALIAS:{rules:[2,3,13,14],inclusive:!1},LINE:{rules:[2,3,26],inclusive:!1},INITIAL:{rules:[0,1,3,4,5,6,7,8,9,10,11,15,16,17,18,19,20,21,22,23,24,25,27,28,29,30,31,32,33,34,35,36,37,38,39,40,42,44,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67],inclusive:!0}}};return K}();ne.lexer=le;function he(){this.yy={}}return o(he,"Parser"),he.prototype=ne,ne.Parser=he,new he}();CO.parser=CO;lfe=CO});var iVe,aVe,sVe,_6,ufe=N(()=>{"use strict";zt();vt();s6();gr();mi();iVe={SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25,AUTONUMBER:26,CRITICAL_START:27,CRITICAL_OPTION:28,CRITICAL_END:29,BREAK_START:30,BREAK_END:31,PAR_OVER_START:32,BIDIRECTIONAL_SOLID:33,BIDIRECTIONAL_DOTTED:34},aVe={FILLED:0,OPEN:1},sVe={LEFTOF:0,RIGHTOF:1,OVER:2},_6=class{constructor(){this.state=new pf(()=>({prevActor:void 0,actors:new Map,createdActors:new Map,destroyedActors:new Map,boxes:[],messages:[],notes:[],sequenceNumbersEnabled:!1,wrapEnabled:void 0,currentBox:void 0,lastCreated:void 0,lastDestroyed:void 0}));this.setAccTitle=Lr;this.setAccDescription=Nr;this.setDiagramTitle=$r;this.getAccTitle=Rr;this.getAccDescription=Mr;this.getDiagramTitle=Ir;this.apply=this.apply.bind(this),this.parseBoxData=this.parseBoxData.bind(this),this.parseMessage=this.parseMessage.bind(this),this.clear(),this.setWrap(me().wrap),this.LINETYPE=iVe,this.ARROWTYPE=aVe,this.PLACEMENT=sVe}static{o(this,"SequenceDB")}addBox(e){this.state.records.boxes.push({name:e.text,wrap:e.wrap??this.autoWrap(),fill:e.color,actorKeys:[]}),this.state.records.currentBox=this.state.records.boxes.slice(-1)[0]}addActor(e,r,n,i){let a=this.state.records.currentBox,s=this.state.records.actors.get(e);if(s){if(this.state.records.currentBox&&s.box&&this.state.records.currentBox!==s.box)throw new Error(`A same participant should only be defined in one Box: ${s.name} can't be in '${s.box.name}' and in '${this.state.records.currentBox.name}' at the same time.`);if(a=s.box?s.box:this.state.records.currentBox,s.box=a,s&&r===s.name&&n==null)return}if(n?.text==null&&(n={text:r,type:i}),(i==null||n.text==null)&&(n={text:r,type:i}),this.state.records.actors.set(e,{box:a,name:r,description:n.text,wrap:n.wrap??this.autoWrap(),prevActor:this.state.records.prevActor,links:{},properties:{},actorCnt:null,rectData:null,type:i??"participant"}),this.state.records.prevActor){let l=this.state.records.actors.get(this.state.records.prevActor);l&&(l.nextActor=e)}this.state.records.currentBox&&this.state.records.currentBox.actorKeys.push(e),this.state.records.prevActor=e}activationCount(e){let r,n=0;if(!e)return 0;for(r=0;r>-",token:"->>-",line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["'ACTIVE_PARTICIPANT'"]},l}return this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:e,to:r,message:n?.text??"",wrap:n?.wrap??this.autoWrap(),type:i,activate:a}),!0}hasAtLeastOneBox(){return this.state.records.boxes.length>0}hasAtLeastOneBoxWithTitle(){return this.state.records.boxes.some(e=>e.name)}getMessages(){return this.state.records.messages}getBoxes(){return this.state.records.boxes}getActors(){return this.state.records.actors}getCreatedActors(){return this.state.records.createdActors}getDestroyedActors(){return this.state.records.destroyedActors}getActor(e){return this.state.records.actors.get(e)}getActorKeys(){return[...this.state.records.actors.keys()]}enableSequenceNumbers(){this.state.records.sequenceNumbersEnabled=!0}disableSequenceNumbers(){this.state.records.sequenceNumbersEnabled=!1}showSequenceNumbers(){return this.state.records.sequenceNumbersEnabled}setWrap(e){this.state.records.wrapEnabled=e}extractWrap(e){if(e===void 0)return{};e=e.trim();let r=/^:?wrap:/.exec(e)!==null?!0:/^:?nowrap:/.exec(e)!==null?!1:void 0;return{cleanedText:(r===void 0?e:e.replace(/^:?(?:no)?wrap:/,"")).trim(),wrap:r}}autoWrap(){return this.state.records.wrapEnabled!==void 0?this.state.records.wrapEnabled:me().sequence?.wrap??!1}clear(){this.state.reset(),Ar()}parseMessage(e){let r=e.trim(),{wrap:n,cleanedText:i}=this.extractWrap(r),a={text:i,wrap:n};return Y.debug(`parseMessage: ${JSON.stringify(a)}`),a}parseBoxData(e){let r=/^((?:rgba?|hsla?)\s*\(.*\)|\w*)(.*)$/.exec(e),n=r?.[1]?r[1].trim():"transparent",i=r?.[2]?r[2].trim():void 0;if(window?.CSS)window.CSS.supports("color",n)||(n="transparent",i=e.trim());else{let l=new Option().style;l.color=n,l.color!==n&&(n="transparent",i=e.trim())}let{wrap:a,cleanedText:s}=this.extractWrap(i);return{text:s?Tr(s,me()):void 0,color:n,wrap:a}}addNote(e,r,n){let i={actor:e,placement:r,message:n.text,wrap:n.wrap??this.autoWrap()},a=[].concat(e,e);this.state.records.notes.push(i),this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:a[0],to:a[1],message:n.text,wrap:n.wrap??this.autoWrap(),type:this.LINETYPE.NOTE,placement:r})}addLinks(e,r){let n=this.getActor(e);try{let i=Tr(r.text,me());i=i.replace(/=/g,"="),i=i.replace(/&/g,"&");let a=JSON.parse(i);this.insertLinks(n,a)}catch(i){Y.error("error while parsing actor link text",i)}}addALink(e,r){let n=this.getActor(e);try{let i={},a=Tr(r.text,me()),s=a.indexOf("@");a=a.replace(/=/g,"="),a=a.replace(/&/g,"&");let l=a.slice(0,s-1).trim(),u=a.slice(s+1).trim();i[l]=u,this.insertLinks(n,i)}catch(i){Y.error("error while parsing actor link text",i)}}insertLinks(e,r){if(e.links==null)e.links=r;else for(let n in r)e.links[n]=r[n]}addProperties(e,r){let n=this.getActor(e);try{let i=Tr(r.text,me()),a=JSON.parse(i);this.insertProperties(n,a)}catch(i){Y.error("error while parsing actor properties text",i)}}insertProperties(e,r){if(e.properties==null)e.properties=r;else for(let n in r)e.properties[n]=r[n]}boxEnd(){this.state.records.currentBox=void 0}addDetails(e,r){let n=this.getActor(e),i=document.getElementById(r.text);try{let a=i.innerHTML,s=JSON.parse(a);s.properties&&this.insertProperties(n,s.properties),s.links&&this.insertLinks(n,s.links)}catch(a){Y.error("error while parsing actor details text",a)}}getActorProperty(e,r){if(e?.properties!==void 0)return e.properties[r]}apply(e){if(Array.isArray(e))e.forEach(r=>{this.apply(r)});else switch(e.type){case"sequenceIndex":this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:void 0,to:void 0,message:{start:e.sequenceIndex,step:e.sequenceIndexStep,visible:e.sequenceVisible},wrap:!1,type:e.signalType});break;case"addParticipant":this.addActor(e.actor,e.actor,e.description,e.draw);break;case"createParticipant":if(this.state.records.actors.has(e.actor))throw new Error("It is not possible to have actors with the same id, even if one is destroyed before the next is created. Use 'AS' aliases to simulate the behavior");this.state.records.lastCreated=e.actor,this.addActor(e.actor,e.actor,e.description,e.draw),this.state.records.createdActors.set(e.actor,this.state.records.messages.length);break;case"destroyParticipant":this.state.records.lastDestroyed=e.actor,this.state.records.destroyedActors.set(e.actor,this.state.records.messages.length);break;case"activeStart":this.addSignal(e.actor,void 0,void 0,e.signalType);break;case"activeEnd":this.addSignal(e.actor,void 0,void 0,e.signalType);break;case"addNote":this.addNote(e.actor,e.placement,e.text);break;case"addLinks":this.addLinks(e.actor,e.text);break;case"addALink":this.addALink(e.actor,e.text);break;case"addProperties":this.addProperties(e.actor,e.text);break;case"addDetails":this.addDetails(e.actor,e.text);break;case"addMessage":if(this.state.records.lastCreated){if(e.to!==this.state.records.lastCreated)throw new Error("The created participant "+this.state.records.lastCreated.name+" does not have an associated creating message after its declaration. Please check the sequence diagram.");this.state.records.lastCreated=void 0}else if(this.state.records.lastDestroyed){if(e.to!==this.state.records.lastDestroyed&&e.from!==this.state.records.lastDestroyed)throw new Error("The destroyed participant "+this.state.records.lastDestroyed.name+" does not have an associated destroying message after its declaration. Please check the sequence diagram.");this.state.records.lastDestroyed=void 0}this.addSignal(e.from,e.to,e.msg,e.signalType,e.activate);break;case"boxStart":this.addBox(e.boxData);break;case"boxEnd":this.boxEnd();break;case"loopStart":this.addSignal(void 0,void 0,e.loopText,e.signalType);break;case"loopEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"rectStart":this.addSignal(void 0,void 0,e.color,e.signalType);break;case"rectEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"optStart":this.addSignal(void 0,void 0,e.optText,e.signalType);break;case"optEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"altStart":this.addSignal(void 0,void 0,e.altText,e.signalType);break;case"else":this.addSignal(void 0,void 0,e.altText,e.signalType);break;case"altEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"setAccTitle":Lr(e.text);break;case"parStart":this.addSignal(void 0,void 0,e.parText,e.signalType);break;case"and":this.addSignal(void 0,void 0,e.parText,e.signalType);break;case"parEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"criticalStart":this.addSignal(void 0,void 0,e.criticalText,e.signalType);break;case"option":this.addSignal(void 0,void 0,e.optionText,e.signalType);break;case"criticalEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"breakStart":this.addSignal(void 0,void 0,e.breakText,e.signalType);break;case"breakEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break}}getConfig(){return me().sequence}}});var oVe,hfe,ffe=N(()=>{"use strict";oVe=o(t=>`.actor { + stroke: ${t.actorBorder}; + fill: ${t.actorBkg}; + } + + text.actor > tspan { + fill: ${t.actorTextColor}; + stroke: none; + } + + .actor-line { + stroke: ${t.actorLineColor}; + } + + .messageLine0 { + stroke-width: 1.5; + stroke-dasharray: none; + stroke: ${t.signalColor}; + } + + .messageLine1 { + stroke-width: 1.5; + stroke-dasharray: 2, 2; + stroke: ${t.signalColor}; + } + + #arrowhead path { + fill: ${t.signalColor}; + stroke: ${t.signalColor}; + } + + .sequenceNumber { + fill: ${t.sequenceNumberColor}; + } + + #sequencenumber { + fill: ${t.signalColor}; + } + + #crosshead path { + fill: ${t.signalColor}; + stroke: ${t.signalColor}; + } + + .messageText { + fill: ${t.signalTextColor}; + stroke: none; + } + + .labelBox { + stroke: ${t.labelBoxBorderColor}; + fill: ${t.labelBoxBkgColor}; + } + + .labelText, .labelText > tspan { + fill: ${t.labelTextColor}; + stroke: none; + } + + .loopText, .loopText > tspan { + fill: ${t.loopTextColor}; + stroke: none; + } + + .loopLine { + stroke-width: 2px; + stroke-dasharray: 2, 2; + stroke: ${t.labelBoxBorderColor}; + fill: ${t.labelBoxBorderColor}; + } + + .note { + //stroke: #decc93; + stroke: ${t.noteBorderColor}; + fill: ${t.noteBkgColor}; + } + + .noteText, .noteText > tspan { + fill: ${t.noteTextColor}; + stroke: none; + } + + .activation0 { + fill: ${t.activationBkgColor}; + stroke: ${t.activationBorderColor}; + } + + .activation1 { + fill: ${t.activationBkgColor}; + stroke: ${t.activationBorderColor}; + } + + .activation2 { + fill: ${t.activationBkgColor}; + stroke: ${t.activationBorderColor}; + } + + .actorPopupMenu { + position: absolute; + } + + .actorPopupMenuPanel { + position: absolute; + fill: ${t.actorBkg}; + box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); + filter: drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4)); +} + .actor-man line { + stroke: ${t.actorBorder}; + fill: ${t.actorBkg}; + } + .actor-man circle, line { + stroke: ${t.actorBorder}; + fill: ${t.actorBkg}; + stroke-width: 2px; + } +`,"getStyles"),hfe=oVe});var AO,vf,pfe,mfe,lVe,dfe,_O,cVe,uVe,Tb,_p,gfe,Uc,DO,hVe,fVe,dVe,pVe,mVe,gVe,yVe,yfe,vVe,xVe,bVe,wVe,TVe,kVe,EVe,vfe,SVe,LO,CVe,hi,xfe=N(()=>{"use strict";gr();Wv();ir();AO=Sa(z0(),1);ji();vf=18*2,pfe="actor-top",mfe="actor-bottom",lVe="actor-box",dfe="actor-man",_O=o(function(t,e){return kd(t,e)},"drawRect"),cVe=o(function(t,e,r,n,i){if(e.links===void 0||e.links===null||Object.keys(e.links).length===0)return{height:0,width:0};let a=e.links,s=e.actorCnt,l=e.rectData;var u="none";i&&(u="block !important");let h=t.append("g");h.attr("id","actor"+s+"_popup"),h.attr("class","actorPopupMenu"),h.attr("display",u);var f="";l.class!==void 0&&(f=" "+l.class);let d=l.width>r?l.width:r,p=h.append("rect");if(p.attr("class","actorPopupMenuPanel"+f),p.attr("x",l.x),p.attr("y",l.height),p.attr("fill",l.fill),p.attr("stroke",l.stroke),p.attr("width",d),p.attr("height",l.height),p.attr("rx",l.rx),p.attr("ry",l.ry),a!=null){var m=20;for(let v in a){var g=h.append("a"),y=(0,AO.sanitizeUrl)(a[v]);g.attr("xlink:href",y),g.attr("target","_blank"),CVe(n)(v,g,l.x+10,l.height+m,d,20,{class:"actor"},n),m+=30}}return p.attr("height",m),{height:l.height+m,width:d}},"drawPopup"),uVe=o(function(t){return"var pu = document.getElementById('"+t+"'); if (pu != null) { pu.style.display = pu.style.display == 'block' ? 'none' : 'block'; }"},"popupMenuToggle"),Tb=o(async function(t,e,r=null){let n=t.append("foreignObject"),i=await mh(e.text,cr()),s=n.append("xhtml:div").attr("style","width: fit-content;").attr("xmlns","http://www.w3.org/1999/xhtml").html(i).node().getBoundingClientRect();if(n.attr("height",Math.round(s.height)).attr("width",Math.round(s.width)),e.class==="noteText"){let l=t.node().firstChild;l.setAttribute("height",s.height+2*e.textMargin);let u=l.getBBox();n.attr("x",Math.round(u.x+u.width/2-s.width/2)).attr("y",Math.round(u.y+u.height/2-s.height/2))}else if(r){let{startx:l,stopx:u,starty:h}=r;if(l>u){let f=l;l=u,u=f}n.attr("x",Math.round(l+Math.abs(l-u)/2-s.width/2)),e.class==="loopText"?n.attr("y",Math.round(h)):n.attr("y",Math.round(h-s.height))}return[n]},"drawKatex"),_p=o(function(t,e){let r=0,n=0,i=e.text.split(Ze.lineBreakRegex),[a,s]=Bo(e.fontSize),l=[],u=0,h=o(()=>e.y,"yfunc");if(e.valign!==void 0&&e.textMargin!==void 0&&e.textMargin>0)switch(e.valign){case"top":case"start":h=o(()=>Math.round(e.y+e.textMargin),"yfunc");break;case"middle":case"center":h=o(()=>Math.round(e.y+(r+n+e.textMargin)/2),"yfunc");break;case"bottom":case"end":h=o(()=>Math.round(e.y+(r+n+2*e.textMargin)-e.textMargin),"yfunc");break}if(e.anchor!==void 0&&e.textMargin!==void 0&&e.width!==void 0)switch(e.anchor){case"left":case"start":e.x=Math.round(e.x+e.textMargin),e.anchor="start",e.dominantBaseline="middle",e.alignmentBaseline="middle";break;case"middle":case"center":e.x=Math.round(e.x+e.width/2),e.anchor="middle",e.dominantBaseline="middle",e.alignmentBaseline="middle";break;case"right":case"end":e.x=Math.round(e.x+e.width-e.textMargin),e.anchor="end",e.dominantBaseline="middle",e.alignmentBaseline="middle";break}for(let[f,d]of i.entries()){e.textMargin!==void 0&&e.textMargin===0&&a!==void 0&&(u=f*a);let p=t.append("text");p.attr("x",e.x),p.attr("y",h()),e.anchor!==void 0&&p.attr("text-anchor",e.anchor).attr("dominant-baseline",e.dominantBaseline).attr("alignment-baseline",e.alignmentBaseline),e.fontFamily!==void 0&&p.style("font-family",e.fontFamily),s!==void 0&&p.style("font-size",s),e.fontWeight!==void 0&&p.style("font-weight",e.fontWeight),e.fill!==void 0&&p.attr("fill",e.fill),e.class!==void 0&&p.attr("class",e.class),e.dy!==void 0?p.attr("dy",e.dy):u!==0&&p.attr("dy",u);let m=d||H9;if(e.tspan){let g=p.append("tspan");g.attr("x",e.x),e.fill!==void 0&&g.attr("fill",e.fill),g.text(m)}else p.text(m);e.valign!==void 0&&e.textMargin!==void 0&&e.textMargin>0&&(n+=(p._groups||p)[0][0].getBBox().height,r=n),l.push(p)}return l},"drawText"),gfe=o(function(t,e){function r(i,a,s,l,u){return i+","+a+" "+(i+s)+","+a+" "+(i+s)+","+(a+l-u)+" "+(i+s-u*1.2)+","+(a+l)+" "+i+","+(a+l)}o(r,"genPoints");let n=t.append("polygon");return n.attr("points",r(e.x,e.y,e.width,e.height,7)),n.attr("class","labelBox"),e.y=e.y+e.height/2,_p(t,e),n},"drawLabel"),Uc=-1,DO=o((t,e,r,n)=>{t.select&&r.forEach(i=>{let a=e.get(i),s=t.select("#actor"+a.actorCnt);!n.mirrorActors&&a.stopy?s.attr("y2",a.stopy+a.height/2):n.mirrorActors&&s.attr("y2",a.stopy)})},"fixLifeLineHeights"),hVe=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+e.height,l=t.append("g").lower();var u=l;n||(Uc++,Object.keys(e.links||{}).length&&!r.forceMenus&&u.attr("onclick",uVe(`actor${Uc}_popup`)).attr("cursor","pointer"),u.append("line").attr("id","actor"+Uc).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),u=l.append("g"),e.actorCnt=Uc,e.links!=null&&u.attr("id","root-"+Uc));let h=Tl();var f="actor";e.properties?.class?f=e.properties.class:h.fill="#eaeaea",n?f+=` ${mfe}`:f+=` ${pfe}`,h.x=e.x,h.y=i,h.width=e.width,h.height=e.height,h.class=f,h.rx=3,h.ry=3,h.name=e.name;let d=_O(u,h);if(e.rectData=h,e.properties?.icon){let m=e.properties.icon.trim();m.charAt(0)==="@"?Iq(u,h.x+h.width-20,h.y+10,m.substr(1)):Mq(u,h.x+h.width-20,h.y+10,m)}LO(r,pi(e.description))(e.description,u,h.x,h.y,h.width,h.height,{class:`actor ${lVe}`},r);let p=e.height;if(d.node){let m=d.node().getBBox();e.height=m.height,p=m.height}return p},"drawActorTypeParticipant"),fVe=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+80,l=t.append("g").lower();n||(Uc++,l.append("line").attr("id","actor"+Uc).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),e.actorCnt=Uc);let u=t.append("g"),h=dfe;n?h+=` ${mfe}`:h+=` ${pfe}`,u.attr("class",h),u.attr("name",e.name);let f=Tl();f.x=e.x,f.y=i,f.fill="#eaeaea",f.width=e.width,f.height=e.height,f.class="actor",f.rx=3,f.ry=3,u.append("line").attr("id","actor-man-torso"+Uc).attr("x1",a).attr("y1",i+25).attr("x2",a).attr("y2",i+45),u.append("line").attr("id","actor-man-arms"+Uc).attr("x1",a-vf/2).attr("y1",i+33).attr("x2",a+vf/2).attr("y2",i+33),u.append("line").attr("x1",a-vf/2).attr("y1",i+60).attr("x2",a).attr("y2",i+45),u.append("line").attr("x1",a).attr("y1",i+45).attr("x2",a+vf/2-2).attr("y2",i+60);let d=u.append("circle");d.attr("cx",e.x+e.width/2),d.attr("cy",i+10),d.attr("r",15),d.attr("width",e.width),d.attr("height",e.height);let p=u.node().getBBox();return e.height=p.height,LO(r,pi(e.description))(e.description,u,f.x,f.y+35,f.width,f.height,{class:`actor ${dfe}`},r),e.height},"drawActorTypeActor"),dVe=o(async function(t,e,r,n){switch(e.type){case"actor":return await fVe(t,e,r,n);case"participant":return await hVe(t,e,r,n)}},"drawActor"),pVe=o(function(t,e,r){let i=t.append("g");yfe(i,e),e.name&&LO(r)(e.name,i,e.x,e.y+(e.textMaxHeight||0)/2,e.width,0,{class:"text"},r),i.lower()},"drawBox"),mVe=o(function(t){return t.append("g")},"anchorElement"),gVe=o(function(t,e,r,n,i){let a=Tl(),s=e.anchored;a.x=e.startx,a.y=e.starty,a.class="activation"+i%3,a.width=e.stopx-e.startx,a.height=r-e.starty,_O(s,a)},"drawActivation"),yVe=o(async function(t,e,r,n){let{boxMargin:i,boxTextMargin:a,labelBoxHeight:s,labelBoxWidth:l,messageFontFamily:u,messageFontSize:h,messageFontWeight:f}=n,d=t.append("g"),p=o(function(y,v,x,b){return d.append("line").attr("x1",y).attr("y1",v).attr("x2",x).attr("y2",b).attr("class","loopLine")},"drawLoopLine");p(e.startx,e.starty,e.stopx,e.starty),p(e.stopx,e.starty,e.stopx,e.stopy),p(e.startx,e.stopy,e.stopx,e.stopy),p(e.startx,e.starty,e.startx,e.stopy),e.sections!==void 0&&e.sections.forEach(function(y){p(e.startx,y.y,e.stopx,y.y).style("stroke-dasharray","3, 3")});let m=Hv();m.text=r,m.x=e.startx,m.y=e.starty,m.fontFamily=u,m.fontSize=h,m.fontWeight=f,m.anchor="middle",m.valign="middle",m.tspan=!1,m.width=l||50,m.height=s||20,m.textMargin=a,m.class="labelText",gfe(d,m),m=vfe(),m.text=e.title,m.x=e.startx+l/2+(e.stopx-e.startx)/2,m.y=e.starty+i+a,m.anchor="middle",m.valign="middle",m.textMargin=a,m.class="loopText",m.fontFamily=u,m.fontSize=h,m.fontWeight=f,m.wrap=!0;let g=pi(m.text)?await Tb(d,m,e):_p(d,m);if(e.sectionTitles!==void 0){for(let[y,v]of Object.entries(e.sectionTitles))if(v.message){m.text=v.message,m.x=e.startx+(e.stopx-e.startx)/2,m.y=e.sections[y].y+i+a,m.class="loopText",m.anchor="middle",m.valign="middle",m.tspan=!1,m.fontFamily=u,m.fontSize=h,m.fontWeight=f,m.wrap=e.wrap,pi(m.text)?(e.starty=e.sections[y].y,await Tb(d,m,e)):_p(d,m);let x=Math.round(g.map(b=>(b._groups||b)[0][0].getBBox().height).reduce((b,w)=>b+w));e.sections[y].height+=x-(i+a)}}return e.height=Math.round(e.stopy-e.starty),d},"drawLoop"),yfe=o(function(t,e){q5(t,e)},"drawBackgroundRect"),vVe=o(function(t){t.append("defs").append("symbol").attr("id","database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")},"insertDatabaseIcon"),xVe=o(function(t){t.append("defs").append("symbol").attr("id","computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")},"insertComputerIcon"),bVe=o(function(t){t.append("defs").append("symbol").attr("id","clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")},"insertClockIcon"),wVe=o(function(t){t.append("defs").append("marker").attr("id","arrowhead").attr("refX",7.9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto-start-reverse").append("path").attr("d","M -1 0 L 10 5 L 0 10 z")},"insertArrowHead"),TVe=o(function(t){t.append("defs").append("marker").attr("id","filled-head").attr("refX",15.5).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"insertArrowFilledHead"),kVe=o(function(t){t.append("defs").append("marker").attr("id","sequencenumber").attr("refX",15).attr("refY",15).attr("markerWidth",60).attr("markerHeight",40).attr("orient","auto").append("circle").attr("cx",15).attr("cy",15).attr("r",6)},"insertSequenceNumber"),EVe=o(function(t){t.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",4).attr("refY",4.5).append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1pt").attr("d","M 1,2 L 6,7 M 6,2 L 1,7")},"insertArrowCrossHead"),vfe=o(function(){return{x:0,y:0,fill:void 0,anchor:void 0,style:"#666",width:void 0,height:void 0,textMargin:0,rx:0,ry:0,tspan:!0,valign:void 0}},"getTextObj"),SVe=o(function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),LO=function(){function t(a,s,l,u,h,f,d){let p=s.append("text").attr("x",l+h/2).attr("y",u+f/2+5).style("text-anchor","middle").text(a);i(p,d)}o(t,"byText");function e(a,s,l,u,h,f,d,p){let{actorFontSize:m,actorFontFamily:g,actorFontWeight:y}=p,[v,x]=Bo(m),b=a.split(Ze.lineBreakRegex);for(let w=0;w{let s=Dp(Ne),l=a.actorKeys.reduce((f,d)=>f+=t.get(d).width+(t.get(d).margin||0),0);l-=2*Ne.boxTextMargin,a.wrap&&(a.name=Gt.wrapLabel(a.name,l-2*Ne.wrapPadding,s));let u=Gt.calculateTextDimensions(a.name,s);i=Ze.getMax(u.height,i);let h=Ze.getMax(l,u.width+2*Ne.wrapPadding);if(a.margin=Ne.boxTextMargin,la.textMaxHeight=i),Ze.getMax(n,Ne.height)}var Ne,rt,AVe,Dp,_1,RO,DVe,LVe,NO,wfe,Tfe,D6,bfe,NVe,IVe,PVe,BVe,FVe,kfe,Efe=N(()=>{"use strict";dr();xfe();vt();gr();Wv();zt();s0();ir();Ei();Ne={},rt={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],activations:[],models:{getHeight:o(function(){return Math.max.apply(null,this.actors.length===0?[0]:this.actors.map(t=>t.height||0))+(this.loops.length===0?0:this.loops.map(t=>t.height||0).reduce((t,e)=>t+e))+(this.messages.length===0?0:this.messages.map(t=>t.height||0).reduce((t,e)=>t+e))+(this.notes.length===0?0:this.notes.map(t=>t.height||0).reduce((t,e)=>t+e))},"getHeight"),clear:o(function(){this.actors=[],this.boxes=[],this.loops=[],this.messages=[],this.notes=[]},"clear"),addBox:o(function(t){this.boxes.push(t)},"addBox"),addActor:o(function(t){this.actors.push(t)},"addActor"),addLoop:o(function(t){this.loops.push(t)},"addLoop"),addMessage:o(function(t){this.messages.push(t)},"addMessage"),addNote:o(function(t){this.notes.push(t)},"addNote"),lastActor:o(function(){return this.actors[this.actors.length-1]},"lastActor"),lastLoop:o(function(){return this.loops[this.loops.length-1]},"lastLoop"),lastMessage:o(function(){return this.messages[this.messages.length-1]},"lastMessage"),lastNote:o(function(){return this.notes[this.notes.length-1]},"lastNote"),actors:[],boxes:[],loops:[],messages:[],notes:[]},init:o(function(){this.sequenceItems=[],this.activations=[],this.models.clear(),this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0,Tfe(me())},"init"),updateVal:o(function(t,e,r,n){t[e]===void 0?t[e]=r:t[e]=n(r,t[e])},"updateVal"),updateBounds:o(function(t,e,r,n){let i=this,a=0;function s(l){return o(function(h){a++;let f=i.sequenceItems.length-a+1;i.updateVal(h,"starty",e-f*Ne.boxMargin,Math.min),i.updateVal(h,"stopy",n+f*Ne.boxMargin,Math.max),i.updateVal(rt.data,"startx",t-f*Ne.boxMargin,Math.min),i.updateVal(rt.data,"stopx",r+f*Ne.boxMargin,Math.max),l!=="activation"&&(i.updateVal(h,"startx",t-f*Ne.boxMargin,Math.min),i.updateVal(h,"stopx",r+f*Ne.boxMargin,Math.max),i.updateVal(rt.data,"starty",e-f*Ne.boxMargin,Math.min),i.updateVal(rt.data,"stopy",n+f*Ne.boxMargin,Math.max))},"updateItemBounds")}o(s,"updateFn"),this.sequenceItems.forEach(s()),this.activations.forEach(s("activation"))},"updateBounds"),insert:o(function(t,e,r,n){let i=Ze.getMin(t,r),a=Ze.getMax(t,r),s=Ze.getMin(e,n),l=Ze.getMax(e,n);this.updateVal(rt.data,"startx",i,Math.min),this.updateVal(rt.data,"starty",s,Math.min),this.updateVal(rt.data,"stopx",a,Math.max),this.updateVal(rt.data,"stopy",l,Math.max),this.updateBounds(i,s,a,l)},"insert"),newActivation:o(function(t,e,r){let n=r.get(t.from),i=D6(t.from).length||0,a=n.x+n.width/2+(i-1)*Ne.activationWidth/2;this.activations.push({startx:a,starty:this.verticalPos+2,stopx:a+Ne.activationWidth,stopy:void 0,actor:t.from,anchored:hi.anchorElement(e)})},"newActivation"),endActivation:o(function(t){let e=this.activations.map(function(r){return r.actor}).lastIndexOf(t.from);return this.activations.splice(e,1)[0]},"endActivation"),createLoop:o(function(t={message:void 0,wrap:!1,width:void 0},e){return{startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:t.message,wrap:t.wrap,width:t.width,height:0,fill:e}},"createLoop"),newLoop:o(function(t={message:void 0,wrap:!1,width:void 0},e){this.sequenceItems.push(this.createLoop(t,e))},"newLoop"),endLoop:o(function(){return this.sequenceItems.pop()},"endLoop"),isLoopOverlap:o(function(){return this.sequenceItems.length?this.sequenceItems[this.sequenceItems.length-1].overlap:!1},"isLoopOverlap"),addSectionToLoop:o(function(t){let e=this.sequenceItems.pop();e.sections=e.sections||[],e.sectionTitles=e.sectionTitles||[],e.sections.push({y:rt.getVerticalPos(),height:0}),e.sectionTitles.push(t),this.sequenceItems.push(e)},"addSectionToLoop"),saveVerticalPos:o(function(){this.isLoopOverlap()&&(this.savedVerticalPos=this.verticalPos)},"saveVerticalPos"),resetVerticalPos:o(function(){this.isLoopOverlap()&&(this.verticalPos=this.savedVerticalPos)},"resetVerticalPos"),bumpVerticalPos:o(function(t){this.verticalPos=this.verticalPos+t,this.data.stopy=Ze.getMax(this.data.stopy,this.verticalPos)},"bumpVerticalPos"),getVerticalPos:o(function(){return this.verticalPos},"getVerticalPos"),getBounds:o(function(){return{bounds:this.data,models:this.models}},"getBounds")},AVe=o(async function(t,e){rt.bumpVerticalPos(Ne.boxMargin),e.height=Ne.boxMargin,e.starty=rt.getVerticalPos();let r=Tl();r.x=e.startx,r.y=e.starty,r.width=e.width||Ne.width,r.class="note";let n=t.append("g"),i=hi.drawRect(n,r),a=Hv();a.x=e.startx,a.y=e.starty,a.width=r.width,a.dy="1em",a.text=e.message,a.class="noteText",a.fontFamily=Ne.noteFontFamily,a.fontSize=Ne.noteFontSize,a.fontWeight=Ne.noteFontWeight,a.anchor=Ne.noteAlign,a.textMargin=Ne.noteMargin,a.valign="center";let s=pi(a.text)?await Tb(n,a):_p(n,a),l=Math.round(s.map(u=>(u._groups||u)[0][0].getBBox().height).reduce((u,h)=>u+h));i.attr("height",l+2*Ne.noteMargin),e.height+=l+2*Ne.noteMargin,rt.bumpVerticalPos(l+2*Ne.noteMargin),e.stopy=e.starty+l+2*Ne.noteMargin,e.stopx=e.startx+r.width,rt.insert(e.startx,e.starty,e.stopx,e.stopy),rt.models.addNote(e)},"drawNote"),Dp=o(t=>({fontFamily:t.messageFontFamily,fontSize:t.messageFontSize,fontWeight:t.messageFontWeight}),"messageFont"),_1=o(t=>({fontFamily:t.noteFontFamily,fontSize:t.noteFontSize,fontWeight:t.noteFontWeight}),"noteFont"),RO=o(t=>({fontFamily:t.actorFontFamily,fontSize:t.actorFontSize,fontWeight:t.actorFontWeight}),"actorFont");o(_Ve,"boundMessage");DVe=o(async function(t,e,r,n){let{startx:i,stopx:a,starty:s,message:l,type:u,sequenceIndex:h,sequenceVisible:f}=e,d=Gt.calculateTextDimensions(l,Dp(Ne)),p=Hv();p.x=i,p.y=s+10,p.width=a-i,p.class="messageText",p.dy="1em",p.text=l,p.fontFamily=Ne.messageFontFamily,p.fontSize=Ne.messageFontSize,p.fontWeight=Ne.messageFontWeight,p.anchor=Ne.messageAlign,p.valign="center",p.textMargin=Ne.wrapPadding,p.tspan=!1,pi(p.text)?await Tb(t,p,{startx:i,stopx:a,starty:r}):_p(t,p);let m=d.width,g;i===a?Ne.rightAngles?g=t.append("path").attr("d",`M ${i},${r} H ${i+Ze.getMax(Ne.width/2,m/2)} V ${r+25} H ${i}`):g=t.append("path").attr("d","M "+i+","+r+" C "+(i+60)+","+(r-10)+" "+(i+60)+","+(r+30)+" "+i+","+(r+20)):(g=t.append("line"),g.attr("x1",i),g.attr("y1",r),g.attr("x2",a),g.attr("y2",r)),u===n.db.LINETYPE.DOTTED||u===n.db.LINETYPE.DOTTED_CROSS||u===n.db.LINETYPE.DOTTED_POINT||u===n.db.LINETYPE.DOTTED_OPEN||u===n.db.LINETYPE.BIDIRECTIONAL_DOTTED?(g.style("stroke-dasharray","3, 3"),g.attr("class","messageLine1")):g.attr("class","messageLine0");let y="";Ne.arrowMarkerAbsolute&&(y=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,y=y.replace(/\(/g,"\\("),y=y.replace(/\)/g,"\\)")),g.attr("stroke-width",2),g.attr("stroke","none"),g.style("fill","none"),(u===n.db.LINETYPE.SOLID||u===n.db.LINETYPE.DOTTED)&&g.attr("marker-end","url("+y+"#arrowhead)"),(u===n.db.LINETYPE.BIDIRECTIONAL_SOLID||u===n.db.LINETYPE.BIDIRECTIONAL_DOTTED)&&(g.attr("marker-start","url("+y+"#arrowhead)"),g.attr("marker-end","url("+y+"#arrowhead)")),(u===n.db.LINETYPE.SOLID_POINT||u===n.db.LINETYPE.DOTTED_POINT)&&g.attr("marker-end","url("+y+"#filled-head)"),(u===n.db.LINETYPE.SOLID_CROSS||u===n.db.LINETYPE.DOTTED_CROSS)&&g.attr("marker-end","url("+y+"#crosshead)"),(f||Ne.showSequenceNumbers)&&(g.attr("marker-start","url("+y+"#sequencenumber)"),t.append("text").attr("x",i).attr("y",r+4).attr("font-family","sans-serif").attr("font-size","12px").attr("text-anchor","middle").attr("class","sequenceNumber").text(h))},"drawMessage"),LVe=o(function(t,e,r,n,i,a,s){let l=0,u=0,h,f=0;for(let d of n){let p=e.get(d),m=p.box;h&&h!=m&&(s||rt.models.addBox(h),u+=Ne.boxMargin+h.margin),m&&m!=h&&(s||(m.x=l+u,m.y=i),u+=m.margin),p.width=p.width||Ne.width,p.height=Ze.getMax(p.height||Ne.height,Ne.height),p.margin=p.margin||Ne.actorMargin,f=Ze.getMax(f,p.height),r.get(p.name)&&(u+=p.width/2),p.x=l+u,p.starty=rt.getVerticalPos(),rt.insert(p.x,i,p.x+p.width,p.height),l+=p.width+u,p.box&&(p.box.width=l+m.margin-p.box.x),u=p.margin,h=p.box,rt.models.addActor(p)}h&&!s&&rt.models.addBox(h),rt.bumpVerticalPos(f)},"addActorRenderingData"),NO=o(async function(t,e,r,n){if(n){let i=0;rt.bumpVerticalPos(Ne.boxMargin*2);for(let a of r){let s=e.get(a);s.stopy||(s.stopy=rt.getVerticalPos());let l=await hi.drawActor(t,s,Ne,!0);i=Ze.getMax(i,l)}rt.bumpVerticalPos(i+Ne.boxMargin)}else for(let i of r){let a=e.get(i);await hi.drawActor(t,a,Ne,!1)}},"drawActors"),wfe=o(function(t,e,r,n){let i=0,a=0;for(let s of r){let l=e.get(s),u=IVe(l),h=hi.drawPopup(t,l,u,Ne,Ne.forceMenus,n);h.height>i&&(i=h.height),h.width+l.x>a&&(a=h.width+l.x)}return{maxHeight:i,maxWidth:a}},"drawActorsPopup"),Tfe=o(function(t){Gn(Ne,t),t.fontFamily&&(Ne.actorFontFamily=Ne.noteFontFamily=Ne.messageFontFamily=t.fontFamily),t.fontSize&&(Ne.actorFontSize=Ne.noteFontSize=Ne.messageFontSize=t.fontSize),t.fontWeight&&(Ne.actorFontWeight=Ne.noteFontWeight=Ne.messageFontWeight=t.fontWeight)},"setConf"),D6=o(function(t){return rt.activations.filter(function(e){return e.actor===t})},"actorActivations"),bfe=o(function(t,e){let r=e.get(t),n=D6(t),i=n.reduce(function(s,l){return Ze.getMin(s,l.startx)},r.x+r.width/2-1),a=n.reduce(function(s,l){return Ze.getMax(s,l.stopx)},r.x+r.width/2+1);return[i,a]},"activationBounds");o(Hc,"adjustLoopHeightForWrap");o(RVe,"adjustCreatedDestroyedData");NVe=o(async function(t,e,r,n){let{securityLevel:i,sequence:a}=me();Ne=a;let s;i==="sandbox"&&(s=Ge("#i"+e));let l=i==="sandbox"?Ge(s.nodes()[0].contentDocument.body):Ge("body"),u=i==="sandbox"?s.nodes()[0].contentDocument:document;rt.init(),Y.debug(n.db);let h=i==="sandbox"?l.select(`[id="${e}"]`):Ge(`[id="${e}"]`),f=n.db.getActors(),d=n.db.getCreatedActors(),p=n.db.getDestroyedActors(),m=n.db.getBoxes(),g=n.db.getActorKeys(),y=n.db.getMessages(),v=n.db.getDiagramTitle(),x=n.db.hasAtLeastOneBox(),b=n.db.hasAtLeastOneBoxWithTitle(),w=await MVe(f,y,n);if(Ne.height=await OVe(f,w,m),hi.insertComputerIcon(h),hi.insertDatabaseIcon(h),hi.insertClockIcon(h),x&&(rt.bumpVerticalPos(Ne.boxMargin),b&&rt.bumpVerticalPos(m[0].textMaxHeight)),Ne.hideUnusedParticipants===!0){let F=new Set;y.forEach(P=>{F.add(P.from),F.add(P.to)}),g=g.filter(P=>F.has(P))}LVe(h,f,d,g,0,y,!1);let C=await FVe(y,f,w,n);hi.insertArrowHead(h),hi.insertArrowCrossHead(h),hi.insertArrowFilledHead(h),hi.insertSequenceNumber(h);function T(F,P){let z=rt.endActivation(F);z.starty+18>P&&(z.starty=P-6,P+=12),hi.drawActivation(h,z,P,Ne,D6(F.from).length),rt.insert(z.startx,P-10,z.stopx,P)}o(T,"activeEnd");let E=1,A=1,S=[],_=[],I=0;for(let F of y){let P,z,$;switch(F.type){case n.db.LINETYPE.NOTE:rt.resetVerticalPos(),z=F.noteModel,await AVe(h,z);break;case n.db.LINETYPE.ACTIVE_START:rt.newActivation(F,h,f);break;case n.db.LINETYPE.ACTIVE_END:T(F,rt.getVerticalPos());break;case n.db.LINETYPE.LOOP_START:Hc(C,F,Ne.boxMargin,Ne.boxMargin+Ne.boxTextMargin,H=>rt.newLoop(H));break;case n.db.LINETYPE.LOOP_END:P=rt.endLoop(),await hi.drawLoop(h,P,"loop",Ne),rt.bumpVerticalPos(P.stopy-rt.getVerticalPos()),rt.models.addLoop(P);break;case n.db.LINETYPE.RECT_START:Hc(C,F,Ne.boxMargin,Ne.boxMargin,H=>rt.newLoop(void 0,H.message));break;case n.db.LINETYPE.RECT_END:P=rt.endLoop(),_.push(P),rt.models.addLoop(P),rt.bumpVerticalPos(P.stopy-rt.getVerticalPos());break;case n.db.LINETYPE.OPT_START:Hc(C,F,Ne.boxMargin,Ne.boxMargin+Ne.boxTextMargin,H=>rt.newLoop(H));break;case n.db.LINETYPE.OPT_END:P=rt.endLoop(),await hi.drawLoop(h,P,"opt",Ne),rt.bumpVerticalPos(P.stopy-rt.getVerticalPos()),rt.models.addLoop(P);break;case n.db.LINETYPE.ALT_START:Hc(C,F,Ne.boxMargin,Ne.boxMargin+Ne.boxTextMargin,H=>rt.newLoop(H));break;case n.db.LINETYPE.ALT_ELSE:Hc(C,F,Ne.boxMargin+Ne.boxTextMargin,Ne.boxMargin,H=>rt.addSectionToLoop(H));break;case n.db.LINETYPE.ALT_END:P=rt.endLoop(),await hi.drawLoop(h,P,"alt",Ne),rt.bumpVerticalPos(P.stopy-rt.getVerticalPos()),rt.models.addLoop(P);break;case n.db.LINETYPE.PAR_START:case n.db.LINETYPE.PAR_OVER_START:Hc(C,F,Ne.boxMargin,Ne.boxMargin+Ne.boxTextMargin,H=>rt.newLoop(H)),rt.saveVerticalPos();break;case n.db.LINETYPE.PAR_AND:Hc(C,F,Ne.boxMargin+Ne.boxTextMargin,Ne.boxMargin,H=>rt.addSectionToLoop(H));break;case n.db.LINETYPE.PAR_END:P=rt.endLoop(),await hi.drawLoop(h,P,"par",Ne),rt.bumpVerticalPos(P.stopy-rt.getVerticalPos()),rt.models.addLoop(P);break;case n.db.LINETYPE.AUTONUMBER:E=F.message.start||E,A=F.message.step||A,F.message.visible?n.db.enableSequenceNumbers():n.db.disableSequenceNumbers();break;case n.db.LINETYPE.CRITICAL_START:Hc(C,F,Ne.boxMargin,Ne.boxMargin+Ne.boxTextMargin,H=>rt.newLoop(H));break;case n.db.LINETYPE.CRITICAL_OPTION:Hc(C,F,Ne.boxMargin+Ne.boxTextMargin,Ne.boxMargin,H=>rt.addSectionToLoop(H));break;case n.db.LINETYPE.CRITICAL_END:P=rt.endLoop(),await hi.drawLoop(h,P,"critical",Ne),rt.bumpVerticalPos(P.stopy-rt.getVerticalPos()),rt.models.addLoop(P);break;case n.db.LINETYPE.BREAK_START:Hc(C,F,Ne.boxMargin,Ne.boxMargin+Ne.boxTextMargin,H=>rt.newLoop(H));break;case n.db.LINETYPE.BREAK_END:P=rt.endLoop(),await hi.drawLoop(h,P,"break",Ne),rt.bumpVerticalPos(P.stopy-rt.getVerticalPos()),rt.models.addLoop(P);break;default:try{$=F.msgModel,$.starty=rt.getVerticalPos(),$.sequenceIndex=E,$.sequenceVisible=n.db.showSequenceNumbers();let H=await _Ve(h,$);RVe(F,$,H,I,f,d,p),S.push({messageModel:$,lineStartY:H}),rt.models.addMessage($)}catch(H){Y.error("error while drawing message",H)}}[n.db.LINETYPE.SOLID_OPEN,n.db.LINETYPE.DOTTED_OPEN,n.db.LINETYPE.SOLID,n.db.LINETYPE.DOTTED,n.db.LINETYPE.SOLID_CROSS,n.db.LINETYPE.DOTTED_CROSS,n.db.LINETYPE.SOLID_POINT,n.db.LINETYPE.DOTTED_POINT,n.db.LINETYPE.BIDIRECTIONAL_SOLID,n.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(F.type)&&(E=E+A),I++}Y.debug("createdActors",d),Y.debug("destroyedActors",p),await NO(h,f,g,!1);for(let F of S)await DVe(h,F.messageModel,F.lineStartY,n);Ne.mirrorActors&&await NO(h,f,g,!0),_.forEach(F=>hi.drawBackgroundRect(h,F)),DO(h,f,g,Ne);for(let F of rt.models.boxes)F.height=rt.getVerticalPos()-F.y,rt.insert(F.x,F.y,F.x+F.width,F.height),F.startx=F.x,F.starty=F.y,F.stopx=F.startx+F.width,F.stopy=F.starty+F.height,F.stroke="rgb(0,0,0, 0.5)",hi.drawBox(h,F,Ne);x&&rt.bumpVerticalPos(Ne.boxMargin);let D=wfe(h,f,g,u),{bounds:k}=rt.getBounds();k.startx===void 0&&(k.startx=0),k.starty===void 0&&(k.starty=0),k.stopx===void 0&&(k.stopx=0),k.stopy===void 0&&(k.stopy=0);let L=k.stopy-k.starty;L2,d=o(y=>l?-y:y,"adjustValue");t.from===t.to?h=u:(t.activate&&!f&&(h+=d(Ne.activationWidth/2-1)),[r.db.LINETYPE.SOLID_OPEN,r.db.LINETYPE.DOTTED_OPEN].includes(t.type)||(h+=d(3)),[r.db.LINETYPE.BIDIRECTIONAL_SOLID,r.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(t.type)&&(u-=d(3)));let p=[n,i,a,s],m=Math.abs(u-h);t.wrap&&t.message&&(t.message=Gt.wrapLabel(t.message,Ze.getMax(m+2*Ne.wrapPadding,Ne.width),Dp(Ne)));let g=Gt.calculateTextDimensions(t.message,Dp(Ne));return{width:Ze.getMax(t.wrap?0:g.width+2*Ne.wrapPadding,m+2*Ne.wrapPadding,Ne.width),height:0,startx:u,stopx:h,starty:0,stopy:0,message:t.message,type:t.type,wrap:t.wrap,fromBounds:Math.min.apply(null,p),toBounds:Math.max.apply(null,p)}},"buildMessageModel"),FVe=o(async function(t,e,r,n){let i={},a=[],s,l,u;for(let h of t){switch(h.type){case n.db.LINETYPE.LOOP_START:case n.db.LINETYPE.ALT_START:case n.db.LINETYPE.OPT_START:case n.db.LINETYPE.PAR_START:case n.db.LINETYPE.PAR_OVER_START:case n.db.LINETYPE.CRITICAL_START:case n.db.LINETYPE.BREAK_START:a.push({id:h.id,msg:h.message,from:Number.MAX_SAFE_INTEGER,to:Number.MIN_SAFE_INTEGER,width:0});break;case n.db.LINETYPE.ALT_ELSE:case n.db.LINETYPE.PAR_AND:case n.db.LINETYPE.CRITICAL_OPTION:h.message&&(s=a.pop(),i[s.id]=s,i[h.id]=s,a.push(s));break;case n.db.LINETYPE.LOOP_END:case n.db.LINETYPE.ALT_END:case n.db.LINETYPE.OPT_END:case n.db.LINETYPE.PAR_END:case n.db.LINETYPE.CRITICAL_END:case n.db.LINETYPE.BREAK_END:s=a.pop(),i[s.id]=s;break;case n.db.LINETYPE.ACTIVE_START:{let d=e.get(h.from?h.from:h.to.actor),p=D6(h.from?h.from:h.to.actor).length,m=d.x+d.width/2+(p-1)*Ne.activationWidth/2,g={startx:m,stopx:m+Ne.activationWidth,actor:h.from,enabled:!0};rt.activations.push(g)}break;case n.db.LINETYPE.ACTIVE_END:{let d=rt.activations.map(p=>p.actor).lastIndexOf(h.from);rt.activations.splice(d,1).splice(0,1)}break}h.placement!==void 0?(l=await PVe(h,e,n),h.noteModel=l,a.forEach(d=>{s=d,s.from=Ze.getMin(s.from,l.startx),s.to=Ze.getMax(s.to,l.startx+l.width),s.width=Ze.getMax(s.width,Math.abs(s.from-s.to))-Ne.labelBoxWidth})):(u=BVe(h,e,n),h.msgModel=u,u.startx&&u.stopx&&a.length>0&&a.forEach(d=>{if(s=d,u.startx===u.stopx){let p=e.get(h.from),m=e.get(h.to);s.from=Ze.getMin(p.x-u.width/2,p.x-p.width/2,s.from),s.to=Ze.getMax(m.x+u.width/2,m.x+p.width/2,s.to),s.width=Ze.getMax(s.width,Math.abs(s.to-s.from))-Ne.labelBoxWidth}else s.from=Ze.getMin(u.startx,s.from),s.to=Ze.getMax(u.stopx,s.to),s.width=Ze.getMax(s.width,u.width)-Ne.labelBoxWidth}))}return rt.activations=[],Y.debug("Loop type widths:",i),i},"calculateLoopBounds"),kfe={bounds:rt,drawActors:NO,drawActorsPopup:wfe,setConf:Tfe,draw:NVe}});var Sfe={};hr(Sfe,{diagram:()=>$Ve});var $Ve,Cfe=N(()=>{"use strict";cfe();ufe();ffe();zt();Efe();$Ve={parser:lfe,get db(){return new _6},renderer:kfe,styles:hfe,init:o(t=>{t.sequence||(t.sequence={}),t.wrap&&(t.sequence.wrap=t.wrap,Yy({sequence:{wrap:t.wrap}}))},"init")}});var MO,L6,IO=N(()=>{"use strict";MO=function(){var t=o(function(Ie,be,W,de){for(W=W||{},de=Ie.length;de--;W[Ie[de]]=be);return W},"o"),e=[1,18],r=[1,19],n=[1,20],i=[1,41],a=[1,42],s=[1,26],l=[1,24],u=[1,25],h=[1,32],f=[1,33],d=[1,34],p=[1,45],m=[1,35],g=[1,36],y=[1,37],v=[1,38],x=[1,27],b=[1,28],w=[1,29],C=[1,30],T=[1,31],E=[1,44],A=[1,46],S=[1,43],_=[1,47],I=[1,9],D=[1,8,9],k=[1,58],L=[1,59],R=[1,60],O=[1,61],M=[1,62],B=[1,63],F=[1,64],P=[1,8,9,41],z=[1,76],$=[1,8,9,12,13,22,39,41,44,66,67,68,69,70,71,72,77,79],H=[1,8,9,12,13,17,20,22,39,41,44,48,58,66,67,68,69,70,71,72,77,79,84,99,101,102],Q=[13,58,84,99,101,102],j=[13,58,71,72,84,99,101,102],ie=[13,58,66,67,68,69,70,84,99,101,102],ne=[1,98],le=[1,115],he=[1,107],K=[1,113],X=[1,108],te=[1,109],J=[1,110],se=[1,111],ue=[1,112],Z=[1,114],Se=[22,58,59,80,84,85,86,87,88,89],ce=[1,8,9,39,41,44],ae=[1,8,9,22],Oe=[1,143],ge=[1,8,9,59],ze=[1,8,9,22,58,59,80,84,85,86,87,88,89],He={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statements:5,graphConfig:6,CLASS_DIAGRAM:7,NEWLINE:8,EOF:9,statement:10,classLabel:11,SQS:12,STR:13,SQE:14,namespaceName:15,alphaNumToken:16,DOT:17,className:18,classLiteralName:19,GENERICTYPE:20,relationStatement:21,LABEL:22,namespaceStatement:23,classStatement:24,memberStatement:25,annotationStatement:26,clickStatement:27,styleStatement:28,cssClassStatement:29,noteStatement:30,classDefStatement:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,namespaceIdentifier:38,STRUCT_START:39,classStatements:40,STRUCT_STOP:41,NAMESPACE:42,classIdentifier:43,STYLE_SEPARATOR:44,members:45,CLASS:46,ANNOTATION_START:47,ANNOTATION_END:48,MEMBER:49,SEPARATOR:50,relation:51,NOTE_FOR:52,noteText:53,NOTE:54,CLASSDEF:55,classList:56,stylesOpt:57,ALPHA:58,COMMA:59,direction_tb:60,direction_bt:61,direction_rl:62,direction_lr:63,relationType:64,lineType:65,AGGREGATION:66,EXTENSION:67,COMPOSITION:68,DEPENDENCY:69,LOLLIPOP:70,LINE:71,DOTTED_LINE:72,CALLBACK:73,LINK:74,LINK_TARGET:75,CLICK:76,CALLBACK_NAME:77,CALLBACK_ARGS:78,HREF:79,STYLE:80,CSSCLASS:81,style:82,styleComponent:83,NUM:84,COLON:85,UNIT:86,SPACE:87,BRKT:88,PCT:89,commentToken:90,textToken:91,graphCodeTokens:92,textNoTagsToken:93,TAGSTART:94,TAGEND:95,"==":96,"--":97,DEFAULT:98,MINUS:99,keywords:100,UNICODE_TEXT:101,BQUOTE_STR:102,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",17:"DOT",20:"GENERICTYPE",22:"LABEL",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",39:"STRUCT_START",41:"STRUCT_STOP",42:"NAMESPACE",44:"STYLE_SEPARATOR",46:"CLASS",47:"ANNOTATION_START",48:"ANNOTATION_END",49:"MEMBER",50:"SEPARATOR",52:"NOTE_FOR",54:"NOTE",55:"CLASSDEF",58:"ALPHA",59:"COMMA",60:"direction_tb",61:"direction_bt",62:"direction_rl",63:"direction_lr",66:"AGGREGATION",67:"EXTENSION",68:"COMPOSITION",69:"DEPENDENCY",70:"LOLLIPOP",71:"LINE",72:"DOTTED_LINE",73:"CALLBACK",74:"LINK",75:"LINK_TARGET",76:"CLICK",77:"CALLBACK_NAME",78:"CALLBACK_ARGS",79:"HREF",80:"STYLE",81:"CSSCLASS",84:"NUM",85:"COLON",86:"UNIT",87:"SPACE",88:"BRKT",89:"PCT",92:"graphCodeTokens",94:"TAGSTART",95:"TAGEND",96:"==",97:"--",98:"DEFAULT",99:"MINUS",100:"keywords",101:"UNICODE_TEXT",102:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,3],[15,2],[18,1],[18,3],[18,1],[18,2],[18,2],[18,2],[10,1],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[23,4],[23,5],[38,2],[40,1],[40,2],[40,3],[24,1],[24,3],[24,4],[24,6],[43,2],[43,3],[26,4],[45,1],[45,2],[25,1],[25,2],[25,1],[25,1],[21,3],[21,4],[21,4],[21,5],[30,3],[30,2],[31,3],[56,1],[56,3],[32,1],[32,1],[32,1],[32,1],[51,3],[51,2],[51,2],[51,1],[64,1],[64,1],[64,1],[64,1],[64,1],[65,1],[65,1],[27,3],[27,4],[27,3],[27,4],[27,4],[27,5],[27,3],[27,4],[27,4],[27,5],[27,4],[27,5],[27,5],[27,6],[28,3],[29,3],[57,1],[57,3],[82,1],[82,2],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[90,1],[90,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[93,1],[93,1],[93,1],[93,1],[16,1],[16,1],[16,1],[16,1],[19,1],[53,1]],performAction:o(function(be,W,de,re,oe,V,xe){var q=V.length-1;switch(oe){case 8:this.$=V[q-1];break;case 9:case 12:case 14:this.$=V[q];break;case 10:case 13:this.$=V[q-2]+"."+V[q];break;case 11:case 15:this.$=V[q-1]+V[q];break;case 16:case 17:this.$=V[q-1]+"~"+V[q]+"~";break;case 18:re.addRelation(V[q]);break;case 19:V[q-1].title=re.cleanupLabel(V[q]),re.addRelation(V[q-1]);break;case 30:this.$=V[q].trim(),re.setAccTitle(this.$);break;case 31:case 32:this.$=V[q].trim(),re.setAccDescription(this.$);break;case 33:re.addClassesToNamespace(V[q-3],V[q-1]);break;case 34:re.addClassesToNamespace(V[q-4],V[q-1]);break;case 35:this.$=V[q],re.addNamespace(V[q]);break;case 36:this.$=[V[q]];break;case 37:this.$=[V[q-1]];break;case 38:V[q].unshift(V[q-2]),this.$=V[q];break;case 40:re.setCssClass(V[q-2],V[q]);break;case 41:re.addMembers(V[q-3],V[q-1]);break;case 42:re.setCssClass(V[q-5],V[q-3]),re.addMembers(V[q-5],V[q-1]);break;case 43:this.$=V[q],re.addClass(V[q]);break;case 44:this.$=V[q-1],re.addClass(V[q-1]),re.setClassLabel(V[q-1],V[q]);break;case 45:re.addAnnotation(V[q],V[q-2]);break;case 46:case 59:this.$=[V[q]];break;case 47:V[q].push(V[q-1]),this.$=V[q];break;case 48:break;case 49:re.addMember(V[q-1],re.cleanupLabel(V[q]));break;case 50:break;case 51:break;case 52:this.$={id1:V[q-2],id2:V[q],relation:V[q-1],relationTitle1:"none",relationTitle2:"none"};break;case 53:this.$={id1:V[q-3],id2:V[q],relation:V[q-1],relationTitle1:V[q-2],relationTitle2:"none"};break;case 54:this.$={id1:V[q-3],id2:V[q],relation:V[q-2],relationTitle1:"none",relationTitle2:V[q-1]};break;case 55:this.$={id1:V[q-4],id2:V[q],relation:V[q-2],relationTitle1:V[q-3],relationTitle2:V[q-1]};break;case 56:re.addNote(V[q],V[q-1]);break;case 57:re.addNote(V[q]);break;case 58:this.$=V[q-2],re.defineClass(V[q-1],V[q]);break;case 60:this.$=V[q-2].concat([V[q]]);break;case 61:re.setDirection("TB");break;case 62:re.setDirection("BT");break;case 63:re.setDirection("RL");break;case 64:re.setDirection("LR");break;case 65:this.$={type1:V[q-2],type2:V[q],lineType:V[q-1]};break;case 66:this.$={type1:"none",type2:V[q],lineType:V[q-1]};break;case 67:this.$={type1:V[q-1],type2:"none",lineType:V[q]};break;case 68:this.$={type1:"none",type2:"none",lineType:V[q]};break;case 69:this.$=re.relationType.AGGREGATION;break;case 70:this.$=re.relationType.EXTENSION;break;case 71:this.$=re.relationType.COMPOSITION;break;case 72:this.$=re.relationType.DEPENDENCY;break;case 73:this.$=re.relationType.LOLLIPOP;break;case 74:this.$=re.lineType.LINE;break;case 75:this.$=re.lineType.DOTTED_LINE;break;case 76:case 82:this.$=V[q-2],re.setClickEvent(V[q-1],V[q]);break;case 77:case 83:this.$=V[q-3],re.setClickEvent(V[q-2],V[q-1]),re.setTooltip(V[q-2],V[q]);break;case 78:this.$=V[q-2],re.setLink(V[q-1],V[q]);break;case 79:this.$=V[q-3],re.setLink(V[q-2],V[q-1],V[q]);break;case 80:this.$=V[q-3],re.setLink(V[q-2],V[q-1]),re.setTooltip(V[q-2],V[q]);break;case 81:this.$=V[q-4],re.setLink(V[q-3],V[q-2],V[q]),re.setTooltip(V[q-3],V[q-1]);break;case 84:this.$=V[q-3],re.setClickEvent(V[q-2],V[q-1],V[q]);break;case 85:this.$=V[q-4],re.setClickEvent(V[q-3],V[q-2],V[q-1]),re.setTooltip(V[q-3],V[q]);break;case 86:this.$=V[q-3],re.setLink(V[q-2],V[q]);break;case 87:this.$=V[q-4],re.setLink(V[q-3],V[q-1],V[q]);break;case 88:this.$=V[q-4],re.setLink(V[q-3],V[q-1]),re.setTooltip(V[q-3],V[q]);break;case 89:this.$=V[q-5],re.setLink(V[q-4],V[q-2],V[q]),re.setTooltip(V[q-4],V[q-1]);break;case 90:this.$=V[q-2],re.setCssStyle(V[q-1],V[q]);break;case 91:re.setCssClass(V[q-1],V[q]);break;case 92:this.$=[V[q]];break;case 93:V[q-2].push(V[q]),this.$=V[q-2];break;case 95:this.$=V[q-1]+V[q];break}},"anonymous"),table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:39,18:21,19:40,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:e,35:r,37:n,38:22,42:i,43:23,46:a,47:s,49:l,50:u,52:h,54:f,55:d,58:p,60:m,61:g,62:y,63:v,73:x,74:b,76:w,80:C,81:T,84:E,99:A,101:S,102:_},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},t(I,[2,5],{8:[1,48]}),{8:[1,49]},t(D,[2,18],{22:[1,50]}),t(D,[2,20]),t(D,[2,21]),t(D,[2,22]),t(D,[2,23]),t(D,[2,24]),t(D,[2,25]),t(D,[2,26]),t(D,[2,27]),t(D,[2,28]),t(D,[2,29]),{34:[1,51]},{36:[1,52]},t(D,[2,32]),t(D,[2,48],{51:53,64:56,65:57,13:[1,54],22:[1,55],66:k,67:L,68:R,69:O,70:M,71:B,72:F}),{39:[1,65]},t(P,[2,39],{39:[1,67],44:[1,66]}),t(D,[2,50]),t(D,[2,51]),{16:68,58:p,84:E,99:A,101:S},{16:39,18:69,19:40,58:p,84:E,99:A,101:S,102:_},{16:39,18:70,19:40,58:p,84:E,99:A,101:S,102:_},{16:39,18:71,19:40,58:p,84:E,99:A,101:S,102:_},{58:[1,72]},{13:[1,73]},{16:39,18:74,19:40,58:p,84:E,99:A,101:S,102:_},{13:z,53:75},{56:77,58:[1,78]},t(D,[2,61]),t(D,[2,62]),t(D,[2,63]),t(D,[2,64]),t($,[2,12],{16:39,19:40,18:80,17:[1,79],20:[1,81],58:p,84:E,99:A,101:S,102:_}),t($,[2,14],{20:[1,82]}),{15:83,16:84,58:p,84:E,99:A,101:S},{16:39,18:85,19:40,58:p,84:E,99:A,101:S,102:_},t(H,[2,118]),t(H,[2,119]),t(H,[2,120]),t(H,[2,121]),t([1,8,9,12,13,20,22,39,41,44,66,67,68,69,70,71,72,77,79],[2,122]),t(I,[2,6],{10:5,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,18:21,38:22,43:23,16:39,19:40,5:86,33:e,35:r,37:n,42:i,46:a,47:s,49:l,50:u,52:h,54:f,55:d,58:p,60:m,61:g,62:y,63:v,73:x,74:b,76:w,80:C,81:T,84:E,99:A,101:S,102:_}),{5:87,10:5,16:39,18:21,19:40,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:e,35:r,37:n,38:22,42:i,43:23,46:a,47:s,49:l,50:u,52:h,54:f,55:d,58:p,60:m,61:g,62:y,63:v,73:x,74:b,76:w,80:C,81:T,84:E,99:A,101:S,102:_},t(D,[2,19]),t(D,[2,30]),t(D,[2,31]),{13:[1,89],16:39,18:88,19:40,58:p,84:E,99:A,101:S,102:_},{51:90,64:56,65:57,66:k,67:L,68:R,69:O,70:M,71:B,72:F},t(D,[2,49]),{65:91,71:B,72:F},t(Q,[2,68],{64:92,66:k,67:L,68:R,69:O,70:M}),t(j,[2,69]),t(j,[2,70]),t(j,[2,71]),t(j,[2,72]),t(j,[2,73]),t(ie,[2,74]),t(ie,[2,75]),{8:[1,94],24:95,40:93,43:23,46:a},{16:96,58:p,84:E,99:A,101:S},{45:97,49:ne},{48:[1,99]},{13:[1,100]},{13:[1,101]},{77:[1,102],79:[1,103]},{22:le,57:104,58:he,80:K,82:105,83:106,84:X,85:te,86:J,87:se,88:ue,89:Z},{58:[1,116]},{13:z,53:117},t(D,[2,57]),t(D,[2,123]),{22:le,57:118,58:he,59:[1,119],80:K,82:105,83:106,84:X,85:te,86:J,87:se,88:ue,89:Z},t(Se,[2,59]),{16:39,18:120,19:40,58:p,84:E,99:A,101:S,102:_},t($,[2,15]),t($,[2,16]),t($,[2,17]),{39:[2,35]},{15:122,16:84,17:[1,121],39:[2,9],58:p,84:E,99:A,101:S},t(ce,[2,43],{11:123,12:[1,124]}),t(I,[2,7]),{9:[1,125]},t(ae,[2,52]),{16:39,18:126,19:40,58:p,84:E,99:A,101:S,102:_},{13:[1,128],16:39,18:127,19:40,58:p,84:E,99:A,101:S,102:_},t(Q,[2,67],{64:129,66:k,67:L,68:R,69:O,70:M}),t(Q,[2,66]),{41:[1,130]},{24:95,40:131,43:23,46:a},{8:[1,132],41:[2,36]},t(P,[2,40],{39:[1,133]}),{41:[1,134]},{41:[2,46],45:135,49:ne},{16:39,18:136,19:40,58:p,84:E,99:A,101:S,102:_},t(D,[2,76],{13:[1,137]}),t(D,[2,78],{13:[1,139],75:[1,138]}),t(D,[2,82],{13:[1,140],78:[1,141]}),{13:[1,142]},t(D,[2,90],{59:Oe}),t(ge,[2,92],{83:144,22:le,58:he,80:K,84:X,85:te,86:J,87:se,88:ue,89:Z}),t(ze,[2,94]),t(ze,[2,96]),t(ze,[2,97]),t(ze,[2,98]),t(ze,[2,99]),t(ze,[2,100]),t(ze,[2,101]),t(ze,[2,102]),t(ze,[2,103]),t(ze,[2,104]),t(D,[2,91]),t(D,[2,56]),t(D,[2,58],{59:Oe}),{58:[1,145]},t($,[2,13]),{15:146,16:84,58:p,84:E,99:A,101:S},{39:[2,11]},t(ce,[2,44]),{13:[1,147]},{1:[2,4]},t(ae,[2,54]),t(ae,[2,53]),{16:39,18:148,19:40,58:p,84:E,99:A,101:S,102:_},t(Q,[2,65]),t(D,[2,33]),{41:[1,149]},{24:95,40:150,41:[2,37],43:23,46:a},{45:151,49:ne},t(P,[2,41]),{41:[2,47]},t(D,[2,45]),t(D,[2,77]),t(D,[2,79]),t(D,[2,80],{75:[1,152]}),t(D,[2,83]),t(D,[2,84],{13:[1,153]}),t(D,[2,86],{13:[1,155],75:[1,154]}),{22:le,58:he,80:K,82:156,83:106,84:X,85:te,86:J,87:se,88:ue,89:Z},t(ze,[2,95]),t(Se,[2,60]),{39:[2,10]},{14:[1,157]},t(ae,[2,55]),t(D,[2,34]),{41:[2,38]},{41:[1,158]},t(D,[2,81]),t(D,[2,85]),t(D,[2,87]),t(D,[2,88],{75:[1,159]}),t(ge,[2,93],{83:144,22:le,58:he,80:K,84:X,85:te,86:J,87:se,88:ue,89:Z}),t(ce,[2,8]),t(P,[2,42]),t(D,[2,89])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],83:[2,35],122:[2,11],125:[2,4],135:[2,47],146:[2,10],150:[2,38]},parseError:o(function(be,W){if(W.recoverable)this.trace(be);else{var de=new Error(be);throw de.hash=W,de}},"parseError"),parse:o(function(be){var W=this,de=[0],re=[],oe=[null],V=[],xe=this.table,q="",pe=0,ve=0,Pe=0,_e=2,we=1,Ve=V.slice.call(arguments,1),De=Object.create(this.lexer),qe={yy:{}};for(var at in this.yy)Object.prototype.hasOwnProperty.call(this.yy,at)&&(qe.yy[at]=this.yy[at]);De.setInput(be,qe.yy),qe.yy.lexer=De,qe.yy.parser=this,typeof De.yylloc>"u"&&(De.yylloc={});var Rt=De.yylloc;V.push(Rt);var st=De.options&&De.options.ranges;typeof qe.yy.parseError=="function"?this.parseError=qe.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ue(Tt){de.length=de.length-2*Tt,oe.length=oe.length-Tt,V.length=V.length-Tt}o(Ue,"popStack");function ct(){var Tt;return Tt=re.pop()||De.lex()||we,typeof Tt!="number"&&(Tt instanceof Array&&(re=Tt,Tt=re.pop()),Tt=W.symbols_[Tt]||Tt),Tt}o(ct,"lex");for(var We,ot,Yt,bt,Mt,xt,ut={},Et,ft,yt,nt;;){if(Yt=de[de.length-1],this.defaultActions[Yt]?bt=this.defaultActions[Yt]:((We===null||typeof We>"u")&&(We=ct()),bt=xe[Yt]&&xe[Yt][We]),typeof bt>"u"||!bt.length||!bt[0]){var dn="";nt=[];for(Et in xe[Yt])this.terminals_[Et]&&Et>_e&&nt.push("'"+this.terminals_[Et]+"'");De.showPosition?dn="Parse error on line "+(pe+1)+`: +`+De.showPosition()+` +Expecting `+nt.join(", ")+", got '"+(this.terminals_[We]||We)+"'":dn="Parse error on line "+(pe+1)+": Unexpected "+(We==we?"end of input":"'"+(this.terminals_[We]||We)+"'"),this.parseError(dn,{text:De.match,token:this.terminals_[We]||We,line:De.yylineno,loc:Rt,expected:nt})}if(bt[0]instanceof Array&&bt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Yt+", token: "+We);switch(bt[0]){case 1:de.push(We),oe.push(De.yytext),V.push(De.yylloc),de.push(bt[1]),We=null,ot?(We=ot,ot=null):(ve=De.yyleng,q=De.yytext,pe=De.yylineno,Rt=De.yylloc,Pe>0&&Pe--);break;case 2:if(ft=this.productions_[bt[1]][1],ut.$=oe[oe.length-ft],ut._$={first_line:V[V.length-(ft||1)].first_line,last_line:V[V.length-1].last_line,first_column:V[V.length-(ft||1)].first_column,last_column:V[V.length-1].last_column},st&&(ut._$.range=[V[V.length-(ft||1)].range[0],V[V.length-1].range[1]]),xt=this.performAction.apply(ut,[q,ve,pe,qe.yy,bt[1],oe,V].concat(Ve)),typeof xt<"u")return xt;ft&&(de=de.slice(0,-1*ft*2),oe=oe.slice(0,-1*ft),V=V.slice(0,-1*ft)),de.push(this.productions_[bt[1]][0]),oe.push(ut.$),V.push(ut._$),yt=xe[de[de.length-2]][de[de.length-1]],de.push(yt);break;case 3:return!0}}return!0},"parse")},$e=function(){var Ie={EOF:1,parseError:o(function(W,de){if(this.yy.parser)this.yy.parser.parseError(W,de);else throw new Error(W)},"parseError"),setInput:o(function(be,W){return this.yy=W||this.yy||{},this._input=be,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var be=this._input[0];this.yytext+=be,this.yyleng++,this.offset++,this.match+=be,this.matched+=be;var W=be.match(/(?:\r\n?|\n).*/g);return W?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),be},"input"),unput:o(function(be){var W=be.length,de=be.split(/(?:\r\n?|\n)/g);this._input=be+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-W),this.offset-=W;var re=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),de.length-1&&(this.yylineno-=de.length-1);var oe=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:de?(de.length===re.length?this.yylloc.first_column:0)+re[re.length-de.length].length-de[0].length:this.yylloc.first_column-W},this.options.ranges&&(this.yylloc.range=[oe[0],oe[0]+this.yyleng-W]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(be){this.unput(this.match.slice(be))},"less"),pastInput:o(function(){var be=this.matched.substr(0,this.matched.length-this.match.length);return(be.length>20?"...":"")+be.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var be=this.match;return be.length<20&&(be+=this._input.substr(0,20-be.length)),(be.substr(0,20)+(be.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var be=this.pastInput(),W=new Array(be.length+1).join("-");return be+this.upcomingInput()+` +`+W+"^"},"showPosition"),test_match:o(function(be,W){var de,re,oe;if(this.options.backtrack_lexer&&(oe={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(oe.yylloc.range=this.yylloc.range.slice(0))),re=be[0].match(/(?:\r\n?|\n).*/g),re&&(this.yylineno+=re.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:re?re[re.length-1].length-re[re.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+be[0].length},this.yytext+=be[0],this.match+=be[0],this.matches=be,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(be[0].length),this.matched+=be[0],de=this.performAction.call(this,this.yy,this,W,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),de)return de;if(this._backtrack){for(var V in oe)this[V]=oe[V];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var be,W,de,re;this._more||(this.yytext="",this.match="");for(var oe=this._currentRules(),V=0;VW[0].length)){if(W=de,re=V,this.options.backtrack_lexer){if(be=this.test_match(de,oe[V]),be!==!1)return be;if(this._backtrack){W=!1;continue}else return!1}else if(!this.options.flex)break}return W?(be=this.test_match(W,oe[re]),be!==!1?be:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var W=this.next();return W||this.lex()},"lex"),begin:o(function(W){this.conditionStack.push(W)},"begin"),popState:o(function(){var W=this.conditionStack.length-1;return W>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(W){return W=this.conditionStack.length-1-Math.abs(W||0),W>=0?this.conditionStack[W]:"INITIAL"},"topState"),pushState:o(function(W){this.begin(W)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(W,de,re,oe){var V=oe;switch(re){case 0:return 60;case 1:return 61;case 2:return 62;case 3:return 63;case 4:break;case 5:break;case 6:return this.begin("acc_title"),33;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),35;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 8;case 14:break;case 15:return 7;case 16:return 7;case 17:return"EDGE_STATE";case 18:this.begin("callback_name");break;case 19:this.popState();break;case 20:this.popState(),this.begin("callback_args");break;case 21:return 77;case 22:this.popState();break;case 23:return 78;case 24:this.popState();break;case 25:return"STR";case 26:this.begin("string");break;case 27:return 80;case 28:return 55;case 29:return this.begin("namespace"),42;break;case 30:return this.popState(),8;break;case 31:break;case 32:return this.begin("namespace-body"),39;break;case 33:return this.popState(),41;break;case 34:return"EOF_IN_STRUCT";case 35:return 8;case 36:break;case 37:return"EDGE_STATE";case 38:return this.begin("class"),46;break;case 39:return this.popState(),8;break;case 40:break;case 41:return this.popState(),this.popState(),41;break;case 42:return this.begin("class-body"),39;break;case 43:return this.popState(),41;break;case 44:return"EOF_IN_STRUCT";case 45:return"EDGE_STATE";case 46:return"OPEN_IN_STRUCT";case 47:break;case 48:return"MEMBER";case 49:return 81;case 50:return 73;case 51:return 74;case 52:return 76;case 53:return 52;case 54:return 54;case 55:return 47;case 56:return 48;case 57:return 79;case 58:this.popState();break;case 59:return"GENERICTYPE";case 60:this.begin("generic");break;case 61:this.popState();break;case 62:return"BQUOTE_STR";case 63:this.begin("bqstring");break;case 64:return 75;case 65:return 75;case 66:return 75;case 67:return 75;case 68:return 67;case 69:return 67;case 70:return 69;case 71:return 69;case 72:return 68;case 73:return 66;case 74:return 70;case 75:return 71;case 76:return 72;case 77:return 22;case 78:return 44;case 79:return 99;case 80:return 17;case 81:return"PLUS";case 82:return 85;case 83:return 59;case 84:return 88;case 85:return 88;case 86:return 89;case 87:return"EQUALS";case 88:return"EQUALS";case 89:return 58;case 90:return 12;case 91:return 14;case 92:return"PUNCTUATION";case 93:return 84;case 94:return 101;case 95:return 87;case 96:return 87;case 97:return 9}},"anonymous"),rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:classDiagram-v2\b)/,/^(?:classDiagram\b)/,/^(?:\[\*\])/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:["])/,/^(?:[^"]*)/,/^(?:["])/,/^(?:style\b)/,/^(?:classDef\b)/,/^(?:namespace\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:\[\*\])/,/^(?:class\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[}])/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\[\*\])/,/^(?:[{])/,/^(?:[\n])/,/^(?:[^{}\n]*)/,/^(?:cssClass\b)/,/^(?:callback\b)/,/^(?:link\b)/,/^(?:click\b)/,/^(?:note for\b)/,/^(?:note\b)/,/^(?:<<)/,/^(?:>>)/,/^(?:href\b)/,/^(?:[~])/,/^(?:[^~]*)/,/^(?:~)/,/^(?:[`])/,/^(?:[^`]+)/,/^(?:[`])/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:\s*<\|)/,/^(?:\s*\|>)/,/^(?:\s*>)/,/^(?:\s*<)/,/^(?:\s*\*)/,/^(?:\s*o\b)/,/^(?:\s*\(\))/,/^(?:--)/,/^(?:\.\.)/,/^(?::{1}[^:\n;]+)/,/^(?::{3})/,/^(?:-)/,/^(?:\.)/,/^(?:\+)/,/^(?::)/,/^(?:,)/,/^(?:#)/,/^(?:#)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:\w+)/,/^(?:\[)/,/^(?:\])/,/^(?:[!"#$%&'*+,-.`?\\/])/,/^(?:[0-9]+)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\s)/,/^(?:\s)/,/^(?:$)/],conditions:{"namespace-body":{rules:[26,33,34,35,36,37,38,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},namespace:{rules:[26,29,30,31,32,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},"class-body":{rules:[26,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},class:{rules:[26,39,40,41,42,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},acc_descr_multiline:{rules:[11,12,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},acc_descr:{rules:[9,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},acc_title:{rules:[7,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},callback_args:{rules:[22,23,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},callback_name:{rules:[19,20,21,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},href:{rules:[26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},struct:{rules:[26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},generic:{rules:[26,49,50,51,52,53,54,55,56,57,58,59,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},bqstring:{rules:[26,49,50,51,52,53,54,55,56,57,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},string:{rules:[24,25,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,26,27,28,29,38,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97],inclusive:!0}}};return Ie}();He.lexer=$e;function Re(){this.yy={}}return o(Re,"Parser"),Re.prototype=He,He.Parser=Re,new Re}();MO.parser=MO;L6=MO});var Dfe,kb,Lfe=N(()=>{"use strict";zt();gr();Dfe=["#","+","~","-",""],kb=class{static{o(this,"ClassMember")}constructor(e,r){this.memberType=r,this.visibility="",this.classifier="",this.text="";let n=Tr(e,me());this.parseMember(n)}getDisplayDetails(){let e=this.visibility+ec(this.id);this.memberType==="method"&&(e+=`(${ec(this.parameters.trim())})`,this.returnType&&(e+=" : "+ec(this.returnType))),e=e.trim();let r=this.parseClassifier();return{displayText:e,cssStyle:r}}parseMember(e){let r="";if(this.memberType==="method"){let a=/([#+~-])?(.+)\((.*)\)([\s$*])?(.*)([$*])?/.exec(e);if(a){let s=a[1]?a[1].trim():"";if(Dfe.includes(s)&&(this.visibility=s),this.id=a[2],this.parameters=a[3]?a[3].trim():"",r=a[4]?a[4].trim():"",this.returnType=a[5]?a[5].trim():"",r===""){let l=this.returnType.substring(this.returnType.length-1);/[$*]/.exec(l)&&(r=l,this.returnType=this.returnType.substring(0,this.returnType.length-1))}}}else{let i=e.length,a=e.substring(0,1),s=e.substring(i-1);Dfe.includes(a)&&(this.visibility=a),/[$*]/.exec(s)&&(r=s),this.id=e.substring(this.visibility===""?0:1,r===""?i:i-1)}this.classifier=r,this.id=this.id.startsWith(" ")?" "+this.id.trim():this.id.trim();let n=`${this.visibility?"\\"+this.visibility:""}${ec(this.id)}${this.memberType==="method"?`(${ec(this.parameters)})${this.returnType?" : "+ec(this.returnType):""}`:""}`;this.text=n.replaceAll("<","<").replaceAll(">",">"),this.text.startsWith("\\<")&&(this.text=this.text.replace("\\<","~"))}parseClassifier(){switch(this.classifier){case"*":return"font-style:italic;";case"$":return"text-decoration:underline;";default:return""}}}});var R6,Rfe,Lp,D1,OO=N(()=>{"use strict";dr();vt();zt();gr();ir();mi();Lfe();R6="classId-",Rfe=0,Lp=o(t=>Ze.sanitizeText(t,me()),"sanitizeText"),D1=class{constructor(){this.relations=[];this.classes=new Map;this.styleClasses=new Map;this.notes=[];this.interfaces=[];this.namespaces=new Map;this.namespaceCounter=0;this.functions=[];this.lineType={LINE:0,DOTTED_LINE:1};this.relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3,LOLLIPOP:4};this.setupToolTips=o(e=>{let r=Ge(".mermaidTooltip");(r._groups||r)[0][0]===null&&(r=Ge("body").append("div").attr("class","mermaidTooltip").style("opacity",0)),Ge(e).select("svg").selectAll("g.node").on("mouseover",a=>{let s=Ge(a.currentTarget);if(s.attr("title")===null)return;let u=this.getBoundingClientRect();r.transition().duration(200).style("opacity",".9"),r.text(s.attr("title")).style("left",window.scrollX+u.left+(u.right-u.left)/2+"px").style("top",window.scrollY+u.top-14+document.body.scrollTop+"px"),r.html(r.html().replace(/<br\/>/g,"
    ")),s.classed("hover",!0)}).on("mouseout",a=>{r.transition().duration(500).style("opacity",0),Ge(a.currentTarget).classed("hover",!1)})},"setupToolTips");this.direction="TB";this.setAccTitle=Lr;this.getAccTitle=Rr;this.setAccDescription=Nr;this.getAccDescription=Mr;this.setDiagramTitle=$r;this.getDiagramTitle=Ir;this.getConfig=o(()=>me().class,"getConfig");this.functions.push(this.setupToolTips.bind(this)),this.clear(),this.addRelation=this.addRelation.bind(this),this.addClassesToNamespace=this.addClassesToNamespace.bind(this),this.addNamespace=this.addNamespace.bind(this),this.setCssClass=this.setCssClass.bind(this),this.addMembers=this.addMembers.bind(this),this.addClass=this.addClass.bind(this),this.setClassLabel=this.setClassLabel.bind(this),this.addAnnotation=this.addAnnotation.bind(this),this.addMember=this.addMember.bind(this),this.cleanupLabel=this.cleanupLabel.bind(this),this.addNote=this.addNote.bind(this),this.defineClass=this.defineClass.bind(this),this.setDirection=this.setDirection.bind(this),this.setLink=this.setLink.bind(this),this.bindFunctions=this.bindFunctions.bind(this),this.clear=this.clear.bind(this),this.setTooltip=this.setTooltip.bind(this),this.setClickEvent=this.setClickEvent.bind(this),this.setCssStyle=this.setCssStyle.bind(this)}static{o(this,"ClassDB")}splitClassNameAndType(e){let r=Ze.sanitizeText(e,me()),n="",i=r;if(r.indexOf("~")>0){let a=r.split("~");i=Lp(a[0]),n=Lp(a[1])}return{className:i,type:n}}setClassLabel(e,r){let n=Ze.sanitizeText(e,me());r&&(r=Lp(r));let{className:i}=this.splitClassNameAndType(n);this.classes.get(i).label=r,this.classes.get(i).text=`${r}${this.classes.get(i).type?`<${this.classes.get(i).type}>`:""}`}addClass(e){let r=Ze.sanitizeText(e,me()),{className:n,type:i}=this.splitClassNameAndType(r);if(this.classes.has(n))return;let a=Ze.sanitizeText(n,me());this.classes.set(a,{id:a,type:i,label:a,text:`${a}${i?`<${i}>`:""}`,shape:"classBox",cssClasses:"default",methods:[],members:[],annotations:[],styles:[],domId:R6+a+"-"+Rfe}),Rfe++}addInterface(e,r){let n={id:`interface${this.interfaces.length}`,label:e,classId:r};this.interfaces.push(n)}lookUpDomId(e){let r=Ze.sanitizeText(e,me());if(this.classes.has(r))return this.classes.get(r).domId;throw new Error("Class not found: "+r)}clear(){this.relations=[],this.classes=new Map,this.notes=[],this.interfaces=[],this.functions=[],this.functions.push(this.setupToolTips.bind(this)),this.namespaces=new Map,this.namespaceCounter=0,this.direction="TB",Ar()}getClass(e){return this.classes.get(e)}getClasses(){return this.classes}getRelations(){return this.relations}getNotes(){return this.notes}addRelation(e){Y.debug("Adding relation: "+JSON.stringify(e));let r=[this.relationType.LOLLIPOP,this.relationType.AGGREGATION,this.relationType.COMPOSITION,this.relationType.DEPENDENCY,this.relationType.EXTENSION];e.relation.type1===this.relationType.LOLLIPOP&&!r.includes(e.relation.type2)?(this.addClass(e.id2),this.addInterface(e.id1,e.id2),e.id1=`interface${this.interfaces.length-1}`):e.relation.type2===this.relationType.LOLLIPOP&&!r.includes(e.relation.type1)?(this.addClass(e.id1),this.addInterface(e.id2,e.id1),e.id2=`interface${this.interfaces.length-1}`):(this.addClass(e.id1),this.addClass(e.id2)),e.id1=this.splitClassNameAndType(e.id1).className,e.id2=this.splitClassNameAndType(e.id2).className,e.relationTitle1=Ze.sanitizeText(e.relationTitle1.trim(),me()),e.relationTitle2=Ze.sanitizeText(e.relationTitle2.trim(),me()),this.relations.push(e)}addAnnotation(e,r){let n=this.splitClassNameAndType(e).className;this.classes.get(n).annotations.push(r)}addMember(e,r){this.addClass(e);let n=this.splitClassNameAndType(e).className,i=this.classes.get(n);if(typeof r=="string"){let a=r.trim();a.startsWith("<<")&&a.endsWith(">>")?i.annotations.push(Lp(a.substring(2,a.length-2))):a.indexOf(")")>0?i.methods.push(new kb(a,"method")):a&&i.members.push(new kb(a,"attribute"))}}addMembers(e,r){Array.isArray(r)&&(r.reverse(),r.forEach(n=>this.addMember(e,n)))}addNote(e,r){let n={id:`note${this.notes.length}`,class:r,text:e};this.notes.push(n)}cleanupLabel(e){return e.startsWith(":")&&(e=e.substring(1)),Lp(e.trim())}setCssClass(e,r){e.split(",").forEach(n=>{let i=n;/\d/.exec(n[0])&&(i=R6+i);let a=this.classes.get(i);a&&(a.cssClasses+=" "+r)})}defineClass(e,r){for(let n of e){let i=this.styleClasses.get(n);i===void 0&&(i={id:n,styles:[],textStyles:[]},this.styleClasses.set(n,i)),r&&r.forEach(a=>{if(/color/.exec(a)){let s=a.replace("fill","bgFill");i.textStyles.push(s)}i.styles.push(a)}),this.classes.forEach(a=>{a.cssClasses.includes(n)&&a.styles.push(...r.flatMap(s=>s.split(",")))})}}setTooltip(e,r){e.split(",").forEach(n=>{r!==void 0&&(this.classes.get(n).tooltip=Lp(r))})}getTooltip(e,r){return r&&this.namespaces.has(r)?this.namespaces.get(r).classes.get(e).tooltip:this.classes.get(e).tooltip}setLink(e,r,n){let i=me();e.split(",").forEach(a=>{let s=a;/\d/.exec(a[0])&&(s=R6+s);let l=this.classes.get(s);l&&(l.link=Gt.formatUrl(r,i),i.securityLevel==="sandbox"?l.linkTarget="_top":typeof n=="string"?l.linkTarget=Lp(n):l.linkTarget="_blank")}),this.setCssClass(e,"clickable")}setClickEvent(e,r,n){e.split(",").forEach(i=>{this.setClickFunc(i,r,n),this.classes.get(i).haveCallback=!0}),this.setCssClass(e,"clickable")}setClickFunc(e,r,n){let i=Ze.sanitizeText(e,me());if(me().securityLevel!=="loose"||r===void 0)return;let s=i;if(this.classes.has(s)){let l=this.lookUpDomId(s),u=[];if(typeof n=="string"){u=n.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let h=0;h{let h=document.querySelector(`[id="${l}"]`);h!==null&&h.addEventListener("click",()=>{Gt.runFunc(r,...u)},!1)})}}bindFunctions(e){this.functions.forEach(r=>{r(e)})}getDirection(){return this.direction}setDirection(e){this.direction=e}addNamespace(e){this.namespaces.has(e)||(this.namespaces.set(e,{id:e,classes:new Map,children:{},domId:R6+e+"-"+this.namespaceCounter}),this.namespaceCounter++)}getNamespace(e){return this.namespaces.get(e)}getNamespaces(){return this.namespaces}addClassesToNamespace(e,r){if(this.namespaces.has(e))for(let n of r){let{className:i}=this.splitClassNameAndType(n);this.classes.get(i).parent=e,this.namespaces.get(e).classes.set(i,this.classes.get(i))}}setCssStyle(e,r){let n=this.classes.get(e);if(!(!r||!n))for(let i of r)i.includes(",")?n.styles.push(...i.split(",")):n.styles.push(i)}getArrowMarker(e){let r;switch(e){case 0:r="aggregation";break;case 1:r="extension";break;case 2:r="composition";break;case 3:r="dependency";break;case 4:r="lollipop";break;default:r="none"}return r}getData(){let e=[],r=[],n=me();for(let a of this.namespaces.keys()){let s=this.namespaces.get(a);if(s){let l={id:s.id,label:s.id,isGroup:!0,padding:n.class.padding??16,shape:"rect",cssStyles:["fill: none","stroke: black"],look:n.look};e.push(l)}}for(let a of this.classes.keys()){let s=this.classes.get(a);if(s){let l=s;l.parentId=s.parent,l.look=n.look,e.push(l)}}let i=0;for(let a of this.notes){i++;let s={id:a.id,label:a.text,isGroup:!1,shape:"note",padding:n.class.padding??6,cssStyles:["text-align: left","white-space: nowrap",`fill: ${n.themeVariables.noteBkgColor}`,`stroke: ${n.themeVariables.noteBorderColor}`],look:n.look};e.push(s);let l=this.classes.get(a.class)?.id??"";if(l){let u={id:`edgeNote${i}`,start:a.id,end:l,type:"normal",thickness:"normal",classes:"relation",arrowTypeStart:"none",arrowTypeEnd:"none",arrowheadStyle:"",labelStyle:[""],style:["fill: none"],pattern:"dotted",look:n.look};r.push(u)}}for(let a of this.interfaces){let s={id:a.id,label:a.label,isGroup:!1,shape:"rect",cssStyles:["opacity: 0;"],look:n.look};e.push(s)}i=0;for(let a of this.relations){i++;let s={id:$h(a.id1,a.id2,{prefix:"id",counter:i}),start:a.id1,end:a.id2,type:"normal",label:a.title,labelpos:"c",thickness:"normal",classes:"relation",arrowTypeStart:this.getArrowMarker(a.relation.type1),arrowTypeEnd:this.getArrowMarker(a.relation.type2),startLabelRight:a.relationTitle1==="none"?"":a.relationTitle1,endLabelLeft:a.relationTitle2==="none"?"":a.relationTitle2,arrowheadStyle:"",labelStyle:["display: inline-block"],style:a.style||"",pattern:a.relation.lineType==1?"dashed":"solid",look:n.look};r.push(s)}return{nodes:e,edges:r,other:{},config:n,direction:this.getDirection()}}}});var UVe,N6,PO=N(()=>{"use strict";UVe=o(t=>`g.classGroup text { + fill: ${t.nodeBorder||t.classText}; + stroke: none; + font-family: ${t.fontFamily}; + font-size: 10px; + + .title { + font-weight: bolder; + } + +} + +.nodeLabel, .edgeLabel { + color: ${t.classText}; +} +.edgeLabel .label rect { + fill: ${t.mainBkg}; +} +.label text { + fill: ${t.classText}; +} + +.labelBkg { + background: ${t.mainBkg}; +} +.edgeLabel .label span { + background: ${t.mainBkg}; +} + +.classTitle { + font-weight: bolder; +} +.node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${t.mainBkg}; + stroke: ${t.nodeBorder}; + stroke-width: 1px; + } + + +.divider { + stroke: ${t.nodeBorder}; + stroke-width: 1; +} + +g.clickable { + cursor: pointer; +} + +g.classGroup rect { + fill: ${t.mainBkg}; + stroke: ${t.nodeBorder}; +} + +g.classGroup line { + stroke: ${t.nodeBorder}; + stroke-width: 1; +} + +.classLabel .box { + stroke: none; + stroke-width: 0; + fill: ${t.mainBkg}; + opacity: 0.5; +} + +.classLabel .label { + fill: ${t.nodeBorder}; + font-size: 10px; +} + +.relation { + stroke: ${t.lineColor}; + stroke-width: 1; + fill: none; +} + +.dashed-line{ + stroke-dasharray: 3; +} + +.dotted-line{ + stroke-dasharray: 1 2; +} + +#compositionStart, .composition { + fill: ${t.lineColor} !important; + stroke: ${t.lineColor} !important; + stroke-width: 1; +} + +#compositionEnd, .composition { + fill: ${t.lineColor} !important; + stroke: ${t.lineColor} !important; + stroke-width: 1; +} + +#dependencyStart, .dependency { + fill: ${t.lineColor} !important; + stroke: ${t.lineColor} !important; + stroke-width: 1; +} + +#dependencyStart, .dependency { + fill: ${t.lineColor} !important; + stroke: ${t.lineColor} !important; + stroke-width: 1; +} + +#extensionStart, .extension { + fill: transparent !important; + stroke: ${t.lineColor} !important; + stroke-width: 1; +} + +#extensionEnd, .extension { + fill: transparent !important; + stroke: ${t.lineColor} !important; + stroke-width: 1; +} + +#aggregationStart, .aggregation { + fill: transparent !important; + stroke: ${t.lineColor} !important; + stroke-width: 1; +} + +#aggregationEnd, .aggregation { + fill: transparent !important; + stroke: ${t.lineColor} !important; + stroke-width: 1; +} + +#lollipopStart, .lollipop { + fill: ${t.mainBkg} !important; + stroke: ${t.lineColor} !important; + stroke-width: 1; +} + +#lollipopEnd, .lollipop { + fill: ${t.mainBkg} !important; + stroke: ${t.lineColor} !important; + stroke-width: 1; +} + +.edgeTerminals { + font-size: 11px; + line-height: initial; +} + +.classTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${t.textColor}; +} +`,"getStyles"),N6=UVe});var HVe,WVe,qVe,M6,BO=N(()=>{"use strict";zt();vt();gm();Yd();$m();ir();HVe=o((t,e="TB")=>{if(!t.doc)return e;let r=e;for(let n of t.doc)n.stmt==="dir"&&(r=n.value);return r},"getDir"),WVe=o(function(t,e){return e.db.getClasses()},"getClasses"),qVe=o(async function(t,e,r,n){Y.info("REF0:"),Y.info("Drawing class diagram (v3)",e);let{securityLevel:i,state:a,layout:s}=me(),l=n.db.getData(),u=yc(e,i);l.type=n.type,l.layoutAlgorithm=nf(s),l.nodeSpacing=a?.nodeSpacing||50,l.rankSpacing=a?.rankSpacing||50,l.markers=["aggregation","extension","composition","dependency","lollipop"],l.diagramId=e,await Cc(l,u);let h=8;Gt.insertTitle(u,"classDiagramTitleText",a?.titleTopMargin??25,n.db.getDiagramTitle()),Ac(u,h,"classDiagram",a?.useMaxWidth??!0)},"draw"),M6={getClasses:WVe,draw:qVe,getDir:HVe}});var Nfe={};hr(Nfe,{diagram:()=>YVe});var YVe,Mfe=N(()=>{"use strict";IO();OO();PO();BO();YVe={parser:L6,get db(){return new D1},renderer:M6,styles:N6,init:o(t=>{t.class||(t.class={}),t.class.arrowMarkerAbsolute=t.arrowMarkerAbsolute},"init")}});var Pfe={};hr(Pfe,{diagram:()=>QVe});var QVe,Bfe=N(()=>{"use strict";IO();OO();PO();BO();QVe={parser:L6,get db(){return new D1},renderer:M6,styles:N6,init:o(t=>{t.class||(t.class={}),t.class.arrowMarkerAbsolute=t.arrowMarkerAbsolute},"init")}});var FO,I6,$O=N(()=>{"use strict";FO=function(){var t=o(function(F,P,z,$){for(z=z||{},$=F.length;$--;z[F[$]]=P);return z},"o"),e=[1,2],r=[1,3],n=[1,4],i=[2,4],a=[1,9],s=[1,11],l=[1,16],u=[1,17],h=[1,18],f=[1,19],d=[1,32],p=[1,20],m=[1,21],g=[1,22],y=[1,23],v=[1,24],x=[1,26],b=[1,27],w=[1,28],C=[1,29],T=[1,30],E=[1,31],A=[1,34],S=[1,35],_=[1,36],I=[1,37],D=[1,33],k=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],L=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],R=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],O={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,styleStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"-->":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,classDef:38,CLASSDEF_ID:39,CLASSDEF_STYLEOPTS:40,DEFAULT:41,style:42,STYLE_IDS:43,STYLEDEF_STYLEOPTS:44,class:45,CLASSENTITY_IDS:46,STYLECLASS:47,direction_tb:48,direction_bt:49,direction_rl:50,direction_lr:51,eol:52,";":53,EDGE_STATE:54,STYLE_SEPARATOR:55,left_of:56,right_of:57,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",14:"DESCR",15:"-->",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"classDef",39:"CLASSDEF_ID",40:"CLASSDEF_STYLEOPTS",41:"DEFAULT",42:"style",43:"STYLE_IDS",44:"STYLEDEF_STYLEOPTS",45:"class",46:"CLASSENTITY_IDS",47:"STYLECLASS",48:"direction_tb",49:"direction_bt",50:"direction_rl",51:"direction_lr",53:";",54:"EDGE_STATE",55:"STYLE_SEPARATOR",56:"left_of",57:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[10,3],[10,3],[11,3],[12,3],[32,1],[32,1],[32,1],[32,1],[52,1],[52,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1]],performAction:o(function(P,z,$,H,Q,j,ie){var ne=j.length-1;switch(Q){case 3:return H.setRootDoc(j[ne]),j[ne];break;case 4:this.$=[];break;case 5:j[ne]!="nl"&&(j[ne-1].push(j[ne]),this.$=j[ne-1]);break;case 6:case 7:this.$=j[ne];break;case 8:this.$="nl";break;case 12:this.$=j[ne];break;case 13:let X=j[ne-1];X.description=H.trimColon(j[ne]),this.$=X;break;case 14:this.$={stmt:"relation",state1:j[ne-2],state2:j[ne]};break;case 15:let te=H.trimColon(j[ne]);this.$={stmt:"relation",state1:j[ne-3],state2:j[ne-1],description:te};break;case 19:this.$={stmt:"state",id:j[ne-3],type:"default",description:"",doc:j[ne-1]};break;case 20:var le=j[ne],he=j[ne-2].trim();if(j[ne].match(":")){var K=j[ne].split(":");le=K[0],he=[he,K[1]]}this.$={stmt:"state",id:le,type:"default",description:he};break;case 21:this.$={stmt:"state",id:j[ne-3],type:"default",description:j[ne-5],doc:j[ne-1]};break;case 22:this.$={stmt:"state",id:j[ne],type:"fork"};break;case 23:this.$={stmt:"state",id:j[ne],type:"join"};break;case 24:this.$={stmt:"state",id:j[ne],type:"choice"};break;case 25:this.$={stmt:"state",id:H.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:j[ne-1].trim(),note:{position:j[ne-2].trim(),text:j[ne].trim()}};break;case 29:this.$=j[ne].trim(),H.setAccTitle(this.$);break;case 30:case 31:this.$=j[ne].trim(),H.setAccDescription(this.$);break;case 32:case 33:this.$={stmt:"classDef",id:j[ne-1].trim(),classes:j[ne].trim()};break;case 34:this.$={stmt:"style",id:j[ne-1].trim(),styleClass:j[ne].trim()};break;case 35:this.$={stmt:"applyClass",id:j[ne-1].trim(),styleClass:j[ne].trim()};break;case 36:H.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 37:H.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 38:H.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 39:H.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 42:case 43:this.$={stmt:"state",id:j[ne].trim(),type:"default",description:""};break;case 44:this.$={stmt:"state",id:j[ne-2].trim(),classes:[j[ne].trim()],type:"default",description:""};break;case 45:this.$={stmt:"state",id:j[ne-2].trim(),classes:[j[ne].trim()],type:"default",description:""};break}},"anonymous"),table:[{3:1,4:e,5:r,6:n},{1:[3]},{3:5,4:e,5:r,6:n},{3:6,4:e,5:r,6:n},t([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],i,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:a,5:s,8:8,9:10,10:12,11:13,12:14,13:15,16:l,17:u,19:h,22:f,24:d,25:p,26:m,27:g,28:y,29:v,32:25,33:x,35:b,37:w,38:C,42:T,45:E,48:A,49:S,50:_,51:I,54:D},t(k,[2,5]),{9:38,10:12,11:13,12:14,13:15,16:l,17:u,19:h,22:f,24:d,25:p,26:m,27:g,28:y,29:v,32:25,33:x,35:b,37:w,38:C,42:T,45:E,48:A,49:S,50:_,51:I,54:D},t(k,[2,7]),t(k,[2,8]),t(k,[2,9]),t(k,[2,10]),t(k,[2,11]),t(k,[2,12],{14:[1,39],15:[1,40]}),t(k,[2,16]),{18:[1,41]},t(k,[2,18],{20:[1,42]}),{23:[1,43]},t(k,[2,22]),t(k,[2,23]),t(k,[2,24]),t(k,[2,25]),{30:44,31:[1,45],56:[1,46],57:[1,47]},t(k,[2,28]),{34:[1,48]},{36:[1,49]},t(k,[2,31]),{39:[1,50],41:[1,51]},{43:[1,52]},{46:[1,53]},t(L,[2,42],{55:[1,54]}),t(L,[2,43],{55:[1,55]}),t(k,[2,36]),t(k,[2,37]),t(k,[2,38]),t(k,[2,39]),t(k,[2,6]),t(k,[2,13]),{13:56,24:d,54:D},t(k,[2,17]),t(R,i,{7:57}),{24:[1,58]},{24:[1,59]},{23:[1,60]},{24:[2,46]},{24:[2,47]},t(k,[2,29]),t(k,[2,30]),{40:[1,61]},{40:[1,62]},{44:[1,63]},{47:[1,64]},{24:[1,65]},{24:[1,66]},t(k,[2,14],{14:[1,67]}),{4:a,5:s,8:8,9:10,10:12,11:13,12:14,13:15,16:l,17:u,19:h,21:[1,68],22:f,24:d,25:p,26:m,27:g,28:y,29:v,32:25,33:x,35:b,37:w,38:C,42:T,45:E,48:A,49:S,50:_,51:I,54:D},t(k,[2,20],{20:[1,69]}),{31:[1,70]},{24:[1,71]},t(k,[2,32]),t(k,[2,33]),t(k,[2,34]),t(k,[2,35]),t(L,[2,44]),t(L,[2,45]),t(k,[2,15]),t(k,[2,19]),t(R,i,{7:72}),t(k,[2,26]),t(k,[2,27]),{4:a,5:s,8:8,9:10,10:12,11:13,12:14,13:15,16:l,17:u,19:h,21:[1,73],22:f,24:d,25:p,26:m,27:g,28:y,29:v,32:25,33:x,35:b,37:w,38:C,42:T,45:E,48:A,49:S,50:_,51:I,54:D},t(k,[2,21])],defaultActions:{5:[2,1],6:[2,2],46:[2,46],47:[2,47]},parseError:o(function(P,z){if(z.recoverable)this.trace(P);else{var $=new Error(P);throw $.hash=z,$}},"parseError"),parse:o(function(P){var z=this,$=[0],H=[],Q=[null],j=[],ie=this.table,ne="",le=0,he=0,K=0,X=2,te=1,J=j.slice.call(arguments,1),se=Object.create(this.lexer),ue={yy:{}};for(var Z in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Z)&&(ue.yy[Z]=this.yy[Z]);se.setInput(P,ue.yy),ue.yy.lexer=se,ue.yy.parser=this,typeof se.yylloc>"u"&&(se.yylloc={});var Se=se.yylloc;j.push(Se);var ce=se.options&&se.options.ranges;typeof ue.yy.parseError=="function"?this.parseError=ue.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ae(xe){$.length=$.length-2*xe,Q.length=Q.length-xe,j.length=j.length-xe}o(ae,"popStack");function Oe(){var xe;return xe=H.pop()||se.lex()||te,typeof xe!="number"&&(xe instanceof Array&&(H=xe,xe=H.pop()),xe=z.symbols_[xe]||xe),xe}o(Oe,"lex");for(var ge,ze,He,$e,Re,Ie,be={},W,de,re,oe;;){if(He=$[$.length-1],this.defaultActions[He]?$e=this.defaultActions[He]:((ge===null||typeof ge>"u")&&(ge=Oe()),$e=ie[He]&&ie[He][ge]),typeof $e>"u"||!$e.length||!$e[0]){var V="";oe=[];for(W in ie[He])this.terminals_[W]&&W>X&&oe.push("'"+this.terminals_[W]+"'");se.showPosition?V="Parse error on line "+(le+1)+`: +`+se.showPosition()+` +Expecting `+oe.join(", ")+", got '"+(this.terminals_[ge]||ge)+"'":V="Parse error on line "+(le+1)+": Unexpected "+(ge==te?"end of input":"'"+(this.terminals_[ge]||ge)+"'"),this.parseError(V,{text:se.match,token:this.terminals_[ge]||ge,line:se.yylineno,loc:Se,expected:oe})}if($e[0]instanceof Array&&$e.length>1)throw new Error("Parse Error: multiple actions possible at state: "+He+", token: "+ge);switch($e[0]){case 1:$.push(ge),Q.push(se.yytext),j.push(se.yylloc),$.push($e[1]),ge=null,ze?(ge=ze,ze=null):(he=se.yyleng,ne=se.yytext,le=se.yylineno,Se=se.yylloc,K>0&&K--);break;case 2:if(de=this.productions_[$e[1]][1],be.$=Q[Q.length-de],be._$={first_line:j[j.length-(de||1)].first_line,last_line:j[j.length-1].last_line,first_column:j[j.length-(de||1)].first_column,last_column:j[j.length-1].last_column},ce&&(be._$.range=[j[j.length-(de||1)].range[0],j[j.length-1].range[1]]),Ie=this.performAction.apply(be,[ne,he,le,ue.yy,$e[1],Q,j].concat(J)),typeof Ie<"u")return Ie;de&&($=$.slice(0,-1*de*2),Q=Q.slice(0,-1*de),j=j.slice(0,-1*de)),$.push(this.productions_[$e[1]][0]),Q.push(be.$),j.push(be._$),re=ie[$[$.length-2]][$[$.length-1]],$.push(re);break;case 3:return!0}}return!0},"parse")},M=function(){var F={EOF:1,parseError:o(function(z,$){if(this.yy.parser)this.yy.parser.parseError(z,$);else throw new Error(z)},"parseError"),setInput:o(function(P,z){return this.yy=z||this.yy||{},this._input=P,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var P=this._input[0];this.yytext+=P,this.yyleng++,this.offset++,this.match+=P,this.matched+=P;var z=P.match(/(?:\r\n?|\n).*/g);return z?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),P},"input"),unput:o(function(P){var z=P.length,$=P.split(/(?:\r\n?|\n)/g);this._input=P+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-z),this.offset-=z;var H=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),$.length-1&&(this.yylineno-=$.length-1);var Q=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:$?($.length===H.length?this.yylloc.first_column:0)+H[H.length-$.length].length-$[0].length:this.yylloc.first_column-z},this.options.ranges&&(this.yylloc.range=[Q[0],Q[0]+this.yyleng-z]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(P){this.unput(this.match.slice(P))},"less"),pastInput:o(function(){var P=this.matched.substr(0,this.matched.length-this.match.length);return(P.length>20?"...":"")+P.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var P=this.match;return P.length<20&&(P+=this._input.substr(0,20-P.length)),(P.substr(0,20)+(P.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var P=this.pastInput(),z=new Array(P.length+1).join("-");return P+this.upcomingInput()+` +`+z+"^"},"showPosition"),test_match:o(function(P,z){var $,H,Q;if(this.options.backtrack_lexer&&(Q={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Q.yylloc.range=this.yylloc.range.slice(0))),H=P[0].match(/(?:\r\n?|\n).*/g),H&&(this.yylineno+=H.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:H?H[H.length-1].length-H[H.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+P[0].length},this.yytext+=P[0],this.match+=P[0],this.matches=P,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(P[0].length),this.matched+=P[0],$=this.performAction.call(this,this.yy,this,z,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),$)return $;if(this._backtrack){for(var j in Q)this[j]=Q[j];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var P,z,$,H;this._more||(this.yytext="",this.match="");for(var Q=this._currentRules(),j=0;jz[0].length)){if(z=$,H=j,this.options.backtrack_lexer){if(P=this.test_match($,Q[j]),P!==!1)return P;if(this._backtrack){z=!1;continue}else return!1}else if(!this.options.flex)break}return z?(P=this.test_match(z,Q[H]),P!==!1?P:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var z=this.next();return z||this.lex()},"lex"),begin:o(function(z){this.conditionStack.push(z)},"begin"),popState:o(function(){var z=this.conditionStack.length-1;return z>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(z){return z=this.conditionStack.length-1-Math.abs(z||0),z>=0?this.conditionStack[z]:"INITIAL"},"topState"),pushState:o(function(z){this.begin(z)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(z,$,H,Q){var j=Q;switch(H){case 0:return 41;case 1:return 48;case 2:return 49;case 3:return 50;case 4:return 51;case 5:break;case 6:break;case 7:return 5;case 8:break;case 9:break;case 10:break;case 11:break;case 12:return this.pushState("SCALE"),17;break;case 13:return 18;case 14:this.popState();break;case 15:return this.begin("acc_title"),33;break;case 16:return this.popState(),"acc_title_value";break;case 17:return this.begin("acc_descr"),35;break;case 18:return this.popState(),"acc_descr_value";break;case 19:this.begin("acc_descr_multiline");break;case 20:this.popState();break;case 21:return"acc_descr_multiline_value";case 22:return this.pushState("CLASSDEF"),38;break;case 23:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";break;case 24:return this.popState(),this.pushState("CLASSDEFID"),39;break;case 25:return this.popState(),40;break;case 26:return this.pushState("CLASS"),45;break;case 27:return this.popState(),this.pushState("CLASS_STYLE"),46;break;case 28:return this.popState(),47;break;case 29:return this.pushState("STYLE"),42;break;case 30:return this.popState(),this.pushState("STYLEDEF_STYLES"),43;break;case 31:return this.popState(),44;break;case 32:return this.pushState("SCALE"),17;break;case 33:return 18;case 34:this.popState();break;case 35:this.pushState("STATE");break;case 36:return this.popState(),$.yytext=$.yytext.slice(0,-8).trim(),25;break;case 37:return this.popState(),$.yytext=$.yytext.slice(0,-8).trim(),26;break;case 38:return this.popState(),$.yytext=$.yytext.slice(0,-10).trim(),27;break;case 39:return this.popState(),$.yytext=$.yytext.slice(0,-8).trim(),25;break;case 40:return this.popState(),$.yytext=$.yytext.slice(0,-8).trim(),26;break;case 41:return this.popState(),$.yytext=$.yytext.slice(0,-10).trim(),27;break;case 42:return 48;case 43:return 49;case 44:return 50;case 45:return 51;case 46:this.pushState("STATE_STRING");break;case 47:return this.pushState("STATE_ID"),"AS";break;case 48:return this.popState(),"ID";break;case 49:this.popState();break;case 50:return"STATE_DESCR";case 51:return 19;case 52:this.popState();break;case 53:return this.popState(),this.pushState("struct"),20;break;case 54:break;case 55:return this.popState(),21;break;case 56:break;case 57:return this.begin("NOTE"),29;break;case 58:return this.popState(),this.pushState("NOTE_ID"),56;break;case 59:return this.popState(),this.pushState("NOTE_ID"),57;break;case 60:this.popState(),this.pushState("FLOATING_NOTE");break;case 61:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";break;case 62:break;case 63:return"NOTE_TEXT";case 64:return this.popState(),"ID";break;case 65:return this.popState(),this.pushState("NOTE_TEXT"),24;break;case 66:return this.popState(),$.yytext=$.yytext.substr(2).trim(),31;break;case 67:return this.popState(),$.yytext=$.yytext.slice(0,-8).trim(),31;break;case 68:return 6;case 69:return 6;case 70:return 16;case 71:return 54;case 72:return 24;case 73:return $.yytext=$.yytext.trim(),14;break;case 74:return 15;case 75:return 28;case 76:return 55;case 77:return 5;case 78:return"INVALID"}},"anonymous"),rules:[/^(?:default\b)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:classDef\s+)/i,/^(?:DEFAULT\s+)/i,/^(?:\w+\s+)/i,/^(?:[^\n]*)/i,/^(?:class\s+)/i,/^(?:(\w+)+((,\s*\w+)*))/i,/^(?:[^\n]*)/i,/^(?:style\s+)/i,/^(?:[\w,]+\s+)/i,/^(?:[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:state\s+)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*\[\[fork\]\])/i,/^(?:.*\[\[join\]\])/i,/^(?:.*\[\[choice\]\])/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:["])/i,/^(?:\s*as\s+)/i,/^(?:[^\n\{]*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n\s\{]+)/i,/^(?:\n)/i,/^(?:\{)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:\})/i,/^(?:[\n])/i,/^(?:note\s+)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:")/i,/^(?:\s*as\s*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n]*)/i,/^(?:\s*[^:\n\s\-]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:[\s\S]*?end note\b)/i,/^(?:stateDiagram\s+)/i,/^(?:stateDiagram-v2\s+)/i,/^(?:hide empty description\b)/i,/^(?:\[\*\])/i,/^(?:[^:\n\s\-\{]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:-->)/i,/^(?:--)/i,/^(?::::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{LINE:{rules:[9,10],inclusive:!1},struct:{rules:[9,10,22,26,29,35,42,43,44,45,54,55,56,57,71,72,73,74,75],inclusive:!1},FLOATING_NOTE_ID:{rules:[64],inclusive:!1},FLOATING_NOTE:{rules:[61,62,63],inclusive:!1},NOTE_TEXT:{rules:[66,67],inclusive:!1},NOTE_ID:{rules:[65],inclusive:!1},NOTE:{rules:[58,59,60],inclusive:!1},STYLEDEF_STYLEOPTS:{rules:[],inclusive:!1},STYLEDEF_STYLES:{rules:[31],inclusive:!1},STYLE_IDS:{rules:[],inclusive:!1},STYLE:{rules:[30],inclusive:!1},CLASS_STYLE:{rules:[28],inclusive:!1},CLASS:{rules:[27],inclusive:!1},CLASSDEFID:{rules:[25],inclusive:!1},CLASSDEF:{rules:[23,24],inclusive:!1},acc_descr_multiline:{rules:[20,21],inclusive:!1},acc_descr:{rules:[18],inclusive:!1},acc_title:{rules:[16],inclusive:!1},SCALE:{rules:[13,14,33,34],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[48],inclusive:!1},STATE_STRING:{rules:[49,50],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[9,10,36,37,38,39,40,41,46,47,51,52,53],inclusive:!1},ID:{rules:[9,10],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,10,11,12,15,17,19,22,26,29,32,35,53,57,68,69,70,71,72,73,74,76,77,78],inclusive:!0}}};return F}();O.lexer=M;function B(){this.yy={}}return o(B,"Parser"),B.prototype=O,O.Parser=B,new B}();FO.parser=FO;I6=FO});var zfe,O6,zO,L1,Eb,Gfe,Vfe,Ufe,Rp,P6,GO,VO,UO,HO,WO,B6,F6,Hfe,Wfe,qO,YO,qfe,Yfe,R1,tUe,Xfe,XO,rUe,nUe,jfe,Kfe,iUe,Qfe,aUe,Zfe,jO,KO,Jfe,$6,ede,QO,z6=N(()=>{"use strict";zfe="TB",O6="TB",zO="dir",L1="state",Eb="relation",Gfe="classDef",Vfe="style",Ufe="applyClass",Rp="default",P6="divider",GO="fill:none",VO="fill: #333",UO="c",HO="text",WO="normal",B6="rect",F6="rectWithTitle",Hfe="stateStart",Wfe="stateEnd",qO="divider",YO="roundedWithTitle",qfe="note",Yfe="noteGroup",R1="statediagram",tUe="state",Xfe=`${R1}-${tUe}`,XO="transition",rUe="note",nUe="note-edge",jfe=`${XO} ${nUe}`,Kfe=`${R1}-${rUe}`,iUe="cluster",Qfe=`${R1}-${iUe}`,aUe="cluster-alt",Zfe=`${R1}-${aUe}`,jO="parent",KO="note",Jfe="state",$6="----",ede=`${$6}${KO}`,QO=`${$6}${jO}`});function ZO(t="",e=0,r="",n=$6){let i=r!==null&&r.length>0?`${n}${r}`:"";return`${Jfe}-${t}${i}-${e}`}function G6(t,e,r){if(!e.id||e.id===""||e.id==="")return;e.cssClasses&&(Array.isArray(e.cssCompiledStyles)||(e.cssCompiledStyles=[]),e.cssClasses.split(" ").forEach(i=>{if(r.get(i)){let a=r.get(i);e.cssCompiledStyles=[...e.cssCompiledStyles,...a.styles]}}));let n=t.find(i=>i.id===e.id);n?Object.assign(n,e):t.push(e)}function oUe(t){return t?.classes?.join(" ")??""}function lUe(t){return t?.styles??[]}var V6,xf,sUe,tde,N1,rde,nde=N(()=>{"use strict";zt();vt();gr();z6();V6=new Map,xf=0;o(ZO,"stateDomId");sUe=o((t,e,r,n,i,a,s,l)=>{Y.trace("items",e),e.forEach(u=>{switch(u.stmt){case L1:N1(t,u,r,n,i,a,s,l);break;case Rp:N1(t,u,r,n,i,a,s,l);break;case Eb:{N1(t,u.state1,r,n,i,a,s,l),N1(t,u.state2,r,n,i,a,s,l);let h={id:"edge"+xf,start:u.state1.id,end:u.state2.id,arrowhead:"normal",arrowTypeEnd:"arrow_barb",style:GO,labelStyle:"",label:Ze.sanitizeText(u.description,me()),arrowheadStyle:VO,labelpos:UO,labelType:HO,thickness:WO,classes:XO,look:s};i.push(h),xf++}break}})},"setupDoc"),tde=o((t,e=O6)=>{let r=e;if(t.doc)for(let n of t.doc)n.stmt==="dir"&&(r=n.value);return r},"getDir");o(G6,"insertOrUpdateNode");o(oUe,"getClassesFromDbInfo");o(lUe,"getStylesFromDbInfo");N1=o((t,e,r,n,i,a,s,l)=>{let u=e.id,h=r.get(u),f=oUe(h),d=lUe(h);if(Y.info("dataFetcher parsedItem",e,h,d),u!=="root"){let p=B6;e.start===!0?p=Hfe:e.start===!1&&(p=Wfe),e.type!==Rp&&(p=e.type),V6.get(u)||V6.set(u,{id:u,shape:p,description:Ze.sanitizeText(u,me()),cssClasses:`${f} ${Xfe}`,cssStyles:d});let m=V6.get(u);e.description&&(Array.isArray(m.description)?(m.shape=F6,m.description.push(e.description)):m.description?.length>0?(m.shape=F6,m.description===u?m.description=[e.description]:m.description=[m.description,e.description]):(m.shape=B6,m.description=e.description),m.description=Ze.sanitizeTextOrArray(m.description,me())),m.description?.length===1&&m.shape===F6&&(m.type==="group"?m.shape=YO:m.shape=B6),!m.type&&e.doc&&(Y.info("Setting cluster for XCX",u,tde(e)),m.type="group",m.isGroup=!0,m.dir=tde(e),m.shape=e.type===P6?qO:YO,m.cssClasses=`${m.cssClasses} ${Qfe} ${a?Zfe:""}`);let g={labelStyle:"",shape:m.shape,label:m.description,cssClasses:m.cssClasses,cssCompiledStyles:[],cssStyles:m.cssStyles,id:u,dir:m.dir,domId:ZO(u,xf),type:m.type,isGroup:m.type==="group",padding:8,rx:10,ry:10,look:s};if(g.shape===qO&&(g.label=""),t&&t.id!=="root"&&(Y.trace("Setting node ",u," to be child of its parent ",t.id),g.parentId=t.id),g.centerLabel=!0,e.note){let y={labelStyle:"",shape:qfe,label:e.note.text,cssClasses:Kfe,cssStyles:[],cssCompilesStyles:[],id:u+ede+"-"+xf,domId:ZO(u,xf,KO),type:m.type,isGroup:m.type==="group",padding:me().flowchart.padding,look:s,position:e.note.position},v=u+QO,x={labelStyle:"",shape:Yfe,label:e.note.text,cssClasses:m.cssClasses,cssStyles:[],id:u+QO,domId:ZO(u,xf,jO),type:"group",isGroup:!0,padding:16,look:s,position:e.note.position};xf++,x.id=v,y.parentId=v,G6(n,x,l),G6(n,y,l),G6(n,g,l);let b=u,w=y.id;e.note.position==="left of"&&(b=y.id,w=u),i.push({id:b+"-"+w,start:b,end:w,arrowhead:"none",arrowTypeEnd:"",style:GO,labelStyle:"",classes:jfe,arrowheadStyle:VO,labelpos:UO,labelType:HO,thickness:WO,look:s})}else G6(n,g,l)}e.doc&&(Y.trace("Adding nodes children "),sUe(e,e.doc,r,n,i,!a,s,l))},"dataFetcher"),rde=o(()=>{V6.clear(),xf=0},"reset")});var JO,cUe,uUe,ide,eP=N(()=>{"use strict";zt();vt();gm();Yd();$m();ir();z6();JO=o((t,e=O6)=>{if(!t.doc)return e;let r=e;for(let n of t.doc)n.stmt==="dir"&&(r=n.value);return r},"getDir"),cUe=o(function(t,e){return e.db.getClasses()},"getClasses"),uUe=o(async function(t,e,r,n){Y.info("REF0:"),Y.info("Drawing state diagram (v2)",e);let{securityLevel:i,state:a,layout:s}=me();n.db.extract(n.db.getRootDocV2());let l=n.db.getData(),u=yc(e,i);l.type=n.type,l.layoutAlgorithm=s,l.nodeSpacing=a?.nodeSpacing||50,l.rankSpacing=a?.rankSpacing||50,l.markers=["barb"],l.diagramId=e,await Cc(l,u);let h=8;Gt.insertTitle(u,"statediagramTitleText",a?.titleTopMargin??25,n.db.getDiagramTitle()),Ac(u,h,R1,a?.useMaxWidth??!0)},"draw"),ide={getClasses:cUe,draw:uUe,getDir:JO}});function ude(){return new Map}var tP,ade,sde,ode,lde,cde,hUe,fUe,hde,U6,Qo,H6=N(()=>{"use strict";zt();vt();ir();gr();mi();nde();eP();z6();tP="[*]",ade="start",sde=tP,ode="end",lde="color",cde="fill",hUe="bgFill",fUe=",";o(ude,"newClassesList");hde=o(()=>({relations:[],states:new Map,documents:{}}),"newDoc"),U6=o(t=>JSON.parse(JSON.stringify(t)),"clone"),Qo=class{static{o(this,"StateDB")}constructor(e){this.clear(),this.version=e,this.setRootDoc=this.setRootDoc.bind(this),this.getDividerId=this.getDividerId.bind(this),this.setDirection=this.setDirection.bind(this),this.trimColon=this.trimColon.bind(this)}version;nodes=[];edges=[];rootDoc=[];classes=ude();documents={root:hde()};currentDocument=this.documents.root;startEndCount=0;dividerCnt=0;static relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3};setRootDoc(e){Y.info("Setting root doc",e),this.rootDoc=e,this.version===1?this.extract(e):this.extract(this.getRootDocV2())}getRootDoc(){return this.rootDoc}docTranslator(e,r,n){if(r.stmt===Eb)this.docTranslator(e,r.state1,!0),this.docTranslator(e,r.state2,!1);else if(r.stmt===L1&&(r.id==="[*]"?(r.id=n?e.id+"_start":e.id+"_end",r.start=n):r.id=r.id.trim()),r.doc){let i=[],a=[],s;for(s=0;s0&&a.length>0){let l={stmt:L1,id:X9(),type:"divider",doc:U6(a)};i.push(U6(l)),r.doc=i}r.doc.forEach(l=>this.docTranslator(r,l,!0))}}getRootDocV2(){return this.docTranslator({id:"root"},{id:"root",doc:this.rootDoc},!0),{id:"root",doc:this.rootDoc}}extract(e){let r;e.doc?r=e.doc:r=e,Y.info(r),this.clear(!0),Y.info("Extract initial document:",r),r.forEach(s=>{switch(Y.warn("Statement",s.stmt),s.stmt){case L1:this.addState(s.id.trim(),s.type,s.doc,s.description,s.note,s.classes,s.styles,s.textStyles);break;case Eb:this.addRelation(s.state1,s.state2,s.description);break;case Gfe:this.addStyleClass(s.id.trim(),s.classes);break;case Vfe:{let l=s.id.trim().split(","),u=s.styleClass.split(",");l.forEach(h=>{let f=this.getState(h);if(f===void 0){let d=h.trim();this.addState(d),f=this.getState(d)}f.styles=u.map(d=>d.replace(/;/g,"")?.trim())})}break;case Ufe:this.setCssClass(s.id.trim(),s.styleClass);break}});let n=this.getStates(),a=me().look;rde(),N1(void 0,this.getRootDocV2(),n,this.nodes,this.edges,!0,a,this.classes),this.nodes.forEach(s=>{if(Array.isArray(s.label)){if(s.description=s.label.slice(1),s.isGroup&&s.description.length>0)throw new Error("Group nodes can only have label. Remove the additional description for node ["+s.id+"]");s.label=s.label[0]}})}addState(e,r=Rp,n=null,i=null,a=null,s=null,l=null,u=null){let h=e?.trim();if(this.currentDocument.states.has(h)?(this.currentDocument.states.get(h).doc||(this.currentDocument.states.get(h).doc=n),this.currentDocument.states.get(h).type||(this.currentDocument.states.get(h).type=r)):(Y.info("Adding state ",h,i),this.currentDocument.states.set(h,{id:h,descriptions:[],type:r,doc:n,note:a,classes:[],styles:[],textStyles:[]})),i&&(Y.info("Setting state description",h,i),typeof i=="string"&&this.addDescription(h,i.trim()),typeof i=="object"&&i.forEach(f=>this.addDescription(h,f.trim()))),a){let f=this.currentDocument.states.get(h);f.note=a,f.note.text=Ze.sanitizeText(f.note.text,me())}s&&(Y.info("Setting state classes",h,s),(typeof s=="string"?[s]:s).forEach(d=>this.setCssClass(h,d.trim()))),l&&(Y.info("Setting state styles",h,l),(typeof l=="string"?[l]:l).forEach(d=>this.setStyle(h,d.trim()))),u&&(Y.info("Setting state styles",h,l),(typeof u=="string"?[u]:u).forEach(d=>this.setTextStyle(h,d.trim())))}clear(e){this.nodes=[],this.edges=[],this.documents={root:hde()},this.currentDocument=this.documents.root,this.startEndCount=0,this.classes=ude(),e||Ar()}getState(e){return this.currentDocument.states.get(e)}getStates(){return this.currentDocument.states}logDocuments(){Y.info("Documents = ",this.documents)}getRelations(){return this.currentDocument.relations}startIdIfNeeded(e=""){let r=e;return e===tP&&(this.startEndCount++,r=`${ade}${this.startEndCount}`),r}startTypeIfNeeded(e="",r=Rp){return e===tP?ade:r}endIdIfNeeded(e=""){let r=e;return e===sde&&(this.startEndCount++,r=`${ode}${this.startEndCount}`),r}endTypeIfNeeded(e="",r=Rp){return e===sde?ode:r}addRelationObjs(e,r,n){let i=this.startIdIfNeeded(e.id.trim()),a=this.startTypeIfNeeded(e.id.trim(),e.type),s=this.startIdIfNeeded(r.id.trim()),l=this.startTypeIfNeeded(r.id.trim(),r.type);this.addState(i,a,e.doc,e.description,e.note,e.classes,e.styles,e.textStyles),this.addState(s,l,r.doc,r.description,r.note,r.classes,r.styles,r.textStyles),this.currentDocument.relations.push({id1:i,id2:s,relationTitle:Ze.sanitizeText(n,me())})}addRelation(e,r,n){if(typeof e=="object")this.addRelationObjs(e,r,n);else{let i=this.startIdIfNeeded(e.trim()),a=this.startTypeIfNeeded(e),s=this.endIdIfNeeded(r.trim()),l=this.endTypeIfNeeded(r);this.addState(i,a),this.addState(s,l),this.currentDocument.relations.push({id1:i,id2:s,title:Ze.sanitizeText(n,me())})}}addDescription(e,r){let n=this.currentDocument.states.get(e),i=r.startsWith(":")?r.replace(":","").trim():r;n.descriptions.push(Ze.sanitizeText(i,me()))}cleanupLabel(e){return e.substring(0,1)===":"?e.substr(2).trim():e.trim()}getDividerId(){return this.dividerCnt++,"divider-id-"+this.dividerCnt}addStyleClass(e,r=""){this.classes.has(e)||this.classes.set(e,{id:e,styles:[],textStyles:[]});let n=this.classes.get(e);r?.split(fUe).forEach(i=>{let a=i.replace(/([^;]*);/,"$1").trim();if(RegExp(lde).exec(i)){let l=a.replace(cde,hUe).replace(lde,cde);n.textStyles.push(l)}n.styles.push(a)})}getClasses(){return this.classes}setCssClass(e,r){e.split(",").forEach(n=>{let i=this.getState(n);if(i===void 0){let a=n.trim();this.addState(a),i=this.getState(a)}i.classes.push(r)})}setStyle(e,r){let n=this.getState(e);n!==void 0&&n.styles.push(r)}setTextStyle(e,r){let n=this.getState(e);n!==void 0&&n.textStyles.push(r)}getDirectionStatement(){return this.rootDoc.find(e=>e.stmt===zO)}getDirection(){return this.getDirectionStatement()?.value??zfe}setDirection(e){let r=this.getDirectionStatement();r?r.value=e:this.rootDoc.unshift({stmt:zO,value:e})}trimColon(e){return e&&e[0]===":"?e.substr(1).trim():e.trim()}getData(){let e=me();return{nodes:this.nodes,edges:this.edges,other:{},config:e,direction:JO(this.getRootDocV2())}}getConfig(){return me().state}getAccTitle=Rr;setAccTitle=Lr;getAccDescription=Mr;setAccDescription=Nr;setDiagramTitle=$r;getDiagramTitle=Ir}});var dUe,W6,rP=N(()=>{"use strict";dUe=o(t=>` +defs #statediagram-barbEnd { + fill: ${t.transitionColor}; + stroke: ${t.transitionColor}; + } +g.stateGroup text { + fill: ${t.nodeBorder}; + stroke: none; + font-size: 10px; +} +g.stateGroup text { + fill: ${t.textColor}; + stroke: none; + font-size: 10px; + +} +g.stateGroup .state-title { + font-weight: bolder; + fill: ${t.stateLabelColor}; +} + +g.stateGroup rect { + fill: ${t.mainBkg}; + stroke: ${t.nodeBorder}; +} + +g.stateGroup line { + stroke: ${t.lineColor}; + stroke-width: 1; +} + +.transition { + stroke: ${t.transitionColor}; + stroke-width: 1; + fill: none; +} + +.stateGroup .composit { + fill: ${t.background}; + border-bottom: 1px +} + +.stateGroup .alt-composit { + fill: #e0e0e0; + border-bottom: 1px +} + +.state-note { + stroke: ${t.noteBorderColor}; + fill: ${t.noteBkgColor}; + + text { + fill: ${t.noteTextColor}; + stroke: none; + font-size: 10px; + } +} + +.stateLabel .box { + stroke: none; + stroke-width: 0; + fill: ${t.mainBkg}; + opacity: 0.5; +} + +.edgeLabel .label rect { + fill: ${t.labelBackgroundColor}; + opacity: 0.5; +} +.edgeLabel { + background-color: ${t.edgeLabelBackground}; + p { + background-color: ${t.edgeLabelBackground}; + } + rect { + opacity: 0.5; + background-color: ${t.edgeLabelBackground}; + fill: ${t.edgeLabelBackground}; + } + text-align: center; +} +.edgeLabel .label text { + fill: ${t.transitionLabelColor||t.tertiaryTextColor}; +} +.label div .edgeLabel { + color: ${t.transitionLabelColor||t.tertiaryTextColor}; +} + +.stateLabel text { + fill: ${t.stateLabelColor}; + font-size: 10px; + font-weight: bold; +} + +.node circle.state-start { + fill: ${t.specialStateColor}; + stroke: ${t.specialStateColor}; +} + +.node .fork-join { + fill: ${t.specialStateColor}; + stroke: ${t.specialStateColor}; +} + +.node circle.state-end { + fill: ${t.innerEndBackground}; + stroke: ${t.background}; + stroke-width: 1.5 +} +.end-state-inner { + fill: ${t.compositeBackground||t.background}; + // stroke: ${t.background}; + stroke-width: 1.5 +} + +.node rect { + fill: ${t.stateBkg||t.mainBkg}; + stroke: ${t.stateBorder||t.nodeBorder}; + stroke-width: 1px; +} +.node polygon { + fill: ${t.mainBkg}; + stroke: ${t.stateBorder||t.nodeBorder};; + stroke-width: 1px; +} +#statediagram-barbEnd { + fill: ${t.lineColor}; +} + +.statediagram-cluster rect { + fill: ${t.compositeTitleBackground}; + stroke: ${t.stateBorder||t.nodeBorder}; + stroke-width: 1px; +} + +.cluster-label, .nodeLabel { + color: ${t.stateLabelColor}; + // line-height: 1; +} + +.statediagram-cluster rect.outer { + rx: 5px; + ry: 5px; +} +.statediagram-state .divider { + stroke: ${t.stateBorder||t.nodeBorder}; +} + +.statediagram-state .title-state { + rx: 5px; + ry: 5px; +} +.statediagram-cluster.statediagram-cluster .inner { + fill: ${t.compositeBackground||t.background}; +} +.statediagram-cluster.statediagram-cluster-alt .inner { + fill: ${t.altBackground?t.altBackground:"#efefef"}; +} + +.statediagram-cluster .inner { + rx:0; + ry:0; +} + +.statediagram-state rect.basic { + rx: 5px; + ry: 5px; +} +.statediagram-state rect.divider { + stroke-dasharray: 10,10; + fill: ${t.altBackground?t.altBackground:"#efefef"}; +} + +.note-edge { + stroke-dasharray: 5; +} + +.statediagram-note rect { + fill: ${t.noteBkgColor}; + stroke: ${t.noteBorderColor}; + stroke-width: 1px; + rx: 0; + ry: 0; +} +.statediagram-note rect { + fill: ${t.noteBkgColor}; + stroke: ${t.noteBorderColor}; + stroke-width: 1px; + rx: 0; + ry: 0; +} + +.statediagram-note text { + fill: ${t.noteTextColor}; +} + +.statediagram-note .nodeLabel { + color: ${t.noteTextColor}; +} +.statediagram .edgeLabel { + color: red; // ${t.noteTextColor}; +} + +#dependencyStart, #dependencyEnd { + fill: ${t.lineColor}; + stroke: ${t.lineColor}; + stroke-width: 1; +} + +.statediagramTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${t.textColor}; +} +`,"getStyles"),W6=dUe});var nP,pUe,mUe,fde,gUe,dde,pde=N(()=>{"use strict";nP={},pUe=o((t,e)=>{nP[t]=e},"set"),mUe=o(t=>nP[t],"get"),fde=o(()=>Object.keys(nP),"keys"),gUe=o(()=>fde().length,"size"),dde={get:mUe,set:pUe,keys:fde,size:gUe}});var yUe,vUe,xUe,bUe,gde,wUe,TUe,kUe,EUe,iP,mde,yde,vde=N(()=>{"use strict";dr();pde();H6();ir();gr();zt();vt();yUe=o(t=>t.append("circle").attr("class","start-state").attr("r",me().state.sizeUnit).attr("cx",me().state.padding+me().state.sizeUnit).attr("cy",me().state.padding+me().state.sizeUnit),"drawStartState"),vUe=o(t=>t.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",me().state.textHeight).attr("class","divider").attr("x2",me().state.textHeight*2).attr("y1",0).attr("y2",0),"drawDivider"),xUe=o((t,e)=>{let r=t.append("text").attr("x",2*me().state.padding).attr("y",me().state.textHeight+2*me().state.padding).attr("font-size",me().state.fontSize).attr("class","state-title").text(e.id),n=r.node().getBBox();return t.insert("rect",":first-child").attr("x",me().state.padding).attr("y",me().state.padding).attr("width",n.width+2*me().state.padding).attr("height",n.height+2*me().state.padding).attr("rx",me().state.radius),r},"drawSimpleState"),bUe=o((t,e)=>{let r=o(function(p,m,g){let y=p.append("tspan").attr("x",2*me().state.padding).text(m);g||y.attr("dy",me().state.textHeight)},"addTspan"),i=t.append("text").attr("x",2*me().state.padding).attr("y",me().state.textHeight+1.3*me().state.padding).attr("font-size",me().state.fontSize).attr("class","state-title").text(e.descriptions[0]).node().getBBox(),a=i.height,s=t.append("text").attr("x",me().state.padding).attr("y",a+me().state.padding*.4+me().state.dividerMargin+me().state.textHeight).attr("class","state-description"),l=!0,u=!0;e.descriptions.forEach(function(p){l||(r(s,p,u),u=!1),l=!1});let h=t.append("line").attr("x1",me().state.padding).attr("y1",me().state.padding+a+me().state.dividerMargin/2).attr("y2",me().state.padding+a+me().state.dividerMargin/2).attr("class","descr-divider"),f=s.node().getBBox(),d=Math.max(f.width,i.width);return h.attr("x2",d+3*me().state.padding),t.insert("rect",":first-child").attr("x",me().state.padding).attr("y",me().state.padding).attr("width",d+2*me().state.padding).attr("height",f.height+a+2*me().state.padding).attr("rx",me().state.radius),t},"drawDescrState"),gde=o((t,e,r)=>{let n=me().state.padding,i=2*me().state.padding,a=t.node().getBBox(),s=a.width,l=a.x,u=t.append("text").attr("x",0).attr("y",me().state.titleShift).attr("font-size",me().state.fontSize).attr("class","state-title").text(e.id),f=u.node().getBBox().width+i,d=Math.max(f,s);d===s&&(d=d+i);let p,m=t.node().getBBox();e.doc,p=l-n,f>s&&(p=(s-d)/2+n),Math.abs(l-m.x)s&&(p=l-(f-s)/2);let g=1-me().state.textHeight;return t.insert("rect",":first-child").attr("x",p).attr("y",g).attr("class",r?"alt-composit":"composit").attr("width",d).attr("height",m.height+me().state.textHeight+me().state.titleShift+1).attr("rx","0"),u.attr("x",p+n),f<=s&&u.attr("x",l+(d-i)/2-f/2+n),t.insert("rect",":first-child").attr("x",p).attr("y",me().state.titleShift-me().state.textHeight-me().state.padding).attr("width",d).attr("height",me().state.textHeight*3).attr("rx",me().state.radius),t.insert("rect",":first-child").attr("x",p).attr("y",me().state.titleShift-me().state.textHeight-me().state.padding).attr("width",d).attr("height",m.height+3+2*me().state.textHeight).attr("rx",me().state.radius),t},"addTitleAndBox"),wUe=o(t=>(t.append("circle").attr("class","end-state-outer").attr("r",me().state.sizeUnit+me().state.miniPadding).attr("cx",me().state.padding+me().state.sizeUnit+me().state.miniPadding).attr("cy",me().state.padding+me().state.sizeUnit+me().state.miniPadding),t.append("circle").attr("class","end-state-inner").attr("r",me().state.sizeUnit).attr("cx",me().state.padding+me().state.sizeUnit+2).attr("cy",me().state.padding+me().state.sizeUnit+2)),"drawEndState"),TUe=o((t,e)=>{let r=me().state.forkWidth,n=me().state.forkHeight;if(e.parentId){let i=r;r=n,n=i}return t.append("rect").style("stroke","black").style("fill","black").attr("width",r).attr("height",n).attr("x",me().state.padding).attr("y",me().state.padding)},"drawForkJoinState"),kUe=o((t,e,r,n)=>{let i=0,a=n.append("text");a.style("text-anchor","start"),a.attr("class","noteText");let s=t.replace(/\r\n/g,"
    ");s=s.replace(/\n/g,"
    ");let l=s.split(Ze.lineBreakRegex),u=1.25*me().state.noteMargin;for(let h of l){let f=h.trim();if(f.length>0){let d=a.append("tspan");if(d.text(f),u===0){let p=d.node().getBBox();u+=p.height}i+=u,d.attr("x",e+me().state.noteMargin),d.attr("y",r+i+1.25*me().state.noteMargin)}}return{textWidth:a.node().getBBox().width,textHeight:i}},"_drawLongText"),EUe=o((t,e)=>{e.attr("class","state-note");let r=e.append("rect").attr("x",0).attr("y",me().state.padding),n=e.append("g"),{textWidth:i,textHeight:a}=kUe(t,0,0,n);return r.attr("height",a+2*me().state.noteMargin),r.attr("width",i+me().state.noteMargin*2),r},"drawNote"),iP=o(function(t,e){let r=e.id,n={id:r,label:e.id,width:0,height:0},i=t.append("g").attr("id",r).attr("class","stateGroup");e.type==="start"&&yUe(i),e.type==="end"&&wUe(i),(e.type==="fork"||e.type==="join")&&TUe(i,e),e.type==="note"&&EUe(e.note.text,i),e.type==="divider"&&vUe(i),e.type==="default"&&e.descriptions.length===0&&xUe(i,e),e.type==="default"&&e.descriptions.length>0&&bUe(i,e);let a=i.node().getBBox();return n.width=a.width+2*me().state.padding,n.height=a.height+2*me().state.padding,dde.set(r,n),n},"drawState"),mde=0,yde=o(function(t,e,r){let n=o(function(u){switch(u){case Qo.relationType.AGGREGATION:return"aggregation";case Qo.relationType.EXTENSION:return"extension";case Qo.relationType.COMPOSITION:return"composition";case Qo.relationType.DEPENDENCY:return"dependency"}},"getRelationType");e.points=e.points.filter(u=>!Number.isNaN(u.y));let i=e.points,a=wl().x(function(u){return u.x}).y(function(u){return u.y}).curve(Do),s=t.append("path").attr("d",a(i)).attr("id","edge"+mde).attr("class","transition"),l="";if(me().state.arrowMarkerAbsolute&&(l=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,l=l.replace(/\(/g,"\\("),l=l.replace(/\)/g,"\\)")),s.attr("marker-end","url("+l+"#"+n(Qo.relationType.DEPENDENCY)+"End)"),r.title!==void 0){let u=t.append("g").attr("class","stateLabel"),{x:h,y:f}=Gt.calcLabelPosition(e.points),d=Ze.getRows(r.title),p=0,m=[],g=0,y=0;for(let b=0;b<=d.length;b++){let w=u.append("text").attr("text-anchor","middle").text(d[b]).attr("x",h).attr("y",f+p),C=w.node().getBBox();g=Math.max(g,C.width),y=Math.min(y,C.x),Y.info(C.x,h,f+p),p===0&&(p=w.node().getBBox().height,Y.info("Title height",p,f)),m.push(w)}let v=p*d.length;if(d.length>1){let b=(d.length-1)*p*.5;m.forEach((w,C)=>w.attr("y",f+C*p-b)),v=p*d.length}let x=u.node().getBBox();u.insert("rect",":first-child").attr("class","box").attr("x",h-g/2-me().state.padding/2).attr("y",f-v/2-me().state.padding/2-3.5).attr("width",g+me().state.padding).attr("height",v+me().state.padding),Y.info(x)}mde++},"drawEdge")});var fo,aP,SUe,CUe,AUe,_Ue,xde,bde,wde=N(()=>{"use strict";dr();gR();Vo();vt();gr();vde();zt();Ei();aP={},SUe=o(function(){},"setConf"),CUe=o(function(t){t.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"insertMarkers"),AUe=o(function(t,e,r,n){fo=me().state;let i=me().securityLevel,a;i==="sandbox"&&(a=Ge("#i"+e));let s=i==="sandbox"?Ge(a.nodes()[0].contentDocument.body):Ge("body"),l=i==="sandbox"?a.nodes()[0].contentDocument:document;Y.debug("Rendering diagram "+t);let u=s.select(`[id='${e}']`);CUe(u);let h=n.db.getRootDoc();xde(h,u,void 0,!1,s,l,n);let f=fo.padding,d=u.node().getBBox(),p=d.width+f*2,m=d.height+f*2,g=p*1.75;vn(u,m,g,fo.useMaxWidth),u.attr("viewBox",`${d.x-fo.padding} ${d.y-fo.padding} `+p+" "+m)},"draw"),_Ue=o(t=>t?t.length*fo.fontSizeFactor:1,"getLabelWidth"),xde=o((t,e,r,n,i,a,s)=>{let l=new sn({compound:!0,multigraph:!0}),u,h=!0;for(u=0;u{let T=C.parentElement,E=0,A=0;T&&(T.parentElement&&(E=T.parentElement.getBBox().width),A=parseInt(T.getAttribute("data-x-shift"),10),Number.isNaN(A)&&(A=0)),C.setAttribute("x1",0-A+8),C.setAttribute("x2",E-A-8)})):Y.debug("No Node "+b+": "+JSON.stringify(l.node(b)))});let v=y.getBBox();l.edges().forEach(function(b){b!==void 0&&l.edge(b)!==void 0&&(Y.debug("Edge "+b.v+" -> "+b.w+": "+JSON.stringify(l.edge(b))),yde(e,l.edge(b),l.edge(b).relation))}),v=y.getBBox();let x={id:r||"root",label:r||"root",width:0,height:0};return x.width=v.width+2*fo.padding,x.height=v.height+2*fo.padding,Y.debug("Doc rendered",x,l),x},"renderDoc"),bde={setConf:SUe,draw:AUe}});var Tde={};hr(Tde,{diagram:()=>DUe});var DUe,kde=N(()=>{"use strict";$O();H6();rP();wde();DUe={parser:I6,get db(){return new Qo(1)},renderer:bde,styles:W6,init:o(t=>{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute},"init")}});var Cde={};hr(Cde,{diagram:()=>MUe});var MUe,Ade=N(()=>{"use strict";$O();H6();rP();eP();MUe={parser:I6,get db(){return new Qo(2)},renderer:ide,styles:W6,init:o(t=>{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute},"init")}});var sP,Lde,Rde=N(()=>{"use strict";sP=function(){var t=o(function(d,p,m,g){for(m=m||{},g=d.length;g--;m[d[g]]=p);return m},"o"),e=[6,8,10,11,12,14,16,17,18],r=[1,9],n=[1,10],i=[1,11],a=[1,12],s=[1,13],l=[1,14],u={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,taskName:18,taskData:19,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",18:"taskName",19:"taskData"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,2]],performAction:o(function(p,m,g,y,v,x,b){var w=x.length-1;switch(v){case 1:return x[w-1];case 2:this.$=[];break;case 3:x[w-1].push(x[w]),this.$=x[w-1];break;case 4:case 5:this.$=x[w];break;case 6:case 7:this.$=[];break;case 8:y.setDiagramTitle(x[w].substr(6)),this.$=x[w].substr(6);break;case 9:this.$=x[w].trim(),y.setAccTitle(this.$);break;case 10:case 11:this.$=x[w].trim(),y.setAccDescription(this.$);break;case 12:y.addSection(x[w].substr(8)),this.$=x[w].substr(8);break;case 13:y.addTask(x[w-1],x[w]),this.$="task";break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:r,12:n,14:i,16:a,17:s,18:l},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:15,11:r,12:n,14:i,16:a,17:s,18:l},t(e,[2,5]),t(e,[2,6]),t(e,[2,8]),{13:[1,16]},{15:[1,17]},t(e,[2,11]),t(e,[2,12]),{19:[1,18]},t(e,[2,4]),t(e,[2,9]),t(e,[2,10]),t(e,[2,13])],defaultActions:{},parseError:o(function(p,m){if(m.recoverable)this.trace(p);else{var g=new Error(p);throw g.hash=m,g}},"parseError"),parse:o(function(p){var m=this,g=[0],y=[],v=[null],x=[],b=this.table,w="",C=0,T=0,E=0,A=2,S=1,_=x.slice.call(arguments,1),I=Object.create(this.lexer),D={yy:{}};for(var k in this.yy)Object.prototype.hasOwnProperty.call(this.yy,k)&&(D.yy[k]=this.yy[k]);I.setInput(p,D.yy),D.yy.lexer=I,D.yy.parser=this,typeof I.yylloc>"u"&&(I.yylloc={});var L=I.yylloc;x.push(L);var R=I.options&&I.options.ranges;typeof D.yy.parseError=="function"?this.parseError=D.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function O(K){g.length=g.length-2*K,v.length=v.length-K,x.length=x.length-K}o(O,"popStack");function M(){var K;return K=y.pop()||I.lex()||S,typeof K!="number"&&(K instanceof Array&&(y=K,K=y.pop()),K=m.symbols_[K]||K),K}o(M,"lex");for(var B,F,P,z,$,H,Q={},j,ie,ne,le;;){if(P=g[g.length-1],this.defaultActions[P]?z=this.defaultActions[P]:((B===null||typeof B>"u")&&(B=M()),z=b[P]&&b[P][B]),typeof z>"u"||!z.length||!z[0]){var he="";le=[];for(j in b[P])this.terminals_[j]&&j>A&&le.push("'"+this.terminals_[j]+"'");I.showPosition?he="Parse error on line "+(C+1)+`: +`+I.showPosition()+` +Expecting `+le.join(", ")+", got '"+(this.terminals_[B]||B)+"'":he="Parse error on line "+(C+1)+": Unexpected "+(B==S?"end of input":"'"+(this.terminals_[B]||B)+"'"),this.parseError(he,{text:I.match,token:this.terminals_[B]||B,line:I.yylineno,loc:L,expected:le})}if(z[0]instanceof Array&&z.length>1)throw new Error("Parse Error: multiple actions possible at state: "+P+", token: "+B);switch(z[0]){case 1:g.push(B),v.push(I.yytext),x.push(I.yylloc),g.push(z[1]),B=null,F?(B=F,F=null):(T=I.yyleng,w=I.yytext,C=I.yylineno,L=I.yylloc,E>0&&E--);break;case 2:if(ie=this.productions_[z[1]][1],Q.$=v[v.length-ie],Q._$={first_line:x[x.length-(ie||1)].first_line,last_line:x[x.length-1].last_line,first_column:x[x.length-(ie||1)].first_column,last_column:x[x.length-1].last_column},R&&(Q._$.range=[x[x.length-(ie||1)].range[0],x[x.length-1].range[1]]),H=this.performAction.apply(Q,[w,T,C,D.yy,z[1],v,x].concat(_)),typeof H<"u")return H;ie&&(g=g.slice(0,-1*ie*2),v=v.slice(0,-1*ie),x=x.slice(0,-1*ie)),g.push(this.productions_[z[1]][0]),v.push(Q.$),x.push(Q._$),ne=b[g[g.length-2]][g[g.length-1]],g.push(ne);break;case 3:return!0}}return!0},"parse")},h=function(){var d={EOF:1,parseError:o(function(m,g){if(this.yy.parser)this.yy.parser.parseError(m,g);else throw new Error(m)},"parseError"),setInput:o(function(p,m){return this.yy=m||this.yy||{},this._input=p,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var p=this._input[0];this.yytext+=p,this.yyleng++,this.offset++,this.match+=p,this.matched+=p;var m=p.match(/(?:\r\n?|\n).*/g);return m?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),p},"input"),unput:o(function(p){var m=p.length,g=p.split(/(?:\r\n?|\n)/g);this._input=p+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-m),this.offset-=m;var y=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),g.length-1&&(this.yylineno-=g.length-1);var v=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:g?(g.length===y.length?this.yylloc.first_column:0)+y[y.length-g.length].length-g[0].length:this.yylloc.first_column-m},this.options.ranges&&(this.yylloc.range=[v[0],v[0]+this.yyleng-m]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(p){this.unput(this.match.slice(p))},"less"),pastInput:o(function(){var p=this.matched.substr(0,this.matched.length-this.match.length);return(p.length>20?"...":"")+p.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var p=this.match;return p.length<20&&(p+=this._input.substr(0,20-p.length)),(p.substr(0,20)+(p.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var p=this.pastInput(),m=new Array(p.length+1).join("-");return p+this.upcomingInput()+` +`+m+"^"},"showPosition"),test_match:o(function(p,m){var g,y,v;if(this.options.backtrack_lexer&&(v={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(v.yylloc.range=this.yylloc.range.slice(0))),y=p[0].match(/(?:\r\n?|\n).*/g),y&&(this.yylineno+=y.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:y?y[y.length-1].length-y[y.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+p[0].length},this.yytext+=p[0],this.match+=p[0],this.matches=p,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(p[0].length),this.matched+=p[0],g=this.performAction.call(this,this.yy,this,m,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),g)return g;if(this._backtrack){for(var x in v)this[x]=v[x];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var p,m,g,y;this._more||(this.yytext="",this.match="");for(var v=this._currentRules(),x=0;xm[0].length)){if(m=g,y=x,this.options.backtrack_lexer){if(p=this.test_match(g,v[x]),p!==!1)return p;if(this._backtrack){m=!1;continue}else return!1}else if(!this.options.flex)break}return m?(p=this.test_match(m,v[y]),p!==!1?p:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var m=this.next();return m||this.lex()},"lex"),begin:o(function(m){this.conditionStack.push(m)},"begin"),popState:o(function(){var m=this.conditionStack.length-1;return m>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(m){return m=this.conditionStack.length-1-Math.abs(m||0),m>=0?this.conditionStack[m]:"INITIAL"},"topState"),pushState:o(function(m){this.begin(m)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(m,g,y,v){var x=v;switch(y){case 0:break;case 1:break;case 2:return 10;case 3:break;case 4:break;case 5:return 4;case 6:return 11;case 7:return this.begin("acc_title"),12;break;case 8:return this.popState(),"acc_title_value";break;case 9:return this.begin("acc_descr"),14;break;case 10:return this.popState(),"acc_descr_value";break;case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 17;case 15:return 18;case 16:return 19;case 17:return":";case 18:return 6;case 19:return"INVALID"}},"anonymous"),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:journey\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,9,11,14,15,16,17,18,19],inclusive:!0}}};return d}();u.lexer=h;function f(){this.yy={}}return o(f,"Parser"),f.prototype=u,u.Parser=f,new f}();sP.parser=sP;Lde=sP});var M1,oP,Sb,Cb,BUe,FUe,$Ue,zUe,GUe,VUe,UUe,Nde,HUe,lP,Mde=N(()=>{"use strict";zt();mi();M1="",oP=[],Sb=[],Cb=[],BUe=o(function(){oP.length=0,Sb.length=0,M1="",Cb.length=0,Ar()},"clear"),FUe=o(function(t){M1=t,oP.push(t)},"addSection"),$Ue=o(function(){return oP},"getSections"),zUe=o(function(){let t=Nde(),e=100,r=0;for(;!t&&r{r.people&&t.push(...r.people)}),[...new Set(t)].sort()},"updateActors"),VUe=o(function(t,e){let r=e.substr(1).split(":"),n=0,i=[];r.length===1?(n=Number(r[0]),i=[]):(n=Number(r[0]),i=r[1].split(","));let a=i.map(l=>l.trim()),s={section:M1,type:M1,people:a,task:t,score:n};Cb.push(s)},"addTask"),UUe=o(function(t){let e={section:M1,type:M1,description:t,task:t,classes:[]};Sb.push(e)},"addTaskOrg"),Nde=o(function(){let t=o(function(r){return Cb[r].processed},"compileTask"),e=!0;for(let[r,n]of Cb.entries())t(r),e=e&&n.processed;return e},"compileTasks"),HUe=o(function(){return GUe()},"getActors"),lP={getConfig:o(()=>me().journey,"getConfig"),clear:BUe,setDiagramTitle:$r,getDiagramTitle:Ir,setAccTitle:Lr,getAccTitle:Rr,setAccDescription:Nr,getAccDescription:Mr,addSection:FUe,getSections:$Ue,getTasks:zUe,addTask:VUe,addTaskOrg:UUe,getActors:HUe}});var WUe,Ide,Ode=N(()=>{"use strict";WUe=o(t=>`.label { + font-family: ${t.fontFamily}; + color: ${t.textColor}; + } + .mouth { + stroke: #666; + } + + line { + stroke: ${t.textColor} + } + + .legend { + fill: ${t.textColor}; + font-family: ${t.fontFamily}; + } + + .label text { + fill: #333; + } + .label { + color: ${t.textColor} + } + + .face { + ${t.faceColor?`fill: ${t.faceColor}`:"fill: #FFF8DC"}; + stroke: #999; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${t.mainBkg}; + stroke: ${t.nodeBorder}; + stroke-width: 1px; + } + + .node .label { + text-align: center; + } + .node.clickable { + cursor: pointer; + } + + .arrowheadPath { + fill: ${t.arrowheadColor}; + } + + .edgePath .path { + stroke: ${t.lineColor}; + stroke-width: 1.5px; + } + + .flowchart-link { + stroke: ${t.lineColor}; + fill: none; + } + + .edgeLabel { + background-color: ${t.edgeLabelBackground}; + rect { + opacity: 0.5; + } + text-align: center; + } + + .cluster rect { + } + + .cluster text { + fill: ${t.titleColor}; + } + + div.mermaidTooltip { + position: absolute; + text-align: center; + max-width: 200px; + padding: 2px; + font-family: ${t.fontFamily}; + font-size: 12px; + background: ${t.tertiaryColor}; + border: 1px solid ${t.border2}; + border-radius: 2px; + pointer-events: none; + z-index: 100; + } + + .task-type-0, .section-type-0 { + ${t.fillType0?`fill: ${t.fillType0}`:""}; + } + .task-type-1, .section-type-1 { + ${t.fillType0?`fill: ${t.fillType1}`:""}; + } + .task-type-2, .section-type-2 { + ${t.fillType0?`fill: ${t.fillType2}`:""}; + } + .task-type-3, .section-type-3 { + ${t.fillType0?`fill: ${t.fillType3}`:""}; + } + .task-type-4, .section-type-4 { + ${t.fillType0?`fill: ${t.fillType4}`:""}; + } + .task-type-5, .section-type-5 { + ${t.fillType0?`fill: ${t.fillType5}`:""}; + } + .task-type-6, .section-type-6 { + ${t.fillType0?`fill: ${t.fillType6}`:""}; + } + .task-type-7, .section-type-7 { + ${t.fillType0?`fill: ${t.fillType7}`:""}; + } + + .actor-0 { + ${t.actor0?`fill: ${t.actor0}`:""}; + } + .actor-1 { + ${t.actor1?`fill: ${t.actor1}`:""}; + } + .actor-2 { + ${t.actor2?`fill: ${t.actor2}`:""}; + } + .actor-3 { + ${t.actor3?`fill: ${t.actor3}`:""}; + } + .actor-4 { + ${t.actor4?`fill: ${t.actor4}`:""}; + } + .actor-5 { + ${t.actor5?`fill: ${t.actor5}`:""}; + } +`,"getStyles"),Ide=WUe});var cP,qUe,Bde,Fde,YUe,XUe,Pde,jUe,KUe,$de,QUe,I1,zde=N(()=>{"use strict";dr();Wv();cP=o(function(t,e){return kd(t,e)},"drawRect"),qUe=o(function(t,e){let n=t.append("circle").attr("cx",e.cx).attr("cy",e.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),i=t.append("g");i.append("circle").attr("cx",e.cx-15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),i.append("circle").attr("cx",e.cx+15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function a(u){let h=bl().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);u.append("path").attr("class","mouth").attr("d",h).attr("transform","translate("+e.cx+","+(e.cy+2)+")")}o(a,"smile");function s(u){let h=bl().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);u.append("path").attr("class","mouth").attr("d",h).attr("transform","translate("+e.cx+","+(e.cy+7)+")")}o(s,"sad");function l(u){u.append("line").attr("class","mouth").attr("stroke",2).attr("x1",e.cx-5).attr("y1",e.cy+7).attr("x2",e.cx+5).attr("y2",e.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return o(l,"ambivalent"),e.score>3?a(i):e.score<3?s(i):l(i),n},"drawFace"),Bde=o(function(t,e){let r=t.append("circle");return r.attr("cx",e.cx),r.attr("cy",e.cy),r.attr("class","actor-"+e.pos),r.attr("fill",e.fill),r.attr("stroke",e.stroke),r.attr("r",e.r),r.class!==void 0&&r.attr("class",r.class),e.title!==void 0&&r.append("title").text(e.title),r},"drawCircle"),Fde=o(function(t,e){return Nq(t,e)},"drawText"),YUe=o(function(t,e){function r(i,a,s,l,u){return i+","+a+" "+(i+s)+","+a+" "+(i+s)+","+(a+l-u)+" "+(i+s-u*1.2)+","+(a+l)+" "+i+","+(a+l)}o(r,"genPoints");let n=t.append("polygon");n.attr("points",r(e.x,e.y,50,20,7)),n.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+.5*e.labelMargin,Fde(t,e)},"drawLabel"),XUe=o(function(t,e,r){let n=t.append("g"),i=Tl();i.x=e.x,i.y=e.y,i.fill=e.fill,i.width=r.width*e.taskCount+r.diagramMarginX*(e.taskCount-1),i.height=r.height,i.class="journey-section section-type-"+e.num,i.rx=3,i.ry=3,cP(n,i),$de(r)(e.text,n,i.x,i.y,i.width,i.height,{class:"journey-section section-type-"+e.num},r,e.colour)},"drawSection"),Pde=-1,jUe=o(function(t,e,r){let n=e.x+r.width/2,i=t.append("g");Pde++;let a=300+5*30;i.append("line").attr("id","task"+Pde).attr("x1",n).attr("y1",e.y).attr("x2",n).attr("y2",a).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),qUe(i,{cx:n,cy:300+(5-e.score)*30,score:e.score});let s=Tl();s.x=e.x,s.y=e.y,s.fill=e.fill,s.width=r.width,s.height=r.height,s.class="task task-type-"+e.num,s.rx=3,s.ry=3,cP(i,s);let l=e.x+14;e.people.forEach(u=>{let h=e.actors[u].color,f={cx:l,cy:e.y,r:7,fill:h,stroke:"#000",title:u,pos:e.actors[u].position};Bde(i,f),l+=10}),$de(r)(e.task,i,s.x,s.y,s.width,s.height,{class:"task"},r,e.colour)},"drawTask"),KUe=o(function(t,e){q5(t,e)},"drawBackgroundRect"),$de=function(){function t(i,a,s,l,u,h,f,d){let p=a.append("text").attr("x",s+u/2).attr("y",l+h/2+5).style("font-color",d).style("text-anchor","middle").text(i);n(p,f)}o(t,"byText");function e(i,a,s,l,u,h,f,d,p){let{taskFontSize:m,taskFontFamily:g}=d,y=i.split(//gi);for(let v=0;v{let i=ju[n].color,a={cx:20,cy:r,r:7,fill:i,stroke:"#000",pos:ju[n].position};I1.drawCircle(t,a);let s={x:40,y:r+7,fill:"#666",text:n,textMargin:e.boxTextMargin|5};I1.drawText(t,s),r+=20})}var ZUe,ju,q6,Np,eHe,Zo,uP,Gde,tHe,hP,Vde=N(()=>{"use strict";dr();zde();zt();Ei();ZUe=o(function(t){Object.keys(t).forEach(function(r){q6[r]=t[r]})},"setConf"),ju={};o(JUe,"drawActorLegend");q6=me().journey,Np=q6.leftMargin,eHe=o(function(t,e,r,n){let i=me().journey,a=me().securityLevel,s;a==="sandbox"&&(s=Ge("#i"+e));let l=a==="sandbox"?Ge(s.nodes()[0].contentDocument.body):Ge("body");Zo.init();let u=l.select("#"+e);I1.initGraphics(u);let h=n.db.getTasks(),f=n.db.getDiagramTitle(),d=n.db.getActors();for(let x in ju)delete ju[x];let p=0;d.forEach(x=>{ju[x]={color:i.actorColours[p%i.actorColours.length],position:p},p++}),JUe(u),Zo.insert(0,0,Np,Object.keys(ju).length*50),tHe(u,h,0);let m=Zo.getBounds();f&&u.append("text").text(f).attr("x",Np).attr("font-size","4ex").attr("font-weight","bold").attr("y",25);let g=m.stopy-m.starty+2*i.diagramMarginY,y=Np+m.stopx+2*i.diagramMarginX;vn(u,g,y,i.useMaxWidth),u.append("line").attr("x1",Np).attr("y1",i.height*4).attr("x2",y-Np-4).attr("y2",i.height*4).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)");let v=f?70:0;u.attr("viewBox",`${m.startx} -25 ${y} ${g+v}`),u.attr("preserveAspectRatio","xMinYMin meet"),u.attr("height",g+v+25)},"draw"),Zo={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],init:o(function(){this.sequenceItems=[],this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0},"init"),updateVal:o(function(t,e,r,n){t[e]===void 0?t[e]=r:t[e]=n(r,t[e])},"updateVal"),updateBounds:o(function(t,e,r,n){let i=me().journey,a=this,s=0;function l(u){return o(function(f){s++;let d=a.sequenceItems.length-s+1;a.updateVal(f,"starty",e-d*i.boxMargin,Math.min),a.updateVal(f,"stopy",n+d*i.boxMargin,Math.max),a.updateVal(Zo.data,"startx",t-d*i.boxMargin,Math.min),a.updateVal(Zo.data,"stopx",r+d*i.boxMargin,Math.max),u!=="activation"&&(a.updateVal(f,"startx",t-d*i.boxMargin,Math.min),a.updateVal(f,"stopx",r+d*i.boxMargin,Math.max),a.updateVal(Zo.data,"starty",e-d*i.boxMargin,Math.min),a.updateVal(Zo.data,"stopy",n+d*i.boxMargin,Math.max))},"updateItemBounds")}o(l,"updateFn"),this.sequenceItems.forEach(l())},"updateBounds"),insert:o(function(t,e,r,n){let i=Math.min(t,r),a=Math.max(t,r),s=Math.min(e,n),l=Math.max(e,n);this.updateVal(Zo.data,"startx",i,Math.min),this.updateVal(Zo.data,"starty",s,Math.min),this.updateVal(Zo.data,"stopx",a,Math.max),this.updateVal(Zo.data,"stopy",l,Math.max),this.updateBounds(i,s,a,l)},"insert"),bumpVerticalPos:o(function(t){this.verticalPos=this.verticalPos+t,this.data.stopy=this.verticalPos},"bumpVerticalPos"),getVerticalPos:o(function(){return this.verticalPos},"getVerticalPos"),getBounds:o(function(){return this.data},"getBounds")},uP=q6.sectionFills,Gde=q6.sectionColours,tHe=o(function(t,e,r){let n=me().journey,i="",a=n.height*2+n.diagramMarginY,s=r+a,l=0,u="#CCC",h="black",f=0;for(let[d,p]of e.entries()){if(i!==p.section){u=uP[l%uP.length],f=l%uP.length,h=Gde[l%Gde.length];let g=0,y=p.section;for(let x=d;x(ju[y]&&(g[y]=ju[y]),g),{});p.x=d*n.taskMargin+d*n.width+Np,p.y=s,p.width=n.diagramMarginX,p.height=n.diagramMarginY,p.colour=h,p.fill=u,p.num=f,p.actors=m,I1.drawTask(t,p,n),Zo.insert(p.x,p.y,p.x+p.width+n.taskMargin,300+5*30)}},"drawTasks"),hP={setConf:ZUe,draw:eHe}});var Ude={};hr(Ude,{diagram:()=>rHe});var rHe,Hde=N(()=>{"use strict";Rde();Mde();Ode();Vde();rHe={parser:Lde,db:lP,renderer:hP,styles:Ide,init:o(t=>{hP.setConf(t.journey),lP.clear()},"init")}});var dP,Qde,Zde=N(()=>{"use strict";dP=function(){var t=o(function(p,m,g,y){for(g=g||{},y=p.length;y--;g[p[y]]=m);return g},"o"),e=[6,8,10,11,12,14,16,17,20,21],r=[1,9],n=[1,10],i=[1,11],a=[1,12],s=[1,13],l=[1,16],u=[1,17],h={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,timeline:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,period_statement:18,event_statement:19,period:20,event:21,$accept:0,$end:1},terminals_:{2:"error",4:"timeline",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",20:"period",21:"event"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,1],[18,1],[19,1]],performAction:o(function(m,g,y,v,x,b,w){var C=b.length-1;switch(x){case 1:return b[C-1];case 2:this.$=[];break;case 3:b[C-1].push(b[C]),this.$=b[C-1];break;case 4:case 5:this.$=b[C];break;case 6:case 7:this.$=[];break;case 8:v.getCommonDb().setDiagramTitle(b[C].substr(6)),this.$=b[C].substr(6);break;case 9:this.$=b[C].trim(),v.getCommonDb().setAccTitle(this.$);break;case 10:case 11:this.$=b[C].trim(),v.getCommonDb().setAccDescription(this.$);break;case 12:v.addSection(b[C].substr(8)),this.$=b[C].substr(8);break;case 15:v.addTask(b[C],0,""),this.$=b[C];break;case 16:v.addEvent(b[C].substr(2)),this.$=b[C];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:r,12:n,14:i,16:a,17:s,18:14,19:15,20:l,21:u},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:18,11:r,12:n,14:i,16:a,17:s,18:14,19:15,20:l,21:u},t(e,[2,5]),t(e,[2,6]),t(e,[2,8]),{13:[1,19]},{15:[1,20]},t(e,[2,11]),t(e,[2,12]),t(e,[2,13]),t(e,[2,14]),t(e,[2,15]),t(e,[2,16]),t(e,[2,4]),t(e,[2,9]),t(e,[2,10])],defaultActions:{},parseError:o(function(m,g){if(g.recoverable)this.trace(m);else{var y=new Error(m);throw y.hash=g,y}},"parseError"),parse:o(function(m){var g=this,y=[0],v=[],x=[null],b=[],w=this.table,C="",T=0,E=0,A=0,S=2,_=1,I=b.slice.call(arguments,1),D=Object.create(this.lexer),k={yy:{}};for(var L in this.yy)Object.prototype.hasOwnProperty.call(this.yy,L)&&(k.yy[L]=this.yy[L]);D.setInput(m,k.yy),k.yy.lexer=D,k.yy.parser=this,typeof D.yylloc>"u"&&(D.yylloc={});var R=D.yylloc;b.push(R);var O=D.options&&D.options.ranges;typeof k.yy.parseError=="function"?this.parseError=k.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function M(X){y.length=y.length-2*X,x.length=x.length-X,b.length=b.length-X}o(M,"popStack");function B(){var X;return X=v.pop()||D.lex()||_,typeof X!="number"&&(X instanceof Array&&(v=X,X=v.pop()),X=g.symbols_[X]||X),X}o(B,"lex");for(var F,P,z,$,H,Q,j={},ie,ne,le,he;;){if(z=y[y.length-1],this.defaultActions[z]?$=this.defaultActions[z]:((F===null||typeof F>"u")&&(F=B()),$=w[z]&&w[z][F]),typeof $>"u"||!$.length||!$[0]){var K="";he=[];for(ie in w[z])this.terminals_[ie]&&ie>S&&he.push("'"+this.terminals_[ie]+"'");D.showPosition?K="Parse error on line "+(T+1)+`: +`+D.showPosition()+` +Expecting `+he.join(", ")+", got '"+(this.terminals_[F]||F)+"'":K="Parse error on line "+(T+1)+": Unexpected "+(F==_?"end of input":"'"+(this.terminals_[F]||F)+"'"),this.parseError(K,{text:D.match,token:this.terminals_[F]||F,line:D.yylineno,loc:R,expected:he})}if($[0]instanceof Array&&$.length>1)throw new Error("Parse Error: multiple actions possible at state: "+z+", token: "+F);switch($[0]){case 1:y.push(F),x.push(D.yytext),b.push(D.yylloc),y.push($[1]),F=null,P?(F=P,P=null):(E=D.yyleng,C=D.yytext,T=D.yylineno,R=D.yylloc,A>0&&A--);break;case 2:if(ne=this.productions_[$[1]][1],j.$=x[x.length-ne],j._$={first_line:b[b.length-(ne||1)].first_line,last_line:b[b.length-1].last_line,first_column:b[b.length-(ne||1)].first_column,last_column:b[b.length-1].last_column},O&&(j._$.range=[b[b.length-(ne||1)].range[0],b[b.length-1].range[1]]),Q=this.performAction.apply(j,[C,E,T,k.yy,$[1],x,b].concat(I)),typeof Q<"u")return Q;ne&&(y=y.slice(0,-1*ne*2),x=x.slice(0,-1*ne),b=b.slice(0,-1*ne)),y.push(this.productions_[$[1]][0]),x.push(j.$),b.push(j._$),le=w[y[y.length-2]][y[y.length-1]],y.push(le);break;case 3:return!0}}return!0},"parse")},f=function(){var p={EOF:1,parseError:o(function(g,y){if(this.yy.parser)this.yy.parser.parseError(g,y);else throw new Error(g)},"parseError"),setInput:o(function(m,g){return this.yy=g||this.yy||{},this._input=m,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var m=this._input[0];this.yytext+=m,this.yyleng++,this.offset++,this.match+=m,this.matched+=m;var g=m.match(/(?:\r\n?|\n).*/g);return g?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),m},"input"),unput:o(function(m){var g=m.length,y=m.split(/(?:\r\n?|\n)/g);this._input=m+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-g),this.offset-=g;var v=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),y.length-1&&(this.yylineno-=y.length-1);var x=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:y?(y.length===v.length?this.yylloc.first_column:0)+v[v.length-y.length].length-y[0].length:this.yylloc.first_column-g},this.options.ranges&&(this.yylloc.range=[x[0],x[0]+this.yyleng-g]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(m){this.unput(this.match.slice(m))},"less"),pastInput:o(function(){var m=this.matched.substr(0,this.matched.length-this.match.length);return(m.length>20?"...":"")+m.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var m=this.match;return m.length<20&&(m+=this._input.substr(0,20-m.length)),(m.substr(0,20)+(m.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var m=this.pastInput(),g=new Array(m.length+1).join("-");return m+this.upcomingInput()+` +`+g+"^"},"showPosition"),test_match:o(function(m,g){var y,v,x;if(this.options.backtrack_lexer&&(x={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(x.yylloc.range=this.yylloc.range.slice(0))),v=m[0].match(/(?:\r\n?|\n).*/g),v&&(this.yylineno+=v.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:v?v[v.length-1].length-v[v.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+m[0].length},this.yytext+=m[0],this.match+=m[0],this.matches=m,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(m[0].length),this.matched+=m[0],y=this.performAction.call(this,this.yy,this,g,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),y)return y;if(this._backtrack){for(var b in x)this[b]=x[b];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var m,g,y,v;this._more||(this.yytext="",this.match="");for(var x=this._currentRules(),b=0;bg[0].length)){if(g=y,v=b,this.options.backtrack_lexer){if(m=this.test_match(y,x[b]),m!==!1)return m;if(this._backtrack){g=!1;continue}else return!1}else if(!this.options.flex)break}return g?(m=this.test_match(g,x[v]),m!==!1?m:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var g=this.next();return g||this.lex()},"lex"),begin:o(function(g){this.conditionStack.push(g)},"begin"),popState:o(function(){var g=this.conditionStack.length-1;return g>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(g){return g=this.conditionStack.length-1-Math.abs(g||0),g>=0?this.conditionStack[g]:"INITIAL"},"topState"),pushState:o(function(g){this.begin(g)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(g,y,v,x){var b=x;switch(v){case 0:break;case 1:break;case 2:return 10;case 3:break;case 4:break;case 5:return 4;case 6:return 11;case 7:return this.begin("acc_title"),12;break;case 8:return this.popState(),"acc_title_value";break;case 9:return this.begin("acc_descr"),14;break;case 10:return this.popState(),"acc_descr_value";break;case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 17;case 15:return 21;case 16:return 20;case 17:return 6;case 18:return"INVALID"}},"anonymous"),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:timeline\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^:\n]+)/i,/^(?::\s[^:\n]+)/i,/^(?:[^#:\n]+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,9,11,14,15,16,17,18],inclusive:!0}}};return p}();h.lexer=f;function d(){this.yy={}}return o(d,"Parser"),d.prototype=h,h.Parser=d,new d}();dP.parser=dP;Qde=dP});var mP={};hr(mP,{addEvent:()=>ope,addSection:()=>npe,addTask:()=>spe,addTaskOrg:()=>lpe,clear:()=>rpe,default:()=>hHe,getCommonDb:()=>tpe,getSections:()=>ipe,getTasks:()=>ape});var O1,epe,pP,Y6,P1,tpe,rpe,npe,ipe,ape,spe,ope,lpe,Jde,hHe,cpe=N(()=>{"use strict";mi();O1="",epe=0,pP=[],Y6=[],P1=[],tpe=o(()=>qy,"getCommonDb"),rpe=o(function(){pP.length=0,Y6.length=0,O1="",P1.length=0,Ar()},"clear"),npe=o(function(t){O1=t,pP.push(t)},"addSection"),ipe=o(function(){return pP},"getSections"),ape=o(function(){let t=Jde(),e=100,r=0;for(;!t&&rr.id===epe-1).events.push(t)},"addEvent"),lpe=o(function(t){let e={section:O1,type:O1,description:t,task:t,classes:[]};Y6.push(e)},"addTaskOrg"),Jde=o(function(){let t=o(function(r){return P1[r].processed},"compileTask"),e=!0;for(let[r,n]of P1.entries())t(r),e=e&&n.processed;return e},"compileTasks"),hHe={clear:rpe,getCommonDb:tpe,addSection:npe,getSections:ipe,getTasks:ape,addTask:spe,addTaskOrg:lpe,addEvent:ope}});function dpe(t,e){t.each(function(){var r=Ge(this),n=r.text().split(/(\s+|
    )/).reverse(),i,a=[],s=1.1,l=r.attr("y"),u=parseFloat(r.attr("dy")),h=r.text(null).append("tspan").attr("x",0).attr("y",l).attr("dy",u+"em");for(let f=0;fe||i==="
    ")&&(a.pop(),h.text(a.join(" ").trim()),i==="
    "?a=[""]:a=[i],h=r.append("tspan").attr("x",0).attr("y",l).attr("dy",s+"em").text(i))})}var fHe,X6,dHe,pHe,hpe,mHe,gHe,upe,yHe,vHe,xHe,gP,fpe,bHe,wHe,THe,kHe,bf,ppe=N(()=>{"use strict";dr();fHe=12,X6=o(function(t,e){let r=t.append("rect");return r.attr("x",e.x),r.attr("y",e.y),r.attr("fill",e.fill),r.attr("stroke",e.stroke),r.attr("width",e.width),r.attr("height",e.height),r.attr("rx",e.rx),r.attr("ry",e.ry),e.class!==void 0&&r.attr("class",e.class),r},"drawRect"),dHe=o(function(t,e){let n=t.append("circle").attr("cx",e.cx).attr("cy",e.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),i=t.append("g");i.append("circle").attr("cx",e.cx-15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),i.append("circle").attr("cx",e.cx+15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function a(u){let h=bl().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);u.append("path").attr("class","mouth").attr("d",h).attr("transform","translate("+e.cx+","+(e.cy+2)+")")}o(a,"smile");function s(u){let h=bl().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);u.append("path").attr("class","mouth").attr("d",h).attr("transform","translate("+e.cx+","+(e.cy+7)+")")}o(s,"sad");function l(u){u.append("line").attr("class","mouth").attr("stroke",2).attr("x1",e.cx-5).attr("y1",e.cy+7).attr("x2",e.cx+5).attr("y2",e.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return o(l,"ambivalent"),e.score>3?a(i):e.score<3?s(i):l(i),n},"drawFace"),pHe=o(function(t,e){let r=t.append("circle");return r.attr("cx",e.cx),r.attr("cy",e.cy),r.attr("class","actor-"+e.pos),r.attr("fill",e.fill),r.attr("stroke",e.stroke),r.attr("r",e.r),r.class!==void 0&&r.attr("class",r.class),e.title!==void 0&&r.append("title").text(e.title),r},"drawCircle"),hpe=o(function(t,e){let r=e.text.replace(//gi," "),n=t.append("text");n.attr("x",e.x),n.attr("y",e.y),n.attr("class","legend"),n.style("text-anchor",e.anchor),e.class!==void 0&&n.attr("class",e.class);let i=n.append("tspan");return i.attr("x",e.x+e.textMargin*2),i.text(r),n},"drawText"),mHe=o(function(t,e){function r(i,a,s,l,u){return i+","+a+" "+(i+s)+","+a+" "+(i+s)+","+(a+l-u)+" "+(i+s-u*1.2)+","+(a+l)+" "+i+","+(a+l)}o(r,"genPoints");let n=t.append("polygon");n.attr("points",r(e.x,e.y,50,20,7)),n.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+.5*e.labelMargin,hpe(t,e)},"drawLabel"),gHe=o(function(t,e,r){let n=t.append("g"),i=gP();i.x=e.x,i.y=e.y,i.fill=e.fill,i.width=r.width,i.height=r.height,i.class="journey-section section-type-"+e.num,i.rx=3,i.ry=3,X6(n,i),fpe(r)(e.text,n,i.x,i.y,i.width,i.height,{class:"journey-section section-type-"+e.num},r,e.colour)},"drawSection"),upe=-1,yHe=o(function(t,e,r){let n=e.x+r.width/2,i=t.append("g");upe++;let a=300+5*30;i.append("line").attr("id","task"+upe).attr("x1",n).attr("y1",e.y).attr("x2",n).attr("y2",a).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),dHe(i,{cx:n,cy:300+(5-e.score)*30,score:e.score});let s=gP();s.x=e.x,s.y=e.y,s.fill=e.fill,s.width=r.width,s.height=r.height,s.class="task task-type-"+e.num,s.rx=3,s.ry=3,X6(i,s),fpe(r)(e.task,i,s.x,s.y,s.width,s.height,{class:"task"},r,e.colour)},"drawTask"),vHe=o(function(t,e){X6(t,{x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,class:"rect"}).lower()},"drawBackgroundRect"),xHe=o(function(){return{x:0,y:0,fill:void 0,"text-anchor":"start",width:100,height:100,textMargin:0,rx:0,ry:0}},"getTextObj"),gP=o(function(){return{x:0,y:0,width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),fpe=function(){function t(i,a,s,l,u,h,f,d){let p=a.append("text").attr("x",s+u/2).attr("y",l+h/2+5).style("font-color",d).style("text-anchor","middle").text(i);n(p,f)}o(t,"byText");function e(i,a,s,l,u,h,f,d,p){let{taskFontSize:m,taskFontFamily:g}=d,y=i.split(//gi);for(let v=0;v{"use strict";dr();ppe();vt();zt();Ei();EHe=o(function(t,e,r,n){let i=me(),a=i.leftMargin??50;Y.debug("timeline",n.db);let s=i.securityLevel,l;s==="sandbox"&&(l=Ge("#i"+e));let h=(s==="sandbox"?Ge(l.nodes()[0].contentDocument.body):Ge("body")).select("#"+e);h.append("g");let f=n.db.getTasks(),d=n.db.getCommonDb().getDiagramTitle();Y.debug("task",f),bf.initGraphics(h);let p=n.db.getSections();Y.debug("sections",p);let m=0,g=0,y=0,v=0,x=50+a,b=50;v=50;let w=0,C=!0;p.forEach(function(_){let I={number:w,descr:_,section:w,width:150,padding:20,maxHeight:m},D=bf.getVirtualNodeHeight(h,I,i);Y.debug("sectionHeight before draw",D),m=Math.max(m,D+20)});let T=0,E=0;Y.debug("tasks.length",f.length);for(let[_,I]of f.entries()){let D={number:_,descr:I,section:I.section,width:150,padding:20,maxHeight:g},k=bf.getVirtualNodeHeight(h,D,i);Y.debug("taskHeight before draw",k),g=Math.max(g,k+20),T=Math.max(T,I.events.length);let L=0;for(let R of I.events){let O={descr:R,section:I.section,number:I.section,width:150,padding:20,maxHeight:50};L+=bf.getVirtualNodeHeight(h,O,i)}E=Math.max(E,L)}Y.debug("maxSectionHeight before draw",m),Y.debug("maxTaskHeight before draw",g),p&&p.length>0?p.forEach(_=>{let I=f.filter(R=>R.section===_),D={number:w,descr:_,section:w,width:200*Math.max(I.length,1)-50,padding:20,maxHeight:m};Y.debug("sectionNode",D);let k=h.append("g"),L=bf.drawNode(k,D,w,i);Y.debug("sectionNode output",L),k.attr("transform",`translate(${x}, ${v})`),b+=m+50,I.length>0&&mpe(h,I,w,x,b,g,i,T,E,m,!1),x+=200*Math.max(I.length,1),b=v,w++}):(C=!1,mpe(h,f,w,x,b,g,i,T,E,m,!0));let A=h.node().getBBox();Y.debug("bounds",A),d&&h.append("text").text(d).attr("x",A.width/2-a).attr("font-size","4ex").attr("font-weight","bold").attr("y",20),y=C?m+g+150:g+100,h.append("g").attr("class","lineWrapper").append("line").attr("x1",a).attr("y1",y).attr("x2",A.width+3*a).attr("y2",y).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)"),Ao(void 0,h,i.timeline?.padding??50,i.timeline?.useMaxWidth??!1)},"draw"),mpe=o(function(t,e,r,n,i,a,s,l,u,h,f){for(let d of e){let p={descr:d.task,section:r,number:r,width:150,padding:20,maxHeight:a};Y.debug("taskNode",p);let m=t.append("g").attr("class","taskWrapper"),y=bf.drawNode(m,p,r,s).height;if(Y.debug("taskHeight after draw",y),m.attr("transform",`translate(${n}, ${i})`),a=Math.max(a,y),d.events){let v=t.append("g").attr("class","lineWrapper"),x=a;i+=100,x=x+SHe(t,d.events,r,n,i,s),i-=100,v.append("line").attr("x1",n+190/2).attr("y1",i+a).attr("x2",n+190/2).attr("y2",i+a+(f?a:h)+u+120).attr("stroke-width",2).attr("stroke","black").attr("marker-end","url(#arrowhead)").attr("stroke-dasharray","5,5")}n=n+200,f&&!s.timeline?.disableMulticolor&&r++}i=i-10},"drawTasks"),SHe=o(function(t,e,r,n,i,a){let s=0,l=i;i=i+100;for(let u of e){let h={descr:u,section:r,number:r,width:150,padding:20,maxHeight:50};Y.debug("eventNode",h);let f=t.append("g").attr("class","eventWrapper"),p=bf.drawNode(f,h,r,a).height;s=s+p,f.attr("transform",`translate(${n}, ${i})`),i=i+10+p}return i=l,s},"drawEvents"),gpe={setConf:o(()=>{},"setConf"),draw:EHe}});var CHe,AHe,vpe,xpe=N(()=>{"use strict";Ys();CHe=o(t=>{let e="";for(let r=0;r` + .edge { + stroke-width: 3; + } + ${CHe(t)} + .section-root rect, .section-root path, .section-root circle { + fill: ${t.git0}; + } + .section-root text { + fill: ${t.gitBranchLabel0}; + } + .icon-container { + height:100%; + display: flex; + justify-content: center; + align-items: center; + } + .edge { + fill: none; + } + .eventWrapper { + filter: brightness(120%); + } +`,"getStyles"),vpe=AHe});var bpe={};hr(bpe,{diagram:()=>_He});var _He,wpe=N(()=>{"use strict";Zde();cpe();ype();xpe();_He={db:mP,renderer:gpe,parser:Qde,styles:vpe}});var yP,Epe,Spe=N(()=>{"use strict";yP=function(){var t=o(function(C,T,E,A){for(E=E||{},A=C.length;A--;E[C[A]]=T);return E},"o"),e=[1,4],r=[1,13],n=[1,12],i=[1,15],a=[1,16],s=[1,20],l=[1,19],u=[6,7,8],h=[1,26],f=[1,24],d=[1,25],p=[6,7,11],m=[1,6,13,15,16,19,22],g=[1,33],y=[1,34],v=[1,6,7,11,13,15,16,19,22],x={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,MINDMAP:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,ICON:15,CLASS:16,nodeWithId:17,nodeWithoutId:18,NODE_DSTART:19,NODE_DESCR:20,NODE_DEND:21,NODE_ID:22,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"MINDMAP",11:"EOF",13:"SPACELIST",15:"ICON",16:"CLASS",19:"NODE_DSTART",20:"NODE_DESCR",21:"NODE_DEND",22:"NODE_ID"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,2],[12,2],[12,2],[12,1],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[18,3],[17,1],[17,4]],performAction:o(function(T,E,A,S,_,I,D){var k=I.length-1;switch(_){case 6:case 7:return S;case 8:S.getLogger().trace("Stop NL ");break;case 9:S.getLogger().trace("Stop EOF ");break;case 11:S.getLogger().trace("Stop NL2 ");break;case 12:S.getLogger().trace("Stop EOF2 ");break;case 15:S.getLogger().info("Node: ",I[k].id),S.addNode(I[k-1].length,I[k].id,I[k].descr,I[k].type);break;case 16:S.getLogger().trace("Icon: ",I[k]),S.decorateNode({icon:I[k]});break;case 17:case 21:S.decorateNode({class:I[k]});break;case 18:S.getLogger().trace("SPACELIST");break;case 19:S.getLogger().trace("Node: ",I[k].id),S.addNode(0,I[k].id,I[k].descr,I[k].type);break;case 20:S.decorateNode({icon:I[k]});break;case 25:S.getLogger().trace("node found ..",I[k-2]),this.$={id:I[k-1],descr:I[k-1],type:S.getType(I[k-2],I[k])};break;case 26:this.$={id:I[k],descr:I[k],type:S.nodeType.DEFAULT};break;case 27:S.getLogger().trace("node found ..",I[k-3]),this.$={id:I[k-3],descr:I[k-1],type:S.getType(I[k-2],I[k])};break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:e},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:e},{6:r,7:[1,10],9:9,12:11,13:n,14:14,15:i,16:a,17:17,18:18,19:s,22:l},t(u,[2,3]),{1:[2,2]},t(u,[2,4]),t(u,[2,5]),{1:[2,6],6:r,12:21,13:n,14:14,15:i,16:a,17:17,18:18,19:s,22:l},{6:r,9:22,12:11,13:n,14:14,15:i,16:a,17:17,18:18,19:s,22:l},{6:h,7:f,10:23,11:d},t(p,[2,22],{17:17,18:18,14:27,15:[1,28],16:[1,29],19:s,22:l}),t(p,[2,18]),t(p,[2,19]),t(p,[2,20]),t(p,[2,21]),t(p,[2,23]),t(p,[2,24]),t(p,[2,26],{19:[1,30]}),{20:[1,31]},{6:h,7:f,10:32,11:d},{1:[2,7],6:r,12:21,13:n,14:14,15:i,16:a,17:17,18:18,19:s,22:l},t(m,[2,14],{7:g,11:y}),t(v,[2,8]),t(v,[2,9]),t(v,[2,10]),t(p,[2,15]),t(p,[2,16]),t(p,[2,17]),{20:[1,35]},{21:[1,36]},t(m,[2,13],{7:g,11:y}),t(v,[2,11]),t(v,[2,12]),{21:[1,37]},t(p,[2,25]),t(p,[2,27])],defaultActions:{2:[2,1],6:[2,2]},parseError:o(function(T,E){if(E.recoverable)this.trace(T);else{var A=new Error(T);throw A.hash=E,A}},"parseError"),parse:o(function(T){var E=this,A=[0],S=[],_=[null],I=[],D=this.table,k="",L=0,R=0,O=0,M=2,B=1,F=I.slice.call(arguments,1),P=Object.create(this.lexer),z={yy:{}};for(var $ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,$)&&(z.yy[$]=this.yy[$]);P.setInput(T,z.yy),z.yy.lexer=P,z.yy.parser=this,typeof P.yylloc>"u"&&(P.yylloc={});var H=P.yylloc;I.push(H);var Q=P.options&&P.options.ranges;typeof z.yy.parseError=="function"?this.parseError=z.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function j(ae){A.length=A.length-2*ae,_.length=_.length-ae,I.length=I.length-ae}o(j,"popStack");function ie(){var ae;return ae=S.pop()||P.lex()||B,typeof ae!="number"&&(ae instanceof Array&&(S=ae,ae=S.pop()),ae=E.symbols_[ae]||ae),ae}o(ie,"lex");for(var ne,le,he,K,X,te,J={},se,ue,Z,Se;;){if(he=A[A.length-1],this.defaultActions[he]?K=this.defaultActions[he]:((ne===null||typeof ne>"u")&&(ne=ie()),K=D[he]&&D[he][ne]),typeof K>"u"||!K.length||!K[0]){var ce="";Se=[];for(se in D[he])this.terminals_[se]&&se>M&&Se.push("'"+this.terminals_[se]+"'");P.showPosition?ce="Parse error on line "+(L+1)+`: +`+P.showPosition()+` +Expecting `+Se.join(", ")+", got '"+(this.terminals_[ne]||ne)+"'":ce="Parse error on line "+(L+1)+": Unexpected "+(ne==B?"end of input":"'"+(this.terminals_[ne]||ne)+"'"),this.parseError(ce,{text:P.match,token:this.terminals_[ne]||ne,line:P.yylineno,loc:H,expected:Se})}if(K[0]instanceof Array&&K.length>1)throw new Error("Parse Error: multiple actions possible at state: "+he+", token: "+ne);switch(K[0]){case 1:A.push(ne),_.push(P.yytext),I.push(P.yylloc),A.push(K[1]),ne=null,le?(ne=le,le=null):(R=P.yyleng,k=P.yytext,L=P.yylineno,H=P.yylloc,O>0&&O--);break;case 2:if(ue=this.productions_[K[1]][1],J.$=_[_.length-ue],J._$={first_line:I[I.length-(ue||1)].first_line,last_line:I[I.length-1].last_line,first_column:I[I.length-(ue||1)].first_column,last_column:I[I.length-1].last_column},Q&&(J._$.range=[I[I.length-(ue||1)].range[0],I[I.length-1].range[1]]),te=this.performAction.apply(J,[k,R,L,z.yy,K[1],_,I].concat(F)),typeof te<"u")return te;ue&&(A=A.slice(0,-1*ue*2),_=_.slice(0,-1*ue),I=I.slice(0,-1*ue)),A.push(this.productions_[K[1]][0]),_.push(J.$),I.push(J._$),Z=D[A[A.length-2]][A[A.length-1]],A.push(Z);break;case 3:return!0}}return!0},"parse")},b=function(){var C={EOF:1,parseError:o(function(E,A){if(this.yy.parser)this.yy.parser.parseError(E,A);else throw new Error(E)},"parseError"),setInput:o(function(T,E){return this.yy=E||this.yy||{},this._input=T,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var T=this._input[0];this.yytext+=T,this.yyleng++,this.offset++,this.match+=T,this.matched+=T;var E=T.match(/(?:\r\n?|\n).*/g);return E?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),T},"input"),unput:o(function(T){var E=T.length,A=T.split(/(?:\r\n?|\n)/g);this._input=T+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-E),this.offset-=E;var S=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),A.length-1&&(this.yylineno-=A.length-1);var _=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:A?(A.length===S.length?this.yylloc.first_column:0)+S[S.length-A.length].length-A[0].length:this.yylloc.first_column-E},this.options.ranges&&(this.yylloc.range=[_[0],_[0]+this.yyleng-E]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(T){this.unput(this.match.slice(T))},"less"),pastInput:o(function(){var T=this.matched.substr(0,this.matched.length-this.match.length);return(T.length>20?"...":"")+T.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var T=this.match;return T.length<20&&(T+=this._input.substr(0,20-T.length)),(T.substr(0,20)+(T.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var T=this.pastInput(),E=new Array(T.length+1).join("-");return T+this.upcomingInput()+` +`+E+"^"},"showPosition"),test_match:o(function(T,E){var A,S,_;if(this.options.backtrack_lexer&&(_={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(_.yylloc.range=this.yylloc.range.slice(0))),S=T[0].match(/(?:\r\n?|\n).*/g),S&&(this.yylineno+=S.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:S?S[S.length-1].length-S[S.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+T[0].length},this.yytext+=T[0],this.match+=T[0],this.matches=T,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(T[0].length),this.matched+=T[0],A=this.performAction.call(this,this.yy,this,E,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),A)return A;if(this._backtrack){for(var I in _)this[I]=_[I];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var T,E,A,S;this._more||(this.yytext="",this.match="");for(var _=this._currentRules(),I=0;I<_.length;I++)if(A=this._input.match(this.rules[_[I]]),A&&(!E||A[0].length>E[0].length)){if(E=A,S=I,this.options.backtrack_lexer){if(T=this.test_match(A,_[I]),T!==!1)return T;if(this._backtrack){E=!1;continue}else return!1}else if(!this.options.flex)break}return E?(T=this.test_match(E,_[S]),T!==!1?T:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var E=this.next();return E||this.lex()},"lex"),begin:o(function(E){this.conditionStack.push(E)},"begin"),popState:o(function(){var E=this.conditionStack.length-1;return E>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(E){return E=this.conditionStack.length-1-Math.abs(E||0),E>=0?this.conditionStack[E]:"INITIAL"},"topState"),pushState:o(function(E){this.begin(E)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(E,A,S,_){var I=_;switch(S){case 0:return E.getLogger().trace("Found comment",A.yytext),6;break;case 1:return 8;case 2:this.begin("CLASS");break;case 3:return this.popState(),16;break;case 4:this.popState();break;case 5:E.getLogger().trace("Begin icon"),this.begin("ICON");break;case 6:return E.getLogger().trace("SPACELINE"),6;break;case 7:return 7;case 8:return 15;case 9:E.getLogger().trace("end icon"),this.popState();break;case 10:return E.getLogger().trace("Exploding node"),this.begin("NODE"),19;break;case 11:return E.getLogger().trace("Cloud"),this.begin("NODE"),19;break;case 12:return E.getLogger().trace("Explosion Bang"),this.begin("NODE"),19;break;case 13:return E.getLogger().trace("Cloud Bang"),this.begin("NODE"),19;break;case 14:return this.begin("NODE"),19;break;case 15:return this.begin("NODE"),19;break;case 16:return this.begin("NODE"),19;break;case 17:return this.begin("NODE"),19;break;case 18:return 13;case 19:return 22;case 20:return 11;case 21:this.begin("NSTR2");break;case 22:return"NODE_DESCR";case 23:this.popState();break;case 24:E.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 25:return E.getLogger().trace("description:",A.yytext),"NODE_DESCR";break;case 26:this.popState();break;case 27:return this.popState(),E.getLogger().trace("node end ))"),"NODE_DEND";break;case 28:return this.popState(),E.getLogger().trace("node end )"),"NODE_DEND";break;case 29:return this.popState(),E.getLogger().trace("node end ...",A.yytext),"NODE_DEND";break;case 30:return this.popState(),E.getLogger().trace("node end (("),"NODE_DEND";break;case 31:return this.popState(),E.getLogger().trace("node end (-"),"NODE_DEND";break;case 32:return this.popState(),E.getLogger().trace("node end (-"),"NODE_DEND";break;case 33:return this.popState(),E.getLogger().trace("node end (("),"NODE_DEND";break;case 34:return this.popState(),E.getLogger().trace("node end (("),"NODE_DEND";break;case 35:return E.getLogger().trace("Long description:",A.yytext),20;break;case 36:return E.getLogger().trace("Long description:",A.yytext),20;break}},"anonymous"),rules:[/^(?:\s*%%.*)/i,/^(?:mindmap\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{CLASS:{rules:[3,4],inclusive:!1},ICON:{rules:[8,9],inclusive:!1},NSTR2:{rules:[22,23],inclusive:!1},NSTR:{rules:[25,26],inclusive:!1},NODE:{rules:[21,24,27,28,29,30,31,32,33,34,35,36],inclusive:!1},INITIAL:{rules:[0,1,2,5,6,7,10,11,12,13,14,15,16,17,18,19,20],inclusive:!0}}};return C}();x.lexer=b;function w(){this.yy={}}return o(w,"Parser"),w.prototype=x,x.Parser=w,new w}();yP.parser=yP;Epe=yP});var $l,Cpe,vP,NHe,MHe,IHe,OHe,Vi,PHe,BHe,FHe,$He,zHe,GHe,VHe,Ape,_pe=N(()=>{"use strict";zt();gr();vt();Ya();$l=[],Cpe=0,vP={},NHe=o(()=>{$l=[],Cpe=0,vP={}},"clear"),MHe=o(function(t){for(let e=$l.length-1;e>=0;e--)if($l[e].level$l.length>0?$l[0]:null,"getMindmap"),OHe=o((t,e,r,n)=>{Y.info("addNode",t,e,r,n);let i=me(),a=i.mindmap?.padding??or.mindmap.padding;switch(n){case Vi.ROUNDED_RECT:case Vi.RECT:case Vi.HEXAGON:a*=2}let s={id:Cpe++,nodeId:Tr(e,i),level:t,descr:Tr(r,i),type:n,children:[],width:i.mindmap?.maxNodeWidth??or.mindmap.maxNodeWidth,padding:a},l=MHe(t);if(l)l.children.push(s),$l.push(s);else if($l.length===0)$l.push(s);else throw new Error('There can be only one root. No parent could be found for ("'+s.descr+'")')},"addNode"),Vi={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},PHe=o((t,e)=>{switch(Y.debug("In get type",t,e),t){case"[":return Vi.RECT;case"(":return e===")"?Vi.ROUNDED_RECT:Vi.CLOUD;case"((":return Vi.CIRCLE;case")":return Vi.CLOUD;case"))":return Vi.BANG;case"{{":return Vi.HEXAGON;default:return Vi.DEFAULT}},"getType"),BHe=o((t,e)=>{vP[t]=e},"setElementForId"),FHe=o(t=>{if(!t)return;let e=me(),r=$l[$l.length-1];t.icon&&(r.icon=Tr(t.icon,e)),t.class&&(r.class=Tr(t.class,e))},"decorateNode"),$He=o(t=>{switch(t){case Vi.DEFAULT:return"no-border";case Vi.RECT:return"rect";case Vi.ROUNDED_RECT:return"rounded-rect";case Vi.CIRCLE:return"circle";case Vi.CLOUD:return"cloud";case Vi.BANG:return"bang";case Vi.HEXAGON:return"hexgon";default:return"no-border"}},"type2Str"),zHe=o(()=>Y,"getLogger"),GHe=o(t=>vP[t],"getElementById"),VHe={clear:NHe,addNode:OHe,getMindmap:IHe,nodeType:Vi,getType:PHe,setElementForId:BHe,decorateNode:FHe,type2Str:$He,getLogger:zHe,getElementById:GHe},Ape=VHe});function Wi(t){"@babel/helpers - typeof";return Wi=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Wi(t)}function Mf(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function Dpe(t,e){for(var r=0;rt.length)&&(e=t.length);for(var r=0,n=new Array(e);r=t.length?{done:!0}:{done:!1,value:t[n++]}},"n"),e:o(function(u){throw u},"e"),f:i}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var a=!0,s=!1,l;return{s:o(function(){r=r.call(t)},"s"),n:o(function(){var u=r.next();return a=u.done,u},"n"),e:o(function(u){s=!0,l=u},"e"),f:o(function(){try{!a&&r.return!=null&&r.return()}finally{if(s)throw l}},"f")}}function yWe(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}function vWe(t,e){return e={exports:{}},t(e,e.exports),e.exports}function SWe(t){for(var e=t.length;e--&&EWe.test(t.charAt(e)););return e}function _We(t){return t&&t.slice(0,CWe(t)+1).replace(AWe,"")}function MWe(t){var e=RWe.call(t,Ab),r=t[Ab];try{t[Ab]=void 0;var n=!0}catch{}var i=NWe.call(t);return n&&(e?t[Ab]=r:delete t[Ab]),i}function BWe(t){return PWe.call(t)}function GWe(t){return t==null?t===void 0?zWe:$We:Npe&&Npe in Object(t)?IWe(t):FWe(t)}function VWe(t){return t!=null&&typeof t=="object"}function WWe(t){return typeof t=="symbol"||UWe(t)&&ame(t)==HWe}function KWe(t){if(typeof t=="number")return t;if(r4(t))return Mpe;if(zp(t)){var e=typeof t.valueOf=="function"?t.valueOf():t;t=zp(e)?e+"":e}if(typeof t!="string")return t===0?t:+t;t=DWe(t);var r=YWe.test(t);return r||XWe.test(t)?jWe(t.slice(2),r?2:8):qWe.test(t)?Mpe:+t}function eqe(t,e,r){var n,i,a,s,l,u,h=0,f=!1,d=!1,p=!0;if(typeof t!="function")throw new TypeError(QWe);e=Ipe(e)||0,zp(r)&&(f=!!r.leading,d="maxWait"in r,a=d?ZWe(Ipe(r.maxWait)||0,e):a,p="trailing"in r?!!r.trailing:p);function m(E){var A=n,S=i;return n=i=void 0,h=E,s=t.apply(S,A),s}o(m,"invokeFunc");function g(E){return h=E,l=setTimeout(x,e),f?m(E):s}o(g,"leadingEdge");function y(E){var A=E-u,S=E-h,_=e-A;return d?JWe(_,a-S):_}o(y,"remainingWait");function v(E){var A=E-u,S=E-h;return u===void 0||A>=e||A<0||d&&S>=a}o(v,"shouldInvoke");function x(){var E=xP();if(v(E))return b(E);l=setTimeout(x,y(E))}o(x,"timerExpired");function b(E){return l=void 0,p&&n?m(E):(n=i=void 0,s)}o(b,"trailingEdge");function w(){l!==void 0&&clearTimeout(l),h=0,n=u=i=l=void 0}o(w,"cancel");function C(){return l===void 0?s:b(xP())}o(C,"flush");function T(){var E=xP(),A=v(E);if(n=arguments,i=this,u=E,A){if(l===void 0)return g(u);if(d)return clearTimeout(l),l=setTimeout(x,e),m(u)}return l===void 0&&(l=setTimeout(x,e)),s}return o(T,"debounced"),T.cancel=w,T.flush=C,T}function IS(t,e,r,n,i,a){var s;return si(t)?s=t:s=Q1[t]||Q1.euclidean,e===0&&si(t)?s(i,a):s(e,r,n,i,a)}function qYe(t,e){if(OS(t))return!1;var r=typeof t;return r=="number"||r=="symbol"||r=="boolean"||t==null||r4(t)?!0:WYe.test(t)||!HYe.test(t)||e!=null&&t in Object(e)}function ZYe(t){if(!zp(t))return!1;var e=ame(t);return e==jYe||e==KYe||e==XYe||e==QYe}function tXe(t){return!!e0e&&e0e in t}function aXe(t){if(t!=null){try{return iXe.call(t)}catch{}try{return t+""}catch{}}return""}function pXe(t){if(!zp(t)||rXe(t))return!1;var e=JYe(t)?dXe:lXe;return e.test(sXe(t))}function gXe(t,e){return t?.[e]}function vXe(t,e){var r=yXe(t,e);return mXe(r)?r:void 0}function bXe(){this.__data__=jb?jb(null):{},this.size=0}function TXe(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}function AXe(t){var e=this.__data__;if(jb){var r=e[t];return r===EXe?void 0:r}return CXe.call(e,t)?e[t]:void 0}function RXe(t){var e=this.__data__;return jb?e[t]!==void 0:LXe.call(e,t)}function IXe(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=jb&&e===void 0?MXe:e,this}function ty(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e-1}function XXe(t,e){var r=this.__data__,n=PS(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this}function ry(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e-1&&t%1==0&&t0;){var f=i.shift();e(f),a.add(f.id()),l&&n(i,a,f)}return t}function Fme(t,e,r){if(r.isParent())for(var n=r._private.children,i=0;i0&&arguments[0]!==void 0?arguments[0]:NKe,e=arguments.length>1?arguments[1]:void 0,r=0;r0?k=R:D=R;while(Math.abs(L)>s&&++O=a?b(I,O):M===0?O:C(I,D,D+h)}o(T,"getTForX");var E=!1;function A(){E=!0,(t!==e||r!==n)&&w()}o(A,"precompute");var S=o(function(D){return E||A(),t===e&&r===n?D:D===0?0:D===1?1:v(T(D),e,n)},"f");S.getControlPoints=function(){return[{x:t,y:e},{x:r,y:n}]};var _="generateBezier("+[t,e,r,n]+")";return S.toString=function(){return _},S}function x0e(t,e,r,n,i){if(n===1||e===r)return r;var a=i(e,r,n);return t==null||((t.roundValue||t.color)&&(a=Math.round(a)),t.min!==void 0&&(a=Math.max(a,t.min)),t.max!==void 0&&(a=Math.min(a,t.max))),a}function b0e(t,e){return t.pfValue!=null||t.value!=null?t.pfValue!=null&&(e==null||e.type.units!=="%")?t.pfValue:t.value:t}function $1(t,e,r,n,i){var a=i!=null?i.type:null;r<0?r=0:r>1&&(r=1);var s=b0e(t,i),l=b0e(e,i);if(Ct(s)&&Ct(l))return x0e(a,s,l,r,n);if(En(s)&&En(l)){for(var u=[],h=0;h0?(m==="spring"&&g.push(s.duration),s.easingImpl=dS[m].apply(null,g)):s.easingImpl=dS[m]}var y=s.easingImpl,v;if(s.duration===0?v=1:v=(r-u)/s.duration,s.applying&&(v=s.progress),v<0?v=0:v>1&&(v=1),s.delay==null){var x=s.startPosition,b=s.position;if(b&&i&&!t.locked()){var w={};Rb(x.x,b.x)&&(w.x=$1(x.x,b.x,v,y)),Rb(x.y,b.y)&&(w.y=$1(x.y,b.y,v,y)),t.position(w)}var C=s.startPan,T=s.pan,E=a.pan,A=T!=null&&n;A&&(Rb(C.x,T.x)&&(E.x=$1(C.x,T.x,v,y)),Rb(C.y,T.y)&&(E.y=$1(C.y,T.y,v,y)),t.emit("pan"));var S=s.startZoom,_=s.zoom,I=_!=null&&n;I&&(Rb(S,_)&&(a.zoom=Yb(a.minZoom,$1(S,_,v,y),a.maxZoom)),t.emit("zoom")),(A||I)&&t.emit("viewport");var D=s.style;if(D&&D.length>0&&i){for(var k=0;k=0;A--){var S=E[A];S()}E.splice(0,E.length)},"callbacks"),b=m.length-1;b>=0;b--){var w=m[b],C=w._private;if(C.stopped){m.splice(b,1),C.hooked=!1,C.playing=!1,C.started=!1,x(C.frames);continue}!C.playing&&!C.applying||(C.playing&&C.applying&&(C.applying=!1),C.started||qKe(f,w,t),WKe(f,w,t,d),C.applying&&(C.applying=!1),x(C.frames),C.step!=null&&C.step(t),w.completed()&&(m.splice(b,1),C.hooked=!1,C.playing=!1,C.started=!1,x(C.completes)),y=!0)}return!d&&m.length===0&&g.length===0&&n.push(f),y}o(i,"stepOne");for(var a=!1,s=0;s0?e.notify("draw",r):e.notify("draw")),r.unmerge(n),e.emit("step")}function tge(t){this.options=rr({},eQe,tQe,t)}function rge(t){this.options=rr({},rQe,t)}function nge(t){this.options=rr({},nQe,t)}function HS(t){this.options=rr({},iQe,t),this.options.layout=this;var e=this.options.eles.nodes(),r=this.options.eles.edges(),n=r.filter(function(i){var a=i.source().data("id"),s=i.target().data("id"),l=e.some(function(h){return h.data("id")===a}),u=e.some(function(h){return h.data("id")===s});return!l||!u});this.options.eles=this.options.eles.not(n)}function age(t){this.options=rr({},wQe,t)}function gB(t){this.options=rr({},TQe,t)}function sge(t){this.options=rr({},kQe,t)}function oge(t){this.options=rr({},EQe,t)}function lge(t){this.options=t,this.notifications=0}function hge(t,e){e.radius===0?t.lineTo(e.cx,e.cy):t.arc(e.cx,e.cy,e.radius,e.startAngle,e.endAngle,e.counterClockwise)}function vB(t,e,r,n){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0;return n===0||e.radius===0?{cx:e.x,cy:e.y,radius:0,startX:e.x,startY:e.y,stopX:e.x,stopY:e.y,startAngle:void 0,endAngle:void 0,counterClockwise:void 0}:(AQe(t,e,r,n,i),{cx:HP,cy:WP,radius:Bp,startX:cge,startY:uge,stopX:qP,stopY:YP,startAngle:qc.ang+Math.PI/2*Fp,endAngle:Jo.ang-Math.PI/2*Fp,counterClockwise:gS})}function fge(t){var e=[];if(t!=null){for(var r=0;r5&&arguments[5]!==void 0?arguments[5]:5,s=arguments.length>6?arguments[6]:void 0;t.beginPath(),t.moveTo(e+a,r),t.lineTo(e+n-a,r),t.quadraticCurveTo(e+n,r,e+n,r+a),t.lineTo(e+n,r+i-a),t.quadraticCurveTo(e+n,r+i,e+n-a,r+i),t.lineTo(e+a,r+i),t.quadraticCurveTo(e,r+i,e,r+i-a),t.lineTo(e,r+a),t.quadraticCurveTo(e,r,e+a,r),t.closePath(),s?t.stroke():t.fill()}function z0e(t,e,r){var n=t.createShader(e);if(t.shaderSource(n,r),t.compileShader(n),!t.getShaderParameter(n,t.COMPILE_STATUS))throw new Error(t.getShaderInfoLog(n));return n}function pZe(t,e,r){var n=z0e(t,t.VERTEX_SHADER,e),i=z0e(t,t.FRAGMENT_SHADER,r),a=t.createProgram();if(t.attachShader(a,n),t.attachShader(a,i),t.linkProgram(a),!t.getProgramParameter(a,t.LINK_STATUS))throw new Error("Could not initialize shaders");return a}function mZe(t,e,r){r===void 0&&(r=e);var n=t.makeOffscreenCanvas(e,r),i=n.context=n.getContext("2d");return n.clear=function(){return i.clearRect(0,0,n.width,n.height)},n.clear(),n}function wB(t){var e=t.pixelRatio,r=t.cy.zoom(),n=t.cy.pan();return{zoom:r*e,pan:{x:n.x*e,y:n.y*e}}}function NP(t,e,r,n,i){var a=n*r+e.x,s=i*r+e.y;return s=Math.round(t.canvasHeight-s),[a,s]}function oS(t,e,r){var n=t[0]/255,i=t[1]/255,a=t[2]/255,s=e,l=r||new Array(4);return l[0]=n*s,l[1]=i*s,l[2]=a*s,l[3]=s,l}function lS(t,e){var r=e||new Array(4);return r[0]=(t>>0&255)/255,r[1]=(t>>8&255)/255,r[2]=(t>>16&255)/255,r[3]=(t>>24&255)/255,r}function gZe(t){return t[0]+(t[1]<<8)+(t[2]<<16)+(t[3]<<24)}function yZe(t,e){var r=t.createTexture();return r.buffer=function(n){t.bindTexture(t.TEXTURE_2D,r),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.LINEAR_MIPMAP_NEAREST),t.pixelStorei(t.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0),t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,n),t.generateMipmap(t.TEXTURE_2D),t.bindTexture(t.TEXTURE_2D,null)},r.deleteTexture=function(){t.deleteTexture(r)},r}function Sge(t,e){switch(e){case"float":return[1,t.FLOAT,4];case"vec2":return[2,t.FLOAT,4];case"vec3":return[3,t.FLOAT,4];case"vec4":return[4,t.FLOAT,4];case"int":return[1,t.INT,4];case"ivec2":return[2,t.INT,4]}}function Cge(t,e,r){switch(e){case t.FLOAT:return new Float32Array(r);case t.INT:return new Int32Array(r)}}function vZe(t,e,r,n,i,a){switch(e){case t.FLOAT:return new Float32Array(r.buffer,a*n,i);case t.INT:return new Int32Array(r.buffer,a*n,i)}}function xZe(t,e,r,n){var i=Sge(t,e),a=_i(i,2),s=a[0],l=a[1],u=Cge(t,l,n),h=t.createBuffer();return t.bindBuffer(t.ARRAY_BUFFER,h),t.bufferData(t.ARRAY_BUFFER,u,t.STATIC_DRAW),l===t.FLOAT?t.vertexAttribPointer(r,s,l,!1,0,0):l===t.INT&&t.vertexAttribIPointer(r,s,l,0,0),t.enableVertexAttribArray(r),t.bindBuffer(t.ARRAY_BUFFER,null),h}function po(t,e,r,n){var i=Sge(t,r),a=_i(i,3),s=a[0],l=a[1],u=a[2],h=Cge(t,l,e*s),f=s*u,d=t.createBuffer();t.bindBuffer(t.ARRAY_BUFFER,d),t.bufferData(t.ARRAY_BUFFER,e*f,t.DYNAMIC_DRAW),t.enableVertexAttribArray(n),l===t.FLOAT?t.vertexAttribPointer(n,s,l,!1,f,0):l===t.INT&&t.vertexAttribIPointer(n,s,l,f,0),t.vertexAttribDivisor(n,1),t.bindBuffer(t.ARRAY_BUFFER,null);for(var p=new Array(e),m=0;mbge?(RZe(t),e.call(t,a)):(NZe(t),Rge(t,a,Vb.SCREEN)))}}{var r=t.matchCanvasSize;t.matchCanvasSize=function(a){r.call(t,a),t.pickingFrameBuffer.setFramebufferAttachmentSizes(t.canvasWidth,t.canvasHeight),t.pickingFrameBuffer.needsDraw=!0}}t.findNearestElements=function(a,s,l,u){return FZe(t,a,s)};{var n=t.invalidateCachedZSortedEles;t.invalidateCachedZSortedEles=function(){n.call(t),t.pickingFrameBuffer.needsDraw=!0}}{var i=t.notify;t.notify=function(a,s){i.call(t,a,s),a==="viewport"||a==="bounds"?t.pickingFrameBuffer.needsDraw=!0:a==="background"&&t.eleDrawing.invalidate(s,{type:"node-body"})}}}function RZe(t){var e=t.data.contexts[t.WEBGL];e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT)}function NZe(t){var e=o(function(n){n.save(),n.setTransform(1,0,0,1,0,0),n.clearRect(0,0,t.canvasWidth,t.canvasHeight),n.restore()},"clear");e(t.data.contexts[t.NODE]),e(t.data.contexts[t.DRAG])}function MZe(t){var e=t.canvasWidth,r=t.canvasHeight,n=wB(t),i=n.pan,a=n.zoom,s=Gb();DS(s,s,[i.x,i.y]),TB(s,s,[a,a]);var l=Gb();TZe(l,e,r);var u=Gb();return wZe(u,l,s),u}function Lge(t,e){var r=t.canvasWidth,n=t.canvasHeight,i=wB(t),a=i.pan,s=i.zoom;e.setTransform(1,0,0,1,0,0),e.clearRect(0,0,r,n),e.translate(a.x,a.y),e.scale(s,s)}function IZe(t,e){t.drawSelectionRectangle(e,function(r){return Lge(t,r)})}function OZe(t){var e=t.data.contexts[t.NODE];e.save(),Lge(t,e),e.strokeStyle="rgba(0, 0, 0, 0.3)",e.beginPath(),e.moveTo(-1e3,0),e.lineTo(1e3,0),e.stroke(),e.beginPath(),e.moveTo(0,-1e3),e.lineTo(0,1e3),e.stroke(),e.restore()}function PZe(t){var e=o(function(i,a,s){for(var l=i.atlasManager.getRenderTypeOpts(a),u=t.data.contexts[t.NODE],h=.125,f=l.atlasCollection.atlases,d=0;d=0&&k.add(O)}return k}function FZe(t,e,r){var n=BZe(t,e,r),i=t.getCachedZSortedEles(),a,s,l=mo(n),u;try{for(l.s();!(u=l.n()).done;){var h=u.value,f=i[h];if(!a&&f.isNode()&&(a=f),!s&&f.isEdge()&&(s=f),a&&s)break}}catch(d){l.e(d)}finally{l.f()}return[a,s].filter(Boolean)}function Rge(t,e,r){var n,i;t.webglDebug&&(i=[],n=performance.now());var a=t.eleDrawing,s=0;if(r.screen&&t.data.canvasNeedsRedraw[t.SELECT_BOX]&&IZe(t,e),t.data.canvasNeedsRedraw[t.NODE]||r.picking){var l=o(function(k,L){L+=1,k.isNode()?(a.drawTexture(k,L,"node-underlay"),a.drawTexture(k,L,"node-body"),a.drawTexture(k,L,"node-label"),a.drawTexture(k,L,"node-overlay")):(a.drawEdgeLine(k,L),a.drawEdgeArrow(k,L,"source"),a.drawEdgeArrow(k,L,"target"),a.drawTexture(k,L,"edge-label"))},"draw"),u=t.data.contexts[t.WEBGL];r.screen?(u.clearColor(0,0,0,0),u.enable(u.BLEND),u.blendFunc(u.ONE,u.ONE_MINUS_SRC_ALPHA)):u.disable(u.BLEND),u.clear(u.COLOR_BUFFER_BIT|u.DEPTH_BUFFER_BIT),u.viewport(0,0,u.canvas.width,u.canvas.height);var h=MZe(t),f=t.getCachedZSortedEles();if(s=f.length,a.startFrame(h,i,r),r.screen){for(var d=0;d{"use strict";o(Wi,"_typeof");o(Mf,"_classCallCheck");o(Dpe,"_defineProperties");o(If,"_createClass");o(X0e,"_defineProperty$1");o(_i,"_slicedToArray");o(j0e,"_toConsumableArray");o(UHe,"_arrayWithoutHoles");o(HHe,"_arrayWithHoles");o(WHe,"_iterableToArray");o(qHe,"_iterableToArrayLimit");o(ZP,"_unsupportedIterableToArray");o(OP,"_arrayLikeToArray");o(YHe,"_nonIterableSpread");o(XHe,"_nonIterableRest");o(mo,"_createForOfIteratorHelper");Ui=typeof window>"u"?null:window,Lpe=Ui?Ui.navigator:null;Ui&&Ui.document;jHe=Wi(""),K0e=Wi({}),KHe=Wi(function(){}),QHe=typeof HTMLElement>"u"?"undefined":Wi(HTMLElement),e4=o(function(e){return e&&e.instanceString&&si(e.instanceString)?e.instanceString():null},"instanceStr"),Zt=o(function(e){return e!=null&&Wi(e)==jHe},"string"),si=o(function(e){return e!=null&&Wi(e)===KHe},"fn"),En=o(function(e){return!go(e)&&(Array.isArray?Array.isArray(e):e!=null&&e instanceof Array)},"array"),Ur=o(function(e){return e!=null&&Wi(e)===K0e&&!En(e)&&e.constructor===Object},"plainObject"),ZHe=o(function(e){return e!=null&&Wi(e)===K0e},"object"),Ct=o(function(e){return e!=null&&Wi(e)===Wi(1)&&!isNaN(e)},"number"),JHe=o(function(e){return Ct(e)&&Math.floor(e)===e},"integer"),vS=o(function(e){if(QHe!=="undefined")return e!=null&&e instanceof HTMLElement},"htmlElement"),go=o(function(e){return t4(e)||Q0e(e)},"elementOrCollection"),t4=o(function(e){return e4(e)==="collection"&&e._private.single},"element"),Q0e=o(function(e){return e4(e)==="collection"&&!e._private.single},"collection"),JP=o(function(e){return e4(e)==="core"},"core"),Z0e=o(function(e){return e4(e)==="stylesheet"},"stylesheet"),eWe=o(function(e){return e4(e)==="event"},"event"),Af=o(function(e){return e==null?!0:!!(e===""||e.match(/^\s+$/))},"emptyString"),tWe=o(function(e){return typeof HTMLElement>"u"?!1:e instanceof HTMLElement},"domElement"),rWe=o(function(e){return Ur(e)&&Ct(e.x1)&&Ct(e.x2)&&Ct(e.y1)&&Ct(e.y2)},"boundingBox"),nWe=o(function(e){return ZHe(e)&&si(e.then)},"promise"),iWe=o(function(){return Lpe&&Lpe.userAgent.match(/msie|trident|edge/i)},"ms"),Ub=o(function(e,r){r||(r=o(function(){if(arguments.length===1)return arguments[0];if(arguments.length===0)return"undefined";for(var a=[],s=0;sr?1:0},"ascending"),hWe=o(function(e,r){return-1*eme(e,r)},"descending"),rr=Object.assign!=null?Object.assign.bind(Object):function(t){for(var e=arguments,r=1;r1&&(v-=1),v<1/6?g+(y-g)*6*v:v<1/2?y:v<2/3?g+(y-g)*(2/3-v)*6:g}o(f,"hue2rgb");var d=new RegExp("^"+oWe+"$").exec(e);if(d){if(n=parseInt(d[1]),n<0?n=(360- -1*n%360)%360:n>360&&(n=n%360),n/=360,i=parseFloat(d[2]),i<0||i>100||(i=i/100,a=parseFloat(d[3]),a<0||a>100)||(a=a/100,s=d[4],s!==void 0&&(s=parseFloat(s),s<0||s>1)))return;if(i===0)l=u=h=Math.round(a*255);else{var p=a<.5?a*(1+i):a+i-a*i,m=2*a-p;l=Math.round(255*f(m,p,n+1/3)),u=Math.round(255*f(m,p,n)),h=Math.round(255*f(m,p,n-1/3))}r=[l,u,h,s]}return r},"hsl2tuple"),pWe=o(function(e){var r,n=new RegExp("^"+aWe+"$").exec(e);if(n){r=[];for(var i=[],a=1;a<=3;a++){var s=n[a];if(s[s.length-1]==="%"&&(i[a]=!0),s=parseFloat(s),i[a]&&(s=s/100*255),s<0||s>255)return;r.push(Math.floor(s))}var l=i[1]||i[2]||i[3],u=i[1]&&i[2]&&i[3];if(l&&!u)return;var h=n[4];if(h!==void 0){if(h=parseFloat(h),h<0||h>1)return;r.push(h)}}return r},"rgb2tuple"),mWe=o(function(e){return gWe[e.toLowerCase()]},"colorname2tuple"),tme=o(function(e){return(En(e)?e:null)||mWe(e)||fWe(e)||pWe(e)||dWe(e)},"color2tuple"),gWe={transparent:[0,0,0,0],aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],grey:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},rme=o(function(e){for(var r=e.map,n=e.keys,i=n.length,a=0;a1&&arguments[1]!==void 0?arguments[1]:V1,n=r,i;i=e.next(),!i.done;)n=n*ome+i.value|0;return n},"hashIterableInts"),Hb=o(function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:V1;return r*ome+e|0},"hashInt"),Wb=o(function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Ob;return(r<<5)+r+e|0},"hashIntAlt"),rqe=o(function(e,r){return e*2097152+r},"combineHashes"),wf=o(function(e){return e[0]*2097152+e[1]},"combineHashesArray"),j6=o(function(e,r){return[Hb(e[0],r[0]),Wb(e[1],r[1])]},"hashArrays"),nqe=o(function(e,r){var n={value:0,done:!1},i=0,a=e.length,s={next:o(function(){return i=0&&!(e[i]===r&&(e.splice(i,1),n));i--);},"removeFromArray"),nB=o(function(e){e.splice(0,e.length)},"clearArray"),uqe=o(function(e,r){for(var n=0;n"u"?"undefined":Wi(Set))!==fqe?Set:dqe,NS=o(function(e,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(e===void 0||r===void 0||!JP(e)){ai("An element must have a core reference and parameters set");return}var i=r.group;if(i==null&&(r.data&&r.data.source!=null&&r.data.target!=null?i="edges":i="nodes"),i!=="nodes"&&i!=="edges"){ai("An element must be of type `nodes` or `edges`; you specified `"+i+"`");return}this.length=1,this[0]=this;var a=this._private={cy:e,single:!0,data:r.data||{},position:r.position||{x:0,y:0},autoWidth:void 0,autoHeight:void 0,autoPadding:void 0,compoundBoundsClean:!1,listeners:[],group:i,style:{},rstyle:{},styleCxts:[],styleKeys:{},removed:!0,selected:!!r.selected,selectable:r.selectable===void 0?!0:!!r.selectable,locked:!!r.locked,grabbed:!1,grabbable:r.grabbable===void 0?!0:!!r.grabbable,pannable:r.pannable===void 0?i==="edges":!!r.pannable,active:!1,classes:new J1,animation:{current:[],queue:[]},rscratch:{},scratch:r.scratch||{},edges:[],children:[],parent:r.parent&&r.parent.isNode()?r.parent:null,traversalCache:{},backgrounding:!1,bbCache:null,bbCacheShift:{x:0,y:0},bodyBounds:null,overlayBounds:null,labelBounds:{all:null,source:null,target:null,main:null},arrowBounds:{source:null,target:null,"mid-source":null,"mid-target":null}};if(a.position.x==null&&(a.position.x=0),a.position.y==null&&(a.position.y=0),r.renderedPosition){var s=r.renderedPosition,l=e.pan(),u=e.zoom();a.position={x:(s.x-l.x)/u,y:(s.y-l.y)/u}}var h=[];En(r.classes)?h=r.classes:Zt(r.classes)&&(h=r.classes.split(/\s+/));for(var f=0,d=h.length;fb?1:0},"defaultCmp"),f=o(function(x,b,w,C,T){var E;if(w==null&&(w=0),T==null&&(T=n),w<0)throw new Error("lo must be non-negative");for(C==null&&(C=x.length);wI;0<=I?_++:_--)S.push(_);return S}.apply(this).reverse(),A=[],C=0,T=E.length;CD;0<=D?++S:--S)k.push(s(x,w));return k},"nsmallest"),y=o(function(x,b,w,C){var T,E,A;for(C==null&&(C=n),T=x[w];w>b;){if(A=w-1>>1,E=x[A],C(T,E)<0){x[w]=E,w=A;continue}break}return x[w]=T},"_siftdown"),v=o(function(x,b,w){var C,T,E,A,S;for(w==null&&(w=n),T=x.length,S=b,E=x[b],C=2*b+1;C0;){var E=b.pop(),A=v(E),S=E.id();if(p[S]=A,A!==1/0)for(var _=E.neighborhood().intersect(g),I=0;I<_.length;I++){var D=_[I],k=D.id(),L=T(E,D),R=A+L.dist;R0)for(F.unshift(B);d[z];){var $=d[z];F.unshift($.edge),F.unshift($.node),P=$.node,z=P.id()}return l.spawn(F)},"pathTo")}},"dijkstra")},yqe={kruskal:o(function(e){e=e||function(w){return 1};for(var r=this.byGroup(),n=r.nodes,i=r.edges,a=n.length,s=new Array(a),l=n,u=o(function(C){for(var T=0;T0;){if(T(),A++,C===f){for(var S=[],_=a,I=f,D=x[I];S.unshift(_),D!=null&&S.unshift(D),_=v[I],_!=null;)I=_.id(),D=x[I];return{found:!0,distance:d[C],path:this.spawn(S),steps:A}}m[C]=!0;for(var k=w._private.edges,L=0;LD&&(g[I]=D,b[I]=_,w[I]=T),!a){var k=_*f+S;!a&&g[k]>D&&(g[k]=D,b[k]=S,w[k]=T)}}}for(var L=0;L1&&arguments[1]!==void 0?arguments[1]:s,ge=w(ae),ze=[],He=ge;;){if(He==null)return r.spawn();var $e=b(He),Re=$e.edge,Ie=$e.pred;if(ze.unshift(He[0]),He.same(Oe)&&ze.length>0)break;Re!=null&&ze.unshift(Re),He=Ie}return u.spawn(ze)},"pathTo"),E=0;E=0;f--){var d=h[f],p=d[1],m=d[2];(r[p]===l&&r[m]===u||r[p]===u&&r[m]===l)&&h.splice(f,1)}for(var g=0;gi;){var a=Math.floor(Math.random()*r.length);r=Sqe(a,e,r),n--}return r},"contractUntil"),Cqe={kargerStein:o(function(){var e=this,r=this.byGroup(),n=r.nodes,i=r.edges;i.unmergeBy(function(F){return F.isLoop()});var a=n.length,s=i.length,l=Math.ceil(Math.pow(Math.log(a)/Math.LN2,2)),u=Math.floor(a/Eqe);if(a<2){ai("At least 2 nodes are required for Karger-Stein algorithm");return}for(var h=[],f=0;f1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=1/0,a=r;a1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=-1/0,a=r;a1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=0,a=0,s=r;s1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,s=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0;i?e=e.slice(r,n):(n0&&e.splice(0,r));for(var l=0,u=e.length-1;u>=0;u--){var h=e[u];s?isFinite(h)||(e[u]=-1/0,l++):e.splice(u,1)}a&&e.sort(function(p,m){return p-m});var f=e.length,d=Math.floor(f/2);return f%2!==0?e[d+1+l]:(e[d-1+l]+e[d+l])/2},"median"),Nqe=o(function(e){return Math.PI*e/180},"deg2rad"),K6=o(function(e,r){return Math.atan2(r,e)-Math.PI/2},"getAngleFromDisp"),iB=Math.log2||function(t){return Math.log(t)/Math.log(2)},mme=o(function(e){return e>0?1:e<0?-1:0},"signum"),Gp=o(function(e,r){return Math.sqrt(Op(e,r))},"dist"),Op=o(function(e,r){var n=r.x-e.x,i=r.y-e.y;return n*n+i*i},"sqdist"),Mqe=o(function(e){for(var r=e.length,n=0,i=0;i=e.x1&&e.y2>=e.y1)return{x1:e.x1,y1:e.y1,x2:e.x2,y2:e.y2,w:e.x2-e.x1,h:e.y2-e.y1};if(e.w!=null&&e.h!=null&&e.w>=0&&e.h>=0)return{x1:e.x1,y1:e.y1,x2:e.x1+e.w,y2:e.y1+e.h,w:e.w,h:e.h}}},"makeBoundingBox"),Oqe=o(function(e){return{x1:e.x1,x2:e.x2,w:e.w,y1:e.y1,y2:e.y2,h:e.h}},"copyBoundingBox"),Pqe=o(function(e){e.x1=1/0,e.y1=1/0,e.x2=-1/0,e.y2=-1/0,e.w=0,e.h=0},"clearBoundingBox"),Bqe=o(function(e,r,n){return{x1:e.x1+r,x2:e.x2+r,y1:e.y1+n,y2:e.y2+n,w:e.w,h:e.h}},"shiftBoundingBox"),gme=o(function(e,r){e.x1=Math.min(e.x1,r.x1),e.x2=Math.max(e.x2,r.x2),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,r.y1),e.y2=Math.max(e.y2,r.y2),e.h=e.y2-e.y1},"updateBoundingBox"),Fqe=o(function(e,r,n){e.x1=Math.min(e.x1,r),e.x2=Math.max(e.x2,r),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,n),e.y2=Math.max(e.y2,n),e.h=e.y2-e.y1},"expandBoundingBoxByPoint"),cS=o(function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return e.x1-=r,e.x2+=r,e.y1-=r,e.y2+=r,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},"expandBoundingBox"),uS=o(function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[0],n,i,a,s;if(r.length===1)n=i=a=s=r[0];else if(r.length===2)n=a=r[0],s=i=r[1];else if(r.length===4){var l=_i(r,4);n=l[0],i=l[1],a=l[2],s=l[3]}return e.x1-=s,e.x2+=i,e.y1-=n,e.y2+=a,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},"expandBoundingBoxSides"),Fpe=o(function(e,r){e.x1=r.x1,e.y1=r.y1,e.x2=r.x2,e.y2=r.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1},"assignBoundingBox"),aB=o(function(e,r){return!(e.x1>r.x2||r.x1>e.x2||e.x2r.y2||r.y1>e.y2)},"boundingBoxesIntersect"),K1=o(function(e,r,n){return e.x1<=r&&r<=e.x2&&e.y1<=n&&n<=e.y2},"inBoundingBox"),$qe=o(function(e,r){return K1(e,r.x,r.y)},"pointInBoundingBox"),yme=o(function(e,r){return K1(e,r.x1,r.y1)&&K1(e,r.x2,r.y2)},"boundingBoxInBoundingBox"),vme=o(function(e,r,n,i,a,s,l){var u=arguments.length>7&&arguments[7]!==void 0?arguments[7]:"auto",h=u==="auto"?Vp(a,s):u,f=a/2,d=s/2;h=Math.min(h,f,d);var p=h!==f,m=h!==d,g;if(p){var y=n-f+h-l,v=i-d-l,x=n+f-h+l,b=v;if(g=Ef(e,r,n,i,y,v,x,b,!1),g.length>0)return g}if(m){var w=n+f+l,C=i-d+h-l,T=w,E=i+d-h+l;if(g=Ef(e,r,n,i,w,C,T,E,!1),g.length>0)return g}if(p){var A=n-f+h-l,S=i+d+l,_=n+f-h+l,I=S;if(g=Ef(e,r,n,i,A,S,_,I,!1),g.length>0)return g}if(m){var D=n-f-l,k=i-d+h-l,L=D,R=i+d-h+l;if(g=Ef(e,r,n,i,D,k,L,R,!1),g.length>0)return g}var O;{var M=n-f+h,B=i-d+h;if(O=Pb(e,r,n,i,M,B,h+l),O.length>0&&O[0]<=M&&O[1]<=B)return[O[0],O[1]]}{var F=n+f-h,P=i-d+h;if(O=Pb(e,r,n,i,F,P,h+l),O.length>0&&O[0]>=F&&O[1]<=P)return[O[0],O[1]]}{var z=n+f-h,$=i+d-h;if(O=Pb(e,r,n,i,z,$,h+l),O.length>0&&O[0]>=z&&O[1]>=$)return[O[0],O[1]]}{var H=n-f+h,Q=i+d-h;if(O=Pb(e,r,n,i,H,Q,h+l),O.length>0&&O[0]<=H&&O[1]>=Q)return[O[0],O[1]]}return[]},"roundRectangleIntersectLine"),zqe=o(function(e,r,n,i,a,s,l){var u=l,h=Math.min(n,a),f=Math.max(n,a),d=Math.min(i,s),p=Math.max(i,s);return h-u<=e&&e<=f+u&&d-u<=r&&r<=p+u},"inLineVicinity"),Gqe=o(function(e,r,n,i,a,s,l,u,h){var f={x1:Math.min(n,l,a)-h,x2:Math.max(n,l,a)+h,y1:Math.min(i,u,s)-h,y2:Math.max(i,u,s)+h};return!(ef.x2||rf.y2)},"inBezierVicinity"),Vqe=o(function(e,r,n,i){n-=i;var a=r*r-4*e*n;if(a<0)return[];var s=Math.sqrt(a),l=2*e,u=(-r+s)/l,h=(-r-s)/l;return[u,h]},"solveQuadratic"),Uqe=o(function(e,r,n,i,a){var s=1e-5;e===0&&(e=s),r/=e,n/=e,i/=e;var l,u,h,f,d,p,m,g;if(u=(3*n-r*r)/9,h=-(27*i)+r*(9*n-2*(r*r)),h/=54,l=u*u*u+h*h,a[1]=0,m=r/3,l>0){d=h+Math.sqrt(l),d=d<0?-Math.pow(-d,1/3):Math.pow(d,1/3),p=h-Math.sqrt(l),p=p<0?-Math.pow(-p,1/3):Math.pow(p,1/3),a[0]=-m+d+p,m+=(d+p)/2,a[4]=a[2]=-m,m=Math.sqrt(3)*(-p+d)/2,a[3]=m,a[5]=-m;return}if(a[5]=a[3]=0,l===0){g=h<0?-Math.pow(-h,1/3):Math.pow(h,1/3),a[0]=-m+2*g,a[4]=a[2]=-(g+m);return}u=-u,f=u*u*u,f=Math.acos(h/Math.sqrt(f)),g=2*Math.sqrt(u),a[0]=-m+g*Math.cos(f/3),a[2]=-m+g*Math.cos((f+2*Math.PI)/3),a[4]=-m+g*Math.cos((f+4*Math.PI)/3)},"solveCubic"),Hqe=o(function(e,r,n,i,a,s,l,u){var h=1*n*n-4*n*a+2*n*l+4*a*a-4*a*l+l*l+i*i-4*i*s+2*i*u+4*s*s-4*s*u+u*u,f=1*9*n*a-3*n*n-3*n*l-6*a*a+3*a*l+9*i*s-3*i*i-3*i*u-6*s*s+3*s*u,d=1*3*n*n-6*n*a+n*l-n*e+2*a*a+2*a*e-l*e+3*i*i-6*i*s+i*u-i*r+2*s*s+2*s*r-u*r,p=1*n*a-n*n+n*e-a*e+i*s-i*i+i*r-s*r,m=[];Uqe(h,f,d,p,m);for(var g=1e-7,y=[],v=0;v<6;v+=2)Math.abs(m[v+1])=0&&m[v]<=1&&y.push(m[v]);y.push(1),y.push(0);for(var x=-1,b,w,C,T=0;T=0?Ch?(e-a)*(e-a)+(r-s)*(r-s):f-p},"sqdistToFiniteLine"),Us=o(function(e,r,n){for(var i,a,s,l,u,h=0,f=0;f=e&&e>=s||i<=e&&e<=s)u=(e-i)/(s-i)*(l-a)+a,u>r&&h++;else continue;return h%2!==0},"pointInsidePolygonPoints"),Zu=o(function(e,r,n,i,a,s,l,u,h){var f=new Array(n.length),d;u[0]!=null?(d=Math.atan(u[1]/u[0]),u[0]<0?d=d+Math.PI/2:d=-d-Math.PI/2):d=u;for(var p=Math.cos(-d),m=Math.sin(-d),g=0;g0){var v=TS(f,-h);y=wS(v)}else y=f;return Us(e,r,y)},"pointInsidePolygon"),qqe=o(function(e,r,n,i,a,s,l,u){for(var h=new Array(n.length*2),f=0;f=0&&v<=1&&b.push(v),x>=0&&x<=1&&b.push(x),b.length===0)return[];var w=b[0]*u[0]+e,C=b[0]*u[1]+r;if(b.length>1){if(b[0]==b[1])return[w,C];var T=b[1]*u[0]+e,E=b[1]*u[1]+r;return[w,C,T,E]}else return[w,C]},"intersectLineCircle"),TP=o(function(e,r,n){return r<=e&&e<=n||n<=e&&e<=r?e:e<=r&&r<=n||n<=r&&r<=e?r:n},"midOfThree"),Ef=o(function(e,r,n,i,a,s,l,u,h){var f=e-a,d=n-e,p=l-a,m=r-s,g=i-r,y=u-s,v=p*m-y*f,x=d*m-g*f,b=y*d-p*g;if(b!==0){var w=v/b,C=x/b,T=.001,E=0-T,A=1+T;return E<=w&&w<=A&&E<=C&&C<=A?[e+w*d,r+w*g]:h?[e+w*d,r+w*g]:[]}else return v===0||x===0?TP(e,n,l)===l?[l,u]:TP(e,n,a)===a?[a,s]:TP(a,l,n)===n?[n,i]:[]:[]},"finiteLinesIntersect"),Xb=o(function(e,r,n,i,a,s,l,u){var h=[],f,d=new Array(n.length),p=!0;s==null&&(p=!1);var m;if(p){for(var g=0;g0){var y=TS(d,-u);m=wS(y)}else m=d}else m=n;for(var v,x,b,w,C=0;C2){for(var g=[f[0],f[1]],y=Math.pow(g[0]-e,2)+Math.pow(g[1]-r,2),v=1;vf&&(f=C)},"set"),get:o(function(w){return h[w]},"get")},p=0;p0?M=O.edgesTo(R)[0]:M=R.edgesTo(O)[0];var B=i(M);R=R.id(),S[R]>S[k]+B&&(S[R]=S[k]+B,_.nodes.indexOf(R)<0?_.push(R):_.updateItem(R),A[R]=0,E[R]=[]),S[R]==S[k]+B&&(A[R]=A[R]+A[k],E[R].push(k))}else for(var F=0;F0;){for(var H=T.pop(),Q=0;Q0&&l.push(n[u]);l.length!==0&&a.push(i.collection(l))}return a},"assign"),lYe=o(function(e,r){for(var n=0;n5&&arguments[5]!==void 0?arguments[5]:hYe,l=i,u,h,f=0;f=2?_b(e,r,n,0,Upe,fYe):_b(e,r,n,0,Vpe)},"euclidean"),squaredEuclidean:o(function(e,r,n){return _b(e,r,n,0,Upe)},"squaredEuclidean"),manhattan:o(function(e,r,n){return _b(e,r,n,0,Vpe)},"manhattan"),max:o(function(e,r,n){return _b(e,r,n,-1/0,dYe)},"max")};Q1["squared-euclidean"]=Q1.squaredEuclidean;Q1.squaredeuclidean=Q1.squaredEuclidean;o(IS,"clusteringDistance");pYe=la({k:2,m:2,sensitivityThreshold:1e-4,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),oB=o(function(e){return pYe(e)},"setOptions"),kS=o(function(e,r,n,i,a){var s=a!=="kMedoids",l=s?function(d){return n[d]}:function(d){return i[d](n)},u=o(function(p){return i[p](r)},"getQ"),h=n,f=r;return IS(e,i.length,l,u,h,f)},"getDist"),kP=o(function(e,r,n){for(var i=n.length,a=new Array(i),s=new Array(i),l=new Array(r),u=null,h=0;hn)return!1}return!0},"haveMatricesConverged"),yYe=o(function(e,r,n){for(var i=0;il&&(l=r[h][f],u=f);a[u].push(e[h])}for(var d=0;d=a.threshold||a.mode==="dendrogram"&&e.length===1)return!1;var g=r[s],y=r[i[s]],v;a.mode==="dendrogram"?v={left:g,right:y,key:g.key}:v={value:g.value.concat(y.value),key:g.key},e[g.index]=v,e.splice(y.index,1),r[g.key]=v;for(var x=0;xn[y.key][b.key]&&(u=n[y.key][b.key])):a.linkage==="max"?(u=n[g.key][b.key],n[g.key][b.key]0&&i.push(a);return i},"findExemplars"),jpe=o(function(e,r,n){for(var i=[],a=0;al&&(s=h,l=r[a*e+h])}s>0&&i.push(s)}for(var f=0;fh&&(u=f,h=d)}n[a]=s[u]}return i=jpe(e,r,n),i},"assign"),Kpe=o(function(e){for(var r=this.cy(),n=this.nodes(),i=RYe(e),a={},s=0;s=D?(k=D,D=R,L=O):R>k&&(k=R);for(var M=0;M0?1:0;A[_%i.minIterations*l+H]=Q,$+=Q}if($>0&&(_>=i.minIterations-1||_==i.maxIterations-1)){for(var j=0,ie=0;ie1||E>1)&&(l=!0),d[w]=[],b.outgoers().forEach(function(S){S.isEdge()&&d[w].push(S.id())})}else p[w]=[void 0,b.target().id()]}):s.forEach(function(b){var w=b.id();if(b.isNode()){var C=b.degree(!0);C%2&&(u?h?l=!0:h=w:u=w),d[w]=[],b.connectedEdges().forEach(function(T){return d[w].push(T.id())})}else p[w]=[b.source().id(),b.target().id()]});var m={found:!1,trail:void 0};if(l)return m;if(h&&u)if(a){if(f&&h!=f)return m;f=h}else{if(f&&h!=f&&u!=f)return m;f||(f=h)}else f||(f=s[0].id());var g=o(function(w){for(var C=w,T=[w],E,A,S;d[C].length;)E=d[C].shift(),A=p[E][0],S=p[E][1],C!=S?(d[S]=d[S].filter(function(_){return _!=E}),C=S):!a&&C!=A&&(d[A]=d[A].filter(function(_){return _!=E}),C=A),T.unshift(E),T.unshift(C);return T},"walk"),y=[],v=[];for(v=g(f);v.length!=1;)d[v[0]].length==0?(y.unshift(s.getElementById(v.shift())),y.unshift(s.getElementById(v.shift()))):v=g(v.shift()).concat(v);y.unshift(s.getElementById(v.shift()));for(var x in d)if(d[x].length)return m;return m.found=!0,m.trail=this.spawn(y,!0),m},"hierholzer")},J6=o(function(){var e=this,r={},n=0,i=0,a=[],s=[],l={},u=o(function(p,m){for(var g=s.length-1,y=[],v=e.spawn();s[g].x!=p||s[g].y!=m;)y.push(s.pop().edge),g--;y.push(s.pop().edge),y.forEach(function(x){var b=x.connectedNodes().intersection(e);v.merge(x),b.forEach(function(w){var C=w.id(),T=w.connectedEdges().intersection(e);v.merge(w),r[C].cutVertex?v.merge(T.filter(function(E){return E.isLoop()})):v.merge(T)})}),a.push(v)},"buildComponent"),h=o(function d(p,m,g){p===g&&(i+=1),r[m]={id:n,low:n++,cutVertex:!1};var y=e.getElementById(m).connectedEdges().intersection(e);if(y.size()===0)a.push(e.spawn(e.getElementById(m)));else{var v,x,b,w;y.forEach(function(C){v=C.source().id(),x=C.target().id(),b=v===m?x:v,b!==g&&(w=C.id(),l[w]||(l[w]=!0,s.push({x:m,y:b,edge:C})),b in r?r[m].low=Math.min(r[m].low,r[b].id):(d(p,b,m),r[m].low=Math.min(r[m].low,r[b].low),r[m].id<=r[b].low&&(r[m].cutVertex=!0,u(m,b))))})}},"biconnectedSearch");e.forEach(function(d){if(d.isNode()){var p=d.id();p in r||(i=0,h(p,p),r[p].cutVertex=i>1)}});var f=Object.keys(r).filter(function(d){return r[d].cutVertex}).map(function(d){return e.getElementById(d)});return{cut:e.spawn(f),components:a}},"hopcroftTarjanBiconnected"),$Ye={hopcroftTarjanBiconnected:J6,htbc:J6,htb:J6,hopcroftTarjanBiconnectedComponents:J6},eS=o(function(){var e=this,r={},n=0,i=[],a=[],s=e.spawn(e),l=o(function u(h){a.push(h),r[h]={index:n,low:n++,explored:!1};var f=e.getElementById(h).connectedEdges().intersection(e);if(f.forEach(function(y){var v=y.target().id();v!==h&&(v in r||u(v),r[v].explored||(r[h].low=Math.min(r[h].low,r[v].low)))}),r[h].index===r[h].low){for(var d=e.spawn();;){var p=a.pop();if(d.merge(e.getElementById(p)),r[p].low=r[h].index,r[p].explored=!0,p===h)break}var m=d.edgesWith(d),g=d.merge(m);i.push(g),s=s.difference(g)}},"stronglyConnectedSearch");return e.forEach(function(u){if(u.isNode()){var h=u.id();h in r||l(h)}}),{cut:s,components:i}},"tarjanStronglyConnected"),zYe={tarjanStronglyConnected:eS,tsc:eS,tscc:eS,tarjanStronglyConnectedComponents:eS},Sme={};[qb,gqe,yqe,xqe,wqe,kqe,Cqe,Qqe,q1,Y1,FP,uYe,kYe,DYe,PYe,FYe,$Ye,zYe].forEach(function(t){rr(Sme,t)});Cme=0,Ame=1,_me=2,Ju=o(function t(e){if(!(this instanceof t))return new t(e);this.id="Thenable/1.0.7",this.state=Cme,this.fulfillValue=void 0,this.rejectReason=void 0,this.onFulfilled=[],this.onRejected=[],this.proxy={then:this.then.bind(this)},typeof e=="function"&&e.call(this,this.fulfill.bind(this),this.reject.bind(this))},"api");Ju.prototype={fulfill:o(function(e){return Qpe(this,Ame,"fulfillValue",e)},"fulfill"),reject:o(function(e){return Qpe(this,_me,"rejectReason",e)},"reject"),then:o(function(e,r){var n=this,i=new Ju;return n.onFulfilled.push(Jpe(e,i,"fulfill")),n.onRejected.push(Jpe(r,i,"reject")),Dme(n),i.proxy},"then")};Qpe=o(function(e,r,n,i){return e.state===Cme&&(e.state=r,e[n]=i,Dme(e)),e},"deliver"),Dme=o(function(e){e.state===Ame?Zpe(e,"onFulfilled",e.fulfillValue):e.state===_me&&Zpe(e,"onRejected",e.rejectReason)},"execute"),Zpe=o(function(e,r,n){if(e[r].length!==0){var i=e[r];e[r]=[];var a=o(function(){for(var l=0;l0},"animatedImpl")},"animated"),clearQueue:o(function(){return o(function(){var r=this,n=r.length!==void 0,i=n?r:[r],a=this._private.cy||this;if(!a.styleEnabled())return this;for(var s=0;s0&&this.spawn(i).updateStyle().emit("class"),r},"classes"),addClass:o(function(e){return this.toggleClass(e,!0)},"addClass"),hasClass:o(function(e){var r=this[0];return r!=null&&r._private.classes.has(e)},"hasClass"),toggleClass:o(function(e,r){En(e)||(e=e.match(/\S+/g)||[]);for(var n=this,i=r===void 0,a=[],s=0,l=n.length;s0&&this.spawn(a).updateStyle().emit("class"),n},"toggleClass"),removeClass:o(function(e){return this.toggleClass(e,!1)},"removeClass"),flashClass:o(function(e,r){var n=this;if(r==null)r=250;else if(r===0)return n;return n.addClass(e),setTimeout(function(){n.removeClass(e)},r),n},"flashClass")};hS.className=hS.classNames=hS.classes;Vr={metaChar:"[\\!\\\"\\#\\$\\%\\&\\'\\(\\)\\*\\+\\,\\.\\/\\:\\;\\<\\=\\>\\?\\@\\[\\]\\^\\`\\{\\|\\}\\~]",comparatorOp:"=|\\!=|>|>=|<|<=|\\$=|\\^=|\\*=",boolOp:"\\?|\\!|\\^",string:`"(?:\\\\"|[^"])*"|'(?:\\\\'|[^'])*'`,number:Hi,meta:"degree|indegree|outdegree",separator:"\\s*,\\s*",descendant:"\\s+",child:"\\s+>\\s+",subject:"\\$",group:"node|edge|\\*",directedEdge:"\\s+->\\s+",undirectedEdge:"\\s+<->\\s+"};Vr.variable="(?:[\\w-.]|(?:\\\\"+Vr.metaChar+"))+";Vr.className="(?:[\\w-]|(?:\\\\"+Vr.metaChar+"))+";Vr.value=Vr.string+"|"+Vr.number;Vr.id=Vr.variable;(function(){var t,e,r;for(t=Vr.comparatorOp.split("|"),r=0;r=0)&&e!=="="&&(Vr.comparatorOp+="|\\!"+e)})();mn=o(function(){return{checks:[]}},"newQuery"),$t={GROUP:0,COLLECTION:1,FILTER:2,DATA_COMPARE:3,DATA_EXIST:4,DATA_BOOL:5,META_COMPARE:6,STATE:7,ID:8,CLASS:9,UNDIRECTED_EDGE:10,DIRECTED_EDGE:11,NODE_SOURCE:12,NODE_TARGET:13,NODE_NEIGHBOR:14,CHILD:15,DESCENDANT:16,PARENT:17,ANCESTOR:18,COMPOUND_SPLIT:19,TRUE:20},zP=[{selector:":selected",matches:o(function(e){return e.selected()},"matches")},{selector:":unselected",matches:o(function(e){return!e.selected()},"matches")},{selector:":selectable",matches:o(function(e){return e.selectable()},"matches")},{selector:":unselectable",matches:o(function(e){return!e.selectable()},"matches")},{selector:":locked",matches:o(function(e){return e.locked()},"matches")},{selector:":unlocked",matches:o(function(e){return!e.locked()},"matches")},{selector:":visible",matches:o(function(e){return e.visible()},"matches")},{selector:":hidden",matches:o(function(e){return!e.visible()},"matches")},{selector:":transparent",matches:o(function(e){return e.transparent()},"matches")},{selector:":grabbed",matches:o(function(e){return e.grabbed()},"matches")},{selector:":free",matches:o(function(e){return!e.grabbed()},"matches")},{selector:":removed",matches:o(function(e){return e.removed()},"matches")},{selector:":inside",matches:o(function(e){return!e.removed()},"matches")},{selector:":grabbable",matches:o(function(e){return e.grabbable()},"matches")},{selector:":ungrabbable",matches:o(function(e){return!e.grabbable()},"matches")},{selector:":animated",matches:o(function(e){return e.animated()},"matches")},{selector:":unanimated",matches:o(function(e){return!e.animated()},"matches")},{selector:":parent",matches:o(function(e){return e.isParent()},"matches")},{selector:":childless",matches:o(function(e){return e.isChildless()},"matches")},{selector:":child",matches:o(function(e){return e.isChild()},"matches")},{selector:":orphan",matches:o(function(e){return e.isOrphan()},"matches")},{selector:":nonorphan",matches:o(function(e){return e.isChild()},"matches")},{selector:":compound",matches:o(function(e){return e.isNode()?e.isParent():e.source().isParent()||e.target().isParent()},"matches")},{selector:":loop",matches:o(function(e){return e.isLoop()},"matches")},{selector:":simple",matches:o(function(e){return e.isSimple()},"matches")},{selector:":active",matches:o(function(e){return e.active()},"matches")},{selector:":inactive",matches:o(function(e){return!e.active()},"matches")},{selector:":backgrounding",matches:o(function(e){return e.backgrounding()},"matches")},{selector:":nonbackgrounding",matches:o(function(e){return!e.backgrounding()},"matches")}].sort(function(t,e){return hWe(t.selector,e.selector)}),Jje=function(){for(var t={},e,r=0;r0&&f.edgeCount>0)return un("The selector `"+e+"` is invalid because it uses both a compound selector and an edge selector"),!1;if(f.edgeCount>1)return un("The selector `"+e+"` is invalid because it uses multiple edge selectors"),!1;f.edgeCount===1&&un("The selector `"+e+"` is deprecated. Edge selectors do not take effect on changes to source and target nodes after an edge is added, for performance reasons. Use a class or data selector on edges instead, updating the class or data of an edge when your app detects a change in source or target nodes.")}return!0},"parse"),aKe=o(function(){if(this.toStringCache!=null)return this.toStringCache;for(var e=o(function(f){return f??""},"clean"),r=o(function(f){return Zt(f)?'"'+f+'"':e(f)},"cleanVal"),n=o(function(f){return" "+f+" "},"space"),i=o(function(f,d){var p=f.type,m=f.value;switch(p){case $t.GROUP:{var g=e(m);return g.substring(0,g.length-1)}case $t.DATA_COMPARE:{var y=f.field,v=f.operator;return"["+y+n(e(v))+r(m)+"]"}case $t.DATA_BOOL:{var x=f.operator,b=f.field;return"["+e(x)+b+"]"}case $t.DATA_EXIST:{var w=f.field;return"["+w+"]"}case $t.META_COMPARE:{var C=f.operator,T=f.field;return"[["+T+n(e(C))+r(m)+"]]"}case $t.STATE:return m;case $t.ID:return"#"+m;case $t.CLASS:return"."+m;case $t.PARENT:case $t.CHILD:return a(f.parent,d)+n(">")+a(f.child,d);case $t.ANCESTOR:case $t.DESCENDANT:return a(f.ancestor,d)+" "+a(f.descendant,d);case $t.COMPOUND_SPLIT:{var E=a(f.left,d),A=a(f.subject,d),S=a(f.right,d);return E+(E.length>0?" ":"")+A+S}case $t.TRUE:return""}},"checkToString"),a=o(function(f,d){return f.checks.reduce(function(p,m,g){return p+(d===f&&g===0?"$":"")+i(m,d)},"")},"queryToString"),s="",l=0;l1&&l=0&&(r=r.replace("!",""),d=!0),r.indexOf("@")>=0&&(r=r.replace("@",""),f=!0),(a||l||f)&&(u=!a&&!s?"":""+e,h=""+n),f&&(e=u=u.toLowerCase(),n=h=h.toLowerCase()),r){case"*=":i=u.indexOf(h)>=0;break;case"$=":i=u.indexOf(h,u.length-h.length)>=0;break;case"^=":i=u.indexOf(h)===0;break;case"=":i=e===n;break;case">":p=!0,i=e>n;break;case">=":p=!0,i=e>=n;break;case"<":p=!0,i=e1&&arguments[1]!==void 0?arguments[1]:!0;return fB(this,t,e,Fme)};o($me,"addParent");Z1.forEachUp=function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return fB(this,t,e,$me)};o(dKe,"addParentAndChildren");Z1.forEachUpAndDown=function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return fB(this,t,e,dKe)};Z1.ancestors=Z1.parents;Kb=zme={data:cn.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),removeData:cn.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),scratch:cn.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:cn.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),rscratch:cn.data({field:"rscratch",allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!0}),removeRscratch:cn.removeData({field:"rscratch",triggerEvent:!1}),id:o(function(){var e=this[0];if(e)return e._private.data.id},"id")};Kb.attr=Kb.data;Kb.removeAttr=Kb.removeData;pKe=zme,FS={};o(SP,"defineDegreeFunction");rr(FS,{degree:SP(function(t,e){return e.source().same(e.target())?2:1}),indegree:SP(function(t,e){return e.target().same(t)?1:0}),outdegree:SP(function(t,e){return e.source().same(t)?1:0})});o(F1,"defineDegreeBoundsFunction");rr(FS,{minDegree:F1("degree",function(t,e){return te}),minIndegree:F1("indegree",function(t,e){return te}),minOutdegree:F1("outdegree",function(t,e){return te})});rr(FS,{totalDegree:o(function(e){for(var r=0,n=this.nodes(),i=0;i0,p=d;d&&(f=f[0]);var m=p?f.position():{x:0,y:0};r!==void 0?h.position(e,r+m[e]):a!==void 0&&h.position({x:a.x+m.x,y:a.y+m.y})}else{var g=n.position(),y=l?n.parent():null,v=y&&y.length>0,x=v;v&&(y=y[0]);var b=x?y.position():{x:0,y:0};return a={x:g.x-b.x,y:g.y-b.y},e===void 0?a:a[e]}else if(!s)return;return this},"relativePosition")};Vl.modelPosition=Vl.point=Vl.position;Vl.modelPositions=Vl.points=Vl.positions;Vl.renderedPoint=Vl.renderedPosition;Vl.relativePoint=Vl.relativePosition;mKe=Gme;X1=Of={};Of.renderedBoundingBox=function(t){var e=this.boundingBox(t),r=this.cy(),n=r.zoom(),i=r.pan(),a=e.x1*n+i.x,s=e.x2*n+i.x,l=e.y1*n+i.y,u=e.y2*n+i.y;return{x1:a,x2:s,y1:l,y2:u,w:s-a,h:u-l}};Of.dirtyCompoundBoundsCache=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,e=this.cy();return!e.styleEnabled()||!e.hasCompoundNodes()?this:(this.forEachUp(function(r){if(r.isParent()){var n=r._private;n.compoundBoundsClean=!1,n.bbCache=null,t||r.emitAndNotify("bounds")}}),this)};Of.updateCompoundBounds=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,e=this.cy();if(!e.styleEnabled()||!e.hasCompoundNodes())return this;if(!t&&e.batching())return this;function r(s){if(!s.isParent())return;var l=s._private,u=s.children(),h=s.pstyle("compound-sizing-wrt-labels").value==="include",f={width:{val:s.pstyle("min-width").pfValue,left:s.pstyle("min-width-bias-left"),right:s.pstyle("min-width-bias-right")},height:{val:s.pstyle("min-height").pfValue,top:s.pstyle("min-height-bias-top"),bottom:s.pstyle("min-height-bias-bottom")}},d=u.boundingBox({includeLabels:h,includeOverlays:!1,useCache:!1}),p=l.position;(d.w===0||d.h===0)&&(d={w:s.pstyle("width").pfValue,h:s.pstyle("height").pfValue},d.x1=p.x-d.w/2,d.x2=p.x+d.w/2,d.y1=p.y-d.h/2,d.y2=p.y+d.h/2);function m(_,I,D){var k=0,L=0,R=I+D;return _>0&&R>0&&(k=I/R*_,L=D/R*_),{biasDiff:k,biasComplementDiff:L}}o(m,"computeBiasValues");function g(_,I,D,k){if(D.units==="%")switch(k){case"width":return _>0?D.pfValue*_:0;case"height":return I>0?D.pfValue*I:0;case"average":return _>0&&I>0?D.pfValue*(_+I)/2:0;case"min":return _>0&&I>0?_>I?D.pfValue*I:D.pfValue*_:0;case"max":return _>0&&I>0?_>I?D.pfValue*_:D.pfValue*I:0;default:return 0}else return D.units==="px"?D.pfValue:0}o(g,"computePaddingValues");var y=f.width.left.value;f.width.left.units==="px"&&f.width.val>0&&(y=y*100/f.width.val);var v=f.width.right.value;f.width.right.units==="px"&&f.width.val>0&&(v=v*100/f.width.val);var x=f.height.top.value;f.height.top.units==="px"&&f.height.val>0&&(x=x*100/f.height.val);var b=f.height.bottom.value;f.height.bottom.units==="px"&&f.height.val>0&&(b=b*100/f.height.val);var w=m(f.width.val-d.w,y,v),C=w.biasDiff,T=w.biasComplementDiff,E=m(f.height.val-d.h,x,b),A=E.biasDiff,S=E.biasComplementDiff;l.autoPadding=g(d.w,d.h,s.pstyle("padding"),s.pstyle("padding-relative-to").value),l.autoWidth=Math.max(d.w,f.width.val),p.x=(-C+d.x1+d.x2+T)/2,l.autoHeight=Math.max(d.h,f.height.val),p.y=(-A+d.y1+d.y2+S)/2}o(r,"update");for(var n=0;ne.x2?i:e.x2,e.y1=ne.y2?a:e.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1)},"updateBounds"),Pp=o(function(e,r){return r==null?e:zl(e,r.x1,r.y1,r.x2,r.y2)},"updateBoundsFromBox"),Db=o(function(e,r,n){return Gl(e,r,n)},"prefixedProperty"),tS=o(function(e,r,n){if(!r.cy().headless()){var i=r._private,a=i.rstyle,s=a.arrowWidth/2,l=r.pstyle(n+"-arrow-shape").value,u,h;if(l!=="none"){n==="source"?(u=a.srcX,h=a.srcY):n==="target"?(u=a.tgtX,h=a.tgtY):(u=a.midX,h=a.midY);var f=i.arrowBounds=i.arrowBounds||{},d=f[n]=f[n]||{};d.x1=u-s,d.y1=h-s,d.x2=u+s,d.y2=h+s,d.w=d.x2-d.x1,d.h=d.y2-d.y1,cS(d,1),zl(e,d.x1,d.y1,d.x2,d.y2)}}},"updateBoundsFromArrow"),CP=o(function(e,r,n){if(!r.cy().headless()){var i;n?i=n+"-":i="";var a=r._private,s=a.rstyle,l=r.pstyle(i+"label").strValue;if(l){var u=r.pstyle("text-halign"),h=r.pstyle("text-valign"),f=Db(s,"labelWidth",n),d=Db(s,"labelHeight",n),p=Db(s,"labelX",n),m=Db(s,"labelY",n),g=r.pstyle(i+"text-margin-x").pfValue,y=r.pstyle(i+"text-margin-y").pfValue,v=r.isEdge(),x=r.pstyle(i+"text-rotation"),b=r.pstyle("text-outline-width").pfValue,w=r.pstyle("text-border-width").pfValue,C=w/2,T=r.pstyle("text-background-padding").pfValue,E=2,A=d,S=f,_=S/2,I=A/2,D,k,L,R;if(v)D=p-_,k=p+_,L=m-I,R=m+I;else{switch(u.value){case"left":D=p-S,k=p;break;case"center":D=p-_,k=p+_;break;case"right":D=p,k=p+S;break}switch(h.value){case"top":L=m-A,R=m;break;case"center":L=m-I,R=m+I;break;case"bottom":L=m,R=m+A;break}}var O=g-Math.max(b,C)-T-E,M=g+Math.max(b,C)+T+E,B=y-Math.max(b,C)-T-E,F=y+Math.max(b,C)+T+E;D+=O,k+=M,L+=B,R+=F;var P=n||"main",z=a.labelBounds,$=z[P]=z[P]||{};$.x1=D,$.y1=L,$.x2=k,$.y2=R,$.w=k-D,$.h=R-L,$.leftPad=O,$.rightPad=M,$.topPad=B,$.botPad=F;var H=v&&x.strValue==="autorotate",Q=x.pfValue!=null&&x.pfValue!==0;if(H||Q){var j=H?Db(a.rstyle,"labelAngle",n):x.pfValue,ie=Math.cos(j),ne=Math.sin(j),le=(D+k)/2,he=(L+R)/2;if(!v){switch(u.value){case"left":le=k;break;case"right":le=D;break}switch(h.value){case"top":he=R;break;case"bottom":he=L;break}}var K=o(function(ce,ae){return ce=ce-le,ae=ae-he,{x:ce*ie-ae*ne+le,y:ce*ne+ae*ie+he}},"rotate"),X=K(D,L),te=K(D,R),J=K(k,L),se=K(k,R);D=Math.min(X.x,te.x,J.x,se.x),k=Math.max(X.x,te.x,J.x,se.x),L=Math.min(X.y,te.y,J.y,se.y),R=Math.max(X.y,te.y,J.y,se.y)}var ue=P+"Rot",Z=z[ue]=z[ue]||{};Z.x1=D,Z.y1=L,Z.x2=k,Z.y2=R,Z.w=k-D,Z.h=R-L,zl(e,D,L,k,R),zl(a.labelBounds.all,D,L,k,R)}return e}},"updateBoundsFromLabel"),gKe=o(function(e,r){if(!r.cy().headless()){var n=r.pstyle("outline-opacity").value,i=r.pstyle("outline-width").value;if(n>0&&i>0){var a=r.pstyle("outline-offset").value,s=r.pstyle("shape").value,l=i+a,u=(e.w+l*2)/e.w,h=(e.h+l*2)/e.h,f=0,d=0;["diamond","pentagon","round-triangle"].includes(s)?(u=(e.w+l*2.4)/e.w,d=-l/3.6):["concave-hexagon","rhomboid","right-rhomboid"].includes(s)?u=(e.w+l*2.4)/e.w:s==="star"?(u=(e.w+l*2.8)/e.w,h=(e.h+l*2.6)/e.h,d=-l/3.8):s==="triangle"?(u=(e.w+l*2.8)/e.w,h=(e.h+l*2.4)/e.h,d=-l/1.4):s==="vee"&&(u=(e.w+l*4.4)/e.w,h=(e.h+l*3.8)/e.h,d=-l*.5);var p=e.h*h-e.h,m=e.w*u-e.w;if(uS(e,[Math.ceil(p/2),Math.ceil(m/2)]),f!=0||d!==0){var g=Bqe(e,f,d);gme(e,g)}}}},"updateBoundsFromOutline"),yKe=o(function(e,r){var n=e._private.cy,i=n.styleEnabled(),a=n.headless(),s=Hs(),l=e._private,u=e.isNode(),h=e.isEdge(),f,d,p,m,g,y,v=l.rstyle,x=u&&i?e.pstyle("bounds-expansion").pfValue:[0],b=o(function(Se){return Se.pstyle("display").value!=="none"},"isDisplayed"),w=!i||b(e)&&(!h||b(e.source())&&b(e.target()));if(w){var C=0,T=0;i&&r.includeOverlays&&(C=e.pstyle("overlay-opacity").value,C!==0&&(T=e.pstyle("overlay-padding").value));var E=0,A=0;i&&r.includeUnderlays&&(E=e.pstyle("underlay-opacity").value,E!==0&&(A=e.pstyle("underlay-padding").value));var S=Math.max(T,A),_=0,I=0;if(i&&(_=e.pstyle("width").pfValue,I=_/2),u&&r.includeNodes){var D=e.position();g=D.x,y=D.y;var k=e.outerWidth(),L=k/2,R=e.outerHeight(),O=R/2;f=g-L,d=g+L,p=y-O,m=y+O,zl(s,f,p,d,m),i&&r.includeOutlines&&gKe(s,e)}else if(h&&r.includeEdges)if(i&&!a){var M=e.pstyle("curve-style").strValue;if(f=Math.min(v.srcX,v.midX,v.tgtX),d=Math.max(v.srcX,v.midX,v.tgtX),p=Math.min(v.srcY,v.midY,v.tgtY),m=Math.max(v.srcY,v.midY,v.tgtY),f-=I,d+=I,p-=I,m+=I,zl(s,f,p,d,m),M==="haystack"){var B=v.haystackPts;if(B&&B.length===2){if(f=B[0].x,p=B[0].y,d=B[1].x,m=B[1].y,f>d){var F=f;f=d,d=F}if(p>m){var P=p;p=m,m=P}zl(s,f-I,p-I,d+I,m+I)}}else if(M==="bezier"||M==="unbundled-bezier"||M.endsWith("segments")||M.endsWith("taxi")){var z;switch(M){case"bezier":case"unbundled-bezier":z=v.bezierPts;break;case"segments":case"taxi":case"round-segments":case"round-taxi":z=v.linePts;break}if(z!=null)for(var $=0;$d){var le=f;f=d,d=le}if(p>m){var he=p;p=m,m=he}f-=I,d+=I,p-=I,m+=I,zl(s,f,p,d,m)}if(i&&r.includeEdges&&h&&(tS(s,e,"mid-source"),tS(s,e,"mid-target"),tS(s,e,"source"),tS(s,e,"target")),i){var K=e.pstyle("ghost").value==="yes";if(K){var X=e.pstyle("ghost-offset-x").pfValue,te=e.pstyle("ghost-offset-y").pfValue;zl(s,s.x1+X,s.y1+te,s.x2+X,s.y2+te)}}var J=l.bodyBounds=l.bodyBounds||{};Fpe(J,s),uS(J,x),cS(J,1),i&&(f=s.x1,d=s.x2,p=s.y1,m=s.y2,zl(s,f-S,p-S,d+S,m+S));var se=l.overlayBounds=l.overlayBounds||{};Fpe(se,s),uS(se,x),cS(se,1);var ue=l.labelBounds=l.labelBounds||{};ue.all!=null?Pqe(ue.all):ue.all=Hs(),i&&r.includeLabels&&(r.includeMainLabels&&CP(s,e,null),h&&(r.includeSourceLabels&&CP(s,e,"source"),r.includeTargetLabels&&CP(s,e,"target")))}return s.x1=el(s.x1),s.y1=el(s.y1),s.x2=el(s.x2),s.y2=el(s.y2),s.w=el(s.x2-s.x1),s.h=el(s.y2-s.y1),s.w>0&&s.h>0&&w&&(uS(s,x),cS(s,1)),s},"boundingBoxImpl"),Ume=o(function(e){var r=0,n=o(function(s){return(s?1:0)<=0;l--)s(l);return this};Nf.removeAllListeners=function(){return this.removeListener("*")};Nf.emit=Nf.trigger=function(t,e,r){var n=this.listeners,i=n.length;return this.emitting++,En(e)||(e=[e]),MKe(this,function(a,s){r!=null&&(n=[{event:s.event,type:s.type,namespace:s.namespace,callback:r}],i=n.length);for(var l=o(function(f){var d=n[f];if(d.type===s.type&&(!d.namespace||d.namespace===s.namespace||d.namespace===RKe)&&a.eventMatches(a.context,d,s)){var p=[s];e!=null&&uqe(p,e),a.beforeEmit(a.context,d,s),d.conf&&d.conf.one&&(a.listeners=a.listeners.filter(function(y){return y!==d}));var m=a.callbackContext(a.context,d,s),g=d.callback.apply(m,p);a.afterEmit(a.context,d,s),g===!1&&(s.stopPropagation(),s.preventDefault())}},"_loop2"),u=0;u1&&!s){var l=this.length-1,u=this[l],h=u._private.data.id;this[l]=void 0,this[e]=u,a.set(h,{ele:u,index:e})}return this.length--,this},"unmergeAt"),unmergeOne:o(function(e){e=e[0];var r=this._private,n=e._private.data.id,i=r.map,a=i.get(n);if(!a)return this;var s=a.index;return this.unmergeAt(s),this},"unmergeOne"),unmerge:o(function(e){var r=this._private.cy;if(!e)return this;if(e&&Zt(e)){var n=e;e=r.mutableElements().filter(n)}for(var i=0;i=0;r--){var n=this[r];e(n)&&this.unmergeAt(r)}return this},"unmergeBy"),map:o(function(e,r){for(var n=[],i=this,a=0;an&&(n=u,i=l)}return{value:n,ele:i}},"max"),min:o(function(e,r){for(var n=1/0,i,a=this,s=0;s=0&&a"u"?"undefined":Wi(Symbol))!=e&&Wi(Symbol.iterator)!=e;r&&(ES[Symbol.iterator]=function(){var n=this,i={value:void 0,done:!1},a=0,s=this.length;return X0e({next:o(function(){return a1&&arguments[1]!==void 0?arguments[1]:!0,n=this[0],i=n.cy();if(i.styleEnabled()&&n){n._private.styleDirty&&(n._private.styleDirty=!1,i.style().apply(n));var a=n._private.style[e];return a??(r?i.style().getDefaultProperty(e):null)}},"parsedStyle"),numericStyle:o(function(e){var r=this[0];if(r.cy().styleEnabled()&&r){var n=r.pstyle(e);return n.pfValue!==void 0?n.pfValue:n.value}},"numericStyle"),numericStyleUnits:o(function(e){var r=this[0];if(r.cy().styleEnabled()&&r)return r.pstyle(e).units},"numericStyleUnits"),renderedStyle:o(function(e){var r=this.cy();if(!r.styleEnabled())return this;var n=this[0];if(n)return r.style().getRenderedStyle(n,e)},"renderedStyle"),style:o(function(e,r){var n=this.cy();if(!n.styleEnabled())return this;var i=!1,a=n.style();if(Ur(e)){var s=e;a.applyBypass(this,s,i),this.emitAndNotify("style")}else if(Zt(e))if(r===void 0){var l=this[0];return l?a.getStylePropertyValue(l,e):void 0}else a.applyBypass(this,e,r,i),this.emitAndNotify("style");else if(e===void 0){var u=this[0];return u?a.getRawStyle(u):void 0}return this},"style"),removeStyle:o(function(e){var r=this.cy();if(!r.styleEnabled())return this;var n=!1,i=r.style(),a=this;if(e===void 0)for(var s=0;s0&&e.push(f[0]),e.push(l[0])}return this.spawn(e,!0).filter(t)},"neighborhood"),closedNeighborhood:o(function(e){return this.neighborhood().add(this).filter(e)},"closedNeighborhood"),openNeighborhood:o(function(e){return this.neighborhood(e)},"openNeighborhood")});$a.neighbourhood=$a.neighborhood;$a.closedNeighbourhood=$a.closedNeighborhood;$a.openNeighbourhood=$a.openNeighborhood;rr($a,{source:tl(o(function(e){var r=this[0],n;return r&&(n=r._private.source||r.cy().collection()),n&&e?n.filter(e):n},"sourceImpl"),"source"),target:tl(o(function(e){var r=this[0],n;return r&&(n=r._private.target||r.cy().collection()),n&&e?n.filter(e):n},"targetImpl"),"target"),sources:g0e({attr:"source"}),targets:g0e({attr:"target"})});o(g0e,"defineSourceFunction");rr($a,{edgesWith:tl(y0e(),"edgesWith"),edgesTo:tl(y0e({thisIsSrc:!0}),"edgesTo")});o(y0e,"defineEdgesWithFunction");rr($a,{connectedEdges:tl(function(t){for(var e=[],r=this,n=0;n0);return s},"components"),component:o(function(){var e=this[0];return e.cy().mutableElements().components(e)[0]},"component")});$a.componentsOf=$a.components;ka=o(function(e,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(e===void 0){ai("A collection must have a reference to the core");return}var a=new Xc,s=!1;if(!r)r=[];else if(r.length>0&&Ur(r[0])&&!t4(r[0])){s=!0;for(var l=[],u=new J1,h=0,f=r.length;h0&&arguments[0]!==void 0?arguments[0]:!0,e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,r=this,n=r.cy(),i=n._private,a=[],s=[],l,u=0,h=r.length;u0){for(var P=l.length===r.length?r:new ka(n,l),z=0;z0&&arguments[0]!==void 0?arguments[0]:!0,e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,r=this,n=[],i={},a=r._private.cy;function s(R){for(var O=R._private.edges,M=0;M0&&(t?D.emitAndNotify("remove"):e&&D.emit("remove"));for(var k=0;kf&&Math.abs(g.v)>f;);return p?function(y){return u[y*(u.length-1)|0]}:h},"springRK4Factory")}(),Nn=o(function(e,r,n,i){var a=UKe(e,r,n,i);return function(s,l,u){return s+(l-s)*a(u)}},"cubicBezier"),dS={linear:o(function(e,r,n){return e+(r-e)*n},"linear"),ease:Nn(.25,.1,.25,1),"ease-in":Nn(.42,0,1,1),"ease-out":Nn(0,0,.58,1),"ease-in-out":Nn(.42,0,.58,1),"ease-in-sine":Nn(.47,0,.745,.715),"ease-out-sine":Nn(.39,.575,.565,1),"ease-in-out-sine":Nn(.445,.05,.55,.95),"ease-in-quad":Nn(.55,.085,.68,.53),"ease-out-quad":Nn(.25,.46,.45,.94),"ease-in-out-quad":Nn(.455,.03,.515,.955),"ease-in-cubic":Nn(.55,.055,.675,.19),"ease-out-cubic":Nn(.215,.61,.355,1),"ease-in-out-cubic":Nn(.645,.045,.355,1),"ease-in-quart":Nn(.895,.03,.685,.22),"ease-out-quart":Nn(.165,.84,.44,1),"ease-in-out-quart":Nn(.77,0,.175,1),"ease-in-quint":Nn(.755,.05,.855,.06),"ease-out-quint":Nn(.23,1,.32,1),"ease-in-out-quint":Nn(.86,0,.07,1),"ease-in-expo":Nn(.95,.05,.795,.035),"ease-out-expo":Nn(.19,1,.22,1),"ease-in-out-expo":Nn(1,0,0,1),"ease-in-circ":Nn(.6,.04,.98,.335),"ease-out-circ":Nn(.075,.82,.165,1),"ease-in-out-circ":Nn(.785,.135,.15,.86),spring:o(function(e,r,n){if(n===0)return dS.linear;var i=HKe(e,r,n);return function(a,s,l){return a+(s-a)*i(l)}},"spring"),"cubic-bezier":Nn};o(x0e,"getEasedValue");o(b0e,"getValue");o($1,"ease");o(WKe,"step$1");o(Rb,"valid");o(qKe,"startAnimation");o(w0e,"stepAll");YKe={animate:cn.animate(),animation:cn.animation(),animated:cn.animated(),clearQueue:cn.clearQueue(),delay:cn.delay(),delayAnimation:cn.delayAnimation(),stop:cn.stop(),addToAnimationPool:o(function(e){var r=this;r.styleEnabled()&&r._private.aniEles.merge(e)},"addToAnimationPool"),stopAnimationLoop:o(function(){this._private.animationsRunning=!1},"stopAnimationLoop"),startAnimationLoop:o(function(){var e=this;if(e._private.animationsRunning=!0,!e.styleEnabled())return;function r(){e._private.animationsRunning&&xS(o(function(a){w0e(a,e),r()},"animationStep"))}o(r,"headlessStep");var n=e.renderer();n&&n.beforeRender?n.beforeRender(o(function(a,s){w0e(s,e)},"rendererAnimationStep"),n.beforeRenderPriorities.animations):r()},"startAnimationLoop")},XKe={qualifierCompare:o(function(e,r){return e==null||r==null?e==null&&r==null:e.sameText(r)},"qualifierCompare"),eventMatches:o(function(e,r,n){var i=r.qualifier;return i!=null?e!==n.target&&t4(n.target)&&i.matches(n.target):!0},"eventMatches"),addEventFields:o(function(e,r){r.cy=e,r.target=e},"addEventFields"),callbackContext:o(function(e,r,n){return r.qualifier!=null?n.target:e},"callbackContext")},iS=o(function(e){return Zt(e)?new Lf(e):e},"argSelector"),ege={createEmitter:o(function(){var e=this._private;return e.emitter||(e.emitter=new $S(XKe,this)),this},"createEmitter"),emitter:o(function(){return this._private.emitter},"emitter"),on:o(function(e,r,n){return this.emitter().on(e,iS(r),n),this},"on"),removeListener:o(function(e,r,n){return this.emitter().removeListener(e,iS(r),n),this},"removeListener"),removeAllListeners:o(function(){return this.emitter().removeAllListeners(),this},"removeAllListeners"),one:o(function(e,r,n){return this.emitter().one(e,iS(r),n),this},"one"),once:o(function(e,r,n){return this.emitter().one(e,iS(r),n),this},"once"),emit:o(function(e,r){return this.emitter().emit(e,r),this},"emit"),emitAndNotify:o(function(e,r){return this.emit(e),this.notify(e,r),this},"emitAndNotify")};cn.eventAliasesOn(ege);VP={png:o(function(e){var r=this._private.renderer;return e=e||{},r.png(e)},"png"),jpg:o(function(e){var r=this._private.renderer;return e=e||{},e.bg=e.bg||"#fff",r.jpg(e)},"jpg")};VP.jpeg=VP.jpg;pS={layout:o(function(e){var r=this;if(e==null){ai("Layout options must be specified to make a layout");return}if(e.name==null){ai("A `name` must be specified to make a layout");return}var n=e.name,i=r.extension("layout",n);if(i==null){ai("No such layout `"+n+"` found. Did you forget to import it and `cytoscape.use()` it?");return}var a;Zt(e.eles)?a=r.$(e.eles):a=e.eles!=null?e.eles:r.$();var s=new i(rr({},e,{cy:r,eles:a}));return s},"layout")};pS.createLayout=pS.makeLayout=pS.layout;jKe={notify:o(function(e,r){var n=this._private;if(this.batching()){n.batchNotifications=n.batchNotifications||{};var i=n.batchNotifications[e]=n.batchNotifications[e]||this.collection();r!=null&&i.merge(r);return}if(n.notificationsEnabled){var a=this.renderer();this.destroyed()||!a||a.notify(e,r)}},"notify"),notifications:o(function(e){var r=this._private;return e===void 0?r.notificationsEnabled:(r.notificationsEnabled=!!e,this)},"notifications"),noNotifications:o(function(e){this.notifications(!1),e(),this.notifications(!0)},"noNotifications"),batching:o(function(){return this._private.batchCount>0},"batching"),startBatch:o(function(){var e=this._private;return e.batchCount==null&&(e.batchCount=0),e.batchCount===0&&(e.batchStyleEles=this.collection(),e.batchNotifications={}),e.batchCount++,this},"startBatch"),endBatch:o(function(){var e=this._private;if(e.batchCount===0)return this;if(e.batchCount--,e.batchCount===0){e.batchStyleEles.updateStyle();var r=this.renderer();Object.keys(e.batchNotifications).forEach(function(n){var i=e.batchNotifications[n];i.empty()?r.notify(n):r.notify(n,i)})}return this},"endBatch"),batch:o(function(e){return this.startBatch(),e(),this.endBatch(),this},"batch"),batchData:o(function(e){var r=this;return this.batch(function(){for(var n=Object.keys(e),i=0;i0;)r.removeChild(r.childNodes[0]);e._private.renderer=null,e.mutableElements().forEach(function(n){var i=n._private;i.rscratch={},i.rstyle={},i.animation.current=[],i.animation.queue=[]})},"destroyRenderer"),onRender:o(function(e){return this.on("render",e)},"onRender"),offRender:o(function(e){return this.off("render",e)},"offRender")};UP.invalidateDimensions=UP.resize;mS={collection:o(function(e,r){return Zt(e)?this.$(e):go(e)?e.collection():En(e)?(r||(r={}),new ka(this,e,r.unique,r.removed)):new ka(this)},"collection"),nodes:o(function(e){var r=this.$(function(n){return n.isNode()});return e?r.filter(e):r},"nodes"),edges:o(function(e){var r=this.$(function(n){return n.isEdge()});return e?r.filter(e):r},"edges"),$:o(function(e){var r=this._private.elements;return e?r.filter(e):r.spawnSelf()},"$"),mutableElements:o(function(){return this._private.elements},"mutableElements")};mS.elements=mS.filter=mS.$;Ga={},$b="t",QKe="f";Ga.apply=function(t){for(var e=this,r=e._private,n=r.cy,i=n.collection(),a=0;a0;if(p||d&&m){var g=void 0;p&&m||p?g=h.properties:m&&(g=h.mappedProperties);for(var y=0;y1&&(C=1),l.color){var E=n.valueMin[0],A=n.valueMax[0],S=n.valueMin[1],_=n.valueMax[1],I=n.valueMin[2],D=n.valueMax[2],k=n.valueMin[3]==null?1:n.valueMin[3],L=n.valueMax[3]==null?1:n.valueMax[3],R=[Math.round(E+(A-E)*C),Math.round(S+(_-S)*C),Math.round(I+(D-I)*C),Math.round(k+(L-k)*C)];a={bypass:n.bypass,name:n.name,value:R,strValue:"rgb("+R[0]+", "+R[1]+", "+R[2]+")"}}else if(l.number){var O=n.valueMin+(n.valueMax-n.valueMin)*C;a=this.parse(n.name,O,n.bypass,p)}else return!1;if(!a)return y(),!1;a.mapping=n,n=a;break}case s.data:{for(var M=n.field.split("."),B=d.data,F=0;F0&&a>0){for(var l={},u=!1,h=0;h0?t.delayAnimation(s).play().promise().then(w):w()}).then(function(){return t.animation({style:l,duration:a,easing:t.pstyle("transition-timing-function").value,queue:!1}).play().promise()}).then(function(){r.removeBypasses(t,i),t.emitAndNotify("style"),n.transitioning=!1})}else n.transitioning&&(this.removeBypasses(t,i),t.emitAndNotify("style"),n.transitioning=!1)};Ga.checkTrigger=function(t,e,r,n,i,a){var s=this.properties[e],l=i(s);l!=null&&l(r,n)&&a(s)};Ga.checkZOrderTrigger=function(t,e,r,n){var i=this;this.checkTrigger(t,e,r,n,function(a){return a.triggersZOrder},function(){i._private.cy.notify("zorder",t)})};Ga.checkBoundsTrigger=function(t,e,r,n){this.checkTrigger(t,e,r,n,function(i){return i.triggersBounds},function(i){t.dirtyCompoundBoundsCache(),t.dirtyBoundingBoxCache(),i.triggersBoundsOfParallelBeziers&&e==="curve-style"&&(r==="bezier"||n==="bezier")&&t.parallelEdges().forEach(function(a){a.dirtyBoundingBoxCache()}),i.triggersBoundsOfConnectedEdges&&e==="display"&&(r==="none"||n==="none")&&t.connectedEdges().forEach(function(a){a.dirtyBoundingBoxCache()})})};Ga.checkTriggers=function(t,e,r,n){t.dirtyStyleCache(),this.checkZOrderTrigger(t,e,r,n),this.checkBoundsTrigger(t,e,r,n)};s4={};s4.applyBypass=function(t,e,r,n){var i=this,a=[],s=!0;if(e==="*"||e==="**"){if(r!==void 0)for(var l=0;li.length?n=n.substr(i.length):n=""}o(l,"removeSelAndBlockFromRemaining");function u(){a.length>s.length?a=a.substr(s.length):a=""}for(o(u,"removePropAndValFromRem");;){var h=n.match(/^\s*$/);if(h)break;var f=n.match(/^\s*((?:.|\s)+?)\s*\{((?:.|\s)+?)\}/);if(!f){un("Halting stylesheet parsing: String stylesheet contains more to parse but no selector and block found in: "+n);break}i=f[0];var d=f[1];if(d!=="core"){var p=new Lf(d);if(p.invalid){un("Skipping parsing of block: Invalid selector found in string stylesheet: "+d),l();continue}}var m=f[2],g=!1;a=m;for(var y=[];;){var v=a.match(/^\s*$/);if(v)break;var x=a.match(/^\s*(.+?)\s*:\s*(.+?)(?:\s*;|\s*$)/);if(!x){un("Skipping parsing of block: Invalid formatting of style property and value definitions found in:"+m),g=!0;break}s=x[0];var b=x[1],w=x[2],C=e.properties[b];if(!C){un("Skipping property: Invalid property name in: "+s),u();continue}var T=r.parse(b,w);if(!T){un("Skipping property: Invalid property definition in: "+s),u();continue}y.push({name:b,val:w}),u()}if(g){l();break}r.selector(d);for(var E=0;E=7&&e[0]==="d"&&(f=new RegExp(l.data.regex).exec(e))){if(r)return!1;var p=l.data;return{name:t,value:f,strValue:""+e,mapped:p,field:f[1],bypass:r}}else if(e.length>=10&&e[0]==="m"&&(d=new RegExp(l.mapData.regex).exec(e))){if(r||h.multiple)return!1;var m=l.mapData;if(!(h.color||h.number))return!1;var g=this.parse(t,d[4]);if(!g||g.mapped)return!1;var y=this.parse(t,d[5]);if(!y||y.mapped)return!1;if(g.pfValue===y.pfValue||g.strValue===y.strValue)return un("`"+t+": "+e+"` is not a valid mapper because the output range is zero; converting to `"+t+": "+g.strValue+"`"),this.parse(t,g.strValue);if(h.color){var v=g.value,x=y.value,b=v[0]===x[0]&&v[1]===x[1]&&v[2]===x[2]&&(v[3]===x[3]||(v[3]==null||v[3]===1)&&(x[3]==null||x[3]===1));if(b)return!1}return{name:t,value:d,strValue:""+e,mapped:m,field:d[1],fieldMin:parseFloat(d[2]),fieldMax:parseFloat(d[3]),valueMin:g.value,valueMax:y.value,bypass:r}}}if(h.multiple&&n!=="multiple"){var w;if(u?w=e.split(/\s+/):En(e)?w=e:w=[e],h.evenMultiple&&w.length%2!==0)return null;for(var C=[],T=[],E=[],A="",S=!1,_=0;_0?" ":"")+I.strValue}return h.validate&&!h.validate(C,T)?null:h.singleEnum&&S?C.length===1&&Zt(C[0])?{name:t,value:C[0],strValue:C[0],bypass:r}:null:{name:t,value:C,pfValue:E,strValue:A,bypass:r,units:T}}var D=o(function(){for(var K=0;Kh.max||h.strictMax&&e===h.max))return null;var M={name:t,value:e,strValue:""+e+(k||""),units:k,bypass:r};return h.unitless||k!=="px"&&k!=="em"?M.pfValue=e:M.pfValue=k==="px"||!k?e:this.getEmSizeInPixels()*e,(k==="ms"||k==="s")&&(M.pfValue=k==="ms"?e:1e3*e),(k==="deg"||k==="rad")&&(M.pfValue=k==="rad"?e:Nqe(e)),k==="%"&&(M.pfValue=e/100),M}else if(h.propList){var B=[],F=""+e;if(F!=="none"){for(var P=F.split(/\s*,\s*|\s+/),z=0;z0&&l>0&&!isNaN(n.w)&&!isNaN(n.h)&&n.w>0&&n.h>0){u=Math.min((s-2*r)/n.w,(l-2*r)/n.h),u=u>this._private.maxZoom?this._private.maxZoom:u,u=u=n.minZoom&&(n.maxZoom=r),this},"zoomRange"),minZoom:o(function(e){return e===void 0?this._private.minZoom:this.zoomRange({min:e})},"minZoom"),maxZoom:o(function(e){return e===void 0?this._private.maxZoom:this.zoomRange({max:e})},"maxZoom"),getZoomedViewport:o(function(e){var r=this._private,n=r.pan,i=r.zoom,a,s,l=!1;if(r.zoomingEnabled||(l=!0),Ct(e)?s=e:Ur(e)&&(s=e.level,e.position!=null?a=MS(e.position,i,n):e.renderedPosition!=null&&(a=e.renderedPosition),a!=null&&!r.panningEnabled&&(l=!0)),s=s>r.maxZoom?r.maxZoom:s,s=sr.maxZoom||!r.zoomingEnabled?s=!0:(r.zoom=u,a.push("zoom"))}if(i&&(!s||!e.cancelOnFailedZoom)&&r.panningEnabled){var h=e.pan;Ct(h.x)&&(r.pan.x=h.x,l=!1),Ct(h.y)&&(r.pan.y=h.y,l=!1),l||a.push("pan")}return a.length>0&&(a.push("viewport"),this.emit(a.join(" ")),this.notify("viewport")),this},"viewport"),center:o(function(e){var r=this.getCenterPan(e);return r&&(this._private.pan=r,this.emit("pan viewport"),this.notify("viewport")),this},"center"),getCenterPan:o(function(e,r){if(this._private.panningEnabled){if(Zt(e)){var n=e;e=this.mutableElements().filter(n)}else go(e)||(e=this.mutableElements());if(e.length!==0){var i=e.boundingBox(),a=this.width(),s=this.height();r=r===void 0?this._private.zoom:r;var l={x:(a-r*(i.x1+i.x2))/2,y:(s-r*(i.y1+i.y2))/2};return l}}},"getCenterPan"),reset:o(function(){return!this._private.panningEnabled||!this._private.zoomingEnabled?this:(this.viewport({pan:{x:0,y:0},zoom:1}),this)},"reset"),invalidateSize:o(function(){this._private.sizeCache=null},"invalidateSize"),size:o(function(){var e=this._private,r=e.container,n=this;return e.sizeCache=e.sizeCache||(r?function(){var i=n.window().getComputedStyle(r),a=o(function(l){return parseFloat(i.getPropertyValue(l))},"val");return{width:r.clientWidth-a("padding-left")-a("padding-right"),height:r.clientHeight-a("padding-top")-a("padding-bottom")}}():{width:1,height:1})},"size"),width:o(function(){return this.size().width},"width"),height:o(function(){return this.size().height},"height"),extent:o(function(){var e=this._private.pan,r=this._private.zoom,n=this.renderedExtent(),i={x1:(n.x1-e.x)/r,x2:(n.x2-e.x)/r,y1:(n.y1-e.y)/r,y2:(n.y2-e.y)/r};return i.w=i.x2-i.x1,i.h=i.y2-i.y1,i},"extent"),renderedExtent:o(function(){var e=this.width(),r=this.height();return{x1:0,y1:0,x2:e,y2:r,w:e,h:r}},"renderedExtent"),multiClickDebounceTime:o(function(e){if(e)this._private.multiClickDebounceTime=e;else return this._private.multiClickDebounceTime;return this},"multiClickDebounceTime")};Hp.centre=Hp.center;Hp.autolockNodes=Hp.autolock;Hp.autoungrabifyNodes=Hp.autoungrabify;Zb={data:cn.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeData:cn.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),scratch:cn.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:cn.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0})};Zb.attr=Zb.data;Zb.removeAttr=Zb.removeData;Jb=o(function(e){var r=this;e=rr({},e);var n=e.container;n&&!vS(n)&&vS(n[0])&&(n=n[0]);var i=n?n._cyreg:null;i=i||{},i&&i.cy&&(i.cy.destroy(),i={});var a=i.readies=i.readies||[];n&&(n._cyreg=i),i.cy=r;var s=Ui!==void 0&&n!==void 0&&!e.headless,l=e;l.layout=rr({name:s?"grid":"null"},l.layout),l.renderer=rr({name:s?"canvas":"null"},l.renderer);var u=o(function(g,y,v){return y!==void 0?y:v!==void 0?v:g},"defVal"),h=this._private={container:n,ready:!1,options:l,elements:new ka(this),listeners:[],aniEles:new ka(this),data:l.data||{},scratch:{},layout:null,renderer:null,destroyed:!1,notificationsEnabled:!0,minZoom:1e-50,maxZoom:1e50,zoomingEnabled:u(!0,l.zoomingEnabled),userZoomingEnabled:u(!0,l.userZoomingEnabled),panningEnabled:u(!0,l.panningEnabled),userPanningEnabled:u(!0,l.userPanningEnabled),boxSelectionEnabled:u(!0,l.boxSelectionEnabled),autolock:u(!1,l.autolock,l.autolockNodes),autoungrabify:u(!1,l.autoungrabify,l.autoungrabifyNodes),autounselectify:u(!1,l.autounselectify),styleEnabled:l.styleEnabled===void 0?s:l.styleEnabled,zoom:Ct(l.zoom)?l.zoom:1,pan:{x:Ur(l.pan)&&Ct(l.pan.x)?l.pan.x:0,y:Ur(l.pan)&&Ct(l.pan.y)?l.pan.y:0},animation:{current:[],queue:[]},hasCompoundNodes:!1,multiClickDebounceTime:u(250,l.multiClickDebounceTime)};this.createEmitter(),this.selectionType(l.selectionType),this.zoomRange({min:l.minZoom,max:l.maxZoom});var f=o(function(g,y){var v=g.some(nWe);if(v)return ey.all(g).then(y);y(g)},"loadExtData");h.styleEnabled&&r.setStyle([]);var d=rr({},l,l.renderer);r.initRenderer(d);var p=o(function(g,y,v){r.notifications(!1);var x=r.mutableElements();x.length>0&&x.remove(),g!=null&&(Ur(g)||En(g))&&r.add(g),r.one("layoutready",function(w){r.notifications(!0),r.emit(w),r.one("load",y),r.emitAndNotify("load")}).one("layoutstop",function(){r.one("done",v),r.emit("done")});var b=rr({},r._private.options.layout);b.eles=r.elements(),r.layout(b).run()},"setElesAndLayout");f([l.style,l.elements],function(m){var g=m[0],y=m[1];h.styleEnabled&&r.style().append(g),p(y,function(){r.startAnimationLoop(),h.ready=!0,si(l.ready)&&r.on("ready",l.ready);for(var v=0;v0,l=!!t.boundingBox,u=e.extent(),h=Hs(l?t.boundingBox:{x1:u.x1,y1:u.y1,w:u.w,h:u.h}),f;if(go(t.roots))f=t.roots;else if(En(t.roots)){for(var d=[],p=0;p0;){var O=R(),M=I(O,k);if(M)O.outgoers().filter(function(ae){return ae.isNode()&&r.has(ae)}).forEach(L);else if(M===null){un("Detected double maximal shift for node `"+O.id()+"`. Bailing maximal adjustment due to cycle. Use `options.maximal: true` only on DAGs.");break}}}var B=0;if(t.avoidOverlap)for(var F=0;F0&&b[0].length<=3?$e/2:0),Ie=2*Math.PI/b[ze].length*He;return ze===0&&b[0].length===1&&(Re=1),{x:se.x+Re*Math.cos(Ie),y:se.y+Re*Math.sin(Ie)}}else{var be=b[ze].length,W=Math.max(be===1?0:l?(h.w-t.padding*2-ue.w)/((t.grid?Se:be)-1):(h.w-t.padding*2-ue.w)/((t.grid?Se:be)+1),B),de={x:se.x+(He+1-(be+1)/2)*W,y:se.y+(ze+1-(ne+1)/2)*Z};return de}},"getPosition");return r.nodes().layoutPositions(this,t,ce),this};rQe={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,radius:void 0,startAngle:3/2*Math.PI,sweep:void 0,clockwise:!0,sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:o(function(e,r){return!0},"animateFilter"),ready:void 0,stop:void 0,transform:o(function(e,r){return r},"transform")};o(rge,"CircleLayout");rge.prototype.run=function(){var t=this.options,e=t,r=t.cy,n=e.eles,i=e.counterclockwise!==void 0?!e.counterclockwise:e.clockwise,a=n.nodes().not(":parent");e.sort&&(a=a.sort(e.sort));for(var s=Hs(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()}),l={x:s.x1+s.w/2,y:s.y1+s.h/2},u=e.sweep===void 0?2*Math.PI-2*Math.PI/a.length:e.sweep,h=u/Math.max(1,a.length-1),f,d=0,p=0;p1&&e.avoidOverlap){d*=1.75;var x=Math.cos(h)-Math.cos(0),b=Math.sin(h)-Math.sin(0),w=Math.sqrt(d*d/(x*x+b*b));f=Math.max(w,f)}var C=o(function(E,A){var S=e.startAngle+A*h*(i?1:-1),_=f*Math.cos(S),I=f*Math.sin(S),D={x:l.x+_,y:l.y+I};return D},"getPos");return n.nodes().layoutPositions(this,e,C),this};nQe={fit:!0,padding:30,startAngle:3/2*Math.PI,sweep:void 0,clockwise:!0,equidistant:!1,minNodeSpacing:10,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,height:void 0,width:void 0,spacingFactor:void 0,concentric:o(function(e){return e.degree()},"concentric"),levelWidth:o(function(e){return e.maxDegree()/4},"levelWidth"),animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:o(function(e,r){return!0},"animateFilter"),ready:void 0,stop:void 0,transform:o(function(e,r){return r},"transform")};o(nge,"ConcentricLayout");nge.prototype.run=function(){for(var t=this.options,e=t,r=e.counterclockwise!==void 0?!e.counterclockwise:e.clockwise,n=t.cy,i=e.eles,a=i.nodes().not(":parent"),s=Hs(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:n.width(),h:n.height()}),l={x:s.x1+s.w/2,y:s.y1+s.h/2},u=[],h=0,f=0;f0){var T=Math.abs(b[0].value-C.value);T>=v&&(b=[],x.push(b))}b.push(C)}var E=h+e.minNodeSpacing;if(!e.avoidOverlap){var A=x.length>0&&x[0].length>1,S=Math.min(s.w,s.h)/2-E,_=S/(x.length+A?1:0);E=Math.min(E,_)}for(var I=0,D=0;D1&&e.avoidOverlap){var O=Math.cos(R)-Math.cos(0),M=Math.sin(R)-Math.sin(0),B=Math.sqrt(E*E/(O*O+M*M));I=Math.max(B,I)}k.r=I,I+=E}if(e.equidistant){for(var F=0,P=0,z=0;z=t.numIter||(hQe(n,t),n.temperature=n.temperature*t.coolingFactor,n.temperature=t.animationThreshold&&a(),xS(d)}},"frame");f()}else{for(;h;)h=s(u),u++;E0e(n,t),l()}return this};HS.prototype.stop=function(){return this.stopped=!0,this.thread&&this.thread.stop(),this.emit("layoutstop"),this};HS.prototype.destroy=function(){return this.thread&&this.thread.stop(),this};aQe=o(function(e,r,n){for(var i=n.eles.edges(),a=n.eles.nodes(),s=Hs(n.boundingBox?n.boundingBox:{x1:0,y1:0,w:e.width(),h:e.height()}),l={isCompound:e.hasCompoundNodes(),layoutNodes:[],idToIndex:{},nodeSize:a.size(),graphSet:[],indexToGraph:[],layoutEdges:[],edgeSize:i.size(),temperature:n.initialTemp,clientWidth:s.w,clientHeight:s.h,boundingBox:s},u=n.eles.components(),h={},f=0;f0){l.graphSet.push(S);for(var f=0;fi.count?0:i.graph},"findLCA"),oQe=o(function t(e,r,n,i){var a=i.graphSet[n];if(-10)var d=i.nodeOverlap*f,p=Math.sqrt(l*l+u*u),m=d*l/p,g=d*u/p;else var y=CS(e,l,u),v=CS(r,-1*l,-1*u),x=v.x-y.x,b=v.y-y.y,w=x*x+b*b,p=Math.sqrt(w),d=(e.nodeRepulsion+r.nodeRepulsion)/w,m=d*x/p,g=d*b/p;e.isLocked||(e.offsetX-=m,e.offsetY-=g),r.isLocked||(r.offsetX+=m,r.offsetY+=g)}},"nodeRepulsion"),pQe=o(function(e,r,n,i){if(n>0)var a=e.maxX-r.minX;else var a=r.maxX-e.minX;if(i>0)var s=e.maxY-r.minY;else var s=r.maxY-e.minY;return a>=0&&s>=0?Math.sqrt(a*a+s*s):0},"nodesOverlap"),CS=o(function(e,r,n){var i=e.positionX,a=e.positionY,s=e.height||1,l=e.width||1,u=n/r,h=s/l,f={};return r===0&&0n?(f.x=i,f.y=a+s/2,f):0r&&-1*h<=u&&u<=h?(f.x=i-l/2,f.y=a-l*n/2/r,f):0=h)?(f.x=i+s*r/2/n,f.y=a+s/2,f):(0>n&&(u<=-1*h||u>=h)&&(f.x=i-s*r/2/n,f.y=a-s/2),f)},"findClippingPoint"),mQe=o(function(e,r){for(var n=0;nn){var v=r.gravity*m/y,x=r.gravity*g/y;p.offsetX+=v,p.offsetY+=x}}}}},"calculateGravityForces"),yQe=o(function(e,r){var n=[],i=0,a=-1;for(n.push.apply(n,e.graphSet[0]),a+=e.graphSet[0].length;i<=a;){var s=n[i++],l=e.idToIndex[s],u=e.layoutNodes[l],h=u.children;if(0n)var a={x:n*e/i,y:n*r/i};else var a={x:e,y:r};return a},"limitForce"),bQe=o(function t(e,r){var n=e.parentId;if(n!=null){var i=r.layoutNodes[r.idToIndex[n]],a=!1;if((i.maxX==null||e.maxX+i.padRight>i.maxX)&&(i.maxX=e.maxX+i.padRight,a=!0),(i.minX==null||e.minX-i.padLefti.maxY)&&(i.maxY=e.maxY+i.padBottom,a=!0),(i.minY==null||e.minY-i.padTopx&&(g+=v+r.componentSpacing,m=0,y=0,v=0)}}},"separateComponents"),wQe={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,avoidOverlapPadding:10,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,condense:!1,rows:void 0,cols:void 0,position:o(function(e){},"position"),sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:o(function(e,r){return!0},"animateFilter"),ready:void 0,stop:void 0,transform:o(function(e,r){return r},"transform")};o(age,"GridLayout");age.prototype.run=function(){var t=this.options,e=t,r=t.cy,n=e.eles,i=n.nodes().not(":parent");e.sort&&(i=i.sort(e.sort));var a=Hs(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()});if(a.h===0||a.w===0)n.nodes().layoutPositions(this,e,function(Q){return{x:a.x1,y:a.y1}});else{var s=i.size(),l=Math.sqrt(s*a.h/a.w),u=Math.round(l),h=Math.round(a.w/a.h*l),f=o(function(j){if(j==null)return Math.min(u,h);var ie=Math.min(u,h);ie==u?u=j:h=j},"small"),d=o(function(j){if(j==null)return Math.max(u,h);var ie=Math.max(u,h);ie==u?u=j:h=j},"large"),p=e.rows,m=e.cols!=null?e.cols:e.columns;if(p!=null&&m!=null)u=p,h=m;else if(p!=null&&m==null)u=p,h=Math.ceil(s/u);else if(p==null&&m!=null)h=m,u=Math.ceil(s/h);else if(h*u>s){var g=f(),y=d();(g-1)*y>=s?f(g-1):(y-1)*g>=s&&d(y-1)}else for(;h*u=s?d(x+1):f(v+1)}var b=a.w/h,w=a.h/u;if(e.condense&&(b=0,w=0),e.avoidOverlap)for(var C=0;C=h&&(O=0,R++)},"moveToNextCell"),B={},F=0;F(O=Wqe(t,e,M[B],M[B+1],M[B+2],M[B+3])))return v(A,O),!0}else if(_.edgeType==="bezier"||_.edgeType==="multibezier"||_.edgeType==="self"||_.edgeType==="compound"){for(var M=_.allpts,B=0;B+5<_.allpts.length;B+=4)if(Gqe(t,e,M[B],M[B+1],M[B+2],M[B+3],M[B+4],M[B+5],R)&&L>(O=Hqe(t,e,M[B],M[B+1],M[B+2],M[B+3],M[B+4],M[B+5])))return v(A,O),!0}for(var F=F||S.source,P=P||S.target,z=i.getArrowWidth(I,D),$=[{name:"source",x:_.arrowStartX,y:_.arrowStartY,angle:_.srcArrowAngle},{name:"target",x:_.arrowEndX,y:_.arrowEndY,angle:_.tgtArrowAngle},{name:"mid-source",x:_.midX,y:_.midY,angle:_.midsrcArrowAngle},{name:"mid-target",x:_.midX,y:_.midY,angle:_.midtgtArrowAngle}],B=0;B<$.length;B++){var H=$[B],Q=a.arrowShapes[A.pstyle(H.name+"-arrow-shape").value],j=A.pstyle("width").pfValue;if(Q.roughCollide(t,e,z,H.angle,{x:H.x,y:H.y},j,f)&&Q.collide(t,e,z,H.angle,{x:H.x,y:H.y},j,f))return v(A),!0}h&&l.length>0&&(x(F),x(P))}o(b,"checkEdge");function w(A,S,_){return Gl(A,S,_)}o(w,"preprop");function C(A,S){var _=A._private,I=p,D;S?D=S+"-":D="",A.boundingBox();var k=_.labelBounds[S||"main"],L=A.pstyle(D+"label").value,R=A.pstyle("text-events").strValue==="yes";if(!(!R||!L)){var O=w(_.rscratch,"labelX",S),M=w(_.rscratch,"labelY",S),B=w(_.rscratch,"labelAngle",S),F=A.pstyle(D+"text-margin-x").pfValue,P=A.pstyle(D+"text-margin-y").pfValue,z=k.x1-I-F,$=k.x2+I-F,H=k.y1-I-P,Q=k.y2+I-P;if(B){var j=Math.cos(B),ie=Math.sin(B),ne=o(function(se,ue){return se=se-O,ue=ue-M,{x:se*j-ue*ie+O,y:se*ie+ue*j+M}},"rotate"),le=ne(z,H),he=ne(z,Q),K=ne($,H),X=ne($,Q),te=[le.x+F,le.y+P,K.x+F,K.y+P,X.x+F,X.y+P,he.x+F,he.y+P];if(Us(t,e,te))return v(A),!0}else if(K1(k,t,e))return v(A),!0}}o(C,"checkLabel");for(var T=s.length-1;T>=0;T--){var E=s[T];E.isNode()?x(E)||C(E):b(E)||C(E)||C(E,"source")||C(E,"target")}return l};qp.getAllInBox=function(t,e,r,n){var i=this.getCachedZSortedEles().interactive,a=[],s=Math.min(t,r),l=Math.max(t,r),u=Math.min(e,n),h=Math.max(e,n);t=s,r=l,e=u,n=h;for(var f=Hs({x1:t,y1:e,x2:r,y2:n}),d=0;d0?-(Math.PI-e.ang):Math.PI+e.ang},"invertVec"),AQe=o(function(e,r,n,i,a){if(e!==D0e?L0e(r,e,qc):CQe(Jo,qc),L0e(r,n,Jo),A0e=qc.nx*Jo.ny-qc.ny*Jo.nx,_0e=qc.nx*Jo.nx-qc.ny*-Jo.ny,Ku=Math.asin(Math.max(-1,Math.min(1,A0e))),Math.abs(Ku)<1e-6){HP=r.x,WP=r.y,Bp=G1=0;return}Fp=1,gS=!1,_0e<0?Ku<0?Ku=Math.PI+Ku:(Ku=Math.PI-Ku,Fp=-1,gS=!0):Ku>0&&(Fp=-1,gS=!0),r.radius!==void 0?G1=r.radius:G1=i,Mp=Ku/2,aS=Math.min(qc.len/2,Jo.len/2),a?(Wc=Math.abs(Math.cos(Mp)*G1/Math.sin(Mp)),Wc>aS?(Wc=aS,Bp=Math.abs(Wc*Math.sin(Mp)/Math.cos(Mp))):Bp=G1):(Wc=Math.min(aS,G1),Bp=Math.abs(Wc*Math.sin(Mp)/Math.cos(Mp))),qP=r.x+Jo.nx*Wc,YP=r.y+Jo.ny*Wc,HP=qP-Jo.ny*Bp*Fp,WP=YP+Jo.nx*Bp*Fp,cge=r.x+qc.nx*Wc,uge=r.y+qc.ny*Wc,D0e=r},"calcCornerArc");o(hge,"drawPreparedRoundCorner");o(vB,"getRoundCorner");Va={};Va.findMidptPtsEtc=function(t,e){var r=e.posPts,n=e.intersectionPts,i=e.vectorNormInverse,a,s=t.pstyle("source-endpoint"),l=t.pstyle("target-endpoint"),u=s.units!=null&&l.units!=null,h=o(function(T,E,A,S){var _=S-E,I=A-T,D=Math.sqrt(I*I+_*_);return{x:-_/D,y:I/D}},"recalcVectorNormInverse"),f=t.pstyle("edge-distances").value;switch(f){case"node-position":a=r;break;case"intersection":a=n;break;case"endpoints":{if(u){var d=this.manualEndptToPx(t.source()[0],s),p=_i(d,2),m=p[0],g=p[1],y=this.manualEndptToPx(t.target()[0],l),v=_i(y,2),x=v[0],b=v[1],w={x1:m,y1:g,x2:x,y2:b};i=h(m,g,x,b),a=w}else un("Edge ".concat(t.id()," has edge-distances:endpoints specified without manual endpoints specified via source-endpoint and target-endpoint. Falling back on edge-distances:intersection (default).")),a=n;break}}return{midptPts:a,vectorNormInverse:i}};Va.findHaystackPoints=function(t){for(var e=0;e0?Math.max(q-pe,0):Math.min(q+pe,0)},"subDWH"),L=k(I,S),R=k(D,_),O=!1;b===h?x=Math.abs(L)>Math.abs(R)?i:n:b===u||b===l?(x=n,O=!0):(b===a||b===s)&&(x=i,O=!0);var M=x===n,B=M?R:L,F=M?D:I,P=mme(F),z=!1;!(O&&(C||E))&&(b===l&&F<0||b===u&&F>0||b===a&&F>0||b===s&&F<0)&&(P*=-1,B=P*Math.abs(B),z=!0);var $;if(C){var H=T<0?1+T:T;$=H*B}else{var Q=T<0?B:0;$=Q+T*P}var j=o(function(q){return Math.abs(q)=Math.abs(B)},"getIsTooClose"),ie=j($),ne=j(Math.abs(B)-Math.abs($)),le=ie||ne;if(le&&!z)if(M){var he=Math.abs(F)<=p/2,K=Math.abs(I)<=m/2;if(he){var X=(f.x1+f.x2)/2,te=f.y1,J=f.y2;r.segpts=[X,te,X,J]}else if(K){var se=(f.y1+f.y2)/2,ue=f.x1,Z=f.x2;r.segpts=[ue,se,Z,se]}else r.segpts=[f.x1,f.y2]}else{var Se=Math.abs(F)<=d/2,ce=Math.abs(D)<=g/2;if(Se){var ae=(f.y1+f.y2)/2,Oe=f.x1,ge=f.x2;r.segpts=[Oe,ae,ge,ae]}else if(ce){var ze=(f.x1+f.x2)/2,He=f.y1,$e=f.y2;r.segpts=[ze,He,ze,$e]}else r.segpts=[f.x2,f.y1]}else if(M){var Re=f.y1+$+(v?p/2*P:0),Ie=f.x1,be=f.x2;r.segpts=[Ie,Re,be,Re]}else{var W=f.x1+$+(v?d/2*P:0),de=f.y1,re=f.y2;r.segpts=[W,de,W,re]}if(r.isRound){var oe=t.pstyle("taxi-radius").value,V=t.pstyle("radius-type").value[0]==="arc-radius";r.radii=new Array(r.segpts.length/2).fill(oe),r.isArcRadius=new Array(r.segpts.length/2).fill(V)}};Va.tryToCorrectInvalidPoints=function(t,e){var r=t._private.rscratch;if(r.edgeType==="bezier"){var n=e.srcPos,i=e.tgtPos,a=e.srcW,s=e.srcH,l=e.tgtW,u=e.tgtH,h=e.srcShape,f=e.tgtShape,d=e.srcCornerRadius,p=e.tgtCornerRadius,m=e.srcRs,g=e.tgtRs,y=!Ct(r.startX)||!Ct(r.startY),v=!Ct(r.arrowStartX)||!Ct(r.arrowStartY),x=!Ct(r.endX)||!Ct(r.endY),b=!Ct(r.arrowEndX)||!Ct(r.arrowEndY),w=3,C=this.getArrowWidth(t.pstyle("width").pfValue,t.pstyle("arrow-scale").value)*this.arrowShapeWidth,T=w*C,E=Gp({x:r.ctrlpts[0],y:r.ctrlpts[1]},{x:r.startX,y:r.startY}),A=ER.poolIndex()){var O=L;L=R,R=O}var M=_.srcPos=L.position(),B=_.tgtPos=R.position(),F=_.srcW=L.outerWidth(),P=_.srcH=L.outerHeight(),z=_.tgtW=R.outerWidth(),$=_.tgtH=R.outerHeight(),H=_.srcShape=r.nodeShapes[e.getNodeShape(L)],Q=_.tgtShape=r.nodeShapes[e.getNodeShape(R)],j=_.srcCornerRadius=L.pstyle("corner-radius").value==="auto"?"auto":L.pstyle("corner-radius").pfValue,ie=_.tgtCornerRadius=R.pstyle("corner-radius").value==="auto"?"auto":R.pstyle("corner-radius").pfValue,ne=_.tgtRs=R._private.rscratch,le=_.srcRs=L._private.rscratch;_.dirCounts={north:0,west:0,south:0,east:0,northwest:0,southwest:0,northeast:0,southeast:0};for(var he=0;he<_.eles.length;he++){var K=_.eles[he],X=K[0]._private.rscratch,te=K.pstyle("curve-style").value,J=te==="unbundled-bezier"||te.endsWith("segments")||te.endsWith("taxi"),se=!L.same(K.source());if(!_.calculatedIntersection&&L!==R&&(_.hasBezier||_.hasUnbundled)){_.calculatedIntersection=!0;var ue=H.intersectLine(M.x,M.y,F,P,B.x,B.y,0,j,le),Z=_.srcIntn=ue,Se=Q.intersectLine(B.x,B.y,z,$,M.x,M.y,0,ie,ne),ce=_.tgtIntn=Se,ae=_.intersectionPts={x1:ue[0],x2:Se[0],y1:ue[1],y2:Se[1]},Oe=_.posPts={x1:M.x,x2:B.x,y1:M.y,y2:B.y},ge=Se[1]-ue[1],ze=Se[0]-ue[0],He=Math.sqrt(ze*ze+ge*ge),$e=_.vector={x:ze,y:ge},Re=_.vectorNorm={x:$e.x/He,y:$e.y/He},Ie={x:-Re.y,y:Re.x};_.nodesOverlap=!Ct(He)||Q.checkPoint(ue[0],ue[1],0,z,$,B.x,B.y,ie,ne)||H.checkPoint(Se[0],Se[1],0,F,P,M.x,M.y,j,le),_.vectorNormInverse=Ie,I={nodesOverlap:_.nodesOverlap,dirCounts:_.dirCounts,calculatedIntersection:!0,hasBezier:_.hasBezier,hasUnbundled:_.hasUnbundled,eles:_.eles,srcPos:B,srcRs:ne,tgtPos:M,tgtRs:le,srcW:z,srcH:$,tgtW:F,tgtH:P,srcIntn:ce,tgtIntn:Z,srcShape:Q,tgtShape:H,posPts:{x1:Oe.x2,y1:Oe.y2,x2:Oe.x1,y2:Oe.y1},intersectionPts:{x1:ae.x2,y1:ae.y2,x2:ae.x1,y2:ae.y1},vector:{x:-$e.x,y:-$e.y},vectorNorm:{x:-Re.x,y:-Re.y},vectorNormInverse:{x:-Ie.x,y:-Ie.y}}}var be=se?I:_;X.nodesOverlap=be.nodesOverlap,X.srcIntn=be.srcIntn,X.tgtIntn=be.tgtIntn,X.isRound=te.startsWith("round"),i&&(L.isParent()||L.isChild()||R.isParent()||R.isChild())&&(L.parents().anySame(R)||R.parents().anySame(L)||L.same(R)&&L.isParent())?e.findCompoundLoopPoints(K,be,he,J):L===R?e.findLoopPoints(K,be,he,J):te.endsWith("segments")?e.findSegmentsPoints(K,be):te.endsWith("taxi")?e.findTaxiPoints(K,be):te==="straight"||!J&&_.eles.length%2===1&&he===Math.floor(_.eles.length/2)?e.findStraightEdgePoints(K):e.findBezierPoints(K,be,he,J,se),e.findEndpoints(K),e.tryToCorrectInvalidPoints(K,be),e.checkForInvalidEdgeWarning(K),e.storeAllpts(K),e.storeEdgeProjections(K),e.calculateArrowAngles(K),e.recalculateEdgeLabelProjections(K),e.calculateLabelAngles(K)}},"_loop"),T=0;T0){var J=a,se=Op(J,U1(r)),ue=Op(J,U1(te)),Z=se;if(ue2){var Se=Op(J,{x:te[2],y:te[3]});Se0){var re=s,oe=Op(re,U1(r)),V=Op(re,U1(de)),xe=oe;if(V2){var q=Op(re,{x:de[2],y:de[3]});q=g||A){v={cp:C,segment:E};break}}if(v)break}var S=v.cp,_=v.segment,I=(g-x)/_.length,D=_.t1-_.t0,k=m?_.t0+D*I:_.t1-D*I;k=Yb(0,k,1),e=W1(S.p0,S.p1,S.p2,k),p=DQe(S.p0,S.p1,S.p2,k);break}case"straight":case"segments":case"haystack":{for(var L=0,R,O,M,B,F=n.allpts.length,P=0;P+3=g));P+=2);var z=g-O,$=z/R;$=Yb(0,$,1),e=Iqe(M,B,$),p=pge(M,B);break}}s("labelX",d,e.x),s("labelY",d,e.y),s("labelAutoAngle",d,p)}},"calculateEndProjection");h("source"),h("target"),this.applyLabelDimensions(t)}};Kc.applyLabelDimensions=function(t){this.applyPrefixedLabelDimensions(t),t.isEdge()&&(this.applyPrefixedLabelDimensions(t,"source"),this.applyPrefixedLabelDimensions(t,"target"))};Kc.applyPrefixedLabelDimensions=function(t,e){var r=t._private,n=this.getLabelText(t,e),i=this.calculateLabelDimensions(t,n),a=t.pstyle("line-height").pfValue,s=t.pstyle("text-wrap").strValue,l=Gl(r.rscratch,"labelWrapCachedLines",e)||[],u=s!=="wrap"?1:Math.max(l.length,1),h=i.height/u,f=h*a,d=i.width,p=i.height+(u-1)*(a-1)*h;kf(r.rstyle,"labelWidth",e,d),kf(r.rscratch,"labelWidth",e,d),kf(r.rstyle,"labelHeight",e,p),kf(r.rscratch,"labelHeight",e,p),kf(r.rscratch,"labelLineHeight",e,f)};Kc.getLabelText=function(t,e){var r=t._private,n=e?e+"-":"",i=t.pstyle(n+"label").strValue,a=t.pstyle("text-transform").value,s=o(function(Q,j){return j?(kf(r.rscratch,Q,e,j),j):Gl(r.rscratch,Q,e)},"rscratch");if(!i)return"";a=="none"||(a=="uppercase"?i=i.toUpperCase():a=="lowercase"&&(i=i.toLowerCase()));var l=t.pstyle("text-wrap").value;if(l==="wrap"){var u=s("labelKey");if(u!=null&&s("labelWrapKey")===u)return s("labelWrapCachedText");for(var h="\u200B",f=i.split(` +`),d=t.pstyle("text-max-width").pfValue,p=t.pstyle("text-overflow-wrap").value,m=p==="anywhere",g=[],y=/[\s\u200b]+|$/g,v=0;vd){var T=x.matchAll(y),E="",A=0,S=mo(T),_;try{for(S.s();!(_=S.n()).done;){var I=_.value,D=I[0],k=x.substring(A,I.index);A=I.index+D.length;var L=E.length===0?k:E+k+D,R=this.calculateLabelDimensions(t,L),O=R.width;O<=d?E+=k+D:(E&&g.push(E),E=k+D)}}catch(H){S.e(H)}finally{S.f()}E.match(/^[\s\u200b]+$/)||g.push(E)}else g.push(x)}s("labelWrapCachedLines",g),i=s("labelWrapCachedText",g.join(` +`)),s("labelWrapKey",u)}else if(l==="ellipsis"){var M=t.pstyle("text-max-width").pfValue,B="",F="\u2026",P=!1;if(this.calculateLabelDimensions(t,i).widthM)break;B+=i[z],z===i.length-1&&(P=!0)}return P||(B+=F),B}return i};Kc.getLabelJustification=function(t){var e=t.pstyle("text-justification").strValue,r=t.pstyle("text-halign").strValue;if(e==="auto")if(t.isNode())switch(r){case"left":return"right";case"right":return"left";default:return"center"}else return"center";else return e};Kc.calculateLabelDimensions=function(t,e){var r=this,n=r.cy.window(),i=n.document,a=_f(e,t._private.labelDimsKey),s=r.labelDimCache||(r.labelDimCache=[]),l=s[a];if(l!=null)return l;var u=0,h=t.pstyle("font-style").strValue,f=t.pstyle("font-size").pfValue,d=t.pstyle("font-family").strValue,p=t.pstyle("font-weight").strValue,m=this.labelCalcCanvas,g=this.labelCalcCanvasContext;if(!m){m=this.labelCalcCanvas=i.createElement("canvas"),g=this.labelCalcCanvasContext=m.getContext("2d");var y=m.style;y.position="absolute",y.left="-9999px",y.top="-9999px",y.zIndex="-1",y.visibility="hidden",y.pointerEvents="none"}g.font="".concat(h," ").concat(p," ").concat(f,"px ").concat(d);for(var v=0,x=0,b=e.split(` +`),w=0;w1&&arguments[1]!==void 0?arguments[1]:!0;if(e.merge(s),l)for(var u=0;u=t.desktopTapThreshold2}var ot=a(W);at&&(t.hoverData.tapholdCancelled=!0);var Yt=o(function(){var Tt=t.hoverData.dragDelta=t.hoverData.dragDelta||[];Tt.length===0?(Tt.push(De[0]),Tt.push(De[1])):(Tt[0]+=De[0],Tt[1]+=De[1])},"updateDragDelta");re=!0,i(_e,["mousemove","vmousemove","tapdrag"],W,{x:q[0],y:q[1]});var bt=o(function(){t.data.bgActivePosistion=void 0,t.hoverData.selecting||oe.emit({originalEvent:W,type:"boxstart",position:{x:q[0],y:q[1]}}),Pe[4]=1,t.hoverData.selecting=!0,t.redrawHint("select",!0),t.redraw()},"goIntoBoxMode");if(t.hoverData.which===3){if(at){var Mt={originalEvent:W,type:"cxtdrag",position:{x:q[0],y:q[1]}};Ve?Ve.emit(Mt):oe.emit(Mt),t.hoverData.cxtDragged=!0,(!t.hoverData.cxtOver||_e!==t.hoverData.cxtOver)&&(t.hoverData.cxtOver&&t.hoverData.cxtOver.emit({originalEvent:W,type:"cxtdragout",position:{x:q[0],y:q[1]}}),t.hoverData.cxtOver=_e,_e&&_e.emit({originalEvent:W,type:"cxtdragover",position:{x:q[0],y:q[1]}}))}}else if(t.hoverData.dragging){if(re=!0,oe.panningEnabled()&&oe.userPanningEnabled()){var xt;if(t.hoverData.justStartedPan){var ut=t.hoverData.mdownPos;xt={x:(q[0]-ut[0])*V,y:(q[1]-ut[1])*V},t.hoverData.justStartedPan=!1}else xt={x:De[0]*V,y:De[1]*V};oe.panBy(xt),oe.emit("dragpan"),t.hoverData.dragged=!0}q=t.projectIntoViewport(W.clientX,W.clientY)}else if(Pe[4]==1&&(Ve==null||Ve.pannable())){if(at){if(!t.hoverData.dragging&&oe.boxSelectionEnabled()&&(ot||!oe.panningEnabled()||!oe.userPanningEnabled()))bt();else if(!t.hoverData.selecting&&oe.panningEnabled()&&oe.userPanningEnabled()){var Et=s(Ve,t.hoverData.downs);Et&&(t.hoverData.dragging=!0,t.hoverData.justStartedPan=!0,Pe[4]=0,t.data.bgActivePosistion=U1(pe),t.redrawHint("select",!0),t.redraw())}Ve&&Ve.pannable()&&Ve.active()&&Ve.unactivate()}}else{if(Ve&&Ve.pannable()&&Ve.active()&&Ve.unactivate(),(!Ve||!Ve.grabbed())&&_e!=we&&(we&&i(we,["mouseout","tapdragout"],W,{x:q[0],y:q[1]}),_e&&i(_e,["mouseover","tapdragover"],W,{x:q[0],y:q[1]}),t.hoverData.last=_e),Ve)if(at){if(oe.boxSelectionEnabled()&&ot)Ve&&Ve.grabbed()&&(x(qe),Ve.emit("freeon"),qe.emit("free"),t.dragData.didDrag&&(Ve.emit("dragfreeon"),qe.emit("dragfree"))),bt();else if(Ve&&Ve.grabbed()&&t.nodeIsDraggable(Ve)){var ft=!t.dragData.didDrag;ft&&t.redrawHint("eles",!0),t.dragData.didDrag=!0,t.hoverData.draggingEles||y(qe,{inDragLayer:!0});var yt={x:0,y:0};if(Ct(De[0])&&Ct(De[1])&&(yt.x+=De[0],yt.y+=De[1],ft)){var nt=t.hoverData.dragDelta;nt&&Ct(nt[0])&&Ct(nt[1])&&(yt.x+=nt[0],yt.y+=nt[1])}t.hoverData.draggingEles=!0,qe.silentShift(yt).emit("position drag"),t.redrawHint("drag",!0),t.redraw()}}else Yt();re=!0}if(Pe[2]=q[0],Pe[3]=q[1],re)return W.stopPropagation&&W.stopPropagation(),W.preventDefault&&W.preventDefault(),!1}},"mousemoveHandler"),!1);var k,L,R;t.registerBinding(e,"mouseup",o(function(W){if(!(t.hoverData.which===1&&W.which!==1&&t.hoverData.capture)){var de=t.hoverData.capture;if(de){t.hoverData.capture=!1;var re=t.cy,oe=t.projectIntoViewport(W.clientX,W.clientY),V=t.selection,xe=t.findNearestElement(oe[0],oe[1],!0,!1),q=t.dragData.possibleDragElements,pe=t.hoverData.down,ve=a(W);if(t.data.bgActivePosistion&&(t.redrawHint("select",!0),t.redraw()),t.hoverData.tapholdCancelled=!0,t.data.bgActivePosistion=void 0,pe&&pe.unactivate(),t.hoverData.which===3){var Pe={originalEvent:W,type:"cxttapend",position:{x:oe[0],y:oe[1]}};if(pe?pe.emit(Pe):re.emit(Pe),!t.hoverData.cxtDragged){var _e={originalEvent:W,type:"cxttap",position:{x:oe[0],y:oe[1]}};pe?pe.emit(_e):re.emit(_e)}t.hoverData.cxtDragged=!1,t.hoverData.which=null}else if(t.hoverData.which===1){if(i(xe,["mouseup","tapend","vmouseup"],W,{x:oe[0],y:oe[1]}),!t.dragData.didDrag&&!t.hoverData.dragged&&!t.hoverData.selecting&&!t.hoverData.isOverThresholdDrag&&(i(pe,["click","tap","vclick"],W,{x:oe[0],y:oe[1]}),L=!1,W.timeStamp-R<=re.multiClickDebounceTime()?(k&&clearTimeout(k),L=!0,R=null,i(pe,["dblclick","dbltap","vdblclick"],W,{x:oe[0],y:oe[1]})):(k=setTimeout(function(){L||i(pe,["oneclick","onetap","voneclick"],W,{x:oe[0],y:oe[1]})},re.multiClickDebounceTime()),R=W.timeStamp)),pe==null&&!t.dragData.didDrag&&!t.hoverData.selecting&&!t.hoverData.dragged&&!a(W)&&(re.$(r).unselect(["tapunselect"]),q.length>0&&t.redrawHint("eles",!0),t.dragData.possibleDragElements=q=re.collection()),xe==pe&&!t.dragData.didDrag&&!t.hoverData.selecting&&xe!=null&&xe._private.selectable&&(t.hoverData.dragging||(re.selectionType()==="additive"||ve?xe.selected()?xe.unselect(["tapunselect"]):xe.select(["tapselect"]):ve||(re.$(r).unmerge(xe).unselect(["tapunselect"]),xe.select(["tapselect"]))),t.redrawHint("eles",!0)),t.hoverData.selecting){var we=re.collection(t.getAllInBox(V[0],V[1],V[2],V[3]));t.redrawHint("select",!0),we.length>0&&t.redrawHint("eles",!0),re.emit({type:"boxend",originalEvent:W,position:{x:oe[0],y:oe[1]}});var Ve=o(function(at){return at.selectable()&&!at.selected()},"eleWouldBeSelected");re.selectionType()==="additive"||ve||re.$(r).unmerge(we).unselect(),we.emit("box").stdFilter(Ve).select().emit("boxselect"),t.redraw()}if(t.hoverData.dragging&&(t.hoverData.dragging=!1,t.redrawHint("select",!0),t.redrawHint("eles",!0),t.redraw()),!V[4]){t.redrawHint("drag",!0),t.redrawHint("eles",!0);var De=pe&&pe.grabbed();x(q),De&&(pe.emit("freeon"),q.emit("free"),t.dragData.didDrag&&(pe.emit("dragfreeon"),q.emit("dragfree")))}}V[4]=0,t.hoverData.down=null,t.hoverData.cxtStarted=!1,t.hoverData.draggingEles=!1,t.hoverData.selecting=!1,t.hoverData.isOverThresholdDrag=!1,t.dragData.didDrag=!1,t.hoverData.dragged=!1,t.hoverData.dragDelta=[],t.hoverData.mdownPos=null,t.hoverData.mdownGPos=null,t.hoverData.which=null}}},"mouseupHandler"),!1);var O=o(function(W){if(!t.scrollingPage){var de=t.cy,re=de.zoom(),oe=de.pan(),V=t.projectIntoViewport(W.clientX,W.clientY),xe=[V[0]*re+oe.x,V[1]*re+oe.y];if(t.hoverData.draggingEles||t.hoverData.dragging||t.hoverData.cxtStarted||_()){W.preventDefault();return}if(de.panningEnabled()&&de.userPanningEnabled()&&de.zoomingEnabled()&&de.userZoomingEnabled()){W.preventDefault(),t.data.wheelZooming=!0,clearTimeout(t.data.wheelTimeout),t.data.wheelTimeout=setTimeout(function(){t.data.wheelZooming=!1,t.redrawHint("eles",!0),t.redraw()},150);var q;W.deltaY!=null?q=W.deltaY/-250:W.wheelDeltaY!=null?q=W.wheelDeltaY/1e3:q=W.wheelDelta/1e3,q=q*t.wheelSensitivity;var pe=W.deltaMode===1;pe&&(q*=33);var ve=de.zoom()*Math.pow(10,q);W.type==="gesturechange"&&(ve=t.gestureStartZoom*W.scale),de.zoom({level:ve,renderedPosition:{x:xe[0],y:xe[1]}}),de.emit(W.type==="gesturechange"?"pinchzoom":"scrollzoom")}}},"wheelHandler");t.registerBinding(t.container,"wheel",O,!0),t.registerBinding(e,"scroll",o(function(W){t.scrollingPage=!0,clearTimeout(t.scrollingPageTimeout),t.scrollingPageTimeout=setTimeout(function(){t.scrollingPage=!1},250)},"scrollHandler"),!0),t.registerBinding(t.container,"gesturestart",o(function(W){t.gestureStartZoom=t.cy.zoom(),t.hasTouchStarted||W.preventDefault()},"gestureStartHandler"),!0),t.registerBinding(t.container,"gesturechange",function(be){t.hasTouchStarted||O(be)},!0),t.registerBinding(t.container,"mouseout",o(function(W){var de=t.projectIntoViewport(W.clientX,W.clientY);t.cy.emit({originalEvent:W,type:"mouseout",position:{x:de[0],y:de[1]}})},"mouseOutHandler"),!1),t.registerBinding(t.container,"mouseover",o(function(W){var de=t.projectIntoViewport(W.clientX,W.clientY);t.cy.emit({originalEvent:W,type:"mouseover",position:{x:de[0],y:de[1]}})},"mouseOverHandler"),!1);var M,B,F,P,z,$,H,Q,j,ie,ne,le,he,K=o(function(W,de,re,oe){return Math.sqrt((re-W)*(re-W)+(oe-de)*(oe-de))},"distance"),X=o(function(W,de,re,oe){return(re-W)*(re-W)+(oe-de)*(oe-de)},"distanceSq"),te;t.registerBinding(t.container,"touchstart",te=o(function(W){if(t.hasTouchStarted=!0,!!I(W)){w(),t.touchData.capture=!0,t.data.bgActivePosistion=void 0;var de=t.cy,re=t.touchData.now,oe=t.touchData.earlier;if(W.touches[0]){var V=t.projectIntoViewport(W.touches[0].clientX,W.touches[0].clientY);re[0]=V[0],re[1]=V[1]}if(W.touches[1]){var V=t.projectIntoViewport(W.touches[1].clientX,W.touches[1].clientY);re[2]=V[0],re[3]=V[1]}if(W.touches[2]){var V=t.projectIntoViewport(W.touches[2].clientX,W.touches[2].clientY);re[4]=V[0],re[5]=V[1]}if(W.touches[1]){t.touchData.singleTouchMoved=!0,x(t.dragData.touchDragEles);var xe=t.findContainerClientCoords();j=xe[0],ie=xe[1],ne=xe[2],le=xe[3],M=W.touches[0].clientX-j,B=W.touches[0].clientY-ie,F=W.touches[1].clientX-j,P=W.touches[1].clientY-ie,he=0<=M&&M<=ne&&0<=F&&F<=ne&&0<=B&&B<=le&&0<=P&&P<=le;var q=de.pan(),pe=de.zoom();z=K(M,B,F,P),$=X(M,B,F,P),H=[(M+F)/2,(B+P)/2],Q=[(H[0]-q.x)/pe,(H[1]-q.y)/pe];var ve=200,Pe=ve*ve;if($=1){for(var st=t.touchData.startPosition=[null,null,null,null,null,null],Ue=0;Ue=t.touchTapThreshold2}if(de&&t.touchData.cxt){W.preventDefault();var st=W.touches[0].clientX-j,Ue=W.touches[0].clientY-ie,ct=W.touches[1].clientX-j,We=W.touches[1].clientY-ie,ot=X(st,Ue,ct,We),Yt=ot/$,bt=150,Mt=bt*bt,xt=1.5,ut=xt*xt;if(Yt>=ut||ot>=Mt){t.touchData.cxt=!1,t.data.bgActivePosistion=void 0,t.redrawHint("select",!0);var Et={originalEvent:W,type:"cxttapend",position:{x:V[0],y:V[1]}};t.touchData.start?(t.touchData.start.unactivate().emit(Et),t.touchData.start=null):oe.emit(Et)}}if(de&&t.touchData.cxt){var Et={originalEvent:W,type:"cxtdrag",position:{x:V[0],y:V[1]}};t.data.bgActivePosistion=void 0,t.redrawHint("select",!0),t.touchData.start?t.touchData.start.emit(Et):oe.emit(Et),t.touchData.start&&(t.touchData.start._private.grabbed=!1),t.touchData.cxtDragged=!0;var ft=t.findNearestElement(V[0],V[1],!0,!0);(!t.touchData.cxtOver||ft!==t.touchData.cxtOver)&&(t.touchData.cxtOver&&t.touchData.cxtOver.emit({originalEvent:W,type:"cxtdragout",position:{x:V[0],y:V[1]}}),t.touchData.cxtOver=ft,ft&&ft.emit({originalEvent:W,type:"cxtdragover",position:{x:V[0],y:V[1]}}))}else if(de&&W.touches[2]&&oe.boxSelectionEnabled())W.preventDefault(),t.data.bgActivePosistion=void 0,this.lastThreeTouch=+new Date,t.touchData.selecting||oe.emit({originalEvent:W,type:"boxstart",position:{x:V[0],y:V[1]}}),t.touchData.selecting=!0,t.touchData.didSelect=!0,re[4]=1,!re||re.length===0||re[0]===void 0?(re[0]=(V[0]+V[2]+V[4])/3,re[1]=(V[1]+V[3]+V[5])/3,re[2]=(V[0]+V[2]+V[4])/3+1,re[3]=(V[1]+V[3]+V[5])/3+1):(re[2]=(V[0]+V[2]+V[4])/3,re[3]=(V[1]+V[3]+V[5])/3),t.redrawHint("select",!0),t.redraw();else if(de&&W.touches[1]&&!t.touchData.didSelect&&oe.zoomingEnabled()&&oe.panningEnabled()&&oe.userZoomingEnabled()&&oe.userPanningEnabled()){W.preventDefault(),t.data.bgActivePosistion=void 0,t.redrawHint("select",!0);var yt=t.dragData.touchDragEles;if(yt){t.redrawHint("drag",!0);for(var nt=0;nt0&&!t.hoverData.draggingEles&&!t.swipePanning&&t.data.bgActivePosistion!=null&&(t.data.bgActivePosistion=void 0,t.redrawHint("select",!0),t.redraw())}},"touchmoveHandler"),!1);var se;t.registerBinding(e,"touchcancel",se=o(function(W){var de=t.touchData.start;t.touchData.capture=!1,de&&de.unactivate()},"touchcancelHandler"));var ue,Z,Se,ce;if(t.registerBinding(e,"touchend",ue=o(function(W){var de=t.touchData.start,re=t.touchData.capture;if(re)W.touches.length===0&&(t.touchData.capture=!1),W.preventDefault();else return;var oe=t.selection;t.swipePanning=!1,t.hoverData.draggingEles=!1;var V=t.cy,xe=V.zoom(),q=t.touchData.now,pe=t.touchData.earlier;if(W.touches[0]){var ve=t.projectIntoViewport(W.touches[0].clientX,W.touches[0].clientY);q[0]=ve[0],q[1]=ve[1]}if(W.touches[1]){var ve=t.projectIntoViewport(W.touches[1].clientX,W.touches[1].clientY);q[2]=ve[0],q[3]=ve[1]}if(W.touches[2]){var ve=t.projectIntoViewport(W.touches[2].clientX,W.touches[2].clientY);q[4]=ve[0],q[5]=ve[1]}de&&de.unactivate();var Pe;if(t.touchData.cxt){if(Pe={originalEvent:W,type:"cxttapend",position:{x:q[0],y:q[1]}},de?de.emit(Pe):V.emit(Pe),!t.touchData.cxtDragged){var _e={originalEvent:W,type:"cxttap",position:{x:q[0],y:q[1]}};de?de.emit(_e):V.emit(_e)}t.touchData.start&&(t.touchData.start._private.grabbed=!1),t.touchData.cxt=!1,t.touchData.start=null,t.redraw();return}if(!W.touches[2]&&V.boxSelectionEnabled()&&t.touchData.selecting){t.touchData.selecting=!1;var we=V.collection(t.getAllInBox(oe[0],oe[1],oe[2],oe[3]));oe[0]=void 0,oe[1]=void 0,oe[2]=void 0,oe[3]=void 0,oe[4]=0,t.redrawHint("select",!0),V.emit({type:"boxend",originalEvent:W,position:{x:q[0],y:q[1]}});var Ve=o(function(Mt){return Mt.selectable()&&!Mt.selected()},"eleWouldBeSelected");we.emit("box").stdFilter(Ve).select().emit("boxselect"),we.nonempty()&&t.redrawHint("eles",!0),t.redraw()}if(de?.unactivate(),W.touches[2])t.data.bgActivePosistion=void 0,t.redrawHint("select",!0);else if(!W.touches[1]){if(!W.touches[0]){if(!W.touches[0]){t.data.bgActivePosistion=void 0,t.redrawHint("select",!0);var De=t.dragData.touchDragEles;if(de!=null){var qe=de._private.grabbed;x(De),t.redrawHint("drag",!0),t.redrawHint("eles",!0),qe&&(de.emit("freeon"),De.emit("free"),t.dragData.didDrag&&(de.emit("dragfreeon"),De.emit("dragfree"))),i(de,["touchend","tapend","vmouseup","tapdragout"],W,{x:q[0],y:q[1]}),de.unactivate(),t.touchData.start=null}else{var at=t.findNearestElement(q[0],q[1],!0,!0);i(at,["touchend","tapend","vmouseup","tapdragout"],W,{x:q[0],y:q[1]})}var Rt=t.touchData.startPosition[0]-q[0],st=Rt*Rt,Ue=t.touchData.startPosition[1]-q[1],ct=Ue*Ue,We=st+ct,ot=We*xe*xe;t.touchData.singleTouchMoved||(de||V.$(":selected").unselect(["tapunselect"]),i(de,["tap","vclick"],W,{x:q[0],y:q[1]}),Z=!1,W.timeStamp-ce<=V.multiClickDebounceTime()?(Se&&clearTimeout(Se),Z=!0,ce=null,i(de,["dbltap","vdblclick"],W,{x:q[0],y:q[1]})):(Se=setTimeout(function(){Z||i(de,["onetap","voneclick"],W,{x:q[0],y:q[1]})},V.multiClickDebounceTime()),ce=W.timeStamp)),de!=null&&!t.dragData.didDrag&&de._private.selectable&&ot"u"){var ae=[],Oe=o(function(W){return{clientX:W.clientX,clientY:W.clientY,force:1,identifier:W.pointerId,pageX:W.pageX,pageY:W.pageY,radiusX:W.width/2,radiusY:W.height/2,screenX:W.screenX,screenY:W.screenY,target:W.target}},"makeTouch"),ge=o(function(W){return{event:W,touch:Oe(W)}},"makePointer"),ze=o(function(W){ae.push(ge(W))},"addPointer"),He=o(function(W){for(var de=0;de0)return H[0]}return null},"getCurveT"),g=Object.keys(p),y=0;y0?m:vme(a,s,e,r,n,i,l,u)},"intersectLine"),checkPoint:o(function(e,r,n,i,a,s,l,u){u=u==="auto"?Vp(i,a):u;var h=2*u;if(Zu(e,r,this.points,s,l,i,a-h,[0,-1],n)||Zu(e,r,this.points,s,l,i-h,a,[0,-1],n))return!0;var f=i/2+2*n,d=a/2+2*n,p=[s-f,l-d,s-f,l,s+f,l,s+f,l-d];return!!(Us(e,r,p)||$p(e,r,h,h,s+i/2-u,l+a/2-u,n)||$p(e,r,h,h,s-i/2+u,l+a/2-u,n))},"checkPoint")}};eh.registerNodeShapes=function(){var t=this.nodeShapes={},e=this;this.generateEllipse(),this.generatePolygon("triangle",gs(3,0)),this.generateRoundPolygon("round-triangle",gs(3,0)),this.generatePolygon("rectangle",gs(4,0)),t.square=t.rectangle,this.generateRoundRectangle(),this.generateCutRectangle(),this.generateBarrel(),this.generateBottomRoundrectangle();{var r=[0,1,1,0,0,-1,-1,0];this.generatePolygon("diamond",r),this.generateRoundPolygon("round-diamond",r)}this.generatePolygon("pentagon",gs(5,0)),this.generateRoundPolygon("round-pentagon",gs(5,0)),this.generatePolygon("hexagon",gs(6,0)),this.generateRoundPolygon("round-hexagon",gs(6,0)),this.generatePolygon("heptagon",gs(7,0)),this.generateRoundPolygon("round-heptagon",gs(7,0)),this.generatePolygon("octagon",gs(8,0)),this.generateRoundPolygon("round-octagon",gs(8,0));var n=new Array(20);{var i=PP(5,0),a=PP(5,Math.PI/5),s=.5*(3-Math.sqrt(5));s*=1.57;for(var l=0;l=e.deqFastCost*C)break}else if(h){if(b>=e.deqCost*m||b>=e.deqAvgCost*p)break}else if(w>=e.deqNoDrawCost*DP)break;var T=e.deq(n,v,y);if(T.length>0)for(var E=0;E0&&(e.onDeqd(n,g),!h&&e.shouldRedraw(n,g,v,y)&&a())},"dequeue"),l=e.priority||rB;i.beforeRender(s,l(n))}},"setupDequeueingImpl")},"setupDequeueing")},RQe=function(){function t(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:bS;Mf(this,t),this.idsByKey=new Xc,this.keyForId=new Xc,this.cachesByLvl=new Xc,this.lvls=[],this.getKey=e,this.doesEleInvalidateKey=r}return o(t,"ElementTextureCacheLookup"),If(t,[{key:"getIdsFor",value:o(function(r){r==null&&ai("Can not get id list for null key");var n=this.idsByKey,i=this.idsByKey.get(r);return i||(i=new J1,n.set(r,i)),i},"getIdsFor")},{key:"addIdForKey",value:o(function(r,n){r!=null&&this.getIdsFor(r).add(n)},"addIdForKey")},{key:"deleteIdForKey",value:o(function(r,n){r!=null&&this.getIdsFor(r).delete(n)},"deleteIdForKey")},{key:"getNumberOfIdsForKey",value:o(function(r){return r==null?0:this.getIdsFor(r).size},"getNumberOfIdsForKey")},{key:"updateKeyMappingFor",value:o(function(r){var n=r.id(),i=this.keyForId.get(n),a=this.getKey(r);this.deleteIdForKey(i,n),this.addIdForKey(a,n),this.keyForId.set(n,a)},"updateKeyMappingFor")},{key:"deleteKeyMappingFor",value:o(function(r){var n=r.id(),i=this.keyForId.get(n);this.deleteIdForKey(i,n),this.keyForId.delete(n)},"deleteKeyMappingFor")},{key:"keyHasChangedFor",value:o(function(r){var n=r.id(),i=this.keyForId.get(n),a=this.getKey(r);return i!==a},"keyHasChangedFor")},{key:"isInvalid",value:o(function(r){return this.keyHasChangedFor(r)||this.doesEleInvalidateKey(r)},"isInvalid")},{key:"getCachesAt",value:o(function(r){var n=this.cachesByLvl,i=this.lvls,a=n.get(r);return a||(a=new Xc,n.set(r,a),i.push(r)),a},"getCachesAt")},{key:"getCache",value:o(function(r,n){return this.getCachesAt(n).get(r)},"getCache")},{key:"get",value:o(function(r,n){var i=this.getKey(r),a=this.getCache(i,n);return a!=null&&this.updateKeyMappingFor(r),a},"get")},{key:"getForCachedKey",value:o(function(r,n){var i=this.keyForId.get(r.id()),a=this.getCache(i,n);return a},"getForCachedKey")},{key:"hasCache",value:o(function(r,n){return this.getCachesAt(n).has(r)},"hasCache")},{key:"has",value:o(function(r,n){var i=this.getKey(r);return this.hasCache(i,n)},"has")},{key:"setCache",value:o(function(r,n,i){i.key=r,this.getCachesAt(n).set(r,i)},"setCache")},{key:"set",value:o(function(r,n,i){var a=this.getKey(r);this.setCache(a,n,i),this.updateKeyMappingFor(r)},"set")},{key:"deleteCache",value:o(function(r,n){this.getCachesAt(n).delete(r)},"deleteCache")},{key:"delete",value:o(function(r,n){var i=this.getKey(r);this.deleteCache(i,n)},"_delete")},{key:"invalidateKey",value:o(function(r){var n=this;this.lvls.forEach(function(i){return n.deleteCache(r,i)})},"invalidateKey")},{key:"invalidate",value:o(function(r){var n=r.id(),i=this.keyForId.get(n);this.deleteKeyMappingFor(r);var a=this.doesEleInvalidateKey(r);return a&&this.invalidateKey(i),a||this.getNumberOfIdsForKey(i)===0},"invalidate")}]),t}(),I0e=25,sS=50,yS=-4,XP=3,bge=7.99,NQe=8,MQe=1024,IQe=1024,OQe=1024,PQe=.2,BQe=.8,FQe=10,$Qe=.15,zQe=.1,GQe=.9,VQe=.9,UQe=100,HQe=1,H1={dequeue:"dequeue",downscale:"downscale",highQuality:"highQuality"},WQe=la({getKey:null,doesEleInvalidateKey:bS,drawElement:null,getBoundingBox:null,getRotationPoint:null,getRotationOffset:null,isVisible:ume,allowEdgeTxrCaching:!0,allowParentTxrCaching:!0}),Fb=o(function(e,r){var n=this;n.renderer=e,n.onDequeues=[];var i=WQe(r);rr(n,i),n.lookup=new RQe(i.getKey,i.doesEleInvalidateKey),n.setupDequeueing()},"ElementTextureCache"),qi=Fb.prototype;qi.reasons=H1;qi.getTextureQueue=function(t){var e=this;return e.eleImgCaches=e.eleImgCaches||{},e.eleImgCaches[t]=e.eleImgCaches[t]||[]};qi.getRetiredTextureQueue=function(t){var e=this,r=e.eleImgCaches.retired=e.eleImgCaches.retired||{},n=r[t]=r[t]||[];return n};qi.getElementQueue=function(){var t=this,e=t.eleCacheQueue=t.eleCacheQueue||new i4(function(r,n){return n.reqs-r.reqs});return e};qi.getElementKeyToQueue=function(){var t=this,e=t.eleKeyToCacheQueue=t.eleKeyToCacheQueue||{};return e};qi.getElement=function(t,e,r,n,i){var a=this,s=this.renderer,l=s.cy.zoom(),u=this.lookup;if(!e||e.w===0||e.h===0||isNaN(e.w)||isNaN(e.h)||!t.visible()||t.removed()||!a.allowEdgeTxrCaching&&t.isEdge()||!a.allowParentTxrCaching&&t.isParent())return null;if(n==null&&(n=Math.ceil(iB(l*r))),n=bge||n>XP)return null;var h=Math.pow(2,n),f=e.h*h,d=e.w*h,p=s.eleTextBiggerThanMin(t,h);if(!this.isVisible(t,p))return null;var m=u.get(t,n);if(m&&m.invalidated&&(m.invalidated=!1,m.texture.invalidatedWidth-=m.width),m)return m;var g;if(f<=I0e?g=I0e:f<=sS?g=sS:g=Math.ceil(f/sS)*sS,f>OQe||d>IQe)return null;var y=a.getTextureQueue(g),v=y[y.length-2],x=o(function(){return a.recycleTexture(g,d)||a.addTexture(g,d)},"addNewTxr");v||(v=y[y.length-1]),v||(v=x()),v.width-v.usedWidthn;D--)_=a.getElement(t,e,r,D,H1.downscale);I()}else return a.queueElement(t,E.level-1),E;else{var k;if(!w&&!C&&!T)for(var L=n-1;L>=yS;L--){var R=u.get(t,L);if(R){k=R;break}}if(b(k))return a.queueElement(t,n),k;v.context.translate(v.usedWidth,0),v.context.scale(h,h),this.drawElement(v.context,t,e,p,!1),v.context.scale(1/h,1/h),v.context.translate(-v.usedWidth,0)}return m={x:v.usedWidth,texture:v,level:n,scale:h,width:d,height:f,scaledLabelShown:p},v.usedWidth+=Math.ceil(d+NQe),v.eleCaches.push(m),u.set(t,n,m),a.checkTextureFullness(v),m};qi.invalidateElements=function(t){for(var e=0;e=PQe*t.width&&this.retireTexture(t)};qi.checkTextureFullness=function(t){var e=this,r=e.getTextureQueue(t.height);t.usedWidth/t.width>BQe&&t.fullnessChecks>=FQe?Df(r,t):t.fullnessChecks++};qi.retireTexture=function(t){var e=this,r=t.height,n=e.getTextureQueue(r),i=this.lookup;Df(n,t),t.retired=!0;for(var a=t.eleCaches,s=0;s=e)return s.retired=!1,s.usedWidth=0,s.invalidatedWidth=0,s.fullnessChecks=0,nB(s.eleCaches),s.context.setTransform(1,0,0,1,0,0),s.context.clearRect(0,0,s.width,s.height),Df(i,s),n.push(s),s}};qi.queueElement=function(t,e){var r=this,n=r.getElementQueue(),i=r.getElementKeyToQueue(),a=this.getKey(t),s=i[a];if(s)s.level=Math.max(s.level,e),s.eles.merge(t),s.reqs++,n.updateItem(s);else{var l={eles:t.spawn().merge(t),level:e,reqs:1,key:a};n.push(l),i[a]=l}};qi.dequeue=function(t){for(var e=this,r=e.getElementQueue(),n=e.getElementKeyToQueue(),i=[],a=e.lookup,s=0;s0;s++){var l=r.pop(),u=l.key,h=l.eles[0],f=a.hasCache(h,l.level);if(n[u]=null,f)continue;i.push(l);var d=e.getBoundingBox(h);e.getElement(h,d,t,l.level,H1.dequeue)}return i};qi.removeFromQueue=function(t){var e=this,r=e.getElementQueue(),n=e.getElementKeyToQueue(),i=this.getKey(t),a=n[i];a!=null&&(a.eles.length===1?(a.reqs=tB,r.updateItem(a),r.pop(),n[i]=null):a.eles.unmerge(t))};qi.onDequeue=function(t){this.onDequeues.push(t)};qi.offDequeue=function(t){Df(this.onDequeues,t)};qi.setupDequeueing=xge.setupDequeueing({deqRedrawThreshold:UQe,deqCost:$Qe,deqAvgCost:zQe,deqNoDrawCost:GQe,deqFastCost:VQe,deq:o(function(e,r,n){return e.dequeue(r,n)},"deq"),onDeqd:o(function(e,r){for(var n=0;n=YQe||r>_S)return null}n.validateLayersElesOrdering(r,t);var u=n.layersByLevel,h=Math.pow(2,r),f=u[r]=u[r]||[],d,p=n.levelIsComplete(r,t),m,g=o(function(){var I=o(function(O){if(n.validateLayersElesOrdering(O,t),n.levelIsComplete(O,t))return m=u[O],!0},"canUseAsTmpLvl"),D=o(function(O){if(!m)for(var M=r+O;zb<=M&&M<=_S&&!I(M);M+=O);},"checkLvls");D(1),D(-1);for(var k=f.length-1;k>=0;k--){var L=f[k];L.invalid&&Df(f,L)}},"checkTempLevels");if(!p)g();else return f;var y=o(function(){if(!d){d=Hs();for(var I=0;IP0e||L>P0e)return null;var R=k*L;if(R>tZe)return null;var O=n.makeLayer(d,r);if(D!=null){var M=f.indexOf(D)+1;f.splice(M,0,O)}else(I.insert===void 0||I.insert)&&f.unshift(O);return O},"makeLayer");if(n.skipping&&!l)return null;for(var x=null,b=t.length/qQe,w=!l,C=0;C=b||!yme(x.bb,T.boundingBox()))&&(x=v({insert:!0,after:x}),!x))return null;m||w?n.queueLayer(x,T):n.drawEleInLayer(x,T,r,e),x.eles.push(T),A[r]=x}return m||(w?null:f)};Ea.getEleLevelForLayerLevel=function(t,e){return t};Ea.drawEleInLayer=function(t,e,r,n){var i=this,a=this.renderer,s=t.context,l=e.boundingBox();l.w===0||l.h===0||!e.visible()||(r=i.getEleLevelForLayerLevel(r,n),a.setImgSmoothing(s,!1),a.drawCachedElement(s,e,null,null,r,rZe),a.setImgSmoothing(s,!0))};Ea.levelIsComplete=function(t,e){var r=this,n=r.layersByLevel[t];if(!n||n.length===0)return!1;for(var i=0,a=0;a0||s.invalid)return!1;i+=s.eles.length}return i===e.length};Ea.validateLayersElesOrdering=function(t,e){var r=this.layersByLevel[t];if(r)for(var n=0;n0){e=!0;break}}return e};Ea.invalidateElements=function(t){var e=this;t.length!==0&&(e.lastInvalidationTime=Qu(),!(t.length===0||!e.haveLayers())&&e.updateElementsInLayers(t,o(function(n,i,a){e.invalidateLayer(n)},"invalAssocLayers")))};Ea.invalidateLayer=function(t){if(this.lastInvalidationTime=Qu(),!t.invalid){var e=t.level,r=t.eles,n=this.layersByLevel[e];Df(n,t),t.elesQueue=[],t.invalid=!0,t.replacement&&(t.replacement.invalid=!0);for(var i=0;i3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,a=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,s=this,l=e._private.rscratch;if(!(a&&!e.visible())&&!(l.badLine||l.allpts==null||isNaN(l.allpts[0]))){var u;r&&(u=r,t.translate(-u.x1,-u.y1));var h=a?e.pstyle("opacity").value:1,f=a?e.pstyle("line-opacity").value:1,d=e.pstyle("curve-style").value,p=e.pstyle("line-style").value,m=e.pstyle("width").pfValue,g=e.pstyle("line-cap").value,y=e.pstyle("line-outline-width").value,v=e.pstyle("line-outline-color").value,x=h*f,b=h*f,w=o(function(){var O=arguments.length>0&&arguments[0]!==void 0?arguments[0]:x;d==="straight-triangle"?(s.eleStrokeStyle(t,e,O),s.drawEdgeTrianglePath(e,t,l.allpts)):(t.lineWidth=m,t.lineCap=g,s.eleStrokeStyle(t,e,O),s.drawEdgePath(e,t,l.allpts,p),t.lineCap="butt")},"drawLine"),C=o(function(){var O=arguments.length>0&&arguments[0]!==void 0?arguments[0]:x;if(t.lineWidth=m+y,t.lineCap=g,y>0)s.colorStrokeStyle(t,v[0],v[1],v[2],O);else{t.lineCap="butt";return}d==="straight-triangle"?s.drawEdgeTrianglePath(e,t,l.allpts):(s.drawEdgePath(e,t,l.allpts,p),t.lineCap="butt")},"drawLineOutline"),T=o(function(){i&&s.drawEdgeOverlay(t,e)},"drawOverlay"),E=o(function(){i&&s.drawEdgeUnderlay(t,e)},"drawUnderlay"),A=o(function(){var O=arguments.length>0&&arguments[0]!==void 0?arguments[0]:b;s.drawArrowheads(t,e,O)},"drawArrows"),S=o(function(){s.drawElementText(t,e,null,n)},"drawText");t.lineJoin="round";var _=e.pstyle("ghost").value==="yes";if(_){var I=e.pstyle("ghost-offset-x").pfValue,D=e.pstyle("ghost-offset-y").pfValue,k=e.pstyle("ghost-opacity").value,L=x*k;t.translate(I,D),w(L),A(L),t.translate(-I,-D)}else C();E(),w(),A(),T(),S(),r&&t.translate(u.x1,u.y1)}};kge=o(function(e){if(!["overlay","underlay"].includes(e))throw new Error("Invalid state");return function(r,n){if(n.visible()){var i=n.pstyle("".concat(e,"-opacity")).value;if(i!==0){var a=this,s=a.usePaths(),l=n._private.rscratch,u=n.pstyle("".concat(e,"-padding")).pfValue,h=2*u,f=n.pstyle("".concat(e,"-color")).value;r.lineWidth=h,l.edgeType==="self"&&!s?r.lineCap="butt":r.lineCap="round",a.colorStrokeStyle(r,f[0],f[1],f[2],i),a.drawEdgePath(n,r,l.allpts,"solid")}}}},"drawEdgeOverlayUnderlay");th.drawEdgeOverlay=kge("overlay");th.drawEdgeUnderlay=kge("underlay");th.drawEdgePath=function(t,e,r,n){var i=t._private.rscratch,a=e,s,l=!1,u=this.usePaths(),h=t.pstyle("line-dash-pattern").pfValue,f=t.pstyle("line-dash-offset").pfValue;if(u){var d=r.join("$"),p=i.pathCacheKey&&i.pathCacheKey===d;p?(s=e=i.pathCache,l=!0):(s=e=new Path2D,i.pathCacheKey=d,i.pathCache=s)}if(a.setLineDash)switch(n){case"dotted":a.setLineDash([1,1]);break;case"dashed":a.setLineDash(h),a.lineDashOffset=f;break;case"solid":a.setLineDash([]);break}if(!l&&!i.badLine)switch(e.beginPath&&e.beginPath(),e.moveTo(r[0],r[1]),i.edgeType){case"bezier":case"self":case"compound":case"multibezier":for(var m=2;m+35&&arguments[5]!==void 0?arguments[5]:!0,s=this;if(n==null){if(a&&!s.eleTextBiggerThanMin(e))return}else if(n===!1)return;if(e.isNode()){var l=e.pstyle("label");if(!l||!l.value)return;var u=s.getLabelJustification(e);t.textAlign=u,t.textBaseline="bottom"}else{var h=e.element()._private.rscratch.badLine,f=e.pstyle("label"),d=e.pstyle("source-label"),p=e.pstyle("target-label");if(h||(!f||!f.value)&&(!d||!d.value)&&(!p||!p.value))return;t.textAlign="center",t.textBaseline="bottom"}var m=!r,g;r&&(g=r,t.translate(-g.x1,-g.y1)),i==null?(s.drawText(t,e,null,m,a),e.isEdge()&&(s.drawText(t,e,"source",m,a),s.drawText(t,e,"target",m,a))):s.drawText(t,e,i,m,a),r&&t.translate(g.x1,g.y1)};Yp.getFontCache=function(t){var e;this.fontCaches=this.fontCaches||[];for(var r=0;r2&&arguments[2]!==void 0?arguments[2]:!0,n=e.pstyle("font-style").strValue,i=e.pstyle("font-size").pfValue+"px",a=e.pstyle("font-family").strValue,s=e.pstyle("font-weight").strValue,l=r?e.effectiveOpacity()*e.pstyle("text-opacity").value:1,u=e.pstyle("text-outline-opacity").value*l,h=e.pstyle("color").value,f=e.pstyle("text-outline-color").value;t.font=n+" "+s+" "+i+" "+a,t.lineJoin="round",this.colorFillStyle(t,h[0],h[1],h[2],l),this.colorStrokeStyle(t,f[0],f[1],f[2],u)};o(RP,"roundRect");Yp.getTextAngle=function(t,e){var r,n=t._private,i=n.rscratch,a=e?e+"-":"",s=t.pstyle(a+"text-rotation");if(s.strValue==="autorotate"){var l=Gl(i,"labelAngle",e);r=t.isEdge()?l:0}else s.strValue==="none"?r=0:r=s.pfValue;return r};Yp.drawText=function(t,e,r){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,a=e._private,s=a.rscratch,l=i?e.effectiveOpacity():1;if(!(i&&(l===0||e.pstyle("text-opacity").value===0))){r==="main"&&(r=null);var u=Gl(s,"labelX",r),h=Gl(s,"labelY",r),f,d,p=this.getLabelText(e,r);if(p!=null&&p!==""&&!isNaN(u)&&!isNaN(h)){this.setupTextStyle(t,e,i);var m=r?r+"-":"",g=Gl(s,"labelWidth",r),y=Gl(s,"labelHeight",r),v=e.pstyle(m+"text-margin-x").pfValue,x=e.pstyle(m+"text-margin-y").pfValue,b=e.isEdge(),w=e.pstyle("text-halign").value,C=e.pstyle("text-valign").value;b&&(w="center",C="center"),u+=v,h+=x;var T;switch(n?T=this.getTextAngle(e,r):T=0,T!==0&&(f=u,d=h,t.translate(f,d),t.rotate(T),u=0,h=0),C){case"top":break;case"center":h+=y/2;break;case"bottom":h+=y;break}var E=e.pstyle("text-background-opacity").value,A=e.pstyle("text-border-opacity").value,S=e.pstyle("text-border-width").pfValue,_=e.pstyle("text-background-padding").pfValue,I=e.pstyle("text-background-shape").strValue,D=I.indexOf("round")===0,k=2;if(E>0||S>0&&A>0){var L=u-_;switch(w){case"left":L-=g;break;case"center":L-=g/2;break}var R=h-y-_,O=g+2*_,M=y+2*_;if(E>0){var B=t.fillStyle,F=e.pstyle("text-background-color").value;t.fillStyle="rgba("+F[0]+","+F[1]+","+F[2]+","+E*l+")",D?RP(t,L,R,O,M,k):t.fillRect(L,R,O,M),t.fillStyle=B}if(S>0&&A>0){var P=t.strokeStyle,z=t.lineWidth,$=e.pstyle("text-border-color").value,H=e.pstyle("text-border-style").value;if(t.strokeStyle="rgba("+$[0]+","+$[1]+","+$[2]+","+A*l+")",t.lineWidth=S,t.setLineDash)switch(H){case"dotted":t.setLineDash([1,1]);break;case"dashed":t.setLineDash([4,2]);break;case"double":t.lineWidth=S/4,t.setLineDash([]);break;case"solid":t.setLineDash([]);break}if(D?RP(t,L,R,O,M,k,"stroke"):t.strokeRect(L,R,O,M),H==="double"){var Q=S/2;D?RP(t,L+Q,R+Q,O-Q*2,M-Q*2,k,"stroke"):t.strokeRect(L+Q,R+Q,O-Q*2,M-Q*2)}t.setLineDash&&t.setLineDash([]),t.lineWidth=z,t.strokeStyle=P}}var j=2*e.pstyle("text-outline-width").pfValue;if(j>0&&(t.lineWidth=j),e.pstyle("text-wrap").value==="wrap"){var ie=Gl(s,"labelWrapCachedLines",r),ne=Gl(s,"labelLineHeight",r),le=g/2,he=this.getLabelJustification(e);switch(he==="auto"||(w==="left"?he==="left"?u+=-g:he==="center"&&(u+=-le):w==="center"?he==="left"?u+=-le:he==="right"&&(u+=le):w==="right"&&(he==="center"?u+=le:he==="right"&&(u+=g))),C){case"top":h-=(ie.length-1)*ne;break;case"center":case"bottom":h-=(ie.length-1)*ne;break}for(var K=0;K0&&t.strokeText(ie[K],u,h),t.fillText(ie[K],u,h),h+=ne}else j>0&&t.strokeText(p,u,h),t.fillText(p,u,h);T!==0&&(t.rotate(-T),t.translate(-f,-d))}}};ly={};ly.drawNode=function(t,e,r){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,a=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,s=this,l,u,h=e._private,f=h.rscratch,d=e.position();if(!(!Ct(d.x)||!Ct(d.y))&&!(a&&!e.visible())){var p=a?e.effectiveOpacity():1,m=s.usePaths(),g,y=!1,v=e.padding();l=e.width()+2*v,u=e.height()+2*v;var x;r&&(x=r,t.translate(-x.x1,-x.y1));for(var b=e.pstyle("background-image"),w=b.value,C=new Array(w.length),T=new Array(w.length),E=0,A=0;A0&&arguments[0]!==void 0?arguments[0]:L;s.eleFillStyle(t,e,oe)},"setupShapeColor"),K=o(function(){var oe=arguments.length>0&&arguments[0]!==void 0?arguments[0]:$;s.colorStrokeStyle(t,R[0],R[1],R[2],oe)},"setupBorderColor"),X=o(function(){var oe=arguments.length>0&&arguments[0]!==void 0?arguments[0]:ie;s.colorStrokeStyle(t,Q[0],Q[1],Q[2],oe)},"setupOutlineColor"),te=o(function(oe,V,xe,q){var pe=s.nodePathCache=s.nodePathCache||[],ve=cme(xe==="polygon"?xe+","+q.join(","):xe,""+V,""+oe,""+le),Pe=pe[ve],_e,we=!1;return Pe!=null?(_e=Pe,we=!0,f.pathCache=_e):(_e=new Path2D,pe[ve]=f.pathCache=_e),{path:_e,cacheHit:we}},"getPath"),J=e.pstyle("shape").strValue,se=e.pstyle("shape-polygon-points").pfValue;if(m){t.translate(d.x,d.y);var ue=te(l,u,J,se);g=ue.path,y=ue.cacheHit}var Z=o(function(){if(!y){var oe=d;m&&(oe={x:0,y:0}),s.nodeShapes[s.getNodeShape(e)].draw(g||t,oe.x,oe.y,l,u,le,f)}m?t.fill(g):t.fill()},"drawShape"),Se=o(function(){for(var oe=arguments.length>0&&arguments[0]!==void 0?arguments[0]:p,V=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,xe=h.backgrounding,q=0,pe=0;pe0&&arguments[0]!==void 0?arguments[0]:!1,V=arguments.length>1&&arguments[1]!==void 0?arguments[1]:p;s.hasPie(e)&&(s.drawPie(t,e,V),oe&&(m||s.nodeShapes[s.getNodeShape(e)].draw(t,d.x,d.y,l,u,le,f)))},"drawPie"),ae=o(function(){var oe=arguments.length>0&&arguments[0]!==void 0?arguments[0]:p,V=(D>0?D:-D)*oe,xe=D>0?0:255;D!==0&&(s.colorFillStyle(t,xe,xe,xe,V),m?t.fill(g):t.fill())},"darken"),Oe=o(function(){if(k>0){if(t.lineWidth=k,t.lineCap=B,t.lineJoin=M,t.setLineDash)switch(O){case"dotted":t.setLineDash([1,1]);break;case"dashed":t.setLineDash(P),t.lineDashOffset=z;break;case"solid":case"double":t.setLineDash([]);break}if(F!=="center"){if(t.save(),t.lineWidth*=2,F==="inside")m?t.clip(g):t.clip();else{var oe=new Path2D;oe.rect(-l/2-k,-u/2-k,l+2*k,u+2*k),oe.addPath(g),t.clip(oe,"evenodd")}m?t.stroke(g):t.stroke(),t.restore()}else m?t.stroke(g):t.stroke();if(O==="double"){t.lineWidth=k/3;var V=t.globalCompositeOperation;t.globalCompositeOperation="destination-out",m?t.stroke(g):t.stroke(),t.globalCompositeOperation=V}t.setLineDash&&t.setLineDash([])}},"drawBorder"),ge=o(function(){if(H>0){if(t.lineWidth=H,t.lineCap="butt",t.setLineDash)switch(j){case"dotted":t.setLineDash([1,1]);break;case"dashed":t.setLineDash([4,2]);break;case"solid":case"double":t.setLineDash([]);break}var oe=d;m&&(oe={x:0,y:0});var V=s.getNodeShape(e),xe=k;F==="inside"&&(xe=0),F==="outside"&&(xe*=2);var q=(l+xe+(H+ne))/l,pe=(u+xe+(H+ne))/u,ve=l*q,Pe=u*pe,_e=s.nodeShapes[V].points,we;if(m){var Ve=te(ve,Pe,V,_e);we=Ve.path}if(V==="ellipse")s.drawEllipsePath(we||t,oe.x,oe.y,ve,Pe);else if(["round-diamond","round-heptagon","round-hexagon","round-octagon","round-pentagon","round-polygon","round-triangle","round-tag"].includes(V)){var De=0,qe=0,at=0;V==="round-diamond"?De=(xe+ne+H)*1.4:V==="round-heptagon"?(De=(xe+ne+H)*1.075,at=-(xe/2+ne+H)/35):V==="round-hexagon"?De=(xe+ne+H)*1.12:V==="round-pentagon"?(De=(xe+ne+H)*1.13,at=-(xe/2+ne+H)/15):V==="round-tag"?(De=(xe+ne+H)*1.12,qe=(xe/2+H+ne)*.07):V==="round-triangle"&&(De=(xe+ne+H)*(Math.PI/2),at=-(xe+ne/2+H)/Math.PI),De!==0&&(q=(l+De)/l,ve=l*q,["round-hexagon","round-tag"].includes(V)||(pe=(u+De)/u,Pe=u*pe)),le=le==="auto"?bme(ve,Pe):le;for(var Rt=ve/2,st=Pe/2,Ue=le+(xe+H+ne)/2,ct=new Array(_e.length/2),We=new Array(_e.length/2),ot=0;ot<_e.length/2;ot++)ct[ot]={x:oe.x+qe+Rt*_e[ot*2],y:oe.y+at+st*_e[ot*2+1]};var Yt,bt,Mt,xt,ut=ct.length;for(bt=ct[ut-1],Yt=0;Yt0){if(i=i||n.position(),a==null||s==null){var m=n.padding();a=n.width()+2*m,s=n.height()+2*m}l.colorFillStyle(r,f[0],f[1],f[2],h),l.nodeShapes[d].draw(r,i.x,i.y,a+u*2,s+u*2,p),r.fill()}}}},"drawNodeOverlayUnderlay");ly.drawNodeOverlay=Ege("overlay");ly.drawNodeUnderlay=Ege("underlay");ly.hasPie=function(t){return t=t[0],t._private.hasPie};ly.drawPie=function(t,e,r,n){e=e[0],n=n||e.position();var i=e.cy().style(),a=e.pstyle("pie-size"),s=n.x,l=n.y,u=e.width(),h=e.height(),f=Math.min(u,h)/2,d=0,p=this.usePaths();p&&(s=0,l=0),a.units==="%"?f=f*a.pfValue:a.pfValue!==void 0&&(f=a.pfValue/2);for(var m=1;m<=i.pieBackgroundN;m++){var g=e.pstyle("pie-"+m+"-background-size").value,y=e.pstyle("pie-"+m+"-background-color").value,v=e.pstyle("pie-"+m+"-background-opacity").value*r,x=g/100;x+d>1&&(x=1-d);var b=1.5*Math.PI+2*Math.PI*d,w=2*Math.PI*x,C=b+w;g===0||d>=1||d+x>1||(t.beginPath(),t.moveTo(s,l),t.arc(s,l,f,b,C),t.closePath(),this.colorFillStyle(t,y[0],y[1],y[2],v),t.fill(),d+=x)}};ys={},dZe=100;ys.getPixelRatio=function(){var t=this.data.contexts[0];if(this.forcedPixelRatio!=null)return this.forcedPixelRatio;var e=this.cy.window(),r=t.backingStorePixelRatio||t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1;return(e.devicePixelRatio||1)/r};ys.paintCache=function(t){for(var e=this.paintCaches=this.paintCaches||[],r=!0,n,i=0;ie.minMbLowQualFrames&&(e.motionBlurPxRatio=e.mbPxRBlurry)),e.clearingMotionBlur&&(e.motionBlurPxRatio=1),e.textureDrawLastFrame&&!d&&(f[e.NODE]=!0,f[e.SELECT_BOX]=!0);var b=r.style(),w=r.zoom(),C=s!==void 0?s:w,T=r.pan(),E={x:T.x,y:T.y},A={zoom:w,pan:{x:T.x,y:T.y}},S=e.prevViewport,_=S===void 0||A.zoom!==S.zoom||A.pan.x!==S.pan.x||A.pan.y!==S.pan.y;!_&&!(y&&!g)&&(e.motionBlurPxRatio=1),l&&(E=l),C*=u,E.x*=u,E.y*=u;var I=e.getCachedZSortedEles();function D(K,X,te,J,se){var ue=K.globalCompositeOperation;K.globalCompositeOperation="destination-out",e.colorFillStyle(K,255,255,255,e.motionBlurTransparency),K.fillRect(X,te,J,se),K.globalCompositeOperation=ue}o(D,"mbclear");function k(K,X){var te,J,se,ue;!e.clearingMotionBlur&&(K===h.bufferContexts[e.MOTIONBLUR_BUFFER_NODE]||K===h.bufferContexts[e.MOTIONBLUR_BUFFER_DRAG])?(te={x:T.x*m,y:T.y*m},J=w*m,se=e.canvasWidth*m,ue=e.canvasHeight*m):(te=E,J=C,se=e.canvasWidth,ue=e.canvasHeight),K.setTransform(1,0,0,1,0,0),X==="motionBlur"?D(K,0,0,se,ue):!n&&(X===void 0||X)&&K.clearRect(0,0,se,ue),i||(K.translate(te.x,te.y),K.scale(J,J)),l&&K.translate(l.x,l.y),s&&K.scale(s,s)}if(o(k,"setContextTransform"),d||(e.textureDrawLastFrame=!1),d){if(e.textureDrawLastFrame=!0,!e.textureCache){e.textureCache={},e.textureCache.bb=r.mutableElements().boundingBox(),e.textureCache.texture=e.data.bufferCanvases[e.TEXTURE_BUFFER];var L=e.data.bufferContexts[e.TEXTURE_BUFFER];L.setTransform(1,0,0,1,0,0),L.clearRect(0,0,e.canvasWidth*e.textureMult,e.canvasHeight*e.textureMult),e.render({forcedContext:L,drawOnlyNodeLayer:!0,forcedPxRatio:u*e.textureMult});var A=e.textureCache.viewport={zoom:r.zoom(),pan:r.pan(),width:e.canvasWidth,height:e.canvasHeight};A.mpan={x:(0-A.pan.x)/A.zoom,y:(0-A.pan.y)/A.zoom}}f[e.DRAG]=!1,f[e.NODE]=!1;var R=h.contexts[e.NODE],O=e.textureCache.texture,A=e.textureCache.viewport;R.setTransform(1,0,0,1,0,0),p?D(R,0,0,A.width,A.height):R.clearRect(0,0,A.width,A.height);var M=b.core("outside-texture-bg-color").value,B=b.core("outside-texture-bg-opacity").value;e.colorFillStyle(R,M[0],M[1],M[2],B),R.fillRect(0,0,A.width,A.height);var w=r.zoom();k(R,!1),R.clearRect(A.mpan.x,A.mpan.y,A.width/A.zoom/u,A.height/A.zoom/u),R.drawImage(O,A.mpan.x,A.mpan.y,A.width/A.zoom/u,A.height/A.zoom/u)}else e.textureOnViewport&&!n&&(e.textureCache=null);var F=r.extent(),P=e.pinching||e.hoverData.dragging||e.swipePanning||e.data.wheelZooming||e.hoverData.draggingEles||e.cy.animated(),z=e.hideEdgesOnViewport&&P,$=[];if($[e.NODE]=!f[e.NODE]&&p&&!e.clearedForMotionBlur[e.NODE]||e.clearingMotionBlur,$[e.NODE]&&(e.clearedForMotionBlur[e.NODE]=!0),$[e.DRAG]=!f[e.DRAG]&&p&&!e.clearedForMotionBlur[e.DRAG]||e.clearingMotionBlur,$[e.DRAG]&&(e.clearedForMotionBlur[e.DRAG]=!0),f[e.NODE]||i||a||$[e.NODE]){var H=p&&!$[e.NODE]&&m!==1,R=n||(H?e.data.bufferContexts[e.MOTIONBLUR_BUFFER_NODE]:h.contexts[e.NODE]),Q=p&&!H?"motionBlur":void 0;k(R,Q),z?e.drawCachedNodes(R,I.nondrag,u,F):e.drawLayeredElements(R,I.nondrag,u,F),e.debug&&e.drawDebugPoints(R,I.nondrag),!i&&!p&&(f[e.NODE]=!1)}if(!a&&(f[e.DRAG]||i||$[e.DRAG])){var H=p&&!$[e.DRAG]&&m!==1,R=n||(H?e.data.bufferContexts[e.MOTIONBLUR_BUFFER_DRAG]:h.contexts[e.DRAG]);k(R,p&&!H?"motionBlur":void 0),z?e.drawCachedNodes(R,I.drag,u,F):e.drawCachedElements(R,I.drag,u,F),e.debug&&e.drawDebugPoints(R,I.drag),!i&&!p&&(f[e.DRAG]=!1)}if(this.drawSelectionRectangle(t,k),p&&m!==1){var j=h.contexts[e.NODE],ie=e.data.bufferCanvases[e.MOTIONBLUR_BUFFER_NODE],ne=h.contexts[e.DRAG],le=e.data.bufferCanvases[e.MOTIONBLUR_BUFFER_DRAG],he=o(function(X,te,J){X.setTransform(1,0,0,1,0,0),J||!x?X.clearRect(0,0,e.canvasWidth,e.canvasHeight):D(X,0,0,e.canvasWidth,e.canvasHeight);var se=m;X.drawImage(te,0,0,e.canvasWidth*se,e.canvasHeight*se,0,0,e.canvasWidth,e.canvasHeight)},"drawMotionBlur");(f[e.NODE]||$[e.NODE])&&(he(j,ie,$[e.NODE]),f[e.NODE]=!1),(f[e.DRAG]||$[e.DRAG])&&(he(ne,le,$[e.DRAG]),f[e.DRAG]=!1)}e.prevViewport=A,e.clearingMotionBlur&&(e.clearingMotionBlur=!1,e.motionBlurCleared=!0,e.motionBlur=!0),p&&(e.motionBlurTimeout=setTimeout(function(){e.motionBlurTimeout=null,e.clearedForMotionBlur[e.NODE]=!1,e.clearedForMotionBlur[e.DRAG]=!1,e.motionBlur=!1,e.clearingMotionBlur=!d,e.mbFrames=0,f[e.NODE]=!0,f[e.DRAG]=!0,e.redraw()},dZe)),n||r.emit("render")};ys.drawSelectionRectangle=function(t,e){var r=this,n=r.cy,i=r.data,a=n.style(),s=t.drawOnlyNodeLayer,l=t.drawAllLayers,u=i.canvasNeedsRedraw,h=t.forcedContext;if(r.showFps||!s&&u[r.SELECT_BOX]&&!l){var f=h||i.contexts[r.SELECT_BOX];if(e(f),r.selection[4]==1&&(r.hoverData.selecting||r.touchData.selecting)){var d=r.cy.zoom(),p=a.core("selection-box-border-width").value/d;f.lineWidth=p,f.fillStyle="rgba("+a.core("selection-box-color").value[0]+","+a.core("selection-box-color").value[1]+","+a.core("selection-box-color").value[2]+","+a.core("selection-box-opacity").value+")",f.fillRect(r.selection[0],r.selection[1],r.selection[2]-r.selection[0],r.selection[3]-r.selection[1]),p>0&&(f.strokeStyle="rgba("+a.core("selection-box-border-color").value[0]+","+a.core("selection-box-border-color").value[1]+","+a.core("selection-box-border-color").value[2]+","+a.core("selection-box-opacity").value+")",f.strokeRect(r.selection[0],r.selection[1],r.selection[2]-r.selection[0],r.selection[3]-r.selection[1]))}if(i.bgActivePosistion&&!r.hoverData.selecting){var d=r.cy.zoom(),m=i.bgActivePosistion;f.fillStyle="rgba("+a.core("active-bg-color").value[0]+","+a.core("active-bg-color").value[1]+","+a.core("active-bg-color").value[2]+","+a.core("active-bg-opacity").value+")",f.beginPath(),f.arc(m.x,m.y,a.core("active-bg-size").pfValue/d,0,2*Math.PI),f.fill()}var g=r.lastRedrawTime;if(r.showFps&&g){g=Math.round(g);var y=Math.round(1e3/g),v="1 frame = "+g+" ms = "+y+" fps";if(f.setTransform(1,0,0,1,0,0),f.fillStyle="rgba(255, 0, 0, 0.75)",f.strokeStyle="rgba(255, 0, 0, 0.75)",f.font="30px Arial",!Nb){var x=f.measureText(v);Nb=x.actualBoundingBoxAscent}f.fillText(v,0,Nb);var b=60;f.strokeRect(0,Nb+10,250,20),f.fillRect(0,Nb+10,250*Math.min(y/b,1),20)}l||(u[r.SELECT_BOX]=!1)}};o(z0e,"compileShader");o(pZe,"createProgram");o(mZe,"createTextureCanvas");o(wB,"getEffectivePanZoom");o(NP,"modelToRenderedPosition");o(oS,"toWebGLColor");o(lS,"indexToVec4");o(gZe,"vec4ToIndex");o(yZe,"createTexture");o(Sge,"getTypeInfo");o(Cge,"createTypedArray");o(vZe,"createTypedArrayView");o(xZe,"createBufferStaticDraw");o(po,"createBufferDynamicDraw");o(bZe,"createPickingFrameBuffer");G0e=typeof Float32Array<"u"?Float32Array:Array;Math.hypot||(Math.hypot=function(){for(var t=0,e=arguments.length;e--;)t+=arguments[e]*arguments[e];return Math.sqrt(t)});o(Gb,"create");o(Age,"identity");o(wZe,"multiply");o(DS,"translate");o(_ge,"rotate");o(TB,"scale");o(TZe,"projection");Vb={SCREEN:{name:"screen",screen:!0},PICKING:{name:"picking",picking:!0}},Mb=la({getKey:null,drawElement:null,getBoundingBox:null,getRotation:null,getRotationPoint:null,getRotationOffset:null,isVisible:null,getPadding:null}),kZe=function(){function t(e,r){Mf(this,t),this.debugID=Math.floor(Math.random()*1e4),this.r=e,this.atlasSize=r.webglTexSize,this.rows=r.webglTexRows,this.enableWrapping=r.enableWrapping,this.texHeight=Math.floor(this.atlasSize/this.rows),this.maxTexWidth=this.atlasSize,this.texture=null,this.canvas=null,this.needsBuffer=!0,this.freePointer={x:0,row:0},this.keyToLocation=new Map,this.canvas=r.createTextureCanvas(e,this.atlasSize,this.atlasSize),this.scratch=r.createTextureCanvas(e,this.atlasSize,this.texHeight,"scratch")}return o(t,"Atlas"),If(t,[{key:"getKeys",value:o(function(){return new Set(this.keyToLocation.keys())},"getKeys")},{key:"getScale",value:o(function(r){var n=r.w,i=r.h,a=this.texHeight,s=this.maxTexWidth,l=a/i,u=n*l,h=i*l;return u>s&&(l=s/n,u=n*l,h=i*l),{scale:l,texW:u,texH:h}},"getScale")},{key:"draw",value:o(function(r,n,i){var a=this,s=this.atlasSize,l=this.rows,u=this.texHeight,h=this.getScale(n),f=h.scale,d=h.texW,p=h.texH,m=[null,null],g=o(function(w,C){if(i&&C){var T=C.context,E=w.x,A=w.row,S=E,_=u*A;T.save(),T.translate(S,_),T.scale(f,f),i(T,n),T.restore()}},"drawAt"),y=o(function(){g(a.freePointer,a.canvas),m[0]={x:a.freePointer.x,y:a.freePointer.row*u,w:d,h:p},m[1]={x:a.freePointer.x+d,y:a.freePointer.row*u,w:0,h:p},a.freePointer.x+=d,a.freePointer.x==s&&(a.freePointer.x=0,a.freePointer.row++)},"drawNormal"),v=o(function(){var w=a.scratch,C=a.canvas;w.clear(),g({x:0,row:0},w);var T=s-a.freePointer.x,E=d-T,A=u;{var S=a.freePointer.x,_=a.freePointer.row*u,I=T;C.context.drawImage(w,0,0,I,A,S,_,I,A),m[0]={x:S,y:_,w:I,h:p}}{var D=T,k=(a.freePointer.row+1)*u,L=E;C&&C.context.drawImage(w,D,0,L,A,0,k,L,A),m[1]={x:0,y:k,w:L,h:p}}a.freePointer.x=E,a.freePointer.row++},"drawWrapped"),x=o(function(){a.freePointer.x=0,a.freePointer.row++},"moveToStartOfNextRow");if(this.freePointer.x+d<=s)y();else{if(this.freePointer.row>=l-1)return!1;this.freePointer.x===s?(x(),y()):this.enableWrapping?v():(x(),y())}return this.keyToLocation.set(r,m),this.needsBuffer=!0,m},"draw")},{key:"getOffsets",value:o(function(r){return this.keyToLocation.get(r)},"getOffsets")},{key:"isEmpty",value:o(function(){return this.freePointer.x===0&&this.freePointer.row===0},"isEmpty")},{key:"canFit",value:o(function(r){var n=this.atlasSize,i=this.rows,a=this.getScale(r),s=a.texW;return this.freePointer.x+s>n?this.freePointer.row1&&arguments[1]!==void 0?arguments[1]:{},i=n.forceRedraw,a=i===void 0?!1:i,s=n.filterEle,l=s===void 0?function(){return!0}:s,u=n.filterType,h=u===void 0?function(){return!0}:u,f=!1,d=mo(r),p;try{for(d.s();!(p=d.n()).done;){var m=p.value;if(l(m)){var g=m.id(),y=mo(this.getRenderTypes()),v;try{for(y.s();!(v=y.n()).done;){var x=v.value;if(h(x.type)){var b=x.getKey(m);a?(x.atlasCollection.deleteKey(g,b),x.atlasCollection.styleKeyNeedsRedraw.add(b),f=!0):f|=x.atlasCollection.checkKeyIsInvalid(g,b)}}}catch(w){y.e(w)}finally{y.f()}}}}catch(w){d.e(w)}finally{d.f()}return f},"invalidate")},{key:"gc",value:o(function(){var r=mo(this.getRenderTypes()),n;try{for(r.s();!(n=r.n()).done;){var i=n.value;i.atlasCollection.gc()}}catch(a){r.e(a)}finally{r.f()}},"gc")},{key:"isRenderable",value:o(function(r,n){var i=this.getRenderTypeOpts(n);return i&&i.isVisible(r)},"isRenderable")},{key:"startBatch",value:o(function(){this.batchAtlases=[]},"startBatch")},{key:"getAtlasCount",value:o(function(){return this.batchAtlases.length},"getAtlasCount")},{key:"getAtlases",value:o(function(){return this.batchAtlases},"getAtlases")},{key:"getOrCreateAtlas",value:o(function(r,n,i){var a=this.renderTypes.get(i),s=a.getKey(r),l=r.id();return a.atlasCollection.draw(l,s,n,function(u){a.drawElement(u,r,n,!0,!0)})},"getOrCreateAtlas")},{key:"getAtlasIndexForBatch",value:o(function(r){var n=this.batchAtlases.indexOf(r);if(n<0){if(this.batchAtlases.length===this.maxAtlasesPerBatch)return;this.batchAtlases.push(r),n=this.batchAtlases.length-1}return n},"getAtlasIndexForBatch")},{key:"getIndexArray",value:o(function(){return Array.from({length:this.maxAtlases},function(r,n){return n})},"getIndexArray")},{key:"getAtlasInfo",value:o(function(r,n){var i=this.renderTypes.get(n),a=i.getBoundingBox(r),s=this.getOrCreateAtlas(r,a,n),l=this.getAtlasIndexForBatch(s);if(l!==void 0){var u=i.getKey(r),h=s.getOffsets(u),f=_i(h,2),d=f[0],p=f[1];return{atlasID:l,tex:d,tex1:d,tex2:p,bb:a,type:n,styleKey:u}}},"getAtlasInfo")},{key:"canAddToCurrentBatch",value:o(function(r,n){if(this.batchAtlases.length===this.maxAtlasesPerBatch){var i=this.renderTypes.get(n),a=i.getKey(r),s=i.atlasCollection.getAtlas(a);return s&&this.batchAtlases.includes(s)}return!0},"canAddToCurrentBatch")},{key:"setTransformMatrix",value:o(function(r,n,i){var a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,s=n.bb,l=n.type,u=n.tex1,h=n.tex2,f=this.getRenderTypeOpts(l),d=f.getPadding?f.getPadding(i):0,p=u.w/(u.w+h.w);a||(p=1-p);var m=this.getAdjustedBB(s,d,a,p),g,y;Age(r);var v=f.getRotation?f.getRotation(i):0;if(v!==0){var x=f.getRotationPoint(i),b=x.x,w=x.y;DS(r,r,[b,w]),_ge(r,r,v);var C=f.getRotationOffset(i);g=C.x+m.xOffset,y=C.y}else g=m.x1,y=m.y1;DS(r,r,[g,y]),TB(r,r,[m.w,m.h])},"setTransformMatrix")},{key:"getTransformMatrix",value:o(function(r,n){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,a=Gb();return this.setTransformMatrix(a,r,n,i),a},"getTransformMatrix")},{key:"getAdjustedBB",value:o(function(r,n,i,a){var s=r.x1,l=r.y1,u=r.w,h=r.h;n&&(s-=n,l-=n,u+=2*n,h+=2*n);var f=0,d=u*a;return i&&a<1?u=d:!i&&a<1&&(f=u-d,s+=f,u=d),{x1:s,y1:l,w:u,h,xOffset:f}},"getAdjustedBB")},{key:"getDebugInfo",value:o(function(){var r=[],n=mo(this.renderTypes),i;try{for(n.s();!(i=n.n()).done;){var a=_i(i.value,2),s=a[0],l=a[1],u=l.atlasCollection.getCounts(),h=u.keyCount,f=u.atlasCount;r.push({type:s,keyCount:h,atlasCount:f})}}catch(d){n.e(d)}finally{n.f()}return r},"getDebugInfo")}]),t}(),MP=0,V0e=1,U0e=2,IP=3,AZe=function(){function t(e,r,n){Mf(this,t),this.r=e,this.gl=r,this.maxInstances=n.webglBatchSize,this.maxAtlases=n.webglTexPerBatch,this.atlasSize=n.webglTexSize,this.bgColor=n.bgColor,n.enableWrapping=!0,n.createTextureCanvas=mZe,this.atlasManager=new CZe(e,n),this.program=this.createShaderProgram(Vb.SCREEN),this.pickingProgram=this.createShaderProgram(Vb.PICKING),this.vao=this.createVAO(),this.debugInfo=[]}return o(t,"ElementDrawingWebGL"),If(t,[{key:"addTextureRenderType",value:o(function(r,n){this.atlasManager.addRenderType(r,n)},"addTextureRenderType")},{key:"invalidate",value:o(function(r){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=n.type,a=this.atlasManager;return i?a.invalidate(r,{filterType:o(function(l){return l===i},"filterType"),forceRedraw:!0}):a.invalidate(r)},"invalidate")},{key:"gc",value:o(function(){this.atlasManager.gc()},"gc")},{key:"createShaderProgram",value:o(function(r){var n=this.gl,i=`#version 300 es + precision highp float; + + uniform mat3 uPanZoomMatrix; + uniform int uAtlasSize; + + // instanced + in vec2 aPosition; + + // what are we rendering? + in int aVertType; + + // for picking + in vec4 aIndex; + + // For textures + in int aAtlasId; // which shader unit/atlas to use + in vec4 aTex1; // x/y/w/h of texture in atlas + in vec4 aTex2; + + // for any transforms that are needed + in vec4 aScaleRotate1; // vectors use fewer attributes than matrices + in vec2 aTranslate1; + in vec4 aScaleRotate2; + in vec2 aTranslate2; + + // for edges + in vec4 aPointAPointB; + in vec4 aPointCPointD; + in float aLineWidth; + in vec4 aEdgeColor; + + out vec2 vTexCoord; + out vec4 vEdgeColor; + flat out int vAtlasId; + flat out vec4 vIndex; + flat out int vVertType; + + void main(void) { + int vid = gl_VertexID; + vec2 position = aPosition; + + if(aVertType == `.concat(MP,`) { + float texX; + float texY; + float texW; + float texH; + mat3 texMatrix; + + int vid = gl_VertexID; + if(vid <= 5) { + texX = aTex1.x; + texY = aTex1.y; + texW = aTex1.z; + texH = aTex1.w; + texMatrix = mat3( + vec3(aScaleRotate1.xy, 0.0), + vec3(aScaleRotate2.zw, 0.0), + vec3(aTranslate1, 1.0) + ); + } else { + texX = aTex2.x; + texY = aTex2.y; + texW = aTex2.z; + texH = aTex2.w; + texMatrix = mat3( + vec3(aScaleRotate2.xy, 0.0), + vec3(aScaleRotate2.zw, 0.0), + vec3(aTranslate2, 1.0) + ); + } + + if(vid == 1 || vid == 2 || vid == 4 || vid == 7 || vid == 8 || vid == 10) { + texX += texW; + } + if(vid == 2 || vid == 4 || vid == 5 || vid == 8 || vid == 10 || vid == 11) { + texY += texH; + } + + float d = float(uAtlasSize); + vTexCoord = vec2(texX / d, texY / d); // tex coords must be between 0 and 1 + + gl_Position = vec4(uPanZoomMatrix * texMatrix * vec3(position, 1.0), 1.0); + } + else if(aVertType == `).concat(V0e,` && vid < 6) { + vec2 source = aPointAPointB.xy; + vec2 target = aPointAPointB.zw; + + // adjust the geometry so that the line is centered on the edge + position.y = position.y - 0.5; + + vec2 xBasis = target - source; + vec2 yBasis = normalize(vec2(-xBasis.y, xBasis.x)); + vec2 point = source + xBasis * position.x + yBasis * aLineWidth * position.y; + + gl_Position = vec4(uPanZoomMatrix * vec3(point, 1.0), 1.0); + vEdgeColor = aEdgeColor; + } + else if(aVertType == `).concat(U0e,` && vid < 6) { + vec2 pointA = aPointAPointB.xy; + vec2 pointB = aPointAPointB.zw; + vec2 pointC = aPointCPointD.xy; + vec2 pointD = aPointCPointD.zw; + + // adjust the geometry so that the line is centered on the edge + position.y = position.y - 0.5; + + vec2 p0 = pointA; + vec2 p1 = pointB; + vec2 p2 = pointC; + vec2 pos = position; + if(position.x == 1.0) { + p0 = pointD; + p1 = pointC; + p2 = pointB; + pos = vec2(0.0, -position.y); + } + + vec2 p01 = p1 - p0; + vec2 p12 = p2 - p1; + vec2 p21 = p1 - p2; + + // Find the normal vector. + vec2 tangent = normalize(normalize(p12) + normalize(p01)); + vec2 normal = vec2(-tangent.y, tangent.x); + + // Find the vector perpendicular to p0 -> p1. + vec2 p01Norm = normalize(vec2(-p01.y, p01.x)); + + // Determine the bend direction. + float sigma = sign(dot(p01 + p21, normal)); + float width = aLineWidth; + + if(sign(pos.y) == -sigma) { + // This is an intersecting vertex. Adjust the position so that there's no overlap. + vec2 point = 0.5 * width * normal * -sigma / dot(normal, p01Norm); + gl_Position = vec4(uPanZoomMatrix * vec3(p1 + point, 1.0), 1.0); + } else { + // This is a non-intersecting vertex. Treat it like a mitre join. + vec2 point = 0.5 * width * normal * sigma * dot(normal, p01Norm); + gl_Position = vec4(uPanZoomMatrix * vec3(p1 + point, 1.0), 1.0); + } + + vEdgeColor = aEdgeColor; + } + else if(aVertType == `).concat(IP,` && vid < 3) { + // massage the first triangle into an edge arrow + if(vid == 0) + position = vec2(-0.15, -0.3); + if(vid == 1) + position = vec2( 0.0, 0.0); + if(vid == 2) + position = vec2( 0.15, -0.3); + + mat3 transform = mat3( + vec3(aScaleRotate1.xy, 0.0), + vec3(aScaleRotate1.zw, 0.0), + vec3(aTranslate1, 1.0) + ); + gl_Position = vec4(uPanZoomMatrix * transform * vec3(position, 1.0), 1.0); + vEdgeColor = aEdgeColor; + } else { + gl_Position = vec4(2.0, 0.0, 0.0, 1.0); // discard vertex by putting it outside webgl clip space + } + + vAtlasId = aAtlasId; + vIndex = aIndex; + vVertType = aVertType; + } + `),a=this.atlasManager.getIndexArray(),s=`#version 300 es + precision highp float; + + // define texture unit for each node in the batch + `.concat(a.map(function(h){return"uniform sampler2D uTexture".concat(h,";")}).join(` + `),` + + uniform vec4 uBGColor; + + in vec2 vTexCoord; + in vec4 vEdgeColor; + flat in int vAtlasId; + flat in vec4 vIndex; + flat in int vVertType; + + out vec4 outColor; + + void main(void) { + if(vVertType == `).concat(MP,`) { + `).concat(a.map(function(h){return"if(vAtlasId == ".concat(h,") outColor = texture(uTexture").concat(h,", vTexCoord);")}).join(` + else `),` + } else if(vVertType == `).concat(IP,`) { + // blend arrow color with background (using premultiplied alpha) + outColor.rgb = vEdgeColor.rgb + (uBGColor.rgb * (1.0 - vEdgeColor.a)); + outColor.a = 1.0; // make opaque, masks out line under arrow + } else { + outColor = vEdgeColor; + } + + `).concat(r.picking?`if(outColor.a == 0.0) discard; + else outColor = vIndex;`:"",` + } + `),l=pZe(n,i,s);l.aPosition=n.getAttribLocation(l,"aPosition"),l.aIndex=n.getAttribLocation(l,"aIndex"),l.aVertType=n.getAttribLocation(l,"aVertType"),l.aAtlasId=n.getAttribLocation(l,"aAtlasId"),l.aTex1=n.getAttribLocation(l,"aTex1"),l.aTex2=n.getAttribLocation(l,"aTex2"),l.aScaleRotate1=n.getAttribLocation(l,"aScaleRotate1"),l.aTranslate1=n.getAttribLocation(l,"aTranslate1"),l.aScaleRotate2=n.getAttribLocation(l,"aScaleRotate2"),l.aTranslate2=n.getAttribLocation(l,"aTranslate2"),l.aPointAPointB=n.getAttribLocation(l,"aPointAPointB"),l.aPointCPointD=n.getAttribLocation(l,"aPointCPointD"),l.aLineWidth=n.getAttribLocation(l,"aLineWidth"),l.aEdgeColor=n.getAttribLocation(l,"aEdgeColor"),l.uPanZoomMatrix=n.getUniformLocation(l,"uPanZoomMatrix"),l.uAtlasSize=n.getUniformLocation(l,"uAtlasSize"),l.uBGColor=n.getUniformLocation(l,"uBGColor"),l.uTextures=[];for(var u=0;u2&&arguments[2]!==void 0?arguments[2]:Vb.SCREEN;this.panZoomMatrix=r,this.debugInfo=n,this.renderTarget=i,this.startBatch()},"startFrame")},{key:"startBatch",value:o(function(){this.instanceCount=0,this.atlasManager.startBatch()},"startBatch")},{key:"endFrame",value:o(function(){this.endBatch()},"endFrame")},{key:"getTempMatrix",value:o(function(){return this.tempMatrix=this.tempMatrix||Gb()},"getTempMatrix")},{key:"drawTexture",value:o(function(r,n,i){var a=this.atlasManager;if(a.isRenderable(r,i)){a.canAddToCurrentBatch(r,i)||this.endBatch();var s=this.instanceCount;this.vertTypeBuffer.getView(s)[0]=MP;var l=this.indexBuffer.getView(s);lS(n,l);var u=a.getAtlasInfo(r,i,u),h=u.atlasID,f=u.tex1,d=u.tex2,p=this.atlasIdBuffer.getView(s);p[0]=h;var m=this.tex1Buffer.getView(s);m[0]=f.x,m[1]=f.y,m[2]=f.w,m[3]=f.h;var g=this.tex2Buffer.getView(s);g[0]=d.x,g[1]=d.y,g[2]=d.w,g[3]=d.h;for(var y=this.getTempMatrix(),v=0,x=[1,2];v=this.maxInstances&&this.endBatch()}},"drawTexture")},{key:"drawEdgeArrow",value:o(function(r,n,i){var a=r._private.rscratch,s,l,u;if(i==="source"?(s=a.arrowStartX,l=a.arrowStartY,u=a.srcArrowAngle):(s=a.arrowEndX,l=a.arrowEndY,u=a.tgtArrowAngle),!(isNaN(s)||s==null||isNaN(l)||l==null||isNaN(u)||u==null)){var h=r.pstyle(i+"-arrow-shape").value;if(h!=="none"){var f=r.pstyle(i+"-arrow-color").value,d=r.pstyle("opacity").value,p=r.pstyle("line-opacity").value,m=d*p,g=r.pstyle("width").pfValue,y=r.pstyle("arrow-scale").value,v=this.r.getArrowWidth(g,y),x=this.getTempMatrix();Age(x),DS(x,x,[s,l]),TB(x,x,[v,v]),_ge(x,x,u);var b=this.instanceCount;this.vertTypeBuffer.getView(b)[0]=IP;var w=this.indexBuffer.getView(b);lS(n,w);var C=this.edgeColorBuffer.getView(b);oS(f,m,C);var T=this.scaleRotate1Buffer.getView(b);T[0]=x[0],T[1]=x[1],T[2]=x[3],T[3]=x[4];var E=this.translate1Buffer.getView(b);E[0]=x[6],E[1]=x[7],this.instanceCount++,this.instanceCount>=this.maxInstances&&this.endBatch()}}},"drawEdgeArrow")},{key:"drawEdgeLine",value:o(function(r,n){var i=r.pstyle("opacity").value,a=r.pstyle("line-opacity").value,s=r.pstyle("width").pfValue,l=r.pstyle("line-color").value,u=i*a,h=this.getEdgePoints(r);if(h.length/2+this.instanceCount>this.maxInstances&&this.endBatch(),h.length==4){var f=this.instanceCount;this.vertTypeBuffer.getView(f)[0]=V0e;var d=this.indexBuffer.getView(f);lS(n,d);var p=this.edgeColorBuffer.getView(f);oS(l,u,p);var m=this.lineWidthBuffer.getView(f);m[0]=s;var g=this.pointAPointBBuffer.getView(f);g[0]=h[0],g[1]=h[1],g[2]=h[2],g[3]=h[3],this.instanceCount++,this.instanceCount>=this.maxInstances&&this.endBatch()}else for(var y=0;y=this.maxInstances&&this.endBatch()}},"drawEdgeLine")},{key:"getEdgePoints",value:o(function(r){var n=r._private.rscratch,i=n.allpts;if(i.length==4)return i;var a=this.getNumSegments(r);return this.getCurveSegmentPoints(i,a)},"getEdgePoints")},{key:"getNumSegments",value:o(function(r){var n=15;return Math.min(Math.max(n,5),this.maxInstances)},"getNumSegments")},{key:"getCurveSegmentPoints",value:o(function(r,n){if(r.length==4)return r;for(var i=Array((n+1)*2),a=0;a<=n;a++)if(a==0)i[0]=r[0],i[1]=r[1];else if(a==n)i[a*2]=r[r.length-2],i[a*2+1]=r[r.length-1];else{var s=a/n;this.setCurvePoint(r,s,i,a*2)}return i},"getCurveSegmentPoints")},{key:"setCurvePoint",value:o(function(r,n,i,a){if(r.length<=2)i[a]=r[0],i[a+1]=r[1];else{for(var s=Array(r.length-2),l=0;l0},"isVisible")},{key:"getStyle",value:o(function(r,n){var i=n.pstyle("".concat(r,"-opacity")).value,a=n.pstyle("".concat(r,"-color")).value,s=n.pstyle("".concat(r,"-shape")).value;return{opacity:i,color:a,shape:s}},"getStyle")},{key:"getPadding",value:o(function(r,n){return n.pstyle("".concat(r,"-padding")).pfValue},"getPadding")},{key:"draw",value:o(function(r,n,i,a){if(this.isVisible(r,i)){var s=this.r,l=a.w,u=a.h,h=l/2,f=u/2,d=this.getStyle(r,i),p=d.shape,m=d.color,g=d.opacity;n.save(),n.fillStyle=H0e(m,g),p==="round-rectangle"||p==="roundrectangle"?s.drawRoundRectanglePath(n,h,f,l,u,"auto"):p==="ellipse"&&s.drawEllipsePath(n,h,f,l,u),n.fill(),n.restore()}},"draw")}]),t}();o(DZe,"getBGColor");Dge={};Dge.initWebgl=function(t,e){var r=this,n=r.data.contexts[r.WEBGL],i=t.cy.container();t.bgColor=DZe(i),t.webglTexSize=Math.min(t.webglTexSize,n.getParameter(n.MAX_TEXTURE_SIZE)),t.webglTexRows=Math.min(t.webglTexRows,54),t.webglBatchSize=Math.min(t.webglBatchSize,16384),t.webglTexPerBatch=Math.min(t.webglTexPerBatch,n.getParameter(n.MAX_TEXTURE_IMAGE_UNITS)),r.webglDebug=t.webglDebug,r.webglDebugShowAtlases=t.webglDebugShowAtlases,console.log("max texture units",n.getParameter(n.MAX_TEXTURE_IMAGE_UNITS)),console.log("max texture size",n.getParameter(n.MAX_TEXTURE_SIZE)),console.log("webgl options",t),r.pickingFrameBuffer=bZe(n),r.pickingFrameBuffer.needsDraw=!0;var a=o(function(f){return r.getTextAngle(f,null)},"getLabelRotation"),s=o(function(f){var d=f.pstyle("label");return d&&d.value},"isLabelVisible");r.eleDrawing=new AZe(r,n,t);var l=new _Ze(r);r.eleDrawing.addTextureRenderType("node-body",Mb({getKey:e.getStyleKey,getBoundingBox:e.getElementBox,drawElement:e.drawElement,isVisible:o(function(f){return f.visible()},"isVisible")})),r.eleDrawing.addTextureRenderType("node-label",Mb({getKey:e.getLabelKey,getBoundingBox:e.getLabelBox,drawElement:e.drawLabel,getRotation:a,getRotationPoint:e.getLabelRotationPoint,getRotationOffset:e.getLabelRotationOffset,isVisible:s})),r.eleDrawing.addTextureRenderType("node-overlay",Mb({getBoundingBox:e.getElementBox,getKey:o(function(f){return l.getStyleKey("overlay",f)},"getKey"),drawElement:o(function(f,d,p){return l.draw("overlay",f,d,p)},"drawElement"),isVisible:o(function(f){return l.isVisible("overlay",f)},"isVisible"),getPadding:o(function(f){return l.getPadding("overlay",f)},"getPadding")})),r.eleDrawing.addTextureRenderType("node-underlay",Mb({getBoundingBox:e.getElementBox,getKey:o(function(f){return l.getStyleKey("underlay",f)},"getKey"),drawElement:o(function(f,d,p){return l.draw("underlay",f,d,p)},"drawElement"),isVisible:o(function(f){return l.isVisible("underlay",f)},"isVisible"),getPadding:o(function(f){return l.getPadding("underlay",f)},"getPadding")})),r.eleDrawing.addTextureRenderType("edge-label",Mb({getKey:e.getLabelKey,getBoundingBox:e.getLabelBox,drawElement:e.drawLabel,getRotation:a,getRotationPoint:e.getLabelRotationPoint,getRotationOffset:e.getLabelRotationOffset,isVisible:s}));var u=n4(function(){console.log("garbage collect flag set"),r.data.gc=!0},1e4);r.onUpdateEleCalcs(function(h,f){var d=!1;f&&f.length>0&&(d|=r.eleDrawing.invalidate(f)),d&&u()}),LZe(r)};o(LZe,"overrideCanvasRendererFunctions");o(RZe,"clearWebgl");o(NZe,"clearCanvas");o(MZe,"createPanZoomMatrix");o(Lge,"setContextTransform");o(IZe,"drawSelectionRectangle");o(OZe,"drawAxes");o(PZe,"drawAtlases");o(BZe,"getPickingIndexes");o(FZe,"findNearestElementsWebgl");o(Rge,"renderWebgl");Pf={};Pf.drawPolygonPath=function(t,e,r,n,i,a){var s=n/2,l=i/2;t.beginPath&&t.beginPath(),t.moveTo(e+s*a[0],r+l*a[1]);for(var u=1;u0&&s>0){m.clearRect(0,0,a,s),m.globalCompositeOperation="source-over";var g=this.getCachedZSortedEles();if(t.full)m.translate(-n.x1*h,-n.y1*h),m.scale(h,h),this.drawElements(m,g),m.scale(1/h,1/h),m.translate(n.x1*h,n.y1*h);else{var y=e.pan(),v={x:y.x*h,y:y.y*h};h*=e.zoom(),m.translate(v.x,v.y),m.scale(h,h),this.drawElements(m,g),m.scale(1/h,1/h),m.translate(-v.x,-v.y)}t.bg&&(m.globalCompositeOperation="destination-over",m.fillStyle=t.bg,m.rect(0,0,a,s),m.fill())}return p};o($Ze,"b64ToBlob");o(Y0e,"b64UriToB64");o(Mge,"output");c4.png=function(t){return Mge(t,this.bufferCanvasImage(t),"image/png")};c4.jpg=function(t){return Mge(t,this.bufferCanvasImage(t),"image/jpeg")};Ige={};Ige.nodeShapeImpl=function(t,e,r,n,i,a,s,l){switch(t){case"ellipse":return this.drawEllipsePath(e,r,n,i,a);case"polygon":return this.drawPolygonPath(e,r,n,i,a,s);case"round-polygon":return this.drawRoundPolygonPath(e,r,n,i,a,s,l);case"roundrectangle":case"round-rectangle":return this.drawRoundRectanglePath(e,r,n,i,a,l);case"cutrectangle":case"cut-rectangle":return this.drawCutRectanglePath(e,r,n,i,a,s,l);case"bottomroundrectangle":case"bottom-round-rectangle":return this.drawBottomRoundRectanglePath(e,r,n,i,a,l);case"barrel":return this.drawBarrelPath(e,r,n,i,a)}};zZe=Oge,Er=Oge.prototype;Er.CANVAS_LAYERS=3;Er.SELECT_BOX=0;Er.DRAG=1;Er.NODE=2;Er.WEBGL=3;Er.CANVAS_TYPES=["2d","2d","2d","webgl2"];Er.BUFFER_COUNT=3;Er.TEXTURE_BUFFER=0;Er.MOTIONBLUR_BUFFER_NODE=1;Er.MOTIONBLUR_BUFFER_DRAG=2;o(Oge,"CanvasRenderer");Er.redrawHint=function(t,e){var r=this;switch(t){case"eles":r.data.canvasNeedsRedraw[Er.NODE]=e;break;case"drag":r.data.canvasNeedsRedraw[Er.DRAG]=e;break;case"select":r.data.canvasNeedsRedraw[Er.SELECT_BOX]=e;break;case"gc":r.data.gc=!0;break}};GZe=typeof Path2D<"u";Er.path2dEnabled=function(t){if(t===void 0)return this.pathsEnabled;this.pathsEnabled=!!t};Er.usePaths=function(){return GZe&&this.pathsEnabled};Er.setImgSmoothing=function(t,e){t.imageSmoothingEnabled!=null?t.imageSmoothingEnabled=e:(t.webkitImageSmoothingEnabled=e,t.mozImageSmoothingEnabled=e,t.msImageSmoothingEnabled=e)};Er.getImgSmoothing=function(t){return t.imageSmoothingEnabled!=null?t.imageSmoothingEnabled:t.webkitImageSmoothingEnabled||t.mozImageSmoothingEnabled||t.msImageSmoothingEnabled};Er.makeOffscreenCanvas=function(t,e){var r;if((typeof OffscreenCanvas>"u"?"undefined":Wi(OffscreenCanvas))!=="undefined")r=new OffscreenCanvas(t,e);else{var n=this.cy.window(),i=n.document;r=i.createElement("canvas"),r.width=t,r.height=e}return r};[Tge,Qc,th,bB,Yp,ly,ys,Dge,Pf,c4,Ige].forEach(function(t){rr(Er,t)});VZe=[{name:"null",impl:lge},{name:"base",impl:vge},{name:"canvas",impl:zZe}],UZe=[{type:"layout",extensions:SQe},{type:"renderer",extensions:VZe}],Pge={},Bge={};o(Fge,"setExtension");o($ge,"getExtension");o(HZe,"setModule");o(WZe,"getModule");QP=o(function(){if(arguments.length===2)return $ge.apply(null,arguments);if(arguments.length===3)return Fge.apply(null,arguments);if(arguments.length===4)return WZe.apply(null,arguments);if(arguments.length===5)return HZe.apply(null,arguments);ai("Invalid extension access syntax")},"extension");Jb.prototype.extension=QP;UZe.forEach(function(t){t.extensions.forEach(function(e){Fge(t.type,e.name,e.impl)})});zge=o(function t(){if(!(this instanceof t))return new t;this.length=0},"Stylesheet"),Wp=zge.prototype;Wp.instanceString=function(){return"stylesheet"};Wp.selector=function(t){var e=this.length++;return this[e]={selector:t,properties:[]},this};Wp.css=function(t,e){var r=this.length-1;if(Zt(t))this[r].properties.push({name:t,value:e});else if(Ur(t))for(var n=t,i=Object.keys(n),a=0;a{"use strict";o(function(e,r){typeof u4=="object"&&typeof EB=="object"?EB.exports=r():typeof define=="function"&&define.amd?define([],r):typeof u4=="object"?u4.layoutBase=r():e.layoutBase=r()},"webpackUniversalModuleDefinition")(u4,function(){return function(t){var e={};function r(n){if(e[n])return e[n].exports;var i=e[n]={i:n,l:!1,exports:{}};return t[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return o(r,"__webpack_require__"),r.m=t,r.c=e,r.i=function(n){return n},r.d=function(n,i,a){r.o(n,i)||Object.defineProperty(n,i,{configurable:!1,enumerable:!0,get:a})},r.n=function(n){var i=n&&n.__esModule?o(function(){return n.default},"getDefault"):o(function(){return n},"getModuleExports");return r.d(i,"a",i),i},r.o=function(n,i){return Object.prototype.hasOwnProperty.call(n,i)},r.p="",r(r.s=26)}([function(t,e,r){"use strict";function n(){}o(n,"LayoutConstants"),n.QUALITY=1,n.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,n.DEFAULT_INCREMENTAL=!1,n.DEFAULT_ANIMATION_ON_LAYOUT=!0,n.DEFAULT_ANIMATION_DURING_LAYOUT=!1,n.DEFAULT_ANIMATION_PERIOD=50,n.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,n.DEFAULT_GRAPH_MARGIN=15,n.NODE_DIMENSIONS_INCLUDE_LABELS=!1,n.SIMPLE_NODE_SIZE=40,n.SIMPLE_NODE_HALF_SIZE=n.SIMPLE_NODE_SIZE/2,n.EMPTY_COMPOUND_NODE_SIZE=40,n.MIN_EDGE_LENGTH=1,n.WORLD_BOUNDARY=1e6,n.INITIAL_WORLD_BOUNDARY=n.WORLD_BOUNDARY/1e3,n.WORLD_CENTER_X=1200,n.WORLD_CENTER_Y=900,t.exports=n},function(t,e,r){"use strict";var n=r(2),i=r(8),a=r(9);function s(u,h,f){n.call(this,f),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=f,this.bendpoints=[],this.source=u,this.target=h}o(s,"LEdge"),s.prototype=Object.create(n.prototype);for(var l in n)s[l]=n[l];s.prototype.getSource=function(){return this.source},s.prototype.getTarget=function(){return this.target},s.prototype.isInterGraph=function(){return this.isInterGraph},s.prototype.getLength=function(){return this.length},s.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},s.prototype.getBendpoints=function(){return this.bendpoints},s.prototype.getLca=function(){return this.lca},s.prototype.getSourceInLca=function(){return this.sourceInLca},s.prototype.getTargetInLca=function(){return this.targetInLca},s.prototype.getOtherEnd=function(u){if(this.source===u)return this.target;if(this.target===u)return this.source;throw"Node is not incident with this edge"},s.prototype.getOtherEndInGraph=function(u,h){for(var f=this.getOtherEnd(u),d=h.getGraphManager().getRoot();;){if(f.getOwner()==h)return f;if(f.getOwner()==d)break;f=f.getOwner().getParent()}return null},s.prototype.updateLength=function(){var u=new Array(4);this.isOverlapingSourceAndTarget=i.getIntersection(this.target.getRect(),this.source.getRect(),u),this.isOverlapingSourceAndTarget||(this.lengthX=u[0]-u[2],this.lengthY=u[1]-u[3],Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY))},s.prototype.updateLengthSimple=function(){this.lengthX=this.target.getCenterX()-this.source.getCenterX(),this.lengthY=this.target.getCenterY()-this.source.getCenterY(),Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},t.exports=s},function(t,e,r){"use strict";function n(i){this.vGraphObject=i}o(n,"LGraphObject"),t.exports=n},function(t,e,r){"use strict";var n=r(2),i=r(10),a=r(13),s=r(0),l=r(16),u=r(4);function h(d,p,m,g){m==null&&g==null&&(g=p),n.call(this,g),d.graphManager!=null&&(d=d.graphManager),this.estimatedSize=i.MIN_VALUE,this.inclusionTreeDepth=i.MAX_VALUE,this.vGraphObject=g,this.edges=[],this.graphManager=d,m!=null&&p!=null?this.rect=new a(p.x,p.y,m.width,m.height):this.rect=new a}o(h,"LNode"),h.prototype=Object.create(n.prototype);for(var f in n)h[f]=n[f];h.prototype.getEdges=function(){return this.edges},h.prototype.getChild=function(){return this.child},h.prototype.getOwner=function(){return this.owner},h.prototype.getWidth=function(){return this.rect.width},h.prototype.setWidth=function(d){this.rect.width=d},h.prototype.getHeight=function(){return this.rect.height},h.prototype.setHeight=function(d){this.rect.height=d},h.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},h.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},h.prototype.getCenter=function(){return new u(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},h.prototype.getLocation=function(){return new u(this.rect.x,this.rect.y)},h.prototype.getRect=function(){return this.rect},h.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},h.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},h.prototype.setRect=function(d,p){this.rect.x=d.x,this.rect.y=d.y,this.rect.width=p.width,this.rect.height=p.height},h.prototype.setCenter=function(d,p){this.rect.x=d-this.rect.width/2,this.rect.y=p-this.rect.height/2},h.prototype.setLocation=function(d,p){this.rect.x=d,this.rect.y=p},h.prototype.moveBy=function(d,p){this.rect.x+=d,this.rect.y+=p},h.prototype.getEdgeListToNode=function(d){var p=[],m,g=this;return g.edges.forEach(function(y){if(y.target==d){if(y.source!=g)throw"Incorrect edge source!";p.push(y)}}),p},h.prototype.getEdgesBetween=function(d){var p=[],m,g=this;return g.edges.forEach(function(y){if(!(y.source==g||y.target==g))throw"Incorrect edge source and/or target";(y.target==d||y.source==d)&&p.push(y)}),p},h.prototype.getNeighborsList=function(){var d=new Set,p=this;return p.edges.forEach(function(m){if(m.source==p)d.add(m.target);else{if(m.target!=p)throw"Incorrect incidency!";d.add(m.source)}}),d},h.prototype.withChildren=function(){var d=new Set,p,m;if(d.add(this),this.child!=null)for(var g=this.child.getNodes(),y=0;yp&&(this.rect.x-=(this.labelWidth-p)/2,this.setWidth(this.labelWidth)),this.labelHeight>m&&(this.labelPos=="center"?this.rect.y-=(this.labelHeight-m)/2:this.labelPos=="top"&&(this.rect.y-=this.labelHeight-m),this.setHeight(this.labelHeight))}}},h.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==i.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},h.prototype.transform=function(d){var p=this.rect.x;p>s.WORLD_BOUNDARY?p=s.WORLD_BOUNDARY:p<-s.WORLD_BOUNDARY&&(p=-s.WORLD_BOUNDARY);var m=this.rect.y;m>s.WORLD_BOUNDARY?m=s.WORLD_BOUNDARY:m<-s.WORLD_BOUNDARY&&(m=-s.WORLD_BOUNDARY);var g=new u(p,m),y=d.inverseTransformPoint(g);this.setLocation(y.x,y.y)},h.prototype.getLeft=function(){return this.rect.x},h.prototype.getRight=function(){return this.rect.x+this.rect.width},h.prototype.getTop=function(){return this.rect.y},h.prototype.getBottom=function(){return this.rect.y+this.rect.height},h.prototype.getParent=function(){return this.owner==null?null:this.owner.getParent()},t.exports=h},function(t,e,r){"use strict";function n(i,a){i==null&&a==null?(this.x=0,this.y=0):(this.x=i,this.y=a)}o(n,"PointD"),n.prototype.getX=function(){return this.x},n.prototype.getY=function(){return this.y},n.prototype.setX=function(i){this.x=i},n.prototype.setY=function(i){this.y=i},n.prototype.getDifference=function(i){return new DimensionD(this.x-i.x,this.y-i.y)},n.prototype.getCopy=function(){return new n(this.x,this.y)},n.prototype.translate=function(i){return this.x+=i.width,this.y+=i.height,this},t.exports=n},function(t,e,r){"use strict";var n=r(2),i=r(10),a=r(0),s=r(6),l=r(3),u=r(1),h=r(13),f=r(12),d=r(11);function p(g,y,v){n.call(this,v),this.estimatedSize=i.MIN_VALUE,this.margin=a.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=g,y!=null&&y instanceof s?this.graphManager=y:y!=null&&y instanceof Layout&&(this.graphManager=y.graphManager)}o(p,"LGraph"),p.prototype=Object.create(n.prototype);for(var m in n)p[m]=n[m];p.prototype.getNodes=function(){return this.nodes},p.prototype.getEdges=function(){return this.edges},p.prototype.getGraphManager=function(){return this.graphManager},p.prototype.getParent=function(){return this.parent},p.prototype.getLeft=function(){return this.left},p.prototype.getRight=function(){return this.right},p.prototype.getTop=function(){return this.top},p.prototype.getBottom=function(){return this.bottom},p.prototype.isConnected=function(){return this.isConnected},p.prototype.add=function(g,y,v){if(y==null&&v==null){var x=g;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(x)>-1)throw"Node already in graph!";return x.owner=this,this.getNodes().push(x),x}else{var b=g;if(!(this.getNodes().indexOf(y)>-1&&this.getNodes().indexOf(v)>-1))throw"Source or target not in graph!";if(!(y.owner==v.owner&&y.owner==this))throw"Both owners must be this graph!";return y.owner!=v.owner?null:(b.source=y,b.target=v,b.isInterGraph=!1,this.getEdges().push(b),y.edges.push(b),v!=y&&v.edges.push(b),b)}},p.prototype.remove=function(g){var y=g;if(g instanceof l){if(y==null)throw"Node is null!";if(!(y.owner!=null&&y.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";for(var v=y.edges.slice(),x,b=v.length,w=0;w-1&&E>-1))throw"Source and/or target doesn't know this edge!";x.source.edges.splice(T,1),x.target!=x.source&&x.target.edges.splice(E,1);var C=x.source.owner.getEdges().indexOf(x);if(C==-1)throw"Not in owner's edge list!";x.source.owner.getEdges().splice(C,1)}},p.prototype.updateLeftTop=function(){for(var g=i.MAX_VALUE,y=i.MAX_VALUE,v,x,b,w=this.getNodes(),C=w.length,T=0;Tv&&(g=v),y>x&&(y=x)}return g==i.MAX_VALUE?null:(w[0].getParent().paddingLeft!=null?b=w[0].getParent().paddingLeft:b=this.margin,this.left=y-b,this.top=g-b,new f(this.left,this.top))},p.prototype.updateBounds=function(g){for(var y=i.MAX_VALUE,v=-i.MAX_VALUE,x=i.MAX_VALUE,b=-i.MAX_VALUE,w,C,T,E,A,S=this.nodes,_=S.length,I=0;I<_;I++){var D=S[I];g&&D.child!=null&&D.updateBounds(),w=D.getLeft(),C=D.getRight(),T=D.getTop(),E=D.getBottom(),y>w&&(y=w),vT&&(x=T),bw&&(y=w),vT&&(x=T),b=this.nodes.length){var _=0;v.forEach(function(I){I.owner==g&&_++}),_==this.nodes.length&&(this.isConnected=!0)}},t.exports=p},function(t,e,r){"use strict";var n,i=r(1);function a(s){n=r(5),this.layout=s,this.graphs=[],this.edges=[]}o(a,"LGraphManager"),a.prototype.addRoot=function(){var s=this.layout.newGraph(),l=this.layout.newNode(null),u=this.add(s,l);return this.setRootGraph(u),this.rootGraph},a.prototype.add=function(s,l,u,h,f){if(u==null&&h==null&&f==null){if(s==null)throw"Graph is null!";if(l==null)throw"Parent node is null!";if(this.graphs.indexOf(s)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(s),s.parent!=null)throw"Already has a parent!";if(l.child!=null)throw"Already has a child!";return s.parent=l,l.child=s,s}else{f=u,h=l,u=s;var d=h.getOwner(),p=f.getOwner();if(!(d!=null&&d.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(p!=null&&p.getGraphManager()==this))throw"Target not in this graph mgr!";if(d==p)return u.isInterGraph=!1,d.add(u,h,f);if(u.isInterGraph=!0,u.source=h,u.target=f,this.edges.indexOf(u)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(u),!(u.source!=null&&u.target!=null))throw"Edge source and/or target is null!";if(!(u.source.edges.indexOf(u)==-1&&u.target.edges.indexOf(u)==-1))throw"Edge already in source and/or target incidency list!";return u.source.edges.push(u),u.target.edges.push(u),u}},a.prototype.remove=function(s){if(s instanceof n){var l=s;if(l.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(l==this.rootGraph||l.parent!=null&&l.parent.graphManager==this))throw"Invalid parent node!";var u=[];u=u.concat(l.getEdges());for(var h,f=u.length,d=0;d=s.getRight()?l[0]+=Math.min(s.getX()-a.getX(),a.getRight()-s.getRight()):s.getX()<=a.getX()&&s.getRight()>=a.getRight()&&(l[0]+=Math.min(a.getX()-s.getX(),s.getRight()-a.getRight())),a.getY()<=s.getY()&&a.getBottom()>=s.getBottom()?l[1]+=Math.min(s.getY()-a.getY(),a.getBottom()-s.getBottom()):s.getY()<=a.getY()&&s.getBottom()>=a.getBottom()&&(l[1]+=Math.min(a.getY()-s.getY(),s.getBottom()-a.getBottom()));var f=Math.abs((s.getCenterY()-a.getCenterY())/(s.getCenterX()-a.getCenterX()));s.getCenterY()===a.getCenterY()&&s.getCenterX()===a.getCenterX()&&(f=1);var d=f*l[0],p=l[1]/f;l[0]d)return l[0]=u,l[1]=m,l[2]=f,l[3]=S,!1;if(hf)return l[0]=p,l[1]=h,l[2]=E,l[3]=d,!1;if(uf?(l[0]=y,l[1]=v,k=!0):(l[0]=g,l[1]=m,k=!0):R===M&&(u>f?(l[0]=p,l[1]=m,k=!0):(l[0]=x,l[1]=v,k=!0)),-O===M?f>u?(l[2]=A,l[3]=S,L=!0):(l[2]=E,l[3]=T,L=!0):O===M&&(f>u?(l[2]=C,l[3]=T,L=!0):(l[2]=_,l[3]=S,L=!0)),k&&L)return!1;if(u>f?h>d?(B=this.getCardinalDirection(R,M,4),F=this.getCardinalDirection(O,M,2)):(B=this.getCardinalDirection(-R,M,3),F=this.getCardinalDirection(-O,M,1)):h>d?(B=this.getCardinalDirection(-R,M,1),F=this.getCardinalDirection(-O,M,3)):(B=this.getCardinalDirection(R,M,2),F=this.getCardinalDirection(O,M,4)),!k)switch(B){case 1:z=m,P=u+-w/M,l[0]=P,l[1]=z;break;case 2:P=x,z=h+b*M,l[0]=P,l[1]=z;break;case 3:z=v,P=u+w/M,l[0]=P,l[1]=z;break;case 4:P=y,z=h+-b*M,l[0]=P,l[1]=z;break}if(!L)switch(F){case 1:H=T,$=f+-D/M,l[2]=$,l[3]=H;break;case 2:$=_,H=d+I*M,l[2]=$,l[3]=H;break;case 3:H=S,$=f+D/M,l[2]=$,l[3]=H;break;case 4:$=A,H=d+-I*M,l[2]=$,l[3]=H;break}}return!1},i.getCardinalDirection=function(a,s,l){return a>s?l:1+l%4},i.getIntersection=function(a,s,l,u){if(u==null)return this.getIntersection2(a,s,l);var h=a.x,f=a.y,d=s.x,p=s.y,m=l.x,g=l.y,y=u.x,v=u.y,x=void 0,b=void 0,w=void 0,C=void 0,T=void 0,E=void 0,A=void 0,S=void 0,_=void 0;return w=p-f,T=h-d,A=d*f-h*p,C=v-g,E=m-y,S=y*g-m*v,_=w*E-C*T,_===0?null:(x=(T*S-E*A)/_,b=(C*A-w*S)/_,new n(x,b))},i.angleOfVector=function(a,s,l,u){var h=void 0;return a!==l?(h=Math.atan((u-s)/(l-a)),l0?1:i<0?-1:0},n.floor=function(i){return i<0?Math.ceil(i):Math.floor(i)},n.ceil=function(i){return i<0?Math.floor(i):Math.ceil(i)},t.exports=n},function(t,e,r){"use strict";function n(){}o(n,"Integer"),n.MAX_VALUE=2147483647,n.MIN_VALUE=-2147483648,t.exports=n},function(t,e,r){"use strict";var n=function(){function h(f,d){for(var p=0;p"u"?"undefined":n(a);return a==null||s!="object"&&s!="function"},t.exports=i},function(t,e,r){"use strict";function n(m){if(Array.isArray(m)){for(var g=0,y=Array(m.length);g0&&g;){for(w.push(T[0]);w.length>0&&g;){var E=w[0];w.splice(0,1),b.add(E);for(var A=E.getEdges(),x=0;x-1&&T.splice(D,1)}b=new Set,C=new Map}}return m},p.prototype.createDummyNodesForBendpoints=function(m){for(var g=[],y=m.source,v=this.graphManager.calcLowestCommonAncestor(m.source,m.target),x=0;x0){for(var v=this.edgeToDummyNodes.get(y),x=0;x=0&&g.splice(S,1);var _=C.getNeighborsList();_.forEach(function(k){if(y.indexOf(k)<0){var L=v.get(k),R=L-1;R==1&&E.push(k),v.set(k,R)}})}y=y.concat(E),(g.length==1||g.length==2)&&(x=!0,b=g[0])}return b},p.prototype.setGraphManager=function(m){this.graphManager=m},t.exports=p},function(t,e,r){"use strict";function n(){}o(n,"RandomSeed"),n.seed=1,n.x=0,n.nextDouble=function(){return n.x=Math.sin(n.seed++)*1e4,n.x-Math.floor(n.x)},t.exports=n},function(t,e,r){"use strict";var n=r(4);function i(a,s){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}o(i,"Transform"),i.prototype.getWorldOrgX=function(){return this.lworldOrgX},i.prototype.setWorldOrgX=function(a){this.lworldOrgX=a},i.prototype.getWorldOrgY=function(){return this.lworldOrgY},i.prototype.setWorldOrgY=function(a){this.lworldOrgY=a},i.prototype.getWorldExtX=function(){return this.lworldExtX},i.prototype.setWorldExtX=function(a){this.lworldExtX=a},i.prototype.getWorldExtY=function(){return this.lworldExtY},i.prototype.setWorldExtY=function(a){this.lworldExtY=a},i.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},i.prototype.setDeviceOrgX=function(a){this.ldeviceOrgX=a},i.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},i.prototype.setDeviceOrgY=function(a){this.ldeviceOrgY=a},i.prototype.getDeviceExtX=function(){return this.ldeviceExtX},i.prototype.setDeviceExtX=function(a){this.ldeviceExtX=a},i.prototype.getDeviceExtY=function(){return this.ldeviceExtY},i.prototype.setDeviceExtY=function(a){this.ldeviceExtY=a},i.prototype.transformX=function(a){var s=0,l=this.lworldExtX;return l!=0&&(s=this.ldeviceOrgX+(a-this.lworldOrgX)*this.ldeviceExtX/l),s},i.prototype.transformY=function(a){var s=0,l=this.lworldExtY;return l!=0&&(s=this.ldeviceOrgY+(a-this.lworldOrgY)*this.ldeviceExtY/l),s},i.prototype.inverseTransformX=function(a){var s=0,l=this.ldeviceExtX;return l!=0&&(s=this.lworldOrgX+(a-this.ldeviceOrgX)*this.lworldExtX/l),s},i.prototype.inverseTransformY=function(a){var s=0,l=this.ldeviceExtY;return l!=0&&(s=this.lworldOrgY+(a-this.ldeviceOrgY)*this.lworldExtY/l),s},i.prototype.inverseTransformPoint=function(a){var s=new n(this.inverseTransformX(a.x),this.inverseTransformY(a.y));return s},t.exports=i},function(t,e,r){"use strict";function n(d){if(Array.isArray(d)){for(var p=0,m=Array(d.length);pa.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*a.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(d-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-a.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT_INCREMENTAL):(d>a.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(a.COOLING_ADAPTATION_FACTOR,1-(d-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*(1-a.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},h.prototype.calcSpringForces=function(){for(var d=this.getAllEdges(),p,m=0;m0&&arguments[0]!==void 0?arguments[0]:!0,p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,m,g,y,v,x=this.getAllNodes(),b;if(this.useFRGridVariant)for(this.totalIterations%a.GRID_CALCULATION_CHECK_PERIOD==1&&d&&this.updateGrid(),b=new Set,m=0;mw||b>w)&&(d.gravitationForceX=-this.gravityConstant*y,d.gravitationForceY=-this.gravityConstant*v)):(w=p.getEstimatedSize()*this.compoundGravityRangeFactor,(x>w||b>w)&&(d.gravitationForceX=-this.gravityConstant*y*this.compoundGravityConstant,d.gravitationForceY=-this.gravityConstant*v*this.compoundGravityConstant))},h.prototype.isConverged=function(){var d,p=!1;return this.totalIterations>this.maxIterations/3&&(p=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),d=this.totalDisplacement=x.length||w>=x[0].length)){for(var C=0;Ch},"_defaultCompareFunction")}]),l}();t.exports=s},function(t,e,r){"use strict";var n=function(){function s(l,u){for(var h=0;h2&&arguments[2]!==void 0?arguments[2]:1,f=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,d=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;i(this,s),this.sequence1=l,this.sequence2=u,this.match_score=h,this.mismatch_penalty=f,this.gap_penalty=d,this.iMax=l.length+1,this.jMax=u.length+1,this.grid=new Array(this.iMax);for(var p=0;p=0;l--){var u=this.listeners[l];u.event===a&&u.callback===s&&this.listeners.splice(l,1)}},i.emit=function(a,s){for(var l=0;l{"use strict";o(function(e,r){typeof h4=="object"&&typeof CB=="object"?CB.exports=r(SB()):typeof define=="function"&&define.amd?define(["layout-base"],r):typeof h4=="object"?h4.coseBase=r(SB()):e.coseBase=r(e.layoutBase)},"webpackUniversalModuleDefinition")(h4,function(t){return function(e){var r={};function n(i){if(r[i])return r[i].exports;var a=r[i]={i,l:!1,exports:{}};return e[i].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return o(n,"__webpack_require__"),n.m=e,n.c=r,n.i=function(i){return i},n.d=function(i,a,s){n.o(i,a)||Object.defineProperty(i,a,{configurable:!1,enumerable:!0,get:s})},n.n=function(i){var a=i&&i.__esModule?o(function(){return i.default},"getDefault"):o(function(){return i},"getModuleExports");return n.d(a,"a",a),a},n.o=function(i,a){return Object.prototype.hasOwnProperty.call(i,a)},n.p="",n(n.s=7)}([function(e,r){e.exports=t},function(e,r,n){"use strict";var i=n(0).FDLayoutConstants;function a(){}o(a,"CoSEConstants");for(var s in i)a[s]=i[s];a.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,a.DEFAULT_RADIAL_SEPARATION=i.DEFAULT_EDGE_LENGTH,a.DEFAULT_COMPONENT_SEPERATION=60,a.TILE=!0,a.TILING_PADDING_VERTICAL=10,a.TILING_PADDING_HORIZONTAL=10,a.TREE_REDUCTION_ON_INCREMENTAL=!1,e.exports=a},function(e,r,n){"use strict";var i=n(0).FDLayoutEdge;function a(l,u,h){i.call(this,l,u,h)}o(a,"CoSEEdge"),a.prototype=Object.create(i.prototype);for(var s in i)a[s]=i[s];e.exports=a},function(e,r,n){"use strict";var i=n(0).LGraph;function a(l,u,h){i.call(this,l,u,h)}o(a,"CoSEGraph"),a.prototype=Object.create(i.prototype);for(var s in i)a[s]=i[s];e.exports=a},function(e,r,n){"use strict";var i=n(0).LGraphManager;function a(l){i.call(this,l)}o(a,"CoSEGraphManager"),a.prototype=Object.create(i.prototype);for(var s in i)a[s]=i[s];e.exports=a},function(e,r,n){"use strict";var i=n(0).FDLayoutNode,a=n(0).IMath;function s(u,h,f,d){i.call(this,u,h,f,d)}o(s,"CoSENode"),s.prototype=Object.create(i.prototype);for(var l in i)s[l]=i[l];s.prototype.move=function(){var u=this.graphManager.getLayout();this.displacementX=u.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY=u.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren,Math.abs(this.displacementX)>u.coolingFactor*u.maxNodeDisplacement&&(this.displacementX=u.coolingFactor*u.maxNodeDisplacement*a.sign(this.displacementX)),Math.abs(this.displacementY)>u.coolingFactor*u.maxNodeDisplacement&&(this.displacementY=u.coolingFactor*u.maxNodeDisplacement*a.sign(this.displacementY)),this.child==null?this.moveBy(this.displacementX,this.displacementY):this.child.getNodes().length==0?this.moveBy(this.displacementX,this.displacementY):this.propogateDisplacementToChildren(this.displacementX,this.displacementY),u.totalDisplacement+=Math.abs(this.displacementX)+Math.abs(this.displacementY),this.springForceX=0,this.springForceY=0,this.repulsionForceX=0,this.repulsionForceY=0,this.gravitationForceX=0,this.gravitationForceY=0,this.displacementX=0,this.displacementY=0},s.prototype.propogateDisplacementToChildren=function(u,h){for(var f=this.getChild().getNodes(),d,p=0;p0)this.positionNodesRadially(T);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var E=new Set(this.getAllNodes()),A=this.nodesWithGravity.filter(function(S){return E.has(S)});this.graphManager.setAllNodesToApplyGravitation(A),this.positionNodesRandomly()}}return this.initSpringEmbedder(),this.runSpringEmbedder(),!0},w.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished)if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.totalIterations%f.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;this.coolingCycle++,this.layoutQuality==0?this.coolingAdjuster=this.coolingCycle:this.layoutQuality==1&&(this.coolingAdjuster=this.coolingCycle/3),this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var T=new Set(this.getAllNodes()),E=this.nodesWithGravity.filter(function(_){return T.has(_)});this.graphManager.setAllNodesToApplyGravitation(E),this.graphManager.updateBounds(),this.updateGrid(),this.coolingFactor=f.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;this.afterGrowthIterations%10==0&&(this.graphManager.updateBounds(),this.updateGrid()),this.coolingFactor=f.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var A=!this.isTreeGrowing&&!this.isGrowthFinished,S=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(A,S),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},w.prototype.getPositionsData=function(){for(var T=this.graphManager.getAllNodes(),E={},A=0;A1){var k;for(k=0;kS&&(S=Math.floor(D.y)),I=Math.floor(D.x+h.DEFAULT_COMPONENT_SEPERATION)}this.transform(new m(d.WORLD_CENTER_X-D.x/2,d.WORLD_CENTER_Y-D.y/2))},w.radialLayout=function(T,E,A){var S=Math.max(this.maxDiagonalInTree(T),h.DEFAULT_RADIAL_SEPARATION);w.branchRadialLayout(E,null,0,359,0,S);var _=x.calculateBounds(T),I=new b;I.setDeviceOrgX(_.getMinX()),I.setDeviceOrgY(_.getMinY()),I.setWorldOrgX(A.x),I.setWorldOrgY(A.y);for(var D=0;D1;){var Q=H[0];H.splice(0,1);var j=B.indexOf(Q);j>=0&&B.splice(j,1),z--,F--}E!=null?$=(B.indexOf(H[0])+1)%z:$=0;for(var ie=Math.abs(S-A)/F,ne=$;P!=F;ne=++ne%z){var le=B[ne].getOtherEnd(T);if(le!=E){var he=(A+P*ie)%360,K=(he+ie)%360;w.branchRadialLayout(le,T,he,K,_+I,I),P++}}},w.maxDiagonalInTree=function(T){for(var E=y.MIN_VALUE,A=0;AE&&(E=_)}return E},w.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},w.prototype.groupZeroDegreeMembers=function(){var T=this,E={};this.memberGroups={},this.idToDummyNode={};for(var A=[],S=this.graphManager.getAllNodes(),_=0;_"u"&&(E[k]=[]),E[k]=E[k].concat(I)}Object.keys(E).forEach(function(L){if(E[L].length>1){var R="DummyCompound_"+L;T.memberGroups[R]=E[L];var O=E[L][0].getParent(),M=new l(T.graphManager);M.id=R,M.paddingLeft=O.paddingLeft||0,M.paddingRight=O.paddingRight||0,M.paddingBottom=O.paddingBottom||0,M.paddingTop=O.paddingTop||0,T.idToDummyNode[R]=M;var B=T.getGraphManager().add(T.newGraph(),M),F=O.getChild();F.add(M);for(var P=0;P=0;T--){var E=this.compoundOrder[T],A=E.id,S=E.paddingLeft,_=E.paddingTop;this.adjustLocations(this.tiledMemberPack[A],E.rect.x,E.rect.y,S,_)}},w.prototype.repopulateZeroDegreeMembers=function(){var T=this,E=this.tiledZeroDegreePack;Object.keys(E).forEach(function(A){var S=T.idToDummyNode[A],_=S.paddingLeft,I=S.paddingTop;T.adjustLocations(E[A],S.rect.x,S.rect.y,_,I)})},w.prototype.getToBeTiled=function(T){var E=T.id;if(this.toBeTiled[E]!=null)return this.toBeTiled[E];var A=T.getChild();if(A==null)return this.toBeTiled[E]=!1,!1;for(var S=A.getNodes(),_=0;_0)return this.toBeTiled[E]=!1,!1;if(I.getChild()==null){this.toBeTiled[I.id]=!1;continue}if(!this.getToBeTiled(I))return this.toBeTiled[E]=!1,!1}return this.toBeTiled[E]=!0,!0},w.prototype.getNodeDegree=function(T){for(var E=T.id,A=T.getEdges(),S=0,_=0;_L&&(L=O.rect.height)}A+=L+T.verticalPadding}},w.prototype.tileCompoundMembers=function(T,E){var A=this;this.tiledMemberPack=[],Object.keys(T).forEach(function(S){var _=E[S];A.tiledMemberPack[S]=A.tileNodes(T[S],_.paddingLeft+_.paddingRight),_.rect.width=A.tiledMemberPack[S].width,_.rect.height=A.tiledMemberPack[S].height})},w.prototype.tileNodes=function(T,E){var A=h.TILING_PADDING_VERTICAL,S=h.TILING_PADDING_HORIZONTAL,_={rows:[],rowWidth:[],rowHeight:[],width:0,height:E,verticalPadding:A,horizontalPadding:S};T.sort(function(k,L){return k.rect.width*k.rect.height>L.rect.width*L.rect.height?-1:k.rect.width*k.rect.height0&&(D+=T.horizontalPadding),T.rowWidth[A]=D,T.width0&&(k+=T.verticalPadding);var L=0;k>T.rowHeight[A]&&(L=T.rowHeight[A],T.rowHeight[A]=k,L=T.rowHeight[A]-L),T.height+=L,T.rows[A].push(E)},w.prototype.getShortestRowIndex=function(T){for(var E=-1,A=Number.MAX_VALUE,S=0;SA&&(E=S,A=T.rowWidth[S]);return E},w.prototype.canAddHorizontal=function(T,E,A){var S=this.getShortestRowIndex(T);if(S<0)return!0;var _=T.rowWidth[S];if(_+T.horizontalPadding+E<=T.width)return!0;var I=0;T.rowHeight[S]0&&(I=A+T.verticalPadding-T.rowHeight[S]);var D;T.width-_>=E+T.horizontalPadding?D=(T.height+I)/(_+E+T.horizontalPadding):D=(T.height+I)/T.width,I=A+T.verticalPadding;var k;return T.widthI&&E!=A){S.splice(-1,1),T.rows[A].push(_),T.rowWidth[E]=T.rowWidth[E]-I,T.rowWidth[A]=T.rowWidth[A]+I,T.width=T.rowWidth[instance.getLongestRowIndex(T)];for(var D=Number.MIN_VALUE,k=0;kD&&(D=S[k].height);E>0&&(D+=T.verticalPadding);var L=T.rowHeight[E]+T.rowHeight[A];T.rowHeight[E]=D,T.rowHeight[A]<_.height+T.verticalPadding&&(T.rowHeight[A]=_.height+T.verticalPadding);var R=T.rowHeight[E]+T.rowHeight[A];T.height+=R-L,this.shiftToLastRow(T)}},w.prototype.tilingPreLayout=function(){h.TILE&&(this.groupZeroDegreeMembers(),this.clearCompounds(),this.clearZeroDegreeMembers())},w.prototype.tilingPostLayout=function(){h.TILE&&(this.repopulateZeroDegreeMembers(),this.repopulateCompounds())},w.prototype.reduceTrees=function(){for(var T=[],E=!0,A;E;){var S=this.graphManager.getAllNodes(),_=[];E=!1;for(var I=0;I0)for(var F=_;F<=I;F++)B[0]+=this.grid[F][D-1].length+this.grid[F][D].length-1;if(I0)for(var F=D;F<=k;F++)B[3]+=this.grid[_-1][F].length+this.grid[_][F].length-1;for(var P=y.MAX_VALUE,z,$,H=0;H{"use strict";o(function(e,r){typeof f4=="object"&&typeof _B=="object"?_B.exports=r(AB()):typeof define=="function"&&define.amd?define(["cose-base"],r):typeof f4=="object"?f4.cytoscapeCoseBilkent=r(AB()):e.cytoscapeCoseBilkent=r(e.coseBase)},"webpackUniversalModuleDefinition")(f4,function(t){return function(e){var r={};function n(i){if(r[i])return r[i].exports;var a=r[i]={i,l:!1,exports:{}};return e[i].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return o(n,"__webpack_require__"),n.m=e,n.c=r,n.i=function(i){return i},n.d=function(i,a,s){n.o(i,a)||Object.defineProperty(i,a,{configurable:!1,enumerable:!0,get:s})},n.n=function(i){var a=i&&i.__esModule?o(function(){return i.default},"getDefault"):o(function(){return i},"getModuleExports");return n.d(a,"a",a),a},n.o=function(i,a){return Object.prototype.hasOwnProperty.call(i,a)},n.p="",n(n.s=1)}([function(e,r){e.exports=t},function(e,r,n){"use strict";var i=n(0).layoutBase.LayoutConstants,a=n(0).layoutBase.FDLayoutConstants,s=n(0).CoSEConstants,l=n(0).CoSELayout,u=n(0).CoSENode,h=n(0).layoutBase.PointD,f=n(0).layoutBase.DimensionD,d={ready:o(function(){},"ready"),stop:o(function(){},"stop"),quality:"default",nodeDimensionsIncludeLabels:!1,refresh:30,fit:!0,padding:10,randomize:!0,nodeRepulsion:4500,idealEdgeLength:50,edgeElasticity:.45,nestingFactor:.1,gravity:.25,numIter:2500,tile:!0,animate:"end",animationDuration:500,tilingPaddingVertical:10,tilingPaddingHorizontal:10,gravityRangeCompound:1.5,gravityCompound:1,gravityRange:3.8,initialEnergyOnIncremental:.5};function p(v,x){var b={};for(var w in v)b[w]=v[w];for(var w in x)b[w]=x[w];return b}o(p,"extend");function m(v){this.options=p(d,v),g(this.options)}o(m,"_CoSELayout");var g=o(function(x){x.nodeRepulsion!=null&&(s.DEFAULT_REPULSION_STRENGTH=a.DEFAULT_REPULSION_STRENGTH=x.nodeRepulsion),x.idealEdgeLength!=null&&(s.DEFAULT_EDGE_LENGTH=a.DEFAULT_EDGE_LENGTH=x.idealEdgeLength),x.edgeElasticity!=null&&(s.DEFAULT_SPRING_STRENGTH=a.DEFAULT_SPRING_STRENGTH=x.edgeElasticity),x.nestingFactor!=null&&(s.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=a.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=x.nestingFactor),x.gravity!=null&&(s.DEFAULT_GRAVITY_STRENGTH=a.DEFAULT_GRAVITY_STRENGTH=x.gravity),x.numIter!=null&&(s.MAX_ITERATIONS=a.MAX_ITERATIONS=x.numIter),x.gravityRange!=null&&(s.DEFAULT_GRAVITY_RANGE_FACTOR=a.DEFAULT_GRAVITY_RANGE_FACTOR=x.gravityRange),x.gravityCompound!=null&&(s.DEFAULT_COMPOUND_GRAVITY_STRENGTH=a.DEFAULT_COMPOUND_GRAVITY_STRENGTH=x.gravityCompound),x.gravityRangeCompound!=null&&(s.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=a.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=x.gravityRangeCompound),x.initialEnergyOnIncremental!=null&&(s.DEFAULT_COOLING_FACTOR_INCREMENTAL=a.DEFAULT_COOLING_FACTOR_INCREMENTAL=x.initialEnergyOnIncremental),x.quality=="draft"?i.QUALITY=0:x.quality=="proof"?i.QUALITY=2:i.QUALITY=1,s.NODE_DIMENSIONS_INCLUDE_LABELS=a.NODE_DIMENSIONS_INCLUDE_LABELS=i.NODE_DIMENSIONS_INCLUDE_LABELS=x.nodeDimensionsIncludeLabels,s.DEFAULT_INCREMENTAL=a.DEFAULT_INCREMENTAL=i.DEFAULT_INCREMENTAL=!x.randomize,s.ANIMATE=a.ANIMATE=i.ANIMATE=x.animate,s.TILE=x.tile,s.TILING_PADDING_VERTICAL=typeof x.tilingPaddingVertical=="function"?x.tilingPaddingVertical.call():x.tilingPaddingVertical,s.TILING_PADDING_HORIZONTAL=typeof x.tilingPaddingHorizontal=="function"?x.tilingPaddingHorizontal.call():x.tilingPaddingHorizontal},"getUserOptions");m.prototype.run=function(){var v,x,b=this.options,w=this.idToLNode={},C=this.layout=new l,T=this;T.stopped=!1,this.cy=this.options.cy,this.cy.trigger({type:"layoutstart",layout:this});var E=C.newGraphManager();this.gm=E;var A=this.options.eles.nodes(),S=this.options.eles.edges();this.root=E.addRoot(),this.processChildrenList(this.root,this.getTopMostNodes(A),C);for(var _=0;_0){var k;k=b.getGraphManager().add(b.newGraph(),A),this.processChildrenList(k,E,b)}}},m.prototype.stop=function(){return this.stopped=!0,this};var y=o(function(x){x("layout","cose-bilkent",m)},"register");typeof cytoscape<"u"&&y(cytoscape),e.exports=y}])})});function JZe(t,e,r,n,i){return t.insert("polygon",":first-child").attr("points",n.map(function(a){return a.x+","+a.y}).join(" ")).attr("transform","translate("+(i.width-e)/2+", "+r+")")}var YZe,XZe,jZe,KZe,QZe,ZZe,eJe,tJe,Vge,Uge,Hge=N(()=>{"use strict";to();ir();YZe=12,XZe=o(function(t,e,r,n){e.append("path").attr("id","node-"+r.id).attr("class","node-bkg node-"+t.type2Str(r.type)).attr("d",`M0 ${r.height-5} v${-r.height+2*5} q0,-5 5,-5 h${r.width-2*5} q5,0 5,5 v${r.height-5} H0 Z`),e.append("line").attr("class","node-line-"+n).attr("x1",0).attr("y1",r.height).attr("x2",r.width).attr("y2",r.height)},"defaultBkg"),jZe=o(function(t,e,r){e.append("rect").attr("id","node-"+r.id).attr("class","node-bkg node-"+t.type2Str(r.type)).attr("height",r.height).attr("width",r.width)},"rectBkg"),KZe=o(function(t,e,r){let n=r.width,i=r.height,a=.15*n,s=.25*n,l=.35*n,u=.2*n;e.append("path").attr("id","node-"+r.id).attr("class","node-bkg node-"+t.type2Str(r.type)).attr("d",`M0 0 a${a},${a} 0 0,1 ${n*.25},${-1*n*.1} + a${l},${l} 1 0,1 ${n*.4},${-1*n*.1} + a${s},${s} 1 0,1 ${n*.35},${1*n*.2} + + a${a},${a} 1 0,1 ${n*.15},${1*i*.35} + a${u},${u} 1 0,1 ${-1*n*.15},${1*i*.65} + + a${s},${a} 1 0,1 ${-1*n*.25},${n*.15} + a${l},${l} 1 0,1 ${-1*n*.5},0 + a${a},${a} 1 0,1 ${-1*n*.25},${-1*n*.15} + + a${a},${a} 1 0,1 ${-1*n*.1},${-1*i*.35} + a${u},${u} 1 0,1 ${n*.1},${-1*i*.65} + + H0 V0 Z`)},"cloudBkg"),QZe=o(function(t,e,r){let n=r.width,i=r.height,a=.15*n;e.append("path").attr("id","node-"+r.id).attr("class","node-bkg node-"+t.type2Str(r.type)).attr("d",`M0 0 a${a},${a} 1 0,0 ${n*.25},${-1*i*.1} + a${a},${a} 1 0,0 ${n*.25},0 + a${a},${a} 1 0,0 ${n*.25},0 + a${a},${a} 1 0,0 ${n*.25},${1*i*.1} + + a${a},${a} 1 0,0 ${n*.15},${1*i*.33} + a${a*.8},${a*.8} 1 0,0 0,${1*i*.34} + a${a},${a} 1 0,0 ${-1*n*.15},${1*i*.33} + + a${a},${a} 1 0,0 ${-1*n*.25},${i*.15} + a${a},${a} 1 0,0 ${-1*n*.25},0 + a${a},${a} 1 0,0 ${-1*n*.25},0 + a${a},${a} 1 0,0 ${-1*n*.25},${-1*i*.15} + + a${a},${a} 1 0,0 ${-1*n*.1},${-1*i*.33} + a${a*.8},${a*.8} 1 0,0 0,${-1*i*.34} + a${a},${a} 1 0,0 ${n*.1},${-1*i*.33} + + H0 V0 Z`)},"bangBkg"),ZZe=o(function(t,e,r){e.append("circle").attr("id","node-"+r.id).attr("class","node-bkg node-"+t.type2Str(r.type)).attr("r",r.width/2)},"circleBkg");o(JZe,"insertPolygonShape");eJe=o(function(t,e,r){let n=r.height,a=n/4,s=r.width-r.padding+2*a,l=[{x:a,y:0},{x:s-a,y:0},{x:s,y:-n/2},{x:s-a,y:-n},{x:a,y:-n},{x:0,y:-n/2}];JZe(e,s,n,l,r)},"hexagonBkg"),tJe=o(function(t,e,r){e.append("rect").attr("id","node-"+r.id).attr("class","node-bkg node-"+t.type2Str(r.type)).attr("height",r.height).attr("rx",r.padding).attr("ry",r.padding).attr("width",r.width)},"roundedRectBkg"),Vge=o(async function(t,e,r,n,i){let a=i.htmlLabels,s=n%(YZe-1),l=e.append("g");r.section=s;let u="section-"+s;s<0&&(u+=" section-root"),l.attr("class",(r.class?r.class+" ":"")+"mindmap-node "+u);let h=l.append("g"),f=l.append("g"),d=r.descr.replace(/()/g,` +`);await Hn(f,d,{useHtmlLabels:a,width:r.width,classes:"mindmap-node-label"},i),a||f.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle");let p=f.node().getBBox(),[m]=Bo(i.fontSize);if(r.height=p.height+m*1.1*.5+r.padding,r.width=p.width+2*r.padding,r.icon)if(r.type===t.nodeType.CIRCLE)r.height+=50,r.width+=50,l.append("foreignObject").attr("height","50px").attr("width",r.width).attr("style","text-align: center;").append("div").attr("class","icon-container").append("i").attr("class","node-icon-"+s+" "+r.icon),f.attr("transform","translate("+r.width/2+", "+(r.height/2-1.5*r.padding)+")");else{r.width+=50;let g=r.height;r.height=Math.max(g,60);let y=Math.abs(r.height-g);l.append("foreignObject").attr("width","60px").attr("height",r.height).attr("style","text-align: center;margin-top:"+y/2+"px;").append("div").attr("class","icon-container").append("i").attr("class","node-icon-"+s+" "+r.icon),f.attr("transform","translate("+(25+r.width/2)+", "+(y/2+r.padding/2)+")")}else if(a){let g=(r.width-p.width)/2,y=(r.height-p.height)/2;f.attr("transform","translate("+g+", "+y+")")}else{let g=r.width/2,y=r.padding/2;f.attr("transform","translate("+g+", "+y+")")}switch(r.type){case t.nodeType.DEFAULT:XZe(t,h,r,s);break;case t.nodeType.ROUNDED_RECT:tJe(t,h,r,s);break;case t.nodeType.RECT:jZe(t,h,r,s);break;case t.nodeType.CIRCLE:h.attr("transform","translate("+r.width/2+", "+ +r.height/2+")"),ZZe(t,h,r,s);break;case t.nodeType.CLOUD:KZe(t,h,r,s);break;case t.nodeType.BANG:QZe(t,h,r,s);break;case t.nodeType.HEXAGON:eJe(t,h,r,s);break}return t.setElementForId(r.id,l),r.height},"drawNode"),Uge=o(function(t,e){let r=t.getElementById(e.id),n=e.x||0,i=e.y||0;r.attr("transform","translate("+n+","+i+")")},"positionNode")});async function qge(t,e,r,n,i){await Vge(t,e,r,n,i),r.children&&await Promise.all(r.children.map((a,s)=>qge(t,e,a,n<0?s:n,i)))}function rJe(t,e){e.edges().map((r,n)=>{let i=r.data();if(r[0]._private.bodyBounds){let a=r[0]._private.rscratch;Y.trace("Edge: ",n,i),t.insert("path").attr("d",`M ${a.startX},${a.startY} L ${a.midX},${a.midY} L${a.endX},${a.endY} `).attr("class","edge section-edge-"+i.section+" edge-depth-"+i.depth)}})}function Yge(t,e,r,n){e.add({group:"nodes",data:{id:t.id.toString(),labelText:t.descr,height:t.height,width:t.width,level:n,nodeId:t.id,padding:t.padding,type:t.type},position:{x:t.x,y:t.y}}),t.children&&t.children.forEach(i=>{Yge(i,e,r,n+1),e.add({group:"edges",data:{id:`${t.id}_${i.id}`,source:t.id,target:i.id,depth:n,section:i.section}})})}function nJe(t,e){return new Promise(r=>{let n=Ge("body").append("div").attr("id","cy").attr("style","display:none"),i=rl({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"bezier"}}]});n.remove(),Yge(t,i,e,0),i.nodes().forEach(function(a){a.layoutDimensions=()=>{let s=a.data();return{w:s.width,h:s.height}}}),i.layout({name:"cose-bilkent",quality:"proof",styleEnabled:!1,animate:!1}).run(),i.ready(a=>{Y.info("Ready",a),r(i)})})}function iJe(t,e){e.nodes().map((r,n)=>{let i=r.data();i.x=r.position().x,i.y=r.position().y,Uge(t,i);let a=t.getElementById(i.nodeId);Y.info("Id:",n,"Position: (",r.position().x,", ",r.position().y,")",i),a.attr("transform",`translate(${r.position().x-i.width/2}, ${r.position().y-i.height/2})`),a.attr("attr",`apa-${n})`)})}var Wge,aJe,Xge,jge=N(()=>{"use strict";kB();Wge=Sa(Gge(),1);dr();zt();vt();Vc();Ei();Hge();Ya();rl.use(Wge.default);o(qge,"drawNodes");o(rJe,"drawEdges");o(Yge,"addNodes");o(nJe,"layoutMindmap");o(iJe,"positionNodes");aJe=o(async(t,e,r,n)=>{Y.debug(`Rendering mindmap diagram +`+t);let i=n.db,a=i.getMindmap();if(!a)return;let s=me();s.htmlLabels=!1;let l=sa(e),u=l.append("g");u.attr("class","mindmap-edges");let h=l.append("g");h.attr("class","mindmap-nodes"),await qge(i,h,a,-1,s);let f=await nJe(a,s);rJe(u,f),iJe(i,f),Ao(void 0,l,s.mindmap?.padding??or.mindmap.padding,s.mindmap?.useMaxWidth??or.mindmap.useMaxWidth)},"draw"),Xge={draw:aJe}});var sJe,oJe,Kge,Qge=N(()=>{"use strict";Ys();sJe=o(t=>{let e="";for(let r=0;r` + .edge { + stroke-width: 3; + } + ${sJe(t)} + .section-root rect, .section-root path, .section-root circle, .section-root polygon { + fill: ${t.git0}; + } + .section-root text { + fill: ${t.gitBranchLabel0}; + } + .icon-container { + height:100%; + display: flex; + justify-content: center; + align-items: center; + } + .edge { + fill: none; + } + .mindmap-node-label { + dy: 1em; + alignment-baseline: middle; + text-anchor: middle; + dominant-baseline: middle; + text-align: center; + } +`,"getStyles"),Kge=oJe});var Zge={};hr(Zge,{diagram:()=>lJe});var lJe,Jge=N(()=>{"use strict";Spe();_pe();jge();Qge();lJe={db:Ape,renderer:Xge,parser:Epe,styles:Kge}});var DB,r1e,n1e=N(()=>{"use strict";DB=function(){var t=o(function(A,S,_,I){for(_=_||{},I=A.length;I--;_[A[I]]=S);return _},"o"),e=[1,4],r=[1,13],n=[1,12],i=[1,15],a=[1,16],s=[1,20],l=[1,19],u=[6,7,8],h=[1,26],f=[1,24],d=[1,25],p=[6,7,11],m=[1,31],g=[6,7,11,24],y=[1,6,13,16,17,20,23],v=[1,35],x=[1,36],b=[1,6,7,11,13,16,17,20,23],w=[1,38],C={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,KANBAN:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,shapeData:15,ICON:16,CLASS:17,nodeWithId:18,nodeWithoutId:19,NODE_DSTART:20,NODE_DESCR:21,NODE_DEND:22,NODE_ID:23,SHAPE_DATA:24,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"KANBAN",11:"EOF",13:"SPACELIST",16:"ICON",17:"CLASS",20:"NODE_DSTART",21:"NODE_DESCR",22:"NODE_DEND",23:"NODE_ID",24:"SHAPE_DATA"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,3],[12,2],[12,2],[12,2],[12,1],[12,2],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[19,3],[18,1],[18,4],[15,2],[15,1]],performAction:o(function(S,_,I,D,k,L,R){var O=L.length-1;switch(k){case 6:case 7:return D;case 8:D.getLogger().trace("Stop NL ");break;case 9:D.getLogger().trace("Stop EOF ");break;case 11:D.getLogger().trace("Stop NL2 ");break;case 12:D.getLogger().trace("Stop EOF2 ");break;case 15:D.getLogger().info("Node: ",L[O-1].id),D.addNode(L[O-2].length,L[O-1].id,L[O-1].descr,L[O-1].type,L[O]);break;case 16:D.getLogger().info("Node: ",L[O].id),D.addNode(L[O-1].length,L[O].id,L[O].descr,L[O].type);break;case 17:D.getLogger().trace("Icon: ",L[O]),D.decorateNode({icon:L[O]});break;case 18:case 23:D.decorateNode({class:L[O]});break;case 19:D.getLogger().trace("SPACELIST");break;case 20:D.getLogger().trace("Node: ",L[O-1].id),D.addNode(0,L[O-1].id,L[O-1].descr,L[O-1].type,L[O]);break;case 21:D.getLogger().trace("Node: ",L[O].id),D.addNode(0,L[O].id,L[O].descr,L[O].type);break;case 22:D.decorateNode({icon:L[O]});break;case 27:D.getLogger().trace("node found ..",L[O-2]),this.$={id:L[O-1],descr:L[O-1],type:D.getType(L[O-2],L[O])};break;case 28:this.$={id:L[O],descr:L[O],type:0};break;case 29:D.getLogger().trace("node found ..",L[O-3]),this.$={id:L[O-3],descr:L[O-1],type:D.getType(L[O-2],L[O])};break;case 30:this.$=L[O-1]+L[O];break;case 31:this.$=L[O];break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:e},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:e},{6:r,7:[1,10],9:9,12:11,13:n,14:14,16:i,17:a,18:17,19:18,20:s,23:l},t(u,[2,3]),{1:[2,2]},t(u,[2,4]),t(u,[2,5]),{1:[2,6],6:r,12:21,13:n,14:14,16:i,17:a,18:17,19:18,20:s,23:l},{6:r,9:22,12:11,13:n,14:14,16:i,17:a,18:17,19:18,20:s,23:l},{6:h,7:f,10:23,11:d},t(p,[2,24],{18:17,19:18,14:27,16:[1,28],17:[1,29],20:s,23:l}),t(p,[2,19]),t(p,[2,21],{15:30,24:m}),t(p,[2,22]),t(p,[2,23]),t(g,[2,25]),t(g,[2,26]),t(g,[2,28],{20:[1,32]}),{21:[1,33]},{6:h,7:f,10:34,11:d},{1:[2,7],6:r,12:21,13:n,14:14,16:i,17:a,18:17,19:18,20:s,23:l},t(y,[2,14],{7:v,11:x}),t(b,[2,8]),t(b,[2,9]),t(b,[2,10]),t(p,[2,16],{15:37,24:m}),t(p,[2,17]),t(p,[2,18]),t(p,[2,20],{24:w}),t(g,[2,31]),{21:[1,39]},{22:[1,40]},t(y,[2,13],{7:v,11:x}),t(b,[2,11]),t(b,[2,12]),t(p,[2,15],{24:w}),t(g,[2,30]),{22:[1,41]},t(g,[2,27]),t(g,[2,29])],defaultActions:{2:[2,1],6:[2,2]},parseError:o(function(S,_){if(_.recoverable)this.trace(S);else{var I=new Error(S);throw I.hash=_,I}},"parseError"),parse:o(function(S){var _=this,I=[0],D=[],k=[null],L=[],R=this.table,O="",M=0,B=0,F=0,P=2,z=1,$=L.slice.call(arguments,1),H=Object.create(this.lexer),Q={yy:{}};for(var j in this.yy)Object.prototype.hasOwnProperty.call(this.yy,j)&&(Q.yy[j]=this.yy[j]);H.setInput(S,Q.yy),Q.yy.lexer=H,Q.yy.parser=this,typeof H.yylloc>"u"&&(H.yylloc={});var ie=H.yylloc;L.push(ie);var ne=H.options&&H.options.ranges;typeof Q.yy.parseError=="function"?this.parseError=Q.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function le(ze){I.length=I.length-2*ze,k.length=k.length-ze,L.length=L.length-ze}o(le,"popStack");function he(){var ze;return ze=D.pop()||H.lex()||z,typeof ze!="number"&&(ze instanceof Array&&(D=ze,ze=D.pop()),ze=_.symbols_[ze]||ze),ze}o(he,"lex");for(var K,X,te,J,se,ue,Z={},Se,ce,ae,Oe;;){if(te=I[I.length-1],this.defaultActions[te]?J=this.defaultActions[te]:((K===null||typeof K>"u")&&(K=he()),J=R[te]&&R[te][K]),typeof J>"u"||!J.length||!J[0]){var ge="";Oe=[];for(Se in R[te])this.terminals_[Se]&&Se>P&&Oe.push("'"+this.terminals_[Se]+"'");H.showPosition?ge="Parse error on line "+(M+1)+`: +`+H.showPosition()+` +Expecting `+Oe.join(", ")+", got '"+(this.terminals_[K]||K)+"'":ge="Parse error on line "+(M+1)+": Unexpected "+(K==z?"end of input":"'"+(this.terminals_[K]||K)+"'"),this.parseError(ge,{text:H.match,token:this.terminals_[K]||K,line:H.yylineno,loc:ie,expected:Oe})}if(J[0]instanceof Array&&J.length>1)throw new Error("Parse Error: multiple actions possible at state: "+te+", token: "+K);switch(J[0]){case 1:I.push(K),k.push(H.yytext),L.push(H.yylloc),I.push(J[1]),K=null,X?(K=X,X=null):(B=H.yyleng,O=H.yytext,M=H.yylineno,ie=H.yylloc,F>0&&F--);break;case 2:if(ce=this.productions_[J[1]][1],Z.$=k[k.length-ce],Z._$={first_line:L[L.length-(ce||1)].first_line,last_line:L[L.length-1].last_line,first_column:L[L.length-(ce||1)].first_column,last_column:L[L.length-1].last_column},ne&&(Z._$.range=[L[L.length-(ce||1)].range[0],L[L.length-1].range[1]]),ue=this.performAction.apply(Z,[O,B,M,Q.yy,J[1],k,L].concat($)),typeof ue<"u")return ue;ce&&(I=I.slice(0,-1*ce*2),k=k.slice(0,-1*ce),L=L.slice(0,-1*ce)),I.push(this.productions_[J[1]][0]),k.push(Z.$),L.push(Z._$),ae=R[I[I.length-2]][I[I.length-1]],I.push(ae);break;case 3:return!0}}return!0},"parse")},T=function(){var A={EOF:1,parseError:o(function(_,I){if(this.yy.parser)this.yy.parser.parseError(_,I);else throw new Error(_)},"parseError"),setInput:o(function(S,_){return this.yy=_||this.yy||{},this._input=S,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var S=this._input[0];this.yytext+=S,this.yyleng++,this.offset++,this.match+=S,this.matched+=S;var _=S.match(/(?:\r\n?|\n).*/g);return _?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),S},"input"),unput:o(function(S){var _=S.length,I=S.split(/(?:\r\n?|\n)/g);this._input=S+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-_),this.offset-=_;var D=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),I.length-1&&(this.yylineno-=I.length-1);var k=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:I?(I.length===D.length?this.yylloc.first_column:0)+D[D.length-I.length].length-I[0].length:this.yylloc.first_column-_},this.options.ranges&&(this.yylloc.range=[k[0],k[0]+this.yyleng-_]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(S){this.unput(this.match.slice(S))},"less"),pastInput:o(function(){var S=this.matched.substr(0,this.matched.length-this.match.length);return(S.length>20?"...":"")+S.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var S=this.match;return S.length<20&&(S+=this._input.substr(0,20-S.length)),(S.substr(0,20)+(S.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var S=this.pastInput(),_=new Array(S.length+1).join("-");return S+this.upcomingInput()+` +`+_+"^"},"showPosition"),test_match:o(function(S,_){var I,D,k;if(this.options.backtrack_lexer&&(k={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(k.yylloc.range=this.yylloc.range.slice(0))),D=S[0].match(/(?:\r\n?|\n).*/g),D&&(this.yylineno+=D.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:D?D[D.length-1].length-D[D.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+S[0].length},this.yytext+=S[0],this.match+=S[0],this.matches=S,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(S[0].length),this.matched+=S[0],I=this.performAction.call(this,this.yy,this,_,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),I)return I;if(this._backtrack){for(var L in k)this[L]=k[L];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var S,_,I,D;this._more||(this.yytext="",this.match="");for(var k=this._currentRules(),L=0;L_[0].length)){if(_=I,D=L,this.options.backtrack_lexer){if(S=this.test_match(I,k[L]),S!==!1)return S;if(this._backtrack){_=!1;continue}else return!1}else if(!this.options.flex)break}return _?(S=this.test_match(_,k[D]),S!==!1?S:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var _=this.next();return _||this.lex()},"lex"),begin:o(function(_){this.conditionStack.push(_)},"begin"),popState:o(function(){var _=this.conditionStack.length-1;return _>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(_){return _=this.conditionStack.length-1-Math.abs(_||0),_>=0?this.conditionStack[_]:"INITIAL"},"topState"),pushState:o(function(_){this.begin(_)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(_,I,D,k){var L=k;switch(D){case 0:return this.pushState("shapeData"),I.yytext="",24;break;case 1:return this.pushState("shapeDataStr"),24;break;case 2:return this.popState(),24;break;case 3:let R=/\n\s*/g;return I.yytext=I.yytext.replace(R,"
    "),24;break;case 4:return 24;case 5:this.popState();break;case 6:return _.getLogger().trace("Found comment",I.yytext),6;break;case 7:return 8;case 8:this.begin("CLASS");break;case 9:return this.popState(),17;break;case 10:this.popState();break;case 11:_.getLogger().trace("Begin icon"),this.begin("ICON");break;case 12:return _.getLogger().trace("SPACELINE"),6;break;case 13:return 7;case 14:return 16;case 15:_.getLogger().trace("end icon"),this.popState();break;case 16:return _.getLogger().trace("Exploding node"),this.begin("NODE"),20;break;case 17:return _.getLogger().trace("Cloud"),this.begin("NODE"),20;break;case 18:return _.getLogger().trace("Explosion Bang"),this.begin("NODE"),20;break;case 19:return _.getLogger().trace("Cloud Bang"),this.begin("NODE"),20;break;case 20:return this.begin("NODE"),20;break;case 21:return this.begin("NODE"),20;break;case 22:return this.begin("NODE"),20;break;case 23:return this.begin("NODE"),20;break;case 24:return 13;case 25:return 23;case 26:return 11;case 27:this.begin("NSTR2");break;case 28:return"NODE_DESCR";case 29:this.popState();break;case 30:_.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 31:return _.getLogger().trace("description:",I.yytext),"NODE_DESCR";break;case 32:this.popState();break;case 33:return this.popState(),_.getLogger().trace("node end ))"),"NODE_DEND";break;case 34:return this.popState(),_.getLogger().trace("node end )"),"NODE_DEND";break;case 35:return this.popState(),_.getLogger().trace("node end ...",I.yytext),"NODE_DEND";break;case 36:return this.popState(),_.getLogger().trace("node end (("),"NODE_DEND";break;case 37:return this.popState(),_.getLogger().trace("node end (-"),"NODE_DEND";break;case 38:return this.popState(),_.getLogger().trace("node end (-"),"NODE_DEND";break;case 39:return this.popState(),_.getLogger().trace("node end (("),"NODE_DEND";break;case 40:return this.popState(),_.getLogger().trace("node end (("),"NODE_DEND";break;case 41:return _.getLogger().trace("Long description:",I.yytext),21;break;case 42:return _.getLogger().trace("Long description:",I.yytext),21;break}},"anonymous"),rules:[/^(?:@\{)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^\"]+)/i,/^(?:[^}^"]+)/i,/^(?:\})/i,/^(?:\s*%%.*)/i,/^(?:kanban\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}@]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{shapeDataEndBracket:{rules:[],inclusive:!1},shapeDataStr:{rules:[2,3],inclusive:!1},shapeData:{rules:[1,4,5],inclusive:!1},CLASS:{rules:[9,10],inclusive:!1},ICON:{rules:[14,15],inclusive:!1},NSTR2:{rules:[28,29],inclusive:!1},NSTR:{rules:[31,32],inclusive:!1},NODE:{rules:[27,30,33,34,35,36,37,38,39,40,41,42],inclusive:!1},INITIAL:{rules:[0,6,7,8,11,12,13,16,17,18,19,20,21,22,23,24,25,26],inclusive:!0}}};return A}();C.lexer=T;function E(){this.yy={}}return o(E,"Parser"),E.prototype=C,C.Parser=E,new E}();DB.parser=DB;r1e=DB});var nl,RB,LB,NB,fJe,dJe,i1e,pJe,mJe,Yi,gJe,yJe,vJe,xJe,bJe,wJe,TJe,a1e,s1e=N(()=>{"use strict";zt();gr();vt();Ya();Ew();nl=[],RB=[],LB=0,NB={},fJe=o(()=>{nl=[],RB=[],LB=0,NB={}},"clear"),dJe=o(t=>{if(nl.length===0)return null;let e=nl[0].level,r=null;for(let n=nl.length-1;n>=0;n--)if(nl[n].level===e&&!r&&(r=nl[n]),nl[n].levell.parentId===i.id);for(let l of s){let u={id:l.id,parentId:i.id,label:Tr(l.label??"",n),isGroup:!1,ticket:l?.ticket,priority:l?.priority,assigned:l?.assigned,icon:l?.icon,shape:"kanbanItem",level:l.level,rx:5,ry:5,cssStyles:["text-align: left"]};e.push(u)}}return{nodes:e,edges:t,other:{},config:me()}},"getData"),mJe=o((t,e,r,n,i)=>{let a=me(),s=a.mindmap?.padding??or.mindmap.padding;switch(n){case Yi.ROUNDED_RECT:case Yi.RECT:case Yi.HEXAGON:s*=2}let l={id:Tr(e,a)||"kbn"+LB++,level:t,label:Tr(r,a),width:a.mindmap?.maxNodeWidth??or.mindmap.maxNodeWidth,padding:s,isGroup:!1};if(i!==void 0){let h;i.includes(` +`)?h=i+` +`:h=`{ +`+i+` +}`;let f=cm(h,{schema:lm});if(f.shape&&(f.shape!==f.shape.toLowerCase()||f.shape.includes("_")))throw new Error(`No such shape: ${f.shape}. Shape names should be lowercase.`);f?.shape&&f.shape==="kanbanItem"&&(l.shape=f?.shape),f?.label&&(l.label=f?.label),f?.icon&&(l.icon=f?.icon.toString()),f?.assigned&&(l.assigned=f?.assigned.toString()),f?.ticket&&(l.ticket=f?.ticket.toString()),f?.priority&&(l.priority=f?.priority)}let u=dJe(t);u?l.parentId=u.id||"kbn"+LB++:RB.push(l),nl.push(l)},"addNode"),Yi={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},gJe=o((t,e)=>{switch(Y.debug("In get type",t,e),t){case"[":return Yi.RECT;case"(":return e===")"?Yi.ROUNDED_RECT:Yi.CLOUD;case"((":return Yi.CIRCLE;case")":return Yi.CLOUD;case"))":return Yi.BANG;case"{{":return Yi.HEXAGON;default:return Yi.DEFAULT}},"getType"),yJe=o((t,e)=>{NB[t]=e},"setElementForId"),vJe=o(t=>{if(!t)return;let e=me(),r=nl[nl.length-1];t.icon&&(r.icon=Tr(t.icon,e)),t.class&&(r.cssClasses=Tr(t.class,e))},"decorateNode"),xJe=o(t=>{switch(t){case Yi.DEFAULT:return"no-border";case Yi.RECT:return"rect";case Yi.ROUNDED_RECT:return"rounded-rect";case Yi.CIRCLE:return"circle";case Yi.CLOUD:return"cloud";case Yi.BANG:return"bang";case Yi.HEXAGON:return"hexgon";default:return"no-border"}},"type2Str"),bJe=o(()=>Y,"getLogger"),wJe=o(t=>NB[t],"getElementById"),TJe={clear:fJe,addNode:mJe,getSections:i1e,getData:pJe,nodeType:Yi,getType:gJe,setElementForId:yJe,decorateNode:vJe,type2Str:xJe,getLogger:bJe,getElementById:wJe},a1e=TJe});var kJe,o1e,l1e=N(()=>{"use strict";zt();vt();Vc();Ei();Ya();Hw();eT();kJe=o(async(t,e,r,n)=>{Y.debug(`Rendering kanban diagram +`+t);let a=n.db.getData(),s=me();s.htmlLabels=!1;let l=sa(e),u=l.append("g");u.attr("class","sections");let h=l.append("g");h.attr("class","items");let f=a.nodes.filter(v=>v.isGroup),d=0,p=10,m=[],g=25;for(let v of f){let x=s?.kanban?.sectionWidth||200;d=d+1,v.x=x*d+(d-1)*p/2,v.width=x,v.y=0,v.height=x*3,v.rx=5,v.ry=5,v.cssClasses=v.cssClasses+" section-"+d;let b=await ym(u,v);g=Math.max(g,b?.labelBBox?.height),m.push(b)}let y=0;for(let v of f){let x=m[y];y=y+1;let b=s?.kanban?.sectionWidth||200,w=-b*3/2+g,C=w,T=a.nodes.filter(S=>S.parentId===v.id);for(let S of T){if(S.isGroup)throw new Error("Groups within groups are not allowed in Kanban diagrams");S.x=v.x,S.width=b-1.5*p;let I=(await vm(h,S,{config:s})).node().getBBox();S.y=C+I.height/2,await k2(S),C=S.y+I.height/2+p/2}let E=x.cluster.select("rect"),A=Math.max(C-w+3*p,50)+(g-25);E.attr("height",A)}Ao(void 0,l,s.mindmap?.padding??or.kanban.padding,s.mindmap?.useMaxWidth??or.kanban.useMaxWidth)},"draw"),o1e={draw:kJe}});var EJe,SJe,c1e,u1e=N(()=>{"use strict";Ys();EJe=o(t=>{let e="";for(let n=0;nt.darkMode?Ot(n,i):Dt(n,i),"adjuster");for(let n=0;n` + .edge { + stroke-width: 3; + } + ${EJe(t)} + .section-root rect, .section-root path, .section-root circle, .section-root polygon { + fill: ${t.git0}; + } + .section-root text { + fill: ${t.gitBranchLabel0}; + } + .icon-container { + height:100%; + display: flex; + justify-content: center; + align-items: center; + } + .edge { + fill: none; + } + .cluster-label, .label { + color: ${t.textColor}; + fill: ${t.textColor}; + } + .kanban-label { + dy: 1em; + alignment-baseline: middle; + text-anchor: middle; + dominant-baseline: middle; + text-align: center; + } +`,"getStyles"),c1e=SJe});var h1e={};hr(h1e,{diagram:()=>CJe});var CJe,f1e=N(()=>{"use strict";n1e();s1e();l1e();u1e();CJe={db:a1e,renderer:o1e,parser:r1e,styles:c1e}});var MB,d4,m1e=N(()=>{"use strict";MB=function(){var t=o(function(l,u,h,f){for(h=h||{},f=l.length;f--;h[l[f]]=u);return h},"o"),e=[1,9],r=[1,10],n=[1,5,10,12],i={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:o(function(u,h,f,d,p,m,g){var y=m.length-1;switch(p){case 7:let v=d.findOrCreateNode(m[y-4].trim().replaceAll('""','"')),x=d.findOrCreateNode(m[y-2].trim().replaceAll('""','"')),b=parseFloat(m[y].trim());d.addLink(v,x,b);break;case 8:case 9:case 11:this.$=m[y];break;case 10:this.$=m[y-1];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:e,20:r},{1:[2,6],7:11,10:[1,12]},t(r,[2,4],{9:13,5:[1,14]}),{12:[1,15]},t(n,[2,8]),t(n,[2,9]),{19:[1,16]},t(n,[2,11]),{1:[2,1]},{1:[2,5]},t(r,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:e,20:r},{15:18,16:7,17:8,18:e,20:r},{18:[1,19]},t(r,[2,3]),{12:[1,20]},t(n,[2,10]),{15:21,16:7,17:8,18:e,20:r},t([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:o(function(u,h){if(h.recoverable)this.trace(u);else{var f=new Error(u);throw f.hash=h,f}},"parseError"),parse:o(function(u){var h=this,f=[0],d=[],p=[null],m=[],g=this.table,y="",v=0,x=0,b=0,w=2,C=1,T=m.slice.call(arguments,1),E=Object.create(this.lexer),A={yy:{}};for(var S in this.yy)Object.prototype.hasOwnProperty.call(this.yy,S)&&(A.yy[S]=this.yy[S]);E.setInput(u,A.yy),A.yy.lexer=E,A.yy.parser=this,typeof E.yylloc>"u"&&(E.yylloc={});var _=E.yylloc;m.push(_);var I=E.options&&E.options.ranges;typeof A.yy.parseError=="function"?this.parseError=A.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function D(ie){f.length=f.length-2*ie,p.length=p.length-ie,m.length=m.length-ie}o(D,"popStack");function k(){var ie;return ie=d.pop()||E.lex()||C,typeof ie!="number"&&(ie instanceof Array&&(d=ie,ie=d.pop()),ie=h.symbols_[ie]||ie),ie}o(k,"lex");for(var L,R,O,M,B,F,P={},z,$,H,Q;;){if(O=f[f.length-1],this.defaultActions[O]?M=this.defaultActions[O]:((L===null||typeof L>"u")&&(L=k()),M=g[O]&&g[O][L]),typeof M>"u"||!M.length||!M[0]){var j="";Q=[];for(z in g[O])this.terminals_[z]&&z>w&&Q.push("'"+this.terminals_[z]+"'");E.showPosition?j="Parse error on line "+(v+1)+`: +`+E.showPosition()+` +Expecting `+Q.join(", ")+", got '"+(this.terminals_[L]||L)+"'":j="Parse error on line "+(v+1)+": Unexpected "+(L==C?"end of input":"'"+(this.terminals_[L]||L)+"'"),this.parseError(j,{text:E.match,token:this.terminals_[L]||L,line:E.yylineno,loc:_,expected:Q})}if(M[0]instanceof Array&&M.length>1)throw new Error("Parse Error: multiple actions possible at state: "+O+", token: "+L);switch(M[0]){case 1:f.push(L),p.push(E.yytext),m.push(E.yylloc),f.push(M[1]),L=null,R?(L=R,R=null):(x=E.yyleng,y=E.yytext,v=E.yylineno,_=E.yylloc,b>0&&b--);break;case 2:if($=this.productions_[M[1]][1],P.$=p[p.length-$],P._$={first_line:m[m.length-($||1)].first_line,last_line:m[m.length-1].last_line,first_column:m[m.length-($||1)].first_column,last_column:m[m.length-1].last_column},I&&(P._$.range=[m[m.length-($||1)].range[0],m[m.length-1].range[1]]),F=this.performAction.apply(P,[y,x,v,A.yy,M[1],p,m].concat(T)),typeof F<"u")return F;$&&(f=f.slice(0,-1*$*2),p=p.slice(0,-1*$),m=m.slice(0,-1*$)),f.push(this.productions_[M[1]][0]),p.push(P.$),m.push(P._$),H=g[f[f.length-2]][f[f.length-1]],f.push(H);break;case 3:return!0}}return!0},"parse")},a=function(){var l={EOF:1,parseError:o(function(h,f){if(this.yy.parser)this.yy.parser.parseError(h,f);else throw new Error(h)},"parseError"),setInput:o(function(u,h){return this.yy=h||this.yy||{},this._input=u,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var u=this._input[0];this.yytext+=u,this.yyleng++,this.offset++,this.match+=u,this.matched+=u;var h=u.match(/(?:\r\n?|\n).*/g);return h?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),u},"input"),unput:o(function(u){var h=u.length,f=u.split(/(?:\r\n?|\n)/g);this._input=u+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-h),this.offset-=h;var d=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),f.length-1&&(this.yylineno-=f.length-1);var p=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:f?(f.length===d.length?this.yylloc.first_column:0)+d[d.length-f.length].length-f[0].length:this.yylloc.first_column-h},this.options.ranges&&(this.yylloc.range=[p[0],p[0]+this.yyleng-h]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(u){this.unput(this.match.slice(u))},"less"),pastInput:o(function(){var u=this.matched.substr(0,this.matched.length-this.match.length);return(u.length>20?"...":"")+u.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var u=this.match;return u.length<20&&(u+=this._input.substr(0,20-u.length)),(u.substr(0,20)+(u.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var u=this.pastInput(),h=new Array(u.length+1).join("-");return u+this.upcomingInput()+` +`+h+"^"},"showPosition"),test_match:o(function(u,h){var f,d,p;if(this.options.backtrack_lexer&&(p={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(p.yylloc.range=this.yylloc.range.slice(0))),d=u[0].match(/(?:\r\n?|\n).*/g),d&&(this.yylineno+=d.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:d?d[d.length-1].length-d[d.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+u[0].length},this.yytext+=u[0],this.match+=u[0],this.matches=u,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(u[0].length),this.matched+=u[0],f=this.performAction.call(this,this.yy,this,h,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),f)return f;if(this._backtrack){for(var m in p)this[m]=p[m];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var u,h,f,d;this._more||(this.yytext="",this.match="");for(var p=this._currentRules(),m=0;mh[0].length)){if(h=f,d=m,this.options.backtrack_lexer){if(u=this.test_match(f,p[m]),u!==!1)return u;if(this._backtrack){h=!1;continue}else return!1}else if(!this.options.flex)break}return h?(u=this.test_match(h,p[d]),u!==!1?u:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var h=this.next();return h||this.lex()},"lex"),begin:o(function(h){this.conditionStack.push(h)},"begin"),popState:o(function(){var h=this.conditionStack.length-1;return h>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(h){return h=this.conditionStack.length-1-Math.abs(h||0),h>=0?this.conditionStack[h]:"INITIAL"},"topState"),pushState:o(function(h){this.begin(h)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(h,f,d,p){var m=p;switch(d){case 0:return this.pushState("csv"),4;break;case 1:return 10;case 2:return 5;case 3:return 12;case 4:return this.pushState("escaped_text"),18;break;case 5:return 20;case 6:return this.popState("escaped_text"),18;break;case 7:return 19}},"anonymous"),rules:[/^(?:sankey-beta\b)/i,/^(?:$)/i,/^(?:((\u000D\u000A)|(\u000A)))/i,/^(?:(\u002C))/i,/^(?:(\u0022))/i,/^(?:([\u0020-\u0021\u0023-\u002B\u002D-\u007E])*)/i,/^(?:(\u0022)(?!(\u0022)))/i,/^(?:(([\u0020-\u0021\u0023-\u002B\u002D-\u007E])|(\u002C)|(\u000D)|(\u000A)|(\u0022)(\u0022))*)/i],conditions:{csv:{rules:[1,2,3,4,5,6,7],inclusive:!1},escaped_text:{rules:[6,7],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7],inclusive:!0}}};return l}();i.lexer=a;function s(){this.yy={}}return o(s,"Parser"),s.prototype=i,i.Parser=s,new s}();MB.parser=MB;d4=MB});var XS,jS,YS,LJe,IB,RJe,OB,NJe,MJe,IJe,OJe,g1e,y1e=N(()=>{"use strict";zt();gr();mi();XS=[],jS=[],YS=new Map,LJe=o(()=>{XS=[],jS=[],YS=new Map,Ar()},"clear"),IB=class{constructor(e,r,n=0){this.source=e;this.target=r;this.value=n}static{o(this,"SankeyLink")}},RJe=o((t,e,r)=>{XS.push(new IB(t,e,r))},"addLink"),OB=class{constructor(e){this.ID=e}static{o(this,"SankeyNode")}},NJe=o(t=>{t=Ze.sanitizeText(t,me());let e=YS.get(t);return e===void 0&&(e=new OB(t),YS.set(t,e),jS.push(e)),e},"findOrCreateNode"),MJe=o(()=>jS,"getNodes"),IJe=o(()=>XS,"getLinks"),OJe=o(()=>({nodes:jS.map(t=>({id:t.ID})),links:XS.map(t=>({source:t.source.ID,target:t.target.ID,value:t.value}))}),"getGraph"),g1e={nodesMap:YS,getConfig:o(()=>me().sankey,"getConfig"),getNodes:MJe,getLinks:IJe,getGraph:OJe,addLink:RJe,findOrCreateNode:NJe,getAccTitle:Rr,setAccTitle:Lr,getAccDescription:Mr,setAccDescription:Nr,getDiagramTitle:Ir,setDiagramTitle:$r,clear:LJe}});function p4(t,e){let r;if(e===void 0)for(let n of t)n!=null&&(r=n)&&(r=n);else{let n=-1;for(let i of t)(i=e(i,++n,t))!=null&&(r=i)&&(r=i)}return r}var v1e=N(()=>{"use strict";o(p4,"max")});function cy(t,e){let r;if(e===void 0)for(let n of t)n!=null&&(r>n||r===void 0&&n>=n)&&(r=n);else{let n=-1;for(let i of t)(i=e(i,++n,t))!=null&&(r>i||r===void 0&&i>=i)&&(r=i)}return r}var x1e=N(()=>{"use strict";o(cy,"min")});function uy(t,e){let r=0;if(e===void 0)for(let n of t)(n=+n)&&(r+=n);else{let n=-1;for(let i of t)(i=+e(i,++n,t))&&(r+=i)}return r}var b1e=N(()=>{"use strict";o(uy,"sum")});var PB=N(()=>{"use strict";v1e();x1e();b1e()});function PJe(t){return t.target.depth}function BB(t){return t.depth}function FB(t,e){return e-1-t.height}function m4(t,e){return t.sourceLinks.length?t.depth:e-1}function $B(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?cy(t.sourceLinks,PJe)-1:0}var zB=N(()=>{"use strict";PB();o(PJe,"targetDepth");o(BB,"left");o(FB,"right");o(m4,"justify");o($B,"center")});function hy(t){return function(){return t}}var w1e=N(()=>{"use strict";o(hy,"constant")});function T1e(t,e){return KS(t.source,e.source)||t.index-e.index}function k1e(t,e){return KS(t.target,e.target)||t.index-e.index}function KS(t,e){return t.y0-e.y0}function GB(t){return t.value}function BJe(t){return t.index}function FJe(t){return t.nodes}function $Je(t){return t.links}function E1e(t,e){let r=t.get(e);if(!r)throw new Error("missing: "+e);return r}function S1e({nodes:t}){for(let e of t){let r=e.y0,n=r;for(let i of e.sourceLinks)i.y0=r+i.width/2,r+=i.width;for(let i of e.targetLinks)i.y1=n+i.width/2,n+=i.width}}function QS(){let t=0,e=0,r=1,n=1,i=24,a=8,s,l=BJe,u=m4,h,f,d=FJe,p=$Je,m=6;function g(){let O={nodes:d.apply(null,arguments),links:p.apply(null,arguments)};return y(O),v(O),x(O),b(O),T(O),S1e(O),O}o(g,"sankey"),g.update=function(O){return S1e(O),O},g.nodeId=function(O){return arguments.length?(l=typeof O=="function"?O:hy(O),g):l},g.nodeAlign=function(O){return arguments.length?(u=typeof O=="function"?O:hy(O),g):u},g.nodeSort=function(O){return arguments.length?(h=O,g):h},g.nodeWidth=function(O){return arguments.length?(i=+O,g):i},g.nodePadding=function(O){return arguments.length?(a=s=+O,g):a},g.nodes=function(O){return arguments.length?(d=typeof O=="function"?O:hy(O),g):d},g.links=function(O){return arguments.length?(p=typeof O=="function"?O:hy(O),g):p},g.linkSort=function(O){return arguments.length?(f=O,g):f},g.size=function(O){return arguments.length?(t=e=0,r=+O[0],n=+O[1],g):[r-t,n-e]},g.extent=function(O){return arguments.length?(t=+O[0][0],r=+O[1][0],e=+O[0][1],n=+O[1][1],g):[[t,e],[r,n]]},g.iterations=function(O){return arguments.length?(m=+O,g):m};function y({nodes:O,links:M}){for(let[F,P]of O.entries())P.index=F,P.sourceLinks=[],P.targetLinks=[];let B=new Map(O.map((F,P)=>[l(F,P,O),F]));for(let[F,P]of M.entries()){P.index=F;let{source:z,target:$}=P;typeof z!="object"&&(z=P.source=E1e(B,z)),typeof $!="object"&&($=P.target=E1e(B,$)),z.sourceLinks.push(P),$.targetLinks.push(P)}if(f!=null)for(let{sourceLinks:F,targetLinks:P}of O)F.sort(f),P.sort(f)}o(y,"computeNodeLinks");function v({nodes:O}){for(let M of O)M.value=M.fixedValue===void 0?Math.max(uy(M.sourceLinks,GB),uy(M.targetLinks,GB)):M.fixedValue}o(v,"computeNodeValues");function x({nodes:O}){let M=O.length,B=new Set(O),F=new Set,P=0;for(;B.size;){for(let z of B){z.depth=P;for(let{target:$}of z.sourceLinks)F.add($)}if(++P>M)throw new Error("circular link");B=F,F=new Set}}o(x,"computeNodeDepths");function b({nodes:O}){let M=O.length,B=new Set(O),F=new Set,P=0;for(;B.size;){for(let z of B){z.height=P;for(let{source:$}of z.targetLinks)F.add($)}if(++P>M)throw new Error("circular link");B=F,F=new Set}}o(b,"computeNodeHeights");function w({nodes:O}){let M=p4(O,P=>P.depth)+1,B=(r-t-i)/(M-1),F=new Array(M);for(let P of O){let z=Math.max(0,Math.min(M-1,Math.floor(u.call(null,P,M))));P.layer=z,P.x0=t+z*B,P.x1=P.x0+i,F[z]?F[z].push(P):F[z]=[P]}if(h)for(let P of F)P.sort(h);return F}o(w,"computeNodeLayers");function C(O){let M=cy(O,B=>(n-e-(B.length-1)*s)/uy(B,GB));for(let B of O){let F=e;for(let P of B){P.y0=F,P.y1=F+P.value*M,F=P.y1+s;for(let z of P.sourceLinks)z.width=z.value*M}F=(n-F+s)/(B.length+1);for(let P=0;PB.length)-1)),C(M);for(let B=0;B0))continue;let j=(H/Q-$.y0)*M;$.y0+=j,$.y1+=j,D($)}h===void 0&&z.sort(KS),S(z,B)}}o(E,"relaxLeftToRight");function A(O,M,B){for(let F=O.length,P=F-2;P>=0;--P){let z=O[P];for(let $ of z){let H=0,Q=0;for(let{target:ie,value:ne}of $.sourceLinks){let le=ne*(ie.layer-$.layer);H+=R($,ie)*le,Q+=le}if(!(Q>0))continue;let j=(H/Q-$.y0)*M;$.y0+=j,$.y1+=j,D($)}h===void 0&&z.sort(KS),S(z,B)}}o(A,"relaxRightToLeft");function S(O,M){let B=O.length>>1,F=O[B];I(O,F.y0-s,B-1,M),_(O,F.y1+s,B+1,M),I(O,n,O.length-1,M),_(O,e,0,M)}o(S,"resolveCollisions");function _(O,M,B,F){for(;B1e-6&&(P.y0+=z,P.y1+=z),M=P.y1+s}}o(_,"resolveCollisionsTopToBottom");function I(O,M,B,F){for(;B>=0;--B){let P=O[B],z=(P.y1-M)*F;z>1e-6&&(P.y0-=z,P.y1-=z),M=P.y0-s}}o(I,"resolveCollisionsBottomToTop");function D({sourceLinks:O,targetLinks:M}){if(f===void 0){for(let{source:{sourceLinks:B}}of M)B.sort(k1e);for(let{target:{targetLinks:B}}of O)B.sort(T1e)}}o(D,"reorderNodeLinks");function k(O){if(f===void 0)for(let{sourceLinks:M,targetLinks:B}of O)M.sort(k1e),B.sort(T1e)}o(k,"reorderLinks");function L(O,M){let B=O.y0-(O.sourceLinks.length-1)*s/2;for(let{target:F,width:P}of O.sourceLinks){if(F===M)break;B+=P+s}for(let{source:F,width:P}of M.targetLinks){if(F===O)break;B-=P}return B}o(L,"targetTop");function R(O,M){let B=M.y0-(M.targetLinks.length-1)*s/2;for(let{source:F,width:P}of M.targetLinks){if(F===O)break;B+=P+s}for(let{target:F,width:P}of O.sourceLinks){if(F===M)break;B-=P}return B}return o(R,"sourceTop"),g}var C1e=N(()=>{"use strict";PB();zB();w1e();o(T1e,"ascendingSourceBreadth");o(k1e,"ascendingTargetBreadth");o(KS,"ascendingBreadth");o(GB,"value");o(BJe,"defaultId");o(FJe,"defaultNodes");o($Je,"defaultLinks");o(E1e,"find");o(S1e,"computeLinkBreadths");o(QS,"Sankey")});function HB(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function A1e(){return new HB}var VB,UB,Xp,zJe,WB,_1e=N(()=>{"use strict";VB=Math.PI,UB=2*VB,Xp=1e-6,zJe=UB-Xp;o(HB,"Path");o(A1e,"path");HB.prototype=A1e.prototype={constructor:HB,moveTo:o(function(t,e){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)},"moveTo"),closePath:o(function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},"closePath"),lineTo:o(function(t,e){this._+="L"+(this._x1=+t)+","+(this._y1=+e)},"lineTo"),quadraticCurveTo:o(function(t,e,r,n){this._+="Q"+ +t+","+ +e+","+(this._x1=+r)+","+(this._y1=+n)},"quadraticCurveTo"),bezierCurveTo:o(function(t,e,r,n,i,a){this._+="C"+ +t+","+ +e+","+ +r+","+ +n+","+(this._x1=+i)+","+(this._y1=+a)},"bezierCurveTo"),arcTo:o(function(t,e,r,n,i){t=+t,e=+e,r=+r,n=+n,i=+i;var a=this._x1,s=this._y1,l=r-t,u=n-e,h=a-t,f=s-e,d=h*h+f*f;if(i<0)throw new Error("negative radius: "+i);if(this._x1===null)this._+="M"+(this._x1=t)+","+(this._y1=e);else if(d>Xp)if(!(Math.abs(f*l-u*h)>Xp)||!i)this._+="L"+(this._x1=t)+","+(this._y1=e);else{var p=r-a,m=n-s,g=l*l+u*u,y=p*p+m*m,v=Math.sqrt(g),x=Math.sqrt(d),b=i*Math.tan((VB-Math.acos((g+d-y)/(2*v*x)))/2),w=b/x,C=b/v;Math.abs(w-1)>Xp&&(this._+="L"+(t+w*h)+","+(e+w*f)),this._+="A"+i+","+i+",0,0,"+ +(f*p>h*m)+","+(this._x1=t+C*l)+","+(this._y1=e+C*u)}},"arcTo"),arc:o(function(t,e,r,n,i,a){t=+t,e=+e,r=+r,a=!!a;var s=r*Math.cos(n),l=r*Math.sin(n),u=t+s,h=e+l,f=1^a,d=a?n-i:i-n;if(r<0)throw new Error("negative radius: "+r);this._x1===null?this._+="M"+u+","+h:(Math.abs(this._x1-u)>Xp||Math.abs(this._y1-h)>Xp)&&(this._+="L"+u+","+h),r&&(d<0&&(d=d%UB+UB),d>zJe?this._+="A"+r+","+r+",0,1,"+f+","+(t-s)+","+(e-l)+"A"+r+","+r+",0,1,"+f+","+(this._x1=u)+","+(this._y1=h):d>Xp&&(this._+="A"+r+","+r+",0,"+ +(d>=VB)+","+f+","+(this._x1=t+r*Math.cos(i))+","+(this._y1=e+r*Math.sin(i))))},"arc"),rect:o(function(t,e,r,n){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)+"h"+ +r+"v"+ +n+"h"+-r+"Z"},"rect"),toString:o(function(){return this._},"toString")};WB=A1e});var D1e=N(()=>{"use strict";_1e()});function ZS(t){return o(function(){return t},"constant")}var L1e=N(()=>{"use strict";o(ZS,"default")});function R1e(t){return t[0]}function N1e(t){return t[1]}var M1e=N(()=>{"use strict";o(R1e,"x");o(N1e,"y")});var I1e,O1e=N(()=>{"use strict";I1e=Array.prototype.slice});function GJe(t){return t.source}function VJe(t){return t.target}function UJe(t){var e=GJe,r=VJe,n=R1e,i=N1e,a=null;function s(){var l,u=I1e.call(arguments),h=e.apply(this,u),f=r.apply(this,u);if(a||(a=l=WB()),t(a,+n.apply(this,(u[0]=h,u)),+i.apply(this,u),+n.apply(this,(u[0]=f,u)),+i.apply(this,u)),l)return a=null,l+""||null}return o(s,"link"),s.source=function(l){return arguments.length?(e=l,s):e},s.target=function(l){return arguments.length?(r=l,s):r},s.x=function(l){return arguments.length?(n=typeof l=="function"?l:ZS(+l),s):n},s.y=function(l){return arguments.length?(i=typeof l=="function"?l:ZS(+l),s):i},s.context=function(l){return arguments.length?(a=l??null,s):a},s}function HJe(t,e,r,n,i){t.moveTo(e,r),t.bezierCurveTo(e=(e+n)/2,r,e,i,n,i)}function qB(){return UJe(HJe)}var P1e=N(()=>{"use strict";D1e();O1e();L1e();M1e();o(GJe,"linkSource");o(VJe,"linkTarget");o(UJe,"link");o(HJe,"curveHorizontal");o(qB,"linkHorizontal")});var B1e=N(()=>{"use strict";P1e()});function WJe(t){return[t.source.x1,t.y0]}function qJe(t){return[t.target.x0,t.y1]}function JS(){return qB().source(WJe).target(qJe)}var F1e=N(()=>{"use strict";B1e();o(WJe,"horizontalSource");o(qJe,"horizontalTarget");o(JS,"default")});var $1e=N(()=>{"use strict";C1e();zB();F1e()});var g4,z1e=N(()=>{"use strict";g4=class t{static{o(this,"Uid")}static{this.count=0}static next(e){return new t(e+ ++t.count)}constructor(e){this.id=e,this.href=`#${e}`}toString(){return"url("+this.href+")"}}});var YJe,XJe,G1e,V1e=N(()=>{"use strict";zt();dr();$1e();Ei();z1e();YJe={left:BB,right:FB,center:$B,justify:m4},XJe=o(function(t,e,r,n){let{securityLevel:i,sankey:a}=me(),s=A3.sankey,l;i==="sandbox"&&(l=Ge("#i"+e));let u=i==="sandbox"?Ge(l.nodes()[0].contentDocument.body):Ge("body"),h=i==="sandbox"?u.select(`[id="${e}"]`):Ge(`[id="${e}"]`),f=a?.width??s.width,d=a?.height??s.width,p=a?.useMaxWidth??s.useMaxWidth,m=a?.nodeAlignment??s.nodeAlignment,g=a?.prefix??s.prefix,y=a?.suffix??s.suffix,v=a?.showValues??s.showValues,x=n.db.getGraph(),b=YJe[m];QS().nodeId(I=>I.id).nodeWidth(10).nodePadding(10+(v?15:0)).nodeAlign(b).extent([[0,0],[f,d]])(x);let T=gu(e9);h.append("g").attr("class","nodes").selectAll(".node").data(x.nodes).join("g").attr("class","node").attr("id",I=>(I.uid=g4.next("node-")).id).attr("transform",function(I){return"translate("+I.x0+","+I.y0+")"}).attr("x",I=>I.x0).attr("y",I=>I.y0).append("rect").attr("height",I=>I.y1-I.y0).attr("width",I=>I.x1-I.x0).attr("fill",I=>T(I.id));let E=o(({id:I,value:D})=>v?`${I} +${g}${Math.round(D*100)/100}${y}`:I,"getText");h.append("g").attr("class","node-labels").attr("font-size",14).selectAll("text").data(x.nodes).join("text").attr("x",I=>I.x0(I.y1+I.y0)/2).attr("dy",`${v?"0":"0.35"}em`).attr("text-anchor",I=>I.x0(D.uid=g4.next("linearGradient-")).id).attr("gradientUnits","userSpaceOnUse").attr("x1",D=>D.source.x1).attr("x2",D=>D.target.x0);I.append("stop").attr("offset","0%").attr("stop-color",D=>T(D.source.id)),I.append("stop").attr("offset","100%").attr("stop-color",D=>T(D.target.id))}let _;switch(S){case"gradient":_=o(I=>I.uid,"coloring");break;case"source":_=o(I=>T(I.source.id),"coloring");break;case"target":_=o(I=>T(I.target.id),"coloring");break;default:_=S}A.append("path").attr("d",JS()).attr("stroke",_).attr("stroke-width",I=>Math.max(1,I.width)),Ao(void 0,h,0,p)},"draw"),G1e={draw:XJe}});var U1e,H1e=N(()=>{"use strict";U1e=o(t=>t.replaceAll(/^[^\S\n\r]+|[^\S\n\r]+$/g,"").replaceAll(/([\n\r])+/g,` +`).trim(),"prepareTextForParsing")});var jJe,W1e,q1e=N(()=>{"use strict";jJe=o(t=>`.label { + font-family: ${t.fontFamily}; + }`,"getStyles"),W1e=jJe});var Y1e={};hr(Y1e,{diagram:()=>QJe});var KJe,QJe,X1e=N(()=>{"use strict";m1e();y1e();V1e();H1e();q1e();KJe=d4.parse.bind(d4);d4.parse=t=>KJe(U1e(t));QJe={styles:W1e,parser:d4,db:g1e,renderer:G1e}});var Q1e,YB,tet,ret,net,iet,aet,Bf,XB=N(()=>{"use strict";ji();Ya();ir();mi();Q1e={packet:[]},YB=structuredClone(Q1e),tet=or.packet,ret=o(()=>{let t=Fi({...tet,...cr().packet});return t.showBits&&(t.paddingY+=10),t},"getConfig"),net=o(()=>YB.packet,"getPacket"),iet=o(t=>{t.length>0&&YB.packet.push(t)},"pushWord"),aet=o(()=>{Ar(),YB=structuredClone(Q1e)},"clear"),Bf={pushWord:iet,getPacket:net,getConfig:ret,clear:aet,setAccTitle:Lr,getAccTitle:Rr,setDiagramTitle:$r,getDiagramTitle:Ir,getAccDescription:Mr,setAccDescription:Nr}});var set,oet,cet,Z1e,J1e=N(()=>{"use strict";kp();vt();T1();XB();set=1e4,oet=o(t=>{$c(t,Bf);let e=-1,r=[],n=1,{bitsPerRow:i}=Bf.getConfig();for(let{start:a,end:s,label:l}of t.blocks){if(s&&s{if(t.end===void 0&&(t.end=t.start),t.start>t.end)throw new Error(`Block start ${t.start} is greater than block end ${t.end}.`);return t.end+1<=e*r?[t,void 0]:[{start:t.start,end:e*r-1,label:t.label},{start:e*r,end:t.end,label:t.label}]},"getNextFittingBlock"),Z1e={parse:o(async t=>{let e=await uo("packet",t);Y.debug(e),oet(e)},"parse")}});var uet,het,eye,tye=N(()=>{"use strict";Vc();Ei();uet=o((t,e,r,n)=>{let i=n.db,a=i.getConfig(),{rowHeight:s,paddingY:l,bitWidth:u,bitsPerRow:h}=a,f=i.getPacket(),d=i.getDiagramTitle(),p=s+l,m=p*(f.length+1)-(d?0:s),g=u*h+2,y=sa(e);y.attr("viewbox",`0 0 ${g} ${m}`),vn(y,m,g,a.useMaxWidth);for(let[v,x]of f.entries())het(y,x,v,a);y.append("text").text(d).attr("x",g/2).attr("y",m-p/2).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("class","packetTitle")},"draw"),het=o((t,e,r,{rowHeight:n,paddingX:i,paddingY:a,bitWidth:s,bitsPerRow:l,showBits:u})=>{let h=t.append("g"),f=r*(n+a)+a;for(let d of e){let p=d.start%l*s+1,m=(d.end-d.start+1)*s-i;if(h.append("rect").attr("x",p).attr("y",f).attr("width",m).attr("height",n).attr("class","packetBlock"),h.append("text").attr("x",p+m/2).attr("y",f+n/2).attr("class","packetLabel").attr("dominant-baseline","middle").attr("text-anchor","middle").text(d.label),!u)continue;let g=d.end===d.start,y=f-2;h.append("text").attr("x",p+(g?m/2:0)).attr("y",y).attr("class","packetByte start").attr("dominant-baseline","auto").attr("text-anchor",g?"middle":"start").text(d.start),g||h.append("text").attr("x",p+m).attr("y",y).attr("class","packetByte end").attr("dominant-baseline","auto").attr("text-anchor","end").text(d.end)}},"drawWord"),eye={draw:uet}});var fet,rye,nye=N(()=>{"use strict";ir();fet={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},rye=o(({packet:t}={})=>{let e=Fi(fet,t);return` + .packetByte { + font-size: ${e.byteFontSize}; + } + .packetByte.start { + fill: ${e.startByteColor}; + } + .packetByte.end { + fill: ${e.endByteColor}; + } + .packetLabel { + fill: ${e.labelColor}; + font-size: ${e.labelFontSize}; + } + .packetTitle { + fill: ${e.titleColor}; + font-size: ${e.titleFontSize}; + } + .packetBlock { + stroke: ${e.blockStrokeColor}; + stroke-width: ${e.blockStrokeWidth}; + fill: ${e.blockFillColor}; + } + `},"styles")});var iye={};hr(iye,{diagram:()=>det});var det,aye=N(()=>{"use strict";XB();J1e();tye();nye();det={parser:Z1e,db:Bf,renderer:eye,styles:rye}});var fy,lye,jp,get,yet,cye,vet,xet,bet,wet,Tet,ket,Eet,Kp,jB=N(()=>{"use strict";ji();Ya();ir();mi();fy={showLegend:!0,ticks:5,max:null,min:0,graticule:"circle"},lye={axes:[],curves:[],options:fy},jp=structuredClone(lye),get=or.radar,yet=o(()=>Fi({...get,...cr().radar}),"getConfig"),cye=o(()=>jp.axes,"getAxes"),vet=o(()=>jp.curves,"getCurves"),xet=o(()=>jp.options,"getOptions"),bet=o(t=>{jp.axes=t.map(e=>({name:e.name,label:e.label??e.name}))},"setAxes"),wet=o(t=>{jp.curves=t.map(e=>({name:e.name,label:e.label??e.name,entries:Tet(e.entries)}))},"setCurves"),Tet=o(t=>{if(t[0].axis==null)return t.map(r=>r.value);let e=cye();if(e.length===0)throw new Error("Axes must be populated before curves for reference entries");return e.map(r=>{let n=t.find(i=>i.axis?.$refText===r.name);if(n===void 0)throw new Error("Missing entry for axis "+r.label);return n.value})},"computeCurveEntries"),ket=o(t=>{let e=t.reduce((r,n)=>(r[n.name]=n,r),{});jp.options={showLegend:e.showLegend?.value??fy.showLegend,ticks:e.ticks?.value??fy.ticks,max:e.max?.value??fy.max,min:e.min?.value??fy.min,graticule:e.graticule?.value??fy.graticule}},"setOptions"),Eet=o(()=>{Ar(),jp=structuredClone(lye)},"clear"),Kp={getAxes:cye,getCurves:vet,getOptions:xet,setAxes:bet,setCurves:wet,setOptions:ket,getConfig:yet,clear:Eet,setAccTitle:Lr,getAccTitle:Rr,setDiagramTitle:$r,getDiagramTitle:Ir,getAccDescription:Mr,setAccDescription:Nr}});var Cet,uye,hye=N(()=>{"use strict";kp();vt();T1();jB();Cet=o(t=>{$c(t,Kp);let{axes:e,curves:r,options:n}=t;Kp.setAxes(e),Kp.setCurves(r),Kp.setOptions(n)},"populate"),uye={parse:o(async t=>{let e=await uo("radar",t);Y.debug(e),Cet(e)},"parse")}});function Ret(t,e,r,n,i,a,s){let l=e.length,u=Math.min(s.width,s.height)/2;r.forEach((h,f)=>{if(h.entries.length!==l)return;let d=h.entries.map((p,m)=>{let g=2*Math.PI*m/l-Math.PI/2,y=Net(p,n,i,u),v=y*Math.cos(g),x=y*Math.sin(g);return{x:v,y:x}});a==="circle"?t.append("path").attr("d",Met(d,s.curveTension)).attr("class",`radarCurve-${f}`):a==="polygon"&&t.append("polygon").attr("points",d.map(p=>`${p.x},${p.y}`).join(" ")).attr("class",`radarCurve-${f}`)})}function Net(t,e,r,n){let i=Math.min(Math.max(t,e),r);return n*(i-e)/(r-e)}function Met(t,e){let r=t.length,n=`M${t[0].x},${t[0].y}`;for(let i=0;i{let h=t.append("g").attr("transform",`translate(${i}, ${a+u*s})`);h.append("rect").attr("width",12).attr("height",12).attr("class",`radarLegendBox-${u}`),h.append("text").attr("x",16).attr("y",0).attr("class","radarLegendText").text(l.label)})}var Aet,_et,Det,Let,fye,dye=N(()=>{"use strict";Vc();Aet=o((t,e,r,n)=>{let i=n.db,a=i.getAxes(),s=i.getCurves(),l=i.getOptions(),u=i.getConfig(),h=i.getDiagramTitle(),f=sa(e),d=_et(f,u),p=l.max??Math.max(...s.map(y=>Math.max(...y.entries))),m=l.min,g=Math.min(u.width,u.height)/2;Det(d,a,g,l.ticks,l.graticule),Let(d,a,g,u),Ret(d,a,s,m,p,l.graticule,u),Iet(d,s,l.showLegend,u),d.append("text").attr("class","radarTitle").text(h).attr("x",0).attr("y",-u.height/2-u.marginTop)},"draw"),_et=o((t,e)=>{let r=e.width+e.marginLeft+e.marginRight,n=e.height+e.marginTop+e.marginBottom,i={x:e.marginLeft+e.width/2,y:e.marginTop+e.height/2};return t.attr("viewbox",`0 0 ${r} ${n}`).attr("width",r).attr("height",n),t.append("g").attr("transform",`translate(${i.x}, ${i.y})`)},"drawFrame"),Det=o((t,e,r,n,i)=>{if(i==="circle")for(let a=0;a{let d=2*f*Math.PI/a-Math.PI/2,p=l*Math.cos(d),m=l*Math.sin(d);return`${p},${m}`}).join(" ");t.append("polygon").attr("points",u).attr("class","radarGraticule")}}},"drawGraticule"),Let=o((t,e,r,n)=>{let i=e.length;for(let a=0;a{"use strict";ir();_y();ji();Oet=o((t,e)=>{let r="";for(let n=0;n{let e=oh(),r=cr(),n=Fi(e,r.themeVariables),i=Fi(n.radar,t);return{themeVariables:n,radarOptions:i}},"buildRadarStyleOptions"),pye=o(({radar:t}={})=>{let{themeVariables:e,radarOptions:r}=Pet(t);return` + .radarTitle { + font-size: ${e.fontSize}; + color: ${e.titleColor}; + dominant-baseline: hanging; + text-anchor: middle; + } + .radarAxisLine { + stroke: ${r.axisColor}; + stroke-width: ${r.axisStrokeWidth}; + } + .radarAxisLabel { + dominant-baseline: middle; + text-anchor: middle; + font-size: ${r.axisLabelFontSize}px; + color: ${r.axisColor}; + } + .radarGraticule { + fill: ${r.graticuleColor}; + fill-opacity: ${r.graticuleOpacity}; + stroke: ${r.graticuleColor}; + stroke-width: ${r.graticuleStrokeWidth}; + } + .radarLegendText { + text-anchor: start; + font-size: ${r.legendFontSize}px; + dominant-baseline: hanging; + } + ${Oet(e,r)} + `},"styles")});var gye={};hr(gye,{diagram:()=>Bet});var Bet,yye=N(()=>{"use strict";jB();hye();dye();mye();Bet={parser:uye,db:Kp,renderer:fye,styles:pye}});var KB,bye,wye=N(()=>{"use strict";KB=function(){var t=o(function(w,C,T,E){for(T=T||{},E=w.length;E--;T[w[E]]=C);return T},"o"),e=[1,7],r=[1,13],n=[1,14],i=[1,15],a=[1,19],s=[1,16],l=[1,17],u=[1,18],h=[8,30],f=[8,21,28,29,30,31,32,40,44,47],d=[1,23],p=[1,24],m=[8,15,16,21,28,29,30,31,32,40,44,47],g=[8,15,16,21,27,28,29,30,31,32,40,44,47],y=[1,49],v={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,separator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,block:31,NODE_ID:32,nodeShapeNLabel:33,dirList:34,DIR:35,NODE_DSTART:36,NODE_DEND:37,BLOCK_ARROW_START:38,BLOCK_ARROW_END:39,classDef:40,CLASSDEF_ID:41,CLASSDEF_STYLEOPTS:42,DEFAULT:43,class:44,CLASSENTITY_IDS:45,STYLECLASS:46,style:47,STYLE_ENTITY_IDS:48,STYLE_DEFINITION_DATA:49,$accept:0,$end:1},terminals_:{2:"error",4:"SPACELINE",5:"NL",7:"SPACE",8:"EOF",10:"BLOCK_DIAGRAM_KEY",15:"LINK",16:"START_LINK",17:"LINK_LABEL",18:"STR",21:"SPACE_BLOCK",27:"SIZE",28:"COLUMNS",29:"id-block",30:"end",31:"block",32:"NODE_ID",35:"DIR",36:"NODE_DSTART",37:"NODE_DEND",38:"BLOCK_ARROW_START",39:"BLOCK_ARROW_END",40:"classDef",41:"CLASSDEF_ID",42:"CLASSDEF_STYLEOPTS",43:"DEFAULT",44:"class",45:"CLASSENTITY_IDS",46:"STYLECLASS",47:"style",48:"STYLE_ENTITY_IDS",49:"STYLE_DEFINITION_DATA"},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[34,1],[34,2],[33,3],[33,4],[23,3],[23,3],[24,3],[25,3]],performAction:o(function(C,T,E,A,S,_,I){var D=_.length-1;switch(S){case 4:A.getLogger().debug("Rule: separator (NL) ");break;case 5:A.getLogger().debug("Rule: separator (Space) ");break;case 6:A.getLogger().debug("Rule: separator (EOF) ");break;case 7:A.getLogger().debug("Rule: hierarchy: ",_[D-1]),A.setHierarchy(_[D-1]);break;case 8:A.getLogger().debug("Stop NL ");break;case 9:A.getLogger().debug("Stop EOF ");break;case 10:A.getLogger().debug("Stop NL2 ");break;case 11:A.getLogger().debug("Stop EOF2 ");break;case 12:A.getLogger().debug("Rule: statement: ",_[D]),typeof _[D].length=="number"?this.$=_[D]:this.$=[_[D]];break;case 13:A.getLogger().debug("Rule: statement #2: ",_[D-1]),this.$=[_[D-1]].concat(_[D]);break;case 14:A.getLogger().debug("Rule: link: ",_[D],C),this.$={edgeTypeStr:_[D],label:""};break;case 15:A.getLogger().debug("Rule: LABEL link: ",_[D-3],_[D-1],_[D]),this.$={edgeTypeStr:_[D],label:_[D-1]};break;case 18:let k=parseInt(_[D]),L=A.generateId();this.$={id:L,type:"space",label:"",width:k,children:[]};break;case 23:A.getLogger().debug("Rule: (nodeStatement link node) ",_[D-2],_[D-1],_[D]," typestr: ",_[D-1].edgeTypeStr);let R=A.edgeStrToEdgeData(_[D-1].edgeTypeStr);this.$=[{id:_[D-2].id,label:_[D-2].label,type:_[D-2].type,directions:_[D-2].directions},{id:_[D-2].id+"-"+_[D].id,start:_[D-2].id,end:_[D].id,label:_[D-1].label,type:"edge",directions:_[D].directions,arrowTypeEnd:R,arrowTypeStart:"arrow_open"},{id:_[D].id,label:_[D].label,type:A.typeStr2Type(_[D].typeStr),directions:_[D].directions}];break;case 24:A.getLogger().debug("Rule: nodeStatement (abc88 node size) ",_[D-1],_[D]),this.$={id:_[D-1].id,label:_[D-1].label,type:A.typeStr2Type(_[D-1].typeStr),directions:_[D-1].directions,widthInColumns:parseInt(_[D],10)};break;case 25:A.getLogger().debug("Rule: nodeStatement (node) ",_[D]),this.$={id:_[D].id,label:_[D].label,type:A.typeStr2Type(_[D].typeStr),directions:_[D].directions,widthInColumns:1};break;case 26:A.getLogger().debug("APA123",this?this:"na"),A.getLogger().debug("COLUMNS: ",_[D]),this.$={type:"column-setting",columns:_[D]==="auto"?-1:parseInt(_[D])};break;case 27:A.getLogger().debug("Rule: id-block statement : ",_[D-2],_[D-1]);let O=A.generateId();this.$={..._[D-2],type:"composite",children:_[D-1]};break;case 28:A.getLogger().debug("Rule: blockStatement : ",_[D-2],_[D-1],_[D]);let M=A.generateId();this.$={id:M,type:"composite",label:"",children:_[D-1]};break;case 29:A.getLogger().debug("Rule: node (NODE_ID separator): ",_[D]),this.$={id:_[D]};break;case 30:A.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",_[D-1],_[D]),this.$={id:_[D-1],label:_[D].label,typeStr:_[D].typeStr,directions:_[D].directions};break;case 31:A.getLogger().debug("Rule: dirList: ",_[D]),this.$=[_[D]];break;case 32:A.getLogger().debug("Rule: dirList: ",_[D-1],_[D]),this.$=[_[D-1]].concat(_[D]);break;case 33:A.getLogger().debug("Rule: nodeShapeNLabel: ",_[D-2],_[D-1],_[D]),this.$={typeStr:_[D-2]+_[D],label:_[D-1]};break;case 34:A.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",_[D-3],_[D-2]," #3:",_[D-1],_[D]),this.$={typeStr:_[D-3]+_[D],label:_[D-2],directions:_[D-1]};break;case 35:case 36:this.$={type:"classDef",id:_[D-1].trim(),css:_[D].trim()};break;case 37:this.$={type:"applyClass",id:_[D-1].trim(),styleClass:_[D].trim()};break;case 38:this.$={type:"applyStyles",id:_[D-1].trim(),stylesStr:_[D].trim()};break}},"anonymous"),table:[{9:1,10:[1,2]},{1:[3]},{11:3,13:4,19:5,20:6,21:e,22:8,23:9,24:10,25:11,26:12,28:r,29:n,31:i,32:a,40:s,44:l,47:u},{8:[1,20]},t(h,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,21:e,28:r,29:n,31:i,32:a,40:s,44:l,47:u}),t(f,[2,16],{14:22,15:d,16:p}),t(f,[2,17]),t(f,[2,18]),t(f,[2,19]),t(f,[2,20]),t(f,[2,21]),t(f,[2,22]),t(m,[2,25],{27:[1,25]}),t(f,[2,26]),{19:26,26:12,32:a},{11:27,13:4,19:5,20:6,21:e,22:8,23:9,24:10,25:11,26:12,28:r,29:n,31:i,32:a,40:s,44:l,47:u},{41:[1,28],43:[1,29]},{45:[1,30]},{48:[1,31]},t(g,[2,29],{33:32,36:[1,33],38:[1,34]}),{1:[2,7]},t(h,[2,13]),{26:35,32:a},{32:[2,14]},{17:[1,36]},t(m,[2,24]),{11:37,13:4,14:22,15:d,16:p,19:5,20:6,21:e,22:8,23:9,24:10,25:11,26:12,28:r,29:n,31:i,32:a,40:s,44:l,47:u},{30:[1,38]},{42:[1,39]},{42:[1,40]},{46:[1,41]},{49:[1,42]},t(g,[2,30]),{18:[1,43]},{18:[1,44]},t(m,[2,23]),{18:[1,45]},{30:[1,46]},t(f,[2,28]),t(f,[2,35]),t(f,[2,36]),t(f,[2,37]),t(f,[2,38]),{37:[1,47]},{34:48,35:y},{15:[1,50]},t(f,[2,27]),t(g,[2,33]),{39:[1,51]},{34:52,35:y,39:[2,31]},{32:[2,15]},t(g,[2,34]),{39:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:o(function(C,T){if(T.recoverable)this.trace(C);else{var E=new Error(C);throw E.hash=T,E}},"parseError"),parse:o(function(C){var T=this,E=[0],A=[],S=[null],_=[],I=this.table,D="",k=0,L=0,R=0,O=2,M=1,B=_.slice.call(arguments,1),F=Object.create(this.lexer),P={yy:{}};for(var z in this.yy)Object.prototype.hasOwnProperty.call(this.yy,z)&&(P.yy[z]=this.yy[z]);F.setInput(C,P.yy),P.yy.lexer=F,P.yy.parser=this,typeof F.yylloc>"u"&&(F.yylloc={});var $=F.yylloc;_.push($);var H=F.options&&F.options.ranges;typeof P.yy.parseError=="function"?this.parseError=P.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Q(ce){E.length=E.length-2*ce,S.length=S.length-ce,_.length=_.length-ce}o(Q,"popStack");function j(){var ce;return ce=A.pop()||F.lex()||M,typeof ce!="number"&&(ce instanceof Array&&(A=ce,ce=A.pop()),ce=T.symbols_[ce]||ce),ce}o(j,"lex");for(var ie,ne,le,he,K,X,te={},J,se,ue,Z;;){if(le=E[E.length-1],this.defaultActions[le]?he=this.defaultActions[le]:((ie===null||typeof ie>"u")&&(ie=j()),he=I[le]&&I[le][ie]),typeof he>"u"||!he.length||!he[0]){var Se="";Z=[];for(J in I[le])this.terminals_[J]&&J>O&&Z.push("'"+this.terminals_[J]+"'");F.showPosition?Se="Parse error on line "+(k+1)+`: +`+F.showPosition()+` +Expecting `+Z.join(", ")+", got '"+(this.terminals_[ie]||ie)+"'":Se="Parse error on line "+(k+1)+": Unexpected "+(ie==M?"end of input":"'"+(this.terminals_[ie]||ie)+"'"),this.parseError(Se,{text:F.match,token:this.terminals_[ie]||ie,line:F.yylineno,loc:$,expected:Z})}if(he[0]instanceof Array&&he.length>1)throw new Error("Parse Error: multiple actions possible at state: "+le+", token: "+ie);switch(he[0]){case 1:E.push(ie),S.push(F.yytext),_.push(F.yylloc),E.push(he[1]),ie=null,ne?(ie=ne,ne=null):(L=F.yyleng,D=F.yytext,k=F.yylineno,$=F.yylloc,R>0&&R--);break;case 2:if(se=this.productions_[he[1]][1],te.$=S[S.length-se],te._$={first_line:_[_.length-(se||1)].first_line,last_line:_[_.length-1].last_line,first_column:_[_.length-(se||1)].first_column,last_column:_[_.length-1].last_column},H&&(te._$.range=[_[_.length-(se||1)].range[0],_[_.length-1].range[1]]),X=this.performAction.apply(te,[D,L,k,P.yy,he[1],S,_].concat(B)),typeof X<"u")return X;se&&(E=E.slice(0,-1*se*2),S=S.slice(0,-1*se),_=_.slice(0,-1*se)),E.push(this.productions_[he[1]][0]),S.push(te.$),_.push(te._$),ue=I[E[E.length-2]][E[E.length-1]],E.push(ue);break;case 3:return!0}}return!0},"parse")},x=function(){var w={EOF:1,parseError:o(function(T,E){if(this.yy.parser)this.yy.parser.parseError(T,E);else throw new Error(T)},"parseError"),setInput:o(function(C,T){return this.yy=T||this.yy||{},this._input=C,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var C=this._input[0];this.yytext+=C,this.yyleng++,this.offset++,this.match+=C,this.matched+=C;var T=C.match(/(?:\r\n?|\n).*/g);return T?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),C},"input"),unput:o(function(C){var T=C.length,E=C.split(/(?:\r\n?|\n)/g);this._input=C+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-T),this.offset-=T;var A=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),E.length-1&&(this.yylineno-=E.length-1);var S=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:E?(E.length===A.length?this.yylloc.first_column:0)+A[A.length-E.length].length-E[0].length:this.yylloc.first_column-T},this.options.ranges&&(this.yylloc.range=[S[0],S[0]+this.yyleng-T]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(C){this.unput(this.match.slice(C))},"less"),pastInput:o(function(){var C=this.matched.substr(0,this.matched.length-this.match.length);return(C.length>20?"...":"")+C.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var C=this.match;return C.length<20&&(C+=this._input.substr(0,20-C.length)),(C.substr(0,20)+(C.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var C=this.pastInput(),T=new Array(C.length+1).join("-");return C+this.upcomingInput()+` +`+T+"^"},"showPosition"),test_match:o(function(C,T){var E,A,S;if(this.options.backtrack_lexer&&(S={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(S.yylloc.range=this.yylloc.range.slice(0))),A=C[0].match(/(?:\r\n?|\n).*/g),A&&(this.yylineno+=A.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:A?A[A.length-1].length-A[A.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+C[0].length},this.yytext+=C[0],this.match+=C[0],this.matches=C,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(C[0].length),this.matched+=C[0],E=this.performAction.call(this,this.yy,this,T,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),E)return E;if(this._backtrack){for(var _ in S)this[_]=S[_];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var C,T,E,A;this._more||(this.yytext="",this.match="");for(var S=this._currentRules(),_=0;_T[0].length)){if(T=E,A=_,this.options.backtrack_lexer){if(C=this.test_match(E,S[_]),C!==!1)return C;if(this._backtrack){T=!1;continue}else return!1}else if(!this.options.flex)break}return T?(C=this.test_match(T,S[A]),C!==!1?C:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var T=this.next();return T||this.lex()},"lex"),begin:o(function(T){this.conditionStack.push(T)},"begin"),popState:o(function(){var T=this.conditionStack.length-1;return T>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(T){return T=this.conditionStack.length-1-Math.abs(T||0),T>=0?this.conditionStack[T]:"INITIAL"},"topState"),pushState:o(function(T){this.begin(T)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(T,E,A,S){var _=S;switch(A){case 0:return 10;case 1:return T.getLogger().debug("Found space-block"),31;break;case 2:return T.getLogger().debug("Found nl-block"),31;break;case 3:return T.getLogger().debug("Found space-block"),29;break;case 4:T.getLogger().debug(".",E.yytext);break;case 5:T.getLogger().debug("_",E.yytext);break;case 6:return 5;case 7:return E.yytext=-1,28;break;case 8:return E.yytext=E.yytext.replace(/columns\s+/,""),T.getLogger().debug("COLUMNS (LEX)",E.yytext),28;break;case 9:this.pushState("md_string");break;case 10:return"MD_STR";case 11:this.popState();break;case 12:this.pushState("string");break;case 13:T.getLogger().debug("LEX: POPPING STR:",E.yytext),this.popState();break;case 14:return T.getLogger().debug("LEX: STR end:",E.yytext),"STR";break;case 15:return E.yytext=E.yytext.replace(/space\:/,""),T.getLogger().debug("SPACE NUM (LEX)",E.yytext),21;break;case 16:return E.yytext="1",T.getLogger().debug("COLUMNS (LEX)",E.yytext),21;break;case 17:return 43;case 18:return"LINKSTYLE";case 19:return"INTERPOLATE";case 20:return this.pushState("CLASSDEF"),40;break;case 21:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";break;case 22:return this.popState(),this.pushState("CLASSDEFID"),41;break;case 23:return this.popState(),42;break;case 24:return this.pushState("CLASS"),44;break;case 25:return this.popState(),this.pushState("CLASS_STYLE"),45;break;case 26:return this.popState(),46;break;case 27:return this.pushState("STYLE_STMNT"),47;break;case 28:return this.popState(),this.pushState("STYLE_DEFINITION"),48;break;case 29:return this.popState(),49;break;case 30:return this.pushState("acc_title"),"acc_title";break;case 31:return this.popState(),"acc_title_value";break;case 32:return this.pushState("acc_descr"),"acc_descr";break;case 33:return this.popState(),"acc_descr_value";break;case 34:this.pushState("acc_descr_multiline");break;case 35:this.popState();break;case 36:return"acc_descr_multiline_value";case 37:return 30;case 38:return this.popState(),T.getLogger().debug("Lex: (("),"NODE_DEND";break;case 39:return this.popState(),T.getLogger().debug("Lex: (("),"NODE_DEND";break;case 40:return this.popState(),T.getLogger().debug("Lex: ))"),"NODE_DEND";break;case 41:return this.popState(),T.getLogger().debug("Lex: (("),"NODE_DEND";break;case 42:return this.popState(),T.getLogger().debug("Lex: (("),"NODE_DEND";break;case 43:return this.popState(),T.getLogger().debug("Lex: (-"),"NODE_DEND";break;case 44:return this.popState(),T.getLogger().debug("Lex: -)"),"NODE_DEND";break;case 45:return this.popState(),T.getLogger().debug("Lex: (("),"NODE_DEND";break;case 46:return this.popState(),T.getLogger().debug("Lex: ]]"),"NODE_DEND";break;case 47:return this.popState(),T.getLogger().debug("Lex: ("),"NODE_DEND";break;case 48:return this.popState(),T.getLogger().debug("Lex: ])"),"NODE_DEND";break;case 49:return this.popState(),T.getLogger().debug("Lex: /]"),"NODE_DEND";break;case 50:return this.popState(),T.getLogger().debug("Lex: /]"),"NODE_DEND";break;case 51:return this.popState(),T.getLogger().debug("Lex: )]"),"NODE_DEND";break;case 52:return this.popState(),T.getLogger().debug("Lex: )"),"NODE_DEND";break;case 53:return this.popState(),T.getLogger().debug("Lex: ]>"),"NODE_DEND";break;case 54:return this.popState(),T.getLogger().debug("Lex: ]"),"NODE_DEND";break;case 55:return T.getLogger().debug("Lexa: -)"),this.pushState("NODE"),36;break;case 56:return T.getLogger().debug("Lexa: (-"),this.pushState("NODE"),36;break;case 57:return T.getLogger().debug("Lexa: ))"),this.pushState("NODE"),36;break;case 58:return T.getLogger().debug("Lexa: )"),this.pushState("NODE"),36;break;case 59:return T.getLogger().debug("Lex: ((("),this.pushState("NODE"),36;break;case 60:return T.getLogger().debug("Lexa: )"),this.pushState("NODE"),36;break;case 61:return T.getLogger().debug("Lexa: )"),this.pushState("NODE"),36;break;case 62:return T.getLogger().debug("Lexa: )"),this.pushState("NODE"),36;break;case 63:return T.getLogger().debug("Lexc: >"),this.pushState("NODE"),36;break;case 64:return T.getLogger().debug("Lexa: (["),this.pushState("NODE"),36;break;case 65:return T.getLogger().debug("Lexa: )"),this.pushState("NODE"),36;break;case 66:return this.pushState("NODE"),36;break;case 67:return this.pushState("NODE"),36;break;case 68:return this.pushState("NODE"),36;break;case 69:return this.pushState("NODE"),36;break;case 70:return this.pushState("NODE"),36;break;case 71:return this.pushState("NODE"),36;break;case 72:return this.pushState("NODE"),36;break;case 73:return T.getLogger().debug("Lexa: ["),this.pushState("NODE"),36;break;case 74:return this.pushState("BLOCK_ARROW"),T.getLogger().debug("LEX ARR START"),38;break;case 75:return T.getLogger().debug("Lex: NODE_ID",E.yytext),32;break;case 76:return T.getLogger().debug("Lex: EOF",E.yytext),8;break;case 77:this.pushState("md_string");break;case 78:this.pushState("md_string");break;case 79:return"NODE_DESCR";case 80:this.popState();break;case 81:T.getLogger().debug("Lex: Starting string"),this.pushState("string");break;case 82:T.getLogger().debug("LEX ARR: Starting string"),this.pushState("string");break;case 83:return T.getLogger().debug("LEX: NODE_DESCR:",E.yytext),"NODE_DESCR";break;case 84:T.getLogger().debug("LEX POPPING"),this.popState();break;case 85:T.getLogger().debug("Lex: =>BAE"),this.pushState("ARROW_DIR");break;case 86:return E.yytext=E.yytext.replace(/^,\s*/,""),T.getLogger().debug("Lex (right): dir:",E.yytext),"DIR";break;case 87:return E.yytext=E.yytext.replace(/^,\s*/,""),T.getLogger().debug("Lex (left):",E.yytext),"DIR";break;case 88:return E.yytext=E.yytext.replace(/^,\s*/,""),T.getLogger().debug("Lex (x):",E.yytext),"DIR";break;case 89:return E.yytext=E.yytext.replace(/^,\s*/,""),T.getLogger().debug("Lex (y):",E.yytext),"DIR";break;case 90:return E.yytext=E.yytext.replace(/^,\s*/,""),T.getLogger().debug("Lex (up):",E.yytext),"DIR";break;case 91:return E.yytext=E.yytext.replace(/^,\s*/,""),T.getLogger().debug("Lex (down):",E.yytext),"DIR";break;case 92:return E.yytext="]>",T.getLogger().debug("Lex (ARROW_DIR end):",E.yytext),this.popState(),this.popState(),"BLOCK_ARROW_END";break;case 93:return T.getLogger().debug("Lex: LINK","#"+E.yytext+"#"),15;break;case 94:return T.getLogger().debug("Lex: LINK",E.yytext),15;break;case 95:return T.getLogger().debug("Lex: LINK",E.yytext),15;break;case 96:return T.getLogger().debug("Lex: LINK",E.yytext),15;break;case 97:return T.getLogger().debug("Lex: START_LINK",E.yytext),this.pushState("LLABEL"),16;break;case 98:return T.getLogger().debug("Lex: START_LINK",E.yytext),this.pushState("LLABEL"),16;break;case 99:return T.getLogger().debug("Lex: START_LINK",E.yytext),this.pushState("LLABEL"),16;break;case 100:this.pushState("md_string");break;case 101:return T.getLogger().debug("Lex: Starting string"),this.pushState("string"),"LINK_LABEL";break;case 102:return this.popState(),T.getLogger().debug("Lex: LINK","#"+E.yytext+"#"),15;break;case 103:return this.popState(),T.getLogger().debug("Lex: LINK",E.yytext),15;break;case 104:return this.popState(),T.getLogger().debug("Lex: LINK",E.yytext),15;break;case 105:return T.getLogger().debug("Lex: COLON",E.yytext),E.yytext=E.yytext.slice(1),27;break}},"anonymous"),rules:[/^(?:block-beta\b)/,/^(?:block\s+)/,/^(?:block\n+)/,/^(?:block:)/,/^(?:[\s]+)/,/^(?:[\n]+)/,/^(?:((\u000D\u000A)|(\u000A)))/,/^(?:columns\s+auto\b)/,/^(?:columns\s+[\d]+)/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:space[:]\d+)/,/^(?:space\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\s+)/,/^(?:DEFAULT\s+)/,/^(?:\w+\s+)/,/^(?:[^\n]*)/,/^(?:class\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:style\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:end\b\s*)/,/^(?:\(\(\()/,/^(?:\)\)\))/,/^(?:[\)]\))/,/^(?:\}\})/,/^(?:\})/,/^(?:\(-)/,/^(?:-\))/,/^(?:\(\()/,/^(?:\]\])/,/^(?:\()/,/^(?:\]\))/,/^(?:\\\])/,/^(?:\/\])/,/^(?:\)\])/,/^(?:[\)])/,/^(?:\]>)/,/^(?:[\]])/,/^(?:-\))/,/^(?:\(-)/,/^(?:\)\))/,/^(?:\))/,/^(?:\(\(\()/,/^(?:\(\()/,/^(?:\{\{)/,/^(?:\{)/,/^(?:>)/,/^(?:\(\[)/,/^(?:\()/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\[\\)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:\[)/,/^(?:<\[)/,/^(?:[^\(\[\n\-\)\{\}\s\<\>:]+)/,/^(?:$)/,/^(?:["][`])/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:\]>\s*\()/,/^(?:,?\s*right\s*)/,/^(?:,?\s*left\s*)/,/^(?:,?\s*x\s*)/,/^(?:,?\s*y\s*)/,/^(?:,?\s*up\s*)/,/^(?:,?\s*down\s*)/,/^(?:\)\s*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*~~[\~]+\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:["][`])/,/^(?:["])/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?::\d+)/],conditions:{STYLE_DEFINITION:{rules:[29],inclusive:!1},STYLE_STMNT:{rules:[28],inclusive:!1},CLASSDEFID:{rules:[23],inclusive:!1},CLASSDEF:{rules:[21,22],inclusive:!1},CLASS_STYLE:{rules:[26],inclusive:!1},CLASS:{rules:[25],inclusive:!1},LLABEL:{rules:[100,101,102,103,104],inclusive:!1},ARROW_DIR:{rules:[86,87,88,89,90,91,92],inclusive:!1},BLOCK_ARROW:{rules:[77,82,85],inclusive:!1},NODE:{rules:[38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,78,81],inclusive:!1},md_string:{rules:[10,11,79,80],inclusive:!1},space:{rules:[],inclusive:!1},string:{rules:[13,14,83,84],inclusive:!1},acc_descr_multiline:{rules:[35,36],inclusive:!1},acc_descr:{rules:[33],inclusive:!1},acc_title:{rules:[31],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,12,15,16,17,18,19,20,24,27,30,32,34,37,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,93,94,95,96,97,98,99,105],inclusive:!0}}};return w}();v.lexer=x;function b(){this.yy={}}return o(b,"Parser"),b.prototype=v,v.Parser=b,new b}();KB.parser=KB;bye=KB});function Yet(t){switch(Y.debug("typeStr2Type",t),t){case"[]":return"square";case"()":return Y.debug("we have a round"),"round";case"(())":return"circle";case">]":return"rect_left_inv_arrow";case"{}":return"diamond";case"{{}}":return"hexagon";case"([])":return"stadium";case"[[]]":return"subroutine";case"[()]":return"cylinder";case"((()))":return"doublecircle";case"[//]":return"lean_right";case"[\\\\]":return"lean_left";case"[/\\]":return"trapezoid";case"[\\/]":return"inv_trapezoid";case"<[]>":return"block_arrow";default:return"na"}}function Xet(t){switch(Y.debug("typeStr2Type",t),t){case"==":return"thick";default:return"normal"}}function jet(t){switch(t.trim()){case"--x":return"arrow_cross";case"--o":return"arrow_circle";default:return"arrow_point"}}var Ul,ZB,QB,Tye,kye,zet,Sye,Get,eC,Vet,Uet,Het,Wet,Cye,JB,y4,qet,Eye,Ket,Qet,Zet,Jet,ett,ttt,rtt,ntt,itt,att,stt,Aye,_ye=N(()=>{"use strict";gL();ji();zt();vt();gr();mi();Ul=new Map,ZB=[],QB=new Map,Tye="color",kye="fill",zet="bgFill",Sye=",",Get=me(),eC=new Map,Vet=o(t=>Ze.sanitizeText(t,Get),"sanitizeText"),Uet=o(function(t,e=""){let r=eC.get(t);r||(r={id:t,styles:[],textStyles:[]},eC.set(t,r)),e?.split(Sye).forEach(n=>{let i=n.replace(/([^;]*);/,"$1").trim();if(RegExp(Tye).exec(n)){let s=i.replace(kye,zet).replace(Tye,kye);r.textStyles.push(s)}r.styles.push(i)})},"addStyleClass"),Het=o(function(t,e=""){let r=Ul.get(t);e!=null&&(r.styles=e.split(Sye))},"addStyle2Node"),Wet=o(function(t,e){t.split(",").forEach(function(r){let n=Ul.get(r);if(n===void 0){let i=r.trim();n={id:i,type:"na",children:[]},Ul.set(i,n)}n.classes||(n.classes=[]),n.classes.push(e)})},"setCssClass"),Cye=o((t,e)=>{let r=t.flat(),n=[];for(let i of r){if(i.label&&(i.label=Vet(i.label)),i.type==="classDef"){Uet(i.id,i.css);continue}if(i.type==="applyClass"){Wet(i.id,i?.styleClass??"");continue}if(i.type==="applyStyles"){i?.stylesStr&&Het(i.id,i?.stylesStr);continue}if(i.type==="column-setting")e.columns=i.columns??-1;else if(i.type==="edge"){let a=(QB.get(i.id)??0)+1;QB.set(i.id,a),i.id=a+"-"+i.id,ZB.push(i)}else{i.label||(i.type==="composite"?i.label="":i.label=i.id);let a=Ul.get(i.id);if(a===void 0?Ul.set(i.id,i):(i.type!=="na"&&(a.type=i.type),i.label!==i.id&&(a.label=i.label)),i.children&&Cye(i.children,i),i.type==="space"){let s=i.width??1;for(let l=0;l{Y.debug("Clear called"),Ar(),y4={id:"root",type:"composite",children:[],columns:-1},Ul=new Map([["root",y4]]),JB=[],eC=new Map,ZB=[],QB=new Map},"clear");o(Yet,"typeStr2Type");o(Xet,"edgeTypeStr2Type");o(jet,"edgeStrToEdgeData");Eye=0,Ket=o(()=>(Eye++,"id-"+Math.random().toString(36).substr(2,12)+"-"+Eye),"generateId"),Qet=o(t=>{y4.children=t,Cye(t,y4),JB=y4.children},"setHierarchy"),Zet=o(t=>{let e=Ul.get(t);return e?e.columns?e.columns:e.children?e.children.length:-1:-1},"getColumns"),Jet=o(()=>[...Ul.values()],"getBlocksFlat"),ett=o(()=>JB||[],"getBlocks"),ttt=o(()=>ZB,"getEdges"),rtt=o(t=>Ul.get(t),"getBlock"),ntt=o(t=>{Ul.set(t.id,t)},"setBlock"),itt=o(()=>console,"getLogger"),att=o(function(){return eC},"getClasses"),stt={getConfig:o(()=>cr().block,"getConfig"),typeStr2Type:Yet,edgeTypeStr2Type:Xet,edgeStrToEdgeData:jet,getLogger:itt,getBlocksFlat:Jet,getBlocks:ett,getEdges:ttt,setHierarchy:Qet,getBlock:rtt,setBlock:ntt,getColumns:Zet,getClasses:att,clear:qet,generateId:Ket},Aye=stt});var tC,ott,Dye,Lye=N(()=>{"use strict";Ys();tC=o((t,e)=>{let r=Kf,n=r(t,"r"),i=r(t,"g"),a=r(t,"b");return qa(n,i,a,e)},"fade"),ott=o(t=>`.label { + font-family: ${t.fontFamily}; + color: ${t.nodeTextColor||t.textColor}; + } + .cluster-label text { + fill: ${t.titleColor}; + } + .cluster-label span,p { + color: ${t.titleColor}; + } + + + + .label text,span,p { + fill: ${t.nodeTextColor||t.textColor}; + color: ${t.nodeTextColor||t.textColor}; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${t.mainBkg}; + stroke: ${t.nodeBorder}; + stroke-width: 1px; + } + .flowchart-label text { + text-anchor: middle; + } + // .flowchart-label .text-outer-tspan { + // text-anchor: middle; + // } + // .flowchart-label .text-inner-tspan { + // text-anchor: start; + // } + + .node .label { + text-align: center; + } + .node.clickable { + cursor: pointer; + } + + .arrowheadPath { + fill: ${t.arrowheadColor}; + } + + .edgePath .path { + stroke: ${t.lineColor}; + stroke-width: 2.0px; + } + + .flowchart-link { + stroke: ${t.lineColor}; + fill: none; + } + + .edgeLabel { + background-color: ${t.edgeLabelBackground}; + rect { + opacity: 0.5; + background-color: ${t.edgeLabelBackground}; + fill: ${t.edgeLabelBackground}; + } + text-align: center; + } + + /* For html labels only */ + .labelBkg { + background-color: ${tC(t.edgeLabelBackground,.5)}; + // background-color: + } + + .node .cluster { + // fill: ${tC(t.mainBkg,.5)}; + fill: ${tC(t.clusterBkg,.5)}; + stroke: ${tC(t.clusterBorder,.2)}; + box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px; + stroke-width: 1px; + } + + .cluster text { + fill: ${t.titleColor}; + } + + .cluster span,p { + color: ${t.titleColor}; + } + /* .cluster div { + color: ${t.titleColor}; + } */ + + div.mermaidTooltip { + position: absolute; + text-align: center; + max-width: 200px; + padding: 2px; + font-family: ${t.fontFamily}; + font-size: 12px; + background: ${t.tertiaryColor}; + border: 1px solid ${t.border2}; + border-radius: 2px; + pointer-events: none; + z-index: 100; + } + + .flowchartTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${t.textColor}; + } +`,"getStyles"),Dye=ott});var ltt,ctt,utt,htt,ftt,dtt,ptt,mtt,gtt,ytt,vtt,Rye,Nye=N(()=>{"use strict";vt();ltt=o((t,e,r,n)=>{e.forEach(i=>{vtt[i](t,r,n)})},"insertMarkers"),ctt=o((t,e,r)=>{Y.trace("Making markers for ",r),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionStart").attr("class","marker extension "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionEnd").attr("class","marker extension "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},"extension"),utt=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionStart").attr("class","marker composition "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionEnd").attr("class","marker composition "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"composition"),htt=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationStart").attr("class","marker aggregation "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationEnd").attr("class","marker aggregation "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"aggregation"),ftt=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyStart").attr("class","marker dependency "+e).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyEnd").attr("class","marker dependency "+e).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"dependency"),dtt=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopStart").attr("class","marker lollipop "+e).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopEnd").attr("class","marker lollipop "+e).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},"lollipop"),ptt=o((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-pointEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",6).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-pointStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"point"),mtt=o((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-circleEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-circleStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"circle"),gtt=o((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-crossEnd").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-crossStart").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},"cross"),ytt=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"barb"),vtt={extension:ctt,composition:utt,aggregation:htt,dependency:ftt,lollipop:dtt,point:ptt,circle:mtt,cross:gtt,barb:ytt},Rye=ltt});function xtt(t,e){if(t===0||!Number.isInteger(t))throw new Error("Columns must be an integer !== 0.");if(e<0||!Number.isInteger(e))throw new Error("Position must be a non-negative integer."+e);if(t<0)return{px:e,py:0};if(t===1)return{px:0,py:e};let r=e%t,n=Math.floor(e/t);return{px:r,py:n}}function eF(t,e,r=0,n=0){Y.debug("setBlockSizes abc95 (start)",t.id,t?.size?.x,"block width =",t?.size,"sieblingWidth",r),t?.size?.width||(t.size={width:r,height:n,x:0,y:0});let i=0,a=0;if(t.children?.length>0){for(let m of t.children)eF(m,e);let s=btt(t);i=s.width,a=s.height,Y.debug("setBlockSizes abc95 maxWidth of",t.id,":s children is ",i,a);for(let m of t.children)m.size&&(Y.debug(`abc95 Setting size of children of ${t.id} id=${m.id} ${i} ${a} ${JSON.stringify(m.size)}`),m.size.width=i*(m.widthInColumns??1)+bi*((m.widthInColumns??1)-1),m.size.height=a,m.size.x=0,m.size.y=0,Y.debug(`abc95 updating size of ${t.id} children child:${m.id} maxWidth:${i} maxHeight:${a}`));for(let m of t.children)eF(m,e,i,a);let l=t.columns??-1,u=0;for(let m of t.children)u+=m.widthInColumns??1;let h=t.children.length;l>0&&l0?Math.min(t.children.length,l):t.children.length;if(m>0){let g=(d-m*bi-bi)/m;Y.debug("abc95 (growing to fit) width",t.id,d,t.size?.width,g);for(let y of t.children)y.size&&(y.size.width=g)}}t.size={width:d,height:p,x:0,y:0}}Y.debug("setBlockSizes abc94 (done)",t.id,t?.size?.x,t?.size?.width,t?.size?.y,t?.size?.height)}function Mye(t,e){Y.debug(`abc85 layout blocks (=>layoutBlocks) ${t.id} x: ${t?.size?.x} y: ${t?.size?.y} width: ${t?.size?.width}`);let r=t.columns??-1;if(Y.debug("layoutBlocks columns abc95",t.id,"=>",r,t),t.children&&t.children.length>0){let n=t?.children[0]?.size?.width??0,i=t.children.length*n+(t.children.length-1)*bi;Y.debug("widthOfChildren 88",i,"posX");let a=0;Y.debug("abc91 block?.size?.x",t.id,t?.size?.x);let s=t?.size?.x?t?.size?.x+(-t?.size?.width/2||0):-bi,l=0;for(let u of t.children){let h=t;if(!u.size)continue;let{width:f,height:d}=u.size,{px:p,py:m}=xtt(r,a);if(m!=l&&(l=m,s=t?.size?.x?t?.size?.x+(-t?.size?.width/2||0):-bi,Y.debug("New row in layout for block",t.id," and child ",u.id,l)),Y.debug(`abc89 layout blocks (child) id: ${u.id} Pos: ${a} (px, py) ${p},${m} (${h?.size?.x},${h?.size?.y}) parent: ${h.id} width: ${f}${bi}`),h.size){let g=f/2;u.size.x=s+bi+g,Y.debug(`abc91 layout blocks (calc) px, pyid:${u.id} startingPos=X${s} new startingPosX${u.size.x} ${g} padding=${bi} width=${f} halfWidth=${g} => x:${u.size.x} y:${u.size.y} ${u.widthInColumns} (width * (child?.w || 1)) / 2 ${f*(u?.widthInColumns??1)/2}`),s=u.size.x+g,u.size.y=h.size.y-h.size.height/2+m*(d+bi)+d/2+bi,Y.debug(`abc88 layout blocks (calc) px, pyid:${u.id}startingPosX${s}${bi}${g}=>x:${u.size.x}y:${u.size.y}${u.widthInColumns}(width * (child?.w || 1)) / 2${f*(u?.widthInColumns??1)/2}`)}u.children&&Mye(u,e),a+=u?.widthInColumns??1,Y.debug("abc88 columnsPos",u,a)}}Y.debug(`layout blocks (<==layoutBlocks) ${t.id} x: ${t?.size?.x} y: ${t?.size?.y} width: ${t?.size?.width}`)}function Iye(t,{minX:e,minY:r,maxX:n,maxY:i}={minX:0,minY:0,maxX:0,maxY:0}){if(t.size&&t.id!=="root"){let{x:a,y:s,width:l,height:u}=t.size;a-l/2n&&(n=a+l/2),s+u/2>i&&(i=s+u/2)}if(t.children)for(let a of t.children)({minX:e,minY:r,maxX:n,maxY:i}=Iye(a,{minX:e,minY:r,maxX:n,maxY:i}));return{minX:e,minY:r,maxX:n,maxY:i}}function Oye(t){let e=t.getBlock("root");if(!e)return;eF(e,t,0,0),Mye(e,t),Y.debug("getBlocks",JSON.stringify(e,null,2));let{minX:r,minY:n,maxX:i,maxY:a}=Iye(e),s=a-n,l=i-r;return{x:r,y:n,width:l,height:s}}var bi,btt,Pye=N(()=>{"use strict";vt();zt();bi=me()?.block?.padding??8;o(xtt,"calculateBlockPosition");btt=o(t=>{let e=0,r=0;for(let n of t.children){let{width:i,height:a,x:s,y:l}=n.size??{width:0,height:0,x:0,y:0};Y.debug("getMaxChildSize abc95 child:",n.id,"width:",i,"height:",a,"x:",s,"y:",l,n.type),n.type!=="space"&&(i>e&&(e=i/(t.widthInColumns??1)),a>r&&(r=a))}return{width:e,height:r}},"getMaxChildSize");o(eF,"setBlockSizes");o(Mye,"layoutBlocks");o(Iye,"findBounds");o(Oye,"layout")});function Bye(t,e){e&&t.attr("style",e)}function wtt(t){let e=Ge(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),r=e.append("xhtml:div"),n=t.label,i=t.isNode?"nodeLabel":"edgeLabel",a=r.append("span");return a.html(n),Bye(a,t.labelStyle),a.attr("class",i),Bye(r,t.labelStyle),r.style("display","inline-block"),r.style("white-space","nowrap"),r.attr("xmlns","http://www.w3.org/1999/xhtml"),e.node()}var Ttt,vs,rC=N(()=>{"use strict";dr();vt();zt();gr();ir();to();o(Bye,"applyStyle");o(wtt,"addHtmlLabel");Ttt=o((t,e,r,n)=>{let i=t||"";if(typeof i=="object"&&(i=i[0]),fr(me().flowchart.htmlLabels)){i=i.replace(/\\n|\n/g,"
    "),Y.debug("vertexText"+i);let a={isNode:n,label:DD(na(i)),labelStyle:e.replace("fill:","color:")};return wtt(a)}else{let a=document.createElementNS("http://www.w3.org/2000/svg","text");a.setAttribute("style",e.replace("color:","fill:"));let s=[];typeof i=="string"?s=i.split(/\\n|\n|/gi):Array.isArray(i)?s=i:s=[];for(let l of s){let u=document.createElementNS("http://www.w3.org/2000/svg","tspan");u.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),u.setAttribute("dy","1em"),u.setAttribute("x","0"),r?u.setAttribute("class","title-row"):u.setAttribute("class","row"),u.textContent=l.trim(),a.appendChild(u)}return a}},"createLabel"),vs=Ttt});var $ye,ktt,Fye,zye=N(()=>{"use strict";vt();$ye=o((t,e,r,n,i)=>{e.arrowTypeStart&&Fye(t,"start",e.arrowTypeStart,r,n,i),e.arrowTypeEnd&&Fye(t,"end",e.arrowTypeEnd,r,n,i)},"addEdgeMarkers"),ktt={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},Fye=o((t,e,r,n,i,a)=>{let s=ktt[r];if(!s){Y.warn(`Unknown arrow type: ${r}`);return}let l=e==="start"?"Start":"End";t.attr(`marker-${e}`,`url(${n}#${i}_${a}-${s}${l})`)},"addEdgeMarker")});function nC(t,e){me().flowchart.htmlLabels&&t&&(t.style.width=e.length*9+"px",t.style.height="12px")}var tF,Ua,Vye,Uye,Ett,Stt,Gye,Hye,Wye=N(()=>{"use strict";vt();rC();to();dr();zt();ir();gr();JD();w2();zye();tF={},Ua={},Vye=o((t,e)=>{let r=me(),n=fr(r.flowchart.htmlLabels),i=e.labelType==="markdown"?Hn(t,e.label,{style:e.labelStyle,useHtmlLabels:n,addSvgBackground:!0},r):vs(e.label,e.labelStyle),a=t.insert("g").attr("class","edgeLabel"),s=a.insert("g").attr("class","label");s.node().appendChild(i);let l=i.getBBox();if(n){let h=i.children[0],f=Ge(i);l=h.getBoundingClientRect(),f.attr("width",l.width),f.attr("height",l.height)}s.attr("transform","translate("+-l.width/2+", "+-l.height/2+")"),tF[e.id]=a,e.width=l.width,e.height=l.height;let u;if(e.startLabelLeft){let h=vs(e.startLabelLeft,e.labelStyle),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),Ua[e.id]||(Ua[e.id]={}),Ua[e.id].startLeft=f,nC(u,e.startLabelLeft)}if(e.startLabelRight){let h=vs(e.startLabelRight,e.labelStyle),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=f.node().appendChild(h),d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),Ua[e.id]||(Ua[e.id]={}),Ua[e.id].startRight=f,nC(u,e.startLabelRight)}if(e.endLabelLeft){let h=vs(e.endLabelLeft,e.labelStyle),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),f.node().appendChild(h),Ua[e.id]||(Ua[e.id]={}),Ua[e.id].endLeft=f,nC(u,e.endLabelLeft)}if(e.endLabelRight){let h=vs(e.endLabelRight,e.labelStyle),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),f.node().appendChild(h),Ua[e.id]||(Ua[e.id]={}),Ua[e.id].endRight=f,nC(u,e.endLabelRight)}return i},"insertEdgeLabel");o(nC,"setTerminalWidth");Uye=o((t,e)=>{Y.debug("Moving label abc88 ",t.id,t.label,tF[t.id],e);let r=e.updatedPath?e.updatedPath:e.originalPath,n=me(),{subGraphTitleTotalMargin:i}=Ru(n);if(t.label){let a=tF[t.id],s=t.x,l=t.y;if(r){let u=Gt.calcLabelPosition(r);Y.debug("Moving label "+t.label+" from (",s,",",l,") to (",u.x,",",u.y,") abc88"),e.updatedPath&&(s=u.x,l=u.y)}a.attr("transform",`translate(${s}, ${l+i/2})`)}if(t.startLabelLeft){let a=Ua[t.id].startLeft,s=t.x,l=t.y;if(r){let u=Gt.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.startLabelRight){let a=Ua[t.id].startRight,s=t.x,l=t.y;if(r){let u=Gt.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.endLabelLeft){let a=Ua[t.id].endLeft,s=t.x,l=t.y;if(r){let u=Gt.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.endLabelRight){let a=Ua[t.id].endRight,s=t.x,l=t.y;if(r){let u=Gt.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}},"positionEdgeLabel"),Ett=o((t,e)=>{let r=t.x,n=t.y,i=Math.abs(e.x-r),a=Math.abs(e.y-n),s=t.width/2,l=t.height/2;return i>=s||a>=l},"outsideNode"),Stt=o((t,e,r)=>{Y.debug(`intersection calc abc89: + outsidePoint: ${JSON.stringify(e)} + insidePoint : ${JSON.stringify(r)} + node : x:${t.x} y:${t.y} w:${t.width} h:${t.height}`);let n=t.x,i=t.y,a=Math.abs(n-r.x),s=t.width/2,l=r.xMath.abs(n-e.x)*u){let d=r.y{Y.debug("abc88 cutPathAtIntersect",t,e);let r=[],n=t[0],i=!1;return t.forEach(a=>{if(!Ett(e,a)&&!i){let s=Stt(e,n,a),l=!1;r.forEach(u=>{l=l||u.x===s.x&&u.y===s.y}),r.some(u=>u.x===s.x&&u.y===s.y)||r.push(s),i=!0}else n=a,i||r.push(a)}),r},"cutPathAtIntersect"),Hye=o(function(t,e,r,n,i,a,s){let l=r.points;Y.debug("abc88 InsertEdge: edge=",r,"e=",e);let u=!1,h=a.node(e.v);var f=a.node(e.w);f?.intersect&&h?.intersect&&(l=l.slice(1,r.points.length-1),l.unshift(h.intersect(l[0])),l.push(f.intersect(l[l.length-1]))),r.toCluster&&(Y.debug("to cluster abc88",n[r.toCluster]),l=Gye(r.points,n[r.toCluster].node),u=!0),r.fromCluster&&(Y.debug("from cluster abc88",n[r.fromCluster]),l=Gye(l.reverse(),n[r.fromCluster].node).reverse(),u=!0);let d=l.filter(C=>!Number.isNaN(C.y)),p=Do;r.curve&&(i==="graph"||i==="flowchart")&&(p=r.curve);let{x:m,y:g}=qw(r),y=wl().x(m).y(g).curve(p),v;switch(r.thickness){case"normal":v="edge-thickness-normal";break;case"thick":v="edge-thickness-thick";break;case"invisible":v="edge-thickness-thick";break;default:v=""}switch(r.pattern){case"solid":v+=" edge-pattern-solid";break;case"dotted":v+=" edge-pattern-dotted";break;case"dashed":v+=" edge-pattern-dashed";break}let x=t.append("path").attr("d",y(d)).attr("id",r.id).attr("class"," "+v+(r.classes?" "+r.classes:"")).attr("style",r.style),b="";(me().flowchart.arrowMarkerAbsolute||me().state.arrowMarkerAbsolute)&&(b=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,b=b.replace(/\(/g,"\\("),b=b.replace(/\)/g,"\\)")),$ye(x,r,b,s,i);let w={};return u&&(w.updatedPath=l),w.originalPath=r.points,w},"insertEdge")});var Ctt,qye,Yye=N(()=>{"use strict";Ctt=o(t=>{let e=new Set;for(let r of t)switch(r){case"x":e.add("right"),e.add("left");break;case"y":e.add("up"),e.add("down");break;default:e.add(r);break}return e},"expandAndDeduplicateDirections"),qye=o((t,e,r)=>{let n=Ctt(t),i=2,a=e.height+2*r.padding,s=a/i,l=e.width+2*s+r.padding,u=r.padding/2;return n.has("right")&&n.has("left")&&n.has("up")&&n.has("down")?[{x:0,y:0},{x:s,y:0},{x:l/2,y:2*u},{x:l-s,y:0},{x:l,y:0},{x:l,y:-a/3},{x:l+2*u,y:-a/2},{x:l,y:-2*a/3},{x:l,y:-a},{x:l-s,y:-a},{x:l/2,y:-a-2*u},{x:s,y:-a},{x:0,y:-a},{x:0,y:-2*a/3},{x:-2*u,y:-a/2},{x:0,y:-a/3}]:n.has("right")&&n.has("left")&&n.has("up")?[{x:s,y:0},{x:l-s,y:0},{x:l,y:-a/2},{x:l-s,y:-a},{x:s,y:-a},{x:0,y:-a/2}]:n.has("right")&&n.has("left")&&n.has("down")?[{x:0,y:0},{x:s,y:-a},{x:l-s,y:-a},{x:l,y:0}]:n.has("right")&&n.has("up")&&n.has("down")?[{x:0,y:0},{x:l,y:-s},{x:l,y:-a+s},{x:0,y:-a}]:n.has("left")&&n.has("up")&&n.has("down")?[{x:l,y:0},{x:0,y:-s},{x:0,y:-a+s},{x:l,y:-a}]:n.has("right")&&n.has("left")?[{x:s,y:0},{x:s,y:-u},{x:l-s,y:-u},{x:l-s,y:0},{x:l,y:-a/2},{x:l-s,y:-a},{x:l-s,y:-a+u},{x:s,y:-a+u},{x:s,y:-a},{x:0,y:-a/2}]:n.has("up")&&n.has("down")?[{x:l/2,y:0},{x:0,y:-u},{x:s,y:-u},{x:s,y:-a+u},{x:0,y:-a+u},{x:l/2,y:-a},{x:l,y:-a+u},{x:l-s,y:-a+u},{x:l-s,y:-u},{x:l,y:-u}]:n.has("right")&&n.has("up")?[{x:0,y:0},{x:l,y:-s},{x:0,y:-a}]:n.has("right")&&n.has("down")?[{x:0,y:0},{x:l,y:0},{x:0,y:-a}]:n.has("left")&&n.has("up")?[{x:l,y:0},{x:0,y:-s},{x:l,y:-a}]:n.has("left")&&n.has("down")?[{x:l,y:0},{x:0,y:0},{x:l,y:-a}]:n.has("right")?[{x:s,y:-u},{x:s,y:-u},{x:l-s,y:-u},{x:l-s,y:0},{x:l,y:-a/2},{x:l-s,y:-a},{x:l-s,y:-a+u},{x:s,y:-a+u},{x:s,y:-a+u}]:n.has("left")?[{x:s,y:0},{x:s,y:-u},{x:l-s,y:-u},{x:l-s,y:-a+u},{x:s,y:-a+u},{x:s,y:-a},{x:0,y:-a/2}]:n.has("up")?[{x:s,y:-u},{x:s,y:-a+u},{x:0,y:-a+u},{x:l/2,y:-a},{x:l,y:-a+u},{x:l-s,y:-a+u},{x:l-s,y:-u}]:n.has("down")?[{x:l/2,y:0},{x:0,y:-u},{x:s,y:-u},{x:s,y:-a+u},{x:l-s,y:-a+u},{x:l-s,y:-u},{x:l,y:-u}]:[{x:0,y:0}]},"getArrowPoints")});function Att(t,e){return t.intersect(e)}var Xye,jye=N(()=>{"use strict";o(Att,"intersectNode");Xye=Att});function _tt(t,e,r,n){var i=t.x,a=t.y,s=i-n.x,l=a-n.y,u=Math.sqrt(e*e*l*l+r*r*s*s),h=Math.abs(e*r*s/u);n.x{"use strict";o(_tt,"intersectEllipse");iC=_tt});function Dtt(t,e,r){return iC(t,e,e,r)}var Kye,Qye=N(()=>{"use strict";rF();o(Dtt,"intersectCircle");Kye=Dtt});function Ltt(t,e,r,n){var i,a,s,l,u,h,f,d,p,m,g,y,v,x,b;if(i=e.y-t.y,s=t.x-e.x,u=e.x*t.y-t.x*e.y,p=i*r.x+s*r.y+u,m=i*n.x+s*n.y+u,!(p!==0&&m!==0&&Zye(p,m))&&(a=n.y-r.y,l=r.x-n.x,h=n.x*r.y-r.x*n.y,f=a*t.x+l*t.y+h,d=a*e.x+l*e.y+h,!(f!==0&&d!==0&&Zye(f,d))&&(g=i*l-a*s,g!==0)))return y=Math.abs(g/2),v=s*h-l*u,x=v<0?(v-y)/g:(v+y)/g,v=a*u-i*h,b=v<0?(v-y)/g:(v+y)/g,{x,y:b}}function Zye(t,e){return t*e>0}var Jye,eve=N(()=>{"use strict";o(Ltt,"intersectLine");o(Zye,"sameSign");Jye=Ltt});function Rtt(t,e,r){var n=t.x,i=t.y,a=[],s=Number.POSITIVE_INFINITY,l=Number.POSITIVE_INFINITY;typeof e.forEach=="function"?e.forEach(function(g){s=Math.min(s,g.x),l=Math.min(l,g.y)}):(s=Math.min(s,e.x),l=Math.min(l,e.y));for(var u=n-t.width/2-s,h=i-t.height/2-l,f=0;f1&&a.sort(function(g,y){var v=g.x-r.x,x=g.y-r.y,b=Math.sqrt(v*v+x*x),w=y.x-r.x,C=y.y-r.y,T=Math.sqrt(w*w+C*C);return b{"use strict";eve();tve=Rtt;o(Rtt,"intersectPolygon")});var Ntt,nve,ive=N(()=>{"use strict";Ntt=o((t,e)=>{var r=t.x,n=t.y,i=e.x-r,a=e.y-n,s=t.width/2,l=t.height/2,u,h;return Math.abs(a)*s>Math.abs(i)*l?(a<0&&(l=-l),u=a===0?0:l*i/a,h=l):(i<0&&(s=-s),u=s,h=i===0?0:s*a/i),{x:r+u,y:n+h}},"intersectRect"),nve=Ntt});var In,nF=N(()=>{"use strict";jye();Qye();rF();rve();ive();In={node:Xye,circle:Kye,ellipse:iC,polygon:tve,rect:nve}});function Hl(t,e,r,n){return t.insert("polygon",":first-child").attr("points",n.map(function(i){return i.x+","+i.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-e/2+","+r/2+")")}var Di,Qn,iF=N(()=>{"use strict";rC();to();zt();dr();gr();ir();Di=o(async(t,e,r,n)=>{let i=me(),a,s=e.useHtmlLabels||fr(i.flowchart.htmlLabels);r?a=r:a="node default";let l=t.insert("g").attr("class",a).attr("id",e.domId||e.id),u=l.insert("g").attr("class","label").attr("style",e.labelStyle),h;e.labelText===void 0?h="":h=typeof e.labelText=="string"?e.labelText:e.labelText[0];let f=u.node(),d;e.labelType==="markdown"?d=Hn(u,Tr(na(h),i),{useHtmlLabels:s,width:e.width||i.flowchart.wrappingWidth,classes:"markdown-node-label"},i):d=f.appendChild(vs(Tr(na(h),i),e.labelStyle,!1,n));let p=d.getBBox(),m=e.padding/2;if(fr(i.flowchart.htmlLabels)){let g=d.children[0],y=Ge(d),v=g.getElementsByTagName("img");if(v){let x=h.replace(/]*>/g,"").trim()==="";await Promise.all([...v].map(b=>new Promise(w=>{function C(){if(b.style.display="flex",b.style.flexDirection="column",x){let T=i.fontSize?i.fontSize:window.getComputedStyle(document.body).fontSize,A=parseInt(T,10)*5+"px";b.style.minWidth=A,b.style.maxWidth=A}else b.style.width="100%";w(b)}o(C,"setupImage"),setTimeout(()=>{b.complete&&C()}),b.addEventListener("error",C),b.addEventListener("load",C)})))}p=g.getBoundingClientRect(),y.attr("width",p.width),y.attr("height",p.height)}return s?u.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"):u.attr("transform","translate(0, "+-p.height/2+")"),e.centerLabel&&u.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),u.insert("rect",":first-child"),{shapeSvg:l,bbox:p,halfPadding:m,label:u}},"labelHelper"),Qn=o((t,e)=>{let r=e.node().getBBox();t.width=r.width,t.height=r.height},"updateNodeBounds");o(Hl,"insertPolygonShape")});var Mtt,ave,sve=N(()=>{"use strict";iF();vt();zt();nF();Mtt=o(async(t,e)=>{e.useHtmlLabels||me().flowchart.htmlLabels||(e.centerLabel=!0);let{shapeSvg:n,bbox:i,halfPadding:a}=await Di(t,e,"node "+e.classes,!0);Y.info("Classes = ",e.classes);let s=n.insert("rect",":first-child");return s.attr("rx",e.rx).attr("ry",e.ry).attr("x",-i.width/2-a).attr("y",-i.height/2-a).attr("width",i.width+e.padding).attr("height",i.height+e.padding),Qn(e,s),e.intersect=function(l){return In.rect(e,l)},n},"note"),ave=Mtt});function aF(t,e,r,n){let i=[],a=o(l=>{i.push(l,0)},"addBorder"),s=o(l=>{i.push(0,l)},"skipBorder");e.includes("t")?(Y.debug("add top border"),a(r)):s(r),e.includes("r")?(Y.debug("add right border"),a(n)):s(n),e.includes("b")?(Y.debug("add bottom border"),a(r)):s(r),e.includes("l")?(Y.debug("add left border"),a(n)):s(n),t.attr("stroke-dasharray",i.join(" "))}var ove,yo,lve,Itt,Ott,Ptt,Btt,Ftt,$tt,ztt,Gtt,Vtt,Utt,Htt,Wtt,qtt,Ytt,Xtt,jtt,Ktt,Qtt,Ztt,cve,Jtt,ert,uve,aC,sF,hve,fve=N(()=>{"use strict";dr();zt();gr();vt();Yye();rC();nF();sve();iF();ove=o(t=>t?" "+t:"","formatClass"),yo=o((t,e)=>`${e||"node default"}${ove(t.classes)} ${ove(t.class)}`,"getClassesFromNode"),lve=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Di(t,e,yo(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=i+a,l=[{x:s/2,y:0},{x:s,y:-s/2},{x:s/2,y:-s},{x:0,y:-s/2}];Y.info("Question main (Circle)");let u=Hl(r,s,s,l);return u.attr("style",e.style),Qn(e,u),e.intersect=function(h){return Y.warn("Intersect called"),In.polygon(e,l,h)},r},"question"),Itt=o((t,e)=>{let r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),n=28,i=[{x:0,y:n/2},{x:n/2,y:0},{x:0,y:-n/2},{x:-n/2,y:0}];return r.insert("polygon",":first-child").attr("points",i.map(function(s){return s.x+","+s.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),e.width=28,e.height=28,e.intersect=function(s){return In.circle(e,14,s)},r},"choice"),Ott=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Di(t,e,yo(e,void 0),!0),i=4,a=n.height+e.padding,s=a/i,l=n.width+2*s+e.padding,u=[{x:s,y:0},{x:l-s,y:0},{x:l,y:-a/2},{x:l-s,y:-a},{x:s,y:-a},{x:0,y:-a/2}],h=Hl(r,l,a,u);return h.attr("style",e.style),Qn(e,h),e.intersect=function(f){return In.polygon(e,u,f)},r},"hexagon"),Ptt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Di(t,e,void 0,!0),i=2,a=n.height+2*e.padding,s=a/i,l=n.width+2*s+e.padding,u=qye(e.directions,n,e),h=Hl(r,l,a,u);return h.attr("style",e.style),Qn(e,h),e.intersect=function(f){return In.polygon(e,u,f)},r},"block_arrow"),Btt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Di(t,e,yo(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:-a/2,y:0},{x:i,y:0},{x:i,y:-a},{x:-a/2,y:-a},{x:0,y:-a/2}];return Hl(r,i,a,s).attr("style",e.style),e.width=i+a,e.height=a,e.intersect=function(u){return In.polygon(e,s,u)},r},"rect_left_inv_arrow"),Ftt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Di(t,e,yo(e),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:-2*a/6,y:0},{x:i-a/6,y:0},{x:i+2*a/6,y:-a},{x:a/6,y:-a}],l=Hl(r,i,a,s);return l.attr("style",e.style),Qn(e,l),e.intersect=function(u){return In.polygon(e,s,u)},r},"lean_right"),$tt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Di(t,e,yo(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:2*a/6,y:0},{x:i+a/6,y:0},{x:i-2*a/6,y:-a},{x:-a/6,y:-a}],l=Hl(r,i,a,s);return l.attr("style",e.style),Qn(e,l),e.intersect=function(u){return In.polygon(e,s,u)},r},"lean_left"),ztt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Di(t,e,yo(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:-2*a/6,y:0},{x:i+2*a/6,y:0},{x:i-a/6,y:-a},{x:a/6,y:-a}],l=Hl(r,i,a,s);return l.attr("style",e.style),Qn(e,l),e.intersect=function(u){return In.polygon(e,s,u)},r},"trapezoid"),Gtt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Di(t,e,yo(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:a/6,y:0},{x:i-a/6,y:0},{x:i+2*a/6,y:-a},{x:-2*a/6,y:-a}],l=Hl(r,i,a,s);return l.attr("style",e.style),Qn(e,l),e.intersect=function(u){return In.polygon(e,s,u)},r},"inv_trapezoid"),Vtt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Di(t,e,yo(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:0,y:0},{x:i+a/2,y:0},{x:i,y:-a/2},{x:i+a/2,y:-a},{x:0,y:-a}],l=Hl(r,i,a,s);return l.attr("style",e.style),Qn(e,l),e.intersect=function(u){return In.polygon(e,s,u)},r},"rect_right_inv_arrow"),Utt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Di(t,e,yo(e,void 0),!0),i=n.width+e.padding,a=i/2,s=a/(2.5+i/50),l=n.height+s+e.padding,u="M 0,"+s+" a "+a+","+s+" 0,0,0 "+i+" 0 a "+a+","+s+" 0,0,0 "+-i+" 0 l 0,"+l+" a "+a+","+s+" 0,0,0 "+i+" 0 l 0,"+-l,h=r.attr("label-offset-y",s).insert("path",":first-child").attr("style",e.style).attr("d",u).attr("transform","translate("+-i/2+","+-(l/2+s)+")");return Qn(e,h),e.intersect=function(f){let d=In.rect(e,f),p=d.x-e.x;if(a!=0&&(Math.abs(p)e.height/2-s)){let m=s*s*(1-p*p/(a*a));m!=0&&(m=Math.sqrt(m)),m=s-m,f.y-e.y>0&&(m=-m),d.y+=m}return d},r},"cylinder"),Htt=o(async(t,e)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Di(t,e,"node "+e.classes+" "+e.class,!0),a=r.insert("rect",":first-child"),s=e.positioned?e.width:n.width+e.padding,l=e.positioned?e.height:n.height+e.padding,u=e.positioned?-s/2:-n.width/2-i,h=e.positioned?-l/2:-n.height/2-i;if(a.attr("class","basic label-container").attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("x",u).attr("y",h).attr("width",s).attr("height",l),e.props){let f=new Set(Object.keys(e.props));e.props.borders&&(aF(a,e.props.borders,s,l),f.delete("borders")),f.forEach(d=>{Y.warn(`Unknown node property ${d}`)})}return Qn(e,a),e.intersect=function(f){return In.rect(e,f)},r},"rect"),Wtt=o(async(t,e)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Di(t,e,"node "+e.classes,!0),a=r.insert("rect",":first-child"),s=e.positioned?e.width:n.width+e.padding,l=e.positioned?e.height:n.height+e.padding,u=e.positioned?-s/2:-n.width/2-i,h=e.positioned?-l/2:-n.height/2-i;if(a.attr("class","basic cluster composite label-container").attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("x",u).attr("y",h).attr("width",s).attr("height",l),e.props){let f=new Set(Object.keys(e.props));e.props.borders&&(aF(a,e.props.borders,s,l),f.delete("borders")),f.forEach(d=>{Y.warn(`Unknown node property ${d}`)})}return Qn(e,a),e.intersect=function(f){return In.rect(e,f)},r},"composite"),qtt=o(async(t,e)=>{let{shapeSvg:r}=await Di(t,e,"label",!0);Y.trace("Classes = ",e.class);let n=r.insert("rect",":first-child"),i=0,a=0;if(n.attr("width",i).attr("height",a),r.attr("class","label edgeLabel"),e.props){let s=new Set(Object.keys(e.props));e.props.borders&&(aF(n,e.props.borders,i,a),s.delete("borders")),s.forEach(l=>{Y.warn(`Unknown node property ${l}`)})}return Qn(e,n),e.intersect=function(s){return In.rect(e,s)},r},"labelRect");o(aF,"applyNodePropertyBorders");Ytt=o((t,e)=>{let r;e.classes?r="node "+e.classes:r="node default";let n=t.insert("g").attr("class",r).attr("id",e.domId||e.id),i=n.insert("rect",":first-child"),a=n.insert("line"),s=n.insert("g").attr("class","label"),l=e.labelText.flat?e.labelText.flat():e.labelText,u="";typeof l=="object"?u=l[0]:u=l,Y.info("Label text abc79",u,l,typeof l=="object");let h=s.node().appendChild(vs(u,e.labelStyle,!0,!0)),f={width:0,height:0};if(fr(me().flowchart.htmlLabels)){let y=h.children[0],v=Ge(h);f=y.getBoundingClientRect(),v.attr("width",f.width),v.attr("height",f.height)}Y.info("Text 2",l);let d=l.slice(1,l.length),p=h.getBBox(),m=s.node().appendChild(vs(d.join?d.join("
    "):d,e.labelStyle,!0,!0));if(fr(me().flowchart.htmlLabels)){let y=m.children[0],v=Ge(m);f=y.getBoundingClientRect(),v.attr("width",f.width),v.attr("height",f.height)}let g=e.padding/2;return Ge(m).attr("transform","translate( "+(f.width>p.width?0:(p.width-f.width)/2)+", "+(p.height+g+5)+")"),Ge(h).attr("transform","translate( "+(f.width{let{shapeSvg:r,bbox:n}=await Di(t,e,yo(e,void 0),!0),i=n.height+e.padding,a=n.width+i/4+e.padding,s=r.insert("rect",":first-child").attr("style",e.style).attr("rx",i/2).attr("ry",i/2).attr("x",-a/2).attr("y",-i/2).attr("width",a).attr("height",i);return Qn(e,s),e.intersect=function(l){return In.rect(e,l)},r},"stadium"),jtt=o(async(t,e)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Di(t,e,yo(e,void 0),!0),a=r.insert("circle",":first-child");return a.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",n.width/2+i).attr("width",n.width+e.padding).attr("height",n.height+e.padding),Y.info("Circle main"),Qn(e,a),e.intersect=function(s){return Y.info("Circle intersect",e,n.width/2+i,s),In.circle(e,n.width/2+i,s)},r},"circle"),Ktt=o(async(t,e)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Di(t,e,yo(e,void 0),!0),a=5,s=r.insert("g",":first-child"),l=s.insert("circle"),u=s.insert("circle");return s.attr("class",e.class),l.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",n.width/2+i+a).attr("width",n.width+e.padding+a*2).attr("height",n.height+e.padding+a*2),u.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",n.width/2+i).attr("width",n.width+e.padding).attr("height",n.height+e.padding),Y.info("DoubleCircle main"),Qn(e,l),e.intersect=function(h){return Y.info("DoubleCircle intersect",e,n.width/2+i+a,h),In.circle(e,n.width/2+i+a,h)},r},"doublecircle"),Qtt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Di(t,e,yo(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:0,y:0},{x:i,y:0},{x:i,y:-a},{x:0,y:-a},{x:0,y:0},{x:-8,y:0},{x:i+8,y:0},{x:i+8,y:-a},{x:-8,y:-a},{x:-8,y:0}],l=Hl(r,i,a,s);return l.attr("style",e.style),Qn(e,l),e.intersect=function(u){return In.polygon(e,s,u)},r},"subroutine"),Ztt=o((t,e)=>{let r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),n=r.insert("circle",":first-child");return n.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),Qn(e,n),e.intersect=function(i){return In.circle(e,7,i)},r},"start"),cve=o((t,e,r)=>{let n=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),i=70,a=10;r==="LR"&&(i=10,a=70);let s=n.append("rect").attr("x",-1*i/2).attr("y",-1*a/2).attr("width",i).attr("height",a).attr("class","fork-join");return Qn(e,s),e.height=e.height+e.padding/2,e.width=e.width+e.padding/2,e.intersect=function(l){return In.rect(e,l)},n},"forkJoin"),Jtt=o((t,e)=>{let r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),n=r.insert("circle",":first-child"),i=r.insert("circle",":first-child");return i.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),n.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),Qn(e,i),e.intersect=function(a){return In.circle(e,7,a)},r},"end"),ert=o((t,e)=>{let r=e.padding/2,n=4,i=8,a;e.classes?a="node "+e.classes:a="node default";let s=t.insert("g").attr("class",a).attr("id",e.domId||e.id),l=s.insert("rect",":first-child"),u=s.insert("line"),h=s.insert("line"),f=0,d=n,p=s.insert("g").attr("class","label"),m=0,g=e.classData.annotations?.[0],y=e.classData.annotations[0]?"\xAB"+e.classData.annotations[0]+"\xBB":"",v=p.node().appendChild(vs(y,e.labelStyle,!0,!0)),x=v.getBBox();if(fr(me().flowchart.htmlLabels)){let S=v.children[0],_=Ge(v);x=S.getBoundingClientRect(),_.attr("width",x.width),_.attr("height",x.height)}e.classData.annotations[0]&&(d+=x.height+n,f+=x.width);let b=e.classData.label;e.classData.type!==void 0&&e.classData.type!==""&&(me().flowchart.htmlLabels?b+="<"+e.classData.type+">":b+="<"+e.classData.type+">");let w=p.node().appendChild(vs(b,e.labelStyle,!0,!0));Ge(w).attr("class","classTitle");let C=w.getBBox();if(fr(me().flowchart.htmlLabels)){let S=w.children[0],_=Ge(w);C=S.getBoundingClientRect(),_.attr("width",C.width),_.attr("height",C.height)}d+=C.height+n,C.width>f&&(f=C.width);let T=[];e.classData.members.forEach(S=>{let _=S.getDisplayDetails(),I=_.displayText;me().flowchart.htmlLabels&&(I=I.replace(//g,">"));let D=p.node().appendChild(vs(I,_.cssStyle?_.cssStyle:e.labelStyle,!0,!0)),k=D.getBBox();if(fr(me().flowchart.htmlLabels)){let L=D.children[0],R=Ge(D);k=L.getBoundingClientRect(),R.attr("width",k.width),R.attr("height",k.height)}k.width>f&&(f=k.width),d+=k.height+n,T.push(D)}),d+=i;let E=[];if(e.classData.methods.forEach(S=>{let _=S.getDisplayDetails(),I=_.displayText;me().flowchart.htmlLabels&&(I=I.replace(//g,">"));let D=p.node().appendChild(vs(I,_.cssStyle?_.cssStyle:e.labelStyle,!0,!0)),k=D.getBBox();if(fr(me().flowchart.htmlLabels)){let L=D.children[0],R=Ge(D);k=L.getBoundingClientRect(),R.attr("width",k.width),R.attr("height",k.height)}k.width>f&&(f=k.width),d+=k.height+n,E.push(D)}),d+=i,g){let S=(f-x.width)/2;Ge(v).attr("transform","translate( "+(-1*f/2+S)+", "+-1*d/2+")"),m=x.height+n}let A=(f-C.width)/2;return Ge(w).attr("transform","translate( "+(-1*f/2+A)+", "+(-1*d/2+m)+")"),m+=C.height+n,u.attr("class","divider").attr("x1",-f/2-r).attr("x2",f/2+r).attr("y1",-d/2-r+i+m).attr("y2",-d/2-r+i+m),m+=i,T.forEach(S=>{Ge(S).attr("transform","translate( "+-f/2+", "+(-1*d/2+m+i/2)+")");let _=S?.getBBox();m+=(_?.height??0)+n}),m+=i,h.attr("class","divider").attr("x1",-f/2-r).attr("x2",f/2+r).attr("y1",-d/2-r+i+m).attr("y2",-d/2-r+i+m),m+=i,E.forEach(S=>{Ge(S).attr("transform","translate( "+-f/2+", "+(-1*d/2+m)+")");let _=S?.getBBox();m+=(_?.height??0)+n}),l.attr("style",e.style).attr("class","outer title-state").attr("x",-f/2-r).attr("y",-(d/2)-r).attr("width",f+e.padding).attr("height",d+e.padding),Qn(e,l),e.intersect=function(S){return In.rect(e,S)},s},"class_box"),uve={rhombus:lve,composite:Wtt,question:lve,rect:Htt,labelRect:qtt,rectWithTitle:Ytt,choice:Itt,circle:jtt,doublecircle:Ktt,stadium:Xtt,hexagon:Ott,block_arrow:Ptt,rect_left_inv_arrow:Btt,lean_right:Ftt,lean_left:$tt,trapezoid:ztt,inv_trapezoid:Gtt,rect_right_inv_arrow:Vtt,cylinder:Utt,start:Ztt,end:Jtt,note:ave,subroutine:Qtt,fork:cve,join:cve,class_box:ert},aC={},sF=o(async(t,e,r)=>{let n,i;if(e.link){let a;me().securityLevel==="sandbox"?a="_top":e.linkTarget&&(a=e.linkTarget||"_blank"),n=t.insert("svg:a").attr("xlink:href",e.link).attr("target",a),i=await uve[e.shape](n,e,r)}else i=await uve[e.shape](t,e,r),n=i;return e.tooltip&&i.attr("title",e.tooltip),e.class&&i.attr("class","node default "+e.class),aC[e.id]=n,e.haveCallback&&aC[e.id].attr("class",aC[e.id].attr("class")+" clickable"),n},"insertNode"),hve=o(t=>{let e=aC[t.id];Y.trace("Transforming node",t.diff,t,"translate("+(t.x-t.width/2-5)+", "+t.width/2+")");let r=8,n=t.diff||0;return t.clusterNode?e.attr("transform","translate("+(t.x+n-t.width/2)+", "+(t.y-t.height/2-r)+")"):e.attr("transform","translate("+t.x+", "+t.y+")"),n},"positionNode")});function dve(t,e,r=!1){let n=t,i="default";(n?.classes?.length||0)>0&&(i=(n?.classes??[]).join(" ")),i=i+" flowchart-label";let a=0,s="",l;switch(n.type){case"round":a=5,s="rect";break;case"composite":a=0,s="composite",l=0;break;case"square":s="rect";break;case"diamond":s="question";break;case"hexagon":s="hexagon";break;case"block_arrow":s="block_arrow";break;case"odd":s="rect_left_inv_arrow";break;case"lean_right":s="lean_right";break;case"lean_left":s="lean_left";break;case"trapezoid":s="trapezoid";break;case"inv_trapezoid":s="inv_trapezoid";break;case"rect_left_inv_arrow":s="rect_left_inv_arrow";break;case"circle":s="circle";break;case"ellipse":s="ellipse";break;case"stadium":s="stadium";break;case"subroutine":s="subroutine";break;case"cylinder":s="cylinder";break;case"group":s="rect";break;case"doublecircle":s="doublecircle";break;default:s="rect"}let u=Y9(n?.styles??[]),h=n.label,f=n.size??{width:0,height:0,x:0,y:0};return{labelStyle:u.labelStyle,shape:s,labelText:h,rx:a,ry:a,class:i,style:u.style,id:n.id,directions:n.directions,width:f.width,height:f.height,x:f.x,y:f.y,positioned:r,intersect:void 0,type:n.type,padding:l??cr()?.block?.padding??0}}async function trt(t,e,r){let n=dve(e,r,!1);if(n.type==="group")return;let i=cr(),a=await sF(t,n,{config:i}),s=a.node().getBBox(),l=r.getBlock(n.id);l.size={width:s.width,height:s.height,x:0,y:0,node:a},r.setBlock(l),a.remove()}async function rrt(t,e,r){let n=dve(e,r,!0);if(r.getBlock(n.id).type!=="space"){let a=cr();await sF(t,n,{config:a}),e.intersect=n?.intersect,hve(n)}}async function oF(t,e,r,n){for(let i of e)await n(t,i,r),i.children&&await oF(t,i.children,r,n)}async function pve(t,e,r){await oF(t,e,r,trt)}async function mve(t,e,r){await oF(t,e,r,rrt)}async function gve(t,e,r,n,i){let a=new sn({multigraph:!0,compound:!0});a.setGraph({rankdir:"TB",nodesep:10,ranksep:10,marginx:8,marginy:8});for(let s of r)s.size&&a.setNode(s.id,{width:s.size.width,height:s.size.height,intersect:s.intersect});for(let s of e)if(s.start&&s.end){let l=n.getBlock(s.start),u=n.getBlock(s.end);if(l?.size&&u?.size){let h=l.size,f=u.size,d=[{x:h.x,y:h.y},{x:h.x+(f.x-h.x)/2,y:h.y+(f.y-h.y)/2},{x:f.x,y:f.y}];Hye(t,{v:s.start,w:s.end,name:s.id},{...s,arrowTypeEnd:s.arrowTypeEnd,arrowTypeStart:s.arrowTypeStart,points:d,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"},void 0,"block",a,i),s.label&&(await Vye(t,{...s,label:s.label,labelStyle:"stroke: #333; stroke-width: 1.5px;fill:none;",arrowTypeEnd:s.arrowTypeEnd,arrowTypeStart:s.arrowTypeStart,points:d,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"}),Uye({...s,x:d[1].x,y:d[1].y},{originalPath:d}))}}}var yve=N(()=>{"use strict";Vo();ji();Wye();fve();ir();o(dve,"getNodeFromBlock");o(trt,"calculateBlockSize");o(rrt,"insertBlockPositioned");o(oF,"performOperations");o(pve,"calculateBlockSizes");o(mve,"insertBlocks");o(gve,"insertEdges")});var nrt,irt,vve,xve=N(()=>{"use strict";dr();ji();Nye();vt();Ei();Pye();yve();nrt=o(function(t,e){return e.db.getClasses()},"getClasses"),irt=o(async function(t,e,r,n){let{securityLevel:i,block:a}=cr(),s=n.db,l;i==="sandbox"&&(l=Ge("#i"+e));let u=i==="sandbox"?Ge(l.nodes()[0].contentDocument.body):Ge("body"),h=i==="sandbox"?u.select(`[id="${e}"]`):Ge(`[id="${e}"]`);Rye(h,["point","circle","cross"],n.type,e);let d=s.getBlocks(),p=s.getBlocksFlat(),m=s.getEdges(),g=h.insert("g").attr("class","block");await pve(g,d,s);let y=Oye(s);if(await mve(g,d,s),await gve(g,m,p,s,e),y){let v=y,x=Math.max(1,Math.round(.125*(v.width/v.height))),b=v.height+x+10,w=v.width+10,{useMaxWidth:C}=a;vn(h,b,w,!!C),Y.debug("Here Bounds",y,v),h.attr("viewBox",`${v.x-5} ${v.y-5} ${v.width+10} ${v.height+10}`)}},"draw"),vve={draw:irt,getClasses:nrt}});var bve={};hr(bve,{diagram:()=>art});var art,wve=N(()=>{"use strict";wye();_ye();Lye();xve();art={parser:bye,db:Aye,renderer:vve,styles:Dye}});var lF,cF,v4,Eve,uF,Ha,Zc,x4,Sve,crt,b4,Cve,Ave,_ve,Dve,Lve,sC,Ff,oC=N(()=>{"use strict";lF={L:"left",R:"right",T:"top",B:"bottom"},cF={L:o(t=>`${t},${t/2} 0,${t} 0,0`,"L"),R:o(t=>`0,${t/2} ${t},0 ${t},${t}`,"R"),T:o(t=>`0,0 ${t},0 ${t/2},${t}`,"T"),B:o(t=>`${t/2},0 ${t},${t} 0,${t}`,"B")},v4={L:o((t,e)=>t-e+2,"L"),R:o((t,e)=>t-2,"R"),T:o((t,e)=>t-e+2,"T"),B:o((t,e)=>t-2,"B")},Eve=o(function(t){return Ha(t)?t==="L"?"R":"L":t==="T"?"B":"T"},"getOppositeArchitectureDirection"),uF=o(function(t){let e=t;return e==="L"||e==="R"||e==="T"||e==="B"},"isArchitectureDirection"),Ha=o(function(t){let e=t;return e==="L"||e==="R"},"isArchitectureDirectionX"),Zc=o(function(t){let e=t;return e==="T"||e==="B"},"isArchitectureDirectionY"),x4=o(function(t,e){let r=Ha(t)&&Zc(e),n=Zc(t)&&Ha(e);return r||n},"isArchitectureDirectionXY"),Sve=o(function(t){let e=t[0],r=t[1],n=Ha(e)&&Zc(r),i=Zc(e)&&Ha(r);return n||i},"isArchitecturePairXY"),crt=o(function(t){return t!=="LL"&&t!=="RR"&&t!=="TT"&&t!=="BB"},"isValidArchitectureDirectionPair"),b4=o(function(t,e){let r=`${t}${e}`;return crt(r)?r:void 0},"getArchitectureDirectionPair"),Cve=o(function([t,e],r){let n=r[0],i=r[1];return Ha(n)?Zc(i)?[t+(n==="L"?-1:1),e+(i==="T"?1:-1)]:[t+(n==="L"?-1:1),e]:Ha(i)?[t+(i==="L"?1:-1),e+(n==="T"?1:-1)]:[t,e+(n==="T"?1:-1)]},"shiftPositionByArchitectureDirectionPair"),Ave=o(function(t){return t==="LT"||t==="TL"?[1,1]:t==="BL"||t==="LB"?[1,-1]:t==="BR"||t==="RB"?[-1,-1]:[-1,1]},"getArchitectureDirectionXYFactors"),_ve=o(function(t,e){return x4(t,e)?"bend":Ha(t)?"horizontal":"vertical"},"getArchitectureDirectionAlignment"),Dve=o(function(t){return t.type==="service"},"isArchitectureService"),Lve=o(function(t){return t.type==="junction"},"isArchitectureJunction"),sC=o(t=>t.data(),"edgeData"),Ff=o(t=>t.data(),"nodeData")});function Li(t){let e=me().architecture;return e?.[t]?e[t]:Rve[t]}var Rve,vr,urt,hrt,frt,drt,prt,mrt,hF,grt,yrt,vrt,xrt,brt,wrt,Trt,Qp,w4=N(()=>{"use strict";Ya();zt();s6();mi();oC();Rve=or.architecture,vr=new pf(()=>({nodes:{},groups:{},edges:[],registeredIds:{},config:Rve,dataStructures:void 0,elements:{}})),urt=o(()=>{vr.reset(),Ar()},"clear"),hrt=o(function({id:t,icon:e,in:r,title:n,iconText:i}){if(vr.records.registeredIds[t]!==void 0)throw new Error(`The service id [${t}] is already in use by another ${vr.records.registeredIds[t]}`);if(r!==void 0){if(t===r)throw new Error(`The service [${t}] cannot be placed within itself`);if(vr.records.registeredIds[r]===void 0)throw new Error(`The service [${t}]'s parent does not exist. Please make sure the parent is created before this service`);if(vr.records.registeredIds[r]==="node")throw new Error(`The service [${t}]'s parent is not a group`)}vr.records.registeredIds[t]="node",vr.records.nodes[t]={id:t,type:"service",icon:e,iconText:i,title:n,edges:[],in:r}},"addService"),frt=o(()=>Object.values(vr.records.nodes).filter(Dve),"getServices"),drt=o(function({id:t,in:e}){vr.records.registeredIds[t]="node",vr.records.nodes[t]={id:t,type:"junction",edges:[],in:e}},"addJunction"),prt=o(()=>Object.values(vr.records.nodes).filter(Lve),"getJunctions"),mrt=o(()=>Object.values(vr.records.nodes),"getNodes"),hF=o(t=>vr.records.nodes[t],"getNode"),grt=o(function({id:t,icon:e,in:r,title:n}){if(vr.records.registeredIds[t]!==void 0)throw new Error(`The group id [${t}] is already in use by another ${vr.records.registeredIds[t]}`);if(r!==void 0){if(t===r)throw new Error(`The group [${t}] cannot be placed within itself`);if(vr.records.registeredIds[r]===void 0)throw new Error(`The group [${t}]'s parent does not exist. Please make sure the parent is created before this group`);if(vr.records.registeredIds[r]==="node")throw new Error(`The group [${t}]'s parent is not a group`)}vr.records.registeredIds[t]="group",vr.records.groups[t]={id:t,icon:e,title:n,in:r}},"addGroup"),yrt=o(()=>Object.values(vr.records.groups),"getGroups"),vrt=o(function({lhsId:t,rhsId:e,lhsDir:r,rhsDir:n,lhsInto:i,rhsInto:a,lhsGroup:s,rhsGroup:l,title:u}){if(!uF(r))throw new Error(`Invalid direction given for left hand side of edge ${t}--${e}. Expected (L,R,T,B) got ${r}`);if(!uF(n))throw new Error(`Invalid direction given for right hand side of edge ${t}--${e}. Expected (L,R,T,B) got ${n}`);if(vr.records.nodes[t]===void 0&&vr.records.groups[t]===void 0)throw new Error(`The left-hand id [${t}] does not yet exist. Please create the service/group before declaring an edge to it.`);if(vr.records.nodes[e]===void 0&&vr.records.groups[t]===void 0)throw new Error(`The right-hand id [${e}] does not yet exist. Please create the service/group before declaring an edge to it.`);let h=vr.records.nodes[t].in,f=vr.records.nodes[e].in;if(s&&h&&f&&h==f)throw new Error(`The left-hand id [${t}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);if(l&&h&&f&&h==f)throw new Error(`The right-hand id [${e}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);let d={lhsId:t,lhsDir:r,lhsInto:i,lhsGroup:s,rhsId:e,rhsDir:n,rhsInto:a,rhsGroup:l,title:u};vr.records.edges.push(d),vr.records.nodes[t]&&vr.records.nodes[e]&&(vr.records.nodes[t].edges.push(vr.records.edges[vr.records.edges.length-1]),vr.records.nodes[e].edges.push(vr.records.edges[vr.records.edges.length-1]))},"addEdge"),xrt=o(()=>vr.records.edges,"getEdges"),brt=o(()=>{if(vr.records.dataStructures===void 0){let t={},e=Object.entries(vr.records.nodes).reduce((l,[u,h])=>(l[u]=h.edges.reduce((f,d)=>{let p=hF(d.lhsId)?.in,m=hF(d.rhsId)?.in;if(p&&m&&p!==m){let g=_ve(d.lhsDir,d.rhsDir);g!=="bend"&&(t[p]??={},t[p][m]=g,t[m]??={},t[m][p]=g)}if(d.lhsId===u){let g=b4(d.lhsDir,d.rhsDir);g&&(f[g]=d.rhsId)}else{let g=b4(d.rhsDir,d.lhsDir);g&&(f[g]=d.lhsId)}return f},{}),l),{}),r=Object.keys(e)[0],n={[r]:1},i=Object.keys(e).reduce((l,u)=>u===r?l:{...l,[u]:1},{}),a=o(l=>{let u={[l]:[0,0]},h=[l];for(;h.length>0;){let f=h.shift();if(f){n[f]=1,delete i[f];let d=e[f],[p,m]=u[f];Object.entries(d).forEach(([g,y])=>{n[y]||(u[y]=Cve([p,m],g),h.push(y))})}}return u},"BFS"),s=[a(r)];for(;Object.keys(i).length>0;)s.push(a(Object.keys(i)[0]));vr.records.dataStructures={adjList:e,spatialMaps:s,groupAlignments:t}}return vr.records.dataStructures},"getDataStructures"),wrt=o((t,e)=>{vr.records.elements[t]=e},"setElementForId"),Trt=o(t=>vr.records.elements[t],"getElementById"),Qp={clear:urt,setDiagramTitle:$r,getDiagramTitle:Ir,setAccTitle:Lr,getAccTitle:Rr,setAccDescription:Nr,getAccDescription:Mr,addService:hrt,getServices:frt,addJunction:drt,getJunctions:prt,getNodes:mrt,getNode:hF,addGroup:grt,getGroups:yrt,addEdge:vrt,getEdges:xrt,setElementForId:wrt,getElementById:Trt,getDataStructures:brt};o(Li,"getConfigField")});var krt,Nve,Mve=N(()=>{"use strict";kp();vt();T1();w4();krt=o((t,e)=>{$c(t,e),t.groups.map(e.addGroup),t.services.map(r=>e.addService({...r,type:"service"})),t.junctions.map(r=>e.addJunction({...r,type:"junction"})),t.edges.map(e.addEdge)},"populateDb"),Nve={parse:o(async t=>{let e=await uo("architecture",t);Y.debug(e),krt(e,Qp)},"parse")}});var Ert,Ive,Ove=N(()=>{"use strict";Ert=o(t=>` + .edge { + stroke-width: ${t.archEdgeWidth}; + stroke: ${t.archEdgeColor}; + fill: none; + } + + .arrow { + fill: ${t.archEdgeArrowColor}; + } + + .node-bkg { + fill: none; + stroke: ${t.archGroupBorderColor}; + stroke-width: ${t.archGroupBorderWidth}; + stroke-dasharray: 8; + } + .node-icon-text { + display: flex; + align-items: center; + } + + .node-icon-text > div { + color: #fff; + margin: 1px; + height: fit-content; + text-align: center; + overflow: hidden; + display: -webkit-box; + -webkit-box-orient: vertical; + } +`,"getStyles"),Ive=Ert});var dF=Mi((T4,fF)=>{"use strict";o(function(e,r){typeof T4=="object"&&typeof fF=="object"?fF.exports=r():typeof define=="function"&&define.amd?define([],r):typeof T4=="object"?T4.layoutBase=r():e.layoutBase=r()},"webpackUniversalModuleDefinition")(T4,function(){return function(t){var e={};function r(n){if(e[n])return e[n].exports;var i=e[n]={i:n,l:!1,exports:{}};return t[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return o(r,"__webpack_require__"),r.m=t,r.c=e,r.i=function(n){return n},r.d=function(n,i,a){r.o(n,i)||Object.defineProperty(n,i,{configurable:!1,enumerable:!0,get:a})},r.n=function(n){var i=n&&n.__esModule?o(function(){return n.default},"getDefault"):o(function(){return n},"getModuleExports");return r.d(i,"a",i),i},r.o=function(n,i){return Object.prototype.hasOwnProperty.call(n,i)},r.p="",r(r.s=28)}([function(t,e,r){"use strict";function n(){}o(n,"LayoutConstants"),n.QUALITY=1,n.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,n.DEFAULT_INCREMENTAL=!1,n.DEFAULT_ANIMATION_ON_LAYOUT=!0,n.DEFAULT_ANIMATION_DURING_LAYOUT=!1,n.DEFAULT_ANIMATION_PERIOD=50,n.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,n.DEFAULT_GRAPH_MARGIN=15,n.NODE_DIMENSIONS_INCLUDE_LABELS=!1,n.SIMPLE_NODE_SIZE=40,n.SIMPLE_NODE_HALF_SIZE=n.SIMPLE_NODE_SIZE/2,n.EMPTY_COMPOUND_NODE_SIZE=40,n.MIN_EDGE_LENGTH=1,n.WORLD_BOUNDARY=1e6,n.INITIAL_WORLD_BOUNDARY=n.WORLD_BOUNDARY/1e3,n.WORLD_CENTER_X=1200,n.WORLD_CENTER_Y=900,t.exports=n},function(t,e,r){"use strict";var n=r(2),i=r(8),a=r(9);function s(u,h,f){n.call(this,f),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=f,this.bendpoints=[],this.source=u,this.target=h}o(s,"LEdge"),s.prototype=Object.create(n.prototype);for(var l in n)s[l]=n[l];s.prototype.getSource=function(){return this.source},s.prototype.getTarget=function(){return this.target},s.prototype.isInterGraph=function(){return this.isInterGraph},s.prototype.getLength=function(){return this.length},s.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},s.prototype.getBendpoints=function(){return this.bendpoints},s.prototype.getLca=function(){return this.lca},s.prototype.getSourceInLca=function(){return this.sourceInLca},s.prototype.getTargetInLca=function(){return this.targetInLca},s.prototype.getOtherEnd=function(u){if(this.source===u)return this.target;if(this.target===u)return this.source;throw"Node is not incident with this edge"},s.prototype.getOtherEndInGraph=function(u,h){for(var f=this.getOtherEnd(u),d=h.getGraphManager().getRoot();;){if(f.getOwner()==h)return f;if(f.getOwner()==d)break;f=f.getOwner().getParent()}return null},s.prototype.updateLength=function(){var u=new Array(4);this.isOverlapingSourceAndTarget=i.getIntersection(this.target.getRect(),this.source.getRect(),u),this.isOverlapingSourceAndTarget||(this.lengthX=u[0]-u[2],this.lengthY=u[1]-u[3],Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY))},s.prototype.updateLengthSimple=function(){this.lengthX=this.target.getCenterX()-this.source.getCenterX(),this.lengthY=this.target.getCenterY()-this.source.getCenterY(),Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},t.exports=s},function(t,e,r){"use strict";function n(i){this.vGraphObject=i}o(n,"LGraphObject"),t.exports=n},function(t,e,r){"use strict";var n=r(2),i=r(10),a=r(13),s=r(0),l=r(16),u=r(5);function h(d,p,m,g){m==null&&g==null&&(g=p),n.call(this,g),d.graphManager!=null&&(d=d.graphManager),this.estimatedSize=i.MIN_VALUE,this.inclusionTreeDepth=i.MAX_VALUE,this.vGraphObject=g,this.edges=[],this.graphManager=d,m!=null&&p!=null?this.rect=new a(p.x,p.y,m.width,m.height):this.rect=new a}o(h,"LNode"),h.prototype=Object.create(n.prototype);for(var f in n)h[f]=n[f];h.prototype.getEdges=function(){return this.edges},h.prototype.getChild=function(){return this.child},h.prototype.getOwner=function(){return this.owner},h.prototype.getWidth=function(){return this.rect.width},h.prototype.setWidth=function(d){this.rect.width=d},h.prototype.getHeight=function(){return this.rect.height},h.prototype.setHeight=function(d){this.rect.height=d},h.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},h.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},h.prototype.getCenter=function(){return new u(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},h.prototype.getLocation=function(){return new u(this.rect.x,this.rect.y)},h.prototype.getRect=function(){return this.rect},h.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},h.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},h.prototype.setRect=function(d,p){this.rect.x=d.x,this.rect.y=d.y,this.rect.width=p.width,this.rect.height=p.height},h.prototype.setCenter=function(d,p){this.rect.x=d-this.rect.width/2,this.rect.y=p-this.rect.height/2},h.prototype.setLocation=function(d,p){this.rect.x=d,this.rect.y=p},h.prototype.moveBy=function(d,p){this.rect.x+=d,this.rect.y+=p},h.prototype.getEdgeListToNode=function(d){var p=[],m,g=this;return g.edges.forEach(function(y){if(y.target==d){if(y.source!=g)throw"Incorrect edge source!";p.push(y)}}),p},h.prototype.getEdgesBetween=function(d){var p=[],m,g=this;return g.edges.forEach(function(y){if(!(y.source==g||y.target==g))throw"Incorrect edge source and/or target";(y.target==d||y.source==d)&&p.push(y)}),p},h.prototype.getNeighborsList=function(){var d=new Set,p=this;return p.edges.forEach(function(m){if(m.source==p)d.add(m.target);else{if(m.target!=p)throw"Incorrect incidency!";d.add(m.source)}}),d},h.prototype.withChildren=function(){var d=new Set,p,m;if(d.add(this),this.child!=null)for(var g=this.child.getNodes(),y=0;yp?(this.rect.x-=(this.labelWidth-p)/2,this.setWidth(this.labelWidth)):this.labelPosHorizontal=="right"&&this.setWidth(p+this.labelWidth)),this.labelHeight&&(this.labelPosVertical=="top"?(this.rect.y-=this.labelHeight,this.setHeight(m+this.labelHeight)):this.labelPosVertical=="center"&&this.labelHeight>m?(this.rect.y-=(this.labelHeight-m)/2,this.setHeight(this.labelHeight)):this.labelPosVertical=="bottom"&&this.setHeight(m+this.labelHeight))}}},h.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==i.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},h.prototype.transform=function(d){var p=this.rect.x;p>s.WORLD_BOUNDARY?p=s.WORLD_BOUNDARY:p<-s.WORLD_BOUNDARY&&(p=-s.WORLD_BOUNDARY);var m=this.rect.y;m>s.WORLD_BOUNDARY?m=s.WORLD_BOUNDARY:m<-s.WORLD_BOUNDARY&&(m=-s.WORLD_BOUNDARY);var g=new u(p,m),y=d.inverseTransformPoint(g);this.setLocation(y.x,y.y)},h.prototype.getLeft=function(){return this.rect.x},h.prototype.getRight=function(){return this.rect.x+this.rect.width},h.prototype.getTop=function(){return this.rect.y},h.prototype.getBottom=function(){return this.rect.y+this.rect.height},h.prototype.getParent=function(){return this.owner==null?null:this.owner.getParent()},t.exports=h},function(t,e,r){"use strict";var n=r(0);function i(){}o(i,"FDLayoutConstants");for(var a in n)i[a]=n[a];i.MAX_ITERATIONS=2500,i.DEFAULT_EDGE_LENGTH=50,i.DEFAULT_SPRING_STRENGTH=.45,i.DEFAULT_REPULSION_STRENGTH=4500,i.DEFAULT_GRAVITY_STRENGTH=.4,i.DEFAULT_COMPOUND_GRAVITY_STRENGTH=1,i.DEFAULT_GRAVITY_RANGE_FACTOR=3.8,i.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=1.5,i.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION=!0,i.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION=!0,i.DEFAULT_COOLING_FACTOR_INCREMENTAL=.3,i.COOLING_ADAPTATION_FACTOR=.33,i.ADAPTATION_LOWER_NODE_LIMIT=1e3,i.ADAPTATION_UPPER_NODE_LIMIT=5e3,i.MAX_NODE_DISPLACEMENT_INCREMENTAL=100,i.MAX_NODE_DISPLACEMENT=i.MAX_NODE_DISPLACEMENT_INCREMENTAL*3,i.MIN_REPULSION_DIST=i.DEFAULT_EDGE_LENGTH/10,i.CONVERGENCE_CHECK_PERIOD=100,i.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=.1,i.MIN_EDGE_LENGTH=1,i.GRID_CALCULATION_CHECK_PERIOD=10,t.exports=i},function(t,e,r){"use strict";function n(i,a){i==null&&a==null?(this.x=0,this.y=0):(this.x=i,this.y=a)}o(n,"PointD"),n.prototype.getX=function(){return this.x},n.prototype.getY=function(){return this.y},n.prototype.setX=function(i){this.x=i},n.prototype.setY=function(i){this.y=i},n.prototype.getDifference=function(i){return new DimensionD(this.x-i.x,this.y-i.y)},n.prototype.getCopy=function(){return new n(this.x,this.y)},n.prototype.translate=function(i){return this.x+=i.width,this.y+=i.height,this},t.exports=n},function(t,e,r){"use strict";var n=r(2),i=r(10),a=r(0),s=r(7),l=r(3),u=r(1),h=r(13),f=r(12),d=r(11);function p(g,y,v){n.call(this,v),this.estimatedSize=i.MIN_VALUE,this.margin=a.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=g,y!=null&&y instanceof s?this.graphManager=y:y!=null&&y instanceof Layout&&(this.graphManager=y.graphManager)}o(p,"LGraph"),p.prototype=Object.create(n.prototype);for(var m in n)p[m]=n[m];p.prototype.getNodes=function(){return this.nodes},p.prototype.getEdges=function(){return this.edges},p.prototype.getGraphManager=function(){return this.graphManager},p.prototype.getParent=function(){return this.parent},p.prototype.getLeft=function(){return this.left},p.prototype.getRight=function(){return this.right},p.prototype.getTop=function(){return this.top},p.prototype.getBottom=function(){return this.bottom},p.prototype.isConnected=function(){return this.isConnected},p.prototype.add=function(g,y,v){if(y==null&&v==null){var x=g;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(x)>-1)throw"Node already in graph!";return x.owner=this,this.getNodes().push(x),x}else{var b=g;if(!(this.getNodes().indexOf(y)>-1&&this.getNodes().indexOf(v)>-1))throw"Source or target not in graph!";if(!(y.owner==v.owner&&y.owner==this))throw"Both owners must be this graph!";return y.owner!=v.owner?null:(b.source=y,b.target=v,b.isInterGraph=!1,this.getEdges().push(b),y.edges.push(b),v!=y&&v.edges.push(b),b)}},p.prototype.remove=function(g){var y=g;if(g instanceof l){if(y==null)throw"Node is null!";if(!(y.owner!=null&&y.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";for(var v=y.edges.slice(),x,b=v.length,w=0;w-1&&E>-1))throw"Source and/or target doesn't know this edge!";x.source.edges.splice(T,1),x.target!=x.source&&x.target.edges.splice(E,1);var C=x.source.owner.getEdges().indexOf(x);if(C==-1)throw"Not in owner's edge list!";x.source.owner.getEdges().splice(C,1)}},p.prototype.updateLeftTop=function(){for(var g=i.MAX_VALUE,y=i.MAX_VALUE,v,x,b,w=this.getNodes(),C=w.length,T=0;Tv&&(g=v),y>x&&(y=x)}return g==i.MAX_VALUE?null:(w[0].getParent().paddingLeft!=null?b=w[0].getParent().paddingLeft:b=this.margin,this.left=y-b,this.top=g-b,new f(this.left,this.top))},p.prototype.updateBounds=function(g){for(var y=i.MAX_VALUE,v=-i.MAX_VALUE,x=i.MAX_VALUE,b=-i.MAX_VALUE,w,C,T,E,A,S=this.nodes,_=S.length,I=0;I<_;I++){var D=S[I];g&&D.child!=null&&D.updateBounds(),w=D.getLeft(),C=D.getRight(),T=D.getTop(),E=D.getBottom(),y>w&&(y=w),vT&&(x=T),bw&&(y=w),vT&&(x=T),b=this.nodes.length){var _=0;v.forEach(function(I){I.owner==g&&_++}),_==this.nodes.length&&(this.isConnected=!0)}},t.exports=p},function(t,e,r){"use strict";var n,i=r(1);function a(s){n=r(6),this.layout=s,this.graphs=[],this.edges=[]}o(a,"LGraphManager"),a.prototype.addRoot=function(){var s=this.layout.newGraph(),l=this.layout.newNode(null),u=this.add(s,l);return this.setRootGraph(u),this.rootGraph},a.prototype.add=function(s,l,u,h,f){if(u==null&&h==null&&f==null){if(s==null)throw"Graph is null!";if(l==null)throw"Parent node is null!";if(this.graphs.indexOf(s)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(s),s.parent!=null)throw"Already has a parent!";if(l.child!=null)throw"Already has a child!";return s.parent=l,l.child=s,s}else{f=u,h=l,u=s;var d=h.getOwner(),p=f.getOwner();if(!(d!=null&&d.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(p!=null&&p.getGraphManager()==this))throw"Target not in this graph mgr!";if(d==p)return u.isInterGraph=!1,d.add(u,h,f);if(u.isInterGraph=!0,u.source=h,u.target=f,this.edges.indexOf(u)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(u),!(u.source!=null&&u.target!=null))throw"Edge source and/or target is null!";if(!(u.source.edges.indexOf(u)==-1&&u.target.edges.indexOf(u)==-1))throw"Edge already in source and/or target incidency list!";return u.source.edges.push(u),u.target.edges.push(u),u}},a.prototype.remove=function(s){if(s instanceof n){var l=s;if(l.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(l==this.rootGraph||l.parent!=null&&l.parent.graphManager==this))throw"Invalid parent node!";var u=[];u=u.concat(l.getEdges());for(var h,f=u.length,d=0;d=s.getRight()?l[0]+=Math.min(s.getX()-a.getX(),a.getRight()-s.getRight()):s.getX()<=a.getX()&&s.getRight()>=a.getRight()&&(l[0]+=Math.min(a.getX()-s.getX(),s.getRight()-a.getRight())),a.getY()<=s.getY()&&a.getBottom()>=s.getBottom()?l[1]+=Math.min(s.getY()-a.getY(),a.getBottom()-s.getBottom()):s.getY()<=a.getY()&&s.getBottom()>=a.getBottom()&&(l[1]+=Math.min(a.getY()-s.getY(),s.getBottom()-a.getBottom()));var f=Math.abs((s.getCenterY()-a.getCenterY())/(s.getCenterX()-a.getCenterX()));s.getCenterY()===a.getCenterY()&&s.getCenterX()===a.getCenterX()&&(f=1);var d=f*l[0],p=l[1]/f;l[0]d)return l[0]=u,l[1]=m,l[2]=f,l[3]=S,!1;if(hf)return l[0]=p,l[1]=h,l[2]=E,l[3]=d,!1;if(uf?(l[0]=y,l[1]=v,k=!0):(l[0]=g,l[1]=m,k=!0):R===M&&(u>f?(l[0]=p,l[1]=m,k=!0):(l[0]=x,l[1]=v,k=!0)),-O===M?f>u?(l[2]=A,l[3]=S,L=!0):(l[2]=E,l[3]=T,L=!0):O===M&&(f>u?(l[2]=C,l[3]=T,L=!0):(l[2]=_,l[3]=S,L=!0)),k&&L)return!1;if(u>f?h>d?(B=this.getCardinalDirection(R,M,4),F=this.getCardinalDirection(O,M,2)):(B=this.getCardinalDirection(-R,M,3),F=this.getCardinalDirection(-O,M,1)):h>d?(B=this.getCardinalDirection(-R,M,1),F=this.getCardinalDirection(-O,M,3)):(B=this.getCardinalDirection(R,M,2),F=this.getCardinalDirection(O,M,4)),!k)switch(B){case 1:z=m,P=u+-w/M,l[0]=P,l[1]=z;break;case 2:P=x,z=h+b*M,l[0]=P,l[1]=z;break;case 3:z=v,P=u+w/M,l[0]=P,l[1]=z;break;case 4:P=y,z=h+-b*M,l[0]=P,l[1]=z;break}if(!L)switch(F){case 1:H=T,$=f+-D/M,l[2]=$,l[3]=H;break;case 2:$=_,H=d+I*M,l[2]=$,l[3]=H;break;case 3:H=S,$=f+D/M,l[2]=$,l[3]=H;break;case 4:$=A,H=d+-I*M,l[2]=$,l[3]=H;break}}return!1},i.getCardinalDirection=function(a,s,l){return a>s?l:1+l%4},i.getIntersection=function(a,s,l,u){if(u==null)return this.getIntersection2(a,s,l);var h=a.x,f=a.y,d=s.x,p=s.y,m=l.x,g=l.y,y=u.x,v=u.y,x=void 0,b=void 0,w=void 0,C=void 0,T=void 0,E=void 0,A=void 0,S=void 0,_=void 0;return w=p-f,T=h-d,A=d*f-h*p,C=v-g,E=m-y,S=y*g-m*v,_=w*E-C*T,_===0?null:(x=(T*S-E*A)/_,b=(C*A-w*S)/_,new n(x,b))},i.angleOfVector=function(a,s,l,u){var h=void 0;return a!==l?(h=Math.atan((u-s)/(l-a)),l=0){var v=(-m+Math.sqrt(m*m-4*p*g))/(2*p),x=(-m-Math.sqrt(m*m-4*p*g))/(2*p),b=null;return v>=0&&v<=1?[v]:x>=0&&x<=1?[x]:b}else return null},i.HALF_PI=.5*Math.PI,i.ONE_AND_HALF_PI=1.5*Math.PI,i.TWO_PI=2*Math.PI,i.THREE_PI=3*Math.PI,t.exports=i},function(t,e,r){"use strict";function n(){}o(n,"IMath"),n.sign=function(i){return i>0?1:i<0?-1:0},n.floor=function(i){return i<0?Math.ceil(i):Math.floor(i)},n.ceil=function(i){return i<0?Math.floor(i):Math.ceil(i)},t.exports=n},function(t,e,r){"use strict";function n(){}o(n,"Integer"),n.MAX_VALUE=2147483647,n.MIN_VALUE=-2147483648,t.exports=n},function(t,e,r){"use strict";var n=function(){function h(f,d){for(var p=0;p"u"?"undefined":n(a);return a==null||s!="object"&&s!="function"},t.exports=i},function(t,e,r){"use strict";function n(m){if(Array.isArray(m)){for(var g=0,y=Array(m.length);g0&&g;){for(w.push(T[0]);w.length>0&&g;){var E=w[0];w.splice(0,1),b.add(E);for(var A=E.getEdges(),x=0;x-1&&T.splice(D,1)}b=new Set,C=new Map}}return m},p.prototype.createDummyNodesForBendpoints=function(m){for(var g=[],y=m.source,v=this.graphManager.calcLowestCommonAncestor(m.source,m.target),x=0;x0){for(var v=this.edgeToDummyNodes.get(y),x=0;x=0&&g.splice(S,1);var _=C.getNeighborsList();_.forEach(function(k){if(y.indexOf(k)<0){var L=v.get(k),R=L-1;R==1&&E.push(k),v.set(k,R)}})}y=y.concat(E),(g.length==1||g.length==2)&&(x=!0,b=g[0])}return b},p.prototype.setGraphManager=function(m){this.graphManager=m},t.exports=p},function(t,e,r){"use strict";function n(){}o(n,"RandomSeed"),n.seed=1,n.x=0,n.nextDouble=function(){return n.x=Math.sin(n.seed++)*1e4,n.x-Math.floor(n.x)},t.exports=n},function(t,e,r){"use strict";var n=r(5);function i(a,s){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}o(i,"Transform"),i.prototype.getWorldOrgX=function(){return this.lworldOrgX},i.prototype.setWorldOrgX=function(a){this.lworldOrgX=a},i.prototype.getWorldOrgY=function(){return this.lworldOrgY},i.prototype.setWorldOrgY=function(a){this.lworldOrgY=a},i.prototype.getWorldExtX=function(){return this.lworldExtX},i.prototype.setWorldExtX=function(a){this.lworldExtX=a},i.prototype.getWorldExtY=function(){return this.lworldExtY},i.prototype.setWorldExtY=function(a){this.lworldExtY=a},i.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},i.prototype.setDeviceOrgX=function(a){this.ldeviceOrgX=a},i.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},i.prototype.setDeviceOrgY=function(a){this.ldeviceOrgY=a},i.prototype.getDeviceExtX=function(){return this.ldeviceExtX},i.prototype.setDeviceExtX=function(a){this.ldeviceExtX=a},i.prototype.getDeviceExtY=function(){return this.ldeviceExtY},i.prototype.setDeviceExtY=function(a){this.ldeviceExtY=a},i.prototype.transformX=function(a){var s=0,l=this.lworldExtX;return l!=0&&(s=this.ldeviceOrgX+(a-this.lworldOrgX)*this.ldeviceExtX/l),s},i.prototype.transformY=function(a){var s=0,l=this.lworldExtY;return l!=0&&(s=this.ldeviceOrgY+(a-this.lworldOrgY)*this.ldeviceExtY/l),s},i.prototype.inverseTransformX=function(a){var s=0,l=this.ldeviceExtX;return l!=0&&(s=this.lworldOrgX+(a-this.ldeviceOrgX)*this.lworldExtX/l),s},i.prototype.inverseTransformY=function(a){var s=0,l=this.ldeviceExtY;return l!=0&&(s=this.lworldOrgY+(a-this.ldeviceOrgY)*this.lworldExtY/l),s},i.prototype.inverseTransformPoint=function(a){var s=new n(this.inverseTransformX(a.x),this.inverseTransformY(a.y));return s},t.exports=i},function(t,e,r){"use strict";function n(d){if(Array.isArray(d)){for(var p=0,m=Array(d.length);pa.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*a.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(d-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-a.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT_INCREMENTAL):(d>a.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(a.COOLING_ADAPTATION_FACTOR,1-(d-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*(1-a.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.displacementThresholdPerNode=3*a.DEFAULT_EDGE_LENGTH/100,this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},h.prototype.calcSpringForces=function(){for(var d=this.getAllEdges(),p,m=0;m0&&arguments[0]!==void 0?arguments[0]:!0,p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,m,g,y,v,x=this.getAllNodes(),b;if(this.useFRGridVariant)for(this.totalIterations%a.GRID_CALCULATION_CHECK_PERIOD==1&&d&&this.updateGrid(),b=new Set,m=0;mw||b>w)&&(d.gravitationForceX=-this.gravityConstant*y,d.gravitationForceY=-this.gravityConstant*v)):(w=p.getEstimatedSize()*this.compoundGravityRangeFactor,(x>w||b>w)&&(d.gravitationForceX=-this.gravityConstant*y*this.compoundGravityConstant,d.gravitationForceY=-this.gravityConstant*v*this.compoundGravityConstant))},h.prototype.isConverged=function(){var d,p=!1;return this.totalIterations>this.maxIterations/3&&(p=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),d=this.totalDisplacement=x.length||w>=x[0].length)){for(var C=0;Ch},"_defaultCompareFunction")}]),l}();t.exports=s},function(t,e,r){"use strict";function n(){}o(n,"SVD"),n.svd=function(i){this.U=null,this.V=null,this.s=null,this.m=0,this.n=0,this.m=i.length,this.n=i[0].length;var a=Math.min(this.m,this.n);this.s=function(xt){for(var ut=[];xt-- >0;)ut.push(0);return ut}(Math.min(this.m+1,this.n)),this.U=function(xt){var ut=o(function Et(ft){if(ft.length==0)return 0;for(var yt=[],nt=0;nt0;)ut.push(0);return ut}(this.n),l=function(xt){for(var ut=[];xt-- >0;)ut.push(0);return ut}(this.m),u=!0,h=!0,f=Math.min(this.m-1,this.n),d=Math.max(0,Math.min(this.n-2,this.m)),p=0;p=0;M--)if(this.s[M]!==0){for(var B=M+1;B=0;j--){if(function(xt,ut){return xt&&ut}(j0;){var ue=void 0,Z=void 0;for(ue=L-2;ue>=-1&&ue!==-1;ue--)if(Math.abs(s[ue])<=se+J*(Math.abs(this.s[ue])+Math.abs(this.s[ue+1]))){s[ue]=0;break}if(ue===L-2)Z=4;else{var Se=void 0;for(Se=L-1;Se>=ue&&Se!==ue;Se--){var ce=(Se!==L?Math.abs(s[Se]):0)+(Se!==ue+1?Math.abs(s[Se-1]):0);if(Math.abs(this.s[Se])<=se+J*ce){this.s[Se]=0;break}}Se===ue?Z=3:Se===L-1?Z=1:(Z=2,ue=Se)}switch(ue++,Z){case 1:{var ae=s[L-2];s[L-2]=0;for(var Oe=L-2;Oe>=ue;Oe--){var ge=n.hypot(this.s[Oe],ae),ze=this.s[Oe]/ge,He=ae/ge;if(this.s[Oe]=ge,Oe!==ue&&(ae=-He*s[Oe-1],s[Oe-1]=ze*s[Oe-1]),h)for(var $e=0;$e=this.s[ue+1]);){var ot=this.s[ue];if(this.s[ue]=this.s[ue+1],this.s[ue+1]=ot,h&&ueMath.abs(a)?(s=a/i,s=Math.abs(i)*Math.sqrt(1+s*s)):a!=0?(s=i/a,s=Math.abs(a)*Math.sqrt(1+s*s)):s=0,s},t.exports=n},function(t,e,r){"use strict";var n=function(){function s(l,u){for(var h=0;h2&&arguments[2]!==void 0?arguments[2]:1,f=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,d=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;i(this,s),this.sequence1=l,this.sequence2=u,this.match_score=h,this.mismatch_penalty=f,this.gap_penalty=d,this.iMax=l.length+1,this.jMax=u.length+1,this.grid=new Array(this.iMax);for(var p=0;p=0;l--){var u=this.listeners[l];u.event===a&&u.callback===s&&this.listeners.splice(l,1)}},i.emit=function(a,s){for(var l=0;l{"use strict";o(function(e,r){typeof k4=="object"&&typeof pF=="object"?pF.exports=r(dF()):typeof define=="function"&&define.amd?define(["layout-base"],r):typeof k4=="object"?k4.coseBase=r(dF()):e.coseBase=r(e.layoutBase)},"webpackUniversalModuleDefinition")(k4,function(t){return(()=>{"use strict";var e={45:(a,s,l)=>{var u={};u.layoutBase=l(551),u.CoSEConstants=l(806),u.CoSEEdge=l(767),u.CoSEGraph=l(880),u.CoSEGraphManager=l(578),u.CoSELayout=l(765),u.CoSENode=l(991),u.ConstraintHandler=l(902),a.exports=u},806:(a,s,l)=>{var u=l(551).FDLayoutConstants;function h(){}o(h,"CoSEConstants");for(var f in u)h[f]=u[f];h.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,h.DEFAULT_RADIAL_SEPARATION=u.DEFAULT_EDGE_LENGTH,h.DEFAULT_COMPONENT_SEPERATION=60,h.TILE=!0,h.TILING_PADDING_VERTICAL=10,h.TILING_PADDING_HORIZONTAL=10,h.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,h.ENFORCE_CONSTRAINTS=!0,h.APPLY_LAYOUT=!0,h.RELAX_MOVEMENT_ON_CONSTRAINTS=!0,h.TREE_REDUCTION_ON_INCREMENTAL=!0,h.PURE_INCREMENTAL=h.DEFAULT_INCREMENTAL,a.exports=h},767:(a,s,l)=>{var u=l(551).FDLayoutEdge;function h(d,p,m){u.call(this,d,p,m)}o(h,"CoSEEdge"),h.prototype=Object.create(u.prototype);for(var f in u)h[f]=u[f];a.exports=h},880:(a,s,l)=>{var u=l(551).LGraph;function h(d,p,m){u.call(this,d,p,m)}o(h,"CoSEGraph"),h.prototype=Object.create(u.prototype);for(var f in u)h[f]=u[f];a.exports=h},578:(a,s,l)=>{var u=l(551).LGraphManager;function h(d){u.call(this,d)}o(h,"CoSEGraphManager"),h.prototype=Object.create(u.prototype);for(var f in u)h[f]=u[f];a.exports=h},765:(a,s,l)=>{var u=l(551).FDLayout,h=l(578),f=l(880),d=l(991),p=l(767),m=l(806),g=l(902),y=l(551).FDLayoutConstants,v=l(551).LayoutConstants,x=l(551).Point,b=l(551).PointD,w=l(551).DimensionD,C=l(551).Layout,T=l(551).Integer,E=l(551).IGeometry,A=l(551).LGraph,S=l(551).Transform,_=l(551).LinkedList;function I(){u.call(this),this.toBeTiled={},this.constraints={}}o(I,"CoSELayout"),I.prototype=Object.create(u.prototype);for(var D in u)I[D]=u[D];I.prototype.newGraphManager=function(){var k=new h(this);return this.graphManager=k,k},I.prototype.newGraph=function(k){return new f(null,this.graphManager,k)},I.prototype.newNode=function(k){return new d(this.graphManager,k)},I.prototype.newEdge=function(k){return new p(null,null,k)},I.prototype.initParameters=function(){u.prototype.initParameters.call(this,arguments),this.isSubLayout||(m.DEFAULT_EDGE_LENGTH<10?this.idealEdgeLength=10:this.idealEdgeLength=m.DEFAULT_EDGE_LENGTH,this.useSmartIdealEdgeLengthCalculation=m.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.gravityConstant=y.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=y.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=y.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=y.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.prunedNodesAll=[],this.growTreeIterations=0,this.afterGrowthIterations=0,this.isTreeGrowing=!1,this.isGrowthFinished=!1)},I.prototype.initSpringEmbedder=function(){u.prototype.initSpringEmbedder.call(this),this.coolingCycle=0,this.maxCoolingCycle=this.maxIterations/y.CONVERGENCE_CHECK_PERIOD,this.finalTemperature=.04,this.coolingAdjuster=1},I.prototype.layout=function(){var k=v.DEFAULT_CREATE_BENDS_AS_NEEDED;return k&&(this.createBendpoints(),this.graphManager.resetAllEdges()),this.level=0,this.classicLayout()},I.prototype.classicLayout=function(){if(this.nodesWithGravity=this.calculateNodesToApplyGravitationTo(),this.graphManager.setAllNodesToApplyGravitation(this.nodesWithGravity),this.calcNoOfChildrenForAllNodes(),this.graphManager.calcLowestCommonAncestors(),this.graphManager.calcInclusionTreeDepths(),this.graphManager.getRoot().calcEstimatedSize(),this.calcIdealEdgeLengths(),this.incremental){if(m.TREE_REDUCTION_ON_INCREMENTAL){this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var L=new Set(this.getAllNodes()),R=this.nodesWithGravity.filter(function(B){return L.has(B)});this.graphManager.setAllNodesToApplyGravitation(R)}}else{var k=this.getFlatForest();if(k.length>0)this.positionNodesRadially(k);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var L=new Set(this.getAllNodes()),R=this.nodesWithGravity.filter(function(O){return L.has(O)});this.graphManager.setAllNodesToApplyGravitation(R),this.positionNodesRandomly()}}return Object.keys(this.constraints).length>0&&(g.handleConstraints(this),this.initConstraintVariables()),this.initSpringEmbedder(),m.APPLY_LAYOUT&&this.runSpringEmbedder(),!0},I.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished)if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.totalIterations%y.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;this.coolingCycle++,this.layoutQuality==0?this.coolingAdjuster=this.coolingCycle:this.layoutQuality==1&&(this.coolingAdjuster=this.coolingCycle/3),this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var k=new Set(this.getAllNodes()),L=this.nodesWithGravity.filter(function(M){return k.has(M)});this.graphManager.setAllNodesToApplyGravitation(L),this.graphManager.updateBounds(),this.updateGrid(),m.PURE_INCREMENTAL?this.coolingFactor=y.DEFAULT_COOLING_FACTOR_INCREMENTAL/2:this.coolingFactor=y.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;this.afterGrowthIterations%10==0&&(this.graphManager.updateBounds(),this.updateGrid()),m.PURE_INCREMENTAL?this.coolingFactor=y.DEFAULT_COOLING_FACTOR_INCREMENTAL/2*((100-this.afterGrowthIterations)/100):this.coolingFactor=y.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var R=!this.isTreeGrowing&&!this.isGrowthFinished,O=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(R,O),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},I.prototype.getPositionsData=function(){for(var k=this.graphManager.getAllNodes(),L={},R=0;R0&&this.updateDisplacements();for(var R=0;R0&&(O.fixedNodeWeight=B)}}if(this.constraints.relativePlacementConstraint){var F=new Map,P=new Map;if(this.dummyToNodeForVerticalAlignment=new Map,this.dummyToNodeForHorizontalAlignment=new Map,this.fixedNodesOnHorizontal=new Set,this.fixedNodesOnVertical=new Set,this.fixedNodeSet.forEach(function(le){k.fixedNodesOnHorizontal.add(le),k.fixedNodesOnVertical.add(le)}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var z=this.constraints.alignmentConstraint.vertical,R=0;R=2*le.length/3;X--)he=Math.floor(Math.random()*(X+1)),K=le[X],le[X]=le[he],le[he]=K;return le},this.nodesInRelativeHorizontal=[],this.nodesInRelativeVertical=[],this.nodeToRelativeConstraintMapHorizontal=new Map,this.nodeToRelativeConstraintMapVertical=new Map,this.nodeToTempPositionMapHorizontal=new Map,this.nodeToTempPositionMapVertical=new Map,this.constraints.relativePlacementConstraint.forEach(function(le){if(le.left){var he=F.has(le.left)?F.get(le.left):le.left,K=F.has(le.right)?F.get(le.right):le.right;k.nodesInRelativeHorizontal.includes(he)||(k.nodesInRelativeHorizontal.push(he),k.nodeToRelativeConstraintMapHorizontal.set(he,[]),k.dummyToNodeForVerticalAlignment.has(he)?k.nodeToTempPositionMapHorizontal.set(he,k.idToNodeMap.get(k.dummyToNodeForVerticalAlignment.get(he)[0]).getCenterX()):k.nodeToTempPositionMapHorizontal.set(he,k.idToNodeMap.get(he).getCenterX())),k.nodesInRelativeHorizontal.includes(K)||(k.nodesInRelativeHorizontal.push(K),k.nodeToRelativeConstraintMapHorizontal.set(K,[]),k.dummyToNodeForVerticalAlignment.has(K)?k.nodeToTempPositionMapHorizontal.set(K,k.idToNodeMap.get(k.dummyToNodeForVerticalAlignment.get(K)[0]).getCenterX()):k.nodeToTempPositionMapHorizontal.set(K,k.idToNodeMap.get(K).getCenterX())),k.nodeToRelativeConstraintMapHorizontal.get(he).push({right:K,gap:le.gap}),k.nodeToRelativeConstraintMapHorizontal.get(K).push({left:he,gap:le.gap})}else{var X=P.has(le.top)?P.get(le.top):le.top,te=P.has(le.bottom)?P.get(le.bottom):le.bottom;k.nodesInRelativeVertical.includes(X)||(k.nodesInRelativeVertical.push(X),k.nodeToRelativeConstraintMapVertical.set(X,[]),k.dummyToNodeForHorizontalAlignment.has(X)?k.nodeToTempPositionMapVertical.set(X,k.idToNodeMap.get(k.dummyToNodeForHorizontalAlignment.get(X)[0]).getCenterY()):k.nodeToTempPositionMapVertical.set(X,k.idToNodeMap.get(X).getCenterY())),k.nodesInRelativeVertical.includes(te)||(k.nodesInRelativeVertical.push(te),k.nodeToRelativeConstraintMapVertical.set(te,[]),k.dummyToNodeForHorizontalAlignment.has(te)?k.nodeToTempPositionMapVertical.set(te,k.idToNodeMap.get(k.dummyToNodeForHorizontalAlignment.get(te)[0]).getCenterY()):k.nodeToTempPositionMapVertical.set(te,k.idToNodeMap.get(te).getCenterY())),k.nodeToRelativeConstraintMapVertical.get(X).push({bottom:te,gap:le.gap}),k.nodeToRelativeConstraintMapVertical.get(te).push({top:X,gap:le.gap})}});else{var H=new Map,Q=new Map;this.constraints.relativePlacementConstraint.forEach(function(le){if(le.left){var he=F.has(le.left)?F.get(le.left):le.left,K=F.has(le.right)?F.get(le.right):le.right;H.has(he)?H.get(he).push(K):H.set(he,[K]),H.has(K)?H.get(K).push(he):H.set(K,[he])}else{var X=P.has(le.top)?P.get(le.top):le.top,te=P.has(le.bottom)?P.get(le.bottom):le.bottom;Q.has(X)?Q.get(X).push(te):Q.set(X,[te]),Q.has(te)?Q.get(te).push(X):Q.set(te,[X])}});var j=o(function(he,K){var X=[],te=[],J=new _,se=new Set,ue=0;return he.forEach(function(Z,Se){if(!se.has(Se)){X[ue]=[],te[ue]=!1;var ce=Se;for(J.push(ce),se.add(ce),X[ue].push(ce);J.length!=0;){ce=J.shift(),K.has(ce)&&(te[ue]=!0);var ae=he.get(ce);ae.forEach(function(Oe){se.has(Oe)||(J.push(Oe),se.add(Oe),X[ue].push(Oe))})}ue++}}),{components:X,isFixed:te}},"constructComponents"),ie=j(H,k.fixedNodesOnHorizontal);this.componentsOnHorizontal=ie.components,this.fixedComponentsOnHorizontal=ie.isFixed;var ne=j(Q,k.fixedNodesOnVertical);this.componentsOnVertical=ne.components,this.fixedComponentsOnVertical=ne.isFixed}}},I.prototype.updateDisplacements=function(){var k=this;if(this.constraints.fixedNodeConstraint&&this.constraints.fixedNodeConstraint.forEach(function(ne){var le=k.idToNodeMap.get(ne.nodeId);le.displacementX=0,le.displacementY=0}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var L=this.constraints.alignmentConstraint.vertical,R=0;R1){var P;for(P=0;PO&&(O=Math.floor(F.y)),B=Math.floor(F.x+m.DEFAULT_COMPONENT_SEPERATION)}this.transform(new b(v.WORLD_CENTER_X-F.x/2,v.WORLD_CENTER_Y-F.y/2))},I.radialLayout=function(k,L,R){var O=Math.max(this.maxDiagonalInTree(k),m.DEFAULT_RADIAL_SEPARATION);I.branchRadialLayout(L,null,0,359,0,O);var M=A.calculateBounds(k),B=new S;B.setDeviceOrgX(M.getMinX()),B.setDeviceOrgY(M.getMinY()),B.setWorldOrgX(R.x),B.setWorldOrgY(R.y);for(var F=0;F1;){var X=K[0];K.splice(0,1);var te=j.indexOf(X);te>=0&&j.splice(te,1),le--,ie--}L!=null?he=(j.indexOf(K[0])+1)%le:he=0;for(var J=Math.abs(O-R)/ie,se=he;ne!=ie;se=++se%le){var ue=j[se].getOtherEnd(k);if(ue!=L){var Z=(R+ne*J)%360,Se=(Z+J)%360;I.branchRadialLayout(ue,k,Z,Se,M+B,B),ne++}}},I.maxDiagonalInTree=function(k){for(var L=T.MIN_VALUE,R=0;RL&&(L=M)}return L},I.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},I.prototype.groupZeroDegreeMembers=function(){var k=this,L={};this.memberGroups={},this.idToDummyNode={};for(var R=[],O=this.graphManager.getAllNodes(),M=0;M"u"&&(L[P]=[]),L[P]=L[P].concat(B)}Object.keys(L).forEach(function(z){if(L[z].length>1){var $="DummyCompound_"+z;k.memberGroups[$]=L[z];var H=L[z][0].getParent(),Q=new d(k.graphManager);Q.id=$,Q.paddingLeft=H.paddingLeft||0,Q.paddingRight=H.paddingRight||0,Q.paddingBottom=H.paddingBottom||0,Q.paddingTop=H.paddingTop||0,k.idToDummyNode[$]=Q;var j=k.getGraphManager().add(k.newGraph(),Q),ie=H.getChild();ie.add(Q);for(var ne=0;neM?(O.rect.x-=(O.labelWidth-M)/2,O.setWidth(O.labelWidth),O.labelMarginLeft=(O.labelWidth-M)/2):O.labelPosHorizontal=="right"&&O.setWidth(M+O.labelWidth)),O.labelHeight&&(O.labelPosVertical=="top"?(O.rect.y-=O.labelHeight,O.setHeight(B+O.labelHeight),O.labelMarginTop=O.labelHeight):O.labelPosVertical=="center"&&O.labelHeight>B?(O.rect.y-=(O.labelHeight-B)/2,O.setHeight(O.labelHeight),O.labelMarginTop=(O.labelHeight-B)/2):O.labelPosVertical=="bottom"&&O.setHeight(B+O.labelHeight))}})},I.prototype.repopulateCompounds=function(){for(var k=this.compoundOrder.length-1;k>=0;k--){var L=this.compoundOrder[k],R=L.id,O=L.paddingLeft,M=L.paddingTop,B=L.labelMarginLeft,F=L.labelMarginTop;this.adjustLocations(this.tiledMemberPack[R],L.rect.x,L.rect.y,O,M,B,F)}},I.prototype.repopulateZeroDegreeMembers=function(){var k=this,L=this.tiledZeroDegreePack;Object.keys(L).forEach(function(R){var O=k.idToDummyNode[R],M=O.paddingLeft,B=O.paddingTop,F=O.labelMarginLeft,P=O.labelMarginTop;k.adjustLocations(L[R],O.rect.x,O.rect.y,M,B,F,P)})},I.prototype.getToBeTiled=function(k){var L=k.id;if(this.toBeTiled[L]!=null)return this.toBeTiled[L];var R=k.getChild();if(R==null)return this.toBeTiled[L]=!1,!1;for(var O=R.getNodes(),M=0;M0)return this.toBeTiled[L]=!1,!1;if(B.getChild()==null){this.toBeTiled[B.id]=!1;continue}if(!this.getToBeTiled(B))return this.toBeTiled[L]=!1,!1}return this.toBeTiled[L]=!0,!0},I.prototype.getNodeDegree=function(k){for(var L=k.id,R=k.getEdges(),O=0,M=0;MH&&(H=j.rect.height)}R+=H+k.verticalPadding}},I.prototype.tileCompoundMembers=function(k,L){var R=this;this.tiledMemberPack=[],Object.keys(k).forEach(function(O){var M=L[O];if(R.tiledMemberPack[O]=R.tileNodes(k[O],M.paddingLeft+M.paddingRight),M.rect.width=R.tiledMemberPack[O].width,M.rect.height=R.tiledMemberPack[O].height,M.setCenter(R.tiledMemberPack[O].centerX,R.tiledMemberPack[O].centerY),M.labelMarginLeft=0,M.labelMarginTop=0,m.NODE_DIMENSIONS_INCLUDE_LABELS){var B=M.rect.width,F=M.rect.height;M.labelWidth&&(M.labelPosHorizontal=="left"?(M.rect.x-=M.labelWidth,M.setWidth(B+M.labelWidth),M.labelMarginLeft=M.labelWidth):M.labelPosHorizontal=="center"&&M.labelWidth>B?(M.rect.x-=(M.labelWidth-B)/2,M.setWidth(M.labelWidth),M.labelMarginLeft=(M.labelWidth-B)/2):M.labelPosHorizontal=="right"&&M.setWidth(B+M.labelWidth)),M.labelHeight&&(M.labelPosVertical=="top"?(M.rect.y-=M.labelHeight,M.setHeight(F+M.labelHeight),M.labelMarginTop=M.labelHeight):M.labelPosVertical=="center"&&M.labelHeight>F?(M.rect.y-=(M.labelHeight-F)/2,M.setHeight(M.labelHeight),M.labelMarginTop=(M.labelHeight-F)/2):M.labelPosVertical=="bottom"&&M.setHeight(F+M.labelHeight))}})},I.prototype.tileNodes=function(k,L){var R=this.tileNodesByFavoringDim(k,L,!0),O=this.tileNodesByFavoringDim(k,L,!1),M=this.getOrgRatio(R),B=this.getOrgRatio(O),F;return BP&&(P=ne.getWidth())});var z=B/M,$=F/M,H=Math.pow(R-O,2)+4*(z+O)*($+R)*M,Q=(O-R+Math.sqrt(H))/(2*(z+O)),j;L?(j=Math.ceil(Q),j==Q&&j++):j=Math.floor(Q);var ie=j*(z+O)-O;return P>ie&&(ie=P),ie+=O*2,ie},I.prototype.tileNodesByFavoringDim=function(k,L,R){var O=m.TILING_PADDING_VERTICAL,M=m.TILING_PADDING_HORIZONTAL,B=m.TILING_COMPARE_BY,F={rows:[],rowWidth:[],rowHeight:[],width:0,height:L,verticalPadding:O,horizontalPadding:M,centerX:0,centerY:0};B&&(F.idealRowWidth=this.calcIdealRowWidth(k,R));var P=o(function(le){return le.rect.width*le.rect.height},"getNodeArea"),z=o(function(le,he){return P(he)-P(le)},"areaCompareFcn");k.sort(function(ne,le){var he=z;return F.idealRowWidth?(he=B,he(ne.id,le.id)):he(ne,le)});for(var $=0,H=0,Q=0;Q0&&(F+=k.horizontalPadding),k.rowWidth[R]=F,k.width0&&(P+=k.verticalPadding);var z=0;P>k.rowHeight[R]&&(z=k.rowHeight[R],k.rowHeight[R]=P,z=k.rowHeight[R]-z),k.height+=z,k.rows[R].push(L)},I.prototype.getShortestRowIndex=function(k){for(var L=-1,R=Number.MAX_VALUE,O=0;OR&&(L=O,R=k.rowWidth[O]);return L},I.prototype.canAddHorizontal=function(k,L,R){if(k.idealRowWidth){var O=k.rows.length-1,M=k.rowWidth[O];return M+L+k.horizontalPadding<=k.idealRowWidth}var B=this.getShortestRowIndex(k);if(B<0)return!0;var F=k.rowWidth[B];if(F+k.horizontalPadding+L<=k.width)return!0;var P=0;k.rowHeight[B]0&&(P=R+k.verticalPadding-k.rowHeight[B]);var z;k.width-F>=L+k.horizontalPadding?z=(k.height+P)/(F+L+k.horizontalPadding):z=(k.height+P)/k.width,P=R+k.verticalPadding;var $;return k.widthB&&L!=R){O.splice(-1,1),k.rows[R].push(M),k.rowWidth[L]=k.rowWidth[L]-B,k.rowWidth[R]=k.rowWidth[R]+B,k.width=k.rowWidth[instance.getLongestRowIndex(k)];for(var F=Number.MIN_VALUE,P=0;PF&&(F=O[P].height);L>0&&(F+=k.verticalPadding);var z=k.rowHeight[L]+k.rowHeight[R];k.rowHeight[L]=F,k.rowHeight[R]0)for(var ie=M;ie<=B;ie++)j[0]+=this.grid[ie][F-1].length+this.grid[ie][F].length-1;if(B0)for(var ie=F;ie<=P;ie++)j[3]+=this.grid[M-1][ie].length+this.grid[M][ie].length-1;for(var ne=T.MAX_VALUE,le,he,K=0;K{var u=l(551).FDLayoutNode,h=l(551).IMath;function f(p,m,g,y){u.call(this,p,m,g,y)}o(f,"CoSENode"),f.prototype=Object.create(u.prototype);for(var d in u)f[d]=u[d];f.prototype.calculateDisplacement=function(){var p=this.graphManager.getLayout();this.getChild()!=null&&this.fixedNodeWeight?(this.displacementX+=p.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.fixedNodeWeight,this.displacementY+=p.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.fixedNodeWeight):(this.displacementX+=p.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY+=p.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren),Math.abs(this.displacementX)>p.coolingFactor*p.maxNodeDisplacement&&(this.displacementX=p.coolingFactor*p.maxNodeDisplacement*h.sign(this.displacementX)),Math.abs(this.displacementY)>p.coolingFactor*p.maxNodeDisplacement&&(this.displacementY=p.coolingFactor*p.maxNodeDisplacement*h.sign(this.displacementY)),this.child&&this.child.getNodes().length>0&&this.propogateDisplacementToChildren(this.displacementX,this.displacementY)},f.prototype.propogateDisplacementToChildren=function(p,m){for(var g=this.getChild().getNodes(),y,v=0;v{function u(g){if(Array.isArray(g)){for(var y=0,v=Array(g.length);y0){var ct=0;Ue.forEach(function(ot){xe=="horizontal"?(we.set(ot,x.has(ot)?b[x.get(ot)]:pe.get(ot)),ct+=we.get(ot)):(we.set(ot,x.has(ot)?w[x.get(ot)]:pe.get(ot)),ct+=we.get(ot))}),ct=ct/Ue.length,st.forEach(function(ot){q.has(ot)||we.set(ot,ct)})}else{var We=0;st.forEach(function(ot){xe=="horizontal"?We+=x.has(ot)?b[x.get(ot)]:pe.get(ot):We+=x.has(ot)?w[x.get(ot)]:pe.get(ot)}),We=We/st.length,st.forEach(function(ot){we.set(ot,We)})}});for(var qe=o(function(){var Ue=De.shift(),ct=V.get(Ue);ct.forEach(function(We){if(we.get(We.id)ot&&(ot=yt),ntYt&&(Yt=nt)}}catch(At){Mt=!0,xt=At}finally{try{!bt&&ut.return&&ut.return()}finally{if(Mt)throw xt}}var dn=(ct+ot)/2-(We+Yt)/2,Tt=!0,On=!1,tn=void 0;try{for(var _r=st[Symbol.iterator](),Dr;!(Tt=(Dr=_r.next()).done);Tt=!0){var Pn=Dr.value;we.set(Pn,we.get(Pn)+dn)}}catch(At){On=!0,tn=At}finally{try{!Tt&&_r.return&&_r.return()}finally{if(On)throw tn}}})}return we},"findAppropriatePositionForRelativePlacement"),D=o(function(V){var xe=0,q=0,pe=0,ve=0;if(V.forEach(function(Ve){Ve.left?b[x.get(Ve.left)]-b[x.get(Ve.right)]>=0?xe++:q++:w[x.get(Ve.top)]-w[x.get(Ve.bottom)]>=0?pe++:ve++}),xe>q&&pe>ve)for(var Pe=0;Peq)for(var _e=0;_eve)for(var we=0;we1)y.fixedNodeConstraint.forEach(function(oe,V){O[V]=[oe.position.x,oe.position.y],M[V]=[b[x.get(oe.nodeId)],w[x.get(oe.nodeId)]]}),B=!0;else if(y.alignmentConstraint)(function(){var oe=0;if(y.alignmentConstraint.vertical){for(var V=y.alignmentConstraint.vertical,xe=o(function(we){var Ve=new Set;V[we].forEach(function(at){Ve.add(at)});var De=new Set([].concat(u(Ve)).filter(function(at){return P.has(at)})),qe=void 0;De.size>0?qe=b[x.get(De.values().next().value)]:qe=_(Ve).x,V[we].forEach(function(at){O[oe]=[qe,w[x.get(at)]],M[oe]=[b[x.get(at)],w[x.get(at)]],oe++})},"_loop2"),q=0;q0?qe=b[x.get(De.values().next().value)]:qe=_(Ve).y,pe[we].forEach(function(at){O[oe]=[b[x.get(at)],qe],M[oe]=[b[x.get(at)],w[x.get(at)]],oe++})},"_loop3"),Pe=0;PeQ&&(Q=H[ie].length,j=ie);if(Q<$.size/2)D(y.relativePlacementConstraint),B=!1,F=!1;else{var ne=new Map,le=new Map,he=[];H[j].forEach(function(oe){z.get(oe).forEach(function(V){V.direction=="horizontal"?(ne.has(oe)?ne.get(oe).push(V):ne.set(oe,[V]),ne.has(V.id)||ne.set(V.id,[]),he.push({left:oe,right:V.id})):(le.has(oe)?le.get(oe).push(V):le.set(oe,[V]),le.has(V.id)||le.set(V.id,[]),he.push({top:oe,bottom:V.id}))})}),D(he),F=!1;var K=I(ne,"horizontal"),X=I(le,"vertical");H[j].forEach(function(oe,V){M[V]=[b[x.get(oe)],w[x.get(oe)]],O[V]=[],K.has(oe)?O[V][0]=K.get(oe):O[V][0]=b[x.get(oe)],X.has(oe)?O[V][1]=X.get(oe):O[V][1]=w[x.get(oe)]}),B=!0}}if(B){for(var te=void 0,J=d.transpose(O),se=d.transpose(M),ue=0;ue0){var ze={x:0,y:0};y.fixedNodeConstraint.forEach(function(oe,V){var xe={x:b[x.get(oe.nodeId)],y:w[x.get(oe.nodeId)]},q=oe.position,pe=S(q,xe);ze.x+=pe.x,ze.y+=pe.y}),ze.x/=y.fixedNodeConstraint.length,ze.y/=y.fixedNodeConstraint.length,b.forEach(function(oe,V){b[V]+=ze.x}),w.forEach(function(oe,V){w[V]+=ze.y}),y.fixedNodeConstraint.forEach(function(oe){b[x.get(oe.nodeId)]=oe.position.x,w[x.get(oe.nodeId)]=oe.position.y})}if(y.alignmentConstraint){if(y.alignmentConstraint.vertical)for(var He=y.alignmentConstraint.vertical,$e=o(function(V){var xe=new Set;He[V].forEach(function(ve){xe.add(ve)});var q=new Set([].concat(u(xe)).filter(function(ve){return P.has(ve)})),pe=void 0;q.size>0?pe=b[x.get(q.values().next().value)]:pe=_(xe).x,xe.forEach(function(ve){P.has(ve)||(b[x.get(ve)]=pe)})},"_loop4"),Re=0;Re0?pe=w[x.get(q.values().next().value)]:pe=_(xe).y,xe.forEach(function(ve){P.has(ve)||(w[x.get(ve)]=pe)})},"_loop5"),W=0;W{a.exports=t}},r={};function n(a){var s=r[a];if(s!==void 0)return s.exports;var l=r[a]={exports:{}};return e[a](l,l.exports,n),l.exports}o(n,"__webpack_require__");var i=n(45);return i})()})});var Pve=Mi((E4,gF)=>{"use strict";o(function(e,r){typeof E4=="object"&&typeof gF=="object"?gF.exports=r(mF()):typeof define=="function"&&define.amd?define(["cose-base"],r):typeof E4=="object"?E4.cytoscapeFcose=r(mF()):e.cytoscapeFcose=r(e.coseBase)},"webpackUniversalModuleDefinition")(E4,function(t){return(()=>{"use strict";var e={658:a=>{a.exports=Object.assign!=null?Object.assign.bind(Object):function(s){for(var l=arguments.length,u=Array(l>1?l-1:0),h=1;h{var u=function(){function d(p,m){var g=[],y=!0,v=!1,x=void 0;try{for(var b=p[Symbol.iterator](),w;!(y=(w=b.next()).done)&&(g.push(w.value),!(m&&g.length===m));y=!0);}catch(C){v=!0,x=C}finally{try{!y&&b.return&&b.return()}finally{if(v)throw x}}return g}return o(d,"sliceIterator"),function(p,m){if(Array.isArray(p))return p;if(Symbol.iterator in Object(p))return d(p,m);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),h=l(140).layoutBase.LinkedList,f={};f.getTopMostNodes=function(d){for(var p={},m=0;m0&&B.merge($)});for(var F=0;F1){w=x[0],C=w.connectedEdges().length,x.forEach(function(M){M.connectedEdges().length0&&g.set("dummy"+(g.size+1),A),S},f.relocateComponent=function(d,p,m){if(!m.fixedNodeConstraint){var g=Number.POSITIVE_INFINITY,y=Number.NEGATIVE_INFINITY,v=Number.POSITIVE_INFINITY,x=Number.NEGATIVE_INFINITY;if(m.quality=="draft"){var b=!0,w=!1,C=void 0;try{for(var T=p.nodeIndexes[Symbol.iterator](),E;!(b=(E=T.next()).done);b=!0){var A=E.value,S=u(A,2),_=S[0],I=S[1],D=m.cy.getElementById(_);if(D){var k=D.boundingBox(),L=p.xCoords[I]-k.w/2,R=p.xCoords[I]+k.w/2,O=p.yCoords[I]-k.h/2,M=p.yCoords[I]+k.h/2;Ly&&(y=R),Ox&&(x=M)}}}catch($){w=!0,C=$}finally{try{!b&&T.return&&T.return()}finally{if(w)throw C}}var B=d.x-(y+g)/2,F=d.y-(x+v)/2;p.xCoords=p.xCoords.map(function($){return $+B}),p.yCoords=p.yCoords.map(function($){return $+F})}else{Object.keys(p).forEach(function($){var H=p[$],Q=H.getRect().x,j=H.getRect().x+H.getRect().width,ie=H.getRect().y,ne=H.getRect().y+H.getRect().height;Qy&&(y=j),iex&&(x=ne)});var P=d.x-(y+g)/2,z=d.y-(x+v)/2;Object.keys(p).forEach(function($){var H=p[$];H.setCenter(H.getCenterX()+P,H.getCenterY()+z)})}}},f.calcBoundingBox=function(d,p,m,g){for(var y=Number.MAX_SAFE_INTEGER,v=Number.MIN_SAFE_INTEGER,x=Number.MAX_SAFE_INTEGER,b=Number.MIN_SAFE_INTEGER,w=void 0,C=void 0,T=void 0,E=void 0,A=d.descendants().not(":parent"),S=A.length,_=0;_w&&(y=w),vT&&(x=T),b{var u=l(548),h=l(140).CoSELayout,f=l(140).CoSENode,d=l(140).layoutBase.PointD,p=l(140).layoutBase.DimensionD,m=l(140).layoutBase.LayoutConstants,g=l(140).layoutBase.FDLayoutConstants,y=l(140).CoSEConstants,v=o(function(b,w){var C=b.cy,T=b.eles,E=T.nodes(),A=T.edges(),S=void 0,_=void 0,I=void 0,D={};b.randomize&&(S=w.nodeIndexes,_=w.xCoords,I=w.yCoords);var k=o(function($){return typeof $=="function"},"isFn"),L=o(function($,H){return k($)?$(H):$},"optFn"),R=u.calcParentsWithoutChildren(C,T),O=o(function z($,H,Q,j){for(var ie=H.length,ne=0;ne0){var J=void 0;J=Q.getGraphManager().add(Q.newGraph(),K),z(J,he,Q,j)}}},"processChildrenList"),M=o(function($,H,Q){for(var j=0,ie=0,ne=0;ne0?y.DEFAULT_EDGE_LENGTH=g.DEFAULT_EDGE_LENGTH=j/ie:k(b.idealEdgeLength)?y.DEFAULT_EDGE_LENGTH=g.DEFAULT_EDGE_LENGTH=50:y.DEFAULT_EDGE_LENGTH=g.DEFAULT_EDGE_LENGTH=b.idealEdgeLength,y.MIN_REPULSION_DIST=g.MIN_REPULSION_DIST=g.DEFAULT_EDGE_LENGTH/10,y.DEFAULT_RADIAL_SEPARATION=g.DEFAULT_EDGE_LENGTH)},"processEdges"),B=o(function($,H){H.fixedNodeConstraint&&($.constraints.fixedNodeConstraint=H.fixedNodeConstraint),H.alignmentConstraint&&($.constraints.alignmentConstraint=H.alignmentConstraint),H.relativePlacementConstraint&&($.constraints.relativePlacementConstraint=H.relativePlacementConstraint)},"processConstraints");b.nestingFactor!=null&&(y.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=g.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=b.nestingFactor),b.gravity!=null&&(y.DEFAULT_GRAVITY_STRENGTH=g.DEFAULT_GRAVITY_STRENGTH=b.gravity),b.numIter!=null&&(y.MAX_ITERATIONS=g.MAX_ITERATIONS=b.numIter),b.gravityRange!=null&&(y.DEFAULT_GRAVITY_RANGE_FACTOR=g.DEFAULT_GRAVITY_RANGE_FACTOR=b.gravityRange),b.gravityCompound!=null&&(y.DEFAULT_COMPOUND_GRAVITY_STRENGTH=g.DEFAULT_COMPOUND_GRAVITY_STRENGTH=b.gravityCompound),b.gravityRangeCompound!=null&&(y.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=g.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=b.gravityRangeCompound),b.initialEnergyOnIncremental!=null&&(y.DEFAULT_COOLING_FACTOR_INCREMENTAL=g.DEFAULT_COOLING_FACTOR_INCREMENTAL=b.initialEnergyOnIncremental),b.tilingCompareBy!=null&&(y.TILING_COMPARE_BY=b.tilingCompareBy),b.quality=="proof"?m.QUALITY=2:m.QUALITY=0,y.NODE_DIMENSIONS_INCLUDE_LABELS=g.NODE_DIMENSIONS_INCLUDE_LABELS=m.NODE_DIMENSIONS_INCLUDE_LABELS=b.nodeDimensionsIncludeLabels,y.DEFAULT_INCREMENTAL=g.DEFAULT_INCREMENTAL=m.DEFAULT_INCREMENTAL=!b.randomize,y.ANIMATE=g.ANIMATE=m.ANIMATE=b.animate,y.TILE=b.tile,y.TILING_PADDING_VERTICAL=typeof b.tilingPaddingVertical=="function"?b.tilingPaddingVertical.call():b.tilingPaddingVertical,y.TILING_PADDING_HORIZONTAL=typeof b.tilingPaddingHorizontal=="function"?b.tilingPaddingHorizontal.call():b.tilingPaddingHorizontal,y.DEFAULT_INCREMENTAL=g.DEFAULT_INCREMENTAL=m.DEFAULT_INCREMENTAL=!0,y.PURE_INCREMENTAL=!b.randomize,m.DEFAULT_UNIFORM_LEAF_NODE_SIZES=b.uniformNodeDimensions,b.step=="transformed"&&(y.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,y.ENFORCE_CONSTRAINTS=!1,y.APPLY_LAYOUT=!1),b.step=="enforced"&&(y.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,y.ENFORCE_CONSTRAINTS=!0,y.APPLY_LAYOUT=!1),b.step=="cose"&&(y.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,y.ENFORCE_CONSTRAINTS=!1,y.APPLY_LAYOUT=!0),b.step=="all"&&(b.randomize?y.TRANSFORM_ON_CONSTRAINT_HANDLING=!0:y.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,y.ENFORCE_CONSTRAINTS=!0,y.APPLY_LAYOUT=!0),b.fixedNodeConstraint||b.alignmentConstraint||b.relativePlacementConstraint?y.TREE_REDUCTION_ON_INCREMENTAL=!1:y.TREE_REDUCTION_ON_INCREMENTAL=!0;var F=new h,P=F.newGraphManager();return O(P.addRoot(),u.getTopMostNodes(E),F,b),M(F,P,A),B(F,b),F.runLayout(),D},"coseLayout");a.exports={coseLayout:v}},212:(a,s,l)=>{var u=function(){function b(w,C){for(var T=0;T0)if(M){var P=d.getTopMostNodes(T.eles.nodes());if(k=d.connectComponents(E,T.eles,P),k.forEach(function(ce){var ae=ce.boundingBox();L.push({x:ae.x1+ae.w/2,y:ae.y1+ae.h/2})}),T.randomize&&k.forEach(function(ce){T.eles=ce,S.push(m(T))}),T.quality=="default"||T.quality=="proof"){var z=E.collection();if(T.tile){var $=new Map,H=[],Q=[],j=0,ie={nodeIndexes:$,xCoords:H,yCoords:Q},ne=[];if(k.forEach(function(ce,ae){ce.edges().length==0&&(ce.nodes().forEach(function(Oe,ge){z.merge(ce.nodes()[ge]),Oe.isParent()||(ie.nodeIndexes.set(ce.nodes()[ge].id(),j++),ie.xCoords.push(ce.nodes()[0].position().x),ie.yCoords.push(ce.nodes()[0].position().y))}),ne.push(ae))}),z.length>1){var le=z.boundingBox();L.push({x:le.x1+le.w/2,y:le.y1+le.h/2}),k.push(z),S.push(ie);for(var he=ne.length-1;he>=0;he--)k.splice(ne[he],1),S.splice(ne[he],1),L.splice(ne[he],1)}}k.forEach(function(ce,ae){T.eles=ce,D.push(y(T,S[ae])),d.relocateComponent(L[ae],D[ae],T)})}else k.forEach(function(ce,ae){d.relocateComponent(L[ae],S[ae],T)});var K=new Set;if(k.length>1){var X=[],te=A.filter(function(ce){return ce.css("display")=="none"});k.forEach(function(ce,ae){var Oe=void 0;if(T.quality=="draft"&&(Oe=S[ae].nodeIndexes),ce.nodes().not(te).length>0){var ge={};ge.edges=[],ge.nodes=[];var ze=void 0;ce.nodes().not(te).forEach(function(He){if(T.quality=="draft")if(!He.isParent())ze=Oe.get(He.id()),ge.nodes.push({x:S[ae].xCoords[ze]-He.boundingbox().w/2,y:S[ae].yCoords[ze]-He.boundingbox().h/2,width:He.boundingbox().w,height:He.boundingbox().h});else{var $e=d.calcBoundingBox(He,S[ae].xCoords,S[ae].yCoords,Oe);ge.nodes.push({x:$e.topLeftX,y:$e.topLeftY,width:$e.width,height:$e.height})}else D[ae][He.id()]&&ge.nodes.push({x:D[ae][He.id()].getLeft(),y:D[ae][He.id()].getTop(),width:D[ae][He.id()].getWidth(),height:D[ae][He.id()].getHeight()})}),ce.edges().forEach(function(He){var $e=He.source(),Re=He.target();if($e.css("display")!="none"&&Re.css("display")!="none")if(T.quality=="draft"){var Ie=Oe.get($e.id()),be=Oe.get(Re.id()),W=[],de=[];if($e.isParent()){var re=d.calcBoundingBox($e,S[ae].xCoords,S[ae].yCoords,Oe);W.push(re.topLeftX+re.width/2),W.push(re.topLeftY+re.height/2)}else W.push(S[ae].xCoords[Ie]),W.push(S[ae].yCoords[Ie]);if(Re.isParent()){var oe=d.calcBoundingBox(Re,S[ae].xCoords,S[ae].yCoords,Oe);de.push(oe.topLeftX+oe.width/2),de.push(oe.topLeftY+oe.height/2)}else de.push(S[ae].xCoords[be]),de.push(S[ae].yCoords[be]);ge.edges.push({startX:W[0],startY:W[1],endX:de[0],endY:de[1]})}else D[ae][$e.id()]&&D[ae][Re.id()]&&ge.edges.push({startX:D[ae][$e.id()].getCenterX(),startY:D[ae][$e.id()].getCenterY(),endX:D[ae][Re.id()].getCenterX(),endY:D[ae][Re.id()].getCenterY()})}),ge.nodes.length>0&&(X.push(ge),K.add(ae))}});var J=O.packComponents(X,T.randomize).shifts;if(T.quality=="draft")S.forEach(function(ce,ae){var Oe=ce.xCoords.map(function(ze){return ze+J[ae].dx}),ge=ce.yCoords.map(function(ze){return ze+J[ae].dy});ce.xCoords=Oe,ce.yCoords=ge});else{var se=0;K.forEach(function(ce){Object.keys(D[ce]).forEach(function(ae){var Oe=D[ce][ae];Oe.setCenter(Oe.getCenterX()+J[se].dx,Oe.getCenterY()+J[se].dy)}),se++})}}}else{var B=T.eles.boundingBox();if(L.push({x:B.x1+B.w/2,y:B.y1+B.h/2}),T.randomize){var F=m(T);S.push(F)}T.quality=="default"||T.quality=="proof"?(D.push(y(T,S[0])),d.relocateComponent(L[0],D[0],T)):d.relocateComponent(L[0],S[0],T)}var ue=o(function(ae,Oe){if(T.quality=="default"||T.quality=="proof"){typeof ae=="number"&&(ae=Oe);var ge=void 0,ze=void 0,He=ae.data("id");return D.forEach(function(Re){He in Re&&(ge={x:Re[He].getRect().getCenterX(),y:Re[He].getRect().getCenterY()},ze=Re[He])}),T.nodeDimensionsIncludeLabels&&(ze.labelWidth&&(ze.labelPosHorizontal=="left"?ge.x+=ze.labelWidth/2:ze.labelPosHorizontal=="right"&&(ge.x-=ze.labelWidth/2)),ze.labelHeight&&(ze.labelPosVertical=="top"?ge.y+=ze.labelHeight/2:ze.labelPosVertical=="bottom"&&(ge.y-=ze.labelHeight/2))),ge==null&&(ge={x:ae.position("x"),y:ae.position("y")}),{x:ge.x,y:ge.y}}else{var $e=void 0;return S.forEach(function(Re){var Ie=Re.nodeIndexes.get(ae.id());Ie!=null&&($e={x:Re.xCoords[Ie],y:Re.yCoords[Ie]})}),$e==null&&($e={x:ae.position("x"),y:ae.position("y")}),{x:$e.x,y:$e.y}}},"getPositions");if(T.quality=="default"||T.quality=="proof"||T.randomize){var Z=d.calcParentsWithoutChildren(E,A),Se=A.filter(function(ce){return ce.css("display")=="none"});T.eles=A.not(Se),A.nodes().not(":parent").not(Se).layoutPositions(C,T,ue),Z.length>0&&Z.forEach(function(ce){ce.position(ue(ce))})}else console.log("If randomize option is set to false, then quality option must be 'default' or 'proof'.")},"run")}]),b}();a.exports=x},657:(a,s,l)=>{var u=l(548),h=l(140).layoutBase.Matrix,f=l(140).layoutBase.SVD,d=o(function(m){var g=m.cy,y=m.eles,v=y.nodes(),x=y.nodes(":parent"),b=new Map,w=new Map,C=new Map,T=[],E=[],A=[],S=[],_=[],I=[],D=[],k=[],L=void 0,R=void 0,O=1e8,M=1e-9,B=m.piTol,F=m.samplingType,P=m.nodeSeparation,z=void 0,$=o(function(){for(var xe=0,q=0,pe=!1;q=Pe;){we=ve[Pe++];for(var st=T[we],Ue=0;Ueqe&&(qe=_[We],at=We)}return at},"BFS"),Q=o(function(xe){var q=void 0;if(xe){q=Math.floor(Math.random()*R),L=q;for(var ve=0;ve=1)break;qe=De}for(var st=0;st=1)break;qe=De}for(var ct=0;ct0&&(q.isParent()?T[xe].push(C.get(q.id())):T[xe].push(q.id()))})});var Z=o(function(xe){var q=w.get(xe),pe=void 0;b.get(xe).forEach(function(ve){g.getElementById(ve).isParent()?pe=C.get(ve):pe=ve,T[q].push(pe),T[w.get(pe)].push(xe)})},"_loop"),Se=!0,ce=!1,ae=void 0;try{for(var Oe=b.keys()[Symbol.iterator](),ge;!(Se=(ge=Oe.next()).done);Se=!0){var ze=ge.value;Z(ze)}}catch(V){ce=!0,ae=V}finally{try{!Se&&Oe.return&&Oe.return()}finally{if(ce)throw ae}}R=w.size;var He=void 0;if(R>2){z=R{var u=l(212),h=o(function(d){d&&d("layout","fcose",u)},"register");typeof cytoscape<"u"&&h(cytoscape),a.exports=h},140:a=>{a.exports=t}},r={};function n(a){var s=r[a];if(s!==void 0)return s.exports;var l=r[a]={exports:{}};return e[a](l,l.exports,n),l.exports}o(n,"__webpack_require__");var i=n(579);return i})()})});var dy,Zp,yF=N(()=>{"use strict";tu();dy=o(t=>`${t}`,"wrapIcon"),Zp={prefix:"mermaid-architecture",height:80,width:80,icons:{database:{body:dy('')},server:{body:dy('')},disk:{body:dy('')},internet:{body:dy('')},cloud:{body:dy('')},unknown:OC,blank:{body:dy("")}}}});var Bve,Fve,$ve,zve,Gve=N(()=>{"use strict";tu();zt();to();w4();yF();oC();Bve=o(async function(t,e){let r=Li("padding"),n=Li("iconSize"),i=n/2,a=n/6,s=a/2;await Promise.all(e.edges().map(async l=>{let{source:u,sourceDir:h,sourceArrow:f,sourceGroup:d,target:p,targetDir:m,targetArrow:g,targetGroup:y,label:v}=sC(l),{x,y:b}=l[0].sourceEndpoint(),{x:w,y:C}=l[0].midpoint(),{x:T,y:E}=l[0].targetEndpoint(),A=r+4;if(d&&(Ha(h)?x+=h==="L"?-A:A:b+=h==="T"?-A:A+18),y&&(Ha(m)?T+=m==="L"?-A:A:E+=m==="T"?-A:A+18),!d&&Qp.getNode(u)?.type==="junction"&&(Ha(h)?x+=h==="L"?i:-i:b+=h==="T"?i:-i),!y&&Qp.getNode(p)?.type==="junction"&&(Ha(m)?T+=m==="L"?i:-i:E+=m==="T"?i:-i),l[0]._private.rscratch){let S=t.insert("g");if(S.insert("path").attr("d",`M ${x},${b} L ${w},${C} L${T},${E} `).attr("class","edge"),f){let _=Ha(h)?v4[h](x,a):x-s,I=Zc(h)?v4[h](b,a):b-s;S.insert("polygon").attr("points",cF[h](a)).attr("transform",`translate(${_},${I})`).attr("class","arrow")}if(g){let _=Ha(m)?v4[m](T,a):T-s,I=Zc(m)?v4[m](E,a):E-s;S.insert("polygon").attr("points",cF[m](a)).attr("transform",`translate(${_},${I})`).attr("class","arrow")}if(v){let _=x4(h,m)?"XY":Ha(h)?"X":"Y",I=0;_==="X"?I=Math.abs(x-T):_==="Y"?I=Math.abs(b-E)/1.5:I=Math.abs(x-T)/2;let D=S.append("g");if(await Hn(D,v,{useHtmlLabels:!1,width:I,classes:"architecture-service-label"},me()),D.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),_==="X")D.attr("transform","translate("+w+", "+C+")");else if(_==="Y")D.attr("transform","translate("+w+", "+C+") rotate(-90)");else if(_==="XY"){let k=b4(h,m);if(k&&Sve(k)){let L=D.node().getBoundingClientRect(),[R,O]=Ave(k);D.attr("dominant-baseline","auto").attr("transform",`rotate(${-1*R*O*45})`);let M=D.node().getBoundingClientRect();D.attr("transform",` + translate(${w}, ${C-L.height/2}) + translate(${R*M.width/2}, ${O*M.height/2}) + rotate(${-1*R*O*45}, 0, ${L.height/2}) + `)}}}}}))},"drawEdges"),Fve=o(async function(t,e){let n=Li("padding")*.75,i=Li("fontSize"),s=Li("iconSize")/2;await Promise.all(e.nodes().map(async l=>{let u=Ff(l);if(u.type==="group"){let{h,w:f,x1:d,y1:p}=l.boundingBox();t.append("rect").attr("x",d+s).attr("y",p+s).attr("width",f).attr("height",h).attr("class","node-bkg");let m=t.append("g"),g=d,y=p;if(u.icon){let v=m.append("g");v.html(`${await wo(u.icon,{height:n,width:n,fallbackPrefix:Zp.prefix})}`),v.attr("transform","translate("+(g+s+1)+", "+(y+s+1)+")"),g+=n,y+=i/2-1-2}if(u.label){let v=m.append("g");await Hn(v,u.label,{useHtmlLabels:!1,width:f,classes:"architecture-service-label"},me()),v.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","start").attr("text-anchor","start"),v.attr("transform","translate("+(g+s+4)+", "+(y+s+2)+")")}}}))},"drawGroups"),$ve=o(async function(t,e,r){for(let n of r){let i=e.append("g"),a=Li("iconSize");if(n.title){let h=i.append("g");await Hn(h,n.title,{useHtmlLabels:!1,width:a*1.5,classes:"architecture-service-label"},me()),h.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),h.attr("transform","translate("+a/2+", "+a+")")}let s=i.append("g");if(n.icon)s.html(`${await wo(n.icon,{height:a,width:a,fallbackPrefix:Zp.prefix})}`);else if(n.iconText){s.html(`${await wo("blank",{height:a,width:a,fallbackPrefix:Zp.prefix})}`);let d=s.append("g").append("foreignObject").attr("width",a).attr("height",a).append("div").attr("class","node-icon-text").attr("style",`height: ${a}px;`).append("div").html(n.iconText),p=parseInt(window.getComputedStyle(d.node(),null).getPropertyValue("font-size").replace(/\D/g,""))??16;d.attr("style",`-webkit-line-clamp: ${Math.floor((a-2)/p)};`)}else s.append("path").attr("class","node-bkg").attr("id","node-"+n.id).attr("d",`M0 ${a} v${-a} q0,-5 5,-5 h${a} q5,0 5,5 v${a} H0 Z`);i.attr("class","architecture-service");let{width:l,height:u}=i._groups[0][0].getBBox();n.width=l,n.height=u,t.setElementForId(n.id,i)}return 0},"drawServices"),zve=o(function(t,e,r){r.forEach(n=>{let i=e.append("g"),a=Li("iconSize");i.append("g").append("rect").attr("id","node-"+n.id).attr("fill-opacity","0").attr("width",a).attr("height",a),i.attr("class","architecture-junction");let{width:l,height:u}=i._groups[0][0].getBBox();i.width=l,i.height=u,t.setElementForId(n.id,i)})},"drawJunctions")});function Srt(t,e){t.forEach(r=>{e.add({group:"nodes",data:{type:"service",id:r.id,icon:r.icon,label:r.title,parent:r.in,width:Li("iconSize"),height:Li("iconSize")},classes:"node-service"})})}function Crt(t,e){t.forEach(r=>{e.add({group:"nodes",data:{type:"junction",id:r.id,parent:r.in,width:Li("iconSize"),height:Li("iconSize")},classes:"node-junction"})})}function Art(t,e){e.nodes().map(r=>{let n=Ff(r);if(n.type==="group")return;n.x=r.position().x,n.y=r.position().y,t.getElementById(n.id).attr("transform","translate("+(n.x||0)+","+(n.y||0)+")")})}function _rt(t,e){t.forEach(r=>{e.add({group:"nodes",data:{type:"group",id:r.id,icon:r.icon,label:r.title,parent:r.in},classes:"node-group"})})}function Drt(t,e){t.forEach(r=>{let{lhsId:n,rhsId:i,lhsInto:a,lhsGroup:s,rhsInto:l,lhsDir:u,rhsDir:h,rhsGroup:f,title:d}=r,p=x4(r.lhsDir,r.rhsDir)?"segments":"straight",m={id:`${n}-${i}`,label:d,source:n,sourceDir:u,sourceArrow:a,sourceGroup:s,sourceEndpoint:u==="L"?"0 50%":u==="R"?"100% 50%":u==="T"?"50% 0":"50% 100%",target:i,targetDir:h,targetArrow:l,targetGroup:f,targetEndpoint:h==="L"?"0 50%":h==="R"?"100% 50%":h==="T"?"50% 0":"50% 100%"};e.add({group:"edges",data:m,classes:p})})}function Lrt(t,e,r){let n=o((l,u)=>Object.entries(l).reduce((h,[f,d])=>{let p=0,m=Object.entries(d);if(m.length===1)return h[f]=m[0][1],h;for(let g=0;g{let u={},h={};return Object.entries(l).forEach(([f,[d,p]])=>{let m=t.getNode(f)?.in??"default";u[p]??={},u[p][m]??=[],u[p][m].push(f),h[d]??={},h[d][m]??=[],h[d][m].push(f)}),{horiz:Object.values(n(u,"horizontal")).filter(f=>f.length>1),vert:Object.values(n(h,"vertical")).filter(f=>f.length>1)}}),[a,s]=i.reduce(([l,u],{horiz:h,vert:f})=>[[...l,...h],[...u,...f]],[[],[]]);return{horizontal:a,vertical:s}}function Rrt(t){let e=[],r=o(i=>`${i[0]},${i[1]}`,"posToStr"),n=o(i=>i.split(",").map(a=>parseInt(a)),"strToPos");return t.forEach(i=>{let a=Object.fromEntries(Object.entries(i).map(([h,f])=>[r(f),h])),s=[r([0,0])],l={},u={L:[-1,0],R:[1,0],T:[0,1],B:[0,-1]};for(;s.length>0;){let h=s.shift();if(h){l[h]=1;let f=a[h];if(f){let d=n(h);Object.entries(u).forEach(([p,m])=>{let g=r([d[0]+m[0],d[1]+m[1]]),y=a[g];y&&!l[g]&&(s.push(g),e.push({[lF[p]]:y,[lF[Eve(p)]]:f,gap:1.5*Li("iconSize")}))})}}}}),e}function Nrt(t,e,r,n,i,{spatialMaps:a,groupAlignments:s}){return new Promise(l=>{let u=Ge("body").append("div").attr("id","cy").attr("style","display:none"),h=rl({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"straight",label:"data(label)","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"edge.segments",style:{"curve-style":"segments","segment-weights":"0","segment-distances":[.5],"edge-distances":"endpoints","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"node",style:{"compound-sizing-wrt-labels":"include"}},{selector:"node[label]",style:{"text-valign":"bottom","text-halign":"center","font-size":`${Li("fontSize")}px`}},{selector:".node-service",style:{label:"data(label)",width:"data(width)",height:"data(height)"}},{selector:".node-junction",style:{width:"data(width)",height:"data(height)"}},{selector:".node-group",style:{padding:`${Li("padding")}px`}}]});u.remove(),_rt(r,h),Srt(t,h),Crt(e,h),Drt(n,h);let f=Lrt(i,a,s),d=Rrt(a),p=h.layout({name:"fcose",quality:"proof",styleEnabled:!1,animate:!1,nodeDimensionsIncludeLabels:!1,idealEdgeLength(m){let[g,y]=m.connectedNodes(),{parent:v}=Ff(g),{parent:x}=Ff(y);return v===x?1.5*Li("iconSize"):.5*Li("iconSize")},edgeElasticity(m){let[g,y]=m.connectedNodes(),{parent:v}=Ff(g),{parent:x}=Ff(y);return v===x?.45:.001},alignmentConstraint:f,relativePlacementConstraint:d});p.one("layoutstop",()=>{function m(g,y,v,x){let b,w,{x:C,y:T}=g,{x:E,y:A}=y;w=(x-T+(C-v)*(T-A)/(C-E))/Math.sqrt(1+Math.pow((T-A)/(C-E),2)),b=Math.sqrt(Math.pow(x-T,2)+Math.pow(v-C,2)-Math.pow(w,2));let S=Math.sqrt(Math.pow(E-C,2)+Math.pow(A-T,2));b=b/S;let _=(E-C)*(x-T)-(A-T)*(v-C);switch(!0){case _>=0:_=1;break;case _<0:_=-1;break}let I=(E-C)*(v-C)+(A-T)*(x-T);switch(!0){case I>=0:I=1;break;case I<0:I=-1;break}return w=Math.abs(w)*_,b=b*I,{distances:w,weights:b}}o(m,"getSegmentWeights"),h.startBatch();for(let g of Object.values(h.edges()))if(g.data?.()){let{x:y,y:v}=g.source().position(),{x,y:b}=g.target().position();if(y!==x&&v!==b){let w=g.sourceEndpoint(),C=g.targetEndpoint(),{sourceDir:T}=sC(g),[E,A]=Zc(T)?[w.x,C.y]:[C.x,w.y],{weights:S,distances:_}=m(w,C,E,A);g.style("segment-distances",_),g.style("segment-weights",S)}}h.endBatch(),p.run()}),p.run(),h.ready(m=>{Y.info("Ready",m),l(h)})})}var Vve,Mrt,Uve,Hve=N(()=>{"use strict";tu();kB();Vve=Sa(Pve(),1);dr();vt();Vc();Ei();w4();yF();oC();Gve();P4([{name:Zp.prefix,icons:Zp}]);rl.use(Vve.default);o(Srt,"addServices");o(Crt,"addJunctions");o(Art,"positionNodes");o(_rt,"addGroups");o(Drt,"addEdges");o(Lrt,"getAlignments");o(Rrt,"getRelativeConstraints");o(Nrt,"layoutArchitecture");Mrt=o(async(t,e,r,n)=>{let i=n.db,a=i.getServices(),s=i.getJunctions(),l=i.getGroups(),u=i.getEdges(),h=i.getDataStructures(),f=sa(e),d=f.append("g");d.attr("class","architecture-edges");let p=f.append("g");p.attr("class","architecture-services");let m=f.append("g");m.attr("class","architecture-groups"),await $ve(i,p,a),zve(i,p,s);let g=await Nrt(a,s,l,u,i,h);await Bve(d,g),await Fve(m,g),Art(i,g),Ao(void 0,f,Li("padding"),Li("useMaxWidth"))},"draw"),Uve={draw:Mrt}});var Wve={};hr(Wve,{diagram:()=>Irt});var Irt,qve=N(()=>{"use strict";Mve();w4();Ove();Hve();Irt={parser:Nve,db:Qp,renderer:Uve,styles:Ive}});var bnt={};hr(bnt,{default:()=>xnt});tu();PC();Xf();var YX="c4",PCe=o(t=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(t),"detector"),BCe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(qX(),WX));return{id:YX,diagram:t}},"loader"),FCe={id:YX,detector:PCe,loader:BCe},XX=FCe;var Xie="flowchart",xOe=o((t,e)=>e?.flowchart?.defaultRenderer==="dagre-wrapper"||e?.flowchart?.defaultRenderer==="elk"?!1:/^\s*graph/.test(t),"detector"),bOe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(ak(),ik));return{id:Xie,diagram:t}},"loader"),wOe={id:Xie,detector:xOe,loader:bOe},jie=wOe;var Kie="flowchart-v2",TOe=o((t,e)=>e?.flowchart?.defaultRenderer==="dagre-d3"?!1:(e?.flowchart?.defaultRenderer==="elk"&&(e.layout="elk"),/^\s*graph/.test(t)&&e?.flowchart?.defaultRenderer==="dagre-wrapper"?!0:/^\s*flowchart/.test(t)),"detector"),kOe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(ak(),ik));return{id:Kie,diagram:t}},"loader"),EOe={id:Kie,detector:TOe,loader:kOe},Qie=EOe;var sae="er",DOe=o(t=>/^\s*erDiagram/.test(t),"detector"),LOe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(aae(),iae));return{id:sae,diagram:t}},"loader"),ROe={id:sae,detector:DOe,loader:LOe},oae=ROe;var uue="gitGraph",tze=o(t=>/^\s*gitGraph/.test(t),"detector"),rze=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(cue(),lue));return{id:uue,diagram:t}},"loader"),nze={id:uue,detector:tze,loader:rze},hue=nze;var Gue="gantt",Hze=o(t=>/^\s*gantt/.test(t),"detector"),Wze=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(zue(),$ue));return{id:Gue,diagram:t}},"loader"),qze={id:Gue,detector:Hze,loader:Wze},Vue=qze;var Que="info",Zze=o(t=>/^\s*info/.test(t),"detector"),Jze=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Kue(),jue));return{id:Que,diagram:t}},"loader"),Zue={id:Que,detector:Zze,loader:Jze};var lhe="pie",fGe=o(t=>/^\s*pie/.test(t),"detector"),dGe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(ohe(),she));return{id:lhe,diagram:t}},"loader"),che={id:lhe,detector:fGe,loader:dGe};var The="quadrantChart",RGe=o(t=>/^\s*quadrantChart/.test(t),"detector"),NGe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(whe(),bhe));return{id:The,diagram:t}},"loader"),MGe={id:The,detector:RGe,loader:NGe},khe=MGe;var Khe="xychart",jGe=o(t=>/^\s*xychart-beta/.test(t),"detector"),KGe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(jhe(),Xhe));return{id:Khe,diagram:t}},"loader"),QGe={id:Khe,detector:jGe,loader:KGe},Qhe=QGe;var sfe="requirement",tVe=o(t=>/^\s*requirement(Diagram)?/.test(t),"detector"),rVe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(afe(),ife));return{id:sfe,diagram:t}},"loader"),nVe={id:sfe,detector:tVe,loader:rVe},ofe=nVe;var Afe="sequence",zVe=o(t=>/^\s*sequenceDiagram/.test(t),"detector"),GVe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Cfe(),Sfe));return{id:Afe,diagram:t}},"loader"),VVe={id:Afe,detector:zVe,loader:GVe},_fe=VVe;var Ife="class",XVe=o((t,e)=>e?.class?.defaultRenderer==="dagre-wrapper"?!1:/^\s*classDiagram/.test(t),"detector"),jVe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Mfe(),Nfe));return{id:Ife,diagram:t}},"loader"),KVe={id:Ife,detector:XVe,loader:jVe},Ofe=KVe;var Ffe="classDiagram",ZVe=o((t,e)=>/^\s*classDiagram/.test(t)&&e?.class?.defaultRenderer==="dagre-wrapper"?!0:/^\s*classDiagram-v2/.test(t),"detector"),JVe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Bfe(),Pfe));return{id:Ffe,diagram:t}},"loader"),eUe={id:Ffe,detector:ZVe,loader:JVe},$fe=eUe;var Ede="state",LUe=o((t,e)=>e?.state?.defaultRenderer==="dagre-wrapper"?!1:/^\s*stateDiagram/.test(t),"detector"),RUe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(kde(),Tde));return{id:Ede,diagram:t}},"loader"),NUe={id:Ede,detector:LUe,loader:RUe},Sde=NUe;var _de="stateDiagram",IUe=o((t,e)=>!!(/^\s*stateDiagram-v2/.test(t)||/^\s*stateDiagram/.test(t)&&e?.state?.defaultRenderer==="dagre-wrapper"),"detector"),OUe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Ade(),Cde));return{id:_de,diagram:t}},"loader"),PUe={id:_de,detector:IUe,loader:OUe},Dde=PUe;var Wde="journey",nHe=o(t=>/^\s*journey/.test(t),"detector"),iHe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Hde(),Ude));return{id:Wde,diagram:t}},"loader"),aHe={id:Wde,detector:nHe,loader:iHe},qde=aHe;vt();Vc();Ei();var sHe=o((t,e,r)=>{Y.debug(`rendering svg for syntax error +`);let n=sa(e),i=n.append("g");n.attr("viewBox","0 0 2412 512"),vn(n,100,512,!0),i.append("path").attr("class","error-icon").attr("d","m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"),i.append("path").attr("class","error-icon").attr("d","m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"),i.append("path").attr("class","error-icon").attr("d","m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"),i.append("path").attr("class","error-icon").attr("d","m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"),i.append("path").attr("class","error-icon").attr("d","m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"),i.append("path").attr("class","error-icon").attr("d","m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"),i.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in text"),i.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${r}`)},"draw"),fP={draw:sHe},Yde=fP;var oHe={db:{},renderer:fP,parser:{parse:o(()=>{},"parse")}},Xde=oHe;var jde="flowchart-elk",lHe=o((t,e={})=>/^\s*flowchart-elk/.test(t)||/^\s*flowchart|graph/.test(t)&&e?.flowchart?.defaultRenderer==="elk"?(e.layout="elk",!0):!1,"detector"),cHe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(ak(),ik));return{id:jde,diagram:t}},"loader"),uHe={id:jde,detector:lHe,loader:cHe},Kde=uHe;var Tpe="timeline",DHe=o(t=>/^\s*timeline/.test(t),"detector"),LHe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(wpe(),bpe));return{id:Tpe,diagram:t}},"loader"),RHe={id:Tpe,detector:DHe,loader:LHe},kpe=RHe;var e1e="mindmap",cJe=o(t=>/^\s*mindmap/.test(t),"detector"),uJe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Jge(),Zge));return{id:e1e,diagram:t}},"loader"),hJe={id:e1e,detector:cJe,loader:uJe},t1e=hJe;var d1e="kanban",AJe=o(t=>/^\s*kanban/.test(t),"detector"),_Je=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(f1e(),h1e));return{id:d1e,diagram:t}},"loader"),DJe={id:d1e,detector:AJe,loader:_Je},p1e=DJe;var j1e="sankey",ZJe=o(t=>/^\s*sankey-beta/.test(t),"detector"),JJe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(X1e(),Y1e));return{id:j1e,diagram:t}},"loader"),eet={id:j1e,detector:ZJe,loader:JJe},K1e=eet;var sye="packet",pet=o(t=>/^\s*packet-beta/.test(t),"detector"),met=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(aye(),iye));return{id:sye,diagram:t}},"loader"),oye={id:sye,detector:pet,loader:met};var vye="radar",Fet=o(t=>/^\s*radar-beta/.test(t),"detector"),$et=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(yye(),gye));return{id:vye,diagram:t}},"loader"),xye={id:vye,detector:Fet,loader:$et};var Tve="block",srt=o(t=>/^\s*block-beta/.test(t),"detector"),ort=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(wve(),bve));return{id:Tve,diagram:t}},"loader"),lrt={id:Tve,detector:srt,loader:ort},kve=lrt;var Yve="architecture",Ort=o(t=>/^\s*architecture/.test(t),"detector"),Prt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(qve(),Wve));return{id:Yve,diagram:t}},"loader"),Brt={id:Yve,detector:Ort,loader:Prt},Xve=Brt;Xf();zt();var jve=!1,py=o(()=>{jve||(jve=!0,ad("error",Xde,t=>t.toLowerCase().trim()==="error"),ad("---",{db:{clear:o(()=>{},"clear")},styles:{},renderer:{draw:o(()=>{},"draw")},parser:{parse:o(()=>{throw new Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")},"parse")},init:o(()=>null,"init")},t=>t.toLowerCase().trimStart().startsWith("---")),z4(XX,p1e,$fe,Ofe,oae,Vue,Zue,che,ofe,_fe,Kde,Qie,jie,t1e,kpe,hue,Dde,Sde,qde,khe,K1e,oye,Qhe,kve,Xve,xye))},"addDiagrams");vt();Xf();zt();var Kve=o(async()=>{Y.debug("Loading registered diagrams");let e=(await Promise.allSettled(Object.entries(Yf).map(async([r,{detector:n,loader:i}])=>{if(i)try{jy(r)}catch{try{let{diagram:a,id:s}=await i();ad(s,a,n)}catch(a){throw Y.error(`Failed to load external diagram with key ${r}. Removing from detectors.`),delete Yf[r],a}}}))).filter(r=>r.status==="rejected");if(e.length>0){Y.error(`Failed to load ${e.length} external diagrams`);for(let r of e)Y.error(r);throw new Error(`Failed to load ${e.length} external diagrams`)}},"loadRegisteredDiagrams");vt();dr();var lC="comm",cC="rule",uC="decl";var Qve="@import";var Zve="@namespace",Jve="@keyframes";var e2e="@layer";var vF=Math.abs,S4=String.fromCharCode;function hC(t){return t.trim()}o(hC,"trim");function C4(t,e,r){return t.replace(e,r)}o(C4,"replace");function t2e(t,e,r){return t.indexOf(e,r)}o(t2e,"indexof");function $f(t,e){return t.charCodeAt(e)|0}o($f,"charat");function zf(t,e,r){return t.slice(e,r)}o(zf,"substr");function vo(t){return t.length}o(vo,"strlen");function r2e(t){return t.length}o(r2e,"sizeof");function my(t,e){return e.push(t),t}o(my,"append");var fC=1,gy=1,n2e=0,il=0,Ri=0,vy="";function dC(t,e,r,n,i,a,s,l){return{value:t,root:e,parent:r,type:n,props:i,children:a,line:fC,column:gy,length:s,return:"",siblings:l}}o(dC,"node");function i2e(){return Ri}o(i2e,"char");function a2e(){return Ri=il>0?$f(vy,--il):0,gy--,Ri===10&&(gy=1,fC--),Ri}o(a2e,"prev");function al(){return Ri=il2||yy(Ri)>3?"":" "}o(l2e,"whitespace");function c2e(t,e){for(;--e&&al()&&!(Ri<48||Ri>102||Ri>57&&Ri<65||Ri>70&&Ri<97););return pC(t,A4()+(e<6&&rh()==32&&al()==32))}o(c2e,"escaping");function xF(t){for(;al();)switch(Ri){case t:return il;case 34:case 39:t!==34&&t!==39&&xF(Ri);break;case 40:t===41&&xF(t);break;case 92:al();break}return il}o(xF,"delimiter");function u2e(t,e){for(;al()&&t+Ri!==57;)if(t+Ri===84&&rh()===47)break;return"/*"+pC(e,il-1)+"*"+S4(t===47?t:al())}o(u2e,"commenter");function h2e(t){for(;!yy(rh());)al();return pC(t,il)}o(h2e,"identifier");function p2e(t){return o2e(gC("",null,null,null,[""],t=s2e(t),0,[0],t))}o(p2e,"compile");function gC(t,e,r,n,i,a,s,l,u){for(var h=0,f=0,d=s,p=0,m=0,g=0,y=1,v=1,x=1,b=0,w="",C=i,T=a,E=n,A=w;v;)switch(g=b,b=al()){case 40:if(g!=108&&$f(A,d-1)==58){t2e(A+=C4(mC(b),"&","&\f"),"&\f",vF(h?l[h-1]:0))!=-1&&(x=-1);break}case 34:case 39:case 91:A+=mC(b);break;case 9:case 10:case 13:case 32:A+=l2e(g);break;case 92:A+=c2e(A4()-1,7);continue;case 47:switch(rh()){case 42:case 47:my(Frt(u2e(al(),A4()),e,r,u),u),(yy(g||1)==5||yy(rh()||1)==5)&&vo(A)&&zf(A,-1,void 0)!==" "&&(A+=" ");break;default:A+="/"}break;case 123*y:l[h++]=vo(A)*x;case 125*y:case 59:case 0:switch(b){case 0:case 125:v=0;case 59+f:x==-1&&(A=C4(A,/\f/g,"")),m>0&&(vo(A)-d||y===0&&g===47)&&my(m>32?d2e(A+";",n,r,d-1,u):d2e(C4(A," ","")+";",n,r,d-2,u),u);break;case 59:A+=";";default:if(my(E=f2e(A,e,r,h,f,i,l,w,C=[],T=[],d,a),a),b===123)if(f===0)gC(A,e,E,E,C,a,d,l,T);else{switch(p){case 99:if($f(A,3)===110)break;case 108:if($f(A,2)===97)break;default:f=0;case 100:case 109:case 115:}f?gC(t,E,E,n&&my(f2e(t,E,E,0,0,i,l,w,i,C=[],d,T),T),i,T,d,l,n?C:T):gC(A,E,E,E,[""],T,0,l,T)}}h=f=m=0,y=x=1,w=A="",d=s;break;case 58:d=1+vo(A),m=g;default:if(y<1){if(b==123)--y;else if(b==125&&y++==0&&a2e()==125)continue}switch(A+=S4(b),b*y){case 38:x=f>0?1:(A+="\f",-1);break;case 44:l[h++]=(vo(A)-1)*x,x=1;break;case 64:rh()===45&&(A+=mC(al())),p=rh(),f=d=vo(w=A+=h2e(A4())),b++;break;case 45:g===45&&vo(A)==2&&(y=0)}}return a}o(gC,"parse");function f2e(t,e,r,n,i,a,s,l,u,h,f,d){for(var p=i-1,m=i===0?a:[""],g=r2e(m),y=0,v=0,x=0;y0?m[b]+" "+w:C4(w,/&\f/g,m[b])))&&(u[x++]=C);return dC(t,e,r,i===0?cC:l,u,h,f,d)}o(f2e,"ruleset");function Frt(t,e,r,n){return dC(t,e,r,lC,S4(i2e()),zf(t,2,-2),0,n)}o(Frt,"comment");function d2e(t,e,r,n,i){return dC(t,e,r,uC,zf(t,0,n),zf(t,n+1,-1),n,i)}o(d2e,"declaration");function yC(t,e){for(var r="",n=0;n{v2e.forEach(t=>{t()}),v2e=[]},"attachFunctions");vt();var b2e=o(t=>t.replace(/^\s*%%(?!{)[^\n]+\n?/gm,"").trimStart(),"cleanupComments");$4();Ew();function w2e(t){let e=t.match(F4);if(!e)return{text:t,metadata:{}};let r=cm(e[1],{schema:lm})??{};r=typeof r=="object"&&!Array.isArray(r)?r:{};let n={};return r.displayMode&&(n.displayMode=r.displayMode.toString()),r.title&&(n.title=r.title.toString()),r.config&&(n.config=r.config),{text:t.slice(e[0].length),metadata:n}}o(w2e,"extractFrontMatter");ir();var zrt=o(t=>t.replace(/\r\n?/g,` +`).replace(/<(\w+)([^>]*)>/g,(e,r,n)=>"<"+r+n.replace(/="([^"]*)"/g,"='$1'")+">"),"cleanupText"),Grt=o(t=>{let{text:e,metadata:r}=w2e(t),{displayMode:n,title:i,config:a={}}=r;return n&&(a.gantt||(a.gantt={}),a.gantt.displayMode=n),{title:i,config:a,text:e}},"processFrontmatter"),Vrt=o(t=>{let e=Gt.detectInit(t)??{},r=Gt.detectDirective(t,"wrap");return Array.isArray(r)?e.wrap=r.some(({type:n})=>n==="wrap"):r?.type==="wrap"&&(e.wrap=!0),{text:IX(t),directive:e}},"processDirectives");function bF(t){let e=zrt(t),r=Grt(e),n=Vrt(r.text),i=Fi(r.config,n.directive);return t=b2e(n.text),{code:t,title:r.title,config:i}}o(bF,"preprocessDiagram");tA();q4();ir();function T2e(t){let e=new TextEncoder().encode(t),r=Array.from(e,n=>String.fromCodePoint(n)).join("");return btoa(r)}o(T2e,"toBase64");var Urt=5e4,Hrt="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",Wrt="sandbox",qrt="loose",Yrt="http://www.w3.org/2000/svg",Xrt="http://www.w3.org/1999/xlink",jrt="http://www.w3.org/1999/xhtml",Krt="100%",Qrt="100%",Zrt="border:0;margin:0;",Jrt="margin:0",ent="allow-top-navigation-by-user-activation allow-popups",tnt='The "iframe" tag is not supported by your browser.',rnt=["foreignobject"],nnt=["dominant-baseline"];function C2e(t){let e=bF(t);return Ly(),W$(e.config??{}),e}o(C2e,"processAndSetConfigs");async function int(t,e){py();try{let{code:r,config:n}=C2e(t);return{diagramType:(await A2e(r)).type,config:n}}catch(r){if(e?.suppressErrors)return!1;throw r}}o(int,"parse");var k2e=o((t,e,r=[])=>` +.${t} ${e} { ${r.join(" !important; ")} !important; }`,"cssImportantStyles"),ant=o((t,e=new Map)=>{let r="";if(t.themeCSS!==void 0&&(r+=` +${t.themeCSS}`),t.fontFamily!==void 0&&(r+=` +:root { --mermaid-font-family: ${t.fontFamily}}`),t.altFontFamily!==void 0&&(r+=` +:root { --mermaid-alt-font-family: ${t.altFontFamily}}`),e instanceof Map){let s=t.htmlLabels??t.flowchart?.htmlLabels?["> *","span"]:["rect","polygon","ellipse","circle","path"];e.forEach(l=>{ur(l.styles)||s.forEach(u=>{r+=k2e(l.id,u,l.styles)}),ur(l.textStyles)||(r+=k2e(l.id,"tspan",(l?.textStyles||[]).map(u=>u.replace("color","fill"))))})}return r},"createCssStyles"),snt=o((t,e,r,n)=>{let i=ant(t,r),a=zG(e,i,t.themeVariables);return yC(p2e(`${n}{${a}}`),m2e)},"createUserStyles"),ont=o((t="",e,r)=>{let n=t;return!r&&!e&&(n=n.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,'marker-end="url(#')),n=na(n),n=n.replace(/
    /g,"
    "),n},"cleanUpSvgCode"),lnt=o((t="",e)=>{let r=e?.viewBox?.baseVal?.height?e.viewBox.baseVal.height+"px":Qrt,n=T2e(`${t}`);return``},"putIntoIFrame"),E2e=o((t,e,r,n,i)=>{let a=t.append("div");a.attr("id",r),n&&a.attr("style",n);let s=a.append("svg").attr("id",e).attr("width","100%").attr("xmlns",Yrt);return i&&s.attr("xmlns:xlink",i),s.append("g"),t},"appendDivSvgG");function S2e(t,e){return t.append("iframe").attr("id",e).attr("style","width: 100%; height: 100%;").attr("sandbox","")}o(S2e,"sandboxedIframe");var cnt=o((t,e,r,n)=>{t.getElementById(e)?.remove(),t.getElementById(r)?.remove(),t.getElementById(n)?.remove()},"removeExistingElements"),unt=o(async function(t,e,r){py();let n=C2e(e);e=n.code;let i=cr();Y.debug(i),e.length>(i?.maxTextSize??Urt)&&(e=Hrt);let a="#"+t,s="i"+t,l="#"+s,u="d"+t,h="#"+u,f=o(()=>{let L=Ge(p?l:h).node();L&&"remove"in L&&L.remove()},"removeTempElements"),d=Ge("body"),p=i.securityLevel===Wrt,m=i.securityLevel===qrt,g=i.fontFamily;if(r!==void 0){if(r&&(r.innerHTML=""),p){let k=S2e(Ge(r),s);d=Ge(k.nodes()[0].contentDocument.body),d.node().style.margin=0}else d=Ge(r);E2e(d,t,u,`font-family: ${g}`,Xrt)}else{if(cnt(document,t,u,s),p){let k=S2e(Ge("body"),s);d=Ge(k.nodes()[0].contentDocument.body),d.node().style.margin=0}else d=Ge("body");E2e(d,t,u)}let y,v;try{y=await xy.fromText(e,{title:n.title})}catch(k){if(i.suppressErrorRendering)throw f(),k;y=await xy.fromText("error"),v=k}let x=d.select(h).node(),b=y.type,w=x.firstChild,C=w.firstChild,T=y.renderer.getClasses?.(e,y),E=snt(i,b,T,a),A=document.createElement("style");A.innerHTML=E,w.insertBefore(A,C);try{await y.renderer.draw(e,t,vb.version,y)}catch(k){throw i.suppressErrorRendering?f():Yde.draw(e,t,vb.version),k}let S=d.select(`${h} svg`),_=y.db.getAccTitle?.(),I=y.db.getAccDescription?.();fnt(b,S,_,I),d.select(`[id="${t}"]`).selectAll("foreignobject > *").attr("xmlns",jrt);let D=d.select(h).node().innerHTML;if(Y.debug("config.arrowMarkerAbsolute",i.arrowMarkerAbsolute),D=ont(D,p,fr(i.arrowMarkerAbsolute)),p){let k=d.select(h+" svg").node();D=lnt(D,k)}else m||(D=ch.sanitize(D,{ADD_TAGS:rnt,ADD_ATTR:nnt,HTML_INTEGRATION_POINTS:{foreignobject:!0}}));if(x2e(),v)throw v;return f(),{diagramType:b,svg:D,bindFunctions:y.db.bindFunctions}},"render");function hnt(t={}){let e=Gn({},t);e?.fontFamily&&!e.themeVariables?.fontFamily&&(e.themeVariables||(e.themeVariables={}),e.themeVariables.fontFamily=e.fontFamily),V$(e),e?.theme&&e.theme in To?e.themeVariables=To[e.theme].getThemeVariables(e.themeVariables):e&&(e.themeVariables=To.default.getThemeVariables(e.themeVariables));let r=typeof e=="object"?t7(e):r7();wy(r.logLevel),py()}o(hnt,"initialize");var A2e=o((t,e={})=>{let{code:r}=bF(t);return xy.fromText(r,e)},"getDiagramFromText");function fnt(t,e,r,n){g2e(e,t),y2e(e,r,n,e.attr("id"))}o(fnt,"addA11yInfo");var Gf=Object.freeze({render:unt,parse:int,getDiagramFromText:A2e,initialize:hnt,getConfig:cr,setConfig:X4,getSiteConfig:r7,updateSiteConfig:U$,reset:o(()=>{Ly()},"reset"),globalReset:o(()=>{Ly(lh)},"globalReset"),defaultConfig:lh});wy(cr().logLevel);Ly(cr());Yd();ir();var dnt=o((t,e,r)=>{Y.warn(t),Z9(t)?(r&&r(t.str,t.hash),e.push({...t,message:t.str,error:t})):(r&&r(t),t instanceof Error&&e.push({str:t.message,message:t.message,hash:t.name,error:t}))},"handleError"),_2e=o(async function(t={querySelector:".mermaid"}){try{await pnt(t)}catch(e){if(Z9(e)&&Y.error(e.str),nh.parseError&&nh.parseError(e),!t.suppressErrors)throw Y.error("Use the suppressErrors option to suppress these errors"),e}},"run"),pnt=o(async function({postRenderCallback:t,querySelector:e,nodes:r}={querySelector:".mermaid"}){let n=Gf.getConfig();Y.debug(`${t?"":"No "}Callback function found`);let i;if(r)i=r;else if(e)i=document.querySelectorAll(e);else throw new Error("Nodes and querySelector are both undefined");Y.debug(`Found ${i.length} diagrams`),n?.startOnLoad!==void 0&&(Y.debug("Start On Load: "+n?.startOnLoad),Gf.updateSiteConfig({startOnLoad:n?.startOnLoad}));let a=new Gt.InitIDGenerator(n.deterministicIds,n.deterministicIDSeed),s,l=[];for(let u of Array.from(i)){Y.info("Rendering diagram: "+u.id);if(u.getAttribute("data-processed"))continue;u.setAttribute("data-processed","true");let h=`mermaid-${a.next()}`;s=u.innerHTML,s=B4(Gt.entityDecode(s)).trim().replace(//gi,"
    ");let f=Gt.detectInit(s);f&&Y.debug("Detected early reinit: ",f);try{let{svg:d,bindFunctions:p}=await N2e(h,s,u);u.innerHTML=d,t&&await t(h),p&&p(u)}catch(d){dnt(d,l,nh.parseError)}}if(l.length>0)throw l[0]},"runThrowsErrors"),D2e=o(function(t){Gf.initialize(t)},"initialize"),mnt=o(async function(t,e,r){Y.warn("mermaid.init is deprecated. Please use run instead."),t&&D2e(t);let n={postRenderCallback:r,querySelector:".mermaid"};typeof e=="string"?n.querySelector=e:e&&(e instanceof HTMLElement?n.nodes=[e]:n.nodes=e),await _2e(n)},"init"),gnt=o(async(t,{lazyLoad:e=!0}={})=>{py(),z4(...t),e===!1&&await Kve()},"registerExternalDiagrams"),L2e=o(function(){if(nh.startOnLoad){let{startOnLoad:t}=Gf.getConfig();t&&nh.run().catch(e=>Y.error("Mermaid failed to initialize",e))}},"contentLoaded");if(typeof document<"u"){window.addEventListener("load",L2e,!1)}var ynt=o(function(t){nh.parseError=t},"setParseErrorHandler"),vC=[],wF=!1,R2e=o(async()=>{if(!wF){for(wF=!0;vC.length>0;){let t=vC.shift();if(t)try{await t()}catch(e){Y.error("Error executing queue",e)}}wF=!1}},"executeQueue"),vnt=o(async(t,e)=>new Promise((r,n)=>{let i=o(()=>new Promise((a,s)=>{Gf.parse(t,e).then(l=>{a(l),r(l)},l=>{Y.error("Error parsing",l),nh.parseError?.(l),s(l),n(l)})}),"performCall");vC.push(i),R2e().catch(n)}),"parse"),N2e=o((t,e,r)=>new Promise((n,i)=>{let a=o(()=>new Promise((s,l)=>{Gf.render(t,e,r).then(u=>{s(u),n(u)},u=>{Y.error("Error parsing",u),nh.parseError?.(u),l(u),i(u)})}),"performCall");vC.push(a),R2e().catch(i)}),"render"),nh={startOnLoad:!0,mermaidAPI:Gf,parse:vnt,render:N2e,init:mnt,run:_2e,registerExternalDiagrams:gnt,registerLayoutLoaders:vR,initialize:D2e,parseError:void 0,contentLoaded:L2e,setParseErrorHandler:ynt,detectType:a0,registerIconPacks:P4},xnt=nh;return V2e(bnt);})(); +/*! Check if previously processed */ +/*! + * Wait for document loaded before starting the execution + */ +/*! Bundled license information: + +dompurify/dist/purify.es.mjs: + (*! @license DOMPurify 3.2.4 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.2.4/LICENSE *) + +js-yaml/dist/js-yaml.mjs: + (*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT *) + +lodash-es/lodash.js: + (** + * @license + * Lodash (Custom Build) + * Build: `lodash modularize exports="es" -o ./` + * Copyright OpenJS Foundation and other contributors + * Released under MIT license + * Based on Underscore.js 1.8.3 + * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors + *) + +cytoscape/dist/cytoscape.esm.mjs: + (*! + Embeddable Minimum Strictly-Compliant Promises/A+ 1.1.1 Thenable + Copyright (c) 2013-2014 Ralf S. Engelschall (http://engelschall.com) + Licensed under The MIT License (http://opensource.org/licenses/MIT) + *) + (*! + Event object based on jQuery events, MIT license + + https://jquery.org/license/ + https://tldrlegal.com/license/mit-license + https://github.com/jquery/jquery/blob/master/src/event.js + *) + (*! Bezier curve function generator. Copyright Gaetan Renaudeau. MIT License: http://en.wikipedia.org/wiki/MIT_License *) + (*! Runge-Kutta spring physics function generator. Adapted from Framer.js, copyright Koen Bok. MIT License: http://en.wikipedia.org/wiki/MIT_License *) +*/ +globalThis.mermaid = globalThis.__esbuild_esm_mermaid.default; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/plantuml/plantuml-encoder.min.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/plantuml/plantuml-encoder.min.js new file mode 100644 index 0000000..243f2ad --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/plantuml/plantuml-encoder.min.js @@ -0,0 +1 @@ +!function(t){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var e;e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,e.plantumlEncoder=t()}}(function(){return function t(e,a,n){function r(s,h){if(!a[s]){if(!e[s]){var o="function"==typeof require&&require;if(!h&&o)return o(s,!0);if(i)return i(s,!0);var l=new Error("Cannot find module '"+s+"'");throw l.code="MODULE_NOT_FOUND",l}var _=a[s]={exports:{}};e[s][0].call(_.exports,function(t){var a=e[s][1][t];return r(a?a:t)},_,_.exports,t,e,a,n)}return a[s].exports}for(var i="function"==typeof require&&require,s=0;s>2,i=(3&t)<<4|e>>4,s=(15&e)<<2|a>>6,h=63&a,o="";return o+=n(63&r),o+=n(63&i),o+=n(63&s),o+=n(63&h)}e.exports.encode=function(t){for(var e="",a=0;a0?e.windowBits=-e.windowBits:e.gzip&&e.windowBits>0&&e.windowBits<16&&(e.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new d,this.strm.avail_out=0;var a=h.deflateInit2(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(a!==p)throw new Error(_[a]);if(e.header&&h.deflateSetHeader(this.strm,e.header),e.dictionary){var r;if(r="string"==typeof e.dictionary?l.string2buf(e.dictionary):"[object ArrayBuffer]"===u.call(e.dictionary)?new Uint8Array(e.dictionary):e.dictionary,a=h.deflateSetDictionary(this.strm,r),a!==p)throw new Error(_[a]);this._dict_set=!0}}function r(t,e){var a=new n(e);if(a.push(t,!0),a.err)throw a.msg;return a.result}function i(t,e){return e=e||{},e.raw=!0,r(t,e)}function s(t,e){return e=e||{},e.gzip=!0,r(t,e)}var h=t("./zlib/deflate"),o=t("./utils/common"),l=t("./utils/strings"),_=t("./zlib/messages"),d=t("./zlib/zstream"),u=Object.prototype.toString,f=0,c=4,p=0,g=1,m=2,b=-1,v=0,w=8;n.prototype.push=function(t,e){var a,n,r=this.strm,i=this.options.chunkSize;if(this.ended)return!1;n=e===~~e?e:e===!0?c:f,"string"==typeof t?r.input=l.string2buf(t):"[object ArrayBuffer]"===u.call(t)?r.input=new Uint8Array(t):r.input=t,r.next_in=0,r.avail_in=r.input.length;do{if(0===r.avail_out&&(r.output=new o.Buf8(i),r.next_out=0,r.avail_out=i),a=h.deflate(r,n),a!==g&&a!==p)return this.onEnd(a),this.ended=!0,!1;0!==r.avail_out&&(0!==r.avail_in||n!==c&&n!==m)||("string"===this.options.to?this.onData(l.buf2binstring(o.shrinkBuf(r.output,r.next_out))):this.onData(o.shrinkBuf(r.output,r.next_out)))}while((r.avail_in>0||0===r.avail_out)&&a!==g);return n===c?(a=h.deflateEnd(this.strm),this.onEnd(a),this.ended=!0,a===p):n!==m||(this.onEnd(p),r.avail_out=0,!0)},n.prototype.onData=function(t){this.chunks.push(t)},n.prototype.onEnd=function(t){t===p&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=o.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg},a.Deflate=n,a.deflate=r,a.deflateRaw=i,a.gzip=s},{"./utils/common":5,"./utils/strings":6,"./zlib/deflate":9,"./zlib/messages":10,"./zlib/zstream":12}],5:[function(t,e,a){"use strict";var n="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;a.assign=function(t){for(var e=Array.prototype.slice.call(arguments,1);e.length;){var a=e.shift();if(a){if("object"!=typeof a)throw new TypeError(a+"must be non-object");for(var n in a)a.hasOwnProperty(n)&&(t[n]=a[n])}}return t},a.shrinkBuf=function(t,e){return t.length===e?t:t.subarray?t.subarray(0,e):(t.length=e,t)};var r={arraySet:function(t,e,a,n,r){if(e.subarray&&t.subarray)return void t.set(e.subarray(a,a+n),r);for(var i=0;i=252?6:o>=248?5:o>=240?4:o>=224?3:o>=192?2:1;h[254]=h[254]=1,a.string2buf=function(t){var e,a,n,i,s,h=t.length,o=0;for(i=0;i>>6,e[s++]=128|63&a):a<65536?(e[s++]=224|a>>>12,e[s++]=128|a>>>6&63,e[s++]=128|63&a):(e[s++]=240|a>>>18,e[s++]=128|a>>>12&63,e[s++]=128|a>>>6&63,e[s++]=128|63&a);return e},a.buf2binstring=function(t){return n(t,t.length)},a.binstring2buf=function(t){for(var e=new r.Buf8(t.length),a=0,n=e.length;a4)l[r++]=65533,a+=s-1;else{for(i&=2===s?31:3===s?15:7;s>1&&a1?l[r++]=65533:i<65536?l[r++]=i:(i-=65536,l[r++]=55296|i>>10&1023,l[r++]=56320|1023&i)}return n(l,r)},a.utf8border=function(t,e){var a;for(e=e||t.length,e>t.length&&(e=t.length),a=e-1;a>=0&&128===(192&t[a]);)a--;return a<0?e:0===a?e:a+h[t[a]]>e?a:e}},{"./common":5}],7:[function(t,e,a){"use strict";function n(t,e,a,n){for(var r=65535&t|0,i=t>>>16&65535|0,s=0;0!==a;){s=a>2e3?2e3:a,a-=s;do r=r+e[n++]|0,i=i+r|0;while(--s);r%=65521,i%=65521}return r|i<<16|0}e.exports=n},{}],8:[function(t,e,a){"use strict";function n(){for(var t,e=[],a=0;a<256;a++){t=a;for(var n=0;n<8;n++)t=1&t?3988292384^t>>>1:t>>>1;e[a]=t}return e}function r(t,e,a,n){var r=i,s=n+a;t^=-1;for(var h=n;h>>8^r[255&(t^e[h])];return t^-1}var i=n();e.exports=r},{}],9:[function(t,e,a){"use strict";function n(t,e){return t.msg=I[e],e}function r(t){return(t<<1)-(t>4?9:0)}function i(t){for(var e=t.length;--e>=0;)t[e]=0}function s(t){var e=t.state,a=e.pending;a>t.avail_out&&(a=t.avail_out),0!==a&&(j.arraySet(t.output,e.pending_buf,e.pending_out,a,t.next_out),t.next_out+=a,e.pending_out+=a,t.total_out+=a,t.avail_out-=a,e.pending-=a,0===e.pending&&(e.pending_out=0))}function h(t,e){U._tr_flush_block(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,s(t.strm)}function o(t,e){t.pending_buf[t.pending++]=e}function l(t,e){t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=255&e}function _(t,e,a,n){var r=t.avail_in;return r>n&&(r=n),0===r?0:(t.avail_in-=r,j.arraySet(e,t.input,t.next_in,r,a),1===t.state.wrap?t.adler=D(t.adler,e,r,a):2===t.state.wrap&&(t.adler=M(t.adler,e,r,a)),t.next_in+=r,t.total_in+=r,r)}function d(t,e){var a,n,r=t.max_chain_length,i=t.strstart,s=t.prev_length,h=t.nice_match,o=t.strstart>t.w_size-dt?t.strstart-(t.w_size-dt):0,l=t.window,_=t.w_mask,d=t.prev,u=t.strstart+_t,f=l[i+s-1],c=l[i+s];t.prev_length>=t.good_match&&(r>>=2),h>t.lookahead&&(h=t.lookahead);do if(a=e,l[a+s]===c&&l[a+s-1]===f&&l[a]===l[i]&&l[++a]===l[i+1]){i+=2,a++;do;while(l[++i]===l[++a]&&l[++i]===l[++a]&&l[++i]===l[++a]&&l[++i]===l[++a]&&l[++i]===l[++a]&&l[++i]===l[++a]&&l[++i]===l[++a]&&l[++i]===l[++a]&&is){if(t.match_start=e,s=n,n>=h)break;f=l[i+s-1],c=l[i+s]}}while((e=d[e&_])>o&&0!==--r);return s<=t.lookahead?s:t.lookahead}function u(t){var e,a,n,r,i,s=t.w_size;do{if(r=t.window_size-t.lookahead-t.strstart,t.strstart>=s+(s-dt)){j.arraySet(t.window,t.window,s,s,0),t.match_start-=s,t.strstart-=s,t.block_start-=s,a=t.hash_size,e=a;do n=t.head[--e],t.head[e]=n>=s?n-s:0;while(--a);a=s,e=a;do n=t.prev[--e],t.prev[e]=n>=s?n-s:0;while(--a);r+=s}if(0===t.strm.avail_in)break;if(a=_(t.strm,t.window,t.strstart+t.lookahead,r),t.lookahead+=a,t.lookahead+t.insert>=lt)for(i=t.strstart-t.insert,t.ins_h=t.window[i],t.ins_h=(t.ins_h<t.pending_buf_size-5&&(a=t.pending_buf_size-5);;){if(t.lookahead<=1){if(u(t),0===t.lookahead&&e===O)return wt;if(0===t.lookahead)break}t.strstart+=t.lookahead,t.lookahead=0;var n=t.block_start+a;if((0===t.strstart||t.strstart>=n)&&(t.lookahead=t.strstart-n,t.strstart=n,h(t,!1),0===t.strm.avail_out))return wt;if(t.strstart-t.block_start>=t.w_size-dt&&(h(t,!1),0===t.strm.avail_out))return wt}return t.insert=0,e===L?(h(t,!0),0===t.strm.avail_out?kt:zt):t.strstart>t.block_start&&(h(t,!1),0===t.strm.avail_out)?wt:wt}function c(t,e){for(var a,n;;){if(t.lookahead=lt&&(t.ins_h=(t.ins_h<=lt)if(n=U._tr_tally(t,t.strstart-t.match_start,t.match_length-lt),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=lt){t.match_length--;do t.strstart++,t.ins_h=(t.ins_h<=lt&&(t.ins_h=(t.ins_h<4096)&&(t.match_length=lt-1)),t.prev_length>=lt&&t.match_length<=t.prev_length){r=t.strstart+t.lookahead-lt,n=U._tr_tally(t,t.strstart-1-t.prev_match,t.prev_length-lt),t.lookahead-=t.prev_length-1,t.prev_length-=2;do++t.strstart<=r&&(t.ins_h=(t.ins_h<=lt&&t.strstart>0&&(r=t.strstart-1,n=s[r],n===s[++r]&&n===s[++r]&&n===s[++r])){i=t.strstart+_t;do;while(n===s[++r]&&n===s[++r]&&n===s[++r]&&n===s[++r]&&n===s[++r]&&n===s[++r]&&n===s[++r]&&n===s[++r]&&rt.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=lt?(a=U._tr_tally(t,1,t.match_length-lt),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(a=U._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),a&&(h(t,!1),0===t.strm.avail_out))return wt}return t.insert=0,e===L?(h(t,!0),0===t.strm.avail_out?kt:zt):t.last_lit&&(h(t,!1),0===t.strm.avail_out)?wt:yt}function m(t,e){for(var a;;){if(0===t.lookahead&&(u(t),0===t.lookahead)){if(e===O)return wt;break}if(t.match_length=0,a=U._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,a&&(h(t,!1),0===t.strm.avail_out))return wt}return t.insert=0,e===L?(h(t,!0),0===t.strm.avail_out?kt:zt):t.last_lit&&(h(t,!1),0===t.strm.avail_out)?wt:yt}function b(t,e,a,n,r){this.good_length=t,this.max_lazy=e,this.nice_length=a,this.max_chain=n,this.func=r}function v(t){t.window_size=2*t.w_size,i(t.head),t.max_lazy_match=E[t.level].max_lazy,t.good_match=E[t.level].good_length,t.nice_match=E[t.level].nice_length,t.max_chain_length=E[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=lt-1,t.match_available=0,t.ins_h=0}function w(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=Z,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new j.Buf16(2*ht),this.dyn_dtree=new j.Buf16(2*(2*it+1)),this.bl_tree=new j.Buf16(2*(2*st+1)),i(this.dyn_ltree),i(this.dyn_dtree),i(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new j.Buf16(ot+1),this.heap=new j.Buf16(2*rt+1),i(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new j.Buf16(2*rt+1),i(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function y(t){var e;return t&&t.state?(t.total_in=t.total_out=0,t.data_type=Y,e=t.state,e.pending=0,e.pending_out=0,e.wrap<0&&(e.wrap=-e.wrap),e.status=e.wrap?ft:bt,t.adler=2===e.wrap?0:1,e.last_flush=O,U._tr_init(e),R):n(t,F)}function k(t){var e=y(t);return e===R&&v(t.state),e}function z(t,e){return t&&t.state?2!==t.state.wrap?F:(t.state.gzhead=e,R):F}function x(t,e,a,r,i,s){if(!t)return F;var h=1;if(e===G&&(e=6),r<0?(h=0,r=-r):r>15&&(h=2,r-=16),i<1||i>$||a!==Z||r<8||r>15||e<0||e>9||s<0||s>W)return n(t,F);8===r&&(r=9);var o=new w;return t.state=o,o.strm=t,o.wrap=h,o.gzhead=null,o.w_bits=r,o.w_size=1<N||e<0)return t?n(t,F):F;if(h=t.state,!t.output||!t.input&&0!==t.avail_in||h.status===vt&&e!==L)return n(t,0===t.avail_out?P:F);if(h.strm=t,a=h.last_flush,h.last_flush=e,h.status===ft)if(2===h.wrap)t.adler=0,o(h,31),o(h,139),o(h,8),h.gzhead?(o(h,(h.gzhead.text?1:0)+(h.gzhead.hcrc?2:0)+(h.gzhead.extra?4:0)+(h.gzhead.name?8:0)+(h.gzhead.comment?16:0)),o(h,255&h.gzhead.time),o(h,h.gzhead.time>>8&255),o(h,h.gzhead.time>>16&255),o(h,h.gzhead.time>>24&255),o(h,9===h.level?2:h.strategy>=Q||h.level<2?4:0),o(h,255&h.gzhead.os),h.gzhead.extra&&h.gzhead.extra.length&&(o(h,255&h.gzhead.extra.length),o(h,h.gzhead.extra.length>>8&255)),h.gzhead.hcrc&&(t.adler=M(t.adler,h.pending_buf,h.pending,0)),h.gzindex=0,h.status=ct):(o(h,0),o(h,0),o(h,0),o(h,0),o(h,0),o(h,9===h.level?2:h.strategy>=Q||h.level<2?4:0),o(h,xt),h.status=bt);else{var u=Z+(h.w_bits-8<<4)<<8,f=-1;f=h.strategy>=Q||h.level<2?0:h.level<6?1:6===h.level?2:3,u|=f<<6,0!==h.strstart&&(u|=ut),u+=31-u%31,h.status=bt,l(h,u),0!==h.strstart&&(l(h,t.adler>>>16),l(h,65535&t.adler)),t.adler=1}if(h.status===ct)if(h.gzhead.extra){for(_=h.pending;h.gzindex<(65535&h.gzhead.extra.length)&&(h.pending!==h.pending_buf_size||(h.gzhead.hcrc&&h.pending>_&&(t.adler=M(t.adler,h.pending_buf,h.pending-_,_)),s(t),_=h.pending,h.pending!==h.pending_buf_size));)o(h,255&h.gzhead.extra[h.gzindex]),h.gzindex++;h.gzhead.hcrc&&h.pending>_&&(t.adler=M(t.adler,h.pending_buf,h.pending-_,_)),h.gzindex===h.gzhead.extra.length&&(h.gzindex=0,h.status=pt)}else h.status=pt;if(h.status===pt)if(h.gzhead.name){_=h.pending;do{if(h.pending===h.pending_buf_size&&(h.gzhead.hcrc&&h.pending>_&&(t.adler=M(t.adler,h.pending_buf,h.pending-_,_)),s(t),_=h.pending,h.pending===h.pending_buf_size)){d=1;break}d=h.gzindex_&&(t.adler=M(t.adler,h.pending_buf,h.pending-_,_)),0===d&&(h.gzindex=0,h.status=gt)}else h.status=gt;if(h.status===gt)if(h.gzhead.comment){_=h.pending;do{if(h.pending===h.pending_buf_size&&(h.gzhead.hcrc&&h.pending>_&&(t.adler=M(t.adler,h.pending_buf,h.pending-_,_)),s(t),_=h.pending,h.pending===h.pending_buf_size)){d=1;break}d=h.gzindex_&&(t.adler=M(t.adler,h.pending_buf,h.pending-_,_)),0===d&&(h.status=mt)}else h.status=mt;if(h.status===mt&&(h.gzhead.hcrc?(h.pending+2>h.pending_buf_size&&s(t),h.pending+2<=h.pending_buf_size&&(o(h,255&t.adler),o(h,t.adler>>8&255),t.adler=0,h.status=bt)):h.status=bt),0!==h.pending){if(s(t),0===t.avail_out)return h.last_flush=-1,R}else if(0===t.avail_in&&r(e)<=r(a)&&e!==L)return n(t,P);if(h.status===vt&&0!==t.avail_in)return n(t,P);if(0!==t.avail_in||0!==h.lookahead||e!==O&&h.status!==vt){var c=h.strategy===Q?m(h,e):h.strategy===V?g(h,e):E[h.level].func(h,e);if(c!==kt&&c!==zt||(h.status=vt),c===wt||c===kt)return 0===t.avail_out&&(h.last_flush=-1),R;if(c===yt&&(e===q?U._tr_align(h):e!==N&&(U._tr_stored_block(h,0,0,!1),e===T&&(i(h.head),0===h.lookahead&&(h.strstart=0,h.block_start=0,h.insert=0))),s(t),0===t.avail_out))return h.last_flush=-1,R}return e!==L?R:h.wrap<=0?H:(2===h.wrap?(o(h,255&t.adler),o(h,t.adler>>8&255),o(h,t.adler>>16&255),o(h,t.adler>>24&255),o(h,255&t.total_in),o(h,t.total_in>>8&255),o(h,t.total_in>>16&255),o(h,t.total_in>>24&255)):(l(h,t.adler>>>16),l(h,65535&t.adler)),s(t),h.wrap>0&&(h.wrap=-h.wrap),0!==h.pending?R:H)}function C(t){var e;return t&&t.state?(e=t.state.status,e!==ft&&e!==ct&&e!==pt&&e!==gt&&e!==mt&&e!==bt&&e!==vt?n(t,F):(t.state=null,e===bt?n(t,K):R)):F}function S(t,e){var a,n,r,s,h,o,l,_,d=e.length;if(!t||!t.state)return F;if(a=t.state,s=a.wrap,2===s||1===s&&a.status!==ft||a.lookahead)return F;for(1===s&&(t.adler=D(t.adler,e,d,0)),a.wrap=0,d>=a.w_size&&(0===s&&(i(a.head),a.strstart=0,a.block_start=0,a.insert=0),_=new j.Buf8(a.w_size),j.arraySet(_,e,d-a.w_size,a.w_size,0),e=_,d=a.w_size),h=t.avail_in,o=t.next_in,l=t.input,t.avail_in=d,t.next_in=0,t.input=e,u(a);a.lookahead>=lt;){n=a.strstart,r=a.lookahead-(lt-1);do a.ins_h=(a.ins_h<=0;)t[e]=0}function r(t,e,a,n,r){this.static_tree=t,this.extra_bits=e,this.extra_base=a,this.elems=n,this.max_length=r,this.has_stree=t&&t.length}function i(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e}function s(t){return t<256?ot[t]:ot[256+(t>>>7)]}function h(t,e){t.pending_buf[t.pending++]=255&e,t.pending_buf[t.pending++]=e>>>8&255}function o(t,e,a){t.bi_valid>W-a?(t.bi_buf|=e<>W-t.bi_valid,t.bi_valid+=a-W):(t.bi_buf|=e<>>=1,a<<=1;while(--e>0);return a>>>1}function d(t){16===t.bi_valid?(h(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):t.bi_valid>=8&&(t.pending_buf[t.pending++]=255&t.bi_buf,t.bi_buf>>=8,t.bi_valid-=8)}function u(t,e){var a,n,r,i,s,h,o=e.dyn_tree,l=e.max_code,_=e.stat_desc.static_tree,d=e.stat_desc.has_stree,u=e.stat_desc.extra_bits,f=e.stat_desc.extra_base,c=e.stat_desc.max_length,p=0;for(i=0;i<=V;i++)t.bl_count[i]=0;for(o[2*t.heap[t.heap_max]+1]=0,a=t.heap_max+1;ac&&(i=c,p++),o[2*n+1]=i,n>l||(t.bl_count[i]++,s=0,n>=f&&(s=u[n-f]),h=o[2*n],t.opt_len+=h*(i+s),d&&(t.static_len+=h*(_[2*n+1]+s)));if(0!==p){do{for(i=c-1;0===t.bl_count[i];)i--;t.bl_count[i]--,t.bl_count[i+1]+=2,t.bl_count[c]--,p-=2}while(p>0);for(i=c;0!==i;i--)for(n=t.bl_count[i];0!==n;)r=t.heap[--a],r>l||(o[2*r+1]!==i&&(t.opt_len+=(i-o[2*r+1])*o[2*r],o[2*r+1]=i),n--)}}function f(t,e,a){var n,r,i=new Array(V+1),s=0;for(n=1;n<=V;n++)i[n]=s=s+a[n-1]<<1;for(r=0;r<=e;r++){var h=t[2*r+1];0!==h&&(t[2*r]=_(i[h]++,h))}}function c(){var t,e,a,n,i,s=new Array(V+1);for(a=0,n=0;n>=7;n8?h(t,t.bi_buf):t.bi_valid>0&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0}function m(t,e,a,n){g(t),n&&(h(t,a),h(t,~a)),D.arraySet(t.pending_buf,t.window,e,a,t.pending),t.pending+=a}function b(t,e,a,n){var r=2*e,i=2*a;return t[r]>1;a>=1;a--)v(t,i,a);r=o;do a=t.heap[1],t.heap[1]=t.heap[t.heap_len--],v(t,i,1),n=t.heap[1],t.heap[--t.heap_max]=a,t.heap[--t.heap_max]=n,i[2*r]=i[2*a]+i[2*n],t.depth[r]=(t.depth[a]>=t.depth[n]?t.depth[a]:t.depth[n])+1,i[2*a+1]=i[2*n+1]=r,t.heap[1]=r++,v(t,i,1);while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],u(t,e),f(i,l,t.bl_count)}function k(t,e,a){var n,r,i=-1,s=e[1],h=0,o=7,l=4;for(0===s&&(o=138,l=3),e[2*(a+1)+1]=65535,n=0;n<=a;n++)r=s,s=e[2*(n+1)+1],++h=3&&0===t.bl_tree[2*rt[e]+1];e--);return t.opt_len+=3*(e+1)+5+5+4,e}function A(t,e,a,n){var r;for(o(t,e-257,5),o(t,a-1,5),o(t,n-4,4),r=0;r>>=1)if(1&a&&0!==t.dyn_ltree[2*e])return I;if(0!==t.dyn_ltree[18]||0!==t.dyn_ltree[20]||0!==t.dyn_ltree[26])return O;for(e=32;e0?(t.strm.data_type===q&&(t.strm.data_type=B(t)),y(t,t.l_desc),y(t,t.d_desc),s=x(t),r=t.opt_len+3+7>>>3,i=t.static_len+3+7>>>3,i<=r&&(r=i)):r=i=a+5,a+4<=r&&e!==-1?S(t,e,a,n):t.strategy===M||i===r?(o(t,(L<<1)+(n?1:0),3),w(t,st,ht)):(o(t,(N<<1)+(n?1:0),3),A(t,t.l_desc.max_code+1,t.d_desc.max_code+1,s+1),w(t,t.dyn_ltree,t.dyn_dtree)),p(t),n&&g(t)}function U(t,e,a){return t.pending_buf[t.d_buf+2*t.last_lit]=e>>>8&255,t.pending_buf[t.d_buf+2*t.last_lit+1]=255&e,t.pending_buf[t.l_buf+t.last_lit]=255&a,t.last_lit++,0===e?t.dyn_ltree[2*a]++:(t.matches++,e--,t.dyn_ltree[2*(lt[a]+K+1)]++,t.dyn_dtree[2*s(e)]++),t.last_lit===t.lit_bufsize-1}var D=t("../utils/common"),M=4,I=0,O=1,q=2,T=0,L=1,N=2,R=3,H=258,F=29,K=256,P=K+1+F,G=30,J=19,Q=2*P+1,V=15,W=16,X=7,Y=256,Z=16,$=17,tt=18,et=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],at=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],nt=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],rt=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],it=512,st=new Array(2*(P+2));n(st);var ht=new Array(2*G);n(ht);var ot=new Array(it);n(ot);var lt=new Array(H-R+1);n(lt);var _t=new Array(F);n(_t);var dt=new Array(G);n(dt);var ut,ft,ct,pt=!1;a._tr_init=C,a._tr_stored_block=S,a._tr_flush_block=j,a._tr_tally=U,a._tr_align=E},{"../utils/common":5}],12:[function(t,e,a){"use strict";function n(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}e.exports=n},{}],13:[function(t,e,a){e.exports=function(t){for(var e=[],a=0;a=55296&&n<=56319&&a+1=56320&&r<=57343){var i=1024*(n-55296)+r-56320+65536;e.push(240+Math.floor(i/64/64/64),128+Math.floor(i/64/64)%64,128+Math.floor(i/64)%64,128+i%64),a+=1;continue}}n>=2048?e.push(224+Math.floor(n/64/64),128+Math.floor(n/64)%64,128+n%64):n>=128?e.push(192+Math.floor(n/64),128+n%64):e.push(n)}return e}},{}]},{},[1])(1)}); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/js/smiles-drawer/smiles-drawer.min.js b/src/main/resources/static/articles/vditor@3.11.1/dist/js/smiles-drawer/smiles-drawer.min.js new file mode 100644 index 0000000..a3635c1 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/js/smiles-drawer/smiles-drawer.min.js @@ -0,0 +1,71 @@ +(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i>>0,start=arguments[1],relativeStart=start>>0,k=0>relativeStart?_Mathmax(len+relativeStart,0):_Mathmin(relativeStart,len),end=arguments[2],relativeEnd=void 0===end?len:end>>0,final=0>relativeEnd?_Mathmax(len+relativeEnd,0):_Mathmin(relativeEnd,len);kabs?c/12.92:(sign$1(c)||1)*pow$8((abs+.055)/1.055,2.4)}function lrgb2rgb(c){var abs=_Mathabs(c);return .0031308end;ascending?i++:i--)range.push(i);return range}for(var limit$2=function(x,min,max){return void 0===min&&(min=0),void 0===max&&(max=1),xmax?max:x},limit$1=limit$2,clip_rgb$3=function(rgb){rgb._clipped=!1,rgb._unclipped=rgb.slice(0);for(var i=0;3>=i;i++)3>i?((0>rgb[i]||255args.length)return null;var l=args.length-1;return"string"==type$p(args[l])?args[l].toLowerCase():null},PI:PI$2,TWOPI:2*PI$2,PITHIRD:PI$2/3,DEG2RAD:PI$2/180,RAD2DEG:180/PI$2},input$h={format:{},autodetect:[]},last$3=utils.last,clip_rgb$2=utils.clip_rgb,type$m=utils.type,_input=input$h,Color$D=function(){for(var args=[],len=arguments.length;len--;)args[len]=arguments[len];var me=this;if("object"===type$m(args[0])&&args[0].constructor&&args[0].constructor===this.constructor)return args[0];var mode=last$3(args),autodetect=!1;if(!mode){autodetect=!0,_input.sorted||(_input.autodetect=_input.autodetect.sort(function(a,b){return b.p-a.p}),_input.sorted=!0);for(var i=0,list=_input.autodetect,chk;ik?1/(1-k):0,c=(1-r-k)*f,m=(1-g-k)*f,y=(1-b-k)*f;return[c,m,y,k]};Color$C.prototype.cmyk=function(){return rgb2cmyk(this._rgb)},chroma_1.cmyk=function(){for(var args=[],len=arguments.length;len--;)args[len]=arguments[len];return new(Function.prototype.bind.apply(Color$C,[null].concat(args,["cmyk"])))},input$g.format.cmyk=function(){for(var args=[],len=arguments.length;len--;)args[len]=arguments[len];args=unpack$z(args,"cmyk");var c=args[0],m=args[1],y=args[2],k=args[3],alpha=4l?(max-min)/(max+min):(max-min)/(2-max-min),r==max?h=(g-b)/(max-min):g==max?h=2+(b-r)/(max-min):b==max&&(h=4+(r-g)/(max-min)),h*=60,0>h&&(h+=360),3hsla[3]?(hsla[3]=3l?l*(1+s):l+s-l*s,t1=2*l-t2,h_=h/360;t3[0]=h_+1/3,t3[1]=h_,t3[2]=h_-1/3;for(var i=0;3>i;i++)0>t3[i]&&(t3[i]+=1),16*t3[i]?t1+6*(t2-t1)*t3[i]:1>2*t3[i]?t2:2>3*t3[i]?t1+6*((t2-t1)*(2/3-t3[i])):t1;assign=[round$5(255*c[0]),round$5(255*c[1]),round$5(255*c[2])],r=assign[0],g=assign[1],b=assign[2]}return 3i;i++)rgb[i]=+rgb[i];return rgb[3]=1,rgb}if(m=css.match(RE_RGBA)){for(var rgb$1=m.slice(1,5),i$1=0;4>i$1;i$1++)rgb$1[i$1]=+rgb$1[i$1];return rgb$1}if(m=css.match(RE_RGB_PCT)){for(var rgb$2=m.slice(1,4),i$2=0;3>i$2;i$2++)rgb$2[i$2]=round$4(2.55*rgb$2[i$2]);return rgb$2[3]=1,rgb$2}if(m=css.match(RE_RGBA_PCT)){for(var rgb$3=m.slice(1,5),i$3=0;3>i$3;i$3++)rgb$3[i$3]=round$4(2.55*rgb$3[i$3]);return rgb$3[3]=+rgb$3[3],rgb$3}if(m=css.match(RE_HSL)){var hsl=m.slice(1,4);hsl[1]*=.01,hsl[2]*=.01;var rgb$4=hsl2rgb(hsl);return rgb$4[3]=1,rgb$4}if(m=css.match(RE_HSLA)){var hsl$1=m.slice(1,4);hsl$1[1]*=.01,hsl$1[2]*=.01;var rgb$5=hsl2rgb(hsl$1);return rgb$5[3]=+m[4],rgb$5}};css2rgb$1.test=function(s){return RE_RGB.test(s)||RE_RGBA.test(s)||RE_RGB_PCT.test(s)||RE_RGBA_PCT.test(s)||RE_HSL.test(s)||RE_HSLA.test(s)};var Color$B=Color_1,input$e=input$h,type$k=utils.type,rgb2css=function(){for(var args=[],len=arguments.length;len--;)args[len]=arguments[len];var rgba=unpack$v(args,"rgba"),mode=last$1(args)||"rgb";return"hsl"==mode.substr(0,3)?hsl2css(rgb2hsl_1(rgba),mode):(rgba[0]=round$6(rgba[0]),rgba[1]=round$6(rgba[1]),rgba[2]=round$6(rgba[2]),("rgba"===mode||3rgba[3])&&(rgba[3]=3h&&(h+=360),h/=60;var i=_Mathfloor(h),f=h-i,p=_g*(1-c),q=p+_c*(1-f),t=p+_c*f,v=p+_c;0===i?(assign=[v,t,p],r=assign[0],g=assign[1],b=assign[2]):1===i?(assign$1=[q,v,p],r=assign$1[0],g=assign$1[1],b=assign$1[2]):2===i?(assign$2=[p,v,t],r=assign$2[0],g=assign$2[1],b=assign$2[2]):3===i?(assign$3=[p,q,v],r=assign$3[0],g=assign$3[1],b=assign$3[2]):4===i?(assign$4=[t,p,v],r=assign$4[0],g=assign$4[1],b=assign$4[2]):5===i?(assign$5=[v,p,q],r=assign$5[0],g=assign$5[1],b=assign$5[2]):void 0}return[r,g,b,3h&&(h+=360)),[h,100*delta/255,100*(min/(255-delta))]};Color$z.prototype.hcg=function(){return rgb2hcg(this._rgb)},chroma_1.hcg=function(){for(var args=[],len=arguments.length;len--;)args[len]=arguments[len];return new(Function.prototype.bind.apply(Color$z,[null].concat(args,["hcg"])))},input$c.format.hcg=hcg2rgb,input$c.autodetect.push({p:1,test:function(){for(var args=[],len=arguments.length;len--;)args[len]=arguments[len];if(args=unpack$q(args,"hcg"),"array"===type$j(args)&&3===args.length)return"hcg"}});var unpack$p=utils.unpack,last=utils.last,round$3=_Mathround,rgb2hex_1=function(){for(var args=[],len=arguments.length;len--;)args[len]=arguments[len];var ref=unpack$p(args,"rgba"),r=ref[0],g=ref[1],b=ref[2],a=ref[3],mode=last(args)||"auto";void 0===a&&(a=1),"auto"===mode&&(mode=1>a?"rgba":"rgb"),r=round$3(r),g=round$3(g),b=round$3(b);var u=r<<16|g<<8|b,str="000000"+u.toString(16);str=str.substr(str.length-6);var hxa="0"+round$3(255*a).toString(16);switch(hxa=hxa.substr(hxa.length-2),mode.toLowerCase()){case"rgba":return"#"+str+hxa;case"argb":return"#"+hxa+str;default:return"#"+str;}},RE_HEX=/^#?([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/,RE_HEXA=/^#?([A-Fa-f0-9]{8}|[A-Fa-f0-9]{4})$/,hex2rgb_1=function(hex){if(hex.match(RE_HEX)){(4===hex.length||7===hex.length)&&(hex=hex.substr(1)),3===hex.length&&(hex=hex.split(""),hex=hex[0]+hex[0]+hex[1]+hex[1]+hex[2]+hex[2]);var u=parseInt(hex,16);return[u>>16,255&u>>8,255&u,1]}if(hex.match(RE_HEXA)){(5===hex.length||9===hex.length)&&(hex=hex.substr(1)),4===hex.length&&(hex=hex.split(""),hex=hex[0]+hex[0]+hex[1]+hex[1]+hex[2]+hex[2]+hex[3]+hex[3]);var u$1=parseInt(hex,16),a=_Mathround(100*((255&u$1)/255))/100;return[255&u$1>>24,255&u$1>>16,255&u$1>>8,a]}throw new Error("unknown hex color: "+hex)},Color$y=Color_1,type$i=utils.type,input$b=input$h;Color$y.prototype.hex=function(mode){return rgb2hex_1(this._rgb,mode)},chroma_1.hex=function(){for(var args=[],len=arguments.length;len--;)args[len]=arguments[len];return new(Function.prototype.bind.apply(Color$y,[null].concat(args,["hex"])))},input$b.format.hex=hex2rgb_1,input$b.autodetect.push({p:4,test:function(h){for(var rest=[],len=arguments.length-1;0g&&(h=TWOPI$2-h),h/=TWOPI$2),[360*h,s,i]},unpack$n=utils.unpack,limit=utils.limit,TWOPI$1=utils.TWOPI,PITHIRD=utils.PITHIRD,cos$4=_Mathcos,hsi2rgb=function(){for(var args=[],len=arguments.length;len--;)args[len]=arguments[len];args=unpack$n(args,"hsi");var h=args[0],s=args[1],i=args[2],r,g,b;return isNaN(h)&&(h=0),isNaN(s)&&(s=0),360h&&(h+=360),h/=360,h<1/3?(b=(1-s)/3,r=(1+s*cos$4(TWOPI$1*h)/cos$4(PITHIRD-TWOPI$1*h))/3,g=1-(b+r)):h<2/3?(h-=1/3,r=(1-s)/3,g=(1+s*cos$4(TWOPI$1*h)/cos$4(PITHIRD-TWOPI$1*h))/3,b=1-(r+g)):(h-=2/3,g=(1-s)/3,b=(1+s*cos$4(TWOPI$1*h)/cos$4(PITHIRD-TWOPI$1*h))/3,r=1-(g+b)),r=limit(3*(i*r)),g=limit(3*(i*g)),b=limit(3*(i*b)),[255*r,255*g,255*b,3h&&(h+=360),h/=60;var i=_Mathfloor(h),f=h-i,p=v*(1-s),q=v*(1-s*f),t=v*(1-s*(1-f));0===i?(assign=[v,t,p],r=assign[0],g=assign[1],b=assign[2]):1===i?(assign$1=[q,v,p],r=assign$1[0],g=assign$1[1],b=assign$1[2]):2===i?(assign$2=[p,v,t],r=assign$2[0],g=assign$2[1],b=assign$2[2]):3===i?(assign$3=[p,q,v],r=assign$3[0],g=assign$3[1],b=assign$3[2]):4===i?(assign$4=[t,p,v],r=assign$4[0],g=assign$4[1],b=assign$4[2]):5===i?(assign$5=[v,p,q],r=assign$5[0],g=assign$5[1],b=assign$5[2]):void 0}return[r,g,b,3h&&(h+=360)),[h,s,v]};Color$v.prototype.hsv=function(){return rgb2hsv(this._rgb)},chroma_1.hsv=function(){for(var args=[],len=arguments.length;len--;)args[len]=arguments[len];return new(Function.prototype.bind.apply(Color$v,[null].concat(args,["hsv"])))},input$8.format.hsv=hsv2rgb,input$8.autodetect.push({p:2,test:function(){for(var args=[],len=arguments.length;len--;)args[len]=arguments[len];if(args=unpack$i(args,"hsv"),"array"===type$f(args)&&3===args.length)return"hsv"}});var labConstants={Kn:18,Xn:.95047,Yn:1,Zn:1.08883,t0:.137931034,t1:.206896552,t2:.12841855,t3:.008856452},LAB_CONSTANTS$3=labConstants,unpack$h=utils.unpack,pow$a=_Mathpow,rgb_xyz=function(r){return .04045>=(r/=255)?r/12.92:pow$a((r+.055)/1.055,2.4)},xyz_lab=function(t){return t>LAB_CONSTANTS$3.t3?pow$a(t,1/3):t/LAB_CONSTANTS$3.t2+LAB_CONSTANTS$3.t0},rgb2xyz=function(r,g,b){r=rgb_xyz(r),g=rgb_xyz(g),b=rgb_xyz(b);var x=xyz_lab((.4124564*r+.3575761*g+.1804375*b)/LAB_CONSTANTS$3.Xn),y=xyz_lab((.2126729*r+.7151522*g+.072175*b)/LAB_CONSTANTS$3.Yn),z=xyz_lab((.0193339*r+.119192*g+.9503041*b)/LAB_CONSTANTS$3.Zn);return[x,y,z]},rgb2lab_1=function(){for(var args=[],len=arguments.length;len--;)args[len]=arguments[len];var ref=unpack$h(args,"rgb"),r=ref[0],g=ref[1],b=ref[2],ref$1=rgb2xyz(r,g,b),x=ref$1[0],y=ref$1[1],z=ref$1[2],l=116*y-16;return[0>l?0:l,500*(x-y),200*(y-z)]},LAB_CONSTANTS$2=labConstants,unpack$g=utils.unpack,xyz_rgb=function(r){return 255*(.00304>=r?12.92*r:1.055*_Mathpow(r,1/2.4)-.055)},lab_xyz=function(t){return t>LAB_CONSTANTS$2.t1?t*t*t:LAB_CONSTANTS$2.t2*(t-LAB_CONSTANTS$2.t0)},lab2rgb_1=function(){for(var args=[],len=arguments.length;len--;)args[len]=arguments[len];args=unpack$g(args,"lab");var l=args[0],a=args[1],b=args[2],x,y,z,r,g,b_;return y=(l+16)/116,x=isNaN(a)?y:y+a/500,z=isNaN(b)?y:y-b/200,y=LAB_CONSTANTS$2.Yn*lab_xyz(y),x=LAB_CONSTANTS$2.Xn*lab_xyz(x),z=LAB_CONSTANTS$2.Zn*lab_xyz(z),r=xyz_rgb(3.2404542*x-1.5371385*y-.4985314*z),g=xyz_rgb(-.969266*x+1.8760108*y+.041556*z),b_=xyz_rgb(.0556434*x-.2040259*y+1.0572252*z),[r,g,b_,3=num){return[num>>16,255&num>>8,255&num,1]}throw new Error("unknown num color: "+num)},input$4.autodetect.push({p:5,test:function(){for(var args=[],len=arguments.length;len--;)args[len]=arguments[len];if(1===args.length&&"number"===type$a(args[0])&&0<=args[0]&&16777215>=args[0])return"num"}});var Color$q=Color_1,input$3=input$h,unpack$7=utils.unpack,type$9=utils.type,round$1=_Mathround;Color$q.prototype.rgb=function(rnd){return void 0===rnd&&(rnd=!0),!1===rnd?this._rgb.slice(0,3):this._rgb.slice(0,3).map(round$1)},Color$q.prototype.rgba=function(rnd){return void 0===rnd&&(rnd=!0),this._rgb.slice(0,4).map(function(v,i){return 3>i?!1===rnd?v:round$1(v):v})},chroma_1.rgb=function(){for(var args=[],len=arguments.length;len--;)args[len]=arguments[len];return new(Function.prototype.bind.apply(Color$q,[null].concat(args,["rgb"])))},input$3.format.rgb=function(){for(var args=[],len=arguments.length;len--;)args[len]=arguments[len];var rgba=unpack$7(args,"rgba");return void 0===rgba[3]&&(rgba[3]=1),rgba},input$3.autodetect.push({p:3,test:function(){for(var args=[],len=arguments.length;len--;)args[len]=arguments[len];if(args=unpack$7(args,"rgba"),"array"===type$9(args)&&(3===args.length||4===args.length&&"number"==type$9(args[3])&&0<=args[3]&&1>=args[3]))return"rgb"}});var log$1=_Mathlog,temperature2rgb_1=function(kelvin){var temp=kelvin/100,r,g,b;return 66>temp?(r=255,g=6>temp?0:-155.25485562709179-.44596950469579133*(g=temp-2)+104.49216199393888*log$1(g),b=20>temp?0:-254.76935184120902+.8274096064007395*(b=temp-10)+115.67994401066147*log$1(b)):(r=351.97690566805693+.114206453784165*(r=temp-55)-40.25366309332127*log$1(r),g=325.4494125711974+.07943456536662342*(g=temp-50)-28.0852963507957*log$1(g),b=255),[r,g,b,1]},unpack$6=utils.unpack,chroma$7=chroma_1,Color$p=Color_1,input$2=input$h,rgb2temperature=function(){for(var args=[],len=arguments.length;len--;)args[len]=arguments[len];for(var rgb=unpack$6(args,"rgb"),r=rgb[0],b=rgb[2],minTemp=1e3,maxTemp=4e4,temp;maxTemp-minTemp>.4;){temp=.5*(maxTemp+minTemp);var rgb$1=temperature2rgb_1(temp);rgb$1[2]/rgb$1[0]>=b/r?maxTemp=temp:minTemp=temp}return _Mathround(temp)};Color$p.prototype.temp=Color$p.prototype.kelvin=Color$p.prototype.temperature=function(){return rgb2temperature(this._rgb)},chroma$7.temp=chroma$7.kelvin=chroma$7.temperature=function(){for(var args=[],len=arguments.length;len--;)args[len]=arguments[len];return new(Function.prototype.bind.apply(Color$p,[null].concat(args,["temp"])))},input$2.format.temp=input$2.format.kelvin=input$2.format.temperature=temperature2rgb_1;var unpack$5=utils.unpack,cbrt=Math.cbrt,pow$8=_Mathpow,sign$1=_Mathsign,rgb2oklab_1=function(){for(var args=[],len=arguments.length;len--;)args[len]=arguments[len];var ref=unpack$5(args,"rgb"),r=ref[0],g=ref[1],b=ref[2],ref$1=[rgb2lrgb(r/255),rgb2lrgb(g/255),rgb2lrgb(b/255)],lr=ref$1[0],lg=ref$1[1],lb=ref$1[2],l=cbrt(.4122214708*lr+.5363325363*lg+.0514459929*lb),m=cbrt(.2119034982*lr+.6806995451*lg+.1073969566*lb),s=cbrt(.0883024619*lr+.2817188376*lg+.6299787005*lb);return[.2104542553*l+.793617785*m-.0040720468*s,1.9779984951*l-2.428592205*m+.4505937099*s,.0259040371*l+.7827717662*m-.808675766*s]},unpack$4=utils.unpack,pow$7=_Mathpow,sign=_Mathsign,oklab2rgb_1=function(){for(var args=[],len=arguments.length;len--;)args[len]=arguments[len];args=unpack$4(args,"lab");var L=args[0],a=args[1],b=args[2],l=pow$7(L+.3963377774*a+.2158037573*b,3),m=pow$7(L-.1055613458*a-.0638541728*b,3),s=pow$7(L-.0894841775*a-1.291485548*b,3);return[255*lrgb2rgb(+4.0767416621*l-3.3077115913*m+.2309699292*s),255*lrgb2rgb(-1.2684380046*l+2.6097574011*m-.3413193965*s),255*lrgb2rgb(-.0041960863*l-.7034186147*m+1.707614701*s),3lum?test(low,mid):test(mid,high)},rgb=(cur_lum>lum?test(new Color$i([0,0,0]),this):test(this,new Color$i([255,255,255]))).rgb();return new Color$i(rgb.concat([this._rgb[3]]))}return rgb2luminance.apply(void 0,this._rgb.slice(0,3))};var rgb2luminance=function(r,g,b){return r=luminance_x(r),g=luminance_x(g),b=luminance_x(b),.2126*r+.7152*g+.0722*b},luminance_x=function(x){return x/=255,.03928>=x?x/12.92:_Mathpow((x+.055)/1.055,2.4)},interpolator$1={},Color$h=Color_1,type$4=utils.type,interpolator=interpolator$1,mix$1=function(col1,col2,f){void 0===f&&(f=.5);for(var rest=[],len=arguments.length-3;0lch[1]&&(lch[1]=0),new Color$e(lch,"lch").alpha(me.alpha(),!0)},Color$e.prototype.desaturate=function(amount){return void 0===amount&&(amount=1),this.saturate(-amount)};var Color$d=Color_1,type$3=utils.type;Color$d.prototype.set=function(mc,value,mutate){void 0===mutate&&(mutate=!1);var ref=mc.split("."),mode=ref[0],channel=ref[1],src=this[mode]();if(channel){var i=mode.indexOf(channel)-("ok"===mode.substr(0,2)?2:0);if(-1hue0&&180A$1;)A$1+=360;for(;360<=A$1;)A$1-=360;xyz[i$1]=A$1}else xyz[i$1]/=cnt[i$1];return alpha/=l,new Color$6(xyz,mode).alpha(.99999=_classes[i];)i++;return i-1}return 0},tMapLightness=function(t){return t},tMapDomain=function(t){return t},getColor=function(val,bypassMap){var col,t;if(null==bypassMap&&(bypassMap=!1),isNaN(val)||null===val)return _nacol;if(!!bypassMap)t=val;else if(_classes&&2<_classes.length){var c=getClass(val);t=c/(_classes.length-2)}else t=_max===_min?1:(val-_min)/(_max-_min);t=tMapDomain(t),bypassMap||(t=tMapLightness(t)),1!==_gamma&&(t=_Mathpow(t,_gamma)),t=_padding[0]+t*(1-_padding[0]-_padding[1]),t=_Mathmin2(1,_Mathmax2(0,t));var k=_Mathfloor(1e4*t);if(_useCache&&_colorCache[k])col=_colorCache[k];else{if("array"===type$2(_colors))for(var i=0,p;i<_pos.length;i++){if(p=_pos[i],t<=p){col=_colors[i];break}if(t>=p&&i===_pos.length-1){col=_colors[i];break}if(t>p&&t<_pos[i+1]){t=(t-p)/(_pos[i+1]-p),col=chroma$4.interpolate(_colors[i],_colors[i+1],t,_mode);break}}else"function"===type$2(_colors)&&(col=_colors(t));_useCache&&(_colorCache[k]=col)}return col},resetCache=function(){return _colorCache={}};setColors(colors);var f=function(v){var c=chroma$4(getColor(v));return _out&&c[_out]?c[_out]():c};return f.classes=function(classes){if(null!=classes){if("array"===type$2(classes))_classes=classes,_domain=[classes[0],classes[classes.length-1]];else{var d=chroma$4.analyze(_domain);_classes=0===classes?[d.min,d.max]:chroma$4.limits(d,"e",classes)}return f}return _classes},f.domain=function(domain){if(!arguments.length)return _domain;_min=domain[0],_max=domain[domain.length-1],_pos=[];var k=_colors.length;if(domain.length===k&&_min!==_max)for(var i=0,list=Array.from(domain),d;i=t||1<=t)return t;for(var i=0;t>=tBreaks[i+1];)i++;var f=(t-tBreaks[i])/(tBreaks[i+1]-tBreaks[i]),out=tOut[i]+f*(tOut[i+1]-tOut[i]);return out})}}return _domain=[_min,_max],f},f.mode=function(_m){return arguments.length?(_mode=_m,resetCache(),f):_mode},f.range=function(colors){return setColors(colors),f},f.out=function(_o){return _out=_o,f},f.spread=function(val){return arguments.length?(_spread=val,f):_spread},f.correctLightness=function(v){return null==v&&(v=!0),_correctLightness=v,resetCache(),tMapLightness=_correctLightness?function(t){for(var L0=getColor(0,!0).lab()[0],L1=getColor(1,!0).lab()[0],L_actual=getColor(t,!0).lab()[0],L_ideal=L0+(L1-L0)*t,L_diff=L_actual-L_ideal,t0=0,t1=1,max_iter=20;.01<_Mathabs(L_diff)&&0L1&&(L_diff*=-1),0>L_diff?(t0=t,t+=.5*(t1-t)):(t1=t,t+=.5*(t0-t)),L_actual=getColor(t,!0).lab()[0],L_diff=L_actual-L_ideal})();return t}:function(t){return t},f},f.padding=function(p){return null==p?_padding:("number"===type$2(p)&&(p=[p,p]),_padding=p,f)},f.colors=function(numColors,out){2>arguments.length&&(out="hex");var result=[];if(0===arguments.length)result=_colors.slice(0);else if(1===numColors)result=[f(.5)];else if(1end;asc?i++:i--)samples.push(.5*(_classes[i-1]+_classes[i]));else samples=_domain;result=samples.map(function(v){return f(v)})}return chroma$4[out]&&(result=result.map(function(c){return c[out]()})),result},f.cache=function(c){return null==c?_useCache:(_useCache=c,f)},f.gamma=function(g){return null==g?_gamma:(_gamma=g,f)},f.nodata=function(d){return null==d?_nacol:(_nacol=chroma$4(d),f)},f},Color$5=Color_1,binom_row=function(n){for(var row=[1,1],i=1,newrow;ib?2*a*b/255:255*(1-2*(1-a/255)*(1-b/255))})),blend.darken=blend_f(each(function(a,b){return a>b?b:a})),blend.lighten=blend_f(each(function(a,b){return a>b?a:b})),blend.dodge=blend_f(each(function(a,b){return 255===a?255:(a=255*(b/255)/(1-a/255),255i;i++)code+="0123456789abcdef".charAt(_Mathfloor(16*random()));return new Color_1(code,"hex")},type=type$p,log=_Mathlog,analyze=function(data,key){void 0===key&&(key=null);var r={min:_NumberMAX_VALUE,max:-1*_NumberMAX_VALUE,sum:0,values:[],count:0};return"object"===type(data)&&(data=Object.values(data)),data.forEach(function(val){key&&"object"===type(val)&&(val=val[key]),void 0===val||null===val||isNaN(val)||(r.values.push(val),r.sum+=val,valr.max&&(r.max=val),r.count+=1)}),r.domain=[r.min,r.max],r.limits=function(mode,num){return limits(r,mode,num)},r},limits=function(data,mode,num){var _MathLOG10E=Math.LOG10E;void 0===mode&&(mode="equal"),void 0===num&&(num=7),"array"==type(data)&&(data=analyze(data));var min=data.min,max=data.max,values=data.values.sort(function(a,b){return a-b});if(1===num)return[min,max];var limits=[];if("c"===mode.substr(0,1)&&(limits.push(min),limits.push(max)),"e"===mode.substr(0,1)){limits.push(min);for(var i=1;i=min)throw new Error("Logarithmic scales are only possible for values > 0");var min_log=_MathLOG10E*log(min),max_log=_MathLOG10E*log(max);limits.push(min);for(var i$1=1;i$1l2?(l1+.05)/(l2+.05):(l2+.05)/(l1+.05)},Color$2=Color_1,sqrt=_Mathsqrt,pow=_Mathpow,atan2=_Mathatan,abs=_Mathabs,cos=_Mathcos,sin=_Mathsin,exp=Math.exp,PI=_MathPI,deltaE=function(a,b,Kl,Kc,Kh){void 0===Kl&&(Kl=1),void 0===Kc&&(Kc=1),void 0===Kh&&(Kh=1);var rad2deg=function(rad){return 360*rad/(2*PI)},deg2rad=function(deg){return 2*PI*deg/360};a=new Color$2(a),b=new Color$2(b);var ref=Array.from(a.lab()),L1=ref[0],a1=ref[1],b1=ref[2],ref$1=Array.from(b.lab()),L2=ref$1[0],a2=ref$1[1],b2=ref$1[2],avgL=(L1+L2)/2,C1=sqrt(pow(a1,2)+pow(b1,2)),C2=sqrt(pow(a2,2)+pow(b2,2)),avgC=(C1+C2)/2,G=.5*(1-sqrt(pow(avgC,7)/(pow(avgC,7)+pow(25,7)))),a1p=a1*(1+G),a2p=a2*(1+G),C1p=sqrt(pow(a1p,2)+pow(b1,2)),C2p=sqrt(pow(a2p,2)+pow(b2,2)),avgCp=(C1p+C2p)/2,arctan1=rad2deg(atan2(b1,a1p)),arctan2=rad2deg(atan2(b2,a2p)),h1p=0<=arctan1?arctan1:arctan1+360,h2p=0<=arctan2?arctan2:arctan2+360,avgHp=180=abs(deltaHp)?deltaHp:h2p<=h1p?deltaHp+360:deltaHp-360,deltaHp=2*sqrt(C1p*C2p)*sin(deg2rad(deltaHp)/2);var deltaCp=C2p-C1p,sl=1+.015*pow(avgL-50,2)/sqrt(20+pow(avgL-50,2)),sc=1+.045*avgCp,sh=1+.015*avgCp*T,deltaTheta=30*exp(-pow((avgHp-275)/25,2)),Rc=2*sqrt(pow(avgCp,7)/(pow(avgCp,7)+pow(25,7))),Rt=-Rc*sin(2*deg2rad(deltaTheta)),result=sqrt(pow((L2-L1)/(Kl*sl),2)+pow(deltaCp/(Kc*sc),2)+pow(deltaHp/(Kh*sh),2)+Rt*(deltaCp/(Kc*sc))*(deltaHp/(Kh*sh)));return _Mathmax2(0,_Mathmin2(100,result))},Color$1=Color_1,distance=function(a,b,mode){void 0===mode&&(mode="lab"),a=new Color$1(a),b=new Color$1(b);var l1=a.get(mode),l2=b.get(mode),sum_sq=0;for(var i in l1){var d=(l1[i]||0)-(l2[i]||0);sum_sq+=d*d}return _Mathsqrt(sum_sq)},valid=function(){for(var args=[],len=arguments.length;len--;)args[len]=arguments[len];try{return new(Function.prototype.bind.apply(Color_1,[null].concat(args))),!0}catch(e){return!1}},chroma$1=chroma_1,scale=scale$2,scales={cool:function(){return scale([chroma$1.hsl(180,1,.9),chroma$1.hsl(250,.7,.4)])},hot:function(){return scale(["#000","#f00","#ff0","#fff"]).mode("rgb")}},colorbrewer={OrRd:["#fff7ec","#fee8c8","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#b30000","#7f0000"],PuBu:["#fff7fb","#ece7f2","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#045a8d","#023858"],BuPu:["#f7fcfd","#e0ecf4","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#810f7c","#4d004b"],Oranges:["#fff5eb","#fee6ce","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#a63603","#7f2704"],BuGn:["#f7fcfd","#e5f5f9","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#006d2c","#00441b"],YlOrBr:["#ffffe5","#fff7bc","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#993404","#662506"],YlGn:["#ffffe5","#f7fcb9","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#006837","#004529"],Reds:["#fff5f0","#fee0d2","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#a50f15","#67000d"],RdPu:["#fff7f3","#fde0dd","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177","#49006a"],Greens:["#f7fcf5","#e5f5e0","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#006d2c","#00441b"],YlGnBu:["#ffffd9","#edf8b1","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#253494","#081d58"],Purples:["#fcfbfd","#efedf5","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#54278f","#3f007d"],GnBu:["#f7fcf0","#e0f3db","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#0868ac","#084081"],Greys:["#ffffff","#f0f0f0","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525","#000000"],YlOrRd:["#ffffcc","#ffeda0","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#bd0026","#800026"],PuRd:["#f7f4f9","#e7e1ef","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#980043","#67001f"],Blues:["#f7fbff","#deebf7","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#08519c","#08306b"],PuBuGn:["#fff7fb","#ece2f0","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016c59","#014636"],Viridis:["#440154","#482777","#3f4a8a","#31678e","#26838f","#1f9d8a","#6cce5a","#b6de2b","#fee825"],Spectral:["#9e0142","#d53e4f","#f46d43","#fdae61","#fee08b","#ffffbf","#e6f598","#abdda4","#66c2a5","#3288bd","#5e4fa2"],RdYlGn:["#a50026","#d73027","#f46d43","#fdae61","#fee08b","#ffffbf","#d9ef8b","#a6d96a","#66bd63","#1a9850","#006837"],RdBu:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#f7f7f7","#d1e5f0","#92c5de","#4393c3","#2166ac","#053061"],PiYG:["#8e0152","#c51b7d","#de77ae","#f1b6da","#fde0ef","#f7f7f7","#e6f5d0","#b8e186","#7fbc41","#4d9221","#276419"],PRGn:["#40004b","#762a83","#9970ab","#c2a5cf","#e7d4e8","#f7f7f7","#d9f0d3","#a6dba0","#5aae61","#1b7837","#00441b"],RdYlBu:["#a50026","#d73027","#f46d43","#fdae61","#fee090","#ffffbf","#e0f3f8","#abd9e9","#74add1","#4575b4","#313695"],BrBG:["#543005","#8c510a","#bf812d","#dfc27d","#f6e8c3","#f5f5f5","#c7eae5","#80cdc1","#35978f","#01665e","#003c30"],RdGy:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#ffffff","#e0e0e0","#bababa","#878787","#4d4d4d","#1a1a1a"],PuOr:["#7f3b08","#b35806","#e08214","#fdb863","#fee0b6","#f7f7f7","#d8daeb","#b2abd2","#8073ac","#542788","#2d004b"],Set2:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f","#e5c494","#b3b3b3"],Accent:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f","#bf5b17","#666666"],Set1:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628","#f781bf","#999999"],Set3:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd","#ccebc5","#ffed6f"],Dark2:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02","#a6761d","#666666"],Paired:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a","#ffff99","#b15928"],Pastel2:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae","#f1e2cc","#cccccc"],Pastel1:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd","#fddaec","#f2f2f2"]},i=0,list=Object.keys(colorbrewer),key;ip.x&&(minX=p.x),minY>p.y&&(minY=p.y)}var padding=this.opts.padding;maxX+=padding,maxY+=padding,minX-=padding,minY-=padding,this.drawingWidth=maxX-minX,this.drawingHeight=maxY-minY;var scaleX=this.canvas.offsetWidth/this.drawingWidth,scaleY=this.canvas.offsetHeight/this.drawingHeight,scale=scaleXalpha&&(ctx.globalAlpha=alpha),ctx.strokeStyle=gradient,ctx.stroke(),ctx.restore()}drawWedge(line,width=1){if(isNaN(line.from.x)||isNaN(line.from.y)||isNaN(line.to.x)||isNaN(line.to.y))return;let ctx=this.ctx,offsetX=this.offsetX,offsetY=this.offsetY,shortLine=line.clone().shorten(5),l=shortLine.getLeftVector().clone(),r=shortLine.getRightVector().clone();l.x+=offsetX,l.y+=offsetY,r.x+=offsetX,r.y+=offsetY,l=line.getLeftVector().clone(),r=line.getRightVector().clone(),l.x+=offsetX,l.y+=offsetY,r.x+=offsetX,r.y+=offsetY,ctx.save();let normals=Vector2.normals(l,r);normals[0].normalize(),normals[1].normalize();let isRightChiralCenter=line.getRightChiral(),start=l,end=r;isRightChiralCenter&&(start=r,end=l);let t=Vector2.add(start,Vector2.multiplyScalar(normals[0],this.halfBondThickness)),u=Vector2.add(end,Vector2.multiplyScalar(normals[0],1.5+this.halfBondThickness)),v=Vector2.add(end,Vector2.multiplyScalar(normals[1],1.5+this.halfBondThickness)),w=Vector2.add(start,Vector2.multiplyScalar(normals[1],this.halfBondThickness));ctx.beginPath(),ctx.moveTo(t.x,t.y),ctx.lineTo(u.x,u.y),ctx.lineTo(v.x,v.y),ctx.lineTo(w.x,w.y);let gradient=this.ctx.createRadialGradient(r.x,r.y,this.opts.bondLength,r.x,r.y,0);gradient.addColorStop(.4,this.themeManager.getColor(line.getLeftElement())||this.themeManager.getColor("C")),gradient.addColorStop(.6,this.themeManager.getColor(line.getRightElement())||this.themeManager.getColor("C")),ctx.fillStyle=gradient,ctx.fill(),ctx.restore()}drawDashedWedge(line){if(isNaN(line.from.x)||isNaN(line.from.y)||isNaN(line.to.x)||isNaN(line.to.y))return;let ctx=this.ctx,offsetX=this.offsetX,offsetY=this.offsetY,l=line.getLeftVector().clone(),r=line.getRightVector().clone();l.x+=offsetX,l.y+=offsetY,r.x+=offsetX,r.y+=offsetY,ctx.save();let normals=Vector2.normals(l,r);normals[0].normalize(),normals[1].normalize();let isRightChiralCenter=line.getRightChiral(),shortLine=line.clone(),start,end,sStart,sEnd;isRightChiralCenter?(start=r,end=l,shortLine.shortenRight(1),sStart=shortLine.getRightVector().clone(),sEnd=shortLine.getLeftVector().clone()):(start=l,end=r,shortLine.shortenLeft(1),sStart=shortLine.getLeftVector().clone(),sEnd=shortLine.getRightVector().clone()),sStart.x+=offsetX,sStart.y+=offsetY,sEnd.x+=offsetX,sEnd.y+=offsetY;let dir=Vector2.subtract(end,start).normalize();ctx.strokeStyle=this.themeManager.getColor("C"),ctx.lineCap="round",ctx.lineWidth=this.opts.bondThickness,ctx.beginPath();let length=line.getLength(),step=1.25/(length/(3*this.opts.bondThickness)),changed=!1;for(var t=0;1>t;t+=step){let to=Vector2.multiplyScalar(dir,t*length),startDash=Vector2.add(start,to),width=1.5*t,dashOffset=Vector2.multiplyScalar(normals[0],width);!changed&&.5this.opts.fontSizeLarge?dim.width:this.opts.fontSizeLarge;r/=1.5,ctx.globalCompositeOperation="destination-out",ctx.beginPath(),ctx.arc(x+offsetX,y+offsetY,r,0,MathHelper.twoPI,!0),ctx.closePath(),ctx.fill(),ctx.globalCompositeOperation="source-over";let cursorPos=-dim.width/2,cursorPosLeft=-dim.width/2;ctx.fillStyle=this.themeManager.getColor(elementName),ctx.fillText(elementName,x+offsetX+cursorPos,y+this.opts.halfFontSizeLarge+offsetY),cursorPos+=dim.width,charge&&(ctx.font=this.fontSmall,ctx.fillText(chargeText,x+offsetX+cursorPos,y-this.opts.fifthFontSizeSmall+offsetY),cursorPos+=chargeWidth),0maxDist&&(maxDist=dist,a=i,b=j)}}let angle=-Vector2.subtract(this.graph.vertices[a].position,this.graph.vertices[b].position).angle();if(!isNaN(angle)){let remainder=angle%.523599;.2617995>remainder?angle-=remainder:angle+=.523599-remainder;for(var i=0;i{if(counts.has(e)){let count=counts.get(e);molecularFormula+=e+(1vertexA.value.getRingbondCount()||1>vertexB.value.getRingbondCount())return null;for(var i=0;isubTreeDepthB&&(a=edge.sourceId,b=edge.targetId);let subTreeOverlap=this.getSubtreeOverlapScore(b,a,overlapScore.vertexScores);if(subTreeOverlap.value>this.opts.overlapSensitivity){let vertexA=this.graph.vertices[a],vertexB=this.graph.vertices[b],neighboursB=vertexB.getNeighbours(a);if(1===neighboursB.length){let neighbour=this.graph.vertices[neighboursB[0]],angle=neighbour.position.getRotateAwayFromAngle(vertexA.position,vertexB.position,MathHelper.toRad(120));this.rotateSubtree(neighbour.id,vertexB.id,angle,vertexB.position);let newTotalOverlapScore=this.getOverlapScore().total;newTotalOverlapScore>this.totalOverlapScore?this.rotateSubtree(neighbour.id,vertexB.id,-angle,vertexB.position):this.totalOverlapScore=newTotalOverlapScore}else if(2===neighboursB.length){if(0!==vertexB.value.rings.length&&0!==vertexA.value.rings.length)continue;let neighbourA=this.graph.vertices[neighboursB[0]],neighbourB=this.graph.vertices[neighboursB[1]];if(1===neighbourA.value.rings.length&&1===neighbourB.value.rings.length){if(neighbourA.value.rings[0]!==neighbourB.value.rings[0])continue;}else if(0!==neighbourA.value.rings.length||0!==neighbourB.value.rings.length)continue;else{let angleA=neighbourA.position.getRotateAwayFromAngle(vertexA.position,vertexB.position,MathHelper.toRad(120)),angleB=neighbourB.position.getRotateAwayFromAngle(vertexA.position,vertexB.position,MathHelper.toRad(120));this.rotateSubtree(neighbourA.id,vertexB.id,angleA,vertexB.position),this.rotateSubtree(neighbourB.id,vertexB.id,angleB,vertexB.position);let newTotalOverlapScore=this.getOverlapScore().total;newTotalOverlapScore>this.totalOverlapScore?(this.rotateSubtree(neighbourA.id,vertexB.id,-angleA,vertexB.position),this.rotateSubtree(neighbourB.id,vertexB.id,-angleB,vertexB.position)):this.totalOverlapScore=newTotalOverlapScore}}overlapScore=this.getOverlapScore()}}}this.resolveSecondaryOverlaps(overlapScore.scores),this.opts.isomeric&&this.annotateStereochemistry(),this.opts.compactDrawing&&"default"===this.opts.atomVisualization&&this.initPseudoElements(),this.rotateDrawing()}initRings(){let openBonds=new Map;for(var i=this.graph.vertices.length-1;0<=i;i--){let vertex=this.graph.vertices[i];if(0!==vertex.value.ringbonds.length)for(var j=0;jneighbour.value.rings.length&&!neighbour.value.bridgedRing||neighbour.value.bridgedRing&&2>neighbour.value.originalRings.length)&&(vertex.value.isDrawn=!1)}}getBridgedRingRings(ringId){let involvedRings=[],that=this,recurse=function(r){let ring=that.getRing(r);involvedRings.push(r);for(var i=0;imaxSize&&(maxSize=size,largestCommonRing=ring)}return largestCommonRing}getVerticesAt(position,radius,excludeVertexId){let locals=[];for(var i=0;ii;){let a=this.graph.vertices[i],b=this.graph.vertices[j];if(!a.value.isDrawn||!b.value.isDrawn)continue;let dist=Vector2.subtract(a.position,b.position).lengthSq();if(disttotalSideCount[1]?0:1,sideCount:sideCount,position:sideCount[0]>sideCount[1]?0:1,anCount:anCount,bnCount:bnCount}}setRingCenter(ring){let ringSize=ring.getSize(),total=new Vector2(0,0);for(var i=0;is.sideCount[1]){normals[0].multiplyScalar(that.opts.bondSpacing),normals[1].multiplyScalar(that.opts.bondSpacing);let line=new Line(Vector2.add(a,normals[0]),Vector2.add(b,normals[0]),elementA,elementB);line.shorten(this.opts.bondLength-this.opts.shortBondLength*this.opts.bondLength),this.canvasWrapper.drawLine(line),this.canvasWrapper.drawLine(new Line(a,b,elementA,elementB))}else if(s.sideCount[0]s.totalSideCount[1]){normals[0].multiplyScalar(that.opts.bondSpacing),normals[1].multiplyScalar(that.opts.bondSpacing);let line=new Line(Vector2.add(a,normals[0]),Vector2.add(b,normals[0]),elementA,elementB);line.shorten(this.opts.bondLength-this.opts.shortBondLength*this.opts.bondLength),this.canvasWrapper.drawLine(line),this.canvasWrapper.drawLine(new Line(a,b,elementA,elementB))}else if(s.totalSideCount[0]<=s.totalSideCount[1]){normals[0].multiplyScalar(that.opts.bondSpacing),normals[1].multiplyScalar(that.opts.bondSpacing);let line=new Line(Vector2.add(a,normals[1]),Vector2.add(b,normals[1]),elementA,elementB);line.shorten(this.opts.bondLength-this.opts.shortBondLength*this.opts.bondLength),this.canvasWrapper.drawLine(line),this.canvasWrapper.drawLine(new Line(a,b,elementA,elementB))}else;}else if("#"===edge.bondType){normals[0].multiplyScalar(that.opts.bondSpacing/1.5),normals[1].multiplyScalar(that.opts.bondSpacing/1.5);let lineA=new Line(Vector2.add(a,normals[0]),Vector2.add(b,normals[0]),elementA,elementB),lineB=new Line(Vector2.add(a,normals[1]),Vector2.add(b,normals[1]),elementA,elementB);this.canvasWrapper.drawLine(lineA),this.canvasWrapper.drawLine(lineB),this.canvasWrapper.drawLine(new Line(a,b,elementA,elementB))}else if("."===edge.bondType);else{let isChiralCenterA=vertexA.value.isStereoCenter,isChiralCenterB=vertexB.value.isStereoCenter;"up"===edge.wedge?this.canvasWrapper.drawWedge(new Line(a,b,elementA,elementB,isChiralCenterA,isChiralCenterB)):"down"===edge.wedge?this.canvasWrapper.drawDashedWedge(new Line(a,b,elementA,elementB,isChiralCenterA,isChiralCenterB)):this.canvasWrapper.drawLine(new Line(a,b,elementA,elementB,isChiralCenterA,isChiralCenterB))}if(debug){let midpoint=Vector2.midpoint(a,b);this.canvasWrapper.drawDebugText(midpoint.x,midpoint.y,"e: "+edgeId)}}drawVertices(debug){for(var i=this.graph.vertices.length,i=0;i_Mathabs2(_MathPI2-angle)&&this.canvasWrapper.drawPoint(vertex.position.x,vertex.position.y,element)}if(debug){let value="v: "+vertex.id+" "+ArrayHelper.print(atom.ringbonds);this.canvasWrapper.drawDebugText(vertex.position.x,vertex.position.y,value)}else;}if(this.opts.debug)for(var i=0;iring.rings.length)&&(vertex.angle=a,vertex.positioned=!0)},startVertexId,previousVertex?previousVertex.id:null);ring.positioned=!0,ring.center=center;for(var i=0;iVector2.subtract(center,normals[0]).lengthSq()&&(nextCenter=normals[1]);let posA=Vector2.subtract(vertexA.position,nextCenter),posB=Vector2.subtract(vertexB.position,nextCenter);-1===posA.clockwise(posB)?!neighbour.positioned&&this.createRing(neighbour,nextCenter,vertexA,vertexB):!neighbour.positioned&&this.createRing(neighbour,nextCenter,vertexB,vertexA)}else if(1===vertices.length){ring.isSpiro=!0,neighbour.isSpiro=!0;let vertexA=this.graph.vertices[vertices[0]],nextCenter=Vector2.subtract(center,vertexA.position);nextCenter.invert(),nextCenter.normalize();let r=MathHelper.polyCircumradius(this.opts.bondLength,neighbour.getSize());nextCenter.multiplyScalar(r),nextCenter.add(vertexA.position),neighbour.positioned||this.createRing(neighbour,nextCenter,vertexA)}}for(var i=0;ithat.opts.overlapSensitivity&&(score+=s,count++);let position=that.graph.vertices[vertex.id].position.clone();position.multiplyScalar(s),center.add(position)}}),center.divide(score),{value:score/count,center:center}}getCurrentCenterOfMass(){let total=new Vector2(0,0),count=0;for(var i=0;itotal&&(this.rotateSubtree(a.id,overlap.common.id,2*angle,overlap.common.position),this.rotateSubtree(b.id,overlap.common.id,-2*angle,overlap.common.position))}else 1!==overlap.vertices.length||2!==overlap.rings.length}}resolveSecondaryOverlaps(scores){for(var i=0;ithis.opts.overlapSensitivity){let vertex=this.graph.vertices[scores[i].id];if(vertex.isTerminal()){let closest=this.getClosestVertex(vertex);if(closest){let closestPosition=null;closestPosition=closest.isTerminal()?0===closest.id?this.graph.vertices[1].position:closest.previousPosition:0===closest.id?this.graph.vertices[1].position:closest.position;let vertexPreviousPosition=0===vertex.id?this.graph.vertices[1].position:vertex.previousPosition;vertex.position.rotateAwayFrom(closestPosition,vertexPreviousPosition,MathHelper.toRad(20))}}}}getLastVertexWithAngle(vertexId){let angle=0,vertex=null;for(;!angle&&vertexId;)vertex=this.graph.vertices[vertexId],angle=vertex.angle,vertexId=vertex.parentVertexId;return vertex}createNextBond(vertex,previousVertex=null,angle=0,originShortest=!1,skipPositioning=!1){if(vertex.positioned&&!skipPositioning)return;let doubleBondConfigSet=!1;if(previousVertex){let edge=this.graph.getEdge(vertex.id,previousVertex.id);("/"===edge.bondType||"\\"===edge.bondType)&&1==++this.doubleBondConfigCount%2&&null===this.doubleBondConfig&&(this.doubleBondConfig=edge.bondType,doubleBondConfigSet=!0,null===previousVertex.parentVertexId&&vertex.value.branchBond&&("/"===this.doubleBondConfig?this.doubleBondConfig="\\":"\\"===this.doubleBondConfig&&(this.doubleBondConfig="/")))}if(!skipPositioning)if(!previousVertex){let dummy=new Vector2(this.opts.bondLength,0);dummy.rotate(MathHelper.toRad(-60)),vertex.previousPosition=dummy,vertex.setPosition(this.opts.bondLength,0),vertex.angle=MathHelper.toRad(-60),null===vertex.value.bridgedRing&&(vertex.positioned=!0)}else if(0a?_Mathmax3(-1.0472,a):1.0472;else if(!a){let v=this.getLastVertexWithAngle(vertex.id);a=v.angle,a||(a=1.0472)}if(previousVertex&&!doubleBondConfigSet){let bondType=this.graph.getEdge(vertex.id,nextVertex.id).bondType;"/"===bondType?("/"===this.doubleBondConfig||"\\"===this.doubleBondConfig&&(a=-a),this.doubleBondConfig=null):"\\"===bondType&&("/"===this.doubleBondConfig?a=-a:"\\"===this.doubleBondConfig,this.doubleBondConfig=null)}nextVertex.angle=originShortest?a:-a,this.createNextBond(nextVertex,vertex,previousAngle+nextVertex.angle)}}else if(2===neighbours.length){let a=vertex.angle;a||(a=1.0472);let subTreeDepthA=this.graph.getTreeDepth(neighbours[0],vertex.id),subTreeDepthB=this.graph.getTreeDepth(neighbours[1],vertex.id),l=this.graph.vertices[neighbours[0]],r=this.graph.vertices[neighbours[1]];l.value.subtreeDepth=subTreeDepthA,r.value.subtreeDepth=subTreeDepthB;let subTreeDepthC=this.graph.getTreeDepth(previousVertex?previousVertex.id:null,vertex.id);previousVertex&&(previousVertex.value.subtreeDepth=subTreeDepthC);let cis=0,trans=1;"C"===r.value.element&&"C"!==l.value.element&&1subTreeDepthA?(cis=1,trans=0):"C"!==r.value.element&&"C"===l.value.element&&1subTreeDepthB?(cis=0,trans=1):subTreeDepthB>subTreeDepthA&&(cis=1,trans=0);let cisVertex=this.graph.vertices[neighbours[cis]],transVertex=this.graph.vertices[neighbours[trans]],edgeCis=this.graph.getEdge(vertex.id,cisVertex.id),edgeTrans=this.graph.getEdge(vertex.id,transVertex.id),originShortest=!1;subTreeDepthCd1&&d2>d3?(s=this.graph.vertices[neighbours[1]],l=this.graph.vertices[neighbours[0]],r=this.graph.vertices[neighbours[2]]):d3>d1&&d3>d2&&(s=this.graph.vertices[neighbours[2]],l=this.graph.vertices[neighbours[0]],r=this.graph.vertices[neighbours[1]]),previousVertex&&1>previousVertex.value.rings.length&&1>s.value.rings.length&&1>l.value.rings.length&&1>r.value.rings.length&&1===this.graph.getTreeDepth(l.id,vertex.id)&&1===this.graph.getTreeDepth(r.id,vertex.id)&&1d1&&d2>d3&&d2>d4?(w=this.graph.vertices[neighbours[1]],x=this.graph.vertices[neighbours[0]],y=this.graph.vertices[neighbours[2]],z=this.graph.vertices[neighbours[3]]):d3>d1&&d3>d2&&d3>d4?(w=this.graph.vertices[neighbours[2]],x=this.graph.vertices[neighbours[0]],y=this.graph.vertices[neighbours[1]],z=this.graph.vertices[neighbours[3]]):d4>d1&&d4>d2&&d4>d3&&(w=this.graph.vertices[neighbours[3]],x=this.graph.vertices[neighbours[0]],y=this.graph.vertices[neighbours[1]],z=this.graph.vertices[neighbours[2]]),w.angle=-MathHelper.toRad(36),x.angle=MathHelper.toRad(36),y.angle=-MathHelper.toRad(108),z.angle=MathHelper.toRad(108),this.createNextBond(w,vertex,previousAngle+w.angle),this.createNextBond(x,vertex,previousAngle+x.angle),this.createNextBond(y,vertex,previousAngle+y.angle),this.createNextBond(z,vertex,previousAngle+z.angle)}}}getCommonRingbondNeighbour(vertex){let neighbours=vertex.neighbours;for(var i=0;imaxLevels&&(maxLevels=priorities[j][1].length);for(var k=0;kmaxEntries&&(maxEntries=priorities[j][1][k].length)}for(var j=0;jb[1][j][k])return-1;if(a[1][j][k]b[0]?-1:a[0]vertex.getNeighbourCount()||0heteroAtomCount)continue;let previous=null;for(var j=0;j{this.points.push(new Vector2(a[0],a[1]))}),this.weights=[],arr_weights.forEach(w=>{this.weights.push(w)})}draw(){let m=[];for(let x=0,row;xmax&&(max=m[x][y]);abs_max=Math.max(_Mathabs3(min),_Mathabs3(max))}const scale=chroma.scale(this.colormap).domain([-1,1]);for(let x=0;x{this.context.imageSmoothingEnabled=!1,this.context.drawImage(image,0,0,this.width,this.height),callback&&callback(image)},image.onerror=function(err){console.log(err)},image.src=this.canvas.toDataURL()}getSVG(){return convertImage(this.context.getImageData(0,0,this.width,this.height))}setPixel(vec,r,g,b){this.context.fillStyle="rgba("+r+","+g+","+b+","+this.opacity+")",this.context.fillRect(vec.x,vec.y,1,1)}}},{"./PixelsToSvg":16,"./Vector2":28,"chroma-js":2}],11:[function(require,module){"use strict";var _Mathpow2=Math.pow,_Mathsqrt3=Math.sqrt,_Mathmin5=Math.min;const MathHelper=require("./MathHelper"),Vector2=require("./Vector2"),Vertex=require("./Vertex"),Edge=require("./Edge"),Ring=require("./Ring"),Atom=require("./Atom");class Graph{constructor(parseTree,isomeric=!1){this.vertices=[],this.edges=[],this.atomIdxToVertexId=[],this.vertexIdsToEdgeId={},this.isomeric=isomeric,this._atomIdx=0,this._time=0,this._init(parseTree)}_init(node,order=0,parentVertexId=null,isBranch=!1){const element=node.atom.element?node.atom.element:node.atom;let atom=new Atom(element,node.bond);"H"===element&&(node.hasNext||null!==parentVertexId)||(atom.idx=this._atomIdx,this._atomIdx++),atom.branchBond=node.branchBond,atom.ringbonds=node.ringbonds,atom.bracket=node.atom.element?node.atom:null,atom.class=node.atom.class;let vertex=new Vertex(atom),parentVertex=this.vertices[parentVertexId];if(this.addVertex(vertex),null!==atom.idx&&this.atomIdxToVertexId.push(vertex.id),null!==parentVertexId){vertex.setParentVertexId(parentVertexId),vertex.value.addNeighbouringElement(parentVertex.value.element),parentVertex.addChild(vertex.id),parentVertex.value.addNeighbouringElement(atom.element),parentVertex.spanningTreeChildren.push(vertex.id);let edge=new Edge(parentVertexId,vertex.id,1),vertexId=null;isBranch?(edge.setBondType(vertex.value.branchBond||"-"),vertexId=vertex.id,edge.setBondType(vertex.value.branchBond||"-"),vertexId=vertex.id):(edge.setBondType(parentVertex.value.bondType||"-"),vertexId=parentVertex.id);this.addEdge(edge)}let offset=node.ringbondCount+1;atom.bracket&&(offset+=atom.bracket.hcount);let stereoHydrogens=0;if(atom.bracket&&atom.bracket.chirality){atom.isStereoCenter=!0,stereoHydrogens=atom.bracket.hcount;for(var i=0;idist[i][k]+dist[k][j]&&(dist[i][j]=dist[i][k]+dist[k][j]);return dist}getSubgraphDistanceMatrix(vertexIds){let length=vertexIds.length,adja=this.getSubgraphAdjacencyMatrix(vertexIds),dist=Array(length);for(var i=0;idist[i][k]+dist[k][j]&&(dist[i][j]=dist[i][k]+dist[k][j]);return dist}getAdjacencyList(){let length=this.vertices.length,adjacencyList=Array(length);for(var i=0;imax&&(max=d)}return max+1}traverseTree(vertexId,parentVertexId,callback,maxDepth=999999,ignoreFirst=!1,depth=1,visited=null){if(null===visited&&(visited=new Uint8Array(this.vertices.length)),depth>maxDepth+1||1===visited[vertexId])return;visited[vertexId]=1;let vertex=this.vertices[vertexId],neighbours=vertex.getNeighbours(parentVertexId);(!ignoreFirst||1maxEnergy&&!1===arrPositioned[i]&&(maxEnergy=delta,maxEnergyId=i,maxDEX=dEX,maxDEY=dEY)}return[maxEnergyId,maxEnergy,maxDEX,maxDEY]},update=function(index,dEX,dEY){let dxx=0,dyy=0,dxy=0,ux=arrPositionX[index],uy=arrPositionY[index],arrL=matLength[index],arrK=matStrength[index];for(i=length;i--;){if(i===index)continue;let vx=arrPositionX[i],vy=arrPositionY[i],l=arrL[i],k=arrK[i],m=(ux-vx)*(ux-vx),denom=1/_Mathpow2(m+(uy-vy)*(uy-vy),1.5);dxx+=k*(1-l*(uy-vy)*(uy-vy)*denom),dyy+=k*(1-l*m*denom),dxy+=k*(l*(ux-vx)*(uy-vy)*denom)}0==dxx&&(dxx=.1),0===dyy&&(dyy=.1),0===dxy&&(dxy=.1);let dy=dEX/dxx+dEY/dxy;dy/=dxy/dxx-dyy/dxy;let dx=-(dxy*dy+dEX)/dxx;arrPositionX[index]+=dx,arrPositionY[index]+=dy;let arrE=matEnergy[index];dEX=0,dEY=0,ux=arrPositionX[index],uy=arrPositionY[index];let vx,vy,prevEx,prevEy,denom;for(i=length;i--;)index!==i&&(vx=arrPositionX[i],vy=arrPositionY[i],prevEx=arrE[i][0],prevEy=arrE[i][1],denom=1/_Mathsqrt3((ux-vx)*(ux-vx)+(uy-vy)*(uy-vy)),dx=arrK[i]*(ux-vx-arrL[i]*(ux-vx)*denom),dy=arrK[i]*(uy-vy-arrL[i]*(uy-vy)*denom),arrE[i]=[dx,dy],dEX+=dx,dEY+=dy,arrEnergySumX[i]+=dx-prevEx,arrEnergySumY[i]+=dy-prevEy);arrEnergySumX[index]=dEX,arrEnergySumY[index]=dEY},maxEnergyId=0,dEX=0,dEY=0,delta=0,iteration=0,innerIteration=0;for(;maxEnergy>threshold&&maxIteration>iteration;)for(iteration++,[maxEnergyId,maxEnergy,dEX,dEY]=highestEnergy(),delta=maxEnergy,innerIteration=0;delta>innerThreshold&&maxInnerIteration>innerIteration;)innerIteration++,update(maxEnergyId,dEX,dEY),[delta,dEX,dEY]=energy(maxEnergyId);for(i=length;i--;){let index=vertexIds[i],vertex=this.vertices[index];vertex.position.x=arrPositionX[i],vertex.position.y=arrPositionY[i],vertex.positioned=!0,vertex.forcePositioned=!0}}_bridgeDfs(u,visited,disc,low,parent,adj,outBridges){visited[u]=!0,disc[u]=low[u]=++this._time;for(var i=0;idisc[u]&&outBridges.push([u,v]))}}static getConnectedComponents(adjacencyMatrix){let length=adjacencyMatrix.length,visited=Array(length),components=[],count=0;visited.fill(!1);for(var u=0;upeg$maxFailPos&&(peg$maxFailPos=peg$currPos,peg$maxFailExpected=[]),peg$maxFailExpected.push(expected))}function peg$buildSimpleError(message,location){return new peg$SyntaxError(message,null,null,location)}function peg$parsechain(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9;if(s0=peg$currPos,s1=peg$currPos,s2=peg$parseatom(),s2!==peg$FAILED){for(s3=[],s4=peg$parsebranch();s4!==peg$FAILED;)s3.push(s4),s4=peg$parsebranch();if(s3!==peg$FAILED){for(s4=[],s5=peg$currPos,s6=peg$parsebond(),s6===peg$FAILED&&(s6=null),s6===peg$FAILED?(peg$currPos=s5,s5=peg$FAILED):(s7=peg$parsering(),s7===peg$FAILED?(peg$currPos=s5,s5=peg$FAILED):(s6=[s6,s7],s5=s6));s5!==peg$FAILED;)s4.push(s5),s5=peg$currPos,s6=peg$parsebond(),s6===peg$FAILED&&(s6=null),s6===peg$FAILED?(peg$currPos=s5,s5=peg$FAILED):(s7=peg$parsering(),s7===peg$FAILED?(peg$currPos=s5,s5=peg$FAILED):(s6=[s6,s7],s5=s6));if(s4!==peg$FAILED){for(s5=[],s6=peg$parsebranch();s6!==peg$FAILED;)s5.push(s6),s6=peg$parsebranch();if(s5===peg$FAILED)peg$currPos=s1,s1=peg$FAILED;else if(s6=peg$parsebond(),s6===peg$FAILED&&(s6=null),s6===peg$FAILED)peg$currPos=s1,s1=peg$FAILED;else if(s7=peg$parsechain(),s7===peg$FAILED&&(s7=null),s7!==peg$FAILED){for(s8=[],s9=peg$parsebranch();s9!==peg$FAILED;)s8.push(s9),s9=peg$parsebranch();s8===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(s2=[s2,s3,s4,s5,s6,s7,s8],s1=s2)}else peg$currPos=s1,s1=peg$FAILED}else peg$currPos=s1,s1=peg$FAILED}else peg$currPos=s1,s1=peg$FAILED}else peg$currPos=s1,s1=peg$FAILED;return s1!==peg$FAILED&&(peg$savedPos=s0,s1=peg$c0(s1)),s0=s1,s0}function peg$parsebranch(){var s0,s1,s2,s3,s4,s5;return s0=peg$currPos,s1=peg$currPos,40===input.charCodeAt(peg$currPos)?(s2="(",peg$currPos++):(s2=peg$FAILED,peg$fail(peg$c2)),s2===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(s3=peg$parsebond(),s3===peg$FAILED&&(s3=null),s3===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(s4=peg$parsechain(),s4===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(41===input.charCodeAt(peg$currPos)?(s5=")",peg$currPos++):(s5=peg$FAILED,peg$fail(peg$c4)),s5===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(s2=[s2,s3,s4,s5],s1=s2)))),s1!==peg$FAILED&&(peg$savedPos=s0,s1=peg$c5(s1)),s0=s1,s0}function peg$parseatom(){var s0,s1;return s0=peg$currPos,s1=peg$parseorganicsymbol(),s1===peg$FAILED&&(s1=peg$parsearomaticsymbol(),s1===peg$FAILED&&(s1=peg$parsebracketatom(),s1===peg$FAILED&&(s1=peg$parsewildcard()))),s1!==peg$FAILED&&(peg$savedPos=s0,s1=peg$c6(s1)),s0=s1,s0}function peg$parsebond(){var s0,s1;if(s0=peg$currPos,peg$c7.test(input.charAt(peg$currPos))){if(s1=input.charAt(peg$currPos),s1===input.charAt(peg$currPos+1))throw s1=peg$FAILED,peg$buildSimpleError("The parser encountered a bond repetition.",peg$currPos+1);peg$currPos++}else s1=peg$FAILED,peg$fail(peg$c8);return s1!==peg$FAILED&&(peg$savedPos=s0,s1=peg$c9(s1)),s0=s1,s0}function peg$parsebracketatom(){var s0,s1,s2,s3,s4,s5,s6,s7,s8,s9;return s0=peg$currPos,s1=peg$currPos,91===input.charCodeAt(peg$currPos)?(s2="[",peg$currPos++):(s2=peg$FAILED,peg$fail(peg$c11)),s2===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(s3=peg$parseisotope(),s3===peg$FAILED&&(s3=null),s3===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):("se"===input.substr(peg$currPos,2)?(s4="se",peg$currPos+=2):(s4=peg$FAILED,peg$fail(peg$c13)),s4===peg$FAILED&&("as"===input.substr(peg$currPos,2)?(s4="as",peg$currPos+=2):(s4=peg$FAILED,peg$fail(peg$c15)),s4===peg$FAILED&&(s4=peg$parsearomaticsymbol(),s4===peg$FAILED&&(s4=peg$parseelementsymbol(),s4===peg$FAILED&&(s4=peg$parsewildcard())))),s4===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(s5=peg$parsechiral(),s5===peg$FAILED&&(s5=null),s5===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(s6=peg$parsehcount(),s6===peg$FAILED&&(s6=null),s6===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(s7=peg$parsecharge(),s7===peg$FAILED&&(s7=null),s7===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(s8=peg$parseclass(),s8===peg$FAILED&&(s8=null),s8===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(93===input.charCodeAt(peg$currPos)?(s9="]",peg$currPos++):(s9=peg$FAILED,peg$fail(peg$c17)),s9===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(s2=[s2,s3,s4,s5,s6,s7,s8,s9],s1=s2)))))))),s1!==peg$FAILED&&(peg$savedPos=s0,s1=peg$c18(s1)),s0=s1,s0}function peg$parseorganicsymbol(){var s0,s1,s2,s3;return s0=peg$currPos,s1=peg$currPos,66===input.charCodeAt(peg$currPos)?(s2="B",peg$currPos++):(s2=peg$FAILED,peg$fail(peg$c20)),s2===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(114===input.charCodeAt(peg$currPos)?(s3="r",peg$currPos++):(s3=peg$FAILED,peg$fail(peg$c22)),s3===peg$FAILED&&(s3=null),s3===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(s2=[s2,s3],s1=s2)),s1===peg$FAILED&&(s1=peg$currPos,67===input.charCodeAt(peg$currPos)?(s2="C",peg$currPos++):(s2=peg$FAILED,peg$fail(peg$c24)),s2===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(108===input.charCodeAt(peg$currPos)?(s3="l",peg$currPos++):(s3=peg$FAILED,peg$fail(peg$c26)),s3===peg$FAILED&&(s3=null),s3===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(s2=[s2,s3],s1=s2)),s1===peg$FAILED&&(peg$c27.test(input.charAt(peg$currPos))?(s1=input.charAt(peg$currPos),peg$currPos++):(s1=peg$FAILED,peg$fail(peg$c28)))),s1!==peg$FAILED&&(peg$savedPos=s0,s1=peg$c29(s1)),s0=s1,s0}function peg$parsearomaticsymbol(){var s0,s1;return s0=peg$currPos,peg$c30.test(input.charAt(peg$currPos))?(s1=input.charAt(peg$currPos),peg$currPos++):(s1=peg$FAILED,peg$fail(peg$c31)),s1!==peg$FAILED&&(peg$savedPos=s0,s1=peg$c6(s1)),s0=s1,s0}function peg$parsewildcard(){var s0,s1;return s0=peg$currPos,42===input.charCodeAt(peg$currPos)?(s1="*",peg$currPos++):(s1=peg$FAILED,peg$fail(peg$c33)),s1!==peg$FAILED&&(peg$savedPos=s0,s1=peg$c34(s1)),s0=s1,s0}function peg$parseelementsymbol(){var s0,s1,s2,s3;return s0=peg$currPos,s1=peg$currPos,peg$c35.test(input.charAt(peg$currPos))?(s2=input.charAt(peg$currPos),peg$currPos++):(s2=peg$FAILED,peg$fail(peg$c36)),s2===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(peg$c37.test(input.charAt(peg$currPos))?(s3=input.charAt(peg$currPos),peg$currPos++):(s3=peg$FAILED,peg$fail(peg$c38)),s3===peg$FAILED&&(s3=null),s3===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(s2=[s2,s3],s1=s2)),s1!==peg$FAILED&&(peg$savedPos=s0,s1=peg$c39(s1)),s0=s1,s0}function peg$parsering(){var s0,s1,s2,s3,s4;return s0=peg$currPos,s1=peg$currPos,37===input.charCodeAt(peg$currPos)?(s2="%",peg$currPos++):(s2=peg$FAILED,peg$fail(peg$c41)),s2===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(peg$c42.test(input.charAt(peg$currPos))?(s3=input.charAt(peg$currPos),peg$currPos++):(s3=peg$FAILED,peg$fail(peg$c43)),s3===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(peg$c44.test(input.charAt(peg$currPos))?(s4=input.charAt(peg$currPos),peg$currPos++):(s4=peg$FAILED,peg$fail(peg$c45)),s4===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(s2=[s2,s3,s4],s1=s2))),s1===peg$FAILED&&(peg$c44.test(input.charAt(peg$currPos))?(s1=input.charAt(peg$currPos),peg$currPos++):(s1=peg$FAILED,peg$fail(peg$c45))),s1!==peg$FAILED&&(peg$savedPos=s0,s1=peg$c46(s1)),s0=s1,s0}function peg$parsechiral(){var s0,s1,s2,s3,s4,s5,s6;return s0=peg$currPos,s1=peg$currPos,64===input.charCodeAt(peg$currPos)?(s2="@",peg$currPos++):(s2=peg$FAILED,peg$fail(peg$c48)),s2===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(64===input.charCodeAt(peg$currPos)?(s3="@",peg$currPos++):(s3=peg$FAILED,peg$fail(peg$c48)),s3===peg$FAILED&&(s3=peg$currPos,"TH"===input.substr(peg$currPos,2)?(s4="TH",peg$currPos+=2):(s4=peg$FAILED,peg$fail(peg$c50)),s4===peg$FAILED?(peg$currPos=s3,s3=peg$FAILED):(peg$c51.test(input.charAt(peg$currPos))?(s5=input.charAt(peg$currPos),peg$currPos++):(s5=peg$FAILED,peg$fail(peg$c52)),s5===peg$FAILED?(peg$currPos=s3,s3=peg$FAILED):(s4=[s4,s5],s3=s4)),s3===peg$FAILED&&(s3=peg$currPos,"AL"===input.substr(peg$currPos,2)?(s4="AL",peg$currPos+=2):(s4=peg$FAILED,peg$fail(peg$c54)),s4===peg$FAILED?(peg$currPos=s3,s3=peg$FAILED):(peg$c51.test(input.charAt(peg$currPos))?(s5=input.charAt(peg$currPos),peg$currPos++):(s5=peg$FAILED,peg$fail(peg$c52)),s5===peg$FAILED?(peg$currPos=s3,s3=peg$FAILED):(s4=[s4,s5],s3=s4)),s3===peg$FAILED&&(s3=peg$currPos,"SP"===input.substr(peg$currPos,2)?(s4="SP",peg$currPos+=2):(s4=peg$FAILED,peg$fail(peg$c56)),s4===peg$FAILED?(peg$currPos=s3,s3=peg$FAILED):(peg$c57.test(input.charAt(peg$currPos))?(s5=input.charAt(peg$currPos),peg$currPos++):(s5=peg$FAILED,peg$fail(peg$c58)),s5===peg$FAILED?(peg$currPos=s3,s3=peg$FAILED):(s4=[s4,s5],s3=s4)),s3===peg$FAILED&&(s3=peg$currPos,"TB"===input.substr(peg$currPos,2)?(s4="TB",peg$currPos+=2):(s4=peg$FAILED,peg$fail(peg$c60)),s4===peg$FAILED?(peg$currPos=s3,s3=peg$FAILED):(peg$c42.test(input.charAt(peg$currPos))?(s5=input.charAt(peg$currPos),peg$currPos++):(s5=peg$FAILED,peg$fail(peg$c43)),s5===peg$FAILED?(peg$currPos=s3,s3=peg$FAILED):(peg$c44.test(input.charAt(peg$currPos))?(s6=input.charAt(peg$currPos),peg$currPos++):(s6=peg$FAILED,peg$fail(peg$c45)),s6===peg$FAILED&&(s6=null),s6===peg$FAILED?(peg$currPos=s3,s3=peg$FAILED):(s4=[s4,s5,s6],s3=s4))),s3===peg$FAILED&&(s3=peg$currPos,"OH"===input.substr(peg$currPos,2)?(s4="OH",peg$currPos+=2):(s4=peg$FAILED,peg$fail(peg$c62)),s4===peg$FAILED?(peg$currPos=s3,s3=peg$FAILED):(peg$c42.test(input.charAt(peg$currPos))?(s5=input.charAt(peg$currPos),peg$currPos++):(s5=peg$FAILED,peg$fail(peg$c43)),s5===peg$FAILED?(peg$currPos=s3,s3=peg$FAILED):(peg$c44.test(input.charAt(peg$currPos))?(s6=input.charAt(peg$currPos),peg$currPos++):(s6=peg$FAILED,peg$fail(peg$c45)),s6===peg$FAILED&&(s6=null),s6===peg$FAILED?(peg$currPos=s3,s3=peg$FAILED):(s4=[s4,s5,s6],s3=s4)))))))),s3===peg$FAILED&&(s3=null),s3===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(s2=[s2,s3],s1=s2)),s1!==peg$FAILED&&(peg$savedPos=s0,s1=peg$c63(s1)),s0=s1,s0}function peg$parsecharge(){var s0,s1;return s0=peg$currPos,s1=peg$parseposcharge(),s1===peg$FAILED&&(s1=peg$parsenegcharge()),s1!==peg$FAILED&&(peg$savedPos=s0,s1=peg$c64(s1)),s0=s1,s0}function peg$parseposcharge(){var s0,s1,s2,s3,s4,s5;return s0=peg$currPos,s1=peg$currPos,43===input.charCodeAt(peg$currPos)?(s2="+",peg$currPos++):(s2=peg$FAILED,peg$fail(peg$c66)),s2===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(43===input.charCodeAt(peg$currPos)?(s3="+",peg$currPos++):(s3=peg$FAILED,peg$fail(peg$c66)),s3===peg$FAILED&&(s3=peg$currPos,peg$c42.test(input.charAt(peg$currPos))?(s4=input.charAt(peg$currPos),peg$currPos++):(s4=peg$FAILED,peg$fail(peg$c43)),s4===peg$FAILED?(peg$currPos=s3,s3=peg$FAILED):(peg$c44.test(input.charAt(peg$currPos))?(s5=input.charAt(peg$currPos),peg$currPos++):(s5=peg$FAILED,peg$fail(peg$c45)),s5===peg$FAILED&&(s5=null),s5===peg$FAILED?(peg$currPos=s3,s3=peg$FAILED):(s4=[s4,s5],s3=s4))),s3===peg$FAILED&&(s3=null),s3===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(s2=[s2,s3],s1=s2)),s1!==peg$FAILED&&(peg$savedPos=s0,s1=peg$c67(s1)),s0=s1,s0}function peg$parsenegcharge(){var s0,s1,s2,s3,s4,s5;return s0=peg$currPos,s1=peg$currPos,45===input.charCodeAt(peg$currPos)?(s2="-",peg$currPos++):(s2=peg$FAILED,peg$fail(peg$c69)),s2===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(45===input.charCodeAt(peg$currPos)?(s3="-",peg$currPos++):(s3=peg$FAILED,peg$fail(peg$c69)),s3===peg$FAILED&&(s3=peg$currPos,peg$c42.test(input.charAt(peg$currPos))?(s4=input.charAt(peg$currPos),peg$currPos++):(s4=peg$FAILED,peg$fail(peg$c43)),s4===peg$FAILED?(peg$currPos=s3,s3=peg$FAILED):(peg$c44.test(input.charAt(peg$currPos))?(s5=input.charAt(peg$currPos),peg$currPos++):(s5=peg$FAILED,peg$fail(peg$c45)),s5===peg$FAILED&&(s5=null),s5===peg$FAILED?(peg$currPos=s3,s3=peg$FAILED):(s4=[s4,s5],s3=s4))),s3===peg$FAILED&&(s3=null),s3===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(s2=[s2,s3],s1=s2)),s1!==peg$FAILED&&(peg$savedPos=s0,s1=peg$c70(s1)),s0=s1,s0}function peg$parsehcount(){var s0,s1,s2,s3;return s0=peg$currPos,s1=peg$currPos,72===input.charCodeAt(peg$currPos)?(s2="H",peg$currPos++):(s2=peg$FAILED,peg$fail(peg$c72)),s2===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(peg$c44.test(input.charAt(peg$currPos))?(s3=input.charAt(peg$currPos),peg$currPos++):(s3=peg$FAILED,peg$fail(peg$c45)),s3===peg$FAILED&&(s3=null),s3===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(s2=[s2,s3],s1=s2)),s1!==peg$FAILED&&(peg$savedPos=s0,s1=peg$c73(s1)),s0=s1,s0}function peg$parseclass(){var s0,s1,s2,s3,s4,s5,s6;if(s0=peg$currPos,s1=peg$currPos,58===input.charCodeAt(peg$currPos)?(s2=":",peg$currPos++):(s2=peg$FAILED,peg$fail(peg$c75)),s2!==peg$FAILED){if(s3=peg$currPos,peg$c42.test(input.charAt(peg$currPos))?(s4=input.charAt(peg$currPos),peg$currPos++):(s4=peg$FAILED,peg$fail(peg$c43)),s4!==peg$FAILED){for(s5=[],peg$c44.test(input.charAt(peg$currPos))?(s6=input.charAt(peg$currPos),peg$currPos++):(s6=peg$FAILED,peg$fail(peg$c45));s6!==peg$FAILED;)s5.push(s6),peg$c44.test(input.charAt(peg$currPos))?(s6=input.charAt(peg$currPos),peg$currPos++):(s6=peg$FAILED,peg$fail(peg$c45));s5===peg$FAILED?(peg$currPos=s3,s3=peg$FAILED):(s4=[s4,s5],s3=s4)}else peg$currPos=s3,s3=peg$FAILED;s3===peg$FAILED&&(peg$c76.test(input.charAt(peg$currPos))?(s3=input.charAt(peg$currPos),peg$currPos++):(s3=peg$FAILED,peg$fail(peg$c77))),s3===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(s2=[s2,s3],s1=s2)}else peg$currPos=s1,s1=peg$FAILED;return s1!==peg$FAILED&&(peg$savedPos=s0,s1=peg$c78(s1)),s0=s1,s0}function peg$parseisotope(){var s0,s1,s2,s3,s4;return s0=peg$currPos,s1=peg$currPos,peg$c42.test(input.charAt(peg$currPos))?(s2=input.charAt(peg$currPos),peg$currPos++):(s2=peg$FAILED,peg$fail(peg$c43)),s2===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(peg$c44.test(input.charAt(peg$currPos))?(s3=input.charAt(peg$currPos),peg$currPos++):(s3=peg$FAILED,peg$fail(peg$c45)),s3===peg$FAILED&&(s3=null),s3===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(peg$c44.test(input.charAt(peg$currPos))?(s4=input.charAt(peg$currPos),peg$currPos++):(s4=peg$FAILED,peg$fail(peg$c45)),s4===peg$FAILED&&(s4=null),s4===peg$FAILED?(peg$currPos=s1,s1=peg$FAILED):(s2=[s2,s3,s4],s1=s2))),s1!==peg$FAILED&&(peg$savedPos=s0,s1=peg$c79(s1)),s0=s1,s0}options=void 0===options?{}:options;var nOpenParentheses=input.split("(").length-1,nCloseParentheses=input.split(")").length-1;if(nOpenParentheses!==nCloseParentheses)throw peg$buildSimpleError("The number of opening parentheses does not match the number of closing parentheses.",0);var peg$FAILED={},peg$startRuleFunctions={chain:peg$parsechain},peg$startRuleFunction=peg$parsechain,peg$c0=function(s){for(var branches=[],rings=[],i=0;i\n"}let colors=function(img){for(var colors={},data=img.data,len=data.length,w=img.width,h=img.height,x=0,y=0,i=0,color;i"+paths+"";var dummyDiv=document.createElement("div");return dummyDiv.innerHTML=output,dummyDiv.firstChild}},{}],17:[function(require,module){"use strict";const Parser=require("./Parser");module.exports=class{constructor(reactionSmiles){this.reactantsSmiles=[],this.reagentsSmiles=[],this.productsSmiles=[],this.reactantsWeights=[],this.reagentsWeights=[],this.productsWeights=[],this.reactants=[],this.reagents=[],this.products=[];let parts=reactionSmiles.split(">");if(3!==parts.length)throw new Error("Invalid reaction SMILES. Did you add fewer than or more than two '>'?");""!==parts[0]&&(this.reactantsSmiles=parts[0].split(".")),""!==parts[1]&&(this.reagentsSmiles=parts[1].split(".")),""!==parts[2]&&(this.productsSmiles=parts[2].split("."));for(var i=0;imax&&(max=weights.reactants[i][j]);if(weights.hasOwnProperty("reagents"))for(let i=0;imax&&(max=weights.reagents[i][j]);if(weights.hasOwnProperty("products"))for(let i=0;imax&&(max=weights.products[i][j]);let abs_max=_Mathmax4(_Mathabs4(min),_Mathabs4(max));if(0===abs_max&&(abs_max=1),weights.hasOwnProperty("reactants"))for(let i=0;ii&&(reactantWeights=weights.reactants[i]);let reactantSvg=document.createElementNS("http://www.w3.org/2000/svg","svg");this.drawer.draw(reaction.reactants[i],reactantSvg,themeName,reactantWeights,infoOnly,[],this.opts.weights.normalize);let element={width:reactantSvg.viewBox.baseVal.width*this.opts.scale,height:reactantSvg.viewBox.baseVal.height*this.opts.scale,svg:reactantSvg};elements.push(element),element.height>maxHeight&&(maxHeight=element.height)}elements.push({width:this.opts.arrow.length*this.opts.scale,height:2*this.opts.arrow.headSize*this.opts.scale,svg:this.getArrow()});let reagentsText="";for(var i=0;ii&&(productWeights=weights.products[i]);let productSvg=document.createElementNS("http://www.w3.org/2000/svg","svg");this.drawer.draw(reaction.products[i],productSvg,themeName,productWeights,infoOnly,[],this.opts.weights.normalize);let element={width:productSvg.viewBox.baseVal.width*this.opts.scale,height:productSvg.viewBox.baseVal.height*this.opts.scale,svg:productSvg};elements.push(element),element.height>maxHeight&&(maxHeight=element.height)}let totalWidth=0;return elements.forEach(element=>{let offsetX=element.offsetX??0,offsetY=element.offsetY??0;element.svg.setAttributeNS(null,"x",_Mathround3(totalWidth+offsetX)),element.svg.setAttributeNS(null,"y",_Mathround3((maxHeight-element.height)/2+offsetY)),element.svg.setAttributeNS(null,"width",_Mathround3(element.width)),element.svg.setAttributeNS(null,"height",_Mathround3(element.height)),svg.appendChild(element.svg),"relative"!==element.position&&(totalWidth+=_Mathround3(element.width+this.opts.spacing+offsetX))}),svg.setAttributeNS(null,"viewBox",`0 0 ${totalWidth} ${maxHeight}`),svg.style.width=totalWidth+"px",svg.style.height=maxHeight+"px",svg}getPlus(){let s=this.opts.plus.size,w=this.opts.plus.thickness,svg=document.createElementNS("http://www.w3.org/2000/svg","svg"),rect_h=document.createElementNS("http://www.w3.org/2000/svg","rect"),rect_v=document.createElementNS("http://www.w3.org/2000/svg","rect");return svg.setAttributeNS(null,"id","plus"),rect_h.setAttributeNS(null,"x",0),rect_h.setAttributeNS(null,"y",s/2-w/2),rect_h.setAttributeNS(null,"width",s),rect_h.setAttributeNS(null,"height",w),rect_h.setAttributeNS(null,"fill",this.themeManager.getColor("C")),rect_v.setAttributeNS(null,"x",s/2-w/2),rect_v.setAttributeNS(null,"y",0),rect_v.setAttributeNS(null,"width",w),rect_v.setAttributeNS(null,"height",s),rect_v.setAttributeNS(null,"fill",this.themeManager.getColor("C")),svg.appendChild(rect_h),svg.appendChild(rect_v),svg.setAttributeNS(null,"viewBox",`0 0 ${s} ${s}`),svg}getArrowhead(){let s=this.opts.arrow.headSize,marker=document.createElementNS("http://www.w3.org/2000/svg","marker"),polygon=document.createElementNS("http://www.w3.org/2000/svg","polygon");return marker.setAttributeNS(null,"id","arrowhead"),marker.setAttributeNS(null,"viewBox",`0 0 ${s} ${s}`),marker.setAttributeNS(null,"markerUnits","userSpaceOnUse"),marker.setAttributeNS(null,"markerWidth",s),marker.setAttributeNS(null,"markerHeight",s),marker.setAttributeNS(null,"refX",0),marker.setAttributeNS(null,"refY",s/2),marker.setAttributeNS(null,"orient","auto"),marker.setAttributeNS(null,"fill",this.themeManager.getColor("C")),polygon.setAttributeNS(null,"points",`0 0, ${s} ${s/2}, 0 ${s}`),marker.appendChild(polygon),marker}getCDArrowhead(){let s=this.opts.arrow.headSize,sw=s*(7/4.5),marker=document.createElementNS("http://www.w3.org/2000/svg","marker"),path=document.createElementNS("http://www.w3.org/2000/svg","path");return marker.setAttributeNS(null,"id","arrowhead"),marker.setAttributeNS(null,"viewBox",`0 0 ${sw} ${s}`),marker.setAttributeNS(null,"markerUnits","userSpaceOnUse"),marker.setAttributeNS(null,"markerWidth",2*sw),marker.setAttributeNS(null,"markerHeight",2*s),marker.setAttributeNS(null,"refX",2.2),marker.setAttributeNS(null,"refY",2.2),marker.setAttributeNS(null,"orient","auto"),marker.setAttributeNS(null,"fill",this.themeManager.getColor("C")),path.setAttributeNS(null,"style","fill-rule:nonzero;"),path.setAttributeNS(null,"d","m 0 0 l 7 2.25 l -7 2.25 c 0 0 0.735 -1.084 0.735 -2.28 c 0 -1.196 -0.735 -2.22 -0.735 -2.22 z"),marker.appendChild(path),marker}getArrow(){let s=this.opts.arrow.headSize,l=this.opts.arrow.length,svg=document.createElementNS("http://www.w3.org/2000/svg","svg"),defs=document.createElementNS("http://www.w3.org/2000/svg","defs"),line=document.createElementNS("http://www.w3.org/2000/svg","line");return defs.appendChild(this.getCDArrowhead()),svg.appendChild(defs),svg.setAttributeNS(null,"id","arrow"),line.setAttributeNS(null,"x1",0),line.setAttributeNS(null,"y1",-this.opts.arrow.thickness/2),line.setAttributeNS(null,"x2",l),line.setAttributeNS(null,"y2",-this.opts.arrow.thickness/2),line.setAttributeNS(null,"stroke-width",this.opts.arrow.thickness),line.setAttributeNS(null,"stroke",this.themeManager.getColor("C")),line.setAttributeNS(null,"marker-end","url(#arrowhead)"),svg.appendChild(line),svg.setAttributeNS(null,"viewBox",`0 ${-s/2} ${l+s*(7/4.5)} ${s}`),svg}}},{"./FormulaToCommonName":9,"./Options":14,"./SvgDrawer":24,"./SvgWrapper":25,"./ThemeManager":26}],19:[function(require,module){"use strict";const Reaction=require("./Reaction");module.exports=class{static parse(reactionSmiles){let reaction=new Reaction(reactionSmiles);return reaction}}},{"./Reaction":17}],20:[function(require,module){"use strict";const ArrayHelper=require("./ArrayHelper"),Vector2=require("./Vector2"),Vertex=require("./Vertex"),RingConnection=require("./RingConnection");class Ring{constructor(members){this.id=null,this.members=members,this.edges=[],this.insiders=[],this.neighbours=[],this.positioned=!1,this.center=new Vector2(0,0),this.rings=[],this.isBridged=!1,this.isPartOfBridged=!1,this.isSpiro=!1,this.isFused=!1,this.centralAngle=0,this.canFlip=!0}clone(){let clone=new Ring(this.members);return clone.id=this.id,clone.insiders=ArrayHelper.clone(this.insiders),clone.neighbours=ArrayHelper.clone(this.neighbours),clone.positioned=this.positioned,clone.center=this.center.clone(),clone.rings=ArrayHelper.clone(this.rings),clone.isBridged=this.isBridged,clone.isPartOfBridged=this.isPartOfBridged,clone.isSpiro=this.isSpiro,clone.isFused=this.isFused,clone.centralAngle=this.centralAngle,clone.canFlip=this.canFlip,clone}getSize(){return this.members.length}getPolygon(vertices){let polygon=[];for(let i=0;imax;){let prev=current;callback(prev),current=vertices[current].getNextInRing(vertices,this.id,previousVertexId),previousVertexId=prev,current==startVertexId&&(current=null),max++}}getOrderedNeighbours(ringConnections){let orderedNeighbours=Array(this.neighbours.length);for(let i=0,vertices;inewPathLength){var l,m,n;if(previousPathLength===newPathLength+1)for(pe_prime[i][j]=[pe[i][j].length],l=pe[i][j].length;l--;)for(pe_prime[i][j][l]=[pe[i][j][l].length],m=pe[i][j][l].length;m--;)for(pe_prime[i][j][l][m]=[pe[i][j][l][m].length],n=pe[i][j][l][m].length;n--;)pe_prime[i][j][l][m][n]=[pe[i][j][l][m][0],pe[i][j][l][m][1]];else pe_prime[i][j]=[];for(d[i][j]=newPathLength,pe[i][j]=[[]],l=pe[i][k][0].length;l--;)pe[i][j][0].push(pe[i][k][0][l]);for(l=pe[k][j][0].length;l--;)pe[i][j][0].push(pe[k][j][0][l])}else if(previousPathLength===newPathLength){if(pe[i][k].length&&pe[k][j].length){var l;if(pe[i][j].length){let tmp=[];for(l=pe[i][k][0].length;l--;)tmp.push(pe[i][k][0][l]);for(l=pe[k][j][0].length;l--;)tmp.push(pe[k][j][0][l]);pe[i][j].push(tmp)}else{let tmp=[];for(l=pe[i][k][0].length;l--;)tmp.push(pe[i][k][0][l]);for(l=pe[k][j][0].length;l--;)tmp.push(pe[k][j][0][l]);pe[i][j][0]=tmp}}}else if(previousPathLength===newPathLength-1){var l;if(pe_prime[i][j].length){let tmp=[];for(l=pe[i][k][0].length;l--;)tmp.push(pe[i][k][0][l]);for(l=pe[k][j][0].length;l--;)tmp.push(pe[k][j][0][l]);pe_prime[i][j].push(tmp)}else{let tmp=[];for(l=pe[i][k][0].length;l--;)tmp.push(pe[i][k][0][l]);for(l=pe[k][j][0].length;l--;)tmp.push(pe[k][j][0][l]);pe_prime[i][j][0]=tmp}}}return{d:d,pe:pe,pe_prime:pe_prime}}static getRingCandidates(d,pe,pe_prime){let length=d.length,candidates=[],c=0;for(let i=0;insssr)return cSssr}else for(let j=0,bonds;jnsssr)return cSssr}return cSssr}static getEdgeCount(adjacencyMatrix){let edgeCount=0,length=adjacencyMatrix.length;for(var i=length-1;i--;)for(var j=length;j--;)1===adjacencyMatrix[i][j]&&edgeCount++;return edgeCount}static getEdgeList(adjacencyMatrix){let length=adjacencyMatrix.length,edgeList=[];for(var i=length-1;i--;)for(var j=length;j--;)1===adjacencyMatrix[i][j]&&edgeList.push([i,j]);return edgeList}static bondsToAtoms(bonds){let atoms=new Set;for(var i=bonds.length;i--;)atoms.add(bonds[i][0]),atoms.add(bonds[i][1]);return atoms}static getBondCount(atoms,adjacencyMatrix){let count=0;for(let u of atoms)for(let v of atoms)u!==v&&(count+=adjacencyMatrix[u][v]);return count/2}static pathSetsContain(pathSets,pathSet,bonds,allBonds,arrBondCount,arrRingCount){for(var i=pathSets.length;i--;){if(SSSR.isSupersetOf(pathSet,pathSets[i]))return!0;if(pathSets[i].size===pathSet.size&&SSSR.areSetsEqual(pathSets[i],pathSet))return!0}let count=0,allContained=!1;for(i=bonds.length;i--;)for(var j=allBonds.length;j--;)(bonds[i][0]===allBonds[j][0]&&bonds[i][1]===allBonds[j][1]||bonds[i][1]===allBonds[j][0]&&bonds[i][0]===allBonds[j][1])&&count++,count===bonds.length&&(allContained=!0);let specialCase=!1;if(allContained)for(let element of pathSet)if(arrRingCount[element]{let smiles=element.getAttribute(attribute);if(null===smiles)throw Error("No SMILES provided.");let currentTheme=theme,weights=null;if(element.hasAttribute("data-smiles-theme")&&(currentTheme=element.getAttribute("data-smiles-theme")),element.hasAttribute("data-smiles-weights")&&(weights=element.getAttribute("data-smiles-weights").split(",").map(parseFloat)),(element.hasAttribute("data-smiles-reactant-weights")||element.hasAttribute("data-smiles-reagent-weights")||element.hasAttribute("data-smiles-product-weights"))&&(weights={reactants:[],reagents:[],products:[]},element.hasAttribute("data-smiles-reactant-weights")&&(weights.reactants=element.getAttribute("data-smiles-reactant-weights").split(";").map(v=>v.split(",").map(parseFloat))),element.hasAttribute("data-smiles-reagent-weights")&&(weights.reagents=element.getAttribute("data-smiles-reagent-weights").split(";").map(v=>v.split(",").map(parseFloat))),element.hasAttribute("data-smiles-product-weights")&&(weights.products=element.getAttribute("data-smiles-product-weights").split(";").map(v=>v.split(",").map(parseFloat)))),element.hasAttribute("data-smiles-options")||element.hasAttribute("data-smiles-reaction-options")){let moleculeOptions={};element.hasAttribute("data-smiles-options")&&(moleculeOptions=JSON.parse(element.getAttribute("data-smiles-options").replaceAll("'","\"")));let reactionOptions={};element.hasAttribute("data-smiles-reaction-options")&&(reactionOptions=JSON.parse(element.getAttribute("data-smiles-reaction-options").replaceAll("'","\"")));let smilesDrawer=new SmilesDrawer(moleculeOptions,reactionOptions);smilesDrawer.draw(smiles,element,currentTheme,successCallback,errorCallback,weights)}else this.draw(smiles,element,currentTheme,successCallback,errorCallback,weights)})}draw(smiles,target,theme="light",successCallback=null,errorCallback=null,weights=null){let rest=[];[smiles,...rest]=smiles.split(" ");let info=rest.join(" "),settings={};if(info.includes("__")){let settingsString=info.substring(info.indexOf("__")+2,info.lastIndexOf("__"));settings=JSON.parse(settingsString.replaceAll("'","\""))}if(settings=Options.extend(!0,{textAboveArrow:"{reagents}",textBelowArrow:""},settings),smiles.includes(">"))try{this.drawReaction(smiles,target,theme,settings,weights,successCallback)}catch(err){errorCallback?errorCallback(err):console.error(err)}else try{this.drawMolecule(smiles,target,theme,weights,successCallback)}catch(err){errorCallback?errorCallback(err):console.error(err)}}drawMolecule(smiles,target,theme,weights,callback){let parseTree=Parser.parse(smiles);if(null===target||"svg"===target){let svg=this.drawer.draw(parseTree,null,theme,weights),dims=this.getDimensions(svg);svg.setAttributeNS(null,"width",""+dims.w),svg.setAttributeNS(null,"height",""+dims.h),callback&&callback(svg)}else if("canvas"===target){let canvas=this.svgToCanvas(this.drawer.draw(parseTree,null,theme,weights));callback&&callback(canvas)}else if("img"===target){let img=this.svgToImg(this.drawer.draw(parseTree,null,theme,weights));callback&&callback(img)}else if(target instanceof HTMLImageElement)this.svgToImg(this.drawer.draw(parseTree,null,theme,weights),target),callback&&callback(target);else if(target instanceof SVGElement)this.drawer.draw(parseTree,target,theme,weights),callback&&callback(target);else{let elements=document.querySelectorAll(target);elements.forEach(element=>{let tag=element.nodeName.toLowerCase();"svg"===tag?(this.drawer.draw(parseTree,element,theme,weights),callback&&callback(element)):"canvas"===tag?(this.svgToCanvas(this.drawer.draw(parseTree,null,theme,weights),element),callback&&callback(element)):"img"===tag&&(this.svgToImg(this.drawer.draw(parseTree,null,theme,weights),element),callback&&callback(element))})}}drawReaction(smiles,target,theme,settings,weights,callback){let reaction=ReactionParser.parse(smiles);if(null===target||"svg"===target){let svg=this.reactionDrawer.draw(reaction,null,theme),dims=this.getDimensions(svg);svg.setAttributeNS(null,"width",""+dims.w),svg.setAttributeNS(null,"height",""+dims.h),callback&&callback(svg)}else if("canvas"===target){let canvas=this.svgToCanvas(this.reactionDrawer.draw(reaction,null,theme,weights,settings.textAboveArrow,settings.textBelowArrow));callback&&callback(canvas)}else if("img"===target){let img=this.svgToImg(this.reactionDrawer.draw(reaction,null,theme,weights,settings.textAboveArrow,settings.textBelowArrow));callback&&callback(img)}else if(target instanceof HTMLImageElement)this.svgToImg(this.reactionDrawer.draw(reaction,null,theme,weights,settings.textAboveArrow,settings.textBelowArrow),target),callback&&callback(target);else if(target instanceof SVGElement)this.reactionDrawer.draw(reaction,target,theme,weights,settings.textAboveArrow,settings.textBelowArrow),callback&&callback(target);else{let elements=document.querySelectorAll(target);elements.forEach(element=>{let tag=element.nodeName.toLowerCase();"svg"===tag?(this.reactionDrawer.draw(reaction,element,theme,weights,settings.textAboveArrow,settings.textBelowArrow),0>=this.reactionDrawer.opts.scale&&(element.style.width=null,element.style.height=null),callback&&callback(element)):"canvas"===tag?(this.svgToCanvas(this.reactionDrawer.draw(reaction,null,theme,weights,settings.textAboveArrow,settings.textBelowArrow),element),callback&&callback(element)):"img"===tag&&(this.svgToImg(this.reactionDrawer.draw(reaction,null,theme,weights,settings.textAboveArrow,settings.textBelowArrow),element),callback&&callback(element))})}}svgToCanvas(svg,canvas=null){null===canvas&&(canvas=document.createElement("canvas"));let dims=this.getDimensions(canvas,svg);return SvgWrapper.svgToCanvas(svg,canvas,dims.w,dims.h),canvas}svgToImg(svg,img=null){null===img&&(img=document.createElement("img"));let dims=this.getDimensions(img,svg);return SvgWrapper.svgToImg(svg,img,dims.w,dims.h),img}getDimensions(element,svg=null){let w=this.drawer.opts.width,h=this.drawer.opts.height;return 0>=this.drawer.opts.scale?(null===w&&(w=element.width),null===h&&(h=element.height),""!==element.style.width&&(w=parseInt(element.style.width)),""!==element.style.height&&(h=parseInt(element.style.height))):svg&&(w=parseFloat(svg.style.width),h=parseFloat(svg.style.height)),{w:w,h:h}}}module.exports=SmilesDrawer},{"./Drawer":6,"./Options":14,"./Parser":15,"./ReactionDrawer":18,"./ReactionParser":19,"./SvgDrawer":24,"./SvgWrapper":25}],24:[function(require,module){"use strict";var _MathPI4=Math.PI,_Mathabs5=Math.abs;const ArrayHelper=require("./ArrayHelper"),Atom=require("./Atom"),DrawerBase=require("./DrawerBase"),Graph=require("./Graph"),Line=require("./Line"),SvgWrapper=require("./SvgWrapper"),ThemeManager=require("./ThemeManager"),Vector2=require("./Vector2"),GaussDrawer=require("./GaussDrawer");module.exports=class{constructor(options,clear=!0){this.preprocessor=new DrawerBase(options),this.opts=this.preprocessor.opts,this.clear=clear,this.svgWrapper=null}draw(data,target,themeName="light",weights=null,infoOnly=!1,highlight_atoms=[],weightsNormalized=!1){null===target||"svg"===target?(target=document.createElementNS("http://www.w3.org/2000/svg","svg"),target.setAttribute("xmlns","http://www.w3.org/2000/svg"),target.setAttribute("xmlns:xlink","http://www.w3.org/1999/xlink"),target.setAttributeNS(null,"width",this.opts.width),target.setAttributeNS(null,"height",this.opts.height)):target instanceof String&&(target=document.getElementById(target));let optionBackup={padding:this.opts.padding,compactDrawing:this.opts.compactDrawing};null!==weights&&(this.opts.padding+=this.opts.weights.additionalPadding,this.opts.compactDrawing=!1);let preprocessor=this.preprocessor;return preprocessor.initDraw(data,themeName,infoOnly,highlight_atoms),infoOnly||(this.themeManager=new ThemeManager(this.opts.themes,themeName),(null===this.svgWrapper||this.clear)&&(this.svgWrapper=new SvgWrapper(this.themeManager,target,this.opts,this.clear))),preprocessor.processGraph(),this.svgWrapper.determineDimensions(preprocessor.graph.vertices),this.drawAtomHighlights(preprocessor.opts.debug),this.drawEdges(preprocessor.opts.debug),this.drawVertices(preprocessor.opts.debug),null!==weights&&this.drawWeights(weights,weightsNormalized),preprocessor.opts.debug&&(console.log(preprocessor.graph),console.log(preprocessor.rings),console.log(preprocessor.ringConnections)),this.svgWrapper.constructSvg(),null!==weights&&(this.opts.padding=optionBackup.padding,this.opts.compactDrawing=optionBackup.padding),target}drawCanvas(data,target,themeName="light",infoOnly=!1){let canvas=null;canvas="string"==typeof target||target instanceof String?document.getElementById(target):target;let svg=document.createElementNS("http://www.w3.org/2000/svg","svg");return svg.setAttribute("xmlns","http://www.w3.org/2000/svg"),svg.setAttributeNS(null,"viewBox","0 0 500 500"),svg.setAttributeNS(null,"width","500"),svg.setAttributeNS(null,"height","500"),svg.setAttributeNS(null,"style","visibility: hidden: position: absolute; left: -1000px"),document.body.appendChild(svg),this.svgDrawer.draw(data,svg,themeName,infoOnly),this.svgDrawer.svgWrapper.toCanvas(canvas,this.svgDrawer.opts.width,this.svgDrawer.opts.height),document.body.removeChild(svg),target}drawAromaticityRing(ring){let svgWrapper=this.svgWrapper;svgWrapper.drawRing(ring.center.x,ring.center.y,ring.getSize())}drawEdges(debug){let preprocessor=this.preprocessor,graph=preprocessor.graph,rings=preprocessor.rings,drawn=Array(this.preprocessor.graph.edges.length);if(drawn.fill(!1),graph.traverseBF(0,vertex=>{let edges=graph.getEdges(vertex.id);for(var i=0;is.sideCount[1]||s.totalSideCount[0]>s.totalSideCount[1]){this.multiplyNormals(normals,opts.bondSpacing);let line=new Line(Vector2.add(a,normals[0]),Vector2.add(b,normals[0]),elementA,elementB);line.shorten(opts.bondLength-opts.shortBondLength*opts.bondLength),svgWrapper.drawLine(line),svgWrapper.drawLine(new Line(a,b,elementA,elementB))}else if(s.sideCount[0]graph.vertices.length&&(isCarbon=!1),"N"===atom.element&&atom.isPartOfAromaticRing&&(hydrogens=0),atom.bracket&&(hydrogens=atom.bracket.hcount,charge=atom.bracket.charge,isotope=atom.bracket.isotope),"allballs"===opts.atomVisualization)svgWrapper.drawBall(vertex.position.x,vertex.position.y,element);else if(atom.isDrawn&&(!isCarbon||atom.drawExplicit||isTerminal||atom.hasAttachedPseudoElements)||1===graph.vertices.length){if("default"===opts.atomVisualization){let attachedPseudoElements=atom.getAttachedPseudoElements();atom.hasAttachedPseudoElements&&graph.vertices.length===Object.keys(attachedPseudoElements).length+1&&(dir="right"),svgWrapper.drawText(vertex.position.x,vertex.position.y,element,hydrogens,dir,isTerminal,charge,isotope,graph.vertices.length,attachedPseudoElements)}else"balls"===opts.atomVisualization&&svgWrapper.drawBall(vertex.position.x,vertex.position.y,element);}else if(2===vertex.getNeighbourCount()&&!0==vertex.forcePositioned){let a=graph.vertices[vertex.neighbours[0]].position,b=graph.vertices[vertex.neighbours[1]].position,angle=Vector2.threePointangle(vertex.position,a,b);.1>_Mathabs5(_MathPI4-angle)&&svgWrapper.drawPoint(vertex.position.x,vertex.position.y,element)}if(debug){let value="v: "+vertex.id+" "+ArrayHelper.print(atom.ringbonds);svgWrapper.drawDebugText(vertex.position.x,vertex.position.y,value)}}if(opts.debug)for(var i=0;i0===w)){if(weights.length!==this.preprocessor.graph.atomIdxToVertexId.length)throw new Error("The number of weights supplied must be equal to the number of (heavy) atoms in the molecule.");let points=[];for(const atomIdx of this.preprocessor.graph.atomIdxToVertexId){let vertex=this.preprocessor.graph.vertices[atomIdx];points.push(new Vector2(vertex.position.x-this.svgWrapper.minX,vertex.position.y-this.svgWrapper.minY))}let gd=new GaussDrawer(points,weights,this.svgWrapper.drawingWidth,this.svgWrapper.drawingHeight,this.opts.weights.sigma,this.opts.weights.interval,this.opts.weights.colormap,this.opts.weights.opacity,weightsNormalized);gd.draw(),this.svgWrapper.addLayer(gd.getSVG())}}getTotalOverlapScore(){return this.preprocessor.getTotalOverlapScore()}getMolecularFormula(graph=null){return this.preprocessor.getMolecularFormula(graph)}multiplyNormals(normals,spacing){normals[0].multiplyScalar(spacing),normals[1].multiplyScalar(spacing)}}},{"./ArrayHelper":3,"./Atom":4,"./DrawerBase":7,"./GaussDrawer":10,"./Graph":11,"./Line":12,"./SvgWrapper":25,"./ThemeManager":26,"./Vector2":28}],25:[function(require,module){"use strict";var _NumberMAX_SAFE_INTEGER3=Number.MAX_SAFE_INTEGER,_NumberMAX_VALUE3=Number.MAX_VALUE,_Mathabs6=Math.abs;function makeid(length){for(var result="",characters="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",charactersLength=characters.length,i=0;in?SvgWrapper.createUnicodeSuperscript(n)+"\u207B":""}determineDimensions(vertices){for(var i=0;ip.x&&(this.minX=p.x),this.minY>p.y&&(this.minY=p.y)}let padding=this.opts.padding;this.maxX+=padding,this.maxY+=padding,this.minX-=padding,this.minY-=padding,this.drawingWidth=this.maxX-this.minX,this.drawingHeight=this.maxY-this.minY}updateViewbox(scale){let x=this.minX,y=this.minY,width=this.maxX-this.minX,height=this.maxY-this.minY;if(!(0>=scale))this.svg&&(this.svg.style.width=scale*width+"px",this.svg.style.height=scale*height+"px");else if(width>height){let diff=width-height;height=width,y-=diff/2}else{let diff=height-width;width=height,x-=diff/2}this.svg.setAttributeNS(null,"viewBox",`${x} ${y} ${width} ${height}`)}drawBall(x,y,elementName){let r=this.opts.bondLength/4.5;x-rthis.maxX&&(this.maxX=x+r),y-rthis.maxY&&(this.maxY=y+r);let ball=document.createElementNS("http://www.w3.org/2000/svg","circle");ball.setAttributeNS(null,"cx",x),ball.setAttributeNS(null,"cy",y),ball.setAttributeNS(null,"r",r),ball.setAttributeNS(null,"fill",this.themeManager.getColor(elementName)),this.vertices.push(ball)}drawWedge(line){let l=line.getLeftVector().clone(),r=line.getRightVector().clone(),normals=Vector2.normals(l,r);normals[0].normalize(),normals[1].normalize();let isRightChiralCenter=line.getRightChiral(),start=l,end=r;isRightChiralCenter&&(start=r,end=l);let t=Vector2.add(start,Vector2.multiplyScalar(normals[0],this.halfBondThickness)),u=Vector2.add(end,Vector2.multiplyScalar(normals[0],3+this.opts.fontSizeLarge/4)),v=Vector2.add(end,Vector2.multiplyScalar(normals[1],3+this.opts.fontSizeLarge/4)),w=Vector2.add(start,Vector2.multiplyScalar(normals[1],this.halfBondThickness)),polygon=document.createElementNS("http://www.w3.org/2000/svg","polygon"),gradient=this.createGradient(line,l.x,l.y,r.x,r.y);polygon.setAttributeNS(null,"points",`${t.x},${t.y} ${u.x},${u.y} ${v.x},${v.y} ${w.x},${w.y}`),polygon.setAttributeNS(null,"fill",`url('#${gradient}')`),this.paths.push(polygon)}drawAtomHighlight(x,y,color="#03fc9d"){let ball=document.createElementNS("http://www.w3.org/2000/svg","circle");ball.setAttributeNS(null,"cx",x),ball.setAttributeNS(null,"cy",y),ball.setAttributeNS(null,"r",this.opts.bondLength/3),ball.setAttributeNS(null,"fill",color),this.highlights.push(ball)}drawDashedWedge(line){if(isNaN(line.from.x)||isNaN(line.from.y)||isNaN(line.to.x)||isNaN(line.to.y))return;let l=line.getLeftVector().clone(),r=line.getRightVector().clone(),normals=Vector2.normals(l,r);normals[0].normalize(),normals[1].normalize();let isRightChiralCenter=line.getRightChiral(),start,end;isRightChiralCenter?(start=r,end=l):(start=l,end=r);let dir=Vector2.subtract(end,start).normalize(),length=line.getLength(),step=1.25/(length/(this.opts.bondLength/10)),gradient=this.createGradient(line);for(let t=0;1>t;t+=step){let to=Vector2.multiplyScalar(dir,t*length),startDash=Vector2.add(start,to),width=this.opts.fontSizeLarge/2*t,dashOffset=Vector2.multiplyScalar(normals[0],width);startDash.subtract(dashOffset);let endDash=startDash.clone();endDash.add(Vector2.multiplyScalar(dashOffset,2)),this.drawLine(new Line(startDash,endDash),null,gradient)}}drawDebugPoint(x,y,debugText="",color="#f00"){let point=document.createElementNS("http://www.w3.org/2000/svg","circle");point.setAttributeNS(null,"cx",x),point.setAttributeNS(null,"cy",y),point.setAttributeNS(null,"r","2"),point.setAttributeNS(null,"fill","#f00"),this.vertices.push(point),this.drawDebugText(x,y,debugText)}drawDebugText(x,y,text){let textElem=document.createElementNS("http://www.w3.org/2000/svg","text");textElem.setAttributeNS(null,"x",x),textElem.setAttributeNS(null,"y",y),textElem.setAttributeNS(null,"class","debug"),textElem.setAttributeNS(null,"fill","#ff0000"),textElem.setAttributeNS(null,"style",` + font: 5px Droid Sans, sans-serif; + `),textElem.appendChild(document.createTextNode(text)),this.vertices.push(textElem)}drawRing(x,y,s){let circleElem=document.createElementNS("http://www.w3.org/2000/svg","circle"),radius=MathHelper.apothemFromSideLength(this.opts.bondLength,s);circleElem.setAttributeNS(null,"cx",x),circleElem.setAttributeNS(null,"cy",y),circleElem.setAttributeNS(null,"r",radius-this.opts.bondSpacing),circleElem.setAttributeNS(null,"stroke",this.themeManager.getColor("C")),circleElem.setAttributeNS(null,"stroke-width",this.opts.bondThickness),circleElem.setAttributeNS(null,"fill","none"),this.paths.push(circleElem)}drawLine(line,dashed=!1,gradient=null,linecap="round"){let opts=this.opts,stylesArr=[["stroke-width",this.opts.bondThickness],["stroke-linecap",linecap],["stroke-dasharray",dashed?"5, 5":"none"]],l=line.getLeftVector(),r=line.getRightVector(),fromX=l.x,fromY=l.y,toX=r.x,toY=r.y,styles=stylesArr.map(sub=>sub.join(":")).join(";"),lineElem=document.createElementNS("http://www.w3.org/2000/svg","line");lineElem.setAttributeNS(null,"x1",fromX),lineElem.setAttributeNS(null,"y1",fromY),lineElem.setAttributeNS(null,"x2",toX),lineElem.setAttributeNS(null,"y2",toY),lineElem.setAttributeNS(null,"style",styles),this.paths.push(lineElem),null==gradient&&(gradient=this.createGradient(line,fromX,fromY,toX,toY)),lineElem.setAttributeNS(null,"stroke",`url('#${gradient}')`)}drawPoint(x,y,elementName){let r=.75;x-rthis.maxX&&(this.maxX=x+r),y-rthis.maxY&&(this.maxY=y+r);let mask=document.createElementNS("http://www.w3.org/2000/svg","circle");mask.setAttributeNS(null,"cx",x),mask.setAttributeNS(null,"cy",y),mask.setAttributeNS(null,"r","1.5"),mask.setAttributeNS(null,"fill","black"),this.maskElements.push(mask);let point=document.createElementNS("http://www.w3.org/2000/svg","circle");point.setAttributeNS(null,"cx",x),point.setAttributeNS(null,"cy",y),point.setAttributeNS(null,"r",r),point.setAttributeNS(null,"fill",this.themeManager.getColor(elementName)),this.vertices.push(point)}drawText(x,y,elementName,hydrogens,direction,isTerminal,charge,isotope,totalVertices,attachedPseudoElement={}){let text=[],display=elementName;for(let key in 0!==charge&&null!==charge&&(display+=SvgWrapper.createUnicodeCharge(charge)),0!==isotope&&null!==isotope&&(display=SvgWrapper.createUnicodeSuperscript(isotope)+display),text.push([display,elementName]),1===hydrogens?text.push(["H","H"]):1this.maxX&&(this.maxX=x+bbox.width*text.length),x-bbox.width/2this.maxY&&(this.maxY=y+bbox.height)):("right"===direction?"left"!=direction&&(x+bbox.width*text.length>this.maxX&&(this.maxX=x+bbox.width*text.length),x-bbox.width/2this.maxX&&(this.maxX=x+bbox.width*text.length),x-bbox.width*text.lengththis.maxY&&(this.maxY=y+bbox.height),"down"===direction&&y+.8*bbox.height*text.length>this.maxY&&(this.maxY=y+.8*bbox.height*text.length),"up"===direction&&y-.8*bbox.height*text.length{const display=part[0],elementName=part[1];let tspanElem=document.createElementNS("http://www.w3.org/2000/svg","tspan");tspanElem.setAttributeNS(null,"fill",this.themeManager.getColor(elementName)),tspanElem.textContent=display,("up"===direction||"down"===direction)&&(tspanElem.setAttributeNS(null,"x","0px"),"up"===direction?tspanElem.setAttributeNS(null,"y",`-${.9*i}em`):tspanElem.setAttributeNS(null,"y",`${.9*i}em`)),textElem.appendChild(tspanElem)}),textElem.setAttributeNS(null,"data-direction",direction),"left"===direction||"right"===direction?(textElem.setAttributeNS(null,"dominant-baseline","alphabetic"),textElem.setAttributeNS(null,"y","0.36em")):textElem.setAttributeNS(null,"dominant-baseline","central"),"left"===direction&&textElem.setAttributeNS(null,"text-anchor","end"),g.appendChild(textElem),g.setAttributeNS(null,"style",`transform: translateX(${x}px) translateY(${y}px)`);let maskRadius=.75*this.opts.fontSizeLarge;1{result+=["\u2080","\u2081","\u2082","\u2083","\u2084","\u2085","\u2086","\u2087","\u2088","\u2089"][parseInt(d)]}),result}static createUnicodeSuperscript(n){let result="";return n.toString().split("").forEach(d=>{let parsed=parseInt(d);parsed&&(result+=["\u2070","\xB9","\xB2","\xB3","\u2074","\u2075","\u2076","\u2077","\u2078","\u2079"][parseInt(d)])}),result}static replaceNumbersWithSubscript(text){let subscriptNumbers={0:"\u2080",1:"\u2081",2:"\u2082",3:"\u2083",4:"\u2084",5:"\u2085",6:"\u2086",7:"\u2087",8:"\u2088",9:"\u2089"};for(const[key,value]of Object.entries(subscriptNumbers))text=text.replaceAll(key,value);return text}static measureText(text,fontSize,fontFamily,lineHeight=.9){const element=document.createElement("canvas"),ctx=element.getContext("2d");ctx.font=`${fontSize}pt ${fontFamily}`;let textMetrics=ctx.measureText(text),compWidth=_Mathabs6(textMetrics.actualBoundingBoxLeft)+_Mathabs6(textMetrics.actualBoundingBoxRight);return{width:textMetrics.width>compWidth?textMetrics.width:compWidth,height:(_Mathabs6(textMetrics.actualBoundingBoxAscent)+_Mathabs6(textMetrics.actualBoundingBoxAscent))*lineHeight}}static svgToCanvas(svg,canvas,width,height,callback=null){svg.setAttributeNS(null,"width",width),svg.setAttributeNS(null,"height",height);let image=new Image;return image.onload=function(){canvas.width=width,canvas.height=height;let context=canvas.getContext("2d");context.imageSmoothingEnabled=!1,context.drawImage(image,0,0,width,height),callback&&callback(canvas)},image.onerror=function(err){console.log(err)},image.src="data:image/svg+xml;charset-utf-8,"+encodeURIComponent(svg.outerHTML),canvas}static svgToImg(svg,img,width,height){let canvas=document.createElement("canvas");this.svgToCanvas(svg,canvas,width,height,()=>{img.src=canvas.toDataURL("image/png")})}static writeText(text,themeManager,fontSize,fontFamily,maxWidth=_NumberMAX_SAFE_INTEGER3){let svg=document.createElementNS("http://www.w3.org/2000/svg","svg"),style=document.createElementNS("http://www.w3.org/2000/svg","style");style.appendChild(document.createTextNode(` + .text { + font: ${fontSize}pt ${fontFamily}; + dominant-baseline: ideographic; + } + `)),svg.appendChild(style);let textElem=document.createElementNS("http://www.w3.org/2000/svg","text");textElem.setAttributeNS(null,"class","text");let maxLineWidth=0,totalHeight=0,lines=[];return text.split("\n").forEach(line=>{let dims=SvgWrapper.measureText(line,fontSize,fontFamily,1);if(dims.width>=maxWidth){let totalWordsWidth=0,maxWordsHeight=0,words=line.split(" "),offset=0;for(let i=0,wordDims;imaxWidth&&(lines.push({text:words.slice(offset,i).join(" "),width:totalWordsWidth,height:maxWordsHeight}),totalWordsWidth=0,maxWordsHeight=0,offset=i),wordDims.height>maxWordsHeight&&(maxWordsHeight=wordDims.height),totalWordsWidth+=wordDims.width;offset{totalHeight+=line.height;let tspanElem=document.createElementNS("http://www.w3.org/2000/svg","tspan");tspanElem.setAttributeNS(null,"fill",themeManager.getColor("C")),tspanElem.textContent=line.text,tspanElem.setAttributeNS(null,"x","0px"),tspanElem.setAttributeNS(null,"y",`${totalHeight}px`),textElem.appendChild(tspanElem),line.width>maxLineWidth&&(maxLineWidth=line.width)}),svg.appendChild(textElem),{svg:svg,width:maxLineWidth,height:totalHeight}}}module.exports=SvgWrapper},{"./Line":12,"./MathHelper":13,"./UtilityFunctions":27,"./Vector2":28}],26:[function(require,module){"use strict";module.exports=class{constructor(colors,theme){this.colors=colors,this.theme=this.colors[theme]}getColor(key){return key&&(key=key.toUpperCase(),key in this.theme)?this.theme[key]:this.theme.C}setTheme(theme){this.colors.hasOwnProperty(theme)&&(this.theme=this.colors[theme])}}},{}],27:[function(require,module){"use strict";module.exports={getChargeText:function(charge){return 1===charge?"+":2===charge?"2+":-1===charge?"-":-2===charge?"2-":""}}},{}],28:[function(require,module){"use strict";var _Mathsin5=Math.sin,_Mathcos5=Math.cos,_Mathacos=Math.acos,_Mathsqrt4=Math.sqrt;class Vector2{constructor(x,y){0==arguments.length?(this.x=0,this.y=0):1==arguments.length?(this.x=x.x,this.y=x.y):(this.x=x,this.y=y)}clone(){return new Vector2(this.x,this.y)}toString(){return"("+this.x+","+this.y+")"}add(vec){return this.x+=vec.x,this.y+=vec.y,this}subtract(vec){return this.x-=vec.x,this.y-=vec.y,this}divide(scalar){return this.x/=scalar,this.y/=scalar,this}multiply(v){return this.x*=v.x,this.y*=v.y,this}multiplyScalar(scalar){return this.x*=scalar,this.y*=scalar,this}invert(){return this.x=-this.x,this.y=-this.y,this}angle(){return Math.atan2(this.y,this.x)}distance(vec){return _Mathsqrt4((vec.x-this.x)*(vec.x-this.x)+(vec.y-this.y)*(vec.y-this.y))}distanceSq(vec){return(vec.x-this.x)*(vec.x-this.x)+(vec.y-this.y)*(vec.y-this.y)}clockwise(vec){let a=this.y*vec.x,b=this.x*vec.y;if(a>b)return-1;return a===b?0:1}relativeClockwise(center,vec){let a=(this.y-center.y)*(vec.x-center.x),b=(this.x-center.x)*(vec.y-center.y);if(a>b)return-1;return a===b?0:1}rotate(angle){let tmp=new Vector2(0,0),cosAngle=_Mathcos5(angle),sinAngle=_Mathsin5(angle);return tmp.x=this.x*cosAngle-this.y*sinAngle,tmp.y=this.x*sinAngle+this.y*cosAngle,this.x=tmp.x,this.y=tmp.y,this}rotateAround(angle,vec){let s=_Mathsin5(angle),c=_Mathcos5(angle);this.x-=vec.x,this.y-=vec.y;let x=this.x*c-this.y*s,y=this.x*s+this.y*c;return this.x=x+vec.x,this.y=y+vec.y,this}rotateTo(vec,center,offsetAngle=0){this.x+=.001,this.y-=.001;let a=Vector2.subtract(this,center),b=Vector2.subtract(vec,center),angle=Vector2.angle(b,a);return this.rotateAround(angle+offsetAngle,center),this}rotateAwayFrom(vec,center,angle){this.rotateAround(angle,center);let distSqA=this.distanceSq(vec);this.rotateAround(-2*angle,center);let distSqB=this.distanceSq(vec);distSqBdistSqA?angle:-angle}getRotateToAngle(vec,center){let a=Vector2.subtract(this,center),b=Vector2.subtract(vec,center),angle=Vector2.angle(b,a);return Number.isNaN(angle)?0:angle}isInPolygon(polygon){let inside=!1;for(let i=0,j=polygon.length-1;ithis.y!=polygon[j].y>this.y&&this.x<(polygon[j].x-polygon[i].x)*(this.y-polygon[i].y)/(polygon[j].y-polygon[i].y)+polygon[i].x&&(inside=!inside);return inside}length(){return _Mathsqrt4(this.x*this.x+this.y*this.y)}lengthSq(){return this.x*this.x+this.y*this.y}normalize(){return this.divide(this.length()),this}normalized(){return Vector2.divideScalar(this,this.length())}whichSide(vecA,vecB){return(this.x-vecA.x)*(vecB.y-vecA.y)-(this.y-vecA.y)*(vecB.x-vecA.x)}sameSideAs(vecA,vecB,vecC){let d=this.whichSide(vecA,vecB),dRef=vecC.whichSide(vecA,vecB);return 0>d&&0>dRef||0==d&&0==dRef||0this.neighbours.length?index=2:index=3),null===this.value.bracket.hcount&&0===ringbondIndex&&(index=1),null===this.value.bracket.hcount&&1===ringbondIndex&&(3>this.neighbours.length?index=1:index=2),this.neighbours.splice(index,0,vertexId)}else this.neighbours.push(vertexId);this.neighbourCount++}setParentVertexId(parentVertexId){this.neighbourCount++,this.parentVertexId=parentVertexId,this.neighbours.push(parentVertexId)}isTerminal(){return!!this.value.hasAttachedPseudoElements||null===this.parentVertexId&&2>this.children.length||0===this.children.length}clone(){let clone=new Vertex(this.value,this.position.x,this.position.y);return clone.id=this.id,clone.previousPosition=new Vector2(this.previousPosition.x,this.previousPosition.y),clone.parentVertexId=this.parentVertexId,clone.children=ArrayHelper.clone(this.children),clone.spanningTreeChildren=ArrayHelper.clone(this.spanningTreeChildren),clone.edges=ArrayHelper.clone(this.edges),clone.positioned=this.positioned,clone.angle=this.angle,clone.forcePositioned=this.forcePositioned,clone}equals(vertex){return this.id===vertex.id}getAngle(referenceVector=null,returnAsDegrees=!1){let u=null;return u=referenceVector?Vector2.subtract(this.position,referenceVector):Vector2.subtract(this.position,this.previousPosition),returnAsDegrees?MathHelper.toDeg(u.angle()):u.angle()}getTextDirection(vertices,onlyHorizontal=!1){let neighbours=this.getDrawnNeighbours(vertices),angles=[];if(1===vertices.length)return"right";for(let i=0;i void; + /** 为 element 中的代码块添加复制按钮 */ + static codeRender: (element: HTMLElement, option?: IHljs) => void; + /** 对 graphviz 进行渲染 */ + static graphvizRender: (element: HTMLElement, cdn?: string) => void; + /** 为 element 中的代码块进行高亮渲染 */ + static highlightRender: (hljsOption?: IHljs, element?: HTMLElement | Document, cdn?: string) => void; + /** 对数学公式进行渲染 */ + static mathRender: (element?: HTMLElement | Document, options?: { + cdn?: string; + math?: IMath; + }) => void; + /** 流程图/时序图/甘特图渲染 */ + static mermaidRender: (element: HTMLElement | Document, cdn: string, theme: string) => void; + /** 化学物质结构渲染 */ + static SMILESRender: (element: HTMLElement | Document, cdn: string, theme: string) => void; + /** 支持 markdown 的思维导图 */ + static markmapRender: (element?: HTMLElement | Document, cdn?: string) => void; + /** flowchart.js 渲染 */ + static flowchartRender: (element: HTMLElement, cdn?: string) => void; + /** 图表渲染 */ + static chartRender: (element: HTMLElement | Document, cdn: string, theme: string) => void; + /** 五线谱渲染 */ + static abcRender: (element?: HTMLElement | Document, cdn?: string) => void; + /** 脑图渲染 */ + static mindmapRender: (element: HTMLElement | Document, cdn: string, theme: string) => void; + /** plantuml渲染 */ + static plantumlRender: (element?: HTMLElement | Document, cdn?: string) => void; + /** 大纲渲染 */ + static outlineRender: (contentElement: HTMLElement, targetElement: Element, vditor?: IVditor) => string; + /** 为[特定链接](https://github.com/Vanessa219/vditor/issues/7)分别渲染为视频、音频、嵌入的 iframe */ + static mediaRender: (element: HTMLElement) => void; + /** 对选中的文字进行阅读 */ + static speechRender: (element: HTMLElement, lang?: keyof II18n) => void; + /** 对图片进行懒加载 */ + static lazyLoadImageRender: (element?: HTMLElement | Document) => boolean; + /** Markdown 文本转换为 HTML,该方法需使用[异步编程](https://ld246.com/article/1546828434083?r=Vaness) */ + static md2html: (mdText: string, options?: IPreviewOptions) => Promise; + /** 页面 Markdown 文章渲染 */ + static preview: (previewElement: HTMLDivElement, markdown: string, options?: IPreviewOptions) => Promise; + /** 设置代码主题 */ + static setCodeTheme: (codeTheme: string, cdn?: string) => void; + /** 设置内容主题 */ + static setContentTheme: (contentTheme: string, path: string) => void; +} +export default Vditor; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/method.js b/src/main/resources/static/articles/vditor@3.11.1/dist/method.js new file mode 100644 index 0000000..f60384e --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/method.js @@ -0,0 +1,2667 @@ +/*! + * Vditor v3.11.1 - A markdown editor written in TypeScript. + * + * MIT License + * + * Copyright (c) 2018-present B3log 开源, b3log.org + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ +(function webpackUniversalModuleDefinition(root, factory) { + if(typeof exports === 'object' && typeof module === 'object') + module.exports = factory(); + else if(typeof define === 'function' && define.amd) + define([], factory); + else if(typeof exports === 'object') + exports["Vditor"] = factory(); + else + root["Vditor"] = factory(); +})(this, function() { +return /******/ (() => { // webpackBootstrap +/******/ "use strict"; +/******/ var __webpack_modules__ = ({ + +/***/ 145: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "g": () => (/* binding */ Constants) +/* harmony export */ }); +/* unused harmony export VDITOR_VERSION */ +var _VDITOR_VERSION = (/* unused pure expression or super */ null && ("3.11.1")); + +var Constants = /** @class */ (function () { + function Constants() { + } + Constants.ZWSP = "\u200b"; + Constants.DROP_EDITOR = "application/editor"; + Constants.MOBILE_WIDTH = 520; + Constants.CLASS_MENU_DISABLED = "vditor-menu--disabled"; + Constants.EDIT_TOOLBARS = ["emoji", "headings", "bold", "italic", "strike", "link", "list", + "ordered-list", "outdent", "indent", "check", "line", "quote", "code", "inline-code", "insert-after", + "insert-before", "upload", "record", "table"]; + Constants.CODE_THEME = ["a11y-dark", "agate", "an-old-hope", "androidstudio", + "arta", "atom-one-dark", "atom-one-dark-reasonable", "base16/3024", "base16/apathy", "base16/apprentice", "base16/ashes", "base16/atelier-cave", "base16/atelier-dune", + "base16/atelier-estuary", "base16/atelier-forest", "base16/atelier-heath", "base16/atelier-lakeside", "base16/atelier-plateau", "base16/atelier-savanna", "base16/atelier-seaside", "base16/atelier-sulphurpool", + "base16/atlas", "base16/bespin", "base16/black-metal", "base16/black-metal-bathory", "base16/black-metal-burzum", "base16/black-metal-dark-funeral", "base16/black-metal-gorgoroth", "base16/black-metal-immortal", "base16/black-metal-khold", "base16/black-metal-marduk", "base16/black-metal-mayhem", "base16/black-metal-nile", "base16/black-metal-venom", "base16/brewer", "base16/bright", "base16/brogrammer", + "base16/brush-trees-dark", "base16/chalk", "base16/circus", "base16/classic-dark", "base16/codeschool", "base16/colors", "base16/danqing", "base16/darcula", "base16/dark-violet", + "base16/darkmoss", "base16/darktooth", "base16/decaf", "base16/default-dark", "base16/dracula", "base16/edge-dark", "base16/eighties", "base16/embers", "base16/equilibrium-dark", + "base16/equilibrium-gray-dark", "base16/espresso", "base16/eva", "base16/eva-dim", "base16/flat", "base16/framer", "base16/gigavolt", "base16/google-dark", "base16/grayscale-dark", "base16/green-screen", "base16/gruvbox-dark-hard", "base16/gruvbox-dark-medium", + "base16/gruvbox-dark-pale", "base16/gruvbox-dark-soft", "base16/hardcore", "base16/harmonic16-dark", "base16/heetch-dark", "base16/helios", "base16/hopscotch", "base16/horizon-dark", "base16/humanoid-dark", "base16/ia-dark", "base16/icy-dark", "base16/ir-black", "base16/isotope", + "base16/kimber", "base16/london-tube", "base16/macintosh", "base16/marrakesh", "base16/materia", "base16/material", "base16/material-darker", "base16/material-palenight", "base16/material-vivid", + "base16/mellow-purple", "base16/mocha", "base16/monokai", "base16/nebula", "base16/nord", "base16/nova", "base16/ocean", "base16/oceanicnext", "base16/onedark", "base16/outrun-dark", + "base16/papercolor-dark", "base16/paraiso", "base16/pasque", "base16/phd", "base16/pico", "base16/pop", "base16/porple", "base16/qualia", "base16/railscasts", "base16/rebecca", + "base16/ros-pine", "base16/ros-pine-moon", "base16/sandcastle", "base16/seti-ui", "base16/silk-dark", "base16/snazzy", "base16/solar-flare", "base16/solarized-dark", "base16/spacemacs", "base16/summercamp", "base16/summerfruit-dark", + "base16/synth-midnight-terminal-dark", "base16/tango", "base16/tender", "base16/tomorrow-night", "base16/twilight", "base16/unikitty-dark", "base16/vulcan", + "base16/windows-10", "base16/windows-95", "base16/windows-high-contrast", "base16/windows-nt", "base16/woodland", "base16/xcode-dusk", "base16/zenburn", "codepen-embed", "dark", + "devibeans", "far", "felipec", "github-dark", "github-dark-dimmed", "gml", "gradient-dark", "hybrid", "ir-black", "isbl-editor-dark", "kimbie-dark", "lioshi", + "monokai", "monokai-sublime", "night-owl", "nnfx-dark", "nord", "obsidian", "panda-syntax-dark", "paraiso-dark", "pojoaque", "qtcreator-dark", "rainbow", "shades-of-purple", "srcery", "stackoverflow-dark", + "sunburst", "tomorrow-night-blue", "tomorrow-night-bright", "tokyo-night-dark", "vs2015", "xt256", + "ant-design", + "a11y-light", "arduino-light", "ascetic", "atom-one-light", "base16/atelier-cave-light", + "base16/atelier-dune-light", "base16/atelier-estuary-light", "base16/atelier-forest-light", "base16/atelier-heath-light", + "base16/atelier-lakeside-light", "base16/atelier-plateau-light", "base16/atelier-savanna-light", "base16/atelier-seaside-light", "base16/atelier-sulphurpool-light", "base16/brush-trees", + "base16/classic-light", "base16/cupcake", "base16/cupertino", "base16/default-light", "base16/dirtysea", "base16/edge-light", "base16/equilibrium-gray-light", "base16/equilibrium-light", + "base16/fruit-soda", "base16/github", "base16/google-light", "base16/grayscale-light", "base16/gruvbox-light-hard", "base16/gruvbox-light-medium", "base16/gruvbox-light-soft", + "base16/harmonic16-light", "base16/heetch-light", "base16/humanoid-light", "base16/horizon-light", "base16/ia-light", "base16/material-lighter", "base16/mexico-light", + "base16/one-light", "base16/papercolor-light", "base16/ros-pine-dawn", "base16/sagelight", "base16/shapeshifter", + "base16/silk-light", "base16/solar-flare-light", "base16/solarized-light", "base16/summerfruit-light", "base16/synth-midnight-terminal-light", "base16/tomorrow", + "base16/unikitty-light", "base16/windows-10-light", "base16/windows-95-light", "base16/windows-high-contrast-light", "brown-paper", "base16/windows-nt-light", + "color-brewer", "docco", "foundation", "github", "googlecode", "gradient-light", "grayscale", "idea", "intellij-light", "isbl-editor-light", "kimbie-light", + "lightfair", "magula", "mono-blue", "nnfx-light", "panda-syntax-light", "paraiso-light", "purebasic", "qtcreator-light", "routeros", "school-book", + "stackoverflow-light", "tokyo-night-light", "vs", "xcode", "default"]; + Constants.ALIAS_CODE_LANGUAGES = [ + // 自定义 + "abc", "plantuml", "mermaid", "flowchart", "echarts", "mindmap", "graphviz", "math", "markmap", "smiles", + // 别名 + "js", "ts", "html", "toml", "c#", "bat" + ]; + Constants.CDN = "https://unpkg.com/vditor@".concat("3.11.1"); + Constants.MARKDOWN_OPTIONS = { + autoSpace: false, + gfmAutoLink: true, + codeBlockPreview: true, + fixTermTypo: false, + footnotes: true, + linkBase: "", + linkPrefix: "", + listStyle: false, + mark: false, + mathBlockPreview: true, + paragraphBeginningSpace: false, + sanitize: true, + toc: false, + }; + Constants.HLJS_OPTIONS = { + enable: true, + lineNumber: false, + defaultLang: "", + style: "github", + }; + Constants.MATH_OPTIONS = { + engine: "KaTeX", + inlineDigit: false, + macros: {}, + }; + Constants.THEME_OPTIONS = { + current: "light", + list: { + "ant-design": "Ant Design", + "dark": "Dark", + "light": "Light", + "wechat": "WeChat", + }, + path: "".concat(Constants.CDN, "/dist/css/content-theme"), + }; + return Constants; +}()); + + + +/***/ }), + +/***/ 825: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "J": () => (/* binding */ SMILESRender) +/* harmony export */ }); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); +/* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(413); +/* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(840); +/* harmony import */ var _util_function__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(494); + + + + +var SMILESRender = function (element, cdn, theme) { + if (element === void 0) { element = document; } + if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; } + var SMILESElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.SMILESRenderAdapter.getElements(element); + if (SMILESElements.length > 0) { + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/smiles-drawer/smiles-drawer.min.js?v=2.1.7"), "vditorAbcjsScript").then(function () { + var sd = new SmiDrawer({}, {}); + SMILESElements.forEach(function (item) { + var code = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.SMILESRenderAdapter.getCode(item).trim(); + if (item.getAttribute("data-processed") === "true" || code.trim() === "") { + return; + } + var id = "smiles" + (0,_util_function__WEBPACK_IMPORTED_MODULE_3__/* .genUUID */ .Wb)(); + item.innerHTML = ""); + sd.draw(code, '#' + id, theme === "dark" ? "dark" : undefined); + item.setAttribute("data-processed", "true"); + }); + }); + } +}; + + +/***/ }), + +/***/ 135: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "Q": () => (/* binding */ abcRender) +/* harmony export */ }); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); +/* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(413); +/* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(840); + + + +var abcRender = function (element, cdn) { + if (element === void 0) { element = document; } + if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; } + var abcElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.abcRenderAdapter.getElements(element); + if (abcElements.length > 0) { + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/abcjs/abcjs_basic.min.js"), "vditorAbcjsScript").then(function () { + abcElements.forEach(function (item) { + if (item.parentElement.classList.contains("vditor-wysiwyg__pre") || + item.parentElement.classList.contains("vditor-ir__marker--pre")) { + return; + } + if (item.getAttribute("data-processed") === "true") { + return; + } + ABCJS.renderAbc(item, _adapterRender__WEBPACK_IMPORTED_MODULE_1__.abcRenderAdapter.getCode(item).trim()); + item.style.overflowX = "auto"; + item.setAttribute("data-processed", "true"); + }); + }); + } +}; + + +/***/ }), + +/***/ 840: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "mathRenderAdapter": () => (/* binding */ mathRenderAdapter), +/* harmony export */ "SMILESRenderAdapter": () => (/* binding */ SMILESRenderAdapter), +/* harmony export */ "mermaidRenderAdapter": () => (/* binding */ mermaidRenderAdapter), +/* harmony export */ "markmapRenderAdapter": () => (/* binding */ markmapRenderAdapter), +/* harmony export */ "mindmapRenderAdapter": () => (/* binding */ mindmapRenderAdapter), +/* harmony export */ "chartRenderAdapter": () => (/* binding */ chartRenderAdapter), +/* harmony export */ "abcRenderAdapter": () => (/* binding */ abcRenderAdapter), +/* harmony export */ "graphvizRenderAdapter": () => (/* binding */ graphvizRenderAdapter), +/* harmony export */ "flowchartRenderAdapter": () => (/* binding */ flowchartRenderAdapter), +/* harmony export */ "plantumlRenderAdapter": () => (/* binding */ plantumlRenderAdapter) +/* harmony export */ }); +var mathRenderAdapter = { + getCode: function (el) { return el.textContent; }, + getElements: function (element) { return element.querySelectorAll(".language-math"); }, +}; +var SMILESRenderAdapter = { + getCode: function (el) { return el.textContent; }, + getElements: function (element) { return element.querySelectorAll(".language-smiles"); }, +}; +var mermaidRenderAdapter = { + /** 不仅要返回code,并且需要将 code 设置为 el 的 innerHTML */ + getCode: function (el) { return el.textContent; }, + getElements: function (element) { return element.querySelectorAll(".language-mermaid"); }, +}; +var markmapRenderAdapter = { + getCode: function (el) { return el.textContent; }, + getElements: function (element) { return element.querySelectorAll(".language-markmap"); }, +}; +var mindmapRenderAdapter = { + getCode: function (el) { return el.getAttribute("data-code"); }, + getElements: function (el) { return el.querySelectorAll(".language-mindmap"); }, +}; +var chartRenderAdapter = { + getCode: function (el) { return el.innerText; }, + getElements: function (el) { return el.querySelectorAll(".language-echarts"); }, +}; +var abcRenderAdapter = { + getCode: function (el) { return el.textContent; }, + getElements: function (el) { return el.querySelectorAll(".language-abc"); }, +}; +var graphvizRenderAdapter = { + getCode: function (el) { return el.textContent; }, + getElements: function (el) { return el.querySelectorAll(".language-graphviz"); }, +}; +var flowchartRenderAdapter = { + getCode: function (el) { return el.textContent; }, + getElements: function (el) { return el.querySelectorAll(".language-flowchart"); }, +}; +var plantumlRenderAdapter = { + getCode: function (el) { return el.textContent; }, + getElements: function (el) { return el.querySelectorAll(".language-plantuml"); }, +}; + + +/***/ }), + +/***/ 775: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "p": () => (/* binding */ chartRender) +/* harmony export */ }); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); +/* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(413); +/* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(840); +/* harmony import */ var _util_function__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(494); +var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +}; +var __generator = (undefined && undefined.__generator) || function (thisArg, body) { + var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; + function verb(n) { return function (v) { return step([n, v]); }; } + function step(op) { + if (f) throw new TypeError("Generator is already executing."); + while (g && (g = 0, op[0] && (_ = 0)), _) try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; + if (y = 0, t) op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: case 1: t = op; break; + case 4: _.label++; return { value: op[1], done: false }; + case 5: _.label++; y = op[1]; op = [0]; continue; + case 7: op = _.ops.pop(); _.trys.pop(); continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } + if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } + if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } + if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } + if (t[2]) _.ops.pop(); + _.trys.pop(); continue; + } + op = body.call(thisArg, _); + } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } + if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; + } +}; + + + + +var chartRender = function (element, cdn, theme) { + if (element === void 0) { element = document; } + if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; } + var echartsElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.chartRenderAdapter.getElements(element); + if (echartsElements.length > 0) { + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/echarts/echarts.min.js?v=5.5.1"), "vditorEchartsScript").then(function () { + echartsElements.forEach(function (e) { return __awaiter(void 0, void 0, void 0, function () { + var text, option, error_1; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + if (e.parentElement.classList.contains("vditor-wysiwyg__pre") || + e.parentElement.classList.contains("vditor-ir__marker--pre")) { + return [2 /*return*/]; + } + text = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.chartRenderAdapter.getCode(e).trim(); + if (!text) { + return [2 /*return*/]; + } + _a.label = 1; + case 1: + _a.trys.push([1, 3, , 4]); + if (e.getAttribute("data-processed") === "true") { + return [2 /*return*/]; + } + return [4 /*yield*/, (0,_util_function__WEBPACK_IMPORTED_MODULE_3__/* .looseJsonParse */ .Qf)(text)]; + case 2: + option = _a.sent(); + echarts.init(e, theme === "dark" ? "dark" : undefined).setOption(option); + e.setAttribute("data-processed", "true"); + return [3 /*break*/, 4]; + case 3: + error_1 = _a.sent(); + e.className = "vditor-reset--error"; + e.innerHTML = "echarts render error:
    ".concat(error_1); + return [3 /*break*/, 4]; + case 4: return [2 /*return*/]; + } + }); + }); }); + }); + } +}; + + +/***/ }), + +/***/ 428: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "O": () => (/* binding */ codeRender) +/* harmony export */ }); +/* harmony import */ var _util_code160to32__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(105); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); + + +var codeRender = function (element, option) { + Array.from(element.querySelectorAll("pre > code")).filter(function (e, index) { + if (e.parentElement.classList.contains("vditor-wysiwyg__pre") || + e.parentElement.classList.contains("vditor-ir__marker--pre")) { + return false; + } + if (e.classList.contains("language-mermaid") || e.classList.contains("language-flowchart") || + e.classList.contains("language-echarts") || e.classList.contains("language-mindmap") || + e.classList.contains("language-plantuml") || e.classList.contains("language-markmap") || + e.classList.contains("language-abc") || e.classList.contains("language-graphviz") || + e.classList.contains("language-math") || e.classList.contains("language-smiles")) { + return false; + } + if (e.style.maxHeight.indexOf("px") > -1) { + return false; + } + // 避免预览区在渲染后由于代码块过多产生性能问题 https://github.com/b3log/vditor/issues/67 + if (element.classList.contains("vditor-preview") && index > 5) { + return false; + } + return true; + }).forEach(function (e) { + var _a, _b, _c; + var codeText = e.innerText; + if (e.classList.contains("highlight-chroma")) { + var codeElement = e.cloneNode(true); + codeElement.querySelectorAll(".highlight-ln").forEach(function (item) { + item.remove(); + }); + codeText = codeElement.innerText; + } + else if (codeText.endsWith("\n")) { + codeText = codeText.substr(0, codeText.length - 1); + } + var iconHTML = ''; + if (!document.getElementById("vditorIconScript")) { + iconHTML = ''; + } + var divElement = document.createElement("div"); + divElement.className = "vditor-copy"; + divElement.innerHTML = "").concat(iconHTML, ""); + var textarea = document.createElement("textarea"); + textarea.value = (0,_util_code160to32__WEBPACK_IMPORTED_MODULE_1__/* .code160to32 */ .X)(codeText); + divElement.insertAdjacentElement("afterbegin", textarea); + if (option && option.renderMenu) { + option.renderMenu(e, divElement); + } + e.before(divElement); + e.style.maxHeight = (window.outerHeight - 40) + "px"; + // https://github.com/Vanessa219/vditor/issues/1356 + e.insertAdjacentHTML("afterend", "".concat(_constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.ZWSP */ .g.ZWSP, "")); + }); +}; + + +/***/ }), + +/***/ 325: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "P": () => (/* binding */ flowchartRender) +/* harmony export */ }); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); +/* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(413); +/* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(840); + + + +var flowchartRender = function (element, cdn) { + if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; } + var flowchartElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.flowchartRenderAdapter.getElements(element); + if (flowchartElements.length === 0) { + return; + } + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/flowchart.js/flowchart.min.js"), "vditorFlowchartScript").then(function () { + flowchartElements.forEach(function (item) { + if (item.getAttribute("data-processed") === "true") { + return; + } + var flowchartObj = flowchart.parse(_adapterRender__WEBPACK_IMPORTED_MODULE_1__.flowchartRenderAdapter.getCode(item)); + item.innerHTML = ""; + flowchartObj.drawSVG(item); + item.setAttribute("data-processed", "true"); + }); + }); +}; + + +/***/ }), + +/***/ 483: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "v": () => (/* binding */ graphvizRender) +/* harmony export */ }); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); +/* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(413); +/* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(840); + + + +var graphvizRender = function (element, cdn) { + if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; } + var graphvizElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.graphvizRenderAdapter.getElements(element); + if (graphvizElements.length === 0) { + return; + } + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/graphviz/viz.js"), "vditorGraphVizScript").then(function () { + graphvizElements.forEach(function (e) { + var code = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.graphvizRenderAdapter.getCode(e); + if (e.parentElement.classList.contains("vditor-wysiwyg__pre") || + e.parentElement.classList.contains("vditor-ir__marker--pre")) { + return; + } + if (e.getAttribute("data-processed") === "true" || code.trim() === "") { + return; + } + try { + var blob = new Blob(["importScripts('".concat(document.getElementById("vditorGraphVizScript").src.replace("viz.js", "full.render.js"), "');")], { type: "application/javascript" }); + var url = window.URL || window.webkitURL; + var blobUrl = url.createObjectURL(blob); + var worker = new Worker(blobUrl); + new Viz({ worker: worker }) + .renderSVGElement(code).then(function (result) { + e.innerHTML = result.outerHTML; + }).catch(function (error) { + e.innerHTML = "graphviz render error:
    ".concat(error); + e.className = "vditor-reset--error"; + }); + } + catch (e) { + console.error("graphviz error", e); + } + e.setAttribute("data-processed", "true"); + }); + }); +}; + + +/***/ }), + +/***/ 999: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "s": () => (/* binding */ highlightRender) +/* harmony export */ }); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); +/* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(413); +/* harmony import */ var _util_addStyle__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(290); + + + +var highlightRender = function (hljsOption, element, cdn) { + if (element === void 0) { element = document; } + if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; } + var style = hljsOption.style; + if (!_constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CODE_THEME.includes */ .g.CODE_THEME.includes(style)) { + style = "github"; + } + var vditorHljsStyle = document.getElementById("vditorHljsStyle"); + var href = "".concat(cdn, "/dist/js/highlight.js/styles/").concat(style, ".min.css"); + if (vditorHljsStyle && vditorHljsStyle.getAttribute('href') !== href) { + vditorHljsStyle.remove(); + } + (0,_util_addStyle__WEBPACK_IMPORTED_MODULE_1__/* .addStyle */ .c)("".concat(cdn, "/dist/js/highlight.js/styles/").concat(style, ".min.css"), "vditorHljsStyle"); + if (hljsOption.enable === false) { + return; + } + var codes = element.querySelectorAll("pre > code"); + if (codes.length === 0) { + return; + } + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/highlight.js/highlight.min.js?v=11.7.0"), "vditorHljsScript").then(function () { + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/highlight.js/third-languages.js?v=1.0.1"), "vditorHljsThirdScript").then(function () { + element.querySelectorAll("pre > code").forEach(function (block) { + // ir & wysiwyg 区域不渲染 + if (block.parentElement.classList.contains("vditor-ir__marker--pre") || + block.parentElement.classList.contains("vditor-wysiwyg__pre")) { + return; + } + if (block.classList.contains("language-mermaid") || block.classList.contains("language-flowchart") || + block.classList.contains("language-echarts") || block.classList.contains("language-mindmap") || + block.classList.contains("language-plantuml") || block.classList.contains("language-smiles") || + block.classList.contains("language-abc") || block.classList.contains("language-graphviz") || + block.classList.contains("language-math")) { + return; + } + if (hljsOption.defaultLang !== "" && block.className.indexOf("language-") === -1) { + block.classList.add("language-" + hljsOption.defaultLang); + } + var language = block.className.replace("language-", ""); + if (!window.hljs.getLanguage(language)) { + language = "plaintext"; + } + block.innerHTML = window.hljs.highlight(block.textContent, { + language: language, + ignoreIllegals: true + }).value; + block.classList.add("hljs"); + if (!hljsOption.lineNumber) { + return; + } + block.classList.add("vditor-linenumber"); + var linenNumberTemp = block.querySelector(".vditor-linenumber__temp"); + if (!linenNumberTemp) { + linenNumberTemp = document.createElement("div"); + linenNumberTemp.className = "vditor-linenumber__temp"; + block.insertAdjacentElement("beforeend", linenNumberTemp); + } + var whiteSpace = getComputedStyle(block).whiteSpace; + var isSoftWrap = false; + if (whiteSpace === "pre-wrap" || whiteSpace === "pre-line") { + isSoftWrap = true; + } + var lineNumberHTML = ""; + var lineList = block.textContent.split(/\r\n|\r|\n/g); + lineList.pop(); + lineList.map(function (line) { + var lineHeight = ""; + if (isSoftWrap) { + linenNumberTemp.textContent = line || "\n"; + lineHeight = " style=\"height:".concat(linenNumberTemp.getBoundingClientRect().height, "px\""); + } + lineNumberHTML += ""); + }); + linenNumberTemp.style.display = "none"; + lineNumberHTML = "".concat(lineNumberHTML, ""); + block.insertAdjacentHTML("beforeend", lineNumberHTML); + }); + }); + }); +}; + + +/***/ }), + +/***/ 11: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "K": () => (/* binding */ markmapRender) +/* harmony export */ }); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); +/* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(413); +/* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(840); + + + +var enabled = {}; +var transform = function (transformer, content) { + var result = transformer.transform(content); + var keys = Object.keys(result.features).filter(function (key) { return !enabled[key]; }); + keys.forEach(function (key) { + enabled[key] = true; + }); + var _a = transformer.getAssets(keys), styles = _a.styles, scripts = _a.scripts; + var markmap = window.markmap; + if (styles) + markmap.loadCSS(styles); + if (scripts) + markmap.loadJS(scripts); + return result; +}; +var init = function (el, code) { + var _a = window.markmap, Transformer = _a.Transformer, Markmap = _a.Markmap, deriveOptions = _a.deriveOptions, globalCSS = _a.globalCSS; + var transformer = new Transformer(); + el.innerHTML = ''; + var svg = el.firstChild; + var mm = Markmap.create(svg, null); + var _b = transform(transformer, code), root = _b.root, frontmatter = _b.frontmatter; + var markmapOptions = frontmatter === null || frontmatter === void 0 ? void 0 : frontmatter.markmap; + var frontmatterOptions = deriveOptions(markmapOptions); + mm.setData(root, frontmatterOptions); + mm.fit(); +}; +var markmapRender = function (element, cdn) { + if (element === void 0) { element = document; } + if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; } + var markmapElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.markmapRenderAdapter.getElements(element); + if (markmapElements.length === 0) { + return; + } + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/markmap/markmap.min.js"), "vditorMarkerScript").then(function () { + markmapElements.forEach(function (item) { + var code = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.markmapRenderAdapter.getCode(item); + if (item.getAttribute("data-processed") === "true" || code.trim() === "") { + return; + } + var render = document.createElement("div"); + render.className = "language-markmap"; + item.parentNode.appendChild(render); + init(render, code); + if (item.parentNode.childNodes[0].nodeName == "CODE") { + item.parentNode.removeChild(item.parentNode.childNodes[0]); + } + }); + }); +}; + + +/***/ }), + +/***/ 472: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "H": () => (/* binding */ mathRender) +/* harmony export */ }); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); +/* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(413); +/* harmony import */ var _util_addStyle__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(290); +/* harmony import */ var _util_code160to32__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(105); +/* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(840); + + + + + +var mathRender = function (element, options) { + if (element === void 0) { element = document; } + var mathElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.mathRenderAdapter.getElements(element); + if (mathElements.length === 0) { + return; + } + var defaultOptions = { + cdn: _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN, + math: { + engine: "KaTeX", + inlineDigit: false, + macros: {}, + }, + }; + if (options && options.math) { + options.math = + Object.assign({}, defaultOptions.math, options.math); + } + options = Object.assign({}, defaultOptions, options); + if (options.math.engine === "KaTeX") { + (0,_util_addStyle__WEBPACK_IMPORTED_MODULE_2__/* .addStyle */ .c)("".concat(options.cdn, "/dist/js/katex/katex.min.css?v=0.16.9"), "vditorKatexStyle"); + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_3__/* .addScript */ .G)("".concat(options.cdn, "/dist/js/katex/katex.min.js?v=0.16.9"), "vditorKatexScript").then(function () { + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_3__/* .addScript */ .G)("".concat(options.cdn, "/dist/js/katex/mhchem.min.js?v=0.16.9"), "vditorKatexChemScript").then(function () { + mathElements.forEach(function (mathElement) { + if (mathElement.parentElement.classList.contains("vditor-wysiwyg__pre") || + mathElement.parentElement.classList.contains("vditor-ir__marker--pre")) { + return; + } + if (mathElement.getAttribute("data-math")) { + return; + } + var math = (0,_util_code160to32__WEBPACK_IMPORTED_MODULE_4__/* .code160to32 */ .X)(_adapterRender__WEBPACK_IMPORTED_MODULE_1__.mathRenderAdapter.getCode(mathElement)); + mathElement.setAttribute("data-math", math); + try { + mathElement.innerHTML = katex.renderToString(math, { + displayMode: mathElement.tagName === "DIV", + output: "html", + macros: options.math.macros, + }); + } + catch (e) { + mathElement.innerHTML = e.message; + mathElement.className = "language-math vditor-reset--error"; + } + mathElement.addEventListener("copy", function (event) { + event.stopPropagation(); + event.preventDefault(); + var vditorMathElement = event.currentTarget.closest(".language-math"); + event.clipboardData.setData("text/html", vditorMathElement.innerHTML); + event.clipboardData.setData("text/plain", vditorMathElement.getAttribute("data-math")); + }); + }); + }); + }); + } + else if (options.math.engine === "MathJax") { + var chainAsync_1 = function (fns) { + if (fns.length === 0) { + return; + } + var curr = 0; + var last = fns[fns.length - 1]; + var next = function () { + var fn = fns[curr++]; + fn === last ? fn() : fn(next); + }; + next(); + }; + if (!window.MathJax) { + window.MathJax = { + loader: { + paths: { mathjax: "".concat(options.cdn, "/dist/js/mathjax") }, + }, + startup: { + typeset: false, + }, + tex: { + macros: options.math.macros, + }, + }; + // https://github.com/Vanessa219/vditor/issues/1453 + Object.assign(window.MathJax, options.math.mathJaxOptions); + } + // 循环加载会抛异常 + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_3__/* .addScriptSync */ .J)("".concat(options.cdn, "/dist/js/mathjax/tex-svg-full.js"), "protyleMathJaxScript"); + var renderMath_1 = function (mathElement, next) { + var math = (0,_util_code160to32__WEBPACK_IMPORTED_MODULE_4__/* .code160to32 */ .X)(mathElement.textContent).trim(); + var mathOptions = window.MathJax.getMetricsFor(mathElement); + mathOptions.display = mathElement.tagName === "DIV"; + window.MathJax.tex2svgPromise(math, mathOptions).then(function (node) { + mathElement.innerHTML = ""; + mathElement.setAttribute("data-math", math); + mathElement.append(node); + window.MathJax.startup.document.clear(); + window.MathJax.startup.document.updateDocument(); + var errorTextElement = node.querySelector('[data-mml-node="merror"]'); + if (errorTextElement && errorTextElement.textContent.trim() !== "") { + mathElement.innerHTML = errorTextElement.textContent.trim(); + mathElement.className = "vditor-reset--error"; + } + if (next) { + next(); + } + }); + }; + window.MathJax.startup.promise.then(function () { + var chains = []; + var _loop_1 = function (i) { + var mathElement = mathElements[i]; + if (!mathElement.parentElement.classList.contains("vditor-wysiwyg__pre") && + !mathElement.parentElement.classList.contains("vditor-ir__marker--pre") && + !mathElement.getAttribute("data-math") && (0,_util_code160to32__WEBPACK_IMPORTED_MODULE_4__/* .code160to32 */ .X)(mathElement.textContent).trim()) { + chains.push(function (next) { + if (i === mathElements.length - 1) { + renderMath_1(mathElement); + } + else { + renderMath_1(mathElement, next); + } + }); + } + }; + for (var i = 0; i < mathElements.length; i++) { + _loop_1(i); + } + chainAsync_1(chains); + }); + } +}; + + +/***/ }), + +/***/ 280: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "Y": () => (/* binding */ mediaRender) +/* harmony export */ }); +/* harmony import */ var _util_function__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(494); + +var videoRender = function (element, url) { + element.insertAdjacentHTML("afterend", "")); + element.remove(); +}; +var audioRender = function (element, url) { + element.insertAdjacentHTML("afterend", "")); + element.remove(); +}; +var iframeRender = function (element, url) { + var youtubeMatch = url.match(/\/\/(?:www\.)?(?:youtu\.be\/|youtube\.com\/(?:embed\/|v\/|watch\?v=|watch\?.+&v=))([\w|-]{11})(?:(?:[\?&]t=)(\S+))?/); + var youkuMatch = url.match(/\/\/v\.youku\.com\/v_show\/id_(\w+)=*\.html/); + var qqMatch = url.match(/\/\/v\.qq\.com\/x\/cover\/.*\/([^\/]+)\.html\??.*/); + var coubMatch = url.match(/(?:www\.|\/\/)coub\.com\/view\/(\w+)/); + var facebookMatch = url.match(/(?:www\.|\/\/)facebook\.com\/([^\/]+)\/videos\/([0-9]+)/); + var dailymotionMatch = url.match(/.+dailymotion.com\/(video|hub)\/(\w+)\?/); + var bilibiliMatch = url.match(/(?:www\.|\/\/)bilibili\.com\/video\/(\w+)/); + var tedMatch = url.match(/(?:www\.|\/\/)ted\.com\/talks\/(\w+)/); + if (youtubeMatch && youtubeMatch[1].length === 11) { + element.insertAdjacentHTML("afterend", "")); + element.remove(); + } + else if (youkuMatch && youkuMatch[1]) { + element.insertAdjacentHTML("afterend", "")); + element.remove(); + } + else if (qqMatch && qqMatch[1]) { + element.insertAdjacentHTML("afterend", "")); + element.remove(); + } + else if (coubMatch && coubMatch[1]) { + element.insertAdjacentHTML("afterend", "")); + element.remove(); + } + else if (facebookMatch && facebookMatch[0]) { + element.insertAdjacentHTML("afterend", "")); + element.remove(); + } + else if (dailymotionMatch && dailymotionMatch[2]) { + element.insertAdjacentHTML("afterend", "")); + element.remove(); + } + else if (url.indexOf("bilibili.com") > -1 && (url.indexOf("bvid=") > -1 || (bilibiliMatch && bilibiliMatch[1]))) { + var params_1 = { + bvid: (0,_util_function__WEBPACK_IMPORTED_MODULE_0__/* .getSearch */ .on)("bvid", url) || (bilibiliMatch && bilibiliMatch[1]), + page: "1", + high_quality: "1", + as_wide: "1", + allowfullscreen: "true", + autoplay: "0" + }; + new URL(url.startsWith("http") ? url : "https:" + url).search.split("&").forEach(function (item, index) { + if (!item) { + return; + } + if (index === 0) { + item = item.substr(1); + } + var keyValue = item.split("="); + params_1[keyValue[0]] = keyValue[1]; + }); + var src_1 = "https://player.bilibili.com/player.html?"; + var keys_1 = Object.keys(params_1); + keys_1.forEach(function (key, index) { + src_1 += "".concat(key, "=").concat(params_1[key]); + if (index < keys_1.length - 1) { + src_1 += "&"; + } + }); + element.insertAdjacentHTML("afterend", "")); + element.remove(); + } + else if (tedMatch && tedMatch[1]) { + element.insertAdjacentHTML("afterend", "")); + element.remove(); + } +}; +var mediaRender = function (element) { + if (!element) { + return; + } + element.querySelectorAll("a").forEach(function (aElement) { + var url = aElement.getAttribute("href"); + if (!url) { + return; + } + if (url.match(/^.+.(mp4|m4v|ogg|ogv|webm)$/)) { + videoRender(aElement, url); + } + else if (url.match(/^.+.(mp3|wav|flac)$/)) { + audioRender(aElement, url); + } + else { + iframeRender(aElement, url); + } + }); +}; + + +/***/ }), + +/***/ 637: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "i": () => (/* binding */ mermaidRender) +/* harmony export */ }); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); +/* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(413); +/* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(840); +/* harmony import */ var _util_function__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(494); +var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +}; +var __generator = (undefined && undefined.__generator) || function (thisArg, body) { + var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; + function verb(n) { return function (v) { return step([n, v]); }; } + function step(op) { + if (f) throw new TypeError("Generator is already executing."); + while (g && (g = 0, op[0] && (_ = 0)), _) try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; + if (y = 0, t) op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: case 1: t = op; break; + case 4: _.label++; return { value: op[1], done: false }; + case 5: _.label++; y = op[1]; op = [0]; continue; + case 7: op = _.ops.pop(); _.trys.pop(); continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } + if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } + if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } + if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } + if (t[2]) _.ops.pop(); + _.trys.pop(); continue; + } + op = body.call(thisArg, _); + } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } + if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; + } +}; + + + + +var mermaidRender = function (element, cdn, theme) { + if (element === void 0) { element = document; } + if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; } + var mermaidElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.mermaidRenderAdapter.getElements(element); + if (mermaidElements.length === 0) { + return; + } + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/mermaid/mermaid.min.js?v=11.6.0"), "vditorMermaidScript").then(function () { + var config = { + securityLevel: "loose", + altFontFamily: "sans-serif", + fontFamily: "sans-serif", + startOnLoad: false, + flowchart: { + htmlLabels: true, + useMaxWidth: !0 + }, + sequence: { + useMaxWidth: true, + diagramMarginX: 8, + diagramMarginY: 8, + boxMargin: 8, + showSequenceNumbers: true // Mermaid 时序图增加序号 https://github.com/siyuan-note/siyuan/pull/6992 https://mermaid.js.org/syntax/sequenceDiagram.html#sequencenumbers + }, + gantt: { + leftPadding: 75, + rightPadding: 20 + } + }; + if (theme === "dark") { + config.theme = "dark"; + } + mermaid.initialize(config); + mermaidElements.forEach(function (item) { return __awaiter(void 0, void 0, void 0, function () { + var code, id, mermaidData, e_1, errorElement; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + code = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.mermaidRenderAdapter.getCode(item); + if (item.getAttribute("data-processed") === "true" || code.trim() === "") { + return [2 /*return*/]; + } + id = "mermaid" + (0,_util_function__WEBPACK_IMPORTED_MODULE_3__/* .genUUID */ .Wb)(); + _a.label = 1; + case 1: + _a.trys.push([1, 3, , 4]); + return [4 /*yield*/, mermaid.render(id, item.textContent)]; + case 2: + mermaidData = _a.sent(); + item.innerHTML = mermaidData.svg; + return [3 /*break*/, 4]; + case 3: + e_1 = _a.sent(); + errorElement = document.querySelector("#" + id); + item.innerHTML = "".concat(errorElement.outerHTML, "
    \n
    ").concat(e_1.message.replace(/\n/, "
    "), "
    "); + errorElement.parentElement.remove(); + return [3 /*break*/, 4]; + case 4: + item.setAttribute("data-processed", "true"); + return [2 /*return*/]; + } + }); + }); }); + }); +}; + + +/***/ }), + +/***/ 194: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "P": () => (/* binding */ mindmapRender) +/* harmony export */ }); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); +/* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(413); +/* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(840); + + + +var mindmapRender = function (element, cdn, theme) { + if (element === void 0) { element = document; } + if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; } + var mindmapElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.mindmapRenderAdapter.getElements(element); + if (mindmapElements.length > 0) { + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/echarts/echarts.min.js?v=5.5.1"), "vditorEchartsScript").then(function () { + mindmapElements.forEach(function (e) { + if (e.parentElement.classList.contains("vditor-wysiwyg__pre") || + e.parentElement.classList.contains("vditor-ir__marker--pre")) { + return; + } + var text = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.mindmapRenderAdapter.getCode(e); + if (!text) { + return; + } + try { + if (e.getAttribute("data-processed") === "true") { + return; + } + echarts.init(e, theme === "dark" ? "dark" : undefined).setOption({ + series: [ + { + data: [JSON.parse(decodeURIComponent(text))], + initialTreeDepth: -1, + itemStyle: { + borderWidth: 0, + color: "#4285f4", + }, + label: { + backgroundColor: "#f6f8fa", + borderColor: "#d1d5da", + borderRadius: 5, + borderWidth: 0.5, + color: "#586069", + lineHeight: 20, + offset: [-5, 0], + padding: [0, 5], + position: "insideRight", + }, + lineStyle: { + color: "#d1d5da", + width: 1, + }, + roam: true, + symbol: function (value, params) { + var _a; + if ((_a = params === null || params === void 0 ? void 0 : params.data) === null || _a === void 0 ? void 0 : _a.children) { + return "circle"; + } + else { + return "path://"; + } + }, + type: "tree", + }, + ], + tooltip: { + trigger: "item", + triggerOn: "mousemove", + }, + }); + e.setAttribute("data-processed", "true"); + } + catch (error) { + e.className = "vditor-reset--error"; + e.innerHTML = "mindmap render error:
    ".concat(error); + } + }); + }); + } +}; + + +/***/ }), + +/***/ 436: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "k": () => (/* binding */ outlineRender) +/* harmony export */ }); +/* harmony import */ var _util_hasClosestByHeadings__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(771); +/* harmony import */ var _mathRender__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(472); + + +var outlineRender = function (contentElement, targetElement, vditor) { + var tocHTML = ""; + var ids = []; + Array.from(contentElement.children).forEach(function (item, index) { + if ((0,_util_hasClosestByHeadings__WEBPACK_IMPORTED_MODULE_1__/* .hasClosestByHeadings */ .W)(item)) { + if (vditor) { + var lastIndex = item.id.lastIndexOf("_"); + item.id = item.id.substring(0, lastIndex === -1 ? undefined : lastIndex) + "_" + index; + } + ids.push(item.id); + tocHTML += item.outerHTML.replace("", ""); + } + }); + if (tocHTML === "") { + targetElement.innerHTML = ""; + return ""; + } + var tempElement = document.createElement("div"); + if (vditor) { + vditor.lute.SetToC(true); + if (vditor.currentMode === "wysiwyg" && !vditor.preview.element.contains(contentElement)) { + tempElement.innerHTML = vditor.lute.SpinVditorDOM("

    [ToC]

    " + tocHTML); + } + else if (vditor.currentMode === "ir" && !vditor.preview.element.contains(contentElement)) { + tempElement.innerHTML = vditor.lute.SpinVditorIRDOM("

    [ToC]

    " + tocHTML); + } + else { + tempElement.innerHTML = vditor.lute.HTML2VditorDOM("

    [ToC]

    " + tocHTML); + } + vditor.lute.SetToC(vditor.options.preview.markdown.toc); + } + else { + targetElement.classList.add("vditor-outline"); + var lute = Lute.New(); + lute.SetToC(true); + tempElement.innerHTML = lute.HTML2VditorDOM("

    [ToC]

    " + tocHTML); + } + var headingsElement = tempElement.firstElementChild.querySelectorAll("li > span[data-target-id]"); + headingsElement.forEach(function (item, index) { + if (item.nextElementSibling && item.nextElementSibling.tagName === "UL") { + var iconHTML = ""; + if (!document.getElementById("vditorIconScript")) { + iconHTML = ''; + } + item.innerHTML = "".concat(iconHTML, "").concat(item.innerHTML, ""); + } + else { + item.innerHTML = "".concat(item.innerHTML, ""); + } + item.setAttribute("data-target-id", ids[index]); + }); + tocHTML = tempElement.firstElementChild.innerHTML; + if (headingsElement.length === 0) { + targetElement.innerHTML = ""; + return tocHTML; + } + targetElement.innerHTML = tocHTML; + if (vditor) { + (0,_mathRender__WEBPACK_IMPORTED_MODULE_0__/* .mathRender */ .H)(targetElement, { + cdn: vditor.options.cdn, + math: vditor.options.preview.math, + }); + } + targetElement.firstElementChild.addEventListener("click", function (event) { + var target = event.target; + while (target && !target.isEqualNode(targetElement)) { + if (target.classList.contains("vditor-outline__action")) { + if (target.classList.contains("vditor-outline__action--close")) { + target.classList.remove("vditor-outline__action--close"); + target.parentElement.nextElementSibling.setAttribute("style", "display:block"); + } + else { + target.classList.add("vditor-outline__action--close"); + target.parentElement.nextElementSibling.setAttribute("style", "display:none"); + } + event.preventDefault(); + event.stopPropagation(); + break; + } + else if (target.getAttribute("data-target-id")) { + event.preventDefault(); + event.stopPropagation(); + var idElement = document.getElementById(target.getAttribute("data-target-id")); + if (!idElement) { + return; + } + if (vditor) { + if (vditor.options.height === "auto") { + var windowScrollY = idElement.offsetTop + vditor.element.offsetTop; + if (!vditor.options.toolbarConfig.pin) { + windowScrollY += vditor.toolbar.element.offsetHeight; + } + window.scrollTo(window.scrollX, windowScrollY); + } + else { + if (vditor.element.offsetTop < window.scrollY) { + window.scrollTo(window.scrollX, vditor.element.offsetTop); + } + if (vditor.preview.element.contains(contentElement)) { + contentElement.parentElement.scrollTop = idElement.offsetTop; + } + else { + contentElement.scrollTop = idElement.offsetTop; + } + } + } + else { + window.scrollTo(window.scrollX, idElement.offsetTop); + } + break; + } + target = target.parentElement; + } + }); + return tocHTML; +}; + + +/***/ }), + +/***/ 229: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "B": () => (/* binding */ plantumlRender) +/* harmony export */ }); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); +/* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(413); +/* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(840); + + + +var plantumlRender = function (element, cdn) { + if (element === void 0) { element = document; } + if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; } + var plantumlElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.plantumlRenderAdapter.getElements(element); + if (plantumlElements.length === 0) { + return; + } + (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/plantuml/plantuml-encoder.min.js"), "vditorPlantumlScript").then(function () { + plantumlElements.forEach(function (e) { + if (e.parentElement.classList.contains("vditor-wysiwyg__pre") || + e.parentElement.classList.contains("vditor-ir__marker--pre")) { + return; + } + var text = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.plantumlRenderAdapter.getCode(e).trim(); + if (!text) { + return; + } + try { + e.innerHTML = ""); + } + catch (error) { + e.className = "vditor-reset--error"; + e.innerHTML = "plantuml render error:
    ".concat(error); + } + }); + }); +}; + + +/***/ }), + +/***/ 214: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "X": () => (/* binding */ setLute) +/* harmony export */ }); +var setLute = function (options) { + var lute = Lute.New(); + lute.PutEmojis(options.emojis); + lute.SetEmojiSite(options.emojiSite); + lute.SetHeadingAnchor(options.headingAnchor); + lute.SetInlineMathAllowDigitAfterOpenMarker(options.inlineMathDigit); + lute.SetAutoSpace(options.autoSpace); + lute.SetToC(options.toc); + lute.SetFootnotes(options.footnotes); + lute.SetFixTermTypo(options.fixTermTypo); + lute.SetVditorCodeBlockPreview(options.codeBlockPreview); + lute.SetVditorMathBlockPreview(options.mathBlockPreview); + lute.SetSanitize(options.sanitize); + lute.SetChineseParagraphBeginningSpace(options.paragraphBeginningSpace); + lute.SetRenderListStyle(options.listStyle); + lute.SetLinkBase(options.linkBase); + lute.SetLinkPrefix(options.linkPrefix); + lute.SetMark(options.mark); + lute.SetGFMAutoLink(options.gfmAutoLink); + if (options.lazyLoadImage) { + lute.SetImageLazyLoading(options.lazyLoadImage); + } + return lute; +}; + + +/***/ }), + +/***/ 190: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "E": () => (/* binding */ previewImage) +/* harmony export */ }); +var previewImage = function (oldImgElement, lang, theme) { + if (lang === void 0) { lang = "zh_CN"; } + if (theme === void 0) { theme = "classic"; } + var oldImgRect = oldImgElement.getBoundingClientRect(); + var height = 36; + document.body.insertAdjacentHTML("beforeend", "
    \n
    \n \n \n ").concat(window.VditorI18n.spin, "\n \n \n X  ").concat(window.VditorI18n.close, "\n \n
    \n
    \n \n
    \n
    ")); + document.body.style.overflow = "hidden"; + // 图片从原始位置移动到预览正中间的动画效果 + var imgElement = document.querySelector(".vditor-img img"); + var translate3d = "translate3d(".concat(Math.max(0, window.innerWidth - oldImgElement.naturalWidth) / 2, "px, ").concat(Math.max(0, window.innerHeight - height - oldImgElement.naturalHeight) / 2, "px, 0)"); + setTimeout(function () { + imgElement.setAttribute("style", "transition: transform .3s ease-in-out;transform: ".concat(translate3d)); + setTimeout(function () { + imgElement.parentElement.scrollTo((imgElement.parentElement.scrollWidth - imgElement.parentElement.clientWidth) / 2, (imgElement.parentElement.scrollHeight - imgElement.parentElement.clientHeight) / 2); + }, 400); + }); + // 旋转 + var btnElement = document.querySelector(".vditor-img__btn"); + btnElement.addEventListener("click", function () { + var deg = parseInt(btnElement.getAttribute("data-deg"), 10) + 90; + if ((deg / 90) % 2 === 1 && oldImgElement.naturalWidth > imgElement.parentElement.clientHeight) { + imgElement.style.transform = "translate3d(".concat(Math.max(0, window.innerWidth - oldImgElement.naturalWidth) / 2, "px, ").concat(oldImgElement.naturalWidth / 2 - oldImgElement.naturalHeight / 2, "px, 0) rotateZ(").concat(deg, "deg)"); + } + else { + imgElement.style.transform = "".concat(translate3d, " rotateZ(").concat(deg, "deg)"); + } + btnElement.setAttribute("data-deg", deg.toString()); + setTimeout(function () { + imgElement.parentElement.scrollTo((imgElement.parentElement.scrollWidth - imgElement.parentElement.clientWidth) / 2, (imgElement.parentElement.scrollHeight - imgElement.parentElement.clientHeight) / 2); + }, 400); + }); +}; + + +/***/ }), + +/***/ 580: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "Y": () => (/* binding */ setCodeTheme) +/* harmony export */ }); +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); +/* harmony import */ var _util_addStyle__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(290); + + +var setCodeTheme = function (codeTheme, cdn) { + if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; } + if (!_constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CODE_THEME.includes */ .g.CODE_THEME.includes(codeTheme)) { + codeTheme = "github"; + } + var vditorHljsStyle = document.getElementById("vditorHljsStyle"); + var href = "".concat(cdn, "/dist/js/highlight.js/styles/").concat(codeTheme, ".min.css"); + if (!vditorHljsStyle) { + (0,_util_addStyle__WEBPACK_IMPORTED_MODULE_1__/* .addStyle */ .c)(href, "vditorHljsStyle"); + } + else if (vditorHljsStyle.getAttribute('href') !== href) { + vditorHljsStyle.remove(); + (0,_util_addStyle__WEBPACK_IMPORTED_MODULE_1__/* .addStyle */ .c)(href, "vditorHljsStyle"); + } +}; + + +/***/ }), + +/***/ 538: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "Z": () => (/* binding */ setContentTheme) +/* harmony export */ }); +/* harmony import */ var _util_addStyle__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(290); + +var setContentTheme = function (contentTheme, path) { + if (!contentTheme || !path) { + return; + } + var vditorContentTheme = document.getElementById("vditorContentTheme"); + var cssPath = "".concat(path, "/").concat(contentTheme, ".css"); + if (!vditorContentTheme) { + (0,_util_addStyle__WEBPACK_IMPORTED_MODULE_0__/* .addStyle */ .c)(cssPath, "vditorContentTheme"); + } + else if (vditorContentTheme.getAttribute("href") !== cssPath) { + vditorContentTheme.remove(); + (0,_util_addStyle__WEBPACK_IMPORTED_MODULE_0__/* .addStyle */ .c)(cssPath, "vditorContentTheme"); + } +}; + + +/***/ }), + +/***/ 413: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "J": () => (/* binding */ addScriptSync), +/* harmony export */ "G": () => (/* binding */ addScript) +/* harmony export */ }); +var addScriptSync = function (path, id) { + if (document.getElementById(id)) { + return false; + } + var xhrObj = new XMLHttpRequest(); + xhrObj.open("GET", path, false); + xhrObj.setRequestHeader("Accept", "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript, */*; q=0.01"); + xhrObj.send(""); + var scriptElement = document.createElement("script"); + scriptElement.type = "text/javascript"; + scriptElement.text = xhrObj.responseText; + scriptElement.id = id; + document.head.appendChild(scriptElement); +}; +var addScript = function (path, id) { + return new Promise(function (resolve, reject) { + if (document.getElementById(id)) { + // 脚本加载后再次调用直接返回 + resolve(true); + return false; + } + var scriptElement = document.createElement("script"); + scriptElement.src = path; + scriptElement.async = true; + // 循环调用时 Chrome 不会重复请求 js + document.head.appendChild(scriptElement); + scriptElement.onerror = function (event) { + reject(event); + }; + scriptElement.onload = function () { + if (document.getElementById(id)) { + // 循环调用需清除 DOM 中的 script 标签 + scriptElement.remove(); + resolve(true); + return false; + } + scriptElement.id = id; + resolve(true); + }; + }); +}; + + +/***/ }), + +/***/ 290: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "c": () => (/* binding */ addStyle) +/* harmony export */ }); +var addStyle = function (url, id) { + if (!document.getElementById(id)) { + var styleElement = document.createElement("link"); + styleElement.id = id; + styleElement.rel = "stylesheet"; + styleElement.type = "text/css"; + styleElement.href = url; + document.getElementsByTagName("head")[0].appendChild(styleElement); + } +}; + + +/***/ }), + +/***/ 105: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "X": () => (/* binding */ code160to32) +/* harmony export */ }); +var code160to32 = function (text) { + // 非打断空格转换为空格 + return text.replace(/\u00a0/g, " "); +}; + + +/***/ }), + +/***/ 494: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "Wb": () => (/* binding */ genUUID), +/* harmony export */ "on": () => (/* binding */ getSearch), +/* harmony export */ "Qf": () => (/* binding */ looseJsonParse) +/* harmony export */ }); +var genUUID = function () { return ([1e7].toString() + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, function (c) { + return (parseInt(c, 10) ^ (window.crypto.getRandomValues(new Uint32Array(1))[0] & (15 >> (parseInt(c, 10) / 4)))).toString(16); +}); }; +var getSearch = function (key, link) { + if (link === void 0) { link = window.location.search; } + var params = link.substring(link.indexOf("?")); + var hashIndex = params.indexOf("#"); + // REF https://developer.mozilla.org/zh-CN/docs/Web/API/URLSearchParams + var urlSearchParams = new URLSearchParams(params.substring(0, hashIndex >= 0 ? hashIndex : undefined)); + return urlSearchParams.get(key); +}; +var looseJsonParse = function (text) { + return Function("\"use strict\";return (".concat(text, ")"))(); +}; + + +/***/ }), + +/***/ 106: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "lG": () => (/* binding */ hasClosestByMatchTag), +/* harmony export */ "fb": () => (/* binding */ hasClosestByClassName) +/* harmony export */ }); +/* unused harmony exports hasTopClosestByClassName, hasTopClosestByAttribute, hasTopClosestByTag, getTopList, hasClosestByAttribute, hasClosestBlock, getLastNode */ + +var hasTopClosestByClassName = function (element, className) { + var closest = hasClosestByClassName(element, className); + var parentClosest = false; + var findTop = false; + while (closest && !closest.classList.contains("vditor-reset") && !findTop) { + parentClosest = hasClosestByClassName(closest.parentElement, className); + if (parentClosest) { + closest = parentClosest; + } + else { + findTop = true; + } + } + return closest || false; +}; +var hasTopClosestByAttribute = function (element, attr, value) { + var closest = hasClosestByAttribute(element, attr, value); + var parentClosest = false; + var findTop = false; + while (closest && !closest.classList.contains("vditor-reset") && !findTop) { + parentClosest = hasClosestByAttribute(closest.parentElement, attr, value); + if (parentClosest) { + closest = parentClosest; + } + else { + findTop = true; + } + } + return closest || false; +}; +var hasTopClosestByTag = function (element, nodeName) { + var closest = hasClosestByTag(element, nodeName); + var parentClosest = false; + var findTop = false; + while (closest && !closest.classList.contains("vditor-reset") && !findTop) { + parentClosest = hasClosestByTag(closest.parentElement, nodeName); + if (parentClosest) { + closest = parentClosest; + } + else { + findTop = true; + } + } + return closest || false; +}; +var getTopList = function (element) { + var topUlElement = hasTopClosestByTag(element, "UL"); + var topOlElement = hasTopClosestByTag(element, "OL"); + var topListElement = topUlElement; + if (topOlElement && (!topUlElement || (topUlElement && topOlElement.contains(topUlElement)))) { + topListElement = topOlElement; + } + return topListElement; +}; +var hasClosestByAttribute = function (element, attr, value) { + if (!element) { + return false; + } + if (element.nodeType === 3) { + element = element.parentElement; + } + var e = element; + var isClosest = false; + while (e && !isClosest && !e.classList.contains("vditor-reset")) { + if (e.getAttribute(attr) === value) { + isClosest = true; + } + else { + e = e.parentElement; + } + } + return isClosest && e; +}; +var hasClosestBlock = function (element) { + if (!element) { + return false; + } + if (element.nodeType === 3) { + element = element.parentElement; + } + var e = element; + var isClosest = false; + var blockElement = hasClosestByAttribute(element, "data-block", "0"); + if (blockElement) { + return blockElement; + } + while (e && !isClosest && !e.classList.contains("vditor-reset")) { + if (e.tagName === "H1" || + e.tagName === "H2" || + e.tagName === "H3" || + e.tagName === "H4" || + e.tagName === "H5" || + e.tagName === "H6" || + e.tagName === "P" || + e.tagName === "BLOCKQUOTE" || + e.tagName === "OL" || + e.tagName === "UL") { + isClosest = true; + } + else { + e = e.parentElement; + } + } + return isClosest && e; +}; +var hasClosestByMatchTag = function (element, nodeName) { + if (!element) { + return false; + } + if (element.nodeType === 3) { + element = element.parentElement; + } + var e = element; + var isClosest = false; + while (e && !isClosest && !e.classList.contains("vditor-reset")) { + if (e.nodeName === nodeName) { + isClosest = true; + } + else { + e = e.parentElement; + } + } + return isClosest && e; +}; +var hasClosestByClassName = function (element, className) { + if (!element) { + return false; + } + if (element.nodeType === 3) { + element = element.parentElement; + } + var e = element; + var isClosest = false; + while (e && !isClosest && !e.classList.contains("vditor-reset")) { + if (e.classList.contains(className)) { + isClosest = true; + } + else { + e = e.parentElement; + } + } + return isClosest && e; +}; +var getLastNode = function (node) { + while (node && node.lastChild) { + node = node.lastChild; + } + return node; +}; + + +/***/ }), + +/***/ 771: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "W": () => (/* binding */ hasClosestByHeadings) +/* harmony export */ }); +/* unused harmony export hasClosestByTag */ +// NOTE: 减少 method.ts 打包,故从 hasClosest.ts 中拆分 +var hasClosestByTag = function (element, nodeName) { + if (!element) { + return false; + } + if (element.nodeType === 3) { + element = element.parentElement; + } + var e = element; + var isClosest = false; + while (e && !isClosest && !e.classList.contains("vditor-reset")) { + if (e.nodeName.indexOf(nodeName) === 0) { + isClosest = true; + } + else { + e = e.parentElement; + } + } + return isClosest && e; +}; +var hasClosestByHeadings = function (element) { + var headingElement = hasClosestByTag(element, "H"); + if (headingElement && headingElement.tagName.length === 2 && headingElement.tagName !== "HR") { + return headingElement; + } + return false; +}; + + +/***/ }), + +/***/ 673: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "T": () => (/* binding */ merge) +/* harmony export */ }); +var merge = function () { + var options = []; + for (var _i = 0; _i < arguments.length; _i++) { + options[_i] = arguments[_i]; + } + var target = {}; + var merger = function (obj) { + for (var prop in obj) { + if (obj.hasOwnProperty(prop)) { + if (Object.prototype.toString.call(obj[prop]) === "[object Object]") { + target[prop] = merge(target[prop], obj[prop]); + } + else { + target[prop] = obj[prop]; + } + } + } + }; + for (var i = 0; i < options.length; i++) { + merger(options[i]); + } + return target; +}; + + +/***/ }), + +/***/ 810: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "Hc": () => (/* binding */ setSelectionFocus) +/* harmony export */ }); +/* unused harmony exports getEditorRange, getCursorPosition, selectIsEditor, getSelectPosition, setSelectionByPosition, setRangeByWbr, insertHTML */ +/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(145); + + + +var getEditorRange = function (vditor) { + var range; + var element = vditor[vditor.currentMode].element; + if (getSelection().rangeCount > 0) { + range = getSelection().getRangeAt(0); + if (element.isEqualNode(range.startContainer) || element.contains(range.startContainer)) { + return range; + } + } + if (vditor[vditor.currentMode].range) { + return vditor[vditor.currentMode].range; + } + element.focus(); + range = element.ownerDocument.createRange(); + range.setStart(element, 0); + range.collapse(true); + return range; +}; +var getCursorPosition = function (editor) { + var range = window.getSelection().getRangeAt(0); + if (!editor.contains(range.startContainer) && !hasClosestByClassName(range.startContainer, "vditor-panel--none")) { + return { + left: 0, + top: 0, + }; + } + var parentRect = editor.parentElement.getBoundingClientRect(); + var cursorRect; + if (range.getClientRects().length === 0) { + if (range.startContainer.nodeType === 3) { + // 空行时,会出现没有 br 的情况,需要根据父元素

    获取位置信息 + var parent_1 = range.startContainer.parentElement; + if (parent_1 && parent_1.getClientRects().length > 0) { + cursorRect = parent_1.getClientRects()[0]; + } + else { + return { + left: 0, + top: 0, + }; + } + } + else { + var children = range.startContainer.children; + if (children[range.startOffset] && + children[range.startOffset].getClientRects().length > 0) { + // markdown 模式回车 + cursorRect = children[range.startOffset].getClientRects()[0]; + } + else if (range.startContainer.childNodes.length > 0) { + // in table or code block + var cloneRange = range.cloneRange(); + range.selectNode(range.startContainer.childNodes[Math.max(0, range.startOffset - 1)]); + cursorRect = range.getClientRects()[0]; + range.setEnd(cloneRange.endContainer, cloneRange.endOffset); + range.setStart(cloneRange.startContainer, cloneRange.startOffset); + } + else { + cursorRect = range.startContainer.getClientRects()[0]; + } + if (!cursorRect) { + var parentElement = range.startContainer.childNodes[range.startOffset]; + while (!parentElement.getClientRects || + (parentElement.getClientRects && parentElement.getClientRects().length === 0)) { + parentElement = parentElement.parentElement; + } + cursorRect = parentElement.getClientRects()[0]; + } + } + } + else { + cursorRect = range.getClientRects()[0]; + } + return { + left: cursorRect.left - parentRect.left, + top: cursorRect.top - parentRect.top, + }; +}; +var selectIsEditor = function (editor, range) { + if (!range) { + if (getSelection().rangeCount === 0) { + return false; + } + else { + range = getSelection().getRangeAt(0); + } + } + var container = range.commonAncestorContainer; + return editor.isEqualNode(container) || editor.contains(container); +}; +var setSelectionFocus = function (range) { + var selection = window.getSelection(); + selection.removeAllRanges(); + selection.addRange(range); +}; +var getSelectPosition = function (selectElement, editorElement, range) { + var position = { + end: 0, + start: 0, + }; + if (!range) { + if (getSelection().rangeCount === 0) { + return position; + } + range = window.getSelection().getRangeAt(0); + } + if (selectIsEditor(editorElement, range)) { + var preSelectionRange = range.cloneRange(); + if (selectElement.childNodes[0] && selectElement.childNodes[0].childNodes[0]) { + preSelectionRange.setStart(selectElement.childNodes[0].childNodes[0], 0); + } + else { + preSelectionRange.selectNodeContents(selectElement); + } + preSelectionRange.setEnd(range.startContainer, range.startOffset); + position.start = preSelectionRange.toString().length; + position.end = position.start + range.toString().length; + } + return position; +}; +var setSelectionByPosition = function (start, end, editor) { + var charIndex = 0; + var line = 0; + var pNode = editor.childNodes[line]; + var foundStart = false; + var stop = false; + start = Math.max(0, start); + end = Math.max(0, end); + var range = editor.ownerDocument.createRange(); + range.setStart(pNode || editor, 0); + range.collapse(true); + while (!stop && pNode) { + var nextCharIndex = charIndex + pNode.textContent.length; + if (!foundStart && start >= charIndex && start <= nextCharIndex) { + if (start === 0) { + range.setStart(pNode, 0); + } + else { + if (pNode.childNodes[0].nodeType === 3) { + range.setStart(pNode.childNodes[0], start - charIndex); + } + else if (pNode.nextSibling) { + range.setStartBefore(pNode.nextSibling); + } + else { + range.setStartAfter(pNode); + } + } + foundStart = true; + if (start === end) { + stop = true; + break; + } + } + if (foundStart && end >= charIndex && end <= nextCharIndex) { + if (end === 0) { + range.setEnd(pNode, 0); + } + else { + if (pNode.childNodes[0].nodeType === 3) { + range.setEnd(pNode.childNodes[0], end - charIndex); + } + else if (pNode.nextSibling) { + range.setEndBefore(pNode.nextSibling); + } + else { + range.setEndAfter(pNode); + } + } + stop = true; + } + charIndex = nextCharIndex; + pNode = editor.childNodes[++line]; + } + if (!stop && editor.childNodes[line - 1]) { + range.setStartBefore(editor.childNodes[line - 1]); + } + setSelectionFocus(range); + return range; +}; +var setRangeByWbr = function (element, range) { + var wbrElement = element.querySelector("wbr"); + if (!wbrElement) { + return; + } + if (!wbrElement.previousElementSibling) { + if (wbrElement.previousSibling) { + // text + range.setStart(wbrElement.previousSibling, wbrElement.previousSibling.textContent.length); + } + else if (wbrElement.nextSibling) { + if (wbrElement.nextSibling.nodeType === 3) { + // text + range.setStart(wbrElement.nextSibling, 0); + } + else { + //
    https://github.com/Vanessa219/vditor/issues/400 + range.setStartBefore(wbrElement.nextSibling); + } + } + else { + // 内容为空 + range.setStart(wbrElement.parentElement, 0); + } + } + else { + if (wbrElement.previousElementSibling.isSameNode(wbrElement.previousSibling)) { + if (wbrElement.previousElementSibling.lastChild) { + // text + range.setStartBefore(wbrElement); + range.collapse(true); + setSelectionFocus(range); + // fix Chrome set range bug: **c** + if (isChrome() && (wbrElement.previousElementSibling.tagName === "EM" || + wbrElement.previousElementSibling.tagName === "STRONG" || + wbrElement.previousElementSibling.tagName === "S")) { + range.insertNode(document.createTextNode(Constants.ZWSP)); + range.collapse(false); + } + wbrElement.remove(); + return; + } + else { + //
    + range.setStartAfter(wbrElement.previousElementSibling); + } + } + else { + // texttext + range.setStart(wbrElement.previousSibling, wbrElement.previousSibling.textContent.length); + } + } + range.collapse(true); + wbrElement.remove(); + setSelectionFocus(range); +}; +var insertHTML = function (html, vditor) { + // 使用 lute 方法会添加 p 元素,只有一个 p 元素的时候进行删除 + var tempElement = document.createElement("div"); + tempElement.innerHTML = html; + var tempBlockElement = tempElement.querySelectorAll("p"); + if (tempBlockElement.length === 1 && !tempBlockElement[0].previousSibling && !tempBlockElement[0].nextSibling && + vditor[vditor.currentMode].element.children.length > 0 && tempElement.firstElementChild.tagName === "P") { + html = tempBlockElement[0].innerHTML.trim(); + } + var pasteElement = document.createElement("div"); + pasteElement.innerHTML = html; + var range = getEditorRange(vditor); + if (range.toString() !== "") { + vditor[vditor.currentMode].preventInput = true; + document.execCommand("delete", false, ""); + } + if (pasteElement.firstElementChild && + pasteElement.firstElementChild.getAttribute("data-block") === "0") { + // 粘贴内容为块元素时,应在下一段落中插入 + pasteElement.lastElementChild.insertAdjacentHTML("beforeend", ""); + var blockElement = hasClosestBlock(range.startContainer); + if (!blockElement) { + vditor[vditor.currentMode].element.insertAdjacentHTML("beforeend", pasteElement.innerHTML); + } + else { + blockElement.insertAdjacentHTML("afterend", pasteElement.innerHTML); + } + setRangeByWbr(vditor[vditor.currentMode].element, range); + } + else { + var pasteTemplate = document.createElement("template"); + pasteTemplate.innerHTML = html; + range.insertNode(pasteTemplate.content.cloneNode(true)); + range.collapse(false); + setSelectionFocus(range); + } +}; + + +/***/ }) + +/******/ }); +/************************************************************************/ +/******/ // The module cache +/******/ var __webpack_module_cache__ = {}; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ // Check if module is in cache +/******/ var cachedModule = __webpack_module_cache__[moduleId]; +/******/ if (cachedModule !== undefined) { +/******/ return cachedModule.exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = __webpack_module_cache__[moduleId] = { +/******/ // no module.id needed +/******/ // no module.loaded needed +/******/ exports: {} +/******/ }; +/******/ +/******/ // Execute the module function +/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/************************************************************************/ +/******/ /* webpack/runtime/define property getters */ +/******/ (() => { +/******/ // define getter functions for harmony exports +/******/ __webpack_require__.d = (exports, definition) => { +/******/ for(var key in definition) { +/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { +/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); +/******/ } +/******/ } +/******/ }; +/******/ })(); +/******/ +/******/ /* webpack/runtime/hasOwnProperty shorthand */ +/******/ (() => { +/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop)) +/******/ })(); +/******/ +/******/ /* webpack/runtime/make namespace object */ +/******/ (() => { +/******/ // define __esModule on exports +/******/ __webpack_require__.r = (exports) => { +/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { +/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); +/******/ } +/******/ Object.defineProperty(exports, '__esModule', { value: true }); +/******/ }; +/******/ })(); +/******/ +/************************************************************************/ +var __webpack_exports__ = {}; +// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk. +(() => { + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + "default": () => (/* binding */ method) +}); + +// EXTERNAL MODULE: ./src/ts/markdown/abcRender.ts +var abcRender = __webpack_require__(135); +// EXTERNAL MODULE: ./src/ts/markdown/adapterRender.ts +var adapterRender = __webpack_require__(840); +// EXTERNAL MODULE: ./src/ts/markdown/chartRender.ts +var chartRender = __webpack_require__(775); +// EXTERNAL MODULE: ./src/ts/markdown/codeRender.ts +var codeRender = __webpack_require__(428); +// EXTERNAL MODULE: ./src/ts/markdown/flowchartRender.ts +var flowchartRender = __webpack_require__(325); +// EXTERNAL MODULE: ./src/ts/markdown/graphvizRender.ts +var graphvizRender = __webpack_require__(483); +// EXTERNAL MODULE: ./src/ts/markdown/highlightRender.ts +var highlightRender = __webpack_require__(999); +;// CONCATENATED MODULE: ./src/ts/markdown/lazyLoadImageRender.ts +var lazyLoadImageRender = function (element) { + if (element === void 0) { element = document; } + var loadImg = function (it) { + var testImage = document.createElement("img"); + testImage.src = it.getAttribute("data-src"); + testImage.addEventListener("load", function () { + if (!it.getAttribute("style") && !it.getAttribute("class") && + !it.getAttribute("width") && !it.getAttribute("height")) { + if (testImage.naturalHeight > testImage.naturalWidth && + testImage.naturalWidth / testImage.naturalHeight < + document.querySelector(".vditor-reset").clientWidth / (window.innerHeight - 40) && + testImage.naturalHeight > (window.innerHeight - 40)) { + it.style.height = (window.innerHeight - 40) + "px"; + } + } + it.src = testImage.src; + }); + it.removeAttribute("data-src"); + }; + if (!("IntersectionObserver" in window)) { + element.querySelectorAll("img").forEach(function (imgElement) { + if (imgElement.getAttribute("data-src")) { + loadImg(imgElement); + } + }); + return false; + } + if (window.vditorImageIntersectionObserver) { + window.vditorImageIntersectionObserver.disconnect(); + element.querySelectorAll("img").forEach(function (imgElement) { + window.vditorImageIntersectionObserver.observe(imgElement); + }); + } + else { + window.vditorImageIntersectionObserver = new IntersectionObserver(function (entries) { + entries.forEach(function (entrie) { + if ((typeof entrie.isIntersecting === "undefined" + ? entrie.intersectionRatio !== 0 + : entrie.isIntersecting) + && entrie.target.getAttribute("data-src")) { + loadImg(entrie.target); + } + }); + }); + element.querySelectorAll("img").forEach(function (imgElement) { + window.vditorImageIntersectionObserver.observe(imgElement); + }); + } +}; + +// EXTERNAL MODULE: ./src/ts/markdown/mathRender.ts +var mathRender = __webpack_require__(472); +// EXTERNAL MODULE: ./src/ts/markdown/mediaRender.ts +var mediaRender = __webpack_require__(280); +// EXTERNAL MODULE: ./src/ts/markdown/mermaidRender.ts +var mermaidRender = __webpack_require__(637); +// EXTERNAL MODULE: ./src/ts/markdown/SMILESRender.ts +var SMILESRender = __webpack_require__(825); +// EXTERNAL MODULE: ./src/ts/markdown/markmapRender.ts +var markmapRender = __webpack_require__(11); +// EXTERNAL MODULE: ./src/ts/markdown/mindmapRender.ts +var mindmapRender = __webpack_require__(194); +// EXTERNAL MODULE: ./src/ts/markdown/outlineRender.ts +var outlineRender = __webpack_require__(436); +// EXTERNAL MODULE: ./src/ts/markdown/plantumlRender.ts +var plantumlRender = __webpack_require__(229); +// EXTERNAL MODULE: ./src/ts/constants.ts +var constants = __webpack_require__(145); +// EXTERNAL MODULE: ./src/ts/ui/setContentTheme.ts +var setContentTheme = __webpack_require__(538); +// EXTERNAL MODULE: ./src/ts/util/addScript.ts +var addScript = __webpack_require__(413); +// EXTERNAL MODULE: ./src/ts/util/hasClosest.ts +var hasClosest = __webpack_require__(106); +// EXTERNAL MODULE: ./src/ts/util/merge.ts +var merge = __webpack_require__(673); +;// CONCATENATED MODULE: ./src/ts/markdown/anchorRender.ts +var anchorRender = function (type) { + document.querySelectorAll(".vditor-anchor").forEach(function (anchor) { + if (type === 1) { + anchor.classList.add("vditor-anchor--left"); + } + anchor.onclick = function () { + var id = anchor.getAttribute("href").substr(1); + var top = document.getElementById("vditorAnchor-" + id).offsetTop; + document.querySelector("html").scrollTop = top; + }; + }); + window.onhashchange = function () { + var element = document.getElementById("vditorAnchor-" + decodeURIComponent(window.location.hash.substr(1))); + if (element) { + document.querySelector("html").scrollTop = element.offsetTop; + } + }; +}; + +// EXTERNAL MODULE: ./src/ts/markdown/setLute.ts +var setLute = __webpack_require__(214); +// EXTERNAL MODULE: ./src/ts/util/selection.ts +var selection = __webpack_require__(810); +;// CONCATENATED MODULE: ./src/ts/markdown/speechRender.ts + +var speechRender = function (element, lang) { + if (lang === void 0) { lang = "zh_CN"; } + if (typeof speechSynthesis === "undefined" || typeof SpeechSynthesisUtterance === "undefined") { + return; + } + var getVoice = function () { + var voices = speechSynthesis.getVoices(); + var currentVoice; + var defaultVoice; + voices.forEach(function (item) { + if (item.lang === lang.replace("_", "-")) { + currentVoice = item; + } + if (item.default) { + defaultVoice = item; + } + }); + if (!currentVoice) { + currentVoice = defaultVoice; + } + return currentVoice; + }; + var playSVG = ''; + var pauseSVG = ''; + if (!document.getElementById("vditorIconScript")) { + playSVG = ''; + pauseSVG = ''; + } + var speechDom = document.querySelector(".vditor-speech"); + if (!speechDom) { + speechDom = document.createElement("button"); + speechDom.className = "vditor-speech"; + element.insertAdjacentElement("beforeend", speechDom); + if (speechSynthesis.onvoiceschanged !== undefined) { + speechSynthesis.onvoiceschanged = getVoice; + } + } + var voice = getVoice(); + var utterThis = new SpeechSynthesisUtterance(); + utterThis.voice = voice; + utterThis.onend = utterThis.onerror = function () { + speechDom.style.display = "none"; + speechSynthesis.cancel(); + speechDom.classList.remove("vditor-speech--current"); + speechDom.innerHTML = playSVG; + }; + element.addEventListener(window.ontouchstart !== undefined ? "touchend" : "click", function (event) { + var target = event.target; + if (target.classList.contains("vditor-speech") || target.parentElement.classList.contains("vditor-speech")) { + if (!speechDom.classList.contains("vditor-speech--current")) { + utterThis.text = speechDom.getAttribute("data-text"); + speechSynthesis.speak(utterThis); + speechDom.classList.add("vditor-speech--current"); + speechDom.innerHTML = pauseSVG; + } + else { + if (speechSynthesis.speaking) { + if (speechSynthesis.paused) { + speechSynthesis.resume(); + speechDom.innerHTML = pauseSVG; + } + else { + speechSynthesis.pause(); + speechDom.innerHTML = playSVG; + } + } + } + (0,selection/* setSelectionFocus */.Hc)(window.vditorSpeechRange); + element.focus(); + return; + } + speechDom.style.display = "none"; + speechSynthesis.cancel(); + speechDom.classList.remove("vditor-speech--current"); + speechDom.innerHTML = playSVG; + if (getSelection().rangeCount === 0) { + return; + } + var range = getSelection().getRangeAt(0); + var text = range.toString().trim(); + if (!text) { + return; + } + window.vditorSpeechRange = range.cloneRange(); + var rect = range.getBoundingClientRect(); + speechDom.innerHTML = playSVG; + speechDom.style.display = "block"; + speechDom.style.top = (rect.top + rect.height + document.querySelector("html").scrollTop - 20) + "px"; + if (window.ontouchstart !== undefined) { + speechDom.style.left = (event.changedTouches[event.changedTouches.length - 1].pageX + 2) + "px"; + } + else { + speechDom.style.left = (event.clientX + 2) + "px"; + } + speechDom.setAttribute("data-text", text); + }); +}; + +;// CONCATENATED MODULE: ./src/ts/markdown/previewRender.ts +var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +}; +var __generator = (undefined && undefined.__generator) || function (thisArg, body) { + var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; + function verb(n) { return function (v) { return step([n, v]); }; } + function step(op) { + if (f) throw new TypeError("Generator is already executing."); + while (g && (g = 0, op[0] && (_ = 0)), _) try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; + if (y = 0, t) op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: case 1: t = op; break; + case 4: _.label++; return { value: op[1], done: false }; + case 5: _.label++; y = op[1]; op = [0]; continue; + case 7: op = _.ops.pop(); _.trys.pop(); continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } + if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } + if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } + if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } + if (t[2]) _.ops.pop(); + _.trys.pop(); continue; + } + op = body.call(thisArg, _); + } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } + if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; + } +}; + + + + + + + + + + + + + + + + + + + + + + +var mergeOptions = function (options) { + var _a; + var defaultOption = { + anchor: 0, + cdn: constants/* Constants.CDN */.g.CDN, + customEmoji: {}, + emojiPath: "".concat(constants/* Constants.CDN */.g.CDN, "/dist/images/emoji"), + hljs: constants/* Constants.HLJS_OPTIONS */.g.HLJS_OPTIONS, + icon: "ant", + lang: "zh_CN", + markdown: constants/* Constants.MARKDOWN_OPTIONS */.g.MARKDOWN_OPTIONS, + math: constants/* Constants.MATH_OPTIONS */.g.MATH_OPTIONS, + mode: "light", + speech: { + enable: false, + }, + render: { + media: { + enable: true, + } + }, + theme: constants/* Constants.THEME_OPTIONS */.g.THEME_OPTIONS, + }; + if (options.cdn) { + if (!((_a = options.theme) === null || _a === void 0 ? void 0 : _a.path)) { + defaultOption.theme.path = "".concat(options.cdn, "/dist/css/content-theme"); + } + if (!options.emojiPath) { + defaultOption.emojiPath = "".concat(options.cdn, "/dist/images/emoji"); + } + } + return (0,merge/* merge */.T)(defaultOption, options); +}; +var md2html = function (mdText, options) { + var mergedOptions = mergeOptions(options); + return (0,addScript/* addScript */.G)("".concat(mergedOptions.cdn, "/dist/js/lute/lute.min.js"), "vditorLuteScript").then(function () { + var lute = (0,setLute/* setLute */.X)({ + autoSpace: mergedOptions.markdown.autoSpace, + gfmAutoLink: mergedOptions.markdown.gfmAutoLink, + codeBlockPreview: mergedOptions.markdown.codeBlockPreview, + emojiSite: mergedOptions.emojiPath, + emojis: mergedOptions.customEmoji, + fixTermTypo: mergedOptions.markdown.fixTermTypo, + footnotes: mergedOptions.markdown.footnotes, + headingAnchor: mergedOptions.anchor !== 0, + inlineMathDigit: mergedOptions.math.inlineDigit, + lazyLoadImage: mergedOptions.lazyLoadImage, + linkBase: mergedOptions.markdown.linkBase, + linkPrefix: mergedOptions.markdown.linkPrefix, + listStyle: mergedOptions.markdown.listStyle, + mark: mergedOptions.markdown.mark, + mathBlockPreview: mergedOptions.markdown.mathBlockPreview, + paragraphBeginningSpace: mergedOptions.markdown.paragraphBeginningSpace, + sanitize: mergedOptions.markdown.sanitize, + toc: mergedOptions.markdown.toc, + }); + if (options === null || options === void 0 ? void 0 : options.renderers) { + lute.SetJSRenderers({ + renderers: { + Md2HTML: options.renderers, + }, + }); + } + lute.SetHeadingID(true); + return lute.Md2HTML(mdText); + }); +}; +var previewRender = function (previewElement, markdown, options) { return __awaiter(void 0, void 0, void 0, function () { + var mergedOptions, html, i18nScriptPrefix, i18nScriptID_1; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + mergedOptions = mergeOptions(options); + return [4 /*yield*/, md2html(markdown, mergedOptions)]; + case 1: + html = _a.sent(); + if (mergedOptions.transform) { + html = mergedOptions.transform(html); + } + previewElement.innerHTML = html; + previewElement.classList.add("vditor-reset"); + if (!!mergedOptions.i18n) return [3 /*break*/, 5]; + if (!!["de_DE", "en_US", "fr_FR", "pt_BR", "ja_JP", "ko_KR", "ru_RU", "sv_SE", "zh_CN", "zh_TW"].includes(mergedOptions.lang)) return [3 /*break*/, 2]; + throw new Error("options.lang error, see https://ld246.com/article/1549638745630#options"); + case 2: + i18nScriptPrefix = "vditorI18nScript"; + i18nScriptID_1 = i18nScriptPrefix + mergedOptions.lang; + document.querySelectorAll("head script[id^=\"".concat(i18nScriptPrefix, "\"]")).forEach(function (el) { + if (el.id !== i18nScriptID_1) { + document.head.removeChild(el); + } + }); + return [4 /*yield*/, (0,addScript/* addScript */.G)("".concat(mergedOptions.cdn, "/dist/js/i18n/").concat(mergedOptions.lang, ".js"), i18nScriptID_1)]; + case 3: + _a.sent(); + _a.label = 4; + case 4: return [3 /*break*/, 6]; + case 5: + window.VditorI18n = mergedOptions.i18n; + _a.label = 6; + case 6: + if (!mergedOptions.icon) return [3 /*break*/, 8]; + return [4 /*yield*/, (0,addScript/* addScript */.G)("".concat(mergedOptions.cdn, "/dist/js/icons/").concat(mergedOptions.icon, ".js"), "vditorIconScript")]; + case 7: + _a.sent(); + _a.label = 8; + case 8: + (0,setContentTheme/* setContentTheme */.Z)(mergedOptions.theme.current, mergedOptions.theme.path); + if (mergedOptions.anchor === 1) { + previewElement.classList.add("vditor-reset--anchor"); + } + (0,codeRender/* codeRender */.O)(previewElement, mergedOptions.hljs); + (0,highlightRender/* highlightRender */.s)(mergedOptions.hljs, previewElement, mergedOptions.cdn); + (0,mathRender/* mathRender */.H)(previewElement, { + cdn: mergedOptions.cdn, + math: mergedOptions.math, + }); + (0,mermaidRender/* mermaidRender */.i)(previewElement, mergedOptions.cdn, mergedOptions.mode); + (0,SMILESRender/* SMILESRender */.J)(previewElement, mergedOptions.cdn, mergedOptions.mode); + (0,markmapRender/* markmapRender */.K)(previewElement, mergedOptions.cdn); + (0,flowchartRender/* flowchartRender */.P)(previewElement, mergedOptions.cdn); + (0,graphvizRender/* graphvizRender */.v)(previewElement, mergedOptions.cdn); + (0,chartRender/* chartRender */.p)(previewElement, mergedOptions.cdn, mergedOptions.mode); + (0,mindmapRender/* mindmapRender */.P)(previewElement, mergedOptions.cdn, mergedOptions.mode); + (0,plantumlRender/* plantumlRender */.B)(previewElement, mergedOptions.cdn); + (0,abcRender/* abcRender */.Q)(previewElement, mergedOptions.cdn); + if (mergedOptions.render.media.enable) { + (0,mediaRender/* mediaRender */.Y)(previewElement); + } + if (mergedOptions.speech.enable) { + speechRender(previewElement); + } + if (mergedOptions.anchor !== 0) { + anchorRender(mergedOptions.anchor); + } + if (mergedOptions.after) { + mergedOptions.after(); + } + if (mergedOptions.lazyLoadImage) { + lazyLoadImageRender(previewElement); + } + previewElement.addEventListener("click", function (event) { + var spanElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(event.target, "SPAN"); + if (spanElement && (0,hasClosest/* hasClosestByClassName */.fb)(spanElement, "vditor-toc")) { + var headingElement = previewElement.querySelector("#" + spanElement.getAttribute("data-target-id")); + if (headingElement) { + window.scrollTo(window.scrollX, headingElement.offsetTop); + } + return; + } + }); + return [2 /*return*/]; + } + }); +}); }; + +// EXTERNAL MODULE: ./src/ts/preview/image.ts +var preview_image = __webpack_require__(190); +// EXTERNAL MODULE: ./src/ts/ui/setCodeTheme.ts +var setCodeTheme = __webpack_require__(580); +;// CONCATENATED MODULE: ./src/method.ts + + + + + + + + + + + + + + + + + + + + + +var Vditor = /** @class */ (function () { + function Vditor() { + } + /** 点击图片放大 */ + Vditor.adapterRender = adapterRender; + /** 点击图片放大 */ + Vditor.previewImage = preview_image/* previewImage */.E; + /** 为 element 中的代码块添加复制按钮 */ + Vditor.codeRender = codeRender/* codeRender */.O; + /** 对 graphviz 进行渲染 */ + Vditor.graphvizRender = graphvizRender/* graphvizRender */.v; + /** 为 element 中的代码块进行高亮渲染 */ + Vditor.highlightRender = highlightRender/* highlightRender */.s; + /** 对数学公式进行渲染 */ + Vditor.mathRender = mathRender/* mathRender */.H; + /** 流程图/时序图/甘特图渲染 */ + Vditor.mermaidRender = mermaidRender/* mermaidRender */.i; + /** 化学物质结构渲染 */ + Vditor.SMILESRender = SMILESRender/* SMILESRender */.J; + /** 支持 markdown 的思维导图 */ + Vditor.markmapRender = markmapRender/* markmapRender */.K; + /** flowchart.js 渲染 */ + Vditor.flowchartRender = flowchartRender/* flowchartRender */.P; + /** 图表渲染 */ + Vditor.chartRender = chartRender/* chartRender */.p; + /** 五线谱渲染 */ + Vditor.abcRender = abcRender/* abcRender */.Q; + /** 脑图渲染 */ + Vditor.mindmapRender = mindmapRender/* mindmapRender */.P; + /** plantuml渲染 */ + Vditor.plantumlRender = plantumlRender/* plantumlRender */.B; + /** 大纲渲染 */ + Vditor.outlineRender = outlineRender/* outlineRender */.k; + /** 为[特定链接](https://github.com/Vanessa219/vditor/issues/7)分别渲染为视频、音频、嵌入的 iframe */ + Vditor.mediaRender = mediaRender/* mediaRender */.Y; + /** 对选中的文字进行阅读 */ + Vditor.speechRender = speechRender; + /** 对图片进行懒加载 */ + Vditor.lazyLoadImageRender = lazyLoadImageRender; + /** Markdown 文本转换为 HTML,该方法需使用[异步编程](https://ld246.com/article/1546828434083?r=Vaness) */ + Vditor.md2html = md2html; + /** 页面 Markdown 文章渲染 */ + Vditor.preview = previewRender; + /** 设置代码主题 */ + Vditor.setCodeTheme = setCodeTheme/* setCodeTheme */.Y; + /** 设置内容主题 */ + Vditor.setContentTheme = setContentTheme/* setContentTheme */.Z; + return Vditor; +}()); +/* harmony default export */ const method = (Vditor); + +})(); + +__webpack_exports__ = __webpack_exports__["default"]; +/******/ return __webpack_exports__; +/******/ })() +; +}); \ No newline at end of file diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/method.min.js b/src/main/resources/static/articles/vditor@3.11.1/dist/method.min.js new file mode 100644 index 0000000..41a46a8 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/method.min.js @@ -0,0 +1 @@ +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.Vditor=t():e.Vditor=t()}(this,(function(){return(()=>{"use strict";var e={145:(e,t,n)=>{n.d(t,{g:()=>a});var a=function(){function e(){}return e.ZWSP="​",e.DROP_EDITOR="application/editor",e.MOBILE_WIDTH=520,e.CLASS_MENU_DISABLED="vditor-menu--disabled",e.EDIT_TOOLBARS=["emoji","headings","bold","italic","strike","link","list","ordered-list","outdent","indent","check","line","quote","code","inline-code","insert-after","insert-before","upload","record","table"],e.CODE_THEME=["a11y-dark","agate","an-old-hope","androidstudio","arta","atom-one-dark","atom-one-dark-reasonable","base16/3024","base16/apathy","base16/apprentice","base16/ashes","base16/atelier-cave","base16/atelier-dune","base16/atelier-estuary","base16/atelier-forest","base16/atelier-heath","base16/atelier-lakeside","base16/atelier-plateau","base16/atelier-savanna","base16/atelier-seaside","base16/atelier-sulphurpool","base16/atlas","base16/bespin","base16/black-metal","base16/black-metal-bathory","base16/black-metal-burzum","base16/black-metal-dark-funeral","base16/black-metal-gorgoroth","base16/black-metal-immortal","base16/black-metal-khold","base16/black-metal-marduk","base16/black-metal-mayhem","base16/black-metal-nile","base16/black-metal-venom","base16/brewer","base16/bright","base16/brogrammer","base16/brush-trees-dark","base16/chalk","base16/circus","base16/classic-dark","base16/codeschool","base16/colors","base16/danqing","base16/darcula","base16/dark-violet","base16/darkmoss","base16/darktooth","base16/decaf","base16/default-dark","base16/dracula","base16/edge-dark","base16/eighties","base16/embers","base16/equilibrium-dark","base16/equilibrium-gray-dark","base16/espresso","base16/eva","base16/eva-dim","base16/flat","base16/framer","base16/gigavolt","base16/google-dark","base16/grayscale-dark","base16/green-screen","base16/gruvbox-dark-hard","base16/gruvbox-dark-medium","base16/gruvbox-dark-pale","base16/gruvbox-dark-soft","base16/hardcore","base16/harmonic16-dark","base16/heetch-dark","base16/helios","base16/hopscotch","base16/horizon-dark","base16/humanoid-dark","base16/ia-dark","base16/icy-dark","base16/ir-black","base16/isotope","base16/kimber","base16/london-tube","base16/macintosh","base16/marrakesh","base16/materia","base16/material","base16/material-darker","base16/material-palenight","base16/material-vivid","base16/mellow-purple","base16/mocha","base16/monokai","base16/nebula","base16/nord","base16/nova","base16/ocean","base16/oceanicnext","base16/onedark","base16/outrun-dark","base16/papercolor-dark","base16/paraiso","base16/pasque","base16/phd","base16/pico","base16/pop","base16/porple","base16/qualia","base16/railscasts","base16/rebecca","base16/ros-pine","base16/ros-pine-moon","base16/sandcastle","base16/seti-ui","base16/silk-dark","base16/snazzy","base16/solar-flare","base16/solarized-dark","base16/spacemacs","base16/summercamp","base16/summerfruit-dark","base16/synth-midnight-terminal-dark","base16/tango","base16/tender","base16/tomorrow-night","base16/twilight","base16/unikitty-dark","base16/vulcan","base16/windows-10","base16/windows-95","base16/windows-high-contrast","base16/windows-nt","base16/woodland","base16/xcode-dusk","base16/zenburn","codepen-embed","dark","devibeans","far","felipec","github-dark","github-dark-dimmed","gml","gradient-dark","hybrid","ir-black","isbl-editor-dark","kimbie-dark","lioshi","monokai","monokai-sublime","night-owl","nnfx-dark","nord","obsidian","panda-syntax-dark","paraiso-dark","pojoaque","qtcreator-dark","rainbow","shades-of-purple","srcery","stackoverflow-dark","sunburst","tomorrow-night-blue","tomorrow-night-bright","tokyo-night-dark","vs2015","xt256","ant-design","a11y-light","arduino-light","ascetic","atom-one-light","base16/atelier-cave-light","base16/atelier-dune-light","base16/atelier-estuary-light","base16/atelier-forest-light","base16/atelier-heath-light","base16/atelier-lakeside-light","base16/atelier-plateau-light","base16/atelier-savanna-light","base16/atelier-seaside-light","base16/atelier-sulphurpool-light","base16/brush-trees","base16/classic-light","base16/cupcake","base16/cupertino","base16/default-light","base16/dirtysea","base16/edge-light","base16/equilibrium-gray-light","base16/equilibrium-light","base16/fruit-soda","base16/github","base16/google-light","base16/grayscale-light","base16/gruvbox-light-hard","base16/gruvbox-light-medium","base16/gruvbox-light-soft","base16/harmonic16-light","base16/heetch-light","base16/humanoid-light","base16/horizon-light","base16/ia-light","base16/material-lighter","base16/mexico-light","base16/one-light","base16/papercolor-light","base16/ros-pine-dawn","base16/sagelight","base16/shapeshifter","base16/silk-light","base16/solar-flare-light","base16/solarized-light","base16/summerfruit-light","base16/synth-midnight-terminal-light","base16/tomorrow","base16/unikitty-light","base16/windows-10-light","base16/windows-95-light","base16/windows-high-contrast-light","brown-paper","base16/windows-nt-light","color-brewer","docco","foundation","github","googlecode","gradient-light","grayscale","idea","intellij-light","isbl-editor-light","kimbie-light","lightfair","magula","mono-blue","nnfx-light","panda-syntax-light","paraiso-light","purebasic","qtcreator-light","routeros","school-book","stackoverflow-light","tokyo-night-light","vs","xcode","default"],e.ALIAS_CODE_LANGUAGES=["abc","plantuml","mermaid","flowchart","echarts","mindmap","graphviz","math","markmap","smiles","js","ts","html","toml","c#","bat"],e.CDN="https://unpkg.com/vditor@".concat("3.11.1"),e.MARKDOWN_OPTIONS={autoSpace:!1,gfmAutoLink:!0,codeBlockPreview:!0,fixTermTypo:!1,footnotes:!0,linkBase:"",linkPrefix:"",listStyle:!1,mark:!1,mathBlockPreview:!0,paragraphBeginningSpace:!1,sanitize:!0,toc:!1},e.HLJS_OPTIONS={enable:!0,lineNumber:!1,defaultLang:"",style:"github"},e.MATH_OPTIONS={engine:"KaTeX",inlineDigit:!1,macros:{}},e.THEME_OPTIONS={current:"light",list:{"ant-design":"Ant Design",dark:"Dark",light:"Light",wechat:"WeChat"},path:"".concat(e.CDN,"/dist/css/content-theme")},e}()},825:(e,t,n)=>{n.d(t,{J:()=>s});var a=n(145),r=n(413),i=n(840),o=n(494),s=function(e,t,n){void 0===e&&(e=document),void 0===t&&(t=a.g.CDN);var s=i.SMILESRenderAdapter.getElements(e);s.length>0&&(0,r.G)("".concat(t,"/dist/js/smiles-drawer/smiles-drawer.min.js?v=2.1.7"),"vditorAbcjsScript").then((function(){var e=new SmiDrawer({},{});s.forEach((function(t){var a=i.SMILESRenderAdapter.getCode(t).trim();if("true"!==t.getAttribute("data-processed")&&""!==a.trim()){var r="smiles"+(0,o.Wb)();t.innerHTML=''),e.draw(a,"#"+r,"dark"===n?"dark":void 0),t.setAttribute("data-processed","true")}}))}))}},135:(e,t,n)=>{n.d(t,{Q:()=>o});var a=n(145),r=n(413),i=n(840),o=function(e,t){void 0===e&&(e=document),void 0===t&&(t=a.g.CDN);var n=i.abcRenderAdapter.getElements(e);n.length>0&&(0,r.G)("".concat(t,"/dist/js/abcjs/abcjs_basic.min.js"),"vditorAbcjsScript").then((function(){n.forEach((function(e){e.parentElement.classList.contains("vditor-wysiwyg__pre")||e.parentElement.classList.contains("vditor-ir__marker--pre")||"true"!==e.getAttribute("data-processed")&&(ABCJS.renderAbc(e,i.abcRenderAdapter.getCode(e).trim()),e.style.overflowX="auto",e.setAttribute("data-processed","true"))}))}))}},840:(e,t,n)=>{n.r(t),n.d(t,{mathRenderAdapter:()=>a,SMILESRenderAdapter:()=>r,mermaidRenderAdapter:()=>i,markmapRenderAdapter:()=>o,mindmapRenderAdapter:()=>s,chartRenderAdapter:()=>c,abcRenderAdapter:()=>l,graphvizRenderAdapter:()=>d,flowchartRenderAdapter:()=>u,plantumlRenderAdapter:()=>m});var a={getCode:function(e){return e.textContent},getElements:function(e){return e.querySelectorAll(".language-math")}},r={getCode:function(e){return e.textContent},getElements:function(e){return e.querySelectorAll(".language-smiles")}},i={getCode:function(e){return e.textContent},getElements:function(e){return e.querySelectorAll(".language-mermaid")}},o={getCode:function(e){return e.textContent},getElements:function(e){return e.querySelectorAll(".language-markmap")}},s={getCode:function(e){return e.getAttribute("data-code")},getElements:function(e){return e.querySelectorAll(".language-mindmap")}},c={getCode:function(e){return e.innerText},getElements:function(e){return e.querySelectorAll(".language-echarts")}},l={getCode:function(e){return e.textContent},getElements:function(e){return e.querySelectorAll(".language-abc")}},d={getCode:function(e){return e.textContent},getElements:function(e){return e.querySelectorAll(".language-graphviz")}},u={getCode:function(e){return e.textContent},getElements:function(e){return e.querySelectorAll(".language-flowchart")}},m={getCode:function(e){return e.textContent},getElements:function(e){return e.querySelectorAll(".language-plantuml")}}},775:(e,t,n)=>{n.d(t,{p:()=>l});var a=n(145),r=n(413),i=n(840),o=n(494),s=function(e,t,n,a){return new(n||(n=Promise))((function(r,i){function o(e){try{c(a.next(e))}catch(e){i(e)}}function s(e){try{c(a.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(o,s)}c((a=a.apply(e,t||[])).next())}))},c=function(e,t){var n,a,r,i,o={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(s){return function(c){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(o=0)),o;)try{if(n=1,a&&(r=2&s[0]?a.return:s[0]?a.throw||((r=a.return)&&r.call(a),0):a.next)&&!(r=r.call(a,s[1])).done)return r;switch(a=0,r&&(s=[2&s[0],r.value]),s[0]){case 0:case 1:r=s;break;case 4:return o.label++,{value:s[1],done:!1};case 5:o.label++,a=s[1],s=[0];continue;case 7:s=o.ops.pop(),o.trys.pop();continue;default:if(!(r=o.trys,(r=r.length>0&&r[r.length-1])||6!==s[0]&&2!==s[0])){o=0;continue}if(3===s[0]&&(!r||s[1]>r[0]&&s[1]0&&(0,r.G)("".concat(t,"/dist/js/echarts/echarts.min.js?v=5.5.1"),"vditorEchartsScript").then((function(){l.forEach((function(e){return s(void 0,void 0,void 0,(function(){var t,a,r;return c(this,(function(s){switch(s.label){case 0:if(e.parentElement.classList.contains("vditor-wysiwyg__pre")||e.parentElement.classList.contains("vditor-ir__marker--pre"))return[2];if(!(t=i.chartRenderAdapter.getCode(e).trim()))return[2];s.label=1;case 1:return s.trys.push([1,3,,4]),"true"===e.getAttribute("data-processed")?[2]:[4,(0,o.Qf)(t)];case 2:return a=s.sent(),echarts.init(e,"dark"===n?"dark":void 0).setOption(a),e.setAttribute("data-processed","true"),[3,4];case 3:return r=s.sent(),e.className="vditor-reset--error",e.innerHTML="echarts render error:
    ".concat(r),[3,4];case 4:return[2]}}))}))}))}))}},428:(e,t,n)=>{n.d(t,{O:()=>i});var a=n(105),r=n(145),i=function(e,t){Array.from(e.querySelectorAll("pre > code")).filter((function(t,n){return!t.parentElement.classList.contains("vditor-wysiwyg__pre")&&!t.parentElement.classList.contains("vditor-ir__marker--pre")&&(!(t.classList.contains("language-mermaid")||t.classList.contains("language-flowchart")||t.classList.contains("language-echarts")||t.classList.contains("language-mindmap")||t.classList.contains("language-plantuml")||t.classList.contains("language-markmap")||t.classList.contains("language-abc")||t.classList.contains("language-graphviz")||t.classList.contains("language-math")||t.classList.contains("language-smiles"))&&(!(t.style.maxHeight.indexOf("px")>-1)&&!(e.classList.contains("vditor-preview")&&n>5)))})).forEach((function(e){var n,i,o,s=e.innerText;if(e.classList.contains("highlight-chroma")){var c=e.cloneNode(!0);c.querySelectorAll(".highlight-ln").forEach((function(e){e.remove()})),s=c.innerText}else s.endsWith("\n")&&(s=s.substr(0,s.length-1));var l='';document.getElementById("vditorIconScript")||(l='');var d=document.createElement("div");d.className="vditor-copy",d.innerHTML='").concat(l,"");var u=document.createElement("textarea");u.value=(0,a.X)(s),d.insertAdjacentElement("afterbegin",u),t&&t.renderMenu&&t.renderMenu(e,d),e.before(d),e.style.maxHeight=window.outerHeight-40+"px",e.insertAdjacentHTML("afterend",''.concat(r.g.ZWSP,""))}))}},325:(e,t,n)=>{n.d(t,{P:()=>o});var a=n(145),r=n(413),i=n(840),o=function(e,t){void 0===t&&(t=a.g.CDN);var n=i.flowchartRenderAdapter.getElements(e);0!==n.length&&(0,r.G)("".concat(t,"/dist/js/flowchart.js/flowchart.min.js"),"vditorFlowchartScript").then((function(){n.forEach((function(e){if("true"!==e.getAttribute("data-processed")){var t=flowchart.parse(i.flowchartRenderAdapter.getCode(e));e.innerHTML="",t.drawSVG(e),e.setAttribute("data-processed","true")}}))}))}},483:(e,t,n)=>{n.d(t,{v:()=>o});var a=n(145),r=n(413),i=n(840),o=function(e,t){void 0===t&&(t=a.g.CDN);var n=i.graphvizRenderAdapter.getElements(e);0!==n.length&&(0,r.G)("".concat(t,"/dist/js/graphviz/viz.js"),"vditorGraphVizScript").then((function(){n.forEach((function(e){var t=i.graphvizRenderAdapter.getCode(e);if(!e.parentElement.classList.contains("vditor-wysiwyg__pre")&&!e.parentElement.classList.contains("vditor-ir__marker--pre")&&"true"!==e.getAttribute("data-processed")&&""!==t.trim()){try{var n=new Blob(["importScripts('".concat(document.getElementById("vditorGraphVizScript").src.replace("viz.js","full.render.js"),"');")],{type:"application/javascript"}),a=(window.URL||window.webkitURL).createObjectURL(n),r=new Worker(a);new Viz({worker:r}).renderSVGElement(t).then((function(t){e.innerHTML=t.outerHTML})).catch((function(t){e.innerHTML="graphviz render error:
    ".concat(t),e.className="vditor-reset--error"}))}catch(e){console.error("graphviz error",e)}e.setAttribute("data-processed","true")}}))}))}},999:(e,t,n)=>{n.d(t,{s:()=>o});var a=n(145),r=n(413),i=n(290),o=function(e,t,n){void 0===t&&(t=document),void 0===n&&(n=a.g.CDN);var o=e.style;a.g.CODE_THEME.includes(o)||(o="github");var s=document.getElementById("vditorHljsStyle"),c="".concat(n,"/dist/js/highlight.js/styles/").concat(o,".min.css");(s&&s.getAttribute("href")!==c&&s.remove(),(0,i.c)("".concat(n,"/dist/js/highlight.js/styles/").concat(o,".min.css"),"vditorHljsStyle"),!1!==e.enable)&&(0!==t.querySelectorAll("pre > code").length&&(0,r.G)("".concat(n,"/dist/js/highlight.js/highlight.min.js?v=11.7.0"),"vditorHljsScript").then((function(){(0,r.G)("".concat(n,"/dist/js/highlight.js/third-languages.js?v=1.0.1"),"vditorHljsThirdScript").then((function(){t.querySelectorAll("pre > code").forEach((function(t){if(!t.parentElement.classList.contains("vditor-ir__marker--pre")&&!t.parentElement.classList.contains("vditor-wysiwyg__pre")&&!(t.classList.contains("language-mermaid")||t.classList.contains("language-flowchart")||t.classList.contains("language-echarts")||t.classList.contains("language-mindmap")||t.classList.contains("language-plantuml")||t.classList.contains("language-smiles")||t.classList.contains("language-abc")||t.classList.contains("language-graphviz")||t.classList.contains("language-math"))){""!==e.defaultLang&&-1===t.className.indexOf("language-")&&t.classList.add("language-"+e.defaultLang);var n=t.className.replace("language-","");if(window.hljs.getLanguage(n)||(n="plaintext"),t.innerHTML=window.hljs.highlight(t.textContent,{language:n,ignoreIllegals:!0}).value,t.classList.add("hljs"),e.lineNumber){t.classList.add("vditor-linenumber");var a=t.querySelector(".vditor-linenumber__temp");a||((a=document.createElement("div")).className="vditor-linenumber__temp",t.insertAdjacentElement("beforeend",a));var r=getComputedStyle(t).whiteSpace,i=!1;"pre-wrap"!==r&&"pre-line"!==r||(i=!0);var o="",s=t.textContent.split(/\r\n|\r|\n/g);s.pop(),s.map((function(e){var t="";i&&(a.textContent=e||"\n",t=' style="height:'.concat(a.getBoundingClientRect().height,'px"')),o+="")})),a.style.display="none",o=''.concat(o,""),t.insertAdjacentHTML("beforeend",o)}}}))}))})))}},11:(e,t,n)=>{n.d(t,{K:()=>c});var a=n(145),r=n(413),i=n(840),o={},s=function(e,t){var n=window.markmap,a=n.Transformer,r=n.Markmap,i=n.deriveOptions,s=(n.globalCSS,new a);e.innerHTML='';var c=e.firstChild,l=r.create(c,null),d=function(e,t){var n=e.transform(t),a=Object.keys(n.features).filter((function(e){return!o[e]}));a.forEach((function(e){o[e]=!0}));var r=e.getAssets(a),i=r.styles,s=r.scripts,c=window.markmap;return i&&c.loadCSS(i),s&&c.loadJS(s),n}(s,t),u=d.root,m=d.frontmatter,h=i(null==m?void 0:m.markmap);l.setData(u,h),l.fit()},c=function(e,t){void 0===e&&(e=document),void 0===t&&(t=a.g.CDN);var n=i.markmapRenderAdapter.getElements(e);0!==n.length&&(0,r.G)("".concat(t,"/dist/js/markmap/markmap.min.js"),"vditorMarkerScript").then((function(){n.forEach((function(e){var t=i.markmapRenderAdapter.getCode(e);if("true"!==e.getAttribute("data-processed")&&""!==t.trim()){var n=document.createElement("div");n.className="language-markmap",e.parentNode.appendChild(n),s(n,t),"CODE"==e.parentNode.childNodes[0].nodeName&&e.parentNode.removeChild(e.parentNode.childNodes[0])}}))}))}},472:(e,t,n)=>{n.d(t,{H:()=>c});var a=n(145),r=n(413),i=n(290),o=n(105),s=n(840),c=function(e,t){void 0===e&&(e=document);var n=s.mathRenderAdapter.getElements(e);if(0!==n.length){var c={cdn:a.g.CDN,math:{engine:"KaTeX",inlineDigit:!1,macros:{}}};if(t&&t.math&&(t.math=Object.assign({},c.math,t.math)),"KaTeX"===(t=Object.assign({},c,t)).math.engine)(0,i.c)("".concat(t.cdn,"/dist/js/katex/katex.min.css?v=0.16.9"),"vditorKatexStyle"),(0,r.G)("".concat(t.cdn,"/dist/js/katex/katex.min.js?v=0.16.9"),"vditorKatexScript").then((function(){(0,r.G)("".concat(t.cdn,"/dist/js/katex/mhchem.min.js?v=0.16.9"),"vditorKatexChemScript").then((function(){n.forEach((function(e){if(!e.parentElement.classList.contains("vditor-wysiwyg__pre")&&!e.parentElement.classList.contains("vditor-ir__marker--pre")&&!e.getAttribute("data-math")){var n=(0,o.X)(s.mathRenderAdapter.getCode(e));e.setAttribute("data-math",n);try{e.innerHTML=katex.renderToString(n,{displayMode:"DIV"===e.tagName,output:"html",macros:t.math.macros})}catch(t){e.innerHTML=t.message,e.className="language-math vditor-reset--error"}e.addEventListener("copy",(function(e){e.stopPropagation(),e.preventDefault();var t=e.currentTarget.closest(".language-math");e.clipboardData.setData("text/html",t.innerHTML),e.clipboardData.setData("text/plain",t.getAttribute("data-math"))}))}}))}))}));else if("MathJax"===t.math.engine){window.MathJax||(window.MathJax={loader:{paths:{mathjax:"".concat(t.cdn,"/dist/js/mathjax")}},startup:{typeset:!1},tex:{macros:t.math.macros}},Object.assign(window.MathJax,t.math.mathJaxOptions)),(0,r.J)("".concat(t.cdn,"/dist/js/mathjax/tex-svg-full.js"),"protyleMathJaxScript");var l=function(e,t){var n=(0,o.X)(e.textContent).trim(),a=window.MathJax.getMetricsFor(e);a.display="DIV"===e.tagName,window.MathJax.tex2svgPromise(n,a).then((function(a){e.innerHTML="",e.setAttribute("data-math",n),e.append(a),window.MathJax.startup.document.clear(),window.MathJax.startup.document.updateDocument();var r=a.querySelector('[data-mml-node="merror"]');r&&""!==r.textContent.trim()&&(e.innerHTML=r.textContent.trim(),e.className="vditor-reset--error"),t&&t()}))};window.MathJax.startup.promise.then((function(){for(var e=[],t=function(t){var a=n[t];a.parentElement.classList.contains("vditor-wysiwyg__pre")||a.parentElement.classList.contains("vditor-ir__marker--pre")||a.getAttribute("data-math")||!(0,o.X)(a.textContent).trim()||e.push((function(e){t===n.length-1?l(a):l(a,e)}))},a=0;a{n.d(t,{Y:()=>r});var a=n(494),r=function(e){e&&e.querySelectorAll("a").forEach((function(e){var t=e.getAttribute("href");t&&(t.match(/^.+.(mp4|m4v|ogg|ogv|webm)$/)?function(e,t){e.insertAdjacentHTML("afterend",'')),e.remove()}(e,t):t.match(/^.+.(mp3|wav|flac)$/)?function(e,t){e.insertAdjacentHTML("afterend",'')),e.remove()}(e,t):function(e,t){var n=t.match(/\/\/(?:www\.)?(?:youtu\.be\/|youtube\.com\/(?:embed\/|v\/|watch\?v=|watch\?.+&v=))([\w|-]{11})(?:(?:[\?&]t=)(\S+))?/),r=t.match(/\/\/v\.youku\.com\/v_show\/id_(\w+)=*\.html/),i=t.match(/\/\/v\.qq\.com\/x\/cover\/.*\/([^\/]+)\.html\??.*/),o=t.match(/(?:www\.|\/\/)coub\.com\/view\/(\w+)/),s=t.match(/(?:www\.|\/\/)facebook\.com\/([^\/]+)\/videos\/([0-9]+)/),c=t.match(/.+dailymotion.com\/(video|hub)\/(\w+)\?/),l=t.match(/(?:www\.|\/\/)bilibili\.com\/video\/(\w+)/),d=t.match(/(?:www\.|\/\/)ted\.com\/talks\/(\w+)/);if(n&&11===n[1].length)e.insertAdjacentHTML("afterend",'')),e.remove();else if(r&&r[1])e.insertAdjacentHTML("afterend",'')),e.remove();else if(i&&i[1])e.insertAdjacentHTML("afterend",'')),e.remove();else if(o&&o[1])e.insertAdjacentHTML("afterend",'')),e.remove();else if(s&&s[0])e.insertAdjacentHTML("afterend",'')),e.remove();else if(c&&c[2])e.insertAdjacentHTML("afterend",'')),e.remove();else if(t.indexOf("bilibili.com")>-1&&(t.indexOf("bvid=")>-1||l&&l[1])){var u={bvid:(0,a.on)("bvid",t)||l&&l[1],page:"1",high_quality:"1",as_wide:"1",allowfullscreen:"true",autoplay:"0"};new URL(t.startsWith("http")?t:"https:"+t).search.split("&").forEach((function(e,t){if(e){0===t&&(e=e.substr(1));var n=e.split("=");u[n[0]]=n[1]}}));var m="https://player.bilibili.com/player.html?",h=Object.keys(u);h.forEach((function(e,t){m+="".concat(e,"=").concat(u[e]),t')),e.remove()}else d&&d[1]&&(e.insertAdjacentHTML("afterend",'')),e.remove())}(e,t))}))}},637:(e,t,n)=>{n.d(t,{i:()=>l});var a=n(145),r=n(413),i=n(840),o=n(494),s=function(e,t,n,a){return new(n||(n=Promise))((function(r,i){function o(e){try{c(a.next(e))}catch(e){i(e)}}function s(e){try{c(a.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(o,s)}c((a=a.apply(e,t||[])).next())}))},c=function(e,t){var n,a,r,i,o={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(s){return function(c){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(o=0)),o;)try{if(n=1,a&&(r=2&s[0]?a.return:s[0]?a.throw||((r=a.return)&&r.call(a),0):a.next)&&!(r=r.call(a,s[1])).done)return r;switch(a=0,r&&(s=[2&s[0],r.value]),s[0]){case 0:case 1:r=s;break;case 4:return o.label++,{value:s[1],done:!1};case 5:o.label++,a=s[1],s=[0];continue;case 7:s=o.ops.pop(),o.trys.pop();continue;default:if(!(r=o.trys,(r=r.length>0&&r[r.length-1])||6!==s[0]&&2!==s[0])){o=0;continue}if(3===s[0]&&(!r||s[1]>r[0]&&s[1]\n

    ').concat(r.message.replace(/\n/,"
    "),"
    "),s.parentElement.remove(),[3,4];case 4:return e.setAttribute("data-processed","true"),[2]}}))}))}))}))}},194:(e,t,n)=>{n.d(t,{P:()=>o});var a=n(145),r=n(413),i=n(840),o=function(e,t,n){void 0===e&&(e=document),void 0===t&&(t=a.g.CDN);var o=i.mindmapRenderAdapter.getElements(e);o.length>0&&(0,r.G)("".concat(t,"/dist/js/echarts/echarts.min.js?v=5.5.1"),"vditorEchartsScript").then((function(){o.forEach((function(e){if(!e.parentElement.classList.contains("vditor-wysiwyg__pre")&&!e.parentElement.classList.contains("vditor-ir__marker--pre")){var t=i.mindmapRenderAdapter.getCode(e);if(t)try{if("true"===e.getAttribute("data-processed"))return;echarts.init(e,"dark"===n?"dark":void 0).setOption({series:[{data:[JSON.parse(decodeURIComponent(t))],initialTreeDepth:-1,itemStyle:{borderWidth:0,color:"#4285f4"},label:{backgroundColor:"#f6f8fa",borderColor:"#d1d5da",borderRadius:5,borderWidth:.5,color:"#586069",lineHeight:20,offset:[-5,0],padding:[0,5],position:"insideRight"},lineStyle:{color:"#d1d5da",width:1},roam:!0,symbol:function(e,t){var n;return(null===(n=null==t?void 0:t.data)||void 0===n?void 0:n.children)?"circle":"path://"},type:"tree"}],tooltip:{trigger:"item",triggerOn:"mousemove"}}),e.setAttribute("data-processed","true")}catch(t){e.className="vditor-reset--error",e.innerHTML="mindmap render error:
    ".concat(t)}}}))}))}},436:(e,t,n)=>{n.d(t,{k:()=>i});var a=n(771),r=n(472),i=function(e,t,n){var i="",o=[];if(Array.from(e.children).forEach((function(e,t){if((0,a.W)(e)){if(n){var r=e.id.lastIndexOf("_");e.id=e.id.substring(0,-1===r?void 0:r)+"_"+t}o.push(e.id),i+=e.outerHTML.replace("","")}})),""===i)return t.innerHTML="","";var s=document.createElement("div");if(n)n.lute.SetToC(!0),"wysiwyg"!==n.currentMode||n.preview.element.contains(e)?"ir"!==n.currentMode||n.preview.element.contains(e)?s.innerHTML=n.lute.HTML2VditorDOM("

    [ToC]

    "+i):s.innerHTML=n.lute.SpinVditorIRDOM("

    [ToC]

    "+i):s.innerHTML=n.lute.SpinVditorDOM("

    [ToC]

    "+i),n.lute.SetToC(n.options.preview.markdown.toc);else{t.classList.add("vditor-outline");var c=Lute.New();c.SetToC(!0),s.innerHTML=c.HTML2VditorDOM("

    [ToC]

    "+i)}var l=s.firstElementChild.querySelectorAll("li > span[data-target-id]");return l.forEach((function(e,t){if(e.nextElementSibling&&"UL"===e.nextElementSibling.tagName){var n="";document.getElementById("vditorIconScript")||(n=''),e.innerHTML="".concat(n,"").concat(e.innerHTML,"")}else e.innerHTML="".concat(e.innerHTML,"");e.setAttribute("data-target-id",o[t])})),i=s.firstElementChild.innerHTML,0===l.length?(t.innerHTML="",i):(t.innerHTML=i,n&&(0,r.H)(t,{cdn:n.options.cdn,math:n.options.preview.math}),t.firstElementChild.addEventListener("click",(function(a){for(var r=a.target;r&&!r.isEqualNode(t);){if(r.classList.contains("vditor-outline__action")){r.classList.contains("vditor-outline__action--close")?(r.classList.remove("vditor-outline__action--close"),r.parentElement.nextElementSibling.setAttribute("style","display:block")):(r.classList.add("vditor-outline__action--close"),r.parentElement.nextElementSibling.setAttribute("style","display:none")),a.preventDefault(),a.stopPropagation();break}if(r.getAttribute("data-target-id")){a.preventDefault(),a.stopPropagation();var i=document.getElementById(r.getAttribute("data-target-id"));if(!i)return;if(n)if("auto"===n.options.height){var o=i.offsetTop+n.element.offsetTop;n.options.toolbarConfig.pin||(o+=n.toolbar.element.offsetHeight),window.scrollTo(window.scrollX,o)}else n.element.offsetTop{n.d(t,{B:()=>o});var a=n(145),r=n(413),i=n(840),o=function(e,t){void 0===e&&(e=document),void 0===t&&(t=a.g.CDN);var n=i.plantumlRenderAdapter.getElements(e);0!==n.length&&(0,r.G)("".concat(t,"/dist/js/plantuml/plantuml-encoder.min.js"),"vditorPlantumlScript").then((function(){n.forEach((function(e){if(!e.parentElement.classList.contains("vditor-wysiwyg__pre")&&!e.parentElement.classList.contains("vditor-ir__marker--pre")){var t=i.plantumlRenderAdapter.getCode(e).trim();if(t)try{e.innerHTML='')}catch(t){e.className="vditor-reset--error",e.innerHTML="plantuml render error:
    ".concat(t)}}}))}))}},214:(e,t,n)=>{n.d(t,{X:()=>a});var a=function(e){var t=Lute.New();return t.PutEmojis(e.emojis),t.SetEmojiSite(e.emojiSite),t.SetHeadingAnchor(e.headingAnchor),t.SetInlineMathAllowDigitAfterOpenMarker(e.inlineMathDigit),t.SetAutoSpace(e.autoSpace),t.SetToC(e.toc),t.SetFootnotes(e.footnotes),t.SetFixTermTypo(e.fixTermTypo),t.SetVditorCodeBlockPreview(e.codeBlockPreview),t.SetVditorMathBlockPreview(e.mathBlockPreview),t.SetSanitize(e.sanitize),t.SetChineseParagraphBeginningSpace(e.paragraphBeginningSpace),t.SetRenderListStyle(e.listStyle),t.SetLinkBase(e.linkBase),t.SetLinkPrefix(e.linkPrefix),t.SetMark(e.mark),t.SetGFMAutoLink(e.gfmAutoLink),e.lazyLoadImage&&t.SetImageLazyLoading(e.lazyLoadImage),t}},190:(e,t,n)=>{n.d(t,{E:()=>a});var a=function(e,t,n){void 0===t&&(t="zh_CN"),void 0===n&&(n="classic");var a=e.getBoundingClientRect();document.body.insertAdjacentHTML("beforeend",'
    \n
    \n \n \n ').concat(window.VditorI18n.spin,"\n \n \n X  ").concat(window.VditorI18n.close,'\n \n
    \n
    \n \n
    \n
    ')),document.body.style.overflow="hidden";var r=document.querySelector(".vditor-img img"),i="translate3d(".concat(Math.max(0,window.innerWidth-e.naturalWidth)/2,"px, ").concat(Math.max(0,window.innerHeight-36-e.naturalHeight)/2,"px, 0)");setTimeout((function(){r.setAttribute("style","transition: transform .3s ease-in-out;transform: ".concat(i)),setTimeout((function(){r.parentElement.scrollTo((r.parentElement.scrollWidth-r.parentElement.clientWidth)/2,(r.parentElement.scrollHeight-r.parentElement.clientHeight)/2)}),400)}));var o=document.querySelector(".vditor-img__btn");o.addEventListener("click",(function(){var t=parseInt(o.getAttribute("data-deg"),10)+90;t/90%2==1&&e.naturalWidth>r.parentElement.clientHeight?r.style.transform="translate3d(".concat(Math.max(0,window.innerWidth-e.naturalWidth)/2,"px, ").concat(e.naturalWidth/2-e.naturalHeight/2,"px, 0) rotateZ(").concat(t,"deg)"):r.style.transform="".concat(i," rotateZ(").concat(t,"deg)"),o.setAttribute("data-deg",t.toString()),setTimeout((function(){r.parentElement.scrollTo((r.parentElement.scrollWidth-r.parentElement.clientWidth)/2,(r.parentElement.scrollHeight-r.parentElement.clientHeight)/2)}),400)}))}},580:(e,t,n)=>{n.d(t,{Y:()=>i});var a=n(145),r=n(290),i=function(e,t){void 0===t&&(t=a.g.CDN),a.g.CODE_THEME.includes(e)||(e="github");var n=document.getElementById("vditorHljsStyle"),i="".concat(t,"/dist/js/highlight.js/styles/").concat(e,".min.css");n?n.getAttribute("href")!==i&&(n.remove(),(0,r.c)(i,"vditorHljsStyle")):(0,r.c)(i,"vditorHljsStyle")}},538:(e,t,n)=>{n.d(t,{Z:()=>r});var a=n(290),r=function(e,t){if(e&&t){var n=document.getElementById("vditorContentTheme"),r="".concat(t,"/").concat(e,".css");n?n.getAttribute("href")!==r&&(n.remove(),(0,a.c)(r,"vditorContentTheme")):(0,a.c)(r,"vditorContentTheme")}}},413:(e,t,n)=>{n.d(t,{J:()=>a,G:()=>r});var a=function(e,t){if(document.getElementById(t))return!1;var n=new XMLHttpRequest;n.open("GET",e,!1),n.setRequestHeader("Accept","text/javascript, application/javascript, application/ecmascript, application/x-ecmascript, */*; q=0.01"),n.send("");var a=document.createElement("script");a.type="text/javascript",a.text=n.responseText,a.id=t,document.head.appendChild(a)},r=function(e,t){return new Promise((function(n,a){if(document.getElementById(t))return n(!0),!1;var r=document.createElement("script");r.src=e,r.async=!0,document.head.appendChild(r),r.onerror=function(e){a(e)},r.onload=function(){if(document.getElementById(t))return r.remove(),n(!0),!1;r.id=t,n(!0)}}))}},290:(e,t,n)=>{n.d(t,{c:()=>a});var a=function(e,t){if(!document.getElementById(t)){var n=document.createElement("link");n.id=t,n.rel="stylesheet",n.type="text/css",n.href=e,document.getElementsByTagName("head")[0].appendChild(n)}}},105:(e,t,n)=>{n.d(t,{X:()=>a});var a=function(e){return e.replace(/\u00a0/g," ")}},494:(e,t,n)=>{n.d(t,{Wb:()=>a,on:()=>r,Qf:()=>i});var a=function(){return([1e7].toString()+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,(function(e){return(parseInt(e,10)^window.crypto.getRandomValues(new Uint32Array(1))[0]&15>>parseInt(e,10)/4).toString(16)}))},r=function(e,t){void 0===t&&(t=window.location.search);var n=t.substring(t.indexOf("?")),a=n.indexOf("#");return new URLSearchParams(n.substring(0,a>=0?a:void 0)).get(e)},i=function(e){return Function('"use strict";return ('.concat(e,")"))()}},106:(e,t,n)=>{n.d(t,{lG:()=>a,fb:()=>r});var a=function(e,t){if(!e)return!1;3===e.nodeType&&(e=e.parentElement);for(var n=e,a=!1;n&&!a&&!n.classList.contains("vditor-reset");)n.nodeName===t?a=!0:n=n.parentElement;return a&&n},r=function(e,t){if(!e)return!1;3===e.nodeType&&(e=e.parentElement);for(var n=e,a=!1;n&&!a&&!n.classList.contains("vditor-reset");)n.classList.contains(t)?a=!0:n=n.parentElement;return a&&n}},771:(e,t,n)=>{n.d(t,{W:()=>a});var a=function(e){var t=function(e,t){if(!e)return!1;3===e.nodeType&&(e=e.parentElement);for(var n=e,a=!1;n&&!a&&!n.classList.contains("vditor-reset");)0===n.nodeName.indexOf(t)?a=!0:n=n.parentElement;return a&&n}(e,"H");return!(!t||2!==t.tagName.length||"HR"===t.tagName)&&t}},673:(e,t,n)=>{n.d(t,{T:()=>a});var a=function(){for(var e=[],t=0;t{n.d(t,{Hc:()=>a});n(145);var a=function(e){var t=window.getSelection();t.removeAllRanges(),t.addRange(e)}}},t={};function n(a){var r=t[a];if(void 0!==r)return r.exports;var i=t[a]={exports:{}};return e[a](i,i.exports,n),i.exports}n.d=(e,t)=>{for(var a in t)n.o(t,a)&&!n.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};return(()=>{n.d(a,{default:()=>R});var e=n(135),t=n(840),r=n(775),i=n(428),o=n(325),s=n(483),c=n(999),l=function(e){void 0===e&&(e=document);var t=function(e){var t=document.createElement("img");t.src=e.getAttribute("data-src"),t.addEventListener("load",(function(){e.getAttribute("style")||e.getAttribute("class")||e.getAttribute("width")||e.getAttribute("height")||t.naturalHeight>t.naturalWidth&&t.naturalWidth/t.naturalHeightwindow.innerHeight-40&&(e.style.height=window.innerHeight-40+"px"),e.src=t.src})),e.removeAttribute("data-src")};if(!("IntersectionObserver"in window))return e.querySelectorAll("img").forEach((function(e){e.getAttribute("data-src")&&t(e)})),!1;window.vditorImageIntersectionObserver?(window.vditorImageIntersectionObserver.disconnect(),e.querySelectorAll("img").forEach((function(e){window.vditorImageIntersectionObserver.observe(e)}))):(window.vditorImageIntersectionObserver=new IntersectionObserver((function(e){e.forEach((function(e){(void 0===e.isIntersecting?0!==e.intersectionRatio:e.isIntersecting)&&e.target.getAttribute("data-src")&&t(e.target)}))})),e.querySelectorAll("img").forEach((function(e){window.vditorImageIntersectionObserver.observe(e)})))},d=n(472),u=n(280),m=n(637),h=n(825),g=n(11),p=n(194),v=n(436),f=n(229),b=n(145),w=n(538),y=n(413),k=n(106),S=n(673),E=n(214),L=n(810),x=function(e,t){if(void 0===t&&(t="zh_CN"),"undefined"!=typeof speechSynthesis&&"undefined"!=typeof SpeechSynthesisUtterance){var n=function(){var e,n;return speechSynthesis.getVoices().forEach((function(a){a.lang===t.replace("_","-")&&(e=a),a.default&&(n=a)})),e||(e=n),e},a='',r='';document.getElementById("vditorIconScript")||(a='',r='');var i=document.querySelector(".vditor-speech");i||((i=document.createElement("button")).className="vditor-speech",e.insertAdjacentElement("beforeend",i),void 0!==speechSynthesis.onvoiceschanged&&(speechSynthesis.onvoiceschanged=n));var o=n(),s=new SpeechSynthesisUtterance;s.voice=o,s.onend=s.onerror=function(){i.style.display="none",speechSynthesis.cancel(),i.classList.remove("vditor-speech--current"),i.innerHTML=a},e.addEventListener(void 0!==window.ontouchstart?"touchend":"click",(function(t){var n=t.target;if(n.classList.contains("vditor-speech")||n.parentElement.classList.contains("vditor-speech"))return i.classList.contains("vditor-speech--current")?speechSynthesis.speaking&&(speechSynthesis.paused?(speechSynthesis.resume(),i.innerHTML=r):(speechSynthesis.pause(),i.innerHTML=a)):(s.text=i.getAttribute("data-text"),speechSynthesis.speak(s),i.classList.add("vditor-speech--current"),i.innerHTML=r),(0,L.Hc)(window.vditorSpeechRange),void e.focus();if(i.style.display="none",speechSynthesis.cancel(),i.classList.remove("vditor-speech--current"),i.innerHTML=a,0!==getSelection().rangeCount){var o=getSelection().getRangeAt(0),c=o.toString().trim();if(c){window.vditorSpeechRange=o.cloneRange();var l=o.getBoundingClientRect();i.innerHTML=a,i.style.display="block",i.style.top=l.top+l.height+document.querySelector("html").scrollTop-20+"px",void 0!==window.ontouchstart?i.style.left=t.changedTouches[t.changedTouches.length-1].pageX+2+"px":i.style.left=t.clientX+2+"px",i.setAttribute("data-text",c)}}}))}},A=function(e,t,n,a){return new(n||(n=Promise))((function(r,i){function o(e){try{c(a.next(e))}catch(e){i(e)}}function s(e){try{c(a.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(o,s)}c((a=a.apply(e,t||[])).next())}))},T=function(e,t){var n,a,r,i,o={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(s){return function(c){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(o=0)),o;)try{if(n=1,a&&(r=2&s[0]?a.return:s[0]?a.throw||((r=a.return)&&r.call(a),0):a.next)&&!(r=r.call(a,s[1])).done)return r;switch(a=0,r&&(s=[2&s[0],r.value]),s[0]){case 0:case 1:r=s;break;case 4:return o.label++,{value:s[1],done:!1};case 5:o.label++,a=s[1],s=[0];continue;case 7:s=o.ops.pop(),o.trys.pop();continue;default:if(!(r=o.trys,(r=r.length>0&&r[r.length-1])||6!==s[0]&&2!==s[0])){o=0;continue}if(3===s[0]&&(!r||s[1]>r[0]&&s[1] +declare const _VDITOR_VERSION: string; +export { _VDITOR_VERSION as VDITOR_VERSION }; +export declare abstract class Constants { + static readonly ZWSP: string; + static readonly DROP_EDITOR: string; + static readonly MOBILE_WIDTH: number; + static readonly CLASS_MENU_DISABLED: string; + static readonly EDIT_TOOLBARS: string[]; + static readonly CODE_THEME: string[]; + static readonly ALIAS_CODE_LANGUAGES: string[]; + static readonly CDN: string; + static readonly MARKDOWN_OPTIONS: { + autoSpace: boolean; + gfmAutoLink: boolean; + codeBlockPreview: boolean; + fixTermTypo: boolean; + footnotes: boolean; + linkBase: string; + linkPrefix: string; + listStyle: boolean; + mark: boolean; + mathBlockPreview: boolean; + paragraphBeginningSpace: boolean; + sanitize: boolean; + toc: boolean; + }; + static readonly HLJS_OPTIONS: { + enable: boolean; + lineNumber: boolean; + defaultLang: string; + style: string; + }; + static readonly MATH_OPTIONS: IMath; + static readonly THEME_OPTIONS: { + current: string; + list: { + "ant-design": string; + dark: string; + light: string; + wechat: string; + }; + path: string; + }; +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/devtools/index.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/devtools/index.d.ts new file mode 100644 index 0000000..8326863 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/devtools/index.d.ts @@ -0,0 +1,7 @@ +/// +export declare class DevTools { + element: HTMLDivElement; + private ASTChart; + constructor(); + renderEchart(vditor: IVditor): void; +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/export/index.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/export/index.d.ts new file mode 100644 index 0000000..fcdf8c9 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/export/index.d.ts @@ -0,0 +1,4 @@ +export declare const download: (vditor: IVditor, content: string, filename: string) => void; +export declare const exportMarkdown: (vditor: IVditor) => void; +export declare const exportPDF: (vditor: IVditor) => void; +export declare const exportHTML: (vditor: IVditor) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/hint/index.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/hint/index.d.ts new file mode 100644 index 0000000..86da891 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/hint/index.d.ts @@ -0,0 +1,14 @@ +/// +export declare class Hint { + timeId: number; + element: HTMLDivElement; + recentLanguage: string; + private splitChar; + private lastIndex; + constructor(hintExtends: IHintExtend[]); + render(vditor: IVditor): void; + genHTML(data: IHintData[], key: string, vditor: IVditor): void; + fillEmoji: (element: HTMLElement, vditor: IVditor) => void; + select(event: KeyboardEvent, vditor: IVditor): boolean; + private getKey; +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ir/expandMarker.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ir/expandMarker.d.ts new file mode 100644 index 0000000..7b25f42 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ir/expandMarker.d.ts @@ -0,0 +1 @@ +export declare const expandMarker: (range: Range, vditor: IVditor) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ir/highlightToolbarIR.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ir/highlightToolbarIR.d.ts new file mode 100644 index 0000000..35bc0d1 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ir/highlightToolbarIR.d.ts @@ -0,0 +1 @@ +export declare const highlightToolbarIR: (vditor: IVditor) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ir/index.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ir/index.d.ts new file mode 100644 index 0000000..62d2723 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ir/index.d.ts @@ -0,0 +1,13 @@ +/// +declare class IR { + range: Range; + element: HTMLPreElement; + processTimeoutId: number; + hlToolbarTimeoutId: number; + composingLock: boolean; + preventInput: boolean; + constructor(vditor: IVditor); + private copy; + private bindEvent; +} +export { IR }; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ir/input.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ir/input.d.ts new file mode 100644 index 0000000..1ba9cf8 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ir/input.d.ts @@ -0,0 +1 @@ +export declare const input: (vditor: IVditor, range: Range, ignoreSpace?: boolean, event?: InputEvent) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ir/process.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ir/process.d.ts new file mode 100644 index 0000000..904df54 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ir/process.d.ts @@ -0,0 +1,8 @@ +export declare const processHint: (vditor: IVditor) => void; +export declare const processAfterRender: (vditor: IVditor, options?: { + enableAddUndoStack: boolean; + enableHint: boolean; + enableInput: boolean; +}) => void; +export declare const processHeading: (vditor: IVditor, value: string) => void; +export declare const processToolbar: (vditor: IVditor, actionBtn: Element, prefix: string, suffix: string) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ir/processKeydown.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ir/processKeydown.d.ts new file mode 100644 index 0000000..b174785 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ir/processKeydown.d.ts @@ -0,0 +1 @@ +export declare const processKeydown: (vditor: IVditor, event: KeyboardEvent) => boolean; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/SMILESRender.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/SMILESRender.d.ts new file mode 100644 index 0000000..b8813d4 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/SMILESRender.d.ts @@ -0,0 +1 @@ +export declare const SMILESRender: (element: (HTMLElement | Document), cdn: string, theme: string) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/abcRender.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/abcRender.d.ts new file mode 100644 index 0000000..144f211 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/abcRender.d.ts @@ -0,0 +1 @@ +export declare const abcRender: (element?: (HTMLElement | Document), cdn?: string) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/adapterRender.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/adapterRender.d.ts new file mode 100644 index 0000000..63f651e --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/adapterRender.d.ts @@ -0,0 +1,41 @@ +export declare const mathRenderAdapter: { + getCode: (el: Element) => string; + getElements: (element: HTMLElement | Document) => NodeListOf; +}; +export declare const SMILESRenderAdapter: { + getCode: (el: Element) => string; + getElements: (element: HTMLElement | Document) => NodeListOf; +}; +export declare const mermaidRenderAdapter: { + /** 不仅要返回code,并且需要将 code 设置为 el 的 innerHTML */ + getCode: (el: Element) => string; + getElements: (element: HTMLElement | Document) => NodeListOf; +}; +export declare const markmapRenderAdapter: { + getCode: (el: Element) => string; + getElements: (element: HTMLElement | Document) => NodeListOf; +}; +export declare const mindmapRenderAdapter: { + getCode: (el: Element) => string; + getElements: (el: HTMLElement | Document) => NodeListOf; +}; +export declare const chartRenderAdapter: { + getCode: (el: HTMLElement) => string; + getElements: (el: HTMLElement | Document) => NodeListOf; +}; +export declare const abcRenderAdapter: { + getCode: (el: Element) => string; + getElements: (el: HTMLElement | Document) => NodeListOf; +}; +export declare const graphvizRenderAdapter: { + getCode: (el: Element) => string; + getElements: (el: HTMLElement | Document) => NodeListOf; +}; +export declare const flowchartRenderAdapter: { + getCode: (el: Element) => string; + getElements: (el: HTMLElement | Document) => NodeListOf; +}; +export declare const plantumlRenderAdapter: { + getCode: (el: Element) => string; + getElements: (el: HTMLElement | Document) => NodeListOf; +}; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/anchorRender.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/anchorRender.d.ts new file mode 100644 index 0000000..4a88588 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/anchorRender.d.ts @@ -0,0 +1 @@ +export declare const anchorRender: (type: number) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/chartRender.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/chartRender.d.ts new file mode 100644 index 0000000..afbe41d --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/chartRender.d.ts @@ -0,0 +1 @@ +export declare const chartRender: (element: (HTMLElement | Document), cdn: string, theme: string) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/codeRender.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/codeRender.d.ts new file mode 100644 index 0000000..23c7ea1 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/codeRender.d.ts @@ -0,0 +1 @@ +export declare const codeRender: (element: HTMLElement, option?: IHljs) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/flowchartRender.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/flowchartRender.d.ts new file mode 100644 index 0000000..959f12c --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/flowchartRender.d.ts @@ -0,0 +1 @@ +export declare const flowchartRender: (element: HTMLElement, cdn?: string) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/getHTML.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/getHTML.d.ts new file mode 100644 index 0000000..dd1ccde --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/getHTML.d.ts @@ -0,0 +1 @@ +export declare const getHTML: (vditor: IVditor) => string; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/getMarkdown.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/getMarkdown.d.ts new file mode 100644 index 0000000..fd05484 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/getMarkdown.d.ts @@ -0,0 +1 @@ +export declare const getMarkdown: (vditor: IVditor) => string; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/graphvizRender.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/graphvizRender.d.ts new file mode 100644 index 0000000..9a92dac --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/graphvizRender.d.ts @@ -0,0 +1 @@ +export declare const graphvizRender: (element: HTMLElement, cdn?: string) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/highlightRender.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/highlightRender.d.ts new file mode 100644 index 0000000..f8ad804 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/highlightRender.d.ts @@ -0,0 +1 @@ +export declare const highlightRender: (hljsOption?: IHljs, element?: HTMLElement | Document, cdn?: string) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/lazyLoadImageRender.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/lazyLoadImageRender.d.ts new file mode 100644 index 0000000..28cccac --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/lazyLoadImageRender.d.ts @@ -0,0 +1,6 @@ +declare global { + interface Window { + vditorImageIntersectionObserver: IntersectionObserver; + } +} +export declare const lazyLoadImageRender: (element?: (HTMLElement | Document)) => boolean; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/markmapRender.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/markmapRender.d.ts new file mode 100644 index 0000000..de189c5 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/markmapRender.d.ts @@ -0,0 +1 @@ +export declare const markmapRender: (element?: (HTMLElement | Document), cdn?: string) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/mathRender.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/mathRender.d.ts new file mode 100644 index 0000000..47b0495 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/mathRender.d.ts @@ -0,0 +1,9 @@ +declare global { + interface Window { + MathJax: any; + } +} +export declare const mathRender: (element?: (HTMLElement | Document), options?: { + cdn?: string; + math?: IMath; +}) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/mediaRender.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/mediaRender.d.ts new file mode 100644 index 0000000..7751ab0 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/mediaRender.d.ts @@ -0,0 +1 @@ +export declare const mediaRender: (element: HTMLElement) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/mermaidRender.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/mermaidRender.d.ts new file mode 100644 index 0000000..d9b7141 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/mermaidRender.d.ts @@ -0,0 +1 @@ +export declare const mermaidRender: (element: (HTMLElement | Document), cdn: string, theme: string) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/mindmapRender.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/mindmapRender.d.ts new file mode 100644 index 0000000..cc55f7f --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/mindmapRender.d.ts @@ -0,0 +1 @@ +export declare const mindmapRender: (element: (HTMLElement | Document), cdn: string, theme: string) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/outlineRender.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/outlineRender.d.ts new file mode 100644 index 0000000..b7cae0c --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/outlineRender.d.ts @@ -0,0 +1 @@ +export declare const outlineRender: (contentElement: HTMLElement, targetElement: Element, vditor?: IVditor) => string; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/plantumlRender.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/plantumlRender.d.ts new file mode 100644 index 0000000..db7dde6 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/plantumlRender.d.ts @@ -0,0 +1 @@ +export declare const plantumlRender: (element?: (HTMLElement | Document), cdn?: string) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/previewRender.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/previewRender.d.ts new file mode 100644 index 0000000..eae88cc --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/previewRender.d.ts @@ -0,0 +1,2 @@ +export declare const md2html: (mdText: string, options?: IPreviewOptions) => Promise; +export declare const previewRender: (previewElement: HTMLDivElement, markdown: string, options?: IPreviewOptions) => Promise; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/setLute.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/setLute.d.ts new file mode 100644 index 0000000..daed2ff --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/setLute.d.ts @@ -0,0 +1 @@ +export declare const setLute: (options: ILuteOptions) => Lute; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/speechRender.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/speechRender.d.ts new file mode 100644 index 0000000..f1f0afa --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/markdown/speechRender.d.ts @@ -0,0 +1,6 @@ +declare global { + interface Window { + vditorSpeechRange: Range; + } +} +export declare const speechRender: (element: HTMLElement, lang?: keyof II18n) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/outline/index.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/outline/index.d.ts new file mode 100644 index 0000000..5db47ea --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/outline/index.d.ts @@ -0,0 +1,7 @@ +/// +export declare class Outline { + element: HTMLElement; + constructor(outlineLabel: string); + render(vditor: IVditor): string; + toggle(vditor: IVditor, show?: boolean, focus?: boolean): void; +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/preview/image.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/preview/image.d.ts new file mode 100644 index 0000000..277b901 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/preview/image.d.ts @@ -0,0 +1 @@ +export declare const previewImage: (oldImgElement: HTMLImageElement, lang?: keyof II18n, theme?: string) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/preview/index.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/preview/index.d.ts new file mode 100644 index 0000000..f5e4503 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/preview/index.d.ts @@ -0,0 +1,10 @@ +/// +export declare class Preview { + element: HTMLElement; + previewElement: HTMLElement; + private mdTimeoutId; + constructor(vditor: IVditor); + render(vditor: IVditor, value?: string): void; + private afterRender; + private copyToX; +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/resize/index.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/resize/index.d.ts new file mode 100644 index 0000000..c629c04 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/resize/index.d.ts @@ -0,0 +1,6 @@ +/// +export declare class Resize { + element: HTMLElement; + constructor(vditor: IVditor); + private bindEvent; +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/sv/combineFootnote.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/sv/combineFootnote.d.ts new file mode 100644 index 0000000..ca9afb3 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/sv/combineFootnote.d.ts @@ -0,0 +1,6 @@ +/** + * 合并脚注 + * @param elements vditor.sv.element + * @param afterCombine 每个脚注块合并完成后的回调, param: root为合并后的脚注块 + */ +export declare const combineFootnote: (elements: HTMLElement, afterCombine?: (root: HTMLElement) => void) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/sv/index.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/sv/index.d.ts new file mode 100644 index 0000000..b17003d --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/sv/index.d.ts @@ -0,0 +1,13 @@ +/// +declare class Editor { + range: Range; + element: HTMLPreElement; + composingLock: boolean; + processTimeoutId: number; + hlToolbarTimeoutId: number; + preventInput: boolean; + constructor(vditor: IVditor); + private copy; + private bindEvent; +} +export { Editor }; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/sv/inputEvent.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/sv/inputEvent.d.ts new file mode 100644 index 0000000..bc9824b --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/sv/inputEvent.d.ts @@ -0,0 +1 @@ +export declare const inputEvent: (vditor: IVditor, event?: InputEvent) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/sv/process.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/sv/process.d.ts new file mode 100644 index 0000000..c39b843 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/sv/process.d.ts @@ -0,0 +1,11 @@ +export declare const processPaste: (vditor: IVditor, text: string) => void; +export declare const getSideByType: (spanNode: Node, type: string, isPrevious?: boolean) => false | Element; +export declare const processSpinVditorSVDOM: (html: string, vditor: IVditor) => string; +export declare const processPreviousMarkers: (spanElement: HTMLElement) => string; +export declare const processAfterRender: (vditor: IVditor, options?: { + enableAddUndoStack: boolean; + enableHint: boolean; + enableInput: boolean; +}) => void; +export declare const processHeading: (vditor: IVditor, value: string) => void; +export declare const processToolbar: (vditor: IVditor, actionBtn: Element, prefix: string, suffix: string) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/sv/processKeydown.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/sv/processKeydown.d.ts new file mode 100644 index 0000000..b174785 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/sv/processKeydown.d.ts @@ -0,0 +1 @@ +export declare const processKeydown: (vditor: IVditor, event: KeyboardEvent) => boolean; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/tip/index.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/tip/index.d.ts new file mode 100644 index 0000000..c80815b --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/tip/index.d.ts @@ -0,0 +1,6 @@ +export declare class Tip { + element: HTMLElement; + constructor(); + show(text: string, time?: number): void; + hide(): void; +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Both.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Both.d.ts new file mode 100644 index 0000000..df608e4 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Both.d.ts @@ -0,0 +1,5 @@ +/// +import { MenuItem } from "./MenuItem"; +export declare class Both extends MenuItem { + constructor(vditor: IVditor, menuItem: IMenuItem); +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Br.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Br.d.ts new file mode 100644 index 0000000..da89b78 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Br.d.ts @@ -0,0 +1,4 @@ +export declare class Br { + element: HTMLElement; + constructor(); +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/CodeTheme.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/CodeTheme.d.ts new file mode 100644 index 0000000..e094d7c --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/CodeTheme.d.ts @@ -0,0 +1,6 @@ +/// +import { MenuItem } from "./MenuItem"; +export declare class CodeTheme extends MenuItem { + element: HTMLElement; + constructor(vditor: IVditor, menuItem: IMenuItem); +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/ContentTheme.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/ContentTheme.d.ts new file mode 100644 index 0000000..1bb73c9 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/ContentTheme.d.ts @@ -0,0 +1,6 @@ +/// +import { MenuItem } from "./MenuItem"; +export declare class ContentTheme extends MenuItem { + element: HTMLElement; + constructor(vditor: IVditor, menuItem: IMenuItem); +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Counter.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Counter.d.ts new file mode 100644 index 0000000..93cb213 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Counter.d.ts @@ -0,0 +1,6 @@ +/// +export declare class Counter { + element: HTMLElement; + constructor(vditor: IVditor); + render(vditor: IVditor, mdText: string): void; +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Custom.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Custom.d.ts new file mode 100644 index 0000000..f686d2e --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Custom.d.ts @@ -0,0 +1,5 @@ +/// +import { MenuItem } from "./MenuItem"; +export declare class Custom extends MenuItem { + constructor(vditor: IVditor, menuItem: IMenuItem); +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Devtools.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Devtools.d.ts new file mode 100644 index 0000000..c05d907 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Devtools.d.ts @@ -0,0 +1,5 @@ +/// +import { MenuItem } from "./MenuItem"; +export declare class Devtools extends MenuItem { + constructor(vditor: IVditor, menuItem: IMenuItem); +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Divider.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Divider.d.ts new file mode 100644 index 0000000..1c7feca --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Divider.d.ts @@ -0,0 +1,4 @@ +export declare class Divider { + element: HTMLElement; + constructor(); +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/EditMode.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/EditMode.d.ts new file mode 100644 index 0000000..2aa6f83 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/EditMode.d.ts @@ -0,0 +1,8 @@ +/// +import { MenuItem } from "./MenuItem"; +export declare const setEditMode: (vditor: IVditor, type: string, event: Event | string) => void; +export declare class EditMode extends MenuItem { + element: HTMLElement; + constructor(vditor: IVditor, menuItem: IMenuItem); + _bindEvent(vditor: IVditor, panelElement: HTMLElement, menuItem: IMenuItem): void; +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Emoji.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Emoji.d.ts new file mode 100644 index 0000000..082fea0 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Emoji.d.ts @@ -0,0 +1,7 @@ +/// +import { MenuItem } from "./MenuItem"; +export declare class Emoji extends MenuItem { + element: HTMLElement; + constructor(vditor: IVditor, menuItem: IMenuItem); + private bindEvent; +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Export.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Export.d.ts new file mode 100644 index 0000000..d9b66ce --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Export.d.ts @@ -0,0 +1,6 @@ +/// +import { MenuItem } from "./MenuItem"; +export declare class Export extends MenuItem { + element: HTMLElement; + constructor(vditor: IVditor, menuItem: IMenuItem); +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Fullscreen.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Fullscreen.d.ts new file mode 100644 index 0000000..1641570 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Fullscreen.d.ts @@ -0,0 +1,6 @@ +/// +import { MenuItem } from "./MenuItem"; +export declare class Fullscreen extends MenuItem { + constructor(vditor: IVditor, menuItem: IMenuItem); + _bindEvent(vditor: IVditor, menuItem: IMenuItem): void; +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Headings.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Headings.d.ts new file mode 100644 index 0000000..266d4a5 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Headings.d.ts @@ -0,0 +1,7 @@ +/// +import { MenuItem } from "./MenuItem"; +export declare class Headings extends MenuItem { + element: HTMLElement; + constructor(vditor: IVditor, menuItem: IMenuItem); + _bindEvent(vditor: IVditor, panelElement: HTMLElement): void; +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Help.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Help.d.ts new file mode 100644 index 0000000..4aeec70 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Help.d.ts @@ -0,0 +1,5 @@ +/// +import { MenuItem } from "./MenuItem"; +export declare class Help extends MenuItem { + constructor(vditor: IVditor, menuItem: IMenuItem); +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Indent.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Indent.d.ts new file mode 100644 index 0000000..ca58c4b --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Indent.d.ts @@ -0,0 +1,5 @@ +/// +import { MenuItem } from "./MenuItem"; +export declare class Indent extends MenuItem { + constructor(vditor: IVditor, menuItem: IMenuItem); +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Info.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Info.d.ts new file mode 100644 index 0000000..d9c68f1 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Info.d.ts @@ -0,0 +1,5 @@ +/// +import { MenuItem } from "./MenuItem"; +export declare class Info extends MenuItem { + constructor(vditor: IVditor, menuItem: IMenuItem); +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/InsertAfter.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/InsertAfter.d.ts new file mode 100644 index 0000000..28742a0 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/InsertAfter.d.ts @@ -0,0 +1,5 @@ +/// +import { MenuItem } from "./MenuItem"; +export declare class InsertAfter extends MenuItem { + constructor(vditor: IVditor, menuItem: IMenuItem); +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/InsertBefore.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/InsertBefore.d.ts new file mode 100644 index 0000000..f0d33df --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/InsertBefore.d.ts @@ -0,0 +1,5 @@ +/// +import { MenuItem } from "./MenuItem"; +export declare class InsertBefore extends MenuItem { + constructor(vditor: IVditor, menuItem: IMenuItem); +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/MenuItem.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/MenuItem.d.ts new file mode 100644 index 0000000..b881422 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/MenuItem.d.ts @@ -0,0 +1,5 @@ +/// +export declare class MenuItem { + element: HTMLElement; + constructor(vditor: IVditor, menuItem: IMenuItem); +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Outdent.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Outdent.d.ts new file mode 100644 index 0000000..85fc1a8 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Outdent.d.ts @@ -0,0 +1,5 @@ +/// +import { MenuItem } from "./MenuItem"; +export declare class Outdent extends MenuItem { + constructor(vditor: IVditor, menuItem: IMenuItem); +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Outline.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Outline.d.ts new file mode 100644 index 0000000..b1adea7 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Outline.d.ts @@ -0,0 +1,5 @@ +/// +import { MenuItem } from "./MenuItem"; +export declare class Outline extends MenuItem { + constructor(vditor: IVditor, menuItem: IMenuItem); +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Preview.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Preview.d.ts new file mode 100644 index 0000000..9d87592 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Preview.d.ts @@ -0,0 +1,6 @@ +/// +import { MenuItem } from "./MenuItem"; +export declare class Preview extends MenuItem { + constructor(vditor: IVditor, menuItem: IMenuItem); + _bindEvent(vditor: IVditor): void; +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Record.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Record.d.ts new file mode 100644 index 0000000..c73535c --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Record.d.ts @@ -0,0 +1,6 @@ +/// +import { MenuItem } from "./MenuItem"; +export declare class Record extends MenuItem { + constructor(vditor: IVditor, menuItem: IMenuItem); + _bindEvent(vditor: IVditor): void; +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Redo.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Redo.d.ts new file mode 100644 index 0000000..232130e --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Redo.d.ts @@ -0,0 +1,5 @@ +/// +import { MenuItem } from "./MenuItem"; +export declare class Redo extends MenuItem { + constructor(vditor: IVditor, menuItem: IMenuItem); +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Undo.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Undo.d.ts new file mode 100644 index 0000000..c0d6076 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Undo.d.ts @@ -0,0 +1,5 @@ +/// +import { MenuItem } from "./MenuItem"; +export declare class Undo extends MenuItem { + constructor(vditor: IVditor, menuItem: IMenuItem); +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Upload.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Upload.d.ts new file mode 100644 index 0000000..857b7ed --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/Upload.d.ts @@ -0,0 +1,6 @@ +/// +import { MenuItem } from "./MenuItem"; +export declare class Upload extends MenuItem { + constructor(vditor: IVditor, menuItem: IMenuItem); + _bindEvent(vditor: IVditor): void; +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/index.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/index.d.ts new file mode 100644 index 0000000..c570311 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/index.d.ts @@ -0,0 +1,10 @@ +/// +export declare class Toolbar { + elements: { + [key: string]: HTMLElement; + }; + element: HTMLElement; + constructor(vditor: IVditor); + updateConfig(vditor: IVditor, options: IToolbarConfig): void; + private genItem; +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/setToolbar.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/setToolbar.d.ts new file mode 100644 index 0000000..787d211 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/toolbar/setToolbar.d.ts @@ -0,0 +1,20 @@ +export declare const removeCurrentToolbar: (toolbar: { + [key: string]: HTMLElement; +}, names: string[]) => void; +export declare const setCurrentToolbar: (toolbar: { + [key: string]: HTMLElement; +}, names: string[]) => void; +export declare const enableToolbar: (toolbar: { + [key: string]: HTMLElement; +}, names: string[]) => void; +export declare const disableToolbar: (toolbar: { + [key: string]: HTMLElement; +}, names: string[]) => void; +export declare const hideToolbar: (toolbar: { + [key: string]: HTMLElement; +}, names: string[]) => void; +export declare const showToolbar: (toolbar: { + [key: string]: HTMLElement; +}, names: string[]) => void; +export declare const hidePanel: (vditor: IVditor, panels: string[], exceptElement?: HTMLElement) => void; +export declare const toggleSubMenu: (vditor: IVditor, panelElement: HTMLElement, actionBtn: Element, level: number) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ui/initUI.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ui/initUI.d.ts new file mode 100644 index 0000000..e8b5d03 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ui/initUI.d.ts @@ -0,0 +1,4 @@ +export declare const initUI: (vditor: IVditor) => void; +export declare const setPadding: (vditor: IVditor) => void; +export declare const setTypewriterPosition: (vditor: IVditor) => void; +export declare function UIUnbindListener(): void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ui/setCodeTheme.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ui/setCodeTheme.d.ts new file mode 100644 index 0000000..08e7226 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ui/setCodeTheme.d.ts @@ -0,0 +1 @@ +export declare const setCodeTheme: (codeTheme: string, cdn?: string) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ui/setContentTheme.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ui/setContentTheme.d.ts new file mode 100644 index 0000000..ef79887 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ui/setContentTheme.d.ts @@ -0,0 +1 @@ +export declare const setContentTheme: (contentTheme: string, path: string) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ui/setPreviewMode.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ui/setPreviewMode.d.ts new file mode 100644 index 0000000..438ae53 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ui/setPreviewMode.d.ts @@ -0,0 +1 @@ +export declare const setPreviewMode: (mode: "both" | "editor", vditor: IVditor) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ui/setTheme.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ui/setTheme.d.ts new file mode 100644 index 0000000..9779833 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/ui/setTheme.d.ts @@ -0,0 +1 @@ +export declare const setTheme: (vditor: IVditor) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/undo/index.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/undo/index.d.ts new file mode 100644 index 0000000..3d5c428 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/undo/index.d.ts @@ -0,0 +1,19 @@ +/// +declare class Undo { + private stackSize; + private dmp; + private wysiwyg; + private ir; + private sv; + constructor(); + clearStack(vditor: IVditor): void; + resetIcon(vditor: IVditor): void; + undo(vditor: IVditor): void; + redo(vditor: IVditor): void; + recordFirstPosition(vditor: IVditor, event: KeyboardEvent): void; + addToUndoStack(vditor: IVditor): void; + private renderDiff; + private resetStack; + private addCaret; +} +export { Undo }; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/upload/getElement.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/upload/getElement.d.ts new file mode 100644 index 0000000..45679cc --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/upload/getElement.d.ts @@ -0,0 +1 @@ +export declare const getElement: (vditor: IVditor) => HTMLPreElement; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/upload/index.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/upload/index.d.ts new file mode 100644 index 0000000..c220e27 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/upload/index.d.ts @@ -0,0 +1,8 @@ +declare class Upload { + element: HTMLElement; + isUploading: boolean; + range: Range; + constructor(); +} +declare const uploadFiles: (vditor: IVditor, files: FileList | DataTransferItemList | File[], element?: HTMLInputElement) => Promise; +export { Upload, uploadFiles }; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/upload/setHeaders.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/upload/setHeaders.d.ts new file mode 100644 index 0000000..202ffba --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/upload/setHeaders.d.ts @@ -0,0 +1 @@ +export declare const setHeaders: (vditor: IVditor, xhr: XMLHttpRequest) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/Options.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/Options.d.ts new file mode 100644 index 0000000..4595b39 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/Options.d.ts @@ -0,0 +1,8 @@ +/// +export declare class Options { + options: IOptions; + private defaultOptions; + constructor(options: IOptions); + merge(): IOptions; + private mergeToolbar; +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/RecordMedia.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/RecordMedia.d.ts new file mode 100644 index 0000000..a7902be --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/RecordMedia.d.ts @@ -0,0 +1,18 @@ +export declare class RecordMedia { + SAMPLE_RATE: number; + DEFAULT_SAMPLE_RATE: number; + isRecording: boolean; + readyFlag: boolean; + leftChannel: Float32List[]; + rightChannel: Float32List[]; + recordingLength: number; + recorder: ScriptProcessorNode; + constructor(e: MediaStream); + cloneChannelData(leftChannelData: Float32List, rightChannelData: Float32List): void; + startRecordingNewWavFile(): void; + stopRecording(): void; + buildWavFileBlob(): Blob; + private downSampleBuffer; + private mergeBuffers; + private writeUTFBytes; +} diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/addScript.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/addScript.d.ts new file mode 100644 index 0000000..824ae94 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/addScript.d.ts @@ -0,0 +1,2 @@ +export declare const addScriptSync: (path: string, id: string) => boolean; +export declare const addScript: (path: string, id: string) => Promise; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/addStyle.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/addStyle.d.ts new file mode 100644 index 0000000..04eb2ab --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/addStyle.d.ts @@ -0,0 +1 @@ +export declare const addStyle: (url: string, id: string) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/code160to32.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/code160to32.d.ts new file mode 100644 index 0000000..a7c0c62 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/code160to32.d.ts @@ -0,0 +1 @@ +export declare const code160to32: (text: string) => string; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/compatibility.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/compatibility.d.ts new file mode 100644 index 0000000..9b25468 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/compatibility.d.ts @@ -0,0 +1,7 @@ +export declare const isSafari: () => boolean; +export declare const isFirefox: () => boolean; +export declare const accessLocalStorage: () => boolean; +export declare const getEventName: () => "click" | "touchstart"; +export declare const isCtrl: (event: KeyboardEvent) => boolean; +export declare const updateHotkeyTip: (hotkey: string) => string; +export declare const isChrome: () => boolean; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/editorCommonEvent.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/editorCommonEvent.d.ts new file mode 100644 index 0000000..12aaca0 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/editorCommonEvent.d.ts @@ -0,0 +1,9 @@ +export declare const focusEvent: (vditor: IVditor, editorElement: HTMLElement) => void; +export declare const dblclickEvent: (vditor: IVditor, editorElement: HTMLElement) => void; +export declare const blurEvent: (vditor: IVditor, editorElement: HTMLElement) => void; +export declare const dropEvent: (vditor: IVditor, editorElement: HTMLElement) => void; +export declare const copyEvent: (vditor: IVditor, editorElement: HTMLElement, copy: (event: ClipboardEvent, vditor: IVditor) => void) => void; +export declare const cutEvent: (vditor: IVditor, editorElement: HTMLElement, copy: (event: ClipboardEvent, vditor: IVditor) => void) => void; +export declare const scrollCenter: (vditor: IVditor) => void; +export declare const hotkeyEvent: (vditor: IVditor, editorElement: HTMLElement) => void; +export declare const selectEvent: (vditor: IVditor, editorElement: HTMLElement) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/fixBrowserBehavior.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/fixBrowserBehavior.d.ts new file mode 100644 index 0000000..f6763b4 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/fixBrowserBehavior.d.ts @@ -0,0 +1,39 @@ +export declare const fixGSKeyBackspace: (event: KeyboardEvent, vditor: IVditor, startContainer: Node) => boolean; +export declare const fixCJKPosition: (range: Range, vditor: IVditor, event: KeyboardEvent) => void; +export declare const fixCursorDownInlineMath: (range: Range, key: string) => void; +export declare const insertEmptyBlock: (vditor: IVditor, position: InsertPosition) => void; +export declare const isFirstCell: (cellElement: HTMLElement) => false | HTMLTableElement; +export declare const isLastCell: (cellElement: HTMLElement) => false | HTMLTableElement; +export declare const insertAfterBlock: (vditor: IVditor, event: KeyboardEvent, range: Range, element: HTMLElement, blockElement: HTMLElement) => boolean; +export declare const insertBeforeBlock: (vditor: IVditor, event: KeyboardEvent, range: Range, element: HTMLElement, blockElement: HTMLElement) => boolean; +export declare const listToggle: (vditor: IVditor, range: Range, type: string, cancel?: boolean) => void; +export declare const listIndent: (vditor: IVditor, liElement: HTMLElement, range: Range) => void; +export declare const listOutdent: (vditor: IVditor, liElement: HTMLElement, range: Range, topListElement: HTMLElement) => void; +export declare const setTableAlign: (tableElement: HTMLTableElement, type: string) => void; +export declare const isHrMD: (text: string) => boolean; +export declare const isHeadingMD: (text: string) => boolean; +export declare const execAfterRender: (vditor: IVditor, options?: { + enableAddUndoStack: boolean; + enableHint: boolean; + enableInput: boolean; +}) => void; +export declare const fixList: (range: Range, vditor: IVditor, pElement: HTMLElement | false, event: KeyboardEvent) => boolean; +export declare const fixTab: (vditor: IVditor, range: Range, event: KeyboardEvent) => boolean; +export declare const fixMarkdown: (event: KeyboardEvent, vditor: IVditor, pElement: HTMLElement | false, range: Range) => boolean; +export declare const insertRow: (vditor: IVditor, range: Range, cellElement: HTMLElement) => void; +export declare const insertRowAbove: (vditor: IVditor, range: Range, cellElement: HTMLElement) => void; +export declare const insertColumn: (vditor: IVditor, tableElement: HTMLTableElement, cellElement: HTMLElement, type?: InsertPosition) => void; +export declare const deleteRow: (vditor: IVditor, range: Range, cellElement: HTMLElement) => void; +export declare const deleteColumn: (vditor: IVditor, range: Range, tableElement: HTMLTableElement, cellElement: HTMLElement) => void; +export declare const fixTable: (vditor: IVditor, event: KeyboardEvent, range: Range) => boolean; +export declare const fixCodeBlock: (vditor: IVditor, event: KeyboardEvent, codeRenderElement: HTMLElement, range: Range) => boolean; +export declare const fixBlockquote: (vditor: IVditor, range: Range, event: KeyboardEvent, pElement: HTMLElement | false) => boolean; +export declare const fixTask: (vditor: IVditor, range: Range, event: KeyboardEvent) => boolean; +export declare const fixDelete: (vditor: IVditor, range: Range, event: KeyboardEvent, pElement: HTMLElement | false) => boolean; +export declare const fixHR: (range: Range) => void; +export declare const fixFirefoxArrowUpTable: (event: KeyboardEvent, blockElement: false | HTMLElement, range: Range) => boolean; +export declare const paste: (vditor: IVditor, event: (ClipboardEvent | DragEvent) & { + target: HTMLElement; +}, callback: { + pasteCode(code: string): void; +}) => Promise; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/function.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/function.d.ts new file mode 100644 index 0000000..d79d7ea --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/function.d.ts @@ -0,0 +1,3 @@ +export declare const genUUID: () => string; +export declare const getSearch: (key: string, link?: string) => string; +export declare const looseJsonParse: (text: string) => any; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/getSelectText.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/getSelectText.d.ts new file mode 100644 index 0000000..86a057d --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/getSelectText.d.ts @@ -0,0 +1 @@ +export declare const getSelectText: (editor: HTMLElement, range?: Range) => string; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/hasClosest.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/hasClosest.d.ts new file mode 100644 index 0000000..0f183cd --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/hasClosest.d.ts @@ -0,0 +1,9 @@ +export declare const hasTopClosestByClassName: (element: Node, className: string) => false | HTMLElement; +export declare const hasTopClosestByAttribute: (element: Node, attr: string, value: string) => false | HTMLElement; +export declare const hasTopClosestByTag: (element: Node, nodeName: string) => false | HTMLElement; +export declare const getTopList: (element: Node) => false | HTMLElement; +export declare const hasClosestByAttribute: (element: Node, attr: string, value: string) => false | HTMLElement; +export declare const hasClosestBlock: (element: Node) => false | HTMLElement; +export declare const hasClosestByMatchTag: (element: Node, nodeName: string) => false | HTMLElement; +export declare const hasClosestByClassName: (element: Node, className: string) => false | HTMLElement; +export declare const getLastNode: (node: Node) => Node; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/hasClosestByHeadings.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/hasClosestByHeadings.d.ts new file mode 100644 index 0000000..c93a0a4 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/hasClosestByHeadings.d.ts @@ -0,0 +1,2 @@ +export declare const hasClosestByTag: (element: Node, nodeName: string) => false | HTMLElement; +export declare const hasClosestByHeadings: (element: Node) => false | HTMLElement; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/highlightToolbar.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/highlightToolbar.d.ts new file mode 100644 index 0000000..9207c02 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/highlightToolbar.d.ts @@ -0,0 +1 @@ +export declare const highlightToolbar: (vditor: IVditor) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/hotKey.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/hotKey.d.ts new file mode 100644 index 0000000..ce936b8 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/hotKey.d.ts @@ -0,0 +1 @@ +export declare const matchHotKey: (hotKey: string, event: KeyboardEvent) => boolean; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/log.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/log.d.ts new file mode 100644 index 0000000..97c903a --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/log.d.ts @@ -0,0 +1 @@ +export declare const log: (method: string, content: string, type: string, print: boolean) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/merge.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/merge.d.ts new file mode 100644 index 0000000..e3c4ca5 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/merge.d.ts @@ -0,0 +1 @@ +export declare const merge: (...options: any[]) => any; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/processCode.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/processCode.d.ts new file mode 100644 index 0000000..69712d4 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/processCode.d.ts @@ -0,0 +1,2 @@ +export declare const processPasteCode: (html: string, text: string, type?: string) => string | false; +export declare const processCodeRender: (previewPanel: HTMLElement, vditor: IVditor) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/selection.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/selection.d.ts new file mode 100644 index 0000000..92511d0 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/selection.d.ts @@ -0,0 +1,14 @@ +export declare const getEditorRange: (vditor: IVditor) => Range; +export declare const getCursorPosition: (editor: HTMLElement) => { + left: number; + top: number; +}; +export declare const selectIsEditor: (editor: HTMLElement, range?: Range) => boolean; +export declare const setSelectionFocus: (range: Range) => void; +export declare const getSelectPosition: (selectElement: HTMLElement, editorElement: HTMLElement, range?: Range) => { + end: number; + start: number; +}; +export declare const setSelectionByPosition: (start: number, end: number, editor: HTMLElement) => Range; +export declare const setRangeByWbr: (element: HTMLElement, range: Range) => void; +export declare const insertHTML: (html: string, vditor: IVditor) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/toc.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/toc.d.ts new file mode 100644 index 0000000..53d4b0f --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/util/toc.d.ts @@ -0,0 +1,5 @@ +export declare const renderToc: (vditor: IVditor) => void; +export declare const clickToc: (event: MouseEvent & { + target: HTMLElement; +}, vditor: IVditor) => void; +export declare const keydownToc: (blockElement: HTMLElement, vditor: IVditor, event: KeyboardEvent, range: Range) => boolean; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/afterRenderEvent.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/afterRenderEvent.d.ts new file mode 100644 index 0000000..6bf49d9 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/afterRenderEvent.d.ts @@ -0,0 +1,5 @@ +export declare const afterRenderEvent: (vditor: IVditor, options?: { + enableAddUndoStack: boolean; + enableHint: boolean; + enableInput: boolean; +}) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/highlightToolbarWYSIWYG.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/highlightToolbarWYSIWYG.d.ts new file mode 100644 index 0000000..4988dfc --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/highlightToolbarWYSIWYG.d.ts @@ -0,0 +1,4 @@ +export declare const highlightToolbarWYSIWYG: (vditor: IVditor) => void; +export declare const genLinkRefPopover: (vditor: IVditor, linkRefElement: HTMLElement, range?: Range) => void; +export declare const genAPopover: (vditor: IVditor, aElement: HTMLElement, range: Range) => void; +export declare const genImagePopover: (event: Event, vditor: IVditor) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/index.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/index.d.ts new file mode 100644 index 0000000..db186a8 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/index.d.ts @@ -0,0 +1,22 @@ +/// +declare class WYSIWYG { + range: Range; + element: HTMLPreElement; + popover: HTMLDivElement; + selectPopover: HTMLDivElement; + afterRenderTimeoutId: number; + hlToolbarTimeoutId: number; + preventInput: boolean; + composingLock: boolean; + commentIds: string[]; + private scrollListener; + constructor(vditor: IVditor); + getComments(vditor: IVditor, getData?: boolean): ICommentsData[]; + triggerRemoveComment(vditor: IVditor): void; + showComment(): void; + hideComment(): void; + unbindListener(): void; + private copy; + private bindEvent; +} +export { WYSIWYG }; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/inlineTag.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/inlineTag.d.ts new file mode 100644 index 0000000..ac9128c --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/inlineTag.d.ts @@ -0,0 +1,10 @@ +export declare const previoueIsEmptyA: (node: Node) => false | HTMLElement; +export declare const nextIsCode: (range: Range) => boolean; +export declare const getNextHTML: (node: Node) => string; +export declare const getPreviousHTML: (node: Node) => string; +export declare const getRenderElementNextNode: (blockCodeElement: HTMLElement) => ChildNode; +export declare const splitElement: (range: Range) => { + afterHTML: string; + beforeHTML: string; +}; +export declare const modifyPre: (vditor: IVditor, range: Range) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/input.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/input.d.ts new file mode 100644 index 0000000..e205874 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/input.d.ts @@ -0,0 +1 @@ +export declare const input: (vditor: IVditor, range: Range, event?: InputEvent) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/processKeydown.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/processKeydown.d.ts new file mode 100644 index 0000000..578eaf1 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/processKeydown.d.ts @@ -0,0 +1,2 @@ +export declare const processKeydown: (vditor: IVditor, event: KeyboardEvent) => boolean; +export declare const removeBlockElement: (vditor: IVditor, event: KeyboardEvent) => boolean; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/renderDomByMd.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/renderDomByMd.d.ts new file mode 100644 index 0000000..ae52849 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/renderDomByMd.d.ts @@ -0,0 +1,5 @@ +export declare const renderDomByMd: (vditor: IVditor, md: string, options?: { + enableAddUndoStack: boolean; + enableHint: boolean; + enableInput: boolean; +}) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/setHeading.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/setHeading.d.ts new file mode 100644 index 0000000..0d9cabf --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/setHeading.d.ts @@ -0,0 +1,2 @@ +export declare const setHeading: (vditor: IVditor, tagName: string) => void; +export declare const removeHeading: (vditor: IVditor) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/showCode.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/showCode.d.ts new file mode 100644 index 0000000..5cc9aa8 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/showCode.d.ts @@ -0,0 +1 @@ +export declare const showCode: (previewElement: HTMLElement, vditor: IVditor, first?: boolean) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/toolbarEvent.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/toolbarEvent.d.ts new file mode 100644 index 0000000..5b57c98 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/ts/wysiwyg/toolbarEvent.d.ts @@ -0,0 +1 @@ +export declare const toolbarEvent: (vditor: IVditor, actionBtn: Element, event: Event) => void; diff --git a/src/main/resources/static/articles/vditor@3.11.1/dist/types/index.d.ts b/src/main/resources/static/articles/vditor@3.11.1/dist/types/index.d.ts new file mode 100644 index 0000000..d41bbf0 --- /dev/null +++ b/src/main/resources/static/articles/vditor@3.11.1/dist/types/index.d.ts @@ -0,0 +1,892 @@ +declare module "*.svg"; + +declare module "*.png"; + +interface Window { + VditorI18n: ITips; + hljs: { + listLanguages(): string[]; + highlight(text: string, options: { + language?: string, + ignoreIllegals: boolean + }): { + value: string + }; + getLanguage(text: string): { + name: string + }; + }; +} + +interface IObject { + [key: string]: string; +} + +interface ILuteNode { + TokensStr: () => string; + __internal_object__: { + Parent: { + Type: number, + }, + HeadingLevel: string, + }; +} + +type ILuteRenderCallback = (node: ILuteNode, entering: boolean) => [string, number]; + +/** @link https://ld246.com/article/1588412297062 */ +interface ILuteRender { + renderDocument?: ILuteRenderCallback; + renderParagraph?: ILuteRenderCallback; + renderText?: ILuteRenderCallback; + renderCodeBlock?: ILuteRenderCallback; + renderCodeBlockOpenMarker?: ILuteRenderCallback; + renderCodeBlockInfoMarker?: ILuteRenderCallback; + renderCodeBlockCode?: ILuteRenderCallback; + renderCodeBlockCloseMarker?: ILuteRenderCallback; + renderMathBlock?: ILuteRenderCallback; + renderMathBlockOpenMarker?: ILuteRenderCallback; + renderMathBlockContent?: ILuteRenderCallback; + renderMathBlockCloseMarker?: ILuteRenderCallback; + renderBlockquote?: ILuteRenderCallback; + renderBlockquoteMarker?: ILuteRenderCallback; + renderHeading?: ILuteRenderCallback; + renderHeadingC8hMarker?: ILuteRenderCallback; + renderList?: ILuteRenderCallback; + renderListItem?: ILuteRenderCallback; + renderTaskListItemMarker?: ILuteRenderCallback; + renderThematicBreak?: ILuteRenderCallback; + renderHTML?: ILuteRenderCallback; + renderTable?: ILuteRenderCallback; + renderTableHead?: ILuteRenderCallback; + renderTableRow?: ILuteRenderCallback; + renderTableCell?: ILuteRenderCallback; + renderFootnotesDef?: ILuteRenderCallback; + renderCodeSpan?: ILuteRenderCallback; + renderCodeSpanOpenMarker?: ILuteRenderCallback; + renderCodeSpanContent?: ILuteRenderCallback; + renderCodeSpanCloseMarker?: ILuteRenderCallback; + renderInlineMath?: ILuteRenderCallback; + renderInlineMathOpenMarker?: ILuteRenderCallback; + renderInlineMathContent?: ILuteRenderCallback; + renderInlineMathCloseMarker?: ILuteRenderCallback; + renderEmphasis?: ILuteRenderCallback; + renderEmAsteriskOpenMarker?: ILuteRenderCallback; + renderEmAsteriskCloseMarker?: ILuteRenderCallback; + renderEmUnderscoreOpenMarker?: ILuteRenderCallback; + renderEmUnderscoreCloseMarker?: ILuteRenderCallback; + renderStrong?: ILuteRenderCallback; + renderStrongA6kOpenMarker?: ILuteRenderCallback; + renderStrongA6kCloseMarker?: ILuteRenderCallback; + renderStrongU8eOpenMarker?: ILuteRenderCallback; + renderStrongU8eCloseMarker?: ILuteRenderCallback; + renderStrikethrough?: ILuteRenderCallback; + renderStrikethrough1OpenMarker?: ILuteRenderCallback; + renderStrikethrough1CloseMarker?: ILuteRenderCallback; + renderStrikethrough2OpenMarker?: ILuteRenderCallback; + renderStrikethrough2CloseMarker?: ILuteRenderCallback; + renderHardBreak?: ILuteRenderCallback; + renderSoftBreak?: ILuteRenderCallback; + renderInlineHTML?: ILuteRenderCallback; + renderLink?: ILuteRenderCallback; + renderOpenBracket?: ILuteRenderCallback; + renderCloseBracket?: ILuteRenderCallback; + renderOpenParen?: ILuteRenderCallback; + renderCloseParen?: ILuteRenderCallback; + renderLinkText?: ILuteRenderCallback; + renderLinkSpace?: ILuteRenderCallback; + renderLinkDest?: ILuteRenderCallback; + renderLinkTitle?: ILuteRenderCallback; + renderImage?: ILuteRenderCallback; + renderBang?: ILuteRenderCallback; + renderEmoji?: ILuteRenderCallback; + renderEmojiUnicode?: ILuteRenderCallback; + renderEmojiImg?: ILuteRenderCallback; + renderEmojiAlias?: ILuteRenderCallback; + renderToC?: ILuteRenderCallback; + renderFootnotesRef?: ILuteRenderCallback; + renderBackslash?: ILuteRenderCallback; + renderBackslashContent?: ILuteRenderCallback; +} + +interface ILuteOptions extends IMarkdownConfig { + emojis: IObject; + emojiSite: string; + headingAnchor: boolean; + inlineMathDigit: boolean; + lazyLoadImage?: string; +} + +declare class Lute { + public static WalkStop: number; + public static WalkSkipChildren: number; + public static WalkContinue: number; + public static Version: string; + public static Caret: string; + + public static New(): Lute; + + public static EscapeHTMLStr(html: string): string; + + public static GetHeadingID(node: ILuteNode): string; + + public static NewNodeID(): string; + + public static Sanitize(html: string): string; + + private constructor(); + + public SetJSRenderers(options?: { + renderers: { + HTML2VditorDOM?: ILuteRender, + HTML2VditorIRDOM?: ILuteRender, + HTML2Md?: ILuteRender, + Md2HTML?: ILuteRender, + Md2VditorDOM?: ILuteRender, + Md2VditorIRDOM?: ILuteRender, + Md2VditorSVDOM?: ILuteRender, + }, + }): void; + + public SetChineseParagraphBeginningSpace(enable: boolean): void; + + public SetHeadingID(enable: boolean): void; + + public SetRenderListStyle(enable: boolean): void; + + public SetLinkBase(url: string): void; + + public SetVditorIR(enable: boolean): void; + + public SetVditorSV(enable: boolean): void; + + public SetVditorWYSIWYG(enable: boolean): void; + + public SetLinkPrefix(url: string): void; + + public SetMark(enable: boolean): void; + + public SetGFMAutoLink(enable: boolean): void; + + public SetSanitize(enable: boolean): void; + + public SetHeadingAnchor(enable: boolean): void; + + public SetImageLazyLoading(imagePath: string): void; + + public SetInlineMathAllowDigitAfterOpenMarker(enable: boolean): void; + + public SetToC(enable: boolean): void; + + public SetFootnotes(enable: boolean): void; + + public SetAutoSpace(enable: boolean): void; + + public SetFixTermTypo(enable: boolean): void; + + public SetEmojiSite(emojiSite: string): void; + + public SetVditorCodeBlockPreview(enable: boolean): void; + + public SetVditorMathBlockPreview(enable: boolean): void; + + public PutEmojis(emojis: IObject): void; + + public GetEmojis(): IObject; + + public IsValidLinkDest(link: string): boolean; + + // debugger md + public RenderEChartsJSON(text: string): string; + + // md 转换为 html + public Md2HTML(markdown: string): string; + + // 粘贴时将 html 转换为 md + public HTML2Md(html: string): string; + + // wysiwyg 转换为 html + public VditorDOM2HTML(vhtml: string): string; + + // wysiwyg 输入渲染 + public SpinVditorDOM(html: string): string; + + // 粘贴时将 html 转换为 wysiwyg + public HTML2VditorDOM(html: string): string; + + // 将 wysiwyg 转换为 md + public VditorDOM2Md(html: string): string; + + // 将 md 转换为 wysiwyg + public Md2VditorDOM(markdown: string): string; + + // ir 输入渲染 + public SpinVditorIRDOM(markdown: string): string; + + // ir 获取 md + public VditorIRDOM2Md(html: string): string; + + // md 转换为 ir + public Md2VditorIRDOM(text: string): string; + + // 获取 HTML + public VditorIRDOM2HTML(html: string): string; + + // 粘贴时将 html 转换为 sv + public HTML2VditorIRDOM(html: string): string; + + // sv 输入渲染 + public SpinVditorSVDOM(text: string): string; + + // 粘贴是 md 转换为 sv + public Md2VditorSVDOM(text: string): string; + + // 将markdown转化为JSON结构输出 https://github.com/88250/lute/issues/120 + public RenderJSON(markdown: string): string; +} + +declare const webkitAudioContext: { + prototype: AudioContext + new(contextOptions?: AudioContextOptions): AudioContext, +}; + +interface ITips { + [index: string]: string; + + alignCenter: string; + alignLeft: string; + alignRight: string; + alternateText: string; + bold: string; + both: string; + check: string; + close: string; + code: string; + "code-theme": string; + column: string; + comment: string; + confirm: string; + "content-theme": string; + copied: string; + copy: string; + "delete-column": string; + "delete-row": string; + devtools: string; + down: string; + downloadTip: string; + edit: string; + "edit-mode": string; + emoji: string; + export: string; + fileTypeError: string; + footnoteRef: string; + fullscreen: string; + generate: string; + headings: string; + help: string; + imageURL: string; + indent: string; + info: string; + "inline-code": string; + "insert-after": string; + "insert-before": string; + insertColumnLeft: string; + insertColumnRight: string; + insertRowAbove: string; + insertRowBelow: string; + instantRendering: string; + italic: string; + language: string; + line: string; + link: string; + linkRef: string; + list: string; + more: string; + nameEmpty: string; + "ordered-list": string; + outdent: string; + outline: string; + over: string; + performanceTip: string; + preview: string; + quote: string; + record: string; + "record-tip": string; + recording: string; + redo: string; + remove: string; + row: string; + spin: string; + splitView: string; + strike: string; + table: string; + textIsNotEmpty: string; + title: string; + tooltipText: string; + undo: string; + up: string; + update: string; + upload: string; + uploadError: string; + uploading: string; + wysiwyg: string; +} + +interface II18n { + de_DE: ITips; + en_US: ITips; + fr_FR: ITips; + ja_JP: ITips; + ko_KR: ITips; + ru_RU: ITips; + sv_SE: ITips; + zh_CN: ITips; + zh_TW: ITips; + pt_BR: ITips; +} + +interface IClasses { + preview?: string; +} + +interface IPreviewTheme { + current: string; + list?: IObject; + path?: string; +} + +/** @link https://ld246.com/article/1549638745630#options-upload */ +interface IUpload { + /** 上传 url */ + url?: string; + /** 上传文件最大 Byte */ + max?: number; + /** 剪切板中包含图片地址时,使用此 url 重新上传 */ + linkToImgUrl?: string; + + /** 剪切板中包含图片地址时,使用此方法进行自定义 */ + renderLinkDest?(vditor: IVditor, node: ILuteNode, entering: boolean): [string, number]; + + /** CORS 上传验证,头为 X-Upload-Token */ + token?: string; + /** 文件上传类型,同 [input accept](https://www.w3schools.com/tags/att_input_accept.asp) */ + accept?: string; + /** 跨站点访问控制。默认值: false */ + withCredentials?: boolean; + /** 请求头设置 */ + headers?: IObject; + /** 额外请求参数 */ + extraData?: { [key: string]: string | Blob }; + /** 是否允许多文件上传。默认值:true */ + multiple?: boolean; + /** 上传字段名。默认值:file[] */ + fieldName?: string; + + /** 每次上传前都会重新设置请求头 */ + setHeaders?(): IObject; + + /** 上传成功回调 */ + success?(editor: HTMLPreElement, msg: string): void; + + /** 上传失败回调 */ + error?(msg: string): void; + + /** 文件名安全处理。 默认值: name => name.replace(/\W/g, '') */ + filename?(name: string): string; + + /** 校验,成功时返回 true 否则返回错误信息 */ + validate?(files: File[]): string | boolean; + + /** 自定义上传,当发生错误时返回错误信息 */ + handler?(files: File[]): string | null | Promise | Promise; + + /** 对服务端返回的数据进行转换,以满足内置的数据结构 */ + format?(files: File[], responseText: string): string; + + /** 对服务端返回的数据进行转换(对应linkToImgUrl),以满足内置的数据结构 */ + linkToImgFormat?(responseText: string): string; + + /** 将上传的文件处理后再返回 */ + file?(files: File[]): File[] | Promise; + + /** 取消正在上传的文件 */ + cancel?(files: File[]): void; + + /** 图片地址上传后的回调 */ + linkToImgCallback?(responseText: string): void; +} + +/** @link https://ld246.com/article/1549638745630#options-toolbar */ +interface IMenuItem { + /** 唯一标示 */ + name: string; + /** svg 图标 HTML */ + icon?: string; + /** 元素的样式名称 */ + className?: string; + /** 提示 */ + tip?: string; + /** 快捷键,支持⌘/ctrl-key 或 ⌘/ctrl-⇧/shift-key 格式的配置,不支持 wysiwyg 模式 */ + hotkey?: string; + /** 插入编辑器中的后缀 */ + suffix?: string; + /** 插入编辑器中的前缀 */ + prefix?: string; + /** 提示位置:ne, nw */ + tipPosition?: string; + /** 子菜单 */ + toolbar?: Array; + /** 菜单层级,最大为 3,内部使用 */ + level?: number; + + /** 自定义按钮点击时触发的事件 */ + click?(event: Event, vditor: IVditor): void; +} + +/** @link https://ld246.com/article/1549638745630#options-preview-hljs */ +interface IHljs { + /** 代码块没有指定语言时,使用此值。默认值: "" */ + defaultLang?: string; + /** 是否启用行号。默认值: false */ + lineNumber?: boolean; + /** 代码风格,可选值参见 [Chroma](https://xyproto.github.io/splash/docs/longer/all.html)。 默认值: 'github' */ + style?: string; + /** 是否启用代码高亮。默认值: true */ + enable?: boolean; + /** 自定义指定语言: CODE_LANGUAGES */ + langs?: string[]; + + /** 渲染右上角菜单按钮 */ + renderMenu?(element: HTMLElement, menuElement: HTMLElement): void; +} + +/** @link https://ld246.com/article/1549638745630#options-preview-math */ +interface IMath { + /** 内联数学公式起始 $ 后是否允许数字。默认值: false */ + inlineDigit?: boolean; + /** 使用 MathJax 渲染时传入的宏定义。默认值: {} */ + macros?: object; + /** 数学公式渲染引擎。默认值: 'KaTeX' */ + engine?: "KaTeX" | "MathJax"; + /** 数学公式渲染引擎为 MathJax 时传入的参数 */ + mathJaxOptions?: any; +} + +/** @link https://ld246.com/article/1549638745630#options-preview-markdown */ +interface IMarkdownConfig { + /** 自动空格。默认值: false */ + autoSpace?: boolean; + /** 段落开头是否空两格。默认值: false */ + paragraphBeginningSpace?: boolean; + /** 自动矫正术语。默认值: false */ + fixTermTypo?: boolean; + /** 插入目录。默认值: false */ + toc?: boolean; + /** 脚注。默认值: true */ + footnotes?: boolean; + /** wysiwyg & ir 模式代码块是否渲染。默认值: true */ + codeBlockPreview?: boolean; + /** wysiwyg & ir 模式数学公式块是否渲染。默认值: true */ + mathBlockPreview?: boolean; + /** 是否启用过滤 XSS。默认值: true */ + sanitize?: boolean; + /** 链接相对路径前缀。默认值:'' */ + linkBase?: string; + /** 链接强制前缀。默认值:'' */ + linkPrefix?: string; + /** 为列表添加标记,以便[自定义列表样式](https://github.com/Vanessa219/vditor/issues/390) 默认值:false */ + listStyle?: boolean; + /** 支持 mark 标记 */ + mark?: boolean; + /** 支持自动链接 */ + gfmAutoLink?: boolean; +} + +/** @link https://ld246.com/article/1549638745630#options-preview */ +interface IPreview { + /** 预览 debounce 毫秒间隔。默认值: 1000 */ + delay?: number; + /** 预览区域最大宽度。默认值: 768 */ + maxWidth?: number; + /** 显示模式。默认值: 'both' */ + mode?: "both" | "editor"; + /** md 解析请求 */ + url?: string; + /** @link https://ld246.com/article/1549638745630#options-preview-hljs */ + hljs?: IHljs; + /** @link https://ld246.com/article/1549638745630#options-preview-math */ + math?: IMath; + /** @link https://ld246.com/article/1549638745630#options-preview-markdown */ + markdown?: IMarkdownConfig; + /** @link https://ld246.com/article/1549638745630#options-preview-theme */ + theme?: IPreviewTheme; + /** @link https://ld246.com/article/1549638745630#options-preview-actions */ + actions?: Array; + render?: IPreviewRender; + + /** 预览回调 */ + parse?(element: HTMLElement): void; + + /** 渲染之前回调 */ + transform?(html: string): string; +} + +interface IPreviewRender { + media?: { + enable?: boolean; + }; +} + +type IPreviewAction = "desktop" | "tablet" | "mobile" | "mp-wechat" | "zhihu"; + +interface IPreviewActionCustom { + /** 键名 */ + key: string; + /** 按钮文本 */ + text: string; + /** 按钮 className 值 */ + className?: string; + /** 按钮提示信息 */ + tooltip?: string; + /** 点击回调 */ + click: (key: string) => void; +} + +interface IPreviewOptions { + mode: "dark" | "light"; + customEmoji?: IObject; + lang?: (keyof II18n); + i18n?: ITips; + lazyLoadImage?: string; + emojiPath?: string; + hljs?: IHljs; + speech?: { + enable?: boolean, + }; + anchor?: number; // 0: no render, 1: render left, 2: render right + math?: IMath; + cdn?: string; + markdown?: IMarkdownConfig; + renderers?: ILuteRender; + theme?: IPreviewTheme; + icon?: "ant" | "material" | undefined; + render?: IPreviewRender; + + transform?(html: string): string; + + after?(): void; +} + +interface IHintData { + html: string; + value: string; +} + +interface IHintExtend { + key: string; + + hint?(value: string): IHintData[] | Promise; +} + +/** @link https://ld246.com/article/1549638745630#options-hint */ +interface IHint { + /** 提示内容是否进行 md 解析 */ + parse?: boolean; + /** 常用表情提示 HTML */ + emojiTail?: string; + /** 提示 debounce 毫秒间隔。默认值: 200 */ + delay?: number; + /** 默认表情,可从 [lute/emoji_map](https://github.com/88250/lute/blob/master/parse/emoji_map.go#L32) 中选取,也可自定义 */ + emoji?: IObject; + /** 表情图片地址。默认值: 'https://unpkg.com/vditor@${VDITOR_VERSION}/dist/images/emoji' */ + emojiPath?: string; + extend?: IHintExtend[]; +} + +/** @link https://ld246.com/article/1549638745630#options-toolbarConfig */ +interface IToolbarConfig { + /** 是否隐藏工具栏。默认值: false */ + hide?: boolean; + /** 是否固定工具栏。默认值: false */ + pin?: boolean; +} + +/** @link https://ld246.com/article/1549638745630#options-comment */ +interface IComment { + /** 是否启用评论模式。默认值: false */ + enable: boolean; + + /** 添加评论回调 */ + add?(id: string, text: string, commentsData: ICommentsData[]): void; + + /** 删除评论回调 */ + remove?(ids: string[]): void; + + /** 滚动回调 */ + scroll?(top: number): void; + + /** 文档修改时,适配评论高度 */ + adjustTop?(commentsData: ICommentsData[]): void; +} + +/** @link https://ld246.com/article/1549638745630#options-outline */ +interface IOutline { + /** 初始化是否展现大纲。默认值: false */ + enable: boolean; + /** 大纲位置:'left', 'right'。默认值: 'left' */ + position: "left" | "right"; +} + +interface IResize { + position?: string; + enable?: boolean; + + after?(height: number): void; +} + +/** @link https://ld246.com/article/1549638745630#options */ +interface IOptions { + /** RTL */ + rtl?: boolean; + /** 历史记录间隔 */ + undoDelay?: number; + /** 内部调试时使用 */ + _lutePath?: string; + /** 编辑器初始化值。默认值: '' */ + value?: string; + /** 是否显示日志。默认值: false */ + debugger?: boolean; + /** 是否启用打字机模式。默认值: false */ + typewriterMode?: boolean; + /** 编辑器总高度。默认值: 'auto' */ + height?: number | string; + /** 编辑器最小高度 */ + minHeight?: number; + /** 编辑器总宽度,支持 %。默认值: 'auto' */ + width?: number | string; + /** 输入区域为空时的提示。默认值: '' */ + placeholder?: string; + /** 多语言。默认值: 'zh_CN' */ + lang?: (keyof II18n); + /** 国际化, 自定义语言。优先级低于lang */ + i18n?: ITips; + /** @link https://ld246.com/article/1549638745630#options-fullscreen */ + fullscreen?: { + /** 全屏层级。默认值: 90 */ + index: number; + }; + /** @link https://ld246.com/article/1549638745630#options-toolbar */ + toolbar?: Array; + /** @link https://ld246.com/article/1549638745630#options-resize */ + resize?: IResize; + /** @link https://ld246.com/article/1549638745630#options-counter */ + counter?: { + /** 是否启用计数器。默认值: false */ + enable: boolean; + /** 允许输入的最大值 */ + max?: number; + /** 统计类型。默认值: 'markdown' */ + type?: "markdown" | "text"; + /** 字数统计回调。 */ + after?(length: number, counter: { + /** 是否启用计数器。默认值: false */ + enable: boolean; + /** 允许输入的最大值 */ + max?: number; + /** 统计类型。默认值: 'markdown' */ + type?: "markdown" | "text" + }): void + }; + /** @link https://ld246.com/article/1549638745630#options-cache */ + cache?: { + /** 缓存 key,第一个参数为元素且启用缓存时必填 */ + id?: string; + /** 是否使用 localStorage 进行缓存。默认值: true */ + enable?: boolean; + /** 缓存后的回调 */ + after?(markdown: string): void; + }; + /** 编辑模式。默认值: 'wysiwyg' + * + * wysiwyg: 所见即所得 + * + * ir: 即时渲染 + * + * sv: 分屏预览 + */ + mode?: "wysiwyg" | "sv" | "ir"; + /** @link https://ld246.com/article/1549638745630#options-preview */ + preview?: IPreview; + /** @link https://ld246.com/article/1549638745630#options-link */ + link?: { + /** 是否打开链接地址。默认值: true */ + isOpen?: boolean; + /** 点击链接事件 */ + click?: (bom: Element) => void; + }, + /** @link https://ld246.com/article/1549638745630#options-image */ + image?: { + /** 是否预览图片。默认值: true */ + isPreview?: boolean; + /** 图片预览处理 */ + preview?: (bom: Element) => void; + }, + /** @link https://ld246.com/article/1549638745630#options-hint */ + hint?: IHint; + /** @link https://ld246.com/article/1549638745630#options-toolbarConfig */ + toolbarConfig?: IToolbarConfig; + /** 评论 + * @link https://ld246.com/article/1549638745630#options-comment + */ + comment?: IComment; + /** 主题。默认值: 'classic' */ + theme?: "classic" | "dark"; + /** 图标。默认值: 'ant' */ + icon?: "ant" | "material"; + /** @link https://ld246.com/article/1549638745630#options-upload */ + upload?: IUpload; + /** @link https://ld246.com/article/1549638745630#options-classes */ + classes?: IClasses; + /** 配置自建 CDN 地址。默认值: 'https://unpkg.com/vditor@${VDITOR_VERSION}' */ + cdn?: string; + /** tab 键操作字符串,支持 \t 及任意字符串 */ + tab?: string; + /** @link https://ld246.com/article/1549638745630#options-outline */ + outline?: IOutline; + customRenders?: { + language: string, + render: (element: HTMLElement, vditor: IVditor) => void + }[], + + /** 编辑器异步渲染完成后的回调方法 */ + after?(): void; + + /** 输入后触发 */ + input?(value: string): void; + + /** 聚焦后触发 */ + focus?(value: string): void; + + /** 失焦后触发 */ + blur?(value: string): void; + + /** 按下键盘触发 */ + keydown?(event: KeyboardEvent): void; + + /** `esc` 按下后触发 */ + esc?(value: string): void; + + /** `⌘/ctrl+enter` 按下后触发 */ + ctrlEnter?(value: string): void; + + /** 编辑器中选中文字后触发 */ + select?(value: string): void; + + /** 编辑器中未选中文字后触发 */ + unSelect?(): void; +} + +interface IEChart { + setOption(option: any): void; + + resize(): void; +} + +interface IVditor { + element: HTMLElement; + options: IOptions; + originalInnerHTML: string; + lute: Lute; + currentMode: "sv" | "wysiwyg" | "ir"; + devtools?: { + element: HTMLDivElement, + renderEchart(vditor: IVditor): void, + }; + outline: { + element: HTMLElement, + render(vditor: IVditor): string, + toggle(vditor: IVditor, show?: boolean, focus?: boolean): void, + }; + toolbar?: { + elements?: { [key: string]: HTMLElement }, + element?: HTMLElement, + updateConfig(vditor: IVditor, options: IToolbarConfig): void, + }; + preview?: { + element: HTMLElement, + previewElement: HTMLElement, + render(vditor: IVditor, value?: string): void, + }; + counter?: { + element: HTMLElement + render(vditor: IVditor, mdText?: string): void, + }; + resize?: { + element: HTMLElement, + }; + hint: { + timeId: number + element: HTMLDivElement + recentLanguage: string + fillEmoji(element: HTMLElement, vditor: IVditor): void + render(vditor: IVditor): void, + genHTML(data: IHintData[], key: string, vditor: IVditor): void + select(event: KeyboardEvent, vditor: IVditor): boolean, + }; + tip: { + element: HTMLElement + show(text: string, time?: number): void + hide(): void, + }; + upload?: { + element: HTMLElement + isUploading: boolean + range: Range, + xhr?: XMLHttpRequest, + }; + undo?: { + clearStack(vditor: IVditor): void, + redo(vditor: IVditor): void + undo(vditor: IVditor): void + addToUndoStack(vditor: IVditor): void + recordFirstPosition(vditor: IVditor, event: KeyboardEvent): void, + resetIcon(vditor: IVditor): void, + }; + wysiwyg?: { + range: Range, + element: HTMLPreElement, + selectPopover: HTMLDivElement, + popover: HTMLDivElement, + afterRenderTimeoutId: number, + hlToolbarTimeoutId: number, + preventInput: boolean, + composingLock: boolean, + commentIds: string[] + getComments(vditor: IVditor, getData?: boolean): ICommentsData[], + triggerRemoveComment(vditor: IVditor): void, + showComment(): void, + hideComment(): void, + unbindListener(): void, + }; + ir?: { + range: Range, + element: HTMLPreElement, + composingLock: boolean, + preventInput: boolean, + processTimeoutId: number, + hlToolbarTimeoutId: number, + }; + sv?: { + range: Range, + element: HTMLPreElement, + processTimeoutId: number, + hlToolbarTimeoutId: number, + composingLock: boolean, + preventInput: boolean, + }; +} + +interface ICommentsData { + id: string; + top: number; +} diff --git a/src/main/resources/static/articles/viewerjs/viewer.min.css b/src/main/resources/static/articles/viewerjs/viewer.min.css new file mode 100644 index 0000000..66782c2 --- /dev/null +++ b/src/main/resources/static/articles/viewerjs/viewer.min.css @@ -0,0 +1,9 @@ +/*! + * Viewer.js v1.9.0 + * https://fengyuanchen.github.io/viewerjs + * + * Copyright 2015-present Chen Fengyuan + * Released under the MIT license + * + * Date: 2020-12-06T11:25:10.724Z + */.viewer-close:before,.viewer-flip-horizontal:before,.viewer-flip-vertical:before,.viewer-fullscreen-exit:before,.viewer-fullscreen:before,.viewer-next:before,.viewer-one-to-one:before,.viewer-play:before,.viewer-prev:before,.viewer-reset:before,.viewer-rotate-left:before,.viewer-rotate-right:before,.viewer-zoom-in:before,.viewer-zoom-out:before{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAARgAAAAUCAYAAABWOyJDAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTNui8sowAAAQPSURBVHic7Zs/iFxVFMa/0U2UaJGksUgnIVhYxVhpjDbZCBmLdAYECxsRFBTUamcXUiSNncgKQbSxsxH8gzAP3FU2jY0kKKJNiiiIghFlccnP4p3nPCdv3p9778vsLOcHB2bfveeb7955c3jvvNkBIMdxnD64a94GHMfZu3iBcRynN7zAOI7TG15gHCeeNUkr8zaxG2lbYDYsdgMbktBsP03jdQwljSXdtBhLOmtjowC9Mg9L+knSlcD8TNKpSA9lBpK2JF2VdDSR5n5J64m0qli399hNFMUlpshQii5jbXTbHGviB0nLNeNDSd9VO4A2UdB2fp+x0eCnaXxWXGA2X0au/3HgN9P4LFCjIANOJdrLr0zzZ+BEpNYDwKbpnQMeAw4m8HjQtM6Z9qa917zPQwFr3M5KgA6J5rTJCdFZJj9/lyvGhsDvwFNVuV2MhhjrK6b9bFiE+j1r87eBl4HDwCF7/U/k+ofAX5b/EXBv5JoLMuILzf3Ap6Z3EzgdqHMCuF7hcQf4HDgeoHnccncqdK/TvSDWffFXI/exICY/xZyqc6XLWF1UFZna4gJ7q8BsRvgd2/xXpo6P+D9dfT7PpECtA3cnWPM0GXGFZh/wgWltA+cDNC7X+AP4GzjZQe+k5dRxuYPeiuXU7e1qwLpDz7dFjXKRaSwuMLvAlG8zZlG+YmiK1HoFqT7wP2z+4Q45TfEGcMt01xLoNZEBTwRqD4BLpnMLeC1A41UmVxsXgXeBayV/Wx20rpTyrpnWRft7p6O/FdqzGrDukPNtkaMoMo3FBdBSQMOnYBCReyf05s126fU9ytfX98+mY54Kxnp7S9K3kj6U9KYdG0h6UdLbkh7poFXMfUnSOyVvL0h6VtIXHbS6nOP+s/Zm9mvyXW1uuC9ohZ72E9uDmXWLJOB1GxsH+DxPftsB8B6wlGDN02TAkxG6+4D3TWsbeC5CS8CDFce+AW500LhhOW2020TRjK3b21HEmgti9m0RonxbdMZeVzV+/4tF3cBpP7E9mKHNL5q8h5g0eYsCMQz0epq8gQrwMXAgcs0FGXGFRcB9wCemF9PkbYqM/Bas7fxLwNeJPdTdpo4itQti8lPMqTpXuozVRVXPpbHI3KkNTB1NfkL81j2mvhDp91HgV9MKuRIqrykj3WPq4rHyL+axj8/qGPmTqi6F9YDlHOvJU6oYcTsh/TYSzWmTE6JT19CtLTJt32D6CmHe0eQn1O8z5AXgT4sx4Vcu0/EQecMydB8z0hUWkTd2t4CrwNEePqMBcAR4mrBbwyXLPWJa8zrXmmLEhNBmfpkuY2102xxrih+pb+ieAb6vGhuA97UcJ5KR8gZ77K+99xxeYBzH6Q3/Z0fHcXrDC4zjOL3hBcZxnN74F+zlvXFWXF9PAAAAAElFTkSuQmCC");background-repeat:no-repeat;background-size:280px;color:transparent;display:block;font-size:0;height:20px;line-height:0;width:20px}.viewer-zoom-in:before{background-position:0 0;content:"Zoom In"}.viewer-zoom-out:before{background-position:-20px 0;content:"Zoom Out"}.viewer-one-to-one:before{background-position:-40px 0;content:"One to One"}.viewer-reset:before{background-position:-60px 0;content:"Reset"}.viewer-prev:before{background-position:-80px 0;content:"Previous"}.viewer-play:before{background-position:-100px 0;content:"Play"}.viewer-next:before{background-position:-120px 0;content:"Next"}.viewer-rotate-left:before{background-position:-140px 0;content:"Rotate Left"}.viewer-rotate-right:before{background-position:-160px 0;content:"Rotate Right"}.viewer-flip-horizontal:before{background-position:-180px 0;content:"Flip Horizontal"}.viewer-flip-vertical:before{background-position:-200px 0;content:"Flip Vertical"}.viewer-fullscreen:before{background-position:-220px 0;content:"Enter Full Screen"}.viewer-fullscreen-exit:before{background-position:-240px 0;content:"Exit Full Screen"}.viewer-close:before{background-position:-260px 0;content:"Close"}.viewer-container{bottom:0;direction:ltr;font-size:0;left:0;line-height:0;overflow:hidden;position:absolute;right:0;-webkit-tap-highlight-color:transparent;top:0;-ms-touch-action:none;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.viewer-container::-moz-selection,.viewer-container ::-moz-selection{background-color:transparent}.viewer-container::selection,.viewer-container ::selection{background-color:transparent}.viewer-container:focus{outline:0}.viewer-container img{display:block;height:auto;max-height:none!important;max-width:none!important;min-height:0!important;min-width:0!important;width:100%}.viewer-canvas{bottom:0;left:0;overflow:hidden;position:absolute;right:0;top:0}.viewer-canvas>img{height:auto;margin:15px auto;max-width:90%!important;width:auto}.viewer-footer{bottom:0;left:0;overflow:hidden;position:absolute;right:0;text-align:center}.viewer-navbar{background-color:rgba(0,0,0,.5);overflow:hidden}.viewer-list{-webkit-box-sizing:content-box;box-sizing:content-box;height:50px;margin:0;overflow:hidden;padding:1px 0}.viewer-list>li{color:transparent;cursor:pointer;float:left;font-size:0;height:50px;line-height:0;opacity:.5;overflow:hidden;-webkit-transition:opacity .15s;transition:opacity .15s;width:30px}.viewer-list>li:focus,.viewer-list>li:hover{opacity:.75}.viewer-list>li:focus{outline:0}.viewer-list>li+li{margin-left:1px}.viewer-list>.viewer-loading{position:relative}.viewer-list>.viewer-loading:after{border-width:2px;height:20px;margin-left:-10px;margin-top:-10px;width:20px}.viewer-list>.viewer-active,.viewer-list>.viewer-active:focus,.viewer-list>.viewer-active:hover{opacity:1}.viewer-player{background-color:#000;bottom:0;cursor:none;display:none;right:0;z-index:1}.viewer-player,.viewer-player>img{left:0;position:absolute;top:0}.viewer-toolbar>ul{display:inline-block;margin:0 auto 5px;overflow:hidden;padding:6px 3px}.viewer-toolbar>ul>li{background-color:rgba(0,0,0,.5);border-radius:50%;cursor:pointer;float:left;height:24px;overflow:hidden;-webkit-transition:background-color .15s;transition:background-color .15s;width:24px}.viewer-toolbar>ul>li:focus,.viewer-toolbar>ul>li:hover{background-color:rgba(0,0,0,.8)}.viewer-toolbar>ul>li:focus{-webkit-box-shadow:0 0 3px #fff;box-shadow:0 0 3px #fff;outline:0;position:relative;z-index:1}.viewer-toolbar>ul>li:before{margin:2px}.viewer-toolbar>ul>li+li{margin-left:1px}.viewer-toolbar>ul>.viewer-small{height:18px;margin-bottom:3px;margin-top:3px;width:18px}.viewer-toolbar>ul>.viewer-small:before{margin:-1px}.viewer-toolbar>ul>.viewer-large{height:30px;margin-bottom:-3px;margin-top:-3px;width:30px}.viewer-toolbar>ul>.viewer-large:before{margin:5px}.viewer-tooltip{background-color:rgba(0,0,0,.8);border-radius:10px;color:#fff;display:none;font-size:12px;height:20px;left:50%;line-height:20px;margin-left:-25px;margin-top:-10px;position:absolute;text-align:center;top:50%;width:50px}.viewer-title{color:#ccc;display:inline-block;font-size:12px;line-height:1;margin:0 5% 5px;max-width:90%;opacity:.8;overflow:hidden;text-overflow:ellipsis;-webkit-transition:opacity .15s;transition:opacity .15s;white-space:nowrap}.viewer-title:hover{opacity:1}.viewer-button{background-color:rgba(0,0,0,.5);border-radius:50%;cursor:pointer;height:80px;overflow:hidden;position:absolute;right:-40px;top:-40px;-webkit-transition:background-color .15s;transition:background-color .15s;width:80px}.viewer-button:focus,.viewer-button:hover{background-color:rgba(0,0,0,.8)}.viewer-button:focus{-webkit-box-shadow:0 0 3px #fff;box-shadow:0 0 3px #fff;outline:0}.viewer-button:before{bottom:15px;left:15px;position:absolute}.viewer-fixed{position:fixed}.viewer-open{overflow:hidden}.viewer-show{display:block}.viewer-hide{display:none}.viewer-backdrop{background-color:rgba(0,0,0,.5)}.viewer-invisible{visibility:hidden}.viewer-move{cursor:move;cursor:-webkit-grab;cursor:grab}.viewer-fade{opacity:0}.viewer-in{opacity:1}.viewer-transition{-webkit-transition:all .3s;transition:all .3s}@-webkit-keyframes viewer-spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes viewer-spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.viewer-loading:after{-webkit-animation:viewer-spinner 1s linear infinite;animation:viewer-spinner 1s linear infinite;border:4px solid hsla(0,0%,100%,.1);border-left-color:hsla(0,0%,100%,.5);border-radius:50%;content:"";display:inline-block;height:40px;left:50%;margin-left:-20px;margin-top:-20px;position:absolute;top:50%;width:40px;z-index:1}@media (max-width:767px){.viewer-hide-xs-down{display:none}}@media (max-width:991px){.viewer-hide-sm-down{display:none}}@media (max-width:1199px){.viewer-hide-md-down{display:none}} \ No newline at end of file diff --git a/src/main/resources/static/articles/viewerjs/viewer.min.js b/src/main/resources/static/articles/viewerjs/viewer.min.js new file mode 100644 index 0000000..44ffc19 --- /dev/null +++ b/src/main/resources/static/articles/viewerjs/viewer.min.js @@ -0,0 +1,10 @@ +/*! + * Viewer.js v1.9.0 + * https://fengyuanchen.github.io/viewerjs + * + * Copyright 2015-present Chen Fengyuan + * Released under the MIT license + * + * Date: 2020-12-06T11:25:15.688Z + */ +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).Viewer=e()}(this,function(){"use strict";function e(t){return(e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function o(t,e){for(var i=0;i=this.length||this.viewed&&e===this.index)return this;if(!this.isShown)return this.index=e,this.show();this.viewing&&this.viewing.abort();var n=this.element,o=this.options,s=this.title,a=this.canvas,r=this.items[e],h=r.querySelector("img"),t=gt(h,"originalUrl"),l=h.getAttribute("alt"),c=document.createElement("img");if(ot(o.inheritedAttributes,function(t){var e=h.getAttribute(t);null!==e&&c.setAttribute(t,e)}),c.src=t,c.alt=l,nt(o.view)&&yt(n,"view",o.view,{once:!0}),!1===xt(n,"view",{originalImage:this.images[e],index:e,image:c})||!this.isShown||this.hiding||this.played)return this;t=this.items[this.index];ct(t,m),t.removeAttribute("aria-selected"),lt(r,m),r.setAttribute("aria-selected",!0),o.focus&&r.focus(),this.image=c,this.viewed=!1,this.index=e,this.imageData={},lt(c,D),o.loading&<(a,T),a.innerHTML="",a.appendChild(c),this.renderList(),s.innerHTML="";function u(){var t=i.imageData,e=Array.isArray(o.title)?o.title[1]:o.title;s.innerHTML=_(t=nt(e)?e.call(i,c,t):"".concat(l," (").concat(t.naturalWidth," × ").concat(t.naturalHeight,")"))?t.replace(/&(?!amp;|quot;|#39;|lt;|gt;)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">"):t}var d;return yt(n,V,u,{once:!0}),this.viewing={abort:function(){wt(n,V,u),c.complete?i.imageRendering?i.imageRendering.abort():i.imageInitializing&&i.imageInitializing.abort():(c.src="",wt(c,N,d),i.timeout&&clearTimeout(i.timeout))}},c.complete?this.load():(yt(c,N,d=this.load.bind(this),{once:!0}),this.timeout&&clearTimeout(this.timeout),this.timeout=setTimeout(function(){ct(c,D),i.timeout=!1},1e3)),this},prev:function(t){var e=0Math.abs(r)&&(this.pointers={},1
    ',n=(i=d.querySelector(".".concat(g,"-container"))).querySelector(".".concat(g,"-title")),o=i.querySelector(".".concat(g,"-toolbar")),a=i.querySelector(".".concat(g,"-navbar")),m=i.querySelector(".".concat(g,"-button")),d=i.querySelector(".".concat(g,"-canvas")),this.parent=e,this.viewer=i,this.title=n,this.toolbar=o,this.navbar=a,this.button=m,this.canvas=d,this.footer=i.querySelector(".".concat(g,"-footer")),this.tooltipBox=i.querySelector(".".concat(g,"-tooltip")),this.player=i.querySelector(".".concat(g,"-player")),this.list=i.querySelector(".".concat(g,"-list")),i.id="".concat(g).concat(this.id),n.id="".concat(g,"Title").concat(this.id),lt(n,s.title?Tt(Array.isArray(s.title)?s.title[0]:s.title):w),lt(a,s.navbar?Tt(s.navbar):w),ut(m,w,!s.button),s.keyboard&&m.setAttribute("tabindex",0),s.backdrop&&(lt(i,"".concat(g,"-backdrop")),s.inline||"static"===s.backdrop||ft(d,K,"hide")),_(s.className)&&s.className&&s.className.split(Z).forEach(function(t){lt(i,t)}),s.toolbar?(r=document.createElement("ul"),h=it(s.toolbar),l=$.slice(0,3),c=$.slice(7,9),u=$.slice(9),h||lt(o,Tt(s.toolbar)),ot(h?s.toolbar:$,function(t,e){var i=h&&it(t),n=h?mt(e):t,o=i&&!Q(t.show)?t.show:t;!o||!s.zoomable&&-1!==l.indexOf(n)||!s.rotatable&&-1!==c.indexOf(n)||!s.scalable&&-1!==u.indexOf(n)||(e=i&&!Q(t.size)?t.size:t,i=i&&!Q(t.click)?t.click:t,t=document.createElement("li"),s.keyboard&&t.setAttribute("tabindex",0),t.setAttribute("role","button"),lt(t,"".concat(g,"-").concat(n)),nt(i)||ft(t,K,n),J(o)&<(t,Tt(o)),-1!==["small","large"].indexOf(e)?lt(t,"".concat(g,"-").concat(e)):"play"===n&<(t,"".concat(g,"-large")),nt(i)&&yt(t,O,i),r.appendChild(t))}),o.appendChild(r)):lt(o,w),s.rotatable||(lt(d=o.querySelectorAll('li[class*="rotate"]'),D),ot(d,function(t){o.appendChild(t)})),s.inline?(lt(m,b),rt(i,{zIndex:s.zIndexInline}),"static"===window.getComputedStyle(e).position&&rt(e,{position:"relative"}),e.insertBefore(i,t.nextSibling)):(lt(m,f),lt(i,p),lt(i,v),lt(i,w),rt(i,{zIndex:s.zIndex}),_(m=s.container)&&(m=t.ownerDocument.querySelector(m)),(m=m||this.body).appendChild(i)),s.inline&&(this.render(),this.bind(),this.isShown=!0),this.ready=!0,nt(s.ready)&&yt(t,j,s.ready,{once:!0}),!1!==xt(t,j)?this.ready&&s.inline&&this.view(this.index):this.ready=!1)}}])&&o(t.prototype,e),n&&o(t,n),i}();return st(n.prototype,At,r,t,St,Ot),n}); \ No newline at end of file diff --git a/src/main/resources/static/banner.txt b/src/main/resources/static/banner.txt new file mode 100644 index 0000000..4730c77 --- /dev/null +++ b/src/main/resources/static/banner.txt @@ -0,0 +1,10 @@ + + ___ ___ __ + __ /\_ \ /\_ \ /\ \ +/\_\ ___ ___ __ \//\ \ ___\//\ \ ___ __ __ \_\ \ +\/\ \ /' __` __`\ /'__`\ \ \ \ /'___\\ \ \ / __`\/\ \/\ \ /'_` \ + \ \ \/\ \/\ \/\ \/\ \L\.\_ \_\ \_/\ \__/ \_\ \_/\ \L\ \ \ \_\ \/\ \L\ \ + _\ \ \ \_\ \_\ \_\ \__/.\_\/\____\ \____\/\____\ \____/\ \____/\ \___,_\ +/\ \_\ \/_/\/_/\/_/\/__/\/_/\/____/\/____/\/____/\/___/ \/___/ \/__,_ / +\ \____/ + \/___/ diff --git a/src/main/resources/templates/404.html b/src/main/resources/templates/404.html new file mode 100644 index 0000000..5d28603 --- /dev/null +++ b/src/main/resources/templates/404.html @@ -0,0 +1,138 @@ +
    + +
    +
    +
    +
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +
    +
    +
    +
    +
    +
    + diff --git a/src/main/resources/templates/archives.html b/src/main/resources/templates/archives.html new file mode 100644 index 0000000..2bdc9cd --- /dev/null +++ b/src/main/resources/templates/archives.html @@ -0,0 +1,141 @@ +
    + +
    +
    +
    +
    + +
    +
    +
    归档_
    +
    + +
    +
    +
    +
    + +
    +
      +
    • + + + +
      +

      + +
      +
    • +
    +
    + +
    +
    +
    +
    + +
    + diff --git a/src/main/resources/templates/article.html b/src/main/resources/templates/article.html new file mode 100644 index 0000000..036c2a6 --- /dev/null +++ b/src/main/resources/templates/article.html @@ -0,0 +1,690 @@ +
    +
    +
    +
    +
    +
    + +
    +
    +
    _
    +
    + + + + · 阅读: + + + · + + + + + + · + 编辑 + +
    + + + + +
    +
    +
    +
    +
    + +
    +
    + +
    +
    + +
    +
    + + + +
    + +
    + +
    + diff --git a/src/main/resources/templates/articles-query.html b/src/main/resources/templates/articles-query.html new file mode 100644 index 0000000..87d7046 --- /dev/null +++ b/src/main/resources/templates/articles-query.html @@ -0,0 +1,105 @@ +
    +
    +
    +
    +
    +
    _
    +
    + +
    +
    +
    +
    +
    +
    + +
    + diff --git a/src/main/resources/templates/articles.html b/src/main/resources/templates/articles.html new file mode 100644 index 0000000..70116a6 --- /dev/null +++ b/src/main/resources/templates/articles.html @@ -0,0 +1,183 @@ +
    + +
    +
    +
    +
    + +
    +
    +
    _
    +
    + +
    +
    +
    +
    + +
    + +
    +
    +
    + +
    + diff --git a/src/main/resources/templates/categories.html b/src/main/resources/templates/categories.html new file mode 100644 index 0000000..2434333 --- /dev/null +++ b/src/main/resources/templates/categories.html @@ -0,0 +1,143 @@ +
    + +
    +
    +
    +
    + +
    + +
    +
    分类_
    +
    +
    +
    + +
    + +
    + +
    +
    +
    +
    +
    + +
    + diff --git a/src/main/resources/templates/component/article-tail.html b/src/main/resources/templates/component/article-tail.html new file mode 100644 index 0000000..85d3819 --- /dev/null +++ b/src/main/resources/templates/component/article-tail.html @@ -0,0 +1,25 @@ +
    +
    +
    +
    +
    + +
    +
    + +
    +
    +
    +
    + +
    +
    + +
    +
    +
    +
    diff --git a/src/main/resources/templates/component/article-top.html b/src/main/resources/templates/component/article-top.html new file mode 100644 index 0000000..dd3a3bb --- /dev/null +++ b/src/main/resources/templates/component/article-top.html @@ -0,0 +1,99 @@ + + diff --git a/src/main/resources/templates/component/articles-list.html b/src/main/resources/templates/component/articles-list.html new file mode 100644 index 0000000..e6e962a --- /dev/null +++ b/src/main/resources/templates/component/articles-list.html @@ -0,0 +1,113 @@ +
    +
    +
    +
    + +
    +
    +
    +
    + + + 上一页 + + + 上一页 + + + + + 1 + … + + + + + + + + + … + + + + + 下一页 + + + 下一页 + + +
    +
    + +
    +
    diff --git a/src/main/resources/templates/component/common-js.html b/src/main/resources/templates/component/common-js.html new file mode 100644 index 0000000..f588917 --- /dev/null +++ b/src/main/resources/templates/component/common-js.html @@ -0,0 +1,144 @@ +
    + + +
    diff --git a/src/main/resources/templates/component/footer.html b/src/main/resources/templates/component/footer.html new file mode 100644 index 0000000..3dcd00d --- /dev/null +++ b/src/main/resources/templates/component/footer.html @@ -0,0 +1,13 @@ +
    +
    +

    + +
    +
    +
    diff --git a/src/main/resources/templates/component/head.html b/src/main/resources/templates/component/head.html new file mode 100644 index 0000000..34c7792 --- /dev/null +++ b/src/main/resources/templates/component/head.html @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/main/resources/templates/component/sidebar.html b/src/main/resources/templates/component/sidebar.html new file mode 100644 index 0000000..75c0a3b --- /dev/null +++ b/src/main/resources/templates/component/sidebar.html @@ -0,0 +1,159 @@ + + + diff --git a/src/main/resources/templates/index.html b/src/main/resources/templates/index.html new file mode 100644 index 0000000..2f4bd81 --- /dev/null +++ b/src/main/resources/templates/index.html @@ -0,0 +1,132 @@ + + + + + + + + +
    + + + + + + + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + + + diff --git a/src/main/resources/templates/tags.html b/src/main/resources/templates/tags.html new file mode 100644 index 0000000..c0760f1 --- /dev/null +++ b/src/main/resources/templates/tags.html @@ -0,0 +1,107 @@ +
    + + +
    +
    +
    +
    + +
    +
    +
    标签_
    +
    +
    +
    + +
    +
    + +
    +
    +
    +
    +
    +
    + +
    + diff --git a/src/test/java/com/jmal/clouddisk/ConcurrencyText.java b/src/test/java/com/jmal/clouddisk/ConcurrencyText.java new file mode 100644 index 0000000..c798503 --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/ConcurrencyText.java @@ -0,0 +1,36 @@ +package com.jmal.clouddisk; + +import cn.hutool.core.lang.Console; +import cn.hutool.core.thread.ConcurrencyTester; +import cn.hutool.core.thread.ThreadUtil; +import cn.hutool.http.HttpRequest; +import com.jmal.clouddisk.interceptor.AuthInterceptor; + +/** + * @author jmal + * @Description 高并发测试 + * @Date 2021/2/8 10:50 上午 + */ +public class ConcurrencyText { + + public static void main(String[] args) { + for (int i = 0; i < 10000; i++) { + listFileText(i); + } + } + + public static void listFileText(int count) { + ConcurrencyTester tester = ThreadUtil.concurrencyTest(50, () -> { + // 测试的逻辑内容 + long time = System.currentTimeMillis(); + HttpRequest.get("http://localhost:8088/list?userId=5e2d6675aab5fa4b7fecb59b&username=jmal¤tDirectory=&sortableProp=name&order=ascending&queryCondition=%7B%22isFolder%22:null%7D&pageIndex=1&pageSize=50") + .header(AuthInterceptor.JMAL_TOKEN,"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJXRUIiLCJpc3MiOiJTZXJ2aWNlIiwidXNlcm5hbWUiOiJqbWFsIn0.Rm6wR71pGk7O74Pd6dEi8D31G2Q26jA_7YZWoK1J3wI") + .header("Host","localhost:8088") + .header("User-Agent","Java") + .execute(); + Console.log("{} test finished, time consuming: {}", Thread.currentThread().getName(), System.currentTimeMillis() - time); + }); + // 获取总的执行时间,单位毫秒 + Console.log(tester.getInterval(), count); + } +} diff --git a/src/test/java/com/jmal/clouddisk/EpubCoverTest.java b/src/test/java/com/jmal/clouddisk/EpubCoverTest.java new file mode 100644 index 0000000..5aa82f5 --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/EpubCoverTest.java @@ -0,0 +1,94 @@ +package com.jmal.clouddisk; + +import cn.hutool.core.date.TimeInterval; +import nl.siegmann.epublib.domain.Book; +import nl.siegmann.epublib.domain.Resource; +import nl.siegmann.epublib.domain.Spine; +import nl.siegmann.epublib.epub.EpubReader; +import org.apache.tika.exception.TikaException; +import org.jsoup.Jsoup; +import org.jsoup.nodes.Document; + +import java.io.*; +import java.nio.charset.StandardCharsets; +import java.nio.file.Paths; + +public class EpubCoverTest { + public static void main(String[] args) { + try { + TimeInterval timeInterval = new TimeInterval(); + File epubFile = new File("/Users/jmal/Downloads/《延展力》未来职场的创造性重构与自我迭代.epub"); + File coverImageFile = epubCoverImage(epubFile); + System.out.println("epub 提取封面图像耗时: " + timeInterval.intervalMs() + "ms"); + System.out.println("epub 封面图像已保存为: " + coverImageFile); + + // 读取 EPUB 内容 + String content = readEpubContent(epubFile); + System.out.println("epub 内容: " + content); + } catch (IOException | TikaException e) { + System.out.println("epub 提取封面图像失败: " + e.getMessage()); + } + } + + private static File epubCoverImage(File epubFile) throws IOException, TikaException { + try { + // 打开 EPUB 文件 + FileInputStream fileInputStream = new FileInputStream(epubFile); + EpubReader epubReader = new EpubReader(); + Book book = epubReader.readEpub(fileInputStream); + + // 获取封面图片 + Resource coverImage = book.getCoverImage(); + if (coverImage != null) { + InputStream coverImageInputStream = coverImage.getInputStream(); + File coverImageFile = Paths.get(epubFile.getParent(), epubFile.getName().replace(".epub", "_cover.jpg")).toFile(); + OutputStream coverImageOutput = new FileOutputStream(coverImageFile); + + byte[] buffer = new byte[1024]; + int bytesRead; + while ((bytesRead = coverImageInputStream.read(buffer)) != -1) { + coverImageOutput.write(buffer, 0, bytesRead); + } + coverImageInputStream.close(); + coverImageOutput.close(); + return coverImageFile; + } else { + System.out.println("EPUB 文件中没有封面"); + } + fileInputStream.close(); + } catch (Exception e) { + System.out.println("EPUB 文件读取失败: " + e.getMessage()); + } + + return null; + } + + private static String readEpubContent(File epubFile) { + try { + // 打开 EPUB 文件 + InputStream fileInputStream = new FileInputStream(epubFile); + EpubReader epubReader = new EpubReader(); + Book book = epubReader.readEpub(fileInputStream); + StringBuilder content = new StringBuilder(); + // 获取章节内容 + Spine spine = book.getSpine(); + for (int i = 0; i < spine.size(); i++) { + Resource resource = spine.getResource(i); + InputStream is = resource.getInputStream(); + byte[] bytes = is.readAllBytes(); + String htmlContent = new String(bytes, StandardCharsets.UTF_8); + // 使用 JSoup 解析 HTML 并提取纯文本 + Document document = Jsoup.parse(htmlContent); + String textContent = document.text(); + content.append(textContent); + is.close(); + } + fileInputStream.close(); + return content.toString(); + } catch (Exception e) { + System.out.println("EPUB 文件读取失败: " + e.getMessage()); + } + return null; + } + +} diff --git a/src/test/java/com/jmal/clouddisk/ExportSysDBText.java b/src/test/java/com/jmal/clouddisk/ExportSysDBText.java new file mode 100644 index 0000000..2652fdc --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/ExportSysDBText.java @@ -0,0 +1,59 @@ +package com.jmal.clouddisk; + +import cn.hutool.core.date.LocalDateTimeUtil; +import cn.hutool.core.io.FileUtil; +import com.alibaba.fastjson.JSONArray; +import com.jmal.clouddisk.model.rbac.MenuDO; +import com.jmal.clouddisk.model.rbac.RoleDO; +import com.jmal.clouddisk.service.impl.MenuService; +import com.jmal.clouddisk.service.impl.RoleService; +import com.jmal.clouddisk.util.TimeUntils; +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; + +import java.io.File; +import java.nio.charset.StandardCharsets; +import java.time.LocalDateTime; +import java.util.List; + +/** + * @author jmal + * @Description 将系统管理数据库导出为json + * @Date 2021/1/12 9:19 上午 + */ +@SpringBootTest +class ExportSysDBText { + + @Autowired + MenuService menuService; + + @Autowired + RoleService roleService; + + /*** + * 把菜单导出为json文件 + */ + @Test + void exportMenu() { + String now = LocalDateTimeUtil.formatNormal(LocalDateTime.now(TimeUntils.ZONE_ID)); + File file = new File("/Users/jmal/Downloads/menu"+now+".json"); + List menuDOList = menuService.getAllMenus(); + if(!menuDOList.isEmpty()){ + FileUtil.writeString(JSONArray.toJSONString(menuDOList),file, StandardCharsets.UTF_8); + } + } + + /*** + * 把角色导出为json文件 + */ + @Test + void exportRole() { + String now = LocalDateTimeUtil.formatNormal(LocalDateTime.now(TimeUntils.ZONE_ID)); + File file = new File("/Users/jmal/Downloads/role"+now+".json"); + List roleDOList = roleService.getAllRoles(); + if(!roleDOList.isEmpty()){ + FileUtil.writeString(JSONArray.toJSONString(roleDOList),file,StandardCharsets.UTF_8); + } + } +} diff --git a/src/test/java/com/jmal/clouddisk/FileSorter.java b/src/test/java/com/jmal/clouddisk/FileSorter.java new file mode 100644 index 0000000..d0345da --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/FileSorter.java @@ -0,0 +1,192 @@ +package com.jmal.clouddisk; + +import java.io.File; +import java.sql.Date; +import java.text.Collator; +import java.util.Arrays; +import java.util.Comparator; + +public class FileSorter implements Comparator { + /** + * 默认排序的方式, 按目录,文件排序TYPE_DIR + */ + public static final int TYPE_DEFAULT = -1; + /** + * 按修改时间,降序 + */ + public static final int TYPE_MODIFIED_DATE_DOWN = 1; + /** + * 按修改时间,升序 + */ + public static final int TYPE_MODIFIED_DATE_UP = 2; + /** + * 按文件大小,降序 + */ + public static final int TYPE_SIZE_DOWN = 3; + /** + * 按文件大小,升序 + */ + public static final int TYPE_SIZE_UP = 4; +/* public static final int TYPE_NAME_DOWN = 5; + public static final int TYPE_NAME_UP = 6;*/ + /** + * 按文件名 + */ + public static final int TYPE_NAME = 5; + /** + * 按目录,文件排序 + */ + public static final int TYPE_DIR = 7; + + private int mType = -1; + + public FileSorter(int type) { + if (type < 0 || type > 7) { + type = TYPE_DIR; + } + mType = type; + } + + @Override + public int compare(File object1, File object2) { + + int result = 0; + + switch (mType) { + + case TYPE_MODIFIED_DATE_DOWN://last modified date down + result = compareByModifiedDateDown(object1, object2); + break; + + case TYPE_MODIFIED_DATE_UP://last modified date up + result = compareByModifiedDateUp(object1, object2); + break; + + case TYPE_SIZE_DOWN: // file size down + result = compareBySizeDown(object1, object2); + break; + + case TYPE_SIZE_UP: //file size up + result = compareBySizeUp(object1, object2); + break; + + case TYPE_NAME: //name + result = compareByName(object1, object2); + break; + + case TYPE_DIR: //dir or file + result = compareByDir(object1, object2); + break; + default: + result = compareByDir(object1, object2); + break; + } + return result; + } + + private int compareByModifiedDateDown(File object1, File object2) { + + long d1 = object1.lastModified(); + long d2 = object2.lastModified(); + + if (d1 == d2) { + return 0; + } else { + return d1 < d2 ? 1 : -1; + } + } + + private int compareByModifiedDateUp(File object1, File object2) { + + long d1 = object1.lastModified(); + long d2 = object2.lastModified(); + + if (d1 == d2) { + return 0; + } else { + return d1 > d2 ? 1 : -1; + } + } + + private int compareBySizeDown(File object1, File object2) { + + if (object1.isDirectory() && object2.isDirectory()) { + return 0; + } + if (object1.isDirectory() && object2.isFile()) { + return -1; + } + if (object1.isFile() && object2.isDirectory()) { + return 1; + } + long s1 = object1.length(); + long s2 = object2.length(); + + if (s1 == s2) { + return 0; + } else { + return s1 < s2 ? 1 : -1; + } + } + + private int compareBySizeUp(File object1, File object2) { + + if (object1.isDirectory() && object2.isDirectory()) { + return 0; + } + if (object1.isDirectory() && object2.isFile()) { + return -1; + } + if (object1.isFile() && object2.isDirectory()) { + return 1; + } + + long s1 = object1.length(); + long s2 = object2.length(); + + if (s1 == s2) { + return 0; + } else { + return s1 > s2 ? 1 : -1; + } + } + + private int compareByName(File object1, File object2) { + + Comparator cmp = Collator.getInstance(java.util.Locale.CHINA); + + return cmp.compare(object1.getName(), object2.getName()); + } + + private int compareByDir(File object1, File object2) { + + if (object1.isDirectory() && object2.isFile()) { + return -1; + } else if (object1.isDirectory() && object2.isDirectory()) { + return compareByName(object1, object2); + } else if (object1.isFile() && object2.isDirectory()) { + return 1; + } else { //object1.isFile() && object2.isFile()) + return compareByName(object1, object2); + } + } + + //for rwlock + public static void main(String[] args) { + + File[] list = new File("/Users/jmal/temp/filetest/rootpath/jmal/").listFiles(); + Arrays.sort(list, new FileSorter(FileSorter.TYPE_DIR)); + printFileArray(list); + } + + //for rwlock + private static void printFileArray(File[] list) { + + System.out.println("文件大小\t\t文件修改日期\t\t文件类型\t\t文件名称"); + + for (File f : list) { + System.out.println(f.length() + "\t\t" + new Date(f.lastModified()).toString() + "\t\t" + (f.isDirectory() ? "目录" : "文件") + "\t\t" + f.getName()); + } + } + +} diff --git a/src/test/java/com/jmal/clouddisk/FileWatchMonitor.java b/src/test/java/com/jmal/clouddisk/FileWatchMonitor.java new file mode 100644 index 0000000..95b13eb --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/FileWatchMonitor.java @@ -0,0 +1,49 @@ +package com.jmal.clouddisk; + +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.io.watch.SimpleWatcher; +import cn.hutool.core.io.watch.WatchMonitor; +import cn.hutool.core.lang.Console; + +import java.io.File; +import java.nio.file.Path; +import java.nio.file.WatchEvent; + +/** + * @Description 文件监听 + * @Author jmal + * @Date 2020/9/29 5:44 下午 + */ +public class FileWatchMonitor { + + public static void main(String[] args) { + File file = FileUtil.file("/Users/jmal/temp/filetest/rootpath"); + WatchMonitor watchMonitor = WatchMonitor.createAll(file, new MySimpleWatcher()); + watchMonitor.setMaxDepth(16); + //启动监听 + watchMonitor.start(); + Console.log("启动监听"); + } + + private static class MySimpleWatcher extends SimpleWatcher{ + @Override + public void onCreate(WatchEvent event, Path currentPath) { + Console.log("创建:{}-> {}", currentPath, event); + } + + @Override + public void onModify(WatchEvent event, Path currentPath) { + Console.log("修改:{}-> {}", currentPath, event); + } + + @Override + public void onDelete(WatchEvent event, Path currentPath) { + Console.log("删除:{}-> {}", currentPath, event); + } + + @Override + public void onOverflow(WatchEvent event, Path currentPath) { + Console.log("Overflow:{}-> {}", currentPath, event); + } + } +} diff --git a/src/test/java/com/jmal/clouddisk/GridFSTest.java b/src/test/java/com/jmal/clouddisk/GridFSTest.java new file mode 100644 index 0000000..943a69b --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/GridFSTest.java @@ -0,0 +1,38 @@ +package com.jmal.clouddisk; + +import cn.hutool.core.lang.Console; +import com.jmal.clouddisk.service.IFileVersionService; +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.nio.charset.StandardCharsets; + +/** + * @author jmal + * @Description GridFSTest + * @date 2023/5/10 17:47 + */ +@SpringBootTest +class GridFSTest { + + @Autowired + IFileVersionService fileVersionService; + + @Test + void read() throws IOException { + String fileId = "645b693fd03da37e89bb6ed8"; + try (InputStream inputStream = fileVersionService.readFileVersion(fileId); + InputStreamReader inputStreamReader = new InputStreamReader(inputStream, StandardCharsets.UTF_8); + BufferedReader bufferedReader = new BufferedReader(inputStreamReader);) { + String line; + while ((line = bufferedReader.readLine()) != null) { + Console.log(line); + } + } + } +} diff --git a/src/test/java/com/jmal/clouddisk/InitSysDBText.java b/src/test/java/com/jmal/clouddisk/InitSysDBText.java new file mode 100644 index 0000000..1061101 --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/InitSysDBText.java @@ -0,0 +1,38 @@ +package com.jmal.clouddisk; + +import com.jmal.clouddisk.service.impl.MenuService; +import com.jmal.clouddisk.service.impl.RoleService; +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; + +/** + * @author jmal + * @Description 初始化系统管理数据库 + * @Date 2021/1/12 9:19 上午 + */ +@SpringBootTest +class InitSysDBText { + + @Autowired + MenuService menuService; + + @Autowired + RoleService roleService; + + /*** + * 通过json文件初始化菜单数据 + */ + @Test + void initMenu() { + menuService.initMenus(); + } + + /*** + * 通过json文件初始化角色数据 + */ + @Test + void initRole() { + roleService.initRoles(); + } +} diff --git a/src/test/java/com/jmal/clouddisk/PdfCoverTest.java b/src/test/java/com/jmal/clouddisk/PdfCoverTest.java new file mode 100644 index 0000000..1f02647 --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/PdfCoverTest.java @@ -0,0 +1,41 @@ +package com.jmal.clouddisk; + +import cn.hutool.core.date.TimeInterval; +import org.apache.pdfbox.Loader; +import org.apache.pdfbox.io.RandomAccessReadBufferedFile; +import org.apache.pdfbox.pdmodel.PDDocument; +import org.apache.pdfbox.rendering.ImageType; +import org.apache.pdfbox.rendering.PDFRenderer; +import org.apache.tika.exception.TikaException; + +import javax.imageio.ImageIO; +import java.awt.image.BufferedImage; +import java.io.File; +import java.io.IOException; + +public class PdfCoverTest { + public static void main(String[] args) { + try { + TimeInterval timeInterval = new TimeInterval(); + File pdfFile = new File("/Users/jmal/Downloads/1001241328 JLG BIM Content User Guide - Boom Lift (1).pdf"); + File coverImageFile = pdfCoverImage(pdfFile); + System.out.println("pdf 提取封面图像耗时: " + timeInterval.intervalMs() + "ms"); + System.out.println("pdf 封面图像已保存为: " + coverImageFile); + } catch (IOException | TikaException e) { + System.out.println("pdf 提取封面图像失败: " + e.getMessage()); + } + } + + private static File pdfCoverImage(File pdfFile) throws IOException, TikaException { + // 使用PDFBox读取PDF并提取封面图像 + try (PDDocument document = Loader.loadPDF(new RandomAccessReadBufferedFile(pdfFile))) { + PDFRenderer pdfRenderer = new PDFRenderer(document); + BufferedImage coverImage = pdfRenderer.renderImageWithDPI(0, 128, ImageType.RGB); + + // 将封面图像保存为JPEG文件 + File coverImageFile = new File(pdfFile.getParent(), pdfFile.getName().replace(".pdf", "_cover.jpg")); + ImageIO.write(coverImage, "JPEG", coverImageFile); + return coverImageFile; + } + } +} diff --git a/src/test/java/com/jmal/clouddisk/RBACText.java b/src/test/java/com/jmal/clouddisk/RBACText.java new file mode 100644 index 0000000..9412fb0 --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/RBACText.java @@ -0,0 +1,24 @@ +package com.jmal.clouddisk; + +import cn.hutool.core.lang.Console; +import com.jmal.clouddisk.service.IUserService; +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; + +/** + * @author jmal + * @Description rbac + * @Date 2021/1/12 3:11 下午 + */ +@SpringBootTest +class RBACText { + + @Autowired + IUserService userService; + + @Test + void getAuthorities(){ + Console.log("admin", userService.getAuthorities("admin")); + } +} diff --git a/src/test/java/com/jmal/clouddisk/StdRandom.java b/src/test/java/com/jmal/clouddisk/StdRandom.java new file mode 100644 index 0000000..b202bce --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/StdRandom.java @@ -0,0 +1,82 @@ +package com.jmal.clouddisk; + +import java.util.Random; + +public final class StdRandom { + + //随机数生成器 + private static Random random; + //种子值 + private static long seed; + + //静态代码块,初始化种子值及随机数生成器 + static { + seed = System.currentTimeMillis(); + random = new Random(seed); + } + + //私有构造函数,禁止实例化 + private StdRandom() {} + + /** + * 设置种子值 + * @param s 随机数生成器的种子值 + */ + public static void setSeed(long s){ + seed = s; + random = new Random(seed); + } + + /** + * 获取种子值 + * @return long 随机数生成器的种子值 + */ + public static long getSeed(){ + return seed; + } + + /** + * 随机返回0到1之间的实数 [0,1) + * @return double 随机数 + */ + public static double uniform(){ + return random.nextDouble(); + } + + /** + * 随机返回0到N-1之间的整数 [0,N) + * @param N 上限 + * @return int 随机数 + */ + public static int uniform(int N){ + return random.nextInt(N); + } + + /** + * 随机返回0到1之间的实数 [0,1) + * @return double 随机数 + */ + public static double random(){ + return uniform(); + } + + /** + * 随机返回a到b-1之间的整数 [a,b) + * @param a 下限 + * @param b 上限 + * @return int 随机数 + */ + public static int uniform(int a,int b){ + return a + uniform(b - a); + } + + /** + * 随机返回a到b之间的实数 + * @param a 下限 + * @param b 上限 + * @return double 随机数 + */ + public static double uniform(double a,double b){ + return a + uniform() * (b - a); + } +} \ No newline at end of file diff --git a/src/test/java/com/jmal/clouddisk/Test.java b/src/test/java/com/jmal/clouddisk/Test.java new file mode 100644 index 0000000..6068d65 --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/Test.java @@ -0,0 +1,96 @@ +package com.jmal.clouddisk; +import cn.hutool.core.lang.Console; + +/** + * @author jmal + * @Description Test + * @Date 2021/1/18 10:06 上午 + */ +public class Test { + + /** + * 十六进制字符的输出的小写字符数组 + */ + private static final char[] DIGITS_LOWER = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'}; + + /** + * 两个或三个十六进制字符转换后的字符 + */ + private static final char[] CODES = {'0','1','2','3','4','5','6','7','8','9', + 'A','B','C','D','E','F','G','H','I','J', + 'K','L','M','N','O','P','Q','R','S','T', + 'U','V','W','X','Y','Z','a','b','c','d', + 'e','f','g','h','i','j','k','l','m','n', + 'o','p','q','r','s','t','u','v','w','x', + 'y','z','_'}; + /** + * 单元测试 + * 运行: java RandomStr 4 (生成长度为4的字符串) + */ + public static void main(String[] args){ + + String str = "/jmal/tewo/hq100_M_0.json"; + long stime = System.currentTimeMillis(); + + StringBuilder out = new StringBuilder(); + + for (int i = 3; i < str.length() + 2; i = i + 3) { + Console.log(str.charAt(i-3), indexOf(str.charAt(i-3))); + Console.log(str.charAt(i-2), indexOf(str.charAt(i-2))); + Console.log(str.charAt(i-1), indexOf(str.charAt(i-1))); + int index = indexOf(str.charAt(i-3)) + indexOf(str.charAt(i-2)) + indexOf(str.charAt(i-1)); + out.append(CODES[index]); + } + + Console.log(out.toString(), System.currentTimeMillis() - stime); + } + + private static int indexOf(char hex){ + for (int i = 0; i < DIGITS_LOWER.length; i++) { + if(DIGITS_LOWER[i] == hex){ + return i; + } + } + return -1; + } + + /** + * 返回随机字符串,同时包含数字、大小写字母 + * @param len 字符串长度,不能小于3 + * @return String 随机字符串 + */ + public static String randomStr(int len){ + if(len < 3){ + throw new IllegalArgumentException("字符串长度不能小于3"); + } + //数组,用于存放随机字符 + char[] chArr = new char[len]; + //为了保证必须包含数字、大小写字母 + chArr[0] = (char)('0' + StdRandom.uniform(0,10)); + chArr[1] = (char)('A' + StdRandom.uniform(0,26)); + chArr[2] = (char)('a' + StdRandom.uniform(0,26)); + + + char[] codes = {'0','1','2','3','4','5','6','7','8','9', + 'A','B','C','D','E','F','G','H','I','J', + 'K','L','M','N','O','P','Q','R','S','T', + 'U','V','W','X','Y','Z','a','b','c','d', + 'e','f','g','h','i','j','k','l','m','n', + 'o','p','q','r','s','t','u','v','w','x', + 'y','z','_'}; + //charArr[3..len-1]随机生成codes中的字符 + for(int i = 3; i < len; i++){ + chArr[i] = codes[StdRandom.uniform(0,codes.length)]; + } + + //将数组chArr随机排序 + for(int i = 0; i < len; i++){ + int r = i + StdRandom.uniform(len - i); + char temp = chArr[i]; + chArr[i] = chArr[r]; + chArr[r] = temp; + } + + return new String(chArr); + } +} diff --git a/src/test/java/com/jmal/clouddisk/UpdateJDKTest.java b/src/test/java/com/jmal/clouddisk/UpdateJDKTest.java new file mode 100644 index 0000000..e4bfd17 --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/UpdateJDKTest.java @@ -0,0 +1,48 @@ +package com.jmal.clouddisk; + +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.io.file.PathUtil; +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +import java.io.File; +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; + +/** + * @Description updateJdk17Test + * @blame jmal + * @Date 2023/3/3 23:12 + */ + +@SpringBootTest +class UpdateJDKTest { + + + @Test + void moveFile() throws IOException { + Path fromPath = Paths.get("/Users/jmal/Downloads/UU-macOS-2.7.0(237).dmg"); + Path outputFile = Paths.get("/Users/jmal/Downloads/move/"); + if (!Files.exists(outputFile)) { + Files.createFile(outputFile); + } + PathUtil.move(fromPath, outputFile, true); + } + + @Test + void copyFile() { + File fromFile = Paths.get("/Users/jmal/Downloads/move/UU-macOS-2.7.0(237).dmg").toFile(); + File toFile = Paths.get("/Users/jmal/Downloads/数据列表excel6401e11321a0e1.07995309.xlsx").toFile(); + FileUtil.copy(fromFile, toFile, true); + } + + @Test + void copyDir() { + File fromFile = Paths.get("/Users/jmal/temp/filetest/rootpath/jmal/新建文件夹1/新建文件夹[]--/").toFile(); + File toFile = Paths.get("/Users/jmal/temp/filetest/rootpath/jmal/").toFile(); + FileUtil.copy(fromFile, toFile, true); + } + +} diff --git a/src/test/java/com/jmal/clouddisk/WebpTest.java b/src/test/java/com/jmal/clouddisk/WebpTest.java new file mode 100644 index 0000000..fd3c53b --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/WebpTest.java @@ -0,0 +1,40 @@ +package com.jmal.clouddisk; + +import com.luciad.imageio.webp.WebPWriteParam; + +import javax.imageio.IIOImage; +import javax.imageio.ImageIO; +import javax.imageio.ImageWriter; +import javax.imageio.stream.FileImageOutputStream; +import java.awt.image.BufferedImage; +import java.io.File; +import java.io.IOException; + +/** + * @author jmal + * @Description webp + * @Date 2020/12/24 10:20 上午 + */ +public class WebpTest { + public static void main(String args[]) throws IOException { + String inputJpgPath = "/Users/jmal/Pictures/截图/截屏 19.png"; + String outputWebpPath = "/Users/jmal/Pictures/截图/截屏 19.webp.png"; + + // 从某处获取图像进行编码 + BufferedImage image = ImageIO.read(new File(inputJpgPath)); + + // 获取一个WebP ImageWriter实例 + ImageWriter writer = ImageIO.getImageWritersByMIMEType("image/webp").next(); + + // 配置编码参数 + WebPWriteParam writeParam = new WebPWriteParam(writer.getLocale()); + writeParam.setCompressionMode(WebPWriteParam.MODE_DEFAULT); + + // 在ImageWriter上配置输出 + writer.setOutput(new FileImageOutputStream(new File(outputWebpPath))); + + // 编码 + writer.write(null, new IIOImage(image, null, null), writeParam); + + } +} \ No newline at end of file diff --git a/src/test/java/com/jmal/clouddisk/WordCoverTest.java b/src/test/java/com/jmal/clouddisk/WordCoverTest.java new file mode 100644 index 0000000..48d6441 --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/WordCoverTest.java @@ -0,0 +1,87 @@ +package com.jmal.clouddisk; + +import cn.hutool.core.date.TimeInterval; +import com.itextpdf.styledxmlparser.jsoup.Jsoup; +import com.itextpdf.styledxmlparser.jsoup.nodes.Element; +import com.itextpdf.styledxmlparser.jsoup.select.Elements; +import com.spire.doc.Document; +import com.spire.doc.FileFormat; +import com.spire.doc.documents.ImageType; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.codec.binary.Base64; +import org.apache.poi.xwpf.usermodel.XWPFDocument; +import org.apache.poi.xwpf.usermodel.XWPFPictureData; + +import javax.imageio.ImageIO; +import java.awt.image.BufferedImage; +import java.io.*; +import java.util.List; + +@Slf4j +public class WordCoverTest { + public static void main(String[] args) { + try { + TimeInterval timeInterval = new TimeInterval(); + File pdfFile = new File("/Users/jmal/Downloads/未命名文件1-2.docx"); + File coverImageFile = wordCoverImage(pdfFile); + System.out.println("word 提取封面图像耗时: " + timeInterval.intervalMs() + "ms"); + System.out.println("word 封面图像已保存为: " + coverImageFile); + timeInterval.restart(); + String html = docxToHtml(pdfFile); + System.out.println("word 转换为html: " + html); + System.out.println("word 转换为html耗时: " + timeInterval.intervalMs() + "ms"); + } catch (IOException e) { + System.out.println("word 提取封面图像失败: " + e.getMessage()); + } catch (Exception e) { + throw new RuntimeException(e); + } + } + + private static File wordCoverImage(File wordFile) throws IOException { + try (FileInputStream fis = new FileInputStream(wordFile.getAbsolutePath())) { + Document document = new Document(); + document.loadFromStream(fis, FileFormat.Docx); + if (document.getPageCount() > 0) { + // 获取第1页并转换为图片 + BufferedImage image = document.saveToImages(0, ImageType.Bitmap); + // 将图片写入输出流 + // ByteArrayOutputStream imageOutputStream = new ByteArrayOutputStream(); + // ImageIO.write(image, "png", imageOutputStream); + // 保存图片 + File coverImageFile = new File(wordFile.getParent(), wordFile.getName().replace(".docx", "_cover.png")); + ImageIO.write(image, "png", coverImageFile); + return coverImageFile; + } + } + return null; + } + + public static String docxToHtml(File wordFile) throws Exception { + InputStream input = new FileInputStream(wordFile); + XWPFDocument document = new XWPFDocument(input); + List list = document.getAllPictures(); + ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); + String s = outputStream.toString(); + return setImg(s, list); + } + + private static String setImg(String html, List list) { + com.itextpdf.styledxmlparser.jsoup.nodes.Document doc = Jsoup.parse(html); + Elements elements = doc.getElementsByTag("img"); + if (elements != null && !elements.isEmpty() && list != null) { + for (Element element : elements) { + String src = element.attr("src"); + for (XWPFPictureData data : list) { + if (src.contains(data.getFileName())) { + String type = src.substring(src.lastIndexOf(".") + 1); + String base64 = "data:image/" + type + ";base64," + new String(Base64.encodeBase64(data.getData())); + element.attr("src", base64); + break; + } + } + } + } + return doc.toString(); + } + +} diff --git a/src/test/java/com/jmal/clouddisk/ip2region/Ip2regionTest.java b/src/test/java/com/jmal/clouddisk/ip2region/Ip2regionTest.java new file mode 100644 index 0000000..bf6ad9b --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/ip2region/Ip2regionTest.java @@ -0,0 +1,115 @@ +package com.jmal.clouddisk.ip2region; + +import org.junit.jupiter.api.Test; +import org.lionsoul.ip2region.xdb.Searcher; +import org.springframework.boot.test.context.SpringBootTest; + +import java.io.IOException; +import java.util.concurrent.TimeUnit; + +/** + * @author jmal + * @Description ip2region test + * @Date 2021/2/23 1:44 下午 + */ +@SpringBootTest +class Ip2regionTest { + private static final String dbPath = "/Users/jmal/studio/myProject/github/jmal-cloud-server/docker/ip2region.xdb"; + + @Test + void searchFile() throws IOException { + Searcher searcher; + try { + searcher = Searcher.newWithFileOnly(dbPath); + } catch (IOException e) { + System.out.printf("failed to create searcher with `%s`: %s\n", dbPath, e); + return; + } + + // 2、查询 + String ip = "1.2.3.4"; + try { + long sTime = System.nanoTime(); + String region = searcher.search(ip); + long cost = TimeUnit.NANOSECONDS.toMicros((long) (System.nanoTime() - sTime)); + int memory = 0 / 1024 /1024; + System.out.printf("{ 完全基于文件的查询: region: %s, ioCount: %d, memory: %d MB, took: %d μs}\n", region, searcher.getIOCount(), memory, cost); + } catch (Exception e) { + System.out.printf("failed to search(%s): %s\n", ip, e); + } + + // 3、关闭资源 + searcher.close(); + + // 备注:并发使用,每个线程需要创建一个独立的 searcher 对象单独使用。 + } + + @Test + void vectorIndexTest() throws IOException { + // 1、从 dbPath 中预先加载 VectorIndex 缓存,并且把这个得到的数据作为全局变量,后续反复使用。 + byte[] vIndex; + try { + vIndex = Searcher.loadVectorIndexFromFile(dbPath); + } catch (Exception e) { + System.out.printf("failed to load vector index from `%s`: %s\n", dbPath, e); + return; + } + // 2、使用全局的 vIndex 创建带 VectorIndex 缓存的查询对象。 + Searcher searcher; + try { + searcher = Searcher.newWithVectorIndex(dbPath, vIndex); + } catch (Exception e) { + System.out.printf("failed to create vectorIndex cached searcher with `%s`: %s\n", dbPath, e); + return; + } + String ip = "1.2.3.4"; + // 3、查询 + try { + long sTime = System.nanoTime(); + String region = searcher.search(ip); + long cost = TimeUnit.NANOSECONDS.toMicros((long) (System.nanoTime() - sTime)); + int memory = vIndex.length / 1024; + System.out.printf("{缓存VectorIndex索引: region: %s, ioCount: %d, memory: %d KB, took: %d μs}\n", region, searcher.getIOCount(), memory, cost); + } catch (Exception e) { + System.out.printf("failed to search(%s): %s\n", ip, e); + } + // 4、关闭资源 + searcher.close(); + } + + @Test + void cacheAllTest() throws IOException { + // 1、从 dbPath 加载整个 xdb 到内存。 + byte[] cBuff; + try { + cBuff = Searcher.loadContentFromFile(dbPath); + } catch (Exception e) { + System.out.printf("failed to load content from `%s`: %s\n", dbPath, e); + return; + } + // 2、使用上述的 cBuff 创建一个完全基于内存的查询对象。 + Searcher searcher; + try { + searcher = Searcher.newWithBuffer(cBuff); + } catch (Exception e) { + System.out.printf("failed to create content cached searcher: %s\n", e); + return; + } + // 3、查询 + String ip = "1.2.3.4"; + try { + long sTime = System.nanoTime(); + String region = searcher.search(ip); + long cost = TimeUnit.NANOSECONDS.toMicros((long) (System.nanoTime() - sTime)); + int memory = cBuff.length / 1024 /1024; + System.out.printf("{ 缓存整个xdb数据: region: %s, ioCount: %d, memory: %d MB, took: %d μs}\n", region, searcher.getIOCount(), memory, cost); + } catch (Exception e) { + System.out.printf("failed to search(%s): %s\n", ip, e); + } + + // 4、关闭资源 - 该 searcher 对象可以安全用于并发,等整个服务关闭的时候再关闭 searcher + // searcher.close(); + + // 备注:并发使用,用整个 xdb 数据缓存创建的查询对象可以安全的用于并发,也就是你可以把这个 searcher 对象做成全局对象去跨线程访问. + } +} diff --git a/src/test/java/com/jmal/clouddisk/lucene/ExcelSaxReader.java b/src/test/java/com/jmal/clouddisk/lucene/ExcelSaxReader.java new file mode 100644 index 0000000..74bd552 --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/lucene/ExcelSaxReader.java @@ -0,0 +1,23 @@ +package com.jmal.clouddisk.lucene; + +import cn.hutool.core.lang.Console; +import cn.hutool.poi.excel.ExcelUtil; +import cn.hutool.poi.excel.sax.handler.RowHandler; + +import java.util.List; + +public class ExcelSaxReader { + public static void main(String[] args) throws Exception { + ExcelUtil.readBySax("/Users/jmal/Downloads/欣薇尔工厂-数据报表 (4).xlsx", 0, createRowHandler()); + } + + private static RowHandler createRowHandler() { + return new RowHandler() { + @Override + public void handle(int sheetIndex, long rowIndex, List rowlist) { + Console.log("[{}] [{}] {}", sheetIndex, rowIndex, rowlist); + } + }; + } + +} diff --git a/src/test/java/com/jmal/clouddisk/lucene/IndexFiles.java b/src/test/java/com/jmal/clouddisk/lucene/IndexFiles.java new file mode 100644 index 0000000..5615de4 --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/lucene/IndexFiles.java @@ -0,0 +1,201 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.jmal.clouddisk.lucene; + + +import org.apache.lucene.analysis.Analyzer; +import org.apache.lucene.analysis.cn.smart.SmartChineseAnalyzer; +import org.apache.lucene.document.*; +import org.apache.lucene.index.IndexWriter; +import org.apache.lucene.index.IndexWriterConfig; +import org.apache.lucene.index.IndexWriterConfig.OpenMode; +import org.apache.lucene.index.Term; +import org.apache.lucene.store.Directory; +import org.apache.lucene.store.FSDirectory; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.nio.charset.StandardCharsets; +import java.nio.file.*; +import java.nio.file.attribute.BasicFileAttributes; +import java.util.Date; + +/** + * 为一个目录下的所有文本文件编制索引 + * 这是一个演示简单Lucene索引的命令行应用程序 + * 在不使用命令行参数的情况下运行它以获取使用情况信息 + */ +public class IndexFiles { + + /** + * 索引目录 + */ + public static final String INDEX_PATH = "/Users/jmal/temp/lucene/index"; + /** + * 文档目录 + */ + public static final String DOCS_PATH = "/Users/jmal/temp/filetest/rootpath/jmal/Document"; + + private IndexFiles() { + } + + /** + * 为一个目录下的所有文本文件编制索引 + */ + public static void main(String[] args) { + String indexPath = "index"; + String docsPath = null; + boolean create = true; + for (int i = 0; i < args.length; i++) { + if ("-index".equals(args[i])) { + indexPath = args[i + 1]; + i++; + } else if ("-docs".equals(args[i])) { + docsPath = args[i + 1]; + i++; + } else if ("-update".equals(args[i])) { + create = false; + } + } + + if (docsPath == null) { + // 手动赋值 + // INDEX_PATH + indexPath = INDEX_PATH; + // DOCS_PATH + docsPath = DOCS_PATH; + // System.err.println("使用方法: " + usage); + // System.exit(1); + } + + final Path docDir = Paths.get(docsPath); + if (!Files.isReadable(docDir)) { + System.out.println("文档目录 '" + docDir.toAbsolutePath() + "' 不存在或不可读,请检查路径"); + System.exit(1); + } + + Date start = new Date(); + try { + System.out.println("对目录 '" + indexPath + "' 编制索引... "); + + Directory dir = FSDirectory.open(Paths.get(indexPath)); + Analyzer analyzer = new SmartChineseAnalyzer(true); + IndexWriterConfig iwc = new IndexWriterConfig(analyzer); + + if (create) { + // 在目录中创建一个新的索引,删除任何先前索引的文件 + iwc.setOpenMode(OpenMode.CREATE); + } else { + // 将新的文件添加到现有的索引中 + iwc.setOpenMode(OpenMode.CREATE_OR_APPEND); + } + + // 可选:为了获得更好的索引性能,如果你要为许多文档建立索引,可以增加RAM缓冲区 + // 但是,如果你这样做,请增加JVM的最大堆大小(例如添加-Xmx512m或-Xmx1g) + // iwc.setRAMBufferSizeMB(256.0); + + IndexWriter writer = new IndexWriter(dir, iwc); + indexDocs(writer, docDir); + + // 注意:如果你想最大限度地提高搜索性能,你可以在这里选择性地调用forceMerge + // 这可能是一个非常昂贵的操作,所以一般来说, + // 只有当你的索引是相对静态的(即你已经完成了对它的添加),才值得这样做 + // writer.forceMerge(1); + writer.close(); + Date end = new Date(); + System.out.println("编制索引耗时:" + (end.getTime() - start.getTime()) + " ms"); + + } catch (IOException e) { + System.out.println(" caught a " + e.getClass() + + "\n with message: " + e.getMessage()); + } + } + + /** + * 使用给定的写入器对给定的文件进行索引,如果给定的是目录, + * 则对在给定目录下找到的文件和目录进行检索。 + * 注意:该方法为每个输入文件索引一个文件,这很慢。 + * 为了获得良好的吞吐量,将多个文件放入你的输入文件。 + * 这方面的一个例子是在基准模块中, + * 它可以使用WriteLineDocTask创建 "line doc" 文件,每行一个文档。 + * + * @param writer 写入索引,给定的文件/目录信息将被存储在那里 + * @param path 要索引的文件,或要重新搜索的目录,以找到要索引的文件 + * @throws IOException 如果有一个低级别的I/O错误 + */ + static void indexDocs(final IndexWriter writer, Path path) throws IOException { + if (Files.isDirectory(path)) { + Files.walkFileTree(path, new SimpleFileVisitor() { + @Override + public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) { + try { + indexDoc(writer, file, attrs.lastModifiedTime().toMillis()); + } catch (IOException ignore) { + // 不要索引不能被读取的文件 + } + return FileVisitResult.CONTINUE; + } + }); + } else { + indexDoc(writer, path, Files.getLastModifiedTime(path).toMillis()); + } + } + + /** + * 为单个文件编制索引 + */ + static void indexDoc(IndexWriter writer, Path file, long lastModified) throws IOException { + try (InputStream stream = Files.newInputStream(file)) { + // 创建一个新的的文档 + Document doc = new Document(); + + // 添加文件的路径作为一个名为 "path "的字段。 使用一个 + // 字段是可以被索引的(即可以搜索),但不要将字段标记为独立的词,也不要将词频索引 + // 变成独立的字段,并且不对术语频率进行索引,或位置信息 + Field pathField = new StringField("path", file.toString(), Field.Store.YES); + doc.add(pathField); + + // 将文件的最后修改日期添加到一个名为 "modified "的字段中 + // 使用一个有索引的LongPoint(即可以有效地用PointRangeQuery过滤) + // 这个索引的分辨率为毫秒级,这往往过于精细 + // 你可以创建一个基于以下数据的数字 + // 年/月/日/小时/分钟/秒,并降低你所需要的分辨率 + // 例如,长值2021021714意味着 2021年2月17日,下午2-3点 + doc.add(new LongPoint("modified", lastModified)); + + // 将文件的内容添加到一个名为 "contents" 的字段中 + // 指定一个阅读器,以便文件的文本被标记和索引,但不存储 + // 注意,FileReader希望文件是UTF-8编码的 + // 如果不是这样,搜索特殊字符将失败 + doc.add(new TextField("contents", new BufferedReader(new InputStreamReader(stream, StandardCharsets.UTF_8)))); + + if (writer.getConfig().getOpenMode() == OpenMode.CREATE) { + // 新的索引,所以我们只需添加文件 + System.out.println("adding " + file); + writer.addDocument(doc); + } else { + // 现有的索引(这个文件的一个旧的副本可能已经被索引了), + // 所以我们使用updateDocument来代替旧的索引, + // 如果存在的话,匹配准确的路径。 + System.out.println("updating " + file); + writer.updateDocument(new Term("path", file.toString()), doc); + } + } + } +} diff --git a/src/test/java/com/jmal/clouddisk/lucene/LargeExcelSaxReader.java b/src/test/java/com/jmal/clouddisk/lucene/LargeExcelSaxReader.java new file mode 100644 index 0000000..2546c2f --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/lucene/LargeExcelSaxReader.java @@ -0,0 +1,62 @@ +package com.jmal.clouddisk.lucene; + +import org.apache.poi.ooxml.util.SAXHelper; +import org.apache.poi.openxml4j.opc.OPCPackage; +import org.apache.poi.ss.usermodel.DataFormatter; +import org.apache.poi.xssf.eventusermodel.ReadOnlySharedStringsTable; +import org.apache.poi.xssf.eventusermodel.XSSFReader; +import org.apache.poi.xssf.eventusermodel.XSSFSheetXMLHandler; +import org.apache.poi.xssf.usermodel.XSSFComment; +import org.xml.sax.InputSource; +import org.xml.sax.XMLReader; + +import java.io.InputStream; + +public class LargeExcelSaxReader { + + public static void main(String[] args) throws Exception { + try (OPCPackage opcPackage = OPCPackage.open("/Users/jmal/Downloads/欣薇尔工厂-数据报表 (4).xlsx")) { + ReadOnlySharedStringsTable strings = new ReadOnlySharedStringsTable(opcPackage); + XSSFReader xssfReader = new XSSFReader(opcPackage); + + XSSFSheetXMLHandler.SheetContentsHandler sheetHandler = new SheetHandler(); + XSSFSheetXMLHandler handler = new XSSFSheetXMLHandler( + xssfReader.getStylesTable(), null, strings, sheetHandler, new DataFormatter(), false); + + XMLReader parser = SAXHelper.newXMLReader(); + parser.setContentHandler(handler); + + XSSFReader.SheetIterator sheets = (XSSFReader.SheetIterator) xssfReader.getSheetsData(); + while (sheets.hasNext()) { + try (InputStream stream = sheets.next()) { + String sheetName = sheets.getSheetName(); + System.out.println("Processing sheet:" + sheetName); + InputSource sheetSource = new InputSource(stream); + parser.parse(sheetSource); + } + } + } + } + + private static class SheetHandler implements XSSFSheetXMLHandler.SheetContentsHandler { + @Override + public void startRow(int rowNum) { + System.out.println("rowNum: " + rowNum); + } + + @Override + public void endRow(int rowNum) { + + } + + @Override + public void cell(String cellReference, String formattedValue, XSSFComment comment) { + System.out.println("Cell Value: " + formattedValue); + } + + @Override + public void headerFooter(String text, boolean isHeader, String tagName) { + + } + } +} diff --git a/src/test/java/com/jmal/clouddisk/lucene/ReadExcel.java b/src/test/java/com/jmal/clouddisk/lucene/ReadExcel.java new file mode 100644 index 0000000..a53ad58 --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/lucene/ReadExcel.java @@ -0,0 +1,30 @@ +package com.jmal.clouddisk.lucene; + +import org.apache.poi.ss.usermodel.Cell; +import org.apache.poi.ss.usermodel.Row; +import org.apache.poi.xssf.usermodel.XSSFSheet; +import org.apache.poi.xssf.usermodel.XSSFWorkbook; + +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; + +public class ReadExcel { + public static void main(String[] args) { + try { + FileInputStream fis = new FileInputStream(new File("/Users/jmal/Downloads/数据报表 (3).xlsx")); + XSSFWorkbook workbook = new XSSFWorkbook(fis); + XSSFSheet sheet = workbook.getSheetAt(0); + for (Row row : sheet) { + for (Cell cell : row) { + String cellValue = cell.toString(); + System.out.println("Cell Value: " + cellValue); + } + } + fis.close(); + workbook.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } +} diff --git a/src/test/java/com/jmal/clouddisk/lucene/ReadPDFTest.java b/src/test/java/com/jmal/clouddisk/lucene/ReadPDFTest.java new file mode 100644 index 0000000..5f92e5e --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/lucene/ReadPDFTest.java @@ -0,0 +1,52 @@ +package com.jmal.clouddisk.lucene; + +import com.jmal.clouddisk.util.TesseractUtil; +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; + +import java.io.File; +import java.io.StringWriter; + +import static org.junit.jupiter.api.Assertions.*; + +@SpringBootTest +public class ReadPDFTest { + + @Autowired + private ReadContentService readContentService; + + @Test + public void testImagePDF() { + + // dev环境下设置tesseract的lib路径 + TesseractUtil.setTesseractLibPath(); + + File file = new File("/Users/jmal/Downloads/1hyflld.pdf"); + assertNotNull(file, "File should not be null"); + assertTrue(file.exists(), "File should exist"); + + StringWriter writer = new StringWriter(); + readContentService.readPdfContent(file, null, writer); + assertNotNull(writer.toString(), "Content should not be null"); + assertFalse(writer.toString().isEmpty(), "Content should not be empty"); + + // Assuming you expect some specific content + // assertTrue(content.contains("Expected Content"), "Content should contain expected text"); + } + + @Test + public void testTextPDF() { + + File file = new File("/Users/jmal/Downloads/h11ssl-nc.pdf"); + assertNotNull(file, "File should not be null"); + assertTrue(file.exists(), "File should exist"); + StringWriter writer = new StringWriter(); + readContentService.readPdfContent(file, null, writer); + assertNotNull(writer.toString(), "Content should not be null"); + assertFalse(writer.toString().isEmpty(), "Content should not be empty"); + + // Assuming you expect some specific content + // assertTrue(content.contains("Expected Content"), "Content should contain expected text"); + } +} diff --git a/src/test/java/com/jmal/clouddisk/lucene/ReadPPTX.java b/src/test/java/com/jmal/clouddisk/lucene/ReadPPTX.java new file mode 100644 index 0000000..3d840c3 --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/lucene/ReadPPTX.java @@ -0,0 +1,31 @@ +package com.jmal.clouddisk.lucene; + +import org.apache.poi.xslf.usermodel.XMLSlideShow; +import org.apache.poi.xslf.usermodel.XSLFShape; +import org.apache.poi.xslf.usermodel.XSLFSlide; +import org.apache.poi.xslf.usermodel.XSLFTextShape; + +import java.io.FileInputStream; +import java.io.IOException; + +public class ReadPPTX { + public static void main(String[] args) { + try { + FileInputStream fis = new FileInputStream("/Users/jmal/Downloads/未命名文件.pptx"); + XMLSlideShow ppt = new XMLSlideShow(fis); + + for (XSLFSlide slide : ppt.getSlides()) { + for (XSLFShape shape : slide.getShapes()) { + if (shape instanceof XSLFTextShape textShape) { + System.out.println(textShape.getText()); + } + } + } + + fis.close(); + ppt.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } +} diff --git a/src/test/java/com/jmal/clouddisk/lucene/ReadWord.java b/src/test/java/com/jmal/clouddisk/lucene/ReadWord.java new file mode 100644 index 0000000..9781057 --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/lucene/ReadWord.java @@ -0,0 +1,26 @@ +package com.jmal.clouddisk.lucene; + +import org.apache.poi.xwpf.usermodel.XWPFDocument; +import org.apache.poi.xwpf.usermodel.XWPFParagraph; + +import java.io.FileInputStream; +import java.io.IOException; +import java.util.List; + +public class ReadWord { + public static void main(String[] args) { + try { + FileInputStream fis = new FileInputStream("/Users/jmal/Downloads/2023.4.17_副本.docx"); + XWPFDocument document = new XWPFDocument(fis); + List paragraphs = document.getParagraphs(); + + for (XWPFParagraph para : paragraphs) { + System.out.println(para.getText()); + } + fis.close(); + document.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } +} diff --git a/src/test/java/com/jmal/clouddisk/lucene/SheetHandler.java b/src/test/java/com/jmal/clouddisk/lucene/SheetHandler.java new file mode 100644 index 0000000..a480c8f --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/lucene/SheetHandler.java @@ -0,0 +1,19 @@ +package com.jmal.clouddisk.lucene; + +import org.apache.poi.xssf.eventusermodel.XSSFSheetXMLHandler; +import org.apache.poi.xssf.usermodel.XSSFComment; + +class SheetHandler implements XSSFSheetXMLHandler.SheetContentsHandler { + + @Override + public void startRow(int i) { + } + + @Override + public void endRow(int i) { + } + + @Override + public void cell(String s, String s1, XSSFComment xssfComment) { + } +} diff --git a/src/test/java/com/jmal/clouddisk/mongodb/RegexTest.java b/src/test/java/com/jmal/clouddisk/mongodb/RegexTest.java new file mode 100644 index 0000000..10ff997 --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/mongodb/RegexTest.java @@ -0,0 +1,65 @@ +package com.jmal.clouddisk.mongodb; + +import cn.hutool.core.date.TimeInterval; +import cn.hutool.core.lang.Console; +import com.jmal.clouddisk.service.Constants; +import com.mongodb.client.AggregateIterable; +import com.mongodb.client.MongoCursor; +import org.bson.Document; +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.data.mongodb.MongoDatabaseFactory; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.SimpleMongoClientDatabaseFactory; + +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +import static org.junit.jupiter.api.Assertions.assertNotNull; + +/** + * @author jmal + * @Description 查找文件的父级目录 + * @date 2023/3/8 15:27 + */ +@SpringBootTest +class RegexTest { + MongoTemplate mongoTemplate; + + @Test + void regex() { + MongoDatabaseFactory mongoDatabaseFactory = new SimpleMongoClientDatabaseFactory("mongodb://localhost:27017/jmalcloud"); + mongoTemplate = new MongoTemplate(mongoDatabaseFactory); + TimeInterval interval = new TimeInterval(); + Path path = Paths.get("/合并文件测试/mall-admin-web/node_modules/brorand/"); + + StringBuilder pathStr = new StringBuilder("/"); + List documentList = new ArrayList<>(path.getNameCount()); + for (int i = 0; i < path.getNameCount(); i++) { + String filename = path.getName(i).toString(); + if (i > 0) { + pathStr.append("/"); + } + Document document = new Document("path", pathStr.toString()).append("name", filename); + documentList.add(document); + pathStr.append(filename); + } + if (documentList.isEmpty()) { + return; + } + List list = Arrays.asList(new Document("$match", new Document("$or", documentList)), new Document("$match", new Document(Constants.SHARE_BASE, true))); + AggregateIterable result = mongoTemplate.getCollection("fileDocument").aggregate(list); + Document document = null; + try (MongoCursor mongoCursor = result.iterator()) { + while (mongoCursor.hasNext()) { + document = mongoCursor.next(); + } + } + Console.log("document: ", document); + Console.log("查询耗时: {}ms", interval.interval()); + assertNotNull(document, "The value should not null"); + } +} diff --git a/src/test/java/com/jmal/clouddisk/oss/AliyunOSSTest.java b/src/test/java/com/jmal/clouddisk/oss/AliyunOSSTest.java new file mode 100644 index 0000000..1c51230 --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/oss/AliyunOSSTest.java @@ -0,0 +1,80 @@ +package com.jmal.clouddisk.oss; + +import com.aliyun.oss.ClientException; +import com.aliyun.oss.OSS; +import com.aliyun.oss.OSSClientBuilder; +import com.aliyun.oss.OSSException; +import com.aliyun.oss.model.ListObjectsRequest; +import com.aliyun.oss.model.OSSObjectSummary; +import com.aliyun.oss.model.ObjectListing; +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +/** + * @author jmal + * @Description AliyunOSSTest + * @date 2023/3/27 17:50 + */ +@SpringBootTest +class AliyunOSSTest { + + private static String endpoint = "https://oss-cn-guangzhou.aliyuncs.com"; + private static final String accessKeyId = ""; + private static final String accessKeySecret = ""; + private static final String bucketName = "jmalcloud"; + + @Test + void listFile(){ + + // 创建OSSClient实例。 + OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); + + try { + // 构造ListObjectsRequest请求。 + ListObjectsRequest listObjectsRequest = new ListObjectsRequest(bucketName); + + // 设置正斜线(/)为文件夹的分隔符。 + listObjectsRequest.setDelimiter("/"); + + // 列出fun目录下的所有文件和文件夹。 + listObjectsRequest.setPrefix("jmalcloud/abc/"); + + ObjectListing listing = ossClient.listObjects(listObjectsRequest); + + // 遍历所有文件。 + System.out.println("Objects:"); + // objectSummaries的列表中给出的是fun目录下的文件。 + for (OSSObjectSummary objectSummary : listing.getObjectSummaries()) { + System.out.println(objectSummary.getKey()); + } + + // 遍历所有commonPrefix。 + System.out.println("\nCommonPrefixes:"); + // commonPrefixs列表中显示的是fun目录下的所有子文件夹。由于fun/movie/001.avi和fun/movie/007.avi属于fun文件夹下的movie目录,因此这两个文件未在列表中。 + for (String commonPrefix : listing.getCommonPrefixes()) { + System.out.println(commonPrefix); + } + } catch (OSSException oe) { + System.out.println(""" + Caught an OSSException, which means your request made it to OSS, \ + but was rejected with an error response for some reason.\ + """); + System.out.println("Error Message:" + oe.getErrorMessage()); + System.out.println("Error Code:" + oe.getErrorCode()); + System.out.println("Request ID:" + oe.getRequestId()); + System.out.println("Host ID:" + oe.getHostId()); + } catch (ClientException ce) { + System.out.println(""" + Caught an ClientException, which means the client encountered \ + a serious internal problem while trying to communicate with OSS, \ + such as not being able to access the network.\ + """); + System.out.println("Error Message:" + ce.getMessage()); + } finally { + if (ossClient != null) { + ossClient.shutdown(); + } + } + } + +} diff --git a/src/test/java/com/jmal/clouddisk/oss/TencentOSSTest.java b/src/test/java/com/jmal/clouddisk/oss/TencentOSSTest.java new file mode 100644 index 0000000..2b7d618 --- /dev/null +++ b/src/test/java/com/jmal/clouddisk/oss/TencentOSSTest.java @@ -0,0 +1,73 @@ +package com.jmal.clouddisk.oss; + +import com.qcloud.cos.COSClient; +import com.qcloud.cos.ClientConfig; +import com.qcloud.cos.auth.BasicCOSCredentials; +import com.qcloud.cos.auth.COSCredentials; +import com.qcloud.cos.exception.CosClientException; +import com.qcloud.cos.exception.CosServiceException; +import com.qcloud.cos.http.HttpProtocol; +import com.qcloud.cos.model.ListObjectsRequest; +import com.qcloud.cos.model.ObjectListing; +import com.qcloud.cos.region.Region; +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + + +/** + * @author jmal + * @Description TencentOSSTest + * @date 2023/3/27 17:50 + */ +@SpringBootTest +class TencentOSSTest { + + @Test + void listFile() { + + // 1 初始化用户身份信息(secretId, secretKey)。 + // SECRETID 和 SECRETKEY 请登录访问管理控制台 https://console.cloud.tencent.com/cam/capi 进行查看和管理 + String secretId = System.getenv("TENCENT_OSS_SECRET_ID");//用户的 SecretId,建议使用子账号密钥,授权遵循最小权限指引,降低使用风险。子账号密钥获取可参见 https://cloud.tencent.com/document/product/598/37140 + String secretKey = System.getenv("TENCENT_OSS_SECRET_KEY");//用户的 SecretKey,建议使用子账号密钥,授权遵循最小权限指引,降低使用风险。子账号密钥获取可参见 https://cloud.tencent.com/document/product/598/37140 + COSCredentials cred = new BasicCOSCredentials(secretId, secretKey); + // 2 设置 bucket 的地域, COS 地域的简称请参见 https://cloud.tencent.com/document/product/436/6224 + // clientConfig 中包含了设置 region, https(默认 http), 超时, 代理等 set 方法, 使用可参见源码或者常见问题 Java SDK 部分。 + Region region = new Region("ap-guangzhou"); + ClientConfig clientConfig = new ClientConfig(region); + // 这里建议设置使用 https 协议 + // 从 5.6.54 版本开始,默认使用了 https + clientConfig.setHttpProtocol(HttpProtocol.https); + // 3 生成 cos 客户端。 + COSClient cosClient = new COSClient(cred, clientConfig); + + + // Bucket 的命名格式为 BucketName-APPID ,此处填写的存储桶名称必须为此格式 + String bucketName = "test-1303879235"; + ListObjectsRequest listObjectsRequest = new ListObjectsRequest(); + // 设置 bucket 名称 + listObjectsRequest.setBucketName(bucketName); + // prefix 表示列出的 object 的 key 以 prefix 开始 + listObjectsRequest.setPrefix("asdf/"); + // deliter 表示分隔符, 设置为/表示列出当前目录下的 object, 设置为空表示列出所有的 object + listObjectsRequest.setDelimiter("/"); + // 设置最大遍历出多少个对象, 一次 listobject 最大支持1000 + listObjectsRequest.setMaxKeys(1000); + ObjectListing objectListing = null; + do { + try { + objectListing = cosClient.listObjects(listObjectsRequest); + } catch (CosServiceException e) { + e.printStackTrace(); + return; + } catch (CosClientException e) { + e.printStackTrace(); + return; + } + + String nextMarker = objectListing.getNextMarker(); + listObjectsRequest.setMarker(nextMarker); + } while (objectListing.isTruncated()); + + } + +} diff --git a/tess4j/datapath/chi_sim.traineddata b/tess4j/datapath/chi_sim.traineddata new file mode 100644 index 0000000000000000000000000000000000000000..388bac276d033d06e5ed5ba7a7ad14ae58f97dab GIT binary patch literal 2469156 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

    kx|*q6dxLwNp3=5z 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

    d+GJX%YFBJc4LuEXD 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

    t_tOG`vY1};bymoj+EVUSulHPa3dyXcyTdNO; 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

    yGeos#_@{fjjl(hZ;6RfE2_|E;*h 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

    J@!0j{j3dzUaH2{J{eT}p0xALTe!>> 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%0AT;WyW{a6 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�L0>iUT)AUEYx&P(3=%Ug#&uTtapHmMhF}-s-+OUR13c zBI->X-zN_IN0JMAM^|xZd128{AwbsK15Y2qQMBs^SF1k+_OI7W<*y~@G$)ayD)XGV zFbLj3_jFhN^K*r@Y&wf?>DrQ-cEQINfy!06=@(P=9`u|3jn6#lY;$UcsxKsV>QUpx zchuJ+GbbrM)|)IIZVzg73+*fjdQPDH zpmFJy{sjECcyMYco0JUT<}AVCV9Vzb5AsqVHt{4O4Xl|gkTg}%87D8Ny@|)C>v6r8 zBjy3UsrohqQl7hYqq@p5`A64~(5=#ou>st3^W3@TZ2VAFrT%5?2bw|Yu_JU&zjK_M z&;_l}#M_Svc+x%3R{k^;V7J$Y4g3az=D$imutaNQR#MS#JN8fK3o|x@N^1Q2&$~V{ zZ5Z1+uq0dNdLVv3vu=KiIMQfZgD>E4V>HO-5nR>@{eEkC+NHY9BASkAU`xw;t0Go}rN}qW|jCiI_ z(&8?1Y`3{sIlgwCyO7GWRkd3Roq9;`OdU#pbrbLJJR2KEm2)07MXO}l#kv`R5sRGnusp8BibHDJzSRO2h^i;8+(3oPTzO- zXp5XQW|js=ot~`ZBIR1{bruKg+l79*s#8SwEkGvGj;2MMyW>>p?_Ro| zMob!nTo}3aZ{SQ(EjKdo67i2y`eKqFMlTcgHYL?{yG8eGj*35-1woZEtYQF~~uw7|)gk<9t z3ITgWSQK+!8?Kv_I-(GtN6F#-s>))`mK2KJ1U7sedu57`tJ3;Db))gVXyN=>YctuD zooQwYOP#6-j}UUA@99>-qCd7_kVIszjK1x*wnV z5_w2Ct8cJ6Hx@)Kq=bf4)^_Ki`Uo&VvNfnhG>hPR-dfo0G?{c2)7fQR>&G99Y}$om z-`*Cz2$?fn(d0r;RP)BBW`6|FsF`Y8-V_0P&!{Bzsx4F4IM;XNwzo>1SKOC%fmsBD8U>hemdQ%IQq_(VYmBL`5~Z`d5{j5&GV3k$70aG$;BU3Xw^g!vQG%8O zrIRtWIPd?W-toPfFZ}e5T=_&NIsa#q`tqphdzT!acx@+$?~N^l^^`xgE#2z)rF^!> zbebc6OG8Pm=R$NA3yKv01uWF%s6tD2p-!8uWXv14C$;i+V~6~mu!opO17EW06VZqL zTqJ^C1SgUT^G>G@-W{EkO@V500jE>aTa^vTlPNI0SYG<7YEG$* zhdvXbuzN|1Q~_V;pX=2NYvKa9N*6Be|g8e;zAyAukiD7;}>{XZ$37$ zH(={Y3hmS0lbK58Ds^6R|E7I!_iMk5FOuSdlV$4q5G@tey7AGYfDL!Fxn|8b7FE2r$UM>Wzypv+|cnGhT&F5G*^^llNt&r zmtb2IQ-VsB)ZA0Hfk;zNks}&L7J?ij2oJPyG}MSINQa!l8OO5f4tjo|gVvKYi%HGI zf^V;El2%Nrn!asO#~IH~LR(3tXV8p<-fQ(plhJjuOCm!mOozgEk`;xZpCiBM;DUdA zfZ!gpW(VO8XB&efm80W=%XcvFej8(eBkZj-ZE4m~@f=lS#-J_}n=cBdlp=Z6aO|6E z$HD6w%@gaCs4q>JWC{LC4n~b?sS>7p^_uE zyo7S9RkHWz%RNZG-<(#siEtxRs@8)6${fRAdsBKO`pI)0M{Uq9<(WYO)O+&0JoBv< zR8?$uHN-rV1;5nds&gPAGM&s!K+68OTc@V^4zE^yopDODt`~%G99G=yGN8`(pBRtu-Lv*x}~1KNSzu;4#uuB zypmQas3Pnf-_)AC)d9V-8H{w~*}l66dmRK37R&1Y> zepP1pG^rW)7s%t%5J`1peA01tAGQ{e=8w6{>g=y$Kpgb9SODCXl?{*KQA?Y6(31-8 zsIlq5C9B*QZ`ep5cFqq}ZTHs&)AbhPP2ltOwf`#~7qEMrB6~?+ zw!R?0Ql`SCQ$5XOEJ8OMwMX|OvO&NgB$u3$2Ip4>^(Pd87U8n z)N}chFjD{enQYRp`aeNaZ<2rP^e&YxF<1Xw+*=uFrb_tV@OeqvvFic~ydm9IPniT2 zBY#PL_v-!N5vDv)kgGL%*HB^1pLM9$le35;(`XFjKW9zE)dbv71D631+4=(Fx@R0! z-n0Xq%L8Zr)SyT}3$idGD3tjuU5rqu=y?BR=B6N#0$wK~V7< zxnda-`ixiY>vo#&o*?Y8F4CGC-9J*cjUmyPX>4hQ<>O5;G_ih}FYT9KD*Bi$x1L_- zv^x>hRm7lVw+%X_*Dg;bWtp!VH8QPBe4B^mh{)`5XPdgzsH9xey5*!_IjEXeH0C7o zcFZtlv@7a;rO%;l(*rg35H^grY8gWb2iXC#Gtz`GALXHtBhMzgJQ; zc~#3@$w1CuvI3dK$|Wq}ZUvz#8F4Z~%ApiNHa)Thkme2xhRt1pQ{jv#8Bl?kOx}*} za@`0k?@7o+hdt<|2TD?Kk)f}{_#lzTQ&mXQ?sBB+Ib5ruQecuK>O)G+0K)XKY`Z%t z)CESU8cXf+TC36IF#*)*2$4P@lCc#AzMKaei$xKgd_w%0>H-p93+OGVWkdZG-O;ht z29KBWtQZ-IElCkKB#6w^o+K-$^t(nA+<{0ASYdhIVH0qwI98Ukg7Q`a?V?AXhB1Yq zWp0-4R;y&TY0Z(^xFUsyWMEaO5E5C-EHg2pN4{61HL9Zc_9$r_mgFhPSwewToKs+2 z9NN1bEe~j=f+SH^B93e`2aydj(O~LOvst9X6N&~nVsM2Kgao*Pu9w(+r&vp(yt7RT zT@4+VYcE42&<%00C8w&(F_59r#uG$fsto}Vtq(GVyc?{6#ge3**A44dL}OXC=#(oN zaUkZ+y*gH?(m2S{r1t9^V{Nr5Mr0+TY@N-S^!X=%6xKkp&UTU3tB=%FEeltB(k9!^ z6f%ll!Z?(L-pEM$QPRD{FBxNkB-`GT&$k=KR)(h)f?2_AE0Lh^_HMs#lC$Rw*^z$aeE!QqNDa*+2uvZ#4+>{;GQm$k^Sbz(df zuaP}WS+I?S#|=?K>Jq~Ju)A?&T#L8&&|`lH89hWM_$%mkFV~{3NcJo@dcPTK*%A$r zCaoTsJB(KL{-j(yDauYKXhJ6MJa!P>v?Fn>dG_ulug<1TS|%=OP49tq1qw=lSXO8M za$$!1$a7-#<~FF_8Q&RecCp2=+*QMH_QzLgi)&B&3QjQXr?03;*W8l7e(q#o zy`k3{10CW_PgC1Aq||%DhM~=K^8LPydt!1}WVUvXfiw`V1JEG@?yz?smYRoTbiao7 zyG>3&4>b^#WzPh(cUpBNaQY)I+wN>H0w#$oJr&6k|HMxORBipCcPbl&H72VP5}A-y zBQ3oRPQBRb&lb24RQOloFC4r+^}GIbFuQXP*LH`##Kw#%xU#TP-e|8TMu$vwsUP(dFdn|Rhu`8o zpH`=I(uFUFy({ZfK2(!){cD>=C-@w@%*_oJJ^{8*u@c&*TRQ}xwE>ykeRQBXz@2)4 z1Q?`1-rg(LhNczV<1>7KH+595r+3e^X3a%$SG{@K)$=QkC9plY&XwZX<*~KS*#HCJ z#axbRNDO4Qa9Gd7ADfzgQvp=5{OYTRTa~nvx-NS^y{W$(Cg+m;!7AHnz5Ww$;5*Jb zBQuKY{c1Qz7PzMPh`p#xP{gZ!0NYWLRz)yj8rg@oFO^g+rtDUa^es7{FqVraM5Z&8TJ+OGImUv#B1>#@BuE@20M;iUihxuQ{Mm$5~ zZ=CyNvS>}@q!c^eU%g+^U!&9xUR`u{tiSlht#6{H<0;N6f9?Dxzc1V}PQo;E7i|rl+WNW=-_2j~RcOgd>+dGAa zzEpeLHPEGU&&A7ZUKiZzVxcj(N$nNqk4r0|d{*wZx1HY?iKJgHxyHPr2lk}0>4$P2 z^UOu*BiZI$SSo8sOKh<&V126w!%8#`zx1ot;h*+K7 z+~XXM&iJVY3p_uSuRDiz73Sd==iLLt^~LCJJhmZH7JFaG!zv-lzq@agEW#r7I~w(6 z;F-rtTpe@!SEE_ulfK}^g8|lRC|44td)l2Bb}WU{KWJn*c|rJjcS(`l%vWEQkdB|> zY#ix4QAAgRqQNv7-CMo?CxL%y*fnb3eOVM{Mno3f*fcI{=~*Edt$?h znfjAghJGHoqCWnciUJ()1OrOF*cHYGV`EThHY3v4)P_zf=c~vx^HbT3N?HNpM;g^= zX=_9w6aQsmVyAa#ISeDF02o8N2Y;b%Sm1RlSavlQe1rRAf7UE@OTSF!ThAUdEPz(=x9pPc3%%#=l{L%V z^)#@hP4T_TBX7lQs6nR4x?3467U9-o86OzU>1k<{=fqK`Rv8~g*d5Ku_mEItzh_WB zffUhY2=(Wn?cGFQo;C9R_9yBr1HtQw5}hB&oLT*yOtg}chlN$w zwOPVRe4MPzI?m%?6?5P0CJcpB_0p;1vPeXo%Gc_JdAOrU$ctK2Dd#YLuO1a+t_8Vh zCT)zThQ0hkA7WpH#f}qdSksU1pge?vp(C$>8OVml70Xg+*MGwET;y2oqmumJmv=mp zn@7qr%H8J~aaweJC^|#68xnolCSK#J$G!fC&xLtKFhprB+CWP*_9zD=p$QQLUtD`1|J=$K&RpRGMgE{t7uRTO` z8|zdoQ!tGz;%52bt6Q!0Hm|I%+7O^un>nAfX~PLQxxD*2&xOzEb(oWCH7bz*k@29f z5kX}#zou(7Z{*bKW-eqJ)V?1KsINhGGOTI01k&3?GmtjAIsBhmcTm;h)AYqmhpY6k zu?Nya{-UgvtPb~`ScTU|up3rn>LdA=*!-nR_AI>^J}Zp8UTbrl>J5>I_%1=!5m_0C|;%^|Li8*ePus6#JFk z4SQknq&xU``S+sz8>m3jPge}@A7ST2Q^vbju7iQ^)H{r9r}l22)hS*n?rNr<&n*bmrZeKG zC#oj7Gv}~JR{It2T~d$ycBQne7}}269?*H-{?v7l`bBqwt>qWQh8^UeoOrWs=&r}aF;&WAobc8kXMD?-k4yGL034do-~>!F^|4n3rg_cm1V^fo138x z+jq6kjz6&i$9=knZge zh2vXqF=;eWO>7l8$D!MU)cPxLC2{>f=9D1*Xu4L^j1`ly=&{>3U5|eJ{$*yGapbQb znXJx!*Tch2EI*Cy%h<2{I8Q{P*ajH(QknIk2$SE_C~0WMnrb_v_w7# zAm2y3ze>;unMlOq_~h8|LE)^Z$J1_Y7c}+FcC)#>W!wo)dvlR}omJS&U_C1@tjtVt z&h|y(*U)2fD%4T&%A%2~l__1M7Xi|!8yP5MB+4fxWwSrp=+z22o4nCCVkoH`v6^gT zAdrviq1mHPk%lh2M`_&C?*aKsMwbq9M}m;IHPhD}O+p<{vQm|=0I*G!XBScGkCInv zk?#g_w5s>827-g97adXc+$Q+b|3kGC0S99Bf9C36{`P7nophe7touLgj)kH&UHnP= zj(vq#ku!1myrM8Z=j%I&spJjiQ3vJrwRNeAk+k8N*i=DrpgE%V&GO6L-7Y#joRW6R zYDL?!y;j%Wb+_)nEHnDm)bl+<^xu1XPwLATv&Ypau`G+gjgm?zcB^FZ-D}FF7eRnI+X(T!bV%0fx z(~lcHStY3jo9txk;h{)2>aSs3v1fgzzte+7n_QXRmNv#@Nh#PM^y3Ujq= zAM<|j7e^IMXR&HfipTzRxEwMREG_#7JfefvbLdHPwn&`}=$8%KMS zzPqY@@q7%bqJ4>)R++Sam!-xgWVXZ0=aSxPigG9{1 z^D^-c4%TB^M8_Ie1JZS@U^CUB>fLU)o7BN-FoIiXQY<@oy5aUI1)>)<@F@tcE9Gy3 zy`HqHM2abrQ8U_{g%=}F)Rw#65}nB(06?278l;A5Ka2A?0(2osSElG`;uXG&^G0cd zkmqGxrbP(`n4z0p9Pg>bM_eZx7Z?TOb~SqhI&h6R=o&PWLP}%>4hsu z3bOaQEtyAy(iAJILG%O72DI~69@RML4EmV;nJ zL2EH%g~Ln;tAIfj+)-kpqZ>-4jc}VRqBcygFN+bkwZSvBzzGaSnmqs#YgKhkjM6F@ z@%7NGOp=4USy9v$>GcTkmjEKJ0)agq>q4!bxPz0eG4cqAakxqaX_Uk`Q;&2>s8xm8 ztfbflDu`Spm1XLBSk5%@qXvRuq9>4MlmLkV1kLZqudgSu1p)JZvm0Ca)_Azi5kdykBfl6lEd8Y>K zMOnTB9Ei&iD51o}tVQpxqHiqI0Yy)H$FyBD0o|Q3+2@;Ti1DMhjo|^{wVLrc#YVQ2 z`5YWCQ7FOzZ+ZF_^6@eIj4WX^%Jr#XoQi*&`K6^HTL~GoiPq^K8%^JEHqgZ(&Ue4) z^Z}B>4Y9hj!^luj8*sNl<26!>4>-i4S%0S@5|Ni9g#mt1$Xqa2Vi)S2Ij_Gn@_8n+ z9=f>K|J^#Wcw;nB+Agks(Pd)8{zx2)5BLWDrW%mqZX``pPppD7sFHU4)!7db;u z3VPPS<2NIiVz9)4w%P2E-lqNMN24z(%+=t7+ICRIe@`A6y;d^zndg$UKy<^}wsZ-+E+)arDe_pTych)=8Gc*qA>2< z9WObUOS$*y1HS%H+KeYIGU2avPmM8}x|a>@5A4fu-S8D5*Y)i}KyNkO_rV%Gw;joC zLnWX+9NKd?9f(2^CgxRv$%lj7kr>~oBC&Bg+dQe|==O%ntgTA1=}d*cz|l!`TDEd# zNm}OmFk@>hwU^bk$19#{SOb-Ph{{(9#r)b{%abCS9bNW0B9Q@bPmPxri9*?Ht|m?( zng-N2Fc26eRb^Ous`*#zaw>E<&T1w!{mDm)PTu+&&9n;EQuqtqrQ%Q#`qVnc*@(KR ztE79a|2W?(9=L9aYqlC3&V0Zg+8z@`Z)Pam365b8s&P_MT2+xE-ye?D4vKBQz5*^P zmMak_>zVPD6W`d-F8vW$B|a+Ip50B6uEFO;V-!}@zc8tL%ly*m z=|!nAwt?gnI!|&q(r;E+QV}JtY7ak^sh6x8Wy0HjAj3bjV#*>qMzDR`L zwb%LK$*$yHy0+R$8!uccrO#iZtWz%$xp2p#mdbvg+z$yBhni;9n{LPIPTjWM^ZsRX zWMH8zWgm8Up|UkfS|^UI_QufO-^MczORg{`i$hTSjaODbAJIgNr_7%6qY<=o_LI<# znU?Osol(hrfvy~`!_-z`YH5drLCSWuw2mH^1+)N=`$Mkg`)O+92V11cX=v*fE(!E;EH^QG*`NIZtj)Bp* zEDz0PrTk)V$Q*;$c!y=AC%rf?(^4**@x2*|^G@gDBV2aFHiGE$5%N_j5#AeGnVSvw zX=8hs+#4&KT4K06=PuQEI-)#St~uIst0IU!+Cq*l4*^iQUI(94rSc3)*Rp`s5y7Ld zvBsNJQZ^xtmhwDTgTZRG%k`Kn^kH@qmhwQn1VTnV9#?d#ZZ%k!b?8q@I#IGki>30E zU@q4eT(?vTX%s&aqh?xQRIp87Q@!jKYcC*1jsz163MDqY4`>T44!^aqdA=cz6EIs! zqft;MGe%mO2!Kh8`%6OG*!4=B5$>Wwj;Ty-+r1A zR#@y>L4uZ+^roz|vJ$?So;Gy3bu&n!52v1HPv>;%m793iyz3e^*krs5$fiTt7Ckv^ zLBXa?*UEXTIV08sAke}BXn!}s*)qev&d4P5L24qD9mRFFHb(@TBc0> z$X*mxY%xRaz}6~7WtdgBZCK(!34Qo~$&U#Ocba6t1LDWT2+YIVGf(+Bc{}6^+UArFBM!&6#G}SQAIG))7Ts-PKNf z-W|bucN;lpw6>zDOn@f8u}h-?>99UXb!BQ5ae6r4U6Z?wQM{87As5ZgwqY2)YlhR1dAld;FbM>qPSydeWT%#T6GB$Ip%d&r`!GEjOMhCwwf6)8kVl{ zd=pxIiIieCdJ$393%vYhrSP;>J8al-W{58H5PVe>cR1daW+eQf`nkme&`;6g4NdS(`bhc)b*)7VRY!pr}31v-nDR zvrZo$p4BZC%-{?WaaiF55R12pef1oeimGY3Pm?^+8)jFG(uclpJsUuQ{Sk{PGZ@^c zX%khP>@^l4X=hWs?DNa+$|BU$tER8&!=DTw8|quT9fZ^+^YoLAL{Dtrl>3KLp0x~F zmuJB8sebKrmV-GTf>uJ zkb2~w%qC_TUGWXhWgPJ3Oyl=Wta>B-0`Iwzqt=Ug;EzG)(_dCm?V)7suYwf~>k7C& zoKsQu3)iM737xtzkrL<48qtaC@8o!eg^wv5G22cWDSp5kkL6?0nT3vqv~gA!t6i^( zN(TzA&^5hb&-KHU!c^$_wG~8v)?c<%RYUBSKyriGqihwN_+Z?cG#z|7;ugSYEvq(- z+bk2V3F0OSA!mmkodnyxhJ))RFrIUEt=&JcDoP0mNZ7{eczwcY&%@zLyCABqSncSE z{;+@H*Pr}-1@<6=^y-#U8!29lUO9D`kdNi1DecmjysIoqR)Q>0y8iSb6q9vzMpaS< zX#{PN>v_N_dAG@)K7jm9@hj#0Ugf5Pm7rQ$r!A+W04f>llL`MWKG2q_Yg!zTOEt%v zg5u^a%**`QK(3>x-h9@|R|}Db?z>T_ z8S@#^*3utPCswI1YjgBg@utxDS|$3$#ycs;uY ziRrp*Ql?gv_CGsrj7skA_jBB?ZxvJRmNF$ow9vg+ zqi5nlDErUgqE&gyu0U!%3;fOWtMAMdUEI|{KfZPSXQcrl{qfYT?ERkw=iOqDc-}oV zcFz-OB(Q#7HZv8R=a!AVT6;MRGF$#wSuq7q5j{0y%=$A06 zHjGln4&7k;N+>05%E=B?9aM_5X{5f?q$m-gO_sHAlHs{VHH%|mc~iO_Li#=Qpc6PR zag?6Zu9N|3qazVR6QwfU$C6(OQ6bZ7bf_kUH%jU#vf5DQhq|n+8H=c4YX#?1EYveg zXqs2+geu4@YSJzQ;Uc90Cfg`BgFxt{IP)VGV z{QrmWvZQ8Zt!}tY!MZ9Ad%ZoV$tc5Zjl$Bj;c)M#Ca$zaQybl8SJJJGv|*Ey)zd9G zBI7&WOiyS>c`YT)0WFBhW?Y1cjbtgZYi32~kfL4AC|1>le5L)R%$w7Uv?EfmDI~z2 z!~_&iG=W;Dl~N#B5nz>^+zb%C#%#4K71Bk0uX40fIOHb zNFGu&+FT;7K*Ta}xLKA(<7%#5rG3hW@WK}YKD^XWk1rj+N0N!~u>in@1LrcOn^SXi zYeh?cJTt`(sODf>=8s>ASk zI+SQHYJ}s8p?z|5UCY0xT|MkL?rAKBCt%PrZW{>ic_hDpzmEt;EK`vRdC6~ocGcKB z8;c)$AA0|OBeClM+?8Xnt@OySoAvz|eAbCK`l2t?5%63PfpqhDIu-awUv0sO{ha_E zl3aNt{{KWY?E1a7!F19Rul^;C5uKHj?eRbjsSq#2pyvg|%f!-!$4ld@%SGcwH! zoZo0CX)p@`>VL5Kd>j9^*tzHh`srhq&)lPkU?N6G28;pS#NWaFgOvP7m+WN#+}E2P z&X2{WxO1qGz;fD%2TdCKA|;B{9gpdB8;=b~CcDzuoiKfs5+|@ndC-@_VEH_k6?Po| zt!Vnvzf%&W?xm7n;&QqEj6MWTD()u#$HyAp*jD`NbE#_a;u|Ir9}c!k&Dg`a$pGhRXszO>&S7~e$mOWg!sd9h90`cx#V zwTgyOtUWjT-jmw<2c{0X47#X3KCDsR2r+71HzSc~5?cIGwmB#q@8%xUS$*=QpOdWb z>@19tR90v!$|T#r1AY8#VPJEIYv6Gf&RO12seY@ZeLb$Y_9w^w@u+3qihCyM$# z)sR7^PRU$xU$VY771%Yj>WxPHj}JUy7x99IU_YP+SGz1%Jw38 zt#myC(9&v5T_F-m@vBizpD{l=+0P|`eHO|P2roMct4DlFMF@H#Li&jI_BC_XKL!0 zROW4A_kNXZd&jO?vUoRCTi#l}jh*N}79*v`e#rDN+bzD7ty;dDzbUQ=32K#o!%5x2 zFG^H9?^{=*VEei%+UX5#8whp2sz}=jljhevxGmRa6}qF(PWMT_KyyvzzIE7pZpD^I z_mFMp1mz%dht%D@)EQM1bc6@C+t^9QR@Ft#1#LrHn(oRDoSwU1Jgs&HCsU8i{QRkp z#H^;iuiT{Rp4gyVqnBBcxF~0 zD0>yjzU%|tI+GZLy!~R}ef7PW!Oe%`MQfp0`#f7WrgVW_Q|^^d93Q+kADd1*;h(;= zoMp!6H=7n|k-}^n_;-iDp&lunIZ*0MU&FQ5mC~Z=nEL7^RVQxFwni-5#t9x4T&Dtb zkSI-+Al1qE4yL_ctz50s=yLAq)L92x>i8bL>gnvtJb_B+?LWUT#;W7zQOjRq*JEq@ z$ZuoJ?5BxAbkWniU;0B<-yDIToK_t2G1uOxvq63}huQm`(w^sp;L}D=i(<)=7Z^<+ z!QhRCTRo{;=rv--W#lu=SrBH&6@=9LW%XLFtx|O-k2!mi&2Lqgf3&YwPO^DDHT9kY z?>@hA6@aG-exZiP?jhgwYwU&Ex)Tg92n{noQz1!m|KNYF)stxG?=Cd^BE;LoD|f3g%~TR)eD|+xhkt{KvA9H!cN-WpV^SM*TI$p zjyGPEg%HIsk#pav*ACY(um$bkNq8G-eKnTB$Vr1DrXHPHgwsMznyK}g!gQb>nr&(d zzpLb*BIY&nyBjb0hk^d`361mAsj}tBswtKnXl6nLFhS*-epdhY!i&=CktkXoKH!)r zDPQxk#VhBzjo?IW@R2WTV$IZp{>l^Fq1^q<|CuLd*&6Dp9{ZZy+4L0(5<&R0`Lb08 z8T9vaO|}0Vdpj>1uKaXAsA@&6Vn^j~?D9C-H3CqMd3!>gJBJWsJ0AQsRm7yvnXt~5 zH)E*qTkEBoW%tqS)Ee-(k5Ya|LLvGz`@LJl31nLRZ>!1`cyDOoh9(sWN$DN;hxnjh z-pK$>27Y>7tg&RgEjo>!M$WGL6%O+=x`gL7`#`e^HV=%!9H_c+xHNY)U z5IK+%Yh+dXrK2=IVYPW2?nh7gMlg4$CqV6vw^=aunx&Q!sf9VjaHTSMr6rtpNFGJZ z&9mJBTaN!8@Ay&&DbR;;B1S78k@6 z@BY*8GGfWxF{qUG#))F>n*W^(xeJSZ0B9c&T!*FOnGW0+d~~n-XEu03KK(sszFv(P zc3oUivhH8E2Zt<#!L9K&xh6BYjz2!xic?& z(!!nE>}Wli2-}Wm((1pqW0LaWK$sJb20B{((qn=@6SqrNhlwolw|69a7!w+GZXHbkx%^Ufy1==L|#9<2|yIcT3sXTn;@aZmBG?+gCAQW`mRu z+-kkkOP|=YpI(e*Y8upbM_2BB6iu?S)LoO13`9TrRo&Nn6S2$=CNerd=M8AyYs+gQ z%dBO44QW?Wii+Vnd3b!Pzoyz?at8r>$fa^~X?|cus)ghk_Ly9?8)r!Fbn&po_@x}F z1?_a=uMee?p$gULs&}EFR)HQVDdlfqT0(@oXd$0C-?mQJWjL;Z!E(_NBUX}TGL{wL zc>1RQ|D)(VoE$mRJI%C6xJ-EOQ2+{sLV4G|y2xg;n`UT-V>Cvi(X3X|YFFAjtu8L& zj=_!CTV2H7ZNzA$(Q0Po#*-X!W=J;4wrp3`WxBjW0VsIyZ6?xQ-oJoAewp9ToZNRuMXJ|u0%+a}?pc&mo|?1D%bC}}~90SZ(KB7xjrwyQ%&a*I;aLz;um z-#I#DHmmV`q8jR8Nlg=wXWDAA&}4U1?U?#iC5^Fv#1wl*CEzt!4*yyhZonxu&b8#< zYb$lxk%rP&MUT|5h9C#gvo5aYXb}i`ezuGA$~8Tv78J69@~e8Wx-YG;psW=R@5%FC zD0!BCp{_PahKKK|8>Z4bMHkiSc2yCZt!VWc!Cip4Zcs4oKGvl4{hZK305nebRTHe8 z3ufeao}QEx;HGxoli~J|8m^&w#xm7J1e7-#9aC0Rs4SZ!z9Irtj14cy0g8^#tCbm8 zgA5h#K%IQ12E&k2A{2;J_PA)Y$`m(>3Pc__H5i?u_c52sgyo$IQS9>AKyrtt;#ncm zo>5;`v=a`W3`!(9q4jTup!V8$Fb4=p3$f+$p%iTPXcs2 z&OBqIAn|u8SJ3uAm#vt`3U#BrPxB_Okz-Ijt)mn9p>r6HSh-Iw93NGq=4s!<=eA}S zd)jU{a0VBn6<;lX_Vcsh#@I7Z>--*jidM9wI9`w1>NhN1GIy9FhpHLjY zJehd$_Zt7g3-@yU)-uQbsGfBt&&s6l=Ul3?AP+GM|3NZ29f-j{v+DwFg{hGk;-|S* zntE~Mx>aL^`cLKQqWaMJxbT4;d_QGy0W>iN@M}?&*1kv=5Bp*?fFh{i zi_yRBfrunkz8T#*wI9t5Y{!e%cQhOGZ*d%5I^#q2dZYO+DSS3wKnx%J^p1gXw58Ur z_Sc6n(gLiDo(v=TNauMRwfe^8uyWn~S0RXRB;Qg88^I7wS+&IFKX@QH&h&*)(1ku%N$uIDkePIIzBlz0N7E_@Ql;CA@tP= z)M)9tKYp?T%i>b9Gn$L;y^!|KSdyux-<25pE<|`{*5|XEJF^WKG44G=ubzRhUPB}6 zb+IGP$q-!^pD0z+>O-rY)2TNq>OtuWuOh`5n!5U#yyx=hr z3gwf)Gam~Fe)94DiEQJ`-NV(l^8(VsA||RNB75WXpgp! zHjU@MqZPaH9**7XQJ%4Z$x`_`8kQUtL9jgI{qZyFN@`Zg1QG^`K@14yl}B&bT&bgA z4r=1wn-Vo|2mRLZO2b^YV)i2kDT`Ae06Shle>*-wr2zP zifjCaq|430^&nKoM&seyb%o6pf67Qglr*>X9ltIIo`luUyf1m8oZ_2tO-tX72UuXx z25b&|`xjA>tE1L$K6}cDRb-{^XGpmB2wT$p-g@cYBc1n!VWePa(r)1c{Ke%D*!Oz8 z{ZD#%nBrhbx-+0#-PRYzF7YFx)Gobp}j!Y zx<}c_;xdtY92C5~m_93^?d@#&NIr>`e@SJ}wds`Oy9Xj8$Pd=ZY-u5ME|vvadaA(6 z!aT#sDg-rXF#JyUYku8GWe>j420heYOsWS}LXof5DvfLQoxsT$nUJQyem2}(Q1)bq zS5Au~_Uv_y{9a@E!t-E%?unh)21Z>NCn5|yCzs4?`~xc_MXD2;w&m@pqZNE6iyM?T zUX&UyJ3c!a;+*mKG}C`LtH`N`Pol@1>~q$YA8iAOLtj51;O7K&sqwoT>U966W|&JQ z6pA@3FJ5_AhrUNU2rVtb?DikG=2W}}hJ z(kE8?)4BVwe5>?DRX!{>FROy$vpvvjX@2frPbu1a8i~p9n9!F?G?sY$`op)&Ae&#~7MS^>b;@1b}R-Ik= zM!!!dMoY9Z>i*)AEWD=BR0%aA4CTE>WH^hQDx0X|-}%kC=?>cN=yr`q+t&-t?}2yOTH}H3^YQ`o)pB5DFg(T@4EGG@T*EP|&R@%Y zxUkw#GDXIrvYx)iv1Big513K3JPer=-#W|chs9^u(rQ5K%zuUc5k?YK6 zvtF|bMFx113e+{S$>9hh4!C)tCUkHVWt&xXmb^L_mGKT8pxbWLM;l8z-dziZUDmVD z2X$7M7>J6aOj63`wK0t|blqBvI@e5q6p**_Ri=Ic?#SXYvd(RTw5y(cI)JVZX|Kc$ zqUCNaR)?u=E6a)7X5D*(E*p&j?0XecvQn8z_*Fw67KatiO*`7~HdDPIo-&z9%4T2N z5-L%$kEd(4V`PT_Nl*VqW$IZ>5W{~VS8WgSYkHYO#8rNWhxHF(p@2M7tRoktvUz+P z`=wHP$phLOBZ>+G$~VnTC2UrMO*J)IMqfpY6rWQLbzRE#z-6Gf%tf%Q%jP*`GU{^~hWXvw z45xdSHj45rimy=5^YnhnZMWZ{xj|=aI2^G1^s}7*U(|#4|3AyJ&mN{04%^7Aa#*Qy z@@YvoT^usX)gz_VjHgwfS+EN84oNYzT$x$$BxQQkD(3xpwXte%SH#hp792Tk4+kSP z7vopZu1W9~(jtMA?$-EfRHF&ldBjlMACZJFa%^$%W)ZlrDh zOQgC%9#J2IotR5#l$&qfomUlUC-^_*r=Lx#KTdQllZ>J|b1L@Nx=PJkt==ltIV0_p z@!dZ_!=D*y^QMa56j6N1&@|KtuWSt!efZm&lcn-}?(kmq;1T)o57$$SODGYh@fqgJ z{*t5^gr2V?3@UDk_ZxGKeXPy@qPW-N{q7&FcfQcGhaQ{x*tVe=Mtx($m3sM&M(p5~ zMgkfp=wG6Syggi7Z@Y>H1%ldK_^JqQOLeAGSaTrr@B6|p_LcL9B8IQp;}Ywb zA~_~ituvFNw!4hpxbxT&9{9H7wCWs}X}RU2WCcG^N2_BEzR=VCmqmjE4cqpgX&{7ic&#s%%A4%b$cx2qbpNW-ru}vVu2t z#*MXaHD~tsK{XrN+resI*dmn)+xEx3*yK>zx?CU#{Cam{Oz19Y6sEs3ZWbm6XC=;3 zYf(^V3$m5a*Q+U;C;$IkBkq*m>Na0XyR-AHhef^Y$!#*neQ5EqU5<}*6AzuDo+%C}ewQ;og=;Y`xEg|zghyA(7Hm{F>`7eMz<3EFF8&)}lpjvnLG_6_2 zPRL8;a%BZj%K%?1Y<*#nG<%+v5X+TALP5iKvNv>E@UR19(j@4|obz+Ux>ga7y=fh) zJ`ovI#s+~$`R0A=S#K+@aU4$q`-tK{?lbDg?bRtF8*Eh$h)?-lDO7p1s;4#9H`noy zc7@WW!LKhyb!u4dQ!E;~HWlP8g|y^~nKB%gMYbLX5- zQSekYRsAVFNvk8-Q-dY=lYyz(>%A~mK2QuNEHAyTZNAH?kDZRQxX@qZC&F0O#CIk% zhz_nw3$}g})JL*b}P%@6bSvvt7lXXiMfNz&o_`%3)!A8Oaz@ z{KEWgWB=WYM+meGDu*On>TpPQsq<0$hklRFH;O4-{Bx_xYkuwcRAWD2(Yc4Tw=c@Z zevkm=BX(ixXTOhSMh;)$uZvEBd|oZdZN|><6n1$dq8uA18pwBZ>z?$uAGv+11cqv7 zPV`}Gb+k{7x)d`OzfCiMTX`&igklIl>T_U$Gwv0Yg_FJPKi2> zQ=o`;Z>YQz-@j2f$;s00QbRdXD{yN1b&Rv#I8t`kv`{ATGX77{v*?J^6+Y=!vRUHR zrmVPVI8!=_I8u=5Qv`G#7hNhXQj%PX3tKlpZ*IfTuoUg7XG&#L1NaQ2yn2(5FWq{+ zd(>f;$*VUHhmDV(8r$29&V~*K zG#p%VUH3(%nl%xwYQ@y`t=XuNE{WIiDQBfE{!WXtij=t^ZI+v-+YqeUZ}tbJ9#t`% z0u^gX-^Ajo=_yz?Q4sl!PN}Tag6+15ovKnn-Ax-CN6LdvD6ikl?0J30X{KFpF3@q_Tw8>31;2Zt4Xw7YY9vl4Sx6>x+C zhA6|CoB3a$yK`@4tnvLKU+~yhUN4f%YmSwD;g|B$#e)aAqX0d?o;usjhK}28^H~EW zZgO_|H{qtLlLtGR{ON?GzCEV;Ws}jy0vjv42o`Hgm4*C}8K~)9Rk|J>k_qHSuSkX? z_;4{aT7qw1KB<;++2Cju2%E2J?0s^hJ&fdDxd%)7qag;@XaQ#Ww#xPCI{U}a`uH84 zH>4$x6C3*}gJy|Dp3}%#boC=?`!d{B*FpYM?NWVcPRLjFXs5C1Q<~N*EUT6Iq|e9z zFVvkGYnl&a6pi2IgYD;9-O}iVn~D1x689SZ&&k})nqC9$3}af2_w(an!V%KPvSrJq zP4*ne@Z!G<(nL8Hx$xirv~_U>p_NWuefy>qy;ZRH8&t<(lnn4L;na3|K%s%F>bBAB z6B`7TQwQB1N@^Vg_|O1qPRqInAj{OWQD~-fSXV|`Q+An8p-@#sk5Y*2CaN_mDVw}$ z7fy6<3))ZB+(2U12R&_)u`==(iMti3G;AGMv`V_<9FhYOFCUB(G651A(v_K1ktjzu zr2AdGG1cS69-IeuTmGQeaY0hoih?O@Nn&n6Otib&?fZ{kW8=@n5yky7H4=S9E;uM&S||jr7};u@Tz0&Ze_tMjHb2!o_o~MYxj!yDcISJFJ^YsHY}0_dAvGmaHDS z>k3ziC+Mhl$O_VbkvASS1xvGP+SMpYSH&&}yR&!D@7AUCFrV%LO%PBQ&00;fl4^Io6*E8lDB}ll`<vp68c2$YkpVQqHfUPU zBU#&+1g`sK^{yONqwTs~3~OgS*%v&3XQM^*SUCdk>LFOWZD-0IBYE29)eAYfD0ls& z(mbi~1Cg@tPBWrlL(-Cfk_4fU-__IYx{)&Ek{ikr4G&Q^@!kxmq+YA&!(zmoVOy&n zqVhc8vuJcu6k<~UO^V+;JE%15DxtHj%mep_iB84b|5RRQ430!SE3#h}rL3z4TE>pK zT5h;IaxdHtVaOH;qV<7>huS-$pQ0lJd95yORnjnJb=9a^ucS32*re6%J?z+dd&ugR zgRMxr{pC6Z0uN*LU110sNC%E%>JBSIkBL@&@PQDi{Q{{(?*1IAPevyS-%CQ%z<$; z@P7Uv*`GMkkEqFo2+9gb0^c75jZj7?kdO3K!<{pa<|rAnl;7|6+tb1XFJ(``N;g|_ z^1_qQvi9Y**~4EWG5hp6lT#|r9{Ezt-ew#{#ZzZv?5Uy~alEO1!)W(r>#fy}R`l)w zw`z`eAE<0&`q2DKqCxAteyHfX^p(RPC}F=jF2;}U4=<5awGEg_zu^6)Jgf?kjZCT$ z;Il-dD-pK!iH~od__*BVOIodU*|vaJR&s?HI!bo}nJvk}bBQaEJm3l#WyihY``Jc4dulUvTC7tVLM@2vE4cqAF#QE6SsA0R?!&&((kUjgC;EM z>YtgdauP6dyCsyi#C`ovCUq>crXScpBZ^f*M!s>PBZrx$K>zZY{2zUiY8eg65I^_x z)*7NRNwreCX57H~7)i2mlkom(O`D~UhtKr+Ayu4e^nuR&zz}Kh?dv^kXt5A;NhUAl?bl)FK4M$xwd9V7!m^X!|N&n*n-)=;;svQi$qbtYHq$ad% zCGH^CaW&MN_r5JjIMGcNVlyota;l)YtD2JU-yVCUspQToP85JbZNxr;+vkCQ>=(_U zT6!N@c{VHpp(D|JS&XSG|!y_iZL-cknfSE1G){-D)~aVeJVc#3JSI) z?im}i@`P6|({}_w>mBSOfYjGIOi>uQUoa7ONn@tTY-+O+(owcjF00%0Lj2mm{H;H= z3g;AxCHGoaci1@s62Va<9R9N7!)m?LDb*<@(l-8-*p{2TCwh7G9K97g6RGAkD-ftN z${W4|cUa*1fZnQib_@yaRox! zN?~OePt-`+n%^)~YYro&Q;(*YWh|c+vJFdk%^xA7QEaQ_FK{eg#MI2#MW9id8fjVZ z@BWLvPRDjzxK3G1JIWz<@4jkxfW+d*ODD=Zy04(m`*u=pbh-ev9@(rT*-5tX{@jU0 z-@N>D$ylF$QVWQgIrBF!TDbwo3Gll%`;qa|oKH&&x>nMs{IW)pI>V>}n)eirqD7KP zuNi!G<=c1n6bOU@GmVkJxM=e3Lpiy1Tu@L-X7o!GBQ>JugI)Q&}e68Jq|F5PT0-R}S6w@r?U)3(}CoVSn z*&X@P2FoQh;%dVo+BJG^;u9!3bboddm8-D@v>7L5^=2*=SvrKILpHqSO6wnkmuDw( z^AfNvJ8$fEXDQ=(o97qxr_4``|9Y!XUi`eFCQ2n@jnc+~cf6Ce$;}308iC!_s!>21 zT7^%e@68=qS_oE!Q}-&SbZn$+_+Eg~lo?nlBKo#r<6j+oJo_wJGW_DLLp?j8mE@n8H zr_6&MOOI6Cx zcVqoK^%U*{OuZ$TDiC-Lg+^>dMIzSxvH0(U%Vfl7xw9gIQ{5AdgE*y`v6hpU|!8 zt*;l#`gnX%RNV4IA5@Da14gG*zNxL%mZ2ZUMmTzESi5Yy53i^YkL;j#!9-Vkll9u9 z@u-)N6p1sHrgkAXbU(Q^rT($(+mXXF(%uAXTr3L^{iT008FW*HJ%gjWuc~MEgv2v> zI3YbeR|jid7_HBn_FVoIsl+kDDK`}3HrVs%>8$KCm68pu@;iD@28DI0BM6zE-qC#$1tX;b0NLPUA5*j=I4cfy%UZiov?f4iRsivQa`U9!k~ zvlk7I9hMpQrzt?;6637@Yb$C?f04L0sr9yXs)<`aFF8o^?uR2?W&h{2P5zlo4f?&` z*9`4v&W$fi=KDPlEPd++q=J6|EIJPCCe`KEUIwo+TV!#1Y&*>zT1~ubgdT4|v1Q1) zb@0UY+}cJ>R*(_JVe%Q~;TdA6)Ht}^tA6xRUwmG(`sjpL)o!0P`E}Om?dkIr1RO)L zzan+yWozz^N;u_ns&@M1YyVFf8WSD_;*0EnL%=$%Pwcm{%f6BxhclM zuTmdRyeMp8jbvi^4dRwD**0)84>2xjx4u1Tt0Hs-rK(k&lW3ZQQS^dx@EnNnO!B z12V0uD(OMa_PH)mFoQ{Pb!M#+nc-a_YnW~)Tzzgl>LD3r%?2h_Xj_1RNm#!kT zKriUa=9XnkQQd+E7k^GTulBvU6g+jolFNghaJ<8*d$R=Qs}(=s?Q0b*g>a^9w;d7> z>!e4nXfWbb#9A3w6g9k~HqcX})kc=Rth?N&D!NwGoz5srrL9znGWO3cH8T6Z@7$d? zXqxUAHZfa~5IV*kWAEG5TkVhDHd!J@_tZ-g<$3COMmLU&65$;OW@w?$ZnQOpg0&k3 z^JLLN^c-z{)Y;<9^tFsda-!s=rVT#N&&IHhDZkTw9Pq~?&4s9jo@1bbvR4hBm$&_# zbB19^`R7<;*Q%fnxB3v|LKhTalcM|iHk#M%kMJKFg3TPFa=zOaFr=3e!l-q}T9aun z%YUQpVSP2!mM+++(EzI~OR|!v;<;ywzsMDfMz?2pX*8WOz@J6HR*y2Z)06qAv~3IZ z<318pW>~@2%~Cs@e~T`jIwaa(4-D1w$uO96Qyb@jq6wch}8n-XVK*(s6XP@7!|^#D6Cl+~?x$ zb@-19te48)64V4zeQfcZXhz+YPl`a)3&yP=+k<5--l%@CaGy0^2JVu3$EETjbK?*9 z&RpzaxSfYT%aeeVzUWJweF3oyW2~Ao??V;f`Kb*IJ$Xu$WVi&eW8sLu|^43s67r)w)E)nBn zqFT)cEzm{vj<)~Eh)yLD_zvK zr5#1irQ{)NZ)ZSeXxvGH*3LtG5%J`q z0CN7?sP?bg*}MTvEgv>aypJ z+P>kpck(}|68{>6KuXB{jCp@>I#-w7Hs2CI7#&|>z>h+`9(k`lb+P%vyHb&0lDp}^ zg&&Z2xwVwjuu5(-n=2o2p#KG%d~xI6FW8<+YrT`Vw@A72aL|VwMN(ZFj|}Y8AnXK< z>EC>ME;EEq=TM}ytPU;5n4^aBj*0sGP~4)2&HTz|wrt-9?L8^Kl^KbAd%ce0!&T5S z^Ts}*JCWJ8mU0^)byuwP`n%iL?n$dYTuO9BL!Iu2&@p>#q~0iZPV!Q4$V@vP;Ixx zS3}JxaUF-;noY8|-pVB57TLhR0tK#DHu002yZEJz8vI)Z?m4Pq5I$$tSjEQE^??H> zZDB)5d}F;Z+Ub`=(ZWcr-uemgrs*~F$&T}O_gpCp^3Hea^UwG1Hgl|Va4^OoU9Dme z|9f9bEM9N@x#~u-B@EfC$qV>RYyy8{D`xM)iky|MW04<$>8p@91kF)XnV}IA}=xgXQ$XYpwbM+B0(XXkq99S~8B?3eJZWuhN#;NqsWO=L+Y> zO`mF*`QK$^R+(^-Yf7BW4O8`e@~RA|5tv3RiZ}R%bipvtl$DI(c<->E><^<*> zj)0AB0N)g_VW|IA`DL%QM=lLTx143QCin5DvNv4n&0CtnYBK;}#5-;kej?3!w*Fo@ z9=wdGBXoL1>%I?jw$_Lt=lv{P-!a!CkFYns&lfe)_gH8d&)8D+UmVJBWnc_uKjONV zwkaL;!-m{B*?VFqz0+?9Y_kkqKxiXzM-G127&YR-vmjBl47NR=^$oLUx^w$oiG^_Z zclw}aT6IC5b@lh*E9WN<2ds7KyjJyI zLj^x>2l326$Es!KbJEtrhTEHN?ChC)L+Fg1Uqnr5S4US&A~H!CXTX&0WjEzR(3I@K zB9DJrYASsWv@Kkkn0-CySiq=w@<3$vO$C-=$lfpq*3N@vRTH~R@ zDq^4I0tGI(LVa#hp;IFFjnl@bks>VVJsI zhe=FdRX(fc2m1ypA9>HCDTvY$KMMWp!%+j}{ z9ml*liEr`uUqib~CGF2u<{_W5ZMIx*$L8O(_VS?5w;)#FPCV6p!CC9c=@QJBfbdV9 z7EbE8Ene}yT;OV?9CCpMD96-OLeqBhe81p9ly{~tk zCz)USL<8t$^BecU@jkmdYL^D&1p)rUb34}a>cdCqBU`W_K;ZWwy)>3=W-ykkbP7;I#PL~8#>DM?ANf5q}ND|FAetkrc32jJoSjX zu>APOpzF|s=44xbzx7c=vt24{P=l}k{AemQ z6ZI2^upp z=$C9F@boz*eBN`PW~(7xp$y7!?^gzuL8Fk_X;+ncRTc#;U4P$nIR7vZ)mU4G~i{DPm5fKqV)R9}Xh*wpSn%6H}Gxg)K(Y_GqNm+1j7vM)95ebP~mKI~hQj-?Y!z#;K8q0uVe zb6EFw;7=7RMoO=+Y8+`ma@dl-9#eP9U9TwmFE=!+8q+nUm$SiJ_5DDP{j##(Ak3rb znLu7SvGr`4#~TS-cs-xz4#Po~VMn#*YTMC^wyJMmd)?qCT&~;2ioU_x`!O9?Q_Fv%*$J6Jr}E3dq29^Es_?Vx$X)R^3GzQ?1In*+CIm z2-A(?89s7F0cwS_S;1)KwqEg!^ag!T`0#TykEnA!v9)itbFBc$f}IBq;?&qGyp#S| zO(bi}PZ^%Ekf4-(s>gtFVRr^b?P4h;eJTvvdx)l%aER^`9zUkgybyPJs-U!>Xv#yq z(&7+a%)97;KLzNO)Cpd0K4zqya*<|fUeQmuWl_-ZoMRWccmSu;t7+WQSMAF>{B9tp z8Xb0OKSu08%`og$lZJUI&Kkgnxcu~<$JrbwHD|!ah^$B`e&nc7y^Ot)Ey0DbzGHVN z4UncwkW)(cN$gC;2UapOg+P?zeAaRZR@8cwqReNwuUb&vseRh6t!#HLcFxQZ6Wx7{ z%Bd|lBGvGdMn_N@rXvr6YNAW_$AJ5xv;WM)v=Ttb06YQkJ-_eU%@?#~tJp*eF zdtH?_RqNf8(fN8~$f8uZC4#~+k~UNwTPiWsNzHShBg#kT-QyiLgRLF-c0#B8TrIca zTsDj4NNFyq5D(nr!IY?RANFW1__|bwLdw&wIU*><31zK_19^2_^-lMvZRBuF987BA z<2~a6S`2Tm%=T8X;b`d1U?>N;_a&61=ag3~1+JxxHMJslCLe8G1Ddn)g&5gMx25ik zPt=m7Ta|XwII-lgh{SCW8m=X|!Lh^8?@q8adH#YDJ87MMC__noQ@OpU=y*yntqKeq z;`#GE9R7}IEIGy#1I9fBk&UFj(l|C0>UcfZ>PTwre2vnW%un)|c62q5 z?8TUkp^2K!ZyVnbt7;@Ve0%OFx!{7vVWQCW^kX`2PysdN>YyyXe%>C_2?3VWC zZg=`H&_B;Id9mPee5fZibt|Fq5nF78eYq!AQvwfF_O?5ZmXvLW-IbP0Ek?~9pVQqJ z!nG522(I=NHKPBCkgQCA)?KH^?6sAP;arO6JQ-LLRDavl($}tJVFMUa#^${%igRZ% z5$xTuH<7GwQgS}(Z-Hieew6(NkW3zq=2>ZwSJ}8~ztic}5A-vtxTP?ISCnL#?^MzN z>955{ME}0IT}{NhC9vb*JPku}tRWxi72J;wnLZ()vI)6}SVpUWLV6)1xD|0n!zc#( z1c}aIY6qn{OeS&w%{HKywP}S!0hK`5pi|^fs@Mwv6?psz@rr_#q=6tQ!kuUBO*3|Z z0HsM%qY2&=f*ow^i5wEl8EEtz>rL4Opq8acS!@2LL|4i!9%!}&4cEx1`pXX~c9&>c zf*}Ke;msqa4)1s*a%G0QE*d$9v>hU5#1;!xh8a}51$nLh*J2mY7ZqotNLFSL=$fb2 zNeVWf0+Vt=S3=*Ufu$TGX6RLM+U z)jnCRwzXYAE!D9_6s39Gf}LFQ_gc)Pzo4w|V3jh?V&>uUli0vgtOl-3@7D(GhNLYT z0A7;FsBy*0BuJo=%?_=FXb!*exLznefp@ibwb5v#*|hqx`TCkpM?)=1a!`)MEjE@J zHBzWE-@vLZWdUy}w4b=v?mMcMselHU^f%5K48vVf4&;#mq<~5&ml&%ElI1;43Y^(* zUZoFV&Q(A@`J5~LU_j3HL+qTp*ofzGrizm0C^zoml!e}2&<@x%Z04awR7IkG+I39C zqi4sZm)n*e)n!eLl;~EfObkz77RR!f+wuEHdxc^ASliM{qc&^%haz!=d zPQp5kDndyytIG1h7W5V{U!Oc}!DOi$wK^DF1ys}rm;bZ<7CK5X?jN0~HL_v536J6J zNS7<=W%?07%wl6w569b@DI4+|vamCiWAUFpQJ$K$LLnQI*4mY`_QTtFTb(+c)e>dg zt$3nN_qWWnmBFO>2-CR9IhFy>JEl$%~4tPP-?sc7Yc>*lVU^MeS0aV zAcX@I+OHW% z)njSsO%rO`3D*EaD6BgIU>($LMV3 zihV(ERjD#vllcCD45w!1HG{AwtyGM&crzuaVH;c3QR2xETO6u`ZpBB<-aIc$O?nKy z1wnp9s!qd5Ta8~jI>@Z;+t~P+9aOF`-|&|#d5vPg-{zA$2^8}8D>$27CgppkUYulH zr>7i-eB1)m=zRM_Lpa08hACdW7kMuSkT9*28NCj(#6p{DCmrs1a5$rdR&lz~6L&`V ze(IF|%r24NC=(-i>tV7a5VLTlqA8K_qgHI(-aOQ`j|}jWX>>s< zW;S-musZbJF6;mHN*1;8Q|3zOlI+_jYN7f&`wIKOc5aTDxA}9=2P(tQ+nRTa_f8#k zm(gwV3xs_jx&3F2s3I5RsrIFwYM&S2kL9Y_{{8Jy+82o`JQgmIZ$bX2GMyav(w5%u z8Q#RYGxa)dgYR{JUII*Q`GuU+;m+roBS>a)#9d2$KJ(;nYi~qMqW|n4;|X0KW_0@0 z=dqQswzGej~XkVO@Ct+svWE;-KGZ7SG;w1lhfIkjK6=gO$2 z_y1%e$9?&$O3@5H&^&_j;s{RNPY}wz{4PA~-$+&F@NRDVY^yxlix|M})Tp`r&`su} zFFl-SPW>O+cX^A=N1Q{&enUMt!0*CR^@f&_kmFcps`&x^+&(gLVSjn_e${hTFj7T- z0@`QjleY&q`ll>2NM~BgTS5D@bo3h)?fT?|+5Q`T$HWn4q!cJ z3q?0mz25nIjpauZLOWBS+J8(HbpfV+h~_&2kP>q7{+ga*yE{okAoU7r%9 zyiB*?c=~8mmHmz3k=nX3GeYIK;Sle9^|`%y{Rh(@CVWkGssj(>dYOUbM$?2Ql94-L z*ibEGgASP0rN#6tOIYM&K-*8lw}z3v z?1U#WgKnCGJJvbiUVuN82ehT#T7OxGs==Ropzi87wiG(&@wA!-3Xq;-ZfSXJmjD(G2I10kt=z)K3L$d3U)oAbBOUIvAHDQ zI=ML0?HknTAyXgL8XL4+6#lXxS&~ab;!?xFeCw>iR`;Gk@78utYRg%;w89D<M?=&G`)1@gTT*6`lZr+aq_?3GAhn3u>ZgXr z)8R}^Hvk?hYYdNA#}(}}y3OK>#?@^#lgTKwm9>Eh#k&LJCh_H*?6{?mdYcE!)4F-J zV+G&V4eD$2y|0mGtojdA|FuazclqVcFNWU23rdT$|MsB#{Yo(3;v0{{zcSiqG}K<` zvDy4Tnc33NsFvDmnElJekL*x9JCfDH%BmuGp>ns=`(NGIRNB8QOdaWIRQ|(%yS{VtiZ+xTalNLG1-Fx$HD@2rJ?{hG$_GI0*st0nwVd(Q zCICGv{LP;V+{|`q1fSjaZ(JAy!7cRR&^dF$U^bnMcKlGAp^v`GM>iuEXUfpyGoNQ6 zUw^h|dC&dV*z_aoPe>oGEc|k6PPQ0mTWTw&(sRr1kU77+G&kGW@kDD zl2v~A-Q$N~+|?bo7w)V0e3RWY&r7`Zmw)uLzcZ!oAh;b=eiA@_7mMN3` zLi)$?+Wd!5De&84OECUN)emnCIrSBTc}rDxFg6Es`6DSn{kO^FYV!vwvC?^Xj)}k7 z-U08!JnL!duJuE&ofh08bnbRw3s%LBdE-8 zpuxC6%g-c=Z0VvRUuR6aeg1P|V#grWb&S6o*&!H6tkDauoWlM)pSv_T*>ojuN$QNP&?w37@2S+)n6+|MXM{vf?e*OpRxsPZuZDD{q-DB;XPDwkd1xGT@AqRR06UYU-1&jhJ3D4>}#B z4;XjHD0Q80eL|pZJ9MIVJ5810-wYCAQ45S>ER!8S=iJlPLsS>G_%<|Zg{B0We2xI; zNFo|5JV*Piw+dbWxqll2rItZGBoGa_EE5bf3VW+nWn30%4c0)C;_&VnW>jS=1UQV% z#w!gFw@UrRGC>ttz4*LHn zde0z7^7KwG4HB6^0!RP}?_Hr#-dDBv-Q#C>W@nePo=zl#!J`zSA`}vJF)=zt@IumE zgviq!&C%R)$=#iuncZ>QODYESel@)>=(L-5GDx8ppXQvuSL+X!mC2#krC0@5q2enHI1!aQhAklO9txwaOX` zkH*qWUoHFn+&y4WhpZ=%d^o)A#vmA`x&ovh`G(R><8jO+j8)AZ$n6iE?SxNA7Y04$ zw4ovJM~;G86CO+mx=3lu<{AvB3GF~L^!D%crpx27JdMCE>zlP@x^UKg)gq31g@g8| zX&z}kr!6HI&K=Oa-eeUJg9)I$1f#A7%)#xZ$hzl9o4$WyH(1`S3D#K~<|294jL_kN z6+%-b9pgOc$h&Sy4A6oXH0&Wc5mqSrf(6uA<*TR<<5k9D&KNQ z+)YJIx8Kna8g=8>lro~}=hhzR7kV;8t%~-cj3N6en7t5l!Lh*$T^7mdB%g?zBWm~) zvk@rMT6EgWS9kXdd&4j>I<1QtdNm0|F#RSe2WeaRBvngGy6XhNgyf z3q{p#1aN`3p1z`neDV_%F?&WRzl#|scyc40e-1l^|Gf*)*JiI?9Bh28waIZ}za?tN2Y%O9A>DML8l7bd z>41@hotFMVW-3&s7~aJ#7EjXYm7QxX`Klo;R@);(miuw-Vo0_9J2N`_jyyQ4d_9-q z@}-Hn{#Eh_D7zxgx}6a+azSt`ec2$I%ASv>+v}QcKP?aGfzkx4ytbB9%TNit- zCz6x9s3|?HO`kBwS*JU@%{g#6~lT;=`nBoG?dv$f<4$=?jnp>k5HIJT% z+HwjjrI-2U-l%l+;wdiFO`kSfgA2%;7l+=?MLZ7-f@$sbnY1Izjp&f>v(K}^x^;cG z77r@Z468EqM=!NTCdO1JQ|ZN_bD}%hRD5%`+OLFzqFHR5&@Sal76sJ)rnb9##4z$7 z^W50Apn?v}?8Ddzfz$!fyldm&l_!nqqoWJx$==9blg{7Ywu3jJopNniI8)mnnv6kQ z2iX0#(cYJ{L+vO0?6}GlhDIG|3}2J~dy*$KGF~2YXo=IyO_lAgHjRiw7n-j!F$&3=?Azgyi%i;rJZmfI>X9zpfz9FzLQf+c z*Ny|NS3#q25Kuw}A5dE@)CPDoZmrQb`P@N;WSL>b-Ocf}lat-T*w9ei8CW66w4>f} zW`9$l4&6y%?(dC1hT66uyr=Jvbq1GwQzBK*MDdPq-ur(%Dxbiny=$+KT~pmZ`+4Hj z6l+!rsg%mqogU|R8SA23@Nwmg&Nn*aS8P{|nmaD_Wv$hA?>Jmg-`zzk|DktTOgvRh%Vupd@B*icU= zeEXY&IXv&S(IwgToJXRQZCtG|il$r5T5U^aQrWFpG?qP8fjP$Kop@)S9|x7xO*B?P z8Ki_eS|l|!#)Xtq3;W9BIo9}$`kvk@WwXWN0Gk9aJ{JA@A{gNliG4-Q>%YPj3TIv) z*TM~%kTEn?zkL73XblO&f-m{}GvOZf#2(ZjRzJ#>dH%%WQAGCQ(sVd2q?C%M-(C#+ zh4Y)6si{6jZl2V7%|$@(vJQCuio}EtG^zUT5Zukj8;omt-`QRgRxQ`X2{F~B^a}Np zFHiP*F%4a%Wzl(POyMB=zv_!%*QbG=iTw2`zGWYp+Uf_{8P(v}X>yyC3(w~UMP`Ps zBeApp^Y2eQ1@C&wJT;;`xwTtXE|5Romra5LQzFj1QXW}pJAN;xkZlW8i6ML@Jv*cZ zx@rTW+}$)_rc$otpQt;T!54AmuN~C>FW)LfzSI5KA)%V$1_UecyvO*0AEN$br?nZA zS#miCUt&}f8Gn+YU{u11A7lc&u* z5LHDbV-T{ga?k#V1O7+YfhIyxujRx_?zfm9eX2Fp&U`s@5FQ+1()n_> zyXQQIb#A%W%SO4-t{J3vTmd_L)QPvwdoi7zcOTI?{n3ldxqlBmSp9|Nsc&bZODC3@ ziFa&9D_8?cTX!D!>yM!EI3Eg?C~=uK-<8a$@;7m&mF;8b?)p^?ZE}Vc!m-L zs;QEDc8qyh)bx;sW>WfM^UoQxi|AD1vk#-iAMb)Lq=T|6S~f6Q9@4fkHDsb-w%o1)&S=M1l?Cc( z57PN6fM>K}o$U+@Dp4q#+D!uPt7}=u5FW=-a2@L^xD~vI3QXVLNBy#R9!Uyg@}d!t!yHI0<%-+R=mb$3uV+df7xxrvihS8 z507vuEeG)6pA}V!%Az(qBO^uSrlLPA zivvi}sDdR>B`b(Ovk5A2ZG;6i^7ht6wJ6-HD8yY-?x59Mlbdusv|j5RwseBF*XWQ5 z>M?UhQOl}rk+~!#633HZq2@<)|Se`jUYM_v()i@AHuH?4rQ6rZ?-ffT_a?g~)jr)R@Fl3h;ESEPEp&iU2Dy zW35g$EEZoMvNJ{(7LabZid}=_Nkvl|)*_K{OHi2&4VvnVzTWC^XWr=~H5A6ZU^Z#X zhJl#AvT@K-obTe9nof=3)tFjPnMtW{e4@Rp1hk|#rc>2R>Z0%Nx&Pt#Un*O{jY^2> zAiD6OVdE!*znw%Ugu;ZgT-gX=>ti5zZ;M4Fhcf-!YuMW3%gp1IlwH$ZiX9?b(+iP< z)^aEtRn?ipCz(rBy%!vK&xuIXaiipDes0sq8>=RO^HIL^k<1JpD{9bZkGtKM9kszl zy#gFhf3xyPdNMnG!9IPV>iDhAACM&Kj*O$SW-?_f8xuXrV5Achl^fx4?R%=!l@x?8 zIsrGK8qtn;81~h;Bf*50OG zu{o@Jl%7JjTh$*Gk}($e-y4myS$&l$gc8N;US+UZReiU1Ppw~q(}2rn z$?ScX68?y`wGAaRHdLa6LUxR5Uia3&l0(3$n40OFlT%Rwc5&>zXdm5{s=_;p1F%~_(wvLMj@sqYe8qJV$7$BQPgrDavbtMznv+>f+ ztAp|*!^1?=bx4dK2h)5oudxhRHH!sB#*C<(4cpCr`^SV)M8-=#(d+H_ zTVQLdTKswaRYqz3ub+?h657(JtW|H1T8f+M{KTC8+GSSHv_DeY6)s74sIJ8hMg_;D z@wR&g`;J_T3#jbP3mkW7YA{1cImOyo?z^gMeG;7qJubMn`*wpk_G~uJGXp~z-3_Js zjiyZ=!&{YLZ9=+Q&8akvnb>9IZvUXm;oe7RQCslX*@^89rA9R^bn~FLlJhV9a0>_s zHWkM&8gxg3!1o!KAMn<|>X_-2+l_}B^%A9!*NQ!O@9{g`*Q-js2ynK7vlBz9=~G}U zZkZ-E_R^QFV(AEAl5JNz(25RI&1LaEUaF{zjZoR_Qk;FznXhe`DYs3}r;dKdqd~^2 zJH(UZ*B2I;w(8(^a8nS@pS8Bgkro>FKlX(NRgK*in{!H%$3-%>DHZG(Z z*bNNk>`sl>k+i@v7kgxw0^Cq*L{ad+@_F4CBx3Q(=D2BOIkn=3d*nDn;H{+Z&E_wforTlRVZ4H3+E_roj?_YS@h} zSDGq29=J)vB;QB2qYdqR!jgu#udHETFPz;aizB4&)40=j2o1gmJIcuSNi^J}oIKR%;TTBsarLmsHOye!Io%( zr$PHLr{#G{X%ZT$w2gYJ*0ieIT&H`~W-wl-o$3cM#r&|LMN6ZKdXkE1`$|~i;8Fp3 zuUqjai9lU&p0Ik$YSGE+wdSFAQCD>YGxSy?yWoTf${VD?ddW6 za^Fw;aP;N4^V*`51=IaRi(GZVcbUpD-ANYj?$PqX@xD`Ef!uX!JY%vhb)0P>YLRA^={0=g5()iQ3bmwk8XXi!;7%Yj*T_Lc^VS%#5WVmV-%mkygQh zJig$$E3a0#fS7Jgoe_{Tt+aA09gh-ZWfeEFV!!l$GpTabORy}y2^>~1gU{Z7JEWfV z?o7FxV;k9v9P3Wz?^`{4MDm-*xtw9)Y1U3V7}s{KHuajW0dVUMYMY+h--}i9UQbD{ zxN+2Rse?HRtIPh%uv*50PA1BVF=|{T8ixHOY=ID_5bHHoUjsNHMOU;5brbEy&V^qc zvk6@}b;9EOBTn6Z-A)`w-0w5VOPP}*c-P2-JfCu&r6h%Pd!9J7~PB9vkF zojrndJ=Q%Kz1F&DutW>%T1sBuli$8~2ID{+9iBAMou$P`Ycl zL-`rm)7>y>08%J-?L+w7l)Go^?`4?$^8tgy_Yt9-& zhuywS$W2pjext6Sw;hdA`*V36PV0|5{V%DF$*KLRW$E&Xru6_?9^MLT8|FK1i(;8r zViJLuuQFl_xldC2E-Qdkl?yMvk~EcztlvM(O`+IeD`BkP(<+L(pZst{*IR|7KvP^U zp1#8x;L(dd@QE$}N%tK}ah!RL&-y|AC1hlb)xm~x+gng6W2HX;J4&UVAOhM z%M%Ft%a+FzZvSG1m8$;d^PK;@xCR_xL*HtUpmeP40sdh{ev@VMm`xGpuIfI_j}LsF zgyZ)=433YA)urUxbThkViXeCyG~6iis^dxH4<%!VDo*%JPy6YQBAjR#FNUD9y>z}X z-N>%olpDog4&LO0>}$ItuL#&GVYk*li8@m=gEKR|rtU_)w{oA81SzM)tG`$TMLsr) zrkQcK<4G#ry(Rp)l}%AW4vCvbR@S!s6~wEgP0*tyBuzQj)yTqEleGqJiwg@{k5_vp z`Ky3xIWZvv5iJMc)p}|Crz0xbanYXiZeR6p?4ro~GvOyD_+(}B+l*YKZp}H@71u8t zGwmmBt!p&+l6skc*c>|u@Xc1aCW2f_HtFC$JpWl&wUzN=WN!a~ZLo5736CsoIkiTZ zKhmiLe9EH{d~UYn*zVT+f6|z%bhy#=Pwoac{Bu_)o7tapLtvXh4cME+jygR>D-`4 z5YyvtM2b36>2F+Do!5BqY1E19Qkq}BCTng^W&@#NU2&9a^FNoqPB|k#jcZ&>Q}hq+ zP6Z*nJMF@+R#N3XP$4Uo>V|N`=PcC?U!Qs9li99fodas;q!67_{64`yEsol~M+W!L zFC0jF26@#7%e(7g>xe0FivEalxYjP7%$hOl0`N5(>Qa)uxc_!&c4P@ zvsV2nthlyyVb@23BD?pwmr6~A)qbN2YkI-t6(%p3;m&p*uIl`)LP!)9eh;l_yM2@eh zmO;J31~FGb!I>&{ zjE~7Dh9Tl>HZwN3JK#qvDxXncK|c4YX(FIEz410#h2(6}RftXf`< z3a8v}v-KT2Ka!wj=W>p3b5J4qhqg^kCCYY2+&nwQ@kG>=znZBNX0-~iY;M0-3rR8n zcPXRFV>9obYrV%dyM4%P+V#;k%1AC(Xi=lyW_APgk^JgcGW4dzvQ4Dm&}LRL8gnv) zu!SgTb^HB2JYZrrl*clp18?o3Tn{}>H?npMeg6}Uby-{dwEL7Iw8fB}M*?v8RG~MCADg!F3SoeqIw<2HB_61hi*-e;UfXK7IyP6!z#9Rn)YK>{vi*#>WFhm` zcw1f9ph|^R#VXLY)afv}q|ZxyN9$VD!2qBXl)d4e*a(OcY7yF|<>Ej))X9sf(Sa;C zYxTPdlvr-w@jiB4tTjYSqz~Cdxh2wcIH-i(1KG~*>-wi={RWs}I(&`Y-Yy-}aG&1N zSIPid(qrEJzQ@?Y2O_^`_qD7U`6!}Gs+u7|girgnqIFwcG?`!5+iRWnL6;y5_CVls zzc{C_hwFZ#fm~~%wWh(s^&DldcZnCfgMrDZ{6>;{T15=H)@X^3L{BJwPVN<$;`oAj z(iqVU1CPyPi(u>=VN$o`xq9ddZFy(xV63kg2K7F(QRxFdwV_Y6B&;OMMXbSWDXL|! zxp;V@c`W|t^W77R*tc!Ymgj(N12gRqnF`-?=m5iZvEWQt>N5BG0PJw;h!h4=Nd^z* zJO_MvESX9AjnVpJm<>n$`h3U!In6D;FD$jPx^BX&JZ&7)4!eqS{qtRHrr6Ir5WjIy z1QEJQY0WjC$0SCzt~(=IgHn~Mtk+?$aXX!!v9SfILpfwd&2oNJ3y-2^O+uERD<4o@ zbzMnalq~W6SVL7)!giRy1zDp2%QA2?b2Wojd@W9=1{yshUO~o`ZBFg}NVgj_(+2Vr zf#L@^qT)3@`Zz5KHnUzrD!4;k;q0susAIKz8UU78jGfwt7F>enQ=p*J4IjD;{apxF zzbkg>LC-FelS$o1r+TerC@IWgh`e}1cn=_z`clRa*!XU)XcsW0Il_;S*z>0AUm30AHW&fwq!z2 zI7M~A7gNhb_W^a<{Aku6eUtH%jtdGxtQ;0;6FGXA>|D=IO)UH1seD?pZJWyiOv(aYc+ zu|2@kj>^zGkeV$cxLM&+>5{k05boY-Uqr}AXhdbz30NDcbXlbyaJ5aipqGD_M<6|@ z(==r8rCo}8@;W0?2Q9(QT0sHDpvEzvNKlht?GxflTzH zL{o~QT@=h!S*!wyI^>~VB#c00V6MmpcRGOqA2x{YzCpQ--!=0ick%xO9U1my?7-+{ z6nNUm7f>}qE3MiQyzB%gbw=5|0+re(HX)^+xtuXaXFUZK|QFo*)Jviu%tkgx4Et_ThjZApB$>>746`P-6(*YGv9h= zB0eZ+{7w_J7W{d$$%v1(|H2r5Y^*d~;IEfNx9LK@O!$ZDsZgw_o&_3ExG`=7PJ)`> zo?abQffx&QD2xoqI(6xrP1 z7D!CXXX%v>hSltjPSshnpf-VDol+?5{s}3!kD7wvCo0bwm6Lh>iLaO|)!3soJC|&n z*%_<6_LIP>`WL_c<^L*|NOlwd-G^(E=8We$L%i)MzQg8Rm2T7a18fwdk6Lx=68YcEy5l103U$k6-Hhw44 z$nVC()F8Xt>!?;!VZA2ME&R2EP+0DqS1((f|M;O|-l6hPj=b=EP%vC_THBrN6*d}T{zL=DK z>aRcZnkI8y__edp9I^4LrP&_oWyYW?jMND8F2|8QT@fui;u=kNrX$9hShA#GyIihr zu=g7@uOk|5ZKs<;xq(`x?AUj@U4D0<94Mfjp4dU)hrBfrnC#G*yH)?Swrn*{J-X;DQJbwJ!veCHikQ(0og%yC zQYe$Bp8WbNBE9KCKl{;zdj@SJme>x0`0MnbtUGULYDjj2$Sg%ebf~fe%eGFdqEy!< z3iiWdpYs*U8pI}xr(YyI>srTOf4jzV>MPwbo%Z_dBr@`!zNa`90PQ)jZFu?W#$z>D zj=rLMh1!awQWw{)RrO@+9piTKPgH~+Fy17>-kkJn!}&I3_>~20ANEw^*Ir?|CY}FG zX&4^v=mVX%pXO)6v%2LEJ+#?A2<_dSPG8!427)THDzZC(m90x4B}b~@_a>Fs82!Pm z551$0>e%rxcHHO$58?UUlh^>}&LydCJMzL#pi-OZ$*oZL?!w_Du*;UAj<`|J2VL%; zz%2?Mu%qFv7hnK9_L{n9;L*7egA6#+jIETht6cI&XTEEp{tmqqxYZjQ2U@G7;`Bgk z7!i2CEo+T?8@|z7n9MQBoqX8zw1_J8gXfhwYKq>M;%E~2RIRdgRs!l|*YpK5aI_u& z(P$o)CVx7-KI#{&jd_?1o#G@fWX@(@F};&F@9Bp|8h+OKiIEzUyG-@l2Ujc*ZBS+V z{QkI3vjJqmeHcv~F<#?)Zrhg27#GvXDfr@!+Owzm6Nj2H3l^~H7yyX3b21bE1Q!ro-*=rpg$!5kbqoWg=^Ki?fi7>W9-H=~2Da9%>J~c2!uOP_vlA8ve)d*< zS>-QPh9+QpRON#KOVOx`c&h=Zwr?_r7E6lAR7;DzbZmezW(7Oqp_7u$EZ?!9RC~O4 z_UiNQ5-)|;WzU5CjAhOBP0;yS^WM4C6DMH622&4Ts;pnJdOP`=$71gw59|d3HpDz= zp}fh&2CAZo3md>d++;(P@{i;pKt4J-9(MlSX(tvRUsr$Cj5ZR zmEORWa-J-E&UXM+1=!T!(iZqVRKM|YZ0A26mB1ZFK}c=z94 zZCzpH1n=SP;bl}C|SmJhHuh@VYA%Pqgu)zrbK zB|vrzaAHg4Xp9B%V8tt36HPK0xzqn1BP^s&4V`*)(HLM<5&mz8jR6SaeKDZsVCDM znrWvUiY>^6rorHGo@{1^v+auxqTw6IH|Pj=&t-CBigEnES7>p3q|t zn{kXW(U%*g1Is8N=Mx>2rC#*2n(mY%nuIKA4H>b8plS;|cG(8_aRKt?7)GLiQJ zbUq<9Es*q>fl%4@DaU#_q1I{U3^}f?jjBdjBHAm9#ePlIqCkT|0%{tVZ{HoSoGQF{ z7L!3)7gdnm*^m_FUGWgcteg#R;_hTkz6*8xUIkP>t`L#hO3jG-{VUJ2%_gnv&3EV- zQJt)^&<3^rONO~suT8w_V8&ZTU28kY*$1PSAn|CjCr$4(lt!myo)kbCI3DcaT_K|v z6!Sk9blJm&^8ROnGhIvHrr+2aRSO-RYsFLkMzh;q0g#ve{xARBw@{Ca?azMUx&eet zrze^>4e!LJ0)YFDO7S|JiWEN_*Ov-6?-b{$c_KTRy*(^5EgRTwk>~eWkjR?e&WPCbMxI7biURQ#6KR}*>jt40z=L@**JTA z819{0up-7=w<+bEz72n)IyS$)MN)5THl2%ql@5)h(F5*1>-`BGrfwGU{$AsH zs}&p}w)KTrIIn9>yGLykN+8of>m9#@MK6WKHDT0t_DW=?3cYtR)2`2+d6Jc-OV+{Y z=?LCq=F9jv6zM+wu(7M;rc~nU(+Bz=&u>*-Gs#lV;j~B^*+!uniUVz#c*g1JyU{+- zVoSP)`)&Y6tY0rwd)KGpZ{)Y!(Q|}S zGb@f?U|Nx$d2ws`wu;>7&G+AsVm;x@hd-Y`_=lX+Rg4bb^VFZ6?5ILVL#Yc^k#DlK zpKXS9X^8?em$>SYGmk~J_ILXIBwe|ahu_rZe$%2S^#Ame>~exU7Jr%)2<6pLE&7w_=Sib*lI~39v!v(=)ox@v&|AB< z`GDU_#cw~nr!j{*OWOG~C~`{`l8ooB+AU+RI@M2G9lCQ+D$(lOB!r$l{v!-ESGXpr1$9q)mwp!6wAN_0b8C>}#te3~#^Pu_K9q6-(A-A<*As+~!70BKkJ(28k zjxFD)U&LLlSfLIGU&e*m#Lmti)ZG=rw4S_1t4ybq+gP@!b&(C>!gX)$vzKOD?v%F~ z!MsWC)XJ7j4fqlKr}gtbUYlmw;L3!b23MQRoTYZx$k5K#N8hjg*~Rhyr*RkwjNbaB zGx|~I!{)S@I)#?b+Qx@I`snj0;ErNe^-nKF51)mL>e#x?zlkbbt%rKSq}F2TexK-` zCXHJe4FXo5YH%4FS_DFP1{;XQI|PT4-&$Otu+`n%#OC9DrVq6kIWcLK?HTD;;+E!c z({i&8HN0198h+Igv&@3=)Dyr(wAL~_U}f?=qNrYGsfKd?TlUH!VN)4;_q1@h#WVT% z?q1VB4j(IM3D^J+0u;CX67QC80pA_h+TO)KKsG)5lvr|#9!FG<$n}enZEX|Nm50d7 zL>gVmjW(tHDny$=<=<$SN&5h8%5B}+^p-GlNuWh0%6b9EsQ` z{ilk-#gL^FS8AR*%n|eq{v61T=j9wT{jhSX?GD4i9&dQfC?v;a6fbr_^yXOg|Lag5 z(o)}t4bKCPYP0Cpfgc|TW?6zw<0*Y>IIQ_<^dL7XY)L@}f8kgS_=<2bEHy%nY!J6X z8MvXe$W3Cyd_f_6H=?wLQw34#Fd>-I`3Dw;FDUELqw({S& zAb$iD4>iet6T+Pkz|8TW3hJVYK9ZBFU8$;dC4e=XpxkMIdR=3KZMBAqW2Cx^c7gT~G0E!Ye;kJe7)+x%y@P49BjrbVtJfw2 zwmbQ>bztn%;-%bxWn}0_sAKP*PpHs0hwa9}Ow_q6Uru}bL%h968^sMppk+6f()euM z%EtCnX44;g3=>K6)#GO$0ITq`K`g+zzy1)g=r?sKc6}~kHP2h(G{Wc5OaUFAy1WidN<|LE9oRRjY`*ZcXJtNKNYt z;g|pQ`SpOR1l;89wbJZ=pMVqhuU99Nq&PY`ekD(Aqt&%qn%YF(m~1WTTRG4vaI>Ki zPCdy$hH*)Y$oV`X)_g8?1-lZlzh63D`rSI%4xm;tx7KbE3Dn5r>Cd!Swo3z?Pa~1v zF{k_uwT3NhjCm`(x1p`MT>g~W!D@wJxM-M_s>3`znaVU(H^-13Q}Gc#GNVxyiWy7I zqx#jbSxYJ1M+4%xV(N3)NBtvwkPT08y8Z2gH2yaS(NMoL?5&iTHz;E-7|qRTce9US z?eLe}KodiPRAlmX1#@1~ex%9S>@AF7BXSgCZH!Vo2lX;*7#%MXJ?q`A>&M8-I4 z3XA|Qu?Y47q1>VZM7m+sH--N{%%YUp$*`xPX-N`3u!wWUvf9+)hG>Sx)fCT4ziFff z(lxSi88rE}W5zc2!lyxNUSoITa^+NxNFS7}pGV?*L|R!uh_3{$|yTSTk8I1AamclrmPU|AkCxWQr#c!#0lY%_~&zQiuX5W=`y( zwyPMPK&Di$iqWS3y|<2-4g@_T4ZrSG&VJo_-6&?&#KyXRn9-(XlY&)cE>D!>6fyN8 zASh(Yy=Vfj)E) z1yxDo*}Tn!K-;L@P6!1}jcY?fi|3L$V$dwzeQWxR9-Fl$>MF{NQAyCe)$5y2dbjW2 zUz%3b%Dord7z%a@yvE>csi1s!f5%Zx?ie3jR;njXShq<%{JmylIHGSl;mWg=7`@i% zgC9dG<1+&ck%zn|Sw-RUSa#9s!S!Vg){yrAn>HxUd{Wb-#ssSf7*9yLf3_>Qq(-WA91&uF^uoXtN-pBQw&DdKu7$0kx&c>+BjcJ84Ts z6>roB3hn3>sR^{S>OyKkZ;&HhW+!1-taob;q_m|n={mB-41v+IoA!40J5?QAVoohe zLwn#5RGyA@&yi2gHpd@bUah;Px#5?Us#ELH1=V?zD`UtFmGRbd*J*TU!jx?rE$y8i z<^;xdQ>Aw0(6;GVgAccJw9f|fYTo8S`z!(ubgLQfzM(^7)tGTZ^+d%^Jot?n{W4>K zcXJ0*-0(w%cBkpIa=GZgdEn@G#4dlR){TEBq*yt+1!+21pE-3lgX6m93ABw{D*eK! z#+O}Vwp6`EPf&1|*3#{hRt`HU>&u4OCmlnef7`Q*@9{U3UH0(-0MS@_=~u*;TN4}O zou}0dq&&17JYNcR5^ks*m2pa2u@=7RF{pJLwj%Xa3sleR&X;G*x`m`6cvKM9G>O82 zd|ZiK{f^T^g2~f1TsapQJ4{V;s6Z>(|n?!E0R)vN3n0{zrbWJ6gBahgp&RpIC?qBQG_z>=1%R zJ3$6~`QxWKxF5V%Pj(AONJpEy@dau!^j_tZp3lZSmsXUgg_Q(hZOb=dvU9S#HR@H* z3{DJxIUt}lBu*O-zn=IH-OM=WmzbBWu_yWGbI$fz`j<=C<}u_l*|HqUpUUe?r|| z{BQHDFX{T*S#feVm}(H@Tf1G`^+=Cgm9mbDt<93fsTzAFn+-#T- z{!OLWzj@N`sblz0ccpgiAtsc zA2g*nB^SopF7qLx3p_+c2Jz)cOSV28J~0oGt+wBaX9FggooYb!@USYiJS{qnvUfZF za^KCKGk$evP&L$~5vIhb-`21_1!Fbiz>;quh%H%n3ax5=UM&Mu%@Z&VBCOKhwiNpj zhz@BBld}<-enT>fJ}WNNIH2R(4>?nLokORT?*xz9Pd3D%KJ(;I)S>>q;)u-u1Vt&C z>Cx!O8B|*U z7Vfw95J$Mla5pn$JFQm_$cUa(ea(-%ZI9DVtv-k`Nt|RL$9WZ})OK;yER2FuLw=M? zjSN3_?Exyo#B<_sIr<<+nOC)S$n!N8ih)ar1QaG~$M-zJbOY-&5mWFCCIQ_V;g=&T z(&)#{TtHVbgHNMv?s8sgkcN_y;8abel^(J1P6h5@r=I$-czHtT`b*2o!F-e_Z(Jdp z3Y~~KBOi~v_QC?+8+ZcQbWFvrNClJf@||E_xK;y`-}zV7NBC1UKU@5q2##3t`G!F6 zK^!Bsy=~iDVz{8Vj32@H;oQbIf+}`o%}OK-*I%d`Dk_040Cl2fmWTDo~f!WUftkI|YGXEfVd`DUWmzovwue-TWbDkiu`t4~*W|p-{h2SH#^>^4X zVl?U@bYyMVoCc%jHgRNk?+Ut0njarTspklT3#>bFP5I*WQUBi8%dhw$uq&UtTrbi~qzIYW-|I1ofoI5s@_Mj%nH$BpJyGIQ{ z9~pCfHBj_ZPNnXsF9R4G!%mIa*U_^n_pb8zMpEGOzlvDp>bva6(`jpml5ytUxw~W5 zC&^G4s7^KRC*sAf*?uM!H{8^!Dm9ssx2k>>~T!orc7ZpQ_bnS#s?fQwRn!LN?3fJ0BaEo$Ul z?c4%yJUVDp$Jhaa&$<+~(N#yS)_C(X)1*q1t+@oSKj>W8)EgI`YGS7iE0?nSq2aVa z6gq{ThMfg_v{_$15zTKm6_UekC6lgruZgEH)A4hdw&+6^sEAJMau}{DDT*eGyt%q1 zj+VRD?&27x?nez%i$}iv!1Yf>|5@WGex|3cn1GE4pdgJ>l;D)196+MWL)3unFj7vuu9i201 zSZ7@Zvd;xaWZ{`iMUA6SPabF!brWk%*N3Z9UY&N-@pt&W3x4NOk~{yU`<8{>Cy#g) zNm9)6+FY0Et6lA4+kGtAKIb6=w;p_<>T`VIn3+P z|Bs^g436B+(==fdKxP6+?;Vp&dQTS1d#NN<$+VriH$C=dE@E!)c4K2>qeF2K zdvUjMJF$LedS<(Oy46-A(=A()%2%<9-jm5>dhZPqK*A(&*pK|c4@pM;@yGA?zRz>R zZaV(fT;0@MS+Kxx?%{z>Y>6vKjLd{5dPwnG*L*H7d2-*r)0 zf5LQhrfyG1#avM9;msaQZg+9TL>Zf)pR2U8l)a%m7ueokhuvz!wSOXM z8bvObB?8a-^$qKAW5tg@9cUi(72~lP$cX!tF(g7+fZjB;G7wEg|7l|z+@N6hw)Q>O zn9he@hwsTk`#Htz+EfPpn{^8W4(mHqFR$pr*PqR_L0WDUDV)$JhSO|_U!wgk=h@Lt z&YKl5%g?6Puf8A?`2SA(IdTI00(nE_* zXkL;oZQH8n#mba(x%J(zCz6~&m~Ud*rM*?~{cb24l}-1wsg6Jk#*Ops{;5ue3+P&1 z9ZyX`o2b6Iao~FfbGhR1O_l(-AZOJy90^Th(9{do!+rqM_+<%)wlh}y4bZUdF%+`) zMQ=K+n(SsqBfdo|24j-F1XPTz_-n;vLyU+Yey$oe*t4#=(ppe=o+Lr_P=CsUuE$j9NoLB zgrVyLA+KUkmt!aB@pkI4(>>1Y9y=9UW*@FK>KHhScYeXS-nfg${q&-@ z`54B<^_+?g*^b7La}-@P);M^`X_$i*WP^F23dql)07?^R_lS(WBQ`}`@>;u8%?xtH z`g)P?^;D4Pa{cg2nCzHfj=b%*PLA~uI@es-w1tnKa%0yw#PXlrJWm>v4D#>?)#?EB zyr`qM&(^-Y+1?oU`91nJJL-)B+m?-I$8`7T4^9Q74kDIfV;F6e-f9f-x=hXmnv3&s zpMKT$jQ_)L4Pxp3HBXh+&zU}8bDP|;{E@!2O3;%|);e1m25zVkZql9an|}jmIQ~K_ z#&)xcZ`kxO$jRN2?#g;xI}td8`{zCHFk6KW*j6wTu5ArJcWS2YcqL|uM5fcM`0Mg< ze5~XvltTrt#_f1F<9xn0Qcv8l`n%iNu3@oc`ANQdS5ws#oh-KB0p`jj;0Z zTN3iw%l@{_AA}g%!qZoaba^|B9)q70VO`aICRb7I21Q$qMW-K~wQ&DusO-VWV`rm# z037fQ`~HjN9B&w%AW0aA2QsM)iX>@xLy%5w$_6G(69@)$UQ}TW2U)WO~BLt*-eI7r#E+vM~?Ho zLOJCtNSnChLy}2lQHxh5PG5&zvezU`UX=i!r(D#=j>5O-19;XoU;zzU%g#DoL7Z}^nrP_H zQx(VU|Mkmj8{f57_o4;n#&O-*D>S>$dzj^!$uS=ptoei_fJg5>b(2#d?;y84QRKxF z_ncd5Jz&Sh$-|MCCZ?-tMw{rBR@tM6=VtV0v@XDw*rUzU=bex4AHQU{c_*U8=>2lM z%Dk`LQy%`tSmcRd2?*(sVng;ge9ACh9 z$7@=2yON@CS&7(?=gP5i*~vSS zF@vdaKWRvp++1;9GX!|9IL+BlY`fJwQlcq7mZ}&E6>z3OCXsS*UORb zT#m;FCJY&c2CIFS3`B`u`>}Jh(pn+^Q6oGgNznA!kkP0>zGxqYMf2Jr zTN-}Euu$tl)4Ja0IziIxa1Mp7){02|lvpp`6=A<*E$EN@DWmHjWWa&9gl)teJz{1R zId7Ks4kgRAMayv`X8y^gU`w1PI zVbdl{iJUT3u60B^8t*Nyce&PAcK0>D&7WEt6dIe86g;f2_s4|7nuxBIEzdW^kwWb4 zM2-M_*4ltLBjA8^Y={Ubbu^iyLY4I23n6^^f<4=}h?L!`L4ICXHH;Ww$>dIeV?oje zKvS4hXnVbn#cfZA@neDTFWk1(v~Z! zl|G`Sw3YOqJ9hs+TLgE_v>Tw#V$ewE;S<-vi4%$C^lvbHDTl(l##qD_(wN70#S1%1 zjX_Xs)4+SZw$-4W%OUzxxk*A!oRuf(tCz(0C#$qW4UdYQHT{l@^wd!hex{4WmaMo= z)KF%9w8Fe$D0nO~tD>GNBA?n!r5RT%}0x&@oL$JuA<4P;zu_YF|f z`{w+Z%dmiPl{1^5ZNI2HiGJpjNo~vFeS%I+J+Z|4Jc~z8yG+xCAUjI0@xEqT45L9U zSiPB`nbsd&=mF}}-Ki1m?qw5hcl$nGDb$K*-ByJjwJ}QOq??WV`tIXHb!Xqj?)Qd|50fr)>aw1jMn?8xn2XCDu6gFm~3ASQ9i-sZBm zhI^JGpvfl$>&@LAHrLE>T&sY`%@2o$9;O<-ZZ6zufVNY@si2Ww{T4p7_#^P(6j<9Z z3DZa8w+1WS*)OZGHG zpgvo%jucgQ!T#jm-0p|Vuk!MMCIPDSUv(qKes-#FTKyOm#;VC1kLz0}F+^$7_G4^5 zz1ydIE$`$~%~_OG=Mkd{scF6S-$Ms4?dw^0om3m*z#;ZOY}1eBz#e2w#^LP%`Z(iA zI8KK*^YVq>-O1clwE9?yPbn|IXDG)VzejRCSi)NLk#H2(<#lM5YrU80S_cUv?V(%0 znP~T#3w4-hKPssjA|qcR(XO{tt$Q&e;zQ`-fpNe0e3MHY%rw*XPYu*`=TWK~&@{qQ zI>OxX?)TW?noK_Elt%5aS=8fyV>AV?vh}S&zDRci)2SgfR<7*}1n0-va~6gAbVRDhVD0pa;5QoyBX1KcJO@-IojTT-Pra|jZSfhZ*=N+c*Kw1s=KAl zi~&y(48XlDHx0~WrfV29FA#J;@s&Ki_d9-@8e`y958K9q$zD`o-2ROsn9a9vDTtSF zVdFuqt(0@PRB7lZJ-v=TQl9SaoF3C|@CHIDxZ~eX2Oq2ZacvyzdMmxjI|eoO72O

    T~qu&l}lCyR4HZ4G_l~*tE~d9o^Vg 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 zꋬ~u#Erh(l!m|`mkzvBzRFReN5d4&nbD5Fk70~}npM*ItQOL&>0(nY;`!WH|n5n>#j& z7>s8<4@m~?OANL#UF^_)JyMOiHD`wC(Un5Bbtkdu=TOOHQ*!>tiPXo*%v55rL%*N& z2#ZG$=2Vk9Iy#flmMA!t^tF6HSM=p&my+6Ij?$J=L`flC;SMHYlw$3iF@|H9aZchs z*h!c80gr5)A;y-Wd`uuiQ;~8~QrEz`WS~{)Ljhrv4RysbiMe1i7ZUKorg^3CbOf%< z<$liENM8(+5K51Wwu~7yDC(6JVbPtKh<3Bre41m+5lALWvNSaJEJuwP$8ap9lnC>R zeAX<&uB;#mlzAePbFtM8-gF5|4}^x7qVO=H7`a0?bvS>~qLu9EFOVobRnFYLh zxp?`g7<1K~_vO$WBQXqT_*z$1pSQ_GWzw?oFr+GZ(<7NkqQ;w#j})#ZFfn{mnF&XA z=9JT)Ct0rv0mSuAk-03rt=LK4OD)e$(LwjJ7K~oDT`(gkR2X%p5)HzSh2>8Myb_cDJ$z= zKO(HcqnzTzr4fP3#h?82bpAJ+rH*G!^WlgWwK5aFs!%317eW#>LM1;ace57bMJlB_ zDRvVOt7nkKyVU+rc}i&%qtY`GV;UkzGGL(M34vsPw#c=jQvvCsB0`IaW>Hq1jda)n$P3YQK}(E?FYC&dVU466&M65p~cEYXom5FkE+-Qy}!lJr3utU#bkb9yA$s*^FPTtr!xRNT!Mx-FY+{!^J{c5F!1%Qw25KsKciGjHJ4h+$53) z6mj+p%xfw#Q(2T{x2duP2GUY_b=aNBLS@OghA-d+^b?4fwo`0LHmHk|SYeSU$(5F? z1rQQuBfkFsWg7(+ZJ6VCa>6V^1WyUn<;OIPqAGBMvAm9Q$3js`>6YuMPuS)t= zO-kGmyAijK(v_ZJV_VAEGLu1jkq$j{G^-Tr`Sr>riFi=X`eTaGS>A-ozLa!fqoEC^ z8YWrcrDp`T!~T+kq}ml`ek6-eUKU-O*H?4!yUGl$rr9P~Cwg)znr+cZBA+Zg??I6B z3SXJ>Bmt+wH( z7ap%V?lzqbv0UNbse6*0FPcpj73Ja1a36v}XvAJ6IPgp5M} zJ%94wqGU^-+@nJ#) zB7@ia`O`}Lq4qfo7xIbRI*y=um)^kIIn;%%j=Iwr*CTVI1{K*XDwk=HS>FCcZf30; zF6Oc#RUrho@eoEo$3;Y?c&0TGeKePZ_!9O1QS@HHcBSWe=E`~J9M2Bt?2|KM186kR z4WJ`CFiIw=RH8ics9fc;$DXM485GgVVF3PZ`3C0nFKF;iscghps&oSf6nIj5D= z{JH_|P{6_7|N7VWz3=nnu8{{;?-piL|FnGG^G$yf()MYqxZ0|4ci6ZLH=TDj+g-CQ z6CxI8Dxvu5(zS$ZdV2OS^gOSAVX67B>7YdYh!4Evf=Ym>+ZVQK{LE@Lo`riQJ=sdL{}bY-aRfqd8gC^F>Tdr$vAuk@G|gy8tyNJY;4fio=Os@ z3s#b53sC2Tk&K}*ZeW5mM#knp7cG%PHqAT$%j&3?FZ$HZ3yrTP$P~i4x6k;`IDVI% zRKwk#JYpNBT9K^vbXLjD^k`3D#P{%95}DwFSB>&2vpbnb*vf6nP9q)F;-zR-oc(MF zYh#)TR1&>in0`PNJVvWY+A^b|$30x}w4Q?Hq14o!hl?ocNW`GL50S*tB`L zE$tb6*;4GIm58;D|ZVG5v3OEHVXw&3PkVF^+h7NF>~Gb9?TT);gZ0I~AA z%oBr@M?{QEqaJ{Aau3XjN(T^E&b4VGt9p5{YY8GYm)kyWAdo_9eRC#+0XmF9SYjb1 zrc+>^FrtT9+Zt=}W}tu%z?q%t}WDvBS6=!H3~uI z)1x3Y^-fg0`DXvKg23eDVy@gZhCdG^if-^qWe2aUi}@o>JMa9VJa*K6jJ8q5v74#v zv@J7a6Js7-fF;qkw6Z(InO-8Z#@{a{tx$9;+wU$nEDu6sb)uVL$NK-Kf-7e!98Hqsf27P1jaav!YC($dsneycjUZ|MaO z^1I)DAnnK9(A`m*n)5ztxW(1iKkUrqtlb|Q-Ti96+juAMrN+B^)5F&vQsT%GGUPnZ zS5k6>@*nOa0G5VX!K%!8{@c;)O770F7A9sE8?Cq=ZkWC;DF~^8y|(AIW%$RTR`JqL zl2r%&qg0E`WM8xDXEFD`lNv9Qda7IOx%<=4T7&%ne?D;!gjv?jms9(@BAaW>W>Sax zC-QrO)Aguu&OxBBY@z*Rt9%-lY`1)%J+fUp-Tt^*_+{tCe=#1?X}R!% z@K!EknNGs#<3sgqQ4+-~r}Evl_2CBreLU9~XXQvf(J*Y03oLwwdmP?LKV9d?&;EtZ z`CHV)C=&ufEFf+i>x@7oY5Tg~N~p^}TRaszLP;yW`I{Gcwd3A%{F6^25;!UgKYMN@yj^P%p z_j3f`yaeBRE{Np2&2uM*|GL&9es1NFkt@!8=v``KG~i#9m#@oT_B~9H3w`A^C+1Ch z&NrBeO1Rg5q0XGY=yYLp=Tv7!cquO08pqnjb8g|qn5B{}{oW{p>ZeNf9`%ffN4(r*O5fEUw3&re#o{5mS!@TRXse4Nun6`!Ju91}Y}t}JKBwGn zRd`shk+{()8Cu__=q9y1==DkOH$4!+Ir@STXbkIyHGs;^BBq%{msi!c9Vl3pTtlx8 zKSx9vF|EYW{XaDyVM{(N5v%vfmPB`eMhtwq$c(iO4cJFVF|mgT&M zgCcBwOMj#)y3}kB`(tsAWBcXqn&8qJ6OeDvOqHqf%m!1Qvokr0eLj1v`T}mhgO&B) zdy;dn9wvgAeoXfZT`;CJ?Cx4$?#}AF=veMm9&rtMbx~#NjnN7z(;cO0mh=dMjt|;g z-+7Yf8jdi^Ga=DhkM&hg)5_J`p7x$wf^Jl&ewByJ${$Rs3tZ5n(+_Dp9%3v;V+I}?TtEa2_#jexl;YUWis@>g% zT)x$~43*y45xY=R&s7^}@9}Ibqq1=GVm)wBZxrMVNn}6}kpOP#Y26Q@I;}c%f1S*t zc^u5IZFp=%^l55*jfx^-PIZkSNeCK&>wS6vK4BG}C^Qs^##J|BsxF~H>Qaw}UbF=b32ptTA@jE(N5#N3)-LN(3VF+kE+fr!}4M~EIO%t+Z-#L1=5XyMsrnK zp@IrZb#Oui|ff|c5i4fGHRYB{FVDXQZ(4rlOgvli1!N3M{ba!O?j zqt0hkq}17R%J0OWSGtZ~?~(Md203${75^&46>VPFY7cT{9_@Br{T6J&*055cwe3IZ zDDtsM*5-~{hb3S3^gjPyB>1ox?+pSO@BX6>=5hucEf+Nbm1J9R^b5_`KjxA}A^wJa z{6exHsO%Vbt?0mG#rQmU&YFhQbsH6S*Ja^DIV*IN&TM)Dt~3h1U2BVsR&+YdRvyBw z({FN1dKqZCnhv*t8Sw*OlyrcSc>CjeK;p1va#xSQ?g!n**go6MlmQ?Uo8iam6TV?_ zVTjH5o;K_h<@xcPHg9X*L8!uosx@HWvARr~vrv1Uwfbg3w&m#obsUd?%8WJ5yPgmg zi%KW^VV{FCNQ>L6&k5uc`Zx`zJku9V(rr84@vorLwr8wFiGtAUDlUqS9yfM}-7$w@ zJj0heJK;1o?R`IUgz@X7K0x5>&I+X|AR>8DM-?XBJCV=!z?*FcU(nOE+z9vJkWaOG zxAo3EawtyomOYn4Y~d4wh0E-gbbrb|BUv{LMg$sdJ^JHRbOhO$xud%_3*`Y-N80wb zQng=*3=y&6rq>GICQFwP^$BLMVjMUuj` zR-G1+9t231WYn!SF7P4G$t+#N({kk&$n8xjBanPbeL^@gK8J`^LpZU>&=%`98yZ#} zb)lsTG9F3S2@B(Ot^l$>Wp&k?c|e$VoiL8jlm-pobs1*LwG7*jEjB$b*Y+hJnISA$zJ$qan})9D_p1H$X9^C=VHvG4)&-LIp;3p<;4l zCeuU0+HTGz+J_|}Oqo>U=hG8M7ieyFB^%j%Kzh}I3)fxdq}Te)gq%t%B7N3a<|o zUQ_}BsKIIK^ts;DtJr|t89IwnupjKj*@X|-V)e_m@1#8n2~2VlZNvAMZJuMuYA;&r z&RSPo$7|2~&kSbBps$A?KYt>;oN+yKftv}5hKVojhfR2Q>?rsb_6>RnY5rN)R8qHs1rs3Klkx$6Ndu)2hyC_H;H-qg%o~ zIs(3CC6DWDxaK)R$nZtxZym-4S(^vNmSnIIWlkPm=@4z8$c_XDC;P0@w>?3LXYg8wlcQ451NhX;2LJEolCoSNfGV@=59TB-WUXWqqm zwJ&mYv-ht16Lm_HI8Wy5*!9H4D{b;r{Gk~%FQX8rkAplTN#_T{eyQNLZ7)}uLT+|WUTneTU?S|hs{`jeZ)b#`EzNLbf`(XI z|0?KEI*Ehbdt5mabiWopZcEbf+D?#EV!}0RyWNaXl}sE~+?-`Mgaqvt7+ z?kaD%>Ms!H(Et8cGc&Patl{BqxB6u*u+*B%f0}-(^=o-DQ2&1hS&Z%TpkYoa6|=!1SZJG%h+S4_HPA8J zFgt+Cqx>jCWsd7dc(oSH?WFv~nE@u8jrnRaZvj0D>2Ws;7KZH@Kj9;p+R*)6t|+RJ z({Gh7WkjSI_u%y6z`gY(Y2rm*pTxGSo=K%4;W2 z35RdGn;SXnNyv{|f#j7SXiX(2pxC(V9L!Jj+ct9_4#rECphxS^7tap$UvwZSYvye|mBbYW0|-c|_7$j>4lcjJ|)=Tn@hVwsp;a1dn{Nd%bXTwwZ`s8-tEd zUgl_;CIa$HQumMm77(u^$uY+<-?!+A@0dq>*k=}3(i*KJRBISPH1ps}JJDnLGW^V5 z+M;C9*yzN6V2{7}@2Ae+RqQzrHrP+j9t&HI@V$0Wvi=Z+4Arw6bd9TYm#Kc2jFZYCPXO@8`BYo#*kK>))SB<{ny|xI4G zt>e(wARTeQ|2ja>-j-5m)_z8Nj0Sgcwfj}`AlG8Q!UmfPwq0?(ckg1m`{wf}${b(O zrSqVQbenA=I=)n;VEF5|Zq0eh9ZJa#QTe~_CB&Lje#*T^Idai618v(U4@%#7u4yu@ z-Oq@6i?ZdM-FAQtFBM*zJ{6We4>&)!o;#yH`|IulLjB*#JF`EIK4SnEb#Z&IQ#wnX z+P8tD;=nh%375hZIo|)$+d`9hW~v zYj;RlFx%vjl(k7F&40Vgk`gh zf?p69YLnftiDD40X{L&R|8iJ>6w#p@Ot7Mv6yG!PbxQ6V8X=+30O1-5jxh`vLL^f$ zS5weK7$T~EMXj zBTR4+l+l_+hkFTsL#@OZa)R`pQc=hN?`$aNlF(7AQssBspIZj%S zWWHV+Tz@b+b^XfPlTmMuaZ;)E!Q;WFrJrBO$NIq^@KHQ}%LFtP2gp$~%y25Yj%Lb? zV?KUcynOU)V}MRDJ?xD40|jmyW4`n?ci+@W?10k+a5pR_fmp= z>GBhl{Ca2O7;8VJK9}H%VeR*5K2d7^`oJ7ty;8R^AB~gCr*)0iW>F978XlGHUo&nr z;}j2n(;}jA|7bh(GL`=t=*(dCzpEb;dy&C&19_vHo3%FIWpmm4fEqJ+K-hbmuMSh% z=MSO%abUpitm6P*5mUHV%LWEcVpW&JGow?KmX*6Wc$0b zpX7R5F_3t6d`6qN>mgJ4>CHF(CV0vE{xqBkCYRLJ=rwy#ML$=zMKCXQH0wf^pvRjn z0=jEv=&k#z2wqB`CT4~|L@)CALP8eQGx-8qJSO_~3*D&~%+We!g=MiAPKOo; z;r7+?5Skt_CYhn8zN4I{zpG<%rrj#}Mc~vbAs+;rj)D+IQ$P8%`}GaexN9(T;*wB7 z_C1`XqAsu?!evAex~Dk9FGSBbCEAU^>EUeDQ>lc{LyT@KH4V4>#u%KUx!;IULE(DF z;oY&3&NE4mEo69e)_-=RdqM`?$xeUX3es)NJu=fKLc_*>E%q*E#q64Y%dfqNp0RhK zM}zuQ!HfSqWij>3CK&Ao%K#noV6a~^@V#u+Ern6A?^ktqYoa`t?|k5eETW(u(RlT{ z4s@4g@OYQ9GPk%Oym+R2JsLXy?`l3KUI1NWZoPMmvmv|Hwmp6@T# z3Z`0fwGw71jGo*{5zkp_Ka$x)vM3O6_xEDqaHnJ7$#ddoGY*KvTrwLuH7DDM*P>Uc+T`BdES@2K@Kl0CmU3ewlV?MQtjHIudj3=o0Sg0_!r$*c!?*L;yV&J=)!h<*EZEo~uoYEHb; zB-&L861@1DRyM*#8XXYjP&S>pVRnB@`Ef9(l=a-9yCJzmEL>;`cR(8wjX{g;=tyAMBkcl zTX9VaK)r7Fp(YxYeFw}?l>D(^on(EMqe1*+zaWMg7~K=0MY{L}V_@#TYtI%5X6L{9 za!(@h@(X(RX1UEb@dxC4mk$Le`6RK8$-70iuKwZeg*(mCjCz=;p};>Kdd_y>+@#s< z<>0NF$!wsnpuWlK*&(voI=YvJl!-Lw0tP&5?o&?O+=_@yzRnFR6x(d9%eHYzi=N1K zo13iWrxEA#GxCVr$@=f6z#@q;bBo@2WbPAX+LQ2poVk2FzL;L*`!{PJoP>||Z339@ zu58}D>i;h>hAjwbV!=x0iPD?;o~!TN#m zVz@tp-kobQzaGe6SuPH=C3{El==~yHZoKGTk9NR&;{?s^sol`DFWhXc^!D0;FpBSx zG53Gp+W9WykCA+SY@waY_Pjy(HuC*#szdc-jyEUKPYV0TI^s^&+GS3z87y>Ub&oej zku46?g`hSTb zg@c{DQ4_uWhf^qu_X1-&cF_0Ukb@EP<6`Q>wQap=o}u!-#ZL|S@TmVh-2gz%Gtsi^ z9R@;cfC!P`JXN&0sg8}wf+plb&qD(=b!xZUi(lu4@nSD{zwlu*5=9F3A@AwKipNBn zOLPYY;ddg9X)dHH4Mlyj&sf$wu!kT1BZMEcYiV@QBTFb!93$`0~x9ESmt;nf@`^TNHS`C z%kHgJ1pr!&u@0GprJ7zKV(OIaW&98bs@D*uMLRbw#pc&xf>o`GX5~yrrrjgAjetFb zM+Pu$EkccOo$`4MLREZHmK$*vpvXf=W((WD)<4a4t^;UN!AR`q{lpclZEk0EO{1`-@!$- zkus~yKj%fkA9sTARve=Vg(zEQv>>$1XcLCf0q6<}6WWx$Aw3scd8N)eV?2-yZDD43 z=uK@O;r1l%cRfnjWCnBby=WyeN--qB4~>{lxTEe?SovJ^cCB$ z++6}0l7=v9LCddjm=~a7yXSq6K-y5`KUYxwOi_Qs&bpfQt+A2GUB|_v!e`9}FtP(R z>kn2u);L+|iCn?0RL+(%oNc9XJe{JgtkL%pY+?DO!YR^LuReq^T>DnLSP^Pye=U z@_{Pvc3#(OTW!v5RSa2#si7)*pV2hiYNczydpAcmbYw#?8FbqUn{ znc=WupL;90{qsTgBBC|!Uj4e9iX!tb94w3f#9y~`s?JXMsru9{3JM?j1;e;LgAi)b zt=6Smv0Wa$0@8I^wb-8?V@iK}E}j1{EfX0l(T;Y1UEku&3(k?N!EkYgwz<+0HgEbn zSas4BpPEW+%eQ_?sWLGYchk2caC8%PjDydA)!sXMl*orFO*8`k=x7J;vt9(PHEgg} z4q_J2ci-%aK{rX+L(*vPpr%6lzy&yr9lKGi^@n_zVA&y@3FtvqbECfSSYMh*uuK!~ z*=1J~ZPjwlX$$@&sF!lNyr1gJc+LlkJW6TsyQk3pn)PPNX*Mr~)>{Y1gJV0^dMm&M zQ(CQC(q`c2+`jmuuhA+J;ToT=a8p%9+(S0Z5zVAh5r(7F> zt@;cU8gs%FKKI6_ zN_6Tip_1ViKftuBe~oPr%E*m(2Y#0J^oOok?IQ$^{cQbXD}VGu)82a%Sxq)>NAn+T zS_c2r3qt?yMqx!-+Uy>rIs5h?9Zj0&?>awi7vIf|2cGM$*aOJ|T!=#~Kd66{&Y-L` za`McZj?vE-+U765U5y(#zPz@+Eq^h)e)#P~`sByt5hTB7d3WHh|8My}EBlWqUhd7Q7~-unBS zmq#!Cuf^ptU2NAnz_ix&!iwle;e3#q&sTnZWfoQp|7bmSra|;`x?H)&r2Da|Ew*Zx z)2H^98rX1<^|kfeSQbd5>(4#TMzrJ`#gSHQrWii2DSOYT8;z$m`iCd1{m+ztSBZpx z0`GAob;GLa*T*Bb+WXrs=iKJXPs-HS=U+ERkEZhDl$I$mDRqv9_g(1nUeCV>sE(R{ zH+_R(@7{c7)E#}(bt=6jT&UWi+e!3~zIZn0Hm^L1ZOyMNyk^c%G^zUG;J7WP;4hD` z2UA8pb)IQQ*eSfE3BZ!{o@ zL#Gyf&IxJ2u&P1M_6=l;a{bl&6|)^5hfftCm31Cy)fMEPATkV@nk&ajc`V}$c<(lU z*BKmwy}_R<;q}1ac|1T3QOjQu<-zx3H{Wc^C;Pj%r{wdSt7nY$I``Ai#b5fKn|(g# zpM3T^esAyXi^(t55wd1%44oN4duH}x4?BCa6cFcMod0p4XkFZSmpK!RekX`W=>sbTV&;*^gY0P@j|Y)WNj{K0&+ zTH#H(11gG#9wM|yj?U3nVfA=&xA9z@wiP{5(1@wh{~32V2ru(qZ#rPp2JI;)l|4u`tk5dFUxZL9^@vf)!S=cDEFVO~Ja#7+OPp(pNkPJ@h- zWI6?-aSm?$qK2X!hw)3v%kw=xXKysn=9))Iw`soL?*)>1@_2L~#4o4j&j$j+(a7D7 zVfD^cCl|J2a3^*hJ}A|iCk3{7a$*v;-lvWTR6OXu4NaVPwUt&Xoc40?pPCTE{U4{7 zG-X_d%alyIq&LXFB=rxJNAKA zrTUYTRi`C8lc_o;2d$6j$hkAV-8Ut7I>2Qy$Z@RSpsO)Hae>C3adn=bv4Sw5mtO$W zR{IoVA1i$DyJ}yUcP*LjfDS7*Ilnq(P2LT-JRY@U|JK$RdBg46ar&3`B|qrhb&}6& zW0KHtANLKqmGB%bELU}sZEr|`6)7O0js7uZ`^=A@rmU4uQz4}Cvi@WulQU+xhu3GV zTndK@4ch^Esn0$zQd8t#;@>;IHXbexO*AYVh5r6F@O)Aaxy|S=RTV0^=^kxEX}&@o}5ef>2>QV;|AfAQAE^C8!-U zHKvL~u7;40dSJS)wxXaNzxH6jI|;HjMYS4gdCKu_!t-PV4#fR%-O;!7gtv8I>g1m} z>(3wN1D5KqTXFARDTU1rx=?S!N-tP++vw3ED5$$F-O~mb`wm)hTknxZedA@JYOLt4;WGMrm!n^6w>M%Xo! zMk#a>uphz|76h)SCe~T3XW1wBEK9ZNmpueXUhO#Pw_Ej8pERi#%UM)t&Df%khh#0Y zEW(NeD14Tu&Gm4**G*wVsyp_%$`9`Dn^-_da$Tm!hq9J_xNdOmmxoVnWjBA4 zo`y?nMK3jCAN`j!y|u5dC@;W~YQte4p>)aRNZ4`=ldlv*0C1;=MRnMNs(jPu;XVqE z2i-z2NPSfIPg&a6P}1u>Jv;R!HXd>pX%D7(RlHU=zA?OP;|?qfD(&m#JLos>xpQ8` z6P@(&{S)W83N9=iX5t0rk>{#)0xYo{miC}&bna@Hp$WeM4%>wm!X&Mh#vSY=IZ&Cf z_3TT|kik@Vho9_jv)EX0h*d31jn8h5=2Ru#wxW^!K`-tWc6pNkg~XEC4nn!+h1M?T zS-{fFG*%$DVI!n{G~A9Vx}Cn%m(J`F^z`sxUf|T&nCX1bzZ#@FbHsDJ)Z$o+a9F8T z=bGn{Qbl_m)%v@^_@pzw6@H55P9OM!PxV*Y12OU#&*y{`6D71ZdJ-vQ`kyH|e$QZQ%cYyS9V)TnF36}cm7W_0 zU3jE*-yKc3b6U-`t>wBO|2Mx;^s>RuY^ihv&AQIpd5hwQE0caBkoO%xu&B7gS4ICe z7&*JafGwjo4!c3oP~bXmujvaR*;x?QP;vzGdXMpG?VV#9h1JCOyW3p#EQTOV|$XX((xa8{GT5_MFph53{F%`owGr1+71{ zf-bd?gZ#P31+!Ncwq3Z-6+6pL#|yYkeyKZK$qXcyyG=AWqUPBRs4^~@>xOV;wDlz&3Jx`HzO{i>eACPiR_)646tL& z`w7^lF{tYL1y84I7ts&>;&Ki@3fE{){KdKaT5iB)rtMAYV6)InSpajfTJI@YM;n8q z4N#_dG<{e`T==3B@-b4Wj#V7xO`+o=(0Z+aVq4zlhP*NX@OAtpT2kwXaPwf@% zS*^NUqy*)pRwqK1Xth0>#VhB)yVjrp_dy1eNH}L-zE{}WCwy}Jpw12tyO8l_hrR#e zZPyG&4%-oZ*S$X;_^?FMM8j=r^uOYo;j<&9e*_Z+c0+<%6F^WdPFI$s<`c2`gJDfV zDn%`seiC%$*q6=W+XErs4+ShtiU-K-KW`pa$6aTcMu!upMwtZ%pP_#?o?tlx6!?N?XjyGU1J>-B~sIspbe-p|q+ztt}-hhWqjzN%CK zB{Us9RKE}1-e_RD_7}#iN!cxK@+^d(|NWaO-{i^BkdyzUld)EYnrHq{LB@5MguYXw7?Eojy-4ag-{IK4Md$~JOVx4pvOhVHj$6-EcB3E6Y@=et zz*9A73{ky=5@6ZOzP00W?|x+Lgh&knqRk@#5Gqmc9moSkNnm$3%RIRzB!>H6cr&ac zwRY9hJ%@kzZA;Fz#XNiCyM>w)=#;i;EmFUk-CUoFUFr@R6L+i{^GUERFWrHA8z^}^ zBeaC>@i8GFqoaTQ-bjc!zVw8TEBo4#M?CE0)7hOyaHb*QOg2 z_CJ_3*>eZ!QY8Ze_fiaY`zEC&R;10WlY@p&&P7(t>x&#REbpxO+|7`h@yzy|VNDiB zWD2Tz?m7kN>a4Kq$%hOUNIw9$rORS4nzxx&56uVTwPFT<_CeBUi` zx^F&z&;=Tz)_iaXc2f%6gXwM6Vt3I1cfyz(ys5oNT8NGH#=)s$5ZJDo($`7vW6;tJ z^a9#m4D42>$^Qr&`YKzRpj7eS=CIfZp+hyVKJFbnL>O&ST8rrWijMl+c7q7vy5qsb z?BgYiJJ)Sn1bTvV(>MAfp(?w|?WCv#bVdeLM=+t@bWmNK_sa zE4?-dZ-n@4kN0AJ6K+?>$7|z3_KpYlh`u^AdQk2-P=xj%Rf<)Ws28&C>=BG}f7Gic zuV~-2H+b5`znWcRMu_|fH@@{@2y1FNaV%v6-WkXJCY_?mZ4aGoJ^7IWkFg^jBOH@B z1^kmD%BEYWx|WwBG9&) zQ8u=NizcNT4is#~^gMTV};`hTjs;7=0)Fah{&-^c}Ox>wU=6_h( z@=vwP>@vDfMjv+D`kv@&{x*HL@`8SRZfkiwwcTr2p8o;z^M*o^t9Z~lKlo&bkH9Lc zc4_=4JJ%hrSgJ@k{r=v3!%f<)fuJ!?Y`H`$|8!awn5(wynJZs;@K^3VVf?}`b|U8z z(BD3(d5^4tNZQpL+iTVre+U*(S!=uBlBYtuY3W+d895DqwZI3zx@wPnEVciKG_=PKDvH#WsMDK%P zRobX;A=d1a`37-$6yZms@WM>1@b|)Rch^4div4E|vgxvF4-QFo13SKx99DQI|np?Mgf|39f^5C6#}-;_l7 zkAR23WnOd(&Vk;V^F0n}NDuFF;; z#Xms+aLo*3Fx8`)d_}XcsVJe_hvl}?qk0pRe_3lK!{vs+IQf+OpDB)ks$Oz?2fO{4 z(3fQ#WV7!e6=QNup#U_&{AKReGE7Ts-9bIf$ z1E%hM11TPl;w*DXKe9{W7kF`G(%;(&-_UPrHs+{ZN!AKe;Ri@t{8BA>!4L1IZRxg! zj^y&ZR3`g)6Q+u|j!dDX(Q|^!4)K>Lz+sGa=oUgLaD%AZNK54bHsV8q zd-0f!7-505Cb9R-CYzr3_t{DM!Vht-!I)BR;+{(;l7-a1{5Dy}0=)&9T}zpJm4pUlR%rjkAz`Gqw1<~zet z^IW7OTn1-#E;MM5WN#&uqxuNx0>yn-_y6v4ZK-g(<{BP9aRye!EF2le;E5nS`QGDv zlrF)NrTYI<^xm^6?tADuOlXNwwhFZ9uH-^<)YrG@NHo@#aNV-jFyyWnlFweB$bG)cz|P?EZ7 z*Pxqj_o2h{YB~(R&s_7fxUJcN6T1EHwx%U(*p>R7hg>}fDmIKRnmW=MCw@Iq_kx#` z@nAJ#?~LiY!z<4t-O3x)Zw;>c{6&Fkce8$C#x2W=4s1LU$s=hp8;j!IUSlkcDjJ{` zi5mf;*-+c#o;>SArG>iuP@u)3Y_}*Qd*$IvueJ%}o1q$j^UEVWXdx|;vHQ}eJIc`L zU=5OM?D;dFQyvA(UlzjEW4h2P@wW}4P&+5FleLyd3g1`*ipCrJIv=GPo@v>Wh0gP> zv(3-vtvjuXu*OHNdA4R{>6U14CDxHiDn?1xIR(IEUyC|-x5bw~zV0fNtP{pG9^6b$ z>b>5F%6@i_s0};uD;l_l1#=l)s>8p$Yf!8Y41PEzFWs zxY*QSTYRkp`Y#M>5-b2I=CM0NQA^1PS`CP1*mxj1dT@$F2u-7A6w=&*tMZX$t+i4KdY8#Bvq#c}Pgfdt#t3nRz z@d&KwI$99R4f0q+Rw%XQN8Zp9G^^>0FLF~}&4f|jL0E;bV3vfj2Yc;^3qR_r9aY-^ z>D2%T>S|RePk60r7Bbq~=7b6>m<}k=1V~jOl9?tsM6r1E`fA?nYo5(3Qr}1Hv$78E zhA9J>6M4yIt{{Q+mOj})jCi@HFQIV9$>^woNJw?kE*2QBMN!$ki$oiPfFAY=+UWw0 zW3kuE7kZSAgsPnug*Em(DQv+t{1!&K5^feqZH^5l9ZUKvPSegK=4X0pd?lu*?H#!^ zstuyjGC#6v*30y#&iJC^t>1mK|IH)qtD=+r&Uks(5Qu~IqkwultyXQ#ZK%qh!%E>d zu*7SYP#FHlU$6Z6SCIHQ{tsz>B`xk-4ZHumw>%FQlSbN{iLw6^w>^<95}JQBf~M1= z+V!luV=n=Q&izAaDZZQgzJ_kLYsM!cG?1f~N^xAas`L9OfgH1c?@(twTh{oQrs3UC zpE@dz|Yu)loku$G+co+hZs#@sg}K4f(9n$r#U3T5*j6-QFz&@oAGf`MLf z>Xqne;`95pJYjh#qG3++1(qJ5sM@J~<3Xk;?`tfFWy^FPuaoQ)0$6V^|4KRxV&4DO zYT1aaY%-}@5DA&7{^6wAKIX=)iK+T!|T>lZfqF_eqq9NaFo( z{jIydTl3YwOo8(0JEeqDa28h3-l>gAp_OI9T6UjD4eZx`J{5xXowHB2GH~hDCLih# zjJvOEt~*e*?Lo7n9o>+QNho$4YlYGyNDSW@N0Og!=w6e?PCJNv=pVOin=7AJFD#Nn zSHnKmu$ZcVt?!o2E}S$AGsoR_)hrqJ^ttzEItu~yx%l8g$WWOOCWdhSCugxuGj#lX zaI|AB<>a4)URdw$aDmf)le@)Tw&*N$Qf%}tcbm__&~|*Epr@~qXPQjIXzh4#XOtMx zErsW%u=!^c{||X?sf-AJeRyfJP)0A2|;DqaOP zs)^V*Q7&##+TJNS=I>C|poiM~g$`=Y~rbed*oX+uKf~ zk~B|tvW?Q$imQ23-2t2r#%u=^h-abd=mD(nU3*zhT|I;=#(|lRQig}TPaW7GLt^sC zqU^-mqC(zqKa!Gi%P|TRt<|7HI;5{!WJ)r$29IxFPiP{I4OG&hbhwWxD{;@ILZGYh}(H zeC5F_gfH&QnCfS}q-?2!;b9-YtF!ARugx0{6zHeWP$TucoQ$E=JN<6@%((7Fuc~#C zl~TKI8Iz=)5n&qt@>ScIu2ipn^J1uEH<-rkl>r^F7#b|d*EF)!+56W9I6OJg;HM^o z@v&R=c)?2{jVD{M+qV3f*9>#Do zv#vGnVq_H6SNAO%x|cI63LC`UgLL`<-{G>bRAi_jQp1zYpNv?w7(t`kWKrwQ2RRFk zf?5YcH>$dtNg||{cD)1o?Kx2#=)lgxj1ZPHy#YLku^>%m=$j<5V63qOLLl1Sk<(-# zbrLnwY5;UBOw>AxPis_QRkhRrnP)&&yWs-^XD&dnCZ-L@c*i(sw&V)vkd=s4&{K33 zv;dYw46qVpHb_Uj8Ea#RNoON7Ek!uQ@rKDQyZaWB;4=C$s3cK6P-T|}Xa;pP2LQyz z>lo2kA4?_<^`x~mHW=h7rc?J~jAhnt@3sbT03kC#yqz~HN8qOu&xxIo$Ea>SZXsD| zaMZOPgh)mNy;Phl5q)zHL615^njs~_ca;*y)G8u$M3<_VHzHUcnV1)5bvC?#jK10`JV@jiFOs^Xi z1|xD?<7?H+VM?nd^ae%Zjk>CYHe-U#>CaXBB3^0*C5iGj+v&bw=&MBzqVi3F@!`5& zpTq%WQQJ4~I)Uz+Xv8sDNElsx@P1KiXbQm7ayr{Fge|#T-F!rw!<7|%U8#LHAv*Mv zhh5oY$F-t=OTMdH7+DZ|X-_l!qQb4u1e*_-12OZNOk{&lbF-t19%DZd3D^p+0a^%g zhwAXnb-3OQ23n_@c(^7UH2m6RxA-=9QLWk+w5i@UZwn?obUzGa&nvLmFIar?4TRQ!n?!z+F!62zh!=T z#X86khlDGQW$CT7<>m_7jK=++3H8r?r#?}e!GQ1XdAmV7Bg4Yxt7KK9i+p?m{KxMs zVpn_VTu^=3zBS&M!rykZn8Y029{XyNuIJ?gINP4OYRi1L>01Q8LdDbV+}}PNryn0b zp|HByB$iT%KcDnQ_1#N*?#}olxA~F(>Fj~_XWul$PMIyImUU&V?VX|4uO^9JrPvOd z;CSHp6&ibjPSw1le|V>hD1mY(?CZeV;frWy)D2mb+clyY$FtK72u=M-ZyW-MaKSmO z@TS^SH`y2_D~49^C}AIB$$6&RHHY_ud@e=S+qL&@EFA9-L z%UE()0>3W5etJuMM5Va-CAlH5Vu$5L-`Q^zObaJG%QM;M1>PgFkR4EfHMXSHliS{)=wZt%4 z<{F0Zt26)EHNgVX%iECPN1^nYf5EQLXT-tCG9~Vgc}PQDR2lVZ>M!C~QXeK$vuCz3 zO=0`k=-QG*#ewCKZxyNw_18u(7jIl|1VGuWqAsPt!`O$4jSIIa{CiSUH{eLS-fPrO zy+B5}!rG7(c75j;owcFGKAP(l7pSR+zZA;WbQ6`TwIA0}@p>I@)M^>Kw4+-*Vln&-igz1F(1DrF}u7!@NaWxG;7t7b6U z)Je5g=4KB5q@p^`nEd@RV?aCm)%VU6v9hjOZ5!@XsYvbDeRWflhfd^1tJ1vqhXW0Q z(1Wo}7qYwsW3? zsWJa9O&d?Q8~&VLd!gTn!lUlzSUqc7m9%S{X^+ForuhI%76rP6_;_{*)%g_lU_?>(a)idp70ZoR2dJ=}|6Un`l>iC72P*sqnP zVxw$!*1Z`TuicUNF?K`$TYHj!>DlAIAF-VMth!r1$&SMsBavb2)epkMZ9vAYZsZJZ z-fw2JR5T%f6A7Pd!#19_gMc)>eMA<^w*9Iqo@AiCo&H#rj3EzCes9-&ukt0hdDH8g zZWD<@{iHSjGT}$xyEZy}WyHXxnz;+7XV!JKm+>>fI6$_4wROMSBk(bkb)}*k{FnU` zQ8m$$J`Cmkr>nW0Y^A0<1Q%t_Rb@DYT^d8ba7_Mp?tIQ|&L0TfN87ib458U{c)u|~ zy*7if0PLmbsZKM- zx~c)I#{+l3XajY#f|CKUY${7R#9j zd26#wVC`1}24qp%y;Wz*o^M$DE{&{P?XJ6-_M{d{yS4T+z|G}a7R~B!CD*OCHQbd5 z%H)D@^2JpDB)B-zoR`tm?!30n_N-UEr@Qo>rCw50YBomf2P%`6hT9vlk%NKrsA?Q1 z%@~v6$U!tF3N3EXsWL;$jZI~r71U}L?1o7~*0#5)whkK0ks|>C{+WDGvHyeV$OCI4 zxHaAASS(c5)1mS*Yqy$%J{@t7o(fPq;tRGJk?{IZQDw!UAevsw9H44mJX@R)E{!(Z z`4Cdh+ltU`YB)eEM}wGw2P-0CEA#Q-WgBhtQh(5i1JxWbyufwQVCpH8x~llY8*#q%~4wIFBDzyS5Po8e5XSk0dK-!)=oM z#Gy4!yUc_6FrQNt0lJg#@pa2DHx37*E@mf8>p7>n;u}5iI-9-YR1KX;>cp|BnW}Hy znzbt&Qw?N(^oVUHnI=h~h6`G)QwzirY@2MfT6>OoOFM*p0C;ae5{@T>{;WfF5wW>{ z@?~)ypE8xj8roI6jNLPz2ejFD$kBM)r?AmnXY%j>f~{k@>gn?9@O3$jl#AW40UJWH zDZd|DcnY>ppg@OLcOP_;Um--OCG28$@?eWOG6SPIq;);Ok2EL12~JPa-8C&tqMn)+ zLK(+-%Y0qml}NzS3GLpa4Dz7~^jLLHxjg)5bXqwrm8P!_v*kBVwAdE>L=@EoQapR~ z+IDZ{^s#;{`AfHc5oTisMZxQ3zqO0+^3BpH5dN^lMooy%9~Irb9#?4B5uJ#t88g)$ zy^9P*1)+4cvP>_Vod7lL(tM~C+6a$pCqA}JsXM`AejN}Uk5-O8Jyh23+XEPCQ6oXg z*f%zAvO|Tdsf{sr0=teK?gJWzH)Uv7BQZhG19r^a0fDqgCYH^IER)PGAl-LshsLo$ zZVP&E1wos<=8!7=Eht)-sniLAhiwtw{GC!;^DcHTp3{rR5#3Y&@+iudH$`3$BEtpx zxO;m+@i#ZBz5+XoL!;5PR{SIU1S168>Fhnv9uLv z7rP-lsFDyiN7tZ%9Vp{mur=J2qklA;#-q*suF*BV+cJnzA7P9&M2YEYbwyyTgqN_Z zEaU_Nm)fBQ|3a#@f@p&&`fH$-7X|*AnwTwmsf68W!2S^wUaANX> z;nB0T!rtb+P8>DkN#h{RPU1^KFW5b3=#5{?+q*HYofq0S39Du)WmKlqR@ACKam3%V zBd{k^*g#3R+LtQ(T3hF!c-%0g*%Sj|3mKQGu4(~T+nNSdz>j(CC0Co`tiovK74)GJ zM{S4on=hNPH49nv7<93Ss+CqT+aI}h0-H$?o66Jx2{LP>4%%-xEe%F*hObYoRmJLhyZ3m0*k}pYF8JIva>jNjSnl)W zYv~&D)@nUTQlWv?qu*l_2}dBaQj&o>8;@IVHRAPgNx|GZOZtX>VyNGvhKJhuJ4>x2 zTjTjgJpXOf5LQ1sTF6^Yc)KLKO5xc;<2UX5cE|={SmenL_*|d%islLYoTgVA2yTN7 zRJN`|LjHg0UCPc34~w!JDms)!)2o&7Ftgd$XyZQ@tpF-ZzA`<`rtZc%TV#{T@0x~s z`jO?P#ieU^Q}&?`C}FE!x^#31nV6&3R;{l+y7JVtGnd2G2KR~%W@0@Za_koDN8+c? zw?CAhCLQM$j~4r+9Qh3@Gqinh<|{inRnY%_S)YH5{HcC_eCThWqdt9*|H<#V2#q)G zD??WI|FFAJRQ|n^H9omvFTV@)lC%FA!IhA4!x@w5-9q0TT-ywnxiT5LAL^^0{NfoP z8+IPD7yq|b>&fW2<GopyJt)AOzy>?H( z@EwCXhHpETO+??CATh9bu{!may3b04*cTuG@ZD3Ku3i^5gwW!;No-b08a=k{JFi!1 zpE?EmXkF)1gI<~9c}THMEHzP7aqCv%Z+{Sji{jK6fC4NhL9vp0d z)A&`rli!wd$&oAaMjMfbMU6Ac-u~_RIbA3#jIjeI-G&hj*huK>@*3z2zof;lLiIWv zd|(yEW1`FU6BNv;h5p63TTK@OmrZ%8ne3;*a&BO`#ZL#U)Npt}^*@JqJkOy9!Xd@{ z(z064G-)Dh6ek}iA8L*jl|VP|a20iV%Zi^7!o&L55YDVs#HIF0o%bS(@6(d+FqEFM z%#79&E)Lq|WlF254T_n3A$Wuv`;=#_rM6ZF&E5GI59Nl%Cdl>~8>}PS*?zXbhYjL( znQe`O%)jAx>qGmwf9Zky%kn|M{8uN9ab13ZB0uffb`Gry);Xt_xlzj1FU+go6lfag^!a@0cs9PCeaB)THGOB2Hg{|Ii!JNGNkP$e_vp5<%{dC49hA@K4OO+%>WII99RrKNj?wu& zQg}Oi?_g;W(#Ot^6sV%8mOe*5Kq%4NS?u(_JjrKs~uG{<&5IQ{sIYF+>L+Z|oI5o**vrWEcO zQ~z^ph?>c&ouso=W+L|=wY4PERz@nde8!mnj9e2mI;E$n$_+F1<`6*_`lK_{&iZy; z>HaJGP@*=ROAia+u1`$6ozV3JU|f`Jvb*4UaIC@P8fak^;wEI9vG`A2d;fK+;Pmow ziDM9Gm35RP0RZjJ1Z9CG}z4FkX&vnycS3tVcxIF+31mqE%L`PCl``9pDndN$Lu zS@xb(^;!uxwCv|eF^EMGv`gsL_K!6(-+kQ6j?8tDBT!JtlcehJ|0|>VoE;%=X6O{9 z2bi=p4-Ap^@Bg)yJ$(zRS5~9}G$_)w{a<6#h7Do`xVV#^LoL~i$#+@i zhN<4YbON?8wh|jOouQr8Y^f^Mq>;w2cHoz8$GRi9eyGr5zk%JtHdLwT&~Wk7CT42CPF-DZ}omv%-||l5xrTA_bxdVvqk3d1$M_2Bc(aH#y%y!^jA zp$iW!?4?t~Uprs;Q~jEoZKJ9eOHlc0tE3x3eAfZHyEYJ?hXqiX+(F0ue04bZd3S0l z5IK!V15@Kdebm0_I7k{H?Yd%o2l-dnY^vvoj%MnPa9_i}jh1(V$>D*%>Y^hyG@i42 zKIYx|7B)&meNSu-o$_ivlTzno4+a8iN5R9p62@7`}dDhzqA>u%Zu#!N8P>(`7JH^A`~|zjfQu?s z>GDqdbE-||Dy=ikoY~;E0e#f#bRJl)i`lQ~7Y;Xr-Z5tz}Sr-9HbEe&3T8HbJdzUQ(S9`TQK+mqO?Hri2m3h(f2>SVd-3|{byK+wRR-Y6q zx~7VTI6Zl&_#mDtVz>#$YROU>1~Z#PfEes_b%nJy#|uo|=1Z4rx&wRy=;2MNO=172 zJxk((U)g&7%T|=n-7-x#v!9jGV00$G)ut^kmznyKLyQGpQdp2SxJ#$^0<;y5 z(S&`_|I$>67YP8|4knEaSfEhJWL2>C**cC|?WO77(1t*Wz#Y2>&4V~AO$d; zGT>dTT|UTZ_)$m8DfP8&{9JGJNN#HDrZ4pyr9Ew3Z)3VFWqQH{Xrv+yRq4LB6Is7x z?>2yDB)hDgfFhb}+LLb@ri=0Sw4R2=jmlEprrT%&%L3FqV!{*kL1*^Wzl@<({gQot zS9hT%rXRMIlVQ^RoBkN0a_f!GE3H>VASp}xqM$>duxq+Y$&W4@(Ql8n$KC#vMoaU30H6hd z!v9xpKhE3s;#xy6)n2uAzdfpF@y{9k)w0-gEw|17jo^*|Fn;eQ`!@FNvps^==^3r% zRNPXi*Z`55Y=H|@Kg|G@f^n4eW56k)Lb}y6Y4h{fRhBYBI zY|G>tP=Lx9e+`Hny%VxmepMZKhSk^zLN0!~X*EvaqHqXHU*L)>HI zW~M}VYeXMOhUl)&NrL!3)6*EnDAz6z;x(!c?IKxAANSbGZg5@^5b^#lF782FrcQR{ z5HlkkWDJo4g}{pnf$)P~Volp|34><#O`g%akbcWDm-hm#hTL2TrV(blRkf4aH3R9A zRI^Q#Lnx#S0=z`gFfe^gB|KUjDnR6Tpz7%RQmZ{6TXnix^5Fzt0SM`bbxT<)0Gh3X z&Vy8lJDHOp#!%nl?AAjIpjj(ITREa7ek_;E)w_gb#oUK)1vt{(_x05B(?-v!2VscD z&@~^jqYz1k4c5wd+Kvx0a4$>a4zUJ16R-n3-u3c|3L6@XRkq(#iNp}BmHXO+>20*$ zu6V&n$Z2p+${J+R#Eho*hLU(aDV=fpPM8&VOBY@Pl8Xw`w5S*m$NJoE6yCIl~w!?}slCFg5|}FHh4p z{qQKk5$1ltc{2C!2am>^_H_lz8M{+&3NfLHOHQfe z9K4|l|J5MxdX_GW(U;MIy39FBbpKG_ya7q;MbvhS#{0T(6#0UxtdN+ee{wHJSamrW zzTC}z-5;PIcWM~l1A*1?lFOM)z!lp$syhUYk)uxSFL%te=Gbmka>wK7ZN1+4u7Q`Y z`UAiF(9FWx5-Gn`ccc^Xa(x|@Z2(h$Wv_@Y@6UKo%ahq9d@?##OaL2f~Js~`noyvo+vJnulOBlFw z*&7zusxk+@%Abwx0;0n!En2$}-vz5aDL$DhpU`$prl#T5tEc);ljw3sSBt#(o#Fr4 z_VPH6kLZg%$)SJk{2kK>W77w&E!ZNU#ynpeoKu%A2koI8VR-F|=3$GyR9cO_wI@P| z7mxHk=Ngxt<)f{^B&jJMXeWv84H_Ov_jWzWTEGbFZ)QHO^$oh{LH(k064YuWhkz`( zHhQeu<(Uk{ z@LgkZ^J_QaNAYEFVeMu^b)ljem~?a-w_5j*%3n)x3FuRq5O?8c8Onj`=?=h>L+Eh= z-HY73rB2U~CnoyX$m=Utdgz|F(X6fL9Ka`!V*IJ&>A#f5K9i|zyC2)2osKZ1 zk6IRTL8EX_s^I#iNN&l7kbR>4-W)l(btkBp5t{UlG#cx5?G>uU9F6!$w$(f$UHi*> zj;g8grJ<5I;0D!g$k?}b3TxD?W+t?jNwm_$K;%ezH5fOT=F%6i+XeB*qapr&f7@C?D z^C@elUw-M>PRsJDK}dAf20yw#S1Gl=q(&DOG%M6WP8$x*_Uj0H!Mh5q(k8V(mZ$bL zeZfg!LVdQux+(wN{-^+WP(^yzrZHRQ_0`>xpsj4usVqNhL&pG5=~ZqDC2^5TG@G+| z!N3>@rW&#*Vr!3~V|`F9OsKS)MX{1m)`Bt;b;;Xm-45xfHY;1n^t?~&x)i!P|O&hX*OQ(bYJF9=*U*iW^4xcVtIC?qAMF3zqT-D^CM*= zGQkvsY~($bm0?ptw6V{a=8omS`$B1W1Xh#Iv^9gBP~|tw`I-E>qx}*>Byq})nJ+Y% z?MP5|Yqcj^s27>!|eS!86&cTwK4vK z_&KXKg>FY@Pv(f&D_>k27qoaZ4W14w3;DO+6i+s@?Ze=qQu#}$uMRK4bW@qqHK|N6 zQPWM*yGsM9@`vSrni)6ixrDxK)NE>^+S@cmhb%Li-HEQ@&dhiuwft?%%a31mh!2n5 zvFi&c=6UJY(4Lxo_Uik)=AAHk&%5|ln%W^VzdF&&oRKzc#7p-Fah?C2oTFggp<>;c z9eU_+&luP_jqX6cLY2TXD@9(Wnb4 zE#%wkYOEgcJ&v}`-yZeuZV_8lnCyJI^Y@#_Uw_`NS)|ldsDEsO(Y#3+=hWWVeO%+U zc{tbV!KS5W>NK7aU#BK9b2p} zM2Rb>4YpnCVAgxaTZq)oZ%C%z!5@@143#=2MRhp{texB@dlJ6@HKv<8Tj#Td zK&qGw9RPJ)SGsOkvOZdm6fd^U(Wql!#cmF5#uJ&PTioFjX0u^>NaD(iu0FPrirX0NHh{WODx!sJ;fmqI6K|zDgKf%jiJJX zFUyW?7&&edqEG23@y$cCu-NEZkS`VAHh#g6>nD?e-^uEsk|kB^>(X~DrdxgX0Z1i@vgzn87-j&9owI6l04FwkDtp~pur8L zO2+GlY-V^QQ^^gtH~Jk6_6e{)vO6erVr|ss&rgG6xJ=FTpCmY;8xTQo4MO{+9MCZZ zeM+yXw*bL8$O1)a`!s^MI+5I7>-d@i%SsABHd_qFjY$QlLAOuod_n_xIPPJv(^^Hx zx$A(amsO|ovl|3@OSAS29e65)b(Pe*^Tw4UiE0dEDVOBI#E#o{n6|cTI;}k~D|bZ+ zw|037s&G(E4EFU*9}Omos98;!t$qP-#i**ZXwWhrMx`c&42~V+(}_J%A${lod}TW( zEY$p5D|eLXUFp!Iyy53t8`15+ZctOR0R(pobL}ApwqqRUWK&SF>0^p-lr*%g z%Qjn=B0V0uUM`RM4y9e$Ch|yIQVa929Ag2CC?fXL1J{vl4~8yGf4^C;EqJH!3lJuk z8&<*LlV0Sgv_TmS*Szg;R4^@!^tR?#P8jXIg)B_~N38Mk?wuZWuVr1H) z>1-&kibJQcc;q{PP1}=^IInR{@m|`4eHfH86A)`9beC%*tF*tVSgWIp$I7Pr>80v^ z?-F$6TW&Z4+&sU1@_5%|vSV0xXFP~q-zz-Ffa3i|S3jPrhnnWcgN6CHCvLg?d8A^l zfS6~&GkNiwN9}zJh>or9z+GR8gAdNtm3`~!&WRU^rONHWo@daX^El0^!IM$u^h7(b zKRJ{cZtI_}n8toNQENb8rQQ9amcplf86w?P&aQOp@wVLU8{0z|FU zY#bNic9=TgSl%_-w>nqzti=*k?Q5113pZ1Cru^zXXQZiPdC8*v`NrE)vdSd)5A)?>Qu`)$<7?m=B>?qxt-6b z-9pL52L~v*yLSP;`Axsg44q6oKZL@8w`te%2U4}c)v80;4nY4c<<4GpbKyASWS->D zphV=n8u{l>hHJUy=LWhsG-P%Rd0~^JVbs!h@eY`|SseB;aNN_b)b*xK71uL*=odYH zWpt+%9gQj`ZiJ3k(&@(ncWZPamz5bH=KW7dj8S< z^5kf@PW+uoTR_Wp!%LzNJT>rTlCq6|fR)YVpT1KTTLfMTFrX(9?<*VJywzpOn1{c5&hVDVv zA`mA)Bgmj7C%O{8^??n6)4%iDd@{D$xo01dx9=f-s*@q!?rAiqIc>X`Gd>73>tCrn zG{?<1$o!&_bEp7B8OsNX^GWn1ntZ@}DqYmEo>{QAs9GAojq5ahSM~*3@5YI{q^1M% z?dLJW3YOwdtaRGGFZX=~qF(Ue{Te^XHM)N7?vI?T-cl=z-Rb z3X0w7@Ex|Ay`#uePfPG)VB$M!KUCGVzYzyY{0Pr$Po|`+3e)zMjxF{D0DRsU)JrNv z&qUgl+I_SA_>lBl@Oy?{x%6+x4YI3c)(mRs7glF2J&8VUT}{YVGRounQXdv}tykFY zbgpw7M`N(u5}S*VY5aJ7Ok);PJRX0mN0^Ml+TQLxoaIvbqS41bHdHAcK6FCWwRd#6 zb?sgS(NrN~usp3xlnV{3#jx)h2;R!sM~!w-oxW?LspTxsyw_RvQ)E}~i+aor(dp!V zs4|73sAmxQ^=H$Ta*cJG2G6|2@FKIP%Nr$Xdo9E^T5w)w%utbj+CAMW(mJN9L)SS_ z>~KIGLEL~7`VE+31D^lKwK@hnG&8XpT+lu>OM0!s8s*7x2t?+v^6`t|zyRf@ zQeJa2STt}`;s!BwRdcPny#i+(72K>yX_63Vm6lkVt$uBZe*h8y;6VfVJQaY-UP{1Ox!}n0DRCn(QrB9sPg5FYsWumAB zL7GbTu}kZ8PAY@yT^OR1?F@rF6%|fdDiE!NOKJ6je)uz8<==7pQL=*c9xzK&9yM*K z4(piynL*Ns19rv;;m}3f99FmT&1F0PE3k7mfz@~s2@Nfo#o~){ER*cgJ(yJ81KvILzk!Ptseo2l$!?usJG#WkKD>M+%IJcj4y zot^5tPNXqs>ZsMgNYM`x`cG`g#IB`sY-JMrCs*5%b8J589di$qsVdje;gDax-g0KW z`$eONHt4rHw1Z5KGS0xT^32rR(pOq9?FpbTO)d2=3n1!GraX8GnPB}DX&gy^_1tq@ z>fpUzZkXtwAuTptOxvwPbs?%mCd)tB(jqxTVws5RyE<|)>G(QWAm18jD3Lf%_VM}g39`PZjiO;4HcIQ3qn+DsOIy0TMXP#rn4 zOBb*UUH=YxyDfG0vN^FzHujApM&GNBu@qB017t|gd?ym=ZdJPik~eXVuFT-Ocl&n{ zobFFxC*~(Txgwe`(*`PI)wCPwl7$Od15**so%d3|K#^Fb{G7M=sKc+|k|uU`m)B0t zQR$tdAXV%A;LN#W=kN5Nr8<<(GsmQ|1IssjdFdGZOIdkoPQHBe( zwQTc-OBW($(ILN|z?T98^R35SaNypsz@@Jqi{ksp?t``eFQW7qqps6VS1+%1OWc7z zu-0deRy6!VdA|n#2d|}^YO?panUzvN52Dq8QD`%}s&~B0u=a5M=+c{w)NaI3d)_nL zNVEVrg8Nam<*lOYkLBg2`ICCvjR|uz!-n7aJ#cF^JD>FA#E`CiP@1-WDw$1u;{ElG z<|UM#&A@T3nCiX!r~+AXNhjqsxI;xpLDezQ^LxY>ZChU3biOt{)i= z*VB9>@R7aiocC4YWP8oi6zyePltZpqOl7<`(qLFUn;aQ_ExU{Qfzogj`}iIR6#)u6X)@rvQ>cOlWOrpB-^lA}T7K^lc(kG~X3*&}- z5VKuB4Yqu5e`oD+*j(QFaxhX@3jaYvEL)HNH61TZx0?t{k1iYb?pHmT+>xW?uz##5 zb`W#Hb0+NXSY9I!=6nBw+o`~1ympYZNl9{P*vO|j*P)5?tsC<{D@>gDlOeo2vS(@c zkj9Kn$swEyUM+->Lyw|8_x) zrE24$=iw^4wMwtc^wvQzbEv<*DHd-SDlrz-Xq~ZcKDAv~FkB$>hH#B7Z83UBT>O+2 z{3i@a-9;VNK5tQ#&`jQkTAkuTzZJbjc?CE11p86H+P*3a_6Pi$r%rh0pX-$g`n_nO z;yfpirB~nn7Nc(YmPYqu_nejOr>bjxw;+FF&UX-VkInS!Lg@oazoFz^S_s-SwakCf zk#(eAPb5}i?G^<*Q0;_|?}|HuF)gFAstnd9ln>2nrbSSFBq#?o6UcxxhX#)bh_c3I zoR`W6L;DG1*Ey6{^msw>&DskNpaj-lyHl)kb3`?L+`Iq}bXDfa&2^K6-+M*p;EIQq z)ivaF`&&zWXSd=^4VjODASRL=c%z5ww$B=xzbxNdZ+W`Xn`+Wh%V)s?*|tTuZ8>NC z_?D*eeB>aAYL0ujBc(-agU7i~+yty+>%d*iS8JC}RKbm!%((#t!(89aO1$3AX~twb~8 zIF9AaVBk#yXzyKl@3N}0GAsSP`iL*6{*YDqzR&aj|9)%M0YE{l58y~42{%)=uojuW zhiLQT%jdQ}2O~Z)K3tuXx;B~fs5RPXS_GpL%+=Jw79u(j`;i@K2XKoCa+(4>8nFe8 z?ReGSMr0xK=rPWtX1QmJz1^sr0p$vo_j`;St|k;&JE$$;DH#yD3okrRv0w1mSw zxp6)da91!`;S`LX@s@H9N91b=T?ucVpJ}o?$tJOH_=he+GzYVOEnd?Z3byt*){A zW+!&f+XE9?^t=T%JH-AG-=La9#;IWv*`|)WY+&fboKChHvD(SrgTlx|x$Zc9*iPEk z$8mod>n(Qer0>Aly^IfcE+I_M<~m*NZY)g5xgv$j<&$SBK9kI67^cmV*0elHA1h4G zO>hk!)%ozw6CO^*MQ$)|`b`@(k;wMwEmE`3Wr+S@0Q+Dcxkvee*c}R<&vqtE8(SR; z0UlUDCS;RxHVd~*Lxj{Q2Vz>B2K){kpc}JW#WlnG6LQBnfDcJv{2WlG`x=Q`@BfRh z_oiqRt(+dZOFc6jlmD5Y6XfbRRDb zq{VB-&BIjkp3B_Vg*&@vpPFk0M;s})>or6VByNp80(H6@Rl4)~C3_rtCepfC_odIA zxJzCbi`MhjeE0Z5EBIHr(rOSBq0GX5i&#=C zM5fTU0D5E`CNEjr$td*?@>kj0Ko7#ij+E(qq4EarhGq{hzW9#Wa#*i;=F?~}JGNG1 zr+tU&+;Gs)zNOq-8OdqIh&@ar5$a$-oZAR}$6IO)Jt@yo3tMPTPL5%&j71u%`;yhU zU;qQQ2jPVmrKHE{^EmO=2OsQPt<-TXyY*({Tb})+T!;mQ^w5j@vw|HAvfr3B^Z)zr z2vRnog-wdv<{kz0L)nWTk|`@Z5(!^$5>v{@8AoCNxzt(AIyVd)En~{KmrDhnadA0E zhjp4%auZyKS{spovpB_TQz&phmB7^MGgsv;C z&n8c>FgJ!aLjI)HB3{RiHg+v`_`I`B9A7`nIhSHl2a?hj9?WLQ=)+I1VX*!z=k9ym z2MO}It-1NBR#kc7+mrI7ejU-b59%WoUm<YyHKkrdJw$ddks?WaA{?yXXWT*U zVe`zq6v%U+m{$Be&|@#|aXBjAS{krG@oQ&G?G^iM=82~xGf{$2PCgow4!+tBx)l10 zKkL3_b->;&AXzp(N?av*y7%lg8~17Tv2Bb<9-33R-e*6;pz-a}A1};4Na7cpNf`>fQ~B4g0J--ds^=`&Mzg29aqQvv}FAKWO4Os@R;yKw9Vk` zIRnq1UL4`}KT7qMyx4c_`Puu;-a!OP+N~A?oE!(`?VY&()K(kEyZ0Zw_KUOa`$2Cb zh`y}dEpefc{Xcf+b*Fhkf4h#pa|2WF7VkgBizCt6*(+OfLzhrr-g_C)-#zWE$Ca_f zv-d`~J(#~x6N<9GA35Ku*w^<;QoC5ZUZc$?9*^*!35w^3vc{AU!8r8qJK_0(W=&Wb z3zYZky-9~r1I;IKm=^Lx-Up~*xqjh*o*is3n9%W?_%Dj6v+VXb@<{_k_wI~?AUafV zc)D_+gb!^sbisp?JRVge9@brAa;|_E84d^5QMF_3|0{E#8}zrERLxQg9nxjTBc-U9 zCi{d-_lBeTYLj|W)rAe2oz8UrH8QzJSXxhdx~SuLRJiXPoQAChk4~Rq+%w%_XQ8(h zCw(Z2C{Yhen4X;hsW(KIX|ID7Sx}r%d^@%P(&~hDWMtQOf7kq~9msWz+9=#Z{jx^URp*Fz&6W8h~} zd7??6jz-BoHFiv6I)F&Una(6M?w4GQEJLaT%s14eAf>F

    QgpWyFtrtzoufn$HAL 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

    OjcYtMNg@hJukq-p>Q5fSV`w%(g?2vDx*<{ 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 z zc7QuHM(+*HQ$5rA(7CI9jv2^&aJkD+-$o`Inw_G78I~ufE24-QS9jF(NLf)hz}HN! zC8Y@t78OhBc~0|F*`2(CRzkJrKkWv#GtG8SvSi=%lEZO8qj<`$Cr#D_cc3t;LJwWsW*d! zFH<%)Miuj5j6aR3`D%Kdv_VHuH3M%;8>%N};>_IPC6^8^^?&`5Hg zea1}mQ0$dR=3I{gi)KU9;iHK2@H~~&R*V#%K11>@W~_^ zFlkK4>h}5|YC*KMf>lZEmeLb7)(U7>2MSt0#P%lVYA6k98qT0ODg6Vah2Y6eJ^jcP ztunJrq?nsEzLPXmE<<#Xn3P$HWvhGyB0g5bg?Gk)s^$|pX;wC+Xw?!9+Ss#AW|Lf_ z<4xgLl8ma1^yt~nJDWCBZ{T1%i39SmS_DZepNy2COOt)Nh z5PYX=rq_qw>oMQ9d!atL_n?hFqjh$}`-uJg6*72j1^|df&FE#(SAC(eh168PuBI$B zbh#&Lf6brkPkkBH%jV*W<`G(#Q8z^J(UA54cf7c~nu246kj0AL811FBxlW@#N+;FH z(y4XrPX^&x^Kx$s=iFu%XHon3FHUB~JLysGs{gp0_;P+eEL$H8a`*Ulc8c;MHeKX= zd1vN@QZ9S8L+?F@`Pz(2QUY6vb<9+7KS%zZ;U2wW|Kep^ z#{IA)xe?&Br&dt0irwrQPeKeX>)RR zbXpc0z%&;tJ20>SoL5RJ8y`MfvEW*`o|8{03V_m55<;Bb?&)41pKU(hAFsB7f?C!F zS(8HXQorL?&h>|jKv^OJt_1n~pNEr(8=aR0@ni8gjdV&)wRvnF;Pw}Lo05EgW}1Z8 zmO0jki6`oyLn(`ZXs3CC0|?rsum$l1h=8zPmc$t!xRN!@;1sek&yAGqzk@~lqhwP^ z$bg8FhG#5tt>0EdwG3pvzxUo40-E#$dhA#SGr*AZSVh);MJi>YGkI`AN*xo$P3SzB)(l&z+F5P##!)p z=Pq>Hd2W>JubFyy)m{C<)N?TGQsWG(vEu-0zJ1o(d+6pR3FEeXdVG4@5)~2&;WVP> zl$CuvhG=`k5|EDShCKk5`OQso7t=$-VIGxZt8K%NI^r};8B@oZ1-+abHdrbJ1XRSl zX4$hsF_N0>cTL(7?XNj~Ca>Q}i2OvPY6H&xNo_Q<_epd%vV3tkg;r*}rMP%xQkZSU zIah{e@mR!MmzM-^=v05zAoEY;h>J3c8-~kzNRN{G=5>$Og^wPo5re2iEjtB!P@U`a zufaAkt>aoMZ54Ov9rir^5RWp+Ia@P8vTJ*Gx)C;-1%!H`z=HD)INq1NMANND%;Oid z&ThH}6UjPPHuV8o5M!d60ujm1Ejjn>t4{*jjM9|dT2IgoC&f61Hocgav{H~q=epfZ zE2a8N71!6Q{SB2)S(2D8o5`ts`Kz`tj15J4*cgXRm;`H0sAC}7HdKz1dyulof;UA& z`4S4CrU`aPSfewrX5i8I+o{^DthHRw0%jSoRH$V0lC}ACWLT_(A-br+K>MJWZkOX- z)V4d{hiQsEV7)O zBtF=Cx1R#_Iw0Kd6(DqAhp0A%_gD3mwrN8xQgy4*7enm(guqBnOlET*jg9v0(v~&s za2**eHjDh`^?h3FMQk>;$XJYeovvu38v9QrS7iueHB-8m zrGjpIw$Z9IE=ow)%}p!MT1aQWP??g9wrHx_@2F&^P0^9AeZ4EoON$ivtY(sxyxo=w z+EjaA&TxLWk8Q`m4jikwI>h*%I_cCC>m{y*>=Uk`Ry8SVpZtq*Y1G!&E0`}?`_Rzu z_uLVHo@;M5HPu3D!tW?wB5ucA2$KW-MZA!1ar!1`!gNinCb(KUQK{M;tcd#jU5Inq zTvin~>l9&AZ|Ci`^#IV4l@M<6G0iZ0t(2fcr%MKkS96c6o`7>C-#a~rvMCOEO*z>; zUTZ6(D;n&2>q6Ie%Z&p4bf_qNWe&IobkSjs*9~?+NgEYq*r1f%aacqQB+?kb@t><= z31y8?y89O>GE(Cz#liBeG2jrk7h5o*HcT!S(~s%zz@xXECyxF(pB^Er=6g+-)}ZXj z#zB|pd0m*+ws^JB@ zUbm-WyC=qaH*wLKk%cDc<4wx&QNj7k<3GRu!$jx#kWm>iRo7Tdp@F*L2;=UUwt3RI|rLCLI zCOD|2`CLr!Y%9P4{1}1Kz=ZW|s7dgx{2rt>mRxPKg;_6qAO36uX8b6@ zf>KVGhr;MU^K@o*s;!l&W_W;|cM6s*Q*cBg_65~;cSz2g?5kh1te@KNgvwWZwEmdY z-CdNWAJvn=sybZmPFd}h!-YD-jNw-!T88nxGm#`k1|pQ>)Ut73AGp)|+a*J|(%_|| zq}^>c|1{(+UL#zU8hlvRw9!V-^iMV;03UnUTIm!C{ZEW_Cx}{?L~nZ1N}w90apc?0 zd#zpl=8J)0#Ow&3WOhWa^C`ZLE5HF}Ty?=MR;5tbY=S#-EEuPPX18WIpr7Kb3pj>@MN6v1+`M?WlQIbOq6f16*0HLt$6`Q)#kc%Vn*4%(yK7HkHiX7H6`2zhX`iR1nYHIf%x-F@1X<`TeBU=w19-> z206&S9h`=8MM=emHPrz$U6-<>gpg9#az}sMWFEEli+@t`?T z)Plom&rkr(ia|nLAHHVsZG^6zf%-3Un$tiVNp--_h#od?O6RC{!f$X7K&F_v_hhaL z0mexTS9dBsrw~0ldc_s%-nbWAVJ~I$mgSBiM6GJ|qZA zYr2?6+s1j`B9WuJZ{|L;PHR=i|GqERwP~o zf`4~95pOh4I-D#LJt|;EJfZz?q#-6(h`O=$-5%9(`&UMZZ_1W9hx*jZTJ6Pg2goY) z1MBEO^#j6erv~MqeRJyrTCKotH<^htKu!q>!1(JBHC5| zZ;{iU)mp8+c(?cTr_Nf80CXwkrX8s!)K`ZHo$3)r1B$itSp!?9gb zc65WWlA?4*wF@MNI5Co;|EJRR_ep@M5yT)?CVec(&qGLEhX=-ThJaj^sJ98MMfF)r z--|v_&HL{ajSZoIlzY0Cx(8bZfQ*8tw3Yd>x|_3?S~}!usPu&DW3qCT%d0VISezUU zLA9=bdO!@YZj&pO*K>q$q#hOq5w}q{lm~hGw>=H2Lh(f1t5XzqD-Lxj3p;I8>YJxU zPM^9hSP@Fx7tG8VsbW?v=!!bttq(MgxFru}oakpMDcS8jvv3EyD)|4S=slbyN$>N_ zth7~`m08~Vs&>`Bd#1k;ophmN+=)C$ z1VJ1DkT?K~1$KAVj(0shuDvPmy|1jam6`Y9KWLMgpZUG-^WZ%prW?_YAuI-P!+@^M zNM;+{d%&4Oh-$ z@U*S3AF&_73Bz;xfn7b(8DL>4_aV4NKXaRqfWnhLuAv`=5W>j zc`ZR1v;%WaFZYC5xN4`7Ra9il!}K2D?zfENq#Lrpm*KF%KD5}JdfW4}26YhdSB-S7 zVhne{Iol8{;#lEgnrLG56$#|k7b}f9d#_pMci4Eb;735!C$nd zqTNEFBTm~Cv^7SmhVGVM9E@#p)NIS#E&-_Nj@8EQ+o0`;Xjs>gofqnTQt5+$dt{bz zmatW`6~Re%t17b(p(8N+XPk@`X?)qo+6)=E?0w#DM?0tbmdjH*)109m;;tCxO@u#1 zxarW)VPS8Dg3nycv|%m$QSP}2IT{mZCoSyl;%mxz#yk}) z=HySzizng9C4-N=Z}6}erhHz@;K{m$Xk}v?8F~vnJH5K%A+2)GzdpM6AhJ83Us-&O zt{9E6SF@VWyZC{CzYP0Up>aar=}rzm9Y%Fe8Q54kO~Lf%zdHjk zo0L1^YTg?^Gw>L*STvikJKW@HhkY4ucn@|f6UOl#6F(SJ4pZ89rbJHyoCY6*Sn?Q& zuH@Rcca>#i;rtUUOkJi6K6ybwtOJ7AIIe6ioOBT{oSQX0q^Bno{v7nH>V)n-MSRhB z*qJ~zQ~78825(Lt9`>m(uA~R|jJ=}$o3qc)n%5Q55;ECc8oAfm{l4_z!JtFj?fwBs zd7S+8+TODYx%#Nl?xpN~!uIi9(f5bXzec)#`m!_p)wg6kkIbf!pWEa4U$9R5s4|ti zn;9bJK)}i}LrP~#JXHNJb5Hy4eIm_y$87Od@+sT(jiz!{6d9HtXLA1056(vPUT#nq zwrFiNNPfm zg2)i0=~M@(UFeK}U=B+PE9*2xRAq>9Q05LK$_mzZ;2;{R*OC2hpQLcjii)^4nj-_y zG@kCuqTDp_86<*+v_etwzHLcchS>j-LSm(KLpr z?jBDFS%(N_;DVwJCH!f(PEiB1(@At-Ehi}*0>uRR_hJ`mG_=T_Ie_zR>jjUm?U#Lq z@4_f!5XTTWl$61`DZA{56*JEu)Uazqx|)q7y6nIq%izCF^PC-c0(IEfXcAD#Ec48y z`joZ~P!0-mFftfp4ESwrkV)2ntDJ^NN`6;`C%E27B4~lBG500KV023spU_TH$`C^P zh7ZT!6JAHleitj4Nm^I4i>f9g212=<7q#LD$i7W^P|tE3OC#CKHjO>cknDXZBHD=5 z4+yY1H1S4(l0e|f!Y#Q3R&4ZN8OmJ%Xdd+}sz&sMCYS@t>cITEfZl^m!+#B6_K}dw zsIjm|RDp2HV0T${Wuu`JMeuHq3^|DJ0*{oQ#F_EMwz*-{U^_=~nx68DV+0zkG>jmy zis?CG42*FK46%NsFbO`dm6EIz#v=&aWtlWd(l;2Qqlas~5hyyMYi_ZZylpmVcjVfC zrDouvB(7rC6!705z*OHr_D3S4^Vdrb58YjUt*7u(9qTka_IfybWM(-5rbl(;p5pBJbJRLT=QY!w*)>s1}NBXZEc8CDO{WaEGRRz?W z%R%CfW#o;Z&ha!S%Pn|h7k+R>k}K;^t3<5-n{`LsP;KLGJq#|(zi5JHu!YhmFxhU^ z-^vXtRWtTEa;u$Rp| zDHti&plZ?ZLapfkB$sl;>6qg)V>W}F^=kTI$uv61mJS)AXd!?bWbb2^VtR!68Da8m zQ6b;Z=wzCgPVJPENWRj)(hhj+K*=6udyJ>7z(>vXe73a1-;|*A)KrzQUU772BgH;_ z*x=!*4+~EWdXa5;&w92qa;-mV`OAq(sXwP^T{|{JOa21AjSPI~-c94iA%PpU`$pG} zu6&{l(Md+m6Oe=1TO zx5I2>=Ms+NDN<^9GmoupdhxkIb4KbF+~d4hy&Q0MFJGVEJbv*SNRd}s8DwKKoTKQ; zgvaXYO~#&MphxXWH{b*`wOL#1j=TYtXg>Fh>O;{pe-|&H(EGgcpyN z)3@im3pOg5I5P>8yMrgHd~$ejvLi0#AWSHyKhE|T_gDT4*?2N|=66RsQ+)pis(5kV z%C~N9lnBf{`_vein^T{v-106lPTS@FHG9L~tc}+{806X4(od}q%|`=_gRVV&tiO^; zIcne8IX|+=8|f2`34QSJtXW=Kj+qZujkVjD{1ItjMk~iB8oc~=NCVJ*`K{QNrDz^v zvv!aX9#nJ^?W;I`J7l|m0e3?2 zlbkM-!(Q2_2T$>~m%g61TJewh-s{m`cS1(0f?4(jk6Wim+1QW~w|JWeeHzi)TRHr1 zv54`P#>Pq4;VRpBM(ucem*+Z$?r!vD2XkVnXeRI0dw9B=is`E^&i-xP`bEPp>UcJh z`nzaIJL)kJje2i%!6`4MBLk&?ndRN^g{YrzBkwzh3dkeX>g@~_~OlOKpA|g@Sx}mXJYS*LWa7I z82m(G|K!d?SbAA*IdiS@8DaF>xs7$Ld#{%VVo0W!bX4hs=hOV&(a7YKTOSC79d)ML zx2?mkC1HEBcZGgYl>DmZ${8MTePB9F2gVG_>iE-ec({A4yXg{4|8fz{yR~7HKd>^I zeS{4G#V0sweB1MaSpO5)Zmr#L*hG8&zd>-u%7m&bc-Xiz_U(^r=0^>@$>ClNnlkGe zddeg?z{BB0=e27VJLReN zw0z`6NVt0*Hk(FnQnq>ozfQt9Cq@lytP(OQK}2fJI|t`%&Z8&Jm&+z`5h@s#dLeDg zb8_2g7_`c@?XBYeP6#G;4}=qg8R9~5+`eIbt<8)(wTzqYeE&w`)%*z^JIbV;*KF-- zZN>2@lnI}FsI_vkH@_64Y=?%8@mzm@&$$qQo7-s%;h4FrvXy@%m-|Slx>xW(&0nKF zeG;e=Z2#`Usv10~z-QEH`0NC0{5(db)5rSolfk1Ep(zh0{eE_7=wZ3!0A0gH*Ppz4&9Nby0V=wisEiZ0dyqxpqj+d|jfaY^0u4#K+ zHun$k|9tGoU)neE>#}j{*^}ST>_9T0lUfs&A0uq!?A7Lg$!BIVrx+LKAxYD~<)NYm zOWP7VK9p_0`S*H1e1xgLE#)|#`sexFiOX_*TbC=6h1D{`PfMmEzDfCsf z-Ah&Lr|-IqJYek4FJ2hW&n+cU40_CdQER^0b_^We-w>xYWa(Js!}S@I(|h8ML@)m} zJkrwU*7uvy*5*vsaHZrQW^wS=S6}Lzkp7S2qqY8EM(u*As5^X3v!o9oJ0sBxNtdmI#kNc)($6jRkS>I{ag=_@AXfXR z3(7Zu`)4yI9|ak#`(jhXW-5t@<>6`b{zCNTwYy$xqkg+O(L|Acw{X`L)SSVQNyjS@ zX&ZW1*8__{(rjx&=u^o$!v{;g-(V zOP0SKF0WPig5vwE!v6dPKV21>VX^Q^3y8g63AHkb)mF*;=_?s?$2)AC%zp-6Me4$C z|Npc0>rwUG75hntpRn%AJK=$8{#HWt_8x=nuW0`=GG@c0hC^Ab*)7LrL;D_&GA}9Q z)R(kkJm+0BwJfdy*$+kTg`omo^q&)*-alX|EBy#JD4T6AdXD8Cckw{ZHLP) zAGCR5VfQ$ETr)opuGR3oa@a|p$x1~0y;$)Wc_GEQm;R}d1W4kYgQLhn2`JLd3gy~=o?u*6r+;O-PYkc8tU-u zSmd_E=gB1epG2jQ#?MHf;L?zi*4s1W$(7|$F+ee17&XmQ^!7NAjV+4bnYULlgnjUI z`f5!ixzAV{v#(bwW(|Ed@Q~ero~OFo(nC)WHi>I;&t_K7v86xV*I|%jY&Fczrnham z=+H7B{>=+{V#Cju7m_r+o9LT;THxw@U;t96U1RDCRM*GX2T$P89YZkJG!PF{8YjHt zT?E7qu9P%q9iE=aB~Fc%G=u9euzw}Id*n6~!UY7ke%_gN4d&>{HfQ|Y4VBrzMP@`# zHkI^M9kQzE%$D6AxQ}zlvm0YFuo5>K5d2_ZCUwzKW4_=vBk(O)coi;9l~2{|i6<5G z*&@5>*y>Ky83!}!RtK*tE*a-C!ET{%H-OFVd|8yX2;%m6DT$?L9xFdH|4E`+0l;Qo z^-6)<-(oh9kc^2op>cQClf;J-YTi7FKjvB;n74!_d7h<*dd)PYBfgn6J|(bLg(du* z3bKB0Y=#!b)9rC*hK4z~Yv?=v^97AI9$0jl~IXly?6rl`Mv^`5dTIjUyRwAJY z@yWxh(~inY2$ZG&T5`!GRi0v<=;O;Y?maLoOQ@eVTiszGfIMhVpeDD$owu)MKm4Os zm=f60^sZ=yuDe?@)6e!NpESFklbZ&OAp$KU6MlA%FGcpBsaW1`M_wux@}>{JIhNaU zxjGyCeypGEg#AMkd3PC`IF?UMJbAy8o+hxsGJte^EXiknP(Ss;B{s$WRErt8|A_7e zqd#)Dj^sZs?`(&-0G>F;y=m9`7vIz`oLhQlxb;ySSVcGg#$Y_b7;Jv5zwQDw49OP7 z-=1jgo|8vW&NfXQ{@*S8S1&vu`TjF^zRJSD9sgcfc=n`nDZGeYJ$nWbUH8V{b%$|4 zr(>t8FNF}|jq7|{T-a=TQvk#iXGb7K6fQjYyB8-Ne+(eDp!xw_FF{k^z;=DNu**RZ z;5^B$ASo&3}t5;*d3uVd`YcFRBA8qN4_hE zSmn5l2x5m{6RPx7X0*FBO?Dd`hv#I(mixJaK5D3hb?x~1uVdR+g`Zvc2{8i`j=lY} zht-feqK{fV^>Or=W$inD*e125jrMH&{B3`)ll+9%8gkq2Yk78Zmf7d95p{_A*&l?cYwc zq}p9&mBMjtdt$(Tnyb#2EMY77Q2*{d05GaiUvU@Su3D7MidEt!jro~H7RS50IChuP z_ge;w+{Fz9>QdPvgdSxIQ^uCgYr+DhzQG5kggPTak*i~vB)Ar$3VN;AWlo?xD8kKj ztW|w41^qXJ?Lu`yTwxfc58e!muYz!6qH1Q>y=Ovc>Cg`KYIF1De1zhzLTG##LAKBz|!|~k^&DZg+or1EL&kW)|zTJi?iZP z1M=;6{BIWqn@yhb28s2o0 ze3e$VC2Ca1)MBYuTgw+_oCrts4lPm4djbg=2ZoSp1f}pEx}jCQ)1h?itf$4WXzR|I zLGIOOX1M!74UuMzz-yL@$!;CJJ;!KT?+#`-*7c`#XtcwB&qp{J+J9Bkzj^`#E&ppESPScOxA~BjL2Ayf&hlv{O zPL*E;QKQrKjeAbX4f&!)FJ!fh&4hTimx}FO6|lKl{a3!^ylh2IRY}(`zB_WA%{E<0 z{KrFKmyLMd-aCpQ=C70PFq->hGIygvLFTY zWKY#SXy~0~`!sa!g&%xp1*OFAzOy%HUsXTK9gdgNQv;3>0 zTa!KYTQ{cQ+CS}>FkAf&#@B4ILP|%T`{HC1ce2Ndwd#QdY@1C(p0X6-!hgX9`FDNn z@eARtPLY~CKX1@HkHBbYyaOPX$qzrZxjLTvGajj9D4#C`<4)`EMsspB@UrpCtaRG(6l5G1AM@Au6+esI zR`LsqN6>m-?KM*qGt?+G?wFonOquh(at0Q%V{tO-s8(Nn>+@N)uyTm1<{wp$>+oME z=BCm6u$=k8k{#kl80=}9WOCa)HDR9*-Q6RfNp(OgKd(h!Y4oT@-*|@)Erjk(*-F(H zP*<0|X2}0TGp~3)gl16Rdv#4Oz2rD0j(X1@>vpQyx?$U*qDaITAE_mIO%Bx_`6DsM zDY^B!nTCwtt-DK3>;67^*V=bTurPbKTImrOcWSA4tJpZ|lq9T}U1Je!1y< zdCm3BU-FhS{SRJ#=GN;1gOthSUVD5>z-lL^CKJ~#&Jh#4Mk>$QsuoOI(@aJ>m8AVo zo=iX7xpf`wkj`RtM)&NTOnoS~#T%P14o9YW+GNs4On=t5I_-Op?9A*BJxm#0*-sp- z7qE>iBATpq6ut@%qH{VU-wLb)C7AlaBpMg*1LxlI8Obwebji&4kVzjf8SCb0yI!w4 z!ak-f!x#K|M`nkPl&1#MV(bt|7qt@fK$lHa#bAVw!DlQOYLFvfHc-M>z&ztqWkl6N zV={HZ#@;bv({8CazVLKCH8~%-G~z;U6@HS>jB~;;u;2#Inprs55?#8cdbPQdzxOVv zi_kNd{@NYO@0sN$ttmo?ae~9?1JqFs8uRR?U5^*X0Bdu*gjnrZi1pJl_k045i z)>O!eGS9N}{Ftfv$q7(Nkx=MWu<21j0&QvyVu{4}K?Q-fZG=N@C& zED$7e#*o|hAQF3*dZ0m?jAt@D=@Xr5%M9AR2^>*ci+eM}k1bLdi9zPz0$WO29Yj^B zxij3WV!1Hr7Md?&CM|!|ht2=krdSdbwNPtskTviS-Zu(6U+7?~gL18r-lJT+J0Vqy zgFYy{JddAS354#*jsjXiTyS%;GV#hYrZpY^oQU|&Ta;H@zW~!ADM}c!V|F*1}#mt;b7Lf+g}<$m;Yo79t#MkyuHHM=aHtV)DX>-s0#bx;0eG zaJ8)hcrS#mln(Df-)+Od_6d}wvy=i=AU*io z;P3R$v`V>BnA>uUjCMYjx9Nf)vBtPrWB7tuf3&XFJbY;Elg$S8Rpk`P>H2QVJc`{~ z4F{;IwpS&q59MUp;NLtMWnMbe@I~h$(iaLXgU1tZ%0Bw*a$0_Ld1y$&6|beX(0O*QD8+o<#e0 z+xe|HEd>ksYsCPVkE2sT5>yl*+afI+J6`Xe3G&hlMaw z2);S$g$u-Bk;BXkxi~3C8N)fA+3_m;lOBu)nnlBw&q3hRuPvIw5_N89!Cx1Rn*%sB zJQ3P&?#)_f!tlXUN1X26t zx%zAEfm-)SXO0tY(fCQ#!dg7h4M)z}f7HS~X+x@KMRdBtO-E=&@8M`!SB^}0s19TS zHE2V(J2iDIXp#QrE2#D0okwvMo)cok@fbPzbo=mg!CIEKe3Ewk9;@`;km2mzCh>3V zX*Sx}JN?(i3Rid#X}MOg?{)Ns|L|}B?1Rx zE}d+cp8+|6){oxT>vpUI@3oe-F+m-VMWnG!ap$kMCV9+wMzfd~#JVH&f0R4Surb?~ z>I-+)(18;+FN@}O^YNOUKmNtTV3TQRF;cuY2>Q=L|Lf>Na$@|W%9VrM?mgjUwR0lN zzNPn+H_UYPXF4T;Tt2Y`SUPmL4eyP)1$C)o>U1qv*Mt8Mx2-N@Qn*X`c+Mn>s@?T) zc=&AGd&f)HiIAnulm?U+3(K0m-ueeRcHUy@lJOs&IDE^he_S4U-QaXb5ZB#hfxL<+Bg)*2!3--yQoY}{@C)5V$ah9~8aBUWE_6Aqiidn9PkjXAcP}p0)Jc!W(a`GUKz!V0XWHq%+CGc6|kn`w)lm z^|iNJ~m zRig8OZc9M=!~DosnjEZ4P8P+tPg0dY!lVb|u|b547-w3_nlrTM_x=$hj?AFbnRLKi zZ`)#nW!f}Oj*|GuRlla0hb%-bO~(EG!ZE$xm{634=+uGDb_d$AV*^E)Y;fMzfgMqf z$6c2=9ds=$pmq;5ZQpPSOLTdc@bb;m+GfaKQvxgovM_biDs5I$*g6ba?jz-t9ikda zu`KVlJPfnZ4*Bvr!N_yPC+b)lk^+fP1YcV%{1nVqEDdel)`tgDnJ~ma~?T`=DRd_jUHMi30%ryDvaV6OedV#}kh{X*-Ov zb(DQyS4h0_1TVRRh z2fMa*k=pVo1@OQpBsjrjBA4157%64xhHc42n}OJXZ>{!V_SH_-YAgT(e9JIC2nyRu zZ{DnG!2XFQAEUhT7$Sl&8xc|HXld{OJrD?Bd;yiL&$aY%0Yqw=SU_3r_5eBE>Ol zRpe*8o7*O#UaX(Bm0)M?UcdJ7XVN}lS9P+_<7ZcJW9Hn5-%gv)K0`$*_TxH(_yFVQ zC?B@!*>_5y#A^sJ+xju7)iv1J+;?vO5B+v>WZ5=vEa%ie*tW4UxX#yK<(1#gDcA<=jkyJ@YL&`yHuE_k*M!*V2P$i<7?M{ zwcfT)`1YvKu>-A{HD7ja+{atCFLsUnC4M{B$E`1WyZuz2?f&~Qe)a4h+0P)>&wAlb zesx4SZd6U&sQCe0*z4`rdJ-nyHz@d)5Uy1(HgBCdJda!((d)7F zuUFu_(|IEb#j|bX{)&etkdBummDF#~DJS5c{Gml5eLbiYy z9^9|Np%WW#l{?>@n(i|(^EC`=cdwQTaln%a^i1Ig){o$al3P}G-*-)@(V5o}+|zvj z7v_j5E@Yum)g*spIet2E`qCV`*R_Ofy_x^*KaXc?*2cRKXe|7T-E5iIc0g1wmPOJ6 z)!kJj+cwdrsahXWK8 zjwF=op))>x{3*%zx6bjTVocMp~=&y93d*KcL1g-U)P>?doH&ABfGaUKmb|wCpg(wqyaS zJ92K~!Nl1FG3ZgWAvcK7vV0ec3T~voye+V%k2BPvRv)MnGuon#`qi)M`dT$;XGYUx z=gm8#-c!>H)Im z5AJj!BQp*Icx6UGny~kwG@!Bl=^Dg}vw8I{2jY6>n5aM5)y=$JK_@rDrap4@+NR2CGq(BBd2_@Cb3(;N zLA%3?qgr_PZhteKbO<&L{FI>hQgr0o@w-m|-pqp)rb_hC^J8Zuyw6)#?Q%kRu|X6H zL!k)362)h|>2Gnzb3R4r4U+swRC1EdeD^!G{{wrlCOScc;1)+6*hvEon)pmpI(rkuZNMevGSy zGJX`-nGUCw&0Za_v+}DIH80MLo{xfBwotHF-u{w3NhQPjJLe}I`U+a>f{hpY<%3Q( zV^T7=iKAQF+l-~g8u3~wJ>n;Ey=jCk-)0r6wRtskI36yy#hhpC;N`!Cg-ImP>zYUA zmn=G?K9}#(=yR^qq$46%M6uy@T3K5$SsLID=2=_1+y^2Jmpb7EAXJxWwK7~0fNTdNS#hYxl(i3lH7pJd%BLNrsnW=$8 zKlr?j6;o!&%#^-9?twn+?r}wsZ*xX`>l+I@AYv^0vhzo)T%6(r-M5j5o`AD&?isJX0eNnSHhd(jUooPBnrNI`%MCPdGK^N|H{Qo<<;JeiPoeL^E z3BylwTn&ICwf!3B$x#!C#(9S_vGuQBdc?I@DQa5ky<^{Oy}oU4p)&1JKoYlzf4bRk-egEFC=1|0Uwkd^LmA_6--u@A z`1s*$>q1c*;&LzS*(tngdu|nZ7EZrRCh4*`aRd!@rIMH{D02qP(zyNnsZYiLgh2J8l`q(Rm#Nu4D9+0a`+l$2CSVM&fx-r5EOtwbFptVmpWpQT%r6v=yLAb}QIn zfAk2-3})Ai?t;O_E9(N1_!?hAeLlO>YlE}2CU68`7UMv?P&eTsQX1_be2W7zU=3I>7W0lVl7BJ)ZQ1|hG4>I z7k-tsE)SVfzXq5zda>(f9J^+H@oC5P@GvlZWjFqEtLl6H(c)KE%{d2^5Ns`|c!^$D z<*kWI(qLFP#Z(@?<0oUmfQ<|9SnGk#>NjqAENRX>PP|8#(PLYs=Kb~y=k>5?8X-3* zYa{c_|J3Er3|+j7La-a{v!rk9^9gRPTv}eD6OvcQcEx;xMT4 z4@IpV?{n6gawHU`n{M8-x8pbX8@u?85B8nNEOH|G@IztU$Zh*|@1G`f*3h-1e-bG- z+a6GWuRQo)oMW8A;CAt|VeVvG=uB>B!xUc`M;iR6)0(=rTCQe?>a! zXm%U%kg#5-`sm_)Gos#9%uxM{`!-Vt-7Pmz+o_l|!6`D@@%EKL`-7z#P;@wSIjc0? z+W$WMTEn}3{Y9hCQTDw5`E0o0?JNqfUrsn=(+gBztI3M^7eCvKecxw2*Rk(Bpmf;j z&-=%st)}lx$6IKO%HLJqBNF`r3fUiN zUPJsT2jCg>4EFe2e-ZlV5)OTokvH}e7yU=G!fxwJ>KiHgp4&BfOTD`Cy5hiOsdH=9 z_$OMa*jcLVEoUK#h3zmz@@sV|eGr~x^vV|egNaN%^CaZ$e#D&#Q0~KgtHDT< z#`2MI6cv5YJW}ZumgnNOD(;XI;4?laL!{i}BbJPFjOi<23$ht4?Qk=xpJYhNl*)zz z0+xtQH8-r@J;y(bR}Sl0O*2^&t&v%<@Va2XFa;nAeftBJbKpyRq~p)z2cq?OLkf)a z&r%pDG+;VkphOufXiuVA9EtHI#W^f`_5{~4*oDpvt)9(VuR}!l4rF!yGR_Vbb63t8 zFPG$YYegs5c0c|~3>~0{e{bcwIf$(oD>v#yV^rB9?gYS)J|&bPC9g9M*Uc?=F>Uz@ z(h)3mm+-wd){DqWa#U?YlV%T&^uZvhpKaU^N4B)v?k;Pi{G+D?;TlTIx=wGRUeYb* zLY=P5Ejrf}n5uUf`J{`nI?YG!0D2#g({`O`zA~AEO{tan40EPKTg;t$ko^Qz!Zk#j0KD&i9+jW{Dx_Zi8iYP@hZ81aEdPdFakyIvbW))8KkkF63q2rGZi&FM zyM>y%M}5H$o^OJJ<*M$S;d+EXxVt2N_HP3jt5R2Xai}w=KGRhxg>6{$`F9}-%!an> zGWD?8Yh8smcg#-Sg&Z7PvA0M)O{x2COQTUa5K-CU;EPW68FF`5V|tAlV$dj6My3!Z z1bG;iEDc%DtBO+()f|s~ik!EM8@ev4bjhs>mk1a<3IrhiCcKZyW3M01pU#LFs)reO zeJ3{{n+)2VvECL9wsEhUqnU#0Xu63wl^={~iyb7+vGSbV-v?ECEY=8k1}bhG!(5^& zfji@-4HkT3uwjA0AZaKUXd^@6sM4A)vHM3+!D-GN=FJ$H|UfQm|$Mty^9=lk7LK@493apf@= z3S|o*U4P(~oBK)|C(H(&uA*Xzp}#uBZ+Rqk$uzfXFVGe>(Dro^NWsAnU)6g7|9{|} zZ#i+r=^tx=aVUsA5WASYVY9gWLr!ggeSA%=*~XxM(`J2iLle&$k$;9|{20uU? zhBzlR>S=z;JrHWBuBvN^fOf#KcI=p8lSxJBk-`3A!9z*Kf#z4Cv3clQaB|>-g0ek9 z^iKlZCShQXQZ7r{%-LNMMi7&T9)&s$($kpULAnGHVzE(}8j%`cRI@riwAzA96sthq z&Suw76_G9))^%z_1smq4Td<)QW#MWM`CiDK?K@1RE(mIp4OQBV8IRC`!rB8hV@|Q4 z!M>^PIH`~rKGh%XEBql!waYzw7xz>QWJV=*0L3)o4valFd?D1G1390P5yFvb(tg!~ z+{-2Q?fX9{EO=}Gx*Y}M-#~Epv&O&7L^3p`d)oc89C-u0m!bY3B=Igkju&UO6BChM zM7W7Z-MCw&q$ z-RlTCkuf!N9p-BAx&lAwI@a)qEGA_ugZ{+eYWq0Z+k=D}oTxI(*)wL{u`Hx>Q;Sbt zmjMgkP%M(-2_bqIiyL1*7BTyt>TP9ZeZtI}Q~?BrycE}gChxqbo^l`yTPj(_E?uE# zi>Tc+*u3X?iW2hER2`=bM$!&FB&E=aKlxsS8nvTlbuqgfMd!hKgPv(6f<8$*#K(sHxY%g1Br{Zx zBwC1Ej1+clFJCGLpge@cEe+?g^-xtUd#BI)Y^IY-_-8{@8l1aHj!kD_;V?!I6o2$6 zkl=#I+%E#tM~~6t2U9#VlNZoG{8R&kVKbAe$;tTDMljOv>zBLrT%U*S9ZwCN(CPLA zt!{jRwRGb3$<=eePkMD9oJlynj|WSQ%@B#}H8t*~X-dpYs?>sSK^DS{)E!F+H4d#- z_Y83?m(3YDiXjYOOahot6ye4y3;>MVVvDhln91e zj5mG5=VFr3g9XI;H(*CG@26J9baSuIcv*`9saqqtaTXWT{PP7p+_-r zDEP52h>`A_eCAAGwoQ6XWdF%hu@UzDHs#CvR9N5HsRqk6I2|~ zEfNuY_5dhbRHU-xP*=iOYeq@TH* zxU4N8Gtv}Iimi`kDw^UR%Q`DXPIiXAexXmO6_Bp~PyNFnEb+U=?DFLH-B4e_?rzki z#!0&X_F~jfCh$(Ey?Dkw3`(h9pVy3`u&mgZoZja{@ogQe!t#%>Y%M1n;>jZRqYVJYp zg(Z9ZiJqpFz1awH2}|#h)ll6?1+}H=_;3|@VB!3i0KF-hOrF;*Mq-PKB@CPj!P?k0 z!PQ^Vm$+$Xar;;e&zZ*3JE!j9GnHYqypkzf{8O-sJOy;vI!%_}s_7N%ckO!nbKgnp z*4$!r>n<=zNr34dL*_gQ?b=RppfMgH3mm0LX&dW*>i=EXNw& z2mV%s6o}dHuf29nc!AEIYLB+D-4ck5Hz)q<;#EYdGsfU zAV!SNPqS}H7pE-1$>UL5L{XC(o@G3>)R3Ha{;h)=&5u}Vyjd`+S{zR8E@o}}egBM1 z{LoD9)n_b5VdZBNV*1wjetzRo_Vku~12H&c`}&Q@Z$?_BwR>!hd)h@hb76jEOqOO7 zqaRxJ%JLrufZ=#y-;U}{*&3(QzU{aLT#Ek5iBMc}(R6EPLv;Qko%~n`8BBviDVBR& z2%BnsdeL~DC;AuuJV=!PNBH*mk5|ntaZrByap%OuJEtaQZlaD^_Gv3)c849p>`#JA zaH@487Di6+HWLGy1|O-ctX@ z^5Z3cWK}|_zU%*|=snydxzGE~>dK+3t8>m_x+mw|nT^;4fXGB3NQxpUD_Y{oCs}7d zzOx@b@bjE~j~@HvlVr*|(jrBX0tt{H5s0+FE;i2Y&g|sSGt<*K=TzO*)fKMpUzq8t z`u*Pb`~7_G*Maqhl8~KB9(Xp&#$(VLe>(p=w$C1-_h0(P)hGC>c1mgx^eMk3>-*OS zgLQnh*GFBh}X{%Fv!3ZB~{ahG?2250Z=ibpO=+aKIDpJu+$DnBs9ls?y8 z3|-3KdV58D$D*FFIh@63|NW`=j;rR_(lPyehsE-Q`agfrXPwBsba%&(FTisNL4bno<}`+bxcX?XBk^L;<;gE_ehz z0n1SaDE(j01r>0$dZE-aprmnAIrl2gsh)kwfpwql=jtcjjPuxVfSz5Z@II({2eTK7 zwcA?D{x{L5KIQ)J{wHEKeuQ+V_TNAB`JB2LX*zsHwI_oHyzIU09FYNaH!D>yb~Fc+ z=jk?@e5W5KD<587T<@um<;OXp;`Uk!x8zDdwLhB1AwTSFOc*1ng!2|LIbqQg=ksiw=A_8NkooR(vHnglJdtEJLJ~0HF(eM_ZO&{xU zc3R!xvMbElj)$=mxCrR5i* zLt_S%c1r!O-Z!4+`%ox3Uq>b= ztKwI8SO*4?{X$)Lk`^;?S`B8SD{7kGBzo+8+-Ym@!C0nq%6h$_^}BS5#!+Do)GgZ9 z@#BM9!;-tbWy701W*e4TVu@n2k7^<#ciy?vC16?WFtZU&(`F*3MA#8Lq#TDm#w@Wx zv*KgrxFbRHU9HyL(i!k{v#0qOnTl35VLWutSs0OWLDQyPnf9~P*q;sJ@t^`RhkfMr zkXl~BI-ws~un&BT#RkA{Ht$bjw}ZXOsLCu~xm{774uF349{H(8W>Cwgpa_ ziRb`OHM7y7rR|6ICUpxZ^w3n&q-+YvR3qdR>K~KaGwBD>!x_5jYV<6K+%SmB{vxEH zeg>wr8$zJcvWK9%N+J?8C;-eOZL?@?gq0(KZHPnZwo$Z6Ojm7Jt3agVY#$7>SvUr6 zw@!#eUq65CE-7Cqg#6_6uMz9x@OR&8% zq+401U}XEwr(vBL)*EFH_AM{w#US8rec;to7)x#BRYm36oCmdZx&p6|&K9U|#>9pcDU%>FNa>mt-X7knyVN*G zmvy>WKKhP(?{wD0t^esD9yv%%@Le&|WazhB;#R*5tr5A$u%C-v2@D)nC_&iTzyC+2 zw)<<=ur3sO4|^r6bgh~C3gCE$mkHtk0fK9Vcg(x5FBRFgWAVKMEN!uQ`9cOO}NSeMml3z~gqSC)xpqB)|4ql5^G*iZ(vM z{}e>!7MhnBOB>jVdE#P@(x90N~-oakRn!-ARf}cJ)^tx+n zQvW6KU2SrAJP5Lxn;gu@rZ)WIJI(%4R5|p=^pRf8t{f0RQ$NdzTl?FbE04 zVsp2=O9liHsBMzzZ|j<9UHR>ryc{~48QzWAnHsMu9s9_)DX$60METf`4TdK6Qw z`lJfV&6r@+<%yh>7Y_2W)M@_H+?(_eZiCz=;V8F^0O8S;KN_b$6zpEiSsd(Fhb$40 z-ebNRsocAp_ZGTe`nue1Xk)w~L;HY&0R@c^_%#$E=G;VZfwT8U zVk$+nM@M4mCK!MJ_wiU0DN5YQhFZ0gY$eVRMs08Uyw(e2I?0J&Rl4l$qG_{4MYY&3 z&S3i+#Y9PeQtU64ZbfUj^2d+6-#+Yj#e9CCby>4jXTNF4PwLs+Er{rkwmSw35r>Gq z&hQ*d=s18=1(TJMuA?Hm2}$3b@1lM(iaOT_R67=wTNSGn!5lAWYEYx3Ii$KoMVYN~ zK#{BY=~{J6V57jqzezrU@7kZu!X_I^_N=X9rge?7P!+4M5Aceg0w!i6W62Ti6wcVP z>jNEAZ|gK8wR&e20Ekl3|IC(IWlc?~w)BM~RW>e6m3*$Rw)e;6L_eoh zx4<1<_ehEt@6k`FdO%Q#Z;(wtXwmrpVh?+4p%mu{aY3_Q27u4&UbVJoD`jb(U{v;C z2}_>XTlxHnWwpmzzILVZ*lF@YO@7pDuk8L;oH~BU}$)EFGvejM`;%19m9JCE_TV`7WF%u^@Av(^JA}rl;U;_ zb+SV+%ZP2x?-84-Y3yO5Yq>40xtVqfV&;g#=IO)fGe6gjD2LFXav_y-`^vjbjW_z^ z6HiS3cJQSybc8z2HL0ydX~baDW2$Q>$+G0|wT%jOvz`Iz8>+O8UTQ!w?Wn*%HUavJ9X1Hfb z6#1u=f0%J6sfbw*y+K#=H>P$|WKa5OkUs`jwxC zuZ|Z^SE_s7tb!n@ho7fK-jbFI7dDm3<_Z7G(N6%2L72Kw3(fbVFBfV<`ao4RT&wS< z0-Ktn|E+O~*UnXSraNcRO=d~!3F(=OUyL^fi)8zgZ@%}*ixx`{9Mny~>$8D)+k00t(S03|yjQ+zpFg=s{^myrXXhNsCwAJ6Y1kXrH_cbq2yfCf=m9+$d#=Fb0-FbyVQgzBOk$*!pts4rjN=xeaznZm^ z(jQ!^;VtB=Prv?cw)xQfN#lRM*Kd7Z+DA(0#W59`OD{_f>kL0rl8`%oHIJ%vjo3_y zZ!ucz6Ml=|*rq-drsbkBcxZFxbrr-luQHBXm>2hU?RVMTl~&kO8{2fWu8dU4$NnQs ze|#i%hC%-76KGy@Y;X)V3^#KP`{L%2?QQ^d2leEt1HHf3Sr~S0#?zI5R}PeX{(gMl zxvcS598$5lk9Sn#i7&|SmrKPtC365uNgFtl46&oY0a)u!r}D9V;xh$L>xSFmV!2V( z-q%xKcVYn6cT{U;Y1;hhUXH^e--TVdNG@^0mmb|eZ>fauo~o@zbZC}HNqKbS4}cm6OUUOJkb689Zn38%EbIoO}Qb4a$@GsB=*E zFF1PEw&%0`M+eoG@RvdlM_oK=bxcoRG%3zhvBkQGln~m#YYpuQXG%so=6b&TXs4OE zGBb70eTbna+QY|o!@yMQ<-dS!Go!k5>#2!9er%g?J@JHd7kh$D?KHR>(2wgZvaaFP zEjIF!JsWty-3r{_%ZbtRsCa`c2Gym`)T;H#V7VkKJJ|fBoNzsNGF>*{8D_tOgH|X$ znexg6+#lvwj9P}$>#}vFz%v*fIn0b447KKZN}RRNl#PICubgS=00%dPs!5CnRe*FH zeNwSrHE60S@s8qdyQj!@-O52QXnr$K=*&lxQ*S}sDZth}vHLR?E;>xUk}4XV^dX`B zFn7un9_iSB_@wqX19x-6gPZQt)4aIzY9LMocl60)=I^&%}DRwq`#e3 zdoR_rX;kMQbbmQH4F3*><%_X<4eg^${NL*vLoGOAC$B2#ZERwr_53)Ic>VH6KkJ|U z4`H{Vju6V#gS>y#evpmrk{cz};-2ND=F^)2H0TP>vo_O&ZRylM@{o4}9GT6;P6$y! z@-3tik(5FW>6TgzT89djKZ#RQ!+WjTD#(Useb1R=XV?$MN@?Y6&|R2|l8Q*wlngB! z+c|utcwyJ}J*um(V>f_9nV)>n3*@%P#$&7|axfdrhq+R|UeKgy&!5}y^3p6)flkgk z==U4>-$ki<8(*wgKOV_ibyex8klIUq1P~YhXh^gvQ|+eqH24hBGLD-Y>f{sUz!?mv@%b%XLAOcPn!!P$RFr12MAVtlwK zJoRGh?^@MV|9MBd{MHC^Qd*c(;=`P#?WoZEaCPoDGWArVp~c1&plr#0d2+2A`qsA= znl6WLy=D2PX%E)l4HKOFukKzcCvz%Bz3=_fFKZgT7VG=-5$w(r!{DoTu;1%U?B|!C{^pN~jM;$wb7Sw< z2fx1N%1OQ%O(u3P3Vze!KmA}%l9L0Ai*KHzSdYH&sI}6Om=} zN2A5{`YFy^&u_V;!x>l7^K$=PWi!?ha{=(Ny)iR`HPH62nmx7aiw8X1C;8nt-{!Go z%b6v!EXZjf(4b?}rb89i-y9T#j>e!FEdeI@4UYGsFk!M&$zj_Oy$k|2>XKezM@I4e zp5hY6(oElpmM)1HD;qOWz&jj(aVK8Zbp@`?c+?j(h)w;y9(~XuYmYpnO=K6C1JFf+ z5ICH|wC%68N-qu|?mR$y#hyx+jP2CCiSl3`VKqci>++0Z%aAfWErfuwdsL zqvYi%Beuu^sv%F0wFb;aMZHXmUxrcoiPkTzsFJkr*i|{>6&&}q(P=8;?HthQ>0h=ErXih%Nl$l_wMUNg zB=L6tYv_At_H^-gXY>i52iK~#bsU8SL~P7u_O%{Maa!~ZO({aG~D!yU2rKN^mPAQ~vz*;0>_YaD#a`&7%mM+of` z6jthNMi0rhMY5MkA#NhTR`wZM_Du9@J4xMC+|&1G3W|ZgHG%jbl^uAV%-vBRW^=_4 zv6YsY?-QzMhYVC!1EvbDBA(J0EZ0_DDGRz;gf%5!)Zgi{SXevQM`x6sGA6}Ly_$y0 zHm94yXNpjJ+vg`-+EkpH?!1qh&wy)NIqTEe=UL*|8c{%qvKQm{}So~Te5VG%26AqhdJSdX=$hEyZUt)OD8TXfXGtI`$kA4IVW6KjW%X}D0#`u{tc+tg8CA0HS%VS{uhe+Vq*66!b;3tQ z8y{i%=>o46TR{Nlhz5nu4a!SSK@S5hOIFT+c7u_vK`KlG2-r;BtgDf=L)r+?Z#D>)Kb_GD0tF%~fl?ue`j5D6G{D#;+tu?b?OH|p}BHxRK= zO(XYox!O8tbgROaIV#FmEsoM?y;JeAN-+CxG@sk=TZ5HIyMq0xAiDt}i7vWCfW;=Y+vWgrY2+c!KOj*nQt z;*&-%pah|N^WID~A+xuCH%zMz<%}IyFeKluI+(9WOBX}K@voJK_bED~nx;nish6zZ z>5Bq)L6=fm0DKyuf|dUwLbL;3NBT`{7W?v#b%pM>{n)Q<*EsIL^JLEg-RyWQH&KRN ziG4-bVjR`KzAGJC5BG1Q%Y7`?ibL!!i6yN;!u-K3&h`Ep{&;g=cn;>(15W!1-|0L) z|8LQ=fqeM??-{tjZJd3o6JtJY`psq-J#@0qhhN%55FtiVhv?h$33FBR z@l*jT7##t8J_BHzuC8@ zKg;&_jW4S*|K_gplWv)kFGLyW-dn^JGN=AodG^$9>|V#z`huDmdrn$;7%Xw|?x)Y5 z3Fw#9qpd5a1e0^q$v~AiMqc~hS&Z9C5CC~~q1C3)&7rvhdtO8bU^CU#(hp{6_%Fbs!wOI9;s zjYKpBs7MtGZELL&9kzRDb>UCz#tP*$g*9CDOhkc#kSf>-3up6OfH&brbyqZ$^ zgWcYmS?58u`C0pjYii;_3~})1%#L5p{rxYe(k0)d<@g_3!^siw0RmFf7KLW_T|o&x zah1+176TBeLh~AW8Fmh3uQ4!c_JaopmKBGqSY8)Kgmfdbv-$mz&#%j7<9iPvX%syE zPn4hw2Tk7N+1ve$)fxy+_YKq-i<#Pst5X*(%PjW#iEHF|5*o zlmVM4aHH#!0f{bqSTJ1C=e?EgEv1|Ma#8)@P1*5;f==)R9S=|sgE->o7rF2z(n!|* z3T)tZPb`b@C+4Gyy*i;el|Og<`%EA`D_2dWtZhfs?ehivW>U}$w~vnZ40D*MKgQ}` zm8pK-t<;d@QZsGpcLwbmR93n7*Ts$?Es*!&{L;le;K&;z2~hdwYO`2H>G{eo8G8=( zw(nh#lBXMiFWVhgY(C3`lKfeP|BmeKDa8a=NOf?t2gKb+53bb*fS+;=TeI6~Fk5%j zS9+;YM8h0{%}bsiT@?U)NP7H>vg-%M;h## zg!V?BfAYmo_BzC=mshXiXFVr=qw@(>xcj>5D@x_07H?%Ni7VO^RI@w*gapAHfC3zp z2A|JGSa6i4qJyy@PL4j~Drk7pz3O@UgM)kQco$EYK;*TFpF7!5cP{D_7cg_5{LJ<4 z2Oe5cSkE+j*5;?HSGy=#0aV|eajs@FJB?$kSfdZxKg<#b#OI$g3GN}k`{NzQA?9}w zVNzjC|4bDpu&W!U{F0zH@`&qY_n7;p?X7m@D-+5CA?y>uUIyvKkHN+;u7)>F3urCO zQ>uG@P%-*svN4a!Hu9WPv5&?zPkSC#aHTk&r0SC8uU$$E0QF%&vrhgC!+<%og%xBo%`G#F{byKcl6nTj{u$%ZLd*NG} z%OU%k7($oo=xW+vdIkh)6`J_~%jD>VHus%|lI#^K!*wk;Ltm{w%Z`}q&b9KND z{^=In$|7GcHJP%`TR!M^#_YRQqc9T1!&gnbx7iYyiFKECR#zAq!$H3=Yp$4EnxF^llLC?W=LVtA4@b^A;i?}iND^w#msodQsv>;@P}hhY zloDW`rB5vC5^KVH`DS9fVPNz$|Cv%yC;7TV-Bi4TYP8;rBx{xPm0`9-=>XMauTyU` za7AO+H}g>u&gzI|nG<{Aj;P)vY;L2>3Y^oj58-UzVsmx6?cjY-*?f)ERBT<==p*4l zpV1FKl`CxS)HPPleW!0`fOrXaiC7!JFttP1ko#*^RUeTv>ej3T1+tL=qC(Ac<>Wyt z$N4`c*(2@rZyT_FW80#aX(QK+2_uG~`Apa4T#FVvVX*9I8{slqCanUjA@M@4HY`P* z_J)Rkpth~#b48pP@Ts;8Lnfha)d0?R32^OhWPW8Y_NhH{uU_EUAnNW@)xoC>WIg<7 zR5f;XuI=0Ho0KAG^}~KBUAOEK)nWtga#psWPLYfj$}>%TaQH<8bxP^JsaGY|T6w%} z3y+0+K|}TJOOu!dPgJMZY9cCvj@O-eK73Uuiw7sY?h@TyoP+JYM<<=vwI!{PwI4^h z-o))`3YXd9Zz4@ijT<16)e~!IR2y!~Z8+^0qz$gxfu6mnTaMoIy`XvTjgG9T z0&DsoC7Q7?Z<1PZ#C+1Ep%Y!=C1KF-9DiH>e>2Jw>jmjJ;uzdBt4l!{8BE)%L3U{( zXTBOJ)35#=P6)3Jw*@$Q&bAym#IsxBu_H>5aWzJp@_yz4p}Ie~KJ!7hi1- zc(b~RWg6<)VDov?WZ^V-MYz3a!@dQMC`@JkV71pY+YkY@z?KT`&!7+6*^Dh*e?E>I+~OT?AoPqfWN%x@~+n zgiGW6EdZRJ9Hb12)3j~6>uUj7N2zvjK$5@i{6Zau@#}7m;41i+UXZ67uzWmvy8Ddo z7{9V?v(eL+1W)|tgtfuHd8EGs(j&wfLv#9}Pf^sFIy+?Phhqvw5;9LnSRk^k+BDc_ zr)aCaueN(Q-{|P$AfX2Osevjnhn>=DY$LT??()bA`PH0KhqY(H5#}PFnp<6% zClz#=ue+)P8|0_%PCQ!_`32Y-%crH2Ahh51FSJk3D3U!HvS}DDk%@aghscENTk0M1 z7i4($mbHi#z(N-@lK{$JdRNa6b;rJ|6?$#Mg$#=1|{>ylgtelmko3}8=(iO z8#b~U_Dl-&pg#p`su53^f!E?{Z|Qt<)PlC1sYij@*#MFv%kJ@FF<6CqZQzc4w$fH3 ziL{*RKw~GJ6P2WMD}Za4O)MhK)&Xo_4dYwKcLnBFtEGiEEpgvzrD%9En&j!$qU)Xf z_LJW!#}sCiVAr0V^yy6Q;Y|cq-_DxrB6=;^KN{%vf{gKw^0WSj8)j19H<@yo7Rtqi z-|DakGZ@S5J$=xM6*NVkAztK8_tyLfE%HgS0?WusqGL)?Pa6zB(l>E(%XSHIgNZ>N zyQQ{VaDy45n=U-6PyGrL8De@=U7kGB%ALfaiQTtP&iRhn()n}4%jT{=WH$V!ayWJLQG<)j zREzOoiRbS+730%BuZgrm+THqNglG0n9%6>`rl3CY7-|~k@lp%@Lu<1nbSu{dQ$)`} z!6o3NlKAPIghdsZ)av0aPO&COcsWw#2uFqZcFi-87B1FjFxe~cwTN-UY*zU?^RlD zi!f0yq4vR~tFLBUd@b3guRnfwS0T|_T(Gxta%exo6|E5+%0%oBwu{@3aODMcQ>~+w z$;tN6?oO5Mz~Awg=DO$;XZC2$4nPDMXj)D^9^1MDZRz6cWqYkQb9PNdRZ@So6#sJQ z;K(3NypTB>u0_0%NH!9%Kd~#m)tEBdDzgQHIY&b3ANf}P<@n0&!quPt!47oM?lcWc zHgB+AyRi_v(zmLVV{)lbXmoMy-5v6bGDX{=HYITP>WmG&ZmbbM19j{82LI+cpsh!u z+s9bNhkb-<_rmwcM}`NB)g>R7$Gy<-1S#dlhy}*EOXV7{PA*`RK4Tdf+g>NSdpn|G z&Xe`-Z0p3e&C$Z&H%n1_?U(1fw14$^1#=tQx5WPYaeua;T;EH{?W%aV{W4=wvW%Ok3GGNKfpv_Ku@DNm=o+3%8%rj(ex>(R$7Io9#hg_h??#`?W3) zj(55bT-m#~(=DZQS~rEJKN?YM5q9|4u6$AKP2Cvv=WCa-bER+ixY6+L7%;jsOpofl z>EEj_ZU`gTKbj@(@CPSFt>wCC={oC{kt4S}BK!B|hH~_<_;3DHm#tYc`^uFwMyXG7 zPy7rC9Yi(SSo%Z_{`ieIgHsEmA&_B?ox_58*J99B+r&*dbRie=cnTHMk2bMv+2xL4 z$}(~w{o?M$!;GL%KcF{x zeHyqNPq~TuNwG=L+-qdRw!Sd{4Sk=Xh4tEFwnb3tl!n^5wqCiho7VfOZu?-OaotMh zL4pzX6OL}0*))m{WLS0&)rVnjGuU8bFO<5L3%=vu+qEOdZZ+-lcfJ)HhV=d2v)>?JScU~^G& zKto45(5!S{(`I^ej^TnZGOFzxq0646#ie<9*nUN}i67{TCJS=0{+beGEd$GDCC#W( zJnJ_Smiam*-y1hfsrJ0ictMq*Vuu*E!TOEQs=5#8OyQ&{!K;yzST7*V``!7c&kN|X zUSsPC1}9Fsakz%b^(w*H3T+fj623}Gqp#OZ)`J&-Q%9E%zkN^$af7aIjFyw#7fc41 z)yWtBxl$1-{2ptdP zz4_wFdM0GnMXlv!W3%i~53=1R;{GDvNady7ACc{@imAti_nl`O^+s4@Y7Jr!n{gG` zst1nhpA?-$uij4qH4n^WEgjE57Sw|SY`eWMDyzmVH_Yl>{>S-SnVWdB&NK?rj5-;s zyc)uiuXw8EzpV~0Ej+?T8qVSY1SiKg;j$lijiA;oWaY3u;xqKSG32cl5x)OOET32zQ)`bHkmQn@WAtT=S;uajAKTqlR38qDe!5+~4by$-QRfRT8aQ7jv$XS^v(rr|aYER&qZ;^d zPk&HLRujoJ$WulJ5%D5pgh`7pK;8bNCmoY2TU$5Jp)IotWaNczJCq#87JWGynPjNp z$oVFWG+8cq`Fh4*PMY#ySR7cPW3;QC-5#>eGsTL@P%d}Gj=I~cb|{YY>5GPOG16(t zy8{D{^^?x{RF}$&G5ANuK48v-f7X~&L}n_f)efs$sFpiPCv0N^n=Yg~t|PgAAET)(Hk#Mm_)u6G=D6yK#2mqvJcj@m@%s&b3d z%(RqXB|Mb6PDip((ugq18?C%X4)@V+wR{kT)>f^0POPJyLSJ#28$jG$&}@_*7YlYv zJ1~Gjb-#h^9({V-W@EOgJPI9+E4nJd$8Aps@{zvUWJOb$tIbrpgH-;L!H0QA-0i&J zA|3t1Z6@UKqIPZi5L?vrum*Xu?e}tF+qPTbK2wu0Oe-_e5qZ4Nzi~X`P-2QBO|6AKm~4vNSgcK`F5rfm(mt&!F^)Mz9^lt<_Z-s|~pe^ZyL&!!C? zBVnrStId>ke4v{XjOhOUVAO21ctke)(~?KTe72$t(6x~@sE zo)75Kt|oZK-g7jPj&32X*x)-#rq7$lf`(#iXkXAGEPmZ!Ta1Fp36 zv>=7hcyd-^RYND;4PXXd(QGI_=i^NAQ+D^1AUBBa>BCx)!3W0rcov)6_Rg93?IQqD z)yxX}Pt$Kf$0JkCg#K8g?Qi*5Yyg@vUI6eJ4@XWU|8QLVO2;v3WQUCqzs1RVUruD| zZ^wdX6$LP&saTbZ@rD8a&nmLvPv;?NN4iiBd%?p}7acDWj9gn9NM+ zP|_ZetN~=7H1vXf;^4nIiCNml`NI8@g026o>mMlM)T(8AfwXr3ukjdrfG%#kg+0|! z^S{UMs}-9G-Q`thVYkBWGPIdu@eQz}Q>ARjjZej-d6yoI9RTgjL9HvM3Li>j6F|qD z=!G4g878|zj>+i zD7`EXhRt7j#StG9PI#2newDVkCjm34yvbZ^w+jzDVF0A&PYeSCRD_Jr6qXUA4wW8>Eo9XVbmm9kGeG`~<%S7}{Y zof(cin2!Z)I&YLCyv?BoxinbF9~DTg&W<8MyUK1Fg2TftPo2k0lP0dE+yHd7Ltl~a zw*$><&YP)3ol5J+cWl;TCOH@DoJpb6L0%ads@~tW=}Ii9NSZ!J@mjR!Q*FBYAzN0B zwo@ZT9_#6VJIR#|a;)gLfyA8768(p>X0# zbNFyM7o-j~?^N-STWFjya5EMG+rY1XAzYH^~s&nai=4A8_P zs)VF!4d-rf^r^~vF@-&Z0o$VNQ{F?DVRxeEK(=Z<nlg)Jucj zC&3#k)trZlR^HF-&1p)x$)Z?m2v1kFMNOV;1w;pzx;b05BxHLn0B;9^pGod z@UaZqj$`o$IIE(OR^@tJ3R04U|J1Ck_Nbqi%#i!eh_kgfb=8YXud&-Z1fZ z>aDSXdmujXVv0J+TL+4weXiA!8Z(WQQp!@%C_s|^e35c+YrLg?p*h&xegKp`kNvw`E|e=!ywVgA^cNFtp**N=5(JI-Z4NVptEv`qcvvczB^8$^du6ug zFebMITewf@y;;NOcpmU$23179-gCC~mSv(*56*#=E@W$54=2>hPtLR=`skcLZ zR8*7Xj0VQ6z2kw-5;ooyZ?@sGvsM9eE_T?Z?fpYHg3(TIJDjPfxpa|FoaFmkc4ywA zft5pp0hKf*9VTg-Zi3S;?VAp2#)JY&B=Eu zx9FaT(^ns=Y$8GTKb-Y%x|E%uIfGuM$NZK!-g+NEctEugg3Re2I0d*; zjojG_TCs$kKVRC+>h-3GJJ-pN36Qml{OojgJz}%iEIRlIH9YgWcnI$Eoo8y$nBYI1 zgR-i`ot`sPd9~l~1Xq3W2M;GbDo5=i_c(ZT6wx>KG#TWG+6}z5TenF8dS>`o`c6s(Q)xdCB{%j1-BAUC+Hp8tl`%!MBw%?i z>F?XDQ<0@z)u2ul`nak3c8xeCJn$YEwgL{elU{Rd9Nlt8wx zM)Pm#`mlFiv*c$61x-0R+8$_Irheo5C|tY>50wb|7@o_%lP?gsMQk?4kJ>!L8XKxu za;*d9hHAbBj(9dba<0TXlGaUs1uV(c{|;<-!kt^X%sd>ZAUA(Q*Ht-}UQ$QP&Q3in zS_5m)ckWY>TSzdKD}>K%S}%c?De=?psXxS9HdUcBGMCy4`JCMG5W}Z9+U68R`IChaK#@f$l3( zJIrhHH+ZV-QPot&S`Qy<-!q>FgcZs{Ky1Zd<=Kk)@v9Iwpb-BH-f=So9 zom9mr8(ZW1Ca&qYp&Xqal+*CZ~?4!8Q~yqF1*_1Sr^T)yyZaa18C_%sqo z3TtEgJ1PP6rn>wmRY zTA!(O<|-=Ezr3KisvlDOUvkRtUH@9$wJ~ZaW%lTvoH$vsw&iAK2%nkDrly@WfBKNZ zjV$Zl#k~Xagq>v;gky;9s8N&|>Pm~gdy55)-S1ZkV#7f1o8qJXJwR_4X#J4il>SJe znjy%E`qwqF(Q2DmeVOTQwFCRs_i2;FOhUCk=9z8fth`+?;IvVv$iNdHfE0f{OFq&< zliK-Bb-t2u%2V{NPbclRf)GZ!2G2!d?3kE3VLKZ!C*s-SiP1ogLQ{&POJoYC>)`Ap z07<=p1E$BRHCaq+k=2#5%8qt)Ik9GSs)n1?D0#StySRn-mg`bmFqT#kXbZ;(lgFa} zTZMv)@5tq8k8JsZU0CXD-x>5rAzXn&?wAzOu{1ptS2d{gCum`Hq=f^>rf`u!6=KzT zY=cC9<5?TUo!Q{Ncv!uCIw3%HJt*E@z9z3x5 zb|zcSogx*5f%0lEDLcCU_8$|5rD1q@v~9IVWHl?Jj;4wwtB<*o(jSBs)g4u8^7s6B zobD?E^YwIG#xS9LV&el7Wr;B<+AXY)sq6dytt1V(hhCH7Vu}|ISUXb@@m1Z%@KzPF z->a#I-UK=q%-FHW>~ApMF-Vqn}(&)jCjuZbqk^0|rWJY~6!tU7;*K{2er_9J0)f z-wpqs%B)R2Qv2R}R86Rkic*p+y^72+gYnC(&oBCqwjq#>xyTrm>O%WBVj5ZhJf^*8Qi*bZ2J09|u`Pn)N zcrNz=Z)qf6GMSy?IA}6#@{A+q)~a|nuN#(nLX{2KY?q)T=sBQ4b**~U*-h@aL@D`g z4m^c;RyvY!YPAh!^Ex;j&No%*fm%(d9-|fB#n`~{;@($x;JUyDl=O5jP?ZZN_2Y1C zD7puoL&uPlXCCf3Y)1w8w4eTeI-e_jj04W$?uA(}ZS?My^q!YK%n|Q%^aQ6`n zhU=M=l0Pj;O02Hk>O|fH4dTJ2k^SR(4RDR9@dOZ#t)XOSuiRVtE$j=gKqxKw<~}eO zjDM6>8|{!H>G_D{pc6H&h2XrRu!l*mV>Jr`3#mX|pToM0ub>vPeEl}c#8n6l%egBg z0h~vw8obMb*3NWQmeZ<0tWiS!fR@Z_?o@^Zr%xqK!B>KBSVuIn(o`IdeC}yZD6B3u zKWUfdw|qP~jg3#$6zr$jT)hd`_uciOZt_Y?G@3gK?ntq|%?`&4{#MiBQmy&v5?AHg z)NCM1yEq9BdZszQ?CZ1}dLhk`3fxE(T95W&%$p4z!_aS*2Q|< zySQmMJ}jg(<-+o$h`|f$v+7>xBqWO2E(#ihW=!`2FXM&Y1RgfB0^`&SQhlEi!t(d~ z;y~`kR4&i3Gst0(MFQ1Mr1<|)^xi>|r1^PX`pV4m-utTd-i|lBGjqGMd%L&iaUd)S zf)GT7C{dIYfryI@MMz{QBm_eu0T3W4+~Ke|-0kA-c5i3a%Exy zWh(jC{M!>=e2K)=&gRLWXDGdL3o$3Ki&d*fY^vko3s-J*?*c|fqYuX+Tqj%y zD3#9Rv6&I)(uQ1Z?adGMnNrNsb1CWOfr`sz=O(J%es#*wa;LgR(nnrA2|mnMJ(8uQ zzVu^a%nC=riltFZ z%#8kY($?P6PHC9l=GI##F*Na)ZY5>ZDLA}cq@GglCD+jbXN_6K{NebG!(YYZUiVss zq_6Y4f3K{oKd3ZWn8X3<;b{Nn;HSecgB+;`I5t$Q4Ma`wS?tq1_rXZM7PZaINVB?* z-&HXvM1p_r{IRYyN72zEnFqfuk#IYZVn29-nnp7A3$E@?o(9fFJzIh>-D+9tetqKm ze*Hhg&D|lGYZPQF+gkXqv$ykh=(_cwq2}X96OBoexj%PHwON1l?TYbR4eeKTxa*$< zZtmwGuai9!?C z=X@68yrOWU>de;WzTteEG>f=-{D8-{UQUvRI_uyphejt=Q3^3bsre1$Kc9T1WzU@c zF^3~xTIdf0rC~s>HQ_OMhuA8dMZ>4WJGR{83)!{NMp0>=3gHVXw?ST9)81dZ74)|^+1$#%yhIBud-5O&4YVn!i591X8?3wGgf3Bt*L$2kgbI3 zN@pv%66;Luu{a~dvi+7Gocn5$`gsLq(O1}yXO?rqDeLhzF>U?ed$b5Py3c~w7aZr# zsUwZdP#d;3-!fF`deEYXj%=&yQvJ%QF{T`!iuBzx(-7}~Mg*_g|UsJ6W!GGhecz$-Uy8B@x0S2`w&WJd3DU5 zELx-##H662NB zf%G-J5{1!t{M*gEb=D^=Rmmt{J~6zmD|)Y<{oIP4KAtqG7X+7M)Q^vjc35ibXbY`; z!2U31dWyWEJA--MwTjCsC*y3=@N?1vlv5qAANmdNf?L00+rMdUqNLtyoFIhPDj{3o zK`U{Xx>%0P_!_$Ilkdu@b7nN50-(Cpk?7=1^(Hg|(|#9nc{tUu_nj|tgG(H7K@WX7 z+853Nv>!mXmPeabA9e_(fz^kkeD~+ov36L<4hOL;iM-HEsvYOajHy4@Npl*Ecbazx zJJy$?LvrVA7ki1q3Hh(qhP_~q)yR_5CS+@;Ifo&WbAMWXDujc-qv^18G`kYlU!!mQf2Ed@4!OC3AH42b>D+@CX)m5}BtQF!{DVwm_uy?m#45#c5vT548npH&cG~<5EJntWk zW(Nzcv0v5q+7n^x+GWmCM=Ta$0FD7F@eqF^kQwbKRz*{lY|Hojh^U2t(OHpW-f`nQ zRJ=q;=oj+H@V^~+dd01WcNzx_H&BJU*>h@VC=_Ri`tv~~WEeUZSKk8`?={%QqQtdI zc^*fqQ(l9q(+VoFfoeMUCOTh7JUgHgaSdXJ+V)Jht7^~YFBBV6kBGj~RFaV<0h!_P zx+&GpR$|JO)Rq`gm*QyRIaM8%O zz#+U`3G6b>LE4E+e`AwVhECgU6z6rU-S5r0?osgvtS_(|P(7@T5rg&H;kPS-aLI5K zjC1hx1wy%2!#*~FhPg|#x$o90&U(@^fR8lvTm+wT)@Z2EzyR!k41VVzrAZV40e{=T zce|!#J+>_csc#%1ercrK0Sc_c45`Jc#JdR&ubN+$_JX_0{tOc^s&3P%rYmMSMIrH3 zGR&uU3ZD?Ney&!*q=UYrpoJH+HVJAsM`gpFj$0bwnxI}sEXkvTOIm%#F#E%~kyVG6 z%IC15n#iqKnqy8~aC&^cb(VzD-fyNgEth6!I4`)-cstej0e&dP0BsiBGI3&+UBE#pPtp10utQdK3Wwf*+wNow-)SCO2x@dx}E`NA~r6OHc+w0A`% z=ZCC4^Dk#{Vh~;^(e3Cz?=561uSJ{dB+?+ZOTd&zCDW@*#0!STi3aI92meI*#Jc!R zOF(52hG~L5I^r%%@xmL^4-J@d>8*()97ZQ!7{@LcpR&!b`-bH~w^0r9;7jpL--{*2 zdS9cC#=`iRy!Q|_mE2Pn*Uj&t<_tODQshgWThb!AaEo}l;%3%0&Yx>7HQVXRl{I48 zy;pP8Saq~5k5AK$De)0DaNdm` zHMuX#agXgsh3pM!^8JA@zkSpAq(hxjZ15#@#2bChl~TXPB76IN63MBfUa|Mqh+I4e zmUsW(9*-pEP8PagWp|3j`HMMI{qcVM(%mVDV&v@bbz$sdh1m$M&ESCq7N}cv^k{=Z zyg}q(v^!a3@ zw?69O)ikKbuT50Zo78^tX!?l)VMS=%Y#dZm)y$dA1KcNhH3@k^ho1d!(qY$_=kCYr8j-{w-Awc;i> zdnq#Qx@It`o;H{aXH+{%G3PSd6WsTnFmr@cHR;8l zAM@fQXFlBt8Wu29Aj?~g+aT1!(Uh8K)T_FkTFQF5y8~TUy62i3%_`lQ*d4meTSey3 zlb{oh%4pqViKD9T8Ns5TDTnRmv)NE978rCOO&HLjdN5D`vJ+6BqjDV_*8Tan6w|~YdTg#kR}ZlNOkw=w$9xR zm(@Q54v1NzhH(|*6}#`onD3wCdEl@)x0Dn2uN2|FDKT@J*qy7C^A*~37CVB>E&@NS zTyYBJST^J-AAqR(jMtPVu_-;t)a{Nb2QpUG!+o|iG{J^t-aQsYLW4th=Mg4biRd=J zIhumboFx`1@#d$1ooh|rTvIvN^!78PTWTh>M2SIIK6Byx$y{g0Ksubor4zmL?EpCM@Mq*$pi&tZEnDGXDJD15 zr)?GabefogF+WVaHcvjF=B^dXnt_@>@a_}?k(VZB;ZMiPP4RV3G)Dt36F1I-zaS?L z;eEF;Zc04id&y02zO)H`a{4U2Edp%1?eLwzLMCZ5B@Oe%sonb%nAF;?Uev#N@!>2A@dF*DcBAK2MB_FZ&mY=2G!8QAI_)U+tT1hCA6Dgi62@)9p;7 z%mkHiRUeaHn(Y3G$H~2ELT~kToZqI|qH6q<#T6mWgisGlNV zX>q~Htu~RvJ5AIO((fsf>%aDfhZ=HAb69ImI)2=SUOi>XWA-!rAUo0ke21qf03-31 z`W9gvo|J0RsGru34kt(DBdgo%q{RXl-I=P4D%xCXJu=GnOl`+(3k7G~%IV_!rO}@` z4%JeX<;$VXn$JNo%rLV5>>M*@d(|R+nKrvjRSq#I0^wjZwY?I+)&RpD$oWRmGEJFx z#gc6@*co9B(vyzGW`@UF4rTh)p%n#{nY64%}ZCBsWMzQ*Ob*Z{(+Km=PI6op3$6GQR^h#Q$an>j)|To zl~(Ixxkn>g8J}Xf_${MYG#nW0eCOo`QM**Rid3u=XQ(-wy@UmZjS$T*~3=g3I00lJ#n|_@@F&dnTCvOPIm;Ga%q)j9G4Hx{!1gXXGGv{Q`5tC_qnEM z{F4Z0c}aEQE3>^}eFo)gSu1oN7qt;|<>xs)&L($Ysf%WhZFpdp+#5i{7HGkG%C;%- z1_FtlA$V7*6ZOH4LP)VK#x|otv8wBDtwE^Nw9_)^egJCXf(C}Ge@`4sQgoad32-yb z?pA$+k_c}oHOV-qK6V*18i!k%XgAgR-q?=L5C505i4y(2J0z$p6OUTvwgFANSLHCR z&3GKvpVnH9X4l!{U4BE?d6DHt?(4N0xFy8XE~A@ViQa|B%WF!pCYpmQ}VV_*HkQc~7O-n8p z-nZjvM=whqhK#fdNO+ow{iVm`5-PoQ6XD`5cTL*2louOd$u$3(!Q#`vXB*cuGdMn} zCh8W8rUnk_%I`B8ow#eeKY2V$j;a1+9ySKQ^Pya&bHJ?LdqyAezO!N z8`?yfb;zTha~B0lcFlQ@(IDmS=42_W9aV>&9b+$S%d4J@vmv3TlhwhwY_+IQx;lAv zNKW|sGrYjZ)E|CWR%PFM@fBwlC-i6Xz+kZ(IwYW~7$w}$h17;C_}YFTIdF_;M2*!; zymCU>DoeoCFlz2pb~|NyX-s!ZukjZ8@wy>5;$RGNIeLC_kf}um7RxM!XUP>ZQnvrYFS-CEF|ly!$x&!%Kh z{kp`qM)-^^Fe>@ad?ywgVj!;W2P(H0w9j#Su6T=bgiT#*n`~>LM~K)oh>gBj7H)EM zz-B42Lk3OfPjZJ>`phCXDqu{M?&=Fz76vW|=E#ZW^-_MjC|j5od(dXpf2u8MvHW?_ zx_ry9Whj-6nYzoa2S%#(RVrdy)X(}R1)uh#dWL9)MD?iJ4%VfcS69z<=1ymr9cEGe z6M>NL1t!n`D8Ekgs`qrt!sPL1`Rp~}LfodbD0<4NwRUD3V0!>HJXdd=&UH3>#5F2w zFx%Q$2fYyqExuYsUk=EDH5LE6?wP0a`e>5$ReSK5D(KF;b&C0H{>6^aB_qbKE{&N} zUs6Tgbjef-M7&bA3y2e0o5A%p?xxDC|0~Ng7ba`$($1R3K3T36tir8cepvbk{Qs^e zQxmp7LRpRI>;$|jPGpF#Cs*IFXlzHPbIA7CC|PqYIFnMUMUBjc{A%JQ&3!iBext#= zrXzsScOPTFttLY4eC)_?4l$|C?&V!%m4HvNOV5N3{O@M+ey!zw)gM?oqiPUJIme z4cMcU$Cs4*fPTFtRXO3xlmY37&bg|&6>2wF8Ip7zl{2du4T3f5Bq15CH54HnJTK`8 z4wMOn=XzSLhs3%ukikTY(CW3F9G=seLAcd5KpnP$sY-Np>17U(JE(w2Slb%t+5{Mw zCRKK@id0ebG&-+9V7Xne+Wgasi6YzwIso!x(4hd6Wv9`?-?2dp(fKo$%u)G zw7}b;GiA1@Gm}bC(&S5iM?rsF`e4#;z_`aI?8+MfkDue-6PiKFhR9ogs+xiuo&v4)4m zs~pZ5we>+&pQ`SIfKF1CNFf%r1O`aX@JKM8NaID)i5J7YM7r=T-dG#6v=L&%s@53{ zJ;iy4D~qB7uIq=z$*y2X=5=jxhz=VbYi~$&H0ZF2_#6oxG*Ay_$S$l2N%Fd>Ov(=^9sI`f6Rp17(=&VhSPVo)-U&y*Q-dJQ&zyvvX z%Mn)ZC~UX>YJ?#q(GK>tO#bO>iW`@Din(7x&%lH?lHTd8z%k=m@q*2NT=6&HDj{V9UPMK}nSRnRwh!37UaZd; zn1yL8o(ili7#r;;+HT-2zk862S`SpayZU2IrT4!TD@MG)Af5>s42BAfQBhUk zD671RGupX!*Fl}s`?_D4T|(A$ta&wNmF&x!9tnIjyh|qRNB9qfkD90UN{(K#n~H4j zmgr?bMK7|TVSBXgWeub7I0_l+xR%rNVDnYW>~^h`-|rNJ=vHp3)j7txd!kL%UcoT5 z@La?{ogQ}7>`-j}TYcbNm*2}=GWpOefPMYwDQS+9b$3tL;@CtPwp#;c%+}&>7#;0I3LE6>e-lHFDbQw!vjyn4 zyCYaZ|IPevWpT`gfvt5@)n<=}w6$BaW=&|vNS*I0aZ5+2dA|+V`z9O6N_0QfNAtHa zN$3WbN1SaiaUnf(%8Tl4wMqKMtP~5X`#7s|l37`iy4J3oM}|?g6ouvuT9?n$Ehs=W z+B1REO*g|YSzQ8wLY2>-6njJK6qM^Wc&72@8v$J(W$dfhHG?ZT-IsutYh2r@SXX}$ zmQI{HMH(MJ|M_U8`NeD5npP^-cDKzP_uU|7Q|d$ePeh_K9sSs$84G-OvQ2DsEPx)j zH{$&ujr`kXrD%EkiHR_ z$Kw_*cSZ`X_i3ST;<(w7g{kTw;Y2?{-#8|}3{|LAhi>0wLWb*l~Y zv0!9-U-TcTOAk6m9l92}?q!S_JCzX=G(K)Od33~|W2o)T;(3Fm@xIy$4ivgt!q}Er z`L)n6`8N@~eRf3EKQ|s(=%r~wO!xOp5Gfe5x-xE=(zT1asw>lk92Ug;sr}Ta={=>O zN@q03_7$6N!SgVj#eUO({-@WD=Cy;2(`fR%dq3z5#GiQMaIyzJMXc6@Y_Sw;f%9h% znk#>ze1zD}zTC;QLDEK+^W+T$DlunL?`x*@F()i!4UJ^HB?_G~{}i1A*6B1Jzv!-8yr3zq#^dl zn?33y-RZ>s_@bIcHo){rMnD&5RO?Fgr&*vclsJCNsibY<6`iJiD82vf%JBK8=XSgSJ$4%~=A_dGmkv z?7omJ#_A@QE8^`?Un%6kMGS|2dcMvQ4Q0?6qio%Av^Kb4)|#hmhWa3!G%e3dse04b ziPJlNB*q+tcL!bE+>gpUGE$S4DMQKG6*ersmvRWm>?P8Ezl}8;=&tdUbaEY=0mvQB zx$7Fgy-bOXqj(Z*LZ^n022-F2b!SYjV9CLdIf`WdDbm_U(x=UpoMS+JFZ_Q|gMTQ$ z+gk}cK)L==jnAC5cybhw7hfdulE=MGRVHz71C6|xFD)30wQd0=p^s7?Dr-?|uhFK^ zwvWZFrKy795dRPqE*~$Aq!|SJYq=Rl)?Y8U-)|>qmzTZ#_buJluWvhw!{X=@P}`<0 zkIdTmP+a8$*V9HK-?i`jq;B~Q-qgtbQhs%+q%5i}_0}r)69h;|Qi~Iy_ERek+W>Wm^9fZ5YU{5ws^2#`M+Su_4>{6}qnfv%MK z`gSV{42TQgkI?rXT|MnJ!8kosckjQtF_5^8#7{}BC(+;Iz)jpSvy*ZMuN&iaSDY9T z=FH#6mrg*NOUFGmzsLqT;MTga>$d2RO?yGl?=ryt>Kw<66Z3RP+$x&70+=k?{?NRB zETDh;iz%=CZUK(K`p3SdySf#Fw+O~xH94J*T>>ovGuVsU`}WUbQT;D@-FSZZEu8D_ z|DvZ+c?be)vRs|06O;T*10fkv(nYzgo1 z%3+eIx)7D*=uz6XxJBV6jzcbHo2cjd>3Oo6p54SDO+ z$_}IQWyf3=+%kM0D^L?Awvae35kitJV9%AD2}0u#6?;I{lw{u# z4(1UklbYC6#jTeSYx8k-;MXkrX<+)xRICW8r!9%5>2C}B@c3Mz|s)CQV$h^Z>meV1+5*wdJC_rYL~5z)as z@u1NJh{xbChBD0f0(Ra|`x^6I)Z8?uQJz#e8Vk}SH3X|rreL;}K_9}Ti+P{`DWk5T z1YcB7ET@C|Og_;$yas8rin|Dw5XsynR)rMhr`4=-Y^WPs>_T{_1hjHdJ70wyqmeEz za_SU`^AdZLu&ChlR0{sbU0mWRk0JOph=88$K@4?q?}r#1GAki_PSd#LMy3t#Lzg;(#C> zcz%j&5#9HFoTTN?29q%J$|YTX(`lnRSjLp@4%}+{Li_4I;?Md?6K*L?k=kP=>k>Ug zn|NS_J(%I-i?2uAWTKHfSi%IOwvQ3#E9mxHH7sm0VJH?_IP1a{EaEam;HTyZ_VA&_ z1-L*>x*}F3$R4j?;;@eEvaihV*`!9h2lm6P=0*WHd+r#a{Iz<%kW99377G~eE#jn| z5gX|s}X`HX|9oguVB5G0jRz`tRkly6nSfU+MhH zrma-WZ-#g}PnFS#)!7ZgZY9@#tD~;OMB@(4xjkp+CwUsN`{g(H zUECaTI0hlSc8gbGSq8M9FhP5qtK;);A9w zXuA#E2oTV~+LnD5G=*Zn@z9N$;RNSEqk&#V(T*Z-oIoljqtgV;#kE~H!^yx64Kn6? zmHvHed1jO^Y4hT^xDMsdufUav7_vu31I{_UnP_XEoDoLx0e&@R^)VUoC8IkX@0l-x z?vTxdab$q1ZMKZDQXb(H)4;s$1loMBtLa6;9Ap{s=p)k>a_DJFY3voM04K(Ijeda7 zX?Z!E9|t+%lD8{xt#r!v0a9YLRlAVdTK1k+a@g&oDQA)Bef7+VaFamOjo7v6uB~T; z|9;ou{^2#D8*+5o`j@+bMYDl4kkyXXT^XYQqh!e#a@-M@^y)O~Rbi;is|UkKz)jus zVl2jgfQm^^EpH&1`*3!MfCtxbL3>C%XT9*L)-)2+=AErg=m@5}NF*V^8MFxGes;pX zOcIBpKEc(bE+^_-di^krc?mHCVKiv!YUc;2{zSL0^Mfg|qwU{AETuvtW=G?24{IaL z7}M)%1#ZR;)8Z!<<1r_#1gj^2(9RB^Z?>x_nQf>adckf#V|V4eQ2PPI1IaW?EPm+CRw@Ptg8MDHFh|b5CosIqeP#gm%VA6#KOv zV*GNaz&Y8}p$|H$$3>Ytz=P97cWLaRq1qrx9) zjPV<<#zO7O$Gtlg($+f|=KDz3w#7o;iQ?m1!pao$&~vO^x4Oi$MPm=VFZvE@oj)@! zcb2-huhMKNz}>-r-mjP1vHdr+6S=dAFZ5Sd^ljmGJ|9aQ=Vm-kB&dwQgUGCvv)$b} z9)r8wwdKK`&9Uu2a4I{awg1o~E5a}DwQoBDd1>5M8Ed5yz5=Pd(wFNFtvc{=VRt=I zF8GbS&rCR3+XdU7Y%PHwvfE!Z}QQj~Ux!4=%)0zss)+^gqr*j!<_%oPGHVNMe=Sr1_ zCD)Hz+Oa_DSkJPjsr2?H)0vaib2WJj7@a&+o#gD=B$`lgp}fS&b#i<#_Y*GquHC82 zp+r76EL2lt!pgN?SRR*dNUe90M&r&JpAnPh!H#GE#+L&vOTNx?i$9D91kIEQ%?7yU z%)_0LFdBR8cQ}In$;Is(SwZo9SyRWQ#|vhS|FcSxxSOK6#=k(u4LQc7e#-~EpUYuq zd3XROd%rAB>E6VZvbP+k1Y&s{eLhM_?a0&ptCGn!@n~S`80cgzERnPt6l2W1q77@q z)%rg0fj$q8vD=-(Nl(*n^rHQ0KkQ;Tjsg3%K95R-TH!hwV4gyQpCrAkEPM?Hw0c=I zDyo$$Xz?E-;ZE}aRYfLhZSr%dtqs_E>=x>aYmh|!X366E@FOQ%a{ZLVkvXUSif^{B zbxU^j(+7!@x|5#SpKYhdN~+0>Qqry9A=}qNkiEfHZrD3e)XqkYMhC&V9r=F9OnC{} zYq#5|n$r7J{UhZdItTC?5_4%eWF6RvRo#L2OLAKnTw<$0Z`jTh4dW!j0v{Tzf!ZQx z?c>fMg_>?l$)Ub!>EVC|$J(v<25!VhI5$OUq~h)sA>l zUIfzo*#Pa5CE}I7r5xpa+?_6_D{Fzib6~;n6+$hX4;nuH@UwBxPn%49T>vkNOm;$G~WRS6#aXJK0D8z&OC*E{ z+6{0neO%!2DKNph%2}xKV-}gsG9F3I*Z1MPgbs#3(p;=z(y?M&2N%^ks6o+!m(7Vk z)kv`R<<({pu8Y2F>~s+6O;}uw;H*^>1P~ozIB{m9>SP*6)Aca3R0%;Zx0{6h8T&Fo z+c4!M;dhQvB zNk(HwoX=F_qfk1NOyF$IWf}CEOw*BaiRyP&kTK!`{k88GFg^`=oPQlx8?X2=lVC9Gh=HEw8jlogYmiBW%N)`$HY@gqY2AR5F^eG z-z1s%q=#2G?@E5DaYqVxkmY!vW&5XM@}lj$e7jkmzI3uZm(WOs(`)0yd1KHG)4Fpm zg>Gg-N@L*CY3?mGd^Bkmq7S_n)0!NY7lLnv60If*d4teP1 z;@B2&ZdN*j!{%ydGb8!kfy3^Mox%nh$>A;`zF^wUx16U=Pt*;Lsb@UQ`_z<*v#(CM z@TF6ma^&ROhxur)R1*7$t-3W@#=>acwrvq6q09BNnhGd8C(|TcXN|PIEou`m2A6m2 z>Qqi0V_Q_E^C^Ia*0DnHvMk+g90cA7CzxZU5EIV|a(baoUIUd}70%;4gJ_#C3)kn0} zk;=DBsbXj9J-u~L;_5v5vrGIgDSQLk~P1wWQ{_V;WM^z&MoCuVdn zf#00KMVCf%^2GWxKmm=YD*S;5m92;Y-Zh#hJg>iYUwQW#O5581%x)LoxLqFgzk-k` z-T&LgPVQm*&c~KSwY(|b#O_1Av(mB`;~I@LwOz#ZR`VOMi4pYFjN?` zecJHwDrE;dN&oc9nb17O6cV3`Lj76kQvIKV59t0dW^7eQ)$&#^RhnLh+{T)1=L_?p zwc^o#6!D3t?}BBr)U#$!AOIY>RS}*NGHAA)2ok4~3YXpw!u*2$f{X##EzR-P#&(h+SruaVRv&0P?z@dH2~%=;Z*f}8q(x$i^AtL9NqlUWx(A zJ&`eX*4?g##tm4z8&soIV;hDsgS&_zY0`XPa^^|ebkWqIx?e^5#&J;E={rd1aAI=< zi~Y>AVoQ=4u*(&jW9KAI1R)}vjjmk2*=*7uT^3G3BgjXdN?pHXI?W7pFY5F`I99*>W|g1UTS7t+<89}UYdf7(#G7D~VB{Q~gi z3q&!q4%(`{Nlzgg8a)pozaGzt%HVk4AARtXn%*7XIO3V970~4ek6!|jO1%~*hyZ|O zhUFEP+GtOqe-W?!nx)^gcc|yd3u#BnXZ4LDufBM{HQG6~I{zAX>Hhe?w>h^M>y%C| z8@yk9QZ-M*)x(#5hihWjq7DO2wtt`rMbFUG9NwE0$$ChE)c!g~`#2re43EJW4j)Q)Z#05gEC!8v3ln zQDzt*ZKbfv_3VRlSmv{c&Pu7wYR&47_lgr3+nbo|c6E!Uj`Or5-Uklm@5Kdk=ae+O zhc&K5N&{pt93~HN+5N6j4wv$F?97(*Gbw$uZ@lP5@MycgZkxKPJ8UImTo(vYllw})CoYY{nYqawHP$|i?J)v=?D>#I)l z^7zt{2kzG_f_Yz;gF3lQbw75VO6Z?>IxoBqw23bkAW07xw4zxuBi_C~t@%j;z6`Dqb-yR4WW07&Ugd3GC|MORAKc%>c*3YxZbEsb&relSvGvjL$O z>HQi~#TV`j{aiJw>~GqAY@i)@dcn==;@yJF-Wgh^Y7T`}wg(H%@0;cajQ)x)rT!Pf zj!y7j=8NAZeEALpZ;fW(iz3@+i7!GW?Q|<>yotBg+Jjqg|5m=>^R^A?<^zi!G9aGO zp3wqR#Rorfs!W6<^oS{zQyW72g(-}DF*=KygM42lOnxdKO#E8kd!ANpVk6Wi)#yqK z%tSw}S2Y?FMwu^6{B|&O>C8Hi+p8MB<545BZBJZ;{aakrPSuTN_j!$qFPICPBf$YV zdTQEIEZSj!vEcuQZ-?_=w;a4hTP!SGVf>fYf>of?6AZBp__y4i^ zKeM^?kvT#nDO>y0euHo=8m&R|uDLT}l}_7d z?ZBpp?P$&Mwf7aTUZt&Iflww3PQF_ahM`VyZ+vt}B-N&DE5d6Qei3tfMYaHQ=y-jh{ABi~spHHbv}r9a>HxXZduUds1Yt#@7wl~(-VMRL-%_n|;B zdsypiV>1{{?OlvJ@7+1odK7DwXnHF?){ebknsMtzkX#GPv02>}q@gj$dJejp^87~) zZ^EG`_kg-``Kj81Y3x_KdRdrk5;mIUZ3CazjrTR(YLkfAWV3!}bPX8D)=B5F7EA&{ zlRzGh`)YQMcJ~%xaIF93u=ybeau)1ml=QV3mhzGVG z)Fx+#oQ5@N@O1}Lp&$uTr9eDWsHmXD4b4a{6nAz5^{Uh$RYL7her04w!nj`R4IZ5{ zfW0HDD)XkQLv-tclRojQez<=g#!tu{7dh2y)O@&J!Wb-YtktXT$%yWUl?YZYR6szf znLJ;q$91bsgw!GHp!^A9Q#(;Aoj^N750Qe$<%Ks(f&sVmv6iXH)h{;l=`)H^4m21i z6$T6;;tgF&?Eyk9uGxRt*h;f~6GU_8T?8rQy*d>Mopo7+YEzA76!p#~C{>3hM9~@4 z#FlBYj|H)V0bG@w#lG(x=(HUe0=0XJqPLK`xXCdPZT=uVbabT{?CG?q!Ihdp0YkaZ zOViL`cM_Hx653aKgLStv$oVDRF?iUgjT+iPlw%NL2E*#$d^l9*EUE-YYlclrI20QU z1iQLcXb*UqlzIhVC1a!81EdiYm8KGQ)Y@hTm+5Q$P{o#M$ErC!rZtQztf;B3XzRrR zC+Bdx`b+b=tA_YBQ;kw5&yV-;suP+hHAX|4Wh!bs{g{ExrcS@WN}ZC~tH)?h?cdG~Lw(HLu^hDzA8CpMd1GyPyOo;Jo6nv} zNyu~}-%EAQN9}0$q@^;g++2blN7mZr zfApF2uP2o9d~QY?pZaNXs)~kAE~=Z;XL>?k`S8`#+_LB8Cv=Z-78WQo2>nkxi;u70 zD)(2i%_q4A^#2+RFTdPnM(5mkg$Ui-zz$QOP?F;#(1_Z6q{D-xZhgV$Esb?^kT)PwqI_s`G^&6tX|`-Ev%l> zGPs7z`&u-KUY3k^DMu?(=M3&B`{P1B#aO&z^UFF^i1YD1+-Mr8#%RtY!P{Wo0MCnv zdiywwl3Kd727(e2UYCZNRWiGFg4zzd8%8(9Ll_kQ+ zv)A1)j;Y31ZK@EGTBsEyRT|pnOuy&sthQL?NfB$limF|w;eM;;F%lCApfJ^l4M?KW5!1^KM*MU2uXOyb4LymKplz`kT%P zf^Mt=3Dr#oVVp|dae;>ZyliQl<5%tNS;XkD)U6s}OC*+d+2 zhP)H34{#by9?Mq~g{@Q&uM=(+bhf2Hq~q9q5n!x)hccqzQKCJo_m=Xa7ks=$bjA*ZH_Bn*!6B#Zks>+d>jI<@oy$^ z=z1KDw^+AyJX>)9x6HYEp1oFznSfoJ8}8k1*sDl8d7g*$jz13bv2yOfI3BcMYo;qD z@Mf=<^^ha+t$Kl#V8I?9k+#BPbc^X--Y=HEJ##J$c0gwOG(;y@u|9OXu$geX32_YC z<%4EXBMv&niAUGNOYbOHZRS)1$+s+g9GZOx&tvD8psH~6QNFg(UoxlR(oKXxF1!wx z|C%+am}6BO(_h4k+UWwLla7DGEbbUh`|LdRfUniA^BH!V_#2bPvM>Wq{A%in$9O!^ znUTqIXUEkGsD!*2R_+|A4e~}7cu?aG4qB-fD0fsDwpy@Id;Fef*S6&WXxVDQnEhlY z^8Zux9?q_$=Y1wRqX9H>&iUkg&doW@ojW;@9F8c7q^xMk3f8)I*Iw@wOB>3rk}X-b zBwI3;C){&S4mc4x=hQ&w?rr@A0IE^I_r34$_dI2i`)oF@9%~}H zphtBqNzR`jh@UxkF-j-m1$}OH!Y?EP5Ad>E+iT0G-oy0vsso^UdrM?v6wx-WlnT_* zve|C}v*dGkw&CVXC+IBMdjTWQzdlhApoS07gqL(D%OHZ)tg@K9X+|4}YuG6?=H!ET zm#=qO3)e?~k#_oZZ=D!Hi^7hb+t);7Eaz|zaoUC8LPWWducEd|nEBv%R>hZGA;?-e zR}9gIFQ`V;gP+$&y4Wm59u7ZITwg4=keDsvDt;2u$!`19R5+%tkupH5PPHbjD782O zZ+8#FA_A5gdSO6D=$1AeTD~U8R(RoP#h`BHmukfE@Gp3{npga!m+Y8F{ApI)GGzWj zS0mqa+rgPb(dRYqK}`diG|CC`h-g6MF{l$UlJcf5y%Q^F*T6ZHoOnEaI!B@8E3VoMjcv7$)fL-Wn7){@sSk?yO#y|3* zfKu@Mbi&k?`|~ot+45nl;uCx%Q8t_px~b(7{j)~<-hLBN3zI$md91CG&4YbeX*p5` z<%+yp@a4qgL&-7MJRjgD>?*yN5FGrVWtXD;k&v$9bWI-{AEuvLui z;a_?({Cn}?#xSgM)%C_93^Nfjvkhrz9_TVaB-xdpf0MC;)JK;5ic`+M1=x#L#=}_r zmT##jDsIbD#(JkAX0uHmSMf%!T~uIGLmh?K&-4XtCvDf5ll0He)O7SWS|b_&)xd7m zt=fBK|eM<(Qx-oT&pIPp<>$;Eg`cn4$JM-y2Mze zD4ykn9euc5k?+bV$`(u_8eYv1X4lOB$~`kf9!;@54k{aeM|Y{OFX*UImI# zV*_mRM+EpR1`Hlk+xS^jDFcop`6n&PY4GT&C~ox)SQsQAvx7a;|8+^C)>z!D zs>>`^8w2V{Jz2Ni5z^}#;?Q(B38HdwH~fLaAfp-;oRxICGm!BAorn_zH|~7MQi%Z5 zjTMaBiH_N@Vd&0rjp}RZVow(G>AZ zR=p$}n6S7;^eV&9B|=FZTaU6Nk3=@a7Tg2Cat3rhyHnq^a-tmSZ;OQ2*@+%n^#_=i z)i)uz-0`~4mN=Sx3;~cqBy2gy)LOUs7!LIHTo~zhL0sjpxLLcg<0sVKx$Xa2O7v9j zN9f=PSIfekPR?Uev^po_9=!snU>tv~aba>@qO8GH?g$IJ(sJUbHJ{nHLcx0J{#NMJ3wdDj>-S#Zc0xwh@IZv$TIcItpSd< zfat(edXkDro!WERi|&0gIZ0&E6Tu zaJOK1Cu6g+kERo~|7Q}<=sfb`LW2Z4Nq=xS)p8lM)@s_=&}EclX4b>ZFW*%4w!1tb z*F#EbK)r8Y!=ZWERADc8`=_7M5u2hOCU4FcEhVm;!h1*%L(>5j24FX}D-Szkln3A(cJ^Lt2sAvnRC$7fBW+E13rF+ACy3>7nhjoj!!aI6gtP-{+4yitQr9of zr=rhk2SDfT4RfmKFep!NjVQ`}^T}tWnzDiy6=f8=+EE0rqVgHI8is)0O8W{ zcc%5LCwi;-W1lmftt>d2_3Ju?;M!Dp2#yZ&g_$5#3khAE$|aH0r0V`@546v?e*>P^ zSgPsMY1uxp*AMHonTi2!u|oCU<-+VKMZKaeIEurSQ5j!b5_@<6 z9ABT;Q!nh5=z_xH{Jp-OB>?OCB+q3}3&C{rur;JDm8`&X;G3=reF@A%y zD=`l351-N=a^XK2IEIcN-jOHym6k5YYFw4v^QQ($q`b*aP2=xa3=mzZ{f+Wn_185K zLK5}Fs5)@gY;>r8FjlmPrYIiJxvsU;++b@LVvXm<`gXTA|CZ~3ga#KY^_jYcbDKlG z3^xqO`n;lYJmhw5d)0S23>wlfZ)){vtkWn}u<5m(lbxi3T~cn6oT{C6>RKmFShVET z@zM=3QX5lRf+tnFW=b(!$Yj2t1saNx3ORoyNN}R<8pEqy68Hp^F$b-a56P>_jh|Ek zN5hMcW0>|#O?GGcR0qYpu{e!2wLf_X{k$7%4g6@$s_CBytmBBbwCaY}4}J@tLIxC_ z2vj}yJiB$fXc-v^sTtQ_)o~aa`vdc0=8V0v?HL?lu4Nk&?*0DwBiNm*hT|H7CKjxL zEpPDEJR=*mU%SX5)i0CzYM@0WQwLp_i7C9;J zfY**}z7wi;{l9kZX*H)jy}0Mdx7_L06fS>1X%;`$0&UrP)i-C!k=zH9tE!tdu}^+c z9})HH1z&Bb{y6Qu{gUx6{P%BhW}6Wv{G0t`Jzu;Q?9c-_iR=EwG;;p0gbpUpK_*KM>!p zIh5GBXTkciuMeqkkBrbbe|jv4zsO0mH^Rx;0TsdzoF%R4VXX#nAnBd1Xyx$Dv?6*i z0_`<-SBVGZZdu3(lGg($m4WQ!zK&H{C*IRv@L|a#=zpX0lt!j;t21P%yNb$u)8zRv zgcu__(B$Y=Q}xDS)f(zO>%|Mcox_qcNIjmMU@lniL{jLFuD9d20&?_-G>sqlmQ2pn z&kgSPW_b}IUMMOpIJYLdA!_Y^^?;!^tNYP^N!ICyiO=yqVwUB9HJMsr00-_Hi4w36 zEQ+m??xUfxc+d1!+dDIIHa$J@V))dHDfoBN&&D?8s^S<3!hc(Tv)gAP*a0QpPp{|U zW`sL)^%a-rJhr9_7>Vycz3cy2JGiagbLAwSa2u&e^E+Q3_mNR3>PG$q@_vD0A~%L_Hg@XX*CDA)9Z9!V0t za;?GocU$&e&99kL?yymv$>5zC^HZHs2kI_gm}jG`UsS~)o6xX1%68xXLd=3W?diCV zXz*CX7S{|i53IKa&uEANZqwl5Dte2p!yQXacAVed6S`tI8^W64^OlkuBNf36d$Z#6 z3YC(nRqR=fuZ{j9Unx_nb=Nn}Q9y4#vLO$qF?3^`5kRxNzVq(tO-wG48NQz#9eV&z zR9yyI(Ny+2+B3+^!!JTtS6U{v%Ncr9!|VZdS{f~GM~2k_ zLc3Z`EoRtL@{<1Y$%gz^x^fwpU+7HD9*qteS;8>tsf8;r{9_Du*@qjO?A|H@S$m;M2jKE*Z2!F z&fQG!aKUu#SNZz%4*|kd@`bNz)6W>W z!(khAZ2rBDjJVtfl1^^_539Bz31*o7ml){3qPh zoeDN7onn*Y{+;s!&R&%5^MN6|{p~d5i>Xp}D>B=hCy(2(0*-fa-?!wWj(bFfwH;{G z(cUP)?VUEUk4L7yD|3#t+;qV?Z!gkLJGmh^-GbP%af;DH9@3mDs3sH-?U!}anU}}r z)ov4qbm4??FU>lXxb9Of92k;YvwX(MV{O}PsB=tX4fC;Zinb725e?Vwen}FaLh-)R zlBK3}+eYIuEZ@;`O1ECH83t8G_y3B+K=-f@=mnE$T&}0VUU=}>{!8~EHn`rl*(CV2 ztc3@C_o}xl$AlWGj$|3d(_AsrrBC-?Qox`xNa~N$_oMD@dVIKM$p2uy>-@6HD+RJQ zptZNhRUI{`>E~ha%UPgdI9eRF%84n`+Pq!syP3Vz4*9cFZiTrfc-@9bM+y_!b4{xu zpB*_{m-DAUZ0{945noJIyG*iPbTc*rZtC@21eKM(ItOz0W;rz8@s2pm&T}hu1-d|` zl%!f&)@2Xk>dDqC;D}9DOV-KZ^Tew$EbpFD+W-37HrcM>=y{U=dg#bjl0^#PPHkD?W|%wacb2!T-oGvn zM{re@5JzctKE!2wL**6av61hdH|zV(YfDd=h{E`RVaYV+x7qC$lybhjRpSjy z4E^_ww@2JlsO<&dbk0)OOplD4&f?UiiCZhpbYzU++mYeiRv?0d1QQP}j}lG7y^Ced zE=>`z8^i&vGa|h?-p$G8rjECwe8ZxZDsGUzvZvLlS4RmSo=Hvb(kF`5Yla4UF9``e zpBr(nR$lbx@iOQJ)^9WBd`AZw>K~QMoF(IR&)=LLG9NN|!j7#7{W0dG7ux7MQyM%>3)r-LXKt#k2KnYa zS}SutzkL6?ULRNotZcxVZzjyAPzfD?zip5bIcE*HaDWC3`NBt+<}oL*Vv;KN3n zX6~Mbrf~)Usw3@Z%Z#7R1bf5Rtrnoy^K>d!_qbPD_G6SGTXHsMjx;Z{M-m%HGtF*y z&$#_v;6(;&(@JNvBm2Id&3GZpfwHSXlbnh=Fom`QDJ;Hi)H1+y2@G$VXmzi?V%SxlwwkXOeQ8aV^m z!)8zTlNs`!R>Ya<-P{*_{7%V#XQguui8nh1)LttAb8#?sy8Hx&y^1C`<{c2j^5UfS zR_pcNFXIO{htf3@>d0h|40G%i_S~Aghi^8gi<==ORGLcN*h_Bc1B9%^xJQJBwvGrn zkR_q)W466h5*w-XQ3Chqj(MlX!#IRUP^O2J2Di1?Nw;Y(h0P)w$k?T#3>QmcS9DRvzRrGGz;1o5T$Ywx! zJZW+*(zX6FX4@XF)*YO+DRXA*__Z4maA1N$(`O82(Ws40W&3q>xHNhK&QIWI)^0)p}U$19riokS%;D9i= zseo$xB|uWnETDtEFC8P|@t8|GD0e5bxp$$SDA!6sMZ3Gi zY9unQ#L`7Y_+szOqc2BJ(#_%nEa#<8eh95~X^%@k~@rbPGgO7_tZlXIwuV z?Dj>EiQ%>Y|B+0A$KSeB=@e5&fmUs_1}SC3ytg8&d6f|l{UDSxt4$Rpp3_oy!Kdn{ zM~jG@Cu+qOi=5FZ>c%1Yk6*j57 zsHAMRau3SmLM#?gh)9BttXMuE4{h`djV2O-7T zW3=+J?;3!*r_=+!l9Ld1s)VdIT>clk=8(MjaRm--oU=A5ezu*r@E(2*H2>T-s+-cf zC0u+nHmMjSe?4WFf?yLaHm>_4hQ@u34t=Lo>X*olUsK4$Onqi!swHmVn@H{HZ_)=X z9e$84i(U;MYAFCq6soeqhOa(^>!!O(ZQtn4%Z=VfNmcu)ClMl!y2l&3o|}Ka?WRq@ z)_W7QID9zvGbUouZP-{^$?|S(gn89K9HZPLDsSKg+JFyx5jgQ#S6fRo98aJh2j}Hh zQR244ZBB*DV!sCs9_BVdCWH0JjkJG*;w0-SH09>9zNCCKA6WHYghMX@hzB z9}CYU#shjwqj6j^v&w40V6*ClTE?1kS+$h$=b|-A;%dO{`JmP#suMY96J0|r%QWmn zp;m!t$d8V=@k_o!DiXkQQZQvzOh*0_L$F13ar~_Hcg<$v*$o10*@f}OJ0>o^q;8!j z!iZeG4CiAjBvTzg2S$VXOR@(*>|=yhLv))BgoHd!(WOFqGB_9$$MqfToyX0~1z#VL zb-uEeE1GfDhgzjM>U7Dd6}2-?MOO*vILBVX4hJ$#i#=s%TOnDH7{2strg}O*xefJx z+?pV$Dwsa)F{_9zNTaoWg$scM66c#Oy@aCGQWsW2&#(PryS zu0C0x(79-8Kdl^{cSdQ09^xjY~`~3Jg6Vy8!{TdfjCvQHlqtWG1-e0*FrFe z){jk)itDy3XiH^eaAdtX)a%LodPvr+=ur6iR7OYi`s@pZ5R=bik%5saPxPZ;!IAP) zyxv)aXr5zw&AFCiSv5b}J7h-df}}u)Q!z&5u88T_s1-?l+2;5IchMXa zY#VeXS0I~buOg)?B@N_E5nzw@hq?6+yT0!b?RGEpyg&>a%F)z^HQ47gE#^m5 zXE^d{Fl9Rr4J-NRnpB~;^-h=?$g0{vZs|#HjMvtYla_m!$$v@hVjDXSI7lB&H>zVP zM`)x7PW7$L1+KFu1pJ6fIgTlkGEwlkdh=YX7)Z4^ETF=t^uacwZ?dZ1Y;)3PNDHP3 z17*W_H}}g>Kix1KdaMqjQ0<8b&|4WP_kx>UnVn@(ulRTvxt)`i$eizOy+X9=m7O@L z`q&azi#Gmj$+KkS2MnqjRW!U#MNGHOGKTYW z{Lq2os0>@HF>+S8lXt^SMiboE?_*;dRAtu2IOEzNk7M+i5f5oUF%lx7j?0 zci4t1uNh&New}2UE5I;iIB~q(~-}0+GJR{KE&QM z{>Mnpt(S3V4n_B+2<>p zRK0NAw%)Q^R##5xW~P6W`BQAHd95FF(DZCC4Jp<(`%a7S+E=8i&3 zV9Jv#SM})Go7*df(c`{K>jHI~DPfeGl%eb9->D0~|6e}Rj#u*fPr3SF(*kb@0iAn7 zWw7||A+^1$2HIJym7QKu9iIy~ar}q$ej5m?#`ydRtTlf-65Ix5v5E8Y;LUcidv-13 z-``!VlX{N&LdbIS9}LyR=ytoZW!6+y4Gt05*`HI`XU31M`;C zo{GssEh%11eXgVw8#eNbzqj|ByB2(i=B^v{(cQqv_O2)eUq{=7f~mHrmG4#}$Tj!B z1dPp4Y{%Gr%WAtM74mkblzC9l>ib=ba1|n=W=G80{73)}z34q0JgW=NTjCXTSy$K{ zrJF8JG#|<%`50SyvAMHUc+=XMg|iU3(*0^}WMX`OshnO@{G{Ce%lhvOCAIzTeXV?+ zU2Fo@?5cHS9gt00*!#EZig9(I<5*7&fCJcHd;^8iI4(=8)Xvs1n0|PMJWfh~?71b> zE+^-(GzM|+;cJGot*#Bz9=tREWX$3#_A^js=*>@cOUR9y?#s)H*@@WTnHGuNmV%zI zeRfj?KWuRS1!)`_E_1bKEk*~d=Qr7brjv7A=~x7FG@%NIp9>CEthK%u+Ftj2VyqhVt*#+skvK)!Ewi-tv^Uq*I}S@t1hAHOJagD*(#lS92q_7uNK{r!Qj^YumK^ zxiWcfbs(t=jqW;%YG(XdCupVHN1Vk>J7q-ciuEpe{*;bhd8w#f(o~ck|H0Bnj#C>u z8z$DM!jFw@egA!Z?KtD*6}gfz2Tk&pft-N(*nR*WRV3|r>u}0VfaJv|*|Usr-?e>CvNV1?8a31HKONXnnK8s_d@r@> zuMv>v;^q2gZ4UlUm|SHleT6vX_x|kcv77;e9X<^B<)?o#B+w2uldf1Au=^70>{sHH zdtCqYwWfWD1~M3`)VweAZ{<7|`z$rw{@7so05pU6bI{#Cqh#bvC2K01J2ks)*g!wg zp1%@sJ9{{q%>jb3M)r$@{nh>b%;I>*+4HefV}N&g8pakW>4uckPMHJit|P1w%gQLb zEkxd&>j5r`Yj8iQE8GeMxw)cI6+&P+rb~DP;4_B zgC;;zUu*|$9->#=B9sNEzF>FEb&NwwU6T;@iB~KFFzD1}o5tu*NS-x#(PlXW1ctxt z>8s-+t~l8<$%y3MP)P>Eebz?NYRt# zM;6P5g7|$;lPDN=x9#c*#6Cs+J+z=|GMu&Q7RtQaSCjN@ZJ4v4arl<%CONyw@E&i+ z=?!0K9}j9~{hDzoy+al*I-m5e8=QrVT2VMfX(U$$YCD{whLuhLL3@jwniOy1JH43B zBKo)S`mpv996MLorkg`ex1chf3pMsSc;-E5raPE4V8+8-RyEDHh|v>NcPxKmD-h<> zqb5_c^&GM&=Tvm%rJhVhIO?mU>8cVDEJ=CaB#xLsU<5XLNtcpN#hjsj@C;SZ&n9PD zaQmJAZaqio72OL4P3!W2`3B6|%$Yy%u7u|3CTUYFG za$Q9(uYpWA#I0!`jS}-^^lr!~NiRA09<#&0eDZAN z2i`!melt@#4_BqR+90{5GNe_{3s0r;%+J54%D1xga-fV^Itjxu?&C`AGfvZ7S(vtmyG;(bMoJ);X;F${D3pv_2d=%4A-gRN0}A&GD9bv@zoy zS7hhFz*o9y2hk-y2f3fWbU`Th|LTSXmieK*#R`!}_^Ge5tv8JH_7GT2_m0y}vq${E z>q?G0TXw9|)|w7VR?z;=>`TV{7uBPu&pdySJ6x+awbB)OA!IAHTabNwlK9`PavPiM z)$IRK`vUZwosvcs!JpntkYFrV|8(bQzTVVk*J#VZtA>G8xFRn$zqoTJ^=N7kbxwqk ziK9mKISi)l@8>$%U;UDII-S)EJFmf`d4;UIOnZ!u-5-LZt_#cM0K98nKFj!OI`fVLUY_FWZ(s(p+;&!8d1)019Qf%}1pfp$NcSEC0x24DBWV zJPH0b_t4xl74Ls-v-(|lGPRE-@#pZ&{wMYRzcm)258HPAkW0oBr2e!_#DMhICkqR6 z-0Vtb8PS%Th3TA5e6UN)eW+-Q3JvZ$4TezOD2R`+aju94zUbBfDW&XcOU<@q>YY7p zSn|*TeeT2{kZQ}!@qr?(`&OrVWYr7`X+>G0itP=kSPD*)+a?Fo(s{(fRK<_)9oDK_ zhOA!o|Xd2R~Wq)8=SAHmbV|hYSX2WHrK3|_dVF%o}OInR5qM(6Xl(agK4Jc66GSx zrSl(~i4_OxJ<93L_8mfd(SZJHvc&ld*0suk@3f4oPe>@r)Rm3s1cR#KY~W6#twYdv44?OVWM zv&iuMrl6{rEGn0^2p=yUog|Ji>c}us6N-c1)D7{W_SffyZ*q{B>4x^KGUfs5q2y+>_Oj#y`qz6#&p=ZTvOXIWhsHee z%s}JS%?QXUKUOrfj|$`FtfgX6R`=P&JXL6{zlCkPeyz7MR?e|$@HalEQVV}_ticoU zC6sAYBo2-5&Od(jjhmkwJd44$EY?xxUD*<}G^K1LM2Eo0sW!_v_fq52p&mX1uJJw5 zw?5lesojcK7S2iM9p*GC`MU-fC|yoje#0D85#1RjP+Wv<3+G z_wwS%0n%E>?p-&lKaOx%K9Qv-H%F*4{hZ%-=?N2y$0^+wOXe_ceN1bRDjzI>u8j0Rgc z`F?iasl_y!6yAzAE({LT1znq$is>EGroY@E%&6rXkWK#yVhgkWCEZ23byRY~@brOr zo&z1tfsg&6`tyu&_y#l5KcmYOwGCQO?D{?#1xhTFUNgR^wb^m2n3qJyOI$dLi+;mQCteZX1u zCsvQ$Oz~zftOQ({ft*siXf8AnfXKW#??cdN5fl_Q$UV%{KK7On3)2k*v_|gAq6b$v5m#TMIPNIo7Vc zxYIiKbC%4Xm~We^e>lA6$gt0j8-F4WG0_`)71ZTXJODe%@Jp|4-@MD_24T~XI(@gV z^VJ+)$epV>Hfj*;4z1<3I3YwsCn^%TxKMWS^vXFU)HqJ)k$i+~&cu~E!BrLOk2PA_ z(uVtH%Rrg(rS1ql9dPKdCGsd@t+g_2yq)^JaJnTSu(>uj^|q_h%+hq*5R72}Ug`_F z(slk9Yv-K)=58MI=^4A)zyU~qyau8aE@RYVGb|>G2ZwTwm@lYyR4kj5B>14b7S-Hs z<{VHjRiKi%gAm%Ny)nH*z@x9)0Th|27Wz^rX_tl#%M>h}$ zf>X7XjA~2jPG-c43OZHGU5RU(+hAb+Spv z6%c11fbqqapdBVyHQQ?1Tl@IQ())KVDo^W>gZT;u|yN zLa-L0D?WW++v^i#p_$=c3dJ@|#_pfGVfVaie(g{gNfp|S)^#>jw?Gp$?==AE|Z6{8cLfLQ%& zFp_Yqr5>7_GRA_1hE3H>AV)i*MHtw}3qT#Fno;1D45{R_@~A9;cdV-I*SdWkOTBQ} zK+Lw)^=rCbGEU((_ZWhjs+$M2ZwvApEiSM6;C|Bpq0(w2vjxi zuB%Sd!G?-#C3zYJw%Z@8`?ZoW{OKwX^}6;;H(aW?@|)#c60`wD@qpmqlj9kzb%jPf zIifId>57pOvuYfY=?*wM#W`&4bsCE8DBWI$jH;=o@nN46tJ9(~V{W&!<^RUQ>9Tf0 zaiEuS8j5du2ZgAd9{p?9RRfySKF#dXbQYb0g3)FqqwP7IjdHJ1uz-Y+o zSLq0C9Pp`%303WzmfSu$hgq-mdc_RdkX0L5-+1@@sGjG>JVnUrqL3w+o9e;Vbxr3k zTHgG>Y_%;@S;ZepRlw$PmQ_c$9Le_ZD|=epardTGQE{G_^A&wJoT@}n{?Xe^5LYPO^R?6enCKtu{^zF&28XqqZ0A z&lUcxpVx1!EpM)hlg06XHatUz>Xe1s>!}ZIWt9|<%(i9rd_8SmO<%sG3S%;iJbUs7i4L1g~<(Ox}2ueT~qUnC)Z+j zQajz6ShblPV8d<^F!Oy=fz~9;c0_Yp;YjESQZ?vOd_i6e*xSwPvS-l(1zG{43`E_p z>56h|LZCpE)tzRUQbRaCr>J_A^@-73B5Z-`wr-dK&Kqi;L zt8u6u`?-~^s*9K=v2M^Sj5;d?hP-7rFMu5!!08Tkbs27{$PQ@k+v`s*7-4M%_o*^4 zU=v(PJMPby&KPPrYJ^ZXx8$A;f4<&_7ExD4kOG~WJ8bO`x|O~UI-ArT+j%xq1(djR z2ySbe&pN(#zNPCHcdVZgKtBJ}-7M*(e1$T0V;P_gw0N=7;w&ue<~3&dE7dNFZ?t6h zA~i-SfO&iI!l-&W4!J@?ztR+AWME)H0`;ApSCsa_u&*s}DKjSwk< zO-kvqlF+|s)cS{?j<2y+$`uf{9Fwm0S4{f~rjC>YkR?uLEMGV}hGW%KDDi+DV`({p zKQJhte_6?;ia;Nmc)!lp6jkkxk>8kz$h50Pe9r7#d%ZIDBwadeUJT0~zz23wICg1L zdh?rw;*A7UmC=lVWz!l)=QZ&Ar=4GosiLjnt_p8zDy|oxO*%XKlztbi?dR0{QcNHX zRgT$P`F`LcP!1?%Gh>l+qZM;Kg?V|4JikP>kfz_gH`L?1& z+`}%-k9%sFp$Bz@X);qI-Q^)zRHq3jePm!}&HO9ml z5@Y9Ao${A5;534*@)CewD`PDLFr~UA@xhqqU!4wq+1Zmt$ItJ-Xx4BZcaK{d1!979 z(g*@}Haa=IvzPYQ9eZ9$LG=cNDYSpUU2sCZkf#-e4_#n$up^94uQ5=c9t#l{SHd!= z3B7KO!>>iwy$_PN^PG}^8)5ub;L&_Om%V(uQ`53ar~Sl`9MwB+V}uU9_zx$gE?O2E znMILl{#KzH=K|(J?t8!AV@Eo-i^!7DYMgAa`_=Keu?bpPPM4s4sq938va_q}lcT6Z z-0EqdpW}clCAq3OZ2@LX9c^8q^Cc*S z*Y8m6AY#2&>ExV+y^@if8W5TY%L5JDc*@PK_f!Z2=QvzM%Mm#4OAQG?s}Hj}J*f&I z9Byb4EYXxnPR{Q%gsM&9#h$AtO3r6pfDU~MgHCui)u`c4hS=qhLlx>+F*n=x1B0Y4 zDEc9Tegp33n3f`L0!ckX;s?->nt-t*hgnTI5xLFL;|d3LatMQ`+1@|tVfhS=96@3h zz4#0M)?Uv-b=+}KYpH#5)SjVIyC$oM?`CUcmF!B2rUrC7K{Zh&GoZ>K_r_Ih zrX40Xnz$)Kz=*N~!_iHIZdlc>nkr1^MlE>E7KCZa1LQHM2sG_eUIOJ$8x1 z9kz&OEcm>T>Vb#g!qnWa4!9?y?OJa2A-8K8-^5 zt^+fiif|Mg$4`C$))Ik%)6~=o9_n6p`Mk=C{(HN3Z9Y5&5iep9x%aDWF7fn8Nql{NhoqJ!&6uGrc{JHWjg1Dy|`jZ8uMMh72QnuGtK&;mogoWW5F4f1FH}N zQ%ZMT?~nJc86+<&G}j-0oKOTqU#s8v*~qOQ!xhM;J~I{FWj#i~I7%93b5X2Vlg|`I zl#FsF9q>mdNaDq<(ywS+KwSPopv}ti27=4y%(r!xSM6eI0aD+fo7%P``Cb|6#@8HT z+1vGAcn02iQKJ_I-#U(SII!hD3U7~A%)=q061^)@`g#)E;XR z^@CnvmE3E0Ob*DD<7D=0g{J?LJ)X*O7*=kn@XGcq#e5aNLO{Oiwa3z%%_l3H=cgv* zl!bx3cSsJ}(|Z3)&cxSV(<~a?Mg74DraQ2rn}gqmwq~hXyR{b`>m}ptB+$DGYPGk5 zqT%V8Y*D7{8*2t9K%$jX26t4o_U_zwFBfe60Dq1>seEr#`%m9EJb3WlQ_LHTwB^OS zYWtVE7Tq7gOE0PmG1m}(948uRxJO(iit>N<SvymExXexYY+u1(aHrKmP46mPcUD>_(kCSWKc#xy zR@6tqQ}hlm1#ECjO|SHhZuF?lTFG1Y$+N;mYsrhejOx3*d?7x6{Kx2i5gV}8%xQ2A zAjyoRc){epNahRGu4~{qUA3f*ZU+-R!K$OX8N>Z(=r29s{=s`D`MOjg9y*l?<0-H* zIeU3t=tXJiJKN%D(5@a{0cy^O`?}SCS$jQ6Qf%M7eD$*+8z@q-QFC0f{S&JzLi>5& zn}bi=2%9|TCuh4$yPCyyWh$Ue;7M4skKv*}@NQRxswsm2n`l zaQxr{K?bHhk72BcZvIxd$toDrbl3Ho=eg79W?{QuRNrQ>&e;;p|Pen!CH4D^KXf z)Qz?+H3TsKr)$OZe^f7J)Aid>EU%7DZ@sE;=c~=>_2t!do?Mq3-E_zN#n%YW*jZ=L zx%K?--np>yNvW6~n;m`EY1EabkkM zj3@D7_@FiAQIL973Ur*yw?g{}3b(AqubGD6R{`1hq3kUU92b0`es9qAv~k%mz-XZC zXi=Ng>upG@x}-IzR-7zR6%c9ST3TnyMnzO%cT&T(!Ia!XhYZVNT&(O=Bno zooQ`NCh77`x#m|lz2OehffI?1F_IS411t6)`3jx3oIx&1y^CEmu9 z%KIAa4+U;tLESR+N)G!Y04=K~nHJnM8cI}L=^C!e!<(!==(F%|)MR1^xb;=CZt1|` zA~=5H)4abiBJ{N#URMFCXI90113*I*mnFOvk*z+fcP*mJVQh(x`$l=1UcFrZ=ZUtR zLDID6xakIvHm2Kqlsh8YiZ}BJ3jrTAhhu5|vSHw;hXJ;Eh0TaGDM0KV7Y(*COz&|& zzd@xjw$xCTn`A`wOJkeE)Xk2{0j^PNdE3_L=PDl~(;%0EY;}|4_hF<Qmsm`R}wDJ!s7cVN@T8nK{^L2Dh!SeUv( zy^#^spc%~{Oyq1dW)fPQ+QG>d9FvWcdK)Kv)}u3yes^g`8$|`wRzR^3GXjUY(xhWD z5KX`WXem&fLxFW05ff$9oUI%+b*!@0?>NZqm=rk5MO8-8-QV%g+Qyr0Qj=J1AobE9 zE=mlRv6a$|Ua=(>v(&5~3)VP(xOd1xCjTAbjYCQARCD&aOlGDA#M8Zbaa3I^oxnQE z=61`pL5QLy2UF#3J>1yj+;D>{%4btm`{)(1rc&AwBtPl{AXy9rXHET%iA(mHr*<>t zgJJn6#~QV+LYhZ1IHOCsJ*CMRaQm7kV3J?4Tq(%IHp8WnQnAx7-M{Vk%WBL9R|m7l*dtxZ zj#mvYmu-;K!l34I80IeY4oAACL1iibxa5@b9VcR`itq=y)>s(QR& zy8Pf4k=!1tUgNs;!c*jhZ~u!Ze)}bZR&G=LcI*ra1hEk0eEdedHbi&~bDJya;d}Co z?<7FII)gFJYOBTK!(-*KisInBhi6aze~RAwNs{!u@65_dQ(2kiz3-~-s`h@mr^nm% z*j)e%Lx2=LXoaH`qNtWOlyq^L)Rb4-5Z`aK;+aF&OPmehRR4*ZqbF(*uKvGkqydpT{Ot zf$77y^q=y{T3w%ag-afYUO?oCkDPc+1<<<%s{_zryYS`d1~7{uCCl?{?;%sG1F4D2 z^x*v10(nF~{zbog&*j^BB(K>;EX5?$~zobxmGo038@I6T6o%IOaXpmtTqf+ z+Vxg3#7lb!zzMbweNGO`hByM4^m5g(gM=HCoR>Blok&kJ&>5l>rX?mN&7oa(6MDsH z%=N5&T~0F?xO_g+kTma+;0vh(VYxzkcH1(Tq!mX@aea|KEmk>e#w@A9F~gq8cUZ3L z-A>xxEePhZwh#=3G>iRG!eQ}C^Ag>}?DtqYsx#LSbQxldfb(X~B`OQ56AE!c+sCPX zS3KmjZk-G%(pe}5k?WC?o=KVD{4Whr!KJz{Hw&H9_$Qb#E7k3_GGTHxO;wjX`YL*s zauAZ{@-gW9VxZ<&Hbc_exg_=}>>IV}Z^51JLbZ{fFEkg{2Rki$QkH;;>XKnQB4W&W zFO@X-%n!LOSfBfFT~Q)Qbt2y9awS*!1bM09h~Fcz(qRI#)22!pLt7Is$!u6XIus>g% z@Q*0kEa(f3Lr4hPhn&=Bw9>k>NCKF{pla@G{Bszh?P=U~SGQS!I#uVCL+9D$fONE? zzW{KLQA^nxJK{E?)u6^a$oh0=jhazh?jTfRZfc}O)hmHr`?I!0^ZUC|B4F3qr-Zfv z=-5EF68!VOu9?HV+=ht&jPK@zraC?w)Fx3*avD_9 z8XyZM_%$U(>^Nnxoep9$LP8A%xB&_ARN-2pGKdH|Sr}FKVQY7w+96fOJ6ZzscwiT+ zlLn%QbRdk{ZfO8prpNWHnLz_YSa-|N!YahrzV84{vou#uGPs*3Yu z^INwRsplgjvO|R>ZwA%tnSm?_P5->jHsvO;E-R^|+V25DlGbCAIJ36hB#d1#w67Oo zoC#49Y6{R=If3H>s|q@;1~-?xJOK@h{w~=D}jcaYx^cwTOC8M%0AbqoTOU!?h9mFI-^L?Kx^qSZD{XH!6#)E<=g$+|}Di?0t z6vWp}xB9Gkq&H=X;GIxcT1H2JJav#U4Fb;+$YcFL{Schax-!%I{LQXS;+->=R!e3^ z-`Y2G*R^7p7!Tf`*jq#+(-bVK->J>~&gM6Y)Jfh;i!9HL&?C767y4-P?1AW*={nSp z%rJ=W@8+@lLc=>z@M%xZZ8O0iRgiiFU+FnD68D^Dk4eD@%dizTd<;%o_k*ZWeBz*wku;y|jKVppLK8@6Vm<8h1c+TfE(R zjdz}{>i&vz_yJ^? zfUS+Ol(W4W1;|{?X#bLU84d*d`jeXRM{;8+3>2BIK{pZ|K9zrN^c+uX?I8L5Eo5RO z8@$Y4k&&h((PZDpvlgT7vVJCeG?7HbL5yq&zvb+Dq^@v)JcQv+hBs6-R-|B>j~6t?w6+S86KXwcuUZ6m`+!mQ8~X@pa4~M?eEj*mkWh|WWz%rx{EUIZ z0w_av)YYPXe%0{gYVwZDO;^MPNB=78BOiUV3?@@CI?~5Jm-Qr2DEs@6756G|LW!Q{ zQCtwm@+79ooM?`S#m?7Slq}r|wRID84wf65(W={ZWVZ?IRc7_TG(b4O*fod=Dk2%_ zFGDM0%G3#P^B14hJuyS^n%22FC5Ky+vTw7ue45<*>+1P8y}b9awmQ8HJiz*VRLj%* zKgoCp&yL?ZxPK>kI2DBAK%}HK$GNGy7gq;Df%b0L%ToVYnPb~vQ{Dv$htlC0tMl5^ z>sqDkhih*;%vNKtW!USVhjjSB8QAUfj(v<$G?(hWapA_IGuwgCXlH$UgX|dW6ze&A zQt9q<;U?SjeuBe71^wdE9!<*36v}FeYq1--b%Z!>7TTV<+O7yNbQ|sJZ?}!mqPlpL z>C)0wHZX>(A9YQu=ok7w>TfGv#8y~-PJXOA`B{Dx#?Ey5$$&U(4LcjdhxbPWFL^vy zwdDfMd-Y#4eZGE3NQdBS;q&_LDS`I+Eb`tD$XRoGKL29CHtjka>8B=!<4x^eZBhrJ zIo$P}!VIF`8%fAuKj`!AJukCKPX66HEc5iZpab*lCXlIl+9I;n zZ4m*a>KIbGqRrW8VMFVJ?SgDk^OvTP+FX0o>|?D zQ+bFOzvd25a*L)9tCPjSR}5Fz9a$7Tn(7DYj*f1qN|@(wB{y(_AtpXMWEm7^ZHg-7&b$m{tPq!>Bl{*4`Giwo3VVM zeC7m}!0Hp9+l8ovMc*4GHu?(kU|jU?W`xvHWV%X;@P<5`ap+j9SuuQ9Yswm}9bH;D-|81x^fna_LFxNY^48y!>4^tQ}!B&7>#Afc=a) zqV(PWh2OU7W~agW;aEs#6SiNbs!jfdQNqSK+;1OSrcFx3pgA=UZ0q9Adr<6fCU^Js zG!05exu1_$AoE=y+kW+eS|E*C@CIn_q)R!?T|Q|plY!W6MeE!@W6||C_o$_D-NEBv z?LyNc(EF$5US7n{2QqBk->9SVp=E5=WbL-<%CWu?#q7LwZj=%Dt_~SWD&LgH;c;#! zq_s>QCrP>>nB0c>;JD?9MdVH8_p6d;jGt)tDQxoT&ha8eHwvJ3m(hrpJ~Lv^tzHq7U{W+(4!1ISIaYe}TCR#6AJs}}UEscuyMk!0#P0m)j@ zxW{)_!pU%{ENQv$D5_zAN7}xmV-Z4Ybq4Zw*fjy4;CW45b~(H(zG1X9#wAicIPFYg zn%AKkA~&6_%>9^!m8LzmBJ;$E(3Vf^#-on}6d;Vb2nj6ovcm&IuVwDw4Hjt38z~=%*F?YI(rv~h@Y9z z%XTL>F{SU?8a2jR_EQ}rUx&t!a-IX0Sghyb$dH%EDm&Y(3ool$4=pA(RL`6Zj>t#E z!;T#!(LL5VnLmTdCX98&y++P+3UG_E2Vd%T{B&i9KlKLH;UP@mPr7arSvhMc=B-Q| z7Xmddb7wH@b>v%1n$Dn>wX~ggNYFXbmYZOm6(Nwr&R0=-`Yc#@J@UANo<@l&@A`@w z%%r5$K@Q3k?+~^14vLKRe>?c1ZGc^a zYjs3O_FCcEdued;tw#-wYokEkcg%*KjFZSu#srm^*DOy>dzY zTs^8OrmD|Gw1XS4^ouVZl}h;{CL6^OV#+UlObbHaVW~e2d3(@GQO+)aR3J1Rl>??3XdbN_q1gPIJ@1SS^rdsoju)dT4ma z>uy`OwA7%~Wsg6gDh^^&XosdUunWggXWe+Os6NX03_mo?v$z0bNF`TA+?u%Pi$7k%1Q{Rf7BwiXXG zlC+&uX1a~cEI0ogu*KNAh@dTvDN8*23H^Vl@s@7;~_K$SI2z)lYGu;~G zp0q>o)bf%}T4h~we|ZqgJ+I?gPq-8{)VxFXkNOSUOXM?`k$Kf2z2^!KRb5Yhc;YK* z;P&BP0~4o_Uh&S`x2H}`9~^>~zjiUecB%fJ(1yE#Bh73%fxCN`7NmZfG43?XLJ?`n zCW8f56uS~Ak`lNyx{R`RbSee!aWAJuS;2EU&Qpz=6Kzf0?mVsp!5z!m+zT5PEbZ|_ z5DfH_{#O(;WMhVUZ;F-CQrU#%u;Uz6gp^k3u|}WoZ(79?-NpkWWzf&h#SL}DK7Z%tK zDvGgD8>bcj@EOVT{xnoZKoX>Woc5`&D;aX?kgEUq~fg@~w%Eiv}c1BvIyfsFUO)aZ`sYXxz?P){_Y`SZ5)3Ki64b zYv}S&r}d^HwPf9%VZt-7Znbl~1=hJIY5_@^U^Q01h!T#&}6XVI$CfV zRBh8zM(ky10cI?KKtX;dPca>w?~UHKDMz7BQ{WND*UE>i%Vh8@w{_|c3WOH}3x&=G zLzW8!xQL7?IwfSo#!otx*EGAL3BMq>$fDK{;V-Gyl0Jj}Z8KHV^f1}ihXK`*1ruLJRxq4y>K?(BOL5au zQK(X*7udmp-PPm0+Z9X~T){e{ixGD(@0}CvY+<56-hE33>i5LpwJ~uOC_zV?5a3u} zCkgm|b@Z*N+8^sJ>}(5_q%)3lhg4eTshD?eI+YNP{Y^*3^V;cd?7Xo(*$>7GVz+-Y z+sDmw?S}6-SKEOE^+gl5M2v8&0Cfwp#B6wc&m+@P}#9 z9M%GdnXas%Kx5ll!1NOhTz{`-0j1{Zp;jHpgN32?W>xJlHAb~IjeCE_SN%aLkJy}4 zx@7R{9%@j3!G_-_Pb|A_^SndrOv}b+jJpl>^#)nBeUx$8J&bjfgn!`~W=Z(6J4fcPIG_og1y#%ry&$Mr3Qvr$tl$(V?Rn7c~rFhs!WhK*^`Re#3;b!~3ynB!QIA zInQ!4ItTd4AuG!^qu3Suqmz{0wesL7=wxwco|-rG&KwVOaM$#L_9RuxOTMZmnFxz? zB}>HbWKmc@rJbL%u6Nx8?`3(=o)94`TnAry*i`Rr$wnQ`a4=r$?%E3$!D<^=1XQ~a z+$BBA(SS#7M@I8>E3X%*eeSDIkCpw@$gIY|I#qAS?xTY|@FP1suFeH%(x5wM$ZKXy zdT1ad-t^7u+mG71u?_`vr?4Jr_zMM7@0sF>j1Tn#WXkQyg2ue>DKMyYXy(Y4I<+oU z+MV>kVz15}1s{*sKj&(b_>g*iL@VKi5vi4$#3}$>^$328oRsH|iKS;9pC4_!>zj-vaGKtSYuXDg>l4&&d##`OeSET%- zf)CV17ec;yjZjU09sNK5?gCx|3@wj=G#M)Wa1en`J`njI_)cE?@x9eRYrGw6y+6U( zj!dl{Wqxj4On2L%K*8IoMPwcOssk@7X;e#(6+28hr9M`j~_iCth zp-AXr-ojq)HuonUYV{1_$*tyeR}-oFPoe(}SZbN8|J(zn0!@})c44{+vHOk-y8o;JU7d6TGrO6XJ8Vgsvi zx~-LH?H{U6^cM%88-ML=dR#iW|LmU5Z$cj4$>P@ojLVNXInq2*S*sWpCR>`L+ zvG#nVsAf`$4tF-A3{w~8jz=2@FWF7reU*9iC6N-+nd#(rBaN)PY!Xs4o|~?$iAae7Wh`gR50XOm8-*J7i(w4c=XBSxnIPH^)3( z9u0K%bQ+5Z2qWN~6kV%=Hlc_`^NqHII-zvXQz*ALMG~?d4N3#AKB7lt2bVXSwmKd& z5{iu$U%=&iE|WDlB;mjy(oP;F!p5AAeyO#U=!a(sbVTUfYg@}bOX~ihJFCM?kjbi3 zP7%W>wbLI$wzTKn6`*P%;se*VD^4)OE~3IuKdJFe8FKx28t!$CpAsQ~K0{6s%wz|A zQCJ^Fb1e%o;E)<$zB%V@oVJj^f3ecO`;G zC~uitY@P8I6>358Onmg0tq|5ggWCte67N!7qJiw2K%yT`HcP!<(N=_@Nwi&oog}VB z^-jt+@WbyLd6#T#Se~Dbu%WO*5p3$|)QOe-f8sCPeQ?%b@lKNcS-px}zN2}yJArA7_s*G~n#$7gX+5U7M3B)x z7<($e15sATz)&O%p}!V;$*5ap!@0WS!&*%SD>XRZ;q``P+<@(2e zxIXGSdIH!TQV-e6Pm01Vv4Up={1M+cYJV$-rgiVm-2O_?db2gvk>W43m35(_VL(N} zL{lpVi5ri}JxDKay=A;H;%_c5JhXkia^^1A1PFx)aCzgFQs+&qQ7+g&hk2~{@Jrb z`_|Bjj=`sWZw`^Zyz?e*F3df?T&sM>blGj(K4I|Mt-U&BTl=MX_xg8w>5T6qK)-L( zS-F`_e*V{rmvlgR3xwt*$*|C(mh(}kXwNEs1gGrwgSIiux2sw#U{Um6YJJH?i-grK3G&q61zR zeO@$A3_LbJYEC5vV#!6@^s}kN%93hDoNv4$oHxun`VMRJKyR+_`NcNree?~Y@@&#o z;l>(|DQ&4S4w~mc#Jq8?)*s5aa}Cpx+<%&V6TdV?krp{h$Z%HZtl9nPSHy_i)b__J z_lv`;ky0#OR`^k1^K0W>YLkf0^+oq?C^{_H@i8?bvAcnZ;i~3>umsCvf)#YFsR59r z7`$#PgUwV8Rg|%erA5TlborC3Um~*VjkT*(rbQB16JtAzrkrV|AR`?Mru@% z>2p}COIlt_)#@d@5_;#9^gD-bF~Nl;%3EcGCe*ji9)grp`!h=Gz7Ae8PiZVi#zF8} zQHl##Gbg52Q}bBl!1KdtMayKGmoi38o*E}%pn2#`qUOk;*R?*B$x*lMTj~qG*w9#R zhWWNCoeVHbY$Ro{=*$bl%9$7FT=D$J_B1u=qyiU)hFsg7|AR4MZk{~-;3F9}JO2wt ze0O9pCqtE{Sqr8|LIS{^0w&^UG;@u^;uf6Wu=z+lt=}&}VQVfZ-tc-$0Q9YGCC&3R zGHjPfp0ggOVoSc6h$Ce!i)?ZFmdlHM!>t5I_1#6lc{N4R*{#AAUszH15NgdZj9qdK;vgo%~{)=xahYmnm5KY8dv-K6WDFK z1NwYbG39ddlEXq$N21g;aRWXJr@KlkD{^`kC5RL*Z0WS7d=niVvsK#8n~4iLo^^Cx zFPi+AR|jeB!7Sp~h8V)}QIB9T&cTkEJxt9bCCtOR8a+=q+yA|RZrONahwtHoZ8t2W zi{rJ!)4IN^XJwq|O7NOAFgdz{27BK^)&q8|V*`+1(Tn?je_naS2?uDk_Jf{j6c^_8 zlsk-Brb*)=!_-?ALocb!Sx+YNY2Hvqj^;ZZ#dOe*=uh+rj(BM&-&GComBsW}uTHzc zo^jXuJm9n{@$0FjGk^YngPaC+=~|{^Hrc`lk>}$-dWX_JszO6KSKAiMk2}l#7^!mL zUP(?s%YJ&^DcPXj&kLXDq2aIW6iwR1@R0gDslNVW&Rp?YyYs*{GJM|S%2Z2hfPC_9 zW7>bpUqj-A#YJovJq!#kw2tXjYd1;jloRSDBVXaP2||H%3q1 zN3I+1f?7m4?;B)_##uef79Q{SR7D~c1!k#x-0;RDDVW_r4Mf(?KQ>*>V!%qHo=VP3&Qog0+x7s4(G@hy4t^kM?d`H6Y<9Y0 z9~WWg)6kXKkRkL!u_sZ>XK&Wc)_`EdHL<$BnzWzMW} zmxaQdGq`^++#?TO+ML(i5dNDI1g%cIRGQ%@Dxpc#mu-v;$HGY?o7+NuG+*~IuS43Z z!6NKwTJh=Pi$hVYr9E)p_+wAtj>#DQz)KX=%##DiU}iEsKqk#Xb+^r>@q?yDGdEr0 zdOp5WRCCC^Vna|!6xJTbbf9Y64~ELew^i*9p&8X!Px5QSq0LHkur|K6bIf%k34iYW zBCCZ{AC*v}U=@?HQ#4=T7cDE+k(K`Tor?bU5(2j4WNp5|=`bE$XyGsAiiJq)+Y*pL=2W@@DDx-*F&5gnNJT@N85Yn`wE2?fL$D_`~w zQx6D|Y<@B)>R*NCeAWYWqh>PGtIHbS{A)XCc5Os}vHm8Kzuap-*O&4-sb}_#Os*lSvx8C&!( zBhSbvzW+vf#%392VIklBYKC`8mo^i%hkQ}WY<}1HQbzha?v2HI^{%ZRxp1Iq`R{BP z`nF$PB3xH8kECY}4cb8&WB2ZQUwZKJrCm*o-{=vWcd8Pm`#}QTdN}CT=GmenCRm2| z9P;4c(Z)xwx!y94o$*o=d&$$^t{aHiP95p_kT9~YK};3{s(Hv|C8X~s+rmN*(vIpi zZoxPd8-T$%D(5MAVAH8hvjf6x*r3wuXwjgCAY{rl+^^-l?%q(J)V16t3f9ZjLjF>> zhbxm0DNt5t33>kB%r>int>$TH9(#bg`)^5&?kVLFa-5R4Ya+phpf^qZ@+BMCrFWCk zY*q#DxKW?By ziKJt6MC>OImrb{8*7qLe-#$rfAjvv|uM(XU`5~J+R|wpXdPE;5I?@_aynVphR7mYOp{}kM~L@l=JU=M(4*ix&m*QfQR>~N9s0?@e$W0Wp)d`k)=Jt>jI+Yae>7wNu?7f2 zw$4uPRy2WiaJ;l?rITM{mIkTaRgK`*NO_3NyxPU^A$YR5J``yMm$JDCJsSv_dtY{Q zM_;EG&4{ivToZaa>)6m_GZFHiHyMNP=&!uKbet$vKb~bTq|lwFIg_Xwbd`UynY>#O zJ$<(;e(1))ZFIi%K}sUbM?R6hH&WzL>qo@GhXjM(NxX73!tVNvxc9?)`>4R`Zcg^& zMqw^!U!jxuG&FD1S;W=?A}Zfg#~;Ih4N z#y93q&bu8TA-pg?>p(|%yr;igbEh|Z$cAG~ECj3A zubu4QFz?Cgw?nW||khl;KDe)-qVY+NP8uT`6u^KYcA>P&A`#`$Oci(YTD;;=?- zvFP=w$s~*ZbQsQ!v~Rugv;+A3mgnrV$-8qCimf|w`INH(RTuN(i6!&6Fn{Hw=JD-`dSS%cdlZp+g;|0s7uCqkfr}r8zwSr zrPepw1*f2ay0P_;l&yw9K(ku+3j?`fGtx|4Ac`bz2^D0?MiPukOg|vtrtKcDa!g=& zE6HbSl6_d!xfYPunN{xSNJaaD>iwEhmyLeA*)Dp~PSJRzGjJnDA)>E&bT)%K=Taq< zHF{T>rvY>HlByQ8RlUZX(w2Iq7&N zL1r5yf>_J4SL=7A6A_J*mT`Ynf5Bkw)-kX42o(E(^Ur3VteKU9$$eaMA}x~K>&|Ov z$xO;&+Eq`f5xL%&bc>$0bI@k&T%`RNVLK4uK%D!mL1~UxPnxLfj2XW&V{BMyI|V2w z0Gix~)jlz@2BXUvO;9@#H{z~WXOFvw)R5s=eNWdiKv%`UJ~3`<0FZ1=j_1rL>xV8H7(;mzQ6gErUXwhR`1?8+eWz4=16{CvJTu ze;xU`-s0R+RwiA#Qd0=?pL_&)Q^s; z!-F!dw_{CJsBHSjKNxnxXZ;Q+x{xwSMSS`$D5fC$la|uwYjZ}^B?>{EL7(|SyUN>l zOd)Vqoc~x7V!`i@_2d=+tR83Qo%s^kBdR&0B;bn|G5?hKN! zQK#)IhoxFec*jH=gt#MQFhh0XzdkK0of#L|sJS|}ilJwGzCT3Z`Xw!D?lHQJOx!Uu zz*I+~CR0l@HN;0|@qWW#tSPi(7)svcn`d3_kHPy*8Ulnz#_V=Gl`QbhHWjSzQ_2T$ zXi_Jq&?o22{1idIq zc6yzv_VgT(1i;pa*U$W97oTZ3i%z|}e;5bTLCaJ9E(6#b1OHz*G_|*jwo2S9mmGls zAvxhp=~H60|2S{tul0OO`S)#fV(NCZ<2%D5Bh+Nn**w>Hf6#l;wZ@hw`SMIwfONN3 zDlW0p%=!zik$CnC7%qU6yb~`C$m>^4@?(X&hq3%7g}eDJkC^xPTK#0jKZ*zKE(2s= z!!_kipglBSUN~ew&7fka;;`%)YS39r7V{{zR$O6d;XQ%$l;#6n$F~NjCRLXlvLgjB zD1k;&r1mrWxV{^YI@f%fgXe$R_DrcKedOlushf3a4BKQ9(hO8LR$d589{0R;*V_g} zRdefi515QsC{tU=$xa`=IlOPq2_ICG=)~wS@@Bi$&nOmiBR4AS#eMGSX&s04 zt&{l_3kM}tp+D$(0ImH*&+l;Y_NBX~SNmR|tOjd# z!QS}}K}A-J2;nF()t6_TlSpW&F0@un#@F~E&T^Ekp_u(b30DpAXx7*@-Y-)hEQUj9 z&DKQxIY_tSb%9Jw?S@Z97FXDxbe_j;skX?DG9~%BtrhqFGdcK6+0ongMVJ9cOM`9ZSO%))7-$k>F2*gB(9bhlY^f7 z&PU0oG_I>rCAn2=#)W^<&#Sw#wz|*-Bi%`nv|991uKZaCS)h6CPnvr><(W`V06j~$ zMS!2ufs5u}#^Sw3SZ?^Tf7Z3s@5akP5s<`nLtr3GnS#|d49(}p$I_?|S$+Pm^TE3j z#b2F`ji0WrXUwjs_l-(KJZ?tV?E45VadNilKwhB=pt?r zxd8RG+Im8TYt}fAw)}fGBhYf9Pj@|Kiv)!Nn0s=h7Vlfp%Pq~Lb2{w3!}eU&pwIT* z$@WgK-=^#e?!X+o`Ymc{(|+3!wH2pIE~Abae6ql9L3SIpU=$=P4R%$;$cyS;r?#D! z;l1*q+%;qYhO%a?6Jwgxvxx2AR%k4+Yw90=R?Kjc)OLd4u%sD7SAMv>j0w9wX2$ew1}DU*~{-&h5Gl? zD}mQ|i)9}OqEWJ9@aP-67!LD{@Vgs4Nk#6FLrIAD0 z+S5?L^N0D2;c{_URmJGT1UH_$QK#16-hXnt`Qf4#Gk19-aq@HTN|W^v zz%wNen-^Xg-C;DgkC6{Yry4`2zbz$OHyJ_hDsaxdCZGFlYvz}b}y#kARmo3l} z^b?(}_0_pRlQggD+!uiG-Rw@AIuTp-cS}F~jUulVC-!dx_uzx8`cI4{u*CkVvsD-g$V+C`cZT^!bXQCJjZ9Ba}Jp~S#@a^wn3HY zNeLc(XjTWFLPyEAqRn0yRX>f?#zv->L#OF0J)fTK^>tc2-O5?=Zofg4Fclc3p^K>g z$)(iz%2NPRI%2`ns^SCdlTUa?2)LJ;L{q* zR(H)qx${0j8JR8d8E#(id(ZP5$cfrT{U3zWcGxB?&<@S9)#01`@_lZL!%nTn7FNk_ zVqMTn4+vEzS(2nBM3j0D@Yqrrj5DBW6}+zkp^#UW-qvf16Fin&#H z=K!LFD-5ja2Uv?Ssnz^|9l^S4gy2g$?NNWWacaYvy#>QwM)6=hT0+P$u*<5};X$u& z|8)RM$=dscJC5(=pj&~J{=Hl_ml>-CYyL{zAcsVARoHn2LLDlR` z`=6#^F~$-@D?gf6$YB4LO^xZ{6MYLnTU1i1#0y$#K4XyvD|Ig-J${(6mgt&QJ33yN zNZn02y_HJJm@|H+pkJsy>{*`X+kPDh@Ii){hD#>1HIk$@%^wF$+6;g0+XrK&YRF#E zQ9Rfg=&s9&ObT;bE*{#2-Sxobgw0zpSl zf-AM!eM-q^(;BXs zisTtW$pLI!W~X$CY$bn2(Uz6tE#r0HICIl+^IrQ!x0yH@d;yc2d$sNmG7@>7ZeXch zri~FXQS6khgt)3N*i*E`_B1ZD_Pp~>|IkPu0_2P(Scr8E1AZc^nQ$eb?1gLzP(lMW z``HtdwA7|^J!c&tuLPH1r`AorxwaJjsFD+Nfx})^n<0zn{G-8yqTl-@pC1R5@uX8a zl3hvGfAHL5?D}zQH!Oz}Q$%D&fReZJx1On~O=UWlO^2uxSwQ$UQh9;Tv<6=PQ|HSL z2Xi-PH zeTg>N?So&iTQ+B?_&_$f19+XYEUD9Qep$8^1IJUnl)QE=3{1GE$FGP3B^xu)k)kO%Fc!9mcuf3S12^!jgL_$bHy8~RY3 z%TBeo6~D(=&`G1u51e=?2kjmn%sZ_!D#cIP1m9QQ#EQyW4(%w1uQpKDZNlqyhYjwv zQq_pXvG!Nj8~N~SGkj%YY0~lo7QnyC_qW^Ub|~)LvR7lqo0$*j_)PbIoCJo(?`2cH zz}GHTL5}U8)-)*=|059-XAcSgdB@b3yQxc?PW15`E^oPFm`54Ef5bA_P>S3juUg8q z2zKzdw5NlX6l0_P@`|?IA6*~`i9z+BMKT95&y~SYH)rkm9q(Us>r~J}A++*$ZCv-< ze(PwlT`M)a25Bht4DNN5gHJ0AIX{`n*&2#Y=Ywo-QBC7yXiT{jIugwi@$V|;g86*C z|22pQgOQb=bspNc`;5wF5M(%NrXS}+u7$Z!K`ZNs5lV*{C+#oPC!~wc0^j!8dIoIs zFD+BnxJ8dn=HkvlJyUjk! zh!Al&((nKd7>{o)uc2z*tWVMcRvD3PVCEB_SMmTsVH%FgfLPTT>K6P#SG53V;u*e^3cH6=>}i#EgDN(C(Q7tGDDV0COC|eqKjp#{>g>rTnJ{GeE57EcP4!3r0^!g#1Ew z9*JppyvyM+}sjQJGHZ^QsY%@CF9GN*LvBxroezPTY zgK@0waoqO?BCuewH=5_y_4>sGoQngkczIsG<6t%p?Cjx}G*&_pu*=>0BSZw=T+QFm ziZVoW$1CaJ!*1FFmn$R!vOYqyiQN7`by)O;9A8((WVK9ESHE(Ye z;%^T9%BE=@+YjVGkf87EZdkTS`Q_%bP#*_7PRl{TA?ZOUOcJl9UqAZ_|8f|es#Tb; z&drWri?|Qg>xuX1-sQH@;Dgt1hwYZW(&n7__XmFaJ?6o*G$HGiqK&KR_o`+XBE6r% zL-?>4);Km~BwH!5h(jlg<0#}f?9B<08#VcD580Q@MiY#tMPnQZ(8^BO-N_h9uoNpBJ6ufU8=ntu+}HtB ziazeuARU!vq^?*r>DuGkVl$UU&ESeuP2+^Q(?*i_94#FXNxx<4nzYy;@7CKb-B~fe zEdrWHY6qeFE;88r4zH&XHQXZ`rnn+BT6SunwpI^yd9Ng^qK|LK@#B?b)ezD~= zpg7Ql?D_%!gmLi1q?b9!PMbj~u!6oa7=mb%^;~xG0DLU`)Hma@QkS-r1(vo8EQAFX2#ISF>e5T-C540(Nbl~w$m+e9QJa}>zQ6Rye*8S+nRCxQ zbMAZIpX}jc?g1CW_ zhbwXRp{59NNl@9=#^>9Xs!5*TADnZb#H?)PW7GQE){N-UNk%c+Ao~~2v~mOq2VTSv z4b2YL@FqOG!E~^xk^e12@i+Ul;%m+p6^<*y?#4XFc^(^sWNFMYnc2?ejHlY8;*k_q zJlf-BxgaXsrk_A#%UOI#h*H5}0xcB$Vo`stOpr)362DcbL!bmdUr>poWh~%An8SEi z@Bl0+QrL(Xk4!-+Rc;|qs2`8>sp%vgbPy@1$caX{VqB#PV_8i-6AXD7m@lMeb93JC z&_J5UDRA{Avb;yu7vkqAGAfB74H+E|QZhsWsbW;DQY&e@8al5_^U5=bkHV#_ud9eX zRWp{8XkMl-@C6Y!%oO~v%%2ZRa@F2UOd){L@DLRcr;H3wupsLf$mXW#csdW68WJF1uo4S`?GxF$tdI!IGR36Q`nXcKV+^Hs+V`v+9^@UKWqiN`0v)jg(#t zOv4BZIp=5$w4Mlxiz2WDi8lSes6kR#;(?G98Sv{#~+G zDwz`&mKmm$HKi<7IxCX|U z=uV?KCszl};`Yk9KS`mb$tp%Lj>63srDJ*IP=lQhSA|tvPRSW{l{Lu&P3hr!XK3!=uN2X>?LgLWTTy}|7Lc+RP z<5A6ze_*kbjI&amE6J|-$Rtt6(`r(BBpLjg8E0yUx+zE)FHZQOb+ZRUr&3Y6fAE^P zqyJ}N7&p&@$4ptM`Nos-={D4NMr1EFD5*3;!@=Vgs z5s6%QF`vcb2tp~2hztse8Z56zFJMAz5u9;|vY8l9ELB5FPS}e^%e7FnUdnOJHWYG& zLQcSm#|5abBI^{E6au6)pGMmqm&bgo>-laeSa88s*xnmE|5@ zK_p`7XF!65IE-@^&(tR8BrCDQuu_XlS-=b19FB^PxU5-4d59sQc-TZKBmriQA5Oz0 z6|dAF1L9(C%;zqnXDL1lb&cnW6@`UbTp_nKG{m?8Ybk4~oy%p!X>L{*Tp1-&GM2tv z@>9l~$tLrjkoc-9pcDy6O2alpDJ7nt7b$U;W2|tA_Ey#vGnq*0%Snk@A!4~rWK1F?qWxSH7U7}aIwTQh*%4$U)y9IPgqST)1ws-&G|DLE zh?0y|Jr%$QzQgnS=^#V1-naZ%r6es@M_DFA3z5pDgejTAiHD*dm5}eb!n!+2G29r1 z4KY$U< zH0VoA8I@JVKs@0wwsb+3^ zl8m7eoiw)0W1IC470GYN>DLoZPbwV_sUt=vRi=rD6GGa>)yNDwEyudb;`NCdxF>98 z@dCP>98Rn3hAU1;V8{_30oSA%zd&6<;CUl&;}Wu^@?NRc;b27#QkD_S;A0-M=30+m zU3BAZJ3clnXsw*cND~o{!xLGO;-_ieVy!F0+R=PTvb+mQi3QE2UtL|*8NP+ml@$>R zzC~tQrpMGGl_#fBu!?bI$Q3L8Kp1XhG=qcv4sHkuxe4vKgHycGXTp3d-p|o#^?P@z z=xE~4ESj*jbgmv&h_BAF^^&~=RkDgeQ*Dja8yEYLIw>V5k5)JDYYsAKnYE}+Tvn7{ zM>)Ca1ZR#T(2Yg&eAZ%LreU~i^41v<&g75)m!6GGpxS=L(1_(q4cC5Q%3#F{>q;Aj zyiI2#!el&RHL-D*k#tTR7&{?bKqQ+uTdF_voCw2Np6R^R5DdN=D)O| zZ;_(^g(iEzU)~l%B?GJlD`~Pg;?#wb*oMuH!zX_pBjtjL>VX#jS=ouvYNhS>QvvIR z6nmOHmRFEUrj9hu`IhRgtl&XHYu0>)Aq&wH;`q=#N>=_IB3!wHS2K=!s|UV$B0Aw4 zE;K~u2UN-lPn-1nLMUhwU-F${Fg&hSFHrcz_*fJtOws`3UMAy5p!erQ<>#dZvGhi^ zg8`kSM|miJR34RR1Uxxo4=m0bQrydt2pj!#v#~UMQWM8;^u6L_Q@qO07mXat93DtB z?S+7(G0CqFp2H$MQh-FPp8Mg3=F3JG(WZ{sxg0ck6(_Y2ngl57k`UwfHc3RMRUG1c zwM0A`h^X?cHM~9SA5yr+)3lw?C27Zcep=JWK@^Zk>-Mm4%5qu~X%LW^iWskcpx7af z#G7X**4a@$dbQGif#+e)Cx%Y4Vq6X7B-Ep2`j;0~b`AlvJMLT_VHTFe8sVFf1KxR1$(@TfM%E?W6*GLxz1Z5CbOsW;`)e{wWBDE5j9EI*tcim2=T9} z>ZC=7o2}x7uIfXkG+*YE0pf@8toaX9L7+JPwLJb}_7X8@wG|bsGP5fbpgpsHV`Jtd zw*%E&DyglmTy=4UvBnXA3#c$V#Uj>ak;x0~1y?AhKA&8RTLlCQ@Tre(IuY{bP>r-#akG;e71RpMx7fI{>ylbxxLU7&+8axQH~uvFiw~BsilKc zas<;|U@|6Y-Wq^6Tsj7~xoww-;h^!@MZdMqW_L{4CuvT$kg;nTx)wn!< z=&*5oFzL#B>NIY%1pC#934R0tzwMdAUEM75dmLs>)cEIv58BFzySY>V-F7G=n4 zj3dzO`AGp*5#@3MCSIX}D5#aCNmy7|mBCy|o@nXsu(r7huYmFrB-y%&$D#Rxc|;{o zFn@7=LX)CAWCQNL+5*=~v;(5y>|t}{Lh8I&X5~+x2#gi=5l)A%h#Ii6T9pevmSYpr zx5zGz5`!sCjH@U=b^J7%gU$rc>t+@eN=!OIe#kHzSD!BmT?t-8 ziL0BV+h#QAtN}Z#g_)WKU!hKZX_=)!`4~+uoh>nu7s|0BC9~w>nGLh6qO!ACOHSH0 z6Z4H7DC0b;2R8WVbdx)C;oUg4by!tXm&)^E`~+nm)H7w!d7s8qou->-iM7-D&>Aey zV~wg??c>IDY>pE#=4QN5Tsx*Nc0bN0xWx;;QH)PTy{k@2qw)KzG-|G?-D5{veG|BR zNPrKAP*p|LVM{1e1&Vjvo9WQ02=VVVxM)0?7MWsLSy?qar)@0DT_+Qbij!Wi&?nxa z;GCXjp=3xw2In;pQfyXDuyqe5jP&^+v6c$f#D$G%6;sQPHU_xjfK4@A>*f}>3=EcD z)MG{OgrX_eNuj;2=U;R5i=!Y!4e75;>b<;`L*29v6Feq?h8*W zqGn6aD=r#PMBFBtLITsOoRX)@wU)c=h%RWxMT26D=`yerX@sFyymMWG->#Y!Y32r8kDuIeMaE-9oc-V{6TxCo2EFzmz zhkU-0YP()ikgL73Zb5vE^Z(sgYM4WK`HB2cOnoIC^3!AP$?3Qdt-MrTobDHu)jAH7 z+(HxIdeT5wF7gz{`c6V52XaD}v_(UcFLG1!#vPY#KJKcuOl!3ZxtAJ4QYFRW_Zn1) z(n$|v#&@IkA-98ztuWkKk;Q-ea!!ol{85g4DLI!c8_3k*KduZ${O#e4QEm5g<9Ox} zw+@$!khsm4S43Fc-$GI`yk^u}p4vk8!KD^h;H+(2-mLPAW@by>bG8s?rlf#N@TD<$ zlr@MANj>sXO_pyIViF4q=;NcTIx0*m_+^$-xrh~lXinq43(Aabv2?=9-_GIijCAQ_ zPT`m8q!};9OGa=3Bc?PM22si+t6_*(^>B(WSmNMi>De5?B9E&CqMVcX|1p8N2-_4H zJ^%@EZiP6gqoYVat8YjM4_GkPVg6dLolb8O0$cKQAxRN&BdF8CR6h#84hDgiUZb3u(4z z5mps^;WL_ii7+I}U?mg_sGugosbg;I1g@4OCQ?*P!FA@x49)xmF=s8PBxuwbttc=A zgK;uhC6tXN+<4X}VTB`bhIQ}eh!Ug(LzvpMW7g+k$zZucARt%I+NX;OahPF^A+bhNeWHL$86zo;-@F+i#mW5=>Vv(4Z<%>+3thkCRRt1_iu(Z;VRj8;;A|*)LIH*XD*@HzHEl*v-3!*{N#MSsRLD(h6_!J@MC^QtG zil{S7BeRB5rl?vi$dZOo&TdRr#e$r=q^E|rswU1;iHsHWGT||{@y5ZBDE!kb5$4Un zz$;!Imcy}tJzpEByb8r&o|z3vZO&6&H`AuICqpkzCu6z6cxi!KY4;=_z%$Y!=v0~? zD&)A4fHUY?)+nee%~ze6Fi^bV-weg`2r3hyxN5#ys&M>*dKVhzoHlvCB9gAH_g7R@ zdP^2w8l_F~kZt^wU57^pG>YOlRWuP1h>jjgZfFi&(-JOHW)>U@o#K=RQ9xrRi%{1`@x&#tN#JnU-nX%%i zmmf9pN>#J&MAdwwritN^20sBa0amdv#wjml&Z0cHz>>B!`5Lj|`XCY!r_YKsw-}8R zHB!5lbDV(U`Kt!Hwpz=`|0omiO-<3+;KeECnCndS`Dl7nm=61l5u@KI30SA1qsID% zI+XlfUl>gAO5z$0Vi@2mWCW4S1d7mKb8^uP&aaTkd{m}VExLX#ACCygy0Fa0M7}oD zYD>ly7I9}RBwA*Rk>&!=m#Ht7iuGmC89~|1-0YPU1J8=oVv42mRdW%HM~7fK1*bIC z!3ArYTEbhAQC87$qbvZ1>qkNx5p%)IiMv9Tek;Td^*I#N ziI@_#W;~oQcfdkQak3~=pcPtAfbbrH)B8#mN#|x}V*Cute9wPTLk4F2)_gQ;qTwj! zBBeoixfBy9sS?W^p6YKbqR$f6@|>_(Rz1p}lylRT)~^au&h`p1F>$R(?N*K+*ZQW~ z#X&EJjLWIYxws~56ZuLadPqf+Dekok*>TQaNV@dI7#Df)@*|{A7%8J?B&4`H&NZLvAO{&1%c>P@1HCGlY(Tg@gd( zRCz)vT9g+{J={E#P?&N?l-sCr=S}=+WohHLbSn0sNP-#S1TM`ch7<~M0P&OnMf~Kvaq^zjWtn-T*~!b zRjXJpn5w8YJ11j@$(zK=b(O`OplX1~6#1j0{z}#Qv-B23&sDSwHPg$I>VTw5zA$Bf z&5^6|+JdtE!?N(Cb*`)=XA9Q2+Ka)l{J4Fl_VXHykp@SKN2dm{SfjtOzzoHf-4@K+ zPFq~51DB3lR_X^QhYTIO$KA}Ik1QXt^2VKGtcp?%otb|%_gj&L#VfsdPLz>^uZ#>)1LLL(i(9i+M@3zG zOVWVal1o+;G4vQ+kBLY76d8UC>Z*{8DJ~xEPh72_sJhcqL4ZY8N2ohh4Gn!6(tTO( zAB|oREYKaJ7}0^tiD!RHM~Cu@tE%BY{8dm&jxR4Mje2uM9%utc?Fd!V-z`{!ohpx4 zawJAtcA7n0PM{7w~Qjs-(}rme;uS?fu2A?oze@$0hv z7l%}n32w&jO3t9|(abVcm24xYAUiB%rfF?D8ni3W$-=XIpUfu~5h)iz%})o^q&I8z zX<&uxdMVH7Vj@j-AqSZttg>J^r%b>)NpsFb2VB}qh>=tzBC4VK0wgpHs4}a(^TfQ7 zlBsd$YO@CA`Ok>XRSl%Ea3)bFUSX*aWr$_C0}V54?W!}z+47W5Vh`Zu+DI_FE;Nyj zhhu7Gn#!`3R?UWhfKh2&!5Hd8oY0Zv#X?HKwLobmfb)wYqtZ|yJ%g!k?Bn(40~5a| zW+vWXOB{ zxPrdOdPQ@8OQ5G)`Ip6|G8bZVEJAqJc$NiJdn$@<%3TzC>r-)qM57eBP*EUyMGC2H zWN{V}Ii+XWVf#qMhd8foV5>I`6Uw02Sc=U7BS){beya*jC7?#>d|tnLF29bipPR~`Ao1LSl+JAABB*~lN#ktdIH=-m*e?^O?heKYWUT>2!So?|A*dm=Tr-Qfw zZllqvDmHm#fm|+P^EjgndX8Y==&Xsy-Rh2W&U$E>Q|=S%`mB21d0D!wIqqnc$<+NT zBKZs*2J@5A60LLEpB@<@XLVCpxQ@pw7^_7t4|BERT0#BtrnoOZ#=Rn%@o2c3_NaQE zWh?D99xlx2S@f=oah!%-etU7<)Pyl$B^Yc`OoF+P%L33yQ+ zGpv}VC~Sb4jX7$A?WQ6+hGMkW|03=6Nw^sWgK&uX33$(r0aaR1v*-Q4dvFP4GEnLGeLxP_cUqH5v18H zP8G<(i1CCYI1ST$n^c8ds`S(4LhVW)M#6=dPbd(LIrvH=T!WlFFBE!_1+_IUdqU!6 zoJ1m;8J+!-S;*9%D_oI~T4rg}@l;@6{2<|L|K+x8QFaPP0*|)*5hbGq^JM%Vh zZ)1D{IicY zw!Q&Aym-x?qw0^qBTv8i_VU3lu=I{kuiS6$2A?#voIBFo0SHF^siC!SR z^w9UG>vn^Cdh5*hS9O9npKblTZPRXW?l9_E=i3DW$Ldu7dHWM^`ra?TD^%?OIQ;oC zW?e66IMc~{w6p{0uH1iKxUCZ;Qr+z*TlWJ09pjy#=A9L%umA9U z@L6f_+*VB|K-P^r_uSYCw%oFvToPsP>y7V~-2Y)O80}elXx!EVJo;5X4)$~c^@>Gr zG=0?xZdz19y#8hnXg_n);rgfE0@qJ2^FD3s1!HZ-!gUL~!GHex)~B1-?gT}T=Bu{) zyMV1};KhHQ>jiUt)waF2?gSh6ZwLrq>jm($KWYNVZt&xnbM=AeJHRc@3hJ{ry18=SBAx=8L+(?wLT3^dFtz zj~TD*w%zRY>EE~)dUQ8X_dk-Gd;c9kZT;rCY@q{8Ez7gD_*>wKviaX=*#B?QrKkQ~ z`OCXtgj{s^iR@m`le=|Z^gDtYU@kwd+J>ipUJ+$Y`Or?O=~-&xWHB7ZF}`PlpcIJ@}A|Lp!(HyErx zZCL+y56Jzp{!{rsd%^P`&sDr}PbYX>eWZT6=50V#$lf5EyTP}+$E^=TJHXnv#&0|R zNhgpz_WXVCe9#5{*463izJ+}b`?g=ad;d;Q%F#Ua0lyo7b6YxYaqa;93s1IgUDgFg zmMrCcb$k~v{CXm_Y-1OAfAfcz6t&{b;A}xq5}-?kyW4B*8%qax3;b=yA#C! z`dkkPcYwTqXmI=C4j`V}sQ>YYZqTjW^a1%rH~94q>if5=yMg0X)8520onXT?8+msg z?E)u$UeRoA?*Lm@EPY`7mi=H1xk)r+>I53j{r7%2*a7;I%x|Ax=>aSM>UA!%cLVR} z-SRcTPH^+TSDs=vy$S5a9|3Q^132}|;cM<0< z@bl}@=o>40Kzy5H!wWlh0{=;`=c~s%z(eaE9zwV60k?dx=;=Ej*$L45{!N0RU7&dP zk~?cxb$}07K2*Hs;a;%ke-C$(H}3$$YhQYI>5pB&$iFqvx4RRxFZ90u;Eo>fX7Q?I z^T&I^{spD?-+QzhB(?u}bS)b%?v3k}&#T#Z+qNjQ>dh|DzpC!rkM8XO2mkY-cJHb0!2Bya9c7mmxXw5QDFUY=Dk$t$m3)I`HR|?BIK;V@4 zp1SYe0JlO7FAd+c8#Ko8KYx1*8~-)a+%&zs=c&wg3-LbLj)0^Nm=k8)ycyk31~b;U?GD4)E0^7f}X!Qw^q zz*jAu;0EWb8U)z`-kCcSw#{_{+_LGj>)P4%Bl+R!{a@|{Pn(|J_0-ZmpzyNf$uEXG zz)v6E<+_u-zFR967q{No3k;hAw{`LMg1&~kZ&2BLz=Q1{|4Os#zyGD}t8PHv0DD83 zO7VCPxbEe%H;l1);QTB9e22cR6QIk3!TmE`;Ni$iJyO9t;IXF-52P-2f#%M;{LKSz z0O`x{Qy2TXz}^+C!OiSWK&GN{!DH}a`b<4e-u2;Y91Q-5gTfY1KZt%sbd+*A={581oaz}Q7GozPJ3)uYL^2!ZOH$L43DvuwF{cBz~Xyw#Se))ViIAA{b_3ekcz%#}B zS6x}v3+|iiIJA}BfA{=j-?gU6H$b@WamhSQH<)>>{OO-x=mgeRnjK>;d%)$9MeA(r zeSK)v)cpTFwF9i2{NROi|Lq2Ams<~dOgq88S3i7Y>q8xY{BAu9uGU2!29L%u08GP0yn4bz5VnLo#5sA{V&{nqzeqJg3lcJ&u(z% z7iT-1t?z}FFnuJ1JA#3$otuQ;N?R%TjV$Of)}5ONE#Qhd9(W5zyJ14 zCwOD?zF5)6yTR$FLyYx2L9vHR|A zLER_ndGCO4&i6jO+Ord^J^cDJ3|qf+9$QY9^E*J|{YWdIzz-u=KbV={0Y>Qml+Sj)XCN#*Ijw_V>Yf|vM-x2X4mIWn#sBSz2NZt1vkVW-U(Jc zT=q>hu@jtlVcCgcHg1WRi;KB*H@M-+(MPV`xDyyZ`RB-AYkI&ZXYW6E$Horu{Dw!% zCgCn{{H~iWb~kl`c+_-cW#=An_mJ|TSNH4!pSJu`vwK|^_>`4HnoXH$GU}2|mAe z)q4)#+u-B-&b?TFWjA>1tuO9hWn%w6SoFrjZC&8@*Qm#$$Xg)iZYl(4d%+{>&+4y! z)CD#VWVZgR=VS2d_Q$u$I(q>3fZ|d8kDXxCxz@j3dSDNjoqurEeN|nce4*!`E5Gan zzPnT%!n!V?uKIYxY+ENd(09XjuJ>(l;LtDfWsmIwZz5dV#m<_9ipY z4IWzk*B7t7u@e-q|E|!c*}74A@X$YZ_JD<%m;TXic?bL?`E})txfg^^^=KR3egiE2 zrlL>4#@*2+D}T5f+6Bb5|693fFI$%%JKx_T+ykte8-+)EyFlQM$M)Q?`VC+$e0cF% zdpfbHGlH;qut=kyZ-sq^hdqG_upLy{<5SK3{AYwt!4L* zaR1j8+s3-V|MmpmS+JoS3=O>Z^~Qspp!d*&O@nOS8j&^oWJ`L$s^$5XjfI`y>D5uE z@abOAgMLolHNO{p|H<8A?#z4O*LkfLg{2o98W`>&!FWqZJ$;MVB8mv@0@#K&&mhIfPLQ=eb>^vPb}to&MO z+qDBs-Y|OZ&uo64`r_q^%D;DjvZsvUcR9U4+x**d`Dh17%XxD{yLtfgCAQUs=2l+Denc5wH>tOr(NJ+=?ib|yMc|%x9Bf9ySl)~ic3d- z;dO%Mu`P`su=(oZh0(Jcw{!w;(Tl4(T6=-ZyzkNdf9nQkk*etH-aX)fGY8w>uKNU|*Rk)Tp`m>b-Pi$!{(H{)j{`dawokjRaI6Eo+wyc&HP;P7 zAFZ8#O5OpE{I&=@{Bt+3K7I1FqC_`%@8_3nH+{s`t2fVo61%$#yu;ZMD`n&NvBAsE ziM8F}LlJt-$$xi&p}jHQbLL&(rN>v6oN4U_H{Uni$O-lUt#V6;^!nWZy|r)uX|xLz zLhsxzWApJhSykmrH|_%Q+v*b=XF9>XihAMOT$#b4iW!M_JAJ5=*s zMRgB2`N$LU1l2Ks9nEQMNSeO%4-mvuOlUX5#jlI3tcz zBrYp*VdK0BGl$cU`Rt98ku(xC7V$+5r5{VelYtUJ9TX6yWGX5v5qr|KM3UeaSPN`r z5<&P>+P4m(!Dl zcS{uJ!hAkI6_q6eXib$yPL%qxy25J5goKySqci3$R2a_;CX=fYJe@bjgDHuW!sKGb z6ju~O1PM5fb2)fcyIspq#YO!dKE6qm;jw&#!*pU*6joPelSxi{jGGcB@FI;R^|_pH zkXsG4N?lQ={;?cMNJcosg-fyiw%~@V5@k7^pm?5Zq8Niz<+kup3BI0!+q^<{u1j1x zUQ(Hb)h!Zrq=qw)pz`TC)weY%-@<8e%bdp)kD!$$DbkpT9FIjSd=YOJca8ZaO-_5# zrDvj1eO4pk=FJH^hdz)}hvTwBp;89Xyja|{dAm&K8k1+sim-%*DPm=3m%|T5+%qa*Yq4R5TXrxs9Gld!YLT{rDEE~vP5_n zY9))rlz5?pibBbViJ!Lm1~>W^oHn9$0(TXaZBC)soH5?&rpg7IXs}>bt%TPZ)D9KG zX<9B58FuSf`)pK2S_|J+_%ep$m?+REDoo^A3-yGW%nb}h>*#?nkCjHuNlj_irB0Db z{{b@<3T{S{8s)eTOtLL|o-nAAPQ+M&uHg1hB*pB3GP+X1V-}P)L69$(TfRi9?eoyl zLWmSIO4?tqtq+7&2}^KbD)#=cLg(HLI^LQB6wD&?GPh--oP?4-m1DF?6gS&bYX^iXZ?6h{OVFPP@)Yr?N|isb~RBmMRc_9m=yWCU`$2 zFPy@N8n^*dP3QBjl%`PyOO0;ZNkNRsNSe}mxoC2+jjY0`$4`HnO2z7%5KA$tV`h8p zD-XS%Wh6RHrR8v1M$7vzt5KdxcIGb(HB=cn!j(w#>arRBib664vz(Q*CL*K6oRxHl z6@Uui?^nlYF~vX^Y;xiuf~!dhLazxDOQJlTB9xj@HM+_f+RNw#9QYg_(U*>u7DemT zIJJz!QF0>lHHUm;eC5oVQ3=`@aq%%PpyQ0N9Nk=CQLP(Q@U3p{((HP8^^uasG}B-d z%l0=@Cz7m_^+4Hy()d90A8LhdSd(-riX}Nwb?D$(Yqs1uGMSf+;SRxCo)to`lLaQ0 zkyVzYf4+MFihn+>Po*+ZgppAw5=Lw9_=JznjOs|qLT=$t*`*vo*i*Ue?t$oUzU zlN&Fg6Bd=hb7@Vc3E85XYa-YBTf_+8N1F2`b|td-#t0ITPOYOd4uZU#NPLCPNXG{M zfDbNmc}UgJ#yPI7&J)CK;}eoFZYd8{suQPDkvbHk%%+MrDc z=e>dWEC*eiZekV&rb?YbT`6oX@Ta`#;t@V1*6qVcr2mEs+zkTFR_6d`)?s-uVG>**&~t%^YfF8kQ+7%;FyzGuo~-%A*QJcq^g#)F28- zD|lw&Y;E95JV&vXVF#ASeHFhOSrcCzAIr%ws$h%_O(aL!t(h@eG9jS<)XM)Y3Ej0g|a?*NHGGFeATuvQ8&+%-Z zW6|T>b4iqo=upe(N+?D69S%NfKwy_eADyMM@eKd$F_?+xy>EYw7yc02xr_vcTu`!& zRlr83>1wyfLyfjbiY)6Z21*8J`dZ`yJdRzK)$mgD%HnCVqAY=P1PJ|ToP(HURA3&A zrN;w1`CLt=UO-GBSx-P((=HMgx${%%NLWl6W*7td$Kq_fh{mpU{tx!VN{i^qYLwkk zkIY!IKj!tC8)O{WcDmYco<31ZiI-^y*YcoA1l#W-bSaA}Z=T*0r` zOIQvu6%}OjwNlqy!L>HD&?!h60^=rV5^!kVrCMwA#jFY6EWTzQtSM!#!{t|0k~qEv z7c_iXjsz%17#~%BV~K{!9C9Y}jS3&)=*1MoDnti@Artdcf{zbzCro<0z>TbyXU=kY zmU6~XK@Y;rH-nnUM3%8<#ql(PWs9!eS6mYdD)P(ZI_@c7TKr}rf68bMN1|LdFRb&VW~o!Lj3Y zSB%0#*<@ygf|p|QB>qseQ5|<{ZO!~FU1_M#^5ZUxxxI`vic0ult5nG;_Jy+| z%V6>ufwEAJPLq-LcrEU{L>{Yv9_-U2i`V<|edt6PmPiry%Z_|UcG7sYe<*A-pBGX% zwP>aSZph8ClXeBx+`*&`%Vf~VhyyVcpR&^!o%!tecDZsG3TR{&p_ar>^Ygk~VluJV zj`}#tN~TC(w-jwV{bOW{ppiCPQHB~66*I?H+aVvVoWpR6O0chvV zDnqtjqCMy%68I$+pJ31?yqmF{tyzAY&eo0;YeR}wu2Gne(e)|TFkZq*wT;FmC21k_ zH9Iwq&?uEEsF1cKS2`(53Io~1xE$NlRGt@wSHcO?35#+0Wo=o;Va`5>oRtJC?ZZ>O{ArWD8SdS0_a#79X=1i7BwBzrp8s7 zBQuI{7?C;4I2RoVMwZ<8gG!Ui3g~toA6}rYLQ^bGqkXkN?;heNbF=9jDoF;Uyg&Ie zE7M%-{9JhHSXsUvV--(PIkU(i5)zeRg2yl>)SojY`sny}j~fmqf_$cWipv_8FZL)h ztHNA4ZA2km&!0h;l^eaR4>cme$QFe!4lNPRX0r+itBi>9YCg=0BC(|1c7Pp7CAG+c7$o%t zWdy1~6^!$;n0+O0Q08zBnyHQCDX44%=Evr!lE1L?c@R5||7A)$^aX?9TUeml5R7ER zJ~zT>8}q4h868sLC*u%tc%d=@OIY_fhQckO>L9}928fs+G9yIx)Am_fmo0EEWC(bZ zASvw2C)nCs=uxSJ?wF%(u}i@*N0^4X#@q;x#jg8h)s>YvvdWxE-W(6h^f`arc~_wE z!@M4ePLvj=Ze)#R!=_aES#GiD0d9MBURMLJmI@}#tZ00ZNo@Y35}soUBJ2uwq=Fr{ zoe*-85j8T3m;_Ns>CaDINSO-#)(}fJw-qTVnD#D|&~~AyRS-r6=@D(Je25q?=1g`V_<|_E-O^Z_8*|lQ^`(j?UC^kL9 z$(gl+DJ7@i4X4sFtI5xu5nd_3z58Rgp#G>Q%poM#+BCNSZvcCaSG0jJvZMc26IzD{Pg}B-W?|SurI|Jk) zDcU)^A!ZTx(@GV53r836CA!OE{eL}N-gpBcrk0ihgaP?suU1A#*Gp>kL`1JFaL^KdHSgAn_jz&hk4MdA8` zgP9xe+$FN>V5*c6@6bnC-^WGD4~>_cjB(G~`RUqN?`9v*o#qdOeoZC5`etV0)`M{2 zd_YGAm1Ni{RpZaEL}Sfff5*68^#;f4`4RZU_S!4-0M2<=kpp-4n5T<~V!(dpo(-*x zInfP&?|G(dj`upS_G%BP%)Yyh-OF+RCkibCJt+Zl$dv@V~L)_I!C{*W$a#|oZXHtp$ZW*6E7$%&ei~nN1yeuAmVC2Y4KGTZg|=R??ZR>Q4W4Cw z;2+Y^WmFG4G`JVjRmxvcR_xnV%A$OKcS=e+vSa4E9`1q%r4&}Wi2w;5=}y?N7@5`M z%>Xdf5L4hmw9&v?a%zI}l1rbrnm${~WUfC_>!-BA8fd!%^(RrB;%yrns6A2FGo2@G za}+`1&UrR|BhCPA-Hi+`M^Gb!*48hPQFNzC@Oqn0UheYSA$!9^YXt+?vKsebCsjI^Xrl zYVBu5{G*X=+QOA*iouQ9qdc$I?5M{|Ozv~AwOUpp_;~vU4zh-?t-sau7rBC;cO|*~ z;2v-xwatBPqE+gNH4hUoY`^wY`F4pJjywGzVZo?55v}7Wp8&&1n2~8PZwac9l_06@ zPWfXDAF&?8N16uNt9aZHK{Cp21vDi|BGCk70_}+=;(l~Sxlme3r+^BZ(MKkvz zTp;F@E#byj=`%mc3q# zNaUZjZ2Ky1?4I-En|<6F{OV!zBO$b{a!sV}wq zEkGa)dD-Rh_0;l35zBeM|h)-2xFoJ38<>VHajd*x+r zsciZlwn9`8X9u@{pf;~)uH*;2&x0&&)#u#!|036wZe{QcdoDypEamm1ncJ_L)9FQY zzy)ZaCM6%z5Y2_<-wq&6cjP0pmD-z+9%;$G!=eu5B@-rySBuM~u7=W#@a9E>L3CZe zQwt`(jrP2GKm0af&I2w0v(+mu&mW}3sU|!yGA8Ze%1RQ869d5nWOGh`nh|32Yg^v# zm-`Ev5n8djG?IVTf-!X@clHKGk}t*_oIg7T{aS+9Or}eG)P`B>xb_cK9hdILe~eY` zdbJc=>ALhs@I^o&o>FU%tj^fRCnb-)&fLY1xi-4W$*7$3`IDYXlk;73xBjjaa$ZNN zJnfV7QoYB%_|uWp&G%Vl%89!(2r%)<-SXK&~I8d04(OT**}JVZu{W{pa;z&f?o`f`l&XF9Ax=bFaTmX#9hY?g zwHoH;@3d>kRReQ_#=0M~zf^V3_1P~W!G#D1%Nd`ZNyk|7)>P-=0Zf%F?|a^2c^q&d zDz|tiM!4#6-$aJiAOskRRk5G@G4tl{QYu_N) zmhWpnob_~e17s%Rubx3)j<(>E=lr4>=^v_P{YZNZALS3GhE7%2FGNP#pYv=!Q+p0R zMnAG`?MXYf2D^`cLyM>2>KJ9z)74K}ji0vPCHC*_qVF9CRJ%aub2|ff#`8}2L9Un- z;w1hs?QY&H0r^h0x&f*_t?yrdlZyN?f5akM1}TqjdBDr<=#etL)2qwmGIi6dDfRP%_A?riV{O!^E4|1vRwSX6(!| zd*@jPP<^b|B!+G?Yysj>9|-}*gOS)4a+L*L+hUU2Dj10Gqs zWzr3$_Q?Ya{ToIC|FZ(xI<|KXjklpsOdmUf9g#exo-kA5d zC3waKG+|_z9^W9aAXts9U~W~;f5_-WZGd7AVETp<@lTSTkq`BH`W_4+!H>ZKF?Z@n zK7;8mb>BCgTK4NU7lbjvzN$sV?^>bIVgd~xnSEFU;ucTs<`h>*}G?v=$=#JmI;rZ!EsWtvEHc+j4^s;--)zQX<`&W9>qSiu! z{0?FIUZR?+vD8O%Av!yv)h5L2JoFmC%I-r*3j*{l(Da@-_Lp?JyUsdk7mls4FQc@% z$6s0qW%>oV4DIG)<}tLelsdNc=vjW!dB%J6cr#Ty%d~yH2yFo|qCR)J9BQG?vy3hH zv}@zjh`e{U7s(Ga3*_blcDO&5rFTaB^^Hw2=nw}#CrP#Q@TdQX z1zsg9XrA zT=i)56?DXh&O+F~G)ClqQIhs^8X5eF@ns?N6GMlT6Kw5y0_uvP*ToF=;dr8j@D3V* z>&STjr7d5yg2(c5aRlol|8=g$`Yjv2T#1IvNRzk2l{%-dIu}Kb;v;gL+H(Tjx?bwryqMCp#R(PYTS>>6F9DmJ!yV^Nq5N| zK%kJEY1m81&Hyj&{|=hOhy8oAwUo4o9g!LyMpyP7@94L0k)-wEhzVKTe(TfL$9gIB z+1jqTwgmRSKKaQ#Z)KtU^U&Ur0tN(u=}liuDi?|aai;c&OW&{E6ux5-H<2P59ALs~ z>Yc1L-Kf+Xo?c+|aD}?lS{DYsAe>syfL3OcfH41%+}O zTN9d({N4cK!#YIZ$YchhibC!p{m(FcV#^4)dqQ{o*)G~n2~1{`QnuZMk6k+#T1=9{ zxu7ok=-j}-$0a=Xax=X}KqiU%KZn zju>`WKFoXZND6IHsQyX6Zkw~4*C}9vYJd8w5Z>`rSlE@t+n_g$DGGKZ&a3slXvYzR zi>XfL-rM@pX^$v)4Fxb?rdJ+G=&-keD2U7Cj4+Y1oJ|_1#nv0YhuV=YX3sV;`%sFy zxW|~7)Vk|0_J~02z(2xupF;#dxcH**kn2O4i>e<`Hd*^`>cdxm*Ys2VVP1a-?f`%u z62u(0x3=zit;M|x6QQWUYK-di9Td6eem}Tn;i}J5u5re`;d1Lt zRHxPe8`;b?MNf-2z{8WP%PAK5$q=5AH8Tq50hFs6haWjiC+(@U%pB!=q7)4Q466zQ zJyL+>Y7PO#yx%s7<{pShlKCs8AI0TKT zxap?Zj%AX9qTI*8Hqh-l-V68+M1;(q4%yQBO_$M;0^zH{K+TnD6@sw;xrRVrSB8e^ z6TBA1)c+!7R`ZZA$a-CL$Hvv6W)p~G&sg@c0Y^Gv{>%{~|9qZk!dcu7$U5oMhGoJ9 zi@}x(bVDiR_a}-bs@qV*j>5-Hk=)?5drB>EK$QL6ZcjZ|^N6t`_LTcc>n?>12Bgqq z$f%cIdP-CNJ(CZHiU-ifQzh&*CNgYp#JSdaJ0LaE<#P}E96ti1!-eRgG8_&)9Oi9L zCgAgbH|4KZ6{NJsyq0d->3b3GAm?{&IU&L!y{5KWYd*etwZui`pq^O*u0$jqZrJJ#msx>POJG}#G zUiHFJTskdOvP5N_1^$a@Ka}luDjg1X9|=6%Ko5%Fb?D1W)o%T7KFm zk=XqnnMwxS)BCsgal^~T6Ayw@qLCIWBbfPX(r2EQJ~9JOX%?w;{`p|&)9)EshMYu# zd%aVZaifDm!3nwWJf-B0^?nGlR3Ds7H0&V|?6hrPkeaVDfQvNHW3OAD3*lVM_|>j^mtG?cNRgmpgXzi%5QY!;qRnr^EM!&P~kvs_xq)d~vW zuhOs6KGea6?;iHH+e^7}4-FsCg3oR`4SQ;sX}iOiQ8Y}okVMu2Geu_k+8lV;4V{2K z*9?;?1ewE30CqD_nlzOO@3)1)+lu%Afgz92#t@PV+J!HGKaG<8|LbT7^3s3nD|e33 zAnU05j^Fh3uznOQkMVrRMjx2l@$Mbd11;VXB*wYeqqoygcQ6X_qS^>7Q(OeQqwPXi zzp;n?wi8BYx~By3fTP(Cg^)@gPvyNr7R6^;+(LKZsH zj$g2Kz12X=i1L%Xz^|{0jm4CMmu-8F%CCjhZI)Y8l{8M1aGFfGU)O(KwX^k~|@e40T ze4iQ;tycs;nndd3iNw9zFS~=KaepqI8xqdY4ZYTl*z>zCCbB4UU9P%<)_R%d4MY1Q zv*_%;u_xa0UzT;({u2dXZ@Gn@7Rxe_j1dF17}l{h*oJ~l5GCDdfBM(2;;vpGZ^Yaw zPRU50gM&R{$2z@-)#aTO%z0)e3XdQCxN~w8*E)PV7RR-77fc)CPHrgx6NHRf6ddof zEgpscs#M&-uz^wniyrZIUv{5mvi`7LdW)!#ReX$s-01FD1qF297apt!tIpt%GtOz0 zOMSJmc=fw#jGLRK;y-AR-Eec0wtUmXjf*&WG^&>EuDf;G)nq1&s%bUpv}>T@vSesP z+28m#*vX$>1VLKO!Ww%hittcka|fSWm+eNudsaQo;W9U^tnz9Fp3E zLD4@-Tt~6iv`6nia^JmD9_0>OWFzI_MJ`U7vLf`RzO6DSDplZpJ%EMeM$kL3Z$G8c zw!_uL{E#?7scovA#UHDodNSL?%GAyP)KS>_p-}rNOCha$LfshLBp^yY(Mt7~Md1|O z1>0fB1q&g+ttvH;5I)$zfXvu#yb0r1@HS7UWX{B^5ho^#t7WLDR%Fx9!Lh_jbK%-& z{S(M2+R>GujYtz|(=vk8rd`{sO)vPP--|F>z8(X zBCICj4Ks|W3rAX<@dI%g*AlXW{OBY}pyE55f!z14lt0w51N-2;%2k>!-2DvPJI6xZ z84IKpd~aVsbuxfa24rJ|JO&2ZO)1rC2k42O8ZIj>dxc7_zdtk&pRmv;0 z?`|K=UC#ZK@slueZmhp;)Ry>FC2P9-kdEM6KI}E`9k=VxgwHgZXNhd+yY4SMr$nHop`txOvY#L``#))Vc@E%cd|sNmAe3 ze1I$1$gDjvN}zc64P*Y=tJagj(`BREq&GscRw>@M+2@#+21D;k6%xM6P*oDI9}XM47X#d^w`jUb|Q^D z61Lan{%FL~{n%nj{)QD1T;zWA&QN0(X-WFEA^7W$5-2(;dL;U`A5)!d?Zce)9!?Xr z%`Vd(+(jLtxsZ=+FF>2aR<}Zsh@WXNAXZ_vL`Qk&0pp-uC-;X4_fxw~q>?zVMtWc6 z0O@Pb@pVTE4Ss^L28K@cGdtfGf1U8DJ+4V&h_O7IGl+@wp`nM}^6*X)avkeeDZ}Yj zwm!z4rKaB=@7wN=J1{XZ?HiPP*D|JPlBtKr!aqhP)^~3_A#iAd|V(9&^@g=}C#KQpVK1j@I6f2q2%|6Bu zY4@vV$~+3$!e!Ir9cIbUng@BHwMP{!F{Acd$>%y@F}g*}n@?#?kGgPtb><6!<)ri6 z%iuGY*N3^C)pG6SV*D)*9gwPwzH_nyhxfAZE6qOZebI?t)aViG(!lJaV@yAknvM+q z?r?wm2y}Sv!0#Q)75Im7Z%+nz8#tM$0xIg(&u;0%S8r~TlOOub#mWAGSi0ybK&dWf z$o(br9#i|ftHE{-7p-&r)rKet{%?Fb5GV3HG#=vRB^$vpr{$V^F6b}9lBiUH?IL_A zPBNLDho5)H)VQa>md{j=(WSbypSFJSx(_?Gpr9pJyx*G z0@1$IPxYQqdc$40=s{inNH@tgm0Sg59I;QMO5-mtzZzY5*Pn|noQekW^hXm)TokV< zf%~E)?0U7>69d!TU%mOx-Cw=vKd1%NfFCiZeAOH|J^QKW$Y#Wl3Y)lt9Jyirp)5VX z=qY=I8?Qj#j>?3YSv)2``nk{I(deK_WZ{F1r4NM$<||e2hBNkMz=fA#zV_G6!PkDE zjN`;f%6L;_HTP==AFL|>!6Ldc^mko@rP73R~ zWjGxq=hC{aW{7H&L3zD5LcvD#O1pkwjW-|O=dDM2Z!RU|m7@j1d<4M&h*^ipJAD5~ zHLtoB;7Z3`KbLgq$ok@%cW}M!u~wpxID$D-P)|6O`Zg9SL7HrVMY0+Ov|Kt->c61- zsbQpks``Sy%pSo`b{Ke#XGn?!Nf8?)rc~B*_d;=I84{1hDFJt#qdgJ6Hr`C$n1l z#jTqycK~45k_hUhv5dEDs3XyqK@g4&4(5;-XUs{%+k&>C4Qj}6e^>0N3)~M*s!vE36YR=wq05Eed@XY83iPK#n2Dh>Hbtpip-xqSbshg5GCYbpg7SUqI3Pu z{we7HxQC&W^Q)dcvUd!sOH?Vh+ISUygq8O9HR$|hROA9*uB4luE#vW4^{P*vBV4-> z->JYyI+P@2J0l z4CR^u$3{@EL;T^h62(iFSd-JE{tm$(gq&R( zqUy94j6`I6`fxy=gvIg51;p`4g8}0Fq<@gNp8iiT@>O}qKYDn-vpu=)-J#-($jwtw z=eIQ3bV=(`H?yxz0(4drU<}Gw&_!+ zf5Oqs7N%viu;S+Cam%TmUiyY7wS6eD)=h__$L(4VePX}&>(m6nc8-#{;rck)=puK+ z&{s-<{?xf6sDJ|Tmo2U6#cTRscQm!~|FyXN@w+YX4mnW{UwPJgc-&RJhq4JjvcXb} zUg`z67-QdsWa;efe;M*(T@4>CXXXzAF4T{q(`#sR3?;B9Z^%WP0Pb|B=v$CAo5X zlDzHn{-jHV*Os$~7($>Cu(ci!tn>+wPA(Qv)dvq)|Lv)5%;22TYAcW&WIApso_~W; zGI@j_sB}svAD6t9kmf{OxOSbg*|{Gva0rcrxF{)eR5y)nm9@Qdhn^;Cor7y$TRh{y z3Noxb(L#oqi*es$e)q8TIG=t$=5L0V0uX^M_STP33(2uR8{5e*e8@#>*L?LN@* zzgk#*Sd8YYMI5ht9?}_h%h9LF9>E%!EU2oWyK(U+y8)qw`->#^ql%3;h>QPYV$9c} z?MO1FEEA`J3F-a_rH5x1OS{wVW8`VPxl{`X%N~oiwWu{MV7pmfJ$h7@KVlw<5M|F+eGe9uEzjM}N<#P2V2%*Rb|o1`0vkUj zSa5u}{yhx7;?05X8u;o(wkDZypV@Pc?Y32~#_N%9*wz zJ`G^VdeG3GwOO8W!S#6u2L9>?jvc5@__Aeq#L|*c6%Dp=^H6tv~_G zoDy}e45|b(>{099ztg^On;lJQkFsR<2}pFeCd{e#k)ZjqI~=1I zhK%2!y!#oK3jGQ@IAD$&bgq&i03?sSea@NmI}!~;&SgFiU!d}f0*-(Bs$ zv)$g-M~93Sy(~!(dj8>(Fs7>K`JFPaC!*vL>{o6A+Bu2c+D9?XIV}GLgMVoEp`c%L zR|lPlC!#y+&G^5SLwCnOqF^??O6J~1=Gl>M%y!2VR}9WC z8meHIKf+N&k491e*tj8kG?3tMgJA>qrIvaU;lAE3g8v)5oB%VoSJie7L zI~u&-8zp!9_Q5NKg`H@4l4~&D(uuyyqsHy0OejKKLdH*g&w`H4=i{G{0PrUo5s{fe_~D|C#D15@56D; zwdaJe#BuV@2~!lk=5tO=;K;xO`11S@>s59e*g5uM({wwpLh zfZZls`IKpl38dQsT~g0i+o}~VvvXs-_=qwS?gta$r5I^XCJ4=^OCyo}GL?H=Sn4sZ zP^I9HHckmz*ciP1eAD)_UvnnM4wEzOu|W7R#rBC<6!zVZVVj8Iw&0PECwfv!qo_td zU=-2$NZZV`w9gF1v%A_ufn}%-CEH*qPSBO!h&|{h^r8MeH~!96N^_84GYr&-7=%VI z{bhKdy+w$N35vb|Lzf?=Q7INg|`TY0%R zj{JMU7d(AJV%ioGc7&!+zSeI2nb;z$`#W%T3HtK8H99w3II61`w*1tHFE=SUwXh3^uU#^n16Y;c>sv)?kf- zo$2weWDJ{K0jNO1A_T@byi?#%r&wD58w?)S)5O`1ljukwL^SG~=#}=vwT7NZw-X+} z{S*PxWZ`eZ4F|lTKd-T z=gno8K1?@5A>6k|l65jDiqKiZgM6}FZZF7=dUZb#`YlTGw#eRfwwc_fBPVOk-SaQ( zPuBS!kxgLQ8)PXQKAa5F-ob+XAFzHl4$r~418D8@yYpNA$zOED)9&pTWig7)?|#+M zyho?Q+>72b^YB;VU-{$sDJt>H6TIJEHeT;JdiUMy-W^Su2WjDRZd*H-w+^@rAxyj>ll=jiTN#wPXsSMU+!8KUx~vcHk=$#VCAGncl& zsP0?sEV#J5$o7uTE4hO7YV)1Q=3AT6`{BErny3DZg6*Adz2<%EHsfzkrGsxBA9k+c zTBghG|B&}6&JXVYiRJtA#GZ%8GF)xy@{d2FZG`hX9J=Ba7FqYC)v_onbZF#77hyT z%6I7YGez3NHjVnkahaFK+GvD|Ye$q3iuGguSTaJA5mXXn@iE^|i$v>UZ%9DZA^6aA zDKB7Pzc~tBECZ$O=Y6SDMQgbKO&Zw?#wB|w;!gd=5Pn(Ey?0RW8_8;QUJDcO4W8Nt z4jI@Ubv{{FJMM!|1d8qeJnj-%6Y>K{w|WNmg{jV@encAI*$V(Ry{im)MHwTMflL27 z7OL*BN}Bb%ei5EWgj&Nl`Gr@5(`JF-`w#PFZKF%XT22BSkk)@@Cl#h zYYY}Ozt4JabZYvtDcNCC9^24`vM=eyjxOAlboG zEXmX_B#SaJ7u!QohOy4nTwE9;3N93{7d9?4+$o8|SB`2KU}|OI1mWMRcDavqS1|kT z0OT${C5Z{s|LejHrPELTpHk2f$E?ancBK5O?q@OqE`HZJD`&T$L4?h^^T+%~!It0D zyxg|SR~Jv}A3K{^7&rwu(Q>^+2W;twHDu&1?s z&xwS>!)`wlZ0(XLl)1&bLIE#3mo$+$+V;`)oPGOj(|6s4KV`PPN^4dD+iSmhs?LlC z<9Hz2LFS>))AVYDs5w(vH{BRkb2b1L9Y#JqzF7*c#R3~W*4(#X&N73AUcS`J-ZhT; zPzyDwns4PGkY0xI$x@u3058ZTi$oD4DLbUO--}A-XecX%#!R;73gW-(C zpY?;aZcUYK3Ahepm_|<}N?R`j2lbF$%ocd~tf6TAa>98@Hkm9d<9SFAz&&WR+x<-W z6Q=^Nes^Er@vhrI^OQYG-M?c)UuG^@O6 zT1bMZzt`;B>L@T=*!!b2h@G+K$va!sg#lNm<`b}xO)X3}Ol>Ywhi#5fp9GnKC_%~d z01ADp^9f?dI#D)Qpn{?n_NNjIVzl#N5Pd=19rFp|)_AEL@j5RZm83%xSa(i^2#S&( zRz^xcQV030n|J?}<+g&&e-6XJu(du;S@|R^VvvgnyStR%M8GDC`xC@KLoSR<)Y!~)C~=QcJnDl2(wIv;~+IWpjRPQJ}_rv`*mJREd2pMq8F zDWmJb)h*)D<3;lh6=1g)xVTL)!(qnq%aO6(nA`JCmcjxdZ+K`er5`#b zqf}yl|K*7C?oC4NAw=VYBbd1O;=g`5AZ0c zIy^wPQ_3iY=COwXBs<%9>@g>c)8MoP-cXfodPhW*mPbU<{itJcHptEO| z?4g}|4?Q*wY8P)(FA>#b6^rox^X*UcO>tz{I6V$yR{!4N)KSh3P$(bHesmOVr|-Uo z+VmNx^iACE%_E<5&H0^iA9&0ycTlw5lgzW-0M|m}`Cfr{0`i|um|@gFja3y(q;bSu zJBSqK*fnF-(~v`?nc^8m8iwsA9ca`Y2a61 zbq}HizqOKd!?Rwt*J=0SW5cw!w_^%U(c#62U@ov{`uYFewCojM_w?pODeANi;a@42JdBx3{~je;bT+;9K`29@gx76FNCc>4Bd-3#;BYR6+649;8t z&Rpk&uZ49nUCT6C%O14Vpk>ws+_BEz)H z54?J)bPAmJD`s%Bj}C)T$0sv;z@36u`ekpB2NbKejo#6F2&g#6ovporKrTt79Dw{9 z={G4UIVsILNxw^9dcLQEF}{b|En54--B{C?@G}PiqW7GwSXdTG7r|KS1Zh(-SFnG9 z@x1TCYWAor>AlM-f~f+44pmO+t7CE)C=MVZhr3XONR)Q!h0=7f&}I3nGN@DK8>rS4zX;r0Ytk+nzD!Od4A`w&9We-DA|YHM(9YirdJe%rF{p;8sS67jZC6HdcDwK}=I0;eVL z`x-r{=#BQV44RyqUZa{HTA`Rn6{B!)7_B9UvZ9l`uJb-r87gLg(2?k6j6zSo{9WMM zR5C8EU?580!(=A;=%FdD>=$g3dpkY_mw?+aX2%!hTWSLt^UK3YcS1p56$Z@`oOLJM zUcS_y7JQwO2a-}geah!Z7+cWcbo+U-=@5z&=K4l(gn_(VCy;8`n+`_%?*$Gg4a?Oj z*5ea#EEp{Fo*Jofs z>XqUN6|_g1(x_e|$KP+S@2y4-uLuaa)vd(`tRt)R4BIOBr#c)E%5az2`Ug;=zk^0^ zkECuZfcEA&^=R1L`Ho!~w=f?E5+R7#{7wHi@WJ|?P{OZ35$p-Ml13lf-1;^#TVc_i zFC3EkTtZeL%mqDNvVpz5maIkYM2KeFCyCYG_sWIT+S>~HuOs_K3vWN64!@V_-wMgC za?puUp`CbE?w14)GF-{IXG-#Y^>1vx>u#dsIvJ7Et*8?1X?u9~inwJLM%h9{XWET%_*GU#|Q2iLH-M) zS+!8^{rb_xicISgMlt2_1>v0Dfg5Nx#W+yf7rd);e~bB zG1BJdqEFm_0(ZL{dVk!tZ;n9Zpk#y-gGez#Q1FbT{Fu_Sk*(?aiU+(Gt~LUbB#TjX ztg~u@m50-rmhKg1MsiuE|YD}?ni0?6v`3CWh_EE zMEZ6=ca)nf+?5UgZO`6Wz$vuqE2u8ui4c|R;EEmU?Dl=z1;l+l%jGFZQs}2@>|DFY zbQbL_NpfQW!RRc9eiNP86P2544asn$Eq%hb(y7l;Htfaie^)=z_nq6)SH(;EfX-^m z6PJS(oQg2*=0H=~Gv00&j+gJ+Og?d-SzPB!t>~v;Ma7W@Xrk*WTovI-tqyd4ES6iP zCnWLB;$36N;n(_XHs@*qmki>S)irDRoyMV9I_t-iPi3o2xx@q`lS0SWS)PKl(R4v4 z$zfae#8CTO^$9l?;Og@(&}RMXHOq$pv|+kVfHs~NCq|i<6uITpnm#Ld)u++7_@15Z zd4CzYg6EG09+v}23q$n}^FgO=hNHu(3;ns0Y18}r(@ces>p=}#qi{_#XY4dqGh&!A zNK4+~m{SZW`$$%YOT$zMt4#d#5Y&*f04PWp1It!U;BI1utBSLlg+24j! zn-9#ZmSzM!S-3^9i@DNin57q3{XbUDb|$z(@2d2ando`KPaJM~P>({>$r z70;nUvGT7U;%*2U^d*m=xM}zY;YDYq-RZZh`z#XsFbaN>V-5Z5%EB)+ZrQnq6UW+_ zkVUEH55UZ5U&}17WXAkzcUBsx?9Y(GBqq{>_AM78_Kat?FN9iV3@|jka?F}s6at-F z;I4txW_&T%_V~X{L#ov_Tm0xW$E0%Oy=xP26h_^tquSlb)ZOLMf&h=x({kG_25~8p zie!eRxrsgzP8C9_f4D5YJITCoWGBzJ!JPE=S8UeI#Mv+3BOU3vWoqUB=jgqHBs_qI&?Cwl#AP_5!MnTPtRuVa) zD2Yafo&*R&014MX18B6b?y4?dm06YEo8$fdu{V9u7adg{C-eOO_r34);4@#bFZ%hz zsd;f!A0P2tJ;A&y))Wjj4%(@njZ$Ph{K`y zY2berGVzqMleIT6^5>gVO3~r8d4Ib(bef)1#B99#s<0UZ8Du`1H_%FJEcp!Mv-Vm? z%uj{}7s~q(U1fc7y_XvY({~re|pnYCd}TFwyk1V$#9>OsT*7;QOMK zxc--g@aw7G9W%Y3md2}N{Y|8EcoddKa>4t#oYq~XR>Z}fy~w%!;lsv1qu3B?<+6(A z!I&TA$O+3W_{LusA8=A!m>mlqulx7jC|n3}-CGQtiX-j0g?>ZuaK+Z7 zAw+WbipNS~Cjws?^TppaUpPpunxmvKQhNLBh+5>JUog$dm*bHK&VooU>KMN=ncqxO zLwyo?_v>DR)PQew7PmR2z0I9wF_o0O;*ThO_5ez;N2ZcLF2-fQYo{?D^2Mv5)*ZG6>O%$aL#4_9C%`HQp!*hv)+x_F$hWL|QY* zQKTRaV*r6Ew_z9A6r1T}px&isN`um^Z=x|JptvJY^kjeJM`4sR>_g>T4Pli7&zYb< zIoW5S&2oOm4*`kn6LCUhR$K#PFc;Hs0?;?G3}9naXc#CZ_irH7l9JKK8x9E~1Dy37 z?sJu`$Ootq^*@9V?!K@k2At?;hfwfUH<5QH7@Z7AUmHg5{x>~MP@EoZnp8V}$}kvejBB=k_sgS%)_v zC)yyQlw4_IGfD!F=-3oITSf53v}d>!&qY$~uU%Hq3r5%H?d|BBfs+4Ml!rrBV`Sqz z>Ls95FMQLbqBDUME&Ji#^8#}>W(|426rFFPAP{em;zN6NX0Ojx146yX!WEY_bTU%Y z9s)K+scd?QI8Q2l<@@0{1LrdEto0hT9qFqG^6{& zB-bK(xHo8w4O0il5lqu+Xy7m+59)JSXJqnn%inmr^NF!=MWc=9Xq=3sRGmPlIs;Si zDogF?2sNd`gpQj>>mMNWNjqjQYEI}tq@bze!n8T~VC1ORrz5W*IegvQKp6exGisfE zRi5ziCvZIHfqziQci*)@$#hh42iBx2NZSnUJ?9luDX8pCUPWl%{>KtM$4i3wrHzll z(+mMO&__D1>h~^lFP>S=`7jvUt_tJJKvUY`cgwDF5k|s77gFahHY~)D$vMVXT}P?K4OD9M}T_h*_+(k8Eg5;^=+SMqES?|qSf-vfwg%5?JlQp@FnJCzoGA5#_9)@ zFYhJn*lsB#zSX1fnj7kSpk32p%<+%?7+V@{L243^aD%9Vquo~MlT;TqMEUL;y@^#?~J6WEDa ztny5iH!s%E$?e`+N=#TtEr-$va3_TML8SJ=P`tbSS0+<-5E33qUO@dHd6ke@D>Vg4 zBbJ^am`XO|a=t=_LB{AQPp|g3tWW`C&b?`Bi%gAERMr z(^xjLB~!!LWOy&j``T3ZfR6a@&-x@dZz4%lNsz;In;Zq#f>skz@godw;>n;S3QrWSA-)nvzg4ZJyl3XG2nb%OeVpfI*fY$ip6(3U?zsn`LA&KR z5pGEKi1G|%*?|K^<^G)P>4Tq_U?;lks9xxNL4Y15l_wN=BWPi+(FV=vVY7!p{zHS9 zBwFs9-_j8Skr6HmYM!h;hA{4MsN+3U1^}H1?M*z^x+tygFP!ugRdnz;hngV$E;;5@ zD_PKKW)9R{Shy!57%`|pw{b$yJYE10&?VhR zcA%`Ezs#BlCjGaEfvrDr{e0A=v0VpLv4#eM#KNQ<^Fmq_dq}d;-j{8W49b?NLqtLj zsI)GlBUPmDQylxn*|rbHZM(9`1RlXdbQ^Vw)X*nFI!P4l{K8Sd4an@I_er3zHdDAs zIYBG$UiyTxc~ULY9*{;m8e2X65|s})YZ*)Vqzbx6k;Xy`HMuh=G-ojx>-YG`%`jsJ zBRFS$g!Vf)iP!4xE1Aa7-}Xn1+fnM!mmvEl2nejpjmvwllsM~tA5csNM!)u~Qrb&~ z5oaJl;yMNYNG7mV7TJr?h~w&F@RArw?iRSlF|QAu6+D#PIZ7|QVC$lUG|fF7N5`o0 zIPKl)eHN~68wfmGcR z^p>AZKqJ9!r!xOeje&yiWCH9kA&ME=`>CCtTCZmk_N>nx#ibv}OY47SXQQzRRwL8!av}d*GG4sH*pYp1@2VCI{&}u1rwr&7AZqp+)BkUci=c?S5htULk z2u?{jX+?c=3D&KLRuYi2-L{9=P+^e;x}Tg37E52ICP41IIo9$)i!dy8q^$d#1k=-b z86e9*By3=&n^1B14W!|F_~M$q<2=-?2ode(J7ah+R_cRuDp<<)LcYO4MR&=_-T{&r z^se3i2JDj@!-8-jrUq+3Kn?dTZGK?aiPhZnD0gzsov7A!Q*+@~msDnA7#p8eRMnsA zQ6|gkPlEYXf@8{gicz-YH5VQ+rZMga3G}3(Fg{HS$Y3w}@W6n555e>BMyzJU1HNZF zvVFr$I_?<{9AM;Cai;PeBSZT99`Y?c*A&c~IKg|-;wS-IoYfD2!^;>5Fa|6mXe(^Y zo~hDcqZ$I;sZk|@-p)Z$iy#7SNk}c|aA3!^e}NcNAK6j9HB_@FEMOvl%y`BxZnIEk zWM`IIB9qjWklUfvB0`n=NQ*1Xe&0*PkOJ!*E}?$rAW=&@?nL}a@>9z@^sMof7~U9R zO7EOOj<%b>Q<-a7-U7}||igy``)Tek?8yq;O zVZkczfnJApb6=_({&%G8qII5xe6;jxFSGNa1H<_U z8&SXjCsE(San46}Cw-{KAUhTuz3~NBgar%tst__NpD`f2P>VcpVJYTOt8zEj%4K;PKJ z-d;ps^MF?Xb7(+xT)Fb#Z+kxc$ZciG_Mj$x*+2LR+6%jwia`gC`>RzN zxf*R+M38hK@;_KRP%bagc>H>4vs<7OwnTbf}?r%iVHV=uve46pTK=e#0Cc zEKVvD{g`;3YvBqw(mirN=(zxk(F(bBnrzxa6;PaCuC+S%|8fJ`;Z_kkxcS-YV)qNf zE{>II%#dClFU4Y7`-6JSN6D+?qkXB`|3{SlA*`4qHjKz!`E%xC8`~I$Fwy9g5{pb4 zeeAt#eXSaZXOM2vScoufdbT2yW?y_pRVfjDDuCxi_|VW8-y-L4G+S7yT7>lPx@3UeJp{>#3_dw zR7UC4sIc)x25Y0%U-?VHfBY=y*2E1rjo=K9W;G8pfInSo6afNW{`!KbxUzxl1KPqY zgz%!({XPvKa%du`cIw`zYcUw6big zdpF>W^1uybg2;w8%$@ln#fgVdM>{M9(PcuMStK6peuARx6uWgnUxMct7c<(E_R0|? zJhBA(_i%lNR3$}f*F)d%>{6vS_v{kC+eJLsV_Te&50&Gq?G3KO@T`~~udWsj12%K7 zk6*4itK>Ivv;@h72TA5M|6y1UtBsPp{6Hq%H86z~h)*e==7YkCAm8X?=sAXB@q8OX z3{t`kJfO{5E>vPKO+p@6kwZdP|j z5SvfoIRn&M)f19cI-wB5ubz{pD8&-j_x4=_8E#?UG^l3!@!+r&dtlyHG!Oh3MNso;W_E5Hc#o@8xxI$eMdGbr)?6D5I zsD3(v7cwC<7z!k(-*k|wuJMM9U7feLys9^1Z^i9)YlZ5F332PXA&%^PyB+5mF2aJe zOLylp+Rk-^h;o`fj^5)AUt1UOecr0f>=7egr)zA z*Py*0?>cpEAGM=*K7N!LUIJu*-k{~j80bVf1*T6ATV5;x^{AzmUcdWooU0-rz#1UX zp%=-9M%`Z7Ca$6F!H&R@>9Og(=Xb8D0R0cfNA{@ztN6mYjd=2P1o%#z1sY2YBY4L{ z(JdWmQOH@)7Kk4Du{ZB|X2!w+088EWADPB@^aJ1kc+acrew6uKdBb@qje!QHsd1e6 zT4C>?2#w6Z`OO z$r^S4Y>AkNIFNsHhh4}AB@S#6s%Uj|mkD_XApUT&6E!_UBS(445Fw?LyHkm&0E1r2 z8~Q@K3`O@2hGoxQ{;zR7%GJDhKWS4=7i@X^E+3k9=U2AE8T!{^&PP!J9$TTw#aAI& zS0s zd&W9UCcdQ?PCdOds-7^I3(9rs0TlEZr@~WbJ~W;dA}UJWeQIY?n()9NQn6%y z3P6!3_>D{pmLiA=LJdtZ{3l%3*!z1)>r5OXhH&`Ae(37&*ecU6+zpd?|Hu)N>R;<0 zhMY|E9r8+{v0nXuTAnpqvha~$rlr4<1%|rj>c9gPHNEJcrem|-uBXtuo*jt}x^e3a zn0T@iPFH&j8bnRlAruMEN4zHJaIj9V_X`Tj!pqb|-(4vVe8zMTlq-7u>35Doe&L@- zAYQ{2Pmtxl{ScbsJ_Z)AlKQwB-vFIM0FP{BD6-8C-i-v9 zm;9vSMqO$`rvmxOzz`=Z>XjWtPoUc1>y!Jbu;t*zV#NQ5t?(PNd^^C-v}wU7VdaTs zz{Cqz{8@iQTxFDTx1ONpXZ+3+7lu@9pt32Yqm)yPlUsbnXElKO;sna`*uwApy2>g3$Bmt)t6Si>028-h-39*HEKi_R}EwN-~sDU zM@Z2<(?;6LlhMk3zX=X);>2*xIr?eOgY9`(kY&_GSK_tz3Ex)7-G)3sZDWrVTzO7x0SytDgtIC>Q^ z{C+;1syPP>SX|c*Y{sW6>UQ*40A8LO65{^wGl4WDdC7Tjp-P{SME6mu8yL_bG11Ud zSxT>Rn%Ov#-oxl6=NvuOg%aW+fn`snEOXH2u8AHv_GW~o4;GKC2%q@9hMan6WtPxO zLO)Lv->HQk{)0J=(0Vj`jW})wua{Ii5TzR{yswA2ulhW}JEy#L(_<=vGC-e@PYjrp z+L`Ot!GXm=UYw$3sPEd~&>AxUt*e2WuX-Kq01NT@uz{{@&QfVLnBfDk!UB{Io*{`D z3iGM^9;UnHXq^A;oC zJ@|W!Kh|0H&sAx5ui=e+A{rRiAKV=;X$Bhox);bJLiLWvjsJ(Ob^SGX21PEXbskm! zw7GnE%bboZ`}p`RbFrAY|F(qqFXyE*NvyyH{?0|X!WI9KX5c34TJcAjXZmmo!!8Wr z9)}0u|GHQlH4K;E-;XEKoQ$=tVbQSShm61s%B}h3cAN}A=0x&LyM>v{zMeNWN3zb+ zNmU&07olLUB{jmOGvBj#NUlco%>|fZtg)_t$K>co@aYjF78?GWar!XLsQzV&yI8a_ z4M?7#O{|vNuhWNYVCN`;?BhODwqotU9Y& zsQU(H?|Tz%FS$36Fgft#-HGHujlh;eLk^__O+wq9JoN(PJ*YT<+djZ8aB>*&MN0kW zIjWN)^i#E!Rv7O?;6?$B?s}Nzu_JiE0dk^((#1;K`WqLA>epI`lsfR6p7t|4(asDx z7^8-}VaVe$l0Z0zwZ0RHY&Yl;9crxp$UvG<-=b#Nv!Zt^?-ArfaR7HY+N^s|rBHqa!zo6D>WZq99 zPT`ub(zi+B8m_ZD-eM1keVzrM*O!OcAbNrrun_*O-Lc)5Q7$Sh8DUmgawi8Z1dGnF z^=MSDdASF;j^6ydw++QOJFL1kPJ~T1*n^H2AqlLRp%;(urb*I;>m|V(bnU22lS8kS zyNAG0xw?1y_`{HP-Uv>i&q#d?Xl(4rNY?M`olj}hzX1<&_OLG17xw19M#nsZLy9Q< zt{!BGTw~=ePs01ffV+G^%@01ov+rk<)gVcDPrP9hk}VRF=0BR%3MkG4OGE_OGV{a$ zo89O>FiNAh-vJZ-re1?*wW7B1o57<}-b&E6F#)Y1@*6cY{tnDx36CklT{U>Q^ElVq z4D3x|emR@qQA6yUPro2UFw|7254*NFBA0={_NMgjApgN=s7H75(40pqVY~CzXG&b~ z6UT?m-A9`KP=Pj)BzX}y-HfQ+Uu!H=|}qte!$CSy(> z^w}w~|Hl3Qk!(1oO!z_cx~kj(Z#T7F?@iPRS+6AN7{~*tOWQa5&v+8H8X*>97#~k4 z7?2QdC}o0Bg0h(s9D8^HMpS$2CWggKR+s~2ihFf3nK+rwY=5xo+chjc{he@(xxaV> zEIsg3y*1;ikz0YHgov2(>qX)H_uO321`zkMv8;woFm8?ngu^My)66H{L}X!WC1zkV zV1lb*zA!+~`27fZVOM^L!d~awv&b^l#e@15!TJO>0QfOCND{q;N4)jHVETM5ERBig zSS0UQsK$rdvjB;L9O+4>!#td6bkSWWA2;+v5m>f4GD?JwYjhaX*!ZWzJz1(!Y{ zQl$QW#O$|{#-4}wlIcGu2B05hV0YP@mxr1cVSU$k{LXcsiS}X79cOj0|JdHqnl-1_ ztXNdqx9guv?>yiIl#+WG_7Li>+OAQIun!~Teur{t_85qxY?UZ+B4(PtKngMSgGV3v z92H$F+9iDr3!={WlVqyRSxqd$o_)%fQ=yxYwX*FIt}X?Qw;8=1qM>JsMS24WY4AtG z2m_hl?#{gXqCQ0iA_TdHgnHw8#Uy=kr$2*25}Um4bvW}Wu1kXDiHkYdgv=`}tGFLG zs3L(bxZgZ(5)5Lg_jdTn;}R99W8!tg0F5IertEAlTzWq+d`9nObDz?Nglh7Gba-hx zianci%4hYGKs-ET%Jkl&Keaq6Q;k@aFNikhTP)|^!b0%xz`%P)XRP0#sJF82fVBxX zdKE%9Foz|o{u@)(a-bKC$ykOu7zl(*dEXyCtnZ(_^N$wB9yleH?P+fFE8d30<0vah zq`k>&uM}wW9V)QTcoePIvs0H|Tg*MYq4yVH6p7@3BdA_{I{JSBMQcy(nlHBk=&aLA z8e! z$?egjXV?y>btE!iMZ?upTzXKbOu+NQThvlxa8v$g2|2KaWJr_1M6tMtM2y}p9T{k% zqD4K#@$qBTNa5gtFPVUv31`Mb$!PXy0LN*SvouiYR;hH1=@cGEz3QO;ON5Nu=k&*# z)WYh3rcY+rrTX^X!W%Z=oWBBIE@pP87sct%>s4!)8cEoGM-nLX{@RJFe`-#Ka>w+s zJJuO}0_&%6e>_&X5J1{F`3;G~A0)zxF%C>iz`z>A3Gi>%sMD=>(cfK&{Y%b14sMg7 z{VI|9xNTzlcLe$ah`HLwNzjST@QPm>|uQrv^ z=+VU2yrB^UfG&*{nf7U8=7f%Ak;nO`FAmt4`TLx{6+i~*L?%A*U6(7Vz}2`aTt8dh z2h+90;9UlN-yras8Ig82OSNPDPRI2+Xu&z7iE{Z1a`P@`0k4@GCwADKyA>MXOce;_ zwq)>qPapd*Hv@@Ld&W!KXHy}W8;H!(vutulg+P6|?*aI*7N9iV*#3+#vOY%XGY3(5 z3?GVihqD9VoduYwj%1rNa1Ts%)@=Jvh<#)G?{=`7byqcn)kpelVZwr@8vXr-I`kXimc~xgmpDzo#-S9-?+|nbh5%r_`MapW( zaruc9rbo`yT_ZNX-S0qN?YIQ4%YYOPQPkD0d(Xi$Y68!+DZ6}VpQopM9K8R&_l9er zp~Iv=zCT$tqD=6)!=`UX&Uu+JR>R}X7wd`pKe0mi@k!kO9!i@d#(@V4E+qRC6wzSZ zh7Pg&&w?CPP95lgG@Qo;hvOAJ*KR&UNt*fFMW9BPU5~B$JvPw!m1wMByZ#b^ql!Ir zmkwE-1-}Wys)V)#Dyh`vhL}<Oe6W-4L~@LAS{fE;C@F z)}h>=#F2Nv)yFW+7+(f-jsY;-@u(BvOGA))=Pp#IDYp)!TRs#hc04VT(BgrAYthZN zVMFyE*clj#hmV!zXK7qU`KG@S)q%&jD>i@%u_#cZF^Ln|yFS-Yo#s|k|Ap=7CK&UY z`GRIs%Bfbwjnmp}Pp;aw2O<N&qP)G+l^lw*0KLkI?cpa2t0O(}F3k1()-P;#fY?_ePvN9H9j z+mpS>=pzgZSFaLkQw(_jl?MJmu4nR2=rn9$Zx~rGaguREl>M!SP_2XSPdEgAb{!yg zfovM5Cp=0x33bvS;zorxpTI$t9*5H!#3isX56p@9oB^RUK8n0JULsr#FkxDVZvn^Y zI&FU#fg&9^8q~E$E-S`l&(Iz9CFKGS39QXzyb(&KkLe)U(VT{E_l97VCRf#d{LE!2dW}1nh(<31fP63$o zq*4S~Y+#h?U|5T`@H0JAQ$kK}=y3vLgF>8Z5`%Sx(0Z&q2yo0mRQlQRTda4u=jnv~ z93C+P+|cd^Cns=BuXkHS)fCLE(F3KqcH;#&EG?47(W9I`5(ZC&+EvXq8!6;GxdqD2oNs;dJzhw199(b7!J0{siC3|+QtyeDnstaN`UAAo_xTtG zH5tx$NzZ8y%n&g{^ZeTIW5f7;#sx$;_|D0Ic|dV*fEd`n2IEzrx-)VhGsR9vj^aM> zaT}KQ<5&O(g*l8nB;@Q{bEc)3&Db&oNToJi zf7lscP80?NKEfg~1WFtQ zNKA|n`)(lV%tU%n$kA|J)1x-$LhgZe?8qEkg3q{ru~3J3052`pnW;tGAW z^bBb@YI=G<3NXQe%Wzy<4FOlMJLf;?rR1?C#mM%DWVYT`lT6wv}Ke zKcIkW;@G$j<`b^Tuj4E+f_CPDneE04BHEh{Zhl;kRugW2Um1qnz#)kRX^3e12FIxi z6>e==?*D{Mt$D5Jb8;=#4z@-cvDzuEmEG^DDK{L4MIkD^+bqZVki1D{39(uGC)l?O z4WKwPI)VwCxnaUAbreSxAiI}b!IBG+Hobkby*z>s1{^*WCA8F3W57-XYUl>+F{53_ zADflyz!{(n%l9aE9!;Z>fg2gh6p>8O1lI0iI~p>=yyd5`W*9)^iSTo#6MRz~3lMWS zE!f!W?UC*G46pS`O#rfk3xmkDmIz*$PHmjPbq2ZW6@D;2B1sN^B1~Z)F7yS!hd>! zV=tf7z<=_lM=y)gPU7&y&t{;Gsnr)p@Q~F^ApsmtJKijfS^z288_{pNOJntA29o1!8m)g*w>JoAKZ{ zynl@K7b;(%M-OK4?pP}Uoe~BZ)%H2r4LmRgA5udR_X9~ny1S*}|ASEJ_3!W774IIT z`>$R)ny;P)>_tm5f;i@#EprKZZ@b3<7x;Z{qFMal`~L*z)|g&^2Y+S2y(I#N+G{eW zhFqhNje5q%vq-x3ihO(|z_cUgyg*3t$NRXGOWtx@xX+n}l#_nHRxxqsdPzCNy^HQR zbfyK3|Ee0Ch)?>*-M8LmK5)8Nd@ItlKRnj%L1g;N@`id>8c#q;s5KrOd~f$m;kyP- zKkYR}%E(ER(;EWrf1Es+r|D_{Sp%iOAAdI8Ag56U)d@gePjG-QH@Hyhf-@ECer?uH z^ERPA><3f7ZlUObBtk&{VZx-hSE!y{tO%69=bwb~n(UDlUCMPsQ6IVZpK6ti+>Z$6 zLwR$)`S^Q@gx|e8JrI8rRN39Ekt+Bs{K}~RI1xK;Jmrhsi-6ZmFp`h#6Y{nO`K*uJ zS4YjG=wT$K?|Pv&#c?Dt+F7r`R$jf=L;?k~nVync)x)Rz{r5*aK^t7mhpF|8+OLEP^x=yS`PKZ|P+^>pH;=83X!@wN z4-~^$K-^_!&HYu(2YKXO{G2)5F22nM?;|cg8V3YxvapEdhti$i*Z|BS8-ZzdY&v?~ z)4sDm&y9&7f^u>cYtJQRiDJX|lWHR3TN=j5fL|}3L&S2YT}A`58;-Wxcwo{A z>E%L)Y77M=dTVrm?w^5&b3XEq8tcT?#w4VAMmUgx`w5X+f6ZA+PDBD0tYtg%`lgHm zVny$B9>?^Xe-T!M2f47~5V)GexyX1VDF(xv=JH@DK_tp=OfwO<2NG7robWjqCyNR3 zZ!j@RqH&>uuOC}ki&n1~XfAiba!E1Z!^XV9#HjSi^L_K#-X6WY{*h5XSAOm;&*za} z;$-UuonS&U?enij^7OyY;>X&_wDP+OzX=fkh&vNbeV;V{S(UwFAN}!hx#}BwVu%v~JT) z&R&ZNH?H!Hr2zvBaUPtmt$l3y|K^BdQ8B5zs>k<)b9ll`y;J-xI(vtXH0FW$`3d^L z&~akcA3lh?=gv1$g?MWT>9|g>&}sY~ev7#IU+m#)zAZ!x+sBG0YL}#bkSGEu9Y5>8 z5t?ir?Px)K>gaWNWv97z|IeY(IwXfza9UTm;=Cq6oB~6!N)4=it*SRI6`(7sli6BAPF-`iAZo<|53*onC8V zZ5>Z$-c2udcFt9L5dr%R`MrSH9#29EuN^hDUzkfD{daKJdo0OvzjBu4d}n(M$76Kk zc|ToC#QxZoeAQ5(&3gL=0wt&`s<0QO`u40@dZ33g&RakxhrvX1Q1vj*kYd|WvkdGV z_fa7{816xfM?f?o33=aB<}T46PYp77&=Xdl39863wL?>-7POUYdfpVG@Z0>v4q_UJVZsgIKoiAK$;%wnf^5fx+&+=J+uv1c zsT&6-jMdbK;k?;)>(9lNJ{gE|fGWXlv!#y+3cbUH+S$OCWTIO3l5q}YcTFvXseoXU zRSBpWKYbAq)Vgkx1%1oT>px1s83r$^J7MSPZJfL~CJ_))isLef zC-tl9Pq2gN#!t7Tx@QfC5G>VLX?gJ~za{Rwln(=tl z0~9_yY9{Xlb=p>2)=0_v#1w38~#krEk0`J4s;Ou(GvwGiTL zS>6l~g85?J9>Xyl?=`v8SE4arW29M}g3oJi(mf?8sK(0Uf?~-j}4PdbV|Q5xWCSkytlsKRXap&L_s72dIW6ddX!XTh@9hQ*^gw?@Lb2kYk`K|Yu7{fEtqJD0tET2@(a_B9HdUAQeYoTD@94j$d!+h704>3GWR zZbV-hQsx{pJwO`Ig0NI^{V1=0oFBg*Io|k__Cacd+4==^xv{?f{!7s4RlJm267swf ze0K(lS-TI_(Y>Rda%4n~QAuGl7Y9fb+|pW+T8*YJr`W|kAf z81${?#N9tvBHW5^IdhMj6k|URgRlDR&b^Nv*SAdZDqve2ePX6Y9#dN>*&7=j#G6r| zIOYxu=D5Zo2gz-9SriIer9=)y6tSk;_)xJBmyo>1i?^1TyJ-#(Z=l?)-tf0CMrF>P z!lt2P|Es3V1lnt+rQtBd0(Li4BR!u=A)|luO8m7 zLJd5)jrredCTbRD?>q)@fmTu;Ljjc6(9`;NruO zIO1at@u*D(GE+-*zPK-9(yjv~Zh|9`KD+!IWwsVeio@|aTqN_Z#+o(Ts>yLtW zDM%g=W}o!>2`tlWmKx1ub)a!dlWWl@n^sGG3b1=wUxc!1=LBFulb+oRCtLx z4xcz__W4!I6S4BN$g0+N1_`lE(2=;Af{KG&n{A3Pf}FE^z!0|+Lhf|U(DzUHTL$fR z|zA)1^$88yhO*9hlL>XyyVA3bO`!z*dD=;!P^f`rxn-BUo z6#mCJ?k>w!tiEvL7&YVStFq9o7*H*f4QD4u-e!%riV1F%?F2O>KpiH7l_D(AEd)45 zxM0fz;XrG25|?^r;Rj?;)h5u)rU`y@e=ZGb@oygJEAIeQMfAJ=QM)xEi;pApZ+Bj| zrOmk&d~~W4V~s!VPmx!RRP3qwfcL|}MK#y2O@jD8w*Bjvwo3=z!|BZRFDANZ2H}$) zH{ctMG?Upr7@q`g+Ysh9lH#PQ`PhD&O@OQyb;oVI1TYmY4(in1wS0Qlt2`m~q9D>_ zd!0;FS%4NEo7c_|&QK(j$niBC?fm|JsKWUJ)YWll{drq+0*T)Af8jFfQgR9f7J2h5 zHu{rPyut)|5_)l&c-z)d06V$~YKloa0C&rn{Tj1EvRdvyDII)tcH{4Lh-CTQfZLGB z8Wk4{9zP2?8*%n$xb{Kwgx({#t$bqlsE@>yY;BBVbbI9EG#l-!yuO4$xE*1sVS+p7vF4z<#A zh{n{7tQB_cqBvbEc6(BE5-=&S0@3@h7oLyULq&AQt*v=M9!L|EWOxCDAuPoxUQmb6 zyX;V3`!f{9l&m?mPji%rCFd?AC$AMdCs%s`Hhe3vXv$&T`ZU6P&ihl3UR?Ms$s5qJ z#PIJ9(#BtD?EJDPLHxbyfs?(~ysI)E=nRSU$<_}$+REWXylRZf!Dn&U8l9$OFM;}| zIu)IVdC*up5<)imu+#BhNqL1h(8qV^AzUK+toiUGa$*%cO&B?WdZ1s#n&I*8Wl;}- zf#DJaN1V<%^mBizTeTa%7{#l##f2~WNR2bm`qV-A082JjiV2QKRPABDce zw^p=wZHGo)#lhX`dgf*Zc(QQHg~EtxjaRSslr3-1ZV>)TxCuQXf$~{W)^^jHF9(%9 zMuD&Y!}kNt+cM`I4;d=d>rZ@QkckT|LH4mpVio~&;z2jMe3?z`%0`ohDFNgtK`%hi z5C0(WNn?^Oe7+6qZNiVWoo5Y6?Z$dmSr$&!^}+4e!htqgWwP`TZAWU4;uAx$Xs|yq50%Da z37~nMmqu#k#9t4FTzUp<45Utry9}f_@hgXBGctxXtB1nQkOd>_e zl5ELqdB^t7=&X0WYoDF<@^H_bnK`q2)?SZiW^K!ogMwvBmPASv#ehH(AVMQ{1D(6N zat^nuZch8@Pv9RkfU0}H@ArG(=V2NE2h7eYNG9MtRib=W%o5=SYk*PX$@UpqwsuRM z$SRJp3~0e@0hBMeap3S@+?yV{6?G<2Hy)V+)o*zoU>6xb?usUnCnw#95T_7HCL-*vbW1&_)ZK#s!|!Hli{rE^ zZ`N>NS?$FN-FAETGeKKJxo!rZ!NoNG9lTLFNEL5HWv>9cpLD`Wsk837z|IaH%uq zupLq{Mt=;F%9}y7Yo=>=y7fb3b57JPvA1v+haKy=syn+3m%&C#v-A2U-fe*7Fx46}3H=^)A7N~hb0@&@rKFm1@Tp4V>ur}^XGu4+6zS~&8aGk232|0e#g@p%^(&8-(YOQAJFl%Y@E09#*IMyx_Pbh_}Y| zme3fVXfMzaHfaw}+damHX)4#kI)07nB6ghI58~Q+yG!V_hkqM)^y5ClN3)FfRE&7X zk7v=4CqnO?7QsSy&?+LJp{VfXFytu{{T<$byKr=)AwjKWDc6PAbwKa)!hOX&rRYr# z0IKZ!G^%^y?>Fti0ma`)V09D}o6t}@;}*LFFl2{7LEY^_^xhXUUo*mbQ~GaCm85wu zsSv@l1@RO?b=+*_je-aB%xlngBq zWuwF4eW6rugnc9~QqqhC+diSCBiOKGf@zSpD$RloU=LvWxpwCte?$ok#PLp%#Pe#D z6DH`HBGRQES6G$56(y=0c0ux>vrl{O08e)+VW&JWLrc5OaTrorPYQ5I73-)%SMsA~ zBb9~ND7@(kVVz#moU{sE&SuYHc5m3jbo^G^aCg9c9Y*QP!;fAiO*7wVyZtx;F#|BH zCkbZ<)r97aiYJ_R+c;`ca1d&^1|zWO*8?ia3Nyg)f%G$;PDyXa8V&-KItZBG^e(`* zg~WMx1!eI$9(Hr?0CqYQx`$wLe}wmV>vOiHV=Z~#u`qj!m4S`mknYQ%d212T4&dmm;)PheFj{z8j1POjNmqT-=8&e_{ ztQX~Nn0K3gK0H8#oK1xAB^ra8MI7s?6fGw`YMZUYek=jhKm_={o@|Wc5DN9Ln5bE| zDUgUE4cT#NLLcZ0>j6m#2f$qw>Wb2|c$PFQaI6@^^eFF|6M0#|tU4_RQ5@Ni>`nu5 zWJlabT%(>yXj@SCaV1uA6r!i7o>L+X4MEyGISqjZGIO@(^9)B*bS!2g$H8Xk|M*$9 zv-U>IySc!xGP|VS{Cx+oxq|Ss-y^8{AA+Vh=UXvm=-Bvj@d!S6P=9?a67SbM0M4T4wxdSG|n3UgaY)!Uvth^hur0{ z!xd?C>}>*RpEAd{Le8mgw#l1hbr@~8*sNM=75Kx{_I0UWCP7_+k-st^Z4TY=!nu}! zfjP4nJYgTOB_blMw}=qb+kW&{_Rwc^FTpb;DlR`x>G8gkgFTNsU1hKeyic>C+?;Y} zYuXbrRG(y%iWCnN`g+>E-nS^$9PNe1Vi7`n#^Fl+_rHh2!AgktbhhaK*A53$oDloV zt?n7QMp)6G5U71Kx!rm~w@;8+MUo~i8Yxnv%<{Y9WcBaV6U%eF;N3%_1y;X&mTddY z*6KKPlf(YGPaf-h%_pldRqz|uAf|gIkI-g3M&~vl!_wk}0lPFPcdZuixKNW+U^Qzx z<|brawC{d=GIL|WJk<+~kwNjkYj825hNT2MqEGy9pug`t9`=-W^{c&nDhZa;?onVAR7ynGvaRjhZTcDPU0TylGO@Bc2&Yx{2g?vatIO|*Ni zubZI-yv}d0OnI#lUm~biau@&2{|e$yGPDQfjU;s;Uy2DAZo3%&>u0~w z0^x{r_Gp<5y!!l)7Z6fA$sHcNB%%+?-}dhP=4T(=Tzkj|s?KokXB7)cigsCdt3eXoW}L|1&FLbVkwUW_?nYMuwIq z-Cy0BcfiFPO#GVeL~$u(Z%Cc^BU7E@1p=ZzaAo5?+sSUG;>l|MLXPhwd(x&xdsDR-+;u z{R;52w#mMT^x;hlnNM#dyvP~na5x~(aox(`{+ADM zWzP44^WK-3=BtLI@6AMye;*vmF2upG>%;{6RV@52=mp2W9yuGnx`f=SDrEE9$9G29 zJ0o`@!`6p*pXG7z)St|LTI{PSr_i!z-cHH$QBlm5&Q_F<(BKel*8SYIOySKN=hZa> zd2lq`1W)Dq#EW)x)T(>6CnB?hm!h#Tz@K5CKJUgZspt+@Ei;}3RCsdKb0QtU`9T!-V)G`89ck@OH$N)UzSr}uw|hM-m$h?qHf-&M5$9#2^P9+ztDVDD!k!xIGrIhr^TX!4Ix+s`s3)`EIocko zzC|PH-!WQ$;#Ttz`fa#Adi8gGecaN`1Obm?!c%J61@^)vYTqD(LSa;yMKl;|bv=m* zps?HV8Sk`-eh~x@%>7%!+1n9hRgFYqbB-O_hFf4mSoC@N%<0qu_MIj1)`5 zufc}exT*VXM;@<0IsF$?8@u=VzE9%V7a&mLmFG?SXOU3UP1g|aI$r!c`T1T+pl%-- z{j{cnl}0_?ASde8GM-P5g_6tD z_k{MNZU!HMs$4ZN=JbY>yQ=9Gid`;=6O)Id4lUTF&smLT`!D}1>NCZV&@4L)(#3{T zvw`HhVsWaq7G>ktvDcB-h-|)MvcIGL8~`(W?(){5h5<|44Fygd$X>7LhIXes(rx$)hMoA~{k3BvxK4#j3 zHVbI0InyPb0R`mjoEg#g_662l5e6f;?irTI`AZr5dM&K?o*rKqaxR>;N}9e1t>xA z&`N0%>OR0aX~*lt{n0ql>Av>#pUPzMp0aCdsNb~=_VS6vo%)~Jp*yos?MvkaGI~mh z5A5UiWX%bk_{xr_Bh+K?ZtF~|Ug>`Tub;mS5P@re~98~g64ve2=Y~1sV!<~zhQso>eO&3##;?c=?pS%+U>uy zQ!QLx+WeRMxVOOUc$sFEQs!B)89@N~I@Yy@jy-m{tot5m zQuf(o&^3z`#f$0Rg0R6(uR~cP147dMz+kN1dkUSaL{qmi_k#HR{I1zom&~P>&>#Nt z!|3hs?i_WHhqK1P&TXyg`q?$9{yrE5BSQ5;$JabjTm##dJgWvAxRyL7-YKgtziVR) z;Y90p|2GM=qh)_U(YQJfxz~8#cHf;?rkR#IlEOR!IK!#BY}_zhPPOSQa@710tXyutRq2o zdXRM~;jzJK!wWGs?=f_jBc-W373{_r3|m1%F_*;h#*k@&tA+Q}n&ILzaRL(J9`Q6y zHwmPR2ZN)b!kE?oP$j8P+JstV`vD>#W4H_soj!aBetuOVWYFjI~80E`H$zz%5) z?|OTJDtSrU!r-8z;Px3b%e7qu5RKEvn`%$G$9Ox0Xn80Iw*kx;Oj)HShU5S-Sse;7 zfrz){Y2|-?t+l%@4OO6l$18$;Ft1yFmNFxt2|$4V8J{D{)yqG{z)}jdt1BvA2a#=d z2@5>Zn=w#yCR`O)P%nXx{26_CT*w)=92(NnxI;kItNo<2jq-j!$&(Ez2*HC~8j=D{ zBbb0TC`MEpq57gMsf+|q8hy(X1y?0Tr778Jv4lzGW7`0dXM#*3`6Nu@WG$j^Q3Lk| z6$kG=sbyJ@R?ehGZ&W%Ph&}D)Lt1=!H2?(5|uW&JzO&Lq;C|f!8VyutscXB zfJ`IA;VrHZkQBq?4Ak=S3agZo&fE6ZyDHTgpzOgUSEeyo3oYIs_vI_3IEi|E9O}Vw zqj^5{no9Qf6#x+29bZ8V%J4WVqW?OCNb>Wu{C; z9Wy8e)}oNdXf`Zv3+lFvWj~b~;_H)J8*B`jZOJqU|YIUf%h_nGLvqJ?Ttz=}rpp%q=H{If1Fy6Cf$Z8IN{ zdghIlJ&<5^jKf^QWC)&nG&R`wDv2&SLzdfX{>0s&GSx&+lV_{>5EyM#BGVyH2m*a3 zCK%jES?f)6f4mf{F`)^q7PLyQy0C$jQ6{dEGCzK7kf8&oWf0cRjt&t+6I68U!6=tI z&>3}``uMpfmBB(|l^la@0g<^09eMPA*`WOQL<+P_@g4tayH%+^)$arBWjbgSX6cVz z;)8pB{F(zU-rkm|YHIYzrwa*NrSbxikdx%`s^KZ7=T8{E%7#*)59>ob7pP%oVzd5+ z%dgJy>qmBijdV~RZi=H^@*#tdu5Ob}em`jiE9z(Ws;$3+D#06%??)=*S=M25=RXcN zmaN0Ehus2aBtk}3c%gIaGcBXx8z31P?P{gJHIOTI$3ylx7c=qCQ=T;3+cg4r)h=4a z#{!ubVu(k5SpT}fqX#bMYywi}JQ@l6$sMxffwW~4TwNIeXjRJV*Z2NeATmxcChWM_ zR(F(lzNRtN2Zi`U3=4&S$b7Z_$k%q__Tn;Gq~2~OSG+Sx2+RP#lN*vAI2e;4f}Ub! zr567{R-x32Mh*eUeguCH5|V$r;%ZR9tvzH%n83nnJ?4l5|1azNz~cwKqgA_Y8 zi?ok0SQjXFN!0EcL+++hqB2?+xa zFJ2}wns>DlFxl<L!G4VYeB(?Q%YfS*P|1YIM7rOP?;2xhUAnAg62nK>fs#>T}qT z`?&m-qohi3d^ow@a2gY`zk}fmsA3U~=RnHFJ3*|j3v^^9uJ}P?*FHBE{v?54cQFJL zYlC#!0JNZb+`){h1-t?em9cJ4$d#r$vQF_qf?dU zu$3dLm$BepM`O2UBMrkMRrc{i2w8JOCRP4IWJMMpZ0k3)b$r}7VrZi) zNqOTULUktS@|UY8jL}h0v6PM=U)X>LCtto7e$XhAXt}l2+51quirhKA`AY@9Hw|o* zoU*!;&MtHJkKHDgz-962e|*!n zo`>R8U<+NSVZ$u@5;iP}4+9T#U~l~I*u~Boh;^K>gTId+cz;@$UNxq|EJIY^l9R@k z&PG+x8M%p~t>DcEi;m(nZ^a;HjTOrM;3~4f*7XIHe;peLFUDiJ2&%&KIkoi?f!S9V zv(Yey73ww5)K@9WX#%^q4tYB;JYi=K7ULB`jY!D6d$kL>?K#f$pkqUmmOrfQ%pvvg zRH0S9cDfm^MePuEX;L?S*MPO|6nf+>S6Es}czI?tCVh?>|2dF-vXiMX{==o(17Jbx zl(4%3eLrk+z)0!R_K+CPbrZE>uZl(TAAkwo`xD|Ta77UtNx1cZ4!b0Boxtw+GS}A^ z8N2TIZc0g{O9VIW@;Ka%zPvu?=?_HK-|R`rP2wDI|;!8)*tr=+RMb_m5l z58>a^bQfjcRtl2<->7K`NS?LGpg$SbqF#d;QpC?}yf0Z1afZ~b{oO7l{B%QLkEmeBht+=t1mGdX(rWPi>P@Y!V@W#FnmxmA#MBJDwr<)fY)@JXDr zbqy@e!ynRa*FrpqF$UjR_6M)hWDPq)kNF;)?8^{vBHa->lUi@Y2>3k(7zM9z8-XI# z17J^_Yw0HJ-9~#+x6*^eXRy|m&5($*?G4_9%4-8(x6DxY76RLZ&N=?&()5tlMa4-W z0gATCASw)2&%Xf&`deZSX`3vcF$PHDM4|gT1p9E5Zu}2hi$?mjokRodEdyPaO1-)- z^m#E#ZNQU-+O~C-*?aEc-Hx`+-;^POI+=IZgY4Y|ED~+VZI}x6B)nb$jYU^kWrOfe zul+4PT0t8$fYk&3)8Qg_hLoBjMdRqg+-B<`@5nRKfgkc5} zVcTakI1ppFgV`?QP9VGD*yzTf=bipT9uQmgE<`$<1aZ?=d;L_X1Lhx9DuZL4azL8q z^tchzm$^hl%?=StYPwq++xmTQ3qo-Tks>_+W~AG}$tHuGJsf^vI zoQBRWOsMyN%?N?fOPEM8iY#vL#-5IJ|j9XPbpA# zD)+KHA{BOv%x18)#wA;{Jblhfy8mWmlWG>bnx z54gr!>m3+F0mUMaC|}<9LexZR-=M_V`q~8(a3$ zwsRBM_db-5L|^hy!e@<@cIMHC3dK*V`8N>2yCi?^Xw&!3v4%mZU}Z1)ecp48fX|?U z)}Zb}TTLl0ryvF0Zsok8vRyrL(l zlYn8wE#0ZS#vN6Tx!--d;O)-*!OxAnn6Xdnd9~3u9*yQh#3`XV_q{Fx7lGg+yoc%Ci*y3Ec$RxDy**s%Ql1z?{%<9Zh=6VYW(4 zpza%S#GTkni%)b7LL2n`)RG!<-wqfBNFC~d1^<3WPp@=sX#`V-`IKh*G-{$gMtd^} zX6k}WMCktVH?Q}_!{0TAHjl}_%l%3~)Qb*kaf17qKS#o)KS+RjP%tW;M)^DLzy_K0 zJdgc!MEt1Ym^(hJ8gol`nVK|0UdOdCywT(# zIjmGLd=0Dpqy9P|tb}$0u8K(*wtKoG4B=T*nZh#qO!D^w6l{$xepwIRE%&R22vCf$ zC8gZsyNxe%^W}`YF>`NTel_~%qE60hD@8$?`#sqEF>)j1^c4^>X;!l616T1s$ojkJ zI*p{P#eu&`4yqiUFB3`#Yk-OjR0s|Hv~XFYlTPF2JAdQgB}($*9EZbW@`Q<)?L9ly z8Puwcmt!F)K74D&&aZpt;*`!k0yZ{17R)JD)VEu)C>^~B41%)=-9N9wt=?b1iSk2( zVTP^ZgI{3ioR_4=-&$|X6&p5|dW6coD~XmIwee@FAHmMy)Ep7;!pzpAzZs0zKk6<| zz8J#U2WYwv6?4a6ElBiUjU)F)V*k?7BhX2_0Io_ruyTmg#b_x-LcXBW*|KPy>rAyt z@P_@YR&xh_o8(eu(zJabwNG_8ySSH0h~Q=dxHdQ^-}0-Tq{8dG4UogUvumN!8~}Sk zx4+a!2cw?j@J7b!M^!?yUD}1KkQe?!jA7ZCS@{J#^*)St{pZY!Xm7;a>B8pKGH}jm z`w=njkN0s^MKMl+BlS;urV&+lnuPZ-)q7ksiy`{p8!Zupv3X^ZDn#1ymNG5nGDXF<}lqN+6*f?P$ zI0TY~l&2eJBLb7@dO?~tC;~=+zES$oufw1&fm^rGzo2jrP9yw-11*@hP27Krq2zX` z-~D{wImz60r23Jd>gOSb8mwakl!sO`PjCcL*Ot3P`6^`F!Gps5n7k**cMK>~yMW0i z-ZPdc4QNC%eV#Q@O}FcWW0Kma%vy@|{@p?NS;eD(e|c&xEQNLfeO1im11GjuTFHtP zupsLmo0~g#X_^w;>A?9XaBCPY3--pLc{`S4TW6dv!&{8nJOe>pb}W*(PDbIQM_IC$ zp^W93;a~V$O7L{#WO{G{X;v+XeG5N4!#+In?}xUBHQIQL;gDud9+o%i50~mz*%9`T z26C*?gqlxj>SJ(u0^m!FS$E&~mbkK)4JK}!h#i`e4y9i!jG^R?*_{Esz&N#x+uR^? z`b#o<#ZWfw0+@VU?AK4P%&pg6^v#Gz(bm7N__gJ+e4r^#LDNM%dHnTKP_(*1x~{J% z&1?OCFn;xg{H=m^iTF^`?D}YT>C-2ft7kT|hi?2RA??MN+6}R4FjixY`VHFtZte$s z1`1}~h}#Ms3hg=45612C^gncO)ZTw`8k?DWPMoQ2RhB1oz02?XF&Hi_yj%j+B9 zLCQEisSP|W?@{@plcHZC$3a&wNp@VHzqQ}b{z*Srr^ut&7K4;uv~>poqP~A8hnc4X zE@U=2-1_ZdZrdju+OBlSy*_6afV+FWNgo8124jG8X@g{M+2fw36a1uFD_+Z#w>pef zfgUHqs%XI{maKxC+eDzdwCnFZ^(*a=R5Ivxkk59zun``)91WwD0J^}Rh1{S;JO~(H zUVfwRwnPo@iWbih7Wl58-y3`tp3e`vc19mepi9dgQZ$~kC(B{})E}=0c8SmYOm;AR zxL?kFLS2g9e=N(If1kB2=gEAeYPN5}Xj2vJBmnL*tMES(8{A0pLC+x#v9S3)eDour zk@lh}sVx351%x)0$CB_+0!*9K2px?Br`TamoDUB{7AB!Ewigc96lI>!s&r@oj4GjI zEK2#Gf)GjmyZ;BoZPh?BdH_Z4IbnKYnqK@#>2P}AqKxq0V~gq@BX!QT*e4;dpiz=9 zJ6;?Fsv94PN$5H}d2X2Y8}B)*9je!e6H=@#M#K6CE>MJ3&gajvs^q4i8Cen&5zgTR zJ(y^V1=b|oTb}H6*tCk}Vqys=S#Fo?se~2Wrn~OWUUMn7$HD@5eqkw~YVN1fhiCf{ zD8?R{HVGGp1pW6qPHRH6K(l?!1HgCAiazLrtZ3$@i{z&g7|6VNp_4(Vz@i6Ck{Kfl zt5(SZ3D6A;@dH6G=JxnogtqSj4rM!WumKYJzO2@U?0TS%g*!%1`dmP_d|n9PlVNuQ zYTQuR5=@3mL%xO$&h6w>BbBD>cyHJpVZC@72QtaejlQfhg@g8{ZQ2;9;efelx>i1e z#Bx4-^Nnm|01g+vz6|_aU7O^;bcfRc))(GU#%q?;I^Yid^{fPSussMUfzyZae#)~e zAl;^HCpZbF=CG`%qIsaAj*Zb`bN7ld1i)%CV{!BV-=8pXsGrjkp8;4jI>VDg!_juE zqKR=2Z)k?;BOx`K&JAE{AlWQq;!hFd7@q_!L>$*@m)}B29x!@c9i3{STp&C}`D%ma zP|>EHz^5kEz6H$A;Rf-7@IXb1BcsN&0J>1^Ux>qY(Vh&&DX&v9W)-WO1y}yjY9l~ay{knlC)lNPvN2!NXTh9+1=k8{oJ%zf+#JXc`ddy%6 zwUWCPb9uTG8ZdPo3>^wK2R=3rB2d6RYn(r?qvIqH)=P@96)Tf97LUN-*gZI_sxlQ8 zBJXem|5H-jq=?ecZ6M-g7bFMcN=n%yivb&vQc- zVk99RUOWGA5uh8LdL3R!yGZs?Oy7+_(=F7`cQh!ODDxO#`;LZ@1_0*~f%Pv6;241( zV~kb^l^0#Igg!dg9m=}tDJMT~14TL~wSA2L8gj%l>Hl1uA^qCPv`>tL+wcM%lCNd- z?JmrMK*CjzsQN|l9FZt6d<^)21M#7*?hbt1ZUIJGe1UXJ6>#8}w6_TqPD3C1?e*Z` zy>7TE*p(h=0e^%+mhI?5fh9jv)9JxvAlg4EI^7*sG7BTl?f>-}qv z+&NB_{>@ITpYejpk(o9ps|lEYzDogDUVvDK$^BZ>_+d9o_e(0~q}q@fa!=eA#NnRk z?gN`F@iGs5b7A@avPHq;U$4SABvpRA26-O`M1~D;h${3VCT`x!^EAA`2JTqgZ&})IJGxLSzk~G z2r+x+aA9ywK+3YMB& zHA(rLaBL`qH2cr2zCnlT_nV&}tQEi~K~c$ds(kpTh_5uw-2KYO$Bg;kyW*<1E;<+T zLS+7H*MzLQe~kGlyYO(oZ+^-Y7jIt&)3D)91!m!)jnK`Jz^!q;p*iZPFi??~eEV7x z3H!@+?=oI_V81^;qe3#lGpgRfcP8zW*(k`&Csw0tEGHe$Qu48||F#+p2mnlXcrr|N zQm(oL`vE+gbldG0TgM{SoFFdKrTX@}|KtfcgQSPrQSFiwkIx*jj$W$eiJB3#g^wbW z>K1^DtSXByFxQl7c`Vsmw%DYq{b(=;qH4#Yb5eM)DFQint-p-)8*;ShEpor*g z9n}B|rh=vqr6O@So(%eq4j19dPA3zv@G4Peh7fWZu-Z)U?@4F^ZJhz2eqR79%%JV= z&A~r8WKavB+##r%i-w<%x`VO_VDJ`3cy6Lzb$fJ=9U-Y>#k$d}Mm^?e3Kl%dUmHut zmf?Y(_fh(r+VMJL-2qOJeofrAQ<$5;&me%K)1<^#miw%b;fh%FV5Jw z)HvZFwM~f|=OHAK71&)rGzqHFC-!QshoC)d}h1kR|=PB@L@<01^#HtEx zFuqYAY$RnLXeb}iN&?v)>X^DWV=ikx+L)Oz=5b-Te<~XPdB}R~_eNr_*1Xk{4KUTD z_W+qDnh)>#P|j#_0Ca#SZ)xS?L8f(GqUjt~_Dq1!vUaZD==;LLFbG_!sw;Z~60Tqj zcQ@&-+a*(_U%A6X^-V|zl?F;67eKJYd@202%G_6bn?^~FOQ%F>AvUyq_%%8JjbaCH zbIK`5kKvqIWQ1V&-I@Uke(biP0M@-|SZhmzPFx0$Y_` zVxvxu#>!1peqo_Mm|FxOM`OYAcH=?xe}c#Pm)xw9^sv&#w|)#EC!CB$)@i10+f+J8 zCgJj(iAQSN@cn97HQ(WDkPq{G1HO#ie>57w!!FQo5WjtpmO&61ScJpyb$F$PU#lgZ z0==_2W@Ddll$Q6W5G;7znnT%ftI5t_FKl@vRXYlbji({DzxHesO!bgY8#}QxpC6q#9hYRXN)`VJu}o?BvJ+cY-HARCsDf?Wl!(>1A;pIvQke5a+%b<$MC!Vwm8~a zI`#y4bp_9Ttq0I2;4k%G0i*8u3BT9-M5^%w75s+?UUt7a{B-=v#r9^U>&^ZoekW#J zpLjG9Rkt8Kk0%YyA1%DsX^5WY2lrjUONr|0L`|u+&&kGzxETbgn-Kj=Kl4|&E-IHz zxUrPbb^5RxINy(^>ucQ3Nj%L?uz`?gr!?{G7sl|7Vsj$^wIjyUPW^&=BD?>F`}3`g z`~LFna9jAJcbrNY*gN~~{bSEHgsiXon)hRQ31Hlz8_X@=KYy#Hic_~6klkESQa8ug zdnu+NS`;5D6q7GVIRNWWxb}v3SZVK-E-kQmqUU{CRjK02-BawMSiB2U-|3M?hnc6R zCXQYvI+r{10?Sq=is>}049yw)8Yt+qY?Ovy+5nh>5pVSs{DJalfO)-8&{)4c6U&JDMRT!wJUME}XL5|P}j@uaD6 z)p|2H38dU)ox+MlTdKSJ!OpkEsHd7R)0{(4)7F8%KjN0B%qSVQ{AVC5jcY+%b-Kj~ zpp-;CLqvmvh_jFk1T4dWGG+r?J;ri81Roh5y$#BqW)#bWxg|ujFj-o25Dx-K=-_5? zh-oD$3T%R@uGDT+!r8n=x>RqIAMHcUeo~OPLq3ReDyUWG{15V+*5X3BaSl8|2X!Cn(BcL&{UgSLhv0Y* zq0!}=YzHs#SX1wpH#)6HcsbIyG{_lQ2V(&3saoJLW>wi#&oE)2Y82ojc$Y6)AcN4v zmQ*RHZ$UAY7}y!V1%`{jg6mRS&6amZtk(5F0Gk{_wiCHN2v53*0WKz3Sc`LY;ED-? zt2N{54nqML^CR{+xawCv`x#&>fYy#%)QKIE3_w%(YDaF{#$dqki?XB7S*mgs@9StTq8g7C`A6mW@v35t59+!r;F;CgV&i7Xw(30wMW2os# zghrZ7H_sadnDk;aR?gg+CuFPGKjcReJO+RnX3y^+dCFmt!?F;56m)RRjM5478ZQ#* z?kSQ28fuUdw|p9)LOm{O*I(};s^4`K*&daKC}Hj<6^0}89L`3#@-q|&B-t`G z>pzjGk977R#F1~HP*~0eb3xm)3quweARR2#ShF-SR2(RzPj?gGzC<@ML1(vpI2r(7 zC}xwhetcuW$SUSwm}~>cp*%4u`omUR08H8>l|Vp?R8<1g|JLiP>xv4}sUTovN|W)Z z*#1-YxE`aF>0D3=KKCX97;uP7bU`z#O$Ns62~KeUdCLHi^Y%&!*q!x2v1hyFP%T*W zfOf78TOP>Gh&cL^r`oE=NT=K3$1G8A;S7ao@T{D6D`oO_sUy`Tn1NeKcrYWwl)-rC z?_p$fIwrub)iHGrWgbv$1D?hgcyms!X}Y}q7?to^f$xTWtcqwR0;VEpsGo%zid*g0 zP_p3GUiTXva9+lo5*~nQGY<eC$=5dYEOcF6hbv_KSN;?bCjMy2N>kaGUM`nQB6!fEjlBgC0_Vqr%>xN;83ZMi7$EeVRHS7MA0gTut(^?@P>y75?On@nAEKjy z6Fh0^@EBM*R0u$G%rz&1`YsvVa-`(-)4Zm;2i6l1ArTx`BS8!f2P11hBK3EZSrYJ_ z0aC{`4SwyeW5|JJI(fW9c5~GL$S>I}YIsnO(PBCboLjX65JYpJCSd4#5Pw+J>hUh8 z+a$(=Bp&QH5Eu%`scpt(j0OepBYNN?f_oc9+NhTTLz@Yy24RNPr43F28@3>pkO`=R zI*0}ZYfaUzhQXu|B_!BFf{JdSqb6vwVl-u!akfV{w+n>W!uZ}W-9Zcp_Dzc%!L)fb z1Tx}0W%9P8XOgcVp<++E4=lB`K!BEOU`lPBwL&clX}(d-Ai}dhcIw43fcRxl=%UJ~ zAY@6H2BmCw0gkwl=>y1)iSI!UZ7vq*4k;DFw1i^@17eTp1R*mrAd}Z526Su0_BA^u zA$6D|Yz(sGDC9K;Jp?q7x*chF7!P^SHrMPqK^KWDXivZ)#Ur!~1Y&d(3$yw{2k1-! zm=nbjz#V=c_6rh6vRxe61GWl!5@qF1Ck=H#lVlgHeX>YR8#7X4_`2TfBwWT33}+SP zgHF^ggF9IY7m#fY)1>xh+&0}UiStrBF1w@H5q$lO&!Ln^^AV;wi5(uQd?Sp-H~ z!1;w3z_Gd$9ZC~K=vSDt6|jW@Bl#@3&d!OX679)cDn5V$h=0D4VbU|xtQ$bUQh15{ z->>ME=ARtkcVA8Z4qa#J5&Oo#3tF|Iif zu~$J3qD_smqL|^}{f`+sL_3j>%hk_rC2sd_;ND_zI~8r`EabON8hwnWY3aa*Z(FTz z0TA9HB^aLMmI>g~;S<@wkTzheNAPLK9)D^C*gNJEzh{JYJ8B;iVIDK^hM&Xx>eKr8 zK_{|Wq<;3FR%*i_wmwDafG@VmSnX8Qttu)LPBm1e&LRDu}zkgW2g zdsNSzQ;QoTfeweQJ=(-P%3bxnxFGrouS2=fp%{ zRyl4H9!gx{oyP+A4jMjD{VlesdsT-5voSvfZgW72om6@?lnDE(@s<;8TTK6u@I+LW z*!8s^fcEtx8sY&NZ8~!xm?OBAPGT0&g%ji56+GyQV+lZYnE>7P-~ENyDZZh2Hb%o~ z>Y-b2{gwkMl%IS4duBvh!bf-|kP&CC;O#hY(F@0t(5*Dx9OzC#gYLU@69gSFTSnxM z@Hi+gd4E+eT-o(C4i0EG2VC_`TSkN@!+M3mdc1YbP5uH?*6LG(Dnu(mYQLcqGC6w( z=5dwL(&U&C8krLS*k&d1x(>cMAT(}UG^p4V zmuZSBk#M#M#$+&$gXIo+JY$@%z$|AX$j=ic*u@B8~b&xPMU zCl;yTvfh9^u_AThYCVq z`op*1Kt zf#Qh^&+B162a*H}6s$R4`zDQI7Mm8^Q{=Y6MOPD8;oIHQ;;F@W;qSy^-nL*3F5}pf zlN#fWi!XrokH_yZ}Bl>d6yO%~Ds_+eeBc$pH40KDd zNp_3_oP`<=$#yLa*6`!RUXJjC!{$k7L5M|iyHWoXbyD}jHm!W@6xZ8fisxksO1HWa zS$+KEbA|{pc%*CrCyZJNf7Ev#K4qZ|LYN7IU;$CFdGMppuDtHW>B3RgkMqMQ| zf34Gbm0nZlBmIB1HH$2K>3`>KYZa*gqYw&)oCxFmihh1z=Mvd2@+?1|CA{K})buM@`Jn6#Bj^zZ_ zwIwk7O4V~mM{+2jktwehQKVli)jT^K*Wn0gvMi{fDp-=CX>>Z;`_WICOc@~D#1oGN z_EaIZMns4G+6B)?W_H$Dfc!w4{9%7l|Hx&E2{cCTFy$e9 z@=*d&LcLzD0Nnvud3mtZT;>M@Qn9a1dR91G>~nG8q!?MdY2cD=FKy2PM2w~n)47+x z#%~W*oYX+*U^*9c)YbVqstFc6mzwqExDzeOG!)Lqsc^+OeSw&YHxH-%y=RTWSw0>o zHs{^JO$ZeKB)alVoWWj<$HK(?vbhAuKZufTWSPm*o0akDSa(hyz~Hpmrj=ZYXraoG z$rc>6G;NyQQM7-niO>gO>uPo|)v*d;-UR}TDAYK z^H_-VmGf>@)X_nUu%XBPtItLgY>?bMoGf%z1P|R6LK6+t8D8>&=cGN- z8&``KA0~kc_^PTlpT!YUN3V}XV_ZPJ1#R+sQMnnz-?7!X4}X=kU9Lx7LBZ-g z%eO+|5tP!kN3cuMYI49qnm2OQcvXNRw<|r`Ucxc39ZHFibuPtc~4V@InhiqpO>dGp2rpID=;E@Aa%*r~{5qh+&mZF%M^- z+zEHH!5h_JI1c<=%$<@?QF0F~zoVT2N3#=+JjrBgpqNxD5vZ|Ldm`8fMm>nyX^n?Jx{sdxK6i z{tKj#Y(ugMW*rmO6tPxkHa_J5_6Cmgtn)B3P0r}N1sHPylk)}wW39&ay1{o|RG1zg zU#E}2i9HHC9t5LT?xKu(EdhRl6U*vVbKzqegh{VZ&yz|~ZdpFId(Oz>xX0K)xjKOu zi{V6%Dyct!Cu-I>24$6TB(hqvjj6wE1ZSZ@1SU=fe?WjyVD!wP6B2Rapb* zg$e1-uw}QvkQAYqV*b}Xi0Ds1sXCz8FrmL7NcQP}hld?-e_A{smH200^ZW@Gup`IG zulO894`1dKGd4!X;N0*?7`zVZn_+N5Vw8f0cM`o*aN#6F=J{>?6-Xz%`Ev3hFE%n@@T+-BwkLmc&ptoqap60rn~qgtSnPL}56aRC{-^h{ak#+t_>xnQ-a6H4O@(t(W zROH@Ss7oNE-zQ!DI&>Ml%hO-@DYY9teO@$2an4B49U*uKEAQ!#8?_1cC>bAVFe+2?vJT|i z#^5?x4jwOkDT=wyW9gUR@SPT*b^8v|Y(ny=Iy313wg=9o#Tu6GZpoWP8X?l6K=(J?_@^S zC6W8Z;avu4F8`aX7nYIW2RB~^p>A!1Cmyy|+ zrtlueJG!#m3jrXUmP`2k2MA4roA{LD0-y3a9Q#6=v+jrV`vh9)d48Pe9WQPir^d@V zS*d~~G3x-hL7JL>tfD*>cjPo$FFZdmYN!9a6TQD~SF>*~LHGYhO>xor;lf`>s)Lua zC15j6TTct(yLo=UA1j8K*XGFk4U2$P^+60Ucszl#yNtUjE@vq(wbk$J+?wxxbcZX{ zVz(Bko`&_Wl!qOPkA)l{?Yv91-cp~MbaAFpDr^QmeagHzkn*)wsQVbFrgjV)D$-=G}{{yM7mW+`o1X6$_tki0^TeJn_&% z>XVvtM?a(Ae`9ZWys+sx()5?*w7KHyar*(7B9Te%^y1alhsVb}O`hyA=%Cp(Cixi&EfXh;>W4!*bCDgN!0wS<Kv-Ve>_%2kVHKlbuU$!#oA21w(5F%X7fmUE zC{2V+hI2=85U>_C-RN;H4&0|0+6R~efhsv7oO@+{y@9`EF z1r2?hlPMWPfoBQTF*i=y4h^~y_5ioh_eQ>tq7AiMM+LnEpP*cv!R z*HI6&`(r*h>*Iz^Q?{(jI<-idp%~uvxvtN19LKZgnk|h%%ofoJ0M-n7E=w{3Y$3A8 zkX{5uNMG0N;FTjDjE>55R-;6vyLMT}RO|nBn@U#G$^HG!VK+BREdFBwhgG2lM}L#s$&x;hx4S_YS~4ATYW z6XX9+cM%x}u`r)<0CkZxeb)(4jE!Ib95B=k9u{CL1jL3$WjVE-BeQpM8(ixN%E?mLxOJM4lnWfza z!Fl!l(C~Upm6-iGLKLQ1<1r0DFqal$TwDOF7-9T=)&w+vk@V^*<+Nkd9SVr$h8BQK zUo%EQ`&f4qf;xY9*izyA@z49ekW#wi#4kd};@~QWHc39m47(Av7n@S{6Tsh)#OLe} z4ANEBXe^iJ8<;6jbBGg9PTGwTGArgl@b%zSm)$3$S>L$;kzFT3R{9xQyZP~qL%(>E zwNFdjQ>t%V2+pqR>2g>&?&Au1($yf~HNS<1zJvb-W`sv<_ljj1_ob;}`Rv7|up3_H zAAJlW%ayY|Xz3&6C&Zsy=(kK4Jn|qrYi&EQFddw_(uAxzP7+z>pWx1tiqc#|&Cv)@ z0DPwxt5~+3^qNsC#^ABBgsjw!gD(=}zte&qaES`#ne`(uBm@OZ;+N1HO&3B=byiG% zl?-n0+!&93JA@}LcHmk-E0xdSa;5zL|*X4AS@&+3RPP_^l_-O5e+;7tp&&Yxt@f_OqA6 z&!1xXUV83v&*D(Kl)n0wRB481hm>!ZY7N6V?%j=N$WsW>(;F>t3H=}-ZbI(T+e*KQ zEkm8di^9=tkoY_{oE|~^^xixHQ5J+#P|mTj<<0XT(@R+Q!Ncz_UTw}T=>4D(D}=^E zHo9-C4QazH=5-z1#&jdY79jYhlzwm^aY!>A9l3%)pT`u)uAuxUGKBj@rklr+2CtC^4yNN~id zaV%Ah(y3K=A|xEZH{8?SzHApB;ncdJS=ca(Cg21hx9c!723D(B90g%bk3M9QHWVc& za-SMBW#6fvpkT&6_8Gh~IYQ8mL*{5SvkkX(cxm)rJ4Ps+7JJaZoH)pqAWF99<&g5OA4rcRI5c)G%z+hr34__K^IsZg>bjk6NigAaA3|zS0={0L%Ww#UoUv;p^CUvzXM8CnWR$Ywll+2-( z24A%fZc<#(DA0Yu<);U+zQkdW14~)oJHLsx{;>}L_h3J~R0jG>QZaKj{TYKGTO@Su zB5~%HSK4e;W%)UrE0ykwBo}3^;>hGIbE*TXHV~)*YaHkfYF4Zb{&OhZ{81^5j=&WO zT=~F!e(dCNgpoKtg(g)@Qjf#d@dp*t7RR9=15!KA8HlP#=nncdANktE$sCKZmkoP2 z`J|Me#G1qZwz$!hlSEz`%mh%z?Z5b2$oYJ1u)1(`YJT~7z4&fkjfB2C2lW;NaA=&H zT=w!wGhZFf#;O@`K1%N;^Md8D&g?(f`sQAMohb1(?9*Pf6ds&=%v)n|BV{iJPUrNg z%)!AOarJ|^y!J)adeoeyk=+epEk80UbRU%A%*RH3w>X(Kw#SMtS5saTk-s0e(m@DH zGLkz!8&!zR3}1VAIvhC2B^e!IEYG*!%f(AIH;`w3SbVVd&$^+BMDdTG@nX2_&rS(5 zCVbdTOV-^F5WBqEZZ+Ml>1*J2?@e}|>!6KE;Ox6$NL*U1r84s;4|c8%g8Q|gNcG=8 z|8sxZCfX9d*2cS0e_qI)__~WiCk~(%EnUbKpBbhg=d3!tRzC$7@r*fIwSI_!=XaVK zCw%~#0D6tEE&ZnM{b}Dh0vrJB>cxeYA5--wE2FG-wRYMso%Oj)`0MGH{92k8zmNum z&c9;}IGvR+ZCDV`&1upI`j-Q!%+5cubK^W52{Gbxt-t;JtkRBK6R?4{l7mh7H>TVS z4K*JhZh&U{aTjmb?k<3iC&qdU;)x;bj6xMEUbFs6Xzpv;jK+sII*y*q4zoVXQlDj+ zi6#I;^&Xo<@>#ahUPQkFvbcnPtw%QMoGstr;D3q{~mPP+ne z@x1(rDoywBuk&)V0nxphdS-StK*wO@35=Y`#w7$_G$(C6k@Mh_Qu-u{EI#k}ogfUm zqmZ7KWcyR0hNMH<(y)(51HnBp6hBN=hRh68lg=GZ3c_^7TGqR4T*0_u-yVV_H-g43 zWKodRJ2`@zW}(gvt=P_esvglrik*RFo$#kQa~O$=2S$3>*MYILPRkEmXPExEGYRRU z#wnuO)c{OmfAVggC`O+8!|cwd}ccqARGGB^-5I(ZCkE{ zIJ3t3**(WZ2^|t!NdDfWD2r(}dYyfnw3rO;BqbuDEBiy*t4%J4S4l2j8<&9wYBLE% zt}E}&MYLYQddCHM;u*?91)WPKBzz$q#VBzkCl7|-jiQq7;5c9K9J%eUEbzP%`%l4< zKZQ|<&;5dJjHQiZ&*CZne-o~WSOn&gX2?hfu(>#yJW9@@YvQPH>P#WNlo49 z+G^V*$x=}5RUoYZuFC}7bpIEu{e#oKO2ZJeR$OaEBT6lni>5I^y+hIuhPY(O;&XR9 zbK~Imscgaj2eL^5i+gd(l*%5oqNr-j73uYW(C zo3dE)^Oo4JV+l|X4=xZ|v%nAYsBW4K1a;ea`+f}fESXm;m$gmwHkVG@A!K1)Ftj2F zBJ$&-$${!&iEtdkQQT46B?u^`sk6DatNQFe=|((ijeF8(lvH-h23OW(=o<$d*dQM? zf_Cm0J{_H0c})Y(v2cCmUewu1=)?e?gngo&%E708?Kx7q)yFTNb+-5ZT|R014*{sv zBx<8uX_h@;;ehP-gLY8783~F~bEbVNUm!|mD;9{C?EO{jT#XGb4*Q){k-mfnp~cBa zxyt)rRxO40S$8p$?@dU!U5?~mvMb2DOu2^=GW$X5GQ1zEV_$OZ(8iyJyl_TWyKp8DlE?P+-Ps#@oj-O%f_@Q z3cH6{9FQ_+?mgXF>#hCw4g4^4tCd z%@TL>Q0Cwe2LP8SkqeJnsilaveFR!D_fN?e-?ty&|5kZMo2De12XUW;y|lE_pf-uh z`Mn3HSTVCKEvEfhr}a?6pJ>&HiIlWLbIa!tldtYejYS@!`;V~~xz3$e5!jaD0q*Mk zXDjPl7~6|P(wSFqAnh1HqzGUfKZ4Mqm-qOm&G5Q3nrdS8SBU+OjfV)ZNttyeUKTp)v%WXaDNO(|sQO_(rYLSQaH%fq5*JXnO zn8%K`z<`(ty&L(%)X~o(AP6i)exvKZC0(nPt>OXpd?F2iopPGJH=7aH1nlBEtkW4; zVy9#D|Gjivygd{a5j8=ciV|vvR??aRa2e|<3}IqPo3G&C%{{?pQ!XRlzIvtx{-WAO zYH$OIyum4m`OHhn@G|C5Y{UmisK|+)iwjtCtf<(rP{)JC(Qf`kMCR z#N76*(V60Q5REbUb>-Np1>wAzs=RWpPMmy^NON~;wNs;It|>D^>sg@0J`&B@ARj$U zekE^Ie+3{g5{qo~U`)s7_cJX@m%KlzOPwy(=!1~r**QV&W&a%>6kY$2{ut3uv(TwR zMB`V~F?<8*nVp=R8TS3Ffz_J)+a=~0IY!91N$AE;d5&sek0yQxIo(6ciEQfXh6)eQ zPf~tiaDQh-nXFhWx^~k&QtHC&KM35}isidG1xO4pvop}v#8dC_L(AqCVrs;X>`97FGdjJJhachqxLqpFZ{|H^!cjInd=`MZ!1AaXmL8mg3wu z9iY|3ExYH;G}_zZoA8%CH|}Ss`BU0D#?G7f8MOKeNT*#6PPfRXro!*tx9xX|oF&^i;(u56Q zo&~_wUjO8G{o2nge}YqSd@hpN%L)S{yhMElBkYfD>`3Jm`T^Tl>)9UhJD9W}cg>KU zD=0}u&-Z(O0Z~(BTqz_%7hbel)F5Gijzx40x_1Equ9@I~4A|CMZmYi>P?cz^c9mK> zMx&D^)W&{dAV$BB5}7%|p6pGktSHgg>;CXw%HaVc^or`WiC+pTQ)yp%wKUII5*r6Q zIe&JE3kkpCfJDr}+{*YP{~ONk=Wb`HiW!chr@z5i*+Q-@PT{nboLwlQe%jB{`GClj+DW#ncL zPo>7jyf>Po{gaD*KM2(_{v#NaDK0KIkt^q(bT4T>W@B_#_7FXD1(De1!|g7ZxnFf> zX=9cLliidDf#|^Q>V839_yW+{q-UA6X4g%H_V7*~TJ$$ka&$STi(I3YWr%fju4s20QKV0CVL-!#M=G_Ap z4?kXwUC-C6&dzytk~?TcVS;s`g~hrrmNAkTF0m}D&Wog_!*l5L1K^;b=N){lXI^(Iqg{(A3WUA{fu;Xd-YVT+E-$l>SRkq9klVUA4~tp$EIjurAwt6Yr|BF*`7N*V7vQSlfg)0KV>U1qj)1R3$@ z18y#Nhe<3U9_m*qxdds0Cm6*ob$P3Irdv$;aWy*E zI%CcgDJhl?U2xl?muDlhm00_}XBeS4&g#yFMUJr8Ab3=XY5d{2TlusK>3*4YM&RU* z3>U_nk_&#;6W=77J>8tlwof+mp8NNz9?->;)qZ+hSL(q5C_}8ojA=e}*f_b;aEu0g zA(+(NuXyCPW7Am51kop>%0*P=1hngq>fWTXmS;9ZOms&l*Ta=*JA`pr=gvCQFnDIB zBRCad%z`1`tU`5O#=SqWqDnRA;VcXQc%w2wrGv4rAkV`7chVJ0XNWSC<@ zMhwJApW%NpIIIjw6kOh2rfJo>e*6kyWA;7?YBApWF|;3k{%}F%JH)>UbG#KH z;&e?Q*{7*!rg{3@`NodRQx8SrJv#iZgT#xr%w=& z($S2H3-TXHXYn`!bPRW*M*dTEKJZt#a1Q~;$g`zpv?ahFI9*Vcc~>TTmG&k~5i8#? zJQSt(SAr^-ST&VHdW57YIJN3@ce|mceN;2oQT^!nHNW&Xu0W;$;zp(R@)713`&eZ4 zP4gIvNlTR{9tYW~{YfSLgmOZ-aRwfiB3)M$Bcp{L4g-H=#*|!c>q+bQs}8NuaLim` zV%r_84PRdXp}Wi7Z6JeoJ%eflFW&AabpN-C`BMI_*_CpDG7aj?bmvE1)@?$$Od*-R z+OCIs!Z?om@H6|be}==_v+B1oV)^Imxnuuo#4K3lbB_X$Y*qz-d-v;Loa7iFRiGi> zXiG0wMn*0D6`^^XXp1dwe%r}!nPb!$2v4k zs^bBU`xl=zH#PumY=k__e~t;CI@A0@JFRjH3E{^l7w%1e+-~@XOJ~&7zBTuM#ue{4QZIEu^{lK8c9LRt z7Hn>>h5P%DE{uwDlP>;DGpN^u#qY3`7~=Yvzx2(E!)VXj9h8WN-8vz~vMZ^pNWnfi zy@uA!dcyT9j#c6sPBI=D#%Hp89A>v?{gv(^ zOIRq(F?J|?+z2Dx-?J}fxbG3$k#$)52;9RTOLcN!fovSzwXH*AMsW)k`!)2QY#QW{ zwO&4>CXpw0Q*p9?^lE6u^Kul+Xd;|kLCwo)-&jo#`Reet^?JrxdQi+RMIPkb!|N1B z&dthK&QPAot;|qyA!0sP6yGb91uPW@!(U<4L-j~2fNjVJYuAO03cjW)i&ycZ$^K~(pq<}G1$Q@6vKpbF*+)y=Vmb(5{m){Nf@=6%x0pDUmMI z@$iNQOoLK6n1v3{?`d{h4Nsy&D?|lNDAr$QG4g2UqfB@H*T#WOtT1aqXj)*kIgNDq z=sUg4WN^4=+P#%C-iz#&zT^AEFs!YdBj{dQrX0-;ugNk}5(giSOMCdFO&7G&8uDi_ z-%Rjos>DSb5%q)rS&XP3nnH(uZRFZX) zj>P4a{j)Fno!1drBM`3hL^1Y$oEY+t3FOoG%Tu4gc6DJy9mBtWbiQIz|ALLq%)jp( zN~wY!6?Id$Zp-k9fF29!;1OtG3ln-omOy=J|M1dP*UaFDf|EMUCwDOd6!yuyUYRc* zCor;+JZW!*Tq!sUFyJl^n)_YuLWek>ex0>mSNaj1^`9Cc4}^a*lG=WY{mmuD3F1lu z>Shw*DiON;8-xx3Oo9LKzI~f-T;7Xvub^GtX)FQ8ZE4wE97C=jU5bVI2*$-L@q0NA zY(2u1+pUuB1g_ergdAUgRJH54YbvKNoCm|46@NMpoJRO0P zJN`~|aC_W2Ru;9=r5zx@njQ*a}cXW-oiazwkAR4boXfD zree#b7gxIwVE*TWnPDpk<|D3_$Tjx-6zWhx8KFQThFb<{|9`F?{E>XO!+;};P>eo8 zCk9Y$Cq56ZUZ6_UxbMfrLwx(A}cbl`8ybZjua6rL=28iXgcg{#LM&IELEq` zh~Dw=pgekznX|@a@B3pPn~>=}h#vv@NBqaLaJoUTt+T{-uU&u`$H0xa)79;!zFq`=)NEufTH&RX^MF##U^UMuQu$aJIvYE_X!X?DAW@wz^OQ!@&e|VFas@ zga#5?OzRC_1zxcFqmf(xNuzp>Ou%pW5w zScmF;L%sM`Xvzp#9|^Q?7YTaP8#r=zf6$vqE4frPOW!MBA!d&20vBk{je>jk>`Gy~)t%j!#Apnwvp_UeS3)gKS> zu2_APP2f!XUh$0|cJ+F#7H-46Nea%CoKxEPX~16qh39Rv-Om;D_oEl)TVy-->(hkY z|BQ&j$(cnUQTYOQ@Z{n!w>V_g^_@ixL337YYGjlbZGQaXMLY`qu94(!8nC%INS*z ze^4jCp8r42OkyOOi{0=vpxZjo8%veOF&9maOkD!FzK8gAD|n0iYLNUkyqm}Zci6;! zCmR%-B0J^Vqsf>e7H(2=3l2T5jc4s=`iDA1uUdz*p#g}}QEF262;gp6hprS__y4Eh z!JqbyKLl|q`D!I%DKTC3mO3lMi}f>wYFbewbS^#roug2T{^c;nW!_|a@i>R&3-p}l zeuu*QsGN$-7Ot&qIh>l^RS6WWP_3(FdXPgNaUkYTW^`XL^|_d#u7-k>OkM${=cBtD z1Q|Fa)yM*)=w5JzD%#rQn?X|Xp1{&px{TZt zN?0tu^RV-cmD+rtpcC2-hx96b*oEejGgxfVVHU40@Pa2VhLKjh%IIl=_m85}uHnb+ zjxfb74#Uu;S|9Azb${Ns7n^z)Hll|=7*Oexq_XhLgtr=KnD{701RS7tGS~v8@k`xX za8k?wCyO3}Hp*Tyt!!aL0w{EHG`QBZCn<;#!n#-k-BY*<@rJP~hEM$PBo^d_Tcz6x zHT5~iC!i={aQN-@$j zClScGyxQGR-a(`0q*eb*i|@j$AO$4hWZq>RKz{kyjyt=E2~#VV=P%`((C~OrMH5;- zY_4bAVW>2Oyc9N`?*Nj5&|;zs`qB8er0`F$ra=aQ`EopdD~)RI0&iXqE=&Pq`^1$f zv`*rkgQbq~MV=~A@0(}KSrUZ$@zBH%S)j<$E5?I_I6pRKT%l!pbhn5e70Ste0=s81 zB&aucf)x|a1Ql-sDLFLejfvgvJ#Gm2e1yXlYmU9w%T*E*8hWj)Zo2(QBa*&$j_sTC z?Zqaw<^LYHdWfXp6gr?(e1+2d5H>7bFjBF$#r^Tcofr1w!prPdFghsO1!+|9KYNlX zg!v0)OkStQoQMRuTyuFf!(iPQ`ZL3wDEEQG#2ZR>B+1?j#vmd6wC}BaXo26``Cv@5U*|c-jNFvqLb;JXNPeig3leX1RTP4!lrH7hwD6 zgV+gltkyyST!BeZv z{SV#kw|8rO#?LvaSy4kl$u)y#H&RS}JVyF(nB~qdUH{Ro*d%yGNEQcRfhERp6vT$I zhW__8@CaxZ7bux`kMP_$HHHHu$v%7_%(S7rw~NqVZk6BD^^S8H<(;YtHC*b%O#+}}7nv!u4Re{l6OoI)` z-dV7=Lzilty$^}1KrZ^(@Q1K>~!2x#`~Roeg^C>=52)QRgRrASI?+1VQK_uE!}_2zkUQmN*%zJy%W_im7ES zI&KbD$SZo&8E3)7ElrIWH%WBBduKo=h!i)N81>)5oIjHXICwHT8x`-s1vya`M>F#J z37}MWs369kktOZK>l42_m&yq>kg?8URGyoF2=5k%uF{&4p$psK8lRR z0V_V%0iLr@A1t4i&m*t8IR}YNC488kgs-LTtG{Nw1xNNLRrUMm8=AcF2Az081CnPm z5!J?XdFwGRezpGmJlH=*!sZn&gwDJa#6*lrjRfuXEi)lwR2v%%a3q$8cPZn$O7x&-~$GE6pG z+t6M-y-q}zOCkF7d}%ellhLJzEr#9U z{JIeiW(3VP%K{T`RvD+)fA}R~`WG?_Kzt?q`obrUxnA}rpZJn}qy1g4_cqXi8jrAl zcKhz7p?EWYV|Bfm0M;VOhfmG2u6~S!rlM7vy;fl#YfdgVfN_h!xNFMor>}tO$>gnu z!PPIvYH~^E=VPJXLO7`cUtq(dP9KH3F{Z<#3yV(B8mUWpjtbBpgvK9JWBfdpT%RBl z7);uFnfHginA;MxcQno9V z(ZzHX6_P1!UZOsT(IhSq?DSr_`3SJgJ0Lnqj8DMOAYzjQ{CzF;gb6K**4Rkhptl|& z{4EhHK0U7cb=J^3X*@?dwQH0DBZH4QV?vEQ&urff6#J?8S()Fl5H(G4Xo6tQiB@B= zC`2Ruj`AV!hOtDJVJ;iuAqIwT;OqIVNH>YiyaH15PMWMZh|KY4_KwgF!~cj2ozt^A z5{K!2;L*+SADT|sfQOcikBI4vc2;%*Cv+fOBVGk|c zOlWK=rnX1bTKd)lthzVts{aW??@k*G$9Uw3|M#E?WrZ8v=;-K7N9PjH21^N-rJK`r zVq`zrQ5tm%HbQev_Xdh0IL217)MO6S% z+{Aq8`-wsy9QTyfNPIJ$jcuWXIbshc=PN^7R3s?XtRs75qcFqaJ@(t#UQ5?GB_!Q6 zpnd3~Jl{+m(En?NqxGaIF%3M*1J2de$LU8Uf;Ym41N5)?)6hp3tPSbd(z@ZOl$+2t4{$;`v*D|owm<7T%O5$TlR{Gc z$vt-Q{VJ0CY>#RlOJXoy%*BL;Ud8$%IW(&%V8-p1^vx#bn(I=ZM20#$0a__E77jt9 zpN^ogASP-<)dYi}Bwcc+fT!3QM1ZX_0!Vp(8P(X&sjI4&Vk%HC3s9pMwy|0w^!ME) z?e%5V){C`mpKp_|4ehxRNcg?M4D^t5sE{atPNUH|4%EaR6UXCYc-0?hwLecvQr`@_ z8$e(c7`*Q7R`=#*8}=r<`^zK@!D)Q;)hAL zWb_Y?!`MK}&#rD3;~g%eC)6XHYG1VX%2n8nPY#D;kzf$Zo54ANKmPwXdXFH>&NMym z|Bv_f`g`-H&#cVy01B>w2GC}@XQrFO84Wd>88S$26kL&tpcWE071%1YP$(pZLZOfp z5<{X4snPg$gPxvlG`fKT$^m7v(qHe6_fB7F3j`8XH_tuiKi~Jh&y(+)#HUhwQMQxm zmv*2^UWWQc7~B#`oY_PFnsZg!-Dn~wph9W@XOzIVlwcc8% zw8keZ!fJ)hRTnS9;d}U^R;h^n26JU3Hsr2Yf7d9f81zV<(8&**x9j{+EuKRZ{aMTn zD>xKqM8(9YJSi0w<-Nr(Q!(LJvljplS@WAUGA$RnR9O;c>nY6#Sb!WX??e#em7uQ{ z5~%a4Lo34qN=R6mnJgbC(|JSK@%SpsillUVRUUgC5g7g)u7lS+xgGQeqZcq^SdWaff`+*?hTrJ0PH-~BSa~KPWYWHN>2Yw&a^R^NrgjSlx&%K37 za4tq%qid&UpZ;mN5ARGHfWAKEd}YSJdhPx%xsCSe+DAj?($MJ1n0Uc%{aWwwwRib% z{9Y~Het-3T>%%_}e|l^9FTUD88E6l_ZOq=WH;bMBpbh(mwI6EIyZ@}1Z!Jse?K5M4 zar>?JuhIZD{EKBJJsVV^I$N0A@)Bd3`!6f0SkZ)2-!}BmGlnJB~Z!ecF{s!sa12#l`~|n}yGFZ&=$&->kKb?}=;G;^G#4{-BdtX@ViO;0>PR{|NF81PHx4*$XZ~B0x0EZPs zHJySi4TGG40Xq?tJl(MWBt#T_imk2Xh_;w*yja?d8de4+87a9(t^m5fP?ja51tc?1 ziAXc+A;9ZlmdP4TQm58@BAIneU662)jB{AP!IU^^GVIyUR8Io{Z`AUYQaV_O9A<*1 z-4tXBqa&12C~!)D9= z$6w{ri*jrb40-pcI57!bDH6UogH$?Xe7nXLSJlpjgYCHa;)qI!US7f{Sz>Vw*Sw9A z+eEry7{!#M$uU~Rma+grlHi2pCwvbv2f3O}lb&73DmkRKmy>q2q(Jlp>czjKpyAOF zpgx!eVRsdv#&wloyC*PRdS!5CQiX#RUxw(@Hh%NeJxKYgLxAdevScoIq)mLu%1;b`3r~U}B+h zc}X4{$@aK~>zQ{2jXOm}z*n&iL`ry*l zBMW9h#|bGLWZucXC_~c3{&U*9;VFh6w zQeObc3skmNtdaXgwOC@VE|95}1Yw41VvGZwX)iz4a0h{deBU>o;@2%Dig;HI7?V-w z?1)N@0$4u~WQ+sGX?t0ixb+IK$t>wM=SB*n0&j_l*Gqbc#OlJe*m2jbN*T`5)Oo@t zDU^H|>h6>r$|xs@i0=*(I81P;SKm@Dq-hcW2w^pdJ&i6Ho_F#>P*yPFtOSl_pt<0? zda*!b41F$-zAK@bRz$Ux8Y*4l^YcJvIH-+Ne17}}&dg9%? z>b`f;%C*_(-D-M^?sCjOsP0@6ou_ro{`1P<{JO9=fbYz8nR%1+YSs^zyz%Qv2|MBZ zupwH^2^lWJ^iT|T(;ugzayy$iSH+V~@z$G5&pwf(4z58_+Kpb#hnwQ`f92ij1LZ4& zhSs{}8Sf%B{CS2q!Ovj1hUo>!m!PC zRMJdrwqiNI){%-PzTN`NTj@iN{CPPKqs=9ZX6e;Bh+->L(XV2_X`2bJ=eKhP;ut-4 zteRPO`ARA27-B~- z0GG1;sAfwCSj}U}uf-+1Q_ti}fq<_#cymy&EF+{lb_ynfDq$I$U7=NT8l%)L*{tU= zUPhKH$GV;}vIidnIUhbJOgEYtQOVq0Cij&BaJpgMJD=Din^4#5V)>LhE}-by@Wx7D zuth-~WKd1i2z9YjPztjyw-sh7vAzux?M0pCZo-Ry!T!QmnL50A2cwh=azdb%tQc6Y zA3Dm<{pmfvn{GqSbO&U7{2XkG&saRr^CI5_aZnEl**RZ#5BH? zC|g%^pJS>O*h`e9pGR)TSSEPkL2U~p%!as8u=eUOXdx)H##|WL0I|p>>#=nDU$fItOoQ*Ts&#tNOw%?WeoKpp$SpZan$zd`Q|<~BcK zIF9`UbAW5`A_6SVZa`&q^9I36et)k`7y6JwzIkqUq#hW0nrdLff3+#Z~iD&)Zofo zgwqe9J2}lN{lU98>r%_^y(R^J*kso?K8kd(zkCf~yL>qWg!fM61?6wDbWtzaHLmkJ zByISjM&#y3uz#h!#r*2P|Lf;ej*ja;?+k$^YQ~9-lP9fS7biEIX8@<@dnfm;t3)Hw906N-^5#QLTJ8bA+$nTQtLiKN#PPTqb~{4+}k$VNyZoqcbdk|cLff*T##-TZ%Bk*(1Vd7ABdMJbj|CdHFDO02cZxzCbNh7?F; zZye0BQPB_?fuG6M8ID;##qwu!uOq~V$pw}1LhS;;tB7-NywdOv%Z*J*d3yuG1y8<0 zzu57*=iQj}2UqE3H{~e)o%9f_D9d)#zE<&#RN_(x7;yV*Z@k11O82rtu~sOtgK|xj zak&ye9Z0p^cr$w#5saWsFSPPhOzPJXZ~9OnTFY9@wJ7m@(N*Il63gIo@3bb6nUbO2 z%}^i*ZW4lDn(P->5wwK*GN!@gm*j8_>{fPyH+_Nmye1k+MY}t8>%8^eTrV=ly=g_n z+Vy3Azs5>L2sg;YIm?+vYq9jp2^_-hW?4?es3eDqI|Jv^yAjY;3Tl-;+n#S0M_9JJ z!R$GS2g#sU>gC;Kcwa8LI86%e{Mb1e6nOvYb>>UuXU~W}P)EON`7GQ}^XAMa>qb~} zx@0BsWLbB!RLRi;b2P{58DU)iV2a7<^6eVEAE^ElFZ39WL|>6Rs`vc@vx&li!uE%) zI{Y>OI!;%?xRq!5_WLGD*Z$g*aWAG6g1SXg@=n5SruPF!Su{59C9EWoSt-FcbI_FF zy=fXBu^t=RbfHmRmJg5WFnWkO3jr-SK)n^zzHLP;U-qYd0ErnK=0pZ}D<1koeY$(V zM_=CvuPMKtvPb3Y&Z^}B>hKD+xQ6uzeOuk}*I>U&N^j5IP9@Ci)p`Qze>*kd-d)o%@E4Q!nrX&vYT0Y>SwvSciA(%hqDx1@W2ge-m+YOf4LLaR^V2 zS+yNzPlGQ|u_9MHJjvgkSw|wB$#6SrU1Yh<CR z$ac5^4r;2R)e^0w-2ReIGq%3+extGDC-^ZX=vAW<@)u!d^BiD_4c{tXsc2Fo1-QZ- zNog`F6%dL~=WC=ziLEtSW$i>;yynO(DK!^1G;fhy{wztDV@5j<_aWUZD*_Bw0*;_k zZBji(xXKsMIjegqIhyl2tCz4?^5MyXP^#+V1&9A}~Rw+U_qY|kzZiv7RrkgBp zZ$kWqzkg0%G#C5Jo=sr)Hd?g`OmT0g+fGLf88f~CM!uM+%t(ftPx~sg+4bTWm^3R` z<%xc^PI8nxrNN+uOgd{vpCgRODh0VCLD;AhB!NX^X^J30gOW{RPEmj+iU7vzzWfo0 z3qeRH8aP7*N6Jw2--USL6plx+Ko1fRz88u})7g5?SVtVuBUL`U0RRnQFC}xo<<+OS zUJ+U4<(5QwNtzXrZ>16KP8|5xsKOOT!*SSLj6mG=l!>ljolwcLTv}8rB~~Rale5W- zQl4g3oyzjN34UsFn1-yjB*#$+0k2KT`}Qr&NC2%b0AE>3CA8xmx+Q= zPKoL1pHO+1tEya3>f;mw$1tIaCysBA-Kh9x3_F8L$r|Qp{B!R_{UBCN=8at zfk1Yngb(rF&5lEw)}R+2o?!;5<~axr2rS^w^Cfd$-yP@Nf)ZdZSFfZvV@OAsET0Mr zTP!8mkqnCDe5z_(v4X7|8p;VuO28109YeyeJ@;UM09SShtjli5QDh1>k!?EoN9&nk zTs*>0B=0tSi*?eu8E34|&|E*QFY9e2V)g5Yk<$?RDZoI5@>*Mea3EhIzPz;XNzG18 z5CU>Ei>8dx26b#SOobX?wTGg%(qa7T62+`<6aeC?ugB4WI)^5}ITy@4epM54mZXHu zZj4(tLW#Up&)-g=ChPj(9$-Yc9OGm$hqrut)&MN@V+nF0h3s4px(oGYu_0Nlps}I~ zp%ocvS&?PJb8?V4nH+XQdqu%=gK_mad7kF&=s{dYpA*FvitQZ1@N8MbxbVv!6`V4F zI|zzV*DJES&*NotDzo4KMS3K+Cx|TB}tiNe8!u_m4YP!*) zbw9V8BznZ;%X9eT<^Gyg2|tY42EW5e_{38u5zRBUs;SF5S5kFO4;RS~NnJ&|OcE3& z013UJSHG&!0=yR~!S;D(VsfX7xh_?8i$BM61rSP?J}moniPHFyl#qNBN)z`I@M{>B zD*}Qj^U)YJ&8nn}@H|9@HD2k)gge1gw+Zvf0TUbB<1K(o3hbUj%(4Q=R%! zXY#E~dQo$w1Pcti8e+$H_v{C!`OyYydKx!*aKzl-8uag!-I+fu#l4|h%Gw1V$`$Ct4sUx1|v+LGjQB4rp@(fF0_ox zX1FVN`C^X|g?V+GzW9ilOvfrkAC@=MIDcwwu-b13E#e1d8p2~0U(n`7^7RQ#@d5*R z{6Rxki3Z%~N%{1$ZDj#!)`J@Un*|eI`wA$@XgitIjjXznS8d z5L0@zy_$DRX_-=<0Fs-9f0efqTexHIfJV#Fra4GeDqB3WBYnlr8u(QDj&*@ zJw{7WULc968XGWLqhgk%MFnzW*UNI8zg%i6IL-a68gOhLgn&m}e6EvSULf7qLVCh( zCkjnUpcbn*2pci;5=rb7AE^F1kN6M%ISH19jCpBHUSBg|;B#f4 zx4)Ifn*O&xgjce_SgBMkOm9>x0jhxJH`fjqb&Uq3@>>)`#t@Bp-Z^yFyT93A4eR+Y zld|#EjJ-r2{2*}(-qq|E67FW%M)Z6Y^DW=Gr%X>DF3CZ^wIuuAYWEca1QFC=X$<0!NQHtxMeHPx-7{A^P#v zmF{b|y}dkLb2h(Nbzg5K_&H*E4sWtWW0*{jJ84{AgsFclrEhXD zkR|5B+=gnkYon$#xlDd03wB{CK!Uvc%=}EC>z@?U}M&F{iHgZnsxkc&}# zk!w(}kOg)FR$qleM78r6f&_fHLVlBiN85!X>$F7EHXO7HHctpiID)dZ=x)SmOmZ5X z=eRV~0o#)>Q|t?5^=_-|QqGI&O!XoUXxP>K2DvmmrC_h-TfR|S(WHDEkf4!5GVlq3 z#~B+CzKWign8{FjPDLqGDLyv?Z5u8%HaGoy2`V7@$}7nL%uL;sDd;vLa#7Ni3||2V ze3@Q~;DX6OWLTwDM)M6!5Fpmfc}>ZrvJDSt$7rZ(Swxu=PcHje?glc`SpEoPVN?cv z=3vXKZIx>Ul6-j-iyhg=BL(a)7U)rJ6a?HtvcU-m2?(F8g_7HhK{kNh>I8huB{Qcn zVL6LFbb^3Wiy(9Kq#y_RxGOU8-H3Zi@-+RD>S~`wcp>H{=vE?Tev#hMYu0I_V6_5E zYE;p>NNC=sA)$(ifX=yS^O5s%feG=69mLu^aStXoemLdA0~fUoqHko3tfa(*QR&XF9&5{7P#gl;3t5 zb9Fy&W$?nw`4O|RNfwtiPKQ}Lnho-Bf`gv-WkilP;BAW@5MYe!OyNlc8Cj*AHSM&g~#liqa(jPC?)s2tg>`!$eiSc^s?FWD2Tj;5(Jo4cd zU4zd4c0#5GCcJDIox&(O!$e@#%OV^dlbA;3ovZ zHsfYphpw||FiUD3kpxdU5yXAbD2}rG+lY*Ldvx62)at3Q0_C$^2kbIcH z{>KMHGmPpdh;~AdE$N4DMnPaR#&wh5EVjyOwrT^lmriivBo1oOnQL#x?CS68;T57y z2Un6#D&BE*foz2x3#o7}FYJzA$BWD$=F@XOpRRcqOT4U;k=@J+hjeSHgC~ha6o)|% zX^eaU9zbi0AWO+6pIkhlK;k%6GPncG@N+#UgUU1eV>&*+G^$%>qw`ppxPm0sW>4B< zvXv3##wbF(p7uQm>|};+wrEH$G1$QV_;eanUl;0)%%c+xP}#Hr9VI>M>iOltNwuHp0KdmZJM-engMkn@>Q` z_!72SUn3OgAeM%&yM@!LOPYK=<*JQ!s%0kMkFIY* zUcYf)XPlbW+}|42mj7qO!BMaLLOX(C9j7M4Dq5z=VPzjoK8|7Xn@v97NayOPvtLb< z;^05&Cc#=$?yeKy8zvnQ3n0?1!KA{w-gl)?a~OXtsbxU_bD2%&qt{X z1Fb9u5o?_~sdF8vQe17`ekOk~lY&Z*Hc##3H}(s25rGfp+;1n3E-(G!d}}(!S#S$w zMSISG)rzxDB6tWG@;6!OIHmQ6+|$Bk)lZ7nJU#vF$3giZdfsw!@$L&WgBG@95^8T~ zjbB`f#4h`aG2VZ+vNy%u$peL|HFG+@7G$K_&bok%qli*c_Y8l=RFj|Z{@{MsDulPz zU61%51@>cVg?y~j+X6<3R4}>?TvC}WA8PJLe;RznoGmXzlPuAhI^>9oy z38m6z6&dj}n64#)GbczszVa|8p!><;jEszSw71Stb>^zh`dY>-%Hj)WTC=WBds*fW z5MecdMlF6nIP@`JfJy6iLDa%hgs?nK_V~sYdS(JQ8!;!L>5saMZv(CIH@qP*dU@{?jx>I^17vmMOxIFj?mzJ#i;!Ou*GeQWa@!CWXY-ZN@V~ik_-c1&?<+ zpKH$L*~JC$NifMYtN1DG$=w6l(9^&5Nr{ePwK!vZNjp21meto777oa>k#ROu}|HgiGW$pfFP)s=agJh4` zF5K6O$y*9w)xXhrD_6HxHB$WjDx|^LY|cAdWNT}`OD;Rq2mqn;3o6o_h|?$|Jm<3e z#hPXn*A_nlVhUN#A0cwQ?Y@1LId?Ca$ee(%P<6(yfo-b3`d=WM=2UK9hsGmgzR|H8 z)qIx33d}{WWn>Qi-)6nd&=(O*OJ<8T0RJq^qWSb01qTGD=6!QGc?&U~u8fU!v z9XhT3stqH?1)pZ)<$RSKGmDdX^0|(I!8TVUHWp6rBR~E@y||w33|UsrlVd>d!7gA; zNM2MAb8hBc)LfFi`&oVuEZUSgBRMDYE~YfQvH4By0(qaV-Ussf=hRuB%NcO#ER7bl zmGaG%*IK+y1B!gMOTy?Px<{C(x^uuEr{$l(WUKp|$T)MC{FBJP!Yl)0=Kf=5N-1;* z1Kh_Qb6wbKF%<|p{SDUl#HNsKZ~yCJH-6*qVi!yA(#P@#F_RSkS2n4Lx-f8A=y%o# zZhJutOXRP#+2v4>HF~MeAw8Ocvr3}n7A9vJzC;e|(RJl=7<%0K9vrsqrX=}8aJ8Bz z?@$b(7dv;Vx{v>hBF}!z36!K838r4Y{lP^e*_PAc^1X`zcrY|M^eZHx z7rRXie22FV^VQcI2{s-*hN-D_1@s|Rx!Pl__eh*~-h}~JYds}dzQYm~Jo35I4#+6$ zw>!m@PoF1Csk}P!Iu3r7O9%G0?ExqBWL>+eA!4Y1z`cFX5)Hl zS1ojpj{zPCBXFn(b9h~3$_+P$v4u*P8_pq>T!gyPAp|>0Qn&-iFz9gmIU4^&j5)GI zgSXtx0ku1=0Yxbk#)xRGFY(ZbDS8IK6xbTN{;*|}Npdcdih~()Oo7(f%9$znaKD>z zX+rZ~dZS*pmb^gvD*1SDE>d%1qD|u9?uh&`#Rx9+@3tSP(d3Mk_pj~}Q9ZPa1GsQb zq@1tiIkg#-M6E%B8JbZweofy-u_t2dSs9#-O*b>!4alSXN!e+WzX4;Ci6<_3z%wmm za~6Il#*9F+(FOD4h6(OAGo>VE(0WBB^u$wFQSH7Pn#WQ$6v;mlU9KE~n@4#PQS~SEc5wA`u6fPSsKs z-0pVQrF(D)}9Gv88L-XV;R7EP}Nt{8cheZ?IfcB@_jPAH_)j({v`<_ z84b_6es3<{2wlHgVdd z#0D5q)~dWdZ67V~ ztV&*?fLSFkHK~?zI;v?wYW1OF#)5Q7+X2Dbi`jn+JX+m@)hEI$0qKorF71*t;O|aNE?2ec0)J7ks4aRMsh9p4|YE>4K zp5h;{3faQndzF6pU7c>%Pa-DXOyCFEd2qRx+M5V+v&sf{PLbWN&&m?1e@p41pGvQk z)Yr-170+(?W4G=OtjyoBllQUb(AMJMvVH+%0?{r!@mt0&XCKU!{m9YR^kN1_yddwJGI z4{px?LIWHG9!{VOuriusZx>Q%nS{PUN+}i2=_@|}-=MBANsTC~7lmt~rbtknh$QUt z(Rx^#%7YJ=Kq@FTA($XkN~Z z4wh@IpF9p7t0rD4(yqwC#-7P@UWwj`*E01#flW=Qx`hdleMq_Us!UG@pDmN&8fPUhTl9%c!6yOQ}r{p2Jc03+N8+2x8qp>dR-z!;hgMI zy}3q;$ru3n zR1S!Bzv$(`hiQkz>PZT^rwpDB*w(f!aKV!6YAU z(@KV`*H&=V!&ED#wcF-Fam2qpQ`*tn+-xs~phg0YGUrAfy-W&lPskX6$n6xEs>6f| zw5KtAi5z*Rw$ef7GN2XXJX0^DZ5B2y`UZZFC%7PR zgc=Lpvn;hEcR@gUX{8l(GJp>;Ng3GQ(M7kZ5)H?N-WWdwkTa>emac33S}l&u_&rTfAMSYVDYp zn4bHBMyuD{zfaFgtLUkV!nytQP0uPnt>xvh`@LLr=&oVkUG{2$j`;TNwPIS zITql_N+~z5v(AUmh@{jdoa?}9RU+&v8&Q+M@YURDQ+hLhqB~xvaW^E*TLTkuK;v3$tma*fvE}lnzw^o$Sl~75Hj_C+UGbs z-Keot!G_62;=}TOJr6sSoQyf1h%0l5r)> z`0=tBeQw;}z`09If+gFitz8Pg(J334Qg3bCUl;h;}p zNU!t8*|@ULbD)qk#DA|u$3>gzT!MFmtXHH7@&_cFsqUAQr0z6gQ6_Dhl$N_d+9Ei36?QSCUH=R=yxAg24FmjXVNo|Rm#c9} zj|IrZRUE(iFl~~!IfMx@Q-*~PD<<0RLoDw7;`-b4#SI`3ZrmF(nXo#9h^1Yef(cNE zvKPfO)RO1ibt=)tk~>`6;4Vc7=bQNJ$@tKlVdOgj6>jC_O$*k=0~Rvca)U-)NYqxI zdTbBO?2Hc3L9r~BYn&O^c^-OXH^B9W!KRXoVQEj70mb2}2BUoJgJ9Hv4CO1%4#O9b zr1HG%dC9ZbwHfm^>47RBzSIi^2E*=6$O-X(1lL%?q}vhTeH%ZoV!65lMZWm|&jglX zC;Cg98{{APPoYpA)RxWAGVjf`Op`D~^lzYQK99IlsTKs!*t%C30DPc%ZJ{Gv!zsQ)c}4M<;w4%#e- zDp`PLi{~F&EE%-mDiLT^!{9wdO9?xaYSn31OMBc;Eu7c9g9M_A`Gt{sut%aG z^aQ~*!B+_h7GV6%=B_XlYY0+3znP5J$td$fHz538Qtm+_n0sEv32@T$v_VV~-qT% zr6|t4G_)&uw>;@le7fQZ5Ot#E+wohm_zyhQh3MARf~$JsM-qhK?^G}4%1Q1-DJ-my z0(RE<8+egRYYwsK5DOZX+A#p#DES=!GjiSX3P@-Rbp0hKCf^@gN5W~>CE>5Zl-RN6o-y5Umbb_39WX5 zUvxP*xMy^ctBKfHSz?tldO@rss2XJ<(JRm|L4t!KIz|onYfoo=NmV^DYrwsD*|5^9 zb99${zmb>`Al!Ukq7K3H~EHdz!PKUR&j_ zG4P5WkmhuQD!(NJS4c_!ZI#phowgNjf1m$P^#>oszgmT)RjMB!Ow#W^Wz*;fdc5GZ z8*XxS9C`fA{KPqGqmy#9+jU+9-kzwOGaa2~$A51=BbS4KIk^bt7aZNFSC055q@%bw zlr^_HQu!~>|K(ow?Ch3F!Z>ji|9LPe$&K&iKUkC2qZbWGbm^Mfy(u@Gjy+MlyST= z_$wsfJU*c&Pszv%ULKv)^Q}pKep6C8fJ^AquZXXnNn&6Bt^I$~SbaVuT33_fdJd@p zw!a4@G-eZ;gILvS{A)a13&0<(R^#(~M;`>$;nl5ze0{Ev{dy-cosUlWi<+p^pImEZ z_CG(8WLc}(Gvec{eMs)exlxM8+3(HI{n`g`-4{QA2+*6<6f%t8o&Uvw=xNIQUS{j( zt=8jFBV${=76*YjmoTGw^T_*eNmiK;#Gu}v!8QnLxiahuQW34VQi&jQar&Wc63GS) zm=6X?kY1*1n?C$usP~F*s%Z9Jy=sbozCu|oJSgNmqk?(~Z?Oag-}>G{Vxk^VNT4~r zV(|2(purQ7d57~vh;LBw7;YRu27IX|p)ScFrkGAuHF7`ZJr!a=o#IkS+ciA*r#E?6 zOmbYq3E$+bl3k{iGxLO*T+$@uGPkal99ktf$6}+r73xBA8R>$|s8y96#mj=DckmS8 z{MiBmBUFZ?YY-CXemmDw= zN;S%j5=x9Sm>0@rbSWUP-cwvuIm4=qK|Tw+_=T{<1C2;44sI3?syH0Mz>nTxf6ax% zP)BuZY{DoarOfUuB1{RQ1zQ@!nJfi6t)Pit%sto3w@R3!}R>$ttbPOBC$)*s7(1jpYzfR)M-E?(#m;n^tpaL4~XQ#uhgm9 zTKOPfsu~P)gM~d@6_Bb`e3qAFwxKmm?)x1 z6~T#8MiGxR;%$b1n_IqXrn~yzdRb&07v_B$?<=4^T;4IrQMf`sDGJD`ju;&J@6P+T+qtYW6>$1&pF{>&s{yH2LX zInJ84dzN#OM~yqeHet~`pk{~Ap$XurU$F2o#}mb;Sk8^vIgcD4173Gi|3B1t7^%R; z8bbqw$f-IRpaL5{odUN&rb!Om#XdZKW~*?}c(uZiXPTvqQ_3)yEjW0K;~asMmFFDH zws$O+htO>}qaSCQibWm18oA@`EHM9M-))}0+@rcWnoVXiG%lA2I#&X8H2yLNe?~*BR%d%5T&9irOH8y z0aOEqrQYSg_CEJwn~#mw-zIUwS2tpPk@2>KSIvT836EtQk@F6CO@RH!9i_)OTqEGO zrFWA{=;wel6fR4D4Ten+5XLao^JvrzvbDlVX-`R~a|)jcuJ%SYvp_vdE-|=Fh~zaO zd{marL^BUrG(`A;TVNiRB%4u0)~WZ3_sQ+#<+a3#6a#kvH=SoKrcqAobS)m&IEJVw zZx<9~%oG)i{31L_-H3@MG3%K>_G$=fR3qWl zk+#fF@x)L#+M{ulL75oTt3?i3d3*&<1K^~C$sX{UFJK}Ce-KvEPNjI9^Tc(q7lbTS zcvXGqfFBZaZQX=oF|=yy5HgoA#@$~w5iJ?Yw`PCY{ z3lSn?0osVGUn_Ku7fiBL=D9!2AU$o);c*XhpV08KlpKFZLLz7b7%mX_6U!J!NqyOa ziq}6SzwurA+4X+4i9Yjj&|j@5%zywuP@W#dOe9FH+67ll-wzpCUO!(js*qm}UT@+WVKgjZK}!}50X zw7}Dly0Cz1M;9UI24d@dfS0iFkJ(K{?M=SHd&6aCU1=Lsl$>SfiPYFBFWY1fIN*VT zSJLS}3-09VzgnumUPG&03M(p*62%~LI3$M?dU`s?%HiI+`JSAU-|_eAuBuz-{Qqxwp5LQX zN3(e#6H77E;W#q^_`$qSe;*K}p<7B8$ysXbr8QA5q(qpZz{us}SS>z%2i|w82}mEB zEXYU=@wjW1jK%D6orT zJ3JSI4eoQX2`t?qF&d?CC&40I=c3k2aikh43ZsG!dTQ{J3jakhr(qqc#}6U*TT!4| zBN7opaA}Z3VdksR%Vyz^AZ;jT^Yuy0Na|0lCq(|Tt)OrWhacsx#RuC{+Nu5=?-k<< zCdQuECqODY;Qe|KJ)xBr#KtzmQWBC*KRC&N%x;pi%}*@yl%L?sT270<`U94y#x5p3w^d&nZi@xah_b z4n|(q+lGiwoU6zqxvYENJ_%SJ7ipV#uBc@kG|@bVJIM{GjH6{(&LYEHcEK!8WY&xN z?HU&$1Wb}*!DH)#0IJuJ!hqnyCmwAf3wrjWBESuGNLQ^6qD&_$YR)G-6bf)UN??_v z`u{7OFfdbzVbTSjLK2M_e!LD_*Uu%_Hxjc9!oTW|O;C}$%Lz9N&~7m?+E5P_=jKWi znF{AZAI~wlBh~XG=0aNSFc)&S<4vN_8~d!YlBP9i9q3~WqUrJFlxX+?fS=@h{IEGY z5)HP3jQwF-AV!ePT0!Ek58+sXB;5nklyw$Cz*fvDuLT$##EDZblk8RFETH~k7R(m} zh-{xH!A#(mVyLG}_9vPs!*Ig99$dDlxBY_S3iw8l#**;YM8w25JQ6j7)I5T`*%f~W zf?rFIVUNt$vTCxB`^spv&E$}}H1vepAeppsCB)!~PjU#Q!yF7u+cj?iGUplzMq!}0 zJL>YuQGo!hvigDS-AU(}LSoEAJXwU6c(Cd;K-1x|BwcRIiQxS<1g2+t(LLs-kui#9 zKcmM)hZRb|=a@LG&G@C_p4<#4>IrZ`P!cj%|L@j(8L1ZoDIo^^8##qkH_%L0Pl&ox z_l|k==-Tc_)kP%5A`44Iomc#mW=>!wgsw0uq_X#b+aUd&NWd-|uVUs4i$~{0?Bv$J#W5+BK82I8TUWwBl6~wC}Qt3H!$^7@TJV^1ml34jeTTvG09E=yoKp<_6Z@b1$jLg z!lJVH%-?}$6k?|eNe^PIbI*q?Rx+NR&A=lz9pi(k>kVWCK_RdN-$+peNONYPCbG+u zH6A&{B~AqLMI84bHcaHNQ@VnP@iPVZ$qYI8mbdInzaP=5DOHIkTa>p zKxc~%0}Lx+VZ&kU5}?uJ2$(@& zwtOpIQc#ffl;GRqVe~L@X0q5x4_DK=^-#&$AceMGbELfSFCvKlq_Y)6NLromLX=YJ z6^~7(aULD(;iTc*N=du@e%zCi#b*Vl1}LF%vK_h|+djl3)sA*6@DYI|^Vl_*JjZ)< z4mXig=y~RfjB1IIf%D!U9J)k<73SWP%%`I>e*fJm9bf;nlW!E#FmZZUQga?r-Gg>Io5SXTjMA`n7sO8=g%oXIo-*Ldu} zK9|}v?lLSN#TgDkm=JH7AG|o+NsBpxh4-Nmn{ria(##QB#37`F2YrLjHbdh3MG_oh zY*goy6rkZHG6z;lj4>FQR=t?2ZND?FkU^~rcMI;zagMptx?9u)>J)P6b$aw_4O^ye zjd{E7u4Ec0HEe~j7Dznj37)qlN!Macp|j2^Ap9a>6VcS{HMCz!#;FWh9`XKW8lIXU zVSbM%JWgr=Lmjp~q+jZd6EzrCbeuu@soewtBTdjG5!^^j-0L0_2PY1;&mjgIxK(f_L8r9#yq8*NBV-Geet^jEmq=(@ zP_&9bP?X=wk9X~0Qo6393kn4!hB04NLGs4Ae#-1XSXbdLr}*LP{eY4vYBC_+FO=ud zvchOE+;U-+KIIw`%FR85wcW~WTSJU5cXyi5(xF*uQcSFX5V4(sp^g?-Q`)xZzyfc{ z-;$A*I6(8NrwD+SDrKP%6*2+yMZf0x8vFi#YgfSUu_FjD^~%u%L8vSC0!FcaM7{B5 zIQmXIywUly0TawSuX)UH$$(u`a<+_lbQgp;-Pp`QHiNuk^CC z9-GZE(oSe?dF&yuRB;YF@Uh~Z0+>m?4zW89A@}v{XDEi+Xn$dZe6dk4fEgD0_q~GO zC`RjCVEwZ`l$ETMy9k1{=aPCO5`-|HT>}60>Wc-1ZGVrugjKD-bF;nc-p^Vu!1g!# zAojH>ck1{6O%q2%(929Z%y`>t`Ql%4YH^?!JhrSuSdOa}aXR7wV&F0>-P#z^k-w6X(oQ-=_xXX<-0@8uq zr5K-}i~<(8tAMyjWEV1J>)*X(S z!@%q&Mni^)Xquj#4w{knd8j}f9-sFJq@mskkNDALh#Kc8(}M+Xvgo@ZY}S6|o+x2; zBIzv?<09XoNiE9vJ&nz#eG)Hjq#sC2k5}vRK2_oS{PZ4nNJCt;cnNaAGBHET_ zz~=Xth^2|4`mzwKTm!JuM8y#(SnbnnlN6cEDQA)HSOeu8me_LOkV1+tF&sy#b}t6e zDV+$1T#@s>WFZU!46K;3YQ-k1f-@2tBUkf590&Ce&+Vb2xsmi(Bv=X$ST%)Z55#N~ z!a}V-=5m$)Y?4gg=ceLl@vGvCFZ5$TL#N;y)tVFv26PYts?>!~)`49z^6^AI15 zqAHTz_-wL03c-m#1qD_f!{JXg;mQd;m+(s{M_zTg@ETO(x^$1``gsN^3*}liKa)Y=drBkC$ zsIwt!VFk!b;%2}*;2i>`Sm?;+M96Il6eJpY-c$FAAH#Tf(v@ePUXQ6t0RqgpyfvU=mVh!(lZ3I$8npi zPYfE2r5u6PQ>c$v0T;*Ey9Cd=6FiATHy@oCb&@ECRs1tW5LyGKzi{UrAG|5Z1Ouc+ z4yzZ8l2$(xNfBS-zWyS1e5D+3sDGuqMtj^28i!%BT?GC&lIK`c5+5FrP{~nbc$x}222?KBiMUoyeUj?jQ)6OgZ)Hw3R|F3Mq>%i_dNrz5#I z=l9NHMf*+x4mgmHzvf*)q<`T?i3gXZkFs?Bi2YdNKkwohjvrgQ6JSkvJNvX=_^3Yu z_>om`g}zRk{=)!@^1%)+wEcYI1{E(SSsk@(1V&mchzV;G&Inx|=tPv~Mu$gC??I@P z_yzGN)#!QjMs((6P@0y3ZC5HK9!4ur{1hQ)h$yqH1nJEgxnm0NW1pL_E0yIVLml&% zcrgWN<-S)rQT&oJDpWoHwOud<0HwUIJgh;Du-=H_jy>|vPwXC1W%y$K7oe)YAlxgY zM{8TZmboxuqRfwqj==X#2AU0wCf7l*spejG%_F~u;8-{M(ksbm(&1t=b^ zaub#EYA6^_z`-jNQ@DhJPBFfY?k<~gOk#cDgl=R6Q1c_|E=|}J0D*wTGK(lj81MHR z@d0(z(V{_OtuO#aRf=I8yclC_;b20;nvID#;GO~lw|p*v&f7yR*tQ^Vx+?{)I|lr& z4BLV5exd_Gs)kI(oO2)YG3f3nb3T?b;){OjS_PtZ!U-w=u5XI+=Rgmhgm%NC=^T zDl)lfjI{HyMf=a~OgJg1Cnku*L5a@S84@OIZg$qDehwo5-xpk3bmG1ZrZYyAwS?dz z1}O$fmE8Mp>=NO04A6N(L5d)NE@q5*fLvaSHa?d! zx)hg-O2SElIbABES#d>5nA^-bS}H_e52j>bO$;*%vka_x8wRS=4~TS%U}urEMS(cq zRkn}D4YykwGp*=2_Re9%7%@6!B>m#pqs!?bJ{?$iK&K!bWf*E6%qcK5aPc{Xy=L7Y znaPw6Q zwLhEQCMLxC|~6clSlo&&Sn^9l?vt)5d!IkAgz2@HYz zl^YRc2%Oc^;*9-#z1)FO@H7$qG6BJNofW_(!?K;^DeqYL^Ab2gn0my~v~IOS8|BwD z=tiGqbM_7LHjWG~4nJf#;9X}xzg0$DV>oVunlmLaNMnhnR1j_;PuL2MV#M4LDlpQrR4Q{#0cO=w|r~{_FF|;IxW0h#fNy;P462 zfgKLy)Lo%zhRmy!j^T8LLKIvqzf?NKb;a|kT8`d~PL}b(j6#ot*gYL5a~Aj!pHNgp z(hF3sV#6RY6=y~OV1cp($+x1(WfHDhQ7t9Y%SJ@-_7t0rG9m#96$Mm)(q%j6PGU%R zqE%!W?CMl^BFdD)QdTsCy?~^g%AV3FhCYK&DkL~-BfMe>Uv|mJ#HeLFz#77X^0a`z z1V{xu1uKaGz!iTN)LQC405E@6(dG1%t+Q@Cz+&h`wmhYn^DxZ7;|Yb2Jm46@iV+@q zOG-6|4_7=TW+2A2cZ9`<8JwHV%Ew%CVy&@-9l+<*um~Yp#LMXl?6w6_(2!<<=W?r_ z8q+8k$LFzBg5cnx5(Jvekr<`NR`KErKW%t>8pwXegwpg%lb%0rZ4qv37|4~`~ci&L%uX|Q&?OAHE)pwv>^P%YexPik7yvwzZa13`x=13U^oOWLw}G0Ob7!`c$JGzkb}qh~63(WVka^ zUqEW5*yX(nQ$tshs|v_Kw0WrnSFAG;&Agm`1;t*Yc0iBeG(Oz zD&}O|cJ$bG(0D)d7_Q=gZQBMra`p$td1c~Yv#RJFbG8I`1hqN znWDNc#yU(wv+?k=5Ta$YB_i) z0V-e?y!P~IOO33~Rv(M~(*oEIyixILTm%*%H`Ulv`C_tGN{`dpB8`N;Z}s4Pkdd!q z*h{p6{(VD$>ch2O8l4#w-tI#l8sdG~osd`NpMfN`bS1fEm!{^dypqt&A! zSPMF*p$jTLVcnmdbdXbKrl92woTxROD60y(idT7}-hYiw(%Tcj#D6#)9ujSeZb>DB z0b28ys!1!=dM6}*Y^*ZUuS#c?*&C09x9FOfcCk;DjY}CU7!)M9>(ekvSX_nd%JTbY z9qSk~ut!|#{@{GmJ|_KPR%kwZ<$^t3j6ahB;1{H2cw8pw86&u-asc2gcLfl91*5pq zUS&--!%DZ)aKXu8>v8K)8oI^28nCP)p$TnBs$NUx)D=|w{rvqJIF7{k9!BC)Y`fCAxxT%w40_FKUnpr7KUR?ycFOogKM2Q8`|AgXoMIu*kSz(hIcTt8+}t@2S4 zvE&7-XA7<~LiA~`v-Ri**j?POq0-RP@{zT0|#e%w8l9wpZxNW3d!EZ#}cVhRUtvc6Jw8 z-bkp0RAQq$Xbo@}_$G&N`7hGBXx`d}iOItF-&GZaW4(`Pv7w*coPl)>9n^xypQU{U&tr6qi|a_b0#*MsKl{P0U6J=%0jAjR+S~2(?yl09$4%pl zLjWUr&efe`g7nXV9WxD2ls||nWoRtTTD5@`^sk)rj%@WBGq1+_Y(m+nN_-7NU!}PG zXAQLDai0F|$;EE@?J4JHn0+ZO;w#m=#bZ|dqWL4A_MC%5&-`(F>*ImGQ~68xzRK4J zo$()bO?m?8LP|!-he%~U2(7ianQtY?fxBx@dHUFND(VJg_pu*b$2v~vC*`eypY>!- zW6#e$;oV;uR|V~nqap208(k;~QQj`PB7ARF-1*0JSp4L80XaFe>|OdaOn5YE45o^; z*H@86LFgW3AVF&L+HPr$GA=x;{5Ann`+fXYW#dZ5tf%b^6m)Z5?pAAMRciigNWVHW zc~pwgo85nZt>HgnoLjMcp?C4B0eRvnah#*CvGZYB89Uc>_v0c+ePZ>15#hGkLmF+C z)dArvZBK$V4}{E<|Iiapj1Z`IF#f0jBa`1O>M!t%mDADLFXQjaDg>$h`u*5=Vfs2E zB%;(+qMg+U5^hl3*pZ9wilY*wypV4y++P)LWOCho!+v%th+N9hN9AC_-#xvZmFz8| zWMIN3lbxFOf&qTzk z+x}w5aA6x;IG?W=uQilUr;W?_Mk_cndZ+=?i$6f<7b(X5(Mq*xP{q;j85iIR7;#BP zx!>C1h0V?<^s$hCEqd3{X8o;!6Mu4j_c#5c?b`nsKIZ%zhl}wa4}7>u1DpmN&mOh7 zICAw0F^>lxM+JBFDMz2=W>rzA_<(%3#0pPi&_?%wzTPdYfHFw9tN6d3=G5F1q=ri= z>8#WlNMb?Y-vMh(HLh@0{?qP_l;1Jz!(;;s&Y!O7KJXaNHR(>+nvGqd8!mE{Ppb-M zT^>z-SK>M6A#xa=IhXKDNs>l)h{$y&SLT`xQFs@hPusIQ>*4e(PyYPn0`io0_e^YM zy0SS0%m&JWe&i;ofON=)eQh+nO=4scmuJgdN(DQBS(4%11$W{u8_{qARL7t015mb= zawCu;$}CFRylS?kdRav`e>eMeP2*Mh$!=ty^1qpuU<-R7hC4UGlSPA)f5?`NO`toF znntYLpg$ItAPmnwmmDtW35;E>ab=)}TMKzyi1ttrwsMOix@dTi4!rs3$=>ojSzXV&OJ&K;_ra58blunEhGsynOg5 zIO(f@;csL6YgR3K*)}O_1P(H0u@TMC!D(#f1;2n?iMjErGUk8ZUO>CN4{G&v$@d+yq?uWcvjlyJ2o%6m(ne8Bn5Qf zO%#idKdic%2Ix#t$lmR*1*;hPT8k zZ}*rqu7+p9MAWW7@eB?-6FrLyF6a@WaJO^x>F}V-|BZLTrmdmazwY>iH_MIzctH<| zMSg^LH3%g>iPgaFf=U_P&VmA6&4fs_bs~{CJ z#FmPBf@lEz&t-y8{c~haJe*ub-Dj>o$`(npU9L<~HgH-?c`Lz&vy3+4CS+4{0vWz} zRQMXqVdA}Pd)Qh}020;6z;{%Kc9XN zVFnmAh+U}8e8Gy={OG<2uGWA#F0cSszn_%nm)MYvG2$@y+EDz}^Z)Bm_Vrk=O-Wu5 z(~Pmp+Ndhd)lT7?zl*$oS{RiIA3X@B3;J7rjb7#-6yos>+{HyaV~^O<=uDZQ5k)Di zvHTB|6<^knuZ4G)$Fb!b({bH+A^7!~fu=Y=$H@`S&PVCGsXKQ5(%$Xo^Fpq~LfL)l z8JF{5tH@Si&G&`r$F$^GuRQG%3H}1%!(3}pyp{+X(=o|3c?w&wzl7Vnqv8w1fD0zZ zVPM7U*jspZgQnc)8)Czr5tFm#>Q?Q)wmC4ddoPh8Jy-mzd?eB@hacN5C+QnHxnF<$ zXU_h(`i^_dO&0Vu_rI`bqiVp9H5XK+|c~XA%y+E@}TV=N9h_FChBI z)1zH$llIrwJ25Rx*-K^cfK>)Zt~5GsaIGgi&v^fQi~B87D5v|`j=nLMGo7@PQ{!R9 zcEim|9Z=c-Qd;0%8hunr-LLHb5C6Q(J3{m`nTILX-0$C_{b^365ZyU3~tI#oOFM&;kjwBmg6Vo~r>4w%ELw-*_24 zZm3jMd3=;izG^lSC6(DR7dkJVCv6FsY3P zCP2kph{bZY!)cdL><2Tax?5gD-=(FiBTF1}4`+L%VZ$A`=V^{ zGFvRIO~Q+LZ6gTRi%;E5s~aLyP&^sCh9lZf^f%D)Gv{Q>S!717`g%8Ijn;aZTuK-9 zo?jRw9j5pZsENmaa)|uLv?7}y=3Cj~Vnkg@mU47EaLvg5{BlPTuYlEq5vDV^EpG08 z?~SvRDFk7S$FrpvIy)D=C>8UmY7|+0@NolYD8KkYP0Vul)1=m3Ex_LpE9}}n zfQ%UF;om;sb)UEB8O@df=R*^vn$Z@Q#Z~0|+xe}Pg43e*_o7ML|C2?T&Azp(tV7~D6{32R638Yx~ev(36}=FOs^ zP#0v9u`Y86x!ZpOoBnh*w)8qp%*~YtC}X1lV=58a&PmK2+`UNDJ}QR6`g8NesdvUmVsqbyX zWU+x`Rb^!|SB&)~C-?`jnPqYLc`ih#|1hm+EiMoewDc4S=JZ@(_Wm3ga>0^L84N26 zRL(eURj;a*!VAgbx5@V^nmb1w9450@%=3u?nO$3jU~3(BVQqjh`*O)!f@K*E?!dV^ z_o=iwE6CQB;NLAzvk-BOU1nH{ADkNkx!{Lre?pS&TC&+4`4)ct7a#A)>})L|+Sc=- zUTC@ZH3h(}?(2F_Wm4zz(IFym9o9&*WYF4(C4_RRSkvmroc)F6pgWN-QEe4j>9WDH{o#0t%6)Ok7&KN(&`wtqRDog~-D zbg_1Q3s>NTFJy3J^^Q`m+f%suU&ycy{Ng>~4+*|xO!6aVbtQo5+9_mm2Sf~>EiBDd z%E+Grxo_UOg~sTsyMK1Ajvg}3eZ90W?riq-b-*4_a8XK^MuF^4E2j4$FM@A9Ie-{g z)bp4|eI+*-3@5kjXx>S=1@qrLRBZ^+Mj(*8T%a)46nWldxtc|p^iGk3Ze6D%@8 z0Z4Jx-%8qqKA^LDRl$}G{FZ6CGZ@k!cI z4uAsz)a_wXJ(!*NQ<~mF!h*ONp*{NcO|mga!F2 zDCpXk@Gj)^0ITb2bg$+GE{M<%>vkd8U3Ky*wu3}A#m#Hcl4S)!dgNEbyl~vdk*tG9;FPzS-^-K=WT!z2kBv6j<;C&7r8SvpGtez3 zvLLAbl{^Iue)1z=H3V6C`m*`TRC(JKl2r9qT#adTK4DT;ykXq-3!c~0&C%V3{r%(a zsPX6iPBv-Vs{V)nKbQnqP~b>DlIj{Hyv&CxHjPZ(uwz4@571DS*T;m-KCEIjAjIVx z-JWN-jX9316&~{5J#!O(VFzjE8lNHSaAjpR$&ryIE-Nxu0Q!G_dNtpD07E_iiAk!L0-P+bmM8yDPdRY}uQ>xp1B5>^rd8ILxw^c9zPTCyvZygt@!)AVp{C2g zPb^ZNdQZd5$8$5`->Xg0@I^@)w>=kZx7fIRos_3 zfn96=EEw|a8__48670LNmE2z4`_=Z&R^xwh4=AK!FNOb9*GYZHncA-!LD&hsveWgSXpt`O29cMPc=3p6A?WDe>R~oAXf|Xq$wNJV#RsRJK&Dz(F*gpU? zVE71ms4tw2*-kc(BhP1|3l4TgQuw962usd}b<$3Qv)P}nVPPLAQ#P?;Z!ADD7h@8I zq-TYWKb5CW(eVGC21SHNeM*WjnmH!w*k_>&xxn4Wvo$kSDqH_1C`>FW)OsaBDPkEN zu9wWRSS{Vm=5L}u?TB1W{`H-}ltHhKGZH%%@+TXJ4%=v5{Tf|ESw8nVk^kq<^pLUuiho z#ZrqjtZUwAu5Np0y8DnrbXrUbPy}k9L)vq@0pmAIEp*j>Rq=PsN{cQrZqMkGX2udX zF%0fn{8v>7i(`=K@98&eRt5VH?FzQC`m}jK)?SQ$VpJ!y(a=mjSbh9a|LA$? z|Mj16*4jk#t{mHpa|}CcHR5-Is@hLS^mlpF#BQF!MzIW)NF)zlbmG!p&1W z+z+jjT9sug>K+sSaCWk@*aJ6P(@Gf7?VC$$I!I2 zG6RIy!f#cAHF_TS$kNoTaLSIhoF2XMy!G2ilZu|CBW+_dfj01Tjy|?{HxD|ew2CPH z7*UbJc)t-$UwQD?zf%pSw6_y*bCb($2OM%ZN+;-fVjjz6w{qHbepW_d6kItF*_d-p ztW;>RQ{W}C+W@L@b8No*y;ya3+j`BWAh9&h=)75QYbB*5$Jf4z-sj0F$2|W{Y;kTA zWpb9wU94_Zze~pPHbfkz_&+=|8Ug+dS^eL z_&E6jkuLWwKo@-F@VmQh7860L=EMALiGJ0Q8^Wj-yTsZo9_ zQ?xGN-b5KxI>gsY;gM0Sl4Zf`IwqiH>G&H2(xTAtFI9%Mk(%)eY%Zy{M+}5^dN*bv zF4R7OpiJok*uo2remrya?uEVgg5#&!U-?_iQQK;r{4u1)`A=g%Q&QlVR^S)xmXjLr zY8%eU%rr^I0#PWlVB<4vZ-b~Efo1%>7eHQ3cQw2KJ3>q=Q`zPM1mkHE zfSkZU(L7NJ9D6c-BiA3h?u02Y@w#vh>_S%h?W^=0*`C-CO=PsF%D%i1h3y{mG7X-| zZhGJE2q|01H3Z-G+JJniGfasoKVpEHJ$sC1;hT@Ycd?dEnBXL@iPCtHh7xhyp;( z8^O`4mpB^tVNFnt%il} zH%5CkS@%2sK8nX6J)0-OnN&~YII$>0#)oBv_S!dxhvhhgo0T-@BeF;Nlpa}ij z1p$y``Rwb?8%X8t5#=CKaAn6PTIjQ^&!9KMJ*NQ?>OCvnx&G`h8EmQlN_UxlU02=z z6i~7G^UMjfMCd2V#@IXRU}`pX6W<=CGci9w{8Cw;#5((Ik!Z}q9>yO{oGdIhWViyJ z^1%qvJbvW*7P3aA_0r}@hHUb+8~Meg zX&8t+o6OU-BdMCX-+7#T6+tQUgY==gvL10u$TI3bnTn8iTAr&ECF(bHIbStCttZ*5 z)9-6-&*s4QuM{Th7fpRL#(*@0ohMEK1=gw0dB$JXiVB|0hKdlvb((3l2BCAn3)%9J zf|t^r-meY|qp4^KCmPGhSWacR7;Khn^PRN#``CV2fYI!4wnF!`eH~Jb#B|7q{fn6y zz`^g%fJxCf)UcdsiVJV0x5X=%P_SPNh8@!nQrF+*W>S2#KE!2bC&^8QU(}MCZUs)f z^k{NYD8Vxd>ZW^^b*?shE){C@B!0yi2$JKT?j8}$!zJFPQrHH*oK`Y&3{92LCYIP! zCB}-29o|o{6KjSV3D8U+nv0{8zpCWGKh~_5%+uq-+dgcHx!_a}k_40w^9jXVOddnI zr(6AL|KR0=-vpx``-AYA+*?f=d8&gM|K9A zi2KRZ=;sYAtk*;r#xwSrMMTNz*_2YI$Loarya?9!FYoGa#Zn^}CtLW+QbaVfxg5rq zz}U&osA_@X{uF5;P3IoWfGlzI>*8DY(+Y@nJqm6W;$;2z9c^A zg-$bmAudu1Xtl%PCOApJG!p|&&?s3MnTenw`#kYuu9g>+{9Hb4_&|r58GY3$`qPCT zq!B~Xw#|S7G=)UF5I~8er+Z~KUVyLnpHKBA&FgcxkcR$6vsVDXOlh_atA;rU;zi(c zn9HhZu2W8vQ?a7AtXk8sz6uC2dtyyU&aqJ>Vq&suC7%`~Puq&?gHu%g@K01p* z?aDujMoj5^_MR<`oauCyPnvrl8PnauFT5EwY#No`nJ^`@UhDy-5}8IV!Gf7Dz>`6D zz8_hxN2hiiND>015n`)JRL4o27yDBnRjXhCJ4fE;!e=u;K=()}>ZK%VcG3vIkC5Rs zFXkn$MCWL4x{5rSdEPKkk*HECkHOZk@}*Vq_NhY~Vf(>6S(p~ZEco0Qi2nsC*vpQR zrKOCYPbx^X7gmzkU)Ok!seK9%@<#AniTuUhC*N4&O(H&Vm0D0<^4(U7Qw)OL$W_r2 z-L&F{yYM`ap)i9a4ay1Aic%%>DGfOt8o$UA&mi%fEjV9@e!lFc zVC=Dt!eAx1cg_|{?&It;;qDnBS=5az$WPt>6aZYoYMyJ+$FuI4x;H75%2;Upj($Y$i?AA>p6 zA++i5csFB^gb{G&IhTP$KsA5r_4)dl=)(YwdQgQrpI$!PKO7!Y|H}Q49Jk!%$?2{| zVTXZN0&V&j+EpFvmP8(%MVa9~^QWNs%pHxZdXOxC?;297CMY_$dlCktN>yW8?SS{* zpI%4LJW3d>vJoc>r@D4tug^fHL~*=(9S@!N`>&(X*gf8{=W&M>R%U@@E`6CqPUofG zFq395X)Zmb)^Y#8d`$mSMv&3RXhhB}C&E$&f#B8&WNx_^g*jTD|DUr$c*S|l#LhQ{ z|A)4L4Ou_)kW0gcs81nRq%fD~pO4NV93LGl8~(2(ps@JtW0sAQq>B_QRS<+EB)3ba zAYA3tou3~Sbb+5qu&sqS-jwp^Rinuj`BpOjd19*wzC3<=H*weT(@7zgh#ngrtfIhV z#(@3^yS$|-c%Z}zs;v-@#4|aB$es(g*C6#T^Sl$-fh12LU`h)2(XmZ3wLF`f=-}t9 zK7Bsir0hzF09wPH$ap&ASy1EqSM^<(@du}jKE_SKwOT;nR2Bod5+y`lN6!KX=5n1p zG{tj_T=07KEV2?2JBOeeP9e8MrWla2wE;4B@$FPFa@oFuFjTet(4WxQ<@AG4aolM) zm_fMkj{ZQO|F_X&($}!2zic{mG_Z8AQ;<3Z8}Z2Q1QN<8tYICG3=}|KzRU_bG_$u? z(b_C#kyBmQ&8?+6MXnT&IPbYrVrzY$rP%f?pDP+pR+e0jgjt^ueSt!dPscAK=2PEy zn0Y#=m-sPMo7l|_WCf}*aE&Wj94izsl+Zh6w@DSH7Bc@GtE(8z={GxrYV?_>Tg}OMdq=$<`zF=4h21a`B=~i#4ozya-;OtC|`8vAA5gIt)-Ft%_^AEKh2iRJtykR@SbV z9JYWFbz_zE)2HJrX#5+;vO&9oEmSJ-3HkUX7G=pL+dzT6F^?Cwq)l#e=9qkm5J~i5 ze$QFElG1ZoCk>w_OHpQWEr^+NPB4vFHV=WGcxv(kk)F(ma6~0_d$DCZ5K_$qIeMBe zrDNW~2pf5~0EybZHY#!{?Vlj6W>ZYrgp%%iN#^ESdHfq!H79T#nV*r%0fm{0mDzHs zQCY-p{x%6Lk4<-(s3#;k^dlGAxJ5` z?%nCwkuQ1fVQEx}o-B;fTDYCF6Pj5FL3cj^i{a|l-JNC~5+p(3aeI99opa6u?X%`9 zdTnpNP)YsQ4ttO&zs^{Y?c1%rnAM7&%jzX@6S&Z8E#s-Ko#)Xg?9YyoVTLjgU%gDS z(NF7K74YBYjqwJqygijtASa&zp3idm)95)T-y{ca%b0DQnC9Kq!Cm8E{Qog^)nQd_ zPy2M!-Jl{MDt7B8#lY@v?Cw6@c6a`+eZ95_Dj;@uiwdYnOZRu?J^u0WJlFTmthHv% znt5mT=5WqFuK$#zN#EM%yZ#tmSST#ZD65jnszrGc%f~EpvqJ=yk8RbJm#2R%EtJ&f zR#@%eqOCoN(* zOA2i`{+922|1^$OCrHcpt1Es{@+Y&dsj%GB)wkU8^FYF9u<}kwl(F5UR%C>rMjrSi?0j2^rqCE-8}ajr?Ra3uhUTh zmREMGGRxR4eg}6dFR(mI!}5IHx<)qMMY#?IBHus7FN7@1n~Ge%J6OJFu;fp5fSaSF zSZaB$&jUW+qtx=8_s>@?Uo~L)f*+UcdRtF%C5y-RclhIP>)_Ou)xK@%6Hj}Qo71a@ zrG@SlarF{`gY5^qs&8FuEssv-h-B{tqO5>FHI}dO@Gof8oO46$Cw8!_=wACPpuD22 zCcQYz^GAb{FP+o*((30m^_Jhn8@lj3Eib85aY9}^&+~Su4=b}!C^aX)x9y*=LZP4K zgBX3kJ`c1lDr{o;TtIzMQ_B}xE zKa@TUet*1@m0|PdccyKj_fMPbX2pe)g72(av8>YOC(of{Mtzxwz{8Se!K>2j>MG0U z#VnL|bTO3tA7^QaPq$Amwl=C7IHlu+cm-654uO4=D zs?89VS>Ds^oEhA;va+e=5w-OdyjHgEygJ7}RS~6i=Y^IhNR&$|ERPDdElcORTArp_ zEUcBdUazaNFRJ6ZW&iJ$V@0W_<-vqiQU}W|gt)-XC9i?h%O<3@&&bN>UiOtvPS0M~ zaO6l4Tg9-_jnDfDPlW&5kZ@@WQN%hUE6*9{M3zc27@Dyp)n{+9El z_D{7Nk73a-0+l!1xNXaXzjKBZMHV=$wLJH&R#q8RktYjwxh(i9b`R&?DRV6;`SH83 zC@b{SyHBq_HZzoF+K3zFIhDla7fAkmD*7sNt``4f1$%uf$!<_=xyqI~iAsNFXG<#H zl~uS(9ZQ8p{Es1=cAv_tI2|9R7gzr9_i(bcbnLEe{`=93m36n|cP6K~uw3TtWO?*raY>+SeUp0EydPDz`MG{lx7V_^ z)#W2U%7#k4J*sZ7?sEd$REXWGMfHWbziUb>i|yR~9UO}vaD1v-XFU|wl*c^Z*U;|g zFPri^wPj6n8h6d9u>77S_7ZZsI(d~A*_IT$|1No8!{^zT`@D3JRoCR#TH3s?<(v7c z1Q{QNRW=2DL6hH=-(96Y{4>1r{2X}B+*+qnZ`)#5fs2nP%e|rHH&IuCoAb99rLP-h za78i!NA$s={F@!GtVSl|S3GrcF7~i|WSZ|7SlmqHbk4!G#_~v`#+CQ|vP()G>Px@z zeo6~coNC2(1>fo_pGX8DJf25(si>r`>4!HTeVV-Tuzc{pxS%M{$L9MdC#f%|xS*-v zt({ZRpNToS^^U)S*p|=a7UkNtV7a?LDCJvTgLScdQDtLE-P=sB4mNI_ypP2tHU-sg ztbiJ6OP;v&ikH~(`ycC9!y?y0hXrMlN_K0Y7U#Xs%Bimi zPe>_w_|sQsdBjwWeMZ}o4!OBP%crzUEst)se4R#M^B)CoJ*(}@U;MGn|CyarE3x@) zd6vJ#F~2s?=}DkC^qb}DReZkX7UWmRTm*J)oXYJ>uNAZs`{!_lY&@r1P@^_-VQLDe;7U1Z)4Lbv;69@UZ$>cjXBmT#uYv-c|e^U?BRq9v^_yzJ_2vMVZnG<3ADw5@ck z`o+z&P3MaPvN=_f4P}10HeYHT9NqFPe<+fAzG>{@A$8?Q+S=y3`W3WsfBCWQy<@I( zft%%bf6IgL3POaI=if@XUf=B-m-|ZiwOm)bK%Rr_o1agKZR6U8bzdESXXIuJveTtm zet+sM&u_J_D6o7t0!Q4KRpFbPQU1r)Bk$Lzda>ovEcT5GO7gz>3hRG)h=N?pv)nj^ zuHxKmQBHonINPbR#`2vptj3-tmdDT(h)evOyxFcCHz~U?J;=wi-l^!<&w|D^SibvEKwj*$SNvvlzMyn*yj0Xe#-K&e9udkbD6XM+Dbcr%M(o;-1F?J zMG{+^YN?~AIQz4-uC(k&?#CoYS*1&;ID;+BXISyblgQC00)lwMM1 z|INeW$#=_>S)DBpmk6wO%(ij+Q)T-$@4H>Kv?foSS?^w+^VRY&{UK4j*i$)|n9Nhr z`q12KjLN21e`{Ydvx#3{d$c-%32wW6U6T3=BQf6Jxw9aN`Q2ksNSDz`Otb9PVS_`i zGo1(DT=?StO=jKLP2WR8Z!mj27S2t$d6h{lj=!|($_-}Lt|hLHBd;*}u&r(`?-Cf{ z%}~R=Zr7N4mTIck%|vEn@cve!E(y$niepEz?jF9qrP?9 zw)Hl1ATeJ0C^Ch4v+CmHxm%K$Q~i%LJ7ar|8G9llHSv2A6R`XOi|KWPN$>5wyJ0~p zGvsn$%WujgMpdtEenNVSS^sKE!?i=MGv9|y@yY6u#^koKpQq`W#6&;6l{2_&0<*iH z=jOcGHcF^7`p1Rd&rovFLct3TN&nfdB>dS|0?NzB+~t$OY*NoCd+ zJUTY2?+s@8)+tv`h_5rdZBpbHF5h7sqF?m7Tym3Hw1I8D5O;&QFl2oA_PAu`sJ6Z; zeE)T3OFzd^pAX$-R@p81y&)})d6Rl{dHYSbn5cgbg$2I6%#?h&UsfeZWFp;{?+D*> zjoCc+QnLI*GPBx7w&BRYS`hABHXKuLGyMG#!`sI3{$?-0e=G126x~Th1$lhmZPa38& zo%a;x#0*Pgnr2;D9Ni~{xmP~n&w>+4%-*b1SrN@|F)ufaXj3)$E+dtTg8Mao$XppQ z>gt~uCMpOZE4Kzro)?0+;oST-m&w$l;vqm>EN4H z6dEhgZAjZ@Q>cbK{#m&$Hl zzQnAGnz*i+$7Mz%JACxq>||!d$nj^N^}N80TzPZ+tnt^F|BlYP?4EIf**LG+G_}(O z#>Ue(@6GFrOhLCkvPUm2GO3d%>=-)rGV@lydF{x}SD1l5hdW0ezrxJx+^*H84p*4A zHXm1x@x8?4f1NeVaoRN|+WFq^`HwC$50{R+(`xiJra0%SZI?+Gm=&w0ew}^kD)Xr5 zrA+T~k!f(ds%rQDE-~EvqCxY2U1H|z4#hkBTw$8{)e6kUt4!@v&%o`@7n$WF=50IJ zDVez%S~lm{?emPb-S532mi%_NJo&KOhnq|V+vzd;+9k%;v*nr4F3C)~-RsYBhb}Th z(p;1KWM5zo?H)9>%H}$w-0U+ndHW4!=r~nef8S(gAClKuGi@_#>33-)^^D?M%#Z>Nt27o%!;ZbT`q}kG6PwOeGYuP$?!kr%c^%= zV9tb3_53&I2J^)$Q+e&n6{bVE;kd~si8<$b=}FUG$;_LrneQAEuQL}`)*suJaf7+J ze>OYveJb;*r@mk3;#8*k>Dr*WZMT?+M=NYgQeht|W=?lX#0^8ojuY-anP`l+E#CUrlDBWB+UA6_LVBKf2fRX`!XQ z>Xx3^+2RhvnqhzcXx(k5tSCEp=jCMPWOTRYKgZl+=KPq$Y;#Uw;xm;WTa3TOwD^$j zy(;`J=!GSBx4{L*KnF~O4t+WR}DFds+dUT&ZJmiutv{x_JEXkFs-gDK3lYd25(+)HK7zU-j* zy#6{@qE zFKpK)E`C|Zc5w^npZH~MTej-ga#G7N5tc=hoh`q_hxoG6E&spt##)AqTK<=5!n$mE z;$;KN|FV*W^e-z^ZVznw7f+k4@)oldf2^}&$a*U_+hE1Gzqs@-n*QS6zqs!&p8kvH z4p`UO{*|Zp!?vuwPp$f;e=+Vay7aY}FX zJN?j#roVPWo>=8(=~iU*x30HFX0qkmB)Rf3%VS|J4~At;MTq#UBFl@XES8w1^CFb6 zykvw@`34t4nLG~jY~)9PwyZqMiybVMvpfOoTrA%ML9#20gLUq#>y&$zhkO?H@njWS zzHgSr@{%vNd>ov`@|L&9d>__p=zZl2EMFJFV)@A}pL4MM1jrx2^#<~Gu-A~4hWU-< zXCMd3-@>n8c{hKW-z1#=WwDyen_6!Rc{LP;MjKiirxMt%_fbeC^}omlxk*y$mc!+uZsQ4P)O zm3$(au(x~){EU;2?m%)Mc^1_VtFK&*c=eMv8boq`d3V?uAis`y4wPpuBK;7St|8%2 z*0ITi!;%ML{c!nqN0LXd2KW<>l)r|ZQSyAmeKc!GJJOGlFKACVmSyKhI8J_T8sT_( zJ;o=<8zGMqSu2N=ev&+70O4eL`Vhh?ESn94@yU1R6Hb-SA4oWjbrt?kXI(+z&X6Aj zuV%_sh}SGug_7pYmRI-?&XK=rOgNV{WESB(`K~sE^W`m?6D|ms!S97EFU(&gcSIf+ z%MT!aOXaJZ(!6D?D8ysA{CPK$SFkM43bFjG3|E2&t61ZJt63*7zDB;wm&Vt!^5O^; z$?d2Wv6S+LL4+z+3C^o#v3rxOk$-DKsFf$n33YOHETLY$9lSKilY5eEl<%M~-(s2M zrP$w`JlvJ!b@KBegzM#vaIOuk;Ql0UlE1<^Hp_jmevACmGSY9Ab9IE?3kyxh+UL_80KcLARdhWEw!4za{D$o^sZ zY!AXCtagawQC7()lK){1LY$7tV_@$%YcqIsf^}>rjh|%QSweV9ezphUY1W`&glAaW zq5oGNh`gR95J}V|}7LE0W|S)|JkL*X2C;dxI5-xZY$vTSfY0`C{-qh4m8Wz9o;v`rE7m z#On^L`(T=PSN;tC-(#7;@B6GY`1gQi6Hem~<>?NDkL3IHgpcLv3kaXED*Xwcvf7|7 zpRxX3OS0virl_BntbM49SFB6Uq<_t_13%udKD8kEEo%V!!+ZIP?j(PZZ^Ah~%BA4f zC)T`R(tlwC5rn0zC&+6VE3g;I<*ZBKX9dg4pX5sUa`3r|l_em# znw3fS0IVAMW7K^utBn)Mb#fl+v7U7kb-_w`kNwyYgJNi$qtLb_`h}mJVBVmu7Nb6DZy<>_EDSw z|9m5!p|1QDR~ga=u(yN94cNTVBsXNMIuJHuOXY-t>^g74#)_lhN08zGconQLBR?VR zt#TS~l45yIq2(u(eRdIHQ$=sobu;#bek6w}q7m;FY?n}yTPpU$-&XA2*sl$HF6z52 zyV-aeZ^xcEiLgC;I(XJW(Fc6&$ex5ac2YD!d^)q2YH3~US z#m2$F>HTl!m*0QsHbu4MAX@M#eCSE zpm4zXC$g8Jt|qbjqmN8h^vC{F*!OUrcttL*_fy&bpgyLt)sUyN=V-|O40Z;1I8$*K z`Jcs}hkBT;s73teuv0L9Zp0?|KaYK5B(0ktk%M?FVE0v$ypX*NxG18VAIXc^3FvoA z*h`S_rEDX3uuL%-{9evJj`*!$_u4@7S1P_CFRK(;sJGSZ8|V*f6fNQ3TDBS2GdcSx z;-FBRN8FU`{otXBebAQds1+lzUZc1w^(8Atfwj1j32%7`Hk1FyZ|4$(RfB#`m0&k8f1_qPe<7@%epHLite+E&tFE# zQWY`S?-qMof6}M1H@XtuX8R(~ci1zL|GSF2i%EYk;)aCqKKnfS!2|Y(sU$yCq=3hd z6!tAhe$2jzI6YCME+qLmdo<$sLg4~GUMg-kApI+a!h!I$A|{gX4f|XN!nf>j@baDF zIpX}DeINULV0YHj_(!&PXTnd45y;zT#W(beFYKv}NuRE`2mimaPvV^4B4#xs{dYy% zE`%BE9Gp8-Q35+zY%%Ke2fL34jsH}fLcD*mrv;Lntyl!U{$@LYpE)VI-lWfEPeR?~ zDKdfi?D05%fkJ`&6telPXNUi{?v|4Du;eokPswVVO z26rO#R_1_*KAfSGN%mF#59jn#=4>F@UpX0lB|!NWd1|Ok$9+U2&W~0!9>@tpeKh7| zBA!9YofAnPqMQ{?*hKj+_!G)W0iT+3cKMUOIj4&|VVE)u_0&SS3UO+gx(9r1#W{hz zwN_q29NH*Hpw8QJjEGmeRBz5Mpqb5f9x2u^5w(nl(rob&ithK=NFU9sHliG5e4_pEGJT z;Q~$-;<%7gHk0HquUyoCJHT zB74LB8V(P2yjHmp{>nMy=F&WcvIY8)lJj3*l2ytWoL8;vg!<4ZgTWiE@-=v=y@^UH*lJcqw$T(5wNpKxe#@|S?P~_Y~fU( zPPcMS_|d#=oZH~_c4aE+d?#n>7}D=jovns4~}xuVfTL=8S?Xwasv2zOqmM5k8`e~u1+YAwxe|? zIUBIgY314ZB%k5*!~Xv&RfywR<;k_A|Bs_yOn6Qij&q$?z6UQaaQ--w{-Uxkcyfue z6xWr@k(F3~McE0wyvhkfUrkWX4yXCoIE}jzCUUN{B241AuOz&|nY)PaCdU);PUa+{ zkEU=6N02^M*(Q|m7H7dQ!ZeN#`u1(5a~G2DD1(7_BgewtJx(ar-{%Cy()a_;Ipp;r z#|`mJL^$YajJ-ZcJ%a|CgF#>sXj`MGilc=bYg2=iVlS0PWYIKyH0wXzZV=^IWh z^758*0sMIvnUC|m=N!d3J}AfbBzqq@I}rCz%C;j({;XV#zV?Nqg+5)`Lr(gyoZhhe zO=&lYx<<|r58oVm&^@g(PQ z(&Gs8l^weh7ATK`mxUb8G?I%s(;5(#a1NsHl`0hs$z_~xO2P`xC-AkBGYNL8l|iVd z8qP$-qn0ycHO;Hz+{bvm(hKuh-0{AoXLDzwFLSuV+mOtSdfu9l$Gtdl&yE6od^`Q{{w>RQcdrpsHpO$&FR!K*Au^ zD%|e{tNN`VIYf09_0xpwg1TxNRe?UzOce*-H0N5cGhw%`A&xCnQ#;VQmbaXT5VpRx zqa$G(?r7}ORy7xSZKrD7hxF~ak&_5JaHZgTNA3c|u@iTrko29o*4H1pa9OCUuBwD6 z(sxr$b0K87Mw~N3RgL^aa;M<@QQR@;TQRBy$a8nq8{{LFYaB!CdT^`2%bwhF^wD12 zmO9e+<_5w}oNBip$$eDAaPGdU!{}%IxFaCUmy z2)94#U?_L0n)Jg|emL)N)fhLDM{;Z15RT#=>qnrZ@gG+p(69O-9p zr()lksvn5Mtf*$->ulBg72xFbY_$5p0C!V}yP;e;o-zo!$P zQhi%NcvkfSedt`&7u4-}RVD0P;7XB)i>lo?_a*Mx4K)9<>d!pFE2>xE$5rlg)OiAT z26&sOas*$JR9zd;yzAUMsK*;BJLKu6$`<=4b6va9c#3N0D8f{(R7rS?yAF9wQ=LG3 zZ*#ZcJa@Pwz_YvDW3Y2il>oaBR12~0A-Cs3TK`D36?OMSH41({N|?#*F_$ol8-n=%ywx1} z`o$fL^JjAxVxQmK9mrP>HwJZ_%QeN*x;)h@#5rHJ2AJu*6i@8bY zYb7dM_+QE$jd+!FM?hZ@^*n;?RdQbo2&=elk?(5mSH!sm!O zKwoIBF2(vb>f_*RTb?`oZpY*J)4cXP&3wWRJRk6`qdF>(gJa<U=0~uAJmyywfC z@i<;D#C5#-d>fiSkv9%FNj(cZovc2vlJry53h*#qJtmywsk|B3e;V%|;y*pD5b>PB zJAw5xd55w8EFKqpoSim#Fs+-T{si97>$8~Q3ueF@?3)3DWK8w_! z!JEbEZ~aNXMC}1SE#I__ej`6<6l6;)kAG|xks{@Zu@}443r_y?&j!vtK zu>N0Oq#MouPyGh@KgYX@Je}ux`IG(v?>PF`MfE1c`;z*dGwCn$j-!8F<$Z=<3F@w1 zq`$_y4Sk||A@ZE04jD!I>*}ZA%MEp#H6$nVLKwmn^{;V+sp|j0$6M+^>g7Bf*OHTMm{R8_w=C#(4{FHYIaeK~t zi1WQrhr<5L=yM}z{1wj&c3<S!;e%|xC;9MWnM-kVL(L>OezNkN- zucY(VPoeo=d8@#~Z|Y{?>38+Aj-<~}e?p!z)mdRAXQ}NX34f?dk%ynr7s2CS>Ui)l zTkVPX{N`!mXkHGl0nVSxYlV4vyq7pfJ}(ozF5pc@pD0w%fxks+;WAqHM;!zIiq(^G zz7q9*_+84&>Q3WjyocaRx!N83R75v#Px?xp3+kXIItl*Qs;}a{sE+p)`KwpA2VX63 zfB{e0{HNe8hu;Eza{0YO$PSNh13h1(g};IrPt>)LAKjY9MVjzMgkpX!`in%<7WSq5 zhUjxLey?FPZll?OxY+XV!LFTV7W$uqX5}gxcjRAzoaMGU(*ij0yH-8vw>zQ z_Gzdo1aBJg_n^)KHDTd2zcD`;=MK`ejwd;oubf2~!hZ{UO*HFglN`#IA&yNoja*1> zrdfcxZLYb7{loar!P6ERhs8ABQWL$Fu$AU3>Z~BlQJVdT zYcyYi{v8w39_Q<>8R|>pv6|K3T@Svs5BAhd0Uvv5VqmAYrYq_%PP1|y&F`amhq(3S z%Z8KO?{6Oa^G~DS4&XD$`#^p$`okd2Z}4)krT}(^X#(2Oy5XA9us4Dq0Dg?*XCmLD z_%FftvHZh`_c)CW>TtZq9oO9n8V~g4i5h8NvNMTai8xN?|2vK3Dg1V=2;=!lh|^Sl zP(zZZ@eg+)oS`WMZ)Wlbx|2MMZ@piety$fT-Ro>RSe1dHJU+$2Q+2i{XtC~ z@_bm+0`WM)Uty&2qkIwk|DPtlC&~ZtQymG9X++5PaZRHLl22#`j3zwAKe>kRG=CZT z^_iF^ElB=XV~@H!tNFQ*z-4 zafNTaf4<7+q23Z=CiS3s*ZA&`6Zr-3BT2)@d6PA^;CYHh5K8k>`Eu~;7JobJr}35H zq`$4{hxvE-EIG+{HQiBP_ilfH-}m_(j|Iphk?H@{?_+Pei{1rtC*RH|7-p=#F(v zQ6DuL8S1{4pVffY)oI=%ZuOei6G>)ioxlTj_o>JOM=%I}a<3{axwVjroXJ^Ybruk@mE8$loNz*c)1akbN~K>gTjPr#=p{%& z{JjP4h`*1v2K@2WhWXRDpCB3W2@oU=CAooMHTqIR?Ydbc2Wkf(ZjH5p=wCtFXsi#` zhM`_VwCTu06RiU4LbZe7UsJ(+^s#1wZm`o_JDMSTVOl3Y!WP;=8p4(WFT}Z(_7tug zt+oAZN#91xLO*INSPyL1eMkq=x7W515_S+cG$!mQSdIGWB>3Ept5J>O|N>dk6K_Q#*e+ z$-T6(;BRm3o%STh2|ghneY8=CV_(5MuBi1QWrp!GcSu{~_9)ooW40 z?K1=6FhRsp!r|IWINu0?5Bk7JZG{KvM`_oF5{}jiS`&^D$OjUR71YDdIPDAYVZ7FJ z1nDPelMtVY+HCZrN!s?~NIzMiLm!(W;DLYff}P;qRIM?F#-|BR0;g+h;QtJP6YS2^ zx^$!QS%RnF#cZwh_t!bvS*ZKD-5(=v^R!I@Y2JKor$&SewAtYQLTv={vq;bk=US}Q zwxIDP+JtbzrP`M0v&*z+f=OPkosE95LVF7FTq#%#zgGzYajwQo_^6i#}jU>E95qaBJk>9vo*KZ76vc1!~6eS^7s1@gL1upjliUeF2G?G0LctlKC! zI*ROV(tbl6HiNA!))qk>__ggdk;8whs_CZI3x(*Br4@*eFV z;9l(!_`Oe?iTE85Xx7pALG62-`;gXo0?CK}^7n|~G2(DkP>%8c37V{>@qYx?`-)@Q z;5j58*S@sY=3I+Cn*Dn&3D3>TPWi`r93?2Ismfkf6@* zY3rNNy!(RUm4pwpvys1tcRDvC`H{d4{CF&QjdMQ{q{9EFg2%|iGi@R2;kn=xc=AH~ z5qx+l7>anl)?P;)zY#pc`QB<@gE#L4kEf9R_uAp$$p>vb>gJ>Na17}`30e;!{M>!t zWWq0k6!eXBfd=!w3Ph-F8G4{RcM7hNUqcd$_c9kN#I$vHW64Oc!W6C3WAX5I_=$fnpdyg z0Y0&Wncy#5cYQSJxw;l6LY{CO&db+rL?007MuHDQVZZS-E{Y9D-o(O0>@O7_K);j; zj{0;3I|!ALWXDnW9Q<(-aWyoF2vt@9CT(AWKSolw^Sx{nxdAd~?c={$`zFHmQ#i^jTF zIB(EhNk`HL>r@K}Lv%7f!Y0C2T?w1%63|bZ3-iIBFySBMuca^t=Wivv3?8)>{#i!z z+X^M9w|2UX;8S~{2>rH$ZW`jyQP@OI^E%z_0X}!uP3lH+7vcKxgk5zFu)dpc29VLY zAP(Wegh4bOA?&x3Ffvwvx{A_$MSP-#)_RW7J@lvX?z+CnU+mxW_7ollAA1QWsc5{n z@GSg}(`}0&xsPr%c+*$-eJ08Mbq4TcpfI5e$%BObao)kPy`xDUqH72LhYIamkvvTI z9{p&zkb~>`2w@-OccktP`qe1i?{JzoT6j)OI7W8|c^@l0i@1){^@5!V!Y_+xe4>s8 z{!S8Z3MF~6ZVj%_Q-p1i|Mh0lf6sAC8&$by7~P`z9M`H-dz<2gO3S9>+4+CbSGsro~TR2K1sqP z*u5?cL)>rZE+a2Db&rB*Ub4>7n=nPU0{*4yrq3ezmT-ZbFikji9pUZR53qMfc*lk0 zyE-xK-4jNFpZ9fdb)-BV#_@cfx@9_r$G>=j#@|3c?AituIZ z81UwmZW!w1weTM~>E8%#kk7Zm&fwuY;S~X!X(0u`q zD|HU&*VVdo^wApO55%uFHVFIH3povFJxerCLcrD+tRUowd~pu0zQjZ_U;k)1p+GbQ z{1A$^!4HvWO91J`qI%eqh&Jg-mg;w4olIn{D;tqxGt%4Yvqux!>3<>K_WGlc9rS;2 z4o7|UL>hM%m8>Fk5p{)KSCIj-n`kn4>aMRvygfwE!AnokVdTq8v>5w)i#B7vkA5=x zlCLNeeDD)xwIRFy`je9h1N8TB-D;rk?@e+;(Mhatq!)}PIZ*Tza^rhF5tktSc^}dT zi}Jv?5K(*ZqlrE}iu9qP>&RPE(ep_pHy3s3Kp3Wv>_*r^e+~MKhXg2x4(V_<`2+EgKq;xv*T#pApHg8XRycwUJunrV!vU3&po`yIrQTZ`bs0s zA1Ue=NH|LLxhvslkqC7*MwEc@vHI=9Nk2|s0Ds2ob76OazIGPrCy8DoPw}FYb4Z@r zBN_c|T92RTo6|*F;0*mW@PDR$$$XkOOY|0ToGnU%evW7n_%c_2brFrv(`Ul|e0?5x zxIpg&{x1|cYH56tem(NESmX_ROGE=u4@>pyke3zusl904YW5IZiZ_xKcUoh%-t|!@~uYzpWJ0M=` z^sf=0^`du(#|F_c(_vf zNAx8)-~aS3sQY80;fTj^krweiAzF|1C-o2E$0@xn>fp3!H`brgdm-NcisHb_v-&>h zQ~!yA<+SfP(ToO!7kb3>C%h=iM!YWRM|UUrvZxpQxgrV#AFqlwV&4S4FV1;Q^dEST zC@Snn^OJhezm~sqit3#RZ|DbMznl6DwOoH z{8C?tIKR@1dXoG`pD~#5t$rcu=e@pnD9Io6<8hvkq9UC4lc-uw`p=?E;Kx^eIC$_~ zGy=TK(EFmkGW7?V(7Y^t2>AU&F9Oeg>USZozeI)LS+>4*7|r`F+7d&UBg(=0T#-NO zEMN2m>k9M<$bX?og!32a1836wKO*bj&5HFCoJlUx{{SCLMJLgR%S2lcw{m^T8XB+E z-x^O?C3=oHSBt)lAh||wLfzGh_M)!p^sA89dQlJ58%x|Fj^?q&|Ck9mhW>~nS8R{{ zcw#&7gD;*FN#g=T*hWIB_yy|5Rvd>s*@^v-7klwa_~T%BwS?w5ibnvQ3}MKhvv}$x z(z_U*;2f@obKtw1!3}-eUHlb%^Dxwg(L7H>I{4&ec!=wlch8H+myf~vdz`OWjq~`4 zU*LYg-!Knx4G=GHN$VRJLRS+uG}thNjl}lAKyfUtD~%0{ajqco4D1tZFk_z(aS+Cv z7=}R~Dn5g}G!=h_zM0_%$`}XgXdihU)GTvZn%K+M2M%hCOOJbjq7c+ zxEbOXV+aH9y7wG`xb`sY0grncP9wj)#EYV7U2j7l#5vCJI*Q~zhULg(U&F&bB=e6cU$wZM>zKC!T8&v3H4 zNIax5;bQR^__4%L2)-^AyTSglzkV(^IK%&y;$-Zz%Fwerty^sf!FkshJb`O_c0>P_ z8)mJgafQLwgHS0RC?`}IW+J|7@qIs%HR4vttJcsHc6H*9a?%?N*7v8G3@q#Q&QOAW zvhJ@x8w`H9E^IPXqaSS+_W+-^h*RLlR&o1@WM{i!9L~GL;NFAeojnu5=iT>vVBQ`> z9L~Ad@J>$S`@}VE2@e>)q0SD9uYq5O3~%7aVX>D#jUO>I0&k8QqQUR~iMNB7|A-%; z4;&YJ!oL%SHi+vf@lad`P8-aqvoqp@BgoFbVgd4b*09%| z9vN<9pU2`Wu=m7Z7eM1r#ZBfAJ~KQ)A9!wPg?(R$t-mL{6gL@9LpwRiB?i-I!ZJg>oUmN%jeJ&!72rpuVYEHztHhIGr&_!d=co~Pm`3_qaUkS6 zvGw^g^@bD8NzanlA}(yn6kM-3#-6atH4Z@i@FdpPb@@i?bwePrelAiZnF2mYj0Kn{ zl?(yOjM>POjbsSoW^4R~Jlh$EH>2(BCGBy2a+FyA?&c(UK9}^)#^>1A#W)E0ax=!F z&$vtGVZDd3Mo#lQjc4Gem&E!!70b6-ATK_~SIC#IWD4rg-?(}m%@2?yLf^pn3)i)V zk_9oOZzLIu{Q@OJ+LPSaI1BX@B>4t^f+ak}F+`Gve&0m$X&lW9HFg6}no0)GB)OR} z75r>&v}s3jm~lP$)Iw4?gXEUReAHhn<4)LVZR|9G^lgmHQo?q|Ip_!NCH2T-2csJN z>S!D;r}0ik9`e*h@&^8OHEzQG-6Rdb8%A;t@d^JMhX`YtC#{Q=R3Q&hl2yo4v?LR8 zjWJsPj?~@QvH{KOA?Xc!J&lK9zn8HG?DhUTFHYhKJAI5|@VKw>NFQ3)&$t(SA0S!X zkmP}qxroDH%cF})9wt%XT*D!TH8XQnCL8N#b}K zpC}o(o^Y~Jhj~*Z*5?<+Kj;R3rvBY$nxr0eHeGTK`J7?=w+pSCDcO!bI!iJebu>p} zeZSaTNq5x2JY%Jt=FK`w8r|rq}LhuAwPPF^?4Eo zNiW3BD5*kUF&Q_3KW0e+;<(OOg}kjdPDY$J8o$EsCSxA#ZZ^gv9$O^V_x)~_^kZnB zZIX`T3AYrtU~C7!4@w5E zqWOn>uNO$j2ns*9neGKEwZ$#)+tdQ^x(^(-~v$iDc(r<5R@@ ztZ^6m_K7Ey)e!KTX1mCHb~w zIO2Fm5)e-E-M{s6&zOPzA4nvq^M^(c^z%o?!|0EXjd6&>6XPH`t$S)L!nvLsx5ttE zLb4zEdTE?KndDcJyBL3Mj78kuNIDN9{acAUt|#w|od=Wr{(&v*e=wE}C;5|PU_Zjo zf8+5*vK@BPC3{vA$Ngl6F?As6vm|Gc_a8iMT}CHiUh-|N6{$wkOH z51PQgT;mDEAx~0^eB?_$z+QoI?R2tNXpBX@7D;ZbC;5-j6@C{>p5QuIBAMhx`clad z@Sx0?4nCJlOsI2$N{I;mR~bJ5tBoDpXkCrO4fR)R+}V=kI^z-ak$OotoR4Mt zALg^Akv(XfBi%lQkZT$YzVW2rLrLaKmr>QoQ)_X~<&jIt6Cg40iCMn|MYs$wuKU0e+n&)p?g!&IKg-s>7foY(e zu%T%z{0@|Q^(MKo$@&-6Ad{5`!KMM&FGQM+b2X7#|E>^f+7CaQnwr3mW+wj`w7$7i z3%-R(U69WfrrucB(v;nk##>3PzyGy1SwC0P#9sMkCeVcyhoYpk)P4h9Pnt2G-*1`8*AEtzA#Q|eVt;w zRE#)IFii@j@rkC{;Kd|qHT<0{?SeiRZ@K_^s&r&mnm66_1oBK%7|u7#^cC@%ZL;34 z&5>H`aQE zag8Yy^VUkOpLdg+2CXK46w)QIuQVNmJ(Vc~=T)1Y!+)*RfH>%+?`F|_y)*{v4AQ;G zm(k>oIy9LYbffWgrqAei>!qu}n+>MMi1$Y63-EuFDHQSEY^p^(w@Aa~v~H{P6876> z@<85pnhwL?T~h1c0e4I1gwnh{rhVYkK2rqj9WYtnXL8sSh5R3pcEx^2rBlGS|Cxq^ zum4CL2hjRs(no6vPfEXFzkj7%@aL>F41D-c+Ru*0&zTm&-g)T@#PNbO1%6#LeMdjK zB+UlDFH8RnrTJG(Lh$CQsR`;i!E^%qUNf~{N8^do?l^CfX#(urFg5N%`kSUiTz`_K zE8usk)D`?sGsT6__-#`L`o|rU2khN7J#i%c1JgFxduTGsNq%IS2LGR!dcp6fCd)h9 zEI-erKhfu(ORcZ>y_DJ_uCGj)u=~c;4*tD0#iDNBNtbu0b?;5q&%1q)F2a4;N7I97 z(tk4DZbkUnq=mmeznf-aUY4{0>hH(HRWnKd({v5` zU#9u!-`P@YfB0?6KzwqfmPbEYesWFg!M{A|k8qOnO~1jv0+S2QRVdvFJ4L45;PD?* zD9&9hO@y5i(-!2TOu85A%BA1sWT#R(6>+FGoxu5Pq+;-^)?`GVt21qf{~Yr@T&H-l z6WC8+cEEh0Y!>>r$h>Sl*%Qm|fLBu4Gw@Pou0|YeWm`OH+)j2E*+~!@k|kt-y;|nG5tiWb=c_pPsU&JqUZ5|3Q89HaEg}oVhdd z-$!;A>-x%$VZ5JgJmS{hd=~K?V4j2Vfifxl9wfVt`Wb9~jk+B2H=n~~T@lCOfBhaM z>xVp!Hn#>Z#>nO%&tqlQzCTX30sD+1+JWjToBEb~)bzh|54P|tJCi_j0}nMchcyYtOv_`N_@*Ma1P=HH0h zBH01tXR)ji@~}kK4Sp|`#bW&m^B|marOf(yiB*67Uv0MDzpRxV=uYIP8#30zY=jl2FIH%u9RH{N1v8^yNLWEW~xM>`ENz z_shm3ZwF*s{YgG3v)&IJmfgbsN6dkU`%zg-%=@3Y4A+N$%+tZgu%ejszx;8N*_~~(v$MOiv-^Au{Ds7W-6(ul;@VPzFD2H`A-Fqn zGxBp<|AbuaNwoLv_O`}fPVxH^HzNGyM7ytkCGqvK6#kFaPLPlNiFO@+p!GY7D12H|fdTEF9ewc2&X+lfcOk9QOA0^i?D z+y?%>-}*B8^>FJm$p3>xYlr+WaSimz5pMTKt#{W^JwIlB^-1FG;|TvW@zDUm&suLo zzDHZ{hCF?lcpCgXmiSwDia*}k4gK&{tNVRI_wVc0dEo!Iod0);528Q6PwZVo@&9f8 zk0JO2$N!l4SPtPoas7TyT!Hd_;rL$@UqZkAp4ee7(f!#P2Y8a>Pqi+CT%JxGzKr6P z=Qfld?J34Mj|pu6Ut>LcQU5s4>*&XJp2xwT4k6qAj-Hc{iv-WNNT2AL1HO7g!;nvs zXWGS-z0dO==*|jlKt7#3ji_I;$Lg2P9_x>k5_)4g(RcN%ttFTm>Vo}g+QD-0D?Mb# zaaL#@(s%Pbf^xchmSCRj;kh66&JI0mD1FaRBjCB75#Ud+(0$MseLS~+^96oSJ%-?wo;RT% zCxxv4!DP?LdMjSM$=(z{bWw|QovA8!x+2YkK5W9Ng-o>uhdouNv!cT4CejF+vUyTQM^LiRl1 zZjXHj_ny#Xq`%j53VQrLPYQRt5sL-RD{zdKX_I>$3=9N~LBH5ml=dRBqo`$AJ7H!p|!pdGJxvOvGz z^Z0p0_iE_!Ap~CweT??J?)eOI|Ig4(lPUaQXgk_{C^QP?{>w8JdgN`7eOLRPP(AQ> zJ-->Ee=n2;zP%rsUq$$bp`GZ5k35fnPalWQGZg;WDEf8xCm}l@9Su!J`@Z0OzYLY4 zyyKyR80TMwj-mcvdp<`0o$y>ehthu=YOE#rou?i2(f6Sk@b^ES8PG>RgkG+v_#Zv1 zn+X0K@|G1F7#4ngBGFZZ^U%&puYEVL%DZh2g%9^yNvrm*20uo6t=x_Z ze`_dybohI;>mu(q=$T8rcAb8iw@-xPFZYgueya)ZM?YNQ-DW8KO0Ts`ObY)3{WjVA zJNQ`ZeX*G0r-m1xKGVI+A%8Q&)6tH)u$>ng!s(E&IpKdJ-CXab(9`q6M=;-C?JdH% zpC29v{w)aG`vQx+k7E2@8~z&kEe=l|OXV%`+I7VB-V4FcrD1DdT^3Hdl;W3%_kr#P z@8BB3SA;iU92jriYQh`6)_%D%Jj)Qi%KJU?Z}I+t@xMBpje4vJUypjN^X`Nm3~_tH z;rB5<+QOxP5pQqE;|A{r4Zn3yuIP&Jt)6_gzfyZKimy+f6)6J`0z&9j*~aT-7hD)Ltg9G`j)rb z1%&@QJPY-CJDfI)@OQ#{F@E0*+jE-_!_m-tA9=q(c^`XcK#zP9wswFoz1Kq@9uIe) zN9n%`54HN!yL=$w-+I4A`@duP`ER%s@jo#Bb2u0Azl2{$`d_&peh+`pkJA6)ZS76) z&+v!f_eoB7%KHfFaoYPi_@$C=0zW&neTjS$lC0lfV$uUv?^mp@+dlJBdVkxG&?h-bb&!uhl6?vg2oFlC|sBwb}FCh9o;r%u2H760_UpgMMz(1mt&h+l_|O z&u{C5_Af}XdgvPNkA-a^)O%6V?cm4aHjVZ#;rL}qS0McjNlTyyP0~B)-{z!+$bV&< zwR^5kY93DIv?je6PcY2sH?*CNadTtRT0`L*nGd%lS$%wa(sby{tw|4$qWHVpwt*k_ zFx~x0M^W#Gwp7$pe1U$X9l=WHbRt2&+1;67K#xcvn5$pwN^q>EU)L|ex#b*!)lMA7 zL%DNeFyR%Ne%<@E8bCETkD{K9jF&jq)ly8o^V|%AUQ>tiN;P4wf3~v$^IVnQ0=^V# z1gkQJ#SHV%8}7M}c^vi5SD%*>Wx!l`A;B_dP#1!^&RmQazj_k<&*5~1W(U$WYNB$} zxjO=a`H^VIe-YE!QR0qwO|kC&T?42dgDjlGcr&z>YjMcN}Fy! zr}GTon@1rzoZlAAR_=W}bqMu~ch+^J_yQ+3iD0f%hjta|n*kH_Ip~*s=V`#sYFQf5 z1@xA5f_`TX*2UdSO%~ya&Yj%|_EdiXrZ^t-W3oQkm%_93VDzWQ`Dy^+smA(4c%8Q~ zj?0|~$|yX;Sv{0sjFVSEu#e8HB3S8+0IXKaM-pD9?gfl9$I-GX^%B-&Y5LmBD863P zuWQFPb*N_#lQWI*Y;$rtL6M8z=8L(6_cE(6zGL-GfL+z+Sceok)0R+tiT=Jl!GY$` zQi6SruNT2|mNSu`#)#ElS>|8hvse9)Omy*PBlzSogC`Q6;CmC}Btg9mx)?PT`aXr_ zBQ|2gJ&aG{{!ay0-21`9C>Qsh1Gwd`KQNkIxo7-c?)QmIzm#Dt%gqXK(>;IUd_*2w zINkRgzKF}Ux3k^+IsULl@oEv5_a);ZmsfHA|77}mSU!swKcDFvIQ5 z7+7wXGyOhjXV)&qbTifa*HKNRyv_RfSc=r zI)j7h>a1}T-_eGI*DMKb3-k`SaUt(JynleO}NN&vMNOWV_6O>ohXchMyCMd zwZPno@m6R)m_g~v)s1xo^Hn33w?8-5>$i+spKs=evXJbtkvyXU13a_71^kJ^=MI3%-%&1o7{(a8)e5QMsq5X=7dw-sBhx7lE>sQ2Z9@p=6=8OGm zmn(l9{wJqzka{vdCNg~omV+rw-wsmfo+~r{1DBJ`_%oc(tqx1R@j5o6|E>pC9ciXGl6;XI6p6_CHFX)>@r}hF0FL!Q6&9c>ND5pp- zK+h+e|3YK;GzJ_=Q#VW?`ZDwWl?3CIeebxdxxSuo(L1uv>ttTxFP5uRhd!Mel`T|JX`+`n5KV(o{cqq&!_Ni<|XjE%*??^N^q6} zCTfbM@1x#(F~Lly3GK~rD&`X|{48}Qt|EM(reD`i;oiU_*i+N5yUtQCg0Eej^>Q zgU=;cqv@CQ@15rntW+~mPM-M$a$9Ax(EflrI+NlHBNrtS%#T>QO0J(@FGf1AY6i^L zA@ox~uRuS=JF_}bx^7N-3c+&c@va23bP@W;qk5b}c!HXMdSo~T{gJC5!Z?Ui9|HE$ z`ypSIPQ51jGL-?juXlDpuDY6U$5ME#84h_*SD#EKJX;5+5FBVO!8prQAIv4ZhjU^c z!H(w61q5Tvg$oI$swLo8vhI96;W_G8Ls0suvpKPb@D%q3Ho-LgIr^<2az{tP^Nc}w zgYiKgbM&rm6khDS0obVecPG3?zlnAhI6nebnX9;cBl9V~(7ankFjv*hAXu)V8wl2^ z3$7zrZC+kVuvGPGAy{JiLZ19%?7ku238EgkzT-ZMFHlXuYs}~y2ru?o`)nX$!>b~8 zevZ*=K$m3-&@Ub*2O2caq(C2JsA%vzU8iFG(bLpjPWh#%El8KDUtLak?4gIjmt?0E z;c064)t1hFKPF4fL_0j{k`)x*QPZ!xPKx|lOEA%dkuF}@_v;hPuWKnh(>JM&V3w~9 z@fi^dd-A&dfTmdYyIU9~?l}_cb$ff$^>fvTR?{mi{HW5x45oWR1u%ZfdEST`ZsVgk zze&)duAX-8u;m-u?gVpZfGAU(2QePgv`v?8c%Q+z*E!ZqG2PTbv?rFsGtEzyU%u1` z#rH6qk$)dw%sRrozB_?uMJ!D5*>Zc1p;)(EbC<1;ngltHb)q4s*}jdKZ#=%c5g!v_ z=(`8FSMt-(1MkoM*jdejJU2QIpGEl>nr8uHbs6+Srqhh^TXrt+#H2zAe_Lp?CVIE6$_%5@&W_g1IUidM!`g2N-8YVH~9CttAv+YaYdXS8Cpb z9`0&(LJy~_!+^>90D7jzoQ)pLHXl|}x-1imp7X28fL^r-&|~_HrTB6uGM-?yS%Dty zsn($1Q*}};g=gs9fB`jnI^k8$vw#WudyL0UJl|HBHK<>idS?~UHK;$JPwLD@)TfKO zsENY6`Hr;^jCFQ{&uLCF_?Kwj1HXDYmkgx%UP@z}#h6{SgvXovp|3oqem>#J>Z)rA zrkmd}{Gt*ws7@=ry}@2+w!gP=1--jQ-3r z#pt(QdILsSH}w!kVy+%Jg6Ip>8o+?c7)N-f`6pnBCd};zwHSIiR)2(cr#X4xZ?Y)| z|EtYZ=%qX}3gau)`~o;o?M)<9kY&Nje&UEPJ!XF1yebB(>Pm1zEnap%$PQU7>n zALOvoEUF~>4D}fJo8Tlt&XUdJqbR&c^#`BFs)QQCQ%%Msg5|msB@4G;l5Bp;VJqM=KDJV!R}<#WmnNx&U`O>V()UuofS-TcT@KlN zGJW46KTpKM7@wVQV?<7!lZY?YA9SGn{Q7FtuS8$wB|KjzBoQ2|ti3JZ%m?3Uo%hf$ zMb5!AiZ66t?M|@DdHNiJx%%+|1k0S7T!IBo&mw|(P65Vwxihtl@J45!CRptphhC}C zKJc~F$p$|goTF1HzFxm|4Z#XczwZ3)*!6M_udBtL6|3yJe&C_UAcuZ)8tuz9H+Q6T z`6>Xt6)+#qCcI3CAoqolKcF`Yjos(xnlQ#!iP_qp=)`_d#eDmBFdqCmG>l^1`+*pR zt{v0Nfd2akt#Hq~AvNx~Kf^M#(mluIbbYIA`sIxGL#y3;h=XkSa874$PrG(?4j)t1-w&xiu+S_xGPE0R$#6yjNl|F}TzxY4>s9+EpGPsWKKp|EZDP~Ez`+BYE}O#_ za64PMzG5HT!F10u|ITLq-?#Ux9LoO&W6Qms%dOz_b2;5IrvHQM{VCJk!}*nP_^9S< zz?T!8u9d^rbAC^8xY$ox7(dEzT7|XX3}Sp2!<{exxLUb?D_-7@kuWvR?i%E#I6r&2EOY))6i_1dc`H`m`@1E?qtUpHt!B&Z3q zkb54?@k2QOTBeh6Y+p-q-%*LS=M-Z9S;pmwU2rh-MeJv5xL%KP{nv9jvLE=7;|Fj% z7jXPAhL3Z)&5ZA4x}RD8=W=;Jn7bD#_pb-Ev|CTirmntc{!V87I3#)z_IGb`J5w3H z!udYR_{KfYLLaZ;bcXBkSXBF&RE|BJbKeix7hg|!2c{Ey8DOL|BM>~qz@ACTh_O{rZweQ-k~LHkt)cR$PYvakBvj;M*s zy(h_hc!J>=E`JK+q7M&qJul+;vlt#>_#T&Icct$8wv4whyk?{=?{#gV=(i5cSJ}s% z!}*E4e#QI>FuW)Jp%%*FQ%={+@C3_iIm^AAJAB0LSkCny#q<|3p2hVGa=rF3{dUHG zW&Y1+xo_iin>e3`7{8L?Mo#ww=R2C^@j*wM4v7B!))2-+5AmdF}D*R=<@^A64?iOAD7>#JvZso&M>A&kZKaor62hlh0 zar&=^uF56)lbU{AIpK1@;c^!+6nUJ=^}bz$T*m9yhztPn%4)VhTC8*{%z^1mA>2u4_Jy{ra-ttNkcG zkK32c_4sCGm-8t6j#%qQav7I9HEP&W3O9|3*#z6n_~`_{2p(8L@IA9BNbm#BFQf@` z&o{XK?{oh5F|3X%fMg9}`f;&ayA!?45AQI)7t6Rd&tMx*-?@~2$qw-r_>r$a1FY1?JrwS7?0T-qd8ZTMS*8yAs9e3k?x$3@6ber;ow^Y8 ztKr!9Bs!0#6P{_ZGYJ-`F!+(|+;uMDUemQV!GIHsbyT)FjD34=^Ck8bG0sf1INo$e z3yRIO2P6S=st`)b_hyIqWx( zZps%DU5Tb&vX?!8^-8LVVBJxso&~H?KLGYK1Hp$n4RR&>9glt+eDj)1`ch219$i2% zOQp;sm~86M&Wy*@RAkpb)kHAQ z*z?kWnUO)bpY0KTpWRnhMJ&wa{gt~vMR~<)Q4!G>8ha0`z}$iT>{#;%Bs8EtKz%Ar z<7lGGF`r{4Q>8jxPPkuXpuh4>LIdG7YAWho9%*Pnyry5*UJ$YCo9uNzqud8sAISNe z{o05-4tX5OJaK~Q7Pq(lDNiy!B-;9~ZDBnX9%9S+n&TDE$1-nbaQGpnYvFM=gvVJ2 z#y4u4PbFIG`js&KjLU5Jma~3A{im^BnyrdEQp`}b9^-Fnoc->}36p?vR?=wgI`5CP z=_fX|VjTS%d#VqGlymre^#JtN-Q1p~QQzcId_$D|KEfdNOg`ZYqwKq9$D&?>9_$_* zh!zaw_Erb&%$bc|bMMot!|2D|O~*05lcG-nKd@&IO6tPxn`kDCp!}bSvi&qNDj6KO z!R*0`^=jzh8>lbRETC%JMae^NnKsrd5{y{iq4o6WufIC!(G+Vz(pR zepS;*;c1+In^}SSBr~5LEMXLxdY&C$})p3l! z7g@eK#n|^8WM0}DWB2cm2dy9EzlS`B`g|Jo5K?>*Oo858&iwyLQ|?NMz2lm=&EP{z z(E8n<1*vignEnnmsz1>$W`5K~S-;hV&9g8M%nI(uymzy)^}VokaAVqpUx+ z*b$D!4D(XB=$)9DHy07^X?NYZ1QUa{-uX>~G45XDc8NXZe-%XK`d@1Lb^Xy*9_Svp zF)>2;ChkWMMvZGH)D-H@r}|syjeMPh@#)ulFivuvFVMebPD(GLtI|~i36?v{k#DvB z6Z`c#eK~SY=JT1ZeC}T848!=%(UgkL86(pOrl~il6CCI?E+E*T>DN8y)gM9*>-8Uy zzfz50*FI_eUW*tXtL(X9o-?eCC`vfIfajH4SPp(<{)m0zYR1oJdf5*Q*i(jan#b}j zem=J_UCS`H5cjWvq4baV;SAw%a~`yrQop0sXZ%ZAG?J?Y4EJ1W@v*V?9@q_BulKm# zn(=&S!!!1Y=N;ScVlVoF`&;Zg^SFOy9XyEfHB9#>m*0o$X>Xgk>q@4Red1M~Q!A;4 z?PG3UOfZw{b)4%{&$#SQ=X3kV^0+&P^Z%O56}ybJ_Pg@U?OV*{ie2k{9(VR@6z+XN z8OIn!?z>kkxAv8A*G|vxr+$KsCSnVOy={FI>)|yU8U{(Q0!!&o|U=?{a?y>qS>>G z($%Q?H3U2JdbYPF%soHgaaU-X!Iw()Cf2(JrbicwuQ6k=PA_&|xsdQ&HBJ*OHFX$q zRpx25qfy^8lfv^g{nEJZ)kv_XreC)l_VXyzt58mrX#{;qWGM7+K(!z|Kl181L|>@Z z053M|_s8d;;@4LgvGD=lTF_NT82apbH^A-6H0u$cs-I4wd{dmFa|y<)N6#aep@w3f zi80&IUkT=UNLZ{2K(f-5{a!&=bKAv4pJnDuA($TVVLpyGHzEH_bqo4ELCwYb*Q<%j z?Ke{lJr~RMNip_ZG-J&7?J2(4+=BEq>Qc;W1C@Puu`u$^GKvqFO^Ek%`h4H5mOf&k z-*+4E%7}%2-|fKbA{JKqtp7+Z`;myAO}&J2r~Z1t=I_kvN_egl1^$oKgi${(gIo{P zKwUqd@9|$i_a06m<+=s+F4P6Jgy%U=L5{05VeWY1^QU6Ro+H&bJ(?)I+F1_y%Ha4) zO`)z_@xG%#J&Jmjn;KjpBA)lAZd?IpFrINc7eV(RY zw|zeAzh9sqv+X`qGoQl!>T%%WXIkdIbV}iW`y)jxUda6*{(axX^hqZ=`&Aa#PRsi7 zw5CvZy#{G=-w8wQ-S1!xw&B%5I}ge_#(KfH>k#uD=IzG^x-&48oQ1?JNOyo?S%4TK3}5_XriAPbqXaN(NByZ{ORC)jMtq}c7HJ>`rlXwzTarq z^;4q8poWhdyT1N|+cB)ko~ztoEWAH@N^|EulTk~! zte3@(+h(>Re2~5r<0w05&ncWndw(x~P}B@cR}pR3xk-(-ojR&-9fga1raQ0Wg61{M zM44RQO=daPdnHkQ<`Vt!VER0Q$AY&0B~5F35dIQIw+q!+=vP^9o74^H#L|-sSj4 z`wq?pG3G1^7d!iN%^jg{W&OEq@K;R~zk&I^i{(h{YxOIyK|7bU`?8tnWS_K~>F?V! zYZZl$lb6~ zbt?J`gvTCVRF^Tu+@N6r_co9+5u_91c()pe!y-`?G1_ib6t-qn=uCu8O3S1$iu zV^5}JefkvJ6JxkP-ZV!VDcv+pzwY;r8t26mTpFANj%{SV$U1dsvo}KVuVNM@e+duh zQ_YM-3XgY2fUh-bE9ArLw8Q-DQT+g`)nkCk`WwIur+a5gH&$)MeAiX)hn@}S2f^(+B&6&gOsJh(68S(1T!>?vhQgQXe>npx=1{a-FLc^ia9()0e_~sqy^?<~fo6 z1WQab=81g0HJ9)LGb2DS)4T)N#~jmyC#r6cfHHG4I2z-ON6&XNRnSizjkOC@sNcsE zeTu$(62Vy0{#t^?&R^D)Q33KP2$aAQle@tiOBlA>)@3X!XKc3}vyC%#%F9ny*tZ#qR2v*hL zlDkiLteoaGj)0yK`}YVQmvfkY4$GUI1FR2jL;GbNKYzcymn!FlN6&uiN-F6Y9+!s_ z=b-(^xjwIR_-Q_Wk3;XBIscIJ;;G!8@3|g_$5F2Cdz!|MhuD>qAg7~))-O9NYAxik zO{Mi9x(zDali+&Qz8Ar7nymf3M{GXiZff)Okh?)9Cz;}JFxH+mUG2g=xtZrj*+*9g z50nv|*em+3vwC-3tkrKbqb}1FUlCOcctq_&i+9JohZgU3j`gPam!ft+^ZYyNL2&k_ z;M5TmzDe~PNpQQm1F)>o4>{@*RWX{v-)H@?G%JG{~`+C zrrw1<=)mJa^!b5c^>q}lxE`%d);=Zk(u2m@VXkF+Oy{U_%nu1ocAYUzBefDgn01Zz zKJWuEw!f2ky^_o0;pav#^yjkX`^=<1PYxdZo1+$UNLH`s5nQ=dBofUNzAygj}p>wDU{XmA0G-T)(nl z<65HM$m4VzkH4+zXM~po@2{cwBkir<>c-%+LBboN(z_G9KYGPFg5#Rs1Kby7aaq^O z`fQ7N7kVR`+cA;*Mdst!W?N4CA=WOjwCOIa&!#uo`Sf{nGunHM`}^}I`#!^kjMs5{ zy79a(>!QnoxouRxmw2A8jaod5@GDsV%x+A+p74J)+Vj3u>~}PU<$JBBSob}rmFFQ{ zV$jlm@3S6ALog~`{ln#p{b(igbG}A$^~S{(_How5(|^VKRm|5l`Wnm^CC(>+J=KO} ziqCZJ2P||R#J(%pT!DExLtm6e@zqYp?gTyRWDkOQPIWfHBIjR#RZjb!gjedm=MeNd z*3OvV`~-bjr$2$dO4MbLyK-klU!se3;`Y`$T z*{XdB!5p>ee1ZkeQ-F=;GEI0d{XBZ8Bi}>JH-A9ijaAQrb7^`A=JBq2J@i#T_nAWJ z{HkRd!FaYu)T(D^65iQ-3D{sV<`F*7WTXGm)!LNSr?;~vaVkax(a9SxDhGaydPC zJozxYxbNa|J(@Zmfc}zuzr~#XCrzo{_W-z@X$<9@YrjUcO1a3w%Q$}QU_1VAWL)my z?uoVbrjLeO`bk``bv!=BZYlnYg`<-AY)IOQC$9rxp19ql=r_{;3z_Q*N>tK4s5KNNp3xpzOEtpv%y-!*P1Qv0+WnXh;)gPx`z?{%)q(jS=V&?1k6$^z%ecLJxIUtP z#;)AkM)_Co>jBAsWu?ezTSL{k#qv#`T(oRjfNMxIR<3ev>q% zcKsK)esaI`BIfTYrvKk6>-YEbkYk$YU*mdS!|*icw}a(>h-3XIujKHnxV>VB{|VZ| zeTQYw7}V^0E=R_N_z9h2zQ{UtGv^oCbIEk7$2i6(bNUmSLf!YID^|`V_}98G0PWYn z-S?E4E|K}3*ZA^PL^qe~cUREz@870`0&gT9VJA~+qB&Ivf z=_hjgqnZCl8DGwH$2p(PLSOMpP`Q6O%rDtjb>#kxFnqG()<&Wm%=reGUi>=8X^K@! z?>`N?Us-S8$#kD{x?|jK@%yZAwBMr|&f))Cb7eE-Gl%Q@nI_CVXXbhw=I{$yjz+z5 zcrwL{|CiW@{?rue+8??7qVF=|vR6^~JWao6{F1~D^_O!2;^n^hlU!bhD!U#RKgpoF z19UyP-a&5XjZ820jvq9NQC*ns7sk(GTJ6^f_y_gD(7fNIsY%Y{-c|#v3`*AOPSYi&{Vqn-YdT=DE9%x-~4ooeGlvj zmb1~!FY#MDpXkSbv#}cXrgkz7s>rLgW))a*DxP; za``{8d=B7sz_o*Sqnu?d$0wOCmhne9z4!+%`Nt60W5o`!pUXL@Q4O_eWuJBQpZKZf zay{j|^+BdT!QpRly7dgjE_W>2zDp+Osj@#`#dK$JJB~0e?+(NRnFzfI`+z7w=mUE);lF!{yhxEkKbXr>>gYV`Vq|=r&GF1 zJKAP#(dpNQ_T&MbCKJCHjU(uAiQs-*`H7srj)?x1q zTY>Tya=87PquXzsZii_Ao$Sl+Z=8+&L^{{wJEq%a=0mTnkGdK3e&+uk&bNZ)Y$4ZM z?gi+doA+L#VPimTC@6#e$>+G&3P9P zyomSBgUmN5VW_G_&%M0Xo(mL39mhD$51yJx^qK8<4pOMf2GXKZMgCQLn&GRI;ZZ`cL?@RwKE4 zUUdTN9g+Kf(c{V}CL!9|!T!VcjQ4}L&86^RTwk#}T*~|&qbb(4KX8A@yD01V+$1Mx z?K~rxeqzj(n&|gMm8~MUw%LB?{Uw#!M7WI0o1-7=PPo{yS~M{A_xmc$kLQh@xs#%8 zz7HAu?x*w3AZue&ar5LQNpWK%mzMSoX-WGc^PS*W0es1CX`to>~t8KZ( z9R88&UrQm+HTeNWZ#{qD-kB8s8@E&B@3iiZa9OWx&_v~)gK<0NG+KMmKQ)3?ayx5R z6@4b_fNrakAxFP)y-IkTEmap_y*y;7egFBR<|3?z#UJm*%DKQVVEHq=Nl_+t{)}WYZ>>q%m=?}kgJspN3OAU zewp88JU`FzcSYIn$!}(SG1pJ_MY7&p#_ib6^^*6C#BV5`(@o=iB0Mh@HV$8{+&>vF z?{fSerWd^~`zf(I$o_vTmpg&^cfDzyNBJG)d@34WTSNHCL3VzU^->Ji^HuJrKiw}s z5}oW5e&+Dom`>hl+Q;R{{Pf}~`wr{hJ&eg=8AoKYr-0r71KUr^?A?a9>pYBkI!7H_MR@6$Yari#^J^C2`Kk+gu38i3*5Ap1<*HKMf&LGu zfpaK)tchUeDTvs6=uc@1b?*%_KWn%jM>BpG_lwvorm#J%t2xE|%t)g2DSE(J1oKUK zI>9_AxjVsBv#>A0O7moZV1oG{V2sIzgnOLd0F(9W=*bd24g4w8(*diTZI~g`oLkV2 z43&QcrV#6xSUm)CRHM#mqWCOx zO*6sH<^cLR$4vDT-c!8|JtlVXOtk^y)ywZ*HfW+E`~F8LH{Ev@@=Y{HF;WUupK^+i zVVI=}qkAj%y}@ivnCmxiXd=dkN1tuw(iwO*g=ab6r4WqK!%_+Qovo0^e0@(I;kkM_ zr))E~%CKctRM=bRE(tu}11lo6jy6QZHm#F2?3w7rAo|IpkMMN$U%+A~3G$Sz*5^~WSDlZ3N>gbVSv}bwH9@ZfU(1!X zEX3;}!->Ag>4fxS)g;JOfvUNL!gJLIz$!EFO2P|GJB)`6lQfy|6ekzspi#vwB0N#k zFWn!?TuQK1{Rw@RY3@e<<*CstD7?n}4A{}xVF(YXz8EKdH39tem)tC zsqPmx3HDa!0`}5`o$+TaGxokv)|g))*NJK%`0Fu$+I}>1rxJZKq|_Z35gVWA%LiRn z#KKHp0r1p_h4H>Z;F*W)``sR00ld-~1HF{%JlTozO)y_16U=uOqx>qzzMJCLo4ZnY zK>r8hEYqw*f0sK&-6=dnk3>IbIfn)i9~25&c@A&j!p^k7C@X@c8Ja zt!2JU-+}(@ZAR8mKFLmUEx{P`Bw!EoI>ud3v#6fJV^!zb1XI;p&|7huFzO%ck1F~{ z-U;$(M7#a|ej)vrWx5U}7^~@*{GfSbvyJ=}J|{a|kx*Zh-DPtx`0m%s zQNI$MGK9kOod+uj*6AMsEA?j>XSL2?^hX!Iw^!|4f%$i!CTg1Bljac|Yre$3E!TM+ z?%FM{O;IH^m%lVktzs2q(=L8eMr89PI`?W{cKLc9p%z5h{;Iivy)ndOZIDK#e zeu;od)?f5d*&F~z{iX&)o6bb|eA7|PS4YgP zvk1Sn)erfeKDcxt;pvU`{;Iu9%>BMeqdk{BsH`8>>bT!9|G(=T zK)shYT0fon5$kU~X`D@06TBDW;j!Q%%$Fh`NxLnv_tITy<>*9Qur@w723Nn*b4k9mbdlH&o!#uG@_I9 z>>-Vhgb05-+TL5+#B^f+4=}&~iPf7@=NaoyU#&|gQMyVs68f)94Xq=**b%)Pe<9(8 zDuDXtsZZAuUhjT+mEhlgmJ$2DVH?Z&^IZN_%#ZObZ*p#Gzj{disLz4lY3k#%DZe7q zy9>d1HMpiO1=ETC+0Xj)9G2UR=(oU^!_23%IlM}JfN#md3Ohd5L9K}2- z?;E@8u#Oa-$ornLhwM1YRUg`V@H@KlE_$WU-Y2>z=5xf0UyIyl7kqZnpVH@%TQizCd~NuxfDU;S9^afze+h{5sB0>}l(Gyox<6 ziuHFn>%G0)Pj>h0zO!+Q%_nNSEq~3LQ^zh$E-H>KqLl0ThOs|lBTqw;>)dX`tQV>B~= zWL+TV?jLhGVsC8b`fXrnPi5TuKAfM7E79}fzxKVRTAZ=x-_QMaD%pP5K9M#ZUBwCJx~xiv1HKb{`(_wL^Fn z-wzbK<%WNpMh)b=Q|zhIUhyaT7q|OCO{KWyMBDGd?bks6K7V_QaXDX?b%gkQ9hdX3P(*V&#}`)+~Q-+txt z#16WZ>wgc|XC&t*{w^|4Oyhiq53~FfJtgP1|Ks|K--O(g{wnw-_JiUN@*a;X@t+ZY z0?{}3H=fl|; z+~PddOzFjctku|iaJ!f#PIaBa~ms zS-k+=caAVmFyPeG z6D;L-S{l{d>j@vL>DS$7sCG9HOxN`5+D#(%yC|~Xu2NQBOEse1`;8X91L<@5&H7Ky zRYfmmL3_FL9LG=M@gx2oVIEiF*POc7u7`^D+?GcrJi+lY4=&KQ+-e@Dvi=f(!0$O; z<}cAN;{WTg-jj8(tS7AZi2Gd|uAjW?Qu6=wr1-^(pUNqw|AWiDjG@ePvftbTZF8od zU*&uYIsL@F_FiT+>$mu!ryCr}GGEHRXglZg zALhqfOegDbnLj&leaCaW_yLH2MSspm);*oMo}#x6<6<}cjp<9czF%^_Be@=8r+kLP zWnL3M81Z+O`D-=jpU3%$9dsGj`&G`ji1|C4VFAaBe|j0Tko&%jISPFca8`Jg`#5e)5M8Efo<=ZDmtI3KMYkA&)tY|k+yKDUFJG>s z|EhRiiqZBx{;vFvRHg4=CdH?kFVN29h`oo^)%PXv#E6CQK6{Rp8nG~o^--?+8gzbV zLK5W@F#kfk^A9x-AiRvf_f(}`DJDFJmTFV^@*w@|pB?I8u`2jo|%d!9|<#byTd zX0>DA(JM70uch!3HN2T%1J74g{GNWU`W5|AXD)4`c=@hquCd=OD$o?_@`JxW7jW94 zU$e{$fJM3j?T9m)q(@N^<}(!wl&{;qEj|$?JJF8? z9PZZ?O6w787fa!OtTW%PqVQtpd%!{yhJ2Lz4uvQ@KVr)*;P->33>u7j)U^8y@V?-h z9z=I7?vjK?&6nvUUUB|DZTiQE{m?7PIyW5!+`n0$V|e2 zXFXFLd;#riF*~vD5m$K3taE;3y(RApKUqPkT>mB3pK`By(@J}9YCV-1W{L$hSS6 zbp7a}9$Z8zq8jbHx#E|3D%$$H4mQ?5>Q>g58@0`UC)aCIV;78j+2@Hp<^Db3SPp9q#=R=EGj**I%69 z{Y}r|zel(|Vn@F@+TI_R`|RCDD*XLvTCbyjWdHg*=dYlh&%6gH`%1A#%Dl9g=~}oR z!&wfx@Vg3=+grQq&ALD4gQ46mncs3CCGI^E4$p0#oKE$*I4%k;T*3F^#s2lTU4i-X z(IrIfelH%QRH?6{>^q2yHG4`p4M&-Ik`o7lm{ zZkxj8%le>=^A&sDNiI*`Ywy7ATrQsx&Hg&?0Q!A3F03* zf%6wTn%LXq9oY=dXVf^VwR?|%VX_9QI_rs;-x8dyJt!nm+4o>#%*HyxyE@jdDO0_R z@sgo>K!2qL63dd{$GGc+sy;rtd1Ko|MY5?i2BT0S&8}Yq^4Zl^I2|pLUgy4gfC;f zD7Y8+D3;%%QFeY3d!y_xXKG62>UB<6#eA0i*Zwv3yP0zTuqpIfnCL}cOl;|b`5_U~ z?4A!YUtZ(!C*QlR<@`l1GcTiD=zMhzC} zFLKm5eK6nUn%f&FyjsQdBbcYN789&8Uhu28d8aGk1^n(^jcNw}YR!i$D7;+TcM(g~ z=2e8t{C>tiXRWQDSqGTS-$$#9Y{ZDD^0gwoEMj2+pECrMeOIv9*#nJK$mh-ZW+Pgj zXO2QXGE8+Xm0O_xfEDaz&eue*$-XXu^@Ygc3Z5sfx^`3`y^>ou`&uI75YzRKQjT+j6tJ>32uX^=1Px(!Q|``4TEZQ=5kaJ}R{Z~xCZg-6UT7iMThlN3w|?D9uqXQ$i$6i8 z?`4$lIb>lPzk9jO*!zx~;;g^L7?YSy>E&GRvEUuh$DJDOJ5j$!HDl%)8*A^)?TWVR z3YlNGo8IY^K0nH8vVX3$`S*(+j&yT__Fhy-6P4?yq5+hj`B>3t?`bTJxfA7fs-5;EgX=EC7#I6fKI8J8j(8q7@-Fc0al4nfsZ?9s6>AB~ zIPD)Zeh%R~Sr5v1|4CD*QWJPwh~LIZuHP@*oUz8~dv(^%%)om~HSSzfX@Khet}ju-#8H<(WDMUCQo2E1bLr7q!mHgP`U zA8?4%ZRYr27&dTvd1vJq5`eh8#z3l@tKUTVg5bC z<%pk;X8yNheve>yJEyyh+ z@^j6|FyRHh_b{Ft^#v%eSYHCUDAB8WP<)xX_#A?HdJkYg&B-CWz?oD)uu%UOFijl< ze;Tv{Ijhum2b5weAwPA-%0aD@1I=0ETmYD(|9~d$t0_0Peop07f{AR8tJ3u|3GdJE zU5_<^dcsr9*Wh=$CXDW<1R#&O`h4)E+*u6$l&{`|+zr$qbJv|O51{|Dm0n3OM#X}! zaq1rM)vqbkoxgo^!Jlep5cra-Zs!wJ@yUob8M<_P$h6WIVc%~eB@ zu0Z`m6P@2&RZTEoO&UqCa?F0LXo@42uEZGz`a=FLxS!u+_B+E7p09eGP3g*1bU%Ut zQx8eWH6D~#X)a$%;pJoMnh1*jXQfF*dvjGj_?;*3g_}86PS{RctSOb7zXtgG`|}+c z&t|#Yj#enOieWX+C%MkWsAoVO3Q!Jya|`4l-}D1zxmgcb7Mbd&_#87H^u?wW^{Zez zWuf_U7R8sa-)n&PPo>=d10ye;OYzcAGF}SRB%7aV=t}Wb>N||z9OsJ(gg2<+;8TrS z2biY@Tub34>M8VFsk;6K!mG`DhG0QtbTh#kH3j)rsp;r%zj4BHOMDle}wUv z>-=^WQ4~0LLths78-E4CBF6*R z#k@Y5@cw*$T&D@6@qXJJg4Ir^c?8RJ&H{pCozYkiRXNtaKhPOlM&ZTIVel_e6XxEJ z&;Y7JzmIx0GM+Q$wl<2%Ro8O+a#3%;b89~e4>&t>2-dQ^1=M2D)u^kHzno)~`bI*p zRYq)lfcLL&K--*oclCarzs3KiJ-9*lPN@|4`?(x{Pld(Bz9#+>yLtXD#Av1YZ6)ec zX;L~<3ReywXZdCzl^KNnMzJ~{^^ort6sUDbpKI>UqjdQZ`z4Ls zhz&1uT5bNmozUN1dA=1tihN%f@s*LN4wSycxed7Ac`6n8IddV`xq1@DW1%ysFNFv6 z)%^+9>rauc+&NZA_*hN9Bu9^+odca6?FbintI>qHe9{1}zrr)Nf0aEitLE@pwucn! z-fM`mfWvbbHgdUnjEmi%*4&Qz=SN=8ag(WXpY7|>S!9}_f^pDgC@p2)}8R`r~u^oAiuYp9@QQCa8u(#%#TBjx`623 zW6yVaU$(I&2lDe2zZ-t;V4_lLO7JD<&m+ouaCt`9@MVqmKE%$b+2H%q7<=wA8ncX2 zcWFy^y7`(~`Y)05o51Vd6UM$@;tj5wLGi6I8)g#h994W3!MwG%puR^}+4~)GfBZ>4 z*BCX5s9gWLSo^;4W5NEj2|wPhbQ;0<;q>c{wccdQGWaf8L=M?&o&w6E!1qob9T&9z_r@u_dDx@hdDnv2Y5YrtT$1-!SAn6Wy`RD{K>3+YL z^9z|rJ5l^xO}}T}{oly^dYkzt@4|`wTya1A$nD>3+Mh@1XEGk*bep-|RZRbsCMx&4 zMvQ;2fhw_Yi9Jd7hjpA!&G@&Re|x4EJN^$GeuV2G{x)k924g&k-=X+ji+!dG)1L>e=bndh zy~W=78ML1JJ~YP<;rL!$AF&(AJ4s@{xl8!MbR!r(v^wKjYVTDmKSs;sT}gQlR^Dls zciF_xW&)>|dtUNBq@0i4!162K)%uG0Hj1J6F(q(2#4a#RQ*D&`lIwdBxA#46=U*(p zqOYIe^qmJCfc(9}=^kZ1ihXS**XOiG_J6;7ChyDa5I%GI?JOUEGX0;d*Wc#)h`*QN za>P!1zGL43KOVF&r`_!s@4s@s@?M;r&&vG)dEcW$hepgVZCvhsQB&)v#yL&z&Lt@C z*T}h<+J0E#{Ij3s{`{Eh|0K6Z{1Bhvd8|rR_^51xz)#0Mff=2CdoA&VDk!rXN(f1fEujRReR`m-m6r>dhE;qq=tvNIX`!Aw<9Pw}xT z37qzt5t)SdR8K*2;?4dr;fdyFtjjXkKdPJBv68~mH2u1M&A$KR>doV$Dwh7?4hdTz z@rWUkkVFguDms}NW+pR9kY>w_1T+y9VMI2C5J7ek1nEq|E^t7vdR0Ji-^B%YJuD*b z__*S};*Q>{c-?(ZReuXUzc+tOrMj!D`*c@VZ`IYmt|6GM>6h-WTmL9>4suMr4G)+x zT&{%oRxyR7RbDy4ly^yAf;Cu|_A_(G6F$|v&+FBQ$(l}hP|aINutMF&`Nxc1k5}oZ zS5kPTJ7YD$5Y`PTO_;y`;@F$h)hLJ9-S^7a`G?FKWFJ}Xk#B^&$oR4k@*w-ma(_Vj zpNwx?by+jzE9Z66-_L^_9&D4poZ@AkxmXjX)L_vokU!Z!mU)VcaJkp{H{^de;2w+@ zD_gd(UcFQ^TUC#ACCyzk6!IbR5xu?{^-^x;aQkGNj+~-Ey?Hv(7kVR^qDakSn6GXh zL*d1`I8CsRreFV_t=hnHS!!Y}gqQ4H$L&($%w@j$u7w4ApJlm<>&rMirhe~D^eJ_J z1;L1poJg?FJIFPj_UuVQwP#QMtIR)KlS!{X%XLEA6Pk?o1NY3SCOV4J*Qm!>&ZBB6 z_p^|Bbv}iM_4a0hwWg5E+0UJz2~VpQE>DfI9@Og8a<0*Yxrb{w?7y5tbTO>wgXXFW z39nM8&LCK=>DQmnJ9ZzW(gi=w!M+`4BiH`~_(Oa$$32!}V$f^y9@HM#2`$9?x!;&1 z&o?h^evH@eL(H*pO1IqDcQH0&ef9&^O|w)BkF#4eQPKNN*Cz-L%?#o1SqC{>?=2io z;bYWo49i;WJ7kM8)*oY2jy>t>n$>e8(RFU!-i7H~7V`ems0#Y{B?)dRZkeZzOF#NN1;As{r4rt)iSip{b+~Qj6F{k zJH|xwaZSX(Q=46^kKR_+PVziu?P+IVz4SZY@qIYUzBl(-n`YLpw={R){v&$ev7GUm z_{lk%*vZ|D@?^Ih;Qn-Ln=s4u8}O@eiLv$l#B%!%!Y`(mAwGU*{rA{`sD-ukn_g^!r$j!=l5rC7x&Mo_i9%P4{EOm z!LavDZ-N2ul>otrel18a=@oLnnW{Za_=)^W`=j@qLwL%&ne|wuS;p-UM|=ZdKfr2z z&19ck#q`772xc_>9^Su7V;{DyDdu^4LUXig^d4b7AJQ)}tgE;8(4*>k{*IJq{bBg$ zX;Uag(s(=%X!2e)go{22o8wyvuhR7Em!tl19&f`q_ww)U@VF@ZfdTy%^Dj2$NTM${ zcQDLV?-dgs@s2!}V9;B662VU1^$fH1H765ZqDS{7SmQ0_`YbgILWGC)ey-0l)tmK6 zp5DSOmG9+nPbt8=o^_h2{c?H_a6dj)KgIp9tL9+UO>b^b|4mi@tRN`&rkl*WT<)Z) zE~oIg3f2*fnKvg9Y%sGppQy5SZb4fd8N0rkG+=h*$yq-*gQ?9=PK z&nzA8Sw;0Kt{49uXa4?}K7l1aWSUQ-{3B*6>zxL*hxJY^?C-;-FR%M+aK3WrJk;5C zIi*XeFF2nX)&5N8;{p_Wh=>x8-UNyifBmXpmiZ?9->5 zr~JPJON&3>g}(Yi#tr2EK)bsZ6WxQLi)F6nc6$-=vM*Etz0@@H$|j;;r|I{wU8wjq z8i#!3{kP}QPFoRvF}}B1+xyzGPB{SnGCv%lnZ5c5>BNqDJ;G((DCp*v_=4d5$<}!c&0O4Z4G7aS@g}glgygTy$E@k=1eu=EZ?*M%%$|v^{ zWM4zy-cZDd^fG-F0Ubx)lCA&yxM|S4FtL zWt%9&?j}=6@om*VJqVU)`t|4e-cwkMmudU%6xR%XfCKrTAhM=lr{wsXVXDGne+F@O)+MojbYbFJRmx zn6AXEoJDw<`xS>5J5?N>uc{e#a{uP}K_}PZ#juC|0P^FZK1K}f&GYCI^xIQglPu{M zXyWeM^CMjBlTJi^o)5kB4EPz)HKD(q0bJyI((chr*$ebX0A_*Tz7`wb0sZVLr0)rS zF~HgCuNErTuwB+qoA?F04g6$3I)(JJ@txZtPn*DJFy!qOK%qD7V zteyP!(-!aQ+I=p$Z{0Uz&!K*S|Crm_+x2xm>LuEG9)J0f%f^f+4o_!UJCB0qK|JsO z0rh@)i@k|*8}MI@eV_c6R{K7)hkDGoAH?e$0)ISWvI-9>Mpo*)BAgXTe zK`?3V=9&t+g<~y#E7J$m88O1c=31Vw#?74b2@k2eClidgi!uzI+bq3nVFLaOV(70C zZ}f>o7p%AIz8Z6wB3R|E zzmQMc9+G*^;5Iu#L?QR_WPZN9+3Guy_iwvc|4Q5VD`>v>KIc>7&8VXE*=qSj zf*sA`nFPy}^-rCv-nyLdLdWhml&B9lT^{_r=jsm`&xf3qx)#rKKKg&cw>|d@GSs6QTnWYxbBf6)v z?Ec}H?4RZnzALMi`{nrNrHcsPleL0j0mjGA0nZ(B1-H*nz~{2|_xAw@-oYb7y{6Q@ z-4Diz{aFRvFZXB;R^lgeKjJqGimc%n@HrZMw|Y}pE@j?P(XM7K(dB0!!}Tru4^!~H zVh1xA`-Ic7+Vvy)F5veTQMhln*Og#W-PVm@g?Dv1LEj&HPl9#2w3@(?ghml0i~*|d^irE>w}QJu%-N_d^7 zQFvPYGmBu%SbKQcZwo7j=|Y-f{qHneIGt`e49LMz*RlOJ{ohY|U#I<;p)0@M?u7zpG`X`F$lPtZuzliw8 z_20b-rcH#uC}_s;ydkP7l-BK2xEz)0junKbw3Xu~$A*Vg2>jk+`An+}%U6|pq><>G z%!{mlqTW%=CuJ_@@gQcJSl$w9DD$mzVk~a~6=r@xcXNXCQ`TQs+TFn8iTGWu@e)iI zSN9xEbOAlc_6JkJ<5t?tV9AJ?-rSPK@K;f59_EoHsq8zdDYcOEtx`eO`$5;*)iyd+ z%s=c}*a-g>{yPmE?)#HDf%5ID4i*sXiT!|LeG12y|u6O|ti`TlGBiCq6xSjX%`zq3}s z{y3HC#B%@SkX)X(?$6l!+)pBX*|Ij={)0}pd|%vM$ma_sLr>vx=h3!yU32x|>v-PM z1LK8^<0atpBf@_|zkD6#*@^O8jPO_6Pidx{7HXTH`0J=aKfDs-#BYfIO6UN^|LKFk zW!>2p`OCh@Cqoqf#R2!A97B;#?vD=x{xkafO(ySB@S!Po7NVi*Je8$c(193H&f z+Fy1=K1bj?HiPe$T~941K4OAHhn^!ATt9QUWk@O@(6 zcNxkdeyYU(*zrg|7V+ZOw-oX)2l>c*s|Pieg5JlwF+=dE=jW^@_#o<0?5{p)zK_EX zBK>U7+L_kkdtO1f*opq6iOb=A7V&?YKs(NDzMXsGdnj)M;26!x4*BVpb@mNNw;Jug z7Wv8k#$QPH9olan%JtRqVM~c)0`({J2?Ui^LU$@*e4h0Ffi>si*0LhNYQwH?p$5`n#iocD>nk<{l}^b^&rO^t2{w-;Nmk{?Z?cG$Kr>MCZoJq_WFddCGgt|Iu^jJez6}0y zUTLjge7}&n)_&nUytjEH^1B`NCwgcW^4$nn*KFl*8}MhYu=nl1Zm{LM3gNe*-o!3f z>=ng-p3HCMTu=7-W!*R#{dgeCBmI3A!sWbcCh|K1?fo|3MW8E%{2z0=EuWk>^+o*M zDCd62!N`%8PW%lW+P6H_hRgoG=qDN9K0DLK%X#AU;CmhNufTVF3b-6_G0O2M_&0#Q z0eCI+=?wIjyO3@${2p{g`j-J~kj}rb!+&y~c`ee*d4%kDEa$X|m>T)hG^WQVT|2pLV0Bi5V z{uE~7`=7*j%RKH$q?7ZPV#t3GzH}?{ zJ%IS_&6_S){-5|Im3^3zd<)fH zE?I%z$n)&))M}#k*Tr7NB?SG-no2OW*RC&vu1yzmN;rMQwJ?SIfIA^4a*wPJ+Vcg#>mhG4 z&p#9GDC6=&h?ns}^qSba$ao;@kL~y#@ms!LQ)&J7L%+UAGpa(FRTt2ICqjP2K10qa z&ucxfkm6;%CHrT8c6@X-g%92kV|mQgR)3Z0ulf7C8O`lhsy0;x1LX4^4y@ zdV8l4EHYiD6D%?RWqB(0{<@6tJYBbhV0ZHj!+i7UD#ClJXBlRjPAso|_U>eP>jeE- zitpa2FXVEF-H^Nol7;WwwtZNf`2D!*S=Im_BmBJGYa1#2Kj`0m&<^*aoi=B^#B!89 z(Av}eh4A_vgIV*+ykVFoE=tM$uKU5KH`>vKJe)Sb=j z^13#nzAq;F8dVw~*vE`ueHZp#9zb}WXV;H8o?RLEeq^}C^3@Hj33AO{EJ3B_ zlaq+P+%uC17NZ`LW@|gb3-qpe1bgD1OtvPB{0pa76D%>i8Ai<-E`O1FjA2YutZzr` zez=ZcpV^48l$Nk0kd!n!HAlBF2OpJWIbPF;;n?I-F1Zo6KVseiexA4B|Tka{sj^%-`=pzst`)j>mWDFXw_z z^z&z($7`a`pdVhRCbOIw&`km#Ss#eq?2(AyhyEk;*}kBkg#NUTxhwTK=w-alNB@`i z&PO}faC-*L&0Ie<>cFv7t~AmI+;xnn%xxTBt^db4rOlUTm0scl>1@-43);- zO9^_fMJYV2-l!rN!A*;RdY1c3Qe|LM9mXizPPUHN8w35 z?o{#c0x1i z-v>L&rT@afQ>If-!h@=Ydl5Za*nUKkstZ7lp>!pJX(p_P(Bqtuaf#jE?>2|w+DrX)JE20HOAiG_upg8qwoejpZUb=Q#>CFX$tl0P2|G7bPnOQ zdenIY6ZQ2o2~L9iXCUv@Sg$74WY#l5_wSWNm*c(8<>;->=k#Uf15Vk~>&o-UJWW(I zf3)j{V%NUo-Pyds>2lp;`TNTp>j$R@-&d#YJ0}q{i}iL`FYQfy0%q(91gp)NT<)N{ zkmVx>>C&!E7lJ)PmHvS931~`1&s19_RY=^?MIW zU+E6&MR2Ox&wMMquUQU)dOnvYq<)-6@iit@K``5_9Y-+X6=n#=v~D37QT@37x*GQk z!jtB%5W%o1<$hl2+{3WOwfV%%mo`7=V$MJ1e8sq&v&#E9rJA@)#AKX8oc$mQwd*n649=11m}=gjAM zd7kqh#tU2vJ3IenywJ5U7xVsJ18w=v16%|75`TwFwT&0QJCA`*-uV?f=W`J*_5|YJ z`XKc2Es)KJpZ8`Cm6yP za_{ovYhP!1YG|!oM&V;v`}phm!GtNb6MSXgVk^qigm4+B?rCe56TR#Y%0A$WnnL|^ zP6Wz{XKxM+I|ho z-C0O4`>>~LE{3W=xXgPGB7ESpg*@Moaa!!G-)uRNQ~U$Ewy0-0-}qMA5%nYIK(fx1 z{kluIxA=Z-GZh6?l8enj?!Q&Amu$^gd!-wceV_g1Hr78*=jK`-X^+U^kW(WBqG>h58I z{FX5mFKZpo_)N5SNAxfGKG{bU`wlrr6L}iC^i=Mta(-~);Fr!M&ZD*E{~Erp-Lvf` zQAjP?PyELIg8XDZv>4wd^U2DArwG{@fhN7N4ex)iTGQP^GkW}QTp3w zpcnlu`>L`Z>mTs)U(*Zryj#}Ovi~~~<&jghBGrrJB4?Z!-#S4S&{V~xK^6sYS z>)A*r`XU28`jF@W=%tH*PY0f2DfI6XA31^Ly9n|x{qlp%(_F$AN7!;%YYyMv3)u7!gHMGd0w2YXEOiJ>dbx=UcA@N3%aUV z9G>S`4>CELV#zMX+SSDM0*+6aqkBeED-LZ;b z0O>NCFn@mL+%}eAqgl#)!lq+y!lPaTuTN6?W1jD%)xpUW9#ThLNU%!%&M;!)JnjU{ z7KSxu?Hr14FuzVG7=vHjI%Dtm29>>^Tx&Y;yddd(wUFp)oMoJUXs?AaO`-n$5bM99 zjD1ILqvl{W3i2-JJ7SmdlL?F`3K=)$oluc;@t-aFb{+bY+}oT6zM^-3gxt!zsB3qg z$@6bnzuQ;7m72$`N&Cb9;_vYNL$Jh_n2tOy^;C;aq;i$1A6edVF@G;qS24ZJ=ZoPt zy}-5m$JJ&F$4B(dg_J(&RUJ(*;G^bM9V4up_=ZU){%arQULuzihl4 z)mB;0_9g0uvx&YyUBT7E#6!8=I@aGuX5)G?q@mJC+nk$+SgZ_ z!J%_0Ss#eKSa?bJ} z&16daJuXdJT;>O&XAgkx--wrUig5_9%Sv*+$@nJk(6+;S%wpFN!MO1a()|ed3i{Ve zi2py7^A7a0KM?;tzDLe~WxXQnqA$Qt<`rVkHU#0)-}As<^u`{<%eZ?1;$=SYACybx zVON3P_9Fj2G3aHTVQ1G$y$d?I|0eUG^YA_5kL^Z`Ujg+t%XhW8I;i|V(eHKO6Gnfj zaV=c}=XEs*Ux)g+9pw@KtzzdQ=N)6gPwGwNMC>mnWZC(UhjPlj?H!OSng2YGcsVbs z2QKs3@6mo@=dc<1%K4O>ljL!)rF*oEot6LBR;}XxSZZv`WqUm*Qh13u`(lE{`Ud8l zZw%|Fo|;1acPCH}Z>;!{>+x-K#&Hz>N%po{f>~|scgZ}=ds;J6C7fcfp_2 zlsS7p^{UK6x|yFi|3ZB~>)kx;CluiRh1{zsH$O97wwqN> z{Bj*TUns-8p~SWIk{kZ<>^d;34 z9`iO1C0OJAb1Ff(M;7(0KJKn5)YrF~fxn-aYv{kOntuK9Ni$F(Z}$rNuSE5(BG{-u zT}d$QSwFXxp4}IVds!VQJgMo|ANS!0q)IdD-|Mk3gZ2uVw)}mK2ya4o%(dqUvTm3A z>7VfIjrQ;C`?Ya1dpL1SgZ?S#DY1Xr33>jYjkTv5&$Z$Ey9BIjw)ex{z4A2?@l28M!-Kb2Osi(C3X;tGCh}3jQAy8 z3;H!}9$81>a?dhg{@|XHg1?lwF6DZQs>OYY?pW-fO;t-Y;nn8)o&@`ub6W`}%tV%x z6#RoF)e`0(z&i)xcRk@9!+hiL7gnn&wO_yH_ay|Y>aCqYOcUnIoztEBVHx~*XKM~t zdj#5Z+|mf=yJxt4cXA^4T0g(t2bkhV^v`EUSpHuc8@`fT z-#_06U)i7VkY3J9&&vu=qLgxf`Ce`LxZs>bJT9O++Cga^F0TZmrTQO28U#E%D*ei{Z|76y1{`~inZ~`Nq&J-7tIS&N7jZS6zhC_22hBaxh+kB#nNKigT!xiu zFqb1`I=O)tTuz1`vzI})3E{5+m;IG{l3lo8 ziJiHe{z6px1U4Y{QG<;ue@9OBGToYZsWf| zdYMPgMEi6F-2~)!nYQ#YPd>h*-ItL0=3wx7(X{foZ~*k5oMzJv1HXHQ+Iv#(fnN5* zo*icC{+na(i(CagSq?tMfPDaE{4D`pqq>acG_BJ8mH!tuuX4>NjP+}l@?M-v;UVbz zh$f8m!iyP#bvm2J3wbZMAI4G9C)IktLv&I1DjpviU7KGR?@p$0FZeOY#VuzN_2Kim zh-dGahV@A9H%Z->`$r?*u?c#;IsbqTuzsl2lloEmCU5sC1gpJQ7*=?H3?SV1pU?U& zstNP;2IdzH-b?2ap7y@DnBa+;eh<%2>M-w+_k{bYvv~fJLHa6l%W9$*y%*Pn`R7`i zfeO`Iz10nPHlX!(Nb}WA+z!3f&#bqS#@?SSQHfIGkWy#!cgDTlJnj~Hqgc;0nz#7- zO1-Zc`tM9L=Z^YsmXuCLvxIc>-eZX>GS_iUXY0WeiEqq%x{+W%W$z`1Of~Dd?%s{O zZVi|Tn&SQUMCK4IS0^qYm}hQXNU*?6UPLgezPpTITV?&46{|N|2=9z{m-E$S;|M>= zInbV<)PvZuY|3oo@81UbHn@*)U$))P7dwOt+gVRlQ?uUWc09DMRCb^GQKXk~JBWT* z*5TQily5!sNoVw%F~Dy||Gg05vL4x3N2&b%Mevn(iN)T$S#$KE_b*OGe$v0Ip~u9| zQ2M*fKVLw;%fbIK_=mq0_?LrUSVcMf4|ep^_^XvV4f;X$J7u4<5AvV3JHeW4SjWxH zl)f0>HEuLvN@?`BD)kiCdtB$8Na0blgE@rsQ9N_aXbL6y)7-vE&8R;QY{&Drn7)?v zKtkWPoMOa2qQtTD`nZ0Y`G;IPuNQlXpqj%qA9hAD-=NvWbOE(=4Dm^-9+L=4f2uh2 z4!ga#Df%VsRkjdaNIkNYU>x`MrJN}*%_Bq1{Z}Q$&+PP^l{0+*%ru4i_kW-dySetg z^t}4#nJ&k*Fwe2?X-R*rQ7?0R82eWN^~qG?6M?_Hp!k<_LFc@}^l4@NDyCo`6m;$T zT0!$V#|KRDNyMi{y%Q!FH!rc?ikKjtgNzZilpalhY?m=b=OwL%HIv z-IuGae~aTAT?+%w+l(h2d!MwE_XXoe!*6oFcf<+ACmZYNu|NA!H*>|omv$#K$sRtN#RiiH_x<>WSSp++qQ_d%thjaQI*j*PY_#M!zd4wr) z?frhSH@#m|Dy8;m25KnA-CXoTnU}~uu-I{~fPVM|{diZ0zvIL~>@HVxYbYiAzC)o8 zt_R->(4XbK&4Hj7JI?s;@bRdRjH{WQ5(z7=+^vaccMlGP}u?4O;(QsV0)=O320eAmKU$IjOa z@os0t$>MP^?pl~~+Atn)E%d`XP(24!I}VSUe`*L%ss~xG)Tkd=K7(e)1Pb^0@%WWe z?ZJ2W6bcW!7Ed`HI6UlHSYbLc9ufPn`dp;5FaSR=G1$d4L7!BZqnNH1b}%XZ5RczM zwW)>26Hg3D)R1*KpiC$gsh)FC;|Og0m?;qRwJXUFF$*hJdpB3NhVzA;qUvH>;1~ zzf$a00`+HcJ>;rFE=P%Zna906_gJPca&367b2P^nt8NTS9eeM(%(ZwQr-;LIT?-4H zV&E1QIo%o0NB_!JrHuD9lNVF@3f(;`3AS}@cqgZf;|pC23*eV7AM=B9P1H1>u;*aK zno-pjQ0$m02d0>hyd&}f;!lFS%Dv`ogXT^o4rgH8`v`LQ`p)fLC|t(#%%F2v4{bqu z@t-&v{pe4GuK~UT>w-5maq;~=YX*njy*d*8(*+cJY4Has=Z{|^-Ou1B{a)TP8OKt5 zc%3irj{FY3a?bh;^vFZdKjL3=4UgXbeN)iO{^CL8t56@ZuPXbp1khpq{M-c zC%*qQhcZE`}aV6cdXyuMf^du>!>pn|6L7y7UE?d_z>db=5&_7q@K}_5>zSs zqI9E~z%z)LX~&u%swSUH@fmMB&zEH$6HpzSDO~(URN%f_&@?dLg!j+|6dzV4ml6zM zUJ^HFaC~&{K<>wBXC&icbtc2Zbk=WC5a+PzoKYN~&h+K+byLff4DsFLSpP4hT^oNh z>gQanzhoXM8*9#v$vq!?K+=SP4P1C zZp_rKAbdshcTEKU(e&&4_l2CveZPFji`?^*b$dt1?aKp?2OMor-PT&+62gyI{#zq#IJzp$V8Q5Omq|7Cfmh09mwZs&3p zD(mMo+bLoR&Nj<9KFrgZt{^>Tta&IwZp=IIq2pQ8!$=OgH6-CY}=54+m9Udwci z-u_~u3wz_wCKy$fJkJfN7se7EG#5`Ln9vhu5KMVgSH@PjofV14C9^$@%3&54A(T6TK>SYI2X|pr+J*KZG2eeC?98gpYFm#e5nt-Ot@Pv7$m0&+JkISD_`79@4O`-n$2!3<~7d@V<9_0KA%)3l4_6FTB zKPq&eV*S?HwRD}FhnPOswNTbQ-PEHTUasyri}LgD$D|47Y5JvpVecVjyE|4AUaFp8 z`aJVr%TIOW{#B;3c|KZV?z@=iIynya*F5zk)8#uOxPFVwQ;Zj@?)?3I>bsv!^m&f8 zgD!L}l>U}fyO=)V9eo_prM-r}1Vbjm^_5X8P9;2MJeClD-;wzR^(-z=RBzyZG~VsW z^%3%(WqwI>(jrQia=NY|7&f~(T=YlWd5-ZKw7Y+fz~i-yn?ds;$4AtstbYUMQtqc= zZyHOu?}v)zNZz}NtG!I0P~G@DDog{*XIMoVDF3uMgY`v~n%+!!jT*>$xJeDWlyKn_ z+iUqm)tk((NnK*~j`@h|H)u{^y;@~PFieX}4rof{+s~r^He;OX#kH^02ha;gV&3&T^oh)0?P;(tU!eat`v0{5 zpT7AW`XmkgB6fqa|0Vl(PlN7UA*O6n1V_RkWQ;v$V zJQaFFdHz^z7I8_so7^!(S8i%}zF1)Fz2YKu+X@QLb?m+LQk>%#J3n!I=40H;bA~hD za`$Hr&vOnk?1*tK?)}Ml$a}Gl_+^{FSr0_bib;ews9sYDX3U&v1e5C5o&+QMLqo7m z@8bTPQg;6>VGQTjX!@+C_!>2Z`&pIq1LM`2LjC#iUOV1hfcn{i`dPQr-g_0hezD)b zH>>YLN+;`y%}7@Vx%?9CDD!-|=Q{}Pbp+xIK%amd$$qfdi7Y|;H%WN_r)$bxsrQiY zXOO4bfyZ$>|EM`y<(_R}J@A(ySI40oVuvgKV`SYV<(KuKoZrfQ>H9EVCvi>~P;XvL zIYrD-EEi!job_7JjRV^Geu+AUzbISfa(kAl)J#fOq=vCvmwQh#AJMycsFz<+Zjt9( zSj&?B?ZM+*T>pGL@ky&rVS)|nl`4WM&%TcnP;*#shP~qP6rMB>Oe9#RMm7?Zaj(XB z{ACe+>ud^-n!&7}D&(DVmBae0+S$zcgyh{1_hZ(3QGJ}952&S_U#%uCG>_cE^&)=i z!lsuUpEXCTfRk#a|03Ael=J0~dpdvVncVAq`PCdHW;BoQ&-}wUxegfnGK0VWJ)QX0xYi!Xe@~m~ z>P)W$g~u@7rqS+A=BDE)JYgPTd5&Y>TF%{NT$FiO5&Gl3ttIm*-8e42zs@kVoKLPHN}#B=UFEc%rVwaZlSrJ{>Aztp^3_0*Wvx6D)`Bc*QYt(IyIJIMqP9s(T!JI zdl0OKoQwU{#n8tu0?yDx<aXnW-zH3ZuJcaw`r=1DrYWk)5pgp%qsP(51UZH+nN-(VHm)1F!zFIxW zQLhi{-8xk`m+-JjUrI3G zJ;u!y@?CDRVGCb1hxIvy$nHT?@-#Z!P+x z!MlRvEA=V8DF1%mLtNge-d_yE-o-rL)p*I#6ra}g>(`rRprU{oz<^%PdOo3cH4{Zl zSF&70R4unpN_SxSs0Mv4p!BZ<^k$W@=Y1LH%Ra;>X|CaN2E8Sfgoiyla|)<|T+SNr zE0))YTF#Omb!%9^h0VV?UBoT3db|Ew##4JO46ExI51A{uWh3qgmYcZR$l)>`2Q=mC ze>d8{AI6njt{q?Rd$%)vj`6s>-El)Fs{WgzbY-TJ%NaLqc-(Jmp5yVk8|0$OdywU! zx7ty}`KU(bT!?p6`g^PW?l&46oXL%_xYbq(eAJV6w-~4?pE?1>{BCqos>hEN{ zT;0Vmw)af#Pf^$6VdriRkGmEo4&9f&kHe+iQ|cz$?@%8J^z)1<=}qNmgdKLidYIFd z=w93}iq)?%iZ3(K{J9@F%ElLI3-i?x)%0Ii^Cxr4Q`1f(yv$rZo?xz?aXdls z^HO3?VSQPu)^SP1EI0m)`EUU$Hx~FF6Y2=5H9N=vEv&BKJROyR_b=t-$kfT@gw34vHS6xHIpgX|Cf6P z9{68{_*sB&0LneWVcMR@hEeW6c^2ZI=Wp-9lv_bR6!1ju7+d3 z2UPYe_JXb}R1z z5PM3o2Y(oJa$ogUP1J|aIo4}N)mW5I+GjDsyJlHGF0v0J@3W0YyY)wV3`Tl67ySw8 zUBHh~Zt?TligZg*zFm38Eu)f*hMnV5gg*V#sHn8qe}5dQIeOGRn6P@GI~Y zzhiP=M*2r5@RR)u*?*sj^nW6~-1Ch9zaRA__lAdM+56@vH&^q#{Zr7%K8n1vF6;aR z;{StolzT+wz`sNM0hA*L_-DYyFN5rBe1UMe*Yj9bV@COZ%TbTtqrbOg7IDuLf0^QE z@_z77EbY*j(*2?7_wc)sH@95RE1Nx0QQnwmW()g~!whoNpXPHSZiSadmwM32jzZ}y!$2o!KZ=WGK}xyzik}wS^PCh$-C^* zujPDwJZoeBUewSOe~;|9$vwfpP(B%_jd zmyC;IZ`1?nwqbm@3HyylfzO|i)9#?#i1rw^!Ir-(ORe8-<~07EfWdtveQ!T1Z_@jm zQ`VV$mY;-aK7+zjx^N1?m>JPbFrt>Q-V1BO{B@wb_oEw_Z_FeT6dqT9R1-|A|M55> z?+nX3=;Cim<}>FFJ$^LN%YOL0PIew9ep$qBYpEtGrDilYE+8oW7q;iT$K{)e`jm5V z*%!~Pwfx%bIFEaBA>>Hjmm3CL?#&;IdKEhslWo(BUryOior-kQ{+B`jil0`|ua852 zT!D6)4!YfFPnkb%MY!0p$$nKm+Ewh+L|!(4??$9M=NzgPS}$9>lB8$fwU4WX91}J@ zmQcK`Us7%pw_Dh;_cY|atF)QJ;c05g zHvI{&@P6Q$2`byO#~bG?3J;kVxSbPv>m0(vrX9CqrLynPOm#c3q(;m<&OczfGJTDz zxQOUe^>)8LsV?F8ka>{xR2BA-<7V1&qN{MPUP9 zR+iHDG-pm^iY}m&`-WxUFXvTXBLD4b2(OoZ27O2L@AfTEb|8K-9*qXQ%p2vsLc9Ax z`<^$m+$GHg+#k{=!EztasSxq0Qr1&xrRvWu?BAnexeux=-e-z?tELiNLenqpkCo3O zSfTFceo(E_+|FX}+~judN%0YLE9V>4N#++;PcnT9dcMLPdIZtMT>Fkxz`5O))3xbh z=5EI8y#ED=E@jS$5R~)cusMY_NVS=C4u#ixmY=+97&P~C`iKdgNAUrZ#r-ktUVS;? z)tY{NeolhN_Ym&21vCfy`FXrTjp#vqLJ?F?T}Ux;_2qPeNj0ALX=Gn9jeQ@fhepS0 z;zRQcy`9VB+og4<^g-27K`^A(^LQqF>eL?A14*-p_o*Z5ZLYDjvM+~KnIBo-)TkOB z@nd=xw^NZOZhpJq+$N#6b30WkyPw#o%12OqO8v!>9x&+@gco2RGouM3{bu!5liNQ{ zc*^YNa#xredJvvAFS9-k%6X2;j*H((GZr z{&^bf)u0*6ddYuBv6<+D`j4>$!{!4+Fyd@!B{*KwFNJsFdPsR+aywON4ps?uGq+dB zT)_D!_1)Y~6}o`u2{Dty`K8r#hT_*QYL;`pjq1&5#3}Cmw349MKc&?hTwalnN=>m; zKh~~3;rzt)5^*hE+)a~qhta9&1=9l9Kz06;-dLZTI?-T9(kWPxfz0QZ~KZ_ge}2H?lhL{9rWne_rkLhA734(|0-c9o7$#@9EH&vVJ`X zKF349iocj;YG^+3Nh00J&4XFby$t%lFrNGZd|GDHGNKQIkBp1^P>;uf{vY*poao*G zU)c{Bttr&s?*iQyno%_n@CKB7ALd^&UhYEpZ=kyceEofe)x;q^a4JK&uefN?GmOi= zR22E`Lj8WR()wLnB7XYXy?8nCnS$?-^P?=_KcYM@wYT-P4f3+5`JhATK54cuT8h1; zjBkNLb{cDm!|%k1UGy%*i@eLcMBcNK`Lyg?9f|il+G2et?{8hR^keRCcj5c~M!AO|{U+4kIpBX&OUH%8IgNUI zWcl992p50k12tj(elF_ofM!&k3iwcFCI2@L=}*OdSXqBu2D)tndvZT{9C&Ax>u;1Z zg!0To`y2$6^+_|*RiQoOm*XGSr5cpZ>|12J;2`vf7$;XfpQ#;`Z-JF z2IZ9X`Ci1A0LuNxkC9&dAIwI1Wj_5i;%`E@?1#y|jo5R_e(yBUKY)4{dnZ{ZcFDGW z`o*v1KG2EXjo9ZuhW;yZFZ)HZ9$Sn0xE6H9JR9)m3ka8eMcJ?V5&6_Y{?0(VorU@o zKQLmCCHtxy@!e-bUbBJcvb558nc{IOWbFA^rKt%k|1YUJ^&}W^)Cz(@GmPoNY8RIv zX)foM3b?$MKbVI73;l%l*cXb72Y5{R`hKj4TcoV{#QGc=y8Hf0D!0(wByT0F}iq;SZ@gF;N z$W@HXdaj%3SwPW?kAdGK$Vc82E>IJ>Uh>U@Jby0s&aEN-d0vuRwzFwFn(z{nNfXR9 zfAT!JOdZuic#dh{aiWv@Yc1i&yVie6u9?JqJDHb?DLl{pzCFQC=6nt>fq%V1=K{uy z_gW}&kndW1*Le1Hj-P<~mHCO-sfm5_Uz)fd9w$CVdx|`ZUDr(vaaEJ+1%FN*s0I9J9e|o8cuOri}h=Ich(eTd(?Usew0dHf@q zsC|DYEl)2XSdQ|@dtT4#4a|2!n=Q;|s3|_3=q>==LEzPp%Z<&iCMaI^g=HStv(0CV zDSQ#=#+dA-gs(LAd}fs<%%8usvF8?Yjwbv2g-92Gd^a|q(}C#UH)~fA{FkO*-`}gT z_kbthy|-$7_jhd`%~1So^BlK>+(-YV)z-r`#_m@i-CV-`W3d^;^QopbSKI!Q^9{oi z@Vj4i??L=tY7^l04z}EV0^y5LzKOW^zPQaT%PD-sNc#2H8R%yZK##4#IB`!~drz<< zmjLe5_WRd> zpUk)3$y(2H8bp1__#pd$z7c*tz!{3EJ* zCE;Ob|0;rY>Ol?197c z)~ik6mvpTD4j2#RwE2jgU$TC?4Rl|v`Q~8u2TNr z@#dE(!2&gb$JY|`6KmumFE*RPd%|9*+}pwXMLF;rnyp51f90x{dn2A6ra*h%p%xm?0I3x zoWS|}=MWqpgdI`H{KEWGCeuvx3Fw=!^FI!cyB1bCzcMcNPU~ws788A%M{%WAYr_0_ z8tPldaj{#u9&(}4t}j5&T!fED{kH*3AwF`d6i95?fWk=&8WW~F%#&&u(9V?0r)Mr%$&^pI(D-5CA&c{_nsHv zyRU2e%pyv^4)L;HIdA(-844ePa5-1*i~5xF5b;wdeso%(w~A1|KS4j9*wV6`_{~T9 zFVS8yZ}}SSBlpf_{1<(+=GR5Qc7UUy-mF0f2fU`$zC%&|>`OeqI+%Ks;kOvy)~~nqHWmH$ z8>FjVZtoS#{@xgTht!|chkVx`&|52z{@=Uan?oh~4doQOhxZVF9m2<;yfW^~cqaR? z!;|)$c{j>i?2Y7h&Q*4%U!;#^y#;-~w}!&IL7(TF zvzSk3vyjJ;JQZWjosIYcHHzc2Rp$YeuC3F9^=4_kyo|5~= zA@sw0AV*=~a^G0?vA3a}<$kj4!|fTkg~#V{NOuwPSpz8Zs9uQQ483$0zUwsb-G_Fc zf^>Furqr##MQ*!*?hEv1neY7px-96&(cmllejA}LQf3afU)PPojw?nHlym<7zI2KEpE*V?@# zorN48+G}Az#kgc*ClGX7+7rJV_-)O@J;Vh3;8Z(9tla7i#}QqwTHl*ssXCSAv5zLq zpO>jeXAmqW35qnfb8{)M|kzQrC`#&xl?YlfVOA8Xmy7y$XQuQeTh z7orR3??F4fh4u=eeZ(KgyrH%nGOx}xYq);$&8U79Q>LbIKkkJ42R-#Vj?aa^s{-85 zJXUSs@T1l46DeI=wSm{0*=FUXgqJIOAG*MKiO1(M*V1=~-<>xx&d7dpACx;6^0o%w zDd$UF&|l_ZT*@|^IRBoe*9nwgnYyk&!S3of=G?~{HDSj&nt?yRK6*L**A{m8$0Iz~eTOw)so8An%lU|VR6gn{YVP3h8q@I@O5dRN zoJ_E@xhzO9uD;a->$H6lG-)njJy&E#ohdm7ndtwK95j%t$X1bf>F$~M{B~AdNQYb z4}vm(I-m(ts=sD%=v|lzXs0yVXEx#|0{;>CcWB2AkU!aX6}vytF9$(C0DSx6{739Z zGYAhsF9ghU%r9*03mm>Z29H!hl^R2IHSUp12*%Y5Oy}EabRgW93)Z7@Us3Em zt6WQ$a$aQm%Dol_u%8j%YwbTvoR>Mi%-zTQlIH&ypQ`M+Lr`t$OZf!U*b0JS?^xD@ zHQwtN5*{(v&m$N$i~0Lvc#m7YD`H+}eqm=W*JsGQ!Fb&LKkheS^%mn1vz*fh-9@~P ztik?JM7?9vD|?Ss>@Ji>G=@g!UT|u__ki(DBWs@kp z#O$$pOA|)^CEn!v75^2!AF!1ap11dU?vK9TL|YCMMtj@+9l6&OP@i&q5dPlkG^O_2 z2kk3%PUVAa_(pBva=`ZiW&SlC>7wRa=G#?Oji3~zW*Eoxgnr9by+%`bk=n|dvP%7N zEa5RTm-Ra^B9rLT&3kW;UsQ!=rKK1u;ls=)3;t{0^eqhq-;VH~lHCsJu z8cPV5_g1yl2Ay9RkHRn1YSdTG zsl?U)F5qX4vG}o=4-_=_=}sYHpLYjqYybQJaDA5T*VY>9u-+4WA^UU9nQ`1NWxg{Q z`O10dcgw6@;k(ca4`^EsIoA|>y^AsK%D&Qel%omy@z8n{dg*MgZNHy`PWG#_kpIsZ z??q1~kWS7!+XKG_<>?Ll1n4zcXLSZ2S?|g`TIQi*_puA}$OOLgV(=4vFZ=LL%6|W6 z;4Az6GJgMp@(jTD4afHl0WR}L**B4SZi3hzXqRiNH6+d_H#bPcgp%x{Ljfd zEVAAde{gcYO70g-Y-iUywP+vN@04+D5%)g-dVod17}`a2Wt zxE0?q1@bW$-y`GRBarV)P@nT!r=3qV9Ol`GKW?8zm{QjOrd3~-`>38Zjlu)I1vSC2 zxppM}D_?3*RsHM|yaLH?Q^|{2q68$@( zoXLczHU0YM)aEtTzYTi!Ou|EI*ldDzp1m&|S5?aikGY2Rb^`YiqUK1Rw*)lB`rqNc zWe67P3wiu0)_?MRwZz=Jn8J@&H?=2Nsy;fB;IX*>+TCovobY_l?MJY;x_%A8BG0~? zE%y!^U?&#eYsaHdn{oV|e|giYi2g^k&pvH$c8Q(vt!TgfXxG`AsC|FOpr5QA{@yDQ zKL&Cj?~>lzeE%Gxmwkv4L+w6DQJe1t@Xy*6u$;*`*H+{& z^U8}rC+nJPAm3u|(a`xkZYMcstKT`AbDjwKmwRSipnne8zku&stuM12$obf>_^#NH z8?D@B+xthd9$JL{`zzY%xqr>v&DP6$xwxlM^AICHU6;TP6^9p0{%LYyFRTR@uKY;t=;LK7k@5G!0 zf9FB9g8R(@q!)YfW$LmBpKNqY0ySEMdv+tr;ah24m>I9JPVJw3od-Cb??09Krp&!PiBHn}I+9?8>NJsHNL|e^ZW6ptD1I(8 z@S7KOZTh5hGxG_!7N(qbd6a%c9sMe0AfE@6eb;cyAR8`rZ2KT@d4MI5*Z-~V$L(<; z@Is`MdBk(T>mY9rd8^hD=hrcwjOg|h<7MW4F5fZgJuXqcZe+R1HFtA;cGHW_r*wJF z!wgHzR;JI!zDSYt0OMt@g$2%ojOUq$80MPC;*?(eQ*?43=I~R z{T{p{UT&V?_->~73P zuy<7{rK{HGl@YAadB+f}(MtjZ#v*fUPrBF^pIR&5LQeounxCH|hU z+IRxd1WO_s*gVGlHiY?51NH|R)LYCqsJ8QWC%yZl zls>8+)C9|wwVY`SSf@VYdT2DikEi&sx^D`>xcQFvw@T38#J(hCe&BYh)7dn<- z)V2Bg{{K1u6xP*)jD27G(&o)7Q4@8n)| z*uE`^@?ER!yG3`Pf69B>Vn-+UpsqcexcKtkVBt+jFXNKfvEDz##*6*NLg)!uH_mSf zv3{DXEuEZWY&DInZ{=LFE7A=Eo!F0fD5tDnMc+K}?5W%ze**m@D4*PyoR>43+j$XF z`Rj7jtKCiW`w8;f)H;y+&9%^jVn=d2_&$zt@r#zXm(dr9efe#Om--h!8?vsF^`YF~ zkp0RvsIPw^e|a~&JIZ%4zN0(n<|CiU7_Y@Ih^(_ir&6hWe;$yti|`#Q2LHn2i`X>} zfxee>qGrv>R8Qn9=P(;lE?2EzN))}oPwcOye)>a?i@yIB?Iix=Wj!nFfuz+_UF`0PuD!5e*WY{2Jdb>S-~4e;&XhCl%$YN1&dlrS(?6g3*Nxy? zo=WbE8 zOalFON}K7c1V0h=p*~ALh7(W@{p3>i^`bji8Z;!hT_2vAcosI8!aQ^nhe93#M zm5wLcQe8cYqPenTyXU<(N?Vx?U9zL;|a*$Sy`i$ zFYd_xt&imYE85HX!S$o5#g_{uo_<3c-R641FLc*vxqPRd=O_z7XI4|z*^=&<`r_jS zmN)J^T;N>F6U?Wek{e}$~U)~2f1??$Ay?;YI z&n>s3f0u%`4W{T}&U-xEOJpuBx&Nv$LOG(1b|*%|MnUk!fcdHfj6 zn_8qFZ>DPcVsnA^Pg(j@ZDBI~SCt4A=&#yzuR5V$TlV0Wi~Dg7!c+$>F3 zo4#9nB)ZozN$Bx@M=bRBJj(DryFz?-s0YqBvzjZXO8QcBfzqiq_Z%a5nQ5ylb`QKC zRUD*OXu9-;nl52JQ2vYsn7yGi;k?sAQ98~A-XoN!lYd};HeI$z6zC5l&s9##c6>O2|bmTP#id#|6+Ej68z0?X3pt3=`VK4-aI zvn0IA44)^k+U>qnV1?PP`D)!R)e9@l*$T_u-_hQ-tt4I2`gh$E;gjtJFR}6)(HnQT z(zyxqe_rD?6%u{}_@DNxUog)`HFc9Rg8^%mG^DdBh%5~}|y^x;Yf#JH%cgy~Sex!dL-|>3K z3N>R+MLgdfp`Js%ihgU<>#u;kq5mlRo9~YBT$=9@P=DWSwK&6dkNOk+#(B?S2-5ML z=*v()?oS>@Jnt@2=MoFGwG!8e&(Qp%S>rPMsqy@8mANNMIJ;73^&uT_Jc2*!8>Pdrn>4u2vG> z$$l_eU}12N?mLtADJ`emN~r8Vr#1>f zotPP;>tK~R?tIB#VlKQ)U>x7YtH3?uG#qZ#S zMFQhiex;w^)%sFiv41OYKfgHrgO0;MtI16%>?ASBYu-yN8~3K~m(at=-k|cA{@_Ky zzcjue^e{izt9Wj+|86|_{}c54BJeTw!vJ!P{;+$~RodUw_kO}WI)HpNfNydfb+nA( z`2pns&tGYeqy6^+$X)sg-w8fghwwhoTmAz1G!Nw*hH@s=`2Knc^*D(5AJLEBfzHJ( zr|Ue~h5GY8G5r`PgZ>`mqaL+-)t9TJ1m1VxJ9YaokEze{J~F?f!u8-1)NAjMBAq|K zWcE;aGRk>r_s^w5pX(O)pDoZ2C8#ggnSMH(joFEIbwIt}LHY+#-Yv+-btpi;tV8%G8v zj$*)9D?z7A%D-cA5cqE>pX(*x$M|lH)F!gyBR}_l54XHg`;+sF-$mp8auW6-gRN#a z{7&{UC}$qRb1^Rq5dJQp_dDYshJky$2duHdz{N#*ZM z_kqUOnR(g|C3vsBG|bg?t0eU0rGhdoH)=Rp=^iainxP_WO&)hdf!n-=}2bOK#)O|vM`(UYr zcXT;AE*-33(SE}!_~U$|oeNZ7$aB30NldQ&s+GVj^y3cjGxaIzP4pY0T%-NuDdb~% z+Dp!bUQy&m`T7UfXnVWjedWKPoE?}~yjRe3^#RREd+67ghtB{mgZ!a zdod43TWOs!SMO@Ae0mJZr9MtO+;f;Oy#H7Zoc84e=O6NK2L2u7+2YKHR!TXP(|o6t z^PlJG4?wB|ES0FJb9lLD#koy75s7EY5Qp&&)V(JEAB>rtOTq< z`zC-c?T7S#nqX$C{OO8xO__6)KO4}`vzT>**KSTf0dJ$CrM@7g!06&i_#!_lM-;e-9hBT;l)PFmbHF67Uu8hwcJSKaz3v z{dE5Eox}rHaz*Pr($!lYuAtF6qpKq zc+v_M)dT(p4dxzAUu8y>NO<&}q2mRPw^r+yN}sPiSYnr`q=}nZ+GEju0EMOQoj}q@ z@2pK1SYv)!D6r0*>I5dtmkk1Y!_VT-yLFFi`zpdM{UknR@AdV-`F6*^-*4xAnX>dY zjUV7_Ur8VN+i8E7nyo6~qI(2wl#V-kvcO{df!1f18LawI0{gXUo)2RkDz^_R-Gup0 zH6q&mDx19=+;4@NG5sND{i-VC_t*cgzE!-xlYU&oYh73E$GE$2qU0}k|2SV@%F3^t zCojBMVDuf6O9b-W+k_QN=-;GrVWhcrh2W*ZB|86Sxu=wV((FB2!i!C;RA6);xmsYU zmEWk}!#4v z@jUE}6Mg--AG-_n-UT^E|8TCi-=iL@tk3rZ;6D()5BNMl>IcISe;?YXB=tNODQ{@^2w3&)B6TEP-6za1F?cun4tClen(Y{a9=j(`c1O5!krC&Sy zdpqb+-=v-MS+tA$=m${0KVh7=0jIyjJD`)FiW(jL(a)hC_3V!N^Zg9Ib3?z1-slhN zN72EY{?T4Ydo1T0^&i?7sdw{zwGXY&PyY?_>AB!f`rEQU^UyBN1KRcPN4+SwX+QYC ze!)j0|6Ayn;plJ97uuJomoGuOBhWuD0P4Xjz#ic+*N50C(`3p-j}#N zPQt6gB`Swwwu`1qI4>8Aoj>Q9Xi_Q{%G0)9(nse)jRMQ?ou@(gPFXSh5^KyTU0<@@ z+8jyO!;MkBmhY98TECvgXphAC)ll>=`>D3!F|F_UXy5-m*W@`v0rIs+yJsRj@14^Q z*9qySA^v~p_lLpff7t8Mzp2KTw7t};DVM3|y$pWMMn89PaqYhXQ+1TIyU_XCf}y`y>^{pm-d{LUzs`y96WR)q5% zANq$~mCjfplE7{VD%iL+<{L_VWDyhqEMAbbf+ydp_e{Es5`2yo>VQ z1%GS;J|F3;QNN?mj&WytdR^Vw%9r_JVLJ)Q3(oQUA9|P#e}Pi^&zn)YZ>uop4V3iB zpj9Z4>)r*R&vQ)P*BFWV^hbR@0sL;fsVC@kC`!y`o^8afEGiIt)U?wg1-#7Xv z`u9=v&!5m<${ot@#hKwu$vFh^6F}#N%;gItdOH)7LOUz(vEOAz_m^@n zajT~bpI)rAF%y_~Py7RxKAiAM%IxvtgJoi$Ry~EPt4B z%1TL}hw!Z#zbL-SN@(<*Gn7xe*2ky^-x>JWYBIz38=BFM2GnO_=BwvOicU>29T&b= zO1mTdcc@Rj3VN-py`MVAKLd1IF28lM(Bt{h(x&@+3eI~l9ng*$D4*wcl;e3A&qA}= z&sTgehkoYmLLZ)sb78)h*{-#}&vPo;&v*1rYf;iq%HQ0Wo+EHf#`jYN(r@#=J^kAY zKF_q%`SJ+n-Na#?yGi&(XxDRAuxNje?-abd;#em*_59_?M>+7vx(&Yni%P%9zOsCy zraTe-a6jG&J`VHps$CB@2wmF69z?!7z=zbgz5~C|Kj0zs=b1=HKdha=si)8{;((P> zB6|bkzeD~xR)fu5fNL{uSt}t&puXLZZU@@65$R~Jy0h_7jiEhlBjkLC7M@=oa^K_& zJ?ckXmwDf7CFspZy{4f5sXvepUuf^&t9lys;X3|LX%=@-<$Hg4DERo^`ky@ zGvwPrz{}B2&ePXH|HaJWvZxtLuTTZ+RZk8sq!H3jaPH<-o%z|8R^B)Q9$N zo-f^m^bZd6@ACGB+~j!$?GanhKX0NQ`pGJeu zNq|=)|6a9<$@$=qD*xlg-@7WscQ<10w+l@4SB85b3GJRi+V}J5IZIo4VhH_!d z@Kn8oybpOp{-Xa0-+%oG<3@g>JRtw`9PBmlmA5KKcE5DaQ9{2K@3bbZU}Dd_W1YZ~ zz~7sx3>M`IJ_&kMx%KyG>Vij3lkjT1V|paw7g!06-iyb0UW)!x?nA3w{;nI!24qkbHJ`o*w)AECeAI$Kg3vvH%ZPaOQ5+wAQfSyrPX zKVg5rxG?y0sf6^dzfS94yyCoL1uxI8QMt0+Tsv6s+Ztz`Ah2$^e?fQBGk0mv@6Oyl zPQp_;TXh~Cxw=|+vPaavtnjeLt`jBx%B(*rd?Ne4$%4Px_Ub7Dd#&89a9;hz(*RV^_n60hxOCy1h#(uA%)+pIAWII#SJgd7C7A;cD}#|>b*Uy)365=-@o&;xe|V3 zhTmCyT7TKaf`6CpaH+s!Tdq}@g8bj{Y`e=PoO=I}Bl;~BoP2uwuzDx>W-Gt)UBn6X z0=bXh)byg_AFXKBDB(PR-i2}Fy4C^neGJCyr4zlTL;t)@n18DgPrESXGw1Cd#QU!t z8$&w+?MJQGU44brBV+gDrwW|8a^iALV|K-!~7dUMca^D?Y=x(C+sM z=G_GMpr+f3_H%z#fpT_051N4ZB>Hm%@}B|7`Pj16qpPG`?hkmceK_j%jx(zz-a)?b ze4!Tokn!Bv8h;tmpPW8l@u@lYDId~*bI(av&yskqEA(UBgmSr0 zzS&BuXgtxbHISF1vlgt8@OtpuiB>RUC_krIMgQ1eU5tG68%YE2gLd4Xxm)RVM1Rtc z@i(;lxL1O;LXq$6EPiIFTAW(0JW<2nM7jqXUtJ>UxE}Cap(f?usThcKjTrC#ji>6m zO?_%%cAet&yJsrAas3j7v|DVjLOrsZpxx&V`BLMPL%Xh*aQb=f1b_Svc*Bac#&h3O zH2hzRzr4cl+s6%mSbO-VomtA)Tu(|d9+#k><~zGV%HclpLX0op;rtr)Do6hwTz;#j zUx0S^&uy>$oVDf|PY3Bv1AH9(`b5s}8eal>8J+#Ue`EXWRc;@9hSb6s$_4HZPq!Lu z8tqM9&ZB;`*Ka}mNvHU9dGfR0&mAwYz}=~Ix|*H61dIOX^$sMm1B zcLbeh0Qv4P{Xe;%KN{sX{K{7vD>s>MjXUsXJ5yuCW*Ub;-um${F62&_Q5>d>c41pXbR6yNs? zyq^K>0*UOl%8BHs2QZHN0m*L{TA^;tL5x4oC(c0oez6+;ho2MolXrs-^#l3?E<*a} zz;E0K(;uIH`sK*a`_%~@4Y`lD`zBg)S^6+-G5wShcJoxBS7OK42^<9fn;Nr0`E7ui z*&yKq@m^yxy}hO2|NYAqRo9~Am@3FI#cj@R{}2=^s(-A0wGd2ZRoLN^EgR4q`? z9OTOb{=JqG?Hk5O>gc%G4)+K|N>(yan^(T9jXl`COB3+f8Z^z1yidN?dv|tcXS5bPVV2DhSc!K)s$KhTf|sOMDcve}ratVWW4)#6IdJ^r!W?JmL({=-rQH> zZ$tlVDe(GT!c}#X@Jjo$#+TdXa>1)j%?Sd_%ty+fv&;;giK%q{-majYtj)fO#AP;_OSz1 z^K4=6o-6tC&6f(hyDxeO-p;zP-KlCbwwvH7bIM?W zW%hBEyQOB6_Fwt9D>nG}aoq&QgV$CFjD;SrZuWkpbHQJmF}{?GO$g6M_+i?6#_)a2 zF5u&{F~7(Mv?pJSe7x^}9rDvpE32)4Cz1Q#r}2HdQC4bc4ByZB*(&_d6<<641!D$g8$g`}rFeTf;iQt-!64!`?A{g?B#HnU0f-*-Tl_cFLo+kpP% zK6nz^^I8k2($B1Q)2($A2q+hjM7|pNsbJ zJnT8d^M2cyjG60&?kw0NX?Nj1ePjAIjju*O{}tu)`}S`<_jiq-hzbA>GNS z|BJwB58Dfz=Vou6Dz%8@liScuV72?RuJh6Neo6$7xyvgAmbyDn5;)$axlk%5ld5@f9 zu@2wkwrKlCxSqNWT;cq?DsQ@5RbS{{@4x@pzvVFPw~h5TI-zqm`uR#g^3@=fveEsN zlO9bmPGT8ebB6I5XJh(}y0`1lxgo$nSZ@?L!(K-S3W>=x>mjrujd9&x^GPk>%geOf~<=9eJs+vlzSvy9;M_T!f_`>#^EHGvNJwsrznW_3~ z!j4ouq$FK@p@i3&vjc&AXNLFPi?QFUuo5fp75MVwup^X#Zpc}0KDM%23rkn86@^aJfO-pe+U6G%tD1>SSmjP$%` z&GW}gQSWgXqqSwvI#`QE`njN31ucUO(n!WjCU@E+k_>+NzAknR=Ki}#n_vzqOX z_e!s8b6vfJ>^swk_XFM8ko!fM7ioMJ=-p&}x=HwM@ALIPt32X5&wV}5)ql}xod?CJzmT$5&eV4$0x3niIfFE}=<^;=26-BuZ1#|L$ywoHb0j~{-zK8J2SYC0bdJP| zeD!jy%)Z!9@KX1N%A-Np0#ysWPW6ko=YDyH^OT zgWRhQtJe#D?hyGkhUZK?PpJey3`0D}|FZEuJ@@ZCe|#6|c#nd9P=1#e$y>xz|C#~5 z+ygnd7xRMtmVA%nQk`wl{uSxxVBWG^&cAOkKPiuI!Mwe+)g5!C#!pyZ@3#=nb29ol zbj3V;2IX8bbZQ&Pk;Xir|Nr7=hR>AnM?i?fCQ~n1puoz6$*V77Tw%W9Uyo zfAdVtbG~Cjd;ENR;u9KFoqrdA z59z1z1?s&U{lW87&huwS^yw`18D-@+I>*F%$nU`JwHj=A-Y^d9(%0zEA+~VU9GgHzoT8lP(Ih)A;_0Txie88?&CHg-;F4TeEJ#ipD?fZE=y|ohIP`;n;}M@+JTnD+{r9tmb`Ly;6`*lC~jOWzfB0c$l^W|CaH~E!z zmA|1J+R=E<@h--l>s$%Se+YD5K|Q(tKZJ5$K>YLI6V6Ne2aX=mzfxK<7W4)nJ@qX5 zZBP%Pz3>OrXCuma893(=-vx4*XRo6_FMjs2MN%H+L=o~)PomwC{`lm3>SvYcU&_yy zLB9*;&9&ek`Z492M&+*}w^{cgovf5D@6czD71-7dn<6mBy{CG8p4;C~@T1HW^v5H3bp?Bzi#b&*xOS**CBNo;*NQ#)*py4IKMr~Jhv&Z9s zf5-7U>J7n0O;?TkaJ5QR>=FLm#1y`R?xj$4&#KKlh<-RPpZB_zorX@ zNNuD01E+e}1^Qc-d05*~7(A-uzsY`~{W9a3zbJ=&+Io>{3@yNay!V!KqW^9o{cnCj z`D2FPGEGY0x=;O?@3HVc!k5rPre==NamvU{X+P3mDE4Bu?qBJT`~~=%a;*vd$oIsCu5%4o!&0^E5f<2q1~(<%Hul6^A6gD zc@O6$q@&zCcSz@MQsPVQq$YuHBL1JK=X=0k2K*82qkcgD9NIJat}@SkHm5hO5W4qc zd~QX1u6*UcDi{8})BDfTKFNL14M=}u&2K9u|Gumqs|4~s$FZm%{aa|qrk+Z>`Zq{- zMPtrt$xnZp@6aCFduL%Bs5g#=eESM~@&n?x+pS8+pJGJ!mr+mpmvKM;KInHse{tUM z{OTktwK1mIDlj=nPd$S2_e;cc-fsndGvG$RcL2FQzK3~D{d%wU_s|BX{XKz+7zgg} z(paauqaLTD-_AfkQ15;T?I}mP*h)|De@K5g`r`!D=fKN;oc~zoke_zSV?c*?@K1n0 zm-(v7k9w590pUwV8~uA3^nXWrJWn_i>E|Q-dgMEN*qjZLaX#|#UjG*RwuV!mX+S$p zezA2Z>FEcNhCX{+{g>S(d>H5_AmBdu_#Xp(Jp>BiuZqZA^bY<>lUmx)%GVXf28v-ETv5SRG~izC-G(B zraZyR_#MPxc~8OP;m?|{80%CQ^Q+=n!PQG7J}2~eq5Dn43&MY1A>p~f?~3P#9<~ci z4+$>_J?WEo1GxY00^kW+R_g{<`^}~Z! z$(j{NN51$J^r#zD6l3tOv49-9>#+}@zT)4 zlAyifHKB*`;BduLp@)O`PO2%;@Urv=t%Yu>={#0ootf$c7MmRktC7AMcFeMHymD+u z*G2Oer2RXeUCmPyC0`4dKUrWWTRTf&XSaT?z(V`vg#wSV@+ctbClALr7Lyj#qHmgO1_ft(`5onZ8wcC4{q-!cuwf?+Mv6Jr|?d6wmC-ej;=~) zc#ivNlB6GGjxQCMWqRoP+|KpZ{YCz`hP4u&6Z(7|@a_@s^->d(s%6k&b*o|1aLhp*-S!SlWGgKFfX5Eb!fAD^!g+2YO5g=$n5&#fNWdEYtQ+ zf&8L;{2$V9!8$~~|9ptg_tUQKD(QKTp8ngEXZ(J_vh1ZZCC3MlQ}H9pwY+a2*J441 z;>pm%L{O=C1?=BRGg$GMx&17mLw<{a?>-wUp^^VA=3gP?H1!zj1HG{>6(U_{v~N7} zbH6uIcXyGWJmN1ydVU{tMryI{XK26L>-_s+yk|cI{YX89IG-sV5u+AM36IkMg>-C z{`*1H8_&q9o-grF!C#j4ua7WZ)Jwl;xK8ODY&vhbq<FB?<0{l(?d+LqX zqyOFl|6T@IdAgJ?=ke>5U#Ra=&W%QWw`CltlXTsI({4$R&6Y zgdXxY;Q9MMP=B`fIN;QesBbSo|InY~2CL-E^o9>B10=r6_0^G%g&VpHo(g?@k=v;0vIBpPTOC}fcr5hmeB55+ zaoFz@W{L9YAS+ZNI^&XBeqHF(l?I!9xuJ(;!L^Flf?mvAr+C6u_L2N0;hF0MR-5ZJ zycGV0Nq&cOoWJLo?{3!ku4av{!_hnQI+LP(`z*;{ke;VJSci5)hO|__pde%i}o2iv9n z8n@khN_a!MpB0!$`x}%c?mVqYm7S(?xYoARb!U+Ee#EhK|8ph%Kr6q|xmfzeNdmdP zm07`}^ELaj@_S8sx2{Vw(*?67yxREi(sY-(g3mI~Tp+N{KIsG&y9wIAecWv;1RrnZ zH`4b)|2{Uq^O7=S&ynz%>9mgHEH}vtUIRYbj{c=wscqPLiNrsO@H#;5i|NO7IQo-% z+8!&pjG;Y@_He$tkwm}dx@PUy-tO*hl0MJfsd`Z#*dtq*H)l$Cj9Iux)AS>_6i3oUGnQWkcV8CCS$$eI?a79{RX%$&_7@v z`ei8gv4tqNGyG)Y?gMRS!fny^mAMW&4k^1v=V|nA=On3lh1)+}V5NOtkXY2TED=7 zHGG{pPv^@+&^tL_&PDrZC+rQJ_c!jl*5_}9^)<9wO>^#*({#Rc2|ri*J%cY49u<1n z3w&2?zS8g%^x#f*nf<}zcJQ%MLM;9CaRTG%X}ZqUxZYOqQg@Zsu-w&a zzfCk(jgjz%^cOlWtKGrLf+tM&G=a7DdgX@-^SR37VzZ`=geT$8RAL2-{DOi@wBL_~ zKUuth9zccePa6_^`jYQDnI!>&P=;(4Km1(+8xl>2O^m(PnZ zo(t+{YC8rEE7JYp-Oy_WXzfJ~wN-j4w>~N54RZJDN>J*yX+7iS#iJ#>*d0(lED6j? z!4ue@CW3aFzc}9|j%elrT` zx&NfU=s47i{{H)sj&?!Xo6kUh&p#nd`1C z9^e+MoZ)>Qt~Zh2SSv|aZRJ<&AKR4Q>BmJsh?2l6r&5o5r~b5ll0JKte;4cO69tRt zpnqp98>r)#b|)!(1$<3=E#G6M{`^_PyY-TP55|dl1@E`Aoj;%)?o;`_j<3)^`|UHu zLg#jj#~sR*kz7E%D6fi;z6#|%iu62(U)Rq2`FGaUI@)I;9ru+lBLAaUFEW8I1J3tl zCV?*ba+8(XMf*q0yYF*-IdQBrUt@evKs@zv>SN>^-WPe|G*7R{4bgEg3`TE|kS=)V zurwU1;Yr-9T4KB$-e!HiH;msAZQXgX^2dJ2qp#3j@-h4Kb%c+~-m7xv8PxML&>M#K z^8Ew8`_znl^w*k$bUZ)ce&hu7BiB>5oBete_~`X?fv$_cf$kKP&v%|U9_xl4zFbv?d`m@+A>nY`xx^qedwxC{;4hIX~5#RTyFnj9+Po=M#C$QWE zx_(#VJCJ3r-7*R91pT+poz^ILjg?=~rwYxwPX4dvrd=(l=;)S^8+zzqxMG z@30!<)ev}nveMn?)1zJSz@HcWtKohPzYyQ0Ju?_Bk2!CW z)OWZ$S2;Ml{`?BTCuKh21TKMnGC#w=V?MpbW2(0$v;8^dCiL^UB9jX-;ey`-sd*$mxOus5-BIL2Wh%LzL(&(YkU>~`S5?3w|tN6Q?&oxop;X>`aOrqZzS)n0(0B0$FzNecKh!>zJ~cd1oEgm($l{6 z7?gCJSV4LAkPPOf&Kx=$-Sue zFDU19j0f#>v~!My+&dES{~F`l`yJYI2B7ygjQr`)Zt7+GQ4Y@qHm*2RbL<@ccD+z~ zWr**GbJ6ac8c(145#KGYAML|=PV^Ph^LsbPqkm{ueHrb2BJJ(Ve9vKF)8AJJCCYui z_sH+->_+>jm+<}=&z~VGXQg`N-`5HSo{Mq6 zKzk|m;ET}TTsNA=`f~X$`eWc*-pBg@>1O~A!T3{;pnogBNANBBnf7tMztIit=DVKM zKbE1re)bx}{nkLVmwFn{nJ1ziU!$LSzl!=B-yMvj9rQ<_zD7SB%A?oNo}WSYi}VAk z(R1An!QX3Ioucw!E%;_X%HIaOBj9GVhwmh{Q)wl3>}`xr_T%({;5%B|0B= z6Lg*wU_EIO7Oar){NOiDm)q=NmX%O>@BG_k0t?*&t$D5$EVA#VubwEdd-#bHSd(sb zw7@!7t}tQ#)nD*(cU??iDqW@ZEVGR&X^X9d9&33ygm!t&{WXaE?hfN_ZRdzOMKAfJM01kZ>Keeii2I<0RcklkVnnfhjA$Q9ZG)l+!+CJNfp8BsB+hlC`|Qe(H5vY0_P@H* ztmN+m`A7Tb!x>weB)l2(VR7a^b^K2~VvO$WTI=XU`?*sk)ge7?mf58BOyS-_73$U5 z_R;#}+fmAYS+0xfM_ugX<0XHK^yd==7P*>90t-$5$pX8k=gbz^$-Jig-qRhU8U;U^ls*P(h~CsU^J1*Sw-ydLJ7OC?`dcdVA% zGo05Xc&_pDD<_;VQ1C*$+n#_Or4HYRxNDfiM(`1JQf z{_(r6l*{x(zR~!1#Wv$zs0~(98#5W{ zY=-|XChcEutb9sq`Z4;gCG?X|8qc39`R;7+dhXvL*WYogRX%JnN#z&%oql<>pLdmL zZ-rZ{^)A78++(;$c|GV{hkhFU+zrZ)$FA97rM!{2Z^HW)v;$2V;@2atgYTn%i?MEJ zW(^_kJho zrdaun-h<5Z?K~ajbDzw2xL?Vz z^@gu9?o_$Od-Sy1zR_aPN-1G9^d8PL`W2LA9=%H9TVdR&UsIp^-AZg^Z$l4wGQJ}h5FOaa^JAS)=K`fq2GRH1v_L9;`?=rQU3q6 zFXv-?@=$;3vD9DrzFD*Y>mT*Qo7Z?h(yuWd*H|B)g#4f%@2`+Qk0SmrV|+U94}NIc zzFtCxqn+2Go<%9|*VY>C;ydgasP9*x_bBT1b$$M2LgyxgXMzsjr>DMtSJtcTB;7dh zEA3B{k&pYjUr&)#(R!A?M&(!$?nAV73nxf;u8Hfq*3;b9O7ITmK)yhJ&zAf9EGwa+ zZ}{&876luXkE`vCN;l=EYRem}q>A)LyL^hkQrCLAz+`$)y}(*`N0Y$loi^pis_?)% z!DD8N(y74vZpGz7+m2f*0 zj|Wd4C-Jj_M-@+?zng}7yFUGWxIf}OQTm@#o|mKD-&mm*`RAiuJWp-_zvrX=?1xpD zU%ya4Oh2pjsB^P*{fhQ47YV)SovcQIC0Os{&c7p+2wpi$!b{C=Uw?DfM8SFfS`zy3 z%3zPi7aM=SEf#qGtO=jj@MQ3U!jZ6VRRu39UJab}rvAh4zV=4DcA)*VR~&=&=}s%P ziS8?+oe!h^yl=_#B%ZH44|?=3-C#Al$$%Ui2b_8p?Kae74j=B*9}c-lf3j`J$M4zG z&if0}m!bbl%v;*-n(%F%w`I*9Pa=QZe4zbZ7G9_|T7hxiYhFx9$#c-YtYJqhr%eX^ z&gh>uXvg+llU0v6qGiAHB;Q;sztOq$uB8_W{MO2E^bW~$b(ab}w|=*--(T0C-~_+W z%5P*G1>HQz;ZIRM?bBt$TP>4xw3oBLcR)TLe8!){Jdp9Z$}8%nH(SXS-LFUexlWG- zefooNoo<71+ix|Sc?b3Cl)Yh7Hgy8jYYp-i+&gm0rB0nSGHzEI#sMkI#wKazO zm=feC|1AJr-iPA)L;aB771@S#vrx{TLH|YQ{YxP~xQ=k%(%+nXw*uwAgz@i$c3uMd zslwGdKGm*J`+t!2H}xVtK=&QBSf3MSw(gH(p_iA5ptGj04LwZYJ(ZCdXY%iDs6Xvm zT{3Q+Ed9gznr!gzhHuO$)A?NX>`Eu`v@^0DqpXBRd@$0(qU_(B{0jc_bPdm>#&bGfF= z4+`f?IM0>4g#P~5o2Vb}ZGMaKr(VW=&SHd5L%Zm&x>rj#hUc=6*Pmvk9O`S_Z_$qN z3FvG}@6dEVK%SMFRa(zv+P^a%v)5?NQt%t-z=0cO7LQ(~^uJV_T1M|p_%m=fW8F$u4B4`{xW*?p4W6>i~S0*l=x zO#;i@lU`nhf7SBiZkwj3{l3C&_vK=piw6%XUL4%0bfWiU6|ZpP2MWEo?W%m)V80wB zcr1Obt^n0`wrVW3>7Hjuc*3okBCyzeq_EUYoGy6EzM$;q+D#9}lrlhg|v){6xFxU@NI2 zeFA*&n0ZIn`!B)gv%$|R5&r{l`sMH(zbp8%734Ve#(7rBo2hO8>EypBF<(;uM-Dw` zB{te;f)4!zxK7efVX=;Gqz}TcnBP0(y1owchwF1+)aQ7FbAJ4S@~Q9B?~U&T(LQ^o z)oT6mK7UKpk9LGF&@bx&>A%Q#k@8W_IU_tB%4gcIpG3Zy=vT^D-oJVQ`DvfO4fWwZ zjB<$b=W@hT{%1gbao@~)w;S#0Go(iJzwD2CJc)Yj*yZm#K7xMRjC$~X8T~J4mr6lC za=kbc<^G8A+76s@cM9rxKj_m>V*4plt4J?Nf3JKVOPBN&Jf5DQ^Ss37X-yL8^Ax7+ z0j1p6N-DX>@|DiRndxatX`t0$(*RfoIMHmHEHO#D%+F6dMdx`g?n_nLLB~sc3p3+V zfzf%QuJfhogSv0(>{>KPc&&Z9Nnnlj--nombHI^SLZkgP?u$j|iERY0Zhmcpz*_f{ zwy)ZpqV-Ift4@{h;`GrPe z3*C~Si?**K-J+M^N%LlZfhjX;puqBUgN}TyTc<0=O!toJuQBtq_Rk>qiRzan=BG)L zet9|Vpfx!j3o|W2dy51*DNxh~Eo>#g1Gx&i1Qa|b_9y$jah4GK% zv-VeosU9r(Yn(q{9Dsf)cHMM5>VmCWPR!+MyGjCo{$4#UPw_Hym~Suisd(t|;vmrQ zSmzl@xgdd$Hcy&;yc#Y|-FcmzZ{81WuJRWrM^g<64xL4T2 z9IfG9&5nLTr_PM*ATTFAs;j_`=~pWRb}+A;Be1QzM8`Gy&d&vcXPIJcXQ#APy}!Wy zRr$Q9yKtq%XS=UD3FQ8=DD>s!2ghi+`C*qH65m?6Df&(u`tu{qbIS42R#F}Ei@(w; z`iGr@@3SmG_^c5=p63nE@ATiVyc_gs2iyz(`W^ZBPMksbQwYBr`Do{*{b4iWA3^+e zCwA^;qCeWDUPV0ZlKX*IF8e~qk@vgiB77hEf%c;x84gH$5zj+t$G!{sDgh@W{an;5 z58>47R-=D1M;iURe~({zX|LjX@Hz6+jzRm?UeKQgy1bV_{ook%-$S7PEY?Bplej){ z9p?IUB+A&70H+Txe=dP`|Qfqh=}sythzE$f1Ne7)S^mrH!d;5Jsz$H68*Plq?8uj z56yhT30&X8`!&CZ@uZ$I1N+Z1cQ)!JsUx{Q&dbR}aE^w@n;Tn6c&$B8@mc0W?WgMC zkwp?-75ea0Fj3?AE-L-7=qE^f?n;xPH7^_`xuf@;5gK zVvVHW{k|`=F41!7r`Hwy@w4^)#r@Uc;EVr&@5oO)|L%)?w8v~g`Zvi>sK;@rALY(# zz;6KE^`OIZz5~{`=K=IT=R4a=KStVDIlez3-_m6by1sXMeV4*qAO2of_{<#bN!~QrIIKQ7r`#JT!M>qaZDD^FEUZ&$)>Q*RBIPXyrH~-Lf zlmxdpNtXy#YJ3g+t#3nps4sugc&e^HCykcW(fhGz2hS;EX1(T5Ie%_E$n}{i>1y0X za|9;BzbmXZ8#GQTceOip-t}@-YX$FU=#p9p}I2@^A3N7_@IOH$wjXj&wH}PiG?fX)MYag>fiLZ`b#S+f% zHaf^t*X9+a`@Bk*$nRl-q!NFGziW8R48KJ1>aeZyNmb~>lR@XhBs}h3({!coxk;MN z9jWuH#4Nl>@K|uG>KlpRADXVZ*~0|hFOA{*WS zkM0G654eudelP~@=Xv@aNJn|geG}yo`-%3(g;vQMe!rdi@BzrvO^BzydKz$l+F;DD zSifoKm_5?dqaHm0^`ZVrf2srE589*ik&pIg+AFA+(hu)C@a0Q7N|7HI+W&~oX0exj zqy1lIbH+$bO3gT($0g}Tg%$RhMhP!ZcU&&8+C0BPVA9I3>{GoRuMYm312IpN&7N+) z`&Q}K;(e`xao;I^WawdSuwU_#@QNdaUZFXtc(z^APw?owiZOxh%$y2=J%ejhKD0C6 zYr34~wF4zQ$NZppZZK8jyEJ<|FYxcO^a?$U{G;1R`egbSO&>FlE8P;jE1z=zQJm+$ z(f(i4#lwZluLGcu#%yM9p;P6i9V@WH%CE>h?~l*#wNMW%F{PJDd@3+AHJ!=U`~z^_ zoJ{+7A5zUTPLTMxX`%6vA5d4pQ>LZjrQ?1n5twNia0 z5nQ!Q@|6WS8lGzQ@Q-l}y?(nBeD)gFslFp6SLC-p!k>fjep3#@zXpHt9Qs)B7r$?} z1aj_Wq@T5J!*Zd=doFwjo#&Q+%D#S$#J_LlH_~r2$LKoyF6#3L=;UX7zh2@gw;k%u zb+WZ;brHYVV<$?w9CzzffnBi=>d5_2+TY*Gw?@m!HDi@-J1eOpegr?qOb_4x#^1M0 z*xfqgQ*Ojrk}mGnPZwBgepP*;(h3%>lU6~r4o=s0myP?kwl5iadhGwyxOSnWOu1i` z-v`=X5`s6RUsQff*v|(GUTt!eKL!~8z2TYBMScmN1-n!-{fO>pvfMo?$)k6nCrf;7 z+P|M(Y){hlq0}C}K*EnSTNPH?f2cgKFppg-;pKRTv8(a=Vo&q2lkgfVztOp-xmVj$ zXB9PNfP;*GPbV9A+}*AHNjuOPyN7E(4#0SI1%FVkuQ8_=cv=Q_;w zmh1c?q@x{x`oM!&SE+CDoO3~aE1j30fq$o<9z37g0Q~J|e=e1p+zosV%BcsOHPo-S z%_xU42;0dJTKAYqC9Lo7GApOyKUO>C)>(I74u*=k$BwzUJEXJ2WNtr+m+Z_8!W?@6et{ z(Jw!(POIG5f&QJLR1VqsXh*vZ`v05ghmAoHE;hd+V* zoKO7jDeYtjk&o|1%!b_MIn`M3G2f3Kdb-iS7TIf+fB1e1?OP9{URQ(ebd=9?7M{=2 zpYc?rFGhOW`}qAt_G?kooXezO-tVN`pnqvC`hn{b&xQFO2K~U!M144qIllaUz$DaT z4PZZv7yY+rpW(UStDske@jeIRcQeB2KX)V6zez~{Uh z(XRl1(LZPSsZl3Ie}|poVHwKf_w0BN=zpuT21<%2T$avr+L3urf%AJW<}3XL?_V}w z=f`gtH~Q^T9^Z=e^mjTB?MZ_#XQO}4M!g0hp7t4@zkh^w(GE@j1NtLWqMTo0|9hd~ zY2`=e+lziU8vF54ho_Z~YHNLaI%B_)-Mmx7y9CcD%ndy(X!h?tRGa5Cyu_WV z`d!Q%sgklZ^y_-ewdf!e3_|W z@N)M~Ah6Uu=maLsV+!l+Roa96K3HO$_dELt<4V7syBl9qy7XhBT;zIDgY+D~E79-m z5YGL@L4;2~OKK6l_l15Oigc7yXE%MX`Y89c?;&4^aqZV|T!Z94VCJd*_Fv4i=iS7y z65cbT>q>#Q?0h0e;Pogc(e#>9`o-O+eEJmT_pk&~lI zut@JY+`nsCW&L+g%G_m@5*~ejSveqShD;T_+N3TKSZ; zP5#R=51>B1>y4&=*=llgE%^RP$mw;^$HoJe1pie!$){UUy~5*pbjAeU*sI0pSa&T6zdZrOjeJ@bH1Zu69m*rlze*GUTcah%mqIaly& zF`f?&^>SmGmC!?eF%6ivJg?$+iRgDld&T9}zY9gX%)|BmKH@_2mn(!G^{c9C!6Lse z=<$?uE3F2bZm19KIYZL^J)6ylZ-xAiq5qEopHUwffpp~Gc1TaXVB{!Y4)u>N$UhYA zq`vn*gj255Pw?Le=lr4^Ux9Krxc?q6CGh<9UeKLT-)e<~FGv1&>@vkSgWrc^{iHnp z*-C0-Zov4`FR5~se`oy}OT&P!f>Ul>jQ+ej<@xGdv@ePAJfq=wov-&lw@c3rxc+Ul-v0Ma#&0@uJXhiS z6#kX5L*GTAztTqZ*V8EHB$R(5!b=f;4%*54r!QKmb!49apYZ&O`_zWjQx-}*?aaSe z!HoF{{lW7kuFuz5jW*LjFXNdnbcRzN(jNUB@>4(Q)wo9cfp!_*yXXZu!E==Jjeqy$ zG4$j0;D@&`&JUp7O`y;H%PpuE{XD6kJb`?B-D}IG=IhZ@@cX1mrr*S$YO@D}!;^96Rc zuR4JR_Wfl7^UQXwPaoHPh2ZUiZ`J-#0eSR z(YsI>f7&jP9lh_+=;Z>>Uw<*9wdXH% z1v*bJKtIx6#B=K_;K2?tDt@*DjmCujO|w%?GR{Wz)N1)T}JN6Pc$ zE3i)FX88BEs=x>LqQAHvQE$2r{o8Swzqk9i`FWAl>>kwPa+jfeJ{)uwWQ^)7@jOQ; zL4SN^B{cF&w+hT0z%uBsU!3B@v&~!`mv;QFig|99#B_z8kr(>-qF|n;>k@ici1%DL zj`K&HttH%w`fpY2(7nh!@DKHSt~Vo)j(X)a$lr+clM#OtAkTSTM?Ci>zdq~V$v6|^ z+ZXU_^v8vJF0VJyANBeU=s)rS*NJCAm-`gj8MrP!hI+gRxyyabN|eWaBk$RAAII+{ z|BCu>J`MrB576#=P(I~#>F}plNWD)6A3cQhuK<#Nxc?o6@UH-m#`=~uWcCpz`r|sm zeI>suNBh}ur02OZ&jkjj{d=OrquyNq zDxTZ1TI$X9igI8t(s3QS6!b0uEC)UAL%JjUe#|@Cg{XJ%TzB5C^c*Sg;f(SP0=a+Z zI~==O`0uH_1Ue5|NpmvcRwvEQb&6zrbYh3BM5?*TFn=G)z9MdE)<_74xm4v;R=Umn9&q}An9H#c|c-Uf% zrZ;U11SY~8RthX`Xx4PTv}ip?drr3!8=c!YH$mX}sP|N~^GLMk&%ocZk}9J6Oxp_t z-cY|nA?-40%o~4;^U(d1`#|?+_y4&1^7tx?>-~WQkwD@rhDbt)Ebhxqa=G{BCPW<; zxfg;GP>Xs+5mZ6|5yS-)m@Mquiz4pT*4A2VRjO56tzN*owQAg@F4bCV-EhaP>hC>g zo(Dd^Z~nL^XO=Vb&YU?jbLPw$zi!NfZXEL}_vz%^eT<4~__Q4i{`-hXtEmG79QzkAo=oPSp!AN6DHzz@ZGjP`-U5dI|U#d-W? zekb^q{M85F$MfWiADy;V>cMrx`W64`Blt?tqh9kI(4$?@p(`KN_0RuM{)vcx81>^i zdz=+&(RvHtzio71Ptya@a!FO-P_t1`$>k8`qJ5he|89v`J+8WWgao)dDJpZtci)zq~ z*>`lE+LE8A`>~{(7L%Oy`P)tsSYy4#OO<(elHhf2`80v4`~~L=%v$*sy})_%1lF3D zRK7If9D0bYSR~;&>)$6iFdU-&TABY?+poe5I7;G&x@Q?2Xq!}6DEx#huRm3t-bGcErx zH>Oe2Rl4r_eFetbag~~zu8{CvcF8h+XL%Nb~X)D|y8eJa8qW=MQ} zez%sBvWGMXKGBRBFEH(vtrFM({nT(PnE2D%tUVa{cUdfW4bH(6?te2`jokPg`{tE2k82#-U=4UrDhM)c&|Q_|AW?x_vu3LbDjH1={JQtb-$Ltd$x^c zR)3+;0zYu+{4C|bCbwvUglFw09U(O)JXP>9Zm_N#lIBm^9@VB*`K8t-wA_@tRlh6a z<}8);@qGVIfx~eRqBZQXQgN+Cq=&&cej+QOQ96v{$5e_%e24J!twx()bAHrTiT2}2 ze_S{J9y;go0SKqQ|4h(12jjiUmL4G#%kuucpCb6@DK~R+5Z_O+|>JW!4JbsgW`M#n|5Z=y^^Uyzsxmie19ug#HU@qR=WL=f2!5s z$PVXzm9r_}jTrCLkAKvDdqPrj9nAY<+c3{juXJL@(<{aN&HJWitPjt$&(iNqs#GxM zWbn~k>*ML~>tD$K9pZT}jq@n=xL^1Fwe}nDgZ%^JgLc2Kp?<$w{iA;O?C|k^QqrSq znzdc-SaGV#Ey|6#C)}j%K)u6dkQ+O6_A@4r`SYoM6E*)+D&-d$%KXVWO}^5*o=3@YR0c5ANG|-v2+V z$qermeGHuXkH_&n)VFhA#qlu`^}87K4@CMrzM~xFF94he`t;l9SLMzLWyeIJhzMJ>F=+|KY=)Mp6K>OVzP#@aie1i5p z@r0LkeaCe_=d(lFzHF5m+=cplhkASp`T^kCsOKRlkLzse{r}tkiS+w_fq<;_n z(hL2v1bp42>&hb}eTlnDVL`Z2R}iJaCWLnzBJst|{+>XQ*{tEc@lMjfusD?XiS7ms z&){BTi}C)Q6YgQGn~t9^>3Cm0X9bJoi91y1y(aUY4#5k;igf~G!Hr6<#R?YT;fxIe z)9&XQUhTd(SMbQ+w9@DPIi0^vH|`s@=`fb!sjATaPh!Xt`Ou*b(^`QBF))f77DD z9dm}zjk%RG1*XhDVghM*UmyDWpRv%>8Q$#Q8$AN|NBpe`x%Y5uPstbg$ySNf%k^0( zc>f@&?e~Vx&JkTJq0(+)yTIOfH?Gu-(f+M)k7@mf20isVUviIY{ik94(9U^(@D24I z^b`Mk@ZV+N*C&8)0e>CVZMV{;pUN5Iq!xScjqsf7S*yW@_r@LqPP^6$(C2*|?!)=s zR{2<;|L@3mHtN4oTSwmG@b`6308Tx5>&O*rCFeHer+$ro*l)mhQ-AnhjNi>Drx@dr zwrh?HXD@?_}h=0`AhQ|71TCi=@czi+D!c4~WO z?W;;B7tE}d_?X$LcpUF{)LRLS#v$Ynzk_;W>T_r(HxTV}Jow;Pv`t6TWvcAoX&;JxQx?UMn26SpMTU<9d&JEsj&3 zLtlz=PDQ)Fv}%#gZ~isL$gUZDz7y@Ud18&uvoW*(ky1{=y*^xE+*~t6AlK(LRxr_{ z+}%rHL*D!I&f&g98t+(Mtt9~KA!sY zU!Z+BF1|-Tp0m&%k>@+7AwBKMb|O8`Q{P273sFzrE8w{V{b2DN;6t=0&+}h%I+ zrdsJY1!pf1Jd>|cyukG+7JLBYY}}mRQ}Akc$6SFeR(>P-9WHVLYmN6q!uu=PV7QLZ z+Hk~y5}&n=N_S%Z>v4iNx(jtZm9m0KJ*J;4FqeP5Rbbl6Z^WnhvGW9G+}9TgY%LeKK1@n@wcGy~ zfpz%qny}lxg2$l0hV!Bm0Mto(|fdk=5v^m5@! zbNj^-vcbjY2&`-0GEm_34u3xUHTY(PmC$HkTHx37tdfyx&tvrcE4 zcK4dLYeW9&2FYJ%F4uK*COCJs;EDVM%~$8PwhG=D%uzl_yGa_(b$G2CqU~2|K0Hp+ zW!xZL2iAx6%IAsTWKCZidN|xls)&C0t%jGmpD8SNw`lpL*v}6LcE%)Kshh0v70rI9 zSK>}nytwOQ<-7jD>531;yBGDr8HzWC9_E6a;?xIa!y?T`yI<;W=*N!p+F_8BJjWT0 z{^L0`^*NkBIq!1+_Iu1j)YI^NANo6@pEb&*v5+5JKaIouNqNTo?;G3wdG`#&cR^0l zE{Xnee*}N*gk0Tfr8W1ybHMY+xVcc6cOE~Xo6`MtxzQ_$yzO8gar%HU4`+kPNf#IdA1y+VWT~%Z#nc_cjteu^mz|p^@%<|{it%i zK>O$%`kVF(eLGK_B02WMJU0(~&GWK%!9Rxq{u^@WD(lPPJ&=3BpFAfx5%FJ*nz2Gs zo`HGlwC#V=8t}fs`6!R)39X>N5cylM4%vkAd2iv5h`$T31aKwkW+O>t7a4=KZ`n zCU}0W(60~f(D=CdokIFwNrxV<34X8P*}$*sxGwt^v4-)ipA z5x{lXo_0oGIDcOAD&!^4Yo<+-RAR^Yn6^)` zRWus659oTJ+`d>ZAqDOe%~_VeR%=@7uF`Qoz@4M(m?8O%=SjLMGii~)3O7vG8NIDw z(K#ySyB_9Aoi7g$HgAyd65K1OG*4^!1Kk8&*HoDnm3zf*tB#zZW`xeSW%+~kyACry zYQI#taXOzy?>ES zR&qu41K+e+MGe>6v}5`bd~yi*XLiTK`aRwnaPK|jA3)!qo*Q#F=yBZhUe&&ZAFh#- zC{MUArQD4JN1X$``&nquR9^HxKE}${tfE!ChE7!`2AiT zzQ>@w=7%6S~^+K75x(H@&BU&3=s?yGq2 z`JlOFki_>cIQtxd(@&V9BcJD=zXP3Jr%0?Z`=8-q+ayqjVxYZA`+e!y9xQ#sj~Oh9?4l zk2?;37geT*hL?eUWiU_I8D(7$HA#sX*V&bAXDWyLx&J9A7r6sh zOa7AJdZ(5W**_tEBl2Ab*iWTnwEoHu)N=dSFO)MY@NP5hSt`Si zb5deubCs{ZIY?m{{J~d+9_KtT5dMCu+z?GyY?hoZ`AhJgWKnSTLcwW=)5Cc=S^_>R zFy3Df*Nfcu^fzB=JD0&v^>A~H(oecCRWi2N-<&6O)A?011&%R?Un($Vwm5;A{9u(2 zjaIN|A8ft+P2_9m2_DaTf0{YGuh`J_mvs`J4E#Qx_ft~a&r?a^rB}2Mgg*rwLtIwza(73gP>AHs@dBf9ubfIgs<2OJi&WZ2PLcQ_`HDUQOU;eiFTG7aoyYr| zN41|zti(oq753F}I50m>%PDb(pDE#`rtEBi17MF;6*OslztH=i{LS){6zBZ-_?iQB zU9uDX%l+dg_^vC<{kr4#{H~zcmlt|i5lmFPH|)aenkOlqcBd%p2fMB^yt9>XgS4KN z;RapjBv4}^w&df)2^fo^&bX0=~DlWR*AVx^B0-cxa2DikJA=C4E2neMH(N+ z`?i_T`%lSq`S7f}T;rRl)zA9|P$P9H4c)DI<_&kO`F372TP3hc{iN5cIl zzw-n1%e7W=Mf*8?2lYVo6YvMr_qdKw=_a~8otE_XwVkCav3aIVN8Bywf7*#W(($V9 zBUW2U9qBXMPiYaj&UpRD5TsvVB{Z^oGd&jzEJD3*b#+egojsSg37p$)z#xHx@SZ*G zf~H#uHRhI%rE>({i~7`ee|nkVymv!Ch=1Jw#r-6FhR%A%(7(hR7!R~h-q>xJ&QsHM zwGr)uMxUl~jC}mP6)MJ@i|?Qv75&E47kGU+&tJQmeEM54zTQTAd+v<%isoi*-v%?X zR#H~yk5_)Fb!~UCs*LY9=ogm^4FFzGlO<2MFF2db+W| z>z6a3hc&@3w7hKSVLbHyq!RWv4Ntn)6{ek4{>|97VM4FgP0)EEYXyt=5BjyHz@Oiz ztOiHx-{%jK|F|AvKa(H!L%Xd&`p=Y$WPNa_ua{e_AsPFq&M(z=Uv2-Cee-gm8+ZO) z!pQHNj>{&{84f$Y275Q^|JJ^eJ_|k`ZnkQ8E~xWzJb1NK;#=??2|MjX!IN&%fdcEW zUrbxUMDMS_q}as!5ncn>8*m_C0m|CceYTvsnezHT}jMfddDpH%u^x6RZRez@a`lTGw@Y{6d|1THoY>-fFgm1zHT zcK>;?gzxA!@G^lfM@uh(ccC6Io8Ab zz)#d?|A2b(Jtx{9^4)^h@qM(1;ygmX6Q`pb`sL?7h5CROKtBOGyzlfN!r5#8PSZ|VW5Z(OU~9?2!Z80wL=pG}q=d`~#V>hsS>`*Pj9Rcm3)0~oKZUGFNLxO-1w^p5=z zQqLIttfqo5w10EKe>Fa4-}mX^w|*wpSG0d9avy7aasJbo&?zxh+Jcqtsi}fjxnC_5 z*gHSY2|OtHxKm)c`9$;ec3=HW@XFw?%C`l^k1xLGUTi+obXCC^tLeIcVy^qqhBK9nU*3KC;Mv7UJDCe)wyi@fi1KIkk2 zT#9mOM@f58`VDyy>F5`U{tWI%IV&+f3QhUZQo{-tXhy_kz7& zbH2+P3m(xP&EecBX%13)88_;9p%-(uMPQBDcA>z88LM)rsMlJ zIX76tDPLO+SC0I@sENZZbbe& zz~A(1Oa9}%Jf8CuAbk?~DaRM0JlbQtj{4q>a^KQfRrKusUQr*+?|ny&(st$h!n89z zr!6*BYCII>asJ~tztc)=B)7mnFCg7(D3|_JxjtUmeeN1bKM>=#4e4l)OnuY0pmVjA z)X_ZO)~WJ%x>eNtykqcc`R{#{OXa^}lhyP^(6be|v5F6Le_b!}rGdA*>>rFnIuFZ&CdCUw4~qjoF3Lg= z`R?{H7-t);P}{2qzR4B5AIdwYn6NlS$`je{*MngxAv6$C2mr?z*1M-A#iAr(0)J23Kq#XcXdKwvAJ@s zz$%P`bbf=@gLbtUE3vZA-FLdc2J^TR*koSU_N&c*v0U(KH%r@lxD`zF$yY0X4|6x~ zFZh`7MP0we^4{*LF+jVSE493Ydr{jn9!^z#UB+Cc;mM#)>1Vql z>H52AI)0l%597f#nm!$R`}~x<4&}|$@2|5`yJ$RM-l%ccYkVwRt$frF+~Dyp4^vi? zn<2qZI=<5G7L6}d9p_>5cn|$+0FnI$!f6M|ca0-~qkrpG*C@X%!uQc0 zg?5TRAV1f)^O2A1!~O6bvmpn2;X6iHPyZ>zf3~gr3JKW`dekHNTM5xUxlukn{Ymh= z;)0dm==k`b_3>O^EJC}|kJCR;ej~#BjoPI1F4x1<*WHHt@tl@+q~C&m8zA?cw*h~< zZJn+sUI6`1&2xREMw1aw{j1UUN!w9a6fW5_+S`d>-K+X{bro#^Cv*>!X6t`jt<=Chp!|qjJ}K>x%5oQO>96x6U3LHNG6}OFjB*l)L1B!$K)99{P9I z8iH4Je5SiRY=PZibk9Y@qj%!8=1Jpxy5`XK zTxwB1?Too!n_(q&bdG`eo1YmwN$}sHexm??zwCkK5=#nC_1E6+pxC*VJ>>kdVKo`7t&A{v8!FeOTbTg zjC;y&&Wl;_IrTTZm$e4ze~a<9(`;QW^r#Qnjrjg(N1l5OgS>7u-9lmO-A_H zDEIs}r*d$;j-tJO4hpQ4Cg-^R-Rer{x8wF`ZTF0uqBTglS;~P~Gw4J~pLYIc0Oigw zvt*`(H<^XA1tzTgM(f*fv6k45b#!ZZ#>Em|m=Cny2bzng3qHW@=qZrrUwk(^Ylmq) z62?|be51KJB{1?wpkEeq|I+f3=9^9l&jp{Y5}0ub%@;RKI-l@;@5Ugh;knSmY;(%f zhu$-8j#m17FQzb`*7zQf>%~F6;$_WE!=;=tdD!^}`)Z5x9Z~9i%Fs_E(0~6xe^zdP zJ16-^}>KVEMj9r@*GjANcl{1*JpeIV@@ z{t3R=XPQU8>P8 zl$VD=ex8f*o}9Oen!i6bSo!lUX)8zTb?n=!0)M{S z%l=IJu^9b2#7y>h;O_@lg&r>rPSfySu)nzl^*aRZ`Z~%Vf_}Xf$Y1KIcF<6#aLTs_I`7z5 zTJm`G$4{u&N^|A;63%m)`zHz(*|VZt+8tJH|5nG}3Vhe~&rDG{^d#o>cJ$|K;FA~I z{7Zu~+~OHRuP@@c4&nZ0G{WbAZaMN_h<>1*?Wb0#MC+vXJC_UO_dkK};l255mfx^S z;;HBMr{R%40rXSt&#jht@-4r6I==V9Zcnd~_<3zh*9u%;kkId3gK>Hc>UC7FyOkeL z2YfJLcuamA=HD5E` z;BzH^i}^O;yDS=MIIdQ^KZ5ua$J0*wH1BF^-8CQySGeI6uU0vv;OGcOz7j|!3~_&kZc;f*eE{#n$Md&peAd3L^G?0_QaQfH{ZmIy#;rb6%FCIR(*(wFex5R~P8U3F zzr0jn(hXQCu-0r`Cy?*s@!Wh^c=oXpKF@jo)cx8jCJ0Ww=MH>-?UK$Ps^_2C{4|A0=T|%lE2*RT7ka`bTcP<=_U$G*~*2->pCx+e^AS>&#z5NiUzz(mT^z2q-}A>YX9V1wXS0m zX1$gh!+L=Bv~l;4(n;WcQZn%ODzf2UG<;a-*ALx#Jfe6VzMtn%_4(}@J_h$JnvBn% zM!jp{ud7$MeTCFB8SK#X@zBF`@TlSqI46qER~0WYk15=H&*^c+%fm}LgicxL@lxD# zt8q_id^-OhJ*SG{USlSFWRRq%ex?fjc_rqTGr$M5yX3n*hbfmEb13-Eb6d2JL;jhM zzP3*2a^AZT?NaJq)_U}D-_DZwgRK0DKd08iFPg_Mz4*9sBejMRjFrU|=yw5Pd zeT49>?qHqY_G>>>A@|?h$E7e%D^cD?z$xx!ZEyM)pdMn!iM~FcHrEfA|0>-_+CC+y z&k(>e7izl>G>P^onW?hgPO{wjcTD>SC+j>}Y(CNaWzPF&sc=2Do>lHPomU5hW{Bo@ z{vGroLE&1#H@fdM-#tAx_YwSeW|G!t%gO;N&v$ovIdlQ+S3c@~+Xa$tm)U2!K!f(W zqP>sOzYFqjLz}p!r(R(5 zSf9QD>m}N?R)PPh&*M6oe0v7UnTv9lpg+j}?_++T-gGS5FKhbh_vGB~bzJpu@647O zB%PfjFxE9+`J=`hpy?8!xA)D29*+n9J;{_Q*Z4ZKug-hfyi=HSTc!w|cH5zHJZW#$ z_DAI*UgB)B#hjTFV=b^U26=QOEn#utob}1L(|d zAEfhgq+dT#=)VZM5zqVF z90zwJya4i*a)jSM2J_z~eGdpt^q1{w)^SXI)L-?hjNy61QzQHg`5x#}J`KV=@e|-1 zn2#z^U)G2E0NUv+1RdH5(GG{_FPta#=*`hSKa6b=-be?YnmA-9fr z(!b0?zj)QC-vf9D=8Vm&RGv4vZ;zCcIF7QWSjSbZ>#1@$o%in+RJ%8I-_~Nr#U*{p z_$);h%B_+Kcy!&O*H&P$?9x>+|R6IM}04bN-wyVK1aS1KoxPoae8pX6qoqV^)4e{`>Rt4D3V4SPkA|N4@HR zWlDE8_$6)EDBk3}|BIykWlD0?o9`zJjJc_o2~4?m{r+0>$NqxX!0tK@zr-`m6*_-a z2Q9i%PgqH{*G?ktes!VXtmokHC8g6~uh#NY?$8E_Z_gKN%O=ew+R};ql^Z0y7Jg=P z=5CC;MM|&5_MIp3ar=$dFO$DV*GY9|sqO>DxJ%YaJnywNHovU&Qg*YJTN?iVFd1B< z;fc`0M%<&M{9a*&T4W!O_KUmgHGK{CLy7#29yblxxBGtLJ<(Qolg4Mm_Va~KCh+%5 zW1)vrgPS$JG4wF9|5rR6dYFU#M>hXUUyce2=~{M0oJt zVG>?rHfej;LN6b^&)rkP8{NH&1-6)%mkMlh=Qx3JSJo*o7Oqi!&&k*NbCyp|l~CDF z->Ky$&DA=x>Mi!6=KYxxpSAKE^@CNghYx7KoCtmXOmLUd$%P)q@Q!yq#^Yz}{5v_k zZ+8ah{TlF)RfF`u@|S(OLg;NbBmQkbu6qK=$2yE#>cM&cgztg!zBA=W4f1tIy?S8& z=mP!Gm>+vX4t$GrdB}}&gwqfGuMz$|((zv5Q=mt=Jm?IgfA!|C+D>WnkCP;z+HF#f ztZ{2}d}Lk2dI2^9;Zf900I%bmD+O!L#Ov_4pPfTWA(pVaVr=l#CrOsrMHv!?tK zfk{{1E^tif{XMsur!{@TRPHC?)%gz=3C!AVny%dn7TqJFzvmGCp3O6wFCO~$kuvD# zbp9m`PnspeBwvl`UoWuE{ak0DoExe9)L?Gb?;Gy^6G(ikx#@C&lz&;X*$GZRGA+>G z)LRLSzO(C#^#X^PSA9Lq@F9Z7+?`hl%$fsLPSit=#$bQn1Ac<4!r}W%x;XC7WTD3y zVkK1GlTu&`@}K17zh1VF?hE?cr?q`5Oq-6g5;sOTH%as|f-d@=JA|Pvqz8x;E(^RhYI1TqyB5)2{osm_0@NmHx47 z+_M@^KiSbZ({keY{zUj^T{q-{J{q3w@-V@3R_uevfgfH5KUM{X?^KWm3G(($XA}T&xgF;HhR9!W4}c?6Swt<9`*# z-T5f@8Sp*zFvlVOSk(7ejE8xEKgV}{VZ9#@i*lxd9^ZkY{*~+c$F0=Xn9ZQWbv^gN zjichzC4Rqa{JjAGDqXZbK>F3_587K(e{dYioo6L?^lqkAu*ZKr_Y?Qvdwz@f^8va4 zK302wuYNSv?%%28I*jkG9MJJriIgx7`42?>xW6xNAFP~kUz^wKai6mg>3@!TtY~Xe zy~WL{6*1;Nh`&{PIeM2G{Inb4l$*5g={w%&-wd?NGobqk_I#7e zS?@oi%sjGEaQf4zGELe({oMDB5?+XNgtE|=R~VeBTcLi;LPBIPJzSo&Zo;4 z>G+6a{hT#Bl>bw%r>4tcJ{<(&foMWP=ND<==@*PCE!1?F?cVK za;X>PzU9aX5^Bt+;3wXDT4FWWlx`cL-**=H?3E@TPQU#>K+e%W$|mq%H_$r=@%x@| z=rYN<9XRzZe@FT!AtyPXO-4C9U)WIe$5oP_@}?c>cUcKF=3VeR^)S4jc^l?a&c}Q= za4qULb#1@nBtO^3o2_7xeBk&&eRpHMHpJYd?OJADRtn`Nk(Km?##@N)U5|FD+!_jh zYnAz*^!s}RPxX`Z0});l{&tGs_4a0^Oa70UTNLO1z1~WyNFGrB*)19$>49`zSe<_) zA@Mo)k*+&y^WW>fDU&Z6F5&Iw=s^PGR(@sumr}k<*>y7nPutg91h(2+X9{d^x9WII z<_}&dc#FAT_btQSjXGZH%~R_oJcjpbV&)ECpKz&;tDO0r;+fD}TxPpG&h_73`Rwl% zZNWOH7VSPc^UgY=i1`F(#D_5tLhZ2oc0*Jx&|+=#iEDj(zSL(P|P-me_(DC6cyO<&`@9Lt0o z+O)jThc^aKX?)E5O<^`TN$I9T;Fu3);`?I3)0&R*zdmf6F7%$nIIZ7)m+t#_S_w5~ z3go~|R#8L!HSJc;*I7F{mj?e(|9o5bjru+P5Pmks`?sLOdm8iy!}IYGqkTCO0l81U zAM)=v$o~}Nk6%3)b99gSx-NJe>G+;aUwqekG8?>O+@OBUt4h3};O<>6R&TF~P; zRvzPnej~31-G8AR+Cg6cocG!3uZQQnTOiNA?f9?u$1>2N-5l-T{)c*%ApK0N%Zts2 zny=DrSNT)o&ekuf3NKSWEO#Gie3^Sx=fT6Up6DNZtl>qWhn2xD#j8ROD}zrI|G)e4 zV)%RFy@kQL>Wk!p*{$glZjpX*(jBk$$&p{}vZTlYPrM@3%>F6Ll2vRZxyc#J=(K+v-lCQ}8py31E89M%}jMw)T zhy6B4d}Zj{h41(BUJw0ne1LxEc^UO5_vmaB?I*$aWq`L>p&IF>F<<>;6*UvUr_>*k z?>+*Z&%kHfKxd3flW0D0y=#O*%#GF<`i;%zC*~wPY2MO#quxzjFL(-m`fIIV(L5D; zKP?TmMCtT$dHtdo{J;%2)jHqQW1my+_S1Bco?mO0YW9Af6G7m^k#0BIl&>X=t_m2b>r7;guUI$PI|9mb!lvc1xXzZ3cRUTkN_+POlB`%Cs0?`dxR zKjZJA(GzvPr(IME_2qrFvq7JJt4;t;z4Y~vTilmFj`%qGjdr%TLaOKwA-Q{iuXIlA)fv}u0cH(VSeJe z^+U7=&+nhYINb;NDK}`>5J&orsP7Q;Gxd-3k8>L0xen%ipx11ta@;ob-wc%V3$zFQ zC>(+B_ExIVJ{b7xc44iw5A{EM_kwz_IY`HQ0_#vezE{|U{^dCN8`9Gc*QcP*cg9|J z*XsK43w%!r#tY>g^?#_M4E?rnTx~-;w4z;pKzTQU-UQ5#e6J`# z`U#jPb8d>tudGR{yh)iWR!KW0!;f^Gm<-O+__#S+A@w?3A8|jx^De%>cme9carPPd zX)@Y11HLLl{U)Qnd>@|jVG7!r=k-S;-2qZ-128 zb5Gv;_0Hk`bo36eepf&H`vys0Zf@88)=<;O3O>-CqAh!nV$r)Z&g-#zo1yb0euz18 zvA`mC_)>w?f0x;tdkS6!ztzS0i?o~qE1^+%vxgPorn(-{apZRc(fJ+f&G&ui_lSN>`+?6WuLc6AJs;0OPta9DG+!c~@6ViBc*`YH zFWQ&Rvw}tE8E7BQqodmQX_N5pt^DqNZ><~BaenTPc3jcz4Q+?QUVc8m1pT-g-*W-r z5~Qb`r2M!H^}H8+!utlf;9703y3oT!aGm1G(8EMDLy zF)mr&6}Uf0`=7@O-#blmcHkYBTM8d&7yP4U`IYnC+qIlV=j~pb++)W|c+%dcUz*N) zKlM5Lw6;UWRVW|Snj3YT4uz$0sg+!jzQVns^y}fLFz)`czl7Hr?^mzY-M(7z2Ke0@ z9-OJ`=Xmg2tq1K-Vz}o}Yqx6nM0agM@@37aw7{hCJEC;{mI;E#^DpSSG3KgU1+R9A ziv*5w{=Q7c^wV*kuo4=rEAw0T5jfS2I8Y${1U3P$3B5i1>yWosSxIH~_}$%#amDw5 zTCGN#ING(s-KX`g4A$xlTM7Tm9REizJK-?N5rIOpeYMrX9%W5J)B z0BOIpU-x%9B>he+zmeZ9@EPYb>aE6g9(aVr^L{PuvuGdw2 zr^ZKqG?mY?wpDAwbN*`hv#T*DYriJU=gNOccaw5Tqd8s28{a#Rn{i4f?VR@O7&lk@ zv)xMV}m^fSqK2sls2Lhrw%#A>!Z@5peTeii-xvO8&>q~QLJ{@=K+<38hQ zd_VoXp6mR1*Xy9~zdCx45B$0uc;)%LvO3}26|`%v2}WgkpQNIKuC^YQR}r?x|b z8<~@Ej=Q93o+5b0WmKNz>~YftALIV0{T98Ot>d@d-k@@%$^KpYw?6OBzh}a~cg}pG z<;HB+9Lb+FUO!it_xH3K=|>m(JK9mybs-=2mDFE7hxV%h-yMebc@^W6c6sF6x4{4J zV%+YJ@xu8#7%#OlhWi)pzj0+ekyvO^ulR$4Y+Tm{2 z3*ofC<@*r4zs_}XXUBCaXXrnV^YziAyj?8qhyQ}|>7RxC+6(>jC)BeQ?MnXvpQ1jr zFXlU^TM^y|_5Kq19>aR>Muc5eZ!#$?+M8DJNLU>7t$`K5Om){eP~B;8tO^Ah|e)Tb^ucU zci%|w*Om4Q)HBc@-wuqUi9Oz0Y@)wX)R%VJyeCOL!M5eE>AZb7%DD^mqCNTW-rjH7 zl8Hi1&Q*8y6j+g8qdSW#_o3>Edo@dFG|!u1wE~m*TNK93GunbR_VSY@Jm>s-^X>W9 zRQ{yxVRI$C);&L8V8&gwO5jZB-?Ckv9?uz4R$`-h9PhVgySyKH>9yKp6{p?VO!KDJJ84!PDk<8{gUbb`jkmk3$9id4cx$PIXYy9_ z*XO+*9Pb%UwGu1m2nr%QqZ{{=|0X(jw7@2}PVrpe&JjEvdjHck!6>Dd4n1Uk+Kt}a zEu-<&LtKn;K)e5of|phcy#*V6x>rsYEUHJC)qHiqScQqu!|GtR%Kb_+Uc-yrRXSf3 zJMTBW1pWhyLmyuioT%vv!f&;GdITpaUScLFEDlyFEDb$g;+hq&3U}@+^(YP|Dqa?P zSYahJ;#ZujKi~6QjXxgaW&5%Vb-r)jF-G}hCBl~$R9+(axX${=wkLIeKDNivDo-bX z|0&P=g1_^S57ZMCfh5$g`24b05anr&dah+86b>si0x4;4iL-YdcJQWao*s$2=#-*P+#iF_q)!wOB2^uA>K8|IrU=HmvYdZ;>)iwGqpWq zrq6T<$pm+75Eu{rej&0Ci3^_1FGvc^nCpiNOxvI7m#5slx&mo&N9s9KLw=`@-*(t{ zRO5U*W_qG)6XIQMgjM)h(!I0cK;mhK>uES zke+go`|$}#M?2#cR!TMIVbEEPc6+6t*K>_V`;_55h<#Qp)B61nV)3qR(|*TAK-ly&Zq2O`a|Qo<4n~17OUAKzxE#f6ZNhEq+bV~vr`^#KtAphmg}l7 zx(9f`a;^6(_?`)vkI3&l4|@vy_5$*ihJKt@G_ThDC1#Dn0?5e$p~s7x*J^lK;NQ=r zK9YR9v?ww$jQ%*k)6SZDNUmqz!Z`RI-@*L|*GKfvRJZ&$D}~;d?FXwIV>|UN@b?5i zME}qa8t*Bxy^cgVJcr(e@=nuP$QZ5*cOsng;U<+b;#XZtkM4}peHos}Q#8>D4)*_Jp8uz@P>7HLD;S;U=$~xblW5t67m4Z(+Ta;d{$<7lzYsRX) zNiDp+K6=If9mnMAG@;qfy<;OqeiBe z3;fE;uQ9Ys*~)KzUy)i`2Ab73;iO}f54fbM}N`N z(H?xa{W;{@jdq+0NPF5DpkIgjZUJ0~e7pxw|887||5-hm1hgLb5} ztD>D%4)ye}An)}{Lpg6yPp-ddzrg(|`+pAVS&DKi+q)~D{0O`o=y2b8I@0qU1nPyT z@8^4M)VK0{kA5x>K)u<2bHQgL(QY+}|26oof%ACR`8`ea$MH1=@u#7lJM(XUVeE>kDb`O}X+1eDCkjUYy@1S&-y*gW< zoKa?b>xyEax#&X4S7GH>{KLJ!M&MBN5A`Qpzr=e?o+I%mLEh88{W;9L!&jAS`5cEl zf8qGyIn6y7-%pD z(w-=n^UR?qO6th(gqxu2-x-mjzj(#Rd!S;^?KjRZ{)We`6zcLck}yl%00^4+wgrI(8q8cJO=f=3Uod}{E3hQ zKf`xF4mbtr*iP@Ge|Qc`|0Z8RzPy3-pJIM#H%aZEjMeJzu`iB?KD-`w?UaL@cc`b~ z{QnWg!@ekg9O(TD-^q0-^)Q@I=A%CELJr1)V|{%>4->(0il;&kbAh*CN`@ZB0*mzT z43RHr$d6P!hV$68E72O|=vTz}{aDKUOk0%eJlY$^ntQAgI(6Zoi2`H!jM7WyU#%CM z{)Do@lS=ncGgjm4t;FuNKaYn#JQ?`=?n&4u)34oc(9gVw{ut&9+Mjbh*VwISuFyRM z{Y^W)RgaC*6*cdJ^L&;2f`u3_?Py=FFWy}BjINiz9CcGKq09O6)*X*`3f^Yr*O+G^ z&nQo5r%XSc4_QrSsE=$w{r@m}#1e_&x&Hy(Cax9y59_bENMIGdgLXIM(}%(5wV01M zuaVEzfd9Woz23uj%>YjOg&!b)*&eh{;<_Z%UXA)SoUZ+rcIPV0guT*Izqs*soY^4A z37#-58XtEL%oDuEJgDChGvluiyfLg^BXFXX-)R3}hO`K5!hBEv`~%D^rBi`>c2%%f zrGLc(@cs1rR#muM%m2X&wa70L#xM1qyU>n2PtF17eSg}8-?C%DQprzw{@k*^wF%Do zlYV@;j@ci4nc9A~^26~M*Yx|%^SCdpP>J{*>FLjM1o)r={6{-+>T92~n$1uT^CJ51 zWzcyS<oV^_7eui@CM`R81^IYR!;5*9W z6-dwdgZw!X?Y|!Kk8*K6zUKk-?{Ub_`^?i(-cra(+7tW}boThSMLoV4;oq4#81g&m zu2#Ov+CDntR_A}3E-l<>VzUJ%%qoRx_a9w9)aQp^D&drO8TYx4*BH)`QfAgliKn08 z`ut|4Py1`Wix&(1dM#>0{Z{MQ!`#py;RR;%u>vb`&w%$0hPsMY2`_;kL)y`lnvqVzhq$BK1y-2B%LNu% z`Hl3h`ERw|%8l2r6yg25vgR#X?%~G2PjC?K;TD)lDn|wfSExKL!TSYOxTiV`{JC(S zSc}kqd%XNc?>kQNa5(hg89Q&7gk)i8ua(U3j}X*vs6yS-ObAcZ-701EBsE@ znEQPHq5m`P?G8y7a|;pz6X@r(6)dtdK!46Rf6{y-3){02{z1>*sQi3k|37XJochN1 zkUncAH0oF2HRd7BUmZTUP{K3zFN&wTy#A&p{M8@{FE)>8c%|`@o9}*>xorqfYCjHj zPhBkO2ig*qcLl+^b%GZJu)hxeeURW)ZinV83Px)Cm%2w4-*Znm_^aam@qW+QMgCqf z*R7K=eoG*SXrIUV=~jGSLPtTwfAFvHcDKJN-JADMPLXV zcYgeiv4TZdaODt5mvXOZe65+T z>z0|}Tgum2`-XA6ozbbnXl9p=R~VF%-~QcvnMo) zJTCvVR8o#Y`UgvjRlYue@yvOM^Cs;pX;(OZKYuRxCh}7s`jG9rThwCh^CwR`^eWdq4&<*8{1*E?H2k`%7gmZtq5%vBF za4X=K;IBg9rFh4sfB4lJ6a7tveD4$dp#54LdN?rnQSlPk9o=5oZJ4AViSqBpcsvR1 z`-?Lq)|k7m^XZOPZD}O0!|s}|Bq&f=iu)23{R$P2qn{7L`fz&KL&Fb8_;~R3G?c@0 zX7(q~8TJKVY)5-@-H?I&eptCbI^VEbO)~`Tw@06XaBr;^*##l~EQEht^p1YfE|jwo z;nYivM0-%b^jpMtfX)fP6Fqk8JV*Qcv)b$hCi-K4zJzpKck=$vgP^k$@do%i_}-;E z{Qlx$^v@fp=SZZh#W>rI{HLQ`I1c6`oc`nZ4iER+eDACrC4xPx}S>52HOc*Q4YQ-ml=jtT~VuuYulsDCbH* z>K|rfJaa!tJ;_7p=U#y4BOmSKIsRS*{av8*KGJ<_4%B(F2>nF)R@kdW!EuV$haSel9{nU=Rj{U)z@x}d_`c7&65YLUM&*Qy^lTQ}v zd*6X5vWiCb)id==E8Hk;zdk{$%J*99cOp5Y%jU;we0}iORgyE>FY0$>T%E2z6XpmV ze{sBLo$2!NP3|O3mvBE{Ao=)SI_JGiFhS$vp@*rUS@BqxhevQ74|!GVCTTq10 z+h6EDBbk3}vEX+Miq|-AFOo3FX}iS&zdvuXQcAS$G*@X2sRwGe5-R-ng7!z;#ZM7DW|ydhPM8O# z3Z5~WRsS;FbU#Y)#&C!z~=AJeQnGb#)kNkII zJS{*v>NTlnxygDuJSRID^I6P}Rz9q?FU^q@e8(*X`h%%wtEO z{9hpa8q}NmbZGi4(xvboa|88&A>xBh zO&1G2%rq}kJZ_dNWV`X5fmAT#c&TxfTchy>roVn^vHS5{2_KR_X}-Yn{8tJq&H5_@ zFSPG<2rM%=XKe1$b!UOOeTsxvG%wNpOL?$P=~kKb3X6iZR^vmDmjoL$ytK>1s^(Df zfg$0Jo|3-FZqo2t=QT2M_YbXKi~Csj2Qj4@@kO{!<$R;NM$^}r|20bfmc z_v8hFC!K%SBonl#e9O9PHD5BAf4;=W%=L;>zfcoCsr<+Ne5PxH%7cCOxlz--wrOrk z@}+h3MKFJhhG*^L$4Pj?+^;e9u*)lKTltOr z0R)RYKbzkxomMwmIWUd=OnrXaEJ@d3!19bswfHFxx9x)0Wql~z*i^{ZBH6^+h`TKdR;{lfVN2<+h=Q9fY&zxf*xeDKKfNJ zQ!-KJ=x?1>VEU}262+B(|?k3f|gTqF*%K3KreRN565sPx}nk zi~G~pR(_-WzZ&&@tee+gQ2)t&#*HO^)^^}|LcD#jj+d9r9~EAR?<@hG>H9pQa&h-) zUmxmQxnAqhZK9KyV@`NwxxlHY@5UA09)^fw;#IUZ@h!E=E# z5Pv@QMMt8ZX92!9YMh@h@tw=i-+wj(21Vq}wKhIo;JmgCPGGA0K&{6=Ft5~@o(Tz$ z=LhJDq{UXMoQ~`=H9WGf%t?H``Gv~;biUiZf~U+H9k&^r=On|)+8#~t=S2TYW2~f( z<{70L=`Ed?w}%0*btPI(+O9iK(&fyJa|E_q`4xSizZaUw`*l&h>!{2<9b`_c~WhFHFKIoBY$4x(ESzD#) zVrH6^bT!6XppLNzs|Ga=|0r=YNYka=J6iwY*1u=L^;y;o@pRCRIrCPB(u1F>c0AAd;eIbec>M(3=UPxe{<{t&@GwYTptko)`BxBXlBA>H{aU1w3A&$f~(qTA;4 z@w}J!?|A-n7RCkdOHiM8v(@b81nsTp9TkkHK~D}nz zzg-BrFF?-yQodfML{)2LP?_+6!*K<;zcsuBxkNQ%+(Jte7g!3J;XUF;PT8MD! zSE)y$9&8xuMLPrfkD(re^0rM^H4&c%Cnz7}>==bp;V&(2EGw7pdORLX)bQ%yCGB6zl~~v`OY&#TDLx;n(l)XO0H4s#ihfL+knTbBQ(vTe z{}f*i_a80psFf0ugr5_hmp5Qs9XzV%#S%~Zu?rAB&Pr(1ZlGI^d1s zzj|0O-`5v%ZJ4`A@mx4uTPPOz`7aZCm<%T=pI;09P6n4~`kK(gO#V{Ev!Or7jR%)0 zKFpL3lJc|g_e;HJH;ilAVbQMh0Q5W8pDV27j@}aozkG}Squs&|^xqp8_q3z=!fG~? zMEp+R1JHgOk)Gpxm$_Eg1@vFe_1+fbZ*KDR{)zFNu`Bias?Fc0OH3B_=Bp<5o%x_l*@@$0*-a1y^gnvMvvcg3U)ry8EpBM)$_S z7ekG|$6g#hdAx)d!+tu2brJ9T9)|J8^*`-Z_?_&(UFMn+q4Qtx#qZD`T;KBE_>=hV zYt4~5uDGw`IobVIs2Ia}gnV^YyVo;JK|ArD1^ILv`0dqpKd+OI?!&m;0KWq-pkCaU zabElr<`1?H>&g4Zv^(*uCS!h!dVC9d+`rrp{`fcAf#(aH2e(@Nygm1#S%0qocjG&F zK6M4^^>>|(qWKNqGj;S>4WVBT+Rr`?`fShBk^ceIX942(L-<0_qrZzZ*Zru+Blx}z zD8C{9pz>EX@b)9=VCx|HqH9l)U(p{utnp3x*K`E71VJd_nb3#RPyZf$w##e!c(~~# zNtX<^DV_*DY---Fc+BlkSnK>v0LssddsM@D{?O0;RdKE>6TxGOXF?ChU_F|)&uVzJ zDbjV|aQn~mrToVHG+oC{wC+N|TkJB08TYWlNMAc&!W-N!-B%~9V3EGgj9V@+mG|>@ zJ?4MD-R#~Q7j~*V ziU+$ZB)%AS$0epFC3p|_?70H_n+G}sR^onAAMkB6`n?1=*I`egzYi|>dbs4{{o$Ly z4+miUUJ5zC0Q^pW(e=oG58&m-zYuXg(oaD8X50tjy0t&j--U8$N7Vs*k(Js+c5ui) z66p=*)td0%zMlhchw`@7r?*Y(H&8cY5R?z8phNsi7+xJ@jSKYit#Pf(B*Y5F;F+WlcUJf}-dET$b zmIXp-6!M+Y;onnz-Fo^R;Zc{$e`j9l%V~uiIS=ie!n%U~9F73LT!;GpKeE0Ays9Dz zw?o1fNIYN&5JE&yP|%y3%T00i1%5#qv5Ko%8LM3&CN4th|;6~S%XMih4) zM=vO#f=-;#ad6*JM^VRdK}6oE>i>uL=7sOOMfHBVtE;Q4tE+#)due^@|E@9P@O>k| zcMgJ2jYs_(jeAFUF7QFuIlUSEp=|>F($4UM;jW$ZBT4&$Ey&M%JG6`B`Lpvn6!I~& zhkW%#(BC6~lzVA!I1h4058u^WVBV~j{}tP-l+L>1UU(MH4aoOG|HUmO9rb3FkaI?& zoxQ8>(tf5N0q%eH4t{Nkj(WKtA$^8w>sGfbn__ z{Yt-V?C*t$f5dm`Qz(A`=!$YM?;T%If41@|`ibFwk@pN+pq@#X$IY*QxUZCaentKMP_h~O5-Oo@CO7|soczy%FQi)VAEvFv-bmFNIbrN3`WCjAu{gXAm z6#j$y2F_1-z3HRj6?j)Ae2-Y$QR?+nz7T72@e!|GZz-p*Jyp|lf64VI?z#KE5z{Rq z>0;(JovG2_sriCeVIAfDH|jU(XRiX|LOQ43jC_~-jX%&YRn^7Xj(Dm>VX?hWdn)4n zbA{Ab>6N;61`Zbc5-Q>6djgZDpT?J&OMJn3PdW5Iyj*bFk;eTBO;_r@aG`{kn$s08 zvU}zTo@Xx5^p&u~j|a}4w8S5v=@O{}|3_tME{%PO7S1@BQz0R4ZD`P)miUg3EF#^e2Sq?C{z%{khRF81=% z1kbbQ>3Wi5x+=%XG|q2!5Bs#1kZ!KHT+($lUn}edfAbmU9pww1>Cah}ioh4Ed)7>+YZ0Illy(vHsTB%eB5l zkg4Mo^{!C76809n$3(g7&aBsUKG0rZIQVe_-$y+m{q^u(#%QdEAMHM+owSQ`%TMPB z7V;6lLF*l2?kE$y& zi}4;y4dj;y-tTzSY}9uCBe+O8VF~6t@0;9GC8dS;U|Mz1dhV}uxQB51H9bbDBJ5|( zU;1m{eqtl&^FqvncL1p`+C9LP%l+^*m`~it^IUZ~(%k|&{snyeT$DEn^SZNnP`|5_ zJvd%U&ePc%?zaLLp6C5p|yo9&)p3(5Ure-|^U+c?n=uZ#dU2Ok?e9m60 z!h25flEA^F_gBR$0|%qt^NJ_oFRjuV9g!kmiw*Z(ck76km@m(hkQzJk0)b_Iuge4$ znu~S)uQkUgMHSmtOC&sD4o(!9wCAl57)_mgmB1=re#3czckPmPr`FH+N@CtF#p8j4 ziR$~6-uwBlXm}OuPAbi-isySD>->oY4llR6HM|u1{?h6t9i+YizWg4&|4zFKt}~|o z51mI3gWhSkO}lH}8@##R`O}<;`NMt+{nRN(uCa?INIksA6YAG>oD$Usua)o&-@Oml z#cohKYVAv?+>?oF|90{fHMuswR{ob~23#(%GxjOz=ER<$_!+q^I%*%l~dqTgti0AphwZ616 z)N4Y{q8vA<{x{{{lZH7oASfrz}flrL;01^w-(Jele> zF>FpKCq1e3Ut$}TZe}39Dz!_;xhD9x){|v^QrOmBqZE@Le6RU40vDd?{jBl1frHt> zUzGy6-=-Z;g|;&ELkqrqH~O3V_!lrvNzmo0TMufvC8MRa;k!4DEtTH3t{9=~&igIW z>Lh$P#`y)5o8LIGUc#OAW2leDe7MP%(9kXq^g=re>LV#%3|;Cd>K&CL{x5r@0WLq~ z6W*`jK7Ct#(>0R9jYjxx8@{6*=!fr?&hlM3JO{fObW3_&jd~ye~+rVZ)Qk%a{HH41m1>zp0wi?<#QRpe`xWf_9yHA1mzy^CD+k= zzfby#8s3|wegAUM{YZ?*hSa&*A9K*(3wAjBE9!F!O}>t2)IO*%X71M+!u6}dzOh1T z;=5-Ne{)1|>SdFro93%D?wqRFzeDpErOwgs_}_DeWZ>RqS%&tUhV{1v`uA0||6`2D zAFbx-dPn?Gr! zv#TvJzJ~X;+owu;-hYb(W0lThfs2oN12kPSaDKbTVV=hTX*ae4^KGavrG@WO`U=dC z;3qrD&p&CkJHzM83 zD2M(OenmT`=qw238{qVl)$65aG$b4C<2pF#Tvu+H8Ljmd1%)~e6@kNxy|Xnuf_gds zerQ&!;q)U{1^btH+UI9UiBs!5UD2kXo$r}vHGRi4XXp8D^A>$2-2w2KR&_h43%<&i z-%vhC+jp+Obq%-77Wi4+eQ|-qOr6rvH_hCAx8eBCf7LZ_ka+5~BF*+H#XMOT(G`AS z{ktn9p8k{eo1Hqp{+#CggkO$+`L@MFt0dh8zWf@q5AD0we%43ug1Rl|2s~KdT<7V- z#_|30eF+Wkn}9w(U7isL{sqR<`htai3iYc(zi}8Rt~*;%e=o$3YUa)(ZvlVeId`4k zLMe%Q&RfyGU(gS)BmbDd<)4Ce;t==^&)F$A4jlB^IBC}gjMLV^qplD<9qprC|1@7h zLw9kNBF+P~ZKG_Fh}*I+Xe z^YuIQ@2il{G7z6_-FlE2IQ!_^8&_&OO46J^pBs_yp0uI8rNm=1x_1@0Dedm%0)Go8 z%@O!l&`0xNmFCaF`^yDE*&2y|4SeQIw1@hq>wSqehW-ckp?y&sXgQU3jdGTVxpStZ zi+L|8CDnNAG``fh{n!xj)y&{J4bS(kSJ)_iE9(|6&lhwFX>^cXXD>38rw_X^kvMv;$pJoG2Qb0_+H zpd9}Y=>ApAlXi9PT~X@OX^*!lZHA6-1mCqD{5^^KYA`O9O`mm_mS^L;^FR+Lp?uos z-3&fKyN|yDe-7z6-+#q;3`IRnseM5U_mqLF) z6OsNE#J2*Z-OnBP&Vhg@Ny>cA!sN4n#b&+p3)zDw;%`cz08O0B)qwKZK1%d zAhA|prF9zGa`T7Iv?5bGSHcti3G)Qj+J@Bvi-RE@1b&kC53RR6ZH2bgrA7- z$V9&sq`i5Jguj$5(s{gUxw|KD9lmco`g2bDfI3OH(%exmaN{uf4f!kh^+|wh0Jr!W zZ6-Ik^=4oC4bvoK>e3HXKIHn<8|`Q?16N7>>t^2!fi?Aw^93Gi*rh#sYF*dmf=|Ub z7lPkK(LUN=+|_Wp^4Ztd?b7e*fOVrg?9poM+uAQ9&0Z~`z&cNnndVWI|0u6@F?Xw+ z-UECf>itXe@!nYv^N!+Kw&z4?S5J(4LEyr>dTtzJ<~>cvc}Mw|es>Q0l3U&lAFDlg zdxPu$%gpC0@14^8m`M`<5Wf38^!w+K`=hB(T={tawKRCHQPLOtpJ{llnWOrQ67RbS z8gAWvAnIMC<_njf_8zcbuD4%nc#ZvjyyT19*L7S%dobOfMe$x`l|9f~;)~279lu1A zlh-St@2m{|t>whcw+f>vr7Ik#__G@^FcmG*}M*@c@k$;i>MdNwDfOh;F>)gGE z|Eg4U^gWIJpoce>6)Rtw3Y_~?>Nj}5p?m$DOsSXm20GR`yC~A;Y|0 zf$63ro`d_L`PEf@Bwf<}q46Eeo8twKnb}teEcd%C6&UyBH=Osrg7BQ?&}#;f+;(&^DE+ z`RM1VgV~_#RzdKS(o1@er*7rMMWQ|AHw;9ZUKI)gva?(1vNM{C62hxk!w-&?-a65bC3 zpPG&MSL>a>#joxCN@w(kdU->qK++EyCBHJx$7#PLQs}gP zJQ-BjUE1R@vuTW!AMs9C`r!S|%qF+L&h}2y`tkw?v%QlQ&kP*Qt?sROw!OWjl#>p6 zs`CX4j>R#!Ee2QP0~L&kjh} z4|Ku(yDzIz15r8W3l zrJ14gJ`&t|iL@gcIDCe8v4$scuGS0Rdwa62j%Z1QkyZ}jV}C0^lMq*)@$zbzqW_9=RU;u z4qrNPk>uk(pa%Uq0pq$CkozXueWvW}YbD>>>zqD&Mrx6^r_kJRv4n?qurmdgSC3dJ zFzPMV_?p1Mq`Bfm2|pq?rW!TA%A8vv;guU$d`H%9(DR-Dd>$|E1n4P0xC1zn2X= z{5EEyerM(pe@J<4rJSy~H&o!c^SDvyPwunc2VL9bX0oKG z9)R{`+~4j-e(v{4A4LfNH@V>6kCH8(xil z&n2jb=T&@P>~n-)?`!qON4aVE&MLrNm}flCoQm{!AV2T9kdIQYa}eK2ySzKm&d-sb z_gybVy$8Wh-d(>%$0dD?YZv)Y>#Ai@3AqmC3`aSQnD;}`AK%rud`14_T27T2q&-s! zzj7tW7r}ms@3&DO%ysKgq~m=R>aFOzY!FT=ud5QG5Kl!23Bkgc`-{vjk=eZl{gZ3so&m|qsKiBo&@ferw z=x?4MX9bVvN{V|BPyV|e_;|FN^N07%d2YD{-!TvHKIEH>cHW0@-d{Wo{mS;xPWw`% z`#a`6*Ovnbe-@Dbx;X!6r${;D4W#3|-Uzwi=f-!Het2F#4gLNM+S3u=nTGHP!jtLl zJbX~IKPe^hUF_FUF8#-H9XkQv-2vmz@uc1I4)jkgzLR=#(p{_M$qgp_<9jK*huRW! z_ZrHjd`Ev)Jip=n0qXHd*WHkx^Pm1AW}&|*2av8w=R8Mc|JI;%>LN7ee*I&$Nl9F zq~kjFFz`nQzFQ~hK0>=QF|HgB@|&NKp8hLFw>@)>9> zIS1+M0py>*Gp7AbdLlj2UX*mxfb`VMzJqc3FZe|=m6?$C@m@p3YomCXFQK8l0{Y*8 za%N?GryA?u(ckp1aAlg)2eepfbsT9=a5=uiosx&^Kw5_C1-8_Um@nmb96Tjk;CsIO zhUaa*0<&=SL#*hA)?NJb#>xaVcpwYPE#ZexL6f4hB8*ob^0k zQW>+TVU~^)_iOpEPi^ou+Vp<0=od^unl!Y2XW2>2Sx*$w?Y?eh!qZZz+s)tD=*m z@9ci=D{8)}KV`i9Z?rGJ;khU3y$19D_=ax2gmZtf_{CYP1n2(a3iNN=72PzP`$X<% z8ZVU8;rm|bmxzriy;TP9Ye>TO1>RpdNtul+UgA0X=!jRWcv+K!9la98^8*Jny|<2) z@(XOahIfbmrkDp3{E$2H=BzsU_6E`wGm5pp$dJFAhU4coyRsO`W0bh@||P_F_cI7>38rgz867z zg1y$+6|O@1{urN^>&EE#{s4aQcfeCx-Bl;;B7frda9=V3a&62wJ5-*_@jRDuz$3nt z63(O4eU}R4I&d9`H^2|KNHQM}ItqcD+6j#%p|6?{IuC?N?~mavH|v`1P(I9|NB~i20hZb#8w7 zfAo`*_>NM{?=(a3TDxeCK;CyPvoT#ii<&0tzO~HOV}82(#+A^!WVUkt%BR$I(Q*gc zw%w(i^)1~yu(W$AOLOeZ1tq)Mif*_(2QXLEyu6^Ct_W zT=nDtcdkgfrhUxY=Iz;%?mLt_wXToOtHGv7+y93xQA#+WF<<#?Jnb2c{{nV7qn9qw z{rtMrf5u5UCoX$i>6vy*lYI#d?Is)FSS+wd-K|Rm@?5g9S+>sCKA7L9Vtm_zu6Bcd z7Mb!%l8^e#=fI!u1)m+@ORO>1;ybRh?i`8sn3S9L*1fP=(k-iV{?rOGoaX8#d#zFg z<@RgqURFI5_1&|Ldw-XDg&AqKos>hp*WJEgNA0L5`HGrU=D4ZyKg#8&EPYbPXTG^e z$E)4SqSGaw`oezA|4{mU1^w~iT6fRmhwGdjQab3ihyRd{Pgh@Z%lVI6xpU2*wFf(- z+<8!rU8VGz?q8|noN4|uSJJofs#cHm$R{LORU_;T93@sgf=k^4Qr?g6C_>Jj$fJ8QsiXfL(bm)u9+&*nNc z)z{!7dY<+p9DXY3VI0@L3`HK9n$aMzPUT-hx9hso;^$Ix4!%uGZyR3g-FMD(5biN zI{Q({4PVhC z{s?|Iq!E1&GY%gz^9_WPC)q%du zO#}Lu_gOok{4+oYyl=qs)W^{to=4t^bhV%Z>bJ?C-ov=i-*kn!?`o;J(tk_m)sgqo z&>s2)DzN$5zggxQkA}buGdw=b4-E4ykLdyH?x`+Yd;p*<1{=Ge7986$IL(T z1V-(`^91r-=zX-iGrpg48uw9rFM#xUvw2hLa|7~q1pSp(w>wqJ?PYswy22gyr=!9yTA-zenbCnz5>$;_h!0#ecbm24#vGx@I4MDy;BvB1P<2Y zo*2*3r(k|h2VK+x9=2Prl$xlw`47gK=h)m2-rD^0%O%}t%(Ic0*OZG$51;#zDwOY$ zZW8+OLZn}VdU;Mty9CO2F|5~7uN>d!V6wWO;+#+P8*tKaSKpWD|NOL%Y9xeu$GcE} zfOyj9quYPb7SUdja_P08<6F_rb#=pad?up*HuIAE{z z+p{D^4D_&$f@A*AE^;6o_?Fv3Ys|3tp__|9L? z4jU8xMa?DJzcG80?%z1R$-srj;TJvPJ9#b!J%wAvLOW4ki!se~)e`;Oz^U!}INxEXT^i!~GW5 z#fLE-KcT-zfiG|$@;bufsE6mI-y`4q_&(0_<1l}INBC=K56@!;V!Y_TA%=LK%aAW{ zepPQ3q996-CHAMri( zhk6z8MQDff${U^sp&ZK7Jhx)MzdqXNU({~U@2bN7B4LN>3dna(Z@T=gPScbY5g`*K!ly%eqfa1P+gSn>4&6 za4_k)^|>JB^vi97U&l*{ymt}}p4WAqdUN(0{SXcX-R$@0Tq5~K4m_qoU?IkZbg&(K zr#I;Cd(hRH$lo6Q&U5J=$bT&SlySe?4D>YtbVqw0`d^~HoA*lZZTO3R@2{w*_0E^H zKVC%rv`<*uDwrhge#4jFP_F}davSpX2OW&{HQMkTgmkb9-!~iWqF)-`QzbvDLw>K( zy(32Z>zfh&!%H_S-Edy<|9YcM`H`I5_+>+7G>{vjXZ zx%(sbZ%PMG`I^kUzRvBWhoB$J{5LedJeZ<#bgB8f;>F(AYa~Z3aCnLL4-HSE9M0oh z>->FY2eI*zzRbJ3o4`Wo6Z)kd@dXd{^R1f>H;+=7>)ZCZaLO%ok{+0r}+M!(qW|%43|LK17M!~zA zJ5~zp?g1lp-UfPe&0v$b#@$Z3p>#H+zF;BKtHe?>cKcSXCOb?Xl6zP84f zuM7FE-BT_w-5h(BzyjFIxAg@(>Tj*2$)$^!L)t%aU!%kGvwfcYFA=!#WRTxe@U!Yi zoG6g|>`IK!HR#8JjF)wUXwUF5;{UcIK3(#4u9V-9eh@x#(C=}<`M!HQlrt9b)Ti)1 zCD)65#Gi%qz0p71M`od)c<=CgUurRi_QqHFikkjNM}6w>9qzs<`NMA1^ElGczAYbk zCyeuG&;k9vb3J*^o;FEpnve9{pFD>8xqs)mA?-wR!C#-r_^*}xe21{zE7R%(zX9d# zMEgzy-5l^GHuQ^texZHGi%9ImvG$aO&HCQm!caiBq(mn0-`NsEGMc_g8WIxbE94ybl_sr10HWO_u;49cljA zLBf;XODhDHo2bSoDW}oS6ncUjTcq(>fxFKYH>dWId>QzzEZbM(I|cK!-uzTt@$}%0 z$&#*%SFCt;(56)IzIJO5fg`PZkEq0dW~tyu{1cjTO&>9J`aMVW%Kz`VZWa6k(oQA; zx=6!#7J`nb-_HWh{c_3nk+Y=Ug`lsW%!Eq?&xbs9dGqha3r@L%>+!m}X;(=2t)Rb~ zkv}JGf`0#rsONF(&VM-XDTj1HKHfi|T}z!WrH1c!puFDA4%P|&0p{fwD0javq2awn zd@s)p-D+ygMZQLx4oJ^?9Gss^k&pB=5$WlNgZD)qgSs1MjlgWT%pE;iv`o511u-V6=T@-J3MdzTF4?`;2?E9rSJ=n&><8{Ct8 z9(d(HX=Sz7xrlC<_SC(hpe9p3grqA>aEtmLQJ74jx z<^|Qyuw4bd#ERbYKu>{L_BUP6yPJ^<1kX3yR31(@R^_ZNcn6}uF3|F_{BLU{UAFDl zPGCm$^0flHrrbMqx!#3!g43>|tf_vQ;8m$5n!nOKJXLV=*NFe)T)`9c3j+UkCBB4) z=K#UmT3*D~x%@#JT{$XEgW^^84E?@@cUaqz2wXV#iIi8%>~c+CVGH|7xl#YHen-+e z|1vStTziz~j4^M8rmqbgtnl3Z!eYGRMtPU=9Pf4X0bjW&bAsyE27x|XU>>Fc9)x_+ z1M~PA;Cp>(U3hOE^p_R5an148X?yaT+`Yo2cb(#~z`>|@z2Zsh{F~CxVU2bCI)-;G z7=F;)sOjg`wVkK+-S8K!@e-`JQG1idN4!E`;)kSeR-E^NXW(A(k#k1)y=orZs_6>6 z+Z5*F9&$f_v*JbZB4l6cQ|OS`{nIN#s6AN^QkQW_q&?tXMR-l+=xqN)C%6!(HEOyBlWLnOFY zXV5VFisriue4cv1F+*HCo?tlIS%L5P1AKoB=HXtRKam5z7lXCqrmtPEb$d=Gtnh4*g5!;a*V^?`I{dA5yt3k$OwhRhqU+Uwl6^0l(L@d*yuF z41RT!FSUmDCB6dF*!$IWBEA-%9;F58}Qm4c|@q^?|f) zjgsy~UEPeKog?+i>|e@h)LS+OeRKcZV}z7q;I-VCcYH-n4Zer_;BJ`zm!ZEuMZJ{E zendX%=cosrjr#tL@;EOjM?Z*s7h!(!9tF?AmLvW=?9-`7t-#@!=NoK4-GA;!dvC#a)_^}y4lKiW@ce=MeeM@7#`yF8*wrJY zmeBvgv6)I&d%+LF^BBbo0|)>29j}PV*7ypu#Y+B|_sKGWiNJ-Iz>YZIdYUfR^qwN| z^e=G4jwpCu<-;HFJ@jAuD{$HceuQ?Fr*gGC`mrxQGVh(;sRyLb8$L7s+({_9nLM?Ufp`ib`fNXMN2KlxHiXjh4KAm$yX<uL&GXdNIW-0tYL-zKTbD$M-m{q-W0GE@)Q_@ z^Zbd@o=(7P%+z|p`}y)Kei&T*Go<(GHcE$^>V|5)o6wJq>0NY1(SH^Y}^Nq$|#M+BqFY{1S{0^{%}4Mf(@-X9u=i zwOU%Z1@+#8dJdu--m4h}{(0LtNgc|gp!c>xmG(!bH%wvIz`<;9xZ)Xsdq1v&H^QY0 z9L)F5QoJ?%C>49vibn$nE4-14mj@1(!k+PVtb+-2j>cD-zbVBf&D2YzUB$lqhI$IT zw@}vP(j~ofUHZVms5eIOn!vqF*v~kBZBbvdhxfJ}tb+V_%2?ANA<>}ADFR<^SEKp= zjsB=L&OcO;O|v7RtrG0uxL9w^9D*b~kcQ-1!}gndw?? z)Qr-7am1W^wWKTee%165$e{`JKk1wL>SI99W#BKP(SF)J^FCJYSyHMoKSNHUpHbS| zj6uFTFyA`(S8BW3m`k+eY+tjRJkxcW{I7fJm0E$h{)*WG^KGS$|8ekJlYw)R&bI$T zi4XVpR$y!BO*?r#l@Fx*5-NPDO2?J&)kLh5Ur7g1Z-KU_AJ(n7ceUb`frFv{;?`15 zcl5){_)hAdaxlI-lpBVA8GT7@%+QYQ1A#pMVE=lUZv)Z~&XoA;nmIpwJdfx3EcJNQ ze{((LyFUYb$$iw{bP4#@dhl(Yv(wKR?WDNgmZ9B`fgWi`!h0CxBTphet8uJS1nK%a zjO)+7HpB299OY=9V`QS=xK7coWCPmC^AO(O-iC1cf&1XKwaSsW{$2)tmcQMtxQ~La z!u_$1Ta9<4!eo2+Kq;aO(0=Fc`g%LVW1%Ws$-{3a)G@p;vEAl;n`vx3^TlCBHrH#2Z{d-O|A z{o@R*=f8sf_+9|*pn2bhdd96aQfkOg%tKmFrR}IaS7T1mkt;EOQ~JyFHCgBfY`w0N z>U~R`@b@ zSdD38f4xi~&pq<(6B?guUex*D#qLo(R1bTx^6SpQd&M8GfahHbE z{|Wt3#6Ul^=chf^&j_Cfdf)0xY2i7%ui%LP-3LLRl+Oz>4^Bq@Uy;5P^J@me_XD=T zeCUSwA!odx^mB15$02y$!1aC^>Z9Kw?)Ux!{!ICf_l;?fc4xb1ln<689q)%$fPQX6 z{geY#X=cTAHWDIC;Y=_iiWM|*faxB>lm2O#Y%-^X`xe@=PmN93p9p~ul)+8J@*%l#|g z1N#yEb9mq{N=J>5i>7<;D<1VC9i<-RalB-E0Z(p`*Ubke=tFtI>b_u6I%HLVP#Zr#iGdiS#@-r+$L^G}@tEhx+%U zoFS-xD!!9)4fhqa*I$J8jYqz>un$>-_3~Qq?>y`L*tSLba=^~uyBUGA=iiEV8*h5` zoB1aEo8@mW5=i@q6UPb``VYW(CB0vDyyAg_iRuH2cMKeidA}*12pp{P4k})O^U7TB zcf|_=2lKo`4oAEA{%j)UkC1v})oWFf_0X?8XXiZ>>YcVj4%mzS`w;!h^)^5}>EVDc zrHAK>=*Mh~Ur(g#gmI=mi~GX?zGgGL*Z31~&eOg2e4US6w|VaL8s^gzXdmy_(++UX zKUQi<3(?Ovpj@7d_CR>dwyTg9RG2e#-He+ylLQa_PO1D>X`SEGXzB@H!prdB)kUit=x(4CSU*FT&gpQb}Lt>T{vCR)1I96;-f&Xv?DkM{rD8VkN!PK$CN*+ zF;6KMpM~_j&_CqALqN~hV;t5XUm@ygK==`T8NOpD;of?R<;=OZf6NqJMu~ z*TG_6(eQq^yFdCB=)E6cHRc!XX6P3tg7=v?&$pW1S~KNF%BMG?pEjeMS-@#0%zHX7 zp&xqUyT>5C)Aok`U$LKC47y&2cK-?RD||os`Lzf?59!-u{?K1C-({pfhn843u0#J_ zhj#FO&Yks6KIFY_j`!R69=_Mec9Eaa-x}>e|93r(pz%a)}viK&!+rM zJ4f6b9S504W}_IHDIK9%^2hWAUH{;LA}lx(k3;ScNl z)^D`OO_Cgq&72?bg&EF&T7lA+YDx29-($!*r)e+;){@}Z+5i{DAi+3_A1BXYwvo*XD?+qt|+jV9X z1E+tIq9cAY-Mb6}jPs-1*zDj{QvbL3&aoJmB--)Djyr25{`u{vDIa{bjkE9nN1D4Q zOMW>I^DEn2sO@QE{<%={6`-Fo%|#mC#k)>9LvEA9)4lN;o)b8j?@drVJ8-ZQ^q>{i z=@~{Er+F*(r<^C{SK60#+!A(&wv+Zf@zgy1uJV+#cPuj5N-tHu3{fAr^lGvdhRp{kJmk< zkovAs*7?6#p4OvS;yY)&agxA6+v}7r-);2f34X|z-_VbYufU9{KS%$!3jAU@!q=s> zSs*E-4L_`{baj4rxCLx@_W=D$jiQ>COG4lcJjY_ z8XwhkpRRF~^))Jn&{$cClUj_an+BZAxPUV#MqQ8y>U9MT?Jb+}h9-J-p{AHax z$339jMDAJMuJk%2)mCe)uuV_mo( z?Wf*)fcA2D9~bqW1lSGZH3{jj1N~4R#Px~ukoqCY_h}e+`Vr+jOT5?eG0LT!LiHT+&*QA4`klX7|^ z`WvDDQ`(<>jd7x!^$qH8iS|(6L^dq2Wk zCfy0gY~ZwaEJlAX0lWhB(H|u32Kx;+`u7UrX@5w&%J)z%+sSiF%HNd7p2GN_gnlO< z*}e2r-S^cYoaZx{sIL?9u^)G!z4xPD+R<%8`mYhc4f%Rte6K{m%tt*ZBAoV^ys!HS z`0-f4^HI(ND1Qj>*`RakXK6Re^PHQ}zDY>WdsLJYc~9&;l>0Q&eT;JHKY;$EE=Bu4 zMmpL<@SKlycM-me_ueMx>TJxJ=$CuZF5Xj~fbu9$a~|y(P&eL$e_x?qp4YWS`zZI` z1^QTyat-2Xw?w;E>gTwxqdg|qn|XDeCQ5z3qQ1c>ZwFJ&RRp#I{&jZIDbr-g;vsyhdg)@%86K`@<7ac zM(1I@@9fx;wp4qf$ZM7>`64Dm(?!iAN=Y$0rbfc!d|${k*Z4xu`4=t;93H7|q2b&Q z(C)dr-&Vu(j9UTHO@r2-k!q#uT7kJ-IY(Ff(A82;KJ?GwdyCqhY`?Rn&&Bton`|ww zyFKA@N#Db6Qi-^;w|u$aoy;*BpB*@R%C>>Sv%H19C7ynwmJHgV6i2^_SNjqhzROzY z{0A)@`1w@9d7q#;-b10C1NrX<7)SCU@{=v3C(ywP;M`A=FHrw?l`pj&^%MA`ujr9` z<)m}klTaV}9p=d>w4)%S#Y)M!7xZ{*^WzjJzvFq?Gnj8Y&!;|``i1i_zjz;ydcOMY z5A~4pX+NC;zj@!6&`{rnc5JCze}&*YFX8;*K6o1XgL*&uH_tp*a)tVLdy0-@7x;_l z>T7WLF16Fob*Xmellk8E&JvUKBAPyC3Kdoa7b<@)3>+Tyq8eU_`IGdrl>Y8nU!>ue zD;0(J0WtsHKz-E9Y(;<)|r^>5UxQQy`da@us% z`yS}%4M6Jms1N6OQ{Tn$x)kNi8X;d1`e{V}tsCR;M74Wgi~8xtmx^_szYh8;Xq>72 za}nA>JtW70_5#!wy@GTDQ4iOL<1s$u%ali>pflQ6Qg6Hr`Kj-q-ktWx!$1#_V6>wf z*inc6(-n`|uN2mp1uBozPKWQ-R+#QeDRFO}%BOt)^9l49?OOWbdrHBlIi4p1=Q&`+ zcl}u!T&iD6KW==#qaOa$=~w+Y+&3(5x=!~)rQTLuKjLPhw!6Y?))9-C)eTZ|ESNi8 zV1=3Fz87}NiNN8>)MWSF@c&3YAGL1Xpnc3fw7c!uQrb~J&y=&5VVpkoHQLZmjyn}R z`o83q>~kv3EiRw!q+b-Xn^eyk@s=!>{PEQKdMYHzHU@EY^eRDo4N<1~TgcA@ff>Qy7qv(}m|izJ@!{ubG8 zDhKuToStMxkixibR~R!N>UURIch5JpJ6fjsy%#k;+2ml%zN9$qCJMbBuAC+ZsRvI4 znJWL(;9g~J>J?3wZwkjtxmh@0Jlz*lM(KK-gucHR??(1Bx1K8LX>awfX3oFp7egd8wC^@^bbLaos~ z_=J6boWLS;x56@eSld+@Jfh!KjQbqneWfcTT}RB@F927gzMs&3zAN-BzKix)vwg`O zzAuCJe~5hCN8gNgR{Hz2o#pT#oUkuWl6)ohG;L3*X|qu9VzXB98vprX!DG-rQceor zgHg_s@Fg}}_skew|N1qJyjJiT-q#pE2Wz~XZW5mGf6(ws`|1UPM^fLb{K)suqN!6C zNqB`XztV3t%CC~9+fuw!a{J9O&aD9bIFnPbA&&e&;pm?%m-X7>BjWjY9qIFjwvfj4Ssa z)YI@BlztAo>*^5FAM!8B_`C9n9w>Jx+S%=m{f$!cQ^0xNwix)k$bTEgpZ*fgK2vgq z{fY0qC!_u8g1-#EyXU66`>*szQjPE4W&fh%KFOEVp`WUB=Z~Ww`tixSemYaewV1j< z;ya{uQ-1eJ+GpC%ap@QM68>ew#U}~;#{Olxz)Kre9xre;?wd`lbAD~AUc9OujLQGds|{z&Dk-R&1y65iR|*C4Q~eNOpWrk|zt=0R`P1NV#bY=133!+WNW zq|b%EpZDC)N579aQ({9s4d}c-m0E74eMfWhU58@h&gGM^ z1E>vRDTlnyAA8nA$Fs$qtc^(isyq~sRz8&9+!}Go8e#kQheWK_zwCvIl0BX zt0dj07`LnN9n^EQNPB6u#QzLCi<0^Q${*N2Ly&L#`I1WHunGFTnV|bN-bBSa2M!i^ zlN8SjoWG-*5iZ|HsF!?bE7~~<^NMo#UWAtdx>x(c_Ja@c+@T2hxPP4HyLzZ6r@oN> zj(JYE6Xj%Jd}){Y80eXHk36sBI`+}AMLKUHDYqYuHep|ya(;1hf=6^eR^#2G@?u%j zTH6YOKR9=k~ErQP{KX|PdF0~)Me|gwf^vHeZ?PxFiiT8@>_pT-Qz!cPXGRB*B zQ=413_kPx*{`*vl4&_UGt@ck5=)1zKQ#_K&(=UyAJ!+&SmEK!Q5Bt$Bw(lS4f9fGA z@9kbWr$qA2M}4!9uTT9PE$0s4yw}O~@n?in&q(_$ei!d449-}i>;Gp%!b-wFuAf(c zzBXVy4*42w-a4;!Apff{oA7;CPZK=mRXDjkaN$wA*~OzjxId!Z66ucmlT!5e1hnHF zjKgR6Zr9rbdyy6!uzT@_Bq#Y$ltd5uZrgd z4rY7LE8f}rzEJXKn3Uq3?CawN?-8652+R*$c&6Q^@dd#_ttZF4cW(!G|^q%M>u)yrr@EM^=gy89Rl$Oi) z1(LWwn`Kt6lz8&j3~!U_U6O&zpY--ycStne)a0s0;{~gX?(7usfqZ@ZV1+J^>?F$^1S*MbVx9rzE!P_@HtL5@L7K2Z5 zUUQ!E9>rM17Y>lzq1}74-a0=XPmNqG_>^ZoE7%BccfoSt5OjpTo~`TB6`n(%UJFiBuh{bmiPpKqRzH{iSW0n)$Ne+JZz zmwa=M-J|^D<+|27KGZ|~4EneobW{v`-6QW^`I1}i#opabU|x08IRfYBW@$P1ULaWL z&mH}|2mLv$jgt#z;(JOV7jVDBcOse(7_L1w65rne@JICbdX*MJxf=b-^?N$%+l%lx z=$UrlDPsPXGk~wKAyupKoc}eqPy|lC@IJrS!)IU+vMS`75Uxnr*#j9+! zercr{JYCY&+BM3@D$HEvfBmQr3|#t>U~#^rTj9%Zc#pgE1aM&*-D; zIrS5d_?rEQKM=KwO2xUpCcUKMvB1GX&+WUqnxPur8tu#s9NwY&u9i|S z^$9UMSldx#n=5_s95vw|r|V;_b^aeqUWTbnR~Hbe2ejZ9pl+4{f)Mg zu07^kmL044GlOH4FXz~Cif7~AZJt*H+`<37mm6y~UgQ0=W0WtG|Mx+?-+>NWV*cEr ztDZ5hwJ+-@?MQeNG=GVixmIzW&zeaZUW4(8z)yZWc&MAC3-3+oxG+41`xG%dRrB#Z zz_>R}@nqm&%&T?fV!xf2nyz>j-r?dqF+8s<$hlbKe}+62w=)%w1jo*ob`*QF6psZC zmcZXtUz{71dUKH8`FVceMXUJQ`e&4r%x|$%C5NkgDJ}GGYn{G$YWBGs7wXd=K>Rg;v?IEf^&z|f_|N!0@>%v%;h>t8(x1HFM7!>1F>Z&EkM{<7 zAB=YF)H_^`e)=c$3QN%67XA4N;;FwGjB)z~^PKwr)}Yf<(0VptS?6;U>+3Y7vZMDJ{)6^V zzmr10G^7_Q9do}*`Jx=-MZ4oe`2L$!iZE4x_&) zcb$#$b5YKz=;w_{H*?uKE$LZbN(uLIX&Z|LHbc9qkKw-McJwFhxE?|IL(spRf9sac zoGRtqi+I|3t;2ZpK0N7}=MbcK>NiPm)JLpByD6`5{#cApp1obitF&>+PP{}#V&bvtKvD0;3ZR6GG`kw1csO;Czx>#UFu*9tsDaZed%;I?xUWs=lXm?ft z`^rda?+l5LnrpLIWxWB<@~wg>E3BB|Zl&eH1rnsNrx zSHaGt#(PcUrw2}ss5EaWo;2U+h(t{C9I2t$T&m+<;wNSap0Li-Su}OBwx`DYM`4jK zvEez7>2;aFT62uf=yEf)rQlV*{D%H9aDH5f`!-4Qw$@u=#%e#sZ8z1hmj|8dC4EKU z;-mIonl2vvd6k40S35tJvA{vDTVG>bi!pDx5B&z=+$S!=e4{=#3-o>+=#hMFXfx+` zvkl_;4$2y&y94uT4$A9=`Pdcn{xZ@X|4P(9bFLr`#_kFwR`ZX~#^zhxGICA@~^2KfVN> z6|~isrS-#Bwxy{3>=JlCo7%|9Q@yRxLV})(fEq>m@gNgUw_ioLeAwAzSNg)*Iz9#*PPu~V1^yy);ZX<<#}!;%x-e9vvn(Cry#Gb zq|fsD`2sWGzdVNaoSETP0_yE9YVO{j;(0RfYfzp$T>r0&rJUVMt5*y38oTR$`Bc!= z5`5RZ#)1_R&+}5wbMn6j(lb@xkd5!`VF&w?zH2a0*Ruj|h~oKyJJ%`pou$)|)KXnv zBajP9tg{nMV&6!;-A2tF?t9R#=U%G4Qp*1x;nOj{j?gi}r=)e)`o9ET2Dass zK|cC{`W)*x<=a81w+rUctD}tm#q9)*i8cMI6u|q#iD06JC##QJCJEm}KbqC<9GUwz z`rjC?sg1cD-|;5q1NWg^7nh)%sk(ZF?^Pn-{vfXMX1|o1r!jk}#zgD^{gSA8?xL_6 zCT=6s1yMIn+%#{jxA0%mZcW&Qnm+C?Ix8&Zh#g~@S)l!2Y&z+@EQOtLk$0@pYb3Qu^U*%Bz+0?% zao}Lodp#oM#hR9A_zY90Flp*lKIMKf7P#=@U{Oa&ziazSP1g(aaI<2@Tm^U-;aqph zUVLUyn9a~m?jps)dNI%Fhl%%^crMF*RV&aX--qaAR%=a}-eUdktia(p-WmXllyY|U!lDu_w|&2DgWdT zcKcP@4Rf9}=x#*bdAQk^^27IVa|Lz^maP%k#oL=Nu-4w{3yj*!=LtNjPrJ<*ydrS0 z(sS>$SAZ{WON&mD_+gl5l|uzHhVtC;RSwS_e2?;#G^~5aA^i)$$B%L8s_cEf{4Zwj z87HvDY*m=>ht>$5^xv2vkn~)c>O5EQ88}}pGAC&J%k1BDCe@l;9nW&uTaCDBq0~OAIQepwS*-JVq~~8{!oN8DzeMa4ny%1(tdv^p-!fI=V`ig%ANfS0>7!N} zZlBWhQByKe@ObdZe1Wyz)4srpprNI}o6eQru$;i{3x_X#!52J9`oy?6?h&4!VLU$^ zA*n+DB%tqBpi|Nx&qrOa8M6a?%|L5Z>D_jW;I;N8Utr8Td5XZ1-VR^j_`tz(?8D>1P7N=C{e7i||kFffpb~sVR8QFazfT(WdQ}NY1ZNPczKRsb~lN z3{pSL^Jm^;xftVqCFWmed>+u02tkA7-nzSNTQ!RNYGw^;Qls$;HML$z%ulIxph0~GBatWgcqBM zmkO+c++FFpk&FfomU)h1c@Ki}%PSb?%YDfm>VMJBE%+Ylk$NMX_MtZeCmoSawxo4d z{_+&^uLd7zi+hM&eXYjic&F9N|4M&^v_%@;f1E>GJ$2r+56QPzqjC3zWj##EOqx9fr-=(g+pw9Pr+lx-QTUndpt?J zKt_MerA^KQO2o@m%1HW>D_p;Eep(5=e5HTfbO}FlU&|Lv%6ERCqn>+bDAPDiLbh@C zTp4^9(rfEW`mTYCFYp}a$`2eo&T}Uwxq*W{V7J>Q)m__F;NLJp@@JYsV+CgWQzr|| z@)O#h$N7SV_7z@#4bSxzHQA~2hsytYncr3jZ0;Seco@29Vt>Z}f zYk@DNgnyVvT|r+w?|BjB@H~L$P?SgWSx@tWtE8A0G0%o!KGE+G^`ftXuP(&;Kzj=6 z5fAuMiZPSHZ}I{+1M|JU+QLi|SIBo^vI2+add>ncFK{r+E75fM=y$&3Q_?KZ{%nVK zaQ)+Va~-$?{gH8&YY*>byo2!f(0-nSwM9Sd#XQ@9bR3Tp(Jwsj7>xS4UT}PPF3xp; zdP&~T;rZM)@GaV{K8E(RtZ%Dy!TlD`-_An2BB+=860Soxpna6rxo+{k(<4fCq1}z| z`h)f{kD^?@Co%@*xZCVU@9pvYr+V91&9M^e`%NfsKj0fWD?&d=DChBAVH(bAQ3GH~99q5SnQ=rA4gU>DL+57WPKulDZ{ zgd0HeHO~8q+N$tg59qJg@|D^mzAyf!j*c-W9J^3co`Ch8_W@_29e0dy_jh?-{}t$p z_aa(@{?12xJ0Ks=QAu~JK|kDA<^kV@@^~J=^N|?7YcTqe=jA*fqMs$&*Bt};eFu>D zStw^+1G=a_cC~(QHNKbU(euy_&SRF_xuM0?GJaJkm-5(s`0m@lPw01w{QvLh|02vE z>U|$=_$XV-n}Ky9X1=*X@QA%(nuh!GE9ZC)l22^%9bScY4nzMGgWhP5M!CNN>GmPr zqo|MTZ`-DVc~TC4(hyW?p>twD&4zB(`5z@Hi!SvLVKTvhkgc> zBgRvOGbDf1KB)U^zV99JB~-f$(PeQ|egxTua znL4Z#l5L$|j$HdEm1la`7Rs->+VP7deNM{hS=t&WSEhUI)=GFr;L6GN9@X-40|$G+ z&f2|FaPWf_)GS4Q?qhpl+-M(@!2XZ@o{ODa ze$ZMu`2#3-xi76Z<_F+2!RJRo&s4B}VM5|Z;(VkZ^zWtc*BtXDR`e5&-)H%Xn#^F% zN%Fr4{koXfCJ8>om)}r+#r`2;c52Nr>+I_P4_99v7-f;X-H;#ou7x0f?u%38c=DV%cp_Go=so0`-VJQDC z=9l+K|3Z4rlNYES)>BQ?Z_owrrRYEUe9Y^$J>S!kcVd6dB%&*~%p zC5*3$>3nZdX|GngPeX5>wpZ^f`FUR!43xF4Cv2C~1*XhuU58C}ALSR6J2LpbbzP>Vq}ANqmj-8jobqMe)_cA69+%Pfv$A@98`q zPC7*Lw{G`qE1_sV4{lr~FfZt?<;$Fh-Gf367dj8~f+F8u=V4_ir6PV1tle8+8sq1w zD&k|+atN_fu+!&dZpecCBTHzv8_x|9me;e^kd}{*vGW)YW_;+?dQ0mL-9q^_ zW-l{pfxwdRn)3u!+Wy+_ir{hOCu6a1Z{KfRvGVr>=$Za+*0h{yr998!)OYNMehfxG zzZm+^BFVQ7&ip;pY$hM_{*(DH?UjagV_R#LgU-Y{tjKxIZ(-wEgQVU<=;>&`UWRp1XfK&7 z>6JkT<#${kd7;Ec>nrf@9LBd!)cJA4y3COHGxDeC{`s878bdw88ieO#T!v!Y?nV5E zpc{vFzjCZ#i{8ccoTNEUKf;HHURI`qu$QcF!@Gg|L?=0kM#O{(m(kL^_vGEzaNzy{(`7?<9$s9)&cGDc`kVq^f4K9bQReu|P5!pLp zT@x?+!}UzR5XWxter2c+I{^Kr-j4b&uG?AYC++jU4`oy%|2`=9)2O|aa`|3i56si{ zapt;4{H#!m8{W6m4vKb&b*PW`UWX6&?>M|Pw8Nk6RSg~w^_v%99`7FG`I(M1IP=A)P-%gSe)n==%=Vo(li-a@gimn1ty_S8jFrQCVXb~{NR-SAmNcp>;K10vdn-@Q#=kZM)8g#!{(fKfyw{OV* zRw37C#GZbdzD&}*XOeXUaND*KJX5c5sF=Ea!LM}e32CRLM zOk;<`b$`1M^GH4EWtjhNt>0++oKVr3rLDcD%YRd!^Pab8cllx7DJsXTLAzS9?&jt_ zpz$w&e)ujj{Y?i;n2eMvN=7DRTAD|UvjU`e|2upMG{}j?=M;ZeWv}L_mdX0enlnR^)bm8 zH$Uiz%&?y%C7f~bHi6Z6-&q(+DB@e8f=I7)h4Phz`$@~C0&nj#1A4W=W=5;ztVjMD zj05F)`kkVD;zAeO=X(EfqZU8^!y=Yp@=wFz>CHpNszHE$O_sgy_7F z{pcXnKMpW~c2Q49J5;{c$>KfsFp@;S|y6;`IVY;-3`f{Fgx1b%g`&`(vTx*#3 zbQh(U5om7*&~3Uwu*kc14^Im{Jiz#O`n0=$5Al32;zv8;TjmR;*p`q?!Q|#8vQK>q+XADyH?$GBfBfej}^d6 zIw^98X#MpzJ6P%;Y`llPq`hL2gj3;bCkQ+#*Q)z(ZSFzk3vs(f_tPq~O3%{?`|Aag zFJoJ^pEYK)uGd)blj7eTN@{dIKsyRuh0a8t>8r5Nyf91B^Mm!O7tL$;@dY@a6vEFO z&na=-Yt-b1YW=+5D+u>ge8uKIj}LmHJiB0t;4jCyzATiG*d=_R`&J%a4pg{jwcUN) zK;OQ=Yf8$ThlThqT*CU3Z#MVs9Kn+c%K8b+27|O*!g-i9u64bXJ-@yCPC zDc?}O^W$6JN;cJzz)pa%i(gTVI=!kwNu zR&%o7kpQlLSD^jW18hb)|CN$xe*peVQ6JAu4`RH3M*bM;8HI7AJVyRTIv_vddm-LO z-UdEC81#4BlJQ#eFThK?LGnTF%eR+I(0sRJzOTpp@g3FndNDt@pxw6u@;$_l7!Ue0 z-H7=<8T;@Z!%o(E{Hfg-%AG^dU!EVn$2d)dT+4R~`RIq&K16<8(Vj!m-t`^kD4p{> z*$H?nF)k1N-Pd1+@hQN(+y}f}He{5t_?^55b#+H}ufX&2hKo*@3I87XXQIE2D$4mYJ=+6ncM&;uvjK`&Rk@98AZ+Bz-$sbR`e!49bEKxhKE~a4oX#ZG)ahi*G z%Hgzo8H)9|xzXc^+3R(t>Wv*QG1;*7WPuI#j@bee!KUQ`YmAqKc@Lj;-Va$e@F$hH z^ROv!+VWA(!?M70;*9e!9-ORlSEo?0M*RpLSGtP9zGa5FSj$sxiorjBgT(Lmuq@q=qhA zekaU051a6PD6YTLQU9Kp&&xsoe6LKurQCn6!}_gokCjM$%XjhTts}r^xb7$)pMiex z-Z0zlzu#JK@6dk5&1Z)Ro}?SyBCsh~uklIeVUxX6!+aN*4DQl!|3a2__n z4){u}cb;GW!ua}J;$KW^Gv-3{|3Rd8KIDv~#M3UL$H8MX2k)0C2b5!-@%?D+IDgNS z1K;ZA9@h4C4L!#Z+!)IB#b|%uC0-Af zhy1+X7=itI7RrB(`7H*#2>J8jU-SWlX|MSx+DE>yq2sF)q{UC6od+TPXOz1hVV;XV zMLzPS4D!*B?XNmYksONlU555Ph=8&^7CCz`SJ4W^H*4_QY}L!&&P!2;^f4`>xLie`vf1 zr~NSR!(-+H%~v1Xt{U95^I?AfAsb9yEbXOS&;&lqcjH{22Vq=jr}7i}_h0OngFyEe zpueOO>SNwT|9QTr9YhDj9}r3_jQIoe!*%dJ(y1?;gLK}z?G65NZm7i#@84Sx?t^*f zd+U$DXSxO7>bR7e?-ce9ilzyMa_7U5zf9#rS>UN{_wVuQjQ5k(WUt&?^2hL=iQ`}E z{P&S#InOUgVZUm&%j+cn|N04Tfd013yx2?9sZS_Ixw6oEWGr@TQ<7e2f7kZ*4J9P^ zdYe`#Z2ZIb!+BU3{Hfte=V4y3@C?o8{_^p`Hibojzvtumebuu^Dc_|3nKSYiHcPqH zW8^oI8=juGr@*BxA8O3&n2%pqtUOQR{Vj83hl6>^2OQq|;&MsP?&SSvuM8y=eIKB^ z_w#-n=;@tMqs^A#S1Bd^jIft#jCly_##`|lGiK!XD!)-5Fi(4B4A1@VgFXi%p69U3 z(QdxKq5Mqw`*GcEjp4ihJ3#;3camYTwz%5-sq3c(@1Rnq1o0otke;N?8G4S-IQf}WJZzpLuq2er90~7xy@S} zMfMiYy`}OC&x4na_WfA^I-x$7{&kK8o+7}fu%3BuwAEH!AQ&EPy-?@jd-Ts+jYRiT z2!Dg}^xH^%>W7FYKe;;e?HLU?W%<#HfA~|wRbNq$cFsXL@}sX2=Dtln$@AHnmY zaG)>mJWK@sM4Yt#y<`*kO>vv|bNimT_Bbhbs`d9wH-QiDiuJTEl+1m6ZJQWZ`oJJ`7z{Qw5Z)Y|)XKH`uI(%}Sc(G0XFX0Oq9R6`HWeEXZ@H6P!B*Ek=J1rs$s-MCQYm6E`F zw(RCSECgP@yNkX@r}^V&P-s@%?r)Zexg+$P;bJUAyfAsG<N4h}#Qi2&{MaDxIYQfA4w>=3$6AP0P{VjQ(^I#(Tz%2Y)V+@+s%Tw3~g@ zEYxz7G5?gOFAgPlWM4fprSp`+etM7Qj?S&iM-P$oHyY$OdS8+CaPpF;bzSU^{tjwg zbe5#F7o4g4{%p|G>%jA7{`!8B?q4-T|DfCk_rA{aMC5-Ea?p6tG0#;WA^l$Pb@KUF z5Wf=pZxT1hG5d0x)E9?;?UePJ_pG@~_pK(^P5avvEYTJworev9e*wVn&GCDB`Jnqs zyGTc(&>p5UT427PEcNuwb($uy$o~Cgfu*7R?y&nkf9XY9&$v*d%?IGu)fk_l9UIFf zWew(s>+tTUuhacw{G$F%l76YVQTY__9r}asE$@1}jyvz6zv;U3iIV@9j!)_SU?Knh zf_^mHwOaGu^lt+CN(Pr;JiHvq@$b3x1FdQLvtGU$w9|lU!M{Jo|CyoV=1O?Oiv4t4 zc^;XU=l5%#C%qJC%(*DH(cGu~pJpz633dp+V4qizJ2vA z|L!jB7{08tu7hhquRO<}6-w$3KbX{CuL9oV0r_5};4q(m9q<$a^4!b)h3D%x(0=ao z=YzjfU(fd?mxdm1>ZzR4qy^z8S;w%dzGW?HTP0YB3J)0pDGK7a*Q~!FcbmFXFdh-SU3TYj2|c z8g$D2jedZ5zFL5CjhOf2hYwf&M|<=c=qL5Im!f}d$WJ=`6#2G+->LMYrsQ0j)#!` z3Hans*srL^=Kbv!l`c%^*P`Cn(H`1o z(%#D7I!1a@-5rdf++Dnr_n&+b#&0U{^FD`ubm{N&!DmJ&Jza}>Mg!8`>ol~J>-0R} zqdvb9;agGPgUC<2-ys;+>4@h&%Dc-qE8TECQg8Jb@a>NAJ{{#~m&|i4&!_7!-u@IC zozF3j7V)nE5A|R3K&RBdaUb{_)=@*4uQOI{d#mJ>&fRme%p?6LP|wk1yPq!car5Ht z0;}v3x}LLv_XD4D-k)-1*j4d$v$v`IoELto^gqyERVL+1a+78VEH#f?fxScdmG|Zf zBK`W>3i+?Q?WTB2a-F71IC>YP?HXvjU2H+{v(95-&|UNOg8#HwD7hnh5Bi@DH5l1} zdjBdbf}J&gN1XHH*2mXF4y3==+dvoIx+S__MVRBb4dXrskoJT;->$|ya=lUCKz-RF z%zF*+@?LTj_-e+KX**jR&si=#$hP}%sq^-L_t`<3-nF%;ucZHbiH8eXTP8{P&JNpl z5qMDt|NX_eEn9US{xBnpB)(UR&%fUI@9}+x_Rd0k2JhtKuWU=`{uu{d)g%4WP_RVz zetDiFZOOY?`FJt#o}{gdH6Jw1YKVXg+9=d`0Gu=>iMd zOU@IRZ>u!DB)9)0374C_G`%8NrSw&feWEbu-z(5QqRCckxmIImO1X^r{A__W=D=!! z4Z(6PAA^19?fG zc?qNje#knxdf!j$?WXxIr@?p&u3Gb(?rZ6AI_jO96nq)9ufh3zvA|PuHS`BR>8M5L zanOg?N=6^;0lyhK!p}$JldG-Z8;JFArnbfyi}K$gKljlD=;;W|U!Kcqi6VQj?}z(w zkl?Fq_wP4{0q@hmyAb8+51a2HHX!|4$l=M{SdB@TcHPNR=H&{(+X_EMF*94~mim_& z_5h{B$p1+f$(Nw~j(gYY;JXVXp5MD#hH;^tTFUU(72yaZ}lqXrw-#c4*UN6Pje4bW{d;*=ScLw0DQVW)Ml6(z-;j2 zo)S}=o24zzw-@U?X6>M*5}$znAr(p}+OME*&%nNm=gv{NQ?-23-Y`}2)!5Ct&rvVO z`&^!f)~$L(CDc98@80=IUH>~_{6av^Q%{V?`j%sqKeU8Wi-A??j{92LkK6~mBSOu# z-R_un7_`qBfN{GU^X;|$#_+z2^UrfgXS9QUT3^L{yoLJs?vVBgJZEgfI_hQ@={V&X zza9tJF*@Frrr~^PDc{j{vR=}xba+P_EYWhs&cm``sfN2b56gpP8ZHcb==hMoHn`;) z&wKT1=$q(Y;7iD#JV#RA+rG}QuW;RP+`hy(aQ)qZai(3;lUPsmN4#ysv}WnwlYnc$ zue{bO+Al!2NziL&l)n!9c*^*bRFzq+c+%!N9k*I@v&!|&ZuM@0KkIzHSa6y4yQPh0pe`kdBTpqlnJ!}ZqY5p|$TAll|P4G34uVa6yh5wGGu=hksuM6cjx~B*gm_&H` zGWn1D%XWPp?B@8Mr49Z34E-b@roQue&_DGNT<7H9qiA^Ky!cur$IJn!z0bm}G7n)9sSp&bCvJ><8eF-{Xf7r&$5 z>oLCnMEdf!opheg#<i;O~>*G0j_2MDguXRZO6ywf) zk>7XbyBX^9k{Hhz=(7xT>$N@6`arzb4jJiYp<$~Wtfk9rKg^Y4N2r2Zg@@`C}>z>@&vyRew~ReMf;&ilY>_npcg zwWu!x`-4T#bkZ4{3p`vG)KguBc(#8!%JZJ{G=wRSaotc)MLCgnkgGv2d{@HtNc!XZ z1Nw*WiS=~?=7)aX4?WW8-@$c zcB^&Y9}s@iS>n64chhw|sckRK|KDymOpy3)%f0`gZ$b%0`hSe`t=K1~YHnltV?7K( z`rkoEF`OrEKz!q3f1kyBjNDNkZzEuy89YQ{%I)_mf$}?Nh4}7gGwS0y*c|%uvjD>m z-%gSk+GqV~s?rkXy%^=Z#-4lXew?)aeeqyBqg1ld?@88dOG!AA1NIe|Z$`BUq@J4e zO8?KpLP?GE7kWyF_4w)k1Sr~_Z zg%UC*2YzxS*7=R0MjO71@~_UKdhIan=bkM`X^!D7GZkM$OKg&qI1Y3b`AgLiOgDxe zIuBzeHBRzTE~z&oG(Bnk`>urTr2UWCtIwBwaW`d!z;xr)N`LDy-@Mnj;SfoU#uM{i ziG5=X#-}LMWK)iCGxte^2kqqTCAp4=AwSRi2V-2gpXDH5{)qCN|9;5#Z}67@?HG;m zYyo}V4g6(jZ~QRdKFSr1C{Me|?@{g?l%u`bR@8U-llQC=417OJIV6R8FGD*Ux_L_8 zyUP{RB!7q28=C~44?g!H>OCQp*d5=C`xSV8!a423P?OEWI&0DTK|AOV;5zjCbKpG- z{q$aUA~_i8zhWKp`vbJI;CnRc_bV42FjH#edYXXw&td;hqJ5X6KAscO2>Vw*#*9Rm z^BABUzn@u%Fvoc>wDV?^<2>?ya0|yD{o}f!AC|pQp6BCBfG36degpNM+*$2`#gCha{^?o3VL{+|UMWZS#xdfG160}uT*-i+{U?6-T2@b>Tz zEqX~Ya9^B<_HE96ru!M?mT73`q7gGy&L{=Go6yemh$j}ve6nAh7y5O+dZ%*T*Jy9^ zI_8`EEBD_=pRSuLcqWea_Ay*HEuq93^8)7Q3Dp1XQ~z$0c+yuB#(6N(DL*Ylx!#E1 z_EhZ>DR&;iv}e5n^Kdfe@#;`=MRr7J@83cVnqRQ4=8wEo`5EW&ypjHXlyvl?_3sz? zPH`>Dbsz2VoR9E}XkQcBLwj+~=P1-qJtplId5$F=-;MsC4*oK(!%Nz}S-?wqmggnf z)ow(37W4ld`pJE&1n03Pj7u5XzXauqTehek=1r8_8~tJX$-nu&Y&_C=5A`a-8!-OO zzyS^rM57WPjGJ6HMs z5cpwQi1nSa4`@GV&sXE7?k$+QnVXggEV5smB(M+spU(&-6zPX@^HdJ20-ndQUa3$1 z5n%&5WPD_n{FVfpJmrDyfVchn| zc+(!5_9WFPzl7@s^W<;Uj5!MYg7osMN{f-+5bcaPZ~y*0%6|lUAf5949Osqa-{Lzk z`mOl}_^4;3-7nAmH)Gt#p`Pn7E|;QQ3*e`K4pKU&ijFBa<*ME|zeu*`Rzh?am(J({axXKc;-IoVC9w{WWd( zzyGU-A{)ON=e6M+^Eu1X* zPc{Avxzk#_ee+a|)A~?SBYPXWaGJp44t@Fwe4*{tg#vd$zE{xxbj$I*B)&O+fl?ax z!`(5?b3lKi^A1t@=vRz8^<=*yeOvxc`wO0_7rm+D&3$<(#&HPlrxNy0E{Ox6Te%39#Dq7%%xU;pMXgM(1fcHDp^DX9gU&zt?E)3Vl9beXl`$9vs3(4NzEwMKSipab5U?bGRu3k1XMsOKf*n;v?+Ja_P(lyWKk72Lk$h2Rf{AMBWr*!mp=+nAGu8B7uL%d(r zJN!Cwf9JV^{tYV8zOIUqICdUcZ|Tyap)S2z{QNr|nI` zpLy1L4#V##MBg{n^sMoIim7+YV4YXse6VKCm)erLaDnDe+0(Tr{9a#8;3X!1Yitbp z3+bJHqPRb=GZQCEPb)A!^y4wSb+poB_H{tpruEgqpL4ajzK@hkB{cQ_J~yG}L5s6X2zQyx*ey+YNmCo6-Ke z>D8F;kGa2K-rqw#!&_h0{!)L-ePdn+uYbEA_3%C0>c!sQ{Yv2F`#G-14p@&N>LK5` z5AnQL{2b}L=Y1dTdD85y`^GJ(mwx5mYK^Th(ceVm>kfRL3L-mmKWuYGu zzB}SOaK4+P9Jw>_@;fpeLGQH7nW<7s#Lvx|-K0G=?z-It&i-3M$Fa%Ype@Y6ek$8| zqlOdC!=~USggvYc{C;*X_NQ!ci%&P6Khgdp@*91i)N^`oZ;3wv^p*&2*ZgVc?RaAL z4h_@(Gn4Zg>1z08m|?sh^nCO9@q(|x4A&i_)TS0lxW65=P$2Ce3hm>oB^-U%K;@<} z7}rHTM;;>ayszhX;COy>nctL8ZUo&O1^7P3cj`zf9lb9P6&Rk6t^pEg70OM1*br00sPeO}`eZsxHPp9wZ-IBEYiRl@O{ ze~(pamJhZ1M zIG{pm{0Q}PeGWzXB*gQ)P+&ag$VYl9)>-?;f&`$K!yD(m0BrqI6XV1@Rd_cpX=Sc-bN|J@CIyeD6Q`R{;v{P&_Q zy8oSme$Xzk`^tTlGk$~id27?iJ_G%~XX8&ZWc&v`<@M{2BOmWC`Hr3XpqTb1I`8Md zqwDMMps$yf`g$n;KAv}VKf&8;jrR;#5d5hn%bkb$nBS$L8i7 zKcgPnQS!Xk2)by(KGgH#mHnk2e)li#Uf55ozIE#1H8PikCHw7~;ka7v*@A`Fv-Q59>C8-&`aav&ckfr zEnc{v@O|w6+6&N5VCfNpP5M)&cp~|*P{RBUApK3Gpl5EdLwA*Q(s>p9@l+bGsqYg^ z(f$u`K3op}F{QSj;x7!PbabwAAFUEt5bUP$dCfH<2G*;28?I2gdm|@Wb!&_t%`Yi!MAz@NZl^LFfI4`~@o{oWeTjh;_1N zjn97(&gJyi9@%3ko+|78GG*0K-gTQQ>GjTk=c~yar12?y-zROa(4D-_*h!MF%5714%{rei zlH(4P_&D~}qOQZV{O1_I4EV&^Q9ujKu_WI)X_uV8W26>TseEMs-wZ~|!ryS!Pvtu+oBzKH*l7xL&PhxR9MaMa5 zFF#fA)w`>DC|+}z=8xNzXG^%&E!6fmgc6FrLx6sH?=O*m6VOKm`p@r(4*-1+M>^^B zEztQlp`tSu@b!FT<%*QH)1 z4|LQ8`Z^DLyDzjwCFWF(&xb#}V!S82 z(ww33_W%#=mF@@rw>oanb^KCi@1J!)owdl{8t64)&eZZrvq|@zSa7NCL&cDBaq4{-Rdz7l-=dYrq$NUbOE_!FyDPvAWNV zFq4Doc{powHVij5vE<(UWfQ{ z{B8;D!g()DeHhO%n}Fwb&^7NRcSrmPj3f04YY{&W?L9AVqMkHP0-aNj@EzJuy5~Ma zy2xUlS7LrEi@h9>Z#Vn-Fl%(4M%i9U2MJrD`llwd2>ZmUou#KSci|L)Df6zDOT(Tx z=@5qA{n`e}710CQ$$NtO-~(UId6+Q%Mlxw;`+Bf$vRD`U2gUsaPd4|dmaDVxsiY7K z-#>#*e!}DW>zU5t})|VC7t_Ollel^ zc~3DTn5X={+WGic1Zj71}eDuUFbjb)W5K2I{=@2?bkpelz`+ z3#2`5Veprh%QxE;mbiQL98vCkxG3;)5A8c1>3HBADc?8mS>*&)bPMiLZU}~M#tgJu3dB{=JkA3DX{-|pMEIj=LXCR z?dWJX#P6rCe5zFY&3j$)AFfC0ji@)EJ=h@NKU7B}`W_6{%>wji+{g`!q$T{W5cL-a zV_lJtor(OkXW2t%*_f5!pAVovg|M^d_hgTJa#wA^H@e#xGdd{M@Eu3_{(sh?Ov4`m z|J8`E0X-(|$X=3@_UUy&x#q8N9%k`ftWUw$ZU8+W5_h-U!M(cD3$1_8I>0`r^jw1P1-#bkzqGWrvwsKQzk^=~arAp@ zhxOY2-@z|-0;K*k3BJ^zt&04Fh0=;0{=cbjrM~kW;Qbbm`o_l(_2uS+Ub5kVijnem zwGB0#GG0GF1K)RzS+Cb>2!0UnCH;$dc0d1=)5G`8{;w%^P9FK zwVtM6wf4I{@Gpy+oQKsxM$==kXNiT1e)~DRviM+4k00&hF9YA{2ly%c_ERn<|6hxB zM?LAbR{x!zoiV<&Bd-M>|GId`J?S*9HTqr?(rKUjGWgJ+pmW+G?1iw`-ba3y5q=)> z3C~xYH|jM8qCM1~^IXaMgws%eZ|qx-0`D%P9$6(L!gs7c0gpp^4?zDqJ@Pkn$pr0D z9>(z*oaa2Z6?x*(I>8rfzenZi|A3xmV;%=vZ;{z#hRu+CRqk+|&zL>Y&ky{mq}%W8 zE$JEKHNV^64?7=D1%6~x_f62F3qa6X_zr=a37X5u4<*B!S4t$sI z%<7=OpxobJXKQ+FBEKh19LGO0fn%+d5ryN7x9G!1jVs<3O7&tzR&i{wwc zJM^4g9eR)TS?9ke#CvecCuQyo#nT=7gjkqrmh#o1{6=~wy#GAw$$p`P4?@3xfgiRx z=>HVZAHQdr!#G@pdCD^jwVuk{+qyz~+hz)4sUlaWIQ16`xRw|xm=V5)YO2b+B z4~XSfYj_m(CdTuGz3$Y#1(I(r#d@ay1=_!j0>7dC8}BW6j^%sA<1w#yV|;i% zqMzY%$V4|BP;ugtuq5CF(vLU9rpoPuX%Qx%2~zsXzf`=?vZJdFTcIZ5`i&ykLFL=dll9MC$EtBRN%jm zn8d!y`<}1So;7Iqlu&X<{)?o?CWXsnAX=|4%42oKN)-YV!>36 z`qL?@9DtLckUxmo_eEkSg+KBQtmCs`KKD?8`w@jzH_0T zkoJ#TdA`E9ao%{|*co_hjkolzvkNrmSm?{EO?``r{$|+obswR9W6b&dsleYWa4W^&C-=ce(P9UKp2$0O`N*ID`%QQyuu1 zm(hN=i`2vR)tTS59kF1r@|lG5;dJ948XtEaR=4|iNLlD9T0_AS$@AvZ(*?$%=V<_) zq)bO`Uz2^}2uV-dbMz!tZD-Ara2EF337dy}Z!FPxly7Rx*Z5lJVKV5X;jzxcbl~4b zR67ro!NQc3?`FGdzG8E#N~mSIuM`%Vd2=Pbz?F3u*gGiDe5K~ORT3@?yuR~Pj8`J? z-+!w%MVc={t`uEs2WmU3f>jEuollQB@28{4?X3B`;d^ss=7$o&-xSJk)NkwcZV6L! zzJ%+{eWe1&hVr}P{Jo|}vEpgh(KF_^r+3pZ_p_f5@%bAt&(!aKi*<2C=+h~GQ=d$I zLM8Tv1uss~c6e=4G@m-_k-Zx5+z&i!P)~2{i|YZ8In3Ad5z2XM-bg>4w_vrT(2oP{ z6ED}@#h6#Ip1QgI+OLwp--H&J-8EbYI;ga5GX+mY<8!JXJP`E`LHh@_4(TiDx1xRI z#}{BdpB74L^gg7uc(Fk0aT_}wuPq)v%%7`^fS3GcdM~dJ&$xZHJ@H^ag$>Tbnjog( zA)#Q6_+#Mxzwy0KQGTC(5>LHN_fh^OJ?$>}?tBXP-A>p)cn+h#VctLTodEs))6U@^ z!@YiBBHI54#$`S5QJ%cJ?Y1t`9_qtsw@dpPzIXZ750`Q34Up2{^Sy=Lvc^Cdo=`&Q+oI(z>j2{(lD8?CocfvGmH zD<7(aU;A3?U&QgAlXR91UTBsQF?^pgjeE|rV4SwI$az>GDyis??>(1>5{mc>_*={# zr}=5uS06NKxXO8$w7(6O{PEz{a|ITg<260s`tQ3`z}~03^YMkw`-kj!;Y7`MIqIQ4 z>8wz&M2$lHrS`IV32(x&S8hZ-)a%ke1Nj>L4bo0;O{i!L-#wJuS=ydL^IxUA zuE19i%+~lk_?w|!!g=6BS7JT!Jx&L#(pZTt z8*@Fv*#B4 zp<<1>ht@M8{>hZU#(f6AW{t@#q5c-QD*heyMiDJkG{smXUd6){8 zX?)ChI|JGc#LWd7pEPTAUB)ov7(&JjYLeo<=tLwYTy`k~V!Es)XX}z2h3-&)j z^5>b=nxFTmrOt;d13yy5&cniBjpnNe{P{W-T&Usb9uDz;Q@E@1uy=5ghU3oPpRcuE z1NpnXd5+Y}_xyYZLH^A1b%1fE-kk4YIlqH2u9PqC>FMRk9$1fe6?=QFwDUXCj9{I% zC+R%Q1XpUf%6S-fSJg_p;>Lg1upuZ`$so_(p!o`IMk%VoJbS9-E3>DoJk~pukodp3 zM(3k6)L>*UKXicnR~g1sFVPkLnahLol}?JxO^UY+?>oD>4*ey6St!4eoR{sCIyoaGm=V4iJo2D1o?xB<~3KA;>4hZk??RP5*B;40MrW9D%?(fly?46q4 z+xYJ{7PuijBwv}mOXCLw_fC`Wc0ZKxqgxg{r1C!Pu=#G|W$=@3_C8;)JzB@Dz??Z< z@D#aY^q!#D-mmF-!Gy&UUuGf4!jI9Gw&ygR`+N_q>+aw$cVb=l9_j63cz;d#hv%aQ zk&k?f?(Z1Zc;Cb!uT$FF%<_p7eCGAsDYFu!U0n&Qm_ zAFF(uZG2tB^c!9af86=Y{kd<@uuWQ?>)v(o;kic&)@VGjZVS!Zil+#6Hv?ghG-l)% z8hHJcg-IUyuDXR=wG~++p$X}oqFU-`ew(}DLq&HIk+_UX6}`nj{WbKyDT$52`oeWw8QyaDy`o!t_w zGluzn=Zx*9_0`)~CQJEbc!sXO8Z&K~gsX!-D+R{z{h^VNGiG3ZdEXZYo$!8;-#=K4 z@$U=&82v-R7V$NNd2d2Hj9B3PqLnmW*IDw#!d}|GR4Ac{o=rcUuTkz3E8%9GqnOV7 z`c8INEms-5t?e(gr5Y{@*36P}w8W<^Esg}e+KA3VGq>yk?v|>M-hV`(PZu*O-~2U>?bADxEJc{#_9MK z;69)BLyMluXnx8Cr=dRTGyN@Z^gR}|XCC^|0($e-8PU5##P7SUjnG=7XTGc7$tn z^%&z{kwfLU- z?nsAKq2v-hjkoKrZajaPgqw`_kD3V)-L#(2g1Qi1p@V#UFD;DyOEM5C5;8 zytnZ;=QZY$>4LA$czcun=IE0ooXRcI^Ws=@yw+a`|LZa5%SHU5Lh_w?@fZCC?tP^E zM)Vgdi1^1PQ{=zBm-!J{jdbtKPV9BI!%yU@RbZ}a_Ri_Kpo__tsl z3IKn@ygdT^v?tk&@YBe54Z;gi|Kp&C0@S~?oA)m`5bKlnCI?{st{*!2%&2-pd*?TS zZ^ly>O_lie;a}-Gq@HC=FaN#1OOKG$$lky{-C1BU?xnMKiJ!M%eT&3rjK4>T#&M2> zKS4VvA5l+9|L)|UKcF8wfsU^ZrF5hZLBFY|NQ2(b0^Zw@|9<2fi1FrqH~pAB54rqp zj9Uk+%M|<`@VnU&zuZ~srT&-aDV~35k9-{J<$c#N#EW%Cdn4K_ZN>ahpSv0JLAmoX zw43@F(gFRu%@3tjkv<=E@-gaLh%ohgwBx=L^3PKv{ddVIuk*YysH4}bQ;$TylfPje zh7a@UO=uVW{_&o%Kj@x%FOGi}<;R5DTtoT#B+L)bw*%4sPm$kCA;!G){GO|%B>m6R z{~P)1p$8XTAn5`4)R0g@kzC+5oh6WdgHOYF&q6(vpMHA!s6mqNMYPAiaxsSf+J-HD zv_R6S$Km~SN95=D@%w~4mrO=F&&xM}KE4K>4#7C~#Jux-MSpP@qMaupo%hZA0B;NA zn7qL2J-S2xQ3<_NDc%8JgM76(SJy($yS3YmsJJ@fpR>DHm0b1@G*7n1%O#)PU@=lclW z)A3&X3GkbdV+4Ejt_tmIz_?ML{1xQvBGB^|jN=fj!>gTd5AVg}?$131AMLWcqWscc z{=4aU?eA*8iUR*Kzu3I5;R0tAV`a|UtL9<83+;!Ro@XCadA;17uvqX%-(^e*+@pg( zNmCEKC+@3ehmsoYf1tbbuph3;E7BHSg8tKg;m{7RO_%%!A1c4bkX~a5e-mo78HMpa z5n~?QVf-Ejee}mX@%``uq;q`8hnGJ4T8q@M3FCVs%Jba06!p>mc`nkqe?EZu zp}q4>2z##;JN&QkzJl-n$LCL4D)sW*dnej=C&p(D>Ww45XWrGzCI5Sfe;xGmD*Cwv zVbW0r#%mk$(=TZp^KvZklF#Ol?>~rdM3{Cq&mx}s4BEGB#dutTbiT*pJEdW0$6Z** z-(!5JN1{HBd~q4@@!p1ZP(PbjSDNT=SIpA{)JK0s+`oQAeP4&?>AK#6`i@0^Xoo{T z9y~AdT|&!+ojYGYCx;|1Q?cx4#6vn?N=A#nh-0@h+CHu)PO8+z5 zhdm{nbj2FZxK4!C-|f9le`Ge`tquAI6{aLAjCRd_2-uhgy8QzqB_Hz7yxPCd@bA zK_pSmpT?v9Y41fo^mu45Nj>$$*|(J5Y2WoT#`6}m_aCT_b`#WRl0JF=J`ntp>v%ZI z)86ZN@VgQl(-xKG4$^U_okF17RdMG3tN_l627Oi*JtuO6o;FktrAZl0;3W&SzdVmjv%Bss`6>TVo_=!4yQfS1?wBXq0aFj;y`)9=nMhxO z_4CJ~Yo5)mqT^RLuXE_KH%$Hy!KgSDe>s>`d)fLvW7r)hf48 z;f2804|u$FN~BLhz0|*4g8BZ_KB)8AhILut=7v%q&kqUrik0vTd%BjW3f4ADI2p{< zaK?Gq6r7>qn3<=L_t~@$p&mHhex}byJ7KIReg`0N(R@vR2=W%?uF;^6U%9Rt7ihlP zP+Akc(}4e%rci@s0Qh0rE!2GR;5>y{=ON!MCS5=&Ve~;S<^-&(+xrly*$d}qM57bjpuGz%-)mn|AT{pkyHujmv>ZBdstD7-j zEgE#DgkN8D_I!c-e(r6+!+YDMXxGdoYZP-Fe0wnDQqu3HP_RV)5HP+C6MVSR{!Pmj zhG!{V7X=5NDk){bMH*j(?;`U1G+bYaV4&_Jb%Fmr^1GqO_bcY{e$>NvlV!GjlH@2d zMY{gW&4yDX+#T(&$2li$u9_|J8CR(N_S71Ee;fHSZk_KZ-r4cKw8nfBN;!VtnctgD zYpk53(z?D|%>`X0AIqhly-x8_UwAOuJ%6p|dl`K9tigD@peDT6sJ36N5Ip=IZvyYn zmxdB+%;&(fam~$&e+%~anHZn<(4X;G@74A;%@+&4nkVIB_+CH~{!C+Ly{0GZttUu& zGPqjzjj^GGqWr;2Wddidxl{Aq@;`clZ1BFuWZWe&$wzyUT63@Fug?|Dkob(fQu#f< z*Oqi|6-)g7q4zJ)WOh|N&1iq`P*Nj%I^27B?@`83uAzTPeg`yi$f19vOP-g;jPdb2 zFY)|9x~2Y%>#iPh$#C$&t)VYZJACSg*CL*NPWNx~e$MDmbpz7RZt&%YV|~p+{FmU< z$Duy%!`uCcxaV~IsssN*F5x`fKiHu0yieyn+mFD@_fLHe_VxbN`nK*DKZAcz-pPSJ zk|dLOy=Cw8*}u`HErhIKX=Q<3iJVzSLX^e8s`*ny(UeC8HYO z&@k6~bKu`Am0r9_+e*IjCw^ge^<=qu6RkC1;a%scHrdH#JK z^FVtc-b4S2a^y2!OB?yAMtevfJohaCo^Jqe0=?WDYV*w-z(@YQ82#yme8<|+X~{Xf z1bNZ!y`K5_Yzwo50ohj!W?cx9j@7t!>Cj68~Z- zztQ-#dOz_EEw@%kco6!1W5=E=B-|bQL1*mC8T*UYL;rIP;Rm{-j5W6?-%p#tDz8`TQ~4qu{HEcmb`N{mKQx>QrBo!ZBHZNO zN=Y~t{Hf`2_;rt4|J~TE_5QGEx0yD6KOY;st>vhnJ_U5ncLFiv?e!CGzc#_24m&9& z#v!*Yk5spP`?I5Oi2MV$mEa zM?F6EwmQYxws;nh!%(Dt8#`J5kW@^-(gccDDxTIvyajw{Uf zbWOhY9Qfc69qmXzjP*+X+6(e0?LoY@JfdUBw>jjWhW2p%@m^vZ+QWNez7Mv*`y|To zUieGwmp7tcgAwL=l=lg|C!t^9!Qh)IvzyLqtbOx2GBVNqordd!{t7ehqb?F(hwluN z{`lUg(Cx1IDjNOEg>Ke=Z=?wFA@z`T==ZhY-@l-pyf@)I(jPI$i}q~><@_zZF`O@+ zlSx0jt>Z@do&G;+!n?XkdA_HPyE@I64TdOeavs(M^&0LE`?uoY z01X$qcaN9yt+`ukRA*XaCymV}4o<|YLWwudO+%F>T& z`>DEq_qM)WiD1e}lCL@#q4*Q-!QCZHd4}ishcRFC0BKj!%lUi4Ub(E6FAMIOBIS9m z$hQyZOyz|VD{@#u$B*f>o8vtU?X0L*Nrz(;4;NXlIZWXE#CgpJUmchmr{zk6 zt=gZ0;Kg2ox5OQz@kMwqoiNP@N&H}QeN14|`tw=JUZZkPrUB!Bo3cxaz`E7m9PxkdsH?KjVBo2GP6eLLR+z27=UC4tY-PwI14KI!AB=Q$te zn^8Jy(f25@4k)M5A2RQy`HqPEj()6CXeaenv}fBF{q+wU+Nsj zkK;2FcnVMt^=oS|KiqeQV;=ebE*6}wBX$ttzXIO;*jAFut6RM^PW&0l(Oq zr{moh`@|o}Pkq9B;GcZwuvDozvPUy3b%ZPNUGYk@TEls^rqx7$6}Hd`jQl;SeyGIx z^vM2S^OZRd3xYKo?hXFLb8!;y4>FMNd!yadbMt$fPk|n&S6moMt&yDq#)on{^>*It zgfY`lj&#uz`&GXArn8hU4dpkoa|a)JANA8uDd%w$#*N?CxE=M@VElO>LplFZ?X5BN zw@v!G2zcgUK6!2#hIxGl?b`~xe1}NCO0*lMT>$+h@jWo_eR(g$^TCD=w`q&AdF>ZS ze^(qTzmXnz*#}C&&qDrQh4VyR&VQ*VVcu4WoN@`@N0-_4ijRCP9^C1}up7-cpA`yz zj%&)b_mD8p$1^&fKTE>+6RBPY`X3ne2?e7;u=G_gYqih`%zEN^+b7< z^gajl&3lM6*6n3_N{Z~`b0c?_cF@0HYxtPfZx?+>|7x0(fWCB6>*rvLOS^ZY&Z0PwRdyLf%`^j^#kg|RMNL%eBWxV&@k=T zX&>cZiA3@h*5!Z>{zNes^ihL#I=pqN^3ShO|HhHKdO5Bwwo>ZZXns{V;qrFngWVtx z7uhO32j+pl(B9|=w2O9zA@Uctf2{p3aCrj+Zx7V}4eDLmV|uH^b3Ib;ow5FAoBlWB z!RLynI+WZIeY+RW7TD0xNylLX@V*7SFJnKg$9P@`coNcS?>+XJm*xqct(})DA4!03 zv3%BjtM$f=|AI61Pyb72nZ{47;K>H(?kkXbsP5paqeF>}?EPEj>bz6_u$Y&%p(dLx zXy0tWThXsOvF}o!LjF(={Np$H@6qud{}S|LSIi6V;}-!h?V;$OllCW*F-~uxJ!hca zXE2@#=ikj|gAU4Zlcu9WzL!qfPx?zws$HGdG@+Zi0}V6 z#IIgly-Z^IqknwA(Teuao|t@bcdSqPZ>h}j#s`#uQ%uZ-=pJ# zaZ)eu5y@9sKkY+K$2cAi{FImZ-PXoXuta{P(NEeV@trCC$MK$RBItql{Rzmc92{i0pW{TK(z z71Re!L_6M5ZGp%YLltkGySty@Ntxjq9&0z9B4Nr^4eqZM60XO%#GxOm2}WxE>cHz) zCt*MNE0o;ET!MDofOgNrx|tS^*K#~BENFdjs^tH<>%wM%J9Roj<&&TD?@>KD*V8Sb zq#Cm<9KS>$-(geVu%+#v=Suu}c{7#?JQMZPAJy5R#75_Dw1;wCmkp=szQK1()FU3y z`Etca{rLj$xqHo5iXrUKx>E4njq&%^N5;@z@}WiVYCHZ3I&VOGxW2faY0t{_%kwDp zfNR5#bpP&({dhx%2|9jjdc0UC^*;^yI4_itF<%30T^r;f&y#w!&YF_XX=HEg| zjm918gmMez-kU>BHqW8`Yq4IQ#d_Pm9?}0FG5@{XG;LpDFkNAh^KiG|ai!}D*R1gc z!AT19oQDO$3=Nk$54#5^`|_qke`yKtZ%XVb8eeSwuJS`+@cU9pFNQy_N;_NAyN41R zty`B$3oHrdXnfyLLbASw_7r#%+J89YandFCk6Xa6F9knL0&WYXbTqygAKHD8j~zGO zrwaBtm+O4Ya5<&hxVw5^sjt8;)AEI|Q|=r3^KLJ8p*AP- zH|}BFZdHC*V-8e4(qOmkB`MK4SogO&Gg$Ylv5l8c^YKq&TzBaw;goq=!x`(&l5oO3 zp!MApAc#waljBDBtgJlE;rYko2tBkF>;$GiT16IkQvC z=X;LnHjh`>_cT22Jj~el6^{i{s?dYKr%(aE^*=X%rSbjIe{Tkw%&arv#quBJD88#l z`;xz-U)gW}#Ju9YoO?G<(|Mc&`uHp6M+*J>4eIHD@jMyv2V*?GLVHTuAHG)Farjt2 zUWXQbt?dnzS|hm`<>Ubtnz4sTdftcK9(w!6rmV2LgqOB^d%VDTcxV2hX73ODcTnVv zKw=|5YQ{@i8~B~D7v(#yzXY1hJc;&hIL+g^2v1voj^C%l!Z5`N925f!U~hx(ocYlV2t6!HcDwr0b&fl-V4GN#|ko z{(|BO(@i1Q{|4vrc$>FBJ0A13Ic!i30`-)X%gIOijwAIpheD3~8RO7?%gLd%=O3Fr zoE!+Y*Uq;N>uKD1KRR{r^F_Z@gFuJJ!f!eE@ASt+KE?C;Qj8z%57sa9>%pDcixHoL zJe>@S^!sCG{ZwgBwe|X$sNB`x3 zPVNQH^RJcQUv=m&-fJ3zbli`Bige#1+9=jcD$-H#e} zxYFrCsF(Lx%d>-(lKy@0gBI`)o@-J6#Qpxk;3Ml%&S>zBqX4HO{??@oNg3)=D`2 z&F~!OM)cc|Kw^!#5%dvvM`?Y7?9mDn&cmb~ta!T3L#_*a|L=LwAMc}*kMuyl{2pjE zd)^m+cFTdv*MGxz^IprB=r7tejzc`(?Rf|Fv_rY`QEnyrHwpMP!nw~GfbX3R*ogc$ zp!`=bZcDJv_W}RP;5?)>9IgC1<(}1bm)}plZ_|rKgdO`*Pm5?1^-(Xpet= zFuI=(d^y_lU7*b}tI9^lVN&vo;ijt|e05^~Ysb5QR&NYDGs)L-6% zc}2S_jvwvv+rSqVpq)Gqp}vrIK-Z%jo{Mfh&VR?-$j5n3|3ojNea&b;&oe&(eUQ#3 z>S#oMXu)4-PsMxrtyl*ahUaU_cTgYo*@vS2Z>-LnBrRIo!M_(z{RiJsc+<|+{3}6+ zvG4-LlkR(+H>1%`?!(fio$~LbnW`gHjd;G}7~ONw{N>I=zWZ42F4FLX^`0Hd!iyEJ zFs;j_ee|cCw3ldjmGdxRt{fooTt|~(v&J{tN0f6l*cQdhorg)g$d~Ipth9?2Pus2o zr5xJf@SY+4F!3I5DaMC#GW8Yo7ti-)sTZa{)yqNu^UQ>$QqQY_{6_CHVH|j0lm1jV zFF3EbZcPp}o1wi$7Usha&>7{^+mMduLi$&;B0ddz+jG8y`SuIw z=nKrtQJ`m*{{Y(24fAUmApMYxKz%nOybt=N3jKO6;<;~a8)x+IQ-srA_ch2Z>CoHt z#o@oHD!9duFV>wD?A#l|Op6qhfZxvOJ{QK_>ldhxiPi6pNxJ_A@*C-U(Z8>wy_Bn{ z$D$t<>NUCVYjAgH`AJ(LQyux`{1wGi6fs`8ELkmwjOW<$# zKKj|a7vr+K^+(;0eZOVLLP_^A((#?Pvp~Pp7nE=Q$0A8bKEnIy4NW zfuS8K&y!|?u08^tO+>x_K>Aacm9CJSofrFkH|Nh-#Pi|tkdzm5^~0= zD3|&Kp0DwK2knjN@9E*@S9M(X%^Ez>M1Sm0%2n$+>|P+@8v^+?=IYSD&&mGg_$M{GarmJusW^li6s(VMnkA$7xLeMAA$w;@Y7zgrK z+DlW9O}j1Lf2aRz?zc+O56c2=p5gtSRJiOY38`_L=LjrtA8C6E>pxaVyH464gpjv> zTRip*Nq>W;+AG&^UbMsb(+|UUCrD~z4i3*bSYSyYztO%lP++>b&j-kV61j=dIswaUycji;V7={z2H{=G8Zr_B28y(z|_9+3MD>K(T%c~0k3?dH2WOM1##quQOX`-F8JoWgw|-%P_kYUd|C!K$Ppw4>zabtF0<+%6bJLxCu z2ds}gx2N9`_De3>P5TAzD|oIn-p% zp3`w2tVg-SF+L}O-neevgmC&tITh)tkD)wq2iisdCvT$OR{==}ly~;nUuK=LP8v?V zGWCJ2m-~MGKg_o{PQp^=DwSNL_agdBzR}?>rSMX-ZMooOZiJ3UrSm6erLcD{aQkU^ ziS4g&0Q542f#lk&7mMD<+E?(df&7Z!@=tXg;dgSrkdCS$_j0~buW>Z``>&XP`=Wmq zp+86m)VouDycBfNAL%X!9GhNuiL{4yFA0n@<eU51^bOXz!vey>&i*i*h~(yr<_cI=*FXUXLHM-cl;< zJdETY9giyKVa)bYilbjj-rr4xy=O?xG1Sj>q8$3DPY^yB{r)QYhyG-_Z<_^r-Vg1k z9Qif!&jy?kT&Led`Sf@2fuwygW}?3bvOS#*Lwfo-@-=z%Yu#P3akj^H_|t|SxR9EQ?Kb8!tb=Dv9PvL z;_F=g@dD$af5|Ln?l@a;o}1CGvN60|=T*k}^Q95spM~ZmEq7obxgxn!v1r|K9hLGq z9+^O+_t@9hnNu}o%>G;D(_}bS@iOB*sikfAb0kOFo~GfMHV-+jd*p4b=bxhdj=4*9 zU%4LmUjYwoIaB99MoCJCDb$-}hEH@6V~Cb()sf5Pq;&>f`tG zemdX#tF1pyzq`Tsop)UzspZ^os;;-CX1J#doLANcv$WiDyJo4RYjhs3HXU;{pKVh4 zbhD14yjOFcrq69XVUEP-xsx@%*v`@L68PDrpOG9h`Y@l)9Vw9O*h!dIM`QiF19UVW z^iI1d>O*<2ED!Vb&-N{yQOLfqkNp*pTwV=^G4%EwgbM#wx3gnkexJvuG zto|vT$4R?d@lxmEpU(xj4z1Kw#`H(Mv~#1K8TtG<*e|U_J8nn&2ZJvz%kui1B;vV# zd;_}X`-N%L!+q69EwAc6@LYUv68+A5GPK*Ahw-9ZU5Ea<3F+x4H;(f8el^#bR`fId z{(7${k-ic6c|YqUl*{j+zGQ0q_jNs*j{e$&e7~dJ^tW^saIT~5=k4eh%2CuGQ{VeI z$~y}A+3&q{H055bf3K1Hu$ZxN6aB@**~)*D$j5tVl((x8UTV7QJf8}@0rvbg?q2<( zguPE;I`nq*DZ8jsRJ|$NNUVvQ5`#`jdVE<7bym#|JU3ceoAE@Ir zrqAPA@=qwg%KS_JONGOgvy_@iCrf*#hC3PsX6#+d1*V-(7kB>Mzk)zQBRjG1UClqh z4pP2Z6>L>JW-5-B__)m(EU+qkLc{4#Vyb&l`C$#-cWyGcN=R96$ynR%*y+OzQnI8US zhOfX^ivuYw+HY#^NG=Fp(*H8BS4`N~3nf1CBcb7y@Rv-xCF%<*14$Kqzst)LxEyp+ zY&R4O-hg+d;=$`$PEEM5mxjCFR|#wiy}mYj7ik~CYg zqg~`5nCGN}Be&f&OVYg@$Zw=i0Nv1DdMM@}&!f2iyASi7`}YNyZ+Uiywl^F7d|;2A ziu+$Vr}$m*r@;pe>Z3j2$i?Xe?WWaZ*xQ-v5~$R{Paig zJKFu8{lpv7B>oG0_qmAYdh|H>+x>y0GKO{-^uyl)^7b;cm-h>)C#D{Q>)F524(>}w z23oA){QMl{@E#8Bzt6$QfP0fl8D6RLz9zi&0x7XNNNYbPY^RliX9D?+)(>;rEP;F0HOQ?A+gHm=nj(cfw=HY? zQuR^|VTp#929kU4J}7z*a-iU``hFUp4);@-3M4ez$J!a--(7V*rG~n00jkn9qN58ZF!HcJjlajwdee*D`97j*h z5g!g?`dww_F6HaFXiuFj)p-%OgM7U6u-e8Iue08dT>}0MV&N2BXUpxP$x?3v&W}gq zoSyrO6#QM3p&p(ySAdTv%|czLD_o71$Me@`(SFK(+$J>wIRo_g6c&`(E!zGyE^`Y#)mUM3h@*ADMq5Q|g2IVhDp}j>YkM>Wuqg>vn?BCUEYG|i) zEaV;TKfb{Dl;Qh$&im3SzTQEmQOA|<*Hi?xb0nrQ+_ay-l=)({z&QPOIiJ45?mSe& zzcc>b-u&iuTF%5kLZf?>Ss&?lQ}0B5;jw{6n~$?rUo8Lap_{A&LctH++W9bnC7U~? z1deF^Rq1km>$*^I-pA&$7BCB+2@Uje&8(goKu-fvovHB>3-IOL}vgd?_@@lsA7@XaRxYw?arHP(w*c(L|h zgWJ?m(x>Y$QJj3g&K?Q=6l!<^?;CT!JR*=>(L2(huLjJ&x$XWtQNnwHo@hUJ9ry|D zzj}hM=of;1@w;F?yo2}$fm44$yC%wcXMoPA2d3TaQ-QQ1k~h(xDfC0>HEZ;H{sz54 zkz1>Hq4o5X=WgyK`Feo8wZUx9qI`=& zgg@JX&fjZK*&8%I<2q5!%Q70{vK&UbaokIRM{ZZJt&<={Dp^d8zOj z#g8;soGp099@s-+Ait5_3FI%nV?;S7595;Wp4a@@&ikEO48Fp99Uq}xZ)02=n;)@K z?o|js81yv^-|-&uw*sf%?0t})??dyvqz>g$zNH;4<*GKUw|@s8<$2SBKw4qUjMF^K z3*OZ47!bbGT|x@lZkwzS{tLT>mrW78ANEJ_uxfzd(2oo6briXu50rc{`@W`2JO4g?Mg0egr_BEpP7SXQ zC0&zwBVXW=ZpTuA<<7^`&b5a3q~Ry5PavtH^*K-w?VJ2QB;S6gbodAO3HQC65A@%D zz*wKJ3-adyavw3(eCyj8Tro#dHih0FYc>4h#llOJ|5lnAt0g`j$giB2`u?bNK7S?b zrOtE{0*Nno-fsoZ^@eSkJxjt5YvD9OXb+ljut#_I_S#lPbv5AJIioBwIPsH(Yr?A^IYfe0Y1D# zKP{j0v=!|l|0f?`f%%?s-g8Ad%+-2x;3p>*{?a7%)Yv1HeXnhCC3V^$Zm;$6ln<{@dz|_q>H%plPXCIdL6^6q-&TzD`Hn^TozXAJ z)|h^OEbOQJF%dSMCn=+GSN_5EmFq|uSRJppW)%&^2SnnVI9<*aA z_)KZw+mUhbuj!Jg-}8$!%1>J_k;a^d8C$OD%AJRCyQ7Dc#C!U*>;4MmbDu*!$`1(V zc}*kM9oj=sulY~RlcYUb>#L}rzpvDjZ1o;oT2M}z`F)9m^L}rc8LH`1ra*f*+K=hH zOgbN4Wru0}UOM;d^gIm}J^JZNe+lRBd1k^|jcKrrDp$vCTJZ{#QONW32J8E~FZ|u5 z>ZMiDJ`FIr^f*l)$2jo(urqMpgWssqk1=P0F5=%7g_QHn?RRu#tVn=z^9 z@j!l!p}b9fQqrEF=~B+aOgLq*q)T9ZP1+MRzS4PEV^31N%y}5ICo5iH{rbB$klfLH z#k?2-I^Kl!jqmbNe?k3r>V(6TA5pHLTuA#Dp081ErrqWGK&vy$HrM#|1~}zg>Qgp= zj^0Q7)8>z5lJf%KyqC#+U^CKB2TWibJ_2961NqpWl*`{jIQjoK$j@^_+JlfEa6S4C z`KbRt4E@D*>MiIU+Jnzr0J_--oN~hs@STxp?_8AAf^lFyrzy9O?nTvB4lvPQ3(|iD z_My{K^Lk4E+W+1HT06c>aGFW}vA03ZA> zzKiD!by@!17}~qBUmB5~_Jn+w>?!mE-%}ZnbW_lt+29{(bKO4D;)FeXk-%8%BBf{E zmq`T@8m%LN0#j;F(R2x{Lur$Jn8YN_?@I-8{pI>WdtdT5`UN>1^W#U*$8Biu?(kFP zM^^<>T69k_P+%TMy20AIXnx@wvfQrKkfigl&aP9u#Cce0o#LaNhe^9$@wB_Umz2zV za%}HR)W`Ocjwhgg&buSfpEE!Y7h$|;=f?Gt^JEgrrCo77=;2u8<2vA_=*Z8@anicz zJQ?v^A0LE#HxT<)&dXEKjf&#=V8)5=i}Qv zB>&+#SWft&#&-<|Cg0E?-!AfZ%4tD!?M3!%G+!?KxePgdezWASu|H~fgYz&G_?L|6uZ8`Z2!GLZq;LAwA7s4Vg?gD=!GB0s zm*RWbzqBjl{M!%n?^C4P0lXA+RuB5FL3qPbuh*S{b>c_BK1ff$4b*>KigA8Fkgqjn zIOL+I(JzT`LA8W)KUQHoDmD2I7KtJ$1 zDR4-H@A?@1{`zS?z6AM?NBqr0|5+h1 zxg$={emr_g}G?Y zHK>PvL(f2a>F;Pd`3>^Z55g%ZPix=)+F`w9L$zNZ`N z{U(sm$X+V!r~NXwWl+B0wMh4KAeb?HFT-0~M(dm#qjVR8o``(ADmdAP2i{(i`t)kN zpI7Cs8z|*fnNu}g9Qx&$^LWY??j!Ljv;wIWyRfuMu|TN zbh14V%$TpyUk{>RpU3#5%oJZP&Tpdc?;`1^Iv-wb8-086ZsgSP#+bxcGClO|O@V|) z`*7#&Dtm%Y8~}Q`W|)uvHSn+=?c@Gwf5cO7M8Ed5UpOA~h;l9YZI7*EHD?3p^%>Ml z{UzV?p#Sc#(H{D1d;;|Q!l}Mp)p$X#F7T3am02)bVj3ZLSI~~s`Iq)8?1kDtRnEf} zcUP&TF9qGD(N7KbM3w(0sMHXhZ@7iNU$GDVA&^{AIKFc{+Vv3l6z#%!FSHE(H3Hu~ zebJFhC*OnrRJJbG@@oSvHu4+#zg6;I(k}7!*8f%_IPbm93IvPB6?8&93H?1>7HG72 z0q_$*u8Y)?@=gD-8*NLc?b}HM@54>+T4)j9#KFRlupvUEX z#G6~L*ZD}gr=FgCaSiI{IzjvRo%kNUXYmy92eB?B%+=a&l#61{@Dfv?bV|9n z$lk8`O02h67#K*Z$nL3i{v3hX=9Sd~d)jeIf1_F+@%4aix$mU>zy2puqeSbg~WeoPI%Q$8rYJ)u4UHf*yVVy-h;=LzqXe zUF|89;~aCp>i1FKGv+v7FZl@fqimnIzKzm=zQ4rx9EEmLUqU&H-#s4kUNUUe`pPLk z!!G_T^MZzRA4WPR-QR=n=X>5A!S{KN!S#JeyCam2_}#UbzpePLGk`a3`Bv$M?>Fs6 zKb7D+Li8i;<7j7a0KWHh^e^8h?VLaQ5a~JpdTI0?{fUCf{_7?Et_J5}EO=S*OmLsB zSX{@`fhIS!hpBFTRnsNRbt*T-!k#N61=pn-`$M7N4YUsh-(dgKzd7}Tlz-X39Op;y zJ>BuWT*u}hoc(qL`sL%%Qmf3Xx3zurqgv2*{!$5FgMQ(?ar)6Azv>9Oc>$1e9q)-z z-~CdjA9VgvPqsem<#kg2C!k}>u_f)V(4OZ0`~d9#NVk-8|8~6Oj?QT?{&CRLQnX`a zpwWBuBDC}U1^sdYx&c)`?HB!=n+B?y{4s=TTnu-3avpYIVx(e%W zawVLH8S5=I6V5~WO&x^s9T@D=lKYxNr%C<}_9^AFx#kBA&$HgHH3#qG7U5l);Q>N8F~<3Jq&pCF!SkSm&C~LmoQE;HkK$?gwf(O3y>3!+eY5wY zz&54-h~av$yZ{se)%$N3!ESB?368}iY9lK$HY zo%dXpgL|cY!haM)ksgfjdKDCjmks&hHaTVL-5gy^ObIRpXOokm1i*Du0uafSlV6r<4oX} zA>9qY%UiZhmGYX?s{kh+puymM)^PHq7zT+N@ zx7Wr;^5MSTzqP*|5WS;hhikrr%`M6&y4j3!+$k-71)hy^N~ zzA+^pKNFzsrB)GTo&l$52U-ec|{=gPCEHtDtA0*ztf&e zgwuULxQ^#be5IYCc-+iX$n)lm^LWCZqv3zn@1BhMen&fJ1X9{wKDfyop!>cU_!H0h z68P@ZHq6m-PlG&k5BZu>e{^pHIM<2mK=-{+9^ZT6{+#v(Zy`VZ8ZSaQ)NfMnz`%z z^xNG?|8L-fus+joEB$^JZTB}E79l0!M=|6Oq4foQt2nU|BZRx9p8QIa4#3k554^HF1~kTAgze} zSHWK}`33uf=Qt}cjyq89M9^Jr;5|Yg8E7$)Jo&M%Q?whW{*~uLyf;LB&nKWu-m78# z6F{fy!@E_!qg~Fwk)Hb)+9S0?`fZ3m8*n(jll!7)Kreh(gZm=t@vZ?Kb;5V<#&<18 zd4B-*K)KWdE(p6TpZE~zd5@6%v~uK!l&TdDanC3u-VpohSsKz^hB z1J;-IS%24Zcn&~4{|~6=t@S>>L{rK3{~!8a%zdr30l*FyM_&ogV6OMG#-I!9o>y-Ul_4g?eXg{PJYOa=10SHDzl zmQ5GDG>~6em;Jq#1{+QgJm#L#`cw9458FIUgwH6>_hk3jq1&Q;d^xa7$3C0;Fw(7o zK5ZE2;`GG>bO!DQ9X&!iLHwFd{vET&vhLka$|s+`DEn#ETU-kMzAlj1$S))EzXZO> zcQ0uVLjFxUy%F?1IneBe`i&0Y1COG;4Q>AY$^mw}e*Xa6<4M{#6>o4J#_fLKU}YrQx&c_TUyc>zSk(Q)I8TDu+A*g8CGdJ>3Elg z{++j&J51+M%%L3nzLr;R8+2tl65mIE1Enp`s2oPU8|{DhMY>M{sV%xU-a25Rz}bQP z8soXB*pYvxLK zHSQzM#CUMMeG&QTpPzo-Xm8gY^uv22S)d2rU*i3a-?UewcNej))c~(UdY;>nK57t7 zz4_nJu2%#7%sup1gYXmZeJ`NBziz!;*Sk}}CsL7#h~&(KkLfy)Fh{ls9yf2V6iE4~ z#=W{!@Z$O`O`qdD9BA7q-Y<|?neSeoku>c!JZAeZlJG&!<8j-;*XKM;SpVX{pXIIG zzOgV{AMtW+GEg+SkKygH zvt6#{%e8q5`(ZvchVNJTe6y9$|2N-ie5wA5ez3d#moPmP#%%sXNuPGW>-W|0R3M=; ze_;QDc0bpAxW>=IIFiod7^k1MR?U%oUt+wtPV$_21?Yt59<296&@YdU^mq}{Q~&cczJq>DxF4s!pZb@I z6Q>Q95@z)}Li_&^(0_X~Nby2*koHTy^LmtAyS=ldPqq4ykB4`t{$USYVLzX-3C*8& z9wx2lOUJg`c&Oy(KJON^oBOA$wKikUM?Y-{B(*U-f8xCd`bDAKOMY|&#)0x4^#%0X zME%Py<(3hDbbeo)u}5ip6VAgw&$~W$u*MI-xlzmv@#)PVrOUWGMAwZ9=fgAgLs6cG zEN{=cjQiUuGhEX(xcCbB&dAS=;`CFPwwEg1jKe&M1(GV_L%=J{=W_)g-P*B5V8)G6 zzEThf7V(GhgV_R;n8!S)T!#GR^~<#UO4vtL;Jj>A{_)z5>#%Qr4dZlmr=2PnJhZA{ zl9WrkajsiWbe^?9!l{3pjCph=#)Wb!>GZomQb%@mfr35vX5R;WbAGekv?t^~|JoI0YlP>-ZI-|ab_pGL4-L1zw`VZiF_#U2<(mv^A)XQ_N{`g+f zG3{U1w$><}@IK|!Sl3=hJN}Dy(!O>q%HjLq+&}IFpZpT_UW|O>PVxPi>q-jbzcR#A zKTJMIed}k<3zU9C^f%Y(nc#1yHlMac%9)7vZ2^DVh;sKwJF3w?+32^VQjh4@&e#7c zTK)any0E+Qi%R4tJtxD94wrgT&fhPLg>yAulJ_pnJjGL{d9kD`bK_OM%HZ9yLE(I# z{!jCS{wS9Ok}L8@6DTlSv5(>Ukc)OdfPPrte4Eb4_b@&qwe+Z76Y75z*4q?hFAO-O$=AoV8~qW-rqp2dK(K?iHlPTIRSqTDV^y(VHZ@UejO zyBeVVd>?ZI>ir8K?S0DRADS=#2Ia?S6yyecddKo!s$U_!(e5=F-m2{$WSbf#e?|Rm{yPJ~znu9kFbK)2MV@w}dNF&ypw3FDhMQF29k-9SNfUeaIBBT6s5SKIN?2|oN= z@P+N+9lBrP{)GKUzAzZy&2@Pb>Zt}DUxIR0t$9Z&mHhRw247F3@$YD)qLUU0X>iXg zA8N$?u`>e+jr5k7@1Hckr0t~LAm#rpsCRu(68unwio5j zGLx15FGIWeJ>++k>!;#-dG7TA+Q)OT-6+?;$`{!YF7bY??*%`i-Iql_Q_nUZ`FMUs zzpUjb|1o@5fN^WZIPkp_+AW-oaxO&t1!(VC2&de{`${*po}_%U_{q&ZO!P-TIeh1V zdcvE*H@M!@j}rBg&!WEhnD6yhe5v!QJ>(o1#WT*sg#AHr@@?AfQy)2^W#xGJ&cC8x)}WsG&962~ILD9oKqevn zq9NYH9Pd?L1-dyN<60H|q4g%i@&!^3{a6mLyM4IZG*H4T^Np_aw?d9cn0AWCVgDAh z-VZ}OY_H+T;MA#-k9PGffnd?T8T_m)P&AU?y`Ss_p{KXULB|K6pWj8gi-sP0zT~(X z{Y|@ho(m4dcX7XTJNO0fb&LW%a(?V?@%|%eXG8hrDU`!~Eaf563+L}W;OEriabB(4 zdb08t${~;8JLv!BBFu+5?frS>H~8L-_|Ef>S+`EU(|ehX*fLDx7i9fiAo;=`8Dd&68GwmMM z4*RiM!uu|Hbf&;&eAo3)o_40-yUlSI2;}+w$l;T8J-r}3RoBgr(|72X4#j+;eOWv7 z_omj52TA^>q0e0+ko$GY8~(In@B4!*(QjMOj^i*MluKy$MZ3{&QO^yipZk=LfZvYt zQkY-aLtdUN?I0c0A)Nl)-a@_f14KVl>jKGT%&^V>T_JFLAit4a8PbzpX}9+z%B3FX z0pO$1u6qILN9Fe!ydfN?e1qoz z@jybwFR?!tNVZPa_GLn^XDPQ|1`=Nq)+rqqgjY5So((@A^vl(!{+3P>&V6(jw3qT? zPxRYB^#6=NQb%;Cr5f`d?0$IPkA912SKMRk$TKAUoybpmosRxxzmP7up0%tzMb|Of zr&la))cqp)%I*Itm@VZF?KECn@^Z^lDgo9tcbF^T3&T>ClQ~YssBa_Y1NTkTzdw!d zre5(rjPs`Kb}Oa4MPU~wumODjf0z1tdo@UC^bYg-ZxhyEn7BAghL@G29p64-=$ z3+3)zU6&JXlD0cjKTY`){mxaGGbT#<(WZ5wz&PxMGw#9Zf>(x9G+*4V-AC|*nW}g! z+}tF1HT-7AOp}Hup~tBRBsSVtLrzYZ85%z*7^ig67<#+-8r%lR}X4}=J5BT4&zV$^aJ{% zs&%23!+UdSyvN)EKTD-Si^iwJU&cv!NfYQeRR@AaZmz_aguQgV%?|{N_+6mDbT$4Z-n{V0eI=yKrB$Bj>Tcgp@EG0!i_`y#U9anH z9OGEo7HYp#wtki?>C4OjrGr|~Pp-RB+fib@r=j+cD=4S(p8n5)y@^3@4KI* zAAYHq@94*U7UWOL86EPDoF?h02iVcczq{6__KKMjPI-cI5AQRbg74>jN6Hfy=;~k$ z@1M>^y35fIvjBNtbw+smDyfHdq?CI&4%F*>20Gw=k>hb4>Z=96`@ZA9RX*s`{yC+4 zzAM)dzNr0E6-aH-`hfXc8E(||tHQjebdhm4Du0gImo$A@pvfaYAz7W}Kk|dSK;M*c-~UFW*Z`%a%=J*NL>%E7!JJOumFBeFiy z@~9uDe(QR)m*aN?`i*krF!UGiL2-Y?bL$Q5N-N|$>3@*#{c#@Bj{x6adKUD|_hml7 z`0_hGM0*|vycO+<0g~_Eg?!%XYp=YR139G3e(d`Z_LJoE!}0ERMf1)oY4@<@-Y@T2 zE#7bA+h#@|37_2T?e69}Z^uz${#hX5dFH}UV3EB?`Cb{mXIUVj#vBLye`7q(eJS;O z^e_I`6MTGcjNhH4cjW&7a2z1{o42|ZdsuI=)2;0Zl`C2>Z)o4h_giQW)lGXNT0eqc zeZK^8l|K{Va+TwfZmiOCS^br#NXsJoe@&NZ^Dr6yp?J3Go|O26@%#6Kz~|HTyEUHc zBJZ1(IiuypZI;65-D`#Aww=N{=V6(fUoGX{g?^g{J~zHYXH9n~`iFd+@;LeVPr6!1 zb~JzsyC0?VIg`Ij=izjO?+&Dvi0@*3rC*uV7>91)3*=+PsCRqo43)EKhe3Vr1IPRF z_^ve1fvP%W7D!AI<3~Tck90b8xrBGecr5{}?(&?5ldo}qSC0H|lHQTNeOgM1?Eml` z+@GGZxq7OEQ@=+$Ncz(v|9B7O{_k{2E#q0N{hSG|pDcJR^!5kw(EBamdd_oK%FDq> zNiFx7zc^dq-DuBe2&ccX-k85%2KOBz=?0+wbJ5@QyVF;xDAHpDl1lssdjATg;c2SR z;XaW2hz8@s>F@hatj|l8x}*EnZ3pXj^)dc^x5n`Go>J}r=V89{{x`bX!!%v7+eb^N z#W`DzJ6yvP;SmaB_KlR}PurNsoriz6*SP&@ub=3I?;MGK;XLNK+GNlj^+a4ZFTwcI z9%C%{F!z^9>)%b|{ms_`Y1Q8MktvV7h5C7~uorOZ!|o0Iz5RF4@1!T{QP|F5*oVhj z2ctilrbvBpbNDQQ6@mOl^xigWiNG4%|A@h!E*-wORKj@=J=YG^a^dpf1$$p53} z`?KE_?yH{&cbz5qTeAIork7w`dGFz$nCE{BSL!_EIzFuB>eZ6(?m&L`?%Uc<^LS%; ziq=cNCS~?i-;Op9OYB(1>+JFaB}YSen&M}=E9MGLzRmq>x%DTDN#|izc!tkkpIRvC zlWwp|hCgBc?uT}d2qbo|K5k(1-75s={U@Hsj6wQ?K>x*n;o2O~Lr-N>P zS@FolQXc(EY{h)~Isp~}Kr_Lurf-N(w$ zGvQ2aPYw3_kzc8`5}!7B4>FuQRdD)4PvD)%2De=0jkWmBhr9n6N;=9jJ8K0qW*>b2 zgZM746VwND9pt*s{rYj>7sCTB#_*i!D|}C%`uW=K-p<1ud!gb*&ci~xK=BgiVX^(2 z%C*^-U8LdO+RhlBqfTr$JWpym8U46F*4L+t{;pp@dP>^=^p$iE*k&!~7RYB0ELx}d z81#D%%J~W7bzb`$biJiL*s5brX_j)Rr=Xs-2y{U`Bkfkm_qcDQpPijZKLGtr`#I|K z*>61O;yWL--{Jbd#~%&a`zXpg419EBccy!;f6K?w=09 z{Mv^0Ujn&;de>C2bfDDBbLLq1%0$8IjDMdc;`=%eYr^B!NI3mS#mvoGZ-x2fEKMKm znjx^%ct5d;K(L7axEl@;SmAv7O#LmIk95=1o_eOlU()_@4d3x%rLI7CfnLs3?qkd| zPpt?f-F0~{Yrk>aS1-Q(0tx56yl(=*_WEP3TQjmnaNd7k69^XBX)oWrNMI4@k#Zj8 z#6!?e#fayAt25g38RjAR*=b1MZp)$i-?gBVK?vu4X})V;0{Z-B?Ma;3s0fH-wuyN;>Wfs>3Zhu2uHUvn2dT^Mv9V z_A;N_RuZtBkw>vH-QdrL_O3iJRV4C(Y;%=<0X6#?ZY_Ur=y%Ju}<*3kLOs_ zPf!l0-zNIi<@qtke=+8HbpKz!W6%7Ao|*NZ-hSI8X&>c*f3`fNd~VS35*qDCTNcj~ z$Z@8f?puL`MtVE6oAx<9n{Q7_IL`|fx64{C_zgA|SVXgA71DAL^!?BnLZ)5%BdPRQC{u_sR z@DY9Aq1|HSJwKi!bZ1R*U={Xo#JWdVcdSNc&YO+W_Kw*+Ig6?KOnv5qx{bD zKx&J=7k0*p@Mld|-TGoE;W2k}slYP$XRix}Du1S3YgPE0rcapjwLhtsFE#B7G(Y5Q z`iZ7|LjB~mn2&tVh4ys6f?xE+yyboR-GP)EwHNbs1nA*6z{!w@x*}gE;45AqrYr4e z(@EC_@|6bY+494p0a9)sd;Cm+1M9nJxd1c? z+Sdc{MT{Ho6`hLwwBzA@%fCV{?TmGS_Y41u@1&lPc68pmm@)ffJhK3A$2ijdq7n5^ zz&K>W1GGQV;k+5r-Wv1kc>e-^`(k;H3@~qZi2QeFZBAmV)x`)Nmm@+r1X|+-qQFE#?x=tJ?~+p zG=Izv3M75XT+&luEzUP9!wQY(I|B{&=rW0q;k=Z7XjX$>2iAYtN#b_}@*BNd6(}&5 zVw`whPy6tD5l{Q>8@BqJxlN!W>KCp@x|t}4=Pbt}{5P!2?}KiRLwEz$KgwJ5Yp`^b z(LdUW(r*pd#jBA2Ba}M~^=9zS$+L)`kNQRc=Q-4+z^7rJ&H>JS7TNYj(a8;w#-C-=9NBWp;(DZ5NVI}UT zet>cP1^vqX(V6H++V7E%UxswSvK=}vXy40o7|KiUVZMJ2KC>hvtuf|TH&#oi2+z{? zl)5*y-3{(h<@aUI`*Hm>(Bx(u^5tN>JEPp`fY%4-%#xIkAzeP|`vH*p0_ra)@9~|* zH=rM_2xn@0QsI@erMy_!r&=J-!!vk?I_b{QbY*sy!f5}mupyAt(R_s+!3M0OF*jS| z(`IuYiKo3T^}9Te@!oeLyX8Pq8AHFS^c%$c!gXezmRAbCm2n=A;T%2@{(hk3kGuV1 z0#oqAPQB)-7+21}W#q?pp_ZGpmmekh>cDUM1cF6=8v_NVFTN{bntl3Kf6p?7bL~pg zqTwm`ysm&T=kZdzNW&A(L-tqnj+d^tag^T(eQ<8cQca&b&ewZN%PPe=U#|xpJ_GvY zdot9kHf?$FEXnzAtY=&wzsI_^YVm3#zasuKl*e<~^ASG@@to)62j8Q-6xNjk zfYZ*7=h)nzF2ndxpThG(u0Pa6)6R6=m$m=T8S;H7UtA74 z&U1J8e#L$GCVWq(HBZ;|QuKd+cfGEQd;Gc}JU_fw^EUwU93*Lv&~=;rn`zgjQ0k@L zvmf{m_r+V#PVSp|FNpWI*{^>f-Ir+ReDE#m#gb3{pYq4EkM-+9KcwgWe4U#;McOf& z{f%-qVLW+%nD?tb%HDo~q@Ra)(!tshCpAm>I+QaG@u#5Q&quq;Q9t!#FC!hlhv#AU zJy&;*ly^4r)u3GN12~?f1In2^=O%wVXUP4lq?}{H?^B>V&ii&~58q4UxkgEPm9E>Q z+p93XG54H~Z_GZgFnTvr>8P^ads-cB%Mwx_@3H<3?LNQ#apy|-_CS7(;dvt0JJRb9 zXwPBz?iWY;^xp*@avUn#`*o{+v)}R3PsePulX|2wZDr(#4)paV%J~%I(oVUGF&_h` zKfsSszqihd?kxc4I{6yP;k}nPFnk^uDG`hp+XP_>6sYiok^VpN7ZGu*HJ&K4}bgP`t-B7ySDG zz=Zi!^Th+nCHn~PcO`@SP>tbd8lMSXRK7_&`b5}Y*T+5Yc_AP7nIETjX};Z{yK&3+ zZ<6w9&%^s9eUJ6}@K4bHzqa#wJk##_E|R`|m+tyK-tvd<~?u=-x2mUnrcAFF5VY?*Sd8T7FGR`2NdZtq}Mu=y7bgNa>t<@1o&5r%62R zZ$3i1xW1kby6>Ll^{(qs4($&{1d@C2`(s@|U({QYuUM3OALy$f^fxJr!WNah^6^e? zp7HziexUz6+i|RvpX)sAYdZn=u#fEw+`|HQ&cTwN@=8u1nE3Vaeo3nEJ=MqgaN4oZ zzcc+Yt8Pd#2rjqEq^UAqHC%}e7vYzhZz`v--; z&XJHRb6_Zt`<=METuWg4`Q5SbK>yw5lY=CE~Z zFzviO>BYv|A-pwYr0#>pU_4{ya4je4EP z=&0j1f3Jh@Z&rf-Uk801i*(b6j#2udebmk&Hw>0?s2AZr_qp(99cRi5w6mZ+Anm^o z#eAZC@p2%g8S??gEe5`r465}z6Jg0JiKkvP-R8sD?@2QvA@L3Ny(I$gd2XoYTOJ4& zou_1be_uUYVj5qcwSK;YKLdKPSl`}2IQ_A{jQ9&qlhnp+?7r}5fjwJmwfx>eG9!3l zAiv`O^SMO=ySDzI?Ja^m0MGTa1Bn%W;Qi_)ZAQzfb>2VUZGlFcyS3Cvjsd>Cb?HKh z=?OX>igpcNeCh=fz8?Mgbs$(YzM%8I7*F2+$iaB>zAWuo9&A^(M)Fba$woTwrG4*v zs*5l_$D{srS!b=5d`|)IbCO`udfDplHPnF*Zbv(K58)r+JJiF|zZuVocz=oSE(|!X zgYuWl@cq}KeXH@^2O|7*)KiD=-wD5iV}R5C=uYH6wRzGCX)o_fzlC;nM7flc?!oub zuK?+o{<-)b$`aJWaiF~CUmuFjKQONfF}{?$yti|qpQ%a@1JQ5Uwn_0q=V4wrP4OJN z;Sg!}pZzjMe*ZMS$$Wmc#K)Ys2Ptdw;R!QKu)BF|gC2e6MoTE79jd=a}KEB@TfpY`N9kmnRa~13w%bU+rx%#}8Il6DYyTh+q z&-LiP&QE)Lye@@7Ye@_lg3kKR3KY!%Hw9 zxjq-vhZ^3^cuS7n_F!#Kj`Mg|+h0ejk6EPY+PhSRlvjfL4%GK2L3eylV14s_M@qUj z>}M%A_eVOOGcCsV@?9#Pr}4h<@1Vyg!1wEb_r*MZ_iITYc#%l9{T68mgUo> zoSqn$F96pE61w;Ovyte(1Dj6{CH&Jsexv%qZ+PCl-JKIic+B3Z?M*um6BhH?+^yl2 z_DvnfB;G5pHplAsCam`-)1;+Datk2u!$fvsntzX8z{*YP^a*{-cMX6>RU z^*{QR9~o#i!}H_Spd-%L-aWTz`cm{q3iNdg=!$kxzoVWX(0Xua|9MPI-5=b|b5lH#$TO(D-&C`VDRdmGw!E8634 zKg)Xaiss9;-7l1S`r20&FL53g+Se4%a~}2$U+pOAa{<}Q|S+KKZ0q)w2> z>96E&@T2jVH$1QWKa4l`Kis!%2&B|VuCDWtejNBN&uGvC>3cK!H__nJ$6c@eCigS_dp7jzJ|FbLbFeO?5A^?;SpT_h?MC`itu1<&8U24spv9X$TfWor z;=S&7k-kW0cVw5f>~PKbf4RB359E2&4D=`WO&ePMd!3_>xw1-1-raiQg#x*b9F1}M z4RrKnAhE{qz0ARwAJpH{Zl3RvQLbu6`)3<(Cte2puYeZ^TCDjGzT-pC%cWZnSt&8s zp`YkS=5eHd3GL#2{PDo!fN$b^L)61{iTOL%SXU z%-Z~XKWQ)Zs9fjzKwg>9{RkbG=OHg9ZA|g9wn;jk+>cPt%K1k-t%K3u?AP(Ysn=b+ zX!TO5e~*3v{rEc4(N5zboi$OyWht#c3;5>C{;nK{{I?k2e+T->TZI~PYx^OZuQcoZ z2~r==Wi|$aMfx$+OMBecFb-@d^%A#$@6q12W5;HlN7o{p{BBdA#hN1QU)NpX>mLff z-xKeMmDpk0t|Fu_!2SCYGhD;tc)x6*_4o2qwpPO%oQLH$t#}OQu=IbMF~@3n!mXSs zEr~ggSJ@Fh+|((gJluf#xxbqM{15Ue>+gXTp?}W<-F@9!H%rRrxIch=!#i}=ea~9( zjeS9HA0mGZrl?ONH+@f|2NPB z<*K)lj`vPKMf!gsJ?{xkM>^Vb@Z6tvLVSOd=S=h~Lw)aU$lnF@L3`KN(H_ce^wYQR zHm|2!hV-WclD|D@-d}5?zdZ1r5uDFR_ddcWVty3asXETNrb%Imdt-^@&vqU^829G6 zzvR2iYcW2wkL3MA6r3{b}+Z0{v!Ck8%ytosM==ZlS*{o{yaoXtCyHz?~Qm z%CQe(KGKfz8fHBYw?Iu3~z4AP*2jrA^xIp_Q?Jim_Eug(_+LoUycsyLF z@sZyi-S?N)U#xg4kXX4NakA2REKoE$pIOvN{v*GA3gM)SXVC7&XlEMuF~DB|{yyfx zzSsv>wl39rGbpbNb_l7~pJP%V?dKZZ$<>0Nj_d#s~^7)b?GE^|RF8q<9>5r_}Sm0KR$+=&-`wqUlofF9AJTlUbnpjf}f;l9XRzZ_{*T z&cBNj=`ZyAi?J^%#QA=4c!#Frx^f`u%Y~kg|*E5shzh-ySIO)I(;Yyu$k3Jte%1cG0*OJt*v^bk2Kknc#6PhyKtT!vCZsU&73p zDv*9qUdO(f{%j~eT!nra(Qd?INnefmM|rCY_!;Gg?*d5`?f(M>hW8s6+4ESp&FO5rj%C%>p{Po>e zXuqW3Z#8$%{(I6=Nl(5*x~Bc}hCpKX+Nlp5z?T;TOxTpJYk581&~mCV{}^9Y@BM4uxM+mukBc9hCMCSl zysK2;=&VO(3FNz^uNv<+(ns#mnlwAJ|dN zDV;&P11UYSGsSo`fj{}%h0!><_cdQB-t#^9B%i*;eyHII=V3hX;SCs{5Ol)*IQ=qm z-*yPbm-p!@|B&7uMSjX5)tK*;KWf1z&j#JMNBzaY{)?q0-CUcloAK7KwVf5_b)Bb4 z8^2KE%L4h0rEcgRx|FCw~ z>WaD$^!R2Vv5~)+aN#n6_n`u`^Zme|HS_0Iaia@ zAN?fJ9%v)J<8SS~#l_UcpUgASAN5n$V_wZhxfcSbpV$=Yoxc2)Rg#bPD%9`N4rEmz zv5_2&@7Qte^u>ZV*-=FTU+OYcd!F;~AkgFA0*Q_E)2RQ^<2+8i+62r;e+x&}&lid% zMTHrs<;UFzmk3_wj?wZHcDTZnsa4p}cG(h%FLxeqG-sCzUWt3AoPS4#^NG}bN{+N%i|mH-S^^q zxz2?czgbu}4gf!lhbL$`nflX}50ygREyF#H3UmGG(#{n8C}eQ2r?%}R%}2h)bB5_X zPSNns#!0T|d*QE$cHZ+a-jvrb&-$m%$RiNmXPZBv>wtO6`x^P1y&d$^&Hi23I}p!( z=&obD{R-_A8nJH=K`-2I(2r&j=I`gA?+?xATH-5c#}wpy75k3+fX_m`XXD+|*@1qh z;r**0^3PMbq{&Uueu$Z=3agPWZtp6T9O*V69&6S7tRJuQEarST@6#1ne?O!; zJkO`cy3=6iC|>S7Oor$CczeCB1F3MX;$`+DEjMW|P`uQ67`Oht8lKO!fDU(|pI3q( zOu;x%-pxmNJ^K4OK-%Z>KF94ShxVicFuzG>T-Wcfldm`CEzm#x?$NIz&q+(dMcV!x z=k4MLSpObE3GDx3c8SJw-$OrlC0LK9+K&#BdMbjIny%5jHBs<7bAxiqJ?H0vghq4# zJBC!~^#*a=gUA@~H<|uKV|KC5!-43B?x2fmvrg+tn#*;@rQPU7Qf`Cu;bqqOc;{iA z{akx!0PG}6FwUf#{=nm{n>tE4W#(U6UIphr+La6>Hli=2Pq+ycY_VKhAr(DPTln)tiAHZ|lU1(n~$ff?Y-I!O=AG8y=5AFUkyj<6F+9PIx-p8Vx z5d4UC;{8Yarpndauh34R z8GMg^mMJfc!FSz@`TQ#AlJdr}Sbz3Me!ffYt@@&Uo%y@gUjqMtUCjf!j`AG2z&x(; zMfTRoGX8~a9?vmPCKL~UpCXWYg><-C)AOEwSs<~|x@9JJ61Zm_HU3^B?Zji@7T*tU zxQQXqEYw_GD9d*15j?^A-p!3y%*4)|iKS3*@~h zu9J0mmpE>{KdEQXf3&M$zrG5&Z{j)gl*$M92NJq>pHKbf zh(LqQ5X^(ufuDtPx!fo7xYw-tB(c{@ysBC`WR=-3Rr} z20uO&a>(6R`tqlq=-W9kcuVWsvmY=w=s5B|Ov1gb@m1Dq`pTV$8T+n=$DN01_oCKR zyncsWrO(}ASkOJDSd zuq=E>=g;WNM^s3B3+RmY9C_&HQ^Mc0ob}Dwb0u8|)W`3m9*_KgS0Jg3S$Wx^YXuH0 z{9W@81KspTI|l*J*xe~fSLJqVx>)_)s|0TjgN4ZPHve!K~kQHcE7BvdbE#e?W+I9gIjf6 z8o{T_t>?%Ilk4N5kIJ-NTqNaWLa(Qahc|0{qV-ATPj#(ZCrW&^S>p9S;rcm($L!II z1=bjUA3R|eDLq7fb(9WBM`hOULoC|)OuL;bUtASP?r8iWck$lxxjZT0WFCTxGj^Q|5x!vTI=oY()Q zT&=b|6%Nwy`fyIUw48Ra30tY*vz>=o*ujnr2WxoRY*Kh?OH#)*XP#Ip`D5<;N`VPG zMB|gr!#aC_&xiG7kn<~PwHvD8xrPH3R=Jn8ygTsj#d8>U(tpo(UY|_8Mg5^)D4pE4 z+Rr!Y8y7wA{p*at{2RH_$B!F(&su3;C&)+B0>L6bL*N#`^;=cR#O_c-lpbSlOy{!t?ognBSLyUe_CTac(Td%O(d0341 z0BFx#V-M5#W}7)!%I(8*ra-Vr9tv+jm9*E8PxX`8zG| z4UA_i_#5Sbp`e!sz{mCjpS!s8@tSWuzAM+c;{vHY@+*pQZioEK@m=T_mFI#yA1+5Z zi?NQLjd8yXbi60fVod||e>2AXpzFaFqH@mKSTeO7*T)IM>QS-fLS| z;16foB%l92j1S*!eDF9Qo()ge@-pGg$`|OTzRI4V;c@3--p=*)n)wP7#`^_Lnw++S z`>s0Y<8#*E7)v-0^LC*xujS!xQZwl?@6OcliEe>Xd=~rCjPdWZ@!htRy+4qA#pWDM z&wDRzcA>UadsGzq`){2&UxM>AeHHFMmY5}qm&3nhT1yqXh(mPV)Hxr|d-s`^vr=hgBz;!mvSDD+tnJLc7XP&1Et)3OtSxlx_QNyI#X%w(t-MKNfUFJ3!Jc?LsfXygCc>vnTn! z+3d@4i|0!@S?BROdx?hUorgJlsp1LeA@?`jPt}E&`*<_0QOZe%>&_P#v&ZN;3RV z{u~s~2HK41JoAB-@?YF;*YJ$FOCjfb&Urjx|E%G8i~Eti`~5}p|A_Apo%<`E4&NOlGxyv(CeW>#95ZEmI{nl7Gj2s`2zU+vhMJ z{yO?w13Eh+Ksd&U{)+#G_$qv_TQP2@qhI;J>-TDqpL$vP;i<;GRJW?Ta-y>_{!=kd z^!sr?zB|uThC+^~9se1qeF-@|=M0OVIxF1+GJ}BEozaY=whhRLu zK|AgT&U+xVFJE)Xy*;DhGCv?4<@N;nNBzvc;B)k2k#v>1zGs5oN=KX{X9@N`qbxK>QA@(-Tk*=Lzq*@E-kTh;PAuAshM? zKW6`Np|mG%57cqVIu8@!FvUkV_;b$49=4aHqaFC)(9UJ}9v5O<&H%p{u>2_HFT5AN z5qu^SRQY-uj$I?=ar|@egYt1+LPdWuO4G#}F3|NQXZ$_iWcabJW7Y1RT1j^b)}35K zTGLmUYK4>+vhK-1(s6(Nonpp(hW7TtxO2bGd+)0;zi1D~dAM}kfAxD$LOGWM(k@{) z=;k_nC*FsB2lX`}ocmhZOANudEkinfH`+&#pL~G&Xb(fbl6~-fe|`Qzy*$s0sZZs- zebN)(>7X8M!PH;sO!Sv?^*Ww))^nt|o2>X~w1e{L>zId&(Ei`r!&HJv+I#v*ITqhF z)w02V_i*(x3FrQyJ`hamJ5<-9G1i}>)8Ed2Q7-uu@8?i1y%6)E7v{qdd{^r4c;AcT zcnj9010lEGbGf(s;`lv>@AN*(;di(-&}O#zsecUZnuq$S-?<9&<23A>y4Xe?w{quU zv7M=Sf%CA)o`Cr28>EI*_=IxMtoiRe!IO5O^0hnB9p3x-b9D;OQ=PAeXo)6!7?SS%0Ul$`E&yB7Pq%>oG zi*UXVeoD)q^vi8*_ms-n&u<#FNYbUu<0AxeKG(E7bE@FEKz^feynnl{yZ7sTA-?Ox z@Vem|kMTG{xlwc;fcCwC^=UrF<#gZ;7>7X^Po87;LHuygalB!vey@bNP+>lh+M@P^ z{@wLv)LZ3ze7#%u8;So8{how+sJH80;O7hPY1N^=tI&?WVSaOc`3rFRi=y0oe7(QN z^cUpgzOyNi+Ku@h`Hn^XNziQ{&T!o@i#E2q zYPsZFgK^5C9bEq=1ri(CL$%wf_0kW?XMqN{o%eKHxqOv`)S$k2sh77Yr|=%jGVm4N z2RxK=huf;{%i6Q|mvWNs8pZ4FwF=|T!<@ZN@oMMoQ2vf~bDwy5uxqB|pM`#uW84=6 z5*oeFjq&^h^fPbs9_15L(T<$?y_TN|G`Xp6_;Q*2mvjh6y~XYpO*hEisxb2Zr?4O1 zJH8owD{KCs;nil=Bq@h{I@#*OXPYjS5?+9N1L^Qst#69mrIZmfgY>(PhJTg>^p7!f zmzEn3&pJo)NAHH7D3Jazv#mZp9Y|T zJW00&<3u}^=5Z2g49_##W1J5~x~}_rfA9Ar9p!EA-&Y5k-H>l^y%~@1)B)dS`L<4TaC>_)SAQZ%03ho4oz%s`fAH zx#I%kHA^YfQ{Oanz0^NsnSU|lL-UgIqn_Qa8zA9-$9IqXCM*9<*qvHW#(7w4y?@di z{FEkLDk1qwgA->6KvG9? zpu1YzU20y|^7@(VQVH+kI<6L2VJ9n}kK?>K)_O`O37?MslmvoB>A;Ws*lRVu2JesX zovd}3|3w(Dewc6dpfBq6ct7nxjQgkHo0WLqwkXi*BD*+0uPEOQN4ezJAB0^8NlNm& z2XvN2?;m5`-HLMVM!rum&u>Tg3xNCXJ7Qr}jJX;3K$OG#v2&1rJ|OqIynim zTCTrKF>g3uXkWUxd@GPrBL7&R^IX`;m+!Kngvac@iYJ|i z^|rIeZJ_gbU)1+Jz5~xkpTj)jdmofDX!po_?A%Y$PtU*bUFV`b+;`E>8}0CS1k$?b zeZJ+VuM^nexAGgk5526nQsQ*XhfQeLogGRRNc=~@sfU<}ap69X^8XsN;|S3C#h`EA zi>F-7eRebAdCp6Edj{oGKU@$y}8IAzmLbc za>B+H&o~d0wo36TH&FR^-X;`JI1l4?l;Sz(VJuAgc-TR4U7;VDl&RMESUCS&X~%4P zpK{E&^Wk}Oe@enfw|f6$Re@mgp3^UyE^A9PAIpt}{@s|_;bCheT|MmMD+9qIIt5*q zwRn4vp|E>yE$}xusb`6`jPdO@56+Z)y-bbLIp0g;zJ~VC#Hkle!j5-9y9rv(DNQq! zUo>vqJx|JeJ&@mM-M~Cu0y@7BaPGJ_&y;wc+tA*VdcBJ7yLEl7#JWMdN#2`|jrDrr zE5=AE#*D>0NMioAkY9j*e1LfF|2lU3R{0?PA5#BLJ?dM?_XPG68{7HxlLD>Ia6Nbw zd|&|5w_yC|Uw)L1%QxtM-W{zt^$2r9e{L5uXVH;(AN&jJ+-UT#1aL~T_b;#$?c=>H>Sy>)^mg=*{&Q$2dko~Cz5dI`FOv3Db^lrI z*9x4Mle*fIv|q)}^O0vU?$@IoPgGrj4SQHsMq)p==JMBaz*zHF;3KXY(xB) zfkqqBUlVZZS4ekz5dH?{$qy|vblkqfcc*-G1nA`)l+X9I-kav@iHA+-_xnR6q}m;S zk-$vYtl_kisI{J7<#3Kky5&8do~VcS)A_C%^IVqC97`ahvO-czA`c?i;RpT8gK=eZ5#hFvIU9_DkQ+pOc# z)qT;!M1M8rQpK})_n>WDu&y1C{F?zUpDeke_s;+e&<@&5(y!D32!9jx&N0XJl6+}9 zcBaDcYOR;{kU6_m@tE^4+i;EIY!CT(5$-n}5Z*FC%BjG+t^>nwbUi8$U)1so!l#rE z_lJFP2ka+GTdqG_^7RW(Q9fE`?ofQNo2Ya%`tqB!-qFxw{t`&)h_28d`X8p8G%e6* z!}~?=W1To0--Gjt`x5R)`Q9e&{+D1pdHzXy`UK$?-%XxA9b^O2y>F9F|2_)kd3^C8}k_zd&)jl+GvdG0j|^L9J>PkZqz zfb%@-TI4$y?ImBJUj&|)ao^t;`jD90FPsDCg|6-nD2i^{QhWv=f@6EI`|*b@f@1^up_WeoDMh><3@hP`Fw4l)fw)4 zX_w=W{uIRX-KvGa>38{NtjG7P@gA*tPlI~)FRi!7T!?+*Hpr2u;QM@|T7P3GXI_r- zSE7FMU!G6gg8nW-{3N8m?ntA5vG5fg_f+c=$b+vco^>xaN`hgikNYj2BluVDqj?`l zDmjnvCynLK`<+PH{ku!}$UuH0yA#;$GCl9#NA~~t?jBY(>{guVVtB8*bI)74NjdWZ z`Q7U;e<$YGljz?!<6qHve@mdr4Da_-Pjm(3lZ}X94g4#N6YX?b$BkPdCGb4sBb0vy z@=>mP8S{#IF!~cEpKrlDnbP5;&Qji^$lo9HgmxM9>rB2hf7LH*CH)N0P@GhvOS=Q;KLp#MKMf2sSZ%Jx+q4`B2 z{f!nnkN39iM@ha#8;!Pu_f1AZ4@EsgCXiHnpstZrh{$`<1<$Ff73#LAj_if3) z*J8d^*?s-K(RrA$ofXfuR_MA@7-+SoICy!M{8t2jF|@1WxD>grny&-ybuKFTOgZG5 z68~Pz6_9g&eg0Brx@*4T@UM%c{EF}*rNheLH!B72;8toox;me((Du;uy`6^@VTs~J z?yo0G`XbxYx5N2yjX`hOB^)wT;*0TaeGK+ViSYQP65eK~1Uvks>!amlY?;D2&co;) zVX>r-JAcnAXUjD{*6LwRAh8jj0N*PJ_bC#*40vS!uj%>jChZc(VBXBa{5lVKe;vih zFD$|bV}5)YNU72IV4m=v)1lxGUtqq`e;n<1AHn?R`pxs}2fz=GK|b2|(B7E)osOiN zO~bSwM_`}gunrAGJ2xKY+sAtrr=eY(?^B=Lrt@$n+CzUplYtL?^7K=rg#8aK)_ML2 z%HzK8e`se#&c93g67rG0y%r>z$D#K-o3sA?`H^A0)|+be_bj%I@$KaLMn41RVw`yn zcrC`~L-em5>faajE&k{7fmR)6Vi1+duU%$1b!H|S^aKlJ0LAB$(l)uPi%RAj^GKiTi3D1@a&a>*TQ}^ zVd^y<^$zq88h8Hv$D{4JRg%8#ToK=kb}Zayy@3AAT-jCU`#iJtV#zlN;j{~$f^~Sd z8*_og&qsV!yLYDx{x#?=h447=_Lw)+S8oj@b!5*Bd4k{JpGbEHzVq3@F9Do_c~yyi zP_OtVzT0*94j%+syqWXZttyAVj(Dz*JTK&ZlZ{X9S|vHSu5rIXIga*_)K7B%^-aqL zm7vQ}KIPcSsGs{KzRN=UjnSY7uKx$3zqDs~1Nmv^atF%40O6Fo4#xQXX#6`pJny9b zhWdu-sE_=q4D^3D$|HS@2TnPLc4d3=M*ph9g-UNZtiSbkoAT+HJ=2Ff5BJ`m>NY|$ zmYcIRzQp)_Q-ys&>A0`+;f3Kj8qa$G#ja~0`FM}(ANa1kS3-Ri-*w}9S^zpJ0{v0{ zS>NREM;>C{(e_SoUUEDD{Qr00AN1c{gK|Ct{gQ4tA9(J|^AXB*|G;;mUTq!5{UXeJ z-n*{B_ulS?A1D2!zl!4n!Nk8*qsouVP~IVd2Aj!BZIQfT{XPE#^k4L=nh4hFIL2&? z&f|2rUh&!CxJD^qWcbqpfwji#@2lL~O@ha)_w$gki^>JhTc`QzoQEm9QSqGfu+DB$ zJnKA+2jA=WC2eoq4)Z#{Z04-f}Rgs{k_uLUyyIB>F*@ph;HX81<}7V?W(9h8HW80 z_eDv2owg%m{W$GHeN9+r?*t!ekNNi<_)$OL^dCUK?vJAX{rLUNiNBF{alGiyZ4mk~ zxV^WV_@=|$Wste;~1Y&r!|+U2|W}`NR9#T=$1z zyq?4OO~n0r%BviQDaLzTh=ql^j`nhYu9f<{xBSQ-HNL}Ij5Fl|t{3lMzJ7~&JqP!X zrce&Y`<99D0Y49LK2hQ>O-em{NAA4vFO7na#`j?Veh6z@ynP#d%m^^TVayuTk&M zpsP5}9}*4zeY?xRKUPuBHGlW@nx}NW=CPldi1&ZVx8r7*pU;rHi_MFgk95@q_X~?! znv_m@*=72@3XGTUdEc`H^=9qMzFy~Hz5S=+qn(E-`)W-3v&(pY@;t}8AN}L~iXlDx zc@6tJGVuGvdN)V;R@`|!#di%h-K#A~!Vjl^wT8z1- z!)3ZIaz5Yt=sg!n4COTL*Y+Si?I$^(Xs8QYqEqIb9tb^gc$$k!#zF~`Dy=gA8_uU_Qm)dj`RnC z9{M~!?r14tCBo}^y{q%Lx9QO+;e$-aQw7GuzwR%vBHWS|*f)^hXx#}PRJ!RBmMJ}P zp7(P;f1xdDlyv>w%8Lc|3*+&oM5`vCc0lnOP$7e1H3}2|E*l^E;Bxc|J(H zl+GBxZvsgj*`)^x+VtPwLcS@q`!z~TU*}=ld133(vm|_H$>2tTm!myp;Sj|u8>Z@a zD6$7AUg|vT;L3HquMDD0(O;o`Y>B`x0{J!Oeyp!uK_5?{+(xVmFZLSIDCw@oxdZ*b z#&9lkH@-`$iEFw-SEZCwg!95;cTFeB&v#C^u21@%ghu?d<-5TGOJT27873PAFLQzN z(JpBJoIpa2IWp85;oH)Fzr0d!OuSDDfi8lEf3X8I^GYi3+oyM z&xbY31lGFWD*eR+!J_a$f#JE(uB^xDAMr|z-xiF=#9&OLq)6DYD+I>Fv5f+GZWIF_ z&*FTx)?TUeJQD(W+KQ(p&@_D@_&kbWiR>PCl_rJpA6sMl5nQ|V^kyGwajgN(s ze0lbhIVSqc+j_-w?gCv0V|KFQec+d`Bs@&9{BYFrAlM2&{<^6lfWxb&Xz!09qIMaj?L}MFA|*ZM4dNDu*l9D z{TP6DyoYkQulVg4pN{%~JxKon>N$PoMs3jtXcx~9zC(X$w{{N79f$UE-TxWo^L_#S z((pU+-e@-P?a0_4M$3QagPx88{~2x1YLxIQ>;1>1!m|~p+}}2z;O8J6F4lOS&&2Jy zil6E{tcJe#42;u77$53YHh@kGT9#_Q^1$d{CEiIG0=$>|!)l2r#=ZIyg!e}KlP+wO z_>A-Z0-iyCsAouk-~R>mpM&wsf}a0faEgxL{s>=z^7*dK+4xS>V_etK+cne9hW7Hj z|M=thyW-NG<4}H|j_Vo)PdstnIRa^S_cZF``|`AdE5F*OpN{;LZ%okX0w=@du>pY}C`wHvz zLnY=4jW07lCnQ}dzDH534=)a{()ga?eJU^a3LjH`QGj%%_G*pa2kTC~IjvgCsR_5~ zx=())hi|+_()^ZnWO))OENP>l5$abAD5Q zb_2f0Z!vB>zy1{8-yoj*S*~**;Jc7dzK8yOf_xdoQ;*5>!1vJJ_X2Hhn|#9kDeXCz zqTVl&ZWr1|y%x{?d5%qapZ4&Zz*l%~k$^lyR~J6eDB;;~ynbiiU#kswrX)O#cOz|&2O9bZSp;W?)!-pFM z^1abY`28*mBs7v|8}?}Z#bHaM;B0@n9jW}Rq~TEwFMwZj~F~mjj74hIDX*Y6+r!Sny1vgvSE;jm8b%oqTe(`NLTfPJ7S7aA%|7 zMedfh0()YA-o^cXuHbX*^Nj-QLjV3n^iK3?f=6)NU@2Wo$52f=&&8`~YbOw#dQHqXsDpUB_t3?x-F&X^ZB08$<~5B!Vo zogRjHz;l{B_S>f~dtLd=s;n>XZ1BayLHFG*d#6!i`u|pb#SZ8{jRFgTZ7T#;;vE#y zSAX~MAPJAoZyFUk4=39HDqd&3KgdM*0phCuZCdA1som2kcrogP(-&L;JK@7|(yB zzSq%@yV0Jz5q>Yi_r>>r9PuMTx7px89oJkqqDDr9`tlms#iz`0jjs>=ebwH8c^hhY z!uj|Nmr)nPeH-2~z_X)I<_NH9_cjLQr zUwZ@k$Mb~qQ2$or_gR#m55V{Q0qyzmG5;Rr)5l6HBKy{rbM*UlMf;|rfT^R;KOqt0bSjWRbR~`6$8m$_dYck1hv16#buve!mcCa`QiY z&qo301CsvxfzSHWU1MgpyYWoP`3v%&86K(QLpiX`{;=T!ZCBoSK3N=|TrT;hg#TD0 zkn3dD`S`e@@B5IS`z+oIxDx9c z{qONz8vnXQM2DcS3qU_{;7urRH|E7J2ydC}+wnHWm3r_g81G%kcRt{Hz%rD>_3}D| z)6QZK`W*{5>o{h@lg~5JAN_^ahbQO=)P==sC48iLX|ce({c^Ctc*_>emuzUK`9_+{ z@jb3QS>ls!zEV`o{zc14gjZ;M%=!1FXWJ_kPdE>A_9|aq={aw>9gk4lRY*l;|+Ldl-)^>88B^`f-^>W@AUq1ctmxX63g_PPI zr$|iJysG8#J)pSp@9VX_Qxf?6wK%t{cQ5HaJK>P8p-U%8aUj-d+Os_dIwk#11ikW} zbqnG-Kd8sL4dL9!jRjrab);_x`$zpI>3jgzUEa%_7WnkEGrJFbBOAV_{jEiO6(Ic= z@IB}sQQp^x=lSy3iT<9!tLP8?F!FtE?mPa3d5}c=pT#`ne7_TTU!)_y-}mW<3Z>;= zApU-(29ak!)pp12X9{!SKXm@4UFG?bzGvv)v9B;6t`fX=;Pqw&IFF&+vG*Kygr*xE zNNUkHc{}Y<%fHp~Yrsdjuj0C%M7!1;woC|=<_EVn-@ z-oZkD9Q^F#(SE)UQDSB&$K^e)$X~3|UEZ1#q{f)@Fm2l@o^JJUj-A_A;!gv=CcTiq z-GcRi{5^;7^ET)sZaQgsb>`fYq@1K{-z>1o`S8g8U*qG>!<_A`c-y^j+|$m$euw+) zgzKW|$p2CeyAF|Z*}k*7J~>P95aUieXs#zYg#QA%qg+Kli49{Vcf@D$eL8@yZVxor zEJHsZhdh{e<;n*tLcgOZYW04z-$yyL=eQ8_`Z=sCKiFSZNQq}$(p&pOJy6{BQ9KoH z87}b|+WCafDWA&)5*mdE?UXOq!0#{Lq31sFzJfz9lyu{o-)Iu}ZHM3@ft=^FR{VXP z;3F|VsrULL zee4kAf1+68<7TMhvCzL;nZSK_`a7O&UtcKc*xx+#erd>IS^L0#5?^FSXgL+OMc3nU z6H~mzZqfesaUL(WBQ?C#dHCz|7@j}n@!bb?d7-P6Px?L{^EB;7X*p?|RG0|8eLwve zP%a#4ArHbnFO7Z09f6c;%x^I6yuW=7>TUD8+;%^F*&<2Lb42>3$pnMv`EdWPX?4S; zx__C0d)obR-VnV}FoeSggVKffnmkNi1wmvXw8iJGn= z+|Wtz4uSkebP#&`iK5{2m4f%dx>{k~D8WlG?=C=i!W^pQB+VfG&gq6%RS#biPSWs{ zc~kqBvv-~$`Rl@~Itz^1eNGn0^ZSXA14E1__rqNGPRIQH1oM3a+HnHrA@3hkU)2;y z>BjJW#U7N){nh1xMw{0WUXSnA339?Ez{g|0SGuFMKV96z+LDAhMsa@6dgpPHZR7y*?n}=%!ejGk{s=z&g{O}Kg?cg5P_+m3((-)eL z&yw^-wrY*QKH&m{zoT?m;@(y{pg3Hp;T1SfA8gO`_2E7(&vBQcKioIHi|_x)vV`(? z>V@iXo?jD4tr7pmJc#USv|OHlCCzz?$K6ilXL++k@n-Xb%BLxFi+;yi*lkyvrAWU? zC7hJ=c+y^=;aThbV)45V#`ow4`X&FTUS~SO4?#NG+mZgSAM4wH8PfgJtkxdSM)(bY z&m#Y=SSLqXe}BEKVS=CU_TZG1RP9!4JLC2ug&F5z!d|R+-mFoWwl*&5DSy#!j`N!D zsty<{siOVHWDh^YJnsj3~_V=oQFloS8Tn!TxIUn_}OOcY$-8oE}Ac}rsX2#C;a}I z@a$#@A8DUhD=_JNzKp$3^C!&x3fuO>fuxdj{@im?ps2Y9e1+#W_mB1AH{g3M!}lAD z{_@@y_eGR1-a$OqyHk;$ep-1i`UTWWeK_goPK5Wt_h2FKcZ#NYZygdrk)Yc&vmP)8-ct^vCnB6vp{0 zjO+8r_XF}h4!8^ScRu2IKAcBCHwIdbX@~UPmo2$iLXO9LehBdv>3LpLg6}v3eDocp zqn$(^az$<6{fAFPJms)L`}qk`HIY0}t1;Z~Z{PfdhHt<+mJh!!lXMB|{ePD_Z+}pL z_og~nZ|75FztMbU4abhu^yXW|M~0`(61>hW?Ikc7`guPm5G>jk!H*IBnkU@%nlG|D zR5%*;;yo~ax1ir=VqBZrd&%?OvA(<Mzd0 z_a=QTe&Q$PtN%f}&cb*d1Uj9uskgR2hxbC`ZqiC=NiytwqQHqQH!Kj?XrESoJR9`O zeP)64_l5XgNXD+v{X*UpY5wT`O_Su$Igc}4!frlC!jCQaji$?i4ru32{c{@q{t)fI z5dC`#<8VqKr5HmxCjZ(HXt22k^msSc9ES3yfu!A%_P#q+*( zfz%TDo$K!XuT)sCubBxtjfYj5pY}x=yl?mt;uGO0jUR$~^I=l)r1kIPCIc;guYB5q zdmXR`JKEG}`h(hed3p4z6Lg$sne!En1%F@Ye7dnSe0e8b$<^=5fA1+)q5(-rMQzhxw6*o+JxB$tdIX;i>TCD#^+BStbU) zoLb}Upz`5C%@UF^$6A5(znHLxYrCpU-$fG6_g<3ryNd*mg$)`XcYjm9m2H@!_(*eO zOyc9_8|Cv^rTaZ!6JPm`b+%+^}y86_dnF9 zYYIH1-!k4qdvyG3%FmwM=TnsyW3D z#`}AV{6Q)o&4u1RrIz<3@tyBNKNcVE+c^>R_Gg6C|6U^W`|>F!v075*%^j5j`9At6 z@FSk1ycI~SG4$)S4SaJ5=xyOKKK{gT;feAe*PCO&k9j_MYO}v*&GW=nh_AuA_#WE3 z8SUk{Ip3!_Kk)UmBL4I6>fRFaKEkQb-rDm_ZO12=|Nq1|7TX$?uX1JnepQ(}OVf45 z{nk2shb8FO4WN^)XxBYxFXdaVC)}@4ew~AK^pnJUczkE&J+zniGxpPb65~_@`+!`7mz%O? zwWd$o4^*y8HvILpXt)jaA~E-FQt-6BSkqNG4->|p`$h8XT#4Tt$geT4{m##e4DJPI zg7um&*)UJ%O>MA2@l)O3)=BzN;qm&tPIZqf9~ch4IVaq#>6*=&lO`JgziIrwx_zGU=8v2E6*i-ude>ux zaK1m93j~YgY3uKa(jK#ew-j62u72|z(oKn<_pew!;m^6R$>#X(fverPKnQ_l( zx%8Wqch4$bZFee+{QoOVVE)ALUMbs~ch74)<>WZ%8yghHN z75Linmo$H4r>~C@e4q7`ngvc>aYwbl$3c%jW8Tq^yT45u$@O_jCFd3Xd#2sBsvpWU zyrSh+WBmEPR65+{!voD0>48WG|I+YU=i#sIta9*^opt{{S#r{Tm+LFfX)i~))Dv9` zJc0Jpevf)<>T7s@axT)($2czE{EoJ(_1LJ==&#;*J!Yb%YPR5UxBgs#q(9o@T@XlU zq!$BUcouwM|MvTyDdE)PeH!}vH?v(a7F9ec0Iu8dO%>d+m%Q0x@DA3m( zfhIT9H;sq{@Q93Va6_vATe%y!WDjPo$pu#e(HLHE@A zt^u7ReHb?O zX02xz>c0`+f2aA!EJ=6qsyFouevAFhl#&U>68_nf1GN4pvCh4Z{PU5Y_QkY2r#%|= zIe!`_r9^%f&`!QHaX0X**WaS+)(gPDLHp-pe5ikX9(1}9^E$a|ULfU?KgaAKZD-zj zm}{t1JYn`zNI52DJiltQ&j@=AkaA+s-wemRrM~%uKw=|1T(s}5Kv6RX?VJRh_So-ZZjf z(D5y_Nln+qd01dmiWfN#qkBk-_YM6$zb?+7Q&zib4UgN5!i@7UVQUo6hqVgR#-DeM zvLypd^cROdf#cpaJXq89Gu5*tzE?O|>AS)V3I*?N{*V$_X;ZScH&tH3h zPtabR{*G_KI5!2pzDmgH9kGs(zrKWi%*6a(f_Sfe+iOQP0^`j2Rgd=8w4SK#=R2nK z>qEM%M!U~Kd-}s~_&)GE-qjqg^N06ln}f0e(&ET|Xr4fRmzwc{Mfaw37aHAn3H^Ec zj~%X9FX8{jccOjg4zw?3${HoUIgsDI_UsAg^-b|`zP3Mx`*gHBnjJ3C@EqjblwGKJ z&Gx%{Yf3-a*l$g=Z<4HF_<4fD!oR@Ikzxg2$EaFF?tB+Cs5{wJ=m0W)h z0X_0Q|ArOwb$$JFpv4%rFF^ZJ#>;OByGYX|?4!EB$(!}s&UEN^wzUl_bRJgYetS*0 z!N=o$#yacu-EVAk8vZ-zd1K)w#p_Xj9^YpqU~%Z}ZVJu7oV1YsU@AIn(R@?TpXWih z!>&X)_(amYK11@=x$z4GPBhzf|CtR06TO4K&y<1QxF7tYd=Y50p*%VU_wekZY!{nBQieg?k(ZTJou`v)zjHqc~k z_Hl*qtJ#QgIR^dYxghroJjWp&Qm=aas&|#HUPHbUQGOHjWTo!UT5pBDTVWsPVUYzr zxO+6b%-*Z8$az?9@AK(xL8Y{~+TO2tCVW6)EWB0s^$FXeFo}8-)}QCl-y-GRv4=@1 z(YlH8BmcP`^hf)Z>A{X3xC*WMZU_AOr3 zX{h{nOUJ$g1Qr(@t@GdS3XNHc`Ca7B-(TV@Y^(OOuk*0bzMy!y^RU>B?k4G?_w6-2 zy04@1P{y26F5&5LPg-Cee%R}b*JH%O!*pIJ%pICOiSrElgRTySsGLSW>bdZw#ZpcJ zet(K!M@juw%$5(9_zd*xoC|o?cq!c&`UT~EorW>qkLQ;yZ|Xj31L%YPKzZ&E zf?i%}?=3(k1Lyk&FJpcu+y~mPe1ktfi-jL4o(O-QCH2SMi>faeY0lQ~7>7UCD)6h9 zK`*NVNgc_*XwR5HQS%Y{_XYZY2GSpn{P&}u^l$M`;P0ZG9M_4KuY9{;@1H^WS?qh3 zfFEz{=JoEqd;U+;e~$Tg62^5C+Or+}xlUJ=$WJHm`6zc9aJ~b@ea^SwlNCr;3P^k3 zDtA$>iT*k?{G#;_3eCxa7nqw%1XA9taK2}p-)968yZ1dW+OgA)a~1lLHr^hW_Ka0{ z*R`^xqt-Ln&DQ-#*RYe~L-4L#7n4&B5bq;&wVgG-$a&bu7AjusJS?zX6fbk$o+2A| zRlFYiqpU4bJmx&i7{AZpdEk%ueq0B+&;CoG-8A2=ZB{rh@f=!bSg)C*K2-{;`> zM<74>@K)&E-a-CT4>$Tpxs~hVT6vu+5b7y&!?nCF;RuDr?&}p& zUb&4a{_Fh9&@a+4*N+P)oYYzJbw+=W#`r7@B-EIzCU{tde)(5__xi284DmN%JmSb- z2tIcT_{-fWe-X;5!uR|h`N?-zp&Z(KK8N&_+o-4gu8od<(Q&*h@aks^PFo@&jh5K1jzfGTd|)#9Q~vG`4+x&S%bfibiw0?o*Y$YK14k{&$=J| zU4?qN59vN`uCCV&;Ah9LJX9s-4ftNOLC@EPULK@f*B-QwbbClJZ@$z^e~0v+dLz#x}%Yw^LFjBdwf4IjTjnjK-;8>vVLm^Pd>4XlI3H=p&wegI{3mGN7MeT=!`@mE$ze(EQw?>R4! z(7k+!@>>G!q+Gyx`bPUJE|&CHquta4y&gztWVaH?Z}d*msy)jE(jOxIF3_%kdi7(` zUfSvU*KnhIOz6+C7zfUeV${1mkkXBz9m)*|zaHO-dfl-Y|D~A!JlD&*ch*b(QJZ&Z z4Wr#IC1Bp(I}OfA005|sNH;E_nreanV+D=v~8JU8Bk`pd&jN?(ya zw^`yV>}JrPhx9K>x!T{pi1aVNx~IbR{e9F=f1!Qx-FWUse$DT>9P=gXuGD(t_9}%L z-0SHZUZXhubr%_b|D_=8soygZc336t?rDpa?-$!^HT@v_*+>a5x7R6N>^v;Ry*~1z zo#68+vrW@A!_R6>>qkYBpZ3eoD3=z0i2mG`?^>no&6+P3NNSPW{W(F({oaQ++@g^0 zY*2rgbGK@Eo8K>d$5iV_XG=NJd5*@@F0#h_N%1u7wCaub&l%mH)Dh-AsyyzSB%M!B z`_O84$vi2S>1YR+v`dwb*SouXd+eVT=A4Ih_HM;f_S_zlKM_7YLSVf;c&)%#%e~0w z?V{$Gw+@u>bRfT?ulDeF_B*g&0mA}Nqd{WDqa@a`4V4l`snxV zW8PUUctLof(s8A^L-&9E>}fjFx;me)zkNjW7dQ`#ZHwY1&O^#c1!&i-U(FZF$sG@q z+Ki$7DA(}{&@=TZ-7!CDw{qG9pO5rSe==O3=V5&x1->vH{N_;Py9wdcgVWC%*Ej!4 zjWHjf-6sUTzLns=^b5&#k@saNH(Ue$MSJpQ@Tpf(??WiBx}(=ve2nyz=N|yyI2+$_ z1KMAKa_HB#JH}}P%KH}S`7XmL7=PMRRNI>tNl$X-86BZ&=mm2Puj}_qg#O$m8+v>4 z*?1>3@9sE8@=ZnkV=#^r@)9a`BD*zz8s`#a4R0x4jPPA&-g<UFgT-sE_CO|3H5^-rqLQQhrMMYJnVoH~3Ad`B2+YXa_l|cVM`+lfX)M=^BA4 zvsLp~HT<(o@PzwV)8`vX1_=HJ_|X8ATi&|Im)G#A!rsn9?w5;N{k=@y6U$7HQX+d( z&=LI)^g};>2K)&9Y-sZDUhuvW{lC$#3jHn|2f2&yKotXj0d&Is*nfeKMmtFVw6nS{ z(B>J+HC%5WNBW*|i*`4jKeP)_1{J_X-#ZIfSbm!iMi@0?xW&rztK z;Ju=2(e8GjuL9fg6lrOh^RU8A>L>V_tQMSGeDvA+X3!JW*iW`16od@Y~sf$6B{n3amHXe7%@= zTn9?*b4w)t{C2}Nz5(+8TY-c|>*_=g{|)-5A0FykX;()%t`G84zNEZQztg5C^EF#5xp ziS)OD&dR&{d;0Gq|E6%@EGcmk(oI0Un>!q@>th@^`+XwXISk*E>sZyM{>p#)xrBcI zB0EZ9soT&=$|wKYi1J=QeH`!lrWrcIM<9MGb+`!q;yutUC}%s;e}?+VUtYubZ$`W5&zJqu|Dp znwCtxz|DwX4|?Qz4DE>dy}5rSU93a9xL>*o?H-GE*I<0wqx?4dMEIxejefsv$9R7A zHOeDjy%XtXqFnMbjt}Xl1>;BleI@$w5yEF6|1VhoKR~%pV?I&;L3()v^2pC<_e7*C zdiJe#Ci>&O>%*~reF(mkhFulq#^0fyDfkYYr=;Jb5l{PVz7u~3+DZCo?C$NSx&MxZ z?G{Qq66Rx-x96b#O0;`A=$Px$Zv#mk?FUGI=+`ji^3i)57@s)w`{izy&LjGZsGxsd z+wD9lr#hUY@jN$-H+cDZbm-qvB7e@nZ%^Fqw^Z^S2>Bsq=4$?l95=k5GRMx-@SO9o z9)7v=zp}?nxdoao-s<&`X?N(cQhwH+so^o_VcITIJl*PHAA6SKbq&udpP67E(e;CT zk@rz~&tMGZf90gDouz!r$Jb*VJ9PHvBx^D5q#xQ%(T;GcxlPye37EGRV*J;+hUHRj z1>~WBVLa+hlkZ0$vGScC(DTN;jp=@eb{$Eas}%FQ*k$OyhgrK^@wlz6m2w_CQhp=5 zx2slY_!{tM`UU6x(1qYDJRc(6^8A&4Qw!Y=?a_VM*Z&9Q?+UaUL;r4bfs>yVWBkqr z-R+w0(`UmC+OAA%rP5j496VEEYFclv61Xam-@WG@w}D<4W85;h=Ns+!iZmg{`L=P7 zX@1%9)@L z^P)4*|1E*{BkH{r3cdLG$oIQw-y4E2l(?I;p5oBoBc|TIvgP+0-ge%D`?8hx8eLCE zhPP@w@8iboZHi}|hiRN|#vsSV?ORRKzqt9Mrc2mfYXq->Jz6rn zx!&c0ghuDo$p0q3EBDdfS|-vfPW0&};5$b9${rHJd&r}3-}zLOvoP@KH-PW(-U#_r z4s_3bLk-4@erx#NE!#o4gL?a4&`+LkalNAck$ME4@1BhHt`7a%Htq!-&-1`<7NVUC z3YIIsd%CH5rSyR7)=cop^U(i2_|CMOcm(6~CzMD1G3Pz)7-+BX1jdQ&CZC(R(Mte5 z(B4}^e_vyIcuP{+^JC$1}IZ{98U&_9%;hgWZ=N;wV(eR{wS7D}M;2_C&d$0Et ze;?ytVgI9edH9o#81VKypX-CNQq&PxLs)^%1O--2c$tk^6Jf4cA$I zm*=q$`Xcb<#Zm6ns5iE%>R^d!LOkuU55#xpdF#iZ+ZOw!w)=amCo$a9PlS`3q#WKG zPP(r(UA6V^pC)mywGQ`OdV&t=Pca@2h)I5~103&^omL~^l&^Q8{TCqrmx07a?MFX( z|A}@xJg1>t%X*u0g@E zx3l)SXqB{|{%9!2zlVA8U-auqtmotlJdff&gmzBX1yY(Z^N@Z%=HEw8y>_OA^S0=I*1vZj~foNvjX zx8ez`%c-!B;`#6jl^0{y>qU}b8S?#ns+3o2`zp?LJz*~!B;mbXxrTSOyOfTKO@-n` z4I?yPndz@M?TNbBmpV#5(r*@au$e$YMNi*uUx6FD4bpsHV82jhD;1BM{S?ygPs049 zl$3KD=1RUyi`Vm0PLI21Mo4(eWj`o?%VV7Bx4z5_)$%Ib0qZ4Qk@I*t_*KjusPTC_ zOku9o!({l!0g^ri`8{Fhsa!=p0O|I4&;!p2=U|_3bXIal{#g+J4Cvy^+@&f9oC7}5 z2k|c;-a-!GJ^1=Ct?lA_Je(dOT>9m*l!p#9|U5zhVZX5_mT zf)eIO^KVF#4%e6)@a?NrV; z;Th7iyHGCW6Z${n`P=FE&eT6}A5D9x{Sp5o`pI)vp69=f_#qd0zq3KNE>7xw9p9}( zAXsD%4u5pyr(XveY&JIiX_Wj|g>j?Yv>yGP(~#GGwY_f?zIT?S&xZTz`onjQ;%0`Y zGuU(H%<+n+8h)&h^wgX3{EL3X$*MK9=Cy*=nsRaA!&d_ie$u~dQFNuZPdvTb9L+!a5`T{>*W&Ma9-AKi%N#Z#i?Jgikbc&J`HF z-!nj9t@H7j2B+!R&zS48PU8QFa>-w)r{{cM3_9onznc|!?~41}cA$^E-J<2^T0KmJ zmnq&h9)Z-h_xtev(+A-Hl*eYa`(dS|BR|-K_}9TFKFCUJWcQ49?b<+5vk~+0Fr=s4 z@(#imVO+&7y>{TgAnYDjVoOS}_YrF@(3gyxMD&@xXl6)Dn zUGr6AUhsZc%09G8;*49u1#u z?o*fwG&-U`fB!bx|NC(0Ga~();z?Vn`ky@0<6YdJFZqkcpA7yLa}O$>wGa7noQHAy z2kl=`=?9|H^ut>->SpR}cP@#=PM^awqc9pFaItv%h^FV@o!EJV(->5B}5v{%KMz-kyi{+trAlMm`3=Ksoc= znUcS{^{u4>cXzo-*WuH$t)bvwyEmEyHn#WY2^;a9et>@COyFEMpT)SZMEl-^T+Q=R zo?mCOQflOv0d!H)u2S`U+<(z8D*29`?B7u&-|m3#zhvwux_(lQ;dwaiv$$WSoUj?~ z8;^EzKTP}Zc~8#^q+J6+S68SM60IMY2iKy#JlAgo{u`7#8vS}7=_}iLegB5=<`(bE|M^KJL@ zz1|_=e0b8f)A&pvspNi|-^X#jzaD6?*@^y=?tVf)DDP7qYS?$g#gc=1FRnkIH9w*4 zqo;-@`)T_*E^Y5Nz#rhC@P|4{Ux@yu1Hr^E%A9h6 z^qZQrckM5DI=r-6U@kC9H$3O;26~%{_E0|HzHC(>xgtAMeCIO)Ma}D|_m)dz+Rjg~ ze#YHM#j`f9aEkLVZoU7KjGL(?h?;eAkK4yS43SF#a*q=-V6meR49;>}~sH(r32edtKklpijxR zZqRwSapMV^pX*fKov3)MVcI|`iT-f8U!7t<7$V_Yw)k@l+H+IS^Jnz)Ho)g5N$S1+ z7x;bXcQ4j*n${OLuW0)cF11q97lfy4_z?7Sv^_)d4D=pZJJ+`}oTqSfAh{yGWBs~T z6(}0X1HWeskJPp2C5nia_ z#cp8_X>VB=Do+2Xzdolt6@HOw;Kwd!{XO-=ekZx*ymPtcAL5P~CU`7dq4-|^9ybn< z@RKmlZpFOZ*lvi<=g+~fcrSqS^Uvt_cY)+KW*zd!(El%i55YKY&-rwBBfJ9n=^rU; zKR#JflwZ15XLx<+w4Jlf_p2m4?pjrztPVG7c+$QN_^wiDq1&W*KRY)s=`-dM#j~wT z773mUw;n67ru9!N1m1^sbi_QW!~0ET@Q>QteSMCktF)JEIc3hnt_=_9IFdiVh<;oI zNO`Ma@&!76uV6fB?==?V(-cVQ(Y+3g&x}WN>ji%r<iIS z@()Hj+H;@mw|Q?$dFJ+xr#PI}fYv1Bxfi zUlej($+vdZ^+$`Q{hwMKeC&|xfS@%7?86|QG(cwAYY~Z zQjz($)>Gl0)9+j0Zcj-GZrxj^}=m^L`J;?k=?$KD_H>_R^h<}2-A%$7Au zO*N2L)3B#n+r#_Ac?j}q&iMO5_4boXPe$?9nEw9>nm<&589>=>jS-fA;`%*V$oA2>wR9)=xnf_h3HObm%)k+RgXFZt2-o%exixAhKKCSK{Na3vG1Ul<&kE zZdS@T2L0l_Bi@T49sU_~cjGvBqLf2>q77IFwg(a#`4Iu#+=up6fIca|oPzM(pd0$X z^S5^*|A8oPKIoa}o1GvJKa70kE4*Lf@Z6H~jQXu_ zvEPfC0Xl98=l#}aoX2ww12vrI>3!YZN+0i|+$TT>30JAl1YgABFc?>C9=q#m6cxPI(G?ZN z`*vL~)&r0Ad#n0+!uR?6^2b!FueZCpy1Ki%x>|AC^(C;*uX6)6yvlmNwWX+U9`s|S zSl`rzM;sv(s>e9amBgcZco=cW(6OljSz4`TN@E z4wH17u@2}I{;#{><>n(DcZFv09Kn0TPttXPV9_7=;BSFqhJF|~hOsjxWNdz=j*OwE zc9GyS7YmeZa+&)hy$ zaunbl;+UD+L-4}T>*peSkd=a$<334c^Ql^1qZy_7GOpOoV=)%5`A| z>#K9^4Z6;x9BB`Fl!D$DUU7bvl*j#VwY#>T;C10yT7JUpqx@ePo-tp-W6tm68tvIW z-gy`g$0<&|a4NS}scIJpz-}- zhg_CDVX(xMI3HeMr)zw%-J#0#1jrK~!dzi2r6{md$`9AHg((nZA#?s++iuVmS{7Jr7XJ(!+u*CRx(vxQKGQrF6 zUU0^Jak=0zJ4Y#-!TVq}ZrKV6KLP8N-jHi|1QKe@9>`(pdup-Io8)fN@5iA3PncUh zZv1{B8FtfkZQP}l4vpqEjZe9zN!)0wg zogp!_li+&l1$@5x=L2Z4_?nJuHXkUEsYa^tb{A1)d(no<_Y+n(=w*?w) z_&&=PbB?ZeUPU<*b+r-Mwc&g8d-XQ@iF%{QFdy{}|9Oa%SPp-Q{2u8;f6P2r;yU7f z)Wd;J699P+mv)rA&p90Rr`0z z9Cd-<EJ8A_clI|T*lDeVX*dkw2wjmu|E8M+I*nxPq|vv z7c@GL#{w-T(w}>ML)Qf#Yr6612h!7Fer?s|6OH$)(P&?0K2y9d{P!FwDeXR5A}|3v z`m{THf#5YR94Ih9>-|<=hVive)7vv8ocBehLr(BM=~rm~>D#t0lysk>eOzyU40`@_ zjKoIkWQ>OgKo9ztq}B-O#=CO?#y=<{)YGq2tkjrsLu-2zdhiu=$|F1e>3_$ z74A{`&`xj&-zC5}ABcRs_ecHiKzwI1;9pQK<>gI~>j~74?+*5}kx60n*U@=cYFjDZ zqSwK9Gp@CUSJ^y;jn2dBY`)^;i%K_I*SQt0jfO{h0fm)8JB1nh_$Bha1ndtuuCv#+ z*ZAyMiH+`YqMhVxj@R!4jW+vZoThiLL5Kf>uAd`5-Mpxul)&@7;&8*+ zf@i`{LV;X=mRRrixY2ae@~X_O%CD2{Y+bikW;-vC^alE-1JU2}Mrf#+6L?7a9|ykK zVjj@^lTfePY)>tp`p}-p*BN@VLg2-`?*qI5_c80B*W|b(-Dv;7`?O=iH&*P7WoahKSaVBt+Ue_e$(jJogPuf*{g7J4lAgQAFfdU0) z7xL4O%H1P<_)o`rcs2OsE2QVUV5Ijq$p13RKLvb#8sK8&AJf*`U(xR4Y0S%<56(w> zzejiq`F3`DSJxf=aGqXk&K;D@b;Hc2|l z<7@D}_tBrPx4uQ?9p(NFD5opN-=_IDD7`yi|8vcCexJT)tG9zc1m)$UU8g{9bPB!R zp)c%@dxq~UmU_@$@ZZSC^Fs11?`P8QDDRhy16`=UC=b0IM!)P|S4g?^V@bQ4<(S7V zL3?PgcLMazI|9jN%mJVS@0)Nx`Yrg5^5gSBlbcp;SA_B(_3;}6!6Lbg@6q1`{VmMG z_eV9&)_U@suNmK^Jr~dY#(;j6!8GmvxLtp_lppzZR=hU6Kw+gFqBTr}{guzSAEiIm z=fm4)NxqxFXEQmR#F`Lui4iSlWuO?~kQl+XTZGz*n3nXpOMU$Jnr zw!bRp-{(j>A0O#?7D)M%kbg;sn^YdqKN#!34)x@EeK~OYA=-%keh}l)w?10;hRd}c z9WbAlHLp;-#2%^p&dzSxIr9B-v&x6#J;D;_@q+AX4bKZCm8>s4OowYUJYo9im$?s5 zgljcC?!H+iDQkJZD7a#Y;Dxvs(iwV_fsiv_wn|Nx_;%of!@=(>F^|wMWXnDU>1aQ4 zFv{`X>!NorL64JB&g+mDlgxfG`A)L=RBeAMyQoRVYV!le?zKVA?nBbp6BP4E|l`QpP-#(1;*iv$lnq5e;eO9waroudF$v| zNy$(9QQr659Y|>Oeh2vA8{~hW^$Z>FLs9NV)QA3aih+NCeaN7;_wAXv1%4HTF`ple?9 zGs-_Du4$3PT!D6QU%>O?`N;PL_@oH!=DT&=Ph16gaum{k1^(N#yjklO0cfDHLn|(^-Cx@FddqIOL#TxqhjVY&0k@?|GY})@tA#G!yBE4(fPmPY3E_m?o>SGCh9p=I($=c(mQV7 zQatjnsW6F`Q5ZiwkXnd-^25FYqx(#uz@&Re)7RQ}6()?gCyC?yhVxr5j%)DeIPAw# z%^&*jHkWpj@&;plmkB@e;kfq@2OVQ>tI}&imrpdF{w7x2PZj5TH!=H};ye#Z!+tS( zXY4ZhPAvRVB}g6o8%Fo#21s~?8$DRyu0VbxzXOnC_W;(q|7f`}`<23!^RN-^rJYhI zS3gkl$1ne{rsKY(7V?1WlP^Gz#u1X*m~D_d|HJsHgS_|_a=FF+GUx3KPjCIBmjCjG zb5&1zHPR>SPZ}O`9;WOb#re)H?S%%O>c5-L{-W{q&cn3*)u+e#TiX8Sapz%8cBk^u z7Z~rYv7Vg|d;{e9{g^NI08T~wW+2@T@Ws00d_De-c8|n9{Qdb|&yyJ1BaKG<1DLnI z34A`Td$_OvC+K_%zRP)m_i3*SPgJ?f_2b*EHY}BrC?DTOzx=ew-?#k=->JiQPeZx$ z@tvJ!qQ+1!d-w=nufLKGNOu$3KNIDAihb=AJ6m_UN%(Pi2y(g|^1X+2yHMUbe4po@ zRbdaMQ-ck3z8+#v>mfBb7WMuL`Ie6I_4*O@`#bpR6deu5@I89!O}|09i%<^d`SIw# z573@Dqyy4XADRUndH*jT>8NL$f%s);&qCl6Q4Yrm-{t0gK-Q1zc&;a?x9573>v`U< zIS1ooD%R_T=0yEcfxCQ~iT+x~S9YY*G3^E_U1Ro8g(>G@ra7i~qusGs^Vva)NA~{; zGq78v{-`ueXn3K1E!yXWHLE2b-*+m&{oIqU7_8}j!nyb;(0R&&i8?>6YnpYwFC~E$S@12S7aX&%7 zAP3<4?0@zr_pc`+{&$oYU_ATL6Rm^6rySS3&-o_m{~_}I1@JkPw*@%QRccXB+CjXE zbU)yG^!xL@yStx>{wBkYs?v^FA$Vo>SnY>i2&dg)ksGPu(ft60C9pS&1(GY0_ioR8 zfh9KU(>V`|ZG%rANUYqi@_sVzT^N{Z5u2N9nCC_=Q)3A&g1(ATD)O+k@4@k zmF9-mNzAmOIht=8`k(itsYjfLasC&`!%5+;GbA6^rL}=zksi|ZcLJ%e;yK{QpcC(n zbKTE-l-wWCAL;er2g>!YA>SfD2wKmCxl`qD+MPF3zE>G8)bJGi#Z>0TE1hX)UWR^& zfsbhKMnB0M2fPNYUg^VwjS4v~ zQ#jwPFs+LveLCAo<=r^Q(~01ZUg0&Guf&MUedo5* z&1in~FcUtm^+}oQmrF>M-J*1h^cou8=sc{(JDMr$^`7j%r2A%>2{gUqf9p!e8F`p&wn36zwZY*OFb>mb$>v+P8#9gO`;y3?@`A?+;;?>JBB;- z`{j1r;nK2F`Xgt-rtD*)8oR@d-Cm`REDMpYI+G3g6W98SGbU+(n_Jj|JZE zDE-xBuz%ou9OirbHn#K3yfqg~zRi%A7VsSK5#J-sWW8UCO6&c2y@>d0;je28|6?KhrN^ISG=Kht)moQI9}bH!u9iOO%3kMw)o z8+85~)(vl?-*_(H5B22v0_~tF-xnf1*B4x$)81z=tXM@jQfZn8&dw-zB(C^jh;5VM5Tmd>3qCKw$zMKca59RLqgoGsB&q|lH{Y7EI zd6==kDqd~bl))r0LIQ5#sLwU3p%^{VC7Qk3#&V=r`VH*@F5F zK{>Q5C%;f`O)__>9AJE3_$ykz^Jk+Sr1efZ4^uhsPi%PZL|-2_w4Z#p zgR9VVg*KtEjq|Y74h9ZrpX)B^x35WR_M!(S>k^95%14$LF6TwF}gFonRhUXLX#}Gq#^iRNjoI>_Vq(5|0B zx2nLWOW2(9V>$2wz?50gPEzy(PJ8S4hM{LkcyaSng#t_M^C}0PLixvHd{BSM{VLb5 zJon>xp#Ft+jGT9V52Wxlje^WU}`?z<;NNLgjB6qyfCmASehP#7xoN!$dcel-ym}|O^?;w!pPUN>sP#?DI z4Db!_RdGLeE855LJ`(k0{rT>8$M8JmheG(#F3ojllJ9Nf9qo#bl-TG!AjrF4 zn*BUzF`hDCW z2R~)G*_tj9UZ^mI{a`#hNAVcSt;BgjJ;pQFq3q|)8UKB*LpvYq@v}fz>QR5jzMb{0 z;d&0=q2BOF(76%s>9zPRM7kQpe-D1)KD#~mJkKuF`sX+0r8`gFKlagN(bwpqtr!miNpM(gEx+^$qS z0i5#Y6Yv-3&5J;}kqA57TWG(P1#OxoKOuQi($ zR)EiA&f_V2hc6HJ0T$TZ+7FA}of^Kt{#oHZ;J=3EyA&USaYO##xp9rXN8=OD!<2hE zkoujy!r#;1w8q~{ip7`I!NNPS}N5e-k-zbZ`F{rXBc=ZD=`*L)0lT9g@ozQpeu zda}x2+GSLO&x^r70p%d%#>hZ&MfOD~hj!JcFWo*-!g>Bi`&sTEs8_oxEvfeUmEd{6 z_24_66CH!{&j;Lw_=ksj`%a#}(H@@q0@`cQUX|xqepef8qwf#WTC-4qt+J30`Ae=uW?Oj^q((DwS|7WA0E%=S+0n;^=F&6FEf7v{x$26q- z5c#@5zD@y7`CEFl*YGW0__o%U@|AL!{`tti)4>n)Q+*ZqqTxtyZ!`k(`ex4K?i+1a zs`*<_ALso8^a#K6?RVRnq(3^@-H7)vX8)^r+7%6u_(sU%Bhao#!xfiFIM?0e_mj~+ z>MgjREwFpEymIGZp8Z+zg62t`r5wKJ(P8~B8r~7}WkVpb(f94{{sPmm!@uEJ!6N9B`qO_a*r90Q6(zm$+EMTl}BFu7>+^>Th_Cu@e2z z5S01$x}y1#pZbps?jK!*dh9=}z0T9r6LmyAsb6SB|FggD1Wvmk+C#h^$XE8hkGUpL zw1v;PexP2LdLH&a<@+;`$J8GNkY|+Z+)u_ap12;SodWGP+M#{Cm$MjhX4-Shv}WbV zPyO8IpgZ;0wB!FC?O=Q6qra{}y}F^FYM>uVg#&f|P20Ow{}Z#7+7FG+!%VhH@hX&? zaKGvJTybr+hJV=T=@w_aSvFllB01e&U>)`elY=3eK4bkkLJa;15@xXSQ5F22*N2Ds zbl~$kd${5$cg%PxkK^c8j3@3FenDfO_=p}*MAgV3LsqMyDCr1ZV-bJL#m4fIb9 z`1DTTyf;03q|Zk=lswVD|6c9Zd*2=B^V8m@#2&Blh0eqN zAxA6XM-rj9!{mGhceBkqQeKQ*4^=H5hsP_-YE>=!B2mLYw;bSpA?nL@R#M7RA z3HZ7v#xeD+9Pgyd5XjSqP#>PN{<(RWO4Q}}-t0ff>-)g(SE3$!`F_+aX<6E3l>ds% z1Z^+%B%QOz>%J;&&(ZMc99`$fbzQxE%mVA}(06Y1>!V7Jr<~X4U5a|r{`_q4Lp|n) zRjBW6NcU5I-U_MDuBW{n*p-Oqy9HI4=TqV1eI#8xoUQfd`x|^8llmPx0_k;c^ zJ44$Ov(GALM(^V(o;I@-R=I&or2LHYc%7Y%_IsGH7b>1{9#Vfze}vJ##mDD7q}+(x zg1J)ejHb&p{{2?lbp788?c{v=KkxzXe{g*A3*k4-_?LW4v-dO1q+)P;Ql5r1ebL#R?nE5`{^-OZPo3?Q;GeY0@my z_`UP9$M>dtqe;G;43}%VnB53D>2w}%#5+qo2b&7I(0_Htdi_21akR7IdWZAPcc4cC z{%Ck!LA^QkZ=9ytV4`<9D-gJS%`cS#V{VhuF`Zqf<&?M^6fX>KRLFO_ z+StL}B>iEKs~hqU()r+_KtdyV47otMoQiZ02O8aSAN<~vJ)Xh(w6nY2e-G)(vHsk- zZiCvl90a-Mux{eIXJ@y4R!K>u+fL+P0{M^+_&oZ7a+mk3SFL+W=ONm;@!j!icc0cL zX16G;#5yt=KH$UQ*RnEvZ<%~Qy0@(ICT;(s@fA4_$*)|0#qn-NK>#}q*o$9?`u!L3 z><7r*M=*Z*PVc;?OSOM4VmiPy=)-jz?<>>(jQ4q7#Qe!~Q2Kiu558)Tal8ofanT9V zx@aCpJ;tG)d>5SSdX5*4w^`_4zH>&oT5g|F`V{9pjP$mO=Y`(?T#0>SlzgwyWweBU zfPW4Fd;tB)@j*T8$fLLG{IXKH(HQ#c?+rR~KRp`sB7f}0IPIrWC_1mR@WbMATCWuR z=q2nwx=6h$!gsq0OqdVP5lFv>b3nI&BPG-r>aov4eRvNdZrAK5@fr7;mY=Y%E1YcJ zP?*8`KH)shbIL~SuPMhUw^!nOccNW4qJLXqokDsIL;sPU-vQ^l+aKyEh|Y)5jugh( zU(o;c;cBfn`I+ZzG1%ufhL7urO@uFLKU8D<*7W>X+jSY}kTEBR(*DYqwzzWwM8ek2DvzJ&E8?WDLLFG2Yk+O>txsl2Oj4Jw}#CjU=TUd(;HT3{xS->9Eq zXWfMT$8^w>@_RM#cK|QbQ_e`Q2R@`9mzOa9dCtgt%{zzrd(E`>c^~Ec3+1%*HWrgDe z(vB%+i`;rlH-lF&=7w z(|?cmG9JALhVOE|s0Te~VE)PE3Y9JcFn`ca=@Il#qbu1*>i;L?<9&7Nhj^~>F!s?I zd#I<6^Dt#&ijzMZ!Ix<_NW&xl{|aNy!<4P~|4pB82_Fu7tVWzSxXY(#KOKN^bQb7w zNC)q)cy}PRkKPjopSE4NVZ7kf>#hj|GcD&iyTMlnqa5meISxLDoVg8hu4v8Wx)Mma zI;~%$yIRNnlc4*fBYpX_yQSS!HR?nEK$k%7E_dEuARhR9<$%S|FI3rK`klD-@50kQ zoPH$}NS|^W3Z;Z9JKWPP=ONccJfDe&$7p<2bNPHpUm0GjGZXzyTN}i1M*#in7jQn$zR~!RnF%5W=$ZWk^Dlt6Yx703pChN0>*7_k%Tn3vtt6e zFFFG9rVsjw^6MI`%Pz+J%6rY5x_EzsrQyli-U9os%F}|-zt2*hbG1@_!k((}^h3gR z)B-m~!)IWe#G1z{&VJ%}&ls;aA|AJ=Yr0zJValGNcnp3r6ZTBS8=Z%o?>QgcIe*B$ zQm;qDDLTS>9T``-npyCI!i7x}n#)zm@hGzEUD>L3TkD-9YBvGP;MFIW$$pVe!tB2)Ooic*Ex`K zCPQxAu2}T`A;$eXpcmyn&mm|R!~FvF2fZ;b(0~3y)a!A~3sX`5lH5~g$#*NwVy#cT zd2fQ?Cym-=(2qR?I}c)#GgP+)!_zj8k(qa*&i z^+R<tWhu2-CTHQGZAIQ9KiQu5q=uh95$=^-e2EOkOxV7rN*b-?Yh56 zo2wO%8~^@yU5NKo!b6rzc?~&l&&B=wCD?B#+%=jnX0Aj2V`fYGB4f{{VbR z{}Qxkco5@;`Z2zz%KLZpr!xTKmE)Lp6bFFLsqFn)U-C8gXS6eI35R}$_6D8ZgPO0v zKBTah^RUo9tawo%wU5q|Ko`DKuzdZ1GbFsx{Z-S&?cWq;oQH|7wBx9Pr(blrmZb)d&~v(GrmR|>op`u&dZ9F^CNNI$WS z*W=y?xxx2JW-Q#LBkn(_*Z0l)uafc(Uwl$1a3JIx{qfMR*#wN6eE3POGS6#!>&)YQ zBwxyU|NRN)!!z~;jc>VUhW#nuv+ay}UJd@`dGS)n1)i&ILwx^mLzR4|*qnKxz(VNt z%fpig3(j|}Qtn^+-DDu4V$bC5y|%d1l@fo}+0qz}lM^uhhq{R>Cu#5aDcXA)-wEq{z%OCrGbP-_M(9T!|_7?>6hE3>Gv~tB_u_E=lv0{10Vbc`KnLw`5WE4 znm!S}r!bCtZZZ45;wk50%eonQiez|8Zz&;xb#M&()F&~{yW=~BHha0G%d?+oc`f=c zcYQkvPr6Svyvly2FkwDdn1S5{=UuL2D&398Nxn+^Z%vnU9@g3~k>Ah9lye=;t8M*v zDwQ4!!JqWwv>f%_*ZjOx(v?~NPC;kPo76M#o-FOQZwMsyUVkL?fB7-!+~V&9=f4|y*8Z}9cY2rof<7Uq4a z>!lH>7w!D7T##KYB@9FOLgZh8c_AP54!54FHQECFOO#K09QrBEgl*23@+x7^7Yo}e zPJcRS+fMPx@CThRS1ghAvFzuw1*U8VjjzJJZ0^g?Y!@FV@jQp4++XJT%Q&dcuEDQ+8*5>ad)Efe`FW0=R;f<@SXYY*}j^- z#Pm~`mpfs)lviNiP)@vKv|y24j5$E#tKc6v-<_hIm$ARcB)-yk3;qVzPx-l}f5S~0 z-$*~&@PnOlm+QK}Hu#&Dm$qz{l+(7&SIP%H7q!um!}pa=b_4bMb0IHBto8T6D#DnC z_jE^kKC^=qPdN`W*|_3-=bQcC9rEE2%zqz)|EB|gKakq&_2*iMaZEWd=b1j*&Yl=A z)DP3|)dv`t$6`G5-r*tOPp&U7dwQhqUmw`|u$AvUi}{TD9O{Lif_&J8?{U3Pd#v4o z_;izTzbpWF|p9k!$WXhn+b<&zO=bh z$8jan^SpI3?#)(b)0!^kJWS)>2=yF1m*l(}v;IAyxErDQD&QAq)w+7cpGQB@o{{zq z8G6eHGW2Utqkp zS$DG5|1<1M%9ft4cz5(8?O3>OW4&)heeXs;7cB7ma`GkZi}pc3SD}6jK&QvMouS|9 z3;ZaQM|;dwPL_s`6-V7}4$R%9`?}}dI4x%=)-}}A)Bcn5K`HKWP_In; z|3^cod_+4dp0{6*c5&bPE%ZIBL06s!X3#$uqMc8n9XpZkF3e|bpE=@esrMd)Z$LWU zv*Nw?XYd{RH9H6Csc-Lzepxf$mv9M!g^zb0@;!&7 zxl+Sp_C8J5fPG4ZxpltetFzwD@>|ru*j=URi^9#?u71HVov-_2f4p#$h3tX968fE{}(5G>kv1`1lv4>HcDyEE?&Er)hD^asjw zW!leC&rH7#w6o)R!4!<|-sl(V#kp?V0KTtm^!0cJ{6)LLA9Oa1)*H~rBjj>Vodr3=^Y^mhU+auO`MMMN zKZG2l|C{COz5UX9jJImMBf|ApCVcMyL(e+la+U9(`d9logx1A;M-=M?hK(OfjA+&@2cNErd-LBrG z^ z_ugX3Ssm`u_#yBM!T1!;C+c7~%6TY`d$lq5j^?YkUQb)@-c`KVzNc_M+q+oGe;jl? z-h8CtyW0*|d6Gr{@qCWw9wp%4n)N>Y=~xexxC$M)_q%V3q}-JIM9a(APZcIZZx2fQ zn3(%a!{hdIg;mbOmh&Rq%j;zq=y)o2{ym^P`=zEY3^%J};CoB^Vt%N{IJ+;9S{Sno zF1Y^t0{PyB{F#h#M19$F=zp%8<{_Trg?3Q1U;QWehvSrf>8OvToi*3> z)XQg|>Y;q{7V7a5%Aua%PK-a=XVdP7_x-sq;C_Po|2I+IX5{C1UlS;q%xJ{ZuN==c zc<(P27M>s}YupV31#*3`1$1ZvzuY%kV)w>Bgm~Iv@ZFz#F)#2PhsFh8EtGr@W4+Av zGw;LQi2kkU+IgC!dkHxGtlfZq-i&elLm;W5_cbuTe2;LRPk#cwkNoOuc}32{65Cbr zj?TkkJG85mQ`=mm;ll&L_WA>@3A<}}lk@L~Cv36eDd%CW^(*9r>!IN-_O!0~aw+F@ z@FUNEC~vnMy-C*zJZGeR({<=4-s7OX{pzi!uaNS1e~jpvF_~48{ zQS%DoY5&j+dQHQ)Xb(Q*d_g<0uaKX9G}|5L%i}(*3H|>9zQ=X?`v|8$YtCD=2k(#i z48Z!W+zn9r<-6~?$rn;VO!17FKU46^(4X5<{$`wyPlSUs9pAsm*tp_x5t4EX{dP2_7pVnJ=$Ly@d@8~?UJ<#MW`n$QHH_!h!Kt30!HY-}6 zc0EGd`=E~AX#Cnh@uc%G<^EhDCGs6s%CVK0pW>lU7c;B&k#wZv%r&c53Qm4)z&eHg zSd!q=d%!=`H}rG^+Dp9)^#BKhfA}sM*GF%G|F1?lCnG=C*HukZR?GL^23_eN zYdGZQMS;Xd_C+Y?Jml}yHh-~%Q$FYNy#9@R%6EV0_l)xk>pe0nxkcYIPTQRb?>t-Z zq&-#nGiF{W5xfEEQqIo{CFUMv_kMt zFdmkH|KA1v0O-@YUQ!ve0PP%&c25O8*bkhqI1kVsd>rIG*LBombH3v|QVzb4S??D< zi*^@S>cM?3`TiHAKN_$a>EA{A@k*`8&c$A&bQp&@_Y34VI_JuIm^Qcck^jj5vD|#k zmoW2n(hLWR~1NU;%D(}l@rPE%^8BnOb6Y^_O>&1945Lh z)qK}Ou1~h_A0p`z;TvZOq&)8FTB{^043}$q+NYP<6^fVfeMZppv_Nu4^BTrm$6+4l zyUq#YG+&jwMCru+Fa1Iv4L+kDp)<;*f3S6kryr%8A?Ll7kuetp{(JM*9_Zx1Q^1#N zu^!6gj?wYl3-wx!^xR(z27l0x&ktDN+*)*v*1J38ce?pn#V6bTm&_HIM^Izljfzu_Z37?f!Mw2v-{}NDgXPZO2S}LjbYu<>r1a=J z*?qNN>tTnQ2{bs`XL);u>fCL?^V+u4%a31h#zbp z(DIUyW3&U{IUe;C-v?4VWB9)H73&_-e3znK7aZ^7i<|$d;T;2ycQ&=t<-ZbF<^&d* z)3v50#@oU4HT@Szc)#qI3kBX0$Zxc61poC#|B;V+1z9eZ4Vgp_wA-DV;piHQG|B=y8Z>N$3++?7lY1!e8((hU($4O=0Oy~y z?KMQ`R20Z>WDgQ3h~9(u_eBb_9_KwY`qSz8bV}Dh=jT14ko(hJ$j|fTwu_(Bdh%TO z1bmDioOW_t|4L{<}1gSYvn&^Dz3A zeoA@1a1hodlrI~aA6YK>NJp;6&I%+n`U8EbpKk&m^M3gj@B!Cp^{r}jT=P7h^W8_N zPY3YjG|+D{#zQ0Y-rN_(t+_xxpR#_xNUIIJT-4}3cM;aQLN(k`Ulb33;Jc|{*Zc#t;qKq>R*cX(vS8zpidTbdmr<6N3*Zi zkM9PSI*<3t_VMASi}F)+UrYJCAoTtw_QiMd0L$(D8ed}e*L=keektI8mhy_{W8`<< zpWu4uXzP7iWKU|IAC!R-kz&N0sUD@7^lYDH?4S`_B+}+*# zziD*U`u*x`N@0th6X$$2xf%_R*;<9EoQKtRh~i1-VWq9}`R(WDO8H59nBwWc+dXl9 zD{+Tw_#fv(+9zEKdUD^m9(=qpkWwSNPV~q5V>}+&^=f&v$DM?C7Ax%08Xk8ZX551D zlH(KDzxNJ|%GmQer5d6G(TGJ66-Z z2f5i{&B`++UD_U};h7xv6TSVry+g2`OWCZ(*J7P~7U+;fIn+a~Mf;a6=zEEj%k>M- z6=_FE`_bmnzMn4!AJQ);&&_DBx()J<`wY%!pMzhM;TWx74Cha@4^HR4S|Rml3gmb1 zx~-QzP1Bd>JS?%ND_$5**YVZSZa7%dzX~~VJoHO5J)OxCSZIf-Pu}B+>TRN zlk>1mI9~Cdu-i+xR~JjZgqxt@DSM8>TIXTLPElSd#sdh8IA-(SHudWhLl9y?IfCe&LMEGWudp_jc7rPpj-|FlFZBLc+Fk=@gPWe>a|Chb7q+ikF*}3S0Us(B?<`C_kU^ocU#hACK`&ziNZR zN~J(!c)gB~D%>Z?n6Fn#NwM6|x?fM@{yOg`(oTo_KfdqDcNnOT`ZxIO3Ght?AnCFd z>*yNziI2e_SHfPc?Mmf5tU~?c@LLoQhp7aqGP^>lXFco+=#O`0_e~8F&T&+T`{xOB zqn2A~{x_RNhyE98ntzxs;kDT3QqMaikWkUjcz=sA(5VXV=u#iY_c;RaEA86i z_ICYlbpJsi-*@LZV9@mr4R4G7pMddEiTQO5AoXlRkuC$f!C3fumDH~S{9A1A(ee&* z9(J(zD&EG`X+Kl%dM~~+9rBoR|J5h1QVFvukWwQ#3%;R0?~4KrHe5f_{`WS7p99Eq zj&FdE0BnQy9E16`0^xi=H+s)S_lG+XPJ8i^@KJ3?k$FP4=fADr;rzJ^?fXgQ7_DX=Xur~l)nSxc_MJGBRJ3SUIfp} zxL%~+Lh6}r1%Hiu`pp4S6WY^k0-wAJ`p_@QW8l|1z@CsZcVXV%?e^7v%NXw$t{U}= zyBYJP{7T#x-D$I`7v9;tNBd(O()9&h=$G*xgwy{b{RLB=QI9}7^?lHu!GP4mavr3A zp6@|F+Np57aa~WlGWH|iwHXb19C?(qCfXk!Id7&wo}<&gkn;}jqu&m>#PfLSYYgbf zbv*3^xc|5zkkXA=j_*E?^c?40C+-e3nQ42phg`3`hJ2I<9KkJD7S9!2~vE<}FEaCFc75oO&gZ>dR?sqLG5t``|PdzQ~!Eqjl z?6NgJlk+eU<|)qmNA&0QNBgo2^$f66zXJWk{d_a(zcG-nN9!%Lx7c>j@(Y}Yd5~8> zApd_)^67cczt;RyzC)cE1qZ0Qw}M}F1bizrXTO)tMGm-^%J+`_0seM5x>QG z{C3O>rLIKd%bnLeWlX8!_4c3{Qew69c+!?>c#ZQgY0DK)xlJ{aj{6qcjq^S~`+@By zAMV2U8(m*5r`q;Ym~kE^-1{o0ZUud208;Y6~XX#T}IBj)A@f^We0cn^IX%CB1I{j6@sc&kT0&*}1eH_4YV zasM6n*;2u)QEpSVLc@EQgu*;`sq$B&^LVu#tl=@|Vag^IZ{U3lTd8=)d66uP6eo<;T<-N(I&by`XHw1yu%T2e=Th~YP|!FjvY8heb!XPk%K;I}K5 z8?XIT9vrLjox{<(4=)8>`i3JlyeznFwv?M^YgA9w(H`f+oqunw)Q(cTllABK+q+~H z|FX-E<0T*cL~?zRKs%3a>(8mEkE6UFdYa@i=H@HB|Fi>fzB&Z!k8{lV(Mw^Od;z}uVA}hyrM#tm&}o6x#u(}m zJ7IpO-;-r+ynhwyd)uMEId9*G@4Sxi=YbE#x{3GXs4w~g{PqIcJ+CQtrhNa0Kz{f7 z#qBY_Xu05bqdwdRj%n-bvpSGiW3niR`)=BUalb`-p_f5VuGc;fG`r#bk^|Rz|KEkd zbnX9+=2+#gen?l){7_tS@O}6^(`ka>dT^@koCg`f)b+jC%gAx=NS#5&ixATJzE(`CiPqCV?j){lVY| zuGeUPaU9}jp*=O>5~WAJdqCxCz4dmt`ByE~@KfDux`LgA_nwo@o!ZHFcrO1pw13PQ z5-Rtk@0lpD+N{+4kzbNZ!DG(jX}e0p6VAg%yIS#RzU(jQT4TPgHfxaI-#5x+{k^ps zyH>+vwvF~b?J=nD;QhW{fs`h8;Qn2ZV%+n44)kl|HfTA8_DY2X_Pb(9pUM7nj=;w7 zDh*G-4*~U`ne5dFzeeF7*Il$@=DTtk_zS2EuGjQ6nAaNJ3o5C4+Z{UpCCm*PA9tR< zsoY!25e0$NCX$1gm-+^R$^BS!slYV$`%O9TXQXZM$LC1+dgu|;_EukC=V8YFBO&o; zy4!rXy&d26Fl9F@9=(HJBmO$CH(Kw zZuTjRqvrwVjh51)ae;MX4E$Q}9@28E?ZYU~!&>`@;xVif_^$l#3;&_vLm}^`nunGC zN1|Nnm3Kn!o{w=n;5h&N!!bU#+1pjVY<<@27kU0NKk(`3AMav}(~B0KrsIm z^}2pf8t-?w!G30d7dJyRFX<9;!;k!h%k2?+X##Nw04d%hufG@{)hTE6)`w8da zWSdhw?L3@pUsjy=9v`-^DE>Rv0rlB`DP9?_(v^N=xJlO`Nptq)Qm>eOZK=RX<~2=6 z`A`G9{K)^Q@@c8rsqtmuxym6OjkoVFaPxIuD0Du)pM6u)72sW}5nbO>ycv8IbKfZk zRJvUnp0IB#ta2V!XWvnr?}}32Mm<0Gp$2r~y~cr{H_zvH2GXkNJ!{Cz;@pQ?ZeF0l zk-YGBL522X4KK`kKOVQWepD&X`y+L&c59D*8hSa;d*@3~4(IcSdW_XCRoD>;`9j)# zq2I?KFL-uv*7Qfm_{9 z%Iyoflwn+ch<$U?bky`IGvWeCS8or~bzx1;hbO|%$4fZdxu#2JO;10$!=XQqd}~pLa1o@O!iy z{O{QIx=){n_d(AD9jHfIb@__(<$JVCJ{apk>gi&TyR^$XtL;AHB>h;lci58^D%Zwi zK5AJ1j^-$}-mazq_t?_mf!ZG0pCqie4~#jl$7r+%YkVf>A=}AzXV5;rFR&GId7q{y zx=MZCL%XJ%`5H3^^`oA;FdU@im)lRZUwYyF<6b7A;go0jfs_`lN6=p-+2NA}=f3F2 z_D5bQ_`g7>oyQ9n$^Sq>qzAuJ$0^6%5$GT4AsWDMoX2kh{sPv?!}+cuzTX$+_5)=7 zc(1Sr>hV41%X>kGb5ZUZUUkWiU%W_95eah@Gg$3p)g*;DX zefVBsV*OC1KlQ@gH`8xWU-Zi!)Qjie6VRV&(CbFXt8%1cdsD7nzfXG&>Pb>|q=wg- z;}phhsji#YFG;-b$@wpBvzjjMJWSvoL>cZQ6uQ4GGtpmXJGE9I_4&MKzXIu@$GSsFOc$T!t0enRpHCZUols? zM8ao+UiSrpMf;F?4@ZwYM)Of$KM3Dl68QM}fYj6TzS^PSi|wcQba}b6wH}4xc!fR8 zGlxhF-ybivhw1ol6Hd_hBJgdYJ;&o1XKP0!#!0?a-T$l<`a8-`noq5S$LyOifs?E` zS717j-@W!Al!JVKuoCO~9NNWwNFrRJ-^~QG=1TrpHmP)?Jfps(;aG`{>*KTi&tV3A$|W?9UlGterAmQpDT>Ex!Tp%g|1-FZjFw>b`Fo&z`m0{k>Zgk(U3c*R;-bqn-8Z0bDg3BYE~l;U=UV6e$k5Ka(v4L4{8b>O z8FM4rSz%Xec?suX$~uo5Z`aIo?zCH@;q`W{!fNMX!md-i3hymbe?mLE<>-eqAcxuh z+rT&EyWaz?mPtW=kiY(ial9V#nD0sPejfRc{+oCYZ!q@XneaNTU(&UjEni5xBef=( zV3US7y2lRCaC4*LF*8B+PD26-mGfJ_&K(lmr18Y5U#PN`2}yT1`te%y%Ri5oP-AEx z_s8`E?Mvu??cP9>8`?XiFz<~-IWh3XX7CZ;;pTm^?VvCB--m;4T)*%fnfpWPF@FQS zX`e9R$p1``nmF`Z9{4VW`w7)1P&ro@elSncbqfb6y%Ki5&I>hxgzlA374|_-SLb2M zKBRai=ONcKw0B6@M>IZ_eWOas;dkSq_jePWQ!JA3SlCtN>mb{|tKg01QO!3Ad_COm zm@45v2l5-)Z9xyf^~q}R6a7~6y_2PAZ@qcKmxpt)g!6dPK8gB0q2~)@z{liYo^$tG z(^J>!?RWThwRz8&ddIcMHwxdQKAG#XnA@)3X|&HOOuBni-d%@!bDhF-Xx`iU8S9iv z+N0RPN}q0!Lvz|@RPJAUyr&E8@ed0;emd&~zNkX|;_hXwN3DHse@U5V{-t;?_jfHX z&n>=O!ZT)vhI9Nhp+6GlH4Xni`a1ir&UhL3x{rtdkrsaycBh7?b6#(iwEo^yrCYBh z|Iz;M6!2}=b-Og*CHVg6Kx${qpK;D}ezz-i{Zbmfr|F8ZzA1veTrYR_;gY^Q^!u}Y z1Hq#CJx~z&<@{!l{8tu!r1^QDtRU>HDe|1t@e%n;)DfF>A8WedIJfDksUm&4^ZVgz zKxdw_e}n#d5dBR()yK#;3jISrcz=gnxM17VrBSuaAsGMEJM&(nMR^C0kyNt2_*(0g zb{-D5-zYxFd6=+%98SFUTMhpL^kw}!WN&UK7P#*< zyx9Jruq5YUdFaobXjhXABy}`jyE~PiPVT-()6cuw!xZ|D^Kx(Zu*#jZ`$f|w!e15A z&NpL!^Wg?^9Q+Uu^fN8~u6aJob%b z-?yn~eUr+s1oCf0JoP-A(68TN9CAK*7U4_srYc>?4_q&Ez9=u+r1E(b)>{W+9^BgA zYCBfryL>0(east20dn2cZH>Q2{2Am)S-7%VTH4W#C=*x}bkp)`aX#9^c|6}1X?Wau zn6}*&AMQMi#+9yTW3E`kQ&`_7!do<)>y_v|sd4fh&SzXV90>Y{p!a)NFEd|V=|7lOUw8HMSy>>ZMdKOwr`xYJoB~bz#^~ z!w-Ug!k%`U%I98qhr1r<&NbNsG+o?1d#IFuYSTfAe~xz0-jsfXZ$$XbSV#2VaK;G9 zH*?_t%||;f+DE+>NNjY!6613Bb?YYx-srk{ItPM@J-L5Zs*-x&-Q>W<)tkLpI?b8W~FAX%+|M3r7kNGi! z_y&}l2fW^SJAjoK-@H$?A$)7Tl*s)K`I76rYScf^9If@?{=dX|yd&QANf@u^X$<{6 z=8StvYj7~~9}2o8iVo6sPSPFY>0n1F9O68zvh|8*oQE-ctm1q}`U$ivhxz4Acb&RzU9LxAuOFwjh5#X93=Dmm#_pY|2ANGe!@I9`(c7gwUt$X8KDX$swljr@Evtu!? zIG@x0HyNI(-%Xn?s`umjJZXEDhG%jfavw^4$y%(-$HM+MF`E#y4!XU_xO$1a?% z`F5h-W07tfzWW5im(2f4XM_RZC)xv&AIig-S`O_{%1m#iIOq2vIM*z7vo&3Bd!fQ; z|F5tloTIR(tJN=d#QGq5Cu>#IjA%XPVHx~k7olE-;PcfzyuIU0v@5~;*Ra1E4E;#G zyHvkZZ7)-p#JDL8L&bUS)GwP*eOU(YJy*c~Dh7Llw4I%IFApqi!_}2 zHu^!l2>dz{a?gOCd^ce$`knXIt_GisKzqqgX9I7G@p}yNjR4PA8#P^t{h!Kju5UL4n%q1EdU1TyKVm1HB_sbASg*vx z!a~Ur%RPO$z(#YumYc%&lFs9k>?RG5I}aPN9w~4)Xn3i;QDK?$u-x9Hc(L<0Gb`-P ziYJ_hDSL~@|DZp~9dUyHPCECC?vMQ_->Y}y`O6Qe7vC*@7IK#N#9BYu zM@!~?p9dhCWUu>W_KOmLE;-B zFUs7LnlImORmgo#Iqp%=?wR|rGeM^&@b4^)$3Bp+dw~Cn{-GbNm|b+Se7Dj)tKS)t zeNJJ`N(kssf1>dl7$6rNs_7cZ6zodEcD&_|zxy{c+l# z(LSB_-|Sc3v!$OG+MQhz=x5C@$9hP8`@xwfDK;}!*iKZ)GHk6!+*ecX%{#Ka+`V_+96*CerU)XaDn9HyJNFa zk4q3gb2U*@iGk7-S5$5C(n{wC5Vo+sanxi9AmR{b(jkTb(y2+hJP2TG&t3 ztZz3<()|x|Y||RAzlu9QkG*r8#72HN(XYjjCp;&hzPAJB{})03QJ^#Zs$Yxtaoj$H zc-lwu+=Anj_cW(lztgD&9e1MLy!Y|e!mH|}e))^9TP~1(mydb%R86@dDAx8hVV%>6 z@wf)-lnYVc%_m6i=nvy$XrP$!-g)-EYp@#eHK@lPq}vX7PNDmow)jlYF_s;m>C%D3 zM)QPS-6U`w+E01R`Gx1M3(@br+YcNf>B$eYtLFXM-6*Fk_>Xer8qlBei}$oXhdj6m z`L>~7Z$Llu{b$O3?sGX$4+dZK4QsSrd4beU^iEz+SQ^%9c!BF2NO*ae*H2*N*F@=@ z%GPOoRUn~z^&XrDc`nZJe+TGT>5kBRN!ZDhxxjxX_n(zgPGNYY;@mfu+J*rV-anAv zz2AQk`>;mr6KJ>Ev8}gz=Q+UcK(m=9(1&^i+Gp^cmDY%#!SR6c{WJJ}9Pm*{NB{Wi zP><+-qi=`(_u*Pk=;@2yaT;D?NBMZ?@549Rtm4(MSBkrmK9cVt$g`L^UgI<2rY;g* z<2>Ki1Se>C%3h&-owoN+l=uU>^zI|D+MTHJF?*82itPKkE@!{QL;oG_t9zh*-=ZD$ zkc*9WjOMR)9>%PHhvX`x=Xvwz^Pkmy8~u+_PCgAf@!gp;#^o?To|AC@^aaw>AH;Cr zv?rQnR%<)zA$Pd`cmwnP#R%v8PJhAdf7A)V&O%K*XH(FAn7vp zV#U)gRwj5}x4DWRhW&o5d7k2N*nt(fSG!3%?gzS|KAqg9nywW3q({(C=Y!vPE;bM8 z>)m|+UE8EE<~&T<1;9P5bH5xS-=p5-KJ*Lae6d-g>GQBpE3p?S=k*IDS40Plvx&&} zCFJPpu|9rC;341BCZCdz9zZ|ON4lLT?`iN8?XGqrej4No*Zo{~bN$16w!9}yz4QCv zt5!!Jr4(wpzl-p9LB}fd%Dz(Lg!OjJ(fHQ(^Ie=ud!^z@=V7hgsCXju=eoQP*yy~y zXCk~>1N@UP-rok#k0ymT zYWel{&&sE~x0i%IeIeS}*nEqo%a~d7rT7{*@-l&ueZGdLorg(#8|v#}i~W_`d4#0z z({)2vfeX-YsqhY;-+nkn!ZXcxD$aL%InPlq$#e9$yUVAucPku@^>azyeTrWS`9waW zd@I0uY3D|tj`wbOU;B(>r54dUrs(I7A%EI|UwKdR=s=U12Bdo%d`7-&kM!q+#nUC_ zbBNyueJp zb_%g<*M(Bw8CO54bew_pJ=ek8F;7vx^1jsLplgYJM)P%a9+u+#bO7>Qh<0s*JgP_g zKEV9Mbpp@jd2h1R4c2w*Wcz}apSIqA;Sc5|#fPQ|J!T5a$-=RL>3Gg}Bvpi>|p7aaMhbi-1iPSJ|61sn@ z3jKbQen%>T542q=%!75fhq?FMe~^xhyqrJxFK{1e`tDelP6uD7?I#)@a~`Jbr;2BS z&lEP|z4(Olc;x@z$HR`C>&Zg*g@(7meTd!NzE_Q4A^c4ixGy!n%>GAVf%CA)ex-Pc z^RU!@t$0W0VKMvxeg?Ugw%=-e(s|fuzf(NAXQ8ml?)K1mn8f^dGw9BF?T*OSL zV#%L$+b$Q_x!JG7^T9V2wu6=z&-!_EaNaF5Bwbs`)ps!8(|(%o{&hrrFVJBe=*4$P z5};Raj4!T_<{+GY8g2{ZYsS2S{`9*~V=fFd*z7>No6PbK5>jnWn=7y?yiVoO;P8yY z1Ruh8H$uNY;yVAD(XTI-c+Lyd$LsSCAE@_j7*`3%g=y&DqBUPm zmU8{ABxAmU{A52DgDyp_Hg}P9Z-URJA^hb)LZkT>^w>V%TYA)ht``IvZFZvEyHOwd zWuPCBGL&2XgqLi+hW)Zaa;`?X{{zfh_KL2Txh{EGM{^{Pn-BK=kMp~#aDd|V#@`RD z4X^Dd9IbiKe&WDRKsIoOks;%XU^+`9qP&Xh4$wkV!ZObtoP8)s*~ia zVm~xk%WHHVX0p9?{r|eD(r~UD+JjCng75FeKEEnkt?3eBjlx3cQH#wl`)T=*!)beq zuD=?CA)2npgi5c;_6y~&sz6fj-S2;d`DjE}{~j;(ggtSuFopdM^@cpxOPbw_w4AWC zo525vt1pj_vPj;4AweLJ*gyy*BoT-=>@XQ-CX+*X0bxcWI_R#51Bjv$;(_7;qTtJY zc+lYzMLgGI)m8C!z2c4Mj;n&e(#cN$}`Mp*BJmK>re@vzNe!HuytGlbJTYUMI zbAPAzNI8pkQ7?l2Qs|cpQExgJqwP$2!CxeQv-v~kcM9i5wBM}_(weS^`E;J7i<VDRtpT@hgO)>Uh}*W=wI?NuHT$D$1eMLiR8O|;c%T-*P}g^cCxmw#7t3GYTe2a z3#KZb!#bWa$0^<+-(lal6!m5Ts}f$$Ojo+5US-TUzuggEYL|N#cMd^+D+zpOH^7B< zu&xO8*^{+C-UCvfy~sRwx|B1|IRAJHeZfLL0lNA>@QHt;e=8Br^^o_VGoEmoy|mAo zh5m@N|E_dRy35(qwH;B+|0_`LYra<7@jmvRsCPNSc^`DuAxAEjl;jTve35jpAJ&T- zFz;Uh?xR0uqr8oP)O#d<*^2P}AP19=j70cT_G73*wKx3{H`A5aXce-iN+^`r3&kfr}ICVU8XqY=?M56 z*Ta%vg~k`>-F;F4$}Iz=9m!7Mhd))R_X%?_emA52_dV|H?6_~DpAF8#M$iTKe;d$0 zytmDwoatL9X~}iy&+{uDQ@$I^uhDkq;9o8o)T-Rv9DJm7R%`yF5(n=ylXktPZ-RU~ z_{n|;c;R0J<3_(2)N7$WHth>}zQ%Fdf_(IQaoZT@7h?;)tJz-Z`q}%uUg}93r`MA< zS7~@OxEk@j25URO*An@E>VMnTT%++kpFRumHJ-EM4c{+TeqES-Qso!kgYmrmY4qPw z=vVsD;yZp-*7;@W5!|Hp6q(gaq#g9@nZo|9%KS~^ORR%kU^kevw`h1Id#l1$?>2>` zzqoaH+B$!E)Q^mT@AWVj94PgXPfSL?6`MP?oPwZ7oy7OF4=O(%g8u%-m(X4BV{+co z-}g13!wsZEK*kdN<95C#l{I1 z`rFph!gG4?i!G2FtIQ+%Jtfw`g5XibIgfgp$6P%9H3tvsI24*~5h*toj8VSd61>q@ z@D%J2ljz5S;3>^t5&WR??x5gW8KjiN`{!FgS8e!S>QmAG z4e#M!KtJR#PB-B@>ECXit}daR!uRg1+rQ3%oYf5e%X>BQ<2$g<9*+1a=tt@${a}AE z@;$@7SM@vizJ0`=-%rA??sd49Fk!cM6o%uwB1cOq(Z9LS^`B|h{yi4ovl#rfQ$J^+ zQe)mie>qrW?$R&b2Krm=YjNK1fStgXXrD~Ft3moG$}h6-X}SBEe=97p4wjnt6)!TK zwVs!;Uj2gdFG9bZkMR8g=|7f!6((XI^f}tY_e1FChvy>+luJJdD|&6$`oF}u&ce8k zN4nSET%&T$uJvWhd@uZq*e^6+%6zFXV;zh^UnK=SqI9rBt~jz;}b+I5l7lOB0~w-V#U^PVTrk16#3!{96Q zceuryt$b-X*5gL|tNTv#o5E)6VATAM{^?RI{gyF*C?2y8)?+&D0lV%UaBYszfT=$d6zsvrxo5m-C z?h47*Bc@344AQ4e^dc#r_GHhYUEeNt`U6W2$>=&odpq)JALB-Ohxh4|K!+WEcQKFW z*7(K0w&rYUN8FSu-e4V!c|DJiaMIVBwmXIkUSP{KT@m!!{(*T~ zW%_G)iFL5rlq+5azh;r3Lh6*LGnkg`X_FMqEi?na* zF5%=GP2QzCvm1N~4aX^%v_fDk|FA;tW16fxF=@oS`x^c5F#3h>33Nfb??yj{`+wKo zAnv{&bdw4aiqrleYLbd4>?ebz{{D8;(E|6tym|TtG7+110i5Yk1C#RoG-5Odx(5_~v&Qzy6pHk>F5G zPd|~N|9{0f|9KDe@Veu)Wv`;&lWUxPL?Uo@za4tX=5Uwa-lCEL=_6^Kzo@VK?ms~K ztIT)jmV@l(u8Ieb=t*Nu`xh$b3^tGUl<<@}O3RD1J9#5&-Fs$r{$DgaWlj$yUBpXH z6xcz}&`)d%9@KPk*x7!H?|yUBF&h3a(8IqLPgQ(fr}0CjoZOwb8 z-di-_KCNeVy0)v@J5gbY{XgZm#df{6?}R?iUi&N1H~qQ}4wmbD4E-`HoreDZHGkT; z`^tLQNgWFMx@xiWAM&-=FkM=9h;`r3`!(t(79Zx?{l8${V)<_!`sV@2&$RcV|B3DB zH~Q<^jCtR-aE|s9lQQS(cSh|6%26}< zpO#5GquyK%k68EqQ!4)-t)Js|0lwo%Ghm>kuQR{uJick|nL2`n!3COsu-DU<_+ryt z^OuEHw)h5AXk7xVaGV4we|lCyqhC(C^okI$EI~jF!I35A|a3McVCC4~OS5 z^f%a!@uwXT?c>V`E8olsJjn5Rs&zJDg zoqL=raB|^YI?rY-{aWd0YftBghxeK!iVBD@z`H%O<{m{R|Fn(`g-jy7+vq?%^KOI-HOk{`Z&hS*+t1S)7l>;!9m&&)#iBJ zxApMcxeM)?`2HZzWqJQYzuw#*-HviU?Df2sd;JutE%Z;-`vt|1Li~^?URHb)+DCs> z3P3DXXB|Zl~nI)ckccH?U&`>_}zEt|B{?n!QEzSQO#=W|?vrF9fa>v(t z*ta#l)V!mxqWxWk9ry7#KRp0?RwbUZ8!NzkKhyqO(=SK)!!WPr`q~_idUlj|d7d!h z5EuVo;UMjwe}Qg(Kt8UE=K+5jFg%O4#>=e%&;@&ik!Z zYNS3=GW&&w=Zw>{OXkm3{uggwp>jzo@8sAd{OCn-zT9lzHB!!irOmShj>7yOvgi=~ zj?s&bQ8=SZv92qWb0fibS|9H>GQoAqj|Q7QFGZ)!FTxb>v{L1 zz0@n9d_7fr)ALRMtVe&4uIZ2MK=ADt-pk>=*SDY}o}brYUeHfdOAvGIf&M@;I7`2$ zq5XN~3z=Y)u4mN4?$}2|zayTFYyNugY8{tk_Va_~d-%PSGw(%z#`9aW+(yvx7q7UN zh|By2EvFdo+gHKQLKoz#@uk#I|K9GW;~BNijvbbEau`4;)| zD|FCB>8itz8p@9aBXu5R+V5W?=^C^9=zd~b-%(o5RLD8>Gk0U}TThjAQRDP^>R{g= z!~0)#?Jp~5qTF+P+gL4UKIr~D@U4fZN-1GEf%79Avt9ZMp075!jAi6Ut)Ld zt9hT8@p|h%G;W;V?pizEB)^YjdtEH)YCGt3&)I_C zS2175H5NSiC&42I`+Lyk|3Fu?^XQ84r9c0_kCR-X-+l1kO-RpsUA~XA7x*9j@A3R> zJ@^FWx0g^a&!u^9Lc6%D%}07(95++l_nY{EQh(YUr#StXlg~BT>q{j*VW9`;pWylh z_6DS9(pT@z(=|Se@qG7kXGs?^C!xN|J*B*^_+IL-QeT4KMf;EG&x}?IyVI9k;eFU) z&hHELv!2&k>3MwT^z2R-C>_6teq4n0xNYGWonO?0q`kn)|2k0nBjaoFUNc~Wf73Dv z85XqYyh?g6E3Acn(P>CG0eoaI_|F4?+c2(c(Z1P8{}tNRi12RRZXXy{<1I%#*V98$ z?heppNpPO_U#WexOwyN`d5TlcqdZ4_QR)})zWN80&v(s!2LAZ6)j?RCw;lLSz@>n^ z_uU4Zbhe?>YdVhe!Jlh`IXN%C6_>Q}u(YFBCcRQ4i;G3(%P&#mt{)EhCEXnf8(mt|J@wj)6j(4*isO=>m;Cq;nyxYGWfbrzHEzjYe0{v&~I<(8#7k5Q} zmDwJ3QZMg!Y2QtMS2@fNj^`@yjXtRFB9xP|S7`Ye*pn>urBu(GapbScrxWn&NV=w- z`)Q!B82Bysn=gVc^Jss}UgOFSu2Y!veqJo)mj-K>3grFoE`Qq+D)#h$)%4BYa^*;M z)^Wbj{$In%H)43_p(40R!;9@H+TSJSX2q+lgVlD+VN&iKtT#o$EgD~9P7NfyJh)YH z`UR*CZgb^f{431g6)&<5)|lHBue1(Un>!TmZyoFjd&LIx%P=WFk=>&43GXh29s4`z zJ4MW8+HSr#_L48TcKL;+TtdB$_c6Y-x23%R-&INk8-_~$6xPj*c~I+(+vk){8-0ll z_0a4OrwPn}-su;Jelh4bjrOj*_r3w+{OQ(TRZivoEax}v1!!kYzZ%pxiGvQW1zlcD zdI_G=cD4qGXwOIT*DjOxrOeYBPQO&NKMeK%HN3_=tFXlDG+5H_g>h@bIoP-0tGr)5 zY3x;6Zq3;7+LFOo_hu=T?D9)=q%Wm;9`&)P&ocn>Ma;ge^~TLV6{hn4TO#QrChu_T zV14!##py4ERmfT^2d$qhY^?$mC8-R?*OD<(%Nh2a>n=mlg@~0)S&&-kC4=!_XECrwsr3%#O(Zj5?-4hsc=7EF!8JSk;+|fsx%z(6&u&~)CLKK zN$dP7$4pZ3T;4(6H<7Mh_UbkMBFv{Z!EZnBb@D+{&lzRTUgPW~BaavShIJ0+;HUSe z!{G06{UjZ!D!!kTcjs6WJYUOi37q`UfcG(yzLX|Q{s}qTL7JdoDse&);_- z-FU=TLH_w|QaC8#U!9$-{T2zPDCD_IIy+VI4*%U*m%c|ZO~Z@5H{^HU#c`F;_zhwKq%K!QY z38lY+z~Rl-;Te0OYnKTWwt5Q{W@txl9ZtQj9M93Si(NkJV9Iy(QZI++;GvJ*i}dxHCp ze6wp`)x^n4e<|ba3Y+a}Ehpv`={XC>rE6K6hVOxOh4+f{(ZBbUuGRQ&Fb+4Au2Z}j z{H8PJr^ULz1>r5hWtxunpGkYm$Zvywn~$Utn>5;BtZV zgH1hWzJpADo`M}&eX#xn>rdWC80U<~(d?7uSq7+psy^8ZLmzP4UBYWnNZe-U$&;wkH3CVR8uY(LK< zclftx_zlR%d#m@*pHc4)jjs!zkd=DkSWi;z<;u?zuos*bJg4K{9j?C<+Z z`dL_io&|s9y4P)OnSS?N^k<2EOzRzN8g<{u{%^oL!f|`Q@{NvjFz9D|bnGL_KkrrU z8@_uBK1zG2qe<^*$JM^HD%5LHDI;uOuV=O1S>O+}4~+Vn%!{`dE8m)FqgF!dg6B0o z-X-06x}^89#@Bi)18E2E3p3V*lfS32ZoKD9 zs?dKo>g9RTY{*;G7r6)R?~C?U_4`TZX_fh0>#NE?t$3}sN%=_%@9FN_v9A0_({bIL zU=C6KI05^Hi2X|Ab7qIaOy2DSSEIiU#yD_4bC9pi_Gn+v^Sg44L&p1F%ORhRTZgCf zw=I#JaqkBg4|~dC*5RRjtE=BS7&AXAzPsGe?5)+7@&0iF^hG=D$>A@%%HAE3`W{6; zdtG}( zP@I0$>wRfWC~shXM7=$=1>w7?Dvyz$H5sR`R2+2G{Jht!Fx?cdwhj(9-4(CGdlP>t z?|GJ#|INlC4gU=7p0&P*;{S(vM?R48CAFLv9jE**K)ZO}UXA|g@45Gki*TP^1;2BA zw~>C#!lX*>c5sZo>PXCR?H52{XV!>tMv5u9C{RYbrH-B;=MR_#ZlR`S>Z)j$xpC z+84$!AL$>D`}s}?r~O_Rd{_N?r(Yexdngh6r&cLrhMqhG;=V#XWXNsEP8XxNaJ80qx z>#T!Ov)}|tUu$|P-)i+z8XxL|FO=|>pj5v*2fO?<&KJ_wrHk6D4v=)?@Ld~y!NPt5 z-DI+jT3!+Sa#VP$j+1!KKdwvkm%0u4io6k;Zvf6g%B;hy17E{QXI0r{dal+V@0-W0 zlPEg;qk)c#gF`f5p)a+2UJb&l{jnNe<_%GLD6)>P_xGGXKGsvaCavjy$hrJHkD@=j z5m>J%UqnDBycgj5b{W>0{Xn;ufXF*jAl>!Hx_TMkf^}#r=I<^)LuaVG zQ`UZ+%E3k1QOZ|%zQ2nftUE|bEP>py1LgeUyLv7HWcxd#otJ~|+cD2R$GAU_@8x-3 z|3h6lzhT`x5Ai>voNXwd{m64Y+Ec4M- zd%rj4ov7m%?t4{EOu}D7v;7_GHT(s@ZuC3QVO4g9=Ii0LDC}>((*6wnIrWhmdYT7^ z2&5j=YI9gp@Db};H9h6am@lE>x(m9Swf0nvKLhx_SSPl2$URPvFcQqtba8u=^2MAv zL-9K6V9I=cqLiDnXKHxN%vKog{}qP&e-{pYL%#16^(9wmpM?5b?E7a5-Vb!Q4C6bY z&op1c@7pv-%jt@CM(te16PW*ery%B?ui@lFls|@RDZm<)u>4_4bA9bsl`-owG`ElJ2g;`QC(eSFV)sbbhI} zyVW~=fZ)yEXrR%4d;0P^&JnzcyRypF1~*PzB`I}Q{rvX{1v8;&KKGfbn$LW zNIR-ck%l*BH*31x-&1cfC#57^9sKojoy_?Xx{Ge9LRxJM&*dLT{6q}p1y`leqg=K+zSFPMWQl>dTm+yc-orwOT z-^Q6}$Jd}gAL%;wYiR%5NY@|Z+7Ia_FLC<)zx!I7_tYicO8Jj^Vx$X>|ZW`ZNi0`L8J4?X@M`LgnAO7pEX5a==WT*Xq(Cj9FMcGj__WO{QgYvs}&gM*U_)reJ!@b zzxW=Y_r`ut>Gyq)cG7?P#VBWd-_unN$k=BzU0wEBh2&>B>)tJl+pQX23q6`zZ=OW|1P38c~Pj5$x& zL)u&L{X^;*zJhc=KwhXb=k6n4lJx$q<&nNxu^wfzUj-6>G3eqo$U(eM9DshI{8a|N zLwjlZS(}Xhm~WlEb;Nw4^`(3%UGxhlFH~qh)$o}4Oksg_Fk-eVo`xOKcbJb6`+@f8 z0Pm(1lE1>fppfsw@SUNE`O@Xj-?&K9)tmn)9{Rs`;pU&pzo+0FihP*w(+?{BTGP2# zdct!}&^i6x@x1`*xz7RrCltYD;_hGE|K(^;1|Ug<-gZ{jrbBOdMEC_<>=nOX?z9F*VrE3huwpA z)6SRUTmIxHx?cR=_Ya+)^y5IeU^(bLi|?XbaWQc65z;07>}Anky#M;d*XDY!VLWDo zZ&cZ?=SxhH>85b7?KD{M?s%870I(2tw>)PW=1Z#Z`+0w8e_1T}fn|f|2rS;{=rV1K zwcHrqZ{tI2WYuJcqYon6{F(^979Zo%(Z2Un#6J%C_e0;sPeT3FcOieL-=f!-?pPuzdEZJu;>+wj?I+&HaDO-v<+@&^{=2b~TTI58j7)ki@%Xnc(~7 zQeMu~>pIYC-MtE;)$PK$zZkwYrgVGt+5y`0q{o{}|A9SVB9df|6E-n3`Wc@wpt8X(_gtixl$F&a*JChj@Cd7iUJ zf@3v4v{O?4AH{pY+y}Op$r|5c9gN_9mG@my+{>Si@1S2A+8wlDUQnMs0i6E!j>PwH zK75UM>c8%de&Bf_=L_w0&jbCO3wolS3(q5Fqg@}NoF|_?;UXE&R@8eX)*HTGLH*iR zluLQFFZjv57&q#p@LivKP~N+MT~O|67|&BToT2@=Kj$U<*bV|eJEQNF!=+u*?8~|? z*FtWei22O*aA;0ah5XT;qvfTu=PIPU%Y8(|&e8CMugN{?^XANX8eV4|Y%=o{Pg(~f z=6uC7um>($d#Flk4H);Rw?N|~-W!WtJI=aLVA8tqn7L5nci)e&pXXy7PWC02=W!pp z%~#a>4e=LZ+>RXY!m0mAyTY%Kp7VoxHyo$#DCa@ICn0YR?B&)!ymlJ;OL2As)xkyD z?&4sx@`V!cm6G6M4X?15)JaRK%q5Cfo3+YOnu1FePa7vWq|9o?GkFI)wzFM!(K!F+9r*y?Q@ZN8O*{pmyZZ~T?LjQjXBY6k=nX47Aw=0!D z@%*p{%6S6wfqFg}bGY_nH0ab#>P_2`EdnFGh zFS4Lt^2Gtb?*n}#g8MXogS}ka6*u<-cW`(8Hol8n;7cpR{Q}B)XWc(E-{ZX=QuqPZ zx!=}pQwb_=-MvV&b^Zbhyhk-%U)xRB&%Mm^eWkou@R)`tu-{CWcExG;%5|l<{Rs^( z4?3@udFXWdD0mlhwyyAFVc!}vXDdDNJ=sX`uIA6QZ`niAN4>&f0^{}(?bnol z(E`CU-jG!S6QJiFwpQgu`ftma{m+y5@B6={=Pq@=U?RsjeTZ&HIJ`IHEFbf!3F|-- z>(v9`)2n@#{&&bR+!w6@|B2WELnXy^IixeM&XE5ox6)3Y=O&%7jx52r(=T`A5NEHz zdz&u4E3XK!46p?I9NwQ4Gu&RKblYIw)_#nexqC_pSGT+O?{ZjAX}`Tca#j+-|*Z%cxr~^+kQpYnF8zlPP%W*K#mCcufx4VPn7s!kX!3afrdw{gSE!p zi_UH<)bM9|bx~Lc{>1f*a(^6j`wrSm|H`GH7t+soUuq5IEu`oCDuH|!vpuw)9QN_Q z`kLJ1IcYWK^wxU9`+tQ|(??;(Iv7E{ zJdfD`JdSec*Ja>gu6^{g#PgB4^PD*1Q$Nq2rN&hsVI z^R7XEk{{maYp_Rqm)_umW6{5S-}7#ydk6F36pa5tm_M}RZ2?YslYCa(D^tb-*%LUG!=6yg1D-n*Cjl1tV>cOUj1=s9Oony<;!D@@?t zl=gauk-wQnjjy*3Hkn6yNqMcdNyB62AcZ;D36fr}wt4M`-k4`I(O-k@J!O)A5$rSj z2O~9qsacYf@E+y^oeA_O!|#gO(XJl*n)0WNJ;c?IbGZ!c3}`=FV#jKHPsr)iLm7kd zJ|5%9`>}&TN8E?7Rd9WGe+G?G~MPcFi+7QtwZa z&|UULE5|#0@5QYndDwQ)21m91XshTck9n1vBDLx$f+>O3#R}A)-iQssR=ewUgAEI2?(@fX+V(VZ9 z?jH-xsokZdVsnzl_p}ZcnUfW-!8|JtW+)!9WoJwJGWY`=x5m9g`YFb<)|c4OKFC)P zp7*+Y?r1QjQ9{_Bj`s=dpooO?9F6bI{NCs410|g2)bC>+k#8rwN%ayRwF5PO#x6Qp z@YS7rs^qw{{adBbIiSbtCA9}j{8!*_|Mmq7&o_bd{QD%(HSgVHSg%JS-CsfPo4VF0 z{k38o)7kU1f5P`RPL*G+*!p&Z9^#lm{;YJwFXtVx3-5 zg;}oc-OHEUa$on&Fo9oU9`rDg^91L8+_PvG&wF?ucQX2ueh9g49}E6=4(9Cu@VW9} zwbonV9ijV;8hf>#dlwt`epQ)uu);dMQ{FRDZ?O{P4nqIU1zdu0OZd`iv44*C7Z~w2 zXnnN9srMyR^dcM`UyJ;w;XBxGQ$aW1px^4u6>R!E7X9uV=ZU>l z@u)dQThcVym0z8mQZ4@#+rMjkq4fp}p2|CaV6AvJKI2PhXb*t*JL&h4<8VH{llt7- zd`;e=cN+nHEkbz5J!^2c&fApPOTUNrOWQCW><9N6KzRS}J*e%Bc}~xid@X8Sc!GX; zus^0fYs@=-p|mKHb$%0vnbD^UPI-y-6_`i0{0it*ZR-1&;wPdXe+<^omVA?!Tp0-b z7458sAFCqsgv*cp|2^P?f5P}42m1IA=!WwB`@WPG`cL!~c+=3IJZC-^_;H}WkC31H zlnGcbmm~jd(9H(4FJ^zy6|U60sO{@%9V{{XHb{-t_9YE3g*{sr*hMy@ybd`yzg_tv z^+Bljv0=mCYowfp;8iUrh4YfQ`Iq8p>mb)9%9nM<-M__*qk}r@>|3kt8=9}eys5Cr zy7%)oV7;q{U2M*z`%1lymu=H@ylY9V5?szg{z3*Xx}5Skv=;rjC9D9lq{M?odw(bTSci zGD*2rI1eGmL|})X$zHGhKYqpMTJD*?X7`@J{POxb{q*qtKaDR09S#89%>n(;5B*s1 z(}z+2!=N*+i+u0+a@0fr8N9!qhw#6E{yqbrqu&?apDaPSB}#?idJEVi>)yraXO}2P ztu+7Bb{AO(`-2}*FFs};(s@fe)$wTektm<`;MC_WK=@Y}ciu<7i||G07rrmbdzO*- zju-HKFQT7#jzM{aexYZg9X!9EjdA=O{XGrw73inyK$iz%9Up*tDqy!Ap5w3b!oNmS zxv#*(&|c2(%^2@p^dzZ5f2v4Ff4^JM?x(>o?nitU-~IMwj!tk+llrs z1*En!CJ?r*+ExJ9{> z(awRudjT%QcT#WoMexI~*Ho%J_7}$+!S{^BxaaJF{iTFEQGToM%8La1 zFO&ax-hAQK_R|FaAI3S2c2t?P*4x84f0A#l8LcZ;lg(&l(HWgW~w{^9xPrhxd9i_9|`3P^^fa~ zI^U7n3+LaV{bxk-9f5he!xt>PUqZP{@ZIDW-=ZHUq5Z47T&44p`S`wZiJ7GJms$sV z7-#=m1v}shbNjhk5BNdj66c5XHI&=8*Pyu)pYf(@Id$-_5$^vL@3{9hPR}6Yy{+Go z!oH*kew#~;(~x_!?+Kc3RZdC`??L)cS9}4+lkzh4C%8}L`&IP+{Pwpsm9Bor{2qmVr9CJ0l<8NV=f|gDT-YwQ^Y5s4F67@D zbAztjX?up&AMvGDIS+8>o?CmxbjI9oXS?UVm z`QuLXW8AFJ^i9^mq*tM#TDL&l1sO!z&iq|PlIf(Bg@H-}A9^Aa{N~PDfHn(p`*!7w( zYBng$c$X=po=52aU-8}beHyZtBmET$c|ISvLywn!zPi_jo&ww2Hfj7-n3vQ);=Ry+ zK!4m%U4Z#RJvN>XM$I*@KI>rAT&sA2bua^a)}6l88oomSzL>DVP{EtvPwK&qjt_m* z=LXHsbK2RU+a%iaJH|becjrf;ev+>5l!v&_sYkva(7zea+0$`-Ibh?hTF+}!q!qFc zetogP$B;hZx%c2R+4L+4k77U8*V|Afcz0iZakv@zZ^C-K!Pn+^md0R{f!r69dKTZJ#Rkb^+L#5XM|PXaOWD7Co`TqziqOgT`VQt-s{{c0ynMS zs`(<=M-|)W6fZN+D=e_lq@*kM^AJL;j;byg8_UkHcL0tI#i8cke>GzC-`=eNEou z(Vqe50p*#CFkhZV`(h}UdQ{|VQKXyXyZZkGd;=imms;q--s~N!Ga|aj>B=`MHx}uP z<$mH9wD$`1-%Nbp_o%<%an~P{Fb-VL4??=fLB|c=;$hMvzSkDo1@;!4^R^ECSm!%A zljnc+_GcaUnE6Fv#yZ&OOKy=*T>2*S8{!>|1-~oKaysNa-0K?fhd+ZK%*8mDSZ{%p zTVOgV>|z}(HJue7WF72b3V=IUY6=zaYaJYHx+os{|5LcHnKVSoZSlG)9^PwcfAf8; zw5?MPm+v!5dyemFh5HlT=kQ%No?{)3{x(yjRH4hBT5ilb82X7gQNkaZD!-n0CB~oY zHRxN`pTeX@y|H_4z;IWqO`eg!|^`-40`p+CImP~Hrz13Z7(2l=R1 z)3Hwt%JnQw;#0UEOZb9`9jmij z60^647r^gg#5;DH#J2<= z>v~scmMfq8V8cU7X?=T7)|pZ7?T>b!(qGbt@Bb;j`+W)JpNKca#arjsE^Ypy9HGhH z(o6Cu>`>%)=io!Z=hyU(X!us+-c6$YDCOK0;8(-ZFSH*#0Q}~{bz^5r`918&8iDn` z{DyRgd0P=w^c1|<<`)XAQmPH#UqgHk&=2ncE&$$tL!GwkA=Gny)r+S{{*OSfJCHx( z9d@>a*PEvUfxPc3N4_T0c%Fox)O?VZw-Nc?0N?r+as=%LhfI>xBF~S|^p&^=i}(jF zlklc&=|F+6qMZr&b+KsI$)FeVcly6;2fcIM`@SGLUCQBk&!ylyLs9PBchg#bU$zhJ zT?Bb2;&;AK^4HQu1^E(QF)^Hb-dw zsC6(CxN{($FT|{S$2(!CE1mP+_+iwOg5GR#(9@UlOQ5I6b0EqQ|3E+8ivEs!Z)tmG zqMTMcQQHwS$0*EM2cu?^;wkH3rro{EK>untEsE*6$`jy!QS;b9X-CYTqWL1YC(2oe zH<_s#p0EyP%yEi0SqIZ*n&PyhQe^pcsL`*FSp5Va?1`WADt z!tni4g$eiv=;8I6C+)7x9(jhq$NLoPc}SU=sp)F0gFQ{F;yoaz*JmdiNk2A!>7@ec z$LYd?QA)obgN}X!y{<-o$Aej}{-9O)YSjFs^Eqvg(*0}3o}uwEbEd-3{$C;2Bc2De z1ZQb@(ztVz-SrQ~U|szVd}S->o97OcUsn6lde7s2Xm>h&*VkxoIohAH^R(V@zZQ|0 z8z5)I@x8Q148RvW%*O{Hhs5my&7U@ZKS%PXg4JaL>F?~oiofYNRGEdEuELkt@VqhG zcCo;)x>W+>zWj>(;XJnFdN0xRx2jYq`yJ<}K4O<@coOp{SL)Iog!!Mwy(|5}a(~d` zZ5b%#FS57R3jE!dU(chQw;p_*_ei{VrM!1md8w83xxmQ*3EQgkIA$-^_N20_6~?TC zNn;hySO?RlP4TF8Fk{xZ^xj&9+%N4eS5??`8sF2bS6Ga5k>+57!=WEU{Z_7XGkj@n z_w|Hwow7H& zc9@$KM!lO|J+L?AeIoZ`QFG~@QeHai{D|532P3w%Qu2-T?$Gej zoo`+t_~4aaXn$P``pK+y@!QwB?{Dy(eO|^9sI8J6v2Bz zw6BT=e;p|KsBd>5<~{d6`(XUm=OmTqUAWPC=6bT?0WJSY^nW?li&p!fhR1?04wCeZ z*+W&18rSnHFTzHd_2{Sf85pJ6>;k998G|7-rx|G&Z<=zw(79qs*No%8#%)!(Y= z9_xRmewULDL;WIOS||PQ{FL`y`|&ivOY_fb`jWt%OLHF_^(8jU2R>O0JDs$z!5-JE zW~}r5JZF#EU>`|HiWKg{!uLAo3Vu!5D_Rfzqm4qlTZ1cgy=XG-W^_5`EA7!b?(rc1 zaolZ>qv{JyYtb$=3z~{{VlXzQIz^cieh9-ckG5KuO1Qp zD}nRFMEfU$C7yC7^}pwi`c(NH{Yugv<^%N4IiSa9@x4{HMC&avdn&B44i+1uc$syu z!k5~_PVBWk1m=R?8lOS?Gub|hH(3Wm|Nn|}94RM`^(D95H@kPuj+pB3io7fL3&=sq zpugrHj&Vz7|9z39EWiA$X##8f0UF-}?|ODey8U23S7_Zi;;-N%)j^e}FNU5>Mc~d& ztB~*WZIc&CxiPz!rsMm?l)rM>K^mUK`?; zkK#GAuM4+s9Zv`QDIPbgbl%0x{)!JXzaA*7{6fzLs&Y0Udn zFjVs=%{w~cne3k&?n|zaZXgHU47zx3{dFx8p0khcBd`H__9w1+UO5~27VVw~Ep~kG zEad+Z^X(bnv^VL8_R-GxNAR~tz<2k1CNfRxqkp;*#79A=JZI*;AN9FtxAG+FrT@C} z#qJ*Pnmrn|AG!bLIaDpu?}_^PjwkJVUjY5pVV!M4I-W;$=qF(vdSKHi?bjzkXN7jO z;zij1PRKu^{A~=%;eMF@Q%^~!H9hzD8Ss@@;QY16ZI|WJKWV!|zvtXO&ObnNcAVxT zzu-Dw=1c1E9;bb(@&U@B5i?%XC-Uz8Hf;{pbv|O6PL=cpxPPt=4jU>s{WISJK7PhX z_uj&pX$R>C_M^6|^!vzv?(-#g=$8@qH`O=?quh5@=i79@bk=y6?njLCPgo}+!BVBe z81@Bah^O8_`Z$*_ZjROOY4CCiQ)afVTM;u~X8^}33O}Vge3#DyJ<@OXb6B^BfbKRv z>GU(`&xPlrw6hr#Ox2Xr4|nA)80+9Y!8fJy-&w$^XLaM^2X#iYVcw?mFX{JZ%*opB z-Ss3no|J1Mwnfv`1v3>U?IR1No``96-)$XCnp0eP*1_HPVMiS%xk7zp&}lU9>`$A0 z4G!(6+ms%Xp!-PP$(iB(zn0rz&Q#cl^fA-(2+0|-vo$GW%_Bt3fr_@RM3m_-{8}pR><_FNh6!4eUQIBeh^L)t_{$YMm?{5d_miEWR z7#Hf3gmz=@yX?EiN%jVFq2e9iXFt9~!h2@B1p>*BsK-FL_Hwj`a##)MdK>Dae+aI- z{qP;UPrDS~`5@@>c;G()r(DQ;Y~I^cq8}+wZ^QTUe1q@7z6-jGVcd^KzPHVu)8)Gg zefiyWe@6Qw>g6rYx%f*VFQjan_EW}p;iOagw>zQz%taFOCgSO@VjOVlZypW&B+Nga zSJ7W^YKi0YW@X{~sU7nYC-K(D29ceH;E9Rv!NS)b~ma{|Ws3JJ1LHo|KrY zG``$ASYobLyv(?L;8E!Rtr!o!4_=c!LHY4z=$Fd8+b0wU*K7X%c9U|3!u;y4(vC5p z1KMT0it>2>(g`@}nD?PGx;TBS>p?I7!1(e!gnm}GV0@oNId>r4ofzjH-ru!d)ks%n z9bRbO?%Ax}8HiHZ20AHB!qxzdCHGQ$?_J@2A zsE55HB{|+jzWvaTccNb#@O>lDj+YVtGhh?WKQwn0dve3*5W%+>fX2s~R3P z|8nW!@0RCP8?f%&3OeAs@MZZQ18GmhzM=W*t$Q!L+LzGq-JRg=g#s&JU)pT8X}Yv^ zFmB#<^_jHx&`$G?;@dGVo6Nh4^BoYLPm*7D!n|C8d9eogChRK{!EmK;?ym}iq>f{a zeduCoS3LMg%MZ^{7YUv=AG`MC9qiZ_fIf!XlMaw{4H##?*9Y?j=eW*Tdg_US_wDql ze)nUUPfr&7mTp%r5lFwGUY9{ihmo$1gMN;AQvfY|1lWQ<8Td-d3#CN}7oP0SG{>zhiFC+!O`{eg=?|c1T${E}zrLy-Ze~8k~6z7GJ z;D4Gv=S>Nu9ej@`lb@>J6E#0-d@Ao?-29|?=nq|C-2AMt!8#a&T?p+lWM1dG$uncZRfMr!T*upE}Sx z^L0kKJRiIP{c{AusW&qOaux0J7Wi76_YCGM-wB#z$LYK*KzzA^SK_#_cq$a{oiVoe+kBC+s3c7zbowEKvz;99r7%;A2A{!igYKNZ}t&

    wRc{=%7e)q%N&6=283b1u<+XhyLmXXw^2Vpbh{ePl(fO|aX9bCpzPcn zi^Q<6pe!Xn;a6V~-M))kU&v9{Kzrxf`hsD3A8+n^7jv>WwPOS9o!==Zi&6%hlhwV= zi>o=7IRb690T{MCY=s#MZGJ&=ZjMC)ZPh?8NY2I=B>SB_8qKlbT^~Uk1Hy1?-FUw7 zdv-8WXCw83~4 zXup{^-{x562(;A(V02{LW8rb0mCdnmc!zv(&B~OFh4s-tcoG8;L=LMB5d9McASkK9 z`bMqJ{dV>be2#^Ktz7;n|3DZ%qy2;B3hur+mN^1#{RFxD8>745eOsXsJtxAkpp5}x z2nRYC*YD>U$sEfZfwq1E82Lz!>b}p5t2q{)y*Sdn*Wya43B|#<_D6Pch(K#bLZFQS zVdP}hwBF~N|L5jdB+%AR(9Qpg@#g>GU3PWNvCI)@V?Y?4E-Y8~@LSAJJ z91GXf9YI?Lz~JgSAlcu^J&~ECYJi`3M?Fy(ZXfUkOUpZXX*0*dPLtcAw6qCB6bG+O zpYdYuNak4P2(&RE3=vJA;aEP2C+l?AqkaMcZPfsbvc{cO_B{t-%(2W7!}rR70K>ZA zAk1(k-q6IG;;sRH;u+o0B#d@#mDDx-%;7+DEF`LP5vsz0!cc?bwf!I7#^nFGITi`D zWdMxs#qst(zkZ+>fU6OSY}e}tlr-XhuOIB>358%u8DLJ_(S$2v_UgokNh^rP|UHA zQ+cF+s~8F;H8=+2!C2_;#iTBBVyh7mXv+W?M&p>&m9vHC=2#@U$`+>ND~#E~!<9TA zm}8kE(542$kl;9;bG`p2e+943IF{Z0HyEH)4JJj_Eg!95z&%kM%Oe>OhMxFq85kbs z(dct5a|GJ@31G;C8ShKG9ka%D5>j0mvAiu;my#OH$9r);M*m=8jzyyTSpESRR;Cjs z@BfKE0gq5Mkm&x=PoTuWF<(B|-izBlrTvrv_RjYz1Of)S&>@iiLClEK3Q`8>i4T+! zB@8*5?B=yH-HXol!W@eP+87Xq8u)PFa5~Nh3v(G{eB-$Uv@_FvlW+Ha|faRwmzvvdr(XEX=V; zpe+M>kA>q0K4JMKM)w!ySR~pnitbbL6HbiL{nxo4m}6NW`q$MDz(AR@TB{$N&5dY| zWubE{XR8sxkh||j?5@W7U}26$0&RYRFvQk9p>#K5NOWP2MFMRZ0Hb{6+WIc@N!x|b zu}Gk;ukimd_MXjhW!-(BBOOA~;16#3R9AL=3w z@*syn7=#&MfEnbBi@6~AR8g`-Mavc`S>-AYPUu(u3jY1pI^CtGT;yt0owNEj)_?U* zXYaMwfA4+VY0C!5i0=1Km&ii4L^u|-F(8HzNM@lqxI{HZpU8W3n0Q7tf?;eN4p@3t zcI$*+<5@uT&!SrgLkiN(>kpJ;BS&hb0p`vJ92>>p;!LAge)p!Xh2&Vq2(&REhEQ16 zLVK``V2qPvQJ{?hF*q2*GLoZp7LsEbBif^8fjb7)av4c?y!6(`xsOGGHU`A7tZXWhf0cMoE(b+ZOZ_Rd}B;J zo3Bgie4HGM0&NV4p;Mi|Ai8vMh!kWNn6cc7Ef}}lf-%KsvO{^ZL>XjDgla+C6o8>u zPNu8ds#B003#U@ElqsAnFfM3{6m-Yy;XOGP_FT{cBDM~Ob})_Mz1u2%WmY0a86eOm z3t~t?`pWI0G7Q9SjWj@?c*ro27^^W?fgE2V1u7L z0&P+thL*T1Dbu6nB93u#EQOH>GGKI$b!lSQ znwRU+W~a*F{5Uxl1=^+n4D-g}Jzck#D1+=1;aK|HQ3hb%pGiSkg|?qbQY@S?>uKuf$R$0CMjVc6feRX642 zSjLFimQ9&Eg}8HQ%8$xm+&DQFMf1pD9Cw=XM_Y7$CC4&Gplum|p(ziZ>gkd$94E)3n8homxZ4sx&f)#l zRyBJcC&!{_UTv8LFz}7z7~0;wT%sLhON44c8v|m9>JBHq->ZkVmtvD_`D&xxIQU?|>1Ywv<+muh7D626!mN5ct42W^LaW3L`RCnvSkHsyS-6Oko z?quPk!B0F?`^w3&j1kQteP!;Xz&FsFg?c57Z)&hdLZGbySHiHNKMcIvUZN1QCGv}C zV?d1SRHG1QcfTkLF*%ko0&NV4fp^Z?`@5~WLrIQhj6mBIfZ*M5D6y4caw+@E>fI{_II8>KGax7y6+7zM~AEu-S zUe{5a$#~9A)xC0ZEWXqV zZ48KUrEK=fr|KRlIhHY^Ic1N;okAQ9%SevZ&q8u6V?=YzXMwv?>jzxhs2E@QGFq`*bx>-*9CdsiV(8hom*RAKY?@?I`ljK+w z{Ud9EJ7w@u)jYe9jwWdH`ca1_pVf2mxb z$WhE`06+0ktWN~P@Sf`vn^Q|AF=Ov^7bNMbX^y zpe^oXVM-TAE%Z;zFc2$~GYj~MPYnZ!k)Rmn&ZVEo3%S#PbLa3A@9QUi$Z+rD{Hh$< zTo!CKBG4uUVsP_v($yR)`9_`MFhHMpDELM&_(*wJdHd}6Y&pD7l4DVzjR7&dlZJqVU0S_|!>tn50s?Ieh=DH5JsjPhx)zdS;q~gAlx8i6 zA)@(V@J!9=k}8`d$D%+R17hgXlJRU_)Gd(+bYy`(@r5l>41QudS>4TYaGfN_qCnd$ zfMLp$u5NRs48~28V^N@O3c#?aD-RcH9+&R^BsmrZ+8O}kPTP2#+n05pnEO~Jo)z}e zK2Z!$WA=&N?$S&1;1df`j%BxAni#4vy|me9Wh85o9E$>N42Ypm%*FrxnYtk*$HLKE zJJ7~}nD;peG#XO-;y~FSB*!vAplum|;q-xgFHd)*T!Z1hPuxnp2g z?)`6{Em4TsC(5xri$VlLA?E2s&9`MBYLfd{6ljwIF|d6@AnI7%l#^qbAev(_yn~@r zCALPF_U_xdDJRD=L7+_v#Ng^?Q*NKuEipNk2?A{lh@lL!C3Z(@2O~L_iThZN=wOJU zA??b?`DE>-CC4&Bv?uk_xRV0kia{C7F4RwBax4=B+87YS)0o>(W_Qcr{3JOR1=<<_ zgO9{CkQ6lcm#Br9v9LH72g6zrgM;y5xcjsHWejDK`&blcn*uQJPgjN*%APA_e~=u@ z#CyA4?3bVq8*{gX@ucY)p>D^OTz-F*bt1$r{GSOLa?3j%9-AF4+>f)0F8D zYzO_`l6RgY$D%;nLIgt=l6Ri%uP0r}u}tJx_B-hkLp#VxS97MGbS1|!L7(;rGf|cBo)txRQ7?b2!6lj|QFoXm1ZE4-u*7nB+xq!>#*!QhTWfbT=VQhKhNk>+RAYCq?hhbW z?2!;?TLxf=VC1Z=-%}FToKF`95NKmSj6G5k*L!OJAUT!^qTQo^z@2J*FV`P5$I58l zBsmrZ+87X{e~=sFUet5vYHzg@0~ znk2`fK-)qDqzMRf>fI!O^$`*2Ivj1Vn7Ui;!2jmt2zji9LoeTdu0%Y zJ7usFzmaNe_Sd6xaxCtgLEAC_Lm3Qy;{H0CmmG@=8fW_>ng@o#m4@ZG@T7j6lVjn; zMOMzo;|#_6=@88WCul1u*YVcjc>v z+LLuGEjgBn9Lq^#X<}%JLoDrV-5(^!V(6~84O2(5+?RpI9hfn)8tqbXqyEvuH6r+Y<8*6LUJtA;8@Ip7`pYGxwePvEF{Mw zyN9+Z07ErqaQ@xva?&+Tjzxhs2E?!$XyDpTm(e`ts8NWB{h2&T~ zrEYdMM(4AR&K?mrU16@WY9!lNCDG84V>6lb!m74X#n2GhC1_QaU zt$kFk0-5GM76sbY0vP;*VR7HlC9;q$k%6Q=Y8JTLkdo>re#>NGhP1=^MY7+20`9H}NOr^&G>`XDU1V_;5L?k{6$)8tqbv;D@>xYG_+hT#02 zCuKDz$KtC)W_O-w0E~=hI+|~{Y6B73o;1;B_hzqfEYsKc~;oFSLNh;njDJ)Z48LvaUR|P@ktqwoF>Pj=sqzZ z$(XkV2(&REhBaCAbQEHZNy#%!b03SM zdlEbo7}n}0&otXA*B?xiV^N@O8GvElnClPvdVAtDITi)lmVw(7p`kObeD`r#h{>@` z5zXDlmH`-=@`uronpEUCpO2*)q&IGSQKcR1u%vKGrC_-Jg3RAD7u(l42Y4e%WnPL5@nF1Gfq`|&NAR`xBfwPX~*lK zEjgAcqB-u+#@#|34rtz6KhDXq;F@yYdITiFFk{Ij6#a|ZS5A&)ia^^!1jDnCoof4{ zj3Z5xV^N@O8GwPb9ZtPJQD-4JmZ==eiRh8Q(3J5P^ia-}6bTg;4-*1yQXqz@??91! zRj!2Lz=||LOZ>`SnL7qP$X>ZSxI_wqV_`Vnfwl&~z&mFO`p?QZ5~l!V3Yf8cW*kY3 zCwa!;+Ppkbjtj}LOc7{fK#a#92J8DPJDe5%Dd#i)rCb&c5NKmSjH})=7I?IFkdk1TBHE)mNZd)m8dErHp*}c} zy&jnYsJ=KjPz=jphIYKC9-5P2;W#B;iQ~}Bop$_QGBnMLdd8Im3%)rdlQS+cE=tQ_ zVtu~TG&iv*+Bn~dJ7q9G-|2NdC?vr$MYOMDPypjToE#MD-4D|wSQJg{e&9|PhTRX% zxy`aONP=aGK-)3^16zqfsy1j`iBJ&GO`3{K)G z{M^~ylH!>r!Jw3zT1dFc;MB6NYp%yYG+&?Y30b{rJh6uDVAclc) zEgt9o*`B%7(=gfb(-`>a9q&7$&?E0J*Aa2(N+ut2 zWxwl)#JIULmqNWR3Fm2&D~k5DgfsUjz!;LcD#wnHU`8n;~bVgyj&s$*&j-- zyo?lpp$dnyovzf=wIo+u-Q8Sqy2jlHDbLGq-_$*Fk}FdL+Li$rsEvHbSbw+8v|mPs^p;3-91+iAAng-Fpp5}Bp1zn>d7^5KAZ?8y+7rfyl4Aq!Bg}ZO7 zsXHmqPYi*!WdH_0k%^cd%JV9$4KiCI0&NV4;gP1J#lYuZ0t4L>%*%A?GV?c~vO1S&Y z=_-hXfozEgv@syYb`U|N*{Qk=$ZTW*g5^{&bzoS%@L`le_qv)plY;CMC0Jeuxd4X8 zd3aNL`En)k{=TA1Y7M*Za~2!ny_6A@@*KnxKKdMH|A^ROP7f?(nN z7y879j!a_M(3P{c=1HA`AXqR!pBQg@6N7=O- zLAFE)7PK)S2C^~N4zyQ4EBnMCSV#f0maCs(KnxL#VI9r!YWoDpY>5&q$7A~h7#?S) zly>Xox;hMGOGKbe3dFb*D96T2b(a@L(zIS3XEFgjnbDT^Tm13&Vr_E3UgS$hxByb9tS3=!E}fYF?&2iG82FhEN@5wlk? zbZI%bw%0433}p6+2()bnVDQ#+k!tr%-K7P=f*qnb-$a)N22VA^f&F$h{RNqQA_8qv zAcmP+PJd_Rx;hMGOGKcJ0Wt4Shjn#*Ir+puwnPNlrohQ3yI^AS*?h7@7IJiU6U!%N zL5!=Nld(OxL?LFM2*J`Ev=F&tV0DP89;_XVAXvx=E%BfZ26t*hxPEz z^vuy2fwl&~FtjB{G}~WAazJKFM4*iUF|J;S4y8S^gn?{{5G-h$0x*O`GrHd`F)~4~ zL>Ab@5+josLZU-FaeIks%$6v}vK`e3hKGp&oz-}zo;wG}LQ&8so^kFh1}7`$&a*FT zZ#_5`46yv+OTBe5JdH3Oq@dY4T#ih^v8=hd8Ep)Rp-;@C&Sz(;)r}z2Pn2Uh*Z>(Mzl77WlQ z?saq)Lyt6^RDP=-nSx`%05g_b;behv1xFr+QZn}-vn3+>VD7n-f`PejuGaI$;8?Ij zpLjLqjbNBB#9MZ%V%V=eY_I&ZTJ;Vx{X|6bsjJ?(lY+J36qMLl>I?)EEs_8JAB0yfMIORox;uSB?>Y7L^rYAj%gnlo`vBAi8s}_Heb4XYIYsX6e>dylJvOmmhZ)OFhj;E6U}TAgbgm8y2hV~5c$Raql?aT- zx#oJRJ@w2rcoqyWW7!ikS1?cnv`mM#?b_81o&^K)&bqo{boawRzqbwt2G4>4{Y1lo zV(67WilMD7k6!?pEfImX)#&jH8^iGn{ma_Ti%l%pVIj`Th$De%$QgTjjKG zB{s28mbAnzr+wUMi92(>b$hZ}N&_-RX9e1(0E}D8V);N{p5K6hXo(86F(AfxV(!a3 zSPm>J$+0NbrtO+A13Z(;iHVL_XnR<2h#giA^k&C4J&)2UqSk}!k9E+lP6jL5B#1n@d zqE|}lcqKU&MSDf+m^)?Q(dSW(rJJ{s9E+koqMOIvYD~ItcBig|g-oSXL0-qnNRPVfLQ8=DRob!a+8O{u z3I-?ZS~+uFNsdL)UUTNkopwMh%oOw|>V}jY%L)Q*42W@0TCV*6_E_1aCC9RYXumyX z3c%na<*Kmu^J-Dk+DdXP3bZu&daK zAkel9z|bEM(I5rw`ESZHNRDL%fwl&~xS1*1L0>M|URz0yMS(U3#BkzVE|+e1mvg3- z|`Qp zAs(s6#^hL53yXk$Q(OAO;#=*p7^*H)5aQJ@_L7+f)s&%){2%}b7D1<{_?&ExK~ zFucX%W=T*uMYS5`SZ+#CaK`|rty>2Dp4vxBj%5XbHU`8H#YrEje_Ok{v5$omFn4~d zt1AYMC09UnSIXeLCqYFP@Dr~DZ4Aam&*5NnpO@>AR+3{;piK(IU|=}w>|{N6PL9Pr z>di^#&fMuxM$iRzDCg=aPjW0P2(&RE#!YSMt)H%+#^hL55Y1_yM((CySfBV}i7aHF zD97?5rvG4A;J7PNF#Ec8wv%I7L7+_v#4uyY>9&?gL5|LFENEjuj7yFq1+&lUXMrKemWV*xG5~|4na{%P zK*_cF0--Pf+jk(iHZTmX`SQl5+$FoVk{pWyZOg!2vK*q3qx0d~-A|5XMULfgxcgun z+M-A5kJr9(ax5zdv`K*&y7gff$@6+#NRDL%(LRspJ{TgJ8Qt%0)ZKdQW1%Qm6?VgJ zT@2gO@-)`=Sh+fIB{>!a+87YSj3rkGHeZy)^-6Lq3bd^SFgO^)9)@};%?duP?ZAC3 zv6P0pePRwQvn%z}m>kOr0&P+t#@7PngyUxIr6tF*BFA!5-kCdPFv(S-?_Sk0l;l`e z5NKmSjKR2cvhI`w#Y%E4iuO(r6ky)p_yG6cPW9Fj27-59aWBiQFaU-~*1&L_uB(x_ zpS6JKPFs!KX-K1C{lSwu5S1Lu3Zi>rAc{K%K1%Mr`RY#Dr6tGW`>4^zfEbP*AfiDT zG!JSYDLIxE1lk$^LojaGtNgs4wI#>0g6N++Yvb;?kgG)7{dI>z=NE;@j3qWjiQ)K0 z+<&q#ds7|9Lh)yxh(MbZh+(PiT5|7~%1(7PITl5K$xf9!S=jhE4LmF7jjPGADEep4 z8@XEsxIAWIfB7)2CdZ;c+bn=_&XjK6@iGL$eh~{%(H=Jh!kt1~%Mi$qEVB`16?%ox z8#YEeegq3Y!Y&kko;@hn%T~0S1d9S~e;y2-0gjiC;?>f_lE;YOX1a1!4@(R|q+!MP zizC&8u$lymqJMD&1Kh2GkFpNWm!ryR5-f`Te9Sh$Fm)e}r{3OMry!c)D$|pGd#@<~ zLzm1jMHzIv%W3Os5-bX|F(Agb4n!e#4@&=LH3=34+8O}E(!f0Pzdc+!%BxARDA2}$ z7{>Nt70aG-(zu!gi=y8X>uA8}>*r*lUaY(dvtm1tV2Q=b+%YgLR&Jh@lZDkJSQKcJ z1u-raj-`R^>$)8z!QzYA(Y6f0FmWEdi}PilzM2G!qB|dbIv8lKp-(?qE>>Pmf<@7s zjK#`eaMhVa(vW^)sb?8(#b=op%>%& zzBySp!(>-hWmisyn+=Ba6BM&Ecw9e8$*!!*t~~Zh5(8B^JW1cw-BGeDtBCF!yCd#C z2)T@>-CfdjtI4h?&^85Nh-EU1whTTg7nrUlyP`nbLIlJ5k37|=JyEXCTupXGfwn0C z!@NCDJ!~$NVYt;~R}^TQ0x%q}y_TVeH&4s{EZLP+*_Ag>F~FTd+(n$9GU)5o7puvx zDA2}$7&^oZMZViAsfpEOR}^StKnxyYz6_^-S~AY7$*w5SHU(f96o%y+drM+qHQ5zK zzgJ>_yZza)GVy6S)mTk-MbSTXs=?h9kR=Lnc4i3!*&$NuXk$POgmD_^AJz>i*%fJe zv`qmRc)n~%-GS0eUd@FW zQOqtzBoU1COmZ8i>SrO@l~s4Jobp-VP8p1HYh?enE`wxORuO1x01Qnzck#4G>mDiD zl~n}V7!V`Jl@8M7GW@cd?24kjZ1{yc2F6q?4XHa{mqD^Cs|d6)AckRSSM&$7v-Q)M z?8+(vZ48KUb7n5OzgCY6$*!y-nrksGfMH47u!QB!*|JAUc4ZaOzBy|dfPt!HthYzH zTt?AWa|eq8Z48KUCsRhz4%baNcd)D?n!`a+fnjaruqEzgxk7a{*%d|e(iN)QF|d(4Jy202}kU5VGci($T#YvTI-C(5TW*_BlU+GYWahnYkfw8!f#B)hUIyK+3T z0ERx1P=wWZr*4VKuB;-^whX`!0HRDZ@OeF5Np{5-zo4xFFfLt)me{;1*_G8~R}^St zKn#yFT^uQxZI-bMUxMw}h(H?yV&3Px@0hkWpVaf6WLH)ZXqy5sI+{7(IaNCt$*!y- z+EY3h+$n=m21C1xOH^aTZ&uyGa?xrO!=}89<8@!v4^y%$tFkL!#lr*!jw>IgZmZ5h zvMZ|yv`qmR!}9qw-md$^WLH)Z{cZb1?lfgqki_F$9+$Van(T_AkK^*VV_-NguQ^&S zvUQ<{?Erx`DG=k@hm7MLtv%IbS5^_tQ9V`e8h9@q&GRMCx0>vVVs>7hkGtbS@_b$S zqIuGuAshtS7!X6BIJ`xre1ixE(ob{;OT0mZJ6RasAkuwV(le{ct|-tp1z_00f6}&cquY%(1s+2mY5A`w!iL?l3n3VvV;Kbk;D)P zT+gxb%lctTc7=DClKXg=!1&h1YzI&3E{$2XEfFz$Vwc996nvC~@$7Qll$jWW0sO?v zHf1p|3)z%sXG+qXcg&>$*T_nmi=id1gs0j+EV&Kd=#&OvoFB?guS~cp3elB`5y}I@N6mX|oG;mzM0xDgtc`h+*27U0QpnT!pim?1}?XfvD#6`O-&9c7@|R;oHw+Knxwq$JryDy;U2?J`r}Mi8qLF$H4pzB75r5IoTDC ztK(h7F*<`Gs604X_sT_etI4h?+Iz9}0SpVuhOH0vP9}#S8j_-qolM+miSwOI_09zj zw+@w z7+A;o)>nRB_R4JUOat_Z&+V1Pc(_yc%KOVck?nYC0D@(|eIj?-!Akat{lhXK>B6sQ zNX%Fs8juu2x1IsX+1)aV!{(PTfIu4qVpxHak*xl+at{r=Cei?Y;%Bx*F`fvVROQ9; zVPesI8i41!=)=U_E-fFX?s2)~oyF2=fGE!6Sn>`A!g$!-`E?mfV|`~Dz)$=-)&YTm zFdo(c?JoycRs^O2;)(lXa0TPEFKMn5&#NwtgKk>wK%78mr7!hBjCHCbD#@ARr zlLnYO#|y^A5XBkgF{EFVOI%qtkp|qs;u2TxH05c&d9r<5Qr1w;X@EZQZLEO-Lm(=b zym!0HS(}IV+LRG!TLxh0m2>w-bG!5peB(5c8F(AgB`|0c5sh=o@5o-a_-3gBy489)0W+#v5ONV(ai53Ogq(BTK?5@Gv zECcLoNwg@sy9U^~n}SJ%a%QJ$HzkRdHHnr}x+!8HTGCDF-jwUw){=|Fq}b|yOsMr<%+7cBw7?`lL9eJTk^Q||Mv~g!V>)&EXxK} ziTG(uhwz-61kx(%tW? z`=q2=)(~i03ScmhyTZD9&-PkUEef>Ff_t{d!=CN-OgVL0quE=L2(&REhV{mb6uOJ$ zE3QChuZTcf1HR&lQ)x3Y`m*+Pl4@B)%wFp0aHlcv%uV0@;U%gu+agp8+87YSe&uPf zhO^CjXi2JN4S}{P07GmxhnD_mxvFa|sTKv=rT`2pUFj?-#M$n;M@Xt=4S}{P07D9f zy?Lj~bqs5GWmY4iJr(O1z!2QcqkU)BOWJWQsTKv=rT~mDCeCU+UB;u{%PH<=0=t^sg|d9t72S+klW55)>$BWXEh@Fhh~9020qFx%$Dd@lWKAM z5ZV|JLqp1LwS8H;%t^JZNwvHTml+I&IJ~TVf9*0S)v|_YVwER%M#o{5=bvm630b0J zhi5^Jf*9@inV(jKKM7 z*4)ifbGDv3CEv0p-*VQelNem)VaxE@I+l=p%bL4c;+?SE z!$8Io&eU~Io%vFc_CY=CNWNtafwoxyLy$UOq}lGP!=uT!tjV|RGdwDW zogBpP?NH9wE_?DVYY4P4Acp>6c#Y+=dTdO-#U&)|vxu{UAxNDEyEI?d{z2|$S(9)1 zTK_-{;nCrZtQYD|HTjk`#Oy-Qr(h(lk}7zygn^v4$hW+RUKtEoNdC1sQ$Eh4h2 z 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 literal 0 HcmV?d00001 diff --git a/upload.sh b/upload.sh new file mode 100644 index 0000000..c8c87b2 --- /dev/null +++ b/upload.sh @@ -0,0 +1,318 @@ +#!/bin/bash + +# 默认配置 +# 文件分片大小(1MB = 1048576) +CHUNK_SIZE=1048576 +# 1. 服务端地址,如果使用默认的docker-compose部署,则为: http://ip:7072, 或者 http://ip:7070/api +SERVER_URL=${SERVER_URL:-""} +# 2. 在设置-授权应用中添加一个访问令牌 +ACCESS_TOKEN=${ACCESS_TOKEN:-""} +# 3. 用户账号,不是用户名 +USERNAME=${USERNAME:-""} +# 4. 要上传到那个目录,根目录为"/" +CURRENT_DIRECTORY=${CURRENT_DIRECTORY:-""} + +# 检查必要配置 +check_config() { + local missing_configs=() + + if [ -z "$SERVER_URL" ]; then + missing_configs+=("SERVER_URL") + fi + + if [ -z "$ACCESS_TOKEN" ]; then + missing_configs+=("ACCESS_TOKEN") + fi + + if [ -z "$USERNAME" ]; then + missing_configs+=("USERNAME") + fi + + if [ -z "$CURRENT_DIRECTORY" ]; then + missing_configs+=("CURRENT_DIRECTORY") + fi + + if [ ${#missing_configs[@]} -ne 0 ]; then + echo "错误: 以下必要配置缺失:" + printf '%s\n' "${missing_configs[@]}" + echo + echo "请通过以下方式之一进行配置:" + echo "1. 设置环境变量:" + for config in "${missing_configs[@]}"; do + echo " export $config=" + done + echo + echo "2. 直接修改脚本中的默认值:" + for config in "${missing_configs[@]}"; do + echo " $config=\"\"" + done + exit 1 + fi + + # 验证服务器连接和访问令牌 + local response + response=$(curl -s -w "\n%{http_code}" \ + --connect-timeout 3 \ + --max-time 3 \ + "${SERVER_URL}/api/user/info" \ + --header "access-token: ${ACCESS_TOKEN}") + + local http_code=$(echo "$response" | tail -n1) + local body=$(echo "$response" | sed '$d') + + if [ "$http_code" != "200" ]; then + echo "错误: 服务器连接失败" + echo "请检查 SERVER_URL 是否正确" + exit 1 + fi + + # 检查响应中的 code 字段 + if ! echo "$body" | grep -q '"code":0'; then + echo "请检查 ACCESS_TOKEN 是否正确" + exit 1 + fi +} + +# 检查命令行参数 +if [ $# -ne 1 ]; then + echo "用法: $0 <文件或目录路径>" + exit 1 +fi + +PATH_TO_UPLOAD="$1" + +# 检查路径是否存在 +if [ ! -e "$PATH_TO_UPLOAD" ]; then + echo "错误: 路径不存在 - $PATH_TO_UPLOAD" + exit 1 +fi + +# 检查配置 +check_config + + +# URL编码函数 +url_encode() { + local string="$1" + echo -n "$string" | xxd -p | sed 's/\(..\)/%\1/g' +} + +# 获取文件大小的函数,适配 Linux 和 macOS +get_file_size() { + local file_path="$1" + if [[ "$OSTYPE" == "darwin"* ]]; then + # macOS + stat -f%z "$file_path" + else + # Linux + stat -c%s "$file_path" + fi +} + +# 进度条 +show_progress() { + local progress=$1 + local width=50 + local percent=$((progress * width / 100)) + printf "\r" + printf "上传进度: [" + for ((i=0; i ${CURRENT_DIRECTORY}" + + FILE_PATH="$file_path" + FILE_NAME=$(basename "$file_path") + TOTAL_SIZE=$(get_file_size "$FILE_PATH") + IDENTIFIER="${TOTAL_SIZE}-${FILE_NAME}" + IDENTIFIER=$(echo "$IDENTIFIER" | tr -cd '[:alnum:]-') + + # URL编码相关变量 + local encoded_filename=$(url_encode "$FILE_NAME") + local encoded_directory=$(url_encode "$CURRENT_DIRECTORY") + + if [ $TOTAL_SIZE -le $CHUNK_SIZE ]; then + TOTAL_CHUNKS=1 + upload_chunk "$FILE_PATH" 1 "$TOTAL_SIZE" > /dev/null + if [ $? -ne 0 ]; then + echo "文件上传失败: $FILE_NAME" + continue + fi + else + TOTAL_CHUNKS=$(( ($TOTAL_SIZE + $CHUNK_SIZE - 1) / $CHUNK_SIZE )) + TEMP_DIR=$(mktemp -d) + split -b $CHUNK_SIZE "$FILE_PATH" "$TEMP_DIR/chunk." + + CHUNK_INDEX=1 + for CHUNK_FILE in "$TEMP_DIR"/chunk.*; do + CURRENT_CHUNK_SIZE=$(get_file_size "$CHUNK_FILE") + upload_chunk "$CHUNK_FILE" "$CHUNK_INDEX" "$CURRENT_CHUNK_SIZE" > /dev/null + if [ $? -ne 0 ]; then + echo "分片上传失败: $FILE_NAME" + rm -rf "$TEMP_DIR" + continue 2 + fi + CHUNK_INDEX=$((CHUNK_INDEX + 1)) + done + + rm -rf "$TEMP_DIR" + + # 合并文件时使用编码后的参数 + MERGE_URL="${SERVER_URL}/merge" + MERGE_PARAMS="filename=${encoded_filename}&relativePath=${encoded_filename}&identifier=${IDENTIFIER}¤tDirectory=${encoded_directory}&username=${USERNAME}&totalSize=${TOTAL_SIZE}&isFolder=false" + + MERGE_RESPONSE=$(curl -s -X POST "${MERGE_URL}?${MERGE_PARAMS}" \ + -H "access-token: ${ACCESS_TOKEN}" \ + -H "lang: zh-CN") + + if ! echo "$MERGE_RESPONSE" | grep -q '"code":0'; then + echo "文件合并失败: $FILE_NAME" + echo "错误响应: $MERGE_RESPONSE" + continue + fi + fi + echo "文件上传完成: $FILE_NAME" + done + + CURRENT_DIRECTORY="$original_current_directory" +} + +if [ -d "$PATH_TO_UPLOAD" ]; then + ABSOLUTE_PATH=$(cd "$(dirname "$PATH_TO_UPLOAD")" && pwd) + upload_directory "$PATH_TO_UPLOAD" "$ABSOLUTE_PATH" + echo "文件夹上传完成" +else + FILE_PATH="$PATH_TO_UPLOAD" + FILE_NAME=$(basename "$FILE_PATH") + TOTAL_SIZE=$(get_file_size "$FILE_PATH") + IDENTIFIER="${TOTAL_SIZE}-${FILE_NAME}" + IDENTIFIER=$(echo "$IDENTIFIER" | tr -cd '[:alnum:]-') + + echo "开始上传文件: $FILE_NAME (大小: $TOTAL_SIZE 字节)" + + if [ $TOTAL_SIZE -le $CHUNK_SIZE ]; then + # 小文件直接上传 + TOTAL_CHUNKS=1 + upload_chunk "$FILE_PATH" 1 "$TOTAL_SIZE" > /dev/null + if [ $? -ne 0 ]; then + echo "文件上传失败" + exit 1 + fi + else + # 大文件分片上传 + TOTAL_CHUNKS=$(( ($TOTAL_SIZE + $CHUNK_SIZE - 1) / $CHUNK_SIZE )) + TEMP_DIR=$(mktemp -d) + split -b $CHUNK_SIZE "$FILE_PATH" "$TEMP_DIR/chunk." + + echo "开始分片上传..." + CHUNK_INDEX=1 + for CHUNK_FILE in "$TEMP_DIR"/chunk.*; do + CURRENT_CHUNK_SIZE=$(get_file_size "$CHUNK_FILE") + PROGRESS=$((CHUNK_INDEX * 100 / TOTAL_CHUNKS)) + show_progress $PROGRESS + + upload_chunk "$CHUNK_FILE" "$CHUNK_INDEX" "$CURRENT_CHUNK_SIZE" > /dev/null + if [ $? -ne 0 ]; then + echo -e "\n分片上传失败" + rm -rf "$TEMP_DIR" + exit 1 + fi + CHUNK_INDEX=$((CHUNK_INDEX + 1)) + done + + rm -rf "$TEMP_DIR" + echo -e "\n分片上传完成" + + # 合并文件 + echo "开始合并文件..." + + # URL编码文件名和目录 + encoded_filename=$(url_encode "$FILE_NAME") + encoded_directory=$(url_encode "$CURRENT_DIRECTORY") + + MERGE_URL="${SERVER_URL}/merge" + MERGE_PARAMS="filename=${encoded_filename}&relativePath=${encoded_filename}&identifier=${IDENTIFIER}¤tDirectory=${encoded_directory}&username=${USERNAME}&totalSize=${TOTAL_SIZE}&isFolder=false" + + MERGE_RESPONSE=$(curl -s -X POST "${MERGE_URL}?${MERGE_PARAMS}" \ + -H "access-token: ${ACCESS_TOKEN}" \ + -H "lang: zh-CN") + + if ! echo "$MERGE_RESPONSE" | grep -q '"code":0'; then + echo "文件合并失败" + echo "错误响应: $MERGE_RESPONSE" + exit 1 + fi + fi + + echo "文件上传完成" +fi +

    XvYRgv$ae@Rm;C|0eKO`N_pfzN?g%73{aaEm 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%0Ac+f&f%Z&ZT+Oj?!8)mRT3m%8 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

    jC%*lh-+ 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

    ~Gs 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�H+s~Mt(Y6h^qh~A=r}43(d}AAQ?prX=0FB47yDPt z(e{9d^hqHPK8jw(#nw@}@u^l%)qreq*VNuFqHgf&S)!MTvdyiSKcsmnzL@DJC!QXh zmC__`dRZ`@t>|~(p0#27{dHsGSwf~PD(1DIzE_^dWU-hfIkCw2Ik_XAKIEzQ^JT@p zS?6rcyw_2F{SKI2-X!o?II=h8A$1cQB>*!o9<1XS*ydvpoxeb)6*O48bt$pu)(UV=A*W(mwmjysTi%a&6d*(+x)-8kylO07hyvxa_4zjE795DT zW*cXqJV;2_`=QWT<#ZzU~cVq&&W@4ELV?KHf%cU%M0eLk<_RselSe<*MC} z9V|0Z9L6fFdUbjlt&rkonm*^&bz5pyXGyUr@ahvVuu}&|22wlZD5SJD;GCQ_aKl0% z1}kDSnFH~>6G^9&cl92~65uy#NgB|>)nTVRH~Z|W*T>W3TWC(ArCm;_Bu9x@qnKJ8 zt1c+FU}LH z6Kg&_S+AWy+1l+}4pou`oj`YsHIfI5gE$(w?%{KDcBjX_@Pno^`9D&x@NX=-;Lh_r z!_h(HQsF0vWXTJiwma>zzVMI6&5ia&)YUWl{0Ml$y8sp7+w3@&=FI`0rdB%(DN*#^ zh5w!u7Nm_1p8iMKo;u9-zV$(AY4kX(TS-i85zBUN<3PCUbEcxR2~wnl%@+Q$;bmGU zPf++U3;h)$P@RALWA!)-_c3m+JqtEb!A z0^Qrwp~*Qhra6h@PbYH5A2FsgJLvtCv1pg+_64+|T%!$$1_o+I;@#%C*eUT?JZ zZE8m^t*OVl*hP9#*TSqcrB3&%+3X#xXw8EJg|I@u*s@%>Gaatg81m|v6L|k1-n%6( z7jOqJra^7AoFerX>38<@+8TBArhVr>6JxZjR~KDW2VPTL0?4W47mK=LtAI@NC~oD3 zaMwcO`oF9m;Wb2lvul+B{Q0P%W0PO{mz@3J`27#bLyT^k9CX3UF9g7Gaa~F+DAMtApTi9Q%IgVx^|#LyJvOB$%sdEm}tR3=Mq+l zblw89Mx_dAB#++8fBh4cj9Q#J3x2qjqHynRzoyca=pxJXeN?hqw{&llBbEn{FjDCz zREUw8!6n2ty=FK1>|el3{tTG0M`g*6Unloae$k&D^>Oet1-=hV)5NK2POtPOovAXA z-G;Vs?y?B-F!lQu)BPh`6-}=XFG(l&q$&k!YmUj~wb66!E;fp*zALUP93g*AdXQL` z*pbUpAx!4z%{lo}8zGii+bzLcbxKXqoSAA}H!Ga?RLL;I5DXUrC?oj_`K~$3C1yba z?8xI&Qa($5|I!?Je?^Z(cH-phomkZXRCF?AowuAQlY(SMOjhcHj_lp73{V4j`PfEy zaP;wPEzegRWS+(2;*`?!VE(`9a6;FSsu-nPRQMnBrE6Xk=(#@#GA|#H$u*_ zi^cPDfjQdisr8r#Q3W6&0RzNL@V{8rn^CGpCtY&TT~>TYE*M5Ksr}_Dy{}Bw(+@Ta zQ0&<&T)mq}lpD&FbPXv0S0=t7G+eNIICQ+DXpk_G`Jn?*)K>``d$O9W$RI@obp(mk)Old||^{V=6b2JlH zs;2hXIZgRF5YHK%9_H{3?itfI;=0coia$|cM;RjVEZ5nmRE#%oxQ~%VNE5{)#W1V) zHDrRN%`EVqR$siatIuq2&SHI|vqC}+#(_c+d=$q?sUMK+80_cqbdJ$2Z-MSLB_jb# z*>^;Bz7{;PUN2~%fJ>KV!Z{W-_}%kR9m0G!H%8>}-Kyv*YCoD~Efi@Ls`v6XC=%8-O!9~)4v)W#5rtBuhUhs6p|U5OL>aYGZMDdaoj7k^5Y3})-bb!7;vKz z+wCpJ9>|90XPD*e`S@+D!AYrvGj~RFbC&-9#QFH7B{qml6>R4hucj^b=LNim;?B7u z&jw2N9;StIDqB&xK-+KJyNjZUF~XB#2rjHjkzbbZQE~E#uoerJTa&}f#_6sP*r(I} zTKB!Z>ts7K8&t2Pn%%)|ps`_Bq1DMtQ5!)qfsIZP2D3dm7E~@!4@4k@h|HrFFEwDTB@jOhll=ZW`_BM%g^FCJqA{u47NiwYIjeyV zU>k>e0aQR(rI2V=in^S3=9mb679qIyF*`~X&YdFW=An>wiaAA<$1Rq2@;CxWPEfg3 zSJb0tQIoVf4wMrW8*y=lGF-!BO`l}}gS8Xv#m|RId5Nr&s{L-DRdo5%Lvp=AG_U49 zyW>M2VTy1~G=dJfOI-Yu3%$f6nSG8W|E)%vNBIzM>t?6MCKGZyRACD(Z*K4(L?>)h z@R_CA2Or@po`#(o821`;r8nzW+dEF7;>_73d6r_wQ2!8D#5OMw_fq0D{x0n!g?2HN zh2pGlM7zW(pC+NA_N}qpdEBEat{>{wd)^=Fs2zS%&5BhBy%!9v zE8UDcm?R>dh}&eHp7B#kB&-b3k~=3JuszZ~ny6=~0y&q&ze6Le^6O*D z2m2iyqN0C;My+DK+4kk(Xpi+BnjrwuAOOA~%it(k;V z34-5*_9XTYa^azgoV(gO7zxm%X?h;LV&SP|6bV;=X&c&^2A4l?aqXCE8A+`{NN^01lYl100<84TP|bkKYRiYo4;*LCE}Eg?6>#+W4+ zJRi^)zFw%kPMl9r*NB)RI&wO9;Djmx;53V30+CR#Rju)~eV8_r0JxBNYKu=Y+vuCT ztudShv)-(#t~0qe`@bl{^-8|HY6=~zh*LH0l80j4i%};b`ut3UMiSeEMzNH+#*fi* zK(GcndK*H!mBhT|NTlK zN^ljSPEi3Q}{E6?MW$1Lap}x4b8wp>rD3G>QRh`rXeP_+jtxaowWjjrN}jx9f5 z&F?;dk|iZ6wB9W!Xrxj>8<9Uui1U`OdnA~g5z}jI4+`0MlsR%RsL9rRV7EHGRLhna z!GmdTAw6c!)oKr@SZJC-|8~fQ`jfK3BHo=XmF(U5x#%vpvZf;{&8naxmcu0~NzDo& zMIZ?1Z8Ta1oYj?KeO4t3uWE%tK?bU7{V(jxtn;_B%m#8LYwzST!sW_>{ZML5A+@a6 z_>HSXENPF^m9dU-nS#s7Uu?2sT#nb4hEnvlh8l&cNMAun%W86k2Hvd}z@qa2A%lQ= zo|2>fiXA$T81^VUl@bvm^h0A3HV7K2OT|1+eI1%MqqwrhFWR%qSnnkuXnAUt`cNf{ z+i`xF5EHynf_3QL1hu`gQc8E~`HpN}$4hFJ*^m*P_LO8a(O}KtoOGh6Mjq90QiJ0+ z`xz7J>?7+9^$SX~xJiau+W&D}GC-JdF7V||$NP+MU9x;Uf+~&z_TC>}r>C(+>t5I7 zVwqASbPY6+EzCrIf0wXES8i2ZmtkJs!vIY9mG9dB98=EbL^B^I|KR^W==8>z8qX=l zB2@eB^@Dp$d9FIrci1kH*U_;70vn_q0ytZpeoE}WMcks?!M*z#w z^UW9_wL&7LfrYLeinIXAd0DiiG`?P2w7S{ zLP5IHquOR7+HPyy*EW@KdHLn6h$f7)5Q?ydJ%u1_1z+pt4%JH}wQ>s%5D8%1mcSnm zvK5uSl{fG0gQNaDXK%ngP)< zObVj-ae*Nl>^yK%I9pOnJBjJ}IYsPoo$Kwew*q!w%)#~7CEdqc23q+6LRmE_I7?%F zN{kj7I|}jxxKzw2W4s!i7mh9xO#1${?CsMferBUhdSo$sI0&Dg7ivS!1VZSUYhfoH zi|FEH%e7(y|K*?p_lTy} zDk1cw>F1{)gg~G9IxU|;T%G}PRZ&I?@LeyZ11AS83bL9g1QFnBM?edfcW|lRcDQ_l z)cAcZu$^=D>@)}?6S)gQcabAm>#d1;y=rrR>bROg@^bg^dF<>;{f6i#aYw6_T5rJT^}B&Szu-N|oCtI-PCXyBxsy5j9-F4fjL5pvc? z0x;SfI7SI(S6K5TO0yvaRqtx7D7mzCL=&kHVqj{dF+xK`X#!cjRIy@Kg+hjDeIV3s zByNY*m^YI`wJIh{6tr2;*j^L-1GnLEB+qhb29wp0AUVGM(Mp*mcKZ}x#Ltrr?wl^( zywm51+!5UjD3DI&roNbpPFtFG4o=QDwGP+i4ig3m*bV&jjIjjnn#9zrHtAw|2DPu19hrfPvv-UAZw>;`HflZen`^j;g0s#xql zPT3;uN|urxbsZ$+LIPijb%rYJf|k?a<;lnyX%WD+hHLQkoK#Ujq=tp&s##Y~P`vWkQ>5fGx4*;Te#y*<3kSa30&zK-q;GHzR1HG_TFgr%gHRP(nu28m4y^1S&CqQE|EUO^H%+-rJc_AKo%n_4B z_Je|RoOcGXLL-ZG`o?%vDAO!eYueZ&~PmvLq021`5!U9UjzHC4Kz^d$9; zA{WI`72M%0X$|6M_%N%A85<`-PnWku2yY8=xqr&D3chG5kH#xYvRJ4g+Lq=S2{b;g zaFj=0JE-+IEk-k2`maiJsA}bf^yGy~Szqg%JC~Gw(!crF-l{wPPu);DXZ$=)JHF9A zSIfKXfm-sqlhwYi*lc7BPiNy?t|0$4qY{m1`yP1VOT&})7YCl%-rCZB*q#uWywpPm z<2&i0{)G3#FxA;!+U>CMDnOOU-))>-U-!zJjb)6zPj+F*b`tIZZRntsNPmcnUNY)r zJO7WU*hj5=!;LPUJE^|^E~8O)Exu2o9HjUQ&JH*g^HRl|cxWC;@QxCqT*07Bc3i#U zLfeNHM)nc}_s|etOTyPS^GRyH&|WOe8Vn)JFY;9NZNk!$Fm1c~+}!s?BN@s0tfr6W zxUjx*XcnMU($7iy*I(IQDfi^h30i2UuAYtG){Z`Rfk{PuSo3PqtRY4^+vq&Jv;Xzb zdcNi8R3&tzh5oxcLVWtTZ@dPp1j{S*hK@wn7f*k=IkH}-|LJGj>%Y#pG2rj)VPoph za*dQ{t$*Qx2UeXc`|^m0mq1qU@ICqU?TN#?o!I*H7RCjdOrG`-S=fYE;HlIVh8;JY zZ$G_3WVkO%FNzzmQuBHuKpI`%5UPo_9`@G!%&yHH(#?9F?w+;mR^TKT2dqfB%}ddX z=gD?)1%DwtA)P0j3E02LOI(%sxAP zk=H6KG03;Ru)B_~u3ZrKNuX>T{_F-SJO6&STSMm17MFe>s?+XY}7$K7wi z%C`&ku=CnJJ*2xfyE_wRM#G#azlr$xgzkT+-e7gn2CoK<;__P*v6MHxy*mlCv=)*r zOfN<~QPfZT=`&t4vVP#~Kd;)Wi!E6oqkJR)l~D?YX($#JQAPQ$*F;U(FGBRoiWfdRBn;aR zWwVJGc9yN5oP$=8GMQ=w0Vv8m;MkI+K|1msp_6Nkt-ssSAm^+-#u+4WvYGCPyxQ4X z1U;|C^BdF>O#hIU@sGAb+(IU{`?qiK=70__Kxz%iK=7SAsu!WwDj|XV=yuVZs2kia z_tB+dtcZduT>hc?JCc#-Ld;L9pWsQ0#Jb01b7QHS?>%G>M;|*&E&AF+R3I#a*XCem z>&@>`q_E_{SA}=}5x!KRi<;yP5+=0Z3yPw!G-{&UQZDi@uKRY`Wu%8##d-YF4mVmw z?%ThKs-{E7)cY<|fB0QmSVYuiyvp)ZZ0+Y?(_~4)Nb-Am2ZZMCBg@V+f7qSluWZou ztYfSygIH_hIm@Q`&sbkVM@A_vm5O`N{kh4H*WSVesQGk#`O<%6a7kh-vmP;8sxn}(pbA(LxDo!zm_tGt^ z)g7YMcfR$(^T&K!79hh1`jN!`Y1*m^U91I;oQst-+1z+fvUj)Kul{ZmD;;%YzB^Jj zUP!Z&WK783^0;h|P2b)7^l}qtKU(^7UUBih{Qmgrzip%{b?MS7Nf04gr9>iAtg}e= z)YQsd+@{7A1ltw&>L{#-+hfZN7tLA5y zEnD+dXURq(h7&We&)Wy#8N9Rml0HLmJ9lJ^;mtyTSa}D!AxWg7C)47(h!ngZBqqsH zKlf0#B<@XP`DgpwUf>z9J)=oSE@J}Fi>U%lddS&9A8kmwyLWM{SF6YviuTe z(m-Fx{le(KoCka{^!C45l}zDf$vq!I8%*%?h-G&aTS{Cb>Xh@{DQtjgX>Hz2E-Z9a zve1}7Qro~<0}zL9W3u+;Q8rO8M9a_AM=JU7<4+NcYud9<%oJE$;jOy|Bh@A;77e4p zI{ULaA)|(b&cqWHHYM26&4Q!$OZiIG|^g$vBSz?e?DIE zuH$UwI-fYM1 z2XSsiYA$|@WmD;c;%zqUmlaJp$R$j)*_g=(bV|iQLw-|YTkjV($Y;IIn%BZ2m}5AZ zf0``>J!?v?xUWPZ9mvRgy{(wRJ4MSmi=Cg+*T<9@w10p+l zW2ZK>?u$6q;@(6LF;8Kp^}ydwy>7bj-UnIhqpz9zn1R0W<9{%P{$W}+d-8RY zbxrf-pPOGXjm&*we&?OHP5ZxpV(j%NUNzZ%ss9$-^oHrv`RSR$Lw_{=K+iV?-hI{7 z$vt*)`R8w#&=0=<(tE-;Ol>3T7aw4~Y(lELiEo!*H@($+<0MaRQ@joq4#!0R8eU)5v`D+pzZ~)4w;Jx#0cH?@h?}P|B}vyfBC1QpQK(hUHRRATb`$26t6BfG;!@6Qx$md%Fpbtm|6r+EmOx|Hi5I@ z_f6k>#RT%g`QHM6F#Y16wbW}j-Zb&wfAdx2=4&SI{Letk&)zWsKl}K(Vbhx?^zcLA z-yZ&h>CA86{AkdC{r(2lpC5k@qg=JIAA9`7o2K}0b60Smy=}rT{ZHkye|gI^_T{(z zPyh98(@X#L(-yAg6%+CIfBfFRzWgWC*!At~2g27)^CP1QZ{&58IPmFHe#IN6pJcvE ziu~`lOqzW+{{7mW*G#+qP`Ik?dfW7;pFI1I7p8w_I`!|N>Nl3xO}84+7jFLKRa49F zd9mj|dCT-KCtbgIoc}A+`JcI;fBEPervHll8~DqoUN$}V)SeH2CVR{D=79&Eot^rF zDfWEy^V*SjP0uLxAH5rU&Ggi+npv^`cc$k|FZ|y9@2{IUH}9E}AHHci#2kO;z)NqL z27mn7j~Z6qF!f*j^N)UU^$pX5k`EqTFuZ1(=|l0J-@IeAd&r4r1 zt+)K=OLerD|3BJRb9J|#lJ8h;paN!I179feA7$d!RY7I~)Gj@7*4{INvc8%kaNY^Q zqtHZS5)Kn?0d@H&`(zbJJl~l9v|rvCE(&Zs8hg8+*0A)2YSNrNR0sP2w*Lhaxo~T9Et}!0TRz)*Tbc50RXddS4Zei)Do@&UyzP(cE zU-(Oql(AB2!p1e_f#l=+L@=u2dCBe6M?++p^-Ariv5>h(%*ryQ6ZmD)BhB0nULa!Q zi$hE|s8Uw$^R1>sm3!}BUx;{tm{gx9!tOHSP8T+FaHnU2O$Q01G1`7v3>rpB0NGYV z>%f{s(8jKFOlA`ZEqbES*J}ZcxX-zA0)(|?91Ls|i2<%=t-OmGg5x2`BEZ#hH8ClS zX4Ci@J45Hg34SqJOYISu2~8m2NX`T}l`@l<3oiJHVvv?$hIoZ?x};tQ0%CGB*+?d= zLsHiLFxx5{&aehBhiffGITVGZMHHi^b!qocV;9Ne!g~BQ4i5>TPiyRMq8SbucR^rvTQ}} zqjfb=eRYxD)L`96q>Q$ERN)Q)wcA1fk%gj%#0A~=mGd7P6ZKnP1BO_rjd$O<9ZXQi zL)(j3@rnFBBacb&_WLvR!5GRhCWYxG=>v|&c8=g^!(_4GXA5$-3i2r6DG4~_4-$dO zL!JhKvmOITH|Z&)aYq?lB!&%o@LpV^B%yEWS9x!j;Iz z{E5Hs!A+1!W6!8rcN2Mz-&Q4#pAPpM9cB!u4?4^6`YL!sAhLhEiWKK5s2X1ob=OVb zm!rK`AmSYPNVeqPn()`s>h|3tN;Oc2y4%{*^aun)CwPq)5U8M&D-Nb5(6JTk!E7H6v+)2v|soV3P7xVk+^XlwUvSn$eCj4F| zumKzZ=e0pTx&&VHXD{Ouu9AkWXurL5AVMpWH(YVPwo^hodvFuD_WQk`y`5 z^QR;=6lE_&PHezchYKIe@IY{jE(n%oDPQ4OwTutrOW08C!8|!45^gpMPHK)8VFmnb z4XcLCB+cT3ZH3DGqNGMW;*?H-(FnjzT^!QAp#HM%jF^&yKQb`vTo5BCD>H{ww{KU0?k4%zR`N;EhFq8otj~ z_T3%uQIFRyEZLNyhbPaj7#j$EjpFsZ>+wn956E@PU(WGwM?0n=PL5cvu8!s{ua$a} z_6b2=&H7&qIwA%c{LPDb=15QQRzZ3}c)hK-B?uR`8?5q8<}_YPwfCajm{4i@lyT?c z&rhwtutZ7KD+KsTj`JM|Z6Gx#t~k!&*h!p-rP=J*6PU>5;$?+E?^vqhC1Tv;b%zUB zu3L4Fr8qz@?)-H|fdb6xe-=PJ-+(LbGOU-S6qsCIOHS06+EK;kV2-c9_!~*3^}!d< z@}hj}$d!lj4NCszE913)KK$rk8W&IGa+DIubK(W&ZiLGv10S6UTl&H;OTq{1s9y2k zRfY4+`3kZc>EUC*p$f@ zHUl_&#QI9CR62M(kNcDN#p+tM{Lg9JeM{l#q-N$6(U7Sfz_V__>97KVkyEr<@=0v4h@JOS*OR`(_Nu1?p@aS)|(e|ik>Za(M*_KJj2Yk zhUXmBQ<|vRD%WTWGa4l4>CLYKfdE9w{L2$1Yya5{AgFieHeiZ{5f;>Am~XRvHB_AN zdzXXlyoc9?GH)pv$!zVSv({0nUWUpkvTdI&Yjhp8Z3Ejh>t%KWH>04&%Ne?dY%gwO zKnkE1jg&-D`0q_Lk}L&K$?FbFa9%I%z;6mbLufONWQ)^KWTH)(LY&wGl!XDb9eqOr z6;y~(7`isSjwWV;5HXJ{PQ+sCKq-K4aboNZMdwnq;i5bX21B%+LYk76+8h#=nI@?E zG6@uHI3to%1mn4qsk#)Z7t;}Jrg2Q(U7xD`z8boGL$JwD%Pg&nSmAjVVv2vsu?v$Mlx&?C|~5$QlaVq!f+?>yvwW zoV%S0=J%SCLfDPfB0j7#3TJBfnwLLICx5DsUtsGOc|qRYXvU80rBU1g8fA)uNAVZ8 z^}1-NwmRqIvQ#+-62RxP4T4~ik>hMleN`k^Lp}warV&ml*UWHr{^c zzOVX%RVmFcRAbqTQj{J3hL9R|*y9hi(-aAPglR7RWu5(LcL5?A6?pyjO!+CzuOfu$ zzrD-34bYHH>y6jC6`GB^@8+FuYTMETv3<5j$$V(T(WloPr6{bwj@W+XesuEaXS~Gd z$zOla^*){}8tKV_d~3d_K1-1J7`Ida?WJ6uT) zO+9Ilgw0}ULqS$Oz6C8W|7dpx+p8-f6H5$KHZA3X{Mg-FTkTynr{>FjnLIKC3t4gD z83Vtua`&~d)=MF=c)jMLVEQGLHHtXei3Ki8@E8V`YAN#2kHn`+H#i#k;RvxA+`h4| zZj(~RGGhIdjRmMkxg7Nyo&tRmXU79I>KF79LNc7m_FiZ$ZBUcSOco{43qz?~v#c5> z1{fUoSydkiAVfDSJhs4T5b$H%qxB_Y$H6*fkf=QLOfWWbfY=n3LB1~ASNjs{JBf9A zEC10h#lD6E>wzARkNfS2v{8PT%v`SyzaXXnHF03O7^R)776k=b0m7x?q2DLPGMQ(0 zjCnUeuyzoXxKBbp*yd8jWt@E)a}LVNW}^d*`f6m;4U^kqURIRWr(w6(H*=~uf^QuO z6?(|j1S2WfCI5jTCL|BIaA}2MEfH$a32lG~hS2Hjj~nDO7jrA;>ltY%kcV~f|2kkwDgv49RMbPUCR6L~-a-^&tg zf`b{*>pZ*T4XDlY4P9tHIM}u$WpU@Sc+R*UstRWBrQHh)t7%VXaR|`DYx%vgXc!<7 zu&q@93)1l^Nq=5g)8?0vSQG3|gDe6bM=k(0kfVO+OL2RgkS>+!yvfuzbtGN8ug*t1oXi_YDk=$U- z5E&7zR3S^%l&SbdeG7st)wpZgZlpO!-wb`lRxPg=4lWFXm)|2m-z-U)kbsmgC6a|N zyK;7RK!%i)>YGDs@|<5*WqFxZpbgJKh*>;YS9ZfH4$Q2A8~hB!##(wjo(}>k%#nN_ z9uYI}G$oB-P2*WfCy}`!>%c~)@nWblN|Y!|IC))K#(qo*){_hkw9dn`##p4ShOf(z z>EtvCz%lugk+e^f_i8#F3`#k7c3lJ%ltd9Zz>RXUM2RmKE>0&c^w5^@qGNW%t?CmY?~ z!U5SpPT?t1v4$ZQcXo(vZRBt`EyV_b;jUsr?PjKV3icKPF=9;ZKk>U>S_{`pHalTB zO?UO)ABS{9z~qvxuq(^F-8;OQg%|CmWDd8LCiPJhmQ5}6#PufYJwdhm)}Z|oU?lo4 zSGfRV0nHZmF9lb*&{Gc(gJSdSQn7Z?vK>H3kZmysra?lH1Z9gU7W6SKO?@yxBJqk~ zWuA>%Nm-cCSu6P1slv1x2+}E`)$2+=5h|v^c$_X}gJ-P~3J&vWC&_fo{~}Me==RmO zl^FFX4p+p^cdXpe)X|-d$(92I7ROhWkFbf_pY@O|yb!Ob=PCV%nL-6iw30+!6OTbaeEgjL=E zD^<^I%IzWxBx@HT3LG-BKx?8TCMK8!0^47NQbaJT1#?9JO~tSuM73}MB7u>H>2xjj zVZ5LbifMcnn|8}13Xw~}WRkU|TLY918%KdAcCY)33GHrzCZ7NGmW|CBz17=EU=Ow? zvXSDX|1s`Zg8b|MT86T&o$xKkQtn{n?8hMWs%+U*jE=GoUnMVk`u0NXyH_8(q7NIq zIC9xCKfEyazL&lw+xoR2`*CMs@}0k87Huzh^ZvUHFQ!g^(KyMjFt%~;1Cw>MiQjaID~6(6|wRjnib9A_Ag*xu7uVp8@VZ*96eOK10${QL1m z+aEPS(sm$3Vfmh-{`;Cst zFV<;Pe?A5^PcPYrWJ0#Vq9e9&(vPipa5Nj%-rw>d8ubMK#KmWDnvi07RRm}ACv_DD zVcYY^5jlCLHoo6A$eME=Ot$Aoc(vIdS3-=ZW)s9#1SyI$I7U5J{l+^ftEfSq?gSR`N<=D$gFBnW?ZD! zPo}uWIGr(;fDE)klsFUo)X0(Gf*Z!WH{4`_h=9XthM0%ks~C|}=JTyP*;^D-r3_FC z1J9hwSP;U!uQ0(Vy%Xv%$_0L)r&hG zm9E5v44O+tLzUd+x?%(iIpXNGZnOeJ2?Y9>__2fJ%EK{2j*}(Og#tm0Plft1mWWiVVOCSeNP!ga+eS$vp<_mDBqDGMCQAn77eW^^$vmAF&m%y@y&V2LsnXYE zW|#Tel0XC(hH)NF^{B4E%2$FGMh7cAhyYlyA8v_=7`P=XW^FUGWT86jd>PAkR@b)5 zx+0P!=LPW);Hni9%xr{)hszv%FygD?`7p{`0|SsTP4No~DN|MrC@!!KY^rrTvl8MzZ(f&j_SFL~8cX!<-5rn8} zAFZf`5*f4`-?^MdBwJJrjKJXTU8mPrhErp%{4qj;4Be}GrX+^L<&}Rq>}$joC>^xT zC2`O59gn-Me|j_s;BX)Ad3?Cz$wxBq!G_GzEB&Q;lv7D8W(tnUc`xYanGc*^o5RQT ztn_MXs;+m8zDs~@E1fD**zg3mQVde69lBNJ;aKKmTt^PG(P=C9-}v%aoo$d-Q0e{$Vt{z{VVB; zw~|lZdpWzBvJ(Cjj&?N;EO8^kyv+!Xhi#_Mszb&Q3T{cYU+J5V(x3eqP5+8mD!+C! z7Aos5L#a26hp>x<;KYM+odW-BTj60lRZo6|`J7D3T9@G@$$m3N6(Y;}9`6t|J&Pv7 z&wDegmhW)fFT#Sbc>k6`r(kwaIUa|-t=aB=1*|I`i|qgMyn$hi>Ie4srl5;Z*m&Kh z0Ol`VJlPg7S~@jD+Xu+#{=~d|Eopkkyx(*GQ6y&w+;`tg==L_e);RQW>qa;Z%K5k3 z^V^I|et5Ui3L7jl#}-TcdD&o4j0IsP(h) zIXOPjyaw)Vc%EXr_wm*Fm4BrMwGL=Io4PP`W4Gk%IS_uAw2Y-pq}EF|?A+Oq%&uO_ zNu(kHr(|ylc?G%|&ea2bHub!L@-WWPg{o0npQaNfK{m#+;u#c=w$a0h+LL^LL84{{ z6h5*42pD1=vyQpiir??V9 z+tlicZ*~EvN$C)680P!?U7K&zr&8V|3b&TK=bG$kN>IkrkUOj1T;u+AOT=c0}+CqcQh%;%1QA*Qs z7u{GdAu7-POU*9PPG)sy&1mCdK}6_ny{Fv@N)dQJr1TYbPCA5f0Xt?^>Dw05PHSQN zifMW8X1=sSaU^n8Me36lB&%&lV%qhCxMjl@ceB3f&LcQozJ0f55sRnm2|2?Dd zn|XQnJ`SC8oq^ihG;$Au1PY$Nma32nsOH6M1L!R9v7+ijWz~WOi|jF=55M2NF8bfG z$t3~ye0>e3mHZsSH~B-pUMu%JkFzOm>iSoubq&LHNcJW%iz2Z@#)Axxd!QMxn6rZI zNX{J#N-3TxwpLCY$;>Hn%WZ&$ZCN_Qm{gI)Vq65rP|epa`H)>M)?iU95&Lcbn5k&c zj)wxkB$%(xbaTL&(AFW@oPyhsw%T^A;P2F_uW)i_ko3z|RT+C|`z{ix zAi1tq-ADFN5Opfbt)ybmg3y}H?pK2Ej4Wmf(jNZd1xIV3Z7AKiQ0LOcO@-(ht!U## z*bjx2UtQ>!;w6#so_=phvboq3g82(JYgk-DWlJiSG%nz5*zyAR!*HtL84)b24zDk7PuS&NyKY@%-h(?OyFghoOkd6u0t^T;|}nn7cf zD^X(31dPdLSmhPsk*L&;=ko{;Dy~J*qLqbPy<0NQ_x9QQ8oF2a3MJ%lllhZPTHmEo zC5S)sR(8yP;vb#czj+9`3LmUCcEhC7+eC*|7`urf3}7^j7PkEru9EMmB;!1$QxSJYlXclc$qO{}+aBA^ z3%mWq{awwXQkBMpb01kDJS77*kEGV{zn`5M27X%pD%(Jf8_Nsr2Tg)xzpl5ow&Bk7 zjo>%?CHaH7duv9&KhA&qE%nuFKcuD?&&_9Y5@V}x>hi{F`}>f1&1>PpytV5oSbdMY zv9D+2>deP9nfQ&AM_h}sxjUJe^Mo?}HlfUEVpW+A@Q(A}@&4Xx$Q1jehe!PS(NG_J^hud@$ti z;Lq0mB`VBWR0wSn0AI(-k~F?l8|cxbE_5RbU((*<_W^a;&QY2);FMs>=ujHvQ-9Ff z)CFCB2BqF!E;Bi%I?m7M*!;ZB(ebG+}?sRQUgbB|0q+MCP z)g@eih1k-n$%D#zxv&u~fpUt)1x~6pH5QWQE59$$;KE6@a?^MpDC4duc(lAfogcQ& zPd-$dkxaA*>)AXuD1r7abtA6@H6m+udu10u_$w79*Dm_PM%LUORIP91hvw5S4p>tH zq5Kvo-b5SxswJ9vvLPNHovVg@#&&A^{FwDtQNsTtmrotCvX0@nyld?>9_EIM+CT<5S zUYI*Ld%$z*tD+9ZED_j7BpZs8oOVZh^x*%vlhaz?#(c*r18sbkIKQnP`~AvjWE$GZ zrVj}6uAO-vmqxW8H+Of!7w>g?!6};{Zavt&*WYFYa!Wz;9$s@#$$Ki??a za8gOV|RQKKgv#v9ul1?U!-7R<4YiN(q+O(J^rZm4ex}cHHUA!z_R{6W< zCO)<8vLsH=WH|e?%Z>Gl6z|N3C%e0KSZoW({6+22HD8 zAD2Nl@3uCJ&KwUUD`-gtUfcKb!=e9_Lah$o82i-9xwg;*T2gZ}rps`Qat6Q}RFDvL zWW`a>&;&ve&o+{cgh8-Pa*~Skn8F_23`kNgouoL4>cxad+jObd5MISfOF+C%6l=3( zDiG%xU1BNn3r4h24lP`(4aj4?A)D!5=k86_@O_~IJbO-7;olfh?)Q}66ahW*l)lVn z7P|)2@^tzIp>lUD+t*ioH{~PV`Ur zdcp(cGybvzK-ZK{J>tiXFV_xc#f%_ZF5G<}09i4@?auh6JCEgw_*iHByRg=Z6`#_rIl0>*~?`YX9K* z;j@%oBs*xmpkjV=Q9wZXrgiyrl`Y3u z>cu6NPRMY&Fq{$!I7ysstN6t<Mw zlhZstH(RGTD8K>?YqYG9?l36A&=KXY@5R(-g4--4&46PL-yyErXXygeN4kb-;o(lr z_OC;7NUJFU4SSY1vh@V+YpsQ`a$II@I)=Pj!l2N6X^sxxr7MfnXKD|OiTrZRaj=#7 zbIa7x&izn%sY)bnZ~L|}eGiGyfXF&>OGl|iNDMYI8C9H5THAnLsuNIq%B?v)^{= z{?8Q)I94p33zJ91y8m+SKGV5J#x4B*mP@f|s2?}#IyV}xSUwDW@?~dJBsg#|=lFm{ zc*&GZ>T-qI#yVe*!M1@@ogTcJUs*X}HyA8-#c0rhi~Jv*)o9n7mmjLIGufEvd5>!Q zPT3ThZY_4FcPp$@efC#o%X(SzogJU|wT(mD===3Nd_|Er@Qj>ajO8!jMhcM zY5IAWq_?#BHumV|Y9BAaXLSNQ3fs}8wjsK`-XRI;{sGK#j7UC~FRQ(k8z;F{?@NSH z|7NZ|p67}zD}Gwfp-q0ZhV)DCt9S&4Em%|C%at~eM@wA9!wNk!l68-ZI;)YYx+|_K z+T?H6IGbzjMJwU$tS_N}WSpBF?GQR3jeKDyVivVUu$nkUM0^El=+&PO(q8TxVfjOsKyG_HLe{^`2|+gT1vGL3fRRi zJM&zu(&(-j4UnB;YuY;k)9$Xl13DY2A@rHR-tGeS7KC(UyaBBj2nToA7T*7 zDGQg3d}u(Lsn>e=q_dP|j{19Q{gtd^=GA5c7c^wqiG65JIGe_}Ww0URk^U5e6D>>) zPjGsaPn>m>l=0xoE)l;y)L8AQnVMQ~Yw;k8q^9c&<~>Ti=#^Vb;-_F^<_My_4agq!G!$3p{r-9r z+abQVEp%SVv!!HZOSjj-n$Xs3yq_1ph=o8o4V8HIL@caJVbgBu6(JCipcR>-ssIYS z=SFh*SW-kll@64PJTR81m^PW-vOro4QV^*MHulAt-G;4JKpfk*f*uqq?IWOs&)4D2 z>O><1B;z1m4e=HkBo-efH+%o8lW%VQBkx3>OoAASZVDm!79mI$8IB+|K;ov7@cJ+b z@uXWACd)RhnOe?F5>-|>N6X@1(_aUb-6cgXD+LQIAU4WA-6edTjdgP5fwP;!I2TB= z$p3sehJ9!7rhRa+gkE#p_`Ei=7Kh#QjB*f;?n%-`CD3|n95YD+ALE*!O$;41|C8DT{f%(h_POFJ{gXQ<8#~ z1_N^&PC1&)%-5#(M&qx~Yz>(b*GpijB~2wOY9S~$Mc9O$=v!MB{(q3uYN1wDOty*2 zH4$V&0ca;`kb6<|JimYgkJjl-eip32Oo}6i40NVc0WAc{8xf&%NwpFa@!xAy%0XB> z2c%XOwMs0+__)KG-sX^i8bHNf;l&6qLVa;UUQVxeVk9Jnx!2`o`%Np!hQSY0xHR|2 z1_xaZ{+oP|cXg69nO$)U(n!dc>9}~f&=S^snFOyGQ8YE>Vn*FVgNy6QKXh4IeF+8E z+F*@*~-4rGgS-e^^1&({s$W5WG@1lZbqw<})5@aau6q+NHHnR1D@wjD2R-1{q^(c~sX|Gt@am!MUsP&XI5C z+x8%`o{hM!t};~%{%T-S##`Q;tV@xNYah7thzoASe|xg4GIJ&<*mprf22^TgsNLW< zL~7Kp{&H36as8;bzP7mc#C%Xme`%J}djKo4#3h8lbc?pltU4P&4J~m+5g`PG*h{zG zz^PUNs4W0~0+H+%Mg=0!LY3<~T(W@wQdKR*n08J#Pqn1F3xHhqc6GCn{nK$^Fj8Vi zG>MW9ti?CSKD{@hnoW=r;HK}!M4?+B)0@T9Dr?6+!ZF&}kOu}ZrX`Pq`;7)$Y1O&a zwz_XAs~La%G4kW@P}?%W^5{t!Bo3xBQfj)Ra)R6uZM4GI+s=Bv4;L=$zVLGYt$xk= z4(LnEKNJXv_LKeVZZf4Jz$PWNhc`mIZDGX-5eOo>GPT&NB(i%qBg9WH>AkJ-;1gpP z&?q-Sr^J{Yo#Q_c)^xDMl}%f;>KzZ;iOqH_Ni@iM_{hTJa=33X~15yR(&c>8CQI}2JBc++;y^>PLx_Im! zZQ4+^Jn=F!U|cV6PUqz{fNav-0C&#<-+nB$YGF6;(NajdDC{W4wZu?zWPvM$C0i|| zUTa-N)$wN5i!x9FT*i$H#|M~K3~V1+kTQ&6chj!5>kZNt#4a4DrTSBkoZt6E5}VyxaFfa;+c zyx5d?vv_?i}fB%7WF zSOFA)nMHV^Ye<~dR(qrwYMt{2; z`=+4Dz{7^t!w^rlD|U7E;zy772&(O387Sz_pV?EwIF0uQO*er?w@6bA9NfVk7{<20 z(7JH$VkFnN>P_5&)(aM_-@m@9&gCd?ZRa{GclJ2K)rOiSc|wV+LEPxlFFYct$|`#} z7alCbIz;$4_az6#mVKRcC0}JBt#G1KvA!6`fM)R%Ca47rZL9v;#$o-nPlb?988g{Q z)T4DzIw(~XUwj(%?QiS_+)%&^9rBAu|JkwZ{irc|SJpEHHWsS(CpBnx(JQp6veHJd zoo}+8R)|uq0{8G9sWfKRg#=Gldpr6{NMPA1yxO# zy<=~5`}^fqbU#`Zrj}lRJ6T*lvAu2d+kJj63s$X~B;4A-b^6kiZ^@i3vLXFr#=LjG zf2zmViuFWMLcJ>^W-u9IyJeqSp%ws#Bq(WdN8E?O_r})DddYsCusyk>7@O zdUj`YoIBc~R+O?ylP{;NAv{#9L-=Fd$S}|0RZfW3MXa!t+H`Rc`KDq5dnUL$D`s6n=nClk5#lg%u-HeEjIngvD_1$V71G%U1>v9W4+3`LXq{g|j6N2*k12K2 z%f#;8#ew$5%5}DsiQrMDB)uzFoE}Navu|lf?(4T@QBnm_I32|I7?zg{ZV4)JNXs=wL{nRmJ?adW0qwL^gV%q(f{`jy zrtsG{6^SEbhDo0!oG;kZ7BO#D@31|5jI-`;V{O}4%j5QDhFu-d#SP$ zqg$!jN5c!#yv`DrxMx9f#I#=CKqy)Iti7|?Z8REP+gYZl{Q5TF+>*rlUENtm!5VbL znuToO>ao14a%+E{-C6l$4=_S;PQ|JH*uv^}(L^d0Xn~I2j7L^#_3^`dtLsdra5rX+ z_Z9)KNYGIrgaARN9PwHj?NKX{YzMArk!)glwOP(HwXJ%%nGrJFGE)^dQV1k&l4Wm` zr{yHoSf#5~%@z*;6$mLer7`5)BWjpn*s^e_-iDEMX7-IY+YHj?Q{ISPk|rq4>i(0D zI_d6(_@~G~UR4gLAYR~4;SUV1jd67zjuvF0(rH;VBWtP$dUZQoxcsgBH3jcqN9vEY8<8JAkTLTNbvQ8wUb-!ZOtE1P5}C(02d6oFJwf^oyEKO;_%O zgl?DWKX6K&p5v{A9?c2J1AFd+FjWPVzmd5-H(PJhcdwK5m8@$4k8XXQa#RUr4o0w&GS-`mX& z^G0tZ-sqlx&7i1M1#0bz1VjydIO;cW9hzLJp(z?v^me$StJZvh@#||_2ezgK6PQDY z`FMsmTqfi6*^k6Lk0O`c{ltrw0poP{X4`ivqZgH9^VqJ~EnK4!-dPZ!Vih%laedu) zf+!lpB?IpXKG5_{%5b{}N!&VE+jEXT;c36tM_jIxpsqL7Vkf8E>*A5x!m3|5B4(@F zdoh*mo73syBHI4mf*EqGyksCUL*G~>frU+v>-hQSZYKiK2dQ2*ZT=p&IMUXym;IDK z9&C^;z2-)B5F~7acQDPatQtfS*9pqk#d^|11!`<<@)MsDsa&P>|Hf6ug4Ac-%a{Q{ z7(WVT`dg~D{wgzV-X~d!$!8*6>!hKYpWEWq2-%!~R`rRmGeOz09OsTeCpl*aiyebeCCGFlJ;HQ z`dhP#^`;v1@w2Wx|%2>Y&NrZY)Km5hugM<0(Nc=ToS-t zoV1K73e)-(sG?z!s>#8GB;l--gtuEkEpM9_@G~oJ(iQ4pjg>m0c6`W;bVwKFz10>| z9E#s1GzW_ZH3P}`BRkoVZDchnm;X6g@)Rd~xnG(-8l*>)T12^zxLt_d;$}}wLNP(W zSU=lT?|d2PpL&aDr}ls=rGCR>;43kmtm6bfTyJtE!cuQuTcsF*jbn;(RAp=IQyhK@ z2cUQ8eM?Fvst- zhR1Wun59h)ndiR2XI-{ST8k7>Kb3X- zv8~D;_Z43KSXFr8Oso>;sMpd$%MRP~r@p;Us=?f+hR17$!TWun(mrbJIX9zu`nB-Y zdhs+G5kP1Qeu=nzD8>Ks-Fp>GV65%K!N;^GRkWj(IWYO=cU^qDq3Io66_HPWre{(R z{5n*;|7=#^ui9U?R9GwO@3!y*3K`~TRcPil4#}Uh)={`rCB}l>WX-m0UcFnH6Ij4f zkOPAJ6;W|IOpXRL2G4Aw82g^u|ET#si}x9Rx1@M*_lwl z6Q05$pkQb~n3)}7ws3**%+k7#{HuJrbNz#QV<{3Signt63hlgx;fumsN^`}Z4q)lr zCfbA{VV>9GuX0Lk1>|US8!5!u5Y`2yrdG=1HXw-y;Y&1-Ok7Kqi&-^Hfu@iWixcwQ z0RtF98;n}AQ-DM3NR17#h!*)aW0cU++f1)F z-?A0S)X-91r}uqSyHu)0)*HdihF6nRmG}!1&CR(539+caI16NWo+Ps}sL|mvXZGnh z9^8eRC7pe01CUc}TxxKEs*sgOAI1SQPX*N`h~-v|XQ->q0E^Dd=vk!$*|6@eh(s?$ zv6mF&SqXovk=9q^F(*J&3;dF<=obi8uaOzJvGtkuD7{%Mh&a`_eQKQ;&_r$41ByKM zRS}>{^}LPB54@Z1qEey#g_*F$Z?hicpLnQwy6@FD!tHgmKPH|&|s1c?z#2gZ&pVlX)oArp4dA)Ozx2Ba8%pP zg8qm{o<4BJ^y*&Fe2re?SJv_~G564ZFVsJ$Pi%-p4h$Adpuk~LyXDKzk1J8oUCQ?$ zF`?Cr-cxl9@hJXhlv3=$X;7LgOeUsB;Yl0k{Y%YK@ao%Zhs8o|lb>Q5RxzIA$j?T` zw!j%-ZjhUb#$vbnW?8uS!z-?vu4oZ&7{oLmG^l!7gP$ze#E~1pPP+i=-zgJz(R0+p zR<;h-z4A7uaQ2lpZH)b)iQ-A>aNn2aRgW{*U?x_a3?Y256Ev!Q^;f*xgU}}yRtKP% z?Z*|(vIDd2P>Twke%+?Yl=o_b-j_M|Z99)$u)NbVTYfNW^a&3Sov!h-f99E5yiI2y zo&5-6UOr{vc{{4Db7}ATy^aT~rMUTC@ssBx^SeF_gw&tPhw8%*GFOZAt3F)I&VpakxhO zA@&O`+wSbE4i(Je8pI|mF8Dg+3T_)C+{g81Oo}mY6F!SnbJbX}4d1M?6G^eWPu^0O z%b9@&c(*V}ea4HJPZEWXO;AUb#7$7Kw<}T@mW7z1{SYNtA7%lQbTXR-zqom{cJ{4o zifPZiUAD4qXi)HIZR}{^piC}0YUAaK1IdpsY?@n3IO9=rD8+|>XKFlgGje(Ej&GhI zcWg~IBq~*PH-x9`y9HMkWcO=xgrj42K6+{mIp)|0?jFUd)ZhjqLvTc9i)sK__}V+9 zxjUvSai`sN7{TP*v^w+8OBI8K`i@ya92(| z%3bdQ_`OwFByh2&?riqqMELK5d3BNBF#30D($&scEzjiOotZ(sEi&38;2Rg<3e=fFCn>P}~&T_9e+4hXxiMJ))QH|s;KaeuHcn-m}yS3`CM z&F|wjJOF&up<_O11&gJnVH>MmSAK$6?cvGkLIF6nsbCRn^A0Q{W&6UZQ*x1f6R2tg zbQ7e~DUMQWX}~KYT*Qs`Gg4B(yA4#dpfE|7L5!BvacCz;33GfQPY`7*d4$8SDe#7@ zCcD7JlZ#ClY>Bw}v-q6YQx>^$I-25mpfIaH9?)tk%P-1vo1SquSbiqW?vb#Vbe@N(duc#<<)k=Fus|TbfRqAq>g46X=22g?C)1~ ztyj4A_>~hhbH>-=wG>SmM-}7?XNm?I40W%gp2ZbZ&`6RzZW9NThLm5HRyOC-l^L~Q zp&(OIZ(~|0m91nonwA+i^l=Lrj)bm+<5D381cKsvEsqZOuU2{M4*d7rRQ)F$U>z`_ zfg(qy4oLQ21k9@b)$Sup%~bWW`UDA8R#_EcO;|o_(4M|5xgV#xMVyvklT$x!ez~!| zQWo;nUOF2w78b85 zCV(=4Q4+lD<}g$ZXf0m`X$~UP%F@{?!hjqU*3euHDn=X0lAbDw>lm+4m6WRaR3*2C z-2;Tt(7oC!za=>-?3k>qS6LIYwWpk3sOoB|dW+CF7I~W_1e*9TWb>C!@B*zu00?#c9X6E zyz=2Kd$|iPB@B9QXUfTwmWq2f;XPLZ$HM8lgtc9kSLF2+XRQ(>cl11deYqLL0DCs6 zNw-Z9uPIs|Xp7rtG+puOGM(xiL-dNAckyPm0Cqlta=)zO8V{uWNoHOSU6xn%36cNrxV_k@l zQ?Ev2YOs+|>I7`Y@xKHcTcs=}bU4d{#rX~Co;ad@r?E{V{NstSYIvo5dCR=69}4El<~7BC0xdNp2rtZS3(G90K@S!aBn_E(e@ zsc6fX*=g=8iSO=?izJ1YZaeE6i5Ye!B|BW(Y?N3Vw-~Q?#Nv0X6(;8lQKPB8Rxs`@ z6r*HvJ?OhL)~Lhb{urCjdO5C6M>2&dFsNx{iasiU^4*2vDl3l`_~5nj9$O$ENMpU# z`n@ZKUcW>PvAG9s=N0vlSKKr!$sf8QdFSq@`y>#GA>YX=!;eMf8e(t}%_e=MS@xFKdb?2Av z!Gphb??ry)CjaeqSLoo+-O=0ik>B;5bpyeJlC{e}cb`EH+5h*&XWdVKT)CV0{L^lW z>=^XMw|?sOGOvj{U;3%r@PYZx>GMBwzww~TI`GiX-NM$*kL~};FWi56<=-d1-1&R= zVcik!Q@elWe(NjGTP7#I=QjRd?ytF@dDgA{{MWm`_Fq46|5E~bbx+_&?oUi#_@3>h zr`=CJH~;q6CZBN^UU04EBmeFGmnVNvTDJK&&iQjM@Be}Ov5)`jmo7i^ zj5`oIctmmO7w*K^fb$R6e(b)!%m0V)$oJiMfAF`D?mhG)_wx6yKJbnIdfI*b8Bytp z$$W<1gKx?i$+y&i~N;jX?Tj z$@UZXmtKE|oLP9<{h1Inl>gjw?rmWpIQEm@xDWNee)4~`KXQNWpB5hJPCw`VX=qqI z{>@*yFTZ;4qrnrua`S$4+z!qD0QBA8y1&0`Y}>?Azx;n2|It@od(M6R;U8apq48_?eNQX}_w#?{j-EAd zsfV9-KcRdMdF_d3-MdDsA4k6UQ#Z(-0s9jli~}%xar%)*?+3se?A2%4AAoh-0jM0{ zvcFD$=|4sW20zQb^22|;{JDR;)!c%~;5H^5S~59r9ju#5E$1+Ln(<-FN-;Fb_bav} znbt<#2?PQChWzg=RElpU1rlY3__s?LFY&UlSIUomEDJil4m! zo~fQXzi6*#^kn509xoY${UWF)*Kr`UL?g|31dJzBEk^kdWKZ|-z!E>ds9509>n2{? z4QOXe!ql$OY6@8|a>DY(YD?TDu#raZx|!m%P%doIhLU_tQ*XlqYtT@xsBh842c~j; z5jxc9<>x?Lal6QnCG#$ka#M{Og$4>Jrh2$*)3SQL3f8HZP^AUBQ3E(SJOHXHr;|QN z8*1=DW*+pB~^{1)`UbR zK15&*yB$xBlR66GZIRH7v|V2!p~cSEza zp}tC5)D=H{qWCx&HV3Ty>@lI}l8lWj>>9YY(6aaoh!P88wF=E~u+L+7echq^YK6QlDSv$r%xz1_he#FiD<|`eq%4ZFSle-zxuo`KYaZ4CFic zI=U3REi1*9%vP70#b!;HGl^Am*RTNCaoA04PS$v1IGF7Yv!qlAUuovZnf5+5fwLa( znFNT&hmQBIvfdt^X)fN>ah+0S-Zb=yEfs6bme2$B?N#4WnZqt8Qz}TBsAB1`Zo8aM!+<;AKM$ckKF)k9b# zd9%0GxXI6);1mo8`WYehy0~>a#||*VjRsiTb<`4Bm2WOflRJgD5d5GW54Qo^^FxB7 z-@NsrP+#q1lMC;lP?C)TMTcs0+r=~Y=og)0rOoOp?OJkN7u|T*>xu#9(F)hPXN}hd z42nnUB_P$I{uOgMt+w6f4_lZ0iBiHLY z{ib~E*hJf8O5YVxfVHXnbxUDok1^H4xfV(p_hG z4p@sZ!B&urOC#K6$dt}%%w@ERTOsy#2y*#c8IJ=qaIz(GYH*t#SOL8 z5@Kdkl5GjEymbd>$g)_Tu}~naZ?IG}MUOl~-XC{1)+GchkdydDiw6`8s|A(C`N2() z#|XO-tvqS(Hb{~U@ZzQd>gLPE^74l7tg;R9@NF@DsQi->DRO)dOi1?wS6#}uCcsvhqX~= zusVkc=lI4=XzeyfQEY8$vQ#CQlCP)PVe%@ZHIzciENM2?N@-d-9w#goU0|%qiuf(Y zf~c3FB_W9{!x?K9T%~>LJPIpj1e;|(eO`~t>zyV*Xeb#bc8a2wrbVr}U43EdvVt#0 zW#@&ry=!DcB`2)>Oq00zp zN)SB)+LR{Y5Ws4VIhrL z0+T~3$ta5{9WSHvNV9}r-$t90@cynVsWfV!J3w(EicgVUp(jl=$NUBm)Xb7$L7D)}4V=Fs7byUh5hxdl zj69FmbR>^2gKOd=7ETY~gf%K`~S5c~p|M{ud) zn=M$_;sGLnX>kdxBCOVtIN4~JFqi^(Eu|T0VLUNX?L|o@$Ax%eG@oX4>_S{aN%@Qr zrAn|kEoFIXv=L-jyaEFxK$-@C0>j_{69m%@VSv^(#570bQ`WP1CM!Gx83%<3y`iA^ zjGzz;f&yHJRLOY&5K!nwQcHZ;tBavBg`bNN zPzx!vO3fyQ;1PZrZ($(hvmqGXNauw-V2TRM#h4xv5eP)p7^MhGF4kJyCP$*>$fYK{ zs1hg*s*p;Sbt!#lwOLY@Q#m0nL(_0XiF^30;j1dapdv^i+KNy>7ci>DEATl*7nx^T zU>(Y+Noh;Q$x?-}SluI}n$7M|iK{aNTXj7yDY0`kTqK8^Od@p~%|vv@k~w8d5jsD6 z)Xc1fNP0VI2*U|xMc$>vBPo$Nwx<%C#2h?FXs@_=cQ6waAN4&dpvK=$*((QQY1D32 z5Ruzs?W;u~uK@^lIl2%p%}$p!{RY3M7|jUH>;}SAsv=E3qJqVgCtB6jgKAHKyW)}N zg7%Kh;&v$HOAa7V)QMx9sj8i8atsZ|#WhqpfqALi9ZDnXOx~@BdHtQ7YF$?7rQ&JN zRR=}tAw*haX#iXEno5rlF0A5PBx5L=u`+v)Ep;w7;6`AxX(7aZxpEjMg*SUk%Mi6` zWxodz1M3MGZJ>_72_Fmxw&dKCX&YIk$=bm)f~<$lFaia zBfMNrE>3qFdy=@k6(v%nL^q=uj&C#VyU_+7C;;WX%dD)*N^dUt zFCtJ8$U^?i`@Z)+{=ui}@rRXTO$2*Ip2RGW^2c2LX=Bae%=E+0FFMef{^g8}ks2XA z%Shz5{+>6;2w*p8fo`K;m8-NhAr;Zl%fa0a=v?)q%MmTz)62o@GumDY^y*|4r^L}E zV!>UVUiSv-@mi7HCcoe?9@>#;(C?|M=u@3ML>N5h^EK}03fXPX7lcS9j9q9Ai?C4$ zLHK;5(|QQbXHxpzXYX0)GQ;m}!k(m$meE~*$KS}xiHEImsNqjh4|j}{Wmjkvc?J%a z3{}osRW;qGv%6;l9fTW?l~~(dhrb#VuPyj~S*2a-eZwCV{jJo8Xw(W6Q)fvKeR5CcxI53Go9X8R~OO0`r3F@t`ia3+J1jQmi zIp<{n%%sP^*bAIizTB`D7Rs}iN-ecr7uxgysD6kJsIud8FEJCHaJPyN-A=Ll!brg9 zjYV_til%iN?IQ@xUtzyA8ZCWF5=m=~i2I{O?wh81mz?#a4Dr}g_Y8=pPl^nbmlAda zh%UWfhYD6f5+yycO#K)-HqjHV);m(y`@`yqh|#~3v#Y;u+f{dim~NgCs&x(_z3Ac) zk5DMwtZn(tt)ZnC=LV41*F<+x<;trL&84*3jo@cunq>=#@P+J&4(O3O6K!O!h5Q@6tlGWfuO53d^b9}M4XP|;qp?CI z*Ed|=B^|#YOEo5sn$rDqUzR0}!oS>U1#JPrG4z;$ z0VF;d2gy0k<+0YiW^X%Lga;FXa(OWP&_kskuWI)YE0Qyr4`wQ(^-as@6$Gp_a;v_z zs%g*krO`gSOr;)b^g^Ef1`0(gtCEcj9Ml}ahc--~DLXX0?#^g;Rh@55J@az>+OS}f zEppD2Gyr0Gx(hib&& zcIt70tjFY;9x=>z160xN43y397N}@o$~opxN6E6DovNPu3Yus=*$Ub}Ewez6)q+yL zO(}@_;_T7m!|!2?DSAd1l)$`A6Qk(FKx3tDlf6Z~|KMdrL(j6?jv3c#dPYv#yLJkD2D9bLNzMS95wT6f7sWG>0@W(@qE6rQn;AuKbVGFS&d`?5!D)nG~^w4Cl5{|Zad(VLSQ80jbQ`Ke(a+oK|4M{ z0ELeISxr@U`Mw?Xl`NyQYgwARzvEB@7CagvT%1BGB7HFIp zdJXM*|))a;K<=m z3aB#e*CbhWrsj`-U9@w(BKlH)vNx`n77bi>hMQGl!gWAS>>LAJ(6(WNNcvbY5Y=(W z6L+6B`r+J>OLID+nPJI`U~ph}i%_!@pyLT${)CCSlgl6TB$~PNVV0z;iF~?JaL$bru_;@yP(DrbI$5 zObyaN{a-BJQXjh73s{3q?fsfCqP{ry*ohtW@tT2$T6NzG$9E(n>|eEf5J5v9^Rb&Q z7mSkFYG55>tFmtw>W$BwlwZ5{E`0EIy#a5eKnwhgD+&?37uq$cnr@RZw;t*ct)qls zjK!T{haW3((c^&P?OC6m8p${dikJyKu054dwx|MiO}IRCqc%?`SiNH7hjPk)ZYWb8 zC6-ZHZ+DGSP#rd8!8r_GkxeuYp@NS0tnya2~(fkvU|5H*^Ve&S-BSJZpxH zxr2DE1uVBrcOQI?q;iqmvfvQ8ZV1lP+K7TtEzukE=JZWZPc6KVaqD=2(PM^wRQ0)7 z3fD;-ii;L3&K?S|9>qS;H3#YRL5{J_gYp2~Mq(Jn%P3%VZBMn&4%;q|mY_|&J_i_e zZy+piOwDVZ*2x6onPd$&54o)7s*K^q?V1@d$wAMd^u$ccWuL zi8y0Q|2xBL*E@pmx^%8(kZ3TF*IFq9?j;yKF!1uz=kY={j+2%n9_n*5`>q zmuWAAkZqbB*fU7DF46SgK>$Nl|4Q>YfgOkLY=?@XX8IrT$JX&PX`e71AR;nS_*`!j}E z^(qfWfY9EV*;eWexpUr>kow0jF%l{$;WEP=t-%|KCGhF3s5)QLe&YQDbs#nG9@5T{ znX&p?77_OLb~`DhXW@iZdU{l>FI06`+`)=Wb+~GGMmu(o{qOM2*kF1`)an-^YbJ}AF7=Z7Z4e+*DH z>;wZ38;*6Eg7>wVwhf%=(hYzRE_-E#AJ z+Wk-KUx=xckPTEeJABOADz}aPXv%_WQ{m!p(zCt6&twPg41YGq0%kmT!i+XOm8>k4 z+Zi*4X57uguafW9)g<+L`e`Wm2nLkqjURpV>Fw#@RFpScFCY?}DGoT!ezX}=@14y9>q#0`U-{%M&~saH`BUW8Jzs!oG#+HL z>2A1T1zn$*XBQZk)UU>mWVfW$>^psK>GSKyCgBRvFET&>=6HJldFk{TOvLKg?x#4s zV7F^0T++N9{x9+_sl`JrgSln&$D_Jl1gKIEo5;%TEBw^Ytl!7sQucW9O;e+-5iI5~ zTm#S)%r77LW}d!Z_-E}D{z3)lU4H@m8R}q|H6``rCzU(cZ~wvN{CH(Lzqxqs@A*t1 z{bi&ke|=NlblWcUuA(18F9@P3Ip?wk)Kky~!;Mk|yU69{Q?}nnaA$%Z+@{k5*nQ&H z-z?sQJnO>VPu0Zf29v7X>NX4TsLM3^uyz>tZnno8!Su!($=RABzjA!2H68qghf>gw zrCacF#ja}t-TBF&o%A^7Hx~PM043A?do1_cUj@qedt6`tz!kZ3nC>1j_b*!}Rwo%_ zjD_8?dMtc&a<3-tB+X+LCbwFIZD*vMEm%@ec3a+XX{U2rcCz^gy>G{%~P&uBvy1P&qD=I7ApY{^Un2; zUygZZ{T2y4Qmp@>5OXd)48hf9hdD!5m)O$?-JP2H#p)h6KP+FK_z2C}4^;|(z9AY^|)Ujdw=IMztd?lBi z;+XR=w{b+>e6NNqDF_hWcynrD|D8kJYD&BP?d#!6`a|h^9R4^czC<0zgi&>d{UiEb z%O}QF4_tGNLwMNFh3`VcQWdyGp6yxhclQMM|Ai%}FzJQ##6FM>yTJ;i*`>6J_$;x| z=KXM$5f)Ci$t1<@&0f@}BBRpqOvU?+*L?xj2^w|AW;+8Ik(fA`aeB=|e#rmj_)WoV z&G>|)MCW$)@$`pz)&;fKX=rr*lk&Ej`MpqbE9ANk?epQQa5VC9r)wun)c8v}$ ze`xGj9Cyj6^SrC|WUZ-EyIIH4Gn=i;QNu=Ydw^svW)I`Hl*9dRcth|B%-_>j*9IWM z%cA%({QOv5AC8sf#P9v}hid)PdI);KENUUxewc4eep?7U~@OH z#dayW28@*9NZ7u}I^Yr(ZuKmxX8gQCUT3Sf65^H1-ys5H3quy8nCCNf7Gb zL&7tOBpO_AyYE@#n#1Vx2A8nDE|icfdi+y?OA5x!EtSfS1conPwW&=}+G z*w_g?@s!d(m;kn%>50^tsH>5PvL53@CkvLkLDv9*{Nmr7W@2Y4nGL%3e7(RWm#@YUA$xq}6(J00-)Y_A`EYY_Rn zEup-7H*k1)>+J5t?Zn>H@rBGQgHcehSU~i}FcKp4;j!d3H1*|YO+WrcpWTDa>>fW$ z`~#0V$^Q0+@)tP?o)h-_|H|ruD~L)J@iPMXDDf&<+lk?unBqtNO$ur8>DsLnzDh@H zP)Jd$k7`#u?&{DfNMvYWO5wMw9`cfdd8r_yYd`Bv4=4GW z&Et-38Yel%r8o;||1jgaRB;{5juEBJex!tm^H#y@Qq9;)2+DO=EY}%~qhZ%G=V3Nh zZ^oL%Q|{2?QKPBY@U@-NUZ6vf*|QGt6V(MOw>V*dBs>D(J{fKw>6a~G7Pg3fO{`n= zO|_ldK`k&%S3!^DaK@Z#JqNXO%F9TLDSo{_J3by&y4GJ8R`(`ARyyTDn4>5MCX-K_V>43Hq$pdF6AIVbEEC`P}{bWs{9MMX6 z(%XLIrHUP`?z8pmjW+QUa&7A+)gyU?fA2vrCFM2g!)>aIL+J7_X5!QS=ef- zLC^MD`P8$Z-F6+qEJ{mhW`0V&|M=yTgXoS@G^eEPK?RD;IsS;s`U3_@7vQ7*4-g*nuuKLYW8MMKWhUu^v}mEhUFfBpN!axl8oytJ1Q=y*zI-CWnEw6K)3!z|)5xM@nzcIDnPeh5u$(!}nT1 zn>(nwfQA+=(l&R`_nN-n#_h`Zrz1jYH|3(vS|ug?SOp-RUQ4&*xi;fAE7lNgtfS1Z z^fM{}F_NluNkp)EHHr#^6A6m1|r;wWOLyE=v2>T`6=Vt8iejfa6gZ&nS4@ux2Z}mbryuWZGFP1Y;yR zws&(kJcz> z3`4M&i%~Ygij$k&c0v`Dme(g&$e|JO4QWCPZenTBjR9$GpX;%ZC#v8I40?mgfejp% z&_OV(SD@n|7IJ}DNDq*DcYdbUq@sTrxqdpx6!OSV4K|V!nou(9jTXpcdxCvlVb<< z{l!0f&;3t20C;cA_|BuS4DMxeCG_QaLpTAnI%H{NV9cRD{q-fDm8 z6#<@p;HsjkIjNh@$mm8D{jL+(g*A?+XKZUmPKE#MsFNF+yU+jidmeAM9&|aUN`*5k=VRR!Ln;}6CEOSZ zddXCOh%Uc(Yz`eKsZ#>BJ&yij{)q?agNODXG?_!o)=hpXL}*{Zjc7}EQQqlAZeSMP zArCBhYLYHdKPVHP&J~MJ%KbRxvVVP9euaT8@#j&mH?Fnsm*@Qe7#<`;A=XbnCxe87 zj!a4(hT4Q2YPKgLB+zM(@NRqrq^5@^0zbC;CNb=p*Vwe!VX3&~?{d?8IaZ%08^veh z#m^f2TqH6%7~{S$t&mFJJp9+@Fx+bO8k|FjW75f^wA2L6>1YLAb#!5ZQ!pSg2;)|P zD&#&Q+3AdR_{_xub#ZS{%M6AEcV%T1XoH0j#C=B@2V6FLO}c#`9P+RR>>U)Y>}D)~ zjI(`p%N`V1R!0K?mb;qWw;l`x3f=iYC&gr|21+w+$uCBNAkwntbrA~Q$b zfg7eEdcJ+zCG1;L zHjzDYvy3-b19n9*+G%?woIk9NtQl{y(IuZ7{J{JQ_)fdikDvNM~ z<35j9&LrGVtm({DyTf7{ZRO@Qy>khZa zZBc(lM-XH)%QSFZ2;cNQSpeTo2dBVXfQ^(?4ze6(9EPD{vON*S4`W0gR$8yI9$s-g zh4e4I9?_U#W7+cYfV%BGwP)@uHNk$86~ATH37<#BHo&WoELJ&bPEi9lNPH7~{=X=i zIMyQc*i}D{BOYsfuP0$w4EDE16^6_M#DOx~84x@(c4H3KO%zSl-}W`z%fAs~Ws-B_ z^*==2yyHqk`ggLag%kyjxv*VA_3G~%;*J~wW&gJJs0ZQPl)B^X1s`Yzh|l<2&M9h2 zC!xe3J=9$m6cn|K0a9F&Y))i?9(k!-Z4w@cH3x9jL?B4xQ6GInw9CN27UbA6jg0#d zBjto4MfSAZ^;+bqwB^DiyiGdL@f6ziSxwzx!s8wCI5=Xr)E?SWinON3lmTr9QzbXl z);!Rtncxv-CU74bAQIj4b`tsw5$%xC587LzYh)Yo%FUSI(R&=IdQ2Y`6|s?7=bd({ zzu&RxeM2lhCA zg}YHhf!bC*t*s`J?0B-FUDxoQn{X+>3KJimv_x_;W)nmbsMyGu=a2@{RC5$pffBLS zQq9vriXmgJz~V6-8x2KLs7*h^S^IBtT153e5_qEBE@F=Ry2g!nMXob!0vZdWlt4ID zoJNWG6fM|Di#F02he*_izhycCFyzrBJ zhacXZS`#;ffTJshgT70Yn0Q-Qe$5N5i)GiW*L&THj7Fq$3@KHXL4bFJiY!D0kCQi2 z!v&>CNmv1GP6&rwr(1;152BAEj+1cn&)ZHUFSTLB>aoe@V=`l5?zg&8!`i*h6Se2& zsY{FF<#>I$?qYz@I9~S#dmCuqsLRVv&Hh|E_HeL@9+&ny3_(Pv%*N1~P9l%-2n6Vx zU|nlYjPt(WOMPtMn%}izDFIu%4U8n$C%vYVBc!0WqZ^SvaP?4~qeB62=!l4e9z1-U z+I5UOkbAqLy|+U&r!1Qg_wB&~*xGZQrO2@^sMvwUW(6H7rm!+)urh_pEK~=Y&-`g< z7+M(QM<5t)$yRl1@4K(+_#uaS4#$%irKTdmiszQ#VLly7%DfRaI!<|TY6cIT5Mkv~ z6ojqvQu7oCd{D=*n~P~jQ%{xl=mVNb6-zSu^uT>bHY^DtHqjnDe@S$DjaJ0;-AH5p zSTZyAp?0C^K@El+L6bctU=55a@5P@%>5nxY)FN*-w8;zcNh<7haMSa!{Z!lDp9EZEBx*K(+-R`y zcomgO6BadbR%qH~TmG=zA{q6(IAOaPn;$K<`D5BgfMRtZOlYAA8B^W*vX+3RKX(c7 zy}`^iAB@W`0a8x_r^gPFN$=O8Ngj`pS(3~^#jNj^W0b4u=Ug3 z>;P*APPb3i<^AcdrzbI@V)Y{;9`AHpbW#2!OIa6^p^Ip0mn!n4-c#DCW6NKMybfJ< zq5h7e(>Tu8kB>rRZa-@=fdH2zBGtoE?t81QR)ccc5BnRto*{K)HDLkVbT87U7{F(7 zcpQGz$t3n;&{SxYi0L-cc265kfE{P*ea}HMVeN7vOHU13PoptcFI>ns6>AN~AEKq( zr_hOtlG@A)zG#^0j~*@$q;oYBp&JOdN1MyND=v7an`f~%LvAH`!di58y+*wc*@tsL zzkKx+5PNR!6rd>@Ta!L-oB$62>&A)7bn9voI`+jOq3tZQ%KE|chIhVEXdHgA!+^OvQ@;cH@OE~m+2?^L{TkJn%Bqt*>R#V)P|4_X~Bl)9LyFd^u`_su1 z4VXaFIp_=r^3iG7-<@x%8)xUpK@NLsB!MG;bi+B6K#26k%3eMID&5Dsi9l(~W5pWV zE^OihM}0O5VFKd(H;y*%llpJmimV+RE?I;~pCq+G1KQCu=5Pzt%8Ns5Tk+_hNpcMZ z{*|UD=!!Bm<)MtDM_4L8Vw4FL8debCdycj?0G80B@HvSfxK(@P$eIM=yTd*@IZzR7 z1{&35jVzm$Agt>(oq3J* z597eG-^=dTy&g@fDSbijd1-&HDBzS$ZU{xzDwSb{P+g;<;B0mkLx6SR4j}9#bzQrLu5A6Q6 z&)>IpyOME;9d^)mmc>j*qXLc>Q#4KI?4(USBNc7NzmxlL)^ChG;=~?)aM&Cp(7-v< z34irDT16*fvRLnpEP5TH@*?i&O&?4*Lj`)saZ(~rA_Ilu1E}O^_MN>5LNXo$9}p9(Z<9~Kx|bR;6o}8#wIh!PdKiJu zxeyuZU`BZIicGV!656XBH>x>wrlq1mJAaWj{;@qbHmhlRf=a_c4q~_7?^|`>cv-eOor~42NX`A1&e*GO3@r&|!}r1=9~j3XS** zNpYJ0#W%FE8=0mCWaK{OKd}sJ`9c<{-*HS~4lhApTp(RTtr+odV;{!O*etEZKBKGL z%K{4|?EMyFrAXGI8HFA4pWqJlabpU~ns66<@F1N&(Y4hRM0aZ)1+4%&Rs)y_U;N0feWShhp z^vLs{Hmj{no0`1pj9Y><$#SyvATZAgN-VnsO~LKbW7KE)XpwD=-Hpyma#owmnuo%0 zE`W*MH*#*|&MY|x!j^UK3%Wr-|jlQ>LrE=^wx4->L? z-lKkvDtmLzvcKV3`@p{2DLb%F(8PR-E77k{Es8|R3%AJ%cMOfZRhXZSjJz8-!NU>A53>Z z_>j4y2Z0`z3$<1_9ps2}eR?I-Rb_~WznE}mh8JwHN0UwMcYrv-p>@VifOfFww#lcU+nldUC#ITB z(>I4!0wRn4hIRE|O*1#hW^Cgu-XxHjvFU2QDHI7Vdy*Tf{oW`R=qx8bl$qqICN~rV z`a72OJ{fw}0O!u#$vRN~@N%bP67zC?+;?B!uPo9_9HX@D<;YHPMhsKKH6}v%T|ZTx zetfk&=P;XZjL)t+5J&F((0_9TAP(njcSla1vYpE}lF9b$MDdUWN zY0_ROlG;=I=VMznYL+mhABIAm|1>_G9UxmB;qHP(bZsM$HuAOZINDC_;~rB!a1O&0 z{%Ih`uUU|e`u;%QRh;8pFrE;TwW}$xMAJat(-6k9<{9NjXqt{M7OH0w?*M7?Us?TJrJB0 zDC@Snu@$+P$4|r_k;f%DJ$(?K&wI60r%7f`gFVz@q~+Vb*d$~i zb}i7~&7sztS`rYTmav7;Q|OJhC3IMqwk9m=ZdGml>v2uwTWtoYo+_P<#B-aI3*;m4RI?$r}9XR7vTfM4a%fsl36#Js{jhY z8fr*#v<3~C(M_*VWlkw{PdVZ29~gpR^)5<-X$e@0A{Lp(dUS4vn1b}=UQA|9YrN!1 z+eJb{W@gGkMhi!F!8poR0(|EIJIdpfL^T&dhFF3*4Ra_q1)nEWq(4q@8i!1{NXhH7 zI}F*Y*<)?C7b{d!Fhr2l?U zB-;D}=I}?BVlK-aDUu>#XDX--wsBET>)PAG*fHK%;RBP5>dNmPsGYygB? zDS84kV}t{YLXb!5kN3MxqU4-{WviYqU@euBizn!|ZFJy{kYFEf*!eSJ_qd|s>KN@) zv_ELzPI_Dshd|e6`rua5Fmo-rr^VcB?ycA{g}!QGm?R zf}D%`t!SFfB8PUdm=lY8d&%J>>a;vb_K#_>ze>;atQ=|7ls6^1`Azo?Q~kw@P9hnS zU3Qn^4NO@Xkf%5dCRFg(L84cMgV7LyQB&6cAS5hPgM*ssGbc)4@rL{-r(Q&7<752b zQLbxg@ATnlLfH>*5(@mh7Ewk&4z<60qT8{TnLi&!uJmHcYf{F2ZWfc$T_42>>Kly% zIl5GGR9^7s+Uo!G^i(TMrp*M_O8U;({NsI{?;Xtym`ax3EFoE2CZY{}O|7!VTi(s+ z@PLQm02KM8vUg-}vdQBn9Fvt(f9&`7!&1v!pZj%%S8U+XrZovdZ(`KR-3owto$9sa zj(ADdOZnD|JKiRALY%uW5lK(KoR`YXB;+QA2ki8Cym@ZY8@xpHQnuaI<#6>ceGN1F zSnJh#A?_bCN_O)5mq&r*wacOWl{(|NCIrH)L4}TkiukKN?ya5)v+DC3`~9<#mgKqI z|I^yDfgJc<*(5?w7(@Bqis>B10f|)P%SO7K6UmO_0dlVN(sIugMZMDlfcnC{5>@L$ zXR3*gR{;b{drFj&bjoE@>M!c%N#$s`f6BRC%lOF{yRD~x*Qu@n69C>SslSwSiLZT1 zt5067SNK=eOix(?z=Ct#^W+JeF3lkP>w7vuTB;ppce!j%1MOh+ z;^BrJReu{*!_eB4ebtyQwDjh%3*`oFL3d!3pSvGR~MMUF&ZQLv{bAcG{VF?*5)j#m7Wh4?z+XECk;ql!Ras9>m zsH?n;wp8-5-ETi`GPai&V|uAmso2jC##uF1VfYWx(cYweTJI4Nd{*RV$EC*|iaUFE z(BDlLg`d4lvH7)&%%}Lc$wc?7KID)(Ccf-Ai`XC4(~_?qs~LhB*~&@_wLzvztqF_T ziK)H<_iqkjmMy{`!pc9|@i!=&>#MHE-;*0l;r78E@ncbofx@m~0|+*i%pZKK`%csX zcWQ@>NY2ObeMe%^>GaudagCz$iHSEw*IaRYYIo`T4<~)$>FE$ee6&4@ zJ0AXc&W3r?QaXCvH6@|Vh|9XoLN}(0O_%N&7U=srSR+b-fIY;F4h!%g!HIN2Ldtgy zr)!}{ZmqODP>DYUC++&Nz1CaHD$Zx$@*_USaA(gLJ=E}4gS(18phZ(V1#L+i{6Coo zC4Md?)^#R`zJj@|{A>sReC1SGvy(z6xaKe)h{V$8vBAk_(tGX*-t7vD1)3fM5Ot}F zs9PqFBJc-qvR2o=>jhlRw{0C`%YL!tN;^aKP{}YuVJc{s|H95}9(PZY%|(1fcx+q~ zly{@`R>aZJ>{epNYjH@vq%?)JLXD`>yw$z3_n;vbIK9SRVW!4tfk?`!bF;;n61BtzZC&PZrrqvu1Z!PI+O`09f1duM> zpY~uFGdV3T^nw#rD_HvpM#GNeHwh<|J9p$g4qsS>zl2im>H9%+;p8yG9Xmnni}E!B zagwG>|JIo*b@*p$1h2lj-QM`s@|m?4RHgAB2IK9<8iKqn{b;w1>^Y;o;aY*Ru0pd; z^r#cNII%yycfRn2;;ro={$PQ1e?JjDYRQwO(lT#LdQJaH0$(_SI96&49jIVh%Qx z9=~)TW~YF^9j87Np7qhOM;}ua1Ee4DlN6lUDic45P81h=&FmT1$x5JN{68;LXFY7u z10t(;GVM$QDfOPpB*R|;zu0&d+_%}ql5=9Myl985$+i7Kzmq)CY`FXpM@zA7-4z!u zMPs?}WCoFo`&)T&hW_P+Kdb7NDEcEu71sH^-cjdx3Vpv~@4)xt9BYEc-mw05a4>3k zPBcDvcOTu`7e@Gea3Lr}b+a8s5?5WMb4yAT9L%~<-=Ut3Xd*$_ljOs}R~RnhID*Gk zGI+f^SZYMuO6PhJy(Dgz^toSm+N#jGgZ<;4RQ*S9VUf21_e6Ag}I~v5h>-&YJFAwqFQ-86a>3nNX*})0~<}8-# zLcLm#-f@2&|9LwMZr{}xDb4@sk???Xe*2VZUpzC5|4eBf+%gCC&>t_GPq?F(Z1`=e zN1Df(=c(oMX1=pQzn#X4pZ)PuZhtKw*CpwZ?ungdwe4XPU3F0qzlsGiF<>T|=rfk5VD~4U-{ zcVa&)PJaqa&De0_U99d2L|-{H9M8R-^|sh@Z_!>@KN;#_Ci9D(X$zIh^iMI@Nn?AE zvgy$3G5bl7+08fLKWge99B>W~w_o{KtUX!MIoP5n#Cxvy8{<3LZY{jTpWZs^e<$$O z8&0e>8KV}8u1DmV96mUBxIP;FI=6n~F@9x_neaQh&9~zzu!7mWW{X6RsC$Ec1va+&P*mpP(ZFX`!PXy2O zQT1AMJe+=MwIlv#pLs9pi4(EjqE(=L$1*f5^56XObzss0qCxBXmpP#Gs|iL#)<5%) zi%#U@2iR#;SFBd|!{1NMG}15PCVvc#816UXezd!JW_HFit=T-;J3Rvb=@?IchEFP-k;!N41qQ zXH@MDHgzKk`6xiuueF#YwDSh$L3_ug3Vdgx2zD>O94P+ad?Sjyv7muUHLXtPLr(c;rE4W=c76Z;@!^-hYq-yYy9oKg zPT+b!Y=zf73qa~-XB5c^ZwMcKo@w&Cqams^S6=JwExn{!7|I1HOvLxL!RG#)O3sE} zyCxcx)UE)NoMW_Quj?#v)FtMqLHcI6o;HK1U#7JHVi?mH*u$tY6myKZ!; z=eUeSXV#KAuoDk1PZDXcwffxfV$V|AL@&Pw(58R2aola2#)J48RZb=@Bn5C@cyTz8 z#&2l_2b--i*m1;W5u{#R=_Q7{GdtVAMQQszXH4RIoXf)Yz<8_g+Kd8@lN}$MEAI}A zzLKV&itps}PM_a0q>Ar;L^#_^CDif0Ui*o41KKa@@CVgVB1bmHK{>e{2f72tyGP)abNNpw z@cH0{jZ62&kGpChdJxgTsuAZrgTwC`w!+~=7Z`2Ab6Aqg%g3Jv2TKqf+WlIhyvMlV z!@cOtY0?2-dCh+tPvmXc@WMf~sC5dX_m;;~{GP^}5jbx*#hCfgzI{JWD#v>Jr)pn_ zdA`6LFwDmvP9AqBCRO*e`^U{)r$$zr54JsRQ?*gxGk6uiC-+MmDo;&ZqfT@w=C-(94C2^Kqj0{kDLVDBX zJpe8L0j0wmMEUyh_qKhi?PK`V?_6BiI!Mk&)6sjAB}~}`;ql2Is>CGv(rLHvCVpA@ z6Z6~7V|Txstoiy$0)Fc-|93{*eAg#$RzHJQJTZCf9D{SnWOdiz z{`_OtTtAibZcpn6fkx`;hrU~@Yd3lhnm0~e{3906fmZGxw`4z?_?-;?4{jZow`6^y zhTTNWLC-Sc?bqCw*W-2b?DS8A8?O`>#c%O9CboJd;x#B51K{!2K|4k{kkS6V%& z{p9-hL%thfo@^|76XQISE5_@xL&d-5EE8V((pYDR-gfMuxHoP<*6S|g1)|I4tZ+4;}l1x_xfmDAa5-3 zVdoxr=0&O-@;H+NFylwN&XW`Sqj&4;?pl9CxPJ2G9dYZY>ri+M>cOLynKj76!l&?-#IozZ$@%O2h7%vh$c9QvWqNhF$>{+nrt+J&_;hm+yW)<$1AIC)$msEpRpnH-mmq(zM-=xb5Q_v2J-NAAQ-7!CT*hZkUU~_C`p?Rt z3;@0?<{jaPdSdi2l$CFz+1JmB|Jilzb3*d&;V+0@F8gAW_~zi{`R~{Z<%AXAwt75y zUsgjahmL&nMa-YSR1B})`+)aBFr0Efm)zEjVB2?-f^rDx8U+qfq4C?gSB`^g`Rc4s z7EVxH4jo>-Fg~`$$igWy@a^cx8?~vkPNKrmtPsgOzwYLX@wUH!yBK`J8`I=gJ3vg7 zUg7l0;MMuivn1=ei{Y;HPb^fJIU%JTs>FOciVYmQjNB84wlTpEYw3ntgNOwL-U`mm zZPJ&_OiQu`o-7wk-3oeQC*kuRP}-Pi<-1b%SMI+UeINC+&HYcw*G&L z-aAN=^ghqbtn`_cS>C($-cENI8SU0^V?lBH|?ylIk0@oWtCOEkmGxm^0XY8~8-b&U+?+$X+ zf>bOAM5ZzLoVd-uT@T=DSxk(UhMKl&RFEYeaJxPd_GG}DVp4dO!yh?@U!!{cYTcXb zo&93TI?52AwP`1)$bK>$y}0axTcqZM;gb5oKP#&CuZ&OQZCFObIgJ{;S;)2U z;K5vc-HO?-mPprA(Z78bSREs-0UFNIWY-+9oi$G?FNd_$#n7ivp%`!_qISUkQn-qh z{bo?B*!PwEe*eK~&BoU<46`fA^{I2eN5q4_j)uwe@vjm8^``;j2N6EFb4)otoHu#m z>SZ|p(t+&ZUH|&nN^W;p$X~VbQKuKl z9Ru-!iC-M3w;(C+w6hjG&0mnc<42`TkMmxa$7IE0i3a45p+CWfMbY_U>Fu#tH$)J& z-r2Li5)dfmK3g8MeFcBoo07gX{da5UKsGdxJV0lvkDQ?3VLZo!$SQbBhPfg4jo_EH zKKDJaCwj`}%I^yY+zZis9AZ0qX`+-1OJHWo9jLDO6}>TG-H|6tS%=bHHS=u;rBuBq zY|TCAK?R5MuDykkLgWjx<*z)h5wk5o#XAU2PbDU8H@cO&q(1+sh>C$7yj@jEj$1~o z<)JWRTG7S(+By`@O)P0PL=k}SQw z3g9H1cs8*AVr1fl_HpJvrW!?MfT;DlzPRcV$TX;hAL2C7#KpPmD#tV?_ag51JQ-U( zU8>hcK4x0o0*vqC#y`rnCa1EB zyb&TpX)tWR8+hu+P%&r`v4>N`-)CesX4EfXY`kB91!StoPZ_E5d6}~+xN}c_H+M}#zC3tA8xH`=bjKK*k{N0-loD^<`6(>c#X;jp@oG^asG>^=a8F%)V9gk9JjZN-J^%!EM;P@87!Pojnc7<3+Em&tsrp z>4JTD+14R6#RK#;L;^(SC?;rS@ys5XXl7wUQdPa_YN;|s5avu9$3?NN(|N{WaoZ$a z6q#~RaLY`u)m2IC(C9h9{oKG%2~riF!Z>JMS3*5TL_{^vuv4l)pbna)Ojrsj;|Oat zI2fh)w%I^L#MX82s7v4w$&ywvZI3e`D%uNU0D8(um4?OU>?2)ATFO}43k|W=TKit}MLjVwyr|S|ofF&} zrvlv(?VT+ab9aNM=&_I61}vOEcJB(FM)9sGX7>(qw;lkT#vAd0PeOQI+(B;F-`|)X z%0-SkrJa%8?4PLVnRgxZ%KlZalpw;@h5UW}iqn);ttC-!3ATpQ*05=Shqe8t1`jp- zC5r?ig0b^;{I^HO{w{mv$^VY+ljAqC7;1^ihqw9;rPKH9P_aAwJBUiyveeYENa~{h z)wUZ8`*XoN;!a`K)&7yyAxIIH#UJFT9rC;M(DGngCC?qm`_JBgrDL#)_94?TBbHdp zM)Z9H(+<(4sxKWsSv{Gn(a|!!981meb$by_3>hQL)3!393yo01QXb>J54$`g{T5%q z-ZQS%z3+K^k>KTDHRMCGk1=eE7rrAp{4b9wFJl2Vvul8DZY$5@l z6)*7nvyDQxP_X+Z6nU=(9I9-z4{j(P{&gdto5JBn-z#b}Q@TQ&_C1jMQbs*q@;&by zE`HzgM}x6l=jF9w*ed_Q*iT>d*987{W9F5>X5_e?KW!3CA^JfH(O)^wK>&p(3syRK zQeCg_A6u6<^!IOu%9{Ot?yz^N&i*w=-ecAfF%XPnR9S9lcs(srZj^TFg)T3ZdkotkLM~SK zy&bpPv53WynGz0HL1?RIYvJl?g*n^G)i#gpS-t0XSO)`j?xk31*P9+vG+D!z)rPa= zbIS`sR#}6i$YL9@t#wtkB<{(FFH6==MjL9n3R{)>A{BzDg;qc}ZYq!s1TU9ejt-+cT14ROS zR4gl*F5PIFfCT4Mcpe5 z6*L?@yVA8WR9C}GK}9di%FCD_TEy``bbvLiwg@|s6uOVaco7U&gKe!Nf06DY@PVPV zSSG*%>9!ZcS;#}R93vB;K}wk2hWeyyk1~5EToSvzXj3&n!&CwEBgASCZ+2KmFRzPN zvU<>(va~M-dJq9ih-x7HlPTWUXs6rUv`=sz=d>=Dp(|N?-?qYJ-G+r@j7CSwG&nTX z7&CE>!Bx~tgWAK{Ueqhvo2QSxBgI~G%CX)ErGh~kpH%$CC#T`MF~=IsGGJ)7>aPzM zqt@w<5kVc<3A)SxHu*EDd$GL13_VydL4l;QKRJF#2ON~MIJGYU3SZ$OQQ(YM;{c~p z^YvBDw-DP2)52K~l}+t(vw{+J=t2?}OAavJ2i>|12FYW4s zvNwpbu$C#!)+hdK;S3xDbrjl3hYu3xXn{heQ+*F!gDe&KY21WQY?;Rm@KgEJiLpJb zT|V#DyzIG!`aE1@XD0?O=9I%93B)J0mV5jK+xNR~@^&B0#20e%oMz(QPoOrnW2tz( zCwHi$=1d|fJFj=g zDk~e>4p;>55u$gT8$l{Zh0=-R%>k7)>1|#uqCWhI0eeaPJv% z@r@=HwnVzmVF{)7R}UuHd~?d#ENmKsWxG|MYlo6@u?BUhZgk#0fzFy^@&0zP41yst z;GXhDOH=dP$KTv2mv20y6PLnAt@@YOdz)6?J-mbBpCH4>Hx1#pPmX{9aMt4sByWBTipS`h0e0_PNOL9JaIkocy#km@xd@cLSn%3=JIN9iY%g9Ply)VN6Q7{^{>_jle+uJN&>IFFT0cN6=xPwz-9;Z81d1-7U!WEC>o( zB<~@90_9&g=F&Aa=V`q=?RS!5H)1c-oNieDfFJji&4~Y5v{{lBcS}0o>5rZ25pHBe zU?;Bw0H2y*>1ws0|4la1CC)>X{=jO+Sm&*X@5)`ODyk=D=Lf8?%RC`z=LXKgkBk08 z+1maO;Z9P433sMmuB|WBLwE1HN=l;t{|OFxP4Qyv+Squ$C(LKl-TbhZHYVP8T$F5X zY^`~w+J6fBxj5!dJZFLlNt*U@Ke(Q||Vj_QRr^#@9S**~dlHvMT6D_apeD5MZg+{#}esvkO zRC1jWCJn^grAo)F)q)b=`9EvztzH8_0XVcdc?hwMcS~@~d*LFRO<^Cv;C^M>Ti@C>>KdWeT~9aAEn1U@Q&DJn$TdP%GK}B z>8!ir!THa?9z$QM3WmsAV>NqpeN#so8+D*$ifnnSqmHABl(g-QHEQXEYn>dl)SpGB z?N3_=7jUn3*c<6nrRRbT`TCc@5qUyFuRIZc;fAP1A9R|{Mhe4efgfvCRkw2}iTBF> zAHTz-Hth06Iy47vAi2?c)UiZ;Ry8zv3XaaPIe*ooI zJ4&|(c+<}CWtUTGa)T`Fv|2aPWT-r(*S_06fa{5p8sWl%-%2*!7p@LHRpVn;o2T+d zOUl;}sHH=hSeru^oQ0hr^F=i)<+AOtvkp5C{C#U67Zzd!)3p_(@LK+LmeA8uC7MM21dMS+wTs#$VH|kg-)KHw3By;#1a7)NZELW9`gII z1^Fhb9J7`Q*h2G19X4E-QE_MDMdg~_Yk2fnNjX7P``OIj_4FTVmw`7;Kgs`)Tl<1Z zjXNw}4vWZU!}Gc~EK{7CCxjMP z%P%%az_H`KDv|GpaW4X95FZBQ5^*Jt?^t49DLrW3PJYju(p+NG?{EHXC z`Mv&zZ(3K-HLGm(U??qzZue=ux;xQUUo8iIQ=g)Hp))?W@9lu6^4g`jb$c@78ypJM z{mK9wmbkO=`Sx2s!0|6tcG_NdPP7c!o8#s|pO;gi^yj7@B>eAHKJ{M`@uh;||0+cu zE{Fe}do0MF?JfDM*(}tHw8&u(H{1ESE0+p=)D1XCW+|qn0*y6F!79D1ds!%f?_TF# z{?RKfuD~=#l-6pE>W+|HE@8KgaBq%vO!vzgXyKe22<3mVBKj1n=cb^@Rq+CRI$b>u z?EK&Kk`lc?cO}#uOTFG+r(27{>v!kUCUJysm$d2eJ{~FhA z7Yy5mWgq!oHx?cFi&T0JeT@3<7yswO%TndiTPPl#z5Th-OoNI17E#*$e(dX9pnt~a_f17+8` zw&{^BFAsiy`V6VME9=9<-U!P@>aQ?fG_~V?k{e=o@ha5yzD`hnd%KTDC3LU_Vm-ey zXA<|Hy-d~(%Xgr+9LerQA%Qc?yBj%VEA(~viu%Y6N1v<=H+(zN@H1rMla0ijN4ley z^z&P-me0tx!dC`sN<*!~O*SK}F)?gtHcemZ&jfMZ&#JqB7cd z@`|+-$_H^!N`gBMA;@yXSWXwwTh=2_&GziOtXMA~npUU^q~&B>qQ(O8(SvCY{hicD z^8z;@O1)ulLc{KyYjE~;bxtkM8Jo|AiLVYUg@pQFOpfGEce+~cR)9HD;wqb(6FX!~ zJ+71=mYetq`0~IxXV|Zpnb*iqr-t@Szf;;hxDmi#r-vfZ5tZvdKmO5AM?N7$+q&n` z?K!8jAE&u;UTiX-vG&IGU|2nQhR9oE>totIQh`^mG0dZw%W$i8yU$`U zl^&*;HM_Hz)VOhR$|p90 zGW0m;)H11m%jwtpxADke?CJ5ccm{!w8F^lCU$BiKSL02azD^q;BV(21sY;4-USDiB zCw@b6=z9ZqjL4nWKMxQx}`&eBT z3sq^6w$$qR*j^WLl&h92KP@>X9@sg(_OzTlBw6XS(Ob-!+~F62tXKJ^$J(?z63n>G zG1yI#Pml3$=09oG$gNA9L7PX@6O5lKmjWLH@;;Mw**|k!7?47j_Su-Hv>YvmU=TVh zsLAT&pE}QvwL9tmd?!HByraQfqkm{50%5B6%N~`g?uIz zIDl9Tkprze{{plzRAM^nQs2_rt_-o0+kSBNRg1CI+b%y%EuujDCS6>CWvL7MgU&3J zs+Mc_t-ID{+a*q-{YYP$$OUC;i>;M`e3X^`0VCUzgJpFPpmsGn^T{n^raXs^;U^708l-!I5iVW#~Amc zvm0$D^dA7S?pl{DDKk{_0CJ`Ib*+sd=Zx$m!>z8Jjfj^};Q{nFz#w!MQ} z`Y8uPW$AE1*3afo9#5Ao9uVXLK-Qs`#XGj!r2$6V6@M}K=QcwEn9eWJ+&|V-mZWBU zt!Tc;WtvVAKi36g54XRPDOx>b-(1?-SU)Uxi8kg>y_03|Eva4V{jEG4OBG;!djG?< zVy9jlEsSqPi(fR#E%&2jFCi{Iww`-HclBRuG7n#Cng=@@azcgFV0&_BQrF6Mxwj1R zQ_43EOv}AnLNon>wz>Mn^~IF~Ch||9mR!O%5B9hj`}B_=3cC-FM{g*bvEP0M(|N_! z{s5-@`$L#aBd=r8;!|h|lQhf8{a*VZ+b-ko)kvor@sjCjEOSI|jl&1;=OU%7DdgfoRGs*DUWf2(KE_4^oepdwj)Ighgc- zX%ZdcjYAh<>OcDjz5x>AYmk7oGz+JE7I}P+s>TcTbKOZL&eT~tW#gZVW2@CtKUBhh zu@<(4(D^2-+uPO2E*8Og$ZxX^90|m0?axzt--$(ARSc`~+D*8HO!#3e_naOPhcR1w zq{_s&9=_tcL1~jrfnb=w;`Y`j=lY5>DNm(@Eb#yu?p(*V&zzNEp@-D>4iukem0G#4 z-^`8A79+~OeL=Yf`s_nz>aBTGa#D|KR8c2wf*NSDmX>@$#4>rgN-%51$5^q~yJ{qCJZ+^KSB$D~FiQU|S$c+E| zhTjv%9a!2Lm>uyilWBrakd{^nXIP&f>evH!Kh7jC=dTY>e^i0#H>CXd{+t7*-S+1l zM@MAR$0-!A@(+zmP{|Q=Jh84Yx$WKQjf2yvjK6x^z>SK#)_)w_({(As+IHWnM?!yz52&fMdaFouXnh$UV!f{e2On#Rs8Lun0Syp0GPRC=!1UDn-CQ+6Ct zcN(>xRX^uod4T6Mj4p_(@bq{esmkDqV6n==LqzMYTQC>bXp{E7^}J+}t-x~bCWKv! zNkW9HD&+gAF4RzI2MLd+kxmN}Y)oJaT*DZ;9T{p#W?gBirOXPJV7s2`Y$H)>S{en1 zQBQ63;F^A;`viU4$4~Z3AVM)fZm1X_q;egwkwwvf7SnOdzPG<4#h`Mwy~E}82;p@z zOg0R=iw(&p4mx_EONGG%)Z8jg3?PeQYhS1<{D&gyi!o$HfdpoRx}sdWlLyyO<2^Lj z8^A40pmaPT1;HxH?o{2NqMQdW=uji&Q3jj3xaUzB|A5~O^cI2TL5WPIPp+>(cmRx}@p87w^`R$B}*HaE;dJ z5+XR*s(}#?`%}%@x=w-bw}K{ewQhM-Aja6Oy~$9*;2p4YBwHVJb9a!G-O^P2kYO$F zqPU~k>QbrMIy#L`N3}7RmG13sA_B9OVnWUu0dFn{UXRhwMBGid2up5Q&8`z-$Ln_Y zNs{I_pZf<9%JdLY0pR58RdgnO6(8UdfBQSy^qrb+|$GsX(Igo{iaZSn>tVZ+}0hgMyI`ABznz>OQN&fv?Uj+hTrl;9d!~zzZ8qy=J)@~E8QWh&r z!m0x5uys|^ZKedE=eb@a%|}~ph7XGjMcYsr6T5(LgQ$>TLK--} z0Ccw8ZK?_`HO=6372LVJ4h8Mi6kZJRWz4xzmdUz5sTXoUpy1FANQ7-A2+)I~E)1o5 zj<~3{1=D7w43f7);OPtSEvy8AWBNWo*`rM@073RHM=4rbCBaeHD`76IXF_8nzDtof z<5cTH39(VQ#Iz_N-Lf?tXv--o8s>(bsBZ57K8cFe-DrOv6jZFNz>EnNp2JYw?X-3! z+M=~d(#P{;PjhfR)=_X771owilE$*pEz2oD=`*)95<82@O0j#(P^Hei)5LhxO^P|@ zDF9t7?M)%^vlIZ|>e#FE$E$ihBlP%aMl)BpnW^?e-y z_a_6%xb`*ORu2obX2%e~ep*ZU&TT(3Jzaz-9zX=+uJ1C&j5F<$q+_1Ux9jS#T%AOT zm3G*6y2ik6fpwFVb_8QfgPC76B)gPDM1RY!H|k_+riexuak$V-pdDlu zA7l7)ic)rRE&+y!15L9+s-;%}At#HypkyX9t_(M%uDwW_hGgP{Q3o zGB7I%TMCc9RD8}sh_rlU$HYw%u~{O+Dq=Sp1-GuaAC7n+s@6@I5qn3(5;RusSvY+7 zrmtx%EJge?ZD3|?Zk&z(OQSJQ4O%i6p*C2iP|h}UrXp()Jc zRU70H&|Rdv=5{?il$a{fT}!=N!ld}B#Y&=hn zKg!SkGoKTZNOo98P8FTIIdrzZ*j4MSE9xchi(SD^zSVwl^6jx*c*gQQ z{!uUb4D=#?liWDAo7h z+AU1oP>pw8FVqYBQr^{AjaYXI`cwZLb!)J~v(zuuv8xUDAJ-1?V ztJOcF+?~8jHanu_VQ_2Q0=B!^_1}C_of#?@1*kToJ-czF%pu1U1=!%ySKp0He4?5^ zHOnVyy%mDmBY)bQ##XoP%k|5dbKLa~IgFjFrDvDjKFq|o2b{6QXY^`6-K`Zl;F?Dw zhZE_YO}X~p;qmHBy9*r-TpeWI?1M^Ht|4E|{PFV6`09)2Lx-g2>!Y3jtjyGnb?oZk zR}lF82G@P%OuUTS#f@ilPBljE9U@XtRj{Y+J+dCrhM%}4$NI@Qj%k0MpZBhH-r5;( zL^(Nf+|b=Oo(u$~w>p2x$zSS)Um1`S<)DFB_J7SRHX!Vv3|)0q-<=bXA2nhjn>9E8Te`^wflGE z_Jq?aw83qRzvG-5b=@O^L5_TRtrHbq(Q|U{+SbIElFm`h5nRjm<*!H0x0ZE?D0@zt zv7lVrM@xK<)B}g0rFwynBzytdyw~e%kR3(@4HJaiD_752_*&br!BeUW{bF<3E8KA0mYn_}nff zO#%)Ezu>ChmqufwQu*=zNKu8Ke5XD9=@-V%e)yd ziTL#c!4sEwBYGmh(9KfTBc74q!&4O|K0X*MZz}Xw5sLR*_^ePkdHAe-a65Lro$f|Y zN9GK;F~C;+WFCbchXl60F{Jq25&~BVt_pb1rbTeL6soZ$Jc^g2?iymX?4@@Y@?`a) zMu(Lx-%$d`m|4ce;M$z+|BMJjxIWNeo*re}xq*QXWi zLuJgoTXL~pODx>t8_(p$<-wl>J(aEIXhf@a&Iw7MsBNKTe3}g2s4I|#=Te11Ni|S+c_1Y4P82P4Md?_ zV5tTh;B3(xdTuPFe}dWLYvzH&>P-gs?k|!lxN5kYdo9)%?>hc<=;yngzS?E}Uj0xc z3r}z+a`~f?9sid>Xv6w5jD&ih_hyf@;DxovkzR_`HhVv@R(Gt@fngI{2QWAQFC1J6 zS_iP-o5{CwFg3;%$rG+D*!)g?4O8Za13TpUb1F+db$rD1^TMFzN;ES~5ux$+aE^}S zm!AUR6!+J#IcL!W)JnMz8|aM$m{y(&hfW6?j2D{LE8*}jN(aouaZ_@%=p~&MLRHdn z^GUs(^oXk?Gx1j>6n=SyU;7BZ{&sipS=XUv7IVqU*ptP%-O2J`Y5QnW9qtQi)xUav zvamn5S%0sx{bbO#_gnG46NH~i*X4meX|~ZXPo%%FnfmS*8qL-C6ODCaKE zj6708Hen4rxvh-s|2U%$9yo~vDFcvG@|&LZ;d1o?KU(_SCqEPRqc_IMM)c9#?r?={ z%nTiOe@gYS)e3%m!Sg*`{h*7|&8>fBKbstKmW5vt{N$CwmQ8rg6Lda1t^$6#Z^=`< z|3yGSCFf&4^GA51uY(6Wm0s``pQ@1iED=ww&aK1k zs<}$M?=4zR4S`CD-#L4(^)d?=d&Kj2cDh@$+y6WdK~p&!BYiRnR+>xWot(EyRbGN5 zWhxT2eN^3e&}zInH?({7DXbXz!a#VZw~T0;%w6|DTPP3jmfLo2eE#Qaq|2wq@Vbxx zbbDVVAI|IyHN2Iht6XzpYFG5i=;$1gun$UazDj<`oe18ZRSVy~JvhKD@wFexrgHv@ z`|(~G7_Z*&_yf+``)~j0^1vNRMB-@ow?DFhtBNv(Et zaKC8pvwoVi3Ke@RvN-k0wrTkSe#6&NETr@LiM>U( zn5x$6qq}pRF=r@yy>8TLpExHGL^AYPOSu#z2{du#7Z~J@k*@m-mS2Q2mg37Z$I8&5 z%+Fj8J;kp+4pchr*Q*|>^o2&&dcIkH54ngO6!!PPNLsaeo}G*G@-s13JjOKZ9lWF* zJQw2_0PjifQy(tEw9WD{BA(iZv^Z@WYxhOQ{J%_;o0!9;AHDppK49CYzj4sF*Lg)Y zo7QsxlrvP!RE^IyAK-_B08`TP*;rTbt-=XaPmE3uMg$tk|LIbZJMoNa{6wg zKGBX8J-ekuTDAQrTviJHcdXef0VE1UM(hBZHtPB47cG59W)`K&$Pa(|b1_U5;KNCy z7oITbuV2AmzWPz^5#fEZv!hDi&X>Ww7<%pF*jxL^6i`|m((zv=eLN@O7x0UL>=Pof zSS=OLa?LA~_Bir5@z`a(erNC5r?V$6HqTGp^i9wURvg;w<>sFdCDr)?}x7_XlsFf<4$*C$97*1mUbRY5!76ilpMuY7K($v56*jMq)Sj?cJY(LC1=p=4Q6Biq61BOxbhizuQd(j00fl3UFf^nNJXNYS@2royTEDG(vbmvso@u9qAP6;qxen0NP(&v#e+Qbnod>9H5Oks113Gd<<^?Cjc=Nan`ybg#4>msTP# z(F@zqcwrmuP5jze^ypmOmOn!e;5O=KVwszar1}S*fSixmr+*In5lrT|S4%X|=pfc{ zqQxZ~C0S*KGL{#g^%1zk3l3i3%4rz%U8i7W zKW+MIf*0uy6R?|ifF5>B4Y({_4Wx=3g*_qx06C!-n`t<{5AUl8X+apw_ZUI7SH zMFGT7+9=}nE(cI1_hnp{Kdke;1LoyqX##WZfo)u(G1a0*X^L37X{97i`5XegT@aGv zr)Gh%ZcG^tk(UYHr-Nq?(Jj}?PHmBvE8=y+0i(NeAUIq_FuRJh$`uc|m;t>9?9dTI zAqt4DkX-Ne5jNbyt{b@j7|f7obvP~alcJ`1B|EO;C!BwRPdu&18MI>auy zdkB|LT#Oy53Ji&+^T_rrL*b2NtwnV0-F(a+aWuD^!jiRtyE$02$7U4Id7#+zbju@) zQl3U>tDyQwESzupLx$$ru>$yLoH1Vy#gU@AGs2_d=A02SDmYh++xxYCIyWA`g}$q6piF|=Y;ilH(0YUj{0>nh6MQ4qRW zao6j1YIA*P7AI6DQagIZu6Z2~)&{^JA7A`^bAB`t zXu1^vH6QjJE1k2AZSZXyIp^&NKgLz+_1?IR+Vm^ketcwF7%uZ=WY>NZXXF;=2Q|i3 zX{~YgMk1iRKWc16JCa!7fwIp!(9K^0II_g$gDe4^$!eeQR^QfL&~`ZDe(^EZNF0Wt zrVi!&m4Ismjp{G1(VvWuq!PK67?s;37U{KBN9n-PuiV84M0|p2D{FjNZWhfcptQ76YGR>Gw#=0+Y@FDf9QS$1`T9m^ z|5-oky*=t@&dVqx6>H7?HTPT^m>I*Ogwjuun;iXt)oH(SP~o5S!8-9=qxnB*6rm^g z*Kg*PDu3X653T*V-Py6P67~&yJ#gkom^5P1qYYOV`kKZceN*+Pxn{w$3+#=JK%C(o zG=0zX+rE(Y^Lm0(ieVG=Rw8AFzm`3kMsMn=k8?eKaii`Wy|FWlEH(~&&7%v6#3`%d z%XJ>&+L{pkie>%a0J7FX-D6z%8)^&F!Q^Jt&WH<4gQc8o?&f9}U zsj(hdmq)h5JcYZ)RB6W_Rm7-4p|<>KShE9SeO zlMn1l=641;A(J}$u?j%C1Lgmg85g!Q$tpjndxYv{u-MyjWSalfWqtfXps7rw)}dHS zNl#_1OX>gk?w&*6Q?EACtoE{2ByL-?h680F+bcDlbg!y|^RZ~YCeJ!>D> z+4%6(XGVQKhl36CS^hD$?Vozu?Hx&Iu0{UyDtI9KRI2foDYq$^?C|pjKkjU zId{l67k;g&AKT5lcV4&muX!O)CYBgjXw@eCy}L2H-CuV$3=PiJ zxNc}bN7W+)Xx3-N<}_i-jebciJ4?7h&RS8RM7NPqVE&+Xp|EI=fX2&rHPhEmiU*XK zjRty6I!q{@bxX@iINhL#;~Kwf!G-ZTA4vtR+9;9f>YqwwmWg?Np~$co8l*>^j}Az6 z6NYAGz;+04hBGDH7Yf3jU9~xG_|3+!(@hu6P;Ubn-1C%OHf&z#y5~VcuYs%H_zMN# z-yqFu61nkgH+vMTs5T2rO+z8!mqbrJaO0Z)9%w2-z~^>c!UBBK3E}?v852bx?ZJ@J zAT!&fQSP@}a)BLyAfWhEz}~?9C}prt#A3lHG3~4CT^iMny|u>(uab-JExk3+7R&Iy z>lErsDp4p+Poh{`Om8IR1-b1ZC|93f3fV~sEJynzd4Q14!7SMd4j&(&o>DPo$zbi1 zZMwq}{5d9Q<3w3|0qo2o-_-TSamJ+@m2W*#*!3qu*~BJ~`VVe3lY0h^e?}S9&sk0f z|8bFh`-Ql2|4P7q6?FkbLYaH8yW03v_V(1p=35CZQQ)?PpjgKp+SGF6pbb^ zGg(2_jrCxAf8nn)!nH(_ZS5>t-0tU%>vohanu-$W74_vBU(;=EpQ!rp$$MJ6{H1J= z9nYty;TxwazkF`1L5=Lmr71^Y$lbS7$YLX4E=-OcP}`WJxr^+k4(nEyb(-je=6RW~**}b!*%EPVYG00b_&ny@_==4V?~afYmM8W1)y4ZtTF1*JfgLHI!la zCp%&3FgU4v$ZnoRl5FVGL(Ay*eoaYqDs9Bl6uG@ah?+HAJ7zwrwV74VD{#~egO4!9 z&$~d*G%}cT1(SyDU-|~Gw{y4Ze7fvrrVEg%Ua^kgiRWy+m}273>g}OpuRWlZK$N!> z+?@fy2+j zE=w97bhx8=KE6Mw4=RJ=`-z884i%we`5ISq(jU8Ks)12u+_16!3VU|I*JY;fREzfi zQHot-%Mf*5&Rl()oiN7o`p$&k{rJ-MMi-eIgSEb1{=D~**`SzqTO0C_F}qOkd2YAx zBSVsx`uTLTO`8KlXy=L%5E~Zz=T9IF+TBihd+w29O1mg&=JzWEY=daQL5IOo{*c9A z4@nLV6pUdQGX&ae)vR@OvgZTO#)N`cvlfVIAM$30w)E7O^ii^o54c-|t2K;AlsYED zO|ZbMq)eLzLu`PiLE-eJiz{%s2S-}6TB^63t4K%fP5D~Ik)GALu|JPfrxcO#vq8yW zEt*C0h=#jFUuoPZ(3qL?cBo|D!!RMJ)2XnMT!PId$@+})Uei$!y+%*hOHT<&Cv_bt zkD`6_ZobjfokKnE-R=m($e)23dE53 zf~=|HI8y8ew5o0y`f=U7^b+wAYHyzKov{RRyxi-CV?D}#6Jy-IPGiy~h-VAnU=Ynr zK1S*-dr7t7gfkC2x9ua7?_;6vG_}M-`MZ{WbHfOee@{sEG_qvjAmSLujC}&nYYy#l z-LeY#bz7tgN@MOe(Gg)2S1_G8kzdNohRr)jxx0;~t7J{sGMd(;EtRJtirN>TlJJ1x z8t%oc>k(zIt4CJ|=d(`>#sB7f>4x^sl!CRd?O(g~50QG`S4S5{F1*=jIBrb4$Nr~z zqW=H=ZuR<0r)Meh=tt=NSC%z6P&r-H`PPE_I{^4T{_4Tgr#4YLnOcPU_CK{vJbM41 zA5MUsK`|hQp_dYbC0{nGYZC{~YV^CDWg+?lpslIq!X2g`B>nfC)1y3xdaTbIzdgKb zme*RpbYzZ|^41mDy`S3ns~_0I$;i1M3CKA|?eeFsLrW%m{KyAdzOPlqC)T;eH)rTn zKZt|ux&AL)S`H4-T#mf?dEm+zY=%Ic?b-v?bf*+M>J?B0p|0>FFoVnaNwAWnQ3fXnUULOPA)uBIkCN%e&ry6 z_xn5SPU!P5dPsG^TQiG~Kb`FF1}>anwtA+mfrg9sSn=qEm!|M1gw3=88s%G4A6M^t zuDnv>G4+^rbuaenQ?;Xqfu%jIt1(u~@2-=@CK{u{M%Es+ue2k+mwMA02Oi!N6I5!e z%K2s+I5pz_D$y4TZ~e9Ww6)7}=j)?|$>+UGOa$1l#>%F$W&3u4r^c+I!uIjfPbx!5 zICPXMAGYI*$SJ{n`rH13(VxqNpo73&*S=?bz&|_ndGw{DFnZ_k{7ZA_)KT-?=}BlH zx|9rsXp9J8xjT<=a?pxxBqs~s8MX-vtzpsSP1Y?_n`G^NyzWCQcT;8B#+db^`)4b^ zVYN(pkH;l3A{8$k29B{`7z5X@RX!UV^l*^Y!48i9?60Z}mv5E(@}u275S|!+xHt9Q zqvhV=4^IvD`8I^<1IwcWr}5jC)l>bx&!!4aWK~&Rl5$IH-wr-Ls+sX{+W=IChc)f-`lpZB^IYoK zQ0y)r^|%KUJJ);vW8LHS58L!pt$wsrnwf7tJF~vZe{o8EMF=Yj*7cJ5VttPq!O!Jd zwV{2Q`@+k{qL6$iR#e?I9s#_)C+ZW9`zF(OGD*5B^}0@5Kjh{mE*p{CMF+vha-*UefAMev1lRF@L$A%wfOx5tF&b zY>k}5mQ&|2zp2&M;d7*&5m|8J7*0J&a76m(m5-QMw%Uo5o4TuuI$0U<|KIn%&-2Sj^N%pKPEGreu9o$Lj* zSRMW6u#0ON3%mASZm4pZekMCOn4`Wb6NYCl&tGtHokiF17?(dSbG;eHZg3XO>BH~p z{%x(+)RjPeHJPRqvSyFRzzuK!X^Qi5B2h_)Xj1reJ$AKRf?m2dk6p+ zyJ*-d#|;!HwN+ChX2|3<#d(dLpgJan%mqURJT#eiyaSW9#UosMb#q-OAa$pdvzFHt zkl$1@CX>TLucJk>9&J^y8)N^@kH&iHtWwsZoIVQ?^+S_ae&MGJO>= zNKq1>Iwx}s{#8GM)ElXs!DUd`CHc|svelsqb1f@=~wgx$%AxmtI z?zoAJd0PB1Zn(pyaP_bk2!eGVkp)`gt&MK|Qd{0CI;|&YI>TukuWw5fBJcQH= zn=_Q`OS>po=80gRH^)>x3JC5uXBxBlf{$cyOzG(N7-is^gF=-Z2A%dQ?c-B6K5J(h za)&qfb)BFnSm5iBQVB2bWTZ+0;l~ec5TJ@Q`#`pQyw{C;PC&VivKZ+%6#z6K<5{A! zzo6~%z7oY`Wc^;x)Tm?E$v#@__++kZQf;$CBrWAp+C=13_drG)!3f)z99>3BoIwpF zSzhiJYFVJy=?R|(-C_|KnhM-S(B89@&&ZB=uLz{!D@XXPzR|Dm81Y)E%hm%8AAOI(CO*&J&WZ@e=!QtQ_v)OlkX_f8+ z&ZyigGeBh-U!ihZ$QCH*B}3Pd(p3vcSxF+-65VPIF_e@FJ5`fKe+noM-4$hdK7$>$ zt@PNiC%I}GRqrd%hT9F*9e7)`8j*>LzOFTFXoN2QMcs>}sgAt=wraMJ8LHHtA~Hw5 zZWJSh*yAZ+&`V!IYd$F8m94*Qg_^cR)GRN`icMPBa0|7XFGcS@EqA_Ly^D!Ge$Ab1 zsrxE>jcRxrwCm|0-Ifx;Lo#z^+AqsU7&%e>4YYRHCl`1z|2es|$JCti?EzkwO&*Uj zt@$did#LMShJ-1t4C_Hm85zeB%~Y^BuF(p2&DszCu$C)b_W}LR1-kCm2uUB^PY#1Z zq^5q1|uu6na#9y zswnACioRf9YYg|9HfIijdPz2SpLWw&Tivn7CMrF6kGVOeme!^;PsEP(!p&U|o(U^@ zIxl9g8z=aD>+`#Tt!-I#vf}{<^G>%@OJ3QeTFqxG4Pz5UF2hLHg1;?5b3EgY< zc5Log3{ZOuJ%sijC6vaEU&*g+ZddeX>%F*2Qqo6V7e03kQ&*DfICla3+BmD@-0|yYk3hYVd}%=ydyX)iB2pE zlCoNdo=an6(kD5stjt=U@s^G;j#o>AU^sc)2>EzA_BvlTSC(Cq4D_p;x@61W?|WWIzk-wD?iE>>O~JMnJ6b51tX zI9MC*>zC=Yc!)NK6zsX{`eMh8kB=xGIUG)*BR$dFn{uf;`h)^q1V=wNF{MomHChY9 zn03_9>VVOT^iDF3HzP8vVu{>U4_AR)`!K9ls2VA-u1A-&#?eyy2r7tWihmqwHB|h1 zTHDdpleUNCPO}FU6}r5yhBit4l&=uxS94_Dtd#4Uav2j)FrV`D-2JcTj7!dL$*0dY z_d(h+qPUfZE{{lw{L!Z-2lZ=7*91$%3mg0PeCu~QV#V`vaf)G^fg7nh-!g$aW9ry& z`IroIwcKWAuVJt>iE$y(lU@`44mYdy1I9wPm&f>Kq**~*=aD7RVx5>8Lnwt2VK1@s5CfwyA^pOU=q6pXRp&bM7bl;J5jI^Mpn^#V=>rn za5`RJpb+w?CD{wLEC+*!t-t@QP8k*#RG97SMk4Fnkg0Ay%N>`S&;EzJLzT+49yIqo zMHWp<=_fG%Zl(Uj*^{ZSQRbtlY4NZ#5^PmG&qC8vCBWvH>qo(E;iMroGg5R@b&Kcv z4RFn{7jDV37c?hwD-Afeel@A9w+2W*w+05ahmu2G?~n8wPo2Hp?)g!ZLhfh!R6Jv( zDr=4FRtsw^4>~YoinK#+al6&cUEY7cihEs;xx`9ru7%CkFa{NJ9hJ_U*J3r3=PAIt zDiSOrAIY6uy_Ipbq4fcAOVD-_iKJRiefW8{spOFXUa(Qpxf#~GcvJ3HJNgisiD7mm^rCRTg@qZU;b$}-0cT;7FST2THy#KhUYm=4B`;$`ZPo0 zD_RpfRV}_#{;F~wKgTRRGquXJ{=8GLXcT zZFY-Zm4Dodnkor%m;LQ=V{6c+@$qzbETBWxy2c!E5Rmq-o|p5s>aR+~P;of1hqelL zevo>8@NYC{-g@+d?C~)4@-vU!A^qk|*e*?5TRo2-IVD(wH+8!IaeNH$=X8nf@l8}x z^#DDsp;4&GpCVi8>g*_$pOL3u<7OIzeEGI%j~g@KfRs>HQ}TLLrBKD05fvd90439} zOTm25Eq0IM0b@g1qLK;$1voY~VsgMtWg`lqa#M=hXAs8MhTo4l(I1raE1m#?)UbXBt-TM=)70%1!qAy0EU|E=^~Mp$2FT-=mJ`w$!U5XKs^iupkQxrygsXF1iW#Z zKvVQsvUzLNe?qlLTHvQg{cMp(_Zu*w`w6uOf550iJvF346Nv%x3m(TBL_PRv<;X|?Jp|(QvB4ZiIXnwVioGQ1ucjZLj{|e28*4Fdcg(_ zI7Y7H9lQt&{F7Sa>z`^6wIm7whZ%fCAxU?P8m|U*KmkaM8eA<+WwI(YnEW=3@lDZ0 zP2k4WXx7>=@cHI6Q?!R$`u%tKN{P|?lxF3N;;%e$T8B`m(La3!Dc5kCNqOJ z6_~MfY(_PnG(UCJnnR|hj2GPvOUG_a`_!00lBSr=oNU2ON=_CIq)g0t{O6p)Mt<&X zL`W}H4=X&je%t}}>ssYri5<52ik%IDDx}j|SX%WBvoNG%fvi9Wv=*1#KFmeZ<9bI& zMH-CPuwtJZ5=X{x1t)8XT~-SKu;ekFuMq=Hw^>Q`wMAJ&!#36bsyZukSNF)L-eLpY z>El&dvO=AwocTsi0q4{P%2<(lO{V%HRyt_taL z1^qfnth1r?)4x{?JaT)JQ5jh5z#=tq)pc836Y7&X7&wnezuUJ3X zGnV!&W9_{iUSu}=Q#h_=j)zu0tLYp9szn)Y zt!`gi^u5?@;n%g;mL59}&7pEyB*wi~r9PS+$}Q zw8(I+U){7hLYbp?TK}RxLO*rxBtoW^i+TQ%g;nRPZvV|^yQ9+votX!nsZMR+C=o48 zPmHLovKJzJ1CSKVz?fV)X#4zef+=M_1y0=DvT&v0uU77e;!}O;OI&Or6wACos%r9+ z^|^0&cQyvFPDQ^sW39*EdwfXw=4`)4&mUU)_)mKWp+7}K4jWQ#C^4@x*L-SI{r14I z)7DoC->$;(&A7vTO;-9foW^e~{on3@t(Q&b_4teXo8DFvylT(!lrQDfjdZ5OH{Dil zy5p~AobRgQkTgTM@A`iI25Y6C4AI5|Xv+kx|4Mtkrc_>Dza3Pfzl^ITue&DLi%eOU zKWQ&MRH=3O|8|j2k!w_#c=EWjt4m@jvK5LpiG&d41>Q>!NpT*vMc$Ec4J|~zIi#gU z7gN_uSwpEk^=_Hfg-a@LCjO78s%Dt%8*pRcJ3or!qY6dApt@h(-Y${qftkVBmycY{ z;RAuh8QwB8jv7$iX~-`nGH?p_eUpNN{p1$O=By{$2X}LzjaId*X1b|iAZZ2Ol^o@f z8g{GUwzYU}2{sIDes?a0L?tX76xi2-XNa|eQxIFBJS0s!o{<_@fWa3RB#gUU&rNw; zMylq;75#*?dB3j(qH}K2v@Ib4?1QdhOAdZXt7t35OZ||x>ubdmbPXuWAbEdtl1u4I z=zLLak!df<@!}OaCr52@jaQ`vQNLRtsLEVfLJ4JZbPCkva|$^SDkae>?AfO_#^NtyjqiCGffo z>VyepYpkyc^_l|#Kr6Px(5@?g2JOS0IL1lp+M0CTmF1Au_*j!Q5+r%sp+#)E(LO+E zX^m21K5KC+kDChjh#CWnc#D-(#4s4lhlU4%j>QVQLEDi$xC5`PvXl0T6DWU%-LVE0o?=X<|@ z0}C5|$nJ1wgSYt~OdtQRCk}!Y1K0oZ6~hO*RuC#_ zXDPy5(!D4NGHa&YN*il%eI1|9?Kk`Ls7^ZdpcVky3VRmBH8BnsYTUwR97Zfb&f&wSdbo(AgrOKr~DYiILHl};WxWgZ05 zv%FqG!eDAgC{UzaDqB17UlwNgVto0u_yO@`K>ibe0f2=8`0Cgu;y3|HVMa6)8`2YL zeg`uNR8CKiNu_I1QQg!7j%{{@GA=%K2FOy{B3cy_L3w6kw5)~g))^JrecNZ&1G#y5 z2Y*+3yIK`r8exvgdHv~JYsY(YOr>AVcRKACfTqq* z5z;1BhddvY@7qz6J7!n;#74iV8W6wqiX(G0+?BkJ>IT&9Ggl-)EnLUVCm*Hh!2`R5 zj41*wIwEoJ?CiccNJ()_rmY!TTYpKS!aMD+vhq7^Q8E3eBlpJYIP2PuV!ZVJzoetD zHX#O5DE{79vsI z0gw_FXWWKmZR05;jV0G-KN_k|h*v)28lrFORrDysi@o%zJRO2$OBP-_&(97$cwQj8 zo0Ez{2b+^4^LAlvzAZ`=8L@K;IV>C~V&v^xXZwmiXhAKJBCO#R{@*>(vBmIw*gfhz zfdSp;SRXet$3}k;NK8Lm^AsKrDvOjUXa{#eH*-TjD@N?dbH-E{v=2pGFBeAOa(B}$ zk+L2_0p-?nMu1IYv!P;}CoZhSj(k<}8Edw7B=*zsXoF~ugX#u+lj@m8U$?DMJwxl| ziqJEXEh_wEo4lE>=cnq%k=lOA+K1bKs@7|}X~*zKt%55}+R<2BYZ~iOBNT6AMl#n{;Ew26f2SEGiDX9!kJAzo_`x32GRO@0pM)B9ZO*4U_&USr z3N-`#(m*DQNJ{L2a_@$%{-&~*r!1Bo>&a_<>dZka5APiW@5{5WHuZ*0H9Q372PSoF zbv@d7A|(ovZM$b?YPM!nO`$I;G2SYLd>W<`Y88re9s+Kmiuxd*Ssf5D?L5*sl$9S~ zQ;nXanXL*|E#Larc6S(P@umJAOHDCj^!y%`Gxh~`Le8j=lj&|uG(XW-L$GviLlrqu zb4ZrCK6jDiZBD2vS`I;V&sJDRWrdIcp%X~8$7?+;ydLMI0kj*p84uJ>ez_oKHA{w4 zAvCCHtd*gZ+F0%7#HOs%j&zCqM6Vqge_wK+ruuWGce0sRWWKZKHLD+&Eta}DibOekS$;c1Mi5GJih2F*R;#zGxq7jcCn}|mpf3b z;pN=DPo`Eh(1F|zD(*IlU;6?K9FBrxJ?zWk^>s~oWFmStxUc8%X2HnMVDIS{4a?|S zpz@5fZ@rBLKN(dGt)q*x9>8goUM~{0sX?jI?v2I1L$6uxsipjtmUq=MJs3|IaW^ZOY>66e)Rn-Z`hE`(O={ zVXEkMQDGS96cnU#=!m+;I;YZ(@Cel^cFgi;st%%xaT1nBnNLc65x7z4V?8JB*l&UicL)L5R&I4K)1OjziMKfbCU!Rh8TP#R79n=A2kb|lzI2IibTqkOQo?c{W6hv@H#ZpLVwJA3&dg`!GbjKR!p}o)-!__gnAnY1%6v*(E@%IjS zgc;n46H@$7nY*Wu^?s>#Vz7jz4eAD;ScTq-_(z0~Tg_1DIb1f5*;rQfIDPUQ5Baxw z)8on|TC?X_b2cvptPXowHce#OoQ!^9cmjE9ix$+Cxt3XX_SaEugFDMh0L_B*9$*K1 z8{Fp2kjDt-Bs_X8o9_W4JW^T5udeurf5g=V`o|+OlH%U6P*Xp96H35(x=!MmvvT#1 zPIQnRsc3GTD>XZE;F|2FBViPkAy+BqTG1#`cdOg(n^YrE(VTn3)N#*Lx?RDXxX`EO z8lG(p-LE5aUkrc3L`(g%m7IiNAg(utp{ikXt!0P@-p@(oXc$0;}jBb^?IjU&E0q7C&Q}N?oq|>fS7L zXob53W;C8qnLBE{Hy=nY(%mTsA9x^b*ja8z-Y)NoO-kM_w3&+!iDO@Lh9wNFtpV6h z`&nU(R1zocp@wBqJto1|&5h1hj<$Ha1R+ued2ZqlFSv;};+NOcOyAWC#mU&-{E)>nvMl0Aj zUe`yIn7raB>=s*QCOAUbC+vhk;BHmhbE4;<%P_Ir)0y9OdpqZRe%Q+4X`$}~3 zzu^%jv!%tn3_UsH0NJI=o~1Xbs+x`wjz(9_`b!FrqOh&4TO1wlI3u{xaJ?2bR9qoi zBa^{(wkgU=9=0OdYMEh|0Tzbsd38&PJ^{_Ue;8O;zS;_c%38Lor zDP?91x=4sQj-7o3E|ldYbD2PlW$iFy^pgdPS}wCf%#pea5azB$t*V4++NmIkR0CF* z`sy*!){}|V#~LXWt1Ccdp$!-FK`Gd+5ma*1755mu?bp^JE0VzZQ&O~4rcw#@fz$3h zgF`%ju>~Ax2EFA5(UbG%jyS?!*9HY;191-@h>7S}15zPgYUo0k zI;c)7L2S^-b19icBQ37bzM#+9|2gQ1W$0*4L?gfh51|a4%3NtD;oIGsuoC2tzGyB# zffpaVm0LSLc=Ca={fYdc%U>|X2}cd=pPL0|N`ZVsmIbY2a;uTy$l=M}Q~r`FgX@^p zIe2OJsE$s2J1aMf98YMd!WUQziKRo9XQU|+J&w_-)PP2i;7`QjGdr#+)?VJ^+{J=I+CQjEKn6SpCKW?QY!L{ zda>Wl9a&HXQow1c`8ASM9Lkm|IfwM69N3leH&Re(i$3|M<&a?|W}xK(DjCyOj)t!( z2UMl?oaWSN6^KYwZYGpG8nDV>UT>U`3E9pO&kj0e{QREUZ&%WWCp-+_KQWSjxuiHj zt$Oo~4VzOn3jF6T?&w!y+;xF#apHIGN<-%rIJYTat6azrIUm~%t7PQ7-vs!qr^e?( z&xzXB&>~^17@_f}*$~iRrRj;mxzPXHtRB}NN>mjy!f+WQJQ!Jujv|OgyI}+ZQsDob zGR_#sIJxw#=!j*T!CPkbsrafR)obHg$(n3K4w@q)sxG%?RH=B+t_76ef=Xd2mgs~| z7Kx@glzOyM+uoZkDp+5juN3xyj^JK;V$@0$AMkNYqN7D>bA;cE+9@L*Gj_5=Ak_hI zsILV~yv%3fhcz8yO{c2V*rMq6?b&OAAh3J#ncE^>|M}I)jMDe0TSy#X{~)xG|M{D9 z>!(*y`ie{aN^NR>LGTxfzxu0_R^qPe-O-Qm&s_UY@NC&OYNE5vZu~i|lXyOTQkvW5 z^qwbMsb47{dzron^u*?F;7XiE{&_3Xy7$Ma#ns)G;~=30_AX8-PCB0*RL+ul1f^dF zZT(>;!+wMkn-7@oAY7;b6YQVJxksb#8>=eKxf~c}@{h^^b)?7l%+$ircclsJwFyqy zx0&`&n9KHau87`e(Hhu;-D1CPi)nwD>Gs!_W3vB{)Qt|W-Mq~|IX1SpAN-@T5k0?M zHSXU+T;Z&D-a}gimB|#jY_`Eke!_M^dBv^oD$9=YGQJ!u6xa!f?yeIMy>ZjiNm?Wj|+iH96 zc@KY9Hg&NNY@k0=f2trC4llVBXnm!1SAV8(ECK{etAr$A6%J1SR)_S9a_NATd?WhO zJ=(nuZQa*?GY@$TY1$Zht?pCqpFXmF^|9XTH*lu@Z88UVya~_Z;Yg^6{8Td$&8ajG zbEMh|!kN;#!SO zMa)$qNF_{Sf8pxsfblzmfs?^RkJVm}m> zLysb}!%|VmUIOP@ADSY5sdb^;(!&p|%N9>)upat5Vp5!aHu0s6SEa{$&(l3=s2SK@5;>T*)zysr)`q|6T|ACBkW1jwW)_}PbFV6aPA|Y&IGawx$JeXA!Qum z2dK*{jwJz?UE0eMJ6yWK(Ly;@+2(Dl2}_0IU$t-9{Y$KwZ%>}4{tdP#g$o!E{xN}(rIH2F|s z5;$EJU9m&IU3t7M*j#aHBz|VT;>a$!)S^;sc0YT@ZI6+$FR}Mfzq@q&dGbSz+Fv2( z^bvRcGJIgvr-$*HeL}7qensy$(_9azZ<#69mmpi=$y)nphfWM{mQT9;ih8cW7~0T z&hC#bYIE85wLM*X10*l7fsw9DGom&|jwegKP>`~56#ANi|F*UUg^G4&A&Xi(-LUY2 zs&}P@o)IEFiS<)?lKcLK40!gzpM!K}!O_rpC*khWlFcXZFB2*V=lsbL79%U7xV^tv z>;6v^)%}FjFP;I1=(cV|7hwC1z1>%^zGYu{5t&Y843n0{P7AnA{cTAqdJGY-r$%{T zf(cs6H1&R+lU7%<>AbqFIk{Nxr})lBdna~S`SOD+xaA>$ULIH)5HkgK6;G?$4Ku3! zhGnax8#sKesw;xvk<)GZ4qBGPogIqEiG-WFRSD4^|eN7)2L$;*xl7O{Ewzb=%vEe$u zwIwSUO4X`WEpVe%na2SU1_rdmc=Q*Zh|De#I=3yHD&VPNEX67GKt`e2uRK#=#`hYe z8F^1Vg3krQTDt9&z3tMt)pxJd>xo@N7sAmWRh8)hp)0RV(HWV1_LPa+?|0IUwhad@ z&1QQFC)jE!+IM#Hqq9BJ^K_uqflJZ0N0s)dhheIPlqBbxzeg&dygt&h*Vh&0xll7% zX{k_;@3(35P6A6F_^;iaNEA{%jvZ0&KNwQ0{414!niEBJbcr%Z($kN^Gx|Z~xR{(COYFzsLREt^_s zd8lV8vVeVu<>ro#WNpWcVLt3e8aWe&+SUDzT61wZbgEx7Teq8&2WO;xygN2UmD&dK zyEvkfX)VK)TzO5}0Z2^{taG#`43s)=#36-0a|3yOa^U}(L07ly10z9e9V#xsR3`)F zBbxF`@H5phccoSI(`_<==Bo0No9aPg8~&pwb39~vhGPftyuqXbH3~*G9@K4Ci)?x= z7a3M5#QX|;D;p?yz4X4G2x)PHk_;tL7)BJsieiWyw16$BA4TLpm(BJ5iiV$J1B9z+ zglSkJ6+I<=61)k>kuke%Z{owcL9-yab=Gclc;hymT*-Ar&Tn zKT&Imk~m|uw;4%VC)d2?s$>=FpRjH!47?2PG=ggV-dz`rwkk5M5bo5hQOtaHZC~4I z^TIhGr`-5K24LYrmv7t#lm9D5_|>rs{Sz6EaHEgFc3YD$Xn#ADtNy=FGy%zfsSTI= z$VTmrs9vSW51^q_ieK*Yj#ak@-vv%Lga^60N!^xCTLFpqThlKpVR!ZP)~uqnWP@4~ z3i+;Ozr1fX^bImg5{=_!;dS4sa!k7@YXzOj_t8eOF&ADDZC-lNHSQ+o2mm7SeVxyJHiIJxnT ztX4rMzxs^RVFct%aZfjE>39&J%*F|&k8_4$Q4|LLtvx=F$m~^)yi)J za-IV!&-K@oZY+JK09zkqFHSYXkIsC4ekOEwPN}$Wk3)u+#vR{k%sl%QH8-{wDc?R^ zYr7sclJO?cKHW~VP3%q2F*K?NCPf(y;sNTsoHO~+61>#?3XZMWJ{zg2LsOo5UHc$` zR~J)V6O}`Mx>rGI^I=Sp4!5J>kKv<{(ejmz`7j>&O-g&BDzn-m?Z*Sz>kEzCKNu|d#w>u#N0$n806jB{mXZMCKxlkLb)`CNM{bIE#Rbu!c# zU%s!%5kD}^NSZX2UNv#Y(YSKO#81qnv=gx#UkP|V%TlLV`*8Fq$1f%O~dX2Fdii5gV7m&$*v-5-$EU?Q%3UtuUxHJ739Ke^?XLT;Ijy$^HC zUlpi%orJR$N~bS2=m2e$znz;W>Y`NWD(P?)W>J}nSTos)90t#CZ6)|E7rU&UsQVfn zhig5=c6584=`(gKowkQF5ye|iRo;Uf{~o2!1Vn_b+V(4_pF8HhX)M*`5g8BYr!I`8 ze}U&rbuwT`$b$@IOJXY@)i6C?En6Ckc>3Jf&=hQYFpkar;f;m^ys5X7!B>lf)izsl zJusN%n(JQ-1~t-T13Z;sd&;uAqPd*u4=Mel3>pPObTAuRjn&@J7|_|-F?m92Y~`){5y{M+tL z53R<663OMmeR?PH?+~4(nf#=EJbon9r)2fp#u_+j!AD0)`+6qxM4JKmu!@)k9=^@* z+@KdWJovayH4#$LPu|>BNW-;>k`V^OXf!_hXL~{G*^@~)HlEC%UOrq4X7tuyz*Eaa zIOsUse)sUwb?$yGr+E(@Rg$}aCgqq*_`3@cjhrwXRgUZQ)Ape@dId;g0diZu3z|ds zVzBad&PVO#prhfR4+8V8rM=ghOYQV&-7ah{{A@(H|NR!ynMl>X@v5gnX^3a(hrQWs zIlPza-ro+?YSOq#4IV*md)-pfa77RGca<4OWj3Y0^)JUbn9sdl5kM{kM+2SO_omRU zL!H*D|JtAvNK;rjW>r6ug_j2kOKfAs=+$&ut%=#~(sL|*NvfUY3OC6uu&He9@#VVP zvs~F5d6w)ea6*_JWT!n5t`Vp)XJ1}|3G|PDcl44pDwMx|s#!-iMVIvV(7>&>j zh}|Mo#)s7h*1Y-QlY5+~A5K|(dq5)FZdHf{R;AH1fWoVhRMX6GHuh%5C7S_=&NM84 zGpZ-I-Ve1a)qZG@D>wG?ZRK~zOeb4MYt2D>T=il#>7tGgd894t6t^2?^b_wCqqX zXUYz)b)nDM%AAFcvE}rdbGBn(f(N4 znh7QS$e?ON0yA9nx4uctvnUa#qo{e!5g)Ha)m#0GQu38gCD;&-5P#=b$8P<^+W3Xw zc3A%_D;?$v%r%KDkncLE7^qN}{uahwP!9xQ=qDhl>9};Yo%@D^k;`EIHqUr;x*B ziTZaElj&N@GVKy%22z3yw;;#&yt9-X>ExL&>sx0Q^NbiRIW*_b2?rQ%WO8?MOcxd)S1YxQIop?%eaTd^2O z^i!!M87i!nA3t5luC8>(qxc^ezD!iGZ&Km)JNHqC(KPg?w4wH_XbrJdfJNwu>)}DG3A>dE5Ob4&W*!mFa<=;vfrK#{9q(!}^{kYdKU%Y3SU35iQYeRCajd z?Iw_as^xsUY9VBR@yJY2o5aC?P?ubjFf-eg5)!t;G>*6uB2X!FjaXp-j z*2S8iu0xulTg$QfxS!xR20IT%gn?CA*iTu|Yp_A3hx~VrwN^R?-@W5q%#FTqS0?F( zOMx?6i%}^{LT+zNb_`xo{5-X3s0%ap1Wn=%z>%f#;xayFT4u2!FCoKPSbKOvmfA#L z1sJ{hOI~pZZ}sr0qe3G&{Dr)FzpZ-=B#p9w=o@rDlQ~*Z%?rkjF|26Ng{>Wb*JBwf zhm}Xu?e=yz1xuq7ievH(f58K7mw^174sg^C^p*C|IFv zCNNx5U~<}SXqdIjd`=B^u&_E5^FcVobHm67AdN446ZZUYjy`?B?}v{(kPS{reqKAP=G$O^kmFl zU!?Xr>vwh9&fVL8V&BAWJ5E!dgLhlx z!GCnKAMYy7hKB5Vb+-A5Ca}enKl+I;I{E&#L7&!4e0qdmPCQpjo}I?;3{UKGzdirX0za`n+*{(0}Jc#&ku zH}~Zs@iC!TpZp6&KlDYbeVhM=Ik{2nZolTtyJ{Ed^R5-4@%Wm3%q@%0qt5GIeg4L- z@qZKZLgZCq4<#v*xy#6pT|$t9rxvBRMGu4MI^ zob0iZVjbh(ajS=3=b=^k1MRxfWV>fP!R|}Y{Is$x%YL9yS>=e9aY6$=&wv}j5)shmNrFJ=A=0Yp!l$XvPkt(4wV^h%TRe9c#3G;!qEV*Q>F2I zHiJzw4`hHQ_#%ZTBmd?<2O9M`(%~IAk&aQtPg!gew?<ov^La!&JFH z5zILuy9T)9VIL|Q6c&VTkrfux4HdD%NX@T^j^(|kgsO%zI!v0v)IOULWYIx#xuP&O z2OWdyO1uVUC(b~3a(g(4z z+aVQJ$Sm!YENSuf=gY{(jr38_t~O|tO^Uv#T9YP^(kl80t3hMK79J`@RoIhFRFhO4 zH`bF%Xdig+&=37s`BvNEGfVzgP1pz5!Dj(StDgSobiJh;{J4GCeTPdZ3!^$}$IWO>Z`;NQ z@7aXOFxGpb#)U&<868r!7~|-+$h}Iah1F!0@cQYFu5H6~dh1*ddi9uzw@4G3hmy>C zj;+^4f)ckr&VvS%0j!|W?sE$%q$$ZpI(o&;nTzPIX>>no97JO^Aq$pHGT>IdEsCsx z*&h;K@EI>me_?SN((3~}(f*vCo|=NT3iW*lUv{TCK5#3nFCL5Lbg#bhoV`M^l*2Ho zdtQj=3_mvGCmPB7=<*Z29p-reV+gS_Y3{n_9w3GW+mm#$aO;dmJAPi zARpaZPuY*>2gVi6Q5M`ybxizao~qm0mpsspT|IK^S@U!=5#z&MCi&;=FSrV`RA;D2 z747`f@VZIx7(a~g+~_G^;VxO)c%Cx;@0D0{vO5U;m`)8IZbt)^qwh_U+FT*zZ}($H z1NhcLEn>c~kXN#iuu}h0m^&9dhK3mtY%?Q*OWKK@6;H(Be{2j}5D!xJ&TcnZw_Zk)qEynmXW6I`yFA%WN?SPfiZ0Hwy=s)Vk0|$`t0W5ee9*mQASf+qF#mq}jtq3=Z^^ z5BpTxph~Rogf(PeF%vGxiJh+1FXfYMq=@s6ief!^k$PUDyG3*Zg&&P40ef~_O1 zeV@UN75YYA`8HYOio@=9(cYi{pwWKT<9;#1-1d7OdC5bKS@ZtihaZ~w-F&6q96$@M z>AGSj>dGe*FCYWLpV)2b2_ejuTPMm-Uw-h5QVNs-T&uH_<%b>Yz{H6v_48hAX zjN8`X9_?`qX5D-5xR(36uO@tC)@iYI2Zlb_$;D!^LwNe!fHh^ap1pqTHbfA=-2G%t z#Ohknx4%6G_vM50mi<#f3v9OaLZt$K--RkKedB(nsg}^`ej9xChQ@E*dgj5{(eFt> z1C+#K`Mm1=jab{)dz8|=kv@K-Pws4U+jb-ROePRFl;A#=Vb{gPRP8Nuz?RA`F}8mD z2NhxU_)g6L84e7P+u_p(J5INVngo{ovHj?*Z>3XxmNC(r5yZ?qL&ByrBt|&KT-&F+ zF5D)g74XAk^e=Ub2bHcs&>pDC`zOFdIxIB*cCq^-sB@nE7`@soY*^aCGmlDe6QMAi z;-^$fGB;!~0D>}IU>QQFvoOA0cpG3i4DK8UwG|{3q_S$z?(Pe<0Pr#o>}>I}B_*1? zrIIMFfGT;q>uy))wvKwvA^nHwLox2HYg2eFi;fHIlN7WHslP@?Bk+Hvh*$SnDZ-8%5zP7*x2` zVXlTT25+EW>FH_%p{1f1@i?6%`F#fLoOwr$uZMDgEYs{EJPHSd!2k@;4*4^g90mwi zIlWOt8(l>stFROjhd5{}Eo+bh;46uSr&zBG29!7GOfb*`{GfS5zsu$BnkrDq%Z4mrQbCLsr`cN@W^ik}8w*%!Igz77tuUolxq()z4=Ci~ z8q#ud7R=@6_z;; zXbG+oo%!RZ2RF!_q03$Ta?a(CpHb!)Jx3Ai`}$F%s~J<&d~BqY7&EL~paf6n#{Ppr{MkEsL9Zg(7QodbRZU*tj;HbKrTou$VKp$`0>rqT)DBD91YbvCw2_GWVCBcBp@dI@C>&hid&O)2?bgL1!XEvI)zz&IYYB~G9#gjco z<)-3he}u|#Z??BT%OT|0F7F=&6{BBr0^(66c|=^}uIw6V%e5$laSn>BA8i}=*ZTpD z%%V}D8e0s>=cdZtSB7as<hsL`%vy4Ib72cOYpL<2F>bl>Ust|>*G6Jr@2z;jzPaUk#G+P?I#)MhbT|K#|N-4Juw~N)pkQ3 zupj5mPT+~O+H7>A?9}a9=;0(8?8-0IRQ8ku@g56{*!eZ{fYv@IED=t{ZYyrcS_Q_A zdV7!i#X*aU)4ph+7n(C)9V9O{z5FVeqpljKhGx-!sVy0rZQM{et?mRr|2^=uck0KZ z2f#q6KKbCKxv~MWF;HR(){0pQtH~dp4&%&79ahFQ)MH~ODHWb)LDgZf_J}?eUqZObi z);%r8MZtYW`{{|IUk*3L(BCmK-|h?d)u~T|@3(3$&`5Aqx^3p78h`Xl_d#JNU9ShA z=x*emN1JTeYYwD)CL~}uI;b@!LR&d{&RDCXUs5|K$V&~f=@%#JNw0<`T(MjMG|}_u zgWmR)+Tvh0k|Bqjz}N)Xr>w0b$1|DPmfMiBV>5kRx!Ei83eHI#ix1OXzX(Zw@DW#! zU%WRkS{Ck#hLf0k=~ef%09IPD1gZRi=rd#}z+ z{H(iEc6thR;oiiUW|p&$x^4sUviom+anWS&QqmWVLDP4cZfOF)G}5J$yQSgq2~BKn zG<3rezCAYGn_$Lq*lN@vAq$m8Twd*M^G!ceXq|KiQrQ!}u84EY{=ax-$o<-r6iA4uo#?5(H;0{8SEh&>;PJN!&#J!&L9}b zD+#~j+2G+=eMe&glSqDeeu2RvTSI@-x*44!;O6ncu}@NtqYm-_{>MQ6SJj5o_VUCJ z!f3_}t^8(xYC70e1U2C7BALU)A6Q|KGq}@Y>#_LOsesM1oX4=0B$0xnp-B=CzxA6> z+pgN*tV8yDv*>NZH<+I9QnFsE2s_K04RVl)Qn!xpTD{XO@UX14HoRUVk*w!04iP^X z4W;g)SosPO@cg?8tfD@zMn-oDVM$-O_3-vLFkcqh8*{eYCwACuM7t%i5N2{IGogI7 zuA41PFf>*7|AEV1H>sDh$eM-iOPek|sqzbFtJ1p5*DTd8{(-_%!?$kK`iVEDRvozZ zZ;+zsJZlfA^=Hs^+>Ce59FM&MKGqyg`J|#2JNUXV>pBTe`VX)mxTvR2bneSdOc9s0 z2acN^?3wIft`*9`IQbP7#8n%h_p5bt4F=~!3C+E0;}~35I|qk) zx^0CJP%Pz5JYOkuersnO65Hr-fNe58vCruX6PlhRH`;)_0n-$P7~~v6br6rD6O|7) zrH+mf5CT~-1w!<$LU+p?NnkQ5${H&>wpx2gE}@q z^~1Zef{LAjL6T$NS!#54lbky8w$as;6Cpf&?05k3XMJ1htW$fQ9>5mMEu9`L!=Gz~&&8N+4S zpdq*hLyDzCcmxqBA2F2E+C3343BZ!FD}r`Un^Yl4qQSqyf`R~vt_s%J3IJx|Hlivk zT_eJFWH7LnQ5~+pM2o|n2^%C$(#$|pR^UWDeoq^QPfoF?y%sQ1J{}g z(F$sx2hKxr9T33lrnaLpq=@xEK>8#FwJa)jKGu@+oFVLd!~>}3zr?8e?;ecWj{R>c zOeZ_Y0$=eH#Y1WXJK@r=cH-VqkSn)DMu*03>1xg`D+liI;Y7kj=r(+&E)F`qlDne< zLALt+SowwU%0$BnS6#Vx>lJ6nY#6XU3+Gcgxv<(I=Q0IwIt^%h4O{hJwPDB4eMdDR z9nH>hOr{ti@FE@JN=rL)MDxzMDw=20<$1ACfk&ddNf#)d=ewQ(vu3%Vv?6r^N0>@#i97+yDElPkHpR>xH+71* ztn8lCxV}Qqfp?HjZrBzXQo509wJTfYvYqg|gp(JNOE1^rR8I`2;zBpEJ_zyY%JvTh;&E&=XmOeaJQu^H9NFcv0mWCnXPJ?^xFUb;ipK_5Xc2 zG4V;-;94IagEK$Bv0tAi=wA8d*RE7@lRJR{m;J-|&n7xk@qc@BXu|2GiJXrxv8aei zM|fl9&-$SCmUHn;MQGA9`oe_JFFh{res}2oPbXfkvE2dVv+B_qmw3v%>@-o^)Xht; znGoCfnP1ynH_Thh3m;VY^;dF%5DhpQNzKKdSOl3>?$A zyWR8~2U;O6NLc&-XBID;$4Y<=8RcE+TF$FA-@qRYiKUV6?M)ZwySI#MfA#jyJi52Q zyccjV%z@f|aCiIhYnOc^3tQm(@SZ!B^(X|B8xtdwifP9s2|ZtLtXloO-Q`bb0&KF4TwI>A-wf?D7HStx?>u^jfIcYP||5qM(|u;CYK`h#IPhFBwh7TP<;rCLmoRRI~#DQ8uk{E+=J! z$a;$cbE79X(4C%`+5r09)tEjLax&UQ(RM3J4&`N&xd86-2HIqRAY}rJZ7`!-y_yY_ z+7^y|Nl0%LQf?Rc^Dwmm0u?#@4qHVd0Rw@syLH8lOfR_(C-GL~{icBl3*D>#q>YP}qZh|aA-(#H;JM1RM&r60LW*v`?(!97Cu4Owrcol@b2Il; zTL2^Lo$wcI?1xzwkJOuh;=y(qMZ$NvQ*hAb=(~qoyXkB9^iJ4*ffKK@VP+LUXh9i z5;`9Mhl4?Yx*2l7m9PeammYjm23QW0WJ|;@kF@%0yfM?qCJcSuAM7dXOCliDK|vXDw@mjV+s&M9TQSwzA2Bp zc5`lCtq_!>HIO7)Xo$8Lh37uZVY1v9^9~Gl$M76BCZPj8`^gY2)|x&P?ab%(f+V>o zMJt|YfI@@A=ARMLuXG$8$y5~#ZxMI{D1{opgb{7Zl-fbx$ocY^VTVANn)c>JNPS+7ne02^HJxQefqwugutI2`6Ppw0!lwE>_QB!%iVQf!9`Zd z>FS_W&SoLdJZc|MVDxFVR7JYx8-{tS)V?5IhRpvnJn7W{l$EH^8emx*0vSI36{%Yogk8+Tk5lyg-s#MyPgMBj7Y>>PRGO zMa$2_7SSkV3|v=LjTy+(ht>*OL~OOupH3NFr2-UMb58V*DkDIe)E7bqHEwTDn%d?& zizbYrS&>seqpV)5Mn zS=PcUZPF7dQIdK<=xRzfK&!!F-DHUb2Fo2#t$Ccx;^!cEjym%C55G%T7uS6RHoaGo zbYQAQWZowUp=8ncR46S^wG@YThk8=gH=x-CrwQb4bw|{wx4p&2O?v6`YNSQmEk2|HS+*Wh5@>Hx7l&IZ3 z>S5>$(QQGU>!YIn#usKWz*S>-$$ZMF5{j~VJ|2{@khPX-v{d7%==L9dG!?2gtu45w zc(CaQ4!hTVVhhDfta+d#dXI)|&&UhrZ}!h;Q$GX7j!D6P{ynx23OOxO=!Jk0#W`K! z1G`s`Kv&idg1%C|W)Qh;)3t%~IMv6I@!G>&HuyMt^`=VA6gDlN&b4Y^t$KSVv&CWD zV^d~h_~Fdi-j37T+d%XPs=j=Y|JbZgMH@I+WUa_*hXYa->wD+E4l16?v@C&X3h4%b=-yvfm50F(%~V z9NKHP4OthgM%&S2c?9{ddWWBS6+r`BCs|2qd;OsL)WqGFL=Z#@ELh}kkOS|jkNU|Sk zNFy#sxR!%=uhfRUbp*{@|FJr3)NS8L2d?JMwoW>PzRxEVIAD%teClYa9JJR2>{P8% z^(V$TjSWD0+43c;z~BOQa0~&|5LXIttWRf*KCRL{*lH~lsJ6KWxapd!W-`f=wE<|Y zM>b$XQ(D`iblF#O8MC&;q;@0Dio8Nv?~Nz;|R+ zjbVq2m@Ks`c`JC@k`BhvGUH67nnr_`YRn{}oFFKf%J(2;(hWN#W8KgjJIJ;zk3*W` z@aA=AI=@XN+>UZDX6rsTRM5a zG(a-l{(iV})~9s;G=JV(&Cl)b*GJ5?)`!Q&@0kAFR6tAeAG<~@hBaK+`OoH_Q5jEO zE|{j^ACmQv!u5AH3(DC6yYJTO7k>PtKDbEO?0+UEOuf}(KW-BmMQz@Z>{%s+8X9S*}^CiDJ1xzp=-FwxR!SI*CC?V%$w#0+6pyv?9Xn~&-+dd z$$bO9-M?y>p})sTm9sY*9e;Y3?sk`(&=2}^Juen>xzi4(_F}uQ+k1nO52aYeO=nKT zqBk-Et+l)HvT)+IwIU#5}@kI5s_uwp$yLfrsvLpZDF%WM-Mtv*nKy#|X> zbcE2YhxVFzUm`;`CXG&-K3<-=v%e_;0*9V$QC zMFz@P$+547199~vlpEFQAJ>=yNYV~z4cb}iSUPBjBg`%3qNm~(eb&eg-MDIS9qU~m z4W+LS;}DtDOgT$$r*SU(;@3R{E^xclcC&R4_4`0YE0dmhY`>DKC$uvo*i)M(A0&`> z3JFW7IOhG!Uzw^qT-S)2Kb+kzEw!(8W?1b@tBYde>oB;T{R9!iq)vrl}``r%K* zp8V67Pu0T~-%erI?OU49sDv>yc-V5)v-WiPPv+HRWFw!ACs8}s?{8HXUTmg{IQ^XZ z07$f-K4G0kczFBUFgGq{KPmMVL$^QNeD=cVerfWDQ&HlF$43tL@mC$r=``y+vt!*R zaqQXt>?k*mmhvmZ((Pk>3B1&thnAUUATrPM>Cy#K{K;F^#FA~bq}4FjgzBW*kL}Y{ z#xe(8lg*YI%MQTS&2OSwo}o3t7|uRGt#Nl{eombXPPK$*6o zS@usJ(TkgBoc4NZQsC|!R2V`RNys3Gxy`Dho9rHU{ZrOs--;q=ND z_V-(M?fIzzwYPb$m>an25DjM9+fX8Ix3}Jey_nl=xy*(4#g;QetIsMWlYO-pf-|PZ zqank{^+c!`#6io+zWN}Hao_4SoDXJtb*yQ%350sd5R5zq8#q;qBv z)6Ab_ZV%N{W*UikVRQaLyD=peP7NZ@m857Iv7ds+vVeP{bqi_Fg3p*0z{R@49f{hs zYx>ia8eFH$^9^}=^(@Q*)G(}W^R^(l2dHuG5iAiHJb$m<#=})yy6u%uoSe;sFGkf| z*Gw`Uq0852fc>yGW;&Mv7aC^>xH_8^gjAfy267j3u25>rNt0$%qbRH9Vo?h{AZa(5 zL2NFnVJwby@kvixQB3z7G+~~tC6`39|0du3Z;-PzS1Y{t7@(=8#WCJ38a-4W$k}uh|rcme86P0wrL~m(T?m44haANH9F$7R>F1Ay)jivHbJMYO%2Xy{rJk? zPW^M8HGUUccc0Z#8R|l7pTutkzrugYoM10pSzd64o0gAfPS?JDwS$C-(CGblSjRNQ zE^SA*8v~w`NOSl0>{00W>ieldb7ZVA?5u`|stWBqBOO$N_3|!J*`uYACL`cL=_+~L zsqb83txDwY!nR+S=Fa*`fd_)a7ILoc9Lak?Xx)Vu$NyC7seJoZX&-x6@&9&z-(NIb z|Le|m+Cd|KaV#;1mj5^*b~o*(P;#ez=WlK%fgoeeFI;x~!`E3cTmAi4?}2x&`ZM>( zW#V+V|3!cMaT;hyt_`nPIPbXHNJWf(@Oi#VM?QMsx^GtX@RN&&KazHS*rkHG({RsU zeii>#qgQ<;GFTh8`Lf@5{}{JN533O5zIUNc*Kz}|S=&2)e)%N05ikD9&XBpb6Pw*G zR);-N{n(t`XP|@DL8Fy0n~&gD|6fNh>R+Ay%=*32{;$%~7wWlA1nK*3 zukJ{BPJXLsd(tEi>v1m~4u9!Dc>cA2{5*Oe8~HgulArq7Sa|;H6~IRv!=4R1f4n%B zzcqR8`Vp(YGTfpLC(15&khSLrhV|g&*2MJ8tD8SRJz5+8HNh>N zPXYag*|fu<4!|&m zdrh#h8An)i4N)2m!n(6}qRy@a;2~~au|9MN0KXpw(g02NV1(obMOL$Yh1{h{IBg-! z1NinG)atU<5i^Xo{i~g`_Jq}|Por5pWvV5pV^HL?U1)Z*ekd_WStvKu0lTEG=m^;8 zu6D9#J7iOh%GhwHHI1#7REf0P#|wFVrqA74JKCZWSU(<{ z;SPos8=_tXH7vRX!%}|+=Gt-F&oNxhTq5K9T;t0}o92R$*G;8-ait-U!{4b>ub582Hp)5NuSMq= zfY7qW_>OS=lQB>;x3THl%uw<}KW|X`k=TY2&{eQ{J#DlQ#;<+tCha_ECEW0IFn2Uu zgb}FPgz=ZWXqA^R-f-v+;dXhmA<==6jt&8<8`MY&?6L&HY@B1Kd}7H;f%DJF5`>x3 z$Q(>Ae7A3<1h<~Y$HL=zi*AFC2WQL$^z^IZ?F@GkR6?agSL$(FupXT3c-y6&md80> zMW}Y%O0*|aoNG7i5%EEOu#=9COLaS4gZv=V?DkWWMz=jq;ytfT#@0_%OIfj}I%=7- zodM+3nf*3(ZNUV=DMk?}`h3k;Nl;GM@UL%5^H&}@s$~>KtchKX@5RRnns2Hm-P|B0 zOaYGUSpq?ad?I6hu*aq& z7d4sC#OSV9W1zC8+GBYS-F51De8IW{u_ftYD3xmTme7!h$+>1#H?n&!L*AP)i~yxJ zR+ey`4-j(SQDe`Rs_;jq;T7b%@5p29QA96C!EKShi|bvjlSag)cSc=DK$9)c|1Taz zWz7&%K{6#m1{xf5ExSWY0O}tSP}d=w7k0ao%$5;Ck~PxTvG!~|Q`ORwLZ(DBH)CSV zVa)V;3vs*Jz@{Dd>^IRFpcL_`Os&o4Z*xspPZ}t6R2lK2mTLKCHf~4brZ#AD_m23C zgfO*57r1uW`(1GFpq~MCAm8pAb|as-ThMit85Xp^s^`m*Pz%PKm4Lxm%C__gxmsss z5Zu=sE!;g|6v5H=nR~*)YsZWgSN7C_dZ5Ft=msN`ZzY>OI48N7<_M+u?R(PcrXiTk zhv>3$fo_#mu+$ddX%}H=9t`@RP)yD#I@(psXmMZ-myLs?z!C$OxI7m+!2sc0bQ(hD zVk!qHO|7(oL5Ry~?A~r&H)LyTh|AJey<3$^)@vR#2^PBpcQEZb3;8wD3@}4=Np|)p zjDT|4Dw#HXdL?yHaLLsHsHj|V%Y6;DL3f4SPdLQuWklG~u%^EN$r8zJ14iy{M}OPQ zbmXb7%gO4tEvy2g?|<#pEnuPzNlC6Rc<4mk4``x~$b_)%o7 zqJL(|nIxG#*UkxIeG-5;%~KtFUsdCffC0M9$wn~2J5eGf?p)W5@T#ZF3%%AU&E=Nt z{HG95GC;jlOqV;w94kwR;x`N{-{6d&tENV?cu`#%Yz`n^*r5?n1As7_P9vQ&^izWZ z`4rNfrT&6*!;Gxa{{)hJunz_cI=^TnNIl+}@86Rj!PT%rxpO4B6AJ(nAOa1%3 z0cYX8LZ{u?4Rn8CemDK)(dk$A>6TVS}4pRsL!{s`Gdm9|z(Pai0SjK#IIcWD`J z8#))zr*NnEI+eWg#I`-lo8B54+_yw<@wKh-Qu-^yef=wyOF4miWtpmtDaC_U&CJTi z))~kCnNHMfxMzrsjnk`%f#u1Ehu*@oxzMRqyZsCjI&Xz5 zw&UZ!uU9$`yYaNievS%yh?#{k<~t_Ch{to13ZAJ0Z&#O`~q?S>1p9hoDp(zC9zQbAKwbb? zRvJW?8z~Q3((i!o`U$Yf7vss?WNpFj{nNp9u0(-l$ATs|V5!+trqNYs)cHS6po(|Y zo!hHW4-S}6iE0UuF8hs;Gv_C_3^37NxzTPlXh7Bdav&1v9n_&Nd0QXZwa!v?hK+^g zT4`vk2e|;i2zw$8C8zRlwTDR3m_ZfkxT$Ut>#cgl6(d>L1v2r&j}1f3NiW_nRnGXK zZBXYcY9!^+J3c;xo~Ob2z09V&3P`2o{Izm(KP|edWAReLmJBhGvvk0~B;2Mlm~$KJ zzuf6IQX}Qq!ozL_#s`MB5G)oDBU|RC6CTZ#cOxxi*8dKpXa@=7N|CmAz`hNuCpL&> z?f+wFR(bO}UqOXUSJAAJ<_pR(y0QN$H3k zDO!Xey6no>Yn|$#4w%6PY{qs4hn<}rFyQ0>>KC%?Lm3*9gH9z}5ryM6err75Iz6Tt z9XP}gnN#jXd%59`-D`%$-pxj-fGX}&?PkuIIT*fAn?N(}(}d-mMghr&(WZVYw@2KG z_3cVqG;F7_K}+wvH>ypp_iBd!x>_c^v&k(RN)1p2$tJ%2L+=>2#d5!?DfzkKz{Lt* z|7U313||=bW~NQSz@!tn6lt4s`w4O~kQ;QXO|5{m}MuFej)JU#}kV z=LF-|Fv>(`=0Xx(`asv|l$e6&+uEg#{g>yw#KeAY+3RclSDdn_J(I1z4#=V5ORTp$!k=UYr_kz zXS}XbGV^bo){c8;>egZ*;7)Sc(#YYltGtT~s@9B5wC0Z;{yA5yep-xL)XQ0^yC5$w zNp`Ujwn>RD+KzlYo9H{qv$ofFIUR0&q@N#z4G;D{AYM%>ll~Ol+YU)u=tUsSp@gp3 zxNnKOkyG@-)fKU%gM`F@_L=8YVNsViCWg{J)^e<1;q@c5sO_)Y<%9hq;nU+tlSr9d z;)|1Jv3A@WsA}+oAmlqa^S4Jwg-=~uFMcX~4&7#_RtBd#|KW~r4V6lHNalW#K6^OW z_eo{?9K2fam+`u~^ua70b$@QV;>ZRg@`_dB?-$dt2UFkvΠsHu{>o*FrjC_?Lmc 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ⓈFi?w6?=0`h1u}vZ#*HVY1 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